{"report_id":"fffcf017-9ea1-4cd3-9098-0240bf0aa9a5","version":0,"status":"done","tags":[],"date":"2026-07-27T13:21:10Z","url":{"schema":"https","addr":"uniz-coinzltd.com/","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":0,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"final":{"url":{"schema":"https","addr":"uniz-coinzltd.com/","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"title":"uniz-coinzltd.com","dom":{"size":41914,"mime_type":"text/html; charset=utf-8","magic":"HTML document, ASCII text, with very long lines (26399)","md5":"f9c80be5efe2f2e7908cbc6464a4baa1","sha1":"7c0e9f1f6a741316015e209aaccd4280bb8140e6","sha256":"3432aeb269181b7717693d00dee9e8cb7c65d8ca5f55cd8f256814ef3c1dfcc8","sha512":"21d456fda273365aef1226c05d8ece08a4ef27ce93be2cef19159c86b92fcf060e436cc20acfb22e4e9b1c3830c864d76efec26873cd4ef89d1a3e7202ec1a98","ssdeep":"768:0yJi2qbCmmWq38FTbfsTO+hDGq3t8UtN2v3k/SR+D/5km58:FJzqbCmmWq38FTbfsTO+hDZ3t8UtAk/C","tlshash":"a513a7276784452c9c53d278f399b54ea32af688ef6259eef7c23410c2d93ff088a455","dom_hash":"domhash5a2e7b986a359100c1311ce7180015d1","first_seen":"2026-07-07T22:08:47.685476Z","last_seen":"2026-08-17T04:11:44.342918Z","times_seen":920,"resource_available":false,"data":null}},"submit":{"url":{"schema":"https","addr":"uniz-coinzltd.com/","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":0,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"tags":null,"meta":null},"settings":{"access":"public","device_type":"desktop","expires_at":"2027-08-31T13:21:10Z","useragent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0","referer":"","cookies":null,"exit_node":"qguvgzjxzsgb3vs"},"stats":{"alert_count":{"ids":0,"urlquery":0,"analyzer":1}},"detection":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null},"summary":[{"fqdn":"uniz-coinzltd.com","ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2025-03-13","domain_rank":0,"first_seen":"2026-01-22T04:28:02.881421Z","last_seen":"2026-07-27T06:55:14.724098Z","alert_count":45,"request_count":45,"received_data":1590256,"sent_data":25813,"comment":"","tags":null,"fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":"Google Hosted Libraries","description":"Google Hosted Libraries is a stable, reliable, high-speed, globally available content distribution network for the most popular, open-source JavaScript libraries.","website":"https://developers.google.com/speed/libraries","common_platform_enumeration":"","icon":"Google Developers.svg","categories":["CDN"]},{"name":"WOW","description":"Reveal CSS animation as you scroll down a page.","website":"https://www.delac.io/WOW","common_platform_enumeration":"","icon":"","categories":["JavaScript frameworks","Web frameworks","JavaScript graphics"]},{"name":"Bootstrap:3.3.7","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":"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":"BootstrapCDN:3.3.7","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:3.3.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"]}]},{"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":5,"received_data":126855,"sent_data":2802,"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-27T10:05:01.711627Z","alert_count":0,"request_count":2,"received_data":1197,"sent_data":1220,"comment":"","tags":null,"fingerprints":null},{"fqdn":"translate-pa.googleapis.com","ip":{"addr":"172.217.115.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2005-01-25","domain_rank":8472,"first_seen":"2021-11-04T06:37:42Z","last_seen":"2026-07-21T21:38:43.172366Z","alert_count":0,"request_count":1,"received_data":32349,"sent_data":573,"comment":"","tags":null,"fingerprints":null},{"fqdn":"www.youtube.com","ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2005-02-15","domain_rank":286,"first_seen":"2013-04-13T07:43:20Z","last_seen":"2026-07-27T08:27:28.816935Z","alert_count":0,"request_count":8,"received_data":3852720,"sent_data":9791,"comment":"","tags":null,"fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}]},{"fqdn":"www.google.com","ip":{"addr":"142.251.151.119","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"1997-09-15","domain_rank":22,"first_seen":"2015-05-10T13:11:19Z","last_seen":"2026-07-26T22:51:17.688286Z","alert_count":0,"request_count":2,"received_data":63673,"sent_data":1046,"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":1580,"sent_data":537,"comment":"","tags":null,"fingerprints":null},{"fqdn":"widgets.coingecko.com","ip":{"addr":"104.18.4.118","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2014-03-26","domain_rank":3132971,"first_seen":"2018-07-05T11:10:42Z","last_seen":"2026-07-23T05:31:16.754918Z","alert_count":0,"request_count":1,"received_data":231858,"sent_data":507,"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":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}]},{"fqdn":"translate.google.com","ip":{"addr":"142.250.178.110","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"1997-09-15","domain_rank":609,"first_seen":"2012-05-30T01:30:32Z","last_seen":"2026-07-20T21:58:05.03314Z","alert_count":0,"request_count":2,"received_data":77723,"sent_data":1092,"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":4876,"sent_data":518,"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":"s2.coinmarketcap.com","ip":{"addr":"52.84.50.71","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"domain_registered":"2013-04-28","domain_rank":209181,"first_seen":"2018-01-12T04:47:19Z","last_seen":"2026-07-27T02:47:27.888767Z","alert_count":0,"request_count":6,"received_data":15381,"sent_data":3354,"comment":"","tags":null,"fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}]},{"fqdn":"ajax.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":3691,"first_seen":"2012-05-22T10:38:03Z","last_seen":"2026-07-27T08:31:24.823963Z","alert_count":0,"request_count":1,"received_data":87911,"sent_data":488,"comment":"","tags":null,"fingerprints":null},{"fqdn":"translate.googleapis.com","ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2005-01-25","domain_rank":6317,"first_seen":"2012-05-31T07:21:21Z","last_seen":"2026-07-20T14:48:05.930258Z","alert_count":0,"request_count":6,"received_data":201247,"sent_data":3565,"comment":"","tags":null,"fingerprints":null},{"fqdn":"coin-images.coingecko.com","ip":{"addr":"172.67.142.173","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2014-03-26","domain_rank":550283,"first_seen":"2024-05-30T15:11:00Z","last_seen":"2026-07-21T00:15:02.88318Z","alert_count":0,"request_count":5,"received_data":65947,"sent_data":2944,"comment":"","tags":null,"fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}]},{"fqdn":"i.ytimg.com","ip":{"addr":"142.250.178.118","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2007-12-11","domain_rank":436,"first_seen":"2012-10-03T19:11:04Z","last_seen":"2026-07-27T08:17:00.256785Z","alert_count":0,"request_count":1,"received_data":67947,"sent_data":553,"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":6,"received_data":49824,"sent_data":3595,"comment":"","tags":null,"fingerprints":null},{"fqdn":"static.getbutton.io","ip":{"addr":"104.26.14.221","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2019-09-03","domain_rank":386210,"first_seen":"2019-10-01T09:11:58Z","last_seen":"2026-07-25T14:48:54.018453Z","alert_count":0,"request_count":2,"received_data":443364,"sent_data":949,"comment":"","tags":null,"fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}]},{"fqdn":"www.btcwidget.info","ip":{"addr":"172.67.170.70","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2016-09-13","domain_rank":0,"first_seen":"2017-02-17T07:02:48Z","last_seen":"2026-07-21T21:22:38.986182Z","alert_count":0,"request_count":1,"received_data":717,"sent_data":631,"comment":"","tags":null,"fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}]},{"fqdn":"maxcdn.bootstrapcdn.com","ip":{"addr":"104.18.10.207","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2012-05-25","domain_rank":6807,"first_seen":"2014-06-18T00:37:31Z","last_seen":"2026-07-27T08:16:23.24002Z","alert_count":0,"request_count":2,"received_data":160193,"sent_data":1013,"comment":"","tags":null,"fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}]},{"fqdn":"www.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":464,"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":"widget.coinlib.io","ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2017-12-05","domain_rank":0,"first_seen":"2018-10-03T18:45:45Z","last_seen":"2026-07-21T04:22:09.03368Z","alert_count":0,"request_count":1,"received_data":675,"sent_data":621,"comment":"","tags":null,"fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}]},{"fqdn":"coinlib.io","ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2017-12-05","domain_rank":119150,"first_seen":"2017-12-08T06:44:44Z","last_seen":"2026-07-25T05:38:23.773256Z","alert_count":0,"request_count":14,"received_data":839183,"sent_data":7673,"comment":"","tags":null,"fingerprints":[{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare Browser Insights","description":"Cloudflare Browser Insights is a tool that measures the performance of websites from the perspective of users.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["Analytics","RUM"]}]},{"fqdn":"widget-v3.smartsuppcdn.com","ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"domain_registered":"2018-11-20","domain_rank":532262,"first_seen":"2022-10-03T13:48:45Z","last_seen":"2026-07-24T15:28:31.507831Z","alert_count":0,"request_count":4,"received_data":329036,"sent_data":1880,"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.googletagmanager.com","ip":{"addr":"142.250.178.104","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2011-11-11","domain_rank":283,"first_seen":"2012-10-04T01:07:32Z","last_seen":"2026-07-26T22:31:28.839046Z","alert_count":0,"request_count":1,"received_data":489157,"sent_data":473,"comment":"","tags":null,"fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}]},{"fqdn":"websocket-visitors.smartsupp.com","ip":{"addr":"52.58.76.194","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":632,"comment":"","tags":null,"fingerprints":null},{"fqdn":"api.coingecko.com","ip":{"addr":"172.66.172.219","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2014-03-26","domain_rank":442226,"first_seen":"2018-05-18T12:16:11Z","last_seen":"2026-07-21T20:24:11.162909Z","alert_count":0,"request_count":1,"received_data":5198,"sent_data":551,"comment":"","tags":null,"fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}]},{"fqdn":"translations.smartsuppcdn.com","ip":{"addr":"185.76.9.12","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":519,"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"]}]}],"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/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"df3acf196a66e135c3446e07e0a82708","sha1":"301ceef105300a4fabe93076248b037ffb9ef422","sha256":"4d053772fcc0218f108d840e4f4694caba2524c7cf18235bc8132a077f4edccf","sha512":"8e7b84f25d96941e7c6af5dd7182b0d22e1f06cac02e7a67a88c73253cc246276cdbcf23144784e0063b34499b696da5b84d595b081ed09df723cfa4f291afa4","ssdeep":"","tlshash":"aaa01240268b6040041a11d450a3910840d6000b60cc2cc0d14ccc420a112ac2113259","size":71,"data":"","first_seen":"2026-07-27T00:29:31.554952Z","last_seen":"2026-07-28T07:04:56.52001Z","times_seen":335,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c8d2aa8ba9377ef9dde4c69be2c71756","sha1":"e68ebea3bac5cc4cbee63d7f3868b90062165bb5","sha256":"e57b8072fa822139451ef537ee055d4a58e1b1dd2e490fbe1733d3ac5d143f3b","sha512":"2759d01a4329cb35fba481a44483f4ac472de5adadf86dbaa7dd2e6f6ec20babcda4d9e36badbcb8b3d70ef3ca72d76f7792a3c3587ca2e463766c473dc9148f","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000000000000300000000000c00","size":2,"data":"","first_seen":"2023-03-07T13:57:02Z","last_seen":"2026-07-28T07:04:56.412336Z","times_seen":5866,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9cf78eef34d81797843553088423cc4c","sha1":"4c318f4848444ebeffd7c3ec362e7a5d9d8dc1d6","sha256":"08cb761b3122248600905b315d7839106f6090b3f0b7496b3d6f817a15fa134e","sha512":"c64ab5ad79ad42752434c79a13f34faff7dcbde611281078b2454feec5c4ee3b34f5ea2011a402792e0828759876b339dcba5c7a09a5bd2ab58c9d7891b5c2bb","ssdeep":"","tlshash":"0bc08ceca97db246606b6e8c900322181763960fa4402854c51592413a33a06a50f9bc","size":160,"data":"","first_seen":"2026-07-27T00:29:31.613797Z","last_seen":"2026-07-28T07:04:56.409749Z","times_seen":336,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"1bcb2103e54b2232fa4f021206aaac2b","sha1":"f4a82203a1cf8c1edab9196faf9ea4c80702945c","sha256":"6d4e2e52887ec428faa4fc30712686fb68783e56095063b47ba21383eda8a21d","sha512":"2e0db6eaaa8d239513ff121ae21c835c93ff4ae1909f817b58f89270d5d03020a47f84acac253ad0a78ee39bace86ddd6962a39845fc0653f0855ce4699a34b2","ssdeep":"","tlshash":"12b012887d3ccc85619518c8108ad00882422c0310020940e01fcd513770d86304fdad","size":92,"data":"","first_seen":"2026-07-27T00:29:31.615229Z","last_seen":"2026-07-28T07:04:56.529124Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8d1b507ffa76e1fa8fa03978c66aec23","sha1":"a4c81e0e2494de576355f91584e8c90b2a4686ba","sha256":"9bde46e1b993b06bd4561dfac0ed227b202736014bf06490738b931a9d0be16b","sha512":"45d793e4ed010d40e0d2e27641f87fd41a3b033f978043f921db065cf8a13e5d362e3fd9e9892cdae33e8fd45109bc705d88d0dc38b334dc7d44067ec91a6ba2","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000c00003000000000000300000","size":2,"data":"","first_seen":"2023-03-08T10:00:13Z","last_seen":"2026-07-28T07:04:56.497994Z","times_seen":7482,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b1a82c958451a0a4f0f7373dad43ca67","sha1":"2b0ee5ac2e3ca5ab194a88e9e280819804a71de8","sha256":"a8d0a1117e28efe9d9bcd29833dd103ca8f1110f68e814dbff635c08c6d71907","sha512":"3073a8b7f01cf71397ea52e6994c76562a2dcba867522d35339c664bf90f04531083bcde25d5af3a390de0b91c249029b5b317f0f64c12ea4439120f1df8a62e","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000000000000000000000000000","size":2,"data":"","first_seen":"2023-03-11T15:11:20Z","last_seen":"2026-08-03T07:02:53.843079Z","times_seen":12540,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"43cc84282ae8ae707422fe0e47a737e4","sha1":"9494dfe845f51f5f1a62975275bc212704af3f7b","sha256":"84be6de752c70c93efb10cb0b1bee2711b78342f56d6fcf411ab0f8c5c003348","sha512":"e21b2eb023b2c19c6a1bee13ac490e62d541e2f74e423ce0073b1ec70e611810dc842db685d8eedb836d0520e71553cd308175651f588f74b49a887920f060f4","ssdeep":"","tlshash":"80b092252098852637f508bcb96467d4bd3241a060096151903d899819b6f8b0990bef","size":121,"data":"","first_seen":"2026-06-05T01:28:54.596192Z","last_seen":"2026-08-17T21:34:38.588276Z","times_seen":2038,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"10d8b01b1b865a519be7d5b88e98bcac","sha1":"80cc14de2c8bb984866e74720f37ad57a80e9acf","sha256":"ce33f60576204820a75cd31723620bd7247276841db0647fb820abea4c8ab03d","sha512":"cf9a2f01ddc7113f81551041381a6e81350c9febe4b7f24f2143df7177c5bdf87a4cc5ef95a5a14ab06aeab4a710635b1e8c60e816eeeebe0766eeaa643d7208","ssdeep":"","tlshash":"f0f00e358b3c10220aec08f9c0898be83e2d7262e0245060fc69de7d0948cafd053eef","size":525,"data":"","first_seen":"2025-07-20T14:54:50.990021Z","last_seen":"2026-08-17T21:34:38.589439Z","times_seen":5048,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"630261c66fd1cfdc1d377aeacf7cae48","sha1":"2510e79e093980a6efcdd513d4134a19f2b96ee9","sha256":"2f90d6879fdf68aabce3ae9fbf0028a10659ba1870e24687a8de1bced3e5314f","sha512":"dd63351fe827dcd768ed78b36ef29fcaafb1d0583cecbf8af4dfa8d20fb478d9e14e87640b1a089cde6ce993a61d73f992e79522c7a77368405134f12cbe01ea","ssdeep":"","tlshash":"54f0c0df1711c972c6b98167337fb355383272127a9104209658aad86920cd3c219c87","size":542,"data":"","first_seen":"2026-06-16T13:06:30.04206Z","last_seen":"2026-08-17T21:34:38.59049Z","times_seen":1919,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"1a6e1178e4bbf5730bd664a49dd3bc24","sha1":"17c3ae3273f9de6afbbdedf2e413dbb3a6722792","sha256":"3814cddd18b2095e01abb745a99e5ada90178e709c09879324c3b623f2d829ea","sha512":"cfb1aab0bf589e33fd12906f448ddbbf7163420a088de513b174304c9ba3a7abcd9b41c98bc4dd51edd0206c1fe4660db9857e3c6163d1bf50c670cefddee509","ssdeep":"","tlshash":"de9002b090c39c5890264186687100160b6c040c01080141132184d810115048e40d8e","size":43,"data":"","first_seen":"2023-03-13T01:07:12Z","last_seen":"2026-08-17T23:35:40.658559Z","times_seen":229147,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"3ecaea12642976a1d336129f8c85369e","sha1":"a6999ecd201a6667f53a0ef41335fec9e160ad20","sha256":"bf3f74192fbb6caa6f83b6dbf1fabe1975fe5899d1b824f0ae074c30a9f8d371","sha512":"d7d20694badab3c88645a504b7d386dc31ae1972c286da756e91824726e79c7d7de2152680962ffdc1d53aaf6a811e4771038420f1405d325884044943246d55","ssdeep":"","tlshash":"65d02241b006dcd29ca2bb2a71348ca9009caa7c10a161c4b2cfc25100b39780b42a0f","size":206,"data":"","first_seen":"2026-06-12T17:57:14.031557Z","last_seen":"2026-08-17T21:34:38.593974Z","times_seen":1967,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"b6821bb45424547e332af4cefb5a5a75","sha1":"4767332b287c3b15f28ce99f18aca4ddb021f181","sha256":"e0c576273d1ca8ee9a2fba609a005263c2bb272cdec1d6ab5b997dc7c586bc06","sha512":"e2a0babe63e240a4bee41e4c5c1bcc19f8666a69fcd43eb6b0c3671b929958fba310283d97fa4923654ded85f5bec8f38ed0b3ca02d30aab912ac77dee4f01e9","ssdeep":"","tlshash":"5f41ff25c50fdc0889f3cda230cdb913281a913056e22657d96e5ee9cddf43b53a2b58","size":2225,"data":"","first_seen":"2026-06-12T17:57:14.032554Z","last_seen":"2026-08-17T21:34:38.594749Z","times_seen":1967,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"0fa06e655bed2d7a59c026cb90ba9802","sha1":"547bbafeb7acece1ce2f2509f8bf346043d84fc1","sha256":"c9da0420122e0b5f04aa5bdd58c285498cc2921321de0c0a4b1fdc766c821a18","sha512":"e2aa2182136fdf4aca1b1667166168ca0fd10c964e7c6719aa561160dafae66ea577fba93d15074f86ffa35182adf99c2c96ed72627b5f52febc663e406e2921","ssdeep":"","tlshash":"cb800475c0400d1741f1001314343011515c440444010150d3517145151111d7d1fd4d","size":35,"data":"","first_seen":"2026-07-07T19:15:46.886577Z","last_seen":"2026-07-29T06:17:13.213594Z","times_seen":1471,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"e3204b49a85b636cc8880cbad5ba5018","sha1":"6dfed1a64fc53aee256c26a5c52cc6491df97ab5","sha256":"a765dc27704c7f8a199ae74b8af7ddf6be7485298a56dd54bc46fdb7b69b1221","sha512":"f99c67dba4af1db7d12716d800e54f232db84e89854334f126cbdea05cfeef08509cc055ae2084173338097125b435b5229d4b00d74fdc4b995a87aaa9258038","ssdeep":"768:XyOQ03DV6Ly5NEdTtWWLiQn6spuNokpvauELcQcrQ+0XjsbgXlmJJWXzIC6tLKf3:XyOR6LMELcUPwbgXl52cfIyZ589e","tlshash":"7bc39268f224e77e7d3778ac96bce44c320571a1e9f807dee95172119fc3bb26829118","size":123458,"data":"","first_seen":"2026-07-07T19:15:46.907257Z","last_seen":"2026-07-29T06:17:13.214911Z","times_seen":1471,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"67a5c420ee38fdc0a33429a1b395663a","sha1":"d18d9874a6ac698c63568a84f1a8b515a9adbbe5","sha256":"c2759dec8fbb791e08e0b550a68d292862d8a0a9c14170d9a1ee5942e07c5d0c","sha512":"1ece6c5b4d04d6df39312c28872d53ce4029ff463bdc2950077bc1b1861d91dcbf95cd010e6a397c48717f6ba62923783d947a93d07d403c8f5fea96c845f98a","ssdeep":"","tlshash":"2501c02a5400ee5eecaa1eb4113d8dbb268d8abfc250cdfcd459de242f4627513a79c1","size":831,"data":"","first_seen":"2026-07-23T13:38:20.570216Z","last_seen":"2026-07-29T06:17:13.216197Z","times_seen":1012,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"1589309228d0596a56ca9637600c0ffd","sha1":"0ee2c12424b1650ebfe7c9aacade8146e4270115","sha256":"1dd1d72183717c7c8dfe538108603807a462ddc3769bb5114cee9f8b8c3ab1c8","sha512":"243e5a148dc39dbc7129e66fc0e760f5690f408adec6a19e92eb41013fbd1f25bf12881022d4afbbe487b9269f51665585861a9d985ece6eecb5df695a9e3b02","ssdeep":"","tlshash":"7a11e01eda5eee49a829cd1f143b1f3688c4dc779034156db25ecfc81262fa20ba9d91","size":1030,"data":"","first_seen":"2026-06-13T02:21:16.275218Z","last_seen":"2026-08-06T12:32:43.517227Z","times_seen":1752,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"10967388aedd93a37687c8c1ce2fcb80","sha1":"6a3fbd3121492cb2dbc250e1078291fb40a5b933","sha256":"03728e970c199ba3374ce7b1b3f3163632fa6de63ef11aa3a05d5824e3674b52","sha512":"939dc8ddedb2b725ff92e0a41928b7227646168e4948a090c4271fcfdb7b6089f60d0945a1d5f213eef31f6000ee46460c63d2b11ca5cd9ace0b906d97445573","ssdeep":"","tlshash":"5451337d3504c96bedad785a127fbe3528d9016b07d0ceb887c8de0409418bfa756dc1","size":2768,"data":"","first_seen":"2026-06-29T23:16:30.42623Z","last_seen":"2026-07-29T06:17:13.218911Z","times_seen":1541,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"307cab8226db7752ba6aaaff5720e1ae","sha1":"13cddabd9f6bc9191241d2165fcb4b081f20c93f","sha256":"54426822571d255ae68721d9aabe5fc072c61606fe2ffe791667e198f94ae3b0","sha512":"f433b9e8b489e6999a6eb18a6ed6c8e3578fbb8539bf12c7149bbad162d2c1916abfcef37ee635cbebf013d407d9c370d8ba26286d9de08864aa44c8079df353","ssdeep":"","tlshash":"9331d729f045f68abd9f26b5903fdcbe218f546e0fa19ab4465789a9470103d2783ec0","size":1623,"data":"","first_seen":"2026-06-12T17:57:14.038934Z","last_seen":"2026-07-29T06:17:13.220051Z","times_seen":1701,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"04a519a0bd479c67c4ebacec3d09f64b","sha1":"85232a728bf982cc4a73732a1e798f279fd1b93e","sha256":"35f0bb0c452726724f562ca9d05532bb98aac7b8d11ed0de1cac17d2d096823f","sha512":"23d7695f631768e74b2982c8336546ae4c9e85b33dff0e986f29119c3644bf89dc262c7dc87e40d5c99c439436ddb989d78f2a3c40dde91b54522b2917651868","ssdeep":"","tlshash":"6c21926e6804de57ec3e3d69053eed3a10cd887b4650def8829ece041a0297a37dadc1","size":1206,"data":"","first_seen":"2026-06-13T02:21:16.284448Z","last_seen":"2026-08-06T12:32:43.51896Z","times_seen":1752,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"25365a482f6248f1da0c3425cc63a8ce","sha1":"c34437aaa7f17ead780baa8bf8043f664b4fb2c4","sha256":"61be21898e1e84434732d2734df95db4af9ecb4e5f2486f2da7641bfb09224c4","sha512":"8dce633aacfbd032476a23f6c09e157087e1598acd773f855f29b9ddc2f649c17eaf0d0b13807397663991feea665e1d9d0692e5fd6e5ffd18a16db2ac340898","ssdeep":"","tlshash":"6ad012909c82cc1dc6a60f37283a6c3622dcc66447455586adc9da695a8ae3105a5dca","size":198,"data":"","first_seen":"2026-01-16T17:39:52.610905Z","last_seen":"2026-08-17T21:34:38.616582Z","times_seen":1956,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"44652b490b6c9ea2158adc5e0daf547d","sha1":"77c456327b269bf17f3898b9250e3829e77ebc47","sha256":"92fb3cc60692c42b2fdf8a54159d9197f9d0db962357ea84f96c373efeaf761a","sha512":"6e8ad870e7e45d5b1f8d83242685835e8abac75962f49b68e99c5a3a43cb1bb6d45698153757a16ab0a91c6c7e5f610870e696c51497bac74d88ebc4c591db45","ssdeep":"","tlshash":"32c04c25c95999059825cc8e141a2f2a868ac87640280d74736dd9886161b415b59d95","size":153,"data":"","first_seen":"2026-07-07T13:53:11.726539Z","last_seen":"2026-08-17T21:34:38.618601Z","times_seen":1721,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"b1691151961bb944c7869d870287a11f","sha1":"b4548e10cff0bbac231a29ceb780078813a47fbb","sha256":"d1efa1aee00140209d76ff05acbc6e90d27a3c130cb231383fd87a5ce25dc4a2","sha512":"ea9a091ece87fc089d0e9823673c4132c7f4515c8068911d43c98245b38f19657bc47ad9bc8629f396edbfefc4f14dbf897ec0cfd892705ec315e07043654c5f","ssdeep":"","tlshash":"f3418bb2ec19ec44e7c65e0c693a7ca454dd83a29186a08fb29ced784587d344df1a32","size":2250,"data":"","first_seen":"2026-07-07T13:53:11.727685Z","last_seen":"2026-08-17T21:34:38.6206Z","times_seen":1721,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"4fcbef6e7bb2b153c0a015529ceb3f91","sha1":"2969b9477d52e35b527322b6961cc28254bc252c","sha256":"eab988586f405f0967700f5518505207e779bf4b743c126021d08c8289052560","sha512":"ef957d074e3bd5fd8c6fcbf4e7b34acbaa5358ae1064d1c029b861b88bcbbf387b577aecab35aeca5edb650f4b02ec930ffac631ad4184ab639e46ec11b48b86","ssdeep":"","tlshash":"64d097d57442422508cc0a86f8ff133f7a60bea291884a58c0cb8be02f204c3c6a3a37","size":282,"data":"","first_seen":"2026-07-27T00:29:31.732671Z","last_seen":"2026-07-28T07:04:56.541153Z","times_seen":333,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"891b9b58a353597a14389f567b8d708f","sha1":"c9f894cf58c05d63f0832eae0cb257df8e3cb74e","sha256":"86b8988f0a7e2e42e9ac2e23445f2fb36ee56c3f2577fdbd85de20658776b207","sha512":"d78dacdd8dd790977d63709f6f0c956ddf6c5e81a2b07fb8df190ba68266f4d8d182de280216c7091389d193d1acde00763574c49622f15ff97a7ca8787c1fe2","ssdeep":"","tlshash":"c7100000000000000000000300000000000000000000000000000000c0000000000000","size":2,"data":"","first_seen":"2023-03-10T09:35:58Z","last_seen":"2026-07-28T07:04:56.52256Z","times_seen":1187,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9dd4e461268c8034f5c8564e155c67a6","sha1":"11f6ad8ec52a2984abaafd7c3b516503785c2072","sha256":"2d711642b726b04401627ca9fbac32f5c8530fb1903cc4db02258717921a4881","sha512":"a4abd4448c49562d828115d13a1fccea927f52b4d5459297f8b43e42da89238bc13626e43dcb38ddb082488927ec904fb42057443983e88585179d50551afe62","ssdeep":"","tlshash":"c700000000000000c0000030000000000000000000000000c000000000000000000000","size":1,"data":"","first_seen":"2023-03-07T01:02:06Z","last_seen":"2026-08-17T23:29:23.302024Z","times_seen":66699,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"63b39853c60d1092c257c1ab898bad0a","sha1":"f87cf1a14902692dfa942c109550a2e672b61e99","sha256":"ec587e500dad5aec5d7d7bc518e552e6ca420cf58288b14a2344fccdadf569c1","sha512":"afd219f1b06269656fc59684088ef20c04ad48cf9043340ee3f6bb2527005af6b1c4ca993410b77122c8095d055b33078fcd1866c8534a3bab8715c2f4bec9b5","ssdeep":"","tlshash":"c7100000000000000003000000000000000000000000000000000000c0000000000000","size":2,"data":"","first_seen":"2023-03-13T11:31:48Z","last_seen":"2026-08-17T06:09:50.5491Z","times_seen":1455,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"2c689baf336c49be53a9275c253d1a70","sha1":"dd68ef00c84c558efd3f770fea0b318bf2ab0b6a","sha256":"97bb6dfa3147dd08017cc33aa96112967d73d13ede8553ef11a72329ea09625c","sha512":"80fbe90ef940729ced075276b278eb21e7b836333c9e39caaf13ca7fe47e6dbbf00e4d15e77334813127329ccd22444c254b940a109f0fd3ef7b531036531346","ssdeep":"","tlshash":"27c02bf6b1b72404c390f01700324300d8a90c48c704407c8043a01dfd61309c97cf42","size":132,"data":"","first_seen":"2026-07-27T00:29:31.644173Z","last_seen":"2026-07-28T07:04:56.470348Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9706fbc074ca558823ab699e88c416f3","sha1":"444f28608265f8b73bc6df02581043ad54608a94","sha256":"4d8a4fd940462430cc488836bce6260af85e699db93794d73f42f068ce95832a","sha512":"4abc154be2b80d94ab621e5ba14a65edfbc284f509395db52a828b35643c42bbfb37d163f60cc7308f24f8636dcf35e76512e317ca6fa6ef17f0117dc264d147","ssdeep":"","tlshash":"2190029662837010119568138996646a5969694528041965804521da2cb0027e221e0e","size":51,"data":"","first_seen":"2026-07-27T00:29:31.708907Z","last_seen":"2026-07-28T07:04:56.502136Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/81a298ddc7471070.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"19fc6352b3bef54383c8770d74131cfa","sha1":"c67ec295996975fd662c06e0b614bd3b9f97d7bd","sha256":"9f43d8db2c14631ecaeb7f7ea5d8823bbfe41eeee26f6893c816d0aa348e9605","sha512":"64eba4d08add14b4c9728e2e5026234cf522dd62e2da45df50d967e4d337e6b38cbeaf471dbfba3420a5d3c992bb47c628f60618fca6d84114f7250b7407c5cd","ssdeep":"96:76gC8v2YWBRNY6v28COSXTnv2IDESf3vZ8kM2Lv2kyIWwzysv2hv2zthN1Vm5w7b:cjYWG8COJIDEiikyBwuzkx/T+AP","tlshash":"e4f1536636d4f9d1168b44d5c83b5006f22e0d3a216d70a8b7e5cefa369044ef472fea","size":8114,"data":"","first_seen":"2026-02-06T09:43:19.169507Z","last_seen":"2026-08-17T21:34:38.58324Z","times_seen":1954,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/turbopack-18a9de512a1933ad.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"ee874107586f9203ea70e460428f2bb3","sha1":"9bfba653884c0499149072efe4824e6170f10271","sha256":"44b3081e3a644e21b57f4155637e1e43563eae2c0f034c6ba9edd6bc9cba26ea","sha512":"7fd5fb8b487d8981ead132093abf93b51a77860cb1d04cd5c233c3e671b7183921080069aac71afb4f5f77a424d02ccdea22e3feba459326eea86d1c6637a09b","ssdeep":"192:D74eFn8/Esp1U91EG5T1uyO9lGdiwMhMlng4W9PZcxkUk1IsiyLxA:D74e2OvO9lG0OlgJZZQLyLxA","tlshash":"6722d8ea33a6f07743af94e6907f4044f1795468145d542c936ce8fa38398ae49e3f27","size":10707,"data":"","first_seen":"2026-07-01T05:10:22.643373Z","last_seen":"2026-07-31T06:34:35.53001Z","times_seen":1526,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/480cde08b8bfd5ce.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"2197ad79def7e68e0db5210279b81a88","sha1":"4a9572c96dc4b65a933f8494889a2d78f6bc8b3b","sha256":"0c61a398dcdf9a5d5a6a744855e7d95635c22711ee32b5af4a658fc6035de812","sha512":"1ed4b2613596da63a7fbbb97a8839e5ae8cf7a62d48b3f2818a3d7b510dde3fef57905aa4ce17843dcee71e3b9205f42c8e3b412427bddd975643af58c1b5979","ssdeep":"768:9Nf3ebiEpt8v84l+ayd9ar543m7dGwVBmOJ8SLBlbGJz5RBC8zogjPwNp9WxBbV3:yGY8AJ8pIOCSOvB9GW7H5sZzIxB","tlshash":"8883f8f931d1f88207ab44aac43f0002f32c5d77189e7864a3e5ddea716455da1f2faa","size":84456,"data":"","first_seen":"2026-04-28T18:06:46.282063Z","last_seen":"2026-08-17T21:34:38.522951Z","times_seen":2226,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"6247dd5d2d787d98a0d5e4966146d550","sha1":"51dcfa67e8318f689e1a4589a9def15c6f9a23bd","sha256":"cbb9ab7439a233ff75c44799819b7a7de5fdb18f4e30f0236430bc751530c211","sha512":"bcdab3f3db437167cf01baaa88913e053ea2ac769bf14381fb70e62ae10544ef8f11c327a24e01218936ae2800ed21453d065820542d1222b87117980536c637","ssdeep":"","tlshash":"92b0922e6c926024a05c1116a01c008a6b8cc9bb83c814a862054cb5ea9a0ba03847b0","size":108,"data":"","first_seen":"2023-08-01T01:42:54Z","last_seen":"2026-08-17T23:29:23.219353Z","times_seen":299658,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"e18eb9d0972d240f1a5456179bb6523b","sha1":"65255f106adcff2907a98e295a8e7a38fe2884c4","sha256":"3d68db2b85d5a2915743399f09dc438963f0c50f68b02df05d47a372661603e8","sha512":"bcd5a6c26fa1f7a77f5614a7b28e238701d698cc0c96ac5d03d97628d8622125cd0cfdaf54b1db96ef25320a3fca7584abd343d67bdfb9f272ca3ef8572b360a","ssdeep":"","tlshash":"d4c04c38402080e98659101c7434fb80bd7d3b973163e047da3c621c65f5d017c94b11","size":134,"data":"","first_seen":"2023-03-07T01:02:14Z","last_seen":"2026-08-17T23:29:23.221069Z","times_seen":263352,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"12347d552552b7eb8f1aaf47a5774b81","sha1":"4701684cb61e83493e14555659e2cd07ae9aba3b","sha256":"63b85d3cc0ccb498e52cf8dc76db5119713a85031ef4a8e99edd01e403cb08f4","sha512":"a0b95f6914bf92922a13db3f81f5612e2a360e0b3bb0f6ffabbe41623a044d662e27a216d788399cad99c8ec18c5f98f481e602d672de5b3b97d5da8ec930e4c","ssdeep":"","tlshash":"6b41427ea3a4193b45fa787e21af560620726654e0158c0c813e76846cb1a4b21dbf5f","size":2083,"data":"","first_seen":"2026-05-25T17:49:28.102585Z","last_seen":"2026-08-17T23:29:23.222922Z","times_seen":21370,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"ee676f3c3304176f567720665e414061","sha1":"229a760f61c81167f9b4c71b9d94e3b489aa3f4c","sha256":"a12283260feeff5a7dfc135c93bfc4c548014dc8c13277624b966f613acd9d64","sha512":"4f2b6a960d1f77c549c196090647b0abe19a65e0e64853363c9eff7a534e121a973e645777d2a4025e7435b03ff8890d05917ee7f537e22161d802be2f774590","ssdeep":"768:g1YhGD4UxXHwUPDi7hHXLjMI9Jjz6MxYMUJmq97SyY/v1MoLnBKNzhsDoGLmgIVP:ORQ9jdOMUpzYVMobBuzhZk2Z","tlshash":"998364640868a872c8979547deb9ff3e9cf406790bc8966ebdbb835c01ec6510e9f413","size":83831,"data":"","first_seen":"2026-07-27T13:21:25.921844Z","last_seen":"2026-07-27T13:21:25.921844Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"4e226125e429d79c4c368581aa455eee","sha1":"79fa2f523a0ffb2867b44afef3e154c3dc1fb5cc","sha256":"d50c6291d73f2c5ba6b2dc494e09fe070ea0a6c0c4ce3b3c6bc4156ab944dd72","sha512":"06a7818b0a33701b90d20662e1d1a85f90f78af228c2efcf6717d56f93b7502a5cd540d471f113376717d6bd8a8b0b9f198e16a65d6412f3f946dc0e6c87ed28","ssdeep":"","tlshash":"96c08c69d3040b704270a810ab0b3b4f253700228020c845b210a60038d0b078d703e2","size":145,"data":"","first_seen":"2026-02-05T15:28:48.153036Z","last_seen":"2026-08-17T23:29:23.227202Z","times_seen":114972,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"8501e99db1c76b62dea75ad32747a129","sha1":"791537ba64bbd81ed1644b015c4830d897182fb8","sha256":"25289f89e8785a11e468135cfa545b64462e90a61e62ee0bf9fe2dce0898016a","sha512":"d34b3b6f94043e080daf7804d7305efc1bade1433a80d4c6c547ab1325aceda8235ceea8bd99062a7737401ff5d767d46e4d24a972bfa88e9c6b197947041f77","ssdeep":"","tlshash":"7b1135251b715c27806a296232dfb309b8262372583c91dc8a81e365933661bbc3235e","size":1032,"data":"","first_seen":"2026-05-25T17:49:28.106733Z","last_seen":"2026-08-17T23:29:23.228704Z","times_seen":21342,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"173a08c5d6adc5c93611a599bcb2c717","sha1":"735a7301e66ae2c3584357f7bf0bf09eefb62df0","sha256":"271e6368679a21c3416e2a0325db33d6bc445d601c72a49914081b5efd0cdf3f","sha512":"cf15a9aa7e406207f3b85c7ab7d6453fd2351616b4dbb2db767ad854f866ae8256045b8cb74948f44d09fedb6c200c56fa2e2ab83d1ab997f5b0068edee7349b","ssdeep":"","tlshash":"b0800000c08a0030c3200c082008c28038802002a8f2002208200000a0032fca0020ca","size":26,"data":"","first_seen":"2023-03-07T01:02:14Z","last_seen":"2026-08-17T23:29:23.229591Z","times_seen":261447,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"d283d1818e80d7267d72b236fae9738f","sha1":"d767efc3619e7deff9a4c50b7e456bc2e6a954ed","sha256":"b74af2f4e4ad25e4cf95fbb6734cc89812d5f428e233cb333cc010872ba20788","sha512":"98c9bb90b63dc69d03fef7c9f31b78474be36d6eecda99845cb896ec6a4ad3eb19e20a2c65ce622052159ee4dab61cef7640f7e1d1b0574aca1c74db562f1db0","ssdeep":"","tlshash":"9101475c0a057d9ce90688ccc7c6a6655bac9237be003124f82f454dbae3aeb9830967","size":760,"data":"","first_seen":"2026-07-23T08:14:51.856878Z","last_seen":"2026-07-27T21:22:24.458632Z","times_seen":1879,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"385567210550a0c1e2bde47662ed4da8","sha1":"0cd76fc5cdca83a477bcfafc3beaf3bffcd6f781","sha256":"c144e84ef4992554561c2e74eea7bcb13d689fae12a19268e4d8d07266ea66b2","sha512":"c99e8074b2ac53140f93168c7d93c4ef36a085a054ff2c1105638cf2beb1fc257ec36adcb0a095d021242d5f1d7bce230a4d082707abb7c4b1791907bfe6e10e","ssdeep":"192:yzEjQfb/44TmOavb+Nvyv8kYl90sxVjoObVWpO7sTM73gcAKc3Udq6bRXnLNy9nA:+OQfbwKavBv5Y4sxVMOUE7sTMDgcA3X0","tlshash":"6822c80fa38679fcd7d15598b7a36b037cf4821b63082a1d88cba0542cddf19429b9ed","size":10400,"data":"","first_seen":"2026-07-23T08:14:51.857803Z","last_seen":"2026-07-30T02:08:52.778436Z","times_seen":2239,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"d8fb965e7ead2924508e97e5326bd3b1","sha1":"fae376d0cb54d4433b7bdc9aba04690cd6cb5d27","sha256":"57bb660c2fdf4369ff8e37f99b26963dba87c120b80c443ff3d31e030ab3a0f5","sha512":"c03eb6a1004f9dfcd1f960a6ca70a77932794808f72476b276bb16f02d0a1855fb2d93d07aab7c0c040d4b3c0eb4f861a4c1a9368a27e3a6430e425ff6ed2568","ssdeep":"","tlshash":"8e60000c00000000033000fc0000ccf00300000cc003c0c0000000000f0000c3c00000","size":13,"data":"","first_seen":"2023-03-07T01:02:14Z","last_seen":"2026-08-17T23:29:23.232624Z","times_seen":258113,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"432a81fc898ba34ff161131625ec8aa0","sha1":"f562e0bae9eab01f4deefe8869346c4c2f6af7b0","sha256":"a77074c040ee285c37e747f1cf8979f927113e3b335739a36442895a955ff932","sha512":"905694b6570aac47f7ee6249ab2f144ee942bcdb66b540575da6e773376362130b55525f28d02c4c66d46995adba278914f5766474a99607f034625a1d3bc0e1","ssdeep":"768:U6ScvEntDU9rb8DnHyBMwWU3CxZA+pWEsaB5GCs0HzUGLfdzC:GntOr4DnHyBvjyxZhpRsanO0HzUGLf8","tlshash":"0bf2e17fd2ecedee130b0f425d6dca6d262b0729541240e367c66b97296f102ae1f0e4","size":37054,"data":"","first_seen":"2026-07-27T13:21:25.928177Z","last_seen":"2026-07-27T13:21:25.928177Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"3dee2f2cc7c93f90067b925861bc4549","sha1":"bd26515ef7f19435b00be618015726cca33bcc5c","sha256":"6cb667ce86a91c2c82286d223971e6117649e532715e69c646f7a464de859b28","sha512":"6e951439633598ea9ef4cbf674509e19f4a27274cb73957bf20b15d4d60808e22d92d2e15723e803af945860520884bb1a21b0638f1499f6a5c849cf9e0044de","ssdeep":"","tlshash":"37a02223c02ac003003800200c833002e20803208802a00c030a820830e800bfec808e","size":62,"data":"","first_seen":"2023-12-06T20:58:21Z","last_seen":"2026-08-17T15:55:02.277892Z","times_seen":5440,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7463516a439ac7bd8cbabebf99e8588e","sha1":"46c8af3f3cdcba77460d9f792f520b7c7019ec50","sha256":"6714a108bd67a28899b2266d4370bcb3c2bab1ea052ec11841e9a4c6315aaa7d","sha512":"8a109bbcd9f495cd8b3ce97f9ec64131d71f3ea0e7a4b12e5a5f9b1dd922e0e06bdab6bf8a4031a3eebeac7592707d5a0fb1f9add45bb1f0885284855471bb61","ssdeep":"","tlshash":"cb700088ac8e20080023322800cf8e082222008000300202002020820c3300a0002838","size":22,"data":"","first_seen":"2026-07-27T00:29:31.561589Z","last_seen":"2026-07-28T07:04:56.49883Z","times_seen":331,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"93f7b592f2574e498c25585a59934906","sha1":"0614689e2e7cfe9ae5beaffd1c464f07ba7a7ea7","sha256":"b1aa91332810bb2148e37c657e0665bbae437082b77e63ca7108b65921f65c27","sha512":"d56f41933833fc0762b26704637be985f4d81d3b9efda7b55e249c07b1d3b80e73e36197d42b98277f15305d4e81d52f4a2b93d1576709a890d862066ad3abc5","ssdeep":"","tlshash":"72a002bea416f810242964a8968e149742d260479099adcdcc29d5446e55154d149998","size":64,"data":"","first_seen":"2026-07-27T00:29:31.670787Z","last_seen":"2026-07-28T07:04:56.503708Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3c10c34c8143b9578b0f63ea21692fc4","sha1":"71e150c23691b76c13896c50ed60f6b0a7c738e1","sha256":"9f05eb58b89a0c41431ae6fde5147c4aa521cc66aac32736ab63d666d3d6bc62","sha512":"39ce126f879e9608a8a1cc6c35f66a83c34c7dde2282d2e720770d92273f1dbc2aba2c32a2bfa6255b2d43a1f2b697020e196cd20cc8c8532e2b49d8e23d0c29","ssdeep":"","tlshash":"3aa022880f0ea008000f28caf0b3c28fc0eb280fa0803c02e20cc2ce0ee22c0b0030ce","size":75,"data":"","first_seen":"2026-07-27T00:29:31.702215Z","last_seen":"2026-07-28T07:04:56.466803Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"6ece2b454fce2dbbcad72056a3098292","sha1":"cc99d4f07f155a29aba3972685ee852eb8c2ef37","sha256":"dbe5a33f7437ffd8358578d2b49be50db17c5709d69dec06c4d496d0531b868c","sha512":"850de402ab1f27afd2a51a6ada067b036f678053450dbfaae94daf45aefa348840b4e373497663ad93d754b4cbf19697e87b5b0e6caab97c5bae404b12bce17f","ssdeep":"","tlshash":"b22165faf3c672946bd756d0accf270001687581ef794a0f4861e3b057546976085e4f","size":1288,"data":"","first_seen":"2026-07-27T00:29:31.59985Z","last_seen":"2026-07-28T07:04:56.474803Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"64d8c858156192a16a990983d35fb3f9","sha1":"1ae03179ebb040c510ecf6f785c0002f21932433","sha256":"bdfd55577f7056ab007e88fcfe9352e9805fc05f504131193cbe81c001162fd3","sha512":"e6c8b62010e24ed3c7a59b3d92aa3165bc2270274b755e8ecee06a238fe29682b08510402a6e8b7b3f85027d7e403447ed4694ec2bc43c136d5c0f1cb1b3f23a","ssdeep":"","tlshash":"cd60000c3f003000000000030000cc30c30cc3c0c0f000f3c003000000000000003f0c","size":15,"data":"","first_seen":"2024-07-23T18:45:21Z","last_seen":"2026-08-17T23:29:23.265918Z","times_seen":175131,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"75a92bf0b7262ea95aeb905148bbdc0e","sha1":"878ef66813fe4ea27c7a26d305cfe8725b60719a","sha256":"551f05790db1227ade331411938bf15f6eef4de8329649c7d4f40f38c493ccc6","sha512":"648224477ebffcb9bc340f550d5a4f0e49dac46b2a95833fbd4faa0aec48d78d566322363bb443a58de62a9917a0779f2054f51074809815c7401e24558b1bac","ssdeep":"","tlshash":"5fc09247f5b0164b049ae20ae387488c72bc8509463a0e292791a0ca3eb3f9d070e1a8","size":132,"data":"","first_seen":"2023-03-13T22:54:55Z","last_seen":"2026-08-17T19:11:06.483213Z","times_seen":1386,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"4ad005c3ddbfdccc3a7936435a63e60f","sha1":"79677d4eecfc22eabbc61c7bb8bb5a82fc9de290","sha256":"eb75cec7d8c4118fd3f12489a64843e5297671d2fe2caaf7440dab17e4cd8e2c","sha512":"148b75a315529b682694c1ac35adfbcc3fb3fbb10636a4125ef83cd3ee4e9e0edf0df8830bc8ea0ed6d61d53b2568c5479df4c21365f3c7a3b3e1570c72b90b6","ssdeep":"","tlshash":"2101dd4c98436a2a260b71e5753ea11034b8400a8815e81df94dd6d4af60e886d0bded","size":667,"data":"","first_seen":"2026-07-27T06:55:16.972604Z","last_seen":"2026-07-27T13:21:39.186059Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"e7347c7411a879fd3a5c8299e574220f","sha1":"819cda5cc7c225c2b234db82f1e9d548dc32b048","sha256":"9c0a36e3f649dd7e935cca83f7b08a507199e072edd03bab3f8e17a1168e7f97","sha512":"d9aea4c4ced9484c2545ad7370e807a326b47c494e177a7a644c23a7604a022bbf568e760bcc78df59c824037353eccfedf7c2ee0a4ef69363cb3deee2d1c296","ssdeep":"","tlshash":"c3e0ab3d3c754154479b10b481b7e6283d1630700084d85388aa88b96cb0bde7d01498","size":416,"data":"","first_seen":"2026-07-27T06:55:16.9735Z","last_seen":"2026-07-27T13:21:39.186602Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/c0a6ae515f4d245d.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"42e2ea745a52c479ce79b9fadf7f2ed9","sha1":"0cf08999016475d70bf072b7878daea0244184e3","sha256":"2746264358bea944d3523f9c66585147897903d73b7b42e0bfd599f2492e3315","sha512":"cf4f42621c9615fcfc08b325ce391ff9e3af8b94fe80c1e4118eb1e52ca88e0b0409d0c36bc96f50a26ac3ea232630521e1a8077e10d05438f3b7fb8ebc266a9","ssdeep":"","tlshash":"af7165f0a702b23409ea41de5079c778b53d3658512e9420d1badc7f626cd8964b2ef3","size":3649,"data":"","first_seen":"2026-06-13T02:21:16.197988Z","last_seen":"2026-08-17T21:34:38.580636Z","times_seen":1949,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8bcca505f2517c062fdd0ad40a31ac91","sha1":"57cdc3971cc4b708a1d8c95095e37798cae41fbc","sha256":"29e99dc983760fcb49bd0bcdbc2b0ba2dbf3ae44e39ec3610d6b75c037eedfb3","sha512":"ebaebd5882e96015b06bc08ad0584b8a4a475ff6c151038d75f1c972c8223d26288021b37e2137e2823d6f2bfb3307e7def2e9f6c4f70088f68fc2ca5a9665f2","ssdeep":"","tlshash":"25a01288490c440c451215c0f013b40401e0301b80c00c81819d9a8105e03a25013499","size":79,"data":"","first_seen":"2026-07-27T00:29:31.664474Z","last_seen":"2026-07-28T07:04:56.430176Z","times_seen":332,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"772f886781c1a2fe0d138da864bd1a0d","sha1":"ed7bdac6b5065277c59e9b3cafee709c2af4bf9b","sha256":"9ffa72ea50ac24f7971dc4301227ab985f71fa481eded61825f752f9a907dae8","sha512":"64e6338ec403963209f36738436586dd74708ed1bda8f8829b33241c22b0ce9aa2c9296f3f3e25df707e05433452b2e4802abe7995fe947d26a5645c0eb75b82","ssdeep":"","tlshash":"04a01288490c440c451211c0f013b40401e1341b80c00c81c19c9a4105e03a25012489","size":79,"data":"","first_seen":"2026-07-27T00:29:31.735217Z","last_seen":"2026-07-28T07:04:56.434717Z","times_seen":331,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"0be6600367fee76523db94834295e241","sha1":"a2f2659dc9f4a3185878580210cde1f3e7ad093d","sha256":"e5819dfe160d11a607ca64745cf31e2f79e6d642ee0565aef7eed47c872711c9","sha512":"b83363a5ddb32adea20765f2a926ce5d4998a32d0969a18ec6cea9ca9f8dc9f42641adf366a747ae1c9a2ec1c7cf33d2e6025a719dac017ab8aa6390f7bdde67","ssdeep":"","tlshash":"c7100000000000000000000000000000000000000000000000c0000000000000000000","size":2,"data":"","first_seen":"2023-03-07T12:23:15Z","last_seen":"2026-07-28T07:04:56.458021Z","times_seen":633,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"fc5db2d55e37e6b19c011096290a334a","sha1":"c05770422f83d9a201a14f438e8a3cc4f40c58ef","sha256":"42d39b50a4ebc83684b6403ab722a3ba6746739266a8e7bbd5291f32f35fb286","sha512":"3c5933ca355dceee4f798bbf06754d2421a4d50cf93c19e90b5f7a3b09f0f90aeebd81c635482d6bc72482b9efcda640ea15dbfeb3e2943783f6630344c7b542","ssdeep":"","tlshash":"94d02b84c81d11177c2b6ac79127dc1f209570031d29eb01923fa4c934e4151c18a09c","size":262,"data":"","first_seen":"2026-07-27T00:29:31.591149Z","last_seen":"2026-07-28T07:04:56.493695Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"5d43ef05e57cdeab7895fe8a3b6ee014","sha1":"19671e4e00cc9b5f8f6a6167c1ea8800ee539aeb","sha256":"b7893a0611b91f5fe47ce3889faf375eddbda47517f4e44c8c338eef6d2c41e5","sha512":"535346ebfe272e052e64dfa1845da29662c36e84fa5a946e52dcbb2cf4d894851a102180fb1c04603f86ec920d89fdfb62c1ddc14ea81ba4cec7d4723ad5598e","ssdeep":"","tlshash":"8db092a4a20c0b5812813919ad2b06e950e42704f82994884ac0ae2548e0a41568ead8","size":116,"data":"","first_seen":"2024-07-19T01:23:55Z","last_seen":"2026-08-17T23:29:23.296569Z","times_seen":193470,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"13632c97439beb0cf3239688a15254e4","sha1":"796384e694ba83d7e3250c171ad59d7109728d2c","sha256":"07302499974f21b9e32dcccf30d83d15c17ad96c2e2c3b6d99e34780aba9b217","sha512":"33d7ebb45210a02bc08c24dd91af080fdaf3c5d08be2760c5984c147d9efa498721f69c2c30178acf1955930cfa38f6869364800a64ae9aaf186f66ea6cf18d4","ssdeep":"","tlshash":"c7100000000c30c0000000000000000000000000000000000000000000000000000c00","size":2,"data":"","first_seen":"2023-03-08T15:47:57Z","last_seen":"2026-08-02T23:01:01.238801Z","times_seen":1282,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"89aa4b196b48c8a13a6549bb1eaebd80","sha1":"1247e024fd6d643afe2cdb7eafe74907ca00d25d","sha256":"19503ea6785ee1243cd3373fe0d201404089fb7c559d2cd4b025585ee36ff3c3","sha512":"36c3a3f8a8082a7db91e846a7d533c1ea0e04a662b60f37b245790bdb15599093360d980c5fa949d0d79b4d95aa401beb698ced062215c9707dc4d5a4fd4e54c","ssdeep":"","tlshash":"c710000000000000000000000000000000003003000000003000000000000000000000","size":2,"data":"","first_seen":"2023-03-14T01:57:03Z","last_seen":"2026-08-07T00:08:43.074784Z","times_seen":2559,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"1fff332780e527639f64c89183f49b53","sha1":"e9c0d16f6e00accc87eeddec9845e7a9714f282b","sha256":"d41142433105e76432dcf3234e68b7bf2d11ead80465d9d13da9303ca72504b4","sha512":"b3edbdd776178eba7eef0a761a0ce926f74d982caf23c61f4d82e17a12cacc50dc1a00dc0418c6fc90e3af287a4cb73ed79763f80a6bfe97c3dee08903e32ff3","ssdeep":"","tlshash":"c71000000000000000000000000000000000c000000000000000000c0000c000000003","size":2,"data":"","first_seen":"2023-03-10T13:21:30Z","last_seen":"2026-08-02T23:01:01.276572Z","times_seen":4252,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8478d74bf7cea5b04e006a4d011174d3","sha1":"6617255ad32a43aa5bac9dbae30b6eca48b582a0","sha256":"a35339f2fdef852e886273a34f027a411bb24f3bfeec4df99371a4527957c214","sha512":"2b6307facb328fdb109a90fdc9780af9b23f98ac0c83d8932584f37cb88dfa48a690d49efb66c7284fee16fdc65023efdd7cc1adfa2805b82a51c1f60da40c5c","ssdeep":"","tlshash":"53700088ac88200000233228800f0e080222008008200a02802230828c3300e0022828","size":22,"data":"","first_seen":"2026-07-27T00:29:31.632649Z","last_seen":"2026-07-28T07:04:56.419012Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c942bf5ed0077692b061a2841e8b8cb4","sha1":"a85e0c0acc865b82b611bd50c830e1d3356f597f","sha256":"1acedf979cdfd53874c7a2bb299396dc38e51507d794fe9e03e7859afddb64c9","sha512":"8cc17c8a1d7734d111ee272597b349b7e235837534bb5f289d8102e1108aee727f9668eafda41794232178a7f177ff01d6652a935185c52885d4393e65f022c0","ssdeep":"","tlshash":"948004047d541440105114500047044f011315d431530434151c01f55c311553101d7c","size":34,"data":"","first_seen":"2026-07-27T00:29:31.605306Z","last_seen":"2026-07-28T07:04:56.408068Z","times_seen":317,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"760be5a580d8655546483025f065170c","sha1":"c6dce4a1d849ac546a40fe66f1dfb0031770c2df","sha256":"0a3c6ec1327fa24156016a8d4b516ba269676f6e2d26a3cef2536a67e0801016","sha512":"89202d07a5135a312a287f9e0e6ac5fa5472bcfcc731f1dc4402563f8230ae329672e53b4b8cbf388beefd354a19b36fbc19ac65be0fa83f1e2c5b0d0a476ffe","ssdeep":"768:L8BTPMErdYHnCu2NPdPS5oPX3zp76JSAZg+hCU7aeTEPecn9fJG9CwaebQHr6pdc:L8inj2rpHh6i+9aeQm6SLQLUEEK","tlshash":"b65319eff2d673710de665f2045b820992be7552dc40189eba05e6f86eb0c47e02bf25","size":61513,"data":"","first_seen":"2026-07-27T13:21:25.939892Z","last_seen":"2026-07-27T13:21:25.939892Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"2fa55cf120cce28707af1ba6a6235bc1","sha1":"65c1c8c828eceeeb4dcfef82e3233d93d4481d4c","sha256":"3e392b8a407e240e3c6ba3bbe6ec68cfc5564083cbc01a721d8b7e24f458bb67","sha512":"96756c245788a6f83d9f8123c7b7f789bdca00d26d02fc822e8bc40c5798223eac50768284955eb23a66241f6cc9edce8ffe6943a9fc87a7a12b9fbf795f0a6c","ssdeep":"","tlshash":"ccf0eb2b914f23ad9a8961092ca3ec42383bf8643026446e06dd13f015d06e8e4ece42","size":585,"data":"","first_seen":"2026-07-27T00:29:31.592417Z","last_seen":"2026-07-28T07:04:56.441303Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"92a1f7984eba504b4eef2a9601b5ac73","sha1":"b8bd4fe4f67489638b0ef337ae8c5808bb4f16e3","sha256":"a89aad5cb9834d06e8ebfa5695b54d1ac6bdba2c3deb109738472e69db48b911","sha512":"5a10edf6f9304fb387fb7d6500bce13734bbd73dc7de0ff063c7c7dd9cc53881d92632d6b3fe38b11f2eed01010f1e7112fff046ebf8d37112ceab4abb045918","ssdeep":"","tlshash":"c710000300000000000000000000000000000000000000000000000000000000c00000","size":2,"data":"","first_seen":"2023-05-01T16:31:42Z","last_seen":"2026-08-01T06:59:53.943909Z","times_seen":719,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"cfe749683ca1521d063fecd1aef91fc4","sha1":"14a5db185e972ebfbf33d3e75dac38b3eacbeb97","sha256":"7a8b9eba1d338c7353c5fec3fb33b660f78b1bf23660e31bd2b1658113b3be7e","sha512":"f15bc4113a72f655af8ae406355173dde59998b1dc97c5d183fbeb9d22a137ade54cb3df0a08457ca5b6600d14081432ee0179c38b22c037ce6d87ac88f785cb","ssdeep":"","tlshash":"4190029662837010119568138996646a5969694124041865804521d92cb0027e221e0e","size":49,"data":"","first_seen":"2026-07-27T00:29:31.72947Z","last_seen":"2026-07-28T07:04:56.533415Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f3cb400ab8db471ab376e67e68db49b8","sha1":"95c5779da722f8256c12d8aed658689bc4cbf3cc","sha256":"298f91269a3be144e0a0747ba1938e2e78e724f973872a848cda00f6591c07be","sha512":"58468d4524d46a3f4dd8901f9fa670774124524509a3c3fc1b7f0cc5f8ea407bae385eb81f422fa2aa0b775c213ab3f8b51b33035a0dad04d78f63e8186067da","ssdeep":"","tlshash":"41a011888a0c8c0c8a2222c0f023b80802e0302b80c00c8282acaa820ae03a2a02288a","size":79,"data":"","first_seen":"2026-07-27T00:29:31.693865Z","last_seen":"2026-07-28T07:04:56.509076Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b14f6fa105f068088709b139cff5c8b7","sha1":"f9cdf0110749c12bace5fd2ee6a8f1d1034c41a2","sha256":"b1e722516abfd4cdaba507d31af2d6a1a258ad759b5b29e25851e5955b769570","sha512":"83feb0c702e136b028cfdd527fe8063cf87874eae31bd6e97d60b0957baabb7ed3e5845b8a94632ab6530b09653c0eb7d127a22aa7eae1651d1e24401be469b5","ssdeep":"","tlshash":"7f70008cac88a08000333228000f0e080222008000200e02002020822c3300e000282a","size":22,"data":"","first_seen":"2026-07-27T00:29:31.696735Z","last_seen":"2026-07-28T07:04:56.515579Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"708197c3f2abe60e5b0e1b9d77dbf54a","sha1":"78bddbf3689f7301db53d22c684bf404ab3528a1","sha256":"ec14f274daddc5197d69049df42efe6d2ae021f65a7328f0bdc02d6bdac996ff","sha512":"f625f839f01f50aa60bca470ca2ece77be6b4c2ef572866adb6a80a7a3c6c3e262f94993e1489e9c60c4ec21d93812fa7ade62c6ffafafe984946067bd859b0d","ssdeep":"","tlshash":"1b7000882e88208880023aa0000fca0c0022808820022e02808082822e32a0ac20282c","size":25,"data":"","first_seen":"2026-07-27T00:29:31.628814Z","last_seen":"2026-07-28T07:04:56.529913Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"e213815f8e0b9954f8d43e3a59f8b742","sha1":"563796cb191f082f24fc52b017905533a0ceccc5","sha256":"842c53eb438fb28e95c14d32423b0fe01bf557c9e623b684b19663d497bce97e","sha512":"b5bae6d10c35f01992dcc33c3f24a7cee7ac0fb56cf4a9e79453d213297ffe3b8e6e4b3eb7de9b1d10a5ca2638e81ac3fd3e66e6d76d157a75163ac7caea4f89","ssdeep":"","tlshash":"ad60000ffc0c330000033030003f000c003300000c000000000000c00c3000f0003c0c","size":14,"data":"","first_seen":"2023-03-07T01:11:47Z","last_seen":"2026-08-17T23:29:23.26515Z","times_seen":206027,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c987d68cc10a227f055b84626a48a0e9","sha1":"2fdabf2d840a90c89c520a78254ab9d49a11b334","sha256":"210c163506a8612cc88bd448b4cf01d7646fa80390ad547f30383375e3264c69","sha512":"1ba28dd36ddcc1461b99b2307ee47bd0bcb5564cda9907a8bd170c86689d151b0ce435436d29fd24d0c473657b2576037e1c058afdfcd2fbcfaca1cba26bb6f1","ssdeep":"","tlshash":"c7100000000000000000000300000003000000300000000000000000c0000000000030","size":2,"data":"","first_seen":"2023-04-01T10:43:24Z","last_seen":"2026-08-12T21:59:19.323603Z","times_seen":1967,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"98ade430ece83148aa2ab05e8471427d","sha1":"3099f4a1dd303bfbae77cda007797d763e13ed48","sha256":"bbe7c0ea759e990e83a6c24ceea814b66a2ef08e54b52dc9768cf1b9e8dd9546","sha512":"5e92a1720adebdf897ccc117ab6121187c270393e7558439aeb17c948f868ca8e4763d7a6df3331c0e3c9a96f296be8ceafd1f9ab37d5521107b36c30480feb6","ssdeep":"","tlshash":"65b01274e52754309025b2b5ea7f211cd0b318cc18ea2d84601142c9f9f0784715fd4a","size":107,"data":"","first_seen":"2026-07-27T00:29:31.624869Z","last_seen":"2026-07-28T07:04:56.514701Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"e5af9ef2f883044b06511fa39105babc","sha1":"82f18d9e8f2b8ce5f187eb5aea87b80dcb508232","sha256":"a4cf529561255261c11ba5f571d1c82361483653a41b24764c828eb5d9fb2e81","sha512":"5bb85f74a9c12b13211fbfec101706b8ff9a6b5775d36101b8e8eb0214ae02ee5fd15c312cf2be4077f03484407252c0403300bd156644fa09d25fc596912ce0","ssdeep":"","tlshash":"25f09ea9f2c7d47491798634d8aa4305d6133d402006289ea465e0fcfd57866e932b7d","size":508,"data":"","first_seen":"2026-07-27T00:29:31.575522Z","last_seen":"2026-07-28T07:04:56.45046Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"219505d4d5ae5b145370ed3cef98cfa3","sha1":"89498e7304c8074715c729700b3955fc065531b0","sha256":"d298bd11845e65f3a66d13d3a5ab32c91d5430be6dd23c2bb70ef16c03e21751","sha512":"c169611018ff9ff3e5d894a922f07106d329ca6d9668b9dab35bed80b825bbe371edd8cbb5a63171e6f300470e690bf74d7704b7109cf78b286207e396916335","ssdeep":"","tlshash":"314000000000000000c3c000000000000000c000000300000030c00000000000c00000","size":6,"data":"","first_seen":"2024-07-23T18:45:21Z","last_seen":"2026-08-17T23:29:23.245991Z","times_seen":178371,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"a931635074a5017da74948b67e16c76f","sha1":"a6799582ad16a7c1ab8221c166268130df6691d2","sha256":"1fb437ac78114eda813a7c4d5771b6d3aa34908a5ca3b743d5eb5c79088cf82c","sha512":"7c96bb515bdba9ad60854b433d24e77982a321dd7ca71599fd8f79acee580802f56829a5dbb7f64932a51ad50d18a9438251a6ad8127ad2b2e332811033d2c7b","ssdeep":"","tlshash":"a5d023cc3941f262d06274b9041704dfd173384a1e1cdf4184154875667c5d9407f4c4","size":206,"data":"","first_seen":"2023-03-07T01:02:15Z","last_seen":"2026-08-17T23:29:23.386036Z","times_seen":210792,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/_/translate_http/_/js/k=translate_http.tr.no.scrnY6Q2_yw.O/am=BIAABw/d=1/rs=AN8SPfq1KlUFqeiFvBMudduzGtb39QWXuw/m=el_conf","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"b85f95308a308a60d4a756a73b9af98d","sha1":"6df9b5ba466f4313cd0090994e0532a009c62384","sha256":"353232b820948ebdfa0da5f6114ce94046e818841c3333730fc8420560cc40a6","sha512":"aca1772aaac4a3358247c03c4385b162652f7873a9e538ff5d456d07d67244b31d426597e4e3912fe12673b4b0775b2365684d7bcef6d4135c6f417861cf25a7","ssdeep":"1536:XWjLpxIZnZzYOwRUSfl26KKZkXtmqR6Y06ECi4wNWF0:XDD4U6KKZgtBgtCim0","tlshash":"a373b88cb6a5b4658363f4b5412f000fb23b58adf8484cadb288d8e1adf5949453bf7d","size":75428,"data":"","first_seen":"2026-07-27T13:01:51.242895Z","last_seen":"2026-07-27T13:54:26.952715Z","times_seen":74,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3506f2c3f0a0c7f4d1c8512a5f182e3e","sha1":"bb601a6a7e14bb74daf05b89b61c2d05faa5864f","sha256":"3ba80ad3d800b4c9bee2ae0bbd8e82eb68bea7dd052701316f4b9f2844b8f5d4","sha512":"d1a8350bc3f975c5b65f170c7766e3ff82767087bada7b46a90f6523334cac06f33fc685ac960c3bf8e48e63b19200c7798cd4788fe56028d94c5e9ae9324ffd","ssdeep":"","tlshash":"39b092d9e2d261b28049898e497aa219e1f23dc06a00247ec2a2a85aeaa071f45bd411","size":118,"data":"","first_seen":"2026-07-27T00:29:31.723604Z","last_seen":"2026-07-28T07:04:56.461761Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"1530dfef260a42c6cf4ae74e3b3a0ccb","sha1":"65d508f3134b2fa935267af6ae5ff74065af1ac1","sha256":"aa73448b0997636c2ad8130d820f28d761120fbbf441fe39a79700d729a1968d","sha512":"a03dc4c2521e4da4a2214b3c814d6a9a72a790b033ecf18959ea623f3922ec89ecb3778ececf6e6c47451f2f5a3e620210497a1b19fdd17bc9635cf760319d16","ssdeep":"","tlshash":"32e0680f69a1535f48e400c4407707716e640902bc84e9bf8c05e37e86187c3d0acf18","size":378,"data":"","first_seen":"2026-07-27T00:29:31.558429Z","last_seen":"2026-07-28T07:04:56.480039Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"33268455bec60d6e8b3106cce5aa8191","sha1":"45f611b7e2afab0b79cb7c1e891ac6f46b704904","sha256":"d29505fc15b3c47068fee2bb25e61c381c102403dffbb1ec744be884abc6ac11","sha512":"0ad3b2296b8eabcd70e3228bf25c165ad265cb0ad786a5d09ceb2d4a7158975a6bf6961cf21d00e9c04343ef1d54c8025b6b894a29235e8627a08aa969ad7d76","ssdeep":"","tlshash":"baa02208080830a200a2f000b08b0e0880c0b083a0380000802f8e8e033202a200300a","size":59,"data":"","first_seen":"2026-07-27T00:29:31.633857Z","last_seen":"2026-07-28T07:04:56.458886Z","times_seen":321,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"4c62bc4fd3c4e105cb3fb62fb748d59c","sha1":"f6e2d1e74e35ec4c4740ba02e890b98bda11417f","sha256":"9f4a6a370cd350425d8ac08047e7646116468672e99765ca198e6d463ee5286d","sha512":"5cb125ce0b7fdde81c6df58f6e27943a130f0d9e2a366d94ea8ed926da635dfe2b2c5778a14ed99bb35c7b2a48dcd12090cbac18370611d1c0438e1c2621efb4","ssdeep":"","tlshash":"6cd0129b738060e3d797fea709580020c1ef0b8402d2753d42d5d51070fe9ce83461e3","size":203,"data":"","first_seen":"2023-06-16T07:31:00Z","last_seen":"2026-08-17T23:29:23.308139Z","times_seen":194054,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/33074d3ff5d0cd2d.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"992603cebc96287b9bf186c47928c4d2","sha1":"8a86c102cf1671f6d0cf3b6b5598fff510a4b79d","sha256":"93abe3bbe2a336a05186632225cfa198e5969ab56080e1163da35e41ae9facaf","sha512":"06cc3005d9c8ffe1f27e81eac61fddab10c3e07cdca8c183315799b19b177a9f9dd2043bd1c9c92364578b78d69640c31014db6cca25a74972244784f2de74a2","ssdeep":"","tlshash":"e4d02b702250fcd8408aa4cc8836424bf529247262fe3495d7ae8cb1a174f0c51e1955","size":282,"data":"","first_seen":"2026-02-04T14:24:19.894391Z","last_seen":"2026-08-17T21:34:38.511954Z","times_seen":3105,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/d71b99267b066b9b.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"8ab91e90961bd7e4d7c2d7514a37ecf6","sha1":"d2e2405837d8cd1436dae22a0c5d7f4e15168995","sha256":"6e16504cbe3f76082798a523cf9cdce3bc9321fefc36485d02c9289e5a5f6b38","sha512":"da24ae4884840b4b996fdd087c41065e590b5cf33046f6aec00157142b53b9da067a83af2cc7744429b64c02bbfb1aef428787389939a1736cb4ad1f0458ee69","ssdeep":"384:AqniNMH/fZ8oNS1VFWHcE+Ff8IiUG6AUNmXVOmitisz8Xdjz8/K4QIwATf:YO58o0fG65mXVOOKKNInf","tlshash":"bec2c725b90705be2aee83e7e06cabd5d9385a02d5098b4ce3978f319704bf56187b0d","size":27443,"data":"","first_seen":"2026-04-30T18:36:20.827898Z","last_seen":"2026-08-17T21:34:38.549995Z","times_seen":2209,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.google.com/js/th/-kKZYXbYL1zKddVWiRpKQAs-FFrmXi_6UkcmhFlYLos.js","fqdn":"www.google.com","domain":"google.com","tld":"com"},"ip":{"addr":"142.251.151.119","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"175c5223286c359a85dc124e70b631cc","sha1":"9783da70cc4ec9e1ee0345dcbad47674d41c5ed7","sha256":"fa42996176d82f5cca75d556891a4a400b3e145ae65e2ffa5247268459582e8b","sha512":"cfa0f26623d1cb13939c7b675013156701c25016a2eb9c8fe728cb97c652643368bb57914488e6f2ad40d97606a7cb39396905dad46897148f68f353b80b2d82","ssdeep":"768:jcaBTPMErdYHnCuKN9dPS5oPX3zp76JSAZg+hCU7aeTEPecnjfJG9CwaebQHr6na:jcainjK1pHh6i+9aeQmKSLQLOEEK","tlshash":"cc532aeff2d273710de665e2045b820d92be75525c40189eba05e7f86eb0c47e02bf29","size":62145,"data":"","first_seen":"2026-07-22T04:26:21.664288Z","last_seen":"2026-07-28T07:04:56.300909Z","times_seen":362,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f0e9786cc26fbeacec181934a90f5cb6","sha1":"984c0dcbf07ca50a8b5650ef3162fb20f1dd1e83","sha256":"3882c3fec1162244ce29938529c74d5bfc8a6a308c2f75e9db60fa781c43c4ca","sha512":"2e46eca652a486e7f7bcbfdcd8db6a2023944e2a52f9cbd5930ff5b832f7f30a0b388dec9d365a931286d4d665eec10a397f88109ad48035120f91876e319046","ssdeep":"","tlshash":"c710000000000000000000000000000000030000000000000000000000000c000c0000","size":2,"data":"","first_seen":"2023-03-07T23:41:36Z","last_seen":"2026-07-31T01:37:57.594574Z","times_seen":13331,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"be1f545aca0d962a6e9de54c71048707","sha1":"d4f5e7c69c5eb9533944c52244111aaf5f0aed04","sha256":"4c290ff95bb736224e617b184ad97497af15aa53846f7067f5d0db5e8c4e617d","sha512":"6d30d1789ea8c302d698cc4bd29763fd2da46d7246dc389483ac262d8c3579e922fc0d45f29474f0580b802f1c2b494ea5df6cc70bca01170ba4a4d87a838558","ssdeep":"","tlshash":"917000883c08200008323220000bca0c0a2200c202088a88000000820c3200a800aa08","size":22,"data":"","first_seen":"2026-07-27T00:29:31.692344Z","last_seen":"2026-07-28T07:04:56.422239Z","times_seen":331,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"61a6f2652a0b6db05139abddb9b96ab7","sha1":"05548eab56f32db3c8c42fd2487a3f3b3ccf0ee1","sha256":"cc6e0d6af3dc4f620458aa79c4f4c0631ebc1bd55a148f5e9a06ea8874885831","sha512":"f2f89b1252cfe849de0cb4e8e8b7ee29cf99c563c5113ede3c45d470d5d14c45e0a3e30e560a79d14bfd4c46943c24a8444a1e81e4a0e93addf71ebdeaccaef4","ssdeep":"","tlshash":"4780047cdd4c5c350f157415001740441177700d50150005170004c44f311c5140fddc","size":38,"data":"","first_seen":"2023-03-11T13:53:37Z","last_seen":"2026-08-17T23:29:23.327918Z","times_seen":270656,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"20a8416af2b17d630eec21a003e46152","sha1":"03d141aee4824bc2ccbfa6651dbbb53901c31f38","sha256":"fe0405628d7fe64ceb66f72ec0136c6a93cec7ae3a389462a169d0ea280f9aec","sha512":"93ccbd7eded70fc31497e79b215e5f104e37f993f590d5d502a7513e5e5b7a3f1fc921cf9b27a9f494bf917b9613e03167c324a2415f9293d0338cd2ab86173d","ssdeep":"","tlshash":"68d02bf74c79013f021f1bd5b6d7e1ed61da32ea25564b0dae74d1d4019449ce1c4e47","size":287,"data":"","first_seen":"2026-07-27T00:29:31.612434Z","last_seen":"2026-07-28T07:04:56.502942Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/wow.js","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"6d1de87eaba3bea986f91e344de80b50","sha1":"ea0576e2063113209103d6439b1d1206980a1e78","sha256":"32e37f075fd1dfd373fe3aaf5f5d56b3902fbcb3ad5b71c72908efa01320c286","sha512":"0a7f0bc6745be84b1763114b05c74379bd42106fa647c55f74dad1f2e9f800eaa4bea3a7447cce8b3f943a6921d3f2f388688559018fbc98bdda2d686c4f5780","ssdeep":"192:+HctamoFfk612qOfHUhafkasjlfri6mTOvN8HzIqfe2omJ0yaMRaUQPyPCrGJ0Iy:cRZmU+GeKrAq6aItnebXh","tlshash":"1162cc893eeb20609717717e8f4f8105b638154b1159dd08beac4be45fa093897fafb8","size":15553,"data":"","first_seen":"2023-03-07T12:06:46Z","last_seen":"2026-08-15T17:50:41.589635Z","times_seen":1121,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"5f2a6217a8d4d41ac854a9934f29d539","sha1":"66c309ccdf1880c59450b9484114f9127a8802f0","sha256":"51e3f39020a5c36d26f860b8e16d66d109a9b43fb1986cf8ca60c2ae8a5d7375","sha512":"d3f9a2aa396293953990d9331646d682ca3aef43eb476b98e3e8907c75ece2f4147271f1c1bfb00a388c16312e320017bd9e973bba6948a5a340bb0603b90547","ssdeep":"","tlshash":"ede068b6c00271aa3bcd42179ca37e1880f17915fd2e68ceb140a29dde24023600648f","size":397,"data":"","first_seen":"2026-07-27T00:29:31.665952Z","last_seen":"2026-07-28T07:04:56.415659Z","times_seen":333,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"67884a7c07ba8bbb5343281aefa35921","sha1":"b1bc7fd9373dc3bd0fca386a55683e1e488c6b6b","sha256":"9d4ab4209bab35caefbfbefa29b528f93b86da33a53881492b374d11952face6","sha512":"d75cebdb7204eb1ff4839de7d237e1f8d4c45d9179f205f260f23bbe15dca4bc2d218b84388ee40400fa435cecc93ca5fff99702dfdffd6c0f959c3484475588","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000300000000000030000000000000","size":2,"data":"","first_seen":"2023-04-05T02:10:24Z","last_seen":"2026-07-28T07:04:56.50743Z","times_seen":892,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f5cb050e3ad0ed3ce59271b07f97dd51","sha1":"1bac449f3080230ba3fdbcaf0b98ccbc33c09d04","sha256":"e2872821331488fa4384f08b2a13050f6420cfe89c204db05be1d46a32c14c74","sha512":"285a9bc45e8f501f09aae916504c806ac2724d0fffdb092195360a8fd3293fba42dbdcdfe49135393686f1127deffed16576c7ab268902bba3ae48a355e85b73","ssdeep":"","tlshash":"d5a01208180d2009041201d5a0e3a00441d1341f60c00cc5b74ec1820b707e1700191c","size":77,"data":"","first_seen":"2026-07-27T00:29:31.690531Z","last_seen":"2026-07-28T07:04:56.464278Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"43d936683a74f717424b20bb2cd4f0a9","sha1":"14b0065e083c5180bc57d3cce2092e116f2d82eb","sha256":"f29458568e1530958b457baf622428227531bebacffda294b6d6441675e7b644","sha512":"d45c6b7571d6fc0eb1a54e8eb551bf84532f931fcec92502a1330b2e7ecb50b4393cfa779f3b45085f6e5c371e938e687ef3a610ff494c1c60e0f297435685e8","ssdeep":"","tlshash":"c71000000000030000000c0000000000c0000c00000000000000000c00000000000000","size":2,"data":"","first_seen":"2023-03-13T01:43:35Z","last_seen":"2026-08-12T09:08:08.574537Z","times_seen":4204,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"637f0eba5ed2446da06f8dfaaa71b920","sha1":"e25d0a8466bfee620dd9296debc19ffdeaa85a05","sha256":"d6b7abdd7a602d01fe46f14a23c4f2297557b2a789beff590d898aa7e03bbb13","sha512":"3077975b2b3ac30e9bfe70e9f0b55117750b27e41906a76797d3db8adfc753974338025f2b90d936be047d1464780a67192cc86a3cade5eff17aadfe1e3e872e","ssdeep":"","tlshash":"75f002f19a4669ff4c9275611ce56073e1bb2cc348117c4abb05d3ca9235fdb24c9c6a","size":617,"data":"","first_seen":"2026-07-27T00:29:31.687603Z","last_seen":"2026-07-28T07:04:56.418135Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"525e99684c16907d295ddd82473b3408","sha1":"8be034fd1d390ea633901fb8c1be4c01eeda343f","sha256":"b78837afef36e371c2dc417614664332c84a7e2c27f537edf442e730486b67d4","sha512":"bfb8507502ed1d6189fb1a60a8802458a4cac5584b4e63df602b3ef0f2441a8bbf7d4acd54f1dcec11d6e981de5153f905e672c2dd77bc318589f9c34704f719","ssdeep":"","tlshash":"bce0c0bf8237421019f25de7ce97236ce11d27a00b216c6ed32e9169d426896b258c49","size":346,"data":"","first_seen":"2026-07-27T00:29:31.571342Z","last_seen":"2026-07-28T07:04:56.433204Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"170fb7cb50cd42a959632f2f237eff01","sha1":"e56f7653bfb3e6539d1eed96f14084a0b6532a1d","sha256":"a311aefee43bb33374c671d154cb766d50337de09461089392fed54821b0587d","sha512":"cf011634cf35733360219dce59473d9d0309d445bed06724456cfc57c94cf6dd0bf511a79c458dfeb04e6b6ec3ac0ca5210ede49cb8f2e9088a6610e3d2cef42","ssdeep":"","tlshash":"1ac080ea59545236c0664c7347874d0ce19f915304b76fcdc47450483374b55d005a57","size":173,"data":"","first_seen":"2026-07-27T00:29:31.675624Z","last_seen":"2026-07-28T07:04:56.460875Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"dd9ac26fd4e46f3a73d20975f620f2b6","sha1":"b9739f7859dac8196b06390ce579d14da84644d6","sha256":"08de55088ae96e4867cf521fe3348b7d212be41a530d2aa80fd26483395189f9","sha512":"7bb1358411aa9cd856c410bc552027d2a292e1a8b7a93bbfc94cfb8a83015bb907b3baa9d7ffa523ed7d4c7213cbda309aa23d9ecf05506e8c14326ea5068427","ssdeep":"","tlshash":"d6d09708cb48614abc11c8e421e1fe7c60ce8c2f704009c2b3692d201ebaf23e0ebd0d","size":258,"data":"","first_seen":"2026-07-27T00:29:31.679419Z","last_seen":"2026-07-28T07:04:56.435273Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"fd037685d3af5317ffa0fbe08c1281e0","sha1":"933dcf01d288d285d07ace051b6e43f1ca080911","sha256":"725cb452273c6e73417b860f55c5f2df1d12790b425e982a8d66364b7c55f98b","sha512":"134357ce0061b815d42b5cd3387865ec2b2e594fb4b022b00d934d65a4122a5f05846c2e5a79434600197a4fbdc090a93074ae392d5d7f9d7ba53c881d8f5717","ssdeep":"","tlshash":"a40144ebe890c33888e025d60c4795855026f844ec12d88d8c50d3d4de7e9ff65cb900","size":678,"data":"","first_seen":"2026-07-27T00:29:31.714835Z","last_seen":"2026-07-28T07:04:56.526613Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"bae3f90cb000352645e35fad60da411c","sha1":"00023f94c170125b979cb1914925d06ab1abfbce","sha256":"1e3606d95ce27d593157594820335681a9380f51a96147303cd8000e60a95e12","sha512":"d83d07979674822b4c966ddcb3bd4feb84830834e1f9fb255774ae237056cc357599e3aab9c6f47242aada2148a65c9ea11c859b1e8f550004535cc363fa02db","ssdeep":"","tlshash":"03800000203008388088000f3032cb8afaa0a22ae2322800c8a88c2cb0e8f80ba28838","size":35,"data":"","first_seen":"2023-03-07T01:02:06Z","last_seen":"2026-08-17T23:29:23.38131Z","times_seen":186953,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"51792c67c588ce8139b246f015ed8a85","sha1":"d3148f014e0f4790ff65a8004585d17ed319833f","sha256":"6f70d853ba1dee4fc189490cfe4b6b1ab59f5853344cd85576bd2a4af2b506fe","sha512":"963ef7a25d5437d1a045dedfe34afbab41db4c620e4378606ca3b7b0c4219e51fda11b9b0e0b761093eda33aeac0e532a27b3f1a1ee110c13ba1433cdb28c067","ssdeep":"","tlshash":"cb60003f03000003300003ff0c0cf30030fc0c0c000c033c0c003330000300000c0000","size":15,"data":"","first_seen":"2024-07-23T18:45:20Z","last_seen":"2026-08-17T23:29:23.286767Z","times_seen":179499,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/4911410e5153f0d7.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"e09a94d1ed13e73c8c05e86ecc9b73b5","sha1":"5d3e0e86e66f40d854564417d18b9a8cfb50938f","sha256":"bdeee3ad5435b26f62f6a8ce700f78618b18b355f3d3cd21ec3949a59777eaf5","sha512":"7d4e4220b8c82da8621e7f0ae1bfdb323ed094215712b54bfd28ed06e06e0aa9aded8bc0f07eb71ea08e821f75d433c38522d2054e9756e34814622cf8957899","ssdeep":"3072:LZhLWlPznn2U1BR0Bef8xgVrkRMKTopmN6Cstv9it+QK:LZhLWxznn2U1sWK04xstv9it+QK","tlshash":"66240be83995f6626ab302a710af1803733c252b280d4d60a711fdddb57845eb17bf9e","size":224417,"data":"","first_seen":"2026-02-04T14:24:19.892015Z","last_seen":"2026-08-17T21:34:38.570387Z","times_seen":2113,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.googleapis.com/_/translate_http/_/js/k=translate_http.tr.no.scrnY6Q2_yw.O/am=BIAABw/d=1/exm=el_conf/ed=1/rs=AN8SPfq1KlUFqeiFvBMudduzGtb39QWXuw/m=el_main","fqdn":"translate.googleapis.com","domain":"translate.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"cdf9309b56a4ff330627409baead2538","sha1":"e98eac16441e99c9512052eb0087f535b9a609b9","sha256":"310629c4e47d7960e5a89cbd6a9c1d24a4e4d7c5e18346a69a67d92355cf2cd4","sha512":"cafd13a201e26b9f94f9a636ca1f7c191ec3a9fc3f297d35ee51b1304962383e7147509932a759bd903e27e53fb251600ad6942739e472161f5a09367c3776c1","ssdeep":"3072:kjsNxt45eITHt28KRu9gKavNuBDHK0QppB0/I:osb0muBzg","tlshash":"dd14e8d9b26270679263f4a5403f004eb53b68a5f9484dacb28de8e26df4d19017bf7c","size":194344,"data":"","first_seen":"2026-07-22T18:30:16.180779Z","last_seen":"2026-07-27T19:37:31.609707Z","times_seen":2601,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9ab95f1af82ba1b0456232030e52b20e","sha1":"2872b47fd0067d16748856546bd53e99995ea52a","sha256":"8bae950c98153b70946a1dce7a63de32802f6d1b268c5b88faa8e9f80aa2ad9d","sha512":"6bdf046752061ce20a27a4ff921a68f42b2c6fedcf8c55f94f400461db0aee984f499969ff7d0422cb97da033d1a40234d865a6ce3e060d60203d462d9b29264","ssdeep":"","tlshash":"5cc02be6b1b72404c390f01700324300d8a90c48c70040788043a01dfd61309c97cf42","size":130,"data":"","first_seen":"2026-07-27T00:29:31.658738Z","last_seen":"2026-07-28T07:04:56.428017Z","times_seen":332,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c1466f3e470c7b768dd55792ec54d047","sha1":"608ec6c74344fd48de7aec8da3b9c652091f5247","sha256":"9efd2d75eaa2c2d73d54de006191c0cb3c6ebe1e029a745c5402fc61956afba7","sha512":"028b1f70fce56b317ae85cb0a29e278bd46ad7700be717e0a760179c81ad869e9d150018b2279da473d7ce279c19b552eb01220489f2974ba1a70bb750b50897","ssdeep":"","tlshash":"f2d023d565d74434c5e2d92e01331240cc254d18dd040eb17102f245cc70745577e9c7","size":196,"data":"","first_seen":"2026-07-27T00:29:31.66023Z","last_seen":"2026-07-28T07:04:56.527426Z","times_seen":336,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"1e165145a97571da936032f6bdc25987","sha1":"3708ee3564e62e191805ee96ac418dc1633d6a9b","sha256":"434e517d538444e8ecbfeac4f10b3affef8f606f57e6c7bd90b4e7678aac7721","sha512":"27cf9960df019fa54c80b623612b4b654100f5a4a1f48f0785a0483880ebc1d18b300a5fdbf7cd4a11f437ff79304ecef1f934ed5c0c1f53a38f7e344658f4dd","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000000000000000000000000000","size":2,"data":"","first_seen":"2023-03-11T15:36:04Z","last_seen":"2026-07-28T07:04:56.497157Z","times_seen":2666,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7e5cec842256e3f47d70b3085fd4b4e7","sha1":"5546521bbb99af58059ae8866b62e5ca0102cf6c","sha256":"2511327b3eb1835430b0e19f65747475bae631945c3360e49e157c01d9c3334d","sha512":"6eddfe962fd9435f350093764956ddd18c719c776487914eaca38f343a08f89b711618d3ed40c167e25dd8cf2ae50344f612f2fdeb3fc2618ae77dbd9add8bde","ssdeep":"","tlshash":"30a024047c751017f01fc015740f110400cf3107c0141401f44d05c400f0c1470114cf","size":72,"data":"","first_seen":"2026-07-27T00:29:31.618862Z","last_seen":"2026-07-28T07:04:56.484313Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.googletagmanager.com/gtag/js?id=G-V84XP8WGXY","fqdn":"www.googletagmanager.com","domain":"googletagmanager.com","tld":"com"},"ip":{"addr":"142.250.178.104","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"2ca987f27dbee6434faaa87c0bb3775e","sha1":"1514e49aadd900d255d2b68832184a9475dbbd4c","sha256":"9ecf53ae7638eb4eae44692512062b0efde9485d80d3c4e073b71d8449325bed","sha512":"d1370434890d0efd043b9d565d6ce4a6f3b6f3fe8cd770692c994332b0792a035e68789e2d02c8f2387d5cc9003c3d1f5437f9566096b888338511cf11387ea2","ssdeep":"6144:/yH5RU0jIWXbP69FMxmRknhqsScPmfxNf3EjUxVGaZoXzRYGg:/85C1WLP69VwqxVZOvg","tlshash":"17a4f8cdb3d674225396f478903f018ba57b29e2b44cc899f189cce42e7465a8267f7c","size":488553,"data":"","first_seen":"2026-07-27T07:02:55.664103Z","last_seen":"2026-07-27T14:57:18.250575Z","times_seen":250,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c4ca4238a0b923820dcc509a6f75849b","sha1":"356a192b7913b04c54574d18c28d46e6395428ab","sha256":"6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b","sha512":"4dff4ea340f0a823f15d3f4f01ab62eae0e5da579ccb851f8db9dfe84c58b2b37b89903a740e1ee172da793a6e79d560e5f7f9bd058a12a280433ed6fa46510a","ssdeep":"","tlshash":"c70000000c000000c00000300000000000000000000000000000000000000000000030","size":1,"data":"","first_seen":"2023-03-07T01:10:09Z","last_seen":"2026-08-17T23:29:23.278328Z","times_seen":139264,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8b537b3294601302084dd0ee891a73fd","sha1":"af1e5bed3b4cb4260b4322a2a935e2194db4ff9e","sha256":"e46dd0dc5bebbabf4a883401e1bed90eb30123d8051a9e485fb2f079e1568c43","sha512":"a1eedd7200a6dfe05b5f70e87375c5f6c31543aef15d3f34f51699ef0bbf212e445f771acba837b8a47476562bb4c7eae094c8923f7fe62fd77de3ebfa3c9500","ssdeep":"","tlshash":"05d0a7e9929a8431b2256094055d06119085d85b14120c8dbbfdc75c6bb5c04d515e09","size":215,"data":"","first_seen":"2026-07-27T00:29:31.566404Z","last_seen":"2026-07-28T07:04:56.43827Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"ca35c0bc42e49148dafefbe13185819a","sha1":"a9b2702d2fb01ea08f26bdf11fc43027fc570a0c","sha256":"93d0ca8fc5cd704de1d0302e5b2d95089fec809742305d1ccdc0fef634db9689","sha512":"7ec63c17463e23f080c07ae538cdde1a4063edbedf87016ae34086b332185fe6f55628a92d64c8511a27f1f3944802cf1fe5298419ea3ef9b51304edaec8c3e6","ssdeep":"","tlshash":"d3d095d57442412508cc0686f4ff133f7a60bd5191444a5cc0c747e02f104c3c553537","size":284,"data":"","first_seen":"2026-07-27T00:29:31.601069Z","last_seen":"2026-07-28T07:04:56.435987Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"1855a87d3f4aba7953ed6c6e95765678","sha1":"85431e8e30b87b1586c77c00e648abf3419fbe06","sha256":"d6c53d15606a1331049401414384be2df5d32c371224c85b67a7f3261546ef67","sha512":"ff148858ba17f8fcf680b3aad0e26f16eeb5e5ef968b18f3c730fca8edc1213ed09dcc4a591559a4eac96e2513f2d61aca8000b202d4b7fa9f2d4c6ea3337dc9","ssdeep":"","tlshash":"7fc092f6927ae822808ef272894a0538a10ab49a581d1c8d6605f568eff5314c269d46","size":135,"data":"","first_seen":"2026-07-27T00:29:31.746576Z","last_seen":"2026-07-28T07:04:56.482585Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8d8b85adc4d2474a84fbca1381afb3c7","sha1":"3815645d5a8680fd3ed4ce5a3b82f8d432448698","sha256":"3eb8abc484d33a620c974de75babdd2caae4fff7dc8daad7d860dd41c93ee611","sha512":"910cbf3ddef06885833d1127febca48a7f76337a577db0e125a3157ee738bba15ad1d30405e79e1de60279b2605f489b16d8b258fd17bc0c04bce685d65fedfa","ssdeep":"","tlshash":"08a0124823d0a000e671241804070a80b1a069046d1f22048280018d60d0682405c509","size":83,"data":"","first_seen":"2023-03-07T01:02:15Z","last_seen":"2026-08-17T23:29:23.317733Z","times_seen":211246,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/wow.min.js","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"36050285bfeeb7395752f0f9bbc08273","sha1":"5924f7bbbf1dfa3f0926851d01f782f23a59e805","sha256":"0ec632e6ab02d4fdd514da7f5edc74aa28c9d4c71af76f1c8b93a1fba85bcc69","sha512":"bf887e087c52583114b77bfb417d7dffa0ee8634d39155af14591a24b2add9ef4c8a0c0555364122800d07a55f5f1fb0c723b39541b069a437ff558ddbf380a3","ssdeep":"96:UrZgL1xvPV6GqKgR6TYLWHFMLJA6pOROVEE1fosvGeaMozHImBaoqbl:Ury9PVfIFrlAJROVEEdos+eatzHILoA","tlshash":"750267c97a967031d75796f6833f0106b6361aeeb028047cb5b88dd57c78868523bf38","size":8415,"data":"","first_seen":"2023-03-07T01:02:45Z","last_seen":"2026-08-17T21:57:30.203782Z","times_seen":14459,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"167665ed46af3eca5e4d2b71345a73a0","sha1":"bee620c4967353bf791caf8049e4e70f63fb0eed","sha256":"18a2b849387eb11339a4b060ce20bf78648182f2a6dbf3434209dd7e983a071a","sha512":"e983bc5808576bd0fbd3bba79806060a1050c0446cc32de41e9a2d1b26a51e48831d19afa8d8246934751930fb5b7beadbfdd72bd11a069edb5ef4005646cdbe","ssdeep":"","tlshash":"0e7000883c08200808323222000bca0c082200c202088288000080820c3220b020ba08","size":22,"data":"","first_seen":"2026-07-27T00:29:31.646088Z","last_seen":"2026-07-28T07:04:56.459778Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"5c3116796f5ff62adaf85580801f3fa4","sha1":"70c94a757c2ae007ce99d35d3f02b9237082cf60","sha256":"08cf51fe8f3e7b9c9b08f6ae4803831975d480e39bc806ed7c8120fd66d8086d","sha512":"a5393b353508591af106ec0f10c733e1c3dda67474d8bf4a54b5d098bdf1d4dda6631769abcbd8687c11e0a2091e57ed70aa2760f553af98fff45296b3a078f4","ssdeep":"","tlshash":"c7100000000000000000000300000030000000000000000000030000c0000000000000","size":2,"data":"","first_seen":"2023-03-26T13:52:04Z","last_seen":"2026-07-28T07:04:56.448025Z","times_seen":383,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3cc690f7d4d0f9d684db14556d27e980","sha1":"3882ed3164fb3beb4bf69440c698b303dcf554ee","sha256":"744a290669e65d4157f7fb236d95c09aeeea78d14eebe23c765dd7a72b1f1275","sha512":"ae4dbd69df8add91de700fccbfdd435716d557e21aa8334fd4104cc66f6b4dafc41ebb883e6e6611c35cb061b5db12ecc8d41805454a53c925f7ca7c35d2f45c","ssdeep":"","tlshash":"9fc02b948d1cdc87050fa4d4140f00197180f5e3564018cce41ed71857204fe20df08a","size":132,"data":"","first_seen":"2026-07-27T00:29:31.744553Z","last_seen":"2026-07-28T07:04:56.407171Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"672b9211895a127e2ceaa149bbe7a59c","sha1":"904187b43eaae97d99beea75a02d51824ea35ada","sha256":"6cb0b848460e2526a49e15d0b007b50968470ca4d17b3d08980bfab0cfe34d04","sha512":"2a068e10b2b370399ec0fe4c6655f16281d35980c5f515308ad97dd6fcd0bdac5d4cac1a5ca1916671c6907c9915f530353d40ed92e6ff46146b198591183fc3","ssdeep":"","tlshash":"e4e0cd7877455cda49cf74495345704a555d5f52fc2caca5810050f0751e91feb8c43c","size":297,"data":"","first_seen":"2026-07-27T00:29:31.621583Z","last_seen":"2026-07-28T07:04:56.544453Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c481888d991e6cfadc55f4153a06c191","sha1":"aa8f7ef5122c65dbbf0b3457f635ea97d9bec091","sha256":"08545c51a27a94b6858fece52b7f8601dc21627a48133f6f783336f862b51571","sha512":"04523ad7fcab32c3c05e262f3c84bca7394483f0f1fbc29c7bffd9f8fda36bb91a00009db85f64e6c4fc704bac3e8e26ad7ee297523377c383f8908377102c67","ssdeep":"","tlshash":"887000883c082002003a3220000bca0c082280c20308828c000000820c3200a000aa88","size":22,"data":"","first_seen":"2026-07-27T00:29:31.747939Z","last_seen":"2026-07-28T07:04:56.430998Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"d48a24ae9672ee573050e4d3aeeebe4d","sha1":"8f8c4d27852980a1ec5a8b1aba30769001314ec8","sha256":"53e5b7d706a350fe98d52499058624e15cddc1541f17370f94a899a386c50255","sha512":"02dd385ce15083c89617859325e29ce885ae235c8c5be416828066dcb5db78e69229802d87aaf759224e2656ab4c23bf1740ae1d357cfdb57ebf78ab77488921","ssdeep":"","tlshash":"43800020202088288888200b20308b8abaa0a228a83a2000a08c8e2cb822e80a038820","size":29,"data":"","first_seen":"2023-03-07T01:02:06Z","last_seen":"2026-08-17T23:29:23.361589Z","times_seen":190934,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"24cc3dc813f384fde380df619f1525cb","sha1":"56399e3ce57ff98d68c7de98a563e572230dff6b","sha256":"5421715bbdaf2550e31d10fc28d444310a8fe7147bbddecf0abb490358a1553b","sha512":"fdb6e7d3b9452cc36c1e877ebe47c50c82fd413f2cef945f808e47b081da88ae6aaac7aa14386687c59479e19c856f6031d7ae666fe9c5b54a0b6fe37fa062f7","ssdeep":"","tlshash":"027000c008088802080aa02008800080220088023e0a0e0008200000832000280a28aa","size":19,"data":"","first_seen":"2023-03-07T01:02:05Z","last_seen":"2026-08-17T23:29:23.381929Z","times_seen":239323,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"a5c244fde4e6f1ade71beed5c11edb59","sha1":"6bc634a7f8505a2ce340807aecfa1e50c2a578b3","sha256":"d561924e4295103128924509bbe71b3eed6625592d75ba3cc35c365189d6081d","sha512":"6ed66e7a246ab961cedd150553b6a9aa692988813dd4ee30c8b7d78d80bb8765a828112c6860d08eb382cae34e22bdd76ecda5ee1c9c7ee25a49b1d2639474f9","ssdeep":"","tlshash":"966000300c000330c0000c00000c0000003300000000003003000c0000300c0000000f","size":13,"data":"","first_seen":"2024-07-23T18:45:20Z","last_seen":"2026-08-17T23:29:23.301067Z","times_seen":177398,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8a3f559a9ec90c0901283b97e979c109","sha1":"8859ff86e2b1e5ed6a0e28778fb749b58ef50224","sha256":"5020851a6e6bf1d1dec6faea76630924b429593e59c4ba8ea710c2fef00421c9","sha512":"10224ffcb1d495c946a3b140433ea3ce2a3ddf84708caddfdc83e17ee16b31fe76329405be6a5dd53691d13812b706dd3927677ef7d764791bb184a03a55d9cb","ssdeep":"","tlshash":"76700088ac0c208080023a20000fcf0c8822b08888002a02808002820e3380ba02280c","size":25,"data":"","first_seen":"2026-07-27T00:29:31.630724Z","last_seen":"2026-07-28T07:04:56.532422Z","times_seen":336,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"ed48ef5f6b1d0bb57bff4d6b1f4bb54f","sha1":"534ed3d9f61f43921b30fcfc7f8bfccb679e88e3","sha256":"31eeea2981f0d60c392a6eefcf04ce2b4ff74d0c540abc3cc2ae0b47d6050f8f","sha512":"b755e728c45e25a918586bdeaa50ffdad293eacfdee895b4586aa8808a8722b81d00b29900d6bec11a6060d2c0350e98f94b387f64009850c49909dd77c7e3df","ssdeep":"","tlshash":"c9c012e478178498815d669e9705e92f805b048b2071d810a01a5141363ea27c15a21c","size":181,"data":"","first_seen":"2026-07-27T00:29:31.556597Z","last_seen":"2026-07-28T07:04:56.492739Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b1daa0f419bad4fee11d1830f76c241a","sha1":"170dafa47acaf253b64d8bc3016a52a381a3f2f2","sha256":"ea59b0d1b997b2f6c07024a837533b6e934f64f3807eccbbc0a1f7f1b2eeaa78","sha512":"340eb61e023dbf69b13e971b5104b1e067474897e4465aeec2a0c8eb6018bafc2b3c7effde0697c7007866bf235865ffbad6af3e8037516847e6491da2da90dd","ssdeep":"","tlshash":"a5d05e37d03f9368676672983cf7869c33e0a2742862a8ccc2933c14d9950c7e08a9dd","size":256,"data":"","first_seen":"2026-07-27T00:29:31.712509Z","last_seen":"2026-07-28T07:04:56.476577Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7dcbdbfdffdd0d6e0f5ce735a058fb4e","sha1":"e952d1ce93989f85117f1f945c7283a32bda5736","sha256":"adb78e319448281b1db736a61006b3059b2cd94d4a1b447319ff911334bf69e7","sha512":"abc803f00411d5368288622d6d553d2110328368a428b14a852b81d9c0008359d1eb69b94de46859ff76c59647f9c49da3f35ae9ce09b538eac42afbe604f87b","ssdeep":"","tlshash":"05f0237b648083b308e570db086f8989049eb419bc8044be4c22b3f4d67ebf7549ae21","size":649,"data":"","first_seen":"2026-07-27T00:29:31.672624Z","last_seen":"2026-07-28T07:04:56.521734Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/9df3b67b6061ea9e.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"c678a91c2c6476c2f4253bbb2f68861b","sha1":"69b7933df2474b5a89bafec3ed00c63e7a38fd6c","sha256":"ee32b6de09c560980545699191b3ba6ebd9847bba1e07b95f5a5ddf359bfc353","sha512":"f3ae2a1ace9a1a1c354782702e328db28abd4864d69e33e7e6e72cc82ce93e5142093752a6b82a5d21f62e953ed27f5101956c00407e5d2d9527eb36435d1584","ssdeep":"384:EjUDGGRCRvBrTfIVZ/X+0o3NkOG4+Z47auBSwTNGFJl:4vB/8Z/X+0o3KZzZ47auJG","tlshash":"dce2c7b572d5faa2139340f0c83f2017f2784c7521ac7460a7e4cc9b765888da6bafd9","size":33297,"data":"","first_seen":"2026-02-04T14:24:19.872146Z","last_seen":"2026-08-17T21:34:38.528291Z","times_seen":2349,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"af83da2a769d59fe45aab962f63d91ae","sha1":"567f3a3f97d8fc8dc51b36ad62cd0b88626d55df","sha256":"6eef6cfbc646c41376c99294021f2e5ac342ae76f7efa30e449cc981db20ab45","sha512":"cd7ebd3eb1f0e2edfe170b2f91c68b27aec3fd454400c27130f5bd78e53d264303562095d97fb257ef5bd1ccffa188d84a7f2e3f8b5f64df8269b74913277afb","ssdeep":"","tlshash":"aba01288490c440c451211c0f023b40401e0301b80c00c81819c9a4105e03a25052489","size":79,"data":"","first_seen":"2026-07-27T00:29:31.698944Z","last_seen":"2026-07-28T07:04:56.416516Z","times_seen":332,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"69691c7bdcc3ce6d5d8a1361f22d04ac","sha1":"c63ae6dd4fc9f9dda66970e827d13f7c73fe841c","sha256":"08f271887ce94707da822d5263bae19d5519cb3614e0daedc4c7ce5dab7473f1","sha512":"253405e03b91441a6dd354a9b72e040068b1bfe10e83eb1a64a086c05525d8ccae2bf09130c624af50d55c3522a4fbb7c18cfc8dd843e5f4801d9ad2b5164b12","ssdeep":"","tlshash":"c700000000000000c00000300000c000000000000000000000c0000000000000000000","size":1,"data":"","first_seen":"2023-03-07T01:15:12Z","last_seen":"2026-08-17T06:39:36.75922Z","times_seen":58785,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3b78ec746f872bea7567042b64a4b673","sha1":"1dd8f71188b74547045d7fc9e9340eeb2098a0c3","sha256":"0392eb24f28399c3c1d3f10df83aa25712c95c6eea6a2e89f84586a350ea402a","sha512":"77bb101b08c601ce64a885cae13fc6a92f624d5ec7d03f4e7513762c3fc6caff1f85c2dcd1b95c5e5751f094229db7b7636675b0a23ec739b18435446be521d5","ssdeep":"","tlshash":"b5a01208180ea009042201d5a0e3a00441d1340f60c00c84b34ec1c20b707e27001c18","size":78,"data":"","first_seen":"2026-07-27T00:29:31.641653Z","last_seen":"2026-07-28T07:04:56.475666Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"14e40422ad8a27f36371ae52c7dd339f","sha1":"4c1717c61dd24e928fed689d81c8a412fc58e59c","sha256":"e9eb52d0ff851acca5ec650406a22ebfc895d4cafce8e273bd36f754934b3f72","sha512":"1320707d81da23c7a41167bcbb7ba0c2d8426176cbc3c9f0cf7a23d84717235ca9e97e0baceea890e4740e8751b13b2178c1f8d5c04e9bc24c53a3530610c4ca","ssdeep":"","tlshash":"83b012887d3cdc05619718c8508ad00880421d0310010a40e01fcd513770d85304fcad","size":93,"data":"","first_seen":"2026-07-27T00:29:31.655611Z","last_seen":"2026-07-28T07:04:56.4375Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"4aae7fd3c815b1cfa3660cb3227a214c","sha1":"4531c0c13ac8462f9dd8f0dff0e13b1c3e150bcd","sha256":"cca00c516ba05df351915a75df4db57659d685c5af3622cedbba3c6b626af2a9","sha512":"c2f67d5e011e7ad703ab55ea89f91fff91b4245f5294cb73ded819757eb158102fd038f24b175c1f6eae717100cd63d9e9529cc90d124cd90a26ab4a1f650d4e","ssdeep":"","tlshash":"4d50003c30003000c0c0003000000000303c000cc0c000c0003c03c0c00f0c00000000","size":11,"data":"","first_seen":"2026-02-18T03:26:52.257023Z","last_seen":"2026-08-17T23:29:23.3623Z","times_seen":86727,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b640f7845a4341a89d25c0ca0f9b26f4","sha1":"5b98b63751f6e77fe954f5b95388d615eb263003","sha256":"3fdecbfeaacc1474406d975d54141cd22c1be7ed72ccf31bf23f5304e2b50164","sha512":"ec2592241ccbd9a0e93c49ad07121af8cb3acb2a4d8fc25e4f4599a1052d1fb51c9ef8538ac383c52e1205f9b6a17525703f2c4d4bd0d69fc090c04f93943066","ssdeep":"","tlshash":"2dd02b38e11c422b26970b4197c2183b05004642dd011d7b2eae28eb7044c9a9a1481a","size":256,"data":"","first_seen":"2025-03-17T23:26:20.961709Z","last_seen":"2026-08-17T23:29:23.245236Z","times_seen":170617,"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.152.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-27T16:56:48.623387Z","times_seen":646,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"ff44570aca8241914870afbc310cdb85","sha1":"58668e7669fd564d99db5d581fcdb6a5618440b5","sha256":"6da43b944e494e885e69af021f93c6d9331c78aa228084711429160a5bbd15b5","sha512":"3c266c0035de59eab2a0dd31b3dcb4a9dd157b310289e5db9ab4f8c2fddb7433466d48f25da7ad735a1cb8f2935aa612ad1f62f0efcece3933ba9979082e2304","ssdeep":"","tlshash":"c700000000000003c00000300000003000000000000000000003000000000000000000","size":1,"data":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-17T23:36:05.07952Z","times_seen":508712,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"79f44e5dd7602c709646d4eeecdb8f4d","sha1":"e1168a05c28ba598334dde0d6aef0c545e9b7c70","sha256":"92e9034cfa6f00cdc1749b4f56b2fc094cc4a999ff04b4012ea8727f6095e9ba","sha512":"99d6cd5f5388abc70e23b8952fd32cd2e191213b1694e4fda5f20cc66450319e392be745d0eead719e91de54f0a00445e64f7bac2a230bf528fe2e302ee36ad7","ssdeep":"","tlshash":"b7e0c037b6420427806708c630270dccc9543556f85879d9c47035a14194efb509ddc6","size":328,"data":"","first_seen":"2026-07-27T00:29:31.648585Z","last_seen":"2026-07-28T07:04:56.448814Z","times_seen":324,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"2ae15878b48be1c38e824af4f23c5ad9","sha1":"724412ef28cf96860378b5c180e38233aa03ec7a","sha256":"4a524fc5a71de66ad3e5bb071a47e56042edff624f091244a347cba1239cf44b","sha512":"35afb14c9840b51e98b6129ff8706208b2f450e423f443212d483134c5a77148cc1114791ac96791e5afc3c03e9f2ccedb52c41ae93e85b20a9218b5e01a7d0a","ssdeep":"","tlshash":"42b012c8546c45385009b8840047a7084081141a8513ce35956b8e451330d07754146b","size":93,"data":"","first_seen":"2026-07-27T00:29:31.725026Z","last_seen":"2026-07-28T07:04:56.424334Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8277e0910d750195b448797616e091ad","sha1":"3c363836cf4e16666669a25da280a1865c2d2874","sha256":"18ac3e7343f016890c510e93f935261169d9e3f565436429830faf0934f4f8e4","sha512":"48fb10b15f3d44a09dc82d02b06581e0c0c69478c9fd2cf8f9093659019a1687baecdbb38c9e72b12169dc4148690f87467f9154f5931c5df665c6496cbfd5f5","ssdeep":"","tlshash":"c700000000000000c00000300000000000000000000000000000000000000000030000","size":1,"data":"","first_seen":"2023-03-07T01:15:11Z","last_seen":"2026-08-12T21:59:19.331261Z","times_seen":58281,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"Function","is_inline":false,"md5":"29d0c84b9d1d8da446a6062c6a840ad9","sha1":"6d6b3a6065667c7c50d92f3889c85ed65a9ad784","sha256":"3c3cbdb71d0d2c22f504f4d63d8a6ffe8d250cde7e58300619be35b6bbab26a1","sha512":"52cfcbf2f7c3521c5a6c6120099ee6822d16e04ffbc04720da925a11242c8c2050f9cfc8d864a6d39a0036ac599f701080195a29a7c5e8d3e9308b91f9f0390f","ssdeep":"","tlshash":"428004d533c350004753117c04571cc4d034447014444d405040d4531c570315115c7c","size":37,"data":"","first_seen":"2023-04-11T21:31:25Z","last_seen":"2026-08-17T23:34:20.854795Z","times_seen":745278,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/assets/shared-kb1yqHaA.js","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"introduction_type":"scriptElement","is_inline":false,"md5":"4a99d6fd0e84ed566d578d0ed5dea128","sha1":"c729468068793db7ca783d243b2ec065b6e2f202","sha256":"99501ff83cea2d37fb29f4ff7e0bfc1a93655e56db91bce74171fe29f0821884","sha512":"fcab2b13f37fe49c7a500be1285445ec1dfb120ed4f6d909925ea5616ee9f62d999fe83c1f8210dcc1742528ee3469e5671b34191317836ab4ed3b020ade8608","ssdeep":"6144:mLjnOEIL18ad2jJKaQF+tRkYcuBa+y+mFJW:iOEIZRd29Uqj4r+mF4","tlshash":"b3443ad53294b03543db51e6906f1106b33e5c58580d812cf269ede638baec8a2f7fb8","size":272133,"data":"","first_seen":"2026-07-27T07:28:16.16312Z","last_seen":"2026-07-29T06:17:50.104199Z","times_seen":1066,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js","fqdn":"maxcdn.bootstrapcdn.com","domain":"bootstrapcdn.com","tld":"com"},"ip":{"addr":"104.18.10.207","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"5869c96cc8f19086aee625d670d741f9","sha1":"430a443d74830fe9be26efca431f448c1b3740f9","sha256":"53964478a7c634e8dad34ecc303dd8048d00dce4993906de1bacf67f663486ef","sha512":"8b3b64a1bb2f9e329f02d4cd7479065630184ebaed942ee61a9ff9e1ce34c28c0eecb854458977815cf3704a8697fa8a5d096d2761f032b74b70d51da3e37f45","ssdeep":"768:o2rGy27UwlNqMl95qNmCFejhqs8snmi+CSFXfbx8Gf3Zq7Q:Jg73zhq0GvbJ3ZKQ","tlshash":"b6f28606b23031a147efb1e1525b020e7239696ee906907c78b99af53db9c48717bf3d","size":37045,"data":"","first_seen":"2023-03-07T01:02:54Z","last_seen":"2026-08-17T23:37:25.88479Z","times_seen":98090,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/800e836146d6e7eb.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"7b2a7348e5acf7f61cd01b2152c769a6","sha1":"1cc03a4809684838384744113d8a0e0093a62a3a","sha256":"c5bd83f87b5a8d38fee5230c1078de1f65ac83476cd29e8f5a41d63ea9bd22c5","sha512":"56b9d74b6b4d8a6f1e9909cb88c18e6c784c6bbab10d877a936f334ec5056d8720d20c2443e241c3064f536853f3ffa4578c1c8b3ab391ce8d671256a83a0ef3","ssdeep":"192:c0/B5NGI4y5Zzlqrvd2bcQFCx4zN2M15hNeSd4e+MQCC8h/PzM+kyhtTliuR3dQ5:cOq8bcj+Jz57b4e+MQCL2+k+Nll3dwA4","tlshash":"b492b81056143788f5b78289915fc40c302f2a4caf0e85b5bbbcac666b544e73a6ffd6","size":19477,"data":"","first_seen":"2026-06-09T20:30:37.829522Z","last_seen":"2026-08-06T12:32:43.342266Z","times_seen":1772,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c64a5dae48f04e16deab001d4b9dbd80","sha1":"a1382f8f61bcba9266e29a3fce9ccd7c9b961459","sha256":"49e72f36eb565cffdbcc8f08e9d29d128067c85592da711cfb157f62bf27a669","sha512":"31851165dd1c3a96b1dcae230b835304eb94a9dca4538821fd37c042e1ea2e84e3290ebd4013a05ca01db43c4ce2b843e7c3d7dc309a8ede31a7714a78a884f3","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000000000030000000c00000000","size":2,"data":"","first_seen":"2023-03-08T09:42:33Z","last_seen":"2026-07-28T07:04:56.539675Z","times_seen":2078,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"eeb0a66e770d8cff3ddbbc1ee9581cc7","sha1":"9fc6ed9740257ca291f4c8a1e24c8b4d7547aebb","sha256":"d60a5521fb413d0d84580fccc7bcc14a7f7b648e79fabee34d26ea24a3b6a667","sha512":"3373fb2851d15e63be07d30fe5ba6de0eb5ac12381db687f47c9ac02e131872125bdce4ed48e9a125b7a27f98d3e3e22d869bc88783b182f2dbd740296d5d3f2","ssdeep":"","tlshash":"95c02b3c70160008ac83a221cf8f4c0a801ea0540c08890e1941a8e87c83a901eb2c42","size":130,"data":"","first_seen":"2026-07-27T00:29:31.563759Z","last_seen":"2026-07-28T07:04:56.410592Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"5d6bee325faac2b32bcb0e2e91d28f80","sha1":"6951adeb52891128e58c508122c2fdd5ad73f6b9","sha256":"deaced38fb4d3946d8411a171331199c7c969805c9c693a317b0bdf65be9808c","sha512":"a5a1b8023ec5550cfb6dea5cf1b51a557281061d6e24883f3b53c230b3bab0ceac32f2d965009e9db56a0d430e69d1b0390d9c76427a673a7c90310b5a77db7e","ssdeep":"","tlshash":"04c02b584ccd40cf98065060a403410410ce745b90a40842c9ccce690720b702078ccf","size":133,"data":"","first_seen":"2026-07-27T00:29:31.574143Z","last_seen":"2026-07-28T07:04:56.524228Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"d7b26c3bb88e3f8eac6ad7e35e777c67","sha1":"2379fb95114571b0baac29e9db1410af0eb86cd1","sha256":"3a563b19b8ee34acb1aa360533d55172540a8b43906b9b7db10256a9030a444c","sha512":"edd611d01c4de3fc0d656156d353df29e43c01df93dd67d1ecd6e6dc5df5ecc3b1273acb13c3202f98a79ea8051205d9bd2af9c04bda95892e0d6889e1fb33f8","ssdeep":"","tlshash":"1bf005b6b530b4982a759ab2a42b2071907dd023e74236dc4385b5202711d43fb01f84","size":496,"data":"","first_seen":"2026-07-27T00:29:31.656999Z","last_seen":"2026-07-28T07:04:56.472102Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"0485d1a69b0a1c36230f03961efc16ce","sha1":"8560a7f76470008188e1e5acf7662e6c7a319f40","sha256":"f4721ed8fb0e9f9beea333083e6a051a20c3b4eceeabf84cfc936d2eed0762aa","sha512":"64748850787c5039e184c1cc08798c63dca897c29914df9175776881246ee5f51f95fd138cc81a6debe274ea21a84be44dfe3a163767dd315b206304b1ada834","ssdeep":"","tlshash":"d19002882e2d3559153621648097c60640d2110759e745506e59897b1a26686017949a","size":56,"data":"","first_seen":"2026-07-27T00:29:31.589685Z","last_seen":"2026-07-28T07:04:56.524972Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b2f5ff47436671b6e533d8dc3614845d","sha1":"54fd1711209fb1c0781092374132c66e79e2241b","sha256":"cd0aa9856147b6c5b4ff2b7dfee5da20aa38253099ef1b4a64aced233c9afe29","sha512":"19f142b018f307bfdf1c7009d15a29417c96d8678d2982eebce4961b2e67eeb118a8ebb1d75b70087c3e65bc793450e3fe4a10002befa2d038e5aed4796937f2","ssdeep":"","tlshash":"c700000000000000c00000300000000000000000000000000c0000000000c000000003","size":1,"data":"","first_seen":"2023-03-07T01:15:11Z","last_seen":"2026-08-17T09:39:38.23051Z","times_seen":53454,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"bb2e810ca9cabce02f0227a0a785b436","sha1":"f62801b1fbefe21f6b96033f890b17e8ff642771","sha256":"d9b0cc52f942fbeb4deca6bb2b33f074b177015803f39e625fa1d0aa9fe1adde","sha512":"4125c78e75330e3c17dfc67a055f9698b4ffa1c4c29351f18443d71935f0a4a107c821302098e15d40c800f413cd1db7f14da781b681c95906c2c2deb4137837","ssdeep":"","tlshash":"2cc02b4606010391437f29805d0b133bc1c200073c01284c89f00481e09cf400896c12","size":131,"data":"","first_seen":"2026-07-27T00:29:31.616706Z","last_seen":"2026-07-28T07:04:56.45711Z","times_seen":333,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7694f4a66316e53c8cdd9d9954bd611d","sha1":"22ea1c649c82946aa6e479e1ffd321e4a318b1b0","sha256":"8e35c2cd3bf6641bdb0e2050b76932cbb2e6034a0ddacc1d9bea82a6ba57f7cf","sha512":"2e96772232487fb3a058d58f2c310023e07e4017c94d56cc5fae4b54b44605f42a75b0b1f358991f8c6cbe9b68b64e5b2a09d0ad23fcac07ee9a9198a745e1d5","ssdeep":"","tlshash":"c700000000000000c00030300000000000000000000000000000000300000000000000","size":1,"data":"","first_seen":"2023-03-07T01:20:09Z","last_seen":"2026-08-13T14:31:24.915666Z","times_seen":57139,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"050e1c22f7a12bc8867a7fe41d70a49a","sha1":"b9de7654a728e7ccd8cebd8e990a2f29e1ef4397","sha256":"0891030d3deca893e178c2e5760b57583e4ded2e3418ab45f1799749e337fe1d","sha512":"fd65a1dc9f76398371900c8a8f1d3581d6eb95cb39dc6b927ab63cb1bcf5b949e8291900c4dea6d0ba9212f5b9ae59990b4f8bf841fa3ba9a25a86338213c3f7","ssdeep":"","tlshash":"9ac08ce9b2a25864c3e0a82b21324200d8aa1d488e0040b5c102f448fd90349da6df81","size":146,"data":"","first_seen":"2026-07-27T00:29:31.706316Z","last_seen":"2026-07-28T07:04:56.434011Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7c60abf1f9cbe086f9088b7022df4e43","sha1":"9e861f47a7bc785870da1bd37be033dfb3418f4e","sha256":"459990baee71111a476418d9ef771c219296d975a20f7a139b13a9e21da11067","sha512":"87064c9633c03478a62b8b2e1ea0b45bbba061ffde1fd29399820dc71ef3df2237b873e66d24f664b1d24a7d3ddbd538ac1b289a5b9004230b89f467a7c7eade","ssdeep":"","tlshash":"987000883c08200000333220000bca0c082200c202088288000000820c3200a000aa0c","size":22,"data":"","first_seen":"2026-07-27T00:29:31.731043Z","last_seen":"2026-07-28T07:04:56.465097Z","times_seen":331,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3c4a9f0faa6fb701a920a1b70924b26c","sha1":"f7db769e191400203fb2530bf2ad948431a7eb0f","sha256":"fa5a672fc4057898c72f889e9e2b394546de9c00494f7e7e7b100851e8b6ec01","sha512":"2710d162f4df552343b1a7a27f1eaa1a8cb5d8004e6c4c2ba88c22aba3dc099af302dfce3f1cb0d93c0ba5cb99760e9da25da05d34a65704f22f85008a17ee8c","ssdeep":"","tlshash":"cbd0a738002e9086181b6e5452c6991795d6d40728049d09c89cd4d441f09a554be52d","size":221,"data":"","first_seen":"2026-07-27T00:29:31.710641Z","last_seen":"2026-07-28T07:04:56.467696Z","times_seen":333,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"37a6259cc0c1dae299a7866489dff0bd","sha1":"2be88ca4242c76e8253ac62474851065032d6833","sha256":"74234e98afe7498fb5daf1f36ac2d78acc339464f950703b8c019892f982b90b","sha512":"04f8ff2682604862e405bf88de102ed7710ac45c1205957625e4ee3e5f5a2241e453614acc451345b91bafc88f38804019c7492444595674e94e8cf4be53817f","ssdeep":"","tlshash":"b9300000000000000000000000000000000300000000000000000000000c0000000000","size":4,"data":"","first_seen":"2023-03-07T01:02:14Z","last_seen":"2026-08-17T23:29:23.338407Z","times_seen":284917,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f0e976b756b6afe7f40bca206a2d7150","sha1":"db9bee9a7bba93a60330ec5ef1334d9c164fcd56","sha256":"029b84af88c5d6ced58173997a15fa47011e198e5449027d87e2f7b871f332c2","sha512":"486596b8b7d88539b3147ed55749794ab08962047191f33ff9915fd4e4a8a9a24bc164c0d44f24357b6e9dd72d1ccd88f981aa0cf2c7df585a83000d4baccc9f","ssdeep":"","tlshash":"3f8000883cbab30e8222283223ab200aa2ae28c232088e00a00080803a3003a8032c0c","size":29,"data":"","first_seen":"2023-03-07T01:02:14Z","last_seen":"2026-08-17T23:29:23.24677Z","times_seen":250030,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"a5f1b1fae88e7c924e78f29b246f89be","sha1":"0803ca78502f773ba3c00003fa5553356186c5af","sha256":"6fea8a9519d7077ef74493d7d9adfd74ce31b1b351246358968fda26029df9ac","sha512":"a604211ab03e82aa91e6ed1e954a9ca6052e3a8e31afd9cda8754e80adaa33e7c4434f26e94cbf11a42f64c72e41902cfd142401d11d3e3a1a427e9ffba80146","ssdeep":"","tlshash":"f98000a82c08a080c00a3a20000fca0c222200a800000a0320820aca0f33cab8083c0c","size":26,"data":"","first_seen":"2026-07-27T00:29:31.597711Z","last_seen":"2026-07-28T07:04:56.444388Z","times_seen":335,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"0d80d99d7f209071a284c9ab6d14accf","sha1":"c91e7389c28a7b35eeb114484808a20cddb8c20e","sha256":"0cb21d1de060008bab472c15c63e6f15828de601f85deff00d701d26c0f6819a","sha512":"59df0ea3f533182f0884e52768ba3b5b1dea918c81a430aed117aa60584df1bfc3569ba05dc9c95426cd97513318e2bc4272ec2771e3528117cefce002576740","ssdeep":"","tlshash":"0aa012b01c1dd3d81271c03118250410d6cc2205f8260d086219825248a81067f02014","size":83,"data":"","first_seen":"2023-03-07T01:02:06Z","last_seen":"2026-08-17T23:29:23.214615Z","times_seen":343155,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8ce4b16b22b58894aa86c421e8759df3","sha1":"13fbd79c3d390e5d6585a21e11ff5ec1970cff0c","sha256":"8254c329a92850f6d539dd376f4816ee2764517da5e0235514af433164480d7a","sha512":"2af8a9104b3f64ed640d8c7e298d2d480f03a3610cbc2b33474321ec59024a48592ea8545e41e09d5d1108759df48ede0054f225df39d4f0f312450e0aa9dd25","ssdeep":"","tlshash":"c700000000000000c000003000000000000000000000000000000000c0000000000000","size":1,"data":"","first_seen":"2023-03-07T01:02:15Z","last_seen":"2026-08-17T06:09:50.508389Z","times_seen":52663,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3f16ba6bdfd02c4e6d6ae33b270a1f81","sha1":"f5d52f0d69a9dcd7911c892ee2dcce029f1c75e5","sha256":"a104c10429792d6a042a0fb0751a968e9aa8956b47d40c1f74dc2da583ad9a37","sha512":"fab03881cc443b59aa2d84e016969b4c760c09d13de47b248ae17efa22ebff60806ce1cefc203f813781f5a760e73b5d32a8c3917bff0fefc7ac14eaac13a32f","ssdeep":"","tlshash":"87d0a744a02e504a093e2d6b759bea27729078033816cc6d965e888d0cb0813c55fc5c","size":225,"data":"","first_seen":"2026-07-27T00:29:31.667493Z","last_seen":"2026-07-28T07:04:56.471214Z","times_seen":336,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"13e4d4eacd186a52c688b45ae374ddc9","sha1":"d143221d36c33a44096b811fb5248b8a325265b8","sha256":"aa931b41f1dd816e4abd8cad35850741fdb6e4657cea2add1427e0a5e02f2b54","sha512":"d3eca32c5a355c3122a1a2120cfcc22b1762257bf100fef44c85ef7b242f22603f784573dd78affedc6a0aefbbb31e1b2f75ec31955402b439a5bce508bf64a4","ssdeep":"","tlshash":"d9e07d149b4e26f5957fecc920ced10510be706b40296c54556dc90014b89238174908","size":299,"data":"","first_seen":"2026-07-27T00:29:31.609353Z","last_seen":"2026-07-28T07:04:56.491631Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"04d43d476fc66e43b545912ac9e06410","sha1":"4b3f58985347c8ef6ca71351d82309171cf507c9","sha256":"f50c4e82b55b7c70b931a6b4abe9844100e9a7b2a994a76accbaf6414645b02f","sha512":"5162b010b3bb20ef68b83aac7cd8cf9a2ef7a1ddfae9a1fc5cc6568fc9f698c116dfc6f617cb56df3e3d26a41ddcf123e37ed149275e541bd50c800e0c2a402d","ssdeep":"","tlshash":"cae068b6c00271aa3bcd42179ca37e1880f17915fd2e68ceb140a29dee24023600648f","size":399,"data":"","first_seen":"2026-07-27T00:29:31.73942Z","last_seen":"2026-07-28T07:04:56.52577Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widgets.coingecko.com/coingecko-coin-price-marquee-widget.js","fqdn":"widgets.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"104.18.4.118","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"c943d4422dad6300bbaf689c2211180f","sha1":"4cf78792b3a9dddc6f2ee8219bbfdd213194f144","sha256":"d8d3d9a390c75f612142118d3281d85b95cb50e84c2f6d9438daa83efa8e2437","sha512":"c5516ee60fdc9e900036dec072c7c2de8d01dcfce22fc901048697428c43604ea8dd8d907abda960ce8aae5201ec7f649300af511c8bcccac469a9541f0d9d4f","ssdeep":"3072:/uPfvYNJshGWDSBttCWINmVZrnPodE5rUzpI4Oz:XYBctCo2c4Oz","tlshash":"bc34198eb6c0f19947b693e9605f394ba77d28fc68884380e972f4e5587e05c6132f6c","size":230974,"data":"","first_seen":"2026-07-05T23:38:03.171209Z","last_seen":"2026-08-17T04:08:41.272685Z","times_seen":333,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"2db95e8e1a9267b7a1188556b2013b33","sha1":"07c342be6e560e7f43842e2e21b774e61d85f047","sha256":"acac86c0e609ca906f632b0e2dacccb2b77d22b0621f20ebece1a4835b93f6f0","sha512":"f10127742e07a7705735572f823574b89aaf1cbe071935cb9e75e5cfeb817700cb484d1100a10ad5c32b59c3d6565211108aa9ef0611d7ec830c1b66f60e614d","ssdeep":"","tlshash":"c700000003000000c00000300000000000000000000000000000000000000000000300","size":1,"data":"","first_seen":"2023-03-07T01:15:12Z","last_seen":"2026-08-13T06:59:11.011693Z","times_seen":57941,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9d59bf62eb4d4befed1f736500ac7f27","sha1":"44b20bec79abbd3df4fbacb84a8d3d7b93cc091f","sha256":"3bba6fd3e6602d3f7ce5cf48e5c8785a2e8825e22048fca2b6c64b1342ebb72c","sha512":"08e80d61b07f2a4610ecbd2778975c49f3f5b70568eba9e0ecbe137377c0c3e17b67d2a39ccea93bfb0a5720727ab4f6868d0694fa2c1a9b2ebe829c803df86b","ssdeep":"","tlshash":"c71000300000000000000c000000000000000000000000000000000000000000000000","size":2,"data":"","first_seen":"2023-03-07T13:57:01Z","last_seen":"2026-07-28T07:04:56.41732Z","times_seen":3791,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3607caa028d214a9c8a07c05ed41f53e","sha1":"5674daef708810bc46c529af25c171300ead8252","sha256":"4f956f8fea1bf812e046d3d7ef36a29700d6959fdaabae376f3a78110c934720","sha512":"67da101469be9175b0cc735dd8b8c2d15b1b5c8432380f850e68578d5631c5e0bc7c0792737dab961765f48ce482e8c5d1dceebb77b4e30058319ac89bc606a2","ssdeep":"","tlshash":"11f0d45f50cd5765957724c4420fde08413e24030cd5416f7c1af67058706839085d4c","size":471,"data":"","first_seen":"2026-07-27T00:29:31.640347Z","last_seen":"2026-07-28T07:04:56.543578Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"de6dbd97c8dd3a754877fa143cd8e692","sha1":"3e85513884db6ba05f060700fb01a9d7ba26b569","sha256":"8f0b65c9522b9729a962b7920b32d2d389dcd3d319a68e4054dfdd6dc7e00f07","sha512":"b40574e5585be773614350a7d6031a6172853d27d9a33283339591f6a4d2630f1bf3bb891fbdb6c3b2971ced5b76598dc74f3e667bff46c028a224b2bc7c40af","ssdeep":"","tlshash":"3ac012aeb0e187954dc121dc0943569a5a587c052cc9044e5e827368b825447d06cf15","size":186,"data":"","first_seen":"2026-07-27T00:29:31.743215Z","last_seen":"2026-07-28T07:04:56.419788Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"e2da3efa536fb67c7170a415b9a058b0","sha1":"a370b7cb382a8e1d70437d9c3465195440bae925","sha256":"f5c0cc24306db6871daef9d7f5fe842e5cbd3fbb5d89aa833ef100bb5a158453","sha512":"96bb9ce1aa41937e6ddf49ddb2aca103f65e26f5969684f45824adc902853c0647a1730eaa27e46fe1c09f508aa1a03453fda5f37784ffa775da1b1b5cd56d4a","ssdeep":"","tlshash":"dfa012084e092a1400805a41010f0b7910c4400a949a5d14601d4f911969945217b00c","size":82,"data":"","first_seen":"2026-07-27T00:29:31.62022Z","last_seen":"2026-07-28T07:04:56.535655Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"2cc43ad532377e05783b919d86a896d9","sha1":"69e00bdb15ac21186c8d27764e6311759ba5b99b","sha256":"007cd5f5a967155b6963ac5de46c369ee23237414c3f576b4197fe46229808ce","sha512":"404182f4b51a22a4a35e58480d372a65db2465803ca23913e379199413edf84fa74dcf0f92026d8561dcc35bdff981cb98a38c8f50ae05f7224e5c7b42b30c92","ssdeep":"","tlshash":"2cd022c93c4978d20279238888ba01f7e2fbb8dc78068b40c32442002a3ca3a5464402","size":199,"data":"","first_seen":"2024-10-31T11:08:50.83142Z","last_seen":"2026-08-17T23:29:23.407551Z","times_seen":159399,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9d0137bffa0f20d5e8e9f54f2c84cf0a","sha1":"39edf6d919f82b9692a2edfecc78427a82567c42","sha256":"269d4d56785ffc82f3ed05d8ee3b84fc18d7474663ddd06c6fd285165190bb19","sha512":"0b8b09f13f8fbeb3546c08a3501f4060ba8e5f762722ffb1a53be6d0e297abaf9719d48d50cac29940e403702c66627187396b8961aee26586ac934568af2ea9","ssdeep":"","tlshash":"db50000000300000c30000000c30f00003000030c00000000300c0cc0c000300000000","size":10,"data":"","first_seen":"2023-03-07T01:02:15Z","last_seen":"2026-08-17T23:29:23.375547Z","times_seen":187767,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7b0a74d2e293eb8c72de5b643b681089","sha1":"fe66c702d503ed278c323414a6464ffac17966ee","sha256":"35e812ee1dc11d4413c230c93b9e681ac4579d02692f607aa646bf35b856d6a9","sha512":"419e4e74e043fcb618f4e6c98ac3254c6e327326914fe688661fc19d3b3c1c0f3651edafaaa989b713151482b052ae40a6f720c3791dbb92f8d39dce067a13b4","ssdeep":"","tlshash":"e3d023d565d74434c5e2d92e01331240cc254d18dd040eb57102f245cc70745577e9c7","size":198,"data":"","first_seen":"2026-07-27T00:29:31.623578Z","last_seen":"2026-07-28T07:04:56.510661Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"646ac41c6e82c646ba804807550f2817","sha1":"5ea0bc6e90462c43b26e49e1f49f532435c00cca","sha256":"cf617055ff38446c4742cd6bd014bec69fb9ecb5b6b12843647d6284631e9fad","sha512":"5b281fa7850c4dd4a90ad9142093e57655af1b953902864a0e92ac2ab4d85fb32072a1eb97d8e92d6a6d273705933a0804d60b03f88ded3299237408a8c60fc9","ssdeep":"","tlshash":"42c02b4606010391437f29805d0b133bc1c200073c01284c89f10481e09cf40089ac12","size":133,"data":"","first_seen":"2026-07-27T00:29:31.595033Z","last_seen":"2026-07-28T07:04:56.479176Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"19f1a888cd3e3220de06261d91221025","sha1":"1d893185bc19e971fe3e39c0c91e818e13e9ecca","sha256":"2cbc0333d6f182fec51990072b45a6fc67cd0a5ad5179ebb5020a9746823d23f","sha512":"c06f141bddcd0726ea6fb0450c623b07f86726dde982efad97b50457031bb4850595043d16c3138a2045dbbff8510e054bc2b586b7be496996d25407d07f51d6","ssdeep":"","tlshash":"b39022aa2c38382000202000820f00302a0b088fc08080008080cc3a2c30c0888e0c80","size":56,"data":"","first_seen":"2026-07-27T13:21:26.003638Z","last_seen":"2026-07-27T13:21:26.003638Z","times_seen":1,"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-08-17T19:58:20.299653Z","times_seen":8490,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"a4d9b5501294e7f7449a79b22b21e5eb","sha1":"1354467848747256e51a9a6b2ac961ebfc54197b","sha256":"051b0b66d998b6b7f8f66d0a6ef99271b61799c668c6799df6a0755a2843b51c","sha512":"f8daea8c9048bbe6ca8ae012ce51364ab8f8b33cee83e333ff79385d953f4e9f8cb827cd74dce9faffef57547df485808b654973b99c727a2bee685a1c9feebe","ssdeep":"","tlshash":"c7c08c312f39682891a16314b9bb0c0298b0424058ac194c4f01a848a6f8f0c008ad40","size":155,"data":"","first_seen":"2026-07-27T00:29:31.721669Z","last_seen":"2026-07-28T07:04:56.413179Z","times_seen":335,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"0d61f8370cad1d412f80b84d143e1257","sha1":"32096c2e0eff33d844ee6d675407ace18289357d","sha256":"6b23c0d5f35d1b11f9b683f0b0a617355deb11277d91ae091d399c655b87940d","sha512":"3d637ae63d59522dd3cb1b81c1ad67e56d46185b0971e0bc7dd2d8ad3b26090acb634c252fc6a63b3766934314ea1a6e59fa0c8c2bc027a7b6a460b291cd4dfb","ssdeep":"","tlshash":"c700000000000000c000003300000000000000000000000000000000c0000000000000","size":1,"data":"","first_seen":"2023-03-07T12:12:28Z","last_seen":"2026-08-17T23:29:23.396619Z","times_seen":76536,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"cec2466c512046247fcee7b41d4febff","sha1":"f435166429f9f6b17d5e59bfeff477d80f41092f","sha256":"2c91ca6f50bc77f02def816379429b411ee5dda90eafa7e8c149a725032810a5","sha512":"6db7c130dc0c2403960e22dd6e2918ca808a4e7dab3044d5d4cce10fa832a1a5e1f38396e11c19944f02d7420f9c1f05a1320a558a071be858679e347655b68a","ssdeep":"","tlshash":"3bd02bf74c79013f021f1bd5b6d7e1ed61da32ea25564b0dae74d1d4019449ce1c4e47","size":285,"data":"","first_seen":"2026-07-27T00:29:31.745602Z","last_seen":"2026-07-28T07:04:56.481731Z","times_seen":333,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"d51b042d8ac9bab5d5186ec2c244edc5","sha1":"c486f3212f9ebff8aa36d34a2cf041e09d32b07d","sha256":"3fbe57b29f670d76e90fa6e7a66a5856ec458a9b3cd7792141ad1abcc8c48362","sha512":"6a918db5ee5b059e8c909596ba38d4da45c7a57cfe99aa19030434006273715dbdf6f0609e57937a9711cca78753f13d7392b1d18cec36c882e911d343efeced","ssdeep":"","tlshash":"e8c02b3c7016000cac83a221cf8f4c0a801ea0550d08890e1d41a8e87c83a902eb2c42","size":132,"data":"","first_seen":"2026-07-27T00:29:31.603991Z","last_seen":"2026-07-28T07:04:56.483456Z","times_seen":321,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/setting2.js","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"67fd1627c8c56c3e7ad50e34292ddcd4","sha1":"74e7250d6d3deb0fff8e46698cb2bf576d23a165","sha256":"29822d1e65cc8191915c5cd2defec2f0471877f19805c2937ba9400481552bf1","sha512":"740456a39b6910e0a1d26a8ab001d46cfcc0612e05893bf635c06cf6477d71533cc898e0093e1d3e3073e5c1111a116e8276ba2882b2cf045bb2f37e89b133f3","ssdeep":"","tlshash":"5d316c00e75d0325237071747ad927c4a43e5a623a102c91bdb91edd0ff4e65e909ecf","size":1738,"data":"","first_seen":"2026-01-22T04:28:08.483482Z","last_seen":"2026-07-27T13:21:39.108527Z","times_seen":9,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b9ece18c950afbfa6b0fdbfa4ff731d3","sha1":"c2c53d66948214258a26ca9ca845d7ac0c17f8e7","sha256":"e632b7095b0bf32c260fa4c539e9fd7b852d0de454e9be26f24d0d6f91d069d3","sha512":"b2396a002fe7aec008808687d7cbacb340b7f7a090008382f3c95870f6fb10415f61f5737c102d4bfec58fe525407ea2001e761dab1da8a501d9523921f0ec21","ssdeep":"","tlshash":"c700000000000000c000003000000000000000000000000000000c0000000000000000","size":1,"data":"","first_seen":"2023-03-07T01:02:18Z","last_seen":"2026-08-17T23:29:23.199043Z","times_seen":54251,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"2dd96114cb21cd5fe28e94362f0efdd2","sha1":"37e9d317dcb7145d3987b8b4b96f5b649b8db3e6","sha256":"965dcac169e4617e5deb5e95fe3bb656e89bc7de173525e1e4712851145d1928","sha512":"fc118e3fd7a7c3545200b9cd0e2e4db154f38f3ff634eb97b2027b803b180aae5b504594bc39224de239b144b54471319fe876c4604961fe646387f9fb85d7fe","ssdeep":"","tlshash":"d4e026a01c023c0e214b9abaf03b231ce550957a97894f59ec02cd297d37d43aadb680","size":353,"data":"","first_seen":"2026-07-27T00:29:31.627576Z","last_seen":"2026-07-28T07:04:56.423137Z","times_seen":335,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"af7a45486748bd9d8fbc1e8988c8de2a","sha1":"aec443b589dd677d524f4b38c72cb09cc3888334","sha256":"ed1e0f33e73696fd1e79db950560ceb5d1acf35ac4fabe43a7c5dcce91d90b11","sha512":"f23c74a9079059a09918e9f5b8c37887ba9bc93f6ec84f38c589ae0aba5a0d8367d9c9631800ed45ca46e444247df8f62aa0974859e04a7501621ebfb0923b05","ssdeep":"","tlshash":"afb012ac9fc4c46ca04c08782887ea042089640b40290941b44696211738c8a20e08cf","size":93,"data":"","first_seen":"2026-07-27T00:29:31.71769Z","last_seen":"2026-07-28T07:04:56.508247Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"96d66a4d9708fdb6dd5597f3bbc7d624","sha1":"e10a66fa8a836f6f948941262b70e1fc928a446e","sha256":"3cabac574ada654802fc1c4518d870f0791a9a3ac31371677e75fb683e47ce89","sha512":"06c25bc4dba52367cbe19252c1a013e1714a198141d139939944422266aaaed60ea3953c5d0f890a7f9ce7887c5f2a4cbb47173d06f829d50ac33f6f353c015d","ssdeep":"","tlshash":"ebd023cb729c1114574337141eef0448bc64b4d70dbc941d8649581058011ede03aecf","size":195,"data":"","first_seen":"2023-03-08T14:47:45Z","last_seen":"2026-08-17T23:29:23.324129Z","times_seen":210827,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"static.getbutton.io/widget-send-button/js/init.js","fqdn":"static.getbutton.io","domain":"getbutton.io","tld":"io"},"ip":{"addr":"104.26.14.221","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"bc3e8108dcd36c0d0c129a726dd8f47f","sha1":"db6320723c55ad91550a1ca87176058bed49d99c","sha256":"791450932271b1682c103cadb334baea8bf68100069c3c3eb317ed8a20098483","sha512":"821203cb21570cee7a989e40a417990e408949e7d239766562cfee62c0a0320c936bfbc8fcb2ecb35067ba1034eb7363d907edb72ccd878ee510640aa7a976b3","ssdeep":"6144:HSFryQhY3HpsS+U6qAcXha0oPKiqLVwoNbsR5LoQGnE2:xQhY3JsS+U6qASoPKiq+oNbsRFoQGnE2","tlshash":"53946de93290f0a653b352b700af240bf379641a785d8860a215ecdcf8b94ed513bf6d","size":442041,"data":"","first_seen":"2026-02-13T07:56:32.581356Z","last_seen":"2026-08-17T18:14:58.289529Z","times_seen":2901,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"98da94d83c6805242132c6165e921d97","sha1":"42637bb5411c7fc2679eb91a5f80c271d861e4bc","sha256":"2f4d956ebfbfba38c40a0676b6d2d6907d6f40fd04f8b2b8b189532ad525cc9d","sha512":"79ea84f90af64049f583ac430f0af0487c9464666d9d1cb46ca87457888f59dc4f3e46fd3a1567f735ce82f4e88c128422be7f5456e2d5be2c77d1b96473b50e","ssdeep":"","tlshash":"48d022fbbe8984ca22083cac8c27310c636d491afdd2ba20c551e1e008ed088884e6ac","size":210,"data":"","first_seen":"2026-07-27T00:29:31.700534Z","last_seen":"2026-07-28T07:04:56.431747Z","times_seen":336,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8673dabfddfa6347e822f593dfa1d916","sha1":"24feb390ef779b4c8d9596eceb50bba1d0ae03fa","sha256":"7418d3cb701381f05be89fb705d663a4455a26035c0dfd80576a4f716390454f","sha512":"236700f570a1ce92777c3f878d6fd174732a5786e1004dc4d95fea38b679de84d97a3de2f4ad7915815087aee4682b47e471113e9e6fedf69a85003e6c728e1e","ssdeep":"","tlshash":"c7100000000000000000000300000000000000000000000000000000c0000000000000","size":2,"data":"","first_seen":"2023-03-26T07:09:39Z","last_seen":"2026-07-28T07:04:56.429354Z","times_seen":2856,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"90eb8e6176ec2db449b973749c08f6cc","sha1":"ba5f15b9b337f2ec6371e30b3ca0f70858136c52","sha256":"9ee3a02208f34973ce99f07605977b9557d786c345832252bbd13c9e3ad6b014","sha512":"35b9aec976337e214711f7003c87637817a65dfaea02284a7a0d4b00bae89b245ae3e20d3a02471b0991a1f95db9c4d476cd4aaa599ef780f64e4549125d63e1","ssdeep":"","tlshash":"e1e07dd020025414848d8996f87f232ba960fa62d1440e69d843d7c35f200c3ead3537","size":325,"data":"","first_seen":"2026-07-27T00:29:31.587207Z","last_seen":"2026-07-28T07:04:56.445975Z","times_seen":333,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3f0a7488ecc0857223d8b1b87dee08ff","sha1":"3992ac479cd292d55110ff5836e8abe096ba618a","sha256":"ef243629e0d198e608f2e084335bec20b458893fb5dfbbac50f1808445d251f5","sha512":"86c4039c06162306e3cfbe3fd0eacbb899d8bf7d70cf6cb9a9e8ecc2cf152d0862bd0e65dc3098d396f1b4f303fe6adf01cce456f07250bcfdc82292b6159b10","ssdeep":"","tlshash":"e9d02ea2202eb092887f5e821c2b802842a900030a203d32904c080850eae3ea0b4999","size":243,"data":"","first_seen":"2026-07-27T00:29:31.726132Z","last_seen":"2026-07-28T07:04:56.548013Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9f502ac14e14405587d798139e860b5f","sha1":"b267cfc679f39f2d95f9d3fa41bca0eafb931aa6","sha256":"39d2483e41bf71db160191d9a148b4bc26c0739e732727e37be0f18bdc8cabca","sha512":"f5bc3d4834c9c4ed165d49476795fb1170fdc577b58fe4b21dfc67cfb4f6eebf045a3812ef48a2f15758e790ce7e111cf9dbd9ffcc3438288c7340e6eeb7661f","ssdeep":"","tlshash":"b1c022ccbb3e600d9121f90031f84e46cb4125ac4407ede3a70128b4448180aca1f406","size":194,"data":"","first_seen":"2024-08-23T10:18:17Z","last_seen":"2026-08-17T23:29:23.217958Z","times_seen":178249,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js","fqdn":"ajax.googleapis.com","domain":"ajax.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.74","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"a09e13ee94d51c524b7e2a728c7d4039","sha1":"0dc32db4aa9c5f03f3b38c47d883dbd4fed13aae","sha256":"160a426ff2894252cd7cebbdd6d6b7da8fcd319c65b70468f10b6690c45d02ef","sha512":"f8da8f95b6ed33542a88af19028e18ae3d9ce25350a06bfc3fbf433ed2b38fefa5e639cddfdac703fc6caa7f3313d974b92a3168276b3a016ceb28f27db0714a","ssdeep":"1536:jLiBdiaWLOczCmZx6+VWuGzQNOzdn6x2RZd9SEnk9HB96c9Yo/NWLbVj3kC6t3:5kn6x2xe9NK6nC69","tlshash":"748319dd72c6b06247ab71ba00bf550bf2361999684d4410f129e4eabc74b4e823bf7d","size":86927,"data":"","first_seen":"2023-03-07T01:02:02Z","last_seen":"2026-08-17T21:53:39.944829Z","times_seen":143194,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/4815a758657d4bae.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"9b4f6d29f92ea43b7c7ef4770fbed76a","sha1":"bdad2044ced7e4c0208e62e5650f99140e88aeb6","sha256":"6fb06a5d29509dddf687974e467d8274ef9ef0f6bec7c841fd8336543c9a3f74","sha512":"06ec26c380efdf73315dfc21639732033b79b7869acaed6d4a6697c4d441500bb21f57311b543ee176e2b31b775cff20bc5e611dfff3cca3a3a5c30c8338262f","ssdeep":"1536:UIYGGTQpo7UFYEpzussak11xgaAF+j/G7qWF:UIYGKO+UFZaJgaUt7/","tlshash":"f023d4c971e5b4900bb395b1803f000bf23e1d76185d98a0d3a2dde9b8b45aed233f99","size":49883,"data":"","first_seen":"2026-06-13T02:21:16.211868Z","last_seen":"2026-08-17T21:34:38.511053Z","times_seen":1949,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8d9c307cb7f3c4a32822a51922d1ceaa","sha1":"b51a60734da64be0e618bacbea2865a8a7dcd669","sha256":"8ce86a6ae65d3692e7305e2c58ac62eebd97d3d943e093f577da25c36988246b","sha512":"6b3b006aa3a86286c359a6d243d62a61e46f0c5f7d1db587faa26fbe72718eaee33f774af164e3ba790d4ae4136a25dc993d3246f7be6691fa7346d0be0f1a71","ssdeep":"","tlshash":"c700000000000000c000c0300000000000000000003000000000000000000000000000","size":1,"data":"","first_seen":"2023-03-07T01:02:06Z","last_seen":"2026-08-15T20:40:32.791359Z","times_seen":64507,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"da2ef09dbc6b0f85bf0db51037bfe17a","sha1":"e42f689642a1969c3e7a3da390191d81510a8ec2","sha256":"4fd64c9d5058b36498ffed3c805ae9b3d35f885c8f063a3b1372d09086e489fd","sha512":"c84b5f322afb9e1909844b8ef52b3287a27cccdfaf17361dfceecff396ae873a8d59f75fb928e2ee07f7a4bc4c8b7f0990905f642a2746fdef3b9c9d7b5a57bc","ssdeep":"","tlshash":"eef09e99f2c7d47491798634d8aa4305d6133d402006289aa465e0fced57866e932b7d","size":506,"data":"","first_seen":"2026-07-27T00:29:31.654529Z","last_seen":"2026-07-28T07:04:56.523407Z","times_seen":331,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"05b8c74cbd96fbf2de4c1a352702fbf4","sha1":"320ad267d8d969f285eda5c184f5455bd29c8c95","sha256":"44ff7b02c80d38b26dd6aa31d9470aed81b32e10331a3c994fb1a9945fd847ba","sha512":"1ab6ceacde9b312b4f32d7c9f2d54448e82264c30807e4db86ec8e295791c1fb9aafb38985b2054e589c0a0a2830f1a389312fb2912dc2f9c949231967e03545","ssdeep":"","tlshash":"f6400000000000000030000003033300000000000000000000000000300000300000c0","size":6,"data":"","first_seen":"2023-03-07T01:02:06Z","last_seen":"2026-08-17T22:16:02.619451Z","times_seen":159314,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"1801cf0c94344d850a7396d39794eeac","sha1":"838ec656e5a6ac06a4002e5e741f8aef38a04d36","sha256":"711086bffba7991c6bd5bc970008f28ece8414e0ff513da8b652c1586a90281d","sha512":"7973c2fc0c5dcd0edd201b4caa7f52f4c50fd43c700bfe6e0357b0df2f91423966e301412a99e4d6e473649619e9cda59e2f91873d49dd546b42c7efde54bbea","ssdeep":"","tlshash":"40a012145c751016e01d8029a40b1104008a320790145401e449058000e4824a01048b","size":71,"data":"","first_seen":"2026-07-27T00:29:31.738096Z","last_seen":"2026-07-28T07:04:56.411513Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"4d9ac09e2b9428fdf2e4a1080a0b7d4a","sha1":"b48305efe8b5158354f0d72d5a89a795f8456bb1","sha256":"b35f28def4481b87c38c345bde940dea7be81557d08375b8ed6464bd41023a13","sha512":"d3b0c2d5a94d0350854e08dffa8244ebc2a36b4f3bd6d1611930d9ce2976c786bc661ada3e5cdace44aeb03f23e9e4b915c4fd3d85c30fec2f67cb47c92d2a82","ssdeep":"","tlshash":"e02165eaf3c672946bd756d0accf270001687581ef794a0f4861e3b057546936085e4f","size":1286,"data":"","first_seen":"2026-07-27T00:29:31.662258Z","last_seen":"2026-07-28T07:04:56.509866Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f184e393cd49024013cf566cf53ad3f5","sha1":"d64819bb1fe5a51f54634938af92402fc04b58f9","sha256":"a626f8bd4c773160d25e2d6eaf231c27a5d50e76dc41ff97e349ef3fbe7e9e62","sha512":"1c22a36fe952552f680c3f2ea5dffe7c11cccaad12b46657f1050da4d6d13a76156fe9f72dccf366dc2a8da8f469fb2fc718c7a070eac0864b4e1f0ab5e33d10","ssdeep":"","tlshash":"68e026a01c023c0e214b9abaf03b231ce550957ad7894f59ec02cd297d37d43badb680","size":355,"data":"","first_seen":"2026-07-27T00:29:31.68577Z","last_seen":"2026-07-28T07:04:56.440567Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c2284743fe8a6178f117d584e3091d6e","sha1":"93d24c83d4a695e2a463bf66ea18a3e2147e9148","sha256":"8cf878073f71bf93dd67f56aab913b4a584f5ea15c56ea7030f96b9f26f23a4b","sha512":"7aa1cd340f7dc20e2259c9ef76fc6dd184133548d47ee9cf1c300e8ded20ae3e298748b874bb735dc639bb025be759096e3edfedd1c0396a094748bfe2734cf1","ssdeep":"","tlshash":"28c02bcf30c6da74817d001203179dc48107349f114b808743d040e400174908c1dcd7","size":138,"data":"","first_seen":"2026-02-18T11:53:38.7823Z","last_seen":"2026-08-17T23:29:23.394584Z","times_seen":81915,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f465da03521180d47c811a98c793a2d6","sha1":"9b76105ff4c8bb84cd630914d772f4cc73df0155","sha256":"e8183224e440eb4578fd87c4c47735f9ede4c43b1c6ebbdcd7033e98aba6a009","sha512":"b10685b1bf88080c98cfa2493e4c1734797a6ee17e9d59ddd7cbd685a9596d4c908ac2a12be9ea2aed3f6ac67ced98f3c6e76b1882f6c0731d1dd60ae5de4156","ssdeep":"","tlshash":"7450000000303000c0c300000030300003000000c00000000300c0000c0000c0000000","size":9,"data":"","first_seen":"2023-03-07T01:02:14Z","last_seen":"2026-08-17T23:29:23.309832Z","times_seen":188421,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"ec7e53845feb375870343182efd0b929","sha1":"63e71d0c5bcadc37a725d971054eb55e017f6989","sha256":"a2253e1fad60aa1ccf31416ca8cde6ffaa5af2510733c7186adc04a503346c5b","sha512":"339f50fe30462dd6204552b2d3d3fe5cbaeea2cadcfbde096f16b40f1d985a5a68ebb227dbbb9f37c9451a36376ed392b7fb50c6e661963124146bac7e03284a","ssdeep":"","tlshash":"cf50003cc00000c0000f03000300000cc0000c00c0c00300c3cc000c3c0cc00c000000","size":11,"data":"","first_seen":"2024-07-23T18:45:21Z","last_seen":"2026-08-17T23:29:23.38259Z","times_seen":176247,"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.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"779ffe8039ad87e2a1aa1c111061fae4","sha1":"7765f6360937f90e51dc4974d13c20887adca712","sha256":"9e5e6d330bae7d5d640cf35fbbd6dbac19e4eec6c5bdea7b99a664523269f90f","sha512":"17cd5c8a938106fbe74d4ea623e67c3669683343c08f866700fd6284152c7397141c9ca02451bf6a32808003c4b4bf3fcce72cbbe6c53a851a1da6d254ea3619","ssdeep":"6144:OZaBJxrsw56sgMoiImct8de1F6Suapko3iM80AvhapoXgvWbq/+:FFpgMoircDkMiM80CapoXgvWbq/+","tlshash":"30944cd97762707392a2f5a5902f0103b17a68a6f40c8c7cf798ddd16eb494942bbf38","size":442344,"data":"","first_seen":"2026-07-24T13:29:06.322297Z","last_seen":"2026-07-27T16:56:48.620174Z","times_seen":1326,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"0de3ba01184b62b2d8e5b01ca4842f76","sha1":"dd2d76d959659ab5793eccc79cd2dec6f73433e6","sha256":"bdc33b950db6906c874faf1e5693acd3a5be7c1d5b32acf31c962026f8bad6dc","sha512":"944a8bc67c389c73a3db4b5a2c5ca593eadf35afc250aec42cf3f96c5744c8d70fd98d00e24ec8d5bf098303c5fb833df05742437f64bde0e866a9ab3c3dbf5f","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000000000000000000000030000","size":2,"data":"","first_seen":"2023-03-08T14:47:46Z","last_seen":"2026-08-11T05:54:46.981758Z","times_seen":2849,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b0683db4d2a1dcce56002a5aae49385d","sha1":"c977aeb11087ac6ff5fed7e712f858d7821bb124","sha256":"40263aba605b175fd58fa896c53350a3216282e2c10b44c50da36c72575f5aaa","sha512":"032c74ef081469145784aee79b1b43b8b2049c018355b47b9ba4204fd19c28690395715dcccdeb59f227c359a51e811c5805270324d2a48234d618d40a8df474","ssdeep":"","tlshash":"13e0c0bf8237421019f25de7ce97236ce11d27a00b216c6ed32e9169d426896b258c49","size":348,"data":"","first_seen":"2026-07-27T00:29:31.560202Z","last_seen":"2026-07-28T07:04:56.449636Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"e76e9157a8702162ebe0dfb9e7b04e72","sha1":"52175cf5a0cd15990245ff6c8ee9de57eefb923a","sha256":"ca524d904769be71810fcfe1cb0b4ddc0ae154db3feb77055689cf960d9b8956","sha512":"9628debbac18d7b9d4055bb41d963d4337fa15aea8057e438b6aed141995dc94c01250e0ddd4ec0bd0b5efd8a9a96ae05a15bf75e350336830b752ba9b91568e","ssdeep":"","tlshash":"91c08ce9b2a25864c3e0a82b21324200d8aa1d489e0040b9c102f448fd90349da6df81","size":148,"data":"","first_seen":"2026-07-27T00:29:31.639041Z","last_seen":"2026-07-28T07:04:56.439Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/assets/main-B-VHc1K4.js","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"introduction_type":"scriptElement","is_inline":false,"md5":"44df6240c839beea4111582dddf02793","sha1":"4b4dd2241d5ff95eba46fb8893058404630825cd","sha256":"a4019ee0c737ef5d214e80e5a87a5a6e839ff2cf4e286cdad9ed6ff397eba250","sha512":"2f30c45b38eeb4a1900f295893fa30362dce2af015cb8eac6b997795ff4b72db55a92d8d38bb7a8cc8f529c612906aa9d2a2a41539c6a67052ae569733ff7e02","ssdeep":"384:Xrgi5RFMkSjJOE/0BW2rvZZ795P6nrnBOVmPCRkXQbpaIF2x:XEizlSjJOEiWYPR5P6rnBOVmycQbpaIi","tlshash":"6c72d7742700783f712f489e15ade546b232c29dd693892d8b2fec0976c5cc0a8b37b9","size":16281,"data":"","first_seen":"2026-07-27T07:28:16.135673Z","last_seen":"2026-07-29T06:17:50.042235Z","times_seen":1081,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"71664ae133d81090010036edfbcf2372","sha1":"8d777c5c06d8002edf04aca4921a43b993c3c83a","sha256":"de53398fc90b7401cda8a9146bba8ce842fe1df8c30153ebd66a3f0376a6cd79","sha512":"6491fea54a714ed5d363c59ef2c8def2d60d7a34da1f03a33ca310bb4960e8a8da00bbf1341673931071e888636536beee11d09b0826d4d82bb10411c337ca0d","ssdeep":"","tlshash":"2c119436280cd03fd0de28d2879ad25563f5e4c7b8c8f99a321320d8ca75f48619ea81","size":1018,"data":"","first_seen":"2026-07-27T00:29:31.596387Z","last_seen":"2026-07-28T07:04:56.439802Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"da04c318a55359f32360ca8a986e282e","sha1":"e3baca1718399fcfe561970fcf6dba81648d6b24","sha256":"33153d55280e139f3b0c2ee818cdb8743e2d87d1078904067d080badf15192da","sha512":"3c60ee8bc870e326db30eecd0cfdd71ba34cefc1f6c40b9574cc15357e255c2aae98a0a820dbf5d3bdcac98e57bcd37a40d5ff363f4cacd97138334c8aab51a1","ssdeep":"","tlshash":"f0d0a7e9929a8431b2256094055d06119085d85b14124c8dbbfdc75cabb5c04d515e09","size":217,"data":"","first_seen":"2026-07-27T00:29:31.636077Z","last_seen":"2026-07-28T07:04:56.436731Z","times_seen":321,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"bc832d5258e3425462a253f85c9c5c22","sha1":"1b093fab2bd12d503ba8dd6eeaaf1d785e25e0e6","sha256":"4b13a906ee170cee2ff47dec2e11b62d74a1e306390b03cf2623e5bebc8d2493","sha512":"44ccc0aab0f5fa56d38b62987b643de93e8848add5fc33144bc45a2c89836638d780daf2aeebcfcd3ea99aa7e35d53756197fcd538e71c917940c88c1feef831","ssdeep":"","tlshash":"aee07de020025414848d8996f87f232ba960fa62d1440e69d843d7c36f200c3ead3537","size":327,"data":"","first_seen":"2026-07-27T00:29:31.741417Z","last_seen":"2026-07-28T07:04:56.516469Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"50fa8efab11d7035bc94b7e4db0e00a2","sha1":"23e2a99575731db1e5d7f6ad8ad646852f10f027","sha256":"4c743cb7cf6833aa384b56a5d7c2b0660ed10419f4cdf4bdea32195ee4993fa5","sha512":"da97d5179208aacd7071bc9fe7a1413a0436150035c435cf58edb9294c7059efad47a2d229b754ff4f4fe2b7302a0eca0cac11f03802c0fe892024606440cd5f","ssdeep":"","tlshash":"95d09530bb1c10c46a7756f21b53c45d00e4b3df4534d4d7e45980e00665d554436d48","size":258,"data":"","first_seen":"2026-07-27T00:29:31.56825Z","last_seen":"2026-07-28T07:04:56.542566Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/95262386d8d4b6dd.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"8c155806c003f628ca093cb0feb083d0","sha1":"7e566386cefa86e8ede2e755f712dff7a8ef02f7","sha256":"07310b422de93eb0e61986355fd1084b06b47060d629f957c5311440650a6d2a","sha512":"980bd9a8f57049d13d7a8647fb56f621b005d208dafacc5c0534b9a919204bc9e363a122a1b4a48f4ef71cc00dcd2308e4885de83e31d2491b0a5d4a807fe7fe","ssdeep":"384:tj5z75Bq9E0mLlSmRt0cJ3XHHE79Fg/Za98qWtOPSN6wfV:N5z9BX0idiMxxgwfV","tlshash":"a4d2d9b17395f9a352db86d9d03a0005f2290d3530ae28b0b395dcef365dc8991fafa5","size":30684,"data":"","first_seen":"2026-03-29T05:29:39.700118Z","last_seen":"2026-08-17T21:34:38.523649Z","times_seen":2231,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/s/player/7a7969c2/player_embed_es6.vflset/en_US/base.js","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"ad17d7aaa5500fe1d163e297a0cb3628","sha1":"4607dffbd44e617ef494ece0d8770698d1541cad","sha256":"e8273aae46fb97f1786246772222f93463401dfcf2a0956928723ab6de5ebba0","sha512":"f787cdda2c4d3a5d970765c62929e3fb088af57fe2ef62bd9f8debe4064d563a4ac72ed8bd8c0425e9dc22766b1915a5004593d1b8652033d43e6d45245c3b96","ssdeep":"24576:JddEUuuYnFCL4xFUnYNmJYqJNI5Dt/yV2hD4k494v5/CTEF6:fdhuuYnFCL4MVJBJO5DtKV2hd49p","tlshash":"10755c9977e2b86343b2e0e5685f0142f23f584854ccd12cb97df9e52da0d0a617afb8","size":1597230,"data":"","first_seen":"2026-07-22T15:37:53.90669Z","last_seen":"2026-07-27T15:49:32.120651Z","times_seen":1747,"alerts":{"ids":null,"analyzer":null,"urlquery":null}}],"eval":null,"write":null,"console":[{"level":"warn","text":"[CoingeckoCoinPriceMarqueeWidget] This widget is deprecated and is no longer maintained. Please visit https://www.coingecko.com/widgets to get the new version of this widget, which features a new design and better performance!","filename":"https://widgets.coingecko.com/coingecko-coin-price-marquee-widget.js","line_number":7,"column_number":63396},{"level":"log","text":"WOW: animating \u003cdiv\u003e","filename":"https://uniz-coinzltd.com/styles/setting2.js","line_number":7,"column_number":19},{"level":"log","text":"WOW: animating \u003cdiv\u003e","filename":"https://uniz-coinzltd.com/styles/setting2.js","line_number":7,"column_number":19},{"level":"log","text":"WOW: animating \u003ch1\u003e","filename":"https://uniz-coinzltd.com/styles/setting2.js","line_number":7,"column_number":19},{"level":"log","text":"WOW: animating \u003cp\u003e","filename":"https://uniz-coinzltd.com/styles/setting2.js","line_number":7,"column_number":19},{"level":"log","text":"WOW: animating \u003ca\u003e","filename":"https://uniz-coinzltd.com/styles/setting2.js","line_number":7,"column_number":19},{"level":"log","text":"WOW: animating \u003ca\u003e","filename":"https://uniz-coinzltd.com/styles/setting2.js","line_number":7,"column_number":19},{"level":"log","text":"WOW: animating \u003cdiv\u003e","filename":"https://uniz-coinzltd.com/styles/setting2.js","line_number":7,"column_number":19},{"level":"log","text":"WOW: animating \u003cdiv\u003e","filename":"https://uniz-coinzltd.com/styles/setting2.js","line_number":7,"column_number":19},{"level":"log","text":"WOW: animating \u003cdiv\u003e","filename":"https://uniz-coinzltd.com/styles/setting2.js","line_number":7,"column_number":19},{"level":"log","text":"WOW: animating \u003cdiv\u003e","filename":"https://uniz-coinzltd.com/styles/setting2.js","line_number":7,"column_number":19},{"level":"log","text":"WOW: animating \u003cdiv\u003e","filename":"https://uniz-coinzltd.com/styles/setting2.js","line_number":7,"column_number":19},{"level":"log","text":"\u003e longCodeInit","filename":"https://static.getbutton.io/widget-send-button/js/init.js","line_number":2,"column_number":439085},{"level":"log","text":"\u003e try","filename":"https://static.getbutton.io/widget-send-button/js/init.js","line_number":2,"column_number":439267},{"level":"log","text":"config loading..10","filename":"https://static.getbutton.io/widget-send-button/js/init.js","line_number":2,"column_number":259826},{"level":"log","text":"validation...false","filename":"https://static.getbutton.io/widget-send-button/js/init.js","line_number":2,"column_number":254413},{"level":"log","text":"config loading..500","filename":"https://static.getbutton.io/widget-send-button/js/init.js","line_number":2,"column_number":259826}]},"http":[{"url":{"schema":"https","addr":"translate.google.com/gen204?sl=en\u0026nca=te_ap\u0026client=te\u0026logld=vTE_20260722","fqdn":"translate.google.com","domain":"google.com","tld":"com"},"ip":{"addr":"142.250.178.110","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.648Z","timestamp":1785158433648,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.google.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:35 GMT","end":"Mon, 21 Sep 2026 08:37:34 GMT"},"fingerprint":{"sha1":"2F:20:3B:91:88:65:20:CD:06:9D:0C:58:4D:17:6F:FC:9D:EC:41:83","sha256":"0C:7B:D3:23:E9:5B:D6:6B:F2:5C:71:91:4D:41:CE:E6:D7:1F:A2:F2:63:BA:25:70:1D:00:F3:C0:72:21:51:6D"}}},"request":{"raw":"GET /gen204?sl=en\u0026nca=te_ap\u0026client=te\u0026logld=vTE_20260722 HTTP/1.1\r\nHost: translate.google.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 204 \r\ncontent-type: image/gif; charset=utf-8\r\ncache-control: no-cache, no-store, max-age=0, must-revalidate\r\npragma: no-cache\r\nexpires: Mon, 01 Jan 1990 00:00:00 GMT\r\ndate: Mon, 27 Jul 2026 13:20:34 GMT\r\ncross-origin-resource-policy: cross-origin\r\np3p: CP=\"This is not a P3P policy! See g.co/p3phelp for more info.\"\r\ncross-origin-opener-policy: same-origin\r\npermissions-policy: ch-ua-arch=*, ch-ua-bitness=*, ch-ua-full-version=*, ch-ua-full-version-list=*, ch-ua-model=*, ch-ua-wow64=*, ch-ua-form-factors=*, ch-ua-platform=*, ch-ua-platform-version=*\r\ncontent-security-policy: script-src 'nonce-cWcREkRFdIbcOUaw1v71Gw' 'unsafe-inline';object-src 'none';base-uri 'self';report-uri /_/TranslateApiHttp/cspreport;worker-src 'self', require-trusted-types-for 'script';report-uri /_/TranslateApiHttp/cspreport\r\naccept-ch: Sec-CH-UA-Arch, Sec-CH-UA-Bitness, Sec-CH-UA-Full-Version, Sec-CH-UA-Full-Version-List, Sec-CH-UA-Model, Sec-CH-UA-WoW64, Sec-CH-UA-Form-Factors, Sec-CH-UA-Platform, Sec-CH-UA-Platform-Version\r\nreporting-endpoints: default=\"/_/TranslateApiHttp/web-reports?context=eJzj4tDikmJw05BiEOLmWLRt7mU2gR-_1hkpKSXlF8aXFCXmFecklqQWpxaVpRbFGxkYmRmYGxnpGRjHFxgAABHlEow\"\r\nserver: ESF\r\ncontent-length: 0\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\r\nx-content-type-options: nosniff\r\nset-cookie: __Secure-ENID=35.SE=aO3a-yQnmZTT902vncr9ZfJmHBiOlejVuB9ECl-KTXRirBYp0lVAe_AxRuFjI5OQ_RsVlZAlX6fiv-0cUhaJb2gL6Xm3DuxdEqkn2dR0pxNGb1PwcKfRh_CTDJGrLfm7aYyJlujHT_6BuHzRBov-5te8FGInZv9gRepYoiNJduCfP93hvjwcu9bo_QXQRwg_fb1hf5Undja3T_cjOtJZHKPGDk-g8UcAKHCRKE6i4Jrl; expires=Fri, 27-Aug-2027 05:38:52 GMT; path=/; domain=.google.com; Secure; HttpOnly; SameSite=lax\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"204","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"image/gif; charset=utf-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-17T23:37:29.17424Z","times_seen":17945477,"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":"translate.googleapis.com/element/log?format=json\u0026hasfast=true\u0026authuser=0","fqdn":"translate.googleapis.com","domain":"translate.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:43.483Z","timestamp":1785158443483,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"upload.video.google.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:27 GMT","end":"Mon, 21 Sep 2026 08:39:26 GMT"},"fingerprint":{"sha1":"50:37:CF:61:33:A1:EE:47:D9:3D:A6:5E:07:BA:4C:FF:F7:25:9F:76","sha256":"7D:4D:21:06:63:E2:5E:F0:8C:59:8E:EB:B7:94:2B:81:70:11:D3:F4:C0:A0:81:A6:1B:E7:27:FD:56:10:1A:11"}}},"request":{"raw":"OPTIONS /element/log?format=json\u0026hasfast=true\u0026authuser=0 HTTP/1.1\r\nHost: translate.googleapis.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nAccess-Control-Request-Method: POST\r\nAccess-Control-Request-Headers: content-encoding,content-type,x-goog-authuser\r\nReferer: https://uniz-coinzltd.com/\r\nOrigin: https://uniz-coinzltd.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"OPTIONS"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: https://uniz-coinzltd.com\r\naccess-control-allow-methods: GET, POST, OPTIONS\r\naccess-control-max-age: 86400\r\naccess-control-allow-credentials: true\r\naccess-control-allow-headers: X-Playlog-Web,authorization,content-encoding,content-type,x-goog-authuser,origin\r\ncontent-type: text/plain; charset=UTF-8\r\ndate: Mon, 27 Jul 2026 13:20:43 GMT\r\nserver: Playlog\r\ncontent-length: 0\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":525,"mime_type":"text/plain; charset=UTF-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-17T23:37:29.17424Z","times_seen":17945477,"resource_available":true,"data":""}},"time_used":32,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":32,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/startedicon4.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.569Z","timestamp":1785158432569,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/startedicon4.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=kBkOeVodqTZ%2BKqtUd5TxW28rgEOPNpdalE3RC1OYe2zbnnlRtRFGnMXhlOcOM2EEH7Lkj8zEO%2BVGIBFQP7KfI6sddcUFdzL9V2juSBWfslguVvAE4s2LztFBn6hsCNdXReML5Q%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b9c8156b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 6818\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":6818,"size_decoded":7578,"mime_type":"image/png","magic":"PNG image data, 128 x 128, 8-bit/color RGBA, non-interlaced","md5":"343e51dde16c0f09f551d0d8d232f1e2","sha1":"3597539b2619cbaeb0a1beee05173cee1eecd4b2","sha256":"f312548b951145ca7c23fc8cec454f3622cf3fdf7f2a11ea1cf3661f0408af44","sha512":"281a738acc45a9def46a798d1f921e45d937b92f52327752759578594837fc727533bd4b06ec1ed2b0cd6bf7bdb17adb7f6a005401743459c7d49620685c463c","ssdeep":"96:0Y2/HYpKysqgJBGBSaNsCeW2iN0Ws0gGXq4E5BpONIq4CZpWAQe2VJXh4GRN:0HH4KfAszZWBgESrOlchekhhRN","tlshash":"e8e19e45b91326c1808901c505fda66797071449b2faff68f8ae940495bc8fbdd0eedf","first_seen":"2024-09-19T20:45:30.986712Z","last_seen":"2026-07-27T13:21:39.08083Z","times_seen":20,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QzFEM0U5Njg4NUQ1MTFFOUI5NjlEMDY4QjI3OUM1QUEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QzFEM0U5Njk4NUQ1MTFFOUI5NjlEMDY4QjI3OUM1QUEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDMUQzRTk2Njg1RDUxMUU5Qjk2OUQwNjhCMjc5QzVBQSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDMUQzRTk2Nzg1RDUxMUU5Qjk2OUQwNjhCMjc5QzVBQSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pn8O0VcAABcWSURBVHja7F0JfBRF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"}},"time_used":15,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":15,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":true,"resource_type":"document","requested_by":"","date":"2026-07-27T13:20:30.576Z","timestamp":1785158430576,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET / HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: document\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: none\r\nPriority: u=0, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: text/html; charset=UTF-8\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\npriority: u=0,i\r\nset-cookie: CameFrom=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; secure\nPHPSESSID=cfce049cd009d6f10e0021158411991a; path=/; domain=uniz-coinzltd.com; HttpOnly; secure\r\nexpires: Thu, 19 Nov 1981 08:52:00 GMT\r\ncache-control: no-store, no-cache, must-revalidate\r\npragma: no-cache\r\nvary: Accept-Encoding\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=cJVRnWjzfQMjeF7f7QvVMU%2Btjr%2FCeM%2BfkOIfZ%2B%2FL9oSTLknDw72vzP83ohGDCDSfbC4mw4sLz5%2FpaME983LwI7ztw80ZwsEL2lOZn3ivxfhSMyaPzSNQ6Chhd48Net9Y4W0zYg%3D%3D\"}]}\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\ncf-cache-status: DYNAMIC\r\ncontent-encoding: zstd\r\ncf-ray: a21bf11f4bfa56b9-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":"Google Hosted Libraries","description":"Google Hosted Libraries is a stable, reliable, high-speed, globally available content distribution network for the most popular, open-source JavaScript libraries.","website":"https://developers.google.com/speed/libraries","common_platform_enumeration":"","icon":"Google Developers.svg","categories":["CDN"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"WOW","description":"Reveal CSS animation as you scroll down a page.","website":"https://www.delac.io/WOW","common_platform_enumeration":"","icon":"","categories":["JavaScript frameworks","Web frameworks","JavaScript graphics"]},{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"Bootstrap:3.3.7","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":"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":"BootstrapCDN:3.3.7","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:3.3.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":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":20580,"size_decoded":7056,"mime_type":"text/html; charset=UTF-8","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (1032)","md5":"87e90c20ae8fd9ce1bfa1d0527d20dc7","sha1":"cb7e455f54dc63a8b862b6fb0e105251df9f7068","sha256":"7b3c3430252289e067f15b5091a9a940174311f896892766f4f13f4ca03a70c7","sha512":"93dae581aefe6b6477ecc54a4a42283c91da30ffdda52a5f0ef40afd23f76262cc7142346ea6121862ab8f47b6e28dd150ac5d7101ba3dbe092b4b5118d84598","ssdeep":"192:4OoDDCmRHYiO+cHmk0VvCnYeqq+ABgtNY7o8dpomc+KtwSFggaVLYB8ufIJutPUY:EDCmtM+om/vZtP/Y7RpMwNkB8uwJup","tlshash":"7d924f3664f65073129290e1ba315f1f7fc6e247ca1b4a18b2fc9ad85fe2d89cc27149","first_seen":"2026-01-22T04:28:08.51002Z","last_seen":"2026-07-27T13:21:39.082199Z","times_seen":4,"resource_available":false,"data":"CjwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KCjxzY3JpcHQgc3JjPSJodHRwczovL3dpZGdldHMuY29pbmdlY2tvLmNvbS9jb2luZ2Vja28tY29pbi1wcmljZS1tYXJxdWVlLXdpZGdldC5qcyI+PC9zY3JpcHQ+Cjxjb2luZ2Vja28tY29pbi1wcmljZS1tYXJxdWVlLXdpZGdldCAgY29pbi1pZHM9ImJpdGNvaW4sZXRoZXJldW0sZW9zLHJpcHBsZSxsaXRlY29pbiIgY3VycmVuY3k9InVzZCIgYmFja2dyb3VuZC1jb2xvcj0iIzAwMDAwMCIgbG9jYWxlPSJlbiI+PC9jb2luZ2Vja28tY29pbi1wcmljZS1tYXJxdWVlLXdpZGdldD48L3NjcmlwdD4KCjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KPGhlYWQ+CjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PWlzby04ODU5LTEiIC8+Cjx0aXRsZT51bml6LWNvaW56bHRkLmNvbTwvdGl0bGU+CjxsaW5rIHJlbD0iaWNvbiIgaHJlZj0iLi4vc3R5bGVzL2ltYWdlcy9mYXZpY29uLnBuZyI+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9tYXhjZG4uYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvMy4zLjcvY3NzL2Jvb3RzdHJhcC5taW4uY3NzIj4KPGxpbmsgaHJlZj0nc3R5bGVzL2FuaW1hdGUuY3NzJyByZWw9J3N0eWxlc2hlZXQnIHR5cGU9J3RleHQvY3NzJz4KPGxpbmsgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVBsYXk6NDAwLDcwMCZkaXNwbGF5PXN3YXAiIHJlbD0ic3R5bGVzaGVldCI+CjxsaW5rIGhyZWY9J3N0eWxlcy9jdXN0b20uY3NzJyByZWw9J3N0eWxlc2hlZXQnIHR5cGU9J3RleHQvY3NzJz4KPGxpbmsgaHJlZj0nc3R5bGVzL2hvdmVyLmNzcycgcmVsPSdzdHlsZXNoZWV0JyB0eXBlPSd0ZXh0L2Nzcyc+CjxzY3JpcHQgc3JjPSJodHRwczovL2FqYXguZ29vZ2xlYXBpcy5jb20vYWpheC9saWJzL2pxdWVyeS8zLjMuMS9qcXVlcnkubWluLmpzIj48L3NjcmlwdD4KPHNjcmlwdCBzcmM9J3N0eWxlcy9zZXR0aW5nMi5qcycgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz48L3NjcmlwdD4KPHNjcmlwdCBzcmM9Imh0dHBzOi8vbWF4Y2RuLmJvb3RzdHJhcGNkbi5jb20vYm9vdHN0cmFwLzMuMy43L2pzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHNyYz0ic3R5bGVzL3dvdy5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgc3JjPSJzdHlsZXMvd293Lm1pbi5qcyI+PC9zY3JpcHQ+CjwvaGVhZD4KPGJvZHk+CjxkaXYgY2xhc3M9IndyYXBwZXIiPgo8ZGl2IGNsYXNzPSJoZWFkZXJ3cmFwIj4KICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgIDxkaXYgY2xhc3M9ImxvZ293cmFwIj4KICAgICAgPGRpdiBjbGFzcz0ibG9nbyBmYWRlSW5MZWZ0IHdvdyI+PGEgaHJlZj0iP2E9aG9tZSI+PGltZyBzcmM9Ii9sb2dvLnBuZyIgYWx0PSIiIC8+PC9hPjwvZGl2PgogICAgPGRpdiBjbGFzcz0ibGFuZ3VhZ2UiPjxkaXYgaWQ9Imdvb2dsZV90cmFuc2xhdGVfZWxlbWVudCI+PC9kaXY+Cgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CmZ1bmN0aW9uIGdvb2dsZVRyYW5zbGF0ZUVsZW1lbnRJbml0KCkgewogIG5ldyBnb29nbGUudHJhbnNsYXRlLlRyYW5zbGF0ZUVsZW1lbnQoe3BhZ2VMYW5ndWFnZTogJ2VuJ30sICdnb29nbGVfdHJhbnNsYXRlX2VsZW1lbnQnKTsKfQo8L3NjcmlwdD4KCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii8vdHJhbnNsYXRlLmdvb2dsZS5jb20vdHJhbnNsYXRlX2EvZWxlbWVudC5qcz9jYj1nb29nbGVUcmFuc2xhdGVFbGVtZW50SW5pdCI+PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L2Rpdj4KIAogPGRpdiBjbGFzcz0ibmF2d3JhcCBmYWRlSW5SaWdodCB3b3ciPgogICAgICAgIDx1bD4KICAgICAgICAgIDxsaT48YSBocmVmPSI/YT1ob21lIj5ob21lPC9hPjwvbGk+CiAgICAgICAgICA8bGk+PGEgaHJlZj0iP2E9Y3VzdCZwYWdlPWFib3V0Ij5hYm91dDwvYT48L2xpPgogICAgICAgICAgPGxpPjxhIGhyZWY9Ij9hPWZhcSI+ZmFxPC9hPjwvbGk+CiAgICAgICAgICA8bGk+PGEgaHJlZj0iL2NlcnQuanBlZyI+Q29tcGFueSBDZXJ0aWZpY2F0ZTwvYT48L2xpPgogICAgICAgICAgPGxpPjxhIGhyZWY9Ij9hPWN1c3QmcGFnZT1hZmZpbGlhdGUiPmFmZmlsaWF0ZXM8L2E+PC9saT4KICAgICAgICAgIDxsaT48YSBocmVmPSI/YT1zdXBwb3J0Ij5zdXBwb3J0PC9hPjwvbGk+CgkJICAgICAgICAgICAgPGxpIGNsYXNzPSJsb2dpbiI+PGEgaHJlZj0iP2E9bG9naW4iPmxvZ2luPC9hPjwvbGk+CiAgICAgICAgICA8bGkgY2xhc3M9InNpZ251cCI+PGEgaHJlZj0iP2E9c2lnbnVwIj5yZWdpc3RlcjwvYT48L2xpPgoJCSAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCQoJCiAgICA8ZGl2IGNsYXNzPSJiYW5uZXJ3cmFwIj4KICAgICAgPGRpdiBjbGFzcz0iYmFubmVybGVmdCI+Jm5ic3A7PC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImJhbm5lcnJpZ2h0Ij4KICAgICAgICA8aDEgY2xhc3M9ImJvdW5jZUluRG93biB3b3ciPldFTENPTUUgVE8gdW5pei1jb2luemx0ZC5jb20gV0lUSCA8c3Bhbj5TTUFSVCBJREVBUzwvc3Bhbj48L2gxPgogICAgICAgIDxwIGNsYXNzPSJib3VuY2VJbkRvd24gd293Ij5Qcm9mZXNzaW9uYWwgVHJhZGluZyBPbiBDcnlwdG9jdXJyZW5jeSwgCiAgICAgICAgICBNYWtlIFByb2ZpdCBPbiBNb25leSBPZiBUaGUgRnV0dXJlIFRvZGF5ITwvcD4KICAgICAgICA8YSBocmVmPSI/YT1zaWdudXAiIGNsYXNzPSJib3VuY2VJbkRvd24gd293IGh2ci1mbG9hdC1zaGFkb3ciPmpvaW4gdXMgbm93PC9hPgogICAgICAgIDxhIGhyZWY9Ii9jb21wYW55LnBkZiIgY2xhc3M9ImJvdW5jZUluRG93biB3b3cgaHZyLWZsb2F0LXNoYWRvdyI+Q29tcGFueSBQREY8L2E+CiAgICAgICAgPGRpdiBjbGFzcz0icmVnaXN0ZXJlZCBib3VuY2VJblVwIHdvdyI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJsZWZ0Ij4KICAgICAgICAgICAgPGg0PnVuaXotY29pbnpsdGQuY29tIGlzIHJlZ2lzdGVyZWQgaW4gdGhlIDxzcGFuPlVLPC9zcGFuPjwvaDQ+CiAgICAgICAgICAgIDxwPk91ciBjb21wYW55IHdhcyBmb3JtZWQgdG8gdXRpbGl6ZSBhZHZhbmNlZCBjbG91ZCBtaW5pbmcgdGVjaG5vbG9neSB0byBtaW5lIGZvciBDcnlwdG9jdXJyZW5jaWVzLjwvcD4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0icmlnaHQiPjxpbWcgc3JjPSJzdHlsZXMvaW1hZ2VzL3JlZ2lzdGVyZWQucG5nIiBhbHQ9IiIgLz48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJpbnZlc3RtZW50d3JhcCI+CiAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgPGRpdiBjbGFzcz0ic3RhdHdyYXAiPgogICAgICAgIDxkaXYgY2xhc3M9InN0YXRib3giPgogICAgICAgICAgPGRpdiBjbGFzcz0iaWNvbiB6b29tSW4gd293Ij48aW1nIHNyYz0ic3R5bGVzL2ltYWdlcy9zdGF0aWNvbjEucG5nIiBjbGFzcz0iaHZyLWJvYiIgYWx0PSIiIC8+PC9kaXY+CiAgICAgICAgICA8aDMgY2xhc3M9ImJvdW5jZUluVXAgd293Ij4yOTIzPC9oMz4KICAgICAgICAgIDxwIGNsYXNzPSJib3VuY2VJblVwIHdvdyI+UnVubmluZyBEYXlzPC9wPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InN0YXRib3giPgogICAgICAgICAgPGRpdiBjbGFzcz0iaWNvbiB6b29tSW4gd293Ij48aW1nIHNyYz0ic3R5bGVzL2ltYWdlcy9zdGF0aWNvbjIucG5nIiBjbGFzcz0iaHZyLWJvYiIgYWx0PSIiIC8+PC9kaXY+CiAgICAgICAgICA8aDMgY2xhc3M9ImJvdW5jZUluVXAgd293Ij4kMzk2MzU4Mjc8L2gzPgogICAgICAgICAgPHAgY2xhc3M9ImJvdW5jZUluVXAgd293Ij5Ub3RhbCBEZXBvc2l0ZWQ8L3A+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ic3RhdGJveCI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJpY29uIHpvb21JbiB3b3ciPjxpbWcgc3JjPSJzdHlsZXMvaW1hZ2VzL3N0YXRpY29uMy5wbmciIGNsYXNzPSJodnItYm9iIiBhbHQ9IiIgLz48L2Rpdj4KICAgICAgICAgIDxoMyBjbGFzcz0iYm91bmNlSW5VcCB3b3ciPiQgOTE2ODc2OTMzMjk8L2gzPgogICAgICAgICAgPHAgY2xhc3M9ImJvdW5jZUluVXAgd293Ij5Ub3RhbCBXaXRoZHJhd2FsPC9wPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InN0YXRib3giPgogICAgICAgICAgPGRpdiBjbGFzcz0iaWNvbiB6b29tSW4gd293Ij48aW1nIHNyYz0ic3R5bGVzL2ltYWdlcy9zdGF0aWNvbjQucG5nIiBjbGFzcz0iaHZyLWJvYiIgYWx0PSIiIC8+PC9kaXY+CiAgICAgICAgICA8aDMgY2xhc3M9ImJvdW5jZUluVXAgd293Ij45MDg3NTwvaDM+CiAgICAgICAgICA8cCBjbGFzcz0iYm91bmNlSW5VcCB3b3ciPlRvdGFsIEFjY291bnRzPC9wPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0icGxhbnN3cmFwIj4KICAgICAgICA8aDIgY2xhc3M9ImZhZGVJbiB3b3ciPm91ciA8c3Bhbj5pbnZlc3RtZW50PC9zcGFuPiBwbGFuczwvaDI+CiAgICAgICAgPGRpdiBjbGFzcz0icGxhbmxpc3RpbmdzIj4KICAgICAgICAgIDxkaXYgY2xhc3M9InBsYW5ib3ggYm91bmNlSW5Eb3duIHdvdyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBsYW5sZWZ0Ij4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpY29uIj48aW1nIHNyYz0ic3R5bGVzL2ltYWdlcy9wbGFuaWNvbjEucG5nIiBhbHQ9IiIgY2xhc3M9Imh2ci1mb3J3YXJkIiAvPjwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBsYW5uYW1lIj4KICAgICAgICAgICAgICAgIDxoND5QTEFOIDEgPC9oND48aDM+MjAlPC9oMz4KICAgICAgICAgICAgICAgIDxoNT5BRlRFUiAyNCBIb3VyczwvaDU+CiAgICAgICAgICAgICAgICA8cD5JbnN0YW50IFdpdGhkcmF3YWxzPC9wPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhbnJpZ2h0Ij4KICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICA8bGk+VG90YWwgcmV0dXJuIDogMjAlPC9saT4KICAgICAgICAgICAgICAgIDxsaT5NaW4gRGVwb3NpdDogJDEwMDwvbGk+CiAgICAgICAgICAgICAgICA8bGk+UHJpbmNpcGFsIGluY2x1ZGVkPC9saT4KICAgICAgICAgICAgICAgIDxsaT5NYXggRGVwb3NpdDogJDQsOTk5PC9saT4KICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0icGxhbmJveCBib3VuY2VJbkRvd24gd293Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhbmxlZnQiPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Imljb24iPjxpbWcgc3JjPSJzdHlsZXMvaW1hZ2VzL3BsYW5pY29uMi5wbmciIGFsdD0iIiBjbGFzcz0iaHZyLWZvcndhcmQiIC8+PC9kaXY+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhbm5hbWUiPgogICAgICAgICAgICAgICAgPGg0PlBMQU4gMjwvaDQ+PGgzPjMwJTwvaDM+CiAgICAgICAgICAgICAgICA8aDU+QUZURVIgMzggSG91cnM8L2g1PgogICAgICAgICAgICAgICAgPHA+SW5zdGFudCBXaXRoZHJhd2FsczwvcD4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBsYW5yaWdodCI+CiAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgPGxpPlRvdGFsIHJldHVybiA6IDMwJTwvbGk+CiAgICAgICAgICAgICAgICA8bGk+TWluIERlcG9zaXQ6ICQ1LE9PTzwvbGk+CiAgICAgICAgICAgICAgICA8bGk+UHJpbmNpcGFsIGluY2x1ZGVkPC9saT4KICAgICAgICAgICAgICAgIDxsaT5NYXggRGVwb3NpdDogJDE5LDk5OTwvbGk+CiAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InBsYW5ib3ggYm91bmNlSW5Eb3duIHdvdyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBsYW5sZWZ0Ij4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpY29uIj48aW1nIHNyYz0ic3R5bGVzL2ltYWdlcy9wbGFuaWNvbjMucG5nIiBhbHQ9IiIgY2xhc3M9Imh2ci1mb3J3YXJkIiAvPjwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBsYW5uYW1lIj4KICAgICAgICAgICAgICAgIDxoND5QTEFOIDM8L2g0PjxoMz4gNDAlPC9oMz4KICAgICAgICAgICAgICAgIDxoNT5BRlRFUiA3MiBIb3VyczwvaDU+CiAgICAgICAgICAgICAgICA8cD5JbnN0YW50IFdpdGhkcmF3YWxzPC9wPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhbnJpZ2h0Ij4KICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICA8bGk+VG90YWwgcmV0dXJuIDogNDAlPC9saT4KICAgICAgICAgICAgICAgIDxsaT5NaW4gRGVwb3NpdDogJDIwLDAwMDwvbGk+CiAgICAgICAgICAgICAgICA8bGk+UHJpbmNpcGFsIGluY2x1ZGVkPC9saT4KICAgICAgICAgICAgICAgIDxsaT5NYXggRGVwb3NpdDogJDQ5LDk5OTwvbGk+CiAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InBsYW5ib3ggYm91bmNlSW5Eb3duIHdvdyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBsYW5sZWZ0Ij4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpY29uIj48aW1nIHNyYz0ic3R5bGVzL2ltYWdlcy9wbGFuaWNvbjQucG5nIiBhbHQ9IiIgY2xhc3M9Imh2ci1mb3J3YXJkIiAvPjwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBsYW5uYW1lIj4KICAgICAgICAgICAgICAgIDxoND5QTEFOIDQgPC9oND48aDM+NzAlPC9oMz4KICAgICAgICAgICAgICAgIDxoNT5BRlRFUiA0IERheXM8L2g1PgogICAgICAgICAgICAgICAgPHA+SW5zdGFudCBXaXRoZHJhd2FsczwvcD4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBsYW5yaWdodCI+CiAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgPGxpPlRvdGFsIHJldHVybiA6IDcwJTwvbGk+CiAgICAgICAgICAgICAgICA8bGk+TWluIERlcG9zaXQ6ICQ1MCwwMDA8L2xpPgogICAgICAgICAgICAgICAgPGxpPlByaW5jaXBhbCBpbmNsdWRlZDwvbGk+CiAgICAgICAgICAgICAgICA8bGk+TWF4IERlcG9zaXQ6ICQ5OSw5OTk8L2xpPgogICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFuYm94IGJvdW5jZUluRG93biB3b3ciPgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhbmxlZnQiPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Imljb24iPjxpbWcgc3JjPSJzdHlsZXMvaW1hZ2VzL3BsYW5pY29uNS5wbmciIGFsdD0iIiBjbGFzcz0iaHZyLWZvcndhcmQiIC8+PC9kaXY+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhbm5hbWUiPgogICAgICAgICAgICAgICAgPGg0PlBMQU4gNTwvaDQ+CiAgICAgICAgICAgICAgICA8aDM+MTAwJTwvaDM+CiAgICAgICAgICAgICAgICA8aDU+QUZURVIgNyBEQVlTPC9oNT4KICAgICAgICAgICAgICAgIDxwPkluc3RhbnQgV2l0aGRyYXdhbHM8L3A+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFucmlnaHQiPgogICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgIDxsaT5Ub3RhbCByZXR1cm4gOiAxMDAlPC9saT4KICAgICAgICAgICAgICAgIDxsaT5NaW4gRGVwb3NpdDogJDEwMCwwMDA8L2xpPgogICAgICAgICAgICAgICAgPGxpPlByaW5jaXBhbCBpbmNsdWRlZDwvbGk+CiAgICAgICAgICAgICAgICA8bGk+TWF4IERlcG9zaXQ6ICQxLDAwMCwwMDA8L2xpPgogICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iY2Fsc3dyYXAiPgogICAgICAgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OjQzM3B4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGOyBvdmVyZmxvdzpoaWRkZW47IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IGJvcmRlcjogMXB4IHNvbGlkICM1NjY2N0Y7IGJvcmRlci1yYWRpdXM6IDRweDsgdGV4dC1hbGlnbjogcmlnaHQ7IGxpbmUtaGVpZ2h0OjE0cHg7IGZvbnQtc2l6ZTogMTJweDsgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBub3JtYWw7IHRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IGJveC1zaGFkb3c6IGluc2V0IDAgLTIwcHggMCAwICM1NjY2N0Y7IHBhZGRpbmc6IDBweDsgbWFyZ2luOiAwcHg7IHdpZHRoOiAxMDAlOyI+PGRpdiBzdHlsZT0iaGVpZ2h0OjQxM3B4OyBwYWRkaW5nOjBweDsgbWFyZ2luOjBweDsgd2lkdGg6IDEwMCU7Ij48aWZyYW1lIHNyYz0iaHR0cHM6Ly93aWRnZXQuY29pbmxpYi5pby93aWRnZXQ/dHlwZT1mdWxsX3YyJnRoZW1lPWxpZ2h0JmNudD02JnByZWZfY29pbl9pZD0xNTA1JmdyYXBoPXllcyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iNDA5cHgiIHNjcm9sbGluZz0iYXV0byIgbWFyZ2lud2lkdGg9IjAiIG1hcmdpbmhlaWdodD0iMCIgZnJhbWVib3JkZXI9IjAiIGJvcmRlcj0iMCIgc3R5bGU9ImJvcmRlcjowO21hcmdpbjowO3BhZGRpbmc6MDsiPjwvaWZyYW1lPjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiAjRkZGRkZGOyBsaW5lLWhlaWdodDogMTRweDsgZm9udC13ZWlnaHQ6IDQwMDsgZm9udC1zaXplOiAxMXB4OyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBwYWRkaW5nOiAycHggNnB4OyB3aWR0aDogMTAwJTsgZm9udC1mYW1pbHk6IFZlcmRhbmEsIFRhaG9tYSwgQXJpYWwsIHNhbnMtc2VyaWY7Ij48YSBocmVmPSJodHRwczovL2NvaW5saWIuaW8iIHRhcmdldD0iX2JsYW5rIiBzdHlsZT0iZm9udC13ZWlnaHQ6IDUwMDsgY29sb3I6ICNGRkZGRkY7IHRleHQtZGVjb3JhdGlvbjpub25lOyBmb250LXNpemU6MTFweCI+Q3J5cHRvY3VycmVuY3kgUHJpY2VzPC9hPiZuYnNwO2J5IENvaW5saWI8L2Rpdj48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJ3ZWxjb21ld3JhcCI+CiAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgPGRpdiBjbGFzcz0id2VsY29jbWVsZWZ0Ij4KICAgICAgICA8aDEgY2xhc3M9ImZhZGVJbkxlZnQgd293Ij5XRUxDT01FIFRPIHVuaXotY29pbnpsdGQuY29tPC9oMT4KICAgICAgICA8aDMgY2xhc3M9ImZhZGVJbkxlZnQgd293Ij51bml6LWNvaW56bHRkLmNvbSBpcyBhIHRydWUgb3Bwb3J0dW5pdHkgdG8gZWFybiBvbiBjcnlwdG9jdXJyZW5jeS48L2gzPgogICAgICAgIDxwIGNsYXNzPSJmYWRlSW5MZWZ0IHdvdyI+Tm93YWRheXMgY3J5cHRvY3VycmVuY3kgaXMgb25lIG9mIHRoZSBtYWluIHBheW1lbnQgaW5zdHJ1bWVudHMsIHdoaWNoIGNhbiBiZSB1c2VkIG9ubGluZS4gdW5pei1jb2luemx0ZC5jb20gaGFzIGJlZW4gdXNpbmcgdGhpcyBraW5kIG9mIGRpZ2l0YWwgcGF5bWVudCBmb3IgcXVpdGUgYSB3aGlsZSB0byBnYWluIGFuZCByYWlzZSBwcm9maXQuPC9wPgogICAgICAgIDxwIGNsYXNzPSJmYWRlSW5MZWZ0IHdvdyI+dW5pei1jb2luemx0ZC5jb20sIGlzIGFuIG9mZmljaWFsbHkgcmVnaXN0ZXJlZCBjb21wYW55IHdoaWNoIGdpdmVzIGl0cyBjbGllbnRzIGFsbCByZXF1aXJlZCBndWFyYW50ZWVzLCBpbmNsdWRpbmcgY29uZmlkZW50aWFsaXR5IG9mIGRhdGEgcHJvdmlkZWQgYnkgY2xpZW50cyBhdCB0aGUgcmVnaXN0cmF0aW9uIHByb2NlZHVyZS4gQXBhcnQgZnJvbSB0aGlzIHdlIGd1YXJhbnRlZSBhY2NydWFsIG9mIHJlcXVlc3RlZCBwYXltZW50cyBpbiBkdWUgdGltZSBhbmQgZnVsbCBhbW91bnQuIFRoZSBjb21wYW55J3Mgc3lzdGVtLCBpbmNsdWRpbmcgc3VwcG9ydCBzZXJ2aWNlLCB3b3JrcyAyNCBob3Vycywgd2hpY2ggbWVhbnMgeW91IGFyZSBhbHdheXMgd2VsY29tZSB0byBjb250YWN0IG91ciBleHBlcnRzIGluIGNhc2UgeW91IGhhdmUgYW55IHF1ZXN0aW9ucy48L3A+CiAgICAgICAgPHAgY2xhc3M9ImZhZGVJbkxlZnQgd293Ij51bml6LWNvaW56bHRkLmNvbSwgcHJvdmlkZXMgaXRzIGNsaWVudHMgd2l0aCBhbiBvcHBvcnR1bml0eSB0byBpbnZlc3QgbW9uZXkgaW50byBtaW5pbmcgZmFybXMgbG9jYXRlZCBhbGwgYXJvdW5kIHRoZSB3b3JsZCB0byBvYnRhaW4gcXVpdGUgYSBiaWcgaW5jb21lIGxhdGVyLCB3aGljaCBjYW4gYmUgZG9uZSBldmVuIHdpdGhvdXQgY2xpZW50J3MgZGlyZWN0IHBhcnRpY2lwYXRpb24uIFRoZSBjb21wYW55IGFjdGl2ZWx5IHVzZXMgdHJhZGluZyBib3RzIG9uIGRpZ2l0YWwgY3VycmVuY3kgc3RvY2stbWFya2V0cywgd2hpY2ggaXMgdmVyeSBjb252ZW5pZW50IGFuZCBwcm9maXRhYmxlLiBXZSBhbHNvIHRyeSB0byBhdHRyYWN0IG5ldyBwYXJ0bmVycyBhbmQgc2hhcmUgb3VyIGV4cGVyaWVuY2Ugd2l0aCB0aGUgbGlrZS1taW5kZWQgcGVvcGxlIGFsbCBvdmVyIHRoZSB3b3JsZC48L3A+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJ3ZWxjb21lcmlnaHQgem9vbUluIHdvdyI+CiAgICAgICAgICAgIAk8ZGl2IGNsYXNzPSJ2aWRlbyI+CiAgICAgICAgICAgICAgICAJCgkJCQkJCgkJCQk8aWZyYW1lIHdpZHRoPSI1NjAiIGhlaWdodD0iMzE1IiBzcmM9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkLzRla09jREcyRDhFIiBmcmFtZWJvcmRlcj0iMCIgYWxsb3c9ImFjY2VsZXJvbWV0ZXI7IGF1dG9wbGF5OyBlbmNyeXB0ZWQtbWVkaWE7IGd5cm9zY29wZTsgcGljdHVyZS1pbi1waWN0dXJlIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+CgkJCSAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InN0YXJ0ZWR3cmFwIj4KICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICA8aDIgY2xhc3M9ImZhZGVJbiB3b3ciPmdldHRpbmcgPHNwYW4+c3RhcnRlZDwvc3Bhbj48L2gyPgogICAgICA8ZGl2IGNsYXNzPSJzdGFydGVkYm94IG9kZCBmbGlwSW5YIHdvdyI+CiAgICAgICAgPGRpdiBjbGFzcz0iaWNvbiI+MTwvZGl2PgogICAgICAgIDxoMz5PcGVuIGFuIGFjY291bnQ8L2gzPgogICAgICAgIDxkaXYgY2xhc3M9ImxlZnQiPgogICAgICAgICAgPHA+VG8gb3BlbiBhbiBhY2NvdW50LCBzaW1wbHkgY2xpY2sgb24gdGhlIG9uIFJlZ2lzdGVyIE5ldyBBY2NvdW50IGJ1dHRvbiBvbiB0aGUgbWFpbiBwYWdlLiBUaGUgbmV4dCBwYWdlIGlzIHRoZSByZWdpc3RyYXRpb24gZm9ybSB0aGF0IHlvdSBuZWVkIHRvIGZpbGwgb3V0LiBUaGlzIHNob3VsZG4ndCB0YWtlIG1vcmUgdGhhbiBhIGZldyBtaW51dGVzLiBPbmNlIHlvdSd2ZSBkb25lIHRoYXQsIHlvdSdsbCByZWNlaXZlIGFuIGVtYWlsICBmcm9tIHVzLCBhbmQgeW91IGFyZSBkb25lLiBZb3UgYXJlIG5vdyBhbiBvZmZpY2lhbCBtZW1iZXIgb2Ygb3VyIHNpdGUhPC9wPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InJpZ2h0IGh2ci1iYWNrd2FyZCI+PGltZyBzcmM9InN0eWxlcy9pbWFnZXMvc3RhcnRlZGljb24xLnBuZyIgYWx0PSIiIC8+PC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzdGFydGVkYm94IGV2ZW4gZmxpcEluWCB3b3ciPgogICAgICAgIDxkaXYgY2xhc3M9Imljb24iPjI8L2Rpdj4KICAgICAgICA8aDM+TG9naW4gdG8gbWVtYmVyIGFyZWE8L2gzPgogICAgICAgIDxkaXYgY2xhc3M9ImxlZnQiPgogICAgICAgICAgPHA+VGhlIG5leHQgdGhpbmcgd291bGQgYmUgdG8gZmFtaWxpYXJpemUgeW91cnNlbGYgd2l0aCBob3cgZGlmZmVyZW50IHNlY3Rpb25zIG9mIHlvdXIgYWNjb3VudCB3b3Jrcy4gR28gdG8gdGhlIGxvZ2luIHBhZ2UgYW5kIGVudGVyIHlvdXIgcmVnaXN0cmF0aW9uIHVzZXJuYW1lIGFuZCBjaG9zZW4gcGFzc3dvcmQuIEFmdGVyIHlvdSBhcmUgbG9nZ2VkIGluLCB5b3UgY2FuIGV4cGxvcmUgeW91ciBhY2NvdW50IGFuZCBnZXQgYSBmZWVsIG9mIGhvdyBldmVyeXRoaW5nIHdvcmtzLCBzdWNoIGFzIG1ha2luZyBkZXBvc2l0cywgcmVxdWVzdGluZyB3aXRoZHJhd2FscywgZXRjLjwvcD4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJyaWdodCBodnItYmFja3dhcmQiPjxpbWcgc3JjPSJzdHlsZXMvaW1hZ2VzL3N0YXJ0ZWRpY29uMi5wbmciIGFsdD0iIiAvPjwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic3RhcnRlZGJveCBvZGQgZmxpcEluWCB3b3ciPgogICAgICAgIDxkaXYgY2xhc3M9Imljb24iPjM8L2Rpdj4KICAgICAgICA8aDM+TWFrZSB5b3VyIGZpcnN0IGRlcG9zaXQ8L2gzPgogICAgICAgIDxkaXYgY2xhc3M9ImxlZnQiPgogICAgICAgICAgPHA+VG8gc3RhcnQgZ3Jvd2luZyB5b3VyIENhcGl0YWwsIHlvdSBuZWVkIHRvIG1ha2UgYSBkZXBvc2l0LiBZb3UgY2FuIGRvIHRoaXMgZnJvbSB0aGUgZGVwb3NpdCBzZWN0aW9uIG9mIHlvdXIgYWNjb3VudC4gVGhlcmUgYXJlIDUgaW52ZXN0bWVudCBwbGFucyByYW5naW5nIGZyb20gMTAlLTcwJSBkZXBlbmRpbmcgb24gdGhlIGFtb3VudCBvZiB5b3VyIGRlcG9zaXQuIFRoZSBtaW5pbXVtIGRlcG9zaXQgYW1vdW50IGlzICQxMDAwLCBhbmQgeW91IGFyZSBhbGxvd2VkIHRvIG1ha2UgYXMgbWFueSBkZXBvc2l0cyBhcyB5b3Ugd2FudC4gPC9wPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InJpZ2h0IGh2ci1iYWNrd2FyZCI+PGltZyBzcmM9InN0eWxlcy9pbWFnZXMvc3RhcnRlZGljb24zLnBuZyIgYWx0PSIiIC8+PC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzdGFydGVkYm94IGV2ZW4gZmxpcEluWCB3b3ciPgogICAgICAgIDxkaXYgY2xhc3M9Imljb24iPjQ8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJsZWZ0Ij4KICAgICAgICAgIDxoMz5XYXRjaCB5b3VyIGNhcGl0YWwgZ3Jvd3RoPC9oMz4KICAgICAgICAgIDxwPkFmdGVyIHlvdSBoYXZlIG1hZGUgYSBkZXBvc2l0LCB0aGVyZSBpcyBub3RoaW5nIGVsc2UgdG8gZG8gZXhjZXB0IHdhdGNoIHlvdXIgZWFybmluZ3MgZ3JvdyBpbiB5b3VyIGFjY291bnQgZXZlcnkgZGF5LiBUaGlzIGNhbiBiZSBmdW4sIGJlY2F1c2UgaXQgbWVhbnMgeW91IGNhbiBiZSBhbnl3aGVyZSB5b3Ugd2FudCB0byBiZSBpbiB0aGUgd29ybGQsIGFuZCB5b3VyIGZ1bmRzIHdpbGwgc3RpbGwgYmUgZ3Jvd2luZyBpbiB5b3VyIGFjY291bnQgZXZlcnkgZGF5LCBldmVuIHdpdGhvdXQgeW91IGRvaW5nIGFueXRoaW5nISA8L3A+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icmlnaHQgaHZyLWJhY2t3YXJkIj48aW1nIHNyYz0ic3R5bGVzL2ltYWdlcy9zdGFydGVkaWNvbjQucG5nIiBhbHQ9IiIgLz48L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InN0YXJ0ZWRib3ggb2RkIGZsaXBJblggd293Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJpY29uIj41PC9kaXY+CiAgICAgICAgPGgzPlJlcXVlc3Qgd2l0aGRyYXdhbDwvaDM+CiAgICAgICAgPGRpdiBjbGFzcz0ibGVmdCI+CiAgICAgICAgICA8cD5JdCBvbmx5IHRha2VzIGEgZmV3IHNlY29uZHMgdG8gaW5pdGlhdGUgeW91ciB3aXRoZHJhd2FscyBhbmQgaGF2ZSB5b3VyIGVhcm5pbmdzIHBhaWQgdG8geW91LiBBbGwgb2Ygb3VyIHdpdGhkcmF3YWxzIGFyZSBpbnN0YW50LCBhbmQgeW91ciB3aXRoZHJhd2FsIHdpbGwgYmUgc2VudCB0byB0aGUgV2FsbGV0IGFkZHJlc3MgeW91IHByb3ZpZGVkIGR1cmluZyByZWdpc3RyYXRpb24uIDwvcD4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJyaWdodCBodnItYmFja3dhcmQiPjxpbWcgc3JjPSJzdHlsZXMvaW1hZ2VzL3N0YXJ0ZWRpY29uNS5wbmciIGFsdD0iIiAvPjwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic3RhcnRlZGJveCBldmVuIGZsaXBJblggd293Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJpY29uIj42PC9kaXY+CiAgICAgICAgPGgzPlJlZmVyIHlvdXIgZnJpZW5kczwvaDM+CiAgICAgICAgPGRpdiBjbGFzcz0ibGVmdCI+CiAgICAgICAgICA8cD5Zb3UgZG9uJ3QgbmVlZCBhbiBhY3RpdmUgZGVwb3NpdCB0byB0YWtlIGFkdmFudGFnZSBvZiBvdXIgcmVmZXJyYWwgcHJvZ3JhbS4gQXMgbG9uZyBhcyB5b3UgYXJlIGEgcmVnaXN0ZXJlZCBtZW1iZXIsIHlvdSBvbmx5IG5lZWQgdG8gdXNlIHlvdXIgcGVyc29uYWwgYWZmaWxpYXRlIGxpbmsgZnJvbSB5b3VyIG1lbWJlcidzIGFyZWEgYW5kIHNoYXJlIGl0IHdpdGggeW91ciBmcmllbmRzLiBZb3Ugd2lsbCBnZXQgcmV3YXJkZWQgYXMgc29vbiBhcyB0aGV5IGpvaW4gYW5kIG1ha2UgdGhlaXIgZmlyc3QgZGVwb3NpdCEgPC9wPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InJpZ2h0IGh2ci1iYWNrd2FyZCI+PGltZyBzcmM9InN0eWxlcy9pbWFnZXMvc3RhcnRlZGljb242LnBuZyIgYWx0PSIiIC8+PC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgPC9kaXY+CiAgIDxjZW50ZXI+PGgyIHN0eWxlPSJjb2xvcjp3aGl0ZTsiPkJMT0NLQ0hBSU4gVFJBTlNBQ1RJT05TPC9oMj48L2NlbnRlcj48QlI+CiAgICA8Q0VOVEVSPjxpZnJhbWUgc3JjPSJodHRwczovL3d3dy5idGN3aWRnZXQuaW5mby93aWRnZXQvbGl2ZVR4LyUyM2Y3ZjdmNy8lMjNmZmZmZmYvJTIzMDAwMDAwLyUyMzFmMWQxOS8lMjNmZmZmZmYvMTE1MC80NTAvNyIgd2lkdGg9IjExNTAiIGhlaWdodD0iNDUwIiBmcmFtZUJvcmRlcj0iMCIgc2Nyb2xsaW5nPSJubyI+PC9pZnJhbWU+PC9DRU5URVI+CgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvZGl2PgogIDxkaXYgY2xhc3M9ImZlYXR1cmVzd3JhcCI+CiAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgPGgyIGNsYXNzPSJmYWRlSW4gd293Ij51bml6LWNvaW56bHRkLmNvbSA8c3Bhbj5GZWF0dXJlczwvc3Bhbj48L2gyPgogICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlc2JveCBmYWRlSW5MZWZ0IHdvdyI+CiAgICAgICAgPGRpdiBjbGFzcz0ibGVmdCBodnItZm9yd2FyZCI+PGltZyBzcmM9InN0eWxlcy9pbWFnZXMvZmVhdHVyZWRpY29uMS5wbmciIGFsdD0iIiAvPjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InJpZ2h0Ij4KICAgICAgICAgIDxoND4yNC83IEN1c3RvbWVyIFN1cHBvcnQ8L2g0PgogICAgICAgICAgPHA+V2UgcHJvdmlkZSAyNC83IGN1c3RvbWVyIHN1cHBvcnQgdGhyb3VnaCBlLW1haWwuIE91ciBzdXBwb3J0IHJlcHJlc2VudGF0aXZlcyBhcmUgYWx3YXlzIGF2YWlsYWJsZSB0byBhbnN3ZXIgYW55IHF1ZXN0aW9ucy4gPC9wPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZXNib3ggZmFkZUluRG93biB3b3ciPgogICAgICAgIDxkaXYgY2xhc3M9ImxlZnQgaHZyLWZvcndhcmQiPjxpbWcgc3JjPSJzdHlsZXMvaW1hZ2VzL2ZlYXR1cmVkaWNvbjIucG5nIiBhbHQ9IiIgLz48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJyaWdodCI+CiAgICAgICAgICA8aDQ+RGVkaWNhdGVkIFNlcnZlcjwvaDQ+CiAgICAgICAgICA8cD5XZSB1c2UgYSBkZWRpY2F0ZWQgc2VydmVyIHdpdGggdGhlIGhpZ2hlc3QgbGV2ZWwgb2YgRERPUyBwcm90ZWN0aW9uIHRvIGVuc3VyZSB0aGF0IHlvdXIgZnVuZHMgYXJlIGFsd2F5cyBzYWZlIHdpdGggdXMuIDwvcD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmVzYm94IGZhZGVJblJpZ2h0IHdvdyI+CiAgICAgICAgPGRpdiBjbGFzcz0ibGVmdCBodnItZm9yd2FyZCI+PGltZyBzcmM9InN0eWxlcy9pbWFnZXMvZmVhdHVyZWRpY29uMy5wbmciIGFsdD0iIiAvPjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InJpZ2h0Ij4KICAgICAgICAgIDxoND5FViBTU0w8L2g0PgogICAgICAgICAgPHA+T3VyIHdlYnNpdGUgaXMgc2VjdXJlZCB3aXRoIDI1Ni1iaXQgZW5jcnlwdGlvbiBmcm9tIENvbW9kbyB3aXRoIEV4dGVuZGVkIFZhbGlkYXRpb24gdGhhdCB2ZXJpZmllcyB0aGUgYXV0aGVudGljaXR5IG9mIG91ciBjb21wYW55LiA8L3A+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlc2JveCBmYWRlSW5MZWZ0IHdvdyI+CiAgICAgICAgPGRpdiBjbGFzcz0ibGVmdCBodnItZm9yd2FyZCI+PGltZyBzcmM9InN0eWxlcy9pbWFnZXMvZmVhdHVyZWRpY29uNC5wbmciIGFsdD0iIiAvPjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InJpZ2h0Ij4KICAgICAgICAgIDxoND5VSyBSZWdpc3RlcmVkIENvbXBhbnk8L2g0PgogICAgICAgICAgPHA+T3VyIGNvbXBhbnkgaXMgbGVnYWxseSByZWdpc3RlcmVkIGluIHRoZSBVSyBhcyB1bml6LWNvaW56bHRkLmNvbS48L3A+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8IS0tPGRpdiBjbGFzcz0iZmVhdHVyZXNib3ggZmFkZUluVXAgd293Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJsZWZ0IGh2ci1mb3J3YXJkIj48aW1nIHNyYz0ic3R5bGVzL2ltYWdlcy9mZWF0dXJlZGljb241LnBuZyIgYWx0PSIiIC8+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icmlnaHQiPgogICAgICAgICAgPGg0Pkluc3RhbnQgV2l0aGRyYXdhbHM8L2g0PgogICAgICAgICAgPHA+T3VyIHdpdGhkcmF3YWxzIGFyZSBhbGwgcHJvY2Vzc2VkIGluc3RhbnRseSBhZnRlciB0aGV5IGFyZSByZXF1ZXN0ZWQgLiBNaW5pbXVtIHdpdGhkcmF3YWwgaXMgb25seSAkMi48L3A+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2Pi0tPgogICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlc2JveCBmYWRlSW5SaWdodCB3b3ciPgogICAgICAgIDxkaXYgY2xhc3M9ImxlZnQgaHZyLWZvcndhcmQiPjxpbWcgc3JjPSJzdHlsZXMvaW1hZ2VzL2ZlYXR1cmVkaWNvbjYucG5nIiBhbHQ9IiIgLz48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJyaWdodCI+CiAgICAgICAgICA8aDQ+RERvUyBQcm90ZWN0ZWQgU3lzdGVtPC9oND4KICAgICAgICAgIDxwPldlIHVzZSB0aGUgaGlnaGVzdCBsZXZlbCBvZiBwcm90ZWN0aW9uIC4gT3VyIHdlYnNpdGUgY2FuIHJlc2lzdHMgYXR0YWNrcyBvZiBhbnkgc2l6ZS4gPC9wPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InJlZmVycmFsd3JhcCI+CiAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgPGRpdiBjbGFzcz0iaWNvbiBib3VuY2VJbkRvd24gd293Ij48aW1nIHNyYz0ic3R5bGVzL2ltYWdlcy9yZWZlcnJhbGljb24ucG5nIiBjbGFzcz0iaHZyLWJvYiIgYWx0PSIiIC8+PC9kaXY+CiAgICAgIDxoMyBjbGFzcz0iem9vbUluIHdvdyI+NSUgPHNwYW4+UmVmZXJyYWw8L3NwYW4+IEJvbnVzPC9oMz4KICAgICAgPHAgY2xhc3M9ImZhZGVJblVwQmlnIHdvdyI+V2Ugb2ZmZXIgNSUgcmVmZXJyYWwgYm9udXMgZm9yIGVhY2ggbmV3IG1lbWJlciB5b3UgaW52aXRlIHRvIG91ciBwcm9ncmFtLiBBZnRlciBoZSBtYWtlcyBhIGRlcG9zaXQgeW91PGJyIC8+CiAgICAgICAgcmVjZWl2ZSBhIHJlZmVycmFsIGNvbW1pc3Npb24gb2YgNSUuIDwvcD4KICAgIDwvZGl2PgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBheW1lbnRpY29ucyI+CiAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgPGg0IGNsYXNzPSJ6b29tSW4gd293Ij5XZSBhY2NlcHQgVmFyaW91cyBwYXltZW50IHByb2Nlc3NvcnM6PC9oND4KICAgICAgPHAgY2xhc3M9ImZhZGVJbiB3b3ciPjxpbWcgc3JjPSJzdHlsZXMvaW1hZ2VzL2Zvb3Rlcmljb25zLnBuZyIgYWx0PSIiIC8+PC9wPgogICAgPC9kaXY+CiAgPC9kaXY+PGRpdiBjbGFzcz0iZm9vdGVyd3JhcCI+CiAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgPGRpdiBjbGFzcz0iY29weXJpZ2h0Ij4gJmNvcHk7IDIwMTYuIHVuaXotY29pbnpsdGQuY29tIEFsbCBSaWdodHMgUmVzZXJ2ZWQgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImZvb3RlcmxpbmtzIj4KICAgICAgICA8dWw+CiAgICAgICAgICA8bGk+PGEgaHJlZj0iP2E9aG9tZSI+SE9NRTwvYT48L2xpPgogICAgICAgICAgPGxpPjxhIGhyZWY9Ij9hPWN1c3QmcGFnZT1hYm91dCI+QUJPVVQgVVM8L2E+PC9saT4KICAgICAgICAgIDxsaT48YSBocmVmPSI/YT1mYXEiPkZBUTwvYT48L2xpPgogICAgICAgICAgPGxpPjxhIGhyZWY9Ij9hPXN1cHBvcnQiPlNVUFBPUlQ8L2E+PC9saT4KICAgICAgICAgIDxsaT48YSBocmVmPSI/YT1ydWxlcyI+VEVSTVMgJmFtcDsgQ09ORElUSU9OUzwvYT48L2xpPgogICAgICAgIDwvdWw+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgPC9kaXY+CjwvZGl2Pgo8IS0tPHN0eWxlPgogICAgI211bGF3aGF0c2FwcCB7CiAgZGlzcGxheTogYmxvY2s7CiAgcG9zaXRpb246IGZpeGVkOwogIGJvdHRvbTogLTcwcHg7CiAgbGVmdDogMHB4OwogIHotaW5kZXg6IDk5OTsKICBmb250LXNpemU6IDE4cHg7CiAgYm9yZGVyOiBub25lOwogIG91dGxpbmU6IG5vbmU7CiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgY29sb3I6IHdoaXRlOwogIGN1cnNvcjogcG9pbnRlcjsKICBwYWRkaW5nOiAxNXB4OwogIGJvcmRlci1yYWRpdXM6IDRweDsKfQoKI211bGF3aGF0c2FwcDpob3ZlciB7CiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KCi5jaXJjbGVzIHsKCXdpZHRoOiAyMDBweDsKCWhlaWdodDogMzIwcHg7CgktbW96LWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwoJYm9yZGVyLXJhZGl1czogNTAlOwoJb3ZlcmZsb3c6aGlkZGVuOwoJcG9zaXRpb246cmVsYXRpdmU7Cn0KPC9zdHlsZT4KCgoKPGRpdiBpZD0ibXVsYXdoYXRzYXBwIiBjbGFzcz0iY2lyY2xlcyI+IDxhIGhyZWY9Imh0dHBzOi8vdC5tZS9Ib3JhY2lvMTExMSIgdGFyZ2V0PSJfYmxhbmsiPjxpbWcgc3JjPSJ0ZWxlZ3JhbS5wbmciIHdpZHRoPSI2MCIgLz48L2E+PC9kaXY+LS0+CgoKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgKGZ1bmN0aW9uICgpIHsKICAgICAgICB2YXIgb3B0aW9ucyA9IHsKICAgICAgICAgICAgd2hhdHNhcHA6ICIrNDQ3NTA2OTgzNzMwIiwgLy8gV2hhdHNBcHAgbnVtYmVyCiAgICAgICAgICAgIGNhbGxfdG9fYWN0aW9uOiAiTWVzc2FnZSB1cyIsIC8vIENhbGwgdG8gYWN0aW9uCiAgICAgICAgICAgIHBvc2l0aW9uOiAibGVmdCIsIC8vIFBvc2l0aW9uIG1heSBiZSAncmlnaHQnIG9yICdsZWZ0JwogICAgICAgIH07CiAgICAgICAgdmFyIHByb3RvID0gZG9jdW1lbnQubG9jYXRpb24ucHJvdG9jb2wsIGhvc3QgPSAiZ2V0YnV0dG9uLmlvIiwgdXJsID0gcHJvdG8gKyAiLy9zdGF0aWMuIiArIGhvc3Q7CiAgICAgICAgdmFyIHMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsgcy50eXBlID0gJ3RleHQvamF2YXNjcmlwdCc7IHMuYXN5bmMgPSB0cnVlOyBzLnNyYyA9IHVybCArICcvd2lkZ2V0LXNlbmQtYnV0dG9uL2pzL2luaXQuanMnOwogICAgICAgIHMub25sb2FkID0gZnVuY3Rpb24gKCkgeyBXaFdpZGdldFNlbmRCdXR0b24uaW5pdChob3N0LCBwcm90bywgb3B0aW9ucyk7IH07CiAgICAgICAgdmFyIHggPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0JylbMF07IHgucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUocywgeCk7CiAgICB9KSgpOwo8L3NjcmlwdD4KCgo8IS0tIFNtYXJ0c3VwcCBMaXZlIENoYXQgc2NyaXB0IC0tPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CnZhciBfc21hcnRzdXBwID0gX3NtYXJ0c3VwcCB8fCB7fTsKX3NtYXJ0c3VwcC5rZXkgPSAnZjlhZDAyZTQwMDExMTUzNjdmN2JhMGY3ODllMDhiMzRlZmI0ZTI5Mic7CndpbmRvdy5zbWFydHN1cHB8fChmdW5jdGlvbihkKSB7CiAgdmFyIHMsYyxvPXNtYXJ0c3VwcD1mdW5jdGlvbigpeyBvLl8ucHVzaChhcmd1bWVudHMpfTtvLl89W107CiAgcz1kLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzY3JpcHQnKVswXTtjPWQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7CiAgYy50eXBlPSd0ZXh0L2phdmFzY3JpcHQnO2MuY2hhcnNldD0ndXRmLTgnO2MuYXN5bmM9dHJ1ZTsKICBjLnNyYz0naHR0cHM6Ly93d3cuc21hcnRzdXBwY2hhdC5jb20vbG9hZGVyLmpzPyc7cy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShjLHMpOwp9KShkb2N1bWVudCk7Cjwvc2NyaXB0Pgo8bm9zY3JpcHQ+IFBvd2VyZWQgYnkgPGEgaHJlZj3igJxodHRwczovL3d3dy5zbWFydHN1cHAuY29t4oCdIHRhcmdldD3igJxfYmxhbmvigJ0+U21hcnRzdXBwPC9hPjwvbm9zY3JpcHQ+CgoKPC9ib2R5Pgo8L2h0bWw+"}},"time_used":1484,"timings":{"blocked":-1,"dns":12,"connect":18,"send":0,"wait":1454,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"widget.coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"widget.coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.780Z","timestamp":1785158432780,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes HTTP/1.1\r\nHost: widget.coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 301 \r\ncontent-type: text/html; charset=UTF-8\r\nserver-timing: cfEdge;dur=2,cfOrigin;dur=0, cfExtPri\r\nlocation: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=nZOkmhn1gngjCTxYoEqzdpTYvtNITV9XR82Vd3oLAeMv3q08eJbxM5UKht5rir4P%2FhsswxZWTjlq%2B7n%2BdTZ%2BD81O7JHe9CQc9dawvipCrtn9RfdXjrfwD6ipEAQPohd%2Bv6eGrA%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\npriority: u=4,i=?0\r\nserver: cloudflare\r\ncf-ray: a21bf12d080656b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\n\r\n","headers":null,"cookies":null,"status_code":"301","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":0,"size_decoded":0,"mime_type":"text/html; charset=utf-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-17T23:37:29.17424Z","times_seen":17945477,"resource_available":true,"data":null}},"time_used":39,"timings":{"blocked":-1,"dns":8,"connect":14,"send":0,"wait":17,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coin-images.coingecko.com/coins/images/2/large/litecoin.png?1696501400","fqdn":"coin-images.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"172.67.142.173","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.044Z","timestamp":1785158433044,"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":"coin-images.coingecko.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 11 Jun 2026 22:42:48 GMT","end":"Wed, 09 Sep 2026 23:41:15 GMT"},"fingerprint":{"sha1":"7A:6C:D0:D5:FD:4F:F2:F6:0E:21:8F:DB:FC:C2:6A:FB:03:26:BA:A8","sha256":"8F:4C:5D:49:64:66:ED:34:00:50:8C:D4:D9:03:C8:38:40:42:53:9D:67:B3:CD:AA:9E:0E:D5:41:02:8E:46:BA"}}},"request":{"raw":"GET /coins/images/2/large/litecoin.png?1696501400 HTTP/1.1\r\nHost: coin-images.coingecko.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nx-amz-id-2: Vy7WmbYGSJSl6RneukLJDccSsZH0AIhaKzVq51i/PZoFOhlHdjedn/aX84DhAoT6RRDGahwyhNxSnFl2I9ddD1staQtBZ3Uy\r\nx-amz-request-id: RBRRVP0PXD2ZDC8P\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\nx-amz-replication-status: COMPLETED\r\nlast-modified: Wed, 29 May 2024 02:40:00 GMT\r\netag: \"2cb0c91b0d82542c140d900d549dddc0\"\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: 5qPrLUbI5j.JglMI78Hfu1JUQECZPGFM\r\naccept-ranges: bytes\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\nserver: cloudflare\r\ncf-polished: ok, orig_size=7680\r\ncf-bgj: h2pri,imgq:85\r\ncf-cache-status: HIT\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=o%2BXh%2FCC9B%2Fn33GY92%2Bm9CuZEPZGxcBA%2FUIJd7FAmV3n%2Fl0b3tr8fNYVy%2FbKnepWfUzMPetitb9v4ZCsijD4hXdcR82dx0V7tqN6PJfoLzfLa0aFmPX4o%2Bf7ql5heeB1uezLXDDAhBRbffk71\"}]}\r\npriority: u=4,i\r\nage: 3158\r\ncf-ray: a21bf12e9ec849c5-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 5120\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":5120,"size_decoded":6156,"mime_type":"image/png","magic":"PNG image data, 250 x 250, 8-bit gray+alpha, non-interlaced","md5":"7dfe657fc78ddaa9bbf4b180da6eda9c","sha1":"ba56d2cbdb8ec2452e1d9a5e550c277c91dc21df","sha256":"ef3cea3547a0881c98e8d1f1fbe8ef6158365b6cac122ff659a726c0cff19518","sha512":"257a98d541b179e5b9e57a34e01f9d81d1786982690557f8336bc87b07fea94538dcde1c57f134664222774bf4fa3885276d3c17d2b47b23bdaddcc790fc09b7","ssdeep":"96:V50NeZ9yU9UKd9PTq7iFxW4LHiosNR7QAN7u+tGiO4drIkfx34:VqsYwd9OGFxpLHqX7z9tGiO4Bfx34","tlshash":"7fb18ec63f647e5a4304a1808a127d6785f1bd6f1a5cd0a1d713abdad4e8693ad46044","first_seen":"2024-08-02T10:43:53Z","last_seen":"2026-07-31T04:26:40.018761Z","times_seen":477,"resource_available":false,"data":"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"}},"time_used":17,"timings":{"blocked":1,"dns":0,"connect":0,"send":0,"wait":12,"receive":4,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/featuredicon3.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.575Z","timestamp":1785158432575,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/featuredicon3.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=8b1RQ%2FnZ71aT6kk5tcjTFfnbKLjGOztj4pItQUjQlLX%2B%2Bpi9ddEUVndCeW2Ymothp7tm3LJX%2BVNg6APPb%2Fb6pJdDW3YBC9vQ5CGRvcPwv1rn5l2K%2FkTta5h9vrzmQYQ%2Fu%2FqQjA%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b9c8756b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 4967\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":4967,"size_decoded":5739,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"06487766f995922b48b722fb3b994249","sha1":"3d4d226c1bd0c240b97a6b1f2659b1b878cc7df9","sha256":"b7240a92c6943158022190d73048ca45d701a09587eba4968c9d4842058f9d6e","sha512":"9bb7144b6a889ea70c33f11eb0088699eb016e365a726eb69968c7572dd3d364b08d44c9fdcdc7c2069ae80efa8c1ff5d5ff007997daaa03e4e9b1110d88b57f","ssdeep":"96:PY2Q22FBOj/ug0P9FRY5MpACR90KSeivXhtwn49:PymDufPvRY5MKWx92xenO","tlshash":"dba17e89e580e6e9e94ca0f164eb40228c9b5141bfc0def6e1edd421062d6731b8d7d3","first_seen":"2024-09-19T20:45:30.979638Z","last_seen":"2026-07-27T13:21:39.098624Z","times_seen":22,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6M0VDRDIzNkY4NUQ3MTFFOTkxRUFCMDJCMDM5NkU5NDMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6M0VDRDIzNzA4NUQ3MTFFOTkxRUFCMDJCMDM5NkU5NDMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDozRUNEMjM2RDg1RDcxMUU5OTFFQUIwMkIwMzk2RTk0MyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDozRUNEMjM2RTg1RDcxMUU5OTFFQUIwMkIwMzk2RTk0MyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PsP3hqoAAA/bSURBVHja3FoJeBRF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"}},"time_used":16,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/referralbg.jpg","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.839Z","timestamp":1785158432839,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/referralbg.jpg HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/styles/custom.css\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/jpeg\r\nserver-timing: cfExtPri\r\npriority: u=4,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:32 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23159\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=FwoXNXUnjsvJSqp8jPjD6pynkW4fhZcOttzqBcqtcsUeB5Kj5jDtbIIykjy3eyc3nYYQtz8EcnGK5VyvieGWO%2B7Z%2F32jACcsWCUGgDUJ%2BMsfCF7hSO%2BnnblFB0eFVttPjXVTNg%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12d4ca056b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 158763\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":158763,"size_decoded":159530,"mime_type":"image/jpeg","magic":"JPEG image data, Exif standard: [TIFF image data, big-endian, direntries=7, orientation=upper-left, xresolution=98, yresolution=106, resolutionunit=2, software=Adobe Photoshop CS6 (Windows), datetime=2019:06:03 14:36:48], progressive, precision 8, 1920x459, components 3","md5":"239725320fafcf66679ae05897c30325","sha1":"89e998b337558a1eb924ac8245fcccc0643c636e","sha256":"e89007ff5496d4413f9a3821192be5ae98ccd0d4d13440eea9feef44b2a52eec","sha512":"71f662946c28fcce75ed568af19a2c7db37447574505df521fdd5a4ac77d0a3b5071fb9c32990c30be5da7ab604d4010f3bf5d1a2b5b9ab78f74f6f4a1e70bf5","ssdeep":"3072:5daq4Y/qpnWQQRQcIntnpPGXANkiVvUFti93jnHZyFaj3zDcZ71tgkmXbp37k3Su:5dCXA72cIn61TcT5yEj3sllEk3Su","tlshash":"23f302687b938d22e9c400f4c8cb984326777aad96d34692385e715abb713d3dc2931b","first_seen":"2024-09-19T20:45:31.032044Z","last_seen":"2026-07-27T13:21:39.083364Z","times_seen":18,"resource_available":false,"data":"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OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKSIgeG1wOkNyZWF0ZURhdGU9IjIwMTktMDYtMDNUMTM6MTc6NTQrMDU6MzAiIHhtcDpNb2RpZnlEYXRlPSIyMDE5LTA2LTAzVDE0OjM2OjQ4KzA1OjMwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE5LTA2LTAzVDE0OjM2OjQ4KzA1OjMwIiBkYzpmb3JtYXQ9ImltYWdlL2pwZWciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpFMENEMDBDOEQ0ODVFOTExQTkzMEFDNTI4NEQyOEFGQiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpERkNEMDBDOEQ0ODVFOTExQTkzMEFDNTI4NEQyOEFGQiIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOkRGQ0QwMEM4RDQ4NUU5MTFBOTMwQUM1Mjg0RDI4QUZCIj4gPHBob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4gPHJkZjpCYWc+IDxyZGY6bGk+dXVpZDpCRDU5QTJCODE2ODNFOTExQkZCN0Q5NUQ5QUNFNTEwRDwvcmRmOmxpPiA8L3JkZjpCYWc+IDwvcGhvdG9zaG9wOkRvY3VtZW50QW5jZXN0b3JzPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOkRGQ0QwMEM4RDQ4NUU5MTFBOTMwQUM1Mjg0RDI4QUZCIiBzdEV2dDp3aGVuPSIyMDE5LTA2LTAzVDEzOjE3OjU0KzA1OjMwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKSIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AgdG8gaW1hZ2UvanBlZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6RTBDRDAwQzhENDg1RTkxMUE5MzBBQzUyODREMjhBRkIiIHN0RXZ0OndoZW49IjIwMTktMDYtMDNUMTQ6MzY6NDgrMDU6MzAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8P3hwYWNrZXQgZW5kPSJ3Ij8+/+IMWElDQ19QUk9GSUxFAAEBAAAMSExpbm8CEAAAbW50clJHQiBYWVogB84AAgAJAAYA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"}},"time_used":36,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":21,"receive":15,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"translate.googleapis.com/translate_static/img/te_bk.gif","fqdn":"translate.googleapis.com","domain":"translate.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.797Z","timestamp":1785158433797,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"upload.video.google.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:27 GMT","end":"Mon, 21 Sep 2026 08:39:26 GMT"},"fingerprint":{"sha1":"50:37:CF:61:33:A1:EE:47:D9:3D:A6:5E:07:BA:4C:FF:F7:25:9F:76","sha256":"7D:4D:21:06:63:E2:5E:F0:8C:59:8E:EB:B7:94:2B:81:70:11:D3:F4:C0:A0:81:A6:1B:E7:27:FD:56:10:1A:11"}}},"request":{"raw":"GET /translate_static/img/te_bk.gif HTTP/1.1\r\nHost: translate.googleapis.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 848\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 10:11:17 GMT\r\nexpires: Fri, 23 Jul 2027 10:11:17 GMT\r\ncache-control: public, max-age=31536000\r\nage: 356956\r\nlast-modified: Sun, 25 Jun 2023 02:58:00 GMT\r\ncontent-type: image/gif\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":848,"size_decoded":1507,"mime_type":"image/gif","magic":"GIF image data, version 89a, 1 x 59","md5":"daf9b48977041ac85a62dc9b7c16b38d","sha1":"049dcb061470572d06fd83b287ebd1d96e6bb870","sha256":"cb1fd0e051209c32622e91cdeda967e50d80a184b185ac6a656a807986e8eb75","sha512":"99f5f27990b6b5559c751a92c04037f5d42e848a966893484af66d3f66828c29a2dddc8788d7dd4cd835e8ab6d834e74fb3eaa4e2cd72d55b2813d7aab990af2","ssdeep":"","tlshash":"1c018c0cc8700a19e3422fb0ca5b6e0429675b465d88b20fb6aa22c27d04ba48049b1c","first_seen":"2023-04-05T23:29:53Z","last_seen":"2026-08-17T19:13:19.963409Z","times_seen":11892,"resource_available":false,"data":"R0lGODlhAQA7APcAANfX19/f3+Hh4eLi4uTk5Obm5ujo6Orq6uvr6+3t7e7u7uTv++bw++fw/Ojx/Ory/O30/O71/fHx8fP4/fT5/fb6/vj7/vr8/vz9//7+/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAQA7AAAINQAzCBxIUCCGCwgtVFhIYcKECA8jQHgw8UEDBg4aLGCwIIOEjyAlKEiA4ICBAgQGCAgQAEBAADs="}},"time_used":18,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":18,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.google.com/translate_a/element.js?cb=googleTranslateElementInit","fqdn":"translate.google.com","domain":"google.com","tld":"com"},"ip":{"addr":"142.250.178.110","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.514Z","timestamp":1785158432514,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.google.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:35 GMT","end":"Mon, 21 Sep 2026 08:37:34 GMT"},"fingerprint":{"sha1":"2F:20:3B:91:88:65:20:CD:06:9D:0C:58:4D:17:6F:FC:9D:EC:41:83","sha256":"0C:7B:D3:23:E9:5B:D6:6B:F2:5C:71:91:4D:41:CE:E6:D7:1F:A2:F2:63:BA:25:70:1D:00:F3:C0:72:21:51:6D"}}},"request":{"raw":"GET /translate_a/element.js?cb=googleTranslateElementInit HTTP/1.1\r\nHost: translate.google.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ncontent-type: text/javascript; charset=utf-8\r\nvary: Sec-Fetch-Dest, Sec-Fetch-Mode, Sec-Fetch-Site\r\ncache-control: no-cache, no-store, max-age=0, must-revalidate\r\npragma: no-cache\r\nexpires: Mon, 01 Jan 1990 00:00:00 GMT\r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin-allow-popups\r\ncontent-encoding: gzip\r\nserver: ESF\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\r\nx-content-type-options: nosniff\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":75428,"size_decoded":27152,"mime_type":"text/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (2543)","md5":"b85f95308a308a60d4a756a73b9af98d","sha1":"6df9b5ba466f4313cd0090994e0532a009c62384","sha256":"353232b820948ebdfa0da5f6114ce94046e818841c3333730fc8420560cc40a6","sha512":"aca1772aaac4a3358247c03c4385b162652f7873a9e538ff5d456d07d67244b31d426597e4e3912fe12673b4b0775b2365684d7bcef6d4135c6f417861cf25a7","ssdeep":"1536:XWjLpxIZnZzYOwRUSfl26KKZkXtmqR6Y06ECi4wNWF0:XDD4U6KKZgtBgtCim0","tlshash":"a373b88cb6a5b4658363f4b5412f000fb23b58adf8484cadb288d8e1adf5949453bf7d","first_seen":"2026-07-27T13:01:51.242895Z","last_seen":"2026-07-27T13:54:26.952715Z","times_seen":74,"resource_available":true,"data":"CiAgICAvLyBnby9tc3Mtc2V0dXAjNy1sb2FkLXRoZS1qcy1vci1jc3MtZnJvbS15b3VyLWluaXRpYWwtcGFnZQogICAgaWYoIXdpbmRvd1snX0R1bXBFeGNlcHRpb24nXSkgewogICAgICBjb25zdCBfRHVtcEV4Y2VwdGlvbiA9IHdpbmRvd1snX0R1bXBFeGNlcHRpb24nXSB8fCBmdW5jdGlvbihlKSB7CiAgICAgICAgdGhyb3cgZTsKICAgICAgfTsKICAgICAgd2luZG93WydfRHVtcEV4Y2VwdGlvbiddID0gX0R1bXBFeGNlcHRpb247CiAgICB9CiAgInVzZSBzdHJpY3QiO3RoaXMuZGVmYXVsdF90cj10aGlzLmRlZmF1bHRfdHJ8fHt9OyhmdW5jdGlvbihfKXt2YXIgd2luZG93PXRoaXM7CnRyeXsKXy5fRl90b2dnbGVzX2luaXRpYWxpemU9ZnVuY3Rpb24oYSl7KHR5cGVvZiBnbG9iYWxUaGlzIT09InVuZGVmaW5lZCI/Z2xvYmFsVGhpczp0eXBlb2Ygc2VsZiE9PSJ1bmRlZmluZWQiP3NlbGY6dGhpcykuX0ZfdG9nZ2xlc19kZWZhdWx0X3RyPWF8fFtdfTsoMCxfLl9GX3RvZ2dsZXNfaW5pdGlhbGl6ZSkoWzB4NzAwODAwNCwgMHgwLCBdKTsKLyoKCiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KLyoKCiBDb3B5cmlnaHQgR29vZ2xlIExMQwogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KLyoKCiBDb3B5cmlnaHQgMjAwNSwgMjAwNyBCb2IgSXBwb2xpdG8uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVAoqLwp2YXIgYWEsY2EsZmEsamEscmEseGEsQmEsRGEsRmEsR2EsSWEsWWEsYmIsZmIsZ2IsamIsa2IsbmIscGIscWIsc2IsdWIsdmIsQWIsQmIsRmIsSWIsSmIsTWIsTmIsT2IsUWIsU2IseixSYixVYixZYixaYixhYyxiYzthYT1mdW5jdGlvbihhLGIpe2lmKEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKUVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsYWEpO2Vsc2V7dmFyIGM9RXJyb3IoKS5zdGFjaztjJiYodGhpcy5zdGFjaz1jKX1hJiYodGhpcy5tZXNzYWdlPVN0cmluZyhhKSk7YiE9PXZvaWQgMCYmKHRoaXMuY2F1c2U9Yil9O2NhPWZ1bmN0aW9uKGEsYil7YT1hLnNwbGl0KCIlcyIpO2Zvcih2YXIgYz0iIixkPWEubGVuZ3RoLTEsZT0wO2U8ZDtlKyspYys9YVtlXSsoZTxiLmxlbmd0aD9iW2VdOiIlcyIpO2FhLmNhbGwodGhpcyxjK2FbZF0pfTtmYT1mdW5jdGlvbihhKXtpZihfLmRhKWEoXy5kYSk7ZWxzZXt2YXIgYjsoKGI9ZWEpIT1udWxsP2I6ZWE9W10pLnB1c2goYSl9fTsKamE9ZnVuY3Rpb24oKXshXy5kYSYmXy5oYSYmXy5pYSgpO3JldHVybiBfLmRhfTtfLmlhPWZ1bmN0aW9uKCl7Xy5kYT1fLmhhKCk7dmFyIGE7KGE9ZWEpPT1udWxsfHxhLmZvckVhY2goZmEpO2VhPXZvaWQgMH07Xy5sYT1mdW5jdGlvbihhKXtfLmRhJiZrYShhKX07Xy5tYT1mdW5jdGlvbigpe18uZGEmJl8uZGEubWQoKX07Xy5vYT1mdW5jdGlvbihhLGIpe2IuaGFzT3duUHJvcGVydHkoImRpc3BsYXlOYW1lIil8fChiLmRpc3BsYXlOYW1lPWEudG9TdHJpbmcoKSk7YltuYV09YX07Xy5wYT1mdW5jdGlvbihhKXthJiZ0eXBlb2YgYS5kaXNwb3NlPT0iZnVuY3Rpb24iJiZhLmRpc3Bvc2UoKX07cmE9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTAsYz1hcmd1bWVudHMubGVuZ3RoO2I8YzsrK2Ipe3ZhciBkPWFyZ3VtZW50c1tiXTtfLnFhKGQpP3JhLmFwcGx5KG51bGwsZCk6Xy5wYShkKX19O18udT1mdW5jdGlvbigpe3RoaXMucWE9dGhpcy5xYTt0aGlzLlc9dGhpcy5XfTsKXy50YT1mdW5jdGlvbihhLGIpe3JldHVybiBzYShhLGIpPj0wfTtfLnVhPWZ1bmN0aW9uKGEsYil7Xy50YShhLGIpfHxhLnB1c2goYil9O18udmE9ZnVuY3Rpb24oYSxiKXtiPXNhKGEsYik7dmFyIGM7KGM9Yj49MCkmJkFycmF5LnByb3RvdHlwZS5zcGxpY2UuY2FsbChhLGIsMSk7cmV0dXJuIGN9O18ud2E9ZnVuY3Rpb24oYSl7dmFyIGI9YS5sZW5ndGg7aWYoYj4wKXtmb3IodmFyIGM9QXJyYXkoYiksZD0wO2Q8YjtkKyspY1tkXT1hW2RdO3JldHVybiBjfXJldHVybltdfTt4YT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0xO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspe3ZhciBkPWFyZ3VtZW50c1tjXTtpZihfLnFhKGQpKXt2YXIgZT1hLmxlbmd0aHx8MCxmPWQubGVuZ3RofHwwO2EubGVuZ3RoPWUrZjtmb3IodmFyIGc9MDtnPGY7ZysrKWFbZStnXT1kW2ddfWVsc2UgYS5wdXNoKGQpfX07CkJhPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wLGM9MCxkPXt9O2M8YS5sZW5ndGg7KXt2YXIgZT1hW2MrK10sZj1fLnlhKGUpPyJvIisoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsemEpJiZlW3phXXx8KGVbemFdPSsrQWEpKToodHlwZW9mIGUpLmNoYXJBdCgwKStlO09iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkLGYpfHwoZFtmXT0hMCxhW2IrK109ZSl9YS5sZW5ndGg9Yn07Xy5DYT1mdW5jdGlvbihhLGIpe3RoaXMud2lkdGg9YTt0aGlzLmhlaWdodD1ifTtEYT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYyBpbiBhKWlmKGIuY2FsbCh2b2lkIDAsYVtjXSxjLGEpKXJldHVybiEwO3JldHVybiExfTsKRmE9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGMsZCxlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7ZD1hcmd1bWVudHNbZV07Zm9yKGMgaW4gZClhW2NdPWRbY107Zm9yKHZhciBmPTA7ZjxFYS5sZW5ndGg7ZisrKWM9RWFbZl0sT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGQsYykmJihhW2NdPWRbY10pfX07R2E9ZnVuY3Rpb24oYSl7cmV0dXJue3ZhbHVlT2Y6YX0udmFsdWVPZigpfTtJYT1mdW5jdGlvbigpe3ZhciBhPW51bGw7aWYoIUhhKXJldHVybiBhO3RyeXt2YXIgYj1mdW5jdGlvbihjKXtyZXR1cm4gY307YT1IYS5jcmVhdGVQb2xpY3koImdvb2cjaHRtbCIse2NyZWF0ZUhUTUw6YixjcmVhdGVTY3JpcHQ6YixjcmVhdGVTY3JpcHRVUkw6Yn0pfWNhdGNoKGMpe31yZXR1cm4gYX07Xy5LYT1mdW5jdGlvbigpe0phPT09dm9pZCAwJiYoSmE9SWEoKSk7cmV0dXJuIEphfTsKXy5NYT1mdW5jdGlvbihhKXt2YXIgYj1fLkthKCk7YT1iP2IuY3JlYXRlU2NyaXB0VVJMKGEpOmE7cmV0dXJuIG5ldyBfLkxhKGEpfTtfLk5hPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBfLkxhKXJldHVybiBhLmc7dGhyb3cgRXJyb3IoInQiKTt9O18uT2E9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/ZG9jdW1lbnQ6Yjt2YXIgYyxkO2I9KGQ9KGM9YikucXVlcnlTZWxlY3Rvcik9PW51bGw/dm9pZCAwOmQuY2FsbChjLGErIltub25jZV0iKTtyZXR1cm4gYj09bnVsbD8iIjpiLm5vbmNlfHxiLmdldEF0dHJpYnV0ZSgibm9uY2UiKXx8IiJ9O18uUWE9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5LYSgpO2E9Yj9iLmNyZWF0ZVNjcmlwdChhKTphO3JldHVybiBuZXcgXy5QYShhKX07Xy5SYT1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgXy5QYSlyZXR1cm4gYS5nO3Rocm93IEVycm9yKCJ0Iik7fTsKXy5TYT1mdW5jdGlvbihhLGIpe2Euc3JjPV8uTmEoYik7KGI9Xy5PYSgic2NyaXB0IixhLm93bmVyRG9jdW1lbnQpKSYmYS5zZXRBdHRyaWJ1dGUoIm5vbmNlIixiKX07Xy5UYT1mdW5jdGlvbigpe3ZhciBhPV8udi5uYXZpZ2F0b3I7cmV0dXJuIGEmJihhPWEudXNlckFnZW50KT9hOiIifTtfLnc9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uVGEoKS5pbmRleE9mKGEpIT0tMX07Xy5XYT1mdW5jdGlvbigpe3JldHVybiBfLlVhPyEhXy5WYSYmXy5WYS5icmFuZHMubGVuZ3RoPjA6ITF9O18uWGE9ZnVuY3Rpb24oKXtyZXR1cm4gXy5XYSgpPyExOl8udygiT3BlcmEiKX07WWE9ZnVuY3Rpb24oKXtyZXR1cm4gXy5VYT8hIV8uVmEmJiEhXy5WYS5wbGF0Zm9ybTohMX07Xy5aYT1mdW5jdGlvbigpe3JldHVybiBfLncoImlQaG9uZSIpJiYhXy53KCJpUG9kIikmJiFfLncoImlQYWQiKX07Xy4kYT1mdW5jdGlvbigpe3JldHVybiBfLlphKCl8fF8udygiaVBhZCIpfHxfLncoImlQb2QiKX07Cl8uYWI9ZnVuY3Rpb24oKXtyZXR1cm4gWWEoKT9fLlZhLnBsYXRmb3JtPT09Im1hY09TIjpfLncoIk1hY2ludG9zaCIpfTtiYj1mdW5jdGlvbigpe3RoaXMuaWQ9ImIifTtfLmRiPWZ1bmN0aW9uKGEsYil7Y2IuY2FsbCh0aGlzLGE/YS50eXBlOiIiKTt0aGlzLnJlbGF0ZWRUYXJnZXQ9dGhpcy5jdXJyZW50VGFyZ2V0PXRoaXMudGFyZ2V0PW51bGw7dGhpcy5idXR0b249dGhpcy5zY3JlZW5ZPXRoaXMuc2NyZWVuWD10aGlzLmNsaWVudFk9dGhpcy5jbGllbnRYPXRoaXMub2Zmc2V0WT10aGlzLm9mZnNldFg9MDt0aGlzLmtleT0iIjt0aGlzLmNoYXJDb2RlPXRoaXMua2V5Q29kZT0wO3RoaXMubWV0YUtleT10aGlzLnNoaWZ0S2V5PXRoaXMuYWx0S2V5PXRoaXMuY3RybEtleT0hMTt0aGlzLnN0YXRlPW51bGw7dGhpcy5wb2ludGVySWQ9MDt0aGlzLnBvaW50ZXJUeXBlPSIiO3RoaXMudGltZVN0YW1wPTA7dGhpcy5nPW51bGw7YSYmdGhpcy5pbml0KGEsYil9OwpmYj1mdW5jdGlvbihhLGIsYyxkLGUpe3RoaXMubGlzdGVuZXI9YTt0aGlzLnByb3h5PW51bGw7dGhpcy5zcmM9Yjt0aGlzLnR5cGU9Yzt0aGlzLmNhcHR1cmU9ISFkO3RoaXMuVmM9ZTt0aGlzLmtleT0rK2ViO3RoaXMub2M9dGhpcy5IYz0hMX07Z2I9ZnVuY3Rpb24oYSl7dGhpcy5zcmM9YTt0aGlzLmc9e307dGhpcy5oPTB9O18uaGI9ZnVuY3Rpb24oKXtfLnUuY2FsbCh0aGlzKTt0aGlzLlFhPW5ldyBnYih0aGlzKTt0aGlzLldnPXRoaXM7dGhpcy5mZD1udWxsfTtqYj1mdW5jdGlvbihhKXtfLmhiLmNhbGwodGhpcyk7dGhpcy5nPWF8fHdpbmRvdzt0aGlzLmg9Xy54KHRoaXMuZywicmVzaXplIix0aGlzLmwsITEsdGhpcyk7dGhpcy5qPV8uaWIodGhpcy5nfHx3aW5kb3cpfTsKa2I9ZnVuY3Rpb24oYSl7Xy5oYi5jYWxsKHRoaXMpO3RoaXMuaD1hP2EuZy5kZWZhdWx0Vmlldzp3aW5kb3c7dGhpcy5vPXRoaXMuaC5kZXZpY2VQaXhlbFJhdGlvPj0xLjU/MjoxO3RoaXMuaj0oMCxfLnkpKHRoaXMuQSx0aGlzKTt0aGlzLmw9bnVsbDsodGhpcy5nPXRoaXMuaC5tYXRjaE1lZGlhP3RoaXMuaC5tYXRjaE1lZGlhKCIobWluLXJlc29sdXRpb246IDEuNWRwcHgpLCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpIik6bnVsbCkmJnR5cGVvZiB0aGlzLmcuYWRkTGlzdGVuZXIhPT0iZnVuY3Rpb24iJiZ0eXBlb2YgdGhpcy5nLmFkZEV2ZW50TGlzdGVuZXIhPT0iZnVuY3Rpb24iJiYodGhpcy5nPW51bGwpfTsKbmI9ZnVuY3Rpb24oYSxiKXtfLnUuY2FsbCh0aGlzKTt0aGlzLm89YTtpZihiKXtpZih0aGlzLmwpdGhyb3cgRXJyb3IoIngiKTt0aGlzLmw9Yjt0aGlzLmg9Xy5sYihiKTt0aGlzLmc9bmV3IGpiKF8ubWIoYikpO3RoaXMuZy5uZCh0aGlzLm8uaCgpKTt0aGlzLmo9bmV3IGtiKHRoaXMuaCk7dGhpcy5qLnN0YXJ0KCl9fTtwYj1mdW5jdGlvbihhKXthPWEuSGQuY2hhckNvZGVBdChhLkJiKyspO3JldHVybiBvYlthXX07cWI9ZnVuY3Rpb24oYSl7dmFyIGI9MCxjPTA7ZG97dmFyIGQ9cGIoYSk7Ynw9KGQmMzEpPDxjO2MrPTV9d2hpbGUoZCYzMik7cmV0dXJuIGI8MD9iKzQyOTQ5NjcyOTY6Yn07Xy5yYj1mdW5jdGlvbihhKXtfLnYuc2V0VGltZW91dChmdW5jdGlvbigpe3Rocm93IGE7fSwwKX07c2I9ZnVuY3Rpb24oYSxiKXt0aGlzLmc9YTt0aGlzLmg9Yn07CnViPWZ1bmN0aW9uKGEsYil7Xy51LmNhbGwodGhpcyk7dGhpcy5sPWE7dGhpcy5BPWI7dGhpcy5qPXRiP251bGw6W107dGhpcy5oPXRiP251bGw6W107dGhpcy5vPXRiP251bGw6W107dGhpcy5CPSExfTt2Yj1mdW5jdGlvbigpe3RoaXMuTz10aGlzLnFhPW51bGx9O0FiPWZ1bmN0aW9uKCl7Zm9yKHZhciBhO2E9d2IucmVtb3ZlKCk7KXt0cnl7YS5nLmNhbGwoYS5zY29wZSl9Y2F0Y2goYil7Xy5yYihiKX14Yih5YixhKX16Yj0hMX07QmI9ZnVuY3Rpb24oKXt0aGlzLkI9W107dGhpcy5vPXRoaXMuaD0hMTt0aGlzLmw9dm9pZCAwO3RoaXMuRz10aGlzLlc9dGhpcy5EPSExO3RoaXMuQz0wO3RoaXMuaj1udWxsO3RoaXMuQT0wfTtfLkNiPWZ1bmN0aW9uKGEpe3JldHVybiBhP2RlY29kZVVSSShhKTphfTsKXy5FYj1mdW5jdGlvbihhLGIpe2lmKGEpe2E9YS5zcGxpdCgiJiIpO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hW2NdLmluZGV4T2YoIj0iKSxlPW51bGw7aWYoZD49MCl7dmFyIGY9YVtjXS5zdWJzdHJpbmcoMCxkKTtlPWFbY10uc3Vic3RyaW5nKGQrMSl9ZWxzZSBmPWFbY107YihmLGU/Xy5EYihlKToiIil9fX07RmI9ZnVuY3Rpb24oYSxiLGMpe2lmKEFycmF5LmlzQXJyYXkoYikpZm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspRmIoYSxTdHJpbmcoYltkXSksYyk7ZWxzZSBiIT1udWxsJiZjLnB1c2goYSsoYj09PSIiPyIiOiI9IitfLkdiKGIpKSl9O18uSGI9ZnVuY3Rpb24oYSl7Xy51LmNhbGwodGhpcyk7dGhpcy5oPWE7dGhpcy5nPXt9fTtJYj1mdW5jdGlvbigpe307SmI9ZnVuY3Rpb24oKXt9O18uTGI9ZnVuY3Rpb24oYSl7YT1fLktiKGEpO3JldHVybiBfLk1hKGEpfTsKXy5LYj1mdW5jdGlvbihhKXtyZXR1cm4gYT09PW51bGw/Im51bGwiOmE9PT12b2lkIDA/InVuZGVmaW5lZCI6YX07TWI9dHlwZW9mIE9iamVjdC5jcmVhdGU9PSJmdW5jdGlvbiI/T2JqZWN0LmNyZWF0ZTpmdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbigpe307Yi5wcm90b3R5cGU9YTtyZXR1cm4gbmV3IGJ9O05iPXR5cGVvZiBPYmplY3QuZGVmaW5lUHJvcGVydGllcz09ImZ1bmN0aW9uIj9PYmplY3QuZGVmaW5lUHJvcGVydHk6ZnVuY3Rpb24oYSxiLGMpe2lmKGE9PUFycmF5LnByb3RvdHlwZXx8YT09T2JqZWN0LnByb3RvdHlwZSlyZXR1cm4gYTthW2JdPWMudmFsdWU7cmV0dXJuIGF9OwpPYj1mdW5jdGlvbihhKXthPVsib2JqZWN0Ij09dHlwZW9mIGdsb2JhbFRoaXMmJmdsb2JhbFRoaXMsYSwib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmd2luZG93LCJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZiwib2JqZWN0Ij09dHlwZW9mIGdsb2JhbCYmZ2xvYmFsXTtmb3IodmFyIGI9MDtiPGEubGVuZ3RoOysrYil7dmFyIGM9YVtiXTtpZihjJiZjLk1hdGg9PU1hdGgpcmV0dXJuIGN9dGhyb3cgRXJyb3IoImEiKTt9O18uUGI9T2IodGhpcyk7UWI9IkludDggVWludDggVWludDhDbGFtcGVkIEludDE2IFVpbnQxNiBJbnQzMiBVaW50MzIgRmxvYXQzMiBGbG9hdDY0Ii5zcGxpdCgiICIpO18uUGIuQmlnSW50NjRBcnJheSYmKFFiLnB1c2goIkJpZ0ludDY0IiksUWIucHVzaCgiQmlnVWludDY0IikpO1NiPWZ1bmN0aW9uKGEsYil7aWYoYilmb3IodmFyIGM9MDtjPFFiLmxlbmd0aDtjKyspUmIoUWJbY10rIkFycmF5LnByb3RvdHlwZS4iK2EsYil9Owp6PWZ1bmN0aW9uKGEsYil7YiYmUmIoYSxiKX07UmI9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLlBiO2E9YS5zcGxpdCgiLiIpO2Zvcih2YXIgZD0wO2Q8YS5sZW5ndGgtMTtkKyspe3ZhciBlPWFbZF07aWYoIShlIGluIGMpKXJldHVybjtjPWNbZV19YT1hW2EubGVuZ3RoLTFdO2Q9Y1thXTtiPWIoZCk7YiE9ZCYmYiE9bnVsbCYmTmIoYyxhLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6Yn0pfTsKXy5UYj1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoKXtmdW5jdGlvbiBjKCl7fW5ldyBjO1JlZmxlY3QuY29uc3RydWN0KGMsW10sZnVuY3Rpb24oKXt9KTtyZXR1cm4gbmV3IGMgaW5zdGFuY2VvZiBjfWlmKHR5cGVvZiBSZWZsZWN0IT0idW5kZWZpbmVkIiYmUmVmbGVjdC5jb25zdHJ1Y3Qpe2lmKGEoKSlyZXR1cm4gUmVmbGVjdC5jb25zdHJ1Y3Q7dmFyIGI9UmVmbGVjdC5jb25zdHJ1Y3Q7cmV0dXJuIGZ1bmN0aW9uKGMsZCxlKXtjPWIoYyxkKTtlJiZSZWZsZWN0LnNldFByb3RvdHlwZU9mKGMsZS5wcm90b3R5cGUpO3JldHVybiBjfX1yZXR1cm4gZnVuY3Rpb24oYyxkLGUpe2U9PT12b2lkIDAmJihlPWMpO2U9TWIoZS5wcm90b3R5cGV8fE9iamVjdC5wcm90b3R5cGUpO3JldHVybiBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkuY2FsbChjLGUsZCl8fGV9fSgpOwppZih0eXBlb2YgT2JqZWN0LnNldFByb3RvdHlwZU9mPT0iZnVuY3Rpb24iKVViPU9iamVjdC5zZXRQcm90b3R5cGVPZjtlbHNle3ZhciBWYjthOnt2YXIgV2I9e2E6ITB9LFhiPXt9O3RyeXtYYi5fX3Byb3RvX189V2I7VmI9WGIuYTticmVhayBhfWNhdGNoKGEpe31WYj0hMX1VYj1WYj9mdW5jdGlvbihhLGIpe2EuX19wcm90b19fPWI7aWYoYS5fX3Byb3RvX18hPT1iKXRocm93IG5ldyBUeXBlRXJyb3IoImJgIithKTtyZXR1cm4gYX06bnVsbH1ZYj1VYjsKXy5CPWZ1bmN0aW9uKGEsYil7YS5wcm90b3R5cGU9TWIoYi5wcm90b3R5cGUpO2EucHJvdG90eXBlLmNvbnN0cnVjdG9yPWE7aWYoWWIpWWIoYSxiKTtlbHNlIGZvcih2YXIgYyBpbiBiKWlmKGMhPSJwcm90b3R5cGUiKWlmKE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKXt2YXIgZD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGIsYyk7ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsYyxkKX1lbHNlIGFbY109YltjXTthLmVhPWIucHJvdG90eXBlfTtaYj1mdW5jdGlvbihhKXt2YXIgYj0wO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBiPGEubGVuZ3RoP3tkb25lOiExLHZhbHVlOmFbYisrXX06e2RvbmU6ITB9fX07Cl8uQz1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgU3ltYm9sIT0idW5kZWZpbmVkIiYmU3ltYm9sLml0ZXJhdG9yJiZhW1N5bWJvbC5pdGVyYXRvcl07aWYoYilyZXR1cm4gYi5jYWxsKGEpO2lmKHR5cGVvZiBhLmxlbmd0aD09Im51bWJlciIpcmV0dXJue25leHQ6WmIoYSl9O3Rocm93IEVycm9yKCJjYCIrU3RyaW5nKGEpKTt9O18uJGI9ZnVuY3Rpb24oYSl7aWYoIShhIGluc3RhbmNlb2YgQXJyYXkpKXthPV8uQyhhKTtmb3IodmFyIGIsYz1bXTshKGI9YS5uZXh0KCkpLmRvbmU7KWMucHVzaChiLnZhbHVlKTthPWN9cmV0dXJuIGF9O2FjPWZ1bmN0aW9uKGEsYil7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhLGIpfTsKYmM9dHlwZW9mIE9iamVjdC5hc3NpZ249PSJmdW5jdGlvbiI/T2JqZWN0LmFzc2lnbjpmdW5jdGlvbihhLGIpe2lmKGE9PW51bGwpdGhyb3cgbmV3IFR5cGVFcnJvcigiZCIpO2E9T2JqZWN0KGEpO2Zvcih2YXIgYz0xO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspe3ZhciBkPWFyZ3VtZW50c1tjXTtpZihkKWZvcih2YXIgZSBpbiBkKWFjKGQsZSkmJihhW2VdPWRbZV0pfXJldHVybiBhfTt6KCJPYmplY3QuYXNzaWduIixmdW5jdGlvbihhKXtyZXR1cm4gYXx8YmN9KTtfLmNjPWZ1bmN0aW9uKGEpe2lmKCEoYSBpbnN0YW5jZW9mIE9iamVjdCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiZWAiK2EpO307Xy5GPWZ1bmN0aW9uKCl7dGhpcy5HPSExO3RoaXMuQT1udWxsO3RoaXMuaj12b2lkIDA7dGhpcy5nPTE7dGhpcy5vPXRoaXMuQz0wO3RoaXMuVz10aGlzLmw9bnVsbH07Xy5GLnByb3RvdHlwZS5JPWZ1bmN0aW9uKGEpe3RoaXMuaj1hfTsKXy5GLnByb3RvdHlwZS5nZXROZXh0QWRkcmVzc0pzYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmd9O18uRi5wcm90b3R5cGUuZ2V0WWllbGRSZXN1bHRKc2M9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5qfTtfLkYucHJvdG90eXBlLnJldHVybj1mdW5jdGlvbihhKXt0aGlzLmw9e3JldHVybjphfTt0aGlzLmc9dGhpcy5vfTtfLkYucHJvdG90eXBlWyJyZXR1cm4iXT1fLkYucHJvdG90eXBlLnJldHVybjtfLkYucHJvdG90eXBlLlI9ZnVuY3Rpb24oYSl7dGhpcy5sPXt4YTphfTt0aGlzLmc9dGhpcy5vfTtfLkYucHJvdG90eXBlLmp1bXBUaHJvdWdoRmluYWxseUJsb2Nrcz1fLkYucHJvdG90eXBlLlI7Xy5GLnByb3RvdHlwZS5oPWZ1bmN0aW9uKGEsYil7dGhpcy5nPWI7cmV0dXJue3ZhbHVlOmF9fTtfLkYucHJvdG90eXBlLnlpZWxkPV8uRi5wcm90b3R5cGUuaDsKXy5GLnByb3RvdHlwZS5UPWZ1bmN0aW9uKGEsYil7YT1fLkMoYSk7dmFyIGM9YS5uZXh0KCk7Xy5jYyhjKTtpZihjLmRvbmUpdGhpcy5qPWMudmFsdWUsdGhpcy5nPWI7ZWxzZSByZXR1cm4gdGhpcy5BPWEsdGhpcy5oKGMudmFsdWUsYil9O18uRi5wcm90b3R5cGUueWllbGRBbGw9Xy5GLnByb3RvdHlwZS5UO18uRi5wcm90b3R5cGUueGE9ZnVuY3Rpb24oYSl7dGhpcy5nPWF9O18uRi5wcm90b3R5cGUuanVtcFRvPV8uRi5wcm90b3R5cGUueGE7Xy5GLnByb3RvdHlwZS5CPWZ1bmN0aW9uKCl7dGhpcy5nPTB9O18uRi5wcm90b3R5cGUuanVtcFRvRW5kPV8uRi5wcm90b3R5cGUuQjtfLkYucHJvdG90eXBlLkY9ZnVuY3Rpb24oYSxiKXt0aGlzLkM9YTtiIT12b2lkIDAmJih0aGlzLm89Yil9O18uRi5wcm90b3R5cGUuc2V0Q2F0Y2hGaW5hbGx5QmxvY2tzPV8uRi5wcm90b3R5cGUuRjtfLkYucHJvdG90eXBlLlA9ZnVuY3Rpb24oYSl7dGhpcy5DPTA7dGhpcy5vPWF8fDB9OwpfLkYucHJvdG90eXBlLnNldEZpbmFsbHlCbG9jaz1fLkYucHJvdG90eXBlLlA7Xy5GLnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYil7dGhpcy5nPWE7dGhpcy5DPWJ8fDB9O18uRi5wcm90b3R5cGUubGVhdmVUcnlCbG9jaz1fLkYucHJvdG90eXBlLks7Xy5GLnByb3RvdHlwZS5EPWZ1bmN0aW9uKGEpe3RoaXMuQz1hfHwwO2E9dGhpcy5sLmJmO3RoaXMubD1udWxsO3JldHVybiBhfTtfLkYucHJvdG90eXBlLmVudGVyQ2F0Y2hCbG9jaz1fLkYucHJvdG90eXBlLkQ7Xy5GLnByb3RvdHlwZS5MPWZ1bmN0aW9uKGEsYixjKXtjP3RoaXMuV1tjXT10aGlzLmw6dGhpcy5XPVt0aGlzLmxdO3RoaXMuQz1hfHwwO3RoaXMubz1ifHwwfTtfLkYucHJvdG90eXBlLmVudGVyRmluYWxseUJsb2NrPV8uRi5wcm90b3R5cGUuTDsKXy5GLnByb3RvdHlwZS5xYT1mdW5jdGlvbihhLGIpe2I9dGhpcy5XLnNwbGljZShifHwwKVswXTsoYj10aGlzLmw9dGhpcy5sfHxiKT9iLkNmP3RoaXMuZz10aGlzLkN8fHRoaXMubzpiLnhhIT12b2lkIDAmJnRoaXMubzxiLnhhPyh0aGlzLmc9Yi54YSx0aGlzLmw9bnVsbCk6dGhpcy5nPXRoaXMubzp0aGlzLmc9YX07Xy5GLnByb3RvdHlwZS5sZWF2ZUZpbmFsbHlCbG9jaz1fLkYucHJvdG90eXBlLnFhO18uRi5wcm90b3R5cGUuTz1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IGRjKGEpfTtfLkYucHJvdG90eXBlLmZvckluPV8uRi5wcm90b3R5cGUuTzt2YXIgZGM9ZnVuY3Rpb24oYSl7dGhpcy5qPWE7dGhpcy5nPVtdO2Zvcih2YXIgYiBpbiBhKXRoaXMuZy5wdXNoKGIpO3RoaXMuZy5yZXZlcnNlKCl9O2RjLnByb3RvdHlwZS5oPWZ1bmN0aW9uKCl7Zm9yKDt0aGlzLmcubGVuZ3RoPjA7KXt2YXIgYT10aGlzLmcucG9wKCk7aWYoYSBpbiB0aGlzLmopcmV0dXJuIGF9cmV0dXJuIG51bGx9OwpkYy5wcm90b3R5cGUuZ2V0TmV4dD1kYy5wcm90b3R5cGUuaDtfLmVjPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPU51bWJlcih0aGlzKSxiPVtdLGM9YTtjPGFyZ3VtZW50cy5sZW5ndGg7YysrKWJbYy1hXT1hcmd1bWVudHNbY107cmV0dXJuIGJ9O3ooImdsb2JhbFRoaXMiLGZ1bmN0aW9uKGEpe3JldHVybiBhfHxfLlBifSk7eigiUmVmbGVjdCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTp7fX0pO3ooIlJlZmxlY3QuY29uc3RydWN0IixmdW5jdGlvbigpe3JldHVybiBfLlRifSk7eigiUmVmbGVjdC5zZXRQcm90b3R5cGVPZiIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpZYj9mdW5jdGlvbihiLGMpe3RyeXtyZXR1cm4gWWIoYixjKSwhMH1jYXRjaChkKXtyZXR1cm4hMX19Om51bGx9KTsKeigiU3ltYm9sIixmdW5jdGlvbihhKXtpZihhKXJldHVybiBhO3ZhciBiPWZ1bmN0aW9uKGYsZyl7dGhpcy5nPWY7TmIodGhpcywiZGVzY3JpcHRpb24iLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6Z30pfTtiLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmd9O3ZhciBjPSJqc2NvbXBfc3ltYm9sXyIrKE1hdGgucmFuZG9tKCkqMUU5Pj4+MCkrIl8iLGQ9MCxlPWZ1bmN0aW9uKGYpe2lmKHRoaXMgaW5zdGFuY2VvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoImciKTtyZXR1cm4gbmV3IGIoYysoZnx8IiIpKyJfIitkKyssZil9O3JldHVybiBlfSk7eigiU3ltYm9sLml0ZXJhdG9yIixmdW5jdGlvbihhKXtpZihhKXJldHVybiBhO2E9U3ltYm9sKCJoIik7TmIoQXJyYXkucHJvdG90eXBlLGEse2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBmYyhaYih0aGlzKSl9fSk7cmV0dXJuIGF9KTsKdmFyIGZjPWZ1bmN0aW9uKGEpe2E9e25leHQ6YX07YVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9O3JldHVybiBhfTsKeigiUHJvbWlzZSIsZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYigpe3RoaXMuZz1udWxsfWZ1bmN0aW9uIGMoZyl7cmV0dXJuIGcgaW5zdGFuY2VvZiBlP2c6bmV3IGUoZnVuY3Rpb24oaCl7aChnKX0pfWlmKGEpcmV0dXJuIGE7Yi5wcm90b3R5cGUuaD1mdW5jdGlvbihnKXtpZih0aGlzLmc9PW51bGwpe3RoaXMuZz1bXTt2YXIgaD10aGlzO3RoaXMuaihmdW5jdGlvbigpe2gubygpfSl9dGhpcy5nLnB1c2goZyl9O3ZhciBkPV8uUGIuc2V0VGltZW91dDtiLnByb3RvdHlwZS5qPWZ1bmN0aW9uKGcpe2QoZywwKX07Yi5wcm90b3R5cGUubz1mdW5jdGlvbigpe2Zvcig7dGhpcy5nJiZ0aGlzLmcubGVuZ3RoOyl7dmFyIGc9dGhpcy5nO3RoaXMuZz1bXTtmb3IodmFyIGg9MDtoPGcubGVuZ3RoOysraCl7dmFyIGs9Z1toXTtnW2hdPW51bGw7dHJ5e2soKX1jYXRjaChsKXt0aGlzLmwobCl9fX10aGlzLmc9bnVsbH07Yi5wcm90b3R5cGUubD1mdW5jdGlvbihnKXt0aGlzLmooZnVuY3Rpb24oKXt0aHJvdyBnOwp9KX07dmFyIGU9ZnVuY3Rpb24oZyl7dGhpcy5nPTA7dGhpcy5qPXZvaWQgMDt0aGlzLmg9W107dGhpcy5CPSExO3ZhciBoPXRoaXMubCgpO3RyeXtnKGgucmVzb2x2ZSxoLnJlamVjdCl9Y2F0Y2goayl7aC5yZWplY3Qoayl9fTtlLnByb3RvdHlwZS5sPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZyhsKXtyZXR1cm4gZnVuY3Rpb24obil7a3x8KGs9ITAsbC5jYWxsKGgsbikpfX12YXIgaD10aGlzLGs9ITE7cmV0dXJue3Jlc29sdmU6Zyh0aGlzLkkpLHJlamVjdDpnKHRoaXMubyl9fTtlLnByb3RvdHlwZS5JPWZ1bmN0aW9uKGcpe2lmKGc9PT10aGlzKXRoaXMubyhuZXcgVHlwZUVycm9yKCJpIikpO2Vsc2UgaWYoZyBpbnN0YW5jZW9mIGUpdGhpcy5LKGcpO2Vsc2V7YTpzd2l0Y2godHlwZW9mIGcpe2Nhc2UgIm9iamVjdCI6dmFyIGg9ZyE9bnVsbDticmVhayBhO2Nhc2UgImZ1bmN0aW9uIjpoPSEwO2JyZWFrIGE7ZGVmYXVsdDpoPSExfWg/dGhpcy5HKGcpOnRoaXMuQShnKX19O2UucHJvdG90eXBlLkc9CmZ1bmN0aW9uKGcpe3ZhciBoPXZvaWQgMDt0cnl7aD1nLnRoZW59Y2F0Y2goayl7dGhpcy5vKGspO3JldHVybn10eXBlb2YgaD09ImZ1bmN0aW9uIj90aGlzLkwoaCxnKTp0aGlzLkEoZyl9O2UucHJvdG90eXBlLm89ZnVuY3Rpb24oZyl7dGhpcy5DKDIsZyl9O2UucHJvdG90eXBlLkE9ZnVuY3Rpb24oZyl7dGhpcy5DKDEsZyl9O2UucHJvdG90eXBlLkM9ZnVuY3Rpb24oZyxoKXtpZih0aGlzLmchPTApdGhyb3cgRXJyb3IoImpgIitnKyJgIitoKyJgIit0aGlzLmcpO3RoaXMuZz1nO3RoaXMuaj1oO3RoaXMuZz09PTImJnRoaXMuVygpO3RoaXMuRCgpfTtlLnByb3RvdHlwZS5XPWZ1bmN0aW9uKCl7dmFyIGc9dGhpcztkKGZ1bmN0aW9uKCl7aWYoZy5GKCkpe3ZhciBoPV8uUGIuY29uc29sZTt0eXBlb2YgaCE9PSJ1bmRlZmluZWQiJiZoLmVycm9yKGcuail9fSwxKX07ZS5wcm90b3R5cGUuRj1mdW5jdGlvbigpe2lmKHRoaXMuQilyZXR1cm4hMTt2YXIgZz1fLlBiLkN1c3RvbUV2ZW50LApoPV8uUGIuRXZlbnQsaz1fLlBiLmRpc3BhdGNoRXZlbnQ7aWYodHlwZW9mIGs9PT0idW5kZWZpbmVkIilyZXR1cm4hMDt0eXBlb2YgZz09PSJmdW5jdGlvbiI/Zz1uZXcgZygidW5oYW5kbGVkcmVqZWN0aW9uIix7Y2FuY2VsYWJsZTohMH0pOnR5cGVvZiBoPT09ImZ1bmN0aW9uIj9nPW5ldyBoKCJ1bmhhbmRsZWRyZWplY3Rpb24iLHtjYW5jZWxhYmxlOiEwfSk6KGc9Xy5QYi5kb2N1bWVudC5jcmVhdGVFdmVudCgiQ3VzdG9tRXZlbnQiKSxnLmluaXRDdXN0b21FdmVudCgidW5oYW5kbGVkcmVqZWN0aW9uIiwhMSwhMCxnKSk7Zy5wcm9taXNlPXRoaXM7Zy5yZWFzb249dGhpcy5qO3JldHVybiBrKGcpfTtlLnByb3RvdHlwZS5EPWZ1bmN0aW9uKCl7aWYodGhpcy5oIT1udWxsKXtmb3IodmFyIGc9MDtnPHRoaXMuaC5sZW5ndGg7KytnKWYuaCh0aGlzLmhbZ10pO3RoaXMuaD1udWxsfX07dmFyIGY9bmV3IGI7ZS5wcm90b3R5cGUuSz1mdW5jdGlvbihnKXt2YXIgaD10aGlzLmwoKTtnLkljKGgucmVzb2x2ZSwKaC5yZWplY3QpfTtlLnByb3RvdHlwZS5MPWZ1bmN0aW9uKGcsaCl7dmFyIGs9dGhpcy5sKCk7dHJ5e2cuY2FsbChoLGsucmVzb2x2ZSxrLnJlamVjdCl9Y2F0Y2gobCl7ay5yZWplY3QobCl9fTtlLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKGcsaCl7ZnVuY3Rpb24gayhwLHIpe3JldHVybiB0eXBlb2YgcD09ImZ1bmN0aW9uIj9mdW5jdGlvbih0KXt0cnl7bChwKHQpKX1jYXRjaChBKXtuKEEpfX06cn12YXIgbCxuLHE9bmV3IGUoZnVuY3Rpb24ocCxyKXtsPXA7bj1yfSk7dGhpcy5JYyhrKGcsbCksayhoLG4pKTtyZXR1cm4gcX07ZS5wcm90b3R5cGUuY2F0Y2g9ZnVuY3Rpb24oZyl7cmV0dXJuIHRoaXMudGhlbih2b2lkIDAsZyl9O2UucHJvdG90eXBlLkljPWZ1bmN0aW9uKGcsaCl7ZnVuY3Rpb24gaygpe3N3aXRjaChsLmcpe2Nhc2UgMTpnKGwuaik7YnJlYWs7Y2FzZSAyOmgobC5qKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKCJrYCIrbC5nKTt9fXZhciBsPXRoaXM7dGhpcy5oPT0KbnVsbD9mLmgoayk6dGhpcy5oLnB1c2goayk7dGhpcy5CPSEwfTtlLnJlc29sdmU9YztlLnJlamVjdD1mdW5jdGlvbihnKXtyZXR1cm4gbmV3IGUoZnVuY3Rpb24oaCxrKXtrKGcpfSl9O2UucmFjZT1mdW5jdGlvbihnKXtyZXR1cm4gbmV3IGUoZnVuY3Rpb24oaCxrKXtmb3IodmFyIGw9Xy5DKGcpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKWMobi52YWx1ZSkuSWMoaCxrKX0pfTtlLmFsbD1mdW5jdGlvbihnKXt2YXIgaD1fLkMoZyksaz1oLm5leHQoKTtyZXR1cm4gay5kb25lP2MoW10pOm5ldyBlKGZ1bmN0aW9uKGwsbil7ZnVuY3Rpb24gcSh0KXtyZXR1cm4gZnVuY3Rpb24oQSl7cFt0XT1BO3ItLTtyPT0wJiZsKHApfX12YXIgcD1bXSxyPTA7ZG8gcC5wdXNoKHZvaWQgMCkscisrLGMoay52YWx1ZSkuSWMocShwLmxlbmd0aC0xKSxuKSxrPWgubmV4dCgpO3doaWxlKCFrLmRvbmUpfSl9O3JldHVybiBlfSk7CnZhciBoYz1mdW5jdGlvbihhLGIsYyl7aWYoYT09bnVsbCl0aHJvdyBuZXcgVHlwZUVycm9yKCJsYCIrYyk7aWYoYiBpbnN0YW5jZW9mIFJlZ0V4cCl0aHJvdyBuZXcgVHlwZUVycm9yKCJtYCIrYyk7cmV0dXJuIGErIiJ9O3ooIlN0cmluZy5wcm90b3R5cGUuc3RhcnRzV2l0aCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe3ZhciBkPWhjKHRoaXMsYiwic3RhcnRzV2l0aCIpLGU9ZC5sZW5ndGgsZj1iLmxlbmd0aDtjPU1hdGgubWF4KDAsTWF0aC5taW4oY3wwLGQubGVuZ3RoKSk7Zm9yKHZhciBnPTA7ZzxmJiZjPGU7KWlmKGRbYysrXSE9YltnKytdKXJldHVybiExO3JldHVybiBnPj1mfX0pO3ooIk9iamVjdC5zZXRQcm90b3R5cGVPZiIsZnVuY3Rpb24oYSl7cmV0dXJuIGF8fFlifSk7eigiU3ltYm9sLmRpc3Bvc2UiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6U3ltYm9sKCJuIil9KTsKeigiV2Vha01hcCIsZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYigpe31mdW5jdGlvbiBjKGspe3ZhciBsPXR5cGVvZiBrO3JldHVybiBsPT09Im9iamVjdCImJmshPT1udWxsfHxsPT09ImZ1bmN0aW9uIn1mdW5jdGlvbiBkKGspe2lmKCFhYyhrLGYpKXt2YXIgbD1uZXcgYjtOYihrLGYse3ZhbHVlOmx9KX19ZnVuY3Rpb24gZShrKXt2YXIgbD1PYmplY3Rba107bCYmKE9iamVjdFtrXT1mdW5jdGlvbihuKXtpZihuIGluc3RhbmNlb2YgYilyZXR1cm4gbjtPYmplY3QuaXNFeHRlbnNpYmxlKG4pJiZkKG4pO3JldHVybiBsKG4pfSl9aWYoZnVuY3Rpb24oKXtpZighYXx8IU9iamVjdC5zZWFsKXJldHVybiExO3RyeXt2YXIgaz1PYmplY3Quc2VhbCh7fSksbD1PYmplY3Quc2VhbCh7fSksbj1uZXcgYShbW2ssMl0sW2wsM11dKTtpZihuLmdldChrKSE9Mnx8bi5nZXQobCkhPTMpcmV0dXJuITE7bi5kZWxldGUoayk7bi5zZXQobCw0KTtyZXR1cm4hbi5oYXMoaykmJm4uZ2V0KGwpPT00fWNhdGNoKHEpe3JldHVybiExfX0oKSlyZXR1cm4gYTsKdmFyIGY9IiRqc2NvbXBfaGlkZGVuXyIrTWF0aC5yYW5kb20oKTtlKCJmcmVlemUiKTtlKCJwcmV2ZW50RXh0ZW5zaW9ucyIpO2UoInNlYWwiKTt2YXIgZz0wLGg9ZnVuY3Rpb24oayl7dGhpcy5nPShnKz1NYXRoLnJhbmRvbSgpKzEpLnRvU3RyaW5nKCk7aWYoayl7az1fLkMoayk7Zm9yKHZhciBsOyEobD1rLm5leHQoKSkuZG9uZTspbD1sLnZhbHVlLHRoaXMuc2V0KGxbMF0sbFsxXSl9fTtoLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oayxsKXtpZighYyhrKSl0aHJvdyBFcnJvcigibyIpO2Qoayk7aWYoIWFjKGssZikpdGhyb3cgRXJyb3IoInBgIitrKTtrW2ZdW3RoaXMuZ109bDtyZXR1cm4gdGhpc307aC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGspe3JldHVybiBjKGspJiZhYyhrLGYpP2tbZl1bdGhpcy5nXTp2b2lkIDB9O2gucHJvdG90eXBlLmhhcz1mdW5jdGlvbihrKXtyZXR1cm4gYyhrKSYmYWMoayxmKSYmYWMoa1tmXSx0aGlzLmcpfTtoLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24oayl7cmV0dXJuIGMoaykmJgphYyhrLGYpJiZhYyhrW2ZdLHRoaXMuZyk/ZGVsZXRlIGtbZl1bdGhpcy5nXTohMX07cmV0dXJuIGh9KTsKeigiTWFwIixmdW5jdGlvbihhKXtpZihmdW5jdGlvbigpe2lmKCFhfHx0eXBlb2YgYSE9ImZ1bmN0aW9uInx8IWEucHJvdG90eXBlLmVudHJpZXN8fHR5cGVvZiBPYmplY3Quc2VhbCE9ImZ1bmN0aW9uIilyZXR1cm4hMTt0cnl7dmFyIGg9T2JqZWN0LnNlYWwoe3g6NH0pLGs9bmV3IGEoXy5DKFtbaCwicyJdXSkpO2lmKGsuZ2V0KGgpIT0icyJ8fGsuc2l6ZSE9MXx8ay5nZXQoe3g6NH0pfHxrLnNldCh7eDo0fSwidCIpIT1rfHxrLnNpemUhPTIpcmV0dXJuITE7dmFyIGw9ay5lbnRyaWVzKCksbj1sLm5leHQoKTtpZihuLmRvbmV8fG4udmFsdWVbMF0hPWh8fG4udmFsdWVbMV0hPSJzIilyZXR1cm4hMTtuPWwubmV4dCgpO3JldHVybiBuLmRvbmV8fG4udmFsdWVbMF0ueCE9NHx8bi52YWx1ZVsxXSE9InQifHwhbC5uZXh0KCkuZG9uZT8hMTohMH1jYXRjaChxKXtyZXR1cm4hMX19KCkpcmV0dXJuIGE7dmFyIGI9bmV3IFdlYWtNYXAsYz1mdW5jdGlvbihoKXt0aGlzWzBdPXt9O3RoaXNbMV09CmYoKTt0aGlzLnNpemU9MDtpZihoKXtoPV8uQyhoKTtmb3IodmFyIGs7IShrPWgubmV4dCgpKS5kb25lOylrPWsudmFsdWUsdGhpcy5zZXQoa1swXSxrWzFdKX19O2MucHJvdG90eXBlLnNldD1mdW5jdGlvbihoLGspe2g9aD09PTA/MDpoO3ZhciBsPWQodGhpcyxoKTtsLmxpc3R8fChsLmxpc3Q9dGhpc1swXVtsLmlkXT1bXSk7bC5lbnRyeT9sLmVudHJ5LnZhbHVlPWs6KGwuZW50cnk9e25leHQ6dGhpc1sxXSxiYjp0aGlzWzFdLmJiLGhlYWQ6dGhpc1sxXSxrZXk6aCx2YWx1ZTprfSxsLmxpc3QucHVzaChsLmVudHJ5KSx0aGlzWzFdLmJiLm5leHQ9bC5lbnRyeSx0aGlzWzFdLmJiPWwuZW50cnksdGhpcy5zaXplKyspO3JldHVybiB0aGlzfTtjLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24oaCl7aD1kKHRoaXMsaCk7cmV0dXJuIGguZW50cnkmJmgubGlzdD8oaC5saXN0LnNwbGljZShoLmluZGV4LDEpLGgubGlzdC5sZW5ndGh8fGRlbGV0ZSB0aGlzWzBdW2guaWRdLGguZW50cnkuYmIubmV4dD0KaC5lbnRyeS5uZXh0LGguZW50cnkubmV4dC5iYj1oLmVudHJ5LmJiLGguZW50cnkuaGVhZD1udWxsLHRoaXMuc2l6ZS0tLCEwKTohMX07Yy5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzWzBdPXt9O3RoaXNbMV09dGhpc1sxXS5iYj1mKCk7dGhpcy5zaXplPTB9O2MucHJvdG90eXBlLmhhcz1mdW5jdGlvbihoKXtyZXR1cm4hIWQodGhpcyxoKS5lbnRyeX07Yy5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGgpe3JldHVybihoPWQodGhpcyxoKS5lbnRyeSkmJmgudmFsdWV9O2MucHJvdG90eXBlLmVudHJpZXM9ZnVuY3Rpb24oKXtyZXR1cm4gZSh0aGlzLGZ1bmN0aW9uKGgpe3JldHVybltoLmtleSxoLnZhbHVlXX0pfTtjLnByb3RvdHlwZS5rZXlzPWZ1bmN0aW9uKCl7cmV0dXJuIGUodGhpcyxmdW5jdGlvbihoKXtyZXR1cm4gaC5rZXl9KX07Yy5wcm90b3R5cGUudmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIGUodGhpcyxmdW5jdGlvbihoKXtyZXR1cm4gaC52YWx1ZX0pfTtjLnByb3RvdHlwZS5mb3JFYWNoPQpmdW5jdGlvbihoLGspe2Zvcih2YXIgbD10aGlzLmVudHJpZXMoKSxuOyEobj1sLm5leHQoKSkuZG9uZTspbj1uLnZhbHVlLGguY2FsbChrLG5bMV0sblswXSx0aGlzKX07Yy5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1jLnByb3RvdHlwZS5lbnRyaWVzO3ZhciBkPWZ1bmN0aW9uKGgsayl7dmFyIGw9ayYmdHlwZW9mIGs7bD09Im9iamVjdCJ8fGw9PSJmdW5jdGlvbiI/Yi5oYXMoayk/bD1iLmdldChrKToobD0iIisgKytnLGIuc2V0KGssbCkpOmw9InBfIitrO3ZhciBuPWhbMF1bbF07aWYobiYmYWMoaFswXSxsKSlmb3IoaD0wO2g8bi5sZW5ndGg7aCsrKXt2YXIgcT1uW2hdO2lmKGshPT1rJiZxLmtleSE9PXEua2V5fHxrPT09cS5rZXkpcmV0dXJue2lkOmwsbGlzdDpuLGluZGV4OmgsZW50cnk6cX19cmV0dXJue2lkOmwsbGlzdDpuLGluZGV4Oi0xLGVudHJ5OnZvaWQgMH19LGU9ZnVuY3Rpb24oaCxrKXt2YXIgbD1oWzFdO3JldHVybiBmYyhmdW5jdGlvbigpe2lmKGwpe2Zvcig7bC5oZWFkIT0KaFsxXTspbD1sLmJiO2Zvcig7bC5uZXh0IT1sLmhlYWQ7KXJldHVybiBsPWwubmV4dCx7ZG9uZTohMSx2YWx1ZTprKGwpfTtsPW51bGx9cmV0dXJue2RvbmU6ITAsdmFsdWU6dm9pZCAwfX0pfSxmPWZ1bmN0aW9uKCl7dmFyIGg9e307cmV0dXJuIGguYmI9aC5uZXh0PWguaGVhZD1ofSxnPTA7cmV0dXJuIGN9KTsKeigiU2V0IixmdW5jdGlvbihhKXtpZihmdW5jdGlvbigpe2lmKCFhfHx0eXBlb2YgYSE9ImZ1bmN0aW9uInx8IWEucHJvdG90eXBlLmVudHJpZXN8fHR5cGVvZiBPYmplY3Quc2VhbCE9ImZ1bmN0aW9uIilyZXR1cm4hMTt0cnl7dmFyIGM9T2JqZWN0LnNlYWwoe3g6NH0pLGQ9bmV3IGEoXy5DKFtjXSkpO2lmKCFkLmhhcyhjKXx8ZC5zaXplIT0xfHxkLmFkZChjKSE9ZHx8ZC5zaXplIT0xfHxkLmFkZCh7eDo0fSkhPWR8fGQuc2l6ZSE9MilyZXR1cm4hMTt2YXIgZT1kLmVudHJpZXMoKSxmPWUubmV4dCgpO2lmKGYuZG9uZXx8Zi52YWx1ZVswXSE9Y3x8Zi52YWx1ZVsxXSE9YylyZXR1cm4hMTtmPWUubmV4dCgpO3JldHVybiBmLmRvbmV8fGYudmFsdWVbMF09PWN8fGYudmFsdWVbMF0ueCE9NHx8Zi52YWx1ZVsxXSE9Zi52YWx1ZVswXT8hMTplLm5leHQoKS5kb25lfWNhdGNoKGcpe3JldHVybiExfX0oKSlyZXR1cm4gYTt2YXIgYj1mdW5jdGlvbihjKXt0aGlzLmc9bmV3IE1hcDtpZihjKXtjPQpfLkMoYyk7Zm9yKHZhciBkOyEoZD1jLm5leHQoKSkuZG9uZTspdGhpcy5hZGQoZC52YWx1ZSl9dGhpcy5zaXplPXRoaXMuZy5zaXplfTtiLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYyl7Yz1jPT09MD8wOmM7dGhpcy5nLnNldChjLGMpO3RoaXMuc2l6ZT10aGlzLmcuc2l6ZTtyZXR1cm4gdGhpc307Yi5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKGMpe2M9dGhpcy5nLmRlbGV0ZShjKTt0aGlzLnNpemU9dGhpcy5nLnNpemU7cmV0dXJuIGN9O2IucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy5nLmNsZWFyKCk7dGhpcy5zaXplPTB9O2IucHJvdG90eXBlLmhhcz1mdW5jdGlvbihjKXtyZXR1cm4gdGhpcy5nLmhhcyhjKX07Yi5wcm90b3R5cGUuZW50cmllcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcuZW50cmllcygpfTtiLnByb3RvdHlwZS52YWx1ZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nLnZhbHVlcygpfTtiLnByb3RvdHlwZS5rZXlzPWIucHJvdG90eXBlLnZhbHVlczsKYi5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1iLnByb3RvdHlwZS52YWx1ZXM7Yi5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbihjLGQpe3ZhciBlPXRoaXM7dGhpcy5nLmZvckVhY2goZnVuY3Rpb24oZil7cmV0dXJuIGMuY2FsbChkLGYsZixlKX0pfTtyZXR1cm4gYn0pO3ZhciBpYz1mdW5jdGlvbihhLGIpe2EgaW5zdGFuY2VvZiBTdHJpbmcmJihhKz0iIik7dmFyIGM9MCxkPSExLGU9e25leHQ6ZnVuY3Rpb24oKXtpZighZCYmYzxhLmxlbmd0aCl7dmFyIGY9YysrO3JldHVybnt2YWx1ZTpiKGYsYVtmXSksZG9uZTohMX19ZD0hMDtyZXR1cm57ZG9uZTohMCx2YWx1ZTp2b2lkIDB9fX07ZVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIGV9O3JldHVybiBlfTt6KCJBcnJheS5wcm90b3R5cGUuZW50cmllcyIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbigpe3JldHVybiBpYyh0aGlzLGZ1bmN0aW9uKGIsYyl7cmV0dXJuW2IsY119KX19KTsKeigiQXJyYXkucHJvdG90eXBlLmtleXMiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oKXtyZXR1cm4gaWModGhpcyxmdW5jdGlvbihiKXtyZXR1cm4gYn0pfX0pO3ooIlN0cmluZy5wcm90b3R5cGUuZW5kc1dpdGgiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXt2YXIgZD1oYyh0aGlzLGIsImVuZHNXaXRoIik7Yz09PXZvaWQgMCYmKGM9ZC5sZW5ndGgpO2M9TWF0aC5tYXgoMCxNYXRoLm1pbihjfDAsZC5sZW5ndGgpKTtmb3IodmFyIGU9Yi5sZW5ndGg7ZT4wJiZjPjA7KWlmKGRbLS1jXSE9YlstLWVdKXJldHVybiExO3JldHVybiBlPD0wfX0pO3ooIk51bWJlci5pc0Zpbml0ZSIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXtyZXR1cm4gdHlwZW9mIGIhPT0ibnVtYmVyIj8hMTohaXNOYU4oYikmJmIhPT1JbmZpbml0eSYmYiE9PS1JbmZpbml0eX19KTsKeigiQXJyYXkucHJvdG90eXBlLmZpbmQiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXthOnt2YXIgZD10aGlzO2QgaW5zdGFuY2VvZiBTdHJpbmcmJihkPVN0cmluZyhkKSk7Zm9yKHZhciBlPWQubGVuZ3RoLGY9MDtmPGU7ZisrKXt2YXIgZz1kW2ZdO2lmKGIuY2FsbChjLGcsZixkKSl7Yj1nO2JyZWFrIGF9fWI9dm9pZCAwfXJldHVybiBifX0pO3ooIk9iamVjdC5lbnRyaWVzIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIpe3ZhciBjPVtdLGQ7Zm9yKGQgaW4gYilhYyhiLGQpJiZjLnB1c2goW2QsYltkXV0pO3JldHVybiBjfX0pOwp6KCJBcnJheS5mcm9tIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIsYyxkKXtjPWMhPW51bGw/YzpmdW5jdGlvbihoKXtyZXR1cm4gaH07dmFyIGU9W10sZj10eXBlb2YgU3ltYm9sIT0idW5kZWZpbmVkIiYmU3ltYm9sLml0ZXJhdG9yJiZiW1N5bWJvbC5pdGVyYXRvcl07aWYodHlwZW9mIGY9PSJmdW5jdGlvbiIpe2I9Zi5jYWxsKGIpO2Zvcih2YXIgZz0wOyEoZj1iLm5leHQoKSkuZG9uZTspZS5wdXNoKGMuY2FsbChkLGYudmFsdWUsZysrKSl9ZWxzZSBmb3IoZj1iLmxlbmd0aCxnPTA7ZzxmO2crKyllLnB1c2goYy5jYWxsKGQsYltnXSxnKSk7cmV0dXJuIGV9fSk7eigiQXJyYXkucHJvdG90eXBlLnZhbHVlcyIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbigpe3JldHVybiBpYyh0aGlzLGZ1bmN0aW9uKGIsYyl7cmV0dXJuIGN9KX19KTsKeigiT2JqZWN0LnZhbHVlcyIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXt2YXIgYz1bXSxkO2ZvcihkIGluIGIpYWMoYixkKSYmYy5wdXNoKGJbZF0pO3JldHVybiBjfX0pO3ooIk9iamVjdC5pcyIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe3JldHVybiBiPT09Yz9iIT09MHx8MS9iPT09MS9jOmIhPT1iJiZjIT09Y319KTt6KCJBcnJheS5wcm90b3R5cGUuaW5jbHVkZXMiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXt2YXIgZD10aGlzO2QgaW5zdGFuY2VvZiBTdHJpbmcmJihkPVN0cmluZyhkKSk7dmFyIGU9ZC5sZW5ndGg7Yz1jfHwwO2ZvcihjPDAmJihjPU1hdGgubWF4KGMrZSwwKSk7YzxlO2MrKyl7dmFyIGY9ZFtjXTtpZihmPT09Ynx8T2JqZWN0LmlzKGYsYikpcmV0dXJuITB9cmV0dXJuITF9fSk7CnooIlN0cmluZy5wcm90b3R5cGUuaW5jbHVkZXMiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXtyZXR1cm4gaGModGhpcyxiLCJpbmNsdWRlcyIpLmluZGV4T2YoYixjfHwwKSE9PS0xfX0pO3ooIk51bWJlci5NQVhfU0FGRV9JTlRFR0VSIixmdW5jdGlvbigpe3JldHVybiA5MDA3MTk5MjU0NzQwOTkxfSk7eigiTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVIiLGZ1bmN0aW9uKCl7cmV0dXJuLTkwMDcxOTkyNTQ3NDA5OTF9KTt6KCJOdW1iZXIuaXNJbnRlZ2VyIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIpe3JldHVybiBOdW1iZXIuaXNGaW5pdGUoYik/Yj09PU1hdGguZmxvb3IoYik6ITF9fSk7eigiTnVtYmVyLmlzU2FmZUludGVnZXIiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYil7cmV0dXJuIE51bWJlci5pc0ludGVnZXIoYikmJk1hdGguYWJzKGIpPD1OdW1iZXIuTUFYX1NBRkVfSU5URUdFUn19KTsKeigiT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbigpe3JldHVybltdfX0pO3ooIk1hdGgudHJ1bmMiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYil7Yj1OdW1iZXIoYik7aWYoaXNOYU4oYil8fGI9PT1JbmZpbml0eXx8Yj09PS1JbmZpbml0eXx8Yj09PTApcmV0dXJuIGI7dmFyIGM9TWF0aC5mbG9vcihNYXRoLmFicyhiKSk7cmV0dXJuIGI8MD8tYzpjfX0pO3ooIk51bWJlci5pc05hTiIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXtyZXR1cm4gdHlwZW9mIGI9PT0ibnVtYmVyIiYmaXNOYU4oYil9fSk7CnooIlN0cmluZy5wcm90b3R5cGUucmVwbGFjZUFsbCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe2lmKGIgaW5zdGFuY2VvZiBSZWdFeHAmJiFiLmdsb2JhbCl0aHJvdyBuZXcgVHlwZUVycm9yKCJxIik7cmV0dXJuIGIgaW5zdGFuY2VvZiBSZWdFeHA/dGhpcy5yZXBsYWNlKGIsYyk6dGhpcy5yZXBsYWNlKG5ldyBSZWdFeHAoU3RyaW5nKGIpLnJlcGxhY2UoLyhbLSgpXFtcXXt9Kz8qLiRcXnwsOiM8IVxcXSkvZywiXFwkMSIpLnJlcGxhY2UoL1x4MDgvZywiXFx4MDgiKSwiZyIpLGMpfX0pOwp6KCJBcnJheS5wcm90b3R5cGUuZmxhdCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXtiPWI9PT12b2lkIDA/MTpiO3ZhciBjPVtdO0FycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwodGhpcyxmdW5jdGlvbihkKXtBcnJheS5pc0FycmF5KGQpJiZiPjA/KGQ9QXJyYXkucHJvdG90eXBlLmZsYXQuY2FsbChkLGItMSksYy5wdXNoLmFwcGx5KGMsZCkpOmMucHVzaChkKX0pO3JldHVybiBjfX0pO3ooIlByb21pc2UucHJvdG90eXBlLmZpbmFsbHkiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYil7cmV0dXJuIHRoaXMudGhlbihmdW5jdGlvbihjKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGIoKSkudGhlbihmdW5jdGlvbigpe3JldHVybiBjfSl9LGZ1bmN0aW9uKGMpe3JldHVybiBQcm9taXNlLnJlc29sdmUoYigpKS50aGVuKGZ1bmN0aW9uKCl7dGhyb3cgYzt9KX0pfX0pOwp6KCJBcnJheS5wcm90b3R5cGUuZmlsbCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMsZCl7dmFyIGU9dGhpcy5sZW5ndGh8fDA7YzwwJiYoYz1NYXRoLm1heCgwLGUrYykpO2lmKGQ9PW51bGx8fGQ+ZSlkPWU7ZD1OdW1iZXIoZCk7ZDwwJiYoZD1NYXRoLm1heCgwLGUrZCkpO2ZvcihjPU51bWJlcihjfHwwKTtjPGQ7YysrKXRoaXNbY109YjtyZXR1cm4gdGhpc319KTtTYigiZmlsbCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpBcnJheS5wcm90b3R5cGUuZmlsbH0pO18uX0R1bXBFeGNlcHRpb249d2luZG93Ll9EdW1wRXhjZXB0aW9ufHxmdW5jdGlvbihhKXt0aHJvdyBhO307d2luZG93Ll9EdW1wRXhjZXB0aW9uPV8uX0R1bXBFeGNlcHRpb247dmFyIGpjLGxjLG1jLG5jLHphLEFhLHBjLHFjO2pjPWpjfHx7fTtfLnY9dGhpc3x8c2VsZjtsYz1mdW5jdGlvbihhLGIpe3ZhciBjPV8ua2MoIldJWl9nbG9iYWxfZGF0YS5veE4zbmIiKTthPWMmJmNbYV07cmV0dXJuIGEhPW51bGw/YTpifTttYz1fLnYuX0ZfdG9nZ2xlc19kZWZhdWx0X3RyfHxbXTtuYz1mdW5jdGlvbigpe307bmMuZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9O18ua2M9ZnVuY3Rpb24oYSxiKXthPWEuc3BsaXQoIi4iKTtiPWJ8fF8udjtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKylpZihiPWJbYVtjXV0sYj09bnVsbClyZXR1cm4gbnVsbDtyZXR1cm4gYn07Xy5vYz1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgYTtyZXR1cm4gYiE9Im9iamVjdCI/YjphP0FycmF5LmlzQXJyYXkoYSk/ImFycmF5IjpiOiJudWxsIn07Xy5xYT1mdW5jdGlvbihhKXt2YXIgYj1fLm9jKGEpO3JldHVybiBiPT0iYXJyYXkifHxiPT0ib2JqZWN0IiYmdHlwZW9mIGEubGVuZ3RoPT0ibnVtYmVyIn07Cl8ueWE9ZnVuY3Rpb24oYSl7dmFyIGI9dHlwZW9mIGE7cmV0dXJuIGI9PSJvYmplY3QiJiZhIT1udWxsfHxiPT0iZnVuY3Rpb24ifTt6YT0iY2xvc3VyZV91aWRfIisoTWF0aC5yYW5kb20oKSoxRTk+Pj4wKTtBYT0wO3BjPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYS5jYWxsLmFwcGx5KGEuYmluZCxhcmd1bWVudHMpfTtxYz1mdW5jdGlvbihhLGIsYyl7aWYoIWEpdGhyb3cgRXJyb3IoKTtpZihhcmd1bWVudHMubGVuZ3RoPjIpe3ZhciBkPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywyKTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZT1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpO0FycmF5LnByb3RvdHlwZS51bnNoaWZ0LmFwcGx5KGUsZCk7cmV0dXJuIGEuYXBwbHkoYixlKX19cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGEuYXBwbHkoYixhcmd1bWVudHMpfX07Cl8ueT1mdW5jdGlvbihhLGIsYyl7Xy55PUZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kJiZGdW5jdGlvbi5wcm90b3R5cGUuYmluZC50b1N0cmluZygpLmluZGV4T2YoIm5hdGl2ZSBjb2RlIikhPS0xP3BjOnFjO3JldHVybiBfLnkuYXBwbHkobnVsbCxhcmd1bWVudHMpfTtfLnJjPWZ1bmN0aW9uKGEsYil7YT1hLnNwbGl0KCIuIik7Zm9yKHZhciBjPV8udixkO2EubGVuZ3RoJiYoZD1hLnNoaWZ0KCkpOylhLmxlbmd0aHx8Yj09PXZvaWQgMD9jW2RdJiZjW2RdIT09T2JqZWN0LnByb3RvdHlwZVtkXT9jPWNbZF06Yz1jW2RdPXt9OmNbZF09Yn07Cl8uRz1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoKXt9Yy5wcm90b3R5cGU9Yi5wcm90b3R5cGU7YS5lYT1iLnByb3RvdHlwZTthLnByb3RvdHlwZT1uZXcgYzthLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1hO2EuTWs9ZnVuY3Rpb24oZCxlLGYpe2Zvcih2YXIgZz1BcnJheShhcmd1bWVudHMubGVuZ3RoLTIpLGg9MjtoPGFyZ3VtZW50cy5sZW5ndGg7aCsrKWdbaC0yXT1hcmd1bWVudHNbaF07cmV0dXJuIGIucHJvdG90eXBlW2VdLmFwcGx5KGQsZyl9fTtfLkcoYWEsRXJyb3IpO2FhLnByb3RvdHlwZS5uYW1lPSJDdXN0b21FcnJvciI7dmFyIHNjO18uRyhjYSxhYSk7Y2EucHJvdG90eXBlLm5hbWU9IkFzc2VydGlvbkVycm9yIjt2YXIgZWE7dmFyIHRjPWZ1bmN0aW9uKGEsYil7dGhpcy5oPWE7dGhpcy5nPWJ8fG51bGx9O3RjLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmh9O3ZhciB1Yz1uZXcgdGMoIm43M3F3ZiIsIm43M3F3ZiIpO3ZhciBuYT1TeW1ib2woInMiKTtfLnUucHJvdG90eXBlLnFhPSExO18udS5wcm90b3R5cGUucWI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5xYX07Xy51LnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7dGhpcy5xYXx8KHRoaXMucWE9ITAsdGhpcy5NKCkpfTtfLnUucHJvdG90eXBlW1N5bWJvbC5kaXNwb3NlXT1mdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpfTtfLnUucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtpZih0aGlzLlcpZm9yKDt0aGlzLlcubGVuZ3RoOyl0aGlzLlcuc2hpZnQoKSgpfTt2YXIgc2Esd2M7c2E9QXJyYXkucHJvdG90eXBlLmluZGV4T2Y/ZnVuY3Rpb24oYSxiKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmluZGV4T2YuY2FsbChhLGIsdm9pZCAwKX06ZnVuY3Rpb24oYSxiKXtpZih0eXBlb2YgYT09PSJzdHJpbmciKXJldHVybiB0eXBlb2YgYiE9PSJzdHJpbmcifHxiLmxlbmd0aCE9MT8tMTphLmluZGV4T2YoYiwwKTtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKylpZihjIGluIGEmJmFbY109PT1iKXJldHVybiBjO3JldHVybi0xfTtfLnZjPUFycmF5LnByb3RvdHlwZS5mb3JFYWNoP2Z1bmN0aW9uKGEsYil7QXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChhLGIsdm9pZCAwKX06ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9YS5sZW5ndGgsZD10eXBlb2YgYT09PSJzdHJpbmciP2Euc3BsaXQoIiIpOmEsZT0wO2U8YztlKyspZSBpbiBkJiZiLmNhbGwodm9pZCAwLGRbZV0sZSxhKX07CndjPUFycmF5LnByb3RvdHlwZS5yZWR1Y2U/ZnVuY3Rpb24oYSxiLGMpe0FycmF5LnByb3RvdHlwZS5yZWR1Y2UuY2FsbChhLGIsYyl9OmZ1bmN0aW9uKGEsYixjKXt2YXIgZD1jOygwLF8udmMpKGEsZnVuY3Rpb24oZSxmKXtkPWIuY2FsbCh2b2lkIDAsZCxlLGYsYSl9KX07Xy54Yz1BcnJheS5wcm90b3R5cGUuc29tZT9mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUuc29tZS5jYWxsKGEsYix2b2lkIDApfTpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1hLmxlbmd0aCxkPXR5cGVvZiBhPT09InN0cmluZyI/YS5zcGxpdCgiIik6YSxlPTA7ZTxjO2UrKylpZihlIGluIGQmJmIuY2FsbCh2b2lkIDAsZFtlXSxlLGEpKXJldHVybiEwO3JldHVybiExfTtfLnljPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9PWI/ITA6YSYmYj9hLndpZHRoPT1iLndpZHRoJiZhLmhlaWdodD09Yi5oZWlnaHQ6ITF9O18uQ2EucHJvdG90eXBlLmFzcGVjdFJhdGlvPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMud2lkdGgvdGhpcy5oZWlnaHR9O18uQ2EucHJvdG90eXBlLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLndpZHRoPU1hdGguY2VpbCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmNlaWwodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTtfLkNhLnByb3RvdHlwZS5mbG9vcj1mdW5jdGlvbigpe3RoaXMud2lkdGg9TWF0aC5mbG9vcih0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmZsb29yKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307Xy5DYS5wcm90b3R5cGUucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLndpZHRoPU1hdGgucm91bmQodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5yb3VuZCh0aGlzLmhlaWdodCk7cmV0dXJuIHRoaXN9O3ZhciBFYTtFYT0iY29uc3RydWN0b3IgaGFzT3duUHJvcGVydHkgaXNQcm90b3R5cGVPZiBwcm9wZXJ0eUlzRW51bWVyYWJsZSB0b0xvY2FsZVN0cmluZyB0b1N0cmluZyB2YWx1ZU9mIi5zcGxpdCgiICIpO18uemM9ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZCBpbiBhKWIuY2FsbChjLGFbZF0sZCxhKX07Xy5BYz1TdHJpbmcucHJvdG90eXBlLnRyaW0/ZnVuY3Rpb24oYSl7cmV0dXJuIGEudHJpbSgpfTpmdW5jdGlvbihhKXtyZXR1cm4vXltcc1x4YTBdKihbXHNcU10qPylbXHNceGEwXSokLy5leGVjKGEpWzFdfTt2YXIgQmM9Z2xvYmFsVGhpcy50cnVzdGVkVHlwZXMsSGE9QmMsSmE7Xy5MYT1mdW5jdGlvbihhKXt0aGlzLmc9YX07Xy5MYS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nKyIifTtfLkNjPUdhKGZ1bmN0aW9uKCl7cmV0dXJuIHR5cGVvZiBVUkw9PT0iZnVuY3Rpb24ifSk7Xy5EYz1mdW5jdGlvbihhKXt0aGlzLmc9YX07Xy5EYy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nKyIifTtfLkVjPUdhKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBfLkRjKEJjP0JjLmVtcHR5SFRNTDoiIil9KTtfLlBhPWZ1bmN0aW9uKGEpe3RoaXMuZz1hfTtfLlBhLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcrIiJ9O18uR2I9ZnVuY3Rpb24oYSl7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoYSkpfTtfLkRiPWZ1bmN0aW9uKGEpe3JldHVybiBkZWNvZGVVUklDb21wb25lbnQoYS5yZXBsYWNlKC9cKy9nLCIgIikpfTt2YXIgRmM9ISEobWNbMF0+PjI1JjEpLEdjPSEhKG1jWzBdPj4yMCYxKSxIYz0hIShtY1swXT4+MjcmMSksSWM9ISEobWNbMF0mODE5MiksSmM9ISEobWNbMF0+PjE5JjEpLEtjPSEhKG1jWzBdPj4xNyYxKSxMYz0hIShtY1swXT4+MTgmMSk7dmFyIHRiLE5jLE9jO18uVWE9RmM/SGM6bGMoNjEwNDAxMzAxLCExKTtfLk1jPUZjP0djfHwhSWM6bGMoNzQ4NDAyMTQ3LCEwKTt0Yj1GYz9KYzpsYyg5MTk0NDQ4MjQsITEpO05jPUZjP0tjOmxjKDkyODg3NTM5OCwhMSk7T2M9RmM/TGM6bGMoNjgzNzQ5MjAxLCExKTt2YXIgUGM7UGM9Xy52Lm5hdmlnYXRvcjtfLlZhPVBjP1BjLnVzZXJBZ2VudERhdGF8fG51bGw6bnVsbDtfLlFjPWZ1bmN0aW9uKGEpe18uUWNbIiAiXShhKTtyZXR1cm4gYX07Xy5RY1siICJdPWZ1bmN0aW9uKCl7fTt2YXIgZWQ7Xy5SYz1fLlhhKCk7Xy5TYz1fLldhKCk/ITE6Xy53KCJUcmlkZW50Iil8fF8udygiTVNJRSIpO18uVGM9Xy53KCJFZGdlIik7Xy5VYz1fLncoIkdlY2tvIikmJiEoXy5UYSgpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigid2Via2l0IikhPS0xJiYhXy53KCJFZGdlIikpJiYhKF8udygiVHJpZGVudCIpfHxfLncoIk1TSUUiKSkmJiFfLncoIkVkZ2UiKTtfLlZjPV8uVGEoKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoIndlYmtpdCIpIT0tMSYmIV8udygiRWRnZSIpO18uV2M9Xy5WYyYmXy53KCJNb2JpbGUiKTtfLlljPV8uYWIoKTtfLlpjPVlhKCk/Xy5WYS5wbGF0Zm9ybT09PSJXaW5kb3dzIjpfLncoIldpbmRvd3MiKTtfLiRjPVlhKCk/Xy5WYS5wbGF0Zm9ybT09PSJBbmRyb2lkIjpfLncoIkFuZHJvaWQiKTtfLmFkPV8uWmEoKTtfLmJkPV8udygiaVBhZCIpO18uY2Q9Xy53KCJpUG9kIik7Xy5kZD1fLiRhKCk7CmE6e3ZhciBmZD0iIixnZD1mdW5jdGlvbigpe3ZhciBhPV8uVGEoKTtpZihfLlVjKXJldHVybi9ydjooW15cKTtdKykoXCl8OykvLmV4ZWMoYSk7aWYoXy5UYylyZXR1cm4vRWRnZVwvKFtcZFwuXSspLy5leGVjKGEpO2lmKF8uU2MpcmV0dXJuL1xiKD86TVNJRXxydilbOiBdKFteXCk7XSspKFwpfDspLy5leGVjKGEpO2lmKF8uVmMpcmV0dXJuL1dlYktpdFwvKFxTKykvLmV4ZWMoYSk7aWYoXy5SYylyZXR1cm4vKD86VmVyc2lvbilbIFwvXT8oXFMrKS8uZXhlYyhhKX0oKTtnZCYmKGZkPWdkP2dkWzFdOiIiKTtpZihfLlNjKXt2YXIgaGQsaWQ9Xy52LmRvY3VtZW50O2hkPWlkP2lkLmRvY3VtZW50TW9kZTp2b2lkIDA7aWYoaGQhPW51bGwmJmhkPnBhcnNlRmxvYXQoZmQpKXtlZD1TdHJpbmcoaGQpO2JyZWFrIGF9fWVkPWZkfV8uamQ9ZWQ7dmFyIGtkPSJBUlRJQ0xFIFNFQ1RJT04gTkFWIEFTSURFIEgxIEgyIEgzIEg0IEg1IEg2IEhFQURFUiBGT09URVIgQUREUkVTUyBQIEhSIFBSRSBCTE9DS1FVT1RFIE9MIFVMIExIIExJIERMIERUIEREIEZJR1VSRSBGSUdDQVBUSU9OIE1BSU4gRElWIEVNIFNUUk9ORyBTTUFMTCBTIENJVEUgUSBERk4gQUJCUiBSVUJZIFJCIFJUIFJUQyBSUCBEQVRBIFRJTUUgQ09ERSBWQVIgU0FNUCBLQkQgU1VCIFNVUCBJIEIgVSBNQVJLIEJESSBCRE8gU1BBTiBCUiBXQlIgTk9CUiBJTlMgREVMIFBJQ1RVUkUgUEFSQU0gVFJBQ0sgTUFQIFRBQkxFIENBUFRJT04gQ09MR1JPVVAgQ09MIFRCT0RZIFRIRUFEIFRGT09UIFRSIFREIFRIIFNFTEVDVCBEQVRBTElTVCBPUFRHUk9VUCBPUFRJT04gT1VUUFVUIFBST0dSRVNTIE1FVEVSIEZJRUxEU0VUIExFR0VORCBERVRBSUxTIFNVTU1BUlkgTUVOVSBESUFMT0cgU0xPVCBDQU5WQVMgRk9OVCBDRU5URVIgQUNST05ZTSBCQVNFRk9OVCBCSUcgRElSIEhHUk9VUCBTVFJJS0UgVFQiLnNwbGl0KCIgIiksCmxkPVtbIkEiLG5ldyBNYXAoW1siaHJlZiIse3VhOjd9XV0pXSxbIkFSRUEiLG5ldyBNYXAoW1siaHJlZiIse3VhOjd9XV0pXSxbIkxJTksiLG5ldyBNYXAoW1siaHJlZiIse3VhOjUsY29uZGl0aW9uczpuZXcgTWFwKFtbInJlbCIsbmV3IFNldCgiYWx0ZXJuYXRlIGF1dGhvciBib29rbWFyayBjYW5vbmljYWwgY2l0ZSBoZWxwIGljb24gbGljZW5zZSBuZXh0IHByZWZldGNoIGRucy1wcmVmZXRjaCBwcmVyZW5kZXIgcHJlY29ubmVjdCBwcmVsb2FkIHByZXYgc2VhcmNoIHN1YnJlc291cmNlIi5zcGxpdCgiICIpKV1dKX1dXSldLFsiU09VUkNFIixuZXcgTWFwKFtbInNyYyIse3VhOjV9XSxbInNyY3NldCIse3VhOjZ9XV0pXSxbIklNRyIsbmV3IE1hcChbWyJzcmMiLHt1YTo1fV0sWyJzcmNzZXQiLHt1YTo2fV1dKV0sWyJWSURFTyIsbmV3IE1hcChbWyJzcmMiLHt1YTo1fV1dKV0sWyJBVURJTyIsbmV3IE1hcChbWyJzcmMiLHt1YTo1fV1dKV1dLG1kPSJ0aXRsZSBhcmlhLWF0b21pYyBhcmlhLWF1dG9jb21wbGV0ZSBhcmlhLWJ1c3kgYXJpYS1jaGVja2VkIGFyaWEtY3VycmVudCBhcmlhLWRpc2FibGVkIGFyaWEtZHJvcGVmZmVjdCBhcmlhLWV4cGFuZGVkIGFyaWEtaGFzcG9wdXAgYXJpYS1oaWRkZW4gYXJpYS1pbnZhbGlkIGFyaWEtbGFiZWwgYXJpYS1sZXZlbCBhcmlhLWxpdmUgYXJpYS1tdWx0aWxpbmUgYXJpYS1tdWx0aXNlbGVjdGFibGUgYXJpYS1vcmllbnRhdGlvbiBhcmlhLXBvc2luc2V0IGFyaWEtcHJlc3NlZCBhcmlhLXJlYWRvbmx5IGFyaWEtcmVsZXZhbnQgYXJpYS1yZXF1aXJlZCBhcmlhLXNlbGVjdGVkIGFyaWEtc2V0c2l6ZSBhcmlhLXNvcnQgYXJpYS12YWx1ZW1heCBhcmlhLXZhbHVlbWluIGFyaWEtdmFsdWVub3cgYXJpYS12YWx1ZXRleHQgYWx0IGFsaWduIGF1dG9jYXBpdGFsaXplIGF1dG9jb21wbGV0ZSBhdXRvY29ycmVjdCBhdXRvZm9jdXMgYXV0b3BsYXkgYmdjb2xvciBib3JkZXIgY2VsbHBhZGRpbmcgY2VsbHNwYWNpbmcgY2hlY2tlZCBjaXRlIGNvbG9yIGNvbHMgY29sc3BhbiBjb250cm9scyBjb250cm9sc2xpc3QgY29vcmRzIGNyb3Nzb3JpZ2luIGRhdGV0aW1lIGRpc2FibGVkIGRvd25sb2FkIGRyYWdnYWJsZSBlbmN0eXBlIGZhY2UgZm9ybWVuY3R5cGUgZnJhbWVib3JkZXIgaGVpZ2h0IGhyZWZsYW5nIGhpZGRlbiBpbmVydCBpc21hcCBsYWJlbCBsYW5nIGxvb3AgbWF4IG1heGxlbmd0aCBtZWRpYSBtaW5sZW5ndGggbWluIG11bHRpcGxlIG11dGVkIG5vbmNlIG9wZW4gcGxheXNpbmxpbmUgcGxhY2Vob2xkZXIgcHJlbG9hZCByZWwgcmVxdWlyZWQgcmV2ZXJzZWQgcm9sZSByb3dzIHJvd3NwYW4gc2VsZWN0ZWQgc2hhcGUgc2l6ZSBzaXplcyBzbG90IHNwYW4gc3BlbGxjaGVjayBzdGFydCBzdGVwIHN1bW1hcnkgdHJhbnNsYXRlIHR5cGUgdXNlbWFwIHZhbGlnbiB2YWx1ZSB3aWR0aCB3cmFwIGl0ZW1zY29wZSBpdGVtdHlwZSBpdGVtaWQgaXRlbXByb3AgaXRlbXJlZiIuc3BsaXQoIiAiKSwKbmQ9W1siZGlyIix7dWE6Myxjb25kaXRpb25zOkdhKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXAoW1siZGlyIixuZXcgU2V0KFsiYXV0byIsImx0ciIsInJ0bCJdKV1dKX0pfV0sWyJhc3luYyIse3VhOjMsY29uZGl0aW9uczpHYShmdW5jdGlvbigpe3JldHVybiBuZXcgTWFwKFtbImFzeW5jIixuZXcgU2V0KFsiYXN5bmMiXSldXSl9KX1dLFsibG9hZGluZyIse3VhOjMsY29uZGl0aW9uczpHYShmdW5jdGlvbigpe3JldHVybiBuZXcgTWFwKFtbImxvYWRpbmciLG5ldyBTZXQoWyJlYWdlciIsImxhenkiXSldXSl9KX1dLFsicG9zdGVyIix7dWE6NX1dLFsidGFyZ2V0Iix7dWE6Myxjb25kaXRpb25zOkdhKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXAoW1sidGFyZ2V0IixuZXcgU2V0KFsiX3NlbGYiLCJfYmxhbmsiXSldXSl9KX1dXSxvZD1uZXcgZnVuY3Rpb24oYSxiLGMpe3ZhciBkPW5ldyBTZXQoWyJkYXRhLSIsImFyaWEtIl0pLGU9bmV3IE1hcChsZCk7dGhpcy5qPWE7dGhpcy5nPQplO3RoaXMubD1iO3RoaXMubz1jO3RoaXMuaD1kfShuZXcgU2V0KEdhKGZ1bmN0aW9uKCl7cmV0dXJuIGtkLmNvbmNhdCgiU1RZTEUgVElUTEUgSU5QVVQgVEVYVEFSRUEgQlVUVE9OIExBQkVMIi5zcGxpdCgiICIpKX0pKSxuZXcgU2V0KEdhKGZ1bmN0aW9uKCl7cmV0dXJuIG1kLmNvbmNhdChbImNsYXNzIiwiaWQiLCJ0YWJpbmRleCIsImNvbnRlbnRlZGl0YWJsZSIsIm5hbWUiXSl9KSksbmV3IE1hcChHYShmdW5jdGlvbigpe3JldHVybiBuZC5jb25jYXQoW1sic3R5bGUiLHt1YToxfV1dKX0pKSk7dmFyIHBkPWZ1bmN0aW9uKCl7dGhpcy5nPW9kfTtwZC5wcm90b3R5cGUuY3JlYXRlVGV4dE5vZGU9ZnVuY3Rpb24oYSl7cmV0dXJuIGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGEpfTtfLnFkPUdhKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBwZH0pO3ZhciB2ZCx1ZCx4ZDtfLmxiPWZ1bmN0aW9uKGEpe3JldHVybiBhP25ldyBfLnJkKF8uc2QoYSkpOnNjfHwoc2M9bmV3IF8ucmQpfTtfLnRkPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHR5cGVvZiBiPT09InN0cmluZyI/YS5nZXRFbGVtZW50QnlJZChiKTpifTt2ZD1mdW5jdGlvbihhLGIpe18uemMoYixmdW5jdGlvbihjLGQpe2Q9PSJzdHlsZSI/YS5zdHlsZS5jc3NUZXh0PWM6ZD09ImNsYXNzIj9hLmNsYXNzTmFtZT1jOmQ9PSJmb3IiP2EuaHRtbEZvcj1jOnVkLmhhc093blByb3BlcnR5KGQpP2Euc2V0QXR0cmlidXRlKHVkW2RdLGMpOmQubGFzdEluZGV4T2YoImFyaWEtIiwwKT09MHx8ZC5sYXN0SW5kZXhPZigiZGF0YS0iLDApPT0wP2Euc2V0QXR0cmlidXRlKGQsYyk6YVtkXT1jfSl9Owp1ZD17Y2VsbHBhZGRpbmc6ImNlbGxQYWRkaW5nIixjZWxsc3BhY2luZzoiY2VsbFNwYWNpbmciLGNvbHNwYW46ImNvbFNwYW4iLGZyYW1lYm9yZGVyOiJmcmFtZUJvcmRlciIsaGVpZ2h0OiJoZWlnaHQiLG1heGxlbmd0aDoibWF4TGVuZ3RoIixub25jZToibm9uY2UiLHJvbGU6InJvbGUiLHJvd3NwYW46InJvd1NwYW4iLHR5cGU6InR5cGUiLHVzZW1hcDoidXNlTWFwIix2YWxpZ246InZBbGlnbiIsd2lkdGg6IndpZHRoIn07Xy5pYj1mdW5jdGlvbihhKXthPWEuZG9jdW1lbnQ7YT1hLmNvbXBhdE1vZGU9PSJDU1MxQ29tcGF0Ij9hLmRvY3VtZW50RWxlbWVudDphLmJvZHk7cmV0dXJuIG5ldyBfLkNhKGEuY2xpZW50V2lkdGgsYS5jbGllbnRIZWlnaHQpfTtfLm1iPWZ1bmN0aW9uKGEpe3JldHVybiBhP2EuZGVmYXVsdFZpZXc6d2luZG93fTsKXy55ZD1mdW5jdGlvbihhLGIpe3ZhciBjPWJbMV0sZD1fLndkKGEsU3RyaW5nKGJbMF0pKTtjJiYodHlwZW9mIGM9PT0ic3RyaW5nIj9kLmNsYXNzTmFtZT1jOkFycmF5LmlzQXJyYXkoYyk/ZC5jbGFzc05hbWU9Yy5qb2luKCIgIik6dmQoZCxjKSk7Yi5sZW5ndGg+MiYmeGQoYSxkLGIsMik7cmV0dXJuIGR9Owp4ZD1mdW5jdGlvbihhLGIsYyxkKXtmdW5jdGlvbiBlKGgpe2gmJmIuYXBwZW5kQ2hpbGQodHlwZW9mIGg9PT0ic3RyaW5nIj9hLmNyZWF0ZVRleHROb2RlKGgpOmgpfWZvcig7ZDxjLmxlbmd0aDtkKyspe3ZhciBmPWNbZF07aWYoIV8ucWEoZil8fF8ueWEoZikmJmYubm9kZVR5cGU+MCllKGYpO2Vsc2V7YTp7aWYoZiYmdHlwZW9mIGYubGVuZ3RoPT0ibnVtYmVyIil7aWYoXy55YShmKSl7dmFyIGc9dHlwZW9mIGYuaXRlbT09ImZ1bmN0aW9uInx8dHlwZW9mIGYuaXRlbT09InN0cmluZyI7YnJlYWsgYX1pZih0eXBlb2YgZj09PSJmdW5jdGlvbiIpe2c9dHlwZW9mIGYuaXRlbT09ImZ1bmN0aW9uIjticmVhayBhfX1nPSExfV8udmMoZz9fLndhKGYpOmYsZSl9fX07Xy53ZD1mdW5jdGlvbihhLGIpe2I9U3RyaW5nKGIpO2EuY29udGVudFR5cGU9PT0iYXBwbGljYXRpb24veGh0bWwreG1sIiYmKGI9Yi50b0xvd2VyQ2FzZSgpKTtyZXR1cm4gYS5jcmVhdGVFbGVtZW50KGIpfTsKXy56ZD1mdW5jdGlvbihhKXtmb3IodmFyIGI7Yj1hLmZpcnN0Q2hpbGQ7KWEucmVtb3ZlQ2hpbGQoYil9O18uQWQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJmEucGFyZW50Tm9kZT9hLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYSk6bnVsbH07Xy5CZD1mdW5jdGlvbihhLGIpe2lmKCFhfHwhYilyZXR1cm4hMTtpZihhLmNvbnRhaW5zJiZiLm5vZGVUeXBlPT0xKXJldHVybiBhPT1ifHxhLmNvbnRhaW5zKGIpO2lmKHR5cGVvZiBhLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uIT0idW5kZWZpbmVkIilyZXR1cm4gYT09Ynx8ISEoYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihiKSYxNik7Zm9yKDtiJiZhIT1iOyliPWIucGFyZW50Tm9kZTtyZXR1cm4gYj09YX07Xy5zZD1mdW5jdGlvbihhKXtyZXR1cm4gYS5ub2RlVHlwZT09OT9hOmEub3duZXJEb2N1bWVudHx8YS5kb2N1bWVudH07Cl8uQ2Q9ZnVuY3Rpb24oYSxiKXtpZigidGV4dENvbnRlbnQiaW4gYSlhLnRleHRDb250ZW50PWI7ZWxzZSBpZihhLm5vZGVUeXBlPT0zKWEuZGF0YT1TdHJpbmcoYik7ZWxzZSBpZihhLmZpcnN0Q2hpbGQmJmEuZmlyc3RDaGlsZC5ub2RlVHlwZT09Myl7Zm9yKDthLmxhc3RDaGlsZCE9YS5maXJzdENoaWxkOylhLnJlbW92ZUNoaWxkKGEubGFzdENoaWxkKTthLmZpcnN0Q2hpbGQuZGF0YT1TdHJpbmcoYil9ZWxzZSBfLnpkKGEpLGEuYXBwZW5kQ2hpbGQoXy5zZChhKS5jcmVhdGVUZXh0Tm9kZShTdHJpbmcoYikpKX07Xy5yZD1mdW5jdGlvbihhKXt0aGlzLmc9YXx8Xy52LmRvY3VtZW50fHxkb2N1bWVudH07Xy5tPV8ucmQucHJvdG90eXBlO18ubS5IPWZ1bmN0aW9uKGEpe3JldHVybiBfLnRkKHRoaXMuZyxhKX07Xy5tLmRqPV8ucmQucHJvdG90eXBlLkg7Xy5tLmdldEVsZW1lbnRzQnlUYWdOYW1lPWZ1bmN0aW9uKGEsYil7cmV0dXJuKGJ8fHRoaXMuZykuZ2V0RWxlbWVudHNCeVRhZ05hbWUoU3RyaW5nKGEpKX07Cl8ubS5TPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy55ZCh0aGlzLmcsYXJndW1lbnRzKX07Xy5tLmNyZWF0ZUVsZW1lbnQ9ZnVuY3Rpb24oYSl7cmV0dXJuIF8ud2QodGhpcy5nLGEpfTtfLm0uY3JlYXRlVGV4dE5vZGU9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZy5jcmVhdGVUZXh0Tm9kZShTdHJpbmcoYSkpfTtfLm0uYXBwZW5kQ2hpbGQ9ZnVuY3Rpb24oYSxiKXthLmFwcGVuZENoaWxkKGIpfTtfLm0uYXBwZW5kPWZ1bmN0aW9uKGEsYil7eGQoXy5zZChhKSxhLGFyZ3VtZW50cywxKX07Xy5tLmNhbkhhdmVDaGlsZHJlbj1mdW5jdGlvbihhKXtpZihhLm5vZGVUeXBlIT0xKXJldHVybiExO3N3aXRjaChhLnRhZ05hbWUpe2Nhc2UgIkFQUExFVCI6Y2FzZSAiQVJFQSI6Y2FzZSAiQkFTRSI6Y2FzZSAiQlIiOmNhc2UgIkNPTCI6Y2FzZSAiQ09NTUFORCI6Y2FzZSAiRU1CRUQiOmNhc2UgIkZSQU1FIjpjYXNlICJIUiI6Y2FzZSAiSU1HIjpjYXNlICJJTlBVVCI6Y2FzZSAiSUZSQU1FIjpjYXNlICJJU0lOREVYIjpjYXNlICJLRVlHRU4iOmNhc2UgIkxJTksiOmNhc2UgIk5PRlJBTUVTIjpjYXNlICJOT1NDUklQVCI6Y2FzZSAiTUVUQSI6Y2FzZSAiT0JKRUNUIjpjYXNlICJQQVJBTSI6Y2FzZSAiU0NSSVBUIjpjYXNlICJTT1VSQ0UiOmNhc2UgIlNUWUxFIjpjYXNlICJUUkFDSyI6Y2FzZSAiV0JSIjpyZXR1cm4hMX1yZXR1cm4hMH07Cl8ubS5pZT1fLnpkO18ubS5yZW1vdmVOb2RlPV8uQWQ7Xy5tLmNvbnRhaW5zPV8uQmQ7Xy5tLlNiPV8uQ2Q7YmIucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaWR9O3ZhciBjYj1mdW5jdGlvbihhLGIpe3RoaXMudHlwZT1hIGluc3RhbmNlb2YgYmI/U3RyaW5nKGEpOmE7dGhpcy5jdXJyZW50VGFyZ2V0PXRoaXMudGFyZ2V0PWI7dGhpcy5kZWZhdWx0UHJldmVudGVkPXRoaXMuaD0hMX07Y2IucHJvdG90eXBlLnN0b3BQcm9wYWdhdGlvbj1mdW5jdGlvbigpe3RoaXMuaD0hMH07Y2IucHJvdG90eXBlLnByZXZlbnREZWZhdWx0PWZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPSEwfTt2YXIgRGQ9ZnVuY3Rpb24oKXtpZighXy52LmFkZEV2ZW50TGlzdGVuZXJ8fCFPYmplY3QuZGVmaW5lUHJvcGVydHkpcmV0dXJuITE7dmFyIGE9ITEsYj1PYmplY3QuZGVmaW5lUHJvcGVydHkoe30sInBhc3NpdmUiLHtnZXQ6ZnVuY3Rpb24oKXthPSEwfX0pO3RyeXt2YXIgYz1mdW5jdGlvbigpe307Xy52LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLGMsYik7Xy52LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRlc3QiLGMsYil9Y2F0Y2goZCl7fXJldHVybiBhfSgpO18uRyhfLmRiLGNiKTsKXy5kYi5wcm90b3R5cGUuaW5pdD1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMudHlwZT1hLnR5cGUsZD1hLmNoYW5nZWRUb3VjaGVzJiZhLmNoYW5nZWRUb3VjaGVzLmxlbmd0aD9hLmNoYW5nZWRUb3VjaGVzWzBdOm51bGw7dGhpcy50YXJnZXQ9YS50YXJnZXR8fGEuc3JjRWxlbWVudDt0aGlzLmN1cnJlbnRUYXJnZXQ9YjtiPWEucmVsYXRlZFRhcmdldDtifHwoYz09Im1vdXNlb3ZlciI/Yj1hLmZyb21FbGVtZW50OmM9PSJtb3VzZW91dCImJihiPWEudG9FbGVtZW50KSk7dGhpcy5yZWxhdGVkVGFyZ2V0PWI7ZD8odGhpcy5jbGllbnRYPWQuY2xpZW50WCE9PXZvaWQgMD9kLmNsaWVudFg6ZC5wYWdlWCx0aGlzLmNsaWVudFk9ZC5jbGllbnRZIT09dm9pZCAwP2QuY2xpZW50WTpkLnBhZ2VZLHRoaXMuc2NyZWVuWD1kLnNjcmVlblh8fDAsdGhpcy5zY3JlZW5ZPWQuc2NyZWVuWXx8MCk6KHRoaXMub2Zmc2V0WD1fLlZjfHxhLm9mZnNldFghPT12b2lkIDA/YS5vZmZzZXRYOmEubGF5ZXJYLAp0aGlzLm9mZnNldFk9Xy5WY3x8YS5vZmZzZXRZIT09dm9pZCAwP2Eub2Zmc2V0WTphLmxheWVyWSx0aGlzLmNsaWVudFg9YS5jbGllbnRYIT09dm9pZCAwP2EuY2xpZW50WDphLnBhZ2VYLHRoaXMuY2xpZW50WT1hLmNsaWVudFkhPT12b2lkIDA/YS5jbGllbnRZOmEucGFnZVksdGhpcy5zY3JlZW5YPWEuc2NyZWVuWHx8MCx0aGlzLnNjcmVlblk9YS5zY3JlZW5ZfHwwKTt0aGlzLmJ1dHRvbj1hLmJ1dHRvbjt0aGlzLmtleUNvZGU9YS5rZXlDb2RlfHwwO3RoaXMua2V5PWEua2V5fHwiIjt0aGlzLmNoYXJDb2RlPWEuY2hhckNvZGV8fChjPT0ia2V5cHJlc3MiP2Eua2V5Q29kZTowKTt0aGlzLmN0cmxLZXk9YS5jdHJsS2V5O3RoaXMuYWx0S2V5PWEuYWx0S2V5O3RoaXMuc2hpZnRLZXk9YS5zaGlmdEtleTt0aGlzLm1ldGFLZXk9YS5tZXRhS2V5O3RoaXMucG9pbnRlcklkPWEucG9pbnRlcklkfHwwO3RoaXMucG9pbnRlclR5cGU9YS5wb2ludGVyVHlwZTt0aGlzLnN0YXRlPWEuc3RhdGU7CnRoaXMudGltZVN0YW1wPWEudGltZVN0YW1wO3RoaXMuZz1hO2EuZGVmYXVsdFByZXZlbnRlZCYmXy5kYi5lYS5wcmV2ZW50RGVmYXVsdC5jYWxsKHRoaXMpfTtfLmRiLnByb3RvdHlwZS5zdG9wUHJvcGFnYXRpb249ZnVuY3Rpb24oKXtfLmRiLmVhLnN0b3BQcm9wYWdhdGlvbi5jYWxsKHRoaXMpO3RoaXMuZy5zdG9wUHJvcGFnYXRpb24/dGhpcy5nLnN0b3BQcm9wYWdhdGlvbigpOnRoaXMuZy5jYW5jZWxCdWJibGU9ITB9O18uZGIucHJvdG90eXBlLnByZXZlbnREZWZhdWx0PWZ1bmN0aW9uKCl7Xy5kYi5lYS5wcmV2ZW50RGVmYXVsdC5jYWxsKHRoaXMpO3ZhciBhPXRoaXMuZzthLnByZXZlbnREZWZhdWx0P2EucHJldmVudERlZmF1bHQoKTphLnJldHVyblZhbHVlPSExfTt2YXIgRWQ9ImNsb3N1cmVfbGlzdGVuYWJsZV8iKyhNYXRoLnJhbmRvbSgpKjFFNnwwKSxGZD1mdW5jdGlvbihhKXtyZXR1cm4hKCFhfHwhYVtFZF0pfTt2YXIgZWI9MDt2YXIgR2Q9ZnVuY3Rpb24oYSl7YS5vYz0hMDthLmxpc3RlbmVyPW51bGw7YS5wcm94eT1udWxsO2Euc3JjPW51bGw7YS5WYz1udWxsfTtnYi5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9YS50b1N0cmluZygpO2E9dGhpcy5nW2ZdO2F8fChhPXRoaXMuZ1tmXT1bXSx0aGlzLmgrKyk7dmFyIGc9SGQoYSxiLGQsZSk7Zz4tMT8oYj1hW2ddLGN8fChiLkhjPSExKSk6KGI9bmV3IGZiKGIsdGhpcy5zcmMsZiwhIWQsZSksYi5IYz1jLGEucHVzaChiKSk7cmV0dXJuIGJ9O2diLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oYSxiLGMsZCl7YT1hLnRvU3RyaW5nKCk7aWYoIShhIGluIHRoaXMuZykpcmV0dXJuITE7dmFyIGU9dGhpcy5nW2FdO2I9SGQoZSxiLGMsZCk7cmV0dXJuIGI+LTE/KEdkKGVbYl0pLEFycmF5LnByb3RvdHlwZS5zcGxpY2UuY2FsbChlLGIsMSksZS5sZW5ndGg9PTAmJihkZWxldGUgdGhpcy5nW2FdLHRoaXMuaC0tKSwhMCk6ITF9Owp2YXIgSWQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnR5cGU7YyBpbiBhLmcmJl8udmEoYS5nW2NdLGIpJiYoR2QoYiksYS5nW2NdLmxlbmd0aD09MCYmKGRlbGV0ZSBhLmdbY10sYS5oLS0pKX07Z2IucHJvdG90eXBlLmpjPWZ1bmN0aW9uKGEsYixjLGQpe2E9dGhpcy5nW2EudG9TdHJpbmcoKV07dmFyIGU9LTE7YSYmKGU9SGQoYSxiLGMsZCkpO3JldHVybiBlPi0xP2FbZV06bnVsbH07Z2IucHJvdG90eXBlLmhhc0xpc3RlbmVyPWZ1bmN0aW9uKGEsYil7dmFyIGM9YSE9PXZvaWQgMCxkPWM/YS50b1N0cmluZygpOiIiLGU9YiE9PXZvaWQgMDtyZXR1cm4gRGEodGhpcy5nLGZ1bmN0aW9uKGYpe2Zvcih2YXIgZz0wO2c8Zi5sZW5ndGg7KytnKWlmKCEoYyYmZltnXS50eXBlIT1kfHxlJiZmW2ddLmNhcHR1cmUhPWIpKXJldHVybiEwO3JldHVybiExfSl9Owp2YXIgSGQ9ZnVuY3Rpb24oYSxiLGMsZCl7Zm9yKHZhciBlPTA7ZTxhLmxlbmd0aDsrK2Upe3ZhciBmPWFbZV07aWYoIWYub2MmJmYubGlzdGVuZXI9PWImJmYuY2FwdHVyZT09ISFjJiZmLlZjPT1kKXJldHVybiBlfXJldHVybi0xfTt2YXIgSmQsS2QsTWQsUGQsUmQsU2QsVGQsUWQsV2QsT2Q7SmQ9ImNsb3N1cmVfbG1fIisoTWF0aC5yYW5kb20oKSoxRTZ8MCk7S2Q9e307TWQ9MDtfLng9ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihkJiZkLm9uY2UpcmV0dXJuIF8uTmQoYSxiLGMsZCxlKTtpZihBcnJheS5pc0FycmF5KGIpKXtmb3IodmFyIGY9MDtmPGIubGVuZ3RoO2YrKylfLngoYSxiW2ZdLGMsZCxlKTtyZXR1cm4gbnVsbH1jPU9kKGMpO3JldHVybiBGZChhKT9hLk4oYixjLF8ueWEoZCk/ISFkLmNhcHR1cmU6ISFkLGUpOlBkKGEsYixjLCExLGQsZSl9OwpQZD1mdW5jdGlvbihhLGIsYyxkLGUsZil7aWYoIWIpdGhyb3cgRXJyb3IoInYiKTt2YXIgZz1fLnlhKGUpPyEhZS5jYXB0dXJlOiEhZSxoPVFkKGEpO2h8fChhW0pkXT1oPW5ldyBnYihhKSk7Yz1oLmFkZChiLGMsZCxnLGYpO2lmKGMucHJveHkpcmV0dXJuIGM7ZD1SZCgpO2MucHJveHk9ZDtkLnNyYz1hO2QubGlzdGVuZXI9YztpZihhLmFkZEV2ZW50TGlzdGVuZXIpRGR8fChlPWcpLGU9PT12b2lkIDAmJihlPSExKSxhLmFkZEV2ZW50TGlzdGVuZXIoYi50b1N0cmluZygpLGQsZSk7ZWxzZSBpZihhLmF0dGFjaEV2ZW50KWEuYXR0YWNoRXZlbnQoU2QoYi50b1N0cmluZygpKSxkKTtlbHNlIGlmKGEuYWRkTGlzdGVuZXImJmEucmVtb3ZlTGlzdGVuZXIpYS5hZGRMaXN0ZW5lcihkKTtlbHNlIHRocm93IEVycm9yKCJ3Iik7TWQrKztyZXR1cm4gY307UmQ9ZnVuY3Rpb24oKXt2YXIgYT1UZCxiPWZ1bmN0aW9uKGMpe3JldHVybiBhLmNhbGwoYi5zcmMsYi5saXN0ZW5lcixjKX07cmV0dXJuIGJ9OwpfLk5kPWZ1bmN0aW9uKGEsYixjLGQsZSl7aWYoQXJyYXkuaXNBcnJheShiKSl7Zm9yKHZhciBmPTA7ZjxiLmxlbmd0aDtmKyspXy5OZChhLGJbZl0sYyxkLGUpO3JldHVybiBudWxsfWM9T2QoYyk7cmV0dXJuIEZkKGEpP2EuYWUoYixjLF8ueWEoZCk/ISFkLmNhcHR1cmU6ISFkLGUpOlBkKGEsYixjLCEwLGQsZSl9O18uVWQ9ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihBcnJheS5pc0FycmF5KGIpKWZvcih2YXIgZj0wO2Y8Yi5sZW5ndGg7ZisrKV8uVWQoYSxiW2ZdLGMsZCxlKTtlbHNlIGQ9Xy55YShkKT8hIWQuY2FwdHVyZTohIWQsYz1PZChjKSxGZChhKT9hLnljKGIsYyxkLGUpOmEmJihhPVFkKGEpKSYmKGI9YS5qYyhiLGMsZCxlKSkmJl8uVmQoYil9OwpfLlZkPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09Im51bWJlciImJmEmJiFhLm9jKXt2YXIgYj1hLnNyYztpZihGZChiKSlJZChiLlFhLGEpO2Vsc2V7dmFyIGM9YS50eXBlLGQ9YS5wcm94eTtiLnJlbW92ZUV2ZW50TGlzdGVuZXI/Yi5yZW1vdmVFdmVudExpc3RlbmVyKGMsZCxhLmNhcHR1cmUpOmIuZGV0YWNoRXZlbnQ/Yi5kZXRhY2hFdmVudChTZChjKSxkKTpiLmFkZExpc3RlbmVyJiZiLnJlbW92ZUxpc3RlbmVyJiZiLnJlbW92ZUxpc3RlbmVyKGQpO01kLS07KGM9UWQoYikpPyhJZChjLGEpLGMuaD09MCYmKGMuc3JjPW51bGwsYltKZF09bnVsbCkpOkdkKGEpfX19O1NkPWZ1bmN0aW9uKGEpe3JldHVybiBhIGluIEtkP0tkW2FdOktkW2FdPSJvbiIrYX07VGQ9ZnVuY3Rpb24oYSxiKXtpZihhLm9jKWE9ITA7ZWxzZXtiPW5ldyBfLmRiKGIsdGhpcyk7dmFyIGM9YS5saXN0ZW5lcixkPWEuVmN8fGEuc3JjO2EuSGMmJl8uVmQoYSk7YT1jLmNhbGwoZCxiKX1yZXR1cm4gYX07ClFkPWZ1bmN0aW9uKGEpe2E9YVtKZF07cmV0dXJuIGEgaW5zdGFuY2VvZiBnYj9hOm51bGx9O1dkPSJfX2Nsb3N1cmVfZXZlbnRzX2ZuXyIrKE1hdGgucmFuZG9tKCkqMUU5Pj4+MCk7T2Q9ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGE9PT0iZnVuY3Rpb24iKXJldHVybiBhO2FbV2RdfHwoYVtXZF09ZnVuY3Rpb24oYil7cmV0dXJuIGEuaGFuZGxlRXZlbnQoYil9KTtyZXR1cm4gYVtXZF19O18uRyhfLmhiLF8udSk7Xy5oYi5wcm90b3R5cGVbRWRdPSEwO18ubT1fLmhiLnByb3RvdHlwZTtfLm0ubmQ9ZnVuY3Rpb24oYSl7dGhpcy5mZD1hfTtfLm0uYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhLGIsYyxkKXtfLngodGhpcyxhLGIsYyxkKX07Xy5tLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSxiLGMsZCl7Xy5VZCh0aGlzLGEsYixjLGQpfTsKXy5tLmRpc3BhdGNoRXZlbnQ9ZnVuY3Rpb24oYSl7dmFyIGIsYz10aGlzLmZkO2lmKGMpZm9yKGI9W107YztjPWMuZmQpYi5wdXNoKGMpO2M9dGhpcy5XZzt2YXIgZD1hLnR5cGV8fGE7aWYodHlwZW9mIGE9PT0ic3RyaW5nIilhPW5ldyBjYihhLGMpO2Vsc2UgaWYoYSBpbnN0YW5jZW9mIGNiKWEudGFyZ2V0PWEudGFyZ2V0fHxjO2Vsc2V7dmFyIGU9YTthPW5ldyBjYihkLGMpO0ZhKGEsZSl9ZT0hMDt2YXIgZjtpZihiKWZvcihmPWIubGVuZ3RoLTE7IWEuaCYmZj49MDtmLS0pe3ZhciBnPWEuY3VycmVudFRhcmdldD1iW2ZdO2U9WGQoZyxkLCEwLGEpJiZlfWEuaHx8KGc9YS5jdXJyZW50VGFyZ2V0PWMsZT1YZChnLGQsITAsYSkmJmUsYS5ofHwoZT1YZChnLGQsITEsYSkmJmUpKTtpZihiKWZvcihmPTA7IWEuaCYmZjxiLmxlbmd0aDtmKyspZz1hLmN1cnJlbnRUYXJnZXQ9YltmXSxlPVhkKGcsZCwhMSxhKSYmZTtyZXR1cm4gZX07Cl8ubS5NPWZ1bmN0aW9uKCl7Xy5oYi5lYS5NLmNhbGwodGhpcyk7aWYodGhpcy5RYSl7dmFyIGE9dGhpcy5RYSxiPTAsYztmb3IoYyBpbiBhLmcpe2Zvcih2YXIgZD1hLmdbY10sZT0wO2U8ZC5sZW5ndGg7ZSsrKSsrYixHZChkW2VdKTtkZWxldGUgYS5nW2NdO2EuaC0tfX10aGlzLmZkPW51bGx9O18ubS5OPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiB0aGlzLlFhLmFkZChTdHJpbmcoYSksYiwhMSxjLGQpfTtfLm0uYWU9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIHRoaXMuUWEuYWRkKFN0cmluZyhhKSxiLCEwLGMsZCl9O18ubS55Yz1mdW5jdGlvbihhLGIsYyxkKXtyZXR1cm4gdGhpcy5RYS5yZW1vdmUoU3RyaW5nKGEpLGIsYyxkKX07CnZhciBYZD1mdW5jdGlvbihhLGIsYyxkKXtiPWEuUWEuZ1tTdHJpbmcoYildO2lmKCFiKXJldHVybiEwO2I9Yi5jb25jYXQoKTtmb3IodmFyIGU9ITAsZj0wO2Y8Yi5sZW5ndGg7KytmKXt2YXIgZz1iW2ZdO2lmKGcmJiFnLm9jJiZnLmNhcHR1cmU9PWMpe3ZhciBoPWcubGlzdGVuZXIsaz1nLlZjfHxnLnNyYztnLkhjJiZJZChhLlFhLGcpO2U9aC5jYWxsKGssZCkhPT0hMSYmZX19cmV0dXJuIGUmJiFkLmRlZmF1bHRQcmV2ZW50ZWR9O18uaGIucHJvdG90eXBlLmpjPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiB0aGlzLlFhLmpjKFN0cmluZyhhKSxiLGMsZCl9O18uaGIucHJvdG90eXBlLmhhc0xpc3RlbmVyPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuUWEuaGFzTGlzdGVuZXIoYSE9PXZvaWQgMD9TdHJpbmcoYSk6dm9pZCAwLGIpfTtfLkcoamIsXy5oYik7amIucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtqYi5lYS5NLmNhbGwodGhpcyk7dGhpcy5oJiYoXy5WZCh0aGlzLmgpLHRoaXMuaD1udWxsKTt0aGlzLmo9dGhpcy5nPW51bGx9O2piLnByb3RvdHlwZS5sPWZ1bmN0aW9uKCl7dmFyIGE9Xy5pYih0aGlzLmd8fHdpbmRvdyk7Xy55YyhhLHRoaXMuail8fCh0aGlzLmo9YSx0aGlzLmRpc3BhdGNoRXZlbnQoInJlc2l6ZSIpKX07Xy5HKGtiLF8uaGIpO2tiLnByb3RvdHlwZS5zdGFydD1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5nJiYodHlwZW9mIHRoaXMuZy5hZGRFdmVudExpc3RlbmVyPT09ImZ1bmN0aW9uIj8odGhpcy5nLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsdGhpcy5qKSx0aGlzLmw9ZnVuY3Rpb24oKXthLmcucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixhLmopfSk6KHRoaXMuZy5hZGRMaXN0ZW5lcih0aGlzLmopLHRoaXMubD1mdW5jdGlvbigpe2EuZy5yZW1vdmVMaXN0ZW5lcihhLmopfSkpfTtrYi5wcm90b3R5cGUuQT1mdW5jdGlvbigpe3ZhciBhPXRoaXMuaC5kZXZpY2VQaXhlbFJhdGlvPj0xLjU/MjoxO3RoaXMubyE9YSYmKHRoaXMubz1hLHRoaXMuZGlzcGF0Y2hFdmVudCgiYSIpKX07a2IucHJvdG90eXBlLk09ZnVuY3Rpb24oKXt0aGlzLmwmJnRoaXMubCgpO2tiLmVhLk0uY2FsbCh0aGlzKX07Xy5HKG5iLF8udSk7bmIucHJvdG90eXBlLk09ZnVuY3Rpb24oKXt0aGlzLmg9dGhpcy5sPW51bGw7dGhpcy5nJiYodGhpcy5nLmRpc3Bvc2UoKSx0aGlzLmc9bnVsbCk7Xy5wYSh0aGlzLmopO3RoaXMuaj1udWxsfTtfLm9hKHVjLG5iKTt2YXIgb2I9bmV3IFVpbnQ4QXJyYXkoMTIzKSxZZD0hMTt2YXIgWmQ9W107bmM9bmN8fHt9O3ZhciAkZD1mdW5jdGlvbigpe18udS5jYWxsKHRoaXMpfTtfLkcoJGQsXy51KTskZC5wcm90b3R5cGUuaW5pdGlhbGl6ZT1mdW5jdGlvbigpe307c2IucHJvdG90eXBlLmV4ZWN1dGU9ZnVuY3Rpb24oYSl7dGhpcy5nJiYodGhpcy5nLmNhbGwodGhpcy5ofHxudWxsLGEpLHRoaXMuZz10aGlzLmg9bnVsbCl9O3NiLnByb3RvdHlwZS5hYm9ydD1mdW5jdGlvbigpe3RoaXMuaD10aGlzLmc9bnVsbH07bmMuR2U9c2I7Xy5HKHViLF8udSk7dWIucHJvdG90eXBlLkM9JGQ7dWIucHJvdG90eXBlLmc9bnVsbDt1Yi5wcm90b3R5cGUuUmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5BfTt2YXIgYWU9ZnVuY3Rpb24oYSxiLGMpe2Euanx8KGEuaj1bXSk7YS5qLnB1c2gobmV3IG5jLkdlKGIsYykpfSxiZT1mdW5jdGlvbihhLGIpe2EuaHx8KGEuaD1bXSk7YS5oLnB1c2gobmV3IG5jLkdlKGIsdm9pZCAwKSl9O3ViLnByb3RvdHlwZS5tZD1mdW5jdGlvbigpe3RoaXMuZz1uZXcgJGR9O3ViLnByb3RvdHlwZS5vbkxvYWQ9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IHRoaXMuQztiLmluaXRpYWxpemUoYSgpKTt0aGlzLmc9YjtpZih0aGlzLm8mJihiPWNlKHRoaXMubyxhKCkpKSlyZXR1cm4gYjtpZih0aGlzLmomJihhPWNlKHRoaXMuaixhKCkpKSlyZXR1cm4gYTt0aGlzLmgmJih0aGlzLmgubGVuZ3RoPTApO3JldHVybiBudWxsfTsKdWIucHJvdG90eXBlLmZlPWZ1bmN0aW9uKGEpe3RoaXMuaCYmKGE9Y2UodGhpcy5oLGEpKSYmXy5yYihFcnJvcigieWAiK2EpKTt0aGlzLm8mJih0aGlzLm8ubGVuZ3RoPTApO3RoaXMuaiYmKHRoaXMuai5sZW5ndGg9MCl9O3ZhciBjZT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDxhLmxlbmd0aDtkKyspdHJ5e2FbZF0uZXhlY3V0ZShiKX1jYXRjaChlKXtfLnJiKGUpLGMucHVzaChlKX1hLmxlbmd0aD0wO3JldHVybiBjLmxlbmd0aD9jOm51bGx9O3ViLnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7dWIuZWEuTS5jYWxsKHRoaXMpO18ucGEodGhpcy5nKX07bmMuRmU9dWI7dmFyIGRlPXtFUlJPUjoiZXJyb3IiLElETEU6ImlkbGUiLGxnOiJhY3RpdmUiLElnOiJ1c2VySWRsZSIsSGc6InVzZXJBY3RpdmUifTtfLm09dmIucHJvdG90eXBlO18ubS5YZj1mdW5jdGlvbigpe307Xy5tLnFlPWZ1bmN0aW9uKCl7fTtfLm0uamU9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiQSIpO307Xy5tLmtmPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucWF9O18ubS5zZT1mdW5jdGlvbihhKXt0aGlzLnFhPWF9O18ubS5pc0FjdGl2ZT1mdW5jdGlvbigpe3JldHVybiExfTtfLm0uRGY9ZnVuY3Rpb24oKXtyZXR1cm4hMX07dmFyIGVlPXR5cGVvZiBBc3luY0NvbnRleHQhPT0idW5kZWZpbmVkIiYmdHlwZW9mIEFzeW5jQ29udGV4dC5TbmFwc2hvdD09PSJmdW5jdGlvbiI/ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJkFzeW5jQ29udGV4dC5TbmFwc2hvdC53cmFwKGEpfTpmdW5jdGlvbihhKXtyZXR1cm4gYX07dmFyIGZlPWZ1bmN0aW9uKGEsYil7dGhpcy5sPWE7dGhpcy5qPWI7dGhpcy5oPTA7dGhpcy5nPW51bGx9O2ZlLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXtpZih0aGlzLmg+MCl7dGhpcy5oLS07dmFyIGE9dGhpcy5nO3RoaXMuZz1hLm5leHQ7YS5uZXh0PW51bGx9ZWxzZSBhPXRoaXMubCgpO3JldHVybiBhfTt2YXIgeGI9ZnVuY3Rpb24oYSxiKXthLmooYik7YS5oPDEwMCYmKGEuaCsrLGIubmV4dD1hLmcsYS5nPWIpfTt2YXIgZ2U9ZnVuY3Rpb24oKXt0aGlzLmg9dGhpcy5nPW51bGx9O2dlLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz15Yi5nZXQoKTtjLnNldChhLGIpO3RoaXMuaD90aGlzLmgubmV4dD1jOnRoaXMuZz1jO3RoaXMuaD1jfTtnZS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKCl7dmFyIGE9bnVsbDt0aGlzLmcmJihhPXRoaXMuZyx0aGlzLmc9dGhpcy5nLm5leHQsdGhpcy5nfHwodGhpcy5oPW51bGwpLGEubmV4dD1udWxsKTtyZXR1cm4gYX07dmFyIHliPW5ldyBmZShmdW5jdGlvbigpe3JldHVybiBuZXcgaGV9LGZ1bmN0aW9uKGEpe3JldHVybiBhLnJlc2V0KCl9KSxoZT1mdW5jdGlvbigpe3RoaXMubmV4dD10aGlzLnNjb3BlPXRoaXMuZz1udWxsfTtoZS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5nPWE7dGhpcy5zY29wZT1iO3RoaXMubmV4dD1udWxsfTsKaGUucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5uZXh0PXRoaXMuc2NvcGU9dGhpcy5nPW51bGx9O3ZhciBpZSx6Yj0hMSx3Yj1uZXcgZ2Usa2U9ZnVuY3Rpb24oYSxiKXtpZXx8amUoKTt6Ynx8KGllKCksemI9ITApO3diLmFkZChhLGIpfSxqZT1mdW5jdGlvbigpe3ZhciBhPVByb21pc2UucmVzb2x2ZSh2b2lkIDApO2llPWZ1bmN0aW9uKCl7YS50aGVuKEFiKX19O18ubGU9ZnVuY3Rpb24oKXt9O3ZhciBtZT1mdW5jdGlvbihhKXtpZighYSlyZXR1cm4hMTt0cnl7cmV0dXJuISFhLiRnb29nX1RoZW5hYmxlfWNhdGNoKGIpe3JldHVybiExfX07dmFyIHBlLEFlLHllLHdlO18ub2U9ZnVuY3Rpb24oYSl7dGhpcy5nPTA7dGhpcy5CPXZvaWQgMDt0aGlzLmw9dGhpcy5oPXRoaXMuaj1udWxsO3RoaXMubz10aGlzLkE9ITE7aWYoYSE9Xy5sZSl0cnl7dmFyIGI9dGhpczthLmNhbGwodm9pZCAwLGZ1bmN0aW9uKGMpe18ubmUoYiwyLGMpfSxmdW5jdGlvbihjKXtfLm5lKGIsMyxjKX0pfWNhdGNoKGMpe18ubmUodGhpcywzLGMpfX07cGU9ZnVuY3Rpb24oKXt0aGlzLm5leHQ9dGhpcy5qPXRoaXMuaD10aGlzLmw9dGhpcy5nPW51bGw7dGhpcy5vPSExfTtwZS5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt0aGlzLmo9dGhpcy5oPXRoaXMubD10aGlzLmc9bnVsbDt0aGlzLm89ITF9O3ZhciBxZT1uZXcgZmUoZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHBlfSxmdW5jdGlvbihhKXthLnJlc2V0KCl9KSxyZT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9cWUuZ2V0KCk7ZC5sPWE7ZC5oPWI7ZC5qPWM7cmV0dXJuIGR9OwpfLm9lLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gc2UodGhpcyxlZSh0eXBlb2YgYT09PSJmdW5jdGlvbiI/YTpudWxsKSxlZSh0eXBlb2YgYj09PSJmdW5jdGlvbiI/YjpudWxsKSxjKX07Xy5vZS5wcm90b3R5cGUuJGdvb2dfVGhlbmFibGU9ITA7Xy5vZS5wcm90b3R5cGUuQz1mdW5jdGlvbihhLGIpe3JldHVybiBzZSh0aGlzLG51bGwsZWUoYSksYil9O18ub2UucHJvdG90eXBlLmNhdGNoPV8ub2UucHJvdG90eXBlLkM7Xy5vZS5wcm90b3R5cGUuY2FuY2VsPWZ1bmN0aW9uKGEpe2lmKHRoaXMuZz09MCl7dmFyIGI9bmV3IHVlKGEpO2tlKGZ1bmN0aW9uKCl7dmUodGhpcyxiKX0sdGhpcyl9fTsKdmFyIHZlPWZ1bmN0aW9uKGEsYil7aWYoYS5nPT0wKWlmKGEuail7dmFyIGM9YS5qO2lmKGMuaCl7Zm9yKHZhciBkPTAsZT1udWxsLGY9bnVsbCxnPWMuaDtnJiYoZy5vfHwoZCsrLGcuZz09YSYmKGU9ZyksIShlJiZkPjEpKSk7Zz1nLm5leHQpZXx8KGY9Zyk7ZSYmKGMuZz09MCYmZD09MT92ZShjLGIpOihmPyhkPWYsZC5uZXh0PT1jLmwmJihjLmw9ZCksZC5uZXh0PWQubmV4dC5uZXh0KTp3ZShjKSx4ZShjLGUsMyxiKSkpfWEuaj1udWxsfWVsc2UgXy5uZShhLDMsYil9LHplPWZ1bmN0aW9uKGEsYil7YS5ofHxhLmchPTImJmEuZyE9M3x8eWUoYSk7YS5sP2EubC5uZXh0PWI6YS5oPWI7YS5sPWJ9LHNlPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPXJlKG51bGwsbnVsbCxudWxsKTtlLmc9bmV3IF8ub2UoZnVuY3Rpb24oZixnKXtlLmw9Yj9mdW5jdGlvbihoKXt0cnl7dmFyIGs9Yi5jYWxsKGQsaCk7ZihrKX1jYXRjaChsKXtnKGwpfX06ZjtlLmg9Yz9mdW5jdGlvbihoKXt0cnl7dmFyIGs9CmMuY2FsbChkLGgpO2s9PT12b2lkIDAmJmggaW5zdGFuY2VvZiB1ZT9nKGgpOmYoayl9Y2F0Y2gobCl7ZyhsKX19Omd9KTtlLmcuaj1hO3plKGEsZSk7cmV0dXJuIGUuZ307Xy5vZS5wcm90b3R5cGUuRj1mdW5jdGlvbihhKXt0aGlzLmc9MDtfLm5lKHRoaXMsMixhKX07Xy5vZS5wcm90b3R5cGUuRz1mdW5jdGlvbihhKXt0aGlzLmc9MDtfLm5lKHRoaXMsMyxhKX07Cl8ubmU9ZnVuY3Rpb24oYSxiLGMpe2lmKGEuZz09MCl7YT09PWMmJihiPTMsYz1uZXcgVHlwZUVycm9yKCJCIikpO2EuZz0xO2E6e3ZhciBkPWMsZT1hLkYsZj1hLkc7aWYoZCBpbnN0YW5jZW9mIF8ub2Upe3plKGQscmUoZXx8Xy5sZSxmfHxudWxsLGEpKTt2YXIgZz0hMH1lbHNlIGlmKG1lKGQpKWQudGhlbihlLGYsYSksZz0hMDtlbHNle2lmKF8ueWEoZCkpdHJ5e3ZhciBoPWQudGhlbjtpZih0eXBlb2YgaD09PSJmdW5jdGlvbiIpe0FlKGQsaCxlLGYsYSk7Zz0hMDticmVhayBhfX1jYXRjaChrKXtmLmNhbGwoYSxrKTtnPSEwO2JyZWFrIGF9Zz0hMX19Z3x8KGEuQj1jLGEuZz1iLGEuaj1udWxsLHllKGEpLGIhPTN8fGMgaW5zdGFuY2VvZiB1ZXx8QmUoYSxjKSl9fTtBZT1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPSExLGc9ZnVuY3Rpb24oayl7Znx8KGY9ITAsYy5jYWxsKGUsaykpfSxoPWZ1bmN0aW9uKGspe2Z8fChmPSEwLGQuY2FsbChlLGspKX07dHJ5e2IuY2FsbChhLGcsaCl9Y2F0Y2goayl7aChrKX19Owp5ZT1mdW5jdGlvbihhKXthLkF8fChhLkE9ITAsa2UoYS5ELGEpKX07d2U9ZnVuY3Rpb24oYSl7dmFyIGI9bnVsbDthLmgmJihiPWEuaCxhLmg9Yi5uZXh0LGIubmV4dD1udWxsKTthLmh8fChhLmw9bnVsbCk7cmV0dXJuIGJ9O18ub2UucHJvdG90eXBlLkQ9ZnVuY3Rpb24oKXtmb3IodmFyIGE7YT13ZSh0aGlzKTspeGUodGhpcyxhLHRoaXMuZyx0aGlzLkIpO3RoaXMuQT0hMX07CnZhciB4ZT1mdW5jdGlvbihhLGIsYyxkKXtpZihjPT0zJiZiLmgmJiFiLm8pZm9yKDthJiZhLm87YT1hLmopYS5vPSExO2lmKGIuZyliLmcuaj1udWxsLENlKGIsYyxkKTtlbHNlIHRyeXtiLm8/Yi5sLmNhbGwoYi5qKTpDZShiLGMsZCl9Y2F0Y2goZSl7RmUuY2FsbChudWxsLGUpfXhiKHFlLGIpfSxDZT1mdW5jdGlvbihhLGIsYyl7Yj09Mj9hLmwuY2FsbChhLmosYyk6YS5oJiZhLmguY2FsbChhLmosYyl9LEJlPWZ1bmN0aW9uKGEsYil7YS5vPSEwO2tlKGZ1bmN0aW9uKCl7YS5vJiZGZS5jYWxsKG51bGwsYil9KX0sRmU9Xy5yYix1ZT1mdW5jdGlvbihhKXthYS5jYWxsKHRoaXMsYSl9O18uRyh1ZSxhYSk7dWUucHJvdG90eXBlLm5hbWU9ImNhbmNlbCI7QmIucHJvdG90eXBlLmNhbmNlbD1mdW5jdGlvbihhKXtpZih0aGlzLmgpdGhpcy5sIGluc3RhbmNlb2YgQmImJnRoaXMubC5jYW5jZWwoKTtlbHNle2lmKHRoaXMuail7dmFyIGI9dGhpcy5qO2RlbGV0ZSB0aGlzLmo7YT9iLmNhbmNlbChhKTooYi5BLS0sYi5BPD0wJiZiLmNhbmNlbCgpKX10aGlzLkc9ITA7dGhpcy5ofHx0aGlzLkYobmV3IEdlKHRoaXMpKX19O0JiLnByb3RvdHlwZS5JPWZ1bmN0aW9uKGEsYil7dGhpcy5EPSExO0hlKHRoaXMsYSxiKX07dmFyIEhlPWZ1bmN0aW9uKGEsYixjKXthLmg9ITA7YS5sPWM7YS5vPSFiO0llKGEpfSxLZT1mdW5jdGlvbihhKXtpZihhLmgpe2lmKCFhLkcpdGhyb3cgbmV3IEplKGEpO2EuRz0hMX19O0JiLnByb3RvdHlwZS5nPWZ1bmN0aW9uKGEpe0tlKHRoaXMpO0hlKHRoaXMsITAsYSl9O0JiLnByb3RvdHlwZS5GPWZ1bmN0aW9uKGEpe0tlKHRoaXMpO0hlKHRoaXMsITEsYSl9Owp2YXIgTWU9ZnVuY3Rpb24oYSxiLGMpe0xlKGEsYixudWxsLGMpfSxOZT1mdW5jdGlvbihhLGIsYyl7TGUoYSxudWxsLGIsYyl9LExlPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWEuaDtlfHwoYj09PWM/Yj1jPWVlKGIpOihiPWVlKGIpLGM9ZWUoYykpKTthLkIucHVzaChbYixjLGRdKTtlJiZJZShhKX07QmIucHJvdG90eXBlLnRoZW49ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZj1uZXcgXy5vZShmdW5jdGlvbihnLGgpe2U9ZztkPWh9KTtMZSh0aGlzLGUsZnVuY3Rpb24oZyl7ZyBpbnN0YW5jZW9mIEdlP2YuY2FuY2VsKCk6ZChnKTtyZXR1cm4gT2V9LHRoaXMpO3JldHVybiBmLnRoZW4oYSxiLGMpfTtCYi5wcm90b3R5cGUuJGdvb2dfVGhlbmFibGU9ITA7dmFyIFBlPWZ1bmN0aW9uKGEsYil7YiBpbnN0YW5jZW9mIEJiP01lKGEsKDAsXy55KShiLkssYikpOk1lKGEsZnVuY3Rpb24oKXtyZXR1cm4gYn0pfTsKQmIucHJvdG90eXBlLks9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IEJiO0xlKHRoaXMsYi5nLGIuRixiKTthJiYoYi5qPXRoaXMsdGhpcy5BKyspO3JldHVybiBifTsKdmFyIFFlPWZ1bmN0aW9uKGEpe3JldHVybiBfLnhjKGEuQixmdW5jdGlvbihiKXtyZXR1cm4gdHlwZW9mIGJbMV09PT0iZnVuY3Rpb24ifSl9LE9lPXt9LEllPWZ1bmN0aW9uKGEpe2lmKGEuQyYmYS5oJiZRZShhKSl7dmFyIGI9YS5DLGM9UmVbYl07YyYmKF8udi5jbGVhclRpbWVvdXQoYy5nKSxkZWxldGUgUmVbYl0pO2EuQz0wfWEuaiYmKGEuai5BLS0sZGVsZXRlIGEuaik7Yj1hLmw7Zm9yKHZhciBkPWM9ITE7YS5CLmxlbmd0aCYmIWEuRDspe3ZhciBlPWEuQi5zaGlmdCgpLGY9ZVswXSxnPWVbMV07ZT1lWzJdO2lmKGY9YS5vP2c6Zil0cnl7dmFyIGg9Zi5jYWxsKGV8fG51bGwsYik7aD09PU9lJiYoaD12b2lkIDApO2ghPT12b2lkIDAmJihhLm89YS5vJiYoaD09Ynx8aCBpbnN0YW5jZW9mIEVycm9yKSxhLmw9Yj1oKTtpZihtZShiKXx8dHlwZW9mIF8udi5Qcm9taXNlPT09ImZ1bmN0aW9uIiYmYiBpbnN0YW5jZW9mIF8udi5Qcm9taXNlKWQ9ITAsYS5EPSEwfWNhdGNoKGspe2I9CmssYS5vPSEwLFFlKGEpfHwoYz0hMCl9fWEubD1iO2QmJihoPSgwLF8ueSkoYS5JLGEsITApLGQ9KDAsXy55KShhLkksYSwhMSksYiBpbnN0YW5jZW9mIEJiPyhMZShiLGgsZCksYi5XPSEwKTpiLnRoZW4oaCxkKSk7YyYmKGI9bmV3IFNlKGIpLFJlW2IuZ109YixhLkM9Yi5nKX0sSmU9ZnVuY3Rpb24oKXthYS5jYWxsKHRoaXMpfTtfLkcoSmUsYWEpO0plLnByb3RvdHlwZS5tZXNzYWdlPSJEZWZlcnJlZCBoYXMgYWxyZWFkeSBmaXJlZCI7SmUucHJvdG90eXBlLm5hbWU9IkFscmVhZHlDYWxsZWRFcnJvciI7dmFyIEdlPWZ1bmN0aW9uKCl7YWEuY2FsbCh0aGlzKX07Xy5HKEdlLGFhKTtHZS5wcm90b3R5cGUubWVzc2FnZT0iRGVmZXJyZWQgd2FzIGNhbmNlbGVkIjtHZS5wcm90b3R5cGUubmFtZT0iQ2FuY2VsZWRFcnJvciI7dmFyIFNlPWZ1bmN0aW9uKGEpe3RoaXMuZz1fLnYuc2V0VGltZW91dCgoMCxfLnkpKHRoaXMudGhyb3dFcnJvcix0aGlzKSwwKTt0aGlzLmg9YX07ClNlLnByb3RvdHlwZS50aHJvd0Vycm9yPWZ1bmN0aW9uKCl7ZGVsZXRlIFJlW3RoaXMuZ107dGhyb3cgdGhpcy5oO307dmFyIFJlPXt9O3ZhciBUZT1mdW5jdGlvbihhLGIsYyxkLGUpe2M9RXJyb3IuY2FsbCh0aGlzKTt0aGlzLm1lc3NhZ2U9Yy5tZXNzYWdlOyJzdGFjayJpbiBjJiYodGhpcy5zdGFjaz1jLnN0YWNrKTt0aGlzLm5hbWU9Ik1vZHVsZUxvYWRGYWlsdXJlIjt0aGlzLnR5cGU9YTt0aGlzLnN0YXR1cz1iO3RoaXMudXJsPWQ7dGhpcy5jYXVzZT1lO3RoaXMubWVzc2FnZT10aGlzLnRvU3RyaW5nKCl9O18uQihUZSxFcnJvcik7VGUucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIFVlKHRoaXMpKyIgKCIrKHRoaXMuc3RhdHVzIT12b2lkIDA/dGhpcy5zdGF0dXM6Ij8iKSsiKSJ9Owp2YXIgVWU9ZnVuY3Rpb24oYSl7c3dpdGNoKGEudHlwZSl7Y2FzZSBUZS5nLkplOnJldHVybiJVbmF1dGhvcml6ZWQiO2Nhc2UgVGUuZy5CZTpyZXR1cm4iQ29uc2VjdXRpdmUgbG9hZCBmYWlsdXJlcyI7Y2FzZSBUZS5nLlRJTUVPVVQ6cmV0dXJuIlRpbWVkIG91dCI7Y2FzZSBUZS5nLkhlOnJldHVybiJPdXQgb2YgZGF0ZSBtb2R1bGUgaWQiO2Nhc2UgVGUuZy50ZDpyZXR1cm4iSW5pdCBlcnJvciI7ZGVmYXVsdDpyZXR1cm4iVW5rbm93biBmYWlsdXJlIHR5cGUgIithLnR5cGV9fTtuYy5GYT1UZTtuYy5GYS5nPXtKZTowLEJlOjEsVElNRU9VVDoyLEhlOjMsdGQ6NH07dmFyIFZlPWZ1bmN0aW9uKCl7dmIuY2FsbCh0aGlzKTt0aGlzLkk9bnVsbDt0aGlzLmc9bmV3IE1hcDt0aGlzLm89bmV3IFNldDt0aGlzLkE9W107dGhpcy5DPW5ldyBTZXQ7dGhpcy5qPVtdO3RoaXMuQj1uZXcgU2V0O3RoaXMuaD1OYz9uZXcgTWFwOnt9O3RoaXMuSz1uZXcgTWFwO3RoaXMubD10aGlzLkQ9bmV3IG5jLkZlKFtdLCIiKTt0aGlzLkw9bnVsbDt0aGlzLkY9bmV3IEJiO3RoaXMuUj10aGlzLlQ9dGhpcy5QPXRoaXMuVz0hMX07Xy5HKFZlLHZiKTt2YXIgV2U9ZnVuY3Rpb24oYSxiKXthYS5jYWxsKHRoaXMsIkVycm9yIGxvYWRpbmcgIithKyI6ICIrYil9O18uRyhXZSxhYSk7VmUucHJvdG90eXBlLlhmPWZ1bmN0aW9uKGEpe3RoaXMuVz1hfTsKVmUucHJvdG90eXBlLnFlPWZ1bmN0aW9uKGEsYil7aWYoISh0aGlzIGluc3RhbmNlb2YgVmUpKXRoaXMucWUoYSxiKTtlbHNlIGlmKHR5cGVvZiBhPT09InN0cmluZyIpe2lmKGEuc3RhcnRzV2l0aCgiZCQiKSl7YT1hLnN1YnN0cmluZygyKTtmb3IodmFyIGM9W10sZD0wLGU9YS5pbmRleE9mKCIvIiksZj0wLGc9ITEsaD0wOzspe3ZhciBrPWc/YS5zdWJzdHJpbmcoZik6YS5zdWJzdHJpbmcoZixlKTtpZihrLmxlbmd0aD09PTApZCsrLGY9InN5IitkLnRvU3RyaW5nKDM2KSxrPVtdO2Vsc2V7dmFyIGw9ay5pbmRleE9mKCI6Iik7aWYobDwwKWY9ayxrPVtdO2Vsc2UgaWYobD09PWsubGVuZ3RoLTEpZj1rLnN1YnN0cmluZygwLGwpLGs9QXJyYXkoY1toLTFdKTtlbHNle2Y9ay5zdWJzdHJpbmcoMCxsKTtrPWsuc3Vic3RyaW5nKGwrMSkuc3BsaXQoIiwiKTtsPWg7Zm9yKHZhciBuPTA7bjxrLmxlbmd0aDtuKyspbC09a1tuXS5sZW5ndGg9PT0wPzE6TnVtYmVyKGtbbl0pLGtbbl09Y1tsXX1sPQowO2lmKGYubGVuZ3RoPT09MClsPTE7ZWxzZSBpZihmLmNoYXJBdCgwKT09PSIrInx8Zi5jaGFyQXQoMCk9PT0iLSIpbD1OdW1iZXIoZik7bCE9PTAmJihkKz1sLGY9InN5IitkLnRvU3RyaW5nKDM2KSl9Yy5wdXNoKGYpO1hlKHRoaXMsZixrKTtpZihnKWJyZWFrO2Y9ZSsxO2U9YS5pbmRleE9mKCIvIixmKTtlPT09LTEmJihnPSEwKTtoKyt9dGhpcy5JPWN9ZWxzZSBpZihhLnN0YXJ0c1dpdGgoInAkIikpWWUodGhpcyxhKTtlbHNle2E9YS5zcGxpdCgiLyIpO2M9W107Zm9yKGQ9MDtkPGEubGVuZ3RoO2QrKyl7aD1hW2RdLnNwbGl0KCI6Iik7ZT1oWzBdO2c9W107aWYoaFsxXSlmb3IoZz1oWzFdLnNwbGl0KCIsIiksaD0wO2g8Zy5sZW5ndGg7aCsrKWdbaF09Y1twYXJzZUludChnW2hdLDM2KV07Yy5wdXNoKGUpO1hlKHRoaXMsZSxnKX10aGlzLkk9Y31pZihiJiZiLmxlbmd0aCl7YT1fLkMoYik7Zm9yKGM9YS5uZXh0KCk7IWMuZG9uZTtjPWEubmV4dCgpKXRoaXMuby5hZGQoYy52YWx1ZSk7CnRoaXMuTD1iW2IubGVuZ3RoLTFdfWVsc2UgdGhpcy5GLmh8fHRoaXMuRi5nKCk7T2JqZWN0LmZyZWV6ZSh0aGlzLkkpO1plKHRoaXMpfX07CnZhciBZZT1mdW5jdGlvbihhLGIpe2lmKCFZZCl7Zm9yKHZhciBjPTA7Yzw2NDtjKyspb2JbIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5LV8iLmNoYXJDb2RlQXQoYyldPWM7WWQ9ITB9dmFyIGQ9e0hkOmIsQmI6Mn07cWIoZCk7dmFyIGU9cWIoZCksZj1xYihkKSsxO2I9QXJyYXkoZSk7Yz1BcnJheShlKTt2YXIgZz1BcnJheShlKTtmPUFycmF5KGYpO3ZhciBoPTAsaz0wLGw9ZC5IZCxuPWQuQmI7ZC5CYj1kLkhkLmluZGV4T2YoInwiLGQuQmIpKzE7Zm9yKHZhciBxPTA7cTxlO3ErKyl7dmFyIHA9cWIoZCkscj1wJjIsdD1wJjE7cD4+Pj0yO3Q/KGgrPXA+Pj4xXi0ocCYxKSxwPSJzeSIraC50b1N0cmluZygzNikpOih0PW4sbis9cCxwPWwuc3Vic3RyaW5nKHQsbikpO2JbcV09cDtyJiYoZltrKytdPXApfWZba109IiI7ZC5CYisrO2s9ZSYtMjtoPWUmMTtmb3IobD0wO2w8aztsKz0yKW49cGIoZCksZ1tsXT1uJjcsZ1tsKwoxXT1uPj4+MyY3O2gmJihoPXBiKGQpLGdba109aCY3KTtkLkJiKys7Zm9yKGs9MDtrPGU7aysrKWdba109PT03JiYoZ1trXT1xYihkKSk7ZC5CYisrO2ZvcihoPWs9MDtoPGU7aCsrKXtsPWdbaF07bj1sPT09MD9aZDpBcnJheShsKTtjW2hdPW47cT1rO2ZvcihyPTA7cjxsO3IrKylxLT1xYihkKSxuW3JdPWZbcV07ZltrXT09PWJbaF0mJmsrK31mb3IoZD0wO2Q8Yi5sZW5ndGg7ZCsrKVhlKGEsYltkXSxjW2RdKTthLkk9Yn07VmUucHJvdG90eXBlLmplPWZ1bmN0aW9uKGEsYil7aWYodGhpcy5oIGluc3RhbmNlb2YgTWFwKXt2YXIgYz10aGlzLmguZ2V0KGEpO2MmJihjLmRlbGV0ZShiKSxjLnNpemU9PT0wJiZ0aGlzLmguZGVsZXRlKGEpKX1lbHNlIGlmKHRoaXMuaFthXSl7ZGVsZXRlIHRoaXMuaFthXVtiXTtmb3IoYyBpbiB0aGlzLmhbYV0pcmV0dXJuO2RlbGV0ZSB0aGlzLmhbYV19fTtWZS5wcm90b3R5cGUuc2U9ZnVuY3Rpb24oYSl7VmUuZWEuc2UuY2FsbCh0aGlzLGEpO1plKHRoaXMpfTsKVmUucHJvdG90eXBlLmlzQWN0aXZlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuby5zaXplPjB9O1ZlLnByb3RvdHlwZS5EZj1mdW5jdGlvbigpe3JldHVybiB0aGlzLkIuc2l6ZT4wfTsKdmFyIGFmPWZ1bmN0aW9uKGEpe3ZhciBiPWEuUCxjPWEuaXNBY3RpdmUoKTtjIT1iJiYoJGUoYSxjP2RlLmxnOmRlLklETEUpLGEuUD1jKTtiPWEuRGYoKTtiIT1hLlQmJigkZShhLGI/ZGUuSGc6ZGUuSWcpLGEuVD1iKX0sWGU9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEuZy5nZXQoYik7ZD9kLmw9YzphLmcuc2V0KGIsbmV3IG5jLkZlKGMsYikpfSxkZj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W10sZT17fTtiPV8uQyhuZXcgU2V0KGIpKTtmb3IodmFyIGY9Yi5uZXh0KCk7IWYuZG9uZTtmPWIubmV4dCgpKXtmPWYudmFsdWU7dmFyIGc9YS5nLmdldChmKTtpZighZyl0aHJvdyBFcnJvcigiQ2AiK2YpO3ZhciBoPW5ldyBCYjtlW2ZdPWg7Zy5nP2guZyhhLnFhKTooYmYoYSxmLGcsISFjLGgpLGNmKGEsZil8fGQucHVzaChmKSl9ZC5sZW5ndGg+MCYmKGEuby5zaXplPT09MD9hLkcoZCk6KGEuai5wdXNoKGQpLGFmKGEpKSk7cmV0dXJuIGV9LGJmPWZ1bmN0aW9uKGEsYixjLGQsZSl7YWUoYywKZS5nLGUpO2JlKGMsZnVuY3Rpb24oZil7ZS5GKG5ldyBXZShiLGYpKX0pO2NmKGEsYik/ZCYmKGEuQi5hZGQoYiksYWYoYSkpOmQmJmEuQi5hZGQoYil9OwpWZS5wcm90b3R5cGUuRz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcztiPWI9PT12b2lkIDA/MDpiO3ZhciBlPWVmKHRoaXMsYSk7dGhpcy5vPW5ldyBTZXQoZSk7dGhpcy5BPXRoaXMuVz9hOl8ud2EoZSk7YWYodGhpcyk7aWYoZS5sZW5ndGghPT0wKXthPV8uQyhlKTtmb3IodmFyIGY9YS5uZXh0KCk7IWYuZG9uZTtmPWEubmV4dCgpKXRoaXMuQy5hZGQoZi52YWx1ZSk7YT10aGlzLk87aWYoIWEpdGhyb3cgRXJyb3IoIkQiKTtpZigodGhpcy5oIGluc3RhbmNlb2YgTWFwP3RoaXMuaC5zaXplPjA6T2JqZWN0LmtleXModGhpcy5oKS5sZW5ndGg+MCkmJiFhLkkpdGhyb3cgRXJyb3IoIkUiKTtmZihhLF8ud2EoZSksdGhpcy5nLHtqaDp0aGlzLmgsZmU6ZnVuY3Rpb24oZyxoLGspe3JldHVybiBnZihkLGQuQSxlLGchPW51bGw/Zzp2b2lkIDAsaCxiLCEhayl9LEZpOigwLF8ueSkodGhpcy5sYSx0aGlzKSxtaDohIWN9KX19Owp2YXIgaGY9ZnVuY3Rpb24oYSl7dGhpcy5oPWE7dGhpcy5qPW5ldyBTZXQ7dGhpcy5nPVtdfSxqZj1mdW5jdGlvbihhLGIpe2lmKCFhLmouaGFzKGIpJiYoYS5qLmFkZChiKSwhYS5oLkMuaGFzKGIpKSl7dmFyIGM9YS5oLmcuZ2V0KGIpO2lmKGMmJiFjLmcpe2M9Yy5sO2Zvcih2YXIgZD0wO2Q8Yy5sZW5ndGg7ZCsrKWpmKGEsY1tkXSk7YS5nLnB1c2goYil9fX0sZWY9ZnVuY3Rpb24oYSxiKXtiPWIuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBhLmcuZ2V0KGUpLmc/KF8udi5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIEVycm9yKCJGYCIrZSl9LDApLCExKTohMH0pO2lmKE9jKXt2YXIgYz1uZXcgaGYoYSk7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspamYoYyxiW2RdKTtjPWMuZ31lbHNle2M9W107Zm9yKGQ9MDtkPGIubGVuZ3RoO2QrKyljPWMuY29uY2F0KGtmKGEsYltkXSkpO0JhKGMpfXJldHVybiFhLlcmJmMubGVuZ3RoPjE/KGI9Yy5zaGlmdCgpLGEuaj1jLm1hcChmdW5jdGlvbihlKXtyZXR1cm5bZV19KS5jb25jYXQoYS5qKSwKW2JdKTpjfSxrZj1mdW5jdGlvbihhLGIpe2lmKE9jKXJldHVybiBhPW5ldyBoZihhKSxqZihhLGIpLGEuZzt2YXIgYz1bXTthLkMuaGFzKGIpfHxjLnB1c2goYik7Yj1bYl07Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspZm9yKHZhciBlPWEuZy5nZXQoYltkXSkubCxmPWUubGVuZ3RoLTE7Zj49MDtmLS0pe3ZhciBnPWVbZl07YS5nLmdldChnKS5nfHxhLkMuaGFzKGcpfHwoYy5wdXNoKGcpLGIucHVzaChnKSl9Yy5yZXZlcnNlKCk7QmEoYyk7cmV0dXJuIGN9LFplPWZ1bmN0aW9uKGEpe2lmKGEubD09YS5EKXthLmw9bnVsbDt2YXIgYj1hLkQub25Mb2FkKCgwLF8ueSkoYS5rZixhKSk7YiYmYi5sZW5ndGgmJmxmKGEsbmV3IG5jLkZhKG5jLkZhLmcudGQsdm9pZCAwLHZvaWQgMCx2b2lkIDAsYlswXSkpO2FmKGEpfX07ClZlLnByb3RvdHlwZS5tZD1mdW5jdGlvbigpe2lmKHRoaXMubCl7dmFyIGE9dGhpcy5sLlJhKCksYj1bXTtpZih0aGlzLmggaW5zdGFuY2VvZiBNYXApe3ZhciBjPXRoaXMuaC5nZXQoYSk7aWYoYyl7Yz1fLkMoQXJyYXkuZnJvbShjKSk7Zm9yKHZhciBkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7ZD1kLnZhbHVlO3ZhciBlPXRoaXMuZy5nZXQoZCk7ZSYmIWUuZyYmKHRoaXMuamUoYSxkKSxiLnB1c2goZCkpfWRmKHRoaXMsYil9fWVsc2UgaWYodGhpcy5oW2FdKXtjPV8uQyhPYmplY3Qua2V5cyh0aGlzLmhbYV0pKTtmb3IoZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpZD1kLnZhbHVlLChlPXRoaXMuZy5nZXQoZCkpJiYhZS5nJiYodGhpcy5qZShhLGQpLGIucHVzaChkKSk7ZGYodGhpcyxiKX10aGlzLnFiKCl8fCgoYj10aGlzLmcuZ2V0KGEpLm9uTG9hZCgoMCxfLnkpKHRoaXMua2YsdGhpcykpKSYmYi5sZW5ndGgmJmxmKHRoaXMsbmV3IG5jLkZhKG5jLkZhLmcudGQsCnZvaWQgMCx2b2lkIDAsdm9pZCAwLGJbMF0pKSx0aGlzLkIuZGVsZXRlKGEpLHRoaXMuby5kZWxldGUoYSksdGhpcy5vLnNpemUhPT0wfHxtZih0aGlzKSx0aGlzLkwmJmE9PXRoaXMuTCYmKHRoaXMuRi5ofHx0aGlzLkYuZygpKSxhZih0aGlzKSx0aGlzLmw9bnVsbCl9fTt2YXIgY2Y9ZnVuY3Rpb24oYSxiKXtpZihhLm8uaGFzKGIpKXJldHVybiEwO2Zvcih2YXIgYz0wO2M8YS5qLmxlbmd0aDtjKyspaWYoXy50YShhLmpbY10sYikpcmV0dXJuITA7cmV0dXJuITF9O1ZlLnByb3RvdHlwZS5sb2FkPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGRmKHRoaXMsW2FdLGIpW2FdfTsKdmFyIGthPWZ1bmN0aW9uKGEpe3ZhciBiPV8uZGE7Yi5sJiZiLmwuUmEoKT09PSJzeW50aGV0aWNfbW9kdWxlX292ZXJoZWFkIiYmKGIubWQoKSxiLmcuZGVsZXRlKCJzeW50aGV0aWNfbW9kdWxlX292ZXJoZWFkIikpO3ZhciBjPWIuZy5nZXQoYSk7YyYmbmYoYixjLmx8fFtdLGZ1bmN0aW9uKGQpe2QubWQoKTtiLm8uZGVsZXRlKGQuUmEoKSl9LGZ1bmN0aW9uKGQpe3JldHVybiFkLmd9LG5ldyBTZXQpO2IubD1iLmcuZ2V0KGEpO2IubCYmKGIubC5CPSEwKX0sZ2Y9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyl7dmFyIGg9KGc9PT12b2lkIDA/MDpnKT8wOihmPT09dm9pZCAwPzA6ZikrMTtmPV8ud2EoYyk7YS5BPWI7Yz1fLkMoYyk7Zm9yKGc9Yy5uZXh0KCk7IWcuZG9uZTtnPWMubmV4dCgpKWEuQy5kZWxldGUoZy52YWx1ZSk7aWYoZD09NDAxKWxmKGEsbmV3IG5jLkZhKG5jLkZhLmcuSmUsZCkpLGEuai5sZW5ndGg9MDtlbHNlIGlmKGQ9PTQxMClvZihhLG5ldyBuYy5GYShuYy5GYS5nLkhlLApkKSksbWYoYSk7ZWxzZSBpZihoPj0zKW9mKGEsbmV3IG5jLkZhKG5jLkZhLmcuQmUsZCxmLGUpKSxtZihhKTtlbHNle3ZhciBrPWQ9PTgwMDF8fCExOyhkPU1hdGgucG93KGgsMikqNUUzKT9fLnYuc2V0VGltZW91dChmdW5jdGlvbigpe2EuRyhiLGgsayl9LGQpOmEuRyhiLGgsayl9fTtWZS5wcm90b3R5cGUubGE9ZnVuY3Rpb24oKXtvZih0aGlzLG5ldyBuYy5GYShuYy5GYS5nLlRJTUVPVVQpKTttZih0aGlzKX07CnZhciBvZj1mdW5jdGlvbihhLGIpe2EuQS5sZW5ndGg+MT9hLmo9YS5BLm1hcChmdW5jdGlvbihjKXtyZXR1cm5bY119KS5jb25jYXQoYS5qKTpsZihhLGIpfSxsZj1mdW5jdGlvbihhLGIpe3ZhciBjPWEuQTthLm8uY2xlYXIoKTtmb3IodmFyIGQ9W10sZT0wO2U8YS5qLmxlbmd0aDtlKyspe3ZhciBmPWEualtlXS5maWx0ZXIoZnVuY3Rpb24oayl7dmFyIGw9a2YodGhpcyxrKTtyZXR1cm4gXy54YyhjLGZ1bmN0aW9uKG4pe3JldHVybiBfLnRhKGwsbil9KX0sYSk7eGEoZCxmKX1mb3IoZT0wO2U8Yy5sZW5ndGg7ZSsrKV8udWEoZCxjW2VdKTtmb3IoZT0wO2U8ZC5sZW5ndGg7ZSsrKXtmb3IoZj0wO2Y8YS5qLmxlbmd0aDtmKyspXy52YShhLmpbZl0sZFtlXSk7YS5CLmRlbGV0ZShkW2VdKX1pZihlPWEuSy5nZXQoZGUuRVJST1IpKWZvcihmPTA7ZjxlLmxlbmd0aDtmKyspZm9yKHZhciBnPWVbZl0saD0wO2g8ZC5sZW5ndGg7aCsrKWcoZGUuRVJST1IsZFtoXSxiKTtmb3IoZD0wO2Q8Yy5sZW5ndGg7ZCsrKShlPQphLmcuZ2V0KGNbZF0pKSYmZS5mZShiKTthLkEubGVuZ3RoPTA7YWYoYSl9LG1mPWZ1bmN0aW9uKGEpe2Zvcig7YS5qLmxlbmd0aDspe3ZhciBiPWEuai5zaGlmdCgpLmZpbHRlcihmdW5jdGlvbihjKXtyZXR1cm4hdGhpcy5nLmdldChjKS5nfSxhKTtpZihiLmxlbmd0aD4wKXthLkcoYik7cmV0dXJufX1hZihhKX0sJGU9ZnVuY3Rpb24oYSxiKXthPWEuSy5nZXQoYik7Zm9yKHZhciBjPTA7YSYmYzxhLmxlbmd0aDtjKyspYVtjXShiKX0sbmY9ZnVuY3Rpb24oYSxiLGMsZCxlKXtiPV8uQyhiKTtmb3IodmFyIGY9Yi5uZXh0KCk7IWYuZG9uZTtmPWIubmV4dCgpKXtmPWYudmFsdWU7dmFyIGc9YS5nLmdldChmKTshZS5oYXMoZikmJmQoZykmJihlLmFkZChmKSxuZihhLGcubHx8W10sYyxkLGUpLGMoZykpfX07ClZlLnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7cmEoQXJyYXkuZnJvbSh0aGlzLmcudmFsdWVzKCkpLHRoaXMuRCk7dGhpcy5nLmNsZWFyKCk7dGhpcy5vLmNsZWFyKCk7dGhpcy5BPVtdO3RoaXMuQi5jbGVhcigpO3RoaXMuaj1bXTt0aGlzLksuY2xlYXIoKTt0aGlzLlI9ITB9O1ZlLnByb3RvdHlwZS5xYj1mdW5jdGlvbigpe3JldHVybiB0aGlzLlJ9O18uaGE9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFZlfTt2YXIgcGY9W10scWY9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihkKXtkJiZ3YyhkLGZ1bmN0aW9uKGUsZil7ZVtmLmlkXT0hMDtyZXR1cm4gZX0sYy5KaSl9dmFyIGM9e0ppOnt9LGluZGV4OnBmLmxlbmd0aCxWbDphfTtiKGEubGQpO2IoYS5qbSk7cGYucHVzaChjKTthLmxkJiZfLnZjKGEubGQsZnVuY3Rpb24oZCl7dmFyIGU9ZC5pZDtlIGluc3RhbmNlb2YgdGMmJmQubW9kdWxlJiYoZS5nPWQubW9kdWxlKX0pfTtxZih7bGQ6W3tpZDp1YyxMYjpuYixtdWx0aXBsZTohMH1dfSk7Xy5yZj1SZWdFeHAoIl4oPzooW146Lz8jLl0rKTopPyg/Oi8vKD86KFteXFxcXC8/I10qKUApPyhbXlxcXFwvPyNdKj8pKD86OihbMC05XSspKT8oPz1bXFxcXC8/I118JCkpPyhbXj8jXSspPyg/OlxcPyhbXiNdKikpPyg/OiMoW1xcc1xcU10qKSk/JCIpO3ZhciBzZj17fTt2YXIgdGY9bmV3IHRjKCJNcEp3WmMiLCJNcEp3WmMiKTtfLnVmPW5ldyB0YygiVVVKcVZlIiwiVVVKcVZlIik7dmFyIHZmPW5ldyBiYix3Zj1mdW5jdGlvbihhLGIsYyl7Y2IuY2FsbCh0aGlzLGEsYik7dGhpcy5ub2RlPWI7dGhpcy5raW5kPWN9O18uQih3ZixjYik7Xy54Zj1SZWdFeHAoIl4oYXJ8Y2tifGR2fGhlfGl3fGZhfG5xb3xwc3xzZHx1Z3x1cnx5aXwuKlstX10oQWRsbXxBcmFifEhlYnJ8Tmtvb3xSb2hnfFRoYWEpKSg/IS4qWy1fXShMYXRufEN5cmwpKCR8LXxfKSkoJHwtfF8pIiwiaSIpO18ueWY9ZnVuY3Rpb24oYSxiKXtifHxfLmxiKCk7dGhpcy5oPWF8fG51bGx9O18ueWYucHJvdG90eXBlLmthPWZ1bmN0aW9uKGEsYil7YT1hKGJ8fHt9LHRoaXMuaD90aGlzLmguZ2V0RGF0YSgpOnt9KTt0aGlzLmcobnVsbCwiZnVuY3Rpb24iPT10eXBlb2YgXy56ZiYmYSBpbnN0YW5jZW9mIF8uemY/YS5aYjpudWxsKTtyZXR1cm4gU3RyaW5nKGEpfTtfLnlmLnByb3RvdHlwZS5nPWZ1bmN0aW9uKCl7fTt2YXIgQWY9ZnVuY3Rpb24oYSl7dGhpcy5nPWE7dGhpcy5oPXRoaXMuZy5nKF8udWYpfTtBZi5wcm90b3R5cGUuZ2V0RGF0YT1mdW5jdGlvbigpe3RoaXMuZy5xYigpfHwodGhpcy5oPXRoaXMuZy5nKF8udWYpKTtyZXR1cm4gdGhpcy5oP3RoaXMuaC5qKCk6e319O3ZhciBCZj1mdW5jdGlvbihhKXt2YXIgYj1uZXcgQWYoYSk7Xy55Zi5jYWxsKHRoaXMsYixhLmdldCh1YykuaCk7dGhpcy5qPW5ldyBfLmhiO3RoaXMubD1ifTtfLkIoQmYsXy55Zik7QmYucHJvdG90eXBlLmdldERhdGE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sLmdldERhdGEoKX07QmYucHJvdG90eXBlLmc9ZnVuY3Rpb24oYSxiKXtfLnlmLnByb3RvdHlwZS5nLmNhbGwodGhpcyxhLGIpO3RoaXMuai5kaXNwYXRjaEV2ZW50KG5ldyB3Zih2ZixhLGIpKX07Xy5vYSh0ZixCZik7cWYoe2xkOlt7aWQ6dGYsTGI6QmYsbXVsdGlwbGU6ITB9XX0pO3ZhciBDZj1mdW5jdGlvbihhLGIpe3RoaXMuZGVmYXVsdFZhbHVlPWE7dGhpcy50eXBlPWI7dGhpcy52YWx1ZT1hfTtDZi5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9O0NmLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSl7dGhpcy52YWx1ZT1hfTt2YXIgRGY9ZnVuY3Rpb24oYSl7Q2YuY2FsbCh0aGlzLGEsImIiKX07Xy5CKERmLENmKTtEZi5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9O3ZhciBFZj1mdW5jdGlvbigpe3RoaXMuZz17fTt0aGlzLmo9IiI7dGhpcy5oPXt9fTtFZi5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmorRmYodGhpcyk7dmFyIGI9dGhpcy5oO3ZhciBjPVtdLGQ7Zm9yKGQgaW4gYilGYihkLGJbZF0sYyk7Yj1jLmpvaW4oIiYiKTtjPSIiO2IhPSIiJiYoYz0iPyIrYik7cmV0dXJuIGErY307CnZhciBIZj1mdW5jdGlvbihhKXthPUdmKGEsIm1kIik7cmV0dXJuISFhJiZhIT09IjAifSxGZj1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPWZ1bmN0aW9uKGQpe2EuZ1tkXSE9PXZvaWQgMCYmYi5wdXNoKGQrIj0iK2EuZ1tkXSl9O0hmKGEpPyhjKCJtZCIpLGMoImsiKSxjKCJjayIpLGMoImFtIiksYygicnMiKSxjKCJnc3Ntb2R1bGVzZXRwcm90byIpLGMoInNsayIpLGMoImR0aSIpLGMoImRid2giKSk6KGMoInNkY2giKSxjKCJrIiksYygiY2siKSxjKCJhbSIpLGMoImFtYyIpLGMoInJ0IiksImQiaW4gYS5nfHxJZihhLCJkIiwiMCIpLGMoImQiKSxjKCJleG0iKSxjKCJleGNtIiksKGEuZy5leGNtfHxhLmcuZXhtKSYmYi5wdXNoKCJlZD0xIiksYygiaW0iKSxjKCJkZyIpLGMoInNtIiksR2YoYSwiYnIiKSE9IjEiJiZHZihhLCJiciIpIT0iMCJ8fGMoImJyIiksYygiYnItZCIpLEdmKGEsInJiIik9PSIxIiYmYygicmIiKSxHZihhLCJ6cyIpIT09IjAiJiZjKCJ6cyIpLEpmKGEpIT09IiImJgpjKCJ3dCIpLGMoImdzc21vZHVsZXNldHByb3RvIiksYygidWpnIiksYygic3AiKSxjKCJpY2hjIiksYygicnMiKSxjKCJjYiIpLGMoImNjYiIpLGMoImVlIiksYygic2xrIiksYygiZHRpIiksYygiZGJ3aCIpLGMoImljIiksYygibSIpKTtyZXR1cm4gYi5qb2luKCIvIil9LEdmPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuZ1tiXT9hLmdbYl06bnVsbH0sSWY9ZnVuY3Rpb24oYSxiLGMpe2M/YS5nW2JdPWM6ZGVsZXRlIGEuZ1tiXX0sSmY9ZnVuY3Rpb24oYSl7c3dpdGNoKEdmKGEsInd0Iikpe2Nhc2UgIjAiOnJldHVybiIwIjtjYXNlICIxIjpyZXR1cm4iMSI7Y2FzZSAiMiI6cmV0dXJuIjIiO2RlZmF1bHQ6cmV0dXJuIiJ9fSxNZj1mdW5jdGlvbihhKXt2YXIgYj1iPT09dm9pZCAwPyEwOmI7dmFyIGM9S2YoYSksZD1uZXcgRWYsZT1jLm1hdGNoKF8ucmYpWzVdO18uemMoTGYsZnVuY3Rpb24oZyl7dmFyIGg9ZS5tYXRjaCgiLyIrZysiPShbXi9dKykiKTtoJiZJZihkLGcsaFsxXSl9KTsKdmFyIGY9IiI7Zj1hLmluZGV4T2YoIl8vc3MvIikhPS0xPyJfL3NzLyI6Il8vanMvIjtkLmo9YS5zdWJzdHIoMCxhLmluZGV4T2YoZikrZi5sZW5ndGgpO2lmKCFiKXJldHVybiBkOyhhPWMubWF0Y2goXy5yZilbNl18fG51bGwpJiZfLkViKGEsZnVuY3Rpb24oZyxoKXtkLmhbZ109aH0pO3JldHVybiBkfSxLZj1mdW5jdGlvbihhKXtyZXR1cm4gYS5zdGFydHNXaXRoKCJodHRwczovL3ViZXJwcm94eS1wZW4tcmVkaXJlY3QuY29ycC5nb29nbGUuY29tL3ViZXJwcm94eS9wZW4/dXJsPSIpP2Euc3Vic3RyKDY1KTphfSxMZj17Wmo6ImsiLHFqOiJjayIsVGo6Im0iLERqOiJleG0iLEJqOiJleGNtIixlajoiYW0iLGZqOiJhbWMiLFJqOiJtbSIsWWo6InJ0IixNajoiZCIsQ2o6ImVkIixqazoic3YiLHNqOiJkZW9iIixtajoiY2IiLG9qOiJjY2IiLG5qOiJjYmkiLGdrOiJycyIsYWs6InNkY2giLE5qOiJpbSIsdGo6ImRnIix6ajoiYnIiLHlqOiJici1kIixBajoicmIiLEJrOiJ6cyIsQWs6Ind0IiwKRWo6ImVlIixpazoic20iLFNqOiJtZCIsSmo6Imdzc21vZHVsZXNldHByb3RvIix5azoidWpnIix4azoic3AiLExqOiJpY2hjIixmazoic2xrIix2ajoiZHRpIix1ajoiZGJ3aCIsT2o6ImljIn0sTmY9UmVnRXhwKCJeW2EtekEtWjAtOS1fKl0rJCIpO18uRyhfLkhiLF8udSk7dmFyIE9mPVtdO18uSGIucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIFBmKHRoaXMsYSxiLGMsZCl9O3ZhciBQZj1mdW5jdGlvbihhLGIsYyxkLGUsZil7QXJyYXkuaXNBcnJheShjKXx8KGMmJihPZlswXT1jLnRvU3RyaW5nKCkpLGM9T2YpO2Zvcih2YXIgZz0wO2c8Yy5sZW5ndGg7ZysrKXt2YXIgaD1fLngoYixjW2ddLGR8fGEuaGFuZGxlRXZlbnQsZXx8ITEsZnx8YS5ofHxhKTtpZighaClicmVhazthLmdbaC5rZXldPWh9cmV0dXJuIGF9O18uSGIucHJvdG90eXBlLmFlPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiBRZih0aGlzLGEsYixjLGQpfTsKdmFyIFFmPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtpZihBcnJheS5pc0FycmF5KGMpKWZvcih2YXIgZz0wO2c8Yy5sZW5ndGg7ZysrKVFmKGEsYixjW2ddLGQsZSxmKTtlbHNle2I9Xy5OZChiLGMsZHx8YS5oYW5kbGVFdmVudCxlLGZ8fGEuaHx8YSk7aWYoIWIpcmV0dXJuIGE7YS5nW2Iua2V5XT1ifXJldHVybiBhfTtfLkhiLnByb3RvdHlwZS55Yz1mdW5jdGlvbihhLGIsYyxkLGUpe2lmKEFycmF5LmlzQXJyYXkoYikpZm9yKHZhciBmPTA7ZjxiLmxlbmd0aDtmKyspdGhpcy55YyhhLGJbZl0sYyxkLGUpO2Vsc2UgYz1jfHx0aGlzLmhhbmRsZUV2ZW50LGQ9Xy55YShkKT8hIWQuY2FwdHVyZTohIWQsZT1lfHx0aGlzLmh8fHRoaXMsYz1PZChjKSxkPSEhZCxiPUZkKGEpP2EuamMoYixjLGQsZSk6YT8oYT1RZChhKSk/YS5qYyhiLGMsZCxlKTpudWxsOm51bGwsYiYmKF8uVmQoYiksZGVsZXRlIHRoaXMuZ1tiLmtleV0pO3JldHVybiB0aGlzfTsKXy5SZj1mdW5jdGlvbihhKXtfLnpjKGEuZyxmdW5jdGlvbihiLGMpe3RoaXMuZy5oYXNPd25Qcm9wZXJ0eShjKSYmXy5WZChiKX0sYSk7YS5nPXt9fTtfLkhiLnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7Xy5IYi5lYS5NLmNhbGwodGhpcyk7Xy5SZih0aGlzKX07Xy5IYi5wcm90b3R5cGUuaGFuZGxlRXZlbnQ9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiTiIpO307dmFyIFNmLFRmPWZ1bmN0aW9uKCl7fTtfLkcoVGYsSWIpO1RmLnByb3RvdHlwZS5nPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBYTUxIdHRwUmVxdWVzdH07U2Y9bmV3IFRmO18uRyhKYixJYik7SmIucHJvdG90eXBlLmc9ZnVuY3Rpb24oKXt2YXIgYT1uZXcgWE1MSHR0cFJlcXVlc3Q7aWYoIndpdGhDcmVkZW50aWFscyJpbiBhKXJldHVybiBhO2lmKHR5cGVvZiBYRG9tYWluUmVxdWVzdCE9InVuZGVmaW5lZCIpcmV0dXJuIG5ldyBVZjt0aHJvdyBFcnJvcigiTyIpO307dmFyIFVmPWZ1bmN0aW9uKCl7dGhpcy5nPW5ldyBYRG9tYWluUmVxdWVzdDt0aGlzLnJlYWR5U3RhdGU9MDt0aGlzLm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsO3RoaXMucmVzcG9uc2VUeXBlPXRoaXMucmVzcG9uc2VUZXh0PSIiO3RoaXMuc3RhdHVzPS0xO3RoaXMuc3RhdHVzVGV4dD0iIjt0aGlzLmcub25sb2FkPSgwLF8ueSkodGhpcy5QaCx0aGlzKTt0aGlzLmcub25lcnJvcj0oMCxfLnkpKHRoaXMuRGUsdGhpcyk7dGhpcy5nLm9ucHJvZ3Jlc3M9KDAsXy55KSh0aGlzLlNoLHRoaXMpO3RoaXMuZy5vbnRpbWVvdXQ9KDAsXy55KSh0aGlzLldoLHRoaXMpfTtfLm09VWYucHJvdG90eXBlOwpfLm0ub3Blbj1mdW5jdGlvbihhLGIsYyl7aWYoYyE9bnVsbCYmIWMpdGhyb3cgRXJyb3IoIlAiKTt0aGlzLmcub3BlbihhLGIpfTtfLm0uc2VuZD1mdW5jdGlvbihhKXtpZihhKWlmKHR5cGVvZiBhPT0ic3RyaW5nIil0aGlzLmcuc2VuZChhKTtlbHNlIHRocm93IEVycm9yKCJRIik7ZWxzZSB0aGlzLmcuc2VuZCgpfTtfLm0uYWJvcnQ9ZnVuY3Rpb24oKXt0aGlzLmcuYWJvcnQoKX07Xy5tLnNldFJlcXVlc3RIZWFkZXI9ZnVuY3Rpb24oKXt9O18ubS5nZXRSZXNwb25zZUhlYWRlcj1mdW5jdGlvbihhKXtyZXR1cm4gYS50b0xvd2VyQ2FzZSgpPT0iY29udGVudC10eXBlIj90aGlzLmcuY29udGVudFR5cGU6IiJ9O18ubS5QaD1mdW5jdGlvbigpe3RoaXMuc3RhdHVzPTIwMDt0aGlzLnJlc3BvbnNlVGV4dD10aGlzLmcucmVzcG9uc2VUZXh0O1ZmKHRoaXMsNCl9O18ubS5EZT1mdW5jdGlvbigpe3RoaXMuc3RhdHVzPTUwMDt0aGlzLnJlc3BvbnNlVGV4dD0iIjtWZih0aGlzLDQpfTsKXy5tLldoPWZ1bmN0aW9uKCl7dGhpcy5EZSgpfTtfLm0uU2g9ZnVuY3Rpb24oKXt0aGlzLnN0YXR1cz0yMDA7VmYodGhpcywxKX07dmFyIFZmPWZ1bmN0aW9uKGEsYil7YS5yZWFkeVN0YXRlPWI7aWYoYS5vbnJlYWR5c3RhdGVjaGFuZ2UpYS5vbnJlYWR5c3RhdGVjaGFuZ2UoKX07VWYucHJvdG90eXBlLmdldEFsbFJlc3BvbnNlSGVhZGVycz1mdW5jdGlvbigpe3JldHVybiJjb250ZW50LXR5cGU6ICIrdGhpcy5nLmNvbnRlbnRUeXBlfTt2YXIgWGYsWWY7Xy5XZj1mdW5jdGlvbihhKXtfLmhiLmNhbGwodGhpcyk7dGhpcy5oZWFkZXJzPW5ldyBNYXA7dGhpcy5LPWF8fG51bGw7dGhpcy5oPSExO3RoaXMuZz1udWxsO3RoaXMuQT0iIjt0aGlzLmo9dGhpcy5GPXRoaXMubz10aGlzLkQ9ITE7dGhpcy5CPTA7dGhpcy5sPW51bGw7dGhpcy5JPSIiO3RoaXMuQz0hMX07Xy5HKF8uV2YsXy5oYik7WGY9L15odHRwcz8kL2k7WWY9WyJQT1NUIiwiUFVUIl07Xy5aZj1bXTtfLldmLnByb3RvdHlwZS5MPWZ1bmN0aW9uKCl7dGhpcy5kaXNwb3NlKCk7Xy52YShfLlpmLHRoaXMpfTsKXy5XZi5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbihhLGIsYyxkKXtpZih0aGlzLmcpdGhyb3cgRXJyb3IoIlNgIit0aGlzLkErImAiK2EpO2I9Yj9iLnRvVXBwZXJDYXNlKCk6IkdFVCI7dGhpcy5BPWE7dGhpcy5EPSExO3RoaXMuaD0hMDt0aGlzLmc9dGhpcy5LP3RoaXMuSy5nKCk6U2YuZygpO3RoaXMuZy5vbnJlYWR5c3RhdGVjaGFuZ2U9ZWUoKDAsXy55KSh0aGlzLkcsdGhpcykpO3RyeXt0aGlzLkY9ITAsdGhpcy5nLm9wZW4oYixTdHJpbmcoYSksITApLHRoaXMuRj0hMX1jYXRjaChnKXskZih0aGlzKTtyZXR1cm59YT1jfHwiIjtjPW5ldyBNYXAodGhpcy5oZWFkZXJzKTtpZihkKWlmKE9iamVjdC5nZXRQcm90b3R5cGVPZihkKT09PU9iamVjdC5wcm90b3R5cGUpZm9yKHZhciBlIGluIGQpYy5zZXQoZSxkW2VdKTtlbHNlIGlmKHR5cGVvZiBkLmtleXM9PT0iZnVuY3Rpb24iJiZ0eXBlb2YgZC5nZXQ9PT0iZnVuY3Rpb24iKXtlPV8uQyhkLmtleXMoKSk7Zm9yKHZhciBmPWUubmV4dCgpOyFmLmRvbmU7Zj0KZS5uZXh0KCkpZj1mLnZhbHVlLGMuc2V0KGYsZC5nZXQoZikpfWVsc2UgdGhyb3cgRXJyb3IoIlRgIitTdHJpbmcoZCkpO2Q9QXJyYXkuZnJvbShjLmtleXMoKSkuZmluZChmdW5jdGlvbihnKXtyZXR1cm4iY29udGVudC10eXBlIj09Zy50b0xvd2VyQ2FzZSgpfSk7ZT1fLnYuRm9ybURhdGEmJmEgaW5zdGFuY2VvZiBfLnYuRm9ybURhdGE7IV8udGEoWWYsYil8fGR8fGV8fGMuc2V0KCJDb250ZW50LVR5cGUiLCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7Y2hhcnNldD11dGYtOCIpO2I9Xy5DKGMpO2ZvcihkPWIubmV4dCgpOyFkLmRvbmU7ZD1iLm5leHQoKSljPV8uQyhkLnZhbHVlKSxkPWMubmV4dCgpLnZhbHVlLGM9Yy5uZXh0KCkudmFsdWUsdGhpcy5nLnNldFJlcXVlc3RIZWFkZXIoZCxjKTt0aGlzLkkmJih0aGlzLmcucmVzcG9uc2VUeXBlPXRoaXMuSSk7IndpdGhDcmVkZW50aWFscyJpbiB0aGlzLmcmJnRoaXMuZy53aXRoQ3JlZGVudGlhbHMhPT10aGlzLkMmJgoodGhpcy5nLndpdGhDcmVkZW50aWFscz10aGlzLkMpO3RyeXt0aGlzLmwmJihjbGVhclRpbWVvdXQodGhpcy5sKSx0aGlzLmw9bnVsbCksdGhpcy5CPjAmJih0aGlzLmw9c2V0VGltZW91dCh0aGlzLlIuYmluZCh0aGlzKSx0aGlzLkIpKSx0aGlzLm89ITAsdGhpcy5nLnNlbmQoYSksdGhpcy5vPSExfWNhdGNoKGcpeyRmKHRoaXMpfX07Xy5XZi5wcm90b3R5cGUuUj1mdW5jdGlvbigpe3R5cGVvZiBqYyE9InVuZGVmaW5lZCImJnRoaXMuZyYmKHRoaXMuZGlzcGF0Y2hFdmVudCgidGltZW91dCIpLHRoaXMuYWJvcnQoOCkpfTt2YXIgJGY9ZnVuY3Rpb24oYSl7YS5oPSExO2EuZyYmKGEuaj0hMCxhLmcuYWJvcnQoKSxhLmo9ITEpO2RnKGEpO2VnKGEpfSxkZz1mdW5jdGlvbihhKXthLkR8fChhLkQ9ITAsYS5kaXNwYXRjaEV2ZW50KCJjb21wbGV0ZSIpLGEuZGlzcGF0Y2hFdmVudCgiZXJyb3IiKSl9OwpfLldmLnByb3RvdHlwZS5hYm9ydD1mdW5jdGlvbigpe3RoaXMuZyYmdGhpcy5oJiYodGhpcy5oPSExLHRoaXMuaj0hMCx0aGlzLmcuYWJvcnQoKSx0aGlzLmo9ITEsdGhpcy5kaXNwYXRjaEV2ZW50KCJjb21wbGV0ZSIpLHRoaXMuZGlzcGF0Y2hFdmVudCgiYWJvcnQiKSxlZyh0aGlzKSl9O18uV2YucHJvdG90eXBlLk09ZnVuY3Rpb24oKXt0aGlzLmcmJih0aGlzLmgmJih0aGlzLmg9ITEsdGhpcy5qPSEwLHRoaXMuZy5hYm9ydCgpLHRoaXMuaj0hMSksZWcodGhpcywhMCkpO18uV2YuZWEuTS5jYWxsKHRoaXMpfTtfLldmLnByb3RvdHlwZS5HPWZ1bmN0aW9uKCl7dGhpcy5xYigpfHwodGhpcy5GfHx0aGlzLm98fHRoaXMuaj9mZyh0aGlzKTp0aGlzLk8oKSl9O18uV2YucHJvdG90eXBlLk89ZnVuY3Rpb24oKXtmZyh0aGlzKX07CnZhciBmZz1mdW5jdGlvbihhKXtpZihhLmgmJnR5cGVvZiBqYyE9InVuZGVmaW5lZCIpaWYoYS5vJiYoYS5nP2EuZy5yZWFkeVN0YXRlOjApPT00KXNldFRpbWVvdXQoYS5HLmJpbmQoYSksMCk7ZWxzZSBpZihhLmRpc3BhdGNoRXZlbnQoInJlYWR5c3RhdGVjaGFuZ2UiKSwoYS5nP2EuZy5yZWFkeVN0YXRlOjApPT00KXthLmg9ITE7dHJ5e18uZ2coYSk/KGEuZGlzcGF0Y2hFdmVudCgiY29tcGxldGUiKSxhLmRpc3BhdGNoRXZlbnQoInN1Y2Nlc3MiKSk6ZGcoYSl9ZmluYWxseXtlZyhhKX19fSxlZz1mdW5jdGlvbihhLGIpe2lmKGEuZyl7YS5sJiYoY2xlYXJUaW1lb3V0KGEubCksYS5sPW51bGwpO3ZhciBjPWEuZzthLmc9bnVsbDtifHxhLmRpc3BhdGNoRXZlbnQoInJlYWR5Iik7dHJ5e2Mub25yZWFkeXN0YXRlY2hhbmdlPW51bGx9Y2F0Y2goZCl7fX19O18uV2YucHJvdG90eXBlLmlzQWN0aXZlPWZ1bmN0aW9uKCl7cmV0dXJuISF0aGlzLmd9OwpfLmdnPWZ1bmN0aW9uKGEpe3ZhciBiPV8uaGcoYSk7YTpzd2l0Y2goYil7Y2FzZSAyMDA6Y2FzZSAyMDE6Y2FzZSAyMDI6Y2FzZSAyMDQ6Y2FzZSAyMDY6Y2FzZSAzMDQ6Y2FzZSAxMjIzOnZhciBjPSEwO2JyZWFrIGE7ZGVmYXVsdDpjPSExfWlmKCFjKXtpZihiPWI9PT0wKWE9U3RyaW5nKGEuQSkubWF0Y2goXy5yZilbMV18fG51bGwsIWEmJl8udi5zZWxmJiZfLnYuc2VsZi5sb2NhdGlvbiYmKGE9Xy52LnNlbGYubG9jYXRpb24ucHJvdG9jb2wuc2xpY2UoMCwtMSkpLGI9IVhmLnRlc3QoYT9hLnRvTG93ZXJDYXNlKCk6IiIpO2M9Yn1yZXR1cm4gY307Xy5oZz1mdW5jdGlvbihhKXt0cnl7cmV0dXJuKGEuZz9hLmcucmVhZHlTdGF0ZTowKT4yP2EuZy5zdGF0dXM6LTF9Y2F0Y2goYil7cmV0dXJuLTF9fTtfLmlnPWZ1bmN0aW9uKGEpe3RyeXtyZXR1cm4gYS5nP2EuZy5yZXNwb25zZVRleHQ6IiJ9Y2F0Y2goYil7cmV0dXJuIiJ9fTt2YXIga2c9ZnVuY3Rpb24oYSl7Xy51LmNhbGwodGhpcyk7dGhpcy5GPWE7dGhpcy5CPU1mKGEpO3RoaXMubD10aGlzLm89bnVsbDt0aGlzLkk9ITA7dGhpcy5oPW5ldyBfLkhiKHRoaXMpO3RoaXMuRz1bXTt0aGlzLkE9bmV3IFNldDt0aGlzLmc9W107dGhpcy5LPW5ldyBqZzt0aGlzLmo9W107dGhpcy5DPSExO2E9KDAsXy55KSh0aGlzLkQsdGhpcyk7c2YudmVyc2lvbj1hfTtfLkIoa2csXy51KTsKdmFyIGxnPWZ1bmN0aW9uKGEsYil7YS5nLmxlbmd0aCYmUGUoYixhLmdbYS5nLmxlbmd0aC0xXSk7YS5nLnB1c2goYik7TWUoYixmdW5jdGlvbigpe18udmEodGhpcy5nLGIpfSxhKX0sZmY9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9ZD09PXZvaWQgMD97fTpkO3ZhciBmPWUuamg7ZD1lLm1oO3ZhciBnPWUuZmU7ZT1lLkZpO2I9bWcoYSxiLGMsZixkKTtuZyhhLGIsZyxlLGQpfSxtZz1mdW5jdGlvbihhLGIsYyxkLGUpe2Q9ZD09PXZvaWQgMD9OYz9uZXcgTWFwOnt9OmQ7dmFyIGY9W107b2coYSxiLGMsZCxlPT09dm9pZCAwPyExOmUsZnVuY3Rpb24oZyl7Zi5wdXNoKGcuUmEoKSl9KTtyZXR1cm4gZn0sb2c9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyl7Zz1nPT09dm9pZCAwP3t9Omc7Yj1fLkMoYik7Zm9yKHZhciBoPWIubmV4dCgpOyFoLmRvbmU7aD1iLm5leHQoKSl7dmFyIGs9aC52YWx1ZTtoPWMuZ2V0KGspOyFlJiYoYS5BLmhhcyhrKXx8aC5nKXx8Z1trXXx8KGdba109ITAsaz1kIGluc3RhbmNlb2YKTWFwPyhrPWQuZ2V0KGspKT9BcnJheS5mcm9tKGspOltdOmRba10/T2JqZWN0LmtleXMoZFtrXSk6W10sb2coYSxoLmwuY29uY2F0KGspLGMsZCxlLGYsZyksZihoKSl9fSxuZz1mdW5jdGlvbihhLGIsYyxkLGUpe2U9ZT09PXZvaWQgMD8hMTplO3ZhciBmPVtdLGc9bmV3IEJiO2I9W2JdO2Zvcih2YXIgaD1mdW5jdGlvbihxLHApe2Zvcih2YXIgcj1bXSx0PTAsQT1NYXRoLmZsb29yKHEubGVuZ3RoL3ApKzEsRD0wO0Q8cDtEKyspe3ZhciBFPShEKzEpKkE7ci5wdXNoKHEuc2xpY2UodCxFKSk7dD1FfXJldHVybiByfSxrPWIuc2hpZnQoKTtrOyl7dmFyIGw9cGcoYSxrLCEhZSwhMCk7aWYobC5sZW5ndGg8PTJFMyl7aWYoaz1yZyhhLGssZSkpZi5wdXNoKGspLFBlKGcsay5nKX1lbHNlIGI9aChrLE1hdGguY2VpbChsLmxlbmd0aC8yRTMpKS5jb25jYXQoYik7az1iLnNoaWZ0KCl9dmFyIG49bmV3IEJiO2xnKGEsbik7TWUobixmdW5jdGlvbigpe3JldHVybiBzZyhhLGYsYyxkKX0pO05lKG4sCmZ1bmN0aW9uKCl7dmFyIHE9bmV3IHRnO3Euaj0hMDtxLmg9LTE7c2codGhpcyxbcV0sYyxkKX0sYSk7TWUoZyxmdW5jdGlvbigpe3JldHVybiBuLmcoKX0pO2cuZygpfSxyZz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9cGcoYSxiLCEoYz09PXZvaWQgMHx8IWMpKTthLkcucHVzaChkKTtiPV8uQyhiKTtmb3IoYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpYS5BLmFkZChjLnZhbHVlKTtpZihhLkMpYT1fLndkKGRvY3VtZW50LCJTQ1JJUFQiKSxfLlNhKGEsXy5MYihkKSksYS50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLGEuYXN5bmM9ITEsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtlbHNle3ZhciBlPW5ldyB0ZyxmPW5ldyBfLldmKGEuai5sZW5ndGg+MD9uZXcgSmI6dm9pZCAwKTthLmguTihmLCJzdWNjZXNzIiwoMCxfLnkpKGUuQixlLGYpKTthLmguTihmLCJlcnJvciIsKDAsXy55KShlLkEsZSxmKSk7YS5oLk4oZiwidGltZW91dCIsKDAsXy55KShlLkMsZSkpO1BmKGEuaCwKZiwicmVhZHkiLGYuZGlzcG9zZSwhMSxmKTtmLkI9M0U0O3VnKGEuSyxmdW5jdGlvbigpe2Yuc2VuZChkKTtyZXR1cm4gZS5nfSk7cmV0dXJuIGV9cmV0dXJuIG51bGx9LHNnPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT0hMSxmLGc9ITEsaD0wO2g8Yi5sZW5ndGg7aCsrKXt2YXIgaz1iW2hdO2lmKCFmJiZrLmope2U9ITA7Zj1rLmg7YnJlYWt9ZWxzZSBrLmwmJihnPSEwKX1oPV8ud2EoYS5nKTsoZXx8ZykmJmYhPS0xJiYoYS5nLmxlbmd0aD0wKTtpZihlKWMmJmMoZik7ZWxzZSBpZihnKWQmJmQoKTtlbHNlIGZvcihhPTA7YTxiLmxlbmd0aDthKyspZD1iW2FdLHZnKGQubyxkLkNhKXx8YyYmYyg4MDAxKTsoZXx8ZykmJmYhPS0xJiZfLnZjKGgsZnVuY3Rpb24obCl7bC5jYW5jZWwoKX0pfTtrZy5wcm90b3R5cGUuTT1mdW5jdGlvbigpe3RoaXMuaC5kaXNwb3NlKCk7ZGVsZXRlIHNmLnZlcnNpb247Xy51LnByb3RvdHlwZS5NLmNhbGwodGhpcyl9OwprZy5wcm90b3R5cGUuRD1mdW5jdGlvbigpe3JldHVybiBHZih0aGlzLkIsImsiKX07CnZhciBwZz1mdW5jdGlvbihhLGIsYyxkKXtkPWQ9PT12b2lkIDA/ITE6ZDt2YXIgZT1fLkNiKGEuRi5tYXRjaChfLnJmKVszXXx8bnVsbCk7aWYoYS5qLmxlbmd0aD4wJiYhXy50YShhLmosZSkmJmUhPW51bGwmJndpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSE9ZSl0aHJvdyBFcnJvcigiV2AiK2UpO3ZhciBmPWEuQjtlPW5ldyBFZjtlLmc9T2JqZWN0LmFzc2lnbih7fSxmLmcpO2Uuaj1mLmo7ZS5oPU9iamVjdC5hc3NpZ24oe30sZi5oKTtkZWxldGUgZS5nLm07ZGVsZXRlIGUuZy5leG07ZGVsZXRlIGUuZy5lZDtpZihiKXtmPV8uQyhiKTtmb3IodmFyIGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWlmKGc9Zy52YWx1ZSwhTmYudGVzdChnKSl0aHJvdyBFcnJvcigiTWAiK2cpO31JZihlLCJtIixiLmpvaW4oIiwiKSk7YS5vJiYoSWYoZSwiY2siLGEubyksYS5sJiZJZihlLCJycyIsYS5sKSk7SWYoZSwiZCIsIjAiKTtjJiYoZS5oLnp4PU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoKMjE0NzQ4MzY0OCkudG9TdHJpbmcoMzYpK01hdGguYWJzKE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoyMTQ3NDgzNjQ4KV5EYXRlLm5vdygpKS50b1N0cmluZygzNikpO2E9ZS50b1N0cmluZygpO2QmJmEubGFzdEluZGV4T2YoIi8iLDApPT0wJiYoZT1kb2N1bWVudC5sb2NhdGlvbi5ocmVmLm1hdGNoKF8ucmYpLGQ9ZVsxXSxiPWVbMl0sYz1lWzNdLGU9ZVs0XSxmPSIiLGQmJihmKz1kKyI6IiksYyYmKGYrPSIvLyIsYiYmKGYrPWIrIkAiKSxmKz1jLGUmJihmKz0iOiIrZSkpLGE9ZithKTtyZXR1cm4gYX0sdmc9ZnVuY3Rpb24oYSxiKXt2YXIgYz0iIjtpZihhLmxlbmd0aD4xJiZhLmNoYXJBdChhLmxlbmd0aC0xKT09PSJcbiIpe3ZhciBkPWEubGFzdEluZGV4T2YoIlxuIixhLmxlbmd0aC0yKTtkPj0wJiYoYz1hLnN1YnN0cmluZyhkKzEsYS5sZW5ndGgtMSkpfWQ9Yy5sZW5ndGgtMTE7aWYoZD49MCYmYy5pbmRleE9mKCJHb29nbGUgSW5jLiIsZCk9PWR8fGMubGFzdEluZGV4T2YoIi8vIyBzb3VyY2VNYXBwaW5nVVJMPSIsCjApPT0wKXRyeXtjPXdpbmRvdzthPWErIlxyXG4vLyMgc291cmNlVVJMPSIrYjthPV8uS2IoYSk7dmFyIGU9Xy5RYShhKTt2YXIgZj1fLlJhKGUpO2MuZXZhbChmKT09PWYmJmMuZXZhbChmLnRvU3RyaW5nKCkpfWNhdGNoKGcpe3JldHVybiExfWVsc2UgcmV0dXJuITE7cmV0dXJuITB9LHdnPWZ1bmN0aW9uKGEpe3ZhciBiPV8uQ2IoYS5tYXRjaChfLnJmKVs1XXx8bnVsbCl8fCIiO2I9Xy5DYihLZihiKS5tYXRjaChfLnJmKVs1XXx8bnVsbCk7cmV0dXJuKGI9PT1udWxsPzA6UmVnRXhwKCIoL18vanMvKXwoL18vc3MvKSIsImciKS50ZXN0KGIpJiYvXC9rPS8udGVzdChiKSk/YTpudWxsfSx0Zz1mdW5jdGlvbigpe3RoaXMuZz1uZXcgQmI7dGhpcy5DYT10aGlzLm89IiI7dGhpcy5qPSExO3RoaXMuaD0wO3RoaXMubD0hMX07dGcucHJvdG90eXBlLkI9ZnVuY3Rpb24oYSl7dGhpcy5vPV8uaWcoYSk7dGhpcy5DYT1TdHJpbmcoYS5BKTt0aGlzLmcuZygpfTsKdGcucHJvdG90eXBlLkE9ZnVuY3Rpb24oYSl7dGhpcy5qPSEwO3RoaXMuaD1fLmhnKGEpO3RoaXMuZy5nKCl9O3RnLnByb3RvdHlwZS5DPWZ1bmN0aW9uKCl7dGhpcy5sPSEwO3RoaXMuZy5nKCl9O3ZhciBqZz1mdW5jdGlvbigpe3RoaXMuZz0wO3RoaXMuaD1bXX0sdWc9ZnVuY3Rpb24oYSxiKXthLmgucHVzaChiKTt4ZyhhKX0seGc9ZnVuY3Rpb24oYSl7Zm9yKDthLmc8NSYmYS5oLmxlbmd0aDspeWcoYSxhLmguc2hpZnQoKSl9LHlnPWZ1bmN0aW9uKGEsYil7YS5nKys7TWUoYigpLGZ1bmN0aW9uKCl7dGhpcy5nLS07eGcodGhpcyl9LGEpfTt2YXIgemc9bmV3IERmKCExKSxBZz1kb2N1bWVudC5sb2NhdGlvbi5ocmVmOwpxZih7ZmxhZ3M6e2RtbDp6Z30saW5pdGlhbGl6ZTpmdW5jdGlvbihhKXt2YXIgYj16Zy5nZXQoKSxjPSIiLGQ9IiI7d2luZG93JiZ3aW5kb3cuX0ZfY3NzUm93S2V5JiYoYz13aW5kb3cuX0ZfY3NzUm93S2V5LHdpbmRvdy5fRl9jb21iaW5lZFNpZ25hdHVyZSYmKGQ9d2luZG93Ll9GX2NvbWJpbmVkU2lnbmF0dXJlKSk7aWYoYyYmdHlwZW9mIHdpbmRvdy5fRl9pbnN0YWxsQ3NzIT09ImZ1bmN0aW9uIil0aHJvdyBFcnJvcigiVSIpO3ZhciBlLGY9Xy52Ll9GX2pzVXJsO2YmJihlPXdnKGYpKTshZSYmKGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJhc2UtanMiKSkmJihlPWYuc3JjP2Yuc3JjOmYuZ2V0QXR0cmlidXRlKCJocmVmIiksZT13ZyhlKSk7ZXx8KGU9d2coQWcpKTtlfHwoZT1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IiksZT13ZyhlW2UubGVuZ3RoLTFdLnNyYykpO2lmKCFlKXRocm93IEVycm9yKCJWIik7ZT1uZXcga2coZSk7YyYmKGUubz1jKTsKZCYmKGUubD1kKTtlLkM9YjtiPWphKCk7Yi5PPWU7Yi5YZighMCk7Yj1qYSgpO2Iuc2UoYSk7YS5qKGIpfX0pOwpfLl9Nb2R1bGVNYW5hZ2VyX2luaXRpYWxpemU9ZnVuY3Rpb24oYSxiKXtpZighXy5kYSl7aWYoIV8uaGEpcmV0dXJuO18uaWEoKX1fLmRhLnFlKGEsYil9OwpfLl9Nb2R1bGVNYW5hZ2VyX2luaXRpYWxpemUoJ2IvbjczcXdmL1VVSnFWZS9NcEp3WmMvZWxfY29uZi9lbF9tYWluX2Nzcy9zeTEvc3kyOjYvc3kzOjcvc3k0OjYvZWxfbWFpbjo1LDgsOS9jb3JzcHJveHkvd2Vic2l0ZV9lcnJvci9uYXZpZ2F0aW9udWk6Ny9waGlzaGluZ19wcm90ZWN0aW9uOjgvX3N0YW06OScsWydlbF9jb25mJ10pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmxhKCJlbF9jb25mIik7CnZhciBDZztfLl9leHBvcnRWZXJzaW9uPWZ1bmN0aW9uKGEpe18ucmMoImdvb2dsZS50cmFuc2xhdGUudiIsYSl9O18uX2dldENhbGxiYWNrRnVuY3Rpb249ZnVuY3Rpb24oYSl7cmV0dXJuIF8ua2MoYSl9O0NnPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJoZWFkIilbMF07Ynx8KGI9ZG9jdW1lbnQuYm9keS5wYXJlbnROb2RlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImhlYWQiKSkpO2IuYXBwZW5kQ2hpbGQoYSl9O18uX2xvYWRKcz1mdW5jdGlvbihhKXt2YXIgYj1fLndkKGRvY3VtZW50LCJTQ1JJUFQiKTtiLnR5cGU9InRleHQvamF2YXNjcmlwdCI7Yi5jaGFyc2V0PSJVVEYtOCI7Xy5TYShiLF8uTGIoYSkpO0NnKGIpfTsKXy5fbG9hZENzcz1mdW5jdGlvbihhKXt2YXIgYj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIik7Yi50eXBlPSJ0ZXh0L2NzcyI7Yi5yZWw9InN0eWxlc2hlZXQiO2IuY2hhcnNldD0iVVRGLTgiO2IuaHJlZj1hO0NnKGIpfTtfLl9pc05TPWZ1bmN0aW9uKGEpe2E9YS5zcGxpdCgiLiIpO2Zvcih2YXIgYj13aW5kb3csYz0wO2M8YS5sZW5ndGg7KytjKWlmKCEoYj1iW2FbY11dKSlyZXR1cm4hMTtyZXR1cm4hMH07Xy5fc2V0dXBOUz1mdW5jdGlvbihhKXthPWEuc3BsaXQoIi4iKTtmb3IodmFyIGI9d2luZG93LGM9MDtjPGEubGVuZ3RoOysrYyliLmhhc093blByb3BlcnR5P2IuaGFzT3duUHJvcGVydHkoYVtjXSk/Yj1iW2FbY11dOmI9YlthW2NdXT17fTpiPWJbYVtjXV18fChiW2FbY11dPXt9KTtyZXR1cm4gYn07Xy5yYygiX2V4cG9ydFZlcnNpb24iLF8uX2V4cG9ydFZlcnNpb24pO18ucmMoIl9nZXRDYWxsYmFja0Z1bmN0aW9uIixfLl9nZXRDYWxsYmFja0Z1bmN0aW9uKTsKXy5yYygiX2xvYWRKcyIsXy5fbG9hZEpzKTtfLnJjKCJfbG9hZENzcyIsXy5fbG9hZENzcyk7Xy5yYygiX2lzTlMiLF8uX2lzTlMpO18ucmMoIl9zZXR1cE5TIixfLl9zZXR1cE5TKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lciYmdHlwZW9mIGRvY3VtZW50LnJlYWR5U3RhdGU9PSJ1bmRlZmluZWQiJiZ3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsZnVuY3Rpb24oKXtkb2N1bWVudC5yZWFkeVN0YXRlPSJjb21wbGV0ZSJ9LCExKTsKXy5tYSgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KfSkuY2FsbCh0aGlzLHRoaXMuZGVmYXVsdF90cik7Ci8vIEdvb2dsZSBJbmMuCgovLyMgc291cmNlVVJMPS9fL3RyYW5zbGF0ZV9odHRwL18vanMvaz10cmFuc2xhdGVfaHR0cC50ci5uby5zY3JuWTZRMl95dy5PL2FtPUJJQUFCdy9kPTEvcnM9QU44U1BmcTFLbFVGcWVpRnZCTXVkZHV6R3RiMzlRV1h1dy9tPWVsX2NvbmYKICAgIC8vIENvbmZpZ3VyZSBDb25zdGFudHMKICAgIChmdW5jdGlvbigpewogICAgICBsZXQgZ3RDb25zdEV2YWxTdGFydFRpbWUgPSBuZXcgRGF0ZSgpOwogICAgICBpZiAoX2lzTlMoJ2dvb2dsZS50cmFuc2xhdGUuRWxlbWVudCcpKXtyZXR1cm59CgogICAgICAoZnVuY3Rpb24oKXsKICAgICAgICBjb25zdCBjPV9zZXR1cE5TKCdnb29nbGUudHJhbnNsYXRlLl9jb25zdCcpOwoKICAgICAgICBjLl9jZXN0ID0gZ3RDb25zdEV2YWxTdGFydFRpbWU7CiAgICAgICAgZ3RDb25zdEV2YWxTdGFydFRpbWUgPSB1bmRlZmluZWQ7IC8vIGhpZGUgdGhpcyBldmFsIHN0YXJ0IHRpbWUgY29uc3RhbnQKICBjLl9jbD0nbm8nOyBjLl9jdWM9J2dvb2dsZVRyYW5zbGF0ZUVsZW1lbnRJbml0JzsgYy5fY2VmPSdceDViMCwxLDAsXHg1Ylx4MjJlc19lblx4MjIsXHgyMmVuX3poXHgyMixceDIyZW5fZGVceDIyLFx4MjJlbl9qYVx4MjIsXHgyMmVuX2VzXHgyMixceDIyZGVfZW5ceDIyXHg1ZCxudWxsLFx4NWIwLDMsMTAwLFx4NWJceDIyZW5faGlceDIyLFx4MjJoaV9lblx4MjIsXHgyMmVuX2VzXHgyMixceDIyZXNfZW5ceDIyLFx4MjJlbl9kZVx4MjIsXHgyMmRlX2VuXHgyMixceDIyZW5femhceDIyLFx4MjJlbl9qYVx4MjIsXHgyMmVuX2FyXHgyMixceDIyZW5faWRceDIyXHg1ZFx4NWQsMCwxLDBceDVkJzsgYy5fY2FjPScnOyBjLl9jYW09Jyc7IGMuX2NlbnY9J3Byb2QnO2MuX2NsbD0nSU5GTyc7IGMuX2NnYWs9Jyc7IGMuX2N0a2s9JzQ5NTg3Ny4xMzg1ODQ1Njc3JzsgY29uc3QgaD0ndHJhbnNsYXRlLmdvb2dsZWFwaXMuY29tJzsgY29uc3Qgb3BoPSd0cmFuc2xhdGUtcGEuZ29vZ2xlYXBpcy5jb20nOyBjb25zdCBzPSdodHRwcycrJzovLyc7IGMuX3BhaD1oOyBjLl9wYXM9czsgY29uc3QgYj1zKyd0cmFuc2xhdGUuZ29vZ2xlYXBpcy5jb20nOyBjb25zdCBzdGF0aWNQYXRoID0gJy90cmFuc2xhdGVfc3RhdGljLyc7IGMuX3BjaT1iK3N0YXRpY1BhdGgrJ2ltZy90ZV9jdHJsMy5naWYnOyBjLl9wbWk9YitzdGF0aWNQYXRoKydpbWcvbWluaV9nb29nbGUucG5nJzsgYy5fcGJpPWIrc3RhdGljUGF0aCsnaW1nL3RlX2JrLmdpZic7IGMuX3BsaT1iK3N0YXRpY1BhdGgrJ2ltZy9sb2FkaW5nLmdpZic7IGMuX3BzPSdodHRwczpcL1wvd3d3LmdzdGF0aWMuY29tXC9fXC90cmFuc2xhdGVfaHR0cFwvX1wvc3NcL2tceDNkdHJhbnNsYXRlX2h0dHAudHIuQjdEaWg5SnlqbncuTC5GNC5PXC9hbVx4M2RCSUFBQndcL2RceDNkMFwvcnNceDNkQU44U1BmcEMwNHZycnpRWGdzX1RDTTVFdHJ1d2ZQek50UVwvbVx4M2RlbF9tYWluX2Nzcyc7IGMuX3BsbGE9b3BoKydcL3YxXC9zdXBwb3J0ZWRMYW5ndWFnZXMnOyBjLl9wdWg9J3RyYW5zbGF0ZS5nb29nbGUuY29tJztjLl9jbmFsPXt9O19sb2FkQ3NzKGMuX3BzKTsgX2xvYWRKcygnaHR0cHM6XC9cL3RyYW5zbGF0ZS5nb29nbGVhcGlzLmNvbVwvX1wvdHJhbnNsYXRlX2h0dHBcL19cL2pzXC9rXHgzZHRyYW5zbGF0ZV9odHRwLnRyLm5vLnNjcm5ZNlEyX3l3Lk9cL2FtXHgzZEJJQUFCd1wvZFx4M2QxXC9leG1ceDNkZWxfY29uZlwvZWRceDNkMVwvcnNceDNkQU44U1BmcTFLbFVGcWVpRnZCTXVkZHV6R3RiMzlRV1h1d1wvbVx4M2RlbF9tYWluJyk7X2V4cG9ydFZlcnNpb24oJ1RFXzIwMjYwNzIyJyk7CiAgICAgICAgfSkoKTsKICAgICAgfSkoKTsKICA="}},"time_used":94,"timings":{"blocked":-1,"dns":2,"connect":16,"send":0,"wait":42,"receive":0,"ssl":34},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/startedicon6.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.572Z","timestamp":1785158432572,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/startedicon6.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=vXmf2aqzvx5Y%2Fj6YsUontpJpGtbSa%2BPFLm4uxBAobw07w4HUecgGoytbHzaZ6%2BbX6SEroVxdZSap%2BQkCI0eo3%2FRbEWBgElO4USfbPxd2eithrlpQDN4JFHqRarK1TWeBM5hvpg%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b9c8356b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 11024\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":11024,"size_decoded":11791,"mime_type":"image/png","magic":"PNG image data, 128 x 128, 8-bit/color RGBA, non-interlaced","md5":"8a7c1ca73109f1c8d6a30ba2f98d07a8","sha1":"fd6e442a284b9107909defdb379b0f2993c93a3c","sha256":"fd7538112a6737163e1ce120c23cd5ddb92ab1e797b3f74625047744dee96b0a","sha512":"4a8350245afc7ecc6cd1bc7c79ad7042605d9f7f65b8cf2b796d2834081b5c94024b93c9f77092a840ffcc140c060baaf5cfb953ea6df77b9b3443ddea8ee615","ssdeep":"192:0gB1Z0PDFE7Y3EGvRCq3LA/A+rPkzHOm8bg+tKCbRl4FZ7Er/8qBzGq:0gBmxB3TRCq70rPkT4ztZ34FZor8qBH","tlshash":"5832cfcad929a3380f9be8d026f38ca07e5be5f54d32906a55c3d1016cf936968447cb","first_seen":"2024-09-19T20:45:30.977462Z","last_seen":"2026-07-27T13:21:39.105068Z","times_seen":17,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RDhGNTE0NEM4NUQ1MTFFOUJFOTFCODI2QzEzMjJBNTUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RDhGNTE0NEQ4NUQ1MTFFOUJFOTFCODI2QzEzMjJBNTUiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpEOEY1MTQ0QTg1RDUxMUU5QkU5MUI4MjZDMTMyMkE1NSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpEOEY1MTQ0Qjg1RDUxMUU5QkU5MUI4MjZDMTMyMkE1NSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqCVvAEAACeESURBVHja7D0JeBRF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"}},"time_used":16,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/referralicon.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.578Z","timestamp":1785158432578,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/referralicon.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=mZxrYUZqSUl4t0RBA8y%2FKHzNoM%2B%2B%2FMXcp1qf3xdtBmgsO7dw3GAGy83G2Jxl%2B2oNKofNUAEneGmaPiyB2jPLoq0Ej9DRYPxqRRWSjcmxaPxPGmTBsbZIvxqOLgWo%2Brj98U%2FkVQ%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b9c8a56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 7245\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":7245,"size_decoded":8015,"mime_type":"image/png","magic":"PNG image data, 102 x 102, 8-bit/color RGBA, non-interlaced","md5":"e730a43b5c141f1b20d4fb9e68815de0","sha1":"e51429df8c2eec765b32c9d422566a98757b5085","sha256":"dda3e7356917071b29a28caac17cad0ecd8695c6481f26fff45481c3cdea44d7","sha512":"c7ec19a2f67e0b5efda6826d1b60407abca7ccc9ffadb65119732a117383f957502f2059234e2a1479965c93495a9815e7497c1691df8d52bc6a7e2a452fc51f","ssdeep":"96:3Y2f8YCPOSQ2weWQN39wNZEARnIYcj9Bn34UBbYLCqC5egR+a4iHn5BCOMUNR/tv:33dCZmwwNZEz5f3FblqY8a4iH5BCOdtv","tlshash":"b5e19f35bd6552c15158c4b79eb76c9bf52f8d009081f3e2ed4c8ca5c6d9dca3c45846","first_seen":"2024-09-19T20:45:30.991309Z","last_seen":"2026-07-27T13:21:39.109728Z","times_seen":19,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAGYAAABmCAYAAAA53+RiAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QzYxRTM1NkM4NURFMTFFOTgxRDlDOURCNEUyMUUwRUYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QzYxRTM1NkQ4NURFMTFFOTgxRDlDOURCNEUyMUUwRUYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDNjFFMzU2QTg1REUxMUU5ODFEOUM5REI0RTIxRTBFRiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDNjFFMzU2Qjg1REUxMUU5ODFEOUM5REI0RTIxRTBFRiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pk1IEbAAABjBSURBVHja7F0JfBRF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"}},"time_used":20,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":20,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.googleapis.com/css?family=Play:400,700\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://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.497Z","timestamp":1785158432497,"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=Play:400,700\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://uniz-coinzltd.com/\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ncontent-type: text/css; charset=utf-8\r\nvary: Sec-Fetch-Dest, Sec-Fetch-Mode, Sec-Fetch-Site\r\naccess-control-allow-origin: *\r\ntiming-allow-origin: *\r\nlink: \u003chttps://fonts.gstatic.com\u003e; rel=preconnect; crossorigin\r\nstrict-transport-security: max-age=31536000\r\nexpires: Mon, 27 Jul 2026 13:20:32 GMT\r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncache-control: private, max-age=86400\r\ncross-origin-opener-policy: same-origin-allow-popups\r\ncross-origin-resource-policy: cross-origin\r\ncontent-encoding: gzip\r\nserver: ESF\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\r\nx-content-type-options: nosniff\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":4192,"size_decoded":1340,"mime_type":"text/css; charset=utf-8","magic":"ASCII text","md5":"adf2a11b39b09426410dc181032f74e4","sha1":"3e4063f1bb52fc90f41e5cedc3029b8fcb35974c","sha256":"6ab3c2f755a6fdf9c2b798ed7fc8f27007f12f720b50ad13317a28fa57b8020a","sha512":"61642ce161fda1b81ed4f3f348f06d92747f2936d930ea25e32b8f7f88d4291f94d328ad17c1da4afd8222ab4b7a4907bde81d1b294ddc6993e10e875df5ea94","ssdeep":"96:wOEacgOEaAFZlOEaY33OEa7AOEaJJc+uDOEadNTOpa7gOpaqFZlOpaC33OpadOpy:/cvXY3w7pxF7SAC3pfaY5","tlshash":"7781cad60066d810eb530cc223df7e329d5e6161b054c179affe18ccacead2a2361b0d","first_seen":"2025-09-11T09:59:06.566554Z","last_seen":"2026-08-16T18:11:05.086182Z","times_seen":757,"resource_available":false,"data":"LyogY3lyaWxsaWMtZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUGxheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wbGF5L3YyMS82YWV6NEsyb1Zxd0l2dGcySDY4VC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4QSwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsIFUrRkUyRS1GRTJGOwp9Ci8qIGN5cmlsbGljICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUGxheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wbGF5L3YyMS82YWV6NEsyb1Zxd0l2dEUySDY4VC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDMwMSwgVSswNDAwLTA0NUYsIFUrMDQ5MC0wNDkxLCBVKzA0QjAtMDRCMSwgVSsyMTE2Owp9Ci8qIGdyZWVrICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUGxheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wbGF5L3YyMS82YWV6NEsyb1Zxd0l2dFkySDY4VC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDM3MC0wMzc3LCBVKzAzN0EtMDM3RiwgVSswMzg0LTAzOEEsIFUrMDM4QywgVSswMzhFLTAzQTEsIFUrMDNBMy0wM0ZGOwp9Ci8qIHZpZXRuYW1lc2UgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdQbGF5JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BsYXkvdjIxLzZhZXo0SzJvVnF3SXZ0bzJINjhULndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUGxheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wbGF5L3YyMS82YWV6NEsyb1Zxd0l2dHMySDY4VC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGOwp9Ci8qIGxhdGluICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUGxheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wbGF5L3YyMS82YWV6NEsyb1Zxd0l2dFUySHcud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDsKfQovKiBjeXJpbGxpYy1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdQbGF5JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDcwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BsYXkvdjIxLzZhZTg0SzJvVnF3SXRtNFRDcDB5MmtuVC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4QSwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsIFUrRkUyRS1GRTJGOwp9Ci8qIGN5cmlsbGljICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUGxheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wbGF5L3YyMS82YWU4NEsyb1Zxd0l0bTRUQ3BReTJrblQud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAzMDEsIFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjsKfQovKiBncmVlayAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BsYXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNzAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcGxheS92MjEvNmFlODRLMm9WcXdJdG00VENwTXkya25ULndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzcwLTAzNzcsIFUrMDM3QS0wMzdGLCBVKzAzODQtMDM4QSwgVSswMzhDLCBVKzAzOEUtMDNBMSwgVSswM0EzLTAzRkY7Cn0KLyogdmlldG5hbWVzZSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BsYXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNzAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcGxheS92MjEvNmFlODRLMm9WcXdJdG00VENwOHkya25ULndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUGxheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wbGF5L3YyMS82YWU4NEsyb1Zxd0l0bTRUQ3A0eTJrblQud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BsYXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNzAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcGxheS92MjEvNmFlODRLMm9WcXdJdG00VENwQXkyZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Cg=="}},"time_used":89,"timings":{"blocked":-1,"dns":1,"connect":16,"send":0,"wait":34,"receive":0,"ssl":37},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/hover.css","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.501Z","timestamp":1785158432501,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/hover.css HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\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\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: text/css\r\nserver-timing: cfExtPri\r\npriority: u=2,i=?0\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=ruDrDKMxifwN6kVVo2ZmjLUdzB6qpCT8YJDKrg6lfa5yQ%2BvS30OGLfcablDk7SnWyQbz6Stbok3m6fKJB%2BQXOt3P3iffvdOrPX%2FXbHAD20%2BEmoFUybYrfR9bjrgiJXpNveuicA%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b2c6c56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 7623\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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":114697,"size_decoded":8434,"mime_type":"text/css","magic":"ASCII text","md5":"fac4178c15e5a86139c662dafc809501","sha1":"ef1481841399156a880ec31b07dda9cfaa1ace39","sha256":"bb88454962767eb6f2ddb1aabaaf844d8a57de7e8f848d7f6928f81b54998452","sha512":"0902219b6e236fbf9d8173d1d452c8733c1bf67b0eb906cc9866ea0c27c2d08f6da556d01475e9b54e2c6ce797b230bfbd5f39055ce0c71ea4d3e36872c378d9","ssdeep":"1536:67O7EesvXIPRX4PT8aZv8qoXIoqbTFaFeTxvyAZ+D7M71D:qXIPRX4PT3","tlshash":"bcb38bf56591210432278a0cc3cf5f79a73cd0a3aa61dcb9b746584bcf52a5c63cab27","first_seen":"2023-04-05T06:16:47Z","last_seen":"2026-08-17T18:01:14.97457Z","times_seen":6124,"resource_available":false,"data":"LyohCiAqIEhvdmVyLmNzcyAoaHR0cDovL2lhbmx1bm4uZ2l0aHViLmlvL0hvdmVyLykKICogVmVyc2lvbjogMi4zLjIKICogQXV0aG9yOiBJYW4gTHVubiBASWFuTHVubgogKiBBdXRob3IgVVJMOiBodHRwOi8vaWFubHVubi5jby51ay8KICogR2l0aHViOiBodHRwczovL2dpdGh1Yi5jb20vSWFuTHVubi9Ib3ZlcgoKICogSG92ZXIuY3NzIENvcHlyaWdodCBJYW4gTHVubiAyMDE3LiBHZW5lcmF0ZWQgd2l0aCBTYXNzLgogKi8KLyogMkQgVFJBTlNJVElPTlMgKi8KLyogR3JvdyAqLwouaHZyLWdyb3cgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKfQouaHZyLWdyb3c6aG92ZXIsIC5odnItZ3Jvdzpmb2N1cywgLmh2ci1ncm93OmFjdGl2ZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7CiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOwp9CgovKiBTaHJpbmsgKi8KLmh2ci1zaHJpbmsgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKfQouaHZyLXNocmluazpob3ZlciwgLmh2ci1zaHJpbms6Zm9jdXMsIC5odnItc2hyaW5rOmFjdGl2ZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSk7CiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpOwp9CgovKiBQdWxzZSAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXB1bHNlIHsKICAyNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7CiAgfQogIDc1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTsKICB9Cn0KQGtleWZyYW1lcyBodnItcHVsc2UgewogIDI1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTsKICB9CiAgNzUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjkpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpOwogIH0KfQouaHZyLXB1bHNlIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKfQouaHZyLXB1bHNlOmhvdmVyLCAuaHZyLXB1bHNlOmZvY3VzLCAuaHZyLXB1bHNlOmFjdGl2ZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLXB1bHNlOwogIGFuaW1hdGlvbi1uYW1lOiBodnItcHVsc2U7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7Cn0KCi8qIFB1bHNlIEdyb3cgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1wdWxzZS1ncm93IHsKICB0byB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTsKICB9Cn0KQGtleWZyYW1lcyBodnItcHVsc2UtZ3JvdyB7CiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7CiAgfQp9Ci5odnItcHVsc2UtZ3JvdyB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7Cn0KLmh2ci1wdWxzZS1ncm93OmhvdmVyLCAuaHZyLXB1bHNlLWdyb3c6Zm9jdXMsIC5odnItcHVsc2UtZ3JvdzphY3RpdmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1wdWxzZS1ncm93OwogIGFuaW1hdGlvbi1uYW1lOiBodnItcHVsc2UtZ3JvdzsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsKICBhbmltYXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7CiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlOwp9CgovKiBQdWxzZSBTaHJpbmsgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1wdWxzZS1zaHJpbmsgewogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjkpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpOwogIH0KfQpAa2V5ZnJhbWVzIGh2ci1wdWxzZS1zaHJpbmsgewogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjkpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpOwogIH0KfQouaHZyLXB1bHNlLXNocmluayB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7Cn0KLmh2ci1wdWxzZS1zaHJpbms6aG92ZXIsIC5odnItcHVsc2Utc2hyaW5rOmZvY3VzLCAuaHZyLXB1bHNlLXNocmluazphY3RpdmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1wdWxzZS1zaHJpbms7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1wdWxzZS1zaHJpbms7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuM3M7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOwogIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlOwogIGFuaW1hdGlvbi1kaXJlY3Rpb246IGFsdGVybmF0ZTsKfQoKLyogUHVzaCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXB1c2ggewogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44KTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTsKICB9CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOwogIH0KfQpAa2V5ZnJhbWVzIGh2ci1wdXNoIHsKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsKICB9Cn0KLmh2ci1wdXNoIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKfQouaHZyLXB1c2g6aG92ZXIsIC5odnItcHVzaDpmb2N1cywgLmh2ci1wdXNoOmFjdGl2ZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLXB1c2g7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1wdXNoOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7Cn0KCi8qIFBvcCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXBvcCB7CiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjIpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpOwogIH0KfQpAa2V5ZnJhbWVzIGh2ci1wb3AgewogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4yKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTsKICB9Cn0KLmh2ci1wb3AgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwp9Ci5odnItcG9wOmhvdmVyLCAuaHZyLXBvcDpmb2N1cywgLmh2ci1wb3A6YWN0aXZlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItcG9wOwogIGFuaW1hdGlvbi1uYW1lOiBodnItcG9wOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7Cn0KCi8qIEJvdW5jZSBJbiAqLwouaHZyLWJvdW5jZS1pbiB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7Cn0KLmh2ci1ib3VuY2UtaW46aG92ZXIsIC5odnItYm91bmNlLWluOmZvY3VzLCAuaHZyLWJvdW5jZS1pbjphY3RpdmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjIpOwogIHRyYW5zZm9ybTogc2NhbGUoMS4yKTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMi4wMiwgMC4zMSwgLTAuMzYpOwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMi4wMiwgMC4zMSwgLTAuMzYpOwp9CgovKiBCb3VuY2UgT3V0ICovCi5odnItYm91bmNlLW91dCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7Cn0KLmh2ci1ib3VuY2Utb3V0OmhvdmVyLCAuaHZyLWJvdW5jZS1vdXQ6Zm9jdXMsIC5odnItYm91bmNlLW91dDphY3RpdmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjgpOwogIHRyYW5zZm9ybTogc2NhbGUoMC44KTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMi4wMiwgMC4zMSwgLTAuMzYpOwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMi4wMiwgMC4zMSwgLTAuMzYpOwp9CgovKiBSb3RhdGUgKi8KLmh2ci1yb3RhdGUgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKfQouaHZyLXJvdGF0ZTpob3ZlciwgLmh2ci1yb3RhdGU6Zm9jdXMsIC5odnItcm90YXRlOmFjdGl2ZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0ZGVnKTsKICB0cmFuc2Zvcm06IHJvdGF0ZSg0ZGVnKTsKfQoKLyogR3JvdyBSb3RhdGUgKi8KLmh2ci1ncm93LXJvdGF0ZSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItZ3Jvdy1yb3RhdGU6aG92ZXIsIC5odnItZ3Jvdy1yb3RhdGU6Zm9jdXMsIC5odnItZ3Jvdy1yb3RhdGU6YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoNGRlZyk7CiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSg0ZGVnKTsKfQoKLyogRmxvYXQgKi8KLmh2ci1mbG9hdCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWZsb2F0OmhvdmVyLCAuaHZyLWZsb2F0OmZvY3VzLCAuaHZyLWZsb2F0OmFjdGl2ZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOwp9CgovKiBTaW5rICovCi5odnItc2luayB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLXNpbms6aG92ZXIsIC5odnItc2luazpmb2N1cywgLmh2ci1zaW5rOmFjdGl2ZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsKfQoKLyogQm9iICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItYm9iIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KTsKICB9CiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpOwogIH0KICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOwogIH0KfQpAa2V5ZnJhbWVzIGh2ci1ib2IgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOwogIH0KICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7CiAgfQp9CkAtd2Via2l0LWtleWZyYW1lcyBodnItYm9iLWZsb2F0IHsKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOwogIH0KfQpAa2V5ZnJhbWVzIGh2ci1ib2ItZmxvYXQgewogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7CiAgfQp9Ci5odnItYm9iIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKfQouaHZyLWJvYjpob3ZlciwgLmh2ci1ib2I6Zm9jdXMsIC5odnItYm9iOmFjdGl2ZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWJvYi1mbG9hdCwgaHZyLWJvYjsKICBhbmltYXRpb24tbmFtZTogaHZyLWJvYi1mbG9hdCwgaHZyLWJvYjsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzOwogIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcywgLjNzOwogIGFuaW1hdGlvbi1kZWxheTogMHMsIC4zczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0LCBlYXNlLWluLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCwgZWFzZS1pbi1vdXQ7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTsKICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOwogIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOwogIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7CiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7Cn0KCi8qIEhhbmcgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1oYW5nIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7CiAgfQogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogIH0KfQpAa2V5ZnJhbWVzIGh2ci1oYW5nIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7CiAgfQogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogIH0KfQpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWhhbmctc2luayB7CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7CiAgfQp9CkBrZXlmcmFtZXMgaHZyLWhhbmctc2luayB7CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7CiAgfQp9Ci5odnItaGFuZyB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7Cn0KLmh2ci1oYW5nOmhvdmVyLCAuaHZyLWhhbmc6Zm9jdXMsIC5odnItaGFuZzphY3RpdmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1oYW5nLXNpbmssIGh2ci1oYW5nOwogIGFuaW1hdGlvbi1uYW1lOiBodnItaGFuZy1zaW5rLCBodnItaGFuZzsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzOwogIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcywgLjNzOwogIGFuaW1hdGlvbi1kZWxheTogMHMsIC4zczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0LCBlYXNlLWluLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCwgZWFzZS1pbi1vdXQ7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTsKICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOwogIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOwogIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7CiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7Cn0KCi8qIFNrZXcgKi8KLmh2ci1za2V3IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07Cn0KLmh2ci1za2V3OmhvdmVyLCAuaHZyLXNrZXc6Zm9jdXMsIC5odnItc2tldzphY3RpdmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0xMGRlZyk7CiAgdHJhbnNmb3JtOiBza2V3KC0xMGRlZyk7Cn0KCi8qIFNrZXcgRm9yd2FyZCAqLwouaHZyLXNrZXctZm9yd2FyZCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlOwogIHRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTsKfQouaHZyLXNrZXctZm9yd2FyZDpob3ZlciwgLmh2ci1za2V3LWZvcndhcmQ6Zm9jdXMsIC5odnItc2tldy1mb3J3YXJkOmFjdGl2ZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoLTEwZGVnKTsKICB0cmFuc2Zvcm06IHNrZXcoLTEwZGVnKTsKfQoKLyogU2tldyBCYWNrd2FyZCAqLwouaHZyLXNrZXctYmFja3dhcmQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTsKICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7Cn0KLmh2ci1za2V3LWJhY2t3YXJkOmhvdmVyLCAuaHZyLXNrZXctYmFja3dhcmQ6Zm9jdXMsIC5odnItc2tldy1iYWNrd2FyZDphY3RpdmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsKICB0cmFuc2Zvcm06IHNrZXcoMTBkZWcpOwp9CgovKiBXb2JibGUgVmVydGljYWwgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci13b2JibGUtdmVydGljYWwgewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7CiAgfQogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogIH0KICA0OS45NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpOwogIH0KICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsKICB9CiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTsKICB9CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICB9Cn0KQGtleWZyYW1lcyBodnItd29iYmxlLXZlcnRpY2FsIHsKICAxNi42NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOwogIH0KICAzMy4zJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICB9CiAgNDkuOTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKICB9CiAgNjYuNiUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7CiAgfQogIDgzLjI1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgfQp9Ci5odnItd29iYmxlLXZlcnRpY2FsIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKfQouaHZyLXdvYmJsZS12ZXJ0aWNhbDpob3ZlciwgLmh2ci13b2JibGUtdmVydGljYWw6Zm9jdXMsIC5odnItd29iYmxlLXZlcnRpY2FsOmFjdGl2ZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS12ZXJ0aWNhbDsKICBhbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS12ZXJ0aWNhbDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwp9CgovKiBXb2JibGUgSG9yaXpvbnRhbCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXdvYmJsZS1ob3Jpem9udGFsIHsKICAxNi42NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg4cHgpOwogIH0KICAzMy4zJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KTsKICB9CiAgNDkuOTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsKICB9CiAgNjYuNiUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7CiAgfQogIDgzLjI1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgfQp9CkBrZXlmcmFtZXMgaHZyLXdvYmJsZS1ob3Jpem9udGFsIHsKICAxNi42NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg4cHgpOwogIH0KICAzMy4zJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KTsKICB9CiAgNDkuOTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsKICB9CiAgNjYuNiUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7CiAgfQogIDgzLjI1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgfQp9Ci5odnItd29iYmxlLWhvcml6b250YWwgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwp9Ci5odnItd29iYmxlLWhvcml6b250YWw6aG92ZXIsIC5odnItd29iYmxlLWhvcml6b250YWw6Zm9jdXMsIC5odnItd29iYmxlLWhvcml6b250YWw6YWN0aXZlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLWhvcml6b250YWw7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci13b2JibGUtaG9yaXpvbnRhbDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwp9CgovKiBXb2JibGUgVG8gQm90dG9tIFJpZ2h0ICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItd29iYmxlLXRvLWJvdHRvbS1yaWdodCB7CiAgMTYuNjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoOHB4LCA4cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoOHB4LCA4cHgpOwogIH0KICAzMy4zJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC02cHgsIC02cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTZweCwgLTZweCk7CiAgfQogIDQ5Ljk1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDRweCwgNHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDRweCwgNHB4KTsKICB9CiAgNjYuNiUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMnB4LCAtMnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0ycHgsIC0ycHgpOwogIH0KICA4My4yNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIDFweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIDFweCk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOwogIH0KfQpAa2V5ZnJhbWVzIGh2ci13b2JibGUtdG8tYm90dG9tLXJpZ2h0IHsKICAxNi42NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4cHgsIDhweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4cHgsIDhweCk7CiAgfQogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTZweCwgLTZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNnB4LCAtNnB4KTsKICB9CiAgNDkuOTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCA0cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCA0cHgpOwogIH0KICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC0ycHgsIC0ycHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTJweCwgLTJweCk7CiAgfQogIDgzLjI1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDFweCwgMXB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDFweCwgMXB4KTsKICB9CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7CiAgfQp9Ci5odnItd29iYmxlLXRvLWJvdHRvbS1yaWdodCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7Cn0KLmh2ci13b2JibGUtdG8tYm90dG9tLXJpZ2h0OmhvdmVyLCAuaHZyLXdvYmJsZS10by1ib3R0b20tcmlnaHQ6Zm9jdXMsIC5odnItd29iYmxlLXRvLWJvdHRvbS1yaWdodDphY3RpdmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci13b2JibGUtdG8tYm90dG9tLXJpZ2h0OwogIGFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLXRvLWJvdHRvbS1yaWdodDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwp9CgovKiBXb2JibGUgVG8gVG9wIFJpZ2h0ICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItd29iYmxlLXRvLXRvcC1yaWdodCB7CiAgMTYuNjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoOHB4LCAtOHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDhweCwgLThweCk7CiAgfQogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTZweCwgNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC02cHgsIDZweCk7CiAgfQogIDQ5Ljk1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDRweCwgLTRweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIC00cHgpOwogIH0KICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC0ycHgsIDJweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMnB4LCAycHgpOwogIH0KICA4My4yNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIC0xcHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMXB4LCAtMXB4KTsKICB9CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7CiAgfQp9CkBrZXlmcmFtZXMgaHZyLXdvYmJsZS10by10b3AtcmlnaHQgewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDhweCwgLThweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4cHgsIC04cHgpOwogIH0KICAzMy4zJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC02cHgsIDZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNnB4LCA2cHgpOwogIH0KICA0OS45NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIC00cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCAtNHB4KTsKICB9CiAgNjYuNiUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMnB4LCAycHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTJweCwgMnB4KTsKICB9CiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMXB4LCAtMXB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDFweCwgLTFweCk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOwogIH0KfQouaHZyLXdvYmJsZS10by10b3AtcmlnaHQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwp9Ci5odnItd29iYmxlLXRvLXRvcC1yaWdodDpob3ZlciwgLmh2ci13b2JibGUtdG8tdG9wLXJpZ2h0OmZvY3VzLCAuaHZyLXdvYmJsZS10by10b3AtcmlnaHQ6YWN0aXZlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLXRvLXRvcC1yaWdodDsKICBhbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS10by10b3AtcmlnaHQ7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKfQoKLyogV29iYmxlIFRvcCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXdvYmJsZS10b3AgewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTJkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7CiAgfQogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygxMGRlZyk7CiAgfQogIDQ5Ljk1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtNmRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoLTZkZWcpOwogIH0KICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICB9CiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0yZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygtMmRlZyk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoMCk7CiAgICB0cmFuc2Zvcm06IHNrZXcoMCk7CiAgfQp9CkBrZXlmcmFtZXMgaHZyLXdvYmJsZS10b3AgewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTJkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7CiAgfQogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygxMGRlZyk7CiAgfQogIDQ5Ljk1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtNmRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoLTZkZWcpOwogIH0KICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICB9CiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0yZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygtMmRlZyk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoMCk7CiAgICB0cmFuc2Zvcm06IHNrZXcoMCk7CiAgfQp9Ci5odnItd29iYmxlLXRvcCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlOwp9Ci5odnItd29iYmxlLXRvcDpob3ZlciwgLmh2ci13b2JibGUtdG9wOmZvY3VzLCAuaHZyLXdvYmJsZS10b3A6YWN0aXZlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLXRvcDsKICBhbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS10b3A7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKfQoKLyogV29iYmxlIEJvdHRvbSAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXdvYmJsZS1ib3R0b20gewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTJkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7CiAgfQogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygxMGRlZyk7CiAgfQogIDQ5Ljk1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtNmRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoLTZkZWcpOwogIH0KICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICB9CiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0yZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygtMmRlZyk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoMCk7CiAgICB0cmFuc2Zvcm06IHNrZXcoMCk7CiAgfQp9CkBrZXlmcmFtZXMgaHZyLXdvYmJsZS1ib3R0b20gewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTJkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7CiAgfQogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygxMGRlZyk7CiAgfQogIDQ5Ljk1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtNmRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoLTZkZWcpOwogIH0KICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICB9CiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0yZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygtMmRlZyk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoMCk7CiAgICB0cmFuc2Zvcm06IHNrZXcoMCk7CiAgfQp9Ci5odnItd29iYmxlLWJvdHRvbSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7CiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwOwp9Ci5odnItd29iYmxlLWJvdHRvbTpob3ZlciwgLmh2ci13b2JibGUtYm90dG9tOmZvY3VzLCAuaHZyLXdvYmJsZS1ib3R0b206YWN0aXZlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLWJvdHRvbTsKICBhbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS1ib3R0b207CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKfQoKLyogV29iYmxlIFNrZXcgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci13b2JibGUtc2tldyB7CiAgMTYuNjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoLTEyZGVnKTsKICB9CiAgMzMuMyUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoMTBkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsKICB9CiAgNDkuOTUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC02ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygtNmRlZyk7CiAgfQogIDY2LjYlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDRkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KDRkZWcpOwogIH0KICA4My4yNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoLTJkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KC0yZGVnKTsKICB9CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygwKTsKICAgIHRyYW5zZm9ybTogc2tldygwKTsKICB9Cn0KQGtleWZyYW1lcyBodnItd29iYmxlLXNrZXcgewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTJkZWcpOwogICAgdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7CiAgfQogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygxMGRlZyk7CiAgfQogIDQ5Ljk1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtNmRlZyk7CiAgICB0cmFuc2Zvcm06IHNrZXcoLTZkZWcpOwogIH0KICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldyg0ZGVnKTsKICB9CiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0yZGVnKTsKICAgIHRyYW5zZm9ybTogc2tldygtMmRlZyk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoMCk7CiAgICB0cmFuc2Zvcm06IHNrZXcoMCk7CiAgfQp9Ci5odnItd29iYmxlLXNrZXcgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwp9Ci5odnItd29iYmxlLXNrZXc6aG92ZXIsIC5odnItd29iYmxlLXNrZXc6Zm9jdXMsIC5odnItd29iYmxlLXNrZXc6YWN0aXZlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLXNrZXc7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci13b2JibGUtc2tldzsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwp9CgovKiBCdXp6ICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItYnV6eiB7CiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogIH0KICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICB9Cn0KQGtleWZyYW1lcyBodnItYnV6eiB7CiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogIH0KICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICB9Cn0KLmh2ci1idXp6IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKfQouaHZyLWJ1eno6aG92ZXIsIC5odnItYnV6ejpmb2N1cywgLmh2ci1idXp6OmFjdGl2ZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWJ1eno7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1idXp6OwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjE1czsKICBhbmltYXRpb24tZHVyYXRpb246IDAuMTVzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOwp9CgovKiBCdXp6IE91dCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWJ1enotb3V0IHsKICAxMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgfQogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgfQogIDMwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICB9CiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICB9CiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpOwogIH0KICA2MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpOwogIH0KICA3MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7CiAgfQogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7CiAgfQogIDkwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpIHJvdGF0ZSgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpIHJvdGF0ZSgwKTsKICB9CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KSByb3RhdGUoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTFweCkgcm90YXRlKDApOwogIH0KfQpAa2V5ZnJhbWVzIGh2ci1idXp6LW91dCB7CiAgMTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogIH0KICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogIH0KICAzMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgfQogIDQwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgfQogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICB9CiAgNjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTsKICB9CiAgNzAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpOwogIH0KICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpOwogIH0KICA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KSByb3RhdGUoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KSByb3RhdGUoMCk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTFweCkgcm90YXRlKDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcHgpIHJvdGF0ZSgwKTsKICB9Cn0KLmh2ci1idXp6LW91dCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7Cn0KLmh2ci1idXp6LW91dDpob3ZlciwgLmh2ci1idXp6LW91dDpmb2N1cywgLmh2ci1idXp6LW91dDphY3RpdmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1idXp6LW91dDsKICBhbmltYXRpb24tbmFtZTogaHZyLWJ1enotb3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1czsKICBhbmltYXRpb24tZHVyYXRpb246IDAuNzVzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKfQoKLyogRm9yd2FyZCAqLwouaHZyLWZvcndhcmQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKfQouaHZyLWZvcndhcmQ6aG92ZXIsIC5odnItZm9yd2FyZDpmb2N1cywgLmh2ci1mb3J3YXJkOmFjdGl2ZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTsKfQoKLyogQmFja3dhcmQgKi8KLmh2ci1iYWNrd2FyZCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItYmFja3dhcmQ6aG92ZXIsIC5odnItYmFja3dhcmQ6Zm9jdXMsIC5odnItYmFja3dhcmQ6YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtOHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLThweCk7Cn0KCi8qIEJBQ0tHUk9VTkQgVFJBTlNJVElPTlMgKi8KLyogRmFkZSAqLwouaHZyLWZhZGUgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIG92ZXJmbG93OiBoaWRkZW47CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvcjsKfQouaHZyLWZhZGU6aG92ZXIsIC5odnItZmFkZTpmb2N1cywgLmh2ci1mYWRlOmFjdGl2ZSB7CiAgYmFja2dyb3VuZC1jb2xvcjogIzIwOThEMTsKICBjb2xvcjogd2hpdGU7Cn0KCi8qIEJhY2sgUHVsc2UgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1iYWNrLXB1bHNlIHsKICA1MCUgewogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMiwgMTUyLCAyMDksIDAuNzUpOwogIH0KfQpAa2V5ZnJhbWVzIGh2ci1iYWNrLXB1bHNlIHsKICA1MCUgewogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMiwgMTUyLCAyMDksIDAuNzUpOwogIH0KfQouaHZyLWJhY2stcHVsc2UgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIG92ZXJmbG93OiBoaWRkZW47CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvcjsKfQouaHZyLWJhY2stcHVsc2U6aG92ZXIsIC5odnItYmFjay1wdWxzZTpmb2N1cywgLmh2ci1iYWNrLXB1bHNlOmFjdGl2ZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWJhY2stcHVsc2U7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1iYWNrLXB1bHNlOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICBhbmltYXRpb24tZHVyYXRpb246IDFzOwogIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjVzOwogIGFuaW1hdGlvbi1kZWxheTogMC41czsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjA5OEQxOwogIGJhY2tncm91bmQtY29sb3I6ICMyMDk4ZDE7CiAgY29sb3I6IHdoaXRlOwp9CgovKiBTd2VlcCBUbyBSaWdodCAqLwouaHZyLXN3ZWVwLXRvLXJpZ2h0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLXN3ZWVwLXRvLXJpZ2h0OmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OEQxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMCk7CiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJTsKICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItc3dlZXAtdG8tcmlnaHQ6aG92ZXIsIC5odnItc3dlZXAtdG8tcmlnaHQ6Zm9jdXMsIC5odnItc3dlZXAtdG8tcmlnaHQ6YWN0aXZlIHsKICBjb2xvcjogd2hpdGU7Cn0KLmh2ci1zd2VlcC10by1yaWdodDpob3ZlcjpiZWZvcmUsIC5odnItc3dlZXAtdG8tcmlnaHQ6Zm9jdXM6YmVmb3JlLCAuaHZyLXN3ZWVwLXRvLXJpZ2h0OmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7CiAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7Cn0KCi8qIFN3ZWVwIFRvIExlZnQgKi8KLmh2ci1zd2VlcC10by1sZWZ0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLXN3ZWVwLXRvLWxlZnQ6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgcmlnaHQ6IDA7CiAgYm90dG9tOiAwOwogIGJhY2tncm91bmQ6ICMyMDk4RDE7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwKTsKICB0cmFuc2Zvcm06IHNjYWxlWCgwKTsKICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlOwogIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1zd2VlcC10by1sZWZ0OmhvdmVyLCAuaHZyLXN3ZWVwLXRvLWxlZnQ6Zm9jdXMsIC5odnItc3dlZXAtdG8tbGVmdDphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLXN3ZWVwLXRvLWxlZnQ6aG92ZXI6YmVmb3JlLCAuaHZyLXN3ZWVwLXRvLWxlZnQ6Zm9jdXM6YmVmb3JlLCAuaHZyLXN3ZWVwLXRvLWxlZnQ6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTsKICB0cmFuc2Zvcm06IHNjYWxlWCgxKTsKfQoKLyogU3dlZXAgVG8gQm90dG9tICovCi5odnItc3dlZXAtdG8tYm90dG9tIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLXN3ZWVwLXRvLWJvdHRvbTpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICB0b3A6IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBib3R0b206IDA7CiAgYmFja2dyb3VuZDogIzIwOThEMTsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDApOwogIHRyYW5zZm9ybTogc2NhbGVZKDApOwogIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDA7CiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDA7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLXN3ZWVwLXRvLWJvdHRvbTpob3ZlciwgLmh2ci1zd2VlcC10by1ib3R0b206Zm9jdXMsIC5odnItc3dlZXAtdG8tYm90dG9tOmFjdGl2ZSB7CiAgY29sb3I6IHdoaXRlOwp9Ci5odnItc3dlZXAtdG8tYm90dG9tOmhvdmVyOmJlZm9yZSwgLmh2ci1zd2VlcC10by1ib3R0b206Zm9jdXM6YmVmb3JlLCAuaHZyLXN3ZWVwLXRvLWJvdHRvbTphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEpOwogIHRyYW5zZm9ybTogc2NhbGVZKDEpOwp9CgovKiBTd2VlcCBUbyBUb3AgKi8KLmh2ci1zd2VlcC10by10b3AgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItc3dlZXAtdG8tdG9wOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OEQxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7CiAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTsKICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItc3dlZXAtdG8tdG9wOmhvdmVyLCAuaHZyLXN3ZWVwLXRvLXRvcDpmb2N1cywgLmh2ci1zd2VlcC10by10b3A6YWN0aXZlIHsKICBjb2xvcjogd2hpdGU7Cn0KLmh2ci1zd2VlcC10by10b3A6aG92ZXI6YmVmb3JlLCAuaHZyLXN3ZWVwLXRvLXRvcDpmb2N1czpiZWZvcmUsIC5odnItc3dlZXAtdG8tdG9wOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7CiAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7Cn0KCi8qIEJvdW5jZSBUbyBSaWdodCAqLwouaHZyLWJvdW5jZS10by1yaWdodCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7Cn0KLmh2ci1ib3VuY2UtdG8tcmlnaHQ6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgcmlnaHQ6IDA7CiAgYm90dG9tOiAwOwogIGJhY2tncm91bmQ6ICMyMDk4RDE7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwKTsKICB0cmFuc2Zvcm06IHNjYWxlWCgwKTsKICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgNTAlOwogIHRyYW5zZm9ybS1vcmlnaW46IDAgNTAlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1ib3VuY2UtdG8tcmlnaHQ6aG92ZXIsIC5odnItYm91bmNlLXRvLXJpZ2h0OmZvY3VzLCAuaHZyLWJvdW5jZS10by1yaWdodDphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLWJvdW5jZS10by1yaWdodDpob3ZlcjpiZWZvcmUsIC5odnItYm91bmNlLXRvLXJpZ2h0OmZvY3VzOmJlZm9yZSwgLmh2ci1ib3VuY2UtdG8tcmlnaHQ6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTsKICB0cmFuc2Zvcm06IHNjYWxlWCgxKTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41MiwgMS42NCwgMC4zNywgMC42Nik7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUyLCAxLjY0LCAwLjM3LCAwLjY2KTsKfQoKLyogQm91bmNlIFRvIExlZnQgKi8KLmh2ci1ib3VuY2UtdG8tbGVmdCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7Cn0KLmh2ci1ib3VuY2UtdG8tbGVmdDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICB0b3A6IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBib3R0b206IDA7CiAgYmFja2dyb3VuZDogIzIwOThEMTsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDApOwogIHRyYW5zZm9ybTogc2NhbGVYKDApOwogIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSA1MCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSA1MCU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWJvdW5jZS10by1sZWZ0OmhvdmVyLCAuaHZyLWJvdW5jZS10by1sZWZ0OmZvY3VzLCAuaHZyLWJvdW5jZS10by1sZWZ0OmFjdGl2ZSB7CiAgY29sb3I6IHdoaXRlOwp9Ci5odnItYm91bmNlLXRvLWxlZnQ6aG92ZXI6YmVmb3JlLCAuaHZyLWJvdW5jZS10by1sZWZ0OmZvY3VzOmJlZm9yZSwgLmh2ci1ib3VuY2UtdG8tbGVmdDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpOwogIHRyYW5zZm9ybTogc2NhbGVYKDEpOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUyLCAxLjY0LCAwLjM3LCAwLjY2KTsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTIsIDEuNjQsIDAuMzcsIDAuNjYpOwp9CgovKiBCb3VuY2UgVG8gQm90dG9tICovCi5odnItYm91bmNlLXRvLWJvdHRvbSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7Cn0KLmh2ci1ib3VuY2UtdG8tYm90dG9tOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OEQxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7CiAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDsKICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItYm91bmNlLXRvLWJvdHRvbTpob3ZlciwgLmh2ci1ib3VuY2UtdG8tYm90dG9tOmZvY3VzLCAuaHZyLWJvdW5jZS10by1ib3R0b206YWN0aXZlIHsKICBjb2xvcjogd2hpdGU7Cn0KLmh2ci1ib3VuY2UtdG8tYm90dG9tOmhvdmVyOmJlZm9yZSwgLmh2ci1ib3VuY2UtdG8tYm90dG9tOmZvY3VzOmJlZm9yZSwgLmh2ci1ib3VuY2UtdG8tYm90dG9tOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7CiAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTIsIDEuNjQsIDAuMzcsIDAuNjYpOwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41MiwgMS42NCwgMC4zNywgMC42Nik7Cn0KCi8qIEJvdW5jZSBUbyBUb3AgKi8KLmh2ci1ib3VuY2UtdG8tdG9wIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsKfQouaHZyLWJvdW5jZS10by10b3A6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgcmlnaHQ6IDA7CiAgYm90dG9tOiAwOwogIGJhY2tncm91bmQ6ICMyMDk4RDE7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgwKTsKICB0cmFuc2Zvcm06IHNjYWxlWSgwKTsKICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlOwogIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1ib3VuY2UtdG8tdG9wOmhvdmVyLCAuaHZyLWJvdW5jZS10by10b3A6Zm9jdXMsIC5odnItYm91bmNlLXRvLXRvcDphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLWJvdW5jZS10by10b3A6aG92ZXI6YmVmb3JlLCAuaHZyLWJvdW5jZS10by10b3A6Zm9jdXM6YmVmb3JlLCAuaHZyLWJvdW5jZS10by10b3A6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTsKICB0cmFuc2Zvcm06IHNjYWxlWSgxKTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41MiwgMS42NCwgMC4zNywgMC42Nik7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUyLCAxLjY0LCAwLjM3LCAwLjY2KTsKfQoKLyogUmFkaWFsIE91dCAqLwouaHZyLXJhZGlhbC1vdXQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBvdmVyZmxvdzogaGlkZGVuOwogIGJhY2tncm91bmQ6ICNlMWUxZTE7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLXJhZGlhbC1vdXQ6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgcmlnaHQ6IDA7CiAgYm90dG9tOiAwOwogIGJhY2tncm91bmQ6ICMyMDk4RDE7CiAgYm9yZGVyLXJhZGl1czogMTAwJTsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7CiAgdHJhbnNmb3JtOiBzY2FsZSgwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItcmFkaWFsLW91dDpob3ZlciwgLmh2ci1yYWRpYWwtb3V0OmZvY3VzLCAuaHZyLXJhZGlhbC1vdXQ6YWN0aXZlIHsKICBjb2xvcjogd2hpdGU7Cn0KLmh2ci1yYWRpYWwtb3V0OmhvdmVyOmJlZm9yZSwgLmh2ci1yYWRpYWwtb3V0OmZvY3VzOmJlZm9yZSwgLmh2ci1yYWRpYWwtb3V0OmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgyKTsKICB0cmFuc2Zvcm06IHNjYWxlKDIpOwp9CgovKiBSYWRpYWwgSW4gKi8KLmh2ci1yYWRpYWwtaW4gewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBvdmVyZmxvdzogaGlkZGVuOwogIGJhY2tncm91bmQ6ICMyMDk4RDE7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLXJhZGlhbC1pbjpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICB0b3A6IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBib3R0b206IDA7CiAgYmFja2dyb3VuZDogI2UxZTFlMTsKICBib3JkZXItcmFkaXVzOiAxMDAlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgyKTsKICB0cmFuc2Zvcm06IHNjYWxlKDIpOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1yYWRpYWwtaW46aG92ZXIsIC5odnItcmFkaWFsLWluOmZvY3VzLCAuaHZyLXJhZGlhbC1pbjphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLXJhZGlhbC1pbjpob3ZlcjpiZWZvcmUsIC5odnItcmFkaWFsLWluOmZvY3VzOmJlZm9yZSwgLmh2ci1yYWRpYWwtaW46YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApOwogIHRyYW5zZm9ybTogc2NhbGUoMCk7Cn0KCi8qIFJlY3RhbmdsZSBJbiAqLwouaHZyLXJlY3RhbmdsZS1pbiB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGJhY2tncm91bmQ6ICMyMDk4RDE7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLXJlY3RhbmdsZS1pbjpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICB0b3A6IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBib3R0b206IDA7CiAgYmFja2dyb3VuZDogI2UxZTFlMTsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgdHJhbnNmb3JtOiBzY2FsZSgxKTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItcmVjdGFuZ2xlLWluOmhvdmVyLCAuaHZyLXJlY3RhbmdsZS1pbjpmb2N1cywgLmh2ci1yZWN0YW5nbGUtaW46YWN0aXZlIHsKICBjb2xvcjogd2hpdGU7Cn0KLmh2ci1yZWN0YW5nbGUtaW46aG92ZXI6YmVmb3JlLCAuaHZyLXJlY3RhbmdsZS1pbjpmb2N1czpiZWZvcmUsIC5odnItcmVjdGFuZ2xlLWluOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTsKICB0cmFuc2Zvcm06IHNjYWxlKDApOwp9CgovKiBSZWN0YW5nbGUgT3V0ICovCi5odnItcmVjdGFuZ2xlLW91dCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGJhY2tncm91bmQ6ICNlMWUxZTE7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLXJlY3RhbmdsZS1vdXQ6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgcmlnaHQ6IDA7CiAgYm90dG9tOiAwOwogIGJhY2tncm91bmQ6ICMyMDk4RDE7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApOwogIHRyYW5zZm9ybTogc2NhbGUoMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLXJlY3RhbmdsZS1vdXQ6aG92ZXIsIC5odnItcmVjdGFuZ2xlLW91dDpmb2N1cywgLmh2ci1yZWN0YW5nbGUtb3V0OmFjdGl2ZSB7CiAgY29sb3I6IHdoaXRlOwp9Ci5odnItcmVjdGFuZ2xlLW91dDpob3ZlcjpiZWZvcmUsIC5odnItcmVjdGFuZ2xlLW91dDpmb2N1czpiZWZvcmUsIC5odnItcmVjdGFuZ2xlLW91dDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgdHJhbnNmb3JtOiBzY2FsZSgxKTsKfQoKLyogU2h1dHRlciBJbiBIb3Jpem9udGFsICovCi5odnItc2h1dHRlci1pbi1ob3Jpem9udGFsIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgYmFja2dyb3VuZDogIzIwOThEMTsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItc2h1dHRlci1pbi1ob3Jpem9udGFsOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBib3R0b206IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBiYWNrZ3JvdW5kOiAjZTFlMWUxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7CiAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1zaHV0dGVyLWluLWhvcml6b250YWw6aG92ZXIsIC5odnItc2h1dHRlci1pbi1ob3Jpem9udGFsOmZvY3VzLCAuaHZyLXNodXR0ZXItaW4taG9yaXpvbnRhbDphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLXNodXR0ZXItaW4taG9yaXpvbnRhbDpob3ZlcjpiZWZvcmUsIC5odnItc2h1dHRlci1pbi1ob3Jpem9udGFsOmZvY3VzOmJlZm9yZSwgLmh2ci1zaHV0dGVyLWluLWhvcml6b250YWw6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwKTsKICB0cmFuc2Zvcm06IHNjYWxlWCgwKTsKfQoKLyogU2h1dHRlciBPdXQgSG9yaXpvbnRhbCAqLwouaHZyLXNodXR0ZXItb3V0LWhvcml6b250YWwgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBiYWNrZ3JvdW5kOiAjZTFlMWUxOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1zaHV0dGVyLW91dC1ob3Jpem9udGFsOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBib3R0b206IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OEQxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMCk7CiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1zaHV0dGVyLW91dC1ob3Jpem9udGFsOmhvdmVyLCAuaHZyLXNodXR0ZXItb3V0LWhvcml6b250YWw6Zm9jdXMsIC5odnItc2h1dHRlci1vdXQtaG9yaXpvbnRhbDphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLXNodXR0ZXItb3V0LWhvcml6b250YWw6aG92ZXI6YmVmb3JlLCAuaHZyLXNodXR0ZXItb3V0LWhvcml6b250YWw6Zm9jdXM6YmVmb3JlLCAuaHZyLXNodXR0ZXItb3V0LWhvcml6b250YWw6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTsKICB0cmFuc2Zvcm06IHNjYWxlWCgxKTsKfQoKLyogU2h1dHRlciBJbiBWZXJ0aWNhbCAqLwouaHZyLXNodXR0ZXItaW4tdmVydGljYWwgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBiYWNrZ3JvdW5kOiAjMjA5OEQxOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1zaHV0dGVyLWluLXZlcnRpY2FsOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBib3R0b206IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBiYWNrZ3JvdW5kOiAjZTFlMWUxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7CiAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1zaHV0dGVyLWluLXZlcnRpY2FsOmhvdmVyLCAuaHZyLXNodXR0ZXItaW4tdmVydGljYWw6Zm9jdXMsIC5odnItc2h1dHRlci1pbi12ZXJ0aWNhbDphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLXNodXR0ZXItaW4tdmVydGljYWw6aG92ZXI6YmVmb3JlLCAuaHZyLXNodXR0ZXItaW4tdmVydGljYWw6Zm9jdXM6YmVmb3JlLCAuaHZyLXNodXR0ZXItaW4tdmVydGljYWw6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgwKTsKICB0cmFuc2Zvcm06IHNjYWxlWSgwKTsKfQoKLyogU2h1dHRlciBPdXQgVmVydGljYWwgKi8KLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGJhY2tncm91bmQ6ICNlMWUxZTE7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLXNodXR0ZXItb3V0LXZlcnRpY2FsOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIHRvcDogMDsKICBib3R0b206IDA7CiAgbGVmdDogMDsKICByaWdodDogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OEQxOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7CiAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbDpob3ZlciwgLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbDpmb2N1cywgLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbDphY3RpdmUgewogIGNvbG9yOiB3aGl0ZTsKfQouaHZyLXNodXR0ZXItb3V0LXZlcnRpY2FsOmhvdmVyOmJlZm9yZSwgLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbDpmb2N1czpiZWZvcmUsIC5odnItc2h1dHRlci1vdXQtdmVydGljYWw6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTsKICB0cmFuc2Zvcm06IHNjYWxlWSgxKTsKfQoKLyogQk9SREVSIFRSQU5TSVRJT05TICovCi8qIEJvcmRlciBGYWRlICovCi5odnItYm9yZGVyLWZhZGUgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdzsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3gtc2hhZG93OwogIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAjZTFlMWUxLCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLyogSGFjayB0byBpbXByb3ZlIGFsaWFzaW5nIG9uIG1vYmlsZS90YWJsZXQgZGV2aWNlcyAqLwp9Ci5odnItYm9yZGVyLWZhZGU6aG92ZXIsIC5odnItYm9yZGVyLWZhZGU6Zm9jdXMsIC5odnItYm9yZGVyLWZhZGU6YWN0aXZlIHsKICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggIzIwOThEMSwgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC8qIEhhY2sgdG8gaW1wcm92ZSBhbGlhc2luZyBvbiBtb2JpbGUvdGFibGV0IGRldmljZXMgKi8KfQoKLyogSG9sbG93ICovCi5odnItaG9sbG93IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQ7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZDsKICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggI2UxZTFlMSwgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC8qIEhhY2sgdG8gaW1wcm92ZSBhbGlhc2luZyBvbiBtb2JpbGUvdGFibGV0IGRldmljZXMgKi8KfQouaHZyLWhvbGxvdzpob3ZlciwgLmh2ci1ob2xsb3c6Zm9jdXMsIC5odnItaG9sbG93OmFjdGl2ZSB7CiAgYmFja2dyb3VuZDogbm9uZTsKfQoKLyogVHJpbSAqLwouaHZyLXRyaW0gewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQouaHZyLXRyaW06YmVmb3JlIHsKICBjb250ZW50OiAnJzsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgYm9yZGVyOiB3aGl0ZSBzb2xpZCA0cHg7CiAgdG9wOiA0cHg7CiAgbGVmdDogNHB4OwogIHJpZ2h0OiA0cHg7CiAgYm90dG9tOiA0cHg7CiAgb3BhY2l0eTogMDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsKfQouaHZyLXRyaW06aG92ZXI6YmVmb3JlLCAuaHZyLXRyaW06Zm9jdXM6YmVmb3JlLCAuaHZyLXRyaW06YWN0aXZlOmJlZm9yZSB7CiAgb3BhY2l0eTogMTsKfQoKLyogUmlwcGxlIE91dCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXJpcHBsZS1vdXQgewogIDEwMCUgewogICAgdG9wOiAtMTJweDsKICAgIHJpZ2h0OiAtMTJweDsKICAgIGJvdHRvbTogLTEycHg7CiAgICBsZWZ0OiAtMTJweDsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CkBrZXlmcmFtZXMgaHZyLXJpcHBsZS1vdXQgewogIDEwMCUgewogICAgdG9wOiAtMTJweDsKICAgIHJpZ2h0OiAtMTJweDsKICAgIGJvdHRvbTogLTEycHg7CiAgICBsZWZ0OiAtMTJweDsKICAgIG9wYWNpdHk6IDA7CiAgfQp9Ci5odnItcmlwcGxlLW91dCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5odnItcmlwcGxlLW91dDpiZWZvcmUgewogIGNvbnRlbnQ6ICcnOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBib3JkZXI6ICNlMWUxZTEgc29saWQgNnB4OwogIHRvcDogMDsKICByaWdodDogMDsKICBib3R0b206IDA7CiAgbGVmdDogMDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKfQouaHZyLXJpcHBsZS1vdXQ6aG92ZXI6YmVmb3JlLCAuaHZyLXJpcHBsZS1vdXQ6Zm9jdXM6YmVmb3JlLCAuaHZyLXJpcHBsZS1vdXQ6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLXJpcHBsZS1vdXQ7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1yaXBwbGUtb3V0Owp9CgovKiBSaXBwbGUgSW4gKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1yaXBwbGUtaW4gewogIDEwMCUgewogICAgdG9wOiAwOwogICAgcmlnaHQ6IDA7CiAgICBib3R0b206IDA7CiAgICBsZWZ0OiAwOwogICAgb3BhY2l0eTogMTsKICB9Cn0KQGtleWZyYW1lcyBodnItcmlwcGxlLWluIHsKICAxMDAlIHsKICAgIHRvcDogMDsKICAgIHJpZ2h0OiAwOwogICAgYm90dG9tOiAwOwogICAgbGVmdDogMDsKICAgIG9wYWNpdHk6IDE7CiAgfQp9Ci5odnItcmlwcGxlLWluIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmh2ci1yaXBwbGUtaW46YmVmb3JlIHsKICBjb250ZW50OiAnJzsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgYm9yZGVyOiAjZTFlMWUxIHNvbGlkIDRweDsKICB0b3A6IC0xMnB4OwogIHJpZ2h0OiAtMTJweDsKICBib3R0b206IC0xMnB4OwogIGxlZnQ6IC0xMnB4OwogIG9wYWNpdHk6IDA7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7Cn0KLmh2ci1yaXBwbGUtaW46aG92ZXI6YmVmb3JlLCAuaHZyLXJpcHBsZS1pbjpmb2N1czpiZWZvcmUsIC5odnItcmlwcGxlLWluOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1yaXBwbGUtaW47CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1yaXBwbGUtaW47Cn0KCi8qIE91dGxpbmUgT3V0ICovCi5odnItb3V0bGluZS1vdXQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQouaHZyLW91dGxpbmUtb3V0OmJlZm9yZSB7CiAgY29udGVudDogJyc7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGJvcmRlcjogI2UxZTFlMSBzb2xpZCA0cHg7CiAgdG9wOiAwOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBsZWZ0OiAwOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdG9wLCByaWdodCwgYm90dG9tLCBsZWZ0OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdDsKfQouaHZyLW91dGxpbmUtb3V0OmhvdmVyOmJlZm9yZSwgLmh2ci1vdXRsaW5lLW91dDpmb2N1czpiZWZvcmUsIC5odnItb3V0bGluZS1vdXQ6YWN0aXZlOmJlZm9yZSB7CiAgdG9wOiAtOHB4OwogIHJpZ2h0OiAtOHB4OwogIGJvdHRvbTogLThweDsKICBsZWZ0OiAtOHB4Owp9CgovKiBPdXRsaW5lIEluICovCi5odnItb3V0bGluZS1pbiB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5odnItb3V0bGluZS1pbjpiZWZvcmUgewogIHBvaW50ZXItZXZlbnRzOiBub25lOwogIGNvbnRlbnQ6ICcnOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBib3JkZXI6ICNlMWUxZTEgc29saWQgNHB4OwogIHRvcDogLTE2cHg7CiAgcmlnaHQ6IC0xNnB4OwogIGJvdHRvbTogLTE2cHg7CiAgbGVmdDogLTE2cHg7CiAgb3BhY2l0eTogMDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdDsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQ7Cn0KLmh2ci1vdXRsaW5lLWluOmhvdmVyOmJlZm9yZSwgLmh2ci1vdXRsaW5lLWluOmZvY3VzOmJlZm9yZSwgLmh2ci1vdXRsaW5lLWluOmFjdGl2ZTpiZWZvcmUgewogIHRvcDogLThweDsKICByaWdodDogLThweDsKICBib3R0b206IC04cHg7CiAgbGVmdDogLThweDsKICBvcGFjaXR5OiAxOwp9CgovKiBSb3VuZCBDb3JuZXJzICovCi5odnItcm91bmQtY29ybmVycyB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBib3JkZXItcmFkaXVzOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvcmRlci1yYWRpdXM7Cn0KLmh2ci1yb3VuZC1jb3JuZXJzOmhvdmVyLCAuaHZyLXJvdW5kLWNvcm5lcnM6Zm9jdXMsIC5odnItcm91bmQtY29ybmVyczphY3RpdmUgewogIGJvcmRlci1yYWRpdXM6IDFlbTsKfQoKLyogVW5kZXJsaW5lIEZyb20gTGVmdCAqLwouaHZyLXVuZGVybGluZS1mcm9tLWxlZnQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBvdmVyZmxvdzogaGlkZGVuOwp9Ci5odnItdW5kZXJsaW5lLWZyb20tbGVmdDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBsZWZ0OiAwOwogIHJpZ2h0OiAxMDAlOwogIGJvdHRvbTogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OEQxOwogIGhlaWdodDogNHB4OwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogcmlnaHQ7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogcmlnaHQ7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItdW5kZXJsaW5lLWZyb20tbGVmdDpob3ZlcjpiZWZvcmUsIC5odnItdW5kZXJsaW5lLWZyb20tbGVmdDpmb2N1czpiZWZvcmUsIC5odnItdW5kZXJsaW5lLWZyb20tbGVmdDphY3RpdmU6YmVmb3JlIHsKICByaWdodDogMDsKfQoKLyogVW5kZXJsaW5lIEZyb20gQ2VudGVyICovCi5odnItdW5kZXJsaW5lLWZyb20tY2VudGVyIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKfQouaHZyLXVuZGVybGluZS1mcm9tLWNlbnRlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBsZWZ0OiA1MSU7CiAgcmlnaHQ6IDUxJTsKICBib3R0b206IDA7CiAgYmFja2dyb3VuZDogIzIwOThEMTsKICBoZWlnaHQ6IDRweDsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQsIHJpZ2h0OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQsIHJpZ2h0OwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLXVuZGVybGluZS1mcm9tLWNlbnRlcjpob3ZlcjpiZWZvcmUsIC5odnItdW5kZXJsaW5lLWZyb20tY2VudGVyOmZvY3VzOmJlZm9yZSwgLmh2ci11bmRlcmxpbmUtZnJvbS1jZW50ZXI6YWN0aXZlOmJlZm9yZSB7CiAgbGVmdDogMDsKICByaWdodDogMDsKfQoKLyogVW5kZXJsaW5lIEZyb20gUmlnaHQgKi8KLmh2ci11bmRlcmxpbmUtZnJvbS1yaWdodCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmh2ci11bmRlcmxpbmUtZnJvbS1yaWdodDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBsZWZ0OiAxMDAlOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OEQxOwogIGhlaWdodDogNHB4OwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogbGVmdDsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBsZWZ0OwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLXVuZGVybGluZS1mcm9tLXJpZ2h0OmhvdmVyOmJlZm9yZSwgLmh2ci11bmRlcmxpbmUtZnJvbS1yaWdodDpmb2N1czpiZWZvcmUsIC5odnItdW5kZXJsaW5lLWZyb20tcmlnaHQ6YWN0aXZlOmJlZm9yZSB7CiAgbGVmdDogMDsKfQoKLyogT3ZlcmxpbmUgRnJvbSBMZWZ0ICovCi5odnItb3ZlcmxpbmUtZnJvbS1sZWZ0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKfQouaHZyLW92ZXJsaW5lLWZyb20tbGVmdDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBsZWZ0OiAwOwogIHJpZ2h0OiAxMDAlOwogIHRvcDogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OEQxOwogIGhlaWdodDogNHB4OwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogcmlnaHQ7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogcmlnaHQ7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItb3ZlcmxpbmUtZnJvbS1sZWZ0OmhvdmVyOmJlZm9yZSwgLmh2ci1vdmVybGluZS1mcm9tLWxlZnQ6Zm9jdXM6YmVmb3JlLCAuaHZyLW92ZXJsaW5lLWZyb20tbGVmdDphY3RpdmU6YmVmb3JlIHsKICByaWdodDogMDsKfQoKLyogT3ZlcmxpbmUgRnJvbSBDZW50ZXIgKi8KLmh2ci1vdmVybGluZS1mcm9tLWNlbnRlciB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmh2ci1vdmVybGluZS1mcm9tLWNlbnRlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBsZWZ0OiA1MSU7CiAgcmlnaHQ6IDUxJTsKICB0b3A6IDA7CiAgYmFja2dyb3VuZDogIzIwOThEMTsKICBoZWlnaHQ6IDRweDsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQsIHJpZ2h0OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQsIHJpZ2h0OwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLW92ZXJsaW5lLWZyb20tY2VudGVyOmhvdmVyOmJlZm9yZSwgLmh2ci1vdmVybGluZS1mcm9tLWNlbnRlcjpmb2N1czpiZWZvcmUsIC5odnItb3ZlcmxpbmUtZnJvbS1jZW50ZXI6YWN0aXZlOmJlZm9yZSB7CiAgbGVmdDogMDsKICByaWdodDogMDsKfQoKLyogT3ZlcmxpbmUgRnJvbSBSaWdodCAqLwouaHZyLW92ZXJsaW5lLWZyb20tcmlnaHQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBvdmVyZmxvdzogaGlkZGVuOwp9Ci5odnItb3ZlcmxpbmUtZnJvbS1yaWdodDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBsZWZ0OiAxMDAlOwogIHJpZ2h0OiAwOwogIHRvcDogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OEQxOwogIGhlaWdodDogNHB4OwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogbGVmdDsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBsZWZ0OwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLW92ZXJsaW5lLWZyb20tcmlnaHQ6aG92ZXI6YmVmb3JlLCAuaHZyLW92ZXJsaW5lLWZyb20tcmlnaHQ6Zm9jdXM6YmVmb3JlLCAuaHZyLW92ZXJsaW5lLWZyb20tcmlnaHQ6YWN0aXZlOmJlZm9yZSB7CiAgbGVmdDogMDsKfQoKLyogUmV2ZWFsICovCi5odnItcmV2ZWFsIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKfQouaHZyLXJldmVhbDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIHRvcDogMDsKICBib3R0b206IDA7CiAgYm9yZGVyLWNvbG9yOiAjMjA5OEQxOwogIGJvcmRlci1zdHlsZTogc29saWQ7CiAgYm9yZGVyLXdpZHRoOiAwOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm9yZGVyLXdpZHRoOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvcmRlci13aWR0aDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1yZXZlYWw6aG92ZXI6YmVmb3JlLCAuaHZyLXJldmVhbDpmb2N1czpiZWZvcmUsIC5odnItcmV2ZWFsOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICBib3JkZXItd2lkdGg6IDRweDsKfQoKLyogVW5kZXJsaW5lIFJldmVhbCAqLwouaHZyLXVuZGVybGluZS1yZXZlYWwgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBvdmVyZmxvdzogaGlkZGVuOwp9Ci5odnItdW5kZXJsaW5lLXJldmVhbDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBiYWNrZ3JvdW5kOiAjMjA5OEQxOwogIGhlaWdodDogNHB4OwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLXVuZGVybGluZS1yZXZlYWw6aG92ZXI6YmVmb3JlLCAuaHZyLXVuZGVybGluZS1yZXZlYWw6Zm9jdXM6YmVmb3JlLCAuaHZyLXVuZGVybGluZS1yZXZlYWw6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwp9CgovKiBPdmVybGluZSBSZXZlYWwgKi8KLmh2ci1vdmVybGluZS1yZXZlYWwgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBvdmVyZmxvdzogaGlkZGVuOwp9Ci5odnItb3ZlcmxpbmUtcmV2ZWFsOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIGxlZnQ6IDA7CiAgcmlnaHQ6IDA7CiAgdG9wOiAwOwogIGJhY2tncm91bmQ6ICMyMDk4RDE7CiAgaGVpZ2h0OiA0cHg7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1vdmVybGluZS1yZXZlYWw6aG92ZXI6YmVmb3JlLCAuaHZyLW92ZXJsaW5lLXJldmVhbDpmb2N1czpiZWZvcmUsIC5odnItb3ZlcmxpbmUtcmV2ZWFsOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKfQoKLyogU0hBRE9XL0dMT1cgVFJBTlNJVElPTlMgKi8KLyogR2xvdyAqLwouaHZyLWdsb3cgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdzsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3gtc2hhZG93Owp9Ci5odnItZ2xvdzpob3ZlciwgLmh2ci1nbG93OmZvY3VzLCAuaHZyLWdsb3c6YWN0aXZlIHsKICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTsKfQoKLyogU2hhZG93ICovCi5odnItc2hhZG93IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJveC1zaGFkb3c7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdzsKfQouaHZyLXNoYWRvdzpob3ZlciwgLmh2ci1zaGFkb3c6Zm9jdXMsIC5odnItc2hhZG93OmFjdGl2ZSB7CiAgYm94LXNoYWRvdzogMCAxMHB4IDEwcHggLTEwcHggcmdiYSgwLCAwLCAwLCAwLjUpOwp9CgovKiBHcm93IFNoYWRvdyAqLwouaHZyLWdyb3ctc2hhZG93IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJveC1zaGFkb3csIHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3gtc2hhZG93LCB0cmFuc2Zvcm07Cn0KLmh2ci1ncm93LXNoYWRvdzpob3ZlciwgLmh2ci1ncm93LXNoYWRvdzpmb2N1cywgLmh2ci1ncm93LXNoYWRvdzphY3RpdmUgewogIGJveC1zaGFkb3c6IDAgMTBweCAxMHB4IC0xMHB4IHJnYmEoMCwgMCwgMCwgMC41KTsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTsKICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7Cn0KCi8qIEJveCBTaGFkb3cgT3V0c2V0ICovCi5odnItYm94LXNoYWRvdy1vdXRzZXQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdzsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3gtc2hhZG93Owp9Ci5odnItYm94LXNoYWRvdy1vdXRzZXQ6aG92ZXIsIC5odnItYm94LXNoYWRvdy1vdXRzZXQ6Zm9jdXMsIC5odnItYm94LXNoYWRvdy1vdXRzZXQ6YWN0aXZlIHsKICBib3gtc2hhZG93OiAycHggMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7Cn0KCi8qIEJveCBTaGFkb3cgSW5zZXQgKi8KLmh2ci1ib3gtc2hhZG93LWluc2V0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJveC1zaGFkb3c7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdzsKICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCByZ2JhKDAsIDAsIDAsIDAuNiksIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAvKiBIYWNrIHRvIGltcHJvdmUgYWxpYXNpbmcgb24gbW9iaWxlL3RhYmxldCBkZXZpY2VzICovCn0KLmh2ci1ib3gtc2hhZG93LWluc2V0OmhvdmVyLCAuaHZyLWJveC1zaGFkb3ctaW5zZXQ6Zm9jdXMsIC5odnItYm94LXNoYWRvdy1pbnNldDphY3RpdmUgewogIGJveC1zaGFkb3c6IGluc2V0IDJweCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KSwgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC8qIEhhY2sgdG8gaW1wcm92ZSBhbGlhc2luZyBvbiBtb2JpbGUvdGFibGV0IGRldmljZXMgKi8KfQoKLyogRmxvYXQgU2hhZG93ICovCi5odnItZmxvYXQtc2hhZG93IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItZmxvYXQtc2hhZG93OmJlZm9yZSB7CiAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIGNvbnRlbnQ6ICcnOwogIHRvcDogMTAwJTsKICBsZWZ0OiA1JTsKICBoZWlnaHQ6IDEwcHg7CiAgd2lkdGg6IDkwJTsKICBvcGFjaXR5OiAwOwogIGJhY2tncm91bmQ6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNlbnRlciwgZWxsaXBzZSwgcmdiYSgwLCAwLCAwLCAwLjM1KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA4MCUpOwogIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGNlbnRlciwgcmdiYSgwLCAwLCAwLCAwLjM1KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA4MCUpOwogIC8qIFczQyAqLwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTsKfQouaHZyLWZsb2F0LXNoYWRvdzpob3ZlciwgLmh2ci1mbG9hdC1zaGFkb3c6Zm9jdXMsIC5odnItZmxvYXQtc2hhZG93OmFjdGl2ZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwogIC8qIG1vdmUgdGhlIGVsZW1lbnQgdXAgYnkgNXB4ICovCn0KLmh2ci1mbG9hdC1zaGFkb3c6aG92ZXI6YmVmb3JlLCAuaHZyLWZsb2F0LXNoYWRvdzpmb2N1czpiZWZvcmUsIC5odnItZmxvYXQtc2hhZG93OmFjdGl2ZTpiZWZvcmUgewogIG9wYWNpdHk6IDE7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXB4KTsKICAvKiBtb3ZlIHRoZSBlbGVtZW50IGRvd24gYnkgNXB4IChpdCB3aWxsIHN0YXkgaW4gcGxhY2UgYmVjYXVzZSBpdCdzIGF0dGFjaGVkIHRvIHRoZSBlbGVtZW50IHRoYXQgYWxzbyBtb3ZlcyB1cCA1cHgpICovCn0KCi8qIFNoYWRvdyBSYWRpYWwgKi8KLmh2ci1zaGFkb3ctcmFkaWFsIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmh2ci1zaGFkb3ctcmFkaWFsOmJlZm9yZSwgLmh2ci1zaGFkb3ctcmFkaWFsOmFmdGVyIHsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgY29udGVudDogJyc7CiAgbGVmdDogMDsKICB3aWR0aDogMTAwJTsKICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CiAgaGVpZ2h0OiA1cHg7CiAgb3BhY2l0eTogMDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsKfQouaHZyLXNoYWRvdy1yYWRpYWw6YmVmb3JlIHsKICBib3R0b206IDEwMCU7CiAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoNTAlIDE1MCUsIGVsbGlwc2UsIHJnYmEoMCwgMCwgMCwgMC42KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA4MCUpOwogIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IDUwJSAxNTAlLCByZ2JhKDAsIDAsIDAsIDAuNikgMCUsIHJnYmEoMCwgMCwgMCwgMCkgODAlKTsKfQouaHZyLXNoYWRvdy1yYWRpYWw6YWZ0ZXIgewogIHRvcDogMTAwJTsKICBiYWNrZ3JvdW5kOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudCg1MCUgLTUwJSwgZWxsaXBzZSwgcmdiYSgwLCAwLCAwLCAwLjYpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDgwJSk7CiAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgYXQgNTAlIC01MCUsIHJnYmEoMCwgMCwgMCwgMC42KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA4MCUpOwp9Ci5odnItc2hhZG93LXJhZGlhbDpob3ZlcjpiZWZvcmUsIC5odnItc2hhZG93LXJhZGlhbDpmb2N1czpiZWZvcmUsIC5odnItc2hhZG93LXJhZGlhbDphY3RpdmU6YmVmb3JlLCAuaHZyLXNoYWRvdy1yYWRpYWw6aG92ZXI6YWZ0ZXIsIC5odnItc2hhZG93LXJhZGlhbDpmb2N1czphZnRlciwgLmh2ci1zaGFkb3ctcmFkaWFsOmFjdGl2ZTphZnRlciB7CiAgb3BhY2l0eTogMTsKfQoKLyogU1BFRUNIIEJVQkJMRVMgKi8KLyogQnViYmxlIFRvcCAqLwouaHZyLWJ1YmJsZS10b3AgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQouaHZyLWJ1YmJsZS10b3A6YmVmb3JlIHsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgY29udGVudDogJyc7CiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgbGVmdDogY2FsYyg1MCUgLSAxMHB4KTsKICB0b3A6IDA7CiAgYm9yZGVyLXdpZHRoOiAwIDEwcHggMTBweCAxMHB4OwogIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2UxZTFlMSB0cmFuc3BhcmVudDsKfQouaHZyLWJ1YmJsZS10b3A6aG92ZXI6YmVmb3JlLCAuaHZyLWJ1YmJsZS10b3A6Zm9jdXM6YmVmb3JlLCAuaHZyLWJ1YmJsZS10b3A6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7Cn0KCi8qIEJ1YmJsZSBSaWdodCAqLwouaHZyLWJ1YmJsZS1yaWdodCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5odnItYnViYmxlLXJpZ2h0OmJlZm9yZSB7CiAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIGNvbnRlbnQ6ICcnOwogIGJvcmRlci1zdHlsZTogc29saWQ7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRvcDogY2FsYyg1MCUgLSAxMHB4KTsKICByaWdodDogMDsKICBib3JkZXItd2lkdGg6IDEwcHggMCAxMHB4IDEwcHg7CiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZTFlMWUxOwp9Ci5odnItYnViYmxlLXJpZ2h0OmhvdmVyOmJlZm9yZSwgLmh2ci1idWJibGUtcmlnaHQ6Zm9jdXM6YmVmb3JlLCAuaHZyLWJ1YmJsZS1yaWdodDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7Cn0KCi8qIEJ1YmJsZSBCb3R0b20gKi8KLmh2ci1idWJibGUtYm90dG9tIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmh2ci1idWJibGUtYm90dG9tOmJlZm9yZSB7CiAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIGNvbnRlbnQ6ICcnOwogIGJvcmRlci1zdHlsZTogc29saWQ7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIGxlZnQ6IGNhbGMoNTAlIC0gMTBweCk7CiAgYm90dG9tOiAwOwogIGJvcmRlci13aWR0aDogMTBweCAxMHB4IDAgMTBweDsKICBib3JkZXItY29sb3I6ICNlMWUxZTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7Cn0KLmh2ci1idWJibGUtYm90dG9tOmhvdmVyOmJlZm9yZSwgLmh2ci1idWJibGUtYm90dG9tOmZvY3VzOmJlZm9yZSwgLmh2ci1idWJibGUtYm90dG9tOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTsKfQoKLyogQnViYmxlIExlZnQgKi8KLmh2ci1idWJibGUtbGVmdCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5odnItYnViYmxlLWxlZnQ6YmVmb3JlIHsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgY29udGVudDogJyc7CiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdG9wOiBjYWxjKDUwJSAtIDEwcHgpOwogIGxlZnQ6IDA7CiAgYm9yZGVyLXdpZHRoOiAxMHB4IDEwcHggMTBweCAwOwogIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2UxZTFlMSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsKfQouaHZyLWJ1YmJsZS1sZWZ0OmhvdmVyOmJlZm9yZSwgLmh2ci1idWJibGUtbGVmdDpmb2N1czpiZWZvcmUsIC5odnItYnViYmxlLWxlZnQ6YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7Cn0KCi8qIEJ1YmJsZSBGbG9hdCBUb3AgKi8KLmh2ci1idWJibGUtZmxvYXQtdG9wIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItYnViYmxlLWZsb2F0LXRvcDpiZWZvcmUgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBjb250ZW50OiAnJzsKICBsZWZ0OiBjYWxjKDUwJSAtIDEwcHgpOwogIHRvcDogMDsKICBib3JkZXItc3R5bGU6IHNvbGlkOwogIGJvcmRlci13aWR0aDogMCAxMHB4IDEwcHggMTBweDsKICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNlMWUxZTEgdHJhbnNwYXJlbnQ7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItYnViYmxlLWZsb2F0LXRvcDpob3ZlciwgLmh2ci1idWJibGUtZmxvYXQtdG9wOmZvY3VzLCAuaHZyLWJ1YmJsZS1mbG9hdC10b3A6YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7Cn0KLmh2ci1idWJibGUtZmxvYXQtdG9wOmhvdmVyOmJlZm9yZSwgLmh2ci1idWJibGUtZmxvYXQtdG9wOmZvY3VzOmJlZm9yZSwgLmh2ci1idWJibGUtZmxvYXQtdG9wOmFjdGl2ZTpiZWZvcmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwp9CgovKiBCdWJibGUgRmxvYXQgUmlnaHQgKi8KLmh2ci1idWJibGUtZmxvYXQtcmlnaHQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07Cn0KLmh2ci1idWJibGUtZmxvYXQtcmlnaHQ6YmVmb3JlIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgdG9wOiBjYWxjKDUwJSAtIDEwcHgpOwogIHJpZ2h0OiAwOwogIGNvbnRlbnQ6ICcnOwogIGJvcmRlci1zdHlsZTogc29saWQ7CiAgYm9yZGVyLXdpZHRoOiAxMHB4IDAgMTBweCAxMHB4OwogIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2UxZTFlMTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07Cn0KLmh2ci1idWJibGUtZmxvYXQtcmlnaHQ6aG92ZXIsIC5odnItYnViYmxlLWZsb2F0LXJpZ2h0OmZvY3VzLCAuaHZyLWJ1YmJsZS1mbG9hdC1yaWdodDphY3RpdmUgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpOwp9Ci5odnItYnViYmxlLWZsb2F0LXJpZ2h0OmhvdmVyOmJlZm9yZSwgLmh2ci1idWJibGUtZmxvYXQtcmlnaHQ6Zm9jdXM6YmVmb3JlLCAuaHZyLWJ1YmJsZS1mbG9hdC1yaWdodDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7Cn0KCi8qIEJ1YmJsZSBGbG9hdCBCb3R0b20gKi8KLmh2ci1idWJibGUtZmxvYXQtYm90dG9tIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItYnViYmxlLWZsb2F0LWJvdHRvbTpiZWZvcmUgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAtMTsKICBjb250ZW50OiAnJzsKICBsZWZ0OiBjYWxjKDUwJSAtIDEwcHgpOwogIGJvdHRvbTogMDsKICBib3JkZXItc3R5bGU6IHNvbGlkOwogIGJvcmRlci13aWR0aDogMTBweCAxMHB4IDAgMTBweDsKICBib3JkZXItY29sb3I6ICNlMWUxZTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItYnViYmxlLWZsb2F0LWJvdHRvbTpob3ZlciwgLmh2ci1idWJibGUtZmxvYXQtYm90dG9tOmZvY3VzLCAuaHZyLWJ1YmJsZS1mbG9hdC1ib3R0b206YWN0aXZlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsKfQouaHZyLWJ1YmJsZS1mbG9hdC1ib3R0b206aG92ZXI6YmVmb3JlLCAuaHZyLWJ1YmJsZS1mbG9hdC1ib3R0b206Zm9jdXM6YmVmb3JlLCAuaHZyLWJ1YmJsZS1mbG9hdC1ib3R0b206YWN0aXZlOmJlZm9yZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpOwp9CgovKiBCdWJibGUgRmxvYXQgTGVmdCAqLwouaHZyLWJ1YmJsZS1mbG9hdC1sZWZ0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwp9Ci5odnItYnViYmxlLWZsb2F0LWxlZnQ6YmVmb3JlIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7CiAgY29udGVudDogJyc7CiAgdG9wOiBjYWxjKDUwJSAtIDEwcHgpOwogIGxlZnQ6IDA7CiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsKICBib3JkZXItd2lkdGg6IDEwcHggMTBweCAxMHB4IDA7CiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjZTFlMWUxIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKfQouaHZyLWJ1YmJsZS1mbG9hdC1sZWZ0OmhvdmVyLCAuaHZyLWJ1YmJsZS1mbG9hdC1sZWZ0OmZvY3VzLCAuaHZyLWJ1YmJsZS1mbG9hdC1sZWZ0OmFjdGl2ZSB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpOwp9Ci5odnItYnViYmxlLWZsb2F0LWxlZnQ6aG92ZXI6YmVmb3JlLCAuaHZyLWJ1YmJsZS1mbG9hdC1sZWZ0OmZvY3VzOmJlZm9yZSwgLmh2ci1idWJibGUtZmxvYXQtbGVmdDphY3RpdmU6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTsKfQoKLyogSUNPTlMgKi8KLyogSWNvbiBCYWNrICovCi5odnItaWNvbi1iYWNrIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xczsKfQouaHZyLWljb24tYmFjayAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1iYWNrOmhvdmVyIC5odnItaWNvbiwgLmh2ci1pY29uLWJhY2s6Zm9jdXMgLmh2ci1pY29uLCAuaHZyLWljb24tYmFjazphY3RpdmUgLmh2ci1pY29uIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTRweCk7Cn0KCi8qIEljb24gRm9yd2FyZCAqLwouaHZyLWljb24tZm9yd2FyZCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjFzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7Cn0KLmh2ci1pY29uLWZvcndhcmQgLmh2ci1pY29uIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjFzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWljb24tZm9yd2FyZDpob3ZlciAuaHZyLWljb24sIC5odnItaWNvbi1mb3J3YXJkOmZvY3VzIC5odnItaWNvbiwgLmh2ci1pY29uLWZvcndhcmQ6YWN0aXZlIC5odnItaWNvbiB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsKfQoKLyogSWNvbiBEb3duICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1kb3duIHsKICAwJSwKCTUwJSwKCTEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgfQogIDI1JSwKCTc1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7CiAgfQp9CkBrZXlmcmFtZXMgaHZyLWljb24tZG93biB7CiAgMCUsCgk1MCUsCgkxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogIH0KICAyNSUsCgk3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogIH0KfQovKiBJY29uIERvd24gKi8KLmh2ci1pY29uLWRvd24gewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwp9Ci5odnItaWNvbi1kb3duIC5odnItaWNvbiB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwp9Ci5odnItaWNvbi1kb3duOmhvdmVyIC5odnItaWNvbiwgLmh2ci1pY29uLWRvd246Zm9jdXMgLmh2ci1pY29uLCAuaHZyLWljb24tZG93bjphY3RpdmUgLmh2ci1pY29uIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1kb3duOwogIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1kb3duOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1czsKICBhbmltYXRpb24tZHVyYXRpb246IDAuNzVzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KCi8qIEljb24gVXAgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLXVwIHsKICAwJSwKCTUwJSwKCTEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgfQogIDI1JSwKCTc1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICB9Cn0KQGtleWZyYW1lcyBodnItaWNvbi11cCB7CiAgMCUsCgk1MCUsCgkxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogIH0KICAyNSUsCgk3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7CiAgfQp9Ci8qIEljb24gVXAgKi8KLmh2ci1pY29uLXVwIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKfQouaHZyLWljb24tdXAgLmh2ci1pY29uIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7Cn0KLmh2ci1pY29uLXVwOmhvdmVyIC5odnItaWNvbiwgLmh2ci1pY29uLXVwOmZvY3VzIC5odnItaWNvbiwgLmh2ci1pY29uLXVwOmFjdGl2ZSAuaHZyLWljb24gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXVwOwogIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi11cDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1czsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9CgovKiBJY29uIFNwaW4gKi8KLmh2ci1pY29uLXNwaW4gewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwp9Ci5odnItaWNvbi1zcGluIC5odnItaWNvbiB7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAxczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0Owp9Ci5odnItaWNvbi1zcGluOmhvdmVyIC5odnItaWNvbiwgLmh2ci1pY29uLXNwaW46Zm9jdXMgLmh2ci1pY29uLCAuaHZyLWljb24tc3BpbjphY3RpdmUgLmh2ci1pY29uIHsKICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7CiAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsKfQoKLyogSWNvbiBEcm9wICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1kcm9wIHsKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogIH0KICA1MCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7CiAgfQogIDUxJSwKCTEwMCUgewogICAgb3BhY2l0eTogMTsKICB9Cn0KQGtleWZyYW1lcyBodnItaWNvbi1kcm9wIHsKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogIH0KICA1MCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7CiAgfQogIDUxJSwKCTEwMCUgewogICAgb3BhY2l0eTogMTsKICB9Cn0KLyogSWNvbiBEcm9wICovCi5odnItaWNvbi1kcm9wIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKfQouaHZyLWljb24tZHJvcCAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKfQouaHZyLWljb24tZHJvcDpob3ZlciAuaHZyLWljb24sIC5odnItaWNvbi1kcm9wOmZvY3VzIC5odnItaWNvbiwgLmh2ci1pY29uLWRyb3A6YWN0aXZlIC5odnItaWNvbiB7CiAgb3BhY2l0eTogMDsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1kcm9wOwogIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1kcm9wOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMC41czsKICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4zczsKICBhbmltYXRpb24tZGVsYXk6IDAuM3M7CiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsKICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTIsIDEuNjQsIDAuMzcsIDAuNjYpOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUyLCAxLjY0LCAwLjM3LCAwLjY2KTsKfQoKLyogSWNvbiBGYWRlICovCi5odnItaWNvbi1mYWRlIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKfQouaHZyLWljb24tZmFkZSAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yOwp9Ci5odnItaWNvbi1mYWRlOmhvdmVyIC5odnItaWNvbiwgLmh2ci1pY29uLWZhZGU6Zm9jdXMgLmh2ci1pY29uLCAuaHZyLWljb24tZmFkZTphY3RpdmUgLmh2ci1pY29uIHsKICBjb2xvcjogIzBGOUU1RTsKfQoKLyogSWNvbiBGbG9hdCBBd2F5ICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1mbG9hdC1hd2F5IHsKICAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMWVtKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMWVtKTsKICB9Cn0KQGtleWZyYW1lcyBodnItaWNvbi1mbG9hdC1hd2F5IHsKICAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMWVtKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMWVtKTsKICB9Cn0KLyogSWNvbiBGbG9hdCBBd2F5ICovCi5odnItaWNvbi1mbG9hdC1hd2F5IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKfQouaHZyLWljb24tZmxvYXQtYXdheSAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC41czsKICBhbmltYXRpb24tZHVyYXRpb246IDAuNXM7CiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsKICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsKfQouaHZyLWljb24tZmxvYXQtYXdheTpob3ZlciAuaHZyLWljb24sIC5odnItaWNvbi1mbG9hdC1hd2F5OmZvY3VzIC5odnItaWNvbiwgLmh2ci1pY29uLWZsb2F0LWF3YXk6YWN0aXZlIC5odnItaWNvbiB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24tZmxvYXQtYXdheTsKICBhbmltYXRpb24tbmFtZTogaHZyLWljb24tZmxvYXQtYXdheTsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9CgovKiBJY29uIFNpbmsgQXdheSAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24tc2luay1hd2F5IHsKICAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxZW0pOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFlbSk7CiAgfQp9CkBrZXlmcmFtZXMgaHZyLWljb24tc2luay1hd2F5IHsKICAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxZW0pOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFlbSk7CiAgfQp9Ci8qIEljb24gU2luayBBd2F5ICovCi5odnItaWNvbi1zaW5rLWF3YXkgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwp9Ci5odnItaWNvbi1zaW5rLWF3YXkgLmh2ci1pY29uIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzOwogIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7CiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7Cn0KLmh2ci1pY29uLXNpbmstYXdheTpob3ZlciAuaHZyLWljb24sIC5odnItaWNvbi1zaW5rLWF3YXk6Zm9jdXMgLmh2ci1pY29uLCAuaHZyLWljb24tc2luay1hd2F5OmFjdGl2ZSAuaHZyLWljb24gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXNpbmstYXdheTsKICBhbmltYXRpb24tbmFtZTogaHZyLWljb24tc2luay1hd2F5OwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KCi8qIEljb24gR3JvdyAqLwouaHZyLWljb24tZ3JvdyB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1pY29uLWdyb3cgLmh2ci1pY29uIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWljb24tZ3Jvdzpob3ZlciAuaHZyLWljb24sIC5odnItaWNvbi1ncm93OmZvY3VzIC5odnItaWNvbiwgLmh2ci1pY29uLWdyb3c6YWN0aXZlIC5odnItaWNvbiB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMykgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHNjYWxlKDEuMykgdHJhbnNsYXRlWigwKTsKfQoKLyogSWNvbiBTaHJpbmsgKi8KLmh2ci1pY29uLXNocmluayB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1pY29uLXNocmluayAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1zaHJpbms6aG92ZXIgLmh2ci1pY29uLCAuaHZyLWljb24tc2hyaW5rOmZvY3VzIC5odnItaWNvbiwgLmh2ci1pY29uLXNocmluazphY3RpdmUgLmh2ci1pY29uIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44KTsKICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7Cn0KCi8qIEljb24gUHVsc2UgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLXB1bHNlIHsKICAyNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7CiAgfQogIDc1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44KTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTsKICB9Cn0KQGtleWZyYW1lcyBodnItaWNvbi1wdWxzZSB7CiAgMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogIH0KICA3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7CiAgfQp9Ci5odnItaWNvbi1wdWxzZSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7Cn0KLmh2ci1pY29uLXB1bHNlIC5odnItaWNvbiB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKfQouaHZyLWljb24tcHVsc2U6aG92ZXIgLmh2ci1pY29uLCAuaHZyLWljb24tcHVsc2U6Zm9jdXMgLmh2ci1pY29uLCAuaHZyLWljb24tcHVsc2U6YWN0aXZlIC5odnItaWNvbiB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24tcHVsc2U7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXB1bHNlOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICBhbmltYXRpb24tZHVyYXRpb246IDFzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOwp9CgovKiBJY29uIFB1bHNlIEdyb3cgKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLXB1bHNlLWdyb3cgewogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogIH0KfQpAa2V5ZnJhbWVzIGh2ci1pY29uLXB1bHNlLWdyb3cgewogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogIH0KfQouaHZyLWljb24tcHVsc2UtZ3JvdyB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7Cn0KLmh2ci1pY29uLXB1bHNlLWdyb3cgLmh2ci1pY29uIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1wdWxzZS1ncm93OmhvdmVyIC5odnItaWNvbiwgLmh2ci1pY29uLXB1bHNlLWdyb3c6Zm9jdXMgLmh2ci1pY29uLCAuaHZyLWljb24tcHVsc2UtZ3JvdzphY3RpdmUgLmh2ci1pY29uIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wdWxzZS1ncm93OwogIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wdWxzZS1ncm93OwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246IGFsdGVybmF0ZTsKICBhbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7Cn0KCi8qIEljb24gUHVsc2UgU2hyaW5rICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1wdWxzZS1zaHJpbmsgewogIHRvIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjgpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpOwogIH0KfQpAa2V5ZnJhbWVzIGh2ci1pY29uLXB1bHNlLXNocmluayB7CiAgdG8gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7CiAgfQp9Ci5odnItaWNvbi1wdWxzZS1zaHJpbmsgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwp9Ci5odnItaWNvbi1wdWxzZS1zaHJpbmsgLmh2ci1pY29uIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1wdWxzZS1zaHJpbms6aG92ZXIgLmh2ci1pY29uLCAuaHZyLWljb24tcHVsc2Utc2hyaW5rOmZvY3VzIC5odnItaWNvbiwgLmh2ci1pY29uLXB1bHNlLXNocmluazphY3RpdmUgLmh2ci1pY29uIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wdWxzZS1zaHJpbms7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXB1bHNlLXNocmluazsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsKICBhbmltYXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7CiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlOwp9CgovKiBJY29uIFB1c2ggKi8KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLXB1c2ggewogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC41KTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTsKICB9Cn0KQGtleWZyYW1lcyBodnItaWNvbi1wdXNoIHsKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7CiAgfQp9Ci5odnItaWNvbi1wdXNoIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLWljb24tcHVzaCAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1wdXNoOmhvdmVyIC5odnItaWNvbiwgLmh2ci1pY29uLXB1c2g6Zm9jdXMgLmh2ci1pY29uLCAuaHZyLWljb24tcHVzaDphY3RpdmUgLmh2ci1pY29uIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wdXNoOwogIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wdXNoOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7Cn0KCi8qIEljb24gUG9wICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1wb3AgewogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTsKICB9Cn0KQGtleWZyYW1lcyBodnItaWNvbi1wb3AgewogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTsKICB9Cn0KLmh2ci1pY29uLXBvcCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1pY29uLXBvcCAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1wb3A6aG92ZXIgLmh2ci1pY29uLCAuaHZyLWljb24tcG9wOmZvY3VzIC5odnItaWNvbiwgLmh2ci1pY29uLXBvcDphY3RpdmUgLmh2ci1pY29uIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wb3A7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXBvcDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsKICBhbmltYXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwp9CgovKiBJY29uIEJvdW5jZSAqLwouaHZyLWljb24tYm91bmNlIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLWljb24tYm91bmNlIC5odnItaWNvbiB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1pY29uLWJvdW5jZTpob3ZlciAuaHZyLWljb24sIC5odnItaWNvbi1ib3VuY2U6Zm9jdXMgLmh2ci1pY29uLCAuaHZyLWljb24tYm91bmNlOmFjdGl2ZSAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjUpOwogIHRyYW5zZm9ybTogc2NhbGUoMS41KTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMi4wMiwgMC4zMSwgLTAuMzYpOwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMi4wMiwgMC4zMSwgLTAuMzYpOwp9CgovKiBJY29uIFJvdGF0ZSAqLwouaHZyLWljb24tcm90YXRlIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLWljb24tcm90YXRlIC5odnItaWNvbiB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1pY29uLXJvdGF0ZTpob3ZlciAuaHZyLWljb24sIC5odnItaWNvbi1yb3RhdGU6Zm9jdXMgLmh2ci1pY29uLCAuaHZyLWljb24tcm90YXRlOmFjdGl2ZSAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpOwogIHRyYW5zZm9ybTogcm90YXRlKDIwZGVnKTsKfQoKLyogSWNvbiBHcm93IFJvdGF0ZSAqLwouaHZyLWljb24tZ3Jvdy1yb3RhdGUgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItaWNvbi1ncm93LXJvdGF0ZSAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1ncm93LXJvdGF0ZTpob3ZlciAuaHZyLWljb24sIC5odnItaWNvbi1ncm93LXJvdGF0ZTpmb2N1cyAuaHZyLWljb24sIC5odnItaWNvbi1ncm93LXJvdGF0ZTphY3RpdmUgLmh2ci1pY29uIHsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KSByb3RhdGUoMTJkZWcpOwogIHRyYW5zZm9ybTogc2NhbGUoMS41KSByb3RhdGUoMTJkZWcpOwp9CgovKiBJY29uIEZsb2F0ICovCi5odnItaWNvbi1mbG9hdCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1pY29uLWZsb2F0IC5odnItaWNvbiB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7Cn0KLmh2ci1pY29uLWZsb2F0OmhvdmVyIC5odnItaWNvbiwgLmh2ci1pY29uLWZsb2F0OmZvY3VzIC5odnItaWNvbiwgLmh2ci1pY29uLWZsb2F0OmFjdGl2ZSAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTsKfQoKLyogSWNvbiBTaW5rICovCi5odnItaWNvbi1zaW5rIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLWljb24tc2luayAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07CiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9Ci5odnItaWNvbi1zaW5rOmhvdmVyIC5odnItaWNvbiwgLmh2ci1pY29uLXNpbms6Zm9jdXMgLmh2ci1pY29uLCAuaHZyLWljb24tc2luazphY3RpdmUgLmh2ci1pY29uIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpOwp9CgovKiBJY29uIEJvYiAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24tYm9iIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICB9CiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOwogIH0KICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOwogIH0KfQpAa2V5ZnJhbWVzIGh2ci1pY29uLWJvYiB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7CiAgfQogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsKICB9CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICB9Cn0KQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLWJvYi1mbG9hdCB7CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsKICB9Cn0KQGtleWZyYW1lcyBodnItaWNvbi1ib2ItZmxvYXQgewogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7CiAgfQp9Ci5odnItaWNvbi1ib2IgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItaWNvbi1ib2IgLmh2ci1pY29uIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7Cn0KLmh2ci1pY29uLWJvYjpob3ZlciAuaHZyLWljb24sIC5odnItaWNvbi1ib2I6Zm9jdXMgLmh2ci1pY29uLCAuaHZyLWljb24tYm9iOmFjdGl2ZSAuaHZyLWljb24gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLWJvYi1mbG9hdCwgaHZyLWljb24tYm9iOwogIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1ib2ItZmxvYXQsIGh2ci1pY29uLWJvYjsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzOwogIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcywgLjNzOwogIGFuaW1hdGlvbi1kZWxheTogMHMsIC4zczsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0LCBlYXNlLWluLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCwgZWFzZS1pbi1vdXQ7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTsKICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOwogIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOwogIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7CiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7Cn0KCi8qIEljb24gSGFuZyAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24taGFuZyB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogIH0KICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgycHgpOwogIH0KICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICB9Cn0KQGtleWZyYW1lcyBodnItaWNvbi1oYW5nIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7CiAgfQogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgycHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDJweCk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogIH0KfQpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24taGFuZy1zaW5rIHsKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICB9Cn0KQGtleWZyYW1lcyBodnItaWNvbi1oYW5nLXNpbmsgewogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogIH0KfQouaHZyLWljb24taGFuZyB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1pY29uLWhhbmcgLmh2ci1pY29uIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7Cn0KLmh2ci1pY29uLWhhbmc6aG92ZXIgLmh2ci1pY29uLCAuaHZyLWljb24taGFuZzpmb2N1cyAuaHZyLWljb24sIC5odnItaWNvbi1oYW5nOmFjdGl2ZSAuaHZyLWljb24gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLWhhbmctc2luaywgaHZyLWljb24taGFuZzsKICBhbmltYXRpb24tbmFtZTogaHZyLWljb24taGFuZy1zaW5rLCBodnItaWNvbi1oYW5nOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAuM3MsIDEuNXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuM3MsIDEuNXM7CiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDBzLCAuM3M7CiAgYW5pbWF0aW9uLWRlbGF5OiAwcywgLjNzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQsIGVhc2UtaW4tb3V0OwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0LCBlYXNlLWluLW91dDsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEsIGluZmluaXRlOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEsIGluZmluaXRlOwogIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7CiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7CiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBub3JtYWwsIGFsdGVybmF0ZTsKICBhbmltYXRpb24tZGlyZWN0aW9uOiBub3JtYWwsIGFsdGVybmF0ZTsKfQoKLyogSWNvbiBXb2JibGUgSG9yaXpvbnRhbCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24td29iYmxlLWhvcml6b250YWwgewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg2cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDZweCk7CiAgfQogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpOwogIH0KICA0OS45NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpOwogIH0KICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KTsKICB9CiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KTsKICB9CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICB9Cn0KQGtleWZyYW1lcyBodnItaWNvbi13b2JibGUtaG9yaXpvbnRhbCB7CiAgMTYuNjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDZweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNnB4KTsKICB9CiAgMzMuMyUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7CiAgfQogIDQ5Ljk1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7CiAgfQogIDY2LjYlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpOwogIH0KICA4My4yNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpOwogIH0KICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogIH0KfQouaHZyLWljb24td29iYmxlLWhvcml6b250YWwgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwp9Ci5odnItaWNvbi13b2JibGUtaG9yaXpvbnRhbCAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKfQouaHZyLWljb24td29iYmxlLWhvcml6b250YWw6aG92ZXIgLmh2ci1pY29uLCAuaHZyLWljb24td29iYmxlLWhvcml6b250YWw6Zm9jdXMgLmh2ci1pY29uLCAuaHZyLWljb24td29iYmxlLWhvcml6b250YWw6YWN0aXZlIC5odnItaWNvbiB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24td29iYmxlLWhvcml6b250YWw7CiAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXdvYmJsZS1ob3Jpem9udGFsOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICBhbmltYXRpb24tZHVyYXRpb246IDFzOwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7Cn0KCi8qIEljb24gV29iYmxlIFZlcnRpY2FsICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi13b2JibGUtdmVydGljYWwgewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7CiAgfQogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwogIH0KICA0OS45NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpOwogIH0KICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsKICB9CiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTsKICB9CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICB9Cn0KQGtleWZyYW1lcyBodnItaWNvbi13b2JibGUtdmVydGljYWwgewogIDE2LjY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7CiAgfQogIDMzLjMlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwogIH0KICA0OS45NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpOwogIH0KICA2Ni42JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsKICB9CiAgODMuMjUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTsKICB9CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICB9Cn0KLmh2ci1pY29uLXdvYmJsZS12ZXJ0aWNhbCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1pY29uLXdvYmJsZS12ZXJ0aWNhbCAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKfQouaHZyLWljb24td29iYmxlLXZlcnRpY2FsOmhvdmVyIC5odnItaWNvbiwgLmh2ci1pY29uLXdvYmJsZS12ZXJ0aWNhbDpmb2N1cyAuaHZyLWljb24sIC5odnItaWNvbi13b2JibGUtdmVydGljYWw6YWN0aXZlIC5odnItaWNvbiB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24td29iYmxlLXZlcnRpY2FsOwogIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi13b2JibGUtdmVydGljYWw7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKfQoKLyogSWNvbiBCdXp6ICovCkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1idXp6IHsKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7CiAgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogIH0KfQpAa2V5ZnJhbWVzIGh2ci1pY29uLWJ1enogewogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICB9CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgfQp9Ci5odnItaWNvbi1idXp6IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApOwogIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKfQouaHZyLWljb24tYnV6eiAuaHZyLWljb24gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKfQouaHZyLWljb24tYnV6ejpob3ZlciAuaHZyLWljb24sIC5odnItaWNvbi1idXp6OmZvY3VzIC5odnItaWNvbiwgLmh2ci1pY29uLWJ1eno6YWN0aXZlIC5odnItaWNvbiB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24tYnV6ejsKICBhbmltYXRpb24tbmFtZTogaHZyLWljb24tYnV6ejsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4xNXM7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjE1czsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKfQoKLyogSWNvbiBCdXp6IE91dCAqLwpALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24tYnV6ei1vdXQgewogIDEwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICB9CiAgMjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICB9CiAgMzAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogIH0KICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogIH0KICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7CiAgfQogIDYwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7CiAgfQogIDcwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICB9CiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTsKICB9CiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCkgcm90YXRlKDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCkgcm90YXRlKDApOwogIH0KICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcHgpIHJvdGF0ZSgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KSByb3RhdGUoMCk7CiAgfQp9CkBrZXlmcmFtZXMgaHZyLWljb24tYnV6ei1vdXQgewogIDEwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsKICB9CiAgMjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICB9CiAgMzAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOwogIH0KICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOwogIH0KICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7CiAgfQogIDYwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7CiAgfQogIDcwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsKICB9CiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTsKICB9CiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCkgcm90YXRlKDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCkgcm90YXRlKDApOwogIH0KICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcHgpIHJvdGF0ZSgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KSByb3RhdGUoMCk7CiAgfQp9Ci5odnItaWNvbi1idXp6LW91dCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7Cn0KLmh2ci1pY29uLWJ1enotb3V0IC5odnItaWNvbiB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOwp9Ci5odnItaWNvbi1idXp6LW91dDpob3ZlciAuaHZyLWljb24sIC5odnItaWNvbi1idXp6LW91dDpmb2N1cyAuaHZyLWljb24sIC5odnItaWNvbi1idXp6LW91dDphY3RpdmUgLmh2ci1pY29uIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1idXp6LW91dDsKICBhbmltYXRpb24tbmFtZTogaHZyLWljb24tYnV6ei1vdXQ7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNzVzOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOwp9CgovKiBDVVJMUyAqLwovKiBDdXJsIFRvcCBMZWZ0ICovCi5odnItY3VybC10b3AtbGVmdCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5odnItY3VybC10b3AtbGVmdDpiZWZvcmUgewogIHBvaW50ZXItZXZlbnRzOiBub25lOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBjb250ZW50OiAnJzsKICBoZWlnaHQ6IDA7CiAgd2lkdGg6IDA7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgYmFja2dyb3VuZDogd2hpdGU7CiAgLyogSUU5ICovCiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgd2hpdGUgNDUlLCAjYWFhIDUwJSwgI2NjYyA1NiUsIHdoaXRlIDgwJSk7CiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoR3JhZGllbnRUeXBlPTAsc3RhcnRDb2xvcnN0cj0nI2ZmZmZmZicsIGVuZENvbG9yc3RyPScjMDAwMDAwJyk7CiAgLypGb3IgSUU3LTgtOSovCiAgei1pbmRleDogMTAwMDsKICBib3gtc2hhZG93OiAxcHggMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aCwgaGVpZ2h0OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHdpZHRoLCBoZWlnaHQ7Cn0KLmh2ci1jdXJsLXRvcC1sZWZ0OmhvdmVyOmJlZm9yZSwgLmh2ci1jdXJsLXRvcC1sZWZ0OmZvY3VzOmJlZm9yZSwgLmh2ci1jdXJsLXRvcC1sZWZ0OmFjdGl2ZTpiZWZvcmUgewogIHdpZHRoOiAyNXB4OwogIGhlaWdodDogMjVweDsKfQoKLyogQ3VybCBUb3AgUmlnaHQgKi8KLmh2ci1jdXJsLXRvcC1yaWdodCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTsKICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9Ci5odnItY3VybC10b3AtcmlnaHQ6YmVmb3JlIHsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgY29udGVudDogJyc7CiAgaGVpZ2h0OiAwOwogIHdpZHRoOiAwOwogIHRvcDogMDsKICByaWdodDogMDsKICBiYWNrZ3JvdW5kOiB3aGl0ZTsKICAvKiBJRTkgKi8KICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjI1ZGVnLCB3aGl0ZSA0NSUsICNhYWEgNTAlLCAjY2NjIDU2JSwgd2hpdGUgODAlKTsKICBib3gtc2hhZG93OiAtMXB4IDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpOwogIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGgsIGhlaWdodDsKICB0cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aCwgaGVpZ2h0Owp9Ci5odnItY3VybC10b3AtcmlnaHQ6aG92ZXI6YmVmb3JlLCAuaHZyLWN1cmwtdG9wLXJpZ2h0OmZvY3VzOmJlZm9yZSwgLmh2ci1jdXJsLXRvcC1yaWdodDphY3RpdmU6YmVmb3JlIHsKICB3aWR0aDogMjVweDsKICBoZWlnaHQ6IDI1cHg7Cn0KCi8qIEN1cmwgQm90dG9tIFJpZ2h0ICovCi5odnItY3VybC1ib3R0b20tcmlnaHQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQouaHZyLWN1cmwtYm90dG9tLXJpZ2h0OmJlZm9yZSB7CiAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGNvbnRlbnQ6ICcnOwogIGhlaWdodDogMDsKICB3aWR0aDogMDsKICBib3R0b206IDA7CiAgcmlnaHQ6IDA7CiAgYmFja2dyb3VuZDogd2hpdGU7CiAgLyogSUU5ICovCiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDMxNWRlZywgd2hpdGUgNDUlLCAjYWFhIDUwJSwgI2NjYyA1NiUsIHdoaXRlIDgwJSk7CiAgYm94LXNoYWRvdzogLTFweCAtMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOwogIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aCwgaGVpZ2h0OwogIHRyYW5zaXRpb24tcHJvcGVydHk6IHdpZHRoLCBoZWlnaHQ7Cn0KLmh2ci1jdXJsLWJvdHRvbS1yaWdodDpob3ZlcjpiZWZvcmUsIC5odnItY3VybC1ib3R0b20tcmlnaHQ6Zm9jdXM6YmVmb3JlLCAuaHZyLWN1cmwtYm90dG9tLXJpZ2h0OmFjdGl2ZTpiZWZvcmUgewogIHdpZHRoOiAyNXB4OwogIGhlaWdodDogMjVweDsKfQoKLyogQ3VybCBCb3R0b20gTGVmdCAqLwouaHZyLWN1cmwtYm90dG9tLWxlZnQgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7CiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQouaHZyLWN1cmwtYm90dG9tLWxlZnQ6YmVmb3JlIHsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgY29udGVudDogJyc7CiAgaGVpZ2h0OiAwOwogIHdpZHRoOiAwOwogIGJvdHRvbTogMDsKICBsZWZ0OiAwOwogIGJhY2tncm91bmQ6IHdoaXRlOwogIC8qIElFOSAqLwogIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgd2hpdGUgNDUlLCAjYWFhIDUwJSwgI2NjYyA1NiUsIHdoaXRlIDgwJSk7CiAgYm94LXNoYWRvdzogMXB4IC0xcHggMXB4IHJnYmEoMCwgMCwgMCwgMC40KTsKICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7CiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHdpZHRoLCBoZWlnaHQ7CiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGgsIGhlaWdodDsKfQouaHZyLWN1cmwtYm90dG9tLWxlZnQ6aG92ZXI6YmVmb3JlLCAuaHZyLWN1cmwtYm90dG9tLWxlZnQ6Zm9jdXM6YmVmb3JlLCAuaHZyLWN1cmwtYm90dG9tLWxlZnQ6YWN0aXZlOmJlZm9yZSB7CiAgd2lkdGg6IDI1cHg7CiAgaGVpZ2h0OiAyNXB4Owp9CgovKiMgc291cmNlTWFwcGluZ1VSTD1ob3Zlci5jc3MubWFwICovCg=="}},"time_used":20,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":19,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://www.youtube.com/embed/4ekOcDG2D8E","date":"2026-07-27T13:20:33.163Z","timestamp":1785158433163,"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: 385406\r\nlast-modified: Thu, 29 May 2025 23:30:55 GMT\r\ncontent-type: font/woff2\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":40128,"size_decoded":40941,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 40128, version 1.0","md5":"9a01b69183a9604ab3a439e388b30501","sha1":"8ed1d59003d0dbe6360481017b44665153665fbe","sha256":"20b535fa80c8189e3b87d1803038389960203a886d502bc2ef1857affc2f38d2","sha512":"0e6795255b6eea00b5403fd7e3b904d52776d49ac63a31c2778361262883697943aedcb29feee85694ba6f19eaa34dddb9a5bfe7118f4a25b4757e92c331feca","ssdeep":"768:Vce3jkow68wmT4IBX0tXdlSirS61gSjcz0GPwHbP+w2jec56O:VcI/iEEEtXdFJj+0GPwHbP+w5rO","tlshash":"3703023a5e3ccf1a84157a703950f6d9a8481e548e9d143b4f1ac7bf085dde2209b6d4","first_seen":"2025-01-08T22:59:02.845106Z","last_seen":"2026-08-17T23:29:23.068589Z","times_seen":968097,"resource_available":false,"data":"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"}},"time_used":37,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"receive":13,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/startedicon5.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.571Z","timestamp":1785158432571,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/startedicon5.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=z%2BYpG9eoszak6g14YFjnfpCugvO4oriUWWP8W5DGoTZdYuvMwHIKRf9posIPHuf388vPIoFVyCH6lWBjq%2Fa470QdhRZ3xDcb0jMvoLyO9vVBei0PzVnZL3yv3%2BwDm1JZa249bg%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b9c8256b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 7650\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"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":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":7650,"size_decoded":8412,"mime_type":"image/png","magic":"PNG image data, 128 x 128, 8-bit/color RGBA, non-interlaced","md5":"a6ac5fe113596847ff38c42d47d716a2","sha1":"099ec3c124d625d53a36ce1e32a0d8874be792a2","sha256":"d8ffef68d976ffa12348ffe9bd782305b1d8826458ef66adbe9779ef8a0c2f7c","sha512":"505c6dd2f058958551f1ef7ed6a99370fa6408a8f8c1d232d85c0123ee28c1d38eb189a37078beb94b0bb5f23c2b56ead7f437ad6bc510f1a0bb63e786d3297d","ssdeep":"192:0Fu8ooYOV4j3XbZ4I/ARFsPhcZxdWxFG4eOZciPK/:0ILOVkr6IIRFohCbOtPY","tlshash":"e0f18f1ef8655081de6d0b826bf2241bbbfa85707095f015f78db4c929186e4980eac2","first_seen":"2024-09-19T20:45:30.959483Z","last_seen":"2026-07-27T13:21:39.079042Z","times_seen":20,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Q0RBRThGOTU4NUQ1MTFFOUJGM0JEQTVDOTNGM0M3MDciIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6Q0RBRThGOTY4NUQ1MTFFOUJGM0JEQTVDOTNGM0M3MDciPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDREFFOEY5Mzg1RDUxMUU5QkYzQkRBNUM5M0YzQzcwNyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDREFFOEY5NDg1RDUxMUU5QkYzQkRBNUM5M0YzQzcwNyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PpG/bQAAABpWSURBVHja7B0HeBRF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"}},"time_used":12,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":12,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/featuredicon4.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.576Z","timestamp":1785158432576,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/featuredicon4.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=9L9eFkglW%2BuNXNQHWI8sWJyipxzr72MF82epRL6eywGI9Rr4AVQuNn%2B5UhcGfmvEyq9ukbtA6evyh2wjU3eJ7rprbWmF2LUwGaUsel8%2BnixkbIpwn6MUh3eCdn0mhT3D88arlg%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b9c8856b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 4072\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":4072,"size_decoded":4834,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"f7e3dbac7e2dfe45244860496f98130f","sha1":"1ecbd3c1a27ad4270e3631602fd2c2bbcf687c4b","sha256":"ed22618ec1fb4c1bbc589928def12771d8fb05d9b70289b021267d9be514a303","sha512":"36244cb835827ebf5c16f3e58837b9f403ab0315f54ba5acc6a41fde6e9d6e2d2600626deabe3949b14ac1a838b4334655b20fd7d51626a4c9d5c4e4770a7cd0","ssdeep":"","tlshash":"44815ce9b1a4f146ef4ca48361f4902595739c40ead42858a4cee41e8f3616e11ed4f5","first_seen":"2024-09-19T20:45:30.963831Z","last_seen":"2026-07-27T13:21:39.089163Z","times_seen":22,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDM2NTVCMjk4NUQ3MTFFOUE0MDRCRUIyMjVGQkIxOTYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDM2NTVCMkE4NUQ3MTFFOUE0MDRCRUIyMjVGQkIxOTYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0MzY1NUIyNzg1RDcxMUU5QTQwNEJFQjIyNUZCQjE5NiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0MzY1NUIyODg1RDcxMUU5QTQwNEJFQjIyNUZCQjE5NiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PlJRZlEAAAxcSURBVHja7Ft7kBTF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"}},"time_used":15,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":15,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/featuredicon6.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.577Z","timestamp":1785158432577,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/featuredicon6.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=f8aiTX0gvpeaEdYr1TAs4OS9vTuv97CZEEICjf9OR0CBe%2BiOBOJ0esTFHqhOlkIkTbPQPWgWB5E%2ByWWMnw%2BwIVVNvYa0us6r6LBcS2FceSZabnd44D4CiT62lH7RPhBTgs%2FN2w%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b9c8956b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 6418\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":6418,"size_decoded":7182,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"1e8e8783bffb2ef4ef8633285eda104c","sha1":"0b4a4f671de998556dafb3c352dddac1e4f7bd2d","sha256":"bfeaad71f0c5189bf6426bcfaee5e85c563b53eeacc422403db281ffe34305df","sha512":"1491cd35c35601223200fac8f4e6037eb5c45f03f041cc934fbc6a1f868113ce21467403d8592773ce899182ca336bd5346af432b85815a240feb48e46078162","ssdeep":"96:PY20DFmuIkftGrL6KNBZjDmesd6j+lGmVvG3MQMARXvitH4evn9ip/o5ojlILNz+:POFHGrLbmesd6j+lGmo3BOGpo5ysV+","tlshash":"ccd18e6877f907919001185314f6a13dd9aa0f64dbf0b726cdb18e3facb62c854b85d2","first_seen":"2024-09-19T20:45:30.98836Z","last_seen":"2026-07-27T13:21:39.082768Z","times_seen":22,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NERFQzBDQjY4NUQ3MTFFOTlGQ0VCNDY1ODNFNDYxNjMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NERFQzBDQjc4NUQ3MTFFOTlGQ0VCNDY1ODNFNDYxNjMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0REVDMENCNDg1RDcxMUU5OUZDRUI0NjU4M0U0NjE2MyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0REVDMENCNTg1RDcxMUU5OUZDRUI0NjU4M0U0NjE2MyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PoylLGMAABWGSURBVHja3Ft5fBRF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"}},"time_used":18,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":18,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/featuredboxbg.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.836Z","timestamp":1785158432836,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/featuredboxbg.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/styles/custom.css\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=4,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:32 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23159\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=H7NocVDvbG1C5DIkGAws6iIF3EGNVXVbQIgrVOd0PpMY4tV7RJ%2BFBksK2fUlxMV6cseViqunesgc0IivFyhSAZ%2FdSwXabvhQ5ULpU5%2Bo9FN114Hjlfevwduv0yykPetJnEQPIA%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12d4ca456b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 20167\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]}],"data":{"size":20167,"size_decoded":20930,"mime_type":"image/png","magic":"PNG image data, 456 x 273, 8-bit/color RGBA, non-interlaced","md5":"3b7a50adc96f5b582e314982c35e30cc","sha1":"5d55e744c1148ea154e722238de9e76c4f4b8c43","sha256":"6f06291677cc774d902a5f35adb6f19bd8d1733eddaa11d9e6610d68717e9cbd","sha512":"c4787cec780732e32dd45752282d2a04fee4a3a10cbe41ec586fb2ef5bbaca468ff4009da7c0545fe9a907b8fffbf5c1d88e0148ec3959dc7783998c7af698a2","ssdeep":"384:jMrqUO2IQQET5iaRsEO1VwO1PHrzOGgPNZPPjT+Sot4Z:jMrjOL+FxsEOM9PNJjTRmc","tlshash":"8692d19eeac56263e17df0643294eaa3b8610dea05b09b70a307cc6149840b96576ca7","first_seen":"2024-09-19T20:45:31.023228Z","last_seen":"2026-07-27T13:21:39.10291Z","times_seen":18,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAcgAAAERCAYAAAD/kDcNAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NEU2MzVFNEU4NjBEMTFFOUJBNTVDODdCRDcwRUM2ODkiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NEU2MzVFNEY4NjBEMTFFOUJBNTVDODdCRDcwRUM2ODkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0RTYzNUU0Qzg2MEQxMUU5QkE1NUM4N0JENzBFQzY4OSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0RTYzNUU0RDg2MEQxMUU5QkE1NUM4N0JENzBFQzY4OSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pnd/uYMAAEs7SURBVHja7J0JlF1V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"}},"time_used":34,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":34,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coin-images.coingecko.com/coins/images/738/large/CG_EOS_Icon.png?1731705232","fqdn":"coin-images.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"172.67.142.173","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.041Z","timestamp":1785158433041,"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":"coin-images.coingecko.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 11 Jun 2026 22:42:48 GMT","end":"Wed, 09 Sep 2026 23:41:15 GMT"},"fingerprint":{"sha1":"7A:6C:D0:D5:FD:4F:F2:F6:0E:21:8F:DB:FC:C2:6A:FB:03:26:BA:A8","sha256":"8F:4C:5D:49:64:66:ED:34:00:50:8C:D4:D9:03:C8:38:40:42:53:9D:67:B3:CD:AA:9E:0E:D5:41:02:8E:46:BA"}}},"request":{"raw":"GET /coins/images/738/large/CG_EOS_Icon.png?1731705232 HTTP/1.1\r\nHost: coin-images.coingecko.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nx-amz-id-2: j4JbaE+1OAQ01dbRmtoaMgm5FE8oW+TAjdRBLrOHM6QgcK7n90ny8IZZ73Q6G3ILfkzHZOgLmMg=\r\nx-amz-request-id: KH85E3PFM52W5MF7\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\nx-amz-replication-status: REPLICA\r\nlast-modified: Fri, 15 Nov 2024 21:13:55 GMT\r\netag: \"e57d503851189addb2768cf2c838a64d\"\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: 1WzZRILTVssxSmYKEl54vLexpATuWM8L\r\naccept-ranges: bytes\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\nserver: cloudflare\r\nage: 1377\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=m64e4iMQphGw8P29LTykYL%2FNaFQLU%2Fcip4h4u%2BqWHFQDV12MUZAPTI7gIbUmjAcK%2BwTmM9sNmClEvTITYclCb3jJ2AzofCi5En9gOvNJjyx71veaLExTWb%2Beo6U75xjxYpXJhsI2SpVS5FCL\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\npriority: u=4,i\r\ncf-ray: a21bf12e9ec549c5-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 24537\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":24537,"size_decoded":25490,"mime_type":"image/png","magic":"PNG image data, 250 x 250, 8-bit/color RGBA, non-interlaced","md5":"e57d503851189addb2768cf2c838a64d","sha1":"9e549bcc32f84550061ad391348c883f900f208c","sha256":"16bd234f9403281e3bcf1eaa6d291b47c6b051926b942e7790e9ca114bcaf511","sha512":"a2b016e9c4b77bee3c47f4d47b3377aa178fa35e961eb4abcdcf7579bf9c20a0557a350858a7e99760d66f20c12f222352be0ae9482542785d56a2b512d0c587","ssdeep":"384:IrUUKAlDpY+iqWepCiwr4bAoMKJTGa+YQAi9bUxAivP5z9SHb2hhMlRepSTtIvQq:IRPfTWeLwbOr+Yqbr+z92bp5+oq","tlshash":"85b2e053bfa045652f998c7090bbc24637f78f81d55e0e8acabd192c7fa72c451d720a","first_seen":"2024-11-25T11:23:20.548553Z","last_seen":"2026-08-16T04:04:35.758218Z","times_seen":1206,"resource_available":false,"data":"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"}},"time_used":20,"timings":{"blocked":1,"dns":0,"connect":0,"send":0,"wait":11,"receive":8,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coin-images.coingecko.com/coins/images/44/large/xrp-symbol-white-128.png?1696501442","fqdn":"coin-images.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"172.67.142.173","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.042Z","timestamp":1785158433042,"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":"coin-images.coingecko.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 11 Jun 2026 22:42:48 GMT","end":"Wed, 09 Sep 2026 23:41:15 GMT"},"fingerprint":{"sha1":"7A:6C:D0:D5:FD:4F:F2:F6:0E:21:8F:DB:FC:C2:6A:FB:03:26:BA:A8","sha256":"8F:4C:5D:49:64:66:ED:34:00:50:8C:D4:D9:03:C8:38:40:42:53:9D:67:B3:CD:AA:9E:0E:D5:41:02:8E:46:BA"}}},"request":{"raw":"GET /coins/images/44/large/xrp-symbol-white-128.png?1696501442 HTTP/1.1\r\nHost: coin-images.coingecko.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nx-amz-id-2: LhtraOG7O4UusfqU2hQ4IeHSHd5E+50CaXu/khwf7tzERv9LBjLjPZMC3vkJWnsQMXox5GWSzdFtfdy5sDGIo5d7Zgu9A1rp\r\nx-amz-request-id: 5X2HY92B73H4G8W0\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\nx-amz-replication-status: COMPLETED\r\nlast-modified: Wed, 29 May 2024 02:58:49 GMT\r\netag: \"8c9a8c477f324c88cead49db9a5fc1a2\"\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: dvTdjQhaHPc3d2gEiPjuvrzI.pMVPEqU\r\naccept-ranges: bytes\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\nserver: cloudflare\r\nage: 5867\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=tOSm4Ng769GrC5DVmiK74Rcy5b5xYmZEHAMMrSumhGXTTH2hq%2Bl9JjoVgbNvC%2FjKJJr06Coyrdyf1dXTmGcui7jnaDnP4%2FHRhqO2kfM%2F7wGYb19YoB%2BPL6xi2jmQ3glGQ6xbnVUEFnPzvFI%2B\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\npriority: u=4,i\r\ncf-ray: a21bf12e9ec749c5-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 12328\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":12328,"size_decoded":13305,"mime_type":"image/png","magic":"PNG image data, 250 x 250, 8-bit/color RGBA, non-interlaced","md5":"8c9a8c477f324c88cead49db9a5fc1a2","sha1":"8a8a7c615c7f00893e4c3374ad134581a053c8ce","sha256":"3672b3785d85e582ef497a6588dbe75cef4c60f982f678549f309fe784400a2b","sha512":"849e4018007f9b5406d4910a2da39689fcf847bce6f8586c7db389066af1efaf9ae8ae5bd374401b285d988a16fc2480be1e813a6ae3e2af78f485efa523fab4","ssdeep":"384:BFv36FCrffjNiI0gXcwWIzS3qJ+GmJQauo:jIqaGK3qJGbuo","tlshash":"56429d3b1465c94a4b535f7ec1ed4bb386f31224cdf224e69d781a02db0e61a2f390da","first_seen":"2024-07-06T20:02:44Z","last_seen":"2026-08-17T16:26:08.470326Z","times_seen":1830,"resource_available":false,"data":"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"}},"time_used":19,"timings":{"blocked":1,"dns":0,"connect":0,"send":0,"wait":11,"receive":7,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/turbopack-18a9de512a1933ad.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.129Z","timestamp":1785158433129,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/turbopack-18a9de512a1933ad.js HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: *\r\nage: 2273820\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"turbopack-18a9de512a1933ad.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\netag: W/\"ee874107586f9203ea70e460428f2bb3\"\r\nlast-modified: Tue, 30 Jun 2026 21:36:51 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/turbopack-18a9de512a1933ad.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::224xg-1782884613047-36a6958ca2eb\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=yleckBk3IvxvHvKWtBMMifwgAYDafqsBdjHOrM82npf5TpFKJNZcP4qmOD8CqiyNueN0YSpJMlyo1zXvkVTOhtvEEUYqLG94WqznYrcW60hI61OgTNCAnhI6crrS\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21bf12f183756b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":10707,"size_decoded":6484,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (6438)","md5":"ee874107586f9203ea70e460428f2bb3","sha1":"9bfba653884c0499149072efe4824e6170f10271","sha256":"44b3081e3a644e21b57f4155637e1e43563eae2c0f034c6ba9edd6bc9cba26ea","sha512":"7fd5fb8b487d8981ead132093abf93b51a77860cb1d04cd5c233c3e671b7183921080069aac71afb4f5f77a424d02ccdea22e3feba459326eea86d1c6637a09b","ssdeep":"192:D74eFn8/Esp1U91EG5T1uyO9lGdiwMhMlng4W9PZcxkUk1IsiyLxA:D74e2OvO9lG0OlgJZZQLyLxA","tlshash":"6722d8ea33a6f07743af94e6907f4044f1795468145d542c936ce8fa38398ae49e3f27","first_seen":"2026-07-01T05:10:22.643373Z","last_seen":"2026-07-31T06:34:35.53001Z","times_seen":1526,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLHtvdGhlckNodW5rczpbInN0YXRpYy9jaHVua3MvODFhMjk4ZGRjNzQ3MTA3MC5qcyIsInN0YXRpYy9jaHVua3MvOWRmM2I2N2I2MDYxZWE5ZS5qcyIsInN0YXRpYy9jaHVua3MvNDgwY2RlMDhiOGJmZDVjZS5qcyIsInN0YXRpYy9jaHVua3MvNDkxMTQxMGU1MTUzZjBkNy5qcyIsInN0YXRpYy9jaHVua3MvNDgxNWE3NTg2NTdkNGJhZS5qcyJdLHJ1bnRpbWVNb2R1bGVJZHM6Wzk2MzM1XX1dKSwoKCk9PntsZXQgZTtpZighQXJyYXkuaXNBcnJheShnbG9iYWxUaGlzLlRVUkJPUEFDSykpcmV0dXJuO2xldCB0PSIvX25leHQvIixyPShzZWxmLlRVUkJPUEFDS19DSFVOS19TVUZGSVg/P2RvY3VtZW50Py5jdXJyZW50U2NyaXB0Py5nZXRBdHRyaWJ1dGU/Ligic3JjIik/LnJlcGxhY2UoL14oLiooPz1cPyl8Xi4qJCkvLCIiKSl8fCIiLG49bmV3IFdlYWtNYXA7ZnVuY3Rpb24gbyhlLHQpe3RoaXMubT1lLHRoaXMuZT10fWxldCBsPW8ucHJvdG90eXBlLGk9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxzPSJ1Ij50eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWc7ZnVuY3Rpb24gdShlLHQscil7aS5jYWxsKGUsdCl8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQscil9ZnVuY3Rpb24gYShlLHQpe2xldCByPWVbdF07cmV0dXJuIHJ8fChyPWModCksZVt0XT1yKSxyfWZ1bmN0aW9uIGMoZSl7cmV0dXJue2V4cG9ydHM6e30sZXJyb3I6dm9pZCAwLGlkOmUsbmFtZXNwYWNlT2JqZWN0OnZvaWQgMH19ZnVuY3Rpb24gZihlLHQpe3UoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSkscyYmdShlLHMse3ZhbHVlOiJNb2R1bGUifSk7bGV0IHI9MDtmb3IoO3I8dC5sZW5ndGg7KXtsZXQgbj10W3IrK10sbz10W3IrK107aWYoIm51bWJlciI9PXR5cGVvZiBvKWlmKDA9PT1vKXUoZSxuLHt2YWx1ZTp0W3IrK10sZW51bWVyYWJsZTohMCx3cml0YWJsZTohMX0pO2Vsc2UgdGhyb3cgRXJyb3IoYHVuZXhwZWN0ZWQgdGFnOiAke299YCk7ZWxzZSJmdW5jdGlvbiI9PXR5cGVvZiB0W3JdP3UoZSxuLHtnZXQ6byxzZXQ6dFtyKytdLGVudW1lcmFibGU6ITB9KTp1KGUsbix7Z2V0Om8sZW51bWVyYWJsZTohMH0pfU9iamVjdC5zZWFsKGUpfWwucz1mdW5jdGlvbihlLHQpe2xldCByLG47bnVsbCE9dD9uPShyPWEodGhpcy5jLHQpKS5leHBvcnRzOihyPXRoaXMubSxuPXRoaXMuZSksci5uYW1lc3BhY2VPYmplY3Q9bixmKG4sZSl9LGwuaj1mdW5jdGlvbihlLHQpe3ZhciByLG87bGV0IGwscyx1O251bGwhPXQ/cz0obD1hKHRoaXMuYyx0KSkuZXhwb3J0czoobD10aGlzLm0scz10aGlzLmUpO2xldCBjPShyPWwsbz1zLCh1PW4uZ2V0KHIpKXx8KG4uc2V0KHIsdT1bXSksci5leHBvcnRzPXIubmFtZXNwYWNlT2JqZWN0PW5ldyBQcm94eShvLHtnZXQoZSx0KXtpZihpLmNhbGwoZSx0KXx8ImRlZmF1bHQiPT09dHx8Il9fZXNNb2R1bGUiPT09dClyZXR1cm4gUmVmbGVjdC5nZXQoZSx0KTtmb3IobGV0IGUgb2YgdSl7bGV0IHI9UmVmbGVjdC5nZXQoZSx0KTtpZih2b2lkIDAhPT1yKXJldHVybiByfX0sb3duS2V5cyhlKXtsZXQgdD1SZWZsZWN0Lm93bktleXMoZSk7Zm9yKGxldCBlIG9mIHUpZm9yKGxldCByIG9mIFJlZmxlY3Qub3duS2V5cyhlKSkiZGVmYXVsdCI9PT1yfHx0LmluY2x1ZGVzKHIpfHx0LnB1c2gocik7cmV0dXJuIHR9fSkpLHUpOyJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJmMucHVzaChlKX0sbC52PWZ1bmN0aW9uKGUsdCl7KG51bGwhPXQ/YSh0aGlzLmMsdCk6dGhpcy5tKS5leHBvcnRzPWV9LGwubj1mdW5jdGlvbihlLHQpe2xldCByOyhyPW51bGwhPXQ/YSh0aGlzLmMsdCk6dGhpcy5tKS5leHBvcnRzPXIubmFtZXNwYWNlT2JqZWN0PWV9O2xldCBwPU9iamVjdC5nZXRQcm90b3R5cGVPZj9lPT5PYmplY3QuZ2V0UHJvdG90eXBlT2YoZSk6ZT0+ZS5fX3Byb3RvX18saD1bbnVsbCxwKHt9KSxwKFtdKSxwKHApXTtmdW5jdGlvbiBkKGUsdCxyKXtsZXQgbj1bXSxvPS0xO2ZvcihsZXQgdD1lOygib2JqZWN0Ij09dHlwZW9mIHR8fCJmdW5jdGlvbiI9PXR5cGVvZiB0KSYmIWguaW5jbHVkZXModCk7dD1wKHQpKWZvcihsZXQgciBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0KSluLnB1c2gocixmdW5jdGlvbihlLHQpe3JldHVybigpPT5lW3RdfShlLHIpKSwtMT09PW8mJiJkZWZhdWx0Ij09PXImJihvPW4ubGVuZ3RoLTEpO3JldHVybiByJiZvPj0wfHwobz49MD9uLnNwbGljZShvLDEsMCxlKTpuLnB1c2goImRlZmF1bHQiLDAsZSkpLGYodCxuKSx0fWZ1bmN0aW9uIG0oZSl7bGV0IHQ9QihlLHRoaXMubSk7aWYodC5uYW1lc3BhY2VPYmplY3QpcmV0dXJuIHQubmFtZXNwYWNlT2JqZWN0O2xldCByPXQuZXhwb3J0cztyZXR1cm4gdC5uYW1lc3BhY2VPYmplY3Q9ZChyLCJmdW5jdGlvbiI9PXR5cGVvZiByP2Z1bmN0aW9uKC4uLmUpe3JldHVybiByLmFwcGx5KHRoaXMsZSl9Ok9iamVjdC5jcmVhdGUobnVsbCksciYmci5fX2VzTW9kdWxlKX1mdW5jdGlvbiBiKGUpe2xldCB0PWUuaW5kZXhPZigiIyIpOy0xIT09dCYmKGU9ZS5zdWJzdHJpbmcoMCx0KSk7bGV0IHI9ZS5pbmRleE9mKCI/Iik7cmV0dXJuIC0xIT09ciYmKGU9ZS5zdWJzdHJpbmcoMCxyKSksZX1mdW5jdGlvbiB5KCl7bGV0IGUsdDtyZXR1cm57cHJvbWlzZTpuZXcgUHJvbWlzZSgocixuKT0+e3Q9bixlPXJ9KSxyZXNvbHZlOmUscmVqZWN0OnR9fWwuaT1tLGwuQT1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5yKGUpKG0uYmluZCh0aGlzKSl9LGwudD0iZnVuY3Rpb24iPT10eXBlb2YgcmVxdWlyZT9yZXF1aXJlOmZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoIlVuZXhwZWN0ZWQgdXNlIG9mIHJ1bnRpbWUgcmVxdWlyZSIpfSxsLnI9ZnVuY3Rpb24oZSl7cmV0dXJuIEIoZSx0aGlzLm0pLmV4cG9ydHN9LGwuZj1mdW5jdGlvbihlKXtmdW5jdGlvbiB0KHQpe2lmKHQ9Yih0KSxpLmNhbGwoZSx0KSlyZXR1cm4gZVt0XS5tb2R1bGUoKTtsZXQgcj1FcnJvcihgQ2Fubm90IGZpbmQgbW9kdWxlICcke3R9J2ApO3Rocm93IHIuY29kZT0iTU9EVUxFX05PVF9GT1VORCIscn1yZXR1cm4gdC5rZXlzPSgpPT5PYmplY3Qua2V5cyhlKSx0LnJlc29sdmU9dD0+e2lmKHQ9Yih0KSxpLmNhbGwoZSx0KSlyZXR1cm4gZVt0XS5pZCgpO2xldCByPUVycm9yKGBDYW5ub3QgZmluZCBtb2R1bGUgJyR7dH0nYCk7dGhyb3cgci5jb2RlPSJNT0RVTEVfTk9UX0ZPVU5EIixyfSx0LmltcG9ydD1hc3luYyBlPT5hd2FpdCB0KGUpLHR9O2xldCBPPVN5bWJvbCgidHVyYm9wYWNrIHF1ZXVlcyIpLGc9U3ltYm9sKCJ0dXJib3BhY2sgZXhwb3J0cyIpLHc9U3ltYm9sKCJ0dXJib3BhY2sgZXJyb3IiKTtmdW5jdGlvbiBDKGUpe2UmJjEhPT1lLnN0YXR1cyYmKGUuc3RhdHVzPTEsZS5mb3JFYWNoKGU9PmUucXVldWVDb3VudC0tKSxlLmZvckVhY2goZT0+ZS5xdWV1ZUNvdW50LS0/ZS5xdWV1ZUNvdW50Kys6ZSgpKSl9bC5hPWZ1bmN0aW9uKGUsdCl7bGV0IHI9dGhpcy5tLG49dD9PYmplY3QuYXNzaWduKFtdLHtzdGF0dXM6LTF9KTp2b2lkIDAsbz1uZXcgU2V0LHtyZXNvbHZlOmwscmVqZWN0OmkscHJvbWlzZTpzfT15KCksdT1PYmplY3QuYXNzaWduKHMse1tnXTpyLmV4cG9ydHMsW09dOmU9PntuJiZlKG4pLG8uZm9yRWFjaChlKSx1LmNhdGNoKCgpPT57fSl9fSksYT17Z2V0OigpPT51LHNldChlKXtlIT09dSYmKHVbZ109ZSl9fTtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiZXhwb3J0cyIsYSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIm5hbWVzcGFjZU9iamVjdCIsYSksZShmdW5jdGlvbihlKXtsZXQgdD1lLm1hcChlPT57aWYobnVsbCE9PWUmJiJvYmplY3QiPT10eXBlb2YgZSl7aWYoTyBpbiBlKXJldHVybiBlO2lmKG51bGwhPWUmJiJvYmplY3QiPT10eXBlb2YgZSYmInRoZW4iaW4gZSYmImZ1bmN0aW9uIj09dHlwZW9mIGUudGhlbil7bGV0IHQ9T2JqZWN0LmFzc2lnbihbXSx7c3RhdHVzOjB9KSxyPXtbZ106e30sW09dOmU9PmUodCl9O3JldHVybiBlLnRoZW4oZT0+e3JbZ109ZSxDKHQpfSxlPT57clt3XT1lLEModCl9KSxyfX1yZXR1cm57W2ddOmUsW09dOigpPT57fX19KSxyPSgpPT50Lm1hcChlPT57aWYoZVt3XSl0aHJvdyBlW3ddO3JldHVybiBlW2ddfSkse3Byb21pc2U6bCxyZXNvbHZlOml9PXkoKSxzPU9iamVjdC5hc3NpZ24oKCk9Pmkocikse3F1ZXVlQ291bnQ6MH0pO2Z1bmN0aW9uIHUoZSl7ZSE9PW4mJiFvLmhhcyhlKSYmKG8uYWRkKGUpLGUmJjA9PT1lLnN0YXR1cyYmKHMucXVldWVDb3VudCsrLGUucHVzaChzKSkpfXJldHVybiB0Lm1hcChlPT5lW09dKHUpKSxzLnF1ZXVlQ291bnQ/bDpyKCl9LGZ1bmN0aW9uKGUpe2U/aSh1W3ddPWUpOmwodVtnXSksQyhuKX0pLG4mJi0xPT09bi5zdGF0dXMmJihuLnN0YXR1cz0wKX07bGV0IFU9ZnVuY3Rpb24oZSl7bGV0IHQ9bmV3IFVSTChlLCJ4Oi8iKSxyPXt9O2ZvcihsZXQgZSBpbiB0KXJbZV09dFtlXTtmb3IobGV0IHQgaW4gci5ocmVmPWUsci5wYXRobmFtZT1lLnJlcGxhY2UoL1s/I10uKi8sIiIpLHIub3JpZ2luPXIucHJvdG9jb2w9IiIsci50b1N0cmluZz1yLnRvSlNPTj0oLi4udCk9PmUscilPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcyx0LHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx2YWx1ZTpyW3RdfSl9O2Z1bmN0aW9uIGooZSx0KXt0aHJvdyBFcnJvcihgSW52YXJpYW50OiAke3QoZSl9YCl9VS5wcm90b3R5cGU9VVJMLnByb3RvdHlwZSxsLlU9VSxsLno9ZnVuY3Rpb24oZSl7dGhyb3cgRXJyb3IoImR5bmFtaWMgdXNhZ2Ugb2YgcmVxdWlyZSBpcyBub3Qgc3VwcG9ydGVkIil9LGwuZz1nbG9iYWxUaGlzO2xldCBSPW8ucHJvdG90eXBlO3ZhciBrLF89KChrPV98fHt9KVtrLlJ1bnRpbWU9MF09IlJ1bnRpbWUiLGtbay5QYXJlbnQ9MV09IlBhcmVudCIsa1trLlVwZGF0ZT0yXT0iVXBkYXRlIixrKTtsZXQgdj1uZXcgTWFwO2wuTT12O2xldCAkPW5ldyBNYXAsUD1uZXcgTWFwO2FzeW5jIGZ1bmN0aW9uIFMoZSx0LHIpe2xldCBuO2lmKCJzdHJpbmciPT10eXBlb2YgcilyZXR1cm4gRShlLHQsSyhyKSk7bGV0IG89ci5pbmNsdWRlZHx8W10sbD1vLm1hcChlPT4hIXYuaGFzKGUpfHwkLmdldChlKSk7aWYobC5sZW5ndGg+MCYmbC5ldmVyeShlPT5lKSlyZXR1cm4gdm9pZCBhd2FpdCBQcm9taXNlLmFsbChsKTtsZXQgaT1yLm1vZHVsZUNodW5rc3x8W10scz1pLm1hcChlPT5QLmdldChlKSkuZmlsdGVyKGU9PmUpO2lmKHMubGVuZ3RoPjApe2lmKHMubGVuZ3RoPT09aS5sZW5ndGgpcmV0dXJuIHZvaWQgYXdhaXQgUHJvbWlzZS5hbGwocyk7bGV0IHI9bmV3IFNldDtmb3IobGV0IGUgb2YgaSlQLmhhcyhlKXx8ci5hZGQoZSk7Zm9yKGxldCBuIG9mIHIpe2xldCByPUUoZSx0LEsobikpO1Auc2V0KG4scikscy5wdXNoKHIpfW49UHJvbWlzZS5hbGwocyl9ZWxzZXtmb3IobGV0IG8gb2Yobj1FKGUsdCxLKHIucGF0aCkpLGkpKVAuaGFzKG8pfHxQLnNldChvLG4pfWZvcihsZXQgZSBvZiBvKSQuaGFzKGUpfHwkLnNldChlLG4pO2F3YWl0IG59Ui5sPWZ1bmN0aW9uKGUpe3JldHVybiBTKDEsdGhpcy5tLmlkLGUpfTtsZXQgVD1Qcm9taXNlLnJlc29sdmUodm9pZCAwKSxBPW5ldyBXZWFrTWFwO2Z1bmN0aW9uIEUodCxyLG4pe2xldCBvPWUubG9hZENodW5rQ2FjaGVkKHQsbiksbD1BLmdldChvKTtpZih2b2lkIDA9PT1sKXtsZXQgZT1BLnNldC5iaW5kKEEsbyxUKTtsPW8udGhlbihlKS5jYXRjaChlPT57bGV0IG87c3dpdGNoKHQpe2Nhc2UgMDpvPWBhcyBhIHJ1bnRpbWUgZGVwZW5kZW5jeSBvZiBjaHVuayAke3J9YDticmVhaztjYXNlIDE6bz1gZnJvbSBtb2R1bGUgJHtyfWA7YnJlYWs7Y2FzZSAyOm89ImZyb20gYW4gSE1SIHVwZGF0ZSI7YnJlYWs7ZGVmYXVsdDpqKHQsZT0+YFVua25vd24gc291cmNlIHR5cGU6ICR7ZX1gKX1sZXQgbD1FcnJvcihgRmFpbGVkIHRvIGxvYWQgY2h1bmsgJHtufSAke299JHtlP2A6ICR7ZX1gOiIifWAsZT97Y2F1c2U6ZX06dm9pZCAwKTt0aHJvdyBsLm5hbWU9IkNodW5rTG9hZEVycm9yIixsfSksQS5zZXQobyxsKX1yZXR1cm4gbH1mdW5jdGlvbiBLKGUpe3JldHVybmAke3R9JHtlLnNwbGl0KCIvIikubWFwKGU9PmVuY29kZVVSSUNvbXBvbmVudChlKSkuam9pbigiLyIpfSR7cn1gfVIuTD1mdW5jdGlvbihlKXtyZXR1cm4gRSgxLHRoaXMubS5pZCxlKX0sUi5SPWZ1bmN0aW9uKGUpe2xldCB0PXRoaXMucihlKTtyZXR1cm4gdD8uZGVmYXVsdD8/dH0sUi5QPWZ1bmN0aW9uKGUpe3JldHVybmAvUk9PVC8ke2U/PyIifWB9LFIuYj1mdW5jdGlvbihlKXtsZXQgdD1uZXcgQmxvYihbYHNlbGYuVFVSQk9QQUNLX1dPUktFUl9MT0NBVElPTiA9ICR7SlNPTi5zdHJpbmdpZnkobG9jYXRpb24ub3JpZ2luKX07CnNlbGYuVFVSQk9QQUNLX0NIVU5LX1NVRkZJWCA9ICR7SlNPTi5zdHJpbmdpZnkocil9OwpzZWxmLlRVUkJPUEFDS19ORVhUX0NIVU5LX1VSTFMgPSAke0pTT04uc3RyaW5naWZ5KGUucmV2ZXJzZSgpLm1hcChLKSxudWxsLDIpfTsKaW1wb3J0U2NyaXB0cyguLi5zZWxmLlRVUkJPUEFDS19ORVhUX0NIVU5LX1VSTFMubWFwKGMgPT4gc2VsZi5UVVJCT1BBQ0tfV09SS0VSX0xPQ0FUSU9OICsgYykucmV2ZXJzZSgpKTtgXSx7dHlwZToidGV4dC9qYXZhc2NyaXB0In0pO3JldHVybiBVUkwuY3JlYXRlT2JqZWN0VVJMKHQpfTtsZXQgeD0vXC5qcyg/Olw/W14jXSopPyg/OiMuKik/JC8sTj0vXC5jc3MoPzpcP1teI10qKT8oPzojLiopPyQvO2Z1bmN0aW9uIE0oZSl7cmV0dXJuIE4udGVzdChlKX1sLnc9ZnVuY3Rpb24odCxyLG4pe3JldHVybiBlLmxvYWRXZWJBc3NlbWJseSgxLHRoaXMubS5pZCx0LHIsbil9LGwudT1mdW5jdGlvbih0LHIpe3JldHVybiBlLmxvYWRXZWJBc3NlbWJseU1vZHVsZSgxLHRoaXMubS5pZCx0LHIpfTtsZXQgTD17fTtsLmM9TDtsZXQgQj0oZSx0KT0+e2xldCByPUxbZV07aWYocil7aWYoci5lcnJvcil0aHJvdyByLmVycm9yO3JldHVybiByfXJldHVybiBxKGUsXy5QYXJlbnQsdC5pZCl9O2Z1bmN0aW9uIHEoZSx0LHIpe2xldCBuPXYuZ2V0KGUpO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBuKXRocm93IEVycm9yKGZ1bmN0aW9uKGUsdCxyKXtsZXQgbjtzd2l0Y2godCl7Y2FzZSAwOm49YGFzIGEgcnVudGltZSBlbnRyeSBvZiBjaHVuayAke3J9YDticmVhaztjYXNlIDE6bj1gYmVjYXVzZSBpdCB3YXMgcmVxdWlyZWQgZnJvbSBtb2R1bGUgJHtyfWA7YnJlYWs7Y2FzZSAyOm49ImJlY2F1c2Ugb2YgYW4gSE1SIHVwZGF0ZSI7YnJlYWs7ZGVmYXVsdDpqKHQsZT0+YFVua25vd24gc291cmNlIHR5cGU6ICR7ZX1gKX1yZXR1cm5gTW9kdWxlICR7ZX0gd2FzIGluc3RhbnRpYXRlZCAke259LCBidXQgdGhlIG1vZHVsZSBmYWN0b3J5IGlzIG5vdCBhdmFpbGFibGUuYH0oZSx0LHIpKTtsZXQgbD1jKGUpLGk9bC5leHBvcnRzO0xbZV09bDtsZXQgcz1uZXcgbyhsLGkpO3RyeXtuKHMsbCxpKX1jYXRjaChlKXt0aHJvdyBsLmVycm9yPWUsZX1yZXR1cm4gbC5uYW1lc3BhY2VPYmplY3QmJmwuZXhwb3J0cyE9PWwubmFtZXNwYWNlT2JqZWN0JiZkKGwuZXhwb3J0cyxsLm5hbWVzcGFjZU9iamVjdCksbH1mdW5jdGlvbiBJKHIpe2xldCBuLG89ZnVuY3Rpb24oZSl7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlO2xldCByPWRlY29kZVVSSUNvbXBvbmVudCgoInUiPnR5cGVvZiBUVVJCT1BBQ0tfTkVYVF9DSFVOS19VUkxTP1RVUkJPUEFDS19ORVhUX0NIVU5LX1VSTFMucG9wKCk6ZS5nZXRBdHRyaWJ1dGUoInNyYyIpKS5yZXBsYWNlKC9bPyNdLiokLywiIikpO3JldHVybiByLnN0YXJ0c1dpdGgodCk/ci5zbGljZSh0Lmxlbmd0aCk6cn0oclswXSk7cmV0dXJuIDI9PT1yLmxlbmd0aD9uPXJbMV06KG49dm9pZCAwLCFmdW5jdGlvbihlLHQscixuKXtsZXQgbz0xO2Zvcig7bzxlLmxlbmd0aDspe2xldCB0PWVbb10sbj1vKzE7Zm9yKDtuPGUubGVuZ3RoJiYiZnVuY3Rpb24iIT10eXBlb2YgZVtuXTspbisrO2lmKG49PT1lLmxlbmd0aCl0aHJvdyBFcnJvcigibWFsZm9ybWVkIGNodW5rIGZvcm1hdCwgZXhwZWN0ZWQgYSBmYWN0b3J5IGZ1bmN0aW9uIik7aWYoIXIuaGFzKHQpKXtsZXQgbD1lW25dO2ZvcihPYmplY3QuZGVmaW5lUHJvcGVydHkobCwibmFtZSIse3ZhbHVlOiJtb2R1bGUgZXZhbHVhdGlvbiJ9KTtvPG47bysrKXQ9ZVtvXSxyLnNldCh0LGwpfW89bisxfX0ociwwLHYpKSxlLnJlZ2lzdGVyQ2h1bmsobyxuKX1sZXQgVz1uZXcgTWFwO2Z1bmN0aW9uIEgoZSl7bGV0IHQ9Vy5nZXQoZSk7aWYoIXQpe2xldCByLG47dD17cmVzb2x2ZWQ6ITEsbG9hZGluZ1N0YXJ0ZWQ6ITEscHJvbWlzZTpuZXcgUHJvbWlzZSgoZSx0KT0+e3I9ZSxuPXR9KSxyZXNvbHZlOigpPT57dC5yZXNvbHZlZD0hMCxyKCl9LHJlamVjdDpufSxXLnNldChlLHQpfXJldHVybiB0fWU9e2FzeW5jIHJlZ2lzdGVyQ2h1bmsoZSx0KXtpZihIKEsoZSkpLnJlc29sdmUoKSxudWxsIT10KXtmb3IobGV0IGUgb2YgdC5vdGhlckNodW5rcylIKEsoInN0cmluZyI9PXR5cGVvZiBlP2U6ZS5wYXRoKSk7aWYoYXdhaXQgUHJvbWlzZS5hbGwodC5vdGhlckNodW5rcy5tYXAodD0+UygwLGUsdCkpKSx0LnJ1bnRpbWVNb2R1bGVJZHMubGVuZ3RoPjApZm9yKGxldCByIG9mIHQucnVudGltZU1vZHVsZUlkcykhZnVuY3Rpb24oZSx0KXtsZXQgcj1MW3RdO2lmKHIpe2lmKHIuZXJyb3IpdGhyb3cgci5lcnJvcjtyZXR1cm59cSh0LF8uUnVudGltZSxlKX0oZSxyKX19LGxvYWRDaHVua0NhY2hlZDooZSx0KT0+KGZ1bmN0aW9uKGUsdCl7bGV0IHI9SCh0KTtpZihyLmxvYWRpbmdTdGFydGVkKXJldHVybiByLnByb21pc2U7aWYoZT09PV8uUnVudGltZSlyZXR1cm4gci5sb2FkaW5nU3RhcnRlZD0hMCxNKHQpJiZyLnJlc29sdmUoKSxyLnByb21pc2U7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGltcG9ydFNjcmlwdHMpaWYoTSh0KSk7ZWxzZSBpZih4LnRlc3QodCkpc2VsZi5UVVJCT1BBQ0tfTkVYVF9DSFVOS19VUkxTLnB1c2godCksaW1wb3J0U2NyaXB0cyhUVVJCT1BBQ0tfV09SS0VSX0xPQ0FUSU9OK3QpO2Vsc2UgdGhyb3cgRXJyb3IoYGNhbid0IGluZmVyIHR5cGUgb2YgY2h1bmsgZnJvbSBVUkwgJHt0fSBpbiB3b3JrZXJgKTtlbHNle2xldCBlPWRlY29kZVVSSSh0KTtpZihNKHQpKWlmKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoYGxpbmtbcmVsPXN0eWxlc2hlZXRdW2hyZWY9IiR7dH0iXSxsaW5rW3JlbD1zdHlsZXNoZWV0XVtocmVmXj0iJHt0fT8iXSxsaW5rW3JlbD1zdHlsZXNoZWV0XVtocmVmPSIke2V9Il0sbGlua1tyZWw9c3R5bGVzaGVldF1baHJlZl49IiR7ZX0/Il1gKS5sZW5ndGg+MClyLnJlc29sdmUoKTtlbHNle2xldCBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpbmsiKTtlLnJlbD0ic3R5bGVzaGVldCIsZS5ocmVmPXQsZS5vbmVycm9yPSgpPT57ci5yZWplY3QoKX0sZS5vbmxvYWQ9KCk9PntyLnJlc29sdmUoKX0sZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChlKX1lbHNlIGlmKHgudGVzdCh0KSl7bGV0IG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChgc2NyaXB0W3NyYz0iJHt0fSJdLHNjcmlwdFtzcmNePSIke3R9PyJdLHNjcmlwdFtzcmM9IiR7ZX0iXSxzY3JpcHRbc3JjXj0iJHtlfT8iXWApO2lmKG4ubGVuZ3RoPjApZm9yKGxldCBlIG9mIEFycmF5LmZyb20obikpZS5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsKCk9PntyLnJlamVjdCgpfSk7ZWxzZXtsZXQgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtlLnNyYz10LGUub25lcnJvcj0oKT0+e3IucmVqZWN0KCl9LGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoZSl9fWVsc2UgdGhyb3cgRXJyb3IoYGNhbid0IGluZmVyIHR5cGUgb2YgY2h1bmsgZnJvbSBVUkwgJHt0fWApfXJldHVybiByLmxvYWRpbmdTdGFydGVkPSEwLHIucHJvbWlzZX0pKGUsdCksYXN5bmMgbG9hZFdlYkFzc2VtYmx5KGUsdCxyLG4sbyl7bGV0IGw9ZmV0Y2goSyhyKSkse2luc3RhbmNlOml9PWF3YWl0IFdlYkFzc2VtYmx5Lmluc3RhbnRpYXRlU3RyZWFtaW5nKGwsbyk7cmV0dXJuIGkuZXhwb3J0c30sYXN5bmMgbG9hZFdlYkFzc2VtYmx5TW9kdWxlKGUsdCxyLG4pe2xldCBvPWZldGNoKEsocikpO3JldHVybiBhd2FpdCBXZWJBc3NlbWJseS5jb21waWxlU3RyZWFtaW5nKG8pfX07bGV0IEY9Z2xvYmFsVGhpcy5UVVJCT1BBQ0s7Z2xvYmFsVGhpcy5UVVJCT1BBQ0s9e3B1c2g6SX0sRi5mb3JFYWNoKEkpfSkoKTsKOyhmdW5jdGlvbigpe2lmKHR5cGVvZiBkb2N1bWVudD09PSJ1bmRlZmluZWQifHwhLyg/Ol58O1xzKV9fdmVyY2VsX3Rvb2xiYXI9MSg/Ojt8JCkvLnRlc3QoZG9jdW1lbnQuY29va2llKSlyZXR1cm47dmFyIHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7cy5zcmM9J2h0dHBzOi8vdmVyY2VsLmxpdmUvX25leHQtbGl2ZS9mZWVkYmFjay9mZWVkYmFjay5qcyc7cy5zZXRBdHRyaWJ1dGUoImRhdGEtZXhwbGljaXQtb3B0LWluIiwidHJ1ZSIpO3Muc2V0QXR0cmlidXRlKCJkYXRhLWNvb2tpZS1vcHQtaW4iLCJ0cnVlIik7cy5zZXRBdHRyaWJ1dGUoImRhdGEtZGVwbG95bWVudC1pZCIsImRwbF9DUUNuSlhHMXJLWk0xazNReERpQjlpMVRtZjY2Iik7KChkb2N1bWVudC5oZWFkfHxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmFwcGVuZENoaWxkKHMpKX0pKCk7"}},"time_used":9,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/favicon.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.307Z","timestamp":1785158433307,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/favicon.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=6\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=6,i=?0\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:33 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23158\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=6t74my2UHyqNDI%2B8rp53reXwrUBKsKnIr%2BHG%2FD6kh2lEoOVl3dv3%2FbtCuc9l69U6UnPH9V9qy6DhJsaBSJPRZH3Q1ZfZauHG%2BdcNCP4oF9uyQQoNlfLURHVUGM7IrB6CUr%2B%2BdA%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf1302cc856b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 3332\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"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":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]}],"data":{"size":3332,"size_decoded":4105,"mime_type":"image/png","magic":"PNG image data, 54 x 54, 8-bit/color RGBA, non-interlaced","md5":"cc532c6b20157c6472f4d36ad07a8f58","sha1":"ba044d0e29db86cabe9fea4deef92012bff25737","sha256":"79fb9cade815344986721738515d3b537cd581b2cc0dab17e726da506ee34abd","sha512":"e443720f971d07e657b6ad3d09d33c7efdbb32c1c402567320f12f59ec8ff2729f635e7b065993f742c4047ce895d263dc1ac51409b99ffc5acece61ffb5ae01","ssdeep":"","tlshash":"0b613b6df9d00881eab418c1a5f592ab9cfb4894a4d5f31827dfdc626d836f08c4e5c3","first_seen":"2024-09-19T20:45:31.035304Z","last_seen":"2026-07-27T13:21:39.091713Z","times_seen":14,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAADYAAAA2CAYAAACMRWrdAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QjQyRjNBNkU4NUQzMTFFOUE5M0Y4OTNENDEyOEY3QjMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QjQyRjNBNkY4NUQzMTFFOUE5M0Y4OTNENDEyOEY3QjMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpCNDJGM0E2Qzg1RDMxMUU5QTkzRjg5M0Q0MTI4RjdCMyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpCNDJGM0E2RDg1RDMxMUU5QTkzRjg5M0Q0MTI4RjdCMyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Ppe1jcEAAAl4SURBVHjazFoNlFRl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"}},"time_used":12,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":12,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/800e836146d6e7eb.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.138Z","timestamp":1785158433138,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/800e836146d6e7eb.js HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: *\r\nage: 4136789\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"800e836146d6e7eb.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\netag: W/\"7b2a7348e5acf7f61cd01b2152c769a6\"\r\nlast-modified: Tue, 09 Jun 2026 16:12:41 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/800e836146d6e7eb.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::dmlt9-1781021643910-30bb6f3b3b82\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=gLCwLYjMutqpaKd6XvIP%2FY6FnnVznIrGZCBzsD%2Fz1FJnihfckN2X5AdgkzVJWl4OtdaU4gE7tRUozbPjJF9OOrJeKZR1aOKyOTwecIoa4rZ%2BAz2lBXwEz%2FfVabe8\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21bf12f283b56b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":19477,"size_decoded":7484,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (16974)","md5":"7b2a7348e5acf7f61cd01b2152c769a6","sha1":"1cc03a4809684838384744113d8a0e0093a62a3a","sha256":"c5bd83f87b5a8d38fee5230c1078de1f65ac83476cd29e8f5a41d63ea9bd22c5","sha512":"56b9d74b6b4d8a6f1e9909cb88c18e6c784c6bbab10d877a936f334ec5056d8720d20c2443e241c3064f536853f3ffa4578c1c8b3ab391ce8d671256a83a0ef3","ssdeep":"192:c0/B5NGI4y5Zzlqrvd2bcQFCx4zN2M15hNeSd4e+MQCC8h/PzM+kyhtTliuR3dQ5:cOq8bcj+Jz57b4e+MQCL2+k+Nll3dwA4","tlshash":"b492b81056143788f5b78289915fc40c302f2a4caf0e85b5bbbcac666b544e73a6ffd6","first_seen":"2026-06-09T20:30:37.829522Z","last_seen":"2026-08-06T12:32:43.342266Z","times_seen":1772,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDI0NjAxLChlLHQsaSk9Pnt0LmV4cG9ydHM9ZS5yKDI4OTk1KX0sNzkyOTQsZT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgdD1lLmkoOTgxMzQpLGk9ZS5pKDI0NjAxKSxuPWUuaSg3NTIwMSkscz1lLmkoNzUxNTcpO2Z1bmN0aW9uIG8oe3RoZW1lOmUsY250OmksZ3JhcGg6byxwcmVmQ29pbklkOmx9KXtsZXRbYyxkXT0oMCxuLnVzZVN0YXRlKShbXSksW2gsZl09KDAsbi51c2VTdGF0ZSkoe2NvZGU6IlVTRCIsc3ltYm9sOiIkIixyYXRlOjF9KSxbbSxwXT0oMCxuLnVzZVN0YXRlKSghMCk7KDAsbi51c2VFZmZlY3QpKCgpPT57bGV0IGU9bmV3IFVSTFNlYXJjaFBhcmFtcyh7dG9wOlN0cmluZyhpKX0pO2wmJmUuc2V0KCJwcmVmX2NvaW5faWQiLGwpLGZldGNoKGAvYXBpL3YxL3dpZGdldD8ke2V9YCkudGhlbihlPT5lLmpzb24oKSkudGhlbihlPT57ZS5kYXRhJiZkKGUuZGF0YSksZS5jdXJyZW5jeSYmZihlLmN1cnJlbmN5KX0pLmNhdGNoKCgpPT57fSkuZmluYWxseSgoKT0+cCghMSkpfSxbaSxsXSk7bGV0IGc9ImRhcmsiPT09ZSx4PWc/IiMxQjIwMzAiOiIjZmZmZmZmIix5PWc/IiNlNWU3ZWIiOiIjMWYyOTM3Iix1PWc/IiM5Y2EzYWYiOiIjNmI3MjgwIixiPWc/IiMzNzQxNTEiOiIjZTVlN2ViIixqPWc/IiMxZjI5MzciOiIjZjNmNGY2IixTPSIjMjJjNTVlIix2PSIjZWY0NDQ0IjtyZXR1cm4gbT8oMCx0LmpzeCkoImRpdiIse3N0eWxlOntiYWNrZ3JvdW5kOngsY29sb3I6eSxwYWRkaW5nOjIwLGZvbnRGYW1pbHk6InN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgc2Fucy1zZXJpZiIsZm9udFNpemU6MTN9LGNoaWxkcmVuOiJMb2FkaW5nLi4uIn0pOigwLHQuanN4cykoImRpdiIse3N0eWxlOntiYWNrZ3JvdW5kOngsY29sb3I6eSxmb250RmFtaWx5OiJzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIHNhbnMtc2VyaWYiLGZvbnRTaXplOjEzLG92ZXJmbG93OiJhdXRvIixoZWlnaHQ6IjEwMCUifSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJzdHlsZSIse2NoaWxkcmVuOmAKICAgICAgICAuZnZ3LWhpZGUtc20geyB9CiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7CiAgICAgICAgICAuZnZ3LWhpZGUtc20geyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0KICAgICAgICAgIC5mdnctcmFuayB7IHdpZHRoOiAyMHB4ICFpbXBvcnRhbnQ7IG1hcmdpbi1yaWdodDogNHB4ICFpbXBvcnRhbnQ7IH0KICAgICAgICAgIC5mdnctcHJpY2UgeyB3aWR0aDogODBweCAhaW1wb3J0YW50OyB9CiAgICAgICAgICAuZnZ3LXJvdyB7IHBhZGRpbmc6IDZweCA4cHggIWltcG9ydGFudDsgfQogICAgICAgIH0KICAgICAgYH0pLCgwLHQuanN4cykoImRpdiIse2NsYXNzTmFtZToiZnZ3LXJvdyIsc3R5bGU6e2Rpc3BsYXk6ImZsZXgiLGFsaWduSXRlbXM6ImNlbnRlciIscGFkZGluZzoiOHB4IDEycHgiLGJhY2tncm91bmQ6Zz8iIzExMTgyNyI6IiNmOWZhZmIiLGJvcmRlckJvdHRvbTpgMXB4IHNvbGlkICR7Yn1gLGZvbnRXZWlnaHQ6NjAwfSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJzcGFuIix7Y2xhc3NOYW1lOiJmdnctcmFuayIsc3R5bGU6e3dpZHRoOjMwLHRleHRBbGlnbjoicmlnaHQiLG1hcmdpblJpZ2h0OjgsY29sb3I6dSxmb250U2l6ZToxMX0sY2hpbGRyZW46IiMifSksKDAsdC5qc3gpKCJzcGFuIix7c3R5bGU6e2ZsZXg6MX0sY2hpbGRyZW46Ik5hbWUifSksKDAsdC5qc3gpKCJzcGFuIix7Y2xhc3NOYW1lOiJmdnctcHJpY2UiLHN0eWxlOnt3aWR0aDoxMDAsdGV4dEFsaWduOiJyaWdodCJ9LGNoaWxkcmVuOiJQcmljZSJ9KSwoMCx0LmpzeCkoInNwYW4iLHtjbGFzc05hbWU6ImZ2dy1oaWRlLXNtIixzdHlsZTp7d2lkdGg6MTAwLHRleHRBbGlnbjoicmlnaHQifSxjaGlsZHJlbjoiTWFya2V0IENhcCJ9KSwoMCx0LmpzeCkoInNwYW4iLHtjbGFzc05hbWU6ImZ2dy1oaWRlLXNtIixzdHlsZTp7d2lkdGg6OTAsdGV4dEFsaWduOiJyaWdodCJ9LGNoaWxkcmVuOiJWb2x1bWUgMjRoIn0pLCgwLHQuanN4KSgic3BhbiIse3N0eWxlOnt3aWR0aDo3MCx0ZXh0QWxpZ246InJpZ2h0In0sY2hpbGRyZW46IjI0aCAlIn0pLG8mJigwLHQuanN4KSgic3BhbiIse2NsYXNzTmFtZToiZnZ3LWhpZGUtc20iLHN0eWxlOnt3aWR0aDo4MCx0ZXh0QWxpZ246InJpZ2h0IixwYWRkaW5nTGVmdDoxMn0sY2hpbGRyZW46IjdkIn0pXX0pLGMubWFwKGU9Pnt2YXIgaSxuO2xldCBsPWUucGVyY2VudF9jaGFuZ2VfMjRoPj0wO3JldHVybigwLHQuanN4cykoImEiLHtocmVmOmBodHRwczovL2NvaW5saWIuaW8keygwLHMuY29pblVybCkoZS5zeW1ib2wsZS5uYW1lKX1gLHRhcmdldDoiX2JsYW5rIixyZWw6Im5vb3BlbmVyIG5vcmVmZXJyZXIiLGNsYXNzTmFtZToiZnZ3LXJvdyIsc3R5bGU6e2Rpc3BsYXk6ImZsZXgiLGFsaWduSXRlbXM6ImNlbnRlciIscGFkZGluZzoiNnB4IDEycHgiLGJvcmRlckJvdHRvbTpgMXB4IHNvbGlkICR7Yn1gLHRleHREZWNvcmF0aW9uOiJub25lIixjb2xvcjp5LHRyYW5zaXRpb246ImJhY2tncm91bmQgMC4xNXMifSxvbk1vdXNlRW50ZXI6ZT0+ZS5jdXJyZW50VGFyZ2V0LnN0eWxlLmJhY2tncm91bmQ9aixvbk1vdXNlTGVhdmU6ZT0+ZS5jdXJyZW50VGFyZ2V0LnN0eWxlLmJhY2tncm91bmQ9InRyYW5zcGFyZW50IixjaGlsZHJlbjpbKDAsdC5qc3gpKCJzcGFuIix7Y2xhc3NOYW1lOiJmdnctcmFuayIsc3R5bGU6e3dpZHRoOjMwLHRleHRBbGlnbjoicmlnaHQiLG1hcmdpblJpZ2h0OjgsY29sb3I6dSxmb250U2l6ZToxMX0sY2hpbGRyZW46ZS5yYW5rfSksKDAsdC5qc3gpKCJpbWciLHtzcmM6ZS5pbWFnZSxhbHQ6ZS5uYW1lLHdpZHRoOjE4LGhlaWdodDoxOCxzdHlsZTp7Ym9yZGVyUmFkaXVzOiI1MCUiLG1hcmdpblJpZ2h0OjZ9fSksKDAsdC5qc3gpKCJzcGFuIix7c3R5bGU6e2ZvbnRXZWlnaHQ6NTAwLG1hcmdpblJpZ2h0OjR9LGNoaWxkcmVuOmUubmFtZX0pLCgwLHQuanN4KSgic3BhbiIse3N0eWxlOntjb2xvcjp1LGZvbnRTaXplOjExfSxjaGlsZHJlbjplLnN5bWJvbH0pLCgwLHQuanN4KSgic3BhbiIse2NsYXNzTmFtZToiZnZ3LXByaWNlIixzdHlsZTp7d2lkdGg6MTAwLHRleHRBbGlnbjoicmlnaHQiLG1hcmdpbkxlZnQ6ImF1dG8iLGZvbnRGYW1pbHk6Im1vbm9zcGFjZSJ9LGNoaWxkcmVuOihpPWUucHJpY2VfdXNkKmgucmF0ZSxuPWguc3ltYm9sLGk+PTE/bitpLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czoyfSk6bitpLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czo2fSkpfSksKDAsdC5qc3gpKCJzcGFuIix7Y2xhc3NOYW1lOiJmdnctaGlkZS1zbSIsc3R5bGU6e3dpZHRoOjEwMCx0ZXh0QWxpZ246InJpZ2h0Iixmb250RmFtaWx5OiJtb25vc3BhY2UiLGZvbnRTaXplOjExfSxjaGlsZHJlbjphKGUubWFya2V0X2NhcCpoLnJhdGUsaC5zeW1ib2wpfSksKDAsdC5qc3gpKCJzcGFuIix7Y2xhc3NOYW1lOiJmdnctaGlkZS1zbSIsc3R5bGU6e3dpZHRoOjkwLHRleHRBbGlnbjoicmlnaHQiLGZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsZm9udFNpemU6MTF9LGNoaWxkcmVuOmEoZS52b2x1bWVfMjRoKmgucmF0ZSxoLnN5bWJvbCl9KSwoMCx0LmpzeHMpKCJzcGFuIix7c3R5bGU6e3dpZHRoOjcwLHRleHRBbGlnbjoicmlnaHQiLGZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsZm9udFdlaWdodDo1MDAsY29sb3I6bD9TOnZ9LGNoaWxkcmVuOltsPyIrIjoiIixlLnBlcmNlbnRfY2hhbmdlXzI0aD8udG9GaXhlZCgyKSwiJSJdfSksbyYmKDAsdC5qc3gpKCJzcGFuIix7Y2xhc3NOYW1lOiJmdnctaGlkZS1zbSIsc3R5bGU6e3dpZHRoOjgwLHRleHRBbGlnbjoicmlnaHQiLHBhZGRpbmdMZWZ0OjEyfSxjaGlsZHJlbjooMCx0LmpzeCkocix7Y29pbjplLGNvbG9yOmw/Uzp2fSl9KV19LGUuaWQpfSksKDAsdC5qc3gpKCJkaXYiLHtzdHlsZTp7cGFkZGluZzoiNHB4IDEycHgiLGZvbnRTaXplOjEwLGNvbG9yOnUsdGV4dEFsaWduOiJyaWdodCJ9LGNoaWxkcmVuOigwLHQuanN4KSgiYSIse2hyZWY6Imh0dHBzOi8vY29pbmxpYi5pbyIsdGFyZ2V0OiJfYmxhbmsiLHJlbDoibm9vcGVuZXIgbm9yZWZlcnJlciIsc3R5bGU6e2NvbG9yOnUsdGV4dERlY29yYXRpb246Im5vbmUifSxjaGlsZHJlbjoiUG93ZXJlZCBieSBDb2lubGliIn0pfSldfSl9ZnVuY3Rpb24gcih7Y29pbjplLGNvbG9yOml9KXtsZXQgbixzPWUuc3BhcmtsaW5lXzdkJiZlLnNwYXJrbGluZV83ZC5sZW5ndGg+PTI/ZS5zcGFya2xpbmVfN2Q6bnVsbDtpZihzKW49cztlbHNle2xldCB0PWUucHJpY2VfdXNkLGk9dC8oMStlLnBlcmNlbnRfY2hhbmdlXzI0aC8xMDApO249W107Zm9yKGxldCBlPTA7ZTw9NjtlKyspe2xldCBzPWUvNjtuLnB1c2goaSsodC1pKSpzKy4wMSp0Kk1hdGguc2luKHMqTWF0aC5QSSoyKSl9fWxldCBvPU1hdGgubWluKC4uLm4pLHI9TWF0aC5tYXgoLi4ubiktb3x8MSxhPTcwLyhuLmxlbmd0aC0xKSxsPW4ubWFwKChlLHQpPT5gJHsodCphKS50b0ZpeGVkKDIpfSwkeygyNi0oZS1vKS9yKjI0KS50b0ZpeGVkKDIpfWApLGM9YE0gJHtsLmpvaW4oIiBMICIpfWAsZD1gJHtjfSBMIDcwLjAwLDI4IEwgMCwyOCBaYCxoPWBzcGFyay1ncmFkLSR7ZS5pZH1gO3JldHVybigwLHQuanN4cykoInN2ZyIse3dpZHRoOjcwLGhlaWdodDoyOCx2aWV3Qm94OiIwIDAgNzAgMjgiLHByZXNlcnZlQXNwZWN0UmF0aW86Im5vbmUiLGNoaWxkcmVuOlsoMCx0LmpzeCkoImRlZnMiLHtjaGlsZHJlbjooMCx0LmpzeHMpKCJsaW5lYXJHcmFkaWVudCIse2lkOmgseDE6IjAiLHkxOiIwIix4MjoiMCIseTI6IjEiLGNoaWxkcmVuOlsoMCx0LmpzeCkoInN0b3AiLHtvZmZzZXQ6IjAlIixzdG9wQ29sb3I6aSxzdG9wT3BhY2l0eToiMC4yNSJ9KSwoMCx0LmpzeCkoInN0b3AiLHtvZmZzZXQ6IjEwMCUiLHN0b3BDb2xvcjppLHN0b3BPcGFjaXR5OiIwIn0pXX0pfSksKDAsdC5qc3gpKCJwYXRoIix7ZDpkLGZpbGw6YHVybCgjJHtofSlgLHN0cm9rZToibm9uZSJ9KSwoMCx0LmpzeCkoInBhdGgiLHtkOmMsZmlsbDoibm9uZSIsc3Ryb2tlOmksc3Ryb2tlV2lkdGg6MSxzdHJva2VMaW5lam9pbjoicm91bmQiLHN0cm9rZUxpbmVjYXA6InJvdW5kIn0pXX0pfWZ1bmN0aW9uIGEoZSx0KXtyZXR1cm4gZT49MWUxMj90KyhlLzFlMTIpLnRvRml4ZWQoMikrIlQiOmU+PTFlOT90KyhlLzFlOSkudG9GaXhlZCgyKSsiQiI6ZT49MWU2P3QrKGUvMWU2KS50b0ZpeGVkKDIpKyJNIjplPj0xZTM/dCsoZS8xZTMpLnRvRml4ZWQoMikrIksiOnQrZS50b0ZpeGVkKDIpfWZ1bmN0aW9uIGwoe3RoZW1lOmUsY29pbklkOmkscHJlZkNvaW5JZDpzfSl7bGV0W28scl09KDAsbi51c2VTdGF0ZSkobnVsbCksW2EsbF09KDAsbi51c2VTdGF0ZSkoe2NvZGU6IlVTRCIsc3ltYm9sOiIkIixyYXRlOjF9KSxbZCxoXT0oMCxuLnVzZVN0YXRlKShbXSksW2YsbV09KDAsbi51c2VTdGF0ZSkoNyksW3AsZ109KDAsbi51c2VTdGF0ZSkoITApLHg9KDAsbi51c2VSZWYpKG51bGwpLFt5LHVdPSgwLG4udXNlU3RhdGUpKG51bGwpOygwLG4udXNlRWZmZWN0KSgoKT0+e2xldCBlPW5ldyBVUkxTZWFyY2hQYXJhbXM7aT9lLnNldCgibGVnYWN5X2lkIixpKTplLnNldCgic3ltYm9sIiwiQlRDIikscyYmZS5zZXQoInByZWZfY29pbl9pZCIscyksZmV0Y2goYC9hcGkvdjEvd2lkZ2V0PyR7ZX1gKS50aGVuKGU9PmUuanNvbigpKS50aGVuKGU9PntlLmRhdGE/KHUoZS5kYXRhLnNsdWc/PyJiaXRjb2luIikscihlLmRhdGEpKTp1KCJiaXRjb2luIiksZS5jdXJyZW5jeSYmbChlLmN1cnJlbmN5KX0pLmNhdGNoKCgpPT51KCJiaXRjb2luIikpfSxbaSxzXSksKDAsbi51c2VFZmZlY3QpKCgpPT57eSYmKGcoITApLChhc3luYygpPT57bGV0IGU9YXdhaXQgZmV0Y2goYC9hcGkvdjEvY29pbnMvJHt5fS9jaGFydD9kYXlzPSR7Zn1gKS50aGVuKGU9PmUuanNvbigpKS5jYXRjaCgoKT0+bnVsbCk7ZT8uZGF0YT8ucHJpY2VzJiZoKGUuZGF0YS5wcmljZXMpLGcoITEpfSkoKSl9LFt5LGZdKSwoMCxuLnVzZUVmZmVjdCkoKCk9PntpZigheC5jdXJyZW50fHxkLmxlbmd0aDwyKXJldHVybjtsZXQgdD14LmN1cnJlbnQsaT10LmdldENvbnRleHQoIjJkIik7aWYoIWkpcmV0dXJuO2xldCBuPXdpbmRvdy5kZXZpY2VQaXhlbFJhdGlvfHwxLHM9dC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTt0LndpZHRoPXMud2lkdGgqbix0LmhlaWdodD1zLmhlaWdodCpuLGkuc2NhbGUobixuKTtsZXQgbz1zLndpZHRoLHI9cy5oZWlnaHQsbD0iZGFyayI9PT1lO2kuZmlsbFN0eWxlPWw/IiMxQjIwMzAiOiIjZmZmZmZmIixpLmZpbGxSZWN0KDAsMCxvLHIpO2xldCBoPW8tNjAtMTAsbT1yLTEwLTMwLHA9YS5yYXRlLGc9ZC5tYXAoZT0+ZVsxXSpwKSx5PU1hdGgubWluKC4uLmcpLHU9TWF0aC5tYXgoLi4uZyksYj11LXl8fDE7aS5zdHJva2VTdHlsZT1sPyIjMzc0MTUxIjoiI2U1ZTdlYiIsaS5saW5lV2lkdGg9LjU7Zm9yKGxldCBlPTA7ZTw9NDtlKyspe2xldCB0PTEwK20vNCplO2kuYmVnaW5QYXRoKCksaS5tb3ZlVG8oNjAsdCksaS5saW5lVG8oby0xMCx0KSxpLnN0cm9rZSgpO2xldCBuPXUtYi80KmU7aS5maWxsU3R5bGU9bD8iIzljYTNhZiI6IiM2YjcyODAiLGkuZm9udD0iMTBweCBzeXN0ZW0tdWksIHNhbnMtc2VyaWYiLGkudGV4dEFsaWduPSJyaWdodCIsaS5maWxsVGV4dChjKG4sYS5zeW1ib2wpLDU1LHQrMyl9bGV0IGo9ZFswXVswXSxTPWRbZC5sZW5ndGgtMV1bMF07aS5maWxsU3R5bGU9bD8iIzljYTNhZiI6IiM2YjcyODAiLGkudGV4dEFsaWduPSJjZW50ZXIiO2ZvcihsZXQgZT0wO2U8PTQ7ZSsrKXtsZXQgdD1qKyhTLWopLzQqZSxuPTYwK2gvNCplLHM9bmV3IERhdGUodCk7aS5maWxsVGV4dChmPD0xP3MudG9Mb2NhbGVUaW1lU3RyaW5nKCJlbiIse2hvdXI6IjItZGlnaXQiLG1pbnV0ZToiMi1kaWdpdCJ9KTpzLnRvTG9jYWxlRGF0ZVN0cmluZygiZW4iLHttb250aDoic2hvcnQiLGRheToibnVtZXJpYyJ9KSxuLHItOCl9bGV0IHY9Z1tnLmxlbmd0aC0xXT49Z1swXTtpLnN0cm9rZVN0eWxlPXY/IiMyMmM1NWUiOiIjZWY0NDQ0IixpLmxpbmVXaWR0aD0yLGkuYmVnaW5QYXRoKCksZC5mb3JFYWNoKChbZV0sdCk9PntsZXQgbj02MCsoZS1qKS8oUy1qKSpoLHM9MTArKDEtKGdbdF0teSkvYikqbTswPT09dD9pLm1vdmVUbyhuLHMpOmkubGluZVRvKG4scyl9KSxpLnN0cm9rZSgpO2xldCBfPWkuY3JlYXRlTGluZWFyR3JhZGllbnQoMCwxMCwwLDEwK20pO18uYWRkQ29sb3JTdG9wKDAsdj8icmdiYSgzNCwxOTcsOTQsMC4xNSkiOiJyZ2JhKDIzOSw2OCw2OCwwLjE1KSIpLF8uYWRkQ29sb3JTdG9wKDEsdj8icmdiYSgzNCwxOTcsOTQsMCkiOiJyZ2JhKDIzOSw2OCw2OCwwKSIpLGkuZmlsbFN0eWxlPV8saS5saW5lVG8oNjAraCwxMCttKSxpLmxpbmVUbyg2MCwxMCttKSxpLmNsb3NlUGF0aCgpLGkuZmlsbCgpfSxbZCxlLGFdKTtsZXQgYj0iZGFyayI9PT1lLGo9Yj8iI2U1ZTdlYiI6IiMxZjI5MzciLFM9Yj8iIzljYTNhZiI6IiM2YjcyODAiLHY9Yj8iIzM3NDE1MSI6IiNlNWU3ZWIiO3JldHVybigwLHQuanN4cykoImRpdiIse3N0eWxlOntiYWNrZ3JvdW5kOmI/IiMxQjIwMzAiOiIjZmZmZmZmIixjb2xvcjpqLGZvbnRGYW1pbHk6InN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgc2Fucy1zZXJpZiIsaGVpZ2h0OiIxMDAlIixkaXNwbGF5OiJmbGV4IixmbGV4RGlyZWN0aW9uOiJjb2x1bW4ifSxjaGlsZHJlbjpbbyYmKDAsdC5qc3hzKSgiZGl2Iix7c3R5bGU6e2Rpc3BsYXk6ImZsZXgiLGFsaWduSXRlbXM6ImNlbnRlciIscGFkZGluZzoiMTBweCAxMnB4Iixib3JkZXJCb3R0b206YDFweCBzb2xpZCAke3Z9YCxnYXA6OH0sY2hpbGRyZW46WygwLHQuanN4KSgiaW1nIix7c3JjOm8uaW1hZ2UsYWx0Om8ubmFtZSx3aWR0aDoyNCxoZWlnaHQ6MjQsc3R5bGU6e2JvcmRlclJhZGl1czoiNTAlIn19KSwoMCx0LmpzeCkoInNwYW4iLHtzdHlsZTp7Zm9udFdlaWdodDo2MDAsZm9udFNpemU6MTV9LGNoaWxkcmVuOm8ubmFtZX0pLCgwLHQuanN4KSgic3BhbiIse3N0eWxlOntjb2xvcjpTLGZvbnRTaXplOjEyfSxjaGlsZHJlbjpvLnN5bWJvbH0pLCgwLHQuanN4KSgic3BhbiIse3N0eWxlOnttYXJnaW5MZWZ0OiJhdXRvIixmb250RmFtaWx5OiJtb25vc3BhY2UiLGZvbnRXZWlnaHQ6NjAwLGZvbnRTaXplOjE2fSxjaGlsZHJlbjpjKG8ucHJpY2VfdXNkKmEucmF0ZSxhLnN5bWJvbCl9KSwoMCx0LmpzeHMpKCJzcGFuIix7c3R5bGU6e2ZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsZm9udFNpemU6MTMsZm9udFdlaWdodDo1MDAsY29sb3I6by5wZXJjZW50X2NoYW5nZV8yNGg+PTA/IiMyMmM1NWUiOiIjZWY0NDQ0In0sY2hpbGRyZW46W28ucGVyY2VudF9jaGFuZ2VfMjRoPj0wPyIrIjoiIixvLnBlcmNlbnRfY2hhbmdlXzI0aD8udG9GaXhlZCgyKSwiJSJdfSldfSksKDAsdC5qc3gpKCJkaXYiLHtzdHlsZTp7ZGlzcGxheToiZmxleCIsZ2FwOjQscGFkZGluZzoiNnB4IDEycHgiLGJvcmRlckJvdHRvbTpgMXB4IHNvbGlkICR7dn1gfSxjaGlsZHJlbjpbMSw3LDMwLDkwLDM2NV0ubWFwKGU9PigwLHQuanN4KSgiYnV0dG9uIix7b25DbGljazooKT0+bShlKSxzdHlsZTp7cGFkZGluZzoiMnB4IDhweCIsZm9udFNpemU6MTEsZm9udFdlaWdodDpmPT09ZT82MDA6NDAwLGJhY2tncm91bmQ6Zj09PWU/Yj8iIzM3NDE1MSI6IiNlNWU3ZWIiOiJ0cmFuc3BhcmVudCIsY29sb3I6Zj09PWU/ajpTLGJvcmRlcjoibm9uZSIsYm9yZGVyUmFkaXVzOjQsY3Vyc29yOiJwb2ludGVyIn0sY2hpbGRyZW46MT09PWU/IjI0SCI6Nz09PWU/IjdEIjozMD09PWU/IjFNIjo5MD09PWU/IjNNIjoiMVkifSxlKSl9KSwoMCx0LmpzeCkoImRpdiIse3N0eWxlOntmbGV4OjEscGFkZGluZzoiOHB4IDAiLG1pbkhlaWdodDowfSxjaGlsZHJlbjpwPygwLHQuanN4KSgiZGl2Iix7c3R5bGU6e2Rpc3BsYXk6ImZsZXgiLGFsaWduSXRlbXM6ImNlbnRlciIsanVzdGlmeUNvbnRlbnQ6ImNlbnRlciIsaGVpZ2h0OiIxMDAlIixjb2xvcjpTLGZvbnRTaXplOjEzfSxjaGlsZHJlbjoiTG9hZGluZyBjaGFydC4uLiJ9KTooMCx0LmpzeCkoImNhbnZhcyIse3JlZjp4LHN0eWxlOnt3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIn19KX0pLCgwLHQuanN4KSgiZGl2Iix7c3R5bGU6e3BhZGRpbmc6IjRweCAxMnB4Iixmb250U2l6ZToxMCxjb2xvcjpTLHRleHRBbGlnbjoicmlnaHQiLGJvcmRlclRvcDpgMXB4IHNvbGlkICR7dn1gfSxjaGlsZHJlbjooMCx0LmpzeCkoImEiLHtocmVmOiJodHRwczovL2NvaW5saWIuaW8iLHRhcmdldDoiX2JsYW5rIixyZWw6Im5vb3BlbmVyIG5vcmVmZXJyZXIiLHN0eWxlOntjb2xvcjpTLHRleHREZWNvcmF0aW9uOiJub25lIn0sY2hpbGRyZW46IlBvd2VyZWQgYnkgQ29pbmxpYiJ9KX0pXX0pfWZ1bmN0aW9uIGMoZSx0KXtyZXR1cm4gZT49MT90K2UudG9Mb2NhbGVTdHJpbmcoImVuLVVTIix7bWluaW11bUZyYWN0aW9uRGlnaXRzOjIsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjJ9KTp0K2UudG9Mb2NhbGVTdHJpbmcoImVuLVVTIix7bWluaW11bUZyYWN0aW9uRGlnaXRzOjIsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjZ9KX1mdW5jdGlvbiBkKHt0aGVtZTplLGNvaW5JZDppLHByZWZDb2luSWQ6c30pe3ZhciBvLHI7bGV0W2EsbF09KDAsbi51c2VTdGF0ZSkobnVsbCksW2MsZF09KDAsbi51c2VTdGF0ZSkoe2NvZGU6IlVTRCIsc3ltYm9sOiIkIixyYXRlOjF9KSxbZixtXT0oMCxuLnVzZVN0YXRlKSghMCk7KDAsbi51c2VFZmZlY3QpKCgpPT57bGV0IGU9bmV3IFVSTFNlYXJjaFBhcmFtcztpP2Uuc2V0KCJsZWdhY3lfaWQiLGkpOmUuc2V0KCJzeW1ib2wiLCJCVEMiKSxzJiZlLnNldCgicHJlZl9jb2luX2lkIixzKSxmZXRjaChgL2FwaS92MS93aWRnZXQ/JHtlfWApLnRoZW4oZT0+ZS5qc29uKCkpLnRoZW4oZT0+e2UuZGF0YSYmbChlLmRhdGEpLGUuY3VycmVuY3kmJmQoZS5jdXJyZW5jeSl9KS5jYXRjaCgoKT0+e30pLmZpbmFsbHkoKCk9Pm0oITEpKX0sW2ksc10pO2xldCBwPSJkYXJrIj09PWUsZz1wPyIjMUIyMDMwIjoiI2ZmZmZmZiIseD1wPyIjZTVlN2ViIjoiIzFmMjkzNyIseT1wPyIjOWNhM2FmIjoiIzZiNzI4MCIsdT0iIzIyYzU1ZSIsYj0iI2VmNDQ0NCI7aWYoZnx8IWEpcmV0dXJuKDAsdC5qc3gpKCJkaXYiLHtzdHlsZTp7YmFja2dyb3VuZDpnLGNvbG9yOngscGFkZGluZzoxNixmb250RmFtaWx5OiJzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIHNhbnMtc2VyaWYiLGZvbnRTaXplOjEzfSxjaGlsZHJlbjoiTG9hZGluZy4uLiJ9KTtsZXQgaj1hLnBlcmNlbnRfY2hhbmdlXzI0aD49MDtyZXR1cm4oMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7YmFja2dyb3VuZDpnLGNvbG9yOngsZm9udEZhbWlseToic3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBzYW5zLXNlcmlmIixwYWRkaW5nOiIxMHB4IDEycHgiLGhlaWdodDoiMTAwJSIsYm94U2l6aW5nOiJib3JkZXItYm94In0sY2hpbGRyZW46WygwLHQuanN4cykoImRpdiIse3N0eWxlOntkaXNwbGF5OiJmbGV4IixhbGlnbkl0ZW1zOiJjZW50ZXIiLGdhcDo2LG1hcmdpbkJvdHRvbTo4fSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJpbWciLHtzcmM6YS5pbWFnZSxhbHQ6YS5uYW1lLHdpZHRoOjI4LGhlaWdodDoyOCxzdHlsZTp7Ym9yZGVyUmFkaXVzOiI1MCUifX0pLCgwLHQuanN4cykoImRpdiIse2NoaWxkcmVuOlsoMCx0LmpzeCkoImRpdiIse3N0eWxlOntmb250V2VpZ2h0OjYwMCxmb250U2l6ZToxNCxsaW5lSGVpZ2h0OjEuMn0sY2hpbGRyZW46YS5uYW1lfSksKDAsdC5qc3hzKSgiZGl2Iix7c3R5bGU6e2NvbG9yOnksZm9udFNpemU6MTB9LGNoaWxkcmVuOlthLnN5bWJvbCwiIMK3IFJhbmsgIyIsYS5yYW5rXX0pXX0pXX0pLCgwLHQuanN4cykoImRpdiIse3N0eWxlOnttYXJnaW5Cb3R0b206OH0sY2hpbGRyZW46WygwLHQuanN4KSgiZGl2Iix7c3R5bGU6e2ZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsZm9udFdlaWdodDo3MDAsZm9udFNpemU6MjAsbGluZUhlaWdodDoxLjJ9LGNoaWxkcmVuOihvPWEucHJpY2VfdXNkKmMucmF0ZSxyPWMuc3ltYm9sLG8+PTE/citvLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czoyfSk6citvLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czo2fSkpfSksKDAsdC5qc3hzKSgic3BhbiIse3N0eWxlOntmb250RmFtaWx5OiJtb25vc3BhY2UiLGZvbnRTaXplOjEzLGZvbnRXZWlnaHQ6NTAwLGNvbG9yOmo/dTpifSxjaGlsZHJlbjpbaj8iKyI6IiIsYS5wZXJjZW50X2NoYW5nZV8yNGg/LnRvRml4ZWQoMiksIiUiXX0pLCgwLHQuanN4KSgic3BhbiIse3N0eWxlOntjb2xvcjp5LGZvbnRTaXplOjEwLG1hcmdpbkxlZnQ6M30sY2hpbGRyZW46IjI0aCJ9KV19KSwoMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7Ym9yZGVyVG9wOmAxcHggc29saWQgJHtwPyIjMzc0MTUxIjoiI2U1ZTdlYiJ9YCxwYWRkaW5nVG9wOjYsZm9udFNpemU6MTF9LGNoaWxkcmVuOlsoMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7ZGlzcGxheToiZmxleCIsanVzdGlmeUNvbnRlbnQ6InNwYWNlLWJldHdlZW4iLG1hcmdpbkJvdHRvbTozfSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJzcGFuIix7c3R5bGU6e2NvbG9yOnl9LGNoaWxkcmVuOiJNYXJrZXQgQ2FwIn0pLCgwLHQuanN4KSgic3BhbiIse3N0eWxlOntmb250RmFtaWx5OiJtb25vc3BhY2UifSxjaGlsZHJlbjpoKGEubWFya2V0X2NhcCpjLnJhdGUsYy5zeW1ib2wpfSldfSksKDAsdC5qc3hzKSgiZGl2Iix7c3R5bGU6e2Rpc3BsYXk6ImZsZXgiLGp1c3RpZnlDb250ZW50OiJzcGFjZS1iZXR3ZWVuIixtYXJnaW5Cb3R0b206M30sY2hpbGRyZW46WygwLHQuanN4KSgic3BhbiIse3N0eWxlOntjb2xvcjp5fSxjaGlsZHJlbjoiVm9sdW1lIDI0aCJ9KSwoMCx0LmpzeCkoInNwYW4iLHtzdHlsZTp7Zm9udEZhbWlseToibW9ub3NwYWNlIn0sY2hpbGRyZW46aChhLnZvbHVtZV8yNGgqYy5yYXRlLGMuc3ltYm9sKX0pXX0pLCgwLHQuanN4cykoImRpdiIse3N0eWxlOntkaXNwbGF5OiJmbGV4IixqdXN0aWZ5Q29udGVudDoic3BhY2UtYmV0d2VlbiIsbWFyZ2luQm90dG9tOjN9LGNoaWxkcmVuOlsoMCx0LmpzeCkoInNwYW4iLHtzdHlsZTp7Y29sb3I6eX0sY2hpbGRyZW46IkNoYW5nZSAxaCJ9KSwoMCx0LmpzeHMpKCJzcGFuIix7c3R5bGU6e2ZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsY29sb3I6KGEucGVyY2VudF9jaGFuZ2VfMWg/PzApPj0wP3U6Yn0sY2hpbGRyZW46WyhhLnBlcmNlbnRfY2hhbmdlXzFoPz8wKT49MD8iKyI6IiIsKGEucGVyY2VudF9jaGFuZ2VfMWg/PzApLnRvRml4ZWQoMiksIiUiXX0pXX0pLCgwLHQuanN4cykoImRpdiIse3N0eWxlOntkaXNwbGF5OiJmbGV4IixqdXN0aWZ5Q29udGVudDoic3BhY2UtYmV0d2VlbiJ9LGNoaWxkcmVuOlsoMCx0LmpzeCkoInNwYW4iLHtzdHlsZTp7Y29sb3I6eX0sY2hpbGRyZW46IkNoYW5nZSA3ZCJ9KSwoMCx0LmpzeHMpKCJzcGFuIix7c3R5bGU6e2ZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsY29sb3I6KGEucGVyY2VudF9jaGFuZ2VfN2Q/PzApPj0wP3U6Yn0sY2hpbGRyZW46WyhhLnBlcmNlbnRfY2hhbmdlXzdkPz8wKT49MD8iKyI6IiIsKGEucGVyY2VudF9jaGFuZ2VfN2Q/PzApLnRvRml4ZWQoMiksIiUiXX0pXX0pXX0pXX0pfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4gZT49MWUxMj90KyhlLzFlMTIpLnRvRml4ZWQoMikrIlQiOmU+PTFlOT90KyhlLzFlOSkudG9GaXhlZCgyKSsiQiI6ZT49MWU2P3QrKGUvMWU2KS50b0ZpeGVkKDIpKyJNIjplPj0xZTM/dCsoZS8xZTMpLnRvRml4ZWQoMikrIksiOnQrZS50b0ZpeGVkKDIpfWZ1bmN0aW9uIGYoe3RoZW1lOmV9KXtsZXRbaSxzXT0oMCxuLnVzZVN0YXRlKShbXSksW28scl09KDAsbi51c2VTdGF0ZSkoIkJUQyIpLFthLGxdPSgwLG4udXNlU3RhdGUpKCJVU0QiKSxbYyxkXT0oMCxuLnVzZVN0YXRlKSgiMSIpLFtoLGZdPSgwLG4udXNlU3RhdGUpKCIiKSxbcCxnXT0oMCxuLnVzZVN0YXRlKSghMCk7KDAsbi51c2VFZmZlY3QpKCgpPT57ZmV0Y2goIi9hcGkvdjEvd2lkZ2V0P3RvcD01MCIpLnRoZW4oZT0+ZS5qc29uKCkpLnRoZW4oZT0+e2UuZGF0YSYmcyhlLmRhdGEpfSkuY2F0Y2goKCk9Pnt9KS5maW5hbGx5KCgpPT5nKCExKSl9LFtdKTtsZXQgeD0oMCxuLnVzZUNhbGxiYWNrKSgoKT0+e2xldCBlPXBhcnNlRmxvYXQoYyl8fDA7aWYoIlVTRCI9PT1hKXtsZXQgdD1pLmZpbmQoZT0+ZS5zeW1ib2w9PT1vKTt0JiZmKG0oZSp0LnByaWNlX3VzZCkpfWVsc2UgaWYoIlVTRCI9PT1vKXtsZXQgdD1pLmZpbmQoZT0+ZS5zeW1ib2w9PT1hKTt0JiZ0LnByaWNlX3VzZD4wJiZmKG0oZS90LnByaWNlX3VzZCkpfWVsc2V7bGV0IHQ9aS5maW5kKGU9PmUuc3ltYm9sPT09byksbj1pLmZpbmQoZT0+ZS5zeW1ib2w9PT1hKTt0JiZuJiZuLnByaWNlX3VzZD4wJiZmKG0oZSp0LnByaWNlX3VzZC9uLnByaWNlX3VzZCkpfX0sW2MsbyxhLGldKTsoMCxuLnVzZUVmZmVjdCkoKCk9PntpLmxlbmd0aD4wJiZ4KCl9LFtpLHhdKTtsZXQgeT0iZGFyayI9PT1lLHU9eT8iIzFCMjAzMCI6IiNmZmZmZmYiLGI9eT8iI2U1ZTdlYiI6IiMxZjI5MzciLGo9eT8iIzljYTNhZiI6IiM2YjcyODAiLFM9eT8iIzM3NDE1MSI6IiNlNWU3ZWIiLHY9eT8iIzExMTgyNyI6IiNmOWZhZmIiLF89eT8iIzM3NDE1MSI6IiNlNWU3ZWIiLHc9e3dpZHRoOiIxMDAlIixwYWRkaW5nOiI2cHggOHB4Iixmb250U2l6ZToxMixiYWNrZ3JvdW5kOnYsY29sb3I6Yixib3JkZXI6YDFweCBzb2xpZCAke1N9YCxib3JkZXJSYWRpdXM6NSxvdXRsaW5lOiJub25lIixhcHBlYXJhbmNlOiJhdXRvIn0saz17d2lkdGg6IjEwMCUiLHBhZGRpbmc6IjZweCA4cHgiLGZvbnRTaXplOjEzLGZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsYmFja2dyb3VuZDp2LGNvbG9yOmIsYm9yZGVyOmAxcHggc29saWQgJHtTfWAsYm9yZGVyUmFkaXVzOjUsb3V0bGluZToibm9uZSIsYm94U2l6aW5nOiJib3JkZXItYm94In07aWYocClyZXR1cm4oMCx0LmpzeCkoImRpdiIse3N0eWxlOntiYWNrZ3JvdW5kOnUsY29sb3I6YixwYWRkaW5nOjE2LGZvbnRGYW1pbHk6InN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgc2Fucy1zZXJpZiIsZm9udFNpemU6MTN9LGNoaWxkcmVuOiJMb2FkaW5nLi4uIn0pO2xldCBGPVt7c3ltYm9sOiJVU0QiLG5hbWU6IlVTIERvbGxhciJ9LC4uLmkubWFwKGU9Pih7c3ltYm9sOmUuc3ltYm9sLG5hbWU6ZS5uYW1lfSkpXTtyZXR1cm4oMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7YmFja2dyb3VuZDp1LGNvbG9yOmIsZm9udEZhbWlseToic3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBzYW5zLXNlcmlmIixwYWRkaW5nOiIxMHB4IDEycHgiLGhlaWdodDoiMTAwJSIsYm94U2l6aW5nOiJib3JkZXItYm94IixkaXNwbGF5OiJmbGV4IixmbGV4RGlyZWN0aW9uOiJjb2x1bW4ifSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJkaXYiLHtzdHlsZTp7Zm9udFdlaWdodDo2MDAsZm9udFNpemU6MTMsbWFyZ2luQm90dG9tOjEwLHRleHRBbGlnbjoiY2VudGVyIn0sY2hpbGRyZW46IkNyeXB0b2N1cnJlbmN5IENvbnZlcnRlciJ9KSwoMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7bWFyZ2luQm90dG9tOjh9LGNoaWxkcmVuOlsoMCx0LmpzeCkoImxhYmVsIix7c3R5bGU6e2Rpc3BsYXk6ImJsb2NrIixmb250U2l6ZToxMCxjb2xvcjpqLG1hcmdpbkJvdHRvbTozfSxjaGlsZHJlbjoiRnJvbSJ9KSwoMCx0LmpzeCkoInNlbGVjdCIse3ZhbHVlOm8sb25DaGFuZ2U6ZT0+cihlLnRhcmdldC52YWx1ZSksc3R5bGU6dyxjaGlsZHJlbjpGLm1hcChlPT4oMCx0LmpzeHMpKCJvcHRpb24iLHt2YWx1ZTplLnN5bWJvbCxjaGlsZHJlbjpbZS5zeW1ib2wsIiAtICIsZS5uYW1lXX0sYGZyb20tJHtlLnN5bWJvbH1gKSl9KSwoMCx0LmpzeCkoImlucHV0Iix7dHlwZToibnVtYmVyIix2YWx1ZTpjLG9uQ2hhbmdlOmU9PmQoZS50YXJnZXQudmFsdWUpLHN0eWxlOnsuLi5rLG1hcmdpblRvcDo0fSxwbGFjZWhvbGRlcjoiQW1vdW50In0pXX0pLCgwLHQuanN4KSgiZGl2Iix7c3R5bGU6e3RleHRBbGlnbjoiY2VudGVyIixtYXJnaW5Cb3R0b206OH0sY2hpbGRyZW46KDAsdC5qc3gpKCJidXR0b24iLHtvbkNsaWNrOigpPT57cihhKSxsKG8pfSxzdHlsZTp7YmFja2dyb3VuZDpfLGJvcmRlcjoibm9uZSIsYm9yZGVyUmFkaXVzOiI1MCUiLHdpZHRoOjI4LGhlaWdodDoyOCxmb250U2l6ZToxNCxjdXJzb3I6InBvaW50ZXIiLGNvbG9yOmIsbGluZUhlaWdodDoiMjhweCJ9LGNoaWxkcmVuOiLih4UifSl9KSwoMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7bWFyZ2luQm90dG9tOjEwfSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJsYWJlbCIse3N0eWxlOntkaXNwbGF5OiJibG9jayIsZm9udFNpemU6MTAsY29sb3I6aixtYXJnaW5Cb3R0b206M30sY2hpbGRyZW46IlRvIn0pLCgwLHQuanN4KSgic2VsZWN0Iix7dmFsdWU6YSxvbkNoYW5nZTplPT5sKGUudGFyZ2V0LnZhbHVlKSxzdHlsZTp3LGNoaWxkcmVuOkYubWFwKGU9PigwLHQuanN4cykoIm9wdGlvbiIse3ZhbHVlOmUuc3ltYm9sLGNoaWxkcmVuOltlLnN5bWJvbCwiIC0gIixlLm5hbWVdfSxgdG8tJHtlLnN5bWJvbH1gKSl9KSwoMCx0LmpzeCkoImRpdiIse3N0eWxlOnsuLi5rLG1hcmdpblRvcDo0LG1pbkhlaWdodDoxNixiYWNrZ3JvdW5kOl99LGNoaWxkcmVuOmh8fCIwLjAwIn0pXX0pLCgwLHQuanN4KSgiYnV0dG9uIix7b25DbGljazp4LHN0eWxlOnt3aWR0aDoiMTAwJSIscGFkZGluZzoiOHB4Iixmb250U2l6ZToxMyxmb250V2VpZ2h0OjYwMCxiYWNrZ3JvdW5kOiIjM2I4MmY2Iixjb2xvcjoiI2ZmZiIsYm9yZGVyOiJub25lIixib3JkZXJSYWRpdXM6NixjdXJzb3I6InBvaW50ZXIifSxjaGlsZHJlbjoiQ29udmVydCJ9KV19KX1mdW5jdGlvbiBtKGUpe3JldHVybiBlPj0xP2UudG9Mb2NhbGVTdHJpbmcoImVuLVVTIix7bWluaW11bUZyYWN0aW9uRGlnaXRzOjIsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjJ9KTplPj0uMDAxP2UudG9Mb2NhbGVTdHJpbmcoImVuLVVTIix7bWluaW11bUZyYWN0aW9uRGlnaXRzOjIsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjZ9KTplLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czo4fSl9ZnVuY3Rpb24gcCh7dGhlbWU6ZSxwcmVmQ29pbklkOmksaW52ZXJ0SG92ZXI6b30pe2xldFtyLGFdPSgwLG4udXNlU3RhdGUpKFtdKSxbbCxjXT0oMCxuLnVzZVN0YXRlKSh7Y29kZToiVVNEIixzeW1ib2w6IiQiLHJhdGU6MX0pLFtkLGhdPSgwLG4udXNlU3RhdGUpKCEwKSxmPSgwLG4udXNlUmVmKShudWxsKSxbbSxwXT0oMCxuLnVzZVN0YXRlKSghMSk7KDAsbi51c2VFZmZlY3QpKCgpPT57bGV0IGU9bmV3IFVSTFNlYXJjaFBhcmFtcyh7dG9wOiI1MCIsc3BhcmtsaW5lOiIwIn0pO2kmJmUuc2V0KCJwcmVmX2NvaW5faWQiLGkpLGZldGNoKGAvYXBpL3YxL3dpZGdldD8ke2V9YCkudGhlbihlPT5lLmpzb24oKSkudGhlbihlPT57ZS5kYXRhJiZhKGUuZGF0YSksZS5jdXJyZW5jeSYmYyhlLmN1cnJlbmN5KX0pLmNhdGNoKCgpPT57fSkuZmluYWxseSgoKT0+aCghMSkpfSxbaV0pO2xldCBnPSJkYXJrIj09PWUseD1nPyIjMUIyMDMwIjoiI2ZmZmZmZiIseT1nPyIjZTVlN2ViIjoiIzFmMjkzNyI7aWYoZClyZXR1cm4oMCx0LmpzeCkoImRpdiIse3N0eWxlOntiYWNrZ3JvdW5kOngsY29sb3I6eSxoZWlnaHQ6IjEwMCUiLGRpc3BsYXk6ImZsZXgiLGFsaWduSXRlbXM6ImNlbnRlciIscGFkZGluZzoiMCAxMnB4Iixmb250U2l6ZToxMixmb250RmFtaWx5OiJzeXN0ZW0tdWksIHNhbnMtc2VyaWYifSxjaGlsZHJlbjoiTG9hZGluZy4uLiJ9KTtsZXQgdT1bLi4uciwuLi5yXTtyZXR1cm4oMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7YmFja2dyb3VuZDp4LGNvbG9yOnksZm9udEZhbWlseToic3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBzYW5zLXNlcmlmIixoZWlnaHQ6IjEwMHZoIixvdmVyZmxvdzoiaGlkZGVuIixwb3NpdGlvbjoicmVsYXRpdmUiLGRpc3BsYXk6ImZsZXgiLGFsaWduSXRlbXM6ImNlbnRlciJ9LG9uTW91c2VFbnRlcjooKT0+cCghMCksb25Nb3VzZUxlYXZlOigpPT5wKCExKSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJkaXYiLHtyZWY6ZixzdHlsZTp7ZGlzcGxheToiZmxleCIsYWxpZ25JdGVtczoiY2VudGVyIixnYXA6MjQsd2hpdGVTcGFjZToibm93cmFwIixoZWlnaHQ6IjEwMCUiLHBhZGRpbmdMZWZ0OjEyLGFuaW1hdGlvbjooInllcyI9PT1vP206IW0pPyJ3aWRnZXQtbWFycXVlZSAxMjBzIGxpbmVhciBpbmZpbml0ZSI6Im5vbmUifSxjaGlsZHJlbjp1Lm1hcCgoZSxpKT0+e3ZhciBuLG87bGV0IHI9ZS5wZXJjZW50X2NoYW5nZV8yNGg+PTA7cmV0dXJuKDAsdC5qc3hzKSgiYSIse2hyZWY6YGh0dHBzOi8vY29pbmxpYi5pbyR7KDAscy5jb2luVXJsKShlLnN5bWJvbCxlLm5hbWUpfWAsdGFyZ2V0OiJfYmxhbmsiLHJlbDoibm9vcGVuZXIgbm9yZWZlcnJlciIsc3R5bGU6e2Rpc3BsYXk6ImlubGluZS1mbGV4IixhbGlnbkl0ZW1zOiJjZW50ZXIiLGdhcDo1LGZvbnRTaXplOjEzLHRleHREZWNvcmF0aW9uOiJub25lIixjb2xvcjp5LGZsZXhTaHJpbms6MH0sY2hpbGRyZW46WygwLHQuanN4KSgiaW1nIix7c3JjOmUuaW1hZ2UsYWx0OmUubmFtZSx3aWR0aDoxNixoZWlnaHQ6MTYsc3R5bGU6e2JvcmRlclJhZGl1czoiNTAlIn19KSwoMCx0LmpzeCkoInNwYW4iLHtzdHlsZTp7Zm9udFdlaWdodDo1MDB9LGNoaWxkcmVuOmUuc3ltYm9sfSksKDAsdC5qc3gpKCJzcGFuIix7c3R5bGU6e2ZvbnRGYW1pbHk6Im1vbm9zcGFjZSJ9LGNoaWxkcmVuOihuPWUucHJpY2VfdXNkKmwucmF0ZSxvPWwuc3ltYm9sLG4+PTE/bytuLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czoyfSk6bytuLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czo2fSkpfSksKDAsdC5qc3hzKSgic3BhbiIse3N0eWxlOntmb250RmFtaWx5OiJtb25vc3BhY2UiLGZvbnRXZWlnaHQ6NTAwLGNvbG9yOnI/IiMyMmM1NWUiOiIjZWY0NDQ0Iixmb250U2l6ZToxMn0sY2hpbGRyZW46W3I/IisiOiIiLGUucGVyY2VudF9jaGFuZ2VfMjRoPy50b0ZpeGVkKDIpLCIlIl19KV19LGAke2Uuc3ltYm9sfS0ke2l9YCl9KX0pLCgwLHQuanN4KSgic3R5bGUiLHtjaGlsZHJlbjpgCiAgICAgICAgQGtleWZyYW1lcyB3aWRnZXQtbWFycXVlZSB7CiAgICAgICAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfQogICAgICAgICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfQogICAgICAgIH0KICAgICAgYH0pXX0pfWZ1bmN0aW9uIGcoe3R5cGU6ZSxwYXJhbXM6aX0pe2xldCBuLHM9aS50aGVtZT8/ImRhcmsiLHI9ImRhcmsiPT09cz8iIzFCMjAzMCI6IiNmZmZmZmYiO3N3aXRjaChlKXtjYXNlImZ1bGxfdjIiOm49KDAsdC5qc3gpKG8se3RoZW1lOnMsY250OnBhcnNlSW50KGkuY250Pz8iNiIsMTApLGdyYXBoOiJubyIhPT1pLmdyYXBoLHByZWZDb2luSWQ6aS5wcmVmX2NvaW5faWR9KTticmVhaztjYXNlImNoYXJ0IjpuPSgwLHQuanN4KShsLHt0aGVtZTpzLGNvaW5JZDppLmNvaW5faWQscHJlZkNvaW5JZDppLnByZWZfY29pbl9pZH0pO2JyZWFrO2Nhc2Uic2luZ2xlX3YyIjpuPSgwLHQuanN4KShkLHt0aGVtZTpzLGNvaW5JZDppLmNvaW5faWQscHJlZkNvaW5JZDppLnByZWZfY29pbl9pZH0pO2JyZWFrO2Nhc2UiY29udmVydGVyIjpuPSgwLHQuanN4KShmLHt0aGVtZTpzfSk7YnJlYWs7Y2FzZSJob3Jpem9udGFsX3YyIjpuPSgwLHQuanN4KShwLHt0aGVtZTpzLHByZWZDb2luSWQ6aS5wcmVmX2NvaW5faWQsaW52ZXJ0SG92ZXI6aS5pbnZlcnRfaG92ZXJ9KTticmVhaztkZWZhdWx0Om49KDAsdC5qc3hzKSgiZGl2Iix7c3R5bGU6e3BhZGRpbmc6MTYsZm9udFNpemU6MTMsZm9udEZhbWlseToic3lzdGVtLXVpLCBzYW5zLXNlcmlmIn0sY2hpbGRyZW46WyJVbmtub3duIHdpZGdldCB0eXBlOiAiLGVdfSl9cmV0dXJuKDAsdC5qc3gpKCJkaXYiLHtzdHlsZTp7YmFja2dyb3VuZDpyLG1pbkhlaWdodDoiMTAwdmgifSxjaGlsZHJlbjpufSl9ZnVuY3Rpb24geCh7dHlwZTplfSl7bGV0IG49KDAsaS51c2VTZWFyY2hQYXJhbXMpKCkscz17fTtuLmZvckVhY2goKGUsdCk9PntzW3RdPWV9KTtsZXQgbz1lPz9zLnR5cGU/PyJmdWxsX3YyIjtyZXR1cm4oMCx0LmpzeCkoZyx7dHlwZTpvLHBhcmFtczpzfSl9ZS5zKFsiV2lkZ2V0Q2xpZW50IiwoKT0+eF0sNzkyOTQpfV0pOw=="}},"time_used":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":"uniz-coinzltd.com/styles/images/staticon3.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.540Z","timestamp":1785158432540,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/staticon3.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=Ars2OIi20vJUf%2B2xjMn572RpFH3vu8OMbEq2b6CZvBtwcW7AYRe%2FJW72psguKrPBZPBs%2FrRglQwdISyiU8leZtZsSWvEP1QSKjo9PYbI1I0mdSL2YCcMrDWzHGsrczAZx86IEg%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b6c7556b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 5358\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":5358,"size_decoded":6120,"mime_type":"image/png","magic":"PNG image data, 124 x 124, 8-bit/color RGBA, non-interlaced","md5":"598606d5104c535876ba0cfe9d2579ca","sha1":"5b4c767624ed30ed95a43005d7df9be00beccf1c","sha256":"8d0067349e0ac10c3315315d0d15c6f1b182a3c4d35d5e145a9fc1456a765ca3","sha512":"5bb9b757c5188ae56b36fa574ea685b229f2f1d83975c6b9d80805b6c3b0f9952bc8964e9b7191be9b2b9b4cc8e9e70625d214563b749d6ae17bfefd86716442","ssdeep":"96:yY2ToXpae1vhxrXeoi+tVpY9PGHP0CnaZomgJ0sBUdg2fRkpUba:yba8Wxruoi+Pm9KcCnaZomkUdTiB","tlshash":"95b18d006df30ed07d19f10348fb7c669d084ef0195d90b9bdceca929ab839ac86a3d1","first_seen":"2024-09-19T20:45:30.973435Z","last_seen":"2026-07-27T13:21:39.076018Z","times_seen":17,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAHwAAAB8CAYAAACrHtS+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MzkzRjJGMDI4NUQ0MTFFOTg4QTNCQzJFQTlGMDRBRjciIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MzkzRjJGMDM4NUQ0MTFFOTg4QTNCQzJFQTlGMDRBRjciPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDozOTNGMkYwMDg1RDQxMUU5ODhBM0JDMkVBOUYwNEFGNyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDozOTNGMkYwMTg1RDQxMUU5ODhBM0JDMkVBOUYwNEFGNyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pp373tQAABFiSURBVHja7F0JeFXF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"}},"time_used":11,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":11,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/statbg.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.825Z","timestamp":1785158432825,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/statbg.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/styles/custom.css\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=4,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:32 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23159\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=sAx6X9HR33n%2Fn%2FtQIGVDmxMPbkg4CZsqiQpL9etRcs50CR7mUO%2FjGRJMHDnou7ZJGqS%2FjNWRKf5Ok0i4C%2Bp9f0Nd6sR7PP%2FcEYVujZbvfk8Kc3H7l34eb3hi3EAQFPBLzhDDaQ%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12d3c9e56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 7364\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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":7364,"size_decoded":8132,"mime_type":"image/png","magic":"PNG image data, 124 x 124, 8-bit/color RGBA, non-interlaced","md5":"f0f3dbbae276e8a60eb1396face3efaf","sha1":"30bff06821c4a0e747d13d303b983e28b9c58388","sha256":"2e580bf652ed6aaf5694f4f88cc22fcf633ac8f9c526fec94121dbbda0d845f6","sha512":"40238557325d4ed955343732395f8c92eaa67d516ea4268fc71137936b12a73adf7088ec376aaa3ff845e1c351d33fc97e9c37b388efcc85627162b9245afb75","ssdeep":"96:yY2WL+9xGflRKWRJmSa/xmxCylzTHJ7r7qCNm4Bah/cGF1EouhFScgZUGC:yeCHi+S8I5T173rahgicpV","tlshash":"24e19d056cf19407b9a5fc663cd5f837034f4cc0562156e79d8a84bf1d3a2e9a8b18ea","first_seen":"2024-09-19T20:45:31.011375Z","last_seen":"2026-07-27T13:21:39.110206Z","times_seen":16,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAHwAAAB8CAYAAACrHtS+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MEFFQzk0RDA4NUQ0MTFFOUJDRjM4RDE3OUNBODM3RTAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MEFFQzk0RDE4NUQ0MTFFOUJDRjM4RDE3OUNBODM3RTAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowQUVDOTRDRTg1RDQxMUU5QkNGMzhEMTc5Q0E4MzdFMCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowQUVDOTRDRjg1RDQxMUU5QkNGMzhEMTc5Q0E4MzdFMCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqkQ4ygAABk4SURBVHja7J0JdBvV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"}},"time_used":20,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":20,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/81a298ddc7471070.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.121Z","timestamp":1785158433121,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/81a298ddc7471070.js HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: *\r\nage: 3845949\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"81a298ddc7471070.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\netag: W/\"19fc6352b3bef54383c8770d74131cfa\"\r\nlast-modified: Sat, 13 Jun 2026 00:50:11 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/81a298ddc7471070.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::wcw4z-1781312483461-776bf6c194f6\r\nx-xss-protection: 1; mode=block\r\npriority: u=4,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=jFLo7ABqtSi%2BNx4v6TKzl%2FOk1SuRsDm67K1c%2BeTktGa0wJ2K%2BPQukvUdiuKy428vXDuSxNsP3rIIphrN6S1CqkE%2FDbHucVF6umewzJtZZAxx15tybJ%2FtFwgmM5Nj\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21bf12f083156b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":8114,"size_decoded":4396,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (8114), with no line terminators","md5":"19fc6352b3bef54383c8770d74131cfa","sha1":"c67ec295996975fd662c06e0b614bd3b9f97d7bd","sha256":"9f43d8db2c14631ecaeb7f7ea5d8823bbfe41eeee26f6893c816d0aa348e9605","sha512":"64eba4d08add14b4c9728e2e5026234cf522dd62e2da45df50d967e4d337e6b38cbeaf471dbfba3420a5d3c992bb47c628f60618fca6d84114f7250b7407c5cd","ssdeep":"96:76gC8v2YWBRNY6v28COSXTnv2IDESf3vZ8kM2Lv2kyIWwzysv2hv2zthN1Vm5w7b:cjYWG8COJIDEiikyBwuzkx/T+AP","tlshash":"e4f1536636d4f9d1168b44d5c83b5006f22e0d3a216d70a8b7e5cefa369044ef472fea","first_seen":"2026-02-06T09:43:19.169507Z","last_seen":"2026-08-17T21:34:38.58324Z","times_seen":1954,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDk0OTQsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIndvcmtBc3luY1N0b3JhZ2VJbnN0YW5jZSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSk7bGV0IG49KDAsZS5yKDQ5MjExKS5jcmVhdGVBc3luY0xvY2FsU3RvcmFnZSkoKX0sODk3OTEsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIndvcmtBc3luY1N0b3JhZ2UiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBuLndvcmtBc3luY1N0b3JhZ2VJbnN0YW5jZX19KTtsZXQgbj1lLnIoOTQ5NCl9LDcxMjM0LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJIYW5kbGVJU1JFcnJvciIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG99fSk7bGV0IG49InUiPHR5cGVvZiB3aW5kb3c/ZS5yKDg5NzkxKS53b3JrQXN5bmNTdG9yYWdlOnZvaWQgMDtmdW5jdGlvbiBvKHtlcnJvcjplfSl7aWYobil7bGV0IHQ9bi5nZXRTdG9yZSgpO2lmKHQ/LmlzU3RhdGljR2VuZXJhdGlvbil0aHJvdyBlJiZjb25zb2xlLmVycm9yKGUpLGV9cmV0dXJuIG51bGx9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNzQwODQsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInVzZVVudHJhY2tlZFBhdGhuYW1lIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdX19KTtsZXQgbj1lLnIoNzUyMDEpLG89ZS5yKDMxODk5KTtmdW5jdGlvbiB1KCl7cmV0dXJuIWZ1bmN0aW9uKCl7aWYoInUiPHR5cGVvZiB3aW5kb3cpe2xldHt3b3JrVW5pdEFzeW5jU3RvcmFnZTp0fT1lLnIoMTI5NjUpLHI9dC5nZXRTdG9yZSgpO2lmKCFyKXJldHVybiExO3N3aXRjaChyLnR5cGUpe2Nhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyLXBwciI6bGV0IG49ci5mYWxsYmFja1JvdXRlUGFyYW1zO3JldHVybiEhbiYmbi5zaXplPjB9fXJldHVybiExfSgpPygwLG4udXNlQ29udGV4dCkoby5QYXRobmFtZUNvbnRleHQpOm51bGx9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sODMzOTgsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e2hhbmRsZUhhcmROYXZFcnJvcjpmdW5jdGlvbigpe3JldHVybiBsfSx1c2VOYXZGYWlsdXJlSGFuZGxlcjpmdW5jdGlvbigpe3JldHVybiBpfX07Zm9yKHZhciBvIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsbyx7ZW51bWVyYWJsZTohMCxnZXQ6bltvXX0pO2Uucig3NTIwMSk7bGV0IHU9ZS5yKDg1NTk0KTtmdW5jdGlvbiBsKGUpe3JldHVybiEhKGUmJiJ1Ij50eXBlb2Ygd2luZG93KSYmISF3aW5kb3cubmV4dC5fX3BlbmRpbmdVcmwmJigwLHUuY3JlYXRlSHJlZkZyb21VcmwpKG5ldyBVUkwod2luZG93LmxvY2F0aW9uLmhyZWYpKSE9PSgwLHUuY3JlYXRlSHJlZkZyb21VcmwpKHdpbmRvdy5uZXh0Ll9fcGVuZGluZ1VybCkmJihjb25zb2xlLmVycm9yKCJFcnJvciBvY2N1cnJlZCBkdXJpbmcgbmF2aWdhdGlvbiwgZmFsbGluZyBiYWNrIHRvIGhhcmQgbmF2aWdhdGlvbiIsZSksd2luZG93LmxvY2F0aW9uLmhyZWY9d2luZG93Lm5leHQuX19wZW5kaW5nVXJsLnRvU3RyaW5nKCksITApfWZ1bmN0aW9uIGkoKXt9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNzQ4NDcsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e0Vycm9yQm91bmRhcnk6ZnVuY3Rpb24oKXtyZXR1cm4gX30sRXJyb3JCb3VuZGFyeUhhbmRsZXI6ZnVuY3Rpb24oKXtyZXR1cm4gcH19O2Zvcih2YXIgbyBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLG8se2VudW1lcmFibGU6ITAsZ2V0Om5bb119KTtsZXQgdT1lLnIoODEyNTgpLGw9ZS5yKDk4MTM0KSxpPXUuXyhlLnIoNzUyMDEpKSxhPWUucig3NDA4NCkscz1lLnIoNDk4NDMpO2Uucig4MzM5OCk7bGV0IGQ9ZS5yKDcxMjM0KSxjPWUucigzNDY1KSxmPSJ1Ij50eXBlb2Ygd2luZG93JiYoMCxjLmlzQm90KSh3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudCk7Y2xhc3MgcCBleHRlbmRzIGkuZGVmYXVsdC5Db21wb25lbnR7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSksdGhpcy5yZXNldD0oKT0+e3RoaXMuc2V0U3RhdGUoe2Vycm9yOm51bGx9KX0sdGhpcy5zdGF0ZT17ZXJyb3I6bnVsbCxwcmV2aW91c1BhdGhuYW1lOnRoaXMucHJvcHMucGF0aG5hbWV9fXN0YXRpYyBnZXREZXJpdmVkU3RhdGVGcm9tRXJyb3IoZSl7aWYoKDAscy5pc05leHRSb3V0ZXJFcnJvcikoZSkpdGhyb3cgZTtyZXR1cm57ZXJyb3I6ZX19c3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhlLHQpe2xldHtlcnJvcjpyfT10O3JldHVybiBlLnBhdGhuYW1lIT09dC5wcmV2aW91c1BhdGhuYW1lJiZ0LmVycm9yP3tlcnJvcjpudWxsLHByZXZpb3VzUGF0aG5hbWU6ZS5wYXRobmFtZX06e2Vycm9yOnQuZXJyb3IscHJldmlvdXNQYXRobmFtZTplLnBhdGhuYW1lfX1yZW5kZXIoKXtyZXR1cm4gdGhpcy5zdGF0ZS5lcnJvciYmIWY/KDAsbC5qc3hzKShsLkZyYWdtZW50LHtjaGlsZHJlbjpbKDAsbC5qc3gpKGQuSGFuZGxlSVNSRXJyb3Ise2Vycm9yOnRoaXMuc3RhdGUuZXJyb3J9KSx0aGlzLnByb3BzLmVycm9yU3R5bGVzLHRoaXMucHJvcHMuZXJyb3JTY3JpcHRzLCgwLGwuanN4KSh0aGlzLnByb3BzLmVycm9yQ29tcG9uZW50LHtlcnJvcjp0aGlzLnN0YXRlLmVycm9yLHJlc2V0OnRoaXMucmVzZXR9KV19KTp0aGlzLnByb3BzLmNoaWxkcmVufX1mdW5jdGlvbiBfKHtlcnJvckNvbXBvbmVudDplLGVycm9yU3R5bGVzOnQsZXJyb3JTY3JpcHRzOnIsY2hpbGRyZW46bn0pe2xldCBvPSgwLGEudXNlVW50cmFja2VkUGF0aG5hbWUpKCk7cmV0dXJuIGU/KDAsbC5qc3gpKHAse3BhdGhuYW1lOm8sZXJyb3JDb21wb25lbnQ6ZSxlcnJvclN0eWxlczp0LGVycm9yU2NyaXB0czpyLGNoaWxkcmVuOm59KTooMCxsLmpzeCkobC5GcmFnbWVudCx7Y2hpbGRyZW46bn0pfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDU3MjQ3LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtSZWRpcmVjdEJvdW5kYXJ5OmZ1bmN0aW9uKCl7cmV0dXJuIHB9LFJlZGlyZWN0RXJyb3JCb3VuZGFyeTpmdW5jdGlvbigpe3JldHVybiBmfX07Zm9yKHZhciBvIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsbyx7ZW51bWVyYWJsZTohMCxnZXQ6bltvXX0pO2xldCB1PWUucig0NDA2NiksbD1lLnIoOTgxMzQpLGk9dS5fKGUucig3NTIwMSkpLGE9ZS5yKDI4OTk1KSxzPWUucig0MTcyMSksZD1lLnIoOTA4NjIpO2Z1bmN0aW9uIGMoe3JlZGlyZWN0OmUscmVzZXQ6dCxyZWRpcmVjdFR5cGU6cn0pe2xldCBuPSgwLGEudXNlUm91dGVyKSgpO3JldHVybigwLGkudXNlRWZmZWN0KSgoKT0+e2kuZGVmYXVsdC5zdGFydFRyYW5zaXRpb24oKCk9PntyPT09ZC5SZWRpcmVjdFR5cGUucHVzaD9uLnB1c2goZSx7fSk6bi5yZXBsYWNlKGUse30pLHQoKX0pfSxbZSxyLHQsbl0pLG51bGx9Y2xhc3MgZiBleHRlbmRzIGkuZGVmYXVsdC5Db21wb25lbnR7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSksdGhpcy5zdGF0ZT17cmVkaXJlY3Q6bnVsbCxyZWRpcmVjdFR5cGU6bnVsbH19c3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21FcnJvcihlKXtpZigoMCxkLmlzUmVkaXJlY3RFcnJvcikoZSkpe2xldCB0PSgwLHMuZ2V0VVJMRnJvbVJlZGlyZWN0RXJyb3IpKGUpLHI9KDAscy5nZXRSZWRpcmVjdFR5cGVGcm9tRXJyb3IpKGUpO3JldHVybiJoYW5kbGVkImluIGU/e3JlZGlyZWN0Om51bGwscmVkaXJlY3RUeXBlOm51bGx9OntyZWRpcmVjdDp0LHJlZGlyZWN0VHlwZTpyfX10aHJvdyBlfXJlbmRlcigpe2xldHtyZWRpcmVjdDplLHJlZGlyZWN0VHlwZTp0fT10aGlzLnN0YXRlO3JldHVybiBudWxsIT09ZSYmbnVsbCE9PXQ/KDAsbC5qc3gpKGMse3JlZGlyZWN0OmUscmVkaXJlY3RUeXBlOnQscmVzZXQ6KCk9PnRoaXMuc2V0U3RhdGUoe3JlZGlyZWN0Om51bGx9KX0pOnRoaXMucHJvcHMuY2hpbGRyZW59fWZ1bmN0aW9uIHAoe2NoaWxkcmVuOmV9KXtsZXQgdD0oMCxhLnVzZVJvdXRlcikoKTtyZXR1cm4oMCxsLmpzeCkoZix7cm91dGVyOnQsY2hpbGRyZW46ZX0pfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDUwMDk2LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJ1bnJlc29sdmVkVGhlbmFibGUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBufX0pO2xldCBuPXt0aGVuOigpPT57fX07KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMzYzNDUsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e01ldGFkYXRhQm91bmRhcnk6ZnVuY3Rpb24oKXtyZXR1cm4gaX0sT3V0bGV0Qm91bmRhcnk6ZnVuY3Rpb24oKXtyZXR1cm4gc30sUm9vdExheW91dEJvdW5kYXJ5OmZ1bmN0aW9uKCl7cmV0dXJuIGR9LFZpZXdwb3J0Qm91bmRhcnk6ZnVuY3Rpb24oKXtyZXR1cm4gYX19O2Zvcih2YXIgbyBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLG8se2VudW1lcmFibGU6ITAsZ2V0Om5bb119KTtsZXQgdT1lLnIoNTM0NTkpLGw9e1t1Lk1FVEFEQVRBX0JPVU5EQVJZX05BTUVdOmZ1bmN0aW9uKHtjaGlsZHJlbjplfSl7cmV0dXJuIGV9LFt1LlZJRVdQT1JUX0JPVU5EQVJZX05BTUVdOmZ1bmN0aW9uKHtjaGlsZHJlbjplfSl7cmV0dXJuIGV9LFt1Lk9VVExFVF9CT1VOREFSWV9OQU1FXTpmdW5jdGlvbih7Y2hpbGRyZW46ZX0pe3JldHVybiBlfSxbdS5ST09UX0xBWU9VVF9CT1VOREFSWV9OQU1FXTpmdW5jdGlvbih7Y2hpbGRyZW46ZX0pe3JldHVybiBlfX0saT1sW3UuTUVUQURBVEFfQk9VTkRBUllfTkFNRS5zbGljZSgwKV0sYT1sW3UuVklFV1BPUlRfQk9VTkRBUllfTkFNRS5zbGljZSgwKV0scz1sW3UuT1VUTEVUX0JPVU5EQVJZX05BTUUuc2xpY2UoMCldLGQ9bFt1LlJPT1RfTEFZT1VUX0JPVU5EQVJZX05BTUUuc2xpY2UoMCldfSw0NDkzNCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiSGVhZE1hbmFnZXJDb250ZXh0Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtsZXQgbj1lLnIoODEyNTgpLl8oZS5yKDc1MjAxKSkuZGVmYXVsdC5jcmVhdGVDb250ZXh0KHt9KX0sMTYxNTMsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImRlZmF1bHQiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBpfX0pO2xldCBuPWUucig5ODEzNCksbz1lLnIoNzEyMzQpLHU9e2ZvbnRGYW1pbHk6J3N5c3RlbS11aSwiU2Vnb2UgVUkiLFJvYm90byxIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZiwiQXBwbGUgQ29sb3IgRW1vamkiLCJTZWdvZSBVSSBFbW9qaSInLGhlaWdodDoiMTAwdmgiLHRleHRBbGlnbjoiY2VudGVyIixkaXNwbGF5OiJmbGV4IixmbGV4RGlyZWN0aW9uOiJjb2x1bW4iLGFsaWduSXRlbXM6ImNlbnRlciIsanVzdGlmeUNvbnRlbnQ6ImNlbnRlciJ9LGw9e2ZvbnRTaXplOiIxNHB4Iixmb250V2VpZ2h0OjQwMCxsaW5lSGVpZ2h0OiIyOHB4IixtYXJnaW46IjAgOHB4In0saT1mdW5jdGlvbih7ZXJyb3I6ZX0pe2xldCB0PWU/LmRpZ2VzdDtyZXR1cm4oMCxuLmpzeHMpKCJodG1sIix7aWQ6Il9fbmV4dF9lcnJvcl9fIixjaGlsZHJlbjpbKDAsbi5qc3gpKCJoZWFkIix7fSksKDAsbi5qc3hzKSgiYm9keSIse2NoaWxkcmVuOlsoMCxuLmpzeCkoby5IYW5kbGVJU1JFcnJvcix7ZXJyb3I6ZX0pLCgwLG4uanN4KSgiZGl2Iix7c3R5bGU6dSxjaGlsZHJlbjooMCxuLmpzeHMpKCJkaXYiLHtjaGlsZHJlbjpbKDAsbi5qc3hzKSgiaDIiLHtzdHlsZTpsLGNoaWxkcmVuOlsiQXBwbGljYXRpb24gZXJyb3I6IGEgIix0PyJzZXJ2ZXIiOiJjbGllbnQiLCItc2lkZSBleGNlcHRpb24gaGFzIG9jY3VycmVkIHdoaWxlIGxvYWRpbmcgIix3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUsIiAoc2VlIHRoZSIsIiAiLHQ/InNlcnZlciBsb2dzIjoiYnJvd3NlciBjb25zb2xlIiwiIGZvciBtb3JlIGluZm9ybWF0aW9uKS4iXX0pLHQ/KDAsbi5qc3gpKCJwIix7c3R5bGU6bCxjaGlsZHJlbjpgRGlnZXN0OiAke3R9YH0pOm51bGxdfSl9KV19KV19KX07KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX1dKTs="}},"time_used":13,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":12,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"i.ytimg.com/vi/4ekOcDG2D8E/sddefault.jpg","fqdn":"i.ytimg.com","domain":"ytimg.com","tld":"com"},"ip":{"addr":"142.250.178.118","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/4ekOcDG2D8E","date":"2026-07-27T13:20:33.792Z","timestamp":1785158433792,"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/4ekOcDG2D8E/sddefault.jpg HTTP/1.1\r\nHost: i.ytimg.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.youtube.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"youtube\"\r\nreport-to: {\"group\":\"youtube\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/youtube\"}]}\r\ntiming-allow-origin: *\r\ncontent-length: 67277\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\nexpires: Mon, 27 Jul 2026 15:20:33 GMT\r\ncache-control: public, max-age=7200\r\netag: \"1581378367\"\r\ncontent-type: image/jpeg\r\nage: 0\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":67277,"size_decoded":67947,"mime_type":"image/jpeg","magic":"JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, baseline, precision 8, 640x480, components 3","md5":"3023597c3e4e114abad321cad298126e","sha1":"73ed9b8e61610818936df39d67ba7a844260a2dc","sha256":"8abba996718c386e4d7e393656694d23aa0d5d4d133cfe6939233e1a9661c1fd","sha512":"f94d2ec59b52b9360261cbe07b33d992daca8d0b86dbd77b49e7b31120074668709997702ebef092f3a8b164a3af82b6c19611b379fc41fb5377102ec2ada058","ssdeep":"1536:JwEfxpghequVHsb/mG+GkrliEKFlgSy+2amMct550GOI8kQQe:6EJmhe7M7x3krliiS1hm55rTy7","tlshash":"6063df77ce28e1c6bae5953e07800dd5eafc168af8c7afb10157dee2457603966d3088","first_seen":"2026-01-22T04:28:08.541996Z","last_seen":"2026-07-27T13:21:39.101855Z","times_seen":4,"resource_available":false,"data":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAUDBBAODQ0QEBAODQ4NDQ0ODRANDQ0NDQ0NDQ0QDg0NDQ0ODhANDQ0ODQ0ODRUNDhERExMTDQ4WGBYSGBASExIBBQUFCAcIDwkJDxUQEBAVFRUVFRUVFRUWFRUVFRUVFRUVFRUSFRUVFRYVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFf/AABEIAeACgAMBIgACEQEDEQH/xAAdAAABBAMBAQAAAAAAAAAAAAAABQYHCAIDBAEJ/8QAWRAAAgECAwQGAwwHBQMLAgYDAQIDABEEEiEFBjFBBxMiUWFxMoGRCBQYI0JSZKGkseTwFTNicpLB0SRTgrLhQ3OiFiU0RGN0k7PC0vEXVDV1g5Sj02XU4v/EABwBAQACAwEBAQAAAAAAAAAAAAABAgMFBgQHCP/EAEMRAAECAwMHCAgEBQUBAQAAAAEAAgMEEQUhMQYSFkFTotITFVFhcZGhwQcUIjRSgYLRMkKx4TNDkvDxNWJyssIkI//aAAwDAQACEQMRAD8AplRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRVg/g1/Tfsn4ij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abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFWD+Ep9C+1/h6PhKfQvtf4eq+UU0Ys3Zbz+JOf57abreFFFFFb9adFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRREUUUURFFFFERRRRRF/9k="}},"time_used":149,"timings":{"blocked":-1,"dns":2,"connect":15,"send":0,"wait":76,"receive":24,"ssl":31},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/assets/style-CliJwUTR.css","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:43.326Z","timestamp":1785158443326,"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://uniz-coinzltd.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 13:20:43 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: k3vRA0aiz3kvhDm2OawXCtoG1kFQZp+4YauGLkYjTalOchQl9aIumvnX/kuRp9wmO4q71u0\r\nx-77-nzt-ray: fdb54123304fbe6c2b5b676a704d9c13\r\nx-77-cache: HIT\r\nx-77-age: 1745400\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-08-17T23:41:13.419095Z","times_seen":3477,"resource_available":false,"data":"LmJ0bi5zdmVsdGUteXdvZm1se2JvcmRlci1yYWRpdXM6OTk5OXB4O2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6LjI1cmVtO2ZvbnQtc2l6ZToxLjEyNXJlbTtsaW5lLWhlaWdodDoxLjc1cmVtO3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3IsYmFja2dyb3VuZC1jb2xvcixib3JkZXItY29sb3IsdGV4dC1kZWNvcmF0aW9uLWNvbG9yLGZpbGwsc3Ryb2tlO3RyYW5zaXRpb24tZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtkaXNwbGF5OmlubGluZS1mbGV4fS5idG4tcHJpbWFyeS5zdmVsdGUteXdvZm1se2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pIDtjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1jb250ZW50KSB9LmJ0bi1wcmltYXJ5LnN2ZWx0ZS15d29mbWw6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1ob3ZlcikgfS5idG4tZ2hvc3Quc3ZlbHRlLXl3b2ZtbDpob3ZlcnstLXVuLWJnLW9wYWNpdHk6LjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMCAwIDAvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYnRuLXN1Y2Nlc3Muc3ZlbHRlLXl3b2ZtbHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigxNiAxODUgMTI5L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSA7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMjU1IDI1NSAyNTUvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS5idG4tc3VjY2Vzcy5zdmVsdGUteXdvZm1sOmhvdmVyey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDUgMTUwIDEwNS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5idG4tc20uc3ZlbHRlLXl3b2ZtbHt3aWR0aDoxLjVyZW07aGVpZ2h0OjEuNXJlbX0uYnRuLW1kLnN2ZWx0ZS15d29mbWx7d2lkdGg6MnJlbTtoZWlnaHQ6MnJlbX0uYnRuLWxnLnN2ZWx0ZS15d29mbWx7d2lkdGg6Mi43NXJlbTtoZWlnaHQ6Mi43NXJlbX0uYnRuLXhsLnN2ZWx0ZS15d29mbWx7d2lkdGg6M3JlbTtoZWlnaHQ6M3JlbX0uYnRuLWRpc2FibGVkLnN2ZWx0ZS15d29mbWx7Y3Vyc29yOm5vdC1hbGxvd2VkO29wYWNpdHk6LjJ9LmJ0bi1kaXNhYmxlZC5zdmVsdGUteXdvZm1sOmhvdmVyOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzAwMDB9Kiw6YmVmb3JlLDphZnRlcntib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDowO2JvcmRlci1jb2xvcjp2YXIoLS11bi1kZWZhdWx0LWJvcmRlci1jb2xvciwjZTVlN2ViKX06YmVmb3JlLDphZnRlcnstLXVuLWNvbnRlbnQ6IiJ9aHRtbCw6aG9zdHstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTt0YWItc2l6ZTo0O2ZvbnQtZmVhdHVyZS1zZXR0aW5nczpub3JtYWw7Zm9udC12YXJpYXRpb24tc2V0dGluZ3M6bm9ybWFsOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDtmb250LWZhbWlseTp1aS1zYW5zLXNlcmlmLHN5c3RlbS11aSxzYW5zLXNlcmlmLEFwcGxlIENvbG9yIEVtb2ppLFNlZ29lIFVJIEVtb2ppLFNlZ29lIFVJIFN5bWJvbCxOb3RvIENvbG9yIEVtb2ppO2xpbmUtaGVpZ2h0OjEuNX1ib2R5e2xpbmUtaGVpZ2h0OmluaGVyaXQ7bWFyZ2luOjB9aHJ7aGVpZ2h0OjA7Y29sb3I6aW5oZXJpdDtib3JkZXItdG9wLXdpZHRoOjFweH1hYmJyOndoZXJlKFt0aXRsZV0pey13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWR9aDEsaDIsaDMsaDQsaDUsaDZ7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdH1he2NvbG9yOmluaGVyaXQ7LXdlYmtpdC10ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LWRlY29yYXRpb246aW5oZXJpdH1iLHN0cm9uZ3tmb250LXdlaWdodDpib2xkZXJ9Y29kZSxrYmQsc2FtcCxwcmV7Zm9udC1mZWF0dXJlLXNldHRpbmdzOm5vcm1hbDtmb250LXZhcmlhdGlvbi1zZXR0aW5nczpub3JtYWw7Zm9udC1mYW1pbHk6dWktbW9ub3NwYWNlLFNGTW9uby1SZWd1bGFyLE1lbmxvLE1vbmFjbyxDb25zb2xhcyxMaWJlcmF0aW9uIE1vbm8sQ291cmllciBOZXcsbW9ub3NwYWNlO2ZvbnQtc2l6ZToxZW19c21hbGx7Zm9udC1zaXplOjgwJX1zdWIsc3Vwe3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO2ZvbnQtc2l6ZTo3NSU7bGluZS1oZWlnaHQ6MDtwb3NpdGlvbjpyZWxhdGl2ZX1zdWJ7Ym90dG9tOi0uMjVlbX1zdXB7dG9wOi0uNWVtfXRhYmxle3RleHQtaW5kZW50OjA7Ym9yZGVyLWNvbG9yOmluaGVyaXQ7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlfWJ1dHRvbixpbnB1dCxvcHRncm91cCxzZWxlY3QsdGV4dGFyZWF7Zm9udC1mZWF0dXJlLXNldHRpbmdzOmluaGVyaXQ7Zm9udC12YXJpYXRpb24tc2V0dGluZ3M6aW5oZXJpdDtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZToxMDAlO2ZvbnQtd2VpZ2h0OmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtjb2xvcjppbmhlcml0O21hcmdpbjowO3BhZGRpbmc6MH1idXR0b24sc2VsZWN0e3RleHQtdHJhbnNmb3JtOm5vbmV9YnV0dG9uLFt0eXBlPWJ1dHRvbl0sW3R5cGU9cmVzZXRdLFt0eXBlPXN1Ym1pdF17LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwO2JhY2tncm91bmQtaW1hZ2U6bm9uZX06LW1vei1mb2N1c3Jpbmd7b3V0bGluZTphdXRvfTotbW96LXVpLWludmFsaWR7Ym94LXNoYWRvdzpub25lfXByb2dyZXNze3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b306Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b257aGVpZ2h0OmF1dG99W3R5cGU9c2VhcmNoXXstd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkO291dGxpbmUtb2Zmc2V0Oi0ycHh9Ojotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uey13ZWJraXQtYXBwZWFyYW5jZTpub25lfTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b257LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbjtmb250OmluaGVyaXR9c3VtbWFyeXtkaXNwbGF5Omxpc3QtaXRlbX1ibG9ja3F1b3RlLGRsLGRkLGgxLGgyLGgzLGg0LGg1LGg2LGhyLGZpZ3VyZSxwLHByZXttYXJnaW46MH1maWVsZHNldHttYXJnaW46MDtwYWRkaW5nOjB9bGVnZW5ke3BhZGRpbmc6MH1vbCx1bCxtZW51e21hcmdpbjowO3BhZGRpbmc6MDtsaXN0LXN0eWxlOm5vbmV9ZGlhbG9ne3BhZGRpbmc6MH10ZXh0YXJlYXtyZXNpemU6dmVydGljYWx9aW5wdXQ6OnBsYWNlaG9sZGVyLHRleHRhcmVhOjpwbGFjZWhvbGRlcntvcGFjaXR5OjE7Y29sb3I6IzljYTNhZn1idXR0b24sW3JvbGU9YnV0dG9uXXtjdXJzb3I6cG9pbnRlcn06ZGlzYWJsZWR7Y3Vyc29yOmRlZmF1bHR9aW1nLHN2Zyx2aWRlbyxjYW52YXMsYXVkaW8saWZyYW1lLGVtYmVkLG9iamVjdHt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7ZGlzcGxheTpibG9ja31pbWcsdmlkZW97bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG99W2hpZGRlbl06d2hlcmUoOm5vdChbaGlkZGVuPXVudGlsLWZvdW5kXSkpe2Rpc3BsYXk6bm9uZX0qLDpiZWZvcmUsOmFmdGVyLDo6YmFja2Ryb3B7LS11bi1yb3RhdGU6MDstLXVuLXJvdGF0ZS14OjA7LS11bi1yb3RhdGUteTowOy0tdW4tcm90YXRlLXo6MDstLXVuLXNjYWxlLXg6MTstLXVuLXNjYWxlLXk6MTstLXVuLXNjYWxlLXo6MTstLXVuLXNrZXcteDowOy0tdW4tc2tldy15OjA7LS11bi10cmFuc2xhdGUteDowOy0tdW4tdHJhbnNsYXRlLXk6MDstLXVuLXRyYW5zbGF0ZS16OjA7LS11bi1wYW4teDogOy0tdW4tcGFuLXk6IDstLXVuLXBpbmNoLXpvb206IDstLXVuLXNjcm9sbC1zbmFwLXN0cmljdG5lc3M6cHJveGltaXR5Oy0tdW4tb3JkaW5hbDogOy0tdW4tc2xhc2hlZC16ZXJvOiA7LS11bi1udW1lcmljLWZpZ3VyZTogOy0tdW4tbnVtZXJpYy1zcGFjaW5nOiA7LS11bi1udW1lcmljLWZyYWN0aW9uOiA7LS11bi1ib3JkZXItc3BhY2luZy14OjA7LS11bi1ib3JkZXItc3BhY2luZy15OjA7LS11bi1yaW5nLW9mZnNldC1zaGFkb3c6MCAwICMwMDAwOy0tdW4tcmluZy1zaGFkb3c6MCAwICMwMDAwOy0tdW4tc2hhZG93LWluc2V0OiA7LS11bi1zaGFkb3c6MCAwICMwMDAwOy0tdW4tcmluZy1pbnNldDogOy0tdW4tcmluZy1vZmZzZXQtd2lkdGg6MHB4Oy0tdW4tcmluZy1vZmZzZXQtY29sb3I6I2ZmZjstLXVuLXJpbmctd2lkdGg6MHB4Oy0tdW4tcmluZy1jb2xvcjojOTNjNWZkODA7LS11bi1ibHVyOiA7LS11bi1icmlnaHRuZXNzOiA7LS11bi1jb250cmFzdDogOy0tdW4tZHJvcC1zaGFkb3c6IDstLXVuLWdyYXlzY2FsZTogOy0tdW4taHVlLXJvdGF0ZTogOy0tdW4taW52ZXJ0OiA7LS11bi1zYXR1cmF0ZTogOy0tdW4tc2VwaWE6IDstLXVuLWJhY2tkcm9wLWJsdXI6IDstLXVuLWJhY2tkcm9wLWJyaWdodG5lc3M6IDstLXVuLWJhY2tkcm9wLWNvbnRyYXN0OiA7LS11bi1iYWNrZHJvcC1ncmF5c2NhbGU6IDstLXVuLWJhY2tkcm9wLWh1ZS1yb3RhdGU6IDstLXVuLWJhY2tkcm9wLWludmVydDogOy0tdW4tYmFja2Ryb3Atb3BhY2l0eTogOy0tdW4tYmFja2Ryb3Atc2F0dXJhdGU6IDstLXVuLWJhY2tkcm9wLXNlcGlhOiB9LmZsZXgtY2VudGVye2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleH0uYnV0dG9uLWZvY3VzOmZvY3VzLXZpc2libGV7b3V0bGluZS13aWR0aDoycHg7b3V0bGluZS1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWZvY3VzKSA7b3V0bGluZS1vZmZzZXQ6MXB4O291dGxpbmUtc3R5bGU6c29saWR9LmJ1dHRvbi1mb2N1cy1zZWNvbmRhcnk6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLXdpZHRoOjJweDtvdXRsaW5lLWNvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktZm9jdXMpIDtvdXRsaW5lLWNvbG9yOnZhcigtLWNvbG9yLXNlY29uZGFyeS1mb2N1cykgO291dGxpbmUtb2Zmc2V0OjFweDtvdXRsaW5lLXN0eWxlOnNvbGlkfS5jb250ZW50LWZvY3VzOmZvY3VzLXZpc2libGV7b3V0bGluZS13aWR0aDoycHg7b3V0bGluZS1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWZvY3VzKSA7b3V0bGluZS1vZmZzZXQ6LTVweDtvdXRsaW5lLXN0eWxlOnNvbGlkfS5jb250ZW50LWZvY3VzLXNlY29uZGFyeTpmb2N1cy12aXNpYmxle291dGxpbmUtd2lkdGg6MnB4O291dGxpbmUtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1mb2N1cykgO291dGxpbmUtY29sb3I6dmFyKC0tY29sb3Itc2Vjb25kYXJ5LWZvY3VzKSA7b3V0bGluZS1vZmZzZXQ6LTVweDtvdXRsaW5lLXN0eWxlOnNvbGlkfS5cW2NsaXBcOnJlY3RcKDBcLDBcLDBcLDBcKVxde2NsaXA6cmVjdCgwLDAsMCwwKX0uc3Itb25seXtjbGlwOnJlY3QoMCwwLDAsMCk7d2hpdGUtc3BhY2U6bm93cmFwO2JvcmRlci13aWR0aDowO3dpZHRoOjFweDtoZWlnaHQ6MXB4O21hcmdpbjotMXB4O3BhZGRpbmc6MDtwb3NpdGlvbjphYnNvbHV0ZTtvdmVyZmxvdzpoaWRkZW59LnBvaW50ZXItZXZlbnRzLWF1dG97cG9pbnRlci1ldmVudHM6YXV0b30ucG9pbnRlci1ldmVudHMtbm9uZXtwb2ludGVyLWV2ZW50czpub25lfS5hYnNvbHV0ZXtwb3NpdGlvbjphYnNvbHV0ZX0uZml4ZWR7cG9zaXRpb246Zml4ZWR9LnJlbGF0aXZle3Bvc2l0aW9uOnJlbGF0aXZlfS5zdGlja3l7cG9zaXRpb246c3RpY2t5fS4tYm90dG9tLTRcLjV7Ym90dG9tOi0xLjEyNXJlbX0uLXJpZ2h0LVxbNHB4XF17cmlnaHQ6LTRweH0uLXRvcC1cWzRweFxde3RvcDotNHB4fS5ib3R0b20tXFstOHB4XF17Ym90dG9tOi04cHh9LmJvdHRvbS0we2JvdHRvbTowfS5ib3R0b20tM3tib3R0b206Ljc1cmVtfS5ib3R0b20tZnVsbHtib3R0b206MTAwJX0ubGVmdC1cWzJweFxde2xlZnQ6MnB4fS5sZWZ0LTB7bGVmdDowfS5sZWZ0LTFcLzJ7bGVmdDo1MCV9LmxlZnQtMntsZWZ0Oi41cmVtfS5sZWZ0LTNcLjd7bGVmdDouOTI1cmVtfS5yaWdodC1cWzE2cHhcXXtyaWdodDoxNnB4fS5yaWdodC0we3JpZ2h0OjB9LnJpZ2h0LTBcLjV7cmlnaHQ6LjEyNXJlbX0ucmlnaHQtMntyaWdodDouNXJlbX0ucmlnaHQtM3tyaWdodDouNzVyZW19LnRvcC1cWzJweFxde3RvcDoycHh9LnRvcC0we3RvcDowfS50b3AtMnt0b3A6LjVyZW19LnRvcC0ze3RvcDouNzVyZW19LnRvcC0zXC43e3RvcDouOTI1cmVtfS50b3AtMzB7dG9wOjcuNXJlbX0udG9wLTQwe3RvcDoxMHJlbX0ubGluZS1jbGFtcC0xey13ZWJraXQtbGluZS1jbGFtcDoxO2xpbmUtY2xhbXA6MTstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7ZGlzcGxheTotd2Via2l0LWJveDtvdmVyZmxvdzpoaWRkZW59LmxpbmUtY2xhbXAtMnstd2Via2l0LWxpbmUtY2xhbXA6MjtsaW5lLWNsYW1wOjI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVufS5saW5lLWNsYW1wLTN7LXdlYmtpdC1saW5lLWNsYW1wOjM7bGluZS1jbGFtcDozOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtkaXNwbGF5Oi13ZWJraXQtYm94O292ZXJmbG93OmhpZGRlbn0ubGluZS1jbGFtcC01ey13ZWJraXQtbGluZS1jbGFtcDo1O2xpbmUtY2xhbXA6NTstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7ZGlzcGxheTotd2Via2l0LWJveDtvdmVyZmxvdzpoaWRkZW59LnotMXt6LWluZGV4OjF9LnotMTB7ei1pbmRleDoxMH0uei0xMDB7ei1pbmRleDoxMDB9LnotNTB7ei1pbmRleDo1MH0uZ3JpZHtkaXNwbGF5OmdyaWR9LmZsb2F0LXJpZ2h0e2Zsb2F0OnJpZ2h0fS4tbS1weHttYXJnaW46LTFweH0ubS0ze21hcmdpbjouNzVyZW19Lm0tYXV0b3ttYXJnaW46YXV0b30ubTE1e21hcmdpbjozLjc1cmVtfS5tMTZ7bWFyZ2luOjRyZW19Lm0xOHttYXJnaW46NC41cmVtfS5tMjF7bWFyZ2luOjUuMjVyZW19Lm0yMnttYXJnaW46NS41cmVtfS5tNnttYXJnaW46MS41cmVtfS5tN3ttYXJnaW46MS43NXJlbX0ubTh7bWFyZ2luOjJyZW19Lm05e21hcmdpbjoyLjI1cmVtfS5teC0ye21hcmdpbi1sZWZ0Oi41cmVtO21hcmdpbi1yaWdodDouNXJlbX0ubXgtM3ttYXJnaW4tbGVmdDouNzVyZW07bWFyZ2luLXJpZ2h0Oi43NXJlbX0ubXgtNHttYXJnaW4tbGVmdDoxcmVtO21hcmdpbi1yaWdodDoxcmVtfS5teS0ze21hcmdpbi10b3A6Ljc1cmVtO21hcmdpbi1ib3R0b206Ljc1cmVtfS5teS00e21hcmdpbi10b3A6MXJlbTttYXJnaW4tYm90dG9tOjFyZW19Li1tdC0ze21hcmdpbi10b3A6LS43NXJlbX0ubWItXFsycHhcXXttYXJnaW4tYm90dG9tOjJweH0ubWItMHttYXJnaW4tYm90dG9tOjB9Lm1iLTEsLm5vdC1sYXN0LW9mLXR5cGVcOm1iLTE6bm90KDpsYXN0LW9mLXR5cGUpe21hcmdpbi1ib3R0b206LjI1cmVtfS5tYi0ye21hcmdpbi1ib3R0b206LjVyZW19Lm1iLTN7bWFyZ2luLWJvdHRvbTouNzVyZW19Lm1iLTR7bWFyZ2luLWJvdHRvbToxcmVtfS5tYi02e21hcmdpbi1ib3R0b206MS41cmVtfS5tbC0wXC41e21hcmdpbi1sZWZ0Oi4xMjVyZW19Lm1sLTF7bWFyZ2luLWxlZnQ6LjI1cmVtfS5tbC0ye21hcmdpbi1sZWZ0Oi41cmVtfS5tbC0ze21hcmdpbi1sZWZ0Oi43NXJlbX0ubWwtNHttYXJnaW4tbGVmdDoxcmVtfS5tbC04e21hcmdpbi1sZWZ0OjJyZW19Lm1yLTF7bWFyZ2luLXJpZ2h0Oi4yNXJlbX0ubXItMVwuNXttYXJnaW4tcmlnaHQ6LjM3NXJlbX0ubXItMTB7bWFyZ2luLXJpZ2h0OjIuNXJlbX0ubXItMnttYXJnaW4tcmlnaHQ6LjVyZW19Lm1yLTN7bWFyZ2luLXJpZ2h0Oi43NXJlbX0ubXItNHttYXJnaW4tcmlnaHQ6MXJlbX0ubXQtXFsxcHhcXXttYXJnaW4tdG9wOjFweH0ubXQtMFwuNXttYXJnaW4tdG9wOi4xMjVyZW19Lm10LTJ7bWFyZ2luLXRvcDouNXJlbX0ubXQtM3ttYXJnaW4tdG9wOi43NXJlbX0ubXQtNHttYXJnaW4tdG9wOjFyZW19Lm10LTZ7bWFyZ2luLXRvcDoxLjVyZW19Lm10LTh7bWFyZ2luLXRvcDoycmVtfS5maXJzdC1vZi10eXBlXDptdC0yOmZpcnN0LW9mLXR5cGV7bWFyZ2luLXRvcDouNXJlbX0uaW5saW5le2Rpc3BsYXk6aW5saW5lfS5ibG9ja3tkaXNwbGF5OmJsb2NrfS5pbmxpbmUtYmxvY2t7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmhpZGRlbntkaXNwbGF5Om5vbmV9LmgtXFsxXC4yZW1cXXtoZWlnaHQ6MS4yZW19LmgtXFsxZW1cXXtoZWlnaHQ6MWVtfS5oLVxbNTBweFxde2hlaWdodDo1MHB4fS5oLTF7aGVpZ2h0Oi4yNXJlbX0uaC0xMHtoZWlnaHQ6Mi41cmVtfS5oLTExe2hlaWdodDoyLjc1cmVtfS5oLTEye2hlaWdodDozcmVtfS5oLTJ7aGVpZ2h0Oi41cmVtfS5oLTJcLjV7aGVpZ2h0Oi42MjVyZW19LmgtMjB7aGVpZ2h0OjVyZW19LmgtMzB7aGVpZ2h0OjcuNXJlbX0uaC00e2hlaWdodDoxcmVtfS5oLTQwe2hlaWdodDoxMHJlbX0uaC00MDBweHtoZWlnaHQ6NDAwcHh9LmgtNXtoZWlnaHQ6MS4yNXJlbX0uaC01NHB4e2hlaWdodDo1NHB4fS5oLTZ7aGVpZ2h0OjEuNXJlbX0uaC02MHB4e2hlaWdodDo2MHB4fS5oLTY0cHh7aGVpZ2h0OjY0cHh9LmgtN3toZWlnaHQ6MS43NXJlbX0uaC04e2hlaWdodDoycmVtfS5oLWZ1bGx7aGVpZ2h0OjEwMCV9LmgtcHh7aGVpZ2h0OjFweH0ubWF4LWgtXFsxMjVweFxde21heC1oZWlnaHQ6MTI1cHh9Lm1heC1oLVxbMjQwcHhcXXttYXgtaGVpZ2h0OjI0MHB4fS5tYXgtaC1cWzMycHhcXXttYXgtaGVpZ2h0OjMycHh9Lm1heC1oLTEzMnB4e21heC1oZWlnaHQ6MTMycHh9Lm1heC1oLTY0e21heC1oZWlnaHQ6MTZyZW19Lm1heC1oLTgwdmh7bWF4LWhlaWdodDo4MHZofS5tYXgtaC04NnttYXgtaGVpZ2h0OjIxLjVyZW19Lm1heC1oLWZ1bGx7bWF4LWhlaWdodDoxMDAlfS5tYXgtdy1cWzgwXCVcXXttYXgtd2lkdGg6ODAlfS5tYXgtdy1cWzg1XCVcXXttYXgtd2lkdGg6ODUlfS5tYXgtdy1cW2NhbGNcKDEwMFwlLTE1MHB4XClcXXttYXgtd2lkdGg6Y2FsYygxMDAlIC0gMTUwcHgpfS5tYXgtdy1mdWxse21heC13aWR0aDoxMDAlfS5taW4taC1cWzE2cHhcXXttaW4taGVpZ2h0OjE2cHh9Lm1pbi13LVxbMTZweFxde21pbi13aWR0aDoxNnB4fS5taW4tdy0we21pbi13aWR0aDowfS5taW4tdy01e21pbi13aWR0aDoxLjI1cmVtfS5taW4tdy01XC41e21pbi13aWR0aDoxLjM3NXJlbX0ubWluLXctNnttaW4td2lkdGg6MS41cmVtfS53LVxbMVwuMmVtXF17d2lkdGg6MS4yZW19LnctXFsxZW1cXXt3aWR0aDoxZW19LnctXFs1MHB4XF17d2lkdGg6NTBweH0udy0we3dpZHRoOjB9LnctMXt3aWR0aDouMjVyZW19LnctMTF7d2lkdGg6Mi43NXJlbX0udy0xMTZ7d2lkdGg6MjlyZW19LnctMTJ7d2lkdGg6M3JlbX0udy0ye3dpZHRoOi41cmVtfS53LTJcLjV7d2lkdGg6LjYyNXJlbX0udy0yODBweHt3aWR0aDoyODBweH0udy0zNDhweHt3aWR0aDozNDhweH0udy00e3dpZHRoOjFyZW19LnctNXt3aWR0aDoxLjI1cmVtfS53LTUye3dpZHRoOjEzcmVtfS53LTU2e3dpZHRoOjE0cmVtfS53LTZ7d2lkdGg6MS41cmVtfS53LTYwcHh7d2lkdGg6NjBweH0udy03e3dpZHRoOjEuNzVyZW19LnctOHt3aWR0aDoycmVtfS53LWZ1bGx7d2lkdGg6MTAwJX0udy1tYXh7d2lkdGg6bWF4LWNvbnRlbnR9LnctcHh7d2lkdGg6MXB4fS5mbGV4e2Rpc3BsYXk6ZmxleH0uaW5saW5lLWZsZXh7ZGlzcGxheTppbmxpbmUtZmxleH0uZmxleC0xe2ZsZXg6MX0uZmxleC1ub25le2ZsZXg6bm9uZX0uZmxleC1zaHJpbmt7ZmxleC1zaHJpbms6MX0uZmxleC1zaHJpbmstMCwuc2hyaW5rLTB7ZmxleC1zaHJpbms6MH0uZmxleC1ncm93LC5ncm93e2ZsZXgtZ3JvdzoxfS5mbGV4LXJvd3tmbGV4LWRpcmVjdGlvbjpyb3d9LmZsZXgtY29se2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZmxleC13cmFwe2ZsZXgtd3JhcDp3cmFwfS4tdHJhbnNsYXRlLXgtMVwvMnstLXVuLXRyYW5zbGF0ZS14Oi01MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tdW4tdHJhbnNsYXRlLXgpKSB0cmFuc2xhdGVZKHZhcigtLXVuLXRyYW5zbGF0ZS15KSkgdHJhbnNsYXRlWih2YXIoLS11bi10cmFuc2xhdGUteikpIHJvdGF0ZSh2YXIoLS11bi1yb3RhdGUpKSByb3RhdGVYKHZhcigtLXVuLXJvdGF0ZS14KSkgcm90YXRlWSh2YXIoLS11bi1yb3RhdGUteSkpIHJvdGF0ZVoodmFyKC0tdW4tcm90YXRlLXopKSBza2V3WCh2YXIoLS11bi1za2V3LXgpKSBza2V3WSh2YXIoLS11bi1za2V3LXkpKSBzY2FsZVgodmFyKC0tdW4tc2NhbGUteCkpIHNjYWxlWSh2YXIoLS11bi1zY2FsZS15KSkgc2NhbGVaKHZhcigtLXVuLXNjYWxlLXopKX0udHJhbnNsYXRlLXgtZnVsbHstLXVuLXRyYW5zbGF0ZS14OjEwMCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tdW4tdHJhbnNsYXRlLXgpKSB0cmFuc2xhdGVZKHZhcigtLXVuLXRyYW5zbGF0ZS15KSkgdHJhbnNsYXRlWih2YXIoLS11bi10cmFuc2xhdGUteikpIHJvdGF0ZSh2YXIoLS11bi1yb3RhdGUpKSByb3RhdGVYKHZhcigtLXVuLXJvdGF0ZS14KSkgcm90YXRlWSh2YXIoLS11bi1yb3RhdGUteSkpIHJvdGF0ZVoodmFyKC0tdW4tcm90YXRlLXopKSBza2V3WCh2YXIoLS11bi1za2V3LXgpKSBza2V3WSh2YXIoLS11bi1za2V3LXkpKSBzY2FsZVgodmFyKC0tdW4tc2NhbGUteCkpIHNjYWxlWSh2YXIoLS11bi1zY2FsZS15KSkgc2NhbGVaKHZhcigtLXVuLXNjYWxlLXopKX0uZ3JvdXA6aG92ZXIgLmdyb3VwLWhvdmVyXDpzY2FsZS0xMTV7LS11bi1zY2FsZS14OjEuMTU7LS11bi1zY2FsZS15OjEuMTU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tdW4tdHJhbnNsYXRlLXgpKSB0cmFuc2xhdGVZKHZhcigtLXVuLXRyYW5zbGF0ZS15KSkgdHJhbnNsYXRlWih2YXIoLS11bi10cmFuc2xhdGUteikpIHJvdGF0ZSh2YXIoLS11bi1yb3RhdGUpKSByb3RhdGVYKHZhcigtLXVuLXJvdGF0ZS14KSkgcm90YXRlWSh2YXIoLS11bi1yb3RhdGUteSkpIHJvdGF0ZVoodmFyKC0tdW4tcm90YXRlLXopKSBza2V3WCh2YXIoLS11bi1za2V3LXgpKSBza2V3WSh2YXIoLS11bi1za2V3LXkpKSBzY2FsZVgodmFyKC0tdW4tc2NhbGUteCkpIHNjYWxlWSh2YXIoLS11bi1zY2FsZS15KSkgc2NhbGVaKHZhcigtLXVuLXNjYWxlLXopKX0uaG92ZXJcOnNjYWxlLTEyMDpob3ZlcnstLXVuLXNjYWxlLXg6MS4yOy0tdW4tc2NhbGUteToxLjI7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tdW4tdHJhbnNsYXRlLXgpKSB0cmFuc2xhdGVZKHZhcigtLXVuLXRyYW5zbGF0ZS15KSkgdHJhbnNsYXRlWih2YXIoLS11bi10cmFuc2xhdGUteikpIHJvdGF0ZSh2YXIoLS11bi1yb3RhdGUpKSByb3RhdGVYKHZhcigtLXVuLXJvdGF0ZS14KSkgcm90YXRlWSh2YXIoLS11bi1yb3RhdGUteSkpIHJvdGF0ZVoodmFyKC0tdW4tcm90YXRlLXopKSBza2V3WCh2YXIoLS11bi1za2V3LXgpKSBza2V3WSh2YXIoLS11bi1za2V3LXkpKSBzY2FsZVgodmFyKC0tdW4tc2NhbGUteCkpIHNjYWxlWSh2YXIoLS11bi1zY2FsZS15KSkgc2NhbGVaKHZhcigtLXVuLXNjYWxlLXopKX0udHJhbnNmb3Jte3RyYW5zZm9ybTp0cmFuc2xhdGVYKHZhcigtLXVuLXRyYW5zbGF0ZS14KSkgdHJhbnNsYXRlWSh2YXIoLS11bi10cmFuc2xhdGUteSkpIHRyYW5zbGF0ZVoodmFyKC0tdW4tdHJhbnNsYXRlLXopKSByb3RhdGUodmFyKC0tdW4tcm90YXRlKSkgcm90YXRlWCh2YXIoLS11bi1yb3RhdGUteCkpIHJvdGF0ZVkodmFyKC0tdW4tcm90YXRlLXkpKSByb3RhdGVaKHZhcigtLXVuLXJvdGF0ZS16KSkgc2tld1godmFyKC0tdW4tc2tldy14KSkgc2tld1kodmFyKC0tdW4tc2tldy15KSkgc2NhbGVYKHZhcigtLXVuLXNjYWxlLXgpKSBzY2FsZVkodmFyKC0tdW4tc2NhbGUteSkpIHNjYWxlWih2YXIoLS11bi1zY2FsZS16KSl9QGtleWZyYW1lcyBwdWxzZXswJSx0b3tvcGFjaXR5OjF9NTAle29wYWNpdHk6LjV9fUBrZXlmcmFtZXMgcHVzaC10by1sZWZ0ezAle21hcmdpbi1yaWdodDotNTAlO3RyYW5zZm9ybTpzY2FsZSgwKX10b3ttYXJnaW4tcmlnaHQ6aW5oZXJpdDt0cmFuc2Zvcm06c2NhbGUoMSl9fUBrZXlmcmFtZXMgc3BpbnswJXtyb3RhdGU6MGRlZ310b3tyb3RhdGU6MzYwZGVnfX1Aa2V5ZnJhbWVzIHR5cGluZ3swJSw1MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9MjUle3RyYW5zZm9ybTp0cmFuc2xhdGVZKC02cHgpfX0uYW5pbWF0ZS1wdWxzZXthbmltYXRpb246MnMgY3ViaWMtYmV6aWVyKC40LDAsLjYsMSkgaW5maW5pdGUgcHVsc2V9LmFuaW1hdGUtcHVzaC10by1sZWZ0e2FuaW1hdGlvbjouMjVzIGVhc2UtaW4tb3V0IHB1c2gtdG8tbGVmdH0uYW5pbWF0ZS1zcGlue2FuaW1hdGlvbjoxcyBsaW5lYXIgaW5maW5pdGUgc3Bpbn0uYW5pbWF0ZS10eXBpbmd7YW5pbWF0aW9uOi44cyBlYXNlLWluLW91dCB0eXBpbmd9LmN1cnNvci1hdXRve2N1cnNvcjphdXRvfS5jdXJzb3ItcG9pbnRlciwuaG92ZXJcOmN1cnNvci1wb2ludGVyOmhvdmVye2N1cnNvcjpwb2ludGVyfS5jdXJzb3Itbm90LWFsbG93ZWR7Y3Vyc29yOm5vdC1hbGxvd2VkfS5zZWxlY3Qtbm9uZXstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0ucmVzaXple3Jlc2l6ZTpib3RofS5yZXNpemUtbm9uZXtyZXNpemU6bm9uZX0uc2Nyb2xsLW10LTJ7c2Nyb2xsLW1hcmdpbi10b3A6LjVyZW19Lmxpc3QtZGVjaW1hbHtsaXN0LXN0eWxlLXR5cGU6ZGVjaW1hbH0ubGlzdC1kaXNje2xpc3Qtc3R5bGUtdHlwZTpkaXNjfS5jb250ZW50LWNlbnRlcnthbGlnbi1jb250ZW50OmNlbnRlcn0uaXRlbXMtc3RhcnR7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uaXRlbXMtZW5ke2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5pdGVtcy1jZW50ZXJ7YWxpZ24taXRlbXM6Y2VudGVyfS5pdGVtcy1iYXNlbGluZXthbGlnbi1pdGVtczpiYXNlbGluZX0uc2VsZi1zdHJldGNoe2FsaWduLXNlbGY6c3RyZXRjaH0uanVzdGlmeS1zdGFydHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0uanVzdGlmeS1lbmR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS5qdXN0aWZ5LWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5qdXN0aWZ5LWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LmdhcC0ye2dhcDouNXJlbX0uZ2FwLTN7Z2FwOi43NXJlbX0uc3BhY2UteC0yPjpub3QoW2hpZGRlbl0pfjpub3QoW2hpZGRlbl0pey0tdW4tc3BhY2UteC1yZXZlcnNlOjA7bWFyZ2luLWxlZnQ6Y2FsYyguNXJlbSAqIGNhbGMoMSAtIHZhcigtLXVuLXNwYWNlLXgtcmV2ZXJzZSkpKTttYXJnaW4tcmlnaHQ6Y2FsYyguNXJlbSAqIHZhcigtLXVuLXNwYWNlLXgtcmV2ZXJzZSkpfS5zcGFjZS14LTU+Om5vdChbaGlkZGVuXSl+Om5vdChbaGlkZGVuXSl7LS11bi1zcGFjZS14LXJldmVyc2U6MDttYXJnaW4tbGVmdDpjYWxjKDEuMjVyZW0gKiBjYWxjKDEgLSB2YXIoLS11bi1zcGFjZS14LXJldmVyc2UpKSk7bWFyZ2luLXJpZ2h0OmNhbGMoMS4yNXJlbSAqIHZhcigtLXVuLXNwYWNlLXgtcmV2ZXJzZSkpfS5zcGFjZS15LTI+Om5vdChbaGlkZGVuXSl+Om5vdChbaGlkZGVuXSl7LS11bi1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tdG9wOmNhbGMoLjVyZW0gKiBjYWxjKDEgLSB2YXIoLS11bi1zcGFjZS15LXJldmVyc2UpKSk7bWFyZ2luLWJvdHRvbTpjYWxjKC41cmVtICogdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSl9LnNwYWNlLXktND46bm90KFtoaWRkZW5dKX46bm90KFtoaWRkZW5dKXstLXVuLXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi10b3A6Y2FsYygxcmVtICogY2FsYygxIC0gdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSkpO21hcmdpbi1ib3R0b206Y2FsYygxcmVtICogdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSl9LnNwYWNlLXktNT46bm90KFtoaWRkZW5dKX46bm90KFtoaWRkZW5dKXstLXVuLXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi10b3A6Y2FsYygxLjI1cmVtICogY2FsYygxIC0gdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSkpO21hcmdpbi1ib3R0b206Y2FsYygxLjI1cmVtICogdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSl9Lm92ZXJmbG93LWF1dG97b3ZlcmZsb3c6YXV0b30ub3ZlcmZsb3ctY2xpcHtvdmVyZmxvdzpjbGlwfS5vdmVyZmxvdy1oaWRkZW57b3ZlcmZsb3c6aGlkZGVufS5vdmVyZmxvdy14LWhpZGRlbntvdmVyZmxvdy14OmhpZGRlbn0ub3ZlcmZsb3cteS1hdXRve292ZXJmbG93LXk6YXV0b30ub3ZlcmZsb3cteS1zY3JvbGx7b3ZlcmZsb3cteTpzY3JvbGx9Lm92ZXJzY3JvbGwtY29udGFpbntvdmVyc2Nyb2xsLWJlaGF2aW9yOmNvbnRhaW59LnRydW5jYXRle3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbn0udGV4dC1lbGxpcHNpc3t0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS53aGl0ZXNwYWNlLW5vcm1hbHt3aGl0ZS1zcGFjZTpub3JtYWx9LndoaXRlc3BhY2Utbm93cmFwe3doaXRlLXNwYWNlOm5vd3JhcH0ud2hpdGVzcGFjZS1wcmV7d2hpdGUtc3BhY2U6cHJlfS53aGl0ZXNwYWNlLXByZS13cmFwe3doaXRlLXNwYWNlOnByZS13cmFwfS5icmVhay13b3Jkc3tvdmVyZmxvdy13cmFwOmJyZWFrLXdvcmR9LmJyZWFrLWFsbHt3b3JkLWJyZWFrOmJyZWFrLWFsbH0uYm9yZGVyLC5ib3JkZXItMXtib3JkZXItd2lkdGg6MXB4fS5ib3JkZXItMHtib3JkZXItd2lkdGg6MH0uYm9yZGVyLTJ7Ym9yZGVyLXdpZHRoOjJweH0uYm9yZGVyLXQtMntib3JkZXItdG9wLXdpZHRoOjJweH0uYm9yZGVyLWdyYXktMzAwey0tdW4tYm9yZGVyLW9wYWNpdHk6MTtib3JkZXItY29sb3I6cmdiKDIwOSAyMTMgMjE5L3ZhcigtLXVuLWJvcmRlci1vcGFjaXR5KSl9LmJvcmRlci1ncmVlbi00MDB7LS11bi1ib3JkZXItb3BhY2l0eToxO2JvcmRlci1jb2xvcjpyZ2IoNzQgMjIyIDEyOC92YXIoLS11bi1ib3JkZXItb3BhY2l0eSkpfS5ib3JkZXItcHJpbWFyeXtib3JkZXItY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeSl9LmJvcmRlci1wcmltYXJ5LWJ1dHRvbntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pfS5ib3JkZXItcmVkLTUwMHstLXVuLWJvcmRlci1vcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnJnYigyMzkgNjggNjgvdmFyKC0tdW4tYm9yZGVyLW9wYWNpdHkpKX0uYm9yZGVyLXNsYXRlLTIwMHstLXVuLWJvcmRlci1vcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnJnYigyMjYgMjMyIDI0MC92YXIoLS11bi1ib3JkZXItb3BhY2l0eSkpfS5ib3JkZXItd2hpdGV7LS11bi1ib3JkZXItb3BhY2l0eToxO2JvcmRlci1jb2xvcjpyZ2IoMjU1IDI1NSAyNTUvdmFyKC0tdW4tYm9yZGVyLW9wYWNpdHkpKX0uZm9jdXNcOmJvcmRlci1ibHVlLTUwMDpmb2N1c3stLXVuLWJvcmRlci1vcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnJnYig1OSAxMzAgMjQ2L3ZhcigtLXVuLWJvcmRlci1vcGFjaXR5KSl9LmJvcmRlci10LW5ldXRyYWwtMTAwey0tdW4tYm9yZGVyLW9wYWNpdHk6MTstLXVuLWJvcmRlci10b3Atb3BhY2l0eTp2YXIoLS11bi1ib3JkZXItb3BhY2l0eSk7Ym9yZGVyLXRvcC1jb2xvcjpyZ2IoMjQ1IDI0NSAyNDUvdmFyKC0tdW4tYm9yZGVyLXRvcC1vcGFjaXR5KSl9LmJvcmRlci1yb3VuZGVkLWZ1bGwsLnJvdW5kZWQtZnVsbHtib3JkZXItcmFkaXVzOjk5OTlweH0ucm91bmRlZC0yLC5yb3VuZGVkLWxne2JvcmRlci1yYWRpdXM6LjVyZW19LnJvdW5kZWQtMnhse2JvcmRlci1yYWRpdXM6MXJlbX0ucm91bmRlZC0zeGwsLnJvdW5kZWQtNntib3JkZXItcmFkaXVzOjEuNXJlbX0ucm91bmRlZC1tZHtib3JkZXItcmFkaXVzOi4zNzVyZW19LnJvdW5kZWQteGx7Ym9yZGVyLXJhZGl1czouNzVyZW19LnJvdW5kZWQtbHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOi4yNXJlbTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOi4yNXJlbX0ucm91bmRlZC1sLTN4bHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjEuNXJlbTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjEuNXJlbX0ucm91bmRlZC1ye2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOi4yNXJlbTtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czouMjVyZW19LnJvdW5kZWQtci0zeGx7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MS41cmVtO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjEuNXJlbX0ucm91bmRlZC10LTZ7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czoxLjVyZW07Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MS41cmVtfS5yb3VuZGVkLWxiLTN4bHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjEuNXJlbX0ucm91bmRlZC1sdC0zeGx7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czoxLjVyZW19LnJvdW5kZWQtcmItM3hse2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjEuNXJlbX0ucm91bmRlZC1ydC0zeGx7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MS41cmVtfS5ib3JkZXItZGFzaGVke2JvcmRlci1zdHlsZTpkYXNoZWR9LmJvcmRlci1ub25le2JvcmRlci1zdHlsZTpub25lfS5iZy1ibGFja3stLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigwIDAgMC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1ibGFja1wvODB7YmFja2dyb3VuZC1jb2xvcjojMDAwY30uYmctZW1lcmFsZC01MDB7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMTYgMTg1IDEyOS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1ncmF5LTIwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMjkgMjMxIDIzNS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1ncmF5LTMwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMDkgMjEzIDIxOS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1ncmF5LTQwMFwvXFtcLjk1XF17YmFja2dyb3VuZC1jb2xvcjojOWNhM2FmZjJ9LmJnLWdyYXktNjAwXC9cW1wuOTVcXXtiYWNrZ3JvdW5kLWNvbG9yOiM0YjU1NjNmMn0uYmctZ3JlZW4tNDAwey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDc0IDIyMiAxMjgvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYmctZ3JlZW4tNTAwey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDM0IDE5NyA5NC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1uZXV0cmFsLTEwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDUgMjQ1IDI0NS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1uZXV0cmFsLTEwMFwvNTB7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1ODB9LmJnLW5ldXRyYWwtNjAwXC80MHtiYWNrZ3JvdW5kLWNvbG9yOiM1MjUyNTI2Nn0uYmctb3JhbmdlLTUwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDkgMTE1IDIyL3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJnLXByaW1hcnktYnV0dG9ue2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pIH0uYmctcmVkLTUwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMzkgNjggNjgvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYmctcmVkLTYwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMjAgMzggMzgvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYmctc2xhdGUtMTAwey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0MSAyNDUgMjQ5L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJnLXNsYXRlLTIwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMjYgMjMyIDI0MC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1zbGF0ZS0zMDB7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjAzIDIxMyAyMjUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYmctc2xhdGUtNDAwey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDE0OCAxNjMgMTg0L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJnLXNsYXRlLTUwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigxMDAgMTE2IDEzOS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy10cmFuc3BhcmVudHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5iZy13aGl0ZXstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNTUgMjU1IDI1NS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5ob3Zlci1iZy1ibGFjazpob3ZlcnstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigwIDAgMC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5ob3Zlci1iZy1lbWVyYWxkLTYwMDpob3ZlcnstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYig1IDE1MCAxMDUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uaG92ZXItYmctcHJpbWFyeS1idXR0b24taG92ZXI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1ob3ZlcikgfS5ob3Zlci1iZy1wcmltYXJ5LWJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uKSB9LmhvdmVyLWJnLXNsYXRlLTEwMDpob3ZlcnstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDEgMjQ1IDI0OS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5ob3Zlci1iZy10cmFuc3BhcmVudDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5ob3Zlclw6Ymctc2xhdGUtMTAwOmhvdmVyey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0MSAyNDUgMjQ5L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJnLW9wYWNpdHktMTAsLmhvdmVyLWJnLW9wYWNpdHktMTA6aG92ZXJ7LS11bi1iZy1vcGFjaXR5Oi4xfS5mcm9tLXdoaXRlXC8xMDB7LS11bi1ncmFkaWVudC1mcm9tLXBvc2l0aW9uOjAlOy0tdW4tZ3JhZGllbnQtZnJvbTojZmZmIHZhcigtLXVuLWdyYWRpZW50LWZyb20tcG9zaXRpb24pOy0tdW4tZ3JhZGllbnQtdG8tcG9zaXRpb246MTAwJTstLXVuLWdyYWRpZW50LXRvOiNmZmYwIHZhcigtLXVuLWdyYWRpZW50LXRvLXBvc2l0aW9uKTstLXVuLWdyYWRpZW50LXN0b3BzOnZhcigtLXVuLWdyYWRpZW50LWZyb20pLCB2YXIoLS11bi1ncmFkaWVudC10byl9LnZpYS13aGl0ZVwvNDB7LS11bi1ncmFkaWVudC12aWEtcG9zaXRpb246NTAlOy0tdW4tZ3JhZGllbnQtdG86I2ZmZjA7LS11bi1ncmFkaWVudC1zdG9wczp2YXIoLS11bi1ncmFkaWVudC1mcm9tKSwgI2ZmZjYgdmFyKC0tdW4tZ3JhZGllbnQtdmlhLXBvc2l0aW9uKSwgdmFyKC0tdW4tZ3JhZGllbnQtdG8pfS52aWEtd2hpdGVcLzUwey0tdW4tZ3JhZGllbnQtdmlhLXBvc2l0aW9uOjUwJTstLXVuLWdyYWRpZW50LXRvOiNmZmYwOy0tdW4tZ3JhZGllbnQtc3RvcHM6dmFyKC0tdW4tZ3JhZGllbnQtZnJvbSksICNmZmZmZmY4MCB2YXIoLS11bi1ncmFkaWVudC12aWEtcG9zaXRpb24pLCB2YXIoLS11bi1ncmFkaWVudC10byl9LnRvLXRyYW5zcGFyZW50ey0tdW4tZ3JhZGllbnQtdG8tcG9zaXRpb246MTAwJTstLXVuLWdyYWRpZW50LXRvOnRyYW5zcGFyZW50IHZhcigtLXVuLWdyYWRpZW50LXRvLXBvc2l0aW9uKX0uZnJvbS0wXCV7LS11bi1ncmFkaWVudC1mcm9tLXBvc2l0aW9uOjAlfS52aWEtNTBcJXstLXVuLWdyYWRpZW50LXZpYS1wb3NpdGlvbjo1MCV9LnZpYS03MFwley0tdW4tZ3JhZGllbnQtdmlhLXBvc2l0aW9uOjcwJX0uYmctZ3JhZGllbnQtdG8tdHstLXVuLWdyYWRpZW50LXNoYXBlOnRvIHRvcCBpbiBva2xjaDstLXVuLWdyYWRpZW50OnZhcigtLXVuLWdyYWRpZW50LXNoYXBlKSwgdmFyKC0tdW4tZ3JhZGllbnQtc3RvcHMpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHZhcigtLXVuLWdyYWRpZW50KSl9LmZpbGwtY3VycmVudHtmaWxsOmN1cnJlbnRDb2xvcn0uZmlsbC1wcmltYXJ5LWJ1dHRvbntmaWxsOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uKSB9LmZpbGwtcHJpbWFyeS1idXR0b24tY29udGVudHtmaWxsOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uLWNvbnRlbnQpIH0ub2JqZWN0LWNvbnRhaW57b2JqZWN0LWZpdDpjb250YWlufS5wLTB7cGFkZGluZzowfS5wLTBcLjh7cGFkZGluZzouMnJlbX0ucC0xe3BhZGRpbmc6LjI1cmVtfS5wLTFcLjV7cGFkZGluZzouMzc1cmVtfS5wLTJ7cGFkZGluZzouNXJlbX0ucC0ze3BhZGRpbmc6Ljc1cmVtfS5wLTR7cGFkZGluZzoxcmVtfS5wLTh7cGFkZGluZzoycmVtfS5weCwucHgtNHtwYWRkaW5nLWxlZnQ6MXJlbTtwYWRkaW5nLXJpZ2h0OjFyZW19LnB4LTF7cGFkZGluZy1sZWZ0Oi4yNXJlbTtwYWRkaW5nLXJpZ2h0Oi4yNXJlbX0ucHgtMntwYWRkaW5nLWxlZnQ6LjVyZW07cGFkZGluZy1yaWdodDouNXJlbX0ucHgtM3twYWRkaW5nLWxlZnQ6Ljc1cmVtO3BhZGRpbmctcmlnaHQ6Ljc1cmVtfS5weC04e3BhZGRpbmctbGVmdDoycmVtO3BhZGRpbmctcmlnaHQ6MnJlbX0ucHktMXtwYWRkaW5nLXRvcDouMjVyZW07cGFkZGluZy1ib3R0b206LjI1cmVtfS5weS0ye3BhZGRpbmctdG9wOi41cmVtO3BhZGRpbmctYm90dG9tOi41cmVtfS5weS0yXC41e3BhZGRpbmctdG9wOi42MjVyZW07cGFkZGluZy1ib3R0b206LjYyNXJlbX0ucHktM3twYWRkaW5nLXRvcDouNzVyZW07cGFkZGluZy1ib3R0b206Ljc1cmVtfS5wYi0we3BhZGRpbmctYm90dG9tOjB9LnBiLTF7cGFkZGluZy1ib3R0b206LjI1cmVtfS5wYi0ye3BhZGRpbmctYm90dG9tOi41cmVtfS5wYi0ze3BhZGRpbmctYm90dG9tOi43NXJlbX0ucGItNHtwYWRkaW5nLWJvdHRvbToxcmVtfS5wbC0ye3BhZGRpbmctbGVmdDouNXJlbX0ucGwtNCwuZ3JvdXA6aG92ZXIgLmdyb3VwLWhvdmVyXDpub3QtZmlyc3RcOnBsLTQ6bm90KDpmaXJzdC1jaGlsZCl7cGFkZGluZy1sZWZ0OjFyZW19LnByLTF7cGFkZGluZy1yaWdodDouMjVyZW19LnByLTR7cGFkZGluZy1yaWdodDoxcmVtfS5wdC0xe3BhZGRpbmctdG9wOi4yNXJlbX0ucHQtNntwYWRkaW5nLXRvcDoxLjVyZW19LnB0LTl7cGFkZGluZy10b3A6Mi4yNXJlbX0udGV4dC1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LnRleHQtbGVmdHt0ZXh0LWFsaWduOmxlZnR9LnRleHQtMnhse2ZvbnQtc2l6ZToxLjVyZW07bGluZS1oZWlnaHQ6MnJlbX0udGV4dC1iYXNle2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuNXJlbX0udGV4dC1iYXNlLWlucHV0e2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuMjVyZW19LnRleHQtbGd7Zm9udC1zaXplOjEuMTI1cmVtO2xpbmUtaGVpZ2h0OjEuNzVyZW19LnRleHQtc217Zm9udC1zaXplOi44NzVyZW07bGluZS1oZWlnaHQ6MS4yNXJlbX0udGV4dC14c3tmb250LXNpemU6Ljc1cmVtO2xpbmUtaGVpZ2h0OjFyZW19LnRleHQtYmxhY2t7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMCAwIDAvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS50ZXh0LWdyYXktMzAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDIwOSAyMTMgMjE5L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0udGV4dC1ncmF5LTUwMHstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigxMDcgMTE0IDEyOC92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LnRleHQtbmV1dHJhbC00MDB7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMTYzIDE2MyAxNjMvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS50ZXh0LW5ldXRyYWwtNTAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDExNSAxMTUgMTE1L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0udGV4dC1wcmltYXJ5e2NvbG9yOnZhcigtLWNvbG9yLXByaW1hcnkpIH0udGV4dC1wcmltYXJ5LWJ1dHRvbntjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbikgfS50ZXh0LXByaW1hcnktYnV0dG9uLWNvbnRlbnR7Y29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24tY29udGVudCkgfS50ZXh0LXByaW1hcnktY29udGVudHtjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWNvbnRlbnQpIH0udGV4dC1yZWQtNTAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDIzOSA2OCA2OC92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LnRleHQtc2xhdGUtNDAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDE0OCAxNjMgMTg0L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0uY29sb3Itc2xhdGUtNTAwLC50ZXh0LXNsYXRlLTUwMHstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigxMDAgMTE2IDEzOS92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LnRleHQtc2xhdGUtNjAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDcxIDg1IDEwNS92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LmNvbG9yLXNsYXRlLTgwMCwudGV4dC1zbGF0ZS04MDB7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMzAgNDEgNTkvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS50ZXh0LXdoaXRley0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDI1NSAyNTUgMjU1L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0uaG92ZXItdGV4dC1wcmltYXJ5LWJ1dHRvbi1jb250ZW50OmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uLWNvbnRlbnQpIH0uaG92ZXJcOnRleHQtZ3JheS00MDA6aG92ZXJ7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMTU2IDE2MyAxNzUvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS5ob3Zlclw6dGV4dC1zbGF0ZS04MDA6aG92ZXJ7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMzAgNDEgNTkvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS5wbGFjZWhvbGRlclw6dGV4dC1zbGF0ZS0zMDA6OnBsYWNlaG9sZGVyey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDIwMyAyMTMgMjI1L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0uY29sb3ItcmVkLTYwMHstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigyMjAgMzggMzgvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS5ob3Zlclw6Y29sb3Itc2xhdGUtNzAwOmhvdmVyey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDUxIDY1IDg1L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0udGV4dC1vcGFjaXR5LTIwey0tdW4tdGV4dC1vcGFjaXR5Oi4yfS5mb250LTIwMHtmb250LXdlaWdodDoyMDB9LmZvbnQtNTAwLC5mb250LW1lZGl1bXtmb250LXdlaWdodDo1MDB9LmZvbnQtYm9sZHtmb250LXdlaWdodDo3MDB9LmZvbnQtbGlnaHR7Zm9udC13ZWlnaHQ6MzAwfS5mb250LXNlbWlib2xke2ZvbnQtd2VpZ2h0OjYwMH0ubGVhZGluZy1cWzIycHhcXXtsaW5lLWhlaWdodDoyMnB4fS5sZWFkaW5nLTRcLjV7bGluZS1oZWlnaHQ6MS4xMjVyZW19LmxlYWRpbmctNVwuNXtsaW5lLWhlaWdodDoxLjM3NXJlbX0ubGVhZGluZy02e2xpbmUtaGVpZ2h0OjEuNXJlbX0ubGVhZGluZy1ub3JtYWx7bGluZS1oZWlnaHQ6MS41fS5pdGFsaWN7Zm9udC1zdHlsZTppdGFsaWN9LnVuZGVybGluZXt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmV9Lm5vLXVuZGVybGluZSwuaG92ZXItbm8tdW5kZXJsaW5lOmhvdmVye3RleHQtZGVjb3JhdGlvbjpub25lfS5vcGFjaXR5LTEwe29wYWNpdHk6LjF9Lm9wYWNpdHktMTAwe29wYWNpdHk6MX0ub3BhY2l0eS0yMHtvcGFjaXR5Oi4yfS5vcGFjaXR5LTMwe29wYWNpdHk6LjN9Lm9wYWNpdHktNjB7b3BhY2l0eTouNn0uc2hhZG93ey0tdW4tc2hhZG93OnZhcigtLXVuLXNoYWRvdy1pbnNldCkgMCAxcHggM3B4IDAgdmFyKC0tdW4tc2hhZG93LWNvbG9yLCMwMDAwMDAxYSksdmFyKC0tdW4tc2hhZG93LWluc2V0KSAwIDFweCAycHggLTFweCB2YXIoLS11bi1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKTtib3gtc2hhZG93OnZhcigtLXVuLXJpbmctb2Zmc2V0LXNoYWRvdyksIHZhcigtLXVuLXJpbmctc2hhZG93KSwgdmFyKC0tdW4tc2hhZG93KX0uc2hhZG93LWxney0tdW4tc2hhZG93OnZhcigtLXVuLXNoYWRvdy1pbnNldCkgMCAxMHB4IDE1cHggLTNweCB2YXIoLS11bi1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSx2YXIoLS11bi1zaGFkb3ctaW5zZXQpIDAgNHB4IDZweCAtNHB4IHZhcigtLXVuLXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdW4tcmluZy1vZmZzZXQtc2hhZG93KSwgdmFyKC0tdW4tcmluZy1zaGFkb3cpLCB2YXIoLS11bi1zaGFkb3cpfS5zaGFkb3ctbWR7LS11bi1zaGFkb3c6dmFyKC0tdW4tc2hhZG93LWluc2V0KSAwIDRweCA2cHggLTFweCB2YXIoLS11bi1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSx2YXIoLS11bi1zaGFkb3ctaW5zZXQpIDAgMnB4IDRweCAtMnB4IHZhcigtLXVuLXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdW4tcmluZy1vZmZzZXQtc2hhZG93KSwgdmFyKC0tdW4tcmluZy1zaGFkb3cpLCB2YXIoLS11bi1zaGFkb3cpfS5zaGFkb3ctc217LS11bi1zaGFkb3c6dmFyKC0tdW4tc2hhZG93LWluc2V0KSAwIDFweCAycHggMCB2YXIoLS11bi1zaGFkb3ctY29sb3IsIzAwMDAwMDBkKTtib3gtc2hhZG93OnZhcigtLXVuLXJpbmctb2Zmc2V0LXNoYWRvdyksIHZhcigtLXVuLXJpbmctc2hhZG93KSwgdmFyKC0tdW4tc2hhZG93KX0uZm9jdXMtd2l0aGluXDpvdXRsaW5lLTI6Zm9jdXMtd2l0aGlue291dGxpbmUtd2lkdGg6MnB4fS5mb2N1cy13aXRoaW5cOm91dGxpbmUtcHJpbWFyeS1mb2N1czpmb2N1cy13aXRoaW57b3V0bGluZS1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWZvY3VzKSB9Lm91dGxpbmUsLmZvY3VzLXdpdGhpblw6b3V0bGluZS1zb2xpZDpmb2N1cy13aXRoaW57b3V0bGluZS1zdHlsZTpzb2xpZH0ub3V0bGluZS1ub25lLC5mb2N1c1w6b3V0bGluZS1ub25lOmZvY3VzLC5mb2N1cy12aXNpYmxlXDpvdXRsaW5lLW5vbmU6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLW9mZnNldDoycHg7b3V0bGluZToycHggc29saWQgIzAwMDB9LmZvY3VzLXdpdGhpblw6cmluZy0zOmZvY3VzLXdpdGhpbnstLXVuLXJpbmctd2lkdGg6M3B4Oy0tdW4tcmluZy1vZmZzZXQtc2hhZG93OnZhcigtLXVuLXJpbmctaW5zZXQpIDAgMCAwIHZhcigtLXVuLXJpbmctb2Zmc2V0LXdpZHRoKSB2YXIoLS11bi1yaW5nLW9mZnNldC1jb2xvcik7LS11bi1yaW5nLXNoYWRvdzp2YXIoLS11bi1yaW5nLWluc2V0KSAwIDAgMCBjYWxjKHZhcigtLXVuLXJpbmctd2lkdGgpICsgdmFyKC0tdW4tcmluZy1vZmZzZXQtd2lkdGgpKSB2YXIoLS11bi1yaW5nLWNvbG9yKTtib3gtc2hhZG93OnZhcigtLXVuLXJpbmctb2Zmc2V0LXNoYWRvdyksIHZhcigtLXVuLXJpbmctc2hhZG93KSwgdmFyKC0tdW4tc2hhZG93KX0uZm9jdXMtd2l0aGluXDpyaW5nLW9mZnNldC0xOmZvY3VzLXdpdGhpbnstLXVuLXJpbmctb2Zmc2V0LXdpZHRoOjFweH0uZm9jdXMtd2l0aGluXDpyaW5nLWJsdWUtNDAwOmZvY3VzLXdpdGhpbnstLXVuLXJpbmctb3BhY2l0eToxOy0tdW4tcmluZy1jb2xvcjpyZ2IoOTYgMTY1IDI1MC92YXIoLS11bi1yaW5nLW9wYWNpdHkpKSB9LmZvY3VzXDpyaW5nLWJsdWUtNTAwOmZvY3Vzey0tdW4tcmluZy1vcGFjaXR5OjE7LS11bi1yaW5nLWNvbG9yOnJnYig1OSAxMzAgMjQ2L3ZhcigtLXVuLXJpbmctb3BhY2l0eSkpIH0udHJhbnNpdGlvbnt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3IsYm9yZGVyLWNvbG9yLHRleHQtZGVjb3JhdGlvbi1jb2xvcixmaWxsLHN0cm9rZSxvcGFjaXR5LGJveC1zaGFkb3csdHJhbnNmb3JtLGZpbHRlciwtd2Via2l0LWJhY2tkcm9wLWZpbHRlcixiYWNrZHJvcC1maWx0ZXI7dHJhbnNpdGlvbi1kdXJhdGlvbjouMTVzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpfS50cmFuc2l0aW9uLWFsbHt0cmFuc2l0aW9uLXByb3BlcnR5OmFsbDt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9LnRyYW5zaXRpb24tY29sb3Jze3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3IsYmFja2dyb3VuZC1jb2xvcixib3JkZXItY29sb3IsdGV4dC1kZWNvcmF0aW9uLWNvbG9yLGZpbGwsc3Ryb2tlO3RyYW5zaXRpb24tZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0udHJhbnNpdGlvbi1vcGFjaXR5e3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9LnRyYW5zaXRpb24tcGFkZGluZy00MDB7dHJhbnNpdGlvbi1wcm9wZXJ0eTpwYWRkaW5nO3RyYW5zaXRpb24tZHVyYXRpb246LjRzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpfS50cmFuc2l0aW9uLXRyYW5zZm9ybXt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9LnRyYW5zaXRpb24td2lkdGgtMjUwe3RyYW5zaXRpb24tcHJvcGVydHk6d2lkdGg7dHJhbnNpdGlvbi1kdXJhdGlvbjouMjVzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpfS5kdXJhdGlvbi0xNTB7dHJhbnNpdGlvbi1kdXJhdGlvbjouMTVzfS5kdXJhdGlvbi0zMDB7dHJhbnNpdGlvbi1kdXJhdGlvbjouM3N9LmR1cmF0aW9uLTc1e3RyYW5zaXRpb24tZHVyYXRpb246NzVtc30uZGVsYXktMHt0cmFuc2l0aW9uLWRlbGF5OjBzfS5lYXNlLWluLW91dHt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0uZWFzZS1vdXR7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0uY29udGVudC1cW1wiXCJcXXtjb250ZW50OiIifS5iZy1wcmltYXJ5LWdyYWRpZW50e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDgwZGVnLCB2YXIoLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LWZyb20pLCB2YXIoLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LXRvKSAxMzAlKX0uYmctcHJpbWFyeS1ncmFkaWVudC1idXR0b257YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoODBkZWcsIHZhcigtLWNvbG9yLXByaW1hcnktZ3JhZGllbnQtYnV0dG9uLWZyb20pLCB2YXIoLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LWJ1dHRvbi10bykgMTMwJSl9LmJnLXByaW1hcnktZ3JhZGllbnQtaG92ZXI6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoODBkZWcsIHZhcigtLWNvbG9yLXByaW1hcnktZ3JhZGllbnQtaG92ZXItZnJvbSksIHZhcigtLWNvbG9yLXByaW1hcnktZ3JhZGllbnQtaG92ZXItdG8pIDEzMCUpfS5saW5lLWNsYW1wLTV7LXdlYmtpdC1saW5lLWNsYW1wOjU7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVufS50eXBpbmctaW5kaWNhdG9yLnN2ZWx0ZS1zNDB4Z2t7Ym9yZGVyLXJhZGl1czo5OTk5cHh9LnR5cGluZy1pbmRpY2F0b3Iuc20uc3ZlbHRlLXM0MHhna3t3aWR0aDouMjVyZW07aGVpZ2h0Oi4yNXJlbX0udHlwaW5nLWluZGljYXRvci5tZC5zdmVsdGUtczQweGdre3dpZHRoOi41cmVtO2hlaWdodDouNXJlbX0udHlwaW5nLWluZGljYXRvci5pbmRpY2F0b3ItY29sb3ItYmxhY2suc3ZlbHRlLXM0MHhna3stLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigwIDAgMC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS50eXBpbmctaW5kaWNhdG9yLmluZGljYXRvci1jb2xvci1ncmF5LnN2ZWx0ZS1zNDB4Z2t7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMTAwIDExNiAxMzkvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0udHlwaW5nLWluZGljYXRvci5zdmVsdGUtczQweGdrOm5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi4yNXJlbX0udHlwaW5nLWluZGljYXRvci1zZWNvbmQuc3ZlbHRlLXM0MHhna3thbmltYXRpb24tZGVsYXk6LjFzfS50eXBpbmctaW5kaWNhdG9yLXRoaXJkLnN2ZWx0ZS1zNDB4Z2t7YW5pbWF0aW9uLWRlbGF5Oi4yc30uYnRuLnN2ZWx0ZS0xZTg0bjd3e2JvcmRlci1yYWRpdXM6MS41cmVtO2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmctbGVmdDoxcmVtO3BhZGRpbmctcmlnaHQ6MXJlbTt0cmFuc2l0aW9uLXByb3BlcnR5OmFsbDt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7ZGlzcGxheTppbmxpbmUtZmxleH0uYnRuLXByaW1hcnkuc3ZlbHRlLTFlODRuN3d7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbikgO2NvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uLWNvbnRlbnQpIH0uYnRuLXByaW1hcnkuc3ZlbHRlLTFlODRuN3c6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1ob3ZlcikgfS5idG4tb3V0bGluZS5zdmVsdGUtMWU4NG43d3tib3JkZXItd2lkdGg6MXB4O2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbik7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1IDI1NSAyNTUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIDstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigwIDAgMC92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LmJ0bi1vdXRsaW5lLnN2ZWx0ZS0xZTg0bjd3OmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pIDtjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1jb250ZW50KSB9LmJ0bi1yYWlzZWQuc3ZlbHRlLTFlODRuN3d7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1IDI1NSAyNTUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIDstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigxMDAgMTE2IDEzOS92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSA7Ym94LXNoYWRvdzowIDJweCA2cHggIzAwMDAwMDI5fS5idG4tcmFpc2VkLnN2ZWx0ZS0xZTg0bjd3OmhvdmVyey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0MSAyNDUgMjQ5L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJ0bi1zbS5zdmVsdGUtMWU4NG43d3toZWlnaHQ6MnJlbX0uYnRuLW1kLnN2ZWx0ZS0xZTg0bjd3e2hlaWdodDoyLjVyZW19LmJ0bi1sZy5zdmVsdGUtMWU4NG43d3toZWlnaHQ6M3JlbX0uYnRuLWRpc2FibGVkLnN2ZWx0ZS0xZTg0bjd3e2N1cnNvcjpub3QtYWxsb3dlZDtvcGFjaXR5Oi4yfS5kYXJrLnN2ZWx0ZS1zajk5aDN7YmFja2dyb3VuZC1jb2xvcjojNGI1NTYzZjI7cGFkZGluZzouNXJlbSAuNzVyZW19LmxpZ2h0LnN2ZWx0ZS1zajk5aDN7YmFja2dyb3VuZC1jb2xvcjojOWNhM2FmZjI7cGFkZGluZzouMjVyZW0gLjVyZW19c3ZnLnN2ZWx0ZS15aXhoYXR7ZmlsbDpjdXJyZW50Q29sb3I7d2lkdGg6MWVtO2hlaWdodDoxZW19LmNhcm91c2VsLnN2ZWx0ZS0xMHFxanpke2p1c3RpZnktY29udGVudDpzdGFydDthbGlnbi1pdGVtczpzdGFydDt3aWR0aDoxMDAlfS5jYXJvdXNlbC5zdmVsdGUtMTBxcWp6ZDpob3ZlciAuYnV0dG9uOndoZXJlKC5zdmVsdGUtMTBxcWp6ZCksLmNhcm91c2VsLnN2ZWx0ZS0xMHFxanpkOmZvY3VzLXdpdGhpbiAuYnV0dG9uOndoZXJlKC5zdmVsdGUtMTBxcWp6ZCl7b3BhY2l0eToxfS5idXR0b24uc3ZlbHRlLTEwcXFqemR7b3BhY2l0eTowO3otaW5kZXg6MTtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwO2JvcmRlcjpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuNHM7cG9zaXRpb246YWJzb2x1dGV9LmxlZnQuc3ZlbHRlLTEwcXFqemR7bGVmdDotMWVtfS5yaWdodC5zdmVsdGUtMTBxcWp6ZHtyaWdodDotMWVtfS5tZXNzYWdlLWNvbnRlbnQtaHRtbCB1bHttYXJnaW4tcmlnaHQ6LjI1cmVtO3BhZGRpbmctbGVmdDoxcmVtO2xpc3Qtc3R5bGUtdHlwZTpkaXNjfS5tZXNzYWdlLWNvbnRlbnQtaHRtbCBsaTpub3QoOmZpcnN0LWNoaWxkKSwubWVzc2FnZS1jb250ZW50LWh0bWwgbGk+dWwsLm1lc3NhZ2UtY29udGVudC1odG1sIGxpPm9se21hcmdpbi10b3A6LjVyZW19Lm1lc3NhZ2UtY29udGVudC1odG1sIG9se21hcmdpbi1yaWdodDouMjVyZW07cGFkZGluZy1sZWZ0OjFyZW07bGlzdC1zdHlsZS10eXBlOmRlY2ltYWx9Lm1lc3NhZ2UtY29udGVudC1odG1sIGF7dGV4dC1kZWNvcmF0aW9uLWxpbmU6dW5kZXJsaW5lfS5tZXNzYWdlLWNvbnRlbnQtaHRtbCBhOmhvdmVye3RleHQtZGVjb3JhdGlvbjpub25lfS5tZXNzYWdlLWNvbnRlbnQtaHRtbCAqe3doaXRlLXNwYWNlOm5vcm1hbDtvdmVyZmxvdy13cmFwOmJyZWFrLXdvcmR9Lm1lc3NhZ2UtY29udGVudC10ZXh0LnN2ZWx0ZS1uZmIweW17b3ZlcmZsb3ctd3JhcDpicmVhay13b3JkO3dvcmQtYnJlYWs6YnJlYWstd29yZDt3aGl0ZS1zcGFjZTpwcmUtd3JhcH0ubWVzc2FnZS1jb250ZW50LXRleHQgYXt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmV9Lm1lc3NhZ2UtY29udGVudC10ZXh0IGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmF2YXRhci1ncm91cC1pdGVtLnN2ZWx0ZS15ZnhhN3Q6Zmlyc3Qtb2YtdHlwZXt6LWluZGV4OjN9LmF2YXRhci1ncm91cC1pdGVtLnN2ZWx0ZS15ZnhhN3Q6bnRoLW9mLXR5cGUoMil7ei1pbmRleDoyfS5hdmF0YXItZ3JvdXAtaXRlbS5zdmVsdGUteWZ4YTd0Om50aC1vZi10eXBlKDMpe3otaW5kZXg6MX0uYXZhdGFyLXNtLnN2ZWx0ZS15ZnhhN3Q6bm90KDpmaXJzdC1jaGlsZCl7bWFyZ2luLWxlZnQ6LTEycHh9LmF2YXRhci1tZC5zdmVsdGUteWZ4YTd0Om5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi0xNnB4fS5hdmF0YXItbGcuc3ZlbHRlLXlmeGE3dDpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4tbGVmdDotMjJweH0ucmVtb3ZlSWNvbi5zdmVsdGUtMTFmM2Jkd3tvcGFjaXR5OjA7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5O3RyYW5zaXRpb24tZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0uYXR0YWNobWVudFdyYXBwZXIuc3ZlbHRlLTExZjNiZHc6aG92ZXIgLnJlbW92ZUljb246d2hlcmUoLnN2ZWx0ZS0xMWYzYmR3KSwuYXR0YWNobWVudFdyYXBwZXIuc3ZlbHRlLTExZjNiZHc6Zm9jdXMtd2l0aGluIC5yZW1vdmVJY29uOndoZXJlKC5zdmVsdGUtMTFmM2Jkdyl7b3BhY2l0eToxfS50ZXh0YXJlYS1jb250YWluZXIuc3ZlbHRlLTF0bDlsY2V7b3ZlcnNjcm9sbC1iZWhhdmlvcjpjb250YWluO3Njcm9sbGJhci13aWR0aDpub25lO2ZsZXg6MTttYXgtaGVpZ2h0OjMycHg7bWFyZ2luLXRvcDouNzVyZW07bWFyZ2luLWJvdHRvbTouNzVyZW07ZGlzcGxheTpncmlkO292ZXJmbG93OmhpZGRlbiBhdXRvfS50ZXh0YXJlYS1jb250YWluZXIuc3ZlbHRlLTF0bDlsY2U6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0udGV4dGFyZWEtY29udGFpbmVyLXJlc2l6YWJsZS5zdmVsdGUtMXRsOWxjZXttYXgtaGVpZ2h0OjEyNXB4fS50ZXh0YXJlYS1jb250YWluZXIuc3ZlbHRlLTF0bDlsY2U6YWZ0ZXJ7Y29udGVudDphdHRyKGRhdGEtdGV4dGFyZWEtdmFsdWUpICIgIjt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt2aXNpYmlsaXR5OmhpZGRlbjtvdmVyZmxvdy13cmFwOmJyZWFrLXdvcmQ7d29yZC1icmVhazpicmVhay13b3JkfS50ZXh0YXJlYS1jb250YWluZXIuc3ZlbHRlLTF0bDlsY2U6YWZ0ZXIsdGV4dGFyZWEuc3ZlbHRlLTF0bDlsY2V7Zm9udC1zaXplOmluaGVyaXQ7Z3JpZC1hcmVhOjEvMS8yLzI7bWFyZ2luLWxlZnQ6MXJlbTttYXJnaW4tcmlnaHQ6Ljc1cmVtfXRleHRhcmVhLnN2ZWx0ZS0xdGw5bGNlOjpwbGFjZWhvbGRlcnt3b3JkLWJyZWFrOmJyZWFrLWFsbDtvdmVyZmxvdzpoaWRkZW59ZW0tZW1vamktcGlja2Vyey0tYm9yZGVyLXJhZGl1czoxMnB4Oy0tdW4tYm9yZGVyLW9wYWNpdHk6MTtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1jb2xvcjpyZ2IoMjI2IDIzMiAyNDAvdmFyKC0tdW4tYm9yZGVyLW9wYWNpdHkpKTtib3JkZXItcmFkaXVzOi43NXJlbTt3aWR0aDoxMDAlO2hlaWdodDo0MDBweDttYXgtaGVpZ2h0Ojgwdmg7cGFkZGluZy10b3A6LjI1cmVtO2JveC1zaGFkb3c6MCAxcHggMTVweCAxcHggIzAwMDAwMDFmfS5zd2l0Y2guc3ZlbHRlLTF5emZ6em97LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjI5IDIzMSAyMzUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIDtib3JkZXItcmFkaXVzOjk5OTlweDt3aWR0aDoyLjc1cmVtO2hlaWdodDoxLjVyZW07dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yLGJvcmRlci1jb2xvcix0ZXh0LWRlY29yYXRpb24tY29sb3IsZmlsbCxzdHJva2U7dHJhbnNpdGlvbi1kdXJhdGlvbjouMTVzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpfS5zd2l0Y2guc3ZlbHRlLTF5emZ6em86Zm9jdXN7b3V0bGluZS1vZmZzZXQ6MnB4O291dGxpbmU6MnB4IHNvbGlkICMwMDAwfS5zd2l0Y2guc3ZlbHRlLTF5emZ6em86YWZ0ZXJ7LS11bi1ib3JkZXItb3BhY2l0eToxO2JvcmRlci13aWR0aDoxcHg7Ym9yZGVyLWNvbG9yOnJnYigyMDkgMjEzIDIxOS92YXIoLS11bi1ib3JkZXItb3BhY2l0eSkpOy0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0NSAyNDUgMjQ1L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSA7Y29udGVudDoiIjtib3JkZXItcmFkaXVzOjk5OTlweDt3aWR0aDoxLjI1cmVtO2hlaWdodDoxLjI1cmVtO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtO3RyYW5zaXRpb24tZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MnB4O2xlZnQ6MnB4fS5zd2l0Y2guY2hlY2tlZC5zdmVsdGUtMXl6Znp6b3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uKSB9LnN3aXRjaC5jaGVja2VkLnN2ZWx0ZS0xeXpmenpvOmFmdGVyey0tdW4tdHJhbnNsYXRlLXg6MTAwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCh2YXIoLS11bi10cmFuc2xhdGUteCkpIHRyYW5zbGF0ZVkodmFyKC0tdW4tdHJhbnNsYXRlLXkpKSB0cmFuc2xhdGVaKHZhcigtLXVuLXRyYW5zbGF0ZS16KSkgcm90YXRlKHZhcigtLXVuLXJvdGF0ZSkpIHJvdGF0ZVgodmFyKC0tdW4tcm90YXRlLXgpKSByb3RhdGVZKHZhcigtLXVuLXJvdGF0ZS15KSkgcm90YXRlWih2YXIoLS11bi1yb3RhdGUteikpIHNrZXdYKHZhcigtLXVuLXNrZXcteCkpIHNrZXdZKHZhcigtLXVuLXNrZXcteSkpIHNjYWxlWCh2YXIoLS11bi1zY2FsZS14KSkgc2NhbGVZKHZhcigtLXVuLXNjYWxlLXkpKSBzY2FsZVoodmFyKC0tdW4tc2NhbGUteikpOy0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0NSAyNDUgMjQ1L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmludmFsaWQuc3ZlbHRlLTEyZjRjMWcsLmludmFsaWQuc3ZlbHRlLTE5bTN1Y3l7LS11bi1ib3JkZXItb3BhY2l0eToxO2JvcmRlci1jb2xvcjpyZ2IoMjM5IDY4IDY4L3ZhcigtLXVuLWJvcmRlci1vcGFjaXR5KSl9c2VsZWN0LnN2ZWx0ZS04aDVycTR7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSdub25lJyB2aWV3Qm94PScwIDAgMjAgMjAnJTNFJTNDcGF0aCBzdHJva2U9JyUyMzZCNzI4MCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzEuNScgZD0nbTYgOCA0IDQgNC00Jy8lM0UlM0Mvc3ZnJTNFIik7YmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCAuNXJlbSBjZW50ZXI7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZToxLjVlbSAxLjVlbX0uaW52YWxpZC5zdmVsdGUtOGg1cnE0ey0tdW4tYm9yZGVyLW9wYWNpdHk6MTtib3JkZXItY29sb3I6cmdiKDIzOSA2OCA2OC92YXIoLS11bi1ib3JkZXItb3BhY2l0eSkpfS5pY29uLnN2ZWx0ZS0xcnNhMnF2e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pIDtjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1jb250ZW50KSA7Ym9yZGVyLXJhZGl1czoxLjVyZW07cGFkZGluZzouNXJlbTtkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZX0uZHJhd2VyLWJ1dHRvbi5zdmVsdGUtajZleHEwe3RleHQtYWxpZ246bGVmdDtib3JkZXItcmFkaXVzOi41cmVtO2FsaWduLWl0ZW1zOmNlbnRlcjt3aWR0aDoxMDAlO3BhZGRpbmc6LjVyZW07dHJhbnNpdGlvbjpjb2xvciA3NW1zIGN1YmljLWJlemllciguNCwwLC4yLDEpLGJhY2tncm91bmQtY29sb3IgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSxib3JkZXItY29sb3IgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0ZXh0LWRlY29yYXRpb24tY29sb3IgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSxmaWxsIDc1bXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksc3Ryb2tlIDc1bXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7ZGlzcGxheTpmbGV4fS5kcmF3ZXItYnV0dG9uLnN2ZWx0ZS1qNmV4cTA6aG92ZXJ7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjQ1IDI0NSAyNDUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uZHJhd2VyLWJ1dHRvbi1kaXNhYmxlZC5zdmVsdGUtajZleHEwe3RleHQtYWxpZ246bGVmdDtvcGFjaXR5Oi4zO2JvcmRlci1yYWRpdXM6LjVyZW07YWxpZ24taXRlbXM6Y2VudGVyO3dpZHRoOjEwMCU7cGFkZGluZzouNXJlbTtkaXNwbGF5OmZsZXh9LmRyYXdlci1idXR0b24tZGlzYWJsZWQuc3ZlbHRlLWo2ZXhxMDpob3ZlcntjdXJzb3I6bm90LWFsbG93ZWR9LmRyYXdlci1zd2l0Y2guc3ZlbHRlLTFqZXN4dGN7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7dGV4dC1hbGlnbjpsZWZ0O2JvcmRlci1yYWRpdXM6LjVyZW07YWxpZ24taXRlbXM6Y2VudGVyO3dpZHRoOjEwMCU7cGFkZGluZzouNXJlbTt0cmFuc2l0aW9uOmNvbG9yIDc1bXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksYmFja2dyb3VuZC1jb2xvciA3NW1zIGN1YmljLWJlemllciguNCwwLC4yLDEpLGJvcmRlci1jb2xvciA3NW1zIGN1YmljLWJlemllciguNCwwLC4yLDEpLHRleHQtZGVjb3JhdGlvbi1jb2xvciA3NW1zIGN1YmljLWJlemllciguNCwwLC4yLDEpLGZpbGwgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSxzdHJva2UgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtkaXNwbGF5OmZsZXh9LmRyYXdlci1zd2l0Y2guc3ZlbHRlLTFqZXN4dGM6aG92ZXJ7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjQ1IDI0NSAyNDUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0ubWVzc2FnZS1jb250ZW50LnN2ZWx0ZS0xZ2Z2aGk2e292ZXJmbG93LXdyYXA6YnJlYWstd29yZDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7d2hpdGUtc3BhY2U6cHJlLXdyYXB9Lm1lc3NhZ2UtY29udGVudC1sZWZ0LnN2ZWx0ZS0xZ2Z2aGk2e2JvcmRlci1yYWRpdXM6LjI1cmVtIDEuNXJlbSAxLjVyZW0gLjI1cmVtfS5tZXNzYWdlLWNvbnRlbnQtbGVmdC1maXJzdC5zdmVsdGUtMWdmdmhpNntib3JkZXItdG9wLWxlZnQtcmFkaXVzOjEuNXJlbX0ubWVzc2FnZS1jb250ZW50LWxlZnQtbGFzdC5zdmVsdGUtMWdmdmhpNntib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjEuNXJlbX0ubWVzc2FnZS1jb250ZW50LXJpZ2h0LnN2ZWx0ZS0xZ2Z2aGk2e2JvcmRlci1yYWRpdXM6MS41cmVtIC4yNXJlbSAuMjVyZW0gMS41cmVtfS5tZXNzYWdlLWNvbnRlbnQtcmlnaHQtZmlyc3Quc3ZlbHRlLTFnZnZoaTZ7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MS41cmVtfS5tZXNzYWdlLWNvbnRlbnQtcmlnaHQtbGFzdC5zdmVsdGUtMWdmdmhpNntib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czoxLjVyZW19LmNvdW50LWFuaW1hdGUuc3ZlbHRlLTIyOGM3bnthbmltYXRpb246LjJzIGN1YmljLWJlemllciguNCwyLC42LDEpIHN2ZWx0ZS0yMjhjN24tcG9wLXNjYWxlfUBrZXlmcmFtZXMgc3ZlbHRlLTIyOGM3bi1wb3Atc2NhbGV7MCV7dHJhbnNmb3JtOnNjYWxlKDEpfTUwJXt0cmFuc2Zvcm06c2NhbGUoMS4xKX10b3t0cmFuc2Zvcm06c2NhbGUoMSl9fQovKiR2aXRlJDoxKi8="}},"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":"uniz-coinzltd.com/styles/wow.min.js","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.511Z","timestamp":1785158432511,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/wow.min.js HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\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\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: application/javascript\r\nserver-timing: cfExtPri\r\npriority: u=3,i=?0\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=uuIWOMVF8YhdOY%2Bzo%2BBwrv2%2FSy2CvNk9SOn3sqn67UXMMqfe8GKUpeyv4KqxgYKrtmdzxLwbLZMI2Pgvr7ZBndgqJ4FwkqvmnqdycSYOoDgUjgyeY6H6wDAi7n335uiOJwe%2BXg%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b3c6e56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 2572\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]}],"data":{"size":8415,"size_decoded":3397,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (8385)","md5":"36050285bfeeb7395752f0f9bbc08273","sha1":"5924f7bbbf1dfa3f0926851d01f782f23a59e805","sha256":"0ec632e6ab02d4fdd514da7f5edc74aa28c9d4c71af76f1c8b93a1fba85bcc69","sha512":"bf887e087c52583114b77bfb417d7dffa0ee8634d39155af14591a24b2add9ef4c8a0c0555364122800d07a55f5f1fb0c723b39541b069a437ff558ddbf380a3","ssdeep":"96:UrZgL1xvPV6GqKgR6TYLWHFMLJA6pOROVEE1fosvGeaMozHImBaoqbl:Ury9PVfIFrlAJROVEEdos+eatzHILoA","tlshash":"750267c97a967031d75796f6833f0106b6361aeeb028047cb5b88dd57c78868523bf38","first_seen":"2023-03-07T01:02:45Z","last_seen":"2026-08-17T21:57:30.203782Z","times_seen":14459,"resource_available":true,"data":"LyohIFdPVyAtIHYxLjEuMyAtIDIwMTYtMDUtMDYKKiBDb3B5cmlnaHQgKGMpIDIwMTYgTWF0dGhpZXUgQXVzc2FndWVsOyovKGZ1bmN0aW9uKCl7dmFyIGEsYixjLGQsZSxmPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGEuYXBwbHkoYixhcmd1bWVudHMpfX0sZz1bXS5pbmRleE9mfHxmdW5jdGlvbihhKXtmb3IodmFyIGI9MCxjPXRoaXMubGVuZ3RoO2M+YjtiKyspaWYoYiBpbiB0aGlzJiZ0aGlzW2JdPT09YSlyZXR1cm4gYjtyZXR1cm4tMX07Yj1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoKXt9cmV0dXJuIGEucHJvdG90eXBlLmV4dGVuZD1mdW5jdGlvbihhLGIpe3ZhciBjLGQ7Zm9yKGMgaW4gYilkPWJbY10sbnVsbD09YVtjXSYmKGFbY109ZCk7cmV0dXJuIGF9LGEucHJvdG90eXBlLmlzTW9iaWxlPWZ1bmN0aW9uKGEpe3JldHVybi9BbmRyb2lkfHdlYk9TfGlQaG9uZXxpUGFkfGlQb2R8QmxhY2tCZXJyeXxJRU1vYmlsZXxPcGVyYSBNaW5pL2kudGVzdChhKX0sYS5wcm90b3R5cGUuY3JlYXRlRXZlbnQ9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU7cmV0dXJuIG51bGw9PWImJihiPSExKSxudWxsPT1jJiYoYz0hMSksbnVsbD09ZCYmKGQ9bnVsbCksbnVsbCE9ZG9jdW1lbnQuY3JlYXRlRXZlbnQ/KGU9ZG9jdW1lbnQuY3JlYXRlRXZlbnQoIkN1c3RvbUV2ZW50IiksZS5pbml0Q3VzdG9tRXZlbnQoYSxiLGMsZCkpOm51bGwhPWRvY3VtZW50LmNyZWF0ZUV2ZW50T2JqZWN0PyhlPWRvY3VtZW50LmNyZWF0ZUV2ZW50T2JqZWN0KCksZS5ldmVudFR5cGU9YSk6ZS5ldmVudE5hbWU9YSxlfSxhLnByb3RvdHlwZS5lbWl0RXZlbnQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gbnVsbCE9YS5kaXNwYXRjaEV2ZW50P2EuZGlzcGF0Y2hFdmVudChiKTpiIGluKG51bGwhPWEpP2FbYl0oKToib24iK2IgaW4obnVsbCE9YSk/YVsib24iK2JdKCk6dm9pZCAwfSxhLnByb3RvdHlwZS5hZGRFdmVudD1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIG51bGwhPWEuYWRkRXZlbnRMaXN0ZW5lcj9hLmFkZEV2ZW50TGlzdGVuZXIoYixjLCExKTpudWxsIT1hLmF0dGFjaEV2ZW50P2EuYXR0YWNoRXZlbnQoIm9uIitiLGMpOmFbYl09Y30sYS5wcm90b3R5cGUucmVtb3ZlRXZlbnQ9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBudWxsIT1hLnJlbW92ZUV2ZW50TGlzdGVuZXI/YS5yZW1vdmVFdmVudExpc3RlbmVyKGIsYywhMSk6bnVsbCE9YS5kZXRhY2hFdmVudD9hLmRldGFjaEV2ZW50KCJvbiIrYixjKTpkZWxldGUgYVtiXX0sYS5wcm90b3R5cGUuaW5uZXJIZWlnaHQ9ZnVuY3Rpb24oKXtyZXR1cm4iaW5uZXJIZWlnaHQiaW4gd2luZG93P3dpbmRvdy5pbm5lckhlaWdodDpkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0fSxhfSgpLGM9dGhpcy5XZWFrTWFwfHx0aGlzLk1veldlYWtNYXB8fChjPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYSgpe3RoaXMua2V5cz1bXSx0aGlzLnZhbHVlcz1bXX1yZXR1cm4gYS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3ZhciBiLGMsZCxlLGY7Zm9yKGY9dGhpcy5rZXlzLGI9ZD0wLGU9Zi5sZW5ndGg7ZT5kO2I9KytkKWlmKGM9ZltiXSxjPT09YSlyZXR1cm4gdGhpcy52YWx1ZXNbYl19LGEucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3ZhciBjLGQsZSxmLGc7Zm9yKGc9dGhpcy5rZXlzLGM9ZT0wLGY9Zy5sZW5ndGg7Zj5lO2M9KytlKWlmKGQ9Z1tjXSxkPT09YSlyZXR1cm4gdm9pZCh0aGlzLnZhbHVlc1tjXT1iKTtyZXR1cm4gdGhpcy5rZXlzLnB1c2goYSksdGhpcy52YWx1ZXMucHVzaChiKX0sYX0oKSksYT10aGlzLk11dGF0aW9uT2JzZXJ2ZXJ8fHRoaXMuV2Via2l0TXV0YXRpb25PYnNlcnZlcnx8dGhpcy5Nb3pNdXRhdGlvbk9ic2VydmVyfHwoYT1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoKXsidW5kZWZpbmVkIiE9dHlwZW9mIGNvbnNvbGUmJm51bGwhPT1jb25zb2xlJiZjb25zb2xlLndhcm4oIk11dGF0aW9uT2JzZXJ2ZXIgaXMgbm90IHN1cHBvcnRlZCBieSB5b3VyIGJyb3dzZXIuIiksInVuZGVmaW5lZCIhPXR5cGVvZiBjb25zb2xlJiZudWxsIT09Y29uc29sZSYmY29uc29sZS53YXJuKCJXT1cuanMgY2Fubm90IGRldGVjdCBkb20gbXV0YXRpb25zLCBwbGVhc2UgY2FsbCAuc3luYygpIGFmdGVyIGxvYWRpbmcgbmV3IGNvbnRlbnQuIil9cmV0dXJuIGEubm90U3VwcG9ydGVkPSEwLGEucHJvdG90eXBlLm9ic2VydmU9ZnVuY3Rpb24oKXt9LGF9KCkpLGQ9dGhpcy5nZXRDb21wdXRlZFN0eWxlfHxmdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmdldFByb3BlcnR5VmFsdWU9ZnVuY3Rpb24oYil7dmFyIGM7cmV0dXJuImZsb2F0Ij09PWImJihiPSJzdHlsZUZsb2F0IiksZS50ZXN0KGIpJiZiLnJlcGxhY2UoZSxmdW5jdGlvbihhLGIpe3JldHVybiBiLnRvVXBwZXJDYXNlKCl9KSwobnVsbCE9KGM9YS5jdXJyZW50U3R5bGUpP2NbYl06dm9pZCAwKXx8bnVsbH0sdGhpc30sZT0vKFwtKFthLXpdKXsxfSkvZyx0aGlzLldPVz1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoYSl7bnVsbD09YSYmKGE9e30pLHRoaXMuc2Nyb2xsQ2FsbGJhY2s9Zih0aGlzLnNjcm9sbENhbGxiYWNrLHRoaXMpLHRoaXMuc2Nyb2xsSGFuZGxlcj1mKHRoaXMuc2Nyb2xsSGFuZGxlcix0aGlzKSx0aGlzLnJlc2V0QW5pbWF0aW9uPWYodGhpcy5yZXNldEFuaW1hdGlvbix0aGlzKSx0aGlzLnN0YXJ0PWYodGhpcy5zdGFydCx0aGlzKSx0aGlzLnNjcm9sbGVkPSEwLHRoaXMuY29uZmlnPXRoaXMudXRpbCgpLmV4dGVuZChhLHRoaXMuZGVmYXVsdHMpLG51bGwhPWEuc2Nyb2xsQ29udGFpbmVyJiYodGhpcy5jb25maWcuc2Nyb2xsQ29udGFpbmVyPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYS5zY3JvbGxDb250YWluZXIpKSx0aGlzLmFuaW1hdGlvbk5hbWVDYWNoZT1uZXcgYyx0aGlzLndvd0V2ZW50PXRoaXMudXRpbCgpLmNyZWF0ZUV2ZW50KHRoaXMuY29uZmlnLmJveENsYXNzKX1yZXR1cm4gZS5wcm90b3R5cGUuZGVmYXVsdHM9e2JveENsYXNzOiJ3b3ciLGFuaW1hdGVDbGFzczoiYW5pbWF0ZWQiLG9mZnNldDowLG1vYmlsZTohMCxsaXZlOiEwLGNhbGxiYWNrOm51bGwsc2Nyb2xsQ29udGFpbmVyOm51bGx9LGUucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oKXt2YXIgYTtyZXR1cm4gdGhpcy5lbGVtZW50PXdpbmRvdy5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsImludGVyYWN0aXZlIj09PShhPWRvY3VtZW50LnJlYWR5U3RhdGUpfHwiY29tcGxldGUiPT09YT90aGlzLnN0YXJ0KCk6dGhpcy51dGlsKCkuYWRkRXZlbnQoZG9jdW1lbnQsIkRPTUNvbnRlbnRMb2FkZWQiLHRoaXMuc3RhcnQpLHRoaXMuZmluaXNoZWQ9W119LGUucHJvdG90eXBlLnN0YXJ0PWZ1bmN0aW9uKCl7dmFyIGIsYyxkLGU7aWYodGhpcy5zdG9wcGVkPSExLHRoaXMuYm94ZXM9ZnVuY3Rpb24oKXt2YXIgYSxjLGQsZTtmb3IoZD10aGlzLmVsZW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLiIrdGhpcy5jb25maWcuYm94Q2xhc3MpLGU9W10sYT0wLGM9ZC5sZW5ndGg7Yz5hO2ErKyliPWRbYV0sZS5wdXNoKGIpO3JldHVybiBlfS5jYWxsKHRoaXMpLHRoaXMuYWxsPWZ1bmN0aW9uKCl7dmFyIGEsYyxkLGU7Zm9yKGQ9dGhpcy5ib3hlcyxlPVtdLGE9MCxjPWQubGVuZ3RoO2M+YTthKyspYj1kW2FdLGUucHVzaChiKTtyZXR1cm4gZX0uY2FsbCh0aGlzKSx0aGlzLmJveGVzLmxlbmd0aClpZih0aGlzLmRpc2FibGVkKCkpdGhpcy5yZXNldFN0eWxlKCk7ZWxzZSBmb3IoZT10aGlzLmJveGVzLGM9MCxkPWUubGVuZ3RoO2Q+YztjKyspYj1lW2NdLHRoaXMuYXBwbHlTdHlsZShiLCEwKTtyZXR1cm4gdGhpcy5kaXNhYmxlZCgpfHwodGhpcy51dGlsKCkuYWRkRXZlbnQodGhpcy5jb25maWcuc2Nyb2xsQ29udGFpbmVyfHx3aW5kb3csInNjcm9sbCIsdGhpcy5zY3JvbGxIYW5kbGVyKSx0aGlzLnV0aWwoKS5hZGRFdmVudCh3aW5kb3csInJlc2l6ZSIsdGhpcy5zY3JvbGxIYW5kbGVyKSx0aGlzLmludGVydmFsPXNldEludGVydmFsKHRoaXMuc2Nyb2xsQ2FsbGJhY2ssNTApKSx0aGlzLmNvbmZpZy5saXZlP25ldyBhKGZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihiKXt2YXIgYyxkLGUsZixnO2ZvcihnPVtdLGM9MCxkPWIubGVuZ3RoO2Q+YztjKyspZj1iW2NdLGcucHVzaChmdW5jdGlvbigpe3ZhciBhLGIsYyxkO2ZvcihjPWYuYWRkZWROb2Rlc3x8W10sZD1bXSxhPTAsYj1jLmxlbmd0aDtiPmE7YSsrKWU9Y1thXSxkLnB1c2godGhpcy5kb1N5bmMoZSkpO3JldHVybiBkfS5jYWxsKGEpKTtyZXR1cm4gZ319KHRoaXMpKS5vYnNlcnZlKGRvY3VtZW50LmJvZHkse2NoaWxkTGlzdDohMCxzdWJ0cmVlOiEwfSk6dm9pZCAwfSxlLnByb3RvdHlwZS5zdG9wPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc3RvcHBlZD0hMCx0aGlzLnV0aWwoKS5yZW1vdmVFdmVudCh0aGlzLmNvbmZpZy5zY3JvbGxDb250YWluZXJ8fHdpbmRvdywic2Nyb2xsIix0aGlzLnNjcm9sbEhhbmRsZXIpLHRoaXMudXRpbCgpLnJlbW92ZUV2ZW50KHdpbmRvdywicmVzaXplIix0aGlzLnNjcm9sbEhhbmRsZXIpLG51bGwhPXRoaXMuaW50ZXJ2YWw/Y2xlYXJJbnRlcnZhbCh0aGlzLmludGVydmFsKTp2b2lkIDB9LGUucHJvdG90eXBlLnN5bmM9ZnVuY3Rpb24oYil7cmV0dXJuIGEubm90U3VwcG9ydGVkP3RoaXMuZG9TeW5jKHRoaXMuZWxlbWVudCk6dm9pZCAwfSxlLnByb3RvdHlwZS5kb1N5bmM9ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGUsZjtpZihudWxsPT1hJiYoYT10aGlzLmVsZW1lbnQpLDE9PT1hLm5vZGVUeXBlKXtmb3IoYT1hLnBhcmVudE5vZGV8fGEsZT1hLnF1ZXJ5U2VsZWN0b3JBbGwoIi4iK3RoaXMuY29uZmlnLmJveENsYXNzKSxmPVtdLGM9MCxkPWUubGVuZ3RoO2Q+YztjKyspYj1lW2NdLGcuY2FsbCh0aGlzLmFsbCxiKTwwPyh0aGlzLmJveGVzLnB1c2goYiksdGhpcy5hbGwucHVzaChiKSx0aGlzLnN0b3BwZWR8fHRoaXMuZGlzYWJsZWQoKT90aGlzLnJlc2V0U3R5bGUoKTp0aGlzLmFwcGx5U3R5bGUoYiwhMCksZi5wdXNoKHRoaXMuc2Nyb2xsZWQ9ITApKTpmLnB1c2godm9pZCAwKTtyZXR1cm4gZn19LGUucHJvdG90eXBlLnNob3c9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuYXBwbHlTdHlsZShhKSxhLmNsYXNzTmFtZT1hLmNsYXNzTmFtZSsiICIrdGhpcy5jb25maWcuYW5pbWF0ZUNsYXNzLG51bGwhPXRoaXMuY29uZmlnLmNhbGxiYWNrJiZ0aGlzLmNvbmZpZy5jYWxsYmFjayhhKSx0aGlzLnV0aWwoKS5lbWl0RXZlbnQoYSx0aGlzLndvd0V2ZW50KSx0aGlzLnV0aWwoKS5hZGRFdmVudChhLCJhbmltYXRpb25lbmQiLHRoaXMucmVzZXRBbmltYXRpb24pLHRoaXMudXRpbCgpLmFkZEV2ZW50KGEsIm9hbmltYXRpb25lbmQiLHRoaXMucmVzZXRBbmltYXRpb24pLHRoaXMudXRpbCgpLmFkZEV2ZW50KGEsIndlYmtpdEFuaW1hdGlvbkVuZCIsdGhpcy5yZXNldEFuaW1hdGlvbiksdGhpcy51dGlsKCkuYWRkRXZlbnQoYSwiTVNBbmltYXRpb25FbmQiLHRoaXMucmVzZXRBbmltYXRpb24pLGF9LGUucHJvdG90eXBlLmFwcGx5U3R5bGU9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGU7cmV0dXJuIGQ9YS5nZXRBdHRyaWJ1dGUoImRhdGEtd293LWR1cmF0aW9uIiksYz1hLmdldEF0dHJpYnV0ZSgiZGF0YS13b3ctZGVsYXkiKSxlPWEuZ2V0QXR0cmlidXRlKCJkYXRhLXdvdy1pdGVyYXRpb24iKSx0aGlzLmFuaW1hdGUoZnVuY3Rpb24oZil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGYuY3VzdG9tU3R5bGUoYSxiLGQsYyxlKX19KHRoaXMpKX0sZS5wcm90b3R5cGUuYW5pbWF0ZT1mdW5jdGlvbigpe3JldHVybiJyZXF1ZXN0QW5pbWF0aW9uRnJhbWUiaW4gd2luZG93P2Z1bmN0aW9uKGEpe3JldHVybiB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGEpfTpmdW5jdGlvbihhKXtyZXR1cm4gYSgpfX0oKSxlLnByb3RvdHlwZS5yZXNldFN0eWxlPWZ1bmN0aW9uKCl7dmFyIGEsYixjLGQsZTtmb3IoZD10aGlzLmJveGVzLGU9W10sYj0wLGM9ZC5sZW5ndGg7Yz5iO2IrKylhPWRbYl0sZS5wdXNoKGEuc3R5bGUudmlzaWJpbGl0eT0idmlzaWJsZSIpO3JldHVybiBlfSxlLnByb3RvdHlwZS5yZXNldEFuaW1hdGlvbj1mdW5jdGlvbihhKXt2YXIgYjtyZXR1cm4gYS50eXBlLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiYW5pbWF0aW9uZW5kIik+PTA/KGI9YS50YXJnZXR8fGEuc3JjRWxlbWVudCxiLmNsYXNzTmFtZT1iLmNsYXNzTmFtZS5yZXBsYWNlKHRoaXMuY29uZmlnLmFuaW1hdGVDbGFzcywiIikudHJpbSgpKTp2b2lkIDB9LGUucHJvdG90eXBlLmN1c3RvbVN0eWxlPWZ1bmN0aW9uKGEsYixjLGQsZSl7cmV0dXJuIGImJnRoaXMuY2FjaGVBbmltYXRpb25OYW1lKGEpLGEuc3R5bGUudmlzaWJpbGl0eT1iPyJoaWRkZW4iOiJ2aXNpYmxlIixjJiZ0aGlzLnZlbmRvclNldChhLnN0eWxlLHthbmltYXRpb25EdXJhdGlvbjpjfSksZCYmdGhpcy52ZW5kb3JTZXQoYS5zdHlsZSx7YW5pbWF0aW9uRGVsYXk6ZH0pLGUmJnRoaXMudmVuZG9yU2V0KGEuc3R5bGUse2FuaW1hdGlvbkl0ZXJhdGlvbkNvdW50OmV9KSx0aGlzLnZlbmRvclNldChhLnN0eWxlLHthbmltYXRpb25OYW1lOmI/Im5vbmUiOnRoaXMuY2FjaGVkQW5pbWF0aW9uTmFtZShhKX0pLGF9LGUucHJvdG90eXBlLnZlbmRvcnM9WyJtb3oiLCJ3ZWJraXQiXSxlLnByb3RvdHlwZS52ZW5kb3JTZXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZjtkPVtdO2ZvcihjIGluIGIpZT1iW2NdLGFbIiIrY109ZSxkLnB1c2goZnVuY3Rpb24oKXt2YXIgYixkLGcsaDtmb3IoZz10aGlzLnZlbmRvcnMsaD1bXSxiPTAsZD1nLmxlbmd0aDtkPmI7YisrKWY9Z1tiXSxoLnB1c2goYVsiIitmK2MuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrYy5zdWJzdHIoMSldPWUpO3JldHVybiBofS5jYWxsKHRoaXMpKTtyZXR1cm4gZH0sZS5wcm90b3R5cGUudmVuZG9yQ1NTPWZ1bmN0aW9uKGEsYil7dmFyIGMsZSxmLGcsaCxpO2ZvcihoPWQoYSksZz1oLmdldFByb3BlcnR5Q1NTVmFsdWUoYiksZj10aGlzLnZlbmRvcnMsYz0wLGU9Zi5sZW5ndGg7ZT5jO2MrKylpPWZbY10sZz1nfHxoLmdldFByb3BlcnR5Q1NTVmFsdWUoIi0iK2krIi0iK2IpO3JldHVybiBnfSxlLnByb3RvdHlwZS5hbmltYXRpb25OYW1lPWZ1bmN0aW9uKGEpe3ZhciBiO3RyeXtiPXRoaXMudmVuZG9yQ1NTKGEsImFuaW1hdGlvbi1uYW1lIikuY3NzVGV4dH1jYXRjaChjKXtiPWQoYSkuZ2V0UHJvcGVydHlWYWx1ZSgiYW5pbWF0aW9uLW5hbWUiKX1yZXR1cm4ibm9uZSI9PT1iPyIiOmJ9LGUucHJvdG90eXBlLmNhY2hlQW5pbWF0aW9uTmFtZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5hbmltYXRpb25OYW1lQ2FjaGUuc2V0KGEsdGhpcy5hbmltYXRpb25OYW1lKGEpKX0sZS5wcm90b3R5cGUuY2FjaGVkQW5pbWF0aW9uTmFtZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5hbmltYXRpb25OYW1lQ2FjaGUuZ2V0KGEpfSxlLnByb3RvdHlwZS5zY3JvbGxIYW5kbGVyPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2Nyb2xsZWQ9ITB9LGUucHJvdG90eXBlLnNjcm9sbENhbGxiYWNrPWZ1bmN0aW9uKCl7dmFyIGE7cmV0dXJuIXRoaXMuc2Nyb2xsZWR8fCh0aGlzLnNjcm9sbGVkPSExLHRoaXMuYm94ZXM9ZnVuY3Rpb24oKXt2YXIgYixjLGQsZTtmb3IoZD10aGlzLmJveGVzLGU9W10sYj0wLGM9ZC5sZW5ndGg7Yz5iO2IrKylhPWRbYl0sYSYmKHRoaXMuaXNWaXNpYmxlKGEpP3RoaXMuc2hvdyhhKTplLnB1c2goYSkpO3JldHVybiBlfS5jYWxsKHRoaXMpLHRoaXMuYm94ZXMubGVuZ3RofHx0aGlzLmNvbmZpZy5saXZlKT92b2lkIDA6dGhpcy5zdG9wKCl9LGUucHJvdG90eXBlLm9mZnNldFRvcD1mdW5jdGlvbihhKXtmb3IodmFyIGI7dm9pZCAwPT09YS5vZmZzZXRUb3A7KWE9YS5wYXJlbnROb2RlO2ZvcihiPWEub2Zmc2V0VG9wO2E9YS5vZmZzZXRQYXJlbnQ7KWIrPWEub2Zmc2V0VG9wO3JldHVybiBifSxlLnByb3RvdHlwZS5pc1Zpc2libGU9ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGUsZjtyZXR1cm4gYz1hLmdldEF0dHJpYnV0ZSgiZGF0YS13b3ctb2Zmc2V0Iil8fHRoaXMuY29uZmlnLm9mZnNldCxmPXRoaXMuY29uZmlnLnNjcm9sbENvbnRhaW5lciYmdGhpcy5jb25maWcuc2Nyb2xsQ29udGFpbmVyLnNjcm9sbFRvcHx8d2luZG93LnBhZ2VZT2Zmc2V0LGU9ZitNYXRoLm1pbih0aGlzLmVsZW1lbnQuY2xpZW50SGVpZ2h0LHRoaXMudXRpbCgpLmlubmVySGVpZ2h0KCkpLWMsZD10aGlzLm9mZnNldFRvcChhKSxiPWQrYS5jbGllbnRIZWlnaHQsZT49ZCYmYj49Zn0sZS5wcm90b3R5cGUudXRpbD1mdW5jdGlvbigpe3JldHVybiBudWxsIT10aGlzLl91dGlsP3RoaXMuX3V0aWw6dGhpcy5fdXRpbD1uZXcgYn0sZS5wcm90b3R5cGUuZGlzYWJsZWQ9ZnVuY3Rpb24oKXtyZXR1cm4hdGhpcy5jb25maWcubW9iaWxlJiZ0aGlzLnV0aWwoKS5pc01vYmlsZShuYXZpZ2F0b3IudXNlckFnZW50KX0sZX0oKX0pLmNhbGwodGhpcyk7"}},"time_used":13,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":13,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/featuredicon2.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.574Z","timestamp":1785158432574,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/featuredicon2.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=yIMw17oHX0sn%2FXzsTYWWZnI6aPcrPxtLiFr%2Bd8BUgvdX8l700bg3Px%2F%2FdltIQW5S2KBohhOIz%2BXqVL6G75UCIqfjs67I5dALf5FTUfs20Nslbkd%2FWitqN9LzFROT27gguokSxA%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b9c8656b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 5547\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"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":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]}],"data":{"size":5547,"size_decoded":6315,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"fdf3d26fc6e998a4ba470fc7455cdf8c","sha1":"9e7ed4050c0c911639eda7993782afe3450083a9","sha256":"fa525bef3ebe4a19f03a96ffd417369931b6599883cf6ab3e8fe2cd8f183422c","sha512":"7bdfe9ac1dc2a16cd1b6979be9029c6818463e71f98f83ec541fb653bb966c373e247010adcb7abef4626ea1afb8601219b3eb24a28de28d9f211cd38d65385a","ssdeep":"96:PY2clg93A6X8g1UswGNwCv2fp0st8dsi60Mel+yj2qOJqH686HIqa0F1:Pklg9Q6VgGNwCefpNtqsGzl+k2qOJqHq","tlshash":"14b1afcefa528c8dc12090c97e8a74c5385e35dc8284d2b5f086de64ac3a9f1589c9d3","first_seen":"2024-09-19T20:45:30.984249Z","last_seen":"2026-07-27T13:21:39.130001Z","times_seen":22,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MzM1QzMzQTE4NUQ3MTFFOTk1MjhGRkVBNkFENUQ1QzAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MzM1QzMzQTI4NUQ3MTFFOTk1MjhGRkVBNkFENUQ1QzAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDozMzVDMzM5Rjg1RDcxMUU5OTUyOEZGRUE2QUQ1RDVDMCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDozMzVDMzNBMDg1RDcxMUU5OTUyOEZGRUE2QUQ1RDVDMCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pusz3ZQAABIfSURBVHja1FsJXFXV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"}},"time_used":17,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":17,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/_/translate_http/_/ss/k=translate_http.tr.B7Dih9Jyjnw.L.F4.O/am=BIAABw/d=0/rs=AN8SPfpC04vrrzQXgs_TCM5EtruwfPzNtQ/m=el_main_css","fqdn":"www.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.765Z","timestamp":1785158432765,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /_/translate_http/_/ss/k=translate_http.tr.B7Dih9Jyjnw.L.F4.O/am=BIAABw/d=0/rs=AN8SPfpC04vrrzQXgs_TCM5EtruwfPzNtQ/m=el_main_css HTTP/1.1\r\nHost: www.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\naccept-ranges: bytes\r\ncontent-encoding: gzip\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/rosetta\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"rosetta\"\r\nreport-to: {\"group\":\"rosetta\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/rosetta\"}]}\r\ncontent-length: 3967\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:10:44 GMT\r\nexpires: Thu, 22 Jul 2027 13:10:44 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Thu, 09 Apr 2026 01:12:55 GMT\r\ncontent-type: text/css; charset=UTF-8\r\nvary: Accept-Encoding\r\nage: 432588\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":20284,"size_decoded":4819,"mime_type":"text/css; charset=UTF-8","magic":"ASCII text, with very long lines (20284), with no line terminators","md5":"fde4f72b90fe807270db3c332dd058df","sha1":"7ef4d70af01c38a7f80a7650be25f63aff4ba751","sha256":"ab31c9be358d2107fc1158434c7aeaaf15f82e3e405ed67ab236b5ac232ed159","sha512":"9bef39350af557afeb10cb71068426ab28befaf5295359954787be06a5ce0993d69e8f5018a5a17c44311d294dd1a87a6f82edd0f5743df0149b8e4e53061695","ssdeep":"192:nvqx/EhZINcrXsfg0SgG8CqA3uku9SJFzvQVMbnUIfIxIVVpTrecfzPtcmt4v78l:gMF8Sb3i0JFzourUqWMVpTrdfzPtcBG","tlshash":"c492872057aed01967efa82364d36dff71d444db90123eeaaf5a7352cd821f231ea214","first_seen":"2026-04-13T20:43:22.641436Z","last_seen":"2026-08-17T21:53:38.004931Z","times_seen":20531,"resource_available":false,"data":"LlZJcGdKZC1aVmk5b2QtT1JIYi1PRVZtY2R7bGVmdDowO3RvcDowO2hlaWdodDozOXB4O3dpZHRoOjEwMCU7ei1pbmRleDoxMDAwMDAwMTtwb3NpdGlvbjpmaXhlZDtib3JkZXI6bm9uZTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNkI5MERBO21hcmdpbjowO2JveC1zaGFkb3c6MCAwIDhweCAxcHggIzk5OX0uVklwZ0pkLVpWaTlvZC14bDA3T2ItT0VWbWNke3otaW5kZXg6MTAwMDAwMDI7Ym9yZGVyOm5vbmU7cG9zaXRpb246Zml4ZWQ7Ym94LXNoYWRvdzowIDNweCA4cHggMnB4ICM5OTl9LlZJcGdKZC1aVmk5b2QtU21mWi1PRVZtY2R7ei1pbmRleDoxMDAwMDAwMDtib3JkZXI6bm9uZTttYXJnaW46MH0uZ29vZy10ZS1nYWRnZXR7Zm9udC1mYW1pbHk6YXJpYWw7Zm9udC1zaXplOjExcHg7Y29sb3I6IzY2Njt3aGl0ZS1zcGFjZTpub3dyYXB9Lmdvb2ctdGUtZ2FkZ2V0IGltZ3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Ym9yZGVyOm5vbmV9Lmdvb2ctdGUtZ2FkZ2V0LXNpbXBsZXtiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICNENUQ1RDU7Ym9yZGVyLXRvcDoxcHggc29saWQgIzlCOUI5Qjtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjRThFOEU4O2JvcmRlci1yaWdodDoxcHggc29saWQgI0Q1RDVENTtmb250LXNpemU6MTBwdDtkaXNwbGF5OmlubGluZS1ibG9jaztwYWRkaW5nLXRvcDoxcHg7cGFkZGluZy1ib3R0b206MnB4O2N1cnNvcjpwb2ludGVyfS5nb29nLXRlLWdhZGdldC1pY29ue21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4O3dpZHRoOjE5cHg7aGVpZ2h0OjE5cHg7Ym9yZGVyOm5vbmU7dmVydGljYWwtYWxpZ246bWlkZGxlfS5nb29nLXRlLWNvbWJve21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4O3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS5nb29nLXRlLWdhZGdldCAuZ29vZy10ZS1jb21ib3ttYXJnaW46NHB4IDB9LlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDphY3RpdmUsLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkOmhvdmVyLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDpsaW5rLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDp2aXNpdGVke2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojNDQ0O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLU9SSGIgLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkLC5WSXBnSmQtWlZpOW9kLVR2RDlQYy1oU1JHUGR7ZGlzcGxheTpibG9jazttYXJnaW46MCAxMHB4fS5WSXBnSmQtWlZpOW9kLU9SSGIgLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1Bke3BhZGRpbmctdG9wOjJweDtwYWRkaW5nLWxlZnQ6NHB4fS5WSXBnSmQtWlZpOW9kLU9SSGIgKiwuVklwZ0pkLVpWaTlvZC1TbWZaICosLlZJcGdKZC1aVmk5b2QtbDl4a3RmICosLlZJcGdKZC1aVmk5b2QtdkgxR21mICosLlZJcGdKZC1aVmk5b2QteGwwN09iICosLmdvb2ctdGUtY29tYm97Zm9udC1mYW1pbHk6YXJpYWw7Zm9udC1zaXplOjEwcHR9LlZJcGdKZC1aVmk5b2QtT1JIYnttYXJnaW46MDtiYWNrZ3JvdW5kLWNvbG9yOiNFNEVGRkI7b3ZlcmZsb3c6aGlkZGVufS5WSXBnSmQtWlZpOW9kLU9SSGIgaW1ne2JvcmRlcjpub25lfS5WSXBnSmQtWlZpOW9kLU9SSGItYk45N1Bje2NvbG9yOiMwMDB9LlZJcGdKZC1aVmk5b2QtT1JIYi1iTjk3UGMgaW1ne3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uVklwZ0pkLVpWaTlvZC1PUkhiLVRzd3YxYntjb2xvcjojNjY2O3ZlcnRpY2FsLWFsaWduOnRvcDttYXJnaW4tdG9wOjA7Zm9udC1zaXplOjdwdH0uVklwZ0pkLVpWaTlvZC1PUkhiLUtFNnZxZXt3aWR0aDo4cHh9LlZJcGdKZC1aVmk5b2QtTGdic1Nle2JvcmRlci1jb2xvcjojRTdFN0U3O2JvcmRlci1zdHlsZTpub25lIHNvbGlkIHNvbGlkIG5vbmU7Ym9yZGVyLXdpZHRoOjAgMXB4IDFweCAwfS5WSXBnSmQtWlZpOW9kLUxnYnNTZSBkaXZ7Ym9yZGVyLWNvbG9yOiNDQ0MgIzk5OSAjOTk5ICNDQ0M7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjOTk5O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O2hlaWdodDoyMHB4fS5WSXBnSmQtWlZpOW9kLUxnYnNTZSBidXR0b257YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtjdXJzb3I6cG9pbnRlcjtoZWlnaHQ6MjBweDtvdmVyZmxvdzpoaWRkZW47bWFyZ2luOjA7dmVydGljYWwtYWxpZ246dG9wO3doaXRlLXNwYWNlOm5vd3JhcH0uVklwZ0pkLVpWaTlvZC1MZ2JzU2UgYnV0dG9uOmFjdGl2ZXtiYWNrZ3JvdW5kOm5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgI0NDQ30uVklwZ0pkLVpWaTlvZC1TbWZae21hcmdpbjowO2JhY2tncm91bmQtY29sb3I6I0ZGRjt3aGl0ZS1zcGFjZTpub3dyYXB9LlZJcGdKZC1aVmk5b2QtU21mWi1oU1JHUGR7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtc2l6ZToxMHB0O2JvcmRlcjoxcHggb3V0c2V0ICM4ODg7cGFkZGluZzo2cHggMTBweDt3aGl0ZS1zcGFjZTpub3dyYXA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowfS5WSXBnSmQtWlZpOW9kLVNtZlotaFNSR1BkIGltZ3ttYXJnaW4tbGVmdDoycHg7bWFyZ2luLXJpZ2h0OjJweDt3aWR0aDoxOXB4O2hlaWdodDoxOXB4O2JvcmRlcjpub25lO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZCBzcGFue3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7bWFyZ2luLWxlZnQ6MnB4O21hcmdpbi1yaWdodDoycHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS5nb29nLXRlLWZsb2F0LXRvcCAuVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZHtwYWRkaW5nOjJweDtib3JkZXItdG9wLXdpZHRoOjB9Lmdvb2ctdGUtZmxvYXQtYm90dG9tIC5WSXBnSmQtWlZpOW9kLVNtZlotaFNSR1Bke3BhZGRpbmc6MnB4O2JvcmRlci1ib3R0b20td2lkdGg6MH0uVklwZ0pkLVpWaTlvZC14bDA3T2ItbFRCeGVke3RleHQtZGVjb3JhdGlvbjpub25lO2NvbG9yOiMwMEM7d2hpdGUtc3BhY2U6bm93cmFwO21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4fS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQgc3Bhbnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQgaW1ne21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4fS5nb29nLXRlLWdhZGdldC1zaW1wbGUgLlZJcGdKZC1aVmk5b2QteGwwN09iLWxUQnhlZHtjb2xvcjojMDAwfS5nb29nLXRlLWdhZGdldC1zaW1wbGUgLlZJcGdKZC1aVmk5b2QteGwwN09iLWxUQnhlZCBzcGFue3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYntiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Ym9yZGVyOjJweCBzb2xpZCAjQzNEOUZGO292ZXJmbG93LXk6c2Nyb2xsO292ZXJmbG93LXg6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MH0uVklwZ0pkLVpWaTlvZC14bDA3T2ItaWJuQzZie3BhZGRpbmc6M3B4O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmIsLlZJcGdKZC1aVmk5b2QteGwwN09iLWlibkM2YjpsaW5re2NvbG9yOiMwMEM7YmFja2dyb3VuZDojRkZGfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6dmlzaXRlZHtjb2xvcjojNTUxQThCfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6aG92ZXJ7YmFja2dyb3VuZDojQzNEOUZGfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6YWN0aXZle2NvbG9yOiMwMEN9LlZJcGdKZC1aVmk5b2QtdkgxR21me2JhY2tncm91bmQtY29sb3I6I0ZGRjt0ZXh0LWRlY29yYXRpb246bm9uZTtib3JkZXI6MXB4IHNvbGlkICM2QjkwREE7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6NHB4fS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1LcmhQTmJ7d2lkdGg6MTZweH0uVklwZ0pkLVpWaTlvZC12SDFHbWYtaGdEVXdle21hcmdpbjo2cHggMDtoZWlnaHQ6MXB4O2JhY2tncm91bmQtY29sb3I6I2FhYTtvdmVyZmxvdzpoaWRkZW59LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YiBkaXYsLlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQgZGl2e3BhZGRpbmc6NHB4fS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmIgLnVERUZnZXtkaXNwbGF5Om5vbmV9LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQgLmZtY21Te3BhZGRpbmctbGVmdDo0cHg7cGFkZGluZy1yaWdodDo0cHh9LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZHt0ZXh0LWRlY29yYXRpb246bm9uZX0uVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiOmFjdGl2ZSBkaXYsLlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YjpsaW5rIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiOnZpc2l0ZWQgZGl2e2NvbG9yOiMwMEM7YmFja2dyb3VuZDojRkZGfS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmI6aG92ZXIgZGl2e2NvbG9yOiNGRkY7YmFja2dyb3VuZDojMzZDfS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDphY3RpdmUgZGl2LC5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kOmhvdmVyIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDpsaW5rIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDp2aXNpdGVkIGRpdntjb2xvcjojMDAwO2ZvbnQtd2VpZ2h0OjcwMH0uVklwZ0pkLVpWaTlvZC1sOXhrdGZ7YmFja2dyb3VuZC1jb2xvcjojRkZGO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjhweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjEwcHh9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLU9FVm1jZHtiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7Ym9yZGVyOjFweCBzb2xpZCAjNkI5MERBO2JveC1zaGFkb3c6MCAzcHggOHB4IDJweCAjOTk5O2JvcmRlci1yYWRpdXM6OHB4fS5WSXBnSmQtWlZpOW9kLWw5eGt0ZiBpbWd7Ym9yZGVyOm5vbmV9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLWZtY21Te21hcmdpbi10b3A6NnB4fS5WSXBnSmQtWlZpOW9kLWw5eGt0Zi1WZ3dKbGN7bWFyZ2luLXRvcDo2cHg7d2hpdGUtc3BhY2U6bm93cmFwfS5WSXBnSmQtWlZpOW9kLWw5eGt0Zi1WZ3dKbGMgKnt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLVZnd0psYyAuRFVHSmlle2JhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vd3d3Jmdvb2dsZS5jb20vaW1hZ2VzL3ppcHB5X21pbnVzX3NtLmdpZil9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLVZnd0psYyAuVGR5VERle2JhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vd3d3Jmdvb2dsZS5jb20vaW1hZ2VzL3ppcHB5X3BsdXNfc20uZ2lmKX0uVklwZ0pkLVpWaTlvZC1sOXhrdGYtVmd3SmxjIHNwYW57Y29sb3I6IzAwQzt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO2N1cnNvcjpwb2ludGVyO21hcmdpbjowIDRweH0uVklwZ0pkLVpWaTlvZC1sOXhrdGYtSTlHTHB7bWFyZ2luOjZweCAwIDB9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLUk5R0xwIGZvcm17bWFyZ2luOjB9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLUk5R0xwIGZvcm0gdGV4dGFyZWF7bWFyZ2luLWJvdHRvbTo0cHg7d2lkdGg6MTAwJX0uVklwZ0pkLVpWaTlvZC1sOXhrdGYteWVQZTVje21hcmdpbjo2cHggMCA0cHh9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLXdPSE15Znt6LWluZGV4OjEwMDA7cG9zaXRpb246Zml4ZWQ7dHJhbnNpdGlvbi1kZWxheTouNnM7bGVmdDotMTAwMHB4O3RvcDotMTAwMHB4fS5WSXBnSmQtWlZpOW9kLWFaMndFZS13T0hNeWYtdGk2aEdje3RyYW5zaXRpb24tZGVsYXk6MHM7bGVmdDotMTRweDt0b3A6LTE0cHh9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDRweDtoZWlnaHQ6MTA0cHg7Ym9yZGVyLXJhZGl1czo1MHB4O2JhY2tncm91bmQ6I0ZGRiB1cmwoaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL3Byb2R1Y3QvMngvdHJhbnNsYXRlXzI0ZHAucG5nKSA1MCUgNTAlIG5vLXJlcGVhdDt0cmFuc2l0aW9uOmFsbCAuNnMgZWFzZS1pbi1vdXQ7dHJhbnNmb3JtOnNjYWxlKC40KTtvcGFjaXR5OjB9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPLXRpNmhHY3t0cmFuc2Zvcm06c2NhbGUoLjUpO29wYWNpdHk6MX0uVklwZ0pkLVpWaTlvZC1hWjJ3RWV7bWFyZ2luOjJweCAwIDAgMnB4O2FuaW1hdGlvbjpzcGlubmVyLXJvdGF0b3IgMS40cyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyBzcGlubmVyLXJvdGF0b3J7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDI3MGRlZyl9fS5WSXBnSmQtWlZpOW9kLWFaMndFZS1KdDVjS3tzdHJva2UtZGFzaGFycmF5OjE4NztzdHJva2UtZGFzaG9mZnNldDowO3N0cm9rZTojNDI4NUY0O3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO2FuaW1hdGlvbjpzcGlubmVyLWRhc2ggMS40cyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHNwaW5uZXItZGFzaHswJXtzdHJva2UtZGFzaG9mZnNldDoxODd9NTAle3N0cm9rZS1kYXNob2Zmc2V0OjQ2Ljc1O3RyYW5zZm9ybTpyb3RhdGUoMTM1ZGVnKX10b3tzdHJva2UtZGFzaG9mZnNldDoxODc7dHJhbnNmb3JtOnJvdGF0ZSg0NTBkZWcpfX0uVklwZ0pkLXlBV05FYi1MN2xia2IgYSwuVklwZ0pkLXlBV05FYi1MN2xia2IgYm9keSwuVklwZ0pkLXlBV05FYi1MN2xia2IgZGl2LC5WSXBnSmQteUFXTkViLUw3bGJrYiBmb3JtLC5WSXBnSmQteUFXTkViLUw3bGJrYiBoMSwuVklwZ0pkLXlBV05FYi1MN2xia2IgaDIsLlZJcGdKZC15QVdORWItTDdsYmtiIGgzLC5WSXBnSmQteUFXTkViLUw3bGJrYiBoNCwuVklwZ0pkLXlBV05FYi1MN2xia2IgaDUsLlZJcGdKZC15QVdORWItTDdsYmtiIGg2LC5WSXBnSmQteUFXTkViLUw3bGJrYiBodG1sLC5WSXBnSmQteUFXTkViLUw3bGJrYiBpZnJhbWUsLlZJcGdKZC15QVdORWItTDdsYmtiIGltZywuVklwZ0pkLXlBV05FYi1MN2xia2IgbGksLlZJcGdKZC15QVdORWItTDdsYmtiIG9sLC5WSXBnSmQteUFXTkViLUw3bGJrYiBwLC5WSXBnSmQteUFXTkViLUw3bGJrYiBzcGFuLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0YWJsZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgdGJvZHksLlZJcGdKZC15QVdORWItTDdsYmtiIHRkLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0ciwuVklwZ0pkLXlBV05FYi1MN2xia2IgdWx7YWxsOnVuc2V0O2ZvbnQtc2l6ZToxMDAlO2xpbmUtaGVpZ2h0Om5vcm1hbH0uVklwZ0pkLXlBV05FYi1MN2xia2Igb2wsLlZJcGdKZC15QVdORWItTDdsYmtiIHVse2xpc3Qtc3R5bGU6bm9uZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgdGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9LlZJcGdKZC15QVdORWItTDdsYmtiIGNhcHRpb24sLlZJcGdKZC15QVdORWItTDdsYmtiIHRkLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0aHt0ZXh0LWFsaWduOmxlZnQ7Zm9udC13ZWlnaHQ6NDAwfS5WSXBnSmQteUFXTkViLUw3bGJrYiBpbnB1dDo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MH1kaXY+LlZJcGdKZC15QVdORWItTDdsYmtie3BhZGRpbmc6MTBweCAxNHB4fS5WSXBnSmQteUFXTkViLUw3bGJrYntjb2xvcjojMjIyO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNlZWU7Ym94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpOy1tb3otYm94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpOy13ZWJraXQtYm94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpO2Rpc3BsYXk6bm9uZTtmb250LWZhbWlseTphcmlhbDtmb250LXNpemU6MTBwdDt3aWR0aDo0MjBweDtwYWRkaW5nOjEycHg7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMDAwMH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItblZNZmNkLWZtY21TLC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtcGJUVFlle2NsZWFyOmJvdGg7Zm9udC1zaXplOjEwcHQ7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpqdXN0aWZ5O3dpZHRoOjEwMCV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXI0bmtle2NvbG9yOiM5OTk7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjttYXJnaW46NHB4IDA7dGV4dC1hbGlnbjpsZWZ0fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UdkQ5UGMtTGdic1Nle2Rpc3BsYXk6bm9uZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItbDRlSFh7ZmxvYXQ6bGVmdDttYXJnaW46MH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItWjBBcnFmLVBMRGJiZntkaXNwbGF5OmlubGluZS1ibG9ja30uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItZnc0MlplLVowQXJxZi1oYUFjbGZ7ZGlzcGxheTpub25lO3dpZHRoOjEwMCV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVowQXJxZi1IOXREdHttYXJnaW4tdG9wOjIwcHh9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUxLNXl1e2Zsb2F0OmxlZnR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXF3VThNZXtmbG9hdDpyaWdodH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItY0dNSTJie21pbi1oZWlnaHQ6MTVweDtwb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MSV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLWpPZmtNYi1OZTNzRmZ7YmFja2dyb3VuZDotbXMtbGluZWFyLWdyYWRpZW50KHRvcCwjMjk5MTBkIDAsIzIwYWYwZSAxMDAlKTtiYWNrZ3JvdW5kOiMyOTkxMGQ7Ym9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDstd2Via2l0LWJvcmRlci1yYWRpdXM6NHB4O2JveC1zaGFkb3c6aW5zZXQgMCAycHggMnB4ICMxZTY2MDk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMnB4IDJweCAjMWU2NjA5Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDJweCAycHggIzFlNjYwOTtjb2xvcjp3aGl0ZTtmb250LXNpemU6OXB0O2ZvbnQtd2VpZ2h0OmJvbGRlcjttYXJnaW4tdG9wOjEycHg7cGFkZGluZzo2cHg7dGV4dC1zaGFkb3c6MXB4IDFweCAxcHggIzFlNjYwOX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItWjBBcnFmLWhTUkdQZHtjb2xvcjojMTVjO2N1cnNvcjpwb2ludGVyO2ZvbnQtZmFtaWx5OmFyaWFsO2ZvbnQtc2l6ZToxMXB4O21hcmdpbi1yaWdodDoxNXB4O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQteUFXTkViLUw3bGJrYj50ZXh0YXJlYXtmb250LWZhbWlseTphcmlhbDtyZXNpemU6dmVydGljYWw7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjEwcHg7Ym9yZGVyLXJhZGl1czoxcHg7Ym9yZGVyOjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci10b3A6MXB4IHNvbGlkIHNpbHZlcjtmb250LXNpemU6MTNweDtoZWlnaHQ6YXV0bztvdmVyZmxvdy15OmF1dG87cGFkZGluZzoxcHh9LlZJcGdKZC15QVdORWItTDdsYmtiIHRleHRhcmVhOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjMpO2JvcmRlcjoxcHggc29saWQgIzRkOTBmZTtvdXRsaW5lOm5vbmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVowQXJxZi1JYkUwU3ttYXJnaW4tcmlnaHQ6MTBweH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwe21pbi1oZWlnaHQ6MjVweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7cGFkZGluZy10b3A6OHB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwe21hcmdpbi1ib3R0b206NXB4O21hcmdpbi1ib3R0b206MH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dHtkaXNwbGF5OmlubGluZS1ibG9jazttaW4td2lkdGg6NTRweDsqbWluLXdpZHRoOjcwcHg7Ym9yZGVyOjFweCBzb2xpZCAjZGNkY2RjO2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwuMSk7dGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6IzQ0NDtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo3MDA7aGVpZ2h0OjI3cHg7b3V0bGluZTowO3BhZGRpbmc6MCA4cHg7dmVydGljYWwtYWxpZ246bWlkZGxlO2xpbmUtaGVpZ2h0OjI3cHg7bWFyZ2luOjAgMTZweCAwIDA7Ym94LXNoYWRvdzowIDFweCAycHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKTstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246YWxsIC4yMThzO2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2Y1ZjVmNSwjZjFmMWYxKTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lO2N1cnNvcjpkZWZhdWx0fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmhvdmVye2JvcmRlcjoxcHggc29saWQgI2M2YzZjNjtjb2xvcjojMjIyO3RyYW5zaXRpb246YWxsIDBzO2JhY2tncm91bmQtY29sb3I6I2Y4ZjhmODtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2Y4ZjhmOCwjZjFmMWYxKX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDphY3RpdmV7Ym9yZGVyOjFweCBzb2xpZCAjYzZjNmM2O2NvbG9yOiMzMzM7YmFja2dyb3VuZC1jb2xvcjojZjZmNmY2O2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KHRvcCwjZjZmNmY2LCNmMWYxZjEpfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmZvY3VzIC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0LkFIbXV3ZSAuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDphY3RpdmUsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQ6Zm9jdXM6YWN0aXZle2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4IHJnYmEoMjU1LDI1NSwyNTUsLjUpOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggcmdiYSgyNTUsMjU1LDI1NSwuNSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCByZ2JhKDI1NSwyNTUsMjU1LC41KX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dC5BSG11d2UsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQ6Zm9jdXN7b3V0bGluZTpub25lO2JvcmRlcjoxcHggc29saWQgIzRkOTBmZTt6LWluZGV4OjQhaW1wb3J0YW50fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0LmdrNlNNZHtiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCNlZWUsI2UwZTBlMCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMSk7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2NvbG9yOiMzMzN9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZntjb2xvcjp3aGl0ZTtib3JkZXItY29sb3I6IzMwNzllZDtiYWNrZ3JvdW5kLWNvbG9yOiM0ZDkwZmU7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCM0ZDkwZmUsIzQ3ODdlZCl9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZi5BSG11d2UgLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZjphY3RpdmUsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZjpob3ZlciAuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmZvY3Vze2JvcmRlci1jb2xvcjojMzA3OWVkO2JhY2tncm91bmQtY29sb3I6IzM1N2FlODtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsIzRkOTBmZSwjMzU3YWU4KX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmhvdmVye2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNmZmYsMCAxcHggMXB4IHJnYmEoMCwwLDAsLjEpOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2ZmZiwwIDFweCAxcHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCAjZmZmLDAgMXB4IDFweCByZ2JhKDAsMCwwLC4xKX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmLkFIbXV3ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmFjdGl2ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmZvY3VzLC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0IC5WSXBnSmQteUFXTkViLVowQXJxZi1zRmVCcWY6aG92ZXIsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQuQUhtdXdlLC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmFjdGl2ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDpmb2N1cywuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDpob3Zlcntib3JkZXItY29sb3I6IzMwNzllZH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItbXJ4UGdle2NvbG9yOiM5OTk7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZn0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLVcwdkpvLWZtY21Te2NvbG9yOiM5OTk7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjttYXJnaW46MTVweCAwIDVweH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXUwcGpvZS1mbWNtU3tjb2xvcjojODAwO2Rpc3BsYXk6bm9uZTtmb250LXNpemU6OXB0fS5WSXBnSmQteUFXTkViLVZJcGdKZC1mbWNtUy1zbjU0UXtiYWNrZ3JvdW5kLWNvbG9yOiNjOWQ3ZjE7Ym94LXNoYWRvdzoycHggMnB4IDRweCAjOTlhO2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtwb3NpdGlvbjpyZWxhdGl2ZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXhsMDdPYiAuVklwZ0pkLXlBV05FYi1WSXBnSmQteGwwN09ie2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNkZGQ7Ym94LXNoYWRvdzowIDJweCA0cHggIzk5YTttaW4td2lkdGg6MDtvdXRsaW5lOm5vbmU7cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MjAwMH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXhsMDdPYiAuVklwZ0pkLXlBV05FYi1WSXBnSmQtajdMRmxie2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MnB4IDVweCA1cHg7bWFyZ2luLXJpZ2h0OjA7Ym9yZGVyLXN0eWxlOm5vbmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC14bDA3T2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYjpob3ZlcntiYWNrZ3JvdW5kOiNkZGR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC14bDA3T2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYiBoMXtmb250LXNpemU6MTAwJTtmb250LXdlaWdodDo3MDA7bWFyZ2luOjRweCAwfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQteGwwN09iIC5WSXBnSmQteUFXTkViLVZJcGdKZC1qN0xGbGIgc3Ryb25ne2NvbG9yOiMzNDVhYWR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVZJcGdKZC1lS201RmMtaEZzYm97dGV4dC1hbGlnbjpyaWdodDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO2xlZnQ6YXV0b30uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYi1TSXNyVGQgLlZJcGdKZC15QVdORWItVklwZ0pkLWVLbTVGYy1oRnNib3t0ZXh0LWFsaWduOmxlZnQ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OmF1dG99LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVRWTHc5Yy1wcEhscmYtc241NFEsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtZm1jbVN7YmFja2dyb3VuZC1jb2xvcjojZjFlYTAwO2JvcmRlci1yYWRpdXM6NHB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDtib3gtc2hhZG93OjNweCAzcHggNHB4IHJnYmEoMCwwLDAsLjUpO2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjojZjFlYTAwO2N1cnNvcjpwb2ludGVyO21hcmdpbjotMnB4IC0ycHggLTJweCAtM3B4O3BhZGRpbmc6MnB4IDJweCAycHggM3B4O3Bvc2l0aW9uOnJlbGF0aXZlfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtcHBIbHJmLXNuNTRRe2NvbG9yOiMyMjJ9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtcGJUVFlle2NvbG9yOndoaXRlO3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVFZMdzljLXBwSGxyZiwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVFZMdzljLXBwSGxyZiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtcHBIbHJmLXNuNTRRe2JhY2tncm91bmQtY29sb3I6I2M5ZDdmMTtib3JkZXItcmFkaXVzOjRweCA0cHggMCAwOy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHggNHB4IDAgMDstbW96LWJvcmRlci1yYWRpdXM6NHB4IDRweCAwIDA7Ym94LXNoYWRvdzozcHggM3B4IDRweCByZ2JhKDAsMCwwLC41KTtib3gtc2l6aW5nOmJvcmRlci1ib3g7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXI7bWFyZ2luOi0ycHggLTJweCAtMnB4IC0zcHg7cGFkZGluZzoycHggMnB4IDNweCAzcHg7cG9zaXRpb246cmVsYXRpdmV9LlZJcGdKZC15QVdORWItTDdsYmtiIHNwYW46Zm9jdXN7b3V0bGluZTpub25lfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtRHlWREF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6MXB4IHNvbGlkICM0ZDkwZmU7Ym9yZGVyLXJhZGl1czowOy13ZWJraXQtYm9yZGVyLXJhZGl1czowOy1tb3otYm9yZGVyLXJhZGl1czowO21hcmdpbjotMnB4O3BhZGRpbmc6MXB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi15QVdORWItVFZMdzljLXNuNTRRLUx6WDNlZntib3JkZXItbGVmdDoycHggc29saWQgcmVkO21hcmdpbi1sZWZ0Oi0ycHh9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1UVkx3OWMtc241NFEtWUlBaUlie2JvcmRlci1yaWdodDoycHggc29saWQgcmVkO21hcmdpbi1yaWdodDotMnB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJme3BhZGRpbmc6MnB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21Te2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6MnB4IDJweCAzcHg7bWFyZ2luOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMzMzM7Ym9yZGVyOjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci10b3A6MXB4IHNvbGlkICNjMGMwYzA7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246dG9wO2hlaWdodDoyMXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJvcmRlci1yYWRpdXM6MXB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21TOmhvdmVye2JvcmRlcjoxcHggc29saWQgI2I5YjliOTtib3JkZXItdG9wOjFweCBzb2xpZCAjYTBhMGEwO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21TOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjMpO291dGxpbmU6bm9uZTtib3JkZXI6MXB4IHNvbGlkICM0ZDkwZmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC1ZUHFqYmYtc0ZlQnFme2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6MnB4IDZweCAzcHg7bWFyZ2luOjAgMCAwIDJweDtoZWlnaHQ6MjFweH0uVklwZ0pkLXlBV05FYi1MN2xia2I+ZGl2e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmb250LWZhbWlseTpHb29nbGUgU2FucyxBcmlhbCxzYW5zLXNlcmlmfS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtVWQ3ZnJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246ZW5kO2FsaWduLWl0ZW1zOmVuZDttYXJnaW46MTRweH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLUl1aXpXYy1TSXNyVGR7bWFyZ2luLXJpZ2h0OjE0cHg7Y29sb3I6Izc0Nzc3NTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1JdWl6V2MtaTNqTThje21hcmdpbi1sZWZ0OjE0cHg7Y29sb3I6Izc0Nzc3NTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1rNzdJaWZ7bWFyZ2luOjAgMTZweCAxNnB4fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtYXhBVjF7d2lkdGg6YXV0bztjb2xvcjojMWYxZjFmO2ZvbnQtc2l6ZToxNnB4O3RleHQtYWxpZ246aW5pdGlhbH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLWF4QVYxIC5WSXBnSmQteUFXTkViLVNJc3JUZHt0ZXh0LWFsaWduOnJpZ2h0fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlke2JvcmRlci1yYWRpdXM6MCAwIDEycHggMTJweDttYXJnaW46MDtiYWNrZ3JvdW5kOiNmMWY0Zjk7cG9zaXRpb246cmVsYXRpdmU7bWluLWhlaWdodDo1MHB4fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkIC5WSXBnSmQteUFXTkViLVNJc3JUZHt0ZXh0LWFsaWduOnJpZ2h0fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkLUI3STRPZHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47d2lkdGg6NzclO3BhZGRpbmc6MTJweH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLU43RXFpZC1CN0k0T2QgLlZJcGdKZC15QVdORWItU0lzclRke3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1VVHVqQ2J7Y29sb3I6IzFmMWYxZjtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIC5WSXBnSmQteUFXTkViLVNJc3JUZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtVVR1akNie3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1lTzltS2V7Y29sb3I6IzQ0NDc0Njtmb250LXNpemU6MTJweDtwYWRkaW5nLXRvcDo0cHh9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIC5WSXBnSmQteUFXTkViLVNJc3JUZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtZU85bUtle3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC14Z292NXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtyaWdodDo1cHh9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC14Z292NSAuVklwZ0pkLXlBV05FYi1TSXNyVGR7bGVmdDo1cHg7cmlnaHQ6YXV0b30uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLVRISTZWYntmaWxsOiMwYjU3ZDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1iZ202c2Z7bWFyZ2luOi00cHggMnB4IDAgMDtwYWRkaW5nOjJweCAwIDA7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjI0cHg7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZDpub25lfS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtYmdtNnNmOmhvdmVye2JhY2tncm91bmQ6I2U4ZWJlY30uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLWFYWVRjZXtkaXNwbGF5Om5vbmV9c2VudGluZWx7fQ=="}},"time_used":86,"timings":{"blocked":-1,"dns":4,"connect":18,"send":0,"wait":27,"receive":0,"ssl":35},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"static.getbutton.io/widget-send-button/js/init.js","fqdn":"static.getbutton.io","domain":"getbutton.io","tld":"io"},"ip":{"addr":"104.26.14.221","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.802Z","timestamp":1785158432802,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"getbutton.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Tue, 16 Jun 2026 00:45:37 GMT","end":"Mon, 14 Sep 2026 01:45:33 GMT"},"fingerprint":{"sha1":"DC:2F:40:2C:2E:8F:A1:FE:B6:A3:D2:1B:01:7E:28:02:66:38:0E:86","sha256":"E1:C6:2E:FD:25:F8:44:CA:B3:2C:26:9B:A5:CB:26:9B:6D:77:7B:CF:2A:52:29:CD:23:39:99:E7:89:F4:41:57"}}},"request":{"raw":"GET /widget-send-button/js/init.js HTTP/1.1\r\nHost: static.getbutton.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 302 \r\ndate: Mon, 27 Jul 2026 13:20:36 GMT\r\ncontent-type: text/html\r\nlocation: https://static.getbutton.io/widget/bundle.js\r\nserver: cloudflare\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-cache-status: BYPASS\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=h%2FOCAx2iMOVWjOT2FfsTKVyUZ4rAbtjqJvtpFu8bwDlaxaM6whq4gaNFOPos1bv9S3fKfMwoDOpCb95NmXj2iEowwtjE7UKas%2B6ou8euhnTDG5JosstmJ%2BYmkFz%2FPyD%2BEfHTOBg%3D\"}]}\r\ncf-ray: a21bf141ac6256cb-OSL\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"302","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":0,"size_decoded":0,"mime_type":"application/javascript; charset=utf-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-17T23:37:29.17424Z","times_seen":17945477,"resource_available":true,"data":null}},"time_used":3360,"timings":{"blocked":-1,"dns":20,"connect":10,"send":0,"wait":62,"receive":0,"ssl":3268},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/9df3b67b6061ea9e.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.122Z","timestamp":1785158433122,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/9df3b67b6061ea9e.js HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: *\r\nage: 7769838\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"9df3b67b6061ea9e.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com https://vitals.vercel-insights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\netag: W/\"c678a91c2c6476c2f4253bbb2f68861b\"\r\nlast-modified: Tue, 28 Apr 2026 14:50:57 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/9df3b67b6061ea9e.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::qglf9-1777388594160-6b3c36de26cf\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=paZSwcSDmm6liT7xK1q%2FCvDaW47FwndzlrymTbo9g4BbSAhwRvwPRBQjPo0MfB9tJwm0mWuxwbrhClGiPBk2mEBa8j6jPFZ0E%2F1C5JEppvFeb%2F8lSKNv1nqmFUWL\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21bf12f083356b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":33297,"size_decoded":9769,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (19585)","md5":"c678a91c2c6476c2f4253bbb2f68861b","sha1":"69b7933df2474b5a89bafec3ed00c63e7a38fd6c","sha256":"ee32b6de09c560980545699191b3ba6ebd9847bba1e07b95f5a5ddf359bfc353","sha512":"f3ae2a1ace9a1a1c354782702e328db28abd4864d69e33e7e6e72cc82ce93e5142093752a6b82a5d21f62e953ed27f5101956c00407e5d2d9527eb36435d1584","ssdeep":"384:EjUDGGRCRvBrTfIVZ/X+0o3NkOG4+Z47auBSwTNGFJl:4vB/8Z/X+0o3KZzZ47auJG","tlshash":"dce2c7b572d5faa2139340f0c83f2017f2784c7521ac7460a7e4cc9b765888da6bafd9","first_seen":"2026-02-04T14:24:19.872146Z","last_seen":"2026-08-17T21:34:38.528291Z","times_seen":2349,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDQxMDYyLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJJbnZhcmlhbnRFcnJvciIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSk7Y2xhc3MgbiBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKGUsdCl7c3VwZXIoYEludmFyaWFudDogJHtlLmVuZHNXaXRoKCIuIik/ZTplKyIuIn0gVGhpcyBpcyBhIGJ1ZyBpbiBOZXh0LmpzLmAsdCksdGhpcy5uYW1lPSJJbnZhcmlhbnRFcnJvciJ9fX0sODQwODIsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e0JhaWxvdXRUb0NTUkVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIGl9LGlzQmFpbG91dFRvQ1NSRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gdX19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbz0iQkFJTE9VVF9UT19DTElFTlRfU0lERV9SRU5ERVJJTkciO2NsYXNzIGkgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihlKXtzdXBlcihgQmFpbCBvdXQgdG8gY2xpZW50LXNpZGUgcmVuZGVyaW5nOiAke2V9YCksdGhpcy5yZWFzb249ZSx0aGlzLmRpZ2VzdD1vfX1mdW5jdGlvbiB1KGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJiJkaWdlc3QiaW4gZSYmZS5kaWdlc3Q9PT1vfX0sNTMxMzMsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e0hUVFBBY2Nlc3NFcnJvclN0YXR1czpmdW5jdGlvbigpe3JldHVybiBvfSxIVFRQX0VSUk9SX0ZBTExCQUNLX0VSUk9SX0NPREU6ZnVuY3Rpb24oKXtyZXR1cm4gdX0sZ2V0QWNjZXNzRmFsbGJhY2tFcnJvclR5cGVCeVN0YXR1czpmdW5jdGlvbigpe3JldHVybiBkfSxnZXRBY2Nlc3NGYWxsYmFja0hUVFBTdGF0dXM6ZnVuY3Rpb24oKXtyZXR1cm4gY30saXNIVFRQQWNjZXNzRmFsbGJhY2tFcnJvcjpmdW5jdGlvbigpe3JldHVybiBzfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBvPXtOT1RfRk9VTkQ6NDA0LEZPUkJJRERFTjo0MDMsVU5BVVRIT1JJWkVEOjQwMX0saT1uZXcgU2V0KE9iamVjdC52YWx1ZXMobykpLHU9Ik5FWFRfSFRUUF9FUlJPUl9GQUxMQkFDSyI7ZnVuY3Rpb24gcyhlKXtpZigib2JqZWN0IiE9dHlwZW9mIGV8fG51bGw9PT1lfHwhKCJkaWdlc3QiaW4gZSl8fCJzdHJpbmciIT10eXBlb2YgZS5kaWdlc3QpcmV0dXJuITE7bGV0W3Qscl09ZS5kaWdlc3Quc3BsaXQoIjsiKTtyZXR1cm4gdD09PXUmJmkuaGFzKE51bWJlcihyKSl9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gTnVtYmVyKGUuZGlnZXN0LnNwbGl0KCI7IilbMV0pfWZ1bmN0aW9uIGQoZSl7c3dpdGNoKGUpe2Nhc2UgNDAxOnJldHVybiJ1bmF1dGhvcml6ZWQiO2Nhc2UgNDAzOnJldHVybiJmb3JiaWRkZW4iO2Nhc2UgNDA0OnJldHVybiJub3QtZm91bmQiO2RlZmF1bHQ6cmV0dXJufX0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw0OTg0MywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiaXNOZXh0Um91dGVyRXJyb3IiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBvfX0pO2xldCBuPWUucig1MzEzMyksYT1lLnIoOTA4NjIpO2Z1bmN0aW9uIG8oZSl7cmV0dXJuKDAsYS5pc1JlZGlyZWN0RXJyb3IpKGUpfHwoMCxuLmlzSFRUUEFjY2Vzc0ZhbGxiYWNrRXJyb3IpKGUpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDM5Mjc1LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJSZWFkb25seVVSTFNlYXJjaFBhcmFtcyIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGF9fSk7Y2xhc3MgbiBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKCl7c3VwZXIoIk1ldGhvZCB1bmF2YWlsYWJsZSBvbiBgUmVhZG9ubHlVUkxTZWFyY2hQYXJhbXNgLiBSZWFkIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL2FwcC9hcGktcmVmZXJlbmNlL2Z1bmN0aW9ucy91c2Utc2VhcmNoLXBhcmFtcyN1cGRhdGluZy1zZWFyY2hwYXJhbXMiKX19Y2xhc3MgYSBleHRlbmRzIFVSTFNlYXJjaFBhcmFtc3thcHBlbmQoKXt0aHJvdyBuZXcgbn1kZWxldGUoKXt0aHJvdyBuZXcgbn1zZXQoKXt0aHJvdyBuZXcgbn1zb3J0KCl7dGhyb3cgbmV3IG59fSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDMxODk5LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtOYXZpZ2F0aW9uUHJvbWlzZXNDb250ZXh0OmZ1bmN0aW9uKCl7cmV0dXJuIGR9LFBhdGhQYXJhbXNDb250ZXh0OmZ1bmN0aW9uKCl7cmV0dXJuIGN9LFBhdGhuYW1lQ29udGV4dDpmdW5jdGlvbigpe3JldHVybiBzfSxSZWFkb25seVVSTFNlYXJjaFBhcmFtczpmdW5jdGlvbigpe3JldHVybiBpLlJlYWRvbmx5VVJMU2VhcmNoUGFyYW1zfSxTZWFyY2hQYXJhbXNDb250ZXh0OmZ1bmN0aW9uKCl7cmV0dXJuIHV9LGNyZWF0ZURldlRvb2xzSW5zdHJ1bWVudGVkUHJvbWlzZTpmdW5jdGlvbigpe3JldHVybiBsfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBvPWUucig3NTIwMSksaT1lLnIoMzkyNzUpLHU9KDAsby5jcmVhdGVDb250ZXh0KShudWxsKSxzPSgwLG8uY3JlYXRlQ29udGV4dCkobnVsbCksYz0oMCxvLmNyZWF0ZUNvbnRleHQpKG51bGwpLGQ9KDAsby5jcmVhdGVDb250ZXh0KShudWxsKTtmdW5jdGlvbiBsKGUsdCl7bGV0IHI9UHJvbWlzZS5yZXNvbHZlKHQpO3JldHVybiByLnN0YXR1cz0iZnVsZmlsbGVkIixyLnZhbHVlPXQsci5kaXNwbGF5TmFtZT1gJHtlfSAoU1NSKWAscn19LDMzOSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwid29ya1VuaXRBc3luY1N0b3JhZ2VJbnN0YW5jZSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSk7bGV0IG49KDAsZS5yKDQ5MjExKS5jcmVhdGVBc3luY0xvY2FsU3RvcmFnZSkoKX0sMTI5NjUsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e2dldENhY2hlU2lnbmFsOmZ1bmN0aW9uKCl7cmV0dXJuIHl9LGdldERyYWZ0TW9kZVByb3ZpZGVyRm9yQ2FjaGVTY29wZTpmdW5jdGlvbigpe3JldHVybiBtfSxnZXRIbXJSZWZyZXNoSGFzaDpmdW5jdGlvbigpe3JldHVybiBmfSxnZXRQcmVyZW5kZXJSZXN1bWVEYXRhQ2FjaGU6ZnVuY3Rpb24oKXtyZXR1cm4gZH0sZ2V0UmVuZGVyUmVzdW1lRGF0YUNhY2hlOmZ1bmN0aW9uKCl7cmV0dXJuIGx9LGdldFJ1bnRpbWVTdGFnZVByb21pc2U6ZnVuY3Rpb24oKXtyZXR1cm4gYn0sZ2V0U2VydmVyQ29tcG9uZW50c0htckNhY2hlOmZ1bmN0aW9uKCl7cmV0dXJuIGh9LGlzSG1yUmVmcmVzaDpmdW5jdGlvbigpe3JldHVybiBwfSx0aHJvd0Zvck1pc3NpbmdSZXF1ZXN0U3RvcmU6ZnVuY3Rpb24oKXtyZXR1cm4gc30sdGhyb3dJbnZhcmlhbnRGb3JNaXNzaW5nU3RvcmU6ZnVuY3Rpb24oKXtyZXR1cm4gY30sd29ya1VuaXRBc3luY1N0b3JhZ2U6ZnVuY3Rpb24oKXtyZXR1cm4gby53b3JrVW5pdEFzeW5jU3RvcmFnZUluc3RhbmNlfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBvPWUucigzMzkpLGk9ZS5yKDM0NjQxKSx1PWUucig0MTA2Mik7ZnVuY3Rpb24gcyhlKXt0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoYFxgJHtlfVxgIHdhcyBjYWxsZWQgb3V0c2lkZSBhIHJlcXVlc3Qgc2NvcGUuIFJlYWQgbW9yZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvbmV4dC1keW5hbWljLWFwaS13cm9uZy1jb250ZXh0YCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkUyNTEiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9ZnVuY3Rpb24gYygpe3Rocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgdS5JbnZhcmlhbnRFcnJvcigiRXhwZWN0ZWQgd29ya1VuaXRBc3luY1N0b3JhZ2UgdG8gaGF2ZSBhIHN0b3JlLiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNjk2IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pfWZ1bmN0aW9uIGQoZSl7c3dpdGNoKGUudHlwZSl7Y2FzZSJwcmVyZW5kZXIiOmNhc2UicHJlcmVuZGVyLXJ1bnRpbWUiOmNhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItY2xpZW50IjpyZXR1cm4gZS5wcmVyZW5kZXJSZXN1bWVEYXRhQ2FjaGU7Y2FzZSJyZXF1ZXN0IjppZihlLnByZXJlbmRlclJlc3VtZURhdGFDYWNoZSlyZXR1cm4gZS5wcmVyZW5kZXJSZXN1bWVEYXRhQ2FjaGU7Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOnJldHVybiBudWxsO2RlZmF1bHQ6cmV0dXJuIGV9fWZ1bmN0aW9uIGwoZSl7c3dpdGNoKGUudHlwZSl7Y2FzZSJyZXF1ZXN0IjpjYXNlInByZXJlbmRlciI6Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6Y2FzZSJwcmVyZW5kZXItY2xpZW50IjppZihlLnJlbmRlclJlc3VtZURhdGFDYWNoZSlyZXR1cm4gZS5yZW5kZXJSZXN1bWVEYXRhQ2FjaGU7Y2FzZSJwcmVyZW5kZXItcHByIjpyZXR1cm4gZS5wcmVyZW5kZXJSZXN1bWVEYXRhQ2FjaGU/P251bGw7Y2FzZSJjYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpjYXNlInVuc3RhYmxlLWNhY2hlIjpjYXNlInByZXJlbmRlci1sZWdhY3kiOnJldHVybiBudWxsO2RlZmF1bHQ6cmV0dXJuIGV9fWZ1bmN0aW9uIGYoZSx0KXtpZihlLmRldilzd2l0Y2godC50eXBlKXtjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOmNhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1ydW50aW1lIjpyZXR1cm4gdC5obXJSZWZyZXNoSGFzaDtjYXNlInJlcXVlc3QiOnZhciByO3JldHVybiBudWxsPT0ocj10LmNvb2tpZXMuZ2V0KGkuTkVYVF9ITVJfUkVGUkVTSF9IQVNIX0NPT0tJRSkpP3ZvaWQgMDpyLnZhbHVlfX1mdW5jdGlvbiBwKGUsdCl7aWYoZS5kZXYpc3dpdGNoKHQudHlwZSl7Y2FzZSJjYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpjYXNlInJlcXVlc3QiOnJldHVybiB0LmlzSG1yUmVmcmVzaD8/ITF9cmV0dXJuITF9ZnVuY3Rpb24gaChlLHQpe2lmKGUuZGV2KXN3aXRjaCh0LnR5cGUpe2Nhc2UiY2FjaGUiOmNhc2UicHJpdmF0ZS1jYWNoZSI6Y2FzZSJyZXF1ZXN0IjpyZXR1cm4gdC5zZXJ2ZXJDb21wb25lbnRzSG1yQ2FjaGV9fWZ1bmN0aW9uIG0oZSx0KXtpZihlLmlzRHJhZnRNb2RlKXN3aXRjaCh0LnR5cGUpe2Nhc2UiY2FjaGUiOmNhc2UicHJpdmF0ZS1jYWNoZSI6Y2FzZSJ1bnN0YWJsZS1jYWNoZSI6Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6Y2FzZSJyZXF1ZXN0IjpyZXR1cm4gdC5kcmFmdE1vZGV9fWZ1bmN0aW9uIHkoZSl7c3dpdGNoKGUudHlwZSl7Y2FzZSJwcmVyZW5kZXIiOmNhc2UicHJlcmVuZGVyLWNsaWVudCI6Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6cmV0dXJuIGUuY2FjaGVTaWduYWw7Y2FzZSJyZXF1ZXN0IjppZihlLmNhY2hlU2lnbmFsKXJldHVybiBlLmNhY2hlU2lnbmFsO2Nhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOnJldHVybiBudWxsO2RlZmF1bHQ6cmV0dXJuIGV9fWZ1bmN0aW9uIGIoZSl7c3dpdGNoKGUudHlwZSl7Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpyZXR1cm4gZS5ydW50aW1lU3RhZ2VQcm9taXNlO2Nhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpjYXNlInJlcXVlc3QiOmNhc2UiY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOnJldHVybiBudWxsO2RlZmF1bHQ6cmV0dXJuIGV9fX0sMTg0NjIsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e1NlcnZlckluc2VydGVkSFRNTENvbnRleHQ6ZnVuY3Rpb24oKXtyZXR1cm4gaX0sdXNlU2VydmVySW5zZXJ0ZWRIVE1MOmZ1bmN0aW9uKCl7cmV0dXJuIHV9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IG89ZS5yKDQ0MDY2KS5fKGUucig3NTIwMSkpLGk9by5kZWZhdWx0LmNyZWF0ZUNvbnRleHQobnVsbCk7ZnVuY3Rpb24gdShlKXtsZXQgdD0oMCxvLnVzZUNvbnRleHQpKGkpO3QmJnQoZSl9fSw2NTk5NSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwibm90Rm91bmQiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBvfX0pO2xldCBuPWUucig1MzEzMyksYT1gJHtuLkhUVFBfRVJST1JfRkFMTEJBQ0tfRVJST1JfQ09ERX07NDA0YDtmdW5jdGlvbiBvKCl7bGV0IGU9T2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGEpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMzk0IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO3Rocm93IGUuZGlnZXN0PWEsZX0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwxNzc2MiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oKXt0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoImBmb3JiaWRkZW4oKWAgaXMgZXhwZXJpbWVudGFsIGFuZCBvbmx5IGFsbG93ZWQgdG8gYmUgZW5hYmxlZCB3aGVuIGBleHBlcmltZW50YWwuYXV0aEludGVycnVwdHNgIGlzIGVuYWJsZWQuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU0ODgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJmb3JiaWRkZW4iLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBufX0pLGUucig1MzEzMykuSFRUUF9FUlJPUl9GQUxMQkFDS19FUlJPUl9DT0RFLCgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDc5NTM5LChlLHQscik9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbigpe3Rocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiYHVuYXV0aG9yaXplZCgpYCBpcyBleHBlcmltZW50YWwgYW5kIG9ubHkgYWxsb3dlZCB0byBiZSB1c2VkIHdoZW4gYGV4cGVyaW1lbnRhbC5hdXRoSW50ZXJydXB0c2AgaXMgZW5hYmxlZC4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTQxMSIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KX1PYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInVuYXV0aG9yaXplZCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSksZS5yKDUzMTMzKS5IVFRQX0VSUk9SX0ZBTExCQUNLX0VSUk9SX0NPREUsKCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMTg3ODIsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInVuc3RhYmxlX3JldGhyb3ciLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiBlKHQpe2lmKCgwLGEuaXNOZXh0Um91dGVyRXJyb3IpKHQpfHwoMCxuLmlzQmFpbG91dFRvQ1NSRXJyb3IpKHQpKXRocm93IHQ7dCBpbnN0YW5jZW9mIEVycm9yJiYiY2F1c2UiaW4gdCYmZSh0LmNhdXNlKX19fSk7bGV0IG49ZS5yKDg0MDgyKSxhPWUucig0OTg0Myk7KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMTU1MDgsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e2lzSGFuZ2luZ1Byb21pc2VSZWplY3Rpb25FcnJvcjpmdW5jdGlvbigpe3JldHVybiBvfSxtYWtlRGV2dG9vbHNJT0F3YXJlUHJvbWlzZTpmdW5jdGlvbigpe3JldHVybiBsfSxtYWtlSGFuZ2luZ1Byb21pc2U6ZnVuY3Rpb24oKXtyZXR1cm4gY319O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtmdW5jdGlvbiBvKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJiJkaWdlc3QiaW4gZSYmZS5kaWdlc3Q9PT1pfWxldCBpPSJIQU5HSU5HX1BST01JU0VfUkVKRUNUSU9OIjtjbGFzcyB1IGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoZSx0KXtzdXBlcihgRHVyaW5nIHByZXJlbmRlcmluZywgJHt0fSByZWplY3RzIHdoZW4gdGhlIHByZXJlbmRlciBpcyBjb21wbGV0ZS4gVHlwaWNhbGx5IHRoZXNlIGVycm9ycyBhcmUgaGFuZGxlZCBieSBSZWFjdCBidXQgaWYgeW91IG1vdmUgJHt0fSB0byBhIGRpZmZlcmVudCBjb250ZXh0IGJ5IHVzaW5nIFxgc2V0VGltZW91dFxgLCBcYGFmdGVyXGAsIG9yIHNpbWlsYXIgZnVuY3Rpb25zIHlvdSBtYXkgb2JzZXJ2ZSB0aGlzIGVycm9yIGFuZCB5b3Ugc2hvdWxkIGhhbmRsZSBpdCBpbiB0aGF0IGNvbnRleHQuIFRoaXMgb2NjdXJyZWQgYXQgcm91dGUgIiR7ZX0iLmApLHRoaXMucm91dGU9ZSx0aGlzLmV4cHJlc3Npb249dCx0aGlzLmRpZ2VzdD1pfX1sZXQgcz1uZXcgV2Vha01hcDtmdW5jdGlvbiBjKGUsdCxyKXtpZihlLmFib3J0ZWQpcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyB1KHQscikpO3tsZXQgbj1uZXcgUHJvbWlzZSgobixhKT0+e2xldCBvPWEuYmluZChudWxsLG5ldyB1KHQscikpLGk9cy5nZXQoZSk7aWYoaSlpLnB1c2gobyk7ZWxzZXtsZXQgdD1bb107cy5zZXQoZSx0KSxlLmFkZEV2ZW50TGlzdGVuZXIoImFib3J0IiwoKT0+e2ZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSsrKXRbZV0oKX0se29uY2U6ITB9KX19KTtyZXR1cm4gbi5jYXRjaChkKSxufX1mdW5jdGlvbiBkKCl7fWZ1bmN0aW9uIGwoZSx0LHIpe3JldHVybiB0LnN0YWdlZFJlbmRlcmluZz90LnN0YWdlZFJlbmRlcmluZy5kZWxheVVudGlsU3RhZ2Uocix2b2lkIDAsZSk6bmV3IFByb21pc2UodD0+e3NldFRpbWVvdXQoKCk9Pnt0KGUpfSwwKX0pfX0sMTc1NTYsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImlzUG9zdHBvbmUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCBuPVN5bWJvbC5mb3IoInJlYWN0LnBvc3Rwb25lIik7ZnVuY3Rpb24gYShlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiZlLiQkdHlwZW9mPT09bn19LDkzMjEzLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtEeW5hbWljU2VydmVyRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gaX0saXNEeW5hbWljU2VydmVyRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gdX19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbz0iRFlOQU1JQ19TRVJWRVJfVVNBR0UiO2NsYXNzIGkgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihlKXtzdXBlcihgRHluYW1pYyBzZXJ2ZXIgdXNhZ2U6ICR7ZX1gKSx0aGlzLmRlc2NyaXB0aW9uPWUsdGhpcy5kaWdlc3Q9b319ZnVuY3Rpb24gdShlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiYiZGlnZXN0ImluIGUmJiJzdHJpbmciPT10eXBlb2YgZS5kaWdlc3QmJmUuZGlnZXN0PT09b30oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwxNjQzMiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17U3RhdGljR2VuQmFpbG91dEVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIGl9LGlzU3RhdGljR2VuQmFpbG91dEVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIHV9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IG89Ik5FWFRfU1RBVElDX0dFTl9CQUlMT1VUIjtjbGFzcyBpIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoLi4uZSl7c3VwZXIoLi4uZSksdGhpcy5jb2RlPW99fWZ1bmN0aW9uIHUoZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmImNvZGUiaW4gZSYmZS5jb2RlPT09b30oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw1MzQ1OSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17TUVUQURBVEFfQk9VTkRBUllfTkFNRTpmdW5jdGlvbigpe3JldHVybiBvfSxPVVRMRVRfQk9VTkRBUllfTkFNRTpmdW5jdGlvbigpe3JldHVybiB1fSxST09UX0xBWU9VVF9CT1VOREFSWV9OQU1FOmZ1bmN0aW9uKCl7cmV0dXJuIHN9LFZJRVdQT1JUX0JPVU5EQVJZX05BTUU6ZnVuY3Rpb24oKXtyZXR1cm4gaX19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbz0iX19uZXh0X21ldGFkYXRhX2JvdW5kYXJ5X18iLGk9Il9fbmV4dF92aWV3cG9ydF9ib3VuZGFyeV9fIix1PSJfX25leHRfb3V0bGV0X2JvdW5kYXJ5X18iLHM9Il9fbmV4dF9yb290X2xheW91dF9ib3VuZGFyeV9fIn0sMjQzODYsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj1lLmkoODI2MzcpO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgYT17YXRMZWFzdE9uZVRhc2s6ZnVuY3Rpb24oKXtyZXR1cm4gc30sc2NoZWR1bGVJbW1lZGlhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gdX0sc2NoZWR1bGVPbk5leHRUaWNrOmZ1bmN0aW9uKCl7cmV0dXJuIGl9LHdhaXRBdExlYXN0T25lUmVhY3RSZW5kZXJUYXNrOmZ1bmN0aW9uKCl7cmV0dXJuIGN9fTtmb3IodmFyIG8gaW4gYSlPYmplY3QuZGVmaW5lUHJvcGVydHkocixvLHtlbnVtZXJhYmxlOiEwLGdldDphW29dfSk7bGV0IGk9ZT0+e1Byb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PntuLmRlZmF1bHQubmV4dFRpY2soZSl9KX0sdT1lPT57c2V0SW1tZWRpYXRlKGUpfTtmdW5jdGlvbiBzKCl7cmV0dXJuIG5ldyBQcm9taXNlKGU9PnUoZSkpfWZ1bmN0aW9uIGMoKXtyZXR1cm4gbmV3IFByb21pc2UoZT0+c2V0SW1tZWRpYXRlKGUpKX19LDY3NzgxLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuLGEsbz17UG9zdHBvbmU6ZnVuY3Rpb24oKXtyZXR1cm4gan0sUHJlbHVkZVN0YXRlOmZ1bmN0aW9uKCl7cmV0dXJuIFp9LGFib3J0QW5kVGhyb3dPblN5bmNocm9ub3VzUmVxdWVzdERhdGFBY2Nlc3M6ZnVuY3Rpb24oKXtyZXR1cm4gU30sYWJvcnRPblN5bmNocm9ub3VzUGxhdGZvcm1JT0FjY2VzczpmdW5jdGlvbigpe3JldHVybiBQfSxhY2Nlc3NlZER5bmFtaWNEYXRhOmZ1bmN0aW9uKCl7cmV0dXJuIE59LGFubm90YXRlRHluYW1pY0FjY2VzczpmdW5jdGlvbigpe3JldHVybiBCfSxjb25zdW1lRHluYW1pY0FjY2VzczpmdW5jdGlvbigpe3JldHVybiBJfSxjcmVhdGVEeW5hbWljVHJhY2tpbmdTdGF0ZTpmdW5jdGlvbigpe3JldHVybiBnfSxjcmVhdGVEeW5hbWljVmFsaWRhdGlvblN0YXRlOmZ1bmN0aW9uKCl7cmV0dXJuIF99LGNyZWF0ZUhhbmdpbmdJbnB1dEFib3J0U2lnbmFsOmZ1bmN0aW9uKCl7cmV0dXJuICR9LGNyZWF0ZVJlbmRlckluQnJvd3NlckFib3J0U2lnbmFsOmZ1bmN0aW9uKCl7cmV0dXJuIEx9LGRlbGF5VW50aWxSdW50aW1lU3RhZ2U6ZnVuY3Rpb24oKXtyZXR1cm4gZXJ9LGZvcm1hdER5bmFtaWNBUElBY2Nlc3NlczpmdW5jdGlvbigpe3JldHVybiBVfSxnZXRGaXJzdER5bmFtaWNSZWFzb246ZnVuY3Rpb24oKXtyZXR1cm4gRX0sZ2V0U3RhdGljU2hlbGxEaXNhbGxvd2VkRHluYW1pY1JlYXNvbnM6ZnVuY3Rpb24oKXtyZXR1cm4gZXR9LGlzRHluYW1pY1Bvc3Rwb25lOmZ1bmN0aW9uKCl7cmV0dXJuIHh9LGlzUHJlcmVuZGVySW50ZXJydXB0ZWRFcnJvcjpmdW5jdGlvbigpe3JldHVybiBrfSxsb2dEaXNhbGxvd2VkRHluYW1pY0Vycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIFF9LG1hcmtDdXJyZW50U2NvcGVBc0R5bmFtaWM6ZnVuY3Rpb24oKXtyZXR1cm4gUn0scG9zdHBvbmVXaXRoVHJhY2tpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gRH0sdGhyb3dJZkRpc2FsbG93ZWREeW5hbWljOmZ1bmN0aW9uKCl7cmV0dXJuIGVlfSx0aHJvd1RvSW50ZXJydXB0U3RhdGljR2VuZXJhdGlvbjpmdW5jdGlvbigpe3JldHVybiB2fSx0cmFja0FsbG93ZWREeW5hbWljQWNjZXNzOmZ1bmN0aW9uKCl7cmV0dXJuIFl9LHRyYWNrRHluYW1pY0RhdGFJbkR5bmFtaWNSZW5kZXI6ZnVuY3Rpb24oKXtyZXR1cm4gT30sdHJhY2tEeW5hbWljSG9sZUluUnVudGltZVNoZWxsOmZ1bmN0aW9uKCl7cmV0dXJuIFZ9LHRyYWNrRHluYW1pY0hvbGVJblN0YXRpY1NoZWxsOmZ1bmN0aW9uKCl7cmV0dXJuIEt9LHVzZUR5bmFtaWNSb3V0ZVBhcmFtczpmdW5jdGlvbigpe3JldHVybiBIfSx1c2VEeW5hbWljU2VhcmNoUGFyYW1zOmZ1bmN0aW9uKCl7cmV0dXJuIFh9fTtmb3IodmFyIGkgaW4gbylPYmplY3QuZGVmaW5lUHJvcGVydHkocixpLHtlbnVtZXJhYmxlOiEwLGdldDpvW2ldfSk7bGV0IHU9KG49ZS5yKDc1MjAxKSkmJm4uX19lc01vZHVsZT9uOntkZWZhdWx0Om59LHM9ZS5yKDkzMjEzKSxjPWUucigxNjQzMiksZD1lLnIoMTI5NjUpLGw9ZS5yKDg5NzkxKSxmPWUucigxNTUwOCkscD1lLnIoNTM0NTkpLGg9ZS5yKDI0Mzg2KSxtPWUucig4NDA4MikseT1lLnIoNDEwNjIpLGI9ImZ1bmN0aW9uIj09dHlwZW9mIHUuZGVmYXVsdC51bnN0YWJsZV9wb3N0cG9uZTtmdW5jdGlvbiBnKGUpe3JldHVybntpc0RlYnVnRHluYW1pY0FjY2Vzc2VzOmUsZHluYW1pY0FjY2Vzc2VzOltdLHN5bmNEeW5hbWljRXJyb3JXaXRoU3RhY2s6bnVsbH19ZnVuY3Rpb24gXygpe3JldHVybntoYXNTdXNwZW5zZUFib3ZlQm9keTohMSxoYXNEeW5hbWljTWV0YWRhdGE6ITEsZHluYW1pY01ldGFkYXRhOm51bGwsaGFzRHluYW1pY1ZpZXdwb3J0OiExLGhhc0FsbG93ZWREeW5hbWljOiExLGR5bmFtaWNFcnJvcnM6W119fWZ1bmN0aW9uIEUoZSl7dmFyIHQ7cmV0dXJuIG51bGw9PSh0PWUuZHluYW1pY0FjY2Vzc2VzWzBdKT92b2lkIDA6dC5leHByZXNzaW9ufWZ1bmN0aW9uIFIoZSx0LHIpe2lmKHQpc3dpdGNoKHQudHlwZSl7Y2FzZSJjYWNoZSI6Y2FzZSJ1bnN0YWJsZS1jYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpyZXR1cm59aWYoIWUuZm9yY2VEeW5hbWljJiYhZS5mb3JjZVN0YXRpYyl7aWYoZS5keW5hbWljU2hvdWxkRXJyb3IpdGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyBjLlN0YXRpY0dlbkJhaWxvdXRFcnJvcihgUm91dGUgJHtlLnJvdXRlfSB3aXRoIFxgZHluYW1pYyA9ICJlcnJvciJcYCBjb3VsZG4ndCBiZSByZW5kZXJlZCBzdGF0aWNhbGx5IGJlY2F1c2UgaXQgdXNlZCBcYCR7cn1cYC4gU2VlIG1vcmUgaW5mbyBoZXJlOiBodHRwczovL25leHRqcy5vcmcvZG9jcy9hcHAvYnVpbGRpbmcteW91ci1hcHBsaWNhdGlvbi9yZW5kZXJpbmcvc3RhdGljLWFuZC1keW5hbWljI2R5bmFtaWMtcmVuZGVyaW5nYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU1NTMiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7aWYodClzd2l0Y2godC50eXBlKXtjYXNlInByZXJlbmRlci1wcHIiOnJldHVybiBEKGUucm91dGUscix0LmR5bmFtaWNUcmFja2luZyk7Y2FzZSJwcmVyZW5kZXItbGVnYWN5Ijp0LnJldmFsaWRhdGU9MDtsZXQgbj1PYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHMuRHluYW1pY1NlcnZlckVycm9yKGBSb3V0ZSAke2Uucm91dGV9IGNvdWxkbid0IGJlIHJlbmRlcmVkIHN0YXRpY2FsbHkgYmVjYXVzZSBpdCB1c2VkICR7cn0uIFNlZSBtb3JlIGluZm8gaGVyZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvZHluYW1pYy1zZXJ2ZXItZXJyb3JgKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTU1MCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTt0aHJvdyBlLmR5bmFtaWNVc2FnZURlc2NyaXB0aW9uPXIsZS5keW5hbWljVXNhZ2VTdGFjaz1uLnN0YWNrLG59fX1mdW5jdGlvbiB2KGUsdCxyKXtsZXQgbj1PYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHMuRHluYW1pY1NlcnZlckVycm9yKGBSb3V0ZSAke3Qucm91dGV9IGNvdWxkbid0IGJlIHJlbmRlcmVkIHN0YXRpY2FsbHkgYmVjYXVzZSBpdCB1c2VkIFxgJHtlfVxgLiBTZWUgbW9yZSBpbmZvIGhlcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL2R5bmFtaWMtc2VydmVyLWVycm9yYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU1NTgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7dGhyb3cgci5yZXZhbGlkYXRlPTAsdC5keW5hbWljVXNhZ2VEZXNjcmlwdGlvbj1lLHQuZHluYW1pY1VzYWdlU3RhY2s9bi5zdGFjayxufWZ1bmN0aW9uIE8oZSl7c3dpdGNoKGUudHlwZSl7Y2FzZSJjYWNoZSI6Y2FzZSJ1bnN0YWJsZS1jYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpyZXR1cm59fWZ1bmN0aW9uIHcoZSx0LHIpe2xldCBuPUMoYFJvdXRlICR7ZX0gbmVlZHMgdG8gYmFpbCBvdXQgb2YgcHJlcmVuZGVyaW5nIGF0IHRoaXMgcG9pbnQgYmVjYXVzZSBpdCB1c2VkICR7dH0uYCk7ci5jb250cm9sbGVyLmFib3J0KG4pO2xldCBhPXIuZHluYW1pY1RyYWNraW5nO2EmJmEuZHluYW1pY0FjY2Vzc2VzLnB1c2goe3N0YWNrOmEuaXNEZWJ1Z0R5bmFtaWNBY2Nlc3Nlcz9FcnJvcigpLnN0YWNrOnZvaWQgMCxleHByZXNzaW9uOnR9KX1mdW5jdGlvbiBQKGUsdCxyLG4pe2xldCBhPW4uZHluYW1pY1RyYWNraW5nO3coZSx0LG4pLGEmJm51bGw9PT1hLnN5bmNEeW5hbWljRXJyb3JXaXRoU3RhY2smJihhLnN5bmNEeW5hbWljRXJyb3JXaXRoU3RhY2s9cil9ZnVuY3Rpb24gUyhlLHQscixuKXtpZighMT09PW4uY29udHJvbGxlci5zaWduYWwuYWJvcnRlZCl7dyhlLHQsbik7bGV0IGE9bi5keW5hbWljVHJhY2tpbmc7YSYmbnVsbD09PWEuc3luY0R5bmFtaWNFcnJvcldpdGhTdGFjayYmKGEuc3luY0R5bmFtaWNFcnJvcldpdGhTdGFjaz1yKX10aHJvdyBDKGBSb3V0ZSAke2V9IG5lZWRzIHRvIGJhaWwgb3V0IG9mIHByZXJlbmRlcmluZyBhdCB0aGlzIHBvaW50IGJlY2F1c2UgaXQgdXNlZCAke3R9LmApfWZ1bmN0aW9uIGooe3JlYXNvbjplLHJvdXRlOnR9KXtsZXQgcj1kLndvcmtVbml0QXN5bmNTdG9yYWdlLmdldFN0b3JlKCk7RCh0LGUsciYmInByZXJlbmRlci1wcHIiPT09ci50eXBlP3IuZHluYW1pY1RyYWNraW5nOm51bGwpfWZ1bmN0aW9uIEQoZSx0LHIpeyhmdW5jdGlvbigpe2lmKCFiKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiSW52YXJpYW50OiBSZWFjdC51bnN0YWJsZV9wb3N0cG9uZSBpcyBub3QgZGVmaW5lZC4gVGhpcyBzdWdnZXN0cyB0aGUgd3JvbmcgdmVyc2lvbiBvZiBSZWFjdCB3YXMgbG9hZGVkLiBUaGlzIGlzIGEgYnVnIGluIE5leHQuanMiKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTIyNCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KX0pKCksciYmci5keW5hbWljQWNjZXNzZXMucHVzaCh7c3RhY2s6ci5pc0RlYnVnRHluYW1pY0FjY2Vzc2VzP0Vycm9yKCkuc3RhY2s6dm9pZCAwLGV4cHJlc3Npb246dH0pLHUuZGVmYXVsdC51bnN0YWJsZV9wb3N0cG9uZShUKGUsdCkpfWZ1bmN0aW9uIFQoZSx0KXtyZXR1cm5gUm91dGUgJHtlfSBuZWVkcyB0byBiYWlsIG91dCBvZiBwcmVyZW5kZXJpbmcgYXQgdGhpcyBwb2ludCBiZWNhdXNlIGl0IHVzZWQgJHt0fS4gUmVhY3QgdGhyb3dzIHRoaXMgc3BlY2lhbCBvYmplY3QgdG8gaW5kaWNhdGUgd2hlcmUuIEl0IHNob3VsZCBub3QgYmUgY2F1Z2h0IGJ5IHlvdXIgb3duIHRyeS9jYXRjaC4gTGVhcm4gbW9yZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvcHByLWNhdWdodC1lcnJvcmB9ZnVuY3Rpb24geChlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiYic3RyaW5nIj09dHlwZW9mIGUubWVzc2FnZSYmQShlLm1lc3NhZ2UpfWZ1bmN0aW9uIEEoZSl7cmV0dXJuIGUuaW5jbHVkZXMoIm5lZWRzIHRvIGJhaWwgb3V0IG9mIHByZXJlbmRlcmluZyBhdCB0aGlzIHBvaW50IGJlY2F1c2UgaXQgdXNlZCIpJiZlLmluY2x1ZGVzKCJMZWFybiBtb3JlOiBodHRwczovL25leHRqcy5vcmcvZG9jcy9tZXNzYWdlcy9wcHItY2F1Z2h0LWVycm9yIil9aWYoITE9PT1BKFQoIiUlJSIsIl5eXiIpKSl0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIkludmFyaWFudDogaXNEeW5hbWljUG9zdHBvbmUgbWlzaWRlbnRpZmllZCBhIHBvc3Rwb25lIHJlYXNvbi4gVGhpcyBpcyBhIGJ1ZyBpbiBOZXh0LmpzIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkUyOTYiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7bGV0IE09Ik5FWFRfUFJFUkVOREVSX0lOVEVSUlVQVEVEIjtmdW5jdGlvbiBDKGUpe2xldCB0PU9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcihlKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTM5NCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtyZXR1cm4gdC5kaWdlc3Q9TSx0fWZ1bmN0aW9uIGsoZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmZS5kaWdlc3Q9PT1NJiYibmFtZSJpbiBlJiYibWVzc2FnZSJpbiBlJiZlIGluc3RhbmNlb2YgRXJyb3J9ZnVuY3Rpb24gTihlKXtyZXR1cm4gZS5sZW5ndGg+MH1mdW5jdGlvbiBJKGUsdCl7cmV0dXJuIGUuZHluYW1pY0FjY2Vzc2VzLnB1c2goLi4udC5keW5hbWljQWNjZXNzZXMpLGUuZHluYW1pY0FjY2Vzc2VzfWZ1bmN0aW9uIFUoZSl7cmV0dXJuIGUuZmlsdGVyKGU9PiJzdHJpbmciPT10eXBlb2YgZS5zdGFjayYmZS5zdGFjay5sZW5ndGg+MCkubWFwKCh7ZXhwcmVzc2lvbjplLHN0YWNrOnR9KT0+KHQ9dC5zcGxpdCgiXG4iKS5zbGljZSg0KS5maWx0ZXIoZT0+IShlLmluY2x1ZGVzKCJub2RlX21vZHVsZXMvbmV4dC8iKXx8ZS5pbmNsdWRlcygiICg8YW5vbnltb3VzPikiKXx8ZS5pbmNsdWRlcygiIChub2RlOiIpKSkuam9pbigiXG4iKSxgRHluYW1pYyBBUEkgVXNhZ2UgRGVidWcgLSAke2V9Ogoke3R9YCkpfWZ1bmN0aW9uIEwoKXtsZXQgZT1uZXcgQWJvcnRDb250cm9sbGVyO3JldHVybiBlLmFib3J0KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgbS5CYWlsb3V0VG9DU1JFcnJvcigiUmVuZGVyIGluIEJyb3dzZXIiKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTcyMSIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSksZS5zaWduYWx9ZnVuY3Rpb24gJChlKXtzd2l0Y2goZS50eXBlKXtjYXNlInByZXJlbmRlciI6Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6bGV0IHQ9bmV3IEFib3J0Q29udHJvbGxlcjtpZihlLmNhY2hlU2lnbmFsKWUuY2FjaGVTaWduYWwuaW5wdXRSZWFkeSgpLnRoZW4oKCk9Pnt0LmFib3J0KCl9KTtlbHNle2xldCByPSgwLGQuZ2V0UnVudGltZVN0YWdlUHJvbWlzZSkoZSk7cj9yLnRoZW4oKCk9PigwLGguc2NoZWR1bGVPbk5leHRUaWNrKSgoKT0+dC5hYm9ydCgpKSk6KDAsaC5zY2hlZHVsZU9uTmV4dFRpY2spKCgpPT50LmFib3J0KCkpfXJldHVybiB0LnNpZ25hbDtjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpjYXNlInJlcXVlc3QiOmNhc2UiY2FjaGUiOmNhc2UicHJpdmF0ZS1jYWNoZSI6Y2FzZSJ1bnN0YWJsZS1jYWNoZSI6cmV0dXJufX1mdW5jdGlvbiBCKGUsdCl7bGV0IHI9dC5keW5hbWljVHJhY2tpbmc7ciYmci5keW5hbWljQWNjZXNzZXMucHVzaCh7c3RhY2s6ci5pc0RlYnVnRHluYW1pY0FjY2Vzc2VzP0Vycm9yKCkuc3RhY2s6dm9pZCAwLGV4cHJlc3Npb246ZX0pfWZ1bmN0aW9uIEgoZSl7bGV0IHQ9bC53b3JrQXN5bmNTdG9yYWdlLmdldFN0b3JlKCkscj1kLndvcmtVbml0QXN5bmNTdG9yYWdlLmdldFN0b3JlKCk7aWYodCYmcilzd2l0Y2goci50eXBlKXtjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyIjp7bGV0IG49ci5mYWxsYmFja1JvdXRlUGFyYW1zO24mJm4uc2l6ZT4wJiZ1LmRlZmF1bHQudXNlKCgwLGYubWFrZUhhbmdpbmdQcm9taXNlKShyLnJlbmRlclNpZ25hbCx0LnJvdXRlLGUpKTticmVha31jYXNlInByZXJlbmRlci1wcHIiOntsZXQgbj1yLmZhbGxiYWNrUm91dGVQYXJhbXM7aWYobiYmbi5zaXplPjApcmV0dXJuIEQodC5yb3V0ZSxlLHIuZHluYW1pY1RyYWNraW5nKTticmVha31jYXNlInByZXJlbmRlci1ydW50aW1lIjp0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHkuSW52YXJpYW50RXJyb3IoYFxgJHtlfVxgIHdhcyBjYWxsZWQgZHVyaW5nIGEgcnVudGltZSBwcmVyZW5kZXIuIE5leHQuanMgc2hvdWxkIGJlIHByZXZlbnRpbmcgJHtlfSBmcm9tIGJlaW5nIGluY2x1ZGVkIGluIHNlcnZlciBjb21wb25lbnRzIHN0YXRpY2FsbHksIGJ1dCBkaWQgbm90IGluIHRoaXMgY2FzZS5gKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTc3MSIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgeS5JbnZhcmlhbnRFcnJvcihgXGAke2V9XGAgd2FzIGNhbGxlZCBpbnNpZGUgYSBjYWNoZSBzY29wZS4gTmV4dC5qcyBzaG91bGQgYmUgcHJldmVudGluZyAke2V9IGZyb20gYmVpbmcgaW5jbHVkZWQgaW4gc2VydmVyIGNvbXBvbmVudHMgc3RhdGljYWxseSwgYnV0IGRpZCBub3QgaW4gdGhpcyBjYXNlLmApLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNzQ1IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pfX1mdW5jdGlvbiBYKGUpe2xldCB0PWwud29ya0FzeW5jU3RvcmFnZS5nZXRTdG9yZSgpLHI9ZC53b3JrVW5pdEFzeW5jU3RvcmFnZS5nZXRTdG9yZSgpO2lmKHQpc3dpdGNoKCFyJiYoMCxkLnRocm93Rm9yTWlzc2luZ1JlcXVlc3RTdG9yZSkoZSksci50eXBlKXtjYXNlInByZXJlbmRlci1jbGllbnQiOnUuZGVmYXVsdC51c2UoKDAsZi5tYWtlSGFuZ2luZ1Byb21pc2UpKHIucmVuZGVyU2lnbmFsLHQucm91dGUsZSkpO2JyZWFrO2Nhc2UicHJlcmVuZGVyLWxlZ2FjeSI6Y2FzZSJwcmVyZW5kZXItcHByIjppZih0LmZvcmNlU3RhdGljKXJldHVybjt0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IG0uQmFpbG91dFRvQ1NSRXJyb3IoZSksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkUzOTQiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2FzZSJwcmVyZW5kZXIiOmNhc2UicHJlcmVuZGVyLXJ1bnRpbWUiOnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgeS5JbnZhcmlhbnRFcnJvcihgXGAke2V9XGAgd2FzIGNhbGxlZCBmcm9tIGEgU2VydmVyIENvbXBvbmVudC4gTmV4dC5qcyBzaG91bGQgYmUgcHJldmVudGluZyAke2V9IGZyb20gYmVpbmcgaW5jbHVkZWQgaW4gc2VydmVyIGNvbXBvbmVudHMgc3RhdGljYWxseSwgYnV0IGRpZCBub3QgaW4gdGhpcyBjYXNlLmApLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNzk1IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO2Nhc2UiY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOmNhc2UicHJpdmF0ZS1jYWNoZSI6dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyB5LkludmFyaWFudEVycm9yKGBcYCR7ZX1cYCB3YXMgY2FsbGVkIGluc2lkZSBhIGNhY2hlIHNjb3BlLiBOZXh0LmpzIHNob3VsZCBiZSBwcmV2ZW50aW5nICR7ZX0gZnJvbSBiZWluZyBpbmNsdWRlZCBpbiBzZXJ2ZXIgY29tcG9uZW50cyBzdGF0aWNhbGx5LCBidXQgZGlkIG5vdCBpbiB0aGlzIGNhc2UuYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3NDUiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2FzZSJyZXF1ZXN0IjpyZXR1cm59fWxldCBGPS9cblxzK2F0IFN1c3BlbnNlIFwoPGFub255bW91cz5cKS8sVz1SZWdFeHAoYFxcblxccythdCBTdXNwZW5zZSBcXCg8YW5vbnltb3VzPlxcKSg/Oig/IVxcblxccythdCAoPzpib2R5fGRpdnxtYWlufHNlY3Rpb258YXJ0aWNsZXxhc2lkZXxoZWFkZXJ8Zm9vdGVyfG5hdnxmb3JtfHB8c3BhbnxoMXxoMnxoM3xoNHxoNXxoNikgXFwoPGFub255bW91cz5cXCkpW1xcc1xcU10pKj9cXG5cXHMrYXQgJHtwLlJPT1RfTEFZT1VUX0JPVU5EQVJZX05BTUV9IFxcKFteXFxuXSpcXClgKSxxPVJlZ0V4cChgXFxuXFxzK2F0ICR7cC5NRVRBREFUQV9CT1VOREFSWV9OQU1FfVtcXG5cXHNdYCksRz1SZWdFeHAoYFxcblxccythdCAke3AuVklFV1BPUlRfQk9VTkRBUllfTkFNRX1bXFxuXFxzXWApLHo9UmVnRXhwKGBcXG5cXHMrYXQgJHtwLk9VVExFVF9CT1VOREFSWV9OQU1FfVtcXG5cXHNdYCk7ZnVuY3Rpb24gWShlLHQscixuKXtpZighei50ZXN0KHQpKXtpZihxLnRlc3QodCkpe3IuaGFzRHluYW1pY01ldGFkYXRhPSEwO3JldHVybn1pZihHLnRlc3QodCkpe3IuaGFzRHluYW1pY1ZpZXdwb3J0PSEwO3JldHVybn1pZihXLnRlc3QodCkpe3IuaGFzQWxsb3dlZER5bmFtaWM9ITAsci5oYXNTdXNwZW5zZUFib3ZlQm9keT0hMDtyZXR1cm59ZWxzZSBpZihGLnRlc3QodCkpe3IuaGFzQWxsb3dlZER5bmFtaWM9ITA7cmV0dXJufWVsc2V7aWYobi5zeW5jRHluYW1pY0Vycm9yV2l0aFN0YWNrKXJldHVybiB2b2lkIHIuZHluYW1pY0Vycm9ycy5wdXNoKG4uc3luY0R5bmFtaWNFcnJvcldpdGhTdGFjayk7bGV0IGE9SihgUm91dGUgIiR7ZS5yb3V0ZX0iOiBVbmNhY2hlZCBkYXRhIHdhcyBhY2Nlc3NlZCBvdXRzaWRlIG9mIDxTdXNwZW5zZT4uIFRoaXMgZGVsYXlzIHRoZSBlbnRpcmUgcGFnZSBmcm9tIHJlbmRlcmluZywgcmVzdWx0aW5nIGluIGEgc2xvdyB1c2VyIGV4cGVyaWVuY2UuIExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL2Jsb2NraW5nLXJvdXRlYCx0KTtyZXR1cm4gdm9pZCByLmR5bmFtaWNFcnJvcnMucHVzaChhKX19fWZ1bmN0aW9uIFYoZSx0LHIsbil7aWYoIXoudGVzdCh0KSl7aWYocS50ZXN0KHQpKXtyLmR5bmFtaWNNZXRhZGF0YT1KKGBSb3V0ZSAiJHtlLnJvdXRlfSI6IFVuY2FjaGVkIGRhdGEgb3IgXGBjb25uZWN0aW9uKClcYCB3YXMgYWNjZXNzZWQgaW5zaWRlIFxgZ2VuZXJhdGVNZXRhZGF0YVxgLiBFeGNlcHQgZm9yIHRoaXMgaW5zdGFuY2UsIHRoZSBwYWdlIHdvdWxkIGhhdmUgYmVlbiBlbnRpcmVseSBwcmVyZW5kZXJhYmxlIHdoaWNoIG1heSBoYXZlIGJlZW4gdGhlIGludGVuZGVkIGJlaGF2aW9yLiBTZWUgbW9yZSBpbmZvIGhlcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL25leHQtcHJlcmVuZGVyLWR5bmFtaWMtbWV0YWRhdGFgLHQpO3JldHVybn1pZihHLnRlc3QodCkpe2xldCBuPUooYFJvdXRlICIke2Uucm91dGV9IjogVW5jYWNoZWQgZGF0YSBvciBcYGNvbm5lY3Rpb24oKVxgIHdhcyBhY2Nlc3NlZCBpbnNpZGUgXGBnZW5lcmF0ZVZpZXdwb3J0XGAuIFRoaXMgZGVsYXlzIHRoZSBlbnRpcmUgcGFnZSBmcm9tIHJlbmRlcmluZywgcmVzdWx0aW5nIGluIGEgc2xvdyB1c2VyIGV4cGVyaWVuY2UuIExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL25leHQtcHJlcmVuZGVyLWR5bmFtaWMtdmlld3BvcnRgLHQpO3IuZHluYW1pY0Vycm9ycy5wdXNoKG4pO3JldHVybn1pZihXLnRlc3QodCkpe3IuaGFzQWxsb3dlZER5bmFtaWM9ITAsci5oYXNTdXNwZW5zZUFib3ZlQm9keT0hMDtyZXR1cm59ZWxzZSBpZihGLnRlc3QodCkpe3IuaGFzQWxsb3dlZER5bmFtaWM9ITA7cmV0dXJufWVsc2V7aWYobi5zeW5jRHluYW1pY0Vycm9yV2l0aFN0YWNrKXJldHVybiB2b2lkIHIuZHluYW1pY0Vycm9ycy5wdXNoKG4uc3luY0R5bmFtaWNFcnJvcldpdGhTdGFjayk7bGV0IGE9SihgUm91dGUgIiR7ZS5yb3V0ZX0iOiBVbmNhY2hlZCBkYXRhIG9yIFxgY29ubmVjdGlvbigpXGAgd2FzIGFjY2Vzc2VkIG91dHNpZGUgb2YgXGA8U3VzcGVuc2U+XGAuIFRoaXMgZGVsYXlzIHRoZSBlbnRpcmUgcGFnZSBmcm9tIHJlbmRlcmluZywgcmVzdWx0aW5nIGluIGEgc2xvdyB1c2VyIGV4cGVyaWVuY2UuIExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL2Jsb2NraW5nLXJvdXRlYCx0KTtyZXR1cm4gdm9pZCByLmR5bmFtaWNFcnJvcnMucHVzaChhKX19fWZ1bmN0aW9uIEsoZSx0LHIsbil7aWYoIXoudGVzdCh0KSl7aWYocS50ZXN0KHQpKXtyLmR5bmFtaWNNZXRhZGF0YT1KKGBSb3V0ZSAiJHtlLnJvdXRlfSI6IFJ1bnRpbWUgZGF0YSBzdWNoIGFzIFxgY29va2llcygpXGAsIFxgaGVhZGVycygpXGAsIFxgcGFyYW1zXGAsIG9yIFxgc2VhcmNoUGFyYW1zXGAgd2FzIGFjY2Vzc2VkIGluc2lkZSBcYGdlbmVyYXRlTWV0YWRhdGFcYCBvciB5b3UgaGF2ZSBmaWxlLWJhc2VkIG1ldGFkYXRhIHN1Y2ggYXMgaWNvbnMgdGhhdCBkZXBlbmQgb24gZHluYW1pYyBwYXJhbXMgc2VnbWVudHMuIEV4Y2VwdCBmb3IgdGhpcyBpbnN0YW5jZSwgdGhlIHBhZ2Ugd291bGQgaGF2ZSBiZWVuIGVudGlyZWx5IHByZXJlbmRlcmFibGUgd2hpY2ggbWF5IGhhdmUgYmVlbiB0aGUgaW50ZW5kZWQgYmVoYXZpb3IuIFNlZSBtb3JlIGluZm8gaGVyZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvbmV4dC1wcmVyZW5kZXItZHluYW1pYy1tZXRhZGF0YWAsdCk7cmV0dXJufWlmKEcudGVzdCh0KSl7bGV0IG49SihgUm91dGUgIiR7ZS5yb3V0ZX0iOiBSdW50aW1lIGRhdGEgc3VjaCBhcyBcYGNvb2tpZXMoKVxgLCBcYGhlYWRlcnMoKVxgLCBcYHBhcmFtc1xgLCBvciBcYHNlYXJjaFBhcmFtc1xgIHdhcyBhY2Nlc3NlZCBpbnNpZGUgXGBnZW5lcmF0ZVZpZXdwb3J0XGAuIFRoaXMgZGVsYXlzIHRoZSBlbnRpcmUgcGFnZSBmcm9tIHJlbmRlcmluZywgcmVzdWx0aW5nIGluIGEgc2xvdyB1c2VyIGV4cGVyaWVuY2UuIExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL25leHQtcHJlcmVuZGVyLWR5bmFtaWMtdmlld3BvcnRgLHQpO3IuZHluYW1pY0Vycm9ycy5wdXNoKG4pO3JldHVybn1pZihXLnRlc3QodCkpe3IuaGFzQWxsb3dlZER5bmFtaWM9ITAsci5oYXNTdXNwZW5zZUFib3ZlQm9keT0hMDtyZXR1cm59ZWxzZSBpZihGLnRlc3QodCkpe3IuaGFzQWxsb3dlZER5bmFtaWM9ITA7cmV0dXJufWVsc2V7aWYobi5zeW5jRHluYW1pY0Vycm9yV2l0aFN0YWNrKXJldHVybiB2b2lkIHIuZHluYW1pY0Vycm9ycy5wdXNoKG4uc3luY0R5bmFtaWNFcnJvcldpdGhTdGFjayk7bGV0IGE9SihgUm91dGUgIiR7ZS5yb3V0ZX0iOiBSdW50aW1lIGRhdGEgc3VjaCBhcyBcYGNvb2tpZXMoKVxgLCBcYGhlYWRlcnMoKVxgLCBcYHBhcmFtc1xgLCBvciBcYHNlYXJjaFBhcmFtc1xgIHdhcyBhY2Nlc3NlZCBvdXRzaWRlIG9mIFxgPFN1c3BlbnNlPlxgLiBUaGlzIGRlbGF5cyB0aGUgZW50aXJlIHBhZ2UgZnJvbSByZW5kZXJpbmcsIHJlc3VsdGluZyBpbiBhIHNsb3cgdXNlciBleHBlcmllbmNlLiBMZWFybiBtb3JlOiBodHRwczovL25leHRqcy5vcmcvZG9jcy9tZXNzYWdlcy9ibG9ja2luZy1yb3V0ZWAsdCk7cmV0dXJuIHZvaWQgci5keW5hbWljRXJyb3JzLnB1c2goYSl9fX1mdW5jdGlvbiBKKGUsdCl7bGV0IHI9T2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGUpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMzk0IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO3JldHVybiByLnN0YWNrPXIubmFtZSsiOiAiK2UrdCxyfXZhciBaPSgoYT17fSlbYS5GdWxsPTBdPSJGdWxsIixhW2EuRW1wdHk9MV09IkVtcHR5IixhW2EuRXJyb3JlZD0yXT0iRXJyb3JlZCIsYSk7ZnVuY3Rpb24gUShlLHQpe2NvbnNvbGUuZXJyb3IodCksZS5kZXZ8fChlLmhhc1JlYWRhYmxlRXJyb3JTdGFja3M/Y29uc29sZS5lcnJvcihgVG8gZ2V0IGEgbW9yZSBkZXRhaWxlZCBzdGFjayB0cmFjZSBhbmQgcGlucG9pbnQgdGhlIGlzc3VlLCBzdGFydCB0aGUgYXBwIGluIGRldmVsb3BtZW50IG1vZGUgYnkgcnVubmluZyBcYG5leHQgZGV2XGAsIHRoZW4gb3BlbiAiJHtlLnJvdXRlfSIgaW4geW91ciBicm93c2VyIHRvIGludmVzdGlnYXRlIHRoZSBlcnJvci5gKTpjb25zb2xlLmVycm9yKGBUbyBnZXQgYSBtb3JlIGRldGFpbGVkIHN0YWNrIHRyYWNlIGFuZCBwaW5wb2ludCB0aGUgaXNzdWUsIHRyeSBvbmUgb2YgdGhlIGZvbGxvd2luZzoKICAtIFN0YXJ0IHRoZSBhcHAgaW4gZGV2ZWxvcG1lbnQgbW9kZSBieSBydW5uaW5nIFxgbmV4dCBkZXZcYCwgdGhlbiBvcGVuICIke2Uucm91dGV9IiBpbiB5b3VyIGJyb3dzZXIgdG8gaW52ZXN0aWdhdGUgdGhlIGVycm9yLgogIC0gUmVydW4gdGhlIHByb2R1Y3Rpb24gYnVpbGQgd2l0aCBcYG5leHQgYnVpbGQgLS1kZWJ1Zy1wcmVyZW5kZXJcYCB0byBnZW5lcmF0ZSBiZXR0ZXIgc3RhY2sgdHJhY2VzLmApKX1mdW5jdGlvbiBlZShlLHQscixuKXtpZihuLnN5bmNEeW5hbWljRXJyb3JXaXRoU3RhY2spdGhyb3cgUShlLG4uc3luY0R5bmFtaWNFcnJvcldpdGhTdGFjayksbmV3IGMuU3RhdGljR2VuQmFpbG91dEVycm9yO2lmKDAhPT10KXtpZihyLmhhc1N1c3BlbnNlQWJvdmVCb2R5KXJldHVybjtsZXQgbj1yLmR5bmFtaWNFcnJvcnM7aWYobi5sZW5ndGg+MCl7Zm9yKGxldCB0PTA7dDxuLmxlbmd0aDt0KyspUShlLG5bdF0pO3Rocm93IG5ldyBjLlN0YXRpY0dlbkJhaWxvdXRFcnJvcn1pZihyLmhhc0R5bmFtaWNWaWV3cG9ydCl0aHJvdyBjb25zb2xlLmVycm9yKGBSb3V0ZSAiJHtlLnJvdXRlfSIgaGFzIGEgXGBnZW5lcmF0ZVZpZXdwb3J0XGAgdGhhdCBkZXBlbmRzIG9uIFJlcXVlc3QgZGF0YSAoXGBjb29raWVzKClcYCwgZXRjLi4uKSBvciB1bmNhY2hlZCBleHRlcm5hbCBkYXRhIChcYGZldGNoKC4uLilcYCwgZXRjLi4uKSB3aXRob3V0IGV4cGxpY2l0bHkgYWxsb3dpbmcgZnVsbHkgZHluYW1pYyByZW5kZXJpbmcuIFNlZSBtb3JlIGluZm8gaGVyZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvbmV4dC1wcmVyZW5kZXItZHluYW1pYy12aWV3cG9ydGApLG5ldyBjLlN0YXRpY0dlbkJhaWxvdXRFcnJvcjtpZigxPT09dCl0aHJvdyBjb25zb2xlLmVycm9yKGBSb3V0ZSAiJHtlLnJvdXRlfSIgZGlkIG5vdCBwcm9kdWNlIGEgc3RhdGljIHNoZWxsIGFuZCBOZXh0LmpzIHdhcyB1bmFibGUgdG8gZGV0ZXJtaW5lIGEgcmVhc29uLiBUaGlzIGlzIGEgYnVnIGluIE5leHQuanMuYCksbmV3IGMuU3RhdGljR2VuQmFpbG91dEVycm9yfWVsc2UgaWYoITE9PT1yLmhhc0FsbG93ZWREeW5hbWljJiZyLmhhc0R5bmFtaWNNZXRhZGF0YSl0aHJvdyBjb25zb2xlLmVycm9yKGBSb3V0ZSAiJHtlLnJvdXRlfSIgaGFzIGEgXGBnZW5lcmF0ZU1ldGFkYXRhXGAgdGhhdCBkZXBlbmRzIG9uIFJlcXVlc3QgZGF0YSAoXGBjb29raWVzKClcYCwgZXRjLi4uKSBvciB1bmNhY2hlZCBleHRlcm5hbCBkYXRhIChcYGZldGNoKC4uLilcYCwgZXRjLi4uKSB3aGVuIHRoZSByZXN0IG9mIHRoZSByb3V0ZSBkb2VzIG5vdC4gU2VlIG1vcmUgaW5mbyBoZXJlOiBodHRwczovL25leHRqcy5vcmcvZG9jcy9tZXNzYWdlcy9uZXh0LXByZXJlbmRlci1keW5hbWljLW1ldGFkYXRhYCksbmV3IGMuU3RhdGljR2VuQmFpbG91dEVycm9yfWZ1bmN0aW9uIGV0KGUsdCxyKXtpZihyLmhhc1N1c3BlbnNlQWJvdmVCb2R5KXJldHVybltdO2lmKDAhPT10KXtsZXQgbj1yLmR5bmFtaWNFcnJvcnM7aWYobi5sZW5ndGg+MClyZXR1cm4gbjtpZigxPT09dClyZXR1cm5bT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyB5LkludmFyaWFudEVycm9yKGBSb3V0ZSAiJHtlLnJvdXRlfSIgZGlkIG5vdCBwcm9kdWNlIGEgc3RhdGljIHNoZWxsIGFuZCBOZXh0LmpzIHdhcyB1bmFibGUgdG8gZGV0ZXJtaW5lIGEgcmVhc29uLmApLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFOTM2IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pXX1lbHNlIGlmKCExPT09ci5oYXNBbGxvd2VkRHluYW1pYyYmMD09PXIuZHluYW1pY0Vycm9ycy5sZW5ndGgmJnIuZHluYW1pY01ldGFkYXRhKXJldHVybltyLmR5bmFtaWNNZXRhZGF0YV07cmV0dXJuW119ZnVuY3Rpb24gZXIoZSx0KXtyZXR1cm4gZS5ydW50aW1lU3RhZ2VQcm9taXNlP2UucnVudGltZVN0YWdlUHJvbWlzZS50aGVuKCgpPT50KTp0fX0sNTIzMDUsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInVuc3RhYmxlX3JldGhyb3ciLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiBlKHQpe2lmKCgwLGkuaXNOZXh0Um91dGVyRXJyb3IpKHQpfHwoMCxvLmlzQmFpbG91dFRvQ1NSRXJyb3IpKHQpfHwoMCxzLmlzRHluYW1pY1NlcnZlckVycm9yKSh0KXx8KDAsdS5pc0R5bmFtaWNQb3N0cG9uZSkodCl8fCgwLGEuaXNQb3N0cG9uZSkodCl8fCgwLG4uaXNIYW5naW5nUHJvbWlzZVJlamVjdGlvbkVycm9yKSh0KXx8KDAsdS5pc1ByZXJlbmRlckludGVycnVwdGVkRXJyb3IpKHQpKXRocm93IHQ7dCBpbnN0YW5jZW9mIEVycm9yJiYiY2F1c2UiaW4gdCYmZSh0LmNhdXNlKX19fSk7bGV0IG49ZS5yKDE1NTA4KSxhPWUucigxNzU1Niksbz1lLnIoODQwODIpLGk9ZS5yKDQ5ODQzKSx1PWUucig2Nzc4MSkscz1lLnIoOTMyMTMpOygiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDYyOTU5LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJ1bnN0YWJsZV9yZXRocm93Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtsZXQgbj0idSI8dHlwZW9mIHdpbmRvdz9lLnIoNTIzMDUpLnVuc3RhYmxlX3JldGhyb3c6ZS5yKDE4NzgyKS51bnN0YWJsZV9yZXRocm93OygiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDMyNTIsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e1JlYWRvbmx5VVJMU2VhcmNoUGFyYW1zOmZ1bmN0aW9uKCl7cmV0dXJuIG8uUmVhZG9ubHlVUkxTZWFyY2hQYXJhbXN9LFJlZGlyZWN0VHlwZTpmdW5jdGlvbigpe3JldHVybiB1LlJlZGlyZWN0VHlwZX0sZm9yYmlkZGVuOmZ1bmN0aW9uKCl7cmV0dXJuIGMuZm9yYmlkZGVufSxub3RGb3VuZDpmdW5jdGlvbigpe3JldHVybiBzLm5vdEZvdW5kfSxwZXJtYW5lbnRSZWRpcmVjdDpmdW5jdGlvbigpe3JldHVybiBpLnBlcm1hbmVudFJlZGlyZWN0fSxyZWRpcmVjdDpmdW5jdGlvbigpe3JldHVybiBpLnJlZGlyZWN0fSx1bmF1dGhvcml6ZWQ6ZnVuY3Rpb24oKXtyZXR1cm4gZC51bmF1dGhvcml6ZWR9LHVuc3RhYmxlX2lzVW5yZWNvZ25pemVkQWN0aW9uRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gZn0sdW5zdGFibGVfcmV0aHJvdzpmdW5jdGlvbigpe3JldHVybiBsLnVuc3RhYmxlX3JldGhyb3d9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IG89ZS5yKDM5Mjc1KSxpPWUucig0MTcyMSksdT1lLnIoOTA4NjIpLHM9ZS5yKDY1OTk1KSxjPWUucigxNzc2MiksZD1lLnIoNzk1MzkpLGw9ZS5yKDYyOTU5KTtmdW5jdGlvbiBmKCl7dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKCJgdW5zdGFibGVfaXNVbnJlY29nbml6ZWRBY3Rpb25FcnJvcmAgY2FuIG9ubHkgYmUgdXNlZCBvbiB0aGUgY2xpZW50LiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNzc2IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDI4OTk1LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtSZWFkb25seVVSTFNlYXJjaFBhcmFtczpmdW5jdGlvbigpe3JldHVybiB1LlJlYWRvbmx5VVJMU2VhcmNoUGFyYW1zfSxSZWRpcmVjdFR5cGU6ZnVuY3Rpb24oKXtyZXR1cm4gbC5SZWRpcmVjdFR5cGV9LFNlcnZlckluc2VydGVkSFRNTENvbnRleHQ6ZnVuY3Rpb24oKXtyZXR1cm4gYy5TZXJ2ZXJJbnNlcnRlZEhUTUxDb250ZXh0fSxmb3JiaWRkZW46ZnVuY3Rpb24oKXtyZXR1cm4gbC5mb3JiaWRkZW59LG5vdEZvdW5kOmZ1bmN0aW9uKCl7cmV0dXJuIGwubm90Rm91bmR9LHBlcm1hbmVudFJlZGlyZWN0OmZ1bmN0aW9uKCl7cmV0dXJuIGwucGVybWFuZW50UmVkaXJlY3R9LHJlZGlyZWN0OmZ1bmN0aW9uKCl7cmV0dXJuIGwucmVkaXJlY3R9LHVuYXV0aG9yaXplZDpmdW5jdGlvbigpe3JldHVybiBsLnVuYXV0aG9yaXplZH0sdW5zdGFibGVfaXNVbnJlY29nbml6ZWRBY3Rpb25FcnJvcjpmdW5jdGlvbigpe3JldHVybiBkLnVuc3RhYmxlX2lzVW5yZWNvZ25pemVkQWN0aW9uRXJyb3J9LHVuc3RhYmxlX3JldGhyb3c6ZnVuY3Rpb24oKXtyZXR1cm4gbC51bnN0YWJsZV9yZXRocm93fSx1c2VQYXJhbXM6ZnVuY3Rpb24oKXtyZXR1cm4gYn0sdXNlUGF0aG5hbWU6ZnVuY3Rpb24oKXtyZXR1cm4gbX0sdXNlUm91dGVyOmZ1bmN0aW9uKCl7cmV0dXJuIHl9LHVzZVNlYXJjaFBhcmFtczpmdW5jdGlvbigpe3JldHVybiBofSx1c2VTZWxlY3RlZExheW91dFNlZ21lbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gX30sdXNlU2VsZWN0ZWRMYXlvdXRTZWdtZW50czpmdW5jdGlvbigpe3JldHVybiBnfSx1c2VTZXJ2ZXJJbnNlcnRlZEhUTUw6ZnVuY3Rpb24oKXtyZXR1cm4gYy51c2VTZXJ2ZXJJbnNlcnRlZEhUTUx9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IG89ZS5yKDQ0MDY2KS5fKGUucig3NTIwMSkpLGk9ZS5yKDE2ODcyKSx1PWUucigzMTg5OSkscz1lLnIoMjc0NTQpLGM9ZS5yKDE4NDYyKSxkPWUucig3NTA1MSksbD1lLnIoMzI1MiksZj0idSI8dHlwZW9mIHdpbmRvdz9lLnIoNjc3ODEpLnVzZUR5bmFtaWNSb3V0ZVBhcmFtczp2b2lkIDAscD0idSI8dHlwZW9mIHdpbmRvdz9lLnIoNjc3ODEpLnVzZUR5bmFtaWNTZWFyY2hQYXJhbXM6dm9pZCAwO2Z1bmN0aW9uIGgoKXtwPy4oInVzZVNlYXJjaFBhcmFtcygpIik7bGV0IGU9KDAsby51c2VDb250ZXh0KSh1LlNlYXJjaFBhcmFtc0NvbnRleHQpO3JldHVybigwLG8udXNlTWVtbykoKCk9PmU/bmV3IHUuUmVhZG9ubHlVUkxTZWFyY2hQYXJhbXMoZSk6bnVsbCxbZV0pfWZ1bmN0aW9uIG0oKXtyZXR1cm4gZj8uKCJ1c2VQYXRobmFtZSgpIiksKDAsby51c2VDb250ZXh0KSh1LlBhdGhuYW1lQ29udGV4dCl9ZnVuY3Rpb24geSgpe2xldCBlPSgwLG8udXNlQ29udGV4dCkoaS5BcHBSb3V0ZXJDb250ZXh0KTtpZihudWxsPT09ZSl0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoImludmFyaWFudCBleHBlY3RlZCBhcHAgcm91dGVyIHRvIGJlIG1vdW50ZWQiKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTIzOCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtyZXR1cm4gZX1mdW5jdGlvbiBiKCl7cmV0dXJuIGY/LigidXNlUGFyYW1zKCkiKSwoMCxvLnVzZUNvbnRleHQpKHUuUGF0aFBhcmFtc0NvbnRleHQpfWZ1bmN0aW9uIGcoZT0iY2hpbGRyZW4iKXtmPy4oInVzZVNlbGVjdGVkTGF5b3V0U2VnbWVudHMoKSIpO2xldCB0PSgwLG8udXNlQ29udGV4dCkoaS5MYXlvdXRSb3V0ZXJDb250ZXh0KTtyZXR1cm4gdD8oMCxzLmdldFNlbGVjdGVkTGF5b3V0U2VnbWVudFBhdGgpKHQucGFyZW50VHJlZSxlKTpudWxsfWZ1bmN0aW9uIF8oZT0iY2hpbGRyZW4iKXtmPy4oInVzZVNlbGVjdGVkTGF5b3V0U2VnbWVudCgpIiksKDAsby51c2VDb250ZXh0KSh1Lk5hdmlnYXRpb25Qcm9taXNlc0NvbnRleHQpO2xldCB0PWcoZSk7cmV0dXJuKDAscy5jb21wdXRlU2VsZWN0ZWRMYXlvdXRTZWdtZW50KSh0LGUpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9XSk7"}},"time_used":11,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":10,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.googleapis.com/translate_static/img/te_ctrl3.gif","fqdn":"translate.googleapis.com","domain":"translate.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.798Z","timestamp":1785158433798,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"upload.video.google.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:27 GMT","end":"Mon, 21 Sep 2026 08:39:26 GMT"},"fingerprint":{"sha1":"50:37:CF:61:33:A1:EE:47:D9:3D:A6:5E:07:BA:4C:FF:F7:25:9F:76","sha256":"7D:4D:21:06:63:E2:5E:F0:8C:59:8E:EB:B7:94:2B:81:70:11:D3:F4:C0:A0:81:A6:1B:E7:27:FD:56:10:1A:11"}}},"request":{"raw":"GET /translate_static/img/te_ctrl3.gif HTTP/1.1\r\nHost: translate.googleapis.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 1412\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 02:32:24 GMT\r\nexpires: Fri, 23 Jul 2027 02:32:24 GMT\r\ncache-control: public, max-age=31536000\r\nage: 384489\r\nlast-modified: Thu, 03 Oct 2019 10:15:00 GMT\r\ncontent-type: image/gif\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":1412,"size_decoded":2072,"mime_type":"image/gif","magic":"GIF image data, version 89a, 84 x 19","md5":"9afe50090c0bc612953d081295eab5b1","sha1":"71a4da2a622879c29176ecfa5afe1bbe3e8cfa40","sha256":"d228d0256370863119c043f1e5ca8f3930f6999bd9f250434b6d8935f45dc171","sha512":"d7290b951cec51994f3480c32b70de0faeca433b5d99209b044e1d4c12327768de8c344b6bded806d993251e0ee6f98f0dd64f4480e999fbc06abfe3dd8056fa","ssdeep":"","tlshash":"042182b5cc99114a5be1bd27a334899da8b12c56c38d74595436bdb43470f098422812","first_seen":"2023-04-05T08:27:37Z","last_seen":"2026-08-17T21:53:38.01401Z","times_seen":17357,"resource_available":false,"data":"R0lGODlhVAATAOePAAAAyxZBmhdFrBhHrhpMyB1Uxh1Vzh5X0R9ZzR9awSFf1SNk2CYW0SZq2yZs4Cka2yt45TB9ITJ11TODHjODIDWKGzdgrDmUGjuaRTybGT1svj6hGUClGEF1tEGnFkGpGUKrFUNnrkWjYUWoUkZtskdww0dxy0l/EkmP5EqlLUtLS0uxFFCmLlGY6lON3la4E1e0GFhYD1uxRlu5EVyyU1+vLGW8FGef5mmTx22p7W6PEW+d32+e4XKa2Hp6en6p5H9lE4eHh4i06YurxYyqyYyufoy8iI29ho7AhpCz55DEhJW55ZaT15jClqGm9afE2KgeFavK7LDN47rV7b7J4cTa9cXi0MjX8Mrd9c0lGs3l/9QmGtbW1tfq/9jl9djl+NmcANns0dnt4NonG9otM9yGft4pG9/x4OCrIuG3I+Hv/+Lfz+Px4eRWTOSaAeSyNuUpHOWIgOalAOby/+c5P+egD+exAefJcOhYXuqjAOq3Tuq9YOtqbuvHG+vz++xYTOy8AO2sAe6xAO7x9+/Ecu/SaPDYaPD2//D47/KzAPS7APfpy/ng3fzp7P347f///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////yH5BAEKAP8ALAAAAABUABMAAAj+AP+pGEiw4MB//4goXMhQ4b8gECNKnIiwosWLGBE+2sjxkaNGIB115KjCB5eTKFP6UEEkypyXMGNGIRJkpM2NQSwO2bkzI8aRjOL8oUP0TxxGI1WkXIqSZcynMGnetJnz386OanpWxNGhKw6NHOMQHUs2jsiNSpkudQr1qVScI2vitLpRTZe7XdRoGYKQ65K/Hb5yxEO2MJ0/HdNyYQCgMQAGTYnAfOAYwIOociNy1Pwo55BHXZZ07XC3Ct9/HZZUFP1vo9ixfNYsWsOHDp6kKJlUZhIZppPKTjBvhtiZOM7PdlN34Xp3Ct/Uqzu0XjT2z5qRaxrhRsn4cUq2Lyn+W475FqfEjkE+4+0yhXkXKUNGy+/6yFAdotc7HrqpmItuALz15ltjwQmHnnGbqddcV3jBl9pfEIrmSB+KKILYVNtxB9l3ksX0wGXkyWUeZ8eBdheDDcY332iOVKiIIR0tgcKMNKKQwyP9+ReggL4VaGBxNZGYnl3r4TXFE/FFCGEHLVa4SEdR1EhjDofkqBZ4bb30lpDGeUYkiu89t2JXTb4Yo5Qz3mglU1hmWZ6IcM01hBZVrDeFFEiipiRgE1ZYREdzaCGoFi3MKASOJql10kotZfnSTHBiWNVOd0qBp1Zj0mdIGiOMYMVNVdAYxSMCGWQqQg2lSsRDGKKnE09jp/lU0SNhdDqCCJ929EWhKLTQBamyBuvTRMRKJKywGxlh6whGWOGsESLQeCiwx1Zr7bWyckTDstxi0MENHGEr7rjWdqQst7Ya0RG57LZ70UhWQGurCM2O5O697N6EyL773hQQADs="}},"time_used":18,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":18,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/c0a6ae515f4d245d.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.130Z","timestamp":1785158433130,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/c0a6ae515f4d245d.js HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: *\r\nage: 3845949\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"c0a6ae515f4d245d.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\netag: W/\"42e2ea745a52c479ce79b9fadf7f2ed9\"\r\nlast-modified: Sat, 13 Jun 2026 00:50:11 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/c0a6ae515f4d245d.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::xwt97-1781312483646-eb94f2b460c3\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=M6I%2Fs7DMSCodKqFiJQ0zrmoFMYa5VtP%2FbV3EYB6xNbYnm1wz2eG7DEFD862xZ%2FcRpcCeV%2BDlsvF62sioHTVrMnRaQtFDjPv5lFB6Q9rUsrmhvuRt38QAwU2bQSS2\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21bf12f183856b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":3649,"size_decoded":3726,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3649), with no line terminators","md5":"42e2ea745a52c479ce79b9fadf7f2ed9","sha1":"0cf08999016475d70bf072b7878daea0244184e3","sha256":"2746264358bea944d3523f9c66585147897903d73b7b42e0bfd599f2492e3315","sha512":"cf4f42621c9615fcfc08b325ce391ff9e3af8b94fe80c1e4118eb1e52ca88e0b0409d0c36bc96f50a26ac3ea232630521e1a8077e10d05438f3b7fb8ebc266a9","ssdeep":"","tlshash":"af7165f0a702b23409ea41de5079c778b53d3658512e9420d1badc7f626cd8964b2ef3","first_seen":"2026-06-13T02:21:16.197988Z","last_seen":"2026-08-17T21:34:38.580636Z","times_seen":1949,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDQyMDkyLGU9PnsidXNlIHN0cmljdCI7dmFyIHQ9ZS5pKDc1MjAxKSxyPShlLHQscixuLHMsYSxvLGwpPT57bGV0IGk9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LG09WyJsaWdodCIsImRhcmsiXTtmdW5jdGlvbiBjKHQpe3ZhciByOyhBcnJheS5pc0FycmF5KGUpP2U6W2VdKS5mb3JFYWNoKGU9PntsZXQgcj0iY2xhc3MiPT09ZSxuPXImJmE/cy5tYXAoZT0+YVtlXXx8ZSk6cztyPyhpLmNsYXNzTGlzdC5yZW1vdmUoLi4ubiksaS5jbGFzc0xpc3QuYWRkKGEmJmFbdF0/YVt0XTp0KSk6aS5zZXRBdHRyaWJ1dGUoZSx0KX0pLHI9dCxsJiZtLmluY2x1ZGVzKHIpJiYoaS5zdHlsZS5jb2xvclNjaGVtZT1yKX1pZihuKWMobik7ZWxzZSB0cnl7bGV0IGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0odCl8fHIsbj1vJiYic3lzdGVtIj09PWU/d2luZG93Lm1hdGNoTWVkaWEoIihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiKS5tYXRjaGVzPyJkYXJrIjoibGlnaHQiOmU7YyhuKX1jYXRjaChlKXt9fSxuPVsibGlnaHQiLCJkYXJrIl0scz0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIsYT0idSI8dHlwZW9mIHdpbmRvdyxvPXQuY3JlYXRlQ29udGV4dCh2b2lkIDApLGw9e3NldFRoZW1lOmU9Pnt9LHRoZW1lczpbXX0saT0oKT0+e3ZhciBlO3JldHVybiBudWxsIT0oZT10LnVzZUNvbnRleHQobykpP2U6bH0sbT1lPT50LnVzZUNvbnRleHQobyk/dC5jcmVhdGVFbGVtZW50KHQuRnJhZ21lbnQsbnVsbCxlLmNoaWxkcmVuKTp0LmNyZWF0ZUVsZW1lbnQoZCx7Li4uZX0pLGM9WyJsaWdodCIsImRhcmsiXSxkPSh7Zm9yY2VkVGhlbWU6ZSxkaXNhYmxlVHJhbnNpdGlvbk9uQ2hhbmdlOnI9ITEsZW5hYmxlU3lzdGVtOmE9ITAsZW5hYmxlQ29sb3JTY2hlbWU6bD0hMCxzdG9yYWdlS2V5Omk9InRoZW1lIix0aGVtZXM6bT1jLGRlZmF1bHRUaGVtZTpkPWE/InN5c3RlbSI6ImxpZ2h0IixhdHRyaWJ1dGU6cD0iZGF0YS10aGVtZSIsdmFsdWU6YixjaGlsZHJlbjp2LG5vbmNlOmcsc2NyaXB0UHJvcHM6VH0pPT57bGV0W3csU109dC51c2VTdGF0ZSgoKT0+aChpLGQpKSxbQyxFXT10LnVzZVN0YXRlKCgpPT4ic3lzdGVtIj09PXc/ZigpOncpLGs9Yj9PYmplY3QudmFsdWVzKGIpOm0sQT10LnVzZUNhbGxiYWNrKGU9PntsZXQgdD1lO2lmKCF0KXJldHVybjsic3lzdGVtIj09PWUmJmEmJih0PWYoKSk7bGV0IHM9Yj9iW3RdOnQsbz1yP3koZyk6bnVsbCxpPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxtPWU9PnsiY2xhc3MiPT09ZT8oaS5jbGFzc0xpc3QucmVtb3ZlKC4uLmspLHMmJmkuY2xhc3NMaXN0LmFkZChzKSk6ZS5zdGFydHNXaXRoKCJkYXRhLSIpJiYocz9pLnNldEF0dHJpYnV0ZShlLHMpOmkucmVtb3ZlQXR0cmlidXRlKGUpKX07aWYoQXJyYXkuaXNBcnJheShwKT9wLmZvckVhY2gobSk6bShwKSxsKXtsZXQgZT1uLmluY2x1ZGVzKGQpP2Q6bnVsbCxyPW4uaW5jbHVkZXModCk/dDplO2kuc3R5bGUuY29sb3JTY2hlbWU9cn1udWxsPT1vfHxvKCl9LFtnXSksTD10LnVzZUNhbGxiYWNrKGU9PntsZXQgdD0iZnVuY3Rpb24iPT10eXBlb2YgZT9lKHcpOmU7Uyh0KTt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oaSx0KX1jYXRjaChlKXt9fSxbd10pLFA9dC51c2VDYWxsYmFjayh0PT57RShmKHQpKSwic3lzdGVtIj09PXcmJmEmJiFlJiZBKCJzeXN0ZW0iKX0sW3csZV0pO3QudXNlRWZmZWN0KCgpPT57bGV0IGU9d2luZG93Lm1hdGNoTWVkaWEocyk7cmV0dXJuIGUuYWRkTGlzdGVuZXIoUCksUChlKSwoKT0+ZS5yZW1vdmVMaXN0ZW5lcihQKX0sW1BdKSx0LnVzZUVmZmVjdCgoKT0+e2xldCBlPWU9PntlLmtleT09PWkmJihlLm5ld1ZhbHVlP1MoZS5uZXdWYWx1ZSk6TChkKSl9O3JldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic3RvcmFnZSIsZSksKCk9PndpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJzdG9yYWdlIixlKX0sW0xdKSx0LnVzZUVmZmVjdCgoKT0+e0EobnVsbCE9ZT9lOncpfSxbZSx3XSk7bGV0IE89dC51c2VNZW1vKCgpPT4oe3RoZW1lOncsc2V0VGhlbWU6TCxmb3JjZWRUaGVtZTplLHJlc29sdmVkVGhlbWU6InN5c3RlbSI9PT13P0M6dyx0aGVtZXM6YT9bLi4ubSwic3lzdGVtIl06bSxzeXN0ZW1UaGVtZTphP0M6dm9pZCAwfSksW3csTCxlLEMsYSxtXSk7cmV0dXJuIHQuY3JlYXRlRWxlbWVudChvLlByb3ZpZGVyLHt2YWx1ZTpPfSx0LmNyZWF0ZUVsZW1lbnQodSx7Zm9yY2VkVGhlbWU6ZSxzdG9yYWdlS2V5OmksYXR0cmlidXRlOnAsZW5hYmxlU3lzdGVtOmEsZW5hYmxlQ29sb3JTY2hlbWU6bCxkZWZhdWx0VGhlbWU6ZCx2YWx1ZTpiLHRoZW1lczptLG5vbmNlOmcsc2NyaXB0UHJvcHM6VH0pLHYpfSx1PXQubWVtbygoe2ZvcmNlZFRoZW1lOmUsc3RvcmFnZUtleTpuLGF0dHJpYnV0ZTpzLGVuYWJsZVN5c3RlbTphLGVuYWJsZUNvbG9yU2NoZW1lOm8sZGVmYXVsdFRoZW1lOmwsdmFsdWU6aSx0aGVtZXM6bSxub25jZTpjLHNjcmlwdFByb3BzOmR9KT0+e2xldCB1PUpTT04uc3RyaW5naWZ5KFtzLG4sbCxlLG0saSxhLG9dKS5zbGljZSgxLC0xKTtyZXR1cm4gdC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiLHsuLi5kLHN1cHByZXNzSHlkcmF0aW9uV2FybmluZzohMCxub25jZToidSI8dHlwZW9mIHdpbmRvdz9jOiIiLGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MOntfX2h0bWw6YCgke3IudG9TdHJpbmcoKX0pKCR7dX0pYH19KX0pLGg9KGUsdCk9PntsZXQgcjtpZighYSl7dHJ5e3I9bG9jYWxTdG9yYWdlLmdldEl0ZW0oZSl8fHZvaWQgMH1jYXRjaChlKXt9cmV0dXJuIHJ8fHR9fSx5PWU9PntsZXQgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3JldHVybiBlJiZ0LnNldEF0dHJpYnV0ZSgibm9uY2UiLGUpLHQuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiosKjo6YmVmb3JlLCo6OmFmdGVyey13ZWJraXQtdHJhbnNpdGlvbjpub25lIWltcG9ydGFudDstbW96LXRyYW5zaXRpb246bm9uZSFpbXBvcnRhbnQ7LW8tdHJhbnNpdGlvbjpub25lIWltcG9ydGFudDstbXMtdHJhbnNpdGlvbjpub25lIWltcG9ydGFudDt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fSIpKSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHQpLCgpPT57d2luZG93LmdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuYm9keSksc2V0VGltZW91dCgoKT0+e2RvY3VtZW50LmhlYWQucmVtb3ZlQ2hpbGQodCl9LDEpfX0sZj1lPT4oZXx8KGU9d2luZG93Lm1hdGNoTWVkaWEocykpLGUubWF0Y2hlcz8iZGFyayI6ImxpZ2h0Iik7ZS5zKFsiVGhlbWVQcm92aWRlciIsKCk9Pm0sInVzZVRoZW1lIiwoKT0+aV0pfSw4MzY2MSxlPT57InVzZSBzdHJpY3QiO3ZhciB0PWUuaSg5ODEzNCkscj1lLmkoNDIwOTIpO2Z1bmN0aW9uIG4oe2NoaWxkcmVuOmV9KXtyZXR1cm4oMCx0LmpzeCkoci5UaGVtZVByb3ZpZGVyLHthdHRyaWJ1dGU6ImNsYXNzIixkZWZhdWx0VGhlbWU6ImRhcmsiLGVuYWJsZVN5c3RlbTohMCxkaXNhYmxlVHJhbnNpdGlvbk9uQ2hhbmdlOiEwLGNoaWxkcmVuOmV9KX1lLnMoWyJUaGVtZVByb3ZpZGVyIiwoKT0+bl0pfV0pOw=="}},"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":"coinlib.io/api/v1/widget?top=6\u0026pref_coin_id=1505","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.259Z","timestamp":1785158433259,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /api/v1/widget?top=6\u0026pref_coin_id=1505 HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nage: 362\r\ncache-control: public, max-age=120, s-maxage=300, stale-while-revalidate=600\r\ncdn-cache-control: public, s-maxage=60, stale-while-revalidate=300\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/json\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\netag: W/\"Uqj58PyRC2ljbz4D0Qpmoj34BvE=\"\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nvary: rsc, next-router-state-tree, next-router-prefetch, next-router-segment-prefetch, accept-encoding\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /api/v1/widget\r\nx-vercel-cache: STALE\r\nx-vercel-id: arn1::iad1::8n8dg-1785158433268-21e54fccf36b\r\nx-xss-protection: 1; mode=block\r\ncf-cache-status: DYNAMIC\r\npriority: u=4,i=?0\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=%2BlYfbbE3YHO5CG6%2FFbfayK4PfX5n7i2qLC%2BlPGA%2BmofxuMsZ2%2FjUjidPUJTKQ9Fx2SJcjLMhH53R0MnGFnzNbOPD%2BpUQeIvaeziVy8l7bE6r4PDv%2FHcoQgwWdczo\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12fd85a56b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":4965,"size_decoded":3762,"mime_type":"application/json","magic":"JSON text data","md5":"6db3535eb30c0d9c6edf24553e71e35d","sha1":"52a8f9f0fc910b69636f3e03d10a66a23df806f1","sha256":"c2f021f43801e832804314e64f6d60eba3565cdbaec4ab4bf4b1ac2b5db1d001","sha512":"932a59da271faa9e883ac2e305570642634020dea70f2cb8308181cb7c0b629571896977da52e9be08d97ff9753c5fc3d7e7830d8cb668907b750ca76923f34b","ssdeep":"96:ijDxE2jFaNTjokQpTK7Esj0BmJtxJgkjswmHn4MJGz9FbjWUbmS63H:bvNQkUBOJgpn4MJmFtmS6X","tlshash":"99a123cb1a31cbabd97001be70532bd42c9e59cd6a7c9515d1cb8d8e00addb3113dbaa","first_seen":"2026-07-27T13:21:25.80512Z","last_seen":"2026-07-27T13:21:25.80512Z","times_seen":1,"resource_available":false,"data":"eyJkYXRhIjpbeyJpZCI6MSwic2x1ZyI6ImJpdGNvaW4iLCJzeW1ib2wiOiJCVEMiLCJuYW1lIjoiQml0Y29pbiIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzEucG5nIiwicHJpY2VfdXNkIjo2NTAwNy4zOTk4MzI0MTY1LCJtYXJrZXRfY2FwIjoxMzA0MTc1NTk1MTEyLjM0NzIsInZvbHVtZV8yNGgiOjIxNTc5MjA0NTM1LjE2MDY5NCwicmFuayI6MSwicGVyY2VudF9jaGFuZ2VfMWgiOi0wLjI5MTQwMTYxLCJwZXJjZW50X2NoYW5nZV8yNGgiOjAuOTc4MjQzODUsInBlcmNlbnRfY2hhbmdlXzdkIjowLjUzNDMwMzc0LCJjaXJjdWxhdGluZ19zdXBwbHkiOjIwMDYxOTU2LCJ0b3RhbF9zdXBwbHkiOjIwMDYxOTU2LCJtYXhfc3VwcGx5IjoyMTAwMDAwMCwic3BhcmtsaW5lXzdkIjpbNjQ0MjIsNjM5MzgsNjM5ODgsNjQxMDQsNjUzNDcsNjUwMjIsNjUzNjUsNjUyMzksNjU0NzYsNjYxNjQsNjYxOTUsNjY2ODQsNjYxOTYsNjY0NDEsNjY2NzQsNjYzMzAsNjU5MjYsNjU5OTMsNjU2MDcsNjYwMTAsNjU3MjUsNjYwMTcsNjYwOTMsNjU1NTksNjU2NTksNjU2MzIsNjQ5ODcsNjQ2ODYsNjUwNzIsNjQ5MzUsNjUzNzgsNjU3MDksNjUwNjMsNjM3NjksNjQxNzUsNjQwODIsNjQxMDMsNjM5NzQsNjQwODgsNjM4NjIsNjQwMzcsNjQxNzAsNjQzODIsNjQyNzQsNjQ0MjgsNjQ0NjcsNjQyNDcsNjQ0NjMsNjQ0NzcsNjQ3MDIsNjQ2MDcsNjUzMDAsNjUwMTIsNjU0MDcsNjUxMTcsNjUxOTddfSx7ImlkIjoxMDI3LCJzbHVnIjoiZXRoZXJldW0iLCJzeW1ib2wiOiJFVEgiLCJuYW1lIjoiRXRoZXJldW0iLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC8xMDI3LnBuZyIsInByaWNlX3VzZCI6MTk1NS44OTYxMzA1NDUyODE1LCJtYXJrZXRfY2FwIjoyMzYwNDI3NTcwODEuNTAzMiwidm9sdW1lXzI0aCI6MTA5OTQzNDM0MTMuOTQyNSwicmFuayI6MiwicGVyY2VudF9jaGFuZ2VfMWgiOi0wLjMyNjQzNDUyLCJwZXJjZW50X2NoYW5nZV8yNGgiOjMuOTEwMzMyMDEsInBlcmNlbnRfY2hhbmdlXzdkIjo0LjQ2MjU1OTgsImNpcmN1bGF0aW5nX3N1cHBseSI6MTIwNjgyNjY0Ljc4NzM2NjM4LCJ0b3RhbF9zdXBwbHkiOjEyMDY4MjY2NC43ODczNjYzOCwibWF4X3N1cHBseSI6bnVsbCwic3BhcmtsaW5lXzdkIjpbMTg2OS41LDE4NTUuNiwxODYzLDE4ODcuOSwxODYzLjUsMTkwOS45LDE4OTguOSwxOTA2LjEsMTkyMy44LDE5MzYuNiwxOTM0LjUsMTk0MC4xLDE5MjEsMTkxOC4xLDE5MzUuMiwxOTM2LjEsMTkxMi41LDE5MjkuMywxOTE2LjUsMTk0Ni41LDE5MjYuNiwxOTMxLjgsMTkzNiwxOTE5LjYsMTkxNS4xLDE5MjYuNiwxODk3LjksMTg4MC4yLDE4ODUuOCwxODY3LDE4NjUuOCwxODkwLjIsMTg4MS45LDE4NTMuOSwxODY1LDE4NTgsMTg2MC43LDE4NTcuNywxODU5LjUsMTg1My42LDE4NTUuNywxODY2LjUsMTg3NC4zLDE4NzAuMywxODc1LjksMTg4My44LDE4NzcuMywxODg1LjIsMTg4NS45LDE5MTEsMTkxMy44LDE5NTMuNSwxOTQxLjcsMTk3MC42LDE5NjUuNiwxOTYyLjNdfSx7ImlkIjo4MjUsInNsdWciOiJ0ZXRoZXIiLCJzeW1ib2wiOiJVU0RUIiwibmFtZSI6IlRldGhlciBVU0R0IiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvODI1LnBuZyIsInByaWNlX3VzZCI6MC45OTg5Mzg3MDU2MTA5NzYzLCJtYXJrZXRfY2FwIjoxODM5MzEzMDkzMDkuNDU5MjMsInZvbHVtZV8yNGgiOjQ4ODkyNjM1OTA4LjcxNDU4LCJyYW5rIjozLCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMDE5MzA1LCJwZXJjZW50X2NoYW5nZV8yNGgiOi0wLjAyMTYwNDIsInBlcmNlbnRfY2hhbmdlXzdkIjotMC4wMTQ4OTAwMywiY2lyY3VsYXRpbmdfc3VwcGx5IjoxODQxMjY3MjE5NjYuMzUxNDcsInRvdGFsX3N1cHBseSI6MTg5MTA2NzI0MDE4LjYzOTYsIm1heF9zdXBwbHkiOm51bGwsInNwYXJrbGluZV83ZCI6WzAuOTk5MTUsMC45OTkzLDAuOTk4OTcsMC45OTkxNSwwLjk5ODkxLDAuOTk5MTksMC45OTkzNywwLjk5OTIyLDAuOTk5MzEsMC45OTkxNiwwLjk5OTM1LDAuOTk5MjYsMC45OTk0NywwLjk5OTQ0LDAuOTk5MzIsMC45OTkyMiwwLjk5OTMzLDAuOTk5MTcsMC45OTkxNSwwLjk5OTUyLDAuOTk5NDEsMC45OTk1NSwwLjk5OTU3LDAuOTk5MzUsMC45OTkzNCwwLjk5OTU3LDAuOTk5NCwwLjk5ODk4LDAuOTk5MjIsMC45OTkyOSwwLjk5OTE2LDAuOTk5MzQsMC45OTkzNywwLjk5OTIyLDAuOTk4OTgsMC45OTkxOCwwLjk5OTA2LDAuOTk5MDMsMC45OTkxMiwwLjk5OTEzLDAuOTk4OTQsMC45OTkxNywwLjk5ODk5LDAuOTk5MDksMC45OTkxMywwLjk5OTAyLDAuOTk5MiwwLjk5OTA4LDAuOTk5MiwwLjk5OTA4LDAuOTk5MDMsMC45OTkwMSwwLjk5OTU2LDAuOTk5MDQsMC45OTg5OCwwLjk5OTE1XX0seyJpZCI6MTgzOSwic2x1ZyI6ImJuYiIsInN5bWJvbCI6IkJOQiIsIm5hbWUiOiJCTkIiLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC8xODM5LnBuZyIsInByaWNlX3VzZCI6NTczLjI0Njc4NDg4MTczNTMsIm1hcmtldF9jYXAiOjc2MzM2NzY4MzY1LjcxODI1LCJ2b2x1bWVfMjRoIjo4ODE5NDMwMDMuMzQzMjA1MiwicmFuayI6NCwicGVyY2VudF9jaGFuZ2VfMWgiOjAuMDI5ODY5NjMsInBlcmNlbnRfY2hhbmdlXzI0aCI6MC41NTk3NjI3MywicGVyY2VudF9jaGFuZ2VfN2QiOjAuNzc4NzI0NjUsImNpcmN1bGF0aW5nX3N1cHBseSI6MTMzMTY1NjI4LjQ1LCJ0b3RhbF9zdXBwbHkiOjEzMzE2NTYyOC40NSwibWF4X3N1cHBseSI6MTMzMTY1NjI4LjQ1LCJzcGFya2xpbmVfN2QiOls1NjcuOTMsNTY0LjgxLDU2Ni40NCw1NzAuNDYsNTY2LjksNTczLjUsNTcwLjA1LDU3MS40NSw1NzMuOTksNTc1LjQyLDU3OC41Nyw1NzYuOTcsNTczLjEsNTcyLjYyLDU3NC4zOSw1NzEuODcsNTY3LjUxLDU2OS43LDU2OS43Myw1NzQuODQsNTY5LjcsNTcwLjY3LDU3MS42MSw1NjkuMzcsNTcwLjM1LDU2OS40OSw1NjQuOTQsNTY2LjkxLDU2Ny45OCw1NjcuMSw1NjkuMDksNTY4LjkzLDU2NS45MSw1NTcuODUsNTYxLjQsNTY0LjY1LDU2My42NSw1NjUuNTQsNTY0Ljg0LDU2NC4xNiw1NjUsNTY2LjYxLDU2OC4yMyw1NjcuOSw1NjkuNyw1NzEuMTYsNTcwLjIzLDU3MC4zMSw1NzAuMzYsNTczLjI0LDU3Mi40NCw1NzUuMDEsNTcyLjI4LDU3NS4xNSw1NzEuOSw1NzMuMDddfSx7ImlkIjozNDA4LCJzbHVnIjoidXNkLWNvaW4iLCJzeW1ib2wiOiJVU0RDIiwibmFtZSI6IlVTREMiLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC8zNDA4LnBuZyIsInByaWNlX3VzZCI6MC45OTk5MzQ3NTc5NTYzMzY0LCJtYXJrZXRfY2FwIjo3MjUxMzQzODUyMy4zNTY0OCwidm9sdW1lXzI0aCI6ODYyOTExMzM0Ni43MzgxNDgsInJhbmsiOjUsInBlcmNlbnRfY2hhbmdlXzFoIjowLjAxOTAzOTM1LCJwZXJjZW50X2NoYW5nZV8yNGgiOi0wLjAxMjMyMjk2LCJwZXJjZW50X2NoYW5nZV83ZCI6MC4wMDcyMjQ0LCJjaXJjdWxhdGluZ19zdXBwbHkiOjcyNTE4MTY5NzU2Ljk1NDE2LCJ0b3RhbF9zdXBwbHkiOjcyNTE4MTY5NzU2Ljk1NDE2LCJtYXhfc3VwcGx5IjpudWxsLCJzcGFya2xpbmVfN2QiOlswLjk5OTc3LDEsMC45OTk2MiwwLjk5OTk2LDAuOTk5ODYsMC45OTk3OSwwLjk5OTg1LDEuMDAwMSwwLjk5OTgxLDAuOTk5OTIsMC45OTk5NSwxLDAuOTk5ODgsMC45OTk5NCwwLjk5OTgsMS4wMDAxLDAuOTk5ODksMC45OTk4MywwLjk5OTk2LDAuOTk5ODUsMC45OTk4NSwwLjk5OTk5LDEuMDAwMSwwLjk5OTgsMC45OTk4MSwxLjAwMDEsMC45OTk5MSwwLjk5OTgsMS4wMDAxLDAuOTk5ODgsMSwwLjk5OTkxLDEsMC45OTk4NSwwLjk5OTk2LDAuOTk5OTcsMC45OTk3OCwwLjk5OTkzLDAuOTk5ODgsMC45OTk5MywwLjk5OTk3LDAuOTk5ODksMC45OTk4OSwxLjAwMDIsMC45OTk5NSwwLjk5OTgyLDEsMC45OTk5MywwLjk5OTg1LDAuOTk5OTksMC45OTk4OCwxLDAuOTk5OTMsMC45OTk3NSwwLjk5OTk0LDAuOTk5NzRdfSx7ImlkIjo1Miwic2x1ZyI6InhycCIsInN5bWJvbCI6IlhSUCIsIm5hbWUiOiJYUlAiLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC81Mi5wbmciLCJwcmljZV91c2QiOjEuMTAzOTM3NTMyNTcyMjY4NywibWFya2V0X2NhcCI6NjkwMzI4MjU5NDUuNjczMzYsInZvbHVtZV8yNGgiOjgxNjAzMzkwMS4zNTM2NjYsInJhbmsiOjYsInBlcmNlbnRfY2hhbmdlXzFoIjotMC4xMzQxODM3NSwicGVyY2VudF9jaGFuZ2VfMjRoIjowLjYzODQ1MDAzLCJwZXJjZW50X2NoYW5nZV83ZCI6MC40MTA2NDU4OSwiY2lyY3VsYXRpbmdfc3VwcGx5Ijo2MjUzMzI3MTk1NSwidG90YWxfc3VwcGx5Ijo5OTk4NTYzNTcwNywibWF4X3N1cHBseSI6MTAwMDAwMDAwMDAwLCJzcGFya2xpbmVfN2QiOlsxLjA5NTIsMS4wODQ4LDEuMDg2NiwxLjA4ODIsMS4xMTA1LDEuMTE4MSwxLjEwODUsMS4xMTU1LDEuMTI4NiwxLjEzNCwxLjEzMDcsMS4xNTA3LDEuMTU3NywxLjE2MTYsMS4xNDIzLDEuMTQwNywxLjEzMTYsMS4xMzM5LDEuMTM1NywxLjE1MTIsMS4xMzkzLDEuMTQwNiwxLjE0MTgsMS4xMzM0LDEuMTM1NSwxLjEzMTQsMS4xMTI2LDEuMTAyNywxLjExMDQsMS4xMDY2LDEuMTA3MiwxLjExOTYsMS4xMDUsMS4wODgyLDEuMDkxMywxLjA4NDgsMS4wOTE3LDEuMDkzOCwxLjA5MjYsMS4wODc0LDEuMDg5MiwxLjEwMTEsMS4xMDYxLDEuMDk3OCwxLjA5NzUsMS4wOTk4LDEuMDk1NCwxLjA5OTgsMS4wOTcxLDEuMTAyOCwxLjEsMS4xMTEsMS4xMDUsMS4xMTA4LDEuMTA2LDEuMTA1NF19XSwiY3VycmVuY3kiOnsiY29kZSI6IlVTRCIsInN5bWJvbCI6IiQiLCJyYXRlIjoxfSwiZXJyb3IiOm51bGx9"}},"time_used":85,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":85,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/staticon2.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.538Z","timestamp":1785158432538,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/staticon2.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=gTQ2wwkJhUwPtkSry7Lk5T6hjL%2B6c%2FjEjPDhB%2BnHutgK%2BcrUL5xFpgFDB8HJwKw%2BR4suF3cOgl8BAhLYgowQLBpvKwsgpqok%2B1ivpzLbjxJfcGs1p7iKgD8m4DYg3puTtAfe2Q%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b6c7456b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 4651\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"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":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":4651,"size_decoded":5419,"mime_type":"image/png","magic":"PNG image data, 124 x 124, 8-bit/color RGBA, non-interlaced","md5":"2aa0d1c636c9e59e91b75c09fec725b4","sha1":"24dadfacd9963eeb8c9f9f7725bb3d4e244b6c19","sha256":"7efe909b9552544fb1228632c9eb3daff1f5a2bc9ef602cabebb00dbe5bdaf28","sha512":"7b9d3ff1e73859ed197bec5108b5c03945d84c09a066c75268ec813c1b7108e00079d081ab574fa653e2db6c18687eff13129839f3eaf74aab315f8f8931259d","ssdeep":"96:yY2MqA7JxGtiEOqr31KDSW6E4/rrRbIPemZMz:y4JflK+SPj/rrRiWz","tlshash":"d5a17e1eecb1c42866dd788612fde125d1435581ce45d22e1dc8ee2b79f73622f580ee","first_seen":"2024-09-19T20:45:30.941534Z","last_seen":"2026-07-27T13:21:39.120116Z","times_seen":17,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAHwAAAB8CAYAAACrHtS+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MkRBODY2MEU4NUQ0MTFFOUJFQzJFMkNFREU5QUQ2QTIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MkRBODY2MEY4NUQ0MTFFOUJFQzJFMkNFREU5QUQ2QTIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoyREE4NjYwQzg1RDQxMUU5QkVDMkUyQ0VERTlBRDZBMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoyREE4NjYwRDg1RDQxMUU5QkVDMkUyQ0VERTlBRDZBMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PlZ+opkAAA6fSURBVHja7F0JdBRF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"}},"time_used":14,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":14,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coin-images.coingecko.com/coins/images/1/large/bitcoin.png?1696501400","fqdn":"coin-images.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"172.67.142.173","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.037Z","timestamp":1785158433037,"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":"coin-images.coingecko.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 11 Jun 2026 22:42:48 GMT","end":"Wed, 09 Sep 2026 23:41:15 GMT"},"fingerprint":{"sha1":"7A:6C:D0:D5:FD:4F:F2:F6:0E:21:8F:DB:FC:C2:6A:FB:03:26:BA:A8","sha256":"8F:4C:5D:49:64:66:ED:34:00:50:8C:D4:D9:03:C8:38:40:42:53:9D:67:B3:CD:AA:9E:0E:D5:41:02:8E:46:BA"}}},"request":{"raw":"GET /coins/images/1/large/bitcoin.png?1696501400 HTTP/1.1\r\nHost: coin-images.coingecko.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nx-amz-id-2: acfy4yV0hNGDZyfoIOBuAcpZ830diCRSUHcw7R7Y15TMkuSwLz169JCJW401UG51dQimFeY3Pl8=\r\nx-amz-request-id: XJT10ZHWT65SDYTK\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\nx-amz-replication-status: COMPLETED\r\nlast-modified: Wed, 29 May 2024 02:28:22 GMT\r\netag: \"565e8c524f6da22928811f836d0b92a2\"\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: K_Yd_oAsiQpaEoTt9rotaTCh6C_AUMdt\r\naccept-ranges: bytes\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\nserver: cloudflare\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-polished: ok, orig_size=12242\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=kFn1GJJfHDRObtSUoY6kiuRF0btHs80ZsK1a8xPkLARoChFdsvTsc7E5loLSGVzi8XfB9vcBiBsev2BhLeBmgylQrp8wGpoxPU4GrIHHB5CUbYGDEHFWx5IzFidu8cBxxRTRhLfsmDCnl82O\"}]}\r\npriority: u=4,i\r\ncf-bgj: imgq:85,h2pri\r\nage: 1764\r\ncf-ray: a21bf12e9ec449c5-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 9454\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":9454,"size_decoded":10455,"mime_type":"image/png","magic":"PNG image data, 250 x 250, 8-bit/color RGBA, non-interlaced","md5":"66a88a80de5eed33ed8583255445b6c4","sha1":"6d934c7f34286a0344dfbfa63c9ae12b34b5812a","sha256":"39d2790e598859909bf6cb1ed16377e3b220f7e8f2152ca733f70f28abb969b5","sha512":"4c621d0562ae0ecf2be57889fdc0710f9a7baef55514ce3d32f990359e6d2366dbe2c0fe41ab800d5840ea33da5c2d5aaa0fe513274ab58111008e6779e6abf9","ssdeep":"192:dItEpiWFaNPITJaSaLLg+1bslrPN8dUWCspKo8GtRlUV1QQRwD:9GHlvgTpNbcKo8GtRlUVWZD","tlshash":"b412bf52bb7469abfd7223332a2f355f990619d60895b0405c6b8fb31dc3da9f11730a","first_seen":"2025-04-01T12:02:22.596262Z","last_seen":"2026-08-10T18:43:15.359722Z","times_seen":858,"resource_available":false,"data":"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"}},"time_used":33,"timings":{"blocked":-1,"dns":3,"connect":11,"send":0,"wait":9,"receive":9,"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/4ekOcDG2D8E","date":"2026-07-27T13:20:34.367Z","timestamp":1785158434367,"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: 1815\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":1815,"data":"[\"O43z0dpjhgX20SCx4KAo\",\"$dOs5649RAAYuiqQtDoregOfHaBEp_LWnAEABEArZ1BOmT-6xSsAWnxirLDxZFErws4Pf0sVkPYSjvA3-6_SiTURCI4K2nTBI-dglww4Uqh-h4FbzX5YTI0vmngAAAQzOAAAAFfQBB-IAUlGcDAfoQ9zIkRj4V0qGL-ZWnj2WGrsG_9Wh6x18xqAlPTxo2jDanLkijjWWj8jx9xDuKVuTBTs6QyebZOt2FckQBEUmppjy8NoVnbAATZWZPR0FBH33Majo_JMLe-R5c5yQ-8hhRD44WZBBhAxo-1tA7xjtY8MtWg33R6GT_bLhD8yVGnE66XFz_VNaeFgwAPbUI4oswCzl8MMWsYldrVQCrrD4m-ibPiYEfF19_MoDTaXgbG41dL20LCQczbT7meEWdS_J2T5rRJSVWDXRWb-KEuZzQv89760B8jPu_eMkc5j458Q92xtutHW9jfaXADjY8BkDzfoDOzwOhAQadjIxFYNm7U79mKbNqoTLF5FRmwrzfVLiroq1L77ubVaykL0G3RsA_s7WBNHIU6P488LXP3Zio463DpAU6-Kj6QQk5ifUurRUN6HrYev1o9Py6TGKFnyk6Rpkzcasr2tS_GMiFNQAXFAB3sB8DV7KtAd3AAGRH7VPz_oaj0CTm3epYs5hnA8-HRuUVesnlsK8WODzdsYqnuh4nNWWeAmDEfKnkCFgyO9wEYG0WJ9dX5IMUK-S2L_zTIJYZLbCbOuIdMNVGcbrMKCfg_ZabffGirurLvHjL5ifFeqQP_l2D3e7frwwzjrNFBPv7pvYLekZLdkEw-xzzTVr8X3D0nLJYGj-QjrBUebkUDZC0DmiTEbCtE9nmSBz1SOo2YpvWcMXysOvHAzOSOYnMPvk7555kGCncOwcrVA4n685P9RxZ_-GhsAlltx33lLzqAymFCG5ngX5KXCiEn2w-EHiL6_f8pmS06Mq6EOiPg4nqOIY-pv4qzivbyBs9kgaaH2zzBJxlWqOD5lzs9r2xbOpsAT3TGVM7H5B3-yBXkPVv8ntVcRict_efOK0RMpJkwKMeNzeuKWyuqJppL6f3KMbh9ayj1PWznB_napNLabMQQsuAfWxYIajqRnN9rChLKv6zCGHqsNYiE7GczbejhAqe_nae8c8J_NAJznEykLNbOYA31q-naIZZR8CQdtC0-mBbTDu9DYkbnzghS0DRkx7HyUW2dxucavaUtkeoWda74FK9ewPWl5FV9LTN4o_88BxqdXzBsu_HiMiD0X-WGxxxKmIt1zAak6itmNLkZL2CayI8LAfWuY5cg0qTC3TUr0jtW0HfwfW-ZNJDSbGRwqFG5oVLulBlotHsDLZDxRxzgAKFsP0D_u7MDcZWHls-yruaqQ1NHZC_D_oyvFJMI2IPzO9wMzDw-mqTh8QWHEUoZrtExhKItLkZH1oJ3XZzTV0MRGr4nfCv42cPtV_wv-787Ns00tijl2YDC4xjLMjGuMsIV77IJL6l5Glpuowl9vn2Feu4rrnbX94HwNdz14QFkBvjGg6vs50rOAs8diqzbKC_IavgA7fpD19OmcoriYQU84wRBc-pJepOc9mCVMQwqxmHPCqD-HPzURfkDuHdOahvrq3sv7u5ZGzebNysnn3wGLl9U_n4NX7Q4IKTIunFVgz6UtOxIuP9sLvd20y_HvP9lzNUgNryTtKAHC_vltWuJ4NM-YG5zwXlmdTMJ1VUsod2J5rub_r6RK-SpXsuYwkO697eHYt3CPDn2-d_Im9S2Ois9hC0B6Kq8GDZmkySMebRMTz5sU\"]"}},"response":{"raw":"HTTP/2 200 \r\ncontent-type: application/json+protobuf; charset=UTF-8\r\nvary: Origin, X-Origin, Referer\r\ncontent-encoding: gzip\r\ndate: Mon, 27 Jul 2026 13:20:34 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":"0caf251f2d62be99073ec1fdb59a99f6","sha1":"ce209b33ae29025f6c37d899c2600cef99af85b8","sha256":"c9f190fba9991b796cece73fedc4cf3a812a61d53d89039147fb3295dc1a2b61","sha512":"67a86432c0db18a35713f9439617338060e1374fcccc6f31cf50d45b61d45f8a5f9d220db95314bae16f12c38abf12d0f60f5b70deb25061eb6e6001a2574392","ssdeep":"","tlshash":"97b0123620019dec114004223bb4b559124d07f07461f660f059f2aa8167c047d432cf","first_seen":"2026-07-27T13:21:25.807446Z","last_seen":"2026-07-27T13:21:25.807446Z","times_seen":1,"resource_available":false,"data":"WyJRWFpmT25XMmFyRVhjeHFGU2JSSjZkM0JqaDBGY0hmekZIb1oraEtGNW43aHdZRHh4OTcvVmVzMUlZUE12dFNXMjhZWEthbjFUVFZ4eU9rUXhwVCsiLDQzMjAwLDEwMF0="}},"time_used":22,"timings":{"blocked":0,"dns":0,"connect":0,"send":1,"wait":21,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/assets/main-B-VHc1K4.js","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:43.323Z","timestamp":1785158443323,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"1857279285.rsc.cdn77.org","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 14:34:45 GMT","end":"Wed, 02 Sep 2026 14:34:44 GMT"},"fingerprint":{"sha1":"92:5D:A0:17:13:91:72:7B:B6:8C:6A:7D:A9:55:7F:C8:A9:47:11:99","sha256":"0E:FC:E3:4D:AD:32:B2:11:05:DC:E3:CD:CC:9E:10:DC:C5:2D:9E:1C:D7:C1:9C:00:92:15:43:C5:B7:0B:3A:D6"}}},"request":{"raw":"GET /assets/main-B-VHc1K4.js HTTP/1.1\r\nHost: widget-v3.smartsuppcdn.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://uniz-coinzltd.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 13:20:43 GMT\r\ncontent-type: application/javascript\r\naccess-control-allow-origin: *\r\ncache-control: max-age=31536000, public, immutable\r\netag: W/\"6a670743-3f99\"\r\nexpires: Tue, 27 Jul 2027 07:27:08 GMT\r\nlast-modified: Mon, 27 Jul 2026 07:22:43 GMT\r\nx-77-nzt: k03Vk6pq5LQx+ZGfKOAxqEBI3XrkoyBpCUtEb5zNZ2SJX4JaLke3Qk/o5jVysesdghbpEeQ\r\nx-77-nzt-ray: fdb54123304fbe6c2b5b676a6dee7d13\r\nx-77-cache: HIT\r\nx-77-age: 21183\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nserver: CDN77-Turbo\r\nx-77-pop: stockholmSE\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"CDN77","description":"CDN77 is a content delivery network (CDN).","website":"https://www.cdn77.com","common_platform_enumeration":"","icon":"CDN77.png","categories":["CDN"]}],"data":{"size":16281,"size_decoded":6834,"mime_type":"application/javascript","magic":"Java source, ASCII text, with very long lines (15873)","md5":"44df6240c839beea4111582dddf02793","sha1":"4b4dd2241d5ff95eba46fb8893058404630825cd","sha256":"a4019ee0c737ef5d214e80e5a87a5a6e839ff2cf4e286cdad9ed6ff397eba250","sha512":"2f30c45b38eeb4a1900f295893fa30362dce2af015cb8eac6b997795ff4b72db55a92d8d38bb7a8cc8f529c612906aa9d2a2a41539c6a67052ae569733ff7e02","ssdeep":"384:Xrgi5RFMkSjJOE/0BW2rvZZ795P6nrnBOVmPCRkXQbpaIF2x:XEizlSjJOEiWYPR5P6rnBOVmycQbpaIi","tlshash":"6c72d7742700783f712f489e15ade546b232c29dd693892d8b2fec0976c5cc0a8b37b9","first_seen":"2026-07-27T07:28:16.135673Z","last_seen":"2026-07-29T06:17:50.042235Z","times_seen":1081,"resource_available":true,"data":"Y29uc3QgX192aXRlX19tYXBEZXBzPShpLG09X192aXRlX19tYXBEZXBzLGQ9KG0uZnx8KG0uZj1bd2luZG93LnBhcmVudC5zbWFydHN1cHAuZ2V0QXNzZXRVcmwoImFzc2V0cy9XaWRnZXRNZXNzZW5nZXItRDFpVlkzTGouanMiKSx3aW5kb3cucGFyZW50LnNtYXJ0c3VwcC5nZXRBc3NldFVybCgiYXNzZXRzL3NoYXJlZC1rYjF5cUhhQS5qcyIpLHdpbmRvdy5wYXJlbnQuc21hcnRzdXBwLmdldEFzc2V0VXJsKCJhc3NldHMvV2lkZ2V0TWVzc2VuZ2VySW5wdXQtREhyNXVId2QuanMiKSx3aW5kb3cucGFyZW50LnNtYXJ0c3VwcC5nZXRBc3NldFVybCgiYXNzZXRzL1dpZGdldFBvcHVwLUJBMWpjSG51LmpzIildKSkpPT5pLm1hcChpPT5kW2ldKTsKaW1wb3J0e0EgYXMgZSxBaSBhcyB0LEFyIGFzIG4sQXQgYXMgcixCIGFzIGksQmkgYXMgYSxDIGFzIG8sQ2kgYXMgcyxEIGFzIGMsRGkgYXMgbCxFIGFzIHUsRWkgYXMgZCxHaSBhcyBmLEdyIGFzIHAsSGkgYXMgbSxIbiBhcyBoLEhyIGFzIGcsSSBhcyBfLElpIGFzIHYsSiBhcyB5LEppIGFzIGIsS2kgYXMgeCxLciBhcyBTLExpIGFzIEMsTSBhcyBlZSxOIGFzIHRlLE5pIGFzIHcsTyBhcyBuZSxPciBhcyByZSxQaSBhcyBpZSxQciBhcyBhZSxQdCBhcyBvZSxSIGFzIHNlLFMgYXMgY2UsU2kgYXMgbGUsVCBhcyB1ZSxUaSBhcyBULFVpIGFzIGRlLFVyIGFzIEUsVmkgYXMgRCxXaSBhcyBmZSxXbiBhcyBwZSxXdCBhcyBtZSxYaSBhcyBPLFhyIGFzIGssWHQgYXMgaGUsWSBhcyBnZSxZaSBhcyBBLFluIGFzIGosWXIgYXMgX2UsWmkgYXMgTSxaciBhcyB2ZSxfIGFzIHllLGEgYXMgYmUsYWEgYXMgTixiIGFzIHhlLGJpIGFzIFAsY2EgYXMgRixkIGFzIFNlLGRpIGFzIENlLGR0IGFzIHdlLGVhIGFzIFRlLGVpIGFzIEksZiBhcyBFZSxmaSBhcyBMLGggYXMgRGUsaGkgYXMgUixpIGFzIHosaWEgYXMgQixqIGFzIE9lLGppIGFzIFYsam4gYXMga2Usa2kgYXMgQWUsa3IgYXMgamUsbCBhcyBNZSxsYSBhcyBOZSxsaSBhcyBILG0gYXMgUGUsbWkgYXMgRmUsbiBhcyBJZSxuYSBhcyBMZSxvIGFzIFUsb2kgYXMgVyxvciBhcyBHLHBpIGFzIEsscSBhcyBSZSxxbiBhcyB6ZSxyIGFzIHEscyBhcyBCZSx0IGFzIFZlLHRhIGFzIEhlLHRpIGFzIEosdSBhcyBVZSx1aSBhcyBZLHcgYXMgWCx3aSBhcyBaLHggYXMgV2UseGkgYXMgR2UseSBhcyBLZSx5aSBhcyBxZX1mcm9tIi4vc2hhcmVkLWtiMXlxSGFBLmpzIjt2YXIgSmU9ZChgPGRpdj48IT48L2Rpdj5gKTtmdW5jdGlvbiBZZShlLHQpe04odCwhMCk7bGV0IG49eChudWxsKSxyPWAke1MoKS5TTUFSVFNVUFBfQVVUT0NSRUFURT09PSExP2cod2luZG93KS5pZDpgc21hcnRzdXBwYH0td2lkZ2V0LWNvbnRhaW5lcmA7aygoKT0+e3cobikmJnAoKS5ib2R5LmFwcGVuZENoaWxkKHcobikpfSksX2UoKCk9PntwKCkuZ2V0RWxlbWVudEJ5SWQocik/LnJlbW92ZSgpfSk7dmFyIGk9SmUoKTtSKGEoaSksKCk9PnQuY2hpbGRyZW4/P05lKSxGKGkpLEooaSxlPT5mKG4sZSksKCk9PncobikpLHYoKCk9PlcoaSxgaWRgLHIpKSxaKGUsaSksQigpfXZhciBYZT1kKGA8aWZyYW1lIGFsbG93ZnVsbHNjcmVlbj0iIiBzY3JvbGxpbmc9Im5vIj48L2lmcmFtZT5gKTtmdW5jdGlvbiBRKGUsdCl7Tih0LCEwKTtsZXQgbj0oKT0+TShjLGAkdGhlbWVDb2xvcmAsciksW3IsaV09TygpLGE9eCh2b2lkIDApLG89eChudWxsKSxsO0MoKCk9Pnt3KG8pJiZ1KHcobykpfSksQygoKT0+e3cobykmJmQobigpKX0pO2xldCB1PWFzeW5jIGU9PntsJiZhd2FpdCBzKGwpLGUmJnQuY29tcG9uZW50JiYobD1HZSh0LmNvbXBvbmVudCx7dGFyZ2V0OmUuYm9keX0pKX0sZD1lPT57dyhvKSYmbmUodyhvKSxlKX0scD1lPT57aWYoIXcobykpcmV0dXJuO2xldCB0PXcobykuY3JlYXRlRWxlbWVudChgc3R5bGVgKTtyZXR1cm4gdC50ZXh0Q29udGVudD1lLHcobykuaGVhZC5hcHBlbmRDaGlsZCh0KSx0fSxtPSgpPT57Zm9yKGxldCBlIG9mIHdpbmRvdy5kb2N1bWVudC5zdHlsZVNoZWV0cyl7bGV0IHQ9YGA7dHJ5e3Q9Wy4uLmUuY3NzUnVsZXNdLm1hcChlPT5lLmNzc1RleHQpLmpvaW4oYGApfWNhdGNoe2NvbnRpbnVlfWlmKCFwKHQpKXJldHVybn19LGg9KCk9PnshdyhhKXx8IXcoYSkuY29udGVudERvY3VtZW50fHwoZihvLHcoYSkuY29udGVudERvY3VtZW50LCEwKSxtKCkpfTtrKGFzeW5jKCk9Pnthd2FpdCBpZSgpLHcoYSk/LmNvbnRlbnREb2N1bWVudCYmdyhhKS5jb250ZW50RG9jdW1lbnQucmVhZHlTdGF0ZT09PWBjb21wbGV0ZWAmJncoYSkuY29udGVudERvY3VtZW50LmRlZmF1bHRWaWV3P2goKTp3KGEpPy5hZGRFdmVudExpc3RlbmVyKGBsb2FkYCxoKX0pLF9lKGFzeW5jKCk9Pnt3KGEpJiZ3KGEpLnJlbW92ZUV2ZW50TGlzdGVuZXIoYGxvYWRgLGgpLGwmJmF3YWl0IHMobCl9KTt2YXIgZz1YZSgpO0ooZyxlPT5mKGEsZSksKCk9PncoYSkpLHYoKCk9PntXKGcsYGlkYCx0LmlkKSxXKGcsYHRpdGxlYCx0LnRpdGxlKSxIKGcsdC5mcmFtZVN0eWxlKX0pLFooZSxnKSxCKCksaSgpfXZhciBaZT1sKGA8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDY0IDY0IiBmaWxsPSJjdXJyZW50Q29sb3IiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIG1lZXQiPjxwYXRoIGQ9Ik02My4xMTMsMTguNTF2LS4xNkM2MC4zMjMsNy4wNSw0NC41ODIsMywzMS45NzIsM1MzLjU4Miw3LC43OTIsMTguNWE2Ni4yMiw2Ni4yMiwwLDAsMCwwLDIwLjQ2YzEuMTgsNC43NCw1LjA1LDguNjMsMTEuMzYsMTEuNDFsLTQsNUEzLjQ3LDMuNDcsMCwwLDAsMTAuODgyLDYxYTMuMzksMy4zOSwwLDAsMCwxLjQ0LS4zMUwyNi44NjIsNTRjMS43OS4xOCwzLjQ5LjI3LDUuMDcuMjcsMTEuMDQuMDQsMjguNDEtNC4wNCwzMS4xOC0xNS40M2E2MC4zMyw2MC4zMywwLDAsMCwwLTIwLjMzWiI+PC9wYXRoPjwvc3ZnPmApO2Z1bmN0aW9uIFFlKGUsdCl7bGV0IG49dmUodCxgaWNvblNpemVgLDMsMTYpO3ZhciByPVplKCk7digoKT0+e1cocixgd2lkdGhgLG4oKSksVyhyLGBoZWlnaHRgLG4oKSl9KSxaKGUscil9ZnVuY3Rpb24gJGUoZSx0KXtOKHQsITApO2xldCBuPXgoITEpO2soKCk9PntmKG4sITApfSk7dmFyIHI9VCgpLGk9RChyKSxhPWU9Pnt2YXIgbj1UKCk7UihEKG4pLCgpPT50LmNoaWxkcmVuPz9OZSksWihlLG4pfTtQKGksZT0+e3cobikmJmUoYSl9KSxaKGUsciksQigpfXZhciBldD1kKGA8ZGl2IGNsYXNzPSJ0cmFuc2Zvcm0gdHJhbnNpdGlvbi10cmFuc2Zvcm0gZHVyYXRpb24tMzAwIGdyb3VwLWhvdmVyOnNjYWxlLTExNSI+PCE+PC9kaXY+YCk7ZnVuY3Rpb24gdHQoZSl7JGUoZSx7Y2hpbGRyZW46KGUsdCk9Pnt2YXIgbj1ldCgpO1FlKGEobikse2ljb25TaXplOjI0fSksRihuKSxLKDMsbiwoKT0+QmUsKCk9Pih7ZGVsYXk6MjAwLGR1cmF0aW9uOjMwMCxzdGFydDouNixvcGFjaXR5Oi44fSkpLFooZSxuKX0sJCRzbG90czp7ZGVmYXVsdDohMH19KX12YXIgbnQ9ZChgPGRpdiBjbGFzcz0icC0xIj48ZGl2IGNsYXNzPSJmbGV4LWNlbnRlciB3LTEyIGgtMTIgYmctd2hpdGUgYmctb3BhY2l0eS0xMCByb3VuZGVkLWZ1bGwiPjwhPjwvZGl2PjwvZGl2PmApO2Z1bmN0aW9uIHJ0KGUpe3ZhciB0PW50KCksbj1hKHQpO3R0KGEobikse30pLEYobiksRih0KSxaKGUsdCl9dmFyIGl0PWQoYDxkaXYgY2xhc3M9ImZsZXgiPjxkaXYgY2xhc3M9ImZsZXgtY2VudGVyIHdoaXRlc3BhY2Utbm93cmFwIHBsLTQgcHItMSI+IDwvZGl2PiA8IT48L2Rpdj5gKTtmdW5jdGlvbiBhdChlLHQpe04odCwhMSk7bGV0IG49KCk9Pk0oaixgJHRgLHIpLFtyLGldPU8oKSxvPWZlKCk7aygoKT0+e2xldCBlPU1hdGguY2VpbCh3KG8pLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoKTtVZS5zZXQoZSl9KSxJKCk7dmFyIHM9aXQoKSxjPWEocyksbD1hKGMsITApO0YoYykscnQobShjLDIpLHt9KSxGKHMpLEoocyxlPT5mKG8sZSksKCk9PncobykpLHYoZT0+e1coYyxgZGF0YS10ZXN0aWRgLEcud2lkZ2V0QnV0dG9uVGV4dCksbGUobCxlKX0sWygpPT5uKCkoYGJ1dHRvbi5ncmVldGluZ2ApXSksWihlLHMpLEIoKSxpKCl9dmFyIG90PWQoYDxkaXYgaWQ9IndpZGdldC1vbmxpbmUtYmFkZ2UiIGNsYXNzPSJhYnNvbHV0ZSBsZWZ0LTAgYm90dG9tLTAgdy0yIGgtMiBwLTEuNSBiZy1ncmVlbi00MDAgcm91bmRlZC1mdWxsIGJvcmRlci0yIGJvcmRlci13aGl0ZSI+PC9kaXY+YCk7ZnVuY3Rpb24gc3QoZSx0KXtOKHQsITEpO2xldCBuPSgpPT5NKGtlLGAkaXNXaWRnZXRPbmxpbmVgLHIpLFtyLGldPU8oKTtJKCk7dmFyIGE9VCgpLG89RChhKSxzPWU9Pnt2YXIgdD1vdCgpO3YoKCk9PlcodCxgZGF0YS10ZXN0aWRgLEcud2lkZ2V0T25saW5lQmFkZ2UpKSxLKDMsdCwoKT0+QmUpLFooZSx0KX07UChvLGU9PntuKCkmJmUocyl9KSxaKGUsYSksQigpLGkoKX12YXIgY3Q9ZChgPGRpdiBpZD0id2lkZ2V0LXVucmVhZC1tZXNzYWdlcy1iYWRnZSIgY2xhc3M9ImFic29sdXRlIHJpZ2h0LTAgdG9wLTAgbWluLXctNSBoLTUgZmxleC1jZW50ZXIgcHgtMSB0ZXh0LXdoaXRlIGJnLXJlZC02MDAgdGV4dC14cyByb3VuZGVkLWZ1bGwgc2hhZG93Ij4gPC9kaXY+YCk7ZnVuY3Rpb24gbHQoZSx0KXtOKHQsITApO2xldCBuPSgpPT5NKGhlLGAkdW5yZWFkTWVzc2FnZXNDb3VudGAsciksW3IsaV09TygpLG89QSgoKT0+bigpPjApO3ZhciBzPVQoKSxjPUQocyksbD1lPT57dmFyIHQ9Y3QoKSxyPWEodCwhMCk7Rih0KSx2KCgpPT57Vyh0LGBkYXRhLXRlc3RpZGAsRy53aWRnZXRVbnJlYWRNZXNzYWdlc0JhZGdlKSxsZShyLG4oKT45OT9gOTkrYDpuKCkpfSksSygzLHQsKCk9PkJlKSxaKGUsdCl9O1AoYyxlPT57dyhvKSYmZShsKX0pLFooZSxzKSxCKCksaSgpfXZhciB1dD1kKGA8ZGl2IGNsYXNzPSJoLWZ1bGwgdy1mdWxsIGZpeGVkIGZsZXgganVzdGlmeS1lbmQgYm9yZGVyLXJvdW5kZWQtZnVsbCI+PGRpdiByb2xlPSJidXR0b24iIGNsYXNzPSJncm91cCBmbGV4LWNlbnRlciB3LWZ1bGwgYmctcHJpbWFyeS1ncmFkaWVudCBiZy1wcmltYXJ5LWdyYWRpZW50LWhvdmVyIHRleHQtcHJpbWFyeS1jb250ZW50IHJvdW5kZWQtZnVsbCBvdmVyZmxvdy1oaWRkZW4gY3Vyc29yLXBvaW50ZXIgY29udGVudC1mb2N1cy1zZWNvbmRhcnkiPjwhPiA8IT48L2Rpdj4gPCE+PC9kaXY+YCk7ZnVuY3Rpb24gZHQoZSxuKXtOKG4sITEpO2xldCBpPSgpPT5NKGosYCR0YCxzKSxvPSgpPT5NKERlLGAkaXNXaWRnZXRCdXR0b25CdWJibGVgLHMpLFtzLGNdPU8oKTtJKCk7dmFyIGw9dXQoKSx1PWEobCk7Vyh1LGB0YWJpbmRleGAsMCk7dmFyIGQ9YSh1KSxmPWU9Pnt0dChlLHt9KX0scD1lPT57YXQoZSx7fSl9O1AoZCxlPT57bygpP2UoZik6ZShwLC0xKX0pLHN0KG0oZCwyKSx7fSksRih1KSxsdChtKHUsMikse30pLEYobCksdihlPT57Vyh1LGBhcmlhLWxhYmVsYCxlKSxXKHUsYGRhdGEtdGVzdGlkYCxHLndpZGdldEJ1dHRvbil9LFsoKT0+aSgpKGBhcmlhTGFiZWwub3BlbkNoYXRgKV0pLHQoYGNsaWNrYCx1LCgpPT5zZSgpKSxWKGBrZXlwcmVzc2AsdSxlPT5lLmtleT09PXIuRW50ZXImJnNlKCkpLFooZSxsKSxCKCksYygpfUFlKFtgY2xpY2tgXSk7dmFyIGZ0PWQoYDxkaXY+PCE+PC9kaXY+YCk7ZnVuY3Rpb24gcHQoZSx0KXtOKHQsITApO2xldCBuPSgpPT5NKFNlLGAkYnV0dG9uRnJhbWVXaWR0aGAscykscj0oKT0+TSh0ZSxgJHNob3VsZFJlbmRlckJ1dHRvbkZyYW1lYCxzKSxpPSgpPT5NKERlLGAkaXNXaWRnZXRCdXR0b25CdWJibGVgLHMpLG89KCk9Pk0oaixgJHRgLHMpLFtzLGNdPU8oKSxsPXgodm9pZCAwKSxkPWU9Pnt3KGwpJiYodyhsKS5zdHlsZS53aWR0aD1gJHtlfXB4YCl9LHt3aWRnZXRCbG9ja2luZ09wdGlvbnM6cH09RS5nZXRPcHRpb25zKCk7QygoKT0+e3cobCkmJmQobigpKX0pO3ZhciBtPVQoKSxoPUQobSksZz1lPT57dmFyIHQ9ZnQoKTtsZXQgbjtxZShhKHQpLCgpPT5pKCl8fG8oKSxlPT57e2xldCB0PUEoWCk7UShlLHtnZXQgY29tcG9uZW50KCl7cmV0dXJuIGR0fSxnZXQgaWQoKXtyZXR1cm4gRy53aWRnZXRCdXR0b25GcmFtZX0sdGl0bGU6YFNtYXJ0c3VwcCB3aWRnZXQgYnV0dG9uYCxnZXQgZnJhbWVTdHlsZSgpe3JldHVybiB3KHQpfX0pfX0pLEYodCksSih0LGU9PmYobCxlKSwoKT0+dyhsKSksTCh0LGU9PktlPy4oZSkpLHYoZT0+e249SCh0LGBib3JkZXItcmFkaXVzOiA5OTk5cHg7IGJveC1zaGFkb3c6IHJnYigwIDAgMCAvIDYlKSAwcHggMXB4IDZweCwgcmdiKDAgMCAwIC8gJHtwPy5saW1pdFNoYWRvdz9gMjAlKSAwcHggMnB4IDEycHhgOmAxMiUpIDBweCAycHggMzJweGB9OyBjb2xvci1zY2hlbWU6IG5vcm1hbDtgLG4sZSksVyh0LGBkYXRhLXRlc3RpZGAsRy53aWRnZXRCdXR0b25GcmFtZSl9LFsoKT0+KHtoZWlnaHQ6dSg1Nil9KV0pLEsoMSx0LCgpPT5VLCgpPT4oe3k6MjAsZGVsYXk6MTUwLGR1cmF0aW9uOjMwMH0pKSxLKDIsdCwoKT0+YmUsKCk9Pih7ZHVyYXRpb246MjUwfSkpLFooZSx0KX07UChoLGU9PntyKCkmJmUoZyl9KSxaKGUsbSksQigpLGMoKX12YXIgJD1mdW5jdGlvbihlKXtyZXR1cm4gZVtlLkluaXRpYWxpemVkPTBdPWBJbml0aWFsaXplZGAsZVtlLkxvYWRpbmc9MV09YExvYWRpbmdgLGVbZS5TdWNjZXNzPTJdPWBTdWNjZXNzYCxlW2UuRXJyb3I9M109YEVycm9yYCxlfSh7fSksbXQ9bmV3IE1hcCxodD1hc3luYyBlPT57bGV0IHQ9KGF3YWl0IGUoKSkuZGVmYXVsdDtyZXR1cm4gbXQuc2V0KGUsdCksdH07ZnVuY3Rpb24gZ3QoZSx0KXtOKHQsITApO2xldCBuPXZlKHQsYGRlbGF5YCwzLDIwMCkscj14KGRlKCQuSW5pdGlhbGl6ZWQpKSxpPXgodm9pZCAwKSxhPXgodm9pZCAwKSxvPXgodm9pZCAwKSxzPUEoKCk9PncoaSkpLGM9KCk9Pnt3aW5kb3cuY2xlYXJUaW1lb3V0KHcobykpfSxsPWFzeW5jKCk9PntjKCksZihhLHZvaWQgMCksZihpLHZvaWQgMCksbigpPjA/KGYociwkLkluaXRpYWxpemVkLCEwKSxmKG8sd2luZG93LnNldFRpbWVvdXQoKCk9PntmKHIsJC5Mb2FkaW5nLCEwKX0sbigpKSwhMCkpOmYociwkLkxvYWRpbmcsITApO3RyeXtmKGksYXdhaXQgaHQodC5sb2FkZXIpLCEwKSxmKHIsJC5TdWNjZXNzLCEwKX1jYXRjaChlKXtpZihmKHIsJC5FcnJvciwhMCksZSBpbnN0YW5jZW9mIEVycm9yKWYoYSxlLCEwKTtlbHNlIHRocm93IGV9YygpfTttdC5oYXModC5sb2FkZXIpPyhmKHIsJC5TdWNjZXNzLCEwKSxmKGksbXQuZ2V0KHQubG9hZGVyKSwhMCkpOmsoKCk9PntsKCl9KTt2YXIgdT1UKCksZD1EKHUpLHA9ZT0+e3ZhciBuPVQoKTtSKEQobiksKCk9PnQuZXJyb3IsKCk9Pih7ZXJyb3I6dyhhKX0pKSxaKGUsbil9LG09ZT0+e3ZhciBuPVQoKTtSKEQobiksKCk9PnQubG9hZGluZyksWihlLG4pfSxoPWU9Pnt2YXIgdD1UKCk7RmUoRCh0KSwoKT0+dyhzKSwoZSx0KT0+e3QoZSx7fSl9KSxaKGUsdCl9O1AoZCxlPT57dyhyKT09PSQuRXJyb3ImJnQuZXJyb3I/ZShwKTp3KHIpPT09JC5Mb2FkaW5nP2UobSwxKTp3KHIpPT09JC5TdWNjZXNzJiZlKGgsMil9KSxaKGUsdSksQigpfXZhciBfdD0oKT0+YWUoKCk9PmltcG9ydChgLi9XaWRnZXRNZXNzZW5nZXItRDFpVlkzTGouanNgKSxfX3ZpdGVfX21hcERlcHMoWzAsMSwyXSksaW1wb3J0Lm1ldGEudXJsKSx2dD1lPT57dmFyIHQ9YnQoKSxuPWEodCkscj1hKG4pO3EoYShyKSx7c2l6ZTozMn0pLEYocik7dmFyIGk9bShyLDIpLG89YShpKTtxKG8se3NpemU6MzJ9KTt2YXIgcz1tKG8sMik7cShzLHtzaXplOjMyfSkscShtKHMsMikse3NpemU6MzJ9KSxGKGkpLEYobik7dmFyIGM9bShuLDIpLGw9YShjKTtxKGEobCkse3NpemU6NDR9KSxGKGwpO3ZhciB1PW0obCwyKSxkPWEodSk7eihkLHtoZWlnaHQ6MjAsd2lkdGg6MjcwfSkseihtKGQsMikse2hlaWdodDoyMCx3aWR0aDoxMjJ9KSxGKHUpLEYoYyk7dmFyIGY9bShjLDIpLHA9YShmKTtxKGEocCkse3NpemU6Mjh9KSxGKHApO3ZhciBoPW0ocCwyKTt6KGEoaCkse2hlaWdodDoxMTIsd2lkdGg6Mjk1LHJvdW5kZWRTdHlsZTpgcm91bmRlZC02YH0pLEYoaCksRihmKTt2YXIgZz1tKGYsMiksXz1hKGcpO3ooXyx7aGVpZ2h0OjMyLHdpZHRoOjI5NX0pO3ZhciB2PW0oXywyKTt6KHYse2hlaWdodDozMix3aWR0aDoxNDh9KSx6KG0odiwyKSx7aGVpZ2h0OjMyLHdpZHRoOjIyNH0pLEYoZyksRih0KSxaKGUsdCl9LHl0PShlLHQpPT57bGV0IG49KCk9PnQ/LigpLmVycm9yO3ZhciByPXh0KCksaT1tKGEociksMiksbz1hKGksITApO0YoaSksRihyKSx2KCgpPT5sZShvLG4oKSkpLFooZSxyKX0sYnQ9ZChgPGRpdiBjbGFzcz0iaC1mdWxsIHAtMiBiZy13aGl0ZSIgaWQ9IlRPRE8gdGVzdCI+PGRpdiBjbGFzcz0iZmxleCBqdXN0aWZ5LWJldHdlZW4iPjxkaXYgY2xhc3M9ImZsZXgiPjwhPjwvZGl2PiA8ZGl2IGNsYXNzPSJmbGV4IHNwYWNlLXgtMiI+PCE+IDwhPiA8IT48L2Rpdj48L2Rpdj4gPGRpdiBjbGFzcz0iZmxleCBtdC0yIj48ZGl2IGNsYXNzPSJmbGV4IG1sLTEgbXItMiI+PCE+PC9kaXY+IDxkaXYgY2xhc3M9ImZsZXgtYm90dG9tIHNwYWNlLXktMiI+PCE+IDwhPjwvZGl2PjwvZGl2PiA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWJhc2VsaW5lIG10LTgiPjxkaXYgY2xhc3M9ImZsZXggbWwtMSBtci0yIj48IT48L2Rpdj4gPGRpdiBjbGFzcz0ic3BhY2UteS0yIj48IT48L2Rpdj48L2Rpdj4gPGRpdiBjbGFzcz0iZmxleCBmbGV4LWNvbCBpdGVtcy1lbmQgc3BhY2UteS01IG10LTggbXItMSI+PCE+IDwhPiA8IT48L2Rpdj48L2Rpdj5gKSx4dD1kKGA8ZGl2IGNsYXNzPSJoLWZ1bGwgcC00IGJnLXdoaXRlIHRleHQtcmVkLTUwMCI+PGRpdiBjbGFzcz0idGV4dC1sZyBmb250LWJvbGQiPkZhaWxlZCB0byBsb2FkIHdpZGdldDwvZGl2PiA8ZGl2IGNsYXNzPSJ0ZXh0LXhzIj4gPC9kaXY+PC9kaXY+YCk7ZnVuY3Rpb24gU3QoZSl7Z3QoZSx7Z2V0IGxvYWRlcigpe3JldHVybiBfdH0sZGVsYXk6MCxnZXQgZXJyb3IoKXtyZXR1cm4geXR9LGdldCBsb2FkaW5nKCl7cmV0dXJuIHZ0fX0pfXZhciBDdD1kKGA8ZGl2PjwhPjwvZGl2PmApO2Z1bmN0aW9uIHd0KGUsdCl7Tih0LCEwKTtsZXQgcj0oKT0+TShqZSxgJGlzRnVsbFNjcmVlbkVuYWJsZWRgLGwpLG89KCk9Pk0oUGUsYCRpc01lc3NlbmdlckZyYW1lRXhwYW5kZWRgLGwpLHM9KCk9Pk0obixgJGlzTW9iaWxlRGV2aWNlYCxsKSxjPSgpPT5NKGksYCRzaG91bGRSZW5kZXJNZXNzZW5nZXJGcmFtZWAsbCksW2wsZF09TygpLG09eCh2b2lkIDApLGc9YE1vYmlsZVdpZGdldE1lc3Nlbmdlck9wZW5gLF89KGUsdCk9PntpZighdyhtKSlyZXR1cm47bGV0e3dpZGdldEJsb2NraW5nT3B0aW9uczpufT1FLmdldE9wdGlvbnMoKSx7d2lkdGg6cixoZWlnaHQ6aX09dWUoZSx0KTt3KG0pLnN0eWxlLm1heEhlaWdodD1oKGkpP2k6dShpKSx3KG0pLnN0eWxlLndpZHRoPWgocik/cjp1KHIpLHcobSkuc3R5bGUuaGVpZ2h0PWV8fG4/LmhlYWRsZXNzTW9kZT9gMTAwJWA6YGNhbGMoMTAwJSAtIDQwcHgpYH07QygoKT0+e3cobSkmJl8ocigpLG8oKSl9KTtsZXQgeT14KCExKTtDKCgpPT57aWYocygpKXtpZihjKCkmJiF3KHkpKXtsZXQgZT1wKCkuY3JlYXRlRWxlbWVudChgc3R5bGVgKTtlLnRleHRDb250ZW50PWAqIHtvdmVyZmxvdzogaGlkZGVufWAsZS5jbGFzc05hbWU9ZyxwKCkuaGVhZC5hcHBlbmRDaGlsZChlKSxmKHksITApfWlmKCFjKCkmJncoeSkpe2xldCBlPXAoKS5oZWFkLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoZyk7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0KyspcCgpLmhlYWQucmVtb3ZlQ2hpbGQoZVt0XSk7Zih5LCExKX19fSk7dmFyIGI9VCgpLFM9RChiKSxlZT1lPT57dmFyIHQ9Q3QoKTtIKHQsYGAse30se3RyYW5zaXRpb246YG1heC1oZWlnaHQgMjUwbXMgZWFzZS1pbi1vdXQsIHdpZHRoIDI1MG1zIGVhc2UtaW4tb3V0YCxvdmVyZmxvdzpgaGlkZGVuYH0pO3ZhciBuPWEodCk7e2xldCBlPUEoWCk7UShuLHtnZXQgY29tcG9uZW50KCl7cmV0dXJuIFN0fSxnZXQgaWQoKXtyZXR1cm4gRy53aWRnZXRNZXNzZW5nZXJGcmFtZX0sdGl0bGU6YFNtYXJ0c3VwcCB3aWRnZXQgbWVzc2VuZ2VyYCxnZXQgZnJhbWVTdHlsZSgpe3JldHVybiB3KGUpfX0pfUYodCksTCh0LChlLHQpPT54ZT8uKGUsdCksciksSih0LGU9PmYobSxlKSwoKT0+dyhtKSksdigoKT0+Vyh0LGBkYXRhLXRlc3RpZGAsRy53aWRnZXRNZXNzZW5nZXJGcmFtZSkpLEsoMSx0LCgpPT5VLCgpPT4oe3k6MjAsZHVyYXRpb246MjAwfSkpLEsoMix0LCgpPT5VLCgpPT4oe3k6MTAsZHVyYXRpb246MTUwfSkpLFooZSx0KX07UChTLGU9PntjKCkmJmUoZWUpfSksWihlLGIpLEIoKSxkKCl9dmFyIFR0PSgpPT5hZSgoKT0+aW1wb3J0KGAuL1dpZGdldFBvcHVwLUJBMWpjSG51LmpzYCksX192aXRlX19tYXBEZXBzKFszLDEsMl0pLGltcG9ydC5tZXRhLnVybCksRXQ9ZT0+e3ZhciB0PUR0KCksbj1hKHQpO3Eobix7c2l6ZTo0NH0pO3ZhciByPW0obiwyKSxpPWEocik7eihpLHtoZWlnaHQ6MjAsd2lkdGg6MjcwfSk7dmFyIG89bShpLDIpO3oobyx7aGVpZ2h0OjIwLHdpZHRoOjI3MH0pLHoobShvLDIpLHtoZWlnaHQ6MjAsd2lkdGg6MTIyfSksRihyKSxGKHQpLFooZSx0KX0sRHQ9ZChgPGRpdiBjbGFzcz0iaC1mdWxsIHAtMiBiZy13aGl0ZSI+PCE+IDxkaXYgY2xhc3M9Im10LTQgc3BhY2UteS0yIj48IT4gPCE+IDwhPjwvZGl2PjwvZGl2PmApO2Z1bmN0aW9uIE90KGUpe2d0KGUse2dldCBsb2FkZXIoKXtyZXR1cm4gVHR9LGRlbGF5OjAsZ2V0IGxvYWRpbmcoKXtyZXR1cm4gRXR9fSl9dmFyIGt0PWQoYDxkaXY+PCE+PC9kaXY+YCk7ZnVuY3Rpb24gQXQoZSx0KXtOKHQsITApO2xldCBuPSgpPT5NKHllLGAkcG9wdXBGcmFtZUhlaWdodGAsbykscj0oKT0+TShFZSxgJGhhc1BvcHVwRnJhbWVIb3ZlcmAsbyksaT0oKT0+TShPZSxgJHNob3VsZFJlbmRlclBvcHVwRnJhbWVgLG8pLFtvLHNdPU8oKSxjPXgodm9pZCAwKSxsPWU9Pnt3KGMpJiYodyhjKS5zdHlsZS5tYXhIZWlnaHQ9YCR7ZX1weGApfSx7d2lkZ2V0QmxvY2tpbmdPcHRpb25zOmR9PUUuZ2V0T3B0aW9ucygpO0MoKCk9Pnt3KGMpJiZsKG4oKSl9KTtsZXQgcD1BKCgpPT5yKCk/LjI4Oi4xNik7dmFyIG09VCgpLGg9RChtKSxnPWU9Pnt2YXIgdD1rdCgpO2xldCBuO3ZhciByPWEodCk7e2xldCBlPUEoWCk7UShyLHtnZXQgY29tcG9uZW50KCl7cmV0dXJuIE90fSxnZXQgaWQoKXtyZXR1cm4gRy53aWRnZXRQb3B1cEZyYW1lfSx0aXRsZTpgU21hcnRzdXBwIHdpZGdldCBwb3B1cGAsZ2V0IGZyYW1lU3R5bGUoKXtyZXR1cm4gdyhlKX19KX1GKHQpLEoodCxlPT5mKGMsZSksKCk9PncoYykpLEwodCxlPT5jZT8uKGUpKSx2KGU9PntuPUgodCxgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0MHB4KTsgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2UtaW4tb3V0LCBtYXgtaGVpZ2h0IDI1MG1zIGVhc2UtaW4tb3V0YCxuLGUpLFcodCxgZGF0YS10ZXN0aWRgLEcud2lkZ2V0UG9wdXBGcmFtZSl9LFsoKT0+KHt3aWR0aDp1KDMwMCksImJvcmRlci1yYWRpdXMiOnUoMjApLG92ZXJmbG93OmBoaWRkZW5gLCJib3gtc2hhZG93IjpgcmdiYSgwLCAwLCAwLCAke2Q/LmxpbWl0U2hhZG93P2AwLjIpIDBweCAzcHggMTJweGA6YCR7dyhwKX0pIDBweCAzcHggMTZweGB9YH0pXSksSygxLHQsKCk9PlUsKCk9Pih7eToyMCxkZWxheTozMDAsZHVyYXRpb246NDAwfSkpLEsoMix0LCgpPT5VLCgpPT4oe3k6MTAsZHVyYXRpb246NDAwfSkpLFooZSx0KX07UChoLGU9PntpKCkmJmUoZyl9KSxaKGUsbSksQigpLHMoKX12YXIganQ9ZChgPGRpdiBjbGFzcz0iZmxleCBwLTIiPjxkaXY+PC9kaXY+IDxkaXY+PC9kaXY+IDxkaXY+PC9kaXY+PC9kaXY+YCk7ZnVuY3Rpb24gTXQoZSx0KXtsZXQgbj12ZSh0LGBzaXplYCwzLGBtZGApLHI9dmUodCxgY29sb3JgLDMsYGJsYWNrYCksaT1BKCgpPT50Lml0ZXJhdGlvbnM/P2BpbmZpbml0ZWApO3ZhciBvPWp0KCkscz1hKG8pO2xldCBjO3ZhciBsPW0ocywyKTtsZXQgdTt2YXIgZD1tKGwsMik7bGV0IGY7RihvKSx2KCgpPT57WShzLDEsYHR5cGluZy1pbmRpY2F0b3IgJHtuKCl9IGluZGljYXRvci1jb2xvci0ke3IoKX0gYW5pbWF0ZS10eXBpbmdgLGBzdmVsdGUtczQweGdrYCksYz1IKHMsYGAsYyx7ImFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQiOncoaSl9KSxZKGwsMSxgdHlwaW5nLWluZGljYXRvciAke24oKX0gaW5kaWNhdG9yLWNvbG9yLSR7cigpfSB0eXBpbmctaW5kaWNhdG9yLXNlY29uZCBhbmltYXRlLXR5cGluZ2AsYHN2ZWx0ZS1zNDB4Z2tgKSx1PUgobCxgYCx1LHsiYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCI6dyhpKX0pLFkoZCwxLGB0eXBpbmctaW5kaWNhdG9yICR7bigpfSBpbmRpY2F0b3ItY29sb3ItJHtyKCl9IHR5cGluZy1pbmRpY2F0b3ItdGhpcmQgYW5pbWF0ZS10eXBpbmdgLGBzdmVsdGUtczQweGdrYCksZj1IKGQsYGAsZix7ImFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQiOncoaSl9KX0pLFooZSxvKX12YXIgTnQ9ZChgPGRpdiBjbGFzcz0iZmxleC1jZW50ZXIgaC1mdWxsIGJnLXdoaXRlIHJvdW5kZWQtbGciPjwhPjwvZGl2PmApO2Z1bmN0aW9uIFB0KGUpe3ZhciB0PU50KCk7TXQoYSh0KSx7aXRlcmF0aW9uczoyfSksRih0KSxaKGUsdCl9dmFyIEZ0PWQoYDxkaXY+PCE+PC9kaXY+YCk7ZnVuY3Rpb24gSXQoZSx0KXtOKHQsITEpO2xldCBuPSgpPT5NKGVlLGAkc2hvdWxkUmVuZGVyVHlwaW5nRnJhbWVgLHIpLFtyLGldPU8oKSx7d2lkZ2V0QmxvY2tpbmdPcHRpb25zOnN9PUUuZ2V0T3B0aW9ucygpO0koKTt2YXIgYz1UKCksbD1EKGMpLGQ9ZT0+e3ZhciB0PUZ0KCk7bGV0IG47dmFyIHI9YSh0KTt7bGV0IGU9YihYKTtRKHIse2dldCBjb21wb25lbnQoKXtyZXR1cm4gUHR9LGdldCBpZCgpe3JldHVybiBHLndpZGdldFR5cGluZ0ZyYW1lfSx0aXRsZTpgU21hcnRzdXBwIHdpZGdldCB0eXBpbmdgLGdldCBmcmFtZVN0eWxlKCl7cmV0dXJuIHcoZSl9fSl9Rih0KSxMKHQsZT0+bz8uKGUpKSx2KGU9PntuPUgodCxgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpICR7cz8ubGltaXRTaGFkb3c/YDBweCAzcHggMTJweGA6YDBweCAzcHggMTZweGB9OyBib3JkZXItcmFkaXVzOiAyNHB4O2AsbixlKSxXKHQsYGRhdGEtdGVzdGlkYCxHLndpZGdldFR5cGluZ0ZyYW1lKX0sWygpPT4oe2hlaWdodDp1KDQwKSx3aWR0aDp1KDcwKSxvdmVyZmxvdzpgaGlkZGVuYH0pXSksSygxLHQsKCk9PlUsKCk9Pih7eToyMCxkZWxheTozMDAsZHVyYXRpb246NDAwfSkpLEsoMix0LCgpPT5VLCgpPT4oe3k6MTAsZHVyYXRpb246MjUwfSkpLFooZSx0KX07UChsLGU9PntuKCkmJmUoZCl9KSxaKGUsYyksQigpLGkoKX12YXIgTHQ9TGUobnVsbCksUnQ9VGUoW0x0XSwoW2VdKT0+ISFlKSx6dD1kKGA8aW1nIGNsYXNzPSJtLWF1dG8gbWF4LWgtZnVsbCBtYXgtdy1mdWxsIHNlbGVjdC1ub25lIGJnLWJsYWNrIiB3aWR0aD0iYXV0byIgaGVpZ2h0PSJhdXRvIi8+YCksQnQ9ZChgPHZpZGVvIGNvbnRyb2xzPSIiIGNsYXNzPSJtLWF1dG8gbWF4LWgtZnVsbCBtYXgtdy1mdWxsIGJnLWJsYWNrIG9iamVjdC1jb250YWluIj48dHJhY2sga2luZD0iY2FwdGlvbnMiLz4gPHNvdXJjZS8+PC92aWRlbz5gLDIpLFZ0PWQoYDxkaXYgY2xhc3M9InctZnVsbCBoLWZ1bGwgZmxleCBmbGV4LWNvbCI+PGRpdiBjbGFzcz0iZmxleC1zaHJpbmsgZmxleCBmbGV4LXJvdyB3LWZ1bGwgYmctYmxhY2sgdGV4dC13aGl0ZSI+PGRpdiBjbGFzcz0iZmxleC1ncm93IGZsZXggaXRlbXMtY2VudGVyIHRleHQtbWQgcHgtNCBvdmVyZmxvdy1oaWRkZW4iPjxzcGFuIGNsYXNzPSJ3aGl0ZXNwYWNlLW5vd3JhcCB0ZXh0LWVsbGlwc2lzIG92ZXJmbG93LWhpZGRlbiI+IDwvc3Bhbj48L2Rpdj4gPGRpdiBjbGFzcz0iZmxleC1zaHJpbmsiPjwhPjwvZGl2PjwvZGl2PiA8ZGl2PjwhPjwvZGl2PjwvZGl2PmApO2Z1bmN0aW9uIEh0KGUsbil7TihuLCEwKTtsZXQgcj0oKT0+TShyZSxgJGlzRGVza3RvcGAscyksaT0oKT0+TShMdCxgJHByZXZpZXdlZE1lZGlhYCxzKSxvPSgpPT5NKGosYCR0YCxzKSxbcyxjXT1PKCksbD1BKHIpLHU9ZT0+e2U9PT1gb3ZlcmxheWAmJiF3KGwpfHxMdC5zZXQobnVsbCl9O3ZhciBkPVZ0KCksZj1hKGQpLHA9YShmKSxoPWEocCksZz1hKGgsITApO0YoaCksRihwKTt2YXIgXz1tKHAsMikseT1hKF8pO3tsZXQgZT1BKCgpPT5vKCkoYHRvb2x0aXAuY2xvc2VgKSk7VmUoeSx7b25DbGljazooKT0+dShgYnV0dG9uYCksZ2V0IGljb24oKXtyZXR1cm4gSWV9LGdldCBpY29uRGVzY3JpcHRpb24oKXtyZXR1cm4gdyhlKX0saWNvblNjYWxlOiEwLHNpemU6YHhsYH0pfUYoXyksRihmKTt2YXIgYj1tKGYsMikseD1hKGIpLFM9ZT0+e3ZhciBuPXp0KCk7digoKT0+e1cobixgc3JjYCxpKCk/LmF0dGFjaG1lbnQudXJsKSxXKG4sYGFsdGAsaSgpPy5hdHRhY2htZW50LmZpbGVOYW1lKX0pLHQoYGNsaWNrYCxuLGU9PmUuc3RvcFByb3BhZ2F0aW9uKCkpLFYoYGtleXByZXNzYCxuLCgpPT57fSksWihlLG4pfSxDPWU9Pnt2YXIgbj1CdCgpO24uYXV0b3BsYXk9ITAsbi5sb29wPSEwO3ZhciByPW0oYShuKSwyKTtGKG4pLHYoKCk9Plcocixgc3JjYCxpKCkuYXR0YWNobWVudC51cmwpKSx0KGBjbGlja2AsbixlPT5lLnN0b3BQcm9wYWdhdGlvbigpKSxWKGBrZXlwcmVzc2AsbiwoKT0+e30pLFooZSxuKX07UCh4LGU9PntpKCk/LnR5cGU9PT13ZS5JbWFnZT9lKFMpOmkoKT8udHlwZT09PXdlLlZpZGVvJiZlKEMsMSl9KSxGKGIpLEYoZCksdigoKT0+e2xlKGcsaSgpPy5hdHRhY2htZW50LmZpbGVOYW1lKSxZKGIsMSxDZShbYHJlbGF0aXZlIG92ZXJmbG93LWhpZGRlbiBmbGV4LWdyb3cgZmxleCBpdGVtcy1jZW50ZXIgYmctYmxhY2svODAgei0xMGAscigpP2BwLThgOmBwLTRgXSkpfSksdChgY2xpY2tgLGIsKCk9PnUoYG92ZXJsYXlgKSksVihga2V5cHJlc3NgLGIsKCk9Pnt9KSxLKDEsZCwoKT0+VSwoKT0+KHt5OjIwLGRlbGF5OjMwMCxkdXJhdGlvbjo0MDB9KSksSygyLGQsKCk9PlUsKCk9Pih7eToxMCxkdXJhdGlvbjoyNTB9KSksWihlLGQpLEIoKSxjKCl9QWUoW2BjbGlja2BdKTt2YXIgVXQ9ZChgPGRpdj48IT48L2Rpdj5gKTtmdW5jdGlvbiBXdChlLHQpe04odCwhMSk7bGV0IG49KCk9Pk0oUnQsYCRzaG91bGRSZW5kZXJNZWRpYVByZXZpZXdgLHIpLFtyLGldPU8oKTtJKCk7dmFyIG89VCgpLHM9RChvKSxjPWU9Pnt2YXIgdD1VdCgpO0godCxgYCx7fSx7dHJhbnNpdGlvbjpgbWF4LWhlaWdodCAyNTBtcyBlYXNlLWluLW91dCwgd2lkdGggMjUwbXMgZWFzZS1pbi1vdXRgfSk7dmFyIG49YSh0KTt7bGV0IGU9YigoKT0+WChlPT57ZS5zdHlsZS5wb3NpdGlvbj1gZml4ZWRgfSkpO1Eobix7Z2V0IGNvbXBvbmVudCgpe3JldHVybiBIdH0sZ2V0IGlkKCl7cmV0dXJuIEcud2lkZ2V0SW1hZ2VQcmV2aWV3fSx0aXRsZTpgU21hcnRzdXBwIHdpZGdldCBpbWFnZSBwcmV2aWV3YCxnZXQgZnJhbWVTdHlsZSgpe3JldHVybiB3KGUpfX0pfUYodCksTCh0LGU9PldlPy4oZSkpLHYoKCk9PlcodCxgZGF0YS10ZXN0aWRgLEcud2lkZ2V0SW1hZ2VQcmV2aWV3KSksSygxLHQsKCk9PlUsKCk9Pih7eToyMCxkZWxheToxMDAsZHVyYXRpb246MjUwfSkpLEsoMix0LCgpPT5VLCgpPT4oe3k6MTAsZHVyYXRpb246MjUwfSkpLFooZSx0KX07UChzLGU9PntuKCkmJmUoYyl9KSxaKGUsbyksQigpLGkoKX12YXIgR3Q9ZChgPCE+IDwhPiA8IT4gPCE+IDwhPmAsMSk7ZnVuY3Rpb24gS3QodCxyKXtOKHIsITApO2xldCBpPSgpPT5NKG1lLGAkbGFzdFVucmVhZE1lc3NhZ2VgLG8pLGE9KCk9Pk0oXyxgJGlzTWVzc2VuZ2VyRnJhbWVPcGVuYCxvKSxbbyxzXT1PKCk7aygoKT0+eyhhc3luYygpPT57YXdhaXQgemUoKSxhd2FpdCBwZS5pbml0Q2xpZW50KCl9KSgpfSksQygoKT0+e2koKSYmIWEoKSYmZSgpfSksZ2UoUygpKSxIZShuKSYmeShTKCkpLFllKHQse2NoaWxkcmVuOihlLHQpPT57dmFyIG49R3QoKSxyPUQobik7SXQocix7fSk7dmFyIGk9bShyLDIpO0F0KGkse30pO3ZhciBhPW0oaSwyKTtwdChhLHt9KTt2YXIgbz1tKGEsMik7d3Qobyx7fSksV3QobShvLDIpLHt9KSxaKGUsbil9LCQkc2xvdHM6e2RlZmF1bHQ6ITB9fSksQigpLHMoKX12YXIgcXQ9Zyh3aW5kb3cpO0UuaW5pdChxdC5vcHRpb25zKSxxdC5pbnN0YWxsQXBpKE1lKSxjLnNldFRoZW1lQ29sb3IocXQub3B0aW9ucyksUmUoKSxvZSgpLEdlKEt0LHt0YXJnZXQ6ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYGFwcGApfSk7ZXhwb3J0e010IGFzIG4sTHQgYXMgdH07Ci8vIyBzb3VyY2VNYXBwaW5nVVJMPW1haW4tQi1WSGMxSzQuanMubWFw"}},"time_used":10,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":10,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/play/v21/6aez4K2oVqwIvtU2Hw.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://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.756Z","timestamp":1785158432756,"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/play/v21/6aez4K2oVqwIvtU2Hw.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://uniz-coinzltd.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.com/\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"apps-themes\"\r\nreport-to: {\"group\":\"apps-themes\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/apps-themes\"}]}\r\ntiming-allow-origin: *\r\ncontent-length: 18128\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 06:07:29 GMT\r\nexpires: Fri, 23 Jul 2027 06:07:29 GMT\r\ncache-control: public, max-age=31536000\r\nage: 371583\r\nlast-modified: Tue, 09 Sep 2025 18:58:19 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":18128,"size_decoded":18941,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 18128, version 1.0","md5":"3ed6c0946ff584a90850e13ab42305eb","sha1":"e99ed206e2c7241fa3823c5dfe81b0aab45c4ed7","sha256":"a8824b32c20407f3e05b353ffe9b606670ff4fe88574afcbee6b02e31eab7fc6","sha512":"9e20013b63d609652d9c3e8aac93cc0c4762c89bb1ef2f4b8e38252a83e1233697a474df37e46a9d22b975ac2a58646baf832514283391bb74963087f6319e3f","ssdeep":"384:CiR0I9jEmgp6aFp5oTwXplvOgNCxtRdyYRjl0:CieIQ2TaZOgNYHdy00","tlshash":"ca82d1b1b824a5f1ec0c4dd89096415b6d91fc2c6e0dbbc9a071691cbb21afd26cf4dd","first_seen":"2025-06-03T13:49:57.162731Z","last_seen":"2026-08-16T18:11:05.123351Z","times_seen":1883,"resource_available":false,"data":"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"}},"time_used":71,"timings":{"blocked":-1,"dns":3,"connect":37,"send":0,"wait":24,"receive":3,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.btcwidget.info/widget/liveTx/%23f7f7f7/%23ffffff/%23000000/%231f1d19/%23ffffff/1150/450/7","fqdn":"www.btcwidget.info","domain":"btcwidget.info","tld":"info"},"ip":{"addr":"172.67.170.70","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.799Z","timestamp":1785158432799,"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":"btcwidget.info","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 13:17:51 GMT","end":"Tue, 20 Oct 2026 14:16:09 GMT"},"fingerprint":{"sha1":"E7:CD:36:49:AE:D8:34:F2:63:33:72:87:05:77:72:49:FA:38:50:E8","sha256":"E4:81:A3:19:D6:10:3C:3E:58:38:52:33:31:78:0A:0E:C9:A6:02:B1:C0:EF:EF:6E:DF:38:A3:D0:41:13:F8:31"}}},"request":{"raw":"GET /widget/liveTx/%23f7f7f7/%23ffffff/%23000000/%231f1d19/%23ffffff/1150/450/7 HTTP/1.1\r\nHost: www.btcwidget.info\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://uniz-coinzltd.com/\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 500 \r\nserver: cloudflare\r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: text/html; charset=UTF-8\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\npriority: u=4,i=?0\r\nx-frame-options: SAMEORIGIN\r\nx-content-type-options: nosniff\r\nx-xss-protection: 1; mode=block\r\nreferrer-policy: strict-origin-when-cross-origin\r\ncf-cache-status: DYNAMIC\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=aDz%2BZ%2BtsnepOc3iuCxSqwxxOAXuvbQkgDboNmXYuDz26CuKWlasdhC20vSjjcuScwiFyW9N0AxIPpg2XFBdOs6h%2BTyMGskolHFMqULXVV9Lx8e4evO%2BJR4v7cSFMTmIY1vHUrq8%3D\"}]}\r\ncf-ray: a21bf12d5bbb1ae6-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"500","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":0,"size_decoded":0,"mime_type":"text/html; charset=UTF-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-17T23:37:29.17424Z","times_seen":17945477,"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":"uniz-coinzltd.com/styles/images/featurednumbg.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.837Z","timestamp":1785158432837,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/featurednumbg.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/styles/custom.css\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=4,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:32 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23159\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=n3r8YJjgJ6OTlh1C5RwfLUxK5HAb%2FDnSfXCDtvvfbJcpslzqzgJ5quJyO5jbnUzpaJaGW4dFYWSqu0n2kgGxcdD65miy%2B4jwpYzQRrqCZpStFmpWpwI8vOGVVhKxkYlJl4ILgw%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12d4ca356b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 4614\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":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":4614,"size_decoded":5374,"mime_type":"image/png","magic":"PNG image data, 76 x 76, 8-bit/color RGBA, non-interlaced","md5":"3f6b99a7e0a7b390f361614ec4dd3fdf","sha1":"81720f27fe50f33acf5f3760f9ada28389e0fab2","sha256":"f99cfcd4cd632dea9b38288a7ac0547dc377f31fac0bdcbd3dbdfde7bf56af4d","sha512":"8a769d283f5a40e1f3949325ccee37569d707bc1d18275d6ce614e5b19cb16152ac35eea0f0d4a960162f968923b52a3c1d5ef0df096f86d75f13f1c9ce5fbdd","ssdeep":"96:PY2Ml5dkSpo0wkcay8QrPp+ddT1o2Wszafj1VnDRdPPbt5:PmDzwJay8QrhyduLB5","tlshash":"80915c0cfca43980dc58999353d1c52bbf334980f5dd74b31adaa90a3eb221f621a4d7","first_seen":"2024-09-19T20:45:31.022186Z","last_seen":"2026-07-27T13:21:39.129134Z","times_seen":18,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEwAAABMCAYAAADHl1ErAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NUZBOTA5NTU4NUQ1MTFFOUI0Q0M5MzJCNjBBRTBCREMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NUZBOTA5NTY4NUQ1MTFFOUI0Q0M5MzJCNjBBRTBCREMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1RkE5MDk1Mzg1RDUxMUU5QjRDQzkzMkI2MEFFMEJEQyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo1RkE5MDk1NDg1RDUxMUU5QjRDQzkzMkI2MEFFMEJEQyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pqv4JFgAAA56SURBVHja5Jx5dFTV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"}},"time_used":34,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":34,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/play/v21/6ae84K2oVqwItm4TCpAy2g.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://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.861Z","timestamp":1785158432861,"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/play/v21/6ae84K2oVqwItm4TCpAy2g.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://uniz-coinzltd.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.com/\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"apps-themes\"\r\nreport-to: {\"group\":\"apps-themes\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/apps-themes\"}]}\r\ntiming-allow-origin: *\r\ncontent-length: 18156\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Fri, 24 Jul 2026 18:19:11 GMT\r\nexpires: Sat, 24 Jul 2027 18:19:11 GMT\r\ncache-control: public, max-age=31536000\r\nage: 241281\r\nlast-modified: Tue, 09 Sep 2025 19:04:00 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":18156,"size_decoded":18969,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 18156, version 1.0","md5":"aad808c85ec3c88ca213ac1cb5f02d03","sha1":"c95ec71ed1a088fced4797a512cd2cba9790a27f","sha256":"d539e6e7c0240f1565b1156395d914d93200b2c3ba312809813bb6ca6f96578b","sha512":"782a500a5f5ecf9b3f54a62186353227e1209affaf470dc285c88a4a910dd27b0a74fc8ed1a9b63c1e8602c9fddc37c94b00fe2fd8e384f8fb93432968ed33c1","ssdeep":"384:PFjxIjX2LTtwL4HrZ9UxmdNzZCBV8KMD1au:9iiHtwLAZKqeV8KW1d","tlshash":"b682d08042f203d6f9a4b2366de73469863755a4aa948edc3fb07872f0562f45306fb7","first_seen":"2025-06-03T16:05:08.724808Z","last_seen":"2026-08-16T18:11:05.11185Z","times_seen":1568,"resource_available":false,"data":"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"}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coin-images.coingecko.com/coins/images/279/large/ethereum.png?1696501628","fqdn":"coin-images.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"172.67.142.173","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.040Z","timestamp":1785158433040,"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":"coin-images.coingecko.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 11 Jun 2026 22:42:48 GMT","end":"Wed, 09 Sep 2026 23:41:15 GMT"},"fingerprint":{"sha1":"7A:6C:D0:D5:FD:4F:F2:F6:0E:21:8F:DB:FC:C2:6A:FB:03:26:BA:A8","sha256":"8F:4C:5D:49:64:66:ED:34:00:50:8C:D4:D9:03:C8:38:40:42:53:9D:67:B3:CD:AA:9E:0E:D5:41:02:8E:46:BA"}}},"request":{"raw":"GET /coins/images/279/large/ethereum.png?1696501628 HTTP/1.1\r\nHost: coin-images.coingecko.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nx-amz-id-2: AfuKWJd+EqcwweT0VgEm6+/c0BTGHR9A2laflJDnhk0QvXATj/+WqhfB5XSuG2MDc8uRZHMi04g=\r\nx-amz-request-id: 5ZK48BRCW41ZWPT6\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\nlast-modified: Wed, 29 May 2024 02:48:08 GMT\r\netag: \"af87366546180c799987073ac53f0733\"\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: 6vmhZ_PH5UG1O..xRx9fhSAwELb.H8zx\r\naccept-ranges: bytes\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\nserver: cloudflare\r\ncf-cache-status: HIT\r\npriority: u=4,i\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=rOJ1tccGEJXCSkuDIjgUu%2BLJBjjXwhhG3mQrYf0XSdgkqih0ykpWLOtqVrqw%2BNMJsqu%2BNzSUn%2Fpk2UHuTN%2BAQ7Blq%2BiCeEVnbq3dab2%2FDWcoWvO%2FZUCY5Alv9V0InNuOJz7eMAkuNwr0vepA\"}]}\r\ncf-bgj: h2pri,imgq:85\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-polished: ok, orig_size=13114\r\nage: 2904\r\ncf-ray: a21bf12e9ec649c5-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 9561\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"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":9561,"size_decoded":10541,"mime_type":"image/png","magic":"PNG image data, 250 x 250, 8-bit/color RGBA, non-interlaced","md5":"39d54251b232d1e9e8a9665e7c2c5117","sha1":"025f4d72498175bf3219ba5fe2a6341b791d8b24","sha256":"5212de593ffa17b5acc04260fe702e32b3bb815f2eda4d7ca15b085967bd39f3","sha512":"c2f616084a077398dbed12026099332369ae72f8743c1a3acf1603af3a8ce032ac090cf0bc89d11270e8e2e6bd7d79383d556db591d19459bb873aab16daa0db","ssdeep":"96:dFdUh3pppql79CzKT7MLbrbKIgB1lpIRrFjWzR6/KPax4SfPUFvzJ/OWCVe8pabE:ZSfpEAzXzvElkFjy4rNcFvzYJVjaLypt","tlshash":"e112bf6f3030faa4599c8beb653659c09457b5b3868c38230aeee8ddecc54e088813c5","first_seen":"2025-04-01T12:02:22.555194Z","last_seen":"2026-08-15T22:58:09.107186Z","times_seen":1077,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAPoAAAD6CAYAAACI7Fo9AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAk5ElEQVR42uzavUvVcRTH8ff53etDYNoeCC61pRCIgbT0IN4WdQoigvKBzKUhJ5OGykxILGmohrApIiQMh4ZoDYLGtqB/Iij1nhYnidq/9/0av9/x8DnnDAdJkiRJkiRJkiRJkiRJkiRJkiRJkiRJkiRJkiRJkiRJkiRJkiRJksqxeP913FrYCNRyKtRKjgPjczefHUNSeV5tfu649+jt9fmFl59mbjyZunxxuQ1JZVlZ3xpeXnv3cX5xozk5+/jDlenVIdQyXN3Lx9Lamx4yz0dUJ6uoAhisRY5cm3nYjVqCQS8fEfVTEdUI0N1s7gL0RFWNZNQHUUsw6IVbebrVW0V9LDP7M5skAEnCAFRjVydXj6LiGfSCLb5439HcywsBo0AHJACZScChCBrUaMxOrrajotVRsbp+NgeA8YReDshMIPqImPjVxlfgCyqWE71QS+ub3QmNqKrBCIDkoAiIiKFmM0en51a7ULEMeoFuT2a07bWdrlW1BtCTmfzN/vuRqlY1dn8z3Mm2V3OFcnUv0OH+7b7MnIjME/xXQjJAFROXpr5/A36g4jjRC/PgzvN29nZGCM4ktGcm/7L/3xnBWeo753qquzb/AlnUwvxh725+rDzLOI5/f9dzzswww1BsZRj7MrRWaQu0lULRlg4ULAwUhnmhFenKnX+BqYmJi8ZQ3imva2OibmgrxSq4MzEuSY0udGfcmKjRNLalcOY8PzckiAXKIIXzPOf6/A3ne+5zX7nvcxfzh550aMJ4BHNDbAM8CEy+78FzwDlSreSKXiMHD7/1BYIdkr4GYpYktJooX27q8BCpVjL0GplxY1RRbEa6C5tZE/MJbbmo9nOkWsnQa2LPkbcfItgCLMbmZgk9SujFds/BEVJtZOg1cHT/yb5wMa6I9cYN29wM29huCm1Q2+Pn/VovqRYy9Br4qFE8RWgC+36X5rKbjZ0RERNzioEnSbWQoVfcruOnF1AUk8BKbhkj9DQqJpt9b9xNqrwMveIaJaOh2ATMs80tNB+xudVyDuZqIEOvsL1HT39RMCV4jFvMAtBSo6mIo4tIlZahV9SBXT/tU+lNUozaNGxzS9kATUWsmWFmY6OVg7kqy9AramZw7nKkaZflIrvks2CXuCwfktg+0zvwBKmyMvQKOnT858Oyd1isMuazZYGeKRU72s2DeWKuojL0ivn+j8/ExbbXS7FRMMjtIOZJMeYy1pIqKUOvmLn/uLhUMA18idvFAF5cyNspDiwhVU6GXiGvH/5Fr/FYhFZLNG1zexihHilGDRs+LA7m4w8Vk6FXSOjCqihiKzBsl9xOtsHcKxXjc8xKUqVk6BWx+/jPhlBMA0/ZxuY2M8YAKyVNtZtHPk+qjAy9ImIm1gWxETNomzvCBrhL0qYoWzmYq5D8h5kK2H3s1JMu+Sb2Yu4w2wCPQux049CfgD+QOl6u6B3ue8d+1KeSzRHxrKQGHUBSU4rVLtn0cauZjz9UQIbe4ea35y0PxUbBEB3CBvCwQmO9Pa28yloBGXoH23f03QVWMQVabhvbdAZjA2YFJVNqcA+po2XoHersd07Ibo+FYisw3zadxUh8LqRxtdhA6mg5jOtQ743cv0TW9tLlYjCd5/JgrjTbbb0H/JF0E3JF70r7D58cVFlOSjwjUdDR1JC0WvI29/UMkGYtQ+9SM+r5qqJ4EajEbTGJYaGtxYULq0izlqF3odcPv7lQeBr0FUB2Z/5sv8wAklguM6V2ewFpdjL07vL7t76tQo0XiijWAf2dH/kVe/W5KvR1Fax/+u+n81XW2cjQu8vZv4w9Bpq2ebhTB3DXYoPNlxWaPje0eTHpxmXo3ePIvjODpRrbkZ4zblZlNb/M2DRNrCldTPdcHMjB3I3K0LvH+d4LzxIaB4aoXORcYjDDEttmmh88Q7oxGXp3+MGx0wuEJoSWVn1zK4GkZZK3hSNPzN2ADL0LnPnuCfWU5fMRxSiiv7KL+f8O5iLWwMyaH/77l1X/7qqFDP0O+929DyxDsdN4sW2qNoS7FsOjhHZ+a96mx0jXl6HX2+797w4ITwo9h91T3b35VR9q7EVaE3iir9U/h3RtGXq9FT3laqEt4AXVm7J/GoO9EDR+sfejHMxdT4ZeX7vfOPWw7VcQy6gtAXqc0q8IPUi6qgy9pl498dsIGIsinpc0UL/VnEuMpLkRsR6VG/92z335ebuaDL2e7m79c4mkLZgH6hs5lxjDSEhbFv7rr4+QPilDr5/Xdv2kH9rbiFhhHHUP3TbgAvS0aG9tNNt9pCtl6PXTO3dgbUQxCQzVPfL/jt14WDBVtmKUdKUMvV72Hn1nRIpvgJdid9dBElugJ0S8HG3uI12WodfHyVffl0o2hbQW6HdNDsbM0gDBOsJjpMsy9Pr489CvH1fEBDBClzIAPKhCE4WVr7JySYZeDwdO/GrQDSYlrbQpumVv/gk24AbSKkc5OWDyKitAhl4PZevCqCK2lvYCu6Sb2QZ7IdK285SrSZChV9/e4+/cZ7zdeKnpsgHcNdhIsIzQtNEwKUOvskPHz/ZSMqGIdUB/XS6t/P8MMCDFCw2V23rn9TVJGXpVtbi4AngJ3LUDuOvzIsRLrQ8+fIqUoVfRnn1vzmWmnBCxHLp4AHcNtgEaUqzAGsc9/aR8kqlyeprrImIjML/MyK8Tu+6WirHQx78BzpByRa+KXQdPLULssHikSw/GzDJ2L0HsiJh5gJShV8Ge4283ioa2hmIUe07+ZP80xtCPYu1/2DvbF7nOMoxf13PmzGzTpNltkvrSNG0aG4LQ1jYm2rQVIax5oZomm0TbD4r0m/gnCI1UKRSUECp+8aUgCCLWVsV/QJGo8QVExC/9IPiS2Z2dOXNmzvvz3DrPnvVkNU2yb7Nnk+c3HHaYDzszZ7jOfd/Xc9/P0dI4MRH4Nb/X3ObECX2tKdQTJE+BeL/T+DLW24AHSHU6ndKPweGEXmcuvf6jbSTOKvLDEGncLhs9jokGwUNGMJMqtRUOJ/S6khSNZ5RqTAOYcin7ilz4HUqpY02I22POCb2evHbprT1Q6hyA/U7kK0VAkQMUnhNPuVFWJ/R6cfGb328K1GmSR0XMbbwH3Fg2qNhKYpoizzfv6bmOOSf0+pBmdx8EMCOQ3U7ka5LC74FwJg2nPgSHE3odePXSmztBnlPkoxCp7fkkCZCgfV7v2RoRKAKPK8E5z5N74Vg1fO3S23CsivNU3ssAPijGoF5UotZGI45SzF6dQ9gfotHwoDyviqJ1ovrcfxKRCwDehMNF9A1D8BDJGQL7UDOxkLDkeYGwP8Bcex6zVzvodHrodgMEQYgoilEUGjWkPJ18BMRZsnBDQU7oG8Ndgx2+kJ8i1RERtOoRFasInmfXCPw/R7fbRxQlVvhpmiEMIwS9EEGw8LrWGqhVWi8AZILg0yLec9LZ5uYynNDHT7Sl9yTBMyLyvo0WOclFgVoR93p9tNudkcBt5E7TFEYLSIDlQ0SQZTmiYYx+EFrRD4cR8jxH9T+xoZTn9X6AZ9SOoTPmVgG/9vrP4Vg2u7QpvgTysxCZxAZBwqK1QZpkNjLHUYIkTVHkhRUKySXC6QcDhOGgFFEFSXiegu/7aLWaaE007XNSARBsLOwC5js08iqADhwuoo8DbfT0qIOLwIaInARIWoEPBzE6cz202/PozHURhkPkWb7sNFxEbL0exwn6/cEoK7AXhSRJIcZsdHSfItUJUTwKhxP6ODBG9hA4BeAhjBmSlcEWDjA3212ov+cDm4JrrUGuts6uMoTBYIig17fCj+PEvr4RdTwxgg+DPEXP2w2HE/p60mnGvkCfpFIfqQy4cQo8R9gvBX51Hr1uUAqwEvhalgTGGGTZouDDUS1v369y6olxIKUxp6ieMkaOD/9pnDHnhL5+TCaNQ1TqvEDuF5HxCFyAOE6ta96+WhpsvdCm1MbIWCKsMda4G5l1NqXv9QIMwmFp3MlY9C4io2P36PxPvNc/CIcT+nogIveC/AyBJ8sR1HV10I0xNnp253uYbXcwNzs/qpmtqy5Gxpw+V2LLF536fmjT+jCMkKX5f809cj3fHz6AQ0rJeSpOwuGEvtYY0dMEp0Vku4ism8C11jZyznd6aJcNLsNBZF30qpUVG0SVPZTGnS0lrOD7CxchowUE1+lCZKP6JMhjGs6Yc0Jfe5f9UYIvANgrIusgcNjUuB+M6u+FDrb5zoLBVhR1a2RZKnittS0jwtA69VXHXXVhWo894fcReFGUu3+bE/oakcRBSyCnlVJHALTWWihZltma2wq83Vlw0KMERm+uWzfZOj5JR8ZdJfhhbFcI1hoCE6R6GuTzW4q73CirE/rqUc2Jg4rquAA71yo9FxEbBXvdvjXXrq2/zWL9Xe8Bs+tTfrc8z21UDwJbx4/EbwUvqM7BahBYdhE4EfnxE3DcFLfj5g3IVD7VEO8LpK3N7wJkxQJXyhpsI4Fbx7rXDe36dFItV1UiWEfSNLNZxDjSemOMFXie5TaVFyMgACqCSq32u5LkNgEStLzfAEjhcBF9uTzzr5P0Ch4neRyQyRWJnABJFEWBQRihM9u1BtvcXNeK3Ua5TTAfvlqKwpQdd6FN6xcucKmt71eOLHbMnZRCPgGHE/pK+OXOnx0g8CKAh0VkxRNk/bLBpX11HvPXOugEbnN9X6cnv3Tqw6GdmrMNOFGManJuRUMvH6DhCwqN/XA4oS+HRs/3jTKnqdRhAM1bFPcSg60U+GhM1NbitoPNGJC87SP4jSBpjcYszTAYRAiCgfUnFpz65ZcwImiR/KjRxSndKVzHnLv32q2T3pMdVsp7DsBOEbm1elRrpFlup8fskVQTZCNIYHM6bOsX4UvjzpY2SZqi6ft2aq7ZasJvNKCUgojcSgr/HlJ90ptq/gLAZTicGXczigbvo5gvKjspdRMDjoDR1mCzETzolvVnkkLXdOeWyoyrE5Vxl5XGndYGBKCUsseNIDhiuygUnqgrAGI4XOr+bnzrb+/QK8y0YtUBd4NGkXJEtFs2uPQwGEa1bXDZLOhCI4nLBpwgtH+TJIExZlHU+F9k4TFJ4pj2jOuYc0K/MS898OAjhJwD+KDIderv0kEfDiI7A16NiCZW4MSdXX+v6dKcHZWtOu76wVKnnuT/G3OCvTD4NMF9cLjU/Xr4bG41yrxE8owItgPVZFg5vWXNIzuu2Qvt8zzLYeHmieB1Td3fDRFAa2Nr+SzPUWi9dD2eBCoaBKcE0tfS+iOAHA4X0a+lkPRZkGdA7iIxoupg6wVot22L6oKDbnddkU0j7tsBEbFOvW02Cvp2eW5xjzsRqebxiftAnqXKjsDhXPdr0cbb0fD0jEfuFxGlyw62OEps3/li95qIuPp7w6jOuzXrCo00zeE3fUxMNNFqteD7DSgLD0DMTMPLrgDowuGEPsJvmqMU71ldFHfHSWJr7uEwsjViuX2SE3htWGqI6ljbSN9sppiYaC0Ivulv9Tz1MUN+HMCP4XCpe1bkh+M4+Vy/39/TbneWzIDrTTZBdqdizOISZzUqOxzGe9Mk+3yRabcbjYvoGLm5T+VZ9lgSpxNZlsMY46L3JmVB8Imt20e/Z7PZeLzh+4cB/A53OHd8RO+H4eV+L3wjTbM/AEiV8kDe8adl01J206V5nv0+iuLvRkn2Wzic0AH82mh9kcCXQbwB8K9uWWazwgzgXwB8WyAXIPklAFfgcEIv6QB4W5R+xRjzFYH8BMAsSXH96fWGxAgB2AbxlgCv0PO+CuCnAObhcEK/Dn8PUv8HgLwM4CKAyySHpHI1e+1g+ZtwCPBXAnxdFC40d275IYB/wOGEfhNyAH/W9L8B4AIg3wPxDsDCib0uEAAKgP9m786//KrrO44/X597v9+ZyYQkwwRmJpklISsJgiyeBrSFSosLLrWIyznaHgseW63WvZWZLBMSSBBxidYqqWETE5EgEAS3sKRIcKExbAkECmQnRLJOJvP93s+rv5TjOTlAM5eZAeQ+/ofn+XzufX8+925w5Apgdiyl3wYeBqoUitD7YTfwM8e4wNHzo32jYaukWAT/clKGtAW4IUbPJ2oh8EtgD4UidPJ7UsPrrooxdtnxy8CdwN7X+gckhpIkkADtAW43viSImdt6h18DbKRQhD5AqsC6rOrvGrpsL0Z6GOgrYh+CyE2f0IPC35U0sy8NlwPri216Efpg2Q/8CnSpo7ttLwU9KSkr3s4PPElV4Anja03sJuorwGqgh0IR+hDYkjyy+4eJwmzhS7BWArsoDNC4TAg9C/wSe2EIYfZJbv4RsI1CEXoeHePa6yYfNyWh/ww8Uc6SK7BmmvjviPskHZBC8X24HCRhdEDitxLfkphVVbgKeAow/TSudVzSOrqxjkIRehoYn9inTJ00vvHEpnbRfz3AvVkaL7M0B7hesFnilfnRuFcoSRlok+3ropkTQvpV4Nd5tulN4xvU3jGmMYZ4isV4CsWlFjlWLE4jDaf3jijfPeO45jXAfvpv50K/acW746pHLe5FvBVphqARwDaFQwmEBTuBe8C34ewXwCPk1FRTX++DyevBbzRUgZspFCt6tvJLGxRYiziLkHRTLn8kpsmxWaIy/WdgXVpb/53MsdP2N4HfAD3FOI4/kkAC6MH8BnuR4ALqR1yeN/JxrWPK7a1jpypJPxKkbuAsw1rgUQpF6IDrhid3WeEnwDSF0JkkycyQpG93uXQ0oTbkPF33+xD1dZnZmO+DNgCV13rskhD0AY+Ar454VlbKvgE8kOcyUVNbW2hrbz5ase9swSxJnZKnAbeW9tfeSaEInT+qKNOy6Ox64VqhDwaF7iB9ljQ7o5KURpLPs8CtIWie7XmGm0BbJb02n9+lzGiL4UbDhSiZB/w078TipCnDRpZLlTNQ+CyEOeAP2tTGzNeHoGXFLcQi9OezOSi7PMbsbsNBieMlfUpB89OE86rtzdMr41tqyOepp+O4q1HowvEy4G7EvtfEdl5CAsRewSrblyLNbO4ZcS2wiRw6xjTVtLS3TE+Vnid0kaRPgY4HDtrZ3Y5eDGyiUIT+AtZiXwFeD0RQHWiGpC8mCrNS9J7Y0dTW0zQypf8isC7Lev8jZtVZwBXAeqDvT3McJyQBHAStAy/BnlWqhO8C64FIP42Z3Jy2tjW3pZH3BJgl+ALoz4A6IALrgSuW9K5eS6EI/cXUJL7NzpaBnraNHRE0Cc4NkbnB4XN15brTOKf9CPLZB9wZgy62fRH2LYhtf1qXZYREBmzFrLCZpxAWAKtyTjTY2eYjVNEbkT4vaS7mfUCzHcFGsMOOP0xC8lOgGHEUof+/9hkvtePtiB4sbIMtYJIUPhoU5ipLP8axx5wUjxtXRz5bslLlB4Y5jvEr4DuA3ZJe3au7BGIXcDuOl4ow50DpiGXAVnIYN665bmxb88lRyceEuoXOR0w6ZGTZY3x7Iv8A2EuhCP0wPY5Zgr1WIjvkf9zDEKdL4QKJuYq8N04Z316ZMCnN+XZ+bbmmfhGOXdiXY60Fel9dwQtJgA4IrRF8J3HsOqIUvgU8kOfyydFHjU7HjG1qJ/pcpG4pXCA4HTwM+5CDNl4b4XvA4xSK0PsjKZXusvk+sEkSz7EjtkE0AGeHwJyQ8q+lEN78xclbGtsmtAT67yBwT4YW2u4GfgzaIinjFb+dF5IyYBN4OTAnI7kEuBc4SD81d7SGtnGtjaGcnimFfxNhDuZsRINtbB86qtuEfW01+i4KRei54ovhekffCNqlQ4KL8bngdYzE+QrMCwmfHFZTO2P8xObh5PMMsJzAnOh4ie2fC3ZIiiBeaYSipO3gnzr6ElA3cGPeb7W1NowcXiLMkMMnpXAh0nnAeGwc4/P9xGGX7Zsc9CPgIIUi9Jy2koTFtlcLVSRxKDsClCW9QSF8XiGZG+wPTZ82adKxkyeUyWd9ediBbweyLxHjIuB3EgcAQLwyqMfwG8f4DfCXaqo138l7Cq396Jby2LEtk1H8sMRcSZ8XegOmbBs4lABVDKuRFwNbKRShv0T3O2ZLLT8mYZ6HbWKMAPWSzgyoS9AZyz5r6rRjRp/cPjHQf33Amqwav07Muu24TOhx6eU6XSdAIFWAx8BLIeuOhG8Ca4E++ml007Awrr35qCRJz1KgU3KX4Eyg3o6AeT6SDDxme+mOvynfT6EIfSAo1QrHeANo54tFFmPE0YDGIj4MzIvoE3vrspNPnVKpJ589wC04zrbjQuw7QLukYBBDQ0iy0LPYK7EXJLEyB7gV2EMOpePq6mvL9acYfcIwD/QhYIxt7MgLE8BO7BsSuLkYpRWhD6SdIdPVMYsrbffwoowdsR2ETlDQpwnqTtPyRyZPbZ8+9YQpuU/XVdxzpWEW+FvAvcA+0BBEzl7gHjt+M8RsVh3JVcBGcmiZ2FTT3tY8PVTDPwQlc6XwL4YTjINtDkOP7ZWkvrr4bnsR+mB42PZiYM3hnlU3BhiF9LYQkjlBYWZweMfrjp/acuK0E5Kcb+dX43ShHTuxr5BYL6ky8OM4AeqTWGd7SYzuIugS4Nd5tukNY9uS5rbWMTbvBGaBZoPeAhrVnzvrEmuELgceplCEPhj27g+rHH2N0EYpcDgcI7YBGkHnQpifmc8djPtPnTxp4hHksxdYqZBcaHOR8a3AdokoaQDOpisKtoF/guJ8lyrzgNuBfeQwuWX4EfVUT0tD/JzEfNB7gUY7YsfDjRzQRuNrhjdkqygUoQ+i3tRheYzZbYg9hx2VjR3BDkJTgI8LX1giOX/KtGNOHD9hzDDyebq0r+Zaorrs+DVgFSj36TpJCO0C7gJfBu7aH3qWAjvIYWTL2GGtHc0nAR8VXCj0T0KTbQfb/f0f+h7bt8Y0XV6M0orQh8J22UuwV4MqIPrDNuA64IygMDMozJXi+6ZMm9wxfcLUlP6rAvdnsfo1YuzE8XugBxG9/RvHqdfofhMXR+IF+8rVRcCDeU61TWhtS5s62saZ+AHBXEldSKcDdbbJoQKsDklYAmynUIQ+FHas2fNbZ/EaYIMk+ss2tkFqAJ0t1A3+gkt9f3HstI6GiVNGif7rBe6O+GLsudg/Rtoskb3wCi8QGbARvBwzNyReCNwD9NJPrZNHq6X1qCMr9J4R8BclzQHejnToqbb+ruYbshiv3lHX+Jr/z3kR+tCKZYWbo32DxDOScv+437ZA7cD5BBZY4WNJOPK4CROOryGfHa9vOPo6CJ3grwKrhfYcGrskJHYDv7J8WVDoqn/69OuBZ8hh9ISjaugtHZ8o+UdJFwufJ2izLcdIHpIQesb28iwprQAihVy08GvFt/PI79gk0TzgbOMa2+QnACTtRKy0s5sc4z1ZFjYCfeSwYd2G4Q46ReidQeHMGOPk3bv31u3dt/+A7XXYv0Ba4XL6u7zXR1tbGsuJQzvoVODdwF/aPnKAxnoHBbdEYlfxlr1Y0V9ODxuuivhBXvJ9cgNGolFwrhQWSMkFaaKzatJk9IiRrcp59/2OGOJc49m2f4z4b8Py6Dg7C8wD7soTeUdar46m0UcF662GTmCB0DmgAYkcKYIfgOzKIvIi9JddcOmXdlwK3sKh8m/nwRor6e+QFkT8z/v3bzkpUK0nn917RzXdnOEuBT6jhJmrtm5bAezJt4o31HNk3cmgT4IuBn0YGBNt7DgwncMWrGXlrLqSwkumyxbdSOEla69anUgfAEZgMzCEBKDdxvcQfRP4jiytPv5yjJj+5/dbaiuheozkM0R4F3AqMMI2Obz4KA3/II3JRcBTFF6yhMJA2G2F7eCJQaEDSBhAErUBTUSaAbQFqy91sqvaywHADLJ1jz2T/GHbzmYT3xzQxyWdB3odUDPQkQv1Ye5E4bJiy15s3V9xappOuA/7KuBRSQwk20SMRKOk90KYb+nTpdp0RimkIxhEGx56YmTSe+C0kPEZ0HzEOaBGO2KbgSUQj2JfNeLA+PsoDBgt/HKxdR9AoyjTGUJyHrjBNgNNEv+nB7jPMS6T/bNUpSeAPgbI2kfW1yQxjosObwG9H3QiUAcAZuAJiWeNF1fq0vnAbgoDRgu+XoQ+wE4Meu7Chmvph5zBb5X5ueHmiFYfqFa2AVVyemLzlrS0r9ISiacS9C7QmTbNAGAGUS/4NkM3sIbCgNKli4o5+iB4h2E2cLJtMYhCCAC2/aThphjj8iQNvz/m5AO7+1Pm3d9u1O7a+0c54QRZ52C/S1KbQXZkMEky+LcRdwO3UChexr0alNLypmpWHSaF6ZJGgBkstgEkaRRwvOB1oLpdW5O92zcnew9ndb9tyeZhB0s7phm/H/iUxNsINAKyPdiRA9rsyH8eLA+7rviN0uDQwkUrKAyKduzuIL0PPMw2Q0JC8AfDKvDyEPkvV7UJ6OMQ969fXxMCrQnJn0v622jeBG5giEgC6HH0slRhNrCRQvHW/VXmKcOV4F8LVUEMCRvQkZLeLcLFVugk8V8p8ZEbejsE8Oy6Wj264aHRSeCvpWQmChcbvVOigaFVxdxrfGUR+eBS5/eKFX0QlUfuy/5eSr4ATLIjQ0USkrCpgB/Cui6am3duf2br/7Z3Lz9W3nUcx9+f5wxiaUVN3JhuqhsTY+Nf4D9gUrswmrjSmOjCdONCY0yqOzVp7EI3jVwqw1DuAwONMFAp1I5QJCp3KVKQlkI7zHAbLsOc5/dxo01MkUthmPM85/P6C05O8j7P5fc7v+/E5KXHoXzN8A1JXwDNsw2Yh0cI3rTLc9crBoGbxKzRc7/dQMyqz5iBn0j6Lr7Nktvsv52/ZPPa+PsThycnLj5p8xXBQgMwJ5/pgu2l8zr8CjhPzKqBkj/+zbbzwBAVnxP6qsTHH2bstgGQ9EnjpxBPIcDGzAUB3ADvAA8l8v/IM3or/N3Ui4GDczUT3TbYSGLuCEkAB4BFWS//r4TeGtOd6V3F9UbMORBzw9gGMyckAJ8tLhtn6oHMSvtAQm+Ta6KztpSyDftqcyalPjg2U7ZHB9RZC1wnACCht87xSloE7BXU9BOpBu81Xgz8k/hAQm+hi9ML37B5SVX1ltQfX78kJJ1w5RWfmD67l/gfCb2dZjoD9Ugp3VGJK+r5+ef3Hznocilla7f25mxx/bCE3l7j4JU2Y6AWbxQRNjfBY1CtBMaJD0noLTb5vad31y5LwEfbelWXQHC4lHrxi+Or3iBuKaG3m13V24rLOuBc22KXBHDWLus6N2a2Z7zxbST01rtcCquLvRV0tS2xSwKYcvEWrNXAFeL/S+h94Tj4d+A9SG76+roEgG32uPYi4ARxewm9P1y5PrXPlGHgX82/qgvgFC7D3cmpfcSdJfS+MdOhGrHLy8iXmxq7JIBLtje76owAXeLOEnpfOUNhiOIxYKaZt/CeAb9e5CHgXeLuJPT+cmF0517XXiJ0RFWzQpcqoDpkswT4C3HXEnr/ccWC7cVlk2CiKVtkJYEYp3jTx+ryCnFPEnp/uoxYZ5edwtO9/7wugGnXZadLWZ+ltN6U0HvQ5c8fPoQZtNnf8xtNhA1/q/Hgm8OLDxH3LKH3r7LQnVG7DAKnevWqLgngpCmDjzz2yLae/1HqYwm9d013ysBGF28GXZIqeokkgIsuHiml2phTXHtbQu9tZ4rLcuQxiVr0CgHUQn/CGgLOEj0tofe+fXQ9ZPsYEr1AAHDULiuAjDdugITeBPPqbXYZBs5LYm4JxDj28Eyn2k40QkJvhgk6rMR+Fbg5V7FLQvJN26+AVgKTRCMk9Ia4/vVvHrU8CNoPYu5Uf0Wd5cA/iMZI6M3hTmf+dlxWVeJMVVU8TJIAvV2XetWNmckdRKMk9GaZdpeRuvZW2w/xoAoBTNn1FuxNwDTRKAm9eU5AWYa9Byg8BIIa/GdVWgacJBonoTfQwivvjNleKunobN/CSxXAEbssnfri/D1EIyX0ZirzVI3aXgu8L2k2d7+9Z1jT0bxtQGbvNlRCb66JQr26dtmFVD/42AXQNWWHBrwauEA0VkJvsAXPPH3M1mqbg8yOA4I1wHGi0RJ6s7k7ML3VpTsEnJHEgyAJwdu2B1WVbUTjJfTmuyppfXH5A3BN0n1HDly1/TJdbQCuEY2X0NvhVKfSoNBuSZb0kSOXMDCGWA6cJlohobfElfkXd3eLV9g6AQLER2E4XvCKt6onMiutRRJ6e9QqnVGXegR8UeIeCWDSxcPqdrKU1jIJvV3eLXio2LtsahB3z127vIq7LwHniFZJ6G3zxJcOmDKEOCjpHt6ya7/x0MnP7soBjy2U0NunMF9bcVkmcbqqOnfe4iqdssuLnRtkvHFLJfR2mipiuLhs5bZnwwvbN0qpt9SUEeAq0UoJvb1Oy6zB3guYWzOwx/Ia4B2itRJ6iz3a9Wt2WQocl6pbrZkfw2UJjy14nWi1hN5uM6rnbXHxBvAlSQiQBOaCzfqZitGMN26/hN5+75XilcI7QVZVgWRgB3gVME60XkLvA49eP38Iey1wTKoQHC7Ua28+Xh0hItrj1y/88dO/eH7Dz3787O8Pfv+Z3/z0W99+/lNERPv8/Jerv/yjZ5d95wc/fOFJoq8MEP3kAHCA3hzOGhERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERcR/+DaRjfCC3oy8eAAAAAElFTkSuQmCC"}},"time_used":18,"timings":{"blocked":2,"dns":1,"connect":0,"send":0,"wait":8,"receive":7,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/33074d3ff5d0cd2d.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.132Z","timestamp":1785158433132,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/33074d3ff5d0cd2d.js HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\npriority: u=3,i=?0\r\naccess-control-allow-origin: *\r\nage: 5043621\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"33074d3ff5d0cd2d.js\"\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com https://vitals.vercel-insights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nlast-modified: Fri, 29 May 2026 10:19:15 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/33074d3ff5d0cd2d.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::4kx7s-1780114811396-bbddbacd8b5d\r\nx-xss-protection: 1; mode=block\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=t3veS%2FuFDGfa6MK%2BJyjjgf6p57FI%2BJZKbm9nR4Necryy1u1KUmr76tul4M7vhq5doZEdJQKbbjMhXaEPxKacu1PLHqWVp9l%2FS4%2BcBz9OupM9AFYfdFi%2BYFgME%2B4M\"}]}\r\ncf-cache-status: HIT\r\ncontent-encoding: zstd\r\netag: W/\"992603cebc96287b9bf186c47928c4d2\"\r\ncf-ray: a21bf12f183956b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":282,"size_decoded":2365,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with no line terminators","md5":"992603cebc96287b9bf186c47928c4d2","sha1":"8a86c102cf1671f6d0cf3b6b5598fff510a4b79d","sha256":"93abe3bbe2a336a05186632225cfa198e5969ab56080e1163da35e41ae9facaf","sha512":"06cc3005d9c8ffe1f27e81eac61fddab10c3e07cdca8c183315799b19b177a9f9dd2043bd1c9c92364578b78d69640c31014db6cca25a74972244784f2de74a2","ssdeep":"","tlshash":"e4d02b702250fcd8408aa4cc8836424bf529247262fe3495d7ae8cb1a174f0c51e1955","first_seen":"2026-02-04T14:24:19.894391Z","last_seen":"2026-08-17T21:34:38.511954Z","times_seen":3105,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDkxOTQ3LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJ3YXJuT25jZSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSk7bGV0IG49ZT0+e319XSk7"}},"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":"uniz-coinzltd.com/styles/images/planicon2.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.544Z","timestamp":1785158432544,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/planicon2.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=oVst1PoNsfWST%2BGX%2BAWjIgtX%2BGhavYyjmynMmZwHz9iQeB77urhUcES6CTcxNtaWh4rifC6%2Ba8Q9zyCrMsDnAcnMlVf7oVelph9UI6goanSves%2FhX7gaFBGYvVGzoWM7P6VTvg%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b6c7856b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 3348\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":3348,"size_decoded":4114,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"02e454e780e50cff481739f2b7e3f74a","sha1":"4436c2f560c4b5df696fde15a34685502229d72f","sha256":"21b3617c6d104d5de12fa59eb8085cf0ebafd79e2f852039a166e8dc9ea2ca03","sha512":"16c4a70b4758f4c1590d17d706650a2c4eb2fc044509c36f5be730823737624f9a213512caeed0316e93976fda7f815e56ee55364d8c8391ab3a2f7bf52cd56b","ssdeep":"","tlshash":"c1611905f0b18c41860d8bd005f1d30690f706949ab5f78b9dfe80ab5a7d8b34c5a6f7","first_seen":"2024-09-19T20:45:30.962261Z","last_seen":"2026-07-27T13:21:39.08658Z","times_seen":10,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OEMwNzg2REU4NUQ0MTFFOUI2NDBBRDg5MTRBQjUyODIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OEMwNzg2REY4NUQ0MTFFOUI2NDBBRDg5MTRBQjUyODIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4QzA3ODZEQzg1RDQxMUU5QjY0MEFEODkxNEFCNTI4MiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4QzA3ODZERDg1RDQxMUU5QjY0MEFEODkxNEFCNTI4MiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqhY3NgAAAmISURBVHja7Ft7UFTX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"}},"time_used":14,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":14,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/startedicon1.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.550Z","timestamp":1785158432550,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/startedicon1.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=qzfyjZT80ZQSQVRIAHH1XudM%2B9OVDcsWcvGICAnIUikbTGYN%2Bidsw2kRmtITu5i%2FNsA9jrcwSvAUQFGJfdn3meqkRrCVbQlbzUCI84C8FyTaQraSLNflxvfSvPiUSYYIFoiilw%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b7c7d56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 5480\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]}],"data":{"size":5480,"size_decoded":6242,"mime_type":"image/png","magic":"PNG image data, 128 x 128, 8-bit/color RGBA, non-interlaced","md5":"af1bfec24cbb4e2d327e90d29ee83dc9","sha1":"6ab3a52a238ddf027795dee2517852a9652a7754","sha256":"801470cfbc07268a029d8ecf5c1591009546757bc5d141eaea4b06b10b746aa8","sha512":"f6fcf7c538b8dc55eef7386c733489c34f582466403bf81356595a5aa48384e3f06ab46cf29edcc0751f146173fd222dac93a33d4114955a3365298ebbfdb4ea","ssdeep":"96:0Y2odO2ckcK8RR+OnIp8aLe3mwnw1nirwdiT5pHG42Jh:0/NkcK8Rs/pLCmwnwVi00r4h","tlshash":"44b16d0ae324d4157a4def52a5d7950ee41fd8c449e1e22cf87b488b09274a2fceb553","first_seen":"2024-09-19T20:45:30.983121Z","last_seen":"2026-07-27T13:21:39.136805Z","times_seen":20,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NkZGQkE5MTc4NUQ1MTFFOTlENkQ5RTVFRkU2Rjc3MDIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NkZGQkE5MTg4NUQ1MTFFOTlENkQ5RTVFRkU2Rjc3MDIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo2RkZCQTkxNTg1RDUxMUU5OUQ2RDlFNUVGRTZGNzcwMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo2RkZCQTkxNjg1RDUxMUU5OUQ2RDlFNUVGRTZGNzcwMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PnsVldsAABHcSURBVHja7B0JdBRF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"}},"time_used":19,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":19,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/52.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"52.84.50.71","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.406Z","timestamp":1785158433406,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/52.png HTTP/1.1\r\nHost: s2.coinmarketcap.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncontent-type: image/png\r\ncontent-length: 2330\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 19 Oct 2021 05:35:17 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 02:14:27 GMT\r\ncache-control: max-age=86400\r\netag: \"39edd8e5c80256300562f68afb1ab525\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 39973\r\nvia: 1.1 bb489e045ccdb24c55a720f2ea03e7f0.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: OSL50-P3\r\nx-amz-cf-id: 2qLEV-MdHeR8VWl3G8YUPYFBqcsNPladx0XukghI-OC9OV27Cxjk2w==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":2330,"size_decoded":2856,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"39edd8e5c80256300562f68afb1ab525","sha1":"506e80486e2b9e90f7344334cd95e93ac8fa0338","sha256":"cf4c3c2ec18de3d4dcd49151ffe00cb299f86fc98467cf806b9c447467935479","sha512":"029abf77a53608d0e0a92ca7764bbed17cf0960e540fee5f8eb0a9cb1bbbb490e730ec22e8dc186b07b784cd87410f5667207c22478773346d725579673e5e2c","ssdeep":"","tlshash":"a3410ad884a0624d2924177332a3193dfc6d3f949a066dffc81d563c84a1e8271b5d64","first_seen":"2023-05-04T14:58:57Z","last_seen":"2026-08-17T23:48:38.524835Z","times_seen":17823,"resource_available":false,"data":"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"}},"time_used":8,"timings":{"blocked":1,"dns":0,"connect":0,"send":0,"wait":7,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/staticon1.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.532Z","timestamp":1785158432532,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/staticon1.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=CgG3qHammf5c60PiLb6Kz7bWjpGMkNpr8cyGLO97NAuz2q1e%2FRzSowA0eu0nvWthH3ng8Dsk8D7rPdAMmIGqnfhjS0TeeJWl1h5wB9xfCl%2FY5pvghvH8gBM6HP3VGUo5Y0tHrA%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b5c7256b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 5504\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":5504,"size_decoded":6264,"mime_type":"image/png","magic":"PNG image data, 124 x 124, 8-bit/color RGBA, non-interlaced","md5":"6bc33aef075fcb1a9ef16d2a8467cde3","sha1":"ab5f460978a7ad9d0ec5ce53e8400874cdaea8e0","sha256":"99c972a630b33669c03aee78a0d65e681a2a540ec9f0ce19214a447352304cee","sha512":"3375e936a4333986d76400a5c8c0f558d0215f1558a91513b17457b4f366308596c318813b0266cc2bfc8940cfbc024c23af12883c15848eda1b64a953ab3b25","ssdeep":"96:yY2gl9kHcXiAtkRqrMaB4F9GSTTtik2kxICny78rfRwxHFfkAoQez:yg9AcSAeY6Xvtik3xRscfRWHxEQM","tlshash":"93b16c0483141997916799a32cd96147a05b19cddbe8bc83eaeecc15dff23b609d8ac2","first_seen":"2024-09-19T20:45:30.943735Z","last_seen":"2026-07-27T13:21:39.097596Z","times_seen":14,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAHwAAAB8CAYAAACrHtS+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MjI0NkI2NDQ4NUQ0MTFFOUEwQ0RGQ0UxREE1NjIzQTIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MjI0NkI2NDU4NUQ0MTFFOUEwQ0RGQ0UxREE1NjIzQTIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoyMjQ2QjY0Mjg1RDQxMUU5QTBDREZDRTFEQTU2MjNBMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoyMjQ2QjY0Mzg1RDQxMUU5QTBDREZDRTFEQTU2MjNBMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PhGgZ54AABH0SURBVHja7F0PmBTF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"}},"time_used":18,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":18,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"translate-pa.googleapis.com/v1/supportedLanguages?client=te\u0026display_language=no\u0026key=AIzaSyBWDj0QJvVIx8XOhRegXX5_SrRWxhT5Hs4\u0026callback=callback","fqdn":"translate-pa.googleapis.com","domain":"translate-pa.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"172.217.115.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"moz-nullprincipal:{7e229bbb-53c0-402f-93b6-e81bff7f0825}?https://uniz-coinzltd.com","date":"2026-07-27T13:20:33.553Z","timestamp":1785158433553,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"upload.video.google.com","organization":""},"issuer":{"commonName":"WR2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:20 GMT","end":"Mon, 21 Sep 2026 08:39:19 GMT"},"fingerprint":{"sha1":"2A:E6:04:0E:76:A4:02:27:67:28:31:4D:E5:61:19:26:CA:0E:32:84","sha256":"D4:ED:C4:F8:DB:31:8A:2D:35:15:01:14:C0:49:CB:47:FF:5B:CC:17:14:82:63:9B:A8:6F:61:4D:AA:E5:96:94"}}},"request":{"raw":"GET /v1/supportedLanguages?client=te\u0026display_language=no\u0026key=AIzaSyBWDj0QJvVIx8XOhRegXX5_SrRWxhT5Hs4\u0026callback=callback HTTP/1.1\r\nHost: translate-pa.googleapis.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\np3p: CP=\"This is not a P3P policy! See g.co/p3phelp for more info.\"\r\ncross-origin-resource-policy: cross-origin\r\ncontent-type: text/javascript; charset=UTF-8\r\nvary: Origin, X-Origin, Referer\r\ncontent-encoding: gzip\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\nserver: ESF\r\ncontent-length: 2635\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\r\nx-content-type-options: nosniff\r\nset-cookie: NID=533=Jaf6Ov2I9DFxePOgbOqqfPHM3cpHktAezeErBXH-7T5kz92XHgZTUkKoZp1FL6jSBG795iTE78xO8RGv-JbPmCJuVM8_fruqn0ah7LaplvoidOz9P1_chOzQ5dQVNGzb0APKTDgfIvUa1sxLW5Jfp2eVlZZArgLpcjB5IlXy0e2QnMU9aBkqCcxWf_n0H_fPePdm6ar9a0ZpTHeWHg7NSUJlOt3d9f3Z; expires=Tue, 26-Jan-2027 13:20:33 GMT; path=/; domain=.translate-pa.googleapis.com; HttpOnly\r\nexpires: Mon, 27 Jul 2026 13:20:33 GMT\r\ncache-control: private\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":31482,"size_decoded":3502,"mime_type":"text/javascript; charset=UTF-8","magic":"Unicode text, UTF-8 text","md5":"91115de97ad1a90076e130223cdd90ad","sha1":"f3ad22e4fa892dfbff0d083bc0465fc3a2240317","sha256":"816e9881b1955d8beff3011d93481dad4c4de71bbd80b50ac267e7e45d4c3bad","sha512":"fbca69c3431240ab374b9ccfb06d76074059cdfe2f153743b292020271a8a3a36885189594a97fd74b43249b1f6359af62dfd0731e7b50e024f37faebdccf620","ssdeep":"192:Z6STcB9aqiD0+52DdKXrWryLxizUSTcB9aqdD0+52DdKXrWryLxG:JTcbaU3KXiMxidTcbah3KXiMxG","tlshash":"d0e267bae8b50d9b6a5e65b416fa2a03306041db4edc3c053b1c1e4c6fdec1e6c7169e","first_seen":"2025-09-02T05:12:23.753308Z","last_seen":"2026-08-17T21:53:37.984566Z","times_seen":10386,"resource_available":true,"data":"Ly8gQVBJIGNhbGxiYWNrCmNhbGxiYWNrKHsKICAic291cmNlTGFuZ3VhZ2VzIjogWwogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXV0byIsCiAgICAgICJuYW1lIjogIkdqZW5ramVubiBzcHLDpWsiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWIiLAogICAgICAibmFtZSI6ICJhYmtoYXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWNlIiwKICAgICAgIm5hbWUiOiAiYWNlaG5lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhY2giLAogICAgICAibmFtZSI6ICJhY2hvbGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWEiLAogICAgICAibmFtZSI6ICJhZmFyIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFmIiwKICAgICAgIm5hbWUiOiAiYWZyaWthYW5zIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNxIiwKICAgICAgIm5hbWUiOiAiYWxiYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhbHoiLAogICAgICAibmFtZSI6ICJhbHVyIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFtIiwKICAgICAgIm5hbWUiOiAiYW1oYXJpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXIiLAogICAgICAibmFtZSI6ICJhcmFiaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImh5IiwKICAgICAgIm5hbWUiOiAiYXJtZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJheiIsCiAgICAgICJuYW1lIjogImFzZXJiYWpkc2phbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFzIiwKICAgICAgIm5hbWUiOiAiYXNzYW1lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhdiIsCiAgICAgICJuYW1lIjogImF2YXJpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXdhIiwKICAgICAgIm5hbWUiOiAiYXdhZGhpIgogICAgfSwKICAgIHsKICAgICAibGFuZ3VhZ2UiOiAiYXkiLAogICAgICAibmFtZSI6ICJheW1hcmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmFuIiwKICAgICAgIm5hbWUiOiAiYmFsaW5lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiYWwiLAogICAgICAibmFtZSI6ICJiYWx1dHNqaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJibSIsCiAgICAgICJuYW1lIjogImJhbWJhcmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmNpIiwKICAgICAgIm5hbWUiOiAiYmFvdWzDqSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiYSIsCiAgICAgICJuYW1lIjogImJhc2praXJzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJldSIsCiAgICAgICJuYW1lIjogImJhc2tpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYnR4IiwKICAgICAgIm5hbWUiOiAiYmF0YWsga2FybyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJidHMiLAogICAgICAibmFtZSI6ICJiYXRhayBzaW1hbHVuZ3VuIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJiYyIsCiAgICAgICJuYW1lIjogImJhdGFrIHRvYmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmVtIiwKICAgICAgIm5hbWUiOiAiYmVtYmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYm4iLAogICAgICAibmFtZSI6ICJiZW5nYWxpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJldyIsCiAgICAgICJuYW1lIjogImJldGF3aSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiaG8iLAogICAgICAibmFtZSI6ICJiaG9qcHVyaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiaWsiLAogICAgICAibmFtZSI6ICJiaWtvbCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJicyIsCiAgICAgICJuYW1lIjogImJvc25pc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYnIiLAogICAgICAibmFtZSI6ICJicmV0b25zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZyIsCiAgICAgICJuYW1lIjogImJ1bGdhcnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJ1YSIsCiAgICAgICJuYW1lIjogImJ1cmphdGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJteSIsCiAgICAgICJuYW1lIjogImJ1cm1lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjZWIiLAogICAgICAibmFtZSI6ICJjZWJ1YW5vIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNoIiwKICAgICAgIm5hbWUiOiAiY2hhbW9ycm8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibnkiLAogICAgICAibmFtZSI6ICJjaGljaGV3YSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkYSIsCiAgICAgICJuYW1lIjogImRhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZhLUFGIiwKICAgICAgIm5hbWUiOiAiZGFyaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkdiIsCiAgICAgICJuYW1lIjogImRoaXZlaGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZGluIiwKICAgICAgIm5hbWUiOiAiZGlua2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZG9pIiwKICAgICAgIm5hbWUiOiAiZG9ncmkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZG92IiwKICAgICAgIm5hbWUiOiAiZG9tYmUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZHl1IiwKICAgICAgIm5hbWUiOiAiRHl1bGEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZHoiLAogICAgICAibmFtZSI6ICJkem9uZ2toYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJlbiIsCiAgICAgICJuYW1lIjogImVuZ2Vsc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZW8iLAogICAgICAibmFtZSI6ICJlc3BlcmFudG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZXQiLAogICAgICAibmFtZSI6ICJlc3Rpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZWUiLAogICAgICAibmFtZSI6ICJld2UiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZmEiLAogICAgICAibmFtZSI6ICJmYXJzaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmaiIsCiAgICAgICJuYW1lIjogImZpamlhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZpIiwKICAgICAgIm5hbWUiOiAiZmluc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZm9uIiwKICAgICAgIm5hbWUiOiAiZm9uIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZyIiwKICAgICAgIm5hbWUiOiAiZnJhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZyLUNBIiwKICAgICAgIm5hbWUiOiAiRnJhbnNrIChDYW5hZGEpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZ5IiwKICAgICAgIm5hbWUiOiAiZnJpc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmdXIiLAogICAgICAibmFtZSI6ICJmcml1bGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmZiIsCiAgICAgICJuYW1lIjogImZ1bGZ1bGRlIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZvIiwKICAgICAgIm5hbWUiOiAiZsOmcsO4eXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdsIiwKICAgICAgIm5hbWUiOiAiZ2FsaXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2EiLAogICAgICAibmFtZSI6ICJnZW9yZ2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJlbCIsCiAgICAgICJuYW1lIjogImdyZXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImduIiwKICAgICAgIm5hbWUiOiAiZ3VhcmFuw60iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ3UiLAogICAgICAibmFtZSI6ICJndWphcmF0aSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJnYWEiLAogICAgICAibmFtZSI6ICJnYWEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY25oIiwKICAgICAgIm5hbWUiOiAiaGFraGEgY2hpbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJoYSIsCiAgICAgICJuYW1lIjogImhhdXNhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhhdyIsCiAgICAgICJuYW1lIjogImhhd2FpaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIml3IiwKICAgICAgIm5hbWUiOiAiaGVicmFpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaGlsIiwKICAgICAgIm5hbWUiOiAiaGlsaWdheW5vbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJoaSIsCiAgICAgICJuYW1lIjogImhpbmRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhtbiIsCiAgICAgICJuYW1lIjogImhtb25nIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhyeCIsCiAgICAgICJuYW1lIjogImh1bnNyaWsiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmUiLAogICAgICAibmFtZSI6ICJodml0ZXJ1c3Npc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaWJhIiwKICAgICAgIm5hbWUiOiAiaWJhbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpZyIsCiAgICAgICJuYW1lIjogImlnYm8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaWxvIiwKICAgICAgIm5hbWUiOiAiaWxva2FubyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpZCIsCiAgICAgICJuYW1lIjogImluZG9uZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaXUtTGF0biIsCiAgICAgICJuYW1lIjogIkludWt0aXR1dCAobGF0aW5zaykiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaXUiLAogICAgICAibmFtZSI6ICJJbnVrdGl0dXQgKHN0YXZlbHNlKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJnYSIsCiAgICAgICJuYW1lIjogImlyc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaXMiLAogICAgICAibmFtZSI6ICJpc2xhbmRzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpdCIsCiAgICAgICJuYW1lIjogIml0YWxpZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzYWgiLAogICAgICAibmFtZSI6ICJqYWt1dGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJqYW0iLAogICAgICAibmFtZSI6ICJqYW1haWNhbnNrIHBhdG9pcyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJqYSIsCiAgICAgICJuYW1lIjogImphcGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAianciLAogICAgICAibmFtZSI6ICJqYXZhbmVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInlpIiwKICAgICAgIm5hbWUiOiAiamlkZGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrYWMiLAogICAgICAibmFtZSI6ICJqaW5ncG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieW8iLAogICAgICAibmFtZSI6ICJqb3J1YmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2wiLAogICAgICAibmFtZSI6ICJrYWxhYWxsaXN1dCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrbiIsCiAgICAgICJuYW1lIjogImthbm5hZGEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieXVlIiwKICAgICAgIm5hbWUiOiAia2FudG9uZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3IiLAogICAgICAibmFtZSI6ICJrYW51cmkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicGFtIiwKICAgICAgIm5hbWUiOiAia2FwYW1wYW5nYW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2siLAogICAgICAibmFtZSI6ICJrYXNha2hpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2EiLAogICAgICAibmFtZSI6ICJrYXRhbGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2VrIiwKICAgICAgIm5hbWUiOiAia2VrY2hpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImtoYSIsCiAgICAgICJuYW1lIjogImtoYXNpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImttIiwKICAgICAgIm5hbWUiOiAia2htZXIiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2dnIiwKICAgICAgIm5hbWUiOiAia2lnYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrZyIsCiAgICAgICJuYW1lIjogImtpa29uZ28iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiemgtQ04iLAogICAgICAibmFtZSI6ICJraW5lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJydyIsCiAgICAgICJuYW1lIjogImtpbnlhcndhbmRhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImt5IiwKICAgICAgIm5hbWUiOiAia2lyZ2lzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInJuIiwKICAgICAgIm5hbWUiOiAia2lydW5kaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrdHUiLAogICAgICAibmFtZSI6ICJraXR1YmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHJwIiwKICAgICAgIm5hbWUiOiAia29rYm9yb2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3YiLAogICAgICAibmFtZSI6ICJrb21pIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdvbSIsCiAgICAgICJuYW1lIjogImtvbmthbmkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia28iLAogICAgICAibmFtZSI6ICJrb3JlYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjbyIsCiAgICAgICJuYW1lIjogImtvcnNpa2Fuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaHQiLAogICAgICAibmFtZSI6ICJrcmVvbCAoSGFpdGkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNycyIsCiAgICAgICJuYW1lIjogImtyZW9sIChTZXljaGVsbGVuZSkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY3JoIiwKICAgICAgIm5hbWUiOiAiS3JpbXRhdGFyaXNrIChreXJpbGxpc2spIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNyaC1MYXRuIiwKICAgICAgIm5hbWUiOiAiS3JpbXRhdGFyaXNrIChsYXRpbnNrKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrcmkiLAogICAgICAibmFtZSI6ICJrcmlvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhyIiwKICAgICAgIm5hbWUiOiAia3JvYXRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3UiLAogICAgICAibmFtZSI6ICJrdXJkaXNrIChrdXJtYW5qaSkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2tiIiwKICAgICAgIm5hbWUiOiAia3VyZGlzayAoc29yYW5pKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsbyIsCiAgICAgICJuYW1lIjogImxhb3Rpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibHRnIiwKICAgICAgIm5hbWUiOiAibGF0Z2FsaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxhIiwKICAgICAgIm5hbWUiOiAibGF0aW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibHYiLAogICAgICAibmFtZSI6ICJsYXR2aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxpaiIsCiAgICAgICJuYW1lIjogImxpZ3VyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxpIiwKICAgICAgIm5hbWUiOiAibGltYnVyZ3NrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxuIiwKICAgICAgIm5hbWUiOiAibGluZ2FsYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsdCIsCiAgICAgICJuYW1lIjogImxpdGF1aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxtbyIsCiAgICAgICJuYW1lIjogImxvbWJhcmRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibGciLAogICAgICAibmFtZSI6ICJsdWdhbmRhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImx1byIsCiAgICAgICJuYW1lIjogImx1byIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsYiIsCiAgICAgICJuYW1lIjogImx1eGVtYm91cmdzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtZyIsCiAgICAgICJuYW1lIjogIm1hZGFnYXNzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1hZCIsCiAgICAgICJuYW1lIjogIm1hZHVyZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWFpIiwKICAgICAgIm5hbWUiOiAibWFpdGhpbGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWFrIiwKICAgICAgIm5hbWUiOiAiTWFrYXNzYXIiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWsiLAogICAgICAibmFtZSI6ICJtYWtlZG9uc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWwiLAogICAgICAibmFtZSI6ICJtYWxheWFsYW0iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibXMiLAogICAgICAibmFtZSI6ICJtYWxheWlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtcy1BcmFiIiwKICAgICAgIm5hbWUiOiAibWFsYXlpc2sgKGphd2kpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm10IiwKICAgICAgIm5hbWUiOiAibWFsdGVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1hbSIsCiAgICAgICJuYW1lIjogIm1hbSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJndiIsCiAgICAgICJuYW1lIjogIm1hbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1pIiwKICAgICAgIm5hbWUiOiAibWFvcmkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibXIiLAogICAgICAibmFtZSI6ICJtYXJhdGhpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1oIiwKICAgICAgIm5hbWUiOiAibWFyc2hhbGxlc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtd3IiLAogICAgICAibmFtZSI6ICJtYXJ3YWRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1mZSIsCiAgICAgICJuYW1lIjogIm1hdXJpdGlzayBrcmVvbCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtbmktTXRlaSIsCiAgICAgICJuYW1lIjogIm1laXRlaWxvbiAobWFuaXB1cmkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1pbiIsCiAgICAgICJuYW1lIjogIm1pbmFuZyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsdXMiLAogICAgICAibmFtZSI6ICJtaXpvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1uIiwKICAgICAgIm5hbWUiOiAibW9uZ29sc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibmhlIiwKICAgICAgIm5hbWUiOiAibmFodWF0bCAow7hzdGxpZ2UgSHVhc3RlY2EpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5kYy1aVyIsCiAgICAgICJuYW1lIjogIm5kYXUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibnIiLAogICAgICAibmFtZSI6ICJuZGViZWxlIChzw7hyKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJubCIsCiAgICAgICJuYW1lIjogIm5lZGVybGFuZHNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5ldyIsCiAgICAgICJuYW1lIjogIk5lcGFsIGJoYXNhIChuZXdhcmkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5lIiwKICAgICAgIm5hbWUiOiAibmVwYWxzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJibS1Oa29vIiwKICAgICAgIm5hbWUiOiAiTktvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5vIiwKICAgICAgIm5hbWUiOiAibm9yc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibnVzIiwKICAgICAgIm5hbWUiOiAibnVlciIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJvYyIsCiAgICAgICJuYW1lIjogIm9rc2l0YW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJvciIsCiAgICAgICJuYW1lIjogIm9yaXlhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm9tIiwKICAgICAgIm5hbWUiOiAib3JvbW8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAib3MiLAogICAgICAibmFtZSI6ICJvc3NldGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYWciLAogICAgICAibmFtZSI6ICJwYW5nYXNpbmFuIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBhIiwKICAgICAgIm5hbWUiOiAiUGFuamFiaSAoZ3VybXVraGkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBhLUFyYWIiLAogICAgICAibmFtZSI6ICJwYW5qYWJpIChzaGFobXVraGkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBhcCIsCiAgICAgICJuYW1lIjogInBhcGlhbWVudG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicHMiLAogICAgICAibmFtZSI6ICJwYXNodG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicGwiLAogICAgICAibmFtZSI6ICJwb2xzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwdCIsCiAgICAgICJuYW1lIjogInBvcnR1Z2lzaXNrIChCcmFzaWwpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInB0LVBUIiwKICAgICAgIm5hbWUiOiAicG9ydHVnaXNpc2sgKFBvcnR1Z2FsKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJxdSIsCiAgICAgICJuYW1lIjogInF1ZWNodWEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicm9tIiwKICAgICAgIm5hbWUiOiAicm9tYW5pIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInJvIiwKICAgICAgIm5hbWUiOiAicnVtZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJydSIsCiAgICAgICJuYW1lIjogInJ1c3Npc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2UiLAogICAgICAibmFtZSI6ICJzYW1pc2sgKG5vcmQpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNtIiwKICAgICAgIm5hbWUiOiAic2Ftb2Fuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2ciLAogICAgICAibmFtZSI6ICJzYW5nbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzYSIsCiAgICAgICJuYW1lIjogInNhbnNrcml0IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNhdC1MYXRuIiwKICAgICAgIm5hbWUiOiAiU2FudGFsaSAobGF0aW5zaykiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2F0IiwKICAgICAgIm5hbWUiOiAiU2FudGFsaSAob2wgY2hpa2kpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN6bCIsCiAgICAgICJuYW1lIjogInNjaGxlc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJuc28iLAogICAgICAibmFtZSI6ICJzZXBlZGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic3IiLAogICAgICAibmFtZSI6ICJzZXJiaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNobiIsCiAgICAgICJuYW1lIjogInNoYW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic24iLAogICAgICAibmFtZSI6ICJzaG9uYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzY24iLAogICAgICAibmFtZSI6ICJzaWNpbGlhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNkIiwKICAgICAgIm5hbWUiOiAic2luZGhpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNpIiwKICAgICAgIm5hbWUiOiAic2luZ2FsZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ2QiLAogICAgICAibmFtZSI6ICJza290c2sgZ8OmbGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzayIsCiAgICAgICJuYW1lIjogInNsb3Zha2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzbCIsCiAgICAgICJuYW1lIjogInNsb3ZlbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNvIiwKICAgICAgIm5hbWUiOiAic29tYWxpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN0IiwKICAgICAgIm5hbWUiOiAic290aG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZXMiLAogICAgICAibmFtZSI6ICJzcGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic3UiLAogICAgICAibmFtZSI6ICJzdW5kYW5lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzdXMiLAogICAgICAibmFtZSI6ICJzdXN1IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN2IiwKICAgICAgIm5hbWUiOiAic3ZlbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN3IiwKICAgICAgIm5hbWUiOiAic3dhaGlsaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzcyIsCiAgICAgICJuYW1lIjogInN3YXRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRnIiwKICAgICAgIm5hbWUiOiAidGFkc2ppa2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0bCIsCiAgICAgICJuYW1lIjogInRhZ2Fsb2ciCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHkiLAogICAgICAibmFtZSI6ICJ0YWhpdGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZXItTGF0biIsCiAgICAgICJuYW1lIjogInRhbWF6aWdodCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZXIiLAogICAgICAibmFtZSI6ICJ0YW1hemlnaHQgKHRpZmluYWdoKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0YSIsCiAgICAgICJuYW1lIjogInRhbWlsIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInR0IiwKICAgICAgIm5hbWUiOiAidGF0YXJpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGUiLAogICAgICAibmFtZSI6ICJ0ZWx1Z3UiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGV0IiwKICAgICAgIm5hbWUiOiAidGV0dW0iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGgiLAogICAgICAibmFtZSI6ICJ0aGFpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJvIiwKICAgICAgIm5hbWUiOiAidGliZXRhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRpIiwKICAgICAgIm5hbWUiOiAidGlncmluamEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGl2IiwKICAgICAgIm5hbWUiOiAidGl2IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRwaSIsCiAgICAgICJuYW1lIjogInRvayBwaXNpbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0byIsCiAgICAgICJuYW1lIjogInRvbmdhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImx1YSIsCiAgICAgICJuYW1lIjogInRzaGlsdWJhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNzIiwKICAgICAgIm5hbWUiOiAidHNqZWtraXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNlIiwKICAgICAgIm5hbWUiOiAidHNqZXRzamVuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2hrIiwKICAgICAgIm5hbWUiOiAidHNqdWt0c2ppc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY3YiLAogICAgICAibmFtZSI6ICJ0c2p1dmFzamlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0cyIsCiAgICAgICJuYW1lIjogInRzb25nYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0biIsCiAgICAgICJuYW1lIjogInRzd2FuYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0Y3kiLAogICAgICAibmFtZSI6ICJ0dWx1IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInR1bSIsCiAgICAgICJuYW1lIjogInR1bWJ1a2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGsiLAogICAgICAibmFtZSI6ICJ0dXJrbWVuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHl2IiwKICAgICAgIm5hbWUiOiAidHV2aW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhayIsCiAgICAgICJuYW1lIjogInR3aSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0ciIsCiAgICAgICJuYW1lIjogInR5cmtpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZGUiLAogICAgICAibmFtZSI6ICJ0eXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInVkbSIsCiAgICAgICJuYW1lIjogInVkbXVydGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1ZyIsCiAgICAgICJuYW1lIjogInVpZ3VyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInVrIiwKICAgICAgIm5hbWUiOiAidWtyYWluc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaHUiLAogICAgICAibmFtZSI6ICJ1bmdhcnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInVyIiwKICAgICAgIm5hbWUiOiAidXJkdSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1eiIsCiAgICAgICJuYW1lIjogInVzYmVraXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInZlIiwKICAgICAgIm5hbWUiOiAidmVuZGEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidmVjIiwKICAgICAgIm5hbWUiOiAidmVuZXRpYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ2aSIsCiAgICAgICJuYW1lIjogInZpZXRuYW1lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjeSIsCiAgICAgICJuYW1lIjogIndhbGlzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIndhciIsCiAgICAgICJuYW1lIjogIndhcmF5LXdhcmF5IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIndvIiwKICAgICAgIm5hbWUiOiAid29sb2YiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieGgiLAogICAgICAibmFtZSI6ICJ4aG9zYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ5dWEiLAogICAgICAibmFtZSI6ICJ5dWthdGFuc2sgbWF5YSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ6YXAiLAogICAgICAibmFtZSI6ICJ6YXBvdGVjIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInp1IiwKICAgICAgIm5hbWUiOiAienVsdSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjaG0iLAogICAgICAibmFtZSI6ICLDuHN0bWFyaXNrIgogICAgfQogIF0sCiAgInRhcmdldExhbmd1YWdlcyI6IFsKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFiIiwKICAgICAgIm5hbWUiOiAiYWJraGFzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFjZSIsCiAgICAgICJuYW1lIjogImFjZWhuZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWNoIiwKICAgICAgIm5hbWUiOiAiYWNob2xpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFhIiwKICAgICAgIm5hbWUiOiAiYWZhciIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhZiIsCiAgICAgICJuYW1lIjogImFmcmlrYWFucyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzcSIsCiAgICAgICJuYW1lIjogImFsYmFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWx6IiwKICAgICAgIm5hbWUiOiAiYWx1ciIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhbSIsCiAgICAgICJuYW1lIjogImFtaGFyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFyIiwKICAgICAgIm5hbWUiOiAiYXJhYmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJoeSIsCiAgICAgICJuYW1lIjogImFybWVuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXoiLAogICAgICAibmFtZSI6ICJhc2VyYmFqZHNqYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhcyIsCiAgICAgICJuYW1lIjogImFzc2FtZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXYiLAogICAgICAibmFtZSI6ICJhdmFyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImF3YSIsCiAgICAgICJuYW1lIjogImF3YWRoaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJheSIsCiAgICAgICJuYW1lIjogImF5bWFyYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiYW4iLAogICAgICAibmFtZSI6ICJiYWxpbmVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJhbCIsCiAgICAgICJuYW1lIjogImJhbHV0c2ppIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJtIiwKICAgICAgIm5hbWUiOiAiYmFtYmFyYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiY2kiLAogICAgICAibmFtZSI6ICJiYW91bMOpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJhIiwKICAgICAgIm5hbWUiOiAiYmFzamtpcnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImV1IiwKICAgICAgIm5hbWUiOiAiYmFza2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJidHgiLAogICAgICAibmFtZSI6ICJiYXRhayBrYXJvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJ0cyIsCiAgICAgICJuYW1lIjogImJhdGFrIHNpbWFsdW5ndW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmJjIiwKICAgICAgIm5hbWUiOiAiYmF0YWsgdG9iYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZW0iLAogICAgICAibmFtZSI6ICJiZW1iYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJibiIsCiAgICAgICJuYW1lIjogImJlbmdhbGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmV3IiwKICAgICAgIm5hbWUiOiAiYmV0YXdpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJobyIsCiAgICAgICJuYW1lIjogImJob2pwdXJpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJpayIsCiAgICAgICJuYW1lIjogImJpa29sIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJzIiwKICAgICAgIm5hbWUiOiAiYm9zbmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiciIsCiAgICAgICJuYW1lIjogImJyZXRvbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJnIiwKICAgICAgIm5hbWUiOiAiYnVsZ2Fyc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYnVhIiwKICAgICAgIm5hbWUiOiAiYnVyamF0aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm15IiwKICAgICAgIm5hbWUiOiAiYnVybWVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNlYiIsCiAgICAgICJuYW1lIjogImNlYnVhbm8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2giLAogICAgICAibmFtZSI6ICJjaGFtb3JybyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJueSIsCiAgICAgICJuYW1lIjogImNoaWNoZXdhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImRhIiwKICAgICAgIm5hbWUiOiAiZGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZmEtQUYiLAogICAgICAibmFtZSI6ICJkYXJpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImR2IiwKICAgICAgIm5hbWUiOiAiZGhpdmVoaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkaW4iLAogICAgICAibmFtZSI6ICJkaW5rYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkb2kiLAogICAgICAibmFtZSI6ICJkb2dyaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkb3YiLAogICAgICAibmFtZSI6ICJkb21iZSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkeXUiLAogICAgICAibmFtZSI6ICJEeXVsYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkeiIsCiAgICAgICJuYW1lIjogImR6b25na2hhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImVuIiwKICAgICAgIm5hbWUiOiAiZW5nZWxzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJlbyIsCiAgICAgICJuYW1lIjogImVzcGVyYW50byIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJldCIsCiAgICAgICJuYW1lIjogImVzdGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJlZSIsCiAgICAgICJuYW1lIjogImV3ZSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmYSIsCiAgICAgICJuYW1lIjogImZhcnNpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZqIiwKICAgICAgIm5hbWUiOiAiZmlqaWFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZmkiLAogICAgICAibmFtZSI6ICJmaW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmb24iLAogICAgICAibmFtZSI6ICJmb24iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZnIiLAogICAgICAibmFtZSI6ICJmcmFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZnItQ0EiLAogICAgICAibmFtZSI6ICJGcmFuc2sgKENhbmFkYSkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZnkiLAogICAgICAibmFtZSI6ICJmcmlzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZ1ciIsCiAgICAgICJuYW1lIjogImZyaXVsaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZmIiwKICAgICAgIm5hbWUiOiAiZnVsZnVsZGUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZm8iLAogICAgICAibmFtZSI6ICJmw6Zyw7h5c2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ2wiLAogICAgICAibmFtZSI6ICJnYWxpc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrYSIsCiAgICAgICJuYW1lIjogImdlb3JnaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImVsIiwKICAgICAgIm5hbWUiOiAiZ3Jlc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ24iLAogICAgICAibmFtZSI6ICJndWFyYW7DrSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJndSIsCiAgICAgICJuYW1lIjogImd1amFyYXRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdhYSIsCiAgICAgICJuYW1lIjogImdhYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjbmgiLAogICAgICAibmFtZSI6ICJoYWtoYSBjaGluIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhhIiwKICAgICAgIm5hbWUiOiAiaGF1c2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaGF3IiwKICAgICAgIm5hbWUiOiAiaGF3YWlpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaXciLAogICAgICAibmFtZSI6ICJoZWJyYWlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJoaWwiLAogICAgICAibmFtZSI6ICJoaWxpZ2F5bm9uIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhpIiwKICAgICAgIm5hbWUiOiAiaGluZGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaG1uIiwKICAgICAgIm5hbWUiOiAiaG1vbmciCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaHJ4IiwKICAgICAgIm5hbWUiOiAiaHVuc3JpayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZSIsCiAgICAgICJuYW1lIjogImh2aXRlcnVzc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpYmEiLAogICAgICAibmFtZSI6ICJpYmFuIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImlnIiwKICAgICAgIm5hbWUiOiAiaWdibyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpbG8iLAogICAgICAibmFtZSI6ICJpbG9rYW5vIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImlkIiwKICAgICAgIm5hbWUiOiAiaW5kb25lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpdS1MYXRuIiwKICAgICAgIm5hbWUiOiAiSW51a3RpdHV0IChsYXRpbnNrKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpdSIsCiAgICAgICJuYW1lIjogIkludWt0aXR1dCAoc3RhdmVsc2UpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdhIiwKICAgICAgIm5hbWUiOiAiaXJzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpcyIsCiAgICAgICJuYW1lIjogImlzbGFuZHNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIml0IiwKICAgICAgIm5hbWUiOiAiaXRhbGllbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNhaCIsCiAgICAgICJuYW1lIjogImpha3V0aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImphbSIsCiAgICAgICJuYW1lIjogImphbWFpY2Fuc2sgcGF0b2lzIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImphIiwKICAgICAgIm5hbWUiOiAiamFwYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJqdyIsCiAgICAgICJuYW1lIjogImphdmFuZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieWkiLAogICAgICAibmFtZSI6ICJqaWRkaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImthYyIsCiAgICAgICJuYW1lIjogImppbmdwbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ5byIsCiAgICAgICJuYW1lIjogImpvcnViYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrbCIsCiAgICAgICJuYW1lIjogImthbGFhbGxpc3V0IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImtuIiwKICAgICAgIm5hbWUiOiAia2FubmFkYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ5dWUiLAogICAgICAibmFtZSI6ICJrYW50b25lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrciIsCiAgICAgICJuYW1lIjogImthbnVyaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYW0iLAogICAgICAibmFtZSI6ICJrYXBhbXBhbmdhbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrayIsCiAgICAgICJuYW1lIjogImthc2FraGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjYSIsCiAgICAgICJuYW1lIjogImthdGFsYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrZWsiLAogICAgICAibmFtZSI6ICJrZWtjaGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2hhIiwKICAgICAgIm5hbWUiOiAia2hhc2kiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia20iLAogICAgICAibmFtZSI6ICJraG1lciIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjZ2ciLAogICAgICAibmFtZSI6ICJraWdhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImtnIiwKICAgICAgIm5hbWUiOiAia2lrb25nbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ6aC1DTiIsCiAgICAgICJuYW1lIjogImtpbmVzaXNrIChmb3JlbmtsZXQpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInpoLVRXIiwKICAgICAgIm5hbWUiOiAia2luZXNpc2sgKHRyYWRpc2pvbmVsbCkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicnciLAogICAgICAibmFtZSI6ICJraW55YXJ3YW5kYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJreSIsCiAgICAgICJuYW1lIjogImtpcmdpc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJybiIsCiAgICAgICJuYW1lIjogImtpcnVuZGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3R1IiwKICAgICAgIm5hbWUiOiAia2l0dWJhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRycCIsCiAgICAgICJuYW1lIjogImtva2Jvcm9rIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImt2IiwKICAgICAgIm5hbWUiOiAia29taSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJnb20iLAogICAgICAibmFtZSI6ICJrb25rYW5pIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImtvIiwKICAgICAgIm5hbWUiOiAia29yZWFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY28iLAogICAgICAibmFtZSI6ICJrb3JzaWthbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImh0IiwKICAgICAgIm5hbWUiOiAia3Jlb2wgKEhhaXRpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjcnMiLAogICAgICAibmFtZSI6ICJrcmVvbCAoU2V5Y2hlbGxlbmUpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNyaCIsCiAgICAgICJuYW1lIjogIktyaW10YXRhcmlzayAoa3lyaWxsaXNrKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjcmgtTGF0biIsCiAgICAgICJuYW1lIjogIktyaW10YXRhcmlzayAobGF0aW5zaykiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3JpIiwKICAgICAgIm5hbWUiOiAia3JpbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJociIsCiAgICAgICJuYW1lIjogImtyb2F0aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImt1IiwKICAgICAgIm5hbWUiOiAia3VyZGlzayAoa3VybWFuamkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNrYiIsCiAgICAgICJuYW1lIjogImt1cmRpc2sgKHNvcmFuaSkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibG8iLAogICAgICAibmFtZSI6ICJsYW90aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImx0ZyIsCiAgICAgICJuYW1lIjogImxhdGdhbGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsYSIsCiAgICAgICJuYW1lIjogImxhdGluIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImx2IiwKICAgICAgIm5hbWUiOiAibGF0dmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsaWoiLAogICAgICAibmFtZSI6ICJsaWd1cmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsaSIsCiAgICAgICJuYW1lIjogImxpbWJ1cmdzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsbiIsCiAgICAgICJuYW1lIjogImxpbmdhbGEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibHQiLAogICAgICAibmFtZSI6ICJsaXRhdWlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsbW8iLAogICAgICAibmFtZSI6ICJsb21iYXJkaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxnIiwKICAgICAgIm5hbWUiOiAibHVnYW5kYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsdW8iLAogICAgICAibmFtZSI6ICJsdW8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibGIiLAogICAgICAibmFtZSI6ICJsdXhlbWJvdXJnc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWciLAogICAgICAibmFtZSI6ICJtYWRhZ2Fzc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtYWQiLAogICAgICAibmFtZSI6ICJtYWR1cmVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1haSIsCiAgICAgICJuYW1lIjogIm1haXRoaWxpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1hayIsCiAgICAgICJuYW1lIjogIk1ha2Fzc2FyIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1rIiwKICAgICAgIm5hbWUiOiAibWFrZWRvbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1sIiwKICAgICAgIm5hbWUiOiAibWFsYXlhbGFtIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1zIiwKICAgICAgIm5hbWUiOiAibWFsYXlpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibXMtQXJhYiIsCiAgICAgICJuYW1lIjogIm1hbGF5aXNrIChqYXdpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtdCIsCiAgICAgICJuYW1lIjogIm1hbHRlc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtYW0iLAogICAgICAibmFtZSI6ICJtYW0iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ3YiLAogICAgICAibmFtZSI6ICJtYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtaSIsCiAgICAgICJuYW1lIjogIm1hb3JpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1yIiwKICAgICAgIm5hbWUiOiAibWFyYXRoaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtaCIsCiAgICAgICJuYW1lIjogIm1hcnNoYWxsZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibXdyIiwKICAgICAgIm5hbWUiOiAibWFyd2FkaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtZmUiLAogICAgICAibmFtZSI6ICJtYXVyaXRpc2sga3Jlb2wiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibW5pLU10ZWkiLAogICAgICAibmFtZSI6ICJtZWl0ZWlsb24gKG1hbmlwdXJpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtaW4iLAogICAgICAibmFtZSI6ICJtaW5hbmciCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibHVzIiwKICAgICAgIm5hbWUiOiAibWl6byIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtbiIsCiAgICAgICJuYW1lIjogIm1vbmdvbHNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5oZSIsCiAgICAgICJuYW1lIjogIm5haHVhdGwgKMO4c3RsaWdlIEh1YXN0ZWNhKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJuZGMtWlciLAogICAgICAibmFtZSI6ICJuZGF1IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5yIiwKICAgICAgIm5hbWUiOiAibmRlYmVsZSAoc8O4cikiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibmwiLAogICAgICAibmFtZSI6ICJuZWRlcmxhbmRzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJuZXciLAogICAgICAibmFtZSI6ICJOZXBhbCBiaGFzYSAobmV3YXJpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJuZSIsCiAgICAgICJuYW1lIjogIm5lcGFsc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYm0tTmtvbyIsCiAgICAgICJuYW1lIjogIk5LbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJubyIsCiAgICAgICJuYW1lIjogIm5vcnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm51cyIsCiAgICAgICJuYW1lIjogIm51ZXIiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAib2MiLAogICAgICAibmFtZSI6ICJva3NpdGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAib3IiLAogICAgICAibmFtZSI6ICJvcml5YSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJvbSIsCiAgICAgICJuYW1lIjogIm9yb21vIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm9zIiwKICAgICAgIm5hbWUiOiAib3NzZXRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicGFnIiwKICAgICAgIm5hbWUiOiAicGFuZ2FzaW5hbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYSIsCiAgICAgICJuYW1lIjogIlBhbmphYmkgKGd1cm11a2hpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYS1BcmFiIiwKICAgICAgIm5hbWUiOiAicGFuamFiaSAoc2hhaG11a2hpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYXAiLAogICAgICAibmFtZSI6ICJwYXBpYW1lbnRvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBzIiwKICAgICAgIm5hbWUiOiAicGFzaHRvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBsIiwKICAgICAgIm5hbWUiOiAicG9sc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicHQiLAogICAgICAibmFtZSI6ICJwb3J0dWdpc2lzayAoQnJhc2lsKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwdC1QVCIsCiAgICAgICJuYW1lIjogInBvcnR1Z2lzaXNrIChQb3J0dWdhbCkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicXUiLAogICAgICAibmFtZSI6ICJxdWVjaHVhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInJvbSIsCiAgICAgICJuYW1lIjogInJvbWFuaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJybyIsCiAgICAgICJuYW1lIjogInJ1bWVuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicnUiLAogICAgICAibmFtZSI6ICJydXNzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNlIiwKICAgICAgIm5hbWUiOiAic2FtaXNrIChub3JkKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzbSIsCiAgICAgICJuYW1lIjogInNhbW9hbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNnIiwKICAgICAgIm5hbWUiOiAic2FuZ28iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2EiLAogICAgICAibmFtZSI6ICJzYW5za3JpdCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzYXQtTGF0biIsCiAgICAgICJuYW1lIjogIlNhbnRhbGkgKGxhdGluc2spIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNhdCIsCiAgICAgICJuYW1lIjogIlNhbnRhbGkgKG9sIGNoaWtpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzemwiLAogICAgICAibmFtZSI6ICJzY2hsZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibnNvIiwKICAgICAgIm5hbWUiOiAic2VwZWRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNyIiwKICAgICAgIm5hbWUiOiAic2VyYmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzaG4iLAogICAgICAibmFtZSI6ICJzaGFuIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNuIiwKICAgICAgIm5hbWUiOiAic2hvbmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2NuIiwKICAgICAgIm5hbWUiOiAic2ljaWxpYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzZCIsCiAgICAgICJuYW1lIjogInNpbmRoaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzaSIsCiAgICAgICJuYW1lIjogInNpbmdhbGVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdkIiwKICAgICAgIm5hbWUiOiAic2tvdHNrIGfDpmxpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2siLAogICAgICAibmFtZSI6ICJzbG92YWtpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2wiLAogICAgICAibmFtZSI6ICJzbG92ZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzbyIsCiAgICAgICJuYW1lIjogInNvbWFsaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzdCIsCiAgICAgICJuYW1lIjogInNvdGhvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImVzIiwKICAgICAgIm5hbWUiOiAic3BhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN1IiwKICAgICAgIm5hbWUiOiAic3VuZGFuZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic3VzIiwKICAgICAgIm5hbWUiOiAic3VzdSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzdiIsCiAgICAgICJuYW1lIjogInN2ZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzdyIsCiAgICAgICJuYW1lIjogInN3YWhpbGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic3MiLAogICAgICAibmFtZSI6ICJzd2F0aSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0ZyIsCiAgICAgICJuYW1lIjogInRhZHNqaWtpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGwiLAogICAgICAibmFtZSI6ICJ0YWdhbG9nIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInR5IiwKICAgICAgIm5hbWUiOiAidGFoaXRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmVyLUxhdG4iLAogICAgICAibmFtZSI6ICJ0YW1hemlnaHQiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmVyIiwKICAgICAgIm5hbWUiOiAidGFtYXppZ2h0ICh0aWZpbmFnaCkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGEiLAogICAgICAibmFtZSI6ICJ0YW1pbCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0dCIsCiAgICAgICJuYW1lIjogInRhdGFyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRlIiwKICAgICAgIm5hbWUiOiAidGVsdWd1IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRldCIsCiAgICAgICJuYW1lIjogInRldHVtIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRoIiwKICAgICAgIm5hbWUiOiAidGhhaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJibyIsCiAgICAgICJuYW1lIjogInRpYmV0YW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0aSIsCiAgICAgICJuYW1lIjogInRpZ3JpbmphIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRpdiIsCiAgICAgICJuYW1lIjogInRpdiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0cGkiLAogICAgICAibmFtZSI6ICJ0b2sgcGlzaW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidG8iLAogICAgICAibmFtZSI6ICJ0b25nYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsdWEiLAogICAgICAibmFtZSI6ICJ0c2hpbHViYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjcyIsCiAgICAgICJuYW1lIjogInRzamVra2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjZSIsCiAgICAgICJuYW1lIjogInRzamV0c2plbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNoayIsCiAgICAgICJuYW1lIjogInRzanVrdHNqaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImN2IiwKICAgICAgIm5hbWUiOiAidHNqdXZhc2ppc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHMiLAogICAgICAibmFtZSI6ICJ0c29uZ2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidG4iLAogICAgICAibmFtZSI6ICJ0c3dhbmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGN5IiwKICAgICAgIm5hbWUiOiAidHVsdSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0dW0iLAogICAgICAibmFtZSI6ICJ0dW1idWthIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRrIiwKICAgICAgIm5hbWUiOiAidHVya21lbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInR5diIsCiAgICAgICJuYW1lIjogInR1dmluc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWsiLAogICAgICAibmFtZSI6ICJ0d2kiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHIiLAogICAgICAibmFtZSI6ICJ0eXJraXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImRlIiwKICAgICAgIm5hbWUiOiAidHlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1ZG0iLAogICAgICAibmFtZSI6ICJ1ZG11cnRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidWciLAogICAgICAibmFtZSI6ICJ1aWd1cmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1ayIsCiAgICAgICJuYW1lIjogInVrcmFpbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImh1IiwKICAgICAgIm5hbWUiOiAidW5nYXJzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1ciIsCiAgICAgICJuYW1lIjogInVyZHUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidXoiLAogICAgICAibmFtZSI6ICJ1c2Jla2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ2ZSIsCiAgICAgICJuYW1lIjogInZlbmRhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInZlYyIsCiAgICAgICJuYW1lIjogInZlbmV0aWFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidmkiLAogICAgICAibmFtZSI6ICJ2aWV0bmFtZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY3kiLAogICAgICAibmFtZSI6ICJ3YWxpc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ3YXIiLAogICAgICAibmFtZSI6ICJ3YXJheS13YXJheSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ3byIsCiAgICAgICJuYW1lIjogIndvbG9mIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInhoIiwKICAgICAgIm5hbWUiOiAieGhvc2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieXVhIiwKICAgICAgIm5hbWUiOiAieXVrYXRhbnNrIG1heWEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiemFwIiwKICAgICAgIm5hbWUiOiAiemFwb3RlYyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ6dSIsCiAgICAgICJuYW1lIjogInp1bHUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2htIiwKICAgICAgIm5hbWUiOiAiw7hzdG1hcmlzayIKICAgIH0KICBdCn0KKTs="}},"time_used":57,"timings":{"blocked":-1,"dns":2,"connect":8,"send":0,"wait":26,"receive":0,"ssl":21},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/planicon1.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.542Z","timestamp":1785158432542,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/planicon1.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=pUxEfKCjEr6OiXuyW6zR6w%2Bsm0%2BvP%2FPW4%2FgOKeYKm2PTRvqm%2B%2Ftz%2B8bz2hg4hGIEC0RcMAo2691M840fKnVCjXWaglTAK6A2daJVvuk%2FmW4LrU6RBfuosmK%2BvJ9EicEjfIPJ9w%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b6c7756b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 4782\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":4782,"size_decoded":5556,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"c97fa68435369e8444aaa6bc10a1d01f","sha1":"9a78dd589c849a388c7fe02ab8b8d5cb908eb75a","sha256":"713f1a0d6cf136c5693e7bdef8be34cd98e625b04cac31cf3996c909a7123904","sha512":"159007d4f7733acaa87754a652793a1e249d946d5f7fbdcffb1aea8bc0f3165eb985eec781e9d50717744b8fc0628a0132994ad927a8134be4230c26557ec2c8","ssdeep":"96:PY2/Tv0lGaDNki/LHMeWpoy6BlsGyxO0iMFR1yJo:PLfapkALseACBlsGWFR1yJo","tlshash":"9da18e0aae002904d584e9c250eee95d5d931f81d6f4f726451ad3ad29e60e8d08eecf","first_seen":"2024-09-19T20:45:30.985603Z","last_seen":"2026-07-27T13:21:39.123246Z","times_seen":17,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODg2MUMxNkI4NUQ0MTFFOUI1NjZERTMwMjQ1NzY3REMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODg2MUMxNkM4NUQ0MTFFOUI1NjZERTMwMjQ1NzY3REMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4ODYxQzE2OTg1RDQxMUU5QjU2NkRFMzAyNDU3NjdEQyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4ODYxQzE2QTg1RDQxMUU5QjU2NkRFMzAyNDU3NjdEQyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqvhxzYAAA8iSURBVHja3FsLWFVV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"}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/featuredicon1.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.573Z","timestamp":1785158432573,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/featuredicon1.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=J%2FXSrttbImlC6%2FT7bdaXk0l1JNcvRS5oBeVAHrUVK%2FaScc9GYzFsCyXD2Y7R%2B%2BX%2Fq5AE2voqSJvNdF%2B7q4GMR8oqiU%2FENfFhmA7hjcRQCsphHQORQ4Pk%2BMCeeuxrEkR2Kzhmrg%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b9c8556b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 3432\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":3432,"size_decoded":4206,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"f6a8e8a60400a5e33848f8d8af5bdd6e","sha1":"4c2f00c96061c8413bd90fd8dc8a1b23754cd853","sha256":"10d8895d4439c3f6ba8bda11254dab6292fe6a1ecbd82c5a514e43b1a361895e","sha512":"8599d488acb25f5425ad0afdd2a7a252f22479839335df11c8d015dfef06156b539c007b29d8bcd8eb9c8a6ee9571e924e125701721264d04546b095fd7cc216","ssdeep":"","tlshash":"2e614c48ea917d686985d8d584aec203b63296c0dad87055deccd883163d576a89c543","first_seen":"2024-09-19T20:45:30.97873Z","last_seen":"2026-07-27T13:21:39.088367Z","times_seen":22,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MkQzMjQxMUI4NUQ3MTFFOThFQ0NCODJDQkYzN0FDNzMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MkQzMjQxMUM4NUQ3MTFFOThFQ0NCODJDQkYzN0FDNzMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoyRDMyNDExOTg1RDcxMUU5OEVDQ0I4MkNCRjM3QUM3MyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoyRDMyNDExQTg1RDcxMUU5OEVDQ0I4MkNCRjM3QUM3MyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Po4uevcAAAncSURBVHja7FoPdIxX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"}},"time_used":11,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":11,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/4ekOcDG2D8E","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.791Z","timestamp":1785158432791,"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/4ekOcDG2D8E 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://uniz-coinzltd.com/\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ncontent-type: text/html; charset=utf-8\r\nx-content-type-options: nosniff\r\ncontent-security-policy: script-src 'unsafe-eval' 'self' 'unsafe-inline' https://www.google.com https://apis.google.com https://ssl.gstatic.com https://www.gstatic.com https://www.googletagmanager.com https://www.google-analytics.com https://*.youtube.com https://*.google.com https://*.gstatic.com https://youtube.com https://www.youtube.com https://google.com https://*.doubleclick.net https://*.googleapis.com https://www.googleadservices.com https://tpc.googlesyndication.com https://www.youtubekids.com https://www.youtube-nocookie.com https://www.youtubeeducation.com https://www-onepick-opensocial.googleusercontent.com;report-uri https://csp.withgoogle.com/csp/youtube_main/allowlist, base-uri 'self';object-src 'none';script-src 'nonce-8InqffAgHV-e9ASX99fZlQ' '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 13:20:32 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\norigin-trial: AmhMBR6zCLzDDxpW+HfpP67BqwIknWnyMOXOQGfzYswFmJe+fgaI6XZgAzcxOrzNtP7hEDsOo1jdjFnVr2IdxQ4AAAB4eyJvcmlnaW4iOiJodHRwczovL3lvdXR1YmUuY29tOjQ0MyIsImZlYXR1cmUiOiJXZWJWaWV3WFJlcXVlc3RlZFdpdGhEZXByZWNhdGlvbiIsImV4cGlyeSI6MTc1ODA2NzE5OSwiaXNTdWJkb21haW4iOnRydWV9, AiDEBptUfVeO93q48VdVMe/ubupazdAl8AaHP+NBzdnW8quUcHdzJUyGSfrmtpKJu7EOvwRp9ug2rEo3XU+WMAMAAAB2eyJvcmlnaW4iOiJodHRwczovL3lvdXR1YmUuY29tOjQ0MyIsImZlYXR1cmUiOiJEZXZpY2VCb3VuZFNlc3Npb25DcmVkZW50aWFsczIiLCJleHBpcnkiOjE3NzQzMTA0MDAsImlzU3ViZG9tYWluIjp0cnVlfQ==\r\ncross-origin-embedder-policy-report-only: require-corp; report-to=\"youtube_main\"\r\ncross-origin-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=gH5UekW7d1yJXHdyAWP9D3nuufltIP5U3L-OJPITdfVo4QFdUpGIlO1MrkvQo6k6kl0jq_pOZAm0Y6StBGPZKrWCX-Ie8T1zxUJW6abmYuVU53Il1VEq4vUs5vvLfbgZGHz1eALkxngiX8bUsdRMr2vaKLTZJ0IBhq1y-2EM8N90iJ0cyWzGnhUGzNxuZzHw9HXFuIwKItlZKR3JI0AWby-eMB-aedGxFUVnqseGfA1HlqbnqC5EymsVz59X4lHMwh44OYJRjaiXEEhEetat2qsHLh8v23W9zHmKOEE2ZhT3CAsXUCZ0LdHpvohM6BZq6G030fjyK9N5mMzUa8e_Fw; expires=Sat, 23-Jan-2027 13:20:32 GMT; path=/; domain=.youtube.com; Secure; HttpOnly; SameSite=none\nYSC=n_kiEdK62Us; Domain=.youtube.com; Path=/; Secure; HttpOnly; SameSite=none\n__Secure-YEC=; Domain=.youtube.com; Expires=Tue, 31-Oct-2023 13:20:32 GMT; Path=/; Secure; HttpOnly; SameSite=lax\nVISITOR_INFO1_LIVE=oxtQMHpPyNo; Domain=.youtube.com; Expires=Sat, 23-Jan-2027 13:20:32 GMT; Path=/; Secure; HttpOnly; SameSite=none\nVISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgEg%3D%3D; Domain=.youtube.com; Expires=Sat, 23-Jan-2027 13:20:32 GMT; Path=/; Secure; HttpOnly; SameSite=none\n__Secure-ROLLOUT_TOKEN=CKOus_iU9NnYzgEQ5fqIsvnylQMY5fqIsvnylQM%3D; Domain=youtube.com; Expires=Sat, 23-Jan-2027 13:20:32 GMT; Path=/; Secure; HttpOnly; SameSite=none; Partitioned\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":147764,"size_decoded":60755,"mime_type":"text/html; charset=utf-8","magic":"HTML document, ASCII text, with very long lines (52140)","md5":"b34a8dcf24edfa380cd6b861945af35f","sha1":"ca3f3b3d8a6bfa91148609d65c3f757cf8dd53f0","sha256":"a88a3c81351803c7309468e8d90647b32e669e0307381ba64f3840d7a2315e67","sha512":"7a38f1595d63f244462ad9b06c0bbfc01be53bb72b92e2c297a06be3ff2036590472094f905942c20a0e9b44871204a2c0ee252053b3591b0824ee86fdbb3966","ssdeep":"1536:H/jRQ9jdOMUpzYVMobBuzhZk2lo43UEwg5ntOr4DnHyBvjyxZhpRsanO0HzUGLfR:q9BOxYcS2l0EwgxXSBvObOcUGjXB","tlshash":"14e309240468b876c5939947eeb9ff3e5cb8023a07c995aebdbbd35c01dc6510eaf412","first_seen":"2026-07-27T13:21:25.819225Z","last_seen":"2026-07-27T13:21:25.819225Z","times_seen":1,"resource_available":false,"data":"PCFET0NUWVBFIGh0bWw+PGh0bWwgbGFuZz0iZW4iIGRpcj0ibHRyIiBkYXRhLWNhc3QtYXBpLWVuYWJsZWQ9InRydWUiPjxoZWFkPjxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+PHNjcmlwdCBub25jZT0iOElucWZmQWdIVi1lOUFTWDk5ZlpsUSI+aWYgKCd1bmRlZmluZWQnID09IHR5cGVvZiBTeW1ib2wgfHwgJ3VuZGVmaW5lZCcgPT0gdHlwZW9mIFN5bWJvbC5pdGVyYXRvcikge2RlbGV0ZSBBcnJheS5wcm90b3R5cGUuZW50cmllczt9PC9zY3JpcHQ+PHN0eWxlIG5hbWU9Ind3dy1yb2JvdG8iIG5vbmNlPSJpMnlOUGxtX2JfUjBxR2tDZndGbl93Ij5AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTNHVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswNDYwLTA1MkYsVSsxQzgwLTFDOEEsVSsyMEI0LFUrMkRFMC0yREZGLFUrQTY0MC1BNjlGLFUrRkUyRS1GRTJGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTNpVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzAxLFUrMDQwMC0wNDVGLFUrMDQ5MC0wNDkxLFUrMDRCMC0wNEIxLFUrMjExNjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzQ1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMUYwMC0xRkZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTMtVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzcwLTAzNzcsVSswMzdBLTAzN0YsVSswMzg0LTAzOEEsVSswMzhDLFUrMDM4RS0wM0ExLFUrMDNBMy0wM0ZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYXdDVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzAyLTAzMDMsVSswMzA1LFUrMDMwNy0wMzA4LFUrMDMxMCxVKzAzMTIsVSswMzE1LFUrMDMxQSxVKzAzMjYtMDMyNyxVKzAzMkMsVSswMzJGLTAzMzAsVSswMzMyLTAzMzMsVSswMzM4LFUrMDMzQSxVKzAzNDYsVSswMzRELFUrMDM5MS0wM0ExLFUrMDNBMy0wM0E5LFUrMDNCMS0wM0M5LFUrMDNEMSxVKzAzRDUtMDNENixVKzAzRjAtMDNGMSxVKzAzRjQtMDNGNSxVKzIwMTYtMjAxNyxVKzIwMzQtMjAzOCxVKzIwM0MsVSsyMDQwLFUrMjA0MyxVKzIwNDcsVSsyMDUwLFUrMjA1NyxVKzIwNUYsVSsyMDcwLTIwNzEsVSsyMDc0LTIwOEUsVSsyMDkwLTIwOUMsVSsyMEQwLTIwREMsVSsyMEUxLFUrMjBFNS0yMEVGLFUrMjEwMC0yMTEyLFUrMjExNC0yMTE1LFUrMjExNy0yMTIxLFUrMjEyMy0yMTRGLFUrMjE5MCxVKzIxOTIsVSsyMTk0LTIxQUUsVSsyMUIwLTIxRTUsVSsyMUYxLTIxRjIsVSsyMUY0LTIyMTEsVSsyMjEzLTIyMTQsVSsyMjE2LTIyRkYsVSsyMzA4LTIzMEIsVSsyMzEwLFUrMjMxOSxVKzIzMUMtMjMyMSxVKzIzMzYtMjM3QSxVKzIzN0MsVSsyMzk1LFUrMjM5Qi0yM0I3LFUrMjNEMCxVKzIzREMtMjNFMSxVKzI0NzQtMjQ3NSxVKzI1QUYsVSsyNUIzLFUrMjVCNyxVKzI1QkQsVSsyNUMxLFUrMjVDQSxVKzI1Q0MsVSsyNUZCLFUrMjY2RC0yNjZGLFUrMjdDMC0yN0ZGLFUrMjkwMC0yQUZGLFUrMkIwRS0yQjExLFUrMkIzMC0yQjRDLFUrMkJGRSxVKzMwMzAsVStGRjVCLFUrRkY1RCxVKzFENDAwLTFEN0ZGLFUrMUVFMDAtMUVFRkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1heEtVQkdFZS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAwMDEtMDAwQyxVKzAwMEUtMDAxRixVKzAwN0YtMDA5RixVKzIwREQtMjBFMCxVKzIwRTItMjBFNCxVKzIxNTAtMjE4RixVKzIxOTAsVSsyMTkyLFUrMjE5NC0yMTk5LFUrMjFBRixVKzIxRTYtMjFGMCxVKzIxRjMsVSsyMjE4LTIyMTksVSsyMjk5LFUrMjJDNC0yMkM2LFUrMjMwMC0yNDNGLFUrMjQ0MC0yNDRBLFUrMjQ2MC0yNEZGLFUrMjVBMC0yN0JGLFUrMjgwMC0yOEZGLFUrMjkyMS0yOTIyLFUrMjk4MSxVKzI5QkYsVSsyOUVCLFUrMkIwMC0yQkZGLFUrNERDMC00REZGLFUrRkZGOS1GRkZCLFUrMTAxNDAtMTAxOEUsVSsxMDE5MC0xMDE5QyxVKzEwMUEwLFUrMTAxRDAtMTAxRkQsVSsxMDJFMC0xMDJGQixVKzEwRTYwLTEwRTdFLFUrMUQyQzAtMUQyRDMsVSsxRDJFMC0xRDM3RixVKzFGMDAwLTFGMEZGLFUrMUYxMDAtMUYxQUQsVSsxRjFFNi0xRjFGRixVKzFGMzBELTFGMzBGLFUrMUYzMTUsVSsxRjMxQyxVKzFGMzFFLFUrMUYzMjAtMUYzMkMsVSsxRjMzNixVKzFGMzc4LFUrMUYzN0QsVSsxRjM4MixVKzFGMzkzLTFGMzlGLFUrMUYzQTctMUYzQTgsVSsxRjNBQy0xRjNBRixVKzFGM0MyLFUrMUYzQzQtMUYzQzYsVSsxRjNDQS0xRjNDRSxVKzFGM0Q0LTFGM0UwLFUrMUYzRUQsVSsxRjNGMS0xRjNGMyxVKzFGM0Y1LTFGM0Y3LFUrMUY0MDgsVSsxRjQxNSxVKzFGNDFGLFUrMUY0MjYsVSsxRjQzRixVKzFGNDQxLTFGNDQyLFUrMUY0NDQsVSsxRjQ0Ni0xRjQ0OSxVKzFGNDRDLTFGNDRFLFUrMUY0NTMsVSsxRjQ2QSxVKzFGNDdELFUrMUY0QTMsVSsxRjRCMCxVKzFGNEIzLFUrMUY0QjksVSsxRjRCQixVKzFGNEJGLFUrMUY0QzgtMUY0Q0IsVSsxRjRENixVKzFGNERBLFUrMUY0REYsVSsxRjRFMy0xRjRFNixVKzFGNEVBLTFGNEVELFUrMUY0RjcsVSsxRjRGOS0xRjRGQixVKzFGNEZELTFGNEZFLFUrMUY1MDMsVSsxRjUwNy0xRjUwQixVKzFGNTBELFUrMUY1MTItMUY1MTMsVSsxRjUzRS0xRjU0QSxVKzFGNTRGLTFGNUZBLFUrMUY2MTAsVSsxRjY1MC0xRjY3RixVKzFGNjg3LFUrMUY2OEQsVSsxRjY5MSxVKzFGNjk0LFUrMUY2OTgsVSsxRjZBRCxVKzFGNkIyLFUrMUY2QjktMUY2QkEsVSsxRjZCQyxVKzFGNkM2LTFGNkNGLFUrMUY2RDMtMUY2RDcsVSsxRjZFMC0xRjZFQSxVKzFGNkYwLTFGNkYzLFUrMUY2RjctMUY2RkMsVSsxRjcwMC0xRjdGRixVKzFGODAwLTFGODBCLFUrMUY4MTAtMUY4NDcsVSsxRjg1MC0xRjg1OSxVKzFGODYwLTFGODg3LFUrMUY4OTAtMUY4QUQsVSsxRjhCMC0xRjhCQixVKzFGOEMwLTFGOEMxLFUrMUY5MDAtMUY5MEIsVSsxRjkzQixVKzFGOTQ2LFUrMUY5ODQsVSsxRjk5NixVKzFGOUU5LFUrMUZBMDAtMUZBNkYsVSsxRkE3MC0xRkE3QyxVKzFGQTgwLTFGQTg5LFUrMUZBOEYtMUZBQzYsVSsxRkFDRS0xRkFEQyxVKzFGQURGLTFGQUU5LFUrMUZBRjAtMUZBRjgsVSsxRkIwMC0xRkJGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzT1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDEwMi0wMTAzLFUrMDExMC0wMTExLFUrMDEyOC0wMTI5LFUrMDE2OC0wMTY5LFUrMDFBMC0wMUExLFUrMDFBRi0wMUIwLFUrMDMwMC0wMzAxLFUrMDMwMy0wMzA0LFUrMDMwOC0wMzA5LFUrMDMyMyxVKzAzMjksVSsxRUEwLTFFRjksVSsyMEFCO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTNLVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMTAwLTAyQkEsVSswMkJELTAyQzUsVSswMkM3LTAyQ0MsVSswMkNFLTAyRDcsVSswMkRELTAyRkYsVSswMzA0LFUrMDMwOCxVKzAzMjksVSsxRDAwLTFEQkYsVSsxRTAwLTFFOUYsVSsxRUYyLTFFRkYsVSsyMDIwLFUrMjBBMC0yMEFCLFUrMjBBRC0yMEMwLFUrMjExMyxVKzJDNjAtMkM3RixVK0E3MjAtQTdGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzeVVCQS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAwMDAtMDBGRixVKzAxMzEsVSswMTUyLTAxNTMsVSswMkJCLTAyQkMsVSswMkM2LFUrMDJEQSxVKzAyREMsVSswMzA0LFUrMDMwOCxVKzAzMjksVSsyMDAwLTIwNkYsVSsyMEFDLFUrMjEyMixVKzIxOTEsVSsyMTkzLFUrMjIxMixVKzIyMTUsVStGRUZGLFUrRkZGRDt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzR1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDQ2MC0wNTJGLFUrMUM4MC0xQzhBLFUrMjBCNCxVKzJERTAtMkRGRixVK0E2NDAtQTY5RixVK0ZFMkUtRkUyRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzaVVCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDMwMSxVKzA0MDAtMDQ1RixVKzA0OTAtMDQ5MSxVKzA0QjAtMDRCMSxVKzIxMTY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1hM0NVQkdFZS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzFGMDAtMUZGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzLVVCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDM3MC0wMzc3LFUrMDM3QS0wMzdGLFUrMDM4NC0wMzhBLFUrMDM4QyxVKzAzOEUtMDNBMSxVKzAzQTMtMDNGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWF3Q1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDMwMi0wMzAzLFUrMDMwNSxVKzAzMDctMDMwOCxVKzAzMTAsVSswMzEyLFUrMDMxNSxVKzAzMUEsVSswMzI2LTAzMjcsVSswMzJDLFUrMDMyRi0wMzMwLFUrMDMzMi0wMzMzLFUrMDMzOCxVKzAzM0EsVSswMzQ2LFUrMDM0RCxVKzAzOTEtMDNBMSxVKzAzQTMtMDNBOSxVKzAzQjEtMDNDOSxVKzAzRDEsVSswM0Q1LTAzRDYsVSswM0YwLTAzRjEsVSswM0Y0LTAzRjUsVSsyMDE2LTIwMTcsVSsyMDM0LTIwMzgsVSsyMDNDLFUrMjA0MCxVKzIwNDMsVSsyMDQ3LFUrMjA1MCxVKzIwNTcsVSsyMDVGLFUrMjA3MC0yMDcxLFUrMjA3NC0yMDhFLFUrMjA5MC0yMDlDLFUrMjBEMC0yMERDLFUrMjBFMSxVKzIwRTUtMjBFRixVKzIxMDAtMjExMixVKzIxMTQtMjExNSxVKzIxMTctMjEyMSxVKzIxMjMtMjE0RixVKzIxOTAsVSsyMTkyLFUrMjE5NC0yMUFFLFUrMjFCMC0yMUU1LFUrMjFGMS0yMUYyLFUrMjFGNC0yMjExLFUrMjIxMy0yMjE0LFUrMjIxNi0yMkZGLFUrMjMwOC0yMzBCLFUrMjMxMCxVKzIzMTksVSsyMzFDLTIzMjEsVSsyMzM2LTIzN0EsVSsyMzdDLFUrMjM5NSxVKzIzOUItMjNCNyxVKzIzRDAsVSsyM0RDLTIzRTEsVSsyNDc0LTI0NzUsVSsyNUFGLFUrMjVCMyxVKzI1QjcsVSsyNUJELFUrMjVDMSxVKzI1Q0EsVSsyNUNDLFUrMjVGQixVKzI2NkQtMjY2RixVKzI3QzAtMjdGRixVKzI5MDAtMkFGRixVKzJCMEUtMkIxMSxVKzJCMzAtMkI0QyxVKzJCRkUsVSszMDMwLFUrRkY1QixVK0ZGNUQsVSsxRDQwMC0xRDdGRixVKzFFRTAwLTFFRUZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjUwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYXhLVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMDAxLTAwMEMsVSswMDBFLTAwMUYsVSswMDdGLTAwOUYsVSsyMERELTIwRTAsVSsyMEUyLTIwRTQsVSsyMTUwLTIxOEYsVSsyMTkwLFUrMjE5MixVKzIxOTQtMjE5OSxVKzIxQUYsVSsyMUU2LTIxRjAsVSsyMUYzLFUrMjIxOC0yMjE5LFUrMjI5OSxVKzIyQzQtMjJDNixVKzIzMDAtMjQzRixVKzI0NDAtMjQ0QSxVKzI0NjAtMjRGRixVKzI1QTAtMjdCRixVKzI4MDAtMjhGRixVKzI5MjEtMjkyMixVKzI5ODEsVSsyOUJGLFUrMjlFQixVKzJCMDAtMkJGRixVKzREQzAtNERGRixVK0ZGRjktRkZGQixVKzEwMTQwLTEwMThFLFUrMTAxOTAtMTAxOUMsVSsxMDFBMCxVKzEwMUQwLTEwMUZELFUrMTAyRTAtMTAyRkIsVSsxMEU2MC0xMEU3RSxVKzFEMkMwLTFEMkQzLFUrMUQyRTAtMUQzN0YsVSsxRjAwMC0xRjBGRixVKzFGMTAwLTFGMUFELFUrMUYxRTYtMUYxRkYsVSsxRjMwRC0xRjMwRixVKzFGMzE1LFUrMUYzMUMsVSsxRjMxRSxVKzFGMzIwLTFGMzJDLFUrMUYzMzYsVSsxRjM3OCxVKzFGMzdELFUrMUYzODIsVSsxRjM5My0xRjM5RixVKzFGM0E3LTFGM0E4LFUrMUYzQUMtMUYzQUYsVSsxRjNDMixVKzFGM0M0LTFGM0M2LFUrMUYzQ0EtMUYzQ0UsVSsxRjNENC0xRjNFMCxVKzFGM0VELFUrMUYzRjEtMUYzRjMsVSsxRjNGNS0xRjNGNyxVKzFGNDA4LFUrMUY0MTUsVSsxRjQxRixVKzFGNDI2LFUrMUY0M0YsVSsxRjQ0MS0xRjQ0MixVKzFGNDQ0LFUrMUY0NDYtMUY0NDksVSsxRjQ0Qy0xRjQ0RSxVKzFGNDUzLFUrMUY0NkEsVSsxRjQ3RCxVKzFGNEEzLFUrMUY0QjAsVSsxRjRCMyxVKzFGNEI5LFUrMUY0QkIsVSsxRjRCRixVKzFGNEM4LTFGNENCLFUrMUY0RDYsVSsxRjREQSxVKzFGNERGLFUrMUY0RTMtMUY0RTYsVSsxRjRFQS0xRjRFRCxVKzFGNEY3LFUrMUY0RjktMUY0RkIsVSsxRjRGRC0xRjRGRSxVKzFGNTAzLFUrMUY1MDctMUY1MEIsVSsxRjUwRCxVKzFGNTEyLTFGNTEzLFUrMUY1M0UtMUY1NEEsVSsxRjU0Ri0xRjVGQSxVKzFGNjEwLFUrMUY2NTAtMUY2N0YsVSsxRjY4NyxVKzFGNjhELFUrMUY2OTEsVSsxRjY5NCxVKzFGNjk4LFUrMUY2QUQsVSsxRjZCMixVKzFGNkI5LTFGNkJBLFUrMUY2QkMsVSsxRjZDNi0xRjZDRixVKzFGNkQzLTFGNkQ3LFUrMUY2RTAtMUY2RUEsVSsxRjZGMC0xRjZGMyxVKzFGNkY3LTFGNkZDLFUrMUY3MDAtMUY3RkYsVSsxRjgwMC0xRjgwQixVKzFGODEwLTFGODQ3LFUrMUY4NTAtMUY4NTksVSsxRjg2MC0xRjg4NyxVKzFGODkwLTFGOEFELFUrMUY4QjAtMUY4QkIsVSsxRjhDMC0xRjhDMSxVKzFGOTAwLTFGOTBCLFUrMUY5M0IsVSsxRjk0NixVKzFGOTg0LFUrMUY5OTYsVSsxRjlFOSxVKzFGQTAwLTFGQTZGLFUrMUZBNzAtMUZBN0MsVSsxRkE4MC0xRkE4OSxVKzFGQThGLTFGQUM2LFUrMUZBQ0UtMUZBREMsVSsxRkFERi0xRkFFOSxVKzFGQUYwLTFGQUY4LFUrMUZCMDAtMUZCRkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1hM09VQkdFZS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAxMDItMDEwMyxVKzAxMTAtMDExMSxVKzAxMjgtMDEyOSxVKzAxNjgtMDE2OSxVKzAxQTAtMDFBMSxVKzAxQUYtMDFCMCxVKzAzMDAtMDMwMSxVKzAzMDMtMDMwNCxVKzAzMDgtMDMwOSxVKzAzMjMsVSswMzI5LFUrMUVBMC0xRUY5LFUrMjBBQjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzS1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDEwMC0wMkJBLFUrMDJCRC0wMkM1LFUrMDJDNy0wMkNDLFUrMDJDRS0wMkQ3LFUrMDJERC0wMkZGLFUrMDMwNCxVKzAzMDgsVSswMzI5LFUrMUQwMC0xREJGLFUrMUUwMC0xRTlGLFUrMUVGMi0xRUZGLFUrMjAyMCxVKzIwQTAtMjBBQixVKzIwQUQtMjBDMCxVKzIxMTMsVSsyQzYwLTJDN0YsVStBNzIwLUE3RkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1hM3lVQkEud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMDAwLTAwRkYsVSswMTMxLFUrMDE1Mi0wMTUzLFUrMDJCQi0wMkJDLFUrMDJDNixVKzAyREEsVSswMkRDLFUrMDMwNCxVKzAzMDgsVSswMzI5LFUrMjAwMC0yMDZGLFUrMjBBQyxVKzIxMjIsVSsyMTkxLFUrMjE5MyxVKzIyMTIsVSsyMjE1LFUrRkVGRixVK0ZGRkQ7fTwvc3R5bGU+PHNjcmlwdCBuYW1lPSJ3d3ctcm9ib3RvIiBub25jZT0iOElucWZmQWdIVi1lOUFTWDk5ZlpsUSI+aWYgKGRvY3VtZW50LmZvbnRzICYmIGRvY3VtZW50LmZvbnRzLmxvYWQpIHtkb2N1bWVudC5mb250cy5sb2FkKCI0MDAgMTBwdCBSb2JvdG8iLCAiRSIpOyBkb2N1bWVudC5mb250cy5sb2FkKCI1MDAgMTBwdCBSb2JvdG8iLCAiRSIpO308L3NjcmlwdD48bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9zL3BsYXllci83YTc5NjljMi93d3ctcGxheWVyLmNzcyIgbmFtZT0id3d3LXBsYXllciIgbm9uY2U9ImkyeU5QbG1fYl9SMHFHa0Nmd0ZuX3ciPjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL3MvXy95dGVtYmVkcy9fL3NzL2s9eXRlbWJlZHMuYmFzZS5OeG5pdXVaRVRady5MLkY0Lk8vYW09QUFBQWdBL2Q9MC9icj0xL3JzPUFHS015d0d4NHR4aEZKaGNydXRLWXNmUG1TNG1GYzZvSlEiIG5hbWU9ImVtYmVkLXVpIiBub25jZT0iaTJ5TlBsbV9iX1IwcUdrQ2Z3Rm5fdyI+PHN0eWxlIG5vbmNlPSJpMnlOUGxtX2JfUjBxR2tDZndGbl93Ij5odG1sIHtvdmVyZmxvdzogaGlkZGVuO31ib2R5IHtmb250OiAxMnB4IFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGNvbG9yOiAjZmZmOyBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogYWJzb2x1dGU7IG1hcmdpbjogMDsgcGFkZGluZzogMDt9I3BsYXllciB7d2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTt9aDEge3RleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICNmZmY7fWgzIHttYXJnaW4tdG9wOiA2cHg7IG1hcmdpbi1ib3R0b206IDNweDt9LnBsYXllci11bmF2YWlsYWJsZSB7cG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IHBhZGRpbmc6IDI1cHg7IGZvbnQtc2l6ZTogMTNweDsgYmFja2dyb3VuZDogdXJsKC9pbWcvbWVoNy5wbmcpIDUwJSA2NSUgbm8tcmVwZWF0O30ucGxheWVyLXVuYXZhaWxhYmxlIC5tZXNzYWdlIHt0ZXh0LWFsaWduOiBsZWZ0OyBtYXJnaW46IDAgLTVweCAxNXB4OyBwYWRkaW5nOiAwIDVweCAxNHB4OyBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzg4ODsgZm9udC1zaXplOiAxOXB4OyBmb250LXdlaWdodDogbm9ybWFsO30ucGxheWVyLXVuYXZhaWxhYmxlIGEge2NvbG9yOiAjMTY3YWM2OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7fTwvc3R5bGU+PHNjcmlwdCBub25jZT0iOElucWZmQWdIVi1lOUFTWDk5ZlpsUSI+dmFyIHl0Y3NpPXtndDpmdW5jdGlvbihuKXtuPShufHwiIikrImRhdGFfIjtyZXR1cm4geXRjc2lbbl18fCh5dGNzaVtuXT17dGljazp7fSxpbmZvOnt9LGdlbDp7cHJlTG9nZ2VkR2VsSW5mb3M6W119fSl9LG5vdzp3aW5kb3cucGVyZm9ybWFuY2UmJndpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcmJndpbmRvdy5wZXJmb3JtYW5jZS5ub3cmJndpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0P2Z1bmN0aW9uKCl7cmV0dXJuIHdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0K3dpbmRvdy5wZXJmb3JtYW5jZS5ub3coKX06ZnVuY3Rpb24oKXtyZXR1cm4obmV3IERhdGUpLmdldFRpbWUoKX0sdGljazpmdW5jdGlvbihsLHQsbil7dmFyIHRpY2tzPXl0Y3NpLmd0KG4pLnRpY2s7dmFyIHY9dHx8eXRjc2kubm93KCk7aWYodGlja3NbbF0pe3RpY2tzWyJfIitsXT10aWNrc1siXyIrbF18fFt0aWNrc1tsXV07dGlja3NbIl8iK2xdLnB1c2godil9dGlja3NbbF09CnZ9LGluZm86ZnVuY3Rpb24oayx2LG4pe3l0Y3NpLmd0KG4pLmluZm9ba109dn0saW5mb0dlbDpmdW5jdGlvbihwLG4pe3l0Y3NpLmd0KG4pLmdlbC5wcmVMb2dnZWRHZWxJbmZvcy5wdXNoKHApfSxzZXRTdGFydDpmdW5jdGlvbih0LG4pe3l0Y3NpLnRpY2soIl9zdGFydCIsdCxuKX19OwooZnVuY3Rpb24odyxkKXtmdW5jdGlvbiBpc0dlY2tvKCl7aWYoIXcubmF2aWdhdG9yKXJldHVybiBmYWxzZTt0cnl7aWYody5uYXZpZ2F0b3IudXNlckFnZW50RGF0YSYmdy5uYXZpZ2F0b3IudXNlckFnZW50RGF0YS5icmFuZHMmJncubmF2aWdhdG9yLnVzZXJBZ2VudERhdGEuYnJhbmRzLmxlbmd0aCl7dmFyIGJyYW5kcz13Lm5hdmlnYXRvci51c2VyQWdlbnREYXRhLmJyYW5kczt2YXIgaT0wO2Zvcig7aTxicmFuZHMubGVuZ3RoO2krKylpZihicmFuZHNbaV0mJmJyYW5kc1tpXS5icmFuZD09PSJGaXJlZm94IilyZXR1cm4gdHJ1ZTtyZXR1cm4gZmFsc2V9fWNhdGNoKGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyBlO30pfWlmKCF3Lm5hdmlnYXRvci51c2VyQWdlbnQpcmV0dXJuIGZhbHNlO3ZhciB1YT13Lm5hdmlnYXRvci51c2VyQWdlbnQ7cmV0dXJuIHVhLmluZGV4T2YoIkdlY2tvIik+MCYmdWEudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKTwwJiZ1YS5pbmRleE9mKCJFZGdlIik8CjAmJnVhLmluZGV4T2YoIlRyaWRlbnQiKTwwJiZ1YS5pbmRleE9mKCJNU0lFIik8MH15dGNzaS5zZXRTdGFydCh3LnBlcmZvcm1hbmNlP3cucGVyZm9ybWFuY2UudGltaW5nLnJlc3BvbnNlU3RhcnQ6bnVsbCk7dmFyIGlzUHJlcmVuZGVyPShkLnZpc2liaWxpdHlTdGF0ZXx8ZC53ZWJraXRWaXNpYmlsaXR5U3RhdGUpPT0icHJlcmVuZGVyIjt2YXIgdk5hbWU9IWQudmlzaWJpbGl0eVN0YXRlJiZkLndlYmtpdFZpc2liaWxpdHlTdGF0ZT8id2Via2l0dmlzaWJpbGl0eWNoYW5nZSI6InZpc2liaWxpdHljaGFuZ2UiO2lmKGlzUHJlcmVuZGVyKXt2YXIgc3RhcnRUaWNrPWZ1bmN0aW9uKCl7eXRjc2kuc2V0U3RhcnQoKTtkLnJlbW92ZUV2ZW50TGlzdGVuZXIodk5hbWUsc3RhcnRUaWNrKX07ZC5hZGRFdmVudExpc3RlbmVyKHZOYW1lLHN0YXJ0VGljayxmYWxzZSl9aWYoZC5hZGRFdmVudExpc3RlbmVyKWQuYWRkRXZlbnRMaXN0ZW5lcih2TmFtZSxmdW5jdGlvbigpe3l0Y3NpLnRpY2soInZjIil9LApmYWxzZSk7aWYoaXNHZWNrbygpKXt2YXIgaXNIaWRkZW49KGQudmlzaWJpbGl0eVN0YXRlfHxkLndlYmtpdFZpc2liaWxpdHlTdGF0ZSk9PSJoaWRkZW4iO2lmKGlzSGlkZGVuKXl0Y3NpLnRpY2soInZjIil9dmFyIHNsdD1mdW5jdGlvbihlbCx0KXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIG49eXRjc2kubm93KCk7ZWwubG9hZFRpbWU9bjtpZihlbC5zbHQpZWwuc2x0KCl9LHQpfTt3Ll9feXRSSUw9ZnVuY3Rpb24oZWwpe2lmKCFlbC5nZXRBdHRyaWJ1dGUoImRhdGEtdGh1bWIiKSlpZih3LnJlcXVlc3RBbmltYXRpb25GcmFtZSl3LnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3NsdChlbCwwKX0pO2Vsc2Ugc2x0KGVsLDE2KX19KSh3aW5kb3csZG9jdW1lbnQpOwo8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSI4SW5xZmZBZ0hWLWU5QVNYOTlmWmxRIj52YXIgeXRjZmc9e2Q6ZnVuY3Rpb24oKXtyZXR1cm4gd2luZG93Lnl0JiZ5dC5jb25maWdffHx5dGNmZy5kYXRhX3x8KHl0Y2ZnLmRhdGFfPXt9KX0sZ2V0OmZ1bmN0aW9uKGssbyl7cmV0dXJuIGsgaW4geXRjZmcuZCgpP3l0Y2ZnLmQoKVtrXTpvfSxzZXQ6ZnVuY3Rpb24oKXt2YXIgYT1hcmd1bWVudHM7aWYoYS5sZW5ndGg+MSl5dGNmZy5kKClbYVswXV09YVsxXTtlbHNle3ZhciBrO2ZvcihrIGluIGFbMF0peXRjZmcuZCgpW2tdPWFbMF1ba119fX07Cnl0Y2ZnLnNldCh7IkNMSUVOVF9DQU5BUllfU1RBVEUiOiJub25lIiwiREVWSUNFIjoiY2JyXHUwMDNkRmlyZWZveFx1MDAyNmNicnZlclx1MDAzZDEzNC4wXHUwMDI2Y2VuZ1x1MDAzZEdlY2tvXHUwMDI2Y2VuZ3Zlclx1MDAzZDEzNC4wXHUwMDI2Y29zXHUwMDNkV2luZG93c1x1MDAyNmNvc3Zlclx1MDAzZDEwLjBcdTAwMjZjcGxhdGZvcm1cdTAwM2RERVNLVE9QIiwiRVZFTlRfSUQiOiJJRnRuYXA3Z05PWFNxN1lQajhIWUtBIiwiRVhQRVJJTUVOVF9GTEFHUyI6eyJhYl9kZXRfYXBtIjp0cnVlLCJhYl9kZXRfZWxfaCI6dHJ1ZSwiYWN0aW9uX2NvbXBhbmlvbl9jZW50ZXJfYWxpZ25fZGVzY3JpcHRpb24iOnRydWUsImFsbG93X3NraXBfbmV0d29ya2xlc3MiOnRydWUsImFsd2F5c19zZW5kX2FuZF93cml0ZSI6dHJ1ZSwiYXR0X3dlYl9yZWNvcmRfbWV0cmljcyI6dHJ1ZSwiYXR0bXVzaSI6dHJ1ZSwiYzNfZW5hYmxlX2J1dHRvbl9pbXByZXNzaW9uX2xvZ2dpbmciOnRydWUsImMzX3dhdGNoX3BhZ2VfY29tcG9uZW50Ijp0cnVlLCJjYW5jZWxfcGVuZGluZ19uYXZzIjp0cnVlLCJjbGllbnRfdWlfZW5hYmxlX211bHRpX3RyYWNrX2F1ZGlvX29uX3dlYl9lbWJlZGRlZF9wbGF5ZXIiOnRydWUsImNvbmZpZ19hZ2VfcmVwb3J0X2tpbGxzd2l0Y2giOnRydWUsImNvd19vcHRpbWl6ZV9pZG9tX2NvbXBhdCI6dHJ1ZSwiY3NpX29uX2dlbCI6dHJ1ZSwiZGVkdXBwaW5nX3NlcnZlcl92ZSI6dHJ1ZSwiZGVsaGlfbXdlYl9jb2xvcmZ1bF9zZCI6dHJ1ZSwiZGVsaGlfbXdlYl9jb2xvcmZ1bF9zZF92MiI6dHJ1ZSwiZGVwcmVjYXRlX3BhaXJfc2VydmxldF9lbmFibGVkIjp0cnVlLCJkZXNrdG9wX3NwYXJrbGVzX2xpZ2h0X2N0YV9idXR0b24iOnRydWUsImRpc2FibGVfY2hpbGRfbm9kZV9hdXRvX2Zvcm1hdHRlZF9zdHJpbmdzIjp0cnVlLCJkaXNhYmxlX2xvZ190b192aXNpdG9yX2xheWVyIjp0cnVlLCJkaXNhYmxlX21pbmlfYXBwX2NvbnRhaW5lcl93ZWJfdmlld19pbnNldHMiOnRydWUsImRpc2FibGVfcGFjZl9sb2dnaW5nX2Zvcl9tZW1vcnlfbGltaXRlZF90diI6dHJ1ZSwiZW1iZWRzX2Rlc2t0b2ZmX25vbm1vYmlsZV9lbGlnaWJsZSI6dHJ1ZSwiZW1iZWRzX2Rlc2t0b2ZmX25vbm1vYmlsZV9lbmFibGVkIjp0cnVlLCJlbWJlZHNfZGVza3RvZmZfc2F2ZV91c2VyX3ZvbHVtZSI6dHJ1ZSwiZW1iZWRzX2Rlc2t0b3BfZW5hYmxlX3ZvbHVtZV9zbGlkZXIiOnRydWUsImVtYmVkc19lbmFibGVfY2hhbm5lbF9zdWJzY3JpYmVfZGVwcmVjYXRpb24iOnRydWUsImVtYmVkc19lbmFibGVfZGVsYXlfY29udHJvbHNfaGlkZSI6dHJ1ZSwiZW1iZWRzX2VuYWJsZV9laWRfZW5mb3JjZW1lbnRfZm9yX3lvdXR1YmUiOnRydWUsImVtYmVkc19lbmFibGVfZW1jM2RzX3BmcCI6dHJ1ZSwiZW1iZWRzX211dGVkX2F1dG9wbGF5X3NvdW5kX2ZpeCI6dHJ1ZSwiZW1iZWRzX3NlcnZlX2VzNl9jbGllbnQiOnRydWUsImVtYmVkc193ZWJfdXBkYXRlZF9zaG9ydHNfZGVmaW5pdGlvbl9maXgiOnRydWUsImVuYWJsZV9hMTF5X2ZvY3VzX2ZpeF9mb3JfbWFjX3BhbmVsX29uX2Rlc2t0b3AiOnRydWUsImVuYWJsZV9hY2Nlc3NfY29kZV9zZXJ2aWNlX3JwYyI6dHJ1ZSwiZW5hYmxlX2FjdGl2ZV92aWV3X2Rpc3BsYXlfYWRfcmVuZGVyZXJfd2ViX2hvbWUiOnRydWUsImVuYWJsZV9haV9kaXNjbG9zdXJlX2Zvcl9jb21wYWN0X2xhbmRzY2FwZV9pbWFnZV93ZWIiOnRydWUsImVuYWJsZV9haV9kaXNjbG9zdXJlX2Zvcl9jb21wYWN0X2xhbmRzY2FwZV9pbWFnZV93ZWJfaW5uZXJ0dWJlIjp0cnVlLCJlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfY29tcGFjdF9sYW5kc2NhcGVfbm9fYnV0dG9uX3dlYiI6dHJ1ZSwiZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX2NvbXBhY3RfbGFuZHNjYXBlX25vX2J1dHRvbl93ZWJfaW5uZXJ0dWJlIjp0cnVlLCJlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdGV4dF9pbWFnZV9ub19idXR0b25fd2ViIjp0cnVlLCJlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdGV4dF9pbWFnZV9ub19idXR0b25fd2ViX2lubmVydHViZSI6dHJ1ZSwiZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3RvcF9sYW5kc2NhcGVfaW1hZ2Vfd2ViIjp0cnVlLCJlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdG9wX2xhbmRzY2FwZV9pbWFnZV93ZWJfaW5uZXJ0dWJlIjp0cnVlLCJlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdmlkZW9fZGlzcGxheV9iaWxsYm9hcmRfYnV0dG9uZWRfd2ViIjp0cnVlLCJlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdmlkZW9fZGlzcGxheV9iaWxsYm9hcmRfYnV0dG9uZWRfd2ViX2lubmVydHViZSI6dHJ1ZSwiZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3ZpZGVvX2Rpc3BsYXlfYnV0dG9uX2dyb3VwX3dlYiI6dHJ1ZSwiZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3ZpZGVvX2Rpc3BsYXlfYnV0dG9uX2dyb3VwX3dlYl9pbm5lcnR1YmUiOnRydWUsImVuYWJsZV9haV9kaXNjbG9zdXJlX2Zvcl92aWRlb19kaXNwbGF5X2NvbXBhY3RfYnV0dG9uX2dyb3VwX3dlYiI6dHJ1ZSwiZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3ZpZGVvX2Rpc3BsYXlfY29tcGFjdF9idXR0b25fZ3JvdXBfd2ViX2lubmVydHViZSI6dHJ1ZSwiZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3ZpZGVvX2Rpc3BsYXlfY29tcGFjdF9idXR0b25lZF93ZWIiOnRydWUsImVuYWJsZV9haV9kaXNjbG9zdXJlX2Zvcl92aWRlb19kaXNwbGF5X2NvbXBhY3RfYnV0dG9uZWRfd2ViX2lubmVydHViZSI6dHJ1ZSwiZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3ZpZGVvX2Rpc3BsYXlfY29tcGFjdF9jYXJvdXNlbF9idXR0b25fZ3JvdXBfd2ViIjp0cnVlLCJlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdmlkZW9fZGlzcGxheV9jb21wYWN0X2Nhcm91c2VsX2J1dHRvbl9ncm91cF93ZWJfaW5uZXJ0dWJlIjp0cnVlLCJlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdmlkZW9fZGlzcGxheV9jb21wYWN0X3dlYiI6dHJ1ZSwiZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3ZpZGVvX2Rpc3BsYXlfY29tcGFjdF93ZWJfaW5uZXJ0dWJlIjp0cnVlLCJlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdmlkZW9fZGlzcGxheV9mdWxsX3dlYiI6dHJ1ZSwiZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3ZpZGVvX2Rpc3BsYXlfZnVsbF93ZWJfaW5uZXJ0dWJlIjp0cnVlLCJlbmFibGVfYWlfc2VhcmNoX2lubmVydHViZV9tMF9maXhlcyI6dHJ1ZSwiZW5hYmxlX2FuZHJvaWRfd2ViX3ZpZXdfdG9wX2luc2V0c19idWdmaXgiOnRydWUsImVuYWJsZV9hdHRlbnRpb25fbG9nZ2luZ19tZWFzdXJlX29uX3Nob3duIjp0cnVlLCJlbmFibGVfYXVfdTE2X3ZlcmlmeV9hZ2VfcGFnZSI6dHJ1ZSwiZW5hYmxlX2F1dG9tb3RpdmVfZm9ybV9mYWN0b3JfY2hlY2siOnRydWUsImVuYWJsZV9jbGllbnRfc2xpX2xvZ2dpbmciOnRydWUsImVuYWJsZV9jbGllbnRfc3RyZWFtel93ZWIiOnRydWUsImVuYWJsZV9jbGllbnRfdmVfc3BlYyI6dHJ1ZSwiZW5hYmxlX2Nsb3VkX3NhdmVfZXJyb3JfcG9wdXBfYWZ0ZXJfcmV0cnkiOnRydWUsImVuYWJsZV9jdXN0b21fc2NydWJiZXJfdjIiOnRydWUsImVuYWJsZV9kYWlfc2RmX2g1X3ByZXJvbGwiOnRydWUsImVuYWJsZV9kYXRhc3luY19pZF9oZWFkZXJfaW5fd2ViX3Zzc19waW5ncyI6dHJ1ZSwiZW5hYmxlX2RlZmF1bHRfbW9ub19jdGFfbWlncmF0aW9uX3dlYl9jbGllbnQiOnRydWUsImVuYWJsZV9kb2NrZWRfY2hhdF9tZXNzYWdlcyI6dHJ1ZSwiZW5hYmxlX2Ryb3Bfc2hhZG93X2V4cGVyaW1lbnQiOnRydWUsImVuYWJsZV9lbWJlZHNfbmV3X2NhcHRpb25fbGFuZ3VhZ2VfcGlja2VyIjp0cnVlLCJlbmFibGVfZW5kZW1pY19oaWdoX2Njdl9zbWVhcmluZ19oNSI6dHJ1ZSwiZW5hYmxlX2VudGl0eV9zdG9yZV9mcm9tX2RlcGVuZGVuY3lfaW5qZWN0aW9uIjp0cnVlLCJlbmFibGVfaW5saW5lX211dGVkX3BsYXliYWNrX29uX3dlYl9zZWFyY2giOnRydWUsImVuYWJsZV9pbmxpbmVfbXV0ZWRfcGxheWJhY2tfb25fd2ViX3NlYXJjaF9mb3JfdmRjIjp0cnVlLCJlbmFibGVfaW5saW5lX211dGVkX3BsYXliYWNrX29uX3dlYl9zZWFyY2hfZm9yX3ZkY2IiOnRydWUsImVuYWJsZV9sb2dnaW5nX2ZpcnN0X3VzZXJfYWN0aW9uX2FmdGVyX2dhbWVfcmVhZHkiOnRydWUsImVuYWJsZV9sdGNfcGFyYW1fZmV0Y2hfZnJvbV9pbm5lcnR1YmUiOnRydWUsImVuYWJsZV9tMF9sb2dnaW5nX2ZpeGVzIjp0cnVlLCJlbmFibGVfbWVudV9yZW5kZXJlcl9idXR0b25faW5fbXdlYl9oY2xyIjp0cnVlLCJlbmFibGVfbWluaV9hcHBfY29tbWFuZF9oYW5kbGVyX213ZWJfZml4Ijp0cnVlLCJlbmFibGVfbWluaV9ndWlkZV9kb3dubG9hZHNfaXRlbSI6dHJ1ZSwiZW5hYmxlX21peGVkX2RpcmVjdGlvbl9mb3JtYXR0ZWRfc3RyaW5ncyI6dHJ1ZSwiZW5hYmxlX213ZWJfYXVkaW9fdHJhY2tfcGlja2VyIjp0cnVlLCJlbmFibGVfbXdlYl9rZXlib2FyZF9zaG9ydGN1dHMiOnRydWUsImVuYWJsZV9uYW1lc19oYW5kbGVzX2FjY291bnRfc3dpdGNoZXIiOnRydWUsImVuYWJsZV9uYXRpdmVfYnJpZGdlX3ZpZXdfc2F2ZWRfcGxheWFibGVzIjp0cnVlLCJlbmFibGVfbmV0d29ya19yZXF1ZXN0X2xvZ2dpbmdfb25fZ2FtZV9ldmVudHMiOnRydWUsImVuYWJsZV9uZXdfcGFpZF9wcm9kdWN0X3BsYWNlbWVudCI6dHJ1ZSwiZW5hYmxlX29wZW5faW5fbmV3X3RhYl9pY29uX2Zvcl9zaG9ydF9kcl9mb3JfZGVza3RvcF9zZWFyY2giOnRydWUsImVuYWJsZV9vcGVuX3l0X2NvbnRlbnQiOnRydWUsImVuYWJsZV9vcmlnaW5fcXVlcnlfcGFyYW1ldGVyX2J1Z2ZpeCI6dHJ1ZSwiZW5hYmxlX3BhdXNlX2Fkc19vbl95dHZfaHRtbDUiOnRydWUsImVuYWJsZV9wYXltZW50c19wdXJjaGFzZV9tYW5hZ2VyIjp0cnVlLCJlbmFibGVfcGRwX2ljb25fcHJlZmV0Y2giOnRydWUsImVuYWJsZV9wbGFjZV9waXZvdF91cmwiOnRydWUsImVuYWJsZV9wbGF5YWJsZV9jb250YWluZXJfc2F2ZV9idXR0b24iOnRydWUsImVuYWJsZV9wbGF5YWJsZV9lbnRpdHlfc2F2ZV9tZW51X2l0ZW0iOnRydWUsImVuYWJsZV9wdGNfaG9tZV9sb2NhdGlvbl9vbl93ZWIiOnRydWUsImVuYWJsZV9wdl9zY3JlZW5fbW9kZXJuX3RleHQiOnRydWUsImVuYWJsZV9ydGFfbWFuYWdlciI6dHJ1ZSwiZW5hYmxlX3NjcmVlbl9tYW5hZ2VyX2xheWVyX3NlcGFyYXRpb24iOnRydWUsImVuYWJsZV9zZGZfY29tcGFuaW9uX2g1Ijp0cnVlLCJlbmFibGVfc2RmX2RhaV9oNV9taWRyb2xsIjp0cnVlLCJlbmFibGVfc2RmX2g1X2VuZGVtaWNfbWlkX3Bvc3Rfcm9sbCI6dHJ1ZSwiZW5hYmxlX3NkZl9vbl9oNV91bnBsdWdnZWRfdm9kX21pZHJvbGwiOnRydWUsImVuYWJsZV9zZGZfc2hvcnRzX3BsYXllcl9ieXRlc19oNSI6dHJ1ZSwiZW5hYmxlX3NlbmRpbmdfdW53cmFwcGVkX2dhbWVfYXVkaW9fYXNfc2VyaWFsaXplZF9tZXRhZGF0YSI6dHJ1ZSwiZW5hYmxlX3NldF92aWRlb19pZF9pbl9zaG9ydHNfbG9ja3VwX3ZpZXdfbW9kZWwiOnRydWUsImVuYWJsZV9zZnZfZWZmZWN0X3Bpdm90X3VybCI6dHJ1ZSwiZW5hYmxlX3Nob3J0c19uZXdfY2Fyb3VzZWwiOnRydWUsImVuYWJsZV9za2lwX2FkX2d1aWRhbmNlX3Byb21wdCI6dHJ1ZSwiZW5hYmxlX3NraXBwYWJsZV9hZHNfZm9yX3VucGx1Z2dlZF9hZF9wb2QiOnRydWUsImVuYWJsZV9zbWVhcmluZ19leHBhbnNpb25fZGFpIjp0cnVlLCJlbmFibGVfc3VwZXhfbXdlYl9kZW1vX3dlYmZlIjp0cnVlLCJlbmFibGVfdGltZV9vdXRfbWVzc2FnZXMiOnRydWUsImVuYWJsZV90aW1lbGluZV92aWV3X21vZGVybl90cmFuc2NyaXB0X2ZlIjp0cnVlLCJlbmFibGVfdmlkZW9fZGlzcGxheV9jb21wYWN0X2J1dHRvbl9ncm91cF9mb3JfZGVza3RvcF9zZWFyY2giOnRydWUsImVuYWJsZV93ZWJfZGVsaGlfaWNvbnMiOnRydWUsImVuYWJsZV93ZWJfaG9tZV90b3BfbGFuZHNjYXBlX2ltYWdlX2xheW91dF9sZXZlbF9jbGljayI6dHJ1ZSwiZW5hYmxlX3dlYl9zaG9ydHNfYXVkaW9fdHJhY2siOnRydWUsImVuYWJsZV93ZWJfdGllcmVkX2dlbCI6dHJ1ZSwiZW5hYmxlX3dpbmRvd19jb25zdHJhaW5lZF9idXlfZmxvd19kaWFsb2ciOnRydWUsImVuYWJsZV93aXpfcXVldWVfZWZmZWN0X2FuZF9vbl9pbml0X2luaXRpYWxfcnVucyI6dHJ1ZSwiZW5hYmxlX3lwY19zcGlubmVycyI6dHJ1ZSwiZW5hYmxlX3l0X2F0YV9pZnJhbWVfYXV0aHVzZXIiOnRydWUsImV4cG9ydF9uZXR3b3JrbGVzc19vcHRpb25zIjp0cnVlLCJleHBvcnRfcGxheWVyX3ZlcnNpb25fdG9feXRjb25maWciOnRydWUsImZpbGxfc2luZ2xlX3ZpZGVvX3dpdGhfbm90aWZ5X3RvX2xhc3IiOnRydWUsImZpeF9hZHNfdHJhY2tpbmdfZm9yX3N3Zl9jb25maWdfZGVwcmVjYXRpb25fbXdlYiI6dHJ1ZSwiaDVfY29tcGFuaW9uX2VuYWJsZV9hZGNwbl9tYWNyb19zdWJzdGl0dXRpb25fZm9yX2NsaWNrX3BpbmdzIjp0cnVlLCJoNV9pbnBsYXllcl9lbmFibGVfYWRjcG5fbWFjcm9fc3Vic3RpdHV0aW9uX2Zvcl9jbGlja19waW5ncyI6dHJ1ZSwiaDVfcmVzZXRfY2FjaGVfYW5kX2ZpbHRlcl9iZWZvcmVfdXBkYXRlX21hc3RoZWFkIjp0cnVlLCJoaWRlX2NoYW5uZWxfY3JlYXRpb25fdGl0bGVfZm9yX213ZWIiOnRydWUsImhpZ2hfY2N2X2NsaWVudF9zaWRlX2NhY2hpbmdfaDUiOnRydWUsImh0bWw1X2xvZ190cmlnZ2VyX2V2ZW50c193aXRoX2RlYnVnX2RhdGEiOnRydWUsImh0bWw1X3NzZGFpX2VuYWJsZV9tZWRpYV9lbmRfY3VlX3JhbmdlIjp0cnVlLCJpZGJfaW1tZWRpYXRlX2NvbW1pdCI6dHJ1ZSwiaWxfYXR0YWNoX2NhY2hlX2xpbWl0Ijp0cnVlLCJpbF91c2Vfdmlld19tb2RlbF9sb2dnaW5nX2NvbnRleHQiOnRydWUsImlzX2Jyb3dzZXJfc3VwcG9ydF9mb3Jfd2ViY2FtX3N0cmVhbWluZyI6dHJ1ZSwianNvbl9jb25kZW5zZWRfcmVzcG9uc2UiOnRydWUsImtldmxhcl9maWx0ZXJfdW5rbm93bl9zb3VyY2UiOnRydWUsImtldmxhcl9nZWxfZXJyb3Jfcm91dGluZyI6dHJ1ZSwia2V2bGFyX3RyaW1fcGxheWVyX2JlaGF2aW9yIjp0cnVlLCJrZXZsYXJfd2F0Y2hfY2luZW1hdGljcyI6dHJ1ZSwibGltaXRfeXRjc2lfZGVidWdfYXJyYXlfc2l6ZSI6dHJ1ZSwibGl2ZV9jaGF0X2VuYWJsZV9ydGFfbWFuYWdlciI6dHJ1ZSwibG9nX2NsaWNrX3dpdGhfbGF5ZXJfZnJvbV9lbGVtZW50X2luX2NvbW1hbmRfaGFuZGxlciI6dHJ1ZSwibWF3X2VuYWJsZV9uZXR3b3JrX21hY2hpbmUiOnRydWUsIm1keF9lbmFibGVfcHJpdmFjeV9kaXNjbG9zdXJlX3VpIjp0cnVlLCJtZHhfbG9hZF9jYXN0X2FwaV9ib290c3RyYXBfc2NyaXB0Ijp0cnVlLCJtZWRpdW1fcHJvZ3Jlc3NfYmFyX21vZGlmaWNhdGlvbiI6dHJ1ZSwibW9iaWxlX2FjY291bnRfbWVudV9yZWZyZXNoIjp0cnVlLCJtd2ViX2FjY291bnRfbGlua2luZ19ub2FwcCI6dHJ1ZSwibXdlYl9hbGxvd19tb2Rlcm5fc2VhcmNoX3N1Z2dlc3RfYmVoYXZpb3IiOnRydWUsIm13ZWJfYW5pbWF0ZWRfYWN0aW9ucyI6dHJ1ZSwibXdlYl9hcHBfdXBzZWxsX2J1dHRvbl9kaXJlY3RfdG9fYXBwIjp0cnVlLCJtd2ViX2JhZGdlX3NoYXBlX2RlZnJhZyI6dHJ1ZSwibXdlYl9jM19hcHBfcHJvbW9fZW5hYmxlX3JlZmVycmluZ19hcHAiOnRydWUsIm13ZWJfYzNfZW5hYmxlX2FkYXB0aXZlX3NpZ25hbHMiOnRydWUsIm13ZWJfYzNfbGlicmFyeV9wYWdlX2VuYWJsZV9yZWNlbnRfc2hlbGYiOnRydWUsIm13ZWJfYzNfbWVudV9zaWduYWxzX3JlbmRlciI6dHJ1ZSwibXdlYl9jM19yZW1vdmVfd2ViX25hdmlnYXRpb25fZW5kcG9pbnRfZGF0YSI6dHJ1ZSwibXdlYl9jM190b2FzdF91c2Vfd2l6X3JlYWN0aXZlX3JlbmRlciI6dHJ1ZSwibXdlYl9jM191c2VfY2Fub25pY2FsX2Zyb21fcGxheWVyX3Jlc3BvbnNlIjp0cnVlLCJtd2ViX2NhcnZlX291dF9pb3NfYXBwX3N0b3JlX3JlZGlyZWN0Ijp0cnVlLCJtd2ViX2NhcnZlX291dF90ZXJtc19wYWdlcyI6dHJ1ZSwibXdlYl9jaW5lbWF0aWNfd2F0Y2giOnRydWUsIm13ZWJfY29tbWFuZF9oYW5kbGVyIjp0cnVlLCJtd2ViX2RlYnVnX3N0aWNreV9zZXR0aW5ncyI6dHJ1ZSwibXdlYl9kZWxheV93YXRjaF9pbml0aWFsX2RhdGEiOnRydWUsIm13ZWJfZGlzYWJsZV9zZWFyY2hiYXJfc2Nyb2xsIjp0cnVlLCJtd2ViX2VuYWJsZV9jbGlja190b19wbGF5X3BhdXNlIjp0cnVlLCJtd2ViX2VuYWJsZV9jb2xvcmZ1bF9haV9zdW1tYXJ5Ijp0cnVlLCJtd2ViX2VuYWJsZV9keW5hbWljX2RvdWJsZV90YXBfdG9fbGlrZSI6dHJ1ZSwibXdlYl9lbmFibGVfZmluZV9zY3J1YmJpbmdfZm9yX3JlY3MiOnRydWUsIm13ZWJfZW5hYmxlX2tldG9fYmF0Y2hfcGxheWVyX2Z1bGxzY3JlZW4iOnRydWUsIm13ZWJfZW5hYmxlX2tldG9fYmF0Y2hfcGxheWVyX3Byb2dyZXNzX2JhciI6dHJ1ZSwibXdlYl9lbmFibGVfa2V0b19iYXRjaF9wbGF5ZXJfdG9vbHRpcHMiOnRydWUsIm13ZWJfZW5hYmxlX2tldG9fY29udGVudCI6dHJ1ZSwibXdlYl9lbmFibGVfbG9ja3VwX3ZpZXdfbW9kZWxfZm9yX3VjcCI6dHJ1ZSwibXdlYl9lbmFibGVfbWl4X3BhbmVsX3RpdGxlX21ldGFkYXRhIjp0cnVlLCJtd2ViX2VuYWJsZV9tb3JlX2NodW5rcyI6dHJ1ZSwibXdlYl9lbmFibGVfbW9yZV9kcmF3ZXIiOnRydWUsIm13ZWJfZW5hYmxlX29wdGlvbmFsX2Z1bGxzY3JlZW5fbGFuZHNjYXBlX2xvY2tpbmciOnRydWUsIm13ZWJfZW5hYmxlX292ZXJsYXlfdG91Y2hfbWFuYWdlciI6dHJ1ZSwibXdlYl9lbmFibGVfcG9ydHJhaXRfZnVsbHNjcmVlbl9hY3Rpb25zIjp0cnVlLCJtd2ViX2VuYWJsZV9wcmVtaXVtX2NhcnZlX291dF9maXgiOnRydWUsIm13ZWJfZW5hYmxlX3JlZnJlc2hfZGV0ZWN0aW9uIjp0cnVlLCJtd2ViX2VuYWJsZV9zZWFyY2hfaW1wIjp0cnVlLCJtd2ViX2VuYWJsZV9zaG9ydHNfdmlkZW9fcHJlbG9hZCI6dHJ1ZSwibXdlYl9lbmFibGVfdHdvX2xpbmVfdGl0bGVfb25fc2hvcnRzIjp0cnVlLCJtd2ViX2VuYWJsZV92YXJpc3BlZWRfY29udHJvbGxlciI6dHJ1ZSwibXdlYl9lbmFibGVfdmlkZW9fbG9vcF90b2dnbGUiOnRydWUsIm13ZWJfZW5hYmxlX3dhdGNoX2ZlZWRfaW5maW5pdGVfc2Nyb2xsIjp0cnVlLCJtd2ViX2ZpeF9jb2xkX2xvYWRfcmVzcG9uc2VfYWN0aW9ucyI6dHJ1ZSwibXdlYl9maXhfbW9uaXRvcl92aXNpYmlsaXR5X2FmdGVyX3JlbmRlciI6dHJ1ZSwibXdlYl9mb3JjZV9pb3NfZmFsbGJhY2tfdG9fbmF0aXZlX2NvbnRyb2wiOnRydWUsIm13ZWJfZnBfYXV0b19mdWxsc2NyZWVuIjp0cnVlLCJtd2ViX2ZwX2VuYWJsZV9zaG9ydHNfc3dpcGVfbG9nZ2luZyI6dHJ1ZSwibXdlYl9mdWxsc2NyZWVuX2NvbnRyb2xzIjp0cnVlLCJtd2ViX2Z1bGxzY3JlZW5fY29udHJvbHNfYWN0aW9uX2J1dHRvbnMiOnRydWUsIm13ZWJfZnVsbHNjcmVlbl93YXRjaF9zeXN0ZW0iOnRydWUsIm13ZWJfZnVsbHlfcmVhY3RpdmVfY2IiOnRydWUsIm13ZWJfaG9tZV9yZWFjdGl2ZV9zaG9ydHMiOnRydWUsIm13ZWJfaW5uZXJ0dWJlX3NlYXJjaF9jb21tYW5kIjp0cnVlLCJtd2ViX2thaW9zX2VuYWJsZV9hdXRvcGxheV9zd2l0Y2hfdmlld19tb2RlbCI6dHJ1ZSwibXdlYl9sYW5nX2luX2h0bWwiOnRydWUsIm13ZWJfbGlrZV9idXR0b25fc3luY2VkX3dpdGhfZW50aXRpZXMiOnRydWUsIm13ZWJfbG9nb191c2VfaG9tZV9wYWdlX3ZlIjp0cnVlLCJtd2ViX2xvbmdfcHJlc3Nfc3BlZWR1cF92aWJyYXRpb24iOnRydWUsIm13ZWJfbmF0aXZlX2NvbnRyb2xfaW5fZmF1eF9mdWxsc2NyZWVuX3NoYXJlZCI6dHJ1ZSwibXdlYl9wbGF5ZXJfY29udHJvbF9vbl9ob3ZlciI6dHJ1ZSwibXdlYl9wbGF5ZXJfZGVsaGlfZHR0cyI6dHJ1ZSwibXdlYl9wbGF5ZXJfc2hvd19wcmV2aW91c19uZXh0X2J1dHRvbnNfaW5fcGxheWxpc3QiOnRydWUsIm13ZWJfcGxheWVyX3NraXBfbm9fb3Bfc3RhdGVfY2hhbmdlcyI6dHJ1ZSwibXdlYl9wbGF5ZXJfdXNlcl9zZWxlY3Rfbm9uZSI6dHJ1ZSwibXdlYl9wbGF5bGlzdF9lbmdhZ2VtZW50X3BhbmVsIjp0cnVlLCJtd2ViX3Byb2dyZXNzX2Jhcl9zZWVrX29uX21vdXNlX2NsaWNrIjp0cnVlLCJtd2ViX3Byb3BhZ2F0ZV9wbGF5ZXJfbGlua19jbGlja3MiOnRydWUsIm13ZWJfcHVsbF8yX2Z1bGwiOnRydWUsIm13ZWJfcHVsbF8yX2Z1bGxfZW5hYmxlX3RvdWNoX2hhbmRsZXJzIjp0cnVlLCJtd2ViX3NjaGVkdWxlX3dhcm1fd2F0Y2hfcmVzcG9uc2UiOnRydWUsIm13ZWJfc2VhcmNoYm94X2xlZ2FjeV9uYXZpZ2F0aW9uIjp0cnVlLCJtd2ViX3NlZV9mZXdlcl9zaG9ydHMiOnRydWUsIm13ZWJfc2hvcnRzX2NvbW1lbnRzX3BhbmVsX2lkX2NoYW5nZSI6dHJ1ZSwibXdlYl9zaG9ydHNfZWFybHlfY29udGludWF0aW9uIjp0cnVlLCJtd2ViX3Nob3J0c19lbmFibGVfbG9uZ19wcmVzc19zcGVlZHVwIjp0cnVlLCJtd2ViX3Nob3J0c19vdmVybGF5X2RlcHJlY2F0ZV9rYWlvc19sYXlvdXQiOnRydWUsIm13ZWJfc2hvd19zaWduX2luX2J1dHRvbl9mcm9tX2hlYWRlciI6dHJ1ZSwibXdlYl91c2VfbWljcm9mb3JtYXRfdGl0bGVfZm9yX3Bvc3RzIjp0cnVlLCJtd2ViX3VzZV9zZXJ2ZXJfdXJsX29uX3N0YXJ0dXAiOnRydWUsIm13ZWJfd2F0Y2hfY2FwdGlvbnNfZW5hYmxlX2F1dG9fdHJhbnNsYXRlIjp0cnVlLCJtd2ViX3dhdGNoX2NhcHRpb25zX3NldF9kZWZhdWx0X3NpemUiOnRydWUsIm13ZWJfd2F0Y2hfZGVsaGlfcGxheWVyIjp0cnVlLCJtd2ViX3dhdGNoX3N0b3Bfc2NoZWR1bGVyX29uX3BsYXllcl9yZXNwb25zZSI6dHJ1ZSwibXdlYl93YXRjaGZlZWRfYmlnX3RodW1ibmFpbHMiOnRydWUsIm13ZWJfeXRfc2VhcmNoYm94Ijp0cnVlLCJuZXR3b3JrbGVzc19sb2dnaW5nIjp0cnVlLCJub19jbGllbnRfdmVfYXR0YWNoX3VubGVzc19zaG93biI6dHJ1ZSwicGFnZWlkX2FzX2hlYWRlcl93ZWIiOnRydWUsInBsYXllcl9jb250cm9sc19hdXRvbmF2X2ZpeCI6dHJ1ZSwicGxheWVyX2NvbnRyb2xzX3NraXBfZG91YmxlX3NpZ25hbF91cGRhdGUiOnRydWUsInBsYXllcl9jb250cm9sc191c2VfcGxheWVyX2FwaV9jb250ZXh0Ijp0cnVlLCJwbGF5ZXJfY29udHJvbHNfdm9sdW1lX2NvbnRyb2xzX3VzZV9wbGF5ZXJfcHJvcHMiOnRydWUsInBvbHltZXJfYmFkX2J1aWxkX2xhYmVscyI6dHJ1ZSwicG9seW1lcl92ZXJpZml5X2FwcF9zdGF0ZSI6dHJ1ZSwicW9lX3NlbmRfYW5kX3dyaXRlIjp0cnVlLCJyZW1vdmVfY2hldnJvbl9mcm9tX2FkX2Rpc2Nsb3N1cmVfYmFubmVyX2g1Ijp0cnVlLCJyZW1vdmVfbWFzdGhlYWRfY2hhbm5lbF9iYW5uZXJfb25fcmVmcmVzaCI6dHJ1ZSwicmVtb3ZlX3Nsb3RfaWRfZXhpdGVkX3RyaWdnZXJfZm9yX2RhaV9pbl9wbGF5ZXJfc2xvdF9leHBpcmUiOnRydWUsInJvc2NhcyI6dHJ1ZSwic2VydmljZV93b3JrZXJfZW5hYmxlZCI6dHJ1ZSwic2VydmljZV93b3JrZXJfcHVzaF9lbmFibGVkIjp0cnVlLCJzZXJ2aWNlX3dvcmtlcl9wdXNoX2hvbWVfcGFnZV9wcm9tcHQiOnRydWUsInNlcnZpY2Vfd29ya2VyX3B1c2hfd2F0Y2hfcGFnZV9wcm9tcHQiOnRydWUsInNoZWxsX2xvYWRfZ2NmIjp0cnVlLCJzaG9ydGVuX2luaXRpYWxfZ2VsX2JhdGNoX3RpbWVvdXQiOnRydWUsInNob3J0c19lbmFibGVfcmVlbF9jYXJvdXNlbCI6dHJ1ZSwic2hvdWxkX3VzZV95dF92b2ljZV9lbmRwb2ludF9pbl9rYWlvcyI6dHJ1ZSwic21hcnRlcl92ZV9kZWR1cHBpbmciOnRydWUsInN0b3BfaGFuZGxpbmdfY2xpY2tfZm9yX25vbl9yZW5kZXJpbmdfb3ZlcmxheV9sYXlvdXQiOnRydWUsInN1cHByZXNzX2Vycm9yXzIwNF9sb2dnaW5nIjp0cnVlLCJzeW5jZWRfcGFuZWxfc2Nyb2xsaW5nX2NvbnRyb2xsZXIiOnRydWUsInRvb2x0aXBfcmVmYWN0b3JfZm9yX2hvdGtleSI6dHJ1ZSwidXNlX2V2ZW50X3RpbWVfbXNfaGVhZGVyIjp0cnVlLCJ1c2VfZmlmb19mb3JfbmV0d29ya2xlc3MiOnRydWUsInVzZV9yZXF1ZXN0X3RpbWVfbXNfaGVhZGVyIjp0cnVlLCJ1c2Vfc2Vzc2lvbl9iYXNlZF9zYW1wbGluZyI6dHJ1ZSwidXNlX3RodW1ibmFpbF9vdmVybGF5X3RpbWVfc3RhdHVzX3JlbmRlcmVyX2Zvcl9saXZlX2JhZGdlIjp0cnVlLCJ2c3NfZmluYWxfcGluZ19zZW5kX2FuZF93cml0ZSI6dHJ1ZSwidnNzX3BsYXliYWNrX3VzZV9zZW5kX2FuZF93cml0ZSI6dHJ1ZSwid2F0Y2hfcHVic3ViX3JlZmFjdG9yIjp0cnVlLCJ3ZWJfYWRhcHRpdmVfcmVwZWF0X2FzZSI6dHJ1ZSwid2ViX2Fsd2F5c19sb2FkX2NoYXRfc3VwcG9ydCI6dHJ1ZSwid2ViX2FwaV91cmwiOnRydWUsIndlYl9hdHRlbnRpb25fbG9nZ2luZ19lbmFibGVkIjp0cnVlLCJ3ZWJfYXR0ZW50aW9uX2xvZ2dpbmdfZXhwb3J0X3RvX2dlbCI6dHJ1ZSwid2ViX2F0dHJpYnV0ZWRfc3RyaW5nX2RlZXBfZXF1YWxfYnVnZml4Ijp0cnVlLCJ3ZWJfYXV0b25hdl9hbGxvd19vZmZfYnlfZGVmYXVsdCI6dHJ1ZSwid2ViX2J1dHRvbl9vcl9hbmNob3JfbGlzdF9pdGVtIjp0cnVlLCJ3ZWJfYnV0dG9uX3ZpZXdfbW9kZWxfbm9uX251bGxpc2hfZGF0YSI6dHJ1ZSwid2ViX2J1dHRvbl92bV9yZWZhY3Rvcl9kaXNhYmxlZCI6dHJ1ZSwid2ViX2MzX2xvZ19hcHBfaW5pdF9maW5pc2giOnRydWUsIndlYl9jb21tZW50X3BhbmVsX2Vhc3lfZXhwYW5kIjp0cnVlLCJ3ZWJfY3NpX2FjdGlvbl9zYW1wbGluZ19lbmFibGVkIjp0cnVlLCJ3ZWJfZGVkdXBlX3ZlX2dyYWZ0aW5nIjp0cnVlLCJ3ZWJfZGlzYWJsZV9iYWNrZHJvcF9maWx0ZXIiOnRydWUsIndlYl9kaXNhYmxlX2NoaXBfdmlld19tb2RlbF9tdXRhdGlvbiI6dHJ1ZSwid2ViX2VuYWJsZV9hYl9yc3BfY2wiOnRydWUsIndlYl9lbmFibGVfYWRfYnV0dG9uX3N0eWxlX292ZXJyaWRlIjp0cnVlLCJ3ZWJfZW5hYmxlX2Fza19kaXNjbGFpbWVyX3VwZGF0ZSI6dHJ1ZSwid2ViX2VuYWJsZV9jYW5vbmljYWxfdXJsX21hbmFnZXIiOnRydWUsIndlYl9lbmFibGVfY291cnNlX2ljb25fdXBkYXRlIjp0cnVlLCJ3ZWJfZW5hYmxlX2VudGl0eV91cHNlcnRfb25fdXBkYXRlIjp0cnVlLCJ3ZWJfZW5hYmxlX2Vycm9yXzIwNCI6dHJ1ZSwid2ViX2VuYWJsZV90aHVtYm5haWxfb3ZlcmxheV9hbGlnbm1lbnQiOnRydWUsIndlYl9nY2ZfaGFzaGVzX2lubmVydHViZSI6dHJ1ZSwid2ViX2dlbF90aW1lb3V0X2NhcCI6dHJ1ZSwid2ViX2hpZGVfeW91cl9kYXRhX29uX2F1dG9tb3RpdmUiOnRydWUsIndlYl9pbXBfZW5hYmxlX2NzaV9zdGFydF90aWNrIjp0cnVlLCJ3ZWJfbW9ub21lcl93ZWJfY29tcG9uZW50X3dyYXBwZXJfaGFuZGxlX2Vycm9ycyI6dHJ1ZSwid2ViX25vbl9uYXZpZ2F0aW5nX2F0YWciOnRydWUsIndlYl9wYXJlbnRfdGFyZ2V0X2Zvcl9zaGVldHMiOnRydWUsIndlYl9wZXJzaXN0X3NlcnZlcl9hdXRvbmF2X3N0YXRlX29uX2NsaWVudCI6dHJ1ZSwid2ViX3BsYXliYWNrX2Fzc29jaWF0ZWRfdmUiOnRydWUsIndlYl9wbGF5ZXJfdXBkYXRlZF9lbnRyeXBvaW50Ijp0cnVlLCJ3ZWJfcHJlZmV0Y2hfcHJlbG9hZF92aWRlbyI6dHJ1ZSwid2ViX3Byb2dyZXNzX2Jhcl9kcmFnZ2FibGUiOnRydWUsIndlYl9wcm9wYWdhdGVfdmlzaWJpbGl0eV90b19hcHBsaWNhdGlvbl9zdGF0ZSI6dHJ1ZSwid2ViX3JlbW92ZV9zbmFja2Jhcl9hY3Rpb25zIjp0cnVlLCJ3ZWJfc2VjdGlvbl9saXN0X3JlbmRlcmVyX3dyYXBwZWRfY29udGVudHMiOnRydWUsIndlYl9zaG9ydHNfYXVkaW9fdHJhY2tfcGlja2VyIjp0cnVlLCJ3ZWJfc2hvcnRzX2VuYWJsZV9yZW1vdmVfc2VhcmNoX3Bpdm90X2JhY2tfYnV0dG9uIjp0cnVlLCJ3ZWJfc2hvcnRzX2lubGluZV9tdXRlZF9wbGF5YmFjayI6dHJ1ZSwid2ViX3Nob3J0c193bl9zaGVsZl9oZWFkZXJfdHVuaW5nIjp0cnVlLCJ3ZWJfdW5pZmllZF9mZXRjaCI6dHJ1ZSwid2ViX3VwZGF0ZV9wYW5lbF92aXNpYmlsaXR5X2xvZ2dpbmdfZml4Ijp0cnVlLCJ3ZWJfd2F0Y2hfY29udHJvbHNfc3RhdGVfc2lnbmFscyI6dHJ1ZSwid2ViZmVfbXdlYl93YXRjaF9taWNyb2RhdGEiOnRydWUsIndlYmZlX3dhdGNoX3Nob3J0c19jYW5vbmljYWxfdXJsX2ZpeCI6dHJ1ZSwid2VicG9fZXhpdF9vbl9uZXRfZXJyIjp0cnVlLCJ3aXpfZGlmZl9vdmVyd3JpdGFibGUiOnRydWUsIndpel93cmFwcGVyX2NhbGxiYWNrX3Byb3BzX2ZpeCI6dHJ1ZSwid3VnX25ldHdvcmtpbmdfZ3ppcF9yZXF1ZXN0Ijp0cnVlLCJINV9hc3luY19sb2dnaW5nX2RlbGF5X21zIjozMDAwMC4wLCJhdXRvcGxheV9wYXVzZV9ieV9sYWN0X3NhbXBsaW5nX2ZyYWN0aW9uIjowLjAsImNpbmVtYXRpY193YXRjaF9lZmZlY3Rfb3BhY2l0eSI6MC40LCJsb2dfd2luZG93X29uZXJyb3JfZnJhY3Rpb24iOjAuMSwic3BlZWRtYXN0ZXJfcGxheWJhY2tfcmF0ZSI6Mi4wLCJ3ZWJfYXR0ZW50aW9uX2xvZ2dpbmdfc2Nyb2xsX3Rocm90dGxlIjo1MDAuMCwid2ViX2RlYWRfY29kZV9kZXRlY3Rvcl9zYW1wbGluZ19yYXRlIjowLjAsIndlYl9sb2FkX3ByZWRpY3Rpb25fdGhyZXNob2xkIjowLjMsIndlYl9uYXZpZ2F0aW9uX3ByZWRpY3Rpb25fdGhyZXNob2xkIjowLjEsIndlYl9wYmpfbG9nX3dhcm5pbmdfcmF0ZSI6MC4wLCJ3ZWJfc3lzdGVtX2hlYWx0aF9mcmFjdGlvbiI6MC4wMSwieXRpZGJfdHJhbnNhY3Rpb25fZW5kZWRfZXZlbnRfcmF0ZV9saW1pdCI6MC4wMiwiYXR0X2luaXRfZGVsYXkiOjUwMCwiYXV0b3BsYXlfcGF1c2VfYnlfbGFjdF9zZWMiOjAsImJvdGd1YXJkX2FzeW5jX3NuYXBzaG90X3RpbWVvdXRfbXMiOjMwMDAsImNoZWNrX25hdmlnYXRvcl9hY2N1cmFjeV90aW1lb3V0X21zIjowLCJjaW5lbWF0aWNfd2F0Y2hfY3NzX2ZpbHRlcl9ibHVyX3N0cmVuZ3RoIjo0MCwiY2luZW1hdGljX3dhdGNoX2ZhZGVfb3V0X2R1cmF0aW9uIjo1MDAsImNsb3NlX3dlYnZpZXdfZGVsYXlfbXMiOjEwMCwiY2xvdWRfc2F2ZV9nYW1lX2RhdGFfcmF0ZV9saW1pdF9tcyI6MzAwMCwiY29tcHJlc3Npb25fZGlzYWJsZV9wb2ludCI6MTAsImN1c3RvbV9hY3RpdmVfdmlld190b3NfdGltZW91dF9tcyI6MzYwMDAwMCwiZW1iZWRzX3dpZGdldF9wb2xsX2ludGVydmFsX21zIjowLCJlbmRlbWljX2hpZ2hfY2N2X3NtZWFyaW5nX21heF93aW5kb3dfc2Vjb25kcyI6NjAsImdlbF9taW5fYmF0Y2hfc2l6ZSI6MywiZ2VsX3F1ZXVlX3RpbWVvdXRfbWF4X21zIjo2MDAwMCwiZ2V0X2FzeW5jX3RpbWVvdXRfbXMiOjYwMDAwLCJodG1sNV9ieXRlcmF0ZV9zb2Z0X2NhcCI6MCwiaW5pdGlhbF9nZWxfYmF0Y2hfdGltZW91dCI6MjAwMCwibWF4X2JvZHlfc2l6ZV90b19jb21wcmVzcyI6NTAwMDAwLCJtYXhfcHJlZmV0Y2hfd2luZG93X3NlY19mb3JfbGl2ZXN0cmVhbV9vcHRpbWl6YXRpb24iOjEwLCJtaW5fcHJlZmV0Y2hfb2Zmc2V0X3NlY19mb3JfbGl2ZXN0cmVhbV9vcHRpbWl6YXRpb24iOjIwLCJtaW5pX2FwcF9jb250YWluZXJfaWZyYW1lX3NyY191cGRhdGVfZGVsYXlfbXMiOjAsIm11bHRpcGxlX3ByZXZpZXdfbmV3c19kdXJhdGlvbl90aW1lIjoxMTAwMCwibXdlYl9jM190b2FzdF9kdXJhdGlvbl9tcyI6NTAwMCwibXdlYl9kZWVwX2xpbmtfZmFsbGJhY2tfdGltZW91dF9tcyI6MTAwMDAsIm13ZWJfZGVsYXlfcmVzcG9uc2VfcmVjZWl2ZWRfYWN0aW9ucyI6MTAwLCJtd2ViX2R3ZWxsX2RlbGF5X21zIjo1MDAsIm13ZWJfZnBfZHBhZF9yYXRlX2xpbWl0X21zIjowLCJtd2ViX2ZwX2RwYWRfd2F0Y2hfdGl0bGVfY2xhbXBfbGluZXMiOjAsIm13ZWJfaGlzdG9yeV9tYW5hZ2VyX2NhY2hlX3NpemUiOjEwMCwibXdlYl9pb3NfZnVsbHNjcmVlbl9wbGF5YmFja190cmFuc2l0aW9uX2RlbGF5X21zIjo1MDAsIm13ZWJfaW9zX2Z1bGxzY3JlZW5fc3lzdGVtX3BhdXNlX2VwaWxzb25fbXMiOjAsIm13ZWJfb3ZlcnJpZGVfcmVzcG9uc2Vfc3RvcmVfZXhwaXJhdGlvbl9tcyI6MCwibXdlYl9zaG9ydHNfZWFybHlfY29udGludWF0aW9uX3RyaWdnZXJfdGhyZXNob2xkIjo0LCJtd2ViX3Nob3J0c19udW1iZXJfb2ZfdGh1bWJuYWlsc19zaG93biI6MiwibXdlYl93MndfbWF4X2FnZV9zZWNvbmRzIjowLCJtd2ViX3dhdGNoX2NhcHRpb25zX2RlZmF1bHRfc2l6ZSI6MiwibmVvbl9kYXJrX2xhdW5jaF9ncmFkaWVudF9jb3VudCI6MCwibmV0d29ya19wb2xsaW5nX2ludGVydmFsIjozMDAwMCwicGxheV9waW5nX2ludGVydmFsX21zIjoxMDAwMCwic2VuZF9jb25maWdfaGFzaF90aW1lciI6MCwic2VydmljZV93b3JrZXJfcHVzaF9sb2dnZWRfb3V0X3Byb21wdF93YXRjaGVzIjotMSwic2VydmljZV93b3JrZXJfcHVzaF9wcm9tcHRfY2FwIjotMSwic2VydmljZV93b3JrZXJfcHVzaF9wcm9tcHRfZGVsYXlfbWljcm9zZWNvbmRzIjozODg4MDAwMDAwMDAwLCJzaG93X21pbmlfYXBwX2FkX3dlYl9yZWd1bGFyX2ZyZXF1ZW5jeV9jYXBfbXMiOjI0MDAwMCwic2hvd19taW5pX2FwcF9hZF93ZWJfcmV3YXJkZWRfZnJlcXVlbmN5X2NhcF9tcyI6MCwic2xvd19jb21wcmVzc2lvbnNfYmVmb3JlX2FiYW5kb25fY291bnQiOjQsInNwZWVkbWFzdGVyX2NhbmNlbGxhdGlvbl9tb3ZlbWVudF9kcCI6MTAsInNwZWVkbWFzdGVyX3RvdWNoX2FjdGl2YXRpb25fbXMiOjUwMCwid2ViX2FpX3NlYXJjaF9yb2xsb3V0X3ZlcnNpb24iOjEsIndlYl9mb3JlZ3JvdW5kX2hlYXJ0YmVhdF9pbnRlcnZhbF9tcyI6MjgwMDAsIndlYl9nZWxfZGVib3VuY2VfbXMiOjEwMDAwLCJ3ZWJfbG9nZ2luZ19tYXhfYmF0Y2giOjEwMCwid2ViX21heF90cmFjaW5nX2V2ZW50cyI6NTAsIndlYl9zZXNzaW9uX3JlcGxheV9tb3VzZW1vdmVfaW50ZXJ2YWwiOjAsIndlYl9zZXNzaW9uX3JlcGxheV9zY3JvbGxfaW50ZXJ2YWwiOjAsIndlYl9zZXNzaW9uX3JlcGxheV9zZW5kX2FmdGVyX3RpbWVvdXQiOjAsIndlYl90cmFjaW5nX3Nlc3Npb25fcmVwbGF5IjowLCJ3aWxfaWNvbl9tYXhfY29uY3VycmVudF9mZXRjaGVzIjo5OTk5LCJ5dGNzaV9kZWJ1Z19tYXhfc2l6ZSI6MTAwLCJ5dGlkYl9yZW1ha2VfZGJfcmV0cmllcyI6MSwieXRpZGJfcmVvcGVuX2RiX3JldHJpZXMiOjAsIldlYkNsaWVudFJlbGVhc2VQcm9jZXNzQ3JpdGljYWxfX3lvdXR1YmVfZW1iZWRzX2NsaWVudF92ZXJzaW9uX292ZXJyaWRlIjoiIiwiV2ViQ2xpZW50UmVsZWFzZVByb2Nlc3NDcml0aWNhbF9feW91dHViZV9lbWJlZHNfd2ViX2NsaWVudF92ZXJzaW9uX292ZXJyaWRlIjoiIiwiZGVidWdfZm9yY2VkX2ludGVybmFsY291bnRyeWNvZGUiOiIiLCJlbmFibGVfd2ViX21lZGlhX3NlcnZpY2UiOiJESVNBQkxFRCIsImlsX3BheWxvYWRfc2NyYXBpbmciOiIiLCJsaXZlX2NoYXRfdW5pY29kZV9lbW9qaV9qc29uX3VybCI6Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3lvdXR1YmUvaW1nL2Vtb2ppcy9lbW9qaXMtc3ZnLTkuanNvbiIsIm13ZWJfZGVlcF9saW5rX2ZlYXR1cmVfdGFnX3N1ZmZpeCI6IjUxODMxNjE1IiwibXdlYl9lbmFibGVfc2hvcnRzX2lubmVydHViZV9wbGF5ZXJfcHJlZmV0Y2hfdHJpZ2dlciI6Ik5PTkUiLCJtd2ViX2ZwX2RwYWQiOiJob21lLHNlYXJjaCxicm93c2UsY2hhbm5lbCxjcmVhdGVfY2hhbm5lbCxleHBlcmltZW50cyxzZXR0aW5ncyx0cmVuZGluZyxvb3BzLDQwNCxwYWlkX21lbWJlcnNoaXBzLHNwb25zb3JzaGlwLHByZW1pdW0sc2hvcnRzIiwibXdlYl9mcF9kcGFkX2xpbmVhcl9uYXZpZ2F0aW9uIjoiIiwibXdlYl9mcF9kcGFkX2xpbmVhcl9uYXZpZ2F0aW9uX3Zpc2l0b3IiOiIiLCJtd2ViX2ZwX2RwYWRfdmlzaXRvciI6IiIsIm13ZWJfcHJlbG9hZF92aWRlb19ieV9wbGF5ZXJfdmFycyI6IiIsInBsYWNlX3Bpdm90X3RyaWdnZXJpbmdfY29udGFpbmVyX2FsdGVybmF0ZSI6IiIsInBsYWNlX3Bpdm90X3RyaWdnZXJpbmdfY291bnRlcmZhY3R1YWxfY29udGFpbmVyX2FsdGVybmF0ZSI6IiIsInNlcnZpY2Vfd29ya2VyX3B1c2hfZm9yY2Vfbm90aWZpY2F0aW9uX3Byb21wdF90YWciOiIxIiwic2VydmljZV93b3JrZXJfc2NvcGUiOiIvIiwic3VnZ2VzdF9leHBfc3RyIjoiIiwid2ViX2NsaWVudF92ZXJzaW9uX292ZXJyaWRlIjoiIiwiZW5kZW1pY19oaWdoX2Njdl9zbWVhcmluZ19hbGxvd2VkX3ZpZGVvX2lkcyI6WyJPSmx3SWRvRno5QSIsIkFyS2JBeDFLLTJVIiwibV9kaE1TdlVDSWMiLCJDMURocEowN1p1RSIsIk5xMndZbFdGdWNnIiwiSkM3ZjNFVURhcXciLCJ2cjNYeVZDUjRUMCIsImdDTmVEV0NJMHZvIiwia0JUdWRtNGdlTXMiLCJGeHNmVlg2QjFNayIsInlsWUpTQlVnYU1BIiwiVldoUTZ4c3BuU2MiLCJSSFVhdU1jWWxYMCIsImNiMTJLbU1NREpBIiwiV0p4RWpfaHJwU2ciLCJldWhZLXRtZzl4OCIsIlRsSVZJMkVXN1IwIiwiTUlOZnZPWDRCekkiLCJ5SG1QV3praGNaOCIsInAzdzF2TzlYdjI0IiwiVmxhQ25wMWZ4STgiLCItT2ZBMDRCRDRHQSIsIjFvZFkzSVlzTm5vIiwid2lUVHJWcVJWRHciLCJEZm0yckItblE5WSIsIlFtMUZ0ejhsVm5JIiwiOWl0QXhxX1NHRE0iLCJ5Rkkzd3BYeTR6QSIsIlB5NUpZWlhKdnpvIiwiYjR0RTVhS2h0bGciLCI1SkR4anNBVmFHayIsImVVbWZHUGF6dUVNIiwiVzhuVGhxNjJWYjQiLCJWTGp2UzN1ZmxYYyIsIkJmZExLdkpCTV9jIiwid2VMWGR3VmpTeHMiLCIySmEtdVBPa3o3SSIsIkE5UUJWRkVZeE9RIiwiay1aRlFra0hVZmMiLCJ3dXUwRDIwQVpxSSIsIl9IdmlTeUM3elNVIiwiX194T3pfUTNxUjQiLCJ3MnNCODdqTEUxSSIsIjhyVFRFTWRNaDhRIiwiLWs2bXBnbXhlclUiLCI5N2NrbnJKeUxXZyIsIjJGSXRWeXhMTk5jIiwib3RueGZjc0dFLVkiLCJzOXhMMURwQnNmUSIsIndmQUdCVmdVcnJvIiwiblhINlR4US1zaTgiLCJXaUkxWGdfbkV1OCIsIjNmbGFzR1ZVckNBIiwiZURZX0hlOTJsY1UiLCJhNDdja1hLWmp4SSIsIkk2V1JYZUtaSzY0IiwiVDlKNURxUDJES3ciLCJLdGtfSTBwVXBHOCIsImVRMmN6R3FPQ1BnIiwiaExtVTQ5aG1aNGMiLCI3ZjdNZ2FNRTdTYyIsIlFCNUJOZEJGdWpFIiwiQUdodE1VX2ZpNzAiLCJwMlJhUVVSUkF3QSIsIm16X19FTVlwV1B3IiwiNmpoTHVTUVZJeFUiLCJyQzgzdl91dUlxbyIsIjZEYUdkSlJfZUxnIiwiY200M3VYamZ2WlkiLCJZMUpzUHBtMmJtUSIsInowOTdqUHlLZWVvIiwiVFlWWldVVGpreDAiLCJWSGFBdmVuZlREayIsInR2OU9VXzVRMHBRIiwiNm9LQ3Z6bTZIbWciLCJCRUZVRVJoVDBuMCIsInVUTi1ldTAtT1hFIiwiaGJhcHJoUjd6VG8iLCIyQ1YwVi1vTU5GTSIsInU4ZFNPS29OSnAwIiwiSDhNcXF3bUZzeFkiLCJJc2trbU5QSmRVayIsIlg5SF9FenBER1hRIl0sImtldmxhcl9jb21tYW5kX2hhbmRsZXJfY29tbWFuZF9iYW5saXN0IjpbXSwibWluaV9hcHBfaWRzX3dpdGhvdXRfZ2FtZV9yZWFkeSI6WyJVZ2t4SEh0c2FrMVNDOG1SR0hNWmV3YzRIemVBWTN5aFBQbUoiLCJVZ2t4N09nekZxRTZ6XzVNdGY0WXNvdEdmUU5JSTFERl9SQm0iXSwid2ViX29wX3NpZ25hbF90eXBlX2Jhbmxpc3QiOltdLCJ3ZWJfdHJhY2luZ19lbmFibGVkX3NwYW5zIjpbImV2ZW50IiwiY29tbWFuZCJdfSwiR0FQSV9ISU5UX1BBUkFNUyI6Im07L18vc2NzL2FiYy1zdGF0aWMvXy9qcy9rXHUwMDNkZ2FwaS5nYXBpLmVuLjU0X0hEdmVPdGtRLk8vZFx1MDAzZDEvcnNcdTAwM2RBSHBPb285UXVmT2RQWVRSa2JUSmFkVFc2c21zeGxXTE13L21cdTAwM2RfX2ZlYXR1cmVzX18iLCJHQVBJX0hPU1QiOiJodHRwczovL2FwaXMuZ29vZ2xlLmNvbSIsIkdBUElfTE9DQUxFIjoiZW5fVVMiLCJHTCI6Ik5PIiwiSEwiOiJlbiIsIkhUTUxfRElSIjoibHRyIiwiSFRNTF9MQU5HIjoiZW4iLCJJTk5FUlRVQkVfQVBJX0tFWSI6IkFJemFTeUFPX0ZKMlNscVU4UTRTVEVITEdDaWx3X1k5XzExcWNXOCIsIklOTkVSVFVCRV9BUElfVkVSU0lPTiI6InYxIiwiSU5ORVJUVUJFX0NMSUVOVF9OQU1FIjoiV0VCX0VNQkVEREVEX1BMQVlFUiIsIklOTkVSVFVCRV9DTElFTlRfVkVSU0lPTiI6IjIuMjAyNjA3MjQuMDEuMDAiLCJJTk5FUlRVQkVfQ09OVEVYVCI6eyJjbGllbnQiOnsiaGwiOiJlbiIsImdsIjoiTk8iLCJyZW1vdGVIb3N0IjoiMTk1LjY0LjExOC4xNTIiLCJkZXZpY2VNYWtlIjoiIiwiZGV2aWNlTW9kZWwiOiIiLCJ2aXNpdG9yRGF0YSI6IkNndHZlSFJSVFVod1VIbE9ieWlndHAzVEJqSW9DZ0pPVHhJaUVoNFNIQXNNRGc4UUVSSVRGQlVXRnhnWkdoc2NIUjRmSUNFaUl5UWxKaWNnRW1MZkFncmNBakl3TGxsVVBXZElOVlZsYTFjM1pERjVTbGhJWkhsQlYxQTVSRE51ZFhWbWJIUkpVRFZWTTB3dFQwcFFTVlJrWmxadk5GRkdaRlZ3UjBsc1R6Rk5jbXQyVVc4MmF6WnJiREJxY1Y5d1QxcEJiVEJaTmxOMFFrZFFXa3R5VjBOWUxVbGxPRlF4ZW5oVlNsYzJZV0p0V1hWV1ZUVXpTV3d4VmtWeE5IWlZjelYyZGt4bVltZGFSMGg2TVdWQlRHdDRibWRwV0RoaVZYTmtVazF5TW5aaFMweFVXa293U1VKb2NURjVMVEpGVFRoT09UQnBTakJqZVZkNlIyNW9WVWQ2VG5oMVducElkemxJV0VaMVNYZExTWFJzV2t0U00wcEpNRUZYWW5rdFpVMUNMV0ZsWkVkNFJsVldibkZ6WlVkbVFURkliSEZpYm5GRE5VVjViWE5XZWpVNVdEUnNTRTEzYURRMFQxbEtVbXBoYVZoRlJXaEZaWFJoZERKeGMwaE1hRGgyTWpOWE9YcEliVXRQUlVVeVdtaFVNME5CYzFoVlExb3dUR1JJY0hadmFFMDJRbHB4Tmtjd016Qm1hbmxMT1U0MWJVMTZWV0U0WlY5R2R3JTNEJTNEIiwidXNlckFnZW50IjoiTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NDsgcnY6MTM0LjApIEdlY2tvLzIwMTAwMTAxIEZpcmVmb3gvMTM0LjAsZ3ppcChnZmUpIiwiY2xpZW50TmFtZSI6IldFQl9FTUJFRERFRF9QTEFZRVIiLCJjbGllbnRWZXJzaW9uIjoiMi4yMDI2MDcyNC4wMS4wMCIsIm9zTmFtZSI6IldpbmRvd3MiLCJvc1ZlcnNpb24iOiIxMC4wIiwib3JpZ2luYWxVcmwiOiJodHRwczovL3d3dy55b3V0dWJlLmNvbS9lbWJlZC80ZWtPY0RHMkQ4RSIsInBsYXRmb3JtIjoiREVTS1RPUCIsImNsaWVudEZvcm1GYWN0b3IiOiJVTktOT1dOX0ZPUk1fRkFDVE9SIiwiY29uZmlnSW5mbyI6eyJhcHBJbnN0YWxsRGF0YSI6IkNLQzJuZE1HRVBiMzBSd1F3WV9RSEJEYTk4NGNFTGpremh3UXg0M1NIQkQ4c3M0Y0VNbjJnQk1Rdllxd0JSRHYzdEVjRVBueTBSd1E0T3JSSEJDTDk4OGNFSUhOemh3UW1ZMnhCUkRldk00Y0VQYXJzQVVRNExmUkhCQ3ZrZEVjRUw2RTBSd1FsZV9SSEJDRGg3Z2lFSzNlMFJ3UXpOLXVCUkNPa05FY0VJbXd6aHdRQUJEcC1ORWNFSzdXenh3UW5kQ3dCUkM5dHE0RkVJbmswUndROGJUUUhCQzltYkFGRU1yN2dCTVFpSkRSSEJDRzRZQVRFTHlrMEJ3UXVQRFJIQkMzLUlBVEVJZXN6aHdRbjgtQUV4Q0toN2dpRUoyR3VDSVFwS25SSEJERWpOQWNFT3Y3MFJ3UTY4M1FIQkQwNmRFY0tteERRVTFUVTNoV1FTMWFjUzFFVEdsVlJYQlJRMjVCTnpWR1dHRkpSa3RxVmtRNVVVUkJUSGRIWDNjemEwSnlXVWR6ZDFnemRtVnJURTF4UTNOQ1FVOVJjbWRRTjBweVltdENkVk5HUmpsRVRVSnpVMU5DWTNNNWVGTm1XakZSV0dSTVQxWkhMV3hKWkVKM1BUMHdBQSUzRCUzRCJ9LCJicm93c2VyTmFtZSI6IkZpcmVmb3giLCJicm93c2VyVmVyc2lvbiI6IjEzNC4wIiwiYWNjZXB0SGVhZGVyIjoidGV4dC9odG1sLGFwcGxpY2F0aW9uL3hodG1sK3htbCxhcHBsaWNhdGlvbi94bWw7cVx1MDAzZDAuOSwqLyo7cVx1MDAzZDAuOCIsImRldmljZUV4cGVyaW1lbnRJZCI6IkNoeE9lbGt5VG5wRk5VNTZRVFJPUkZFeVQwUkZlVTVxYXpWTlVUMDlFS0MybmRNR0dLQzJuZE1HIiwicm9sbG91dFRva2VuIjoiQ0tPdXNfaVU5Tm5ZemdFUTVmcUlzdm55bFFNWTVmcUlzdm55bFFNJTNEIn0sInVzZXIiOnsibG9ja2VkU2FmZXR5TW9kZSI6ZmFsc2V9LCJyZXF1ZXN0Ijp7InVzZVNzbCI6dHJ1ZX0sImNsaWNrVHJhY2tpbmciOnsiY2xpY2tUcmFja2luZ1BhcmFtcyI6IkloTUludkNJc3ZueWxRTVZaZW5LQUIyUElCWUYifSwidGhpcmRQYXJ0eSI6eyJlbWJlZGRlZFBsYXllckNvbnRleHQiOnsiZW1iZWRkZWRQbGF5ZXJFbmNyeXB0ZWRDb250ZXh0IjoiQUNtYmxCV01kWDhPemV1cVA4STZuVEkxemE1OWN5eFB0UXo3N2FrQkpfQlF2TVZvcFRyUzZZWkdQX3lZOWltQVBtOGhiUTJaTG1YeUlyU2g3MGlnRC04QTRUb0hyaWllYUVxQzNkM2hQaHNJRVVLcVp2U2lnVnZGS3RvMlN4T3JGbWc3NUEiLCJhbmNlc3Rvck9yaWdpbnNTdXBwb3J0ZWQiOmZhbHNlfX19LCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSI6NTYsIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9WRVJTSU9OIjoiMi4yMDI2MDcyNC4wMS4wMCIsIklOTkVSVFVCRV9DT05URVhUX0dMIjoiTk8iLCJJTk5FUlRVQkVfQ09OVEVYVF9ITCI6ImVuIiwiTEFURVNUX0VDQVRDSEVSX1NFUlZJQ0VfVFJBQ0tJTkdfUEFSQU1TIjp7ImNsaWVudC5uYW1lIjoiV0VCX0VNQkVEREVEX1BMQVlFUiIsImNsaWVudC5qc2ZlYXQiOiIyMDIxIn0sIkxPR0dFRF9JTiI6ZmFsc2UsIlBBR0VfQlVJTERfTEFCRUwiOiJ5b3V0dWJlLmVtYmVkcy53ZWJfMjAyNjA3MjRfMDFfUkMwMCIsIlBBR0VfQ0wiOjk1MzIwNjAxMCwiU0VSVkVSX05BTUUiOiJXZWJGRSIsIlZJU0lUT1JfREFUQSI6IkNndHZlSFJSVFVod1VIbE9ieWlndHAzVEJqSW9DZ0pPVHhJaUVoNFNIQXNNRGc4UUVSSVRGQlVXRnhnWkdoc2NIUjRmSUNFaUl5UWxKaWNnRW1MZkFncmNBakl3TGxsVVBXZElOVlZsYTFjM1pERjVTbGhJWkhsQlYxQTVSRE51ZFhWbWJIUkpVRFZWTTB3dFQwcFFTVlJrWmxadk5GRkdaRlZ3UjBsc1R6Rk5jbXQyVVc4MmF6WnJiREJxY1Y5d1QxcEJiVEJaTmxOMFFrZFFXa3R5VjBOWUxVbGxPRlF4ZW5oVlNsYzJZV0p0V1hWV1ZUVXpTV3d4VmtWeE5IWlZjelYyZGt4bVltZGFSMGg2TVdWQlRHdDRibWRwV0RoaVZYTmtVazF5TW5aaFMweFVXa293U1VKb2NURjVMVEpGVFRoT09UQnBTakJqZVZkNlIyNW9WVWQ2VG5oMVducElkemxJV0VaMVNYZExTWFJzV2t0U00wcEpNRUZYWW5rdFpVMUNMV0ZsWkVkNFJsVldibkZ6WlVkbVFURkliSEZpYm5GRE5VVjViWE5XZWpVNVdEUnNTRTEzYURRMFQxbEtVbXBoYVZoRlJXaEZaWFJoZERKeGMwaE1hRGgyTWpOWE9YcEliVXRQUlVVeVdtaFVNME5CYzFoVlExb3dUR1JJY0hadmFFMDJRbHB4Tmtjd016Qm1hbmxMT1U0MWJVMTZWV0U0WlY5R2R3JTNEJTNEIiwiV0VCX1BMQVlFUl9DT05URVhUX0NPTkZJR1MiOnsiV0VCX1BMQVlFUl9DT05URVhUX0NPTkZJR19JRF9FTUJFRERFRF9QTEFZRVIiOnsicm9vdEVsZW1lbnRJZCI6Im1vdmllX3BsYXllciIsImpzVXJsIjoiL3MvcGxheWVyLzdhNzk2OWMyL3BsYXllcl9lbWJlZF9lczYudmZsc2V0L2VuX1VTL2Jhc2UuanMiLCJjc3NVcmwiOiIvcy9wbGF5ZXIvN2E3OTY5YzIvd3d3LXBsYXllci5jc3MiLCJjb250ZXh0SWQiOiJXRUJfUExBWUVSX0NPTlRFWFRfQ09ORklHX0lEX0VNQkVEREVEX1BMQVlFUiIsImV2ZW50TGFiZWwiOiJlbWJlZGRlZCIsImNvbnRlbnRSZWdpb24iOiJOTyIsImhsIjoiZW5fVVMiLCJob3N0TGFuZ3VhZ2UiOiJlbiIsImlubmVydHViZUFwaUtleSI6IkFJemFTeUFPX0ZKMlNscVU4UTRTVEVITEdDaWx3X1k5XzExcWNXOCIsImlubmVydHViZUFwaVZlcnNpb24iOiJ2MSIsImlubmVydHViZUNvbnRleHRDbGllbnRWZXJzaW9uIjoiMi4yMDI2MDcyNC4wMS4wMCIsImRldmljZSI6eyJicmFuZCI6IiIsIm1vZGVsIjoiIiwiYnJvd3NlciI6IkZpcmVmb3giLCJicm93c2VyVmVyc2lvbiI6IjEzNC4wIiwib3MiOiJXaW5kb3dzIiwib3NWZXJzaW9uIjoiMTAuMCIsInBsYXRmb3JtIjoiREVTS1RPUCIsImludGVyZmFjZU5hbWUiOiJXRUJfRU1CRURERURfUExBWUVSIiwiaW50ZXJmYWNlVmVyc2lvbiI6IjIuMjAyNjA3MjQuMDEuMDAifSwic2VyaWFsaXplZEV4cGVyaW1lbnRJZHMiOiIyNDAwNDY0NCw1MTA2MzY0Myw1MTA5ODI5OSw1MTIyMjk3Myw1MTM0MDY2Miw1MTM0OTkxNCw1MTM1MzM5Myw1MTM2NjQyMyw1MTM3MjY4MSw1MTM4OTYyOSw1MTQ5MDMzMSw1MTQ5MzIwOSw1MTUwNTQzNiw1MTUzMDQ5NSw1MTUzNDY2OSw1MTU2NTExNSw1MTU4MzgyMSw1MTYwNTI1OCw1MTYwOTgyOSw1MTYxOTUwMyw1MTYzNDI2Nyw1MTYzODkzMiw1MTY0NTU1Myw1MTY0ODMzNiw1MTY3MjE2Miw1MTY4MTY2Miw1MTY4MzUwMiw1MTcwMTYxNSw1MTcyOTIxNyw1MTczNzEzMyw1MTc0MjM3Nyw1MTc0MjgyOSw1MTc3ODMzOSw1MTc5ODkyOCw1MTgwMzEyNyw1MTgwMzU4NSw1MTgyODk2OSw1MTgzMzI0MSw1MTg0MjQyMiw1MTg1NzgzOCw1MTg1NzkyMCw1MTg4Nzg4MCw1MTg5NTQwNSw1MTg5NTc3MSw1MTkwMTQzNyw1MTkwMjYwNSw1MTkwMjk3Nyw1MTkxMDczNSw1MTkyNzE4OCw1MTkyNzM2MCw1MTkzNjIyOCw1MTkzOTcwMyw1MTk0NTA1Niw1MTk1NDkyMyw1MTk1NjUxOCw1MTk1NzQ0NSw1MTk1OTY5NCw1MTk1OTgwOSw1MTk1OTg4MSw1MTk1OTk2Nyw1MTk2NjM4Myw1MTk2ODA4Myw1MTk3MTc3Niw1MTk3MzgxOSw1MTk4MzM2Nyw1MTk4NDcxOCw1MTk4NDgyNyw1MTk4NTU4MCw1MTk5NzE4Nyw1MjAwMjgwNSw1MjAxMjUyMyw1MjAxNjEzNiw1MjAyMDAzMiw1MjAyMjQ4OCw1MjAyMzMzMiw1MjAyNDIxNyw1MjAyNjE5NCw1MjAyNjU4NSw1MjAyNjgxMyw1MjAyNzA5OSw1MjAyNzc1MSw1MjAyNzc1Myw1MjAyODAyNSw1MjAzNTY0NCw1MjAzNjkzOSw1MjA0MDM4Myw1MjA0MzIyNyw1MjA0NjUxOSw1MjA0NzE0Nyw1MjA0NzY4NSw1MjA0NzY4OCw1MjA0NzY5MSw1MjA1NjUwMiw1MjA1OTE5MCw1MjA2MDQ5Miw1MjA2NDEzNSw1MjA2NTU5MCw1MjA3Mzk2MSw1MjA3NTQ3NSw1MjA3NTkyMiw1MjA3NjcwNSw1MjA5NjUwNiw1MjA5ODUyMCw1MjA5ODY4NSIsInNlcmlhbGl6ZWRFeHBlcmltZW50RmxhZ3MiOiJINV9hc3luY19sb2dnaW5nX2RlbGF5X21zXHUwMDNkMzAwMDAuMFx1MDAyNmExMXlfaDVfYXNzb2NpYXRlX3N1cnZleV9xdWVzdGlvblx1MDAzZHRydWVcdTAwMjZhYl9kZXRfYXBtXHUwMDNkdHJ1ZVx1MDAyNmFiX2RldF9lbF9oXHUwMDNkdHJ1ZVx1MDAyNmFjdGlvbl9jb21wYW5pb25fY2VudGVyX2FsaWduX2Rlc2NyaXB0aW9uXHUwMDNkdHJ1ZVx1MDAyNmFkX3BvZF9kaXNhYmxlX2NvbXBhbmlvbl9wZXJzaXN0X2Fkc19xdWFsaXR5XHUwMDNkdHJ1ZVx1MDAyNmFsbG93X2F1dG9oaWRlX29uX3BhdXNlZF92aWRlb3NcdTAwM2R0cnVlXHUwMDI2YWxsb3dfZHJtX292ZXJyaWRlXHUwMDNkdHJ1ZVx1MDAyNmFsbG93X2xpdmVfYXV0b3BsYXlcdTAwM2R0cnVlXHUwMDI2YWxsb3dfcG9sdGVyZ3VzdF9hdXRvcGxheVx1MDAzZHRydWVcdTAwMjZhbGxvd19za2lwX25ldHdvcmtsZXNzXHUwMDNkdHJ1ZVx1MDAyNmFsbG93X3ZwOV8xMDgwcF9tcV9lbmNcdTAwM2R0cnVlXHUwMDI2YWx3YXlzX2NhY2hlX3JlZGlyZWN0X2VuZHBvaW50XHUwMDNkdHJ1ZVx1MDAyNmFsd2F5c19zZW5kX2FuZF93cml0ZVx1MDAzZHRydWVcdTAwMjZhbm5vdGF0aW9uX21vZHVsZV92YXN0X2NhcmRzX2xvYWRfbG9nZ2luZ19mcmFjdGlvblx1MDAzZDAuMFx1MDAyNmFzc2lnbl9kcm1fZmFtaWx5X2J5X2Zvcm1hdFx1MDAzZHRydWVcdTAwMjZhdHRfd2ViX3JlY29yZF9tZXRyaWNzXHUwMDNkdHJ1ZVx1MDAyNmF0dGFjaF9leHBlcmltZW50X3Byb3BhZ2F0aW9uX2NvbnRleHRfdG9fY29uZmlnXHUwMDNkdHJ1ZVx1MDAyNmF0dG11c2lcdTAwM2R0cnVlXHUwMDI2YXV0b3BsYXlfdGltZVx1MDAzZDEwMDAwXHUwMDI2YXV0b3BsYXlfdGltZV9mb3JfZnVsbHNjcmVlblx1MDAzZC0xXHUwMDI2YXV0b3BsYXlfdGltZV9mb3JfbXVzaWNfY29udGVudFx1MDAzZC0xXHUwMDI2Ymdfdm1fcmVpbml0X3RocmVzaG9sZFx1MDAzZDcyMDAwMDBcdTAwMjZibG9ja190dmh0bWw1X3NpbXBseV9lbWJlZGRlZFx1MDAzZHRydWVcdTAwMjZibG9ja2VkX3BhY2thZ2VzX2Zvcl9zcHNcdTAwM2RbXVx1MDAyNmJvdGd1YXJkX2FzeW5jX3NuYXBzaG90X3RpbWVvdXRfbXNcdTAwM2QzMDAwXHUwMDI2YnlwYXNzX2xpY2Vuc2VfY2hlY2tfZm9yX2lubGluZV9tdXRlZFx1MDAzZHRydWVcdTAwMjZjYXB0aW9uc191cmxfYWRkX2VpXHUwMDNkdHJ1ZVx1MDAyNmNoZWNrX25hdmlnYXRvcl9hY2N1cmFjeV90aW1lb3V0X21zXHUwMDNkMFx1MDAyNmNoZWNrX3BsYXlhYmlsaXR5X3N0YXR1c19pbl9maWxsZXJzXHUwMDNkdHJ1ZVx1MDAyNmNsaWVudF91aV9lbmFibGVfbXVsdGlfdHJhY2tfYXVkaW9fb25fd2ViX2VtYmVkZGVkX3BsYXllclx1MDAzZHRydWVcdTAwMjZjb21wcmVzc2lvbl9kaXNhYmxlX3BvaW50XHUwMDNkMTBcdTAwMjZjb3dfb3B0aW1pemVfaWRvbV9jb21wYXRcdTAwM2R0cnVlXHUwMDI2Y3NpX29uX2dlbFx1MDAzZHRydWVcdTAwMjZjdXN0b21fYWN0aXZlX3ZpZXdfdG9zX3RpbWVvdXRfbXNcdTAwM2QzNjAwMDAwXHUwMDI2ZGFzaF9tYW5pZmVzdF92ZXJzaW9uXHUwMDNkNVx1MDAyNmRlYnVnX2JhbmRhaWRfaG9zdG5hbWVcdTAwM2RcdTAwMjZkZWJ1Z19iYW5kYWlkX3BvcnRcdTAwM2QwXHUwMDI2ZGVidWdfc2hlcmxvZ191c2VybmFtZVx1MDAzZFx1MDAyNmRlZHVwcGluZ19zZXJ2ZXJfdmVcdTAwM2R0cnVlXHUwMDI2ZGVsaGlfZmFzdF9mb2xsb3dfYXV0b25hdl90b2dnbGVcdTAwM2R0cnVlXHUwMDI2ZGVsaGlfbW9kZXJuX3BsYXllcl9kZWZhdWx0X3RodW1ibmFpbF9wZXJjZW50YWdlXHUwMDNkMC4wXHUwMDI2ZGVsaGlfbW9kZXJuX3BsYXllcl9mYXN0ZXJfYXV0b2hpZGVfZGVsYXlfbXNcdTAwM2QyMDAwXHUwMDI2ZGVsaGlfbW9kZXJuX3BsYXllcl9wYXVzZV90aHVtYm5haWxfcGVyY2VudGFnZVx1MDAzZDAuNlx1MDAyNmRlbGhpX21vZGVybl93ZWJfcGxheWVyX2JsZW5kaW5nX21vZGVcdTAwM2RcdTAwMjZkZWxoaV9tb2Rlcm5fd2ViX3BsYXllcl9kaXNhYmxlX2Zyb3N0ZWRfZ2xhc3NcdTAwM2R0cnVlXHUwMDI2ZGVsaGlfbW9kZXJuX3dlYl9wbGF5ZXJfaG9yaXpvbnRhbF92b2x1bWVfY29udHJvbHNcdTAwM2R0cnVlXHUwMDI2ZGVsaGlfbW9kZXJuX3dlYl9wbGF5ZXJfbGhzX3ZvbHVtZV9jb250cm9sc1x1MDAzZHRydWVcdTAwMjZkZWxoaV9tb2Rlcm5fd2ViX3BsYXllcl9yZXNwb25zaXZlX2NvbXBhY3RfY29udHJvbHNfdGhyZXNob2xkXHUwMDNkMFx1MDAyNmRlcHJlY2F0ZV9jYXB0aW9uc190cmFja19jb3VudF9kaXNwbGF5XHUwMDNkdHJ1ZVx1MDAyNmRlcHJlY2F0ZV9kZWxheV9waW5nXHUwMDNkdHJ1ZVx1MDAyNmRlcHJlY2F0ZV9wYWlyX3NlcnZsZXRfZW5hYmxlZFx1MDAzZHRydWVcdTAwMjZkZXNrdG9wX3NwYXJrbGVzX2xpZ2h0X2N0YV9idXR0b25cdTAwM2R0cnVlXHUwMDI2ZGlzYWJsZV9hdjFfc2V0dGluZ1x1MDAzZHRydWVcdTAwMjZkaXNhYmxlX2NoaWxkX25vZGVfYXV0b19mb3JtYXR0ZWRfc3RyaW5nc1x1MDAzZHRydWVcdTAwMjZkaXNhYmxlX2xpZmFfaW5fMmtfNGtcdTAwM2R0cnVlXHUwMDI2ZGlzYWJsZV9sb2dfdG9fdmlzaXRvcl9sYXllclx1MDAzZHRydWVcdTAwMjZkaXNhYmxlX3BhY2ZfbG9nZ2luZ19mb3JfbWVtb3J5X2xpbWl0ZWRfdHZcdTAwM2R0cnVlXHUwMDI2ZGlzYWJsZV9yZWR1Y2VkX2Z1bGxzY3JlZW5fYXV0b3BsYXlfY291bnRkb3duX2Zvcl9taW5vcnNcdTAwM2R0cnVlXHUwMDI2ZGlzYWJsZV9yZWVsX2l0ZW1fd2F0Y2hfZm9ybWF0X2ZpbHRlcmluZ1x1MDAzZHRydWVcdTAwMjZkaXNhYmxlX3RvdWNoX2V2ZW50c19vbl9za2lwX2J1dHRvblx1MDAzZHRydWVcdTAwMjZkdXJhdGlvbl9iZWZvcmVfcGF1c2VfYWRfYnJlYWtfbXNfZm9yX3N5c3RlbV9wYXVzZVx1MDAzZDUwMDBcdTAwMjZlZGdlX2VuY3J5cHRpb25fZmlsbF9wcmltYXJ5X2tleV92ZXJzaW9uXHUwMDNkdHJ1ZVx1MDAyNmVtYmVkc19kZXNrdG9mZl9lbmFibGVfYWRzX3RvcF9iYXJcdTAwM2R0cnVlXHUwMDI2ZW1iZWRzX2Rlc2t0b3BfZW5hYmxlX3ZvbHVtZV9zbGlkZXJcdTAwM2R0cnVlXHUwMDI2ZW1iZWRzX2VuYWJsZV9jaGFubmVsX3N1YnNjcmliZV9kZXByZWNhdGlvblx1MDAzZHRydWVcdTAwMjZlbWJlZHNfZW5hYmxlX2VtYmVkX2NvbmZpZ19mb3JfbXV0ZWRfYXV0b3BsYXlcdTAwM2R0cnVlXHUwMDI2ZW1iZWRzX2VuYWJsZV9pbm5lcnR1YmVfc3RvcmVcdTAwM2R0cnVlXHUwMDI2ZW1iZWRzX2VuYWJsZV9tb3ZlX3NldF9jZW50ZXJfY3JvcF90b19wdWJsaWNcdTAwM2R0cnVlXHUwMDI2ZW1iZWRzX2VuYWJsZV9wZXJfdmlkZW9fZW1iZWRfY29uZmlnXHUwMDNkdHJ1ZVx1MDAyNmVtYmVkc193ZWJfbGl0ZV9tb2RlXHUwMDNkMVx1MDAyNmVuYWJsZV9hMTF5X2ZvY3VzX2ZpeF9mb3JfbWFjX3BhbmVsX29uX2Rlc2t0b3BcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FiYW5kb25fcGluZ19mb3Jfc3NkYWlcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FjY2Vzc19jb2RlX3NlcnZpY2VfcnBjXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hY2lfb25fbHJfZmVlZHNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FjdGl2ZV92aWV3X2Rpc3BsYXlfYWRfcmVuZGVyZXJfd2ViX2hvbWVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FjdGl2ZV92aWV3X2xyX3Nob3J0c192aWRlb1x1MDAzZHRydWVcdTAwMjZlbmFibGVfYWN0aXZlX3ZpZXdfd2ViX3Nob3J0c192aWRlb1x1MDAzZHRydWVcdTAwMjZlbmFibGVfYWRfY3BuX21hY3JvX3N1YnN0aXR1dGlvbl9mb3JfY2xpY2tfcGluZ3NcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FkX2Rpc2Nsb3N1cmVfYmFubmVyX2ExMXlfZml4XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9haV9kaXNjbG9zdXJlX2Zvcl9jb21wYWN0X2xhbmRzY2FwZV9pbWFnZV93ZWJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX2NvbXBhY3RfbGFuZHNjYXBlX2ltYWdlX3dlYl9pbm5lcnR1YmVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX2NvbXBhY3RfbGFuZHNjYXBlX25vX2J1dHRvbl93ZWJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX2NvbXBhY3RfbGFuZHNjYXBlX25vX2J1dHRvbl93ZWJfaW5uZXJ0dWJlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9haV9kaXNjbG9zdXJlX2Zvcl90ZXh0X2ltYWdlX25vX2J1dHRvbl93ZWJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3RleHRfaW1hZ2Vfbm9fYnV0dG9uX3dlYl9pbm5lcnR1YmVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3RvcF9sYW5kc2NhcGVfaW1hZ2Vfd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9haV9kaXNjbG9zdXJlX2Zvcl90b3BfbGFuZHNjYXBlX2ltYWdlX3dlYl9pbm5lcnR1YmVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3ZpZGVvX2Rpc3BsYXlfYmlsbGJvYXJkX2J1dHRvbmVkX3dlYlx1MDAzZHRydWVcdTAwMjZlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdmlkZW9fZGlzcGxheV9iaWxsYm9hcmRfYnV0dG9uZWRfd2ViX2lubmVydHViZVx1MDAzZHRydWVcdTAwMjZlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdmlkZW9fZGlzcGxheV9idXR0b25fZ3JvdXBfd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9haV9kaXNjbG9zdXJlX2Zvcl92aWRlb19kaXNwbGF5X2J1dHRvbl9ncm91cF93ZWJfaW5uZXJ0dWJlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9haV9kaXNjbG9zdXJlX2Zvcl92aWRlb19kaXNwbGF5X2NvbXBhY3RfYnV0dG9uX2dyb3VwX3dlYlx1MDAzZHRydWVcdTAwMjZlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdmlkZW9fZGlzcGxheV9jb21wYWN0X2J1dHRvbl9ncm91cF93ZWJfaW5uZXJ0dWJlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9haV9kaXNjbG9zdXJlX2Zvcl92aWRlb19kaXNwbGF5X2NvbXBhY3RfYnV0dG9uZWRfd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9haV9kaXNjbG9zdXJlX2Zvcl92aWRlb19kaXNwbGF5X2NvbXBhY3RfYnV0dG9uZWRfd2ViX2lubmVydHViZVx1MDAzZHRydWVcdTAwMjZlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdmlkZW9fZGlzcGxheV9jb21wYWN0X2Nhcm91c2VsX2J1dHRvbl9ncm91cF93ZWJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3ZpZGVvX2Rpc3BsYXlfY29tcGFjdF9jYXJvdXNlbF9idXR0b25fZ3JvdXBfd2ViX2lubmVydHViZVx1MDAzZHRydWVcdTAwMjZlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdmlkZW9fZGlzcGxheV9jb21wYWN0X3dlYlx1MDAzZHRydWVcdTAwMjZlbmFibGVfYWlfZGlzY2xvc3VyZV9mb3JfdmlkZW9fZGlzcGxheV9jb21wYWN0X3dlYl9pbm5lcnR1YmVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3ZpZGVvX2Rpc3BsYXlfZnVsbF93ZWJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FpX2Rpc2Nsb3N1cmVfZm9yX3ZpZGVvX2Rpc3BsYXlfZnVsbF93ZWJfaW5uZXJ0dWJlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hbnRpc2NyYXBpbmdfd2ViX3BsYXllcl9leHBpcmVkXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hcHBfcHJvbW9fZW5kY2FwX2VtbF9vbl90YWJsZXRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2F0dGVudGlvbl9sb2dnaW5nX21lYXN1cmVfb25fc2hvd25cdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2F1X3UxNl92ZXJpZnlfYWdlX3BhZ2VcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2F1dG9tb3RpdmVfZm9ybV9mYWN0b3JfY2hlY2tcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2JhdGNoZWRfY3Jvc3NfZGV2aWNlX3BpbmdzX2luX2dlbF9mYW5vdXRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2NhcGFiaWxpdHlfZm9ybWF0X2ZpbHRlcl9pbl93YXRjaF9zZXJ2ZXJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2Nhc3RfZm9yX3dlYl91bnBsdWdnZWRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2NlbnRlcmVkX2NhcHRpb25fZm9yX3R2ZmlsbV92aWRlb1x1MDAzZHRydWVcdTAwMjZlbmFibGVfY2lwaGVyX2Zvcl9tYW5pZmVzdF91cmxzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jbGVhbnVwX21hc3RoZWFkX2F1dG9wbGF5X2hhY2tfZml4XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jbGllbnRfcGFnZV9pZF9oZWFkZXJfZm9yX2ZpcnN0X3BhcnR5X3BpbmdzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jbGllbnRfc2xpX2xvZ2dpbmdcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2NsaWVudF92ZV9zcGVjXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jdGFfYmFubmVyX29uX3VucGx1Z2dlZF9sclx1MDAzZHRydWVcdTAwMjZlbmFibGVfY3VzdG9tX3BsYXloZWFkX3BhcnNpbmdcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2N1c3RvbV9zY3J1YmJlcl92Mlx1MDAzZHRydWVcdTAwMjZlbmFibGVfZGFpX3NkZl9oNV9wcmVyb2xsXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9kYXRhc3luY19pZF9oZWFkZXJfaW5fd2ViX3Zzc19waW5nc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfZGVmYXVsdF9tb25vX2N0YV9taWdyYXRpb25fd2ViX2NsaWVudFx1MDAzZHRydWVcdTAwMjZlbmFibGVfZHNhX2FkX2JhZGdlX2Zvcl9hY3Rpb25fZW5kY2FwX29uX2FuZHJvaWRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2RzYV9hZF9iYWRnZV9mb3JfYWN0aW9uX2VuZGNhcF9vbl9pb3NcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2VuZGVtaWNfaGlnaF9jY3Zfc21lYXJpbmdfaDVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2VudGl0eV9zdG9yZV9mcm9tX2RlcGVuZGVuY3lfaW5qZWN0aW9uXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9lcnJvcl9jb3JyZWN0aW9uc19pbmZvY2FyZF93ZWJfY2xpZW50XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9lcnJvcl9jb3JyZWN0aW9uc19pbmZvY2FyZHNfaWNvbl93ZWJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2dldF9yZW1pbmRlcl9idXR0b25fb25fd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9pbmxpbmVfbXV0ZWRfcGxheWJhY2tfb25fd2ViX3NlYXJjaFx1MDAzZHRydWVcdTAwMjZlbmFibGVfaW5saW5lX211dGVkX3BsYXliYWNrX29uX3dlYl9zZWFyY2hfZm9yX3ZkY1x1MDAzZHRydWVcdTAwMjZlbmFibGVfaW5saW5lX211dGVkX3BsYXliYWNrX29uX3dlYl9zZWFyY2hfZm9yX3ZkY2JcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2x0Y19wYXJhbV9mZXRjaF9mcm9tX2lubmVydHViZVx1MDAzZHRydWVcdTAwMjZlbmFibGVfbWl4ZWRfZGlyZWN0aW9uX2Zvcm1hdHRlZF9zdHJpbmdzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9tb2Rlcm5fc2tpcF9idXR0b25fb25fd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9td2ViX2F1ZGlvX3RyYWNrX3BpY2tlclx1MDAzZHRydWVcdTAwMjZlbmFibGVfbXdlYl9rZXlib2FyZF9zaG9ydGN1dHNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX25ld19wYWlkX3Byb2R1Y3RfcGxhY2VtZW50XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9vcGVuX2luX25ld190YWJfaWNvbl9mb3Jfc2hvcnRfZHJfZm9yX2Rlc2t0b3Bfc2VhcmNoXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9vdXRfb2Zfc3RvY2tfdGV4dF9hbGxfc3VyZmFjZXNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3BhaWRfY29udGVudF9vdmVybGF5X2J1Z2ZpeFx1MDAzZHRydWVcdTAwMjZlbmFibGVfcGF1c2VfYWRzX29uX3l0dl9odG1sNVx1MDAzZHRydWVcdTAwMjZlbmFibGVfcGxheWVyX2NhcHRpb25zX3BlcnNpc3RlbmNlX3N0YXRlX21hY2hpbmVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3BvX2RlY29yYXRpb25fb2ZfZm9yY2VkX3RyYWNrc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfcG9saWN5X2Jhc2VkX2hxYV9maWx0ZXJfaW5fd2F0Y2hfc2VydmVyXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9wcm9ncmVzX2NvbW1hbmRzX2xyX2ZlZWRzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9wcm9ncmVzc19jb21tYW5kc19lbF9kYWlcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3Byb2dyZXNzX2NvbW1hbmRzX2xyX3Nob3J0c1x1MDAzZHRydWVcdTAwMjZlbmFibGVfcHVibGlzaGluZ19yZWdpb25fcGFyYW1faW5fc3VzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9wdl9zY3JlZW5fbW9kZXJuX3RleHRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3Jwcl90b2tlbl9vbl9sdGxfbG9va3VwXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zY3JlZW5fbWFuYWdlcl9sYXllcl9zZXBhcmF0aW9uXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZGZfY29tcGFuaW9uX2g1XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZGZfZGFpX2g1X21pZHJvbGxcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NkZl9oNV9lbmRlbWljX21pZF9wb3N0X3JvbGxcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NkZl9vbl9oNV91bnBsdWdnZWRfdm9kX21pZHJvbGxcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NkZl9zaG9ydHNfcGxheWVyX2J5dGVzX2g1XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZXJ2ZXJfZHJpdmVuX2Ficlx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2VydmVyX2RyaXZlbl9hYnJfZm9yX2JhY2tncm91bmRhYmxlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZXJ2ZXJfZHJpdmVuX2Ficl91cmxfZ2VuZXJhdGlvblx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2VydmVyX2RyaXZlbl9yZWFkYWhlYWRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NraXBfYWRfZ3VpZGFuY2VfcHJvbXB0XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9za2lwX3RvX25leHRfbWVzc2FnaW5nXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9za2lwcGFibGVfYWRzX2Zvcl91bnBsdWdnZWRfYWRfcG9kXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zbWFydF9za2lwX3BsYXllcl9jb250cm9sc19zaG93bl9vbl93ZWJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NtYXJ0X3NraXBfcGxheWVyX2NvbnRyb2xzX3Nob3duX29uX3dlYl9pbmNyZWFzZWRfdHJpZ2dlcmluZ19zZW5zaXRpdml0eVx1MDAzZHRydWVcdTAwMjZlbmFibGVfc21hcnRfc2tpcF9zcGVlZG1hc3Rlcl9vbl93ZWJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NtZWFyaW5nX2V4cGFuc2lvbl9kYWlcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NwbGl0X3NjcmVlbl9hZF9iYXNlbGluZV9leHBlcmllbmNlX2VuZGVtaWNfbGl2ZV9oNVx1MDAzZHRydWVcdTAwMjZlbmFibGVfc3ViZnJhZ21lbnRlZF9jYXB0aW9uX2ZpbHRlcmluZ1x1MDAzZHRydWVcdTAwMjZlbmFibGVfc3VwZXhfbXdlYl9kZW1vX3dlYmZlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV90b19jYWxsX3BsYXlyZWFkeV9iYWNrZW5kX2RpcmVjdGx5XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV91bmlmaWVkX2FjdGlvbl9lbmRjYXBfb25fd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV92ZW5vbV9ub3RpZmljYXRpb25fY2FjaGVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3ZpZGVvX2Rpc3BsYXlfY29tcGFjdF9idXR0b25fZ3JvdXBfZm9yX2Rlc2t0b3Bfc2VhcmNoXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV92b2ljZV9ib29zdF9mZWF0dXJlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV92cDlfYXBwbGV0djVfb25fc2VydmVyXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93ZWJfZGVsaGlfaWNvbnNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3dlYl9ob21lX3RvcF9sYW5kc2NhcGVfaW1hZ2VfbGF5b3V0X2xldmVsX2NsaWNrXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93ZWJfbWVkaWFfc2Vzc2lvbl9tZXRhZGF0YV9maXhcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3dlYl9wcmVtaXVtX3ZhcmlzcGVlZF91cHNlbGxcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3dlYl9zaG9ydHNfYXVkaW9fdHJhY2tcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3dlYl90aWVyZWRfZ2VsXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93aXpfcXVldWVfZWZmZWN0X2FuZF9vbl9pbml0X2luaXRpYWxfcnVuc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfeXRfYXRhX2lmcmFtZV9hdXRodXNlclx1MDAzZHRydWVcdTAwMjZlbmFibGVfeXR2X2NzZGFpX3ZwOVx1MDAzZHRydWVcdTAwMjZlbmRlbWljX2hpZ2hfY2N2X3NtZWFyaW5nX2FsbG93ZWRfdmlkZW9faWRzXHUwMDNkW09KbHdJZG9GejlBLCBBcktiQXgxSy0yVSwgbV9kaE1TdlVDSWMsIEMxRGhwSjA3WnVFLCBOcTJ3WWxXRnVjZywgSkM3ZjNFVURhcXcsIHZyM1h5VkNSNFQwLCBnQ05lRFdDSTB2bywga0JUdWRtNGdlTXMsIEZ4c2ZWWDZCMU1rLCB5bFlKU0JVZ2FNQSwgVldoUTZ4c3BuU2MsIFJIVWF1TWNZbFgwLCBjYjEyS21NTURKQSwgV0p4RWpfaHJwU2csIGV1aFktdG1nOXg4LCBUbElWSTJFVzdSMCwgTUlOZnZPWDRCekksIHlIbVBXemtoY1o4LCBwM3cxdk85WHYyNCwgVmxhQ25wMWZ4STgsIC1PZkEwNEJENEdBLCAxb2RZM0lZc05ubywgd2lUVHJWcVJWRHcsIERmbTJyQi1uUTlZLCBRbTFGdHo4bFZuSSwgOWl0QXhxX1NHRE0sIHlGSTN3cFh5NHpBLCBQeTVKWVpYSnZ6bywgYjR0RTVhS2h0bGcsIDVKRHhqc0FWYUdrLCBlVW1mR1BhenVFTSwgVzhuVGhxNjJWYjQsIFZManZTM3VmbFhjLCBCZmRMS3ZKQk1fYywgd2VMWGR3VmpTeHMsIDJKYS11UE9rejdJLCBBOVFCVkZFWXhPUSwgay1aRlFra0hVZmMsIHd1dTBEMjBBWnFJLCBfSHZpU3lDN3pTVSwgX194T3pfUTNxUjQsIHcyc0I4N2pMRTFJLCA4clRURU1kTWg4USwgLWs2bXBnbXhlclUsIDk3Y2tuckp5TFdnLCAyRkl0Vnl4TE5OYywgb3RueGZjc0dFLVksIHM5eEwxRHBCc2ZRLCB3ZkFHQlZnVXJybywgblhINlR4US1zaTgsIFdpSTFYZ19uRXU4LCAzZmxhc0dWVXJDQSwgZURZX0hlOTJsY1UsIGE0N2NrWEtaanhJLCBJNldSWGVLWks2NCwgVDlKNURxUDJES3csIEt0a19JMHBVcEc4LCBlUTJjekdxT0NQZywgaExtVTQ5aG1aNGMsIDdmN01nYU1FN1NjLCBRQjVCTmRCRnVqRSwgQUdodE1VX2ZpNzAsIHAyUmFRVVJSQXdBLCBtel9fRU1ZcFdQdywgNmpoTHVTUVZJeFUsIHJDODN2X3V1SXFvLCA2RGFHZEpSX2VMZywgY200M3VYamZ2WlksIFkxSnNQcG0yYm1RLCB6MDk3alB5S2VlbywgVFlWWldVVGpreDAsIFZIYUF2ZW5mVERrLCB0djlPVV81UTBwUSwgNm9LQ3Z6bTZIbWcsIEJFRlVFUmhUMG4wLCB1VE4tZXUwLU9YRSwgaGJhcHJoUjd6VG8sIDJDVjBWLW9NTkZNLCB1OGRTT0tvTkpwMCwgSDhNcXF3bUZzeFksIElza2ttTlBKZFVrLCBYOUhfRXpwREdYUV1cdTAwMjZlbmRlbWljX2hpZ2hfY2N2X3NtZWFyaW5nX21heF93aW5kb3dfc2Vjb25kc1x1MDAzZDYwXHUwMDI2ZXhwYW5kX21lZGlhdGVrX2RlbnlsaXN0X3RvX2FsbF9saXZlX3ZwOV9pbl9iYWNrZW5kX2V4cGVyaW1lbnRcdTAwM2RbXVx1MDAyNmV4cG9ydF9uZXR3b3JrbGVzc19vcHRpb25zXHUwMDNkdHJ1ZVx1MDAyNmV4cG9ydF9wbGF5ZXJfdmVyc2lvbl90b195dGNvbmZpZ1x1MDAzZHRydWVcdTAwMjZmaWxsX2Fkc191c3RyZWFtZXJfY29uZmlnXHUwMDNkdHJ1ZVx1MDAyNmZpbGxfbGl2ZV9yZXF1ZXN0X2NvbmZpZ19pbl91c3RyZWFtZXJfY29uZmlnXHUwMDNkdHJ1ZVx1MDAyNmZpbGxfc2luZ2xlX3ZpZGVvX3dpdGhfbm90aWZ5X3RvX2xhc3JcdTAwM2R0cnVlXHUwMDI2ZmlsdGVyX3ZiX3dpdGhvdXRfbm9uX3ZiX2VxdWl2YWxlbnRzXHUwMDNkdHJ1ZVx1MDAyNmZpbHRlcl92cDlfZm9yX2xpdmVfZGFpXHUwMDNkdHJ1ZVx1MDAyNmZpeF9hZF9taW5pcGxheWVyX2NvbnRyb2xzX3JlbmRlcmluZ1x1MDAzZHRydWVcdTAwMjZmaXhfYWRzX3RyYWNraW5nX2Zvcl9zd2ZfY29uZmlnX2RlcHJlY2F0aW9uX213ZWJcdTAwM2R0cnVlXHUwMDI2Zml4X2g1X3RvZ2dsZV9idXR0b25fYTExeVx1MDAzZHRydWVcdTAwMjZmaXhfc3VydmV5X2NvbG9yX2NvbnRyYXN0X29uX2Rlc3RvcFx1MDAzZHRydWVcdTAwMjZmcmVzY2FfcG9sbGluZ19kZWxheV9vdmVycmlkZVx1MDAzZDBcdTAwMjZnYWJfcmV0dXJuX3NhYnJfc3NkYWlfY29uZmlnXHUwMDNkdHJ1ZVx1MDAyNmdlbF9taW5fYmF0Y2hfc2l6ZVx1MDAzZDNcdTAwMjZnZWxfcXVldWVfdGltZW91dF9tYXhfbXNcdTAwM2Q2MDAwMFx1MDAyNmd2aV9jaGFubmVsX2NsaWVudF9zY3JlZW5cdTAwM2R0cnVlXHUwMDI2aDVfY29tcGFuaW9uX2VuYWJsZV9hZGNwbl9tYWNyb19zdWJzdGl0dXRpb25fZm9yX2NsaWNrX3BpbmdzXHUwMDNkdHJ1ZVx1MDAyNmg1X2VuYWJsZV9hZF9tYnNcdTAwM2R0cnVlXHUwMDI2aDVfaW5wbGF5ZXJfZW5hYmxlX2FkY3BuX21hY3JvX3N1YnN0aXR1dGlvbl9mb3JfY2xpY2tfcGluZ3NcdTAwM2R0cnVlXHUwMDI2aDVfcmVzZXRfY2FjaGVfYW5kX2ZpbHRlcl9iZWZvcmVfdXBkYXRlX21hc3RoZWFkXHUwMDNkdHJ1ZVx1MDAyNmg1X3plcm9fZHVyYXRpb25fY3VlX3JhbmdlX2Zvcl9kaWJzXHUwMDNkdHJ1ZVx1MDAyNmhmcl9kcm9wcGVkX2ZyYW1lcmF0ZV9mYWxsYmFja190aHJlc2hvbGRcdTAwM2QwXHUwMDI2aGlnaF9jY3ZfY2xpZW50X3NpZGVfY2FjaGluZ19oNVx1MDAzZHRydWVcdTAwMjZobHNfdXNlX25ld19jb2RlY3Nfc3RyaW5nX2FwaVx1MDAzZHRydWVcdTAwMjZodG1sNV9hZF90aW1lb3V0X21zXHUwMDNkMFx1MDAyNmh0bWw1X2FkYXB0YXRpb25fc3RlcF9jb3VudFx1MDAzZDBcdTAwMjZodG1sNV9hZHNfcHJlcm9sbF9sb2NrX3RpbWVvdXRfZGVsYXlfbXNcdTAwM2QxNTAwMFx1MDAyNmh0bWw1X2FsbG93X211bHRpdmlld190aWxlX3ByZWxvYWRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfYWxsb3dfcHJlbG9hZGluZ193aXRoX2lkbGVfb25seV9uZXR3b3JrX2Zvcl9zYWJyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2FsbG93X3ZpZGVvX2tleWZyYW1lX3dpdGhvdXRfYXVkaW9cdTAwM2R0cnVlXHUwMDI2aHRtbDVfYXBwbHlfY29uc3RyYWludHNfaW5fY2xpZW50X2Zvcl9zYWJyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2FwcGx5X21pbl9mYWlsdXJlc1x1MDAzZHRydWVcdTAwMjZodG1sNV9hcHBseV9zdGFydF90aW1lX3dpdGhpbl9hZHNfZm9yX3NzZGFpX3RyYW5zaXRpb25zXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2F0cl9kaXNhYmxlX2ZvcmNlX2ZhbGxiYWNrXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2F0dF9wbGF5YmFja190aW1lb3V0X21zXHUwMDNkMzAwMDBcdTAwMjZodG1sNV9hdHRhY2hfbnVtX3JhbmRvbV9ieXRlc190b19iYW5kYWlkXHUwMDNkMFx1MDAyNmh0bWw1X2F0dGFjaF9wb190b2tlbl90b19iYW5kYWlkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2F1dG9uYXZfY2FwX2lkbGVfc2Vjc1x1MDAzZDBcdTAwMjZodG1sNV9hdXRvbmF2X3F1YWxpdHlfY2FwXHUwMDNkNzIwXHUwMDI2aHRtbDVfYXV0b3BsYXlfZGVmYXVsdF9xdWFsaXR5X2NhcFx1MDAzZDBcdTAwMjZodG1sNV9hdXhpbGlhcnlfZXN0aW1hdGVfd2VpZ2h0XHUwMDNkMC4wXHUwMDI2aHRtbDVfYXYxX29yZGluYWxfY2FwXHUwMDNkMFx1MDAyNmh0bWw1X2JhbmRhaWRfYXR0YWNoX2NvbnRlbnRfcG9fdG9rZW5cdTAwM2R0cnVlXHUwMDI2aHRtbDVfYmxvY2tfcGlwX3NhZmFyaV9kZWxheVx1MDAzZDBcdTAwMjZodG1sNV9ieXBhc3NfY29udGVudGlvbl9zZWNzXHUwMDNkMC4wXHUwMDI2aHRtbDVfYnl0ZXJhdGVfc29mdF9jYXBcdTAwM2QwXHUwMDI2aHRtbDVfY2hlY2tfZm9yX2lkbGVfbmV0d29ya19pbnRlcnZhbF9tc1x1MDAzZDEwMDBcdTAwMjZodG1sNV9jaGlwc2V0X3NvZnRfY2FwXHUwMDNkODE5Mlx1MDAyNmh0bWw1X2NsYW1wX2ludmFsaWRfc2Vla190b19taW5fc2Vla2FibGVfdGltZVx1MDAzZHRydWVcdTAwMjZodG1sNV9jb25zdW1lX2FsbF9idWZmZXJlZF9ieXRlc19vbmVfcG9sbFx1MDAzZHRydWVcdTAwMjZodG1sNV9jb250aW51b3VzX2dvb2RwdXRfcHJvYmVfaW50ZXJ2YWxfbXNcdTAwM2QwXHUwMDI2aHRtbDVfZDZkZTRfY2xvdWRfcHJvamVjdF9udW1iZXJcdTAwM2Q4Njg2MTg2NzY5NTJcdTAwMjZodG1sNV9kZWJ1Z19kYXRhX2xvZ19wcm9iYWJpbGl0eVx1MDAzZDAuMFx1MDAyNmh0bWw1X2RlY29kZV90b190ZXh0dXJlX2NhcFx1MDAzZHRydWVcdTAwMjZodG1sNV9kZWZhdWx0X2FkX2dhaW5cdTAwM2QwLjVcdTAwMjZodG1sNV9kZWZhdWx0X2F2MV90aHJlc2hvbGRcdTAwM2QwXHUwMDI2aHRtbDVfZGVmYXVsdF9xdWFsaXR5X2NhcFx1MDAzZDBcdTAwMjZodG1sNV9kZWZlcl9mZXRjaF9hdHRfbXNcdTAwM2QwXHUwMDI2aHRtbDVfZGVsYXllZF9yZXRyeV9jb3VudFx1MDAzZDFcdTAwMjZodG1sNV9kZWxheWVkX3JldHJ5X2RlbGF5X21zXHUwMDNkNTAwMFx1MDAyNmh0bWw1X2RlcHJlY2F0ZV9hZGFwdGl2ZV9mb3JtYXRzX3N0cmluZ1x1MDAzZHRydWVcdTAwMjZodG1sNV9kZXByZWNhdGVfYWRzZXJ2aWNlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2RlcHJlY2F0ZV9tYW5pZmVzdGZ1bF9mYWxsYmFja1x1MDAzZHRydWVcdTAwMjZodG1sNV9kZXByZWNhdGVfdmlkZW9fdGFnX3Bvb2xcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZGVza3RvcF92cjE4MF9hbGxvd19wYW5uaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2RmX2Rvd25ncmFkZV90aHJlc2hcdTAwM2QwLjZcdTAwMjZodG1sNV9kaXNhYmxlX2JhbmR3aWR0aF9jb2ZhY3RvcnNfZm9yX3NhYnJfbGl2ZVx1MDAzZHRydWVcdTAwMjZodG1sNV9kaXNhYmxlX2NsaWVudF9hdXRvbmF2X2NhcF9mb3Jfb25lc2llXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Rpc2FibGVfbG9vcF9yYW5nZV9mb3Jfc2hvcnRzX2Fkc1x1MDAzZHRydWVcdTAwMjZodG1sNV9kaXNhYmxlX25vbl9jb250aWd1b3VzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Rpc2FibGVfcGVha19zaGF2ZV9mb3Jfb25lc2llXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Rpc2FibGVfdXN0cmVhbWVyX2NvbnN0cmFpbnRfZm9yX3NhYnJcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZGlzYWJsZV93ZWJfc2FmYXJpX2RhaVx1MDAzZHRydWVcdTAwMjZodG1sNV9kaXNwbGF5ZWRfZnJhbWVfcmF0ZV9kb3duZ3JhZGVfdGhyZXNob2xkXHUwMDNkNDVcdTAwMjZodG1sNV9kcm1fYnl0ZXJhdGVfc29mdF9jYXBcdTAwM2QwXHUwMDI2aHRtbDVfZHJtX2NoZWNrX2FsbF9rZXlfZXJyb3Jfc3RhdGVzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2RybV9jcGlfbGljZW5zZV9rZXlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZHJtX2xpdmVfYnl0ZXJhdGVfc29mdF9jYXBcdTAwM2QwXHUwMDI2aHRtbDVfZWFybHlfbWVkaWFfZm9yX3NoYXJwZXJfc2hvcnRzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9hYzNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2F1ZGlvX3RyYWNrX3N0aWNraW5lc3NcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2F1ZGlvX3RyYWNrX3N0aWNraW5lc3NfcGhhc2VfdHdvXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9jYXB0aW9uX2NoYW5nZXNfZm9yX21vc2FpY1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfY29tcG9zaXRlX2VtYmFyZ29cdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2Q2ZGU0XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9kNmRlNF9jb2xkX3N0YXJ0X2FuZF9lcnJvclx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfZDZkZTRfaWRsZV9wcmlvcml0eV9qb2JcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2RyY1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfZHJjX3RvZ2dsZV9hcGlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2VhYzNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2VtYmVkZGVkX3BsYXllcl92aXNpYmlsaXR5X3NpZ25hbHNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX29kdWNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX3NhYnJfZm9ybWF0X3NlbGVjdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc2Ficl9mcm9tX3dhdGNoX3NlcnZlclx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc2Ficl9ob3N0X2ZhbGxiYWNrXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9zYWJyX29uX3l0X2VtYmVkc1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc2Ficl92b2Rfc3RyZWFtaW5nX3hoclx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc2VydmVyX2RyaXZlbl9yZXF1ZXN0X2NhbmNlbGxhdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc3BzX3JldHJ5X2JhY2tvZmZfbWV0YWRhdGFfcmVxdWVzdHNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX3NzZGFpX3RyYW5zaXRpb25fd2l0aF9vbmx5X2VudGVyX2N1ZXJhbmdlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV90cmlnZ2VyaW5nX2N1ZXBvaW50X2Zvcl9zbG90XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV90dm9zX2Rhc2hcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX3R2b3NfZW5jcnlwdGVkX3ZwOVx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmNvdXJhZ2VfYXJyYXlfY29hbGVzY2luZ1x1MDAzZHRydWVcdTAwMjZodG1sNV9maWxsX2RlZmF1bHRfbW9zYWljX2F1ZGlvX3RyYWNrX2lkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2ZpeGVkX21lZGlhX2R1cmF0aW9uX2Zvcl9yZXF1ZXN0XHUwMDNkMFx1MDAyNmh0bWw1X2ZsdXNoX2luZGV4X29uX3VwZGF0ZWRfdGltZXN0YW1wX29mZnNldFx1MDAzZHRydWVcdTAwMjZodG1sNV9mb3JjZV9zYWJyX2Zyb21fd2F0Y2hfc2VydmVyX2Zvcl9kZnNzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2ZvcndhcmRfY2xpY2tfdHJhY2tpbmdfcGFyYW1zX29uX3JlbG9hZFx1MDAzZHRydWVcdTAwMjZodG1sNV9nYXBsZXNzX2FkX2F1dG9wbGF5X29uX3ZpZGVvX3RvX2FkX29ubHlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZ2FwbGVzc19lbmRlZF90cmFuc2l0aW9uX2J1ZmZlcl9tc1x1MDAzZDIwMFx1MDAyNmh0bWw1X2dhcGxlc3NfaGFuZG9mZl9jbG9zZV9lbmRfbG9uZ19yZWJ1ZmZlcl9jZmxcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZ2FwbGVzc19oYW5kb2ZmX2Nsb3NlX2VuZF9sb25nX3JlYnVmZmVyX2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X2dhcGxlc3NfbG9vcF9zZWVrX29mZnNldF9pbl9taWxsaVx1MDAzZDBcdTAwMjZodG1sNV9nYXBsZXNzX3Nsb3dfc2Vla19jZmxcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZ2FwbGVzc19zbG93X3NlZWtfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfZ2FwbGVzc19zbG93X3N0YXJ0X2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X2dlbmVyYXRlX2NvbnRlbnRfcG9fdG9rZW5cdTAwM2R0cnVlXHUwMDI2aHRtbDVfZ2VuZXJhdGVfc2Vzc2lvbl9wb190b2tlblx1MDAzZHRydWVcdTAwMjZodG1sNV9nbF9mcHNfdGhyZXNob2xkXHUwMDNkMFx1MDAyNmh0bWw1X2hhcmRfY2FwX21heF92ZXJ0aWNhbF9yZXNvbHV0aW9uX2Zvcl9zaG9ydHNcdTAwM2QwXHUwMDI2aHRtbDVfaGRjcF9wcm9iaW5nX3N0cmVhbV91cmxcdTAwM2RcdTAwMjZodG1sNV9oZWFkX21pc3Nfc2Vjc1x1MDAzZDAuMFx1MDAyNmh0bWw1X2hmcl9xdWFsaXR5X2NhcFx1MDAzZDBcdTAwMjZodG1sNV9oaWdoX3Jlc19sb2dnaW5nX3BlcmNlbnRcdTAwM2QwLjAxXHUwMDI2aHRtbDVfaGlnaF9yZXNfc2Vla19sb2dnaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2hvcGVsZXNzX3NlY3NcdTAwM2QwXHUwMDI2aHRtbDVfaHVsaV9zc2RhaV91c2VfcGxheWJhY2tfc3RhdGVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfaWRsZV9yYXRlX2xpbWl0X21zXHUwMDNkMFx1MDAyNmh0bWw1X2lnbm9yZV9wYXJ0aWFsX3NlZ21lbnRfZnJvbV9saXZlX3JlYWRhaGVhZFx1MDAzZHRydWVcdTAwMjZodG1sNV9pZ25vcmVfc2FicnNlZWtfZHVyaW5nX2Fkc2tpcFx1MDAzZHRydWVcdTAwMjZodG1sNV9pbm5lcnR1YmVfaGVhcnRiZWF0c19mb3JfZmFpcnBsYXlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfaW5uZXJ0dWJlX2hlYXJ0YmVhdHNfZm9yX3dpZGV2aW5lXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2p1bWJvX21vYmlsZV9zdWJzZWdtZW50X3JlYWRhaGVhZF90YXJnZXRcdTAwM2QzLjBcdTAwMjZodG1sNV9qdW1ib191bGxfbm9uc3RyZWFtaW5nX21mZmFfbXNcdTAwM2Q0MDAwXHUwMDI2aHRtbDVfanVtYm9fdWxsX3N1YnNlZ21lbnRfcmVhZGFoZWFkX3RhcmdldFx1MDAzZDEuM1x1MDAyNmh0bWw1X2thYnVraV9kcm1fbGl2ZV81MV9kZWZhdWx0X29mZlx1MDAzZHRydWVcdTAwMjZodG1sNV9saWNlbnNlX2NvbnN0cmFpbnRfZGVsYXlcdTAwM2Q1MDAwXHUwMDI2aHRtbDVfbGl2ZV9hYnJfaGVhZF9taXNzX2ZyYWN0aW9uXHUwMDNkMC4wXHUwMDI2aHRtbDVfbGl2ZV9hYnJfcmVwcmVkaWN0X2ZyYWN0aW9uXHUwMDNkMC4wXHUwMDI2aHRtbDVfbGl2ZV9jaHVua19yZWFkYWhlYWRfcHJveGltYV9vdmVycmlkZVx1MDAzZDBcdTAwMjZodG1sNV9saXZlX2xvd19sYXRlbmN5X2JhbmR3aWR0aF93aW5kb3dcdTAwM2QwLjBcdTAwMjZodG1sNV9saXZlX25vcm1hbF9sYXRlbmN5X2JhbmR3aWR0aF93aW5kb3dcdTAwM2QwLjBcdTAwMjZodG1sNV9saXZlX3F1YWxpdHlfY2FwXHUwMDNkMFx1MDAyNmh0bWw1X2xpdmVfdWx0cmFfbG93X2xhdGVuY3lfYmFuZHdpZHRoX3dpbmRvd1x1MDAzZDAuMFx1MDAyNmh0bWw1X2xpdmVuZXNzX2RyaWZ0X2NodW5rX292ZXJyaWRlXHUwMDNkMFx1MDAyNmh0bWw1X2xpdmVuZXNzX2RyaWZ0X3Byb3hpbWFfb3ZlcnJpZGVcdTAwM2QwXHUwMDI2aHRtbDVfbG9nX2F1ZGlvX2Ficlx1MDAzZHRydWVcdTAwMjZodG1sNV9sb2dfZXhwZXJpbWVudF9pZF9mcm9tX3BsYXllcl9yZXNwb25zZV90b19jdG1wXHUwMDNkXHUwMDI2aHRtbDVfbG9nX2ZpcnN0X3NzZGFpX3JlcXVlc3RzX2tpbGxzd2l0Y2hcdTAwM2R0cnVlXHUwMDI2aHRtbDVfbG9nX3JlYnVmZmVyX2V2ZW50c1x1MDAzZDVcdTAwMjZodG1sNV9sb2dfc2Ficl9tYWxmb3JtZWRfY29uZmlnX3Byb3RvX3NoYXJlZFx1MDAzZHRydWVcdTAwMjZodG1sNV9sb2dfdHJpZ2dlcl9ldmVudHNfd2l0aF9kZWJ1Z19kYXRhXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2xvZ192c3NfZXh0cmFfbHJfY3BhcmFtc19mcmVxXHUwMDNkXHUwMDI2aHRtbDVfbG9uZ19yZWJ1ZmZlcl9qaWdnbGVfY210X2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X2xvbmdfcmVidWZmZXJfdGhyZXNob2xkX21zXHUwMDNkMzAwMDBcdTAwMjZodG1sNV9tYW5pZmVzdGxlc3NfdnA5X290Zlx1MDAzZHRydWVcdTAwMjZodG1sNV9tYXhfYnVmZmVyX2hlYWx0aF9mb3JfZG93bmdyYWRlX3Byb3BcdTAwM2QwLjBcdTAwMjZodG1sNV9tYXhfYnVmZmVyX2hlYWx0aF9mb3JfZG93bmdyYWRlX3NlY3NcdTAwM2QwLjBcdTAwMjZodG1sNV9tYXhfYnl0ZXJhdGVcdTAwM2QwXHUwMDI2aHRtbDVfbWF4X2Rpc2NvbnRpbnVpdHlfcmV3cml0ZV9jb3VudFx1MDAzZDBcdTAwMjZodG1sNV9tYXhfZHJpZnRfcGVyX3RyYWNrX3NlY3NcdTAwM2QwLjBcdTAwMjZodG1sNV9tYXhfaGVhZG1fZm9yX3N0cmVhbWluZ194aHJcdTAwM2QwXHUwMDI2aHRtbDVfbWF4X2xpdmVfZHZyX3dpbmRvd19wbHVzX21hcmdpbl9zZWNzXHUwMDNkNDY4MDAuMFx1MDAyNmh0bWw1X21heF9xdWFsaXR5X3NlbF91cGdyYWRlXHUwMDNkMFx1MDAyNmh0bWw1X21heF9yZWRpcmVjdF9yZXNwb25zZV9sZW5ndGhcdTAwM2Q4MTkyXHUwMDI2aHRtbDVfbWF4X3NlbGVjdGFibGVfcXVhbGl0eV9vcmRpbmFsXHUwMDNkMFx1MDAyNmh0bWw1X21heF92ZXJ0aWNhbF9yZXNvbHV0aW9uXHUwMDNkMFx1MDAyNmh0bWw1X21heGltdW1fcmVhZGFoZWFkX3NlY29uZHNcdTAwM2QwLjBcdTAwMjZodG1sNV9tZWRpYV9mdWxsc2NyZWVuXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X21lZGlhX3RpbWVfd2VpZ2h0X3Byb3BcdTAwM2QwLjBcdTAwMjZodG1sNV9tZmNfbWF4X3F1ZXVlX2xlbmd0aFx1MDAzZDFcdTAwMjZodG1sNV9tZmNfbWluX2J1ZmZlcl9oZWFsdGhcdTAwM2QwXHUwMDI2aHRtbDVfbWZjX3NlY3NfbGVmdF90b19zdGFydF9wcmVsb2FkXHUwMDNkMFx1MDAyNmh0bWw1X21pbl9mYWlsdXJlc190b19kZWxheV9yZXRyeVx1MDAzZDNcdTAwMjZodG1sNV9taW5fbWVkaWFfZHVyYXRpb25fZm9yX2FwcGVuZF9wcm9wXHUwMDNkMC4wXHUwMDI2aHRtbDVfbWluX21lZGlhX2R1cmF0aW9uX2Zvcl9jYWJyX3NsaWNlXHUwMDNkMC4wMVx1MDAyNmh0bWw1X21pbl9wbGF5YmFja19hZHZhbmNlX2Zvcl9zdGVhZHlfc3RhdGVfc2Vjc1x1MDAzZDBcdTAwMjZodG1sNV9taW5fcXVhbGl0eV9vcmRpbmFsXHUwMDNkMFx1MDAyNmh0bWw1X21pbl9yZWFkYmVoaW5kX2NhcF9zZWNzXHUwMDNkNjBcdTAwMjZodG1sNV9taW5fcmVhZGJlaGluZF9zZWNzXHUwMDNkMFx1MDAyNmh0bWw1X21pbl9zZWNvbmRzX2JldHdlZW5fZm9ybWF0X3NlbGVjdGlvbnNcdTAwM2QwLjBcdTAwMjZodG1sNV9taW5fc2VsZWN0YWJsZV9xdWFsaXR5X29yZGluYWxcdTAwM2QwXHUwMDI2aHRtbDVfbWluX3N0YXJ0dXBfYnVmZmVyZWRfbWVkaWFfZHVyYXRpb25fZm9yX2xpdmVfc2Vjc1x1MDAzZDAuMFx1MDAyNmh0bWw1X21pbl9zdGFydHVwX2J1ZmZlcmVkX21lZGlhX2R1cmF0aW9uX3NlY3NcdTAwM2QxLjJcdTAwMjZodG1sNV9taW5fc3RhcnR1cF9kdXJhdGlvbl9saXZlX3NlY3NcdTAwM2QwLjI1XHUwMDI2aHRtbDVfbWluX3VuZGVycnVuX2J1ZmZlcmVkX3ByZV9zdGVhZHlfc3RhdGVfbXNcdTAwM2QwXHUwMDI2aHRtbDVfbWluX3VwZ3JhZGVfaGVhbHRoX3NlY3NcdTAwM2QwLjBcdTAwMjZodG1sNV9taW5pbXVtX3JlYWRhaGVhZF9zZWNvbmRzXHUwMDNkMC4wXHUwMDI2aHRtbDVfbW9ja19jb250ZW50X2JpbmRpbmdfZm9yX3Nlc3Npb25fdG9rZW5cdTAwM2RcdTAwMjZodG1sNV9tb3ZlX2Rpc2FibGVfYWlycGxheVx1MDAzZHRydWVcdTAwMjZodG1sNV9ub19wbGFjZWhvbGRlcl9yb2xsYmFja3NcdTAwM2R0cnVlXHUwMDI2aHRtbDVfbm9uX29uZXNpZV9hdHRhY2hfcG9fdG9rZW5cdTAwM2R0cnVlXHUwMDI2aHRtbDVfb2ZmbGluZV9kb3dubG9hZF90aW1lb3V0X3JldHJ5X2xpbWl0XHUwMDNkNFx1MDAyNmh0bWw1X29mZmxpbmVfZmFpbHVyZV9yZXRyeV9saW1pdFx1MDAzZDJcdTAwMjZodG1sNV9vZmZsaW5lX3BsYXliYWNrX3Bvc2l0aW9uX3N5bmNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfb2ZmbGluZV9wcmV2ZW50X3JlZG93bmxvYWRfZG93bmxvYWRlZF92aWRlb1x1MDAzZHRydWVcdTAwMjZodG1sNV9vbmVzaWVfYXVkaW9fb25seV9wbGF5YmFja1x1MDAzZHRydWVcdTAwMjZodG1sNV9vbmVzaWVfY2hlY2tfdGltZW91dFx1MDAzZHRydWVcdTAwMjZodG1sNV9vbmVzaWVfZGVmZXJfY29udGVudF9sb2FkZXJfbXNcdTAwM2QwXHUwMDI2aHRtbDVfb25lc2llX2xpdmVfdHRsX3NlY3NcdTAwM2Q4XHUwMDI2aHRtbDVfb25lc2llX3ByZXdhcm1faW50ZXJ2YWxfbXNcdTAwM2QwXHUwMDI2aHRtbDVfb25lc2llX3ByZXdhcm1fbWF4X2xhY3RfbXNcdTAwM2QwXHUwMDI2aHRtbDVfb25lc2llX3JlZGlyZWN0b3JfdGltZW91dF9tc1x1MDAzZDBcdTAwMjZodG1sNV9vbmVzaWVfc2VuZF9zdHJlYW1lcl9jb250ZXh0XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X292ZXJyaWRlX21pY3JvX2Rpc2NvbnRpbnVpdGllc190aHJlc2hvbGRfbXNcdTAwM2QtMVx1MDAyNmh0bWw1X3BhY2VkX3BvbGxfbWluX2hlYWx0aF9tc1x1MDAzZDBcdTAwMjZodG1sNV9wYWNlZF9wb2xsX21zXHUwMDNkMFx1MDAyNmh0bWw1X3BhdXNlX29uX25vbmZvcmVncm91bmRfcGxhdGZvcm1fZXJyb3JzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3BlYWtfc2hhdmVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcGVyZl9jYXBfb3ZlcnJpZGVfc3RpY2t5XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3BlcmZvcm1hbmNlX2NhcF9mbG9vclx1MDAzZDM2MFx1MDAyNmh0bWw1X3BlcnNlcnZlX2F2MV9wZXJmX2NhcFx1MDAzZHRydWVcdTAwMjZodG1sNV9waWN0dXJlX2luX3BpY3R1cmVfbG9nZ2luZ19vbnJlc2l6ZV9yYXRpb1x1MDAzZDAuMFx1MDAyNmh0bWw1X3BsYXRmb3JtX21heF9idWZmZXJfaGVhbHRoX292ZXJzZW5kX2R1cmF0aW9uX3NlY3NcdTAwM2QwLjBcdTAwMjZodG1sNV9wbGF0Zm9ybV9taW5pbXVtX3JlYWRhaGVhZF9zZWNvbmRzXHUwMDNkMC4wXHUwMDI2aHRtbDVfcGxhdGZvcm1fd2hpdGVsaXN0ZWRfZm9yX2ZyYW1lX2FjY3VyYXRlX3NlZWtzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3BsYXllcl9hdHRfaW5pdGlhbF9kZWxheV9tc1x1MDAzZDMwMDBcdTAwMjZodG1sNV9wbGF5ZXJfYXR0X3JldHJ5X2RlbGF5X21zXHUwMDNkMTUwMFx1MDAyNmh0bWw1X3BsYXllcl9hdXRvbmF2X2xvZ2dpbmdcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcGxheWVyX2VzNlx1MDAzZHRydWVcdTAwMjZodG1sNV9wbGF5ZXJfbWluX2J1aWxkX2NsXHUwMDNkLTFcdTAwMjZodG1sNV9wbGF5ZXJfcHJlbG9hZF9hZF9maXhcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcG9zdF9pbnRlcnJ1cHRfcmVhZGFoZWFkXHUwMDNkMjBcdTAwMjZodG1sNV9wcmVmZXJfbGFuZ3VhZ2Vfb3Zlcl9jb2RlY1x1MDAzZHRydWVcdTAwMjZodG1sNV9wcmVmZXJfc2VydmVyX2J3ZTNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcHJlbG9hZF9iZWZvcmVfaW5pdGlhbF9zZWVrX3dpdGhfc2Ficlx1MDAzZHRydWVcdTAwMjZodG1sNV9wcmVsb2FkX3dhaXRfdGltZV9zZWNzXHUwMDNkMC4wXHUwMDI2aHRtbDVfcHJldmVudF9tb2JpbGVfYmFja2dyb3VuZF9wbGF5X29uX2V2ZW50X3NoYXJlZFx1MDAzZHRydWVcdTAwMjZodG1sNV9wcm9iZV9wcmltYXJ5X2RlbGF5X2Jhc2VfbXNcdTAwM2QwXHUwMDI2aHRtbDVfcHJvY2Vzc19hbGxfZW5jcnlwdGVkX2V2ZW50c1x1MDAzZHRydWVcdTAwMjZodG1sNV9xb2VfcHJvdG9fbW9ja19sZW5ndGhcdTAwM2QwXHUwMDI2aHRtbDVfcXVlcnlfc3dfc2VjdXJlX2NyeXB0b19mb3JfYW5kcm9pZFx1MDAzZHRydWVcdTAwMjZodG1sNV9yYW5kb21fcGxheWJhY2tfY2FwXHUwMDNkMFx1MDAyNmh0bWw1X3JlY29yZF9pc19vZmZsaW5lX29uX3BsYXliYWNrX2F0dGVtcHRfc3RhcnRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVjb3JkX3VtcF90aW1pbmdcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVsb2FkX2J5X2thYnVraV9hcHBcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVtb3ZlX2NvbW1hbmRfdHJpZ2dlcmVkX2NvbXBhbmlvbnNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVtb3ZlX25vdF9zZXJ2YWJsZV9jaGVja19raWxsc3dpdGNoXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JlcG9ydF9mYXRhbF9kcm1fcmVzdHJpY3RlZF9lcnJvcl9raWxsc3dpdGNoXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JlcG9ydF9zbG93X2Fkc19hc19lcnJvclx1MDAzZHRydWVcdTAwMjZodG1sNV9yZXByZWRpY3RfaW50ZXJ2YWxfbXNcdTAwM2QwXHUwMDI2aHRtbDVfcmVxdWVzdF9vbmx5X2hkcl9vcl9zZHJfa2V5c1x1MDAzZHRydWVcdTAwMjZodG1sNV9yZXF1ZXN0X3NpemVfbWF4X2tiXHUwMDNkMFx1MDAyNmh0bWw1X3JlcXVlc3Rfc2l6ZV9taW5fa2JcdTAwM2QwXHUwMDI2aHRtbDVfcmVzZWVrX2FmdGVyX3RpbWVfanVtcF9jZmxcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVzZWVrX2FmdGVyX3RpbWVfanVtcF9kZWxheV9tc1x1MDAzZDBcdTAwMjZodG1sNV9yZXNldF9iYWNrb2ZmX29uX3VzZXJfc2Vla1x1MDAzZHRydWVcdTAwMjZodG1sNV9yZXNvdXJjZV9iYWRfc3RhdHVzX2RlbGF5X3NjYWxpbmdcdTAwM2QxLjVcdTAwMjZodG1sNV9yZXN0cmljdF9zdHJlYW1pbmdfeGhyX29uX3NxbGVzc19yZXF1ZXN0c1x1MDAzZHRydWVcdTAwMjZodG1sNV9yZXRyeV9kb3dubG9hZHNfZm9yX2V4cGlyYXRpb25cdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmV0cnlfb25fZHJtX2tleV9lcnJvclx1MDAzZHRydWVcdTAwMjZodG1sNV9yZXRyeV9vbl9kcm1fdW5hdmFpbGFibGVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmV0cnlfcXVvdGFfZXhjZWVkZWRfdmlhX3NlZWtcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmV0dXJuX3BsYXliYWNrX2lmX2FscmVhZHlfcHJlbG9hZGVkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfZW5hYmxlX3NlcnZlcl94dGFnX3NlbGVjdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX2ZldGNoX29uX2lkbGVfbmV0d29ya19wcmVsb2FkZWRfcGxheWVyc1x1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX2ZvcmNlX21heF9uZXR3b3JrX2ludGVycnVwdGlvbl9kdXJhdGlvbl9tc1x1MDAzZDBcdTAwMjZodG1sNV9zYWJyX2xpdmVfbG93X2xhdGVuY3lfc3RyZWFtaW5nX3hoclx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX2xpdmVfbm9ybWFsX2xhdGVuY3lfc3RyZWFtaW5nX3hoclx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX2xpdmVfdGltaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfbGl2ZV91bHRyYV9sb3dfbGF0ZW5jeV9zdHJlYW1pbmdfeGhyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfbG9nX3NlcnZlcl94dGFnX3NlbGVjdGlvbl9vbmVzaWVfbWlzbWF0Y2hcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9taW5fbWVkaWFfYnl0ZXNfZmFjdG9yX3RvX2FwcGVuZF9mb3Jfc3RyZWFtXHUwMDNkMC4wXHUwMDI2aHRtbDVfc2Ficl9ub25fc3RyZWFtaW5nX3hocl9yZXF1ZXN0X2NhbmNlbGxhdGlvbl90aW1lb3V0X21zXHUwMDNkMFx1MDAyNmh0bWw1X3NhYnJfbm9uX3N0cmVhbWluZ194aHJfdGltZW91dF9yZXRyeV9saW1pdFx1MDAzZDBcdTAwMjZodG1sNV9zYWJyX3JlcG9ydF9wYXJ0aWFsX3NlZ21lbnRfZXN0aW1hdGVkX2R1cmF0aW9uXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfcmVwb3J0X3JlcXVlc3RfY2FuY2VsbGF0aW9uX2luZm9cdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9yZXF1ZXN0X2xpbWl0X3Blcl9wZXJpb2RcdTAwM2QyMFx1MDAyNmh0bWw1X3NhYnJfcmVxdWVzdF9vbl9jb25zdHJhaW50XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfc2Vla19ub19zaGlmdF90b2xlcmFuY2VcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9za2lwX2NsaWVudF9hdWRpb19pbml0X3NlbGVjdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX3N1Y2Nlc3NmdWxfcHJvYmVfdGltZW91dF9tc1x1MDAzZDBcdTAwMjZodG1sNV9zYWJyX3VnY192b2Rfd2ViX2VtYmVkZGVkX2NsaWVudF9kZWZhdWx0X2JhbmR3aWR0aF9vbl9pcGhvbmVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl91bnVzZWRfYmxvYXRfc2l6ZV9ieXRlc1x1MDAzZDBcdTAwMjZodG1sNV9zYW1zdW5nX2thbnRfbGltaXRfbWF4X2JpdHJhdGVcdTAwM2QwXHUwMDI2aHRtbDVfc2Vla19qaWdnbGVfY210X2RlbGF5X21zXHUwMDNkODAwMFx1MDAyNmh0bWw1X3NlZWtfbmV3X2VsZW1fZGVsYXlfbXNcdTAwM2QxMjAwMFx1MDAyNmh0bWw1X3NlZWtfbmV3X2VsZW1fc2hvcnRzX2RlbGF5X21zXHUwMDNkMjAwMFx1MDAyNmh0bWw1X3NlZWtfbmV3X21lZGlhX2VsZW1lbnRfc2hvcnRzX3JldXNlX2NmbFx1MDAzZHRydWVcdTAwMjZodG1sNV9zZWVrX25ld19tZWRpYV9lbGVtZW50X3Nob3J0c19yZXVzZV9kZWxheV9tc1x1MDAzZDBcdTAwMjZodG1sNV9zZWVrX25ld19tZWRpYV9zb3VyY2Vfc2hvcnRzX3JldXNlX2NmbFx1MDAzZHRydWVcdTAwMjZodG1sNV9zZWVrX25ld19tZWRpYV9zb3VyY2Vfc2hvcnRzX3JldXNlX2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X3NlZWtfc2V0X2NtdF9kZWxheV9tc1x1MDAzZDIwMDBcdTAwMjZodG1sNV9zZWVrX3RpbWVvdXRfZGVsYXlfbXNcdTAwM2QyMDAwMFx1MDAyNmh0bWw1X3NlbmRfY3VlcG9pbnRfaWRfaW5fYWRfYnJlYWtfcmVxdWVzdFx1MDAzZHRydWVcdTAwMjZodG1sNV9zZW5kX3NlcmlhbGl6ZWRfb25lX3RpbWVfcW9lX2NvbnRleHRfZGF0YVx1MDAzZHRydWVcdTAwMjZodG1sNV9zZXJ2ZV9zdGFydF9zZWNvbmRzX3NlZWtfZm9yX3Bvc3RfbGl2ZV9zYWJyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NlcnZlcl9zdGl0Y2hlZF9kYWlfZGVjb3JhdGVkX3VybF9yZXRyeV9saW1pdFx1MDAzZDVcdTAwMjZodG1sNV9zZXNzaW9uX3BvX3Rva2VuX2ludGVydmFsX3RpbWVfbXNcdTAwM2Q5MDAwMDBcdTAwMjZodG1sNV9zZXRfdmlkZW9faWRfYXNfZXhwZWN0ZWRfY29udGVudF9iaW5kaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3Nob3J0c19nYXBsZXNzX2FkX3Nsb3dfc3RhcnRfY2ZsXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3Nob3J0c19nYXBsZXNzX2FkX3Nsb3dfc3RhcnRfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfc2hvcnRzX2dhcGxlc3NfbmV4dF9idWZmZXJfaW5fc2Vjb25kc1x1MDAzZDBcdTAwMjZodG1sNV9zaG9ydHNfZ2FwbGVzc19ub19nbGxhdFx1MDAzZHRydWVcdTAwMjZodG1sNV9zaG9ydHNfZ2FwbGVzc19zbG93X3N0YXJ0X2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X3Nob3dfZHJjX3RvZ2dsZVx1MDAzZHRydWVcdTAwMjZodG1sNV9zaW1wbGlmaWVkX2JhY2t1cF90aW1lb3V0X3NhYnJfbGl2ZVx1MDAzZHRydWVcdTAwMjZodG1sNV9za2lwX2VtcHR5X3BvX3Rva2VuXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NraXBfc2xvd19hZF9kZWxheV9tc1x1MDAzZDE1MDAwXHUwMDI2aHRtbDVfc2xvd19zdGFydF9ub19tZWRpYV9zb3VyY2VfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfc2xvd19zdGFydF90aW1lb3V0X2RlbGF5X21zXHUwMDNkMjAwMDBcdTAwMjZodG1sNV9zc2RhaV9lbmFibGVfbWVkaWFfZW5kX2N1ZV9yYW5nZVx1MDAzZHRydWVcdTAwMjZodG1sNV9zc2RhaV9mYWlsdXJlX3JldHJ5X2xpbWl0XHUwMDNkMFx1MDAyNmh0bWw1X3NzZGFpX2xvZ19taXNzaW5nX2FkX2NvbmZpZ19yZWFzb25cdTAwM2R0cnVlXHUwMDI2aHRtbDVfc3RhbGxfZmFjdG9yXHUwMDNkMC4wXHUwMDI2aHRtbDVfc3RhdGVmdWxfYXVkaW9fbm9ybWFsaXphdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9zdGlja3lfZHVyYXRpb25fbW9zXHUwMDNkMFx1MDAyNmh0bWw1X3N0b3JlX3hocl9oZWFkZXJzX3JlYWRhYmxlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3N0cmVhbWluZ19yZXNpbGllbmNlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3N0cmVhbWluZ194aHJfdGltZV9iYXNlZF9jb25zb2xpZGF0aW9uX21zXHUwMDNkLTFcdTAwMjZodG1sNV9zdWJzZWdtZW50X3JlYWRhaGVhZF9sb2FkX3NwZWVkX2NoZWNrX2ludGVydmFsXHUwMDNkMC41XHUwMDI2aHRtbDVfc3Vic2VnbWVudF9yZWFkYWhlYWRfbWluX2J1ZmZlcl9oZWFsdGhfc2Vjc1x1MDAzZDAuMjVcdTAwMjZodG1sNV9zdWJzZWdtZW50X3JlYWRhaGVhZF9taW5fYnVmZmVyX2hlYWx0aF9zZWNzX29uX3RpbWVvdXRcdTAwM2QwLjFcdTAwMjZodG1sNV9zdWJzZWdtZW50X3JlYWRhaGVhZF9taW5fbG9hZF9zcGVlZFx1MDAzZDEuNVx1MDAyNmh0bWw1X3N1YnNlZ21lbnRfcmVhZGFoZWFkX3NlZWtfbGF0ZW5jeV9mdWRnZVx1MDAzZDAuNVx1MDAyNmh0bWw1X3N1YnNlZ21lbnRfcmVhZGFoZWFkX3RhcmdldF9idWZmZXJfaGVhbHRoX3NlY3NcdTAwM2QwLjVcdTAwMjZodG1sNV9zdWJzZWdtZW50X3JlYWRhaGVhZF90aW1lb3V0X3NlY3NcdTAwM2QyLjBcdTAwMjZodG1sNV90cmFja19vdmVyc2hvb3RcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdHJhbnNmZXJfcHJvY2Vzc2luZ19sb2dzX2ludGVydmFsXHUwMDNkMTAwMFx1MDAyNmh0bWw1X3RyaWdnZXJfbG9hZGVyX3doZW5faWRsZV9uZXR3b3JrXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VnY19saXZlX2F1ZGlvXzUxXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VnY192b2RfYXVkaW9fNTFcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdW5yZXBvcnRlZF9zZWVrX3Jlc2Vla19kZWxheV9tc1x1MDAzZDBcdTAwMjZodG1sNV91cGRhdGVfdGltZV9vbl9zZWVrZWRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdXNlX2RhdGVfbm93X2Zvcl9sb2NhbF9zdG9yYWdlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV9pbml0X3NlbGVjdGVkX2F1ZGlvXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV9ub25fYWN0aXZlX2Jyb2FkY2FzdF9mb3JfcG9zdF9saXZlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV9wb3N0X2Zvcl9tZWRpYVx1MDAzZHRydWVcdTAwMjZodG1sNV91c2Vfc2hhcmVkX293bF9pbnN0YW5jZVx1MDAzZHRydWVcdTAwMjZodG1sNV91c2VfdW1wXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV91bXBfcmVxdWVzdF9zbGljZXJcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdXNlX3VtcF90aW1pbmdcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdXNlX3ZpZGVvX3F1YWxpdHlfY2FwX2Zvcl91c3RyZWFtZXJfY29uc3RyYWludFx1MDAzZHRydWVcdTAwMjZodG1sNV91c2VfdmlkZW9fdHJhbnNpdGlvbl9lbmRwb2ludF9oZWFydGJlYXRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdmlkZW9fdGJkX21pbl9rYlx1MDAzZDBcdTAwMjZodG1sNV92aWV3cG9ydF91bmRlcnNlbmRfbWF4aW11bVx1MDAzZDAuMFx1MDAyNmh0bWw1X3ZvbHVtZV9zbGlkZXJfdG9vbHRpcFx1MDAzZHRydWVcdTAwMjZodG1sNV93ZWJfcG9fZXhwZXJpbWVudF9pZHNcdTAwM2RbXVx1MDAyNmh0bWw1X3dlYl9wb19yZXF1ZXN0X2tleVx1MDAzZFx1MDAyNmh0bWw1X3dlYl9wb190b2tlbl9kaXNhYmxlX2NhY2hpbmdcdTAwM2R0cnVlXHUwMDI2aHRtbDVfd2VicG9faWRsZV9wcmlvcml0eV9qb2JcdTAwM2R0cnVlXHUwMDI2aHRtbDVfd2VicG9fa2Fpb3NfZGVmZXJfdGltZW91dF9tc1x1MDAzZDBcdTAwMjZodG1sNV93b2ZmbGVfcmVzdW1lXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3dvcmthcm91bmRfZGVsYXlfdHJpZ2dlclx1MDAzZHRydWVcdTAwMjZpZGJfaW1tZWRpYXRlX2NvbW1pdFx1MDAzZHRydWVcdTAwMjZpZ25vcmVfb3ZlcmxhcHBpbmdfY3VlX3BvaW50c19vbl9lbmRlbWljX2xpdmVfaHRtbDVcdTAwM2R0cnVlXHUwMDI2aWxfYXR0YWNoX2NhY2hlX2xpbWl0XHUwMDNkdHJ1ZVx1MDAyNmlsX3BheWxvYWRfc2NyYXBpbmdcdTAwM2RcdTAwMjZpbF91c2Vfdmlld19tb2RlbF9sb2dnaW5nX2NvbnRleHRcdTAwM2R0cnVlXHUwMDI2aW5pdGlhbF9nZWxfYmF0Y2hfdGltZW91dFx1MDAzZDIwMDBcdTAwMjZpbmplY3RlZF9saWNlbnNlX2hhbmRsZXJfZXJyb3JfY29kZVx1MDAzZDBcdTAwMjZpbmplY3RlZF9saWNlbnNlX2hhbmRsZXJfbGljZW5zZV9zdGF0dXNcdTAwM2QwXHUwMDI2aW9zX2FuZF9hbmRyb2lkX2ZyZXNjYV9wb2xsaW5nX2RlbGF5X292ZXJyaWRlXHUwMDNkMFx1MDAyNml0ZHJtX2Fsd2F5c191c2Vfd2lkZXZpbmVfc2RrXHUwMDNkdHJ1ZVx1MDAyNml0ZHJtX2Rpc2FibGVfZXh0ZXJuYWxfa2V5X3JvdGF0aW9uX3N5c3RlbV9pZHNcdTAwM2RbXVx1MDAyNml0ZHJtX2VuYWJsZV9yZXZvY2F0aW9uX3JlcG9ydGluZ1x1MDAzZHRydWVcdTAwMjZpdGRybV9pbmplY3RlZF9saWNlbnNlX3NlcnZpY2VfZXJyb3JfY29kZVx1MDAzZDBcdTAwMjZpdGRybV9zZXRfc2Ficl9saWNlbnNlX2NvbnN0cmFpbnRcdTAwM2R0cnVlXHUwMDI2aXRkcm1fdXNlX2ZhaXJwbGF5X3Nka1x1MDAzZHRydWVcdTAwMjZpdGRybV91c2Vfd2lkZXZpbmVfc2RrX2Zvcl9wcmVtaXVtX2NvbnRlbnRcdTAwM2R0cnVlXHUwMDI2aXRkcm1fd2lkZXZpbmVfaGFyZGVuZWRfdm1wX21vZGVcdTAwM2Rsb2dcdTAwMjZqc29uX2NvbmRlbnNlZF9yZXNwb25zZVx1MDAzZHRydWVcdTAwMjZrZXZsYXJfY29tbWFuZF9oYW5kbGVyX2NvbW1hbmRfYmFubGlzdFx1MDAzZFtdXHUwMDI2a2V2bGFyX2RlbGhpX21vZGVybl93ZWJfZW5kc2NyZWVuX2lkZWFsX3RpbGVfd2lkdGhfcGVyY2VudGFnZVx1MDAzZDAuMjdcdTAwMjZrZXZsYXJfZGVsaGlfbW9kZXJuX3dlYl9lbmRzY3JlZW5fbWF4X3Jvd3NcdTAwM2QyXHUwMDI2a2V2bGFyX2RlbGhpX21vZGVybl93ZWJfZW5kc2NyZWVuX21heF93aWR0aFx1MDAzZDUwMFx1MDAyNmtldmxhcl9kZWxoaV9tb2Rlcm5fd2ViX2VuZHNjcmVlbl9taW5fd2lkdGhcdTAwM2QyMDBcdTAwMjZrZXZsYXJfZ2VsX2Vycm9yX3JvdXRpbmdcdTAwM2R0cnVlXHUwMDI2a2V2bGFyX21pbmlwbGF5ZXJfZXhwYW5kX3RvcFx1MDAzZHRydWVcdTAwMjZrZXZsYXJfbWluaXBsYXllcl9wbGF5X3BhdXNlX29uX3NjcmltXHUwMDNkdHJ1ZVx1MDAyNmtldmxhcl9wbGF5YmFja19hc3NvY2lhdGVkX3F1ZXVlXHUwMDNkdHJ1ZVx1MDAyNmxhdW5jaF9saWNlbnNlX3NlcnZpY2VfYWxsX290dF92aWRlb3NfYXV0b21hdGljX2ZhaWxfb3Blblx1MDAzZHRydWVcdTAwMjZsaW1pdF95dGNzaV9kZWJ1Z19hcnJheV9zaXplXHUwMDNkdHJ1ZVx1MDAyNmxpdmVfY2hhdF9lbmFibGVfcnRhX21hbmFnZXJcdTAwM2R0cnVlXHUwMDI2bGl2ZV9jaHVua19yZWFkYWhlYWRcdTAwM2QzXHUwMDI2bG9nX2NsaWNrX3dpdGhfbGF5ZXJfZnJvbV9lbGVtZW50X2luX2NvbW1hbmRfaGFuZGxlclx1MDAzZHRydWVcdTAwMjZsb2dfd2luZG93X29uZXJyb3JfZnJhY3Rpb25cdTAwM2QwLjFcdTAwMjZtYW5pZmVzdGxlc3NfcG9zdF9saXZlXHUwMDNkdHJ1ZVx1MDAyNm1hbmlmZXN0bGVzc19wb3N0X2xpdmVfdWZwaFx1MDAzZHRydWVcdTAwMjZtYXhfYm9keV9zaXplX3RvX2NvbXByZXNzXHUwMDNkNTAwMDAwXHUwMDI2bWF4X2NkZmVfcXVhbGl0eV9vcmRpbmFsXHUwMDNkMFx1MDAyNm1heF9wcmVmZXRjaF93aW5kb3dfc2VjX2Zvcl9saXZlc3RyZWFtX29wdGltaXphdGlvblx1MDAzZDEwXHUwMDI2bWF4X3Jlc29sdXRpb25fZm9yX3doaXRlX25vaXNlXHUwMDNkMzYwXHUwMDI2bWR4X2VuYWJsZV9wcml2YWN5X2Rpc2Nsb3N1cmVfdWlcdTAwM2R0cnVlXHUwMDI2bWR4X2xvYWRfY2FzdF9hcGlfYm9vdHN0cmFwX3NjcmlwdFx1MDAzZHRydWVcdTAwMjZtaW5fcHJlZmV0Y2hfb2Zmc2V0X3NlY19mb3JfbGl2ZXN0cmVhbV9vcHRpbWl6YXRpb25cdTAwM2QyMFx1MDAyNm10YV9kcmNfbXV0dWFsX2V4Y2x1c2lvbl9yZW1vdmFsXHUwMDNkdHJ1ZVx1MDAyNm11c2ljX2VuYWJsZV9zaGFyZWRfYXVkaW9fdGllcl9sb2dpY1x1MDAzZHRydWVcdTAwMjZtd2ViX2FjY291bnRfbGlua2luZ19ub2FwcFx1MDAzZHRydWVcdTAwMjZtd2ViX2RlYnVnX3N0aWNreV9zZXR0aW5nc1x1MDAzZHRydWVcdTAwMjZtd2ViX2VuYWJsZV9jbGlja190b19wbGF5X3BhdXNlXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfZW5hYmxlX2ZpbmVfc2NydWJiaW5nX2Zvcl9yZWNzXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfZW5hYmxlX21vcmVfY2h1bmtzXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfbmF0aXZlX2NvbnRyb2xfaW5fZmF1eF9mdWxsc2NyZWVuX3NoYXJlZFx1MDAzZHRydWVcdTAwMjZtd2ViX3BsYXllcl9jb250cm9sX29uX2hvdmVyXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfcHJvZ3Jlc3NfYmFyX3NlZWtfb25fbW91c2VfY2xpY2tcdTAwM2R0cnVlXHUwMDI2bXdlYl9zaG9ydHNfY29tbWVudHNfcGFuZWxfaWRfY2hhbmdlXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfdXNlX21pY3JvZm9ybWF0X3RpdGxlX2Zvcl9wb3N0c1x1MDAzZHRydWVcdTAwMjZuZXR3b3JrX3BvbGxpbmdfaW50ZXJ2YWxcdTAwM2QzMDAwMFx1MDAyNm5ldHdvcmtsZXNzX2xvZ2dpbmdcdTAwM2R0cnVlXHUwMDI2bmV3X2NvZGVjc19zdHJpbmdfYXBpX3VzZXNfbGVnYWN5X3N0eWxlXHUwMDNkdHJ1ZVx1MDAyNm5vX2NsaWVudF92ZV9hdHRhY2hfdW5sZXNzX3Nob3duXHUwMDNkdHJ1ZVx1MDAyNm5vX2ZpbGxlcl92aWRlb19mb3Jfc3NhX3BsYXliYWNrc1x1MDAzZHRydWVcdTAwMjZvdmVycmlkZV9kcm1fcmVxdWlyZWRfcGxheWJhY2tfcG9saWN5X2NoYW5uZWxzXHUwMDNkW11cdTAwMjZwYWdlaWRfYXNfaGVhZGVyX3dlYlx1MDAzZHRydWVcdTAwMjZwbGF5ZXJfYWRzX3NldF9hZGZvcm1hdF9vbl9jbGllbnRcdTAwM2R0cnVlXHUwMDI2cGxheWVyX2Jvb3RzdHJhcF9tZXRob2RcdTAwM2R0cnVlXHUwMDI2cGxheWVyX2NvbnRyb2xzX3VzZV9wbGF5ZXJfYXBpX2NvbnRleHRcdTAwM2R0cnVlXHUwMDI2cGxheWVyX2NvbnRyb2xzX3ZvbHVtZV9jb250cm9sc191c2VfcGxheWVyX3Byb3BzXHUwMDNkdHJ1ZVx1MDAyNnBsYXllcl9kZXN0cm95X29sZF92ZXJzaW9uXHUwMDNkdHJ1ZVx1MDAyNnBsYXllcl9lbmFibGVfcGxheWJhY2tfcGxheWxpc3RfY2hhbmdlXHUwMDNkdHJ1ZVx1MDAyNnBsYXllcl9uZXdfaW5mb19jYXJkX2Zvcm1hdFx1MDAzZHRydWVcdTAwMjZwbGF5ZXJfdW5kZXJsYXlfbWluX3BsYXllcl93aWR0aFx1MDAzZDc2OC4wXHUwMDI2cGxheWVyX3VuZGVybGF5X3ZpZGVvX3dpZHRoX2ZyYWN0aW9uXHUwMDNkMC42XHUwMDI2cGxheWVyX3dlYl9jYW5hcnlfc3RhZ2VcdTAwM2Q0XHUwMDI2cGxheWVyX3dlYl9pc19jYW5hcnlcdTAwM2R0cnVlXHUwMDI2cGxheWVyX3dlYl9pc19jYW5hcnlfY29udHJvbFx1MDAzZHRydWVcdTAwMjZwbGF5cmVhZHlfZmlyc3RfcGxheV9leHBpcmF0aW9uXHUwMDNkLTFcdTAwMjZwb2RjYXN0c192aWRlb3N0YXRzX2RlZmF1bHRfZmx1c2hfaW50ZXJ2YWxfc2Vjb25kc1x1MDAzZDBcdTAwMjZwb2x5bWVyX2JhZF9idWlsZF9sYWJlbHNcdTAwM2R0cnVlXHUwMDI2cG9seW1lcl92ZXJpZml5X2FwcF9zdGF0ZVx1MDAzZHRydWVcdTAwMjZwb3B1bGF0ZV9mb3JtYXRfc2V0X2luZm9faW5fY2RmZV9mb3JtYXRzXHUwMDNkdHJ1ZVx1MDAyNnByZXNraXBfYnV0dG9uX3N0eWxlX2Fkc19iYWNrZW5kXHUwMDNkXHUwMDI2cHJveGltYV9hdXRvX3RocmVzaG9sZF9tYXhfbmV0d29ya19pbnRlcnJ1cHRpb25fZHVyYXRpb25fbXNcdTAwM2QwXHUwMDI2cHJveGltYV9hdXRvX3RocmVzaG9sZF9taW5fYmFuZHdpZHRoX2VzdGltYXRlX2J5dGVzX3Blcl9zZWNcdTAwM2QwXHUwMDI2cW9lX3NlbmRfYW5kX3dyaXRlXHUwMDNkdHJ1ZVx1MDAyNnF1YWxpdHlfY2FwX2Zvcl9pbmxpbmVfbm9uX2FwcF9hZHNcdTAwM2QwXHUwMDI2cXVhbGl0eV9jYXBfZm9yX2lubGluZV9wbGF5YmFja1x1MDAzZDBcdTAwMjZxdWFsaXR5X2NhcF9mb3JfaW5saW5lX3BsYXliYWNrX2Fkc1x1MDAzZDBcdTAwMjZyZWFkX2FoZWFkX21vZGVsX25hbWVcdTAwM2RcdTAwMjZyZWplY3RfaGlkZGVuX2xpdmVfZm9ybWF0c1x1MDAzZHRydWVcdTAwMjZyZWplY3RfbGl2ZV92cDlfbXFfY2xlYXJfd2l0aF9ub19hYnJfbGFkZGVyXHUwMDNkdHJ1ZVx1MDAyNnJlbGF4X2JnX25vdGlmaWNhdGlvbl90aHJvdHRsaW5nXHUwMDNkdHJ1ZVx1MDAyNnJlbW92ZV9jaGV2cm9uX2Zyb21fYWRfZGlzY2xvc3VyZV9iYW5uZXJfaDVcdTAwM2R0cnVlXHUwMDI2cmVtb3ZlX21hc3RoZWFkX2NoYW5uZWxfYmFubmVyX29uX3JlZnJlc2hcdTAwM2R0cnVlXHUwMDI2cmVtb3ZlX3Nsb3RfaWRfZXhpdGVkX3RyaWdnZXJfZm9yX2RhaV9pbl9wbGF5ZXJfc2xvdF9leHBpcmVcdTAwM2R0cnVlXHUwMDI2cmVwbGFjZV9wbGF5YWJpbGl0eV9yZXRyaWV2ZXJfaW5fd2F0Y2hcdTAwM2R0cnVlXHUwMDI2cm9zY2FzXHUwMDNkdHJ1ZVx1MDAyNnNhYnJfZW5hYmxlX2hvc3RfZmFsbGJhY2tcdTAwM2R0cnVlXHUwMDI2c2VsZl9wb2RkaW5nX2hlYWRlcl9zdHJpbmdfdGVtcGxhdGVcdTAwM2RzZWxmX3BvZGRpbmdfaW50ZXJzdGl0aWFsX21lc3NhZ2VcdTAwMjZzZWxmX3BvZGRpbmdfbWlkcm9sbF9jaG9pY2Vfc3RyaW5nX3RlbXBsYXRlXHUwMDNkc2VsZl9wb2RkaW5nX21pZHJvbGxfY2hvaWNlXHUwMDI2c2VuZF9jb25maWdfaGFzaF90aW1lclx1MDAzZDBcdTAwMjZzZXJ2ZV9hZGFwdGl2ZV9mbXRzX2Zvcl9saXZlX3N0cmVhbXNcdTAwM2R0cnVlXHUwMDI2c2V0X21vY2tfaWRfYXNfZXhwZWN0ZWRfY29udGVudF9iaW5kaW5nXHUwMDNkXHUwMDI2c2hlbGxfbG9hZF9nY2ZcdTAwM2R0cnVlXHUwMDI2c2hvcnRlbl9pbml0aWFsX2dlbF9iYXRjaF90aW1lb3V0XHUwMDNkdHJ1ZVx1MDAyNnNob3J0c19tb2RlX3RvX3BsYXllcl9hcGlcdTAwM2R0cnVlXHUwMDI2c2hvdWxkX2F0dHJpYnV0ZV90b193YXRjaF93aXRoX3NvdXJjZVx1MDAzZFtdXHUwMDI2c2hvdWxkX2F0dHJpYnV0ZV92aWV3c190b193YXRjaF93aXRoX3NvdXJjZVx1MDAzZHRydWVcdTAwMjZzaW1wbHlfZW1iZWRkZWRfZW5hYmxlX2JvdGd1YXJkXHUwMDNkdHJ1ZVx1MDAyNnNsb3dfY29tcHJlc3Npb25zX2JlZm9yZV9hYmFuZG9uX2NvdW50XHUwMDNkNFx1MDAyNnNtYWxsX2F2YXRhcnNfZm9yX2NvbW1lbnRzXHUwMDNkdHJ1ZVx1MDAyNnNtYXJ0X3NraXBfd2ViX3BsYXllcl9iYXJfbWluX2hvdmVyX2xlbmd0aF9taWxsaXNlY29uZHNcdTAwM2QxMDAwXHUwMDI2c21hcnRlcl92ZV9kZWR1cHBpbmdcdTAwM2R0cnVlXHUwMDI2c3BlZWRtYXN0ZXJfY2FuY2VsbGF0aW9uX21vdmVtZW50X2RwXHUwMDNkMTBcdTAwMjZzcGVlZG1hc3Rlcl9wbGF5YmFja19yYXRlXHUwMDNkMi4wXHUwMDI2c3BlZWRtYXN0ZXJfdG91Y2hfYWN0aXZhdGlvbl9tc1x1MDAzZDUwMFx1MDAyNnN0b3BfaGFuZGxpbmdfY2xpY2tfZm9yX25vbl9yZW5kZXJpbmdfb3ZlcmxheV9sYXlvdXRcdTAwM2R0cnVlXHUwMDI2c3RyZWFtaW5nX2RhdGFfZW1lcmdlbmN5X2l0YWdfYmxhY2tsaXN0XHUwMDNkW11cdTAwMjZzdWJzdGl0dXRlX2FkX2Nwbl9tYWNyb19pbl9zc2RhaVx1MDAzZHRydWVcdTAwMjZzdXBwcmVzc19lcnJvcl8yMDRfbG9nZ2luZ1x1MDAzZHRydWVcdTAwMjZ0cmltX2FkYXB0aXZlX2Zvcm1hdHNfc2lnbmF0dXJlX2NpcGhlcl9mb3Jfc2Ficl9jb250ZW50XHUwMDNkdHJ1ZVx1MDAyNnR2aHRtbDVfdW5wbHVnZ2VkX3ByZWxvYWRfY2FjaGVfc2l6ZVx1MDAzZDVcdTAwMjZ1c2VfY3VlX3JhbmdlX21hcmtlcl9wb3NpdGlvblx1MDAzZHRydWVcdTAwMjZ1c2VfZXZlbnRfdGltZV9tc19oZWFkZXJcdTAwM2R0cnVlXHUwMDI2dXNlX2V4dHJhX3JlYWRhaGVhZF9ub3JtYWxfbGF0ZW5jeV9mcmFtZV9sZXZlbF9zdHJlYW1pbmdfaW5fYmFja2VuZF9leHBlcmltZW50XHUwMDNkWzQ1Nzk3MTUwXVx1MDAyNnVzZV9maWZvX2Zvcl9uZXR3b3JrbGVzc1x1MDAzZHRydWVcdTAwMjZ1c2VfZ2VuZXJhdGVkX21lZGlhX2tleXNfaW5fZmFpcnBsYXlfcmVxdWVzdHNcdTAwM2R0cnVlXHUwMDI2dXNlX2lubGluZWRfcGxheWVyX3JwY1x1MDAzZHRydWVcdTAwMjZ1c2VfbmV3X2NvZGVjc19zdHJpbmdfYXBpXHUwMDNkdHJ1ZVx1MDAyNnVzZV9wbGF5YWJpbGl0eV9yZXN1bHRfZm9yX2Nhbl9wbGF5X3N0YXR1c1x1MDAzZHRydWVcdTAwMjZ1c2VfcmVxdWVzdF90aW1lX21zX2hlYWRlclx1MDAzZHRydWVcdTAwMjZ1c2VfcnRhX2Zvcl9wbGF5ZXJcdTAwM2R0cnVlXHUwMDI2dXNlX3Nlc3Npb25fYmFzZWRfc2FtcGxpbmdcdTAwM2R0cnVlXHUwMDI2dXNlX3RodW1ibmFpbF9vdmVybGF5X3RpbWVfc3RhdHVzX3JlbmRlcmVyX2Zvcl9saXZlX2JhZGdlXHUwMDNkdHJ1ZVx1MDAyNnZhcmlhYmxlX2J1ZmZlcl90aW1lb3V0X21zXHUwMDNkMFx1MDAyNnZwOV9kcm1fbGl2ZVx1MDAzZHRydWVcdTAwMjZ2c3NfZmluYWxfcGluZ19zZW5kX2FuZF93cml0ZVx1MDAzZHRydWVcdTAwMjZ2c3NfcGxheWJhY2tfdXNlX3NlbmRfYW5kX3dyaXRlXHUwMDNkdHJ1ZVx1MDAyNnZzc191c2VfcG9zdF9yZXF1ZXN0XHUwMDNkdHJ1ZVx1MDAyNndlYl9hcGlfdXJsXHUwMDNkdHJ1ZVx1MDAyNndlYl9hdHRlbnRpb25fbG9nZ2luZ19lbmFibGVkXHUwMDNkdHJ1ZVx1MDAyNndlYl9hdHRlbnRpb25fbG9nZ2luZ19leHBvcnRfdG9fZ2VsXHUwMDNkdHJ1ZVx1MDAyNndlYl9hdHRlbnRpb25fbG9nZ2luZ19zY3JvbGxfdGhyb3R0bGVcdTAwM2Q1MDAuMFx1MDAyNndlYl9idXR0b25fdmlld19tb2RlbF9ub25fbnVsbGlzaF9kYXRhXHUwMDNkdHJ1ZVx1MDAyNndlYl9idXR0b25fdm1fcmVmYWN0b3JfZGlzYWJsZWRcdTAwM2R0cnVlXHUwMDI2d2ViX2NsaWVudF92ZXJzaW9uX292ZXJyaWRlXHUwMDNkXHUwMDI2d2ViX2NvbGxlY3Rfb2ZmbGluZV9zdGF0ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfY3NpX2FjdGlvbl9zYW1wbGluZ19lbmFibGVkXHUwMDNkdHJ1ZVx1MDAyNndlYl9kZWR1cGVfdmVfZ3JhZnRpbmdcdTAwM2R0cnVlXHUwMDI2d2ViX2Rpc2FibGVfY2FwdGlvbl9vcGFjaXR5X2tleWJvYXJkX3Nob3J0Y3V0c1x1MDAzZHRydWVcdTAwMjZ3ZWJfZGlzYWJsZV9jaGlwX3ZpZXdfbW9kZWxfbXV0YXRpb25cdTAwM2R0cnVlXHUwMDI2d2ViX2VuYWJsZV9hYl9yc3BfY2xcdTAwM2R0cnVlXHUwMDI2d2ViX2VuYWJsZV9jYXB0aW9uX2xhbmd1YWdlX3ByZWZlcmVuY2Vfc3RpY2tpbmVzc1x1MDAzZHRydWVcdTAwMjZ3ZWJfZW5hYmxlX2NvdXJzZV9pY29uX3VwZGF0ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfZW5hYmxlX2VudGl0eV91cHNlcnRfb25fdXBkYXRlXHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfZXJyb3JfMjA0XHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfa2V5Ym9hcmRfc2hvcnRjdXRfZm9yX3RpbWVseV9hY3Rpb25zXHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfc2hvcHBpbmdfdGltZWx5X3NoZWxmX2NsaWVudFx1MDAzZHRydWVcdTAwMjZ3ZWJfZW5hYmxlX3NtYWxsX3NwZWVkbWFzdGVyXHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfdGltZWx5X2FjdGlvbnNcdTAwM2R0cnVlXHUwMDI2d2ViX2ZpeF9maW5lX3NjcnViYmluZ19mYWxzZV9wbGF5XHUwMDNkdHJ1ZVx1MDAyNndlYl9mb3JlZ3JvdW5kX2hlYXJ0YmVhdF9pbnRlcnZhbF9tc1x1MDAzZDI4MDAwXHUwMDI2d2ViX2Z1bGxzY3JlZW5fc2hvcnRzXHUwMDNkdHJ1ZVx1MDAyNndlYl9mdWxsc2NyZWVuX3Nob3J0c19tZW51X2l0ZW1cdTAwM2R0cnVlXHUwMDI2d2ViX2djZl9oYXNoZXNfaW5uZXJ0dWJlXHUwMDNkdHJ1ZVx1MDAyNndlYl9nZWxfZGVib3VuY2VfbXNcdTAwM2QxMDAwMFx1MDAyNndlYl9nZWxfdGltZW91dF9jYXBcdTAwM2R0cnVlXHUwMDI2d2ViX2hpZGVfbmV4dF9idXR0b25cdTAwM2R0cnVlXHUwMDI2d2ViX2hpZGVfd2F0Y2hfaW5mb19lbXB0eVx1MDAzZHRydWVcdTAwMjZ3ZWJfaGlkZV95b3VyX2RhdGFfb25fYXV0b21vdGl2ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfbG9hZF9wcmVkaWN0aW9uX3RocmVzaG9sZFx1MDAzZDAuM1x1MDAyNndlYl9sb2dnaW5nX21heF9iYXRjaFx1MDAzZDEwMFx1MDAyNndlYl9tYXhfdHJhY2luZ19ldmVudHNcdTAwM2Q1MFx1MDAyNndlYl9tb25vbWVyX3dlYl9jb21wb25lbnRfd3JhcHBlcl9oYW5kbGVfZXJyb3JzXHUwMDNkdHJ1ZVx1MDAyNndlYl9uYXZpZ2F0aW9uX3ByZWRpY3Rpb25fdGhyZXNob2xkXHUwMDNkMC4xXHUwMDI2d2ViX25vbl9uYXZpZ2F0aW5nX2F0YWdcdTAwM2R0cnVlXHUwMDI2d2ViX29wX3NpZ25hbF90eXBlX2Jhbmxpc3RcdTAwM2RbXVx1MDAyNndlYl9wbGF5YmFja19hc3NvY2lhdGVkX3ZlXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfYXBpX2xvZ2dpbmdfZnJhY3Rpb25cdTAwM2QwLjAxXHUwMDI2d2ViX3BsYXllcl9iaWdfbW9kZV9zY3JlZW5fd2lkdGhfY3V0b2ZmXHUwMDNkNDAwMVx1MDAyNndlYl9wbGF5ZXJfZGVmYXVsdF9wZWVraW5nX3B4XHUwMDNkMzZcdTAwMjZ3ZWJfcGxheWVyX2Rpc2FibGVfZ3JpZF9vbl9vZmZsaW5lX3NsYXRlXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfZW5hYmxlX2ZlYXR1cmVkX3Byb2R1Y3RfYmFubmVyX2V4Y2x1c2l2ZXNfb25fZGVza3RvcFx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX2VuYWJsZV9mZWF0dXJlZF9wcm9kdWN0X2Jhbm5lcl9wcm9tb3Rpb25fdGV4dF9vbl9kZXNrdG9wXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfZnJvc3RlZF9nbGFzc19ibHVyX3JhZGl1c1x1MDAzZDE2XHUwMDI2d2ViX3BsYXllcl9mcm9zdGVkX2dsYXNzX2JsdXJfcmFkaXVzX2Zsb2F0XHUwMDNkMTYuMFx1MDAyNndlYl9wbGF5ZXJfaW5uZXJ0dWJlX3BsYXlsaXN0X3VwZGF0ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX2ludmlzaWJsZV9mdWxsc2NyZWVuX2J1dHRvblx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX2lwcF9jYW5hcnlfdHlwZV9mb3JfbG9nZ2luZ1x1MDAzZGNvbnRyb2xcdTAwMjZ3ZWJfcGxheWVyX2xvZ19jbGlja19iZWZvcmVfZ2VuZXJhdGluZ192ZV9jb252ZXJzaW9uX3BhcmFtc1x1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX21pbmlwbGF5ZXJfaW5fY29udGV4dF9tZW51XHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfbW91c2VfaWRsZV93YWl0X3RpbWVfbXNcdTAwM2QzMDAwXHUwMDI2d2ViX3BsYXllcl9tdXNpY192aXN1YWxpemVyX3RyZWF0bWVudFx1MDAzZGZha2VcdTAwMjZ3ZWJfcGxheWVyX29mZmxpbmVfcGxheWxpc3RfYXV0b19yZWZyZXNoXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfcGxheWFibGVfc2VxdWVuY2VzX3JlZmFjdG9yXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfcXVpY2tfaGlkZV90aW1lb3V0X21zXHUwMDNkMjUwXHUwMDI2d2ViX3BsYXllcl9zZWVrX2NoYXB0ZXJzX2J5X3Nob3J0Y3V0XHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfc2Vla19vdmVybGF5X2FkZGl0aW9uYWxfYXJyb3dfdGhyZXNob2xkXHUwMDNkMjAwXHUwMDI2d2ViX3BsYXllcl9zZWVrX292ZXJsYXlfZHVyYXRpb25fYnVtcF9zY2FsZVx1MDAzZDAuOVx1MDAyNndlYl9wbGF5ZXJfc2Vla19vdmVybGF5X2xpbmdlcl9kdXJhdGlvblx1MDAzZDEwMDBcdTAwMjZ3ZWJfcGxheWVyX3NlbnRpbmVsX2lzX3VuaXBsYXllclx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX3Nob3dfbXVzaWNfaW5fdGhpc192aWRlb19ncmFwaGljXHUwMDNkdmlkZW9fdGh1bWJuYWlsXHUwMDI2d2ViX3BsYXllcl9zc19kYWlfYWRfZmV0Y2hpbmdfdGltZW91dF9tc1x1MDAzZDE1MDAwXHUwMDI2d2ViX3BsYXllcl90b3VjaF9pZGxlX3dhaXRfdGltZV9tc1x1MDAzZDQwMDBcdTAwMjZ3ZWJfcGxheWVyX3RyYW5zZmVyX3RpbWVvdXRfdGhyZXNob2xkX21zXHUwMDNkMTA4MDAwMDBcdTAwMjZ3ZWJfcGxheWVyX3VwZGF0ZWRfZW50cnlwb2ludFx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX3VzZV9jaW5lbWF0aWNfbGFiZWxfMlx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX3VzZV9uZXdfYXBpX2Zvcl9xdWFsaXR5X3B1bGxiYWNrXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfdXNlX3NjcmVlbl93aWR0aF9mb3JfYmlnX21vZGVcdTAwM2R0cnVlXHUwMDI2d2ViX3ByZWZldGNoX3ByZWxvYWRfdmlkZW9cdTAwM2R0cnVlXHUwMDI2d2ViX3Byb2dyZXNzX2Jhcl9kcmFnZ2FibGVcdTAwM2R0cnVlXHUwMDI2d2ViX3Byb3BhZ2F0ZV92aXNpYmlsaXR5X3RvX2FwcGxpY2F0aW9uX3N0YXRlXHUwMDNkdHJ1ZVx1MDAyNndlYl9yZW1peF9hbGxvd191cF90b18zeF9wbGF5YmFja19yYXRlXHUwMDNkdHJ1ZVx1MDAyNndlYl9yZW1vdmVfYnJva2VuX3N1YnNjcmliZV9lbmRzY3JlZW5cdTAwM2R0cnVlXHUwMDI2d2ViX3Nlc3Npb25fcmVwbGF5X21vdXNlbW92ZV9pbnRlcnZhbFx1MDAzZDBcdTAwMjZ3ZWJfc2Vzc2lvbl9yZXBsYXlfc2Nyb2xsX2ludGVydmFsXHUwMDNkMFx1MDAyNndlYl9zZXNzaW9uX3JlcGxheV9zZW5kX2FmdGVyX3RpbWVvdXRcdTAwM2QwXHUwMDI2d2ViX3NldHRpbmdzX21lbnVfc3VyZmFjZV9jdXN0b21fcGxheWJhY2tcdTAwM2R0cnVlXHUwMDI2d2ViX3NldHRpbmdzX3VzZV9pbnB1dF9zbGlkZXJcdTAwM2R0cnVlXHUwMDI2d2ViX3Nob3J0c19hdWRpb190cmFja19waWNrZXJcdTAwM2R0cnVlXHUwMDI2d2ViX3RyYWNpbmdfZW5hYmxlZF9zcGFuc1x1MDAzZFtldmVudCwgY29tbWFuZF1cdTAwMjZ3ZWJfdHJhY2luZ19zZXNzaW9uX3JlcGxheVx1MDAzZDBcdTAwMjZ3ZWJfdW5pZmllZF9mZXRjaFx1MDAzZHRydWVcdTAwMjZ3ZWJfd2F0Y2hfZGlzYWJsZV9hY2NvdW50X2xldmVsX2NhcHRpb25zX3NldHRpbmdzXHUwMDNkdHJ1ZVx1MDAyNndlYnBvX2V4aXRfb25fbmV0X2Vyclx1MDAzZHRydWVcdTAwMjZ3aWxfaWNvbl9tYXhfY29uY3VycmVudF9mZXRjaGVzXHUwMDNkOTk5OVx1MDAyNndpel9kaWZmX292ZXJ3cml0YWJsZVx1MDAzZHRydWVcdTAwMjZ3aXpfd3JhcHBlcl9jYWxsYmFja19wcm9wc19maXhcdTAwM2R0cnVlXHUwMDI2d29mZmxlX2VuYWJsZV9kb3dubG9hZF9zdGF0dXNcdTAwM2R0cnVlXHUwMDI2d3JpdGVfcmVsb2FkX3BsYXllcl9yZXNwb25zZV90b2tlbl90b191c3RyZWFtZXJfY29uZmlnX2Zvcl92b2RcdTAwM2R0cnVlXHUwMDI2d3NfYXYxX21heF9oZWlnaHRfZmxvb3JcdTAwM2QwXHUwMDI2d3NfYXYxX21heF93aWR0aF9mbG9vclx1MDAzZDBcdTAwMjZ3c191c2VfY2VudHJhbGl6ZWRfaHFhX2ZpbHRlclx1MDAzZHRydWVcdTAwMjZ3dWdfbmV0d29ya2luZ19nemlwX3JlcXVlc3RcdTAwM2R0cnVlXHUwMDI2eXRjc2lfZGVidWdfbWF4X3NpemVcdTAwM2QxMDBcdTAwMjZ5dGlkYl9yZW1ha2VfZGJfcmV0cmllc1x1MDAzZDFcdTAwMjZ5dGlkYl9yZW9wZW5fZGJfcmV0cmllc1x1MDAzZDBcdTAwMjZ5dGlkYl90cmFuc2FjdGlvbl9lbmRlZF9ldmVudF9yYXRlX2xpbWl0XHUwMDNkMC4wMiIsInN0YXJ0TXV0ZWQiOmZhbHNlLCJtb2JpbGVJcGhvbmVTdXBwb3J0c0lubGluZVBsYXliYWNrIjp0cnVlLCJpc01vYmlsZURldmljZSI6ZmFsc2UsImNzcE5vbmNlIjoiOElucWZmQWdIVi1lOUFTWDk5ZlpsUSIsImNhbmFyeVN0YXRlIjoiaG9sZGJhY2siLCJlbmFibGVDc2lMb2dnaW5nIjp0cnVlLCJsb2FkZXJVcmwiOiJodHRwczovL3VuaXotY29pbnpsdGQuY29tLyIsImRpc2FibGVBdXRvbmF2IjpmYWxzZSwiaXNFbWJlZCI6dHJ1ZSwiZGlzYWJsZUNhc3RBcGkiOmZhbHNlLCJzZXJpYWxpemVkRW1iZWRDb25maWciOiJ7fSIsImRpc2FibGVNZHhDYXN0IjpmYWxzZSwiZGF0YXN5bmNJZCI6IlYwNmUwY2NjMXx8Iiwic3RvcmVVc2VyVm9sdW1lIjp0cnVlLCJkaXNhYmxlUGFpZENvbnRlbnRPdmVybGF5Ijp0cnVlLCJlbmNyeXB0ZWRIb3N0RmxhZ3MiOiJBQ21ibEJVOWxRdXZPS29OMWZHX1RYS2xYbDlWOFREZm51eEtFRDU4bUxoOEE0azBlMEdWNWlMT2FubUxTNFhxRzRnUGZYM2hEVnRlLVZBbXRvREp5Skltcl9SR08wRlE3R3A5ZVU0TDRSekhFdGFnOVEyZkExNTN5MmtJWWlSYSIsImNhbmFyeVN0YWdlIjoiTEFSR0UiLCJ0cnVzdGVkSnNVcmwiOnsicHJpdmF0ZURvTm90QWNjZXNzT3JFbHNlVHJ1c3RlZFJlc291cmNlVXJsV3JhcHBlZFZhbHVlIjoiL3MvcGxheWVyLzdhNzk2OWMyL3BsYXllcl9lbWJlZF9lczYudmZsc2V0L2VuX1VTL2Jhc2UuanMifSwidHJ1c3RlZENzc1VybCI6eyJwcml2YXRlRG9Ob3RBY2Nlc3NPckVsc2VUcnVzdGVkUmVzb3VyY2VVcmxXcmFwcGVkVmFsdWUiOiIvcy9wbGF5ZXIvN2E3OTY5YzIvd3d3LXBsYXllci5jc3MifSwiaG91c2VCcmFuZFVzZXJTdGF0dXMiOiJub3RfcHJlc2VudCIsImVtYmVkc0VuYWJsZUVtYzNkcyI6dHJ1ZSwiZGlzYWJsZU9yZ2FuaWNVaSI6dHJ1ZSwiZW5hYmxlU2Fick9uRW1iZWQiOmZhbHNlLCJzZXJpYWxpemVkQ2xpZW50RXhwZXJpbWVudEZsYWdzIjoiNDU3MTgxNzVcdTAwM2QwLjBcdTAwMjY0NTcxODE3Nlx1MDAzZDAuMDFcdTAwMjY0NTcyNTUzOFx1MDAzZDAuMFx1MDAyNjQ1NzI1NTM5XHUwMDNkMC4wXHUwMDI2NDU3MjU1NDBcdTAwM2QwLjBcdTAwMjY0NTcyNTU0MVx1MDAzZDAuMFx1MDAyNjQ1NzI1NTQyXHUwMDNkMC4wXHUwMDI2NDU3MjU1NDNcdTAwM2QwLjBcdTAwMjY0NTcyODU1M1x1MDAzZHRydWVcdTAwMjY0NTcyODU3Mlx1MDAzZHRydWVcdTAwMjY0NTcyOTIxNVx1MDAzZHRydWVcdTAwMjY0NTczMjcwNFx1MDAzZHRydWVcdTAwMjY0NTczMjc5MVx1MDAzZHRydWVcdTAwMjY0NTczNTQyOFx1MDAzZDQwMDAuMFx1MDAyNjQ1NzM3NDg4XHUwMDNkMC4wXHUwMDI2NDU3Mzc0ODlcdTAwM2QwLjBcdTAwMjY0NTczOTAyM1x1MDAzZDAuMFx1MDAyNjQ1NzQxMzM5XHUwMDNkMC4wXHUwMDI2NDU3NDE3NzNcdTAwM2QwLjBcdTAwMjY0NTc0MzIyOFx1MDAzZDAuMFx1MDAyNjQ1NzQ1NjEwXHUwMDNkdHJ1ZVx1MDAyNjQ1NzQ2OTY2XHUwMDNkMC4wXHUwMDI2NDU3NDY5NjdcdTAwM2QwLjBcdTAwMjY0NTc0NzA1M1x1MDAzZDAuMFx1MDAyNjQ1NzUwOTQ3XHUwMDNkMTAyNDBcdTAwMjY0NTc1NjIwMVx1MDAzZHRydWVcdTAwMjY0NTc1Njg3Mlx1MDAzZDAuMFx1MDAyNjQ1NzU3NDI2XHUwMDNkMC4wXHUwMDI2NDU3NTc0MjdcdTAwM2QwLjBcdTAwMjY0NTc1Nzc1MFx1MDAzZDAuMFx1MDAyNjQ1NzU3OTU3XHUwMDNkMC4wXHUwMDI2NDU3NTg0NjdcdTAwM2QwLjBcdTAwMjY0NTc2MDAxOFx1MDAzZHRydWVcdTAwMjY0NTc2MTc2MFx1MDAzZDIwMFx1MDAyNjQ1NzYyODM4XHUwMDNkMFx1MDAyNjQ1NzY0MjE3XHUwMDNkMC4wXHUwMDI2NDU3NjQyNTJcdTAwM2QwLjBcdTAwMjY0NTc2NDUyM1x1MDAzZDAuMFx1MDAyNjQ1NzY0NTI0XHUwMDNkMC4wXHUwMDI2NDU3NjQ1OTNcdTAwM2QwLjBcdTAwMjY0NTc2NTA3N1x1MDAzZHRydWVcdTAwMjY0NTc2NTU2OFx1MDAzZDAuMFx1MDAyNjQ1NzY1NjAyXHUwMDNkMC4wXHUwMDI2NDU3NjU2ODBcdTAwM2R0cnVlXHUwMDI2NDU3NjY1MTFcdTAwM2R0cnVlXHUwMDI2NDU3Njc3NjNcdTAwM2QwLjBcdTAwMjY0NTc2Nzk0M1x1MDAzZDAuMFx1MDAyNjQ1NzY4MzQwXHUwMDNkMC4wXHUwMDI2NDU3Njg0MzBcdTAwM2QwLjBcdTAwMjY0NTc2OTExOVx1MDAzZHRydWVcdTAwMjY0NTc2OTIxNFx1MDAzZDAuMFx1MDAyNjQ1NzcwMDAxXHUwMDNkMC4wXHUwMDI2NDU3NzAwMDJcdTAwM2QwLjBcdTAwMjY0NTc3MDEzNVx1MDAzZHRydWVcdTAwMjY0NTc3MTI4OFx1MDAzZHRydWVcdTAwMjY0NTc3MTg5MFx1MDAzZDAuMFx1MDAyNjQ1NzczNjAzXHUwMDNkMC4wXHUwMDI2NDU3NzM2MDRcdTAwM2QwLjBcdTAwMjY0NTc3NTc1N1x1MDAzZHRydWVcdTAwMjY0NTc3NTc5MVx1MDAzZDAuMFx1MDAyNjQ1Nzc1NzkyXHUwMDNkMC4wXHUwMDI2NDU3NzYxOTBcdTAwM2QwLjBcdTAwMjY0NTc3ODY2M1x1MDAzZDAuMFx1MDAyNjQ1Nzc4NjcxXHUwMDNkMC4wXHUwMDI2NDU3ODM4NzVcdTAwM2R0cnVlXHUwMDI2NDU3ODQ0MzlcdTAwM2QwXHUwMDI2NDU3ODY0NDNcdTAwM2QwLjBcdTAwMjY0NTc4Nzk0OFx1MDAzZHRydWVcdTAwMjY0NTc4OTQ3NFx1MDAzZHRydWVcdTAwMjY0NTc5MTExN1x1MDAzZDAuMFx1MDAyNjQ1NzkxMTE4XHUwMDNkMC4wXHUwMDI2NDU3OTExMTlcdTAwM2QwLjBcdTAwMjY0NTc5MTMyNlx1MDAzZHRydWVcdTAwMjY0NTc5MzcxMFx1MDAzZDAuMFx1MDAyNjQ1Nzk0NDQxXHUwMDNkMC4wXHUwMDI2NDU3OTc3MjFcdTAwM2R0cnVlXHUwMDI2NDU3OTc5NjNcdTAwM2QwLjBcdTAwMjY0NTgwMjEyM1x1MDAzZDAuMFx1MDAyNjQ1ODAzNzU0XHUwMDNkMC4wXHUwMDI2NDU4MDQ3NzFcdTAwM2QwLjBcdTAwMjY0NTgwNTY5NVx1MDAzZDAuMFx1MDAyNjQ1ODA2NTU1XHUwMDNkMlx1MDAyNjQ1ODA3NDMyXHUwMDNkMC4wXHUwMDI2NDU4MDc0ODRcdTAwM2RcdTAwMjY0NTgwNzc3MVx1MDAzZDAuMFx1MDAyNjQ1ODA3NzcyXHUwMDNkMC4wXHUwMDI2NDU4MDc3NzNcdTAwM2QwLjBcdTAwMjY0NTgwODc2Mlx1MDAzZDBcdTAwMjY0NTgxNDQ4MFx1MDAzZHRydWVcdTAwMjY0NTgxNTAxMVx1MDAzZDAuMFx1MDAyNjQ1ODE1NjMwXHUwMDNkMFx1MDAyNjQ1ODE2ODg4XHUwMDNkMC4wXHUwMDI2NDU4MTgxMjhcdTAwM2QwLjAifX0sIlhTUkZfRklFTERfTkFNRSI6InNlc3Npb25fdG9rZW4iLCJYU1JGX1RPS0VOIjoiUVVNNFptOXJVVzR0UWkxNmQzcDZhWFV5WmxKTVVHWmFXV1pxV0h4QlIzSmlTMkZ0TFhCVlJEbEJTMmc1VkU5ZlFXVlJURk5pTnpoaVlrWTRhV3hUU1dKSlEybERVelp0VFVWTlJYaG1NakE0TkdkaFRsbEtjVXBQYVRSbmVFNXpWRlk1YWxOMU0yTlVhakJ6UzJ4UlVtUnZRVTlFY0c1RmFIVjRWRlJvWjNNXHUwMDNkIiwiU0VSVkVSX1ZFUlNJT04iOiJwcm9kIiwiREFUQVNZTkNfSUQiOiJWMDZlMGNjYzF8fCIsIlNFUklBTElaRURfQ0xJRU5UX0NPTkZJR19EQVRBIjoiQ0tDMm5kTUdFUGIzMFJ3UXdZX1FIQkRhOTg0Y0VMamt6aHdReDQzU0hCRDhzczRjRU1uMmdCTVF2WXF3QlJEdjN0RWNFUG55MFJ3UTRPclJIQkNMOTg4Y0VJSE56aHdRbVkyeEJSRGV2TTRjRVBhcnNBVVE0TGZSSEJDdmtkRWNFTDZFMFJ3UWxlX1JIQkNEaDdnaUVLM2UwUndRek4tdUJSQ09rTkVjRUltd3pod1FBQkRwLU5FY0VLN1d6eHdRbmRDd0JSQzl0cTRGRUluazBSd1E4YlRRSEJDOW1iQUZFTXI3Z0JNUWlKRFJIQkNHNFlBVEVMeWswQndRdVBEUkhCQzMtSUFURUllc3pod1FuOC1BRXhDS2g3Z2lFSjJHdUNJUXBLblJIQkRFak5BY0VPdjcwUndRNjgzUUhCRDA2ZEVjS214RFFVMVRVM2hXUVMxYWNTMUVUR2xWUlhCUlEyNUJOelZHV0dGSlJrdHFWa1E1VVVSQlRIZEhYM2N6YTBKeVdVZHpkMWd6ZG1WclRFMXhRM05DUVU5UmNtZFFOMHB5WW10Q2RWTkdSamxFVFVKelUxTkNZM001ZUZObVdqRlJXR1JNVDFaSExXeEpaRUozUFQwd0FBJTNEJTNEIiwiUk9PVF9WRV9UWVBFIjoxNjYyMywiQ0xJRU5UX1BST1RPQ09MIjoiaDIiLCJDTElFTlRfVFJBTlNQT1JUIjoidGNwIiwiUExBWUVSX0NMSUVOVF9WRVJTSU9OIjoiMS4yMDI2MDcyMS4wOC4wMC1jYW5hcnlfY29udHJvbF8xLjIwMjYwNzI3LjAyLjAwIiwiVElNRV9DUkVBVEVEX01TIjoxNzg1MTU4NDMyODgwLCJWQUxJRF9TRVNTSU9OX1RFTVBEQVRBX0RPTUFJTlMiOlsieW91dHUuYmUiLCJ5b3V0dWJlLmNvbSIsInd3dy55b3V0dWJlLmNvbSIsIndlYi1ncmVlbi1xYS55b3V0dWJlLmNvbSIsIndlYi1yZWxlYXNlLXFhLnlvdXR1YmUuY29tIiwid2ViLWludGVncmF0aW9uLXFhLnlvdXR1YmUuY29tIiwibS55b3V0dWJlLmNvbSIsIm13ZWItZ3JlZW4tcWEueW91dHViZS5jb20iLCJtd2ViLXJlbGVhc2UtcWEueW91dHViZS5jb20iLCJtd2ViLWludGVncmF0aW9uLXFhLnlvdXR1YmUuY29tIiwic3R1ZGlvLnlvdXR1YmUuY29tIiwic3R1ZGlvLWdyZWVuLXFhLnlvdXR1YmUuY29tIiwic3R1ZGlvLWludGVncmF0aW9uLXFhLnlvdXR1YmUuY29tIl0sIkxPVFRJRV9VUkwiOnsicHJpdmF0ZURvTm90QWNjZXNzT3JFbHNlVHJ1c3RlZFJlc291cmNlVXJsV3JhcHBlZFZhbHVlIjoiL3MvZW1iZWRzLzMyZDJhYzgzL2xvdHRpZS1saWdodC52ZmxzZXQvbG90dGllLWxpZ2h0LmpzIn0sIklERU5USVRZX01FTUVOVE8iOnsidmlzaXRvcl9kYXRhIjoiQ2d0dmVIUlJUVWh3VUhsT2J5aWd0cDNUQmpJb0NnSk9UeElpRWg0U0hBc01EZzhRRVJJVEZCVVdGeGdaR2hzY0hSNGZJQ0VpSXlRbEppY2dFbUxmQWdyY0FqSXdMbGxVUFdkSU5WVmxhMWMzWkRGNVNsaElaSGxCVjFBNVJETnVkWFZtYkhSSlVEVlZNMHd0VDBwUVNWUmtabFp2TkZGR1pGVndSMGxzVHpGTmNtdDJVVzgyYXpacmJEQnFjVjl3VDFwQmJUQlpObE4wUWtkUVdrdHlWME5ZTFVsbE9GUXhlbmhWU2xjMllXSnRXWFZXVlRVelNXd3hWa1Z4TkhaVmN6VjJka3htWW1kYVIwaDZNV1ZCVEd0NGJtZHBXRGhpVlhOa1VrMXlNblpoUzB4VVdrb3dTVUpvY1RGNUxUSkZUVGhPT1RCcFNqQmplVmQ2UjI1b1ZVZDZUbmgxV25wSWR6bElXRVoxU1hkTFNYUnNXa3RTTTBwSk1FRlhZbmt0WlUxQ0xXRmxaRWQ0UmxWV2JuRnpaVWRtUVRGSWJIRmlibkZETlVWNWJYTldlalU1V0RSc1NFMTNhRFEwVDFsS1VtcGhhVmhGUldoRlpYUmhkREp4YzBoTWFEaDJNak5YT1hwSWJVdFBSVVV5V21oVU0wTkJjMWhWUTFvd1RHUkljSFp2YUUwMlFscHhOa2N3TXpCbWFubExPVTQxYlUxNlZXRTRaVjlHZHclM0QlM0QifSwiTVdFQl9TVVBQT1JUU19ET1VCTEVfVEFQX1RPX1NFRUsiOnRydWUsIlBMQVlFUl9WQVJTIjp7ImVtYmVkZGVkX3BsYXllcl9yZXNwb25zZSI6IntcInJlc3BvbnNlQ29udGV4dFwiOntcInNlcnZpY2VUcmFja2luZ1BhcmFtc1wiOlt7XCJzZXJ2aWNlXCI6XCJDU0lcIixcInBhcmFtc1wiOlt7XCJrZXlcIjpcImNcIixcInZhbHVlXCI6XCJXRUJfRU1CRURERURfUExBWUVSXCJ9LHtcImtleVwiOlwiY3ZlclwiLFwidmFsdWVcIjpcIjIuMjAyNjA3MjQuMDEuMDBcIn0se1wia2V5XCI6XCJ5dF9saVwiLFwidmFsdWVcIjpcIjBcIn0se1wia2V5XCI6XCJHZXRFbWJlZGRlZFBsYXllcl9yaWRcIixcInZhbHVlXCI6XCIweGNiMTYwMTk3N2RiZTE1ZGRcIn1dfSx7XCJzZXJ2aWNlXCI6XCJHRkVFREJBQ0tcIixcInBhcmFtc1wiOlt7XCJrZXlcIjpcImxvZ2dlZF9pblwiLFwidmFsdWVcIjpcIjBcIn1dfSx7XCJzZXJ2aWNlXCI6XCJHVUlERURfSEVMUFwiLFwicGFyYW1zXCI6W3tcImtleVwiOlwibG9nZ2VkX2luXCIsXCJ2YWx1ZVwiOlwiMFwifV19LHtcInNlcnZpY2VcIjpcIkVDQVRDSEVSXCIsXCJwYXJhbXNcIjpbe1wia2V5XCI6XCJjbGllbnQudmVyc2lvblwiLFwidmFsdWVcIjpcIjIuMjAyNjA3MjRcIn0se1wia2V5XCI6XCJjbGllbnQubmFtZVwiLFwidmFsdWVcIjpcIldFQl9FTUJFRERFRF9QTEFZRVJcIn1dfV0sXCJyZXNwb25zZUlkXCI6XCJJaE1JdS1lSnN2bnlsUU1WbzZqMEJ4M1NiRFRaXCIsXCJ3ZWJSZXNwb25zZUNvbnRleHRFeHRlbnNpb25EYXRhXCI6e1wiaGFzRGVjb3JhdGVkXCI6dHJ1ZX19LFwiZW1iZWRQcmV2aWV3XCI6e1widGh1bWJuYWlsUHJldmlld1JlbmRlcmVyXCI6e1widGl0bGVcIjp7XCJydW5zXCI6W3tcInRleHRcIjpcIk1BU1NJVkUgQ3J5cHRvIE1pbmluZyBGYXJtIFRvdXIgfCBCaXRjb2luLCBEYXNoLCBhbmQgR1BVIE1pbmluZyFcIn1dfSxcImRlZmF1bHRUaHVtYm5haWxcIjp7XCJ0aHVtYm5haWxzXCI6W3tcInVybFwiOlwiaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS80ZWtPY0RHMkQ4RS9kZWZhdWx0LmpwZ1wiLFwid2lkdGhcIjoxMjAsXCJoZWlnaHRcIjo5MH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpLzRla09jREcyRDhFL2hxZGVmYXVsdC5qcGc/c3FwXHUwMDNkLW9heW13RWJDS2dCRUY1SVZmS3JpcWtERGdnQkZRQUFpRUlZQVhBQndBRUdcXHUwMDI2cnNcdTAwM2RBT240Q0xESWcwRHNmNWhuU2liaWZpWlMwUjdHRFRuNGhnXCIsXCJ3aWR0aFwiOjE2OCxcImhlaWdodFwiOjk0fSx7XCJ1cmxcIjpcImh0dHBzOi8vaS55dGltZy5jb20vdmkvNGVrT2NERzJEOEUvaHFkZWZhdWx0LmpwZz9zcXBcdTAwM2Qtb2F5bXdFYkNNUUJFRzVJVmZLcmlxa0REZ2dCRlFBQWlFSVlBWEFCd0FFR1xcdTAwMjZyc1x1MDAzZEFPbjRDTEQ1bW5QajdjcE9KTG9yYVZyXzRkRTl2d19HZVFcIixcIndpZHRoXCI6MTk2LFwiaGVpZ2h0XCI6MTEwfSx7XCJ1cmxcIjpcImh0dHBzOi8vaS55dGltZy5jb20vdmkvNGVrT2NERzJEOEUvaHFkZWZhdWx0LmpwZz9zcXBcdTAwM2Qtb2F5bXdFY0NQWUJFSW9CU0ZYeXE0cXBBdzRJQVJVQUFJaENHQUZ3QWNBQkJnXHUwMDNkXHUwMDNkXFx1MDAyNnJzXHUwMDNkQU9uNENMQ1BteW4xejlZcGtfX3JHRDB1dW5ubHF3Rlp3d1wiLFwid2lkdGhcIjoyNDYsXCJoZWlnaHRcIjoxMzh9LHtcInVybFwiOlwiaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS80ZWtPY0RHMkQ4RS9tcWRlZmF1bHQuanBnXCIsXCJ3aWR0aFwiOjMyMCxcImhlaWdodFwiOjE4MH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpLzRla09jREcyRDhFL2hxZGVmYXVsdC5qcGc/c3FwXHUwMDNkLW9heW13RWNDTkFDRUx3QlNGWHlxNHFwQXc0SUFSVUFBSWhDR0FGd0FjQUJCZ1x1MDAzZFx1MDAzZFxcdTAwMjZyc1x1MDAzZEFPbjRDTENJU2FLWV9kMnk2T3BmemVtWXktOFB3NkgyUHdcIixcIndpZHRoXCI6MzM2LFwiaGVpZ2h0XCI6MTg4fSx7XCJ1cmxcIjpcImh0dHBzOi8vaS55dGltZy5jb20vdmkvNGVrT2NERzJEOEUvaHFkZWZhdWx0LmpwZ1wiLFwid2lkdGhcIjo0ODAsXCJoZWlnaHRcIjozNjB9LHtcInVybFwiOlwiaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS80ZWtPY0RHMkQ4RS9zZGRlZmF1bHQuanBnXCIsXCJ3aWR0aFwiOjY0MCxcImhlaWdodFwiOjQ4MH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpLzRla09jREcyRDhFL21heHJlc2RlZmF1bHQuanBnXCIsXCJ3aWR0aFwiOjE5MjAsXCJoZWlnaHRcIjoxMDgwfV19LFwicGxheUJ1dHRvblwiOntcImJ1dHRvblJlbmRlcmVyXCI6e1wic3R5bGVcIjpcIlNUWUxFX0RFRkFVTFRcIixcInNpemVcIjpcIlNJWkVfREVGQVVMVFwiLFwiaXNEaXNhYmxlZFwiOmZhbHNlLFwibmF2aWdhdGlvbkVuZHBvaW50XCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FvUThGc2lFd2k3NTRteS1mS1ZBeFdqcVBRSEhkSnNOTm5LQVFRWWkyb2tcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcInVybFwiOlwiL3dhdGNoP3ZcdTAwM2Q0ZWtPY0RHMkQ4RVwiLFwid2ViUGFnZVR5cGVcIjpcIldFQl9QQUdFX1RZUEVfV0FUQ0hcIixcInJvb3RWZVwiOjM4MzJ9fSxcIndhdGNoRW5kcG9pbnRcIjp7XCJ2aWRlb0lkXCI6XCI0ZWtPY0RHMkQ4RVwifX0sXCJhY2Nlc3NpYmlsaXR5XCI6e1wibGFiZWxcIjpcIlBsYXkgTUFTU0lWRSBDcnlwdG8gTWluaW5nIEZhcm0gVG91ciB8IEJpdGNvaW4sIERhc2gsIGFuZCBHUFUgTWluaW5nIVwifSxcInRyYWNraW5nUGFyYW1zXCI6XCJDQW9ROEZzaUV3aTc1NG15LWZLVkF4V2pxUFFISGRKc05Oa1x1MDAzZFwifX0sXCJ2aWRlb0RldGFpbHNcIjp7XCJlbWJlZGRlZFBsYXllck92ZXJsYXlWaWRlb0RldGFpbHNSZW5kZXJlclwiOntcImNoYW5uZWxUaHVtYm5haWxcIjp7XCJ0aHVtYm5haWxzXCI6W3tcInVybFwiOlwiaHR0cHM6Ly95dDMuZ2dwaHQuY29tL2FQWjZDa2Y2S2FnVk5uNWx0S2VZNUV6dE9kTFhzV0I3TGRxajlURVliM2dEZXB0cGNKbF9tOUNNdGtPaVRsOG54MUw5OW1rM0hBXHUwMDNkczY4LWMtay1jMHgwMGZmZmZmZi1uby1yalwiLFwid2lkdGhcIjo2OCxcImhlaWdodFwiOjY4fV19LFwiY29sbGFwc2VkUmVuZGVyZXJcIjp7XCJlbWJlZGRlZFBsYXllck92ZXJsYXlWaWRlb0RldGFpbHNDb2xsYXBzZWRSZW5kZXJlclwiOntcInRpdGxlXCI6e1wicnVuc1wiOlt7XCJ0ZXh0XCI6XCJNQVNTSVZFIENyeXB0byBNaW5pbmcgRmFybSBUb3VyIHwgQml0Y29pbiwgRGFzaCwgYW5kIEdQVSBNaW5pbmchXCIsXCJuYXZpZ2F0aW9uRW5kcG9pbnRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQWtRNDZJQ0loTUl1LWVKc3ZueWxRTVZvNmowQngzU2JEVFp5Z0VFR0l0cUpBXHUwMDNkXHUwMDNkXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJ1cmxcIjpcImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3dhdGNoP3ZcdTAwM2Q0ZWtPY0RHMkQ4RVwiLFwid2ViUGFnZVR5cGVcIjpcIldFQl9QQUdFX1RZUEVfVU5LTk9XTlwiLFwicm9vdFZlXCI6ODM3Njl9fSxcInVybEVuZHBvaW50XCI6e1widXJsXCI6XCJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92XHUwMDNkNGVrT2NERzJEOEVcIixcInRhcmdldFwiOlwiVEFSR0VUX05FV19XSU5ET1dcIn19fV19LFwic3VidGl0bGVcIjp7XCJydW5zXCI6W3tcInRleHRcIjpcIjY0OEsgdmlld3Mg4oCiIDEuMUsgY29tbWVudHNcIn1dfSxcInRyYWNraW5nUGFyYW1zXCI6XCJDQWtRNDZJQ0loTUl1LWVKc3ZueWxRTVZvNmowQngzU2JEVFpcIn19LFwiZXhwYW5kZWRSZW5kZXJlclwiOntcImVtYmVkZGVkUGxheWVyT3ZlcmxheVZpZGVvRGV0YWlsc0V4cGFuZGVkUmVuZGVyZXJcIjp7XCJ0aXRsZVwiOntcInJ1bnNcIjpbe1widGV4dFwiOlwiVm9za0NvaW5cIn1dfSxcInN1YnRpdGxlXCI6e1wicnVuc1wiOlt7XCJ0ZXh0XCI6XCI2NjZLIHN1YnNjcmliZXJzXCJ9XX0sXCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FnUTVLSUNJaE1JdS1lSnN2bnlsUU1WbzZqMEJ4M1NiRFRaXCJ9fSxcImNoYW5uZWxUaHVtYm5haWxFbmRwb2ludFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBQVFydTRCSWhNSXUtZUpzdm55bFFNVm82ajBCeDNTYkRUWnlnRUVHSXRxSkFcdTAwM2RcdTAwM2RcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcInVybFwiOlwiL2NoYW5uZWwvVUNUNDR3Njg1NEs2MmNTaXdBMWFpWGZ3XCIsXCJ3ZWJQYWdlVHlwZVwiOlwiV0VCX1BBR0VfVFlQRV9VTktOT1dOXCIsXCJyb290VmVcIjo4Mzc2OX19LFwidXJsRW5kcG9pbnRcIjp7XCJ1cmxcIjpcIi9jaGFubmVsL1VDVDQ0dzY4NTRLNjJjU2l3QTFhaVhmd1wiLFwidGFyZ2V0XCI6XCJUQVJHRVRfTkVXX1dJTkRPV1wifX19fSxcInZpZGVvRHVyYXRpb25TZWNvbmRzXCI6XCIxMDgxXCIsXCJ3ZWJQbGF5ZXJBY3Rpb25zUG9ydGluZ1wiOntcImdldFNoYXJlUGFuZWxDb21tYW5kXCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FBUXJ1NEJJaE1JdS1lSnN2bnlsUU1WbzZqMEJ4M1NiRFRaeWdFRUdJdHFKQVx1MDAzZFx1MDAzZFwiLFwiY29tbWFuZE1ldGFkYXRhXCI6e1wid2ViQ29tbWFuZE1ldGFkYXRhXCI6e1wiYXBpVXJsXCI6XCIveW91dHViZWkvdjEvc2hhcmUvZ2V0X3dlYl9wbGF5ZXJfc2hhcmVfcGFuZWxcIn19LFwid2ViUGxheWVyU2hhcmVFbnRpdHlTZXJ2aWNlRW5kcG9pbnRcIjp7XCJzZXJpYWxpemVkU2hhcmVFbnRpdHlcIjpcIkNnczBaV3RQWTBSSE1rUTRSUSUzRCUzRFwifX0sXCJzdWJzY3JpYmVDb21tYW5kXCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FBUXJ1NEJJaE1JdS1lSnN2bnlsUU1WbzZqMEJ4M1NiRFRaeWdFRUdJdHFKQVx1MDAzZFx1MDAzZFwiLFwiY29tbWFuZE1ldGFkYXRhXCI6e1wid2ViQ29tbWFuZE1ldGFkYXRhXCI6e1wic2VuZFBvc3RcIjp0cnVlLFwiYXBpVXJsXCI6XCIveW91dHViZWkvdjEvc3Vic2NyaXB0aW9uL3N1YnNjcmliZVwifX0sXCJzdWJzY3JpYmVFbmRwb2ludFwiOntcImNoYW5uZWxJZHNcIjpbXCJVQ1Q0NHc2ODU0SzYyY1Npd0ExYWlYZndcIl0sXCJwYXJhbXNcIjpcIkVnSUlCeGdBXCJ9fSxcInVuc3Vic2NyaWJlQ29tbWFuZFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBQVFydTRCSWhNSXUtZUpzdm55bFFNVm82ajBCeDNTYkRUWnlnRUVHSXRxSkFcdTAwM2RcdTAwM2RcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcInNlbmRQb3N0XCI6dHJ1ZSxcImFwaVVybFwiOlwiL3lvdXR1YmVpL3YxL3N1YnNjcmlwdGlvbi91bnN1YnNjcmliZVwifX0sXCJ1bnN1YnNjcmliZUVuZHBvaW50XCI6e1wiY2hhbm5lbElkc1wiOltcIlVDVDQ0dzY4NTRLNjJjU2l3QTFhaVhmd1wiXSxcInBhcmFtc1wiOlwiQ2dJSUJ4Z0FcIn19LFwiYWRkVG9XYXRjaExhdGVyQ29tbWFuZFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBQVFydTRCSWhNSXUtZUpzdm55bFFNVm82ajBCeDNTYkRUWnlnRUVHSXRxSkFcdTAwM2RcdTAwM2RcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcImFwaVVybFwiOlwiL3lvdXR1YmVpL3YxL2Jyb3dzZS9lZGl0X3BsYXlsaXN0XCJ9fSxcInBsYXlsaXN0RWRpdEVuZHBvaW50XCI6e1wicGxheWxpc3RJZFwiOlwiV0xcIixcImFjdGlvbnNcIjpbe1wiYWRkZWRWaWRlb0lkXCI6XCI0ZWtPY0RHMkQ4RVwiLFwiYWN0aW9uXCI6XCJBQ1RJT05fQUREX1ZJREVPXCJ9XX19LFwicmVtb3ZlRnJvbVdhdGNoTGF0ZXJDb21tYW5kXCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FBUXJ1NEJJaE1JdS1lSnN2bnlsUU1WbzZqMEJ4M1NiRFRaeWdFRUdJdHFKQVx1MDAzZFx1MDAzZFwiLFwiY29tbWFuZE1ldGFkYXRhXCI6e1wid2ViQ29tbWFuZE1ldGFkYXRhXCI6e1wiYXBpVXJsXCI6XCIveW91dHViZWkvdjEvYnJvd3NlL2VkaXRfcGxheWxpc3RcIn19LFwicGxheWxpc3RFZGl0RW5kcG9pbnRcIjp7XCJwbGF5bGlzdElkXCI6XCJXTFwiLFwiYWN0aW9uc1wiOlt7XCJhY3Rpb25cIjpcIkFDVElPTl9SRU1PVkVfVklERU9fQllfVklERU9fSURcIixcInJlbW92ZWRWaWRlb0lkXCI6XCI0ZWtPY0RHMkQ4RVwifV19fX0sXCJpbmZvUGFuZWxcIjp7XCJlbWJlZHNJbmZvUGFuZWxSZW5kZXJlclwiOntcImluZm9QYW5lbE92ZXJ2aWV3Vmlld01vZGVsXCI6e1wiaGVhZGVySWNvblwiOntcImljb25UeXBlXCI6XCJPUEVOX0lOX05FV1wifSxcImZvcndhcmRBY3Rpb25JY29uXCI6e1wiaWNvblR5cGVcIjpcIkNIRVZST05fUklHSFRcIn0sXCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FjUS1NOEpJaE1JdS1lSnN2bnlsUU1WbzZqMEJ4M1NiRFRaXCIsXCJkaXNtaXNzU3RhdGVFbnRpdHlLZXlcIjpcIkVncGhhVjlrZFdKaWFXNW5JSndFS0FFJTNEXCIsXCJsb2dnaW5nRGlyZWN0aXZlc1wiOntcInRyYWNraW5nUGFyYW1zXCI6XCJDQWNRLU04SkloTUl1LWVKc3ZueWxRTVZvNmowQngzU2JEVFpcIixcImF0dGVudGlvbkxvZ2dpbmdcIjpcIkFUVEVOVElPTl9MT0dHSU5HX0JBU0lDXCJ9fSxcImluZm9QYW5lbERldGFpbHNWaWV3TW9kZWxcIjp7XCJjdGFCdXR0b25zXCI6W3tcImNhbGxUb0FjdGlvbkJ1dHRvblZpZXdNb2RlbFwiOntcImljb25cIjp7XCJpY29uVHlwZVwiOlwiSEVMUF9PVVRMSU5FXCJ9LFwiYm9keVRleHRcIjp7XCJjb250ZW50XCI6XCJXaHkgYW0gSSBzZWVpbmcgdGhpcz9cIn0sXCJvblRhcFwiOntcImlubmVydHViZUNvbW1hbmRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQVlROXM4SkdBQWlFd2k3NTRteS1mS1ZBeFdqcVBRSEhkSnNOTm5LQVFRWWkyb2tcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcInVybFwiOlwiLy9zdXBwb3J0Lmdvb2dsZS5jb20veW91dHViZS9hbnN3ZXIvOTAwNDQ3ND9obFx1MDAzZGVuXCIsXCJ3ZWJQYWdlVHlwZVwiOlwiV0VCX1BBR0VfVFlQRV9VTktOT1dOXCIsXCJyb290VmVcIjo4Mzc2OX19LFwidXJsRW5kcG9pbnRcIjp7XCJ1cmxcIjpcIi8vc3VwcG9ydC5nb29nbGUuY29tL3lvdXR1YmUvYW5zd2VyLzkwMDQ0NzQ/aGxcdTAwM2RlblwiLFwidGFyZ2V0XCI6XCJUQVJHRVRfTkVXX1dJTkRPV1wifX19LFwidHJhY2tpbmdQYXJhbXNcIjpcIkNBWVE5czhKR0FBaUV3aTc1NG15LWZLVkF4V2pxUFFISGRKc05Oa1x1MDAzZFwiLFwibG9nZ2luZ0RpcmVjdGl2ZXNcIjp7XCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FZUTlzOEpHQUFpRXdpNzU0bXktZktWQXhXanFQUUhIZEpzTk5rXHUwMDNkXCIsXCJnZXN0dXJlc1wiOntcInR5cGVzXCI6XCIyXCJ9fX19XSxcInRyYWNraW5nUGFyYW1zXCI6XCJDQVVROTg4SkloTUl1LWVKc3ZueWxRTVZvNmowQngzU2JEVFpcIixcImxvZ2dpbmdEaXJlY3RpdmVzXCI6e1widHJhY2tpbmdQYXJhbXNcIjpcIkNBVVE5ODhKSWhNSXUtZUpzdm55bFFNVm82ajBCeDNTYkRUWlwifX0sXCJkdXJhdGlvbk1zXCI6XCIxMDAwMFwifX0sXCJhY3Rpb25CYXJCdXR0b25zXCI6W3tcImJ1dHRvblJlbmRlcmVyXCI6e1wic3R5bGVcIjpcIlNUWUxFX09QQUNJVFlcIixcInNpemVcIjpcIlNJWkVfREVGQVVMVFwiLFwiaXNEaXNhYmxlZFwiOmZhbHNlLFwiaWNvblwiOntcImljb25UeXBlXCI6XCJTSEFSRV9BUlJPV1wifSxcIm5hdmlnYXRpb25FbmRwb2ludFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBUVEtTjhCR0FBaUV3aTc1NG15LWZLVkF4V2pxUFFISGRKc05ObktBUVFZaTJva1wiLFwiY29tbWFuZE1ldGFkYXRhXCI6e1wid2ViQ29tbWFuZE1ldGFkYXRhXCI6e1wiaWdub3JlTmF2aWdhdGlvblwiOnRydWV9fSxcInNoYXJlRW50aXR5RW5kcG9pbnRcIjp7XCJzZXJpYWxpemVkU2hhcmVFbnRpdHlcIjpcIkNnczBaV3RQWTBSSE1rUTRSUSUzRCUzRFwiLFwic2hhcmVQYW5lbFR5cGVcIjpcIlNIQVJFX1BBTkVMX1RZUEVfVU5JRklFRF9TSEFSRV9QQU5FTFwifX0sXCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FRUS1OOEJHQUFpRXdpNzU0bXktZktWQXhXanFQUUhIZEpzTk5rXHUwMDNkXCIsXCJhY2Nlc3NpYmlsaXR5RGF0YVwiOntcImFjY2Vzc2liaWxpdHlEYXRhXCI6e1wibGFiZWxcIjpcIlNoYXJlXCJ9fX19LHtcImJ1dHRvblJlbmRlcmVyXCI6e1wic3R5bGVcIjpcIlNUWUxFX09QQUNJVFlcIixcInNpemVcIjpcIlNJWkVfREVGQVVMVFwiLFwiaXNEaXNhYmxlZFwiOmZhbHNlLFwic2VydmljZUVuZHBvaW50XCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FNUS1kOEJHQUVpRXdpNzU0bXktZktWQXhXanFQUUhIZEpzTk5uS0FRUVlpMm9rXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJhcGlVcmxcIjpcIi95b3V0dWJlaS92MS9icm93c2UvZWRpdF9wbGF5bGlzdFwifX0sXCJwbGF5bGlzdEVkaXRFbmRwb2ludFwiOntcInBsYXlsaXN0SWRcIjpcIldMXCIsXCJhY3Rpb25zXCI6W3tcImFkZGVkVmlkZW9JZFwiOlwiNGVrT2NERzJEOEVcIixcImFjdGlvblwiOlwiQUNUSU9OX0FERF9WSURFT1wifV19fSxcImljb25cIjp7XCJpY29uVHlwZVwiOlwiQUREX1RPX1dBVENIX0xBVEVSXCJ9LFwidHJhY2tpbmdQYXJhbXNcIjpcIkNBTVEtZDhCR0FFaUV3aTc1NG15LWZLVkF4V2pxUFFISGRKc05Oa1x1MDAzZFwiLFwiYWNjZXNzaWJpbGl0eURhdGFcIjp7XCJhY2Nlc3NpYmlsaXR5RGF0YVwiOntcImxhYmVsXCI6XCJXYXRjaCBsYXRlclwifX0sXCJjb21tYW5kXCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FNUS1kOEJHQUVpRXdpNzU0bXktZktWQXhXanFQUUhIZEpzTk5uS0FRUVlpMm9rXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJ1cmxcIjpcImh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9TZXJ2aWNlTG9naW4/c2VydmljZVx1MDAzZHlvdXR1YmVcXHUwMDI2dWlsZWxcdTAwM2QzXFx1MDAyNnBhc3NpdmVcdTAwM2R0cnVlXFx1MDAyNmNvbnRpbnVlXHUwMDNkaHR0cHMlM0ElMkYlMkZ3d3cueW91dHViZS5jb20lMkZzaWduaW4lM0ZhY3Rpb25faGFuZGxlX3NpZ25pbiUzRHRydWUlMjZobCUzRGVuJTI2bmV4dCUzRCUyNTJGcG9zdF9sb2dpblxcdTAwMjZobFx1MDAzZGVuXCIsXCJ3ZWJQYWdlVHlwZVwiOlwiV0VCX1BBR0VfVFlQRV9VTktOT1dOXCIsXCJyb290VmVcIjo4Mzc2OX19LFwic2lnbkluRW5kcG9pbnRcIjp7XCJuZXh0RW5kcG9pbnRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQU1RLWQ4QkdBRWlFd2k3NTRteS1mS1ZBeFdqcVBRSEhkSnNOTm5LQVFRWWkyb2tcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcInVybFwiOlwiL3Bvc3RfbG9naW5cIixcIndlYlBhZ2VUeXBlXCI6XCJXRUJfUEFHRV9UWVBFX1VOS05PV05cIixcInJvb3RWZVwiOjgzNzY5fX0sXCJ1cmxFbmRwb2ludFwiOntcInVybFwiOlwiL3Bvc3RfbG9naW5cIn19fX19fV0sXCJxdWlja0FjdGlvbnNCYXJcIjp7XCJxdWlja0FjdGlvbnNWaWV3TW9kZWxcIjp7XCJ3YXRjaE9uWW91dHViZUJ1dHRvblwiOntcIndhdGNoT25Zb3V0dWJlQnV0dG9uVmlld01vZGVsXCI6e1wid2F0Y2hPbll0TGFiZWxCdXR0b25cIjp7XCJidXR0b25WaWV3TW9kZWxcIjp7XCJvblRhcFwiOntcImlubmVydHViZUNvbW1hbmRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQUlReXZNRkloTUl1LWVKc3ZueWxRTVZvNmowQngzU2JEVFp5Z0VFR0l0cUpBXHUwMDNkXHUwMDNkXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJ1cmxcIjpcImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3dhdGNoP3ZcdTAwM2Q0ZWtPY0RHMkQ4RVwiLFwid2ViUGFnZVR5cGVcIjpcIldFQl9QQUdFX1RZUEVfVU5LTk9XTlwiLFwicm9vdFZlXCI6ODM3Njl9fSxcInVybEVuZHBvaW50XCI6e1widXJsXCI6XCJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92XHUwMDNkNGVrT2NERzJEOEVcIixcInRhcmdldFwiOlwiVEFSR0VUX05FV19XSU5ET1dcIn19fSxcImFjY2Vzc2liaWxpdHlUZXh0XCI6XCJXYXRjaCBvbiBZb3VUdWJlXCIsXCJzdHlsZVwiOlwiQlVUVE9OX1ZJRVdfTU9ERUxfU1RZTEVfT1ZFUkxBWV9EQVJLXCIsXCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FJUXl2TUZJaE1JdS1lSnN2bnlsUU1WbzZqMEJ4M1NiRFRaXCIsXCJ0eXBlXCI6XCJCVVRUT05fVklFV19NT0RFTF9UWVBFX1RFWFRcIixcImJ1dHRvblNpemVcIjpcIkJVVFRPTl9WSUVXX01PREVMX1NJWkVfTEFSR0VcIixcInRpdGxlRm9ybWF0dGVkXCI6e1wiY29udGVudFwiOlwiV2F0Y2ggb25cIixcInN0eWxlUnVuc1wiOlt7XCJ3ZWlnaHRMYWJlbFwiOlwiRk9OVF9XRUlHSFRfVEhJTlwifV0sXCJhdHRhY2htZW50UnVuc1wiOlt7XCJzdGFydEluZGV4XCI6OCxcImxlbmd0aFwiOjAsXCJlbGVtZW50XCI6e1widHlwZVwiOntcImltYWdlVHlwZVwiOntcImltYWdlXCI6e1wic291cmNlc1wiOlt7XCJjbGllbnRSZXNvdXJjZVwiOntcImltYWdlTmFtZVwiOlwid2F0ZXJtYXJrXCJ9fV19fX0sXCJwcm9wZXJ0aWVzXCI6e1wibGF5b3V0UHJvcGVydGllc1wiOntcImhlaWdodFwiOntcInZhbHVlXCI6MjAsXCJ1bml0XCI6XCJESU1FTlNJT05fVU5JVF9QT0lOVFwifSxcIndpZHRoXCI6e1widmFsdWVcIjo5MCxcInVuaXRcIjpcIkRJTUVOU0lPTl9VTklUX1BPSU5UXCJ9LFwibWFyZ2luXCI6e1wibGVmdFwiOntcInZhbHVlXCI6NX19fX19LFwiYWxpZ25tZW50XCI6XCJBTElHTk1FTlRfVkVSVElDQUxfQ0VOVEVSXCJ9XX19fSxcInl0TG9nb09ubHlCdXR0b25cIjp7XCJidXR0b25WaWV3TW9kZWxcIjp7XCJvblRhcFwiOntcImlubmVydHViZUNvbW1hbmRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQUVRMXRjRUloTUl1LWVKc3ZueWxRTVZvNmowQngzU2JEVFp5Z0VFR0l0cUpBXHUwMDNkXHUwMDNkXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJ1cmxcIjpcImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3dhdGNoP3ZcdTAwM2Q0ZWtPY0RHMkQ4RVwiLFwid2ViUGFnZVR5cGVcIjpcIldFQl9QQUdFX1RZUEVfVU5LTk9XTlwiLFwicm9vdFZlXCI6ODM3Njl9fSxcInVybEVuZHBvaW50XCI6e1widXJsXCI6XCJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92XHUwMDNkNGVrT2NERzJEOEVcIixcInRhcmdldFwiOlwiVEFSR0VUX05FV19XSU5ET1dcIn19fSxcImFjY2Vzc2liaWxpdHlUZXh0XCI6XCJXYXRjaCBvbiBZb3VUdWJlXCIsXCJzdHlsZVwiOlwiQlVUVE9OX1ZJRVdfTU9ERUxfU1RZTEVfTU9OT1wiLFwidHJhY2tpbmdQYXJhbXNcIjpcIkNBRVExdGNFSWhNSXUtZUpzdm55bFFNVm82ajBCeDNTYkRUWlwiLFwidHlwZVwiOlwiQlVUVE9OX1ZJRVdfTU9ERUxfVFlQRV9URVhUXCIsXCJidXR0b25TaXplXCI6XCJCVVRUT05fVklFV19NT0RFTF9TSVpFX0NPTVBBQ1RcIixcInRpdGxlRm9ybWF0dGVkXCI6e1wiY29udGVudFwiOlwiIFwiLFwiYXR0YWNobWVudFJ1bnNcIjpbe1wic3RhcnRJbmRleFwiOjAsXCJsZW5ndGhcIjowLFwiZWxlbWVudFwiOntcInR5cGVcIjp7XCJpbWFnZVR5cGVcIjp7XCJpbWFnZVwiOntcInNvdXJjZXNcIjpbe1wiY2xpZW50UmVzb3VyY2VcIjp7XCJpbWFnZU5hbWVcIjpcIndhdGVybWFya1wifX1dfX19LFwicHJvcGVydGllc1wiOntcImxheW91dFByb3BlcnRpZXNcIjp7XCJoZWlnaHRcIjp7XCJ2YWx1ZVwiOjIwLFwidW5pdFwiOlwiRElNRU5TSU9OX1VOSVRfUE9JTlRcIn0sXCJ3aWR0aFwiOntcInZhbHVlXCI6OTAsXCJ1bml0XCI6XCJESU1FTlNJT05fVU5JVF9QT0lOVFwifSxcIm1hcmdpblwiOntcImxlZnRcIjp7XCJ2YWx1ZVwiOjV9fX19fSxcImFsaWdubWVudFwiOlwiQUxJR05NRU5UX1ZFUlRJQ0FMX0NFTlRFUlwifV19fX19fX19fX0sXCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FBUXJ1NEJJaE1JdS1lSnN2bnlsUU1WbzZqMEJ4M1NiRFRaeWdFRUdJdHFKQVx1MDAzZFx1MDAzZFwiLFwicGVybWlzc2lvbnNcIjp7XCJhbGxvd0ltYU1vbmV0aXphdGlvblwiOmZhbHNlLFwiYWxsb3dQZnBVbmJyYW5kZWRcIjpmYWxzZX0sXCJ2aWRlb0ZsYWdzXCI6e1wicGxheWFibGVJbkVtYmVkXCI6dHJ1ZSxcImlzQ3Jhd2xhYmxlXCI6dHJ1ZX0sXCJwcmV2aWV3UGxheWFiaWxpdHlTdGF0dXNcIjp7XCJzdGF0dXNcIjpcIk9LXCIsXCJwbGF5YWJsZUluRW1iZWRcIjp0cnVlLFwiY29udGV4dFBhcmFtc1wiOlwiUTBGRlUwRm5aMEVcdTAwM2RcIn0sXCJlbWJlZGRlZFBsYXllck1vZGVcIjpcIkVNQkVEREVEX1BMQVlFUl9NT0RFX0RFRkFVTFRcIixcImVtYmVkZGVkUGxheWVyQ29uZmlnXCI6e1wiZW1iZWRkZWRQbGF5ZXJNb2RlXCI6XCJFTUJFRERFRF9QTEFZRVJfTU9ERV9ERUZBVUxUXCIsXCJlbWJlZGRlZFBsYXllckZsYWdzXCI6e319LFwiZW1iZWRkZWRQbGF5ZXJDb250ZXh0XCI6e1wiZW1iZWRkZWRQbGF5ZXJFbmNyeXB0ZWRDb250ZXh0XCI6XCJBQ21ibEJXTWRYOE96ZXVxUDhJNm5USTF6YTU5Y3l4UHRRejc3YWtCSl9CUXZNVm9wVHJTNllaR1BfeVk5aW1BUG04aGJRMlpMbVh5SXJTaDcwaWdELThBNFRvSHJpaWVhRXFDM2QzaFBoc0lFVUtxWnZTaWdWdkZLdG8yU3hPckZtZzc1QVwiLFwiYW5jZXN0b3JPcmlnaW5zU3VwcG9ydGVkXCI6ZmFsc2V9fSIsInZpZGVvX2lkIjoiNGVrT2NERzJEOEUiLCJyZXNvbHZlX3VybF9yZXNwb25zZSI6IntcInJlc3BvbnNlQ29udGV4dFwiOntcInNlcnZpY2VUcmFja2luZ1BhcmFtc1wiOlt7XCJzZXJ2aWNlXCI6XCJDU0lcIixcInBhcmFtc1wiOlt7XCJrZXlcIjpcImNcIixcInZhbHVlXCI6XCJXRUJfRU1CRURERURfUExBWUVSXCJ9LHtcImtleVwiOlwiY3ZlclwiLFwidmFsdWVcIjpcIjIuMjAyNjA3MjQuMDEuMDBcIn0se1wia2V5XCI6XCJ5dF9saVwiLFwidmFsdWVcIjpcIjBcIn0se1wia2V5XCI6XCJSZXNvbHZlVXJsX3JpZFwiLFwidmFsdWVcIjpcIjB4Y2IxNjAxOTc3ZGJlMTVkZFwifV19LHtcInNlcnZpY2VcIjpcIkdGRUVEQkFDS1wiLFwicGFyYW1zXCI6W3tcImtleVwiOlwibG9nZ2VkX2luXCIsXCJ2YWx1ZVwiOlwiMFwifV19LHtcInNlcnZpY2VcIjpcIkdVSURFRF9IRUxQXCIsXCJwYXJhbXNcIjpbe1wia2V5XCI6XCJsb2dnZWRfaW5cIixcInZhbHVlXCI6XCIwXCJ9XX0se1wic2VydmljZVwiOlwiRUNBVENIRVJcIixcInBhcmFtc1wiOlt7XCJrZXlcIjpcImNsaWVudC52ZXJzaW9uXCIsXCJ2YWx1ZVwiOlwiMi4yMDI2MDcyNFwifSx7XCJrZXlcIjpcImNsaWVudC5uYW1lXCIsXCJ2YWx1ZVwiOlwiV0VCX0VNQkVEREVEX1BMQVlFUlwifV19XSxcInJlc3BvbnNlSWRcIjpcIkloTUluYjZKc3ZueWxRTVZHSm4wQngxVTlpblpcIixcIndlYlJlc3BvbnNlQ29udGV4dEV4dGVuc2lvbkRhdGFcIjp7XCJoYXNEZWNvcmF0ZWRcIjp0cnVlfX0sXCJlbmRwb2ludFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkloTUluYjZKc3ZueWxRTVZHSm4wQngxVTlpblpNZ2hsZUhSbGNtNWhiTW9CQkJpTGFpUVx1MDAzZFwiLFwiY29tbWFuZE1ldGFkYXRhXCI6e319fSJ9LCJQT1NUX01FU1NBR0VfT1JJR0lOIjoiKiIsIlZJREVPX0lEIjoiNGVrT2NERzJEOEUiLCJET01BSU5fQURNSU5fU1RBVEUiOiIifSk7d2luZG93Lnl0Y2ZnLm9iZnVzY2F0ZWREYXRhXyA9IFtdOzwvc2NyaXB0PjxzY3JpcHQgbm9uY2U9IjhJbnFmZkFnSFYtZTlBU1g5OWZabFEiPndpbmRvdy55dEF0UCA9IG5ldyBQcm9taXNlKHJlcyA9PiB3aW5kb3cueXRBdE4gPSByZXMpOyB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignRE9NQ29udGVudExvYWRlZCcsICgpID0+IHt3aW5kb3cueXRBdE4oKTsgZGVsZXRlIHdpbmRvdy55dEF0Tjt9KTs8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSI4SW5xZmZBZ0hWLWU5QVNYOTlmWmxRIj53aW5kb3cueXRlcnI9d2luZG93Lnl0ZXJyfHx0cnVlO3dpbmRvdy51bmhhbmRsZWRFcnJvck1lc3NhZ2VzPXt9Owp3aW5kb3cub25lcnJvcj1mdW5jdGlvbihtc2csdXJsLGxpbmUsb3B0X2NvbHVtbk51bWJlcixvcHRfZXJyb3Ipe3ZhciBlcnI7aWYob3B0X2Vycm9yKWVycj1vcHRfZXJyb3I7ZWxzZXtlcnI9bmV3IEVycm9yO2Vyci5tZXNzYWdlPW1zZztlcnIuZmlsZU5hbWU9dXJsO2Vyci5saW5lTnVtYmVyPWxpbmU7aWYoIWlzTmFOKG9wdF9jb2x1bW5OdW1iZXIpKWVyclsiY29sdW1uTnVtYmVyIl09b3B0X2NvbHVtbk51bWJlcn12YXIgbWVzc2FnZT1TdHJpbmcoZXJyLm1lc3NhZ2UpO2lmKCFlcnIubWVzc2FnZXx8bWVzc2FnZSBpbiB3aW5kb3cudW5oYW5kbGVkRXJyb3JNZXNzYWdlcylyZXR1cm47d2luZG93LnVuaGFuZGxlZEVycm9yTWVzc2FnZXNbbWVzc2FnZV09dHJ1ZTt2YXIgaW1nPW5ldyBJbWFnZTt3aW5kb3cuZW1lcmdlbmN5VGltZW91dEltZz1pbWc7aW1nLm9ubG9hZD1pbWcub25lcnJvcj1mdW5jdGlvbigpe2RlbGV0ZSB3aW5kb3cuZW1lcmdlbmN5VGltZW91dEltZ307dmFyIHZhbHVlcz0KeyJjbGllbnQubmFtZSI6eXRjZmcuZ2V0KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIpLCJjbGllbnQudmVyc2lvbiI6eXRjZmcuZ2V0KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfVkVSU0lPTiIpLCJtc2ciOm1lc3NhZ2UsInR5cGUiOiJVbmhhbmRsZWRXaW5kb3ciK2Vyci5uYW1lLCJmaWxlIjplcnIuZmlsZU5hbWUsImxpbmUiOmVyci5saW5lTnVtYmVyLCJzdGFjayI6KGVyci5zdGFja3x8IiIpLnN1YnN0cigwLDUwMCl9O3ZhciBwYXJ0cz1beXRjZmcuZ2V0KCJFTUVSR0VOQ1lfQkFTRV9VUkwiLCIvZXJyb3JfMjA0P3Q9anNlcnJvciZsZXZlbD1FUlJPUiIpXTt2YXIga2V5O2ZvcihrZXkgaW4gdmFsdWVzKXt2YXIgdmFsdWU9dmFsdWVzW2tleV07aWYodmFsdWUpcGFydHMucHVzaChrZXkrIj0iK2VuY29kZVVSSUNvbXBvbmVudCh2YWx1ZSkpfWltZy5zcmM9cGFydHMuam9pbigiJiIpfTsKPC9zY3JpcHQ+PHNjcmlwdCBub25jZT0iOElucWZmQWdIVi1lOUFTWDk5ZlpsUSI+dmFyIHl0ZXJyID0geXRlcnIgfHwgdHJ1ZTs8L3NjcmlwdD48c2NyaXB0IGRhdGEtaWQ9Il9nZCIgbm9uY2U9IjhJbnFmZkFnSFYtZTlBU1g5OWZabFEiPndpbmRvdy5XSVpfZ2xvYmFsX2RhdGEgPSB7IkFmWThIZiI6ZmFsc2UsIkZMMWFuIjpmYWxzZSwiSGlQc2JiIjowLCJNVUU2TmUiOiJ5b3V0dWJlX3dlYiIsIk11SldqZCI6ZmFsc2UsIlVVRmFXYyI6IiUuQC5udWxsLDEwMDAsMl0iLCJjZmIyaCI6InlvdXR1YmUud2ViLWZyb250LWVuZC1jcml0aWNhbF8yMDI2MDcyMi4wMV9wMCIsImZQRHh3ZCI6W10sImhzRkxUIjoiJS5ALm51bGwsMTAsM10iLCJpQ3poRmMiOmZhbHNlLCJuUXlBRSI6e30sIm94TjNuYiI6eyIxIjpmYWxzZSwiMCI6ZmFsc2UsIjYxMDQwMTMwMSI6ZmFsc2UsIjg5OTU4ODQzNyI6ZmFsc2UsIjc3MjY1Nzc2OCI6dHJ1ZSwiNTEzNjU5NTIzIjpmYWxzZSwiNTY4MzMzOTQ1Ijp0cnVlLCIxMzMxNzYxNDAzIjp0cnVlLCI2NTExNzU4MjgiOmZhbHNlLCI3MjI3NjQ1NDIiOmZhbHNlLCI3NDg0MDIxNDUiOmZhbHNlLCI3NDg0MDIxNDYiOmZhbHNlLCI3NDg0MDIxNDciOnRydWUsIjE2MDI2MTMxODUiOmZhbHNlLCI4NjEzNzc3MjMiOmZhbHNlLCI4NjEzNzc3MjQiOmZhbHNlLCI4NjkzMzY5MDMiOmZhbHNlLCI4ODI2NzQ1MDciOmZhbHNlLCI4NjkzMzY5MDQiOmZhbHNlLCI4NjkzMzY5MDUiOmZhbHNlLCIyODM5NTMxNTUiOmZhbHNlLCI5MTk0NDQ4MjQiOmZhbHNlLCI5MzE0NjgwNDciOmZhbHNlLCI5Mjg4NzUzOTgiOmZhbHNlLCI2ODM3NDkyMDEiOmZhbHNlfSwidTRnN3IiOiIlLkAubnVsbCwxLDNdIiwieG5JOVAiOmZhbHNlLCJ4d0FmRSI6dHJ1ZSwieUZueHJmIjoyNDg2fTs8L3NjcmlwdD48dGl0bGU+WW91VHViZTwvdGl0bGU+PGxpbmsgcmVsPSJjYW5vbmljYWwiIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3dhdGNoP3Y9NGVrT2NERzJEOEUiPjwvaGVhZD48Ym9keSBjbGFzcz0iZGF0ZS0yMDI2MDcyNyBlbl9VUyBsdHIgIHNpdGUtY2VudGVyLWFsaWduZWQgc2l0ZS1hcy1naWFudC1jYXJkIGdlY2tvIGdlY2tvLTEzNCIgZGlyPSJsdHIiPjxkaXYgaWQ9InBsYXllciI+PC9kaXY+PHNjcmlwdCBub25jZT0iOElucWZmQWdIVi1lOUFTWDk5ZlpsUSI+dmFyIHNldE1lc3NhZ2U9ZnVuY3Rpb24obXNnKXtpZih3aW5kb3cueXQmJnl0LnNldE1zZyl5dC5zZXRNc2cobXNnKTtlbHNle3dpbmRvdy55dGNmZz13aW5kb3cueXRjZmd8fHt9O3l0Y2ZnLm1zZ3M9bXNnfX07CnNldE1lc3NhZ2UoeyJBQ0NPVU5UX0xBQkVMIjoiQWNjb3VudCIsIkFDVF9PTl9USElTX0NPTU1FTlQiOiJBY3Qgb24gdGhpcyBjb21tZW50IiwiQUREX1RPX0RST1BET1dOX0xBQkVMIjoiQWRkIHRvIHBsYXlsaXN0IiwiQURfQkFER0VfSElOVCI6IkFkdmVydGlzZW1lbnQiLCJBRF9CQURHRV9URVhUIjoiQUQiLCJBTExfQ0hBTk5FTFNfTEFCRUwiOiJBbGwgY2hhbm5lbHMiLCJBTUJJRU5UX01PREUiOiJBbWJpZW50IG1vZGUiLCJBTUJJRU5UX01PREVfT0ZGIjoiQW1iaWVudCBtb2RlIG9mZiIsIkFNQklFTlRfTU9ERV9PTiI6IkFtYmllbnQgbW9kZSBvbiIsIkFORFJPSURfREVQUkVDQVRJT05fTUVTU0FHRV9CT0RZIjoiUGxlYXNlIHVwZGF0ZSB5b3VyIGRldmljZSB0byBBbmRyb2lkIDQuMCBiZWZvcmUgT2N0IDIyLCAyMDIwIHRvIGtlZXAgdXNpbmcgWW91VHViZSB3aXRob3V0IGludGVycnVwdGlvbnMuIiwiQU5EUk9JRF9ERVBSRUNBVElPTl9NRVNTQUdFX0hFQURFUiI6IllvdVR1YmUgd2lsbCBubyBsb25nZXIgYmUgc3VwcG9ydGVkIG9uIHlvdXIgZGV2aWNlIGFmdGVyIDIwMjAtMTAtMjIiLCJBUFBfVVBTRUxMX1NVQlRJVExFIjoiVXBsb2FkLCBzYXZlLCBhbmQgY29tbWVudCBvbiB2aWRlb3Mgd2l0aCB0aGUgWW91VHViZSBhcHAiLCJBUFBfVVBTRUxMX1RJVExFIjoiU3dpdGNoIHRvIHRoZSBhcHAgZm9yIGEgYmV0dGVyIHZpZXdpbmcgZXhwZXJpZW5jZSIsIkFVRElPX1RSQUNLIjoiQXVkaW8gVHJhY2siLCJBVVRPTkFWX1RPR0dMRSI6IkF1dG9wbGF5IiwiQVVUT1BMQVlfSU5fVEVOX1NFQ09ORFMiOiJOZXh0IHZpZGVvIHdpbGwgYmUgcGxheWVkIGluIHRlbiBzZWNvbmRzIiwiQVVUT1BMQVlfUEFVU0VEIjoiQXV0b3BsYXkgaXMgcGF1c2VkIiwiQVVUT1BMQVlfUExBWV9OT1ciOiJQbGF5IG5vdyIsIkFVVE9QTEFZX1VQX05FWFRfSU4iOiJVcCBuZXh0IGluIHNlY29uZHNfcGxhY2Vob2xkZXIiLCJBVVRPX1RSQU5TTEFURSI6IkF1dG8tdHJhbnNsYXRlIiwiQVVUT19aT09NIjoiQXV0byB6b29tIiwiQkFDSyI6IkJhY2siLCJCUkFOREVEX1NJR05fSU5fRElBTE9HX0RFU0NSSVBUSU9OIjoiQWNjZXNzIGFsbCBmZWF0dXJlcyBhbmQgZ2V0IGEgc2VhbWxlc3MgZXhwZXJpZW5jZSIsIkNBTkNFTCI6IkNhbmNlbCIsIkNIQU5ORUxfU1dJVENIRVJfTEFCRUwiOiJTd2l0Y2ggYWNjb3VudCIsIkNIQVJBQ1RFUl9MSU1JVCI6IlVzZSBmZXdlciB0aGFuICRudW1iZXIgY2hhcmFjdGVycyIsIkNMT1NFIjoiQ2xvc2UiLCJDTE9TRURfQ0FQVElPTlNfRElTQUJMRUQiOiJObyBjYXB0aW9ucyBhcmUgYXZhaWxhYmxlIGZvciB0aGlzIHZpZGVvIiwiQ0xPU0VEX0NBUFRJT05TX09GRiI6IlN1YnRpdGxlcy9DQyB0dXJuZWQgb2ZmIiwiQ0xPU0VEX0NBUFRJT05TX09OIjoiU3VidGl0bGVzL0NDIHR1cm5lZCBvbiIsIkNMT1NFRF9DQVBUSU9OU19PTl9MQU5HVUFHRSI6IlN1YnRpdGxlcy9DQyB0dXJuZWQgb24gKGxhbmd1YWdlX3BsYWNlaG9sZGVyKSIsIkNMT1NFX1NFQVJDSF9MQUJFTCI6IkNsb3NlIHNlYXJjaCIsIkNMT1NFX1NFVFRJTkdTX0xBQkVMIjoiQ2xvc2UgU2V0dGluZ3MiLCJDT01NRU5UQk9YX1BPU1QiOiJQb3N0IiwiQ09NTUVOVF9NT0RBTF9DT05URU5UIjoiUGxlYXNlIHNpZ24gaW4gdG8gYWN0IG9uIHRoaXMgY29tbWVudC4iLCJDT05GSVJNX09LIjoiT0siLCJDT05ORUNUX1RPX1RIRV9JTlRFUk5FVCI6IkNvbm5lY3QgdG8gdGhlIGludGVybmV0IiwiQ09QSUVEX1RPX0NMSVBCT0FSRCI6IkNvcGllZCB0byBjbGlwYm9hcmQiLCJDT1BZIjoiQ29weSIsIkNPUFlfREVCVUdfSU5GTyI6IkNvcHkgRGVidWcgSW5mbyIsIkNPUFlfRU1CRURfQ09ERSI6IkNvcHkgZW1iZWQgY29kZSIsIkNPUFlfTElOS19MQUJFTCI6IkNvcHkgbGluayIsIkNPUFlfVklERU9fVVJMIjoiQ29weSB2aWRlbyBVUkwiLCJDT1BZX1ZJREVPX1VSTF9BVF9DVVJSRU5UX1RJTUUiOiJDb3B5IHZpZGVvIFVSTCBhdCBjdXJyZW50IHRpbWUiLCJDUkVBVEVfQ0hBTk5FTF9USVRMRSI6IkNyZWF0ZSBjaGFubmVsIiwiREVMRVRFX0ZST01fRE9XTkxPQURTIjoiRGVsZXRlIGZyb20gZG93bmxvYWRzIiwiRElBTE9HIjoiRGlhbG9nIiwiRE1BX0NPTlNFTlRfQ09ORklSTUFUSU9OIjoiWW91ciBjaG9pY2Ugd2lsbCB0YWtlIGVmZmVjdCBvbiBNYXJjaCA2LCAyMDI0LiBZb3UgY2FuIGNoYW5nZSB5b3VyIGNob2ljZXMgYW55dGltZSBpbiB5b3VyIEdvb2dsZSBBY2NvdW50LiIsIkRNQV9DT05TRU5UX0NPTkZJUk1BVElPTjIiOiJZb3VyIGNob2ljZXMgaGF2ZSBiZWVuIHNhdmVkLiBZb3UgY2FuIGNoYW5nZSB5b3VyIGNob2ljZXMgYW55dGltZSBpbiB5b3VyIEdvb2dsZSBBY2NvdW50LiIsIkRNQV9DT05TRU5UX0dFTkVSQUxfRVJST1IiOiJTb21ldGhpbmcgd2VudCB3cm9uZyB3aGlsZSBsb2FkaW5nIiwiRE1BX0NPTlNFTlRfUkVDT1JEX0VSUk9SIjoiU29tZXRoaW5nIHdlbnQgd3JvbmcgYW5kIHlvdXIgY2hvaWNlcyB3ZXJlIG5vdCBzYXZlZCIsIkRPTkUiOiJEb25lIiwiRE9XTkxPQUQiOiJEb3dubG9hZCIsIkZBSUxFRF9DT1BZX0VSUk9SX01FU1NBR0UiOiJDb3B5IGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhlIGRldmljZSwgZmFpbGVkIHRvIGNvcHkuIiwiRkxBR19DT05GSVJNIjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGZsYWcgdGhpcyB2aWRlbz8iLCJGTEFHX0NPTlRFTlQiOiJTaWduIGluIHRvIGZsYWcgaXQuIiwiRkxBR19MQUJFTCI6IkZsYWcgYXMgaW5hcHByb3ByaWF0ZSIsIkZMQUdfVElUTEUiOiJJbmFwcHJvcHJpYXRlIHZpZGVvPyIsIkZVTExTQ1JFRU5fR0VORVJJQ19FUlJPUiI6IkZ1bGwgc2NyZWVuIGlzIHVuYXZhaWxhYmxlLiIsIkdPT0dMRV9DT01QQU5ZIjoiWW91VHViZSwgYSBHb29nbGUgY29tcGFueSIsIkhJREVfQUxFUlQiOiJIaWRlIHRoaXMgYWxlcnQiLCJISURFX1BMQVlFUl9DT05UUk9MUyI6IkhpZGUgcGxheWVyIGNvbnRyb2xzIiwiSElERV9QTEFZTElTVF9WSURFT1MiOiJIaWRlIHBsYXlsaXN0IHZpZGVvcyIsIkhJREVfU0VBUkNIX0ZJTFRFUlNfTEFCRUwiOiJIaWRlIHNlYXJjaCBmaWx0ZXJzIiwiSE9NRSI6IkhvbWUiLCJJTlZBTElEX1JFU1BPTlNFX1JFQ0VJVkVEIjoiSW52YWxpZCByZXNwb25zZSByZWNlaXZlZC4iLCJMRUFWRV9BX0NPTU1FTlRfVElUTEUiOiJMZWF2ZSBhIGNvbW1lbnQ/IiwiTElCUkFSWSI6IkxpYnJhcnkiLCJMSUtFX0NPVU5UX1RFWFQiOnsiY2FzZTAiOiJObyBsaWtlcyIsImNhc2UxIjoiMSBsaWtlIiwib3RoZXIiOiIjIGxpa2VzIn0sIkxJS0VfQ09VTlRfVEVYVF9MQUJFTCI6IntcImNhc2UwXCI6IFwiTm8gcGVvcGxlIGhhdmUgbGlrZWQgdGhpcyB2aWRlby5cIiwgXCJjYXNlMVwiOiBcIjEgcGVyc29uIGhhcyBsaWtlZCB0aGlzIHZpZGVvLlwiLCBcIm90aGVyXCI6IFwiIyBwZW9wbGUgaGF2ZSBsaWtlZCB0aGlzIHZpZGVvLlwifSIsIkxJU1RFTklORyI6Ikxpc3RlbmluZy4uLiIsIkxPQURJTkciOiJMb2FkaW5nLi4uIiwiTE9OR19QUkVTU19NSUNfVE9fU1BFQUsiOiJMb25nIHByZXNzIG1pY19pY29uX3BsYWNlaG9sZGVyIHRvIHNwZWFrIiwiTE9PUCI6Ikxvb3AiLCJNRU5VX0RFU0tUT1AiOiJEZXNrdG9wIiwiTUVOVV9FWElUIjoiRXhpdCIsIk1FTlVfRkVFREJBQ0siOiJGZWVkYmFjayIsIk1FTlVfSEVMUCI6IkhlbHAiLCJNRU5VX0lNUFJFU1NVTSI6IkltcHJpbnQiLCJNRU5VX1BMQVlFUl9TRVRUSU5HUyI6IlBsYXliYWNrIFNldHRpbmdzIiwiTUVOVV9SRVBPUlRfQV9QUk9CTEVNIjoiUmVwb3J0IGEgcHJvYmxlbSB3aXRoIFlvdVR1YmUiLCJNRU5VX1NFTkRfRkVFREJBQ0siOiJTZW5kIGZlZWRiYWNrIiwiTUVOVV9TRVRUSU5HUyI6IlNldHRpbmdzIiwiTUVOVV9TSUdOX0lOIjoiU2lnbiBJbiIsIk1FTlVfVEVSTVMiOiJQcml2YWN5IFx1MDAyNiBUZXJtcyIsIk1FTlVfVElUTEUiOiJNZW51IiwiTUVOVV9ZT1VSX0RBVEEiOiJZb3VyIGRhdGEgaW4gWW91VHViZSIsIk1FVEFEQVRBX1NVQlRJVExFX0NIQU5ORUxfTkFNRV9MQUJFTCI6IlVwbG9hZGVkIGJ5ICR7Y2hhbm5lbF9uYW1lX3BsYWNlaG9sZGVyfS4iLCJNTUdfQ09ORklSTUFUSU9OIjoiWW91ciBjaG9pY2UgaGFzIGJlZW4gc2F2ZWQuIFlvdSBjYW4gY2hhbmdlIHRoaXMgc2V0dGluZyBhbnl0aW1lIGluIE15IEFkIENlbnRlci4iLCJNTUdfQ09OU0VOVF9SRUNPUkRfRVJST1IiOiJTb21ldGhpbmcgd2VudCB3cm9uZyBhbmQgeW91ciBjaG9pY2Ugd2FzIG5vdCBzYXZlZCIsIk1PUkUiOiJNb3JlIiwiTU9SRV9JTkZPIjoiTW9yZSBpbmZvIiwiTU9SRV9MT1dFUkNBU0UiOiJtb3JlIiwiTU9SRV9PUFRJT05TIjoiTW9yZSBvcHRpb25zIiwiTU9SRV9WSURFT1MiOiJNb3JlIHZpZGVvcyIsIk1PUkVfVklERU9TX0NMT1NFX0JVVFRPTl9BUklBX0xBQkVMIjoiSGlkZSBtb3JlIHZpZGVvcyIsIk1PUkVfVklERU9TX0ZST01fQ0hBTk5FTCI6Ik1vcmUgdmlkZW9zIGZyb20gJGNoYW5uZWxfbmFtZV9wbGFjZWhvbGRlciIsIk1PUkVfVklERU9TX05FWFRfQlVUVE9OX0FSSUFfTEFCRUwiOiJOZXh0IHZpZGVvcyIsIk1PUkVfVklERU9TX1BSRVZJT1VTX0JVVFRPTl9BUklBX0xBQkVMIjoiUHJldmlvdXMgdmlkZW9zIiwiTVVURV9WT0xVTUUiOiJNdXRlIiwiTkVXX1BMQVlMSVNUIjoiTmV3IHBsYXlsaXN0IiwiTkVYVF9WSURFTyI6Ik5leHQgdmlkZW8iLCJOT1RJRklDQVRJT05fRVJST1JfTUVTU0FHRSI6IlNvbWV0aGluZyB3ZW50IHdyb25nLCBwbGVhc2UgdHJ5IGFnYWluLiIsIk5PVF9GT1VORF9DVEEiOiJCcm93c2UgVmlkZW9zIiwiTk9UX0ZPVU5EX01FU1NBR0UiOiJQbGVhc2Ugc2VhcmNoIGZvciBzb21ldGhpbmcgZWxzZSwgb3IgYnJvd3NlIHlvdXIgSG9tZSBmZWVkLiIsIk5PVF9GT1VORF9USVRMRSI6IlRoaXMgcGFnZSBpc25cdTAwMjd0IGF2YWlsYWJsZSIsIk5PX0RPV05MT0FEUyI6Ik5vIGRvd25sb2FkcyIsIk5PX01JQ19JTlBVVCI6IkRpZG5cdTAwMjd0IGhlYXIgdGhhdC4gVHJ5IHNwZWFraW5nIGFnYWluLiIsIk9GRkxJTkVfQ0hFQ0tfQ09OTkVDVElPTiI6IllvdVx1MDAyN3JlIG9mZmxpbmUuIENoZWNrIHlvdXIgY29ubmVjdGlvbi4iLCJPT1BTX01FU1NBR0UiOiJPb3BzISBTb21ldGhpbmcgd2VudCB3cm9uZy4iLCJPUEVOX0FQUCI6Ik9wZW4gQXBwIiwiT1BFTl9ZT1VUVUJFIjoiT3BlbiB0aGUgYXBwIiwiT1BFTl9ZT1VUVUJFX0FQUCI6Ik9wZW4gWW91VHViZSBhcHAiLCJQQVVTRSI6IlBhdXNlIiwiUExBWSI6IlBsYXkiLCJQTEFZQkFDS19TUEVFRF9YIjoiJHtzcGVlZF9yYXRlX3BsYWNlaG9sZGVyfXgiLCJQTEFZRVJfQ0FQVElPTiI6IkNhcHRpb25zIiwiUExBWUVSX0NBUFRJT05fT0ZGIjoiT2ZmIiwiUExBWUVSX0NBUFRJT05fT04iOiJPbiIsIlBMQVlFUl9ET1VCTEVfU1BFRURfVVNFUl9FRFUiOiIyeCIsIlBMQVlFUl9ET1VCTEVfVEFQX1RPX1NFRUsiOiJEb3VibGUgdGFwIGxlZnQgb3IgcmlnaHQgdG8gc2tpcCAxMCBzZWNvbmRzIiwiUExBWUVSX0RPVUJMRV9UQVBfVE9fU0hPV19PUl9ISURFX1BMQVlFUl9DT05UUk9MUyI6IkRvdWJsZSB0YXAgdG8gc2hvdyBvciBoaWRlIHBsYXllciBjb250cm9scyIsIlBMQVlFUl9FWElUX0ZVTExTQ1JFRU4iOiJFeGl0IGZ1bGwgc2NyZWVuIiwiUExBWUVSX0ZBU1RGT1JXQVJEX1NFQ09ORFMiOiJGYXN0IGZvcndhcmQgJHNlY29uZHNfcGxhY2Vob2xkZXIgc2Vjb25kcyIsIlBMQVlFUl9GVUxMU0NSRUVOIjoiRW50ZXIgZnVsbCBzY3JlZW4iLCJQTEFZRVJfTElWRV9MQUJFTCI6IkxpdmUiLCJQTEFZRVJfTElWRV9OT1ciOiJMaXZlIG5vdyIsIlBMQVlFUl9NSU5JTUlaRSI6Ik1pbmltaXplIiwiUExBWUVSX05FWFQiOiJOZXh0IHZpZGVvIiwiUExBWUVSX1BBVVNFIjoiUGF1c2UgdmlkZW8iLCJQTEFZRVJfUExBWSI6IlBsYXkgdmlkZW8iLCJQTEFZRVJfUFJFTUlFUkVfTEFCRUwiOiJQcmVtaWVyZSIsIlBMQVlFUl9QUkVWSU9VUyI6IlByZXZpb3VzIHZpZGVvIiwiUExBWUVSX1BST0dSRVNTX0JBUiI6IlNlZWsgc2xpZGVyIiwiUExBWUVSX1FVQUxJVFkiOiJRdWFsaXR5IiwiUExBWUVSX1FVQUxJVFlfQVVUTyI6IkF1dG8iLCJQTEFZRVJfUkVQTEFZIjoiUmVwbGF5IFZpZGVvIiwiUExBWUVSX1JFV0lORF9TRUNPTkRTIjoiUmV3aW5kICRzZWNvbmRzX3BsYWNlaG9sZGVyIHNlY29uZHMiLCJQTEFZRVJfU0VDT05EUyI6IiRzZWNvbmRzX3BsYWNlaG9sZGVyIHNlY29uZHMiLCJQTEFZRVJfU1BFRUQiOiJTcGVlZCIsIlBMQVlFUl9TUEVFRFVQX1VTRVJfRURVIjoiUGxheWluZyBhdCBzcGVlZF9yYXRlX3BsYWNlaG9sZGVyeCBzcGVlZCIsIlBMQVlFUl9TUEVFRF9ERUNSRUFTRSI6IkRlY3JlYXNlIHBsYXliYWNrIHNwZWVkIiwiUExBWUVSX1NQRUVEX0lOQ1JFQVNFIjoiSW5jcmVhc2UgcGxheWJhY2sgc3BlZWQiLCJQTEFZRVJfU1BFRURfTk9STUFMIjoiTm9ybWFsIiwiUExBWUVSX1NQRUVEX1JFQ0VOVCI6IlJlY2VudCIsIlBMQVlFUl9USU1FX0RVUkFUSU9OIjoiVGltZSBkdXJhdGlvbiIsIlBMQVlFUl9USU1FX0VMQVBTRUQiOiJUaW1lIGVsYXBzZWQiLCJQTEFZRVJfVElNRV9GT1JNQVRURUQiOnsiY2FzZTAiOiIke21pbnV0ZXN9IG1pbnV0ZXMgYW5kICR7c2Vjb25kc30gc2Vjb25kcyIsImNhc2UxIjoiMSBob3VyLCAke21pbnV0ZXN9IG1pbnV0ZXMgYW5kICR7c2Vjb25kc30gc2Vjb25kcyIsIm90aGVyIjoiIyBob3VycywgJHttaW51dGVzfSBtaW51dGVzIGFuZCAke3NlY29uZHN9IHNlY29uZHMifSwiUExBWUxJU1RfQ1VSUkVOVF9WSURFT19JTkRFWCI6IiR7Y3VycmVudF92aWRlb19pbmRleH0gb2YgJHtsYXN0X2luZGV4fS4iLCJQTEFZTElTVF9ERVNDUklQVElPTl9JTlZBTElEX0NIQVJBQ1RFUlMiOiJQbGF5bGlzdCBkZXNjcmlwdGlvbiBjYW5cdTAwMjd0IHVzZSBcdTAwM2Mgb3IgXHUwMDNlIiwiUExBWUxJU1RfTUlYX0RFVEFJTEVEX0xPTkdfQllMSU5FIjoiTWl4ZXMgYXJlIHBsYXlsaXN0cyBZb3VUdWJlIG1ha2VzIGZvciB5b3UiLCJQTEFZTElTVF9OQU1FX0lOVkFMSURfQ0hBUkFDVEVSUyI6IlBsYXlsaXN0IHRpdGxlIGNhblx1MDAyN3QgdXNlIFx1MDAzYyBvciBcdTAwM2UiLCJQTEFZTElTVF9OQU1FX01JU1NJTkciOiJQbGF5bGlzdCB0aXRsZSByZXF1aXJlZC4iLCJQTEFZTElTVF9OQU1FX1RPT19MT05HIjoiUGxheWxpc3QgdGl0bGUgaXMgdG9vIGxvbmcuIiwiUExBWUxJU1RfUEFORUxfRU5EX09GX1BMQVlMSVNUIjoiRW5kIG9mIFBsYXlsaXN0IiwiUExBWUxJU1RfUEFORUxfTkVYVCI6Ik5leHQ6IiwiUExBWUxJU1RfUEFORUxfVU5MSVNURURfUExBWUxJU1QiOiJVbmxpc3RlZCBQbGF5bGlzdCIsIlBMQVlMSVNUX1RFWFRfSU5QVVRfQ0hBUl9DT1VOVCI6ImN1cnJlbnRfY291bnRfcGxhY2Vob2xkZXIgb2YgbWF4X2NvdW50X3BsYWNlaG9sZGVyIGNoYXJhY3RlcnMgdXNlZCIsIlBMQVlfQUxMIjoiUGxheSBhbGwiLCJQTEVBU0VfRklYX0VSUk9SUyI6IlBsZWFzZSBmaXggZXJyb3JzIGFuZCB0cnkgYWdhaW4uIiwiUFJFTUlVTV9CQURHRV9MQUJFTCI6IlByZW1pdW0iLCJQUkVWSU9VU19WSURFTyI6IlByZXZpb3VzIHZpZGVvIiwiUFJJVkFDWV9QT0xJQ1kiOiJQcml2YWN5IFBvbGljeSIsIlJFTE9BRCI6IlJlbG9hZCIsIlJFUExJRVNfU0hPV19NT1JFIjoiU2hvdyBtb3JlIHJlcGxpZXMiLCJSRVFVSVJFRF9MQUJFTCI6IlJlcXVpcmVkIiwiU0FWRV9QTEFZTElTVCI6IlNhdmUiLCJTQ1JVQl9TTElERV9VU0VSX0VEVSI6IlNsaWRlIGxlZnQgb3IgcmlnaHQgdG8gc2VlayIsIlNFQVJDSCI6IlNlYXJjaCIsIlNFQVJDSF9BUFBFTkRfTEFCRUwiOiJBcHBlbmQgc3VnZ2VzdGlvbiB0byBzZWFyY2ggZmllbGQiLCJTRUFSQ0hfQ0hBTk5FTCI6IlNlYXJjaCBjaGFubmVsIiwiU0VBUkNIX0NMRUFSX0xBQkVMIjoiQ2xlYXIgY3VycmVudCBzZWFyY2ggdGV4dCIsIlNFQVJDSF9FTlRJVFlfU1VHR0VTVElPTl9BTEJVTSI6IkFsYnVtIGJ5ICR7YXJ0aXN0fSIsIlNFQVJDSF9FTlRJVFlfU1VHR0VTVElPTl9BTEJVTV9OT19BUlRJU1QiOiJBbGJ1bSIsIlNFQVJDSF9FTlRJVFlfU1VHR0VTVElPTl9NT1ZJRSI6Ik1vdmllIiwiU0VBUkNIX0VOVElUWV9TVUdHRVNUSU9OX1NPTkciOiJTb25nIGJ5ICR7YXJ0aXN0fSIsIlNFQVJDSF9FTlRJVFlfU1VHR0VTVElPTl9TT05HX05PX0FSVElTVCI6IlNvbmciLCJTRUFSQ0hfRU5USVRZX1NVR0dFU1RJT05fVFZfU0hPVyI6IlRWIHNob3ciLCJTRUFSQ0hfRklMVEVSU19MQUJFTCI6IlNlYXJjaCBmaWx0ZXJzIiwiU0VBUkNIX0xBQkVMIjoiU2VhcmNoIFlvdVR1YmUiLCJTRUFSQ0hfUFBQX1BMQUNFSE9MREVSX1RFWFQiOiJTZWFyY2ggcGFpZCBwcm9kdWN0IHBsYWNlbWVudCB2aWRlb3MiLCJTRUVLX1NMSURFUiI6IlNlZWsgc2xpZGVyIiwiU0VUVElOR1NfTEFCRUwiOiJTZXR0aW5ncyIsIlNFVFRJTkdTX01JQ19QRVJNSVNTSU9OIjoiUGxlYXNlIGFsbG93IG1pY3JvcGhvbmUgcGVybWlzc2lvbiBpbiBkZXZpY2Ugc2V0dGluZ3MuIiwiU0VUX1BMQVlCQUNLX1NQRUVEX1giOiIke3NwZWVkX3JhdGVfcGxhY2Vob2xkZXJ9eCBzcGVlZCIsIlNIT1JUU19UQUJfTEFCRUwiOiJTaG9ydHMiLCJTSE9XX0xFU1MiOiJTaG93IGxlc3MiLCJTSE9XX01PUkUiOiJTaG93IG1vcmUiLCJTSE9XX1BMQVlFUl9DT05UUk9MUyI6IlNob3cgcGxheWVyIGNvbnRyb2xzIiwiU0hPV19QTEFZTElTVF9WSURFT1MiOiJTaG93IHBsYXlsaXN0IHZpZGVvcyIsIlNIT1dfU0VBUkNIX0ZJTFRFUlNfTEFCRUwiOiJTaG93IHNlYXJjaCBmaWx0ZXJzIiwiU0lHTl9JTl9MQUJFTCI6IlNpZ24gaW4iLCJTSUdOX0lOX09OX1dFQiI6IlNpZ24gaW4gb24gd2ViIiwiU1RBQkxFX1ZPTFVNRSI6IlN0YWJsZSB2b2x1bWUiLCJTVEFCTEVfVk9MVU1FX09GRiI6IlN0YWJsZSB2b2x1bWUgb2ZmIiwiU1RBQkxFX1ZPTFVNRV9PTiI6IlN0YWJsZSB2b2x1bWUgb24iLCJTVEFUU19GT1JfTkVSRFMiOiJTdGF0cyBGb3IgTmVyZHMiLCJTVUdHRVNUSU9OX0RJU01JU1NFRF9MQUJFTCI6IlN1Z2dlc3Rpb24gUmVtb3ZlZCIsIlNVR0dFU1RJT05fRElTTUlTU19JTl9TRVRUSU5HU19MQUJFTCI6IlJlbW92ZSBpbiBzZXR0aW5ncyIsIlNVR0dFU1RJT05fRElTTUlTU19MQUJFTCI6IlJlbW92ZSIsIlNVR0dFU1RJT05fTkVXX1ZJREVPU19URVhUIjoiTmV3IHZpZGVvcyIsIlNVR0dFU1RJT05fVEhVTUJOQUlMX0FUVFJJQlVUSU9OX0RJQUxPR19CVVRUT05fTEFCRUwiOiJWaXNpdCBzb3VyY2UiLCJTVUdHRVNUSU9OX1RIVU1CTkFJTF9BVFRSSUJVVElPTl9ESUFMT0dfREVTQ1JJUFRJT04iOiJWaXNpdCBpbWFnZSBzb3VyY2Ugd2Vic2l0ZT8iLCJTVUdHRVNUSU9OX1RIVU1CTkFJTF9BVFRSSUJVVElPTl9ESUFMT0dfVElUTEUiOiJJbWFnZSBzb3VyY2UiLCJTVUdHRVNUSU9OX1RIVU1CTkFJTF9BVFRSSUJVVElPTl9MQUJFTCI6IlZpZXcgaW1hZ2Ugc291cmNlIiwiU1VHR0VTVElPTl9USFVNQk5BSUxfTEFCRUwiOiJJbWFnZSBmb3Igc3VnZ2VzdGlvbiIsIlRFUk1TX09GX1NFUlZJQ0UiOiJUZXJtcyBvZiBTZXJ2aWNlIiwiVElNRVNUQU1QX01JTlVURVMiOiJ0aW1lc3RhbXAgbWludXRlcyByZXF1aXJlZCIsIlRJTUVTVEFNUF9TRUNPTkRTIjoidGltZXN0YW1wIHNlY29uZHMgcmVxdWlyZWQiLCJUT0dHTEVfT0ZGIjoiT2ZmIiwiVE9HR0xFX09OIjoiT24iLCJUUkVORElORyI6IlRyZW5kaW5nIiwiVFJPVUJMRVNIT09UX1BMQVlCQUNLX0lTU1VFIjoiVHJvdWJsZXNob290IHBsYXliYWNrIGlzc3VlIiwiVFJZX0FHQUlOX0xBVEVSIjoiU29tZXRoaW5nIHdlbnQgd3JvbmcuIFBsZWFzZSB0cnkgYWdhaW4gbGF0ZXIuIiwiVFJZX0FHQUlOX01JQ19QRVJNSVNTSU9OIjoiUGxlYXNlIHRyeSBhZ2FpbiBhbmQgYWxsb3cgbWljcm9waG9uZSBwZXJtaXNzaW9uLiIsIlRVUk5fT0ZGX0FVVE9QTEFZX0NPTkZJUk1fQlVUVE9OX1RJVExFIjoiVHVybiBvZmYiLCJUVVJOX09GRl9BVVRPUExBWV9ESUFMT0dfREVTQ1JJUFRJT04iOiJXaGVuIGF1dG9wbGF5IGlzIG9mZiwgYSBzdWdnZXN0ZWQgdmlkZW8gd2lsbCBub3QgYXV0b21hdGljYWxseSBwbGF5IG5leHQiLCJUVVJOX09GRl9BVVRPUExBWV9ESUFMT0dfVElUTEUiOiJUdXJuIG9mZiBhdXRvcGxheT8iLCJVTk1VVEVfVk9MVU1FIjoiVW5tdXRlIiwiVklERU9TIjoie3ZpZGVvcyxwbHVyYWwsIFx1MDAzZDB7MCB2aWRlb3N9XHUwMDNkMXsxIHZpZGVvfW90aGVyeyMgdmlkZW9zfX0iLCJWSURFT19MSU5LX0xBQkVMIjoiVmlkZW8gbGluayIsIldBVENIRUQiOiJXYXRjaGVkIiwiX19sYW5nX18iOiJlbiJ9KTs8L3NjcmlwdD48c2NyaXB0IHNyYz0iL3MvXy95dGVtYmVkcy9fL2pzL2s9eXRlbWJlZHMuYmFzZS5lbl9VUy5fODhUd3l5SEtIcy4yMDIxLk8vYW09QUFBQWdBL2Q9MS9icj0xL3JzPUFHS015d0V1MlRRVXpkU0YwQWNzRkJNVXJGcXl1cktsdXcvbT1yb290LGJhc2UiIG5hbWU9ImVtYmVkX2NsaWVudCIgaWQ9ImJhc2UtanMiIG5vbmNlPSI4SW5xZmZBZ0hWLWU5QVNYOTlmWmxRIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL3MvcGxheWVyLzdhNzk2OWMyL3BsYXllcl9lbWJlZF9lczYudmZsc2V0L2VuX1VTL2Jhc2UuanMiIG5hbWU9InBsYXllci9iYXNlIiBub25jZT0iOElucWZmQWdIVi1lOUFTWDk5ZlpsUSI+PC9zY3JpcHQ+PHNjcmlwdCBub25jZT0iOElucWZmQWdIVi1lOUFTWDk5ZlpsUSI+d3JpdGVFbWJlZCgpOzwvc2NyaXB0PjxzY3JpcHQgbm9uY2U9IjhJbnFmZkFnSFYtZTlBU1g5OWZabFEiPihmdW5jdGlvbigpIHtpZiAod2luZG93Lnl0QXROKSB7d2luZG93Lnl0QXROKHsnUic6ICdceDdiXHgyMnJlc3BvbnNlQ29udGV4dFx4MjI6XHg3Ylx4MjJzZXJ2aWNlVHJhY2tpbmdQYXJhbXNceDIyOlx4NWJceDdiXHgyMnNlcnZpY2VceDIyOlx4MjJDU0lceDIyLFx4MjJwYXJhbXNceDIyOlx4NWJceDdiXHgyMmtleVx4MjI6XHgyMmNceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMldFQl9FTUJFRERFRF9QTEFZRVJceDIyXHg3ZCxceDdiXHgyMmtleVx4MjI6XHgyMmN2ZXJceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMjIuMjAyNjA3MjQuMDEuMDBceDIyXHg3ZCxceDdiXHgyMmtleVx4MjI6XHgyMnl0X2xpXHgyMixceDIydmFsdWVceDIyOlx4MjIwXHgyMlx4N2QsXHg3Ylx4MjJrZXlceDIyOlx4MjJHZXRBdHRlc3RhdGlvbkNoYWxsZW5nZV9yaWRceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMjB4Y2IxNjAxOTc3ZGJlMTVkZFx4MjJceDdkXHg1ZFx4N2QsXHg3Ylx4MjJzZXJ2aWNlXHgyMjpceDIyR0ZFRURCQUNLXHgyMixceDIycGFyYW1zXHgyMjpceDViXHg3Ylx4MjJrZXlceDIyOlx4MjJsb2dnZWRfaW5ceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMjBceDIyXHg3ZFx4NWRceDdkLFx4N2JceDIyc2VydmljZVx4MjI6XHgyMkdVSURFRF9IRUxQXHgyMixceDIycGFyYW1zXHgyMjpceDViXHg3Ylx4MjJrZXlceDIyOlx4MjJsb2dnZWRfaW5ceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMjBceDIyXHg3ZFx4NWRceDdkLFx4N2JceDIyc2VydmljZVx4MjI6XHgyMkVDQVRDSEVSXHgyMixceDIycGFyYW1zXHgyMjpceDViXHg3Ylx4MjJrZXlceDIyOlx4MjJjbGllbnQudmVyc2lvblx4MjIsXHgyMnZhbHVlXHgyMjpceDIyMi4yMDI2MDcyNFx4MjJceDdkLFx4N2JceDIya2V5XHgyMjpceDIyY2xpZW50Lm5hbWVceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMldFQl9FTUJFRERFRF9QTEFZRVJceDIyXHg3ZFx4NWRceDdkXHg1ZCxceDIycmVzcG9uc2VJZFx4MjI6XHgyMkloTUlzNU9Lc3ZueWxRTVZ4OXRQQ0IydG53MTVceDIyLFx4MjJ3ZWJSZXNwb25zZUNvbnRleHRFeHRlbnNpb25EYXRhXHgyMjpceDdiXHgyMmhhc0RlY29yYXRlZFx4MjI6dHJ1ZVx4N2RceDdkLFx4MjJjaGFsbGVuZ2VceDIyOlx4MjJhXHgzZDZcXHUwMDI2YTJceDNkMTBcXHUwMDI2Y1x4M2QxNzg1MTU4NDMyXFx1MDAyNmRceDNkNTZcXHUwMDI2dFx4M2QyMTYwMFxcdTAwMjZjMWFceDNkMVxcdTAwMjZjNmFceDNkMVxcdTAwMjZjNmJceDNkMVxcdTAwMjZoaFx4M2Q2NGtTODRkenVmMTVkdlNMNHpLUlVkR3Zqbm85akJQUXJFNXViQmtITXpFXHgyMixceDIyYmdDaGFsbGVuZ2VceDIyOlx4N2JceDIyaW50ZXJwcmV0ZXJVcmxceDIyOlx4N2JceDIycHJpdmF0ZURvTm90QWNjZXNzT3JFbHNlVHJ1c3RlZFJlc291cmNlVXJsV3JhcHBlZFZhbHVlXHgyMjpceDIyXC9cL3d3dy5nb29nbGUuY29tXC9qc1wvdGhcLy1rS1pZWGJZTDF6S2RkVldpUnBLUUFzLUZGcm1YaV82VWtjbWhGbFlMb3MuanNceDIyXHg3ZCxceDIyaW50ZXJwcmV0ZXJIYXNoXHgyMjpceDIyLWtLWllYYllMMXpLZGRWV2lScEtRQXMtRkZybVhpXzZVa2NtaEZsWUxvc1x4MjIsXHgyMnByb2dyYW1ceDIyOlx4MjJscnY5bFl5SHdUc1J5OTh0R3huZzVrNTY0ZmM3TGpcL21JMkdKT3ZkS1hJaml3Q1k1MjhCaDVpZVBIcFBwZGJ6RUJBZ3lwQlBjU3lIXC9sOWNDbmVIMHgrU3JxZVFzczZsbFJrd3NVSkJIdTF2OXN6REZuUlgyZXMxdVVGMmdCYU1Ec0ZiTnR4VVJDNjR3WktwMUZoSDhOWlZJM0ZLR2d2ZnQySnU1cHVQcFVXV0kzdE1KTDU1b2I0VEpuXC9BOTZlZ3hzaTFjOUtIMUFuUjhMRFdvVTNvbktDYmxqZEJWbCt6MTVmNUVyTGxuR01GMUs3aWgyYk1IQ09TZnlaUXB5SzJ1NFhHVmo0b1JQV1Z4ZmlscUlXdkdPTG5nSVBDQjVlZWMzMUdhK2JuXC9xYXVNYnI1aVExdkdFdUtiZkFcL0l2M20rd0c2UVFFV3lydkd5alJuS09vbFk5TEVTOEZHa3VjUWZPMGF0RUtTVnFDZ1VqWUtxcStPRWNRSVgzRitMcVZmVkx4S1FsWkhSaFZPUDJ5NHR1OHJONGtOcVFjM003KzljcHEzQTZDaE5xQURLTDVoSndtNXNcL1lBdW50YXorRTFnakhQMXFDTG1rMDFDdE1lc1FRbGc2bzBoaGZQUDZNQjJJVWZ3VG5zTDNBRWI0TVNXZWZqczJXNzlhMXFtbWtKM0J5bFpVeGhHa2ZcL2VxTnRuUTNhcTlKOXlXTzVZTnNObG9cL3g5djFEenpPN3NSazI3WStmXC9WdnBVMkU3OVBVbGp2MDl5bTNJQ0RwdURUSDRyaVNmbkxjdVAyVEVPbHNrXC9pb2hnVitEZmVmeFJKWGNNNUpqbEthekhCQ2xcL3RBWlRDNXhkOENXVWJDWmtmSFUyWUdOVDdOR3B5dEFoT2VVbFFMMjB6cHc0Q3JwdzN0Y21cL0s1UXFQQUF0emwyVndJcEpSNVQzMXNWdFBZNTFsbkxyOGxDNFwvV1VPNVwvUUg4MXlWeVhZclFWNVlKZ2M0QkFoMGZFWnBZSUc5TWFMNlhCQXJ5RUh4bGFcLzRKQkEzMWZWMkRZOWtLT0dwSWRTbkdxVTVyUWRFZGJ1RloxNjlaTCt6K2NHVG1IQVYwbzlIS3RwWWNKYlBpWWIrUnJnXC84YW9PXC9ORGczNFJBRGJMazF2XC9GRXNOT3RqT2xcL1ZzXC9CWHNKZ0Vac1M4Y0liUTlwQWxSV0NybGRqN0hKbTduTGI2QVdhZ0piM291NTc2b0YzT1gxejdMOG1JU0ZBdUk3bFE0RGo3ZTNyQzF6TVpSZnFVdFBUZlJLQVBDcnBxQlBRV2Z6dkRoUXUrMTQyQURcLzRRZXpBNFNWWHcrUUR1UVZUakdHUHc2d1Q3T2RJQ2doRGJoMHBLVDdcL3dQMlwvSjB0U1NBbUNcLzBKOXdSaDNJMjMxYWZ4clE1cFlhZFFta0ozaWlUeU1wTXBFc2hQZ0MxVjZtaGdwdG5NWDZ3MzJkVUIydmVzZ1I1VTU4TjJ3dU9ZcXRVMExqZlVWaUI1MGIwemE5M0VVZVJISzh3NmdRK0cxbVwvdTJJQjNUYnpVMDN6cWhGZmM3bm40ZGc0cU53V3VQTGxvdXA3VnRYZEFQcmlibFMwWjFCZjhCSnZ6WGtRbmw4TkpoYnMwc1kwVnNiVTJjS3ArckIrR1A1WWN4RWkzVXhzQVpxYzVBUHgyUGVsWUJHekdMMUkyazNJUTJEYzI0M3FBeWV0U00raWtDTGQ2cU1FZVZyM004UENyOEg2eWhKbGI0aDFFc0dJRUpZVGxtQVwvTk05ZVJtTDdvbHdJUHpcL1wvekZYM1dTempBR1E4Y3FKTFFrbjdCV3o3NDRiU3pMaTBWQnFuZWlPZVpUeFwvR0ZSTjE2TXFDdmUxc2NjS0pqY0JRUEFyZTNEekloZVJnQjZnZkFVa20weWVLckpBVUR0VjY2dlhOVWxrdkNkZnc2bVNXb3VxQndQSVlkRmNJMDk5ZnloOXFmTWJoeFQ4NmJyMkUzdUxCZm9aWEhJUStLdHVrRXF0VzFGZ0NSMGtHOHR4SVFOTEpQZDE3ZHpVc3Y4aVhQRDZ0WG5kaHpzU1ROUHJsSEJ0MWw2ejExczNES25BZ2ZCQXQwV0thajdZdU9mNjZPbXNHY0FMaGhWY0EySlwvS3VJMU9YaGRlZkk4M0F0SGNxblNVaUxYNW05QTE2OUdtTHl5YTFoZkpZeTJtclRabzBcL21jTlBac0M0bm5aSlZ5VlJaK1JHVFlIcUJFKzI0eFwvS2VlOFlOdkt0SE9BQlpSNng1MTAzUzVoQXVWZzhYN3ZOeWNLT1MwS3RUN09FNm1oMFhRUUlEcTBuQ1Y5RXdvQXMrbkljNm40WU16dnNWRnNSd3FcL09qTE1QQktkTWlMNjh1NTN2M3FPTnpUbWFYbkFrV3hZYTZtRGg0RFhITTlRdEhIK05sSXNLV2JlZUJaeTNEY1Y2S1wvMkJacTNtZDROV29uaWR0MGJ6MVBzYTJhRzJRb0J0Y1hRUlwvTVJCMjRtQ3ZJaDlQbnNsVldqVnNNSkk4ZThiRnhaNHdJQWtJcVdaZzZHUzNNWSt3TStOcDNwWmZxZXRGdVZMaHNUZEhobCtSZlhnWUhEUVlwaGt4bW1pQWYrZUhsSGUrM0krR2tpKzRxSVcxRmw5R1VzdXhQS0pHeDVKeFROYmN5ZVwvOXFySHFrNnRuS2RkU0xZZm5WenUxVG5GTDlVMnlRbmlmVVo1WHNJcTJxbGdFZmpNSE1PdElSaVVPak5tdkUwM3JGdUg1c1VDXC9TTWlaTkN6M0JJcERHM0tQZ3FWMHZHT0dkXC9hQUd5U1pvVG5pV211UkxPOXRESUQwVGZtMkdLU015QTZUcGxNSW50YkduczE2TjZQV3NIZllBQTdcL2FpQVkyeTh3QmVIaXZYQys4RkxpNUN4RnVEMHhVTHRFZnRReXNJOTZRY3YyZ0QrclY3ejZxWHFxQVJ4b2tXM0FoeVwvY2hoTGJxYldWOTlGakVPWFRNRkQzUHJHaGQwRklkSGdkb3ZGTk5PcmtEa1lpejRYTWZHYTlFYnJtZStTamFYc3R2NzI2d2p4cEQwNlFSU3J1T200MkVpVmNRQkFueEs3R0RUTzFZdHN0bmRlbWJyVXBHUUExaGMxYWpXdG53WERGSVwvem9jbkRYXC8xcUdKdUV4QjJJQ2pkdUs4YlJSTUNqTHlKanRINGpTRGtkV3RjNHc3dUdONisxZUtOcDduU28wU2R5YnBpN2xscm9MMkVhazRpMDhNNkppS2c2bW1GVFR4ditPVEdmVmMxb1cyelFJa2VXRmNzSjNiNkwzZ1NoaW1BVUY3YjRFaEhWa2RIZUZHREJ1Rzg0aE82YVczamM4RFhQTGtBemR4XC9SRGpWa25jYjd1VUYxb0FXT040TGlVOU1reW05RVwvQTR1VE9MUnJocXlMNVMrV3J1QVVpRXg2ZkRHYjFhK0lrTFBwWitzRk1tNVJJck1zTjFOYzkzcUhJNWRVWVVJVFYwS2w5MWhuQjFJTFwvYTI4SGpcLzlkXC84bTlGNmFqdXF6OFVTTzRtMFU0S29MWmRvVGZRbkp6SnJnbVA2UHpCczZ0MHg3d0VNTlRxdUdEUDdVOHRoMnlRTVRxOUxBa2xZY3BQd2s4bHlvcUdPZjZPUmk0a1RDOVJ4NU9ucG5yVVBxa2JiRmZmZ0lzeWdjd1k0NXVCalc4S2ZLdU56TTBPeTdXQXBFSitCVUlmcmFLM0tUb0NKNnd4RzJtbHgxYlpKc3NuZUxQMkJrclFmdDRObTNnSUwzZ0NFT1wvaEJyZE51N0paanJpNENFWHZ0SjlERERjM0Vyano2OVlWbVRCYTFSNXl3RVwvWE05T3VDWlpJVm45U3MyQ3E3YjBcL3BMemFwdHhlaEp6enQ5V2s1Zm5BbzRFdGx5TWlqRU5MaHgraUFnamlFZlhIVUUrbDZ6VzA5MU1XOUZHQXhwOG1XazVpTG9aWkhWNDZkWHBoSVk0ZWdxWUlXTjJsVnh0THFtZ0VnSlR2dWNPWDNuUlpcL1haUU0zbXRnNkdZVFo5QktKRjZoaHd1UGsyZkFWeFJ5TUQ1elc4cnNuOXFuYWxNUEhzNFwvMFg0djJ1eVFoQ1RIREhtaFN3b2RcL3kzNDlWKzJRTG1ES04yZ29CRjFOWHFZY3BtNkdTS0hhWGtwN1RrbitQMHpnVzJrSEU5OGk2MDR4emMwWmVCWGtnV2NGRzFUR3Y5Skt4aTFTSWNKZFZyendNSEREZCtcL3NXa090RmRXU2R4SXhvYVgzRENFUjFxUHBZMityUE13T25WSWtEVmFRWERBdnA3MExpVGhJUWNYWVFMNUZVMml1WWVtUmUzbEpoWGRGa1VOeGdpMWxcL1BmRXY2REJoSHlzXC9ma0N3TFcrajVDMEE5WXA1M3Z1TGRCdkNqT1lJSkNBZThwOTJlMVpKc2xrTnZ2ZlBRWEREUUlVVHVRQUp5bDc3T3dPcjluZmFNaHZuRk9QaThcL3l0OGUwSTh0QXFHZDNsWURhK2lFVlV4eXJ0UFJcL3AxOWJGY21pbGtUMHZ6XC9PMnJtUVQ3cFwvajlcL1wvWEloZ1ZBU1JFaFZ3Z3hrMzdpaDhVaDlMa0JtdlQ0UVkxU0M3MmRiSnVQQVhXTXc0TXlkTjVpTEIwWllSOEpiZ2Qzck5mXC9HckR4bnloUk9sVVhpY1ZlS01VNDg1eUFKb1dQN0N2cnBqMVM3NmVsd1lBSndHOHdUQ08ya0hhRXQyNWpjbkJyellUMEk0MHVCRTlZckozcjhwS3JPR3JlRFZGVFpOUVFLTVhGT3dYdnRGMU1aNUlvdWVqNHV6K1dzS1ErdkVvOUlLXC9uVlJmZFZTYWlOcmFaWkh6OTdcL0puM3k3OHFQaHFCeWl1Y1RaaEQyZnZJMjNFWUZmSWM2ZnJjVEtPc1R6VGpEQmZUdE1ZeEpkQ1YzNUYrMUVoeFNycXJQSlBTeUlJWm5GUWpvN0JHVDYwekppQ3BKSjRpNjMrQmFXaTJ4RXJpdlJ1WG9rMkhJNnFSeUx4OFc3eWxlMjQ0WG1zTXhxYk9sSVwvdWhYbG4wR3pMTENLbWdjVExnQXdHOHNrUXM2V1BwTWVVK3lyXC84Mm52cXJNTVlnYWlwU2VkbjFnVkExemZ2TjZMMWZtQ2xIcEY4YlFXR3hMNE1FNnJUV1wvSXM3M1wvVk1TWkZ4MEZuOUg5d1hxaUZad2VEWTRNMEhnWkdGSUVnaENQS3BEM0hKWEowSjlHWlM1dit1ckE0a2I1WXV1SHdEMDNZS2ZFU25VazczbmU5eWpUcDZIMHhKVlJla1BkdW0ydWRUWFRLZWlCT2lYSExuNUMwNm9CWm5EYjc4aEd6VFFMWUtNRUd6d1lzVEc5TmNJQ3hhaEVQV1gxbklVTlR2bUkzSWpwVHl6Sko4eFwvRzVzbnZkNkpZblhJYkp1YndxeFBHMllveFRKY3pZeEErY0xFSjFlMDljWU1pYVlOZFpFd0pRSEFMbXZtY0x3Nlgwb1wvMTg4WDBrSlNXOXp3empOY2VvMkE5QkhQc0VZQTZueXFtUEdNT1ZSeG9lY2hjZTFOZ3ZjdEY2OGQrWVRJRU1YckZLcmYrY055U1ZONXh1cm1UNUlmcEl5clwvc2VkXC9wOXY1UUE3MmxHajFLK1BqNXllSVBQWGMzWFF2WFIycUZ5WkNLSDliUlwva1UzU3pXV2JOU09ROWs0ZWpPOVJGekFFa1d3UVN4K25NeVR1ZkZRZ1dFU2huWjlnbXc2WTE1WlQwZ2w4RFZtS3J4R1RQQ1pvYWo5NWRKQ0ZRQ0FGN1M2ZjhEV252dUVTeFZDcDBFMFhNMDNFV1wvdEpCcW1zZXZyZnNuUFFzdU5VZDdWWUwyK204Y09ueTNmK1IwZ2p2UGd1dVwvWHYrZGQ3Z2JWZGk0Y0lHQzduVjViMTB6TmdsOTJcLzR6b3FmdTFabXNlbytrUDVqdDhZazQ5WjVNZ09kb3ZDdmlleUFEVmNNcm1IMnYyTldWaXBkcFJ2MXhITHk2Mld5Y1hFejhDTXhWcUlHOGh0bjZZZ2wwaWVBWWdKMmNWaE1GRHNmZ21zeWRnbDBRVzZQeHRQOFVCUGExNktHVW1cL1BKVGZ3dlpYbDlWNjd4VHJVaytJamFhd0NJNmNJQ1c5azQzZ1ZPZ2E5bW1sa3pOaHhHRnpkMlhva2NqUWl5WFBpQlc2ZXdvVWxzNE0zRWRqdm5jUlVcL0NCdkNFbFpoSjhjUlhsV1JqOXNubnFVZ21cL0hNbThVTXQ2Vmg0cnpzMTdtR3hVY1lmN1JSUUpFTkZjeW93QUoxcjRpUjNrY1BPNjQwRDRaY2dWSlRYQ3NCNDVndER4dkhjczNnRzJNQkZSVTB2OUVlMkluOWIzMXRYS1ZSV0xzdllMK1h2ZHlUUGxLTFQxVXE1WFJuTVV2bENQeERJN202WkIzMERFVXdEY2l0Z3lqeU1Yb09MYm02UnIwT1wvejkrTFA4cTA4cEMyNVZSbjNNMGcwRFRaNHZQekZPdUlKV29XRGJhRUpjOXFCTnV6QllCNHJxaFlaaVwvb2UwXC9SNkw4ZmZ3T3hCK3BFNjlBb3pPMEFlSFRyaEVyemxOcFlTS3NCeTFpXC9CSDVGNTVldUVsSm1WOGJHbnBWWnQ1bEc3UmVVVzA5cHdMbjlFVGcxeWZhZXVYN2lNS2FhczhVaVY0NkZlNXFuQ2NoYUl0YStWNHc1OHdcL0ZVOEh6WWJDejI5VzFuKzh3VXAwYnNvSU9pRVFoTXFIWHYxXC9ReGNFXC9KZXpQMDJDY2xrUnhzQ3cwaUtzdnU5WGJnXC9tOXhqc1loTlkwejUzaHBVTFAyQnI3bUNHTnZvQnkyQit0WkQ2cDVZXC91SVNObUlmaVpnSVI3QkVJZ0RRYzNNUzQyZTNCbmQzbjIrNE45NElqYXRTRzhJcW9yTitNMXl2c1RIUTRpNHFYMDByYUFlYm5sK0VoOEtpSmRvVkdZTW81MG5cL2xocHZkaHRNSjNwajdOT0FmQUFkaElEd21rMjNiU0lSRjJ1andiQ3JFb1F4cVZHYUdsXC9zeFY2aUJGbTF1QkpraVIxU1RcL284SFBDMmU1bERYMUlHd1Bza3lpR0l4QktsNmpcL3NLWm1ORHpDbWV3aytuc25GZ0dkZjhcL0tMbVwva2VBUFYwNXRJRHB1TVQ5c3RjRGEwZ2kzTjM1YzBnajdodytFbEJ5cThIVElpdHoyZzk1dmErdmo2SUpYMEI0VjZWNCsxV1YyZmY0dFhKckphK3psVkQrRVJPNCtvZENhaytjQ3o2UVFNS1BldmFyb3RjSTZUcFdpWjZZR2Fyb2dncUQ0MEdwTUl2d29CQ21oU3huMWt6eXZocHdOTFBrZXNFcjB1R2ExczlibHRpVTIwT3VsUGJCZ1JNRWU0TThrRjF1QTRFbG9iaGdKcjJ6SkZZN1lWZXdvRmJRR3ZIaEorRHppNFdUQ29PZmNoWUdHcUVpbXZpK2FWaVBxTUwrajNkMkF3VFRrdHNPN1A2NnVzcHVTTDBVUTcrK09MY0owU0ZWM0RmSEVteVkxSm1HbDVXY1BcL0dBVkNTSXZoM3pCenBBbHNZZzdNXC8xTDhFQ1drd1wvcWdxWmVwK1diNjJpMVZXM3VmUVVXZXNrUjZnckpHS1FtaHlxbWdVM3JGbWNFWGZhNGtRVzFUa0VqVVRiQ3RZdk1Vd2VDSUltUEV1TjZXdGxOaE9LblRGWkUwRlVORWQ4N0tTZFwvdHVXUURzZDcyWGRPdk9LSE9aYitabnNMV0U2ZkVjaStCYmtUa0RhNWxpQzI4dUNBSGVVUGswT2htektwbEJ5ODBMdkI5NXhrd1pWdUJ2anh3R0xLYmlZS0FnYWM2WDVGeE9iYjdWZmZvbisrVFJCajhCajJHUmZoOEplcDg5UXpaZXVCRnBTOFVFN3pmSWpMV01EQitvQU9jNkczWlo3SDUrdHFWcEIxT0UwV0kxUm1GTWZcL2s2TnJPQVlOTlZVaFJlVVwvS2pnTHNBSjN3WE1VeWNUVGFDMkF4amRPSTlFSUh5Tk9qdzA5VWFkM2hEQ3FsQjJQUE15ZG5BS0s2cmN1MUNsQVwvcjZ3WXc1Yk5LN3RXSmNWMElhMll2bHhOcnU2dnFiWlo0bXlDSEVVNU5oMk5PSStYejlyeVRoOUY5dEpKZWsxOGpiOEZQWDN5Uys3anBkUzhCbmV3TmdUeUZVR1hweENIYVV4TklSMGxcL1RNUEVvZlFwWHhYUkt3bEhYbFlrVHpMYm1CRlwvdFVzNXpIUkIxT2oyb284c2ZiVWJcL2RYMkRoNTZuVmZPK1lxTmUweWtxcXRUdFV2dFVkRFZMM2NyYUNUZyt2ODh4K2hIQVwvVmIwWGtrVjJ4eXJnQmg0QUs4VkdXcEpBZ1U0Vm43UEpRQ0dkbWNtZEdFUGVEN0xIb3JxSnltRDFmTjliWk9sQ3Y1ejFSdGR3REU5TXM5MEM0d1lXSG9TTFwvRjFIMGVwMTh1SG9INTRwODgzdjdrWFFSZEg5bkZRejhXdXJOUzdlTmhuU1wvcmx5eFl0NmJqaDFhaDJtNnB6T2NOclpXZmtPdHRxU3VZR0Jjak5xbnl2XC9pNUw0S2RpeVB5dXNnRElmSzk3dVhnWmY1bWZHaHhFYTk5eDl2RjZFc211XC9IQ3FYTTZSc0N1WnhTb2lnaGZ5aDI0Q1dCbStwajludDRCQW42enBtaDNrQlBLazlPK2xHYVFKaTY0SXBZZVMzZHpIVWlUSXhDMHkzZGdZOHN5bGRZbUlINjJEWVVyR2ZJa3JENUxsdnZFRVd6XC9UOHc0b2IwM1o5YmdiVEsyOExJdWVaS3kxRHpaQ1k3WkF3OGJ5elFub2pEUmIwRzMzdStsWUs1VldTZVg5TUE5MTJiMmtUK055WXgzZlNNWUJzbzJpOG9CeE1cL2pqcEpDZ1JDUEE5S29tWWtmZm4rUjc3VWM3OWJXRkF4cmxRZ0c3QSt0UGNJaU1ibUFQYXBGT3lLa2VhZjBPRzRWSHpFY3RBOEJXSVE2emE2Qk84SVR0dnMxRElKTXd0Smc5eFJROTAxUUEwSVVGaE9zdVEzQ3NtYzB3c3ZGUEZ2Zkl0Y0pxYlBYbkxvdWxBSFhPM2I4eHhnQnNzMlBNTzdEeEo4Q2JhNlVUSGg1UmFZNHdPTzhUYUNOVCthcUlpRVpVV3dvOGpHR0xXQmVyeGMrc0lOQmJkZW0wY01vbDl2Q0NVS0tiSUVzd1lKeDIxUzNPSGp3U3FNb1hVMW8zNDMrbXliSDVPcG1wV3ZZd3cxeGFVdjNCQ0pFS20rRlpHUFJ5ak1tSFo5VU90T3pGNmxBQVdwZ1Y1cndtZ3Y0XC90eHlkc1wvbVJFV0pjNXZqWUZ0bjlVaE92c21qOHFGRDZmNTFVV0VPVmdXTjA3S2Nqd0xcL1FleUkyNG9EdlYxVzZ2SHEyOG51cjdtcUxJcXVcL2lzSU5hVzFmVWdVT3pXeU5NMWlOSnVcL3ZkaTNpa2E2UEMrcXl5a3Z6MmJCSUtuR2lzSXF3RitJS2JTazRWa2gzbnN4aEJlMjlXMUlTb2dzRUJNbnlcL1p0QjNuZjh5b1BNclMzTHl0WWFMRDR5Ukk3Z1wvZklmcGlHWWdWNWhHMzZ3Qlo4cm03TVBWeUJ3YjBraVZvR0dLYVwveEFURkZ1K3pJTVJYblQ5dFpSN2JsV1wvY2ZvTndGdkY5aklnZVBzekk3ZWJlTG5EMFp0QXBMcm9yOFpVd3pzWmZhdVYrVzM4UG56Q1BJNkNjNFA3QlZOMEJ1VzArTU1pNGxua2NjVFdIcms0cFVVMHZRenBGa1F5eWY1R0JcL2ZaRHNraU4yQXJGZWRsazlESEZtaFBKY3FxK2ZEQk5VZTk2b29aZUtZOWpneGJKVDdLQ3UrVjZaMUhTdyttbnRCZTdaZ001eldvVnh5dHVWU1dZdjl5ZVlzZ3RIKzJibkorMVwvRTlOY1d5ZnV4T1JTYlEzQ0JSQTVMZnNRUXp2bU1UdTJDSmNKUnhkelpHcnpzalBFNEhkXC8zOEg4OFBrWm52RFg0VU9ER21nMlJHWStTV3ZpdEZqdzNENlFQT1wvODVDQUFIUjhBcFJ4UjlMMVA5czJoVUxuZFwvUlZUUnFQa2FTUTJQcTRQTGt0YlNwSlExYk5hNzZlSUxGNmdJRzNUQ05mVmkrODl2dnR1V1VTcllGWjZFSlpjSDA5STd0OVoyeE1tdG9DMjRSMWg4OTV6UGFFUCtwc2gzeldXOWNUKzJ2RURsVVBBUFU3UXNkcHBYUEc2Q3hqelU4YVN6MENJRzZKVVwvWDNGaW8ydjlUXC8xb2QzSllJdU1wM2lDdTNkRDFoTFg4dnU5QTU3TjU4aEtpcW5oejBlUmRsclR4MW9MYXFwTDZ2R2FacXV3TEoyNVFYSG1tTkJLdTdiRXlmVGJjSENTYVFMNDRSM3FNdm0yMjJ4ZDVvVXAzR0hQK0JYSzdUaGIraWJFT1dpRWxHZVRzQUdMRWZhSEdpbEdKdlpwcUY2NDBDV2dmU0xUaWFVR05MM3R1WUpJZnJVMDhWdlZOTmhpcTRiOFNselF5aDQrUmJsbExKU1lQQVkxcGZETjZBTUJVSWQ2TkdFVlZDd1lSU3hyR3VsRzBJVVwvZkhwNVc4ZVhYdjZVdEtkK01Ob2VMV0J2SzdjZElBcVwvWTMwc3RFSklOY1BGTnF2eUpNTklCRkM0eFpiSFo0aE1DazlMTU56ZVpWQ1RINk9tOHJtM0RxYklMNVpOYW9mSXNOdStPU0F5bGtweFdjblllSjlySUJvVzVNTk1xU0p5ZE5EaFFRZ1wvalRROEZTcHNBWmtvZWxJZzBRSVcrc0pnRm1GZmtFRG9rVkp1bUZGVFczMm0rb3czTDJcL1B3ZzFwTkJPdW9OM3p3ek5sYkJPdk9wTnA2cWh3UDRFVjRVK2ZBVlN3Z2JjNGQyRHVRSTVmY2NsSzE5dW50S1JpSUt1TG05cXlsRWNUY29tdE9tNlhFVDlueEpFU3F6dFBzbTNReUJYMkZKTEZEa1hYOUhaeFltSGZiamtlUlNFMkEzRDNaYzNtMWJ3c1dQc1hCNGpYT0NxVm02RE1BMjNueitUNm80aUc1Q1doWG1YK29lcmtYSVwvNm1rYVFMYVFEZUFCV2FBbTNNRys0Z3MzaEl1TG5jTHE5eWNVSzd3QzJIaDFtWHNsNWZkQnRNTUxNdGdUbzR0RUFCWTUxeDdZajgxK2RlV1Qzc3RwU0ZDM1Z6TDYrbkdQamd5ZHVPYkdhTEYwbWJRRkdsb0FSWUJuOVRlUUdxaStLTXBLZlJ6UnVSRXBOM0YxTW1RekoxdDFLN2t2dzJ0TmJOd3hzNXpEbFwvV25rOUE0amtKNlNzSmErb0o1Q25cL3ZHeW8zaXp1WmJcL29DbGNZNENUZ3ZZbWJZOWJJMWhQV0JDNDF0S0lidk9sYnpjQk9JcDFoNmhpSG0wZ1ZLSlc5Rm5scU85VjExS3VWSjUrbGppNWxwRkFMRmtYcGNUUFFPYzBJcVBHdm9IMFNBMFhrelhLcmwrc0Qrd0ZsZDFkVkorbFBxb29jSTQza0VJUkRveHc2azdEN1Z1OGM0N2pyZEFLWkhaM3BnWkdEQnVuSVoxZW9YTmxHTTBDOXo0UzA4U29uZjM1QkgzdUNGaGU2YlA3Y211RXlKNVVRUGJaTXJPa1BBczFXQUhUeGFSVU9sQkgzNnJwbVR0OWlRWnp2SlNDKytkV2tcL3grOFlPcU9mSU0rNkxpWFpqRW9qTEgrQTJXeW5MOVdyN0U0bWJDRXNvRUllT21LbDBnM2hcLzhBOHkxendCV0ZZTDdaQXVJMTM0QStlVWJWbTZZYmcwclBtVVRDdW8rbklnWiszeFVUY1BmcjVBdFhxSVU0bU1Da1FlSWl4YXJ3QkZlejFhUlFcL3BkV2dOTGZVVHB0ME80R2RJV3dlbzJRSjQ4K3YyRUROQkk0YVdaV01RWTRcL0g3ME15YzlEVkZaZzRcL2NRYlJhOXN4QnEyb3hidXhSbHpUUDh3TXJLRVVORzRXVVpPcU1Pd0ZJcWdyR3ZPT3p0ZVwvQkZnTWkzSEhrOXp0Y3Bic0xkeVI4TkE2ZnpZeEhXdGx4OTY3eVwvMU5tQlFNVmxOSlAycVdwdktwQTNqMlk0cDZGQ0MwUmNMQTl6OGxFdzUrYVlHT01MNXkzR2c3a3l5OUU0RXlaeG5zQUMwZ2JWTmxEYVVudFZyUTJyUVRrTVczdjJrNkk1b0gySmY2Mm85S1A0eWUrU2xhMlZMc2p2eUxJMHhLR3cyMVdzWEtoOXF5STNcL0JwaW9kNFdBYk13elQxWHpPbVRVR0dvcDh1TlE0Q3B1OVk3V1VRaWVyRzV2Q0ZDbytDbHZHa2Iza3N4cCtLUXladUNZTUlPNjNGVW9NUGtIcnY3TmV6YmxZZEtSZ2NKYUUrZUx2THExWTYwOERFczlzVStXQmFDUGJoUXY2bUJZRG5XZFZ0VTFOQnN2WlFhSHZYUW5zMFliTzNMbFRNbml0bTVHZ2NiZVVMSG5xQnBROERqbkpMWEVDVVwvWjZ4QTlZVlNtNlduOFRCdUtLSWpxTU01ZU1IQ2lLUDFYTDJxRytlRVBVc3FpaGowamhyMHpZOHExT1RGYjNhM0VsS3NhRVhrUmR4UEY1ajdGQnIyXC9cLzVJZm01b0hhc3o3eml5WmhWYjBtUFpsSGlqbDlRc2xjb1JLanVwQlQrdDhYSFE3RnlJdmhVajFhTDN6Tk1pNXRyMSttcmdRbG1iZXQweVJmU3pDWFJhMEQwQlZIcEtXU0xva05ROSt3ZE5iQzgzZDE5c3ZpYVplTU9MbnVLQ1JqMnlIcUVEZkVMdDZPaDhEUWtSZXpIcjdZSE5vY2NpVnhuTnRVdkpvUGNMYzAwSWY1Q2EwYXNWN1dyZ3JLRXhPam1UY0dORDVhU0hpazRmSUJCeVpsKzcrWVhvUXk3ZE1nSjlMNnJ3QzdqZlY5dEdLSE5oaWYwSlZjRTdBSXp6c21vcGM1UWZmZndLS2txTHE1TnBKSzU3Tks1YTNVVWdXcXdiUE40MHJMaDZRZmhpOURYTm5VWEQ5eElTc1BYUXB1KzBsa3ZPUUtYN1d1TGIySzBtWHZ6dURaeWxPdndvNjFJNys0Zm4ycldLcHh3aDB1XC9aMExTWXhBQUZLNDlRR2N0MDR6NHZVMEYrRXdyb2JCVDlKVW5hSFVYY2JxZlhlV1hjblZDckhyZlNFMm04R3duUWlMK0ZVM3hzWG0wcVdjUEpIWjczQnRJZ0NiU3hwYUx6TG55S0JKeExOY0g3M1JXQ2FZa2Rva0VWd0xubm11M2lvR0lCSFp3bFwvTkI0N21sSm5xcCtLV2tQclB1clBFXC9Pa0ZzNllwVGd6WXJ5QlI3UlZYMmY5bUVnYTZSS0NyR2xhMGhoeEJwTk5oWTBuM041WXlyVUYrQWlRRWVnNUJDVjlabHFjelVFbm5TU1NuV3FUMTVGd3FIMGtoaFdEWUpqdGdLdWt1TXoxWjRIMTFSZ2Z3c2ZBbmpwZVdFYk9EK3E2Vk1vRm05eXdIczU2N1BoV0V1N29VYmhVOGQzQjJYVU9ib2JoQlQya3ZrVTJyVUZ1ZklMckoreFI4alNudllUM0s5d3oweitDRExjWmNMc2RjQU95dFpVSkdVOXZ4WUthaXRLUFdFY25NZWcrXC9WbVBNcUJJNlFCV0FySVZIZmd0MlBOWHZsdjIwcjVmWUtiMitmcklmcFNrNUlod3h2T3Q0dDRBazNnNGw3TzRWZWdHMUVJUkYzemJnSXE1Zjd2OTNlTTVISGxMOEltRUJlcWNcL1oyUEFHK3pjQUFoQ1RQeVRFZFwvWmNjYmpJRlFHcDhSdjQzS3RyT0RWbDkxaEVEZ1NETXRZcHVRWnRmcldnNTFUdVV3MUVUSTNpNGp3VEtiVTgxQ3JFU0V0TjREelE3cWhHQ3M4S3MrakZXN3AxbEJUV2Z6VTU1U1wvU29USGdiUzlBaklUTlBkWE9udG1Odmx2NEpGajAraXVhZVJZSkJNQlpHOE11RHg2RDdONUxXdFwvTDJiWUlEeHhZMjZBNE1Na3ZZTUVHXC9RZlVMOXppN0szM0tyVVZpWmpjZVZucmQ0VnBFVnY0YzJrSXpvY1YxZCt5WHZ3RWxzUThuQnhrXC9acmMrY21xR3RrYmJZR1R2TFJnUjhcL2d1ZUJnR3BEMEVPRlN5Q2RyNXR0SERDV0M0eGZjS0RieGMxOGtDaVwvb2tnc2FZXC9mQ0FyVFFPSHBOd2toRWU4cjJWXC9XeEpMWTQ2KzU0QXFSb1BTSHJlT0I4bE1XWXhqUjZFa2tcL3M0UndnNWx5SXJadjdFelN0UlJVb2FRYUdrMTlDWFgrK0plc3JhTkt0VHkzQ1RleUlHd3JkTnZTXC92MXNoOWVVUVdSb3lycmRzZnBudkNvWnlMVHNYSkpQOTVxZVNPSW84TjE2VDNVWXpiV20rbUVwVDFqN2pHaWxRWU5qK0pYTjkrVUQ1MkhGMGpXZ0pUdlZ0d2QzR05nck1nU0ZxMWcwc3VPMmNuUHpjWG5VcW9BS2RURzJlYXdvWDc2OVdJRVNJMHhYWlwvRDJYZzNnZ2puQlFzZ0RqZmF0ellYV1BLc1BwZkU3cDFyQUNQNm9YR2ZiYnV5OWpEMFE4Y2x3aGhuc3FCbU5qMzZZdVZ6U0FlbUpNb2tiaGJubEJUMFpCZ0RKV2hYdWJCSlJnc29ZYThQZzJFb0hSeHA3M24wTGRBVlNoM0FiYURlMEgxMHNKQUNFTG9sZEorRFVnZ2VUczhaeU9cL3R3NGc0TWtjbGhldkxpTjhBckUrZW5QdXNYUkQyV3hyc3JuaWVCWXdxdzJCZkNvUVg3Q0lJSkNiV1hKSzJBZ0QrZTdkNVFMWU9naDVIbDVHOHdGU08zYlAzUVpcL05zKzhoNzdTZmN6WmFvendLXC9sc2pIdUphXC9qcCtqOWxxcGZFRVwvd3VJeVR5UXU4NWtcL3l5WDJkM2YwUHY3WUltY1BaXC9FWlFBeXdLK2hoR2xlR3RJZktHOEpYcFdJSkUxZTZOU2RnWDlJMzhTZE1IVlUwM1BURWNCMjRUVXF2bDlOVzJyQ1dBZjVZXC9TNWNYTXRxbWk1SWhkbmNrRkV2XC9VSUl0OWFoaWl4alJcLzhtdVdjYU5CXC9mTG9vSm1ZUE93MzRzTFMxc05Ic3VvZHZmNUxTS2F0VHlXbzYxQnhDcmpOUnJBZ0o4c1wvT3N5NVdaWHlQbEY2Tm5wWXZMR0VIVDJZWDNOWVwvZEhaeTJyc0tTemcycmJSaVwvb3dTV242XC8xUGhpemVnRlA4b1lUUjhvRGpIK0pvOUdBSWtwY1JXNFdVXC9kcXdNRWVod09uZmFnMmdzdlFNUWg4bWNEdFVCbFFwZ0toZjJkckpvcGt4V1hodUI3alQzMUdrZUk4Z3BCZTdpU2swdWV4ZU5ycVU3dlwvSHRVM0tScDg5XC9VbG9hOHp0cWVKYU9Yb3g0cFpTZHhTXC9jMkgzYkFsOXZYR2JhdEd2ZTV5VlRjRzd4M0FCeXdhMmxWckIxSkR0RWZSWTA0M1FoaUxGS25zY3FFRUlveldpN3ZaTU5BVnJEbVpKSWszdCtKXC9iUHRXUVJ4QUs1ck1jcEJTa2RZVXRva1FVaFwvYnZxOFhYU3JCWnNXV0d3V0dIcGt5S2tDVjE3SWdEMjZneDV3S0NNMEJLR3BIcDNza2U4QnNFZDI4QWlRY3Bqc3pXNENsRzJ6YmUxTXBXbG0yYlpYUXorTjl2ZGwzMm92NnV5ZCtIZmUyRklkUkMrZlo5SjZDMVh6VjJYWTJLWTBKeURPM3AzZjI5Vkp6bkhZRloremdUOXJ6Ylpkdm1qaXdDanc2NW5pblVVN1lXUEExc0xsZjhEdEhyM21PR3psd1lDVlUyMGNVTGxpNjkzVVpwc0d3bzJvTHJUV2ZVRHk1VTZHQkxWclZCTVdkcW9ZQk92ZWN0NEtNOWg4RjZBQmM0aExEYUlNTjA5RmZ6VzRhWkNBTHo2Nmk0KzZoejBsSzFWZlB4d1h0ZHk5VWFxblRLZlVmazVUU0Q5bVg2YmRQVnZwd3JcLzYzbmFYdTFmemx0UkZLU0wwdDBZSkdrR1ZKRXFLdUh5cHl0UkUxUWFaVVF6MFUzOFJzb3owVmJkbmZ3STgyM3ROZTlMWVhPbG9DTjFkVTRGeVZYcU9RcitucWlpQXVUZFFkM2ZWaFV6TlAwSTVRQWE4VFBBTHdHVHl6WWVzbUIzY0QzaEJZRmwwaFJCRE56WVpNbTJCaVJJZGdyTUppRCs5ZUwrRVlLXC9ObTBvQnQyMk1FSVVXU1M5NFhLcnhkTFJReGExQVVBZVwvcXU0bGgyaVFCeitITnZ1VlFoRllWaWpJalU5cUNPKzhuRlwvQWZVT0ZcL3VWVzBZSkJacFk1K3c1MStsSk8ydEk4Y1RuTklSV0RuZ0hiNXJVUzkyZndJVk9yNkQzUzNrOUlLMmU4dzBYa09YXC9zcmIzUFJvcW5BeDB5VHRSamFoWTFoSzd2SDVOb1Nud3dQMm94SVdRTXpzOEJXQkI3Q2Nyd1dCUHpKdGhYTWZlN3ZKamtUZ0xQMWRCRTkyXC9UVjh2SXhTNUIrRVVSd0VETVhieThNZnk1NlM1Qk9Cb2VrcFkwK3k1TmZyNklnU2haVVJVd3N5VkV2OXVcLzVvU3JvQ1UrY3FXSWpWNXR6azMra1hCanlIXC9OalZcL1Rxbmpwem5aME1wbUp3UUZHMTBlalZVNitjbHlEVjhNZWFneUtkdkowZEVkQ1krU0s3M2trSExFRytycUVRNkVjeUszNkZFVnJuRzlBaStKZm9tNHUyNG9XMDNCaFBvcDg1YTBkalRPTFZFT0c0cUFHRFcyMWdMejRIRjlrRXBBd0ZVb0ZJa2NmNk5PVlk0UlZubzd2T3Q5UFozYTd5QTlKOEdNc2pRRmtJSkUxbHFCaDJEUThFRHZISWl0RjlJd0pBTVNcL2NyZGUzamVLMHdOdVdqNWFTWVE1TzFCMEpTMitoM3lPaEw3Nmx4bURDSEpLV2loRWZROHhlWDFlSitCSDFqZ2JVMlUydXpFUnN0QTVsZFQ4RG1UYUNDVmxkU3VnQUt1S0VycWNtYkxnT0RQY3lqVDlVOWIxXC82KzJoMHRLa3BnQWFDdjdVcFlOeVhVckFtOHVRYXJWSlp6U29qOWFDbW41TFdTbHBDdEtGZStNelVZb1NROTJQYzlUWGw5SFwvcGNXdnNmdVBRRFRBa1IrSUhmbHJCOUdrUk5BSXEwMDJUSjU0ZE5RRkNHVnVWZGt6eUszbG5yXC9DZmdidVdIT1YyY0VZVzl1SURLTjE3TjVaRlcrOEJRS09IVDVma1VtVllUb04rcUd6ZXRDMDNTR0tNUE42WW9JNmtwMmQ3WXpycjNicDVOQzhjeG0wQnVhTlFOSHlOYlJmVjZYcU9HUjJmTzdORVc3T1wvZkc5YVpReDVvVkVGKzVkY2gwWjE4T1wvbHlZVGlqcEVDS1k5VjVlZ3AyXC94eTRoUFVpMVNTdGtIdHZEd1NyNWZiS2pnajhoRURrYW42MXF2MjdKd1VaRW03NmpTWkZuUnhYQTZCMTVcL0JcL2dmaXFHMllNMCtocWdISzF6NVA1bnNhZnRhOUZOdEEzQ2JjK01nY01QajlaRDdEWUl1Wm5DNGdSQU1xdElQdXUwR0IwYUJ3bnhFb1Z3VWhHOVZ6b1FUZE4zR2dGSThESCtNdzNPWWFoNVhxMStyU3dvN1VZR1JrbU1HUnJvWlU0V0RHMFJhOFRKNVBZYWQyZmVcL3RtaWZsUXoydjZCMlJHb0I5NE5yQmhPdnlkYWprTG5nZUZIZk55T0VzUGdrYlFSU2cybXJoM1R5SWF4XC9ZMXZ3S2tQOTg2NGNyamV1bE8wSGdOdmhZVXV6V0lwVDIyTkFCdUF5SVpjbkQwVHQwZVlFVVZWUlRna0FwK1BXM3hLK0ljdUt3RlgrdE5aY0l6U1NcL0ZPc1wvM0c3TTU5YlA2VU1yN0JVWDhiQXBqT2l6cjR2WTlrcmhcL01LRGZnU0haQU9tVWx3bW4rdUlWaVB2WXVoQzN3d1QzMnhlcnJ2dXNma1hwTk5vR3NQVUdPXC9SRGZaTkRsNVMrcjc5RXVadEV3NFJBdmFwQ1htRVRYRDhsUTBHakpiVWg3MGhRQXlaYzhMSVdGWktrKzZKRkE3NFo3UUVzeHVjUXNmcUVTQk92UkI0amJkcnltbnp3QzE5dzIxdU96SDRmbFgzUG83dVJHdXpQOU13UHdlbEFnbTZ2UjBGclwvVzdGWm9NSTVwUGVjeVFBYmo0dzZrRXhTc2diaEFnY3dSZTMxNHZlaXhmU2F0TjBTMUkzUHI3Q25WNmtVYkR6YmNobTV6Vk9KaVptWENTVkd2XC9FRTJTRG54RVh5VDM4Q0dnMkR0RERqWGdKMDA5ZmptRnRVOTZFMFczYklIWXN6d0pBbmtUam0zbmwzOWlxVm5RNitqMVd2ZXhHSktpWXA3a1VxeDhRVmhrMWx4Nk5cL3lEYk5yamhEWm4xaUxnSW93KzhOeDY0akdiaXA1YlI4RFJTdkxKZDFJek9udUVkNWlMVkpqTTVLNk1rM09sRTI5TnZvWnJRMGdseHN5U2lRazg4aFNKMDlhXC9DZ3NNOHA1OWxwaWNBY09NVEo3UEtEaGIzNzJkSGpsd3p2ZmNkdFJVZFc0NEZ0RHRBQ2NpQmdnNDhza0JyQW1OQysyUm04ZUJaWVg4SVRiaW9IZ2RoZ0N5OGJ0XC9rVjRnWERyd2Zwc0tIZzVyWnpyejBHOHNTTUM5djg1aG44TFwvaEtWOFRndTI4VjVBWTFUSDQ3OGcreWZ2MElrR2pvZk5LalFBb0VRRkl1SmpFZHZhT1Mxb1FnMUVkUXdmc3Q2V2JjUEdqV2diK1ZWOGsxc2NmK2luZ3pSeW5jQlROREtxZncrXC9IdytxRXhqXC92bXl2TjNvSllWaFwveExZaGpIeVJZc1F5UFg5ODdISzc5bkFQa3ZhNStZbTlrTnZxXC9xODdnZXB6YnN5cTlOd2ZiMThZUGVBUlRCSG9SbTljUlpMdVRkZTI1RlBFNXRpTzlrSXNzRnMxd2N1XC9hS2ppajRHb0xWNWFwS3pTakg2RkVFUkJkY2IzNVhcL0owcGt2aU1PYWJRZGYzYWp4bEp4cFVuV2VTc0VQbkU5ZzZCU2N4ZXlYbzAzSUtRSERlcUdEcExNZXpTUERaRWt2MGUzb0FqRmV0c3RaR2s2RGRwaEdqVHVGRE9ZSWpNdlRkT2NNZ1wvQjlWR2dTclJUT1wvMk1PVjJnR01OZlc0aVA5YlUxNVZzSFdvY0hmdmN0cXpzT3plSkRaaGdNWjQzV1VZOStZWHByUlhNZHIxZFl1R3gwNlFFNjBlS1NhSDdCamVDcG9mZXJSWWFLVkxpXC9YYUNPN1hlVlwvUklVZHcxXC85dHpWN296c1pTY1pjdDVGajZWOEhUOVQxd3gxc1U1NUhLY3JhcVRnMWpBUk5ib2x1b2VJTGoxd3FXdHhSTXNGMWZKT1pMWmdDRVY0QkVHRlJ4XC9nUXN1RmRBNmF6RE5kUmtJakl2YlU4emM5RG1qT3BONzhVVE4xNzZWaldkWXo0RHZXUm9XUDBDUU85UFBtbGpFeHRYWlltenRpbk1zUHJtR1NiSXpmNytISFRFM1NjclZ6VGN5ME9lZDE0dldZSVMyejdsTGN0Y3lKMjdKSk5aeXZpUVVBNGc3ZGlcL1FSREZzcVJMbFwvdFIwc0VsNXNSZlNGd3JvbTQ5dmRRdVJMdHZIMjhrQ3J5aDlcL2F1Wlc5eUI4MDdRV2NTUndnZnhFWlVtZlFzNlo0Q1d1NW9KelhSRVVWTjhvOFwvR1wvTnRzeHZNdkplNFVIUHQzaFlTQXdwZVFJdytLNUF0VmtLXC9lZDVsdFF4bzlIQitrU01BWHJWaEc3SE5wTWZjak5UTkZ5OEV5S2haNUQrS2p3Y0RUelFHSWVUN2Y5cERmaFJiQ2dGWTJBVjlXVUx6XC9xSTZGNkU1WitYVForSGdNMmdLQ0pKTk5DeDhlY01xSjdSbXoxR25CbnpHeHVIUFhxa3JiNjY1Sk4xSGtralBBWnU0VjliRVdoVitzVlhKWDMwYzVRaFREZVR3VVBuZ20xYjRIa1hybWExMTBXR01sS1wvOVE5VkZoSGQ3Z3pERGZQY3lDWkU5R0pjU1JaU2pQXC9PZytGeDJHZjViSUdmbDZ2OWNPRmtmdGN1TVwvaSthVmhGRGxJdWt5b3c1U1RtaTNHTWRUSXo5Y3RDXC9DdGNjSERicWc4ZG5OK1hnemticHo2bXVYcmdsVW05QjVmbExpcU1RTXc5QThXbHluRDhUcCtlUUJIVzdHaE1FVCtDdWpyOUt3MjB2VFV5Z1JcLzVyTEd6UVJSMm9iR2ExS3NYYkNDTnFiMkZUaXQyWFwvXC95Q1pWM3Niak9TNzY0cXZkajFjbHFQcGpXak03czVqUW5HYTlTcGwxckQwUUdTYkdnYUppY1wveU1yWFA1ZElLWEw2RlBXZHZzcUR4RVwvQ2hHZ1pvZjBQbXBsNEV3T3NHNWxzc2tGUnYyR3loZnNkaFdJVVdUSjQ4dVliM1F5eHY5bHdiaU1QaVNZYlZTWDlTdVJ1Q0dSZVlnc21VV3B5cm5nQzQxZWJRUEFOQVh6blp2K0x1NHh4cE1ZdllaQ3MxaWY5UnRFdXlmNXl0V0N4c1p6RkViaHp1NTlEZTREQ1JROTJqRHQxc0tjZkwzZzZFdVZZakVjb2tUTHIzNysxbkdBbld0Tyt4XC9xRWtwVm1kUUt1cmlpK1NuT21GUUpSc1pJbTl0VXo3ZXZsTndPcGdndHJwTkJIS05mOHFoalFvMURKRm1DMjRJSEpcL2hMUWloeWhZT09wbzExNHlmVjRGR0pnK1Q5YU9rTHRnQTZXNjErZ3pvZEdtQkZxYyswODR1TzJ1dmFZQlwvYmtNSzRKWXpZWWVpbEpUNUJpYWFhelFoMUt5MWxRXC9MXC9Ba1NheTRnYW9WSlV1a0tiajROXC9IbWJYNythcGFVRGZIUkEwZElVWjVrVHl2S0JYRUlVQzFMcnJrOWpvcHUyNDNyNlNHbnlYNytDdm5oc3gyRm9zaUlLa1F4VVRGanRlVzhvZTdMUERJVW5lclgzZ3llUUFJNkVZYXNmZmhoTGk0SEZpVE81anlWVm9NbnJnbXQyUm1mMTl5VmczZWpFM1wvYk1QMDd2RXJEcnd2Y29CZUJnZGZnbmlRQk56MFBqMEdrUlVwN3E1OW5ZZ1BVdUFDMDNqa3hQajFCMkJWZzFzV3ZZUzNnQXBNNkZvcXptSEF5dVwvXC9DNVQ1UzYyeEJhc05PVE1yc0xobkJvZVNGQ2xMUzVXdlZQclRld3B5alA0dUdxNUZXZGtlam1NdkxybDhNdGRPbHBscjRXb0F2TmFQVWtleXI3OFJidW94aWdkS0wwcjJyOHV0dkUySUVDMU00ajVhNXV1ZXdwSEUxcWk3eGRWczZXenVZM2RvdWhXSnlHaEpkUllrZVExWHEzMEJVY0w5cVNkczlqRHhWbUJMZ081b1BzdmpyZnBtUWZrWkFsTFF0U0JZSnJLdHFQeVF4SW1FbVFtcHpoSWdRemhkS1BnVWk5UzVkSmxrejJiZXpGeUlpV0szM1poaGJOMjVsRWlrM3hmdURzYlpiTTVvcE55MWZSZmt4VDYyZGp3d2FCclEyR3dydzhOTlJvcWlZMWJ3anRqajIzNjF3WTFkcitKMmNRQXlGU0hoSlwvUnVwSUdBZG1rSnptSmVGMW9KbTJNNG9ZSHVRRkdkU1BcLzlyajV4elU2MGI2VUxIOXBUU2xOS3BhYWdMQUlLMlwvcHJRRUdMRHU3RytNeFNsUmVsa0FtXC9Heklzd0RvK0E3R1ZcL3VjSlZFeVVZV0pOcHRxRUdaMWd0czM5QVlSdnFhSjNUSHdDTEdxVlhVZlZ6VXk0b0lZbzRyN3ZmaGxwUVFodW9EZ3NINjJNdStJSnRQMnE2MTkrcGFYWUtSSWp5dEd2RjhzQUhPMWZNWGMrZFI0Um96WWNrOXpzWW9tanVyaDJyUUdIckJYeWFLNDVGa3h6MEs3c0pwanpDaVVtaFBtU1Y5dCtPVWtBR1E1dXJOSGVyWUtLZFY2VFJ1MFwvdDdKVlhZalwvTHB4MmhyTkRCbEVcL3ZWa1pmZ2ZHQXJsRitsTjIzNGZwczRCdnhzZWk3OUlOWHdxSFVrRFFmRk5oOW8xWWxJMkNQc2daUVJ6TkdKNmxIbkF3ODZHMlZVUzhROWlpM1RzSFl5eG9qcGJuYjdpdjFIc3JFd01ldzFBZTlETW9jaENTSm51RCthaTBuTUs0S0pwXC9MVEdMeVwvSzR5bmkya2c2YzAwa25OZWdGY0VRTmdxekdnMmpjYzNWZ1V6QitDMnlUcnhwYndxc0JYTmlralpMR2RSc3prYlFOOFwvNWg4XC95NWp6Z2JxTXRLMkJIXC85bmxqZWRsSGtzSDJ3TXBoTE9hNzhGdmFkQUdxVjB2QnZQOFBqdGp1cGN6Skp3YTc5d1dzTFFyNVU4bW55R3NsZG5BZ3ZYazlidjBER3Vwc1wvYktCSUFkdkJIWEcyMXY4c1hTNFY1UkFzTUhXbkdPWlVlQ0hSK2t0NkoreHd0RkE0U3p1QmlZY3NVYVJ0Z29Rd21yRTJZUFoxdWtBY2NqWVJkT2dxOUFaTlJVK3JTNWQ3WTl0SzhoV09xckdEUXdjMVN6NGpcL1BQenl0SWI5U0s4aXJKaDJsRnZ3enZLZ1wvWm8wQUtxMVp4UHo5bE9VZWNRQkRUZ2JvVWJnbFZEQ1R1NjhzOTl0dk90eWkrdmc2T0xucExxR1MwK0pCWU53bEc2eW5qUm1seVdYNjE4ZVJwXC8ycHRXY0pDU3JmbHNwaDdEZ1BHQnozdnNqcTVQaGV2WFhkK1VYREVPTVJ2VGpZdktMYmkrc2NJTjFkdlwvVzRhUVFzZHcybjlMYm9KKzlDZGhFaHJZakk2YWdjRjlQU0p6b3NHYUtUalwvQVd5WmdlY1JTZmliSGZyRVluSVwvY2Vubms3Zjl0Y2hqcFpNSDRwdWdBMnA3MWNzREJGXC9rVWdaeGE0Q3pVb0xoU1BDT2pnTDNzSlJTbVJ5U1B4T0ZtandXQ2hycFc4RVFNbDhPRDAyUUwwNE5pS3NiS3lCZVIrVWlVR2VpdEVYSlZwQjFTTzBQK1ZcLzV1b1l5eHJNbEcyRDVuRnVnTmwrWlRxY0JVaFhsZThaeFloWmhxZjEzRUtsSzE0U2dPMmUrRXVXbW9lOG5TOUQyQVNGZE94TGE1V3krYjBjYkYwdm1hZnI4Vjdnb1pFV1RXM1NRNVdtMGFJMjdnSWtkeHBTRU5KT0U3eXJRWU51UWVxbkVRYkdMREVpM2FVWTM5WDhnaGxxcnYwSFpwWm41WVA4N2I1UzZFVyttRVRXM2xJdDZsNndjM1ZJcFJwNUQxa0pVWmoxVzlFTkV2T0tmTUpqUmQ1bitnYzVXcnJRMmh6UFZxTk1sQzlaM0lrQitcL1h2WlhTOU8rVVV0YWcrTjljc0pqMnVmR2NVMHkwQjRyQ1hwdUk4bnRUbnNSOUo3eFM5K1BXd0NRRjVCNnZrZlFDY3QySDRtVzVuOW1ScGVmNmlVa3FSWUlrZnBxdG9uR2dKa2VBNnZaMCs4UVRcL0Zpdk5OcysyeDNWRGVWT0ZLXC9sQXJZMWNVcnFlZjNxRElDZVRSeGlNbTNJbTRyR2VMUkpGdXkxQ0xQQnZLZkgrd3p2MlFCcjBncU1qaHZpclJ2WFRVWUhhSUY4aHdKdUw3SVNzXC9uQ3Y0c2JDTU1LaStsaHhCV3oyQzgwczZZNXhXaGNzcEJGMythRlJ4bm5HVXpPMEs4aDVFRThhaVNiSCtFRlBWTVwvYUtrRVRlUHhGMWphU1dXTUZ5MElPaXJpK1FsZWJMeHM2TFNOb1dsdHVDOG5yS3lQd1JcL3dNa3I1SzR5NnJQTFpVY0lzMTJyUjFETlVPc3UraUtcL0MxeVMxbjVSZXlhZWcwUkp4MGI4YVJzWEI1NWdNZ29OR0FcL0hGSExRUXJyTkxpMXhOMlQrOENqelhJK3dhN2N1ODlnQzNRXC9DeW1wd2syTklhemlRT3J0ZU1BOVF6VGxCMTBiZkV2elpiNUQzSXhnTVwvZlFpUk9SS3FOTUVlTGZCelFndWp3RGRyRWRnRGxneklmYW1oMUxOVHFWR0NxR0xPTDNsNDhOODVlSGVMNmxYUUlaenl3c1lydWcrc3BFTERMNzA5MStwT0RHR0crNm5OQlZBZDNMRU1lRFwvNGxMZVRINjZJMVBJN0FVWXU5K0pVZlwvV0F4Ym1aV29JOWw1QzQ0SFZkUUxlMldEOEREbU5CWjMza0NWZHhzR2w5eSs5Rkg5R2NHdStxNEFxMTlZdFF4T1ZKR1RcLzhRMVFFYzF2cHhaV21RQ3ZKUjMyXC9kTXg0bURSWmJaNTlmNFBOQmh5ZEhsTzRkNW4rZUtTYTRyZ0FCb1pOMGkwZjB1cVZaN1p5U1ZyTnQrQlRHVDd6TmRYaE1Mb3Y3MzBsSTN6VEZlbGQzd0R6aGNjVFFFemtnbGlHVmVyZjdCWW5VNnNHdnplcCswQWtUc2dHV0xLWTZidDNoMXd5d29IZ2o4VFNUYjBKejM2clZXMmF6VXZlSDhQMGJScFwvOHg0OHRuQ3RVYzh1WnZJcWoydGNhUUdcL3YzSGNHaklFcklGWDR4c0toQ2dqek5pWmE0WTR1WEhSMU1hMDNPOWQ0bHV3R3o1Ylh1ZDM1NDRNU3dLM2VLWmp6S1BROTBNd1ZaU1NKQUlKY3cyTXd3VDk1VUFwcEUrcjNhbnlVNmJIcFRMSmpBU1hnV3ZVSHRDdEZBb1UySEdMcHNvRWtTdGJjZ0Z2NGJxSDdmYjJiVUJkTUh4UGdsK3IyWWhLSnlyVWt6RDViTDdFNjZvdU1JbFNyRTRcL21rNjdzbGVrd01cL3lEVHJQSkhOcDZSc2d4V1pnY002cG5XTmdyTjlpcGM3MUNPRkF0QVJjZzRwMmhMdWZmM3dmbDQyc0J2N1pLUmtWdENtOEU0ZjBPRnI5Y1EyeE8wSFJzZXE0RXE1THNIcDBPZzNDZjV6ZWRtVnRpRG1nV0pETFF4U0RHbk0xTnN2dmdWbEhZYnlzMGtiMzdVTFU4cEFIYkxtQ3hZNkxSYnpaWjJyM1BBU2RBcXp2ZkMrYmdTZUdYdnFUUDRDTkVERkNxKzZcL3RLT0dvZ2NlUEJkeUE5eW1LVGN3YUdRZVJmaHdranhsUGhUM0tZU1NBUUNLRjdJTjhMYVExMGt2SmtrUU5cLzRxOGpRMUZpb1UzcnhtRFwvWFhtU3B1emkzYnlmVWZkaU5TTTI4SEh6MFNSb2lRQ3JBZmtzSWRBYm5hQkx0cDE2QVBVOEFiRkJ2QW52U21GZ0VOM2lIT2dYZjVoWDYrcnZiaTkzZytxZFFxT1Fvd0Z0VThCOWtCK1UzdGhMUDNQdFV1SXd4b1dBTmpBZ3pnK2tFY2lycHhCOTRBVUdsZHNxYVwvYjJhVHpvdU1sejljQmJPZnNvM1htYnFxVFk3R29KMGxWYTVWMUt1Q0tiZU5uclwvV2Y0bGJzV2lOVnFtUlV2VEFGeDNxcSsxUE9WaWU2XC9MSHV4Wkk5R2g3aHl1a2Y3bXRydEVnNlFoQjVmU3JMOFQwaEh3REpEYTJvamZrQm91MFJpbjlHNW5Hak1pQUI1cXhNYkQxMml4T0pcL3NIXC9zMDBKRXVVTFF2WTNDdFdnN3VrTWdcL0w5TDFEMHlieHowY0lpZTV2MDFnNUhyOGtsMXc4V21RZUpGa1VYdjVqQ1VQNitBZUZMM0MyXC9WdDdlaEZRZk03SmpNczQ5NmJla2JoQ1o2XC9WbzFZVTZFMHN0cmZ5Y3Q3MXJRXC9rRUxpbFdxbWVwV3NLQjFFb2pQXC9iNE5Ka25GS0lESmM0aGViR2U0VHRwd2hxUjVkQ0R0MVYzSWszUklGQ0h3MURHVHI5bUNuZDA1YytUcTZhcDY5akFRb3NQb3hYb1cwYlhydFJCR3NtbXZHTkZPOUlWdFBnYVN3WkdnaHZjQXVhcnNyWFJaUDlVTFdaSmZveEJSZWR2ZDJoK29LaUtXTFIzOEhlTHJXQlp1dUpCSXRlS0h2azdyRTNuc3lsTWlFWFBvbUZWT2lOakZzK2RBdUx5UW5IMGd5TkJmMktcL2hRNmk1YkdIWUR3Mk01WlJ4cHFseU9cL0pxVzVMWnlUTGJHRU5cL1dCa0EwN1wveHg0c2tGNnpPWXNHdGpHdHFEM01TRG13RTRjSWppR1JDRkE4eEp4aGdmM3h2Q1JLM0FIQndjVGNydmpGcUFPMVF5ZCtQNjFZTG5BTTk2T25IdkZzaUVxS3hQaDJKbDA3NTF4ZWxqTkVnXC9nOHZpV0tCMTltWE1BbXhyTG10dGFNdk1FQUpKMmlnRTRwVERVZ1I4RjM0MzBEXC9CUWloU0JrVzU1SFNCQ1NFVlUyRitOV3ZDSEdiTHVIUitiXC9Xek1jXC9xcWl5VUs3UDN4VjdsS0NqV2dEZmgzMVFlTDNKK2E0d0cxWGdnWk9FS0VzNm1lSVJOa1wvT3U3Nkxjck52MkYzTW96VVRiK0s0ZDk0Qmo5U1lFRytjdFliZzZXV2ZuQjNueW9NaGI0RjNYTitmZkx5bTc0cXJ5UzV2SXBuNTVwMlRqcDhndWt4dFwvYjZtWmZ4ZXQrYWdXMENyaVZlc0Vwd3Rndm10ZGpzMWgrUkhWMm1zYzJHOWJmMkt6NEduOGFMUkNFaEExMjVhY3ZNSlVFOUc5K1dsdnIydWJCSUJtRFRKSHVuNjdNUnJwK3dYN2tpTVZ1bFVCamtyaGRaSWh3WTAyOEx4WjM2Z0FndXhicGVXRHRmTnpoT2ZnTVNxTHhsN09jU3huWkJZSUczNFF5ejV3dFExb1V5aGttZHZqMDk1ckMrUVhQUUZHNHRpNVhKSnNDdVpNd0VqdndzNXRLVWNMOE90R2R3RDdpd3NUcExLVkpsODdaeUlYVExiZjFvWW5TVUU2MDh1WldHY1RMeWVqeldmdXdaZUhKbk1VZGp1RzlhbkdHNE1qVlVlYzJ1ck5YSGVHQTlKdENhbHJmZG1MaytBcmpXWXRiNU9UcnY2Rk1vRXVCb0tGZ2l6VVFiYk9wdXZsS2FwWGZKcCtwQUJjUTVqQXZZT3QyTjQxNDNxMlVHdFFPckREZjdnS0VDMlwvOFZPT1NERDZRbGVvb3RKdnZxMlJPa2R5bFp3U1owYUY1ZmRHWDcyUnhcL1dEeTluUks4bTR4SksxSUpIRndcL1BLK0w1amNmNmtrS1pqMWNLaUZUTnpNdG5KbkVuaE1MQ29KUXI1c0lZVFpwUTdXajEzcEpCSFVoamg4ZFNXSzZxV3hLXC9lMkpLVnNmWThzdEpvQmhDNjZKS25TcVJWTHA2eG41bTlJNFJWU1dsdFpWZVBDeVF3TFVXMVVzSitXV1dNenZGTjg5SlhmaVVGdXM4a3cxT1dCUzN3Mzg3emIrd3FGVTdTU1ZCbUpRNHkzNHAwNjdpTjBIdGhkSjBqOThRRVdBQmY4bkdQc1BSZStqektBRTlFMDJUQzFCVVwvRXJCVmNBUmdMelJFY1A2XC9oU0NzVlR4THgrZkNlclJ2UEpnZ2oxVkZcL2dlcDRKRnBGMllDSmdzc0FadU5tbWxFV3lTbjRPMFRkOXlMUkZ3ZDFYVCthWGNBdmNjMk1WMDNqbk9GNHI3UnhRMGVJaXVUS3BsOE1rUitwVEVFcGlVY040cEJCOGMzMnZ2QkhZazRNaHJ3ZDlKZ3YxaUFzOXVIbGlWZzZPR1hvajdjYTYwOGVqXC9wcUEzVVJ6NGgwWFlLS2MwMG84VGxLNXRYNXlDYk84WlpsQzJpM2N5c1VqMVdxbDQzREplV1wvZ25uXC9YWWg3YlJ3Q0NwUXhtR3dwMHExOVhtTEFDV2pDaCtpcjgycDlGXC9vMlRBcTU3Q3c1azhcLzg1bXdXeXRDRCs4M1pLXC9HSlJvK0FjWmhrNWo1aitxaUV4Z3h6UzFQU2RJRE51b1dnN2JxVnBmaktuUU5QWHdmeGhnbzZsRHJSbjlWcVwva3JkckV1RnZORmRcLzdIb3dHTERzbjRzaHBrS0EzSjRZNzRDdlZIcUl1bSttNXpXYzJJNTNuS0VSSHRRdWZEOW5qZDh3NWMrYkZ1YzVxVkRUYWcwcTB2V2lDd3hJNnZZRlZGUEI5a0gwcG5TVUlSWlNNSm9UaElMRWQxMVg0STI0blNwZHpKMzZWMmI5ek5wNTNSVGJiSWNKVE40UGJzMUlLdjN2dDhqQlZvY2hmejhcL2lTRkFOOFdxb3ZHRmFYeW9FNGNHR0xFZVhlekNXQXF0VDJjeUR1MTF3R0YzSHRyWHN1ZWNqSUE2NzdpZnpRREZMeWVXUWRLMVNtMzFWYktFZGJcLzNrSzE5UnhwWEZaWjNMK2VDZG5sNG52MU4wQTBKRWxrRENGXC80ejhYdHZYWTlnZThXNUxVVmRlMklcL1ZhMDQxQWhcLzNDSk5uQjN2YXBmRGhHS2ozSEQyZ3ErQWR3Z2c3bnRKMFIrYU96UTNXc2lmOVRvUmN0MUszRVY2VFo1RHVEa1FNZWJ2dmtQTm1oMjdcL3NWZXY1QkpMVXluaFN5UVFMZEd6MTJDSk9lMklUbUhjMExhK2VsT0hWSno0elZVaHM2U0tZbkNRdHRqUmx4XC82dGpjZW5Sb0ZTbndRanlVbDlWU05ZY0dVRU9ER3hTU2pndllhWDdMbUJud1NlaGdtOUtIR1FlKzVcL1dxQnFcLyt4bVNiSlJMRGF2ajVvZ1RDbm9sQU9yZjJxbzQ1NDBWODloTkJRb3hMbklENTUwN1IyVjE1bGUydXhYYlR3UzR3dnJcL0JaTVE1cktLRHlQdzdSKzJuXC9RVmhGeDlMVU9kV2RLWlRKZFpsZ3dxa0hudjloc3VBQWpoazhlb1dMQndmV0tkVnVESEppOG5QeitLeEZiQmc0Mk1idmo4UVhuTWtOQlJRVktkWW83M3ZXc0t6SDZBSFlNSjZnUGxsRVdFNm5lSGlaVmlRdFkrWGcwZmVRYzJ4M2RoWERrb0lhcEhBZGQ1NWhGb2loUU1MOUVwQ2ZNWVVhRDVCSDdYeVlnM0dRSW13c2xrMlR4R2dCWHlYRzVuSnpSNzBpNEtmUGxZYUFTUHJmS1pFaFZiTHF4a0M1XC9DcHFnSFpGK092QVFLWkZ3ZVFUb201WE1FZWg1WkVEZ2FvVnlYeVRBXC9uYjFXM0FoSzdIOGx0OEVOSnZNMXhoRko1b2VcLzZtZzQ5OTNZYUJwQlpUdEZxdlZHamZRNzBmWnhMRXJYektuRUxhdWpabW5naDhBNlJzMDhab1FvVWlQaVFXXC9OeHVGT1FcL2s3bGltbGFpd0V2cm4rQjgzaGJMc25oMjBhN25UODBLakNBWitIdWpoUkFDSEMwWjBNZVFmR2JuNkJDQkJxU2VnZGM3VW5lNXFaeUEzbXlJa01URnA2ZnJDcHNUUGh1KzI5Wm95TmZTQjcrSlk5YTJmbE1HU2VxVjV5TUNZU1V0UVI5RHFCR0EyMXAzOUxYQWRSXC9lUkJRb1JKOTRcL2RrYUtKeGU2bmlqeHVjM0lkZWpDT0tWVDd4anhhR3JrMDBhM3pZakplS2RwYzJYWU5qb3RGYTRjUVlFVFwvbXZNdGIyMzZpSGl4YzlTTmsrK3M4UlwvOEtRSVYydWoxYmhkclVVQjNGRjV4M0NxeENNNTlJOU5kYWpZNU4ram1sN0FPb21EUFBVOXhEaWo4d1p6VG1wXC9RK3pRWDc2VHB2QmpXVEVUVTZkSGt3RkxYTXUwXC9Cd2lrK3o3OWJtdTdyWTV0Y00xbG1Pd3hUaXNhUUtGbW5YWkZUVG5UWUVFaXZtK21RSnk4Qm1Ja2dzNlc1QlwvZm54MGxGY2w4N1dITitWWGFBcExFUUFEa3gzRXk5NHpSQWlZZ2xMdVgwNkpCWjNUMzB2R29YbE42cUFmb3A5VUhodzNXVFB2c0IyOVhhZnJzdGlcL21lZUZtTk82YkRuTnk1eHl0U3lXUlNadWpVTmpZTVBQTWtPMXhzWWkwZWVTUVgwM2F4UmdDY3Y0Q3prTTdiMVFzcDB1OUlUemI2N0Q2WnZ4dWxFWDh3WWNEWndxOHBKK2FsWHhOSklWSVVcL29IaXdRTmc2UnlsYnhvNzFyMzBwV1c1SktsWTBKVzRGRVZmVDdXNkNqK0o2VGlLUGRsU1YyS29GQVhVQ2tNR09TblNJem9HTGlYVVFuNnVZM3RNSERKK3dRM0tDQU5Tc1RlZGtnOHhqTzJGaHNFZUV1TWg1QW44Q1JkaGNZaGE5YVwvM0JQMFo3SzNWXC9xYTdHQmNrOGlneFB1Y08rOVRsazdvMmhKVXZjZTFWNDlLY0hmcjhNR0xzXC93eURPKzQ1VFJxaFJIOVNmUjUycDltR2VrV1F2Z1VsbkNhVVwvREE5ZHpDT0VZc1BSXC9FMUxJSTlLdkFobnd0Nko3M28rd1I5MnQzZGdtSjZqejNxaGc1WlQ4bjZjVUlwT3U2Y2NWaTNOUzN6bnVNaWdqek9WMnhyZGRCSnJkNm1GdTl5QXh3V1pXNkZ5Nk9LelBNSVZ3bEtveXhjQUMzazNzV1hYYVdBaEpURDI5RnF2RHkxa2NieDhiMUJOZFp3NGxVcys1cCtZUjZwdG9uZ0FSMFZyYzlqXC8wemlHb2lVajRqK1NBb25mSUZJeHJCZ2xmN3A2NHBoek0zXC91YjlrMnZmTFZKVzgxRmxsNkFUdmFIVTRCdWJGUXk4cUVNQmV5WUhDZHJOM3AxU3JyenJEMzQwTmJyRmlCUUI1SGVEeURQXC9DVWh4Nyt4d3IxcDlLK0YyQ1BnVGtoeXhrYVpmVTlEdnJiRlFMcDN1bzd1aEFVY2RWRVdYcWk1S1lIcXVxc3BqMFdsdkJ5Yk5Ka2dZSlR5cmFiRndPbnBpNGFweHVvRHlCSGFuTHJGaHNFQU1ZdGdneDJNRk5HQXFhdHBEUGY0RTFXQzlcL3RMZmRcL2V3TGF5OXJjMDQxNlp4RHh2VlUwNGJJS1lDTkFGb1NZUit6QjlRaGUxSlRGcmdZZTVqWVVOQXJJXC9KQ2QzbmFsaXAzVjAxQm9aaUMzZWlNVEpOa2pkcmltcFJRQ2Vic0J4MmZlVGk4dERVOEplbk9ZaDJ2Z05heDhkdkNMQURTQ0hmMTFlTHh2NEszUGRtXC9kRDJEYUYyNmZLMHpoblRxdUxpNnNoOHp0WkR6VHVYY1JTbHAzaWs5TzRITGR2Qnk3RGVRM2ZwVTlhMlo5XC9FSXlmVElcL1pDdGlCZytaVVVUaWFIWUNNNVlNUFNES0FxejhsZVI0RHFNTU92dVBpcnFHYlJaUHVZcFhzb1dWVlpURjUyZGxRUFB1dHg0T3FVQjBRN3VSMWhPZFllVTluWVUxZDBXM1wvTzRac2NIZmJYbWZSRCtrRXdSY04xTG5ON3NRVkN6MGMrcVdHckdmZGZzdkdta3Y3TmR6R3BLVE44K2RWcUFMSEhsRWsydzRkdWFsZzNcL29UU3FBbUxYSE5zUktiUjlBRjV6RGpZUEVxdVE3aEJSSjFlWVN2OENUWUJBemdUMmFJMnhzS1V1YnJXSHBoZFVBalZZZ29HTWFTSmtCRUFNU05ObEN6QlNOXC9xQkdSVlZkbVR1TGpYSFA4RFJ0Vzl6Yzc3THRjUmJQRHdhUnRyeUpJb3NYVUROY0RqYWNMS1IwVm1ZR3J6OERqQTdvbXBcL0NpdVwvRExaRkkzVGVkMzVhSlRQQ1RqQ1JBdTZTeGxCQVh2em9LNmVUcHNEaFBTSG1cL0dtbnNrK2VKMjNsZklFRDZMajBnRzBcLzUzNGpmNmNYakFTaEo4YkUzVUQxd2hrM1lZS1RCZTRQSWU1Z0JnYUMzWUgrcHF4eWdQcWQwM3JrdkN0dlRrbE9SakNQMEhubXlLd1pUR1pjRkk0U1dNVmdoXC9RMnNQXC9uQWRpbWRuTVc0TVk3cEZSaXRNakF3TEVOa0M4YVpjM3VPTlo3a2UwSnkxUjR5cjE5Q2ZScUZRb0hBakgrb21ERFRsVG1GMHBuT0g4ZG9pZ0k3OE9SR202WmRkYTlpSXpoUDFjelVXemhmdzlZd2ZMQ3V2XC9JdzUwUnJVUWZLNmd4c2k2QUpmWlMwMGNDNUVrc0ticG9xVDlxYXFYRDdvejB4WHZLVU1LVmc0d2Q5WXZvUGFCUXFBTmF6a0dnWTlKNkVxd0Vxd2xVRDRINVJEb3pTXC9kclJLN1NcL3g0RVp0dnhsVHFzRUlGajBJWEdZb09lVmpmSmY3NFRiSWRzSG5zeFU2b2R5UW10akVnZ3JoNDJuTkQyRGFQdUI4MTk0VUNsM3JUb3hUZWx0OXUyWEZsNDE0dWRkQ3lnNlwvdWc5V3dKU1hWSk5aZVpNQnZsaHZzM05LaFN5dDUycUs5cVRYTXptS01rRGtyY0sxdmJZSXVWVkYyTVo5Vm1aUlgrdXdaNXoyRkRWajlCb3pMMGJobWlDNXNVNGNDaEt5dE5jKzBQTWtubU5VWnN3RGVQRCtJdnZmNmJtbTEzMlJIZWJBUjR3TUtVUFlYV1NKOEFJZnFxekFDYXh4dFwvRng4ejVpVVI0eFNnXC9xYnFlK1hSaDB4VWdUOG9IVUo5OG9BV0lSckJiVktOcHNWU1wvMlZXVkZlUG8rcVhFUWY2RTcyZ2FVSEZiTXZXRURrS21BVmFlUkdVSEJOREQxc3BCa3ZwQzdIbFJIVkNvMEpLU0VTUDNuQW13cHFlbGlKZCt5VGxHWlliV1NseHBmdnBsK094WDBJZytLZHlDSlZpSmhkTUc3RDdtSXlvTTdZaUNzWVVcL1grVzdrMitsTkh5VEc5Q1VXS2dmUEJISVNUZ1VWMFdaZWR6TmtzOE8zRU1ZYWVwcEN0a3h2cTY5akFSNUUyQlQ4ZlNCM0JXYkVqTUNxV2ZqMmhTdElYU2VoRmJNWmJBdlwvRTJrTUMwS2x2T2F2ekF0WVl4RjBzcHBRTlVhSXp3NlNzTUhuem9DdFwvS2thVnk4ZHJHVFVQOGpjWVg5NmJaNXoydlwvb0NZOENENnZ3RUFUNmFDYjB6dERlV1RzdU8yS1l4SSt0Vko0aVRJeFN1MkhmRWFLalREelU5ME9XRDRoNFBrc3lPZXM0TFFBMWd5ZWFkSjVMcjNMUGJRa21zaWdSU25udjh5VzdaUmFORmlNYjVkN29UWXlFdTVuM2xIVmUycVJhWkJUb1hKT3ZOYzl4OTAzMnF0TCt2TmZOUE16WUtsMGhPbXhYdkFaWitWXC9ZWXZPNmNWR3YxQzFJMXBRd1lBZkE0dEVTMFUrRVpCaHIwRld6Z0hrXC85aXEwZCtsRjJqSkFTQXNRc05VWVNrZTc4enZIY1BJYVIyN1RBbldJdVwvTVBSRmxLZDRlcmFxR1ZlVmp0bFlzOFhZckk0dHpEcEZPeTRmR3NhT2ZWcG9uN1Z5SFRWa25FUkRyY1VKcUxWNVNSK1p6NDVZS3grbHRRM0s1S2VneXdXQnlEUzhWWHhrQm5odStUXC8zTUZIdVwvVm4zaEFOeGxPZm1KeEFWa1A3UitrSnpKT3dnamJkeVRLSk1wcGVXQ1F2NVFRcllha1pZTWNHeFwvS2FpU0NqMlNVS01HbkNIU2poR1NWSzV4WjhMaWdCMHpcL0JCYTJabG82aWljSkxHMmhueWt3WWpyV05NZUw4R2VnMlE2amErQ1wvYkY4S3hKVWhFN01CM1c2ZDlvSkpHMjhQcVl3XC8wWGRLY0NaOTc3TEt2RUp4VjB2aE00c1Q3b1Y5akRCSmpqQllyUXoydXZERHIzRGI5aXpaNjNlaUR4N3dsdlwvenJRTlJQaUNoSHFFZUJCMW0yeWVlNDZWU1pmMTlOem5nWWZzdXBwdkZ5aU5BdTA4YzdGMEJUTGU3TlwvbmttYkV3RGRIc1RpeEdFTXB6a0JIZ01MdVlXYmtDVm1OaEJGUHMrV2VCYU4rSEk5bmdaWnMzenRSU3ZNdXhLMmptOW5lbmJId2MyUjNuSWR3NVRBNXBtRllTTm9ud21UMnNCSW1tSjB6MUErTnk2VTBZZUZ6YUp1VlNWdlVxY3VZeGQ1RzFJUVpzR0Fmd2FmVmozQkFKWTJDaUxXYkQ1NHNQTFRUaXlEWkFPUjFFTFZNY2dYMzBjS01vOGI5VDUzQ3JtaERrRHlLOHpmT01nZGV0KzRIczR6a2tOOGtRTzY3RGtNQTVueVNpb3hZbjMraldwZ1FTNk81VHYrUUZoN2pqRVNUNXB1blltcUMyMHlwa05WM1hMYkQ3eDhocEg5WGpMVlR2SjdFSjNOUGRFaGxTNzA0d2UycEIyeVM3NTdmNTV0eHRRUHNxbDVKMVh0bVFiVjJVZFlpUnZHSktjVWIxUGhpcmY3MWJETUxkSDIxTjRvRHpoQ1ZZd3NHUG81OFpsZVdOMGdXQnBsWkw0M1JhUUtIWVwvMzcyaDFORCtZNElyeVwvUnhINHBueVBZUzNWeTQ1WXNXWmZpN09BQzE4cm5GSXVKM3FBWnZ3MVdvWE5va3VOdnpqM3EwN2wzekhkWVpSZm5WQ3RUR25UUlJlRkZNZ0pSaGQzVHM3aVJJekFaZktPVFUzWnVwUVVlckY1V0pnN3I0SUx1K0E4eXdQUjh1QjdkUGY0R0dnWXpSZDFLbnJENFhSdktwRU82M1wvd2p3UnN3c0JEQnU5OEExbk9DSGk4Rk9cLzVZWXJ3MHdaRUYyTHRLT2x0dnV3OFlCQkZ3SVd0b1BXRWVLazVcL2lITG44OXg1Q1VoZEVMQkVOdGJBR2FrMFwvYmU5TGNTZERNM0R0Q1ZTVXFkVktOaE1sTk5BSDRSaVYySUVHaDZ5YklKWHNMeWNXaEJGZThnTVRTZEhMUlJSU2xQcTZodXB6TjYrNlJoUEo3SFVMS0hBUDhNaHVoQXBxY3g0SE5USDJsc2RiZm1LNE14V2d0ZXpmdVNHUGRucFdURDJDN2JUS0QzSk5BSDNmUlwvWmRzZUhDSkpiMHByZlwvOHZ4WURnWmtBUWZrRFpOMkZKMHNZR2JmU0E1RGthZVpDNWk2M0M1Z0NscmhUTm5EVGN3OUJ1V0xRMHRnUFJJbXBwZ1NTOUxEdVNUQkVkMGY0bUJFZnpuTDF2UkRod1NkUGlMRVd5SWo4K3VYWmxycXdIdzdMSXlIQmFRVEFqREN1Z0RvTGUyajFUekFpcnozR3hKRUFvaXZyallWNDYxSFdTS25UYUJkUVZ4U2d3V0RjMUw4TnNCZUUyM0NRVUpxRHEyU3VvQTkrczdwVG56SXJ5NVIwRVBzYXJiM2ZVa3BvdUwxSXNvcm5jODNzTG9DRTNZaUw0SW5Xelgza1pkdFwvZE1uV3BWRllPdzRqOXBVdmJFMWVESDM2QkxEdW1NTkd2UVBmRFdwTldNd2NLaFwvVWhUaUZXMUMwcm1mRms0VTVHUE5Xbk43eFpqQkFIRVpwU3h6UTlxblwvVFRNNHpOQVA2aHFJVkxDR2ltdG9jUFVpSlo3MjdrT2hKZFJ3TnA3cVEreStYRkZqWVJ3UnM3UytiSFVIK3V2eWpUM1wveWpScVUxa3RQcHBxMDNRVlFTMWRLM3NQWnNMbFN5bkFpUlpkejZQK3hZWUN2K1luRXY1V2xcL0M5dk96cHFZNG1TbWpJUVwvbzZrV21WZjcxV1FpZ3RKQ1Y2Sm1YMUtiTlpmYmZyOGZmK2tBOGFFdHNPWFdGZjh2NUc3alR0QmY0cHl1XC9mQlRtXC94RDZBQUs1RzlTajJUODNueVRCOHVocmFkZU8yK2hjUnljTUJ4allEcTdtZVg3aGNUbnNVUHlHOFdUUWRGTmxHUUlTTHFKVFpLTG1MNGRVQmNhNGNGSjdFOUNvS3NoNFNGS1Y2ditmcEt1YnpNSjNXSmtGOWNTc05FRDRjb1Nva3k3Ykt3N0hvTUpYT09ETDFsTGJPcFF4WEZadUZJbnJ3OVN5amxTOXZ6anA1MDE0YU85TnBYSWhOeXpVdWhmY2NBYld2UEkxQkc0alcyNmoyZ2lUajFSS3lDeSs2QXZWSGNDcVZYRFpudHVjV3NReWZCSWFaUjNpbjZiUkI3cTdaNjlJTXlveEd4enhHTzZBSmp3V1FhVHVES2tuZnArSTUyYUw0Z2lSMmw0S2Z6T2t0aUtFY0pcL3krVFlhc2FPbUk0OGJtc0VEWVU0XC9ya3Z3R2NDak1BWGZcL1hPWjI3aU96Z1VJNVZUdmRJb1daa0R0VHBkQWh4NXN5MlwvUjAzK05YRFhMcFlJM2NsNEJnQXB1YTdxd2ZwUWhRQUc2c01wUmU5N3ZXcmRoekpkZ1NweUlzMEY4N1lPQk4wanRjdzYweEhLemdWMGN0Y2pxeDlUcVZvTVR2RFlqQkpaQnhmNithcWpDZlwvZ2tFU3ptMHhuVFlURnFyb1wvZkFnQWtnREdEUG1MbGxcL2s2T1lQNktmRklMOUQ4cmFjRGVMbXY2Y0VkODJJUWY4bnVMRysrd1BVa2tXYmJydU5aXC9NcVpDN2pFVE9SY1E2ajM1NkNaOWtlU3VkcU1yTU9SMDkzT29MRHl0ZURQNE9BV3F0NEd1akxmdVZaMjJ6Q21heERRRVNjXC84RExEalwvaXFreWJsN2k3VCszOXBsMGlLaEczQTVMeE1zNzlmUnRMVFpPMXRjY2UwaFVRZ2wzMHBxZ0ZQMklRVFJWVmtHSTRNMitFTHBwWVIwclwvTUMyNkxHbTFXZmRxbkpCQ2o4WTI5UGZPekFQZjZEd2RENG9jU1p5R3NzT1hcLzZqOU9zV2s2WUJQaUtmZUNEWXBcL3Z1QWFOZ1BCRXc0OWFkUTZEYWFMdkxaM0pRQ25tTldKMGdOOFF1MjFVTVdhWGJkalBWVlIyU2lvZkdlemtld0Urd1hJUFwvZHpHbiszNVk0M0srZTFMcnVqcWNvNW4relJNXC9WM2lMd2lUeERHdWIweWx5ZnV5dVYxdUJJRFJIUW01QVB4RjRhVWljTDNETXlBXC92WVowa0NFRjJBV2JYNWtMYzR3Mnd6eDRWTUZPdkdSMGlyM3BQM2J0Rm9rNUxrOEtjOWFPS2NUSGRzNnpKbTBSTlI1WVJ2aWh5NSt4V0JpNlp6TjFIVzFTNHRBd0FERFNLTmJDMTQyUUdvUkY0YVlQK1JpdlFXUHFrKzM0NVlvTDRFc0ZjWUVtZjdPSzVDc1l4VnRLUnhkeG1tYmhzZ05raHBCNkRMVG1PWUpnM3JzWW5uR1RGTVpSK01XNksyR3FyU3NidmM3Umt5SXNuU1VOamF5MHVIS2tnRlo1V0VrZGV3aWhFOGh6TlwvUkJJWjh4RFN6UWFVMHlMNlVSZmFmZCtsTXM4VXpwSTg2UnJHamNjc2h1dGxSdlNNZUhTTWJqSXVjNzZCWGdKU2tGTTlaZUdGU1FFZmF6K0Erb09Hd081cFo2SE45Mm5oWU5mZjQrZ0xNSnRmM093VXdHQWYyYTVCQ0ZiUCt1cVdPVWYzd0VXNzlOYjNNUzVnaG9zM1VIWHRvOFhRdzFWQVdNYWwydjJ2UmEydm5OZ05MbXU2TUdNc1NNK1pQclJ0Sk82OGo1c0pxc2JoUVVEUU9xNnkrWW83NENnOUMwVVwvRU5UTUhmUHdsbE85U21Pb3FMMVZYemhxaTFyM25SWE04VGE0Q2I5bVZQZ3g3NkxhUDFhb1FKRkNWTGdsRE5mTkMwVmtFTTdOK2d0dDlLZHEwQk1VbUpLYzF5TDBxUDJReExvMGRaMlVySDNsRE9cL3E1eWFtdnhGMVlKUlAxQ2FGdHptQzU2eDBLVW9MVGdcLzFLZGk1bjA3RkxFVzRMYTBncEw2V2FaY1JrNUg4MWU2UlwvWktUQTVxTDNRTWtaQXd1Tk15YzRuK05Ec3Z5Q1wvY0lcL0QzYUo3NG8xU2ZLYkQ3YVNqWUpNMXhLOENzQktoaFFmZDhzTVwvQ1FxSWU0TEhxM3pCRjNlZ0Y5MkRub3VpdU9GWmw0UjZoSERKamlvR3NUVWpISmZjNkZtNnd2bGpoa2dzOTBnMm9LdmZudkN3M3lCZHcrUTBCWmUzWVBOZFNqazVuMWZmS0lXMXJweWhSREt1RnRVQ0tqVnkybHBqbElFaWgyeTJcL3NPTVg2NHVkZUkwUnh0blMyaUI3Nk95MmdoVFN3VGdcL1hqMTlqMHdJQkYwR2RxSW92SDVlRE9aVU5LejRxR1VvMjh2SlZMUzd3OWNjOE9rWE92V2hYY05vZm8zU0Z4clpxUk1xWTA3b01UMmV0MEh3eStkQlFOM3pQZWlaK1JmalwvM3RNR1pBTWI4elVaRUNiNDI3cGJwMlJwdHlVXC9oZnp4ZDBFZVExTm43dUhsXC81RE5PSEVPZEc2UWJ1dHozdVptd0t6R1JmdzBTKzdNNUl3WDlaZ3dhM3poTFo1Q0pCSU96NURwN3lxXC9OMkNiZU5Jdmt0SmQ1eTlPa2h4ZU5FQVQ0SWZFbFIwc1A4NnBIWlBZb0NFNHhvbXNHcFdCUnRpb29ONVFiXC9BUGhJYlFkWFVJMHk1bTVBV2t0VzE1MGpwbmt4ZHJOdmlcL2Jad1VHbnhqNU1IQ3Q0dVI4d3VJU3Y2SlZOZlNHc05EdGZqS0FVaWxkT1AxaytnRmNRR0pBK3Z6SmM1MExYak84dCtvakkxekF0bzZtVDRjaGp3clZSOSt5WFpVOUNlQ0hkMVI4VUJIXC9LRnRTYk1wVjBvUVZ4Nk5XaGF2WjJBZ2tcL1pqaGFIWWduUEJnRHlEZlVQbFFcL3BjalwvTGxmSW1KQ3JXRGlZUVdoRDdzVExjdjFrRkVnb2Zob0xtUWxxdXlkNGFJMTE2aE5JZXliNWdac3JQYVVmNHg5bUVVWTZ2UlBNWkV5SnZMbHI0RWlZY25IOENGb1dYRENcL1huY1lvbUFYOUg5cndlR1M3TkJcL2crNnlRam1QSVlsc09DMnVteGJUWG91MW9jSVBSNjhJeWtoRnNKK0NadzRucmJvWVwvSzlsblwvQ1VTNTMraW9qTmxIeml2YlFWRXRkN2xWdnEzR2pEYllHTGRZN0pxXC9MZmt3N3hQUkFcL2p4cGFFbUdFYVwvNkpkelhrQ3hJOWpLSzlzVmswMDNPMXpybWVVVVR0T1RucHArNGdPR0s1UW5jaTdpTVBKcVVVZUFcL0c1TXhCc1pKeEd4aFBacm9BeCtHeHRKUDdzcVAyNW43TzVvV3ljdGdIcHQwbFc5cXZkY05vakNsWkFsQTltSzZjd1BMbUtxdm5UKzhmYkhqaXdzcXFvMVc3ZitHSGtaTEoxaUhRd0pKVzduNXlOSjFkcHB2cjFMbXBGVE00cjc1bU5cLzlhNkxmanJ0K3dXTnVLMlhPNk12ZTVOSnV6cTM5aGpvZCs0aThzUWphdjhEWFRwNDdpVzBJc2tSc0lMRktNdTZseWoyb1wvR21nTTVnWnVLbHUxQzdJaHZiQ3ExZnlYaFhPcVZOd0lJcXNXU0ZKR3lKYWErc00xK01pbkg3bXg5ZklIaFVCWDd0RE5aclJReGJmXC9RODcwVTByZGc5cHdmMDhkWHBQbGNjM3N2U3FXaWRYRHQ2V0psczlNTytFc29yaklJckpCa2ozN1liaVE0K3dMMXpFSmdWZGZQTU8yamd1UDc1ZXF2bm9qQUpBZlkzVjZsMWNTOWNOaUVUaHMySXpxc0JNWmgzb2pVT3hPM0w1NjI1TUw3aENjektsR0ZwcGNieFNyVWJITWp3OXM0ZnpPU0JIWUpxYm4xK1wvdmVhUFwvNTJTMjI3djRcLzI0THp3QjhYdm1saUdWRmJldFRCNG1obWZKcnJQbXpyeXhoUFgwbXA1alQyTzNYQmlMejBldzFucU9Xb0lVZ1YwMW9ZOE9tNkJIWm84TVp3UnFpVEl2VXVpckJ0YVdEbEROeUlSaTRPUlVic0hkQVpkb1QybFZxV3AwK1R1anhUTDYyRDJuNzREWWRSWm5rNTZWY2pqSlVIN05GczBLSHZQTFBVSjJtRkpic252cEdlUkEzcWxDOThZajN3TW41VzM2MElpdlhOd1hFdDJPYTB5Rld5UGE0NW1xVHpMTXhKd1liQUZ3ZTdLV2VGejZ6SzZROFEzTFoyXC91S3RnZ0FqZ2tiNzJMVWhlYXdnSFN0UW90T1c0Z3NzTm9OOWg1TWVrUTVYdXpcL3dCbzF1ZXE0QW9mM1g2c1l5WlhXR0FwbVVZaGxRaVhITVJTZ2xRXC9pRDVac2ZJZmM1cXhRMzJBRENcL1ptcWQzM0pVVWZieVA1eG9GellSWkZTZ1wvT1RWaXhPRHA1bXR0WWdzTFdLaEFrNklWWEJKTUY5MmFBdFZNckgwXC9kWDFsNFNnSDkrRVNOUGNDRGVrYnB4QTBiVlk0bW8ybTkwc09yeXNKaEphVWJ0KzVIeUJtTTdoOWp2NnRBem9ldVpLMGorc1wvVE5RR2F0eTVKYUVUVlwvUUQ4VXFyRVpVTk5iUXJSSXNreDdoMzN4RURUb2xMOGNWR045ak0xTmxmcnVYcmJCWU5TRGcwc0FsZE9FNkpoMThvNzVHckt2a0R6d1wvWUs1cGk3WWd1dkhFRVV0V0xUa0pJNlRJVjI0SzMydVNLK0xkc0Z2REdsU0RlSjNzSjJkYmVmczUrTzZLOWN0azAxZWE5S3N0TUw4K2hvT1F3YVlkZ2UzcUcwSWYxdk1sTE5BT0crYVJaWWc4VzRIRU9XRDBCY2h5UjFsUnhaMTVPOGhQVDFNSFNqbzZSb2FyR2o5VnVKVlNFSjVuMXV1T1JBM0FKemFtdms0QWZ0SGxBNThVUVlOcUllSEhOU0xhK2RMQzlBVGl5UStBd0JDeEZRY2JnNDJnQ252NEtjWkl3Z2Y4THE5Q0ZrVUdLcDVKdEp4QnpBZVd1UnpYSW1lWkF2S2tISDFXQjF5Vnp2S2dyRUR6UWdYR2lRN2xtNnJSSzVtb3NXcTZtMng0WlpJVjJpRkVBb3gzdHVnK29xaGd3ZFJUcWdqQXRyN3Y5cFwvTmN0VGRhY2pOeWdQd0xLVVVHTHNmMUsrQTdDeE03Zkw1Qk1QSTB6MmhPN1BjaVlCOEJUamJBS08ySTNobExzZE11a0MxTVZLN0JjYlgrVmo2cFQzRE96b1JrSzJxXC9YYXM3WjJ4TWY0N2xyQTBjakFXU3R0YTBpQm1YS0pMSlR0bEVteXRob2lETHdSTENranUxM1pBODBtNGVRb09abWl4Z0ZQWWlWWDAwWXN3aEp2aXBKeE92WUNSSFplTVpaU2tnUEE0NlYzNFBpa1RxQytmVGk1ditaTVliK1ZEZlR3dmx2anIwYU1jSEs1QWRPWVZMUU5BcHd6TG9iVVhuN1ZERVo0bWx2NXYrSnp3WFZWM0tqTVwvaW4yRFZpRUVWMVFDelpBV2pPdXRuVGlhRzJcL3Z5YXhxemtPcklCTFFNblVFODNXbEpvamJBTnBUYnVJQjQ2OTZDYTdITlQ3NUllVmVoR3E3VlVkXC9uRFpiQUVWVHRvTWgxbzZ6OEdZbm9ndzQ2Tmc1bzhPVG0ySjhVYmdyd0llbkJvVmlMTWZKdlB2WVE1d01mamZcL1g2MEtic0dSazhkV01Rb2VJVDJyd2xWaFpSZzUwMDZMQmFmS1NISVNqS1BBNE5FUTRSK09yRWlTVDA5aEhHNHJjaUs5RWpTK1ZsYzhUZHlaXC9RWHNid2dlOUU2MXdQcE9JQlVRaTZ4ZzN2SWNnSHhtanZmQkRYazlBY2ZtRWZ6elZSdXByS3puY0F0NUxySkhLN0NHOFhHREx1RzBwZXFMYnV4SEdzMERsK2xYMUNacm9ocm9YM3F6aStCVXNaZDdZUEsxMTBHS2thVXd4RXlLMzNZV2NkYWxJa1gyczhJN1ZDUHZXVnE0Zk1kVkl5RTFoVk96SU9WejhySUEwZDJ5a3lxMVo0ZXk3cjQ0VktvSHpjcWRyaW5nYmQ0Yis1MXJzQ1wvOHU2emMyakNUSjdpekNTUHg2QVVhOCtRSlFGZnlnOHJEd0hHYUo2NXRad2loOUVaWGp6N3pETE1taHpZUXo4WUp2akhpcGRkR1gyTStCN0pXUERjZkFsc0V6YVhpeUNFa09YYkdhWTJXbCt0K0s5WnlOejU5dlZCQVlYY2pLN2p3QlpwYWRoVXE1QTZ2NzhwdkhiM2pERkUrcWxCOVRMWHgyU1NcL3lkZ3F0MWV1YlVCRHNOck1CeVZlaXdjZEhDUEEwRmZvRTRlUzhjR3V0ZG9sRkNMV0twWVo2U3M4WFFFU3Zta09UcTNuS2pcL1Zpc0gzaEZGTDdtMTVpbEcxcW84NUc4a2lyTTZ6b3FDZzVPQmRFU29BMDl4dmQzYzY4eWxGam4zRmdqRkx1ZVdUSVwvaXBUZ3pGdnIxMjJ5dG9wbmVhenpqNVpteERqZSswZXJIRUdNUUhmYXk4ZnlhWWJ2V1FGNnNjMW1PazN3NHI5R2NGa0xhYzd0TjRvMlcrV1wvQ0RZMXhXeVZUMkFTOHptVjFpcVBCMVwvTW5kNk5sQkNmMTdCcDBoRVhSaUR0dlwvZFNcL0FFUGFqaVRDa3FvV3M0cnV2eXZnbVwvQ1hhalJmYlloTkJNUUVzTktBVGVOYjc4bXZEWnd3Z2JkK2MxNTZCeTB1YmlyZUkralh4QmFZcFpGbFVZTnJ1QkNSK0hrMmo5UDVkSldEWTR5dEtER1hSY2l4anpNUmxjSWdDSDluY01MNmtNbFkrWmM4UENlN1ptRXJxVDVKVGVNR0hUZDc0UVlkN0E5VEZtQjltQzNjNGlXOU81Q2V1UE1udjF1QkV3Rk9RejBwWkxWYlViWFZiK1hMZmRcL3VxOFwvWlI2cStkNmVvVkxwaVBzTW00ajlFRjZ3K1JTSmJ0XC9lWVZTNnB1aFRjXC81SjJEazBHekRuSmN1NHh5TkpZSWZpamxLdUlYWWwwRXZLK0VFSlhtZDMzSTFxdG52NVFQeVFEbUUxbGZLVVpZVG5HTVwvSVZDZTEwM2Q1UUNHZnYyZjg4NHZweXdWMmlZanpNU3M4K0ExdmdhVVd0U2ErTDJiQ0VCNWc1NTRoTkJHZXZYTmt3ZStvSlwva3VtYXNLWng2M3ZTTWFaTE5maThKNEtkSVdyNTFBTjMxRFVrRUpsc3JCdlAzaDUyUnZWd016aTFvTzZ2bGhrZ1wvY3VIZk9RQ21GZHpJSXhGUVBLeG45d084eWZoS3oxVjhFdmRpVW5tSVhJQkNsUWo0TkVLSEFpVEJyeGkyNmsxTkEyZGw0VTFoeDJxK3RWRFwvbVNVemV3bGU4dG1CQ0toVTI4ZVFlYldsVkRMRlVsaHZYem5WRDlUYTB1dVZcL1FlWlwvSXJCbjZtNFk0TWdJZzVOMWxQRUd4QWx5N29BYmRaRDc5TmFhMWpPZWlFbmExZUlTUjlGWFJZZWtWR2cwTHpcL2NmRGdSTmZQUmoxNEhEb1NSUDlpemJGclJ3MnJTdjVhSlg4bnZGYlBualhMNmVvR0YzblVnc0NRQUk1cEF5NlFnQ2JReHBIbVwvRlFLcGNYZ1lmOXFlckVWZlZodXFPeXFZREd2NlFqa05TbnhDZG1qNGo1dXZjWFdlSEg5SDJXdkFSb09BclJYZ2pPMDJcL3p0V0VxZnFYUFVpelc4Z0haU2RiQlhmVnNcL1NGQWh1OW9OVHczWWp3bXFXTjhVeE0yOWxYclZsUmZzSjMrUk5RQWNORU4xalNTblwvcFRaNHdZd2F0Qm1UOUZPMUx0RnMxZUpPeEN5UjNxYXd3dzUrUGRDQTdsTzRKU3dcL25CcE03MXRyZ2xQaUkrNGFcLzJ4QmRGS1Rwb3BtZlFlb3N1U3pTVTU0XC9zbHd5WjNhUDdSOFFYcE1XdVRpcVZCZVVSZ3RzS1VWOHBqNzI1OUZuQWpFa0pjYXE0YnVVUTVOR1ExT1FUbndUYU5IWU41S3hDZTh4VE1ybGppME1ZUWw3NHBCaTl3RXpUTWFyazAxZ3RWUFJCQ1BwT1crTnNtS1JsR0ZTSnFzZXl6cHJuM1hxcjVTNHVYRDdUcE1KYjJrY2VRS0ZcL2ZcL1Brc2pKQU1OY1ZBd0dwOGtqcTN5NDkyMFdrR2xWWGRPV2tlOWZqZWRFbjkycjJGVmg3S245OGsybHd1WmRURWpXNnlKVmYxZkhwbWRIbkg4U1pqdTJKY0FZSSs3dnFES292TUY1NWN0clptUHl2dE4zVkFWNzRxbWN5c3U1YUZSUlhyaU9QTnFOTFVEQ3Jldk5sTUw1YUtvMzJpQ1BLd3lTbytUckt0NG5lakdSTVRlQkZNQytTZW92R2NxWEd6bzlCVlBGa3RMRWs5ZjRwY0FxazBTOG12VE5OMkRUUWhSNDc5dWFTQXNqMkFWc1wvcjdSRml2ZmtQbHh2dTc5Y01CcEFDQVZHTnRqMDF0OHVyRmNBWEczQWdaWE5BTmMreVg2cERNY1wveG92b3czSW9RZkNuMkRkbXFUQmxReGNVVzJXUnpzU2xlWjhyUmhpQ1BkRFNmWkpaOTRub3YweldiS084ejdtVjBMSGdWOVY2U3lyakFzMDJVOUF5Z3NvQStJanZRQmhYcmFMQnBrU0p5XC9sYlF1c3BvSnRoeHJvckZCVXlGemZLVFNMWTYrY3VmcHNkdjcyeWw4XC83eStaQUhteFBWRFwvRHlLVThtMWVMWVZnaEtcLzNwXC9ONXgxeDdiclZUajA4SVJhOG41azhOZCtLVThyNUd5WVVqclZXT2luZHBGanNDekhNeGtKT1ljMmNNaVJkaFRyTTBUc3I4RXVFbkw5RzFkV2xYVFdCUndKczlNRXRPUVwvZFJOeE1ZbUlIMFwvRUh0Wkx3T3JyckJvYjRPbnFKbjBaeitaZU56ZUYrSkJ4WHFaUmwwVG5BbmhGZ0dyM2trZE53RVFVTlZwaktZSW5RVk1DM2lZRExyN21oaStUY1o3R29MVFF2c0ZVeVhpTVR5eWxlQjg4U0JHQzFHMVdQUTRxQW5xcW9OUmVGRk9tUkVXWjdMcStoeEg3OFZMXC9sM0k2eDRkRmM5MnJmcmZlVWlDeUhKWk1LdEFkVktlV2I5Q1AxdzM5c3FwVlMxZTFGaXpZWmpMSzVnVlpiZmhlU1d2SElGWE14b1wvWnVnMlBjNmtrTDc2M3VMQlRBTWFiY3dST3NQUStuOTZOSHEzbXROdXo3Nkh0RzBsZ1wvVzRaK0ZOejFhVkxSenYzZ252XC8xZHB2eGhGb1hab2ZMTmVPQStmZXkrNVZzZ2FnQjZtbGR0c0lzelwvMDg2TlZjZ2x5N2lPM3U3ZnBmbE80T3lnM3FiY0VLZFpXTnFtMnFIMElaOUJIWlwvR3p3OXZuUlNwT1VZdVlxa1luNlR3NkoxQzF2SElXdGVIOUZQTVdJRlk2Z0xLd3hUN0ExSkFBUVwvTm9DRHJiVElYNk4ybnB6TnFwRkF1OUg1bDRlZzExZVdaaVk1R2xrMitLRU9QQmltWjhaU2wzWEJpdXM1MXlNOHp5MXBjRjAzVjRXdG1peXhjVDAzbzYyQ3BUbXR0cTRzMFYrZDJmXC9CSlwvc09VSVZKTXFIY2hDNHQ1aXJtNjR5N2VSMlwvR3NvbTlqZTAzSlhoVWFhT1lSY2UydUVGMExnQmNIcUFOR01wYXVnM2p0U2hcL0NHUWlpMCtreHBDc0ppYzFOdVRsNnZjRkxlUHZYTnZVS05CVEhrWXNzYmU2eCtyaHI3ZGptc1NnV1dYZkdWbUZZRTBlRmZcL2ROd2FnYkI4cGlnWjFMS1c1MU5xc0MxQUgwbUplTENEdUVUXC9SSmpcLzBUZ0JoUnQ5bytVVDRRYTQwOVkzampXcklwWExOd2RsNVpkNHB1dGI5eG4wRXVjTW1WM2dYeVIwTXFPTkVMek5zazhaRlJqYW82dWw1dVc0SUNnNStTTk9tbFZzRjFvQ1l5WUxSaXBhV2Fqa3QwUFBJbFB6cnZHcUpyR0lBUlhCam1PbE40V0tKTnhyeTdnVktmbkdNZk5rUCtHYzloRkd5OEN6bEpESHN4YTFmVWFZdk9ObmpNdmZJVTJzNW5nSVhnZGxRSTRBK2ZNS1Z5cVwva1NDVUpxUXJwK3loRW96Y1hQZkllRWpWZzBIZzJveFwvXC8wTTI0ME8wNXdMMGdxYllWcnp4XC9aM0wyM3FDZXZPZUx6XC9wSDFwWDlZYk95ZHNNZTBjTDNtQktmbGRvTG5cL1VESldjVjNOMlNLaktsVEJENU90K0tjZ0VQV1BzOUNERnpmaHFCZitUSVVZVW5STUZaTm0xdGNvOWhNTmJVc1pzNnU2d0MrQVx4M2RceDNkXHgyMixceDIyZ2xvYmFsTmFtZVx4MjI6XHgyMnRyYXlyaWRlXHgyMixceDIyY2xpZW50RXhwZXJpbWVudHNTdGF0ZUJsb2JceDIyOlx4MjJceDVibnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxceDViXHg1ZCxceDViXHg1ZFx4NWRceDIyXHg3ZFx4N2QnLCdUJzogJ0FTQUZBVUlQVjMtSTBaZjR3ak1KZ0RfRksxNUZwTHEycWZ3RjFYZ013dDhyaGJ0VXJIaHdpXzk0Z1NYT3M5YWc5Y25lNGM1bWJYcjZLR0wwVHJfNlI0aXJVd1x4M2RceDNkJyx9KTt9fSkoKTs8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSI4SW5xZmZBZ0hWLWU5QVNYOTlmWmxRIj5pZiAod2luZG93Lnl0Y3NpKSB7eXRjc2kuaW5mb0dlbCh7c2VydmVyVGltZU1zOiAgNzMuMCB9LCAnJyk7fTwvc2NyaXB0Pjxub3NjcmlwdD48ZGl2IGNsYXNzPSJwbGF5ZXItdW5hdmFpbGFibGUiPjxoMSBjbGFzcz0ibWVzc2FnZSI+QW4gZXJyb3Igb2NjdXJyZWQuPC9oMT48ZGl2IGNsYXNzPSJzdWJtZXNzYWdlIj48YSBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PTRla09jREcyRDhFIiB0YXJnZXQ9Il9ibGFuayI+VHJ5IHdhdGNoaW5nIHRoaXMgdmlkZW8gb24gd3d3LnlvdXR1YmUuY29tPC9hPiwgb3IgZW5hYmxlIEphdmFTY3JpcHQgaWYgaXQgaXMgZGlzYWJsZWQgaW4geW91ciBicm93c2VyLjwvZGl2PjwvZGl2Pjwvbm9zY3JpcHQ+PC9ib2R5PjwvaHRtbD4="}},"time_used":163,"timings":{"blocked":-1,"dns":2,"connect":14,"send":0,"wait":104,"receive":0,"ssl":43},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/calculatorbg.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.832Z","timestamp":1785158432832,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/calculatorbg.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/styles/custom.css\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=4,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:32 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23159\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=xvVxexnyIgma6scYfjLtyE17tVt6D7dlM3tSspBR9OLbC7YXv91ydJCKuGdxpnf2%2FbveC8IJ9uYyFIOxVKTfHVc6nGn6Lrh3a0BohUj5GL9bc42aa2kVE694wO%2FiyEX5SlfIcw%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12d4ca256b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 14717\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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":14717,"size_decoded":15478,"mime_type":"image/png","magic":"PNG image data, 439 x 430, 8-bit/color RGBA, non-interlaced","md5":"58d4cfd193cac23b91f42813fd7f7704","sha1":"37be9c28921eb7da889b5d8009b0a21ca4584c73","sha256":"ebe1e0c762b6f1dd840afc824814cc2b60b217055dc6b889a651fa4ed5952fe4","sha512":"1c262ece091c5a0d322502c1bccbfe3eb80a75d1f5c0765ef608145ec8ee3ebf80a2c60fb6e443b6150e926b461ffdea3ba810ebd0f375a71b2ad2e5f3843843","ssdeep":"384:Ng6dBlg5CA3zpMW9BvfXsY+osqhzmoWq2cdLneD1:NZg5r3ll9B38xgLw","tlshash":"4b62b0cae8031107185e52851cba277fdca88fcf4d329290695efc622d7033956fdab6","first_seen":"2024-09-19T20:45:31.020268Z","last_seen":"2026-07-27T13:21:39.128541Z","times_seen":18,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAbcAAAGuCAYAAAATTki4AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RjRBRDU2NTM4NUQ0MTFFOUE4RjdCNzlGQ0I1ODVCOTgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RjRBRDU2NTQ4NUQ0MTFFOUE4RjdCNzlGQ0I1ODVCOTgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGNEFENTY1MTg1RDQxMUU5QThGN0I3OUZDQjU4NUI5OCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGNEFENTY1Mjg1RDQxMUU5QThGN0I3OUZDQjU4NUI5OCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pi5ynKMAADXxSURBVHja7N0JsGVH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"}},"time_used":34,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"receive":11,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css","fqdn":"maxcdn.bootstrapcdn.com","domain":"bootstrapcdn.com","tld":"com"},"ip":{"addr":"104.18.10.207","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.493Z","timestamp":1785158432493,"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":"bootstrapcdn.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 01 Jul 2026 06:33:56 GMT","end":"Tue, 29 Sep 2026 07:33:46 GMT"},"fingerprint":{"sha1":"95:C5:B1:CC:FD:2D:A2:1D:9E:F8:29:11:70:8F:C2:32:DB:0A:16:D8","sha256":"67:23:C0:55:AC:EE:9D:BF:1F:32:F6:C6:31:3A:5A:3F:85:B5:50:88:71:96:38:D1:BB:37:21:B0:0C:CF:B9:EA"}}},"request":{"raw":"GET /bootstrap/3.3.7/css/bootstrap.min.css HTTP/1.1\r\nHost: maxcdn.bootstrapcdn.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://uniz-coinzltd.com/\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: text/css; charset=utf-8\r\npriority: u=2,i=?0\r\ncdn-pullzone: 252412\r\ncdn-uid: b1941f61-b576-4f40-80de-5677acb38f74\r\ncdn-requestcountrycode: DE\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=31919000\r\ncontent-encoding: br\r\netag: \"ec3bb52a00e176a7181d454dffaea219\"\r\nlast-modified: Mon, 25 Jan 2021 22:03:59 GMT\r\ncdn-cachedat: 02/25/2025 23:55:13\r\ncdn-proxyver: 1.19\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 1077\r\ntiming-allow-origin: *\r\ncross-origin-resource-policy: cross-origin\r\nx-content-type-options: nosniff\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 3d6d3e43a53f02c8432187205f960146\r\ncdn-cache: HIT\r\nserver: cloudflare\r\nage: 3845194\r\ncf-cache-status: HIT\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\ncf-ray: a21bf12b3cfe23eb-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":121200,"size_decoded":21213,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (65371)","md5":"ec3bb52a00e176a7181d454dffaea219","sha1":"6527d8bf3e1e9368bab8c7b60f56bc01fa3afd68","sha256":"f75e846cc83bd11432f4b1e21a45f31bc85283d11d372f7b19accd1bf6a2635c","sha512":"e8c5daf01eae68ed7c1e277a6e544c7ad108a0fa877fb531d6d9f2210769b7da88e4e002c7b0be3b72154ebf7cbf01a795c8342ce2dad368bd6351e956195f8b","ssdeep":"768:Vy3Gxw/Vc/QWlJxtQOIuiHlq5mzI4X8OAduFKbv2ctg2Bd8JP7ecQVvH1FS:nw/a1fIuiHlq5mN8lDbNmPbh","tlshash":"2cc3c7a0f21031ea7333c55a75d0ed872219a153e56a4fb7f22f25d88f845ca1673f1a","first_seen":"2023-04-05T03:13:25Z","last_seen":"2026-08-17T23:19:30.168071Z","times_seen":73125,"resource_available":false,"data":"LyohCiAqIEJvb3RzdHJhcCB2My4zLjcgKGh0dHA6Ly9nZXRib290c3RyYXAuY29tKQogKiBDb3B5cmlnaHQgMjAxMS0yMDE2IFR3aXR0ZXIsIEluYy4KICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSkKICovLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL2h0bWx7Zm9udC1mYW1pbHk6c2Fucy1zZXJpZjstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTstbXMtdGV4dC1zaXplLWFkanVzdDoxMDAlfWJvZHl7bWFyZ2luOjB9YXJ0aWNsZSxhc2lkZSxkZXRhaWxzLGZpZ2NhcHRpb24sZmlndXJlLGZvb3RlcixoZWFkZXIsaGdyb3VwLG1haW4sbWVudSxuYXYsc2VjdGlvbixzdW1tYXJ5e2Rpc3BsYXk6YmxvY2t9YXVkaW8sY2FudmFzLHByb2dyZXNzLHZpZGVve2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfWF1ZGlvOm5vdChbY29udHJvbHNdKXtkaXNwbGF5Om5vbmU7aGVpZ2h0OjB9W2hpZGRlbl0sdGVtcGxhdGV7ZGlzcGxheTpub25lfWF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH1hOmFjdGl2ZSxhOmhvdmVye291dGxpbmU6MH1hYmJyW3RpdGxlXXtib3JkZXItYm90dG9tOjFweCBkb3R0ZWR9YixzdHJvbmd7Zm9udC13ZWlnaHQ6NzAwfWRmbntmb250LXN0eWxlOml0YWxpY31oMXttYXJnaW46LjY3ZW0gMDtmb250LXNpemU6MmVtfW1hcmt7Y29sb3I6IzAwMDtiYWNrZ3JvdW5kOiNmZjB9c21hbGx7Zm9udC1zaXplOjgwJX1zdWIsc3Vwe3Bvc2l0aW9uOnJlbGF0aXZlO2ZvbnQtc2l6ZTo3NSU7bGluZS1oZWlnaHQ6MDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX1zdXB7dG9wOi0uNWVtfXN1Yntib3R0b206LS4yNWVtfWltZ3tib3JkZXI6MH1zdmc6bm90KDpyb290KXtvdmVyZmxvdzpoaWRkZW59ZmlndXJle21hcmdpbjoxZW0gNDBweH1ocntoZWlnaHQ6MDstd2Via2l0LWJveC1zaXppbmc6Y29udGVudC1ib3g7LW1vei1ib3gtc2l6aW5nOmNvbnRlbnQtYm94O2JveC1zaXppbmc6Y29udGVudC1ib3h9cHJle292ZXJmbG93OmF1dG99Y29kZSxrYmQscHJlLHNhbXB7Zm9udC1mYW1pbHk6bW9ub3NwYWNlLG1vbm9zcGFjZTtmb250LXNpemU6MWVtfWJ1dHRvbixpbnB1dCxvcHRncm91cCxzZWxlY3QsdGV4dGFyZWF7bWFyZ2luOjA7Zm9udDppbmhlcml0O2NvbG9yOmluaGVyaXR9YnV0dG9ue292ZXJmbG93OnZpc2libGV9YnV0dG9uLHNlbGVjdHt0ZXh0LXRyYW5zZm9ybTpub25lfWJ1dHRvbixodG1sIGlucHV0W3R5cGU9YnV0dG9uXSxpbnB1dFt0eXBlPXJlc2V0XSxpbnB1dFt0eXBlPXN1Ym1pdF17LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbjtjdXJzb3I6cG9pbnRlcn1idXR0b25bZGlzYWJsZWRdLGh0bWwgaW5wdXRbZGlzYWJsZWRde2N1cnNvcjpkZWZhdWx0fWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixpbnB1dDo6LW1vei1mb2N1cy1pbm5lcntwYWRkaW5nOjA7Ym9yZGVyOjB9aW5wdXR7bGluZS1oZWlnaHQ6bm9ybWFsfWlucHV0W3R5cGU9Y2hlY2tib3hdLGlucHV0W3R5cGU9cmFkaW9dey13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjB9aW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b31pbnB1dFt0eXBlPXNlYXJjaF17LXdlYmtpdC1ib3gtc2l6aW5nOmNvbnRlbnQtYm94Oy1tb3otYm94LXNpemluZzpjb250ZW50LWJveDtib3gtc2l6aW5nOmNvbnRlbnQtYm94Oy13ZWJraXQtYXBwZWFyYW5jZTp0ZXh0ZmllbGR9aW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLGlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX1maWVsZHNldHtwYWRkaW5nOi4zNWVtIC42MjVlbSAuNzVlbTttYXJnaW46MCAycHg7Ym9yZGVyOjFweCBzb2xpZCBzaWx2ZXJ9bGVnZW5ke3BhZGRpbmc6MDtib3JkZXI6MH10ZXh0YXJlYXtvdmVyZmxvdzphdXRvfW9wdGdyb3Vwe2ZvbnQtd2VpZ2h0OjcwMH10YWJsZXtib3JkZXItc3BhY2luZzowO2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZX10ZCx0aHtwYWRkaW5nOjB9LyohIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyAqL0BtZWRpYSBwcmludHsqLDphZnRlciw6YmVmb3Jle2NvbG9yOiMwMDAhaW1wb3J0YW50O3RleHQtc2hhZG93Om5vbmUhaW1wb3J0YW50O2JhY2tncm91bmQ6MCAwIWltcG9ydGFudDstd2Via2l0LWJveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzpub25lIWltcG9ydGFudH1hLGE6dmlzaXRlZHt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfWFbaHJlZl06YWZ0ZXJ7Y29udGVudDoiICgiIGF0dHIoaHJlZikgIikifWFiYnJbdGl0bGVdOmFmdGVye2NvbnRlbnQ6IiAoIiBhdHRyKHRpdGxlKSAiKSJ9YVtocmVmXj0iamF2YXNjcmlwdDoiXTphZnRlcixhW2hyZWZePSIjIl06YWZ0ZXJ7Y29udGVudDoiIn1ibG9ja3F1b3RlLHByZXtib3JkZXI6MXB4IHNvbGlkICM5OTk7cGFnZS1icmVhay1pbnNpZGU6YXZvaWR9dGhlYWR7ZGlzcGxheTp0YWJsZS1oZWFkZXItZ3JvdXB9aW1nLHRye3BhZ2UtYnJlYWstaW5zaWRlOmF2b2lkfWltZ3ttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnR9aDIsaDMscHtvcnBoYW5zOjM7d2lkb3dzOjN9aDIsaDN7cGFnZS1icmVhay1hZnRlcjphdm9pZH0ubmF2YmFye2Rpc3BsYXk6bm9uZX0uYnRuPi5jYXJldCwuZHJvcHVwPi5idG4+LmNhcmV0e2JvcmRlci10b3AtY29sb3I6IzAwMCFpbXBvcnRhbnR9LmxhYmVse2JvcmRlcjoxcHggc29saWQgIzAwMH0udGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlIWltcG9ydGFudH0udGFibGUgdGQsLnRhYmxlIHRoe2JhY2tncm91bmQtY29sb3I6I2ZmZiFpbXBvcnRhbnR9LnRhYmxlLWJvcmRlcmVkIHRkLC50YWJsZS1ib3JkZXJlZCB0aHtib3JkZXI6MXB4IHNvbGlkICNkZGQhaW1wb3J0YW50fX1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidHbHlwaGljb25zIEhhbGZsaW5ncyc7c3JjOnVybCguLi9mb250cy9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLmVvdCk7c3JjOnVybCguLi9mb250cy9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLmVvdD8jaWVmaXgpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSx1cmwoLi4vZm9udHMvZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhci53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLHVybCguLi9mb250cy9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLndvZmYpIGZvcm1hdCgnd29mZicpLHVybCguLi9mb250cy9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpLHVybCguLi9mb250cy9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLnN2ZyNnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXIpIGZvcm1hdCgnc3ZnJyl9LmdseXBoaWNvbntwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6MXB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtZmFtaWx5OidHbHlwaGljb25zIEhhbGZsaW5ncyc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjE7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGV9LmdseXBoaWNvbi1hc3RlcmlzazpiZWZvcmV7Y29udGVudDoiXDAwMmEifS5nbHlwaGljb24tcGx1czpiZWZvcmV7Y29udGVudDoiXDAwMmIifS5nbHlwaGljb24tZXVyOmJlZm9yZSwuZ2x5cGhpY29uLWV1cm86YmVmb3Jle2NvbnRlbnQ6IlwyMGFjIn0uZ2x5cGhpY29uLW1pbnVzOmJlZm9yZXtjb250ZW50OiJcMjIxMiJ9LmdseXBoaWNvbi1jbG91ZDpiZWZvcmV7Y29udGVudDoiXDI2MDEifS5nbHlwaGljb24tZW52ZWxvcGU6YmVmb3Jle2NvbnRlbnQ6IlwyNzA5In0uZ2x5cGhpY29uLXBlbmNpbDpiZWZvcmV7Y29udGVudDoiXDI3MGYifS5nbHlwaGljb24tZ2xhc3M6YmVmb3Jle2NvbnRlbnQ6IlxlMDAxIn0uZ2x5cGhpY29uLW11c2ljOmJlZm9yZXtjb250ZW50OiJcZTAwMiJ9LmdseXBoaWNvbi1zZWFyY2g6YmVmb3Jle2NvbnRlbnQ6IlxlMDAzIn0uZ2x5cGhpY29uLWhlYXJ0OmJlZm9yZXtjb250ZW50OiJcZTAwNSJ9LmdseXBoaWNvbi1zdGFyOmJlZm9yZXtjb250ZW50OiJcZTAwNiJ9LmdseXBoaWNvbi1zdGFyLWVtcHR5OmJlZm9yZXtjb250ZW50OiJcZTAwNyJ9LmdseXBoaWNvbi11c2VyOmJlZm9yZXtjb250ZW50OiJcZTAwOCJ9LmdseXBoaWNvbi1maWxtOmJlZm9yZXtjb250ZW50OiJcZTAwOSJ9LmdseXBoaWNvbi10aC1sYXJnZTpiZWZvcmV7Y29udGVudDoiXGUwMTAifS5nbHlwaGljb24tdGg6YmVmb3Jle2NvbnRlbnQ6IlxlMDExIn0uZ2x5cGhpY29uLXRoLWxpc3Q6YmVmb3Jle2NvbnRlbnQ6IlxlMDEyIn0uZ2x5cGhpY29uLW9rOmJlZm9yZXtjb250ZW50OiJcZTAxMyJ9LmdseXBoaWNvbi1yZW1vdmU6YmVmb3Jle2NvbnRlbnQ6IlxlMDE0In0uZ2x5cGhpY29uLXpvb20taW46YmVmb3Jle2NvbnRlbnQ6IlxlMDE1In0uZ2x5cGhpY29uLXpvb20tb3V0OmJlZm9yZXtjb250ZW50OiJcZTAxNiJ9LmdseXBoaWNvbi1vZmY6YmVmb3Jle2NvbnRlbnQ6IlxlMDE3In0uZ2x5cGhpY29uLXNpZ25hbDpiZWZvcmV7Y29udGVudDoiXGUwMTgifS5nbHlwaGljb24tY29nOmJlZm9yZXtjb250ZW50OiJcZTAxOSJ9LmdseXBoaWNvbi10cmFzaDpiZWZvcmV7Y29udGVudDoiXGUwMjAifS5nbHlwaGljb24taG9tZTpiZWZvcmV7Y29udGVudDoiXGUwMjEifS5nbHlwaGljb24tZmlsZTpiZWZvcmV7Y29udGVudDoiXGUwMjIifS5nbHlwaGljb24tdGltZTpiZWZvcmV7Y29udGVudDoiXGUwMjMifS5nbHlwaGljb24tcm9hZDpiZWZvcmV7Y29udGVudDoiXGUwMjQifS5nbHlwaGljb24tZG93bmxvYWQtYWx0OmJlZm9yZXtjb250ZW50OiJcZTAyNSJ9LmdseXBoaWNvbi1kb3dubG9hZDpiZWZvcmV7Y29udGVudDoiXGUwMjYifS5nbHlwaGljb24tdXBsb2FkOmJlZm9yZXtjb250ZW50OiJcZTAyNyJ9LmdseXBoaWNvbi1pbmJveDpiZWZvcmV7Y29udGVudDoiXGUwMjgifS5nbHlwaGljb24tcGxheS1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxlMDI5In0uZ2x5cGhpY29uLXJlcGVhdDpiZWZvcmV7Y29udGVudDoiXGUwMzAifS5nbHlwaGljb24tcmVmcmVzaDpiZWZvcmV7Y29udGVudDoiXGUwMzEifS5nbHlwaGljb24tbGlzdC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxlMDMyIn0uZ2x5cGhpY29uLWxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxlMDMzIn0uZ2x5cGhpY29uLWZsYWc6YmVmb3Jle2NvbnRlbnQ6IlxlMDM0In0uZ2x5cGhpY29uLWhlYWRwaG9uZXM6YmVmb3Jle2NvbnRlbnQ6IlxlMDM1In0uZ2x5cGhpY29uLXZvbHVtZS1vZmY6YmVmb3Jle2NvbnRlbnQ6IlxlMDM2In0uZ2x5cGhpY29uLXZvbHVtZS1kb3duOmJlZm9yZXtjb250ZW50OiJcZTAzNyJ9LmdseXBoaWNvbi12b2x1bWUtdXA6YmVmb3Jle2NvbnRlbnQ6IlxlMDM4In0uZ2x5cGhpY29uLXFyY29kZTpiZWZvcmV7Y29udGVudDoiXGUwMzkifS5nbHlwaGljb24tYmFyY29kZTpiZWZvcmV7Y29udGVudDoiXGUwNDAifS5nbHlwaGljb24tdGFnOmJlZm9yZXtjb250ZW50OiJcZTA0MSJ9LmdseXBoaWNvbi10YWdzOmJlZm9yZXtjb250ZW50OiJcZTA0MiJ9LmdseXBoaWNvbi1ib29rOmJlZm9yZXtjb250ZW50OiJcZTA0MyJ9LmdseXBoaWNvbi1ib29rbWFyazpiZWZvcmV7Y29udGVudDoiXGUwNDQifS5nbHlwaGljb24tcHJpbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlMDQ1In0uZ2x5cGhpY29uLWNhbWVyYTpiZWZvcmV7Y29udGVudDoiXGUwNDYifS5nbHlwaGljb24tZm9udDpiZWZvcmV7Y29udGVudDoiXGUwNDcifS5nbHlwaGljb24tYm9sZDpiZWZvcmV7Y29udGVudDoiXGUwNDgifS5nbHlwaGljb24taXRhbGljOmJlZm9yZXtjb250ZW50OiJcZTA0OSJ9LmdseXBoaWNvbi10ZXh0LWhlaWdodDpiZWZvcmV7Y29udGVudDoiXGUwNTAifS5nbHlwaGljb24tdGV4dC13aWR0aDpiZWZvcmV7Y29udGVudDoiXGUwNTEifS5nbHlwaGljb24tYWxpZ24tbGVmdDpiZWZvcmV7Y29udGVudDoiXGUwNTIifS5nbHlwaGljb24tYWxpZ24tY2VudGVyOmJlZm9yZXtjb250ZW50OiJcZTA1MyJ9LmdseXBoaWNvbi1hbGlnbi1yaWdodDpiZWZvcmV7Y29udGVudDoiXGUwNTQifS5nbHlwaGljb24tYWxpZ24tanVzdGlmeTpiZWZvcmV7Y29udGVudDoiXGUwNTUifS5nbHlwaGljb24tbGlzdDpiZWZvcmV7Y29udGVudDoiXGUwNTYifS5nbHlwaGljb24taW5kZW50LWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxlMDU3In0uZ2x5cGhpY29uLWluZGVudC1yaWdodDpiZWZvcmV7Y29udGVudDoiXGUwNTgifS5nbHlwaGljb24tZmFjZXRpbWUtdmlkZW86YmVmb3Jle2NvbnRlbnQ6IlxlMDU5In0uZ2x5cGhpY29uLXBpY3R1cmU6YmVmb3Jle2NvbnRlbnQ6IlxlMDYwIn0uZ2x5cGhpY29uLW1hcC1tYXJrZXI6YmVmb3Jle2NvbnRlbnQ6IlxlMDYyIn0uZ2x5cGhpY29uLWFkanVzdDpiZWZvcmV7Y29udGVudDoiXGUwNjMifS5nbHlwaGljb24tdGludDpiZWZvcmV7Y29udGVudDoiXGUwNjQifS5nbHlwaGljb24tZWRpdDpiZWZvcmV7Y29udGVudDoiXGUwNjUifS5nbHlwaGljb24tc2hhcmU6YmVmb3Jle2NvbnRlbnQ6IlxlMDY2In0uZ2x5cGhpY29uLWNoZWNrOmJlZm9yZXtjb250ZW50OiJcZTA2NyJ9LmdseXBoaWNvbi1tb3ZlOmJlZm9yZXtjb250ZW50OiJcZTA2OCJ9LmdseXBoaWNvbi1zdGVwLWJhY2t3YXJkOmJlZm9yZXtjb250ZW50OiJcZTA2OSJ9LmdseXBoaWNvbi1mYXN0LWJhY2t3YXJkOmJlZm9yZXtjb250ZW50OiJcZTA3MCJ9LmdseXBoaWNvbi1iYWNrd2FyZDpiZWZvcmV7Y29udGVudDoiXGUwNzEifS5nbHlwaGljb24tcGxheTpiZWZvcmV7Y29udGVudDoiXGUwNzIifS5nbHlwaGljb24tcGF1c2U6YmVmb3Jle2NvbnRlbnQ6IlxlMDczIn0uZ2x5cGhpY29uLXN0b3A6YmVmb3Jle2NvbnRlbnQ6IlxlMDc0In0uZ2x5cGhpY29uLWZvcndhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxlMDc1In0uZ2x5cGhpY29uLWZhc3QtZm9yd2FyZDpiZWZvcmV7Y29udGVudDoiXGUwNzYifS5nbHlwaGljb24tc3RlcC1mb3J3YXJkOmJlZm9yZXtjb250ZW50OiJcZTA3NyJ9LmdseXBoaWNvbi1lamVjdDpiZWZvcmV7Y29udGVudDoiXGUwNzgifS5nbHlwaGljb24tY2hldnJvbi1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZTA3OSJ9LmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZTA4MCJ9LmdseXBoaWNvbi1wbHVzLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxlMDgxIn0uZ2x5cGhpY29uLW1pbnVzLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxlMDgyIn0uZ2x5cGhpY29uLXJlbW92ZS1zaWduOmJlZm9yZXtjb250ZW50OiJcZTA4MyJ9LmdseXBoaWNvbi1vay1zaWduOmJlZm9yZXtjb250ZW50OiJcZTA4NCJ9LmdseXBoaWNvbi1xdWVzdGlvbi1zaWduOmJlZm9yZXtjb250ZW50OiJcZTA4NSJ9LmdseXBoaWNvbi1pbmZvLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxlMDg2In0uZ2x5cGhpY29uLXNjcmVlbnNob3Q6YmVmb3Jle2NvbnRlbnQ6IlxlMDg3In0uZ2x5cGhpY29uLXJlbW92ZS1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxlMDg4In0uZ2x5cGhpY29uLW9rLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGUwODkifS5nbHlwaGljb24tYmFuLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGUwOTAifS5nbHlwaGljb24tYXJyb3ctbGVmdDpiZWZvcmV7Y29udGVudDoiXGUwOTEifS5nbHlwaGljb24tYXJyb3ctcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxlMDkyIn0uZ2x5cGhpY29uLWFycm93LXVwOmJlZm9yZXtjb250ZW50OiJcZTA5MyJ9LmdseXBoaWNvbi1hcnJvdy1kb3duOmJlZm9yZXtjb250ZW50OiJcZTA5NCJ9LmdseXBoaWNvbi1zaGFyZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxlMDk1In0uZ2x5cGhpY29uLXJlc2l6ZS1mdWxsOmJlZm9yZXtjb250ZW50OiJcZTA5NiJ9LmdseXBoaWNvbi1yZXNpemUtc21hbGw6YmVmb3Jle2NvbnRlbnQ6IlxlMDk3In0uZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxlMTAxIn0uZ2x5cGhpY29uLWdpZnQ6YmVmb3Jle2NvbnRlbnQ6IlxlMTAyIn0uZ2x5cGhpY29uLWxlYWY6YmVmb3Jle2NvbnRlbnQ6IlxlMTAzIn0uZ2x5cGhpY29uLWZpcmU6YmVmb3Jle2NvbnRlbnQ6IlxlMTA0In0uZ2x5cGhpY29uLWV5ZS1vcGVuOmJlZm9yZXtjb250ZW50OiJcZTEwNSJ9LmdseXBoaWNvbi1leWUtY2xvc2U6YmVmb3Jle2NvbnRlbnQ6IlxlMTA2In0uZ2x5cGhpY29uLXdhcm5pbmctc2lnbjpiZWZvcmV7Y29udGVudDoiXGUxMDcifS5nbHlwaGljb24tcGxhbmU6YmVmb3Jle2NvbnRlbnQ6IlxlMTA4In0uZ2x5cGhpY29uLWNhbGVuZGFyOmJlZm9yZXtjb250ZW50OiJcZTEwOSJ9LmdseXBoaWNvbi1yYW5kb206YmVmb3Jle2NvbnRlbnQ6IlxlMTEwIn0uZ2x5cGhpY29uLWNvbW1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxlMTExIn0uZ2x5cGhpY29uLW1hZ25ldDpiZWZvcmV7Y29udGVudDoiXGUxMTIifS5nbHlwaGljb24tY2hldnJvbi11cDpiZWZvcmV7Y29udGVudDoiXGUxMTMifS5nbHlwaGljb24tY2hldnJvbi1kb3duOmJlZm9yZXtjb250ZW50OiJcZTExNCJ9LmdseXBoaWNvbi1yZXR3ZWV0OmJlZm9yZXtjb250ZW50OiJcZTExNSJ9LmdseXBoaWNvbi1zaG9wcGluZy1jYXJ0OmJlZm9yZXtjb250ZW50OiJcZTExNiJ9LmdseXBoaWNvbi1mb2xkZXItY2xvc2U6YmVmb3Jle2NvbnRlbnQ6IlxlMTE3In0uZ2x5cGhpY29uLWZvbGRlci1vcGVuOmJlZm9yZXtjb250ZW50OiJcZTExOCJ9LmdseXBoaWNvbi1yZXNpemUtdmVydGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxlMTE5In0uZ2x5cGhpY29uLXJlc2l6ZS1ob3Jpem9udGFsOmJlZm9yZXtjb250ZW50OiJcZTEyMCJ9LmdseXBoaWNvbi1oZGQ6YmVmb3Jle2NvbnRlbnQ6IlxlMTIxIn0uZ2x5cGhpY29uLWJ1bGxob3JuOmJlZm9yZXtjb250ZW50OiJcZTEyMiJ9LmdseXBoaWNvbi1iZWxsOmJlZm9yZXtjb250ZW50OiJcZTEyMyJ9LmdseXBoaWNvbi1jZXJ0aWZpY2F0ZTpiZWZvcmV7Y29udGVudDoiXGUxMjQifS5nbHlwaGljb24tdGh1bWJzLXVwOmJlZm9yZXtjb250ZW50OiJcZTEyNSJ9LmdseXBoaWNvbi10aHVtYnMtZG93bjpiZWZvcmV7Y29udGVudDoiXGUxMjYifS5nbHlwaGljb24taGFuZC1yaWdodDpiZWZvcmV7Y29udGVudDoiXGUxMjcifS5nbHlwaGljb24taGFuZC1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZTEyOCJ9LmdseXBoaWNvbi1oYW5kLXVwOmJlZm9yZXtjb250ZW50OiJcZTEyOSJ9LmdseXBoaWNvbi1oYW5kLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxlMTMwIn0uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1yaWdodDpiZWZvcmV7Y29udGVudDoiXGUxMzEifS5nbHlwaGljb24tY2lyY2xlLWFycm93LWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxlMTMyIn0uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy11cDpiZWZvcmV7Y29udGVudDoiXGUxMzMifS5nbHlwaGljb24tY2lyY2xlLWFycm93LWRvd246YmVmb3Jle2NvbnRlbnQ6IlxlMTM0In0uZ2x5cGhpY29uLWdsb2JlOmJlZm9yZXtjb250ZW50OiJcZTEzNSJ9LmdseXBoaWNvbi13cmVuY2g6YmVmb3Jle2NvbnRlbnQ6IlxlMTM2In0uZ2x5cGhpY29uLXRhc2tzOmJlZm9yZXtjb250ZW50OiJcZTEzNyJ9LmdseXBoaWNvbi1maWx0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxlMTM4In0uZ2x5cGhpY29uLWJyaWVmY2FzZTpiZWZvcmV7Y29udGVudDoiXGUxMzkifS5nbHlwaGljb24tZnVsbHNjcmVlbjpiZWZvcmV7Y29udGVudDoiXGUxNDAifS5nbHlwaGljb24tZGFzaGJvYXJkOmJlZm9yZXtjb250ZW50OiJcZTE0MSJ9LmdseXBoaWNvbi1wYXBlcmNsaXA6YmVmb3Jle2NvbnRlbnQ6IlxlMTQyIn0uZ2x5cGhpY29uLWhlYXJ0LWVtcHR5OmJlZm9yZXtjb250ZW50OiJcZTE0MyJ9LmdseXBoaWNvbi1saW5rOmJlZm9yZXtjb250ZW50OiJcZTE0NCJ9LmdseXBoaWNvbi1waG9uZTpiZWZvcmV7Y29udGVudDoiXGUxNDUifS5nbHlwaGljb24tcHVzaHBpbjpiZWZvcmV7Y29udGVudDoiXGUxNDYifS5nbHlwaGljb24tdXNkOmJlZm9yZXtjb250ZW50OiJcZTE0OCJ9LmdseXBoaWNvbi1nYnA6YmVmb3Jle2NvbnRlbnQ6IlxlMTQ5In0uZ2x5cGhpY29uLXNvcnQ6YmVmb3Jle2NvbnRlbnQ6IlxlMTUwIn0uZ2x5cGhpY29uLXNvcnQtYnktYWxwaGFiZXQ6YmVmb3Jle2NvbnRlbnQ6IlxlMTUxIn0uZ2x5cGhpY29uLXNvcnQtYnktYWxwaGFiZXQtYWx0OmJlZm9yZXtjb250ZW50OiJcZTE1MiJ9LmdseXBoaWNvbi1zb3J0LWJ5LW9yZGVyOmJlZm9yZXtjb250ZW50OiJcZTE1MyJ9LmdseXBoaWNvbi1zb3J0LWJ5LW9yZGVyLWFsdDpiZWZvcmV7Y29udGVudDoiXGUxNTQifS5nbHlwaGljb24tc29ydC1ieS1hdHRyaWJ1dGVzOmJlZm9yZXtjb250ZW50OiJcZTE1NSJ9LmdseXBoaWNvbi1zb3J0LWJ5LWF0dHJpYnV0ZXMtYWx0OmJlZm9yZXtjb250ZW50OiJcZTE1NiJ9LmdseXBoaWNvbi11bmNoZWNrZWQ6YmVmb3Jle2NvbnRlbnQ6IlxlMTU3In0uZ2x5cGhpY29uLWV4cGFuZDpiZWZvcmV7Y29udGVudDoiXGUxNTgifS5nbHlwaGljb24tY29sbGFwc2UtZG93bjpiZWZvcmV7Y29udGVudDoiXGUxNTkifS5nbHlwaGljb24tY29sbGFwc2UtdXA6YmVmb3Jle2NvbnRlbnQ6IlxlMTYwIn0uZ2x5cGhpY29uLWxvZy1pbjpiZWZvcmV7Y29udGVudDoiXGUxNjEifS5nbHlwaGljb24tZmxhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlMTYyIn0uZ2x5cGhpY29uLWxvZy1vdXQ6YmVmb3Jle2NvbnRlbnQ6IlxlMTYzIn0uZ2x5cGhpY29uLW5ldy13aW5kb3c6YmVmb3Jle2NvbnRlbnQ6IlxlMTY0In0uZ2x5cGhpY29uLXJlY29yZDpiZWZvcmV7Y29udGVudDoiXGUxNjUifS5nbHlwaGljb24tc2F2ZTpiZWZvcmV7Y29udGVudDoiXGUxNjYifS5nbHlwaGljb24tb3BlbjpiZWZvcmV7Y29udGVudDoiXGUxNjcifS5nbHlwaGljb24tc2F2ZWQ6YmVmb3Jle2NvbnRlbnQ6IlxlMTY4In0uZ2x5cGhpY29uLWltcG9ydDpiZWZvcmV7Y29udGVudDoiXGUxNjkifS5nbHlwaGljb24tZXhwb3J0OmJlZm9yZXtjb250ZW50OiJcZTE3MCJ9LmdseXBoaWNvbi1zZW5kOmJlZm9yZXtjb250ZW50OiJcZTE3MSJ9LmdseXBoaWNvbi1mbG9wcHktZGlzazpiZWZvcmV7Y29udGVudDoiXGUxNzIifS5nbHlwaGljb24tZmxvcHB5LXNhdmVkOmJlZm9yZXtjb250ZW50OiJcZTE3MyJ9LmdseXBoaWNvbi1mbG9wcHktcmVtb3ZlOmJlZm9yZXtjb250ZW50OiJcZTE3NCJ9LmdseXBoaWNvbi1mbG9wcHktc2F2ZTpiZWZvcmV7Y29udGVudDoiXGUxNzUifS5nbHlwaGljb24tZmxvcHB5LW9wZW46YmVmb3Jle2NvbnRlbnQ6IlxlMTc2In0uZ2x5cGhpY29uLWNyZWRpdC1jYXJkOmJlZm9yZXtjb250ZW50OiJcZTE3NyJ9LmdseXBoaWNvbi10cmFuc2ZlcjpiZWZvcmV7Y29udGVudDoiXGUxNzgifS5nbHlwaGljb24tY3V0bGVyeTpiZWZvcmV7Y29udGVudDoiXGUxNzkifS5nbHlwaGljb24taGVhZGVyOmJlZm9yZXtjb250ZW50OiJcZTE4MCJ9LmdseXBoaWNvbi1jb21wcmVzc2VkOmJlZm9yZXtjb250ZW50OiJcZTE4MSJ9LmdseXBoaWNvbi1lYXJwaG9uZTpiZWZvcmV7Y29udGVudDoiXGUxODIifS5nbHlwaGljb24tcGhvbmUtYWx0OmJlZm9yZXtjb250ZW50OiJcZTE4MyJ9LmdseXBoaWNvbi10b3dlcjpiZWZvcmV7Y29udGVudDoiXGUxODQifS5nbHlwaGljb24tc3RhdHM6YmVmb3Jle2NvbnRlbnQ6IlxlMTg1In0uZ2x5cGhpY29uLXNkLXZpZGVvOmJlZm9yZXtjb250ZW50OiJcZTE4NiJ9LmdseXBoaWNvbi1oZC12aWRlbzpiZWZvcmV7Y29udGVudDoiXGUxODcifS5nbHlwaGljb24tc3VidGl0bGVzOmJlZm9yZXtjb250ZW50OiJcZTE4OCJ9LmdseXBoaWNvbi1zb3VuZC1zdGVyZW86YmVmb3Jle2NvbnRlbnQ6IlxlMTg5In0uZ2x5cGhpY29uLXNvdW5kLWRvbGJ5OmJlZm9yZXtjb250ZW50OiJcZTE5MCJ9LmdseXBoaWNvbi1zb3VuZC01LTE6YmVmb3Jle2NvbnRlbnQ6IlxlMTkxIn0uZ2x5cGhpY29uLXNvdW5kLTYtMTpiZWZvcmV7Y29udGVudDoiXGUxOTIifS5nbHlwaGljb24tc291bmQtNy0xOmJlZm9yZXtjb250ZW50OiJcZTE5MyJ9LmdseXBoaWNvbi1jb3B5cmlnaHQtbWFyazpiZWZvcmV7Y29udGVudDoiXGUxOTQifS5nbHlwaGljb24tcmVnaXN0cmF0aW9uLW1hcms6YmVmb3Jle2NvbnRlbnQ6IlxlMTk1In0uZ2x5cGhpY29uLWNsb3VkLWRvd25sb2FkOmJlZm9yZXtjb250ZW50OiJcZTE5NyJ9LmdseXBoaWNvbi1jbG91ZC11cGxvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxlMTk4In0uZ2x5cGhpY29uLXRyZWUtY29uaWZlcjpiZWZvcmV7Y29udGVudDoiXGUxOTkifS5nbHlwaGljb24tdHJlZS1kZWNpZHVvdXM6YmVmb3Jle2NvbnRlbnQ6IlxlMjAwIn0uZ2x5cGhpY29uLWNkOmJlZm9yZXtjb250ZW50OiJcZTIwMSJ9LmdseXBoaWNvbi1zYXZlLWZpbGU6YmVmb3Jle2NvbnRlbnQ6IlxlMjAyIn0uZ2x5cGhpY29uLW9wZW4tZmlsZTpiZWZvcmV7Y29udGVudDoiXGUyMDMifS5nbHlwaGljb24tbGV2ZWwtdXA6YmVmb3Jle2NvbnRlbnQ6IlxlMjA0In0uZ2x5cGhpY29uLWNvcHk6YmVmb3Jle2NvbnRlbnQ6IlxlMjA1In0uZ2x5cGhpY29uLXBhc3RlOmJlZm9yZXtjb250ZW50OiJcZTIwNiJ9LmdseXBoaWNvbi1hbGVydDpiZWZvcmV7Y29udGVudDoiXGUyMDkifS5nbHlwaGljb24tZXF1YWxpemVyOmJlZm9yZXtjb250ZW50OiJcZTIxMCJ9LmdseXBoaWNvbi1raW5nOmJlZm9yZXtjb250ZW50OiJcZTIxMSJ9LmdseXBoaWNvbi1xdWVlbjpiZWZvcmV7Y29udGVudDoiXGUyMTIifS5nbHlwaGljb24tcGF3bjpiZWZvcmV7Y29udGVudDoiXGUyMTMifS5nbHlwaGljb24tYmlzaG9wOmJlZm9yZXtjb250ZW50OiJcZTIxNCJ9LmdseXBoaWNvbi1rbmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxlMjE1In0uZ2x5cGhpY29uLWJhYnktZm9ybXVsYTpiZWZvcmV7Y29udGVudDoiXGUyMTYifS5nbHlwaGljb24tdGVudDpiZWZvcmV7Y29udGVudDoiXDI2ZmEifS5nbHlwaGljb24tYmxhY2tib2FyZDpiZWZvcmV7Y29udGVudDoiXGUyMTgifS5nbHlwaGljb24tYmVkOmJlZm9yZXtjb250ZW50OiJcZTIxOSJ9LmdseXBoaWNvbi1hcHBsZTpiZWZvcmV7Y29udGVudDoiXGY4ZmYifS5nbHlwaGljb24tZXJhc2U6YmVmb3Jle2NvbnRlbnQ6IlxlMjIxIn0uZ2x5cGhpY29uLWhvdXJnbGFzczpiZWZvcmV7Y29udGVudDoiXDIzMWIifS5nbHlwaGljb24tbGFtcDpiZWZvcmV7Y29udGVudDoiXGUyMjMifS5nbHlwaGljb24tZHVwbGljYXRlOmJlZm9yZXtjb250ZW50OiJcZTIyNCJ9LmdseXBoaWNvbi1waWdneS1iYW5rOmJlZm9yZXtjb250ZW50OiJcZTIyNSJ9LmdseXBoaWNvbi1zY2lzc29yczpiZWZvcmV7Y29udGVudDoiXGUyMjYifS5nbHlwaGljb24tYml0Y29pbjpiZWZvcmV7Y29udGVudDoiXGUyMjcifS5nbHlwaGljb24tYnRjOmJlZm9yZXtjb250ZW50OiJcZTIyNyJ9LmdseXBoaWNvbi14YnQ6YmVmb3Jle2NvbnRlbnQ6IlxlMjI3In0uZ2x5cGhpY29uLXllbjpiZWZvcmV7Y29udGVudDoiXDAwYTUifS5nbHlwaGljb24tanB5OmJlZm9yZXtjb250ZW50OiJcMDBhNSJ9LmdseXBoaWNvbi1ydWJsZTpiZWZvcmV7Y29udGVudDoiXDIwYmQifS5nbHlwaGljb24tcnViOmJlZm9yZXtjb250ZW50OiJcMjBiZCJ9LmdseXBoaWNvbi1zY2FsZTpiZWZvcmV7Y29udGVudDoiXGUyMzAifS5nbHlwaGljb24taWNlLWxvbGx5OmJlZm9yZXtjb250ZW50OiJcZTIzMSJ9LmdseXBoaWNvbi1pY2UtbG9sbHktdGFzdGVkOmJlZm9yZXtjb250ZW50OiJcZTIzMiJ9LmdseXBoaWNvbi1lZHVjYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxlMjMzIn0uZ2x5cGhpY29uLW9wdGlvbi1ob3Jpem9udGFsOmJlZm9yZXtjb250ZW50OiJcZTIzNCJ9LmdseXBoaWNvbi1vcHRpb24tdmVydGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxlMjM1In0uZ2x5cGhpY29uLW1lbnUtaGFtYnVyZ2VyOmJlZm9yZXtjb250ZW50OiJcZTIzNiJ9LmdseXBoaWNvbi1tb2RhbC13aW5kb3c6YmVmb3Jle2NvbnRlbnQ6IlxlMjM3In0uZ2x5cGhpY29uLW9pbDpiZWZvcmV7Y29udGVudDoiXGUyMzgifS5nbHlwaGljb24tZ3JhaW46YmVmb3Jle2NvbnRlbnQ6IlxlMjM5In0uZ2x5cGhpY29uLXN1bmdsYXNzZXM6YmVmb3Jle2NvbnRlbnQ6IlxlMjQwIn0uZ2x5cGhpY29uLXRleHQtc2l6ZTpiZWZvcmV7Y29udGVudDoiXGUyNDEifS5nbHlwaGljb24tdGV4dC1jb2xvcjpiZWZvcmV7Y29udGVudDoiXGUyNDIifS5nbHlwaGljb24tdGV4dC1iYWNrZ3JvdW5kOmJlZm9yZXtjb250ZW50OiJcZTI0MyJ9LmdseXBoaWNvbi1vYmplY3QtYWxpZ24tdG9wOmJlZm9yZXtjb250ZW50OiJcZTI0NCJ9LmdseXBoaWNvbi1vYmplY3QtYWxpZ24tYm90dG9tOmJlZm9yZXtjb250ZW50OiJcZTI0NSJ9LmdseXBoaWNvbi1vYmplY3QtYWxpZ24taG9yaXpvbnRhbDpiZWZvcmV7Y29udGVudDoiXGUyNDYifS5nbHlwaGljb24tb2JqZWN0LWFsaWduLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxlMjQ3In0uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi12ZXJ0aWNhbDpiZWZvcmV7Y29udGVudDoiXGUyNDgifS5nbHlwaGljb24tb2JqZWN0LWFsaWduLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZTI0OSJ9LmdseXBoaWNvbi10cmlhbmdsZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGUyNTAifS5nbHlwaGljb24tdHJpYW5nbGUtbGVmdDpiZWZvcmV7Y29udGVudDoiXGUyNTEifS5nbHlwaGljb24tdHJpYW5nbGUtYm90dG9tOmJlZm9yZXtjb250ZW50OiJcZTI1MiJ9LmdseXBoaWNvbi10cmlhbmdsZS10b3A6YmVmb3Jle2NvbnRlbnQ6IlxlMjUzIn0uZ2x5cGhpY29uLWNvbnNvbGU6YmVmb3Jle2NvbnRlbnQ6IlxlMjU0In0uZ2x5cGhpY29uLXN1cGVyc2NyaXB0OmJlZm9yZXtjb250ZW50OiJcZTI1NSJ9LmdseXBoaWNvbi1zdWJzY3JpcHQ6YmVmb3Jle2NvbnRlbnQ6IlxlMjU2In0uZ2x5cGhpY29uLW1lbnUtbGVmdDpiZWZvcmV7Y29udGVudDoiXGUyNTcifS5nbHlwaGljb24tbWVudS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGUyNTgifS5nbHlwaGljb24tbWVudS1kb3duOmJlZm9yZXtjb250ZW50OiJcZTI1OSJ9LmdseXBoaWNvbi1tZW51LXVwOmJlZm9yZXtjb250ZW50OiJcZTI2MCJ9Knstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9OmFmdGVyLDpiZWZvcmV7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fWh0bWx7Zm9udC1zaXplOjEwcHg7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCl9Ym9keXtmb250LWZhbWlseToiSGVsdmV0aWNhIE5ldWUiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjEuNDI4NTcxNDM7Y29sb3I6IzMzMztiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9YnV0dG9uLGlucHV0LHNlbGVjdCx0ZXh0YXJlYXtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXR9YXtjb2xvcjojMzM3YWI3O3RleHQtZGVjb3JhdGlvbjpub25lfWE6Zm9jdXMsYTpob3Zlcntjb2xvcjojMjM1MjdjO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9YTpmb2N1c3tvdXRsaW5lOjVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtvdXRsaW5lLW9mZnNldDotMnB4fWZpZ3VyZXttYXJnaW46MH1pbWd7dmVydGljYWwtYWxpZ246bWlkZGxlfS5jYXJvdXNlbC1pbm5lcj4uaXRlbT5hPmltZywuY2Fyb3VzZWwtaW5uZXI+Lml0ZW0+aW1nLC5pbWctcmVzcG9uc2l2ZSwudGh1bWJuYWlsIGE+aW1nLC50aHVtYm5haWw+aW1ne2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG99LmltZy1yb3VuZGVke2JvcmRlci1yYWRpdXM6NnB4fS5pbWctdGh1bWJuYWlse2Rpc3BsYXk6aW5saW5lLWJsb2NrO21heC13aWR0aDoxMDAlO2hlaWdodDphdXRvO3BhZGRpbmc6NHB4O2xpbmUtaGVpZ2h0OjEuNDI4NTcxNDM7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgI2RkZDtib3JkZXItcmFkaXVzOjRweDstd2Via2l0LXRyYW5zaXRpb246YWxsIC4ycyBlYXNlLWluLW91dDstby10cmFuc2l0aW9uOmFsbCAuMnMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjphbGwgLjJzIGVhc2UtaW4tb3V0fS5pbWctY2lyY2xle2JvcmRlci1yYWRpdXM6NTAlfWhye21hcmdpbi10b3A6MjBweDttYXJnaW4tYm90dG9tOjIwcHg7Ym9yZGVyOjA7Ym9yZGVyLXRvcDoxcHggc29saWQgI2VlZX0uc3Itb25seXtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxcHg7aGVpZ2h0OjFweDtwYWRkaW5nOjA7bWFyZ2luOi0xcHg7b3ZlcmZsb3c6aGlkZGVuO2NsaXA6cmVjdCgwLDAsMCwwKTtib3JkZXI6MH0uc3Itb25seS1mb2N1c2FibGU6YWN0aXZlLC5zci1vbmx5LWZvY3VzYWJsZTpmb2N1c3twb3NpdGlvbjpzdGF0aWM7d2lkdGg6YXV0bztoZWlnaHQ6YXV0bzttYXJnaW46MDtvdmVyZmxvdzp2aXNpYmxlO2NsaXA6YXV0b31bcm9sZT1idXR0b25de2N1cnNvcjpwb2ludGVyfS5oMSwuaDIsLmgzLC5oNCwuaDUsLmg2LGgxLGgyLGgzLGg0LGg1LGg2e2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjEuMTtjb2xvcjppbmhlcml0fS5oMSAuc21hbGwsLmgxIHNtYWxsLC5oMiAuc21hbGwsLmgyIHNtYWxsLC5oMyAuc21hbGwsLmgzIHNtYWxsLC5oNCAuc21hbGwsLmg0IHNtYWxsLC5oNSAuc21hbGwsLmg1IHNtYWxsLC5oNiAuc21hbGwsLmg2IHNtYWxsLGgxIC5zbWFsbCxoMSBzbWFsbCxoMiAuc21hbGwsaDIgc21hbGwsaDMgLnNtYWxsLGgzIHNtYWxsLGg0IC5zbWFsbCxoNCBzbWFsbCxoNSAuc21hbGwsaDUgc21hbGwsaDYgLnNtYWxsLGg2IHNtYWxse2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxO2NvbG9yOiM3Nzd9LmgxLC5oMiwuaDMsaDEsaDIsaDN7bWFyZ2luLXRvcDoyMHB4O21hcmdpbi1ib3R0b206MTBweH0uaDEgLnNtYWxsLC5oMSBzbWFsbCwuaDIgLnNtYWxsLC5oMiBzbWFsbCwuaDMgLnNtYWxsLC5oMyBzbWFsbCxoMSAuc21hbGwsaDEgc21hbGwsaDIgLnNtYWxsLGgyIHNtYWxsLGgzIC5zbWFsbCxoMyBzbWFsbHtmb250LXNpemU6NjUlfS5oNCwuaDUsLmg2LGg0LGg1LGg2e21hcmdpbi10b3A6MTBweDttYXJnaW4tYm90dG9tOjEwcHh9Lmg0IC5zbWFsbCwuaDQgc21hbGwsLmg1IC5zbWFsbCwuaDUgc21hbGwsLmg2IC5zbWFsbCwuaDYgc21hbGwsaDQgLnNtYWxsLGg0IHNtYWxsLGg1IC5zbWFsbCxoNSBzbWFsbCxoNiAuc21hbGwsaDYgc21hbGx7Zm9udC1zaXplOjc1JX0uaDEsaDF7Zm9udC1zaXplOjM2cHh9LmgyLGgye2ZvbnQtc2l6ZTozMHB4fS5oMyxoM3tmb250LXNpemU6MjRweH0uaDQsaDR7Zm9udC1zaXplOjE4cHh9Lmg1LGg1e2ZvbnQtc2l6ZToxNHB4fS5oNixoNntmb250LXNpemU6MTJweH1we21hcmdpbjowIDAgMTBweH0ubGVhZHttYXJnaW4tYm90dG9tOjIwcHg7Zm9udC1zaXplOjE2cHg7Zm9udC13ZWlnaHQ6MzAwO2xpbmUtaGVpZ2h0OjEuNH1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LmxlYWR7Zm9udC1zaXplOjIxcHh9fS5zbWFsbCxzbWFsbHtmb250LXNpemU6ODUlfS5tYXJrLG1hcmt7cGFkZGluZzouMmVtO2JhY2tncm91bmQtY29sb3I6I2ZjZjhlM30udGV4dC1sZWZ0e3RleHQtYWxpZ246bGVmdH0udGV4dC1yaWdodHt0ZXh0LWFsaWduOnJpZ2h0fS50ZXh0LWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlcn0udGV4dC1qdXN0aWZ5e3RleHQtYWxpZ246anVzdGlmeX0udGV4dC1ub3dyYXB7d2hpdGUtc3BhY2U6bm93cmFwfS50ZXh0LWxvd2VyY2FzZXt0ZXh0LXRyYW5zZm9ybTpsb3dlcmNhc2V9LnRleHQtdXBwZXJjYXNle3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0udGV4dC1jYXBpdGFsaXple3RleHQtdHJhbnNmb3JtOmNhcGl0YWxpemV9LnRleHQtbXV0ZWR7Y29sb3I6Izc3N30udGV4dC1wcmltYXJ5e2NvbG9yOiMzMzdhYjd9YS50ZXh0LXByaW1hcnk6Zm9jdXMsYS50ZXh0LXByaW1hcnk6aG92ZXJ7Y29sb3I6IzI4NjA5MH0udGV4dC1zdWNjZXNze2NvbG9yOiMzYzc2M2R9YS50ZXh0LXN1Y2Nlc3M6Zm9jdXMsYS50ZXh0LXN1Y2Nlc3M6aG92ZXJ7Y29sb3I6IzJiNTQyY30udGV4dC1pbmZve2NvbG9yOiMzMTcwOGZ9YS50ZXh0LWluZm86Zm9jdXMsYS50ZXh0LWluZm86aG92ZXJ7Y29sb3I6IzI0NTI2OX0udGV4dC13YXJuaW5ne2NvbG9yOiM4YTZkM2J9YS50ZXh0LXdhcm5pbmc6Zm9jdXMsYS50ZXh0LXdhcm5pbmc6aG92ZXJ7Y29sb3I6IzY2NTEyY30udGV4dC1kYW5nZXJ7Y29sb3I6I2E5NDQ0Mn1hLnRleHQtZGFuZ2VyOmZvY3VzLGEudGV4dC1kYW5nZXI6aG92ZXJ7Y29sb3I6Izg0MzUzNH0uYmctcHJpbWFyeXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzMzN2FiN31hLmJnLXByaW1hcnk6Zm9jdXMsYS5iZy1wcmltYXJ5OmhvdmVye2JhY2tncm91bmQtY29sb3I6IzI4NjA5MH0uYmctc3VjY2Vzc3tiYWNrZ3JvdW5kLWNvbG9yOiNkZmYwZDh9YS5iZy1zdWNjZXNzOmZvY3VzLGEuYmctc3VjY2Vzczpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNjMWUyYjN9LmJnLWluZm97YmFja2dyb3VuZC1jb2xvcjojZDllZGY3fWEuYmctaW5mbzpmb2N1cyxhLmJnLWluZm86aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojYWZkOWVlfS5iZy13YXJuaW5ne2JhY2tncm91bmQtY29sb3I6I2ZjZjhlM31hLmJnLXdhcm5pbmc6Zm9jdXMsYS5iZy13YXJuaW5nOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2Y3ZWNiNX0uYmctZGFuZ2Vye2JhY2tncm91bmQtY29sb3I6I2YyZGVkZX1hLmJnLWRhbmdlcjpmb2N1cyxhLmJnLWRhbmdlcjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNlNGI5Yjl9LnBhZ2UtaGVhZGVye3BhZGRpbmctYm90dG9tOjlweDttYXJnaW46NDBweCAwIDIwcHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2VlZX1vbCx1bHttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbToxMHB4fW9sIG9sLG9sIHVsLHVsIG9sLHVsIHVse21hcmdpbi1ib3R0b206MH0ubGlzdC11bnN0eWxlZHtwYWRkaW5nLWxlZnQ6MDtsaXN0LXN0eWxlOm5vbmV9Lmxpc3QtaW5saW5le3BhZGRpbmctbGVmdDowO21hcmdpbi1sZWZ0Oi01cHg7bGlzdC1zdHlsZTpub25lfS5saXN0LWlubGluZT5saXtkaXNwbGF5OmlubGluZS1ibG9jaztwYWRkaW5nLXJpZ2h0OjVweDtwYWRkaW5nLWxlZnQ6NXB4fWRse21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOjIwcHh9ZGQsZHR7bGluZS1oZWlnaHQ6MS40Mjg1NzE0M31kdHtmb250LXdlaWdodDo3MDB9ZGR7bWFyZ2luLWxlZnQ6MH1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LmRsLWhvcml6b250YWwgZHR7ZmxvYXQ6bGVmdDt3aWR0aDoxNjBweDtvdmVyZmxvdzpoaWRkZW47Y2xlYXI6bGVmdDt0ZXh0LWFsaWduOnJpZ2h0O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5kbC1ob3Jpem9udGFsIGRke21hcmdpbi1sZWZ0OjE4MHB4fX1hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdLGFiYnJbdGl0bGVde2N1cnNvcjpoZWxwO2JvcmRlci1ib3R0b206MXB4IGRvdHRlZCAjNzc3fS5pbml0aWFsaXNte2ZvbnQtc2l6ZTo5MCU7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfWJsb2NrcXVvdGV7cGFkZGluZzoxMHB4IDIwcHg7bWFyZ2luOjAgMCAyMHB4O2ZvbnQtc2l6ZToxNy41cHg7Ym9yZGVyLWxlZnQ6NXB4IHNvbGlkICNlZWV9YmxvY2txdW90ZSBvbDpsYXN0LWNoaWxkLGJsb2NrcXVvdGUgcDpsYXN0LWNoaWxkLGJsb2NrcXVvdGUgdWw6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9YmxvY2txdW90ZSAuc21hbGwsYmxvY2txdW90ZSBmb290ZXIsYmxvY2txdW90ZSBzbWFsbHtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTo4MCU7bGluZS1oZWlnaHQ6MS40Mjg1NzE0Mztjb2xvcjojNzc3fWJsb2NrcXVvdGUgLnNtYWxsOmJlZm9yZSxibG9ja3F1b3RlIGZvb3RlcjpiZWZvcmUsYmxvY2txdW90ZSBzbWFsbDpiZWZvcmV7Y29udGVudDonXDIwMTQgXDAwQTAnfS5ibG9ja3F1b3RlLXJldmVyc2UsYmxvY2txdW90ZS5wdWxsLXJpZ2h0e3BhZGRpbmctcmlnaHQ6MTVweDtwYWRkaW5nLWxlZnQ6MDt0ZXh0LWFsaWduOnJpZ2h0O2JvcmRlci1yaWdodDo1cHggc29saWQgI2VlZTtib3JkZXItbGVmdDowfS5ibG9ja3F1b3RlLXJldmVyc2UgLnNtYWxsOmJlZm9yZSwuYmxvY2txdW90ZS1yZXZlcnNlIGZvb3RlcjpiZWZvcmUsLmJsb2NrcXVvdGUtcmV2ZXJzZSBzbWFsbDpiZWZvcmUsYmxvY2txdW90ZS5wdWxsLXJpZ2h0IC5zbWFsbDpiZWZvcmUsYmxvY2txdW90ZS5wdWxsLXJpZ2h0IGZvb3RlcjpiZWZvcmUsYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHNtYWxsOmJlZm9yZXtjb250ZW50OicnfS5ibG9ja3F1b3RlLXJldmVyc2UgLnNtYWxsOmFmdGVyLC5ibG9ja3F1b3RlLXJldmVyc2UgZm9vdGVyOmFmdGVyLC5ibG9ja3F1b3RlLXJldmVyc2Ugc21hbGw6YWZ0ZXIsYmxvY2txdW90ZS5wdWxsLXJpZ2h0IC5zbWFsbDphZnRlcixibG9ja3F1b3RlLnB1bGwtcmlnaHQgZm9vdGVyOmFmdGVyLGJsb2NrcXVvdGUucHVsbC1yaWdodCBzbWFsbDphZnRlcntjb250ZW50OidcMDBBMCBcMjAxNCd9YWRkcmVzc3ttYXJnaW4tYm90dG9tOjIwcHg7Zm9udC1zdHlsZTpub3JtYWw7bGluZS1oZWlnaHQ6MS40Mjg1NzE0M31jb2RlLGtiZCxwcmUsc2FtcHtmb250LWZhbWlseTpNZW5sbyxNb25hY28sQ29uc29sYXMsIkNvdXJpZXIgTmV3Iixtb25vc3BhY2V9Y29kZXtwYWRkaW5nOjJweCA0cHg7Zm9udC1zaXplOjkwJTtjb2xvcjojYzcyNTRlO2JhY2tncm91bmQtY29sb3I6I2Y5ZjJmNDtib3JkZXItcmFkaXVzOjRweH1rYmR7cGFkZGluZzoycHggNHB4O2ZvbnQtc2l6ZTo5MCU7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMzMzM7Ym9yZGVyLXJhZGl1czozcHg7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjI1KTtib3gtc2hhZG93Omluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjI1KX1rYmQga2Jke3BhZGRpbmc6MDtmb250LXNpemU6MTAwJTtmb250LXdlaWdodDo3MDA7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmU7Ym94LXNoYWRvdzpub25lfXByZXtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6OS41cHg7bWFyZ2luOjAgMCAxMHB4O2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0OjEuNDI4NTcxNDM7Y29sb3I6IzMzMzt3b3JkLWJyZWFrOmJyZWFrLWFsbDt3b3JkLXdyYXA6YnJlYWstd29yZDtiYWNrZ3JvdW5kLWNvbG9yOiNmNWY1ZjU7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2JvcmRlci1yYWRpdXM6NHB4fXByZSBjb2Rle3BhZGRpbmc6MDtmb250LXNpemU6aW5oZXJpdDtjb2xvcjppbmhlcml0O3doaXRlLXNwYWNlOnByZS13cmFwO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czowfS5wcmUtc2Nyb2xsYWJsZXttYXgtaGVpZ2h0OjM0MHB4O292ZXJmbG93LXk6c2Nyb2xsfS5jb250YWluZXJ7cGFkZGluZy1yaWdodDoxNXB4O3BhZGRpbmctbGVmdDoxNXB4O21hcmdpbi1yaWdodDphdXRvO21hcmdpbi1sZWZ0OmF1dG99QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5jb250YWluZXJ7d2lkdGg6NzUwcHh9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsuY29udGFpbmVye3dpZHRoOjk3MHB4fX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey5jb250YWluZXJ7d2lkdGg6MTE3MHB4fX0uY29udGFpbmVyLWZsdWlke3BhZGRpbmctcmlnaHQ6MTVweDtwYWRkaW5nLWxlZnQ6MTVweDttYXJnaW4tcmlnaHQ6YXV0bzttYXJnaW4tbGVmdDphdXRvfS5yb3d7bWFyZ2luLXJpZ2h0Oi0xNXB4O21hcmdpbi1sZWZ0Oi0xNXB4fS5jb2wtbGctMSwuY29sLWxnLTEwLC5jb2wtbGctMTEsLmNvbC1sZy0xMiwuY29sLWxnLTIsLmNvbC1sZy0zLC5jb2wtbGctNCwuY29sLWxnLTUsLmNvbC1sZy02LC5jb2wtbGctNywuY29sLWxnLTgsLmNvbC1sZy05LC5jb2wtbWQtMSwuY29sLW1kLTEwLC5jb2wtbWQtMTEsLmNvbC1tZC0xMiwuY29sLW1kLTIsLmNvbC1tZC0zLC5jb2wtbWQtNCwuY29sLW1kLTUsLmNvbC1tZC02LC5jb2wtbWQtNywuY29sLW1kLTgsLmNvbC1tZC05LC5jb2wtc20tMSwuY29sLXNtLTEwLC5jb2wtc20tMTEsLmNvbC1zbS0xMiwuY29sLXNtLTIsLmNvbC1zbS0zLC5jb2wtc20tNCwuY29sLXNtLTUsLmNvbC1zbS02LC5jb2wtc20tNywuY29sLXNtLTgsLmNvbC1zbS05LC5jb2wteHMtMSwuY29sLXhzLTEwLC5jb2wteHMtMTEsLmNvbC14cy0xMiwuY29sLXhzLTIsLmNvbC14cy0zLC5jb2wteHMtNCwuY29sLXhzLTUsLmNvbC14cy02LC5jb2wteHMtNywuY29sLXhzLTgsLmNvbC14cy05e3Bvc2l0aW9uOnJlbGF0aXZlO21pbi1oZWlnaHQ6MXB4O3BhZGRpbmctcmlnaHQ6MTVweDtwYWRkaW5nLWxlZnQ6MTVweH0uY29sLXhzLTEsLmNvbC14cy0xMCwuY29sLXhzLTExLC5jb2wteHMtMTIsLmNvbC14cy0yLC5jb2wteHMtMywuY29sLXhzLTQsLmNvbC14cy01LC5jb2wteHMtNiwuY29sLXhzLTcsLmNvbC14cy04LC5jb2wteHMtOXtmbG9hdDpsZWZ0fS5jb2wteHMtMTJ7d2lkdGg6MTAwJX0uY29sLXhzLTExe3dpZHRoOjkxLjY2NjY2NjY3JX0uY29sLXhzLTEwe3dpZHRoOjgzLjMzMzMzMzMzJX0uY29sLXhzLTl7d2lkdGg6NzUlfS5jb2wteHMtOHt3aWR0aDo2Ni42NjY2NjY2NyV9LmNvbC14cy03e3dpZHRoOjU4LjMzMzMzMzMzJX0uY29sLXhzLTZ7d2lkdGg6NTAlfS5jb2wteHMtNXt3aWR0aDo0MS42NjY2NjY2NyV9LmNvbC14cy00e3dpZHRoOjMzLjMzMzMzMzMzJX0uY29sLXhzLTN7d2lkdGg6MjUlfS5jb2wteHMtMnt3aWR0aDoxNi42NjY2NjY2NyV9LmNvbC14cy0xe3dpZHRoOjguMzMzMzMzMzMlfS5jb2wteHMtcHVsbC0xMntyaWdodDoxMDAlfS5jb2wteHMtcHVsbC0xMXtyaWdodDo5MS42NjY2NjY2NyV9LmNvbC14cy1wdWxsLTEwe3JpZ2h0OjgzLjMzMzMzMzMzJX0uY29sLXhzLXB1bGwtOXtyaWdodDo3NSV9LmNvbC14cy1wdWxsLTh7cmlnaHQ6NjYuNjY2NjY2NjclfS5jb2wteHMtcHVsbC03e3JpZ2h0OjU4LjMzMzMzMzMzJX0uY29sLXhzLXB1bGwtNntyaWdodDo1MCV9LmNvbC14cy1wdWxsLTV7cmlnaHQ6NDEuNjY2NjY2NjclfS5jb2wteHMtcHVsbC00e3JpZ2h0OjMzLjMzMzMzMzMzJX0uY29sLXhzLXB1bGwtM3tyaWdodDoyNSV9LmNvbC14cy1wdWxsLTJ7cmlnaHQ6MTYuNjY2NjY2NjclfS5jb2wteHMtcHVsbC0xe3JpZ2h0OjguMzMzMzMzMzMlfS5jb2wteHMtcHVsbC0we3JpZ2h0OmF1dG99LmNvbC14cy1wdXNoLTEye2xlZnQ6MTAwJX0uY29sLXhzLXB1c2gtMTF7bGVmdDo5MS42NjY2NjY2NyV9LmNvbC14cy1wdXNoLTEwe2xlZnQ6ODMuMzMzMzMzMzMlfS5jb2wteHMtcHVzaC05e2xlZnQ6NzUlfS5jb2wteHMtcHVzaC04e2xlZnQ6NjYuNjY2NjY2NjclfS5jb2wteHMtcHVzaC03e2xlZnQ6NTguMzMzMzMzMzMlfS5jb2wteHMtcHVzaC02e2xlZnQ6NTAlfS5jb2wteHMtcHVzaC01e2xlZnQ6NDEuNjY2NjY2NjclfS5jb2wteHMtcHVzaC00e2xlZnQ6MzMuMzMzMzMzMzMlfS5jb2wteHMtcHVzaC0ze2xlZnQ6MjUlfS5jb2wteHMtcHVzaC0ye2xlZnQ6MTYuNjY2NjY2NjclfS5jb2wteHMtcHVzaC0xe2xlZnQ6OC4zMzMzMzMzMyV9LmNvbC14cy1wdXNoLTB7bGVmdDphdXRvfS5jb2wteHMtb2Zmc2V0LTEye21hcmdpbi1sZWZ0OjEwMCV9LmNvbC14cy1vZmZzZXQtMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjY2NjclfS5jb2wteHMtb2Zmc2V0LTEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzMzMzJX0uY29sLXhzLW9mZnNldC05e21hcmdpbi1sZWZ0Ojc1JX0uY29sLXhzLW9mZnNldC04e21hcmdpbi1sZWZ0OjY2LjY2NjY2NjY3JX0uY29sLXhzLW9mZnNldC03e21hcmdpbi1sZWZ0OjU4LjMzMzMzMzMzJX0uY29sLXhzLW9mZnNldC02e21hcmdpbi1sZWZ0OjUwJX0uY29sLXhzLW9mZnNldC01e21hcmdpbi1sZWZ0OjQxLjY2NjY2NjY3JX0uY29sLXhzLW9mZnNldC00e21hcmdpbi1sZWZ0OjMzLjMzMzMzMzMzJX0uY29sLXhzLW9mZnNldC0ze21hcmdpbi1sZWZ0OjI1JX0uY29sLXhzLW9mZnNldC0ye21hcmdpbi1sZWZ0OjE2LjY2NjY2NjY3JX0uY29sLXhzLW9mZnNldC0xe21hcmdpbi1sZWZ0OjguMzMzMzMzMzMlfS5jb2wteHMtb2Zmc2V0LTB7bWFyZ2luLWxlZnQ6MH1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LmNvbC1zbS0xLC5jb2wtc20tMTAsLmNvbC1zbS0xMSwuY29sLXNtLTEyLC5jb2wtc20tMiwuY29sLXNtLTMsLmNvbC1zbS00LC5jb2wtc20tNSwuY29sLXNtLTYsLmNvbC1zbS03LC5jb2wtc20tOCwuY29sLXNtLTl7ZmxvYXQ6bGVmdH0uY29sLXNtLTEye3dpZHRoOjEwMCV9LmNvbC1zbS0xMXt3aWR0aDo5MS42NjY2NjY2NyV9LmNvbC1zbS0xMHt3aWR0aDo4My4zMzMzMzMzMyV9LmNvbC1zbS05e3dpZHRoOjc1JX0uY29sLXNtLTh7d2lkdGg6NjYuNjY2NjY2NjclfS5jb2wtc20tN3t3aWR0aDo1OC4zMzMzMzMzMyV9LmNvbC1zbS02e3dpZHRoOjUwJX0uY29sLXNtLTV7d2lkdGg6NDEuNjY2NjY2NjclfS5jb2wtc20tNHt3aWR0aDozMy4zMzMzMzMzMyV9LmNvbC1zbS0ze3dpZHRoOjI1JX0uY29sLXNtLTJ7d2lkdGg6MTYuNjY2NjY2NjclfS5jb2wtc20tMXt3aWR0aDo4LjMzMzMzMzMzJX0uY29sLXNtLXB1bGwtMTJ7cmlnaHQ6MTAwJX0uY29sLXNtLXB1bGwtMTF7cmlnaHQ6OTEuNjY2NjY2NjclfS5jb2wtc20tcHVsbC0xMHtyaWdodDo4My4zMzMzMzMzMyV9LmNvbC1zbS1wdWxsLTl7cmlnaHQ6NzUlfS5jb2wtc20tcHVsbC04e3JpZ2h0OjY2LjY2NjY2NjY3JX0uY29sLXNtLXB1bGwtN3tyaWdodDo1OC4zMzMzMzMzMyV9LmNvbC1zbS1wdWxsLTZ7cmlnaHQ6NTAlfS5jb2wtc20tcHVsbC01e3JpZ2h0OjQxLjY2NjY2NjY3JX0uY29sLXNtLXB1bGwtNHtyaWdodDozMy4zMzMzMzMzMyV9LmNvbC1zbS1wdWxsLTN7cmlnaHQ6MjUlfS5jb2wtc20tcHVsbC0ye3JpZ2h0OjE2LjY2NjY2NjY3JX0uY29sLXNtLXB1bGwtMXtyaWdodDo4LjMzMzMzMzMzJX0uY29sLXNtLXB1bGwtMHtyaWdodDphdXRvfS5jb2wtc20tcHVzaC0xMntsZWZ0OjEwMCV9LmNvbC1zbS1wdXNoLTExe2xlZnQ6OTEuNjY2NjY2NjclfS5jb2wtc20tcHVzaC0xMHtsZWZ0OjgzLjMzMzMzMzMzJX0uY29sLXNtLXB1c2gtOXtsZWZ0Ojc1JX0uY29sLXNtLXB1c2gtOHtsZWZ0OjY2LjY2NjY2NjY3JX0uY29sLXNtLXB1c2gtN3tsZWZ0OjU4LjMzMzMzMzMzJX0uY29sLXNtLXB1c2gtNntsZWZ0OjUwJX0uY29sLXNtLXB1c2gtNXtsZWZ0OjQxLjY2NjY2NjY3JX0uY29sLXNtLXB1c2gtNHtsZWZ0OjMzLjMzMzMzMzMzJX0uY29sLXNtLXB1c2gtM3tsZWZ0OjI1JX0uY29sLXNtLXB1c2gtMntsZWZ0OjE2LjY2NjY2NjY3JX0uY29sLXNtLXB1c2gtMXtsZWZ0OjguMzMzMzMzMzMlfS5jb2wtc20tcHVzaC0we2xlZnQ6YXV0b30uY29sLXNtLW9mZnNldC0xMnttYXJnaW4tbGVmdDoxMDAlfS5jb2wtc20tb2Zmc2V0LTExe21hcmdpbi1sZWZ0OjkxLjY2NjY2NjY3JX0uY29sLXNtLW9mZnNldC0xMHttYXJnaW4tbGVmdDo4My4zMzMzMzMzMyV9LmNvbC1zbS1vZmZzZXQtOXttYXJnaW4tbGVmdDo3NSV9LmNvbC1zbS1vZmZzZXQtOHttYXJnaW4tbGVmdDo2Ni42NjY2NjY2NyV9LmNvbC1zbS1vZmZzZXQtN3ttYXJnaW4tbGVmdDo1OC4zMzMzMzMzMyV9LmNvbC1zbS1vZmZzZXQtNnttYXJnaW4tbGVmdDo1MCV9LmNvbC1zbS1vZmZzZXQtNXttYXJnaW4tbGVmdDo0MS42NjY2NjY2NyV9LmNvbC1zbS1vZmZzZXQtNHttYXJnaW4tbGVmdDozMy4zMzMzMzMzMyV9LmNvbC1zbS1vZmZzZXQtM3ttYXJnaW4tbGVmdDoyNSV9LmNvbC1zbS1vZmZzZXQtMnttYXJnaW4tbGVmdDoxNi42NjY2NjY2NyV9LmNvbC1zbS1vZmZzZXQtMXttYXJnaW4tbGVmdDo4LjMzMzMzMzMzJX0uY29sLXNtLW9mZnNldC0we21hcmdpbi1sZWZ0OjB9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsuY29sLW1kLTEsLmNvbC1tZC0xMCwuY29sLW1kLTExLC5jb2wtbWQtMTIsLmNvbC1tZC0yLC5jb2wtbWQtMywuY29sLW1kLTQsLmNvbC1tZC01LC5jb2wtbWQtNiwuY29sLW1kLTcsLmNvbC1tZC04LC5jb2wtbWQtOXtmbG9hdDpsZWZ0fS5jb2wtbWQtMTJ7d2lkdGg6MTAwJX0uY29sLW1kLTExe3dpZHRoOjkxLjY2NjY2NjY3JX0uY29sLW1kLTEwe3dpZHRoOjgzLjMzMzMzMzMzJX0uY29sLW1kLTl7d2lkdGg6NzUlfS5jb2wtbWQtOHt3aWR0aDo2Ni42NjY2NjY2NyV9LmNvbC1tZC03e3dpZHRoOjU4LjMzMzMzMzMzJX0uY29sLW1kLTZ7d2lkdGg6NTAlfS5jb2wtbWQtNXt3aWR0aDo0MS42NjY2NjY2NyV9LmNvbC1tZC00e3dpZHRoOjMzLjMzMzMzMzMzJX0uY29sLW1kLTN7d2lkdGg6MjUlfS5jb2wtbWQtMnt3aWR0aDoxNi42NjY2NjY2NyV9LmNvbC1tZC0xe3dpZHRoOjguMzMzMzMzMzMlfS5jb2wtbWQtcHVsbC0xMntyaWdodDoxMDAlfS5jb2wtbWQtcHVsbC0xMXtyaWdodDo5MS42NjY2NjY2NyV9LmNvbC1tZC1wdWxsLTEwe3JpZ2h0OjgzLjMzMzMzMzMzJX0uY29sLW1kLXB1bGwtOXtyaWdodDo3NSV9LmNvbC1tZC1wdWxsLTh7cmlnaHQ6NjYuNjY2NjY2NjclfS5jb2wtbWQtcHVsbC03e3JpZ2h0OjU4LjMzMzMzMzMzJX0uY29sLW1kLXB1bGwtNntyaWdodDo1MCV9LmNvbC1tZC1wdWxsLTV7cmlnaHQ6NDEuNjY2NjY2NjclfS5jb2wtbWQtcHVsbC00e3JpZ2h0OjMzLjMzMzMzMzMzJX0uY29sLW1kLXB1bGwtM3tyaWdodDoyNSV9LmNvbC1tZC1wdWxsLTJ7cmlnaHQ6MTYuNjY2NjY2NjclfS5jb2wtbWQtcHVsbC0xe3JpZ2h0OjguMzMzMzMzMzMlfS5jb2wtbWQtcHVsbC0we3JpZ2h0OmF1dG99LmNvbC1tZC1wdXNoLTEye2xlZnQ6MTAwJX0uY29sLW1kLXB1c2gtMTF7bGVmdDo5MS42NjY2NjY2NyV9LmNvbC1tZC1wdXNoLTEwe2xlZnQ6ODMuMzMzMzMzMzMlfS5jb2wtbWQtcHVzaC05e2xlZnQ6NzUlfS5jb2wtbWQtcHVzaC04e2xlZnQ6NjYuNjY2NjY2NjclfS5jb2wtbWQtcHVzaC03e2xlZnQ6NTguMzMzMzMzMzMlfS5jb2wtbWQtcHVzaC02e2xlZnQ6NTAlfS5jb2wtbWQtcHVzaC01e2xlZnQ6NDEuNjY2NjY2NjclfS5jb2wtbWQtcHVzaC00e2xlZnQ6MzMuMzMzMzMzMzMlfS5jb2wtbWQtcHVzaC0ze2xlZnQ6MjUlfS5jb2wtbWQtcHVzaC0ye2xlZnQ6MTYuNjY2NjY2NjclfS5jb2wtbWQtcHVzaC0xe2xlZnQ6OC4zMzMzMzMzMyV9LmNvbC1tZC1wdXNoLTB7bGVmdDphdXRvfS5jb2wtbWQtb2Zmc2V0LTEye21hcmdpbi1sZWZ0OjEwMCV9LmNvbC1tZC1vZmZzZXQtMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjY2NjclfS5jb2wtbWQtb2Zmc2V0LTEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzMzMzJX0uY29sLW1kLW9mZnNldC05e21hcmdpbi1sZWZ0Ojc1JX0uY29sLW1kLW9mZnNldC04e21hcmdpbi1sZWZ0OjY2LjY2NjY2NjY3JX0uY29sLW1kLW9mZnNldC03e21hcmdpbi1sZWZ0OjU4LjMzMzMzMzMzJX0uY29sLW1kLW9mZnNldC02e21hcmdpbi1sZWZ0OjUwJX0uY29sLW1kLW9mZnNldC01e21hcmdpbi1sZWZ0OjQxLjY2NjY2NjY3JX0uY29sLW1kLW9mZnNldC00e21hcmdpbi1sZWZ0OjMzLjMzMzMzMzMzJX0uY29sLW1kLW9mZnNldC0ze21hcmdpbi1sZWZ0OjI1JX0uY29sLW1kLW9mZnNldC0ye21hcmdpbi1sZWZ0OjE2LjY2NjY2NjY3JX0uY29sLW1kLW9mZnNldC0xe21hcmdpbi1sZWZ0OjguMzMzMzMzMzMlfS5jb2wtbWQtb2Zmc2V0LTB7bWFyZ2luLWxlZnQ6MH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsuY29sLWxnLTEsLmNvbC1sZy0xMCwuY29sLWxnLTExLC5jb2wtbGctMTIsLmNvbC1sZy0yLC5jb2wtbGctMywuY29sLWxnLTQsLmNvbC1sZy01LC5jb2wtbGctNiwuY29sLWxnLTcsLmNvbC1sZy04LC5jb2wtbGctOXtmbG9hdDpsZWZ0fS5jb2wtbGctMTJ7d2lkdGg6MTAwJX0uY29sLWxnLTExe3dpZHRoOjkxLjY2NjY2NjY3JX0uY29sLWxnLTEwe3dpZHRoOjgzLjMzMzMzMzMzJX0uY29sLWxnLTl7d2lkdGg6NzUlfS5jb2wtbGctOHt3aWR0aDo2Ni42NjY2NjY2NyV9LmNvbC1sZy03e3dpZHRoOjU4LjMzMzMzMzMzJX0uY29sLWxnLTZ7d2lkdGg6NTAlfS5jb2wtbGctNXt3aWR0aDo0MS42NjY2NjY2NyV9LmNvbC1sZy00e3dpZHRoOjMzLjMzMzMzMzMzJX0uY29sLWxnLTN7d2lkdGg6MjUlfS5jb2wtbGctMnt3aWR0aDoxNi42NjY2NjY2NyV9LmNvbC1sZy0xe3dpZHRoOjguMzMzMzMzMzMlfS5jb2wtbGctcHVsbC0xMntyaWdodDoxMDAlfS5jb2wtbGctcHVsbC0xMXtyaWdodDo5MS42NjY2NjY2NyV9LmNvbC1sZy1wdWxsLTEwe3JpZ2h0OjgzLjMzMzMzMzMzJX0uY29sLWxnLXB1bGwtOXtyaWdodDo3NSV9LmNvbC1sZy1wdWxsLTh7cmlnaHQ6NjYuNjY2NjY2NjclfS5jb2wtbGctcHVsbC03e3JpZ2h0OjU4LjMzMzMzMzMzJX0uY29sLWxnLXB1bGwtNntyaWdodDo1MCV9LmNvbC1sZy1wdWxsLTV7cmlnaHQ6NDEuNjY2NjY2NjclfS5jb2wtbGctcHVsbC00e3JpZ2h0OjMzLjMzMzMzMzMzJX0uY29sLWxnLXB1bGwtM3tyaWdodDoyNSV9LmNvbC1sZy1wdWxsLTJ7cmlnaHQ6MTYuNjY2NjY2NjclfS5jb2wtbGctcHVsbC0xe3JpZ2h0OjguMzMzMzMzMzMlfS5jb2wtbGctcHVsbC0we3JpZ2h0OmF1dG99LmNvbC1sZy1wdXNoLTEye2xlZnQ6MTAwJX0uY29sLWxnLXB1c2gtMTF7bGVmdDo5MS42NjY2NjY2NyV9LmNvbC1sZy1wdXNoLTEwe2xlZnQ6ODMuMzMzMzMzMzMlfS5jb2wtbGctcHVzaC05e2xlZnQ6NzUlfS5jb2wtbGctcHVzaC04e2xlZnQ6NjYuNjY2NjY2NjclfS5jb2wtbGctcHVzaC03e2xlZnQ6NTguMzMzMzMzMzMlfS5jb2wtbGctcHVzaC02e2xlZnQ6NTAlfS5jb2wtbGctcHVzaC01e2xlZnQ6NDEuNjY2NjY2NjclfS5jb2wtbGctcHVzaC00e2xlZnQ6MzMuMzMzMzMzMzMlfS5jb2wtbGctcHVzaC0ze2xlZnQ6MjUlfS5jb2wtbGctcHVzaC0ye2xlZnQ6MTYuNjY2NjY2NjclfS5jb2wtbGctcHVzaC0xe2xlZnQ6OC4zMzMzMzMzMyV9LmNvbC1sZy1wdXNoLTB7bGVmdDphdXRvfS5jb2wtbGctb2Zmc2V0LTEye21hcmdpbi1sZWZ0OjEwMCV9LmNvbC1sZy1vZmZzZXQtMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjY2NjclfS5jb2wtbGctb2Zmc2V0LTEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzMzMzJX0uY29sLWxnLW9mZnNldC05e21hcmdpbi1sZWZ0Ojc1JX0uY29sLWxnLW9mZnNldC04e21hcmdpbi1sZWZ0OjY2LjY2NjY2NjY3JX0uY29sLWxnLW9mZnNldC03e21hcmdpbi1sZWZ0OjU4LjMzMzMzMzMzJX0uY29sLWxnLW9mZnNldC02e21hcmdpbi1sZWZ0OjUwJX0uY29sLWxnLW9mZnNldC01e21hcmdpbi1sZWZ0OjQxLjY2NjY2NjY3JX0uY29sLWxnLW9mZnNldC00e21hcmdpbi1sZWZ0OjMzLjMzMzMzMzMzJX0uY29sLWxnLW9mZnNldC0ze21hcmdpbi1sZWZ0OjI1JX0uY29sLWxnLW9mZnNldC0ye21hcmdpbi1sZWZ0OjE2LjY2NjY2NjY3JX0uY29sLWxnLW9mZnNldC0xe21hcmdpbi1sZWZ0OjguMzMzMzMzMzMlfS5jb2wtbGctb2Zmc2V0LTB7bWFyZ2luLWxlZnQ6MH19dGFibGV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH1jYXB0aW9ue3BhZGRpbmctdG9wOjhweDtwYWRkaW5nLWJvdHRvbTo4cHg7Y29sb3I6Izc3Nzt0ZXh0LWFsaWduOmxlZnR9dGh7dGV4dC1hbGlnbjpsZWZ0fS50YWJsZXt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21hcmdpbi1ib3R0b206MjBweH0udGFibGU+dGJvZHk+dHI+dGQsLnRhYmxlPnRib2R5PnRyPnRoLC50YWJsZT50Zm9vdD50cj50ZCwudGFibGU+dGZvb3Q+dHI+dGgsLnRhYmxlPnRoZWFkPnRyPnRkLC50YWJsZT50aGVhZD50cj50aHtwYWRkaW5nOjhweDtsaW5lLWhlaWdodDoxLjQyODU3MTQzO3ZlcnRpY2FsLWFsaWduOnRvcDtib3JkZXItdG9wOjFweCBzb2xpZCAjZGRkfS50YWJsZT50aGVhZD50cj50aHt2ZXJ0aWNhbC1hbGlnbjpib3R0b207Ym9yZGVyLWJvdHRvbToycHggc29saWQgI2RkZH0udGFibGU+Y2FwdGlvbit0aGVhZD50cjpmaXJzdC1jaGlsZD50ZCwudGFibGU+Y2FwdGlvbit0aGVhZD50cjpmaXJzdC1jaGlsZD50aCwudGFibGU+Y29sZ3JvdXArdGhlYWQ+dHI6Zmlyc3QtY2hpbGQ+dGQsLnRhYmxlPmNvbGdyb3VwK3RoZWFkPnRyOmZpcnN0LWNoaWxkPnRoLC50YWJsZT50aGVhZDpmaXJzdC1jaGlsZD50cjpmaXJzdC1jaGlsZD50ZCwudGFibGU+dGhlYWQ6Zmlyc3QtY2hpbGQ+dHI6Zmlyc3QtY2hpbGQ+dGh7Ym9yZGVyLXRvcDowfS50YWJsZT50Ym9keSt0Ym9keXtib3JkZXItdG9wOjJweCBzb2xpZCAjZGRkfS50YWJsZSAudGFibGV7YmFja2dyb3VuZC1jb2xvcjojZmZmfS50YWJsZS1jb25kZW5zZWQ+dGJvZHk+dHI+dGQsLnRhYmxlLWNvbmRlbnNlZD50Ym9keT50cj50aCwudGFibGUtY29uZGVuc2VkPnRmb290PnRyPnRkLC50YWJsZS1jb25kZW5zZWQ+dGZvb3Q+dHI+dGgsLnRhYmxlLWNvbmRlbnNlZD50aGVhZD50cj50ZCwudGFibGUtY29uZGVuc2VkPnRoZWFkPnRyPnRoe3BhZGRpbmc6NXB4fS50YWJsZS1ib3JkZXJlZHtib3JkZXI6MXB4IHNvbGlkICNkZGR9LnRhYmxlLWJvcmRlcmVkPnRib2R5PnRyPnRkLC50YWJsZS1ib3JkZXJlZD50Ym9keT50cj50aCwudGFibGUtYm9yZGVyZWQ+dGZvb3Q+dHI+dGQsLnRhYmxlLWJvcmRlcmVkPnRmb290PnRyPnRoLC50YWJsZS1ib3JkZXJlZD50aGVhZD50cj50ZCwudGFibGUtYm9yZGVyZWQ+dGhlYWQ+dHI+dGh7Ym9yZGVyOjFweCBzb2xpZCAjZGRkfS50YWJsZS1ib3JkZXJlZD50aGVhZD50cj50ZCwudGFibGUtYm9yZGVyZWQ+dGhlYWQ+dHI+dGh7Ym9yZGVyLWJvdHRvbS13aWR0aDoycHh9LnRhYmxlLXN0cmlwZWQ+dGJvZHk+dHI6bnRoLW9mLXR5cGUob2RkKXtiYWNrZ3JvdW5kLWNvbG9yOiNmOWY5Zjl9LnRhYmxlLWhvdmVyPnRib2R5PnRyOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNX10YWJsZSBjb2xbY2xhc3MqPWNvbC1de3Bvc2l0aW9uOnN0YXRpYztkaXNwbGF5OnRhYmxlLWNvbHVtbjtmbG9hdDpub25lfXRhYmxlIHRkW2NsYXNzKj1jb2wtXSx0YWJsZSB0aFtjbGFzcyo9Y29sLV17cG9zaXRpb246c3RhdGljO2Rpc3BsYXk6dGFibGUtY2VsbDtmbG9hdDpub25lfS50YWJsZT50Ym9keT50ci5hY3RpdmU+dGQsLnRhYmxlPnRib2R5PnRyLmFjdGl2ZT50aCwudGFibGU+dGJvZHk+dHI+dGQuYWN0aXZlLC50YWJsZT50Ym9keT50cj50aC5hY3RpdmUsLnRhYmxlPnRmb290PnRyLmFjdGl2ZT50ZCwudGFibGU+dGZvb3Q+dHIuYWN0aXZlPnRoLC50YWJsZT50Zm9vdD50cj50ZC5hY3RpdmUsLnRhYmxlPnRmb290PnRyPnRoLmFjdGl2ZSwudGFibGU+dGhlYWQ+dHIuYWN0aXZlPnRkLC50YWJsZT50aGVhZD50ci5hY3RpdmU+dGgsLnRhYmxlPnRoZWFkPnRyPnRkLmFjdGl2ZSwudGFibGU+dGhlYWQ+dHI+dGguYWN0aXZle2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNX0udGFibGUtaG92ZXI+dGJvZHk+dHIuYWN0aXZlOmhvdmVyPnRkLC50YWJsZS1ob3Zlcj50Ym9keT50ci5hY3RpdmU6aG92ZXI+dGgsLnRhYmxlLWhvdmVyPnRib2R5PnRyOmhvdmVyPi5hY3RpdmUsLnRhYmxlLWhvdmVyPnRib2R5PnRyPnRkLmFjdGl2ZTpob3ZlciwudGFibGUtaG92ZXI+dGJvZHk+dHI+dGguYWN0aXZlOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2U4ZThlOH0udGFibGU+dGJvZHk+dHIuc3VjY2Vzcz50ZCwudGFibGU+dGJvZHk+dHIuc3VjY2Vzcz50aCwudGFibGU+dGJvZHk+dHI+dGQuc3VjY2VzcywudGFibGU+dGJvZHk+dHI+dGguc3VjY2VzcywudGFibGU+dGZvb3Q+dHIuc3VjY2Vzcz50ZCwudGFibGU+dGZvb3Q+dHIuc3VjY2Vzcz50aCwudGFibGU+dGZvb3Q+dHI+dGQuc3VjY2VzcywudGFibGU+dGZvb3Q+dHI+dGguc3VjY2VzcywudGFibGU+dGhlYWQ+dHIuc3VjY2Vzcz50ZCwudGFibGU+dGhlYWQ+dHIuc3VjY2Vzcz50aCwudGFibGU+dGhlYWQ+dHI+dGQuc3VjY2VzcywudGFibGU+dGhlYWQ+dHI+dGguc3VjY2Vzc3tiYWNrZ3JvdW5kLWNvbG9yOiNkZmYwZDh9LnRhYmxlLWhvdmVyPnRib2R5PnRyLnN1Y2Nlc3M6aG92ZXI+dGQsLnRhYmxlLWhvdmVyPnRib2R5PnRyLnN1Y2Nlc3M6aG92ZXI+dGgsLnRhYmxlLWhvdmVyPnRib2R5PnRyOmhvdmVyPi5zdWNjZXNzLC50YWJsZS1ob3Zlcj50Ym9keT50cj50ZC5zdWNjZXNzOmhvdmVyLC50YWJsZS1ob3Zlcj50Ym9keT50cj50aC5zdWNjZXNzOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2QwZTljNn0udGFibGU+dGJvZHk+dHIuaW5mbz50ZCwudGFibGU+dGJvZHk+dHIuaW5mbz50aCwudGFibGU+dGJvZHk+dHI+dGQuaW5mbywudGFibGU+dGJvZHk+dHI+dGguaW5mbywudGFibGU+dGZvb3Q+dHIuaW5mbz50ZCwudGFibGU+dGZvb3Q+dHIuaW5mbz50aCwudGFibGU+dGZvb3Q+dHI+dGQuaW5mbywudGFibGU+dGZvb3Q+dHI+dGguaW5mbywudGFibGU+dGhlYWQ+dHIuaW5mbz50ZCwudGFibGU+dGhlYWQ+dHIuaW5mbz50aCwudGFibGU+dGhlYWQ+dHI+dGQuaW5mbywudGFibGU+dGhlYWQ+dHI+dGguaW5mb3tiYWNrZ3JvdW5kLWNvbG9yOiNkOWVkZjd9LnRhYmxlLWhvdmVyPnRib2R5PnRyLmluZm86aG92ZXI+dGQsLnRhYmxlLWhvdmVyPnRib2R5PnRyLmluZm86aG92ZXI+dGgsLnRhYmxlLWhvdmVyPnRib2R5PnRyOmhvdmVyPi5pbmZvLC50YWJsZS1ob3Zlcj50Ym9keT50cj50ZC5pbmZvOmhvdmVyLC50YWJsZS1ob3Zlcj50Ym9keT50cj50aC5pbmZvOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2M0ZTNmM30udGFibGU+dGJvZHk+dHIud2FybmluZz50ZCwudGFibGU+dGJvZHk+dHIud2FybmluZz50aCwudGFibGU+dGJvZHk+dHI+dGQud2FybmluZywudGFibGU+dGJvZHk+dHI+dGgud2FybmluZywudGFibGU+dGZvb3Q+dHIud2FybmluZz50ZCwudGFibGU+dGZvb3Q+dHIud2FybmluZz50aCwudGFibGU+dGZvb3Q+dHI+dGQud2FybmluZywudGFibGU+dGZvb3Q+dHI+dGgud2FybmluZywudGFibGU+dGhlYWQ+dHIud2FybmluZz50ZCwudGFibGU+dGhlYWQ+dHIud2FybmluZz50aCwudGFibGU+dGhlYWQ+dHI+dGQud2FybmluZywudGFibGU+dGhlYWQ+dHI+dGgud2FybmluZ3tiYWNrZ3JvdW5kLWNvbG9yOiNmY2Y4ZTN9LnRhYmxlLWhvdmVyPnRib2R5PnRyLndhcm5pbmc6aG92ZXI+dGQsLnRhYmxlLWhvdmVyPnRib2R5PnRyLndhcm5pbmc6aG92ZXI+dGgsLnRhYmxlLWhvdmVyPnRib2R5PnRyOmhvdmVyPi53YXJuaW5nLC50YWJsZS1ob3Zlcj50Ym9keT50cj50ZC53YXJuaW5nOmhvdmVyLC50YWJsZS1ob3Zlcj50Ym9keT50cj50aC53YXJuaW5nOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2ZhZjJjY30udGFibGU+dGJvZHk+dHIuZGFuZ2VyPnRkLC50YWJsZT50Ym9keT50ci5kYW5nZXI+dGgsLnRhYmxlPnRib2R5PnRyPnRkLmRhbmdlciwudGFibGU+dGJvZHk+dHI+dGguZGFuZ2VyLC50YWJsZT50Zm9vdD50ci5kYW5nZXI+dGQsLnRhYmxlPnRmb290PnRyLmRhbmdlcj50aCwudGFibGU+dGZvb3Q+dHI+dGQuZGFuZ2VyLC50YWJsZT50Zm9vdD50cj50aC5kYW5nZXIsLnRhYmxlPnRoZWFkPnRyLmRhbmdlcj50ZCwudGFibGU+dGhlYWQ+dHIuZGFuZ2VyPnRoLC50YWJsZT50aGVhZD50cj50ZC5kYW5nZXIsLnRhYmxlPnRoZWFkPnRyPnRoLmRhbmdlcntiYWNrZ3JvdW5kLWNvbG9yOiNmMmRlZGV9LnRhYmxlLWhvdmVyPnRib2R5PnRyLmRhbmdlcjpob3Zlcj50ZCwudGFibGUtaG92ZXI+dGJvZHk+dHIuZGFuZ2VyOmhvdmVyPnRoLC50YWJsZS1ob3Zlcj50Ym9keT50cjpob3Zlcj4uZGFuZ2VyLC50YWJsZS1ob3Zlcj50Ym9keT50cj50ZC5kYW5nZXI6aG92ZXIsLnRhYmxlLWhvdmVyPnRib2R5PnRyPnRoLmRhbmdlcjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNlYmNjY2N9LnRhYmxlLXJlc3BvbnNpdmV7bWluLWhlaWdodDouMDElO292ZXJmbG93LXg6YXV0b31AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjc2N3B4KXsudGFibGUtcmVzcG9uc2l2ZXt3aWR0aDoxMDAlO21hcmdpbi1ib3R0b206MTVweDtvdmVyZmxvdy15OmhpZGRlbjstbXMtb3ZlcmZsb3ctc3R5bGU6LW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO2JvcmRlcjoxcHggc29saWQgI2RkZH0udGFibGUtcmVzcG9uc2l2ZT4udGFibGV7bWFyZ2luLWJvdHRvbTowfS50YWJsZS1yZXNwb25zaXZlPi50YWJsZT50Ym9keT50cj50ZCwudGFibGUtcmVzcG9uc2l2ZT4udGFibGU+dGJvZHk+dHI+dGgsLnRhYmxlLXJlc3BvbnNpdmU+LnRhYmxlPnRmb290PnRyPnRkLC50YWJsZS1yZXNwb25zaXZlPi50YWJsZT50Zm9vdD50cj50aCwudGFibGUtcmVzcG9uc2l2ZT4udGFibGU+dGhlYWQ+dHI+dGQsLnRhYmxlLXJlc3BvbnNpdmU+LnRhYmxlPnRoZWFkPnRyPnRoe3doaXRlLXNwYWNlOm5vd3JhcH0udGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWR7Ym9yZGVyOjB9LnRhYmxlLXJlc3BvbnNpdmU+LnRhYmxlLWJvcmRlcmVkPnRib2R5PnRyPnRkOmZpcnN0LWNoaWxkLC50YWJsZS1yZXNwb25zaXZlPi50YWJsZS1ib3JkZXJlZD50Ym9keT50cj50aDpmaXJzdC1jaGlsZCwudGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGZvb3Q+dHI+dGQ6Zmlyc3QtY2hpbGQsLnRhYmxlLXJlc3BvbnNpdmU+LnRhYmxlLWJvcmRlcmVkPnRmb290PnRyPnRoOmZpcnN0LWNoaWxkLC50YWJsZS1yZXNwb25zaXZlPi50YWJsZS1ib3JkZXJlZD50aGVhZD50cj50ZDpmaXJzdC1jaGlsZCwudGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGhlYWQ+dHI+dGg6Zmlyc3QtY2hpbGR7Ym9yZGVyLWxlZnQ6MH0udGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGJvZHk+dHI+dGQ6bGFzdC1jaGlsZCwudGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGJvZHk+dHI+dGg6bGFzdC1jaGlsZCwudGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGZvb3Q+dHI+dGQ6bGFzdC1jaGlsZCwudGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGZvb3Q+dHI+dGg6bGFzdC1jaGlsZCwudGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGhlYWQ+dHI+dGQ6bGFzdC1jaGlsZCwudGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGhlYWQ+dHI+dGg6bGFzdC1jaGlsZHtib3JkZXItcmlnaHQ6MH0udGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGJvZHk+dHI6bGFzdC1jaGlsZD50ZCwudGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGJvZHk+dHI6bGFzdC1jaGlsZD50aCwudGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGZvb3Q+dHI6bGFzdC1jaGlsZD50ZCwudGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGZvb3Q+dHI6bGFzdC1jaGlsZD50aHtib3JkZXItYm90dG9tOjB9fWZpZWxkc2V0e21pbi13aWR0aDowO3BhZGRpbmc6MDttYXJnaW46MDtib3JkZXI6MH1sZWdlbmR7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO3BhZGRpbmc6MDttYXJnaW4tYm90dG9tOjIwcHg7Zm9udC1zaXplOjIxcHg7bGluZS1oZWlnaHQ6aW5oZXJpdDtjb2xvcjojMzMzO2JvcmRlcjowO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlNWU1ZTV9bGFiZWx7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWF4LXdpZHRoOjEwMCU7bWFyZ2luLWJvdHRvbTo1cHg7Zm9udC13ZWlnaHQ6NzAwfWlucHV0W3R5cGU9c2VhcmNoXXstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9aW5wdXRbdHlwZT1jaGVja2JveF0saW5wdXRbdHlwZT1yYWRpb117bWFyZ2luOjRweCAwIDA7bWFyZ2luLXRvcDoxcHhcOTtsaW5lLWhlaWdodDpub3JtYWx9aW5wdXRbdHlwZT1maWxlXXtkaXNwbGF5OmJsb2NrfWlucHV0W3R5cGU9cmFuZ2Vde2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJX1zZWxlY3RbbXVsdGlwbGVdLHNlbGVjdFtzaXplXXtoZWlnaHQ6YXV0b31pbnB1dFt0eXBlPWZpbGVdOmZvY3VzLGlucHV0W3R5cGU9Y2hlY2tib3hdOmZvY3VzLGlucHV0W3R5cGU9cmFkaW9dOmZvY3Vze291dGxpbmU6NXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO291dGxpbmUtb2Zmc2V0Oi0ycHh9b3V0cHV0e2Rpc3BsYXk6YmxvY2s7cGFkZGluZy10b3A6N3B4O2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjEuNDI4NTcxNDM7Y29sb3I6IzU1NX0uZm9ybS1jb250cm9se2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtoZWlnaHQ6MzRweDtwYWRkaW5nOjZweCAxMnB4O2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjEuNDI4NTcxNDM7Y29sb3I6IzU1NTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1pbWFnZTpub25lO2JvcmRlcjoxcHggc29saWQgI2NjYztib3JkZXItcmFkaXVzOjRweDstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KTstd2Via2l0LXRyYW5zaXRpb246Ym9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsLXdlYmtpdC1ib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXM7LW8tdHJhbnNpdGlvbjpib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cyxib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXM7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cyxib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXN9LmZvcm0tY29udHJvbDpmb2N1c3tib3JkZXItY29sb3I6IzY2YWZlOTtvdXRsaW5lOjA7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLDAgMCA4cHggcmdiYSgxMDIsMTc1LDIzMywuNik7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwwIDAgOHB4IHJnYmEoMTAyLDE3NSwyMzMsLjYpfS5mb3JtLWNvbnRyb2w6Oi1tb3otcGxhY2Vob2xkZXJ7Y29sb3I6Izk5OTtvcGFjaXR5OjF9LmZvcm0tY29udHJvbDotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6Izk5OX0uZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOiM5OTl9LmZvcm0tY29udHJvbDo6LW1zLWV4cGFuZHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjowfS5mb3JtLWNvbnRyb2xbZGlzYWJsZWRdLC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldLGZpZWxkc2V0W2Rpc2FibGVkXSAuZm9ybS1jb250cm9se2JhY2tncm91bmQtY29sb3I6I2VlZTtvcGFjaXR5OjF9LmZvcm0tY29udHJvbFtkaXNhYmxlZF0sZmllbGRzZXRbZGlzYWJsZWRdIC5mb3JtLWNvbnRyb2x7Y3Vyc29yOm5vdC1hbGxvd2VkfXRleHRhcmVhLmZvcm0tY29udHJvbHtoZWlnaHQ6YXV0b31pbnB1dFt0eXBlPXNlYXJjaF17LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9QG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzowKXtpbnB1dFt0eXBlPWRhdGVdLmZvcm0tY29udHJvbCxpbnB1dFt0eXBlPXRpbWVdLmZvcm0tY29udHJvbCxpbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXS5mb3JtLWNvbnRyb2wsaW5wdXRbdHlwZT1tb250aF0uZm9ybS1jb250cm9se2xpbmUtaGVpZ2h0OjM0cHh9LmlucHV0LWdyb3VwLXNtIGlucHV0W3R5cGU9ZGF0ZV0sLmlucHV0LWdyb3VwLXNtIGlucHV0W3R5cGU9dGltZV0sLmlucHV0LWdyb3VwLXNtIGlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLC5pbnB1dC1ncm91cC1zbSBpbnB1dFt0eXBlPW1vbnRoXSxpbnB1dFt0eXBlPWRhdGVdLmlucHV0LXNtLGlucHV0W3R5cGU9dGltZV0uaW5wdXQtc20saW5wdXRbdHlwZT1kYXRldGltZS1sb2NhbF0uaW5wdXQtc20saW5wdXRbdHlwZT1tb250aF0uaW5wdXQtc217bGluZS1oZWlnaHQ6MzBweH0uaW5wdXQtZ3JvdXAtbGcgaW5wdXRbdHlwZT1kYXRlXSwuaW5wdXQtZ3JvdXAtbGcgaW5wdXRbdHlwZT10aW1lXSwuaW5wdXQtZ3JvdXAtbGcgaW5wdXRbdHlwZT1kYXRldGltZS1sb2NhbF0sLmlucHV0LWdyb3VwLWxnIGlucHV0W3R5cGU9bW9udGhdLGlucHV0W3R5cGU9ZGF0ZV0uaW5wdXQtbGcsaW5wdXRbdHlwZT10aW1lXS5pbnB1dC1sZyxpbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXS5pbnB1dC1sZyxpbnB1dFt0eXBlPW1vbnRoXS5pbnB1dC1sZ3tsaW5lLWhlaWdodDo0NnB4fX0uZm9ybS1ncm91cHttYXJnaW4tYm90dG9tOjE1cHh9LmNoZWNrYm94LC5yYWRpb3twb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrO21hcmdpbi10b3A6MTBweDttYXJnaW4tYm90dG9tOjEwcHh9LmNoZWNrYm94IGxhYmVsLC5yYWRpbyBsYWJlbHttaW4taGVpZ2h0OjIwcHg7cGFkZGluZy1sZWZ0OjIwcHg7bWFyZ2luLWJvdHRvbTowO2ZvbnQtd2VpZ2h0OjQwMDtjdXJzb3I6cG9pbnRlcn0uY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF0sLmNoZWNrYm94LWlubGluZSBpbnB1dFt0eXBlPWNoZWNrYm94XSwucmFkaW8gaW5wdXRbdHlwZT1yYWRpb10sLnJhZGlvLWlubGluZSBpbnB1dFt0eXBlPXJhZGlvXXtwb3NpdGlvbjphYnNvbHV0ZTttYXJnaW4tdG9wOjRweFw5O21hcmdpbi1sZWZ0Oi0yMHB4fS5jaGVja2JveCsuY2hlY2tib3gsLnJhZGlvKy5yYWRpb3ttYXJnaW4tdG9wOi01cHh9LmNoZWNrYm94LWlubGluZSwucmFkaW8taW5saW5le3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmctbGVmdDoyMHB4O21hcmdpbi1ib3R0b206MDtmb250LXdlaWdodDo0MDA7dmVydGljYWwtYWxpZ246bWlkZGxlO2N1cnNvcjpwb2ludGVyfS5jaGVja2JveC1pbmxpbmUrLmNoZWNrYm94LWlubGluZSwucmFkaW8taW5saW5lKy5yYWRpby1pbmxpbmV7bWFyZ2luLXRvcDowO21hcmdpbi1sZWZ0OjEwcHh9ZmllbGRzZXRbZGlzYWJsZWRdIGlucHV0W3R5cGU9Y2hlY2tib3hdLGZpZWxkc2V0W2Rpc2FibGVkXSBpbnB1dFt0eXBlPXJhZGlvXSxpbnB1dFt0eXBlPWNoZWNrYm94XS5kaXNhYmxlZCxpbnB1dFt0eXBlPWNoZWNrYm94XVtkaXNhYmxlZF0saW5wdXRbdHlwZT1yYWRpb10uZGlzYWJsZWQsaW5wdXRbdHlwZT1yYWRpb11bZGlzYWJsZWRde2N1cnNvcjpub3QtYWxsb3dlZH0uY2hlY2tib3gtaW5saW5lLmRpc2FibGVkLC5yYWRpby1pbmxpbmUuZGlzYWJsZWQsZmllbGRzZXRbZGlzYWJsZWRdIC5jaGVja2JveC1pbmxpbmUsZmllbGRzZXRbZGlzYWJsZWRdIC5yYWRpby1pbmxpbmV7Y3Vyc29yOm5vdC1hbGxvd2VkfS5jaGVja2JveC5kaXNhYmxlZCBsYWJlbCwucmFkaW8uZGlzYWJsZWQgbGFiZWwsZmllbGRzZXRbZGlzYWJsZWRdIC5jaGVja2JveCBsYWJlbCxmaWVsZHNldFtkaXNhYmxlZF0gLnJhZGlvIGxhYmVse2N1cnNvcjpub3QtYWxsb3dlZH0uZm9ybS1jb250cm9sLXN0YXRpY3ttaW4taGVpZ2h0OjM0cHg7cGFkZGluZy10b3A6N3B4O3BhZGRpbmctYm90dG9tOjdweDttYXJnaW4tYm90dG9tOjB9LmZvcm0tY29udHJvbC1zdGF0aWMuaW5wdXQtbGcsLmZvcm0tY29udHJvbC1zdGF0aWMuaW5wdXQtc217cGFkZGluZy1yaWdodDowO3BhZGRpbmctbGVmdDowfS5pbnB1dC1zbXtoZWlnaHQ6MzBweDtwYWRkaW5nOjVweCAxMHB4O2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjEuNTtib3JkZXItcmFkaXVzOjNweH1zZWxlY3QuaW5wdXQtc217aGVpZ2h0OjMwcHg7bGluZS1oZWlnaHQ6MzBweH1zZWxlY3RbbXVsdGlwbGVdLmlucHV0LXNtLHRleHRhcmVhLmlucHV0LXNte2hlaWdodDphdXRvfS5mb3JtLWdyb3VwLXNtIC5mb3JtLWNvbnRyb2x7aGVpZ2h0OjMwcHg7cGFkZGluZzo1cHggMTBweDtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxLjU7Ym9yZGVyLXJhZGl1czozcHh9LmZvcm0tZ3JvdXAtc20gc2VsZWN0LmZvcm0tY29udHJvbHtoZWlnaHQ6MzBweDtsaW5lLWhlaWdodDozMHB4fS5mb3JtLWdyb3VwLXNtIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sLC5mb3JtLWdyb3VwLXNtIHRleHRhcmVhLmZvcm0tY29udHJvbHtoZWlnaHQ6YXV0b30uZm9ybS1ncm91cC1zbSAuZm9ybS1jb250cm9sLXN0YXRpY3toZWlnaHQ6MzBweDttaW4taGVpZ2h0OjMycHg7cGFkZGluZzo2cHggMTBweDtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxLjV9LmlucHV0LWxne2hlaWdodDo0NnB4O3BhZGRpbmc6MTBweCAxNnB4O2ZvbnQtc2l6ZToxOHB4O2xpbmUtaGVpZ2h0OjEuMzMzMzMzMztib3JkZXItcmFkaXVzOjZweH1zZWxlY3QuaW5wdXQtbGd7aGVpZ2h0OjQ2cHg7bGluZS1oZWlnaHQ6NDZweH1zZWxlY3RbbXVsdGlwbGVdLmlucHV0LWxnLHRleHRhcmVhLmlucHV0LWxne2hlaWdodDphdXRvfS5mb3JtLWdyb3VwLWxnIC5mb3JtLWNvbnRyb2x7aGVpZ2h0OjQ2cHg7cGFkZGluZzoxMHB4IDE2cHg7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MS4zMzMzMzMzO2JvcmRlci1yYWRpdXM6NnB4fS5mb3JtLWdyb3VwLWxnIHNlbGVjdC5mb3JtLWNvbnRyb2x7aGVpZ2h0OjQ2cHg7bGluZS1oZWlnaHQ6NDZweH0uZm9ybS1ncm91cC1sZyBzZWxlY3RbbXVsdGlwbGVdLmZvcm0tY29udHJvbCwuZm9ybS1ncm91cC1sZyB0ZXh0YXJlYS5mb3JtLWNvbnRyb2x7aGVpZ2h0OmF1dG99LmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbC1zdGF0aWN7aGVpZ2h0OjQ2cHg7bWluLWhlaWdodDozOHB4O3BhZGRpbmc6MTFweCAxNnB4O2ZvbnQtc2l6ZToxOHB4O2xpbmUtaGVpZ2h0OjEuMzMzMzMzM30uaGFzLWZlZWRiYWNre3Bvc2l0aW9uOnJlbGF0aXZlfS5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbHtwYWRkaW5nLXJpZ2h0OjQyLjVweH0uZm9ybS1jb250cm9sLWZlZWRiYWNre3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7ei1pbmRleDoyO2Rpc3BsYXk6YmxvY2s7d2lkdGg6MzRweDtoZWlnaHQ6MzRweDtsaW5lLWhlaWdodDozNHB4O3RleHQtYWxpZ246Y2VudGVyO3BvaW50ZXItZXZlbnRzOm5vbmV9LmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCsuZm9ybS1jb250cm9sLWZlZWRiYWNrLC5pbnB1dC1ncm91cC1sZysuZm9ybS1jb250cm9sLWZlZWRiYWNrLC5pbnB1dC1sZysuZm9ybS1jb250cm9sLWZlZWRiYWNre3dpZHRoOjQ2cHg7aGVpZ2h0OjQ2cHg7bGluZS1oZWlnaHQ6NDZweH0uZm9ybS1ncm91cC1zbSAuZm9ybS1jb250cm9sKy5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssLmlucHV0LWdyb3VwLXNtKy5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssLmlucHV0LXNtKy5mb3JtLWNvbnRyb2wtZmVlZGJhY2t7d2lkdGg6MzBweDtoZWlnaHQ6MzBweDtsaW5lLWhlaWdodDozMHB4fS5oYXMtc3VjY2VzcyAuY2hlY2tib3gsLmhhcy1zdWNjZXNzIC5jaGVja2JveC1pbmxpbmUsLmhhcy1zdWNjZXNzIC5jb250cm9sLWxhYmVsLC5oYXMtc3VjY2VzcyAuaGVscC1ibG9jaywuaGFzLXN1Y2Nlc3MgLnJhZGlvLC5oYXMtc3VjY2VzcyAucmFkaW8taW5saW5lLC5oYXMtc3VjY2Vzcy5jaGVja2JveCBsYWJlbCwuaGFzLXN1Y2Nlc3MuY2hlY2tib3gtaW5saW5lIGxhYmVsLC5oYXMtc3VjY2Vzcy5yYWRpbyBsYWJlbCwuaGFzLXN1Y2Nlc3MucmFkaW8taW5saW5lIGxhYmVse2NvbG9yOiMzYzc2M2R9Lmhhcy1zdWNjZXNzIC5mb3JtLWNvbnRyb2x7Ym9yZGVyLWNvbG9yOiMzYzc2M2Q7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSl9Lmhhcy1zdWNjZXNzIC5mb3JtLWNvbnRyb2w6Zm9jdXN7Ym9yZGVyLWNvbG9yOiMyYjU0MmM7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLDAgMCA2cHggIzY3YjE2ODtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLDAgMCA2cHggIzY3YjE2OH0uaGFzLXN1Y2Nlc3MgLmlucHV0LWdyb3VwLWFkZG9ue2NvbG9yOiMzYzc2M2Q7YmFja2dyb3VuZC1jb2xvcjojZGZmMGQ4O2JvcmRlci1jb2xvcjojM2M3NjNkfS5oYXMtc3VjY2VzcyAuZm9ybS1jb250cm9sLWZlZWRiYWNre2NvbG9yOiMzYzc2M2R9Lmhhcy13YXJuaW5nIC5jaGVja2JveCwuaGFzLXdhcm5pbmcgLmNoZWNrYm94LWlubGluZSwuaGFzLXdhcm5pbmcgLmNvbnRyb2wtbGFiZWwsLmhhcy13YXJuaW5nIC5oZWxwLWJsb2NrLC5oYXMtd2FybmluZyAucmFkaW8sLmhhcy13YXJuaW5nIC5yYWRpby1pbmxpbmUsLmhhcy13YXJuaW5nLmNoZWNrYm94IGxhYmVsLC5oYXMtd2FybmluZy5jaGVja2JveC1pbmxpbmUgbGFiZWwsLmhhcy13YXJuaW5nLnJhZGlvIGxhYmVsLC5oYXMtd2FybmluZy5yYWRpby1pbmxpbmUgbGFiZWx7Y29sb3I6IzhhNmQzYn0uaGFzLXdhcm5pbmcgLmZvcm0tY29udHJvbHtib3JkZXItY29sb3I6IzhhNmQzYjstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KX0uaGFzLXdhcm5pbmcgLmZvcm0tY29udHJvbDpmb2N1c3tib3JkZXItY29sb3I6IzY2NTEyYzstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksMCAwIDZweCAjYzBhMTZiO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksMCAwIDZweCAjYzBhMTZifS5oYXMtd2FybmluZyAuaW5wdXQtZ3JvdXAtYWRkb257Y29sb3I6IzhhNmQzYjtiYWNrZ3JvdW5kLWNvbG9yOiNmY2Y4ZTM7Ym9yZGVyLWNvbG9yOiM4YTZkM2J9Lmhhcy13YXJuaW5nIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2t7Y29sb3I6IzhhNmQzYn0uaGFzLWVycm9yIC5jaGVja2JveCwuaGFzLWVycm9yIC5jaGVja2JveC1pbmxpbmUsLmhhcy1lcnJvciAuY29udHJvbC1sYWJlbCwuaGFzLWVycm9yIC5oZWxwLWJsb2NrLC5oYXMtZXJyb3IgLnJhZGlvLC5oYXMtZXJyb3IgLnJhZGlvLWlubGluZSwuaGFzLWVycm9yLmNoZWNrYm94IGxhYmVsLC5oYXMtZXJyb3IuY2hlY2tib3gtaW5saW5lIGxhYmVsLC5oYXMtZXJyb3IucmFkaW8gbGFiZWwsLmhhcy1lcnJvci5yYWRpby1pbmxpbmUgbGFiZWx7Y29sb3I6I2E5NDQ0Mn0uaGFzLWVycm9yIC5mb3JtLWNvbnRyb2x7Ym9yZGVyLWNvbG9yOiNhOTQ0NDI7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSl9Lmhhcy1lcnJvciAuZm9ybS1jb250cm9sOmZvY3Vze2JvcmRlci1jb2xvcjojODQzNTM0Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwwIDAgNnB4ICNjZTg0ODM7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwwIDAgNnB4ICNjZTg0ODN9Lmhhcy1lcnJvciAuaW5wdXQtZ3JvdXAtYWRkb257Y29sb3I6I2E5NDQ0MjtiYWNrZ3JvdW5kLWNvbG9yOiNmMmRlZGU7Ym9yZGVyLWNvbG9yOiNhOTQ0NDJ9Lmhhcy1lcnJvciAuZm9ybS1jb250cm9sLWZlZWRiYWNre2NvbG9yOiNhOTQ0NDJ9Lmhhcy1mZWVkYmFjayBsYWJlbH4uZm9ybS1jb250cm9sLWZlZWRiYWNre3RvcDoyNXB4fS5oYXMtZmVlZGJhY2sgbGFiZWwuc3Itb25seX4uZm9ybS1jb250cm9sLWZlZWRiYWNre3RvcDowfS5oZWxwLWJsb2Nre2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDo1cHg7bWFyZ2luLWJvdHRvbToxMHB4O2NvbG9yOiM3MzczNzN9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5mb3JtLWlubGluZSAuZm9ybS1ncm91cHtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tYm90dG9tOjA7dmVydGljYWwtYWxpZ246bWlkZGxlfS5mb3JtLWlubGluZSAuZm9ybS1jb250cm9se2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOmF1dG87dmVydGljYWwtYWxpZ246bWlkZGxlfS5mb3JtLWlubGluZSAuZm9ybS1jb250cm9sLXN0YXRpY3tkaXNwbGF5OmlubGluZS1ibG9ja30uZm9ybS1pbmxpbmUgLmlucHV0LWdyb3Vwe2Rpc3BsYXk6aW5saW5lLXRhYmxlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uZm9ybS1pbmxpbmUgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wsLmZvcm0taW5saW5lIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYWRkb24sLmZvcm0taW5saW5lIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRue3dpZHRoOmF1dG99LmZvcm0taW5saW5lIC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9se3dpZHRoOjEwMCV9LmZvcm0taW5saW5lIC5jb250cm9sLWxhYmVse21hcmdpbi1ib3R0b206MDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmZvcm0taW5saW5lIC5jaGVja2JveCwuZm9ybS1pbmxpbmUgLnJhZGlve2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOjA7dmVydGljYWwtYWxpZ246bWlkZGxlfS5mb3JtLWlubGluZSAuY2hlY2tib3ggbGFiZWwsLmZvcm0taW5saW5lIC5yYWRpbyBsYWJlbHtwYWRkaW5nLWxlZnQ6MH0uZm9ybS1pbmxpbmUgLmNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdLC5mb3JtLWlubGluZSAucmFkaW8gaW5wdXRbdHlwZT1yYWRpb117cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLWxlZnQ6MH0uZm9ybS1pbmxpbmUgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNre3RvcDowfX0uZm9ybS1ob3Jpem9udGFsIC5jaGVja2JveCwuZm9ybS1ob3Jpem9udGFsIC5jaGVja2JveC1pbmxpbmUsLmZvcm0taG9yaXpvbnRhbCAucmFkaW8sLmZvcm0taG9yaXpvbnRhbCAucmFkaW8taW5saW5le3BhZGRpbmctdG9wOjdweDttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowfS5mb3JtLWhvcml6b250YWwgLmNoZWNrYm94LC5mb3JtLWhvcml6b250YWwgLnJhZGlve21pbi1oZWlnaHQ6MjdweH0uZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3Vwe21hcmdpbi1yaWdodDotMTVweDttYXJnaW4tbGVmdDotMTVweH1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LmZvcm0taG9yaXpvbnRhbCAuY29udHJvbC1sYWJlbHtwYWRkaW5nLXRvcDo3cHg7bWFyZ2luLWJvdHRvbTowO3RleHQtYWxpZ246cmlnaHR9fS5mb3JtLWhvcml6b250YWwgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNre3JpZ2h0OjE1cHh9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXAtbGcgLmNvbnRyb2wtbGFiZWx7cGFkZGluZy10b3A6MTFweDtmb250LXNpemU6MThweH19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXAtc20gLmNvbnRyb2wtbGFiZWx7cGFkZGluZy10b3A6NnB4O2ZvbnQtc2l6ZToxMnB4fX0uYnRue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6NnB4IDEycHg7bWFyZ2luLWJvdHRvbTowO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxLjQyODU3MTQzO3RleHQtYWxpZ246Y2VudGVyO3doaXRlLXNwYWNlOm5vd3JhcDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7LW1zLXRvdWNoLWFjdGlvbjptYW5pcHVsYXRpb247dG91Y2gtYWN0aW9uOm1hbmlwdWxhdGlvbjtjdXJzb3I6cG9pbnRlcjstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7YmFja2dyb3VuZC1pbWFnZTpub25lO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czo0cHh9LmJ0bi5hY3RpdmUuZm9jdXMsLmJ0bi5hY3RpdmU6Zm9jdXMsLmJ0bi5mb2N1cywuYnRuOmFjdGl2ZS5mb2N1cywuYnRuOmFjdGl2ZTpmb2N1cywuYnRuOmZvY3Vze291dGxpbmU6NXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO291dGxpbmUtb2Zmc2V0Oi0ycHh9LmJ0bi5mb2N1cywuYnRuOmZvY3VzLC5idG46aG92ZXJ7Y29sb3I6IzMzMzt0ZXh0LWRlY29yYXRpb246bm9uZX0uYnRuLmFjdGl2ZSwuYnRuOmFjdGl2ZXtiYWNrZ3JvdW5kLWltYWdlOm5vbmU7b3V0bGluZTowOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDNweCA1cHggcmdiYSgwLDAsMCwuMTI1KTtib3gtc2hhZG93Omluc2V0IDAgM3B4IDVweCByZ2JhKDAsMCwwLC4xMjUpfS5idG4uZGlzYWJsZWQsLmJ0bltkaXNhYmxlZF0sZmllbGRzZXRbZGlzYWJsZWRdIC5idG57Y3Vyc29yOm5vdC1hbGxvd2VkO2ZpbHRlcjphbHBoYShvcGFjaXR5PTY1KTstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmU7b3BhY2l0eTouNjV9YS5idG4uZGlzYWJsZWQsZmllbGRzZXRbZGlzYWJsZWRdIGEuYnRue3BvaW50ZXItZXZlbnRzOm5vbmV9LmJ0bi1kZWZhdWx0e2NvbG9yOiMzMzM7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1jb2xvcjojY2NjfS5idG4tZGVmYXVsdC5mb2N1cywuYnRuLWRlZmF1bHQ6Zm9jdXN7Y29sb3I6IzMzMztiYWNrZ3JvdW5kLWNvbG9yOiNlNmU2ZTY7Ym9yZGVyLWNvbG9yOiM4YzhjOGN9LmJ0bi1kZWZhdWx0OmhvdmVye2NvbG9yOiMzMzM7YmFja2dyb3VuZC1jb2xvcjojZTZlNmU2O2JvcmRlci1jb2xvcjojYWRhZGFkfS5idG4tZGVmYXVsdC5hY3RpdmUsLmJ0bi1kZWZhdWx0OmFjdGl2ZSwub3Blbj4uZHJvcGRvd24tdG9nZ2xlLmJ0bi1kZWZhdWx0e2NvbG9yOiMzMzM7YmFja2dyb3VuZC1jb2xvcjojZTZlNmU2O2JvcmRlci1jb2xvcjojYWRhZGFkfS5idG4tZGVmYXVsdC5hY3RpdmUuZm9jdXMsLmJ0bi1kZWZhdWx0LmFjdGl2ZTpmb2N1cywuYnRuLWRlZmF1bHQuYWN0aXZlOmhvdmVyLC5idG4tZGVmYXVsdDphY3RpdmUuZm9jdXMsLmJ0bi1kZWZhdWx0OmFjdGl2ZTpmb2N1cywuYnRuLWRlZmF1bHQ6YWN0aXZlOmhvdmVyLC5vcGVuPi5kcm9wZG93bi10b2dnbGUuYnRuLWRlZmF1bHQuZm9jdXMsLm9wZW4+LmRyb3Bkb3duLXRvZ2dsZS5idG4tZGVmYXVsdDpmb2N1cywub3Blbj4uZHJvcGRvd24tdG9nZ2xlLmJ0bi1kZWZhdWx0OmhvdmVye2NvbG9yOiMzMzM7YmFja2dyb3VuZC1jb2xvcjojZDRkNGQ0O2JvcmRlci1jb2xvcjojOGM4YzhjfS5idG4tZGVmYXVsdC5hY3RpdmUsLmJ0bi1kZWZhdWx0OmFjdGl2ZSwub3Blbj4uZHJvcGRvd24tdG9nZ2xlLmJ0bi1kZWZhdWx0e2JhY2tncm91bmQtaW1hZ2U6bm9uZX0uYnRuLWRlZmF1bHQuZGlzYWJsZWQuZm9jdXMsLmJ0bi1kZWZhdWx0LmRpc2FibGVkOmZvY3VzLC5idG4tZGVmYXVsdC5kaXNhYmxlZDpob3ZlciwuYnRuLWRlZmF1bHRbZGlzYWJsZWRdLmZvY3VzLC5idG4tZGVmYXVsdFtkaXNhYmxlZF06Zm9jdXMsLmJ0bi1kZWZhdWx0W2Rpc2FibGVkXTpob3ZlcixmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kZWZhdWx0LmZvY3VzLGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWRlZmF1bHQ6Zm9jdXMsZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tZGVmYXVsdDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOiNjY2N9LmJ0bi1kZWZhdWx0IC5iYWRnZXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzMzM30uYnRuLXByaW1hcnl7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMzMzdhYjc7Ym9yZGVyLWNvbG9yOiMyZTZkYTR9LmJ0bi1wcmltYXJ5LmZvY3VzLC5idG4tcHJpbWFyeTpmb2N1c3tjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzI4NjA5MDtib3JkZXItY29sb3I6IzEyMmI0MH0uYnRuLXByaW1hcnk6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMyODYwOTA7Ym9yZGVyLWNvbG9yOiMyMDRkNzR9LmJ0bi1wcmltYXJ5LmFjdGl2ZSwuYnRuLXByaW1hcnk6YWN0aXZlLC5vcGVuPi5kcm9wZG93bi10b2dnbGUuYnRuLXByaW1hcnl7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMyODYwOTA7Ym9yZGVyLWNvbG9yOiMyMDRkNzR9LmJ0bi1wcmltYXJ5LmFjdGl2ZS5mb2N1cywuYnRuLXByaW1hcnkuYWN0aXZlOmZvY3VzLC5idG4tcHJpbWFyeS5hY3RpdmU6aG92ZXIsLmJ0bi1wcmltYXJ5OmFjdGl2ZS5mb2N1cywuYnRuLXByaW1hcnk6YWN0aXZlOmZvY3VzLC5idG4tcHJpbWFyeTphY3RpdmU6aG92ZXIsLm9wZW4+LmRyb3Bkb3duLXRvZ2dsZS5idG4tcHJpbWFyeS5mb2N1cywub3Blbj4uZHJvcGRvd24tdG9nZ2xlLmJ0bi1wcmltYXJ5OmZvY3VzLC5vcGVuPi5kcm9wZG93bi10b2dnbGUuYnRuLXByaW1hcnk6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMyMDRkNzQ7Ym9yZGVyLWNvbG9yOiMxMjJiNDB9LmJ0bi1wcmltYXJ5LmFjdGl2ZSwuYnRuLXByaW1hcnk6YWN0aXZlLC5vcGVuPi5kcm9wZG93bi10b2dnbGUuYnRuLXByaW1hcnl7YmFja2dyb3VuZC1pbWFnZTpub25lfS5idG4tcHJpbWFyeS5kaXNhYmxlZC5mb2N1cywuYnRuLXByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsLmJ0bi1wcmltYXJ5LmRpc2FibGVkOmhvdmVyLC5idG4tcHJpbWFyeVtkaXNhYmxlZF0uZm9jdXMsLmJ0bi1wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cywuYnRuLXByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXByaW1hcnkuZm9jdXMsZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tcHJpbWFyeTpmb2N1cyxmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1wcmltYXJ5OmhvdmVye2JhY2tncm91bmQtY29sb3I6IzMzN2FiNztib3JkZXItY29sb3I6IzJlNmRhNH0uYnRuLXByaW1hcnkgLmJhZGdle2NvbG9yOiMzMzdhYjc7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5idG4tc3VjY2Vzc3tjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzVjYjg1Yztib3JkZXItY29sb3I6IzRjYWU0Y30uYnRuLXN1Y2Nlc3MuZm9jdXMsLmJ0bi1zdWNjZXNzOmZvY3Vze2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojNDQ5ZDQ0O2JvcmRlci1jb2xvcjojMjU1NjI1fS5idG4tc3VjY2Vzczpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzQ0OWQ0NDtib3JkZXItY29sb3I6IzM5ODQzOX0uYnRuLXN1Y2Nlc3MuYWN0aXZlLC5idG4tc3VjY2VzczphY3RpdmUsLm9wZW4+LmRyb3Bkb3duLXRvZ2dsZS5idG4tc3VjY2Vzc3tjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzQ0OWQ0NDtib3JkZXItY29sb3I6IzM5ODQzOX0uYnRuLXN1Y2Nlc3MuYWN0aXZlLmZvY3VzLC5idG4tc3VjY2Vzcy5hY3RpdmU6Zm9jdXMsLmJ0bi1zdWNjZXNzLmFjdGl2ZTpob3ZlciwuYnRuLXN1Y2Nlc3M6YWN0aXZlLmZvY3VzLC5idG4tc3VjY2VzczphY3RpdmU6Zm9jdXMsLmJ0bi1zdWNjZXNzOmFjdGl2ZTpob3Zlciwub3Blbj4uZHJvcGRvd24tdG9nZ2xlLmJ0bi1zdWNjZXNzLmZvY3VzLC5vcGVuPi5kcm9wZG93bi10b2dnbGUuYnRuLXN1Y2Nlc3M6Zm9jdXMsLm9wZW4+LmRyb3Bkb3duLXRvZ2dsZS5idG4tc3VjY2Vzczpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzM5ODQzOTtib3JkZXItY29sb3I6IzI1NTYyNX0uYnRuLXN1Y2Nlc3MuYWN0aXZlLC5idG4tc3VjY2VzczphY3RpdmUsLm9wZW4+LmRyb3Bkb3duLXRvZ2dsZS5idG4tc3VjY2Vzc3tiYWNrZ3JvdW5kLWltYWdlOm5vbmV9LmJ0bi1zdWNjZXNzLmRpc2FibGVkLmZvY3VzLC5idG4tc3VjY2Vzcy5kaXNhYmxlZDpmb2N1cywuYnRuLXN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsLmJ0bi1zdWNjZXNzW2Rpc2FibGVkXS5mb2N1cywuYnRuLXN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzLC5idG4tc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tc3VjY2Vzcy5mb2N1cyxmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1zdWNjZXNzOmZvY3VzLGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXN1Y2Nlc3M6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojNWNiODVjO2JvcmRlci1jb2xvcjojNGNhZTRjfS5idG4tc3VjY2VzcyAuYmFkZ2V7Y29sb3I6IzVjYjg1YztiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LmJ0bi1pbmZve2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojNWJjMGRlO2JvcmRlci1jb2xvcjojNDZiOGRhfS5idG4taW5mby5mb2N1cywuYnRuLWluZm86Zm9jdXN7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMzMWIwZDU7Ym9yZGVyLWNvbG9yOiMxYjZkODV9LmJ0bi1pbmZvOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMzFiMGQ1O2JvcmRlci1jb2xvcjojMjY5YWJjfS5idG4taW5mby5hY3RpdmUsLmJ0bi1pbmZvOmFjdGl2ZSwub3Blbj4uZHJvcGRvd24tdG9nZ2xlLmJ0bi1pbmZve2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMzFiMGQ1O2JvcmRlci1jb2xvcjojMjY5YWJjfS5idG4taW5mby5hY3RpdmUuZm9jdXMsLmJ0bi1pbmZvLmFjdGl2ZTpmb2N1cywuYnRuLWluZm8uYWN0aXZlOmhvdmVyLC5idG4taW5mbzphY3RpdmUuZm9jdXMsLmJ0bi1pbmZvOmFjdGl2ZTpmb2N1cywuYnRuLWluZm86YWN0aXZlOmhvdmVyLC5vcGVuPi5kcm9wZG93bi10b2dnbGUuYnRuLWluZm8uZm9jdXMsLm9wZW4+LmRyb3Bkb3duLXRvZ2dsZS5idG4taW5mbzpmb2N1cywub3Blbj4uZHJvcGRvd24tdG9nZ2xlLmJ0bi1pbmZvOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMjY5YWJjO2JvcmRlci1jb2xvcjojMWI2ZDg1fS5idG4taW5mby5hY3RpdmUsLmJ0bi1pbmZvOmFjdGl2ZSwub3Blbj4uZHJvcGRvd24tdG9nZ2xlLmJ0bi1pbmZve2JhY2tncm91bmQtaW1hZ2U6bm9uZX0uYnRuLWluZm8uZGlzYWJsZWQuZm9jdXMsLmJ0bi1pbmZvLmRpc2FibGVkOmZvY3VzLC5idG4taW5mby5kaXNhYmxlZDpob3ZlciwuYnRuLWluZm9bZGlzYWJsZWRdLmZvY3VzLC5idG4taW5mb1tkaXNhYmxlZF06Zm9jdXMsLmJ0bi1pbmZvW2Rpc2FibGVkXTpob3ZlcixmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1pbmZvLmZvY3VzLGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWluZm86Zm9jdXMsZmllbGRzZXRbZGlzYWJsZWRdIC5idG4taW5mbzpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiM1YmMwZGU7Ym9yZGVyLWNvbG9yOiM0NmI4ZGF9LmJ0bi1pbmZvIC5iYWRnZXtjb2xvcjojNWJjMGRlO2JhY2tncm91bmQtY29sb3I6I2ZmZn0uYnRuLXdhcm5pbmd7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiNmMGFkNGU7Ym9yZGVyLWNvbG9yOiNlZWEyMzZ9LmJ0bi13YXJuaW5nLmZvY3VzLC5idG4td2FybmluZzpmb2N1c3tjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6I2VjOTcxZjtib3JkZXItY29sb3I6Izk4NWYwZH0uYnRuLXdhcm5pbmc6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiNlYzk3MWY7Ym9yZGVyLWNvbG9yOiNkNTg1MTJ9LmJ0bi13YXJuaW5nLmFjdGl2ZSwuYnRuLXdhcm5pbmc6YWN0aXZlLC5vcGVuPi5kcm9wZG93bi10b2dnbGUuYnRuLXdhcm5pbmd7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiNlYzk3MWY7Ym9yZGVyLWNvbG9yOiNkNTg1MTJ9LmJ0bi13YXJuaW5nLmFjdGl2ZS5mb2N1cywuYnRuLXdhcm5pbmcuYWN0aXZlOmZvY3VzLC5idG4td2FybmluZy5hY3RpdmU6aG92ZXIsLmJ0bi13YXJuaW5nOmFjdGl2ZS5mb2N1cywuYnRuLXdhcm5pbmc6YWN0aXZlOmZvY3VzLC5idG4td2FybmluZzphY3RpdmU6aG92ZXIsLm9wZW4+LmRyb3Bkb3duLXRvZ2dsZS5idG4td2FybmluZy5mb2N1cywub3Blbj4uZHJvcGRvd24tdG9nZ2xlLmJ0bi13YXJuaW5nOmZvY3VzLC5vcGVuPi5kcm9wZG93bi10b2dnbGUuYnRuLXdhcm5pbmc6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiNkNTg1MTI7Ym9yZGVyLWNvbG9yOiM5ODVmMGR9LmJ0bi13YXJuaW5nLmFjdGl2ZSwuYnRuLXdhcm5pbmc6YWN0aXZlLC5vcGVuPi5kcm9wZG93bi10b2dnbGUuYnRuLXdhcm5pbmd7YmFja2dyb3VuZC1pbWFnZTpub25lfS5idG4td2FybmluZy5kaXNhYmxlZC5mb2N1cywuYnRuLXdhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsLmJ0bi13YXJuaW5nLmRpc2FibGVkOmhvdmVyLC5idG4td2FybmluZ1tkaXNhYmxlZF0uZm9jdXMsLmJ0bi13YXJuaW5nW2Rpc2FibGVkXTpmb2N1cywuYnRuLXdhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXdhcm5pbmcuZm9jdXMsZmllbGRzZXRbZGlzYWJsZWRdIC5idG4td2FybmluZzpmb2N1cyxmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi13YXJuaW5nOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2YwYWQ0ZTtib3JkZXItY29sb3I6I2VlYTIzNn0uYnRuLXdhcm5pbmcgLmJhZGdle2NvbG9yOiNmMGFkNGU7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5idG4tZGFuZ2Vye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojZDk1MzRmO2JvcmRlci1jb2xvcjojZDQzZjNhfS5idG4tZGFuZ2VyLmZvY3VzLC5idG4tZGFuZ2VyOmZvY3Vze2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojYzkzMDJjO2JvcmRlci1jb2xvcjojNzYxYzE5fS5idG4tZGFuZ2VyOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojYzkzMDJjO2JvcmRlci1jb2xvcjojYWMyOTI1fS5idG4tZGFuZ2VyLmFjdGl2ZSwuYnRuLWRhbmdlcjphY3RpdmUsLm9wZW4+LmRyb3Bkb3duLXRvZ2dsZS5idG4tZGFuZ2Vye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojYzkzMDJjO2JvcmRlci1jb2xvcjojYWMyOTI1fS5idG4tZGFuZ2VyLmFjdGl2ZS5mb2N1cywuYnRuLWRhbmdlci5hY3RpdmU6Zm9jdXMsLmJ0bi1kYW5nZXIuYWN0aXZlOmhvdmVyLC5idG4tZGFuZ2VyOmFjdGl2ZS5mb2N1cywuYnRuLWRhbmdlcjphY3RpdmU6Zm9jdXMsLmJ0bi1kYW5nZXI6YWN0aXZlOmhvdmVyLC5vcGVuPi5kcm9wZG93bi10b2dnbGUuYnRuLWRhbmdlci5mb2N1cywub3Blbj4uZHJvcGRvd24tdG9nZ2xlLmJ0bi1kYW5nZXI6Zm9jdXMsLm9wZW4+LmRyb3Bkb3duLXRvZ2dsZS5idG4tZGFuZ2VyOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojYWMyOTI1O2JvcmRlci1jb2xvcjojNzYxYzE5fS5idG4tZGFuZ2VyLmFjdGl2ZSwuYnRuLWRhbmdlcjphY3RpdmUsLm9wZW4+LmRyb3Bkb3duLXRvZ2dsZS5idG4tZGFuZ2Vye2JhY2tncm91bmQtaW1hZ2U6bm9uZX0uYnRuLWRhbmdlci5kaXNhYmxlZC5mb2N1cywuYnRuLWRhbmdlci5kaXNhYmxlZDpmb2N1cywuYnRuLWRhbmdlci5kaXNhYmxlZDpob3ZlciwuYnRuLWRhbmdlcltkaXNhYmxlZF0uZm9jdXMsLmJ0bi1kYW5nZXJbZGlzYWJsZWRdOmZvY3VzLC5idG4tZGFuZ2VyW2Rpc2FibGVkXTpob3ZlcixmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kYW5nZXIuZm9jdXMsZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tZGFuZ2VyOmZvY3VzLGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWRhbmdlcjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNkOTUzNGY7Ym9yZGVyLWNvbG9yOiNkNDNmM2F9LmJ0bi1kYW5nZXIgLmJhZGdle2NvbG9yOiNkOTUzNGY7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5idG4tbGlua3tmb250LXdlaWdodDo0MDA7Y29sb3I6IzMzN2FiNztib3JkZXItcmFkaXVzOjB9LmJ0bi1saW5rLC5idG4tbGluay5hY3RpdmUsLmJ0bi1saW5rOmFjdGl2ZSwuYnRuLWxpbmtbZGlzYWJsZWRdLGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWxpbmt7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmV9LmJ0bi1saW5rLC5idG4tbGluazphY3RpdmUsLmJ0bi1saW5rOmZvY3VzLC5idG4tbGluazpob3Zlcntib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmJ0bi1saW5rOmZvY3VzLC5idG4tbGluazpob3Zlcntjb2xvcjojMjM1MjdjO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0uYnRuLWxpbmtbZGlzYWJsZWRdOmZvY3VzLC5idG4tbGlua1tkaXNhYmxlZF06aG92ZXIsZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tbGluazpmb2N1cyxmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1saW5rOmhvdmVye2NvbG9yOiM3Nzc7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmJ0bi1ncm91cC1sZz4uYnRuLC5idG4tbGd7cGFkZGluZzoxMHB4IDE2cHg7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MS4zMzMzMzMzO2JvcmRlci1yYWRpdXM6NnB4fS5idG4tZ3JvdXAtc20+LmJ0biwuYnRuLXNte3BhZGRpbmc6NXB4IDEwcHg7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MS41O2JvcmRlci1yYWRpdXM6M3B4fS5idG4tZ3JvdXAteHM+LmJ0biwuYnRuLXhze3BhZGRpbmc6MXB4IDVweDtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxLjU7Ym9yZGVyLXJhZGl1czozcHh9LmJ0bi1ibG9ja3tkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCV9LmJ0bi1ibG9jaysuYnRuLWJsb2Nre21hcmdpbi10b3A6NXB4fWlucHV0W3R5cGU9YnV0dG9uXS5idG4tYmxvY2ssaW5wdXRbdHlwZT1yZXNldF0uYnRuLWJsb2NrLGlucHV0W3R5cGU9c3VibWl0XS5idG4tYmxvY2t7d2lkdGg6MTAwJX0uZmFkZXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBsaW5lYXI7LW8tdHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgbGluZWFyO3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGxpbmVhcn0uZmFkZS5pbntvcGFjaXR5OjF9LmNvbGxhcHNle2Rpc3BsYXk6bm9uZX0uY29sbGFwc2UuaW57ZGlzcGxheTpibG9ja310ci5jb2xsYXBzZS5pbntkaXNwbGF5OnRhYmxlLXJvd310Ym9keS5jb2xsYXBzZS5pbntkaXNwbGF5OnRhYmxlLXJvdy1ncm91cH0uY29sbGFwc2luZ3twb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlOy1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2U7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZTstd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246LjM1czstby10cmFuc2l0aW9uLWR1cmF0aW9uOi4zNXM7dHJhbnNpdGlvbi1kdXJhdGlvbjouMzVzOy13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTpoZWlnaHQsdmlzaWJpbGl0eTstby10cmFuc2l0aW9uLXByb3BlcnR5OmhlaWdodCx2aXNpYmlsaXR5O3RyYW5zaXRpb24tcHJvcGVydHk6aGVpZ2h0LHZpc2liaWxpdHl9LmNhcmV0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjA7aGVpZ2h0OjA7bWFyZ2luLWxlZnQ6MnB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtib3JkZXItdG9wOjRweCBkYXNoZWQ7Ym9yZGVyLXRvcDo0cHggc29saWRcOTtib3JkZXItcmlnaHQ6NHB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1sZWZ0OjRweCBzb2xpZCB0cmFuc3BhcmVudH0uZHJvcGRvd24sLmRyb3B1cHtwb3NpdGlvbjpyZWxhdGl2ZX0uZHJvcGRvd24tdG9nZ2xlOmZvY3Vze291dGxpbmU6MH0uZHJvcGRvd24tbWVudXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTAwJTtsZWZ0OjA7ei1pbmRleDoxMDAwO2Rpc3BsYXk6bm9uZTtmbG9hdDpsZWZ0O21pbi13aWR0aDoxNjBweDtwYWRkaW5nOjVweCAwO21hcmdpbjoycHggMCAwO2ZvbnQtc2l6ZToxNHB4O3RleHQtYWxpZ246bGVmdDtsaXN0LXN0eWxlOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojZmZmOy13ZWJraXQtYmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94O2JhY2tncm91bmQtY2xpcDpwYWRkaW5nLWJveDtib3JkZXI6MXB4IHNvbGlkICNjY2M7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xNSk7Ym9yZGVyLXJhZGl1czo0cHg7LXdlYmtpdC1ib3gtc2hhZG93OjAgNnB4IDEycHggcmdiYSgwLDAsMCwuMTc1KTtib3gtc2hhZG93OjAgNnB4IDEycHggcmdiYSgwLDAsMCwuMTc1KX0uZHJvcGRvd24tbWVudS5wdWxsLXJpZ2h0e3JpZ2h0OjA7bGVmdDphdXRvfS5kcm9wZG93bi1tZW51IC5kaXZpZGVye2hlaWdodDoxcHg7bWFyZ2luOjlweCAwO292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kLWNvbG9yOiNlNWU1ZTV9LmRyb3Bkb3duLW1lbnU+bGk+YXtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6M3B4IDIwcHg7Y2xlYXI6Ym90aDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MS40Mjg1NzE0Mztjb2xvcjojMzMzO3doaXRlLXNwYWNlOm5vd3JhcH0uZHJvcGRvd24tbWVudT5saT5hOmZvY3VzLC5kcm9wZG93bi1tZW51PmxpPmE6aG92ZXJ7Y29sb3I6IzI2MjYyNjt0ZXh0LWRlY29yYXRpb246bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiNmNWY1ZjV9LmRyb3Bkb3duLW1lbnU+LmFjdGl2ZT5hLC5kcm9wZG93bi1tZW51Pi5hY3RpdmU+YTpmb2N1cywuZHJvcGRvd24tbWVudT4uYWN0aXZlPmE6aG92ZXJ7Y29sb3I6I2ZmZjt0ZXh0LWRlY29yYXRpb246bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiMzMzdhYjc7b3V0bGluZTowfS5kcm9wZG93bi1tZW51Pi5kaXNhYmxlZD5hLC5kcm9wZG93bi1tZW51Pi5kaXNhYmxlZD5hOmZvY3VzLC5kcm9wZG93bi1tZW51Pi5kaXNhYmxlZD5hOmhvdmVye2NvbG9yOiM3Nzd9LmRyb3Bkb3duLW1lbnU+LmRpc2FibGVkPmE6Zm9jdXMsLmRyb3Bkb3duLW1lbnU+LmRpc2FibGVkPmE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y3Vyc29yOm5vdC1hbGxvd2VkO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1pbWFnZTpub25lO2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZD1mYWxzZSl9Lm9wZW4+LmRyb3Bkb3duLW1lbnV7ZGlzcGxheTpibG9ja30ub3Blbj5he291dGxpbmU6MH0uZHJvcGRvd24tbWVudS1yaWdodHtyaWdodDowO2xlZnQ6YXV0b30uZHJvcGRvd24tbWVudS1sZWZ0e3JpZ2h0OmF1dG87bGVmdDowfS5kcm9wZG93bi1oZWFkZXJ7ZGlzcGxheTpibG9jaztwYWRkaW5nOjNweCAyMHB4O2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjEuNDI4NTcxNDM7Y29sb3I6Izc3Nzt3aGl0ZS1zcGFjZTpub3dyYXB9LmRyb3Bkb3duLWJhY2tkcm9we3Bvc2l0aW9uOmZpeGVkO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3otaW5kZXg6OTkwfS5wdWxsLXJpZ2h0Pi5kcm9wZG93bi1tZW51e3JpZ2h0OjA7bGVmdDphdXRvfS5kcm9wdXAgLmNhcmV0LC5uYXZiYXItZml4ZWQtYm90dG9tIC5kcm9wZG93biAuY2FyZXR7Y29udGVudDoiIjtib3JkZXItdG9wOjA7Ym9yZGVyLWJvdHRvbTo0cHggZGFzaGVkO2JvcmRlci1ib3R0b206NHB4IHNvbGlkXDl9LmRyb3B1cCAuZHJvcGRvd24tbWVudSwubmF2YmFyLWZpeGVkLWJvdHRvbSAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnV7dG9wOmF1dG87Ym90dG9tOjEwMCU7bWFyZ2luLWJvdHRvbToycHh9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5uYXZiYXItcmlnaHQgLmRyb3Bkb3duLW1lbnV7cmlnaHQ6MDtsZWZ0OmF1dG99Lm5hdmJhci1yaWdodCAuZHJvcGRvd24tbWVudS1sZWZ0e3JpZ2h0OmF1dG87bGVmdDowfX0uYnRuLWdyb3VwLC5idG4tZ3JvdXAtdmVydGljYWx7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlfS5idG4tZ3JvdXAtdmVydGljYWw+LmJ0biwuYnRuLWdyb3VwPi5idG57cG9zaXRpb246cmVsYXRpdmU7ZmxvYXQ6bGVmdH0uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4uYWN0aXZlLC5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bjphY3RpdmUsLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOmZvY3VzLC5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bjpob3ZlciwuYnRuLWdyb3VwPi5idG4uYWN0aXZlLC5idG4tZ3JvdXA+LmJ0bjphY3RpdmUsLmJ0bi1ncm91cD4uYnRuOmZvY3VzLC5idG4tZ3JvdXA+LmJ0bjpob3Zlcnt6LWluZGV4OjJ9LmJ0bi1ncm91cCAuYnRuKy5idG4sLmJ0bi1ncm91cCAuYnRuKy5idG4tZ3JvdXAsLmJ0bi1ncm91cCAuYnRuLWdyb3VwKy5idG4sLmJ0bi1ncm91cCAuYnRuLWdyb3VwKy5idG4tZ3JvdXB7bWFyZ2luLWxlZnQ6LTFweH0uYnRuLXRvb2xiYXJ7bWFyZ2luLWxlZnQ6LTVweH0uYnRuLXRvb2xiYXIgLmJ0biwuYnRuLXRvb2xiYXIgLmJ0bi1ncm91cCwuYnRuLXRvb2xiYXIgLmlucHV0LWdyb3Vwe2Zsb2F0OmxlZnR9LmJ0bi10b29sYmFyPi5idG4sLmJ0bi10b29sYmFyPi5idG4tZ3JvdXAsLmJ0bi10b29sYmFyPi5pbnB1dC1ncm91cHttYXJnaW4tbGVmdDo1cHh9LmJ0bi1ncm91cD4uYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpe2JvcmRlci1yYWRpdXM6MH0uYnRuLWdyb3VwPi5idG46Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MH0uYnRuLWdyb3VwPi5idG46Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSl7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS5idG4tZ3JvdXA+LmJ0bjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLC5idG4tZ3JvdXA+LmRyb3Bkb3duLXRvZ2dsZTpub3QoOmZpcnN0LWNoaWxkKXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowfS5idG4tZ3JvdXA+LmJ0bi1ncm91cHtmbG9hdDpsZWZ0fS5idG4tZ3JvdXA+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpPi5idG57Ym9yZGVyLXJhZGl1czowfS5idG4tZ3JvdXA+LmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpPi5idG46bGFzdC1jaGlsZCwuYnRuLWdyb3VwPi5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKT4uZHJvcGRvd24tdG9nZ2xle2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0uYnRuLWdyb3VwPi5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuOmZpcnN0LWNoaWxke2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9LmJ0bi1ncm91cCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSwuYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZXtvdXRsaW5lOjB9LmJ0bi1ncm91cD4uYnRuKy5kcm9wZG93bi10b2dnbGV7cGFkZGluZy1yaWdodDo4cHg7cGFkZGluZy1sZWZ0OjhweH0uYnRuLWdyb3VwPi5idG4tbGcrLmRyb3Bkb3duLXRvZ2dsZXtwYWRkaW5nLXJpZ2h0OjEycHg7cGFkZGluZy1sZWZ0OjEycHh9LmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGV7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgM3B4IDVweCByZ2JhKDAsMCwwLC4xMjUpO2JveC1zaGFkb3c6aW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSl9LmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUuYnRuLWxpbmt7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmU7Ym94LXNoYWRvdzpub25lfS5idG4gLmNhcmV0e21hcmdpbi1sZWZ0OjB9LmJ0bi1sZyAuY2FyZXR7Ym9yZGVyLXdpZHRoOjVweCA1cHggMDtib3JkZXItYm90dG9tLXdpZHRoOjB9LmRyb3B1cCAuYnRuLWxnIC5jYXJldHtib3JkZXItd2lkdGg6MCA1cHggNXB4fS5idG4tZ3JvdXAtdmVydGljYWw+LmJ0biwuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXAsLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLWdyb3VwPi5idG57ZGlzcGxheTpibG9jaztmbG9hdDpub25lO3dpZHRoOjEwMCU7bWF4LXdpZHRoOjEwMCV9LmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLWdyb3VwPi5idG57ZmxvYXQ6bm9uZX0uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4rLmJ0biwuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4rLmJ0bi1ncm91cCwuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXArLmJ0biwuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXArLmJ0bi1ncm91cHttYXJnaW4tdG9wOi0xcHg7bWFyZ2luLWxlZnQ6MH0uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG46bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKXtib3JkZXItcmFkaXVzOjB9LmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCl7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo0cHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6NHB4O2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowfS5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpe2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjRweH0uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKT4uYnRue2JvcmRlci1yYWRpdXM6MH0uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKT4uYnRuOmxhc3QtY2hpbGQsLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCk+LmRyb3Bkb3duLXRvZ2dsZXtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MH0uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuOmZpcnN0LWNoaWxke2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5idG4tZ3JvdXAtanVzdGlmaWVke2Rpc3BsYXk6dGFibGU7d2lkdGg6MTAwJTt0YWJsZS1sYXlvdXQ6Zml4ZWQ7Ym9yZGVyLWNvbGxhcHNlOnNlcGFyYXRlfS5idG4tZ3JvdXAtanVzdGlmaWVkPi5idG4sLmJ0bi1ncm91cC1qdXN0aWZpZWQ+LmJ0bi1ncm91cHtkaXNwbGF5OnRhYmxlLWNlbGw7ZmxvYXQ6bm9uZTt3aWR0aDoxJX0uYnRuLWdyb3VwLWp1c3RpZmllZD4uYnRuLWdyb3VwIC5idG57d2lkdGg6MTAwJX0uYnRuLWdyb3VwLWp1c3RpZmllZD4uYnRuLWdyb3VwIC5kcm9wZG93bi1tZW51e2xlZnQ6YXV0b31bZGF0YS10b2dnbGU9YnV0dG9uc10+LmJ0biBpbnB1dFt0eXBlPWNoZWNrYm94XSxbZGF0YS10b2dnbGU9YnV0dG9uc10+LmJ0biBpbnB1dFt0eXBlPXJhZGlvXSxbZGF0YS10b2dnbGU9YnV0dG9uc10+LmJ0bi1ncm91cD4uYnRuIGlucHV0W3R5cGU9Y2hlY2tib3hdLFtkYXRhLXRvZ2dsZT1idXR0b25zXT4uYnRuLWdyb3VwPi5idG4gaW5wdXRbdHlwZT1yYWRpb117cG9zaXRpb246YWJzb2x1dGU7Y2xpcDpyZWN0KDAsMCwwLDApO3BvaW50ZXItZXZlbnRzOm5vbmV9LmlucHV0LWdyb3Vwe3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6dGFibGU7Ym9yZGVyLWNvbGxhcHNlOnNlcGFyYXRlfS5pbnB1dC1ncm91cFtjbGFzcyo9Y29sLV17ZmxvYXQ6bm9uZTtwYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjB9LmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2x7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2Zsb2F0OmxlZnQ7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjB9LmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zm9jdXN7ei1pbmRleDozfS5pbnB1dC1ncm91cC1sZz4uZm9ybS1jb250cm9sLC5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtYWRkb24sLmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1idG4+LmJ0bntoZWlnaHQ6NDZweDtwYWRkaW5nOjEwcHggMTZweDtmb250LXNpemU6MThweDtsaW5lLWhlaWdodDoxLjMzMzMzMzM7Ym9yZGVyLXJhZGl1czo2cHh9c2VsZWN0LmlucHV0LWdyb3VwLWxnPi5mb3JtLWNvbnRyb2wsc2VsZWN0LmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1hZGRvbixzZWxlY3QuaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLWJ0bj4uYnRue2hlaWdodDo0NnB4O2xpbmUtaGVpZ2h0OjQ2cHh9c2VsZWN0W211bHRpcGxlXS5pbnB1dC1ncm91cC1sZz4uZm9ybS1jb250cm9sLHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLWFkZG9uLHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLWJ0bj4uYnRuLHRleHRhcmVhLmlucHV0LWdyb3VwLWxnPi5mb3JtLWNvbnRyb2wsdGV4dGFyZWEuaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLWFkZG9uLHRleHRhcmVhLmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1idG4+LmJ0bntoZWlnaHQ6YXV0b30uaW5wdXQtZ3JvdXAtc20+LmZvcm0tY29udHJvbCwuaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLWFkZG9uLC5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtYnRuPi5idG57aGVpZ2h0OjMwcHg7cGFkZGluZzo1cHggMTBweDtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxLjU7Ym9yZGVyLXJhZGl1czozcHh9c2VsZWN0LmlucHV0LWdyb3VwLXNtPi5mb3JtLWNvbnRyb2wsc2VsZWN0LmlucHV0LWdyb3VwLXNtPi5pbnB1dC1ncm91cC1hZGRvbixzZWxlY3QuaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLWJ0bj4uYnRue2hlaWdodDozMHB4O2xpbmUtaGVpZ2h0OjMwcHh9c2VsZWN0W211bHRpcGxlXS5pbnB1dC1ncm91cC1zbT4uZm9ybS1jb250cm9sLHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLWFkZG9uLHNlbGVjdFttdWx0aXBsZV0uaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLWJ0bj4uYnRuLHRleHRhcmVhLmlucHV0LWdyb3VwLXNtPi5mb3JtLWNvbnRyb2wsdGV4dGFyZWEuaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLWFkZG9uLHRleHRhcmVhLmlucHV0LWdyb3VwLXNtPi5pbnB1dC1ncm91cC1idG4+LmJ0bntoZWlnaHQ6YXV0b30uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCwuaW5wdXQtZ3JvdXAtYWRkb24sLmlucHV0LWdyb3VwLWJ0bntkaXNwbGF5OnRhYmxlLWNlbGx9LmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSwuaW5wdXQtZ3JvdXAtYWRkb246bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSwuaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCl7Ym9yZGVyLXJhZGl1czowfS5pbnB1dC1ncm91cC1hZGRvbiwuaW5wdXQtZ3JvdXAtYnRue3dpZHRoOjElO3doaXRlLXNwYWNlOm5vd3JhcDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmlucHV0LWdyb3VwLWFkZG9ue3BhZGRpbmc6NnB4IDEycHg7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjE7Y29sb3I6IzU1NTt0ZXh0LWFsaWduOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2JvcmRlci1yYWRpdXM6NHB4fS5pbnB1dC1ncm91cC1hZGRvbi5pbnB1dC1zbXtwYWRkaW5nOjVweCAxMHB4O2ZvbnQtc2l6ZToxMnB4O2JvcmRlci1yYWRpdXM6M3B4fS5pbnB1dC1ncm91cC1hZGRvbi5pbnB1dC1sZ3twYWRkaW5nOjEwcHggMTZweDtmb250LXNpemU6MThweDtib3JkZXItcmFkaXVzOjZweH0uaW5wdXQtZ3JvdXAtYWRkb24gaW5wdXRbdHlwZT1jaGVja2JveF0sLmlucHV0LWdyb3VwLWFkZG9uIGlucHV0W3R5cGU9cmFkaW9de21hcmdpbi10b3A6MH0uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpmaXJzdC1jaGlsZCwuaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQsLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZD4uYnRuLC5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQ+LmJ0bi1ncm91cD4uYnRuLC5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQ+LmRyb3Bkb3duLXRvZ2dsZSwuaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQ+LmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpPi5idG4sLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkPi5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSl7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS5pbnB1dC1ncm91cC1hZGRvbjpmaXJzdC1jaGlsZHtib3JkZXItcmlnaHQ6MH0uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpsYXN0LWNoaWxkLC5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkLC5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQ+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuLC5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQ+LmJ0bjpub3QoOmZpcnN0LWNoaWxkKSwuaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQ+LmJ0biwuaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQ+LmJ0bi1ncm91cD4uYnRuLC5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZD4uZHJvcGRvd24tdG9nZ2xle2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9LmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGR7Ym9yZGVyLWxlZnQ6MH0uaW5wdXQtZ3JvdXAtYnRue3Bvc2l0aW9uOnJlbGF0aXZlO2ZvbnQtc2l6ZTowO3doaXRlLXNwYWNlOm5vd3JhcH0uaW5wdXQtZ3JvdXAtYnRuPi5idG57cG9zaXRpb246cmVsYXRpdmV9LmlucHV0LWdyb3VwLWJ0bj4uYnRuKy5idG57bWFyZ2luLWxlZnQ6LTFweH0uaW5wdXQtZ3JvdXAtYnRuPi5idG46YWN0aXZlLC5pbnB1dC1ncm91cC1idG4+LmJ0bjpmb2N1cywuaW5wdXQtZ3JvdXAtYnRuPi5idG46aG92ZXJ7ei1pbmRleDoyfS5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQ+LmJ0biwuaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkPi5idG4tZ3JvdXB7bWFyZ2luLXJpZ2h0Oi0xcHh9LmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkPi5idG4sLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkPi5idG4tZ3JvdXB7ei1pbmRleDoyO21hcmdpbi1sZWZ0Oi0xcHh9Lm5hdntwYWRkaW5nLWxlZnQ6MDttYXJnaW4tYm90dG9tOjA7bGlzdC1zdHlsZTpub25lfS5uYXY+bGl7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9ja30ubmF2PmxpPmF7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9jaztwYWRkaW5nOjEwcHggMTVweH0ubmF2PmxpPmE6Zm9jdXMsLm5hdj5saT5hOmhvdmVye3RleHQtZGVjb3JhdGlvbjpub25lO2JhY2tncm91bmQtY29sb3I6I2VlZX0ubmF2PmxpLmRpc2FibGVkPmF7Y29sb3I6Izc3N30ubmF2PmxpLmRpc2FibGVkPmE6Zm9jdXMsLm5hdj5saS5kaXNhYmxlZD5hOmhvdmVye2NvbG9yOiM3Nzc7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y3Vyc29yOm5vdC1hbGxvd2VkO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9Lm5hdiAub3Blbj5hLC5uYXYgLm9wZW4+YTpmb2N1cywubmF2IC5vcGVuPmE6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWVlO2JvcmRlci1jb2xvcjojMzM3YWI3fS5uYXYgLm5hdi1kaXZpZGVye2hlaWdodDoxcHg7bWFyZ2luOjlweCAwO292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kLWNvbG9yOiNlNWU1ZTV9Lm5hdj5saT5hPmltZ3ttYXgtd2lkdGg6bm9uZX0ubmF2LXRhYnN7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2RkZH0ubmF2LXRhYnM+bGl7ZmxvYXQ6bGVmdDttYXJnaW4tYm90dG9tOi0xcHh9Lm5hdi10YWJzPmxpPmF7bWFyZ2luLXJpZ2h0OjJweDtsaW5lLWhlaWdodDoxLjQyODU3MTQzO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czo0cHggNHB4IDAgMH0ubmF2LXRhYnM+bGk+YTpob3Zlcntib3JkZXItY29sb3I6I2VlZSAjZWVlICNkZGR9Lm5hdi10YWJzPmxpLmFjdGl2ZT5hLC5uYXYtdGFicz5saS5hY3RpdmU+YTpmb2N1cywubmF2LXRhYnM+bGkuYWN0aXZlPmE6aG92ZXJ7Y29sb3I6IzU1NTtjdXJzb3I6ZGVmYXVsdDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZGRkO2JvcmRlci1ib3R0b20tY29sb3I6dHJhbnNwYXJlbnR9Lm5hdi10YWJzLm5hdi1qdXN0aWZpZWR7d2lkdGg6MTAwJTtib3JkZXItYm90dG9tOjB9Lm5hdi10YWJzLm5hdi1qdXN0aWZpZWQ+bGl7ZmxvYXQ6bm9uZX0ubmF2LXRhYnMubmF2LWp1c3RpZmllZD5saT5he21hcmdpbi1ib3R0b206NXB4O3RleHQtYWxpZ246Y2VudGVyfS5uYXYtdGFicy5uYXYtanVzdGlmaWVkPi5kcm9wZG93biAuZHJvcGRvd24tbWVudXt0b3A6YXV0bztsZWZ0OmF1dG99QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5uYXYtdGFicy5uYXYtanVzdGlmaWVkPmxpe2Rpc3BsYXk6dGFibGUtY2VsbDt3aWR0aDoxJX0ubmF2LXRhYnMubmF2LWp1c3RpZmllZD5saT5he21hcmdpbi1ib3R0b206MH19Lm5hdi10YWJzLm5hdi1qdXN0aWZpZWQ+bGk+YXttYXJnaW4tcmlnaHQ6MDtib3JkZXItcmFkaXVzOjRweH0ubmF2LXRhYnMubmF2LWp1c3RpZmllZD4uYWN0aXZlPmEsLm5hdi10YWJzLm5hdi1qdXN0aWZpZWQ+LmFjdGl2ZT5hOmZvY3VzLC5uYXYtdGFicy5uYXYtanVzdGlmaWVkPi5hY3RpdmU+YTpob3Zlcntib3JkZXI6MXB4IHNvbGlkICNkZGR9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5uYXYtdGFicy5uYXYtanVzdGlmaWVkPmxpPmF7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2RkZDtib3JkZXItcmFkaXVzOjRweCA0cHggMCAwfS5uYXYtdGFicy5uYXYtanVzdGlmaWVkPi5hY3RpdmU+YSwubmF2LXRhYnMubmF2LWp1c3RpZmllZD4uYWN0aXZlPmE6Zm9jdXMsLm5hdi10YWJzLm5hdi1qdXN0aWZpZWQ+LmFjdGl2ZT5hOmhvdmVye2JvcmRlci1ib3R0b20tY29sb3I6I2ZmZn19Lm5hdi1waWxscz5saXtmbG9hdDpsZWZ0fS5uYXYtcGlsbHM+bGk+YXtib3JkZXItcmFkaXVzOjRweH0ubmF2LXBpbGxzPmxpK2xpe21hcmdpbi1sZWZ0OjJweH0ubmF2LXBpbGxzPmxpLmFjdGl2ZT5hLC5uYXYtcGlsbHM+bGkuYWN0aXZlPmE6Zm9jdXMsLm5hdi1waWxscz5saS5hY3RpdmU+YTpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzMzN2FiN30ubmF2LXN0YWNrZWQ+bGl7ZmxvYXQ6bm9uZX0ubmF2LXN0YWNrZWQ+bGkrbGl7bWFyZ2luLXRvcDoycHg7bWFyZ2luLWxlZnQ6MH0ubmF2LWp1c3RpZmllZHt3aWR0aDoxMDAlfS5uYXYtanVzdGlmaWVkPmxpe2Zsb2F0Om5vbmV9Lm5hdi1qdXN0aWZpZWQ+bGk+YXttYXJnaW4tYm90dG9tOjVweDt0ZXh0LWFsaWduOmNlbnRlcn0ubmF2LWp1c3RpZmllZD4uZHJvcGRvd24gLmRyb3Bkb3duLW1lbnV7dG9wOmF1dG87bGVmdDphdXRvfUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsubmF2LWp1c3RpZmllZD5saXtkaXNwbGF5OnRhYmxlLWNlbGw7d2lkdGg6MSV9Lm5hdi1qdXN0aWZpZWQ+bGk+YXttYXJnaW4tYm90dG9tOjB9fS5uYXYtdGFicy1qdXN0aWZpZWR7Ym9yZGVyLWJvdHRvbTowfS5uYXYtdGFicy1qdXN0aWZpZWQ+bGk+YXttYXJnaW4tcmlnaHQ6MDtib3JkZXItcmFkaXVzOjRweH0ubmF2LXRhYnMtanVzdGlmaWVkPi5hY3RpdmU+YSwubmF2LXRhYnMtanVzdGlmaWVkPi5hY3RpdmU+YTpmb2N1cywubmF2LXRhYnMtanVzdGlmaWVkPi5hY3RpdmU+YTpob3Zlcntib3JkZXI6MXB4IHNvbGlkICNkZGR9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5uYXYtdGFicy1qdXN0aWZpZWQ+bGk+YXtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZGRkO2JvcmRlci1yYWRpdXM6NHB4IDRweCAwIDB9Lm5hdi10YWJzLWp1c3RpZmllZD4uYWN0aXZlPmEsLm5hdi10YWJzLWp1c3RpZmllZD4uYWN0aXZlPmE6Zm9jdXMsLm5hdi10YWJzLWp1c3RpZmllZD4uYWN0aXZlPmE6aG92ZXJ7Ym9yZGVyLWJvdHRvbS1jb2xvcjojZmZmfX0udGFiLWNvbnRlbnQ+LnRhYi1wYW5le2Rpc3BsYXk6bm9uZX0udGFiLWNvbnRlbnQ+LmFjdGl2ZXtkaXNwbGF5OmJsb2NrfS5uYXYtdGFicyAuZHJvcGRvd24tbWVudXttYXJnaW4tdG9wOi0xcHg7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9Lm5hdmJhcntwb3NpdGlvbjpyZWxhdGl2ZTttaW4taGVpZ2h0OjUwcHg7bWFyZ2luLWJvdHRvbToyMHB4O2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnR9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5uYXZiYXJ7Ym9yZGVyLXJhZGl1czo0cHh9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsubmF2YmFyLWhlYWRlcntmbG9hdDpsZWZ0fX0ubmF2YmFyLWNvbGxhcHNle3BhZGRpbmctcmlnaHQ6MTVweDtwYWRkaW5nLWxlZnQ6MTVweDtvdmVyZmxvdy14OnZpc2libGU7LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2g7Ym9yZGVyLXRvcDoxcHggc29saWQgdHJhbnNwYXJlbnQ7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpfS5uYXZiYXItY29sbGFwc2UuaW57b3ZlcmZsb3cteTphdXRvfUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsubmF2YmFyLWNvbGxhcHNle3dpZHRoOmF1dG87Ym9yZGVyLXRvcDowOy13ZWJraXQtYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZX0ubmF2YmFyLWNvbGxhcHNlLmNvbGxhcHNle2Rpc3BsYXk6YmxvY2shaW1wb3J0YW50O2hlaWdodDphdXRvIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTowO292ZXJmbG93OnZpc2libGUhaW1wb3J0YW50fS5uYXZiYXItY29sbGFwc2UuaW57b3ZlcmZsb3cteTp2aXNpYmxlfS5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItY29sbGFwc2UsLm5hdmJhci1maXhlZC10b3AgLm5hdmJhci1jb2xsYXBzZSwubmF2YmFyLXN0YXRpYy10b3AgLm5hdmJhci1jb2xsYXBzZXtwYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjB9fS5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItY29sbGFwc2UsLm5hdmJhci1maXhlZC10b3AgLm5hdmJhci1jb2xsYXBzZXttYXgtaGVpZ2h0OjM0MHB4fUBtZWRpYSAobWF4LWRldmljZS13aWR0aDo0ODBweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItY29sbGFwc2UsLm5hdmJhci1maXhlZC10b3AgLm5hdmJhci1jb2xsYXBzZXttYXgtaGVpZ2h0OjIwMHB4fX0uY29udGFpbmVyLWZsdWlkPi5uYXZiYXItY29sbGFwc2UsLmNvbnRhaW5lci1mbHVpZD4ubmF2YmFyLWhlYWRlciwuY29udGFpbmVyPi5uYXZiYXItY29sbGFwc2UsLmNvbnRhaW5lcj4ubmF2YmFyLWhlYWRlcnttYXJnaW4tcmlnaHQ6LTE1cHg7bWFyZ2luLWxlZnQ6LTE1cHh9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5jb250YWluZXItZmx1aWQ+Lm5hdmJhci1jb2xsYXBzZSwuY29udGFpbmVyLWZsdWlkPi5uYXZiYXItaGVhZGVyLC5jb250YWluZXI+Lm5hdmJhci1jb2xsYXBzZSwuY29udGFpbmVyPi5uYXZiYXItaGVhZGVye21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjB9fS5uYXZiYXItc3RhdGljLXRvcHt6LWluZGV4OjEwMDA7Ym9yZGVyLXdpZHRoOjAgMCAxcHh9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5uYXZiYXItc3RhdGljLXRvcHtib3JkZXItcmFkaXVzOjB9fS5uYXZiYXItZml4ZWQtYm90dG9tLC5uYXZiYXItZml4ZWQtdG9we3Bvc2l0aW9uOmZpeGVkO3JpZ2h0OjA7bGVmdDowO3otaW5kZXg6MTAzMH1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7Lm5hdmJhci1maXhlZC1ib3R0b20sLm5hdmJhci1maXhlZC10b3B7Ym9yZGVyLXJhZGl1czowfX0ubmF2YmFyLWZpeGVkLXRvcHt0b3A6MDtib3JkZXItd2lkdGg6MCAwIDFweH0ubmF2YmFyLWZpeGVkLWJvdHRvbXtib3R0b206MDttYXJnaW4tYm90dG9tOjA7Ym9yZGVyLXdpZHRoOjFweCAwIDB9Lm5hdmJhci1icmFuZHtmbG9hdDpsZWZ0O2hlaWdodDo1MHB4O3BhZGRpbmc6MTVweCAxNXB4O2ZvbnQtc2l6ZToxOHB4O2xpbmUtaGVpZ2h0OjIwcHh9Lm5hdmJhci1icmFuZDpmb2N1cywubmF2YmFyLWJyYW5kOmhvdmVye3RleHQtZGVjb3JhdGlvbjpub25lfS5uYXZiYXItYnJhbmQ+aW1ne2Rpc3BsYXk6YmxvY2t9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5uYXZiYXI+LmNvbnRhaW5lciAubmF2YmFyLWJyYW5kLC5uYXZiYXI+LmNvbnRhaW5lci1mbHVpZCAubmF2YmFyLWJyYW5ke21hcmdpbi1sZWZ0Oi0xNXB4fX0ubmF2YmFyLXRvZ2dsZXtwb3NpdGlvbjpyZWxhdGl2ZTtmbG9hdDpyaWdodDtwYWRkaW5nOjlweCAxMHB4O21hcmdpbi10b3A6OHB4O21hcmdpbi1yaWdodDoxNXB4O21hcmdpbi1ib3R0b206OHB4O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1pbWFnZTpub25lO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czo0cHh9Lm5hdmJhci10b2dnbGU6Zm9jdXN7b3V0bGluZTowfS5uYXZiYXItdG9nZ2xlIC5pY29uLWJhcntkaXNwbGF5OmJsb2NrO3dpZHRoOjIycHg7aGVpZ2h0OjJweDtib3JkZXItcmFkaXVzOjFweH0ubmF2YmFyLXRvZ2dsZSAuaWNvbi1iYXIrLmljb24tYmFye21hcmdpbi10b3A6NHB4fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsubmF2YmFyLXRvZ2dsZXtkaXNwbGF5Om5vbmV9fS5uYXZiYXItbmF2e21hcmdpbjo3LjVweCAtMTVweH0ubmF2YmFyLW5hdj5saT5he3BhZGRpbmctdG9wOjEwcHg7cGFkZGluZy1ib3R0b206MTBweDtsaW5lLWhlaWdodDoyMHB4fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudXtwb3NpdGlvbjpzdGF0aWM7ZmxvYXQ6bm9uZTt3aWR0aDphdXRvO21hcmdpbi10b3A6MDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjowOy13ZWJraXQtYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZX0ubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taGVhZGVyLC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51PmxpPmF7cGFkZGluZzo1cHggMTVweCA1cHggMjVweH0ubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudT5saT5he2xpbmUtaGVpZ2h0OjIwcHh9Lm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnU+bGk+YTpmb2N1cywubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudT5saT5hOmhvdmVye2JhY2tncm91bmQtaW1hZ2U6bm9uZX19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5uYXZiYXItbmF2e2Zsb2F0OmxlZnQ7bWFyZ2luOjB9Lm5hdmJhci1uYXY+bGl7ZmxvYXQ6bGVmdH0ubmF2YmFyLW5hdj5saT5he3BhZGRpbmctdG9wOjE1cHg7cGFkZGluZy1ib3R0b206MTVweH19Lm5hdmJhci1mb3Jte3BhZGRpbmc6MTBweCAxNXB4O21hcmdpbi10b3A6OHB4O21hcmdpbi1yaWdodDotMTVweDttYXJnaW4tYm90dG9tOjhweDttYXJnaW4tbGVmdDotMTVweDtib3JkZXItdG9wOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB0cmFuc3BhcmVudDstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKSwwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKSwwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpfUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXB7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWJvdHRvbTowO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ubmF2YmFyLWZvcm0gLmZvcm0tY29udHJvbHtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDphdXRvO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ubmF2YmFyLWZvcm0gLmZvcm0tY29udHJvbC1zdGF0aWN7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lm5hdmJhci1mb3JtIC5pbnB1dC1ncm91cHtkaXNwbGF5OmlubGluZS10YWJsZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lm5hdmJhci1mb3JtIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLC5uYXZiYXItZm9ybSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWFkZG9uLC5uYXZiYXItZm9ybSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0bnt3aWR0aDphdXRvfS5uYXZiYXItZm9ybSAuaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbHt3aWR0aDoxMDAlfS5uYXZiYXItZm9ybSAuY29udHJvbC1sYWJlbHttYXJnaW4tYm90dG9tOjA7dmVydGljYWwtYWxpZ246bWlkZGxlfS5uYXZiYXItZm9ybSAuY2hlY2tib3gsLm5hdmJhci1mb3JtIC5yYWRpb3tkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ubmF2YmFyLWZvcm0gLmNoZWNrYm94IGxhYmVsLC5uYXZiYXItZm9ybSAucmFkaW8gbGFiZWx7cGFkZGluZy1sZWZ0OjB9Lm5hdmJhci1mb3JtIC5jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XSwubmF2YmFyLWZvcm0gLnJhZGlvIGlucHV0W3R5cGU9cmFkaW9de3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbi1sZWZ0OjB9Lm5hdmJhci1mb3JtIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFja3t0b3A6MH19QG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpey5uYXZiYXItZm9ybSAuZm9ybS1ncm91cHttYXJnaW4tYm90dG9tOjVweH0ubmF2YmFyLWZvcm0gLmZvcm0tZ3JvdXA6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsubmF2YmFyLWZvcm17d2lkdGg6YXV0bztwYWRkaW5nLXRvcDowO3BhZGRpbmctYm90dG9tOjA7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MDtib3JkZXI6MDstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmV9fS5uYXZiYXItbmF2PmxpPi5kcm9wZG93bi1tZW51e21hcmdpbi10b3A6MDtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0ubmF2YmFyLWZpeGVkLWJvdHRvbSAubmF2YmFyLW5hdj5saT4uZHJvcGRvd24tbWVudXttYXJnaW4tYm90dG9tOjA7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo0cHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6NHB4O2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowfS5uYXZiYXItYnRue21hcmdpbi10b3A6OHB4O21hcmdpbi1ib3R0b206OHB4fS5uYXZiYXItYnRuLmJ0bi1zbXttYXJnaW4tdG9wOjEwcHg7bWFyZ2luLWJvdHRvbToxMHB4fS5uYXZiYXItYnRuLmJ0bi14c3ttYXJnaW4tdG9wOjE0cHg7bWFyZ2luLWJvdHRvbToxNHB4fS5uYXZiYXItdGV4dHttYXJnaW4tdG9wOjE1cHg7bWFyZ2luLWJvdHRvbToxNXB4fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsubmF2YmFyLXRleHR7ZmxvYXQ6bGVmdDttYXJnaW4tcmlnaHQ6MTVweDttYXJnaW4tbGVmdDoxNXB4fX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7Lm5hdmJhci1sZWZ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fS5uYXZiYXItcmlnaHR7ZmxvYXQ6cmlnaHQhaW1wb3J0YW50O21hcmdpbi1yaWdodDotMTVweH0ubmF2YmFyLXJpZ2h0fi5uYXZiYXItcmlnaHR7bWFyZ2luLXJpZ2h0OjB9fS5uYXZiYXItZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmOGY4Zjg7Ym9yZGVyLWNvbG9yOiNlN2U3ZTd9Lm5hdmJhci1kZWZhdWx0IC5uYXZiYXItYnJhbmR7Y29sb3I6Izc3N30ubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1icmFuZDpmb2N1cywubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1icmFuZDpob3Zlcntjb2xvcjojNWU1ZTVlO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9Lm5hdmJhci1kZWZhdWx0IC5uYXZiYXItdGV4dHtjb2xvcjojNzc3fS5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdj5saT5he2NvbG9yOiM3Nzd9Lm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2PmxpPmE6Zm9jdXMsLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2PmxpPmE6aG92ZXJ7Y29sb3I6IzMzMztiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdj4uYWN0aXZlPmEsLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2Pi5hY3RpdmU+YTpmb2N1cywubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXY+LmFjdGl2ZT5hOmhvdmVye2NvbG9yOiM1NTU7YmFja2dyb3VuZC1jb2xvcjojZTdlN2U3fS5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdj4uZGlzYWJsZWQ+YSwubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXY+LmRpc2FibGVkPmE6Zm9jdXMsLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2Pi5kaXNhYmxlZD5hOmhvdmVye2NvbG9yOiNjY2M7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ubmF2YmFyLWRlZmF1bHQgLm5hdmJhci10b2dnbGV7Ym9yZGVyLWNvbG9yOiNkZGR9Lm5hdmJhci1kZWZhdWx0IC5uYXZiYXItdG9nZ2xlOmZvY3VzLC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLXRvZ2dsZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNkZGR9Lm5hdmJhci1kZWZhdWx0IC5uYXZiYXItdG9nZ2xlIC5pY29uLWJhcntiYWNrZ3JvdW5kLWNvbG9yOiM4ODh9Lm5hdmJhci1kZWZhdWx0IC5uYXZiYXItY29sbGFwc2UsLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItZm9ybXtib3JkZXItY29sb3I6I2U3ZTdlN30ubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXY+Lm9wZW4+YSwubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXY+Lm9wZW4+YTpmb2N1cywubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXY+Lm9wZW4+YTpob3Zlcntjb2xvcjojNTU1O2JhY2tncm91bmQtY29sb3I6I2U3ZTdlN31AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7Lm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51PmxpPmF7Y29sb3I6Izc3N30ubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnU+bGk+YTpmb2N1cywubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnU+bGk+YTpob3Zlcntjb2xvcjojMzMzO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9Lm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51Pi5hY3RpdmU+YSwubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnU+LmFjdGl2ZT5hOmZvY3VzLC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudT4uYWN0aXZlPmE6aG92ZXJ7Y29sb3I6IzU1NTtiYWNrZ3JvdW5kLWNvbG9yOiNlN2U3ZTd9Lm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51Pi5kaXNhYmxlZD5hLC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudT4uZGlzYWJsZWQ+YTpmb2N1cywubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnU+LmRpc2FibGVkPmE6aG92ZXJ7Y29sb3I6I2NjYztiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fX0ubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1saW5re2NvbG9yOiM3Nzd9Lm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbGluazpob3Zlcntjb2xvcjojMzMzfS5uYXZiYXItZGVmYXVsdCAuYnRuLWxpbmt7Y29sb3I6Izc3N30ubmF2YmFyLWRlZmF1bHQgLmJ0bi1saW5rOmZvY3VzLC5uYXZiYXItZGVmYXVsdCAuYnRuLWxpbms6aG92ZXJ7Y29sb3I6IzMzM30ubmF2YmFyLWRlZmF1bHQgLmJ0bi1saW5rW2Rpc2FibGVkXTpmb2N1cywubmF2YmFyLWRlZmF1bHQgLmJ0bi1saW5rW2Rpc2FibGVkXTpob3ZlcixmaWVsZHNldFtkaXNhYmxlZF0gLm5hdmJhci1kZWZhdWx0IC5idG4tbGluazpmb2N1cyxmaWVsZHNldFtkaXNhYmxlZF0gLm5hdmJhci1kZWZhdWx0IC5idG4tbGluazpob3Zlcntjb2xvcjojY2NjfS5uYXZiYXItaW52ZXJzZXtiYWNrZ3JvdW5kLWNvbG9yOiMyMjI7Ym9yZGVyLWNvbG9yOiMwODA4MDh9Lm5hdmJhci1pbnZlcnNlIC5uYXZiYXItYnJhbmR7Y29sb3I6IzlkOWQ5ZH0ubmF2YmFyLWludmVyc2UgLm5hdmJhci1icmFuZDpmb2N1cywubmF2YmFyLWludmVyc2UgLm5hdmJhci1icmFuZDpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9Lm5hdmJhci1pbnZlcnNlIC5uYXZiYXItdGV4dHtjb2xvcjojOWQ5ZDlkfS5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdj5saT5he2NvbG9yOiM5ZDlkOWR9Lm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2PmxpPmE6Zm9jdXMsLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2PmxpPmE6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdj4uYWN0aXZlPmEsLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2Pi5hY3RpdmU+YTpmb2N1cywubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXY+LmFjdGl2ZT5hOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMDgwODA4fS5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdj4uZGlzYWJsZWQ+YSwubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXY+LmRpc2FibGVkPmE6Zm9jdXMsLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2Pi5kaXNhYmxlZD5hOmhvdmVye2NvbG9yOiM0NDQ7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ubmF2YmFyLWludmVyc2UgLm5hdmJhci10b2dnbGV7Ym9yZGVyLWNvbG9yOiMzMzN9Lm5hdmJhci1pbnZlcnNlIC5uYXZiYXItdG9nZ2xlOmZvY3VzLC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLXRvZ2dsZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiMzMzN9Lm5hdmJhci1pbnZlcnNlIC5uYXZiYXItdG9nZ2xlIC5pY29uLWJhcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Lm5hdmJhci1pbnZlcnNlIC5uYXZiYXItY29sbGFwc2UsLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItZm9ybXtib3JkZXItY29sb3I6IzEwMTAxMH0ubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXY+Lm9wZW4+YSwubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXY+Lm9wZW4+YTpmb2N1cywubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXY+Lm9wZW4+YTpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzA4MDgwOH1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7Lm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51Pi5kcm9wZG93bi1oZWFkZXJ7Ym9yZGVyLWNvbG9yOiMwODA4MDh9Lm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51IC5kaXZpZGVye2JhY2tncm91bmQtY29sb3I6IzA4MDgwOH0ubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnU+bGk+YXtjb2xvcjojOWQ5ZDlkfS5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudT5saT5hOmZvY3VzLC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudT5saT5hOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnU+LmFjdGl2ZT5hLC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudT4uYWN0aXZlPmE6Zm9jdXMsLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51Pi5hY3RpdmU+YTpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzA4MDgwOH0ubmF2YmFyLWludmVyc2UgLm5hdmJhci1uYXYgLm9wZW4gLmRyb3Bkb3duLW1lbnU+LmRpc2FibGVkPmEsLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbmF2IC5vcGVuIC5kcm9wZG93bi1tZW51Pi5kaXNhYmxlZD5hOmZvY3VzLC5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudT4uZGlzYWJsZWQ+YTpob3Zlcntjb2xvcjojNDQ0O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9fS5uYXZiYXItaW52ZXJzZSAubmF2YmFyLWxpbmt7Y29sb3I6IzlkOWQ5ZH0ubmF2YmFyLWludmVyc2UgLm5hdmJhci1saW5rOmhvdmVye2NvbG9yOiNmZmZ9Lm5hdmJhci1pbnZlcnNlIC5idG4tbGlua3tjb2xvcjojOWQ5ZDlkfS5uYXZiYXItaW52ZXJzZSAuYnRuLWxpbms6Zm9jdXMsLm5hdmJhci1pbnZlcnNlIC5idG4tbGluazpob3Zlcntjb2xvcjojZmZmfS5uYXZiYXItaW52ZXJzZSAuYnRuLWxpbmtbZGlzYWJsZWRdOmZvY3VzLC5uYXZiYXItaW52ZXJzZSAuYnRuLWxpbmtbZGlzYWJsZWRdOmhvdmVyLGZpZWxkc2V0W2Rpc2FibGVkXSAubmF2YmFyLWludmVyc2UgLmJ0bi1saW5rOmZvY3VzLGZpZWxkc2V0W2Rpc2FibGVkXSAubmF2YmFyLWludmVyc2UgLmJ0bi1saW5rOmhvdmVye2NvbG9yOiM0NDR9LmJyZWFkY3J1bWJ7cGFkZGluZzo4cHggMTVweDttYXJnaW4tYm90dG9tOjIwcHg7bGlzdC1zdHlsZTpub25lO2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtib3JkZXItcmFkaXVzOjRweH0uYnJlYWRjcnVtYj5saXtkaXNwbGF5OmlubGluZS1ibG9ja30uYnJlYWRjcnVtYj5saStsaTpiZWZvcmV7cGFkZGluZzowIDVweDtjb2xvcjojY2NjO2NvbnRlbnQ6Ii9cMDBhMCJ9LmJyZWFkY3J1bWI+LmFjdGl2ZXtjb2xvcjojNzc3fS5wYWdpbmF0aW9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmctbGVmdDowO21hcmdpbjoyMHB4IDA7Ym9yZGVyLXJhZGl1czo0cHh9LnBhZ2luYXRpb24+bGl7ZGlzcGxheTppbmxpbmV9LnBhZ2luYXRpb24+bGk+YSwucGFnaW5hdGlvbj5saT5zcGFue3Bvc2l0aW9uOnJlbGF0aXZlO2Zsb2F0OmxlZnQ7cGFkZGluZzo2cHggMTJweDttYXJnaW4tbGVmdDotMXB4O2xpbmUtaGVpZ2h0OjEuNDI4NTcxNDM7Y29sb3I6IzMzN2FiNzt0ZXh0LWRlY29yYXRpb246bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZGRkfS5wYWdpbmF0aW9uPmxpOmZpcnN0LWNoaWxkPmEsLnBhZ2luYXRpb24+bGk6Zmlyc3QtY2hpbGQ+c3BhbnttYXJnaW4tbGVmdDowO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6NHB4O2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6NHB4fS5wYWdpbmF0aW9uPmxpOmxhc3QtY2hpbGQ+YSwucGFnaW5hdGlvbj5saTpsYXN0LWNoaWxkPnNwYW57Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6NHB4O2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjRweH0ucGFnaW5hdGlvbj5saT5hOmZvY3VzLC5wYWdpbmF0aW9uPmxpPmE6aG92ZXIsLnBhZ2luYXRpb24+bGk+c3Bhbjpmb2N1cywucGFnaW5hdGlvbj5saT5zcGFuOmhvdmVye3otaW5kZXg6Mjtjb2xvcjojMjM1MjdjO2JhY2tncm91bmQtY29sb3I6I2VlZTtib3JkZXItY29sb3I6I2RkZH0ucGFnaW5hdGlvbj4uYWN0aXZlPmEsLnBhZ2luYXRpb24+LmFjdGl2ZT5hOmZvY3VzLC5wYWdpbmF0aW9uPi5hY3RpdmU+YTpob3ZlciwucGFnaW5hdGlvbj4uYWN0aXZlPnNwYW4sLnBhZ2luYXRpb24+LmFjdGl2ZT5zcGFuOmZvY3VzLC5wYWdpbmF0aW9uPi5hY3RpdmU+c3Bhbjpob3Zlcnt6LWluZGV4OjM7Y29sb3I6I2ZmZjtjdXJzb3I6ZGVmYXVsdDtiYWNrZ3JvdW5kLWNvbG9yOiMzMzdhYjc7Ym9yZGVyLWNvbG9yOiMzMzdhYjd9LnBhZ2luYXRpb24+LmRpc2FibGVkPmEsLnBhZ2luYXRpb24+LmRpc2FibGVkPmE6Zm9jdXMsLnBhZ2luYXRpb24+LmRpc2FibGVkPmE6aG92ZXIsLnBhZ2luYXRpb24+LmRpc2FibGVkPnNwYW4sLnBhZ2luYXRpb24+LmRpc2FibGVkPnNwYW46Zm9jdXMsLnBhZ2luYXRpb24+LmRpc2FibGVkPnNwYW46aG92ZXJ7Y29sb3I6Izc3NztjdXJzb3I6bm90LWFsbG93ZWQ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1jb2xvcjojZGRkfS5wYWdpbmF0aW9uLWxnPmxpPmEsLnBhZ2luYXRpb24tbGc+bGk+c3BhbntwYWRkaW5nOjEwcHggMTZweDtmb250LXNpemU6MThweDtsaW5lLWhlaWdodDoxLjMzMzMzMzN9LnBhZ2luYXRpb24tbGc+bGk6Zmlyc3QtY2hpbGQ+YSwucGFnaW5hdGlvbi1sZz5saTpmaXJzdC1jaGlsZD5zcGFue2JvcmRlci10b3AtbGVmdC1yYWRpdXM6NnB4O2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6NnB4fS5wYWdpbmF0aW9uLWxnPmxpOmxhc3QtY2hpbGQ+YSwucGFnaW5hdGlvbi1sZz5saTpsYXN0LWNoaWxkPnNwYW57Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6NnB4O2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjZweH0ucGFnaW5hdGlvbi1zbT5saT5hLC5wYWdpbmF0aW9uLXNtPmxpPnNwYW57cGFkZGluZzo1cHggMTBweDtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxLjV9LnBhZ2luYXRpb24tc20+bGk6Zmlyc3QtY2hpbGQ+YSwucGFnaW5hdGlvbi1zbT5saTpmaXJzdC1jaGlsZD5zcGFue2JvcmRlci10b3AtbGVmdC1yYWRpdXM6M3B4O2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6M3B4fS5wYWdpbmF0aW9uLXNtPmxpOmxhc3QtY2hpbGQ+YSwucGFnaW5hdGlvbi1zbT5saTpsYXN0LWNoaWxkPnNwYW57Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6M3B4O2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjNweH0ucGFnZXJ7cGFkZGluZy1sZWZ0OjA7bWFyZ2luOjIwcHggMDt0ZXh0LWFsaWduOmNlbnRlcjtsaXN0LXN0eWxlOm5vbmV9LnBhZ2VyIGxpe2Rpc3BsYXk6aW5saW5lfS5wYWdlciBsaT5hLC5wYWdlciBsaT5zcGFue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6NXB4IDE0cHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgI2RkZDtib3JkZXItcmFkaXVzOjE1cHh9LnBhZ2VyIGxpPmE6Zm9jdXMsLnBhZ2VyIGxpPmE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojZWVlfS5wYWdlciAubmV4dD5hLC5wYWdlciAubmV4dD5zcGFue2Zsb2F0OnJpZ2h0fS5wYWdlciAucHJldmlvdXM+YSwucGFnZXIgLnByZXZpb3VzPnNwYW57ZmxvYXQ6bGVmdH0ucGFnZXIgLmRpc2FibGVkPmEsLnBhZ2VyIC5kaXNhYmxlZD5hOmZvY3VzLC5wYWdlciAuZGlzYWJsZWQ+YTpob3ZlciwucGFnZXIgLmRpc2FibGVkPnNwYW57Y29sb3I6Izc3NztjdXJzb3I6bm90LWFsbG93ZWQ7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5sYWJlbHtkaXNwbGF5OmlubGluZTtwYWRkaW5nOi4yZW0gLjZlbSAuM2VtO2ZvbnQtc2l6ZTo3NSU7Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjE7Y29sb3I6I2ZmZjt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7Ym9yZGVyLXJhZGl1czouMjVlbX1hLmxhYmVsOmZvY3VzLGEubGFiZWw6aG92ZXJ7Y29sb3I6I2ZmZjt0ZXh0LWRlY29yYXRpb246bm9uZTtjdXJzb3I6cG9pbnRlcn0ubGFiZWw6ZW1wdHl7ZGlzcGxheTpub25lfS5idG4gLmxhYmVse3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDotMXB4fS5sYWJlbC1kZWZhdWx0e2JhY2tncm91bmQtY29sb3I6Izc3N30ubGFiZWwtZGVmYXVsdFtocmVmXTpmb2N1cywubGFiZWwtZGVmYXVsdFtocmVmXTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiM1ZTVlNWV9LmxhYmVsLXByaW1hcnl7YmFja2dyb3VuZC1jb2xvcjojMzM3YWI3fS5sYWJlbC1wcmltYXJ5W2hyZWZdOmZvY3VzLC5sYWJlbC1wcmltYXJ5W2hyZWZdOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzI4NjA5MH0ubGFiZWwtc3VjY2Vzc3tiYWNrZ3JvdW5kLWNvbG9yOiM1Y2I4NWN9LmxhYmVsLXN1Y2Nlc3NbaHJlZl06Zm9jdXMsLmxhYmVsLXN1Y2Nlc3NbaHJlZl06aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojNDQ5ZDQ0fS5sYWJlbC1pbmZve2JhY2tncm91bmQtY29sb3I6IzViYzBkZX0ubGFiZWwtaW5mb1tocmVmXTpmb2N1cywubGFiZWwtaW5mb1tocmVmXTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiMzMWIwZDV9LmxhYmVsLXdhcm5pbmd7YmFja2dyb3VuZC1jb2xvcjojZjBhZDRlfS5sYWJlbC13YXJuaW5nW2hyZWZdOmZvY3VzLC5sYWJlbC13YXJuaW5nW2hyZWZdOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2VjOTcxZn0ubGFiZWwtZGFuZ2Vye2JhY2tncm91bmQtY29sb3I6I2Q5NTM0Zn0ubGFiZWwtZGFuZ2VyW2hyZWZdOmZvY3VzLC5sYWJlbC1kYW5nZXJbaHJlZl06aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojYzkzMDJjfS5iYWRnZXtkaXNwbGF5OmlubGluZS1ibG9jazttaW4td2lkdGg6MTBweDtwYWRkaW5nOjNweCA3cHg7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjE7Y29sb3I6I2ZmZjt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7dmVydGljYWwtYWxpZ246bWlkZGxlO2JhY2tncm91bmQtY29sb3I6Izc3Nztib3JkZXItcmFkaXVzOjEwcHh9LmJhZGdlOmVtcHR5e2Rpc3BsYXk6bm9uZX0uYnRuIC5iYWRnZXtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6LTFweH0uYnRuLWdyb3VwLXhzPi5idG4gLmJhZGdlLC5idG4teHMgLmJhZGdle3RvcDowO3BhZGRpbmc6MXB4IDVweH1hLmJhZGdlOmZvY3VzLGEuYmFkZ2U6aG92ZXJ7Y29sb3I6I2ZmZjt0ZXh0LWRlY29yYXRpb246bm9uZTtjdXJzb3I6cG9pbnRlcn0ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZT4uYmFkZ2UsLm5hdi1waWxscz4uYWN0aXZlPmE+LmJhZGdle2NvbG9yOiMzMzdhYjc7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5saXN0LWdyb3VwLWl0ZW0+LmJhZGdle2Zsb2F0OnJpZ2h0fS5saXN0LWdyb3VwLWl0ZW0+LmJhZGdlKy5iYWRnZXttYXJnaW4tcmlnaHQ6NXB4fS5uYXYtcGlsbHM+bGk+YT4uYmFkZ2V7bWFyZ2luLWxlZnQ6M3B4fS5qdW1ib3Ryb257cGFkZGluZy10b3A6MzBweDtwYWRkaW5nLWJvdHRvbTozMHB4O21hcmdpbi1ib3R0b206MzBweDtjb2xvcjppbmhlcml0O2JhY2tncm91bmQtY29sb3I6I2VlZX0uanVtYm90cm9uIC5oMSwuanVtYm90cm9uIGgxe2NvbG9yOmluaGVyaXR9Lmp1bWJvdHJvbiBwe21hcmdpbi1ib3R0b206MTVweDtmb250LXNpemU6MjFweDtmb250LXdlaWdodDoyMDB9Lmp1bWJvdHJvbj5ocntib3JkZXItdG9wLWNvbG9yOiNkNWQ1ZDV9LmNvbnRhaW5lciAuanVtYm90cm9uLC5jb250YWluZXItZmx1aWQgLmp1bWJvdHJvbntwYWRkaW5nLXJpZ2h0OjE1cHg7cGFkZGluZy1sZWZ0OjE1cHg7Ym9yZGVyLXJhZGl1czo2cHh9Lmp1bWJvdHJvbiAuY29udGFpbmVye21heC13aWR0aDoxMDAlfUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NzY4cHgpey5qdW1ib3Ryb257cGFkZGluZy10b3A6NDhweDtwYWRkaW5nLWJvdHRvbTo0OHB4fS5jb250YWluZXIgLmp1bWJvdHJvbiwuY29udGFpbmVyLWZsdWlkIC5qdW1ib3Ryb257cGFkZGluZy1yaWdodDo2MHB4O3BhZGRpbmctbGVmdDo2MHB4fS5qdW1ib3Ryb24gLmgxLC5qdW1ib3Ryb24gaDF7Zm9udC1zaXplOjYzcHh9fS50aHVtYm5haWx7ZGlzcGxheTpibG9jaztwYWRkaW5nOjRweDttYXJnaW4tYm90dG9tOjIwcHg7bGluZS1oZWlnaHQ6MS40Mjg1NzE0MztiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZGRkO2JvcmRlci1yYWRpdXM6NHB4Oy13ZWJraXQtdHJhbnNpdGlvbjpib3JkZXIgLjJzIGVhc2UtaW4tb3V0Oy1vLXRyYW5zaXRpb246Ym9yZGVyIC4ycyBlYXNlLWluLW91dDt0cmFuc2l0aW9uOmJvcmRlciAuMnMgZWFzZS1pbi1vdXR9LnRodW1ibmFpbCBhPmltZywudGh1bWJuYWlsPmltZ3ttYXJnaW4tcmlnaHQ6YXV0bzttYXJnaW4tbGVmdDphdXRvfWEudGh1bWJuYWlsLmFjdGl2ZSxhLnRodW1ibmFpbDpmb2N1cyxhLnRodW1ibmFpbDpob3Zlcntib3JkZXItY29sb3I6IzMzN2FiN30udGh1bWJuYWlsIC5jYXB0aW9ue3BhZGRpbmc6OXB4O2NvbG9yOiMzMzN9LmFsZXJ0e3BhZGRpbmc6MTVweDttYXJnaW4tYm90dG9tOjIwcHg7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjRweH0uYWxlcnQgaDR7bWFyZ2luLXRvcDowO2NvbG9yOmluaGVyaXR9LmFsZXJ0IC5hbGVydC1saW5re2ZvbnQtd2VpZ2h0OjcwMH0uYWxlcnQ+cCwuYWxlcnQ+dWx7bWFyZ2luLWJvdHRvbTowfS5hbGVydD5wK3B7bWFyZ2luLXRvcDo1cHh9LmFsZXJ0LWRpc21pc3NhYmxlLC5hbGVydC1kaXNtaXNzaWJsZXtwYWRkaW5nLXJpZ2h0OjM1cHh9LmFsZXJ0LWRpc21pc3NhYmxlIC5jbG9zZSwuYWxlcnQtZGlzbWlzc2libGUgLmNsb3Nle3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDotMnB4O3JpZ2h0Oi0yMXB4O2NvbG9yOmluaGVyaXR9LmFsZXJ0LXN1Y2Nlc3N7Y29sb3I6IzNjNzYzZDtiYWNrZ3JvdW5kLWNvbG9yOiNkZmYwZDg7Ym9yZGVyLWNvbG9yOiNkNmU5YzZ9LmFsZXJ0LXN1Y2Nlc3MgaHJ7Ym9yZGVyLXRvcC1jb2xvcjojYzllMmIzfS5hbGVydC1zdWNjZXNzIC5hbGVydC1saW5re2NvbG9yOiMyYjU0MmN9LmFsZXJ0LWluZm97Y29sb3I6IzMxNzA4ZjtiYWNrZ3JvdW5kLWNvbG9yOiNkOWVkZjc7Ym9yZGVyLWNvbG9yOiNiY2U4ZjF9LmFsZXJ0LWluZm8gaHJ7Ym9yZGVyLXRvcC1jb2xvcjojYTZlMWVjfS5hbGVydC1pbmZvIC5hbGVydC1saW5re2NvbG9yOiMyNDUyNjl9LmFsZXJ0LXdhcm5pbmd7Y29sb3I6IzhhNmQzYjtiYWNrZ3JvdW5kLWNvbG9yOiNmY2Y4ZTM7Ym9yZGVyLWNvbG9yOiNmYWViY2N9LmFsZXJ0LXdhcm5pbmcgaHJ7Ym9yZGVyLXRvcC1jb2xvcjojZjdlMWI1fS5hbGVydC13YXJuaW5nIC5hbGVydC1saW5re2NvbG9yOiM2NjUxMmN9LmFsZXJ0LWRhbmdlcntjb2xvcjojYTk0NDQyO2JhY2tncm91bmQtY29sb3I6I2YyZGVkZTtib3JkZXItY29sb3I6I2ViY2NkMX0uYWxlcnQtZGFuZ2VyIGhye2JvcmRlci10b3AtY29sb3I6I2U0YjljMH0uYWxlcnQtZGFuZ2VyIC5hbGVydC1saW5re2NvbG9yOiM4NDM1MzR9QC13ZWJraXQta2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVze2Zyb217YmFja2dyb3VuZC1wb3NpdGlvbjo0MHB4IDB9dG97YmFja2dyb3VuZC1wb3NpdGlvbjowIDB9fUAtby1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXN7ZnJvbXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjQwcHggMH10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgMH19QGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlc3tmcm9te2JhY2tncm91bmQtcG9zaXRpb246NDBweCAwfXRve2JhY2tncm91bmQtcG9zaXRpb246MCAwfX0ucHJvZ3Jlc3N7aGVpZ2h0OjIwcHg7bWFyZ2luLWJvdHRvbToyMHB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kLWNvbG9yOiNmNWY1ZjU7Ym9yZGVyLXJhZGl1czo0cHg7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKX0ucHJvZ3Jlc3MtYmFye2Zsb2F0OmxlZnQ7d2lkdGg6MDtoZWlnaHQ6MTAwJTtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoyMHB4O2NvbG9yOiNmZmY7dGV4dC1hbGlnbjpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjojMzM3YWI3Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIC0xcHggMCByZ2JhKDAsMCwwLC4xNSk7Ym94LXNoYWRvdzppbnNldCAwIC0xcHggMCByZ2JhKDAsMCwwLC4xNSk7LXdlYmtpdC10cmFuc2l0aW9uOndpZHRoIC42cyBlYXNlOy1vLXRyYW5zaXRpb246d2lkdGggLjZzIGVhc2U7dHJhbnNpdGlvbjp3aWR0aCAuNnMgZWFzZX0ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQsLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhcntiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KDQ1ZGVnLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSAyNSUsdHJhbnNwYXJlbnQgMjUlLHRyYW5zcGFyZW50IDUwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsdHJhbnNwYXJlbnQgNzUlLHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCg0NWRlZyxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgMjUlLHRyYW5zcGFyZW50IDI1JSx0cmFuc3BhcmVudCA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDUwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNzUlLHRyYW5zcGFyZW50IDc1JSx0cmFuc3BhcmVudCk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoNDVkZWcscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSx0cmFuc3BhcmVudCAyNSUsdHJhbnNwYXJlbnQgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSx0cmFuc3BhcmVudCA3NSUsdHJhbnNwYXJlbnQpOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOjQwcHggNDBweDtiYWNrZ3JvdW5kLXNpemU6NDBweCA0MHB4fS5wcm9ncmVzcy1iYXIuYWN0aXZlLC5wcm9ncmVzcy5hY3RpdmUgLnByb2dyZXNzLWJhcnstd2Via2l0LWFuaW1hdGlvbjpwcm9ncmVzcy1iYXItc3RyaXBlcyAycyBsaW5lYXIgaW5maW5pdGU7LW8tYW5pbWF0aW9uOnByb2dyZXNzLWJhci1zdHJpcGVzIDJzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246cHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlfS5wcm9ncmVzcy1iYXItc3VjY2Vzc3tiYWNrZ3JvdW5kLWNvbG9yOiM1Y2I4NWN9LnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhci1zdWNjZXNze2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQoNDVkZWcscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSx0cmFuc3BhcmVudCAyNSUsdHJhbnNwYXJlbnQgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSx0cmFuc3BhcmVudCA3NSUsdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KDQ1ZGVnLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSAyNSUsdHJhbnNwYXJlbnQgMjUlLHRyYW5zcGFyZW50IDUwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsdHJhbnNwYXJlbnQgNzUlLHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg0NWRlZyxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgMjUlLHRyYW5zcGFyZW50IDI1JSx0cmFuc3BhcmVudCA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDUwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNzUlLHRyYW5zcGFyZW50IDc1JSx0cmFuc3BhcmVudCl9LnByb2dyZXNzLWJhci1pbmZve2JhY2tncm91bmQtY29sb3I6IzViYzBkZX0ucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyLWluZm97YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWxpbmVhci1ncmFkaWVudCg0NWRlZyxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgMjUlLHRyYW5zcGFyZW50IDI1JSx0cmFuc3BhcmVudCA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDUwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNzUlLHRyYW5zcGFyZW50IDc1JSx0cmFuc3BhcmVudCk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQoNDVkZWcscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSx0cmFuc3BhcmVudCAyNSUsdHJhbnNwYXJlbnQgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSx0cmFuc3BhcmVudCA3NSUsdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSAyNSUsdHJhbnNwYXJlbnQgMjUlLHRyYW5zcGFyZW50IDUwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsdHJhbnNwYXJlbnQgNzUlLHRyYW5zcGFyZW50KX0ucHJvZ3Jlc3MtYmFyLXdhcm5pbmd7YmFja2dyb3VuZC1jb2xvcjojZjBhZDRlfS5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXItd2FybmluZ3tiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KDQ1ZGVnLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSAyNSUsdHJhbnNwYXJlbnQgMjUlLHRyYW5zcGFyZW50IDUwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsdHJhbnNwYXJlbnQgNzUlLHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCg0NWRlZyxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgMjUlLHRyYW5zcGFyZW50IDI1JSx0cmFuc3BhcmVudCA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDUwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNzUlLHRyYW5zcGFyZW50IDc1JSx0cmFuc3BhcmVudCk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoNDVkZWcscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSx0cmFuc3BhcmVudCAyNSUsdHJhbnNwYXJlbnQgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSx0cmFuc3BhcmVudCA3NSUsdHJhbnNwYXJlbnQpfS5wcm9ncmVzcy1iYXItZGFuZ2Vye2JhY2tncm91bmQtY29sb3I6I2Q5NTM0Zn0ucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyLWRhbmdlcntiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KDQ1ZGVnLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSAyNSUsdHJhbnNwYXJlbnQgMjUlLHRyYW5zcGFyZW50IDUwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsdHJhbnNwYXJlbnQgNzUlLHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCg0NWRlZyxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgMjUlLHRyYW5zcGFyZW50IDI1JSx0cmFuc3BhcmVudCA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDUwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNzUlLHRyYW5zcGFyZW50IDc1JSx0cmFuc3BhcmVudCk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoNDVkZWcscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSx0cmFuc3BhcmVudCAyNSUsdHJhbnNwYXJlbnQgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSx0cmFuc3BhcmVudCA3NSUsdHJhbnNwYXJlbnQpfS5tZWRpYXttYXJnaW4tdG9wOjE1cHh9Lm1lZGlhOmZpcnN0LWNoaWxke21hcmdpbi10b3A6MH0ubWVkaWEsLm1lZGlhLWJvZHl7b3ZlcmZsb3c6aGlkZGVuO3pvb206MX0ubWVkaWEtYm9keXt3aWR0aDoxMDAwMHB4fS5tZWRpYS1vYmplY3R7ZGlzcGxheTpibG9ja30ubWVkaWEtb2JqZWN0LmltZy10aHVtYm5haWx7bWF4LXdpZHRoOm5vbmV9Lm1lZGlhLXJpZ2h0LC5tZWRpYT4ucHVsbC1yaWdodHtwYWRkaW5nLWxlZnQ6MTBweH0ubWVkaWEtbGVmdCwubWVkaWE+LnB1bGwtbGVmdHtwYWRkaW5nLXJpZ2h0OjEwcHh9Lm1lZGlhLWJvZHksLm1lZGlhLWxlZnQsLm1lZGlhLXJpZ2h0e2Rpc3BsYXk6dGFibGUtY2VsbDt2ZXJ0aWNhbC1hbGlnbjp0b3B9Lm1lZGlhLW1pZGRsZXt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lm1lZGlhLWJvdHRvbXt2ZXJ0aWNhbC1hbGlnbjpib3R0b219Lm1lZGlhLWhlYWRpbmd7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206NXB4fS5tZWRpYS1saXN0e3BhZGRpbmctbGVmdDowO2xpc3Qtc3R5bGU6bm9uZX0ubGlzdC1ncm91cHtwYWRkaW5nLWxlZnQ6MDttYXJnaW4tYm90dG9tOjIwcHh9Lmxpc3QtZ3JvdXAtaXRlbXtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MTBweCAxNXB4O21hcmdpbi1ib3R0b206LTFweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZGRkfS5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo0cHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6NHB4fS5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NHB4O2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6NHB4fWEubGlzdC1ncm91cC1pdGVtLGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW17Y29sb3I6IzU1NX1hLmxpc3QtZ3JvdXAtaXRlbSAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmd7Y29sb3I6IzMzM31hLmxpc3QtZ3JvdXAtaXRlbTpmb2N1cyxhLmxpc3QtZ3JvdXAtaXRlbTpob3ZlcixidXR0b24ubGlzdC1ncm91cC1pdGVtOmZvY3VzLGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW06aG92ZXJ7Y29sb3I6IzU1NTt0ZXh0LWRlY29yYXRpb246bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiNmNWY1ZjV9YnV0dG9uLmxpc3QtZ3JvdXAtaXRlbXt3aWR0aDoxMDAlO3RleHQtYWxpZ246bGVmdH0ubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkLC5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQ6Zm9jdXMsLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZDpob3Zlcntjb2xvcjojNzc3O2N1cnNvcjpub3QtYWxsb3dlZDtiYWNrZ3JvdW5kLWNvbG9yOiNlZWV9Lmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZCAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZDpmb2N1cyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZDpob3ZlciAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmd7Y29sb3I6aW5oZXJpdH0ubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCwubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkOmZvY3VzIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCwubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkOmhvdmVyIC5saXN0LWdyb3VwLWl0ZW0tdGV4dHtjb2xvcjojNzc3fS5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlLC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmZvY3VzLC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmhvdmVye3otaW5kZXg6Mjtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzMzN2FiNztib3JkZXItY29sb3I6IzMzN2FiN30ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nPi5zbWFsbCwubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmc+c21hbGwsLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6Zm9jdXMgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmZvY3VzIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZz4uc21hbGwsLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6Zm9jdXMgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nPnNtYWxsLC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmhvdmVyIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZywubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpob3ZlciAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmc+LnNtYWxsLC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmhvdmVyIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZz5zbWFsbHtjb2xvcjppbmhlcml0fS5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCwubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpmb2N1cyAubGlzdC1ncm91cC1pdGVtLXRleHQsLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6aG92ZXIgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0e2NvbG9yOiNjN2RkZWZ9Lmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNze2NvbG9yOiMzYzc2M2Q7YmFja2dyb3VuZC1jb2xvcjojZGZmMGQ4fWEubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MsYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNze2NvbG9yOiMzYzc2M2R9YS5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZ3tjb2xvcjppbmhlcml0fWEubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3M6Zm9jdXMsYS5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzczpob3ZlcixidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3M6Zm9jdXMsYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzOmhvdmVye2NvbG9yOiMzYzc2M2Q7YmFja2dyb3VuZC1jb2xvcjojZDBlOWM2fWEubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlLGEubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlOmZvY3VzLGEubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlOmhvdmVyLGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5hY3RpdmUsYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmFjdGl2ZTpmb2N1cyxidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojM2M3NjNkO2JvcmRlci1jb2xvcjojM2M3NjNkfS5saXN0LWdyb3VwLWl0ZW0taW5mb3tjb2xvcjojMzE3MDhmO2JhY2tncm91bmQtY29sb3I6I2Q5ZWRmN31hLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mb3tjb2xvcjojMzE3MDhmfWEubGlzdC1ncm91cC1pdGVtLWluZm8gLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mbyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmd7Y29sb3I6aW5oZXJpdH1hLmxpc3QtZ3JvdXAtaXRlbS1pbmZvOmZvY3VzLGEubGlzdC1ncm91cC1pdGVtLWluZm86aG92ZXIsYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1pbmZvOmZvY3VzLGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mbzpob3Zlcntjb2xvcjojMzE3MDhmO2JhY2tncm91bmQtY29sb3I6I2M0ZTNmM31hLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmFjdGl2ZSxhLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmFjdGl2ZTpmb2N1cyxhLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmFjdGl2ZTpob3ZlcixidXR0b24ubGlzdC1ncm91cC1pdGVtLWluZm8uYWN0aXZlLGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mby5hY3RpdmU6Zm9jdXMsYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmFjdGl2ZTpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzMxNzA4Zjtib3JkZXItY29sb3I6IzMxNzA4Zn0ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmd7Y29sb3I6IzhhNmQzYjtiYWNrZ3JvdW5kLWNvbG9yOiNmY2Y4ZTN9YS5saXN0LWdyb3VwLWl0ZW0td2FybmluZyxidXR0b24ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmd7Y29sb3I6IzhhNmQzYn1hLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxidXR0b24ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5ne2NvbG9yOmluaGVyaXR9YS5saXN0LWdyb3VwLWl0ZW0td2FybmluZzpmb2N1cyxhLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nOmhvdmVyLGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZzpmb2N1cyxidXR0b24ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmc6aG92ZXJ7Y29sb3I6IzhhNmQzYjtiYWNrZ3JvdW5kLWNvbG9yOiNmYWYyY2N9YS5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5hY3RpdmUsYS5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5hY3RpdmU6Zm9jdXMsYS5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5hY3RpdmU6aG92ZXIsYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmFjdGl2ZSxidXR0b24ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcuYWN0aXZlOmZvY3VzLGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5hY3RpdmU6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM4YTZkM2I7Ym9yZGVyLWNvbG9yOiM4YTZkM2J9Lmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXJ7Y29sb3I6I2E5NDQ0MjtiYWNrZ3JvdW5kLWNvbG9yOiNmMmRlZGV9YS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2Vye2NvbG9yOiNhOTQ0NDJ9YS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxidXR0b24ubGlzdC1ncm91cC1pdGVtLWRhbmdlciAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmd7Y29sb3I6aW5oZXJpdH1hLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXI6Zm9jdXMsYS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyOmhvdmVyLGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyOmZvY3VzLGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyOmhvdmVye2NvbG9yOiNhOTQ0NDI7YmFja2dyb3VuZC1jb2xvcjojZWJjY2NjfWEubGlzdC1ncm91cC1pdGVtLWRhbmdlci5hY3RpdmUsYS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmFjdGl2ZTpmb2N1cyxhLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIuYWN0aXZlOmhvdmVyLGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmFjdGl2ZSxidXR0b24ubGlzdC1ncm91cC1pdGVtLWRhbmdlci5hY3RpdmU6Zm9jdXMsYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIuYWN0aXZlOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojYTk0NDQyO2JvcmRlci1jb2xvcjojYTk0NDQyfS5saXN0LWdyb3VwLWl0ZW0taGVhZGluZ3ttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTo1cHh9Lmxpc3QtZ3JvdXAtaXRlbS10ZXh0e21hcmdpbi1ib3R0b206MDtsaW5lLWhlaWdodDoxLjN9LnBhbmVse21hcmdpbi1ib3R0b206MjBweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjRweDstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjA1KTtib3gtc2hhZG93OjAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSl9LnBhbmVsLWJvZHl7cGFkZGluZzoxNXB4fS5wYW5lbC1oZWFkaW5ne3BhZGRpbmc6MTBweCAxNXB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3AtbGVmdC1yYWRpdXM6M3B4O2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjNweH0ucGFuZWwtaGVhZGluZz4uZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZXtjb2xvcjppbmhlcml0fS5wYW5lbC10aXRsZXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowO2ZvbnQtc2l6ZToxNnB4O2NvbG9yOmluaGVyaXR9LnBhbmVsLXRpdGxlPi5zbWFsbCwucGFuZWwtdGl0bGU+LnNtYWxsPmEsLnBhbmVsLXRpdGxlPmEsLnBhbmVsLXRpdGxlPnNtYWxsLC5wYW5lbC10aXRsZT5zbWFsbD5he2NvbG9yOmluaGVyaXR9LnBhbmVsLWZvb3RlcntwYWRkaW5nOjEwcHggMTVweDtiYWNrZ3JvdW5kLWNvbG9yOiNmNWY1ZjU7Ym9yZGVyLXRvcDoxcHggc29saWQgI2RkZDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czozcHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czozcHh9LnBhbmVsPi5saXN0LWdyb3VwLC5wYW5lbD4ucGFuZWwtY29sbGFwc2U+Lmxpc3QtZ3JvdXB7bWFyZ2luLWJvdHRvbTowfS5wYW5lbD4ubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtLC5wYW5lbD4ucGFuZWwtY29sbGFwc2U+Lmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbXtib3JkZXItd2lkdGg6MXB4IDA7Ym9yZGVyLXJhZGl1czowfS5wYW5lbD4ubGlzdC1ncm91cDpmaXJzdC1jaGlsZCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkLC5wYW5lbD4ucGFuZWwtY29sbGFwc2U+Lmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZHtib3JkZXItdG9wOjA7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czozcHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6M3B4fS5wYW5lbD4ubGlzdC1ncm91cDpsYXN0LWNoaWxkIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCwucGFuZWw+LnBhbmVsLWNvbGxhcHNlPi5saXN0LWdyb3VwOmxhc3QtY2hpbGQgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxke2JvcmRlci1ib3R0b206MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czozcHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czozcHh9LnBhbmVsPi5wYW5lbC1oZWFkaW5nKy5wYW5lbC1jb2xsYXBzZT4ubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxke2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5wYW5lbC1oZWFkaW5nKy5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC13aWR0aDowfS5saXN0LWdyb3VwKy5wYW5lbC1mb290ZXJ7Ym9yZGVyLXRvcC13aWR0aDowfS5wYW5lbD4ucGFuZWwtY29sbGFwc2U+LnRhYmxlLC5wYW5lbD4udGFibGUsLnBhbmVsPi50YWJsZS1yZXNwb25zaXZlPi50YWJsZXttYXJnaW4tYm90dG9tOjB9LnBhbmVsPi5wYW5lbC1jb2xsYXBzZT4udGFibGUgY2FwdGlvbiwucGFuZWw+LnRhYmxlIGNhcHRpb24sLnBhbmVsPi50YWJsZS1yZXNwb25zaXZlPi50YWJsZSBjYXB0aW9ue3BhZGRpbmctcmlnaHQ6MTVweDtwYWRkaW5nLWxlZnQ6MTVweH0ucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQ+LnRhYmxlOmZpcnN0LWNoaWxkLC5wYW5lbD4udGFibGU6Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czozcHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6M3B4fS5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZD4udGFibGU6Zmlyc3QtY2hpbGQ+dGJvZHk6Zmlyc3QtY2hpbGQ+dHI6Zmlyc3QtY2hpbGQsLnBhbmVsPi50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkPi50YWJsZTpmaXJzdC1jaGlsZD50aGVhZDpmaXJzdC1jaGlsZD50cjpmaXJzdC1jaGlsZCwucGFuZWw+LnRhYmxlOmZpcnN0LWNoaWxkPnRib2R5OmZpcnN0LWNoaWxkPnRyOmZpcnN0LWNoaWxkLC5wYW5lbD4udGFibGU6Zmlyc3QtY2hpbGQ+dGhlYWQ6Zmlyc3QtY2hpbGQ+dHI6Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czozcHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6M3B4fS5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZD4udGFibGU6Zmlyc3QtY2hpbGQ+dGJvZHk6Zmlyc3QtY2hpbGQ+dHI6Zmlyc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsLnBhbmVsPi50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkPi50YWJsZTpmaXJzdC1jaGlsZD50Ym9keTpmaXJzdC1jaGlsZD50cjpmaXJzdC1jaGlsZCB0aDpmaXJzdC1jaGlsZCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQ+LnRhYmxlOmZpcnN0LWNoaWxkPnRoZWFkOmZpcnN0LWNoaWxkPnRyOmZpcnN0LWNoaWxkIHRkOmZpcnN0LWNoaWxkLC5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZD4udGFibGU6Zmlyc3QtY2hpbGQ+dGhlYWQ6Zmlyc3QtY2hpbGQ+dHI6Zmlyc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQsLnBhbmVsPi50YWJsZTpmaXJzdC1jaGlsZD50Ym9keTpmaXJzdC1jaGlsZD50cjpmaXJzdC1jaGlsZCB0ZDpmaXJzdC1jaGlsZCwucGFuZWw+LnRhYmxlOmZpcnN0LWNoaWxkPnRib2R5OmZpcnN0LWNoaWxkPnRyOmZpcnN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkLC5wYW5lbD4udGFibGU6Zmlyc3QtY2hpbGQ+dGhlYWQ6Zmlyc3QtY2hpbGQ+dHI6Zmlyc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsLnBhbmVsPi50YWJsZTpmaXJzdC1jaGlsZD50aGVhZDpmaXJzdC1jaGlsZD50cjpmaXJzdC1jaGlsZCB0aDpmaXJzdC1jaGlsZHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjNweH0ucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQ+LnRhYmxlOmZpcnN0LWNoaWxkPnRib2R5OmZpcnN0LWNoaWxkPnRyOmZpcnN0LWNoaWxkIHRkOmxhc3QtY2hpbGQsLnBhbmVsPi50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkPi50YWJsZTpmaXJzdC1jaGlsZD50Ym9keTpmaXJzdC1jaGlsZD50cjpmaXJzdC1jaGlsZCB0aDpsYXN0LWNoaWxkLC5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZD4udGFibGU6Zmlyc3QtY2hpbGQ+dGhlYWQ6Zmlyc3QtY2hpbGQ+dHI6Zmlyc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQ+LnRhYmxlOmZpcnN0LWNoaWxkPnRoZWFkOmZpcnN0LWNoaWxkPnRyOmZpcnN0LWNoaWxkIHRoOmxhc3QtY2hpbGQsLnBhbmVsPi50YWJsZTpmaXJzdC1jaGlsZD50Ym9keTpmaXJzdC1jaGlsZD50cjpmaXJzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkLC5wYW5lbD4udGFibGU6Zmlyc3QtY2hpbGQ+dGJvZHk6Zmlyc3QtY2hpbGQ+dHI6Zmlyc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCwucGFuZWw+LnRhYmxlOmZpcnN0LWNoaWxkPnRoZWFkOmZpcnN0LWNoaWxkPnRyOmZpcnN0LWNoaWxkIHRkOmxhc3QtY2hpbGQsLnBhbmVsPi50YWJsZTpmaXJzdC1jaGlsZD50aGVhZDpmaXJzdC1jaGlsZD50cjpmaXJzdC1jaGlsZCB0aDpsYXN0LWNoaWxke2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjNweH0ucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZD4udGFibGU6bGFzdC1jaGlsZCwucGFuZWw+LnRhYmxlOmxhc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6M3B4O2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6M3B4fS5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkPi50YWJsZTpsYXN0LWNoaWxkPnRib2R5Omxhc3QtY2hpbGQ+dHI6bGFzdC1jaGlsZCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZD4udGFibGU6bGFzdC1jaGlsZD50Zm9vdDpsYXN0LWNoaWxkPnRyOmxhc3QtY2hpbGQsLnBhbmVsPi50YWJsZTpsYXN0LWNoaWxkPnRib2R5Omxhc3QtY2hpbGQ+dHI6bGFzdC1jaGlsZCwucGFuZWw+LnRhYmxlOmxhc3QtY2hpbGQ+dGZvb3Q6bGFzdC1jaGlsZD50cjpsYXN0LWNoaWxke2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjNweDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjNweH0ucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZD4udGFibGU6bGFzdC1jaGlsZD50Ym9keTpsYXN0LWNoaWxkPnRyOmxhc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsLnBhbmVsPi50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQ+LnRhYmxlOmxhc3QtY2hpbGQ+dGJvZHk6bGFzdC1jaGlsZD50cjpsYXN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkLC5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkPi50YWJsZTpsYXN0LWNoaWxkPnRmb290Omxhc3QtY2hpbGQ+dHI6bGFzdC1jaGlsZCB0ZDpmaXJzdC1jaGlsZCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZD4udGFibGU6bGFzdC1jaGlsZD50Zm9vdDpsYXN0LWNoaWxkPnRyOmxhc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQsLnBhbmVsPi50YWJsZTpsYXN0LWNoaWxkPnRib2R5Omxhc3QtY2hpbGQ+dHI6bGFzdC1jaGlsZCB0ZDpmaXJzdC1jaGlsZCwucGFuZWw+LnRhYmxlOmxhc3QtY2hpbGQ+dGJvZHk6bGFzdC1jaGlsZD50cjpsYXN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkLC5wYW5lbD4udGFibGU6bGFzdC1jaGlsZD50Zm9vdDpsYXN0LWNoaWxkPnRyOmxhc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsLnBhbmVsPi50YWJsZTpsYXN0LWNoaWxkPnRmb290Omxhc3QtY2hpbGQ+dHI6bGFzdC1jaGlsZCB0aDpmaXJzdC1jaGlsZHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjNweH0ucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZD4udGFibGU6bGFzdC1jaGlsZD50Ym9keTpsYXN0LWNoaWxkPnRyOmxhc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZD4udGFibGU6bGFzdC1jaGlsZD50Ym9keTpsYXN0LWNoaWxkPnRyOmxhc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZD4udGFibGU6bGFzdC1jaGlsZD50Zm9vdDpsYXN0LWNoaWxkPnRyOmxhc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZD4udGFibGU6bGFzdC1jaGlsZD50Zm9vdDpsYXN0LWNoaWxkPnRyOmxhc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCwucGFuZWw+LnRhYmxlOmxhc3QtY2hpbGQ+dGJvZHk6bGFzdC1jaGlsZD50cjpsYXN0LWNoaWxkIHRkOmxhc3QtY2hpbGQsLnBhbmVsPi50YWJsZTpsYXN0LWNoaWxkPnRib2R5Omxhc3QtY2hpbGQ+dHI6bGFzdC1jaGlsZCB0aDpsYXN0LWNoaWxkLC5wYW5lbD4udGFibGU6bGFzdC1jaGlsZD50Zm9vdDpsYXN0LWNoaWxkPnRyOmxhc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCwucGFuZWw+LnRhYmxlOmxhc3QtY2hpbGQ+dGZvb3Q6bGFzdC1jaGlsZD50cjpsYXN0LWNoaWxkIHRoOmxhc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6M3B4fS5wYW5lbD4ucGFuZWwtYm9keSsudGFibGUsLnBhbmVsPi5wYW5lbC1ib2R5Ky50YWJsZS1yZXNwb25zaXZlLC5wYW5lbD4udGFibGUrLnBhbmVsLWJvZHksLnBhbmVsPi50YWJsZS1yZXNwb25zaXZlKy5wYW5lbC1ib2R5e2JvcmRlci10b3A6MXB4IHNvbGlkICNkZGR9LnBhbmVsPi50YWJsZT50Ym9keTpmaXJzdC1jaGlsZD50cjpmaXJzdC1jaGlsZCB0ZCwucGFuZWw+LnRhYmxlPnRib2R5OmZpcnN0LWNoaWxkPnRyOmZpcnN0LWNoaWxkIHRoe2JvcmRlci10b3A6MH0ucGFuZWw+LnRhYmxlLWJvcmRlcmVkLC5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWR7Ym9yZGVyOjB9LnBhbmVsPi50YWJsZS1ib3JkZXJlZD50Ym9keT50cj50ZDpmaXJzdC1jaGlsZCwucGFuZWw+LnRhYmxlLWJvcmRlcmVkPnRib2R5PnRyPnRoOmZpcnN0LWNoaWxkLC5wYW5lbD4udGFibGUtYm9yZGVyZWQ+dGZvb3Q+dHI+dGQ6Zmlyc3QtY2hpbGQsLnBhbmVsPi50YWJsZS1ib3JkZXJlZD50Zm9vdD50cj50aDpmaXJzdC1jaGlsZCwucGFuZWw+LnRhYmxlLWJvcmRlcmVkPnRoZWFkPnRyPnRkOmZpcnN0LWNoaWxkLC5wYW5lbD4udGFibGUtYm9yZGVyZWQ+dGhlYWQ+dHI+dGg6Zmlyc3QtY2hpbGQsLnBhbmVsPi50YWJsZS1yZXNwb25zaXZlPi50YWJsZS1ib3JkZXJlZD50Ym9keT50cj50ZDpmaXJzdC1jaGlsZCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU+LnRhYmxlLWJvcmRlcmVkPnRib2R5PnRyPnRoOmZpcnN0LWNoaWxkLC5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGZvb3Q+dHI+dGQ6Zmlyc3QtY2hpbGQsLnBhbmVsPi50YWJsZS1yZXNwb25zaXZlPi50YWJsZS1ib3JkZXJlZD50Zm9vdD50cj50aDpmaXJzdC1jaGlsZCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU+LnRhYmxlLWJvcmRlcmVkPnRoZWFkPnRyPnRkOmZpcnN0LWNoaWxkLC5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGhlYWQ+dHI+dGg6Zmlyc3QtY2hpbGR7Ym9yZGVyLWxlZnQ6MH0ucGFuZWw+LnRhYmxlLWJvcmRlcmVkPnRib2R5PnRyPnRkOmxhc3QtY2hpbGQsLnBhbmVsPi50YWJsZS1ib3JkZXJlZD50Ym9keT50cj50aDpsYXN0LWNoaWxkLC5wYW5lbD4udGFibGUtYm9yZGVyZWQ+dGZvb3Q+dHI+dGQ6bGFzdC1jaGlsZCwucGFuZWw+LnRhYmxlLWJvcmRlcmVkPnRmb290PnRyPnRoOmxhc3QtY2hpbGQsLnBhbmVsPi50YWJsZS1ib3JkZXJlZD50aGVhZD50cj50ZDpsYXN0LWNoaWxkLC5wYW5lbD4udGFibGUtYm9yZGVyZWQ+dGhlYWQ+dHI+dGg6bGFzdC1jaGlsZCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU+LnRhYmxlLWJvcmRlcmVkPnRib2R5PnRyPnRkOmxhc3QtY2hpbGQsLnBhbmVsPi50YWJsZS1yZXNwb25zaXZlPi50YWJsZS1ib3JkZXJlZD50Ym9keT50cj50aDpsYXN0LWNoaWxkLC5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGZvb3Q+dHI+dGQ6bGFzdC1jaGlsZCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU+LnRhYmxlLWJvcmRlcmVkPnRmb290PnRyPnRoOmxhc3QtY2hpbGQsLnBhbmVsPi50YWJsZS1yZXNwb25zaXZlPi50YWJsZS1ib3JkZXJlZD50aGVhZD50cj50ZDpsYXN0LWNoaWxkLC5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGhlYWQ+dHI+dGg6bGFzdC1jaGlsZHtib3JkZXItcmlnaHQ6MH0ucGFuZWw+LnRhYmxlLWJvcmRlcmVkPnRib2R5PnRyOmZpcnN0LWNoaWxkPnRkLC5wYW5lbD4udGFibGUtYm9yZGVyZWQ+dGJvZHk+dHI6Zmlyc3QtY2hpbGQ+dGgsLnBhbmVsPi50YWJsZS1ib3JkZXJlZD50aGVhZD50cjpmaXJzdC1jaGlsZD50ZCwucGFuZWw+LnRhYmxlLWJvcmRlcmVkPnRoZWFkPnRyOmZpcnN0LWNoaWxkPnRoLC5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGJvZHk+dHI6Zmlyc3QtY2hpbGQ+dGQsLnBhbmVsPi50YWJsZS1yZXNwb25zaXZlPi50YWJsZS1ib3JkZXJlZD50Ym9keT50cjpmaXJzdC1jaGlsZD50aCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU+LnRhYmxlLWJvcmRlcmVkPnRoZWFkPnRyOmZpcnN0LWNoaWxkPnRkLC5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGhlYWQ+dHI6Zmlyc3QtY2hpbGQ+dGh7Ym9yZGVyLWJvdHRvbTowfS5wYW5lbD4udGFibGUtYm9yZGVyZWQ+dGJvZHk+dHI6bGFzdC1jaGlsZD50ZCwucGFuZWw+LnRhYmxlLWJvcmRlcmVkPnRib2R5PnRyOmxhc3QtY2hpbGQ+dGgsLnBhbmVsPi50YWJsZS1ib3JkZXJlZD50Zm9vdD50cjpsYXN0LWNoaWxkPnRkLC5wYW5lbD4udGFibGUtYm9yZGVyZWQ+dGZvb3Q+dHI6bGFzdC1jaGlsZD50aCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU+LnRhYmxlLWJvcmRlcmVkPnRib2R5PnRyOmxhc3QtY2hpbGQ+dGQsLnBhbmVsPi50YWJsZS1yZXNwb25zaXZlPi50YWJsZS1ib3JkZXJlZD50Ym9keT50cjpsYXN0LWNoaWxkPnRoLC5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQ+dGZvb3Q+dHI6bGFzdC1jaGlsZD50ZCwucGFuZWw+LnRhYmxlLXJlc3BvbnNpdmU+LnRhYmxlLWJvcmRlcmVkPnRmb290PnRyOmxhc3QtY2hpbGQ+dGh7Ym9yZGVyLWJvdHRvbTowfS5wYW5lbD4udGFibGUtcmVzcG9uc2l2ZXttYXJnaW4tYm90dG9tOjA7Ym9yZGVyOjB9LnBhbmVsLWdyb3Vwe21hcmdpbi1ib3R0b206MjBweH0ucGFuZWwtZ3JvdXAgLnBhbmVse21hcmdpbi1ib3R0b206MDtib3JkZXItcmFkaXVzOjRweH0ucGFuZWwtZ3JvdXAgLnBhbmVsKy5wYW5lbHttYXJnaW4tdG9wOjVweH0ucGFuZWwtZ3JvdXAgLnBhbmVsLWhlYWRpbmd7Ym9yZGVyLWJvdHRvbTowfS5wYW5lbC1ncm91cCAucGFuZWwtaGVhZGluZysucGFuZWwtY29sbGFwc2U+Lmxpc3QtZ3JvdXAsLnBhbmVsLWdyb3VwIC5wYW5lbC1oZWFkaW5nKy5wYW5lbC1jb2xsYXBzZT4ucGFuZWwtYm9keXtib3JkZXItdG9wOjFweCBzb2xpZCAjZGRkfS5wYW5lbC1ncm91cCAucGFuZWwtZm9vdGVye2JvcmRlci10b3A6MH0ucGFuZWwtZ3JvdXAgLnBhbmVsLWZvb3RlcisucGFuZWwtY29sbGFwc2UgLnBhbmVsLWJvZHl7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2RkZH0ucGFuZWwtZGVmYXVsdHtib3JkZXItY29sb3I6I2RkZH0ucGFuZWwtZGVmYXVsdD4ucGFuZWwtaGVhZGluZ3tjb2xvcjojMzMzO2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtib3JkZXItY29sb3I6I2RkZH0ucGFuZWwtZGVmYXVsdD4ucGFuZWwtaGVhZGluZysucGFuZWwtY29sbGFwc2U+LnBhbmVsLWJvZHl7Ym9yZGVyLXRvcC1jb2xvcjojZGRkfS5wYW5lbC1kZWZhdWx0Pi5wYW5lbC1oZWFkaW5nIC5iYWRnZXtjb2xvcjojZjVmNWY1O2JhY2tncm91bmQtY29sb3I6IzMzM30ucGFuZWwtZGVmYXVsdD4ucGFuZWwtZm9vdGVyKy5wYW5lbC1jb2xsYXBzZT4ucGFuZWwtYm9keXtib3JkZXItYm90dG9tLWNvbG9yOiNkZGR9LnBhbmVsLXByaW1hcnl7Ym9yZGVyLWNvbG9yOiMzMzdhYjd9LnBhbmVsLXByaW1hcnk+LnBhbmVsLWhlYWRpbmd7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMzMzdhYjc7Ym9yZGVyLWNvbG9yOiMzMzdhYjd9LnBhbmVsLXByaW1hcnk+LnBhbmVsLWhlYWRpbmcrLnBhbmVsLWNvbGxhcHNlPi5wYW5lbC1ib2R5e2JvcmRlci10b3AtY29sb3I6IzMzN2FiN30ucGFuZWwtcHJpbWFyeT4ucGFuZWwtaGVhZGluZyAuYmFkZ2V7Y29sb3I6IzMzN2FiNztiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LnBhbmVsLXByaW1hcnk+LnBhbmVsLWZvb3RlcisucGFuZWwtY29sbGFwc2U+LnBhbmVsLWJvZHl7Ym9yZGVyLWJvdHRvbS1jb2xvcjojMzM3YWI3fS5wYW5lbC1zdWNjZXNze2JvcmRlci1jb2xvcjojZDZlOWM2fS5wYW5lbC1zdWNjZXNzPi5wYW5lbC1oZWFkaW5ne2NvbG9yOiMzYzc2M2Q7YmFja2dyb3VuZC1jb2xvcjojZGZmMGQ4O2JvcmRlci1jb2xvcjojZDZlOWM2fS5wYW5lbC1zdWNjZXNzPi5wYW5lbC1oZWFkaW5nKy5wYW5lbC1jb2xsYXBzZT4ucGFuZWwtYm9keXtib3JkZXItdG9wLWNvbG9yOiNkNmU5YzZ9LnBhbmVsLXN1Y2Nlc3M+LnBhbmVsLWhlYWRpbmcgLmJhZGdle2NvbG9yOiNkZmYwZDg7YmFja2dyb3VuZC1jb2xvcjojM2M3NjNkfS5wYW5lbC1zdWNjZXNzPi5wYW5lbC1mb290ZXIrLnBhbmVsLWNvbGxhcHNlPi5wYW5lbC1ib2R5e2JvcmRlci1ib3R0b20tY29sb3I6I2Q2ZTljNn0ucGFuZWwtaW5mb3tib3JkZXItY29sb3I6I2JjZThmMX0ucGFuZWwtaW5mbz4ucGFuZWwtaGVhZGluZ3tjb2xvcjojMzE3MDhmO2JhY2tncm91bmQtY29sb3I6I2Q5ZWRmNztib3JkZXItY29sb3I6I2JjZThmMX0ucGFuZWwtaW5mbz4ucGFuZWwtaGVhZGluZysucGFuZWwtY29sbGFwc2U+LnBhbmVsLWJvZHl7Ym9yZGVyLXRvcC1jb2xvcjojYmNlOGYxfS5wYW5lbC1pbmZvPi5wYW5lbC1oZWFkaW5nIC5iYWRnZXtjb2xvcjojZDllZGY3O2JhY2tncm91bmQtY29sb3I6IzMxNzA4Zn0ucGFuZWwtaW5mbz4ucGFuZWwtZm9vdGVyKy5wYW5lbC1jb2xsYXBzZT4ucGFuZWwtYm9keXtib3JkZXItYm90dG9tLWNvbG9yOiNiY2U4ZjF9LnBhbmVsLXdhcm5pbmd7Ym9yZGVyLWNvbG9yOiNmYWViY2N9LnBhbmVsLXdhcm5pbmc+LnBhbmVsLWhlYWRpbmd7Y29sb3I6IzhhNmQzYjtiYWNrZ3JvdW5kLWNvbG9yOiNmY2Y4ZTM7Ym9yZGVyLWNvbG9yOiNmYWViY2N9LnBhbmVsLXdhcm5pbmc+LnBhbmVsLWhlYWRpbmcrLnBhbmVsLWNvbGxhcHNlPi5wYW5lbC1ib2R5e2JvcmRlci10b3AtY29sb3I6I2ZhZWJjY30ucGFuZWwtd2FybmluZz4ucGFuZWwtaGVhZGluZyAuYmFkZ2V7Y29sb3I6I2ZjZjhlMztiYWNrZ3JvdW5kLWNvbG9yOiM4YTZkM2J9LnBhbmVsLXdhcm5pbmc+LnBhbmVsLWZvb3RlcisucGFuZWwtY29sbGFwc2U+LnBhbmVsLWJvZHl7Ym9yZGVyLWJvdHRvbS1jb2xvcjojZmFlYmNjfS5wYW5lbC1kYW5nZXJ7Ym9yZGVyLWNvbG9yOiNlYmNjZDF9LnBhbmVsLWRhbmdlcj4ucGFuZWwtaGVhZGluZ3tjb2xvcjojYTk0NDQyO2JhY2tncm91bmQtY29sb3I6I2YyZGVkZTtib3JkZXItY29sb3I6I2ViY2NkMX0ucGFuZWwtZGFuZ2VyPi5wYW5lbC1oZWFkaW5nKy5wYW5lbC1jb2xsYXBzZT4ucGFuZWwtYm9keXtib3JkZXItdG9wLWNvbG9yOiNlYmNjZDF9LnBhbmVsLWRhbmdlcj4ucGFuZWwtaGVhZGluZyAuYmFkZ2V7Y29sb3I6I2YyZGVkZTtiYWNrZ3JvdW5kLWNvbG9yOiNhOTQ0NDJ9LnBhbmVsLWRhbmdlcj4ucGFuZWwtZm9vdGVyKy5wYW5lbC1jb2xsYXBzZT4ucGFuZWwtYm9keXtib3JkZXItYm90dG9tLWNvbG9yOiNlYmNjZDF9LmVtYmVkLXJlc3BvbnNpdmV7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtwYWRkaW5nOjA7b3ZlcmZsb3c6aGlkZGVufS5lbWJlZC1yZXNwb25zaXZlIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sLmVtYmVkLXJlc3BvbnNpdmUgZW1iZWQsLmVtYmVkLXJlc3BvbnNpdmUgaWZyYW1lLC5lbWJlZC1yZXNwb25zaXZlIG9iamVjdCwuZW1iZWQtcmVzcG9uc2l2ZSB2aWRlb3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtib3JkZXI6MH0uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OXtwYWRkaW5nLWJvdHRvbTo1Ni4yNSV9LmVtYmVkLXJlc3BvbnNpdmUtNGJ5M3twYWRkaW5nLWJvdHRvbTo3NSV9LndlbGx7bWluLWhlaWdodDoyMHB4O3BhZGRpbmc6MTlweDttYXJnaW4tYm90dG9tOjIwcHg7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2JvcmRlcjoxcHggc29saWQgI2UzZTNlMztib3JkZXItcmFkaXVzOjRweDstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA1KTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSl9LndlbGwgYmxvY2txdW90ZXtib3JkZXItY29sb3I6I2RkZDtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwuMTUpfS53ZWxsLWxne3BhZGRpbmc6MjRweDtib3JkZXItcmFkaXVzOjZweH0ud2VsbC1zbXtwYWRkaW5nOjlweDtib3JkZXItcmFkaXVzOjNweH0uY2xvc2V7ZmxvYXQ6cmlnaHQ7Zm9udC1zaXplOjIxcHg7Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjE7Y29sb3I6IzAwMDt0ZXh0LXNoYWRvdzowIDFweCAwICNmZmY7ZmlsdGVyOmFscGhhKG9wYWNpdHk9MjApO29wYWNpdHk6LjJ9LmNsb3NlOmZvY3VzLC5jbG9zZTpob3Zlcntjb2xvcjojMDAwO3RleHQtZGVjb3JhdGlvbjpub25lO2N1cnNvcjpwb2ludGVyO2ZpbHRlcjphbHBoYShvcGFjaXR5PTUwKTtvcGFjaXR5Oi41fWJ1dHRvbi5jbG9zZXstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZDowIDA7Ym9yZGVyOjB9Lm1vZGFsLW9wZW57b3ZlcmZsb3c6aGlkZGVufS5tb2RhbHtwb3NpdGlvbjpmaXhlZDt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjEwNTA7ZGlzcGxheTpub25lO292ZXJmbG93OmhpZGRlbjstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaDtvdXRsaW5lOjB9Lm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZ3std2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjNzIGVhc2Utb3V0Oy1vLXRyYW5zaXRpb246LW8tdHJhbnNmb3JtIC4zcyBlYXNlLW91dDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuM3MgZWFzZS1vdXQ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKDAsLTI1JSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGUoMCwtMjUlKTstby10cmFuc2Zvcm06dHJhbnNsYXRlKDAsLTI1JSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgwLC0yNSUpfS5tb2RhbC5pbiAubW9kYWwtZGlhbG9ney13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgwLDApOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlKDAsMCk7LW8tdHJhbnNmb3JtOnRyYW5zbGF0ZSgwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUoMCwwKX0ubW9kYWwtb3BlbiAubW9kYWx7b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvfS5tb2RhbC1kaWFsb2d7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6YXV0bzttYXJnaW46MTBweH0ubW9kYWwtY29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3g7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94O2JvcmRlcjoxcHggc29saWQgIzk5OTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjIpO2JvcmRlci1yYWRpdXM6NnB4O291dGxpbmU6MDstd2Via2l0LWJveC1zaGFkb3c6MCAzcHggOXB4IHJnYmEoMCwwLDAsLjUpO2JveC1zaGFkb3c6MCAzcHggOXB4IHJnYmEoMCwwLDAsLjUpfS5tb2RhbC1iYWNrZHJvcHtwb3NpdGlvbjpmaXhlZDt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjEwNDA7YmFja2dyb3VuZC1jb2xvcjojMDAwfS5tb2RhbC1iYWNrZHJvcC5mYWRle2ZpbHRlcjphbHBoYShvcGFjaXR5PTApO29wYWNpdHk6MH0ubW9kYWwtYmFja2Ryb3AuaW57ZmlsdGVyOmFscGhhKG9wYWNpdHk9NTApO29wYWNpdHk6LjV9Lm1vZGFsLWhlYWRlcntwYWRkaW5nOjE1cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2U1ZTVlNX0ubW9kYWwtaGVhZGVyIC5jbG9zZXttYXJnaW4tdG9wOi0ycHh9Lm1vZGFsLXRpdGxle21hcmdpbjowO2xpbmUtaGVpZ2h0OjEuNDI4NTcxNDN9Lm1vZGFsLWJvZHl7cG9zaXRpb246cmVsYXRpdmU7cGFkZGluZzoxNXB4fS5tb2RhbC1mb290ZXJ7cGFkZGluZzoxNXB4O3RleHQtYWxpZ246cmlnaHQ7Ym9yZGVyLXRvcDoxcHggc29saWQgI2U1ZTVlNX0ubW9kYWwtZm9vdGVyIC5idG4rLmJ0bnttYXJnaW4tYm90dG9tOjA7bWFyZ2luLWxlZnQ6NXB4fS5tb2RhbC1mb290ZXIgLmJ0bi1ncm91cCAuYnRuKy5idG57bWFyZ2luLWxlZnQ6LTFweH0ubW9kYWwtZm9vdGVyIC5idG4tYmxvY2srLmJ0bi1ibG9ja3ttYXJnaW4tbGVmdDowfS5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTk5OTlweDt3aWR0aDo1MHB4O2hlaWdodDo1MHB4O292ZXJmbG93OnNjcm9sbH1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7Lm1vZGFsLWRpYWxvZ3t3aWR0aDo2MDBweDttYXJnaW46MzBweCBhdXRvfS5tb2RhbC1jb250ZW50ey13ZWJraXQtYm94LXNoYWRvdzowIDVweCAxNXB4IHJnYmEoMCwwLDAsLjUpO2JveC1zaGFkb3c6MCA1cHggMTVweCByZ2JhKDAsMCwwLC41KX0ubW9kYWwtc217d2lkdGg6MzAwcHh9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsubW9kYWwtbGd7d2lkdGg6OTAwcHh9fS50b29sdGlwe3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MTA3MDtkaXNwbGF5OmJsb2NrO2ZvbnQtZmFtaWx5OiJIZWx2ZXRpY2EgTmV1ZSIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEycHg7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjEuNDI4NTcxNDM7dGV4dC1hbGlnbjpsZWZ0O3RleHQtYWxpZ246c3RhcnQ7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dGV4dC1zaGFkb3c6bm9uZTt0ZXh0LXRyYW5zZm9ybTpub25lO2xldHRlci1zcGFjaW5nOm5vcm1hbDt3b3JkLWJyZWFrOm5vcm1hbDt3b3JkLXNwYWNpbmc6bm9ybWFsO3dvcmQtd3JhcDpub3JtYWw7d2hpdGUtc3BhY2U6bm9ybWFsO2ZpbHRlcjphbHBoYShvcGFjaXR5PTApO29wYWNpdHk6MDtsaW5lLWJyZWFrOmF1dG99LnRvb2x0aXAuaW57ZmlsdGVyOmFscGhhKG9wYWNpdHk9OTApO29wYWNpdHk6Ljl9LnRvb2x0aXAudG9we3BhZGRpbmc6NXB4IDA7bWFyZ2luLXRvcDotM3B4fS50b29sdGlwLnJpZ2h0e3BhZGRpbmc6MCA1cHg7bWFyZ2luLWxlZnQ6M3B4fS50b29sdGlwLmJvdHRvbXtwYWRkaW5nOjVweCAwO21hcmdpbi10b3A6M3B4fS50b29sdGlwLmxlZnR7cGFkZGluZzowIDVweDttYXJnaW4tbGVmdDotM3B4fS50b29sdGlwLWlubmVye21heC13aWR0aDoyMDBweDtwYWRkaW5nOjNweCA4cHg7Y29sb3I6I2ZmZjt0ZXh0LWFsaWduOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7Ym9yZGVyLXJhZGl1czo0cHh9LnRvb2x0aXAtYXJyb3d7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOnNvbGlkfS50b29sdGlwLnRvcCAudG9vbHRpcC1hcnJvd3tib3R0b206MDtsZWZ0OjUwJTttYXJnaW4tbGVmdDotNXB4O2JvcmRlci13aWR0aDo1cHggNXB4IDA7Ym9yZGVyLXRvcC1jb2xvcjojMDAwfS50b29sdGlwLnRvcC1sZWZ0IC50b29sdGlwLWFycm93e3JpZ2h0OjVweDtib3R0b206MDttYXJnaW4tYm90dG9tOi01cHg7Ym9yZGVyLXdpZHRoOjVweCA1cHggMDtib3JkZXItdG9wLWNvbG9yOiMwMDB9LnRvb2x0aXAudG9wLXJpZ2h0IC50b29sdGlwLWFycm93e2JvdHRvbTowO2xlZnQ6NXB4O21hcmdpbi1ib3R0b206LTVweDtib3JkZXItd2lkdGg6NXB4IDVweCAwO2JvcmRlci10b3AtY29sb3I6IzAwMH0udG9vbHRpcC5yaWdodCAudG9vbHRpcC1hcnJvd3t0b3A6NTAlO2xlZnQ6MDttYXJnaW4tdG9wOi01cHg7Ym9yZGVyLXdpZHRoOjVweCA1cHggNXB4IDA7Ym9yZGVyLXJpZ2h0LWNvbG9yOiMwMDB9LnRvb2x0aXAubGVmdCAudG9vbHRpcC1hcnJvd3t0b3A6NTAlO3JpZ2h0OjA7bWFyZ2luLXRvcDotNXB4O2JvcmRlci13aWR0aDo1cHggMCA1cHggNXB4O2JvcmRlci1sZWZ0LWNvbG9yOiMwMDB9LnRvb2x0aXAuYm90dG9tIC50b29sdGlwLWFycm93e3RvcDowO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi01cHg7Ym9yZGVyLXdpZHRoOjAgNXB4IDVweDtib3JkZXItYm90dG9tLWNvbG9yOiMwMDB9LnRvb2x0aXAuYm90dG9tLWxlZnQgLnRvb2x0aXAtYXJyb3d7dG9wOjA7cmlnaHQ6NXB4O21hcmdpbi10b3A6LTVweDtib3JkZXItd2lkdGg6MCA1cHggNXB4O2JvcmRlci1ib3R0b20tY29sb3I6IzAwMH0udG9vbHRpcC5ib3R0b20tcmlnaHQgLnRvb2x0aXAtYXJyb3d7dG9wOjA7bGVmdDo1cHg7bWFyZ2luLXRvcDotNXB4O2JvcmRlci13aWR0aDowIDVweCA1cHg7Ym9yZGVyLWJvdHRvbS1jb2xvcjojMDAwfS5wb3BvdmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt6LWluZGV4OjEwNjA7ZGlzcGxheTpub25lO21heC13aWR0aDoyNzZweDtwYWRkaW5nOjFweDtmb250LWZhbWlseToiSGVsdmV0aWNhIE5ldWUiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxLjQyODU3MTQzO3RleHQtYWxpZ246bGVmdDt0ZXh0LWFsaWduOnN0YXJ0O3RleHQtZGVjb3JhdGlvbjpub25lO3RleHQtc2hhZG93Om5vbmU7dGV4dC10cmFuc2Zvcm06bm9uZTtsZXR0ZXItc3BhY2luZzpub3JtYWw7d29yZC1icmVhazpub3JtYWw7d29yZC1zcGFjaW5nOm5vcm1hbDt3b3JkLXdyYXA6bm9ybWFsO3doaXRlLXNwYWNlOm5vcm1hbDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3g7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94O2JvcmRlcjoxcHggc29saWQgI2NjYztib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjIpO2JvcmRlci1yYWRpdXM6NnB4Oy13ZWJraXQtYm94LXNoYWRvdzowIDVweCAxMHB4IHJnYmEoMCwwLDAsLjIpO2JveC1zaGFkb3c6MCA1cHggMTBweCByZ2JhKDAsMCwwLC4yKTtsaW5lLWJyZWFrOmF1dG99LnBvcG92ZXIudG9we21hcmdpbi10b3A6LTEwcHh9LnBvcG92ZXIucmlnaHR7bWFyZ2luLWxlZnQ6MTBweH0ucG9wb3Zlci5ib3R0b217bWFyZ2luLXRvcDoxMHB4fS5wb3BvdmVyLmxlZnR7bWFyZ2luLWxlZnQ6LTEwcHh9LnBvcG92ZXItdGl0bGV7cGFkZGluZzo4cHggMTRweDttYXJnaW46MDtmb250LXNpemU6MTRweDtiYWNrZ3JvdW5kLWNvbG9yOiNmN2Y3Zjc7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2ViZWJlYjtib3JkZXItcmFkaXVzOjVweCA1cHggMCAwfS5wb3BvdmVyLWNvbnRlbnR7cGFkZGluZzo5cHggMTRweH0ucG9wb3Zlcj4uYXJyb3csLnBvcG92ZXI+LmFycm93OmFmdGVye3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6YmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOnNvbGlkfS5wb3BvdmVyPi5hcnJvd3tib3JkZXItd2lkdGg6MTFweH0ucG9wb3Zlcj4uYXJyb3c6YWZ0ZXJ7Y29udGVudDoiIjtib3JkZXItd2lkdGg6MTBweH0ucG9wb3Zlci50b3A+LmFycm93e2JvdHRvbTotMTFweDtsZWZ0OjUwJTttYXJnaW4tbGVmdDotMTFweDtib3JkZXItdG9wLWNvbG9yOiM5OTk7Ym9yZGVyLXRvcC1jb2xvcjpyZ2JhKDAsMCwwLC4yNSk7Ym9yZGVyLWJvdHRvbS13aWR0aDowfS5wb3BvdmVyLnRvcD4uYXJyb3c6YWZ0ZXJ7Ym90dG9tOjFweDttYXJnaW4tbGVmdDotMTBweDtjb250ZW50OiIgIjtib3JkZXItdG9wLWNvbG9yOiNmZmY7Ym9yZGVyLWJvdHRvbS13aWR0aDowfS5wb3BvdmVyLnJpZ2h0Pi5hcnJvd3t0b3A6NTAlO2xlZnQ6LTExcHg7bWFyZ2luLXRvcDotMTFweDtib3JkZXItcmlnaHQtY29sb3I6Izk5OTtib3JkZXItcmlnaHQtY29sb3I6cmdiYSgwLDAsMCwuMjUpO2JvcmRlci1sZWZ0LXdpZHRoOjB9LnBvcG92ZXIucmlnaHQ+LmFycm93OmFmdGVye2JvdHRvbTotMTBweDtsZWZ0OjFweDtjb250ZW50OiIgIjtib3JkZXItcmlnaHQtY29sb3I6I2ZmZjtib3JkZXItbGVmdC13aWR0aDowfS5wb3BvdmVyLmJvdHRvbT4uYXJyb3d7dG9wOi0xMXB4O2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi0xMXB4O2JvcmRlci10b3Atd2lkdGg6MDtib3JkZXItYm90dG9tLWNvbG9yOiM5OTk7Ym9yZGVyLWJvdHRvbS1jb2xvcjpyZ2JhKDAsMCwwLC4yNSl9LnBvcG92ZXIuYm90dG9tPi5hcnJvdzphZnRlcnt0b3A6MXB4O21hcmdpbi1sZWZ0Oi0xMHB4O2NvbnRlbnQ6IiAiO2JvcmRlci10b3Atd2lkdGg6MDtib3JkZXItYm90dG9tLWNvbG9yOiNmZmZ9LnBvcG92ZXIubGVmdD4uYXJyb3d7dG9wOjUwJTtyaWdodDotMTFweDttYXJnaW4tdG9wOi0xMXB4O2JvcmRlci1yaWdodC13aWR0aDowO2JvcmRlci1sZWZ0LWNvbG9yOiM5OTk7Ym9yZGVyLWxlZnQtY29sb3I6cmdiYSgwLDAsMCwuMjUpfS5wb3BvdmVyLmxlZnQ+LmFycm93OmFmdGVye3JpZ2h0OjFweDtib3R0b206LTEwcHg7Y29udGVudDoiICI7Ym9yZGVyLXJpZ2h0LXdpZHRoOjA7Ym9yZGVyLWxlZnQtY29sb3I6I2ZmZn0uY2Fyb3VzZWx7cG9zaXRpb246cmVsYXRpdmV9LmNhcm91c2VsLWlubmVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVufS5jYXJvdXNlbC1pbm5lcj4uaXRlbXtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Om5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOi42cyBlYXNlLWluLW91dCBsZWZ0Oy1vLXRyYW5zaXRpb246LjZzIGVhc2UtaW4tb3V0IGxlZnQ7dHJhbnNpdGlvbjouNnMgZWFzZS1pbi1vdXQgbGVmdH0uY2Fyb3VzZWwtaW5uZXI+Lml0ZW0+YT5pbWcsLmNhcm91c2VsLWlubmVyPi5pdGVtPmltZ3tsaW5lLWhlaWdodDoxfUBtZWRpYSBhbGwgYW5kICh0cmFuc2Zvcm0tM2QpLCgtd2Via2l0LXRyYW5zZm9ybS0zZCl7LmNhcm91c2VsLWlubmVyPi5pdGVtey13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuNnMgZWFzZS1pbi1vdXQ7LW8tdHJhbnNpdGlvbjotby10cmFuc2Zvcm0gLjZzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246dHJhbnNmb3JtIC42cyBlYXNlLWluLW91dDstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuOy13ZWJraXQtcGVyc3BlY3RpdmU6MTAwMHB4O3BlcnNwZWN0aXZlOjEwMDBweH0uY2Fyb3VzZWwtaW5uZXI+Lml0ZW0uYWN0aXZlLnJpZ2h0LC5jYXJvdXNlbC1pbm5lcj4uaXRlbS5uZXh0e2xlZnQ6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKX0uY2Fyb3VzZWwtaW5uZXI+Lml0ZW0uYWN0aXZlLmxlZnQsLmNhcm91c2VsLWlubmVyPi5pdGVtLnByZXZ7bGVmdDowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLDAsMCl9LmNhcm91c2VsLWlubmVyPi5pdGVtLmFjdGl2ZSwuY2Fyb3VzZWwtaW5uZXI+Lml0ZW0ubmV4dC5sZWZ0LC5jYXJvdXNlbC1pbm5lcj4uaXRlbS5wcmV2LnJpZ2h0e2xlZnQ6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKX19LmNhcm91c2VsLWlubmVyPi5hY3RpdmUsLmNhcm91c2VsLWlubmVyPi5uZXh0LC5jYXJvdXNlbC1pbm5lcj4ucHJldntkaXNwbGF5OmJsb2NrfS5jYXJvdXNlbC1pbm5lcj4uYWN0aXZle2xlZnQ6MH0uY2Fyb3VzZWwtaW5uZXI+Lm5leHQsLmNhcm91c2VsLWlubmVyPi5wcmV2e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjEwMCV9LmNhcm91c2VsLWlubmVyPi5uZXh0e2xlZnQ6MTAwJX0uY2Fyb3VzZWwtaW5uZXI+LnByZXZ7bGVmdDotMTAwJX0uY2Fyb3VzZWwtaW5uZXI+Lm5leHQubGVmdCwuY2Fyb3VzZWwtaW5uZXI+LnByZXYucmlnaHR7bGVmdDowfS5jYXJvdXNlbC1pbm5lcj4uYWN0aXZlLmxlZnR7bGVmdDotMTAwJX0uY2Fyb3VzZWwtaW5uZXI+LmFjdGl2ZS5yaWdodHtsZWZ0OjEwMCV9LmNhcm91c2VsLWNvbnRyb2x7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3dpZHRoOjE1JTtmb250LXNpemU6MjBweDtjb2xvcjojZmZmO3RleHQtYWxpZ246Y2VudGVyO3RleHQtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLC42KTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMCk7ZmlsdGVyOmFscGhhKG9wYWNpdHk9NTApO29wYWNpdHk6LjV9LmNhcm91c2VsLWNvbnRyb2wubGVmdHtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQscmdiYSgwLDAsMCwuNSkgMCxyZ2JhKDAsMCwwLC4wMDAxKSAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudChsZWZ0LHJnYmEoMCwwLDAsLjUpIDAscmdiYSgwLDAsMCwuMDAwMSkgMTAwJSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxyaWdodCB0b3AsZnJvbShyZ2JhKDAsMCwwLC41KSksdG8ocmdiYSgwLDAsMCwuMDAwMSkpKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byByaWdodCxyZ2JhKDAsMCwwLC41KSAwLHJnYmEoMCwwLDAsLjAwMDEpIDEwMCUpO2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzgwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAwMCcsIEdyYWRpZW50VHlwZT0xKTtiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQteH0uY2Fyb3VzZWwtY29udHJvbC5yaWdodHtyaWdodDowO2xlZnQ6YXV0bztiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQscmdiYSgwLDAsMCwuMDAwMSkgMCxyZ2JhKDAsMCwwLC41KSAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudChsZWZ0LHJnYmEoMCwwLDAsLjAwMDEpIDAscmdiYSgwLDAsMCwuNSkgMTAwJSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxyaWdodCB0b3AsZnJvbShyZ2JhKDAsMCwwLC4wMDAxKSksdG8ocmdiYSgwLDAsMCwuNSkpKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byByaWdodCxyZ2JhKDAsMCwwLC4wMDAxKSAwLHJnYmEoMCwwLDAsLjUpIDEwMCUpO2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyM4MDAwMDAwMCcsIEdyYWRpZW50VHlwZT0xKTtiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQteH0uY2Fyb3VzZWwtY29udHJvbDpmb2N1cywuY2Fyb3VzZWwtY29udHJvbDpob3Zlcntjb2xvcjojZmZmO3RleHQtZGVjb3JhdGlvbjpub25lO2ZpbHRlcjphbHBoYShvcGFjaXR5PTkwKTtvdXRsaW5lOjA7b3BhY2l0eTouOX0uY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCwuY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsLmNhcm91c2VsLWNvbnRyb2wgLmljb24tbmV4dCwuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1wcmV2e3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7ei1pbmRleDo1O2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi10b3A6LTEwcHh9LmNhcm91c2VsLWNvbnRyb2wgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsLmNhcm91c2VsLWNvbnRyb2wgLmljb24tcHJldntsZWZ0OjUwJTttYXJnaW4tbGVmdDotMTBweH0uY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsLmNhcm91c2VsLWNvbnRyb2wgLmljb24tbmV4dHtyaWdodDo1MCU7bWFyZ2luLXJpZ2h0Oi0xMHB4fS5jYXJvdXNlbC1jb250cm9sIC5pY29uLW5leHQsLmNhcm91c2VsLWNvbnRyb2wgLmljb24tcHJldnt3aWR0aDoyMHB4O2hlaWdodDoyMHB4O2ZvbnQtZmFtaWx5OnNlcmlmO2xpbmUtaGVpZ2h0OjF9LmNhcm91c2VsLWNvbnRyb2wgLmljb24tcHJldjpiZWZvcmV7Y29udGVudDonXDIwMzknfS5jYXJvdXNlbC1jb250cm9sIC5pY29uLW5leHQ6YmVmb3Jle2NvbnRlbnQ6J1wyMDNhJ30uY2Fyb3VzZWwtaW5kaWNhdG9yc3twb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MTBweDtsZWZ0OjUwJTt6LWluZGV4OjE1O3dpZHRoOjYwJTtwYWRkaW5nLWxlZnQ6MDttYXJnaW4tbGVmdDotMzAlO3RleHQtYWxpZ246Y2VudGVyO2xpc3Qtc3R5bGU6bm9uZX0uY2Fyb3VzZWwtaW5kaWNhdG9ycyBsaXtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoxMHB4O2hlaWdodDoxMHB4O21hcmdpbjoxcHg7dGV4dC1pbmRlbnQ6LTk5OXB4O2N1cnNvcjpwb2ludGVyO2JhY2tncm91bmQtY29sb3I6IzAwMFw5O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwKTtib3JkZXI6MXB4IHNvbGlkICNmZmY7Ym9yZGVyLXJhZGl1czoxMHB4fS5jYXJvdXNlbC1pbmRpY2F0b3JzIC5hY3RpdmV7d2lkdGg6MTJweDtoZWlnaHQ6MTJweDttYXJnaW46MDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LmNhcm91c2VsLWNhcHRpb257cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MTUlO2JvdHRvbToyMHB4O2xlZnQ6MTUlO3otaW5kZXg6MTA7cGFkZGluZy10b3A6MjBweDtwYWRkaW5nLWJvdHRvbToyMHB4O2NvbG9yOiNmZmY7dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC1zaGFkb3c6MCAxcHggMnB4IHJnYmEoMCwwLDAsLjYpfS5jYXJvdXNlbC1jYXB0aW9uIC5idG57dGV4dC1zaGFkb3c6bm9uZX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjc2OHB4KXsuY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCwuY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsLmNhcm91c2VsLWNvbnRyb2wgLmljb24tbmV4dCwuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1wcmV2e3dpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7bWFyZ2luLXRvcDotMTBweDtmb250LXNpemU6MzBweH0uY2Fyb3VzZWwtY29udHJvbCAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCwuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1wcmV2e21hcmdpbi1sZWZ0Oi0xMHB4fS5jYXJvdXNlbC1jb250cm9sIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCwuY2Fyb3VzZWwtY29udHJvbCAuaWNvbi1uZXh0e21hcmdpbi1yaWdodDotMTBweH0uY2Fyb3VzZWwtY2FwdGlvbntyaWdodDoyMCU7bGVmdDoyMCU7cGFkZGluZy1ib3R0b206MzBweH0uY2Fyb3VzZWwtaW5kaWNhdG9yc3tib3R0b206MjBweH19LmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLWdyb3VwOmFmdGVyLC5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi1ncm91cDpiZWZvcmUsLmJ0bi10b29sYmFyOmFmdGVyLC5idG4tdG9vbGJhcjpiZWZvcmUsLmNsZWFyZml4OmFmdGVyLC5jbGVhcmZpeDpiZWZvcmUsLmNvbnRhaW5lci1mbHVpZDphZnRlciwuY29udGFpbmVyLWZsdWlkOmJlZm9yZSwuY29udGFpbmVyOmFmdGVyLC5jb250YWluZXI6YmVmb3JlLC5kbC1ob3Jpem9udGFsIGRkOmFmdGVyLC5kbC1ob3Jpem9udGFsIGRkOmJlZm9yZSwuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWdyb3VwOmFmdGVyLC5mb3JtLWhvcml6b250YWwgLmZvcm0tZ3JvdXA6YmVmb3JlLC5tb2RhbC1mb290ZXI6YWZ0ZXIsLm1vZGFsLWZvb3RlcjpiZWZvcmUsLm1vZGFsLWhlYWRlcjphZnRlciwubW9kYWwtaGVhZGVyOmJlZm9yZSwubmF2OmFmdGVyLC5uYXY6YmVmb3JlLC5uYXZiYXItY29sbGFwc2U6YWZ0ZXIsLm5hdmJhci1jb2xsYXBzZTpiZWZvcmUsLm5hdmJhci1oZWFkZXI6YWZ0ZXIsLm5hdmJhci1oZWFkZXI6YmVmb3JlLC5uYXZiYXI6YWZ0ZXIsLm5hdmJhcjpiZWZvcmUsLnBhZ2VyOmFmdGVyLC5wYWdlcjpiZWZvcmUsLnBhbmVsLWJvZHk6YWZ0ZXIsLnBhbmVsLWJvZHk6YmVmb3JlLC5yb3c6YWZ0ZXIsLnJvdzpiZWZvcmV7ZGlzcGxheTp0YWJsZTtjb250ZW50OiIgIn0uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6YWZ0ZXIsLmJ0bi10b29sYmFyOmFmdGVyLC5jbGVhcmZpeDphZnRlciwuY29udGFpbmVyLWZsdWlkOmFmdGVyLC5jb250YWluZXI6YWZ0ZXIsLmRsLWhvcml6b250YWwgZGQ6YWZ0ZXIsLmZvcm0taG9yaXpvbnRhbCAuZm9ybS1ncm91cDphZnRlciwubW9kYWwtZm9vdGVyOmFmdGVyLC5tb2RhbC1oZWFkZXI6YWZ0ZXIsLm5hdjphZnRlciwubmF2YmFyLWNvbGxhcHNlOmFmdGVyLC5uYXZiYXItaGVhZGVyOmFmdGVyLC5uYXZiYXI6YWZ0ZXIsLnBhZ2VyOmFmdGVyLC5wYW5lbC1ib2R5OmFmdGVyLC5yb3c6YWZ0ZXJ7Y2xlYXI6Ym90aH0uY2VudGVyLWJsb2Nre2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXJpZ2h0OmF1dG87bWFyZ2luLWxlZnQ6YXV0b30ucHVsbC1yaWdodHtmbG9hdDpyaWdodCFpbXBvcnRhbnR9LnB1bGwtbGVmdHtmbG9hdDpsZWZ0IWltcG9ydGFudH0uaGlkZXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5zaG93e2Rpc3BsYXk6YmxvY2shaW1wb3J0YW50fS5pbnZpc2libGV7dmlzaWJpbGl0eTpoaWRkZW59LnRleHQtaGlkZXtmb250OjAvMCBhO2NvbG9yOnRyYW5zcGFyZW50O3RleHQtc2hhZG93Om5vbmU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6MH0uaGlkZGVue2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmFmZml4e3Bvc2l0aW9uOmZpeGVkfUAtbXMtdmlld3BvcnR7d2lkdGg6ZGV2aWNlLXdpZHRofS52aXNpYmxlLWxnLC52aXNpYmxlLW1kLC52aXNpYmxlLXNtLC52aXNpYmxlLXhze2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LnZpc2libGUtbGctYmxvY2ssLnZpc2libGUtbGctaW5saW5lLC52aXNpYmxlLWxnLWlubGluZS1ibG9jaywudmlzaWJsZS1tZC1ibG9jaywudmlzaWJsZS1tZC1pbmxpbmUsLnZpc2libGUtbWQtaW5saW5lLWJsb2NrLC52aXNpYmxlLXNtLWJsb2NrLC52aXNpYmxlLXNtLWlubGluZSwudmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssLnZpc2libGUteHMtYmxvY2ssLnZpc2libGUteHMtaW5saW5lLC52aXNpYmxlLXhzLWlubGluZS1ibG9ja3tkaXNwbGF5Om5vbmUhaW1wb3J0YW50fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsudmlzaWJsZS14c3tkaXNwbGF5OmJsb2NrIWltcG9ydGFudH10YWJsZS52aXNpYmxlLXhze2Rpc3BsYXk6dGFibGUhaW1wb3J0YW50fXRyLnZpc2libGUteHN7ZGlzcGxheTp0YWJsZS1yb3chaW1wb3J0YW50fXRkLnZpc2libGUteHMsdGgudmlzaWJsZS14c3tkaXNwbGF5OnRhYmxlLWNlbGwhaW1wb3J0YW50fX1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LnZpc2libGUteHMtYmxvY2t7ZGlzcGxheTpibG9jayFpbXBvcnRhbnR9fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsudmlzaWJsZS14cy1pbmxpbmV7ZGlzcGxheTppbmxpbmUhaW1wb3J0YW50fX1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LnZpc2libGUteHMtaW5saW5lLWJsb2Nre2Rpc3BsYXk6aW5saW5lLWJsb2NrIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIGFuZCAobWF4LXdpZHRoOjk5MXB4KXsudmlzaWJsZS1zbXtkaXNwbGF5OmJsb2NrIWltcG9ydGFudH10YWJsZS52aXNpYmxlLXNte2Rpc3BsYXk6dGFibGUhaW1wb3J0YW50fXRyLnZpc2libGUtc217ZGlzcGxheTp0YWJsZS1yb3chaW1wb3J0YW50fXRkLnZpc2libGUtc20sdGgudmlzaWJsZS1zbXtkaXNwbGF5OnRhYmxlLWNlbGwhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCkgYW5kIChtYXgtd2lkdGg6OTkxcHgpey52aXNpYmxlLXNtLWJsb2Nre2Rpc3BsYXk6YmxvY2shaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCkgYW5kIChtYXgtd2lkdGg6OTkxcHgpey52aXNpYmxlLXNtLWlubGluZXtkaXNwbGF5OmlubGluZSFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KSBhbmQgKG1heC13aWR0aDo5OTFweCl7LnZpc2libGUtc20taW5saW5lLWJsb2Nre2Rpc3BsYXk6aW5saW5lLWJsb2NrIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6OTkycHgpIGFuZCAobWF4LXdpZHRoOjExOTlweCl7LnZpc2libGUtbWR7ZGlzcGxheTpibG9jayFpbXBvcnRhbnR9dGFibGUudmlzaWJsZS1tZHtkaXNwbGF5OnRhYmxlIWltcG9ydGFudH10ci52aXNpYmxlLW1ke2Rpc3BsYXk6dGFibGUtcm93IWltcG9ydGFudH10ZC52aXNpYmxlLW1kLHRoLnZpc2libGUtbWR7ZGlzcGxheTp0YWJsZS1jZWxsIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6OTkycHgpIGFuZCAobWF4LXdpZHRoOjExOTlweCl7LnZpc2libGUtbWQtYmxvY2t7ZGlzcGxheTpibG9jayFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSBhbmQgKG1heC13aWR0aDoxMTk5cHgpey52aXNpYmxlLW1kLWlubGluZXtkaXNwbGF5OmlubGluZSFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSBhbmQgKG1heC13aWR0aDoxMTk5cHgpey52aXNpYmxlLW1kLWlubGluZS1ibG9ja3tkaXNwbGF5OmlubGluZS1ibG9jayFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LnZpc2libGUtbGd7ZGlzcGxheTpibG9jayFpbXBvcnRhbnR9dGFibGUudmlzaWJsZS1sZ3tkaXNwbGF5OnRhYmxlIWltcG9ydGFudH10ci52aXNpYmxlLWxne2Rpc3BsYXk6dGFibGUtcm93IWltcG9ydGFudH10ZC52aXNpYmxlLWxnLHRoLnZpc2libGUtbGd7ZGlzcGxheTp0YWJsZS1jZWxsIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsudmlzaWJsZS1sZy1ibG9ja3tkaXNwbGF5OmJsb2NrIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsudmlzaWJsZS1sZy1pbmxpbmV7ZGlzcGxheTppbmxpbmUhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey52aXNpYmxlLWxnLWlubGluZS1ibG9ja3tkaXNwbGF5OmlubGluZS1ibG9jayFpbXBvcnRhbnR9fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsuaGlkZGVuLXhze2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KSBhbmQgKG1heC13aWR0aDo5OTFweCl7LmhpZGRlbi1zbXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDo5OTJweCkgYW5kIChtYXgtd2lkdGg6MTE5OXB4KXsuaGlkZGVuLW1ke2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LmhpZGRlbi1sZ3tkaXNwbGF5Om5vbmUhaW1wb3J0YW50fX0udmlzaWJsZS1wcmludHtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fUBtZWRpYSBwcmludHsudmlzaWJsZS1wcmludHtkaXNwbGF5OmJsb2NrIWltcG9ydGFudH10YWJsZS52aXNpYmxlLXByaW50e2Rpc3BsYXk6dGFibGUhaW1wb3J0YW50fXRyLnZpc2libGUtcHJpbnR7ZGlzcGxheTp0YWJsZS1yb3chaW1wb3J0YW50fXRkLnZpc2libGUtcHJpbnQsdGgudmlzaWJsZS1wcmludHtkaXNwbGF5OnRhYmxlLWNlbGwhaW1wb3J0YW50fX0udmlzaWJsZS1wcmludC1ibG9ja3tkaXNwbGF5Om5vbmUhaW1wb3J0YW50fUBtZWRpYSBwcmludHsudmlzaWJsZS1wcmludC1ibG9ja3tkaXNwbGF5OmJsb2NrIWltcG9ydGFudH19LnZpc2libGUtcHJpbnQtaW5saW5le2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9QG1lZGlhIHByaW50ey52aXNpYmxlLXByaW50LWlubGluZXtkaXNwbGF5OmlubGluZSFpbXBvcnRhbnR9fS52aXNpYmxlLXByaW50LWlubGluZS1ibG9ja3tkaXNwbGF5Om5vbmUhaW1wb3J0YW50fUBtZWRpYSBwcmludHsudmlzaWJsZS1wcmludC1pbmxpbmUtYmxvY2t7ZGlzcGxheTppbmxpbmUtYmxvY2shaW1wb3J0YW50fX1AbWVkaWEgcHJpbnR7LmhpZGRlbi1wcmludHtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fX0KLyojIHNvdXJjZU1hcHBpbmdVUkw9Ym9vdHN0cmFwLm1pbi5jc3MubWFwICov"}},"time_used":24,"timings":{"blocked":-1,"dns":2,"connect":15,"send":0,"wait":7,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/logo.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.530Z","timestamp":1785158432530,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /logo.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Thu, 13 Mar 2025 12:30:59 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=6tjxWSs5XW8GhCJQ2qGa3RbmCdcW3GpEeiEAK%2BD%2FuDiki%2Fk12bbtfC%2FDIXXoOp3YaiBmsuYawpweC48hflZJ8UtyJBZ2Zx94HFJsBn2Ja9bU43WAOq%2BL8B4O7qqfNX11Z0h0nA%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b5c7056b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 23245\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":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":23245,"size_decoded":24012,"mime_type":"image/png","magic":"PNG image data, 300 x 110, 8-bit/color RGBA, non-interlaced","md5":"3c2d1dfb2a4da9f5341a7f9069753172","sha1":"73fdc91c4d8ee5f39a1e42ddc65754620e214e98","sha256":"7cf8aa3d2fc14e5dd5f071335e39401ee8875f5db9d0760b5989188a55b74caa","sha512":"7330c5ab7bd577ffed576abcbc231bcece84384e8c59f3f03b8a69c15eb85a20d926909a7818a9e409f532c6d55e5c09eff6a67b406aad18dfef463d4473eaf1","ssdeep":"384:nrdcrmP9WYbG4lmOU8CNFEuX/+JeQZCPB7ne9nTr+/SKV6JL4mOni4MJmQrlwh:n53Pv1lmOUoEBPB7neh2SM6nOnDMJmQE","tlshash":"36a2e1bd76003b67a60fb51fa7dc27d1b3973606ef2b07806445982c4e6273e401cad9","first_seen":"2026-01-22T04:28:08.543544Z","last_seen":"2026-07-27T13:21:39.112601Z","times_seen":4,"resource_available":false,"data":"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"}},"time_used":15,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":14,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/planicon4.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.547Z","timestamp":1785158432547,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/planicon4.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=WK1Lk45f5Fr0ounDz9z%2BkZZAv%2BI2cF2awrg2jSrXVkTLdtWzmmm0VAcMt5Td9hkpv678xBeDF90FrB%2B4cfsFD9kCwKANUl7E0T9%2BoNPHIZ%2B7d07o59tWse4dZC0lgQqmsnzqrg%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b6c7a56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 3203\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"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":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":3203,"size_decoded":3969,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"b5900566a0519d81145baca9cda01520","sha1":"b5960170c03f5e8c0ecc88d5683e340acf63a393","sha256":"01bc0efa4607dd30ef1a529ade34bee636e1883d6cdaf773134c3c70f80cf357","sha512":"6e4861dc68a97f12e6abc9ccb789ff1d9ef895dd0ce304c73eb89b23fceade3ccdfb3e407b9734bf52ef013f0df23be22a0a32dc974657cd840b9b0591534bdf","ssdeep":"","tlshash":"89612c4db2a1e341d22af2d909cb54305413c442f5f483b1d9cbe34349a63b7c60f9c9","first_seen":"2026-01-22T04:28:08.558343Z","last_seen":"2026-07-27T13:21:39.076948Z","times_seen":7,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OTQ1NDYxRkM4NUQ0MTFFOTk0Nzk5RjgxMjQ5MDUyQzIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OTQ1NDYxRkQ4NUQ0MTFFOTk0Nzk5RjgxMjQ5MDUyQzIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo5NDU0NjFGQTg1RDQxMUU5OTQ3OTlGODEyNDkwNTJDMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo5NDU0NjFGQjg1RDQxMUU5OTQ3OTlGODEyNDkwNTJDMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pmm/81IAAAj3SURBVHja7FsNcFTV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"}},"time_used":21,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":21,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/logobehind.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.762Z","timestamp":1785158432762,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/logobehind.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/styles/custom.css\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=4,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:32 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23159\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=BU9mmJrlYke0tI0KXX7n9ohbeg2CpjT4ZmYyUcL8OOPkPjNHGwEx7oqCIotWMJ5Yge3SDyOZJXAFQM2rrQZAYQJ8tAUZ9pjYMM7ZZ4YI6GsWXxwlUsBAWfeqXl%2F7FKWYphwEsQ%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12ccc9956b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 2075\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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2075,"size_decoded":2833,"mime_type":"image/png","magic":"PNG image data, 363 x 87, 8-bit/color RGBA, non-interlaced","md5":"ad035b5cd5ef97c04189b3a43085d794","sha1":"6cf6c8bea554c5cef788e0977ebe714381cc9cae","sha256":"4dfb9096ed0d380109bd85c2096f73641b83d936e2d0f900134f1a0a9b4fea40","sha512":"8f91be046935f01e4046d98e329302f9749249baaa1e3bb1e857b544148e51866023d59c65da8ac0d9cea0562391a18c2485a21b97c01b1611cc0261da337eec","ssdeep":"","tlshash":"2841f8c47a5a1a42c06bfea260e3c412466bd6808e84e15264d9fc671d342b14d6f6db","first_seen":"2024-09-19T20:45:31.010183Z","last_seen":"2026-07-27T13:21:39.120714Z","times_seen":19,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAWsAAABXCAYAAADCiWQaAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RTdFNzY0Q0E4NUQzMTFFOTk2QURDQUVDRjhBRTFCMkUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RTdFNzY0Q0I4NUQzMTFFOTk2QURDQUVDRjhBRTFCMkUiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpFN0U3NjRDODg1RDMxMUU5OTZBRENBRUNGOEFFMUIyRSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpFN0U3NjRDOTg1RDMxMUU5OTZBRENBRUNGOEFFMUIyRSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PsjsjgwAAASPSURBVHja7N3fh1xnGAfwk1lKKaX0pglLNFqq1Qq9qFIq0ov2qlpKr3rTXvWqVP+BZRlKWL1YSllKKCGEsJRlNZQllCVEV0MISxmWZXWl75Odw2TNTGZ3z493Zj4fnuzaGWfGeeM7jzPv+55zL12+8rgAIGd3zglrgOx90nEOALJ2N9UtYQ2Qt6X4R1gD5Gs71Q1hDZC3bqrD+MUXjAB5epDqYhnWOmuAPC2XQa2zBsjTo1SLqQ7KP+isAfLTHQxqnTVAfnaLo2vVe4N/1FkD5GXleFDrrAHyEiF9IVXv+AM6a4C8uuresAd01gB52C+OZoDsDntQZw2Qh9VRQa2zBshDTNOLGSAPRz1BZw3QvrVxQa2zBmhfLCl/PdX9cU/SWQO06/qzglpYA7RvaZInCWuA9sSNBbaFNcAMdNXCGqA966m2hDXAjHTVwhqgHZupNoQ1wAx11cIaoHlxnfq2sAaYsa5aWAM0K+ZU3xTWAHlbLo72AjkxGzkBNGMn1aXThrXOGiDzrlpnDdCM2Ks6bi5wcNoD6KwB6tc9S1DrrAHqt9vvqvfOchCdNUC9rp01qHXWAPXqpVrs/zwTnTVAfVaqCGqdNUB94tJHXKvereJgOmuAeqxWFdQ6a4B6HPS76odVHVBnDVC9X6oMap01QPViSXnsAbJT5UF11gDV+rXqoBbWANV31ct1HFhYA1QnbiywLawB8rZU14GFNUA14ia4W8IaYE67amENUI2NVJt1h/WB8wyQb1ddhvWe8wxwanGdel1YA8x5V12G9b/ONcCpxJzqG02F9QPnGyDfrroM63vON8CJ3U91XVgD5C32ADlsMqzvOucAJxJ7Va81+YJlWPuSEWBy3aLhNSqdfhu/6dwDTCTuq7ja9IuWy81vO/8AE/kx1X7TLxq39Yqf51P9k2rBOACM1Et1oWhhMWHZWcfF8t+NA8BY14qWVn0P7rq3ZhwARoqQXmnrxQfD+rdUj4wHwFDxpeJuWy++8PwrF8vf/0v1ONVHxgTgKTFN7/OixY3vOkM+Ocy5Bnjaz0XLVx4GO+vy0yMC/IqxAXjisN9V99p8E8Nu6xUrcyxBBzgSky9a3520M+JT5FvjA/AkD7s5vJFRN8yN5ecrxgmYc3Fjge0c3ki5gnGY51L9keqy8QLm1DtFJpeFO2MeK6eq9IwXMIduFRl9f9d5xuM7qT4tGt4KECADSzm9mc4Ez4k9Q74sGrwjAkDLIvfu5PSGjs+zHiUusMdmTx9PGPAA0+ybVH9PW2ddihU8XxQuiQCz7c9U67m9qZN2ybHZ09WixfXxADVbyvFNneaSxkaqt1JtGVNgxvyV6uashHWIWSLvFRbOALrqRoxbFDOp91P9lOpN4wxMsXup3igynflWxcyOWJoeq3y+K2yvCkyvbpHxFOUqOutBL6T6OtUPqV429sCUiF31LhUZz3ares50zBKJ27QvpvqqOPoyEmAauuqspyVX3VkPcz7VZ6k+TPVBqhf9vwAyEneAidWB+/Me1se9nerdVK+lerUf5gv9vwM07fsikz2rx/lfgAEAo6fNsLQqFmAAAAAASUVORK5CYII="}},"time_used":15,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":15,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/4815a758657d4bae.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.127Z","timestamp":1785158433127,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/4815a758657d4bae.js HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: *\r\nage: 3845949\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"4815a758657d4bae.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\netag: W/\"9b4f6d29f92ea43b7c7ef4770fbed76a\"\r\nlast-modified: Sat, 13 Jun 2026 00:50:11 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/4815a758657d4bae.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::98lrq-1781312483644-7e3fe14e464a\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=DCUn7VH%2BMd8xPDWno05tOmURFMAGMtZF6KRrDvoObn2quyBLIepjGv8tSJemWFT1r4tscykKYVkFHD5SWY%2F5zBHOOAYpkZM1IslMqKZIvyTnEl%2FtKr9dnRyYey8y\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21bf12f083656b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":49883,"size_decoded":17720,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (49883), with no line terminators","md5":"9b4f6d29f92ea43b7c7ef4770fbed76a","sha1":"bdad2044ced7e4c0208e62e5650f99140e88aeb6","sha256":"6fb06a5d29509dddf687974e467d8274ef9ef0f6bec7c841fd8336543c9a3f74","sha512":"06ec26c380efdf73315dfc21639732033b79b7869acaed6d4a6697c4d441500bb21f57311b543ee176e2b31b775cff20bc5e611dfff3cca3a3a5c30c8338262f","ssdeep":"1536:UIYGGTQpo7UFYEpzussak11xgaAF+j/G7qWF:UIYGKO+UFZaJgaUt7/","tlshash":"f023d4c971e5b4900bb395b1803f000bf23e1d76185d98a0d3a2dde9b8b45aed233f99","first_seen":"2026-06-13T02:21:16.211868Z","last_seen":"2026-08-17T21:34:38.511053Z","times_seen":1949,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDkzMDYzLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJSZWRpcmVjdFN0YXR1c0NvZGUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBvfX0pO3ZhciByLG89KChyPXt9KVtyLlNlZU90aGVyPTMwM109IlNlZU90aGVyIixyW3IuVGVtcG9yYXJ5UmVkaXJlY3Q9MzA3XT0iVGVtcG9yYXJ5UmVkaXJlY3QiLHJbci5QZXJtYW5lbnRSZWRpcmVjdD0zMDhdPSJQZXJtYW5lbnRSZWRpcmVjdCIscik7KCJmdW5jdGlvbiI9PXR5cGVvZiBuLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygbi5kZWZhdWx0JiZudWxsIT09bi5kZWZhdWx0KSYmdm9pZCAwPT09bi5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKG4uZGVmYXVsdCxuKSx0LmV4cG9ydHM9bi5kZWZhdWx0KX0sOTA4NjIsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIHIsbz17UkVESVJFQ1RfRVJST1JfQ09ERTpmdW5jdGlvbigpe3JldHVybiBhfSxSZWRpcmVjdFR5cGU6ZnVuY3Rpb24oKXtyZXR1cm4gbH0saXNSZWRpcmVjdEVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIHN9fTtmb3IodmFyIHUgaW4gbylPYmplY3QuZGVmaW5lUHJvcGVydHkobix1LHtlbnVtZXJhYmxlOiEwLGdldDpvW3VdfSk7bGV0IGk9ZS5yKDkzMDYzKSxhPSJORVhUX1JFRElSRUNUIjt2YXIgbD0oKHI9e30pLnB1c2g9InB1c2giLHIucmVwbGFjZT0icmVwbGFjZSIscik7ZnVuY3Rpb24gcyhlKXtpZigib2JqZWN0IiE9dHlwZW9mIGV8fG51bGw9PT1lfHwhKCJkaWdlc3QiaW4gZSl8fCJzdHJpbmciIT10eXBlb2YgZS5kaWdlc3QpcmV0dXJuITE7bGV0IHQ9ZS5kaWdlc3Quc3BsaXQoIjsiKSxbbixyXT10LG89dC5zbGljZSgyLC0yKS5qb2luKCI7IiksdT1OdW1iZXIodC5hdCgtMikpO3JldHVybiBuPT09YSYmKCJyZXBsYWNlIj09PXJ8fCJwdXNoIj09PXIpJiYic3RyaW5nIj09dHlwZW9mIG8mJiFpc05hTih1KSYmdSBpbiBpLlJlZGlyZWN0U3RhdHVzQ29kZX0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSwzNDY0MSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgcj17QUNUSU9OX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBpfSxGTElHSFRfSEVBREVSUzpmdW5jdGlvbigpe3JldHVybiB5fSxORVhUX0FDVElPTl9OT1RfRk9VTkRfSEVBREVSOmZ1bmN0aW9uKCl7cmV0dXJuIEV9LE5FWFRfQUNUSU9OX1JFVkFMSURBVEVEX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBPfSxORVhUX0RJRF9QT1NUUE9ORV9IRUFERVI6ZnVuY3Rpb24oKXtyZXR1cm4gX30sTkVYVF9ITVJfUkVGUkVTSF9IQVNIX0NPT0tJRTpmdW5jdGlvbigpe3JldHVybiBmfSxORVhUX0hNUl9SRUZSRVNIX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBjfSxORVhUX0hUTUxfUkVRVUVTVF9JRF9IRUFERVI6ZnVuY3Rpb24oKXtyZXR1cm4gUn0sTkVYVF9JU19QUkVSRU5ERVJfSEVBREVSOmZ1bmN0aW9uKCl7cmV0dXJuIG19LE5FWFRfUkVRVUVTVF9JRF9IRUFERVI6ZnVuY3Rpb24oKXtyZXR1cm4gU30sTkVYVF9SRVdSSVRURU5fUEFUSF9IRUFERVI6ZnVuY3Rpb24oKXtyZXR1cm4gYn0sTkVYVF9SRVdSSVRURU5fUVVFUllfSEVBREVSOmZ1bmN0aW9uKCl7cmV0dXJuIGd9LE5FWFRfUk9VVEVSX1BSRUZFVENIX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBsfSxORVhUX1JPVVRFUl9TRUdNRU5UX1BSRUZFVENIX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBzfSxORVhUX1JPVVRFUl9TVEFMRV9USU1FX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBofSxORVhUX1JPVVRFUl9TVEFURV9UUkVFX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBhfSxORVhUX1JTQ19VTklPTl9RVUVSWTpmdW5jdGlvbigpe3JldHVybiB2fSxORVhUX1VSTDpmdW5jdGlvbigpe3JldHVybiBkfSxSU0NfQ09OVEVOVF9UWVBFX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBwfSxSU0NfSEVBREVSOmZ1bmN0aW9uKCl7cmV0dXJuIHV9fTtmb3IodmFyIG8gaW4gcilPYmplY3QuZGVmaW5lUHJvcGVydHkobixvLHtlbnVtZXJhYmxlOiEwLGdldDpyW29dfSk7bGV0IHU9InJzYyIsaT0ibmV4dC1hY3Rpb24iLGE9Im5leHQtcm91dGVyLXN0YXRlLXRyZWUiLGw9Im5leHQtcm91dGVyLXByZWZldGNoIixzPSJuZXh0LXJvdXRlci1zZWdtZW50LXByZWZldGNoIixjPSJuZXh0LWhtci1yZWZyZXNoIixmPSJfX25leHRfaG1yX3JlZnJlc2hfaGFzaF9fIixkPSJuZXh0LXVybCIscD0idGV4dC94LWNvbXBvbmVudCIseT1bdSxhLGwsYyxzXSx2PSJfcnNjIixoPSJ4LW5leHRqcy1zdGFsZS10aW1lIixfPSJ4LW5leHRqcy1wb3N0cG9uZWQiLGI9IngtbmV4dGpzLXJld3JpdHRlbi1wYXRoIixnPSJ4LW5leHRqcy1yZXdyaXR0ZW4tcXVlcnkiLG09IngtbmV4dGpzLXByZXJlbmRlciIsRT0ieC1uZXh0anMtYWN0aW9uLW5vdC1mb3VuZCIsUz0ieC1uZXh0anMtcmVxdWVzdC1pZCIsUj0ieC1uZXh0anMtaHRtbC1yZXF1ZXN0LWlkIixPPSJ4LWFjdGlvbi1yZXZhbGlkYXRlZCI7KCJmdW5jdGlvbiI9PXR5cGVvZiBuLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygbi5kZWZhdWx0JiZudWxsIT09bi5kZWZhdWx0KSYmdm9pZCAwPT09bi5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKG4uZGVmYXVsdCxuKSx0LmV4cG9ydHM9bi5kZWZhdWx0KX0sMjc0NTQsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIHI9e0RFRkFVTFRfU0VHTUVOVF9LRVk6ZnVuY3Rpb24oKXtyZXR1cm4gZn0sTk9UX0ZPVU5EX1NFR01FTlRfS0VZOmZ1bmN0aW9uKCl7cmV0dXJuIGR9LFBBR0VfU0VHTUVOVF9LRVk6ZnVuY3Rpb24oKXtyZXR1cm4gY30sYWRkU2VhcmNoUGFyYW1zSWZQYWdlU2VnbWVudDpmdW5jdGlvbigpe3JldHVybiBsfSxjb21wdXRlU2VsZWN0ZWRMYXlvdXRTZWdtZW50OmZ1bmN0aW9uKCl7cmV0dXJuIHN9LGdldFNlZ21lbnRWYWx1ZTpmdW5jdGlvbigpe3JldHVybiB1fSxnZXRTZWxlY3RlZExheW91dFNlZ21lbnRQYXRoOmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uIGUodCxuLHI9ITAsbz1bXSl7bGV0IGk7aWYocilpPXRbMV1bbl07ZWxzZXtsZXQgZT10WzFdO2k9ZS5jaGlsZHJlbj8/T2JqZWN0LnZhbHVlcyhlKVswXX1pZighaSlyZXR1cm4gbztsZXQgYT11KGlbMF0pO3JldHVybiFhfHxhLnN0YXJ0c1dpdGgoYyk/bzooby5wdXNoKGEpLGUoaSxuLCExLG8pKX19LGlzR3JvdXBTZWdtZW50OmZ1bmN0aW9uKCl7cmV0dXJuIGl9LGlzUGFyYWxsZWxSb3V0ZVNlZ21lbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gYX19O2Zvcih2YXIgbyBpbiByKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLG8se2VudW1lcmFibGU6ITAsZ2V0OnJbb119KTtmdW5jdGlvbiB1KGUpe3JldHVybiBBcnJheS5pc0FycmF5KGUpP2VbMV06ZX1mdW5jdGlvbiBpKGUpe3JldHVybiIoIj09PWVbMF0mJmUuZW5kc1dpdGgoIikiKX1mdW5jdGlvbiBhKGUpe3JldHVybiBlLnN0YXJ0c1dpdGgoIkAiKSYmIkBjaGlsZHJlbiIhPT1lfWZ1bmN0aW9uIGwoZSx0KXtpZihlLmluY2x1ZGVzKGMpKXtsZXQgZT1KU09OLnN0cmluZ2lmeSh0KTtyZXR1cm4ie30iIT09ZT9jKyI/IitlOmN9cmV0dXJuIGV9ZnVuY3Rpb24gcyhlLHQpe2lmKCFlfHwwPT09ZS5sZW5ndGgpcmV0dXJuIG51bGw7bGV0IG49ImNoaWxkcmVuIj09PXQ/ZVswXTplW2UubGVuZ3RoLTFdO3JldHVybiBuPT09Zj9udWxsOm59bGV0IGM9Il9fUEFHRV9fIixmPSJfX0RFRkFVTFRfXyIsZD0iL19ub3QtZm91bmQifSw3NTA1MSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgcj17VW5yZWNvZ25pemVkQWN0aW9uRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gdX0sdW5zdGFibGVfaXNVbnJlY29nbml6ZWRBY3Rpb25FcnJvcjpmdW5jdGlvbigpe3JldHVybiBpfX07Zm9yKHZhciBvIGluIHIpT2JqZWN0LmRlZmluZVByb3BlcnR5KG4sbyx7ZW51bWVyYWJsZTohMCxnZXQ6cltvXX0pO2NsYXNzIHUgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvciguLi5lKXtzdXBlciguLi5lKSx0aGlzLm5hbWU9IlVucmVjb2duaXplZEFjdGlvbkVycm9yIn19ZnVuY3Rpb24gaShlKXtyZXR1cm4hIShlJiYib2JqZWN0Ij09dHlwZW9mIGUmJmUgaW5zdGFuY2VvZiB1KX0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSw5NzA4OCwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiYWN0aW9uQXN5bmNTdG9yYWdlSW5zdGFuY2UiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiByfX0pO2xldCByPSgwLGUucig0OTIxMSkuY3JlYXRlQXN5bmNMb2NhbFN0b3JhZ2UpKCl9LDIzNzA4LChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJhY3Rpb25Bc3luY1N0b3JhZ2UiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiByLmFjdGlvbkFzeW5jU3RvcmFnZUluc3RhbmNlfX0pO2xldCByPWUucig5NzA4OCl9LDQxNzIxLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciByPXtnZXRSZWRpcmVjdEVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIGx9LGdldFJlZGlyZWN0U3RhdHVzQ29kZUZyb21FcnJvcjpmdW5jdGlvbigpe3JldHVybiBwfSxnZXRSZWRpcmVjdFR5cGVGcm9tRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gZH0sZ2V0VVJMRnJvbVJlZGlyZWN0RXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gZn0scGVybWFuZW50UmVkaXJlY3Q6ZnVuY3Rpb24oKXtyZXR1cm4gY30scmVkaXJlY3Q6ZnVuY3Rpb24oKXtyZXR1cm4gc319O2Zvcih2YXIgbyBpbiByKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLG8se2VudW1lcmFibGU6ITAsZ2V0OnJbb119KTtsZXQgdT1lLnIoOTMwNjMpLGk9ZS5yKDkwODYyKSxhPSJ1Ijx0eXBlb2Ygd2luZG93P2UucigyMzcwOCkuYWN0aW9uQXN5bmNTdG9yYWdlOnZvaWQgMDtmdW5jdGlvbiBsKGUsdCxuPXUuUmVkaXJlY3RTdGF0dXNDb2RlLlRlbXBvcmFyeVJlZGlyZWN0KXtsZXQgcj1PYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoaS5SRURJUkVDVF9FUlJPUl9DT0RFKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTM5NCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtyZXR1cm4gci5kaWdlc3Q9YCR7aS5SRURJUkVDVF9FUlJPUl9DT0RFfTske3R9OyR7ZX07JHtufTtgLHJ9ZnVuY3Rpb24gcyhlLHQpe3Rocm93IGwoZSx0Pz89YT8uZ2V0U3RvcmUoKT8uaXNBY3Rpb24/aS5SZWRpcmVjdFR5cGUucHVzaDppLlJlZGlyZWN0VHlwZS5yZXBsYWNlLHUuUmVkaXJlY3RTdGF0dXNDb2RlLlRlbXBvcmFyeVJlZGlyZWN0KX1mdW5jdGlvbiBjKGUsdD1pLlJlZGlyZWN0VHlwZS5yZXBsYWNlKXt0aHJvdyBsKGUsdCx1LlJlZGlyZWN0U3RhdHVzQ29kZS5QZXJtYW5lbnRSZWRpcmVjdCl9ZnVuY3Rpb24gZihlKXtyZXR1cm4oMCxpLmlzUmVkaXJlY3RFcnJvcikoZSk/ZS5kaWdlc3Quc3BsaXQoIjsiKS5zbGljZSgyLC0yKS5qb2luKCI7Iik6bnVsbH1mdW5jdGlvbiBkKGUpe2lmKCEoMCxpLmlzUmVkaXJlY3RFcnJvcikoZSkpdGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKCJOb3QgYSByZWRpcmVjdCBlcnJvciIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMjYwIixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO3JldHVybiBlLmRpZ2VzdC5zcGxpdCgiOyIsMilbMV19ZnVuY3Rpb24gcChlKXtpZighKDAsaS5pc1JlZGlyZWN0RXJyb3IpKGUpKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiTm90IGEgcmVkaXJlY3QgZXJyb3IiKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTI2MCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtyZXR1cm4gTnVtYmVyKGUuZGlnZXN0LnNwbGl0KCI7IikuYXQoLTIpKX0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSwxNjg3MiwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgcj17QXBwUm91dGVyQ29udGV4dDpmdW5jdGlvbigpe3JldHVybiBpfSxHbG9iYWxMYXlvdXRSb3V0ZXJDb250ZXh0OmZ1bmN0aW9uKCl7cmV0dXJuIGx9LExheW91dFJvdXRlckNvbnRleHQ6ZnVuY3Rpb24oKXtyZXR1cm4gYX0sTWlzc2luZ1Nsb3RDb250ZXh0OmZ1bmN0aW9uKCl7cmV0dXJuIGN9LFRlbXBsYXRlQ29udGV4dDpmdW5jdGlvbigpe3JldHVybiBzfX07Zm9yKHZhciBvIGluIHIpT2JqZWN0LmRlZmluZVByb3BlcnR5KG4sbyx7ZW51bWVyYWJsZTohMCxnZXQ6cltvXX0pO2xldCB1PWUucig4MTI1OCkuXyhlLnIoNzUyMDEpKSxpPXUuZGVmYXVsdC5jcmVhdGVDb250ZXh0KG51bGwpLGE9dS5kZWZhdWx0LmNyZWF0ZUNvbnRleHQobnVsbCksbD11LmRlZmF1bHQuY3JlYXRlQ29udGV4dChudWxsKSxzPXUuZGVmYXVsdC5jcmVhdGVDb250ZXh0KG51bGwpLGM9dS5kZWZhdWx0LmNyZWF0ZUNvbnRleHQobmV3IFNldCl9LDYzMTY1LChlLHQsbik9Pnt2YXIgcj17MjI5OmZ1bmN0aW9uKGUpe3ZhciB0LG4scixvPWUuZXhwb3J0cz17fTtmdW5jdGlvbiB1KCl7dGhyb3cgRXJyb3IoInNldFRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQiKX1mdW5jdGlvbiBpKCl7dGhyb3cgRXJyb3IoImNsZWFyVGltZW91dCBoYXMgbm90IGJlZW4gZGVmaW5lZCIpfXRyeXt0PSJmdW5jdGlvbiI9PXR5cGVvZiBzZXRUaW1lb3V0P3NldFRpbWVvdXQ6dX1jYXRjaChlKXt0PXV9dHJ5e249ImZ1bmN0aW9uIj09dHlwZW9mIGNsZWFyVGltZW91dD9jbGVhclRpbWVvdXQ6aX1jYXRjaChlKXtuPWl9ZnVuY3Rpb24gYShlKXtpZih0PT09c2V0VGltZW91dClyZXR1cm4gc2V0VGltZW91dChlLDApO2lmKCh0PT09dXx8IXQpJiZzZXRUaW1lb3V0KXJldHVybiB0PXNldFRpbWVvdXQsc2V0VGltZW91dChlLDApO3RyeXtyZXR1cm4gdChlLDApfWNhdGNoKG4pe3RyeXtyZXR1cm4gdC5jYWxsKG51bGwsZSwwKX1jYXRjaChuKXtyZXR1cm4gdC5jYWxsKHRoaXMsZSwwKX19fXZhciBsPVtdLHM9ITEsYz0tMTtmdW5jdGlvbiBmKCl7cyYmciYmKHM9ITEsci5sZW5ndGg/bD1yLmNvbmNhdChsKTpjPS0xLGwubGVuZ3RoJiZkKCkpfWZ1bmN0aW9uIGQoKXtpZighcyl7dmFyIGU9YShmKTtzPSEwO2Zvcih2YXIgdD1sLmxlbmd0aDt0Oyl7Zm9yKHI9bCxsPVtdOysrYzx0OylyJiZyW2NdLnJ1bigpO2M9LTEsdD1sLmxlbmd0aH1yPW51bGwscz0hMSxmdW5jdGlvbihlKXtpZihuPT09Y2xlYXJUaW1lb3V0KXJldHVybiBjbGVhclRpbWVvdXQoZSk7aWYoKG49PT1pfHwhbikmJmNsZWFyVGltZW91dClyZXR1cm4gbj1jbGVhclRpbWVvdXQsY2xlYXJUaW1lb3V0KGUpO3RyeXtuKGUpfWNhdGNoKHQpe3RyeXtyZXR1cm4gbi5jYWxsKG51bGwsZSl9Y2F0Y2godCl7cmV0dXJuIG4uY2FsbCh0aGlzLGUpfX19KGUpfX1mdW5jdGlvbiBwKGUsdCl7dGhpcy5mdW49ZSx0aGlzLmFycmF5PXR9ZnVuY3Rpb24geSgpe31vLm5leHRUaWNrPWZ1bmN0aW9uKGUpe3ZhciB0PUFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMSk7aWYoYXJndW1lbnRzLmxlbmd0aD4xKWZvcih2YXIgbj0xO248YXJndW1lbnRzLmxlbmd0aDtuKyspdFtuLTFdPWFyZ3VtZW50c1tuXTtsLnB1c2gobmV3IHAoZSx0KSksMSE9PWwubGVuZ3RofHxzfHxhKGQpfSxwLnByb3RvdHlwZS5ydW49ZnVuY3Rpb24oKXt0aGlzLmZ1bi5hcHBseShudWxsLHRoaXMuYXJyYXkpfSxvLnRpdGxlPSJicm93c2VyIixvLmJyb3dzZXI9ITAsby5lbnY9e30sby5hcmd2PVtdLG8udmVyc2lvbj0iIixvLnZlcnNpb25zPXt9LG8ub249eSxvLmFkZExpc3RlbmVyPXksby5vbmNlPXksby5vZmY9eSxvLnJlbW92ZUxpc3RlbmVyPXksby5yZW1vdmVBbGxMaXN0ZW5lcnM9eSxvLmVtaXQ9eSxvLnByZXBlbmRMaXN0ZW5lcj15LG8ucHJlcGVuZE9uY2VMaXN0ZW5lcj15LG8ubGlzdGVuZXJzPWZ1bmN0aW9uKGUpe3JldHVybltdfSxvLmJpbmRpbmc9ZnVuY3Rpb24oZSl7dGhyb3cgRXJyb3IoInByb2Nlc3MuYmluZGluZyBpcyBub3Qgc3VwcG9ydGVkIil9LG8uY3dkPWZ1bmN0aW9uKCl7cmV0dXJuIi8ifSxvLmNoZGlyPWZ1bmN0aW9uKGUpe3Rocm93IEVycm9yKCJwcm9jZXNzLmNoZGlyIGlzIG5vdCBzdXBwb3J0ZWQiKX0sby51bWFzaz1mdW5jdGlvbigpe3JldHVybiAwfX19LG89e307ZnVuY3Rpb24gdShlKXt2YXIgdD1vW2VdO2lmKHZvaWQgMCE9PXQpcmV0dXJuIHQuZXhwb3J0czt2YXIgbj1vW2VdPXtleHBvcnRzOnt9fSxpPSEwO3RyeXtyW2VdKG4sbi5leHBvcnRzLHUpLGk9ITF9ZmluYWxseXtpJiZkZWxldGUgb1tlXX1yZXR1cm4gbi5leHBvcnRzfXUuYWI9Ii9ST09UL25vZGVfbW9kdWxlcy8ucG5wbS9uZXh0QDE2LjEuNl9AYmFiZWwrY29yZUA3LjI5LjBfcmVhY3QtZG9tQDE5LjIuM19yZWFjdEAxOS4yLjNfX3JlYWN0QDE5LjIuMy9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NvbXBpbGVkL3Byb2Nlc3MvIix0LmV4cG9ydHM9dSgyMjkpfSw4MjYzNywoZSx0LG4pPT57InVzZSBzdHJpY3QiO3ZhciByLG87dC5leHBvcnRzPShudWxsPT0ocj1lLmcucHJvY2Vzcyk/dm9pZCAwOnIuZW52KSYmIm9iamVjdCI9PXR5cGVvZihudWxsPT0obz1lLmcucHJvY2Vzcyk/dm9pZCAwOm8uZW52KT9lLmcucHJvY2VzczplLnIoNjMxNjUpfSw5OTI5MywoZSx0LG4pPT57InVzZSBzdHJpY3QiO3ZhciByPVN5bWJvbC5mb3IoInJlYWN0LnRyYW5zaXRpb25hbC5lbGVtZW50Iik7ZnVuY3Rpb24gbyhlLHQsbil7dmFyIG89bnVsbDtpZih2b2lkIDAhPT1uJiYobz0iIituKSx2b2lkIDAhPT10LmtleSYmKG89IiIrdC5rZXkpLCJrZXkiaW4gdClmb3IodmFyIHUgaW4gbj17fSx0KSJrZXkiIT09dSYmKG5bdV09dFt1XSk7ZWxzZSBuPXQ7cmV0dXJueyQkdHlwZW9mOnIsdHlwZTplLGtleTpvLHJlZjp2b2lkIDAhPT0odD1uLnJlZik/dDpudWxsLHByb3BzOm59fW4uRnJhZ21lbnQ9U3ltYm9sLmZvcigicmVhY3QuZnJhZ21lbnQiKSxuLmpzeD1vLG4uanN4cz1vfSw5ODEzNCwoZSx0LG4pPT57InVzZSBzdHJpY3QiO3QuZXhwb3J0cz1lLnIoOTkyOTMpfSw2MzQxNywoZSx0LG4pPT57InVzZSBzdHJpY3QiO3ZhciByPWUuaSg4MjYzNyksbz1TeW1ib2wuZm9yKCJyZWFjdC50cmFuc2l0aW9uYWwuZWxlbWVudCIpLHU9U3ltYm9sLmZvcigicmVhY3QucG9ydGFsIiksaT1TeW1ib2wuZm9yKCJyZWFjdC5mcmFnbWVudCIpLGE9U3ltYm9sLmZvcigicmVhY3Quc3RyaWN0X21vZGUiKSxsPVN5bWJvbC5mb3IoInJlYWN0LnByb2ZpbGVyIikscz1TeW1ib2wuZm9yKCJyZWFjdC5jb25zdW1lciIpLGM9U3ltYm9sLmZvcigicmVhY3QuY29udGV4dCIpLGY9U3ltYm9sLmZvcigicmVhY3QuZm9yd2FyZF9yZWYiKSxkPVN5bWJvbC5mb3IoInJlYWN0LnN1c3BlbnNlIikscD1TeW1ib2wuZm9yKCJyZWFjdC5tZW1vIikseT1TeW1ib2wuZm9yKCJyZWFjdC5sYXp5Iiksdj1TeW1ib2wuZm9yKCJyZWFjdC5hY3Rpdml0eSIpLGg9U3ltYm9sLmZvcigicmVhY3Qudmlld190cmFuc2l0aW9uIiksXz1TeW1ib2wuaXRlcmF0b3IsYj17aXNNb3VudGVkOmZ1bmN0aW9uKCl7cmV0dXJuITF9LGVucXVldWVGb3JjZVVwZGF0ZTpmdW5jdGlvbigpe30sZW5xdWV1ZVJlcGxhY2VTdGF0ZTpmdW5jdGlvbigpe30sZW5xdWV1ZVNldFN0YXRlOmZ1bmN0aW9uKCl7fX0sZz1PYmplY3QuYXNzaWduLG09e307ZnVuY3Rpb24gRShlLHQsbil7dGhpcy5wcm9wcz1lLHRoaXMuY29udGV4dD10LHRoaXMucmVmcz1tLHRoaXMudXBkYXRlcj1ufHxifWZ1bmN0aW9uIFMoKXt9ZnVuY3Rpb24gUihlLHQsbil7dGhpcy5wcm9wcz1lLHRoaXMuY29udGV4dD10LHRoaXMucmVmcz1tLHRoaXMudXBkYXRlcj1ufHxifUUucHJvdG90eXBlLmlzUmVhY3RDb21wb25lbnQ9e30sRS5wcm90b3R5cGUuc2V0U3RhdGU9ZnVuY3Rpb24oZSx0KXtpZigib2JqZWN0IiE9dHlwZW9mIGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlJiZudWxsIT1lKXRocm93IEVycm9yKCJ0YWtlcyBhbiBvYmplY3Qgb2Ygc3RhdGUgdmFyaWFibGVzIHRvIHVwZGF0ZSBvciBhIGZ1bmN0aW9uIHdoaWNoIHJldHVybnMgYW4gb2JqZWN0IG9mIHN0YXRlIHZhcmlhYmxlcy4iKTt0aGlzLnVwZGF0ZXIuZW5xdWV1ZVNldFN0YXRlKHRoaXMsZSx0LCJzZXRTdGF0ZSIpfSxFLnByb3RvdHlwZS5mb3JjZVVwZGF0ZT1mdW5jdGlvbihlKXt0aGlzLnVwZGF0ZXIuZW5xdWV1ZUZvcmNlVXBkYXRlKHRoaXMsZSwiZm9yY2VVcGRhdGUiKX0sUy5wcm90b3R5cGU9RS5wcm90b3R5cGU7dmFyIE89Ui5wcm90b3R5cGU9bmV3IFM7Ty5jb25zdHJ1Y3Rvcj1SLGcoTyxFLnByb3RvdHlwZSksTy5pc1B1cmVSZWFjdENvbXBvbmVudD0hMDt2YXIgdz1BcnJheS5pc0FycmF5O2Z1bmN0aW9uIFQoKXt9dmFyIGo9e0g6bnVsbCxBOm51bGwsVDpudWxsLFM6bnVsbH0sQT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2Z1bmN0aW9uIGsoZSx0LG4pe3ZhciByPW4ucmVmO3JldHVybnskJHR5cGVvZjpvLHR5cGU6ZSxrZXk6dCxyZWY6dm9pZCAwIT09cj9yOm51bGwscHJvcHM6bn19ZnVuY3Rpb24gQyhlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiZlLiQkdHlwZW9mPT09b312YXIgTj0vXC8rL2c7ZnVuY3Rpb24gUChlLHQpe3ZhciBuLHI7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmbnVsbCE9ZS5rZXk/KG49IiIrZS5rZXkscj17Ij0iOiI9MCIsIjoiOiI9MiJ9LCIkIituLnJlcGxhY2UoL1s9Ol0vZyxmdW5jdGlvbihlKXtyZXR1cm4gcltlXX0pKTp0LnRvU3RyaW5nKDM2KX1mdW5jdGlvbiB4KGUsdCxuKXtpZihudWxsPT1lKXJldHVybiBlO3ZhciByPVtdLGk9MDtyZXR1cm4hZnVuY3Rpb24gZSh0LG4scixpLGEpe3ZhciBsLHMsYyxmPXR5cGVvZiB0OygidW5kZWZpbmVkIj09PWZ8fCJib29sZWFuIj09PWYpJiYodD1udWxsKTt2YXIgZD0hMTtpZihudWxsPT09dClkPSEwO2Vsc2Ugc3dpdGNoKGYpe2Nhc2UiYmlnaW50IjpjYXNlInN0cmluZyI6Y2FzZSJudW1iZXIiOmQ9ITA7YnJlYWs7Y2FzZSJvYmplY3QiOnN3aXRjaCh0LiQkdHlwZW9mKXtjYXNlIG86Y2FzZSB1OmQ9ITA7YnJlYWs7Y2FzZSB5OnJldHVybiBlKChkPXQuX2luaXQpKHQuX3BheWxvYWQpLG4scixpLGEpfX1pZihkKXJldHVybiBhPWEodCksZD0iIj09PWk/Ii4iK1AodCwwKTppLHcoYSk/KHI9IiIsbnVsbCE9ZCYmKHI9ZC5yZXBsYWNlKE4sIiQmLyIpKyIvIiksZShhLG4sciwiIixmdW5jdGlvbihlKXtyZXR1cm4gZX0pKTpudWxsIT1hJiYoQyhhKSYmKGw9YSxzPXIrKG51bGw9PWEua2V5fHx0JiZ0LmtleT09PWEua2V5PyIiOigiIithLmtleSkucmVwbGFjZShOLCIkJi8iKSsiLyIpK2QsYT1rKGwudHlwZSxzLGwucHJvcHMpKSxuLnB1c2goYSkpLDE7ZD0wO3ZhciBwPSIiPT09aT8iLiI6aSsiOiI7aWYodyh0KSlmb3IodmFyIHY9MDt2PHQubGVuZ3RoO3YrKylmPXArUChpPXRbdl0sdiksZCs9ZShpLG4scixmLGEpO2Vsc2UgaWYoImZ1bmN0aW9uIj09dHlwZW9mKHY9bnVsbD09PShjPXQpfHwib2JqZWN0IiE9dHlwZW9mIGM/bnVsbDoiZnVuY3Rpb24iPT10eXBlb2YoYz1fJiZjW19dfHxjWyJAQGl0ZXJhdG9yIl0pP2M6bnVsbCkpZm9yKHQ9di5jYWxsKHQpLHY9MDshKGk9dC5uZXh0KCkpLmRvbmU7KWY9cCtQKGk9aS52YWx1ZSx2KyspLGQrPWUoaSxuLHIsZixhKTtlbHNlIGlmKCJvYmplY3QiPT09Zil7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQudGhlbilyZXR1cm4gZShmdW5jdGlvbihlKXtzd2l0Y2goZS5zdGF0dXMpe2Nhc2UiZnVsZmlsbGVkIjpyZXR1cm4gZS52YWx1ZTtjYXNlInJlamVjdGVkIjp0aHJvdyBlLnJlYXNvbjtkZWZhdWx0OnN3aXRjaCgic3RyaW5nIj09dHlwZW9mIGUuc3RhdHVzP2UudGhlbihULFQpOihlLnN0YXR1cz0icGVuZGluZyIsZS50aGVuKGZ1bmN0aW9uKHQpeyJwZW5kaW5nIj09PWUuc3RhdHVzJiYoZS5zdGF0dXM9ImZ1bGZpbGxlZCIsZS52YWx1ZT10KX0sZnVuY3Rpb24odCl7InBlbmRpbmciPT09ZS5zdGF0dXMmJihlLnN0YXR1cz0icmVqZWN0ZWQiLGUucmVhc29uPXQpfSkpLGUuc3RhdHVzKXtjYXNlImZ1bGZpbGxlZCI6cmV0dXJuIGUudmFsdWU7Y2FzZSJyZWplY3RlZCI6dGhyb3cgZS5yZWFzb259fXRocm93IGV9KHQpLG4scixpLGEpO3Rocm93IEVycm9yKCJPYmplY3RzIGFyZSBub3QgdmFsaWQgYXMgYSBSZWFjdCBjaGlsZCAoZm91bmQ6ICIrKCJbb2JqZWN0IE9iamVjdF0iPT09KG49U3RyaW5nKHQpKT8ib2JqZWN0IHdpdGgga2V5cyB7IitPYmplY3Qua2V5cyh0KS5qb2luKCIsICIpKyJ9IjpuKSsiKS4gSWYgeW91IG1lYW50IHRvIHJlbmRlciBhIGNvbGxlY3Rpb24gb2YgY2hpbGRyZW4sIHVzZSBhbiBhcnJheSBpbnN0ZWFkLiIpfXJldHVybiBkfShlLHIsIiIsIiIsZnVuY3Rpb24oZSl7cmV0dXJuIHQuY2FsbChuLGUsaSsrKX0pLHJ9ZnVuY3Rpb24gRChlKXtpZigtMT09PWUuX3N0YXR1cyl7dmFyIHQ9ZS5fcmVzdWx0Oyh0PXQoKSkudGhlbihmdW5jdGlvbih0KXsoMD09PWUuX3N0YXR1c3x8LTE9PT1lLl9zdGF0dXMpJiYoZS5fc3RhdHVzPTEsZS5fcmVzdWx0PXQpfSxmdW5jdGlvbih0KXsoMD09PWUuX3N0YXR1c3x8LTE9PT1lLl9zdGF0dXMpJiYoZS5fc3RhdHVzPTIsZS5fcmVzdWx0PXQpfSksLTE9PT1lLl9zdGF0dXMmJihlLl9zdGF0dXM9MCxlLl9yZXN1bHQ9dCl9aWYoMT09PWUuX3N0YXR1cylyZXR1cm4gZS5fcmVzdWx0LmRlZmF1bHQ7dGhyb3cgZS5fcmVzdWx0fXZhciBNPSJmdW5jdGlvbiI9PXR5cGVvZiByZXBvcnRFcnJvcj9yZXBvcnRFcnJvcjpmdW5jdGlvbihlKXtpZigib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5FcnJvckV2ZW50KXt2YXIgdD1uZXcgd2luZG93LkVycm9yRXZlbnQoImVycm9yIix7YnViYmxlczohMCxjYW5jZWxhYmxlOiEwLG1lc3NhZ2U6Im9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmInN0cmluZyI9PXR5cGVvZiBlLm1lc3NhZ2U/U3RyaW5nKGUubWVzc2FnZSk6U3RyaW5nKGUpLGVycm9yOmV9KTtpZighd2luZG93LmRpc3BhdGNoRXZlbnQodCkpcmV0dXJufWVsc2UgaWYoIm9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJiJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHQuZW1pdClyZXR1cm4gdm9pZCByLmRlZmF1bHQuZW1pdCgidW5jYXVnaHRFeGNlcHRpb24iLGUpO2NvbnNvbGUuZXJyb3IoZSl9O2Z1bmN0aW9uICQoZSl7dmFyIHQ9ai5ULG49e307bi50eXBlcz1udWxsIT09dD90LnR5cGVzOm51bGwsai5UPW47dHJ5e3ZhciByPWUoKSxvPWouUztudWxsIT09byYmbyhuLHIpLCJvYmplY3QiPT10eXBlb2YgciYmbnVsbCE9PXImJiJmdW5jdGlvbiI9PXR5cGVvZiByLnRoZW4mJnIudGhlbihULE0pfWNhdGNoKGUpe00oZSl9ZmluYWxseXtudWxsIT09dCYmbnVsbCE9PW4udHlwZXMmJih0LnR5cGVzPW4udHlwZXMpLGouVD10fX1mdW5jdGlvbiBJKGUpe3ZhciB0PWouVDtpZihudWxsIT09dCl7dmFyIG49dC50eXBlcztudWxsPT09bj90LnR5cGVzPVtlXTotMT09PW4uaW5kZXhPZihlKSYmbi5wdXNoKGUpfWVsc2UgJChJLmJpbmQobnVsbCxlKSl9bi5BY3Rpdml0eT12LG4uQ2hpbGRyZW49e21hcDp4LGZvckVhY2g6ZnVuY3Rpb24oZSx0LG4pe3goZSxmdW5jdGlvbigpe3QuYXBwbHkodGhpcyxhcmd1bWVudHMpfSxuKX0sY291bnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9MDtyZXR1cm4geChlLGZ1bmN0aW9uKCl7dCsrfSksdH0sdG9BcnJheTpmdW5jdGlvbihlKXtyZXR1cm4geChlLGZ1bmN0aW9uKGUpe3JldHVybiBlfSl8fFtdfSxvbmx5OmZ1bmN0aW9uKGUpe2lmKCFDKGUpKXRocm93IEVycm9yKCJSZWFjdC5DaGlsZHJlbi5vbmx5IGV4cGVjdGVkIHRvIHJlY2VpdmUgYSBzaW5nbGUgUmVhY3QgZWxlbWVudCBjaGlsZC4iKTtyZXR1cm4gZX19LG4uQ29tcG9uZW50PUUsbi5GcmFnbWVudD1pLG4uUHJvZmlsZXI9bCxuLlB1cmVDb21wb25lbnQ9UixuLlN0cmljdE1vZGU9YSxuLlN1c3BlbnNlPWQsbi5WaWV3VHJhbnNpdGlvbj1oLG4uX19DTElFTlRfSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfV0FSTl9VU0VSU19USEVZX0NBTk5PVF9VUEdSQURFPWosbi5fX0NPTVBJTEVSX1JVTlRJTUU9e19fcHJvdG9fXzpudWxsLGM6ZnVuY3Rpb24oZSl7cmV0dXJuIGouSC51c2VNZW1vQ2FjaGUoZSl9fSxuLmFkZFRyYW5zaXRpb25UeXBlPUksbi5jYWNoZT1mdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gZS5hcHBseShudWxsLGFyZ3VtZW50cyl9fSxuLmNhY2hlU2lnbmFsPWZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9LG4uY2xvbmVFbGVtZW50PWZ1bmN0aW9uKGUsdCxuKXtpZihudWxsPT1lKXRocm93IEVycm9yKCJUaGUgYXJndW1lbnQgbXVzdCBiZSBhIFJlYWN0IGVsZW1lbnQsIGJ1dCB5b3UgcGFzc2VkICIrZSsiLiIpO3ZhciByPWcoe30sZS5wcm9wcyksbz1lLmtleTtpZihudWxsIT10KWZvcih1IGluIHZvaWQgMCE9PXQua2V5JiYobz0iIit0LmtleSksdClBLmNhbGwodCx1KSYmImtleSIhPT11JiYiX19zZWxmIiE9PXUmJiJfX3NvdXJjZSIhPT11JiYoInJlZiIhPT11fHx2b2lkIDAhPT10LnJlZikmJihyW3VdPXRbdV0pO3ZhciB1PWFyZ3VtZW50cy5sZW5ndGgtMjtpZigxPT09dSlyLmNoaWxkcmVuPW47ZWxzZSBpZigxPHUpe2Zvcih2YXIgaT1BcnJheSh1KSxhPTA7YTx1O2ErKylpW2FdPWFyZ3VtZW50c1thKzJdO3IuY2hpbGRyZW49aX1yZXR1cm4gayhlLnR5cGUsbyxyKX0sbi5jcmVhdGVDb250ZXh0PWZ1bmN0aW9uKGUpe3JldHVybihlPXskJHR5cGVvZjpjLF9jdXJyZW50VmFsdWU6ZSxfY3VycmVudFZhbHVlMjplLF90aHJlYWRDb3VudDowLFByb3ZpZGVyOm51bGwsQ29uc3VtZXI6bnVsbH0pLlByb3ZpZGVyPWUsZS5Db25zdW1lcj17JCR0eXBlb2Y6cyxfY29udGV4dDplfSxlfSxuLmNyZWF0ZUVsZW1lbnQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByLG89e30sdT1udWxsO2lmKG51bGwhPXQpZm9yKHIgaW4gdm9pZCAwIT09dC5rZXkmJih1PSIiK3Qua2V5KSx0KUEuY2FsbCh0LHIpJiYia2V5IiE9PXImJiJfX3NlbGYiIT09ciYmIl9fc291cmNlIiE9PXImJihvW3JdPXRbcl0pO3ZhciBpPWFyZ3VtZW50cy5sZW5ndGgtMjtpZigxPT09aSlvLmNoaWxkcmVuPW47ZWxzZSBpZigxPGkpe2Zvcih2YXIgYT1BcnJheShpKSxsPTA7bDxpO2wrKylhW2xdPWFyZ3VtZW50c1tsKzJdO28uY2hpbGRyZW49YX1pZihlJiZlLmRlZmF1bHRQcm9wcylmb3IociBpbiBpPWUuZGVmYXVsdFByb3BzKXZvaWQgMD09PW9bcl0mJihvW3JdPWlbcl0pO3JldHVybiBrKGUsdSxvKX0sbi5jcmVhdGVSZWY9ZnVuY3Rpb24oKXtyZXR1cm57Y3VycmVudDpudWxsfX0sbi5mb3J3YXJkUmVmPWZ1bmN0aW9uKGUpe3JldHVybnskJHR5cGVvZjpmLHJlbmRlcjplfX0sbi5pc1ZhbGlkRWxlbWVudD1DLG4ubGF6eT1mdW5jdGlvbihlKXtyZXR1cm57JCR0eXBlb2Y6eSxfcGF5bG9hZDp7X3N0YXR1czotMSxfcmVzdWx0OmV9LF9pbml0OkR9fSxuLm1lbW89ZnVuY3Rpb24oZSx0KXtyZXR1cm57JCR0eXBlb2Y6cCx0eXBlOmUsY29tcGFyZTp2b2lkIDA9PT10P251bGw6dH19LG4uc3RhcnRUcmFuc2l0aW9uPSQsbi51bnN0YWJsZV91c2VDYWNoZVJlZnJlc2g9ZnVuY3Rpb24oKXtyZXR1cm4gai5ILnVzZUNhY2hlUmVmcmVzaCgpfSxuLnVzZT1mdW5jdGlvbihlKXtyZXR1cm4gai5ILnVzZShlKX0sbi51c2VBY3Rpb25TdGF0ZT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIGouSC51c2VBY3Rpb25TdGF0ZShlLHQsbil9LG4udXNlQ2FsbGJhY2s9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gai5ILnVzZUNhbGxiYWNrKGUsdCl9LG4udXNlQ29udGV4dD1mdW5jdGlvbihlKXtyZXR1cm4gai5ILnVzZUNvbnRleHQoZSl9LG4udXNlRGVidWdWYWx1ZT1mdW5jdGlvbigpe30sbi51c2VEZWZlcnJlZFZhbHVlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGouSC51c2VEZWZlcnJlZFZhbHVlKGUsdCl9LG4udXNlRWZmZWN0PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGouSC51c2VFZmZlY3QoZSx0KX0sbi51c2VFZmZlY3RFdmVudD1mdW5jdGlvbihlKXtyZXR1cm4gai5ILnVzZUVmZmVjdEV2ZW50KGUpfSxuLnVzZUlkPWZ1bmN0aW9uKCl7cmV0dXJuIGouSC51c2VJZCgpfSxuLnVzZUltcGVyYXRpdmVIYW5kbGU9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBqLkgudXNlSW1wZXJhdGl2ZUhhbmRsZShlLHQsbil9LG4udXNlSW5zZXJ0aW9uRWZmZWN0PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGouSC51c2VJbnNlcnRpb25FZmZlY3QoZSx0KX0sbi51c2VMYXlvdXRFZmZlY3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gai5ILnVzZUxheW91dEVmZmVjdChlLHQpfSxuLnVzZU1lbW89ZnVuY3Rpb24oZSx0KXtyZXR1cm4gai5ILnVzZU1lbW8oZSx0KX0sbi51c2VPcHRpbWlzdGljPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGouSC51c2VPcHRpbWlzdGljKGUsdCl9LG4udXNlUmVkdWNlcj1mdW5jdGlvbihlLHQsbil7cmV0dXJuIGouSC51c2VSZWR1Y2VyKGUsdCxuKX0sbi51c2VSZWY9ZnVuY3Rpb24oZSl7cmV0dXJuIGouSC51c2VSZWYoZSl9LG4udXNlU3RhdGU9ZnVuY3Rpb24oZSl7cmV0dXJuIGouSC51c2VTdGF0ZShlKX0sbi51c2VTeW5jRXh0ZXJuYWxTdG9yZT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIGouSC51c2VTeW5jRXh0ZXJuYWxTdG9yZShlLHQsbil9LG4udXNlVHJhbnNpdGlvbj1mdW5jdGlvbigpe3JldHVybiBqLkgudXNlVHJhbnNpdGlvbigpfSxuLnZlcnNpb249IjE5LjMuMC1jYW5hcnktZjkzYjlmZDQtMjAyNTEyMTcifSw3NTIwMSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO3QuZXhwb3J0cz1lLnIoNjM0MTcpfSw0NDA2NiwoZSx0LG4pPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIFdlYWtNYXApcmV0dXJuIG51bGw7dmFyIHQ9bmV3IFdlYWtNYXAsbj1uZXcgV2Vha01hcDtyZXR1cm4ocj1mdW5jdGlvbihlKXtyZXR1cm4gZT9uOnR9KShlKX1uLl89ZnVuY3Rpb24oZSx0KXtpZighdCYmZSYmZS5fX2VzTW9kdWxlKXJldHVybiBlO2lmKG51bGw9PT1lfHwib2JqZWN0IiE9dHlwZW9mIGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlKXJldHVybntkZWZhdWx0OmV9O3ZhciBuPXIodCk7aWYobiYmbi5oYXMoZSkpcmV0dXJuIG4uZ2V0KGUpO3ZhciBvPXtfX3Byb3RvX186bnVsbH0sdT1PYmplY3QuZGVmaW5lUHJvcGVydHkmJk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7Zm9yKHZhciBpIGluIGUpaWYoImRlZmF1bHQiIT09aSYmT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsaSkpe3ZhciBhPXU/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLGkpOm51bGw7YSYmKGEuZ2V0fHxhLnNldCk/T2JqZWN0LmRlZmluZVByb3BlcnR5KG8saSxhKTpvW2ldPWVbaV19cmV0dXJuIG8uZGVmYXVsdD1lLG4mJm4uc2V0KGUsbyksb319LDgxMjU4LChlLHQsbik9PnsidXNlIHN0cmljdCI7bi5fPWZ1bmN0aW9uKGUpe3JldHVybiBlJiZlLl9fZXNNb2R1bGU/ZTp7ZGVmYXVsdDplfX19LDQ5MjExLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciByPXtiaW5kU25hcHNob3Q6ZnVuY3Rpb24oKXtyZXR1cm4gc30sY3JlYXRlQXN5bmNMb2NhbFN0b3JhZ2U6ZnVuY3Rpb24oKXtyZXR1cm4gbH0sY3JlYXRlU25hcHNob3Q6ZnVuY3Rpb24oKXtyZXR1cm4gY319O2Zvcih2YXIgbyBpbiByKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLG8se2VudW1lcmFibGU6ITAsZ2V0OnJbb119KTtsZXQgdT1PYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIkludmFyaWFudDogQXN5bmNMb2NhbFN0b3JhZ2UgYWNjZXNzZWQgaW4gcnVudGltZSB3aGVyZSBpdCBpcyBub3QgYXZhaWxhYmxlIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU1MDQiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2xhc3MgaXtkaXNhYmxlKCl7dGhyb3cgdX1nZXRTdG9yZSgpe31ydW4oKXt0aHJvdyB1fWV4aXQoKXt0aHJvdyB1fWVudGVyV2l0aCgpe3Rocm93IHV9c3RhdGljIGJpbmQoZSl7cmV0dXJuIGV9fWxldCBhPSJ1Ij50eXBlb2YgZ2xvYmFsVGhpcyYmZ2xvYmFsVGhpcy5Bc3luY0xvY2FsU3RvcmFnZTtmdW5jdGlvbiBsKCl7cmV0dXJuIGE/bmV3IGE6bmV3IGl9ZnVuY3Rpb24gcyhlKXtyZXR1cm4gYT9hLmJpbmQoZSk6aS5iaW5kKGUpfWZ1bmN0aW9uIGMoKXtyZXR1cm4gYT9hLnNuYXBzaG90KCk6ZnVuY3Rpb24oZSwuLi50KXtyZXR1cm4gZSguLi50KX19fSw1NjU0OSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO3ZhciByPWUucig3NTIwMSk7ZnVuY3Rpb24gbyhlKXt2YXIgdD0iaHR0cHM6Ly9yZWFjdC5kZXYvZXJyb3JzLyIrZTtpZigxPGFyZ3VtZW50cy5sZW5ndGgpe3QrPSI/YXJnc1tdPSIrZW5jb2RlVVJJQ29tcG9uZW50KGFyZ3VtZW50c1sxXSk7Zm9yKHZhciBuPTI7bjxhcmd1bWVudHMubGVuZ3RoO24rKyl0Kz0iJmFyZ3NbXT0iK2VuY29kZVVSSUNvbXBvbmVudChhcmd1bWVudHNbbl0pfXJldHVybiJNaW5pZmllZCBSZWFjdCBlcnJvciAjIitlKyI7IHZpc2l0ICIrdCsiIGZvciB0aGUgZnVsbCBtZXNzYWdlIG9yIHVzZSB0aGUgbm9uLW1pbmlmaWVkIGRldiBlbnZpcm9ubWVudCBmb3IgZnVsbCBlcnJvcnMgYW5kIGFkZGl0aW9uYWwgaGVscGZ1bCB3YXJuaW5ncy4ifWZ1bmN0aW9uIHUoKXt9dmFyIGk9e2Q6e2Y6dSxyOmZ1bmN0aW9uKCl7dGhyb3cgRXJyb3Iobyg1MjIpKX0sRDp1LEM6dSxMOnUsbTp1LFg6dSxTOnUsTTp1fSxwOjAsZmluZERPTU5vZGU6bnVsbH0sYT1TeW1ib2wuZm9yKCJyZWFjdC5wb3J0YWwiKSxsPVN5bWJvbC5mb3IoInJlYWN0Lm9wdGltaXN0aWNfa2V5Iikscz1yLl9fQ0xJRU5UX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1dBUk5fVVNFUlNfVEhFWV9DQU5OT1RfVVBHUkFERTtmdW5jdGlvbiBjKGUsdCl7cmV0dXJuImZvbnQiPT09ZT8iIjoic3RyaW5nIj09dHlwZW9mIHQ/InVzZS1jcmVkZW50aWFscyI9PT10P3Q6IiI6dm9pZCAwfW4uX19ET01fSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfV0FSTl9VU0VSU19USEVZX0NBTk5PVF9VUEdSQURFPWksbi5jcmVhdGVQb3J0YWw9ZnVuY3Rpb24oZSx0KXt2YXIgbj0yPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06bnVsbDtpZighdHx8MSE9PXQubm9kZVR5cGUmJjkhPT10Lm5vZGVUeXBlJiYxMSE9PXQubm9kZVR5cGUpdGhyb3cgRXJyb3IobygyOTkpKTtyZXR1cm4gZnVuY3Rpb24oZSx0LG4pe3ZhciByPTM8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTpudWxsO3JldHVybnskJHR5cGVvZjphLGtleTpudWxsPT1yP251bGw6cj09PWw/bDoiIityLGNoaWxkcmVuOmUsY29udGFpbmVySW5mbzp0LGltcGxlbWVudGF0aW9uOm59fShlLHQsbnVsbCxuKX0sbi5mbHVzaFN5bmM9ZnVuY3Rpb24oZSl7dmFyIHQ9cy5ULG49aS5wO3RyeXtpZihzLlQ9bnVsbCxpLnA9MixlKXJldHVybiBlKCl9ZmluYWxseXtzLlQ9dCxpLnA9bixpLmQuZigpfX0sbi5wcmVjb25uZWN0PWZ1bmN0aW9uKGUsdCl7InN0cmluZyI9PXR5cGVvZiBlJiYodD10PyJzdHJpbmciPT10eXBlb2YodD10LmNyb3NzT3JpZ2luKT8idXNlLWNyZWRlbnRpYWxzIj09PXQ/dDoiIjp2b2lkIDA6bnVsbCxpLmQuQyhlLHQpKX0sbi5wcmVmZXRjaEROUz1mdW5jdGlvbihlKXsic3RyaW5nIj09dHlwZW9mIGUmJmkuZC5EKGUpfSxuLnByZWluaXQ9ZnVuY3Rpb24oZSx0KXtpZigic3RyaW5nIj09dHlwZW9mIGUmJnQmJiJzdHJpbmciPT10eXBlb2YgdC5hcyl7dmFyIG49dC5hcyxyPWMobix0LmNyb3NzT3JpZ2luKSxvPSJzdHJpbmciPT10eXBlb2YgdC5pbnRlZ3JpdHk/dC5pbnRlZ3JpdHk6dm9pZCAwLHU9InN0cmluZyI9PXR5cGVvZiB0LmZldGNoUHJpb3JpdHk/dC5mZXRjaFByaW9yaXR5OnZvaWQgMDsic3R5bGUiPT09bj9pLmQuUyhlLCJzdHJpbmciPT10eXBlb2YgdC5wcmVjZWRlbmNlP3QucHJlY2VkZW5jZTp2b2lkIDAse2Nyb3NzT3JpZ2luOnIsaW50ZWdyaXR5Om8sZmV0Y2hQcmlvcml0eTp1fSk6InNjcmlwdCI9PT1uJiZpLmQuWChlLHtjcm9zc09yaWdpbjpyLGludGVncml0eTpvLGZldGNoUHJpb3JpdHk6dSxub25jZToic3RyaW5nIj09dHlwZW9mIHQubm9uY2U/dC5ub25jZTp2b2lkIDB9KX19LG4ucHJlaW5pdE1vZHVsZT1mdW5jdGlvbihlLHQpe2lmKCJzdHJpbmciPT10eXBlb2YgZSlpZigib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10KXtpZihudWxsPT10LmFzfHwic2NyaXB0Ij09PXQuYXMpe3ZhciBuPWModC5hcyx0LmNyb3NzT3JpZ2luKTtpLmQuTShlLHtjcm9zc09yaWdpbjpuLGludGVncml0eToic3RyaW5nIj09dHlwZW9mIHQuaW50ZWdyaXR5P3QuaW50ZWdyaXR5OnZvaWQgMCxub25jZToic3RyaW5nIj09dHlwZW9mIHQubm9uY2U/dC5ub25jZTp2b2lkIDB9KX19ZWxzZSBudWxsPT10JiZpLmQuTShlKX0sbi5wcmVsb2FkPWZ1bmN0aW9uKGUsdCl7aWYoInN0cmluZyI9PXR5cGVvZiBlJiYib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10JiYic3RyaW5nIj09dHlwZW9mIHQuYXMpe3ZhciBuPXQuYXMscj1jKG4sdC5jcm9zc09yaWdpbik7aS5kLkwoZSxuLHtjcm9zc09yaWdpbjpyLGludGVncml0eToic3RyaW5nIj09dHlwZW9mIHQuaW50ZWdyaXR5P3QuaW50ZWdyaXR5OnZvaWQgMCxub25jZToic3RyaW5nIj09dHlwZW9mIHQubm9uY2U/dC5ub25jZTp2b2lkIDAsdHlwZToic3RyaW5nIj09dHlwZW9mIHQudHlwZT90LnR5cGU6dm9pZCAwLGZldGNoUHJpb3JpdHk6InN0cmluZyI9PXR5cGVvZiB0LmZldGNoUHJpb3JpdHk/dC5mZXRjaFByaW9yaXR5OnZvaWQgMCxyZWZlcnJlclBvbGljeToic3RyaW5nIj09dHlwZW9mIHQucmVmZXJyZXJQb2xpY3k/dC5yZWZlcnJlclBvbGljeTp2b2lkIDAsaW1hZ2VTcmNTZXQ6InN0cmluZyI9PXR5cGVvZiB0LmltYWdlU3JjU2V0P3QuaW1hZ2VTcmNTZXQ6dm9pZCAwLGltYWdlU2l6ZXM6InN0cmluZyI9PXR5cGVvZiB0LmltYWdlU2l6ZXM/dC5pbWFnZVNpemVzOnZvaWQgMCxtZWRpYToic3RyaW5nIj09dHlwZW9mIHQubWVkaWE/dC5tZWRpYTp2b2lkIDB9KX19LG4ucHJlbG9hZE1vZHVsZT1mdW5jdGlvbihlLHQpe2lmKCJzdHJpbmciPT10eXBlb2YgZSlpZih0KXt2YXIgbj1jKHQuYXMsdC5jcm9zc09yaWdpbik7aS5kLm0oZSx7YXM6InN0cmluZyI9PXR5cGVvZiB0LmFzJiYic2NyaXB0IiE9PXQuYXM/dC5hczp2b2lkIDAsY3Jvc3NPcmlnaW46bixpbnRlZ3JpdHk6InN0cmluZyI9PXR5cGVvZiB0LmludGVncml0eT90LmludGVncml0eTp2b2lkIDB9KX1lbHNlIGkuZC5tKGUpfSxuLnJlcXVlc3RGb3JtUmVzZXQ9ZnVuY3Rpb24oZSl7aS5kLnIoZSl9LG4udW5zdGFibGVfYmF0Y2hlZFVwZGF0ZXM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZSh0KX0sbi51c2VGb3JtU3RhdGU9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBzLkgudXNlRm9ybVN0YXRlKGUsdCxuKX0sbi51c2VGb3JtU3RhdHVzPWZ1bmN0aW9uKCl7cmV0dXJuIHMuSC51c2VIb3N0VHJhbnNpdGlvblN0YXR1cygpfSxuLnZlcnNpb249IjE5LjMuMC1jYW5hcnktZjkzYjlmZDQtMjAyNTEyMTcifSwyOTA4MCwoZSx0LG4pPT57InVzZSBzdHJpY3QiOyFmdW5jdGlvbiBlKCl7aWYoInUiPnR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18mJiJmdW5jdGlvbiI9PXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18uY2hlY2tEQ0UpdHJ5e19fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXy5jaGVja0RDRShlKX1jYXRjaChlKXtjb25zb2xlLmVycm9yKGUpfX0oKSx0LmV4cG9ydHM9ZS5yKDU2NTQ5KX0sODg3NzQsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIHI9e2dldERlcGxveW1lbnRJZDpmdW5jdGlvbigpe3JldHVybiB1fSxnZXREZXBsb3ltZW50SWRRdWVyeU9yRW1wdHlTdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gaX19O2Zvcih2YXIgbyBpbiByKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLG8se2VudW1lcmFibGU6ITAsZ2V0OnJbb119KTtmdW5jdGlvbiB1KCl7cmV0dXJuITF9ZnVuY3Rpb24gaSgpe3JldHVybiIifX0sNDk3MDYsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgcj1lLnIoMjkwODApLG89e3N0cmVhbTohMH0sdT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2Z1bmN0aW9uIGkodCl7dmFyIG49ZS5yKHQpO3JldHVybiJmdW5jdGlvbiIhPXR5cGVvZiBuLnRoZW58fCJmdWxmaWxsZWQiPT09bi5zdGF0dXM/bnVsbDoobi50aGVuKGZ1bmN0aW9uKGUpe24uc3RhdHVzPSJmdWxmaWxsZWQiLG4udmFsdWU9ZX0sZnVuY3Rpb24oZSl7bi5zdGF0dXM9InJlamVjdGVkIixuLnJlYXNvbj1lfSksbil9dmFyIGE9bmV3IFdlYWtTZXQsbD1uZXcgV2Vha1NldDtmdW5jdGlvbiBzKCl7fWZ1bmN0aW9uIGModCl7Zm9yKHZhciBuPXRbMV0scj1bXSxvPTA7bzxuLmxlbmd0aDtvKyspe3ZhciB1PWUuTChuW29dKTtpZihsLmhhcyh1KXx8ci5wdXNoKHUpLCFhLmhhcyh1KSl7dmFyIGM9bC5hZGQuYmluZChsLHUpO3UudGhlbihjLHMpLGEuYWRkKHUpfX1yZXR1cm4gND09PXQubGVuZ3RoPzA9PT1yLmxlbmd0aD9pKHRbMF0pOlByb21pc2UuYWxsKHIpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gaSh0WzBdKX0pOjA8ci5sZW5ndGg/UHJvbWlzZS5hbGwocik6bnVsbH1mdW5jdGlvbiBmKHQpe3ZhciBuPWUucih0WzBdKTtpZig0PT09dC5sZW5ndGgmJiJmdW5jdGlvbiI9PXR5cGVvZiBuLnRoZW4paWYoImZ1bGZpbGxlZCI9PT1uLnN0YXR1cyluPW4udmFsdWU7ZWxzZSB0aHJvdyBuLnJlYXNvbjtyZXR1cm4iKiI9PT10WzJdP246IiI9PT10WzJdP24uX19lc01vZHVsZT9uLmRlZmF1bHQ6bjp1LmNhbGwobix0WzJdKT9uW3RbMl1dOnZvaWQgMH12YXIgZD1yLl9fRE9NX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1dBUk5fVVNFUlNfVEhFWV9DQU5OT1RfVVBHUkFERSxwPVN5bWJvbC5mb3IoInJlYWN0LnRyYW5zaXRpb25hbC5lbGVtZW50IikseT1TeW1ib2wuZm9yKCJyZWFjdC5sYXp5Iiksdj1TeW1ib2wuaXRlcmF0b3IsaD1TeW1ib2wuYXN5bmNJdGVyYXRvcixfPUFycmF5LmlzQXJyYXksYj1PYmplY3QuZ2V0UHJvdG90eXBlT2YsZz1PYmplY3QucHJvdG90eXBlLG09bmV3IFdlYWtNYXA7ZnVuY3Rpb24gRShlLHQsbil7bS5oYXMoZSl8fG0uc2V0KGUse2lkOnQsb3JpZ2luYWxCaW5kOmUuYmluZCxib3VuZDpufSl9ZnVuY3Rpb24gUyhlLHQsbil7dGhpcy5zdGF0dXM9ZSx0aGlzLnZhbHVlPXQsdGhpcy5yZWFzb249bn1mdW5jdGlvbiBSKGUpe3N3aXRjaChlLnN0YXR1cyl7Y2FzZSJyZXNvbHZlZF9tb2RlbCI6RChlKTticmVhaztjYXNlInJlc29sdmVkX21vZHVsZSI6TShlKX1zd2l0Y2goZS5zdGF0dXMpe2Nhc2UiZnVsZmlsbGVkIjpyZXR1cm4gZS52YWx1ZTtjYXNlInBlbmRpbmciOmNhc2UiYmxvY2tlZCI6Y2FzZSJoYWx0ZWQiOnRocm93IGU7ZGVmYXVsdDp0aHJvdyBlLnJlYXNvbn19ZnVuY3Rpb24gTyhlLHQsbixyKXtmb3IodmFyIG89MDtvPHQubGVuZ3RoO28rKyl7dmFyIHU9dFtvXTsiZnVuY3Rpb24iPT10eXBlb2YgdT91KG4pOkwoZSx1LG4scil9fWZ1bmN0aW9uIHcoZSx0LG4pe2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgbz10W3JdOyJmdW5jdGlvbiI9PXR5cGVvZiBvP28obik6VShlLG8uaGFuZGxlcixuKX19ZnVuY3Rpb24gVChlLHQpe3ZhciBuPXQuaGFuZGxlci5jaHVuaztpZihudWxsPT09bilyZXR1cm4gbnVsbDtpZihuPT09ZSlyZXR1cm4gdC5oYW5kbGVyO2lmKG51bGwhPT0odD1uLnZhbHVlKSlmb3Iobj0wO248dC5sZW5ndGg7bisrKXt2YXIgcj10W25dO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiByJiZudWxsIT09KHI9VChlLHIpKSlyZXR1cm4gcn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBqKGUsdCxuLHIpe3N3aXRjaCh0LnN0YXR1cyl7Y2FzZSJmdWxmaWxsZWQiOk8oZSxuLHQudmFsdWUsdCk7YnJlYWs7Y2FzZSJibG9ja2VkIjpmb3IodmFyIG89MDtvPG4ubGVuZ3RoO28rKyl7dmFyIHU9bltvXTtpZigiZnVuY3Rpb24iIT10eXBlb2YgdSl7dmFyIGk9VCh0LHUpO2lmKG51bGwhPT1pKXN3aXRjaChMKGUsdSxpLnZhbHVlLHQpLG4uc3BsaWNlKG8sMSksby0tLG51bGwhPT1yJiYtMSE9PSh1PXIuaW5kZXhPZih1KSkmJnIuc3BsaWNlKHUsMSksdC5zdGF0dXMpe2Nhc2UiZnVsZmlsbGVkIjpPKGUsbix0LnZhbHVlLHQpO3JldHVybjtjYXNlInJlamVjdGVkIjpudWxsIT09ciYmdyhlLHIsdC5yZWFzb24pO3JldHVybn19fWNhc2UicGVuZGluZyI6aWYodC52YWx1ZSlmb3IoZT0wO2U8bi5sZW5ndGg7ZSsrKXQudmFsdWUucHVzaChuW2VdKTtlbHNlIHQudmFsdWU9bjtpZih0LnJlYXNvbil7aWYocilmb3Iobj0wO248ci5sZW5ndGg7bisrKXQucmVhc29uLnB1c2gocltuXSl9ZWxzZSB0LnJlYXNvbj1yO2JyZWFrO2Nhc2UicmVqZWN0ZWQiOnImJncoZSxyLHQucmVhc29uKX19ZnVuY3Rpb24gQShlLHQsbil7aWYoInBlbmRpbmciIT09dC5zdGF0dXMmJiJibG9ja2VkIiE9PXQuc3RhdHVzKXQucmVhc29uLmVycm9yKG4pO2Vsc2V7dmFyIHI9dC5yZWFzb247dC5zdGF0dXM9InJlamVjdGVkIix0LnJlYXNvbj1uLG51bGwhPT1yJiZ3KGUscixuKX19ZnVuY3Rpb24gayhlLHQsbil7cmV0dXJuIG5ldyBTKCJyZXNvbHZlZF9tb2RlbCIsKG4/J3siZG9uZSI6dHJ1ZSwidmFsdWUiOic6J3siZG9uZSI6ZmFsc2UsInZhbHVlIjonKSt0KyJ9IixlKX1mdW5jdGlvbiBDKGUsdCxuLHIpe04oZSx0LChyPyd7ImRvbmUiOnRydWUsInZhbHVlIjonOid7ImRvbmUiOmZhbHNlLCJ2YWx1ZSI6JykrbisifSIpfWZ1bmN0aW9uIE4oZSx0LG4pe2lmKCJwZW5kaW5nIiE9PXQuc3RhdHVzKXQucmVhc29uLmVucXVldWVNb2RlbChuKTtlbHNle3ZhciByPXQudmFsdWUsbz10LnJlYXNvbjt0LnN0YXR1cz0icmVzb2x2ZWRfbW9kZWwiLHQudmFsdWU9bix0LnJlYXNvbj1lLG51bGwhPT1yJiYoRCh0KSxqKGUsdCxyLG8pKX19ZnVuY3Rpb24gUChlLHQsbil7aWYoInBlbmRpbmciPT09dC5zdGF0dXN8fCJibG9ja2VkIj09PXQuc3RhdHVzKXt2YXIgcj10LnZhbHVlLG89dC5yZWFzb247dC5zdGF0dXM9InJlc29sdmVkX21vZHVsZSIsdC52YWx1ZT1uLHQucmVhc29uPW51bGwsbnVsbCE9PXImJihNKHQpLGooZSx0LHIsbykpfX1TLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKFByb21pc2UucHJvdG90eXBlKSxTLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKGUsdCl7c3dpdGNoKHRoaXMuc3RhdHVzKXtjYXNlInJlc29sdmVkX21vZGVsIjpEKHRoaXMpO2JyZWFrO2Nhc2UicmVzb2x2ZWRfbW9kdWxlIjpNKHRoaXMpfXN3aXRjaCh0aGlzLnN0YXR1cyl7Y2FzZSJmdWxmaWxsZWQiOiJmdW5jdGlvbiI9PXR5cGVvZiBlJiZlKHRoaXMudmFsdWUpO2JyZWFrO2Nhc2UicGVuZGluZyI6Y2FzZSJibG9ja2VkIjoiZnVuY3Rpb24iPT10eXBlb2YgZSYmKG51bGw9PT10aGlzLnZhbHVlJiYodGhpcy52YWx1ZT1bXSksdGhpcy52YWx1ZS5wdXNoKGUpKSwiZnVuY3Rpb24iPT10eXBlb2YgdCYmKG51bGw9PT10aGlzLnJlYXNvbiYmKHRoaXMucmVhc29uPVtdKSx0aGlzLnJlYXNvbi5wdXNoKHQpKTticmVhaztjYXNlImhhbHRlZCI6YnJlYWs7ZGVmYXVsdDoiZnVuY3Rpb24iPT10eXBlb2YgdCYmdCh0aGlzLnJlYXNvbil9fTt2YXIgeD1udWxsO2Z1bmN0aW9uIEQoZSl7dmFyIHQ9eDt4PW51bGw7dmFyIG49ZS52YWx1ZSxyPWUucmVhc29uO2Uuc3RhdHVzPSJibG9ja2VkIixlLnZhbHVlPW51bGwsZS5yZWFzb249bnVsbDt0cnl7dmFyIG89SlNPTi5wYXJzZShuLHIuX2Zyb21KU09OKSx1PWUudmFsdWU7aWYobnVsbCE9PXUpZm9yKGUudmFsdWU9bnVsbCxlLnJlYXNvbj1udWxsLG49MDtuPHUubGVuZ3RoO24rKyl7dmFyIGk9dVtuXTsiZnVuY3Rpb24iPT10eXBlb2YgaT9pKG8pOkwocixpLG8sZSl9aWYobnVsbCE9PXgpe2lmKHguZXJyb3JlZCl0aHJvdyB4LnJlYXNvbjtpZigwPHguZGVwcyl7eC52YWx1ZT1vLHguY2h1bms9ZTtyZXR1cm59fWUuc3RhdHVzPSJmdWxmaWxsZWQiLGUudmFsdWU9b31jYXRjaCh0KXtlLnN0YXR1cz0icmVqZWN0ZWQiLGUucmVhc29uPXR9ZmluYWxseXt4PXR9fWZ1bmN0aW9uIE0oZSl7dHJ5e3ZhciB0PWYoZS52YWx1ZSk7ZS5zdGF0dXM9ImZ1bGZpbGxlZCIsZS52YWx1ZT10fWNhdGNoKHQpe2Uuc3RhdHVzPSJyZWplY3RlZCIsZS5yZWFzb249dH19ZnVuY3Rpb24gJChlLHQpe2UuX2Nsb3NlZD0hMCxlLl9jbG9zZWRSZWFzb249dCxlLl9jaHVua3MuZm9yRWFjaChmdW5jdGlvbihuKXsicGVuZGluZyI9PT1uLnN0YXR1cz9BKGUsbix0KToiZnVsZmlsbGVkIj09PW4uc3RhdHVzJiZudWxsIT09bi5yZWFzb24mJm4ucmVhc29uLmVycm9yKHQpfSl9ZnVuY3Rpb24gSShlKXtyZXR1cm57JCR0eXBlb2Y6eSxfcGF5bG9hZDplLF9pbml0OlJ9fWZ1bmN0aW9uIEgoZSx0KXt2YXIgbj1lLl9jaHVua3Mscj1uLmdldCh0KTtyZXR1cm4gcnx8KHI9ZS5fY2xvc2VkP25ldyBTKCJyZWplY3RlZCIsbnVsbCxlLl9jbG9zZWRSZWFzb24pOm5ldyBTKCJwZW5kaW5nIixudWxsLG51bGwpLG4uc2V0KHQscikpLHJ9ZnVuY3Rpb24gTChlLHQsbil7dmFyIHI9dC5oYW5kbGVyLG89dC5wYXJlbnRPYmplY3QsaT10LmtleSxhPXQubWFwLGw9dC5wYXRoO3RyeXtmb3IodmFyIHM9MTtzPGwubGVuZ3RoO3MrKyl7Zm9yKDsib2JqZWN0Ij09dHlwZW9mIG4mJm51bGwhPT1uJiZuLiQkdHlwZW9mPT09eTspe3ZhciBjPW4uX3BheWxvYWQ7aWYoYz09PXIuY2h1bmspbj1yLnZhbHVlO2Vsc2V7c3dpdGNoKGMuc3RhdHVzKXtjYXNlInJlc29sdmVkX21vZGVsIjpEKGMpO2JyZWFrO2Nhc2UicmVzb2x2ZWRfbW9kdWxlIjpNKGMpfXN3aXRjaChjLnN0YXR1cyl7Y2FzZSJmdWxmaWxsZWQiOm49Yy52YWx1ZTtjb250aW51ZTtjYXNlImJsb2NrZWQiOnZhciBmPVQoYyx0KTtpZihudWxsIT09Zil7bj1mLnZhbHVlO2NvbnRpbnVlfWNhc2UicGVuZGluZyI6bC5zcGxpY2UoMCxzLTEpLG51bGw9PT1jLnZhbHVlP2MudmFsdWU9W3RdOmMudmFsdWUucHVzaCh0KSxudWxsPT09Yy5yZWFzb24/Yy5yZWFzb249W3RdOmMucmVhc29uLnB1c2godCk7cmV0dXJuO2Nhc2UiaGFsdGVkIjpyZXR1cm47ZGVmYXVsdDpVKGUsdC5oYW5kbGVyLGMucmVhc29uKTtyZXR1cm59fX12YXIgZD1sW3NdO2lmKCJvYmplY3QiPT10eXBlb2YgbiYmbnVsbCE9PW4mJnUuY2FsbChuLGQpKW49bltkXTtlbHNlIHRocm93IEVycm9yKCJJbnZhbGlkIHJlZmVyZW5jZS4iKX1mb3IoOyJvYmplY3QiPT10eXBlb2YgbiYmbnVsbCE9PW4mJm4uJCR0eXBlb2Y9PT15Oyl7dmFyIHY9bi5fcGF5bG9hZDtpZih2PT09ci5jaHVuayluPXIudmFsdWU7ZWxzZXtzd2l0Y2godi5zdGF0dXMpe2Nhc2UicmVzb2x2ZWRfbW9kZWwiOkQodik7YnJlYWs7Y2FzZSJyZXNvbHZlZF9tb2R1bGUiOk0odil9aWYoImZ1bGZpbGxlZCI9PT12LnN0YXR1cyl7bj12LnZhbHVlO2NvbnRpbnVlfWJyZWFrfX12YXIgaD1hKGUsbixvLGkpO2lmKCJfX3Byb3RvX18iIT09aSYmKG9baV09aCksIiI9PT1pJiZudWxsPT09ci52YWx1ZSYmKHIudmFsdWU9aCksb1swXT09PXAmJiJvYmplY3QiPT10eXBlb2Ygci52YWx1ZSYmbnVsbCE9PXIudmFsdWUmJnIudmFsdWUuJCR0eXBlb2Y9PT1wKXt2YXIgXz1yLnZhbHVlOyIzIj09PWkmJihfLnByb3BzPWgpfX1jYXRjaChuKXtVKGUsdC5oYW5kbGVyLG4pO3JldHVybn1yLmRlcHMtLSwwPT09ci5kZXBzJiZudWxsIT09KHQ9ci5jaHVuaykmJiJibG9ja2VkIj09PXQuc3RhdHVzJiYobj10LnZhbHVlLHQuc3RhdHVzPSJmdWxmaWxsZWQiLHQudmFsdWU9ci52YWx1ZSx0LnJlYXNvbj1yLnJlYXNvbixudWxsIT09biYmTyhlLG4sci52YWx1ZSx0KSl9ZnVuY3Rpb24gVShlLHQsbil7dC5lcnJvcmVkfHwodC5lcnJvcmVkPSEwLHQudmFsdWU9bnVsbCx0LnJlYXNvbj1uLG51bGwhPT0odD10LmNodW5rKSYmImJsb2NrZWQiPT09dC5zdGF0dXMmJkEoZSx0LG4pKX1mdW5jdGlvbiBGKGUsdCxuLHIsbyx1KXtyZXR1cm4geD8ocj14LHIuZGVwcysrKTpyPXg9e3BhcmVudDpudWxsLGNodW5rOm51bGwsdmFsdWU6bnVsbCxyZWFzb246bnVsbCxkZXBzOjEsZXJyb3JlZDohMX0sdD17aGFuZGxlcjpyLHBhcmVudE9iamVjdDp0LGtleTpuLG1hcDpvLHBhdGg6dX0sbnVsbD09PWUudmFsdWU/ZS52YWx1ZT1bdF06ZS52YWx1ZS5wdXNoKHQpLG51bGw9PT1lLnJlYXNvbj9lLnJlYXNvbj1bdF06ZS5yZWFzb24ucHVzaCh0KSxudWxsfWZ1bmN0aW9uIFgoZSx0LG4scil7aWYoIWUuX3NlcnZlclJlZmVyZW5jZUNvbmZpZylyZXR1cm4gZnVuY3Rpb24oZSx0KXtmdW5jdGlvbiBuKCl7dmFyIGU9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTtyZXR1cm4gbz8iZnVsZmlsbGVkIj09PW8uc3RhdHVzP3QocixvLnZhbHVlLmNvbmNhdChlKSk6UHJvbWlzZS5yZXNvbHZlKG8pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIHQocixuLmNvbmNhdChlKSl9KTp0KHIsZSl9dmFyIHI9ZS5pZCxvPWUuYm91bmQ7cmV0dXJuIEUobixyLG8pLG59KHQsZS5fY2FsbFNlcnZlcik7dmFyIG89ZnVuY3Rpb24oZSx0KXt2YXIgbj0iIixyPWVbdF07aWYociluPXIubmFtZTtlbHNle3ZhciBvPXQubGFzdEluZGV4T2YoIiMiKTtpZigtMSE9PW8mJihuPXQuc2xpY2UobysxKSxyPWVbdC5zbGljZSgwLG8pXSksIXIpdGhyb3cgRXJyb3IoJ0NvdWxkIG5vdCBmaW5kIHRoZSBtb2R1bGUgIicrdCsnIiBpbiB0aGUgUmVhY3QgU2VydmVyIE1hbmlmZXN0LiBUaGlzIGlzIHByb2JhYmx5IGEgYnVnIGluIHRoZSBSZWFjdCBTZXJ2ZXIgQ29tcG9uZW50cyBidW5kbGVyLicpfXJldHVybiByLmFzeW5jP1tyLmlkLHIuY2h1bmtzLG4sMV06W3IuaWQsci5jaHVua3Msbl19KGUuX3NlcnZlclJlZmVyZW5jZUNvbmZpZyx0LmlkKSx1PWMobyk7aWYodSl0LmJvdW5kJiYodT1Qcm9taXNlLmFsbChbdSx0LmJvdW5kXSkpO2Vsc2V7aWYoIXQuYm91bmQpcmV0dXJuIEUodT1mKG8pLHQuaWQsdC5ib3VuZCksdTt1PVByb21pc2UucmVzb2x2ZSh0LmJvdW5kKX1pZih4KXt2YXIgaT14O2kuZGVwcysrfWVsc2UgaT14PXtwYXJlbnQ6bnVsbCxjaHVuazpudWxsLHZhbHVlOm51bGwscmVhc29uOm51bGwsZGVwczoxLGVycm9yZWQ6ITF9O3JldHVybiB1LnRoZW4oZnVuY3Rpb24oKXt2YXIgdT1mKG8pO2lmKHQuYm91bmQpe3ZhciBhPXQuYm91bmQudmFsdWUuc2xpY2UoMCk7YS51bnNoaWZ0KG51bGwpLHU9dS5iaW5kLmFwcGx5KHUsYSl9RSh1LHQuaWQsdC5ib3VuZCksIl9fcHJvdG9fXyIhPT1yJiYobltyXT11KSwiIj09PXImJm51bGw9PT1pLnZhbHVlJiYoaS52YWx1ZT11KSxuWzBdPT09cCYmIm9iamVjdCI9PXR5cGVvZiBpLnZhbHVlJiZudWxsIT09aS52YWx1ZSYmaS52YWx1ZS4kJHR5cGVvZj09PXAmJihhPWkudmFsdWUsIjMiPT09cikmJihhLnByb3BzPXUpLGkuZGVwcy0tLDA9PT1pLmRlcHMmJm51bGwhPT0odT1pLmNodW5rKSYmImJsb2NrZWQiPT09dS5zdGF0dXMmJihhPXUudmFsdWUsdS5zdGF0dXM9ImZ1bGZpbGxlZCIsdS52YWx1ZT1pLnZhbHVlLHUucmVhc29uPW51bGwsbnVsbCE9PWEmJk8oZSxhLGkudmFsdWUsdSkpfSxmdW5jdGlvbih0KXtpZighaS5lcnJvcmVkKXtpLmVycm9yZWQ9ITAsaS52YWx1ZT1udWxsLGkucmVhc29uPXQ7dmFyIG49aS5jaHVuaztudWxsIT09biYmImJsb2NrZWQiPT09bi5zdGF0dXMmJkEoZSxuLHQpfX0pLG51bGx9ZnVuY3Rpb24gVihlLHQsbixyLG8pe3ZhciB1PXBhcnNlSW50KCh0PXQuc3BsaXQoIjoiKSlbMF0sMTYpO3N3aXRjaCgodT1IKGUsdSkpLnN0YXR1cyl7Y2FzZSJyZXNvbHZlZF9tb2RlbCI6RCh1KTticmVhaztjYXNlInJlc29sdmVkX21vZHVsZSI6TSh1KX1zd2l0Y2godS5zdGF0dXMpe2Nhc2UiZnVsZmlsbGVkIjp1PXUudmFsdWU7Zm9yKHZhciBpPTE7aTx0Lmxlbmd0aDtpKyspe2Zvcig7Im9iamVjdCI9PXR5cGVvZiB1JiZudWxsIT09dSYmdS4kJHR5cGVvZj09PXk7KXtzd2l0Y2goKHU9dS5fcGF5bG9hZCkuc3RhdHVzKXtjYXNlInJlc29sdmVkX21vZGVsIjpEKHUpO2JyZWFrO2Nhc2UicmVzb2x2ZWRfbW9kdWxlIjpNKHUpfXN3aXRjaCh1LnN0YXR1cyl7Y2FzZSJmdWxmaWxsZWQiOnU9dS52YWx1ZTticmVhaztjYXNlImJsb2NrZWQiOmNhc2UicGVuZGluZyI6cmV0dXJuIEYodSxuLHIsZSxvLHQuc2xpY2UoaS0xKSk7Y2FzZSJoYWx0ZWQiOnJldHVybiB4PyhlPXgsZS5kZXBzKyspOng9e3BhcmVudDpudWxsLGNodW5rOm51bGwsdmFsdWU6bnVsbCxyZWFzb246bnVsbCxkZXBzOjEsZXJyb3JlZDohMX0sbnVsbDtkZWZhdWx0OnJldHVybiB4Pyh4LmVycm9yZWQ9ITAseC52YWx1ZT1udWxsLHgucmVhc29uPXUucmVhc29uKTp4PXtwYXJlbnQ6bnVsbCxjaHVuazpudWxsLHZhbHVlOm51bGwscmVhc29uOnUucmVhc29uLGRlcHM6MCxlcnJvcmVkOiEwfSxudWxsfX11PXVbdFtpXV19Zm9yKDsib2JqZWN0Ij09dHlwZW9mIHUmJm51bGwhPT11JiZ1LiQkdHlwZW9mPT09eTspe3N3aXRjaCgodD11Ll9wYXlsb2FkKS5zdGF0dXMpe2Nhc2UicmVzb2x2ZWRfbW9kZWwiOkQodCk7YnJlYWs7Y2FzZSJyZXNvbHZlZF9tb2R1bGUiOk0odCl9aWYoImZ1bGZpbGxlZCI9PT10LnN0YXR1cyl7dT10LnZhbHVlO2NvbnRpbnVlfWJyZWFrfXJldHVybiBvKGUsdSxuLHIpO2Nhc2UicGVuZGluZyI6Y2FzZSJibG9ja2VkIjpyZXR1cm4gRih1LG4scixlLG8sdCk7Y2FzZSJoYWx0ZWQiOnJldHVybiB4PyhlPXgsZS5kZXBzKyspOng9e3BhcmVudDpudWxsLGNodW5rOm51bGwsdmFsdWU6bnVsbCxyZWFzb246bnVsbCxkZXBzOjEsZXJyb3JlZDohMX0sbnVsbDtkZWZhdWx0OnJldHVybiB4Pyh4LmVycm9yZWQ9ITAseC52YWx1ZT1udWxsLHgucmVhc29uPXUucmVhc29uKTp4PXtwYXJlbnQ6bnVsbCxjaHVuazpudWxsLHZhbHVlOm51bGwscmVhc29uOnUucmVhc29uLGRlcHM6MCxlcnJvcmVkOiEwfSxudWxsfX1mdW5jdGlvbiBxKGUsdCl7cmV0dXJuIG5ldyBNYXAodCl9ZnVuY3Rpb24gQihlLHQpe3JldHVybiBuZXcgU2V0KHQpfWZ1bmN0aW9uIFcoZSx0KXtyZXR1cm4gbmV3IEJsb2IodC5zbGljZSgxKSx7dHlwZTp0WzBdfSl9ZnVuY3Rpb24gRyhlLHQpe2U9bmV3IEZvcm1EYXRhO2Zvcih2YXIgbj0wO248dC5sZW5ndGg7bisrKWUuYXBwZW5kKHRbbl1bMF0sdFtuXVsxXSk7cmV0dXJuIGV9ZnVuY3Rpb24gSihlLHQpe3JldHVybiB0W1N5bWJvbC5pdGVyYXRvcl0oKX1mdW5jdGlvbiBLKGUsdCl7cmV0dXJuIHR9ZnVuY3Rpb24geigpe3Rocm93IEVycm9yKCdUcnlpbmcgdG8gY2FsbCBhIGZ1bmN0aW9uIGZyb20gInVzZSBzZXJ2ZXIiIGJ1dCB0aGUgY2FsbFNlcnZlciBvcHRpb24gd2FzIG5vdCBpbXBsZW1lbnRlZCBpbiB5b3VyIHJvdXRlciBydW50aW1lLicpfWZ1bmN0aW9uIFkoZSx0LG4scixvLHUsaSl7dmFyIGEsbD1uZXcgTWFwO3RoaXMuX2J1bmRsZXJDb25maWc9ZSx0aGlzLl9zZXJ2ZXJSZWZlcmVuY2VDb25maWc9dCx0aGlzLl9tb2R1bGVMb2FkaW5nPW4sdGhpcy5fY2FsbFNlcnZlcj12b2lkIDAhPT1yP3I6eix0aGlzLl9lbmNvZGVGb3JtQWN0aW9uPW8sdGhpcy5fbm9uY2U9dSx0aGlzLl9jaHVua3M9bCx0aGlzLl9zdHJpbmdEZWNvZGVyPW5ldyBUZXh0RGVjb2Rlcix0aGlzLl9mcm9tSlNPTj1udWxsLHRoaXMuX2Nsb3NlZD0hMSx0aGlzLl9jbG9zZWRSZWFzb249bnVsbCx0aGlzLl90ZW1wUmVmcz1pLHRoaXMuX2Zyb21KU09OPShhPXRoaXMsZnVuY3Rpb24oZSx0KXtpZigiX19wcm90b19fIiE9PWUpe2lmKCJzdHJpbmciPT10eXBlb2YgdCl7dmFyIG49YSxyPXRoaXMsbz1lLHU9dDtpZigiJCI9PT11WzBdKXtpZigiJCI9PT11KXJldHVybiBudWxsIT09eCYmIjAiPT09byYmKHg9e3BhcmVudDp4LGNodW5rOm51bGwsdmFsdWU6bnVsbCxyZWFzb246bnVsbCxkZXBzOjAsZXJyb3JlZDohMX0pLHA7c3dpdGNoKHVbMV0pe2Nhc2UiJCI6cmV0dXJuIHUuc2xpY2UoMSk7Y2FzZSJMIjpyZXR1cm4gSShuPUgobixyPXBhcnNlSW50KHUuc2xpY2UoMiksMTYpKSk7Y2FzZSJAIjpyZXR1cm4gSChuLHI9cGFyc2VJbnQodS5zbGljZSgyKSwxNikpO2Nhc2UiUyI6cmV0dXJuIFN5bWJvbC5mb3IodS5zbGljZSgyKSk7Y2FzZSJoIjpyZXR1cm4gVihuLHU9dS5zbGljZSgyKSxyLG8sWCk7Y2FzZSJUIjppZihyPSIkIit1LnNsaWNlKDIpLG51bGw9PShuPW4uX3RlbXBSZWZzKSl0aHJvdyBFcnJvcigiTWlzc2luZyBhIHRlbXBvcmFyeSByZWZlcmVuY2Ugc2V0IGJ1dCB0aGUgUlNDIHJlc3BvbnNlIHJldHVybmVkIGEgdGVtcG9yYXJ5IHJlZmVyZW5jZS4gUGFzcyBhIHRlbXBvcmFyeVJlZmVyZW5jZSBvcHRpb24gd2l0aCB0aGUgc2V0IHRoYXQgd2FzIHVzZWQgd2l0aCB0aGUgcmVwbHkuIik7cmV0dXJuIG4uZ2V0KHIpO2Nhc2UiUSI6cmV0dXJuIFYobix1PXUuc2xpY2UoMikscixvLHEpO2Nhc2UiVyI6cmV0dXJuIFYobix1PXUuc2xpY2UoMikscixvLEIpO2Nhc2UiQiI6cmV0dXJuIFYobix1PXUuc2xpY2UoMikscixvLFcpO2Nhc2UiSyI6cmV0dXJuIFYobix1PXUuc2xpY2UoMikscixvLEcpO2Nhc2UiWiI6cmV0dXJuIGVyKCk7Y2FzZSJpIjpyZXR1cm4gVihuLHU9dS5zbGljZSgyKSxyLG8sSik7Y2FzZSJJIjpyZXR1cm4gMS8wO2Nhc2UiLSI6cmV0dXJuIiQtMCI9PT11Py0wOi0xLzA7Y2FzZSJOIjpyZXR1cm4gTmFOO2Nhc2UidSI6cmV0dXJuO2Nhc2UiRCI6cmV0dXJuIG5ldyBEYXRlKERhdGUucGFyc2UodS5zbGljZSgyKSkpO2Nhc2UibiI6cmV0dXJuIEJpZ0ludCh1LnNsaWNlKDIpKTtkZWZhdWx0OnJldHVybiBWKG4sdT11LnNsaWNlKDEpLHIsbyxLKX19cmV0dXJuIHV9aWYoIm9iamVjdCI9PXR5cGVvZiB0JiZudWxsIT09dCl7aWYodFswXT09PXApe2lmKGU9eyQkdHlwZW9mOnAsdHlwZTp0WzFdLGtleTp0WzJdLHJlZjpudWxsLHByb3BzOnRbM119LG51bGwhPT14KXtpZih4PSh0PXgpLnBhcmVudCx0LmVycm9yZWQpZT1JKGU9bmV3IFMoInJlamVjdGVkIixudWxsLHQucmVhc29uKSk7ZWxzZSBpZigwPHQuZGVwcyl7dmFyIGk9bmV3IFMoImJsb2NrZWQiLG51bGwsbnVsbCk7dC52YWx1ZT1lLHQuY2h1bms9aSxlPUkoaSl9fX1lbHNlIGU9dDtyZXR1cm4gZX1yZXR1cm4gdH19KX1mdW5jdGlvbiBRKGUsdCxuKXt2YXIgcj0oZT1lLl9jaHVua3MpLmdldCh0KTtyJiYicGVuZGluZyIhPT1yLnN0YXR1cz9yLnJlYXNvbi5lbnF1ZXVlVmFsdWUobik6KG49bmV3IFMoImZ1bGZpbGxlZCIsbixudWxsKSxlLnNldCh0LG4pKX1mdW5jdGlvbiBaKGUsdCxuLHIpe3ZhciBvPWUuX2NodW5rcyx1PW8uZ2V0KHQpO3U/InBlbmRpbmciPT09dS5zdGF0dXMmJih0PXUudmFsdWUsdS5zdGF0dXM9ImZ1bGZpbGxlZCIsdS52YWx1ZT1uLHUucmVhc29uPXIsbnVsbCE9PXQmJk8oZSx0LHUudmFsdWUsdSkpOihlPW5ldyBTKCJmdWxmaWxsZWQiLG4sciksby5zZXQodCxlKSl9ZnVuY3Rpb24gZWUoZSx0LG4pe3ZhciByPW51bGwsbz0hMTtuPW5ldyBSZWFkYWJsZVN0cmVhbSh7dHlwZTpuLHN0YXJ0OmZ1bmN0aW9uKGUpe3I9ZX19KTt2YXIgdT1udWxsO1ooZSx0LG4se2VucXVldWVWYWx1ZTpmdW5jdGlvbihlKXtudWxsPT09dT9yLmVucXVldWUoZSk6dS50aGVuKGZ1bmN0aW9uKCl7ci5lbnF1ZXVlKGUpfSl9LGVucXVldWVNb2RlbDpmdW5jdGlvbih0KXtpZihudWxsPT09dSl7dmFyIG49bmV3IFMoInJlc29sdmVkX21vZGVsIix0LGUpO0QobiksImZ1bGZpbGxlZCI9PT1uLnN0YXR1cz9yLmVucXVldWUobi52YWx1ZSk6KG4udGhlbihmdW5jdGlvbihlKXtyZXR1cm4gci5lbnF1ZXVlKGUpfSxmdW5jdGlvbihlKXtyZXR1cm4gci5lcnJvcihlKX0pLHU9bil9ZWxzZXtuPXU7dmFyIG89bmV3IFMoInBlbmRpbmciLG51bGwsbnVsbCk7by50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiByLmVucXVldWUoZSl9LGZ1bmN0aW9uKGUpe3JldHVybiByLmVycm9yKGUpfSksdT1vLG4udGhlbihmdW5jdGlvbigpe3U9PT1vJiYodT1udWxsKSxOKGUsbyx0KX0pfX0sY2xvc2U6ZnVuY3Rpb24oKXtpZighbylpZihvPSEwLG51bGw9PT11KXIuY2xvc2UoKTtlbHNle3ZhciBlPXU7dT1udWxsLGUudGhlbihmdW5jdGlvbigpe3JldHVybiByLmNsb3NlKCl9KX19LGVycm9yOmZ1bmN0aW9uKGUpe2lmKCFvKWlmKG89ITAsbnVsbD09PXUpci5lcnJvcihlKTtlbHNle3ZhciB0PXU7dT1udWxsLHQudGhlbihmdW5jdGlvbigpe3JldHVybiByLmVycm9yKGUpfSl9fX0pfWZ1bmN0aW9uIGV0KCl7cmV0dXJuIHRoaXN9ZnVuY3Rpb24gZW4oZSx0LG4pe3ZhciByPVtdLG89ITEsdT0wLGk9e307aVtoXT1mdW5jdGlvbigpe3ZhciBlLHQ9MDtyZXR1cm4oZT17bmV4dDplPWZ1bmN0aW9uKGUpe2lmKHZvaWQgMCE9PWUpdGhyb3cgRXJyb3IoIlZhbHVlcyBjYW5ub3QgYmUgcGFzc2VkIHRvIG5leHQoKSBvZiBBc3luY0l0ZXJhYmxlcyBwYXNzZWQgdG8gQ2xpZW50IENvbXBvbmVudHMuIik7aWYodD09PXIubGVuZ3RoKXtpZihvKXJldHVybiBuZXcgUygiZnVsZmlsbGVkIix7ZG9uZTohMCx2YWx1ZTp2b2lkIDB9LG51bGwpO3JbdF09bmV3IFMoInBlbmRpbmciLG51bGwsbnVsbCl9cmV0dXJuIHJbdCsrXX19KVtoXT1ldCxlfSxaKGUsdCxuP2lbaF0oKTppLHtlbnF1ZXVlVmFsdWU6ZnVuY3Rpb24odCl7aWYodT09PXIubGVuZ3RoKXJbdV09bmV3IFMoImZ1bGZpbGxlZCIse2RvbmU6ITEsdmFsdWU6dH0sbnVsbCk7ZWxzZXt2YXIgbj1yW3VdLG89bi52YWx1ZSxpPW4ucmVhc29uO24uc3RhdHVzPSJmdWxmaWxsZWQiLG4udmFsdWU9e2RvbmU6ITEsdmFsdWU6dH0sbi5yZWFzb249bnVsbCxudWxsIT09byYmaihlLG4sbyxpKX11Kyt9LGVucXVldWVNb2RlbDpmdW5jdGlvbih0KXt1PT09ci5sZW5ndGg/clt1XT1rKGUsdCwhMSk6QyhlLHJbdV0sdCwhMSksdSsrfSxjbG9zZTpmdW5jdGlvbih0KXtpZighbylmb3Iobz0hMCx1PT09ci5sZW5ndGg/clt1XT1rKGUsdCwhMCk6QyhlLHJbdV0sdCwhMCksdSsrO3U8ci5sZW5ndGg7KUMoZSxyW3UrK10sJyIkdW5kZWZpbmVkIicsITApfSxlcnJvcjpmdW5jdGlvbih0KXtpZighbylmb3Iobz0hMCx1PT09ci5sZW5ndGgmJihyW3VdPW5ldyBTKCJwZW5kaW5nIixudWxsLG51bGwpKTt1PHIubGVuZ3RoOylBKGUsclt1KytdLHQpfX0pfWZ1bmN0aW9uIGVyKCl7dmFyIGU9RXJyb3IoIkFuIGVycm9yIG9jY3VycmVkIGluIHRoZSBTZXJ2ZXIgQ29tcG9uZW50cyByZW5kZXIuIFRoZSBzcGVjaWZpYyBtZXNzYWdlIGlzIG9taXR0ZWQgaW4gcHJvZHVjdGlvbiBidWlsZHMgdG8gYXZvaWQgbGVha2luZyBzZW5zaXRpdmUgZGV0YWlscy4gQSBkaWdlc3QgcHJvcGVydHkgaXMgaW5jbHVkZWQgb24gdGhpcyBlcnJvciBpbnN0YW5jZSB3aGljaCBtYXkgcHJvdmlkZSBhZGRpdGlvbmFsIGRldGFpbHMgYWJvdXQgdGhlIG5hdHVyZSBvZiB0aGUgZXJyb3IuIik7cmV0dXJuIGUuc3RhY2s9IkVycm9yOiAiK2UubWVzc2FnZSxlfWZ1bmN0aW9uIGVvKGUsdCl7Zm9yKHZhciBuPWUubGVuZ3RoLHI9dC5sZW5ndGgsbz0wO288bjtvKyspcis9ZVtvXS5ieXRlTGVuZ3RoO3I9bmV3IFVpbnQ4QXJyYXkocik7Zm9yKHZhciB1PW89MDt1PG47dSsrKXt2YXIgaT1lW3VdO3Iuc2V0KGksbyksbys9aS5ieXRlTGVuZ3RofXJldHVybiByLnNldCh0LG8pLHJ9ZnVuY3Rpb24gZXUoZSx0LG4scixvLHUpe1EoZSx0LG89bmV3IG8oKG49MD09PW4ubGVuZ3RoJiYwPT1yLmJ5dGVPZmZzZXQldT9yOmVvKG4scikpLmJ1ZmZlcixuLmJ5dGVPZmZzZXQsbi5ieXRlTGVuZ3RoL3UpKX1mdW5jdGlvbiBlaShlKXskKGUsRXJyb3IoIkNvbm5lY3Rpb24gY2xvc2VkLiIpKX1mdW5jdGlvbiBlYShlKXtyZXR1cm4gbmV3IFkobnVsbCxudWxsLG51bGwsZSYmZS5jYWxsU2VydmVyP2UuY2FsbFNlcnZlcjp2b2lkIDAsdm9pZCAwLHZvaWQgMCxlJiZlLnRlbXBvcmFyeVJlZmVyZW5jZXM/ZS50ZW1wb3JhcnlSZWZlcmVuY2VzOnZvaWQgMCl9ZnVuY3Rpb24gZWwoZSx0LG4pe2Z1bmN0aW9uIHIodCl7JChlLHQpfXZhciB1PXtfcm93U3RhdGU6MCxfcm93SUQ6MCxfcm93VGFnOjAsX3Jvd0xlbmd0aDowLF9idWZmZXI6W119LGk9dC5nZXRSZWFkZXIoKTtpLnJlYWQoKS50aGVuKGZ1bmN0aW9uIHQoYSl7dmFyIGw9YS52YWx1ZTtpZihhLmRvbmUpcmV0dXJuIG4oKTt2YXIgcz0wLGY9dS5fcm93U3RhdGU7YT11Ll9yb3dJRDtmb3IodmFyIHA9dS5fcm93VGFnLHk9dS5fcm93TGVuZ3RoLHY9dS5fYnVmZmVyLGg9bC5sZW5ndGg7czxoOyl7dmFyIF89LTE7c3dpdGNoKGYpe2Nhc2UgMDo1OD09PShfPWxbcysrXSk/Zj0xOmE9YTw8NHwoOTY8Xz9fLTg3Ol8tNDgpO2NvbnRpbnVlO2Nhc2UgMTo4ND09PShmPWxbc10pfHw2NT09PWZ8fDc5PT09Znx8MTExPT09Znx8OTg9PT1mfHw4NT09PWZ8fDgzPT09Znx8MTE1PT09Znx8NzY9PT1mfHwxMDg9PT1mfHw3MT09PWZ8fDEwMz09PWZ8fDc3PT09Znx8MTA5PT09Znx8ODY9PT1mPyhwPWYsZj0yLHMrKyk6NjQ8ZiYmOTE+Znx8MzU9PT1mfHwxMTQ9PT1mfHwxMjA9PT1mPyhwPWYsZj0zLHMrKyk6KHA9MCxmPTMpO2NvbnRpbnVlO2Nhc2UgMjo0ND09PShfPWxbcysrXSk/Zj00Onk9eTw8NHwoOTY8Xz9fLTg3Ol8tNDgpO2NvbnRpbnVlO2Nhc2UgMzpfPWwuaW5kZXhPZigxMCxzKTticmVhaztjYXNlIDQ6KF89cyt5KT5sLmxlbmd0aCYmKF89LTEpfXZhciBiPWwuYnl0ZU9mZnNldCtzO2lmKC0xPF8peT1uZXcgVWludDhBcnJheShsLmJ1ZmZlcixiLF8tcyksOTg9PT1wP1EoZSxhLF89PT1oP3k6eS5zbGljZSgpKTpmdW5jdGlvbihlLHQsbixyLHUsaSl7c3dpdGNoKHIpe2Nhc2UgNjU6UShlLG4sZW8odSxpKS5idWZmZXIpO3JldHVybjtjYXNlIDc5OmV1KGUsbix1LGksSW50OEFycmF5LDEpO3JldHVybjtjYXNlIDExMTpRKGUsbiwwPT09dS5sZW5ndGg/aTplbyh1LGkpKTtyZXR1cm47Y2FzZSA4NTpldShlLG4sdSxpLFVpbnQ4Q2xhbXBlZEFycmF5LDEpO3JldHVybjtjYXNlIDgzOmV1KGUsbix1LGksSW50MTZBcnJheSwyKTtyZXR1cm47Y2FzZSAxMTU6ZXUoZSxuLHUsaSxVaW50MTZBcnJheSwyKTtyZXR1cm47Y2FzZSA3NjpldShlLG4sdSxpLEludDMyQXJyYXksNCk7cmV0dXJuO2Nhc2UgMTA4OmV1KGUsbix1LGksVWludDMyQXJyYXksNCk7cmV0dXJuO2Nhc2UgNzE6ZXUoZSxuLHUsaSxGbG9hdDMyQXJyYXksNCk7cmV0dXJuO2Nhc2UgMTAzOmV1KGUsbix1LGksRmxvYXQ2NEFycmF5LDgpO3JldHVybjtjYXNlIDc3OmV1KGUsbix1LGksQmlnSW50NjRBcnJheSw4KTtyZXR1cm47Y2FzZSAxMDk6ZXUoZSxuLHUsaSxCaWdVaW50NjRBcnJheSw4KTtyZXR1cm47Y2FzZSA4NjpldShlLG4sdSxpLERhdGFWaWV3LDEpO3JldHVybn10PWUuX3N0cmluZ0RlY29kZXI7Zm9yKHZhciBhPSIiLGw9MDtsPHUubGVuZ3RoO2wrKylhKz10LmRlY29kZSh1W2xdLG8pO3N3aXRjaCh1PWErPXQuZGVjb2RlKGkpLHIpe2Nhc2UgNzM6dmFyIHM9ZSxmPW4scD11LHk9cy5fY2h1bmtzLHY9eS5nZXQoZik7cD1KU09OLnBhcnNlKHAscy5fZnJvbUpTT04pO3ZhciBoPWZ1bmN0aW9uKGUsdCl7aWYoZSl7dmFyIG49ZVt0WzBdXTtpZihlPW4mJm5bdFsyXV0pbj1lLm5hbWU7ZWxzZXtpZighKGU9biYmblsiKiJdKSl0aHJvdyBFcnJvcignQ291bGQgbm90IGZpbmQgdGhlIG1vZHVsZSAiJyt0WzBdKyciIGluIHRoZSBSZWFjdCBTZXJ2ZXIgQ29uc3VtZXIgTWFuaWZlc3QuIFRoaXMgaXMgcHJvYmFibHkgYSBidWcgaW4gdGhlIFJlYWN0IFNlcnZlciBDb21wb25lbnRzIGJ1bmRsZXIuJyk7bj10WzJdfXJldHVybiA0PT09dC5sZW5ndGg/W2UuaWQsZS5jaHVua3MsbiwxXTpbZS5pZCxlLmNodW5rcyxuXX1yZXR1cm4gdH0ocy5fYnVuZGxlckNvbmZpZyxwKTtpZihwPWMoaCkpe2lmKHYpe3ZhciBfPXY7Xy5zdGF0dXM9ImJsb2NrZWQifWVsc2UgXz1uZXcgUygiYmxvY2tlZCIsbnVsbCxudWxsKSx5LnNldChmLF8pO3AudGhlbihmdW5jdGlvbigpe3JldHVybiBQKHMsXyxoKX0sZnVuY3Rpb24oZSl7cmV0dXJuIEEocyxfLGUpfSl9ZWxzZSB2P1Aocyx2LGgpOih2PW5ldyBTKCJyZXNvbHZlZF9tb2R1bGUiLGgsbnVsbCkseS5zZXQoZix2KSk7YnJlYWs7Y2FzZSA3Mjpzd2l0Y2gobj11WzBdLGU9SlNPTi5wYXJzZSh1PXUuc2xpY2UoMSksZS5fZnJvbUpTT04pLHU9ZC5kLG4pe2Nhc2UiRCI6dS5EKGUpO2JyZWFrO2Nhc2UiQyI6InN0cmluZyI9PXR5cGVvZiBlP3UuQyhlKTp1LkMoZVswXSxlWzFdKTticmVhaztjYXNlIkwiOm49ZVswXSxyPWVbMV0sMz09PWUubGVuZ3RoP3UuTChuLHIsZVsyXSk6dS5MKG4scik7YnJlYWs7Y2FzZSJtIjoic3RyaW5nIj09dHlwZW9mIGU/dS5tKGUpOnUubShlWzBdLGVbMV0pO2JyZWFrO2Nhc2UiWCI6InN0cmluZyI9PXR5cGVvZiBlP3UuWChlKTp1LlgoZVswXSxlWzFdKTticmVhaztjYXNlIlMiOiJzdHJpbmciPT10eXBlb2YgZT91LlMoZSk6dS5TKGVbMF0sMD09PWVbMV0/dm9pZCAwOmVbMV0sMz09PWUubGVuZ3RoP2VbMl06dm9pZCAwKTticmVhaztjYXNlIk0iOiJzdHJpbmciPT10eXBlb2YgZT91Lk0oZSk6dS5NKGVbMF0sZVsxXSl9YnJlYWs7Y2FzZSA2OTppPShyPWUuX2NodW5rcykuZ2V0KG4pLHU9SlNPTi5wYXJzZSh1KSwodD1lcigpKS5kaWdlc3Q9dS5kaWdlc3QsaT9BKGUsaSx0KTooZT1uZXcgUygicmVqZWN0ZWQiLG51bGwsdCksci5zZXQobixlKSk7YnJlYWs7Y2FzZSA4NDoocj0oZT1lLl9jaHVua3MpLmdldChuKSkmJiJwZW5kaW5nIiE9PXIuc3RhdHVzP3IucmVhc29uLmVucXVldWVWYWx1ZSh1KToodT1uZXcgUygiZnVsZmlsbGVkIix1LG51bGwpLGUuc2V0KG4sdSkpO2JyZWFrO2Nhc2UgNzg6Y2FzZSA2ODpjYXNlIDc0OmNhc2UgODc6dGhyb3cgRXJyb3IoIkZhaWxlZCB0byByZWFkIGEgUlNDIHBheWxvYWQgY3JlYXRlZCBieSBhIGRldmVsb3BtZW50IHZlcnNpb24gb2YgUmVhY3Qgb24gdGhlIHNlcnZlciB3aGlsZSB1c2luZyBhIHByb2R1Y3Rpb24gdmVyc2lvbiBvbiB0aGUgY2xpZW50LiBBbHdheXMgdXNlIG1hdGNoaW5nIHZlcnNpb25zIG9uIHRoZSBzZXJ2ZXIgYW5kIHRoZSBjbGllbnQuIik7Y2FzZSA4MjplZShlLG4sdm9pZCAwKTticmVhaztjYXNlIDExNDplZShlLG4sImJ5dGVzIik7YnJlYWs7Y2FzZSA4ODplbihlLG4sITEpO2JyZWFrO2Nhc2UgMTIwOmVuKGUsbiwhMCk7YnJlYWs7Y2FzZSA2Nzoobj1lLl9jaHVua3MuZ2V0KG4pKSYmImZ1bGZpbGxlZCI9PT1uLnN0YXR1cyYmbi5yZWFzb24uY2xvc2UoIiI9PT11PyciJHVuZGVmaW5lZCInOnUpO2JyZWFrO2RlZmF1bHQ6KGk9KHI9ZS5fY2h1bmtzKS5nZXQobikpP04oZSxpLHUpOihlPW5ldyBTKCJyZXNvbHZlZF9tb2RlbCIsdSxlKSxyLnNldChuLGUpKX19KGUsdSxhLHAsdix5KSxzPV8sMz09PWYmJnMrKyx5PWE9cD1mPTAsdi5sZW5ndGg9MDtlbHNle2w9bmV3IFVpbnQ4QXJyYXkobC5idWZmZXIsYixsLmJ5dGVMZW5ndGgtcyksOTg9PT1wPyh5LT1sLmJ5dGVMZW5ndGgsUShlLGEsbCkpOih2LnB1c2gobCkseS09bC5ieXRlTGVuZ3RoKTticmVha319cmV0dXJuIHUuX3Jvd1N0YXRlPWYsdS5fcm93SUQ9YSx1Ll9yb3dUYWc9cCx1Ll9yb3dMZW5ndGg9eSxpLnJlYWQoKS50aGVuKHQpLmNhdGNoKHIpfSkuY2F0Y2gocil9bi5jcmVhdGVGcm9tRmV0Y2g9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lYSh0KTtyZXR1cm4gZS50aGVuKGZ1bmN0aW9uKGUpe2VsKG4sZS5ib2R5LGVpLmJpbmQobnVsbCxuKSl9LGZ1bmN0aW9uKGUpeyQobixlKX0pLEgobiwwKX0sbi5jcmVhdGVGcm9tUmVhZGFibGVTdHJlYW09ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZWwodD1lYSh0KSxlLGVpLmJpbmQobnVsbCx0KSksSCh0LDApfSxuLmNyZWF0ZVNlcnZlclJlZmVyZW5jZT1mdW5jdGlvbihlLHQpe2Z1bmN0aW9uIG4oKXt2YXIgbj1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpO3JldHVybiB0KGUsbil9cmV0dXJuIEUobixlLG51bGwpLG59LG4uY3JlYXRlVGVtcG9yYXJ5UmVmZXJlbmNlU2V0PWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9LG4uZW5jb2RlUmVwbHk9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24obixyKXt2YXIgbz1mdW5jdGlvbihlLHQsbixyLG8pe2Z1bmN0aW9uIHUoZSx0KXt0PW5ldyBCbG9iKFtuZXcgVWludDhBcnJheSh0LmJ1ZmZlcix0LmJ5dGVPZmZzZXQsdC5ieXRlTGVuZ3RoKV0pO3ZhciBuPWwrKztyZXR1cm4gbnVsbD09PWMmJihjPW5ldyBGb3JtRGF0YSksYy5hcHBlbmQoIiIrbix0KSwiJCIrZStuLnRvU3RyaW5nKDE2KX1mdW5jdGlvbiBpKGUsdCl7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7aWYoIm9iamVjdCI9PXR5cGVvZiB0KXtzd2l0Y2godC4kJHR5cGVvZil7Y2FzZSBwOmlmKHZvaWQgMCE9PW4mJi0xPT09ZS5pbmRleE9mKCI6Iikpe3ZhciBFLFMsUixPLHcsVD1mLmdldCh0aGlzKTtpZih2b2lkIDAhPT1UKXJldHVybiBuLnNldChUKyI6IitlLHQpLCIkVCJ9dGhyb3cgRXJyb3IoIlJlYWN0IEVsZW1lbnQgY2Fubm90IGJlIHBhc3NlZCB0byBTZXJ2ZXIgRnVuY3Rpb25zIGZyb20gdGhlIENsaWVudCB3aXRob3V0IGEgdGVtcG9yYXJ5IHJlZmVyZW5jZSBzZXQuIFBhc3MgYSBUZW1wb3JhcnlSZWZlcmVuY2VTZXQgdG8gdGhlIG9wdGlvbnMuIik7Y2FzZSB5OlQ9dC5fcGF5bG9hZDt2YXIgaj10Ll9pbml0O251bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLHMrKzt0cnl7dmFyIEE9aihUKSxrPWwrKyxDPWEoQSxrKTtyZXR1cm4gYy5hcHBlbmQoIiIrayxDKSwiJCIray50b1N0cmluZygxNil9Y2F0Y2goZSl7aWYoIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmImZ1bmN0aW9uIj09dHlwZW9mIGUudGhlbil7cysrO3ZhciBOPWwrKztyZXR1cm4gVD1mdW5jdGlvbigpe3RyeXt2YXIgZT1hKHQsTiksbj1jO24uYXBwZW5kKCIiK04sZSkscy0tLDA9PT1zJiZyKG4pfWNhdGNoKGUpe28oZSl9fSxlLnRoZW4oVCxUKSwiJCIrTi50b1N0cmluZygxNil9cmV0dXJuIG8oZSksbnVsbH1maW5hbGx5e3MtLX19aWYoVD1mLmdldCh0KSwiZnVuY3Rpb24iPT10eXBlb2YgdC50aGVuKXtpZih2b2lkIDAhPT1UKWlmKGQhPT10KXJldHVybiBUO2Vsc2UgZD1udWxsO251bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLHMrKzt2YXIgUD1sKys7cmV0dXJuIGU9IiRAIitQLnRvU3RyaW5nKDE2KSxmLnNldCh0LGUpLHQudGhlbihmdW5jdGlvbihlKXt0cnl7dmFyIHQ9Zi5nZXQoZSksbj12b2lkIDAhPT10P0pTT04uc3RyaW5naWZ5KHQpOmEoZSxQKTsoZT1jKS5hcHBlbmQoIiIrUCxuKSxzLS0sMD09PXMmJnIoZSl9Y2F0Y2goZSl7byhlKX19LG8pLGV9aWYodm9pZCAwIT09VClpZihkIT09dClyZXR1cm4gVDtlbHNlIGQ9bnVsbDtlbHNlIC0xPT09ZS5pbmRleE9mKCI6IikmJnZvaWQgMCE9PShUPWYuZ2V0KHRoaXMpKSYmKGU9VCsiOiIrZSxmLnNldCh0LGUpLHZvaWQgMCE9PW4mJm4uc2V0KGUsdCkpO2lmKF8odCkpcmV0dXJuIHQ7aWYodCBpbnN0YW5jZW9mIEZvcm1EYXRhKXtudWxsPT09YyYmKGM9bmV3IEZvcm1EYXRhKTt2YXIgeD1jLEQ9IiIrKGU9bCsrKSsiXyI7cmV0dXJuIHQuZm9yRWFjaChmdW5jdGlvbihlLHQpe3guYXBwZW5kKEQrdCxlKX0pLCIkSyIrZS50b1N0cmluZygxNil9aWYodCBpbnN0YW5jZW9mIE1hcClyZXR1cm4gZT1sKyssVD1hKEFycmF5LmZyb20odCksZSksbnVsbD09PWMmJihjPW5ldyBGb3JtRGF0YSksYy5hcHBlbmQoIiIrZSxUKSwiJFEiK2UudG9TdHJpbmcoMTYpO2lmKHQgaW5zdGFuY2VvZiBTZXQpcmV0dXJuIGU9bCsrLFQ9YShBcnJheS5mcm9tKHQpLGUpLG51bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLGMuYXBwZW5kKCIiK2UsVCksIiRXIitlLnRvU3RyaW5nKDE2KTtpZih0IGluc3RhbmNlb2YgQXJyYXlCdWZmZXIpcmV0dXJuIGU9bmV3IEJsb2IoW3RdKSxUPWwrKyxudWxsPT09YyYmKGM9bmV3IEZvcm1EYXRhKSxjLmFwcGVuZCgiIitULGUpLCIkQSIrVC50b1N0cmluZygxNik7aWYodCBpbnN0YW5jZW9mIEludDhBcnJheSlyZXR1cm4gdSgiTyIsdCk7aWYodCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpcmV0dXJuIHUoIm8iLHQpO2lmKHQgaW5zdGFuY2VvZiBVaW50OENsYW1wZWRBcnJheSlyZXR1cm4gdSgiVSIsdCk7aWYodCBpbnN0YW5jZW9mIEludDE2QXJyYXkpcmV0dXJuIHUoIlMiLHQpO2lmKHQgaW5zdGFuY2VvZiBVaW50MTZBcnJheSlyZXR1cm4gdSgicyIsdCk7aWYodCBpbnN0YW5jZW9mIEludDMyQXJyYXkpcmV0dXJuIHUoIkwiLHQpO2lmKHQgaW5zdGFuY2VvZiBVaW50MzJBcnJheSlyZXR1cm4gdSgibCIsdCk7aWYodCBpbnN0YW5jZW9mIEZsb2F0MzJBcnJheSlyZXR1cm4gdSgiRyIsdCk7aWYodCBpbnN0YW5jZW9mIEZsb2F0NjRBcnJheSlyZXR1cm4gdSgiZyIsdCk7aWYodCBpbnN0YW5jZW9mIEJpZ0ludDY0QXJyYXkpcmV0dXJuIHUoIk0iLHQpO2lmKHQgaW5zdGFuY2VvZiBCaWdVaW50NjRBcnJheSlyZXR1cm4gdSgibSIsdCk7aWYodCBpbnN0YW5jZW9mIERhdGFWaWV3KXJldHVybiB1KCJWIix0KTtpZigiZnVuY3Rpb24iPT10eXBlb2YgQmxvYiYmdCBpbnN0YW5jZW9mIEJsb2IpcmV0dXJuIG51bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLGU9bCsrLGMuYXBwZW5kKCIiK2UsdCksIiRCIitlLnRvU3RyaW5nKDE2KTtpZihlPW51bGw9PT0oRT10KXx8Im9iamVjdCIhPXR5cGVvZiBFP251bGw6ImZ1bmN0aW9uIj09dHlwZW9mKEU9diYmRVt2XXx8RVsiQEBpdGVyYXRvciJdKT9FOm51bGwpcmV0dXJuKFQ9ZS5jYWxsKHQpKT09PXQ/KGU9bCsrLFQ9YShBcnJheS5mcm9tKFQpLGUpLG51bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLGMuYXBwZW5kKCIiK2UsVCksIiRpIitlLnRvU3RyaW5nKDE2KSk6QXJyYXkuZnJvbShUKTtpZigiZnVuY3Rpb24iPT10eXBlb2YgUmVhZGFibGVTdHJlYW0mJnQgaW5zdGFuY2VvZiBSZWFkYWJsZVN0cmVhbSlyZXR1cm4gZnVuY3Rpb24oZSl7dHJ5e3ZhciB0LG4sdSxhLGYsZCxwLHk9ZS5nZXRSZWFkZXIoe21vZGU6ImJ5b2IifSl9Y2F0Y2goYSl7cmV0dXJuIHQ9ZS5nZXRSZWFkZXIoKSxudWxsPT09YyYmKGM9bmV3IEZvcm1EYXRhKSxuPWMscysrLHU9bCsrLHQucmVhZCgpLnRoZW4oZnVuY3Rpb24gZShhKXtpZihhLmRvbmUpbi5hcHBlbmQoIiIrdSwiQyIpLDA9PS0tcyYmcihuKTtlbHNlIHRyeXt2YXIgbD1KU09OLnN0cmluZ2lmeShhLnZhbHVlLGkpO24uYXBwZW5kKCIiK3UsbCksdC5yZWFkKCkudGhlbihlLG8pfWNhdGNoKGUpe28oZSl9fSxvKSwiJFIiK3UudG9TdHJpbmcoMTYpfXJldHVybiBhPXksbnVsbD09PWMmJihjPW5ldyBGb3JtRGF0YSksZj1jLHMrKyxkPWwrKyxwPVtdLGEucmVhZChuZXcgVWludDhBcnJheSgxMDI0KSkudGhlbihmdW5jdGlvbiBlKHQpe3QuZG9uZT8odD1sKyssZi5hcHBlbmQoIiIrdCxuZXcgQmxvYihwKSksZi5hcHBlbmQoIiIrZCwnIiRvJyt0LnRvU3RyaW5nKDE2KSsnIicpLGYuYXBwZW5kKCIiK2QsIkMiKSwwPT0tLXMmJnIoZikpOihwLnB1c2godC52YWx1ZSksYS5yZWFkKG5ldyBVaW50OEFycmF5KDEwMjQpKS50aGVuKGUsbykpfSxvKSwiJHIiK2QudG9TdHJpbmcoMTYpfSh0KTtpZigiZnVuY3Rpb24iPT10eXBlb2YoZT10W2hdKSlyZXR1cm4gUz10LFI9ZS5jYWxsKHQpLG51bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLE89YyxzKyssdz1sKyssUz1TPT09UixSLm5leHQoKS50aGVuKGZ1bmN0aW9uIGUodCl7aWYodC5kb25lKXtpZih2b2lkIDA9PT10LnZhbHVlKU8uYXBwZW5kKCIiK3csIkMiKTtlbHNlIHRyeXt2YXIgbj1KU09OLnN0cmluZ2lmeSh0LnZhbHVlLGkpO08uYXBwZW5kKCIiK3csIkMiK24pfWNhdGNoKGUpe28oZSk7cmV0dXJufTA9PS0tcyYmcihPKX1lbHNlIHRyeXt2YXIgdT1KU09OLnN0cmluZ2lmeSh0LnZhbHVlLGkpO08uYXBwZW5kKCIiK3csdSksUi5uZXh0KCkudGhlbihlLG8pfWNhdGNoKGUpe28oZSl9fSxvKSwiJCIrKFM/IngiOiJYIikrdy50b1N0cmluZygxNik7aWYoKGU9Yih0KSkhPT1nJiYobnVsbD09PWV8fG51bGwhPT1iKGUpKSl7aWYodm9pZCAwPT09bil0aHJvdyBFcnJvcigiT25seSBwbGFpbiBvYmplY3RzLCBhbmQgYSBmZXcgYnVpbHQtaW5zLCBjYW4gYmUgcGFzc2VkIHRvIFNlcnZlciBGdW5jdGlvbnMuIENsYXNzZXMgb3IgbnVsbCBwcm90b3R5cGVzIGFyZSBub3Qgc3VwcG9ydGVkLiIpO3JldHVybiIkVCJ9cmV0dXJuIHR9aWYoInN0cmluZyI9PXR5cGVvZiB0KXJldHVybiJaIj09PXRbdC5sZW5ndGgtMV0mJnRoaXNbZV1pbnN0YW5jZW9mIERhdGU/IiREIit0OmU9IiQiPT09dFswXT8iJCIrdDp0O2lmKCJib29sZWFuIj09dHlwZW9mIHQpcmV0dXJuIHQ7aWYoIm51bWJlciI9PXR5cGVvZiB0KXJldHVybiBOdW1iZXIuaXNGaW5pdGUodCk/MD09PXQmJi0xLzA9PTEvdD8iJC0wIjp0OjEvMD09PXQ/IiRJbmZpbml0eSI6LTEvMD09PXQ/IiQtSW5maW5pdHkiOiIkTmFOIjtpZih2b2lkIDA9PT10KXJldHVybiIkdW5kZWZpbmVkIjtpZigiZnVuY3Rpb24iPT10eXBlb2YgdCl7aWYodm9pZCAwIT09KFQ9bS5nZXQodCkpKXJldHVybiB2b2lkIDAhPT0oZT1mLmdldCh0KSl8fChlPUpTT04uc3RyaW5naWZ5KHtpZDpULmlkLGJvdW5kOlQuYm91bmR9LGkpLG51bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLFQ9bCsrLGMuc2V0KCIiK1QsZSksZT0iJGgiK1QudG9TdHJpbmcoMTYpLGYuc2V0KHQsZSkpLGU7aWYodm9pZCAwIT09biYmLTE9PT1lLmluZGV4T2YoIjoiKSYmdm9pZCAwIT09KFQ9Zi5nZXQodGhpcykpKXJldHVybiBuLnNldChUKyI6IitlLHQpLCIkVCI7dGhyb3cgRXJyb3IoIkNsaWVudCBGdW5jdGlvbnMgY2Fubm90IGJlIHBhc3NlZCBkaXJlY3RseSB0byBTZXJ2ZXIgRnVuY3Rpb25zLiBPbmx5IEZ1bmN0aW9ucyBwYXNzZWQgZnJvbSB0aGUgU2VydmVyIGNhbiBiZSBwYXNzZWQgYmFjayBhZ2Fpbi4iKX1pZigic3ltYm9sIj09dHlwZW9mIHQpe2lmKHZvaWQgMCE9PW4mJi0xPT09ZS5pbmRleE9mKCI6IikmJnZvaWQgMCE9PShUPWYuZ2V0KHRoaXMpKSlyZXR1cm4gbi5zZXQoVCsiOiIrZSx0KSwiJFQiO3Rocm93IEVycm9yKCJTeW1ib2xzIGNhbm5vdCBiZSBwYXNzZWQgdG8gYSBTZXJ2ZXIgRnVuY3Rpb24gd2l0aG91dCBhIHRlbXBvcmFyeSByZWZlcmVuY2Ugc2V0LiBQYXNzIGEgVGVtcG9yYXJ5UmVmZXJlbmNlU2V0IHRvIHRoZSBvcHRpb25zLiIpfWlmKCJiaWdpbnQiPT10eXBlb2YgdClyZXR1cm4iJG4iK3QudG9TdHJpbmcoMTApO3Rocm93IEVycm9yKCJUeXBlICIrdHlwZW9mIHQrIiBpcyBub3Qgc3VwcG9ydGVkIGFzIGFuIGFyZ3VtZW50IHRvIGEgU2VydmVyIEZ1bmN0aW9uLiIpfWZ1bmN0aW9uIGEoZSx0KXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiYodD0iJCIrdC50b1N0cmluZygxNiksZi5zZXQoZSx0KSx2b2lkIDAhPT1uJiZuLnNldCh0LGUpKSxkPWUsSlNPTi5zdHJpbmdpZnkoZSxpKX12YXIgbD0xLHM9MCxjPW51bGwsZj1uZXcgV2Vha01hcCxkPWUsRT1hKGUsMCk7cmV0dXJuIG51bGw9PT1jP3IoRSk6KGMuc2V0KCIwIixFKSwwPT09cyYmcihjKSksZnVuY3Rpb24oKXswPHMmJihzPTAsbnVsbD09PWM/cihFKTpyKGMpKX19KGUsMCx0JiZ0LnRlbXBvcmFyeVJlZmVyZW5jZXM/dC50ZW1wb3JhcnlSZWZlcmVuY2VzOnZvaWQgMCxuLHIpO2lmKHQmJnQuc2lnbmFsKXt2YXIgdT10LnNpZ25hbDtpZih1LmFib3J0ZWQpbyh1LnJlYXNvbik7ZWxzZXt2YXIgaT1mdW5jdGlvbigpe28odS5yZWFzb24pLHUucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYWJvcnQiLGkpfTt1LmFkZEV2ZW50TGlzdGVuZXIoImFib3J0IixpKX19fSl9LG4ucmVnaXN0ZXJTZXJ2ZXJSZWZlcmVuY2U9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gRShlLHQsbnVsbCksZX19LDkxNTk4LChlLHQsbik9PnsidXNlIHN0cmljdCI7dC5leHBvcnRzPWUucig0OTcwNil9LDc1MDQ1LChlLHQsbik9PnsidXNlIHN0cmljdCI7dC5leHBvcnRzPWUucig5MTU5OCl9LDU5NDMwLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciByLG89e0FDVElPTl9ITVJfUkVGUkVTSDpmdW5jdGlvbigpe3JldHVybiBjfSxBQ1RJT05fTkFWSUdBVEU6ZnVuY3Rpb24oKXtyZXR1cm4gYX0sQUNUSU9OX1JFRlJFU0g6ZnVuY3Rpb24oKXtyZXR1cm4gaX0sQUNUSU9OX1JFU1RPUkU6ZnVuY3Rpb24oKXtyZXR1cm4gbH0sQUNUSU9OX1NFUlZFUl9BQ1RJT046ZnVuY3Rpb24oKXtyZXR1cm4gZn0sQUNUSU9OX1NFUlZFUl9QQVRDSDpmdW5jdGlvbigpe3JldHVybiBzfSxQcmVmZXRjaEtpbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gZH19O2Zvcih2YXIgdSBpbiBvKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLHUse2VudW1lcmFibGU6ITAsZ2V0Om9bdV19KTtsZXQgaT0icmVmcmVzaCIsYT0ibmF2aWdhdGUiLGw9InJlc3RvcmUiLHM9InNlcnZlci1wYXRjaCIsYz0iaG1yLXJlZnJlc2giLGY9InNlcnZlci1hY3Rpb24iO3ZhciBkPSgocj17fSkuQVVUTz0iYXV0byIsci5GVUxMPSJmdWxsIixyKTsoImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSw5MTc2OCwoZSx0LG4pPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSl7cmV0dXJuIG51bGwhPT1lJiYib2JqZWN0Ij09dHlwZW9mIGUmJiJ0aGVuImluIGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBlLnRoZW59T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJpc1RoZW5hYmxlIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gcn19KX0sOTQ4NzksKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIHI9e2Rpc3BhdGNoQXBwUm91dGVyQWN0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIGx9LHVzZUFjdGlvblF1ZXVlOmZ1bmN0aW9uKCl7cmV0dXJuIHN9fTtmb3IodmFyIG8gaW4gcilPYmplY3QuZGVmaW5lUHJvcGVydHkobixvLHtlbnVtZXJhYmxlOiEwLGdldDpyW29dfSk7bGV0IHU9ZS5yKDQ0MDY2KS5fKGUucig3NTIwMSkpLGk9ZS5yKDkxNzY4KSxhPW51bGw7ZnVuY3Rpb24gbChlKXtpZihudWxsPT09YSl0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIkludGVybmFsIE5leHQuanMgZXJyb3I6IFJvdXRlciBhY3Rpb24gZGlzcGF0Y2hlZCBiZWZvcmUgaW5pdGlhbGl6YXRpb24uIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU2NjgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7YShlKX1mdW5jdGlvbiBzKGUpe2xldFt0LG5dPXUuZGVmYXVsdC51c2VTdGF0ZShlLnN0YXRlKTthPXQ9PmUuZGlzcGF0Y2godCxuKTtsZXQgcj0oMCx1LnVzZU1lbW8pKCgpPT50LFt0XSk7cmV0dXJuKDAsaS5pc1RoZW5hYmxlKShyKT8oMCx1LnVzZSkocik6cn0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSwzMDkzMSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiY2FsbFNlcnZlciIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGl9fSk7bGV0IHI9ZS5yKDc1MjAxKSxvPWUucig1OTQzMCksdT1lLnIoOTQ4NzkpO2FzeW5jIGZ1bmN0aW9uIGkoZSx0KXtyZXR1cm4gbmV3IFByb21pc2UoKG4saSk9PnsoMCxyLnN0YXJ0VHJhbnNpdGlvbikoKCk9PnsoMCx1LmRpc3BhdGNoQXBwUm91dGVyQWN0aW9uKSh7dHlwZTpvLkFDVElPTl9TRVJWRVJfQUNUSU9OLGFjdGlvbklkOmUsYWN0aW9uQXJnczp0LHJlc29sdmU6bixyZWplY3Q6aX0pfSl9KX0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSw4OTU5NCwoZSx0LG4pPT57InVzZSBzdHJpY3QiO2xldCByO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiZmluZFNvdXJjZU1hcFVSTCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHJ9fSk7KCJmdW5jdGlvbiI9PXR5cGVvZiBuLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygbi5kZWZhdWx0JiZudWxsIT09bi5kZWZhdWx0KSYmdm9pZCAwPT09bi5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKG4uZGVmYXVsdCxuKSx0LmV4cG9ydHM9bi5kZWZhdWx0KX1dKTs="}},"time_used":9,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":7,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/planicon3.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.545Z","timestamp":1785158432545,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/planicon3.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=Bqe2xvUni%2Fk3fKTCyBRGJWNqPuR6%2FbSJaKzw42p2EBbeUszQj6W1fVF7vy%2FLF2LTqYEKzDnnzGiOUEFzn4MdsDzMW2QceTsLjxZlHlG4fKow%2FIoR%2BJDJKFK9fc3Tzb0jwKXeGA%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b6c7956b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 5035\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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":5035,"size_decoded":5801,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"74a38e4171844a6dff3a307f48e1850b","sha1":"5f2bf4296ee5ea722893937886ee0e964a1225d9","sha256":"dbf3c70d153023eebaf89e1ac2d1b8f0d23abf63bfe1627768344c8e5fb84378","sha512":"ae26c8ba4c3a6b839d8cb538802a7dabe0c5fa6cece51ac7fe2e2980a5ce1443686e512258d47fef3a6cb2c7e5d99ec3e1ece48aafefd29dff36db72a2abc8f1","ssdeep":"96:PY20O9+brAlaTfnap113K2mX3utfSk33X7ao6lXcjoJ9dL4+IFAg:Pt9+brAefnata2muL33XOo6hUoJ9dL4d","tlshash":"aea17d8971067e9107acc3d938da6a92ed060f2058e0f2217d46c56f14778b5a1d88ee","first_seen":"2024-09-19T20:45:30.946543Z","last_seen":"2026-07-27T13:21:39.127349Z","times_seen":10,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OEZGMEVDNEU4NUQ0MTFFOUE5QjJGNTFCNkQzQTlCMkEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OEZGMEVDNEY4NUQ0MTFFOUE5QjJGNTFCNkQzQTlCMkEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4RkYwRUM0Qzg1RDQxMUU5QTlCMkY1MUI2RDNBOUIyQSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4RkYwRUM0RDg1RDQxMUU5QTlCMkY1MUI2RDNBOUIyQSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PpSps7oAABAfSURBVHja3FsJVBVX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"}},"time_used":21,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":21,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/95262386d8d4b6dd.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.135Z","timestamp":1785158433135,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/95262386d8d4b6dd.js HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: *\r\nage: 4438839\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"95262386d8d4b6dd.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com https://vitals.vercel-insights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\netag: W/\"8c155806c003f628ca093cb0feb083d0\"\r\nlast-modified: Thu, 30 Apr 2026 21:19:00 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/95262386d8d4b6dd.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::n9fnj-1777689750477-eb548eb708c2\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=TqRCaw5P8gk9pJkeBrCPB8RTo%2FWcT0jDXlCpE5L898Vk39EFjB%2FsQrd4Zm7FjPg1hq1WBF%2FxPxXLAaGAExIQJRZKBapwibSZvatkQmfM%2BAWHhax4Ggr73RcuUrJY\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21bf12f183a56b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":30684,"size_decoded":9883,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (30682), with no line terminators","md5":"8c155806c003f628ca093cb0feb083d0","sha1":"7e566386cefa86e8ede2e755f712dff7a8ef02f7","sha256":"07310b422de93eb0e61986355fd1084b06b47060d629f957c5311440650a6d2a","sha512":"980bd9a8f57049d13d7a8647fb56f621b005d208dafacc5c0534b9a919204bc9e363a122a1b4a48f4ef71cc00dcd2308e4885de83e31d2491b0a5d4a807fe7fe","ssdeep":"384:tj5z75Bq9E0mLlSmRt0cJ3XHHE79Fg/Za98qWtOPSN6wfV:N5z9BX0idiMxxgwfV","tlshash":"a4d2d9b17395f9a352db86d9d03a0005f2290d3530ae28b0b395dcef365dc8991fafa5","first_seen":"2026-03-29T05:29:39.700118Z","last_seen":"2026-08-17T21:34:38.523649Z","times_seen":2231,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDc3NDcyLChlLHQscik9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbihlLHQ9e30pe2lmKHQub25seUhhc2hDaGFuZ2UpcmV0dXJuIHZvaWQgZSgpO2xldCByPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtpZigic21vb3RoIiE9PXIuZGF0YXNldC5zY3JvbGxCZWhhdmlvcilyZXR1cm4gdm9pZCBlKCk7bGV0IGE9ci5zdHlsZS5zY3JvbGxCZWhhdmlvcjtyLnN0eWxlLnNjcm9sbEJlaGF2aW9yPSJhdXRvIix0LmRvbnRGb3JjZUxheW91dHx8ci5nZXRDbGllbnRSZWN0cygpLGUoKSxyLnN0eWxlLnNjcm9sbEJlaGF2aW9yPWF9T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJkaXNhYmxlU21vb3RoU2Nyb2xsRHVyaW5nUm91dGVUcmFuc2l0aW9uIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KSxlLnIoOTE5NDcpfSwxODkxLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJIVFRQQWNjZXNzRmFsbGJhY2tCb3VuZGFyeSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGx9fSk7bGV0IG49ZS5yKDQ0MDY2KSxhPWUucig5ODEzNCksbz1uLl8oZS5yKDc1MjAxKSksaT1lLnIoNzQwODQpLHM9ZS5yKDUzMTMzKTtlLnIoOTE5NDcpO2xldCBjPWUucigxNjg3Mik7Y2xhc3MgdSBleHRlbmRzIG8uZGVmYXVsdC5Db21wb25lbnR7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSksdGhpcy5zdGF0ZT17dHJpZ2dlcmVkU3RhdHVzOnZvaWQgMCxwcmV2aW91c1BhdGhuYW1lOmUucGF0aG5hbWV9fWNvbXBvbmVudERpZENhdGNoKCl7fXN0YXRpYyBnZXREZXJpdmVkU3RhdGVGcm9tRXJyb3IoZSl7aWYoKDAscy5pc0hUVFBBY2Nlc3NGYWxsYmFja0Vycm9yKShlKSlyZXR1cm57dHJpZ2dlcmVkU3RhdHVzOigwLHMuZ2V0QWNjZXNzRmFsbGJhY2tIVFRQU3RhdHVzKShlKX07dGhyb3cgZX1zdGF0aWMgZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKGUsdCl7cmV0dXJuIGUucGF0aG5hbWUhPT10LnByZXZpb3VzUGF0aG5hbWUmJnQudHJpZ2dlcmVkU3RhdHVzP3t0cmlnZ2VyZWRTdGF0dXM6dm9pZCAwLHByZXZpb3VzUGF0aG5hbWU6ZS5wYXRobmFtZX06e3RyaWdnZXJlZFN0YXR1czp0LnRyaWdnZXJlZFN0YXR1cyxwcmV2aW91c1BhdGhuYW1lOmUucGF0aG5hbWV9fXJlbmRlcigpe2xldHtub3RGb3VuZDplLGZvcmJpZGRlbjp0LHVuYXV0aG9yaXplZDpyLGNoaWxkcmVuOm59PXRoaXMucHJvcHMse3RyaWdnZXJlZFN0YXR1czpvfT10aGlzLnN0YXRlLGk9e1tzLkhUVFBBY2Nlc3NFcnJvclN0YXR1cy5OT1RfRk9VTkRdOmUsW3MuSFRUUEFjY2Vzc0Vycm9yU3RhdHVzLkZPUkJJRERFTl06dCxbcy5IVFRQQWNjZXNzRXJyb3JTdGF0dXMuVU5BVVRIT1JJWkVEXTpyfTtpZihvKXtsZXQgYz1vPT09cy5IVFRQQWNjZXNzRXJyb3JTdGF0dXMuTk9UX0ZPVU5EJiZlLHU9bz09PXMuSFRUUEFjY2Vzc0Vycm9yU3RhdHVzLkZPUkJJRERFTiYmdCxsPW89PT1zLkhUVFBBY2Nlc3NFcnJvclN0YXR1cy5VTkFVVEhPUklaRUQmJnI7cmV0dXJuIGN8fHV8fGw/KDAsYS5qc3hzKShhLkZyYWdtZW50LHtjaGlsZHJlbjpbKDAsYS5qc3gpKCJtZXRhIix7bmFtZToicm9ib3RzIixjb250ZW50OiJub2luZGV4In0pLCExLGlbb11dfSk6bn1yZXR1cm4gbn19ZnVuY3Rpb24gbCh7bm90Rm91bmQ6ZSxmb3JiaWRkZW46dCx1bmF1dGhvcml6ZWQ6cixjaGlsZHJlbjpufSl7bGV0IHM9KDAsaS51c2VVbnRyYWNrZWRQYXRobmFtZSkoKSxsPSgwLG8udXNlQ29udGV4dCkoYy5NaXNzaW5nU2xvdENvbnRleHQpO3JldHVybiBlfHx0fHxyPygwLGEuanN4KSh1LHtwYXRobmFtZTpzLG5vdEZvdW5kOmUsZm9yYmlkZGVuOnQsdW5hdXRob3JpemVkOnIsbWlzc2luZ1Nsb3RzOmwsY2hpbGRyZW46bn0pOigwLGEuanN4KShhLkZyYWdtZW50LHtjaGlsZHJlbjpufSl9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sODU2NDYsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInVzZVJvdXRlckJGQ2FjaGUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCBuPWUucig3NTIwMSk7ZnVuY3Rpb24gYShlLHQpe2xldFtyLGFdPSgwLG4udXNlU3RhdGUpKCgpPT4oe3RyZWU6ZSxzdGF0ZUtleTp0LG5leHQ6bnVsbH0pKTtpZihyLnRyZWU9PT1lKXJldHVybiByO2xldCBvPXt0cmVlOmUsc3RhdGVLZXk6dCxuZXh0Om51bGx9LGk9MSxzPXIsYz1vO2Zvcig7bnVsbCE9PXMmJmk8MTspe2lmKHMuc3RhdGVLZXk9PT10KXtjLm5leHQ9cy5uZXh0O2JyZWFrfXtpKys7bGV0IGU9e3RyZWU6cy50cmVlLHN0YXRlS2V5OnMuc3RhdGVLZXksbmV4dDpudWxsfTtjLm5leHQ9ZSxjPWV9cz1zLm5leHR9cmV0dXJuIGEobyksb30oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwzMDk3LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJkZWZhdWx0Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gd319KTtsZXQgbj1lLnIoODEyNTgpLGE9ZS5yKDQ0MDY2KSxvPWUucig5ODEzNCksaT1hLl8oZS5yKDc1MjAxKSkscz1uLl8oZS5yKDI5MDgwKSksYz1lLnIoMTY4NzIpLHU9ZS5yKDUwMDk2KSxsPWUucig3NDg0NyksZD1lLnIoODk2MTYpLGY9ZS5yKDc3NDcyKSxwPWUucig1NzI0NyksaD1lLnIoMTg5MSksbT1lLnIoNTc3NzgpLGc9ZS5yKDg1NjQ2KTtlLnIoOTIyMjcpO2xldCB5PWUucigzMTg5OSksYj1lLnIoODgwNjIpLFA9ZS5yKDE4OTM5KSxfPXMuZGVmYXVsdC5fX0RPTV9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9XQVJOX1VTRVJTX1RIRVlfQ0FOTk9UX1VQR1JBREUsUz1bImJvdHRvbSIsImhlaWdodCIsImxlZnQiLCJyaWdodCIsInRvcCIsIndpZHRoIiwieCIsInkiXTtmdW5jdGlvbiB2KGUsdCl7bGV0IHI9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtyZXR1cm4gci50b3A+PTAmJnIudG9wPD10fWNsYXNzIE8gZXh0ZW5kcyBpLmRlZmF1bHQuQ29tcG9uZW50e2NvbXBvbmVudERpZE1vdW50KCl7dGhpcy5oYW5kbGVQb3RlbnRpYWxTY3JvbGwoKX1jb21wb25lbnREaWRVcGRhdGUoKXt0aGlzLnByb3BzLmZvY3VzQW5kU2Nyb2xsUmVmLmFwcGx5JiZ0aGlzLmhhbmRsZVBvdGVudGlhbFNjcm9sbCgpfXJlbmRlcigpe3JldHVybiB0aGlzLnByb3BzLmNoaWxkcmVufWNvbnN0cnVjdG9yKC4uLmUpe3N1cGVyKC4uLmUpLHRoaXMuaGFuZGxlUG90ZW50aWFsU2Nyb2xsPSgpPT57bGV0e2ZvY3VzQW5kU2Nyb2xsUmVmOmUsc2VnbWVudFBhdGg6dH09dGhpcy5wcm9wcztpZihlLmFwcGx5KXtpZigwIT09ZS5zZWdtZW50UGF0aHMubGVuZ3RoJiYhZS5zZWdtZW50UGF0aHMuc29tZShlPT50LmV2ZXJ5KCh0LHIpPT4oMCxkLm1hdGNoU2VnbWVudCkodCxlW3JdKSkpKXJldHVybjtsZXQgcj1udWxsLG49ZS5oYXNoRnJhZ21lbnQ7aWYobiYmKHI9InRvcCI9PT1uP2RvY3VtZW50LmJvZHk6ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQobik/P2RvY3VtZW50LmdldEVsZW1lbnRzQnlOYW1lKG4pWzBdKSxyfHwocj0idSI8dHlwZW9mIHdpbmRvdz9udWxsOigwLF8uZmluZERPTU5vZGUpKHRoaXMpKSwhKHIgaW5zdGFuY2VvZiBFbGVtZW50KSlyZXR1cm47Zm9yKDshKHIgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCl8fGZ1bmN0aW9uKGUpe2lmKFsic3RpY2t5IiwiZml4ZWQiXS5pbmNsdWRlcyhnZXRDb21wdXRlZFN0eWxlKGUpLnBvc2l0aW9uKSlyZXR1cm4hMDtsZXQgdD1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3JldHVybiBTLmV2ZXJ5KGU9PjA9PT10W2VdKX0ocik7KXtpZihudWxsPT09ci5uZXh0RWxlbWVudFNpYmxpbmcpcmV0dXJuO3I9ci5uZXh0RWxlbWVudFNpYmxpbmd9ZS5hcHBseT0hMSxlLmhhc2hGcmFnbWVudD1udWxsLGUuc2VnbWVudFBhdGhzPVtdLCgwLGYuZGlzYWJsZVNtb290aFNjcm9sbER1cmluZ1JvdXRlVHJhbnNpdGlvbikoKCk9PntpZihuKXJldHVybiB2b2lkIHIuc2Nyb2xsSW50b1ZpZXcoKTtsZXQgZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsdD1lLmNsaWVudEhlaWdodDshdihyLHQpJiYoZS5zY3JvbGxUb3A9MCx2KHIsdCl8fHIuc2Nyb2xsSW50b1ZpZXcoKSl9LHtkb250Rm9yY2VMYXlvdXQ6ITAsb25seUhhc2hDaGFuZ2U6ZS5vbmx5SGFzaENoYW5nZX0pLGUub25seUhhc2hDaGFuZ2U9ITEsci5mb2N1cygpfX19fWZ1bmN0aW9uIFIoe3NlZ21lbnRQYXRoOmUsY2hpbGRyZW46dH0pe2xldCByPSgwLGkudXNlQ29udGV4dCkoYy5HbG9iYWxMYXlvdXRSb3V0ZXJDb250ZXh0KTtpZighcil0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoImludmFyaWFudCBnbG9iYWwgbGF5b3V0IHJvdXRlciBub3QgbW91bnRlZCIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNDczIixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO3JldHVybigwLG8uanN4KShPLHtzZWdtZW50UGF0aDplLGZvY3VzQW5kU2Nyb2xsUmVmOnIuZm9jdXNBbmRTY3JvbGxSZWYsY2hpbGRyZW46dH0pfWZ1bmN0aW9uIEUoe3RyZWU6ZSxzZWdtZW50UGF0aDp0LGRlYnVnTmFtZUNvbnRleHQ6cixjYWNoZU5vZGU6bixwYXJhbXM6YSx1cmw6cyxpc0FjdGl2ZTpsfSl7bGV0IGQsZj0oMCxpLnVzZUNvbnRleHQpKGMuR2xvYmFsTGF5b3V0Um91dGVyQ29udGV4dCk7aWYoKDAsaS51c2VDb250ZXh0KSh5Lk5hdmlnYXRpb25Qcm9taXNlc0NvbnRleHQpLCFmKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiaW52YXJpYW50IGdsb2JhbCBsYXlvdXQgcm91dGVyIG5vdCBtb3VudGVkIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU0NzMiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7bGV0IHA9bnVsbCE9PW4/bjooMCxpLnVzZSkodS51bnJlc29sdmVkVGhlbmFibGUpLGg9bnVsbCE9PXAucHJlZmV0Y2hSc2M/cC5wcmVmZXRjaFJzYzpwLnJzYyxtPSgwLGkudXNlRGVmZXJyZWRWYWx1ZSkocC5yc2MsaCk7aWYoKDAsUC5pc0RlZmVycmVkUnNjKShtKSl7bGV0IGU9KDAsaS51c2UpKG0pO251bGw9PT1lJiYoMCxpLnVzZSkodS51bnJlc29sdmVkVGhlbmFibGUpLGQ9ZX1lbHNlIG51bGw9PT1tJiYoMCxpLnVzZSkodS51bnJlc29sdmVkVGhlbmFibGUpLGQ9bTtsZXQgZz1kO3JldHVybigwLG8uanN4KShjLkxheW91dFJvdXRlckNvbnRleHQuUHJvdmlkZXIse3ZhbHVlOntwYXJlbnRUcmVlOmUscGFyZW50Q2FjaGVOb2RlOnAscGFyZW50U2VnbWVudFBhdGg6dCxwYXJlbnRQYXJhbXM6YSxkZWJ1Z05hbWVDb250ZXh0OnIsdXJsOnMsaXNBY3RpdmU6bH0sY2hpbGRyZW46Z30pfWZ1bmN0aW9uIGooe25hbWU6ZSxsb2FkaW5nOnQsY2hpbGRyZW46cn0pe2xldCBuO2lmKG49Im9iamVjdCI9PXR5cGVvZiB0JiZudWxsIT09dCYmImZ1bmN0aW9uIj09dHlwZW9mIHQudGhlbj8oMCxpLnVzZSkodCk6dCl7bGV0IHQ9blswXSxhPW5bMV0scz1uWzJdO3JldHVybigwLG8uanN4KShpLlN1c3BlbnNlLHtuYW1lOmUsZmFsbGJhY2s6KDAsby5qc3hzKShvLkZyYWdtZW50LHtjaGlsZHJlbjpbYSxzLHRdfSksY2hpbGRyZW46cn0pfXJldHVybigwLG8uanN4KShvLkZyYWdtZW50LHtjaGlsZHJlbjpyfSl9ZnVuY3Rpb24gdyh7cGFyYWxsZWxSb3V0ZXJLZXk6ZSxlcnJvcjp0LGVycm9yU3R5bGVzOnIsZXJyb3JTY3JpcHRzOm4sdGVtcGxhdGVTdHlsZXM6YSx0ZW1wbGF0ZVNjcmlwdHM6cyx0ZW1wbGF0ZTpkLG5vdEZvdW5kOmYsZm9yYmlkZGVuOnksdW5hdXRob3JpemVkOlAsc2VnbWVudFZpZXdCb3VuZGFyaWVzOl99KXtsZXQgUz0oMCxpLnVzZUNvbnRleHQpKGMuTGF5b3V0Um91dGVyQ29udGV4dCk7aWYoIVMpdGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKCJpbnZhcmlhbnQgZXhwZWN0ZWQgbGF5b3V0IHJvdXRlciB0byBiZSBtb3VudGVkIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU1NiIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtsZXR7cGFyZW50VHJlZTp2LHBhcmVudENhY2hlTm9kZTpPLHBhcmVudFNlZ21lbnRQYXRoOncscGFyZW50UGFyYW1zOkMsdXJsOlQsaXNBY3RpdmU6eCxkZWJ1Z05hbWVDb250ZXh0OkF9PVMsTT1PLnBhcmFsbGVsUm91dGVzLEQ9TS5nZXQoZSk7RHx8KEQ9bmV3IE1hcCxNLnNldChlLEQpKTtsZXQgRj12WzBdLEk9bnVsbD09PXc/W2VdOncuY29uY2F0KFtGLGVdKSxrPXZbMV1bZV07dm9pZCAwPT09ayYmKDAsaS51c2UpKHUudW5yZXNvbHZlZFRoZW5hYmxlKTtsZXQgTj1rWzBdLFU9KDAsbS5jcmVhdGVSb3V0ZXJDYWNoZUtleSkoTiwhMCksQj0oMCxnLnVzZVJvdXRlckJGQ2FjaGUpKGssVSksTD1bXTtkb3tsZXQgZT1CLnRyZWUsaT1CLnN0YXRlS2V5LHU9ZVswXSxnPSgwLG0uY3JlYXRlUm91dGVyQ2FjaGVLZXkpKHUpLF89RC5nZXQoZyk/P251bGwsUz1DO2lmKEFycmF5LmlzQXJyYXkodSkpe2xldCBlPXVbMF0sdD11WzFdLHI9dVsyXSxuPSgwLGIuZ2V0UGFyYW1WYWx1ZUZyb21DYWNoZUtleSkodCxyKTtudWxsIT09biYmKFM9ey4uLkMsW2VdOm59KX1sZXQgdj1mdW5jdGlvbihlKXtpZigiLyI9PT1lKXJldHVybiIvIjtpZigic3RyaW5nIj09dHlwZW9mIGUpaWYoIihzbG90KSI9PT1lKXJldHVybjtlbHNlIHJldHVybiBlKyIvIjtyZXR1cm4gZVsxXSsiLyJ9KHUpLHc9dj8/QSxNPXZvaWQgMD09PXY/dm9pZCAwOkEsRj1PLmxvYWRpbmcsaz0oMCxvLmpzeHMpKGMuVGVtcGxhdGVDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTooMCxvLmpzeHMpKFIse3NlZ21lbnRQYXRoOkksY2hpbGRyZW46WygwLG8uanN4KShsLkVycm9yQm91bmRhcnkse2Vycm9yQ29tcG9uZW50OnQsZXJyb3JTdHlsZXM6cixlcnJvclNjcmlwdHM6bixjaGlsZHJlbjooMCxvLmpzeCkoaix7bmFtZTpNLGxvYWRpbmc6RixjaGlsZHJlbjooMCxvLmpzeCkoaC5IVFRQQWNjZXNzRmFsbGJhY2tCb3VuZGFyeSx7bm90Rm91bmQ6Zixmb3JiaWRkZW46eSx1bmF1dGhvcml6ZWQ6UCxjaGlsZHJlbjooMCxvLmpzeHMpKHAuUmVkaXJlY3RCb3VuZGFyeSx7Y2hpbGRyZW46WygwLG8uanN4KShFLHt1cmw6VCx0cmVlOmUscGFyYW1zOlMsY2FjaGVOb2RlOl8sc2VnbWVudFBhdGg6SSxkZWJ1Z05hbWVDb250ZXh0OncsaXNBY3RpdmU6eCYmaT09PVV9KSxudWxsXX0pfSl9KX0pLG51bGxdfSksY2hpbGRyZW46W2EscyxkXX0saSk7TC5wdXNoKGspLEI9Qi5uZXh0fXdoaWxlKG51bGwhPT1CKXJldHVybiBMfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDk5Mjk5LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJkZWZhdWx0Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gc319KTtsZXQgbj1lLnIoNDQwNjYpLGE9ZS5yKDk4MTM0KSxvPW4uXyhlLnIoNzUyMDEpKSxpPWUucigxNjg3Mik7ZnVuY3Rpb24gcygpe2xldCBlPSgwLG8udXNlQ29udGV4dCkoaS5UZW1wbGF0ZUNvbnRleHQpO3JldHVybigwLGEuanN4KShhLkZyYWdtZW50LHtjaGlsZHJlbjplfSl9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sODk1MywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiY3JlYXRlUmVuZGVyU2VhcmNoUGFyYW1zRnJvbUNsaWVudCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGF9fSk7bGV0IG49bmV3IFdlYWtNYXA7ZnVuY3Rpb24gYShlKXtsZXQgdD1uLmdldChlKTtpZih0KXJldHVybiB0O2xldCByPVByb21pc2UucmVzb2x2ZShlKTtyZXR1cm4gbi5zZXQoZSxyKSxyfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDY4NjE0LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJjcmVhdGVSZW5kZXJTZWFyY2hQYXJhbXNGcm9tQ2xpZW50Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtsZXQgbj1lLnIoODk1MykuY3JlYXRlUmVuZGVyU2VhcmNoUGFyYW1zRnJvbUNsaWVudDsoImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw3MDcyOSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiY3JlYXRlUmVuZGVyUGFyYW1zRnJvbUNsaWVudCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGF9fSk7bGV0IG49bmV3IFdlYWtNYXA7ZnVuY3Rpb24gYShlKXtsZXQgdD1uLmdldChlKTtpZih0KXJldHVybiB0O2xldCByPVByb21pc2UucmVzb2x2ZShlKTtyZXR1cm4gbi5zZXQoZSxyKSxyfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDg3MTg5LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJjcmVhdGVSZW5kZXJQYXJhbXNGcm9tQ2xpZW50Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtsZXQgbj1lLnIoNzA3MjkpLmNyZWF0ZVJlbmRlclBhcmFtc0Zyb21DbGllbnQ7KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMTc1MTgsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIlJlZmxlY3RBZGFwdGVyIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtjbGFzcyBue3N0YXRpYyBnZXQoZSx0LHIpe2xldCBuPVJlZmxlY3QuZ2V0KGUsdCxyKTtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygbj9uLmJpbmQoZSk6bn1zdGF0aWMgc2V0KGUsdCxyLG4pe3JldHVybiBSZWZsZWN0LnNldChlLHQscixuKX1zdGF0aWMgaGFzKGUsdCl7cmV0dXJuIFJlZmxlY3QuaGFzKGUsdCl9c3RhdGljIGRlbGV0ZVByb3BlcnR5KGUsdCl7cmV0dXJuIFJlZmxlY3QuZGVsZXRlUHJvcGVydHkoZSx0KX19fSw0NTAxNCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiY3JlYXRlRGVkdXBlZEJ5Q2FsbHNpdGVTZXJ2ZXJFcnJvckxvZ2dlckRldiIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGN9fSk7bGV0IG49ZnVuY3Rpb24oZSx0KXtpZihlJiZlLl9fZXNNb2R1bGUpcmV0dXJuIGU7aWYobnVsbD09PWV8fCJvYmplY3QiIT10eXBlb2YgZSYmImZ1bmN0aW9uIiE9dHlwZW9mIGUpcmV0dXJue2RlZmF1bHQ6ZX07dmFyIHI9YSh2b2lkIDApO2lmKHImJnIuaGFzKGUpKXJldHVybiByLmdldChlKTt2YXIgbj17X19wcm90b19fOm51bGx9LG89T2JqZWN0LmRlZmluZVByb3BlcnR5JiZPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yO2Zvcih2YXIgaSBpbiBlKWlmKCJkZWZhdWx0IiE9PWkmJk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLGkpKXt2YXIgcz1vP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSxpKTpudWxsO3MmJihzLmdldHx8cy5zZXQpP09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLGkscyk6bltpXT1lW2ldfXJldHVybiBuLmRlZmF1bHQ9ZSxyJiZyLnNldChlLG4pLG59KGUucig3NTIwMSkpO2Z1bmN0aW9uIGEoZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIFdlYWtNYXApcmV0dXJuIG51bGw7dmFyIHQ9bmV3IFdlYWtNYXAscj1uZXcgV2Vha01hcDtyZXR1cm4oYT1mdW5jdGlvbihlKXtyZXR1cm4gZT9yOnR9KShlKX1sZXQgbz17Y3VycmVudDpudWxsfSxpPSJmdW5jdGlvbiI9PXR5cGVvZiBuLmNhY2hlP24uY2FjaGU6ZT0+ZSxzPWNvbnNvbGUud2FybjtmdW5jdGlvbiBjKGUpe3JldHVybiBmdW5jdGlvbiguLi50KXtzKGUoLi4udCkpfX1pKGU9Pnt0cnl7cyhvLmN1cnJlbnQpfWZpbmFsbHl7by5jdXJyZW50PW51bGx9fSl9LDc1ODI3LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtkZXNjcmliZUhhc0NoZWNraW5nU3RyaW5nUHJvcGVydHk6ZnVuY3Rpb24oKXtyZXR1cm4gc30sZGVzY3JpYmVTdHJpbmdQcm9wZXJ0eUFjY2VzczpmdW5jdGlvbigpe3JldHVybiBpfSx3ZWxsS25vd25Qcm9wZXJ0aWVzOmZ1bmN0aW9uKCl7cmV0dXJuIGN9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IG89L15bQS1aYS16XyRdW0EtWmEtejAtOV8kXSokLztmdW5jdGlvbiBpKGUsdCl7cmV0dXJuIG8udGVzdCh0KT9gXGAke2V9LiR7dH1cYGA6YFxgJHtlfVske0pTT04uc3RyaW5naWZ5KHQpfV1cYGB9ZnVuY3Rpb24gcyhlLHQpe2xldCByPUpTT04uc3RyaW5naWZ5KHQpO3JldHVybmBcYFJlZmxlY3QuaGFzKCR7ZX0sICR7cn0pXGAsIFxgJHtyfSBpbiAke2V9XGAsIG9yIHNpbWlsYXJgfWxldCBjPW5ldyBTZXQoWyJoYXNPd25Qcm9wZXJ0eSIsImlzUHJvdG90eXBlT2YiLCJwcm9wZXJ0eUlzRW51bWVyYWJsZSIsInRvU3RyaW5nIiwidmFsdWVPZiIsInRvTG9jYWxlU3RyaW5nIiwidGhlbiIsImNhdGNoIiwiZmluYWxseSIsInN0YXR1cyIsImRpc3BsYXlOYW1lIiwiX2RlYnVnSW5mbyIsInRvSlNPTiIsIiQkdHlwZW9mIiwiX19lc01vZHVsZSJdKX0sNTU5NDksKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImFmdGVyVGFza0FzeW5jU3RvcmFnZUluc3RhbmNlIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtsZXQgbj0oMCxlLnIoNDkyMTEpLmNyZWF0ZUFzeW5jTG9jYWxTdG9yYWdlKSgpfSwxMzE3NywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiYWZ0ZXJUYXNrQXN5bmNTdG9yYWdlIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbi5hZnRlclRhc2tBc3luY1N0b3JhZ2VJbnN0YW5jZX19KTtsZXQgbj1lLnIoNTU5NDkpfSwzNzE2NSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17aXNSZXF1ZXN0QVBJQ2FsbGFibGVJbnNpZGVBZnRlcjpmdW5jdGlvbigpe3JldHVybiB1fSx0aHJvd0ZvclNlYXJjaFBhcmFtc0FjY2Vzc0luVXNlQ2FjaGU6ZnVuY3Rpb24oKXtyZXR1cm4gY30sdGhyb3dXaXRoU3RhdGljR2VuZXJhdGlvbkJhaWxvdXRFcnJvcldpdGhEeW5hbWljRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gc319O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbz1lLnIoMTY0MzIpLGk9ZS5yKDEzMTc3KTtmdW5jdGlvbiBzKGUsdCl7dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyBvLlN0YXRpY0dlbkJhaWxvdXRFcnJvcihgUm91dGUgJHtlfSB3aXRoIFxgZHluYW1pYyA9ICJlcnJvciJcYCBjb3VsZG4ndCBiZSByZW5kZXJlZCBzdGF0aWNhbGx5IGJlY2F1c2UgaXQgdXNlZCAke3R9LiBTZWUgbW9yZSBpbmZvIGhlcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL2FwcC9idWlsZGluZy15b3VyLWFwcGxpY2F0aW9uL3JlbmRlcmluZy9zdGF0aWMtYW5kLWR5bmFtaWMjZHluYW1pYy1yZW5kZXJpbmdgKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTU0MyIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KX1mdW5jdGlvbiBjKGUsdCl7bGV0IHI9T2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGBSb3V0ZSAke2Uucm91dGV9IHVzZWQgXGBzZWFyY2hQYXJhbXNcYCBpbnNpZGUgInVzZSBjYWNoZSIuIEFjY2Vzc2luZyBkeW5hbWljIHJlcXVlc3QgZGF0YSBpbnNpZGUgYSBjYWNoZSBzY29wZSBpcyBub3Qgc3VwcG9ydGVkLiBJZiB5b3UgbmVlZCBzb21lIHNlYXJjaCBwYXJhbXMgaW5zaWRlIGEgY2FjaGVkIGZ1bmN0aW9uIGF3YWl0IFxgc2VhcmNoUGFyYW1zXGAgb3V0c2lkZSBvZiB0aGUgY2FjaGVkIGZ1bmN0aW9uIGFuZCBwYXNzIG9ubHkgdGhlIHJlcXVpcmVkIHNlYXJjaCBwYXJhbXMgYXMgYXJndW1lbnRzIHRvIHRoZSBjYWNoZWQgZnVuY3Rpb24uIFNlZSBtb3JlIGluZm8gaGVyZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvbmV4dC1yZXF1ZXN0LWluLXVzZS1jYWNoZWApLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFODQyIixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO3Rocm93IEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHIsdCksZS5pbnZhbGlkRHluYW1pY1VzYWdlRXJyb3I/Pz1yLHJ9ZnVuY3Rpb24gdSgpe2xldCBlPWkuYWZ0ZXJUYXNrQXN5bmNTdG9yYWdlLmdldFN0b3JlKCk7cmV0dXJuKG51bGw9PWU/dm9pZCAwOmUucm9vdFRhc2tTcGF3blBoYXNlKT09PSJhY3Rpb24ifX0sNTU1MjUsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG4sYT17UmVuZGVyU3RhZ2U6ZnVuY3Rpb24oKXtyZXR1cm4gY30sU3RhZ2VkUmVuZGVyaW5nQ29udHJvbGxlcjpmdW5jdGlvbigpe3JldHVybiB1fX07Zm9yKHZhciBvIGluIGEpT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsbyx7ZW51bWVyYWJsZTohMCxnZXQ6YVtvXX0pO2xldCBpPWUucig0MTA2Mikscz1lLnIoNDA0NjEpO3ZhciBjPSgobj17fSlbbi5CZWZvcmU9MV09IkJlZm9yZSIsbltuLlN0YXRpYz0yXT0iU3RhdGljIixuW24uUnVudGltZT0zXT0iUnVudGltZSIsbltuLkR5bmFtaWM9NF09IkR5bmFtaWMiLG5bbi5BYmFuZG9uZWQ9NV09IkFiYW5kb25lZCIsbik7Y2xhc3MgdXtjb25zdHJ1Y3RvcihlPW51bGwsdCl7dGhpcy5hYm9ydFNpZ25hbD1lLHRoaXMuaGFzUnVudGltZVByZWZldGNoPXQsdGhpcy5jdXJyZW50U3RhZ2U9MSx0aGlzLnN0YXRpY0ludGVycnVwdFJlYXNvbj1udWxsLHRoaXMucnVudGltZUludGVycnVwdFJlYXNvbj1udWxsLHRoaXMuc3RhdGljU3RhZ2VFbmRUaW1lPTEvMCx0aGlzLnJ1bnRpbWVTdGFnZUVuZFRpbWU9MS8wLHRoaXMucnVudGltZVN0YWdlTGlzdGVuZXJzPVtdLHRoaXMuZHluYW1pY1N0YWdlTGlzdGVuZXJzPVtdLHRoaXMucnVudGltZVN0YWdlUHJvbWlzZT0oMCxzLmNyZWF0ZVByb21pc2VXaXRoUmVzb2x2ZXJzKSgpLHRoaXMuZHluYW1pY1N0YWdlUHJvbWlzZT0oMCxzLmNyZWF0ZVByb21pc2VXaXRoUmVzb2x2ZXJzKSgpLHRoaXMubWF5QWJhbmRvbj0hMSxlJiYoZS5hZGRFdmVudExpc3RlbmVyKCJhYm9ydCIsKCk9PntsZXR7cmVhc29uOnR9PWU7dGhpcy5jdXJyZW50U3RhZ2U8MyYmKHRoaXMucnVudGltZVN0YWdlUHJvbWlzZS5wcm9taXNlLmNhdGNoKGwpLHRoaXMucnVudGltZVN0YWdlUHJvbWlzZS5yZWplY3QodCkpLCh0aGlzLmN1cnJlbnRTdGFnZTw0fHw1PT09dGhpcy5jdXJyZW50U3RhZ2UpJiYodGhpcy5keW5hbWljU3RhZ2VQcm9taXNlLnByb21pc2UuY2F0Y2gobCksdGhpcy5keW5hbWljU3RhZ2VQcm9taXNlLnJlamVjdCh0KSl9LHtvbmNlOiEwfSksdGhpcy5tYXlBYmFuZG9uPSEwKX1vblN0YWdlKGUsdCl7aWYodGhpcy5jdXJyZW50U3RhZ2U+PWUpdCgpO2Vsc2UgaWYoMz09PWUpdGhpcy5ydW50aW1lU3RhZ2VMaXN0ZW5lcnMucHVzaCh0KTtlbHNlIGlmKDQ9PT1lKXRoaXMuZHluYW1pY1N0YWdlTGlzdGVuZXJzLnB1c2godCk7ZWxzZSB0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IGkuSW52YXJpYW50RXJyb3IoYEludmFsaWQgcmVuZGVyIHN0YWdlOiAke2V9YCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU4ODEiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9Y2FuU3luY0ludGVycnVwdCgpe2lmKDE9PT10aGlzLmN1cnJlbnRTdGFnZSlyZXR1cm4hMTtsZXQgZT10aGlzLmhhc1J1bnRpbWVQcmVmZXRjaD80OjM7cmV0dXJuIHRoaXMuY3VycmVudFN0YWdlPGV9c3luY0ludGVycnVwdEN1cnJlbnRTdGFnZVdpdGhSZWFzb24oZSl7aWYoMSE9PXRoaXMuY3VycmVudFN0YWdlKXtpZih0aGlzLm1heUFiYW5kb24pcmV0dXJuIHRoaXMuYWJhbmRvblJlbmRlckltcGwoKTtzd2l0Y2godGhpcy5jdXJyZW50U3RhZ2Upe2Nhc2UgMjp0aGlzLnN0YXRpY0ludGVycnVwdFJlYXNvbj1lLHRoaXMuYWR2YW5jZVN0YWdlKDQpO3JldHVybjtjYXNlIDM6dGhpcy5oYXNSdW50aW1lUHJlZmV0Y2gmJih0aGlzLnJ1bnRpbWVJbnRlcnJ1cHRSZWFzb249ZSx0aGlzLmFkdmFuY2VTdGFnZSg0KSk7cmV0dXJufX19Z2V0U3RhdGljSW50ZXJydXB0UmVhc29uKCl7cmV0dXJuIHRoaXMuc3RhdGljSW50ZXJydXB0UmVhc29ufWdldFJ1bnRpbWVJbnRlcnJ1cHRSZWFzb24oKXtyZXR1cm4gdGhpcy5ydW50aW1lSW50ZXJydXB0UmVhc29ufWdldFN0YXRpY1N0YWdlRW5kVGltZSgpe3JldHVybiB0aGlzLnN0YXRpY1N0YWdlRW5kVGltZX1nZXRSdW50aW1lU3RhZ2VFbmRUaW1lKCl7cmV0dXJuIHRoaXMucnVudGltZVN0YWdlRW5kVGltZX1hYmFuZG9uUmVuZGVyKCl7aWYoIXRoaXMubWF5QWJhbmRvbil0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IGkuSW52YXJpYW50RXJyb3IoImBhYmFuZG9uUmVuZGVyYCBjYWxsZWQgb24gYSBzdGFnZSBjb250cm9sbGVyIHRoYXQgY2Fubm90IGJlIGFiYW5kb25lZC4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTkzOCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTt0aGlzLmFiYW5kb25SZW5kZXJJbXBsKCl9YWJhbmRvblJlbmRlckltcGwoKXtsZXR7Y3VycmVudFN0YWdlOmV9PXRoaXM7c3dpdGNoKGUpe2Nhc2UgMjp0aGlzLmN1cnJlbnRTdGFnZT01LHRoaXMucmVzb2x2ZVJ1bnRpbWVTdGFnZSgpO3JldHVybjtjYXNlIDM6dGhpcy5jdXJyZW50U3RhZ2U9NTtyZXR1cm59fWFkdmFuY2VTdGFnZShlKXtpZihlPD10aGlzLmN1cnJlbnRTdGFnZSlyZXR1cm47bGV0IHQ9dGhpcy5jdXJyZW50U3RhZ2U7aWYodGhpcy5jdXJyZW50U3RhZ2U9ZSx0PDMmJmU+PTMmJih0aGlzLnN0YXRpY1N0YWdlRW5kVGltZT1wZXJmb3JtYW5jZS5ub3coKStwZXJmb3JtYW5jZS50aW1lT3JpZ2luLHRoaXMucmVzb2x2ZVJ1bnRpbWVTdGFnZSgpKSx0PDQmJmU+PTQpe3RoaXMucnVudGltZVN0YWdlRW5kVGltZT1wZXJmb3JtYW5jZS5ub3coKStwZXJmb3JtYW5jZS50aW1lT3JpZ2luLHRoaXMucmVzb2x2ZUR5bmFtaWNTdGFnZSgpO3JldHVybn19cmVzb2x2ZVJ1bnRpbWVTdGFnZSgpe2xldCBlPXRoaXMucnVudGltZVN0YWdlTGlzdGVuZXJzO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKWVbdF0oKTtlLmxlbmd0aD0wLHRoaXMucnVudGltZVN0YWdlUHJvbWlzZS5yZXNvbHZlKCl9cmVzb2x2ZUR5bmFtaWNTdGFnZSgpe2xldCBlPXRoaXMuZHluYW1pY1N0YWdlTGlzdGVuZXJzO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKWVbdF0oKTtlLmxlbmd0aD0wLHRoaXMuZHluYW1pY1N0YWdlUHJvbWlzZS5yZXNvbHZlKCl9Z2V0U3RhZ2VQcm9taXNlKGUpe3N3aXRjaChlKXtjYXNlIDM6cmV0dXJuIHRoaXMucnVudGltZVN0YWdlUHJvbWlzZS5wcm9taXNlO2Nhc2UgNDpyZXR1cm4gdGhpcy5keW5hbWljU3RhZ2VQcm9taXNlLnByb21pc2U7ZGVmYXVsdDp0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IGkuSW52YXJpYW50RXJyb3IoYEludmFsaWQgcmVuZGVyIHN0YWdlOiAke2V9YCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU4ODEiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9fXdhaXRGb3JTdGFnZShlKXtyZXR1cm4gdGhpcy5nZXRTdGFnZVByb21pc2UoZSl9ZGVsYXlVbnRpbFN0YWdlKGUsdCxyKXt2YXIgbixhLG87bGV0IGkscz0obj10aGlzLmdldFN0YWdlUHJvbWlzZShlKSxhPXQsbz1yLGk9bmV3IFByb21pc2UoKGUsdCk9PntuLnRoZW4oZS5iaW5kKG51bGwsbyksdCl9KSx2b2lkIDAhPT1hJiYoaS5kaXNwbGF5TmFtZT1hKSxpKTtyZXR1cm4gdGhpcy5hYm9ydFNpZ25hbCYmcy5jYXRjaChsKSxzfX1mdW5jdGlvbiBsKCl7fX0sODY3NzAsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e2NyZWF0ZVByZXJlbmRlclNlYXJjaFBhcmFtc0ZvckNsaWVudFBhZ2U6ZnVuY3Rpb24oKXtyZXR1cm4gZ30sY3JlYXRlU2VhcmNoUGFyYW1zRnJvbUNsaWVudDpmdW5jdGlvbigpe3JldHVybiBwfSxjcmVhdGVTZXJ2ZXJTZWFyY2hQYXJhbXNGb3JNZXRhZGF0YTpmdW5jdGlvbigpe3JldHVybiBofSxjcmVhdGVTZXJ2ZXJTZWFyY2hQYXJhbXNGb3JTZXJ2ZXJQYWdlOmZ1bmN0aW9uKCl7cmV0dXJuIG19LG1ha2VFcnJvcmluZ1NlYXJjaFBhcmFtc0ZvclVzZUNhY2hlOmZ1bmN0aW9uKCl7cmV0dXJuIFN9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IG89ZS5yKDE3NTE4KSxpPWUucig2Nzc4MSkscz1lLnIoMTI5NjUpLGM9ZS5yKDQxMDYyKSx1PWUucigxNTUwOCksbD1lLnIoNDUwMTQpLGQ9ZS5yKDc1ODI3KSxmPWUucigzNzE2NSk7ZnVuY3Rpb24gcChlLHQpe2xldCByPXMud29ya1VuaXRBc3luY1N0b3JhZ2UuZ2V0U3RvcmUoKTtpZihyKXN3aXRjaChyLnR5cGUpe2Nhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpyZXR1cm4geSh0LHIpO2Nhc2UicHJlcmVuZGVyLXJ1bnRpbWUiOnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgYy5JbnZhcmlhbnRFcnJvcigiY3JlYXRlU2VhcmNoUGFyYW1zRnJvbUNsaWVudCBzaG91bGQgbm90IGJlIGNhbGxlZCBpbiBhIHJ1bnRpbWUgcHJlcmVuZGVyLiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNzY5IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO2Nhc2UiY2FjaGUiOmNhc2UicHJpdmF0ZS1jYWNoZSI6Y2FzZSJ1bnN0YWJsZS1jYWNoZSI6dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyBjLkludmFyaWFudEVycm9yKCJjcmVhdGVTZWFyY2hQYXJhbXNGcm9tQ2xpZW50IHNob3VsZCBub3QgYmUgY2FsbGVkIGluIGNhY2hlIGNvbnRleHRzLiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNzM5IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO2Nhc2UicmVxdWVzdCI6cmV0dXJuIGIoZSx0LHIpfSgwLHMudGhyb3dJbnZhcmlhbnRGb3JNaXNzaW5nU3RvcmUpKCl9ZS5yKDU1NTI1KTtsZXQgaD1tO2Z1bmN0aW9uIG0oZSx0KXtsZXQgcj1zLndvcmtVbml0QXN5bmNTdG9yYWdlLmdldFN0b3JlKCk7aWYocilzd2l0Y2goci50eXBlKXtjYXNlInByZXJlbmRlciI6Y2FzZSJwcmVyZW5kZXItY2xpZW50IjpjYXNlInByZXJlbmRlci1wcHIiOmNhc2UicHJlcmVuZGVyLWxlZ2FjeSI6cmV0dXJuIHkodCxyKTtjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgYy5JbnZhcmlhbnRFcnJvcigiY3JlYXRlU2VydmVyU2VhcmNoUGFyYW1zRm9yU2VydmVyUGFnZSBzaG91bGQgbm90IGJlIGNhbGxlZCBpbiBjYWNoZSBjb250ZXh0cy4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTc0NyIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtjYXNlInByZXJlbmRlci1ydW50aW1lIjp2YXIgbixhO3JldHVybiBuPWUsYT1yLCgwLGkuZGVsYXlVbnRpbFJ1bnRpbWVTdGFnZSkoYSx2KG4pKTtjYXNlInJlcXVlc3QiOnJldHVybiBiKGUsdCxyKX0oMCxzLnRocm93SW52YXJpYW50Rm9yTWlzc2luZ1N0b3JlKSgpfWZ1bmN0aW9uIGcoZSl7aWYoZS5mb3JjZVN0YXRpYylyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHt9KTtsZXQgdD1zLndvcmtVbml0QXN5bmNTdG9yYWdlLmdldFN0b3JlKCk7aWYodClzd2l0Y2godC50eXBlKXtjYXNlInByZXJlbmRlciI6Y2FzZSJwcmVyZW5kZXItY2xpZW50IjpyZXR1cm4oMCx1Lm1ha2VIYW5naW5nUHJvbWlzZSkodC5yZW5kZXJTaWduYWwsZS5yb3V0ZSwiYHNlYXJjaFBhcmFtc2AiKTtjYXNlInByZXJlbmRlci1ydW50aW1lIjp0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IGMuSW52YXJpYW50RXJyb3IoImNyZWF0ZVByZXJlbmRlclNlYXJjaFBhcmFtc0ZvckNsaWVudFBhZ2Ugc2hvdWxkIG5vdCBiZSBjYWxsZWQgaW4gYSBydW50aW1lIHByZXJlbmRlci4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTc2OCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgYy5JbnZhcmlhbnRFcnJvcigiY3JlYXRlUHJlcmVuZGVyU2VhcmNoUGFyYW1zRm9yQ2xpZW50UGFnZSBzaG91bGQgbm90IGJlIGNhbGxlZCBpbiBjYWNoZSBjb250ZXh0cy4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTc0NiIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtjYXNlInByZXJlbmRlci1wcHIiOmNhc2UicHJlcmVuZGVyLWxlZ2FjeSI6Y2FzZSJyZXF1ZXN0IjpyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHt9KX0oMCxzLnRocm93SW52YXJpYW50Rm9yTWlzc2luZ1N0b3JlKSgpfWZ1bmN0aW9uIHkoZSx0KXtpZihlLmZvcmNlU3RhdGljKXJldHVybiBQcm9taXNlLnJlc29sdmUoe30pO3N3aXRjaCh0LnR5cGUpe2Nhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1jbGllbnQiOnZhciByPWUsbj10O2xldCBhPVAuZ2V0KG4pO2lmKGEpcmV0dXJuIGE7bGV0IHM9KDAsdS5tYWtlSGFuZ2luZ1Byb21pc2UpKG4ucmVuZGVyU2lnbmFsLHIucm91dGUsImBzZWFyY2hQYXJhbXNgIiksYz1uZXcgUHJveHkocyx7Z2V0KGUsdCxyKXtpZihPYmplY3QuaGFzT3duKHMsdCkpcmV0dXJuIG8uUmVmbGVjdEFkYXB0ZXIuZ2V0KGUsdCxyKTtzd2l0Y2godCl7Y2FzZSJ0aGVuIjpyZXR1cm4oMCxpLmFubm90YXRlRHluYW1pY0FjY2VzcykoImBhd2FpdCBzZWFyY2hQYXJhbXNgLCBgc2VhcmNoUGFyYW1zLnRoZW5gLCBvciBzaW1pbGFyIixuKSxvLlJlZmxlY3RBZGFwdGVyLmdldChlLHQscik7Y2FzZSJzdGF0dXMiOnJldHVybigwLGkuYW5ub3RhdGVEeW5hbWljQWNjZXNzKSgiYHVzZShzZWFyY2hQYXJhbXMpYCwgYHNlYXJjaFBhcmFtcy5zdGF0dXNgLCBvciBzaW1pbGFyIixuKSxvLlJlZmxlY3RBZGFwdGVyLmdldChlLHQscik7ZGVmYXVsdDpyZXR1cm4gby5SZWZsZWN0QWRhcHRlci5nZXQoZSx0LHIpfX19KTtyZXR1cm4gUC5zZXQobixjKSxjO2Nhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5Ijp2YXIgbD1lLGQ9dDtsZXQgcD1QLmdldChsKTtpZihwKXJldHVybiBwO2xldCBoPVByb21pc2UucmVzb2x2ZSh7fSksbT1uZXcgUHJveHkoaCx7Z2V0KGUsdCxyKXtpZihPYmplY3QuaGFzT3duKGgsdCkpcmV0dXJuIG8uUmVmbGVjdEFkYXB0ZXIuZ2V0KGUsdCxyKTtpZigic3RyaW5nIj09dHlwZW9mIHQmJiJ0aGVuIj09PXQpe2xldCBlPSJgYXdhaXQgc2VhcmNoUGFyYW1zYCwgYHNlYXJjaFBhcmFtcy50aGVuYCwgb3Igc2ltaWxhciI7bC5keW5hbWljU2hvdWxkRXJyb3I/KDAsZi50aHJvd1dpdGhTdGF0aWNHZW5lcmF0aW9uQmFpbG91dEVycm9yV2l0aER5bmFtaWNFcnJvcikobC5yb3V0ZSxlKToicHJlcmVuZGVyLXBwciI9PT1kLnR5cGU/KDAsaS5wb3N0cG9uZVdpdGhUcmFja2luZykobC5yb3V0ZSxlLGQuZHluYW1pY1RyYWNraW5nKTooMCxpLnRocm93VG9JbnRlcnJ1cHRTdGF0aWNHZW5lcmF0aW9uKShlLGwsZCl9cmV0dXJuIG8uUmVmbGVjdEFkYXB0ZXIuZ2V0KGUsdCxyKX19KTtyZXR1cm4gUC5zZXQobCxtKSxtO2RlZmF1bHQ6cmV0dXJuIHR9fWZ1bmN0aW9uIGIoZSx0LHIpe3JldHVybiB0LmZvcmNlU3RhdGljP1Byb21pc2UucmVzb2x2ZSh7fSk6dihlKX1sZXQgUD1uZXcgV2Vha01hcCxfPW5ldyBXZWFrTWFwO2Z1bmN0aW9uIFMoZSl7bGV0IHQ9Xy5nZXQoZSk7aWYodClyZXR1cm4gdDtsZXQgcj1Qcm9taXNlLnJlc29sdmUoe30pLG49bmV3IFByb3h5KHIse2dldDpmdW5jdGlvbiB0KG4sYSxpKXtyZXR1cm4gT2JqZWN0Lmhhc093bihyLGEpfHwic3RyaW5nIiE9dHlwZW9mIGF8fCJ0aGVuIiE9PWEmJmQud2VsbEtub3duUHJvcGVydGllcy5oYXMoYSl8fCgwLGYudGhyb3dGb3JTZWFyY2hQYXJhbXNBY2Nlc3NJblVzZUNhY2hlKShlLHQpLG8uUmVmbGVjdEFkYXB0ZXIuZ2V0KG4sYSxpKX19KTtyZXR1cm4gXy5zZXQoZSxuKSxufWZ1bmN0aW9uIHYoZSl7bGV0IHQ9UC5nZXQoZSk7aWYodClyZXR1cm4gdDtsZXQgcj1Qcm9taXNlLnJlc29sdmUoZSk7cmV0dXJuIFAuc2V0KGUscikscn0oMCxsLmNyZWF0ZURlZHVwZWRCeUNhbGxzaXRlU2VydmVyRXJyb3JMb2dnZXJEZXYpKGZ1bmN0aW9uKGUsdCl7bGV0IHI9ZT9gUm91dGUgIiR7ZX0iIGA6IlRoaXMgcm91dGUgIjtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGAke3J9dXNlZCAke3R9LiBcYHNlYXJjaFBhcmFtc1xgIGlzIGEgUHJvbWlzZSBhbmQgbXVzdCBiZSB1bndyYXBwZWQgd2l0aCBcYGF3YWl0XGAgb3IgXGBSZWFjdC51c2UoKVxgIGJlZm9yZSBhY2Nlc3NpbmcgaXRzIHByb3BlcnRpZXMuIExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL3N5bmMtZHluYW1pYy1hcGlzYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU4NDgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9KX0sNDQ2MzEsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImR5bmFtaWNBY2Nlc3NBc3luY1N0b3JhZ2VJbnN0YW5jZSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSk7bGV0IG49KDAsZS5yKDQ5MjExKS5jcmVhdGVBc3luY0xvY2FsU3RvcmFnZSkoKX0sNDc1OTUsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImR5bmFtaWNBY2Nlc3NBc3luY1N0b3JhZ2UiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBuLmR5bmFtaWNBY2Nlc3NBc3luY1N0b3JhZ2VJbnN0YW5jZX19KTtsZXQgbj1lLnIoNDQ2MzEpfSwzNjA3MCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17Y3JlYXRlUGFyYW1zRnJvbUNsaWVudDpmdW5jdGlvbigpe3JldHVybiBofSxjcmVhdGVQcmVyZW5kZXJQYXJhbXNGb3JDbGllbnRTZWdtZW50OmZ1bmN0aW9uKCl7cmV0dXJuIGJ9LGNyZWF0ZVNlcnZlclBhcmFtc0Zvck1ldGFkYXRhOmZ1bmN0aW9uKCl7cmV0dXJuIG19LGNyZWF0ZVNlcnZlclBhcmFtc0ZvclJvdXRlOmZ1bmN0aW9uKCl7cmV0dXJuIGd9LGNyZWF0ZVNlcnZlclBhcmFtc0ZvclNlcnZlclNlZ21lbnQ6ZnVuY3Rpb24oKXtyZXR1cm4geX19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbz1lLnIoODk3OTEpLGk9ZS5yKDE3NTE4KSxzPWUucig2Nzc4MSksYz1lLnIoMTI5NjUpLHU9ZS5yKDQxMDYyKSxsPWUucig3NTgyNyksZD1lLnIoMTU1MDgpLGY9ZS5yKDQ1MDE0KSxwPWUucig0NzU5NSk7ZnVuY3Rpb24gaChlLHQpe2xldCByPWMud29ya1VuaXRBc3luY1N0b3JhZ2UuZ2V0U3RvcmUoKTtpZihyKXN3aXRjaChyLnR5cGUpe2Nhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpyZXR1cm4gUChlLHQscik7Y2FzZSJjYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpjYXNlInVuc3RhYmxlLWNhY2hlIjp0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHUuSW52YXJpYW50RXJyb3IoImNyZWF0ZVBhcmFtc0Zyb21DbGllbnQgc2hvdWxkIG5vdCBiZSBjYWxsZWQgaW4gY2FjaGUgY29udGV4dHMuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3MzYiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyB1LkludmFyaWFudEVycm9yKCJjcmVhdGVQYXJhbXNGcm9tQ2xpZW50IHNob3VsZCBub3QgYmUgY2FsbGVkIGluIGEgcnVudGltZSBwcmVyZW5kZXIuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3NzAiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2FzZSJyZXF1ZXN0IjpyZXR1cm4gTyhlKX0oMCxjLnRocm93SW52YXJpYW50Rm9yTWlzc2luZ1N0b3JlKSgpfWUucig1NTUyNSk7bGV0IG09eTtmdW5jdGlvbiBnKGUsdCl7bGV0IHI9Yy53b3JrVW5pdEFzeW5jU3RvcmFnZS5nZXRTdG9yZSgpO2lmKHIpc3dpdGNoKHIudHlwZSl7Y2FzZSJwcmVyZW5kZXIiOmNhc2UicHJlcmVuZGVyLWNsaWVudCI6Y2FzZSJwcmVyZW5kZXItcHByIjpjYXNlInByZXJlbmRlci1sZWdhY3kiOnJldHVybiBQKGUsdCxyKTtjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgdS5JbnZhcmlhbnRFcnJvcigiY3JlYXRlU2VydmVyUGFyYW1zRm9yUm91dGUgc2hvdWxkIG5vdCBiZSBjYWxsZWQgaW4gY2FjaGUgY29udGV4dHMuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3MzgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6cmV0dXJuIF8oZSxyKTtjYXNlInJlcXVlc3QiOnJldHVybiBPKGUpfSgwLGMudGhyb3dJbnZhcmlhbnRGb3JNaXNzaW5nU3RvcmUpKCl9ZnVuY3Rpb24geShlLHQpe2xldCByPWMud29ya1VuaXRBc3luY1N0b3JhZ2UuZ2V0U3RvcmUoKTtpZihyKXN3aXRjaChyLnR5cGUpe2Nhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpyZXR1cm4gUChlLHQscik7Y2FzZSJjYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpjYXNlInVuc3RhYmxlLWNhY2hlIjp0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHUuSW52YXJpYW50RXJyb3IoImNyZWF0ZVNlcnZlclBhcmFtc0ZvclNlcnZlclNlZ21lbnQgc2hvdWxkIG5vdCBiZSBjYWxsZWQgaW4gY2FjaGUgY29udGV4dHMuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3NDMiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6cmV0dXJuIF8oZSxyKTtjYXNlInJlcXVlc3QiOnJldHVybiBPKGUpfSgwLGMudGhyb3dJbnZhcmlhbnRGb3JNaXNzaW5nU3RvcmUpKCl9ZnVuY3Rpb24gYihlKXtsZXQgdD1vLndvcmtBc3luY1N0b3JhZ2UuZ2V0U3RvcmUoKTtpZighdCl0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHUuSW52YXJpYW50RXJyb3IoIk1pc3Npbmcgd29ya1N0b3JlIGluIGNyZWF0ZVByZXJlbmRlclBhcmFtc0ZvckNsaWVudFNlZ21lbnQiKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTc3MyIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtsZXQgcj1jLndvcmtVbml0QXN5bmNTdG9yYWdlLmdldFN0b3JlKCk7aWYocilzd2l0Y2goci50eXBlKXtjYXNlInByZXJlbmRlciI6Y2FzZSJwcmVyZW5kZXItY2xpZW50IjpsZXQgbj1yLmZhbGxiYWNrUm91dGVQYXJhbXM7aWYobil7Zm9yKGxldCBhIGluIGUpaWYobi5oYXMoYSkpcmV0dXJuKDAsZC5tYWtlSGFuZ2luZ1Byb21pc2UpKHIucmVuZGVyU2lnbmFsLHQucm91dGUsImBwYXJhbXNgIil9YnJlYWs7Y2FzZSJjYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpjYXNlInVuc3RhYmxlLWNhY2hlIjp0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHUuSW52YXJpYW50RXJyb3IoImNyZWF0ZVByZXJlbmRlclBhcmFtc0ZvckNsaWVudFNlZ21lbnQgc2hvdWxkIG5vdCBiZSBjYWxsZWQgaW4gY2FjaGUgY29udGV4dHMuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3MzQiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9cmV0dXJuIFByb21pc2UucmVzb2x2ZShlKX1mdW5jdGlvbiBQKGUsdCxyKXtzd2l0Y2goci50eXBlKXtjYXNlInByZXJlbmRlciI6Y2FzZSJwcmVyZW5kZXItY2xpZW50Ijp7bGV0IG49ci5mYWxsYmFja1JvdXRlUGFyYW1zO2lmKG4pe2ZvcihsZXQgYSBpbiBlKWlmKG4uaGFzKGEpKXJldHVybiBmdW5jdGlvbihlLHQscil7bGV0IG49Uy5nZXQoZSk7aWYobilyZXR1cm4gbjtsZXQgYT1uZXcgUHJveHkoKDAsZC5tYWtlSGFuZ2luZ1Byb21pc2UpKHIucmVuZGVyU2lnbmFsLHQucm91dGUsImBwYXJhbXNgIiksdik7cmV0dXJuIFMuc2V0KGUsYSksYX0oZSx0LHIpfWJyZWFrfWNhc2UicHJlcmVuZGVyLXBwciI6e2xldCBuPXIuZmFsbGJhY2tSb3V0ZVBhcmFtcztpZihuKXtmb3IobGV0IGEgaW4gZSlpZihuLmhhcyhhKSlyZXR1cm4gZnVuY3Rpb24oZSx0LHIsbil7bGV0IGE9Uy5nZXQoZSk7aWYoYSlyZXR1cm4gYTtsZXQgbz17Li4uZX0saT1Qcm9taXNlLnJlc29sdmUobyk7cmV0dXJuIFMuc2V0KGUsaSksT2JqZWN0LmtleXMoZSkuZm9yRWFjaChlPT57bC53ZWxsS25vd25Qcm9wZXJ0aWVzLmhhcyhlKXx8dC5oYXMoZSkmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLGUse2dldCgpe2xldCB0PSgwLGwuZGVzY3JpYmVTdHJpbmdQcm9wZXJ0eUFjY2VzcykoInBhcmFtcyIsZSk7InByZXJlbmRlci1wcHIiPT09bi50eXBlPygwLHMucG9zdHBvbmVXaXRoVHJhY2tpbmcpKHIucm91dGUsdCxuLmR5bmFtaWNUcmFja2luZyk6KDAscy50aHJvd1RvSW50ZXJydXB0U3RhdGljR2VuZXJhdGlvbikodCxyLG4pfSxlbnVtZXJhYmxlOiEwfSl9KSxpfShlLG4sdCxyKX19fXJldHVybiBPKGUpfWZ1bmN0aW9uIF8oZSx0KXtyZXR1cm4oMCxzLmRlbGF5VW50aWxSdW50aW1lU3RhZ2UpKHQsTyhlKSl9bGV0IFM9bmV3IFdlYWtNYXAsdj17Z2V0OmZ1bmN0aW9uKGUsdCxyKXtpZigidGhlbiI9PT10fHwiY2F0Y2giPT09dHx8ImZpbmFsbHkiPT09dCl7bGV0IG49aS5SZWZsZWN0QWRhcHRlci5nZXQoZSx0LHIpO3JldHVybih7W3RdOiguLi50KT0+e2xldCByPXAuZHluYW1pY0FjY2Vzc0FzeW5jU3RvcmFnZS5nZXRTdG9yZSgpO3JldHVybiByJiZyLmFib3J0Q29udHJvbGxlci5hYm9ydChPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIkFjY2Vzc2VkIGZhbGxiYWNrIGBwYXJhbXNgIGR1cmluZyBwcmVyZW5kZXJpbmcuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU2OTEiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSkpLG5ldyBQcm94eShuLmFwcGx5KGUsdCksdil9fSlbdF19cmV0dXJuIGkuUmVmbGVjdEFkYXB0ZXIuZ2V0KGUsdCxyKX19O2Z1bmN0aW9uIE8oZSl7bGV0IHQ9Uy5nZXQoZSk7aWYodClyZXR1cm4gdDtsZXQgcj1Qcm9taXNlLnJlc29sdmUoZSk7cmV0dXJuIFMuc2V0KGUscikscn0oMCxmLmNyZWF0ZURlZHVwZWRCeUNhbGxzaXRlU2VydmVyRXJyb3JMb2dnZXJEZXYpKGZ1bmN0aW9uKGUsdCl7bGV0IHI9ZT9gUm91dGUgIiR7ZX0iIGA6IlRoaXMgcm91dGUgIjtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGAke3J9dXNlZCAke3R9LiBcYHBhcmFtc1xgIGlzIGEgUHJvbWlzZSBhbmQgbXVzdCBiZSB1bndyYXBwZWQgd2l0aCBcYGF3YWl0XGAgb3IgXGBSZWFjdC51c2UoKVxgIGJlZm9yZSBhY2Nlc3NpbmcgaXRzIHByb3BlcnRpZXMuIExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL3N5bmMtZHluYW1pYy1hcGlzYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU4MzQiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9KX0sMTk5NTksKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIkNsaWVudFBhZ2VSb290Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdX19KTtsZXQgbj1lLnIoOTgxMzQpLGE9ZS5yKDQxMDYyKSxvPWUucigxNjg3MiksaT1lLnIoNzUyMDEpLHM9ZS5yKDg4MDYyKSxjPWUucigzMTg5OSk7ZnVuY3Rpb24gdSh7Q29tcG9uZW50OnQsc2VydmVyUHJvdmlkZWRQYXJhbXM6cn0pe2xldCB1LGw7aWYobnVsbCE9PXIpdT1yLnNlYXJjaFBhcmFtcyxsPXIucGFyYW1zO2Vsc2V7bGV0IGU9KDAsaS51c2UpKG8uTGF5b3V0Um91dGVyQ29udGV4dCk7bD1udWxsIT09ZT9lLnBhcmVudFBhcmFtczp7fSx1PSgwLHMudXJsU2VhcmNoUGFyYW1zVG9QYXJzZWRVcmxRdWVyeSkoKDAsaS51c2UpKGMuU2VhcmNoUGFyYW1zQ29udGV4dCkpfWlmKCJ1Ijx0eXBlb2Ygd2luZG93KXtsZXQgcixvLHt3b3JrQXN5bmNTdG9yYWdlOml9PWUucig4OTc5MSkscz1pLmdldFN0b3JlKCk7aWYoIXMpdGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyBhLkludmFyaWFudEVycm9yKCJFeHBlY3RlZCB3b3JrU3RvcmUgdG8gZXhpc3Qgd2hlbiBoYW5kbGluZyBzZWFyY2hQYXJhbXMgaW4gYSBjbGllbnQgUGFnZS4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTU2NCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtsZXR7Y3JlYXRlU2VhcmNoUGFyYW1zRnJvbUNsaWVudDpjfT1lLnIoODY3NzApO3I9Yyh1LHMpO2xldHtjcmVhdGVQYXJhbXNGcm9tQ2xpZW50OmR9PWUucigzNjA3MCk7cmV0dXJuIG89ZChsLHMpLCgwLG4uanN4KSh0LHtwYXJhbXM6byxzZWFyY2hQYXJhbXM6cn0pfXtsZXR7Y3JlYXRlUmVuZGVyU2VhcmNoUGFyYW1zRnJvbUNsaWVudDpyfT1lLnIoNjg2MTQpLGE9cih1KSx7Y3JlYXRlUmVuZGVyUGFyYW1zRnJvbUNsaWVudDpvfT1lLnIoODcxODkpLGk9byhsKTtyZXR1cm4oMCxuLmpzeCkodCx7cGFyYW1zOmksc2VhcmNoUGFyYW1zOmF9KX19KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMzM3ODAsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIkNsaWVudFNlZ21lbnRSb290Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gc319KTtsZXQgbj1lLnIoOTgxMzQpLGE9ZS5yKDQxMDYyKSxvPWUucigxNjg3MiksaT1lLnIoNzUyMDEpO2Z1bmN0aW9uIHMoe0NvbXBvbmVudDp0LHNsb3RzOnIsc2VydmVyUHJvdmlkZWRQYXJhbXM6c30pe2xldCBjO2lmKG51bGwhPT1zKWM9cy5wYXJhbXM7ZWxzZXtsZXQgZT0oMCxpLnVzZSkoby5MYXlvdXRSb3V0ZXJDb250ZXh0KTtjPW51bGwhPT1lP2UucGFyZW50UGFyYW1zOnt9fWlmKCJ1Ijx0eXBlb2Ygd2luZG93KXtsZXQgbyx7d29ya0FzeW5jU3RvcmFnZTppfT1lLnIoODk3OTEpLHM9aS5nZXRTdG9yZSgpO2lmKCFzKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgYS5JbnZhcmlhbnRFcnJvcigiRXhwZWN0ZWQgd29ya1N0b3JlIHRvIGV4aXN0IHdoZW4gaGFuZGxpbmcgcGFyYW1zIGluIGEgY2xpZW50IHNlZ21lbnQgc3VjaCBhcyBhIExheW91dCBvciBUZW1wbGF0ZS4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTYwMCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtsZXR7Y3JlYXRlUGFyYW1zRnJvbUNsaWVudDp1fT1lLnIoMzYwNzApO3JldHVybiBvPXUoYyxzKSwoMCxuLmpzeCkodCx7Li4ucixwYXJhbXM6b30pfXtsZXR7Y3JlYXRlUmVuZGVyUGFyYW1zRnJvbUNsaWVudDphfT1lLnIoODcxODkpLG89YShjKTtyZXR1cm4oMCxuLmpzeCkodCx7Li4ucixwYXJhbXM6b30pfX0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwyMDQxNCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiSWNvbk1hcmsiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCBuPWUucig5ODEzNCksYT0oKT0+InUiPnR5cGVvZiB3aW5kb3c/bnVsbDooMCxuLmpzeCkoIm1ldGEiLHtuYW1lOiLCq254dC1pY29uwrsifSl9XSk7"}},"time_used":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.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.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.youtube.com/embed/4ekOcDG2D8E","date":"2026-07-27T13:20:33.530Z","timestamp":1785158433530,"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/4ekOcDG2D8E\r\nCookie: __Secure-YNID=20.YT=gH5UekW7d1yJXHdyAWP9D3nuufltIP5U3L-OJPITdfVo4QFdUpGIlO1MrkvQo6k6kl0jq_pOZAm0Y6StBGPZKrWCX-Ie8T1zxUJW6abmYuVU53Il1VEq4vUs5vvLfbgZGHz1eALkxngiX8bUsdRMr2vaKLTZJ0IBhq1y-2EM8N90iJ0cyWzGnhUGzNxuZzHw9HXFuIwKItlZKR3JI0AWby-eMB-aedGxFUVnqseGfA1HlqbnqC5EymsVz59X4lHMwh44OYJRjaiXEEhEetat2qsHLh8v23W9zHmKOEE2ZhT3CAsXUCZ0LdHpvohM6BZq6G030fjyK9N5mMzUa8e_Fw; YSC=n_kiEdK62Us; VISITOR_INFO1_LIVE=oxtQMHpPyNo; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgEg%3D%3D; __Secure-ROLLOUT_TOKEN=CKOus_iU9NnYzgEQ5fqIsvnylQMY5fqIsvnylQM%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: 260650\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-27T16:56:48.623387Z","times_seen":646,"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":13,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":10,"receive":3,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.google.com/images/cleardot.gif","fqdn":"www.google.com","domain":"google.com","tld":"com"},"ip":{"addr":"142.251.151.119","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.652Z","timestamp":1785158433652,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.google.com","organization":""},"issuer":{"commonName":"WR2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:25 GMT","end":"Mon, 21 Sep 2026 08:37:24 GMT"},"fingerprint":{"sha1":"D9:DA:81:30:78:3E:9C:6B:5F:9D:18:52:0E:BE:6D:52:2F:FB:33:E0","sha256":"EA:E2:2D:87:EC:9C:D6:51:9D:59:E4:13:35:3B:97:14:E3:DA:58:2D:1C:69:19:41:54:94:25:C3:94:17:F3:0C"}}},"request":{"raw":"GET /images/cleardot.gif HTTP/1.1\r\nHost: www.google.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\ncontent-type: image/gif\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 43\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\npragma: no-cache\r\nexpires: Fri, 01 Jan 1990 00:00:00 GMT\r\ncache-control: no-cache, no-store, must-revalidate\r\nlast-modified: Tue, 22 Oct 2019 18:30:00 GMT\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":43,"size_decoded":717,"mime_type":"image/gif","magic":"GIF image data, version 89a, 1 x 1","md5":"fc94fb0c3ed8a8f909dbc7630a0987ff","sha1":"56d45f8a17f5078a20af9962c992ca4678450765","sha256":"2dfe28cbdb83f01c940de6a88ab86200154fd772d568035ac568664e52068363","sha512":"c87bf81fd70cf6434ca3a6c05ad6e9bd3f1d96f77dddad8d45ee043b126b2cb07a5cf23b4137b9d8462cd8a9adf2b463ab6de2b38c93db72d2d511ca60e3b57e","ssdeep":"","tlshash":"cb900003cac8c022c2a2c0300a0c03002bbaa8300228030ec0bc30fcec2a3a38c02000","first_seen":"2023-04-05T02:54:04Z","last_seen":"2026-08-17T21:53:37.990434Z","times_seen":83557,"resource_available":true,"data":"R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="}},"time_used":40,"timings":{"blocked":0,"dns":2,"connect":22,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/animate.css","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.495Z","timestamp":1785158432495,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/animate.css HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\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\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: text/css\r\nserver-timing: cfExtPri\r\npriority: u=2,i=?0\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=D5X9w%2FFBagcc33Hl8J12l6Ls%2BBpD8WFZU%2FJUftp5smDNJHoPrWq9RcGjhsdWb8r5Tw8XgoQT4v7bDem%2BbM4QitYjjrezrxPxWPiceTX3HtGkhh%2FwTtPM%2FeGafqOAmKlyiZlv7w%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b1c6856b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 3828\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"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":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":73016,"size_decoded":4643,"mime_type":"text/css","magic":"ASCII text","md5":"d1665e66efe81331b1de94104e64a64f","sha1":"a72fa625d2607497ff5ae53e72ee9cba541df650","sha256":"9099e50cf0c5b47dd04327da63bdcd6557f5b73e3ee22a8591fde10f9a660a16","sha512":"c9587b0ab8789dec1d06969eaaa669a4e316370992ed4704b20ea613b4c771157b12c18f6513204137bd0e4069f37d5451163d6597c7469120ff5a5559c51201","ssdeep":"384:f4rOmOo/x/SOmOw/l//FkFsmXmknz/S/cySy+/Z/V+/9Z4jHGJlMN3t4b:ArOmOo/x/SOmOw/l/Unz/S/cySy+/Z/+","tlshash":"31635d6d2991114452678a1983df9e78263cd1b3182aacef73ce5c8bcf86fac63c5507","first_seen":"2023-04-11T07:45:52Z","last_seen":"2026-07-27T13:21:39.134538Z","times_seen":144,"resource_available":false,"data":"QGNoYXJzZXQgIlVURi04IjsKLyohCkFuaW1hdGUuY3NzIC0gaHR0cDovL2RhbmVkZW4ubWUvYW5pbWF0ZQpMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgLSBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUCgpDb3B5cmlnaHQgKGMpIDIwMTQgRGFuaWVsIEVkZW4KKi8KCi5hbmltYXRlZCB7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7CiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOwp9CgouYW5pbWF0ZWQuaW5maW5pdGUgewogIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsKfQoKLmFuaW1hdGVkLmhpbmdlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMnM7CiAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDJzOwp9Ci5wYXltZW50c0lubmVyIGF7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDIuMDFzOwogICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyLjAxczsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZSB7CiAgMCUsIDIwJSwgNTMlLCA4MCUsIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTsKICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTsKICB9CgogIDQwJSwgNDMlIHsKICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7CiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMHB4LCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7CiAgfQoKICA3MCUgewogICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTsKICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNXB4LCAwKTsKICB9CgogIDkwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtNHB4LDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTRweCwwKTsKICB9Cn0KCkBrZXlmcmFtZXMgYm91bmNlIHsKICAwJSwgMjAlLCA1MyUsIDgwJSwgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApOwogICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApOwogIH0KCiAgNDAlLCA0MyUgewogICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTsKICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMHB4LCAwKTsKICB9CgogIDcwJSB7CiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApOwogICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApOwogIH0KCiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLC00cHgsMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtNHB4LDApOwogIH0KfQoKLmJvdW5jZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTsKICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207CiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOwogICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZsYXNoIHsKICAwJSwgNTAlLCAxMDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAyNSUsIDc1JSB7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKQGtleWZyYW1lcyBmbGFzaCB7CiAgMCUsIDUwJSwgMTAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMjUlLCA3NSUgewogICAgb3BhY2l0eTogMDsKICB9Cn0KCi5mbGFzaCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxhc2g7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmxhc2g7Cn0KCi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqLwoKQC13ZWJraXQta2V5ZnJhbWVzIHB1bHNlIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogIH0KCiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgfQp9CgpAa2V5ZnJhbWVzIHB1bHNlIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogIH0KCiAgNTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgfQp9CgoucHVsc2UgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHB1bHNlOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHB1bHNlOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgcnViYmVyQmFuZCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICB9CgogIDMwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpOwogIH0KCiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7CiAgfQoKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTsKICB9CgogIDY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOTUsIDEuMDUsIDEpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjk1LCAxLjA1LCAxKTsKICB9CgogIDc1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAuOTUsIDEpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgLjk1LCAxKTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICB9Cn0KCkBrZXlmcmFtZXMgcnViYmVyQmFuZCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICB9CgogIDMwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpOwogIH0KCiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7CiAgfQoKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTsKICB9CgogIDY1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOTUsIDEuMDUsIDEpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjk1LCAxLjA1LCAxKTsKICB9CgogIDc1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAuOTUsIDEpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgLjk1LCAxKTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICB9Cn0KCi5ydWJiZXJCYW5kIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBydWJiZXJCYW5kOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHJ1YmJlckJhbmQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBzaGFrZSB7CiAgMCUsIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KCiAgMTAlLCAzMCUsIDUwJSwgNzAlLCA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7CiAgfQoKICAyMCUsIDQwJSwgNjAlLCA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogIH0KfQoKQGtleWZyYW1lcyBzaGFrZSB7CiAgMCUsIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIH0KCiAgMTAlLCAzMCUsIDUwJSwgNzAlLCA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7CiAgfQoKICAyMCUsIDQwJSwgNjAlLCA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogIH0KfQoKLnNoYWtlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzaGFrZTsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzaGFrZTsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHN3aW5nIHsKICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7CiAgfQoKICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTsKICB9CgogIDYwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTsKICB9Cn0KCkBrZXlmcmFtZXMgc3dpbmcgewogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMTVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTsKICB9CgogIDQwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpOwogIH0KCiAgNjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTsKICB9CgogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpOwogIH0KfQoKLnN3aW5nIHsKICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7CiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyOwogICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzd2luZzsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzd2luZzsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHRhZGEgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgfQoKICAxMCUsIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7CiAgfQoKICAzMCUsIDUwJSwgNzAlLCA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTsKICB9CgogIDQwJSwgNjAlLCA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogIH0KfQoKQGtleWZyYW1lcyB0YWRhIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogIH0KCiAgMTAlLCAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogIH0KCiAgMzAlLCA1MCUsIDcwJSwgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7CiAgfQoKICA0MCUsIDYwJSwgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICB9Cn0KCi50YWRhIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB0YWRhOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHRhZGE7Cn0KCi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqLwoKQC13ZWJraXQta2V5ZnJhbWVzIHdvYmJsZSB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9CgogIDE1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTsKICB9CgogIDMwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpOwogIH0KCiAgNDUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogIH0KCiAgNjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7CiAgfQoKICA3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTFkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTFkZWcpOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KfQoKQGtleWZyYW1lcyB3b2JibGUgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQoKICAxNSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7CiAgfQoKICAzMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTsKICB9CgogIDQ1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTsKICB9CgogIDYwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpOwogIH0KCiAgNzUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCi53b2JibGUgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHdvYmJsZTsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB3b2JibGU7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbiB7CiAgMCUsIDIwJSwgNDAlLCA2MCUsIDgwJSwgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApOwogICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTsKICB9CgogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpOwogIH0KCiAgMjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7CiAgfQoKICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTsKICB9CgogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOTcsIC45NywgLjk3KTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45NywgLjk3LCAuOTcpOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICB9Cn0KCkBrZXlmcmFtZXMgYm91bmNlSW4gewogIDAlLCAyMCUsIDQwJSwgNjAlLCA4MCUsIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTsKICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7CiAgfQoKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTsKICB9CgogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpOwogIH0KCiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7CiAgfQoKICA2MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjk3LCAuOTcsIC45Nyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOTcsIC45NywgLjk3KTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgfQp9CgouYm91bmNlSW4gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzOwogICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5Eb3duIHsKICAwJSwgNjAlLCA3NSUsIDkwJSwgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApOwogICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTsKICB9CgogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7CiAgfQoKICA2MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTsKICB9CgogIDc1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTsKICB9CgogIDkwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KfQoKQGtleWZyYW1lcyBib3VuY2VJbkRvd24gewogIDAlLCA2MCUsIDc1JSwgOTAlLCAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7CiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApOwogIH0KCiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApOwogIH0KCiAgNzUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApOwogIH0KCiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQp9CgouYm91bmNlSW5Eb3duIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkRvd247CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHsKICAwJSwgNjAlLCA3NSUsIDkwJSwgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApOwogICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTsKICB9CgogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7CiAgfQoKICA2MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTsKICB9CgogIDc1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsKICB9CgogIDkwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KfQoKQGtleWZyYW1lcyBib3VuY2VJbkxlZnQgewogIDAlLCA2MCUsIDc1JSwgOTAlLCAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7CiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApOwogIH0KCiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApOwogIH0KCiAgNzUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOwogIH0KCiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQp9CgouYm91bmNlSW5MZWZ0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkxlZnQ7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5MZWZ0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7CiAgMCUsIDYwJSwgNzUlLCA5MCUsIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTsKICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7CiAgfQoKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7CiAgfQoKICA3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogIH0KCiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCkBrZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7CiAgMCUsIDYwJSwgNzUlLCA5MCUsIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTsKICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7CiAgfQoKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7CiAgfQoKICA3NSUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogIH0KCiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCi5ib3VuY2VJblJpZ2h0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblJpZ2h0OwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluUmlnaHQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJblVwIHsKICAwJSwgNjAlLCA3NSUsIDkwJSwgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApOwogICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTsKICB9CgogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApOwogIH0KCiAgNjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTsKICB9CgogIDc1JSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7CiAgfQoKICA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGJvdW5jZUluVXAgewogIDAlLCA2MCUsIDc1JSwgOTAlLCAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7CiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApOwogIH0KCiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCk7CiAgfQoKICA2MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApOwogIH0KCiAgNzUlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsKICB9CgogIDkwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9Cn0KCi5ib3VuY2VJblVwIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluVXA7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXQgewogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpOwogIH0KCiAgNTAlLCA1NSUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpOwogIH0KfQoKQGtleWZyYW1lcyBib3VuY2VPdXQgewogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpOwogIH0KCiAgNTAlLCA1NSUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpOwogIH0KfQoKLmJvdW5jZU91dCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0OwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dDsKICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjc1czsKICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogLjc1czsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dERvd24gewogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7CiAgfQoKICA0MCUsIDQ1JSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogIH0KfQoKQGtleWZyYW1lcyBib3VuY2VPdXREb3duIHsKICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApOwogIH0KCiAgNDAlLCA0NSUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsKICB9Cn0KCi5ib3VuY2VPdXREb3duIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dERvd247Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRMZWZ0IHsKICAyMCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMHB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMHB4LCAwLCAwKTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7CiAgMjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7CiAgfQp9CgouYm91bmNlT3V0TGVmdCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0TGVmdDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0UmlnaHQgewogIDIwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOwogIH0KfQoKQGtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7CiAgMjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgfQp9CgouYm91bmNlT3V0UmlnaHQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFJpZ2h0OwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFJpZ2h0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0VXAgewogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTsKICB9CgogIDQwJSwgNDUlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGJvdW5jZU91dFVwIHsKICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7CiAgfQoKICA0MCUsIDQ1JSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogIH0KfQoKLmJvdW5jZU91dFVwIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRVcDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRVcDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbiB7CiAgMCUge29wYWNpdHk6IDA7fQogIDEwMCUge29wYWNpdHk6IDE7fQp9CgpAa2V5ZnJhbWVzIGZhZGVJbiB7CiAgMCUge29wYWNpdHk6IDA7fQogIDEwMCUge29wYWNpdHk6IDE7fQp9CgouZmFkZUluIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW47CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZUluOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93biB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZUluRG93biB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCi5mYWRlSW5Eb3duIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duQmlnIHsKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQp9CgouZmFkZUluRG93bkJpZyB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZzsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duQmlnOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdCB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZUluTGVmdCB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCi5mYWRlSW5MZWZ0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0OwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHsKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQp9CgouZmFkZUluTGVmdEJpZyB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdEJpZzsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0QmlnOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHQgewogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KfQoKQGtleWZyYW1lcyBmYWRlSW5SaWdodCB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQp9CgouZmFkZUluUmlnaHQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0OwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcgewogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcgewogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCi5mYWRlSW5SaWdodEJpZyB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRCaWc7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRCaWc7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcCB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVJblVwIHsKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCi5mYWRlSW5VcCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluVXA7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZUluVXA7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcEJpZyB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KfQoKQGtleWZyYW1lcyBmYWRlSW5VcEJpZyB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KfQoKLmZhZGVJblVwQmlnIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZzsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZzsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXQgewogIDAlIHtvcGFjaXR5OiAxO30KICAxMDAlIHtvcGFjaXR5OiAwO30KfQoKQGtleWZyYW1lcyBmYWRlT3V0IHsKICAwJSB7b3BhY2l0eTogMTt9CiAgMTAwJSB7b3BhY2l0eTogMDt9Cn0KCi5mYWRlT3V0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0OwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0RG93biB7CiAgMCUgewogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZU91dERvd24gewogIDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7CiAgfQp9CgouZmFkZU91dERvd24gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd25CaWcgewogIDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogIH0KfQoKQGtleWZyYW1lcyBmYWRlT3V0RG93bkJpZyB7CiAgMCUgewogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7CiAgfQp9CgouZmFkZU91dERvd25CaWcgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnQgewogIDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZU91dExlZnQgewogIDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsKICB9Cn0KCi5mYWRlT3V0TGVmdCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dExlZnQ7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dExlZnQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0TGVmdEJpZyB7CiAgMCUgewogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZU91dExlZnRCaWcgewogIDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7CiAgfQp9CgouZmFkZU91dExlZnRCaWcgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHsKICAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOwogIH0KfQoKQGtleWZyYW1lcyBmYWRlT3V0UmlnaHQgewogIDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgfQp9CgouZmFkZU91dFJpZ2h0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHQ7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHsKICAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHsKICAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICB9Cn0KCi5mYWRlT3V0UmlnaHRCaWcgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodEJpZzsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHRCaWc7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0VXAgewogIDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICB9Cn0KCkBrZXlmcmFtZXMgZmFkZU91dFVwIHsKICAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7CiAgfQp9CgouZmFkZU91dFVwIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXA7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwQmlnIHsKICAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogIH0KfQoKQGtleWZyYW1lcyBmYWRlT3V0VXBCaWcgewogIDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgfQp9CgouZmFkZU91dFVwQmlnIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXBCaWc7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwQmlnOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmxpcCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB9CgogIDQwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTkwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgfQoKICA1MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTcwZGVnKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICB9CgogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LCAuOTUsIC45NSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LCAuOTUsIC45NSk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogIH0KfQoKQGtleWZyYW1lcyBmbGlwIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogIH0KCiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OwogICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICB9CgogIDUwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTcwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogIH0KCiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsIC45NSwgLjk1KTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsIC45NSwgLjk1KTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgfQp9CgouYW5pbWF0ZWQuZmxpcCB7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlOwogICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZTsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZsaXA7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5YIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpOwogICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICBvcGFjaXR5OiAwOwogIH0KCiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTsKICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogIH0KCiAgNjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogIH0KfQoKQGtleWZyYW1lcyBmbGlwSW5YIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpOwogICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICBvcGFjaXR5OiAwOwogIH0KCiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTsKICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogIH0KCiAgNjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogIH0KfQoKLmZsaXBJblggewogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50OwogICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50OwogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmxpcEluWDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblkgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7CiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgIG9wYWNpdHk6IDA7CiAgfQoKICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpOwogICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgfQoKICA2MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgfQp9CgpAa2V5ZnJhbWVzIGZsaXBJblkgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7CiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgIG9wYWNpdHk6IDA7CiAgfQoKICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpOwogICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgfQoKICA2MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgfQp9CgouZmxpcEluWSB7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7CiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcEluWTsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFggewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogIH0KCiAgMzAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKQGtleWZyYW1lcyBmbGlwT3V0WCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgfQoKICAzMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpOwogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgouZmxpcE91dFggewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRYOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRYOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzOwogICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50OwogICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFkgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogIH0KCiAgMzAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKQGtleWZyYW1lcyBmbGlwT3V0WSB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgfQoKICAzMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpOwogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgouZmxpcE91dFkgewogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50OwogICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50OwogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzOwogICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZEluIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpOwogICAgb3BhY2l0eTogMDsKICB9CgogIDYwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgb3BhY2l0eTogMTsKICB9Cn0KCkBrZXlmcmFtZXMgbGlnaHRTcGVlZEluIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpOwogICAgb3BhY2l0eTogMDsKICB9CgogIDYwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgb3BhY2l0eTogMTsKICB9Cn0KCi5saWdodFNwZWVkSW4gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbjsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkSW47CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZE91dCB7CiAgMCUgewogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKQGtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHsKICAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgoubGlnaHRTcGVlZE91dCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZE91dDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0OwogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47Cn0KCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbiB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgb3BhY2l0eTogMTsKICB9Cn0KCkBrZXlmcmFtZXMgcm90YXRlSW4gewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICAgIG9wYWNpdHk6IDE7CiAgfQp9Cgoucm90YXRlSW4gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpOwogICAgb3BhY2l0eTogMDsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgb3BhY2l0eTogMTsKICB9Cn0KCkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpOwogICAgb3BhY2l0eTogMDsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgb3BhY2l0eTogMTsKICB9Cn0KCi5yb3RhdGVJbkRvd25MZWZ0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25MZWZ0OwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93bkxlZnQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbkRvd25SaWdodCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgb3BhY2l0eTogMDsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgICBvcGFjaXR5OiAxOwogIH0KfQoKQGtleWZyYW1lcyByb3RhdGVJbkRvd25SaWdodCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgb3BhY2l0eTogMDsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgICBvcGFjaXR5OiAxOwogIH0KfQoKLnJvdGF0ZUluRG93blJpZ2h0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25SaWdodDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25SaWdodDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgb3BhY2l0eTogMDsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgb3BhY2l0eTogMTsKICB9Cn0KCkBrZXlmcmFtZXMgcm90YXRlSW5VcExlZnQgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgICBvcGFjaXR5OiAxOwogIH0KfQoKLnJvdGF0ZUluVXBMZWZ0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICAgIG9wYWNpdHk6IDE7CiAgfQp9CgpAa2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICAgIG9wYWNpdHk6IDE7CiAgfQp9Cgoucm90YXRlSW5VcFJpZ2h0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQ7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5VcFJpZ2h0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0IHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKQGtleWZyYW1lcyByb3RhdGVPdXQgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9Cgoucm90YXRlT3V0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXQ7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgpAa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25MZWZ0IHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKLnJvdGF0ZU91dERvd25MZWZ0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dERvd25SaWdodCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpOwogICAgb3BhY2l0eTogMDsKICB9Cn0KCkBrZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKLnJvdGF0ZU91dERvd25SaWdodCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93blJpZ2h0OwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25SaWdodDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKQGtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpOwogICAgb3BhY2l0eTogMDsKICB9Cn0KCi5yb3RhdGVPdXRVcExlZnQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwTGVmdDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpOwogICAgb3BhY2l0eTogMDsKICB9Cn0KCkBrZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDkwZGVnKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9Cgoucm90YXRlT3V0VXBSaWdodCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcFJpZ2h0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgaGluZ2UgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgfQoKICAyMCUsIDYwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgODBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgfQoKICA0MCUsIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgpAa2V5ZnJhbWVzIGhpbmdlIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIH0KCiAgMjAlLCA2MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA4MGRlZyk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogIH0KCiAgNDAlLCA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA2MGRlZyk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OwogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7CiAgICBvcGFjaXR5OiAwOwogIH0KfQoKLmhpbmdlIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoaW5nZTsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBoaW5nZTsKfQoKLyogb3JpZ2luYWxseSBhdXRob3JlZCBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlICovCgpALXdlYmtpdC1rZXlmcmFtZXMgcm9sbEluIHsKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KfQoKQGtleWZyYW1lcyByb2xsSW4gewogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xMjBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQp9Cgoucm9sbEluIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb2xsSW47CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogcm9sbEluOwp9CgovKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi8KCkAtd2Via2l0LWtleWZyYW1lcyByb2xsT3V0IHsKICAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTsKICB9Cn0KCkBrZXlmcmFtZXMgcm9sbE91dCB7CiAgMCUgewogICAgb3BhY2l0eTogMTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7CiAgfQp9Cgoucm9sbE91dCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm9sbE91dDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb2xsT3V0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluIHsKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTsKICB9CgogIDUwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KfQoKQGtleWZyYW1lcyB6b29tSW4gewogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpOwogIH0KCiAgNTAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQp9Cgouem9vbUluIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW47CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogem9vbUluOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluRG93biB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7CiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7CiAgfQoKICA2MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpOwogIH0KfQoKQGtleWZyYW1lcyB6b29tSW5Eb3duIHsKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpOwogICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7CiAgfQp9Cgouem9vbUluRG93biB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluRG93bjsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5Eb3duOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluTGVmdCB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7CiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7CiAgfQoKICA2MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpOwogIH0KfQoKQGtleWZyYW1lcyB6b29tSW5MZWZ0IHsKICAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpOwogICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7CiAgfQp9Cgouem9vbUluTGVmdCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluTGVmdDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5MZWZ0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluUmlnaHQgewogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7CiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTsKICB9Cn0KCkBrZXlmcmFtZXMgem9vbUluUmlnaHQgewogIDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTsKICB9CgogIDYwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7CiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTsKICB9Cn0KCi56b29tSW5SaWdodCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5VcCB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApOwogICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApOwogIH0KCiAgNjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpOwogIH0KfQoKQGtleWZyYW1lcyB6b29tSW5VcCB7CiAgMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApOwogICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApOwogIH0KCiAgNjAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpOwogIH0KfQoKLnpvb21JblVwIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXQgewogIDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICA1MCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgfQp9CgpAa2V5ZnJhbWVzIHpvb21PdXQgewogIDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQoKICA1MCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgfQp9Cgouem9vbU91dCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dERvd24gewogIDQwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApOwogICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpOwogIH0KfQoKQGtleWZyYW1lcyB6b29tT3V0RG93biB7CiAgNDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7CiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpOwogICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7CiAgfQp9Cgouem9vbU91dERvd24gewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dExlZnQgewogIDQwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7CiAgfQp9CgpAa2V5ZnJhbWVzIHpvb21PdXRMZWZ0IHsKICA0MCUgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyOwogIH0KfQoKLnpvb21PdXRMZWZ0IHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXRSaWdodCB7CiAgNDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7CiAgfQoKICAxMDAlIHsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyOwogIH0KfQoKQGtleWZyYW1lcyB6b29tT3V0UmlnaHQgewogIDQwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApOwogIH0KCiAgMTAwJSB7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjsKICB9Cn0KCi56b29tT3V0UmlnaHQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRSaWdodDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0UmlnaHQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0VXAgewogIDQwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpOwogIH0KfQoKQGtleWZyYW1lcyB6b29tT3V0VXAgewogIDQwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTsKICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTsKICB9CgogIDEwMCUgewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207CiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTsKICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpOwogIH0KfQoKLnpvb21PdXRVcCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dFVwOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRVcDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5Eb3duIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogIH0KfQoKQGtleWZyYW1lcyBzbGlkZUluRG93biB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOwogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICB9Cn0KCi5zbGlkZUluRG93biB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJbkRvd247CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkRvd247Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluTGVmdCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOwogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICB9Cn0KCkBrZXlmcmFtZXMgc2xpZGVJbkxlZnQgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsKICAgIHZpc2liaWxpdHk6IHZpc2libGU7CiAgfQoKICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgfQp9Cgouc2xpZGVJbkxlZnQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0OwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0Owp9CgpALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOwogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICB9Cn0KCkBrZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOwogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsKICB9CgogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICB9Cn0KCi5zbGlkZUluUmlnaHQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5SaWdodDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluUmlnaHQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluVXAgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogIH0KfQoKQGtleWZyYW1lcyBzbGlkZUluVXAgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOwogIH0KCiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogIH0KfQoKLnNsaWRlSW5VcCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJblVwOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5VcDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0RG93biB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICB9CgogIDEwMCUgewogICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTsKICB9Cn0KCkBrZXlmcmFtZXMgc2xpZGVPdXREb3duIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogIH0KCiAgMTAwJSB7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOwogIH0KfQoKLnNsaWRlT3V0RG93biB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXREb3duOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0RG93bjsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0TGVmdCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICB9CgogIDEwMCUgewogICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOwogIH0KfQoKQGtleWZyYW1lcyBzbGlkZU91dExlZnQgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgfQoKICAxMDAlIHsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsKICB9Cn0KCi5zbGlkZU91dExlZnQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0TGVmdDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dExlZnQ7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dFJpZ2h0IHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogIH0KCiAgMTAwJSB7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOwogIH0KfQoKQGtleWZyYW1lcyBzbGlkZU91dFJpZ2h0IHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogIH0KCiAgMTAwJSB7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOwogIH0KfQoKLnNsaWRlT3V0UmlnaHQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0UmlnaHQ7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRSaWdodDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0VXAgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgfQoKICAxMDAlIHsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsKICB9Cn0KCkBrZXlmcmFtZXMgc2xpZGVPdXRVcCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICB9CgogIDEwMCUgewogICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOwogIH0KfQoKLnNsaWRlT3V0VXAgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0VXA7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRVcDsKfQo="}},"time_used":16,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/setting2.js","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.505Z","timestamp":1785158432505,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/setting2.js HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\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\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: application/javascript\r\nserver-timing: cfExtPri\r\npriority: u=3,i=?0\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=wiS7szekHV9XaZLCchN5HNg6aMp6oAI0DimL49iBx3eGTF1RZRwF5vQ9wwKn4Lt4v1RVJdnrhs5ZgPFzJAjp2kz9BgiT659CmXF1plLQVa%2FRCkjVg6YOV6te7voTVJxE123Y3Q%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b2c6b56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 568\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"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":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1738,"size_decoded":1386,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text","md5":"67fd1627c8c56c3e7ad50e34292ddcd4","sha1":"74e7250d6d3deb0fff8e46698cb2bf576d23a165","sha256":"29822d1e65cc8191915c5cd2defec2f0471877f19805c2937ba9400481552bf1","sha512":"740456a39b6910e0a1d26a8ab001d46cfcc0612e05893bf635c06cf6477d71533cc898e0093e1d3e3073e5c1111a116e8276ba2882b2cf045bb2f37e89b133f3","ssdeep":"","tlshash":"5d316c00e75d0325237071747ad927c4a43e5a623a102c91bdb91edd0ff4e65e909ecf","first_seen":"2026-01-22T04:28:08.483482Z","last_seen":"2026-07-27T13:21:39.108527Z","times_seen":9,"resource_available":true,"data":"JChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsKCXdvdyA9IG5ldyBXT1coCiAgICAgIHsKICAgICAgICBhbmltYXRlQ2xhc3M6ICdhbmltYXRlZCcsCiAgICAgICAgb2Zmc2V0OiAgICAgICAxMDAsCiAgICAgICAgY2FsbGJhY2s6ICAgICBmdW5jdGlvbihib3gpIHsKICAgICAgICAgIGNvbnNvbGUubG9nKCJXT1c6IGFuaW1hdGluZyA8IiArIGJveC50YWdOYW1lLnRvTG93ZXJDYXNlKCkgKyAiPiIpCiAgICAgICAgfQogICAgICB9CiAgICApOwogICAgd293LmluaXQoKTsKCgkKCXZhciBwZXJjZW50IAk9IFsyNSwzMCw0MCw1NSw3MF07Cgl2YXIgbWluTW9uZXkgCT0gWzIwLDEwMDEsNTAwMSwxMDAwMSwyMDAwMV07Cgl2YXIgbWF4TW9uZXkJPSBbMTAwMCw1MDAwLDEwMDAwLDIwMDAwLDEwMDAwMDBdOwoJJCgiI2Ftb3VudCIpLnZhbChtaW5Nb25leVswXSk7CgkKCS8vQ2FsY3VsYXRvcgoJZnVuY3Rpb24gY2FsYygpewoJCWFtb3VudCA9IHBhcnNlRmxvYXQoJCgiI2Ftb3VudCIpLnZhbCgpKTsKCQlpZCA9IC0xOwoJCXZhciBsZW5ndGggPSBwZXJjZW50Lmxlbmd0aDsKCQl2YXIgaSA9IDA7CgkJZG8gewoJCQlpZihtaW5Nb25leVtpXSA8PSBhbW91bnQgJiYgYW1vdW50IDw9IG1heE1vbmV5W2ldKXsKCQkJCWlkID0gaTsKCQkJCWkgPSBpICsgbGVuZ3RoOwoJCQl9CgkJCWkrKwoJCX0KCQl3aGlsZShpIDwgbGVuZ3RoKQoJCQoJCWlmKGlkICE9IC0xKXsKCQkJcHJvZml0RGFpbHkgPSBhbW91bnQgLyAxMDAgKiBwZXJjZW50W2lkXTsKCQkJcHJvZml0RGFpbHkgPSBwcm9maXREYWlseS50b0ZpeGVkKDMpOwoJCQlwcm9maXRIb3VybHkgPSBhbW91bnQgLyAxMDAgKiBwZXJjZW50W2lkXTsKCQkJcHJvZml0SG91cmx5ID0gcHJvZml0SG91cmx5LnRvRml4ZWQoMyk7CgkJCXByb2ZpdFdlZWtseSA9IHByb2ZpdERhaWx5ICogNzsKCQkJcHJvZml0V2Vla2x5ID0gcHJvZml0V2Vla2x5LnRvRml4ZWQoMyk7CgkJCXByb2ZpdE1vbnRobHkgPSBwcm9maXREYWlseSAqIDU7CgkJCXByb2ZpdE1vbnRobHkgPSBwcm9maXRNb250aGx5LnRvRml4ZWQoMyk7CgoKCQkJaWYoYW1vdW50IDwgbWluTW9uZXlbaWRdIHx8IGlzTmFOKGFtb3VudCkgPT0gdHJ1ZSl7CgkJCQkkKCIjcHJvZml0SG91cmx5IikudGV4dCgiRXJyb3IhIik7CgkJCQkkKCIjcHJvZml0RGFpbHkiKS50ZXh0KCJFcnJvciEiKTsKCQkJCSQoIiNwcm9maXRXZWVrbHkiKS50ZXh0KCJFcnJvciEiKTsKCQkJCSQoIiNwcm9maXRNb250aGx5IikudGV4dCgiRXJyb3IhIik7CgkJCX0gZWxzZSB7CgkJCQkkKCIjcHJvZml0SG91cmx5IikudGV4dCgiJCIgKyBwcm9maXRIb3VybHkpOwoJCQkJJCgiI3Byb2ZpdERhaWx5IikudGV4dCgiJCIgKyBwcm9maXREYWlseSk7CgkJCQkkKCIjcHJvZml0V2Vla2x5IikudGV4dCgiJCIgKyBwcm9maXREYWlseSk7CgkJCQkkKCIjcHJvZml0TW9udGhseSIpLnRleHQoIiQiICsgcHJvZml0TW9udGhseSk7CgkJCX0KCQl9IGVsc2UgewoJCQkkKCIjcHJvZml0SG91cmx5IikudGV4dCgiRXJyb3IhIik7CgkJCSQoIiNwcm9maXREYWlseSIpLnRleHQoIkVycm9yISIpOwoJCQkkKCIjcHJvZml0V2Vla2x5IikudGV4dCgiRXJyb3IhIik7CgkJCSQoIiNwcm9maXRNb250aGx5IikudGV4dCgiRXJyb3IhIik7CgkJfQoJfQoJaWYoJCgiI2Ftb3VudCIpLmxlbmd0aCl7CgkJY2FsYygpOwoJfQoJJCgiI2Ftb3VudCIpLmtleXVwKGZ1bmN0aW9uKCl7CgkJY2FsYygpOwoJfSk7CgoJCgkKfSk7Cg=="}},"time_used":17,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":17,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/registered.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.531Z","timestamp":1785158432531,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/registered.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=TIZo%2BsEscqXM2icCu90QGMwr6LCa86kILcZVoB7hz4Jbbq3suWqJEUcfhiJFsuSQ%2FLImr30rXWQvnSrTUT3VCu0bDYbU%2FxWEiypDcrAMF5U5vBOK1Rt7XYLbZ81EskWdi3QhYw%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b5c7156b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 4981\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":4981,"size_decoded":5743,"mime_type":"image/png","magic":"PNG image data, 86 x 86, 8-bit/color RGBA, non-interlaced","md5":"332e020d9c9b1b10256ce445218cab16","sha1":"7118c09b9d09ac67f2aec4a1b6abd005051e1296","sha256":"bdbcc398d4a6e58ac11ec5b36ed682bf239761b03c0d047fab1a07927a80ec19","sha512":"9f730a05fe462b79377cece49e2a6cc710f26cb78664613d8d683527a638f7e0bafc7be0c7c5dbebfa0f7bf59987d14f5cf8cd619106d04f1785a754e77cbe7b","ssdeep":"96:SY2cMC6By6Xq99QXvtKF/iG5wDqvN7KlVh5zL39SYpOU:SUP6tYcIF/5OD4N7eVnHYk5","tlshash":"f4a17f5431801a31a5a4e251b0c9fd3007fb08029dd8639f82e3b55a7f304e54eaefb7","first_seen":"2024-09-19T20:45:30.970018Z","last_seen":"2026-07-27T13:21:39.126755Z","times_seen":17,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAFYAAABWCAYAAABVVmH3AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Rjc1RDE5RkI4NUQzMTFFOTlCMUU5QTU3QzhCQkU4Q0IiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6Rjc1RDE5RkM4NUQzMTFFOTlCMUU5QTU3QzhCQkU4Q0IiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGNzVEMTlGOTg1RDMxMUU5OUIxRTlBNTdDOEJCRThDQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGNzVEMTlGQTg1RDMxMUU5OUIxRTlBNTdDOEJCRThDQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PvvD+EkAAA/pSURBVHja7F0LkFxV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"}},"time_used":13,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":13,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/select_arrow.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.781Z","timestamp":1785158433781,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/select_arrow.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/styles/custom.css\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 404 \r\ndate: Mon, 27 Jul 2026 13:20:34 GMT\r\ncontent-type: text/html\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=SEOzMRaaHQJfqpT39oRMdteM0YkzSGQqih8dRIYgGPH8FnWdHxPMwGEmUtUNpPchLJRHUKvdGSlebaDV32qOB3AxqPvGJftcQOvjEWEpV6x5FRvNYYTpxhVUHyjuyFcReZqaOg%3D%3D\"}]}\r\npriority: u=4,i\r\ncache-control: private, no-cache, no-store, must-revalidate, max-age=0\r\npragma: no-cache\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\ncf-cache-status: BYPASS\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncontent-encoding: zstd\r\ncf-ray: a21bf1332cde56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"404","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"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":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1251,"size_decoded":1444,"mime_type":"text/html","magic":"HTML document, ASCII text, with CRLF, LF line terminators","md5":"8150f458ed6fb9b1db4e5cfa57a1a281","sha1":"6e5726854d28687b560d7fdcb5c782c425c7dfb9","sha256":"4c13d452dd5d49671bd93ca32f2b4f85c78e39b6ab0ad1f38d98ed267f8fd896","sha512":"4cc6a112673aef8bb8bb8a385c26791b805d43bb707b509880e894f1c83bab4e16f13de187036c5f660c3bec1d286258396b7bde65c5d7945c5019665196818c","ssdeep":"","tlshash":"c021353ec1c1560ae0271164fbc1f7a86669825291970f703b9eb176f6cd0bb56a36c8","first_seen":"2024-02-08T16:48:55Z","last_seen":"2026-08-17T23:08:37.350025Z","times_seen":150000,"resource_available":true,"data":"PCFET0NUWVBFIGh0bWw+CjxodG1sIHN0eWxlPSJoZWlnaHQ6MTAwJSI+CjxoZWFkPgo8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIHNocmluay10by1maXQ9bm8iIC8+Cjx0aXRsZT4gNDA0IE5vdCBGb3VuZA0KPC90aXRsZT48c3R5bGU+QG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTpkYXJrKXtib2R5e2JhY2tncm91bmQtY29sb3I6IzAwMCFpbXBvcnRhbnR9fTwvc3R5bGU+PC9oZWFkPgo8Ym9keSBzdHlsZT0iY29sb3I6ICM0NDQ7IG1hcmdpbjowO2ZvbnQ6IG5vcm1hbCAxNHB4LzIwcHggQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgaGVpZ2h0OjEwMCU7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7Ij4KPGRpdiBzdHlsZT0iaGVpZ2h0OmF1dG87IG1pbi1oZWlnaHQ6MTAwJTsgIj4gICAgIDxkaXYgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6ODAwcHg7IG1hcmdpbi1sZWZ0OiAtNDAwcHg7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6IDMwJTsgbGVmdDo1MCU7Ij4KICAgICAgICA8aDEgc3R5bGU9Im1hcmdpbjowOyBmb250LXNpemU6MTUwcHg7IGxpbmUtaGVpZ2h0OjE1MHB4OyBmb250LXdlaWdodDpib2xkOyI+NDA0PC9oMT4KPGgyIHN0eWxlPSJtYXJnaW4tdG9wOjIwcHg7Zm9udC1zaXplOiAzMHB4OyI+Tm90IEZvdW5kDQo8L2gyPgo8cD5UaGUgcmVzb3VyY2UgcmVxdWVzdGVkIGNvdWxkIG5vdCBiZSBmb3VuZCBvbiB0aGlzIHNlcnZlciE8L3A+CjwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiNmMGYwZjA7IGZvbnQtc2l6ZToxMnB4O21hcmdpbjphdXRvO3BhZGRpbmc6MHB4IDMwcHggMHB4IDMwcHg7cG9zaXRpb246cmVsYXRpdmU7Y2xlYXI6Ym90aDtoZWlnaHQ6MTAwcHg7bWFyZ2luLXRvcDotMTAxcHg7YmFja2dyb3VuZC1jb2xvcjojNDc0NzQ3O2JvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTUpO2JveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIGluc2V0OyI+Cjxicj5Qcm91ZGx5IHBvd2VyZWQgYnkgTGl0ZVNwZWVkIFdlYiBTZXJ2ZXI8cD5QbGVhc2UgYmUgYWR2aXNlZCB0aGF0IExpdGVTcGVlZCBUZWNobm9sb2dpZXMgSW5jLiBpcyBub3QgYSB3ZWIgaG9zdGluZyBjb21wYW55IGFuZCwgYXMgc3VjaCwgaGFzIG5vIGNvbnRyb2wgb3ZlciBjb250ZW50IGZvdW5kIG9uIHRoaXMgc2l0ZS48L3A+PC9kaXY+PC9ib2R5PjwvaHRtbD4K"}},"time_used":1117,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":1117,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":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/4ekOcDG2D8E","date":"2026-07-27T13:20:34.369Z","timestamp":1785158434369,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"upload.video.google.com","organization":""},"issuer":{"commonName":"WR2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:20 GMT","end":"Mon, 21 Sep 2026 08:39:19 GMT"},"fingerprint":{"sha1":"2A:E6:04:0E:76:A4:02:27:67:28:31:4D:E5:61:19:26:CA:0E:32:84","sha256":"D4:ED:C4:F8:DB:31:8A:2D:35:15:01:14:C0:49:CB:47:FF:5B:CC:17:14:82:63:9B:A8:6F:61:4D:AA:E5:96:94"}}},"request":{"raw":"OPTIONS /$rpc/google.internal.waa.v1.Waa/GenerateIT HTTP/1.1\r\nHost: jnn-pa.googleapis.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nAccess-Control-Request-Method: POST\r\nAccess-Control-Request-Headers: content-type,x-goog-api-key\r\nReferer: https://www.youtube.com/\r\nOrigin: https://www.youtube.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"OPTIONS"},"response":{"raw":"HTTP/2 200 \r\naccess-control-allow-origin: https://www.youtube.com\r\nvary: origin, referer, x-origin\r\naccess-control-allow-credentials: true\r\naccess-control-allow-methods: DELETE,GET,HEAD,OPTIONS,PATCH,POST,PUT\r\naccess-control-allow-headers: content-type,x-goog-api-key\r\naccess-control-max-age: 3600\r\ndate: Mon, 27 Jul 2026 13:20:34 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-08-17T23:37:29.17424Z","times_seen":17945477,"resource_available":true,"data":""}},"time_used":53,"timings":{"blocked":0,"dns":1,"connect":8,"send":0,"wait":23,"receive":0,"ssl":20},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/startedicon2.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.551Z","timestamp":1785158432551,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/startedicon2.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=L3HlabKKZ7RcDbAgpHMX0p0GENLiJKRN%2FzweULymIhGZoczFu%2FjGkQIm8V4sP3JJBYOIGgi%2FUgjnFdodmGI8CG88ug4roDhmSjfdunZZNgAeFZWCjKKvh5zYn3BNy%2Fr9EpQOlw%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b7c7f56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 5966\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":5966,"size_decoded":6730,"mime_type":"image/png","magic":"PNG image data, 128 x 128, 8-bit/color RGBA, non-interlaced","md5":"4b7006e2efcdc76fb103d68874cb07e3","sha1":"3c2e6b03eedc15a71ac3b040ede49067f45ca676","sha256":"0bac37f0ac9b538127008bee9d29ca02b16f7cd744ec729b785c21cfcf05a640","sha512":"78b506605af9c29525a27a50c8e8195f9218117fee8741afb74fd9dc7cb53c222940e16c73b64a2bbb89f6f01597641b7fb9d8f4b7cc0261ef5757023cfc521d","ssdeep":"96:0Y2kIHm5YuWfhB2kc536/F06ER47jbyp00qUu1RS7wpAgNsZ4H8nfYlNW:0XmrWJhc5Kt0BRtp9qBmVgkm8glNW","tlshash":"cac18d47f9648c00d64695e36c94d03b89bbd813eb68790891ee198b2f63a3b175a0de","first_seen":"2024-09-19T20:45:30.949233Z","last_seen":"2026-07-27T13:21:39.098144Z","times_seen":20,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODJBNzg4Qjg4NUQ1MTFFOUJGOTlFOTJGQ0EwMDA4RTEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODJBNzg4Qjk4NUQ1MTFFOUJGOTlFOTJGQ0EwMDA4RTEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4MkE3ODhCNjg1RDUxMUU5QkY5OUU5MkZDQTAwMDhFMSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4MkE3ODhCNzg1RDUxMUU5QkY5OUU5MkZDQTAwMDhFMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PlplW9kAABPCSURBVHja7F0JfBXV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"}},"time_used":16,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/planicon5.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.548Z","timestamp":1785158432548,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/planicon5.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=CC8EAJmgPX9GcZhitai%2FV38YQ7wPqAuKhMJGfR41tPdpD3jjAxGIBbdQb%2Fza6bPlGcvuCb2PK50jQ40Tgz%2BlDWROXU3Cq7gN7WNE5tR%2Bed2csp8APib8b8ZCWAKmY8BPtE7eRQ%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b6c7b56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 4314\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":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":4314,"size_decoded":5078,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"a134ef175559041c61e7a38900713a71","sha1":"1348ec16112a889b1eccb428e769127da1f82893","sha256":"95635ac5acfac47fa4da250edeeb53e5a4abdee95c90dc4d6d09bad4b7dcb9b9","sha512":"2794dee09fb545defa3becc071ddb5421e2cde5f0ca5b000c22fb2156215240496a54cbabaa1cfa0570f5595f62c409bcf5e759ed8728cacd47ce2dceab1c7c2","ssdeep":"96:PY2VUkzcMkXHydBerdWvH2tFXuuNwgW09cX:PxmWSsvH2tIrgW09cX","tlshash":"62914c1e9400fd45815a65c289e6a097c553f5a1cfe8e376769fc8341db485248048df","first_seen":"2026-01-22T04:28:08.526427Z","last_seen":"2026-07-27T13:21:39.109045Z","times_seen":4,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OTg5RjcwMTk4NUQ0MTFFOThFNzRBODgyOUM5RUY0QjQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OTg5RjcwMUE4NUQ0MTFFOThFNzRBODgyOUM5RUY0QjQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo5ODlGNzAxNzg1RDQxMUU5OEU3NEE4ODI5QzlFRjRCNCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo5ODlGNzAxODg1RDQxMUU5OEU3NEE4ODI5QzlFRjRCNCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqBFFm4AAA1OSURBVHja7BsJdE3X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"}},"time_used":15,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":15,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.smartsuppchat.com/loader.js?","fqdn":"www.smartsuppchat.com","domain":"smartsuppchat.com","tld":"com"},"ip":{"addr":"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://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.804Z","timestamp":1785158432804,"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://uniz-coinzltd.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 13:20:39 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: k0taRmw5UiVv2x2oiD5e5ohd8QFXurHWgi5ySONf1o7vhvlJHj/5kx+9lOMCFLe7pABdVHA\r\nx-77-nzt-ray: e2f754208723bf03275b676a94499127\r\nx-77-cache: HIT\r\nx-77-age: 12\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nserver: CDN77-Turbo\r\nx-77-pop: stockholmSE\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"CDN77","description":"CDN77 is a content delivery network (CDN).","website":"https://www.cdn77.com","common_platform_enumeration":"","icon":"CDN77.png","categories":["CDN"]}],"data":{"size":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-08-17T19:58:20.299653Z","times_seen":8490,"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":6865,"timings":{"blocked":-1,"dns":107,"connect":10,"send":0,"wait":9,"receive":0,"ssl":6739},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/825.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"52.84.50.71","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.401Z","timestamp":1785158433401,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/825.png HTTP/1.1\r\nHost: s2.coinmarketcap.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncontent-type: image/png\r\ncontent-length: 674\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Fri, 28 Jul 2023 07:44:51 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 07:40:30 GMT\r\netag: \"25a8a1e3479b793e8bcddc8b2ba726a9\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 20404\r\nvia: 1.1 bb489e045ccdb24c55a720f2ea03e7f0.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: OSL50-P3\r\nx-amz-cf-id: IJ_Bqc20DzUFT_6YfodDD-Xsi28T25_BdiPRkuLFaHOSxCQ8ZySDlQ==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":674,"size_decoded":1207,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"25a8a1e3479b793e8bcddc8b2ba726a9","sha1":"248492192bb393c84661daab721fcc5d0b82d165","sha256":"2d5a29e2c8a731b9c0891dfa54c3bf753ad5bba2911e71ebca654c273cf08748","sha512":"758bae768d116e95d923a254204ae52624a0bf3a4578fe62bc9039659c45655240b77e9bb92433669cc90f6de32c4df4e5bd83fc632f7c71a85a285446272159","ssdeep":"","tlshash":"dd014e4a0e257a702f230e7325bf2d4f102964e012b55986604eb1338e1eaed142062a","first_seen":"2023-08-15T00:41:50Z","last_seen":"2026-08-17T21:34:38.528953Z","times_seen":2053,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAACaUlEQVR4Xu2aPW7CMBiGOQJH6BE4AkfoEThCj8ANIiWwsCAmNnoBJCQ2JtiYUBc2Bla2Vl9Vq+R1En/+xQY/0rMQ298PdpSU9nqZTCaTyfCpqu+onU4HmLI7iqIvBYxRb2CgeL1i6vZU1aYhULw6BwOkoDNw4XQcYin6TCZfDQunozW4YIoagwt1GBqM32lRvGFpaqpqLC3UYWgwvlJtcAGFocH4SsuywBLbwckMQ4PxWbKg84ITGYYG4zNlPCHKk1gOVyuW+8sFa6mB49vE+Gw70bzxmbg5n7HmGjjei63gQA/G2wAc5MkoGkDWMLzxdUnnVFUsB1rD6sy3WZaj/wbgRQP7sxnm7o23xUKKb+Rf8RvpgoaUzKOw3hn0oid9qGkTtG0Hy6U0llQdCxxPUpM/Tycc+ov1bpA+0FQwWq+la02aNAClb15gvQtc3QO4umjAvVYNqIEXmRJ0A8TPVbp4siNM59aLF+AghvfQYy5edy0+Shs1oBMcrFAFbfmP7VZ7l9A9RXVcCJynVAk9IOAkhZRsaMa7nZQHw3cstxmDJgiLwwFzdcb8eJTisdX+yYwm4CIW0lmlb+16u2FdNWiM0bnuUrt4geMmkKpzjeOtNS7+HlzUwqANcAoubmiwBngBgxgYpAFewWCaem+Adyz/ScJrA4KCwZl6a8BDwCQYemnAQ8FkFNIfSvBN0OqtMAowqVBGBSbnV8ZPXI9ATtSHkRYvkBN2axJg0q5MCkze1iTBIkxNGixG16egqvZSYSonkzkukzZUEBbZ5tMVL+A04WmLF2DB6EuARb9U8YKXLj6TyWQycfADMiVWaB1DBnAAAAAASUVORK5CYII="}},"time_used":9,"timings":{"blocked":2,"dns":0,"connect":0,"send":0,"wait":7,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"static.getbutton.io/widget/bundle.js","fqdn":"static.getbutton.io","domain":"getbutton.io","tld":"io"},"ip":{"addr":"104.26.14.221","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:36.169Z","timestamp":1785158436169,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"getbutton.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Tue, 16 Jun 2026 00:45:37 GMT","end":"Mon, 14 Sep 2026 01:45:33 GMT"},"fingerprint":{"sha1":"DC:2F:40:2C:2E:8F:A1:FE:B6:A3:D2:1B:01:7E:28:02:66:38:0E:86","sha256":"E1:C6:2E:FD:25:F8:44:CA:B3:2C:26:9B:A5:CB:26:9B:6D:77:7B:CF:2A:52:29:CD:23:39:99:E7:89:F4:41:57"}}},"request":{"raw":"GET /widget/bundle.js HTTP/1.1\r\nHost: static.getbutton.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 13:20:36 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: cloudflare\r\nlast-modified: Fri, 13 Feb 2026 07:15:48 GMT\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\netag: \"698ecfa4-6beb9\"\r\nexpires: Mon, 27 Jul 2026 15:21:51 GMT\r\ncache-control: max-age=14400\r\naccess-control-allow-origin: *\r\ncontent-encoding: gzip\r\nage: 3524\r\ncf-cache-status: HIT\r\nvary: accept-encoding\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=MNL2E6ktiqu0t1PFgUslcYHPRJ%2BhFlBI%2FM%2BPB1sWjqDUx9ujO3tjhKPPM%2FQWpwm8BdFt1O4HxElaMefyqEGzBOOKO4zClxS%2B%2FMABgxeibv%2Bk4nMhxlg0ka7Pt816%2FlltuvddbZs%3D\"}]}\r\ncf-ray: a21bf1420ce956cb-OSL\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":442041,"size_decoded":129351,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (65475)","md5":"bc3e8108dcd36c0d0c129a726dd8f47f","sha1":"db6320723c55ad91550a1ca87176058bed49d99c","sha256":"791450932271b1682c103cadb334baea8bf68100069c3c3eb317ed8a20098483","sha512":"821203cb21570cee7a989e40a417990e408949e7d239766562cfee62c0a0320c936bfbc8fcb2ecb35067ba1034eb7363d907edb72ccd878ee510640aa7a976b3","ssdeep":"6144:HSFryQhY3HpsS+U6qAcXha0oPKiqLVwoNbsR5LoQGnE2:xQhY3JsS+U6qASoPKiq+oNbsRFoQGnE2","tlshash":"53946de93290f0a653b352b700af240bf379641a785d8860a215ecdcf8b94ed513bf6d","first_seen":"2026-02-13T07:56:32.581356Z","last_seen":"2026-08-17T18:14:58.289529Z","times_seen":2901,"resource_available":true,"data":"LyohIEZvciBsaWNlbnNlIGluZm9ybWF0aW9uIHBsZWFzZSBzZWUgYnVuZGxlLmpzLkxJQ0VOU0UgKi8KIWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG8oZSl7dmFyIHQ7cmV0dXJuKHJbZV18fCh0PXJbZV09e2k6ZSxsOiExLGV4cG9ydHM6e319LG5bZV0uY2FsbCh0LmV4cG9ydHMsdCx0LmV4cG9ydHMsbyksdC5sPSEwLHQpKS5leHBvcnRzfXZhciBuLHI7bj1bZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1uKDE2OCl9LGZ1bmN0aW9uKGUsVWUsQmUpeyFmdW5jdGlvbihlKXtCZS5kKFVlLCJhIixmdW5jdGlvbigpe3JldHVybiB6ZX0pLEJlLmQoVWUsImIiLGZ1bmN0aW9uKCl7cmV0dXJuIFJlfSksQmUuZChVZSwiYyIsZnVuY3Rpb24oKXtyZXR1cm4gQX0pLEJlLmQoVWUsImUiLGZ1bmN0aW9uKCl7cmV0dXJuIE5lfSk7dmFyIGE9QmUoNTYpLHg9QmUoMCksZD1CZS5uKHgpLHQ9QmUoOTUpLFI9QmUubih0KSxOPUJlKDk2KSxEPUJlKDk3KSxVPUJlKDU4KSx0PUJlKDU3KSxCPUJlLm4odCk7ZnVuY3Rpb24gaygpe3JldHVybihrPU9iamVjdC5hc3NpZ258fGZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0xO3Q8YXJndW1lbnRzLmxlbmd0aDt0Kyspe3ZhciBuLHI9YXJndW1lbnRzW3RdO2ZvcihuIGluIHIpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHIsbikmJihlW25dPXJbbl0pfXJldHVybiBlfSkuYXBwbHkodGhpcyxhcmd1bWVudHMpfXZhciBGPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPVtlWzBdXSxyPTAsbz10Lmxlbmd0aDtyPG87cis9MSluLnB1c2godFtyXSxlW3IrMV0pO3JldHVybiBufSxjPWZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT09ZSYmIm9iamVjdCI9PXR5cGVvZiBlJiYiW29iamVjdCBPYmplY3RdIj09PShlLnRvU3RyaW5nP2UudG9TdHJpbmcoKTpPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkpJiYhT2JqZWN0KGEudHlwZU9mKShlKX0scD1PYmplY3QuZnJlZXplKFtdKSxTPU9iamVjdC5mcmVlemUoe30pO2Z1bmN0aW9uIEMoZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGV9ZnVuY3Rpb24gSChlKXtyZXR1cm4gZS5kaXNwbGF5TmFtZXx8ZS5uYW1lfHwiQ29tcG9uZW50In1mdW5jdGlvbiBtKGUpe3JldHVybiBlJiYic3RyaW5nIj09dHlwZW9mIGUuc3R5bGVkQ29tcG9uZW50SWR9dmFyIHU9dm9pZCAwIT09ZSYmKHtSRUFDVF9BUFBfQ09OVEFDVF9GT1JNX0hPU1Q6ImdldGJ1dHRvbi5pbyIsUkVBQ1RfQVBQX1ZBTElEQVRJT05fVVJMOiJodHRwczovL3dpZGdldC5nZXRidXR0b24uaW8vYXBpL3ZhbGlkYXRlIixSRUFDVF9BUFBfQUxMT1dFRF9ET01BSU5TX0xJU1Q6ImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIsUkVBQ1RfQVBQX0dPT0dMRU1BUFNfQVBJX0tFWToiQUl6YVN5Qnp4Tm8yLWxhSXpBVC1HcnFndDVVYVFoTVNzbFQxSEJFIixSRUFDVF9BUFBfQUlfQlVORExFX1VSTDoiaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifS5SRUFDVF9BUFBfU0NfQVRUUnx8e1JFQUNUX0FQUF9DT05UQUNUX0ZPUk1fSE9TVDoiZ2V0YnV0dG9uLmlvIixSRUFDVF9BUFBfVkFMSURBVElPTl9VUkw6Imh0dHBzOi8vd2lkZ2V0LmdldGJ1dHRvbi5pby9hcGkvdmFsaWRhdGUiLFJFQUNUX0FQUF9BTExPV0VEX0RPTUFJTlNfTElTVDoiYWRtaW4uZ2V0YnV0dG9uLmlvLCBuZXh0LmdldGJ1dHRvbi5pbywgMTI3LjAuMC4xLCBsb2NhbGhvc3QsIHRlc3QuZ2V0YnV0dG9uLmlvLCBkZXYuZ2V0YnV0dG9uLmlvLCBnZXRidXR0b24uaW8sIGFkbWluLnNob3BpZnkuY29tIixSRUFDVF9BUFBfR09PR0xFTUFQU19BUElfS0VZOiJBSXphU3lCenhObzItbGFJekFULUdycWd0NVVhUWhNU3NsVDFIQkUiLFJFQUNUX0FQUF9BSV9CVU5ETEVfVVJMOiJodHRwczovL3N0YXRpYy5nZXRidXR0b24uaW8vd2lkZ2V0L2J1bmRsZS1haS5qcyJ9LlNDX0FUVFIpfHwiZGF0YS1zdHlsZWQiLHM9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJiJIVE1MRWxlbWVudCJpbiB3aW5kb3csdD1Cb29sZWFuKCJib29sZWFuIj09dHlwZW9mIFNDX0RJU0FCTEVfU1BFRURZP1NDX0RJU0FCTEVfU1BFRURZOnZvaWQgMCE9PWUmJih2b2lkIDAhPT17UkVBQ1RfQVBQX0NPTlRBQ1RfRk9STV9IT1NUOiJnZXRidXR0b24uaW8iLFJFQUNUX0FQUF9WQUxJREFUSU9OX1VSTDoiaHR0cHM6Ly93aWRnZXQuZ2V0YnV0dG9uLmlvL2FwaS92YWxpZGF0ZSIsUkVBQ1RfQVBQX0FMTE9XRURfRE9NQUlOU19MSVNUOiJhZG1pbi5nZXRidXR0b24uaW8sIG5leHQuZ2V0YnV0dG9uLmlvLCAxMjcuMC4wLjEsIGxvY2FsaG9zdCwgdGVzdC5nZXRidXR0b24uaW8sIGRldi5nZXRidXR0b24uaW8sIGdldGJ1dHRvbi5pbywgYWRtaW4uc2hvcGlmeS5jb20iLFJFQUNUX0FQUF9HT09HTEVNQVBTX0FQSV9LRVk6IkFJemFTeUJ6eE5vMi1sYUl6QVQtR3JxZ3Q1VWFRaE1Tc2xUMUhCRSIsUkVBQ1RfQVBQX0FJX0JVTkRMRV9VUkw6Imh0dHBzOi8vc3RhdGljLmdldGJ1dHRvbi5pby93aWRnZXQvYnVuZGxlLWFpLmpzIn0uUkVBQ1RfQVBQX1NDX0RJU0FCTEVfU1BFRURZJiYiIiE9PXtSRUFDVF9BUFBfQ09OVEFDVF9GT1JNX0hPU1Q6ImdldGJ1dHRvbi5pbyIsUkVBQ1RfQVBQX1ZBTElEQVRJT05fVVJMOiJodHRwczovL3dpZGdldC5nZXRidXR0b24uaW8vYXBpL3ZhbGlkYXRlIixSRUFDVF9BUFBfQUxMT1dFRF9ET01BSU5TX0xJU1Q6ImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIsUkVBQ1RfQVBQX0dPT0dMRU1BUFNfQVBJX0tFWToiQUl6YVN5Qnp4Tm8yLWxhSXpBVC1HcnFndDVVYVFoTVNzbFQxSEJFIixSRUFDVF9BUFBfQUlfQlVORExFX1VSTDoiaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifS5SRUFDVF9BUFBfU0NfRElTQUJMRV9TUEVFRFk/ImZhbHNlIiE9PXtSRUFDVF9BUFBfQ09OVEFDVF9GT1JNX0hPU1Q6ImdldGJ1dHRvbi5pbyIsUkVBQ1RfQVBQX1ZBTElEQVRJT05fVVJMOiJodHRwczovL3dpZGdldC5nZXRidXR0b24uaW8vYXBpL3ZhbGlkYXRlIixSRUFDVF9BUFBfQUxMT1dFRF9ET01BSU5TX0xJU1Q6ImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIsUkVBQ1RfQVBQX0dPT0dMRU1BUFNfQVBJX0tFWToiQUl6YVN5Qnp4Tm8yLWxhSXpBVC1HcnFndDVVYVFoTVNzbFQxSEJFIixSRUFDVF9BUFBfQUlfQlVORExFX1VSTDoiaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifS5SRUFDVF9BUFBfU0NfRElTQUJMRV9TUEVFRFkmJntSRUFDVF9BUFBfQ09OVEFDVF9GT1JNX0hPU1Q6ImdldGJ1dHRvbi5pbyIsUkVBQ1RfQVBQX1ZBTElEQVRJT05fVVJMOiJodHRwczovL3dpZGdldC5nZXRidXR0b24uaW8vYXBpL3ZhbGlkYXRlIixSRUFDVF9BUFBfQUxMT1dFRF9ET01BSU5TX0xJU1Q6ImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIsUkVBQ1RfQVBQX0dPT0dMRU1BUFNfQVBJX0tFWToiQUl6YVN5Qnp4Tm8yLWxhSXpBVC1HcnFndDVVYVFoTVNzbFQxSEJFIixSRUFDVF9BUFBfQUlfQlVORExFX1VSTDoiaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifS5SRUFDVF9BUFBfU0NfRElTQUJMRV9TUEVFRFk6dm9pZCAwIT09e1JFQUNUX0FQUF9DT05UQUNUX0ZPUk1fSE9TVDoiZ2V0YnV0dG9uLmlvIixSRUFDVF9BUFBfVkFMSURBVElPTl9VUkw6Imh0dHBzOi8vd2lkZ2V0LmdldGJ1dHRvbi5pby9hcGkvdmFsaWRhdGUiLFJFQUNUX0FQUF9BTExPV0VEX0RPTUFJTlNfTElTVDoiYWRtaW4uZ2V0YnV0dG9uLmlvLCBuZXh0LmdldGJ1dHRvbi5pbywgMTI3LjAuMC4xLCBsb2NhbGhvc3QsIHRlc3QuZ2V0YnV0dG9uLmlvLCBkZXYuZ2V0YnV0dG9uLmlvLCBnZXRidXR0b24uaW8sIGFkbWluLnNob3BpZnkuY29tIixSRUFDVF9BUFBfR09PR0xFTUFQU19BUElfS0VZOiJBSXphU3lCenhObzItbGFJekFULUdycWd0NVVhUWhNU3NsVDFIQkUiLFJFQUNUX0FQUF9BSV9CVU5ETEVfVVJMOiJodHRwczovL3N0YXRpYy5nZXRidXR0b24uaW8vd2lkZ2V0L2J1bmRsZS1haS5qcyJ9LlNDX0RJU0FCTEVfU1BFRURZJiYiIiE9PXtSRUFDVF9BUFBfQ09OVEFDVF9GT1JNX0hPU1Q6ImdldGJ1dHRvbi5pbyIsUkVBQ1RfQVBQX1ZBTElEQVRJT05fVVJMOiJodHRwczovL3dpZGdldC5nZXRidXR0b24uaW8vYXBpL3ZhbGlkYXRlIixSRUFDVF9BUFBfQUxMT1dFRF9ET01BSU5TX0xJU1Q6ImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIsUkVBQ1RfQVBQX0dPT0dMRU1BUFNfQVBJX0tFWToiQUl6YVN5Qnp4Tm8yLWxhSXpBVC1HcnFndDVVYVFoTVNzbFQxSEJFIixSRUFDVF9BUFBfQUlfQlVORExFX1VSTDoiaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifS5TQ19ESVNBQkxFX1NQRUVEWSYmImZhbHNlIiE9PXtSRUFDVF9BUFBfQ09OVEFDVF9GT1JNX0hPU1Q6ImdldGJ1dHRvbi5pbyIsUkVBQ1RfQVBQX1ZBTElEQVRJT05fVVJMOiJodHRwczovL3dpZGdldC5nZXRidXR0b24uaW8vYXBpL3ZhbGlkYXRlIixSRUFDVF9BUFBfQUxMT1dFRF9ET01BSU5TX0xJU1Q6ImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIsUkVBQ1RfQVBQX0dPT0dMRU1BUFNfQVBJX0tFWToiQUl6YVN5Qnp4Tm8yLWxhSXpBVC1HcnFndDVVYVFoTVNzbFQxSEJFIixSRUFDVF9BUFBfQUlfQlVORExFX1VSTDoiaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifS5TQ19ESVNBQkxFX1NQRUVEWSYme1JFQUNUX0FQUF9DT05UQUNUX0ZPUk1fSE9TVDoiZ2V0YnV0dG9uLmlvIixSRUFDVF9BUFBfVkFMSURBVElPTl9VUkw6Imh0dHBzOi8vd2lkZ2V0LmdldGJ1dHRvbi5pby9hcGkvdmFsaWRhdGUiLFJFQUNUX0FQUF9BTExPV0VEX0RPTUFJTlNfTElTVDoiYWRtaW4uZ2V0YnV0dG9uLmlvLCBuZXh0LmdldGJ1dHRvbi5pbywgMTI3LjAuMC4xLCBsb2NhbGhvc3QsIHRlc3QuZ2V0YnV0dG9uLmlvLCBkZXYuZ2V0YnV0dG9uLmlvLCBnZXRidXR0b24uaW8sIGFkbWluLnNob3BpZnkuY29tIixSRUFDVF9BUFBfR09PR0xFTUFQU19BUElfS0VZOiJBSXphU3lCenhObzItbGFJekFULUdycWd0NVVhUWhNU3NsVDFIQkUiLFJFQUNUX0FQUF9BSV9CVU5ETEVfVVJMOiJodHRwczovL3N0YXRpYy5nZXRidXR0b24uaW8vd2lkZ2V0L2J1bmRsZS1haS5qcyJ9LlNDX0RJU0FCTEVfU1BFRURZKSksVj17fTtmdW5jdGlvbiBoKGUpe2Zvcih2YXIgdD1hcmd1bWVudHMubGVuZ3RoLG49bmV3IEFycmF5KDE8dD90LTE6MCkscj0xO3I8dDtyKyspbltyLTFdPWFyZ3VtZW50c1tyXTt0aHJvdyBuZXcgRXJyb3IoIkFuIGVycm9yIG9jY3VycmVkLiBTZWUgaHR0cHM6Ly9naXQuaW8vSlVJYUUjIitlKyIgZm9yIG1vcmUgaW5mb3JtYXRpb24uIisoMDxuLmxlbmd0aD8iIEFyZ3M6ICIrbi5qb2luKCIsICIpOiIiKSl9ZnVuY3Rpb24gcihlKXtpZihuLmhhcyhlKSlyZXR1cm4gbi5nZXQoZSk7Zm9yKDtmLmhhcyhvKTspbysrO3ZhciB0PW8rKztyZXR1cm4gbi5zZXQoZSx0KSxmLnNldCh0LGUpLHR9ZnVuY3Rpb24gJChlKXt2YXIgdD1kb2N1bWVudC5oZWFkLHI9ZXx8dCxlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIiksdD12b2lkIDAhPT0odD1mdW5jdGlvbigpe2Zvcih2YXIgZT1yLmNoaWxkTm9kZXMsdD1lLmxlbmd0aDswPD10O3QtLSl7dmFyIG49ZVt0XTtpZihuJiYxPT09bi5ub2RlVHlwZSYmbi5oYXNBdHRyaWJ1dGUodSkpcmV0dXJuIG59fSgpKT90Lm5leHRTaWJsaW5nOm51bGwsbj0oZS5zZXRBdHRyaWJ1dGUodSwiYWN0aXZlIiksZS5zZXRBdHRyaWJ1dGUoImRhdGEtc3R5bGVkLXZlcnNpb24iLCI1LjMuMTEiKSxpKCkpO3JldHVybiBuJiZlLnNldEF0dHJpYnV0ZSgibm9uY2UiLG4pLHIuaW5zZXJ0QmVmb3JlKGUsdCksZX1mdW5jdGlvbiBXKGUpe3JldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGUrKDI1PGU/Mzk6OTcpKX0oZT1pZS5wcm90b3R5cGUpLmluZGV4T2ZHcm91cD1mdW5jdGlvbihlKXtmb3IodmFyIHQ9MCxuPTA7bjxlO24rKyl0Kz10aGlzLmdyb3VwU2l6ZXNbbl07cmV0dXJuIHR9LGUuaW5zZXJ0UnVsZXM9ZnVuY3Rpb24oZSx0KXtpZihlPj10aGlzLmdyb3VwU2l6ZXMubGVuZ3RoKXtmb3IodmFyIG49dGhpcy5ncm91cFNpemVzLHI9bi5sZW5ndGgsbz1yO288PWU7KShvPDw9MSk8MCYmaCgxNiwiIitlKTt0aGlzLmdyb3VwU2l6ZXM9bmV3IFVpbnQzMkFycmF5KG8pLHRoaXMuZ3JvdXBTaXplcy5zZXQobiksdGhpcy5sZW5ndGg9bztmb3IodmFyIGE9cjthPG87YSsrKXRoaXMuZ3JvdXBTaXplc1thXT0wfWZvcih2YXIgaT10aGlzLmluZGV4T2ZHcm91cChlKzEpLGw9MCxjPXQubGVuZ3RoO2w8YztsKyspdGhpcy50YWcuaW5zZXJ0UnVsZShpLHRbbF0pJiYodGhpcy5ncm91cFNpemVzW2VdKyssaSsrKX0sZS5jbGVhckdyb3VwPWZ1bmN0aW9uKGUpe2lmKGU8dGhpcy5sZW5ndGgpe3ZhciB0PXRoaXMuZ3JvdXBTaXplc1tlXSxuPXRoaXMuaW5kZXhPZkdyb3VwKGUpLHI9bit0O3RoaXMuZ3JvdXBTaXplc1tlXT0wO2Zvcih2YXIgbz1uO288cjtvKyspdGhpcy50YWcuZGVsZXRlUnVsZShuKX19LGUuZ2V0R3JvdXA9ZnVuY3Rpb24oZSl7dmFyIHQ9IiI7aWYoIShlPj10aGlzLmxlbmd0aHx8MD09PXRoaXMuZ3JvdXBTaXplc1tlXSkpZm9yKHZhciBuPXRoaXMuZ3JvdXBTaXplc1tlXSxlPXRoaXMuaW5kZXhPZkdyb3VwKGUpLHI9ZStuLG89ZTtvPHI7bysrKXQrPXRoaXMudGFnLmdldFJ1bGUobykrIi8qIXNjKi9cbiI7cmV0dXJuIHR9O3ZhciBHPWllLG49bmV3IE1hcCxmPW5ldyBNYXAsbz0xLHE9ZnVuY3Rpb24oZSx0KXtvPD10JiYobz10KzEpLG4uc2V0KGUsdCksZi5zZXQodCxlKX0sWj0ic3R5bGVbIit1KyddW2RhdGEtc3R5bGVkLXZlcnNpb249IjUuMy4xMSJdJyxYPW5ldyBSZWdFeHAoIl4iK3UrJ1xcLmcoXFxkKylcXFtpZD0iKFtcXHdcXGQtXSspIlxcXS4qPyIoW14iXSopJyksWT1mdW5jdGlvbihlLHQsbil7Zm9yKHZhciByLG89bi5zcGxpdCgiLCIpLGE9MCxpPW8ubGVuZ3RoO2E8aTthKyspKHI9b1thXSkmJmUucmVnaXN0ZXJOYW1lKHQscil9LGk9ZnVuY3Rpb24oKXtyZXR1cm4gQmUubmN9LFE9KChlPWFlLnByb3RvdHlwZSkuaW5zZXJ0UnVsZT1mdW5jdGlvbihlLHQpe3RyeXtyZXR1cm4gdGhpcy5zaGVldC5pbnNlcnRSdWxlKHQsZSksdGhpcy5sZW5ndGgrKywhMH1jYXRjaChlKXtyZXR1cm4hMX19LGUuZGVsZXRlUnVsZT1mdW5jdGlvbihlKXt0aGlzLnNoZWV0LmRlbGV0ZVJ1bGUoZSksdGhpcy5sZW5ndGgtLX0sZS5nZXRSdWxlPWZ1bmN0aW9uKGUpe2U9dGhpcy5zaGVldC5jc3NSdWxlc1tlXTtyZXR1cm4gdm9pZCAwIT09ZSYmInN0cmluZyI9PXR5cGVvZiBlLmNzc1RleHQ/ZS5jc3NUZXh0OiIifSxhZSksSz0oKGU9b2UucHJvdG90eXBlKS5pbnNlcnRSdWxlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU8PXRoaXMubGVuZ3RoJiYwPD1lJiYodD1kb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0KSxlPXRoaXMubm9kZXNbZV0sdGhpcy5lbGVtZW50Lmluc2VydEJlZm9yZSh0LGV8fG51bGwpLHRoaXMubGVuZ3RoKyssITApfSxlLmRlbGV0ZVJ1bGU9ZnVuY3Rpb24oZSl7dGhpcy5lbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMubm9kZXNbZV0pLHRoaXMubGVuZ3RoLS19LGUuZ2V0UnVsZT1mdW5jdGlvbihlKXtyZXR1cm4gZTx0aGlzLmxlbmd0aD90aGlzLm5vZGVzW2VdLnRleHRDb250ZW50OiIifSxvZSksSj0oKGU9cmUucHJvdG90eXBlKS5pbnNlcnRSdWxlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU8PXRoaXMubGVuZ3RoJiYodGhpcy5ydWxlcy5zcGxpY2UoZSwwLHQpLHRoaXMubGVuZ3RoKyssITApfSxlLmRlbGV0ZVJ1bGU9ZnVuY3Rpb24oZSl7dGhpcy5ydWxlcy5zcGxpY2UoZSwxKSx0aGlzLmxlbmd0aC0tfSxlLmdldFJ1bGU9ZnVuY3Rpb24oZSl7cmV0dXJuIGU8dGhpcy5sZW5ndGg/dGhpcy5ydWxlc1tlXToiIn0scmUpLGVlPXMsdGU9e2lzU2VydmVyOiFzLHVzZUNTU09NSW5qZWN0aW9uOiF0fSxsPShnLnJlZ2lzdGVySWQ9ciwoZT1nLnByb3RvdHlwZSkucmVjb25zdHJ1Y3RXaXRoT3B0aW9ucz1mdW5jdGlvbihlLHQpe3JldHVybiB2b2lkIDA9PT10JiYodD0hMCksbmV3IGcoayh7fSx0aGlzLm9wdGlvbnMse30sZSksdGhpcy5ncyx0JiZ0aGlzLm5hbWVzfHx2b2lkIDApfSxlLmFsbG9jYXRlR1NJbnN0YW5jZT1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5nc1tlXT0odGhpcy5nc1tlXXx8MCkrMX0sZS5nZXRUYWc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50YWd8fCh0aGlzLnRhZz0oZT0obj10aGlzLm9wdGlvbnMpLmlzU2VydmVyLHQ9bi51c2VDU1NPTUluamVjdGlvbixuPW4udGFyZ2V0LGU9bmV3KGU/Sjp0P1E6SykobiksbmV3IEcoZSkpKTt2YXIgZSx0LG59LGUuaGFzTmFtZUZvcklkPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMubmFtZXMuaGFzKGUpJiZ0aGlzLm5hbWVzLmdldChlKS5oYXModCl9LGUucmVnaXN0ZXJOYW1lPWZ1bmN0aW9uKGUsdCl7dmFyIG47cihlKSx0aGlzLm5hbWVzLmhhcyhlKT90aGlzLm5hbWVzLmdldChlKS5hZGQodCk6KChuPW5ldyBTZXQpLmFkZCh0KSx0aGlzLm5hbWVzLnNldChlLG4pKX0sZS5pbnNlcnRSdWxlcz1mdW5jdGlvbihlLHQsbil7dGhpcy5yZWdpc3Rlck5hbWUoZSx0KSx0aGlzLmdldFRhZygpLmluc2VydFJ1bGVzKHIoZSksbil9LGUuY2xlYXJOYW1lcz1mdW5jdGlvbihlKXt0aGlzLm5hbWVzLmhhcyhlKSYmdGhpcy5uYW1lcy5nZXQoZSkuY2xlYXIoKX0sZS5jbGVhclJ1bGVzPWZ1bmN0aW9uKGUpe3RoaXMuZ2V0VGFnKCkuY2xlYXJHcm91cChyKGUpKSx0aGlzLmNsZWFyTmFtZXMoZSl9LGUuY2xlYXJUYWc9ZnVuY3Rpb24oKXt0aGlzLnRhZz12b2lkIDB9LGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtmb3IodmFyIGU9dGhpcyx0PWUuZ2V0VGFnKCksbj10Lmxlbmd0aCxyPSIiLG89MDtvPG47bysrKXtjPW87dmFyIGEsaSxsLGM9Zi5nZXQoYyk7dm9pZCAwIT09YyYmKGE9ZS5uYW1lcy5nZXQoYyksaT10LmdldEdyb3VwKG8pLGEpJiZpJiZhLnNpemUmJihjPXUrIi5nIitvKydbaWQ9IicrYysnIl0nLGw9IiIsdm9pZCAwIT09YSYmYS5mb3JFYWNoKGZ1bmN0aW9uKGUpezA8ZS5sZW5ndGgmJihsKz1lKyIsIil9KSxyKz1pK2MrJ3tjb250ZW50OiInK2wrJyJ9Lyohc2MqL1xuJyl9cmV0dXJuIHJ9LGcpLG5lPS8oYSkoZCkvZ2k7ZnVuY3Rpb24gZyhlLHQsbil7aWYodm9pZCAwPT09ZSYmKGU9Uyksdm9pZCAwPT09dCYmKHQ9e30pLHRoaXMub3B0aW9ucz1rKHt9LHRlLHt9LGUpLHRoaXMuZ3M9dCx0aGlzLm5hbWVzPW5ldyBNYXAobiksdGhpcy5zZXJ2ZXI9ISFlLmlzU2VydmVyLCF0aGlzLnNlcnZlciYmcyYmZWUpe2VlPSExO2Zvcih2YXIgcj10aGlzLG89ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChaKSxhPTAsaT1vLmxlbmd0aDthPGk7YSsrKXt2YXIgbD1vW2FdO2wmJiJhY3RpdmUiIT09bC5nZXRBdHRyaWJ1dGUodSkmJihmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0odC50ZXh0Q29udGVudHx8IiIpLnNwbGl0KCIvKiFzYyovXG4iKSxyPVtdLG89MCxhPW4ubGVuZ3RoO288YTtvKyspe3ZhciBpLGwsYyx1PW5bb10udHJpbSgpO3UmJigoaT11Lm1hdGNoKFgpKT8obD0wfHBhcnNlSW50KGlbMV0sMTApLGM9aVsyXSwwIT1sJiYocShjLGwpLFkoZSxjLGlbM10pLGUuZ2V0VGFnKCkuaW5zZXJ0UnVsZXMobCxyKSksci5sZW5ndGg9MCk6ci5wdXNoKHUpKX19KHIsbCksbC5wYXJlbnROb2RlKSYmbC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGwpfX19ZnVuY3Rpb24gcmUoZSl7dGhpcy5ydWxlcz1bXSx0aGlzLmxlbmd0aD0wfWZ1bmN0aW9uIG9lKGUpe2U9dGhpcy5lbGVtZW50PSQoZSk7dGhpcy5ub2Rlcz1lLmNoaWxkTm9kZXMsdGhpcy5sZW5ndGg9MH1mdW5jdGlvbiBhZShlKXtlPXRoaXMuZWxlbWVudD0kKGUpO2UuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiIpKSx0aGlzLnNoZWV0PWZ1bmN0aW9uKGUpe2lmKGUuc2hlZXQpcmV0dXJuIGUuc2hlZXQ7Zm9yKHZhciB0PWRvY3VtZW50LnN0eWxlU2hlZXRzLG49MCxyPXQubGVuZ3RoO248cjtuKyspe3ZhciBvPXRbbl07aWYoby5vd25lck5vZGU9PT1lKXJldHVybiBvfWgoMTcpfShlKSx0aGlzLmxlbmd0aD0wfWZ1bmN0aW9uIGllKGUpe3RoaXMuZ3JvdXBTaXplcz1uZXcgVWludDMyQXJyYXkoNTEyKSx0aGlzLmxlbmd0aD01MTIsdGhpcy50YWc9ZX1mdW5jdGlvbiBiKGUpe2Zvcih2YXIgdD0iIixuPU1hdGguYWJzKGUpOzUyPG47bj1uLzUyfDApdD1XKG4lNTIpK3Q7cmV0dXJuKFcobiU1MikrdCkucmVwbGFjZShuZSwiJDEtJDIiKX1mdW5jdGlvbiB5KGUsdCl7Zm9yKHZhciBuPXQubGVuZ3RoO247KWU9MzMqZV50LmNoYXJDb2RlQXQoLS1uKTtyZXR1cm4gZX1mdW5jdGlvbiBsZShlKXtyZXR1cm4geSg1MzgxLGUpfWZ1bmN0aW9uIGNlKGUpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCs9MSl7dmFyIG49ZVt0XTtpZihDKG4pJiYhbShuKSlyZXR1cm4hMX1yZXR1cm4hMH12YXIgdWU9bGUoIjUuMy4xMSIpLHNlPShwZS5wcm90b3R5cGUuZ2VuZXJhdGVBbmRJbmplY3RTdHlsZXM9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPXRoaXMuY29tcG9uZW50SWQsbz1bXTtpZih0aGlzLmJhc2VTdHlsZSYmby5wdXNoKHRoaXMuYmFzZVN0eWxlLmdlbmVyYXRlQW5kSW5qZWN0U3R5bGVzKGUsdCxuKSksdGhpcy5pc1N0YXRpYyYmIW4uaGFzaCl0aGlzLnN0YXRpY1J1bGVzSWQmJnQuaGFzTmFtZUZvcklkKHIsdGhpcy5zdGF0aWNSdWxlc0lkKT9vLnB1c2godGhpcy5zdGF0aWNSdWxlc0lkKTooYT1qKHRoaXMucnVsZXMsZSx0LG4pLmpvaW4oIiIpLGk9Yih5KHRoaXMuYmFzZUhhc2gsYSk+Pj4wKSx0Lmhhc05hbWVGb3JJZChyLGkpfHwoYT1uKGEsIi4iK2ksdm9pZCAwLHIpLHQuaW5zZXJ0UnVsZXMocixpLGEpKSxvLnB1c2goaSksdGhpcy5zdGF0aWNSdWxlc0lkPWkpO2Vsc2V7Zm9yKHZhciBhLGksbD10aGlzLnJ1bGVzLmxlbmd0aCxjPXkodGhpcy5iYXNlSGFzaCxuLmhhc2gpLHU9IiIscz0wO3M8bDtzKyspe3ZhciBmPXRoaXMucnVsZXNbc107InN0cmluZyI9PXR5cGVvZiBmP3UrPWY6ZiYmKGY9aihmLGUsdCxuKSxmPUFycmF5LmlzQXJyYXkoZik/Zi5qb2luKCIiKTpmLGM9eShjLGYrcyksdSs9Zil9dSYmKGE9YihjPj4+MCksdC5oYXNOYW1lRm9ySWQocixhKXx8KGk9bih1LCIuIithLHZvaWQgMCxyKSx0Lmluc2VydFJ1bGVzKHIsYSxpKSksby5wdXNoKGEpKX1yZXR1cm4gby5qb2luKCIgIil9LHBlKSxmZT0vXlxzKlwvXC8uKiQvZ20sZGU9WyI6IiwiWyIsIi4iLCIjIl07ZnVuY3Rpb24gcGUoZSx0LG4pe3RoaXMucnVsZXM9ZSx0aGlzLnN0YXRpY1J1bGVzSWQ9IiIsdGhpcy5pc1N0YXRpYz0odm9pZCAwPT09bnx8bi5pc1N0YXRpYykmJmNlKGUpLHRoaXMuY29tcG9uZW50SWQ9dCx0aGlzLmJhc2VIYXNoPXkodWUsdCksdGhpcy5iYXNlU3R5bGU9bixsLnJlZ2lzdGVySWQodCl9ZnVuY3Rpb24gbWUoZSl7ZnVuY3Rpb24gdChlLHQsbixyLG8sYSxpLGwsYyx1KXtzd2l0Y2goZSl7Y2FzZSAxOmlmKDA9PT1jJiY2ND09PXQuY2hhckNvZGVBdCgwKSlyZXR1cm4gcyh0KyI7IiksIiI7YnJlYWs7Y2FzZSAyOmlmKDA9PT1sKXJldHVybiB0KyIvKnwqLyI7YnJlYWs7Y2FzZSAzOnN3aXRjaChsKXtjYXNlIDEwMjpjYXNlIDExMjpyZXR1cm4gcyhuWzBdK3QpLCIiO2RlZmF1bHQ6cmV0dXJuIHQrKDA9PT11PyIvKnwqLyI6IiIpfWNhc2UtMjp0LnNwbGl0KCIvKnwqL30iKS5mb3JFYWNoKGYpfX1mdW5jdGlvbiByKGUsdCxuKXtyZXR1cm4gMD09PXQmJi0xIT09ZGUuaW5kZXhPZihuW2EubGVuZ3RoXSl8fG4ubWF0Y2gobCk/ZToiLiIrb312YXIgbyxhLGksbCxzLGU9dm9pZCAwPT09ZT9TOmUsbj1lLm9wdGlvbnMsbj12b2lkIDA9PT1uP1M6bixlPWUucGx1Z2lucyxlPXZvaWQgMD09PWU/cDplLGM9bmV3IE4uYShuKSx1PVtdO3M9ZnVuY3Rpb24oZSl7dS5wdXNoKGUpfTtmdW5jdGlvbiBmKGUpe2lmKGUpdHJ5e3MoZSsifSIpfWNhdGNoKGUpe319ZnVuY3Rpb24gZChlLHQsbixyKXt2b2lkIDA9PT1yJiYocj0iJiIpO2U9ZS5yZXBsYWNlKGZlLCIiKSxlPXQmJm4/bisiICIrdCsiIHsgIitlKyIgfSI6ZTtyZXR1cm4gbz1yLGE9dCxpPW5ldyBSZWdFeHAoIlxcIithKyJcXGIiLCJnIiksbD1uZXcgUmVnRXhwKCIoXFwiK2ErIlxcYil7Mix9IiksYyhufHwhdD8iIjp0LGUpfXJldHVybiBjLnVzZShbXS5jb25jYXQoZSxbZnVuY3Rpb24oZSx0LG4pezI9PT1lJiZuLmxlbmd0aCYmMDxuWzBdLmxhc3RJbmRleE9mKGEpJiYoblswXT1uWzBdLnJlcGxhY2UoaSxyKSl9LHQsZnVuY3Rpb24oZSl7aWYoLTI9PT1lKXJldHVybiBlPXUsdT1bXSxlfV0pKSxkLmhhc2g9ZS5sZW5ndGg/ZS5yZWR1Y2UoZnVuY3Rpb24oZSx0KXtyZXR1cm4gdC5uYW1lfHxoKDE1KSx5KGUsdC5uYW1lKX0sNTM4MSkudG9TdHJpbmcoKToiIixkfXZhciB2PWQuYS5jcmVhdGVDb250ZXh0KCksdz0odi5Db25zdW1lcixkLmEuY3JlYXRlQ29udGV4dCgpKSxoZT0ody5Db25zdW1lcixuZXcgbCksRT1tZSgpO2Z1bmN0aW9uIE8oKXtyZXR1cm4gT2JqZWN0KHgudXNlQ29udGV4dCkodil8fGhlfWZ1bmN0aW9uIGdlKCl7cmV0dXJuIE9iamVjdCh4LnVzZUNvbnRleHQpKHcpfHxFfWZ1bmN0aW9uIGJlKHQpe3ZhciBlPU9iamVjdCh4LnVzZVN0YXRlKSh0LnN0eWxpc1BsdWdpbnMpLG49ZVswXSxyPWVbMV0sbz1PKCksZT1PYmplY3QoeC51c2VNZW1vKShmdW5jdGlvbigpe3ZhciBlPW87cmV0dXJuIHQuc2hlZXQ/ZT10LnNoZWV0OnQudGFyZ2V0JiYoZT1lLnJlY29uc3RydWN0V2l0aE9wdGlvbnMoe3RhcmdldDp0LnRhcmdldH0sITEpKSxlPXQuZGlzYWJsZUNTU09NSW5qZWN0aW9uP2UucmVjb25zdHJ1Y3RXaXRoT3B0aW9ucyh7dXNlQ1NTT01JbmplY3Rpb246ITF9KTplfSxbdC5kaXNhYmxlQ1NTT01JbmplY3Rpb24sdC5zaGVldCx0LnRhcmdldF0pLGE9T2JqZWN0KHgudXNlTWVtbykoZnVuY3Rpb24oKXtyZXR1cm4gbWUoe29wdGlvbnM6e3ByZWZpeDohdC5kaXNhYmxlVmVuZG9yUHJlZml4ZXN9LHBsdWdpbnM6bn0pfSxbdC5kaXNhYmxlVmVuZG9yUHJlZml4ZXMsbl0pO3JldHVybiBPYmplY3QoeC51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7UigpKG4sdC5zdHlsaXNQbHVnaW5zKXx8cih0LnN0eWxpc1BsdWdpbnMpfSxbdC5zdHlsaXNQbHVnaW5zXSksZC5hLmNyZWF0ZUVsZW1lbnQodi5Qcm92aWRlcix7dmFsdWU6ZX0sZC5hLmNyZWF0ZUVsZW1lbnQody5Qcm92aWRlcix7dmFsdWU6YX0sdC5jaGlsZHJlbikpfVNlLnByb3RvdHlwZS5nZXROYW1lPWZ1bmN0aW9uKGUpe3JldHVybiB2b2lkIDA9PT1lJiYoZT1FKSx0aGlzLm5hbWUrZS5oYXNofTt2YXIgeWU9U2UsdmU9LyhbQS1aXSkvLHdlPS8oW0EtWl0pL2cseGU9L15tcy0vLGtlPWZ1bmN0aW9uKGUpe3JldHVybiItIitlLnRvTG93ZXJDYXNlKCl9O2Z1bmN0aW9uIFNlKGUsdCl7dmFyIHI9dGhpczt0aGlzLmluamVjdD1mdW5jdGlvbihlLHQpe3ZvaWQgMD09PXQmJih0PUUpO3ZhciBuPXIubmFtZSt0Lmhhc2g7ZS5oYXNOYW1lRm9ySWQoci5pZCxuKXx8ZS5pbnNlcnRSdWxlcyhyLmlkLG4sdChyLnJ1bGVzLG4sIkBrZXlmcmFtZXMiKSl9LHRoaXMudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gaCgxMixTdHJpbmcoci5uYW1lKSl9LHRoaXMubmFtZT1lLHRoaXMuaWQ9InNjLWtleWZyYW1lcy0iK2UsdGhpcy5ydWxlcz10fWZ1bmN0aW9uIENlKGUpe3JldHVybiB2ZS50ZXN0KGUpP2UucmVwbGFjZSh3ZSxrZSkucmVwbGFjZSh4ZSwiLW1zLSIpOmV9dmFyIEVlPWZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lfHwhMT09PWV8fCIiPT09ZX07ZnVuY3Rpb24gaihlLHQsbixyKXtpZihBcnJheS5pc0FycmF5KGUpKXtmb3IodmFyIG8sYT1bXSxpPTAsbD1lLmxlbmd0aDtpPGw7aSs9MSkiIiE9PShvPWooZVtpXSx0LG4scikpJiYoQXJyYXkuaXNBcnJheShvKT9hLnB1c2guYXBwbHkoYSxvKTphLnB1c2gobykpO3JldHVybiBhfXJldHVybiBFZShlKT8iIjptKGUpPyIuIitlLnN0eWxlZENvbXBvbmVudElkOkMoZSk/ImZ1bmN0aW9uIiE9dHlwZW9mIGV8fGUucHJvdG90eXBlJiZlLnByb3RvdHlwZS5pc1JlYWN0Q29tcG9uZW50fHwhdD9lOmooZSh0KSx0LG4scik6ZSBpbnN0YW5jZW9mIHllP24/KGUuaW5qZWN0KG4sciksZS5nZXROYW1lKHIpKTplOmMoZSk/ZnVuY3Rpb24gZSh0LG4pe3ZhciByLG8sYSxpPVtdO2ZvcihhIGluIHQpdC5oYXNPd25Qcm9wZXJ0eShhKSYmIUVlKHRbYV0pJiYoQXJyYXkuaXNBcnJheSh0W2FdKSYmdFthXS5pc0Nzc3x8Qyh0W2FdKT9pLnB1c2goQ2UoYSkrIjoiLHRbYV0sIjsiKTpjKHRbYV0pP2kucHVzaC5hcHBseShpLGUodFthXSxhKSk6aS5wdXNoKENlKGEpKyI6ICIrKHI9YSxudWxsPT0obz10W2FdKXx8ImJvb2xlYW4iPT10eXBlb2Ygb3x8IiI9PT1vPyIiOiJudW1iZXIiIT10eXBlb2Ygb3x8MD09PW98fHIgaW4gRC5hfHxyLnN0YXJ0c1dpdGgoIi0tIik/U3RyaW5nKG8pLnRyaW0oKTpvKyJweCIpKyI7IikpO3JldHVybiBuP1tuKyIgeyJdLmNvbmNhdChpLFsifSJdKTppfShlKTplLnRvU3RyaW5nKCl9dmFyIE9lPWZ1bmN0aW9uKGUpe3JldHVybiBBcnJheS5pc0FycmF5KGUpJiYoZS5pc0Nzcz0hMCksZX07ZnVuY3Rpb24gQShlKXtmb3IodmFyIHQ9YXJndW1lbnRzLmxlbmd0aCxuPW5ldyBBcnJheSgxPHQ/dC0xOjApLHI9MTtyPHQ7cisrKW5bci0xXT1hcmd1bWVudHNbcl07cmV0dXJuIEMoZSl8fGMoZSk/T2UoaihGKHAsW2VdLmNvbmNhdChuKSkpKTowPT09bi5sZW5ndGgmJjE9PT1lLmxlbmd0aCYmInN0cmluZyI9PXR5cGVvZiBlWzBdP2U6T2UoaihGKGUsbikpKX1uZXcgU2V0O3ZhciBqZT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIHZvaWQgMD09PW4mJihuPVMpLGUudGhlbWUhPT1uLnRoZW1lJiZlLnRoZW1lfHx0fHxuLnRoZW1lfSxBZT0vWyEiIyQlJicoKSorLC4vOjs8PT4/QFtcXFxdXmB7fH1+LV0rL2csUGU9LyheLXwtJCkvZztmdW5jdGlvbiBQKGUpe3JldHVybiBlLnJlcGxhY2UoQWUsIi0iKS5yZXBsYWNlKFBlLCIiKX12YXIgST1mdW5jdGlvbihlKXtyZXR1cm4gYihsZShlKT4+PjApfTtmdW5jdGlvbiBfKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZSYmITB9dmFyIHo9ZnVuY3Rpb24oZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGV8fCJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJiFBcnJheS5pc0FycmF5KGUpfSxJZT1mdW5jdGlvbihlKXtyZXR1cm4iX19wcm90b19fIiE9PWUmJiJjb25zdHJ1Y3RvciIhPT1lJiYicHJvdG90eXBlIiE9PWV9O2Z1bmN0aW9uIF9lKGUpe2Zvcih2YXIgdD1hcmd1bWVudHMubGVuZ3RoLG49bmV3IEFycmF5KDE8dD90LTE6MCkscj0xO3I8dDtyKyspbltyLTFdPWFyZ3VtZW50c1tyXTtmb3IodmFyIG8sYSxpLGw9MCxjPW47bDxjLmxlbmd0aDtsKyspe3ZhciB1PWNbbF07aWYoeih1KSlmb3IodmFyIHMgaW4gdSlJZShzKSYmKG89ZSxhPXVbc10scz1zLGk9dm9pZCAwLGk9b1tzXSx6KGEpJiZ6KGkpP19lKGksYSk6b1tzXT1hKX1yZXR1cm4gZX12YXIgVD1kLmEuY3JlYXRlQ29udGV4dCgpO1QuQ29uc3VtZXI7ZnVuY3Rpb24gemUobil7dmFyIHI9T2JqZWN0KHgudXNlQ29udGV4dCkoVCksZT1PYmplY3QoeC51c2VNZW1vKShmdW5jdGlvbigpe3JldHVybiBlPW4udGhlbWUsdD1yLGU/QyhlKT9lKHQpOkFycmF5LmlzQXJyYXkoZSl8fCJvYmplY3QiIT10eXBlb2YgZT9oKDgpOnQ/ayh7fSx0LHt9LGUpOmU6aCgxNCk7dmFyIGUsdH0sW24udGhlbWUscl0pO3JldHVybiBuLmNoaWxkcmVuP2QuYS5jcmVhdGVFbGVtZW50KFQuUHJvdmlkZXIse3ZhbHVlOmV9LG4uY2hpbGRyZW4pOm51bGx9dmFyIEw9e307ZnVuY3Rpb24gVGUocixvLGEpe3ZhciB0PW0ociksZT0hXyhyKSxuPW8uYXR0cnMsbj12b2lkIDA9PT1uP3A6bixpPW8uY29tcG9uZW50SWQsaT12b2lkIDA9PT1pP2Z1bmN0aW9uKGUsdCl7ZT0ic3RyaW5nIiE9dHlwZW9mIGU/InNjIjpQKGUpLExbZV09KExbZV18fDApKzEsZT1lKyItIitJKCI1LjMuMTEiK2UrTFtlXSk7cmV0dXJuIHQ/dCsiLSIrZTplfShvLmRpc3BsYXlOYW1lLG8ucGFyZW50Q29tcG9uZW50SWQpOmksbD1vLmRpc3BsYXlOYW1lLGw9dm9pZCAwPT09bD9fKHIpPyJzdHlsZWQuIityOiJTdHlsZWQoIitIKHIpKyIpIjpsLGk9by5kaXNwbGF5TmFtZSYmby5jb21wb25lbnRJZD9QKG8uZGlzcGxheU5hbWUpKyItIitvLmNvbXBvbmVudElkOm8uY29tcG9uZW50SWR8fGksYz10JiZyLmF0dHJzP0FycmF5LnByb3RvdHlwZS5jb25jYXQoci5hdHRycyxuKS5maWx0ZXIoQm9vbGVhbik6bix1PW8uc2hvdWxkRm9yd2FyZFByb3A7dCYmci5zaG91bGRGb3J3YXJkUHJvcCYmKHU9by5zaG91bGRGb3J3YXJkUHJvcD9mdW5jdGlvbihlLHQsbil7cmV0dXJuIHIuc2hvdWxkRm9yd2FyZFByb3AoZSx0LG4pJiZvLnNob3VsZEZvcndhcmRQcm9wKGUsdCxuKX06ci5zaG91bGRGb3J3YXJkUHJvcCk7ZnVuY3Rpb24gcyhlLHQpe3ZhciBuLHIsYSxpLG8sbD13LGM9KG09dikuYXR0cnMsdT1tLmNvbXBvbmVudFN0eWxlLHM9bS5kZWZhdWx0UHJvcHMsZj1tLmZvbGRlZENvbXBvbmVudElkcyxkPW0uc2hvdWxkRm9yd2FyZFByb3AscD1tLnN0eWxlZENvbXBvbmVudElkLG09bS50YXJnZXQsYz0ocz1qZShlLE9iamVjdCh4LnVzZUNvbnRleHQpKFQpLHMpfHxTLGM9YyxhPWsoe30sZSx7dGhlbWU6cz12b2lkIDA9PT1zP1M6c30pLGk9e30sYy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0LG4scixvPWU7Zm9yKHQgaW4gbz1DKG8pP28oYSk6bylhW3RdPWlbdF09ImNsYXNzTmFtZSI9PT10PyhuPWlbdF0scj1vW3RdLG4mJnI/bisiICIrcjpufHxyKTpvW3RdfSksKHM9W2EsaV0pWzFdKSxsPSh1PXUsbD1sLHM9c1swXSxuPU8oKSxyPWdlKCksbD91LmdlbmVyYXRlQW5kSW5qZWN0U3R5bGVzKFMsbixyKTp1LmdlbmVyYXRlQW5kSW5qZWN0U3R5bGVzKHMsbixyKSksdT10LGg9Yy4kYXN8fGUuJGFzfHxjLmFzfHxlLmFzfHxtLGc9XyhoKSxiPWMhPT1lP2soe30sZSx7fSxjKTplLHk9e307Zm9yKG8gaW4gYikiJCIhPT1vWzBdJiYiYXMiIT09byYmKCJmb3J3YXJkZWRBcyI9PT1vP3kuYXM9YltvXTooZD9kKG8sVS5hLGgpOiFnfHxPYmplY3QoVS5hKShvKSkmJih5W29dPWJbb10pKTtyZXR1cm4gZS5zdHlsZSYmYy5zdHlsZSE9PWUuc3R5bGUmJih5LnN0eWxlPWsoe30sZS5zdHlsZSx7fSxjLnN0eWxlKSkseS5jbGFzc05hbWU9QXJyYXkucHJvdG90eXBlLmNvbmNhdChmLHAsbCE9PXA/bDpudWxsLGUuY2xhc3NOYW1lLGMuY2xhc3NOYW1lKS5maWx0ZXIoQm9vbGVhbikuam9pbigiICIpLHkucmVmPXUsT2JqZWN0KHguY3JlYXRlRWxlbWVudCkoaCx5KX12YXIgdixmPW5ldyBzZShhLGksdD9yLmNvbXBvbmVudFN0eWxlOnZvaWQgMCksdz1mLmlzU3RhdGljJiYwPT09bi5sZW5ndGg7cmV0dXJuIHMuZGlzcGxheU5hbWU9bCwodj1kLmEuZm9yd2FyZFJlZihzKSkuYXR0cnM9Yyx2LmNvbXBvbmVudFN0eWxlPWYsdi5kaXNwbGF5TmFtZT1sLHYuc2hvdWxkRm9yd2FyZFByb3A9dSx2LmZvbGRlZENvbXBvbmVudElkcz10P0FycmF5LnByb3RvdHlwZS5jb25jYXQoci5mb2xkZWRDb21wb25lbnRJZHMsci5zdHlsZWRDb21wb25lbnRJZCk6cCx2LnN0eWxlZENvbXBvbmVudElkPWksdi50YXJnZXQ9dD9yLnRhcmdldDpyLHYud2l0aENvbXBvbmVudD1mdW5jdGlvbihlKXt2YXIgdD1vLmNvbXBvbmVudElkLG49ZnVuY3Rpb24oZSx0KXtpZihudWxsPT1lKXJldHVybnt9O2Zvcih2YXIgbixyPXt9LG89T2JqZWN0LmtleXMoZSksYT0wO2E8by5sZW5ndGg7YSsrKW49b1thXSwwPD10LmluZGV4T2Yobil8fChyW25dPWVbbl0pO3JldHVybiByfShvLFsiY29tcG9uZW50SWQiXSksdD10JiZ0KyItIisoXyhlKT9lOlAoSChlKSkpO3JldHVybiBUZShlLGsoe30sbix7YXR0cnM6Yyxjb21wb25lbnRJZDp0fSksYSl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh2LCJkZWZhdWx0UHJvcHMiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZm9sZGVkRGVmYXVsdFByb3BzfSxzZXQ6ZnVuY3Rpb24oZSl7dGhpcy5fZm9sZGVkRGVmYXVsdFByb3BzPXQ/X2Uoe30sci5kZWZhdWx0UHJvcHMsZSk6ZX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkodiwidG9TdHJpbmciLHt2YWx1ZTpmdW5jdGlvbigpe3JldHVybiIuIit2LnN0eWxlZENvbXBvbmVudElkfX0pLGUmJkIoKSh2LHIse2F0dHJzOiEwLGNvbXBvbmVudFN0eWxlOiEwLGRpc3BsYXlOYW1lOiEwLGZvbGRlZENvbXBvbmVudElkczohMCxzaG91bGRGb3J3YXJkUHJvcDohMCxzdHlsZWRDb21wb25lbnRJZDohMCx0YXJnZXQ6ITAsd2l0aENvbXBvbmVudDohMH0pLHZ9ZnVuY3Rpb24gTShlKXtyZXR1cm4gZnVuY3Rpb24gdChuLHIsbyl7dmFyIGU7cmV0dXJuIHZvaWQgMD09PW8mJihvPVMpLE9iamVjdChhLmlzVmFsaWRFbGVtZW50VHlwZSkocik/KChlPWZ1bmN0aW9uKCl7cmV0dXJuIG4ocixvLEEuYXBwbHkodm9pZCAwLGFyZ3VtZW50cykpfSkud2l0aENvbmZpZz1mdW5jdGlvbihlKXtyZXR1cm4gdChuLHIsayh7fSxvLHt9LGUpKX0sZS5hdHRycz1mdW5jdGlvbihlKXtyZXR1cm4gdChuLHIsayh7fSxvLHthdHRyczpBcnJheS5wcm90b3R5cGUuY29uY2F0KG8uYXR0cnMsZSkuZmlsdGVyKEJvb2xlYW4pfSkpfSxlKTpoKDEsU3RyaW5nKHIpKX0oVGUsZSl9WyJhIiwiYWJiciIsImFkZHJlc3MiLCJhcmVhIiwiYXJ0aWNsZSIsImFzaWRlIiwiYXVkaW8iLCJiIiwiYmFzZSIsImJkaSIsImJkbyIsImJpZyIsImJsb2NrcXVvdGUiLCJib2R5IiwiYnIiLCJidXR0b24iLCJjYW52YXMiLCJjYXB0aW9uIiwiY2l0ZSIsImNvZGUiLCJjb2wiLCJjb2xncm91cCIsImRhdGEiLCJkYXRhbGlzdCIsImRkIiwiZGVsIiwiZGV0YWlscyIsImRmbiIsImRpYWxvZyIsImRpdiIsImRsIiwiZHQiLCJlbSIsImVtYmVkIiwiZmllbGRzZXQiLCJmaWdjYXB0aW9uIiwiZmlndXJlIiwiZm9vdGVyIiwiZm9ybSIsImgxIiwiaDIiLCJoMyIsImg0IiwiaDUiLCJoNiIsImhlYWQiLCJoZWFkZXIiLCJoZ3JvdXAiLCJociIsImh0bWwiLCJpIiwiaWZyYW1lIiwiaW1nIiwiaW5wdXQiLCJpbnMiLCJrYmQiLCJrZXlnZW4iLCJsYWJlbCIsImxlZ2VuZCIsImxpIiwibGluayIsIm1haW4iLCJtYXAiLCJtYXJrIiwibWFycXVlZSIsIm1lbnUiLCJtZW51aXRlbSIsIm1ldGEiLCJtZXRlciIsIm5hdiIsIm5vc2NyaXB0Iiwib2JqZWN0Iiwib2wiLCJvcHRncm91cCIsIm9wdGlvbiIsIm91dHB1dCIsInAiLCJwYXJhbSIsInBpY3R1cmUiLCJwcmUiLCJwcm9ncmVzcyIsInEiLCJycCIsInJ0IiwicnVieSIsInMiLCJzYW1wIiwic2NyaXB0Iiwic2VjdGlvbiIsInNlbGVjdCIsInNtYWxsIiwic291cmNlIiwic3BhbiIsInN0cm9uZyIsInN0eWxlIiwic3ViIiwic3VtbWFyeSIsInN1cCIsInRhYmxlIiwidGJvZHkiLCJ0ZCIsInRleHRhcmVhIiwidGZvb3QiLCJ0aCIsInRoZWFkIiwidGltZSIsInRpdGxlIiwidHIiLCJ0cmFjayIsInUiLCJ1bCIsInZhciIsInZpZGVvIiwid2JyIiwiY2lyY2xlIiwiY2xpcFBhdGgiLCJkZWZzIiwiZWxsaXBzZSIsImZvcmVpZ25PYmplY3QiLCJnIiwiaW1hZ2UiLCJsaW5lIiwibGluZWFyR3JhZGllbnQiLCJtYXJrZXIiLCJtYXNrIiwicGF0aCIsInBhdHRlcm4iLCJwb2x5Z29uIiwicG9seWxpbmUiLCJyYWRpYWxHcmFkaWVudCIsInJlY3QiLCJzdG9wIiwic3ZnIiwidGV4dCIsInRleHRQYXRoIiwidHNwYW4iXS5mb3JFYWNoKGZ1bmN0aW9uKGUpe01bZV09TShlKX0pLCh0PU1lLnByb3RvdHlwZSkuY3JlYXRlU3R5bGVzPWZ1bmN0aW9uKGUsdCxuLHIpe3Q9cihqKHRoaXMucnVsZXMsdCxuLHIpLmpvaW4oIiIpLCIiKSxyPXRoaXMuY29tcG9uZW50SWQrZTtuLmluc2VydFJ1bGVzKHIscix0KX0sdC5yZW1vdmVTdHlsZXM9ZnVuY3Rpb24oZSx0KXt0LmNsZWFyUnVsZXModGhpcy5jb21wb25lbnRJZCtlKX0sdC5yZW5kZXJTdHlsZXM9ZnVuY3Rpb24oZSx0LG4scil7MjxlJiZsLnJlZ2lzdGVySWQodGhpcy5jb21wb25lbnRJZCtlKSx0aGlzLnJlbW92ZVN0eWxlcyhlLG4pLHRoaXMuY3JlYXRlU3R5bGVzKGUsdCxuLHIpfTt2YXIgTGU9TWU7ZnVuY3Rpb24gTWUoZSx0KXt0aGlzLnJ1bGVzPWUsdGhpcy5jb21wb25lbnRJZD10LHRoaXMuaXNTdGF0aWM9Y2UoZSksbC5yZWdpc3RlcklkKHRoaXMuY29tcG9uZW50SWQrMSl9ZnVuY3Rpb24gUmUoZSl7Zm9yKHZhciB0PWFyZ3VtZW50cy5sZW5ndGgsbj1uZXcgQXJyYXkoMTx0P3QtMTowKSxyPTE7cjx0O3IrKyluW3ItMV09YXJndW1lbnRzW3JdO3ZhciBlPUEuYXBwbHkodm9pZCAwLFtlXS5jb25jYXQobikpLGE9InNjLWdsb2JhbC0iK0koSlNPTi5zdHJpbmdpZnkoZSkpLGk9bmV3IExlKGUsYSk7ZnVuY3Rpb24gbChlKXt2YXIgdD1PKCksbj1nZSgpLHI9T2JqZWN0KHgudXNlQ29udGV4dCkoVCksbz1PYmplY3QoeC51c2VSZWYpKHQuYWxsb2NhdGVHU0luc3RhbmNlKGEpKS5jdXJyZW50O3JldHVybiB0LnNlcnZlciYmYyhvLGUsdCxyLG4pLE9iamVjdCh4LnVzZUxheW91dEVmZmVjdCkoZnVuY3Rpb24oKXtpZighdC5zZXJ2ZXIpcmV0dXJuIGMobyxlLHQscixuKSxmdW5jdGlvbigpe3JldHVybiBpLnJlbW92ZVN0eWxlcyhvLHQpfX0sW28sZSx0LHIsbl0pLG51bGx9ZnVuY3Rpb24gYyhlLHQsbixyLG8pe2kuaXNTdGF0aWM/aS5yZW5kZXJTdHlsZXMoZSxWLG4sbyk6KHQ9ayh7fSx0LHt0aGVtZTpqZSh0LHIsbC5kZWZhdWx0UHJvcHMpfSksaS5yZW5kZXJTdHlsZXMoZSx0LG4sbykpfXJldHVybiBkLmEubWVtbyhsKX1mdW5jdGlvbiBOZShlKXtmb3IodmFyIHQ9YXJndW1lbnRzLmxlbmd0aCxuPW5ldyBBcnJheSgxPHQ/dC0xOjApLHI9MTtyPHQ7cisrKW5bci0xXT1hcmd1bWVudHNbcl07dmFyIGU9QS5hcHBseSh2b2lkIDAsW2VdLmNvbmNhdChuKSkuam9pbigiIiksbz1JKGUpO3JldHVybiBuZXcgeWUobyxlKX0oZT1EZS5wcm90b3R5cGUpLmNvbGxlY3RTdHlsZXM9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuc2VhbGVkP2goMik6ZC5hLmNyZWF0ZUVsZW1lbnQoYmUse3NoZWV0OnRoaXMuaW5zdGFuY2V9LGUpfSxlLmludGVybGVhdmVXaXRoTm9kZVN0cmVhbT1mdW5jdGlvbihlKXtyZXR1cm4gaCgzKX07ZnVuY3Rpb24gRGUoKXt2YXIgbj10aGlzO3RoaXMuX2VtaXRTaGVldENTUz1mdW5jdGlvbigpe3ZhciBlLHQ9bi5pbnN0YW5jZS50b1N0cmluZygpO3JldHVybiB0PyI8c3R5bGUgIitbKGU9aSgpKSYmJ25vbmNlPSInK2UrJyInLHUrJz0idHJ1ZSInLCdkYXRhLXN0eWxlZC12ZXJzaW9uPSI1LjMuMTEiJ10uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiAiKSsiPiIrdCsiPC9zdHlsZT4iOiIifSx0aGlzLmdldFN0eWxlVGFncz1mdW5jdGlvbigpe3JldHVybiBuLnNlYWxlZD9oKDIpOm4uX2VtaXRTaGVldENTUygpfSx0aGlzLmdldFN0eWxlRWxlbWVudD1mdW5jdGlvbigpe3ZhciBlLHQ7cmV0dXJuIG4uc2VhbGVkP2goMik6KChlPXt9KVt1XT0iIixlWyJkYXRhLXN0eWxlZC12ZXJzaW9uIl09IjUuMy4xMSIsZS5kYW5nZXJvdXNseVNldElubmVySFRNTD17X19odG1sOm4uaW5zdGFuY2UudG9TdHJpbmcoKX0sZT1lLCh0PWkoKSkmJihlLm5vbmNlPXQpLFtkLmEuY3JlYXRlRWxlbWVudCgic3R5bGUiLGsoe30sZSx7a2V5OiJzYy0wLTAifSkpXSl9LHRoaXMuc2VhbD1mdW5jdGlvbigpe24uc2VhbGVkPSEwfSx0aGlzLmluc3RhbmNlPW5ldyBsKHtpc1NlcnZlcjohMH0pLHRoaXMuc2VhbGVkPSExfVVlLmQ9TX0uY2FsbCh0aGlzLEJlKDkyKSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgbj1uKDYxKSxyPW4uYWxsO2UuZXhwb3J0cz1uLklTX0hUTUxEREE/ZnVuY3Rpb24oZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGV8fGU9PT1yfTpmdW5jdGlvbihlKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZX19LGZ1bmN0aW9uKG4sZSx0KXshZnVuY3Rpb24oZSl7ZnVuY3Rpb24gdChlKXtyZXR1cm4gZSYmZS5NYXRoPT09TWF0aCYmZX1uLmV4cG9ydHM9dCgib2JqZWN0Ij09dHlwZW9mIGdsb2JhbFRoaXMmJmdsb2JhbFRoaXMpfHx0KCJvYmplY3QiPT10eXBlb2Ygd2luZG93JiZ3aW5kb3cpfHx0KCJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZil8fHQoIm9iamVjdCI9PXR5cGVvZiBlJiZlKXx8dCgib2JqZWN0Ij09dHlwZW9mIHRoaXMmJnRoaXMpfHxmdW5jdGlvbigpe3JldHVybiB0aGlzfSgpfHxGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpfS5jYWxsKHRoaXMsdCgyMikpfSxmdW5jdGlvbihlLHQsbil7dmFyIG49bigyOCkscj1GdW5jdGlvbi5wcm90b3R5cGUsbz1yLmNhbGwscj1uJiZyLmJpbmQuYmluZChvLG8pO2UuZXhwb3J0cz1uP3I6ZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG8uYXBwbHkoZSxhcmd1bWVudHMpfX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDMpLG89big2NiksYT1uKDExKSxpPW4oNjgpLGw9big2NCksbj1uKDYzKSxjPXIuU3ltYm9sLHU9bygid2tzIikscz1uP2MuZm9yfHxjOmMmJmMud2l0aG91dFNldHRlcnx8aTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGEodSxlKXx8KHVbZV09bCYmYShjLGUpP2NbZV06cygiU3ltYm9sLiIrZSkpLHVbZV19fSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4hIWUoKX1jYXRjaChlKXtyZXR1cm4hMH19fSxmdW5jdGlvbihlLHQsbil7dmFyIHU9bigzKSxzPW4oNDEpLmYsZj1uKDE4KSxkPW4oMTkpLHA9big0NSksbT1uKDczKSxoPW4oNzYpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuLHIsbyxhPWUudGFyZ2V0LGk9ZS5nbG9iYWwsbD1lLnN0YXQsYz1pP3U6bD91W2FdfHxwKGEse30pOih1W2FdfHx7fSkucHJvdG90eXBlO2lmKGMpZm9yKG4gaW4gdCl7aWYocj10W25dLG89ZS5kb250Q2FsbEdldFNldD8obz1zKGMsbikpJiZvLnZhbHVlOmNbbl0sIWgoaT9uOmErKGw/Ii4iOiIjIikrbixlLmZvcmNlZCkmJnZvaWQgMCE9PW8pe2lmKHR5cGVvZiByPT10eXBlb2Ygbyljb250aW51ZTttKHIsbyl9KGUuc2hhbXx8byYmby5zaGFtKSYmZihyLCJzaGFtIiwhMCksZChjLG4scixlKX19fSxmdW5jdGlvbihlLHQsbil7dmFyIG49bigyOCkscj1GdW5jdGlvbi5wcm90b3R5cGUuY2FsbDtlLmV4cG9ydHM9bj9yLmJpbmQocik6ZnVuY3Rpb24oKXtyZXR1cm4gci5hcHBseShyLGFyZ3VtZW50cyl9fSxmdW5jdGlvbihlLHQsbil7bj1uKDYpO2UuZXhwb3J0cz0hbihmdW5jdGlvbigpe3JldHVybiA3IT09T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LDEse2dldDpmdW5jdGlvbigpe3JldHVybiA3fX0pWzFdfSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDIpLG89bigzMyksYT1UeXBlRXJyb3I7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKHIoZSkpcmV0dXJuIGU7dGhyb3cgbmV3IGEobyhlKSsiIGlzIG5vdCBhIGZ1bmN0aW9uIil9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big0KSxvPW4oNjcpLGE9cih7fS5oYXNPd25Qcm9wZXJ0eSk7ZS5leHBvcnRzPU9iamVjdC5oYXNPd258fGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGEobyhlKSx0KX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDEzKSxvPVN0cmluZyxhPVR5cGVFcnJvcjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aWYocihlKSlyZXR1cm4gZTt0aHJvdyBuZXcgYShvKGUpKyIgaXMgbm90IGFuIG9iamVjdCIpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMiksbj1uKDYxKSxvPW4uYWxsO2UuZXhwb3J0cz1uLklTX0hUTUxEREE/ZnVuY3Rpb24oZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBlP251bGwhPT1lOnIoZSl8fGU9PT1vfTpmdW5jdGlvbihlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGU/bnVsbCE9PWU6cihlKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDMpLG89bigyKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aDwyPyhuPXJbZV0sbyhuKT9uOnZvaWQgMCk6cltlXSYmcltlXVt0XTt2YXIgbn19LGZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9ITF9LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiByKGUpe3ZhciBuLHI7dGhpcy5wcm9taXNlPW5ldyBlKGZ1bmN0aW9uKGUsdCl7aWYodm9pZCAwIT09bnx8dm9pZCAwIT09cil0aHJvdyBuZXcgYSgiQmFkIFByb21pc2UgY29uc3RydWN0b3IiKTtuPWUscj10fSksdGhpcy5yZXNvbHZlPW8obiksdGhpcy5yZWplY3Q9byhyKX12YXIgbz1uKDEwKSxhPVR5cGVFcnJvcjtlLmV4cG9ydHMuZj1mdW5jdGlvbihlKXtyZXR1cm4gbmV3IHIoZSl9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big5KSxvPW4oNjkpLGE9big3MCksaT1uKDEyKSxsPW4oNjApLGM9VHlwZUVycm9yLHU9T2JqZWN0LmRlZmluZVByb3BlcnR5LHM9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcixmPSJlbnVtZXJhYmxlIixkPSJjb25maWd1cmFibGUiLHA9IndyaXRhYmxlIjt0LmY9cj9hP2Z1bmN0aW9uKGUsdCxuKXt2YXIgcjtyZXR1cm4gaShlKSx0PWwodCksaShuKSwiZnVuY3Rpb24iPT10eXBlb2YgZSYmInByb3RvdHlwZSI9PT10JiYidmFsdWUiaW4gbiYmcCBpbiBuJiYhbltwXSYmKHI9cyhlLHQpKSYmcltwXSYmKGVbdF09bi52YWx1ZSxuPXtjb25maWd1cmFibGU6KGQgaW4gbj9uOnIpW2RdLGVudW1lcmFibGU6KGYgaW4gbj9uOnIpW2ZdLHdyaXRhYmxlOiExfSksdShlLHQsbil9OnU6ZnVuY3Rpb24oZSx0LG4pe2lmKGkoZSksdD1sKHQpLGkobiksbyl0cnl7cmV0dXJuIHUoZSx0LG4pfWNhdGNoKGUpe31pZigiZ2V0ImluIG58fCJzZXQiaW4gbil0aHJvdyBuZXcgYygiQWNjZXNzb3JzIG5vdCBzdXBwb3J0ZWQiKTtyZXR1cm4idmFsdWUiaW4gbiYmKGVbdF09bi52YWx1ZSksZX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDkpLG89bigxNyksYT1uKDIzKTtlLmV4cG9ydHM9cj9mdW5jdGlvbihlLHQsbil7cmV0dXJuIG8uZihlLHQsYSgxLG4pKX06ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBlW3RdPW4sZX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgaT1uKDIpLGw9bigxNyksYz1uKDcxKSx1PW4oNDUpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixyKXt2YXIgbz0ocj1yfHx7fSkuZW51bWVyYWJsZSxhPXZvaWQgMCE9PXIubmFtZT9yLm5hbWU6dDtpZihpKG4pJiZjKG4sYSxyKSxyLmdsb2JhbClvP2VbdF09bjp1KHQsbik7ZWxzZXt0cnl7ci51bnNhZmU/ZVt0XSYmKG89ITApOmRlbGV0ZSBlW3RdfWNhdGNoKGUpe31vP2VbdF09bjpsLmYoZSx0LHt2YWx1ZTpuLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiFyLm5vbkNvbmZpZ3VyYWJsZSx3cml0YWJsZTohci5ub25Xcml0YWJsZX0pfXJldHVybiBlfX0sZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1mdW5jdGlvbihlKXt0cnl7cmV0dXJue2Vycm9yOiExLHZhbHVlOmUoKX19Y2F0Y2goZSl7cmV0dXJue2Vycm9yOiEwLHZhbHVlOmV9fX19LGZ1bmN0aW9uKGUsdCxuKXtuPW4oMyk7ZS5leHBvcnRzPW4uUHJvbWlzZX0sZnVuY3Rpb24oZSx0KXt2YXIgbj1mdW5jdGlvbigpe3JldHVybiB0aGlzfSgpO3RyeXtuPW58fG5ldyBGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpfWNhdGNoKGUpeyJvYmplY3QiPT10eXBlb2Ygd2luZG93JiYobj13aW5kb3cpfWUuZXhwb3J0cz1ufSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJue2VudW1lcmFibGU6ISgxJmUpLGNvbmZpZ3VyYWJsZTohKDImZSksd3JpdGFibGU6ISg0JmUpLHZhbHVlOnR9fX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTA1KSxvPW4oNDIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gcihvKGUpKX19LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiBiKGUsdCl7dGhpcy5zdG9wcGVkPWUsdGhpcy5yZXN1bHQ9dH12YXIgeT1uKDUzKSx2PW4oOCksdz1uKDEyKSx4PW4oMzMpLGs9bigxMjYpLFM9big3NSksQz1uKDMxKSxFPW4oMTI3KSxPPW4oNzgpLGo9bigxMjgpLEE9VHlwZUVycm9yLFA9Yi5wcm90b3R5cGU7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiByKGUpe3JldHVybiBhJiZqKGEsIm5vcm1hbCIsZSksbmV3IGIoITAsZSl9ZnVuY3Rpb24gbyhlKXtyZXR1cm4gZD8odyhlKSxoP2coZVswXSxlWzFdLHIpOmcoZVswXSxlWzFdKSk6aD9nKGUscik6ZyhlKX12YXIgYSxpLGwsYyx1LHMsZj1uJiZuLnRoYXQsZD0hKCFufHwhbi5BU19FTlRSSUVTKSxwPSEoIW58fCFuLklTX1JFQ09SRCksbT0hKCFufHwhbi5JU19JVEVSQVRPUiksaD0hKCFufHwhbi5JTlRFUlJVUFRFRCksZz15KHQsZik7aWYocClhPWUuaXRlcmF0b3I7ZWxzZSBpZihtKWE9ZTtlbHNle2lmKCEobj1PKGUpKSl0aHJvdyBuZXcgQSh4KGUpKyIgaXMgbm90IGl0ZXJhYmxlIik7aWYoayhuKSl7Zm9yKGk9MCxsPVMoZSk7aTxsO2krKylpZigoYz1vKGVbaV0pKSYmQyhQLGMpKXJldHVybiBjO3JldHVybiBuZXcgYighMSl9YT1FKGUsbil9Zm9yKHU9KHA/ZTphKS5uZXh0OyEocz12KHUsYSkpLmRvbmU7KXt0cnl7Yz1vKHMudmFsdWUpfWNhdGNoKGUpe2ooYSwidGhyb3ciLGUpfWlmKCJvYmplY3QiPT10eXBlb2YgYyYmYyYmQyhQLGMpKXJldHVybiBjfXJldHVybiBuZXcgYighMSl9fSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPXt9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigzKSxvPW4oMjEpLGE9bigyKSxpPW4oNzYpLGw9big0NiksYz1uKDUpLHU9bigxNDgpLHM9big4NyksZj1uKDE1KSxkPW4oNjUpLHA9byYmby5wcm90b3R5cGUsbT1jKCJzcGVjaWVzIiksaD0hMSxnPWEoci5Qcm9taXNlUmVqZWN0aW9uRXZlbnQpLG49aSgiUHJvbWlzZSIsZnVuY3Rpb24oKXt2YXIgZT1sKG8pLHQ9ZSE9PVN0cmluZyhvKTtpZighdCYmNjY9PT1kKXJldHVybiEwO2lmKGYmJighcC5jYXRjaHx8IXAuZmluYWxseSkpcmV0dXJuITA7aWYoIWR8fGQ8NTF8fCEvbmF0aXZlIGNvZGUvLnRlc3QoZSkpe3ZhciBlPW5ldyBvKGZ1bmN0aW9uKGUpe2UoMSl9KSxuPWZ1bmN0aW9uKGUpe2UoZnVuY3Rpb24oKXt9LGZ1bmN0aW9uKCl7fSl9O2lmKChlLmNvbnN0cnVjdG9yPXt9KVttXT1uLCEoaD1lLnRoZW4oZnVuY3Rpb24oKXt9KWluc3RhbmNlb2YgbikpcmV0dXJuITB9cmV0dXJuIXQmJih1fHxzKSYmIWd9KTtlLmV4cG9ydHM9e0NPTlNUUlVDVE9SOm4sUkVKRUNUSU9OX0VWRU5UOmcsU1VCQ0xBU1NJTkc6aH19LGZ1bmN0aW9uKGUsdCxuKXtuPW4oNik7ZS5leHBvcnRzPSFuKGZ1bmN0aW9uKCl7dmFyIGU9ZnVuY3Rpb24oKXt9LmJpbmQoKTtyZXR1cm4iZnVuY3Rpb24iIT10eXBlb2YgZXx8ZS5oYXNPd25Qcm9wZXJ0eSgicHJvdG90eXBlIil9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciBuPW4oNCkscj1uKHt9LnRvU3RyaW5nKSxvPW4oIiIuc2xpY2UpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbyhyKGUpLDgsLTEpfX0sZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZX19LGZ1bmN0aW9uKGUsdCxuKXtuPW4oNCk7ZS5leHBvcnRzPW4oe30uaXNQcm90b3R5cGVPZil9LGZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9InVuZGVmaW5lZCIhPXR5cGVvZiBuYXZpZ2F0b3ImJlN0cmluZyhuYXZpZ2F0b3IudXNlckFnZW50KXx8IiJ9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1TdHJpbmc7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4gcihlKX1jYXRjaChlKXtyZXR1cm4iT2JqZWN0In19fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigzKSxuPW4oMTMpLG89ci5kb2N1bWVudCxhPW4obykmJm4oby5jcmVhdGVFbGVtZW50KTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGE/by5jcmVhdGVFbGVtZW50KGUpOnt9fX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByLG8sYSxpLGw9bigxMDgpLGM9bigzKSx1PW4oMTMpLHM9bigxOCksZj1uKDExKSxkPW4oNDQpLHA9big0Nyksbj1uKDQ4KSxtPSJPYmplY3QgYWxyZWFkeSBpbml0aWFsaXplZCIsaD1jLlR5cGVFcnJvcixjPWMuV2Vha01hcCxnPWx8fGQuc3RhdGU/KChhPWQuc3RhdGV8fChkLnN0YXRlPW5ldyBjKSkuZ2V0PWEuZ2V0LGEuaGFzPWEuaGFzLGEuc2V0PWEuc2V0LHI9ZnVuY3Rpb24oZSx0KXtpZihhLmhhcyhlKSl0aHJvdyBuZXcgaChtKTtyZXR1cm4gdC5mYWNhZGU9ZSxhLnNldChlLHQpLHR9LG89ZnVuY3Rpb24oZSl7cmV0dXJuIGEuZ2V0KGUpfHx7fX0sZnVuY3Rpb24oZSl7cmV0dXJuIGEuaGFzKGUpfSk6KG5baT1wKCJzdGF0ZSIpXT0hMCxyPWZ1bmN0aW9uKGUsdCl7aWYoZihlLGkpKXRocm93IG5ldyBoKG0pO3JldHVybiB0LmZhY2FkZT1lLHMoZSxpLHQpLHR9LG89ZnVuY3Rpb24oZSl7cmV0dXJuIGYoZSxpKT9lW2ldOnt9fSxmdW5jdGlvbihlKXtyZXR1cm4gZihlLGkpfSk7ZS5leHBvcnRzPXtzZXQ6cixnZXQ6byxoYXM6ZyxlbmZvcmNlOmZ1bmN0aW9uKGUpe3JldHVybiBnKGUpP28oZSk6cihlLHt9KX0sZ2V0dGVyRm9yOmZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihlKXtpZih1KGUpJiYoZT1vKGUpKS50eXBlPT09dClyZXR1cm4gZTt0aHJvdyBuZXcgaCgiSW5jb21wYXRpYmxlIHJlY2VpdmVyLCAiK3QrIiByZXF1aXJlZCIpfX19fSxmdW5jdGlvbihlLHQsbil7ZnVuY3Rpb24gcigpe31mdW5jdGlvbiBvKGUpe2Uud3JpdGUoaCgiIikpLGUuY2xvc2UoKTt2YXIgdD1lLnBhcmVudFdpbmRvdy5PYmplY3Q7cmV0dXJuIGU9bnVsbCx0fXZhciBhLGk9bigxMiksbD1uKDExOSksYz1uKDUwKSx1PW4oNDgpLHM9big3NyksZj1uKDM0KSxuPW4oNDcpLGQ9InByb3RvdHlwZSIscD0ic2NyaXB0IixtPW4oIklFX1BST1RPIiksaD1mdW5jdGlvbihlKXtyZXR1cm4iPCIrcCsiPiIrZSsiPC8iK3ArIj4ifSxnPWZ1bmN0aW9uKCl7dHJ5e2E9bmV3IEFjdGl2ZVhPYmplY3QoImh0bWxmaWxlIil9Y2F0Y2goZSl7fWc9InVuZGVmaW5lZCI9PXR5cGVvZiBkb2N1bWVudHx8ZG9jdW1lbnQuZG9tYWluJiZhP28oYSk6KGU9ZigiaWZyYW1lIiksdD0iamF2YSIrcCsiOiIsZS5zdHlsZS5kaXNwbGF5PSJub25lIixzLmFwcGVuZENoaWxkKGUpLGUuc3JjPVN0cmluZyh0KSwodD1lLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQpLm9wZW4oKSx0LndyaXRlKGgoImRvY3VtZW50LkY9T2JqZWN0IikpLHQuY2xvc2UoKSx0LkYpO2Zvcih2YXIgZSx0LG49Yy5sZW5ndGg7bi0tOylkZWxldGUgZ1tkXVtjW25dXTtyZXR1cm4gZygpfTt1W21dPSEwLGUuZXhwb3J0cz1PYmplY3QuY3JlYXRlfHxmdW5jdGlvbihlLHQpe3ZhciBuO3JldHVybiBudWxsIT09ZT8ocltkXT1pKGUpLG49bmV3IHIscltkXT1udWxsLG5bbV09ZSk6bj1nKCksdm9pZCAwPT09dD9uOmwuZihuLHQpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNTQpLG89bigyKSxhPW4oMjkpLGk9big1KSgidG9TdHJpbmdUYWciKSxsPU9iamVjdCxjPSJBcmd1bWVudHMiPT09YShmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHN9KCkpO2UuZXhwb3J0cz1yP2E6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIHZvaWQgMD09PWU/IlVuZGVmaW5lZCI6bnVsbD09PWU/Ik51bGwiOiJzdHJpbmciPT10eXBlb2YodD1mdW5jdGlvbihlLHQpe3RyeXtyZXR1cm4gZVt0XX1jYXRjaChlKXt9fShlPWwoZSksaSkpP3Q6Yz9hKGUpOiJPYmplY3QiPT09KHQ9YShlKSkmJm8oZS5jYWxsZWUpPyJBcmd1bWVudHMiOnR9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigxNykuZixvPW4oMTEpLGE9big1KSgidG9TdHJpbmdUYWciKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4peyhlPWUmJiFuP2UucHJvdG90eXBlOmUpJiYhbyhlLGEpJiZyKGUsYSx7Y29uZmlndXJhYmxlOiEwLHZhbHVlOnR9KX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDMpLG49bigyOSk7ZS5leHBvcnRzPSJwcm9jZXNzIj09PW4oci5wcm9jZXNzKX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMjEpLG89bigxNTApLG49bigyNykuQ09OU1RSVUNUT1I7ZS5leHBvcnRzPW58fCFvKGZ1bmN0aW9uKGUpe3IuYWxsKGUpLnRoZW4odm9pZCAwLGZ1bmN0aW9uKCl7fSl9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oOSksbz1uKDgpLGE9bigxMDQpLGk9bigyMyksbD1uKDI0KSxjPW4oNjApLHU9bigxMSkscz1uKDY5KSxmPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7dC5mPXI/ZjpmdW5jdGlvbihlLHQpe2lmKGU9bChlKSx0PWModCkscyl0cnl7cmV0dXJuIGYoZSx0KX1jYXRjaChlKXt9aWYodShlLHQpKXJldHVybiBpKCFvKGEuZixlLHQpLGVbdF0pfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMzApLG89VHlwZUVycm9yO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZihyKGUpKXRocm93IG5ldyBvKCJDYW4ndCBjYWxsIG1ldGhvZCBvbiAiK2UpO3JldHVybiBlfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTApLG89bigzMCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7ZT1lW3RdO3JldHVybiBvKGUpP3ZvaWQgMDpyKGUpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMyksbj1uKDQ1KSxvPSJfX2NvcmUtanNfc2hhcmVkX18iLHI9cltvXXx8bihvLHt9KTtlLmV4cG9ydHM9cn0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMyksbz1PYmplY3QuZGVmaW5lUHJvcGVydHk7ZS5leHBvcnRzPWZ1bmN0aW9uKHQsbil7dHJ5e28ocix0LHt2YWx1ZTpuLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pfWNhdGNoKGUpe3JbdF09bn1yZXR1cm4gbn19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDQpLG89bigyKSxuPW4oNDQpLGE9cihGdW5jdGlvbi50b1N0cmluZyk7byhuLmluc3BlY3RTb3VyY2UpfHwobi5pbnNwZWN0U291cmNlPWZ1bmN0aW9uKGUpe3JldHVybiBhKGUpfSksZS5leHBvcnRzPW4uaW5zcGVjdFNvdXJjZX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNjYpLG89big2OCksYT1yKCJrZXlzIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBhW2VdfHwoYVtlXT1vKGUpKX19LGZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9e319LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDExMyk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2U9K2U7cmV0dXJuIGUhPWV8fDA9PWU/MDpyKGUpfX0sZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1bImNvbnN0cnVjdG9yIiwiaGFzT3duUHJvcGVydHkiLCJpc1Byb3RvdHlwZU9mIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJ0b0xvY2FsZVN0cmluZyIsInRvU3RyaW5nIiwidmFsdWVPZiJdfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigxMSksbz1uKDIpLGE9big2NyksaT1uKDQ3KSxuPW4oMTE2KSxsPWkoIklFX1BST1RPIiksYz1PYmplY3QsdT1jLnByb3RvdHlwZTtlLmV4cG9ydHM9bj9jLmdldFByb3RvdHlwZU9mOmZ1bmN0aW9uKGUpe3ZhciB0LGU9YShlKTtyZXR1cm4gcihlLGwpP2VbbF06KHQ9ZS5jb25zdHJ1Y3RvcixvKHQpJiZlIGluc3RhbmNlb2YgdD90LnByb3RvdHlwZTplIGluc3RhbmNlb2YgYz91Om51bGwpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciBvPW4oMTE3KSxhPW4oMTIpLGk9bigxMTgpO2UuZXhwb3J0cz1PYmplY3Quc2V0UHJvdG90eXBlT2Z8fCgiX19wcm90b19fImlue30/ZnVuY3Rpb24oKXt2YXIgbixyPSExLGU9e307dHJ5eyhuPW8oT2JqZWN0LnByb3RvdHlwZSwiX19wcm90b19fIiwic2V0IikpKGUsW10pLHI9ZSBpbnN0YW5jZW9mIEFycmF5fWNhdGNoKGUpe31yZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gYShlKSxpKHQpLHI/bihlLHQpOmUuX19wcm90b19fPXQsZX19KCk6dm9pZCAwKX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTI1KSxvPW4oMTApLGE9bigyOCksaT1yKHIuYmluZCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIG8oZSksdm9pZCAwPT09dD9lOmE/aShlLHQpOmZ1bmN0aW9uKCl7cmV0dXJuIGUuYXBwbHkodCxhcmd1bWVudHMpfX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj17fTtyW24oNSkoInRvU3RyaW5nVGFnIildPSJ6IixlLmV4cG9ydHM9IltvYmplY3Qgel0iPT09U3RyaW5nKHIpfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigzNyksbz1TdHJpbmc7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKCJTeW1ib2wiPT09cihlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY29udmVydCBhIFN5bWJvbCB2YWx1ZSB0byBhIHN0cmluZyIpO3JldHVybiBvKGUpfX0sZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1uKDE3NSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDE3Niksbz17Y2hpbGRDb250ZXh0VHlwZXM6ITAsY29udGV4dFR5cGU6ITAsY29udGV4dFR5cGVzOiEwLGRlZmF1bHRQcm9wczohMCxkaXNwbGF5TmFtZTohMCxnZXREZWZhdWx0UHJvcHM6ITAsZ2V0RGVyaXZlZFN0YXRlRnJvbUVycm9yOiEwLGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wczohMCxtaXhpbnM6ITAscHJvcFR5cGVzOiEwLHR5cGU6ITB9LGY9e25hbWU6ITAsbGVuZ3RoOiEwLHByb3RvdHlwZTohMCxjYWxsZXI6ITAsY2FsbGVlOiEwLGFyZ3VtZW50czohMCxhcml0eTohMH0sYT17JCR0eXBlb2Y6ITAsY29tcGFyZTohMCxkZWZhdWx0UHJvcHM6ITAsZGlzcGxheU5hbWU6ITAscHJvcFR5cGVzOiEwLHR5cGU6ITB9LGk9e307ZnVuY3Rpb24gZChlKXtyZXR1cm4gci5pc01lbW8oZSk/YTppW2UuJCR0eXBlb2ZdfHxvfWlbci5Gb3J3YXJkUmVmXT17JCR0eXBlb2Y6ITAscmVuZGVyOiEwLGRlZmF1bHRQcm9wczohMCxkaXNwbGF5TmFtZTohMCxwcm9wVHlwZXM6ITB9LGlbci5NZW1vXT1hO3ZhciBwPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSxtPU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzLGg9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyxnPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IsYj1PYmplY3QuZ2V0UHJvdG90eXBlT2YseT1PYmplY3QucHJvdG90eXBlO2UuZXhwb3J0cz1mdW5jdGlvbiBlKHQsbixyKXtpZigic3RyaW5nIiE9dHlwZW9mIG4pe3kmJihvPWIobikpJiZvIT09eSYmZSh0LG8scik7Zm9yKHZhciBvLGE9bShuKSxpPShoJiYoYT1hLmNvbmNhdChoKG4pKSksZCh0KSksbD1kKG4pLGM9MDtjPGEubGVuZ3RoOysrYyl7dmFyIHU9YVtjXTtpZighKGZbdV18fHImJnJbdV18fGwmJmxbdV18fGkmJmlbdV0pKXt2YXIgcz1nKG4sdSk7dHJ5e3AodCx1LHMpfWNhdGNoKGUpe319fX1yZXR1cm4gdH19LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiByKHQpe3ZhciBuPU9iamVjdC5jcmVhdGUobnVsbCk7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiB2b2lkIDA9PT1uW2VdJiYobltlXT10KGUpKSxuW2VdfX1uLmQodCwiYSIsZnVuY3Rpb24oKXtyZXR1cm4gYX0pO3ZhciBvPS9eKChjaGlsZHJlbnxkYW5nZXJvdXNseVNldElubmVySFRNTHxrZXl8cmVmfGF1dG9Gb2N1c3xkZWZhdWx0VmFsdWV8ZGVmYXVsdENoZWNrZWR8aW5uZXJIVE1MfHN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZ3xzdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmd8dmFsdWVMaW5rfGFiYnJ8YWNjZXB0fGFjY2VwdENoYXJzZXR8YWNjZXNzS2V5fGFjdGlvbnxhbGxvd3xhbGxvd1VzZXJNZWRpYXxhbGxvd1BheW1lbnRSZXF1ZXN0fGFsbG93RnVsbFNjcmVlbnxhbGxvd1RyYW5zcGFyZW5jeXxhbHR8YXN5bmN8YXV0b0NvbXBsZXRlfGF1dG9QbGF5fGNhcHR1cmV8Y2VsbFBhZGRpbmd8Y2VsbFNwYWNpbmd8Y2hhbGxlbmdlfGNoYXJTZXR8Y2hlY2tlZHxjaXRlfGNsYXNzSUR8Y2xhc3NOYW1lfGNvbHN8Y29sU3Bhbnxjb250ZW50fGNvbnRlbnRFZGl0YWJsZXxjb250ZXh0TWVudXxjb250cm9sc3xjb250cm9sc0xpc3R8Y29vcmRzfGNyb3NzT3JpZ2lufGRhdGF8ZGF0ZVRpbWV8ZGVjb2Rpbmd8ZGVmYXVsdHxkZWZlcnxkaXJ8ZGlzYWJsZWR8ZGlzYWJsZVBpY3R1cmVJblBpY3R1cmV8ZG93bmxvYWR8ZHJhZ2dhYmxlfGVuY1R5cGV8ZW50ZXJLZXlIaW50fGZvcm18Zm9ybUFjdGlvbnxmb3JtRW5jVHlwZXxmb3JtTWV0aG9kfGZvcm1Ob1ZhbGlkYXRlfGZvcm1UYXJnZXR8ZnJhbWVCb3JkZXJ8aGVhZGVyc3xoZWlnaHR8aGlkZGVufGhpZ2h8aHJlZnxocmVmTGFuZ3xodG1sRm9yfGh0dHBFcXVpdnxpZHxpbnB1dE1vZGV8aW50ZWdyaXR5fGlzfGtleVBhcmFtc3xrZXlUeXBlfGtpbmR8bGFiZWx8bGFuZ3xsaXN0fGxvYWRpbmd8bG9vcHxsb3d8bWFyZ2luSGVpZ2h0fG1hcmdpbldpZHRofG1heHxtYXhMZW5ndGh8bWVkaWF8bWVkaWFHcm91cHxtZXRob2R8bWlufG1pbkxlbmd0aHxtdWx0aXBsZXxtdXRlZHxuYW1lfG5vbmNlfG5vVmFsaWRhdGV8b3BlbnxvcHRpbXVtfHBhdHRlcm58cGxhY2Vob2xkZXJ8cGxheXNJbmxpbmV8cG9zdGVyfHByZWxvYWR8cHJvZmlsZXxyYWRpb0dyb3VwfHJlYWRPbmx5fHJlZmVycmVyUG9saWN5fHJlbHxyZXF1aXJlZHxyZXZlcnNlZHxyb2xlfHJvd3N8cm93U3BhbnxzYW5kYm94fHNjb3BlfHNjb3BlZHxzY3JvbGxpbmd8c2VhbWxlc3N8c2VsZWN0ZWR8c2hhcGV8c2l6ZXxzaXplc3xzbG90fHNwYW58c3BlbGxDaGVja3xzcmN8c3JjRG9jfHNyY0xhbmd8c3JjU2V0fHN0YXJ0fHN0ZXB8c3R5bGV8c3VtbWFyeXx0YWJJbmRleHx0YXJnZXR8dGl0bGV8dHJhbnNsYXRlfHR5cGV8dXNlTWFwfHZhbHVlfHdpZHRofHdtb2RlfHdyYXB8YWJvdXR8ZGF0YXR5cGV8aW5saXN0fHByZWZpeHxwcm9wZXJ0eXxyZXNvdXJjZXx0eXBlb2Z8dm9jYWJ8YXV0b0NhcGl0YWxpemV8YXV0b0NvcnJlY3R8YXV0b1NhdmV8Y29sb3J8aW5jcmVtZW50YWx8ZmFsbGJhY2t8aW5lcnR8aXRlbVByb3B8aXRlbVNjb3BlfGl0ZW1UeXBlfGl0ZW1JRHxpdGVtUmVmfG9ufG9wdGlvbnxyZXN1bHRzfHNlY3VyaXR5fHVuc2VsZWN0YWJsZXxhY2NlbnRIZWlnaHR8YWNjdW11bGF0ZXxhZGRpdGl2ZXxhbGlnbm1lbnRCYXNlbGluZXxhbGxvd1Jlb3JkZXJ8YWxwaGFiZXRpY3xhbXBsaXR1ZGV8YXJhYmljRm9ybXxhc2NlbnR8YXR0cmlidXRlTmFtZXxhdHRyaWJ1dGVUeXBlfGF1dG9SZXZlcnNlfGF6aW11dGh8YmFzZUZyZXF1ZW5jeXxiYXNlbGluZVNoaWZ0fGJhc2VQcm9maWxlfGJib3h8YmVnaW58Ymlhc3xieXxjYWxjTW9kZXxjYXBIZWlnaHR8Y2xpcHxjbGlwUGF0aFVuaXRzfGNsaXBQYXRofGNsaXBSdWxlfGNvbG9ySW50ZXJwb2xhdGlvbnxjb2xvckludGVycG9sYXRpb25GaWx0ZXJzfGNvbG9yUHJvZmlsZXxjb2xvclJlbmRlcmluZ3xjb250ZW50U2NyaXB0VHlwZXxjb250ZW50U3R5bGVUeXBlfGN1cnNvcnxjeHxjeXxkfGRlY2VsZXJhdGV8ZGVzY2VudHxkaWZmdXNlQ29uc3RhbnR8ZGlyZWN0aW9ufGRpc3BsYXl8ZGl2aXNvcnxkb21pbmFudEJhc2VsaW5lfGR1cnxkeHxkeXxlZGdlTW9kZXxlbGV2YXRpb258ZW5hYmxlQmFja2dyb3VuZHxlbmR8ZXhwb25lbnR8ZXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZHxmaWxsfGZpbGxPcGFjaXR5fGZpbGxSdWxlfGZpbHRlcnxmaWx0ZXJSZXN8ZmlsdGVyVW5pdHN8Zmxvb2RDb2xvcnxmbG9vZE9wYWNpdHl8Zm9jdXNhYmxlfGZvbnRGYW1pbHl8Zm9udFNpemV8Zm9udFNpemVBZGp1c3R8Zm9udFN0cmV0Y2h8Zm9udFN0eWxlfGZvbnRWYXJpYW50fGZvbnRXZWlnaHR8Zm9ybWF0fGZyb218ZnJ8Znh8Znl8ZzF8ZzJ8Z2x5cGhOYW1lfGdseXBoT3JpZW50YXRpb25Ib3Jpem9udGFsfGdseXBoT3JpZW50YXRpb25WZXJ0aWNhbHxnbHlwaFJlZnxncmFkaWVudFRyYW5zZm9ybXxncmFkaWVudFVuaXRzfGhhbmdpbmd8aG9yaXpBZHZYfGhvcml6T3JpZ2luWHxpZGVvZ3JhcGhpY3xpbWFnZVJlbmRlcmluZ3xpbnxpbjJ8aW50ZXJjZXB0fGt8azF8azJ8azN8azR8a2VybmVsTWF0cml4fGtlcm5lbFVuaXRMZW5ndGh8a2VybmluZ3xrZXlQb2ludHN8a2V5U3BsaW5lc3xrZXlUaW1lc3xsZW5ndGhBZGp1c3R8bGV0dGVyU3BhY2luZ3xsaWdodGluZ0NvbG9yfGxpbWl0aW5nQ29uZUFuZ2xlfGxvY2FsfG1hcmtlckVuZHxtYXJrZXJNaWR8bWFya2VyU3RhcnR8bWFya2VySGVpZ2h0fG1hcmtlclVuaXRzfG1hcmtlcldpZHRofG1hc2t8bWFza0NvbnRlbnRVbml0c3xtYXNrVW5pdHN8bWF0aGVtYXRpY2FsfG1vZGV8bnVtT2N0YXZlc3xvZmZzZXR8b3BhY2l0eXxvcGVyYXRvcnxvcmRlcnxvcmllbnR8b3JpZW50YXRpb258b3JpZ2lufG92ZXJmbG93fG92ZXJsaW5lUG9zaXRpb258b3ZlcmxpbmVUaGlja25lc3N8cGFub3NlMXxwYWludE9yZGVyfHBhdGhMZW5ndGh8cGF0dGVybkNvbnRlbnRVbml0c3xwYXR0ZXJuVHJhbnNmb3JtfHBhdHRlcm5Vbml0c3xwb2ludGVyRXZlbnRzfHBvaW50c3xwb2ludHNBdFh8cG9pbnRzQXRZfHBvaW50c0F0WnxwcmVzZXJ2ZUFscGhhfHByZXNlcnZlQXNwZWN0UmF0aW98cHJpbWl0aXZlVW5pdHN8cnxyYWRpdXN8cmVmWHxyZWZZfHJlbmRlcmluZ0ludGVudHxyZXBlYXRDb3VudHxyZXBlYXREdXJ8cmVxdWlyZWRFeHRlbnNpb25zfHJlcXVpcmVkRmVhdHVyZXN8cmVzdGFydHxyZXN1bHR8cm90YXRlfHJ4fHJ5fHNjYWxlfHNlZWR8c2hhcGVSZW5kZXJpbmd8c2xvcGV8c3BhY2luZ3xzcGVjdWxhckNvbnN0YW50fHNwZWN1bGFyRXhwb25lbnR8c3BlZWR8c3ByZWFkTWV0aG9kfHN0YXJ0T2Zmc2V0fHN0ZERldmlhdGlvbnxzdGVtaHxzdGVtdnxzdGl0Y2hUaWxlc3xzdG9wQ29sb3J8c3RvcE9wYWNpdHl8c3RyaWtldGhyb3VnaFBvc2l0aW9ufHN0cmlrZXRocm91Z2hUaGlja25lc3N8c3RyaW5nfHN0cm9rZXxzdHJva2VEYXNoYXJyYXl8c3Ryb2tlRGFzaG9mZnNldHxzdHJva2VMaW5lY2FwfHN0cm9rZUxpbmVqb2lufHN0cm9rZU1pdGVybGltaXR8c3Ryb2tlT3BhY2l0eXxzdHJva2VXaWR0aHxzdXJmYWNlU2NhbGV8c3lzdGVtTGFuZ3VhZ2V8dGFibGVWYWx1ZXN8dGFyZ2V0WHx0YXJnZXRZfHRleHRBbmNob3J8dGV4dERlY29yYXRpb258dGV4dFJlbmRlcmluZ3x0ZXh0TGVuZ3RofHRvfHRyYW5zZm9ybXx1MXx1Mnx1bmRlcmxpbmVQb3NpdGlvbnx1bmRlcmxpbmVUaGlja25lc3N8dW5pY29kZXx1bmljb2RlQmlkaXx1bmljb2RlUmFuZ2V8dW5pdHNQZXJFbXx2QWxwaGFiZXRpY3x2SGFuZ2luZ3x2SWRlb2dyYXBoaWN8dk1hdGhlbWF0aWNhbHx2YWx1ZXN8dmVjdG9yRWZmZWN0fHZlcnNpb258dmVydEFkdll8dmVydE9yaWdpblh8dmVydE9yaWdpbll8dmlld0JveHx2aWV3VGFyZ2V0fHZpc2liaWxpdHl8d2lkdGhzfHdvcmRTcGFjaW5nfHdyaXRpbmdNb2RlfHh8eEhlaWdodHx4MXx4Mnx4Q2hhbm5lbFNlbGVjdG9yfHhsaW5rQWN0dWF0ZXx4bGlua0FyY3JvbGV8eGxpbmtIcmVmfHhsaW5rUm9sZXx4bGlua1Nob3d8eGxpbmtUaXRsZXx4bGlua1R5cGV8eG1sQmFzZXx4bWxuc3x4bWxuc1hsaW5rfHhtbExhbmd8eG1sU3BhY2V8eXx5MXx5Mnx5Q2hhbm5lbFNlbGVjdG9yfHp8em9vbUFuZFBhbnxmb3J8Y2xhc3N8YXV0b2ZvY3VzKXwoKFtEZF1bQWFdW1R0XVtBYV18W0FhXVtScl1bSWldW0FhXXx4KS0uKikpJC8sYT1yKGZ1bmN0aW9uKGUpe3JldHVybiBvLnRlc3QoZSl8fDExMT09PWUuY2hhckNvZGVBdCgwKSYmMTEwPT09ZS5jaGFyQ29kZUF0KDEpJiZlLmNoYXJDb2RlQXQoMik8OTF9KX0sZnVuY3Rpb24oZSx0LG4pe24oMTAzKX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTA2KSxvPW4oNjIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtlPXIoZSwic3RyaW5nIik7cmV0dXJuIG8oZSk/ZTplKyIifX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPSJvYmplY3QiPT10eXBlb2YgZG9jdW1lbnQmJmRvY3VtZW50LmFsbDtlLmV4cG9ydHM9e2FsbDpyLElTX0hUTUxEREE6dm9pZCAwPT09ciYmdm9pZCAwIT09cn19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDE0KSxvPW4oMiksYT1uKDMxKSxuPW4oNjMpLGk9T2JqZWN0O2UuZXhwb3J0cz1uP2Z1bmN0aW9uKGUpe3JldHVybiJzeW1ib2wiPT10eXBlb2YgZX06ZnVuY3Rpb24oZSl7dmFyIHQ9cigiU3ltYm9sIik7cmV0dXJuIG8odCkmJmEodC5wcm90b3R5cGUsaShlKSl9fSxmdW5jdGlvbihlLHQsbil7bj1uKDY0KTtlLmV4cG9ydHM9biYmIVN5bWJvbC5zaGFtJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcn0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNjUpLG89big2KSxhPW4oMykuU3RyaW5nO2UuZXhwb3J0cz0hIU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMmJiFvKGZ1bmN0aW9uKCl7dmFyIGU9U3ltYm9sKCJzeW1ib2wgZGV0ZWN0aW9uIik7cmV0dXJuIWEoZSl8fCEoT2JqZWN0KGUpaW5zdGFuY2VvZiBTeW1ib2wpfHwhU3ltYm9sLnNoYW0mJnImJnI8NDF9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByLG8sYT1uKDMpLG49bigzMiksaT1hLnByb2Nlc3MsYT1hLkRlbm8saT1pJiZpLnZlcnNpb25zfHxhJiZhLnZlcnNpb24sYT1pJiZpLnY4OyEobz1hPzA8KHI9YS5zcGxpdCgiLiIpKVswXSYmclswXTw0PzE6KyhyWzBdK3JbMV0pOm8pJiZuJiYoIShyPW4ubWF0Y2goL0VkZ2VcLyhcZCspLykpfHw3NDw9clsxXSkmJihyPW4ubWF0Y2goL0Nocm9tZVwvKFxkKykvKSkmJihvPStyWzFdKSxlLmV4cG9ydHM9b30sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTUpLG89big0NCk7KGUuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybiBvW2VdfHwob1tlXT12b2lkIDAhPT10P3Q6e30pfSkoInZlcnNpb25zIixbXSkucHVzaCh7dmVyc2lvbjoiMy4zNC4wIixtb2RlOnI/InB1cmUiOiJnbG9iYWwiLGNvcHlyaWdodDoiwqkgMjAxNC0yMDIzIERlbmlzIFB1c2hrYXJldiAoemxvaXJvY2sucnUpIixsaWNlbnNlOiJodHRwczovL2dpdGh1Yi5jb20vemxvaXJvY2svY29yZS1qcy9ibG9iL3YzLjM0LjAvTElDRU5TRSIsc291cmNlOiJodHRwczovL2dpdGh1Yi5jb20vemxvaXJvY2svY29yZS1qcyJ9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNDIpLG89T2JqZWN0O2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbyhyKGUpKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgbj1uKDQpLHI9MCxvPU1hdGgucmFuZG9tKCksYT1uKDEuLnRvU3RyaW5nKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIlN5bWJvbCgiKyh2b2lkIDA9PT1lPyIiOmUpKyIpXyIrYSgrK3IrbywzNil9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big5KSxvPW4oNiksYT1uKDM0KTtlLmV4cG9ydHM9IXImJiFvKGZ1bmN0aW9uKCl7cmV0dXJuIDchPT1PYmplY3QuZGVmaW5lUHJvcGVydHkoYSgiZGl2IiksImEiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gN319KS5hfSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDkpLG49big2KTtlLmV4cG9ydHM9ciYmbihmdW5jdGlvbigpe3JldHVybiA0MiE9PU9iamVjdC5kZWZpbmVQcm9wZXJ0eShmdW5jdGlvbigpe30sInByb3RvdHlwZSIse3ZhbHVlOjQyLHdyaXRhYmxlOiExfSkucHJvdG90eXBlfSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDQpLG89big2KSxhPW4oMiksaT1uKDExKSxsPW4oOSksYz1uKDcyKS5DT05GSUdVUkFCTEUsdT1uKDQ2KSxuPW4oMzUpLHM9bi5lbmZvcmNlLGY9bi5nZXQsZD1TdHJpbmcscD1PYmplY3QuZGVmaW5lUHJvcGVydHksbT1yKCIiLnNsaWNlKSxoPXIoIiIucmVwbGFjZSksZz1yKFtdLmpvaW4pLGI9bCYmIW8oZnVuY3Rpb24oKXtyZXR1cm4gOCE9PXAoZnVuY3Rpb24oKXt9LCJsZW5ndGgiLHt2YWx1ZTo4fSkubGVuZ3RofSkseT1TdHJpbmcoU3RyaW5nKS5zcGxpdCgiU3RyaW5nIiksbj1lLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4peyJTeW1ib2woIj09PW0oZCh0KSwwLDcpJiYodD0iWyIraChkKHQpLC9eU3ltYm9sXCgoW14pXSopXCkvLCIkMSIpKyJdIiksbiYmbi5nZXR0ZXImJih0PSJnZXQgIit0KSxuJiZuLnNldHRlciYmKHQ9InNldCAiK3QpLCghaShlLCJuYW1lIil8fGMmJmUubmFtZSE9PXQpJiYobD9wKGUsIm5hbWUiLHt2YWx1ZTp0LGNvbmZpZ3VyYWJsZTohMH0pOmUubmFtZT10KSxiJiZuJiZpKG4sImFyaXR5IikmJmUubGVuZ3RoIT09bi5hcml0eSYmcChlLCJsZW5ndGgiLHt2YWx1ZTpuLmFyaXR5fSk7dHJ5e24mJmkobiwiY29uc3RydWN0b3IiKSYmbi5jb25zdHJ1Y3Rvcj9sJiZwKGUsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSk6ZS5wcm90b3R5cGUmJihlLnByb3RvdHlwZT12b2lkIDApfWNhdGNoKGUpe31uPXMoZSk7cmV0dXJuIGkobiwic291cmNlIil8fChuLnNvdXJjZT1nKHksInN0cmluZyI9PXR5cGVvZiB0P3Q6IiIpKSxlfTtGdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc9bihmdW5jdGlvbigpe3JldHVybiBhKHRoaXMpJiZmKHRoaXMpLnNvdXJjZXx8dSh0aGlzKX0sInRvU3RyaW5nIil9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDkpLG49bigxMSksbz1GdW5jdGlvbi5wcm90b3R5cGUsYT1yJiZPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yLG49bihvLCJuYW1lIiksaT1uJiYic29tZXRoaW5nIj09PWZ1bmN0aW9uKCl7fS5uYW1lLHI9biYmKCFyfHxhKG8sIm5hbWUiKS5jb25maWd1cmFibGUpO2UuZXhwb3J0cz17RVhJU1RTOm4sUFJPUEVSOmksQ09ORklHVVJBQkxFOnJ9fSxmdW5jdGlvbihlLHQsbil7dmFyIGM9bigxMSksdT1uKDEwOSkscz1uKDQxKSxmPW4oMTcpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7Zm9yKHZhciByPXUodCksbz1mLmYsYT1zLmYsaT0wO2k8ci5sZW5ndGg7aSsrKXt2YXIgbD1yW2ldO2MoZSxsKXx8biYmYyhuLGwpfHxvKGUsbCxhKHQsbCkpfX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDQpLGk9bigxMSksbD1uKDI0KSxjPW4oMTExKS5pbmRleE9mLHU9big0OCkscz1yKFtdLnB1c2gpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuLHI9bChlKSxvPTAsYT1bXTtmb3IobiBpbiByKSFpKHUsbikmJmkocixuKSYmcyhhLG4pO2Zvcig7dC5sZW5ndGg+bzspIWkocixuPXRbbysrXSl8fH5jKGEsbil8fHMoYSxuKTtyZXR1cm4gYX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDExNCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiByKGUubGVuZ3RoKX19LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiByKGUsdCl7cmV0dXJuKGU9Y1tsKGUpXSk9PT1zfHxlIT09dSYmKGEodCk/byh0KTohIXQpfXZhciBvPW4oNiksYT1uKDIpLGk9LyN8XC5wcm90b3R5cGVcLi8sbD1yLm5vcm1hbGl6ZT1mdW5jdGlvbihlKXtyZXR1cm4gU3RyaW5nKGUpLnJlcGxhY2UoaSwiLiIpLnRvTG93ZXJDYXNlKCl9LGM9ci5kYXRhPXt9LHU9ci5OQVRJVkU9Ik4iLHM9ci5QT0xZRklMTD0iUCI7ZS5leHBvcnRzPXJ9LGZ1bmN0aW9uKGUsdCxuKXtuPW4oMTQpO2UuZXhwb3J0cz1uKCJkb2N1bWVudCIsImRvY3VtZW50RWxlbWVudCIpfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigzNyksbz1uKDQzKSxhPW4oMzApLGk9bigyNiksbD1uKDUpKCJpdGVyYXRvciIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZighYShlKSlyZXR1cm4gbyhlLGwpfHxvKGUsIkBAaXRlcmF0b3IiKXx8aVtyKGUpXX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDI0KSxvPW4oMTMwKSxhPW4oMjYpLGk9bigzNSksbD1uKDE3KS5mLGM9big4MCksdT1uKDgyKSxzPW4oMTUpLG49big5KSxmPSJBcnJheSBJdGVyYXRvciIsZD1pLnNldCxwPWkuZ2V0dGVyRm9yKGYpLGk9KGUuZXhwb3J0cz1jKEFycmF5LCJBcnJheSIsZnVuY3Rpb24oZSx0KXtkKHRoaXMse3R5cGU6Zix0YXJnZXQ6cihlKSxpbmRleDowLGtpbmQ6dH0pfSxmdW5jdGlvbigpe3ZhciBlPXAodGhpcyksdD1lLnRhcmdldCxuPWUuaW5kZXgrKztpZighdHx8bj49dC5sZW5ndGgpcmV0dXJuIGUudGFyZ2V0PXZvaWQgMCx1KHZvaWQgMCwhMCk7c3dpdGNoKGUua2luZCl7Y2FzZSJrZXlzIjpyZXR1cm4gdShuLCExKTtjYXNlInZhbHVlcyI6cmV0dXJuIHUodFtuXSwhMSl9cmV0dXJuIHUoW24sdFtuXV0sITEpfSwidmFsdWVzIiksYS5Bcmd1bWVudHM9YS5BcnJheSk7aWYobygia2V5cyIpLG8oInZhbHVlcyIpLG8oImVudHJpZXMiKSwhcyYmbiYmInZhbHVlcyIhPT1pLm5hbWUpdHJ5e2woaSwibmFtZSIse3ZhbHVlOiJ2YWx1ZXMifSl9Y2F0Y2goZSl7fX0sZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIGgoKXtyZXR1cm4gdGhpc312YXIgZz1uKDcpLGI9big4KSx5PW4oMTUpLHI9big3Miksdj1uKDIpLHc9bigxMzEpLHg9big1MSksaz1uKDUyKSxTPW4oMzgpLEM9bigxOCksRT1uKDE5KSxvPW4oNSksTz1uKDI2KSxuPW4oODEpLGo9ci5QUk9QRVIsQT1yLkNPTkZJR1VSQUJMRSxQPW4uSXRlcmF0b3JQcm90b3R5cGUsST1uLkJVR0dZX1NBRkFSSV9JVEVSQVRPUlMsXz1vKCJpdGVyYXRvciIpLHo9InZhbHVlcyIsVD0iZW50cmllcyI7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuLHIsbyxhLGkpe3cobix0LHIpO2Z1bmN0aW9uIGwoZSl7aWYoZT09PW8mJnApcmV0dXJuIHA7aWYoIUkmJmUmJmUgaW4gZilyZXR1cm4gZltlXTtzd2l0Y2goZSl7Y2FzZSJrZXlzIjpjYXNlIHo6Y2FzZSBUOnJldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgbih0aGlzLGUpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG4odGhpcyl9fXZhciBjLHUscj10KyIgSXRlcmF0b3IiLHM9ITEsZj1lLnByb3RvdHlwZSxkPWZbX118fGZbIkBAaXRlcmF0b3IiXXx8byYmZltvXSxwPSFJJiZkfHxsKG8pLG09IkFycmF5Ij09PXQmJmYuZW50cmllc3x8ZDtpZihtJiYobT14KG0uY2FsbChuZXcgZSkpKSE9PU9iamVjdC5wcm90b3R5cGUmJm0ubmV4dCYmKHl8fHgobSk9PT1QfHwoaz9rKG0sUCk6dihtW19dKXx8RShtLF8saCkpLFMobSxyLCEwLCEwKSx5KSYmKE9bcl09aCksaiYmbz09PXomJmQmJmQubmFtZSE9PXomJigheSYmQT9DKGYsIm5hbWUiLHopOihzPSEwLHA9ZnVuY3Rpb24oKXtyZXR1cm4gYihkLHRoaXMpfSkpLG8paWYoYz17dmFsdWVzOmwoeiksa2V5czphP3A6bCgia2V5cyIpLGVudHJpZXM6bChUKX0saSlmb3IodSBpbiBjKSFJJiYhcyYmdSBpbiBmfHxFKGYsdSxjW3VdKTtlbHNlIGcoe3RhcmdldDp0LHByb3RvOiEwLGZvcmNlZDpJfHxzfSxjKTtyZXR1cm4geSYmIWl8fGZbX109PT1wfHxFKGYsXyxwLHtuYW1lOm99KSxPW3RdPXAsY319LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcixvLGE9big2KSxpPW4oMiksbD1uKDEzKSxjPW4oMzYpLHU9big1MSkscz1uKDE5KSxmPW4oNSksbj1uKDE1KSxkPWYoIml0ZXJhdG9yIiksZj0hMTtbXS5rZXlzJiYoIm5leHQiaW4obz1bXS5rZXlzKCkpPyh1PXUodShvKSkpIT09T2JqZWN0LnByb3RvdHlwZSYmKHI9dSk6Zj0hMCksIWwocil8fGEoZnVuY3Rpb24oKXt2YXIgZT17fTtyZXR1cm4gcltkXS5jYWxsKGUpIT09ZX0pP3I9e306biYmKHI9YyhyKSksaShyW2RdKXx8cyhyLGQsZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pLGUuZXhwb3J0cz17SXRlcmF0b3JQcm90b3R5cGU6cixCVUdHWV9TQUZBUklfSVRFUkFUT1JTOmZ9fSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJue3ZhbHVlOmUsZG9uZTp0fX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDEyKSxvPW4oMTM5KSxhPW4oMzApLGk9big1KSgic3BlY2llcyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBlPXIoZSkuY29uc3RydWN0b3I7cmV0dXJuIHZvaWQgMD09PWV8fGEoZT1yKGUpW2ldKT90Om8oZSl9fSxmdW5jdGlvbihlLHQsbil7ZnVuY3Rpb24gcihlKXtyZXR1cm4gZnVuY3Rpb24oKXtQKGUpfX1mdW5jdGlvbiBvKGUpe1AoZS5kYXRhKX1mdW5jdGlvbiBhKGUpe2MucG9zdE1lc3NhZ2UoRShlKSxpLnByb3RvY29sKyIvLyIraS5ob3N0KX12YXIgaSxsLGM9bigzKSx1PW4oMTQxKSxzPW4oNTMpLGY9bigyKSxkPW4oMTEpLHA9big2KSxtPW4oNzcpLGg9bigxNDIpLGc9bigzNCksYj1uKDE0MykseT1uKDg1KSxuPW4oMzkpLHY9Yy5zZXRJbW1lZGlhdGUsdz1jLmNsZWFySW1tZWRpYXRlLHg9Yy5wcm9jZXNzLGs9Yy5EaXNwYXRjaCxTPWMuRnVuY3Rpb24sQz1jLk1lc3NhZ2VDaGFubmVsLEU9Yy5TdHJpbmcsTz0wLGo9e30sQT0ib25yZWFkeXN0YXRlY2hhbmdlIixQPShwKGZ1bmN0aW9uKCl7aT1jLmxvY2F0aW9ufSksZnVuY3Rpb24oZSl7dmFyIHQ7ZChqLGUpJiYodD1qW2VdLGRlbGV0ZSBqW2VdLHQoKSl9KTt2JiZ3fHwodj1mdW5jdGlvbihlKXtiKGFyZ3VtZW50cy5sZW5ndGgsMSk7dmFyIHQ9ZihlKT9lOlMoZSksbj1oKGFyZ3VtZW50cywxKTtyZXR1cm4galsrK09dPWZ1bmN0aW9uKCl7dSh0LHZvaWQgMCxuKX0sbChPKSxPfSx3PWZ1bmN0aW9uKGUpe2RlbGV0ZSBqW2VdfSxuP2w9ZnVuY3Rpb24oZSl7eC5uZXh0VGljayhyKGUpKX06ayYmay5ub3c/bD1mdW5jdGlvbihlKXtrLm5vdyhyKGUpKX06QyYmIXk/KHk9KG49bmV3IEMpLnBvcnQyLG4ucG9ydDEub25tZXNzYWdlPW8sbD1zKHkucG9zdE1lc3NhZ2UseSkpOmMuYWRkRXZlbnRMaXN0ZW5lciYmZihjLnBvc3RNZXNzYWdlKSYmIWMuaW1wb3J0U2NyaXB0cyYmaSYmImZpbGU6IiE9PWkucHJvdG9jb2wmJiFwKGEpPyhsPWEsYy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixvLCExKSk6bD1BIGluIGcoInNjcmlwdCIpP2Z1bmN0aW9uKGUpe20uYXBwZW5kQ2hpbGQoZygic2NyaXB0IikpW0FdPWZ1bmN0aW9uKCl7bS5yZW1vdmVDaGlsZCh0aGlzKSxQKGUpfX06ZnVuY3Rpb24oZSl7c2V0VGltZW91dChyKGUpLDApfSksZS5leHBvcnRzPXtzZXQ6dixjbGVhcjp3fX0sZnVuY3Rpb24oZSx0LG4pe249bigzMik7ZS5leHBvcnRzPS8oPzppcGFkfGlwaG9uZXxpcG9kKS4qYXBwbGV3ZWJraXQvaS50ZXN0KG4pfSxmdW5jdGlvbihlLHQsbil7ZnVuY3Rpb24gcigpe3RoaXMuaGVhZD1udWxsLHRoaXMudGFpbD1udWxsfXIucHJvdG90eXBlPXthZGQ6ZnVuY3Rpb24oZSl7dmFyIGU9e2l0ZW06ZSxuZXh0Om51bGx9LHQ9dGhpcy50YWlsO3Q/dC5uZXh0PWU6dGhpcy5oZWFkPWUsdGhpcy50YWlsPWV9LGdldDpmdW5jdGlvbigpe3ZhciBlPXRoaXMuaGVhZDtpZihlKXJldHVybiBudWxsPT09KHRoaXMuaGVhZD1lLm5leHQpJiYodGhpcy50YWlsPW51bGwpLGUuaXRlbX19LGUuZXhwb3J0cz1yfSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPSJvYmplY3QiPT10eXBlb2YgRGVubyYmRGVubyYmIm9iamVjdCI9PXR5cGVvZiBEZW5vLnZlcnNpb259LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDEyKSxvPW4oMTMpLGE9bigxNik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHIoZSksbyh0KSYmdC5jb25zdHJ1Y3Rvcj09PWU/dDooKDAsKGU9YS5mKGUpKS5yZXNvbHZlKSh0KSxlLnByb21pc2UpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNyksdT1uKDgpLHM9bigxMCksbz1uKDE2KSxhPW4oMjApLGY9bigyNSk7cih7dGFyZ2V0OiJQcm9taXNlIixzdGF0OiEwLGZvcmNlZDpuKDQwKX0se2FsbFNldHRsZWQ6ZnVuY3Rpb24oZSl7dmFyIGw9dGhpcyx0PW8uZihsKSxjPXQucmVzb2x2ZSxuPXQucmVqZWN0LHI9YShmdW5jdGlvbigpe3ZhciByPXMobC5yZXNvbHZlKSxvPVtdLGE9MCxpPTE7ZihlLGZ1bmN0aW9uKGUpe3ZhciB0PWErKyxuPSExO2krKyx1KHIsbCxlKS50aGVuKGZ1bmN0aW9uKGUpe258fChuPSEwLG9bdF09e3N0YXR1czoiZnVsZmlsbGVkIix2YWx1ZTplfSwtLWkpfHxjKG8pfSxmdW5jdGlvbihlKXtufHwobj0hMCxvW3RdPXtzdGF0dXM6InJlamVjdGVkIixyZWFzb246ZX0sLS1pKXx8YyhvKX0pfSksLS1pfHxjKG8pfSk7cmV0dXJuIHIuZXJyb3ImJm4oci52YWx1ZSksdC5wcm9taXNlfX0pfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big3KSxkPW4oOCkscD1uKDEwKSxvPW4oMTQpLGE9bigxNiksaT1uKDIwKSxtPW4oMjUpLG49big0MCksaD0iTm8gb25lIHByb21pc2UgcmVzb2x2ZWQiO3Ioe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6bn0se2FueTpmdW5jdGlvbihlKXt2YXIgYz10aGlzLHU9bygiQWdncmVnYXRlRXJyb3IiKSx0PWEuZihjKSxzPXQucmVzb2x2ZSxmPXQucmVqZWN0LG49aShmdW5jdGlvbigpe3ZhciByPXAoYy5yZXNvbHZlKSxvPVtdLGE9MCxpPTEsbD0hMTttKGUsZnVuY3Rpb24oZSl7dmFyIHQ9YSsrLG49ITE7aSsrLGQocixjLGUpLnRoZW4oZnVuY3Rpb24oZSl7bnx8bHx8KGw9ITAscyhlKSl9LGZ1bmN0aW9uKGUpe258fGx8fChuPSEwLG9bdF09ZSwtLWkpfHxmKG5ldyB1KG8saCkpfSl9KSwtLWl8fGYobmV3IHUobyxoKSl9KTtyZXR1cm4gbi5lcnJvciYmZihuLnZhbHVlKSx0LnByb21pc2V9fSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDcpLG89bigxNik7cih7dGFyZ2V0OiJQcm9taXNlIixzdGF0OiEwfSx7d2l0aFJlc29sdmVyczpmdW5jdGlvbigpe3ZhciBlPW8uZih0aGlzKTtyZXR1cm57cHJvbWlzZTplLnByb21pc2UscmVzb2x2ZTplLnJlc29sdmUscmVqZWN0OmUucmVqZWN0fX19KX0sZnVuY3Rpb24oZSx0KXt2YXIgbixyLGU9ZS5leHBvcnRzPXt9O2Z1bmN0aW9uIG8oKXt0aHJvdyBuZXcgRXJyb3IoInNldFRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQiKX1mdW5jdGlvbiBhKCl7dGhyb3cgbmV3IEVycm9yKCJjbGVhclRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQiKX10cnl7bj0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0Om99Y2F0Y2goZSl7bj1vfXRyeXtyPSJmdW5jdGlvbiI9PXR5cGVvZiBjbGVhclRpbWVvdXQ/Y2xlYXJUaW1lb3V0OmF9Y2F0Y2goZSl7cj1hfWZ1bmN0aW9uIGkodCl7aWYobj09PXNldFRpbWVvdXQpcmV0dXJuIHNldFRpbWVvdXQodCwwKTtpZigobj09PW98fCFuKSYmc2V0VGltZW91dClyZXR1cm4obj1zZXRUaW1lb3V0KSh0LDApO3RyeXtyZXR1cm4gbih0LDApfWNhdGNoKGUpe3RyeXtyZXR1cm4gbi5jYWxsKG51bGwsdCwwKX1jYXRjaChlKXtyZXR1cm4gbi5jYWxsKHRoaXMsdCwwKX19fXZhciBsLGM9W10sdT0hMSxzPS0xO2Z1bmN0aW9uIGYoKXt1JiZsJiYodT0hMSxsLmxlbmd0aD9jPWwuY29uY2F0KGMpOnM9LTEsYy5sZW5ndGgpJiZkKCl9ZnVuY3Rpb24gZCgpe2lmKCF1KXtmb3IodmFyIGU9aShmKSx0PSh1PSEwLGMubGVuZ3RoKTt0Oyl7Zm9yKGw9YyxjPVtdOysrczx0OylsJiZsW3NdLnJ1bigpO3M9LTEsdD1jLmxlbmd0aH1sPW51bGwsdT0hMSwhZnVuY3Rpb24odCl7aWYocj09PWNsZWFyVGltZW91dClyZXR1cm4gY2xlYXJUaW1lb3V0KHQpO2lmKChyPT09YXx8IXIpJiZjbGVhclRpbWVvdXQpcmV0dXJuKHI9Y2xlYXJUaW1lb3V0KSh0KTt0cnl7cih0KX1jYXRjaChlKXt0cnl7cmV0dXJuIHIuY2FsbChudWxsLHQpfWNhdGNoKGUpe3JldHVybiByLmNhbGwodGhpcyx0KX19fShlKX19ZnVuY3Rpb24gcChlLHQpe3RoaXMuZnVuPWUsdGhpcy5hcnJheT10fWZ1bmN0aW9uIG0oKXt9ZS5uZXh0VGljaz1mdW5jdGlvbihlKXt2YXIgdD1uZXcgQXJyYXkoYXJndW1lbnRzLmxlbmd0aC0xKTtpZigxPGFyZ3VtZW50cy5sZW5ndGgpZm9yKHZhciBuPTE7bjxhcmd1bWVudHMubGVuZ3RoO24rKyl0W24tMV09YXJndW1lbnRzW25dO2MucHVzaChuZXcgcChlLHQpKSwxIT09Yy5sZW5ndGh8fHV8fGkoZCl9LHAucHJvdG90eXBlLnJ1bj1mdW5jdGlvbigpe3RoaXMuZnVuLmFwcGx5KG51bGwsdGhpcy5hcnJheSl9LGUudGl0bGU9ImJyb3dzZXIiLGUuYnJvd3Nlcj0hMCxlLmVudj17fSxlLmFyZ3Y9W10sZS52ZXJzaW9uPSIiLGUudmVyc2lvbnM9e30sZS5vbj1tLGUuYWRkTGlzdGVuZXI9bSxlLm9uY2U9bSxlLm9mZj1tLGUucmVtb3ZlTGlzdGVuZXI9bSxlLnJlbW92ZUFsbExpc3RlbmVycz1tLGUuZW1pdD1tLGUucHJlcGVuZExpc3RlbmVyPW0sZS5wcmVwZW5kT25jZUxpc3RlbmVyPW0sZS5saXN0ZW5lcnM9ZnVuY3Rpb24oZSl7cmV0dXJuW119LGUuYmluZGluZz1mdW5jdGlvbihlKXt0aHJvdyBuZXcgRXJyb3IoInByb2Nlc3MuYmluZGluZyBpcyBub3Qgc3VwcG9ydGVkIil9LGUuY3dkPWZ1bmN0aW9uKCl7cmV0dXJuIi8ifSxlLmNoZGlyPWZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcigicHJvY2Vzcy5jaGRpciBpcyBub3Qgc3VwcG9ydGVkIil9LGUudW1hc2s9ZnVuY3Rpb24oKXtyZXR1cm4gMH19LGZ1bmN0aW9uKGUsdCxuKXtuPW4oMTY5KTt0LmNyZWF0ZVJvb3Q9bi5jcmVhdGVSb290LHQuaHlkcmF0ZVJvb3Q9bi5oeWRyYXRlUm9vdH0sZnVuY3Rpb24odixlLHQpeyFmdW5jdGlvbihlKXt2YXIgbj05MDA3MTk5MjU0NzQwOTkxLHI9IltvYmplY3QgQXJndW1lbnRzXSIsbz0iW29iamVjdCBGdW5jdGlvbl0iLGE9IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIixpPSJbb2JqZWN0IFN5bWJvbF0iLGU9Im9iamVjdCI9PXR5cGVvZiBlJiZlJiZlLk9iamVjdD09PU9iamVjdCYmZSx0PSJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZiYmc2VsZi5PYmplY3Q9PT1PYmplY3QmJnNlbGYsZT1lfHx0fHxGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpO3ZhciB0PU9iamVjdC5wcm90b3R5cGUsbD10Lmhhc093blByb3BlcnR5LGM9dC50b1N0cmluZyxlPWUuU3ltYm9sLHU9dC5wcm9wZXJ0eUlzRW51bWVyYWJsZSxzPWU/ZS5pc0NvbmNhdFNwcmVhZGFibGU6dm9pZCAwLGY9TWF0aC5tYXg7ZnVuY3Rpb24gbShlKXtyZXR1cm4gcChlKXx8ZnVuY3Rpb24oZSl7cmV0dXJuIGgoZSkmJmZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZmdW5jdGlvbihlKXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIGUmJi0xPGUmJmUlMT09MCYmZTw9bn0oZS5sZW5ndGgpJiYhZnVuY3Rpb24oZSl7ZT1mdW5jdGlvbihlKXt2YXIgdD10eXBlb2YgZTtyZXR1cm4gZSYmKCJvYmplY3QiPT10fHwiZnVuY3Rpb24iPT10KX0oZSk/Yy5jYWxsKGUpOiIiO3JldHVybiBlPT1vfHxlPT1hfShlKX0oZSl9KHQ9ZSkmJmwuY2FsbCh0LCJjYWxsZWUiKSYmKCF1LmNhbGwodCwiY2FsbGVlIil8fGMuY2FsbCh0KT09cil8fCEhKHMmJmUmJmVbc10pO3ZhciB0fWZ1bmN0aW9uIGQoZSl7dmFyIHQ7cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlfHwic3ltYm9sIj09dHlwZW9mKHQ9ZSl8fGgodCkmJmMuY2FsbCh0KT09aT9lOiIwIj09KHQ9ZSsiIikmJjEvZT09LTEvMD8iLTAiOnR9dmFyIHA9QXJyYXkuaXNBcnJheTtmdW5jdGlvbiBoKGUpe3JldHVybiEhZSYmIm9iamVjdCI9PXR5cGVvZiBlfWZ1bmN0aW9uIGcoKXtmb3IodmFyIGU9YXJndW1lbnRzLHQ9LTEsbj1mKGUubGVuZ3RoLXksMCkscj1BcnJheShuKTsrK3Q8bjspclt0XT1lW3krdF07Zm9yKHZhciB0PS0xLG89QXJyYXkoeSsxKTsrK3Q8eTspb1t0XT1lW3RdO29beV09cjt2YXIgYT1iLGk9dGhpcyxsPW87c3dpdGNoKGwubGVuZ3RoKXtjYXNlIDA6cmV0dXJuIGEuY2FsbChpKTtjYXNlIDE6cmV0dXJuIGEuY2FsbChpLGxbMF0pO2Nhc2UgMjpyZXR1cm4gYS5jYWxsKGksbFswXSxsWzFdKTtjYXNlIDM6cmV0dXJuIGEuY2FsbChpLGxbMF0sbFsxXSxsWzJdKX1yZXR1cm4gYS5hcHBseShpLGwpfXZhciBiLHk7Yj1mdW5jdGlvbihlLHQpe2lmKG51bGw9PWUpcmV0dXJue307Zm9yKHZhciBuPWUsZT1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0tMSxyPWU/ZS5sZW5ndGg6MCxvPUFycmF5KHIpOysrbjxyOylvW25dPXQoZVtuXSxuLGUpO3JldHVybiBvfShmdW5jdGlvbiBlKHQsbixyLG8sYSl7dmFyIGk9LTEsbD10Lmxlbmd0aDtmb3Iocj1yfHxtLGE9YXx8W107KytpPGw7KXt2YXIgYz10W2ldO2lmKDA8biYmcihjKSlpZigxPG4pZShjLG4tMSxyLG8sYSk7ZWxzZXtwPWQ9Zj1zPXU9dm9pZCAwO2Zvcih2YXIgdT1hLHM9YyxmPS0xLGQ9cy5sZW5ndGgscD11Lmxlbmd0aDsrK2Y8ZDspdVtwK2ZdPXNbZl19ZWxzZSBvfHwoYVthLmxlbmd0aF09Yyl9cmV0dXJuIGF9KHQsMSksZCkscj1uPU9iamVjdChuKSxvPWUsYT1mdW5jdGlvbihlLHQpe3JldHVybiB0IGluIG59LGk9LTEsbD1vLmxlbmd0aCxjPXt9OysraTxsOyl7dmFyIHU9b1tpXSxzPXJbdV07YShzLHUpJiYoY1t1XT1zKX1yZXR1cm4gY30seT1mKHZvaWQgMD09PXk/Yi5sZW5ndGgtMTp5LDApO3YuZXhwb3J0cz1nfS5jYWxsKHRoaXMsdCgyMikpfSxmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixyKXtpZih2b2lkIDAhPT0odT1uP24uY2FsbChyLGUsdCk6dm9pZCAwKSlyZXR1cm4hIXU7aWYoZSE9PXQpe2lmKCJvYmplY3QiIT10eXBlb2YgZXx8IWV8fCJvYmplY3QiIT10eXBlb2YgdHx8IXQpcmV0dXJuITE7dmFyIG89T2JqZWN0LmtleXMoZSksYT1PYmplY3Qua2V5cyh0KTtpZihvLmxlbmd0aCE9PWEubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgaT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmJpbmQodCksbD0wO2w8by5sZW5ndGg7bCsrKXt2YXIgYz1vW2xdO2lmKCFpKGMpKXJldHVybiExO3ZhciB1LHM9ZVtjXSxmPXRbY107aWYoITE9PT0odT1uP24uY2FsbChyLHMsZixjKTp2b2lkIDApfHx2b2lkIDA9PT11JiZzIT09ZilyZXR1cm4hMX19cmV0dXJuITB9fSxmdW5jdGlvbihlLHQsbil7dC5hPWZ1bmN0aW9uKGUpe2Z1bmN0aW9uIEEoZSx0LG4pe3ZhciByPXQudHJpbSgpLnNwbGl0KGYpLG89KHQ9cikubGVuZ3RoLGE9ZS5sZW5ndGg7c3dpdGNoKGEpe2Nhc2UgMDpjYXNlIDE6dmFyIGk9MDtmb3IoZT0wPT09YT8iIjplWzBdKyIgIjtpPG87KytpKXRbaV09dShlLHRbaV0sbikudHJpbSgpO2JyZWFrO2RlZmF1bHQ6dmFyIGw9aT0wO2Zvcih0PVtdO2k8bzsrK2kpZm9yKHZhciBjPTA7YzxhOysrYyl0W2wrK109dShlW2NdKyIgIixyW2ldLG4pLnRyaW0oKX1yZXR1cm4gdH1mdW5jdGlvbiB1KGUsdCxuKXt2YXIgcj10LmNoYXJDb2RlQXQoMCk7c3dpdGNoKHI9cjwzMz8odD10LnRyaW0oKSkuY2hhckNvZGVBdCgwKTpyKXtjYXNlIDM4OnJldHVybiB0LnJlcGxhY2UobywiJDEiK2UudHJpbSgpKTtjYXNlIDU4OnJldHVybiBlLnRyaW0oKSt0LnJlcGxhY2UobywiJDEiK2UudHJpbSgpKTtkZWZhdWx0OmlmKDA8K24mJjA8dC5pbmRleE9mKCJcZiIpKXJldHVybiB0LnJlcGxhY2UobywoNTg9PT1lLmNoYXJDb2RlQXQoMCk/IiI6IiQxIikrZS50cmltKCkpfXJldHVybiBlK3R9ZnVuY3Rpb24gUChlLHQsbixyKXt2YXIgbyxhPWUrIjsiLGk9Mip0KzMqbis0KnI7aWYoOTQ0PT1pKXJldHVybiBlPWEuaW5kZXhPZigiOiIsOSkrMSxvPWEuc3Vic3RyaW5nKGUsYS5sZW5ndGgtMSkudHJpbSgpLG89YS5zdWJzdHJpbmcoMCxlKS50cmltKCkrbysiOyIsMT09PUh8fDI9PT1IJiZJKG8sMSk/Ii13ZWJraXQtIitvK286bztpZigwIT09SCYmKDIhPT1IfHxJKGEsMSkpKXN3aXRjaChpKXtjYXNlIDEwMTU6cmV0dXJuIDk3PT09YS5jaGFyQ29kZUF0KDEwKT8iLXdlYmtpdC0iK2ErYTphO2Nhc2UgOTUxOnJldHVybiAxMTY9PT1hLmNoYXJDb2RlQXQoMyk/Ii13ZWJraXQtIithK2E6YTtjYXNlIDk2MzpyZXR1cm4gMTEwPT09YS5jaGFyQ29kZUF0KDUpPyItd2Via2l0LSIrYSthOmE7Y2FzZSAxMDA5OmlmKDEwMCE9PWEuY2hhckNvZGVBdCg0KSlicmVhaztjYXNlIDk2OTpjYXNlIDk0MjpyZXR1cm4iLXdlYmtpdC0iK2ErYTtjYXNlIDk3ODpyZXR1cm4iLXdlYmtpdC0iK2ErIi1tb3otIithK2E7Y2FzZSAxMDE5OmNhc2UgOTgzOnJldHVybiItd2Via2l0LSIrYSsiLW1vei0iK2ErIi1tcy0iK2ErYTtjYXNlIDg4MzppZig0NT09PWEuY2hhckNvZGVBdCg4KSlyZXR1cm4iLXdlYmtpdC0iK2ErYTtpZigwPGEuaW5kZXhPZigiaW1hZ2Utc2V0KCIsMTEpKXJldHVybiBhLnJlcGxhY2UoZywiJDEtd2Via2l0LSQyIikrYTticmVhaztjYXNlIDkzMjppZig0NT09PWEuY2hhckNvZGVBdCg0KSlzd2l0Y2goYS5jaGFyQ29kZUF0KDUpKXtjYXNlIDEwMzpyZXR1cm4iLXdlYmtpdC1ib3gtIithLnJlcGxhY2UoIi1ncm93IiwiIikrIi13ZWJraXQtIithKyItbXMtIithLnJlcGxhY2UoImdyb3ciLCJwb3NpdGl2ZSIpK2E7Y2FzZSAxMTU6cmV0dXJuIi13ZWJraXQtIithKyItbXMtIithLnJlcGxhY2UoInNocmluayIsIm5lZ2F0aXZlIikrYTtjYXNlIDk4OnJldHVybiItd2Via2l0LSIrYSsiLW1zLSIrYS5yZXBsYWNlKCJiYXNpcyIsInByZWZlcnJlZC1zaXplIikrYX1yZXR1cm4iLXdlYmtpdC0iK2ErIi1tcy0iK2ErYTtjYXNlIDk2NDpyZXR1cm4iLXdlYmtpdC0iK2ErIi1tcy1mbGV4LSIrYSthO2Nhc2UgMTAyMzppZig5OSE9PWEuY2hhckNvZGVBdCg4KSlicmVhaztyZXR1cm4iLXdlYmtpdC1ib3gtcGFjayIrKG89YS5zdWJzdHJpbmcoYS5pbmRleE9mKCI6IiwxNSkpLnJlcGxhY2UoImZsZXgtIiwiIikucmVwbGFjZSgic3BhY2UtYmV0d2VlbiIsImp1c3RpZnkiKSkrIi13ZWJraXQtIithKyItbXMtZmxleC1wYWNrIitvK2E7Y2FzZSAxMDA1OnJldHVybiBjLnRlc3QoYSk/YS5yZXBsYWNlKGwsIjotd2Via2l0LSIpK2EucmVwbGFjZShsLCI6LW1vei0iKSthOmE7Y2FzZSAxZTM6c3dpdGNoKHQ9KG89YS5zdWJzdHJpbmcoMTMpLnRyaW0oKSkuaW5kZXhPZigiLSIpKzEsby5jaGFyQ29kZUF0KDApK28uY2hhckNvZGVBdCh0KSl7Y2FzZSAyMjY6bz1hLnJlcGxhY2UoZCwidGIiKTticmVhaztjYXNlIDIzMjpvPWEucmVwbGFjZShkLCJ0Yi1ybCIpO2JyZWFrO2Nhc2UgMjIwOm89YS5yZXBsYWNlKGQsImxyIik7YnJlYWs7ZGVmYXVsdDpyZXR1cm4gYX1yZXR1cm4iLXdlYmtpdC0iK2ErIi1tcy0iK28rYTtjYXNlIDEwMTc6aWYoLTE9PT1hLmluZGV4T2YoInN0aWNreSIsOSkpYnJlYWs7Y2FzZSA5NzU6c3dpdGNoKHQ9KGE9ZSkubGVuZ3RoLTEwLGk9KG89KDMzPT09YS5jaGFyQ29kZUF0KHQpP2Euc3Vic3RyaW5nKDAsdCk6YSkuc3Vic3RyaW5nKGUuaW5kZXhPZigiOiIsNykrMSkudHJpbSgpKS5jaGFyQ29kZUF0KDApKygwfG8uY2hhckNvZGVBdCg3KSkpe2Nhc2UgMjAzOmlmKG8uY2hhckNvZGVBdCg4KTwxMTEpYnJlYWs7Y2FzZSAxMTU6YT1hLnJlcGxhY2UobywiLXdlYmtpdC0iK28pKyI7IithO2JyZWFrO2Nhc2UgMjA3OmNhc2UgMTAyOmE9YS5yZXBsYWNlKG8sIi13ZWJraXQtIisoMTAyPGk/ImlubGluZS0iOiIiKSsiYm94IikrIjsiK2EucmVwbGFjZShvLCItd2Via2l0LSIrbykrIjsiK2EucmVwbGFjZShvLCItbXMtIitvKyJib3giKSsiOyIrYX1yZXR1cm4gYSsiOyI7Y2FzZSA5Mzg6aWYoNDU9PT1hLmNoYXJDb2RlQXQoNSkpc3dpdGNoKGEuY2hhckNvZGVBdCg2KSl7Y2FzZSAxMDU6cmV0dXJuIG89YS5yZXBsYWNlKCItaXRlbXMiLCIiKSwiLXdlYmtpdC0iK2ErIi13ZWJraXQtYm94LSIrbysiLW1zLWZsZXgtIitvK2E7Y2FzZSAxMTU6cmV0dXJuIi13ZWJraXQtIithKyItbXMtZmxleC1pdGVtLSIrYS5yZXBsYWNlKG0sIiIpK2E7ZGVmYXVsdDpyZXR1cm4iLXdlYmtpdC0iK2ErIi1tcy1mbGV4LWxpbmUtcGFjayIrYS5yZXBsYWNlKCJhbGlnbi1jb250ZW50IiwiIikucmVwbGFjZShtLCIiKSthfWJyZWFrO2Nhc2UgOTczOmNhc2UgOTg5OmlmKDQ1IT09YS5jaGFyQ29kZUF0KDMpfHwxMjI9PT1hLmNoYXJDb2RlQXQoNCkpYnJlYWs7Y2FzZSA5MzE6Y2FzZSA5NTM6aWYoITA9PT1oLnRlc3QoZSkpcmV0dXJuIDExNT09PShvPWUuc3Vic3RyaW5nKGUuaW5kZXhPZigiOiIpKzEpKS5jaGFyQ29kZUF0KDApP1AoZS5yZXBsYWNlKCJzdHJldGNoIiwiZmlsbC1hdmFpbGFibGUiKSx0LG4scikucmVwbGFjZSgiOmZpbGwtYXZhaWxhYmxlIiwiOnN0cmV0Y2giKTphLnJlcGxhY2UobywiLXdlYmtpdC0iK28pK2EucmVwbGFjZShvLCItbW96LSIrby5yZXBsYWNlKCJmaWxsLSIsIiIpKSthO2JyZWFrO2Nhc2UgOTYyOmlmKGE9Ii13ZWJraXQtIithKygxMDI9PT1hLmNoYXJDb2RlQXQoNSk/Ii1tcy0iK2E6IiIpK2EsMjExPT09bityJiYxMDU9PT1hLmNoYXJDb2RlQXQoMTMpJiYwPGEuaW5kZXhPZigidHJhbnNmb3JtIiwxMCkpcmV0dXJuIGEuc3Vic3RyaW5nKDAsYS5pbmRleE9mKCI7IiwyNykrMSkucmVwbGFjZShzLCIkMS13ZWJraXQtJDIiKSthfXJldHVybiBhfWZ1bmN0aW9uIEkoZSx0KXt2YXIgbj1lLmluZGV4T2YoMT09PXQ/IjoiOiJ7Iikscj1lLnN1YnN0cmluZygwLDMhPT10P246MTApLG49ZS5zdWJzdHJpbmcobisxLGUubGVuZ3RoLTEpO3JldHVybiBpKDIhPT10P3I6ci5yZXBsYWNlKGEsIiQxIiksbix0KX1mdW5jdGlvbiBfKGUsdCl7dmFyIG49UCh0LHQuY2hhckNvZGVBdCgwKSx0LmNoYXJDb2RlQXQoMSksdC5jaGFyQ29kZUF0KDIpKTtyZXR1cm4gbiE9PXQrIjsiP24ucmVwbGFjZShyLCIgb3IgKCQxKSIpLnN1YnN0cmluZyg0KToiKCIrdCsiKSJ9ZnVuY3Rpb24geihlLHQsbixyLG8sYSxpLGwsYyx1KXtmb3IodmFyIHMsZj0wLGQ9dDtmPCQ7KytmKXN3aXRjaChzPWJbZl0uY2FsbChwLGUsZCxuLHIsbyxhLGksbCxjLHUpKXtjYXNlIHZvaWQgMDpjYXNlITE6Y2FzZSEwOmNhc2UgbnVsbDpicmVhaztkZWZhdWx0OmQ9c31pZihkIT09dClyZXR1cm4gZH1mdW5jdGlvbiB0KGUpe3JldHVybiB2b2lkIDAhPT0oZT1lLnByZWZpeCkmJihpPW51bGwsZT8iZnVuY3Rpb24iIT10eXBlb2YgZT9IPTE6KEg9MixpPWUpOkg9MCksdH1mdW5jdGlvbiBwKGUsdCl7ZT1bZT1lLmNoYXJDb2RlQXQoMCk8MzM/ZS50cmltKCk6ZV0sMDwkJiZ2b2lkIDAhPT0obj16KC0xLHQsZSxlLEIsVSwwLDAsMCwwKSkmJiJzdHJpbmciPT10eXBlb2YgbiYmKHQ9bik7dmFyIG4sdD1mdW5jdGlvbiBlKHQsbixyLG8sYSl7Zm9yKHZhciBpLGwsYyx1LHMsZj0wLGQ9MCxwPTAsbT0wLGg9MCxnPTAsYj1jPWk9MCx5PTAsdj0wLHc9MCx4PTAsaz1yLmxlbmd0aCxTPWstMSxDPSIiLEU9IiIsTz0iIixqPSIiO3k8azspe2lmKGw9ci5jaGFyQ29kZUF0KHkpLHk9PT1TJiYwIT09ZCttK3ArZiYmKDAhPT1kJiYobD00Nz09PWQ/MTA6NDcpLG09cD1mPTAsaysrLFMrKyksMD09PWQrbStwK2Ype2lmKHk9PT1TJiYwPChDPTA8dj9DLnJlcGxhY2UoTCwiIik6QykudHJpbSgpLmxlbmd0aCl7c3dpdGNoKGwpe2Nhc2UgMzI6Y2FzZSA5OmNhc2UgNTk6Y2FzZSAxMzpjYXNlIDEwOmJyZWFrO2RlZmF1bHQ6Qys9ci5jaGFyQXQoeSl9bD01OX1zd2l0Y2gobCl7Y2FzZSAxMjM6Zm9yKGk9KEM9Qy50cmltKCkpLmNoYXJDb2RlQXQoMCksYz0xLHg9Kyt5O3k8azspe3N3aXRjaChsPXIuY2hhckNvZGVBdCh5KSl7Y2FzZSAxMjM6YysrO2JyZWFrO2Nhc2UgMTI1OmMtLTticmVhaztjYXNlIDQ3OnN3aXRjaChsPXIuY2hhckNvZGVBdCh5KzEpKXtjYXNlIDQyOmNhc2UgNDc6ZTp7Zm9yKGI9eSsxO2I8UzsrK2Ipc3dpdGNoKHIuY2hhckNvZGVBdChiKSl7Y2FzZSA0NzppZig0MiE9PWx8fDQyIT09ci5jaGFyQ29kZUF0KGItMSl8fHkrMj09PWIpYnJlYWs7eT1iKzE7YnJlYWsgZTtjYXNlIDEwOmlmKDQ3PT09bCl7eT1iKzE7YnJlYWsgZX19eT1ifX1icmVhaztjYXNlIDkxOmwrKztjYXNlIDQwOmwrKztjYXNlIDM0OmNhc2UgMzk6Zm9yKDt5Kys8UyYmci5jaGFyQ29kZUF0KHkpIT09bDspO31pZigwPT09YylicmVhazt5Kyt9aWYoYz1yLnN1YnN0cmluZyh4LHkpLDY0PT09KGk9MD09PWk/KEM9Qy5yZXBsYWNlKFQsIiIpLnRyaW0oKSkuY2hhckNvZGVBdCgwKTppKSl7c3dpdGNoKGw9KEM9MDx2P0MucmVwbGFjZShMLCIiKTpDKS5jaGFyQ29kZUF0KDEpKXtjYXNlIDEwMDpjYXNlIDEwOTpjYXNlIDExNTpjYXNlIDQ1OnY9bjticmVhaztkZWZhdWx0OnY9Vn1pZih4PShjPWUobix2LGMsbCxhKzEpKS5sZW5ndGgsMDwkJiYocz16KDMsYyx2PUEoVixDLHcpLG4sQixVLHgsbCxhLG8pLEM9di5qb2luKCIiKSx2b2lkIDAhPT1zKSYmMD09PSh4PShjPXMudHJpbSgpKS5sZW5ndGgpJiYobD0wLGM9IiIpLDA8eClzd2l0Y2gobCl7Y2FzZSAxMTU6Qz1DLnJlcGxhY2UoRCxfKTtjYXNlIDEwMDpjYXNlIDEwOTpjYXNlIDQ1OmM9QysieyIrYysifSI7YnJlYWs7Y2FzZSAxMDc6Yz0oQz1DLnJlcGxhY2UoTSwiJDEgJDIiKSkrInsiK2MrIn0iLGM9MT09PUh8fDI9PT1IJiZJKCJAIitjLDMpPyJALXdlYmtpdC0iK2MrIkAiK2M6IkAiK2M7YnJlYWs7ZGVmYXVsdDpjPUMrYywxMTI9PT1vJiYoRSs9YyxjPSIiKX1lbHNlIGM9IiJ9ZWxzZSBjPWUobixBKG4sQyx3KSxjLG8sYSsxKTtPKz1jLGM9dz12PWI9aT0wLEM9IiIsbD1yLmNoYXJDb2RlQXQoKyt5KTticmVhaztjYXNlIDEyNTpjYXNlIDU5OmlmKDE8KHg9KEM9KDA8dj9DLnJlcGxhY2UoTCwiIik6QykudHJpbSgpKS5sZW5ndGgpKXN3aXRjaCgwPT09YiYmKGk9Qy5jaGFyQ29kZUF0KDApLDQ1PT09aXx8OTY8aSYmaTwxMjMpJiYoeD0oQz1DLnJlcGxhY2UoIiAiLCI6IikpLmxlbmd0aCksMDwkJiZ2b2lkIDAhPT0ocz16KDEsQyxuLHQsQixVLEUubGVuZ3RoLG8sYSxvKSkmJjA9PT0oeD0oQz1zLnRyaW0oKSkubGVuZ3RoKSYmKEM9IlwwXDAiKSxpPUMuY2hhckNvZGVBdCgwKSxsPUMuY2hhckNvZGVBdCgxKSxpKXtjYXNlIDA6YnJlYWs7Y2FzZSA2NDppZigxMDU9PT1sfHw5OT09PWwpe2orPUMrci5jaGFyQXQoeSk7YnJlYWt9ZGVmYXVsdDo1OCE9PUMuY2hhckNvZGVBdCh4LTEpJiYoRSs9UChDLGksbCxDLmNoYXJDb2RlQXQoMikpKX13PXY9Yj1pPTAsQz0iIixsPXIuY2hhckNvZGVBdCgrK3kpfX1zd2l0Y2gobCl7Y2FzZSAxMzpjYXNlIDEwOjQ3PT09ZD9kPTA6MD09PTEraSYmMTA3IT09byYmMDxDLmxlbmd0aCYmKHY9MSxDKz0iXDAiKSwwPCQqVyYmeigwLEMsbix0LEIsVSxFLmxlbmd0aCxvLGEsbyksVT0xLEIrKzticmVhaztjYXNlIDU5OmNhc2UgMTI1OmlmKDA9PT1kK20rcCtmKXtVKys7YnJlYWt9ZGVmYXVsdDpzd2l0Y2goVSsrLHU9ci5jaGFyQXQoeSksbCl7Y2FzZSA5OmNhc2UgMzI6aWYoMD09PW0rZitkKXN3aXRjaChoKXtjYXNlIDQ0OmNhc2UgNTg6Y2FzZSA5OmNhc2UgMzI6dT0iIjticmVhaztkZWZhdWx0OjMyIT09bCYmKHU9IiAiKX1icmVhaztjYXNlIDA6dT0iXFwwIjticmVhaztjYXNlIDEyOnU9IlxcZiI7YnJlYWs7Y2FzZSAxMTp1PSJcXHYiO2JyZWFrO2Nhc2UgMzg6MD09PW0rZCtmJiYodj13PTEsdT0iXGYiK3UpO2JyZWFrO2Nhc2UgMTA4OmlmKDA9PT1tK2QrZitGJiYwPGIpc3dpdGNoKHktYil7Y2FzZSAyOjExMj09PWgmJjU4PT09ci5jaGFyQ29kZUF0KHktMykmJihGPWgpO2Nhc2UgODoxMTE9PT1nJiYoRj1nKX1icmVhaztjYXNlIDU4OjA9PT1tK2QrZiYmKGI9eSk7YnJlYWs7Y2FzZSA0NDowPT09ZCtwK20rZiYmKHY9MSx1Kz0iXHIiKTticmVhaztjYXNlIDM0OmNhc2UgMzk6MD09PWQmJihtPW09PT1sPzA6MD09PW0/bDptKTticmVhaztjYXNlIDkxOjA9PT1tK2QrcCYmZisrO2JyZWFrO2Nhc2UgOTM6MD09PW0rZCtwJiZmLS07YnJlYWs7Y2FzZSA0MTowPT09bStkK2YmJnAtLTticmVhaztjYXNlIDQwOjA9PT1tK2QrZiYmKDA9PT1pJiYyKmgrMypnIT01MzMmJihpPTEpLHArKyk7YnJlYWs7Y2FzZSA2NDowPT09ZCtwK20rZitiK2MmJihjPTEpO2JyZWFrO2Nhc2UgNDI6Y2FzZSA0NzppZighKDA8bStmK3ApKXN3aXRjaChkKXtjYXNlIDA6c3dpdGNoKDIqbCszKnIuY2hhckNvZGVBdCh5KzEpKXtjYXNlIDIzNTpkPTQ3O2JyZWFrO2Nhc2UgMjIwOng9eSxkPTQyfWJyZWFrO2Nhc2UgNDI6NDc9PT1sJiY0Mj09PWgmJngrMiE9PXkmJigzMz09PXIuY2hhckNvZGVBdCh4KzIpJiYoRSs9ci5zdWJzdHJpbmcoeCx5KzEpKSx1PSIiLGQ9MCl9fTA9PT1kJiYoQys9dSl9Zz1oLGg9bCx5Kyt9aWYoMDwoeD1FLmxlbmd0aCkpe2lmKHY9biwwPCQmJnZvaWQgMCE9PShzPXooMixFLHYsdCxCLFUseCxvLGEsbykpJiYwPT09KEU9cykubGVuZ3RoKXJldHVybiBqK0UrTztpZihFPXYuam9pbigiLCIpKyJ7IitFKyJ9IiwwIT1IKkYpe3N3aXRjaChGPTIhPT1IfHxJKEUsMik/RjowKXtjYXNlIDExMTpFPUUucmVwbGFjZShOLCI6LW1vei0kMSIpK0U7YnJlYWs7Y2FzZSAxMTI6RT1FLnJlcGxhY2UoUiwiOjotd2Via2l0LWlucHV0LSQxIikrRS5yZXBsYWNlKFIsIjo6LW1vei0kMSIpK0UucmVwbGFjZShSLCI6LW1zLWlucHV0LSQxIikrRX1GPTB9fXJldHVybiBqK0UrT30oVixlLHQsMCwwKTtyZXR1cm4gMDwkJiZ2b2lkIDAhPT0obj16KC0yLHQsZSxlLEIsVSx0Lmxlbmd0aCwwLDAsMCkpJiYodD1uKSxGPTAsVT1CPTEsdH12YXIgVD0vXlwwKy9nLEw9L1tcMFxyXGZdL2csbD0vOiAqL2csYz0vem9vfGdyYS8scz0vKFssOiBdKSh0cmFuc2Zvcm0pL2csZj0vLFxyKz8vZyxvPS8oW1x0XHJcbiBdKSpcZj8mL2csTT0vQChrXHcrKVxzKihcUyopXHMqLyxSPS86OihwbGFjZSkvZyxOPS86KHJlYWQtb25seSkvZyxkPS9bc3ZoXVx3Ky1bdGJscl17Mn0vLEQ9L1woXHMqKC4qKVxzKlwpL2cscj0vKFtcc1xTXSo/KTsvZyxtPS8tc2VsZnxmbGV4LS9nLGE9L1teXSo/KDpbcnBdW2VsXWFbXHctXSspW15dKi8saD0vc3RyZXRjaHw6XHMqXHcrXC0oPzpjb250ZXxhdmFpbCkvLGc9LyhbXi1dKShpbWFnZS1zZXRcKCkvLFU9MSxCPTEsRj0wLEg9MSxWPVtdLGI9W10sJD0wLGk9bnVsbCxXPTA7cmV0dXJuIHAudXNlPWZ1bmN0aW9uIGUodCl7c3dpdGNoKHQpe2Nhc2Ugdm9pZCAwOmNhc2UgbnVsbDokPWIubGVuZ3RoPTA7YnJlYWs7ZGVmYXVsdDppZigiZnVuY3Rpb24iPT10eXBlb2YgdCliWyQrK109dDtlbHNlIGlmKCJvYmplY3QiPT10eXBlb2YgdClmb3IodmFyIG49MCxyPXQubGVuZ3RoO248cjsrK24pZSh0W25dKTtlbHNlIFc9MHwhIXR9cmV0dXJuIGV9LHAuc2V0PXQsdm9pZCAwIT09ZSYmdChlKSxwfX0sZnVuY3Rpb24oZSx0LG4pe3QuYT17YW5pbWF0aW9uSXRlcmF0aW9uQ291bnQ6MSxib3JkZXJJbWFnZU91dHNldDoxLGJvcmRlckltYWdlU2xpY2U6MSxib3JkZXJJbWFnZVdpZHRoOjEsYm94RmxleDoxLGJveEZsZXhHcm91cDoxLGJveE9yZGluYWxHcm91cDoxLGNvbHVtbkNvdW50OjEsY29sdW1uczoxLGZsZXg6MSxmbGV4R3JvdzoxLGZsZXhQb3NpdGl2ZToxLGZsZXhTaHJpbms6MSxmbGV4TmVnYXRpdmU6MSxmbGV4T3JkZXI6MSxncmlkUm93OjEsZ3JpZFJvd0VuZDoxLGdyaWRSb3dTcGFuOjEsZ3JpZFJvd1N0YXJ0OjEsZ3JpZENvbHVtbjoxLGdyaWRDb2x1bW5FbmQ6MSxncmlkQ29sdW1uU3BhbjoxLGdyaWRDb2x1bW5TdGFydDoxLG1zR3JpZFJvdzoxLG1zR3JpZFJvd1NwYW46MSxtc0dyaWRDb2x1bW46MSxtc0dyaWRDb2x1bW5TcGFuOjEsZm9udFdlaWdodDoxLGxpbmVIZWlnaHQ6MSxvcGFjaXR5OjEsb3JkZXI6MSxvcnBoYW5zOjEsdGFiU2l6ZToxLHdpZG93czoxLHpJbmRleDoxLHpvb206MSxXZWJraXRMaW5lQ2xhbXA6MSxmaWxsT3BhY2l0eToxLGZsb29kT3BhY2l0eToxLHN0b3BPcGFjaXR5OjEsc3Ryb2tlRGFzaGFycmF5OjEsc3Ryb2tlRGFzaG9mZnNldDoxLHN0cm9rZU1pdGVybGltaXQ6MSxzdHJva2VPcGFjaXR5OjEsc3Ryb2tlV2lkdGg6MX19LGZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9big5OSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDEwMCk7bigxNjMpLG4oMTY0KSxuKDE2NSksbigxNjYpLGUuZXhwb3J0cz1yfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigxMDEpO24oMTYyKSxlLmV4cG9ydHM9cn0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTAyKTtuKDE1OSksZS5leHBvcnRzPXJ9LGZ1bmN0aW9uKGUsdCxuKXtuKDU5KSxuKDc5KSxuKDEzMiksbigxMzQpLG4oODkpLG4oOTApLG4oOTEpLG4oMTU1KSxuKDE1Nik7bj1uKDE1OCk7ZS5leHBvcnRzPW4uUHJvbWlzZX0sZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIG8oZSx0KXt2YXIgbixyPWEodix0aGlzKTtyZXR1cm4gbD9uPWwobmV3IGIscj9pKHRoaXMpOnYpOihuPXI/dGhpczp1KHYpLHMobixnLCJFcnJvciIpKSx2b2lkIDAhPT10JiZzKG4sIm1lc3NhZ2UiLGgodCkpLHAobixvLG4uc3RhY2ssMSksMjxhcmd1bWVudHMubGVuZ3RoJiZkKG4sYXJndW1lbnRzWzJdKSxtKGUseSx7dGhhdDpyPVtdfSkscyhuLCJlcnJvcnMiLHIpLG59dmFyIHI9big3KSxhPW4oMzEpLGk9big1MSksbD1uKDUyKSxjPW4oNzMpLHU9bigzNikscz1uKDE4KSxmPW4oMjMpLGQ9bigxMjEpLHA9bigxMjIpLG09bigyNSksaD1uKDEyOSksZz1uKDUpKCJ0b1N0cmluZ1RhZyIpLGI9RXJyb3IseT1bXS5wdXNoLHY9KGw/bChvLGIpOmMobyxiLHtuYW1lOiEwfSksby5wcm90b3R5cGU9dShiLnByb3RvdHlwZSx7Y29uc3RydWN0b3I6ZigxLG8pLG1lc3NhZ2U6ZigxLCIiKSxuYW1lOmYoMSwiQWdncmVnYXRlRXJyb3IiKX0pKTtyKHtnbG9iYWw6ITAsY29uc3RydWN0b3I6ITAsYXJpdHk6Mn0se0FnZ3JlZ2F0ZUVycm9yOm99KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPXt9LnByb3BlcnR5SXNFbnVtZXJhYmxlLG89T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcixhPW8mJiFyLmNhbGwoezE6Mn0sMSk7dC5mPWE/ZnVuY3Rpb24oZSl7ZT1vKHRoaXMsZSk7cmV0dXJuISFlJiZlLmVudW1lcmFibGV9OnJ9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDQpLG89big2KSxhPW4oMjkpLGk9T2JqZWN0LGw9cigiIi5zcGxpdCk7ZS5leHBvcnRzPW8oZnVuY3Rpb24oKXtyZXR1cm4haSgieiIpLnByb3BlcnR5SXNFbnVtZXJhYmxlKDApfSk/ZnVuY3Rpb24oZSl7cmV0dXJuIlN0cmluZyI9PT1hKGUpP2woZSwiIik6aShlKX06aX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oOCksbz1uKDEzKSxhPW4oNjIpLGk9big0MyksbD1uKDEwNyksbj1uKDUpLGM9VHlwZUVycm9yLHU9bigidG9QcmltaXRpdmUiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtpZighbyhlKXx8YShlKSlyZXR1cm4gZTt2YXIgbj1pKGUsdSk7aWYobil7aWYobj1yKG4sZSx0PXZvaWQgMD09PXQ/ImRlZmF1bHQiOnQpLCFvKG4pfHxhKG4pKXJldHVybiBuO3Rocm93IG5ldyBjKCJDYW4ndCBjb252ZXJ0IG9iamVjdCB0byBwcmltaXRpdmUgdmFsdWUiKX1yZXR1cm4gbChlLHQ9dm9pZCAwPT09dD8ibnVtYmVyIjp0KX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgbz1uKDgpLGE9bigyKSxpPW4oMTMpLGw9VHlwZUVycm9yO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuLHI7aWYoInN0cmluZyI9PT10JiZhKG49ZS50b1N0cmluZykmJiFpKHI9byhuLGUpKSlyZXR1cm4gcjtpZihhKG49ZS52YWx1ZU9mKSYmIWkocj1vKG4sZSkpKXJldHVybiByO2lmKCJzdHJpbmciIT09dCYmYShuPWUudG9TdHJpbmcpJiYhaShyPW8obixlKSkpcmV0dXJuIHI7dGhyb3cgbmV3IGwoIkNhbid0IGNvbnZlcnQgb2JqZWN0IHRvIHByaW1pdGl2ZSB2YWx1ZSIpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMyksbj1uKDIpLHI9ci5XZWFrTWFwO2UuZXhwb3J0cz1uKHIpJiYvbmF0aXZlIGNvZGUvLnRlc3QoU3RyaW5nKHIpKX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTQpLG89big0KSxhPW4oMTEwKSxpPW4oMTE1KSxsPW4oMTIpLGM9byhbXS5jb25jYXQpO2UuZXhwb3J0cz1yKCJSZWZsZWN0Iiwib3duS2V5cyIpfHxmdW5jdGlvbihlKXt2YXIgdD1hLmYobChlKSksbj1pLmY7cmV0dXJuIG4/Yyh0LG4oZSkpOnR9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big3NCksbz1uKDUwKS5jb25jYXQoImxlbmd0aCIsInByb3RvdHlwZSIpO3QuZj1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lc3x8ZnVuY3Rpb24oZSl7cmV0dXJuIHIoZSxvKX19LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiByKGwpe3JldHVybiBmdW5jdGlvbihlLHQsbil7dmFyIHIsbz1jKGUpLGE9cyhvKSxpPXUobixhKTtpZihsJiZ0IT10KXtmb3IoO2k8YTspaWYoKHI9b1tpKytdKSE9cilyZXR1cm4hMH1lbHNlIGZvcig7aTxhO2krKylpZigobHx8aSBpbiBvKSYmb1tpXT09PXQpcmV0dXJuIGx8fGl8fDA7cmV0dXJuIWwmJi0xfX12YXIgYz1uKDI0KSx1PW4oMTEyKSxzPW4oNzUpO2UuZXhwb3J0cz17aW5jbHVkZXM6cighMCksaW5kZXhPZjpyKCExKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDQ5KSxvPU1hdGgubWF4LGE9TWF0aC5taW47ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7ZT1yKGUpO3JldHVybiBlPDA/byhlK3QsMCk6YShlLHQpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPU1hdGguY2VpbCxvPU1hdGguZmxvb3I7ZS5leHBvcnRzPU1hdGgudHJ1bmN8fGZ1bmN0aW9uKGUpe2U9K2U7cmV0dXJuKDA8ZT9vOnIpKGUpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNDkpLG89TWF0aC5taW47ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiAwPGU/byhyKGUpLDkwMDcxOTkyNTQ3NDA5OTEpOjB9fSxmdW5jdGlvbihlLHQsbil7dC5mPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHN9LGZ1bmN0aW9uKGUsdCxuKXtuPW4oNik7ZS5leHBvcnRzPSFuKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSgpe31yZXR1cm4gZS5wcm90b3R5cGUuY29uc3RydWN0b3I9bnVsbCxPYmplY3QuZ2V0UHJvdG90eXBlT2YobmV3IGUpIT09ZS5wcm90b3R5cGV9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNCksbz1uKDEwKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe3RyeXtyZXR1cm4gcihvKE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSx0KVtuXSkpfWNhdGNoKGUpe319fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigyKSxvPVN0cmluZyxhPVR5cGVFcnJvcjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aWYoIm9iamVjdCI9PXR5cGVvZiBlfHxyKGUpKXJldHVybiBlO3Rocm93IG5ldyBhKCJDYW4ndCBzZXQgIitvKGUpKyIgYXMgYSBwcm90b3R5cGUiKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDkpLG89big3MCksbD1uKDE3KSxjPW4oMTIpLHU9bigyNCkscz1uKDEyMCk7dC5mPXImJiFvP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzOmZ1bmN0aW9uKGUsdCl7YyhlKTtmb3IodmFyIG4scj11KHQpLG89cyh0KSxhPW8ubGVuZ3RoLGk9MDtpPGE7KWwuZihlLG49b1tpKytdLHJbbl0pO3JldHVybiBlfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNzQpLG89big1MCk7ZS5leHBvcnRzPU9iamVjdC5rZXlzfHxmdW5jdGlvbihlKXtyZXR1cm4gcihlLG8pfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTMpLG89bigxOCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cih0KSYmImNhdXNlImluIHQmJm8oZSwiY2F1c2UiLHQuY2F1c2UpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciBvPW4oMTgpLGE9bigxMjMpLGk9bigxMjQpLGw9RXJyb3IuY2FwdHVyZVN0YWNrVHJhY2U7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuLHIpe2kmJihsP2woZSx0KTpvKGUsInN0YWNrIixhKG4scikpKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgbj1uKDQpLHI9RXJyb3Isbz1uKCIiLnJlcGxhY2UpLG49U3RyaW5nKG5ldyByKCJ6eGNhc2QiKS5zdGFjayksYT0vXG5ccyphdCBbXjpdKjpbXlxuXSovLGk9YS50ZXN0KG4pO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKGkmJiJzdHJpbmciPT10eXBlb2YgZSYmIXIucHJlcGFyZVN0YWNrVHJhY2UpZm9yKDt0LS07KWU9byhlLGEsIiIpO3JldHVybiBlfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNiksbz1uKDIzKTtlLmV4cG9ydHM9IXIoZnVuY3Rpb24oKXt2YXIgZT1uZXcgRXJyb3IoImEiKTtyZXR1cm4hKCJzdGFjayJpbiBlKXx8KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJzdGFjayIsbygxLDcpKSw3IT09ZS5zdGFjayl9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMjkpLG89big0KTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aWYoIkZ1bmN0aW9uIj09PXIoZSkpcmV0dXJuIG8oZSl9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big1KSxvPW4oMjYpLGE9cigiaXRlcmF0b3IiKSxpPUFycmF5LnByb3RvdHlwZTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIHZvaWQgMCE9PWUmJihvLkFycmF5PT09ZXx8aVthXT09PWUpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oOCksbz1uKDEwKSxhPW4oMTIpLGk9bigzMyksbD1uKDc4KSxjPVR5cGVFcnJvcjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt0PWFyZ3VtZW50cy5sZW5ndGg8Mj9sKGUpOnQ7aWYobyh0KSlyZXR1cm4gYShyKHQsZSkpO3Rocm93IG5ldyBjKGkoZSkrIiBpcyBub3QgaXRlcmFibGUiKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgYT1uKDgpLGk9bigxMiksbD1uKDQzKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe3ZhciByLG87aShlKTt0cnl7aWYoIShyPWwoZSwicmV0dXJuIikpKXtpZigidGhyb3ciPT09dCl0aHJvdyBuO3JldHVybiBufXI9YShyLGUpfWNhdGNoKGUpe289ITAscj1lfWlmKCJ0aHJvdyI9PT10KXRocm93IG47aWYobyl0aHJvdyByO3JldHVybiBpKHIpLG59fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big1NSk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PWU/YXJndW1lbnRzLmxlbmd0aDwyPyIiOnQ6cihlKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDUpLG89bigzNiksbj1uKDE3KS5mLGE9cigidW5zY29wYWJsZXMiKSxpPUFycmF5LnByb3RvdHlwZTt2b2lkIDA9PT1pW2FdJiZuKGksYSx7Y29uZmlndXJhYmxlOiEwLHZhbHVlOm8obnVsbCl9KSxlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aVthXVtlXT0hMH19LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiBvKCl7cmV0dXJuIHRoaXN9dmFyIGE9big4MSkuSXRlcmF0b3JQcm90b3R5cGUsaT1uKDM2KSxsPW4oMjMpLGM9bigzOCksdT1uKDI2KTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4scil7dCs9IiBJdGVyYXRvciI7cmV0dXJuIGUucHJvdG90eXBlPWkoYSx7bmV4dDpsKCshcixuKX0pLGMoZSx0LCExLCEwKSx1W3RdPW8sZX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDU0KSxvPW4oMTkpLG49bigxMzMpO3J8fG8oT2JqZWN0LnByb3RvdHlwZSwidG9TdHJpbmciLG4se3Vuc2FmZTohMH0pfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big1NCksbz1uKDM3KTtlLmV4cG9ydHM9cj97fS50b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiJbb2JqZWN0ICIrbyh0aGlzKSsiXSJ9fSxmdW5jdGlvbihlLHQsbil7bigxMzUpLG4oMTQ5KSxuKDE1MSksbigxNTIpLG4oMTUzKSxuKDE1NCl9LGZ1bmN0aW9uKFIsTixlKXtmdW5jdGlvbiBhKGUsdCl7dmFyIG4scixvLGEsaT10LnZhbHVlLGw9dC5zdGF0ZT09PU8sYz1sP2Uub2s6ZS5mYWlsLHU9ZS5yZXNvbHZlLHM9ZS5yZWplY3QsZj1lLmRvbWFpbjt0cnl7Yz8obHx8KHQucmVqZWN0aW9uPT09QSYmKGE9dCxtKGgscCxmdW5jdGlvbigpe3ZhciBlPWEuZmFjYWRlO2Q/Uy5lbWl0KCJyZWplY3Rpb25IYW5kbGVkIixlKTpfKEosZSxhLnZhbHVlKX0pKSx0LnJlamVjdGlvbj1qKSwhMD09PWM/bj1pOihmJiZmLmVudGVyKCksbj1jKGkpLGYmJihmLmV4aXQoKSxvPSEwKSksbj09PWUucHJvbWlzZT9zKG5ldyB4KCJQcm9taXNlLWNoYWluIGN5Y2xlIikpOihyPVAobikpP20ocixuLHUscyk6dShuKSk6cyhpKX1jYXRjaChlKXtmJiYhbyYmZi5leGl0KCkscyhlKX19dmFyIG4sdCxyLEQ9ZSg3KSxVPWUoMTUpLGQ9ZSgzOSkscD1lKDMpLG09ZSg4KSxvPWUoMTkpLGk9ZSg1MiksQj1lKDM4KSxGPWUoMTM2KSxIPWUoMTApLGw9ZSgyKSxWPWUoMTMpLCQ9ZSgxMzgpLFc9ZSg4MyksaD1lKDg0KS5zZXQsYz1lKDE0NCksRz1lKDE0NykscT1lKDIwKSxaPWUoODYpLHU9ZSgzNSkscz1lKDIxKSxmPWUoMjcpLGU9ZSgxNiksZz0iUHJvbWlzZSIsYj1mLkNPTlNUUlVDVE9SLFg9Zi5SRUpFQ1RJT05fRVZFTlQsZj1mLlNVQkNMQVNTSU5HLHk9dS5nZXR0ZXJGb3IoZyksWT11LnNldCx1PXMmJnMucHJvdG90eXBlLHY9cyx3PXUseD1wLlR5cGVFcnJvcixrPXAuZG9jdW1lbnQsUz1wLnByb2Nlc3MsQz1lLmYsUT1DLEs9ISEoayYmay5jcmVhdGVFdmVudCYmcC5kaXNwYXRjaEV2ZW50KSxFPSJ1bmhhbmRsZWRyZWplY3Rpb24iLEo9InJlamVjdGlvbmhhbmRsZWQiLE89MSxlZT0yLGo9MSxBPTIsUD1mdW5jdGlvbihlKXt2YXIgdDtyZXR1cm4hKCFWKGUpfHwhbCh0PWUudGhlbikpJiZ0fSxJPWZ1bmN0aW9uKG4sbyl7bi5ub3RpZmllZHx8KG4ubm90aWZpZWQ9ITAsYyhmdW5jdGlvbigpe2Zvcih2YXIgZSxyLHQ9bi5yZWFjdGlvbnM7ZT10LmdldCgpOylhKGUsbik7bi5ub3RpZmllZD0hMSxvJiYhbi5yZWplY3Rpb24mJihyPW4sbShoLHAsZnVuY3Rpb24oKXt2YXIgZT1yLmZhY2FkZSx0PXIudmFsdWUsbj16KHIpO2lmKG4mJihuPXEoZnVuY3Rpb24oKXtkP1MuZW1pdCgidW5oYW5kbGVkUmVqZWN0aW9uIix0LGUpOl8oRSxlLHQpfSksci5yZWplY3Rpb249ZHx8eihyKT9BOmosbi5lcnJvcikpdGhyb3cgbi52YWx1ZX0pKX0pKX0sXz1mdW5jdGlvbihlLHQsbil7dmFyIHI7Sz8oKHI9ay5jcmVhdGVFdmVudCgiRXZlbnQiKSkucHJvbWlzZT10LHIucmVhc29uPW4sci5pbml0RXZlbnQoZSwhMSwhMCkscC5kaXNwYXRjaEV2ZW50KHIpKTpyPXtwcm9taXNlOnQscmVhc29uOm59LCFYJiYodD1wWyJvbiIrZV0pP3Qocik6ZT09PUUmJkcoIlVuaGFuZGxlZCBwcm9taXNlIHJlamVjdGlvbiIsbil9LHo9ZnVuY3Rpb24oZSl7cmV0dXJuIGUucmVqZWN0aW9uIT09aiYmIWUucGFyZW50fSxUPWZ1bmN0aW9uKHQsbixyKXtyZXR1cm4gZnVuY3Rpb24oZSl7dChuLGUscil9fSxMPWZ1bmN0aW9uKGUsdCxuKXtlLmRvbmV8fChlLmRvbmU9ITAsKGU9bj9uOmUpLnZhbHVlPXQsZS5zdGF0ZT1lZSxJKGUsITApKX0sTT1mdW5jdGlvbihuLGUsdCl7aWYoIW4uZG9uZSl7bi5kb25lPSEwLHQmJihuPXQpO3RyeXtpZihuLmZhY2FkZT09PWUpdGhyb3cgbmV3IHgoIlByb21pc2UgY2FuJ3QgYmUgcmVzb2x2ZWQgaXRzZWxmIik7dmFyIHI9UChlKTtyP2MoZnVuY3Rpb24oKXt2YXIgdD17ZG9uZTohMX07dHJ5e20ocixlLFQoTSx0LG4pLFQoTCx0LG4pKX1jYXRjaChlKXtMKHQsZSxuKX19KToobi52YWx1ZT1lLG4uc3RhdGU9TyxJKG4sITEpKX1jYXRjaChlKXtMKHtkb25lOiExfSxlLG4pfX19O2lmKGImJih3PSh2PWZ1bmN0aW9uKGUpeyQodGhpcyx3KSxIKGUpLG0obix0aGlzKTt2YXIgdD15KHRoaXMpO3RyeXtlKFQoTSx0KSxUKEwsdCkpfWNhdGNoKGUpe0wodCxlKX19KS5wcm90b3R5cGUsKG49ZnVuY3Rpb24oZSl7WSh0aGlzLHt0eXBlOmcsZG9uZTohMSxub3RpZmllZDohMSxwYXJlbnQ6ITEscmVhY3Rpb25zOm5ldyBaLHJlamVjdGlvbjohMSxzdGF0ZTowLHZhbHVlOnZvaWQgMH0pfSkucHJvdG90eXBlPW8odywidGhlbiIsZnVuY3Rpb24oZSx0KXt2YXIgbj15KHRoaXMpLHI9QyhXKHRoaXMsdikpO3JldHVybiBuLnBhcmVudD0hMCxyLm9rPSFsKGUpfHxlLHIuZmFpbD1sKHQpJiZ0LHIuZG9tYWluPWQ/Uy5kb21haW46dm9pZCAwLDA9PT1uLnN0YXRlP24ucmVhY3Rpb25zLmFkZChyKTpjKGZ1bmN0aW9uKCl7YShyLG4pfSksci5wcm9taXNlfSksdD1mdW5jdGlvbigpe3ZhciBlPW5ldyBuLHQ9eShlKTt0aGlzLnByb21pc2U9ZSx0aGlzLnJlc29sdmU9VChNLHQpLHRoaXMucmVqZWN0PVQoTCx0KX0sZS5mPUM9ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT12fHx2b2lkIDA9PT1lP25ldyB0OlEoZSl9LCFVKSYmbChzKSYmdSE9PU9iamVjdC5wcm90b3R5cGUpe3I9dS50aGVuLGZ8fG8odSwidGhlbiIsZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzO3JldHVybiBuZXcgdihmdW5jdGlvbihlLHQpe20ocixuLGUsdCl9KS50aGVuKGUsdCl9LHt1bnNhZmU6ITB9KTt0cnl7ZGVsZXRlIHUuY29uc3RydWN0b3J9Y2F0Y2goZSl7fWkmJmkodSx3KX1EKHtnbG9iYWw6ITAsY29uc3RydWN0b3I6ITAsd3JhcDohMCxmb3JjZWQ6Yn0se1Byb21pc2U6dn0pLEIodixnLCExLCEwKSxGKGcpfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigxNCksbz1uKDEzNyksYT1uKDUpLGk9big5KSxsPWEoInNwZWNpZXMiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7ZT1yKGUpO2kmJmUmJiFlW2xdJiZvKGUsbCx7Y29uZmlndXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiB0aGlzfX0pfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNzEpLG89bigxNyk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gbi5nZXQmJnIobi5nZXQsdCx7Z2V0dGVyOiEwfSksbi5zZXQmJnIobi5zZXQsdCx7c2V0dGVyOiEwfSksby5mKGUsdCxuKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDMxKSxvPVR5cGVFcnJvcjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtpZihyKHQsZSkpcmV0dXJuIGU7dGhyb3cgbmV3IG8oIkluY29ycmVjdCBpbnZvY2F0aW9uIil9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigxNDApLG89bigzMyksYT1UeXBlRXJyb3I7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKHIoZSkpcmV0dXJuIGU7dGhyb3cgbmV3IGEobyhlKSsiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIil9fSxmdW5jdGlvbihlLHQsbil7ZnVuY3Rpb24gcigpe31mdW5jdGlvbiBvKGUpe2lmKCFjKGUpKXJldHVybiExO3RyeXtyZXR1cm4gcChyLGQsZSksITB9Y2F0Y2goZSl7cmV0dXJuITF9fWZ1bmN0aW9uIGEoZSl7aWYoIWMoZSkpcmV0dXJuITE7c3dpdGNoKHUoZSkpe2Nhc2UiQXN5bmNGdW5jdGlvbiI6Y2FzZSJHZW5lcmF0b3JGdW5jdGlvbiI6Y2FzZSJBc3luY0dlbmVyYXRvckZ1bmN0aW9uIjpyZXR1cm4hMX10cnl7cmV0dXJuIGd8fCEhaChtLGYoZSkpfWNhdGNoKGUpe3JldHVybiEwfX12YXIgaT1uKDQpLGw9big2KSxjPW4oMiksdT1uKDM3KSxzPW4oMTQpLGY9big0NiksZD1bXSxwPXMoIlJlZmxlY3QiLCJjb25zdHJ1Y3QiKSxtPS9eXHMqKD86Y2xhc3N8ZnVuY3Rpb24pXGIvLGg9aShtLmV4ZWMpLGc9IW0udGVzdChyKTthLnNoYW09ITAsZS5leHBvcnRzPSFwfHxsKGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIG8oby5jYWxsKXx8IW8oT2JqZWN0KXx8IW8oZnVuY3Rpb24oKXtlPSEwfSl8fGV9KT9hOm99LGZ1bmN0aW9uKGUsdCxuKXt2YXIgbj1uKDI4KSxyPUZ1bmN0aW9uLnByb3RvdHlwZSxvPXIuYXBwbHksYT1yLmNhbGw7ZS5leHBvcnRzPSJvYmplY3QiPT10eXBlb2YgUmVmbGVjdCYmUmVmbGVjdC5hcHBseXx8KG4/YS5iaW5kKG8pOmZ1bmN0aW9uKCl7cmV0dXJuIGEuYXBwbHkobyxhcmd1bWVudHMpfSl9LGZ1bmN0aW9uKGUsdCxuKXtuPW4oNCk7ZS5leHBvcnRzPW4oW10uc2xpY2UpfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9VHlwZUVycm9yO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKGU8dCl0aHJvdyBuZXcgcigiTm90IGVub3VnaCBhcmd1bWVudHMiKTtyZXR1cm4gZX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcixvLGEsaSxsLGMsdT1uKDMpLHM9big1MyksZj1uKDQxKS5mLGQ9big4NCkuc2V0LHA9big4NiksbT1uKDg1KSxoPW4oMTQ1KSxnPW4oMTQ2KSxiPW4oMzkpLG49dS5NdXRhdGlvbk9ic2VydmVyfHx1LldlYktpdE11dGF0aW9uT2JzZXJ2ZXIseT11LmRvY3VtZW50LHY9dS5wcm9jZXNzLHc9dS5Qcm9taXNlLGY9Zih1LCJxdWV1ZU1pY3JvdGFzayIpLGY9ZiYmZi52YWx1ZTtmfHwoaT1uZXcgcCxsPWZ1bmN0aW9uKCl7dmFyIGUsdDtmb3IoYiYmKGU9di5kb21haW4pJiZlLmV4aXQoKTt0PWkuZ2V0KCk7KXRyeXt0KCl9Y2F0Y2goZSl7dGhyb3cgaS5oZWFkJiZjKCksZX1lJiZlLmVudGVyKCl9LGM9bXx8Ynx8Z3x8IW58fCF5PyFoJiZ3JiZ3LnJlc29sdmU/KChwPXcucmVzb2x2ZSh2b2lkIDApKS5jb25zdHJ1Y3Rvcj13LGE9cyhwLnRoZW4scCksZnVuY3Rpb24oKXthKGwpfSk6Yj9mdW5jdGlvbigpe3YubmV4dFRpY2sobCl9OihkPXMoZCx1KSxmdW5jdGlvbigpe2QobCl9KToocj0hMCxvPXkuY3JlYXRlVGV4dE5vZGUoIiIpLG5ldyBuKGwpLm9ic2VydmUobyx7Y2hhcmFjdGVyRGF0YTohMH0pLGZ1bmN0aW9uKCl7by5kYXRhPXI9IXJ9KSxmPWZ1bmN0aW9uKGUpe2kuaGVhZHx8YygpLGkuYWRkKGUpfSksZS5leHBvcnRzPWZ9LGZ1bmN0aW9uKGUsdCxuKXtuPW4oMzIpO2UuZXhwb3J0cz0vaXBhZHxpcGhvbmV8aXBvZC9pLnRlc3QobikmJiJ1bmRlZmluZWQiIT10eXBlb2YgUGViYmxlfSxmdW5jdGlvbihlLHQsbil7bj1uKDMyKTtlLmV4cG9ydHM9L3dlYjBzKD8hLipjaHJvbWUpL2kudGVzdChuKX0sZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3RyeXsxPT09YXJndW1lbnRzLmxlbmd0aD9jb25zb2xlLmVycm9yKGUpOmNvbnNvbGUuZXJyb3IoZSx0KX1jYXRjaChlKXt9fX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oODcpLG49bigzOSk7ZS5leHBvcnRzPSFyJiYhbiYmIm9iamVjdCI9PXR5cGVvZiB3aW5kb3cmJiJvYmplY3QiPT10eXBlb2YgZG9jdW1lbnR9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDcpLHM9big4KSxmPW4oMTApLG89bigxNiksYT1uKDIwKSxkPW4oMjUpO3Ioe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6big0MCl9LHthbGw6ZnVuY3Rpb24oZSl7dmFyIGw9dGhpcyx0PW8uZihsKSxjPXQucmVzb2x2ZSx1PXQucmVqZWN0LG49YShmdW5jdGlvbigpe3ZhciByPWYobC5yZXNvbHZlKSxvPVtdLGE9MCxpPTE7ZChlLGZ1bmN0aW9uKGUpe3ZhciB0PWErKyxuPSExO2krKyxzKHIsbCxlKS50aGVuKGZ1bmN0aW9uKGUpe258fChuPSEwLG9bdF09ZSwtLWkpfHxjKG8pfSx1KX0pLC0taXx8YyhvKX0pO3JldHVybiBuLmVycm9yJiZ1KG4udmFsdWUpLHQucHJvbWlzZX19KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciBvPW4oNSkoIml0ZXJhdG9yIiksYT0hMTt0cnl7dmFyIHI9MCxpPXtuZXh0OmZ1bmN0aW9uKCl7cmV0dXJue2RvbmU6ISFyKyt9fSxyZXR1cm46ZnVuY3Rpb24oKXthPSEwfX07aVtvXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxBcnJheS5mcm9tKGksZnVuY3Rpb24oKXt0aHJvdyAyfSl9Y2F0Y2goZSl7fWUuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3RyeXtpZighdCYmIWEpcmV0dXJuITF9Y2F0Y2goZSl7cmV0dXJuITF9dmFyIG49ITE7dHJ5e3ZhciByPXt9O3Jbb109ZnVuY3Rpb24oKXtyZXR1cm57bmV4dDpmdW5jdGlvbigpe3JldHVybntkb25lOm49ITB9fX19LGUocil9Y2F0Y2goZSl7fXJldHVybiBufX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNyksbz1uKDE1KSxhPW4oMjcpLkNPTlNUUlVDVE9SLGk9bigyMSksbD1uKDE0KSxjPW4oMiksbj1uKDE5KSx1PWkmJmkucHJvdG90eXBlO3Ioe3RhcmdldDoiUHJvbWlzZSIscHJvdG86ITAsZm9yY2VkOmEscmVhbDohMH0se2NhdGNoOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnRoZW4odm9pZCAwLGUpfX0pLCFvJiZjKGkpJiYocj1sKCJQcm9taXNlIikucHJvdG90eXBlLmNhdGNoLHUuY2F0Y2ghPT1yKSYmbih1LCJjYXRjaCIscix7dW5zYWZlOiEwfSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDcpLGE9big4KSxpPW4oMTApLGw9bigxNiksYz1uKDIwKSx1PW4oMjUpO3Ioe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6big0MCl9LHtyYWNlOmZ1bmN0aW9uKGUpe3ZhciBuPXRoaXMscj1sLmYobiksbz1yLnJlamVjdCx0PWMoZnVuY3Rpb24oKXt2YXIgdD1pKG4ucmVzb2x2ZSk7dShlLGZ1bmN0aW9uKGUpe2EodCxuLGUpLnRoZW4oci5yZXNvbHZlLG8pfSl9KTtyZXR1cm4gdC5lcnJvciYmbyh0LnZhbHVlKSxyLnByb21pc2V9fSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDcpLG89big4KSxhPW4oMTYpO3Ioe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6bigyNykuQ09OU1RSVUNUT1J9LHtyZWplY3Q6ZnVuY3Rpb24oZSl7dmFyIHQ9YS5mKHRoaXMpO3JldHVybiBvKHQucmVqZWN0LHZvaWQgMCxlKSx0LnByb21pc2V9fSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDcpLG89bigxNCksYT1uKDE1KSxpPW4oMjEpLGw9bigyNykuQ09OU1RSVUNUT1IsYz1uKDg4KSx1PW8oIlByb21pc2UiKSxzPWEmJiFsO3Ioe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6YXx8bH0se3Jlc29sdmU6ZnVuY3Rpb24oZSl7cmV0dXJuIGMocyYmdGhpcz09PXU/aTp0aGlzLGUpfX0pfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big3KSxvPW4oMTUpLGE9bigyMSksaT1uKDYpLGw9bigxNCksYz1uKDIpLHU9big4Mykscz1uKDg4KSxuPW4oMTkpLGY9YSYmYS5wcm90b3R5cGU7cih7dGFyZ2V0OiJQcm9taXNlIixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDohIWEmJmkoZnVuY3Rpb24oKXtmLmZpbmFsbHkuY2FsbCh7dGhlbjpmdW5jdGlvbigpe319LGZ1bmN0aW9uKCl7fSl9KX0se2ZpbmFsbHk6ZnVuY3Rpb24odCl7dmFyIG49dSh0aGlzLGwoIlByb21pc2UiKSksZT1jKHQpO3JldHVybiB0aGlzLnRoZW4oZT9mdW5jdGlvbihlKXtyZXR1cm4gcyhuLHQoKSkudGhlbihmdW5jdGlvbigpe3JldHVybiBlfSl9OnQsZT9mdW5jdGlvbihlKXtyZXR1cm4gcyhuLHQoKSkudGhlbihmdW5jdGlvbigpe3Rocm93IGV9KX06dCl9fSksIW8mJmMoYSkmJihyPWwoIlByb21pc2UiKS5wcm90b3R5cGUuZmluYWxseSxmLmZpbmFsbHkhPT1yKSYmbihmLCJmaW5hbGx5IixyLHt1bnNhZmU6ITB9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTU3KS5jaGFyQXQsbz1uKDU1KSxhPW4oMzUpLGk9big4MCksbD1uKDgyKSxjPSJTdHJpbmcgSXRlcmF0b3IiLHU9YS5zZXQscz1hLmdldHRlckZvcihjKTtpKFN0cmluZywiU3RyaW5nIixmdW5jdGlvbihlKXt1KHRoaXMse3R5cGU6YyxzdHJpbmc6byhlKSxpbmRleDowfSl9LGZ1bmN0aW9uKCl7dmFyIGU9cyh0aGlzKSx0PWUuc3RyaW5nLG49ZS5pbmRleDtyZXR1cm4gbj49dC5sZW5ndGg/bCh2b2lkIDAsITApOih0PXIodCxuKSxlLmluZGV4Kz10Lmxlbmd0aCxsKHQsITEpKX0pfSxmdW5jdGlvbihlLHQsbil7ZnVuY3Rpb24gcihvKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXt2YXIgbixlPWkobChlKSksdD1hKHQpLHI9ZS5sZW5ndGg7cmV0dXJuIHQ8MHx8cjw9dD9vPyIiOnZvaWQgMDoobj11KGUsdCkpPDU1Mjk2fHw1NjMxOTxufHx0KzE9PT1yfHwocj11KGUsdCsxKSk8NTYzMjB8fDU3MzQzPHI/bz9jKGUsdCk6bjpvP3MoZSx0LHQrMik6ci01NjMyMCsobi01NTI5Njw8MTApKzY1NTM2fX12YXIgbz1uKDQpLGE9big0OSksaT1uKDU1KSxsPW4oNDIpLGM9bygiIi5jaGFyQXQpLHU9bygiIi5jaGFyQ29kZUF0KSxzPW8oIiIuc2xpY2UpO2UuZXhwb3J0cz17Y29kZUF0OnIoITEpLGNoYXJBdDpyKCEwKX19LGZ1bmN0aW9uKGUsdCxuKXtuPW4oMyk7ZS5leHBvcnRzPW59LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiByKHQsZSl7aWYodCl7aWYodFtmXSE9PWQpdHJ5e3UodCxmLGQpfWNhdGNoKGUpe3RbZl09ZH1pZihzKHQsZSwhMCksaVtlXSlmb3IodmFyIG4gaW4gYylpZih0W25dIT09Y1tuXSl0cnl7dSh0LG4sY1tuXSl9Y2F0Y2goZSl7dFtuXT1jW25dfX19dmFyIG8sYT1uKDMpLGk9bigxNjApLGw9bigxNjEpLGM9big3OSksdT1uKDE4KSxzPW4oMzgpLGY9big1KSgiaXRlcmF0b3IiKSxkPWMudmFsdWVzO2ZvcihvIGluIGkpcihhW29dJiZhW29dLnByb3RvdHlwZSxvKTtyKGwsIkRPTVRva2VuTGlzdCIpfSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPXtDU1NSdWxlTGlzdDowLENTU1N0eWxlRGVjbGFyYXRpb246MCxDU1NWYWx1ZUxpc3Q6MCxDbGllbnRSZWN0TGlzdDowLERPTVJlY3RMaXN0OjAsRE9NU3RyaW5nTGlzdDowLERPTVRva2VuTGlzdDoxLERhdGFUcmFuc2Zlckl0ZW1MaXN0OjAsRmlsZUxpc3Q6MCxIVE1MQWxsQ29sbGVjdGlvbjowLEhUTUxDb2xsZWN0aW9uOjAsSFRNTEZvcm1FbGVtZW50OjAsSFRNTFNlbGVjdEVsZW1lbnQ6MCxNZWRpYUxpc3Q6MCxNaW1lVHlwZUFycmF5OjAsTmFtZWROb2RlTWFwOjAsTm9kZUxpc3Q6MSxQYWludFJlcXVlc3RMaXN0OjAsUGx1Z2luOjAsUGx1Z2luQXJyYXk6MCxTVkdMZW5ndGhMaXN0OjAsU1ZHTnVtYmVyTGlzdDowLFNWR1BhdGhTZWdMaXN0OjAsU1ZHUG9pbnRMaXN0OjAsU1ZHU3RyaW5nTGlzdDowLFNWR1RyYW5zZm9ybUxpc3Q6MCxTb3VyY2VCdWZmZXJMaXN0OjAsU3R5bGVTaGVldExpc3Q6MCxUZXh0VHJhY2tDdWVMaXN0OjAsVGV4dFRyYWNrTGlzdDowLFRvdWNoTGlzdDowfX0sZnVuY3Rpb24oZSx0LG4pe249bigzNCkoInNwYW4iKS5jbGFzc0xpc3Qsbj1uJiZuLmNvbnN0cnVjdG9yJiZuLmNvbnN0cnVjdG9yLnByb3RvdHlwZTtlLmV4cG9ydHM9bj09PU9iamVjdC5wcm90b3R5cGU/dm9pZCAwOm59LGZ1bmN0aW9uKGUsdCxuKXtuKDkxKX0sZnVuY3Rpb24oZSx0LG4pe24oNTkpfSxmdW5jdGlvbihlLHQsbil7big4OSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDcpLG89bigxNiksYT1uKDIwKTtyKHt0YXJnZXQ6IlByb21pc2UiLHN0YXQ6ITAsZm9yY2VkOiEwfSx7dHJ5OmZ1bmN0aW9uKGUpe3ZhciB0PW8uZih0aGlzKSxlPWEoZSk7cmV0dXJuKGUuZXJyb3I/dC5yZWplY3Q6dC5yZXNvbHZlKShlLnZhbHVlKSx0LnByb21pc2V9fSl9LGZ1bmN0aW9uKGUsdCxuKXtuKDkwKX0sZnVuY3Rpb24oZSx0LG4peyFmdW5jdGlvbihlKXt2YXIgdCxuLGM9InVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWxUaGlzJiZnbG9iYWxUaGlzfHwidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGYmJnNlbGZ8fHZvaWQgMCE9PWUmJmV8fHt9LHI9IlVSTFNlYXJjaFBhcmFtcyJpbiBjLG89IlN5bWJvbCJpbiBjJiYiaXRlcmF0b3IiaW4gU3ltYm9sLHU9IkZpbGVSZWFkZXIiaW4gYyYmIkJsb2IiaW4gYyYmZnVuY3Rpb24oKXt0cnl7cmV0dXJuIG5ldyBCbG9iLCEwfWNhdGNoKGUpe3JldHVybiExfX0oKSxhPSJGb3JtRGF0YSJpbiBjLHM9IkFycmF5QnVmZmVyImluIGM7ZnVuY3Rpb24gZihlKXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJihlPVN0cmluZyhlKSksL1teYS16MC05XC0jJCUmJyorLl5fYHx+IV0vaS50ZXN0KGUpfHwiIj09PWUpdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBjaGFyYWN0ZXIgaW4gaGVhZGVyIGZpZWxkIG5hbWU6ICInK2UrJyInKTtyZXR1cm4gZS50b0xvd2VyQ2FzZSgpfWZ1bmN0aW9uIGQoZSl7cmV0dXJuIGU9InN0cmluZyIhPXR5cGVvZiBlP1N0cmluZyhlKTplfWZ1bmN0aW9uIGkodCl7dmFyIGU9e25leHQ6ZnVuY3Rpb24oKXt2YXIgZT10LnNoaWZ0KCk7cmV0dXJue2RvbmU6dm9pZCAwPT09ZSx2YWx1ZTplfX19O3JldHVybiBvJiYoZVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIGV9KSxlfWZ1bmN0aW9uIHAodCl7dGhpcy5tYXA9e30sdCBpbnN0YW5jZW9mIHA/dC5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7dGhpcy5hcHBlbmQodCxlKX0sdGhpcyk6QXJyYXkuaXNBcnJheSh0KT90LmZvckVhY2goZnVuY3Rpb24oZSl7aWYoMiE9ZS5sZW5ndGgpdGhyb3cgbmV3IFR5cGVFcnJvcigiSGVhZGVycyBjb25zdHJ1Y3RvcjogZXhwZWN0ZWQgbmFtZS92YWx1ZSBwYWlyIHRvIGJlIGxlbmd0aCAyLCBmb3VuZCIrZS5sZW5ndGgpO3RoaXMuYXBwZW5kKGVbMF0sZVsxXSl9LHRoaXMpOnQmJk9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHQpLmZvckVhY2goZnVuY3Rpb24oZSl7dGhpcy5hcHBlbmQoZSx0W2VdKX0sdGhpcyl9ZnVuY3Rpb24gbChlKXtpZighZS5fbm9Cb2R5KXJldHVybiBlLmJvZHlVc2VkP1Byb21pc2UucmVqZWN0KG5ldyBUeXBlRXJyb3IoIkFscmVhZHkgcmVhZCIpKTp2b2lkKGUuYm9keVVzZWQ9ITApfWZ1bmN0aW9uIG0obil7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUsdCl7bi5vbmxvYWQ9ZnVuY3Rpb24oKXtlKG4ucmVzdWx0KX0sbi5vbmVycm9yPWZ1bmN0aW9uKCl7dChuLmVycm9yKX19KX1mdW5jdGlvbiBoKGUpe3ZhciB0PW5ldyBGaWxlUmVhZGVyLG49bSh0KTtyZXR1cm4gdC5yZWFkQXNBcnJheUJ1ZmZlcihlKSxufWZ1bmN0aW9uIGcoZSl7dmFyIHQ7cmV0dXJuIGUuc2xpY2U/ZS5zbGljZSgwKTooKHQ9bmV3IFVpbnQ4QXJyYXkoZS5ieXRlTGVuZ3RoKSkuc2V0KG5ldyBVaW50OEFycmF5KGUpKSx0LmJ1ZmZlcil9ZnVuY3Rpb24gYigpe3JldHVybiB0aGlzLmJvZHlVc2VkPSExLHRoaXMuX2luaXRCb2R5PWZ1bmN0aW9uKGUpe3ZhciB0O3RoaXMuYm9keVVzZWQ9dGhpcy5ib2R5VXNlZCwodGhpcy5fYm9keUluaXQ9ZSk/InN0cmluZyI9PXR5cGVvZiBlP3RoaXMuX2JvZHlUZXh0PWU6dSYmQmxvYi5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihlKT90aGlzLl9ib2R5QmxvYj1lOmEmJkZvcm1EYXRhLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKGUpP3RoaXMuX2JvZHlGb3JtRGF0YT1lOnImJlVSTFNlYXJjaFBhcmFtcy5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihlKT90aGlzLl9ib2R5VGV4dD1lLnRvU3RyaW5nKCk6cyYmdSYmKHQ9ZSkmJkRhdGFWaWV3LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKHQpPyh0aGlzLl9ib2R5QXJyYXlCdWZmZXI9ZyhlLmJ1ZmZlciksdGhpcy5fYm9keUluaXQ9bmV3IEJsb2IoW3RoaXMuX2JvZHlBcnJheUJ1ZmZlcl0pKTpzJiYoQXJyYXlCdWZmZXIucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoZSl8fG4oZSkpP3RoaXMuX2JvZHlBcnJheUJ1ZmZlcj1nKGUpOnRoaXMuX2JvZHlUZXh0PWU9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpOih0aGlzLl9ub0JvZHk9ITAsdGhpcy5fYm9keVRleHQ9IiIpLHRoaXMuaGVhZGVycy5nZXQoImNvbnRlbnQtdHlwZSIpfHwoInN0cmluZyI9PXR5cGVvZiBlP3RoaXMuaGVhZGVycy5zZXQoImNvbnRlbnQtdHlwZSIsInRleHQvcGxhaW47Y2hhcnNldD1VVEYtOCIpOnRoaXMuX2JvZHlCbG9iJiZ0aGlzLl9ib2R5QmxvYi50eXBlP3RoaXMuaGVhZGVycy5zZXQoImNvbnRlbnQtdHlwZSIsdGhpcy5fYm9keUJsb2IudHlwZSk6ciYmVVJMU2VhcmNoUGFyYW1zLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKGUpJiZ0aGlzLmhlYWRlcnMuc2V0KCJjb250ZW50LXR5cGUiLCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7Y2hhcnNldD1VVEYtOCIpKX0sdSYmKHRoaXMuYmxvYj1mdW5jdGlvbigpe3ZhciBlPWwodGhpcyk7aWYoZSlyZXR1cm4gZTtpZih0aGlzLl9ib2R5QmxvYilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuX2JvZHlCbG9iKTtpZih0aGlzLl9ib2R5QXJyYXlCdWZmZXIpcmV0dXJuIFByb21pc2UucmVzb2x2ZShuZXcgQmxvYihbdGhpcy5fYm9keUFycmF5QnVmZmVyXSkpO2lmKHRoaXMuX2JvZHlGb3JtRGF0YSl0aHJvdyBuZXcgRXJyb3IoImNvdWxkIG5vdCByZWFkIEZvcm1EYXRhIGJvZHkgYXMgYmxvYiIpO3JldHVybiBQcm9taXNlLnJlc29sdmUobmV3IEJsb2IoW3RoaXMuX2JvZHlUZXh0XSkpfSksdGhpcy5hcnJheUJ1ZmZlcj1mdW5jdGlvbigpe2lmKHRoaXMuX2JvZHlBcnJheUJ1ZmZlcilyZXR1cm4gbCh0aGlzKXx8KEFycmF5QnVmZmVyLmlzVmlldyh0aGlzLl9ib2R5QXJyYXlCdWZmZXIpP1Byb21pc2UucmVzb2x2ZSh0aGlzLl9ib2R5QXJyYXlCdWZmZXIuYnVmZmVyLnNsaWNlKHRoaXMuX2JvZHlBcnJheUJ1ZmZlci5ieXRlT2Zmc2V0LHRoaXMuX2JvZHlBcnJheUJ1ZmZlci5ieXRlT2Zmc2V0K3RoaXMuX2JvZHlBcnJheUJ1ZmZlci5ieXRlTGVuZ3RoKSk6UHJvbWlzZS5yZXNvbHZlKHRoaXMuX2JvZHlBcnJheUJ1ZmZlcikpO2lmKHUpcmV0dXJuIHRoaXMuYmxvYigpLnRoZW4oaCk7dGhyb3cgbmV3IEVycm9yKCJjb3VsZCBub3QgcmVhZCBhcyBBcnJheUJ1ZmZlciIpfSx0aGlzLnRleHQ9ZnVuY3Rpb24oKXt2YXIgZSx0LG4scj1sKHRoaXMpO2lmKHIpcmV0dXJuIHI7aWYodGhpcy5fYm9keUJsb2IpcmV0dXJuIHI9dGhpcy5fYm9keUJsb2IsZT1uZXcgRmlsZVJlYWRlcix0PW0oZSksbj0obj0vY2hhcnNldD0oW0EtWmEtejAtOV8tXSspLy5leGVjKHIudHlwZSkpP25bMV06InV0Zi04IixlLnJlYWRBc1RleHQocixuKSx0O2lmKHRoaXMuX2JvZHlBcnJheUJ1ZmZlcilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1uZXcgVWludDhBcnJheShlKSxuPW5ldyBBcnJheSh0Lmxlbmd0aCkscj0wO3I8dC5sZW5ndGg7cisrKW5bcl09U3RyaW5nLmZyb21DaGFyQ29kZSh0W3JdKTtyZXR1cm4gbi5qb2luKCIiKX0odGhpcy5fYm9keUFycmF5QnVmZmVyKSk7aWYodGhpcy5fYm9keUZvcm1EYXRhKXRocm93IG5ldyBFcnJvcigiY291bGQgbm90IHJlYWQgRm9ybURhdGEgYm9keSBhcyB0ZXh0Iik7cmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLl9ib2R5VGV4dCl9LGEmJih0aGlzLmZvcm1EYXRhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudGV4dCgpLnRoZW4odyl9KSx0aGlzLmpzb249ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50ZXh0KCkudGhlbihKU09OLnBhcnNlKX0sdGhpc31zJiYodD1bIltvYmplY3QgSW50OEFycmF5XSIsIltvYmplY3QgVWludDhBcnJheV0iLCJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSIsIltvYmplY3QgSW50MTZBcnJheV0iLCJbb2JqZWN0IFVpbnQxNkFycmF5XSIsIltvYmplY3QgSW50MzJBcnJheV0iLCJbb2JqZWN0IFVpbnQzMkFycmF5XSIsIltvYmplY3QgRmxvYXQzMkFycmF5XSIsIltvYmplY3QgRmxvYXQ2NEFycmF5XSJdLG49QXJyYXlCdWZmZXIuaXNWaWV3fHxmdW5jdGlvbihlKXtyZXR1cm4gZSYmLTE8dC5pbmRleE9mKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKSl9KSxwLnByb3RvdHlwZS5hcHBlbmQ9ZnVuY3Rpb24oZSx0KXtlPWYoZSksdD1kKHQpO3ZhciBuPXRoaXMubWFwW2VdO3RoaXMubWFwW2VdPW4/bisiLCAiK3Q6dH0scC5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKGUpe2RlbGV0ZSB0aGlzLm1hcFtmKGUpXX0scC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGUpe3JldHVybiBlPWYoZSksdGhpcy5oYXMoZSk/dGhpcy5tYXBbZV06bnVsbH0scC5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLm1hcC5oYXNPd25Qcm9wZXJ0eShmKGUpKX0scC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGUsdCl7dGhpcy5tYXBbZihlKV09ZCh0KX0scC5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbiBpbiB0aGlzLm1hcCl0aGlzLm1hcC5oYXNPd25Qcm9wZXJ0eShuKSYmZS5jYWxsKHQsdGhpcy5tYXBbbl0sbix0aGlzKX0scC5wcm90b3R5cGUua2V5cz1mdW5jdGlvbigpe3ZhciBuPVtdO3JldHVybiB0aGlzLmZvckVhY2goZnVuY3Rpb24oZSx0KXtuLnB1c2godCl9KSxpKG4pfSxwLnByb3RvdHlwZS52YWx1ZXM9ZnVuY3Rpb24oKXt2YXIgdD1bXTtyZXR1cm4gdGhpcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3QucHVzaChlKX0pLGkodCl9LHAucHJvdG90eXBlLmVudHJpZXM9ZnVuY3Rpb24oKXt2YXIgbj1bXTtyZXR1cm4gdGhpcy5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7bi5wdXNoKFt0LGVdKX0pLGkobil9LG8mJihwLnByb3RvdHlwZVtTeW1ib2wuaXRlcmF0b3JdPXAucHJvdG90eXBlLmVudHJpZXMpO3ZhciB5PVsiQ09OTkVDVCIsIkRFTEVURSIsIkdFVCIsIkhFQUQiLCJPUFRJT05TIiwiUEFUQ0giLCJQT1NUIiwiUFVUIiwiVFJBQ0UiXTtmdW5jdGlvbiB2KGUsdCl7aWYoISh0aGlzIGluc3RhbmNlb2YgdikpdGhyb3cgbmV3IFR5cGVFcnJvcignUGxlYXNlIHVzZSB0aGUgIm5ldyIgb3BlcmF0b3IsIHRoaXMgRE9NIG9iamVjdCBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEgZnVuY3Rpb24uJyk7dmFyIG4scj0odD10fHx7fSkuYm9keTtpZihlIGluc3RhbmNlb2Ygdil7aWYoZS5ib2R5VXNlZCl0aHJvdyBuZXcgVHlwZUVycm9yKCJBbHJlYWR5IHJlYWQiKTt0aGlzLnVybD1lLnVybCx0aGlzLmNyZWRlbnRpYWxzPWUuY3JlZGVudGlhbHMsdC5oZWFkZXJzfHwodGhpcy5oZWFkZXJzPW5ldyBwKGUuaGVhZGVycykpLHRoaXMubWV0aG9kPWUubWV0aG9kLHRoaXMubW9kZT1lLm1vZGUsdGhpcy5zaWduYWw9ZS5zaWduYWwscnx8bnVsbD09ZS5fYm9keUluaXR8fChyPWUuX2JvZHlJbml0LGUuYm9keVVzZWQ9ITApfWVsc2UgdGhpcy51cmw9U3RyaW5nKGUpO2lmKHRoaXMuY3JlZGVudGlhbHM9dC5jcmVkZW50aWFsc3x8dGhpcy5jcmVkZW50aWFsc3x8InNhbWUtb3JpZ2luIiwhdC5oZWFkZXJzJiZ0aGlzLmhlYWRlcnN8fCh0aGlzLmhlYWRlcnM9bmV3IHAodC5oZWFkZXJzKSksdGhpcy5tZXRob2Q9KGU9dC5tZXRob2R8fHRoaXMubWV0aG9kfHwiR0VUIixuPWUudG9VcHBlckNhc2UoKSwtMTx5LmluZGV4T2Yobik/bjplKSx0aGlzLm1vZGU9dC5tb2RlfHx0aGlzLm1vZGV8fG51bGwsdGhpcy5zaWduYWw9dC5zaWduYWx8fHRoaXMuc2lnbmFsfHxmdW5jdGlvbigpe2lmKCJBYm9ydENvbnRyb2xsZXIiaW4gYylyZXR1cm4obmV3IEFib3J0Q29udHJvbGxlcikuc2lnbmFsfSgpLHRoaXMucmVmZXJyZXI9bnVsbCwoIkdFVCI9PT10aGlzLm1ldGhvZHx8IkhFQUQiPT09dGhpcy5tZXRob2QpJiZyKXRocm93IG5ldyBUeXBlRXJyb3IoIkJvZHkgbm90IGFsbG93ZWQgZm9yIEdFVCBvciBIRUFEIHJlcXVlc3RzIik7dGhpcy5faW5pdEJvZHkociksIkdFVCIhPT10aGlzLm1ldGhvZCYmIkhFQUQiIT09dGhpcy5tZXRob2R8fCJuby1zdG9yZSIhPT10LmNhY2hlJiYibm8tY2FjaGUiIT09dC5jYWNoZXx8KChuPS8oWz8mXSlfPVteJl0qLykudGVzdCh0aGlzLnVybCk/dGhpcy51cmw9dGhpcy51cmwucmVwbGFjZShuLCIkMV89IisobmV3IERhdGUpLmdldFRpbWUoKSk6dGhpcy51cmwrPSgvXD8vLnRlc3QodGhpcy51cmwpPyImIjoiPyIpKyJfPSIrKG5ldyBEYXRlKS5nZXRUaW1lKCkpfWZ1bmN0aW9uIHcoZSl7dmFyIG49bmV3IEZvcm1EYXRhO3JldHVybiBlLnRyaW0oKS5zcGxpdCgiJiIpLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ7ZSYmKHQ9KGU9ZS5zcGxpdCgiPSIpKS5zaGlmdCgpLnJlcGxhY2UoL1wrL2csIiAiKSxlPWUuam9pbigiPSIpLnJlcGxhY2UoL1wrL2csIiAiKSxuLmFwcGVuZChkZWNvZGVVUklDb21wb25lbnQodCksZGVjb2RlVVJJQ29tcG9uZW50KGUpKSl9KSxufWZ1bmN0aW9uIHgoZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiB4KSl0aHJvdyBuZXcgVHlwZUVycm9yKCdQbGVhc2UgdXNlIHRoZSAibmV3IiBvcGVyYXRvciwgdGhpcyBET00gb2JqZWN0IGNvbnN0cnVjdG9yIGNhbm5vdCBiZSBjYWxsZWQgYXMgYSBmdW5jdGlvbi4nKTtpZih0PXR8fHt9LHRoaXMudHlwZT0iZGVmYXVsdCIsdGhpcy5zdGF0dXM9dm9pZCAwPT09dC5zdGF0dXM/MjAwOnQuc3RhdHVzLHRoaXMuc3RhdHVzPDIwMHx8NTk5PHRoaXMuc3RhdHVzKXRocm93IG5ldyBSYW5nZUVycm9yKCJGYWlsZWQgdG8gY29uc3RydWN0ICdSZXNwb25zZSc6IFRoZSBzdGF0dXMgcHJvdmlkZWQgKDApIGlzIG91dHNpZGUgdGhlIHJhbmdlIFsyMDAsIDU5OV0uIik7dGhpcy5vaz0yMDA8PXRoaXMuc3RhdHVzJiZ0aGlzLnN0YXR1czwzMDAsdGhpcy5zdGF0dXNUZXh0PXZvaWQgMD09PXQuc3RhdHVzVGV4dD8iIjoiIit0LnN0YXR1c1RleHQsdGhpcy5oZWFkZXJzPW5ldyBwKHQuaGVhZGVycyksdGhpcy51cmw9dC51cmx8fCIiLHRoaXMuX2luaXRCb2R5KGUpfXYucHJvdG90eXBlLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB2KHRoaXMse2JvZHk6dGhpcy5fYm9keUluaXR9KX0sYi5jYWxsKHYucHJvdG90eXBlKSxiLmNhbGwoeC5wcm90b3R5cGUpLHgucHJvdG90eXBlLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB4KHRoaXMuX2JvZHlJbml0LHtzdGF0dXM6dGhpcy5zdGF0dXMsc3RhdHVzVGV4dDp0aGlzLnN0YXR1c1RleHQsaGVhZGVyczpuZXcgcCh0aGlzLmhlYWRlcnMpLHVybDp0aGlzLnVybH0pfSx4LmVycm9yPWZ1bmN0aW9uKCl7dmFyIGU9bmV3IHgobnVsbCx7c3RhdHVzOjIwMCxzdGF0dXNUZXh0OiIifSk7cmV0dXJuIGUuc3RhdHVzPTAsZS50eXBlPSJlcnJvciIsZX07dmFyIGs9WzMwMSwzMDIsMzAzLDMwNywzMDhdLFM9KHgucmVkaXJlY3Q9ZnVuY3Rpb24oZSx0KXtpZigtMT09PWsuaW5kZXhPZih0KSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW52YWxpZCBzdGF0dXMgY29kZSIpO3JldHVybiBuZXcgeChudWxsLHtzdGF0dXM6dCxoZWFkZXJzOntsb2NhdGlvbjplfX0pfSxjLkRPTUV4Y2VwdGlvbik7dHJ5e25ldyBTfWNhdGNoKGUpeyhTPWZ1bmN0aW9uKGUsdCl7dGhpcy5tZXNzYWdlPWUsdGhpcy5uYW1lPXQ7dD1FcnJvcihlKTt0aGlzLnN0YWNrPXQuc3RhY2t9KS5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShFcnJvci5wcm90b3R5cGUpLFMucHJvdG90eXBlLmNvbnN0cnVjdG9yPVN9ZnVuY3Rpb24gQyhyLGwpe3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihvLGUpe3ZhciBhPW5ldyB2KHIsbCk7aWYoYS5zaWduYWwmJmEuc2lnbmFsLmFib3J0ZWQpcmV0dXJuIGUobmV3IFMoIkFib3J0ZWQiLCJBYm9ydEVycm9yIikpO3ZhciBuLGk9bmV3IFhNTEh0dHBSZXF1ZXN0O2Z1bmN0aW9uIHQoKXtpLmFib3J0KCl9aS5vbmxvYWQ9ZnVuY3Rpb24oKXt2YXIgZSxuLHQ9e3N0YXR1c1RleHQ6aS5zdGF0dXNUZXh0LGhlYWRlcnM6KGU9aS5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKXx8IiIsbj1uZXcgcCxlLnJlcGxhY2UoL1xyP1xuW1x0IF0rL2csIiAiKS5zcGxpdCgiXHIiKS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIDA9PT1lLmluZGV4T2YoIlxuIik/ZS5zdWJzdHIoMSxlLmxlbmd0aCk6ZX0pLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIGU9ZS5zcGxpdCgiOiIpLHQ9ZS5zaGlmdCgpLnRyaW0oKTtpZih0KXtlPWUuam9pbigiOiIpLnRyaW0oKTt0cnl7bi5hcHBlbmQodCxlKX1jYXRjaChlKXtjb25zb2xlLndhcm4oIlJlc3BvbnNlICIrZS5tZXNzYWdlKX19fSksbil9LHI9KGEudXJsLnN0YXJ0c1dpdGgoImZpbGU6Ly8iKSYmKGkuc3RhdHVzPDIwMHx8NTk5PGkuc3RhdHVzKT90LnN0YXR1cz0yMDA6dC5zdGF0dXM9aS5zdGF0dXMsdC51cmw9InJlc3BvbnNlVVJMImluIGk/aS5yZXNwb25zZVVSTDp0LmhlYWRlcnMuZ2V0KCJYLVJlcXVlc3QtVVJMIiksInJlc3BvbnNlImluIGk/aS5yZXNwb25zZTppLnJlc3BvbnNlVGV4dCk7c2V0VGltZW91dChmdW5jdGlvbigpe28obmV3IHgocix0KSl9LDApfSxpLm9uZXJyb3I9ZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZShuZXcgVHlwZUVycm9yKCJOZXR3b3JrIHJlcXVlc3QgZmFpbGVkIikpfSwwKX0saS5vbnRpbWVvdXQ9ZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZShuZXcgVHlwZUVycm9yKCJOZXR3b3JrIHJlcXVlc3QgdGltZWQgb3V0IikpfSwwKX0saS5vbmFib3J0PWZ1bmN0aW9uKCl7c2V0VGltZW91dChmdW5jdGlvbigpe2UobmV3IFMoIkFib3J0ZWQiLCJBYm9ydEVycm9yIikpfSwwKX0saS5vcGVuKGEubWV0aG9kLGZ1bmN0aW9uKHQpe3RyeXtyZXR1cm4iIj09PXQmJmMubG9jYXRpb24uaHJlZj9jLmxvY2F0aW9uLmhyZWY6dH1jYXRjaChlKXtyZXR1cm4gdH19KGEudXJsKSwhMCksImluY2x1ZGUiPT09YS5jcmVkZW50aWFscz9pLndpdGhDcmVkZW50aWFscz0hMDoib21pdCI9PT1hLmNyZWRlbnRpYWxzJiYoaS53aXRoQ3JlZGVudGlhbHM9ITEpLCJyZXNwb25zZVR5cGUiaW4gaSYmKHU/aS5yZXNwb25zZVR5cGU9ImJsb2IiOnMmJihpLnJlc3BvbnNlVHlwZT0iYXJyYXlidWZmZXIiKSksbCYmIm9iamVjdCI9PXR5cGVvZiBsLmhlYWRlcnMmJiEobC5oZWFkZXJzIGluc3RhbmNlb2YgcHx8Yy5IZWFkZXJzJiZsLmhlYWRlcnMgaW5zdGFuY2VvZiBjLkhlYWRlcnMpPyhuPVtdLE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGwuaGVhZGVycykuZm9yRWFjaChmdW5jdGlvbihlKXtuLnB1c2goZihlKSksaS5zZXRSZXF1ZXN0SGVhZGVyKGUsZChsLmhlYWRlcnNbZV0pKX0pLGEuaGVhZGVycy5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7LTE9PT1uLmluZGV4T2YodCkmJmkuc2V0UmVxdWVzdEhlYWRlcih0LGUpfSkpOmEuaGVhZGVycy5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7aS5zZXRSZXF1ZXN0SGVhZGVyKHQsZSl9KSxhLnNpZ25hbCYmKGEuc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIoImFib3J0Iix0KSxpLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezQ9PT1pLnJlYWR5U3RhdGUmJmEuc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoImFib3J0Iix0KX0pLGkuc2VuZCh2b2lkIDA9PT1hLl9ib2R5SW5pdD9udWxsOmEuX2JvZHlJbml0KX0pfUMucG9seWZpbGw9ITAsYy5mZXRjaHx8KGMuZmV0Y2g9QyxjLkhlYWRlcnM9cCxjLlJlcXVlc3Q9dixjLlJlc3BvbnNlPXgpfS5jYWxsKHRoaXMsbigyMikpfSxmdW5jdGlvbihlLHQsbil7dmFyIGY9U3ltYm9sLmZvcigicmVhY3QuZWxlbWVudCIpLGQ9U3ltYm9sLmZvcigicmVhY3QucG9ydGFsIikscj1TeW1ib2wuZm9yKCJyZWFjdC5mcmFnbWVudCIpLG89U3ltYm9sLmZvcigicmVhY3Quc3RyaWN0X21vZGUiKSxhPVN5bWJvbC5mb3IoInJlYWN0LnByb2ZpbGVyIiksaT1TeW1ib2wuZm9yKCJyZWFjdC5wcm92aWRlciIpLGw9U3ltYm9sLmZvcigicmVhY3QuY29udGV4dCIpLGM9U3ltYm9sLmZvcigicmVhY3QuZm9yd2FyZF9yZWYiKSx1PVN5bWJvbC5mb3IoInJlYWN0LnN1c3BlbnNlIikscz1TeW1ib2wuZm9yKCJyZWFjdC5tZW1vIikscD1TeW1ib2wuZm9yKCJyZWFjdC5sYXp5IiksbT1TeW1ib2wuaXRlcmF0b3I7dmFyIGg9e2lzTW91bnRlZDpmdW5jdGlvbigpe3JldHVybiExfSxlbnF1ZXVlRm9yY2VVcGRhdGU6ZnVuY3Rpb24oKXt9LGVucXVldWVSZXBsYWNlU3RhdGU6ZnVuY3Rpb24oKXt9LGVucXVldWVTZXRTdGF0ZTpmdW5jdGlvbigpe319LGc9T2JqZWN0LmFzc2lnbixiPXt9O2Z1bmN0aW9uIHkoZSx0LG4pe3RoaXMucHJvcHM9ZSx0aGlzLmNvbnRleHQ9dCx0aGlzLnJlZnM9Yix0aGlzLnVwZGF0ZXI9bnx8aH1mdW5jdGlvbiB2KCl7fWZ1bmN0aW9uIHcoZSx0LG4pe3RoaXMucHJvcHM9ZSx0aGlzLmNvbnRleHQ9dCx0aGlzLnJlZnM9Yix0aGlzLnVwZGF0ZXI9bnx8aH15LnByb3RvdHlwZS5pc1JlYWN0Q29tcG9uZW50PXt9LHkucHJvdG90eXBlLnNldFN0YXRlPWZ1bmN0aW9uKGUsdCl7aWYoIm9iamVjdCIhPXR5cGVvZiBlJiYiZnVuY3Rpb24iIT10eXBlb2YgZSYmbnVsbCE9ZSl0aHJvdyBFcnJvcigic2V0U3RhdGUoLi4uKTogdGFrZXMgYW4gb2JqZWN0IG9mIHN0YXRlIHZhcmlhYmxlcyB0byB1cGRhdGUgb3IgYSBmdW5jdGlvbiB3aGljaCByZXR1cm5zIGFuIG9iamVjdCBvZiBzdGF0ZSB2YXJpYWJsZXMuIik7dGhpcy51cGRhdGVyLmVucXVldWVTZXRTdGF0ZSh0aGlzLGUsdCwic2V0U3RhdGUiKX0seS5wcm90b3R5cGUuZm9yY2VVcGRhdGU9ZnVuY3Rpb24oZSl7dGhpcy51cGRhdGVyLmVucXVldWVGb3JjZVVwZGF0ZSh0aGlzLGUsImZvcmNlVXBkYXRlIil9LHYucHJvdG90eXBlPXkucHJvdG90eXBlO3ZhciB4PXcucHJvdG90eXBlPW5ldyB2LGs9KHguY29uc3RydWN0b3I9dyxnKHgseS5wcm90b3R5cGUpLHguaXNQdXJlUmVhY3RDb21wb25lbnQ9ITAsQXJyYXkuaXNBcnJheSksUz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LEM9e2N1cnJlbnQ6bnVsbH0sRT17a2V5OiEwLHJlZjohMCxfX3NlbGY6ITAsX19zb3VyY2U6ITB9O2Z1bmN0aW9uIE8oZSx0LG4pe3ZhciByLG89e30sYT1udWxsLGk9bnVsbDtpZihudWxsIT10KWZvcihyIGluIHZvaWQgMCE9PXQucmVmJiYoaT10LnJlZiksdm9pZCAwIT09dC5rZXkmJihhPSIiK3Qua2V5KSx0KVMuY2FsbCh0LHIpJiYhRS5oYXNPd25Qcm9wZXJ0eShyKSYmKG9bcl09dFtyXSk7dmFyIGw9YXJndW1lbnRzLmxlbmd0aC0yO2lmKDE9PT1sKW8uY2hpbGRyZW49bjtlbHNlIGlmKDE8bCl7Zm9yKHZhciBjPUFycmF5KGwpLHU9MDt1PGw7dSsrKWNbdV09YXJndW1lbnRzW3UrMl07by5jaGlsZHJlbj1jfWlmKGUmJmUuZGVmYXVsdFByb3BzKWZvcihyIGluIGw9ZS5kZWZhdWx0UHJvcHMpdm9pZCAwPT09b1tyXSYmKG9bcl09bFtyXSk7cmV0dXJueyQkdHlwZW9mOmYsdHlwZTplLGtleTphLHJlZjppLHByb3BzOm8sX293bmVyOkMuY3VycmVudH19ZnVuY3Rpb24gaihlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiZlLiQkdHlwZW9mPT09Zn12YXIgQT0vXC8rL2c7ZnVuY3Rpb24gUChlLHQpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJm51bGwhPWUua2V5PyhlPSIiK2Uua2V5LG49eyI9IjoiPTAiLCI6IjoiPTIifSwiJCIrZS5yZXBsYWNlKC9bPTpdL2csZnVuY3Rpb24oZSl7cmV0dXJuIG5bZV19KSk6dC50b1N0cmluZygzNik7dmFyIG59ZnVuY3Rpb24gSShlLHQsbixyLG8pe3ZhciBhLGksbD0hMTtpZihudWxsPT09KGU9InVuZGVmaW5lZCIhPT0odT10eXBlb2YgZSkmJiJib29sZWFuIiE9PXU/ZTpudWxsKSlsPSEwO2Vsc2Ugc3dpdGNoKHUpe2Nhc2Uic3RyaW5nIjpjYXNlIm51bWJlciI6bD0hMDticmVhaztjYXNlIm9iamVjdCI6c3dpdGNoKGUuJCR0eXBlb2Ype2Nhc2UgZjpjYXNlIGQ6bD0hMH19aWYobClyZXR1cm4gbz1vKGw9ZSksZT0iIj09PXI/Ii4iK1AobCwwKTpyLGsobyk/KG49IiIsSShvLHQsbj1udWxsIT1lP2UucmVwbGFjZShBLCIkJi8iKSsiLyI6biwiIixmdW5jdGlvbihlKXtyZXR1cm4gZX0pKTpudWxsIT1vJiYoaihvKSYmKGk9bisoIShhPW8pLmtleXx8bCYmbC5rZXk9PT1vLmtleT8iIjooIiIrby5rZXkpLnJlcGxhY2UoQSwiJCYvIikrIi8iKStlLG89eyQkdHlwZW9mOmYsdHlwZTphLnR5cGUsa2V5OmkscmVmOmEucmVmLHByb3BzOmEucHJvcHMsX293bmVyOmEuX293bmVyfSksdC5wdXNoKG8pKSwxO2lmKGw9MCxyPSIiPT09cj8iLiI6cisiOiIsayhlKSlmb3IodmFyIGM9MDtjPGUubGVuZ3RoO2MrKyl7dmFyIHUscz1yK1AodT1lW2NdLGMpO2wrPUkodSx0LG4scyxvKX1lbHNlIGlmKCJmdW5jdGlvbiI9PXR5cGVvZihzPW51bGwhPT0oaT1lKSYmIm9iamVjdCI9PXR5cGVvZiBpJiYiZnVuY3Rpb24iPT10eXBlb2YoaT1tJiZpW21dfHxpWyJAQGl0ZXJhdG9yIl0pP2k6bnVsbCkpZm9yKGU9cy5jYWxsKGUpLGM9MDshKHU9ZS5uZXh0KCkpLmRvbmU7KWwrPUkodT11LnZhbHVlLHQsbixzPXIrUCh1LGMrKyksbyk7ZWxzZSBpZigib2JqZWN0Ij09PXUpdGhyb3cgdD1TdHJpbmcoZSksRXJyb3IoIk9iamVjdHMgYXJlIG5vdCB2YWxpZCBhcyBhIFJlYWN0IGNoaWxkIChmb3VuZDogIisoIltvYmplY3QgT2JqZWN0XSI9PT10PyJvYmplY3Qgd2l0aCBrZXlzIHsiK09iamVjdC5rZXlzKGUpLmpvaW4oIiwgIikrIn0iOnQpKyIpLiBJZiB5b3UgbWVhbnQgdG8gcmVuZGVyIGEgY29sbGVjdGlvbiBvZiBjaGlsZHJlbiwgdXNlIGFuIGFycmF5IGluc3RlYWQuIik7cmV0dXJuIGx9ZnVuY3Rpb24gXyhlLHQsbil7dmFyIHI7cmV0dXJuIG51bGw9PWV8fChyPTAsSShlLGU9W10sIiIsIiIsZnVuY3Rpb24oZSl7cmV0dXJuIHQuY2FsbChuLGUscisrKX0pKSxlfWZ1bmN0aW9uIHoodCl7dmFyIGU7aWYoLTE9PT10Ll9zdGF0dXMmJigoZT0oZT10Ll9yZXN1bHQpKCkpLnRoZW4oZnVuY3Rpb24oZSl7MCE9PXQuX3N0YXR1cyYmLTEhPT10Ll9zdGF0dXN8fCh0Ll9zdGF0dXM9MSx0Ll9yZXN1bHQ9ZSl9LGZ1bmN0aW9uKGUpezAhPT10Ll9zdGF0dXMmJi0xIT09dC5fc3RhdHVzfHwodC5fc3RhdHVzPTIsdC5fcmVzdWx0PWUpfSksLTE9PT10Ll9zdGF0dXMpJiYodC5fc3RhdHVzPTAsdC5fcmVzdWx0PWUpLDE9PT10Ll9zdGF0dXMpcmV0dXJuIHQuX3Jlc3VsdC5kZWZhdWx0O3Rocm93IHQuX3Jlc3VsdH12YXIgVD17Y3VycmVudDpudWxsfSxMPXt0cmFuc2l0aW9uOm51bGx9LHg9e1JlYWN0Q3VycmVudERpc3BhdGNoZXI6VCxSZWFjdEN1cnJlbnRCYXRjaENvbmZpZzpMLFJlYWN0Q3VycmVudE93bmVyOkN9O3QuQ2hpbGRyZW49e21hcDpfLGZvckVhY2g6ZnVuY3Rpb24oZSx0LG4pe18oZSxmdW5jdGlvbigpe3QuYXBwbHkodGhpcyxhcmd1bWVudHMpfSxuKX0sY291bnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9MDtyZXR1cm4gXyhlLGZ1bmN0aW9uKCl7dCsrfSksdH0sdG9BcnJheTpmdW5jdGlvbihlKXtyZXR1cm4gXyhlLGZ1bmN0aW9uKGUpe3JldHVybiBlfSl8fFtdfSxvbmx5OmZ1bmN0aW9uKGUpe2lmKGooZSkpcmV0dXJuIGU7dGhyb3cgRXJyb3IoIlJlYWN0LkNoaWxkcmVuLm9ubHkgZXhwZWN0ZWQgdG8gcmVjZWl2ZSBhIHNpbmdsZSBSZWFjdCBlbGVtZW50IGNoaWxkLiIpfX0sdC5Db21wb25lbnQ9eSx0LkZyYWdtZW50PXIsdC5Qcm9maWxlcj1hLHQuUHVyZUNvbXBvbmVudD13LHQuU3RyaWN0TW9kZT1vLHQuU3VzcGVuc2U9dSx0Ll9fU0VDUkVUX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1lPVV9XSUxMX0JFX0ZJUkVEPXgsdC5jbG9uZUVsZW1lbnQ9ZnVuY3Rpb24oZSx0LG4pe2lmKG51bGw9PWUpdGhyb3cgRXJyb3IoIlJlYWN0LmNsb25lRWxlbWVudCguLi4pOiBUaGUgYXJndW1lbnQgbXVzdCBiZSBhIFJlYWN0IGVsZW1lbnQsIGJ1dCB5b3UgcGFzc2VkICIrZSsiLiIpO3ZhciByPWcoe30sZS5wcm9wcyksbz1lLmtleSxhPWUucmVmLGk9ZS5fb3duZXI7aWYobnVsbCE9dClmb3IobCBpbiB2b2lkIDAhPT10LnJlZiYmKGE9dC5yZWYsaT1DLmN1cnJlbnQpLHZvaWQgMCE9PXQua2V5JiYobz0iIit0LmtleSksZS50eXBlJiZlLnR5cGUuZGVmYXVsdFByb3BzJiYoYz1lLnR5cGUuZGVmYXVsdFByb3BzKSx0KVMuY2FsbCh0LGwpJiYhRS5oYXNPd25Qcm9wZXJ0eShsKSYmKHJbbF09KHZvaWQgMD09PXRbbF0mJnZvaWQgMCE9PWM/Yzp0KVtsXSk7dmFyIGw9YXJndW1lbnRzLmxlbmd0aC0yO2lmKDE9PT1sKXIuY2hpbGRyZW49bjtlbHNlIGlmKDE8bCl7Zm9yKHZhciBjPUFycmF5KGwpLHU9MDt1PGw7dSsrKWNbdV09YXJndW1lbnRzW3UrMl07ci5jaGlsZHJlbj1jfXJldHVybnskJHR5cGVvZjpmLHR5cGU6ZS50eXBlLGtleTpvLHJlZjphLHByb3BzOnIsX293bmVyOml9fSx0LmNyZWF0ZUNvbnRleHQ9ZnVuY3Rpb24oZSl7cmV0dXJuKGU9eyQkdHlwZW9mOmwsX2N1cnJlbnRWYWx1ZTplLF9jdXJyZW50VmFsdWUyOmUsX3RocmVhZENvdW50OjAsUHJvdmlkZXI6bnVsbCxDb25zdW1lcjpudWxsLF9kZWZhdWx0VmFsdWU6bnVsbCxfZ2xvYmFsTmFtZTpudWxsfSkuUHJvdmlkZXI9eyQkdHlwZW9mOmksX2NvbnRleHQ6ZX0sZS5Db25zdW1lcj1lfSx0LmNyZWF0ZUVsZW1lbnQ9Tyx0LmNyZWF0ZUZhY3Rvcnk9ZnVuY3Rpb24oZSl7dmFyIHQ9Ty5iaW5kKG51bGwsZSk7cmV0dXJuIHQudHlwZT1lLHR9LHQuY3JlYXRlUmVmPWZ1bmN0aW9uKCl7cmV0dXJue2N1cnJlbnQ6bnVsbH19LHQuZm9yd2FyZFJlZj1mdW5jdGlvbihlKXtyZXR1cm57JCR0eXBlb2Y6YyxyZW5kZXI6ZX19LHQuaXNWYWxpZEVsZW1lbnQ9aix0Lmxhenk9ZnVuY3Rpb24oZSl7cmV0dXJueyQkdHlwZW9mOnAsX3BheWxvYWQ6e19zdGF0dXM6LTEsX3Jlc3VsdDplfSxfaW5pdDp6fX0sdC5tZW1vPWZ1bmN0aW9uKGUsdCl7cmV0dXJueyQkdHlwZW9mOnMsdHlwZTplLGNvbXBhcmU6dm9pZCAwPT09dD9udWxsOnR9fSx0LnN0YXJ0VHJhbnNpdGlvbj1mdW5jdGlvbihlKXt2YXIgdD1MLnRyYW5zaXRpb247TC50cmFuc2l0aW9uPXt9O3RyeXtlKCl9ZmluYWxseXtMLnRyYW5zaXRpb249dH19LHQudW5zdGFibGVfYWN0PWZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoImFjdCguLi4pIGlzIG5vdCBzdXBwb3J0ZWQgaW4gcHJvZHVjdGlvbiBidWlsZHMgb2YgUmVhY3QuIil9LHQudXNlQ2FsbGJhY2s9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVC5jdXJyZW50LnVzZUNhbGxiYWNrKGUsdCl9LHQudXNlQ29udGV4dD1mdW5jdGlvbihlKXtyZXR1cm4gVC5jdXJyZW50LnVzZUNvbnRleHQoZSl9LHQudXNlRGVidWdWYWx1ZT1mdW5jdGlvbigpe30sdC51c2VEZWZlcnJlZFZhbHVlPWZ1bmN0aW9uKGUpe3JldHVybiBULmN1cnJlbnQudXNlRGVmZXJyZWRWYWx1ZShlKX0sdC51c2VFZmZlY3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVC5jdXJyZW50LnVzZUVmZmVjdChlLHQpfSx0LnVzZUlkPWZ1bmN0aW9uKCl7cmV0dXJuIFQuY3VycmVudC51c2VJZCgpfSx0LnVzZUltcGVyYXRpdmVIYW5kbGU9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBULmN1cnJlbnQudXNlSW1wZXJhdGl2ZUhhbmRsZShlLHQsbil9LHQudXNlSW5zZXJ0aW9uRWZmZWN0PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIFQuY3VycmVudC51c2VJbnNlcnRpb25FZmZlY3QoZSx0KX0sdC51c2VMYXlvdXRFZmZlY3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVC5jdXJyZW50LnVzZUxheW91dEVmZmVjdChlLHQpfSx0LnVzZU1lbW89ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVC5jdXJyZW50LnVzZU1lbW8oZSx0KX0sdC51c2VSZWR1Y2VyPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gVC5jdXJyZW50LnVzZVJlZHVjZXIoZSx0LG4pfSx0LnVzZVJlZj1mdW5jdGlvbihlKXtyZXR1cm4gVC5jdXJyZW50LnVzZVJlZihlKX0sdC51c2VTdGF0ZT1mdW5jdGlvbihlKXtyZXR1cm4gVC5jdXJyZW50LnVzZVN0YXRlKGUpfSx0LnVzZVN5bmNFeHRlcm5hbFN0b3JlPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gVC5jdXJyZW50LnVzZVN5bmNFeHRlcm5hbFN0b3JlKGUsdCxuKX0sdC51c2VUcmFuc2l0aW9uPWZ1bmN0aW9uKCl7cmV0dXJuIFQuY3VycmVudC51c2VUcmFuc2l0aW9uKCl9LHQudmVyc2lvbj0iMTguMi4wIn0sZnVuY3Rpb24oZSx0LG4peyFmdW5jdGlvbiBlKCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18mJiJmdW5jdGlvbiI9PXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18uY2hlY2tEQ0UpdHJ5e19fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXy5jaGVja0RDRShlKX1jYXRjaChlKXtjb25zb2xlLmVycm9yKGUpfX0oKSxlLmV4cG9ydHM9bigxNzApfSxmdW5jdGlvbihhLGMsUil7dmFyIE49UigwKSxCPVIoMTcxKTtmdW5jdGlvbiBEKGUpe2Zvcih2YXIgdD0iaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL2Vycm9yLWRlY29kZXIuaHRtbD9pbnZhcmlhbnQ9IitlLG49MTtuPGFyZ3VtZW50cy5sZW5ndGg7bisrKXQrPSImYXJnc1tdPSIrZW5jb2RlVVJJQ29tcG9uZW50KGFyZ3VtZW50c1tuXSk7cmV0dXJuIk1pbmlmaWVkIFJlYWN0IGVycm9yICMiK2UrIjsgdmlzaXQgIit0KyIgZm9yIHRoZSBmdWxsIG1lc3NhZ2Ugb3IgdXNlIHRoZSBub24tbWluaWZpZWQgZGV2IGVudmlyb25tZW50IGZvciBmdWxsIGVycm9ycyBhbmQgYWRkaXRpb25hbCBoZWxwZnVsIHdhcm5pbmdzLiJ9dmFyIEY9bmV3IFNldCxIPXt9O2Z1bmN0aW9uIFYoZSx0KXskKGUsdCksJChlKyJDYXB0dXJlIix0KX1mdW5jdGlvbiAkKGUsdCl7Zm9yKEhbZV09dCxlPTA7ZTx0Lmxlbmd0aDtlKyspRi5hZGQodFtlXSl9dmFyIFI9ISgidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvd3x8dm9pZCAwPT09d2luZG93LmRvY3VtZW50fHx2b2lkIDA9PT13aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCksVz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LEc9L15bOkEtWl9hLXpcdTAwQzAtXHUwMEQ2XHUwMEQ4LVx1MDBGNlx1MDBGOC1cdTAyRkZcdTAzNzAtXHUwMzdEXHUwMzdGLVx1MUZGRlx1MjAwQy1cdTIwMERcdTIwNzAtXHUyMThGXHUyQzAwLVx1MkZFRlx1MzAwMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZGRF1bOkEtWl9hLXpcdTAwQzAtXHUwMEQ2XHUwMEQ4LVx1MDBGNlx1MDBGOC1cdTAyRkZcdTAzNzAtXHUwMzdEXHUwMzdGLVx1MUZGRlx1MjAwQy1cdTIwMERcdTIwNzAtXHUyMThGXHUyQzAwLVx1MkZFRlx1MzAwMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZGRFwtLjAtOVx1MDBCN1x1MDMwMC1cdTAzNkZcdTIwM0YtXHUyMDQwXSokLyxxPXt9LFo9e307ZnVuY3Rpb24gWChlLHQsbixyKXtpZihudWxsPT10fHxmdW5jdGlvbihlLHQsbixyKXtpZihudWxsPT09bnx8MCE9PW4udHlwZSlzd2l0Y2godHlwZW9mIHQpe2Nhc2UiZnVuY3Rpb24iOmNhc2Uic3ltYm9sIjpyZXR1cm4gMTtjYXNlImJvb2xlYW4iOnJldHVybiByP3ZvaWQgMDpudWxsIT09bj8hbi5hY2NlcHRzQm9vbGVhbnM6ImRhdGEtIiE9PShlPWUudG9Mb3dlckNhc2UoKS5zbGljZSgwLDUpKSYmImFyaWEtIiE9PWU7ZGVmYXVsdDpyZXR1cm59fShlLHQsbixyKSlyZXR1cm4gMTtpZighciYmbnVsbCE9PW4pc3dpdGNoKG4udHlwZSl7Y2FzZSAzOnJldHVybiF0O2Nhc2UgNDpyZXR1cm4hMT09PXQ7Y2FzZSA1OnJldHVybiBpc05hTih0KTtjYXNlIDY6cmV0dXJuIGlzTmFOKHQpfHx0PDF9fWZ1bmN0aW9uIG4oZSx0LG4scixvLGEsaSl7dGhpcy5hY2NlcHRzQm9vbGVhbnM9Mj09PXR8fDM9PT10fHw0PT09dCx0aGlzLmF0dHJpYnV0ZU5hbWU9cix0aGlzLmF0dHJpYnV0ZU5hbWVzcGFjZT1vLHRoaXMubXVzdFVzZVByb3BlcnR5PW4sdGhpcy5wcm9wZXJ0eU5hbWU9ZSx0aGlzLnR5cGU9dCx0aGlzLnNhbml0aXplVVJMPWEsdGhpcy5yZW1vdmVFbXB0eVN0cmluZz1pfXZhciBpPXt9LFk9KCJjaGlsZHJlbiBkYW5nZXJvdXNseVNldElubmVySFRNTCBkZWZhdWx0VmFsdWUgZGVmYXVsdENoZWNrZWQgaW5uZXJIVE1MIHN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyBzdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmcgc3R5bGUiLnNwbGl0KCIgIikuZm9yRWFjaChmdW5jdGlvbihlKXtpW2VdPW5ldyBuKGUsMCwhMSxlLG51bGwsITEsITEpfSksW1siYWNjZXB0Q2hhcnNldCIsImFjY2VwdC1jaGFyc2V0Il0sWyJjbGFzc05hbWUiLCJjbGFzcyJdLFsiaHRtbEZvciIsImZvciJdLFsiaHR0cEVxdWl2IiwiaHR0cC1lcXVpdiJdXS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PWVbMF07aVt0XT1uZXcgbih0LDEsITEsZVsxXSxudWxsLCExLCExKX0pLFsiY29udGVudEVkaXRhYmxlIiwiZHJhZ2dhYmxlIiwic3BlbGxDaGVjayIsInZhbHVlIl0uZm9yRWFjaChmdW5jdGlvbihlKXtpW2VdPW5ldyBuKGUsMiwhMSxlLnRvTG93ZXJDYXNlKCksbnVsbCwhMSwhMSl9KSxbImF1dG9SZXZlcnNlIiwiZXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZCIsImZvY3VzYWJsZSIsInByZXNlcnZlQWxwaGEiXS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2lbZV09bmV3IG4oZSwyLCExLGUsbnVsbCwhMSwhMSl9KSwiYWxsb3dGdWxsU2NyZWVuIGFzeW5jIGF1dG9Gb2N1cyBhdXRvUGxheSBjb250cm9scyBkZWZhdWx0IGRlZmVyIGRpc2FibGVkIGRpc2FibGVQaWN0dXJlSW5QaWN0dXJlIGRpc2FibGVSZW1vdGVQbGF5YmFjayBmb3JtTm9WYWxpZGF0ZSBoaWRkZW4gbG9vcCBub01vZHVsZSBub1ZhbGlkYXRlIG9wZW4gcGxheXNJbmxpbmUgcmVhZE9ubHkgcmVxdWlyZWQgcmV2ZXJzZWQgc2NvcGVkIHNlYW1sZXNzIGl0ZW1TY29wZSIuc3BsaXQoIiAiKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2lbZV09bmV3IG4oZSwzLCExLGUudG9Mb3dlckNhc2UoKSxudWxsLCExLCExKX0pLFsiY2hlY2tlZCIsIm11bHRpcGxlIiwibXV0ZWQiLCJzZWxlY3RlZCJdLmZvckVhY2goZnVuY3Rpb24oZSl7aVtlXT1uZXcgbihlLDMsITAsZSxudWxsLCExLCExKX0pLFsiY2FwdHVyZSIsImRvd25sb2FkIl0uZm9yRWFjaChmdW5jdGlvbihlKXtpW2VdPW5ldyBuKGUsNCwhMSxlLG51bGwsITEsITEpfSksWyJjb2xzIiwicm93cyIsInNpemUiLCJzcGFuIl0uZm9yRWFjaChmdW5jdGlvbihlKXtpW2VdPW5ldyBuKGUsNiwhMSxlLG51bGwsITEsITEpfSksWyJyb3dTcGFuIiwic3RhcnQiXS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2lbZV09bmV3IG4oZSw1LCExLGUudG9Mb3dlckNhc2UoKSxudWxsLCExLCExKX0pLC9bXC06XShbYS16XSkvZyk7ZnVuY3Rpb24gUShlKXtyZXR1cm4gZVsxXS50b1VwcGVyQ2FzZSgpfWZ1bmN0aW9uIEsoZSx0LG4scil7dmFyIG8sYT1pLmhhc093blByb3BlcnR5KHQpP2lbdF06bnVsbDsobnVsbCE9PWE/MCE9PWEudHlwZTpyfHwhKDI8dC5sZW5ndGgpfHwibyIhPT10WzBdJiYiTyIhPT10WzBdfHwibiIhPT10WzFdJiYiTiIhPT10WzFdKSYmKFgodCxuLGEscikmJihuPW51bGwpLHJ8fG51bGw9PT1hPyhvPXQsKFcuY2FsbChaLG8pfHwhVy5jYWxsKHEsbykmJihHLnRlc3Qobyk/WltvXT0hMDp2b2lkKHFbb109ITApKSkmJihudWxsPT09bj9lLnJlbW92ZUF0dHJpYnV0ZSh0KTplLnNldEF0dHJpYnV0ZSh0LCIiK24pKSk6YS5tdXN0VXNlUHJvcGVydHk/ZVthLnByb3BlcnR5TmFtZV09bnVsbD09PW4/MyE9PWEudHlwZSYmIiI6bjoodD1hLmF0dHJpYnV0ZU5hbWUscj1hLmF0dHJpYnV0ZU5hbWVzcGFjZSxudWxsPT09bj9lLnJlbW92ZUF0dHJpYnV0ZSh0KToobj0zPT09KGE9YS50eXBlKXx8ND09PWEmJiEwPT09bj8iIjoiIituLHI/ZS5zZXRBdHRyaWJ1dGVOUyhyLHQsbik6ZS5zZXRBdHRyaWJ1dGUodCxuKSkpKX0iYWNjZW50LWhlaWdodCBhbGlnbm1lbnQtYmFzZWxpbmUgYXJhYmljLWZvcm0gYmFzZWxpbmUtc2hpZnQgY2FwLWhlaWdodCBjbGlwLXBhdGggY2xpcC1ydWxlIGNvbG9yLWludGVycG9sYXRpb24gY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzIGNvbG9yLXByb2ZpbGUgY29sb3ItcmVuZGVyaW5nIGRvbWluYW50LWJhc2VsaW5lIGVuYWJsZS1iYWNrZ3JvdW5kIGZpbGwtb3BhY2l0eSBmaWxsLXJ1bGUgZmxvb2QtY29sb3IgZmxvb2Qtb3BhY2l0eSBmb250LWZhbWlseSBmb250LXNpemUgZm9udC1zaXplLWFkanVzdCBmb250LXN0cmV0Y2ggZm9udC1zdHlsZSBmb250LXZhcmlhbnQgZm9udC13ZWlnaHQgZ2x5cGgtbmFtZSBnbHlwaC1vcmllbnRhdGlvbi1ob3Jpem9udGFsIGdseXBoLW9yaWVudGF0aW9uLXZlcnRpY2FsIGhvcml6LWFkdi14IGhvcml6LW9yaWdpbi14IGltYWdlLXJlbmRlcmluZyBsZXR0ZXItc3BhY2luZyBsaWdodGluZy1jb2xvciBtYXJrZXItZW5kIG1hcmtlci1taWQgbWFya2VyLXN0YXJ0IG92ZXJsaW5lLXBvc2l0aW9uIG92ZXJsaW5lLXRoaWNrbmVzcyBwYWludC1vcmRlciBwYW5vc2UtMSBwb2ludGVyLWV2ZW50cyByZW5kZXJpbmctaW50ZW50IHNoYXBlLXJlbmRlcmluZyBzdG9wLWNvbG9yIHN0b3Atb3BhY2l0eSBzdHJpa2V0aHJvdWdoLXBvc2l0aW9uIHN0cmlrZXRocm91Z2gtdGhpY2tuZXNzIHN0cm9rZS1kYXNoYXJyYXkgc3Ryb2tlLWRhc2hvZmZzZXQgc3Ryb2tlLWxpbmVjYXAgc3Ryb2tlLWxpbmVqb2luIHN0cm9rZS1taXRlcmxpbWl0IHN0cm9rZS1vcGFjaXR5IHN0cm9rZS13aWR0aCB0ZXh0LWFuY2hvciB0ZXh0LWRlY29yYXRpb24gdGV4dC1yZW5kZXJpbmcgdW5kZXJsaW5lLXBvc2l0aW9uIHVuZGVybGluZS10aGlja25lc3MgdW5pY29kZS1iaWRpIHVuaWNvZGUtcmFuZ2UgdW5pdHMtcGVyLWVtIHYtYWxwaGFiZXRpYyB2LWhhbmdpbmcgdi1pZGVvZ3JhcGhpYyB2LW1hdGhlbWF0aWNhbCB2ZWN0b3ItZWZmZWN0IHZlcnQtYWR2LXkgdmVydC1vcmlnaW4teCB2ZXJ0LW9yaWdpbi15IHdvcmQtc3BhY2luZyB3cml0aW5nLW1vZGUgeG1sbnM6eGxpbmsgeC1oZWlnaHQiLnNwbGl0KCIgIikuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD1lLnJlcGxhY2UoWSxRKTtpW3RdPW5ldyBuKHQsMSwhMSxlLG51bGwsITEsITEpfSksInhsaW5rOmFjdHVhdGUgeGxpbms6YXJjcm9sZSB4bGluazpyb2xlIHhsaW5rOnNob3cgeGxpbms6dGl0bGUgeGxpbms6dHlwZSIuc3BsaXQoIiAiKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PWUucmVwbGFjZShZLFEpO2lbdF09bmV3IG4odCwxLCExLGUsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCExLCExKX0pLFsieG1sOmJhc2UiLCJ4bWw6bGFuZyIsInhtbDpzcGFjZSJdLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yZXBsYWNlKFksUSk7aVt0XT1uZXcgbih0LDEsITEsZSwiaHR0cDovL3d3dy53My5vcmcvWE1MLzE5OTgvbmFtZXNwYWNlIiwhMSwhMSl9KSxbInRhYkluZGV4IiwiY3Jvc3NPcmlnaW4iXS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2lbZV09bmV3IG4oZSwxLCExLGUudG9Mb3dlckNhc2UoKSxudWxsLCExLCExKX0pLGkueGxpbmtIcmVmPW5ldyBuKCJ4bGlua0hyZWYiLDEsITEsInhsaW5rOmhyZWYiLCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiwhMCwhMSksWyJzcmMiLCJocmVmIiwiYWN0aW9uIiwiZm9ybUFjdGlvbiJdLmZvckVhY2goZnVuY3Rpb24oZSl7aVtlXT1uZXcgbihlLDEsITEsZS50b0xvd2VyQ2FzZSgpLG51bGwsITAsITApfSk7dmFyIEo9Ti5fX1NFQ1JFVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9ZT1VfV0lMTF9CRV9GSVJFRCxlZT1TeW1ib2wuZm9yKCJyZWFjdC5lbGVtZW50IiksdGU9U3ltYm9sLmZvcigicmVhY3QucG9ydGFsIiksbmU9U3ltYm9sLmZvcigicmVhY3QuZnJhZ21lbnQiKSxyZT1TeW1ib2wuZm9yKCJyZWFjdC5zdHJpY3RfbW9kZSIpLG9lPVN5bWJvbC5mb3IoInJlYWN0LnByb2ZpbGVyIiksYWU9U3ltYm9sLmZvcigicmVhY3QucHJvdmlkZXIiKSxpZT1TeW1ib2wuZm9yKCJyZWFjdC5jb250ZXh0IiksbGU9U3ltYm9sLmZvcigicmVhY3QuZm9yd2FyZF9yZWYiKSxjZT1TeW1ib2wuZm9yKCJyZWFjdC5zdXNwZW5zZSIpLHVlPVN5bWJvbC5mb3IoInJlYWN0LnN1c3BlbnNlX2xpc3QiKSxzZT1TeW1ib2wuZm9yKCJyZWFjdC5tZW1vIiksZmU9U3ltYm9sLmZvcigicmVhY3QubGF6eSIpLGRlPShTeW1ib2wuZm9yKCJyZWFjdC5zY29wZSIpLFN5bWJvbC5mb3IoInJlYWN0LmRlYnVnX3RyYWNlX21vZGUiKSxTeW1ib2wuZm9yKCJyZWFjdC5vZmZzY3JlZW4iKSkscGU9KFN5bWJvbC5mb3IoInJlYWN0LmxlZ2FjeV9oaWRkZW4iKSxTeW1ib2wuZm9yKCJyZWFjdC5jYWNoZSIpLFN5bWJvbC5mb3IoInJlYWN0LnRyYWNpbmdfbWFya2VyIiksU3ltYm9sLml0ZXJhdG9yKTtmdW5jdGlvbiBtZShlKXtyZXR1cm4gbnVsbCE9PWUmJiJvYmplY3QiPT10eXBlb2YgZSYmImZ1bmN0aW9uIj09dHlwZW9mKGU9cGUmJmVbcGVdfHxlWyJAQGl0ZXJhdG9yIl0pP2U6bnVsbH12YXIgaGUsZz1PYmplY3QuYXNzaWduO2Z1bmN0aW9uIGdlKGUpe2lmKHZvaWQgMD09PWhlKXRyeXt0aHJvdyBFcnJvcigpfWNhdGNoKGUpe3ZhciB0PWUuc3RhY2sudHJpbSgpLm1hdGNoKC9cbiggKihhdCApPykvKTtoZT10JiZ0WzFdfHwiIn1yZXR1cm4iXG4iK2hlK2V9dmFyIGJlPSExO2Z1bmN0aW9uIHllKHQsZSl7aWYoIXR8fGJlKXJldHVybiIiO2JlPSEwO3ZhciBuPUVycm9yLnByZXBhcmVTdGFja1RyYWNlO0Vycm9yLnByZXBhcmVTdGFja1RyYWNlPXZvaWQgMDt0cnl7aWYoZSlpZihlPWZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoKX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KGUucHJvdG90eXBlLCJwcm9wcyIse3NldDpmdW5jdGlvbigpe3Rocm93IEVycm9yKCl9fSksIm9iamVjdCI9PXR5cGVvZiBSZWZsZWN0JiZSZWZsZWN0LmNvbnN0cnVjdCl7dHJ5e1JlZmxlY3QuY29uc3RydWN0KGUsW10pfWNhdGNoKGUpe3ZhciByPWV9UmVmbGVjdC5jb25zdHJ1Y3QodCxbXSxlKX1lbHNle3RyeXtlLmNhbGwoKX1jYXRjaChlKXtyPWV9dC5jYWxsKGUucHJvdG90eXBlKX1lbHNle3RyeXt0aHJvdyBFcnJvcigpfWNhdGNoKGUpe3I9ZX10KCl9fWNhdGNoKGUpe2lmKGUmJnImJiJzdHJpbmciPT10eXBlb2YgZS5zdGFjayl7Zm9yKHZhciBvLGE9ZS5zdGFjay5zcGxpdCgiXG4iKSxpPXIuc3RhY2suc3BsaXQoIlxuIiksbD1hLmxlbmd0aC0xLGM9aS5sZW5ndGgtMTsxPD1sJiYwPD1jJiZhW2xdIT09aVtjXTspYy0tO2Zvcig7MTw9bCYmMDw9YztsLS0sYy0tKWlmKGFbbF0hPT1pW2NdKXtpZigxIT09bHx8MSE9PWMpZG97aWYobC0tLC0tYzwwfHxhW2xdIT09aVtjXSlyZXR1cm4gbz0iXG4iK2FbbF0ucmVwbGFjZSgiIGF0IG5ldyAiLCIgYXQgIiksbz10LmRpc3BsYXlOYW1lJiZvLmluY2x1ZGVzKCI8YW5vbnltb3VzPiIpP28ucmVwbGFjZSgiPGFub255bW91cz4iLHQuZGlzcGxheU5hbWUpOm99d2hpbGUoMTw9bCYmMDw9Yyk7YnJlYWt9fX1maW5hbGx5e2JlPSExLEVycm9yLnByZXBhcmVTdGFja1RyYWNlPW59cmV0dXJuKHQ9dD90LmRpc3BsYXlOYW1lfHx0Lm5hbWU6IiIpP2dlKHQpOiIifWZ1bmN0aW9uIHZlKGUpe3ZhciB0PWUudHlwZTtzd2l0Y2goZS50YWcpe2Nhc2UgMjQ6cmV0dXJuIkNhY2hlIjtjYXNlIDk6cmV0dXJuKHQuZGlzcGxheU5hbWV8fCJDb250ZXh0IikrIi5Db25zdW1lciI7Y2FzZSAxMDpyZXR1cm4odC5fY29udGV4dC5kaXNwbGF5TmFtZXx8IkNvbnRleHQiKSsiLlByb3ZpZGVyIjtjYXNlIDE4OnJldHVybiJEZWh5ZHJhdGVkRnJhZ21lbnQiO2Nhc2UgMTE6cmV0dXJuIGU9KGU9dC5yZW5kZXIpLmRpc3BsYXlOYW1lfHxlLm5hbWV8fCIiLHQuZGlzcGxheU5hbWV8fCgiIiE9PWU/IkZvcndhcmRSZWYoIitlKyIpIjoiRm9yd2FyZFJlZiIpO2Nhc2UgNzpyZXR1cm4iRnJhZ21lbnQiO2Nhc2UgNTpyZXR1cm4gdDtjYXNlIDQ6cmV0dXJuIlBvcnRhbCI7Y2FzZSAzOnJldHVybiJSb290IjtjYXNlIDY6cmV0dXJuIlRleHQiO2Nhc2UgMTY6cmV0dXJuIGZ1bmN0aW9uIGUodCl7aWYobnVsbCE9dCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQpcmV0dXJuIHQuZGlzcGxheU5hbWV8fHQubmFtZXx8bnVsbDtpZigic3RyaW5nIj09dHlwZW9mIHQpcmV0dXJuIHQ7c3dpdGNoKHQpe2Nhc2UgbmU6cmV0dXJuIkZyYWdtZW50IjtjYXNlIHRlOnJldHVybiJQb3J0YWwiO2Nhc2Ugb2U6cmV0dXJuIlByb2ZpbGVyIjtjYXNlIHJlOnJldHVybiJTdHJpY3RNb2RlIjtjYXNlIGNlOnJldHVybiJTdXNwZW5zZSI7Y2FzZSB1ZTpyZXR1cm4iU3VzcGVuc2VMaXN0In1pZigib2JqZWN0Ij09dHlwZW9mIHQpc3dpdGNoKHQuJCR0eXBlb2Ype2Nhc2UgaWU6cmV0dXJuKHQuZGlzcGxheU5hbWV8fCJDb250ZXh0IikrIi5Db25zdW1lciI7Y2FzZSBhZTpyZXR1cm4odC5fY29udGV4dC5kaXNwbGF5TmFtZXx8IkNvbnRleHQiKSsiLlByb3ZpZGVyIjtjYXNlIGxlOnZhciBuPXQucmVuZGVyO3JldHVybiB0PSh0PXQuZGlzcGxheU5hbWUpfHwoIiIhPT0odD1uLmRpc3BsYXlOYW1lfHxuLm5hbWV8fCIiKT8iRm9yd2FyZFJlZigiK3QrIikiOiJGb3J3YXJkUmVmIik7Y2FzZSBzZTpyZXR1cm4gbnVsbCE9PShuPXQuZGlzcGxheU5hbWV8fG51bGwpP246ZSh0LnR5cGUpfHwiTWVtbyI7Y2FzZSBmZTpuPXQuX3BheWxvYWQsdD10Ll9pbml0O3RyeXtyZXR1cm4gZSh0KG4pKX1jYXRjaChlKXt9fX1yZXR1cm4gbnVsbH0odCk7Y2FzZSA4OnJldHVybiB0PT09cmU/IlN0cmljdE1vZGUiOiJNb2RlIjtjYXNlIDIyOnJldHVybiJPZmZzY3JlZW4iO2Nhc2UgMTI6cmV0dXJuIlByb2ZpbGVyIjtjYXNlIDIxOnJldHVybiJTY29wZSI7Y2FzZSAxMzpyZXR1cm4iU3VzcGVuc2UiO2Nhc2UgMTk6cmV0dXJuIlN1c3BlbnNlTGlzdCI7Y2FzZSAyNTpyZXR1cm4iVHJhY2luZ01hcmtlciI7Y2FzZSAxOmNhc2UgMDpjYXNlIDE3OmNhc2UgMjpjYXNlIDE0OmNhc2UgMTU6aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQpcmV0dXJuIHQuZGlzcGxheU5hbWV8fHQubmFtZXx8bnVsbDtpZigic3RyaW5nIj09dHlwZW9mIHQpcmV0dXJuIHR9cmV0dXJuIG51bGx9ZnVuY3Rpb24gd2UoZSl7c3dpdGNoKHR5cGVvZiBlKXtjYXNlImJvb2xlYW4iOmNhc2UibnVtYmVyIjpjYXNlInN0cmluZyI6Y2FzZSJ1bmRlZmluZWQiOmNhc2Uib2JqZWN0IjpyZXR1cm4gZTtkZWZhdWx0OnJldHVybiIifX1mdW5jdGlvbiB4ZShlKXt2YXIgdD1lLnR5cGU7cmV0dXJuKGU9ZS5ub2RlTmFtZSkmJiJpbnB1dCI9PT1lLnRvTG93ZXJDYXNlKCkmJigiY2hlY2tib3giPT09dHx8InJhZGlvIj09PXQpfWZ1bmN0aW9uIGtlKGUpe2UuX3ZhbHVlVHJhY2tlcnx8KGUuX3ZhbHVlVHJhY2tlcj1mdW5jdGlvbihlKXt2YXIgdCxuLHI9eGUoZSk/ImNoZWNrZWQiOiJ2YWx1ZSIsbz1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUuY29uc3RydWN0b3IucHJvdG90eXBlLHIpLGE9IiIrZVtyXTtpZighZS5oYXNPd25Qcm9wZXJ0eShyKSYmdm9pZCAwIT09byYmImZ1bmN0aW9uIj09dHlwZW9mIG8uZ2V0JiYiZnVuY3Rpb24iPT10eXBlb2Ygby5zZXQpcmV0dXJuIHQ9by5nZXQsbj1vLnNldCxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxyLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHQuY2FsbCh0aGlzKX0sc2V0OmZ1bmN0aW9uKGUpe2E9IiIrZSxuLmNhbGwodGhpcyxlKX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxyLHtlbnVtZXJhYmxlOm8uZW51bWVyYWJsZX0pLHtnZXRWYWx1ZTpmdW5jdGlvbigpe3JldHVybiBhfSxzZXRWYWx1ZTpmdW5jdGlvbihlKXthPSIiK2V9LHN0b3BUcmFja2luZzpmdW5jdGlvbigpe2UuX3ZhbHVlVHJhY2tlcj1udWxsLGRlbGV0ZSBlW3JdfX19KGUpKX1mdW5jdGlvbiBTZShlKXt2YXIgdCxuLHI7aWYoZSlyZXR1cm4odD1lLl92YWx1ZVRyYWNrZXIpPyhuPXQuZ2V0VmFsdWUoKSxyPSIiLChlPXI9ZT94ZShlKT9lLmNoZWNrZWQ/InRydWUiOiJmYWxzZSI6ZS52YWx1ZTpyKSE9PW4mJih0LnNldFZhbHVlKGUpLDEpKToxfWZ1bmN0aW9uIENlKHQpe2lmKHZvaWQgMD09PSh0PXR8fCgidW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50OnZvaWQgMCkpKXJldHVybiBudWxsO3RyeXtyZXR1cm4gdC5hY3RpdmVFbGVtZW50fHx0LmJvZHl9Y2F0Y2goZSl7cmV0dXJuIHQuYm9keX19ZnVuY3Rpb24gRWUoZSx0KXt2YXIgbj10LmNoZWNrZWQ7cmV0dXJuIGcoe30sdCx7ZGVmYXVsdENoZWNrZWQ6dm9pZCAwLGRlZmF1bHRWYWx1ZTp2b2lkIDAsdmFsdWU6dm9pZCAwLGNoZWNrZWQ6bnVsbCE9bj9uOmUuX3dyYXBwZXJTdGF0ZS5pbml0aWFsQ2hlY2tlZH0pfWZ1bmN0aW9uIE9lKGUsdCl7dmFyIG49bnVsbD09dC5kZWZhdWx0VmFsdWU/IiI6dC5kZWZhdWx0VmFsdWUscj1udWxsIT10LmNoZWNrZWQ/dC5jaGVja2VkOnQuZGVmYXVsdENoZWNrZWQsbj13ZShudWxsIT10LnZhbHVlP3QudmFsdWU6bik7ZS5fd3JhcHBlclN0YXRlPXtpbml0aWFsQ2hlY2tlZDpyLGluaXRpYWxWYWx1ZTpuLGNvbnRyb2xsZWQ6ImNoZWNrYm94Ij09PXQudHlwZXx8InJhZGlvIj09PXQudHlwZT9udWxsIT10LmNoZWNrZWQ6bnVsbCE9dC52YWx1ZX19ZnVuY3Rpb24gamUoZSx0KXtudWxsIT0odD10LmNoZWNrZWQpJiZLKGUsImNoZWNrZWQiLHQsITEpfWZ1bmN0aW9uIEFlKGUsdCl7amUoZSx0KTt2YXIgbj13ZSh0LnZhbHVlKSxyPXQudHlwZTtpZihudWxsIT1uKSJudW1iZXIiPT09cj8oMD09PW4mJiIiPT09ZS52YWx1ZXx8ZS52YWx1ZSE9bikmJihlLnZhbHVlPSIiK24pOmUudmFsdWUhPT0iIituJiYoZS52YWx1ZT0iIituKTtlbHNlIGlmKCJzdWJtaXQiPT09cnx8InJlc2V0Ij09PXIpcmV0dXJuIHZvaWQgZS5yZW1vdmVBdHRyaWJ1dGUoInZhbHVlIik7dC5oYXNPd25Qcm9wZXJ0eSgidmFsdWUiKT9JZShlLHQudHlwZSxuKTp0Lmhhc093blByb3BlcnR5KCJkZWZhdWx0VmFsdWUiKSYmSWUoZSx0LnR5cGUsd2UodC5kZWZhdWx0VmFsdWUpKSxudWxsPT10LmNoZWNrZWQmJm51bGwhPXQuZGVmYXVsdENoZWNrZWQmJihlLmRlZmF1bHRDaGVja2VkPSEhdC5kZWZhdWx0Q2hlY2tlZCl9ZnVuY3Rpb24gUGUoZSx0LG4pe2lmKHQuaGFzT3duUHJvcGVydHkoInZhbHVlIil8fHQuaGFzT3duUHJvcGVydHkoImRlZmF1bHRWYWx1ZSIpKXt2YXIgcj10LnR5cGU7aWYoISgic3VibWl0IiE9PXImJiJyZXNldCIhPT1yfHx2b2lkIDAhPT10LnZhbHVlJiZudWxsIT09dC52YWx1ZSkpcmV0dXJuO3Q9IiIrZS5fd3JhcHBlclN0YXRlLmluaXRpYWxWYWx1ZSxufHx0PT09ZS52YWx1ZXx8KGUudmFsdWU9dCksZS5kZWZhdWx0VmFsdWU9dH0iIiE9PShuPWUubmFtZSkmJihlLm5hbWU9IiIpLGUuZGVmYXVsdENoZWNrZWQ9ISFlLl93cmFwcGVyU3RhdGUuaW5pdGlhbENoZWNrZWQsIiIhPT1uJiYoZS5uYW1lPW4pfWZ1bmN0aW9uIEllKGUsdCxuKXsibnVtYmVyIj09PXQmJkNlKGUub3duZXJEb2N1bWVudCk9PT1lfHwobnVsbD09bj9lLmRlZmF1bHRWYWx1ZT0iIitlLl93cmFwcGVyU3RhdGUuaW5pdGlhbFZhbHVlOmUuZGVmYXVsdFZhbHVlIT09IiIrbiYmKGUuZGVmYXVsdFZhbHVlPSIiK24pKX12YXIgX2U9QXJyYXkuaXNBcnJheTtmdW5jdGlvbiB6ZShlLHQsbixyKXtpZihlPWUub3B0aW9ucyx0KXt0PXt9O2Zvcih2YXIgbz0wO288bi5sZW5ndGg7bysrKXRbIiQiK25bb11dPSEwO2ZvcihuPTA7bjxlLmxlbmd0aDtuKyspbz10Lmhhc093blByb3BlcnR5KCIkIitlW25dLnZhbHVlKSxlW25dLnNlbGVjdGVkIT09byYmKGVbbl0uc2VsZWN0ZWQ9byksbyYmciYmKGVbbl0uZGVmYXVsdFNlbGVjdGVkPSEwKX1lbHNle2ZvcihuPSIiK3dlKG4pLHQ9bnVsbCxvPTA7bzxlLmxlbmd0aDtvKyspe2lmKGVbb10udmFsdWU9PT1uKXJldHVybiBlW29dLnNlbGVjdGVkPSEwLHZvaWQociYmKGVbb10uZGVmYXVsdFNlbGVjdGVkPSEwKSk7bnVsbCE9PXR8fGVbb10uZGlzYWJsZWR8fCh0PWVbb10pfW51bGwhPT10JiYodC5zZWxlY3RlZD0hMCl9fWZ1bmN0aW9uIFRlKGUsdCl7aWYobnVsbCE9dC5kYW5nZXJvdXNseVNldElubmVySFRNTCl0aHJvdyBFcnJvcihEKDkxKSk7cmV0dXJuIGcoe30sdCx7dmFsdWU6dm9pZCAwLGRlZmF1bHRWYWx1ZTp2b2lkIDAsY2hpbGRyZW46IiIrZS5fd3JhcHBlclN0YXRlLmluaXRpYWxWYWx1ZX0pfWZ1bmN0aW9uIExlKGUsdCl7dmFyIG49dC52YWx1ZTtpZihudWxsPT1uKXtpZihuPXQuY2hpbGRyZW4sdD10LmRlZmF1bHRWYWx1ZSxudWxsIT1uKXtpZihudWxsIT10KXRocm93IEVycm9yKEQoOTIpKTtpZihfZShuKSl7aWYoMTxuLmxlbmd0aCl0aHJvdyBFcnJvcihEKDkzKSk7bj1uWzBdfXQ9bn1uPXQ9bnVsbD09dD8iIjp0fWUuX3dyYXBwZXJTdGF0ZT17aW5pdGlhbFZhbHVlOndlKG4pfX1mdW5jdGlvbiBNZShlLHQpe3ZhciBuPXdlKHQudmFsdWUpLHI9d2UodC5kZWZhdWx0VmFsdWUpO251bGwhPW4mJigobj0iIituKSE9PWUudmFsdWUmJihlLnZhbHVlPW4pLG51bGw9PXQuZGVmYXVsdFZhbHVlKSYmZS5kZWZhdWx0VmFsdWUhPT1uJiYoZS5kZWZhdWx0VmFsdWU9biksbnVsbCE9ciYmKGUuZGVmYXVsdFZhbHVlPSIiK3IpfWZ1bmN0aW9uIFJlKGUpe3ZhciB0PWUudGV4dENvbnRlbnQ7dD09PWUuX3dyYXBwZXJTdGF0ZS5pbml0aWFsVmFsdWUmJiIiIT09dCYmbnVsbCE9PXQmJihlLnZhbHVlPXQpfWZ1bmN0aW9uIE5lKGUpe3N3aXRjaChlKXtjYXNlInN2ZyI6cmV0dXJuImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIjtjYXNlIm1hdGgiOnJldHVybiJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIjtkZWZhdWx0OnJldHVybiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIn19ZnVuY3Rpb24gRGUoZSx0KXtyZXR1cm4gbnVsbD09ZXx8Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPT09ZT9OZSh0KToiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPT09ZSYmImZvcmVpZ25PYmplY3QiPT09dD8iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI6ZX1CZT1mdW5jdGlvbihlLHQpe2lmKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIhPT1lLm5hbWVzcGFjZVVSSXx8ImlubmVySFRNTCJpbiBlKWUuaW5uZXJIVE1MPXQ7ZWxzZXtmb3IoKFVlPVVlfHxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuaW5uZXJIVE1MPSI8c3ZnPiIrdC52YWx1ZU9mKCkudG9TdHJpbmcoKSsiPC9zdmc+Iix0PVVlLmZpcnN0Q2hpbGQ7ZS5maXJzdENoaWxkOyllLnJlbW92ZUNoaWxkKGUuZmlyc3RDaGlsZCk7Zm9yKDt0LmZpcnN0Q2hpbGQ7KWUuYXBwZW5kQ2hpbGQodC5maXJzdENoaWxkKX19O3ZhciBVZSxCZSxGZT0idW5kZWZpbmVkIiE9dHlwZW9mIE1TQXBwJiZNU0FwcC5leGVjVW5zYWZlTG9jYWxGdW5jdGlvbj9mdW5jdGlvbihlLHQsbixyKXtNU0FwcC5leGVjVW5zYWZlTG9jYWxGdW5jdGlvbihmdW5jdGlvbigpe3JldHVybiBCZShlLHQpfSl9OkJlO2Z1bmN0aW9uIEhlKGUsdCl7aWYodCl7dmFyIG49ZS5maXJzdENoaWxkO2lmKG4mJm49PT1lLmxhc3RDaGlsZCYmMz09PW4ubm9kZVR5cGUpcmV0dXJuIHZvaWQobi5ub2RlVmFsdWU9dCl9ZS50ZXh0Q29udGVudD10fXZhciBWZT17YW5pbWF0aW9uSXRlcmF0aW9uQ291bnQ6ITAsYXNwZWN0UmF0aW86ITAsYm9yZGVySW1hZ2VPdXRzZXQ6ITAsYm9yZGVySW1hZ2VTbGljZTohMCxib3JkZXJJbWFnZVdpZHRoOiEwLGJveEZsZXg6ITAsYm94RmxleEdyb3VwOiEwLGJveE9yZGluYWxHcm91cDohMCxjb2x1bW5Db3VudDohMCxjb2x1bW5zOiEwLGZsZXg6ITAsZmxleEdyb3c6ITAsZmxleFBvc2l0aXZlOiEwLGZsZXhTaHJpbms6ITAsZmxleE5lZ2F0aXZlOiEwLGZsZXhPcmRlcjohMCxncmlkQXJlYTohMCxncmlkUm93OiEwLGdyaWRSb3dFbmQ6ITAsZ3JpZFJvd1NwYW46ITAsZ3JpZFJvd1N0YXJ0OiEwLGdyaWRDb2x1bW46ITAsZ3JpZENvbHVtbkVuZDohMCxncmlkQ29sdW1uU3BhbjohMCxncmlkQ29sdW1uU3RhcnQ6ITAsZm9udFdlaWdodDohMCxsaW5lQ2xhbXA6ITAsbGluZUhlaWdodDohMCxvcGFjaXR5OiEwLG9yZGVyOiEwLG9ycGhhbnM6ITAsdGFiU2l6ZTohMCx3aWRvd3M6ITAsekluZGV4OiEwLHpvb206ITAsZmlsbE9wYWNpdHk6ITAsZmxvb2RPcGFjaXR5OiEwLHN0b3BPcGFjaXR5OiEwLHN0cm9rZURhc2hhcnJheTohMCxzdHJva2VEYXNob2Zmc2V0OiEwLHN0cm9rZU1pdGVybGltaXQ6ITAsc3Ryb2tlT3BhY2l0eTohMCxzdHJva2VXaWR0aDohMH0sJGU9WyJXZWJraXQiLCJtcyIsIk1veiIsIk8iXTtmdW5jdGlvbiBXZShlLHQsbil7cmV0dXJuIG51bGw9PXR8fCJib29sZWFuIj09dHlwZW9mIHR8fCIiPT09dD8iIjpufHwibnVtYmVyIiE9dHlwZW9mIHR8fDA9PT10fHxWZS5oYXNPd25Qcm9wZXJ0eShlKSYmVmVbZV0/KCIiK3QpLnRyaW0oKTp0KyJweCJ9ZnVuY3Rpb24gR2UoZSx0KXtmb3IodmFyIG4gaW4gZT1lLnN0eWxlLHQpe3ZhciByLG87dC5oYXNPd25Qcm9wZXJ0eShuKSYmKHI9MD09PW4uaW5kZXhPZigiLS0iKSxvPVdlKG4sdFtuXSxyKSwiZmxvYXQiPT09biYmKG49ImNzc0Zsb2F0Iikscj9lLnNldFByb3BlcnR5KG4sbyk6ZVtuXT1vKX19T2JqZWN0LmtleXMoVmUpLmZvckVhY2goZnVuY3Rpb24odCl7JGUuZm9yRWFjaChmdW5jdGlvbihlKXtlPWUrdC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSt0LnN1YnN0cmluZygxKSxWZVtlXT1WZVt0XX0pfSk7dmFyIHFlPWcoe21lbnVpdGVtOiEwfSx7YXJlYTohMCxiYXNlOiEwLGJyOiEwLGNvbDohMCxlbWJlZDohMCxocjohMCxpbWc6ITAsaW5wdXQ6ITAsa2V5Z2VuOiEwLGxpbms6ITAsbWV0YTohMCxwYXJhbTohMCxzb3VyY2U6ITAsdHJhY2s6ITAsd2JyOiEwfSk7ZnVuY3Rpb24gWmUoZSx0KXtpZih0KXtpZihxZVtlXSYmKG51bGwhPXQuY2hpbGRyZW58fG51bGwhPXQuZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwpKXRocm93IEVycm9yKEQoMTM3LGUpKTtpZihudWxsIT10LmRhbmdlcm91c2x5U2V0SW5uZXJIVE1MKXtpZihudWxsIT10LmNoaWxkcmVuKXRocm93IEVycm9yKEQoNjApKTtpZigib2JqZWN0IiE9dHlwZW9mIHQuZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUx8fCEoIl9faHRtbCJpbiB0LmRhbmdlcm91c2x5U2V0SW5uZXJIVE1MKSl0aHJvdyBFcnJvcihEKDYxKSl9aWYobnVsbCE9dC5zdHlsZSYmIm9iamVjdCIhPXR5cGVvZiB0LnN0eWxlKXRocm93IEVycm9yKEQoNjIpKX19ZnVuY3Rpb24gWGUoZSx0KXtpZigtMT09PWUuaW5kZXhPZigiLSIpKXJldHVybiJzdHJpbmciPT10eXBlb2YgdC5pcztzd2l0Y2goZSl7Y2FzZSJhbm5vdGF0aW9uLXhtbCI6Y2FzZSJjb2xvci1wcm9maWxlIjpjYXNlImZvbnQtZmFjZSI6Y2FzZSJmb250LWZhY2Utc3JjIjpjYXNlImZvbnQtZmFjZS11cmkiOmNhc2UiZm9udC1mYWNlLWZvcm1hdCI6Y2FzZSJmb250LWZhY2UtbmFtZSI6Y2FzZSJtaXNzaW5nLWdseXBoIjpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX12YXIgWWU9bnVsbDtmdW5jdGlvbiBRZShlKXtyZXR1cm4gMz09PShlPShlPWUudGFyZ2V0fHxlLnNyY0VsZW1lbnR8fHdpbmRvdykuY29ycmVzcG9uZGluZ1VzZUVsZW1lbnQ/ZS5jb3JyZXNwb25kaW5nVXNlRWxlbWVudDplKS5ub2RlVHlwZT9lLnBhcmVudE5vZGU6ZX12YXIgS2U9bnVsbCxKZT1udWxsLGV0PW51bGw7ZnVuY3Rpb24gdHQoZSl7aWYoZT16byhlKSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIEtlKXRocm93IEVycm9yKEQoMjgwKSk7dmFyIHQ9ZS5zdGF0ZU5vZGU7dCYmKHQ9TG8odCksS2UoZS5zdGF0ZU5vZGUsZS50eXBlLHQpKX19ZnVuY3Rpb24gbnQoZSl7SmU/ZXQ/ZXQucHVzaChlKTpldD1bZV06SmU9ZX1mdW5jdGlvbiBydCgpe2lmKEplKXt2YXIgZT1KZSx0PWV0O2lmKGV0PUplPW51bGwsdHQoZSksdClmb3IoZT0wO2U8dC5sZW5ndGg7ZSsrKXR0KHRbZV0pfX1mdW5jdGlvbiBvdChlLHQpe3JldHVybiBlKHQpfWZ1bmN0aW9uIGF0KCl7fXZhciBpdD0hMTtmdW5jdGlvbiBsdChlLHQsbil7aWYoaXQpcmV0dXJuIGUodCxuKTtpdD0hMDt0cnl7b3QoZSx0LG4pfWZpbmFsbHl7aXQ9ITEsbnVsbD09PUplJiZudWxsPT09ZXR8fChhdCgpLHJ0KCkpfX1mdW5jdGlvbiBjdChlLHQpe3ZhciBuPWUuc3RhdGVOb2RlO2lmKG51bGw9PT1uKXJldHVybiBudWxsO3ZhciByPUxvKG4pO2lmKG51bGw9PT1yKXJldHVybiBudWxsO3N3aXRjaChuPXJbdF0sdCl7Y2FzZSJvbkNsaWNrIjpjYXNlIm9uQ2xpY2tDYXB0dXJlIjpjYXNlIm9uRG91YmxlQ2xpY2siOmNhc2Uib25Eb3VibGVDbGlja0NhcHR1cmUiOmNhc2Uib25Nb3VzZURvd24iOmNhc2Uib25Nb3VzZURvd25DYXB0dXJlIjpjYXNlIm9uTW91c2VNb3ZlIjpjYXNlIm9uTW91c2VNb3ZlQ2FwdHVyZSI6Y2FzZSJvbk1vdXNlVXAiOmNhc2Uib25Nb3VzZVVwQ2FwdHVyZSI6Y2FzZSJvbk1vdXNlRW50ZXIiOmU9IShyPShyPSFyLmRpc2FibGVkKT9yOiEoImJ1dHRvbiI9PT0oZT1lLnR5cGUpfHwiaW5wdXQiPT09ZXx8InNlbGVjdCI9PT1lfHwidGV4dGFyZWEiPT09ZSkpO2JyZWFrO2RlZmF1bHQ6ZT0hMX1pZihlKXJldHVybiBudWxsO2lmKG4mJiJmdW5jdGlvbiIhPXR5cGVvZiBuKXRocm93IEVycm9yKEQoMjMxLHQsdHlwZW9mIG4pKTtyZXR1cm4gbn12YXIgdXQ9ITE7aWYoUil0cnl7dmFyIGU9e307T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsInBhc3NpdmUiLHtnZXQ6ZnVuY3Rpb24oKXt1dD0hMH19KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigidGVzdCIsZSxlKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigidGVzdCIsZSxlKX1jYXRjaChlKXt1dD0hMX12YXIgc3Q9ITEsZnQ9bnVsbCxkdD0hMSxwdD1udWxsLG10PXtvbkVycm9yOmZ1bmN0aW9uKGUpe3N0PSEwLGZ0PWV9fTtmdW5jdGlvbiBodChlLHQsbixyLG8sYSxpLGwsYyl7c3Q9ITEsZnQ9bnVsbCxmdW5jdGlvbihlLHQsbixyLG8sYSxpLGwsYyl7dmFyIHU9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDMpO3RyeXt0LmFwcGx5KG4sdSl9Y2F0Y2goZSl7dGhpcy5vbkVycm9yKGUpfX0uYXBwbHkobXQsYXJndW1lbnRzKX1mdW5jdGlvbiBndChlKXt2YXIgdD1lLG49ZTtpZihlLmFsdGVybmF0ZSlmb3IoO3QucmV0dXJuOyl0PXQucmV0dXJuO2Vsc2UgZm9yKGU9dDswIT0oNDA5OCYodD1lKS5mbGFncykmJihuPXQucmV0dXJuKSxlPXQucmV0dXJuOyk7cmV0dXJuIDM9PT10LnRhZz9uOm51bGx9ZnVuY3Rpb24gYnQoZSl7aWYoMTM9PT1lLnRhZyl7dmFyIHQ9ZS5tZW1vaXplZFN0YXRlO2lmKG51bGwhPT0odD1udWxsPT09dCYmbnVsbCE9PShlPWUuYWx0ZXJuYXRlKT9lLm1lbW9pemVkU3RhdGU6dCkpcmV0dXJuIHQuZGVoeWRyYXRlZH1yZXR1cm4gbnVsbH1mdW5jdGlvbiB5dChlKXtpZihndChlKSE9PWUpdGhyb3cgRXJyb3IoRCgxODgpKX1mdW5jdGlvbiB2dChlKXtyZXR1cm4gbnVsbCE9PShlPWZ1bmN0aW9uKGUpe3ZhciB0PWUuYWx0ZXJuYXRlO2lmKCF0KXtpZihudWxsPT09KHQ9Z3QoZSkpKXRocm93IEVycm9yKEQoMTg4KSk7cmV0dXJuIHQhPT1lP251bGw6ZX1mb3IodmFyIG49ZSxyPXQ7Oyl7dmFyIG89bi5yZXR1cm47aWYobnVsbD09PW8pYnJlYWs7dmFyIGE9by5hbHRlcm5hdGU7aWYobnVsbD09PWEpe2lmKG51bGw9PT0ocj1vLnJldHVybikpYnJlYWs7bj1yfWVsc2V7aWYoby5jaGlsZD09PWEuY2hpbGQpe2ZvcihhPW8uY2hpbGQ7YTspe2lmKGE9PT1uKXJldHVybiB5dChvKSxlO2lmKGE9PT1yKXJldHVybiB5dChvKSx0O2E9YS5zaWJsaW5nfXRocm93IEVycm9yKEQoMTg4KSl9aWYobi5yZXR1cm4hPT1yLnJldHVybiluPW8scj1hO2Vsc2V7Zm9yKHZhciBpPSExLGw9by5jaGlsZDtsOyl7aWYobD09PW4pe2k9ITAsbj1vLHI9YTticmVha31pZihsPT09cil7aT0hMCxyPW8sbj1hO2JyZWFrfWw9bC5zaWJsaW5nfWlmKCFpKXtmb3IobD1hLmNoaWxkO2w7KXtpZihsPT09bil7aT0hMCxuPWEscj1vO2JyZWFrfWlmKGw9PT1yKXtpPSEwLHI9YSxuPW87YnJlYWt9bD1sLnNpYmxpbmd9aWYoIWkpdGhyb3cgRXJyb3IoRCgxODkpKX19aWYobi5hbHRlcm5hdGUhPT1yKXRocm93IEVycm9yKEQoMTkwKSl9fWlmKDMhPT1uLnRhZyl0aHJvdyBFcnJvcihEKDE4OCkpO3JldHVybiBuLnN0YXRlTm9kZS5jdXJyZW50PT09bj9lOnR9KGUpKT9mdW5jdGlvbiBlKHQpe2lmKDU9PT10LnRhZ3x8Nj09PXQudGFnKXJldHVybiB0O2Zvcih0PXQuY2hpbGQ7bnVsbCE9PXQ7KXt2YXIgbj1lKHQpO2lmKG51bGwhPT1uKXJldHVybiBuO3Q9dC5zaWJsaW5nfXJldHVybiBudWxsfShlKTpudWxsfXZhciB3dD1CLnVuc3RhYmxlX3NjaGVkdWxlQ2FsbGJhY2sseHQ9Qi51bnN0YWJsZV9jYW5jZWxDYWxsYmFjayxrdD1CLnVuc3RhYmxlX3Nob3VsZFlpZWxkLFN0PUIudW5zdGFibGVfcmVxdWVzdFBhaW50LGg9Qi51bnN0YWJsZV9ub3csQ3Q9Qi51bnN0YWJsZV9nZXRDdXJyZW50UHJpb3JpdHlMZXZlbCxFdD1CLnVuc3RhYmxlX0ltbWVkaWF0ZVByaW9yaXR5LE90PUIudW5zdGFibGVfVXNlckJsb2NraW5nUHJpb3JpdHksanQ9Qi51bnN0YWJsZV9Ob3JtYWxQcmlvcml0eSxBdD1CLnVuc3RhYmxlX0xvd1ByaW9yaXR5LFB0PUIudW5zdGFibGVfSWRsZVByaW9yaXR5LEl0PW51bGwsX3Q9bnVsbDt2YXIgenQ9TWF0aC5jbHozMnx8ZnVuY3Rpb24oZSl7cmV0dXJuIDA9PShlPj4+PTApPzMyOjMxLShUdChlKS9MdHwwKXwwfSxUdD1NYXRoLmxvZyxMdD1NYXRoLkxOMjt2YXIgTXQ9NjQsUnQ9NDE5NDMwNDtmdW5jdGlvbiBOdChlKXtzd2l0Y2goZSYtZSl7Y2FzZSAxOnJldHVybiAxO2Nhc2UgMjpyZXR1cm4gMjtjYXNlIDQ6cmV0dXJuIDQ7Y2FzZSA4OnJldHVybiA4O2Nhc2UgMTY6cmV0dXJuIDE2O2Nhc2UgMzI6cmV0dXJuIDMyO2Nhc2UgNjQ6Y2FzZSAxMjg6Y2FzZSAyNTY6Y2FzZSA1MTI6Y2FzZSAxMDI0OmNhc2UgMjA0ODpjYXNlIDQwOTY6Y2FzZSA4MTkyOmNhc2UgMTYzODQ6Y2FzZSAzMjc2ODpjYXNlIDY1NTM2OmNhc2UgMTMxMDcyOmNhc2UgMjYyMTQ0OmNhc2UgNTI0Mjg4OmNhc2UgMTA0ODU3NjpjYXNlIDIwOTcxNTI6cmV0dXJuIDQxOTQyNDAmZTtjYXNlIDQxOTQzMDQ6Y2FzZSA4Mzg4NjA4OmNhc2UgMTY3NzcyMTY6Y2FzZSAzMzU1NDQzMjpjYXNlIDY3MTA4ODY0OnJldHVybiAxMzAwMjM0MjQmZTtjYXNlIDEzNDIxNzcyODpyZXR1cm4gMTM0MjE3NzI4O2Nhc2UgMjY4NDM1NDU2OnJldHVybiAyNjg0MzU0NTY7Y2FzZSA1MzY4NzA5MTI6cmV0dXJuIDUzNjg3MDkxMjtjYXNlIDEwNzM3NDE4MjQ6cmV0dXJuIDEwNzM3NDE4MjQ7ZGVmYXVsdDpyZXR1cm4gZX19ZnVuY3Rpb24gRHQoZSx0KXt2YXIgbj1lLnBlbmRpbmdMYW5lcztpZigwPT09bilyZXR1cm4gMDt2YXIgcixvPTAsYT1lLnN1c3BlbmRlZExhbmVzLGk9ZS5waW5nZWRMYW5lcyxsPTI2ODQzNTQ1NSZuO2lmKDAhPWw/MCE9KHI9bCZ+YSk/bz1OdChyKTowIT09KGkmPWwpJiYobz1OdChpKSk6MCE9KGw9biZ+YSk/bz1OdChsKTowIT09aSYmKG89TnQoaSkpLDA9PT1vKXJldHVybiAwO2lmKDAhPT10JiZ0IT09byYmMD09KHQmYSkmJigoaT10Ji10KTw9KGE9byYtbyl8fDE2PT09YSYmMCE9KDQxOTQyNDAmaSkpKXJldHVybiB0O2lmKDAhPSg0Jm8pJiYob3w9MTYmbiksMCE9PSh0PWUuZW50YW5nbGVkTGFuZXMpKWZvcihlPWUuZW50YW5nbGVtZW50cyx0Jj1vOzA8dDspb3w9ZVtuPTMxLXp0KHQpXSx0Jj1+KGE9MTw8bik7cmV0dXJuIG99ZnVuY3Rpb24gVXQoZSx0KXtmb3IodmFyIG49ZS5zdXNwZW5kZWRMYW5lcyxyPWUucGluZ2VkTGFuZXMsbz1lLmV4cGlyYXRpb25UaW1lcyxhPWUucGVuZGluZ0xhbmVzOzA8YTspe3ZhciBpPTMxLXp0KGEpLGw9MTw8aSxjPW9baV07LTE9PT1jPzAhPShsJm4pJiYwPT0obCZyKXx8KG9baV09ZnVuY3Rpb24oZSx0KXtzd2l0Y2goZSl7Y2FzZSAxOmNhc2UgMjpjYXNlIDQ6cmV0dXJuIHQrMjUwO2Nhc2UgODpjYXNlIDE2OmNhc2UgMzI6Y2FzZSA2NDpjYXNlIDEyODpjYXNlIDI1NjpjYXNlIDUxMjpjYXNlIDEwMjQ6Y2FzZSAyMDQ4OmNhc2UgNDA5NjpjYXNlIDgxOTI6Y2FzZSAxNjM4NDpjYXNlIDMyNzY4OmNhc2UgNjU1MzY6Y2FzZSAxMzEwNzI6Y2FzZSAyNjIxNDQ6Y2FzZSA1MjQyODg6Y2FzZSAxMDQ4NTc2OmNhc2UgMjA5NzE1MjpyZXR1cm4gdCs1ZTM7Y2FzZSA0MTk0MzA0OmNhc2UgODM4ODYwODpjYXNlIDE2Nzc3MjE2OmNhc2UgMzM1NTQ0MzI6Y2FzZSA2NzEwODg2NDpyZXR1cm4tMTtkZWZhdWx0OnJldHVybi0xfX0obCx0KSk6Yzw9dCYmKGUuZXhwaXJlZExhbmVzfD1sKSxhJj1+bH19ZnVuY3Rpb24gQnQoZSl7cmV0dXJuIDAhPT0oZT0tMTA3Mzc0MTgyNSZlLnBlbmRpbmdMYW5lcyk/ZToxMDczNzQxODI0JmU/MTA3Mzc0MTgyNDowfWZ1bmN0aW9uIEZ0KCl7dmFyIGU9TXQ7cmV0dXJuIDA9PSg0MTk0MjQwJihNdDw8PTEpKSYmKE10PTY0KSxlfWZ1bmN0aW9uIEh0KGUpe2Zvcih2YXIgdD1bXSxuPTA7bjwzMTtuKyspdC5wdXNoKGUpO3JldHVybiB0fWZ1bmN0aW9uIFZ0KGUsdCxuKXtlLnBlbmRpbmdMYW5lc3w9dCw1MzY4NzA5MTIhPT10JiYoZS5zdXNwZW5kZWRMYW5lcz0wLGUucGluZ2VkTGFuZXM9MCksKGU9ZS5ldmVudFRpbWVzKVt0PTMxLXp0KHQpXT1ufWZ1bmN0aW9uICR0KGUsdCl7dmFyIG49ZS5lbnRhbmdsZWRMYW5lc3w9dDtmb3IoZT1lLmVudGFuZ2xlbWVudHM7bjspe3ZhciByPTMxLXp0KG4pLG89MTw8cjtvJnR8ZVtyXSZ0JiYoZVtyXXw9dCksbiY9fm99fXZhciB4PTA7ZnVuY3Rpb24gV3QoZSl7cmV0dXJuIDE8KGUmPS1lKT80PGU/MCE9KDI2ODQzNTQ1NSZlKT8xNjo1MzY4NzA5MTI6NDoxfXZhciBHdCxxdCxadCxYdCxZdCxRdD0hMSxLdD1bXSxKdD1udWxsLGVuPW51bGwsdG49bnVsbCxubj1uZXcgTWFwLHJuPW5ldyBNYXAsb249W10sYW49Im1vdXNlZG93biBtb3VzZXVwIHRvdWNoY2FuY2VsIHRvdWNoZW5kIHRvdWNoc3RhcnQgYXV4Y2xpY2sgZGJsY2xpY2sgcG9pbnRlcmNhbmNlbCBwb2ludGVyZG93biBwb2ludGVydXAgZHJhZ2VuZCBkcmFnc3RhcnQgZHJvcCBjb21wb3NpdGlvbmVuZCBjb21wb3NpdGlvbnN0YXJ0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgaW5wdXQgdGV4dElucHV0IGNvcHkgY3V0IHBhc3RlIGNsaWNrIGNoYW5nZSBjb250ZXh0bWVudSByZXNldCBzdWJtaXQiLnNwbGl0KCIgIik7ZnVuY3Rpb24gbG4oZSx0KXtzd2l0Y2goZSl7Y2FzZSJmb2N1c2luIjpjYXNlImZvY3Vzb3V0IjpKdD1udWxsO2JyZWFrO2Nhc2UiZHJhZ2VudGVyIjpjYXNlImRyYWdsZWF2ZSI6ZW49bnVsbDticmVhaztjYXNlIm1vdXNlb3ZlciI6Y2FzZSJtb3VzZW91dCI6dG49bnVsbDticmVhaztjYXNlInBvaW50ZXJvdmVyIjpjYXNlInBvaW50ZXJvdXQiOm5uLmRlbGV0ZSh0LnBvaW50ZXJJZCk7YnJlYWs7Y2FzZSJnb3Rwb2ludGVyY2FwdHVyZSI6Y2FzZSJsb3N0cG9pbnRlcmNhcHR1cmUiOnJuLmRlbGV0ZSh0LnBvaW50ZXJJZCl9fWZ1bmN0aW9uIGNuKGUsdCxuLHIsbyxhKXtyZXR1cm4gbnVsbD09PWV8fGUubmF0aXZlRXZlbnQhPT1hPyhlPXtibG9ja2VkT246dCxkb21FdmVudE5hbWU6bixldmVudFN5c3RlbUZsYWdzOnIsbmF0aXZlRXZlbnQ6YSx0YXJnZXRDb250YWluZXJzOltvXX0sbnVsbCE9PXQmJm51bGwhPT0odD16byh0KSkmJnF0KHQpKTooZS5ldmVudFN5c3RlbUZsYWdzfD1yLHQ9ZS50YXJnZXRDb250YWluZXJzLG51bGwhPT1vJiYtMT09PXQuaW5kZXhPZihvKSYmdC5wdXNoKG8pKSxlfWZ1bmN0aW9uIHVuKGUpe3ZhciB0PV9vKGUudGFyZ2V0KTtpZihudWxsIT09dCl7dmFyIG49Z3QodCk7aWYobnVsbCE9PW4paWYoMTM9PT0odD1uLnRhZykpe2lmKG51bGwhPT0odD1idChuKSkpcmV0dXJuIGUuYmxvY2tlZE9uPXQsdm9pZCBZdChlLnByaW9yaXR5LGZ1bmN0aW9uKCl7WnQobil9KX1lbHNlIGlmKDM9PT10JiZuLnN0YXRlTm9kZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkKXJldHVybiB2b2lkKGUuYmxvY2tlZE9uPTM9PT1uLnRhZz9uLnN0YXRlTm9kZS5jb250YWluZXJJbmZvOm51bGwpfWUuYmxvY2tlZE9uPW51bGx9ZnVuY3Rpb24gc24oZSl7aWYobnVsbD09PWUuYmxvY2tlZE9uKXtmb3IodmFyIHQ9ZS50YXJnZXRDb250YWluZXJzOzA8dC5sZW5ndGg7KXt2YXIgbj14bihlLmRvbUV2ZW50TmFtZSxlLmV2ZW50U3lzdGVtRmxhZ3MsdFswXSxlLm5hdGl2ZUV2ZW50KTtpZihudWxsIT09bilyZXR1cm4gbnVsbCE9PSh0PXpvKG4pKSYmcXQodCksZS5ibG9ja2VkT249biwwO3ZhciByPW5ldyhuPWUubmF0aXZlRXZlbnQpLmNvbnN0cnVjdG9yKG4udHlwZSxuKTtZZT1yLG4udGFyZ2V0LmRpc3BhdGNoRXZlbnQociksWWU9bnVsbCx0LnNoaWZ0KCl9cmV0dXJuIDF9fWZ1bmN0aW9uIGZuKGUsdCxuKXtzbihlKSYmbi5kZWxldGUodCl9ZnVuY3Rpb24gZG4oKXtRdD0hMSxudWxsIT09SnQmJnNuKEp0KSYmKEp0PW51bGwpLG51bGwhPT1lbiYmc24oZW4pJiYoZW49bnVsbCksbnVsbCE9PXRuJiZzbih0bikmJih0bj1udWxsKSxubi5mb3JFYWNoKGZuKSxybi5mb3JFYWNoKGZuKX1mdW5jdGlvbiBwbihlLHQpe2UuYmxvY2tlZE9uPT09dCYmKGUuYmxvY2tlZE9uPW51bGwsUXR8fChRdD0hMCxCLnVuc3RhYmxlX3NjaGVkdWxlQ2FsbGJhY2soQi51bnN0YWJsZV9Ob3JtYWxQcmlvcml0eSxkbikpKX1mdW5jdGlvbiBtbih0KXtmdW5jdGlvbiBlKGUpe3JldHVybiBwbihlLHQpfWlmKDA8S3QubGVuZ3RoKXtwbihLdFswXSx0KTtmb3IodmFyIG49MTtuPEt0Lmxlbmd0aDtuKyspe3ZhciByPUt0W25dO3IuYmxvY2tlZE9uPT09dCYmKHIuYmxvY2tlZE9uPW51bGwpfX1mb3IobnVsbCE9PUp0JiZwbihKdCx0KSxudWxsIT09ZW4mJnBuKGVuLHQpLG51bGwhPT10biYmcG4odG4sdCksbm4uZm9yRWFjaChlKSxybi5mb3JFYWNoKGUpLG49MDtuPG9uLmxlbmd0aDtuKyspKHI9b25bbl0pLmJsb2NrZWRPbj09PXQmJihyLmJsb2NrZWRPbj1udWxsKTtmb3IoOzA8b24ubGVuZ3RoJiZudWxsPT09KG49b25bMF0pLmJsb2NrZWRPbjspdW4obiksbnVsbD09PW4uYmxvY2tlZE9uJiZvbi5zaGlmdCgpfXZhciBobj1KLlJlYWN0Q3VycmVudEJhdGNoQ29uZmlnLGduPSEwO2Z1bmN0aW9uIGJuKGUsdCxuLHIpe3ZhciBvPXgsYT1obi50cmFuc2l0aW9uO2huLnRyYW5zaXRpb249bnVsbDt0cnl7eD0xLHZuKGUsdCxuLHIpfWZpbmFsbHl7eD1vLGhuLnRyYW5zaXRpb249YX19ZnVuY3Rpb24geW4oZSx0LG4scil7dmFyIG89eCxhPWhuLnRyYW5zaXRpb247aG4udHJhbnNpdGlvbj1udWxsO3RyeXt4PTQsdm4oZSx0LG4scil9ZmluYWxseXt4PW8saG4udHJhbnNpdGlvbj1hfX1mdW5jdGlvbiB2bihlLHQsbixyKXtpZihnbil7dmFyIG89eG4oZSwwLDAscik7aWYobnVsbD09PW8pcm8oZSx0LHIsd24sbiksbG4oZSxyKTtlbHNlIGlmKGZ1bmN0aW9uKGUsdCxuLHIsbyl7c3dpdGNoKHQpe2Nhc2UiZm9jdXNpbiI6cmV0dXJuIEp0PWNuKEp0LGUsdCxuLHIsbyksMTtjYXNlImRyYWdlbnRlciI6cmV0dXJuIGVuPWNuKGVuLGUsdCxuLHIsbyksMTtjYXNlIm1vdXNlb3ZlciI6cmV0dXJuIHRuPWNuKHRuLGUsdCxuLHIsbyksMTtjYXNlInBvaW50ZXJvdmVyIjp2YXIgYT1vLnBvaW50ZXJJZDtyZXR1cm4gbm4uc2V0KGEsY24obm4uZ2V0KGEpfHxudWxsLGUsdCxuLHIsbykpLDE7Y2FzZSJnb3Rwb2ludGVyY2FwdHVyZSI6cmV0dXJuIGE9by5wb2ludGVySWQscm4uc2V0KGEsY24ocm4uZ2V0KGEpfHxudWxsLGUsdCxuLHIsbykpLDF9fShvLGUsdCxuLHIpKXIuc3RvcFByb3BhZ2F0aW9uKCk7ZWxzZSBpZihsbihlLHIpLDQmdCYmLTE8YW4uaW5kZXhPZihlKSl7Zm9yKDtudWxsIT09bzspe3ZhciBhPXpvKG8pO2lmKG51bGwhPT1hJiZHdChhKSxudWxsPT09KGE9eG4oZSwwLDAscikpJiZybyhlLHQscix3bixuKSxhPT09bylicmVhaztvPWF9bnVsbCE9PW8mJnIuc3RvcFByb3BhZ2F0aW9uKCl9ZWxzZSBybyhlLHQscixudWxsLG4pfX12YXIgd249bnVsbDtmdW5jdGlvbiB4bihlLHQsbixyKXtpZigod249bnVsbCkhPT0oZT1fbyhlPVFlKHIpKSkpaWYobnVsbD09PSh0PWd0KGUpKSllPW51bGw7ZWxzZSBpZigxMz09PShuPXQudGFnKSl7aWYobnVsbCE9PShlPWJ0KHQpKSlyZXR1cm4gZTtlPW51bGx9ZWxzZSBpZigzPT09bil7aWYodC5zdGF0ZU5vZGUuY3VycmVudC5tZW1vaXplZFN0YXRlLmlzRGVoeWRyYXRlZClyZXR1cm4gMz09PXQudGFnP3Quc3RhdGVOb2RlLmNvbnRhaW5lckluZm86bnVsbDtlPW51bGx9ZWxzZSB0IT09ZSYmKGU9bnVsbCk7cmV0dXJuIHduPWUsbnVsbH1mdW5jdGlvbiBrbihlKXtzd2l0Y2goZSl7Y2FzZSJjYW5jZWwiOmNhc2UiY2xpY2siOmNhc2UiY2xvc2UiOmNhc2UiY29udGV4dG1lbnUiOmNhc2UiY29weSI6Y2FzZSJjdXQiOmNhc2UiYXV4Y2xpY2siOmNhc2UiZGJsY2xpY2siOmNhc2UiZHJhZ2VuZCI6Y2FzZSJkcmFnc3RhcnQiOmNhc2UiZHJvcCI6Y2FzZSJmb2N1c2luIjpjYXNlImZvY3Vzb3V0IjpjYXNlImlucHV0IjpjYXNlImludmFsaWQiOmNhc2Uia2V5ZG93biI6Y2FzZSJrZXlwcmVzcyI6Y2FzZSJrZXl1cCI6Y2FzZSJtb3VzZWRvd24iOmNhc2UibW91c2V1cCI6Y2FzZSJwYXN0ZSI6Y2FzZSJwYXVzZSI6Y2FzZSJwbGF5IjpjYXNlInBvaW50ZXJjYW5jZWwiOmNhc2UicG9pbnRlcmRvd24iOmNhc2UicG9pbnRlcnVwIjpjYXNlInJhdGVjaGFuZ2UiOmNhc2UicmVzZXQiOmNhc2UicmVzaXplIjpjYXNlInNlZWtlZCI6Y2FzZSJzdWJtaXQiOmNhc2UidG91Y2hjYW5jZWwiOmNhc2UidG91Y2hlbmQiOmNhc2UidG91Y2hzdGFydCI6Y2FzZSJ2b2x1bWVjaGFuZ2UiOmNhc2UiY2hhbmdlIjpjYXNlInNlbGVjdGlvbmNoYW5nZSI6Y2FzZSJ0ZXh0SW5wdXQiOmNhc2UiY29tcG9zaXRpb25zdGFydCI6Y2FzZSJjb21wb3NpdGlvbmVuZCI6Y2FzZSJjb21wb3NpdGlvbnVwZGF0ZSI6Y2FzZSJiZWZvcmVibHVyIjpjYXNlImFmdGVyYmx1ciI6Y2FzZSJiZWZvcmVpbnB1dCI6Y2FzZSJibHVyIjpjYXNlImZ1bGxzY3JlZW5jaGFuZ2UiOmNhc2UiZm9jdXMiOmNhc2UiaGFzaGNoYW5nZSI6Y2FzZSJwb3BzdGF0ZSI6Y2FzZSJzZWxlY3QiOmNhc2Uic2VsZWN0c3RhcnQiOnJldHVybiAxO2Nhc2UiZHJhZyI6Y2FzZSJkcmFnZW50ZXIiOmNhc2UiZHJhZ2V4aXQiOmNhc2UiZHJhZ2xlYXZlIjpjYXNlImRyYWdvdmVyIjpjYXNlIm1vdXNlbW92ZSI6Y2FzZSJtb3VzZW91dCI6Y2FzZSJtb3VzZW92ZXIiOmNhc2UicG9pbnRlcm1vdmUiOmNhc2UicG9pbnRlcm91dCI6Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJzY3JvbGwiOmNhc2UidG9nZ2xlIjpjYXNlInRvdWNobW92ZSI6Y2FzZSJ3aGVlbCI6Y2FzZSJtb3VzZWVudGVyIjpjYXNlIm1vdXNlbGVhdmUiOmNhc2UicG9pbnRlcmVudGVyIjpjYXNlInBvaW50ZXJsZWF2ZSI6cmV0dXJuIDQ7Y2FzZSJtZXNzYWdlIjpzd2l0Y2goQ3QoKSl7Y2FzZSBFdDpyZXR1cm4gMTtjYXNlIE90OnJldHVybiA0O2Nhc2UganQ6Y2FzZSBBdDpyZXR1cm4gMTY7Y2FzZSBQdDpyZXR1cm4gNTM2ODcwOTEyO2RlZmF1bHQ6cmV0dXJuIDE2fWRlZmF1bHQ6cmV0dXJuIDE2fX12YXIgU249bnVsbCxDbj1udWxsLEVuPW51bGw7ZnVuY3Rpb24gT24oKXtpZihFbilyZXR1cm4gRW47Zm9yKHZhciBlPUNuLHQ9ZS5sZW5ndGgsbj0oInZhbHVlImluIFNuP1NuLnZhbHVlOlNuLnRleHRDb250ZW50KSxyPW4ubGVuZ3RoLG89MDtvPHQmJmVbb109PT1uW29dO28rKyk7Zm9yKHZhciBhPXQtbyxpPTE7aTw9YSYmZVt0LWldPT09bltyLWldO2krKyk7cmV0dXJuIEVuPW4uc2xpY2UobywxPGk/MS1pOnZvaWQgMCl9ZnVuY3Rpb24gam4oZSl7dmFyIHQ9ZS5rZXlDb2RlO3JldHVybiJjaGFyQ29kZSJpbiBlPzA9PT0oZT1lLmNoYXJDb2RlKSYmMTM9PT10JiYoZT0xMyk6ZT10LDMyPD0oZT0xMD09PWU/MTM6ZSl8fDEzPT09ZT9lOjB9ZnVuY3Rpb24gQW4oKXtyZXR1cm4hMH1mdW5jdGlvbiBQbigpe3JldHVybiExfWZ1bmN0aW9uIEluKGkpe2Z1bmN0aW9uIGUoZSx0LG4scixvKXtmb3IodmFyIGEgaW4gdGhpcy5fcmVhY3ROYW1lPWUsdGhpcy5fdGFyZ2V0SW5zdD1uLHRoaXMudHlwZT10LHRoaXMubmF0aXZlRXZlbnQ9cix0aGlzLnRhcmdldD1vLHRoaXMuY3VycmVudFRhcmdldD1udWxsLGkpaS5oYXNPd25Qcm9wZXJ0eShhKSYmKGU9aVthXSx0aGlzW2FdPWU/ZShyKTpyW2FdKTtyZXR1cm4gdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9KG51bGwhPXIuZGVmYXVsdFByZXZlbnRlZD9yLmRlZmF1bHRQcmV2ZW50ZWQ6ITE9PT1yLnJldHVyblZhbHVlKT9BbjpQbix0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPVBuLHRoaXN9cmV0dXJuIGcoZS5wcm90b3R5cGUse3ByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPSEwO3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUucHJldmVudERlZmF1bHQ/ZS5wcmV2ZW50RGVmYXVsdCgpOiJ1bmtub3duIiE9dHlwZW9mIGUucmV0dXJuVmFsdWUmJihlLnJldHVyblZhbHVlPSExKSx0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD1Bbil9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUuc3RvcFByb3BhZ2F0aW9uP2Uuc3RvcFByb3BhZ2F0aW9uKCk6InVua25vd24iIT10eXBlb2YgZS5jYW5jZWxCdWJibGUmJihlLmNhbmNlbEJ1YmJsZT0hMCksdGhpcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZD1Bbil9LHBlcnNpc3Q6ZnVuY3Rpb24oKXt9LGlzUGVyc2lzdGVudDpBbn0pLGV9dmFyIF9uLHpuLFRuLGU9e2V2ZW50UGhhc2U6MCxidWJibGVzOjAsY2FuY2VsYWJsZTowLHRpbWVTdGFtcDpmdW5jdGlvbihlKXtyZXR1cm4gZS50aW1lU3RhbXB8fERhdGUubm93KCl9LGRlZmF1bHRQcmV2ZW50ZWQ6MCxpc1RydXN0ZWQ6MH0sTG49SW4oZSksdD1nKHt9LGUse3ZpZXc6MCxkZXRhaWw6MH0pLE1uPUluKHQpLHI9Zyh7fSx0LHtzY3JlZW5YOjAsc2NyZWVuWTowLGNsaWVudFg6MCxjbGllbnRZOjAscGFnZVg6MCxwYWdlWTowLGN0cmxLZXk6MCxzaGlmdEtleTowLGFsdEtleTowLG1ldGFLZXk6MCxnZXRNb2RpZmllclN0YXRlOkduLGJ1dHRvbjowLGJ1dHRvbnM6MCxyZWxhdGVkVGFyZ2V0OmZ1bmN0aW9uKGUpe3JldHVybiB2b2lkIDA9PT1lLnJlbGF0ZWRUYXJnZXQ/ZS5mcm9tRWxlbWVudD09PWUuc3JjRWxlbWVudD9lLnRvRWxlbWVudDplLmZyb21FbGVtZW50OmUucmVsYXRlZFRhcmdldH0sbW92ZW1lbnRYOmZ1bmN0aW9uKGUpe3JldHVybiJtb3ZlbWVudFgiaW4gZT9lLm1vdmVtZW50WDooZSE9PVRuJiYoem49VG4mJiJtb3VzZW1vdmUiPT09ZS50eXBlPyhfbj1lLnNjcmVlblgtVG4uc2NyZWVuWCxlLnNjcmVlblktVG4uc2NyZWVuWSk6X249MCxUbj1lKSxfbil9LG1vdmVtZW50WTpmdW5jdGlvbihlKXtyZXR1cm4ibW92ZW1lbnRZImluIGU/ZS5tb3ZlbWVudFk6em59fSksUm49SW4ociksTm49SW4oZyh7fSxyLHtkYXRhVHJhbnNmZXI6MH0pKSxEbj1JbihnKHt9LHQse3JlbGF0ZWRUYXJnZXQ6MH0pKSxVbj1JbihnKHt9LGUse2FuaW1hdGlvbk5hbWU6MCxlbGFwc2VkVGltZTowLHBzZXVkb0VsZW1lbnQ6MH0pKSxCbj1JbihnKHt9LGUse2NsaXBib2FyZERhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuKCJjbGlwYm9hcmREYXRhImluIGU/ZTp3aW5kb3cpLmNsaXBib2FyZERhdGF9fSkpLEZuPUluKGcoe30sZSx7ZGF0YTowfSkpLEhuPXtFc2M6IkVzY2FwZSIsU3BhY2ViYXI6IiAiLExlZnQ6IkFycm93TGVmdCIsVXA6IkFycm93VXAiLFJpZ2h0OiJBcnJvd1JpZ2h0IixEb3duOiJBcnJvd0Rvd24iLERlbDoiRGVsZXRlIixXaW46Ik9TIixNZW51OiJDb250ZXh0TWVudSIsQXBwczoiQ29udGV4dE1lbnUiLFNjcm9sbDoiU2Nyb2xsTG9jayIsTW96UHJpbnRhYmxlS2V5OiJVbmlkZW50aWZpZWQifSxWbj17ODoiQmFja3NwYWNlIiw5OiJUYWIiLDEyOiJDbGVhciIsMTM6IkVudGVyIiwxNjoiU2hpZnQiLDE3OiJDb250cm9sIiwxODoiQWx0IiwxOToiUGF1c2UiLDIwOiJDYXBzTG9jayIsMjc6IkVzY2FwZSIsMzI6IiAiLDMzOiJQYWdlVXAiLDM0OiJQYWdlRG93biIsMzU6IkVuZCIsMzY6IkhvbWUiLDM3OiJBcnJvd0xlZnQiLDM4OiJBcnJvd1VwIiwzOToiQXJyb3dSaWdodCIsNDA6IkFycm93RG93biIsNDU6Ikluc2VydCIsNDY6IkRlbGV0ZSIsMTEyOiJGMSIsMTEzOiJGMiIsMTE0OiJGMyIsMTE1OiJGNCIsMTE2OiJGNSIsMTE3OiJGNiIsMTE4OiJGNyIsMTE5OiJGOCIsMTIwOiJGOSIsMTIxOiJGMTAiLDEyMjoiRjExIiwxMjM6IkYxMiIsMTQ0OiJOdW1Mb2NrIiwxNDU6IlNjcm9sbExvY2siLDIyNDoiTWV0YSJ9LCRuPXtBbHQ6ImFsdEtleSIsQ29udHJvbDoiY3RybEtleSIsTWV0YToibWV0YUtleSIsU2hpZnQ6InNoaWZ0S2V5In07ZnVuY3Rpb24gV24oZSl7dmFyIHQ9dGhpcy5uYXRpdmVFdmVudDtyZXR1cm4gdC5nZXRNb2RpZmllclN0YXRlP3QuZ2V0TW9kaWZpZXJTdGF0ZShlKTohIShlPSRuW2VdKSYmISF0W2VdfWZ1bmN0aW9uIEduKCl7cmV0dXJuIFdufXZhciBxbj1JbihnKHt9LHQse2tleTpmdW5jdGlvbihlKXtpZihlLmtleSl7dmFyIHQ9SG5bZS5rZXldfHxlLmtleTtpZigiVW5pZGVudGlmaWVkIiE9PXQpcmV0dXJuIHR9cmV0dXJuImtleXByZXNzIj09PWUudHlwZT8xMz09PShlPWpuKGUpKT8iRW50ZXIiOlN0cmluZy5mcm9tQ2hhckNvZGUoZSk6ImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP1ZuW2Uua2V5Q29kZV18fCJVbmlkZW50aWZpZWQiOiIifSxjb2RlOjAsbG9jYXRpb246MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxhbHRLZXk6MCxtZXRhS2V5OjAscmVwZWF0OjAsbG9jYWxlOjAsZ2V0TW9kaWZpZXJTdGF0ZTpHbixjaGFyQ29kZTpmdW5jdGlvbihlKXtyZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlP2puKGUpOjB9LGtleUNvZGU6ZnVuY3Rpb24oZSl7cmV0dXJuImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP2Uua2V5Q29kZTowfSx3aGljaDpmdW5jdGlvbihlKXtyZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlP2puKGUpOiJrZXlkb3duIj09PWUudHlwZXx8ImtleXVwIj09PWUudHlwZT9lLmtleUNvZGU6MH19KSksWm49SW4oZyh7fSxyLHtwb2ludGVySWQ6MCx3aWR0aDowLGhlaWdodDowLHByZXNzdXJlOjAsdGFuZ2VudGlhbFByZXNzdXJlOjAsdGlsdFg6MCx0aWx0WTowLHR3aXN0OjAscG9pbnRlclR5cGU6MCxpc1ByaW1hcnk6MH0pKSxYbj1JbihnKHt9LHQse3RvdWNoZXM6MCx0YXJnZXRUb3VjaGVzOjAsY2hhbmdlZFRvdWNoZXM6MCxhbHRLZXk6MCxtZXRhS2V5OjAsY3RybEtleTowLHNoaWZ0S2V5OjAsZ2V0TW9kaWZpZXJTdGF0ZTpHbn0pKSxZbj1JbihnKHt9LGUse3Byb3BlcnR5TmFtZTowLGVsYXBzZWRUaW1lOjAscHNldWRvRWxlbWVudDowfSkpLFFuPUluKGcoe30scix7ZGVsdGFYOmZ1bmN0aW9uKGUpe3JldHVybiJkZWx0YVgiaW4gZT9lLmRlbHRhWDoid2hlZWxEZWx0YVgiaW4gZT8tZS53aGVlbERlbHRhWDowfSxkZWx0YVk6ZnVuY3Rpb24oZSl7cmV0dXJuImRlbHRhWSJpbiBlP2UuZGVsdGFZOiJ3aGVlbERlbHRhWSJpbiBlPy1lLndoZWVsRGVsdGFZOiJ3aGVlbERlbHRhImluIGU/LWUud2hlZWxEZWx0YTowfSxkZWx0YVo6MCxkZWx0YU1vZGU6MH0pKSxLbj1bOSwxMywyNywzMl0sSm49UiYmIkNvbXBvc2l0aW9uRXZlbnQiaW4gd2luZG93LHQ9bnVsbCxlcj0oUiYmImRvY3VtZW50TW9kZSJpbiBkb2N1bWVudCYmKHQ9ZG9jdW1lbnQuZG9jdW1lbnRNb2RlKSxSJiYiVGV4dEV2ZW50ImluIHdpbmRvdyYmIXQpLHRyPVImJighSm58fHQmJjg8dCYmdDw9MTEpLG5yPVN0cmluZy5mcm9tQ2hhckNvZGUoMzIpLHJyPSExO2Z1bmN0aW9uIG9yKGUsdCl7c3dpdGNoKGUpe2Nhc2Uia2V5dXAiOnJldHVybi0xIT09S24uaW5kZXhPZih0LmtleUNvZGUpO2Nhc2Uia2V5ZG93biI6cmV0dXJuIDIyOSE9PXQua2V5Q29kZTtjYXNlImtleXByZXNzIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJmb2N1c291dCI6cmV0dXJuIDE7ZGVmYXVsdDpyZXR1cm59fWZ1bmN0aW9uIGFyKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YoZT1lLmRldGFpbCkmJiJkYXRhImluIGU/ZS5kYXRhOm51bGx9dmFyIGlyPSExO3ZhciBscj17Y29sb3I6ITAsZGF0ZTohMCxkYXRldGltZTohMCwiZGF0ZXRpbWUtbG9jYWwiOiEwLGVtYWlsOiEwLG1vbnRoOiEwLG51bWJlcjohMCxwYXNzd29yZDohMCxyYW5nZTohMCxzZWFyY2g6ITAsdGVsOiEwLHRleHQ6ITAsdGltZTohMCx1cmw6ITAsd2VlazohMH07ZnVuY3Rpb24gY3IoZSl7dmFyIHQ9ZSYmZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiJpbnB1dCI9PT10P2xyW2UudHlwZV06InRleHRhcmVhIj09PXR9ZnVuY3Rpb24gdXIoZSx0LG4scil7bnQociksMDwodD1hbyh0LCJvbkNoYW5nZSIpKS5sZW5ndGgmJihuPW5ldyBMbigib25DaGFuZ2UiLCJjaGFuZ2UiLG51bGwsbixyKSxlLnB1c2goe2V2ZW50Om4sbGlzdGVuZXJzOnR9KSl9dmFyIHNyPW51bGwsZnI9bnVsbDtmdW5jdGlvbiBkcihlKXtLcihlLDApfWZ1bmN0aW9uIHByKGUpe2lmKFNlKFRvKGUpKSlyZXR1cm4gZX1mdW5jdGlvbiBtcihlLHQpe2lmKCJjaGFuZ2UiPT09ZSlyZXR1cm4gdH12YXIgaHI9ITE7ZnVuY3Rpb24gZ3IoKXtzciYmKHNyLmRldGFjaEV2ZW50KCJvbnByb3BlcnR5Y2hhbmdlIixiciksZnI9c3I9bnVsbCl9ZnVuY3Rpb24gYnIoZSl7dmFyIHQ7InZhbHVlIj09PWUucHJvcGVydHlOYW1lJiZwcihmcikmJih1cih0PVtdLGZyLGUsUWUoZSkpLGx0KGRyLHQpKX1mdW5jdGlvbiB5cihlLHQsbil7ImZvY3VzaW4iPT09ZT8oZ3IoKSxmcj1uLChzcj10KS5hdHRhY2hFdmVudCgib25wcm9wZXJ0eWNoYW5nZSIsYnIpKToiZm9jdXNvdXQiPT09ZSYmZ3IoKX1mdW5jdGlvbiB2cihlKXtpZigic2VsZWN0aW9uY2hhbmdlIj09PWV8fCJrZXl1cCI9PT1lfHwia2V5ZG93biI9PT1lKXJldHVybiBwcihmcil9ZnVuY3Rpb24gd3IoZSx0KXtpZigiY2xpY2siPT09ZSlyZXR1cm4gcHIodCl9ZnVuY3Rpb24geHIoZSx0KXtpZigiaW5wdXQiPT09ZXx8ImNoYW5nZSI9PT1lKXJldHVybiBwcih0KX1SJiYodD1SJiYoKGU9Im9uaW5wdXQiaW4gZG9jdW1lbnQpfHwoKHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikpLnNldEF0dHJpYnV0ZSgib25pbnB1dCIsInJldHVybjsiKSxlPSJmdW5jdGlvbiI9PXR5cGVvZiByLm9uaW5wdXQpLGUpLGhyPXQmJighZG9jdW1lbnQuZG9jdW1lbnRNb2RlfHw5PGRvY3VtZW50LmRvY3VtZW50TW9kZSkpO3ZhciBrcj0iZnVuY3Rpb24iPT10eXBlb2YgT2JqZWN0LmlzP09iamVjdC5pczpmdW5jdGlvbihlLHQpe3JldHVybiBlPT09dCYmKDAhPT1lfHwxL2U9PTEvdCl8fGUhPWUmJnQhPXR9O2Z1bmN0aW9uIFNyKGUsdCl7aWYoIWtyKGUsdCkpe2lmKCJvYmplY3QiIT10eXBlb2YgZXx8bnVsbD09PWV8fCJvYmplY3QiIT10eXBlb2YgdHx8bnVsbD09PXQpcmV0dXJuITE7dmFyIG49T2JqZWN0LmtleXMoZSkscj1PYmplY3Qua2V5cyh0KTtpZihuLmxlbmd0aCE9PXIubGVuZ3RoKXJldHVybiExO2ZvcihyPTA7cjxuLmxlbmd0aDtyKyspe3ZhciBvPW5bcl07aWYoIVcuY2FsbCh0LG8pfHwha3IoZVtvXSx0W29dKSlyZXR1cm4hMX19cmV0dXJuITB9ZnVuY3Rpb24gQ3IoZSl7Zm9yKDtlJiZlLmZpcnN0Q2hpbGQ7KWU9ZS5maXJzdENoaWxkO3JldHVybiBlfWZ1bmN0aW9uIEVyKGUsdCl7dmFyIG4scj1DcihlKTtmb3IoZT0wO3I7KXtpZigzPT09ci5ub2RlVHlwZSl7aWYobj1lK3IudGV4dENvbnRlbnQubGVuZ3RoLGU8PXQmJnQ8PW4pcmV0dXJue25vZGU6cixvZmZzZXQ6dC1lfTtlPW59ZTp7Zm9yKDtyOyl7aWYoci5uZXh0U2libGluZyl7cj1yLm5leHRTaWJsaW5nO2JyZWFrIGV9cj1yLnBhcmVudE5vZGV9cj12b2lkIDB9cj1DcihyKX19ZnVuY3Rpb24gT3IoKXtmb3IodmFyIGU9d2luZG93LHQ9Q2UoKTt0IGluc3RhbmNlb2YgZS5IVE1MSUZyYW1lRWxlbWVudDspe3RyeXt2YXIgbj0ic3RyaW5nIj09dHlwZW9mIHQuY29udGVudFdpbmRvdy5sb2NhdGlvbi5ocmVmfWNhdGNoKGUpe249ITF9aWYoIW4pYnJlYWs7dD1DZSgoZT10LmNvbnRlbnRXaW5kb3cpLmRvY3VtZW50KX1yZXR1cm4gdH1mdW5jdGlvbiBqcihlKXt2YXIgdD1lJiZlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuIHQmJigiaW5wdXQiPT09dCYmKCJ0ZXh0Ij09PWUudHlwZXx8InNlYXJjaCI9PT1lLnR5cGV8fCJ0ZWwiPT09ZS50eXBlfHwidXJsIj09PWUudHlwZXx8InBhc3N3b3JkIj09PWUudHlwZSl8fCJ0ZXh0YXJlYSI9PT10fHwidHJ1ZSI9PT1lLmNvbnRlbnRFZGl0YWJsZSl9ZnVuY3Rpb24gQXIoZSl7dmFyIHQsbixyLG89T3IoKSxhPWUuZm9jdXNlZEVsZW0saT1lLnNlbGVjdGlvblJhbmdlO2lmKG8hPT1hJiZhJiZhLm93bmVyRG9jdW1lbnQmJmZ1bmN0aW9uIGUodCxuKXtyZXR1cm4hKCF0fHwhbikmJih0PT09bnx8KCF0fHwzIT09dC5ub2RlVHlwZSkmJihuJiYzPT09bi5ub2RlVHlwZT9lKHQsbi5wYXJlbnROb2RlKToiY29udGFpbnMiaW4gdD90LmNvbnRhaW5zKG4pOiEhdC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbiYmISEoMTYmdC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihuKSkpKX0oYS5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxhKSl7bnVsbCE9PWkmJmpyKGEpJiYobz1pLnN0YXJ0LHZvaWQgMD09PShlPWkuZW5kKSYmKGU9byksInNlbGVjdGlvblN0YXJ0ImluIGE/KGEuc2VsZWN0aW9uU3RhcnQ9byxhLnNlbGVjdGlvbkVuZD1NYXRoLm1pbihlLGEudmFsdWUubGVuZ3RoKSk6KGU9KG89YS5vd25lckRvY3VtZW50fHxkb2N1bWVudCkmJm8uZGVmYXVsdFZpZXd8fHdpbmRvdykuZ2V0U2VsZWN0aW9uJiYoZT1lLmdldFNlbGVjdGlvbigpLG49YS50ZXh0Q29udGVudC5sZW5ndGgsdD1NYXRoLm1pbihpLnN0YXJ0LG4pLGk9dm9pZCAwPT09aS5lbmQ/dDpNYXRoLm1pbihpLmVuZCxuKSwhZS5leHRlbmQmJmk8dCYmKG49aSxpPXQsdD1uKSxuPUVyKGEsdCkscj1FcihhLGkpLG4pJiZyJiYoMSE9PWUucmFuZ2VDb3VudHx8ZS5hbmNob3JOb2RlIT09bi5ub2RlfHxlLmFuY2hvck9mZnNldCE9PW4ub2Zmc2V0fHxlLmZvY3VzTm9kZSE9PXIubm9kZXx8ZS5mb2N1c09mZnNldCE9PXIub2Zmc2V0KSYmKChvPW8uY3JlYXRlUmFuZ2UoKSkuc2V0U3RhcnQobi5ub2RlLG4ub2Zmc2V0KSxlLnJlbW92ZUFsbFJhbmdlcygpLGk8dD8oZS5hZGRSYW5nZShvKSxlLmV4dGVuZChyLm5vZGUsci5vZmZzZXQpKTooby5zZXRFbmQoci5ub2RlLHIub2Zmc2V0KSxlLmFkZFJhbmdlKG8pKSkpLG89W107Zm9yKGU9YTtlPWUucGFyZW50Tm9kZTspMT09PWUubm9kZVR5cGUmJm8ucHVzaCh7ZWxlbWVudDplLGxlZnQ6ZS5zY3JvbGxMZWZ0LHRvcDplLnNjcm9sbFRvcH0pO2ZvcigiZnVuY3Rpb24iPT10eXBlb2YgYS5mb2N1cyYmYS5mb2N1cygpLGE9MDthPG8ubGVuZ3RoO2ErKykoZT1vW2FdKS5lbGVtZW50LnNjcm9sbExlZnQ9ZS5sZWZ0LGUuZWxlbWVudC5zY3JvbGxUb3A9ZS50b3B9fXZhciBQcj1SJiYiZG9jdW1lbnRNb2RlImluIGRvY3VtZW50JiZkb2N1bWVudC5kb2N1bWVudE1vZGU8PTExLElyPW51bGwsX3I9bnVsbCx6cj1udWxsLFRyPSExO2Z1bmN0aW9uIExyKGUsdCxuKXt2YXIgcj1uLndpbmRvdz09PW4/bi5kb2N1bWVudDo5PT09bi5ub2RlVHlwZT9uOm4ub3duZXJEb2N1bWVudDtUcnx8bnVsbD09SXJ8fElyIT09Q2Uocil8fChyPSJzZWxlY3Rpb25TdGFydCJpbihyPUlyKSYmanIocik/e3N0YXJ0OnIuc2VsZWN0aW9uU3RhcnQsZW5kOnIuc2VsZWN0aW9uRW5kfTp7YW5jaG9yTm9kZToocj0oci5vd25lckRvY3VtZW50JiZyLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXd8fHdpbmRvdykuZ2V0U2VsZWN0aW9uKCkpLmFuY2hvck5vZGUsYW5jaG9yT2Zmc2V0OnIuYW5jaG9yT2Zmc2V0LGZvY3VzTm9kZTpyLmZvY3VzTm9kZSxmb2N1c09mZnNldDpyLmZvY3VzT2Zmc2V0fSx6ciYmU3IoenIscikpfHwoenI9ciwwPChyPWFvKF9yLCJvblNlbGVjdCIpKS5sZW5ndGgmJih0PW5ldyBMbigib25TZWxlY3QiLCJzZWxlY3QiLG51bGwsdCxuKSxlLnB1c2goe2V2ZW50OnQsbGlzdGVuZXJzOnJ9KSx0LnRhcmdldD1JcikpfWZ1bmN0aW9uIE1yKGUsdCl7dmFyIG49e307cmV0dXJuIG5bZS50b0xvd2VyQ2FzZSgpXT10LnRvTG93ZXJDYXNlKCksblsiV2Via2l0IitlXT0id2Via2l0Iit0LG5bIk1veiIrZV09Im1veiIrdCxufXZhciBScj17YW5pbWF0aW9uZW5kOk1yKCJBbmltYXRpb24iLCJBbmltYXRpb25FbmQiKSxhbmltYXRpb25pdGVyYXRpb246TXIoIkFuaW1hdGlvbiIsIkFuaW1hdGlvbkl0ZXJhdGlvbiIpLGFuaW1hdGlvbnN0YXJ0Ok1yKCJBbmltYXRpb24iLCJBbmltYXRpb25TdGFydCIpLHRyYW5zaXRpb25lbmQ6TXIoIlRyYW5zaXRpb24iLCJUcmFuc2l0aW9uRW5kIil9LE5yPXt9LERyPXt9O2Z1bmN0aW9uIFVyKGUpe2lmKE5yW2VdKXJldHVybiBOcltlXTtpZihScltlXSl7dmFyIHQsbj1ScltlXTtmb3IodCBpbiBuKWlmKG4uaGFzT3duUHJvcGVydHkodCkmJnQgaW4gRHIpcmV0dXJuIE5yW2VdPW5bdF19cmV0dXJuIGV9UiYmKERyPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLnN0eWxlLCJBbmltYXRpb25FdmVudCJpbiB3aW5kb3d8fChkZWxldGUgUnIuYW5pbWF0aW9uZW5kLmFuaW1hdGlvbixkZWxldGUgUnIuYW5pbWF0aW9uaXRlcmF0aW9uLmFuaW1hdGlvbixkZWxldGUgUnIuYW5pbWF0aW9uc3RhcnQuYW5pbWF0aW9uKSwiVHJhbnNpdGlvbkV2ZW50ImluIHdpbmRvd3x8ZGVsZXRlIFJyLnRyYW5zaXRpb25lbmQudHJhbnNpdGlvbik7dmFyIEJyPVVyKCJhbmltYXRpb25lbmQiKSxGcj1VcigiYW5pbWF0aW9uaXRlcmF0aW9uIiksSHI9VXIoImFuaW1hdGlvbnN0YXJ0IiksVnI9VXIoInRyYW5zaXRpb25lbmQiKSwkcj1uZXcgTWFwLFdyPSJhYm9ydCBhdXhDbGljayBjYW5jZWwgY2FuUGxheSBjYW5QbGF5VGhyb3VnaCBjbGljayBjbG9zZSBjb250ZXh0TWVudSBjb3B5IGN1dCBkcmFnIGRyYWdFbmQgZHJhZ0VudGVyIGRyYWdFeGl0IGRyYWdMZWF2ZSBkcmFnT3ZlciBkcmFnU3RhcnQgZHJvcCBkdXJhdGlvbkNoYW5nZSBlbXB0aWVkIGVuY3J5cHRlZCBlbmRlZCBlcnJvciBnb3RQb2ludGVyQ2FwdHVyZSBpbnB1dCBpbnZhbGlkIGtleURvd24ga2V5UHJlc3Mga2V5VXAgbG9hZCBsb2FkZWREYXRhIGxvYWRlZE1ldGFkYXRhIGxvYWRTdGFydCBsb3N0UG9pbnRlckNhcHR1cmUgbW91c2VEb3duIG1vdXNlTW92ZSBtb3VzZU91dCBtb3VzZU92ZXIgbW91c2VVcCBwYXN0ZSBwYXVzZSBwbGF5IHBsYXlpbmcgcG9pbnRlckNhbmNlbCBwb2ludGVyRG93biBwb2ludGVyTW92ZSBwb2ludGVyT3V0IHBvaW50ZXJPdmVyIHBvaW50ZXJVcCBwcm9ncmVzcyByYXRlQ2hhbmdlIHJlc2V0IHJlc2l6ZSBzZWVrZWQgc2Vla2luZyBzdGFsbGVkIHN1Ym1pdCBzdXNwZW5kIHRpbWVVcGRhdGUgdG91Y2hDYW5jZWwgdG91Y2hFbmQgdG91Y2hTdGFydCB2b2x1bWVDaGFuZ2Ugc2Nyb2xsIHRvZ2dsZSB0b3VjaE1vdmUgd2FpdGluZyB3aGVlbCIuc3BsaXQoIiAiKTtmdW5jdGlvbiBHcihlLHQpeyRyLnNldChlLHQpLFYodCxbZV0pfWZvcih2YXIgcXI9MDtxcjxXci5sZW5ndGg7cXIrKyl7dmFyIFpyPVdyW3FyXTtHcihaci50b0xvd2VyQ2FzZSgpLCJvbiIrKFpyWzBdLnRvVXBwZXJDYXNlKCkrWnIuc2xpY2UoMSkpKX1HcihCciwib25BbmltYXRpb25FbmQiKSxHcihGciwib25BbmltYXRpb25JdGVyYXRpb24iKSxHcihIciwib25BbmltYXRpb25TdGFydCIpLEdyKCJkYmxjbGljayIsIm9uRG91YmxlQ2xpY2siKSxHcigiZm9jdXNpbiIsIm9uRm9jdXMiKSxHcigiZm9jdXNvdXQiLCJvbkJsdXIiKSxHcihWciwib25UcmFuc2l0aW9uRW5kIiksJCgib25Nb3VzZUVudGVyIixbIm1vdXNlb3V0IiwibW91c2VvdmVyIl0pLCQoIm9uTW91c2VMZWF2ZSIsWyJtb3VzZW91dCIsIm1vdXNlb3ZlciJdKSwkKCJvblBvaW50ZXJFbnRlciIsWyJwb2ludGVyb3V0IiwicG9pbnRlcm92ZXIiXSksJCgib25Qb2ludGVyTGVhdmUiLFsicG9pbnRlcm91dCIsInBvaW50ZXJvdmVyIl0pLFYoIm9uQ2hhbmdlIiwiY2hhbmdlIGNsaWNrIGZvY3VzaW4gZm9jdXNvdXQgaW5wdXQga2V5ZG93biBrZXl1cCBzZWxlY3Rpb25jaGFuZ2UiLnNwbGl0KCIgIikpLFYoIm9uU2VsZWN0IiwiZm9jdXNvdXQgY29udGV4dG1lbnUgZHJhZ2VuZCBmb2N1c2luIGtleWRvd24ga2V5dXAgbW91c2Vkb3duIG1vdXNldXAgc2VsZWN0aW9uY2hhbmdlIi5zcGxpdCgiICIpKSxWKCJvbkJlZm9yZUlucHV0IixbImNvbXBvc2l0aW9uZW5kIiwia2V5cHJlc3MiLCJ0ZXh0SW5wdXQiLCJwYXN0ZSJdKSxWKCJvbkNvbXBvc2l0aW9uRW5kIiwiY29tcG9zaXRpb25lbmQgZm9jdXNvdXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBtb3VzZWRvd24iLnNwbGl0KCIgIikpLFYoIm9uQ29tcG9zaXRpb25TdGFydCIsImNvbXBvc2l0aW9uc3RhcnQgZm9jdXNvdXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBtb3VzZWRvd24iLnNwbGl0KCIgIikpLFYoIm9uQ29tcG9zaXRpb25VcGRhdGUiLCJjb21wb3NpdGlvbnVwZGF0ZSBmb2N1c291dCBrZXlkb3duIGtleXByZXNzIGtleXVwIG1vdXNlZG93biIuc3BsaXQoIiAiKSk7dmFyIFhyPSJhYm9ydCBjYW5wbGF5IGNhbnBsYXl0aHJvdWdoIGR1cmF0aW9uY2hhbmdlIGVtcHRpZWQgZW5jcnlwdGVkIGVuZGVkIGVycm9yIGxvYWRlZGRhdGEgbG9hZGVkbWV0YWRhdGEgbG9hZHN0YXJ0IHBhdXNlIHBsYXkgcGxheWluZyBwcm9ncmVzcyByYXRlY2hhbmdlIHJlc2l6ZSBzZWVrZWQgc2Vla2luZyBzdGFsbGVkIHN1c3BlbmQgdGltZXVwZGF0ZSB2b2x1bWVjaGFuZ2Ugd2FpdGluZyIuc3BsaXQoIiAiKSxZcj1uZXcgU2V0KCJjYW5jZWwgY2xvc2UgaW52YWxpZCBsb2FkIHNjcm9sbCB0b2dnbGUiLnNwbGl0KCIgIikuY29uY2F0KFhyKSk7ZnVuY3Rpb24gUXIoZSx0LG4pe3ZhciByPWUudHlwZXx8InVua25vd24tZXZlbnQiO2UuY3VycmVudFRhcmdldD1uLGZ1bmN0aW9uKCl7dmFyIGU7aHQuYXBwbHkodGhpcyxhcmd1bWVudHMpLHN0JiYoZT1mdCxzdD0hMSxmdD1udWxsLGR0fHwoZHQ9ITAscHQ9ZSkpfShyLHQsdm9pZCAwLGUpLGUuY3VycmVudFRhcmdldD1udWxsfWZ1bmN0aW9uIEtyKGUsdCl7dD0wIT0oNCZ0KTtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIHI9KG89ZVtuXSkuZXZlbnQsbz1vLmxpc3RlbmVycztlOnt2YXIgYT12b2lkIDA7aWYodClmb3IodmFyIGk9by5sZW5ndGgtMTswPD1pO2ktLSl7dmFyIGw9KHU9b1tpXSkuaW5zdGFuY2UsYz11LmN1cnJlbnRUYXJnZXQsdT11Lmxpc3RlbmVyO2lmKGwhPT1hJiZyLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpYnJlYWsgZTtRcihyLHUsYyksYT1sfWVsc2UgZm9yKGk9MDtpPG8ubGVuZ3RoO2krKyl7aWYobD0odT1vW2ldKS5pbnN0YW5jZSxjPXUuY3VycmVudFRhcmdldCx1PXUubGlzdGVuZXIsbCE9PWEmJnIuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSlicmVhayBlO1FyKHIsdSxjKSxhPWx9fX1pZihkdCl0aHJvdyBlPXB0LGR0PSExLHB0PW51bGwsZX1mdW5jdGlvbiBzKGUsdCl7dmFyIG49dFtBb10scj1lKyJfX2J1YmJsZSI7KG49dm9pZCAwPT09bj90W0FvXT1uZXcgU2V0Om4pLmhhcyhyKXx8KG5vKHQsZSwyLCExKSxuLmFkZChyKSl9ZnVuY3Rpb24gSnIoZSx0LG4pe3ZhciByPTA7dCYmKHJ8PTQpLG5vKG4sZSxyLHQpfXZhciBlbz0iX3JlYWN0TGlzdGVuaW5nIitNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKTtmdW5jdGlvbiB0byh0KXt2YXIgZTt0W2VvXXx8KHRbZW9dPSEwLEYuZm9yRWFjaChmdW5jdGlvbihlKXsic2VsZWN0aW9uY2hhbmdlIiE9PWUmJihZci5oYXMoZSl8fEpyKGUsITEsdCksSnIoZSwhMCx0KSl9KSxudWxsPT09KGU9OT09PXQubm9kZVR5cGU/dDp0Lm93bmVyRG9jdW1lbnQpKXx8ZVtlb118fEpyKCJzZWxlY3Rpb25jaGFuZ2UiLCEoZVtlb109ITApLGUpfWZ1bmN0aW9uIG5vKGUsdCxuLHIpe3N3aXRjaChrbih0KSl7Y2FzZSAxOnZhciBvPWJuO2JyZWFrO2Nhc2UgNDpvPXluO2JyZWFrO2RlZmF1bHQ6bz12bn1uPW8uYmluZChudWxsLHQsbixlKSxvPSF1dHx8InRvdWNoc3RhcnQiIT09dCYmInRvdWNobW92ZSIhPT10JiYid2hlZWwiIT09dD92b2lkIDA6ITAscj92b2lkIDAhPT1vP2UuYWRkRXZlbnRMaXN0ZW5lcih0LG4se2NhcHR1cmU6ITAscGFzc2l2ZTpvfSk6ZS5hZGRFdmVudExpc3RlbmVyKHQsbiwhMCk6dm9pZCAwIT09bz9lLmFkZEV2ZW50TGlzdGVuZXIodCxuLHtwYXNzaXZlOm99KTplLmFkZEV2ZW50TGlzdGVuZXIodCxuLCExKX1mdW5jdGlvbiBybyhnLGIseSxlLHQpe3ZhciB2PWU7aWYoMD09KDEmYikmJjA9PSgyJmIpJiZudWxsIT09ZSllOmZvcig7Oyl7aWYobnVsbD09PWUpcmV0dXJuO3ZhciBuPWUudGFnO2lmKDM9PT1ufHw0PT09bil7dmFyIHI9ZS5zdGF0ZU5vZGUuY29udGFpbmVySW5mbztpZihyPT09dHx8OD09PXIubm9kZVR5cGUmJnIucGFyZW50Tm9kZT09PXQpYnJlYWs7aWYoND09PW4pZm9yKG49ZS5yZXR1cm47bnVsbCE9PW47KXt2YXIgbz1uLnRhZztpZigoMz09PW98fDQ9PT1vKSYmKChvPW4uc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pPT09dHx8OD09PW8ubm9kZVR5cGUmJm8ucGFyZW50Tm9kZT09PXQpKXJldHVybjtuPW4ucmV0dXJufWZvcig7bnVsbCE9PXI7KXtpZihudWxsPT09KG49X28ocikpKXJldHVybjtpZig1PT09KG89bi50YWcpfHw2PT09byl7ZT12PW47Y29udGludWUgZX1yPXIucGFyZW50Tm9kZX19ZT1lLnJldHVybn1sdChmdW5jdGlvbigpe3ZhciBlLHQsbixyPXYsbz1RZSh5KSxhPVtdO2U6e3ZhciBpPSRyLmdldChnKTtpZih2b2lkIDAhPT1pKXt2YXIgbD1MbixjPWc7c3dpdGNoKGcpe2Nhc2Uia2V5cHJlc3MiOmlmKDA9PT1qbih5KSlicmVhayBlO2Nhc2Uia2V5ZG93biI6Y2FzZSJrZXl1cCI6bD1xbjticmVhaztjYXNlImZvY3VzaW4iOmM9ImZvY3VzIixsPURuO2JyZWFrO2Nhc2UiZm9jdXNvdXQiOmM9ImJsdXIiLGw9RG47YnJlYWs7Y2FzZSJiZWZvcmVibHVyIjpjYXNlImFmdGVyYmx1ciI6bD1EbjticmVhaztjYXNlImNsaWNrIjppZigyPT09eS5idXR0b24pYnJlYWsgZTtjYXNlImF1eGNsaWNrIjpjYXNlImRibGNsaWNrIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJtb3VzZW1vdmUiOmNhc2UibW91c2V1cCI6Y2FzZSJtb3VzZW91dCI6Y2FzZSJtb3VzZW92ZXIiOmNhc2UiY29udGV4dG1lbnUiOmw9Um47YnJlYWs7Y2FzZSJkcmFnIjpjYXNlImRyYWdlbmQiOmNhc2UiZHJhZ2VudGVyIjpjYXNlImRyYWdleGl0IjpjYXNlImRyYWdsZWF2ZSI6Y2FzZSJkcmFnb3ZlciI6Y2FzZSJkcmFnc3RhcnQiOmNhc2UiZHJvcCI6bD1ObjticmVhaztjYXNlInRvdWNoY2FuY2VsIjpjYXNlInRvdWNoZW5kIjpjYXNlInRvdWNobW92ZSI6Y2FzZSJ0b3VjaHN0YXJ0IjpsPVhuO2JyZWFrO2Nhc2UgQnI6Y2FzZSBGcjpjYXNlIEhyOmw9VW47YnJlYWs7Y2FzZSBWcjpsPVluO2JyZWFrO2Nhc2Uic2Nyb2xsIjpsPU1uO2JyZWFrO2Nhc2Uid2hlZWwiOmw9UW47YnJlYWs7Y2FzZSJjb3B5IjpjYXNlImN1dCI6Y2FzZSJwYXN0ZSI6bD1CbjticmVhaztjYXNlImdvdHBvaW50ZXJjYXB0dXJlIjpjYXNlImxvc3Rwb2ludGVyY2FwdHVyZSI6Y2FzZSJwb2ludGVyY2FuY2VsIjpjYXNlInBvaW50ZXJkb3duIjpjYXNlInBvaW50ZXJtb3ZlIjpjYXNlInBvaW50ZXJvdXQiOmNhc2UicG9pbnRlcm92ZXIiOmNhc2UicG9pbnRlcnVwIjpsPVpufWZvcih2YXIgdT0hKGY9MCE9KDQmYikpJiYic2Nyb2xsIj09PWcscz1mP251bGwhPT1pP2krIkNhcHR1cmUiOm51bGw6aSxmPVtdLGQ9cjtudWxsIT09ZDspe3ZhciBwLG09KHA9ZCkuc3RhdGVOb2RlO2lmKDU9PT1wLnRhZyYmbnVsbCE9PW0mJihwPW0sbnVsbCE9PXMpJiZudWxsIT0obT1jdChkLHMpKSYmZi5wdXNoKG9vKGQsbSxwKSksdSlicmVhaztkPWQucmV0dXJufTA8Zi5sZW5ndGgmJihpPW5ldyBsKGksYyxudWxsLHksbyksYS5wdXNoKHtldmVudDppLGxpc3RlbmVyczpmfSkpfX1pZigwPT0oNyZiKSl7aWYobD0ibW91c2VvdXQiPT09Z3x8InBvaW50ZXJvdXQiPT09ZywoIShpPSJtb3VzZW92ZXIiPT09Z3x8InBvaW50ZXJvdmVyIj09PWcpfHx5PT09WWV8fCEoYz15LnJlbGF0ZWRUYXJnZXR8fHkuZnJvbUVsZW1lbnQpfHwhX28oYykmJiFjW2pvXSkmJihsfHxpKSYmKGk9by53aW5kb3c9PT1vP286KGk9by5vd25lckRvY3VtZW50KT9pLmRlZmF1bHRWaWV3fHxpLnBhcmVudFdpbmRvdzp3aW5kb3csbD8obD1yLG51bGwhPT0oYz0oYz15LnJlbGF0ZWRUYXJnZXR8fHkudG9FbGVtZW50KT9fbyhjKTpudWxsKSYmKGMhPT0odT1ndChjKSl8fDUhPT1jLnRhZyYmNiE9PWMudGFnKSYmKGM9bnVsbCkpOihsPW51bGwsYz1yKSxsIT09Yykpe2lmKGY9Um4sbT0ib25Nb3VzZUxlYXZlIixzPSJvbk1vdXNlRW50ZXIiLGQ9Im1vdXNlIiwicG9pbnRlcm91dCIhPT1nJiYicG9pbnRlcm92ZXIiIT09Z3x8KGY9Wm4sbT0ib25Qb2ludGVyTGVhdmUiLHM9Im9uUG9pbnRlckVudGVyIixkPSJwb2ludGVyIiksdT1udWxsPT1sP2k6VG8obCkscD1udWxsPT1jP2k6VG8oYyksKGk9bmV3IGYobSxkKyJsZWF2ZSIsbCx5LG8pKS50YXJnZXQ9dSxpLnJlbGF0ZWRUYXJnZXQ9cCxtPW51bGwsX28obyk9PT1yJiYoKGY9bmV3IGYocyxkKyJlbnRlciIsYyx5LG8pKS50YXJnZXQ9cCxmLnJlbGF0ZWRUYXJnZXQ9dSxtPWYpLHU9bSxsJiZjKWU6e2ZvcihzPWMsZD0wLHA9Zj1sO3A7cD1pbyhwKSlkKys7Zm9yKHA9MCxtPXM7bTttPWlvKG0pKXArKztmb3IoOzA8ZC1wOylmPWlvKGYpLGQtLTtmb3IoOzA8cC1kOylzPWlvKHMpLHAtLTtmb3IoO2QtLTspe2lmKGY9PT1zfHxudWxsIT09cyYmZj09PXMuYWx0ZXJuYXRlKWJyZWFrIGU7Zj1pbyhmKSxzPWlvKHMpfWY9bnVsbH1lbHNlIGY9bnVsbDtudWxsIT09bCYmbG8oYSxpLGwsZiwhMSksbnVsbCE9PWMmJm51bGwhPT11JiZsbyhhLHUsYyxmLCEwKX1zd2l0Y2goInNlbGVjdCI9PT0obD0oaT1yP1RvKHIpOndpbmRvdykubm9kZU5hbWUmJmkubm9kZU5hbWUudG9Mb3dlckNhc2UoKSl8fCJpbnB1dCI9PT1sJiYiZmlsZSI9PT1pLnR5cGU/ZT1tcjpjcihpKT9ocj9lPXhyOihlPXZyLHQ9eXIpOiEobD1pLm5vZGVOYW1lKXx8ImlucHV0IiE9PWwudG9Mb3dlckNhc2UoKXx8ImNoZWNrYm94IiE9PWkudHlwZSYmInJhZGlvIiE9PWkudHlwZXx8KGU9d3IpLChlPWUmJmUoZyxyKSk/dXIoYSxlLHksbyk6KHQmJnQoZyxpLHIpLCJmb2N1c291dCI9PT1nJiYodD1pLl93cmFwcGVyU3RhdGUpJiZ0LmNvbnRyb2xsZWQmJiJudW1iZXIiPT09aS50eXBlJiZJZShpLCJudW1iZXIiLGkudmFsdWUpKSx0PXI/VG8ocik6d2luZG93LGcpe2Nhc2UiZm9jdXNpbiI6IWNyKHQpJiYidHJ1ZSIhPT10LmNvbnRlbnRFZGl0YWJsZXx8KElyPXQsX3I9cix6cj1udWxsKTticmVhaztjYXNlImZvY3Vzb3V0Ijp6cj1fcj1Jcj1udWxsO2JyZWFrO2Nhc2UibW91c2Vkb3duIjpUcj0hMDticmVhaztjYXNlImNvbnRleHRtZW51IjpjYXNlIm1vdXNldXAiOmNhc2UiZHJhZ2VuZCI6VHI9ITEsTHIoYSx5LG8pO2JyZWFrO2Nhc2Uic2VsZWN0aW9uY2hhbmdlIjppZihQcilicmVhaztjYXNlImtleWRvd24iOmNhc2Uia2V5dXAiOkxyKGEseSxvKX1pZihKbillOntzd2l0Y2goZyl7Y2FzZSJjb21wb3NpdGlvbnN0YXJ0Ijp2YXIgaD0ib25Db21wb3NpdGlvblN0YXJ0IjticmVhayBlO2Nhc2UiY29tcG9zaXRpb25lbmQiOmg9Im9uQ29tcG9zaXRpb25FbmQiO2JyZWFrIGU7Y2FzZSJjb21wb3NpdGlvbnVwZGF0ZSI6aD0ib25Db21wb3NpdGlvblVwZGF0ZSI7YnJlYWsgZX1oPXZvaWQgMH1lbHNlIGlyP29yKGcseSkmJihoPSJvbkNvbXBvc2l0aW9uRW5kIik6ImtleWRvd24iPT09ZyYmMjI5PT09eS5rZXlDb2RlJiYoaD0ib25Db21wb3NpdGlvblN0YXJ0Iik7aCYmKHRyJiYia28iIT09eS5sb2NhbGUmJihpcnx8Im9uQ29tcG9zaXRpb25TdGFydCIhPT1oPyJvbkNvbXBvc2l0aW9uRW5kIj09PWgmJmlyJiYobj1PbigpKTooQ249InZhbHVlImluKFNuPW8pP1NuLnZhbHVlOlNuLnRleHRDb250ZW50LGlyPSEwKSksMDwodD1hbyhyLGgpKS5sZW5ndGgpJiYoaD1uZXcgRm4oaCxnLG51bGwseSxvKSxhLnB1c2goe2V2ZW50OmgsbGlzdGVuZXJzOnR9KSxufHxudWxsIT09KG49YXIoeSkpKSYmKGguZGF0YT1uKSwobj0oZXI/ZnVuY3Rpb24oZSx0KXtzd2l0Y2goZSl7Y2FzZSJjb21wb3NpdGlvbmVuZCI6cmV0dXJuIGFyKHQpO2Nhc2Uia2V5cHJlc3MiOnJldHVybiAzMiE9PXQud2hpY2g/bnVsbDoocnI9ITAsbnIpO2Nhc2UidGV4dElucHV0IjpyZXR1cm4oZT10LmRhdGEpPT09bnImJnJyP251bGw6ZTtkZWZhdWx0OnJldHVybiBudWxsfX06ZnVuY3Rpb24oZSx0KXtpZihpcilyZXR1cm4iY29tcG9zaXRpb25lbmQiPT09ZXx8IUpuJiZvcihlLHQpPyhlPU9uKCksRW49Q249U249bnVsbCxpcj0hMSxlKTpudWxsO3N3aXRjaChlKXtjYXNlInBhc3RlIjpyZXR1cm4gbnVsbDtjYXNlImtleXByZXNzIjppZighKHQuY3RybEtleXx8dC5hbHRLZXl8fHQubWV0YUtleSl8fHQuY3RybEtleSYmdC5hbHRLZXkpe2lmKHQuY2hhciYmMTx0LmNoYXIubGVuZ3RoKXJldHVybiB0LmNoYXI7aWYodC53aGljaClyZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZSh0LndoaWNoKX1yZXR1cm4gbnVsbDtjYXNlImNvbXBvc2l0aW9uZW5kIjpyZXR1cm4gdHImJiJrbyIhPT10LmxvY2FsZT9udWxsOnQuZGF0YTtkZWZhdWx0OnJldHVybiBudWxsfX0pKGcseSkpJiYwPChyPWFvKHIsIm9uQmVmb3JlSW5wdXQiKSkubGVuZ3RoJiYobz1uZXcgRm4oIm9uQmVmb3JlSW5wdXQiLCJiZWZvcmVpbnB1dCIsbnVsbCx5LG8pLGEucHVzaCh7ZXZlbnQ6byxsaXN0ZW5lcnM6cn0pLG8uZGF0YT1uKX1LcihhLGIpfSl9ZnVuY3Rpb24gb28oZSx0LG4pe3JldHVybntpbnN0YW5jZTplLGxpc3RlbmVyOnQsY3VycmVudFRhcmdldDpufX1mdW5jdGlvbiBhbyhlLHQpe2Zvcih2YXIgbj10KyJDYXB0dXJlIixyPVtdO251bGwhPT1lOyl7dmFyIG89ZSxhPW8uc3RhdGVOb2RlOzU9PT1vLnRhZyYmbnVsbCE9PWEmJihvPWEsbnVsbCE9KGE9Y3QoZSxuKSkmJnIudW5zaGlmdChvbyhlLGEsbykpLG51bGwhPShhPWN0KGUsdCkpKSYmci5wdXNoKG9vKGUsYSxvKSksZT1lLnJldHVybn1yZXR1cm4gcn1mdW5jdGlvbiBpbyhlKXtpZihudWxsPT09ZSlyZXR1cm4gbnVsbDtmb3IoOyhlPWUucmV0dXJuKSYmNSE9PWUudGFnOyk7cmV0dXJuIGV8fG51bGx9ZnVuY3Rpb24gbG8oZSx0LG4scixvKXtmb3IodmFyIGE9dC5fcmVhY3ROYW1lLGk9W107bnVsbCE9PW4mJm4hPT1yOyl7dmFyIGw9bixjPWwuYWx0ZXJuYXRlLHU9bC5zdGF0ZU5vZGU7aWYobnVsbCE9PWMmJmM9PT1yKWJyZWFrOzU9PT1sLnRhZyYmbnVsbCE9PXUmJihsPXUsbz9udWxsIT0oYz1jdChuLGEpKSYmaS51bnNoaWZ0KG9vKG4sYyxsKSk6bnVsbCE9KGM9Y3QobixhKSkmJmkucHVzaChvbyhuLGMsbCkpKSxuPW4ucmV0dXJufTAhPT1pLmxlbmd0aCYmZS5wdXNoKHtldmVudDp0LGxpc3RlbmVyczppfSl9dmFyIGNvPS9cclxuPy9nLHVvPS9cdTAwMDB8XHVGRkZEL2c7ZnVuY3Rpb24gc28oZSl7cmV0dXJuKCJzdHJpbmciPT10eXBlb2YgZT9lOiIiK2UpLnJlcGxhY2UoY28sIlxuIikucmVwbGFjZSh1bywiIil9ZnVuY3Rpb24gZm8oZSx0LG4pe2lmKHQ9c28odCksc28oZSkhPT10JiZuKXRocm93IEVycm9yKEQoNDI1KSl9ZnVuY3Rpb24gcG8oKXt9dmFyIG1vPW51bGwsaG89bnVsbDtmdW5jdGlvbiBnbyhlLHQpe3JldHVybiJ0ZXh0YXJlYSI9PT1lfHwibm9zY3JpcHQiPT09ZXx8InN0cmluZyI9PXR5cGVvZiB0LmNoaWxkcmVufHwibnVtYmVyIj09dHlwZW9mIHQuY2hpbGRyZW58fCJvYmplY3QiPT10eXBlb2YgdC5kYW5nZXJvdXNseVNldElubmVySFRNTCYmbnVsbCE9PXQuZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwmJm51bGwhPXQuZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwuX19odG1sfXZhciBibz0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0OnZvaWQgMCx5bz0iZnVuY3Rpb24iPT10eXBlb2YgY2xlYXJUaW1lb3V0P2NsZWFyVGltZW91dDp2b2lkIDAsdm89ImZ1bmN0aW9uIj09dHlwZW9mIFByb21pc2U/UHJvbWlzZTp2b2lkIDAsd289ImZ1bmN0aW9uIj09dHlwZW9mIHF1ZXVlTWljcm90YXNrP3F1ZXVlTWljcm90YXNrOnZvaWQgMCE9PXZvP2Z1bmN0aW9uKGUpe3JldHVybiB2by5yZXNvbHZlKG51bGwpLnRoZW4oZSkuY2F0Y2goeG8pfTpibztmdW5jdGlvbiB4byhlKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dGhyb3cgZX0pfWZ1bmN0aW9uIGtvKGUsdCl7dmFyIG49dCxyPTA7ZG97dmFyIG89bi5uZXh0U2libGluZztpZihlLnJlbW92ZUNoaWxkKG4pLG8mJjg9PT1vLm5vZGVUeXBlKWlmKCIvJCI9PT0obj1vLmRhdGEpKXtpZigwPT09cilyZXR1cm4gZS5yZW1vdmVDaGlsZChvKSx2b2lkIG1uKHQpO3ItLX1lbHNlIiQiIT09biYmIiQ/IiE9PW4mJiIkISIhPT1ufHxyKyt9d2hpbGUobj1vKTttbih0KX1mdW5jdGlvbiBTbyhlKXtmb3IoO251bGwhPWU7ZT1lLm5leHRTaWJsaW5nKXt2YXIgdD1lLm5vZGVUeXBlO2lmKDE9PT10fHwzPT09dClicmVhaztpZig4PT09dCl7aWYoIiQiPT09KHQ9ZS5kYXRhKXx8IiQhIj09PXR8fCIkPyI9PT10KWJyZWFrO2lmKCIvJCI9PT10KXJldHVybiBudWxsfX1yZXR1cm4gZX1mdW5jdGlvbiBDbyhlKXtlPWUucHJldmlvdXNTaWJsaW5nO2Zvcih2YXIgdD0wO2U7KXtpZig4PT09ZS5ub2RlVHlwZSl7dmFyIG49ZS5kYXRhO2lmKCIkIj09PW58fCIkISI9PT1ufHwiJD8iPT09bil7aWYoMD09PXQpcmV0dXJuIGU7dC0tfWVsc2UiLyQiPT09biYmdCsrfWU9ZS5wcmV2aW91c1NpYmxpbmd9cmV0dXJuIG51bGx9dmFyIHI9TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc2xpY2UoMiksRW89Il9fcmVhY3RGaWJlciQiK3IsT289Il9fcmVhY3RQcm9wcyQiK3Isam89Il9fcmVhY3RDb250YWluZXIkIityLEFvPSJfX3JlYWN0RXZlbnRzJCIrcixQbz0iX19yZWFjdExpc3RlbmVycyQiK3IsSW89Il9fcmVhY3RIYW5kbGVzJCIrcjtmdW5jdGlvbiBfbyhlKXt2YXIgdD1lW0VvXTtpZih0KXJldHVybiB0O2Zvcih2YXIgbj1lLnBhcmVudE5vZGU7bjspe2lmKHQ9bltqb118fG5bRW9dKXtpZihuPXQuYWx0ZXJuYXRlLG51bGwhPT10LmNoaWxkfHxudWxsIT09biYmbnVsbCE9PW4uY2hpbGQpZm9yKGU9Q28oZSk7bnVsbCE9PWU7KXtpZihuPWVbRW9dKXJldHVybiBuO2U9Q28oZSl9cmV0dXJuIHR9bj0oZT1uKS5wYXJlbnROb2RlfXJldHVybiBudWxsfWZ1bmN0aW9uIHpvKGUpe3JldHVybiEoZT1lW0VvXXx8ZVtqb10pfHw1IT09ZS50YWcmJjYhPT1lLnRhZyYmMTMhPT1lLnRhZyYmMyE9PWUudGFnP251bGw6ZX1mdW5jdGlvbiBUbyhlKXtpZig1PT09ZS50YWd8fDY9PT1lLnRhZylyZXR1cm4gZS5zdGF0ZU5vZGU7dGhyb3cgRXJyb3IoRCgzMykpfWZ1bmN0aW9uIExvKGUpe3JldHVybiBlW09vXXx8bnVsbH12YXIgTW89W10sUm89LTE7ZnVuY3Rpb24gTm8oZSl7cmV0dXJue2N1cnJlbnQ6ZX19ZnVuY3Rpb24gdShlKXtSbzwwfHwoZS5jdXJyZW50PU1vW1JvXSxNb1tSb109bnVsbCxSby0tKX1mdW5jdGlvbiBiKGUsdCl7TW9bKytSb109ZS5jdXJyZW50LGUuY3VycmVudD10fXZhciBEbz17fSx5PU5vKERvKSx2PU5vKCExKSxVbz1EbztmdW5jdGlvbiBCbyhlLHQpe3ZhciBuPWUudHlwZS5jb250ZXh0VHlwZXM7aWYoIW4pcmV0dXJuIERvO3ZhciByPWUuc3RhdGVOb2RlO2lmKHImJnIuX19yZWFjdEludGVybmFsTWVtb2l6ZWRVbm1hc2tlZENoaWxkQ29udGV4dD09PXQpcmV0dXJuIHIuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNYXNrZWRDaGlsZENvbnRleHQ7dmFyIG8sYT17fTtmb3IobyBpbiBuKWFbb109dFtvXTtyZXR1cm4gciYmKChlPWUuc3RhdGVOb2RlKS5fX3JlYWN0SW50ZXJuYWxNZW1vaXplZFVubWFza2VkQ2hpbGRDb250ZXh0PXQsZS5fX3JlYWN0SW50ZXJuYWxNZW1vaXplZE1hc2tlZENoaWxkQ29udGV4dD1hKSxhfWZ1bmN0aW9uIHcoZSl7cmV0dXJuIG51bGwhPShlPWUuY2hpbGRDb250ZXh0VHlwZXMpfWZ1bmN0aW9uIEZvKCl7dSh2KSx1KHkpfWZ1bmN0aW9uIEhvKGUsdCxuKXtpZih5LmN1cnJlbnQhPT1Ebyl0aHJvdyBFcnJvcihEKDE2OCkpO2IoeSx0KSxiKHYsbil9ZnVuY3Rpb24gVm8oZSx0LG4pe3ZhciByLG89ZS5zdGF0ZU5vZGU7aWYodD10LmNoaWxkQ29udGV4dFR5cGVzLCJmdW5jdGlvbiIhPXR5cGVvZiBvLmdldENoaWxkQ29udGV4dClyZXR1cm4gbjtmb3IociBpbiBvPW8uZ2V0Q2hpbGRDb250ZXh0KCkpaWYoIShyIGluIHQpKXRocm93IEVycm9yKEQoMTA4LHZlKGUpfHwiVW5rbm93biIscikpO3JldHVybiBnKHt9LG4sbyl9ZnVuY3Rpb24gJG8oZSl7ZT0oZT1lLnN0YXRlTm9kZSkmJmUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNZXJnZWRDaGlsZENvbnRleHR8fERvLFVvPXkuY3VycmVudCxiKHksZSksYih2LHYuY3VycmVudCl9ZnVuY3Rpb24gV28oZSx0LG4pe3ZhciByPWUuc3RhdGVOb2RlO2lmKCFyKXRocm93IEVycm9yKEQoMTY5KSk7bj8oZT1WbyhlLHQsVW8pLHIuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNZXJnZWRDaGlsZENvbnRleHQ9ZSx1KHYpLHUoeSksYih5LGUpKTp1KHYpLGIodixuKX12YXIgR289bnVsbCxxbz0hMSxabz0hMTtmdW5jdGlvbiBYbyhlKXtudWxsPT09R28/R289W2VdOkdvLnB1c2goZSl9ZnVuY3Rpb24gWW8oKXtpZighWm8mJm51bGwhPT1Hbyl7Wm89ITA7dmFyIHQ9MCxlPXg7dHJ5e3ZhciBuPUdvO2Zvcih4PTE7dDxuLmxlbmd0aDt0KyspZm9yKHZhciByPW5bdF07bnVsbCE9PShyPXIoITApKTspO0dvPW51bGwscW89ITF9Y2F0Y2goZSl7dGhyb3cgbnVsbCE9PUdvJiYoR289R28uc2xpY2UodCsxKSksd3QoRXQsWW8pLGV9ZmluYWxseXt4PWUsWm89ITF9fXJldHVybiBudWxsfXZhciBRbz1bXSxLbz0wLEpvPW51bGwsZWE9MCx0YT1bXSxuYT0wLHJhPW51bGwsb2E9MSxhYT0iIjtmdW5jdGlvbiBpYShlLHQpe1FvW0tvKytdPWVhLFFvW0tvKytdPUpvLEpvPWUsZWE9dH1mdW5jdGlvbiBsYShlLHQsbil7dGFbbmErK109b2EsdGFbbmErK109YWEsdGFbbmErK109cmEscmE9ZTt2YXIgcixvPW9hLGE9KGU9YWEsMzItenQobyktMSksaT0obyY9figxPDxhKSxuKz0xLDMyLXp0KHQpK2EpO2FhPTMwPGk/KGk9KG8mKDE8PChyPWEtYSU1KSktMSkudG9TdHJpbmcoMzIpLG8+Pj1yLGEtPXIsb2E9MTw8MzItenQodCkrYXxuPDxhfG8saStlKToob2E9MTw8aXxuPDxhfG8sZSl9ZnVuY3Rpb24gY2EoZSl7bnVsbCE9PWUucmV0dXJuJiYoaWEoZSwxKSxsYShlLDEsMCkpfWZ1bmN0aW9uIHVhKGUpe2Zvcig7ZT09PUpvOylKbz1Rb1stLUtvXSxRb1tLb109bnVsbCxlYT1Rb1stLUtvXSxRb1tLb109bnVsbDtmb3IoO2U9PT1yYTspcmE9dGFbLS1uYV0sdGFbbmFdPW51bGwsYWE9dGFbLS1uYV0sdGFbbmFdPW51bGwsb2E9dGFbLS1uYV0sdGFbbmFdPW51bGx9dmFyIHNhPW51bGwsaz1udWxsLFU9ITEsZmE9bnVsbDtmdW5jdGlvbiBkYShlLHQpe3ZhciBuPW51KDUsbnVsbCxudWxsLDApO24uZWxlbWVudFR5cGU9IkRFTEVURUQiLG4uc3RhdGVOb2RlPXQsbnVsbD09PSh0PShuLnJldHVybj1lKS5kZWxldGlvbnMpPyhlLmRlbGV0aW9ucz1bbl0sZS5mbGFnc3w9MTYpOnQucHVzaChuKX1mdW5jdGlvbiBwYShlLHQpe3N3aXRjaChlLnRhZyl7Y2FzZSA1OnZhciBuPWUudHlwZTtyZXR1cm4gbnVsbCE9PSh0PTEhPT10Lm5vZGVUeXBlfHxuLnRvTG93ZXJDYXNlKCkhPT10Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk/bnVsbDp0KSYmKGUuc3RhdGVOb2RlPXQsc2E9ZSxrPVNvKHQuZmlyc3RDaGlsZCksMSk7Y2FzZSA2OnJldHVybiBudWxsIT09KHQ9IiI9PT1lLnBlbmRpbmdQcm9wc3x8MyE9PXQubm9kZVR5cGU/bnVsbDp0KSYmKGUuc3RhdGVOb2RlPXQsc2E9ZSxrPW51bGwsMSk7Y2FzZSAxMzpyZXR1cm4gbnVsbCE9PSh0PTghPT10Lm5vZGVUeXBlP251bGw6dCkmJihuPW51bGwhPT1yYT97aWQ6b2Esb3ZlcmZsb3c6YWF9Om51bGwsZS5tZW1vaXplZFN0YXRlPXtkZWh5ZHJhdGVkOnQsdHJlZUNvbnRleHQ6bixyZXRyeUxhbmU6MTA3Mzc0MTgyNH0sKG49bnUoMTgsbnVsbCxudWxsLDApKS5zdGF0ZU5vZGU9dCwobi5yZXR1cm49ZSkuY2hpbGQ9bixzYT1lLGs9bnVsbCwxKTtkZWZhdWx0OnJldHVybn19ZnVuY3Rpb24gbWEoZSl7cmV0dXJuIDAhPSgxJmUubW9kZSkmJjA9PSgxMjgmZS5mbGFncyl9ZnVuY3Rpb24gaGEoZSl7aWYoVSlpZihrKXt2YXIgdD1rO2lmKCFwYShlLGspKXtpZihtYShlKSl0aHJvdyBFcnJvcihEKDQxOCkpO3ZhciBuPVNvKHQubmV4dFNpYmxpbmcpLHI9c2E7biYmcGEoZSxuKT9kYShyLHQpOihlLmZsYWdzPS00MDk3JmUuZmxhZ3N8MixVPSExLHNhPWUpfX1lbHNle2lmKG1hKGUpKXRocm93IEVycm9yKEQoNDE4KSk7ZS5mbGFncz0tNDA5NyZlLmZsYWdzfDIsVT0hMSxzYT1lfX1mdW5jdGlvbiBnYShlKXtmb3IoZT1lLnJldHVybjtudWxsIT09ZSYmNSE9PWUudGFnJiYzIT09ZS50YWcmJjEzIT09ZS50YWc7KWU9ZS5yZXR1cm47c2E9ZX1mdW5jdGlvbiBiYShlKXtpZihlIT09c2EpcmV0dXJuITE7aWYoIVUpcmV0dXJuIGdhKGUpLCEoVT0hMCk7dmFyIHQ7aWYodD0odD0odD0zIT09ZS50YWcpJiYhKHQ9NSE9PWUudGFnKT8iaGVhZCIhPT0odD1lLnR5cGUpJiYiYm9keSIhPT10JiYhZ28oZS50eXBlLGUubWVtb2l6ZWRQcm9wcyk6dCkmJmspe2lmKG1hKGUpKXRocm93IHlhKCksRXJyb3IoRCg0MTgpKTtmb3IoO3Q7KWRhKGUsdCksdD1Tbyh0Lm5leHRTaWJsaW5nKX1pZihnYShlKSwxMz09PWUudGFnKXtpZighKGU9bnVsbCE9PShlPWUubWVtb2l6ZWRTdGF0ZSk/ZS5kZWh5ZHJhdGVkOm51bGwpKXRocm93IEVycm9yKEQoMzE3KSk7ZTp7Zm9yKGU9ZS5uZXh0U2libGluZyx0PTA7ZTspe2lmKDg9PT1lLm5vZGVUeXBlKXt2YXIgbj1lLmRhdGE7aWYoIi8kIj09PW4pe2lmKDA9PT10KXtrPVNvKGUubmV4dFNpYmxpbmcpO2JyZWFrIGV9dC0tfWVsc2UiJCIhPT1uJiYiJCEiIT09biYmIiQ/IiE9PW58fHQrK31lPWUubmV4dFNpYmxpbmd9az1udWxsfX1lbHNlIGs9c2E/U28oZS5zdGF0ZU5vZGUubmV4dFNpYmxpbmcpOm51bGw7cmV0dXJuITB9ZnVuY3Rpb24geWEoKXtmb3IodmFyIGU9aztlOyllPVNvKGUubmV4dFNpYmxpbmcpfWZ1bmN0aW9uIHZhKCl7az1zYT1udWxsLFU9ITF9ZnVuY3Rpb24gd2EoZSl7bnVsbD09PWZhP2ZhPVtlXTpmYS5wdXNoKGUpfXZhciB4YT1KLlJlYWN0Q3VycmVudEJhdGNoQ29uZmlnO2Z1bmN0aW9uIGthKGUsdCl7aWYoZSYmZS5kZWZhdWx0UHJvcHMpZm9yKHZhciBuIGluIHQ9Zyh7fSx0KSxlPWUuZGVmYXVsdFByb3BzKXZvaWQgMD09PXRbbl0mJih0W25dPWVbbl0pO3JldHVybiB0fXZhciBTYT1ObyhudWxsKSxDYT1udWxsLEVhPW51bGwsT2E9bnVsbDtmdW5jdGlvbiBqYSgpe09hPUVhPUNhPW51bGx9ZnVuY3Rpb24gQWEoZSl7dmFyIHQ9U2EuY3VycmVudDt1KFNhKSxlLl9jdXJyZW50VmFsdWU9dH1mdW5jdGlvbiBQYShlLHQsbil7Zm9yKDtudWxsIT09ZTspe3ZhciByPWUuYWx0ZXJuYXRlO2lmKChlLmNoaWxkTGFuZXMmdCkhPT10PyhlLmNoaWxkTGFuZXN8PXQsbnVsbCE9PXImJihyLmNoaWxkTGFuZXN8PXQpKTpudWxsIT09ciYmKHIuY2hpbGRMYW5lcyZ0KSE9PXQmJihyLmNoaWxkTGFuZXN8PXQpLGU9PT1uKWJyZWFrO2U9ZS5yZXR1cm59fWZ1bmN0aW9uIElhKGUsdCl7KE9hPUVhPW51bGwpIT09KGU9KENhPWUpLmRlcGVuZGVuY2llcykmJm51bGwhPT1lLmZpcnN0Q29udGV4dCYmKDAhPShlLmxhbmVzJnQpJiYoaj0hMCksZS5maXJzdENvbnRleHQ9bnVsbCl9ZnVuY3Rpb24gX2EoZSl7dmFyIHQ9ZS5fY3VycmVudFZhbHVlO2lmKE9hIT09ZSlpZihlPXtjb250ZXh0OmUsbWVtb2l6ZWRWYWx1ZTp0LG5leHQ6bnVsbH0sbnVsbD09PUVhKXtpZihudWxsPT09Q2EpdGhyb3cgRXJyb3IoRCgzMDgpKTtFYT1lLENhLmRlcGVuZGVuY2llcz17bGFuZXM6MCxmaXJzdENvbnRleHQ6ZX19ZWxzZSBFYT1FYS5uZXh0PWU7cmV0dXJuIHR9dmFyIHphPW51bGw7ZnVuY3Rpb24gVGEoZSl7bnVsbD09PXphP3phPVtlXTp6YS5wdXNoKGUpfWZ1bmN0aW9uIExhKGUsdCxuLHIpe3ZhciBvPXQuaW50ZXJsZWF2ZWQ7cmV0dXJuIG51bGw9PT1vPyhuLm5leHQ9bixUYSh0KSk6KG4ubmV4dD1vLm5leHQsby5uZXh0PW4pLHQuaW50ZXJsZWF2ZWQ9bixNYShlLHIpfWZ1bmN0aW9uIE1hKGUsdCl7ZS5sYW5lc3w9dDt2YXIgbj1lLmFsdGVybmF0ZTtmb3IobnVsbCE9PW4mJihuLmxhbmVzfD10KSxlPShuPWUpLnJldHVybjtudWxsIT09ZTspZS5jaGlsZExhbmVzfD10LG51bGwhPT0obj1lLmFsdGVybmF0ZSkmJihuLmNoaWxkTGFuZXN8PXQpLGU9KG49ZSkucmV0dXJuO3JldHVybiAzPT09bi50YWc/bi5zdGF0ZU5vZGU6bnVsbH12YXIgUmE9ITE7ZnVuY3Rpb24gTmEoZSl7ZS51cGRhdGVRdWV1ZT17YmFzZVN0YXRlOmUubWVtb2l6ZWRTdGF0ZSxmaXJzdEJhc2VVcGRhdGU6bnVsbCxsYXN0QmFzZVVwZGF0ZTpudWxsLHNoYXJlZDp7cGVuZGluZzpudWxsLGludGVybGVhdmVkOm51bGwsbGFuZXM6MH0sZWZmZWN0czpudWxsfX1mdW5jdGlvbiBEYShlLHQpe2U9ZS51cGRhdGVRdWV1ZSx0LnVwZGF0ZVF1ZXVlPT09ZSYmKHQudXBkYXRlUXVldWU9e2Jhc2VTdGF0ZTplLmJhc2VTdGF0ZSxmaXJzdEJhc2VVcGRhdGU6ZS5maXJzdEJhc2VVcGRhdGUsbGFzdEJhc2VVcGRhdGU6ZS5sYXN0QmFzZVVwZGF0ZSxzaGFyZWQ6ZS5zaGFyZWQsZWZmZWN0czplLmVmZmVjdHN9KX1mdW5jdGlvbiBVYShlLHQpe3JldHVybntldmVudFRpbWU6ZSxsYW5lOnQsdGFnOjAscGF5bG9hZDpudWxsLGNhbGxiYWNrOm51bGwsbmV4dDpudWxsfX1mdW5jdGlvbiBCYShlLHQsbil7dmFyIHIsbz1lLnVwZGF0ZVF1ZXVlO3JldHVybiBudWxsPT09bz9udWxsOihvPW8uc2hhcmVkLDAhPSgyJl8pPyhudWxsPT09KHI9by5wZW5kaW5nKT90Lm5leHQ9dDoodC5uZXh0PXIubmV4dCxyLm5leHQ9dCksby5wZW5kaW5nPXQpOihudWxsPT09KHI9by5pbnRlcmxlYXZlZCk/KHQubmV4dD10LFRhKG8pKToodC5uZXh0PXIubmV4dCxyLm5leHQ9dCksby5pbnRlcmxlYXZlZD10KSxNYShlLG4pKX1mdW5jdGlvbiBGYShlLHQsbil7dmFyIHI7bnVsbCE9PSh0PXQudXBkYXRlUXVldWUpJiYodD10LnNoYXJlZCwwIT0oNDE5NDI0MCZuKSkmJihyPXQubGFuZXMsciY9ZS5wZW5kaW5nTGFuZXMsJHQoZSx0LmxhbmVzPW58PXIpKX1mdW5jdGlvbiBIYShlLHQpe3ZhciBuPWUudXBkYXRlUXVldWUscj1lLmFsdGVybmF0ZTtpZihudWxsIT09ciYmbj09PShyPXIudXBkYXRlUXVldWUpKXt2YXIgbz1udWxsLGE9bnVsbDtpZihudWxsIT09KG49bi5maXJzdEJhc2VVcGRhdGUpKXtkb3t2YXIgaT17ZXZlbnRUaW1lOm4uZXZlbnRUaW1lLGxhbmU6bi5sYW5lLHRhZzpuLnRhZyxwYXlsb2FkOm4ucGF5bG9hZCxjYWxsYmFjazpuLmNhbGxiYWNrLG5leHQ6bnVsbH19d2hpbGUobnVsbD09PWE/bz1hPWk6YT1hLm5leHQ9aSxudWxsIT09KG49bi5uZXh0KSk7bnVsbD09PWE/bz1hPXQ6YT1hLm5leHQ9dH1lbHNlIG89YT10O249e2Jhc2VTdGF0ZTpyLmJhc2VTdGF0ZSxmaXJzdEJhc2VVcGRhdGU6byxsYXN0QmFzZVVwZGF0ZTphLHNoYXJlZDpyLnNoYXJlZCxlZmZlY3RzOnIuZWZmZWN0c30sZS51cGRhdGVRdWV1ZT1ufWVsc2UgbnVsbD09PShlPW4ubGFzdEJhc2VVcGRhdGUpP24uZmlyc3RCYXNlVXBkYXRlPXQ6ZS5uZXh0PXQsbi5sYXN0QmFzZVVwZGF0ZT10fWZ1bmN0aW9uIFZhKGUsdCxuLHIpe3ZhciBvLGEsaT1lLnVwZGF0ZVF1ZXVlLGw9KFJhPSExLGkuZmlyc3RCYXNlVXBkYXRlKSxjPWkubGFzdEJhc2VVcGRhdGU7aWYobnVsbCE9PShmPWkuc2hhcmVkLnBlbmRpbmcpJiYoaS5zaGFyZWQucGVuZGluZz1udWxsLGE9KG89ZikubmV4dCwoby5uZXh0PW51bGwpPT09Yz9sPWE6Yy5uZXh0PWEsYz1vLG51bGwhPT0ocz1lLmFsdGVybmF0ZSkpJiYoZj0ocz1zLnVwZGF0ZVF1ZXVlKS5sYXN0QmFzZVVwZGF0ZSkhPT1jJiYobnVsbD09PWY/cy5maXJzdEJhc2VVcGRhdGU9YTpmLm5leHQ9YSxzLmxhc3RCYXNlVXBkYXRlPW8pLG51bGwhPT1sKXtmb3IodmFyIHU9aS5iYXNlU3RhdGUsYz0wLHM9YT1vPW51bGwsZj1sOzspe3ZhciBkPWYubGFuZSxwPWYuZXZlbnRUaW1lO2lmKChyJmQpPT09ZCl7bnVsbCE9PXMmJihzPXMubmV4dD17ZXZlbnRUaW1lOnAsbGFuZTowLHRhZzpmLnRhZyxwYXlsb2FkOmYucGF5bG9hZCxjYWxsYmFjazpmLmNhbGxiYWNrLG5leHQ6bnVsbH0pO2U6e3ZhciBtPWUsaD1mLGQ9dCxwPW47c3dpdGNoKGgudGFnKXtjYXNlIDE6aWYoImZ1bmN0aW9uIj09dHlwZW9mKG09aC5wYXlsb2FkKSl7dT1tLmNhbGwocCx1LGQpO2JyZWFrIGV9dT1tO2JyZWFrIGU7Y2FzZSAzOm0uZmxhZ3M9LTY1NTM3Jm0uZmxhZ3N8MTI4O2Nhc2UgMDppZihudWxsPT0oZD0iZnVuY3Rpb24iPT10eXBlb2YobT1oLnBheWxvYWQpP20uY2FsbChwLHUsZCk6bSkpYnJlYWsgZTt1PWcoe30sdSxkKTticmVhayBlO2Nhc2UgMjpSYT0hMH19bnVsbCE9PWYuY2FsbGJhY2smJjAhPT1mLmxhbmUmJihlLmZsYWdzfD02NCxudWxsPT09KGQ9aS5lZmZlY3RzKT9pLmVmZmVjdHM9W2ZdOmQucHVzaChmKSl9ZWxzZSBwPXtldmVudFRpbWU6cCxsYW5lOmQsdGFnOmYudGFnLHBheWxvYWQ6Zi5wYXlsb2FkLGNhbGxiYWNrOmYuY2FsbGJhY2ssbmV4dDpudWxsfSxudWxsPT09cz8oYT1zPXAsbz11KTpzPXMubmV4dD1wLGN8PWQ7aWYobnVsbD09PShmPWYubmV4dCkpe2lmKG51bGw9PT0oZj1pLnNoYXJlZC5wZW5kaW5nKSlicmVhaztmPShkPWYpLm5leHQsZC5uZXh0PW51bGwsaS5sYXN0QmFzZVVwZGF0ZT1kLGkuc2hhcmVkLnBlbmRpbmc9bnVsbH19aWYobnVsbD09PXMmJihvPXUpLGkuYmFzZVN0YXRlPW8saS5maXJzdEJhc2VVcGRhdGU9YSxpLmxhc3RCYXNlVXBkYXRlPXMsbnVsbCE9PSh0PWkuc2hhcmVkLmludGVybGVhdmVkKSlmb3IoaT10O2N8PWkubGFuZSwoaT1pLm5leHQpIT09dDspO2Vsc2UgbnVsbD09PWwmJihpLnNoYXJlZC5sYW5lcz0wKTtoY3w9YyxlLmxhbmVzPWMsZS5tZW1vaXplZFN0YXRlPXV9fWZ1bmN0aW9uICRhKGUsdCxuKXtpZihlPXQuZWZmZWN0cywodC5lZmZlY3RzPW51bGwpIT09ZSlmb3IodD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgcj1lW3RdLG89ci5jYWxsYmFjaztpZihudWxsIT09byl7aWYoci5jYWxsYmFjaz1udWxsLHI9biwiZnVuY3Rpb24iIT10eXBlb2Ygbyl0aHJvdyBFcnJvcihEKDE5MSxvKSk7by5jYWxsKHIpfX19dmFyIFdhPShuZXcgTi5Db21wb25lbnQpLnJlZnM7ZnVuY3Rpb24gR2EoZSx0LG4scil7bj1udWxsPT0obj1uKHIsdD1lLm1lbW9pemVkU3RhdGUpKT90Omcoe30sdCxuKSxlLm1lbW9pemVkU3RhdGU9biwwPT09ZS5sYW5lcyYmKGUudXBkYXRlUXVldWUuYmFzZVN0YXRlPW4pfXZhciBxYT17aXNNb3VudGVkOmZ1bmN0aW9uKGUpe3JldHVybiEhKGU9ZS5fcmVhY3RJbnRlcm5hbHMpJiZndChlKT09PWV9LGVucXVldWVTZXRTdGF0ZTpmdW5jdGlvbihlLHQsbil7ZT1lLl9yZWFjdEludGVybmFsczt2YXIgcj1tKCksbz16YyhlKSxhPVVhKHIsbyk7YS5wYXlsb2FkPXQsbnVsbCE9biYmKGEuY2FsbGJhY2s9biksbnVsbCE9PSh0PUJhKGUsYSxvKSkmJihUYyh0LGUsbyxyKSxGYSh0LGUsbykpfSxlbnF1ZXVlUmVwbGFjZVN0YXRlOmZ1bmN0aW9uKGUsdCxuKXtlPWUuX3JlYWN0SW50ZXJuYWxzO3ZhciByPW0oKSxvPXpjKGUpLGE9VWEocixvKTthLnRhZz0xLGEucGF5bG9hZD10LG51bGwhPW4mJihhLmNhbGxiYWNrPW4pLG51bGwhPT0odD1CYShlLGEsbykpJiYoVGModCxlLG8sciksRmEodCxlLG8pKX0sZW5xdWV1ZUZvcmNlVXBkYXRlOmZ1bmN0aW9uKGUsdCl7ZT1lLl9yZWFjdEludGVybmFsczt2YXIgbj1tKCkscj16YyhlKSxvPVVhKG4scik7by50YWc9MixudWxsIT10JiYoby5jYWxsYmFjaz10KSxudWxsIT09KHQ9QmEoZSxvLHIpKSYmKFRjKHQsZSxyLG4pLEZhKHQsZSxyKSl9fTtmdW5jdGlvbiBaYShlLHQsbixyLG8sYSxpKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YoZT1lLnN0YXRlTm9kZSkuc2hvdWxkQ29tcG9uZW50VXBkYXRlP2Uuc2hvdWxkQ29tcG9uZW50VXBkYXRlKHIsYSxpKTohKHQucHJvdG90eXBlJiZ0LnByb3RvdHlwZS5pc1B1cmVSZWFjdENvbXBvbmVudCYmU3IobixyKSYmU3IobyxhKSl9ZnVuY3Rpb24gWGEoZSx0LG4pe3ZhciByPSExLG89RG8sYT10LmNvbnRleHRUeXBlO3Q9bmV3IHQobixhPSJvYmplY3QiPT10eXBlb2YgYSYmbnVsbCE9PWE/X2EoYSk6KG89dyh0KT9Vbzp5LmN1cnJlbnQsKHI9bnVsbCE9KHI9dC5jb250ZXh0VHlwZXMpKT9CbyhlLG8pOkRvKSksZS5tZW1vaXplZFN0YXRlPW51bGwhPT10LnN0YXRlJiZ2b2lkIDAhPT10LnN0YXRlP3Quc3RhdGU6bnVsbCx0LnVwZGF0ZXI9cWEsKGUuc3RhdGVOb2RlPXQpLl9yZWFjdEludGVybmFscz1lLHImJigoZT1lLnN0YXRlTm9kZSkuX19yZWFjdEludGVybmFsTWVtb2l6ZWRVbm1hc2tlZENoaWxkQ29udGV4dD1vLGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNYXNrZWRDaGlsZENvbnRleHQ9YSl9ZnVuY3Rpb24gWWEoZSx0LG4scil7ZT10LnN0YXRlLCJmdW5jdGlvbiI9PXR5cGVvZiB0LmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJnQuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyhuLHIpLCJmdW5jdGlvbiI9PXR5cGVvZiB0LlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzJiZ0LlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzKG4sciksdC5zdGF0ZSE9PWUmJnFhLmVucXVldWVSZXBsYWNlU3RhdGUodCx0LnN0YXRlLG51bGwpfWZ1bmN0aW9uIFFhKGUsdCxuLHIpe3ZhciBvPWUuc3RhdGVOb2RlLGE9KG8ucHJvcHM9bixvLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSxvLnJlZnM9V2EsTmEoZSksdC5jb250ZXh0VHlwZSk7Im9iamVjdCI9PXR5cGVvZiBhJiZudWxsIT09YT9vLmNvbnRleHQ9X2EoYSk6KGE9dyh0KT9Vbzp5LmN1cnJlbnQsby5jb250ZXh0PUJvKGUsYSkpLG8uc3RhdGU9ZS5tZW1vaXplZFN0YXRlLCJmdW5jdGlvbiI9PXR5cGVvZihhPXQuZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKSYmKEdhKGUsMCxhLG4pLG8uc3RhdGU9ZS5tZW1vaXplZFN0YXRlKSwiZnVuY3Rpb24iPT10eXBlb2YgdC5nZXREZXJpdmVkU3RhdGVGcm9tUHJvcHN8fCJmdW5jdGlvbiI9PXR5cGVvZiBvLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlfHwiZnVuY3Rpb24iIT10eXBlb2Ygby5VTlNBRkVfY29tcG9uZW50V2lsbE1vdW50JiYiZnVuY3Rpb24iIT10eXBlb2Ygby5jb21wb25lbnRXaWxsTW91bnR8fCh0PW8uc3RhdGUsImZ1bmN0aW9uIj09dHlwZW9mIG8uY29tcG9uZW50V2lsbE1vdW50JiZvLmNvbXBvbmVudFdpbGxNb3VudCgpLCJmdW5jdGlvbiI9PXR5cGVvZiBvLlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQmJm8uVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCgpLHQhPT1vLnN0YXRlJiZxYS5lbnF1ZXVlUmVwbGFjZVN0YXRlKG8sby5zdGF0ZSxudWxsKSxWYShlLG4sbyxyKSxvLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSksImZ1bmN0aW9uIj09dHlwZW9mIG8uY29tcG9uZW50RGlkTW91bnQmJihlLmZsYWdzfD00MTk0MzA4KX1mdW5jdGlvbiBLYShlLHQsbil7aWYobnVsbCE9PShlPW4ucmVmKSYmImZ1bmN0aW9uIiE9dHlwZW9mIGUmJiJvYmplY3QiIT10eXBlb2YgZSl7aWYobi5fb3duZXIpe2lmKG49bi5fb3duZXIpe2lmKDEhPT1uLnRhZyl0aHJvdyBFcnJvcihEKDMwOSkpO3ZhciByPW4uc3RhdGVOb2RlfXZhciBvLGE7aWYocilyZXR1cm4gbz1yLGE9IiIrZSxudWxsIT09dCYmbnVsbCE9PXQucmVmJiYiZnVuY3Rpb24iPT10eXBlb2YgdC5yZWYmJnQucmVmLl9zdHJpbmdSZWY9PT1hP3QucmVmOigodD1mdW5jdGlvbihlKXt2YXIgdD1vLnJlZnM7dD09PVdhJiYodD1vLnJlZnM9e30pLG51bGw9PT1lP2RlbGV0ZSB0W2FdOnRbYV09ZX0pLl9zdHJpbmdSZWY9YSx0KTt0aHJvdyBFcnJvcihEKDE0NyxlKSl9aWYoInN0cmluZyIhPXR5cGVvZiBlKXRocm93IEVycm9yKEQoMjg0KSk7aWYoIW4uX293bmVyKXRocm93IEVycm9yKEQoMjkwLGUpKX1yZXR1cm4gZX1mdW5jdGlvbiBKYShlLHQpe3Rocm93IGU9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpLEVycm9yKEQoMzEsIltvYmplY3QgT2JqZWN0XSI9PT1lPyJvYmplY3Qgd2l0aCBrZXlzIHsiK09iamVjdC5rZXlzKHQpLmpvaW4oIiwgIikrIn0iOmUpKX1mdW5jdGlvbiBlaShlKXtyZXR1cm4oMCxlLl9pbml0KShlLl9wYXlsb2FkKX1mdW5jdGlvbiB0aShBKXtmdW5jdGlvbiBQKGUsdCl7dmFyIG47QSYmKG51bGw9PT0obj1lLmRlbGV0aW9ucyk/KGUuZGVsZXRpb25zPVt0XSxlLmZsYWdzfD0xNik6bi5wdXNoKHQpKX1mdW5jdGlvbiBJKGUsdCl7aWYoQSlmb3IoO251bGwhPT10OylQKGUsdCksdD10LnNpYmxpbmc7cmV0dXJuIG51bGx9ZnVuY3Rpb24gXyhlLHQpe2ZvcihlPW5ldyBNYXA7bnVsbCE9PXQ7KW51bGwhPT10LmtleT9lLnNldCh0LmtleSx0KTplLnNldCh0LmluZGV4LHQpLHQ9dC5zaWJsaW5nO3JldHVybiBlfWZ1bmN0aW9uIHooZSx0KXtyZXR1cm4oZT1vdShlLHQpKS5pbmRleD0wLGUuc2libGluZz1udWxsLGV9ZnVuY3Rpb24gVChlLHQsbil7aWYoZS5pbmRleD1uLEEpe2lmKG51bGwhPT0obj1lLmFsdGVybmF0ZSkpcmV0dXJuKG49bi5pbmRleCk8dD8oZS5mbGFnc3w9Mix0KTpuO2UuZmxhZ3N8PTJ9ZWxzZSBlLmZsYWdzfD0xMDQ4NTc2O3JldHVybiB0fWZ1bmN0aW9uIEwoZSl7cmV0dXJuIEEmJm51bGw9PT1lLmFsdGVybmF0ZSYmKGUuZmxhZ3N8PTIpLGV9ZnVuY3Rpb24gYShlLHQsbixyKXtyZXR1cm4gbnVsbD09PXR8fDYhPT10LnRhZz8odD1jdShuLGUubW9kZSxyKSkucmV0dXJuPWU6KHQ9eih0LG4pKS5yZXR1cm49ZSx0fWZ1bmN0aW9uIGkoZSx0LG4scil7dmFyIG89bi50eXBlO3JldHVybiBvPT09bmU/YyhlLHQsbi5wcm9wcy5jaGlsZHJlbixyLG4ua2V5KToobnVsbCE9PXQmJih0LmVsZW1lbnRUeXBlPT09b3x8Im9iamVjdCI9PXR5cGVvZiBvJiZudWxsIT09byYmby4kJHR5cGVvZj09PWZlJiZlaShvKT09PXQudHlwZSk/KHI9eih0LG4ucHJvcHMpKS5yZWY9S2EoMCx0LG4pOihyPWF1KG4udHlwZSxuLmtleSxuLnByb3BzLG51bGwsZS5tb2RlLHIpKS5yZWY9S2EoMCx0LG4pLHIucmV0dXJuPWUscil9ZnVuY3Rpb24gbChlLHQsbixyKXtyZXR1cm4gbnVsbD09PXR8fDQhPT10LnRhZ3x8dC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyE9PW4uY29udGFpbmVySW5mb3x8dC5zdGF0ZU5vZGUuaW1wbGVtZW50YXRpb24hPT1uLmltcGxlbWVudGF0aW9uPyh0PXV1KG4sZS5tb2RlLHIpKS5yZXR1cm49ZToodD16KHQsbi5jaGlsZHJlbnx8W10pKS5yZXR1cm49ZSx0fWZ1bmN0aW9uIGMoZSx0LG4scixvKXtyZXR1cm4gbnVsbD09PXR8fDchPT10LnRhZz8odD1pdShuLGUubW9kZSxyLG8pKS5yZXR1cm49ZToodD16KHQsbikpLnJldHVybj1lLHR9ZnVuY3Rpb24gTShlLHQsbil7aWYoInN0cmluZyI9PXR5cGVvZiB0JiYiIiE9PXR8fCJudW1iZXIiPT10eXBlb2YgdClyZXR1cm4odD1jdSgiIit0LGUubW9kZSxuKSkucmV0dXJuPWUsdDtpZigib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10KXtzd2l0Y2godC4kJHR5cGVvZil7Y2FzZSBlZTpyZXR1cm4obj1hdSh0LnR5cGUsdC5rZXksdC5wcm9wcyxudWxsLGUubW9kZSxuKSkucmVmPUthKDAsbnVsbCx0KSxuLnJldHVybj1lLG47Y2FzZSB0ZTpyZXR1cm4odD11dSh0LGUubW9kZSxuKSkucmV0dXJuPWUsdDtjYXNlIGZlOnJldHVybiBNKGUsKDAsdC5faW5pdCkodC5fcGF5bG9hZCksbil9aWYoX2UodCl8fG1lKHQpKXJldHVybih0PWl1KHQsZS5tb2RlLG4sbnVsbCkpLnJldHVybj1lLHQ7SmEoMCx0KX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBSKGUsdCxuLHIpe3ZhciBvPW51bGwhPT10P3Qua2V5Om51bGw7aWYoInN0cmluZyI9PXR5cGVvZiBuJiYiIiE9PW58fCJudW1iZXIiPT10eXBlb2YgbilyZXR1cm4gbnVsbCE9PW8/bnVsbDphKGUsdCwiIituLHIpO2lmKCJvYmplY3QiPT10eXBlb2YgbiYmbnVsbCE9PW4pe3N3aXRjaChuLiQkdHlwZW9mKXtjYXNlIGVlOnJldHVybiBuLmtleT09PW8/aShlLHQsbixyKTpudWxsO2Nhc2UgdGU6cmV0dXJuIG4ua2V5PT09bz9sKGUsdCxuLHIpOm51bGw7Y2FzZSBmZTpyZXR1cm4gUihlLHQsKG89bi5faW5pdCkobi5fcGF5bG9hZCkscil9aWYoX2Uobil8fG1lKG4pKXJldHVybiBudWxsIT09bz9udWxsOmMoZSx0LG4scixudWxsKTtKYSgwLG4pfXJldHVybiBudWxsfWZ1bmN0aW9uIE4oZSx0LG4scixvKXtpZigic3RyaW5nIj09dHlwZW9mIHImJiIiIT09cnx8Im51bWJlciI9PXR5cGVvZiByKXJldHVybiBhKHQsZT1lLmdldChuKXx8bnVsbCwiIityLG8pO2lmKCJvYmplY3QiPT10eXBlb2YgciYmbnVsbCE9PXIpe3N3aXRjaChyLiQkdHlwZW9mKXtjYXNlIGVlOnJldHVybiBpKHQsZT1lLmdldChudWxsPT09ci5rZXk/bjpyLmtleSl8fG51bGwscixvKTtjYXNlIHRlOnJldHVybiBsKHQsZT1lLmdldChudWxsPT09ci5rZXk/bjpyLmtleSl8fG51bGwscixvKTtjYXNlIGZlOnJldHVybiBOKGUsdCxuLCgwLHIuX2luaXQpKHIuX3BheWxvYWQpLG8pfWlmKF9lKHIpfHxtZShyKSlyZXR1cm4gYyh0LGU9ZS5nZXQobil8fG51bGwscixvLG51bGwpO0phKDAscil9cmV0dXJuIG51bGx9cmV0dXJuIGZ1bmN0aW9uIGUodCxuLHIsbyl7aWYoIm9iamVjdCI9PXR5cGVvZihyPSJvYmplY3QiPT10eXBlb2YgciYmbnVsbCE9PXImJnIudHlwZT09PW5lJiZudWxsPT09ci5rZXk/ci5wcm9wcy5jaGlsZHJlbjpyKSYmbnVsbCE9PXIpe3N3aXRjaChyLiQkdHlwZW9mKXtjYXNlIGVlOmU6e2Zvcih2YXIgYT1yLmtleSxpPW47bnVsbCE9PWk7KXtpZihpLmtleT09PWEpe2lmKChhPXIudHlwZSk9PT1uZSl7aWYoNz09PWkudGFnKXtJKHQsaS5zaWJsaW5nKSwobj16KGksci5wcm9wcy5jaGlsZHJlbikpLnJldHVybj10LHQ9bjticmVhayBlfX1lbHNlIGlmKGkuZWxlbWVudFR5cGU9PT1hfHwib2JqZWN0Ij09dHlwZW9mIGEmJm51bGwhPT1hJiZhLiQkdHlwZW9mPT09ZmUmJmVpKGEpPT09aS50eXBlKXtJKHQsaS5zaWJsaW5nKSwobj16KGksci5wcm9wcykpLnJlZj1LYSgwLGksciksbi5yZXR1cm49dCx0PW47YnJlYWsgZX1JKHQsaSk7YnJlYWt9UCh0LGkpLGk9aS5zaWJsaW5nfXQ9ci50eXBlPT09bmU/KChuPWl1KHIucHJvcHMuY2hpbGRyZW4sdC5tb2RlLG8sci5rZXkpKS5yZXR1cm49dCxuKTooKG89YXUoci50eXBlLHIua2V5LHIucHJvcHMsbnVsbCx0Lm1vZGUsbykpLnJlZj1LYSgwLG4sciksby5yZXR1cm49dCxvKX1yZXR1cm4gTCh0KTtjYXNlIHRlOmU6e2ZvcihpPXIua2V5O251bGwhPT1uOyl7aWYobi5rZXk9PT1pKXtpZig0PT09bi50YWcmJm4uc3RhdGVOb2RlLmNvbnRhaW5lckluZm89PT1yLmNvbnRhaW5lckluZm8mJm4uc3RhdGVOb2RlLmltcGxlbWVudGF0aW9uPT09ci5pbXBsZW1lbnRhdGlvbil7SSh0LG4uc2libGluZyksKG49eihuLHIuY2hpbGRyZW58fFtdKSkucmV0dXJuPXQsdD1uO2JyZWFrIGV9SSh0LG4pO2JyZWFrfVAodCxuKSxuPW4uc2libGluZ30obj11dShyLHQubW9kZSxvKSkucmV0dXJuPXQsdD1ufXJldHVybiBMKHQpO2Nhc2UgZmU6cmV0dXJuIGUodCxuLChpPXIuX2luaXQpKHIuX3BheWxvYWQpLG8pfWlmKF9lKHIpKXtmb3IodmFyIGw9dCxjPW4sdT1yLHM9byxmPW51bGwsZD1udWxsLHA9YyxtPWM9MCxoPW51bGw7bnVsbCE9PXAmJm08dS5sZW5ndGg7bSsrKXtwLmluZGV4Pm0/KGg9cCxwPW51bGwpOmg9cC5zaWJsaW5nO3ZhciBnPVIobCxwLHVbbV0scyk7aWYobnVsbD09PWcpe251bGw9PT1wJiYocD1oKTticmVha31BJiZwJiZudWxsPT09Zy5hbHRlcm5hdGUmJlAobCxwKSxjPVQoZyxjLG0pLG51bGw9PT1kP2Y9ZzpkLnNpYmxpbmc9ZyxkPWcscD1ofWlmKG09PT11Lmxlbmd0aClJKGwscCk7ZWxzZSBpZihudWxsPT09cClmb3IoO208dS5sZW5ndGg7bSsrKW51bGwhPT0ocD1NKGwsdVttXSxzKSkmJihjPVQocCxjLG0pLG51bGw9PT1kP2Y9cDpkLnNpYmxpbmc9cCxkPXApO2Vsc2V7Zm9yKHA9XyhsLHApO208dS5sZW5ndGg7bSsrKW51bGwhPT0oaD1OKHAsbCxtLHVbbV0scykpJiYoQSYmbnVsbCE9PWguYWx0ZXJuYXRlJiZwLmRlbGV0ZShudWxsPT09aC5rZXk/bTpoLmtleSksYz1UKGgsYyxtKSxudWxsPT09ZD9mPWg6ZC5zaWJsaW5nPWgsZD1oKTtBJiZwLmZvckVhY2goZnVuY3Rpb24oZSl7cmV0dXJuIFAobCxlKX0pfXJldHVybiBVJiZpYShsLG0pLGZ9aWYobWUocikpe3ZhciBiPXQseT1uLHY9cix3PW8seD1tZSh2KTtpZigiZnVuY3Rpb24iIT10eXBlb2YgeCl0aHJvdyBFcnJvcihEKDE1MCkpO2lmKG51bGw9PSh2PXguY2FsbCh2KSkpdGhyb3cgRXJyb3IoRCgxNTEpKTtmb3IodmFyIGs9eD1udWxsLFM9eSxDPXk9MCxFPW51bGwsTz12Lm5leHQoKTtudWxsIT09UyYmIU8uZG9uZTtDKyssTz12Lm5leHQoKSl7Uy5pbmRleD5DPyhFPVMsUz1udWxsKTpFPVMuc2libGluZzt2YXIgaj1SKGIsUyxPLnZhbHVlLHcpO2lmKG51bGw9PT1qKXtudWxsPT09UyYmKFM9RSk7YnJlYWt9QSYmUyYmbnVsbD09PWouYWx0ZXJuYXRlJiZQKGIsUykseT1UKGoseSxDKSxudWxsPT09az94PWo6ay5zaWJsaW5nPWosaz1qLFM9RX1pZihPLmRvbmUpSShiLFMpO2Vsc2UgaWYobnVsbD09PVMpZm9yKDshTy5kb25lO0MrKyxPPXYubmV4dCgpKW51bGwhPT0oTz1NKGIsTy52YWx1ZSx3KSkmJih5PVQoTyx5LEMpLG51bGw9PT1rP3g9TzprLnNpYmxpbmc9TyxrPU8pO2Vsc2V7Zm9yKFM9XyhiLFMpOyFPLmRvbmU7QysrLE89di5uZXh0KCkpbnVsbCE9PShPPU4oUyxiLEMsTy52YWx1ZSx3KSkmJihBJiZudWxsIT09Ty5hbHRlcm5hdGUmJlMuZGVsZXRlKG51bGw9PT1PLmtleT9DOk8ua2V5KSx5PVQoTyx5LEMpLG51bGw9PT1rP3g9TzprLnNpYmxpbmc9TyxrPU8pO0EmJlMuZm9yRWFjaChmdW5jdGlvbihlKXtyZXR1cm4gUChiLGUpfSl9cmV0dXJuIFUmJmlhKGIsQykseH1KYSgwLHIpfXJldHVybiJzdHJpbmciPT10eXBlb2YgciYmIiIhPT1yfHwibnVtYmVyIj09dHlwZW9mIHI/KHI9IiIrciwobj1udWxsIT09biYmNj09PW4udGFnPyhJKHQsbi5zaWJsaW5nKSx6KG4scikpOihJKHQsbiksY3Uocix0Lm1vZGUsbykpKS5yZXR1cm49dCxMKHQ9bikpOkkodCxuKX19dmFyIG5pPXRpKCEwKSxyaT10aSghMSksb2k9e30sYWk9Tm8ob2kpLGlpPU5vKG9pKSxsaT1ObyhvaSk7ZnVuY3Rpb24gY2koZSl7aWYoZT09PW9pKXRocm93IEVycm9yKEQoMTc0KSk7cmV0dXJuIGV9ZnVuY3Rpb24gdWkoZSx0KXtzd2l0Y2goYihsaSx0KSxiKGlpLGUpLGIoYWksb2kpLGU9dC5ub2RlVHlwZSl7Y2FzZSA5OmNhc2UgMTE6dD0odD10LmRvY3VtZW50RWxlbWVudCk/dC5uYW1lc3BhY2VVUkk6RGUobnVsbCwiIik7YnJlYWs7ZGVmYXVsdDp0PURlKHQ9KGU9OD09PWU/dC5wYXJlbnROb2RlOnQpLm5hbWVzcGFjZVVSSXx8bnVsbCxlPWUudGFnTmFtZSl9dShhaSksYihhaSx0KX1mdW5jdGlvbiBzaSgpe3UoYWkpLHUoaWkpLHUobGkpfWZ1bmN0aW9uIGZpKGUpe2NpKGxpLmN1cnJlbnQpO3ZhciB0PWNpKGFpLmN1cnJlbnQpLG49RGUodCxlLnR5cGUpO3QhPT1uJiYoYihpaSxlKSxiKGFpLG4pKX1mdW5jdGlvbiBkaShlKXtpaS5jdXJyZW50PT09ZSYmKHUoYWkpLHUoaWkpKX12YXIgUz1ObygwKTtmdW5jdGlvbiBwaShlKXtmb3IodmFyIHQ9ZTtudWxsIT09dDspe2lmKDEzPT09dC50YWcpe3ZhciBuPXQubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09biYmKG51bGw9PT0obj1uLmRlaHlkcmF0ZWQpfHwiJD8iPT09bi5kYXRhfHwiJCEiPT09bi5kYXRhKSlyZXR1cm4gdH1lbHNlIGlmKDE5PT09dC50YWcmJnZvaWQgMCE9PXQubWVtb2l6ZWRQcm9wcy5yZXZlYWxPcmRlcil7aWYoMCE9KDEyOCZ0LmZsYWdzKSlyZXR1cm4gdH1lbHNlIGlmKG51bGwhPT10LmNoaWxkKXt0PSh0LmNoaWxkLnJldHVybj10KS5jaGlsZDtjb250aW51ZX1pZih0PT09ZSlicmVhaztmb3IoO251bGw9PT10LnNpYmxpbmc7KXtpZihudWxsPT09dC5yZXR1cm58fHQucmV0dXJuPT09ZSlyZXR1cm4gbnVsbDt0PXQucmV0dXJufXQuc2libGluZy5yZXR1cm49dC5yZXR1cm4sdD10LnNpYmxpbmd9cmV0dXJuIG51bGx9dmFyIG1pPVtdO2Z1bmN0aW9uIGhpKCl7Zm9yKHZhciBlPTA7ZTxtaS5sZW5ndGg7ZSsrKW1pW2VdLl93b3JrSW5Qcm9ncmVzc1ZlcnNpb25QcmltYXJ5PW51bGw7bWkubGVuZ3RoPTB9dmFyIGdpPUouUmVhY3RDdXJyZW50RGlzcGF0Y2hlcixiaT1KLlJlYWN0Q3VycmVudEJhdGNoQ29uZmlnLHlpPTAsQz1udWxsLEU9bnVsbCxPPW51bGwsdmk9ITEsd2k9ITEseGk9MCxraT0wO2Z1bmN0aW9uIG8oKXt0aHJvdyBFcnJvcihEKDMyMSkpfWZ1bmN0aW9uIFNpKGUsdCl7aWYobnVsbCE9PXQpe2Zvcih2YXIgbj0wO248dC5sZW5ndGgmJm48ZS5sZW5ndGg7bisrKWlmKCFrcihlW25dLHRbbl0pKXJldHVybjtyZXR1cm4gMX19ZnVuY3Rpb24gQ2koZSx0LG4scixvLGEpe2lmKHlpPWEsKEM9dCkubWVtb2l6ZWRTdGF0ZT1udWxsLHQudXBkYXRlUXVldWU9bnVsbCx0LmxhbmVzPTAsZ2kuY3VycmVudD1udWxsPT09ZXx8bnVsbD09PWUubWVtb2l6ZWRTdGF0ZT9vbDphbCxlPW4ocixvKSx3aSl7YT0wO2Rve2lmKHdpPSExLHhpPTAsMjU8PWEpdGhyb3cgRXJyb3IoRCgzMDEpKX13aGlsZShhKz0xLE89RT1udWxsLHQudXBkYXRlUXVldWU9bnVsbCxnaS5jdXJyZW50PWlsLGU9bihyLG8pLHdpKX1pZihnaS5jdXJyZW50PXJsLHQ9bnVsbCE9PUUmJm51bGwhPT1FLm5leHQseWk9MCxPPUU9Qz1udWxsLHZpPSExLHQpdGhyb3cgRXJyb3IoRCgzMDApKTtyZXR1cm4gZX1mdW5jdGlvbiBFaSgpe3ZhciBlPTAhPT14aTtyZXR1cm4geGk9MCxlfWZ1bmN0aW9uIE9pKCl7dmFyIGU9e21lbW9pemVkU3RhdGU6bnVsbCxiYXNlU3RhdGU6bnVsbCxiYXNlUXVldWU6bnVsbCxxdWV1ZTpudWxsLG5leHQ6bnVsbH07cmV0dXJuIG51bGw9PT1PP0MubWVtb2l6ZWRTdGF0ZT1PPWU6Tz1PLm5leHQ9ZSxPfWZ1bmN0aW9uIGppKCl7ZT1udWxsPT09RT9udWxsIT09KGU9Qy5hbHRlcm5hdGUpP2UubWVtb2l6ZWRTdGF0ZTpudWxsOkUubmV4dDt2YXIgZSx0PW51bGw9PT1PP0MubWVtb2l6ZWRTdGF0ZTpPLm5leHQ7aWYobnVsbCE9PXQpTz10LEU9ZTtlbHNle2lmKG51bGw9PT1lKXRocm93IEVycm9yKEQoMzEwKSk7ZT17bWVtb2l6ZWRTdGF0ZTooRT1lKS5tZW1vaXplZFN0YXRlLGJhc2VTdGF0ZTpFLmJhc2VTdGF0ZSxiYXNlUXVldWU6RS5iYXNlUXVldWUscXVldWU6RS5xdWV1ZSxuZXh0Om51bGx9LG51bGw9PT1PP0MubWVtb2l6ZWRTdGF0ZT1PPWU6Tz1PLm5leHQ9ZX1yZXR1cm4gT31mdW5jdGlvbiBBaShlLHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0P3QoZSk6dH1mdW5jdGlvbiBQaShlKXt2YXIgdD1qaSgpLG49dC5xdWV1ZTtpZihudWxsPT09bil0aHJvdyBFcnJvcihEKDMxMSkpO24ubGFzdFJlbmRlcmVkUmVkdWNlcj1lO3ZhciByLG89KGk9RSkuYmFzZVF1ZXVlO2lmKG51bGwhPT0oYT1uLnBlbmRpbmcpJiYobnVsbCE9PW8mJihyPW8ubmV4dCxvLm5leHQ9YS5uZXh0LGEubmV4dD1yKSxpLmJhc2VRdWV1ZT1vPWEsbi5wZW5kaW5nPW51bGwpLG51bGwhPT1vKXt2YXIgYT1vLm5leHQsaT1pLmJhc2VTdGF0ZSxsPXI9bnVsbCxjPW51bGwsdT1hO2Rve3ZhciBzLGY9dS5sYW5lfXdoaWxlKCh5aSZmKT09PWY/KG51bGwhPT1jJiYoYz1jLm5leHQ9e2xhbmU6MCxhY3Rpb246dS5hY3Rpb24saGFzRWFnZXJTdGF0ZTp1Lmhhc0VhZ2VyU3RhdGUsZWFnZXJTdGF0ZTp1LmVhZ2VyU3RhdGUsbmV4dDpudWxsfSksaT11Lmhhc0VhZ2VyU3RhdGU/dS5lYWdlclN0YXRlOmUoaSx1LmFjdGlvbikpOihzPXtsYW5lOmYsYWN0aW9uOnUuYWN0aW9uLGhhc0VhZ2VyU3RhdGU6dS5oYXNFYWdlclN0YXRlLGVhZ2VyU3RhdGU6dS5lYWdlclN0YXRlLG5leHQ6bnVsbH0sbnVsbD09PWM/KGw9Yz1zLHI9aSk6Yz1jLm5leHQ9cyxDLmxhbmVzfD1mLGhjfD1mKSxudWxsIT09KHU9dS5uZXh0KSYmdSE9PWEpO251bGw9PT1jP3I9aTpjLm5leHQ9bCxrcihpLHQubWVtb2l6ZWRTdGF0ZSl8fChqPSEwKSx0Lm1lbW9pemVkU3RhdGU9aSx0LmJhc2VTdGF0ZT1yLHQuYmFzZVF1ZXVlPWMsbi5sYXN0UmVuZGVyZWRTdGF0ZT1pfWlmKG51bGwhPT0oZT1uLmludGVybGVhdmVkKSlmb3Iobz1lO2E9by5sYW5lLEMubGFuZXN8PWEsaGN8PWEsKG89by5uZXh0KSE9PWU7KTtlbHNlIG51bGw9PT1vJiYobi5sYW5lcz0wKTtyZXR1cm5bdC5tZW1vaXplZFN0YXRlLG4uZGlzcGF0Y2hdfWZ1bmN0aW9uIElpKGUpe3ZhciB0PWppKCksbj10LnF1ZXVlO2lmKG51bGw9PT1uKXRocm93IEVycm9yKEQoMzExKSk7bi5sYXN0UmVuZGVyZWRSZWR1Y2VyPWU7dmFyIHI9bi5kaXNwYXRjaCxvPW4ucGVuZGluZyxhPXQubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09byl7bi5wZW5kaW5nPW51bGw7Zm9yKHZhciBpPW89by5uZXh0O2E9ZShhLGkuYWN0aW9uKSwoaT1pLm5leHQpIT09bzspO2tyKGEsdC5tZW1vaXplZFN0YXRlKXx8KGo9ITApLHQubWVtb2l6ZWRTdGF0ZT1hLG51bGw9PT10LmJhc2VRdWV1ZSYmKHQuYmFzZVN0YXRlPWEpLG4ubGFzdFJlbmRlcmVkU3RhdGU9YX1yZXR1cm5bYSxyXX1mdW5jdGlvbiBfaSgpe31mdW5jdGlvbiB6aShlLHQpe3ZhciBuPUMscj1qaSgpLG89dCgpLGE9IWtyKHIubWVtb2l6ZWRTdGF0ZSxvKTtpZihhJiYoci5tZW1vaXplZFN0YXRlPW8saj0hMCkscj1yLnF1ZXVlLCRpKE1pLmJpbmQobnVsbCxuLHIsZSksW2VdKSxyLmdldFNuYXBzaG90IT09dHx8YXx8bnVsbCE9PU8mJjEmTy5tZW1vaXplZFN0YXRlLnRhZyl7aWYobi5mbGFnc3w9MjA0OCxVaSg5LExpLmJpbmQobnVsbCxuLHIsbyx0KSx2b2lkIDAsbnVsbCksbnVsbD09PXApdGhyb3cgRXJyb3IoRCgzNDkpKTswPT0oMzAmeWkpJiZUaShuLHQsbyl9cmV0dXJuIG99ZnVuY3Rpb24gVGkoZSx0LG4pe2UuZmxhZ3N8PTE2Mzg0LGU9e2dldFNuYXBzaG90OnQsdmFsdWU6bn0sbnVsbD09PSh0PUMudXBkYXRlUXVldWUpPyhDLnVwZGF0ZVF1ZXVlPXQ9e2xhc3RFZmZlY3Q6bnVsbCxzdG9yZXM6bnVsbH0pLnN0b3Jlcz1bZV06bnVsbD09PShuPXQuc3RvcmVzKT90LnN0b3Jlcz1bZV06bi5wdXNoKGUpfWZ1bmN0aW9uIExpKGUsdCxuLHIpe3QudmFsdWU9bix0LmdldFNuYXBzaG90PXIsUmkodCkmJk5pKGUpfWZ1bmN0aW9uIE1pKGUsdCxuKXtyZXR1cm4gbihmdW5jdGlvbigpe1JpKHQpJiZOaShlKX0pfWZ1bmN0aW9uIFJpKGUpe3ZhciB0PWUuZ2V0U25hcHNob3Q7ZT1lLnZhbHVlO3RyeXt2YXIgbj10KCk7cmV0dXJuIWtyKGUsbil9Y2F0Y2goZSl7cmV0dXJuIDF9fWZ1bmN0aW9uIE5pKGUpe3ZhciB0PU1hKGUsMSk7bnVsbCE9PXQmJlRjKHQsZSwxLC0xKX1mdW5jdGlvbiBEaShlKXt2YXIgdD1PaSgpO3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBlJiYoZT1lKCkpLHQubWVtb2l6ZWRTdGF0ZT10LmJhc2VTdGF0ZT1lLGU9KHQucXVldWU9ZT17cGVuZGluZzpudWxsLGludGVybGVhdmVkOm51bGwsbGFuZXM6MCxkaXNwYXRjaDpudWxsLGxhc3RSZW5kZXJlZFJlZHVjZXI6QWksbGFzdFJlbmRlcmVkU3RhdGU6ZX0pLmRpc3BhdGNoPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj16YyhlKSxvPXtsYW5lOnIsYWN0aW9uOm4saGFzRWFnZXJTdGF0ZTohMSxlYWdlclN0YXRlOm51bGwsbmV4dDpudWxsfTtpZihlbChlKSl0bCh0LG8pO2Vsc2V7dmFyIGE9ZS5hbHRlcm5hdGU7aWYoMD09PWUubGFuZXMmJihudWxsPT09YXx8MD09PWEubGFuZXMpJiZudWxsIT09KGE9dC5sYXN0UmVuZGVyZWRSZWR1Y2VyKSl0cnl7dmFyIGksbD10Lmxhc3RSZW5kZXJlZFN0YXRlLGM9YShsLG4pO2lmKG8uaGFzRWFnZXJTdGF0ZT0hMCxvLmVhZ2VyU3RhdGU9YyxrcihjLGwpKXJldHVybiBudWxsPT09KGk9dC5pbnRlcmxlYXZlZCk/KG8ubmV4dD1vLFRhKHQpKTooby5uZXh0PWkubmV4dCxpLm5leHQ9byksdm9pZCh0LmludGVybGVhdmVkPW8pfWNhdGNoKGUpe31udWxsIT09KG49TGEoZSx0LG8scikpJiYobz1tKCksVGMobixlLHIsbyksbmwobix0LHIpKX19LmJpbmQobnVsbCxDLGUpLFt0Lm1lbW9pemVkU3RhdGUsZV19ZnVuY3Rpb24gVWkoZSx0LG4scil7cmV0dXJuIGU9e3RhZzplLGNyZWF0ZTp0LGRlc3Ryb3k6bixkZXBzOnIsbmV4dDpudWxsfSxudWxsPT09KHQ9Qy51cGRhdGVRdWV1ZSk/KEMudXBkYXRlUXVldWU9dD17bGFzdEVmZmVjdDpudWxsLHN0b3JlczpudWxsfSkubGFzdEVmZmVjdD1lLm5leHQ9ZTpudWxsPT09KG49dC5sYXN0RWZmZWN0KT90Lmxhc3RFZmZlY3Q9ZS5uZXh0PWU6KHI9bi5uZXh0LChuLm5leHQ9ZSkubmV4dD1yLHQubGFzdEVmZmVjdD1lKSxlfWZ1bmN0aW9uIEJpKCl7cmV0dXJuIGppKCkubWVtb2l6ZWRTdGF0ZX1mdW5jdGlvbiBGaShlLHQsbixyKXt2YXIgbz1PaSgpO0MuZmxhZ3N8PWUsby5tZW1vaXplZFN0YXRlPVVpKDF8dCxuLHZvaWQgMCx2b2lkIDA9PT1yP251bGw6cil9ZnVuY3Rpb24gSGkoZSx0LG4scil7dmFyIG89amkoKSxhPShyPXZvaWQgMD09PXI/bnVsbDpyLHZvaWQgMCk7aWYobnVsbCE9PUUpe3ZhciBpPUUubWVtb2l6ZWRTdGF0ZSxhPWkuZGVzdHJveTtpZihudWxsIT09ciYmU2kocixpLmRlcHMpKXJldHVybiB2b2lkKG8ubWVtb2l6ZWRTdGF0ZT1VaSh0LG4sYSxyKSl9Qy5mbGFnc3w9ZSxvLm1lbW9pemVkU3RhdGU9VWkoMXx0LG4sYSxyKX1mdW5jdGlvbiBWaShlLHQpe3JldHVybiBGaSg4MzkwNjU2LDgsZSx0KX1mdW5jdGlvbiAkaShlLHQpe3JldHVybiBIaSgyMDQ4LDgsZSx0KX1mdW5jdGlvbiBXaShlLHQpe3JldHVybiBIaSg0LDIsZSx0KX1mdW5jdGlvbiBHaShlLHQpe3JldHVybiBIaSg0LDQsZSx0KX1mdW5jdGlvbiBxaShlLHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0PyhlPWUoKSx0KGUpLGZ1bmN0aW9uKCl7dChudWxsKX0pOm51bGwhPXQ/KGU9ZSgpLHQuY3VycmVudD1lLGZ1bmN0aW9uKCl7dC5jdXJyZW50PW51bGx9KTp2b2lkIDB9ZnVuY3Rpb24gWmkoZSx0LG4pe3JldHVybiBuPW51bGwhPW4/bi5jb25jYXQoW2VdKTpudWxsLEhpKDQsNCxxaS5iaW5kKG51bGwsdCxlKSxuKX1mdW5jdGlvbiBYaSgpe31mdW5jdGlvbiBZaShlLHQpe3ZhciBuPWppKCkscj0odD12b2lkIDA9PT10P251bGw6dCxuLm1lbW9pemVkU3RhdGUpO3JldHVybiBudWxsIT09ciYmbnVsbCE9PXQmJlNpKHQsclsxXSk/clswXToobi5tZW1vaXplZFN0YXRlPVtlLHRdLGUpfWZ1bmN0aW9uIFFpKGUsdCl7dmFyIG49amkoKSxyPSh0PXZvaWQgMD09PXQ/bnVsbDp0LG4ubWVtb2l6ZWRTdGF0ZSk7cmV0dXJuIG51bGwhPT1yJiZudWxsIT09dCYmU2kodCxyWzFdKT9yWzBdOihlPWUoKSxuLm1lbW9pemVkU3RhdGU9W2UsdF0sZSl9ZnVuY3Rpb24gS2koZSx0LG4pe3JldHVybiAwPT0oMjEmeWkpPyhlLmJhc2VTdGF0ZSYmKGUuYmFzZVN0YXRlPSExLGo9ITApLGUubWVtb2l6ZWRTdGF0ZT1uKTooa3Iobix0KXx8KG49RnQoKSxDLmxhbmVzfD1uLGhjfD1uLGUuYmFzZVN0YXRlPSEwKSx0KX1mdW5jdGlvbiBKaSgpe3JldHVybiBqaSgpLm1lbW9pemVkU3RhdGV9ZnVuY3Rpb24gZWwoZSl7dmFyIHQ9ZS5hbHRlcm5hdGU7cmV0dXJuIGU9PT1DfHxudWxsIT09dCYmdD09PUN9ZnVuY3Rpb24gdGwoZSx0KXt3aT12aT0hMDt2YXIgbj1lLnBlbmRpbmc7bnVsbD09PW4/dC5uZXh0PXQ6KHQubmV4dD1uLm5leHQsbi5uZXh0PXQpLGUucGVuZGluZz10fWZ1bmN0aW9uIG5sKGUsdCxuKXt2YXIgcjswIT0oNDE5NDI0MCZuKSYmKHI9dC5sYW5lcyxyJj1lLnBlbmRpbmdMYW5lcywkdChlLHQubGFuZXM9bnw9cikpfXZhciBybD17cmVhZENvbnRleHQ6X2EsdXNlQ2FsbGJhY2s6byx1c2VDb250ZXh0Om8sdXNlRWZmZWN0Om8sdXNlSW1wZXJhdGl2ZUhhbmRsZTpvLHVzZUluc2VydGlvbkVmZmVjdDpvLHVzZUxheW91dEVmZmVjdDpvLHVzZU1lbW86byx1c2VSZWR1Y2VyOm8sdXNlUmVmOm8sdXNlU3RhdGU6byx1c2VEZWJ1Z1ZhbHVlOm8sdXNlRGVmZXJyZWRWYWx1ZTpvLHVzZVRyYW5zaXRpb246byx1c2VNdXRhYmxlU291cmNlOm8sdXNlU3luY0V4dGVybmFsU3RvcmU6byx1c2VJZDpvLHVuc3RhYmxlX2lzTmV3UmVjb25jaWxlcjohMX0sb2w9e3JlYWRDb250ZXh0Ol9hLHVzZUNhbGxiYWNrOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIE9pKCkubWVtb2l6ZWRTdGF0ZT1bZSx2b2lkIDA9PT10P251bGw6dF0sZX0sdXNlQ29udGV4dDpfYSx1c2VFZmZlY3Q6VmksdXNlSW1wZXJhdGl2ZUhhbmRsZTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIG49bnVsbCE9bj9uLmNvbmNhdChbZV0pOm51bGwsRmkoNDE5NDMwOCw0LHFpLmJpbmQobnVsbCx0LGUpLG4pfSx1c2VMYXlvdXRFZmZlY3Q6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gRmkoNDE5NDMwOCw0LGUsdCl9LHVzZUluc2VydGlvbkVmZmVjdDpmdW5jdGlvbihlLHQpe3JldHVybiBGaSg0LDIsZSx0KX0sdXNlTWVtbzpmdW5jdGlvbihlLHQpe3ZhciBuPU9pKCk7cmV0dXJuIHQ9dm9pZCAwPT09dD9udWxsOnQsZT1lKCksbi5tZW1vaXplZFN0YXRlPVtlLHRdLGV9LHVzZVJlZHVjZXI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPU9pKCk7cmV0dXJuIHQ9dm9pZCAwIT09bj9uKHQpOnQsci5tZW1vaXplZFN0YXRlPXIuYmFzZVN0YXRlPXQsZT0oci5xdWV1ZT1lPXtwZW5kaW5nOm51bGwsaW50ZXJsZWF2ZWQ6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjplLGxhc3RSZW5kZXJlZFN0YXRlOnR9KS5kaXNwYXRjaD1mdW5jdGlvbihlLHQsbil7dmFyIHI9emMoZSk7bj17bGFuZTpyLGFjdGlvbjpuLGhhc0VhZ2VyU3RhdGU6ITEsZWFnZXJTdGF0ZTpudWxsLG5leHQ6bnVsbH0sZWwoZSk/dGwodCxuKTpudWxsIT09KG49TGEoZSx0LG4scikpJiYoVGMobixlLHIsbSgpKSxubChuLHQscikpfS5iaW5kKG51bGwsQyxlKSxbci5tZW1vaXplZFN0YXRlLGVdfSx1c2VSZWY6ZnVuY3Rpb24oZSl7cmV0dXJuIE9pKCkubWVtb2l6ZWRTdGF0ZT1lPXtjdXJyZW50OmV9fSx1c2VTdGF0ZTpEaSx1c2VEZWJ1Z1ZhbHVlOlhpLHVzZURlZmVycmVkVmFsdWU6ZnVuY3Rpb24oZSl7cmV0dXJuIE9pKCkubWVtb2l6ZWRTdGF0ZT1lfSx1c2VUcmFuc2l0aW9uOmZ1bmN0aW9uKCl7dmFyIGU9KHQ9RGkoITEpKVswXSx0PWZ1bmN0aW9uKGUsdCl7dmFyIG49eCxyPSh4PTAhPT1uJiZuPDQ/bjo0LGUoITApLGJpLnRyYW5zaXRpb24pO2JpLnRyYW5zaXRpb249e307dHJ5e2UoITEpLHQoKX1maW5hbGx5e3g9bixiaS50cmFuc2l0aW9uPXJ9fS5iaW5kKG51bGwsdFsxXSk7cmV0dXJuW2UsT2koKS5tZW1vaXplZFN0YXRlPXRdfSx1c2VNdXRhYmxlU291cmNlOmZ1bmN0aW9uKCl7fSx1c2VTeW5jRXh0ZXJuYWxTdG9yZTpmdW5jdGlvbihlLHQsbil7dmFyIHI9QyxvPU9pKCk7aWYoVSl7aWYodm9pZCAwPT09bil0aHJvdyBFcnJvcihEKDQwNykpO249bigpfWVsc2V7aWYobj10KCksbnVsbD09PXApdGhyb3cgRXJyb3IoRCgzNDkpKTswPT0oMzAmeWkpJiZUaShyLHQsbil9dmFyIGE9e3ZhbHVlOm8ubWVtb2l6ZWRTdGF0ZT1uLGdldFNuYXBzaG90OnR9O3JldHVybiBvLnF1ZXVlPWEsVmkoTWkuYmluZChudWxsLHIsYSxlKSxbZV0pLHIuZmxhZ3N8PTIwNDgsVWkoOSxMaS5iaW5kKG51bGwscixhLG4sdCksdm9pZCAwLG51bGwpLG59LHVzZUlkOmZ1bmN0aW9uKCl7dmFyIGUsdD1PaSgpLG49cC5pZGVudGlmaWVyUHJlZml4O3JldHVybiBVPyhlPWFhLG49IjoiK24rIlIiKyhlPShvYSZ+KDE8PDMyLXp0KG9hKS0xKSkudG9TdHJpbmcoMzIpK2UpLDA8KGU9eGkrKykmJihuKz0iSCIrZS50b1N0cmluZygzMikpLG4rPSI6Iik6bj0iOiIrbisiciIrKGU9a2krKykudG9TdHJpbmcoMzIpKyI6Iix0Lm1lbW9pemVkU3RhdGU9bn0sdW5zdGFibGVfaXNOZXdSZWNvbmNpbGVyOiExfSxhbD17cmVhZENvbnRleHQ6X2EsdXNlQ2FsbGJhY2s6WWksdXNlQ29udGV4dDpfYSx1c2VFZmZlY3Q6JGksdXNlSW1wZXJhdGl2ZUhhbmRsZTpaaSx1c2VJbnNlcnRpb25FZmZlY3Q6V2ksdXNlTGF5b3V0RWZmZWN0OkdpLHVzZU1lbW86UWksdXNlUmVkdWNlcjpQaSx1c2VSZWY6QmksdXNlU3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gUGkoQWkpfSx1c2VEZWJ1Z1ZhbHVlOlhpLHVzZURlZmVycmVkVmFsdWU6ZnVuY3Rpb24oZSl7cmV0dXJuIEtpKGppKCksRS5tZW1vaXplZFN0YXRlLGUpfSx1c2VUcmFuc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuW1BpKEFpKVswXSxqaSgpLm1lbW9pemVkU3RhdGVdfSx1c2VNdXRhYmxlU291cmNlOl9pLHVzZVN5bmNFeHRlcm5hbFN0b3JlOnppLHVzZUlkOkppLHVuc3RhYmxlX2lzTmV3UmVjb25jaWxlcjohMX0saWw9e3JlYWRDb250ZXh0Ol9hLHVzZUNhbGxiYWNrOllpLHVzZUNvbnRleHQ6X2EsdXNlRWZmZWN0OiRpLHVzZUltcGVyYXRpdmVIYW5kbGU6WmksdXNlSW5zZXJ0aW9uRWZmZWN0OldpLHVzZUxheW91dEVmZmVjdDpHaSx1c2VNZW1vOlFpLHVzZVJlZHVjZXI6SWksdXNlUmVmOkJpLHVzZVN0YXRlOmZ1bmN0aW9uKCl7cmV0dXJuIElpKEFpKX0sdXNlRGVidWdWYWx1ZTpYaSx1c2VEZWZlcnJlZFZhbHVlOmZ1bmN0aW9uKGUpe3ZhciB0PWppKCk7cmV0dXJuIG51bGw9PT1FP3QubWVtb2l6ZWRTdGF0ZT1lOktpKHQsRS5tZW1vaXplZFN0YXRlLGUpfSx1c2VUcmFuc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuW0lpKEFpKVswXSxqaSgpLm1lbW9pemVkU3RhdGVdfSx1c2VNdXRhYmxlU291cmNlOl9pLHVzZVN5bmNFeHRlcm5hbFN0b3JlOnppLHVzZUlkOkppLHVuc3RhYmxlX2lzTmV3UmVjb25jaWxlcjohMX07ZnVuY3Rpb24gbGwoZSx0KXt0cnl7Zm9yKHZhciBuPSIiLHI9dDtuKz1mdW5jdGlvbihlKXtzd2l0Y2goZS50YWcpe2Nhc2UgNTpyZXR1cm4gZ2UoZS50eXBlKTtjYXNlIDE2OnJldHVybiBnZSgiTGF6eSIpO2Nhc2UgMTM6cmV0dXJuIGdlKCJTdXNwZW5zZSIpO2Nhc2UgMTk6cmV0dXJuIGdlKCJTdXNwZW5zZUxpc3QiKTtjYXNlIDA6Y2FzZSAyOmNhc2UgMTU6cmV0dXJuIGU9eWUoZS50eXBlLCExKTtjYXNlIDExOnJldHVybiBlPXllKGUudHlwZS5yZW5kZXIsITEpO2Nhc2UgMTpyZXR1cm4gZT15ZShlLnR5cGUsITApO2RlZmF1bHQ6cmV0dXJuIiJ9fShyKSxyPXIucmV0dXJuOyk7dmFyIG89bn1jYXRjaChlKXtvPSJcbkVycm9yIGdlbmVyYXRpbmcgc3RhY2s6ICIrZS5tZXNzYWdlKyJcbiIrZS5zdGFja31yZXR1cm57dmFsdWU6ZSxzb3VyY2U6dCxzdGFjazpvLGRpZ2VzdDpudWxsfX1mdW5jdGlvbiBjbChlLHQsbil7cmV0dXJue3ZhbHVlOmUsc291cmNlOm51bGwsc3RhY2s6bnVsbCE9bj9uOm51bGwsZGlnZXN0Om51bGwhPXQ/dDpudWxsfX1mdW5jdGlvbiB1bChlLHQpe3RyeXtjb25zb2xlLmVycm9yKHQudmFsdWUpfWNhdGNoKGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyBlfSl9fXZhciBzbD0iZnVuY3Rpb24iPT10eXBlb2YgV2Vha01hcD9XZWFrTWFwOk1hcDtmdW5jdGlvbiBmbChlLHQsbil7KG49VWEoLTEsbikpLnRhZz0zLG4ucGF5bG9hZD17ZWxlbWVudDpudWxsfTt2YXIgcj10LnZhbHVlO3JldHVybiBuLmNhbGxiYWNrPWZ1bmN0aW9uKCl7a2N8fChrYz0hMCxTYz1yKSx1bCgwLHQpfSxufWZ1bmN0aW9uIGRsKGUsdCxuKXsobj1VYSgtMSxuKSkudGFnPTM7dmFyIHIsbz1lLnR5cGUuZ2V0RGVyaXZlZFN0YXRlRnJvbUVycm9yLGU9KCJmdW5jdGlvbiI9PXR5cGVvZiBvJiYocj10LnZhbHVlLG4ucGF5bG9hZD1mdW5jdGlvbigpe3JldHVybiBvKHIpfSxuLmNhbGxiYWNrPWZ1bmN0aW9uKCl7dWwoMCx0KX0pLGUuc3RhdGVOb2RlKTtyZXR1cm4gbnVsbCE9PWUmJiJmdW5jdGlvbiI9PXR5cGVvZiBlLmNvbXBvbmVudERpZENhdGNoJiYobi5jYWxsYmFjaz1mdW5jdGlvbigpe3VsKDAsdCksImZ1bmN0aW9uIiE9dHlwZW9mIG8mJihudWxsPT09Q2M/Q2M9bmV3IFNldChbdGhpc10pOkNjLmFkZCh0aGlzKSk7dmFyIGU9dC5zdGFjazt0aGlzLmNvbXBvbmVudERpZENhdGNoKHQudmFsdWUse2NvbXBvbmVudFN0YWNrOm51bGwhPT1lP2U6IiJ9KX0pLG59ZnVuY3Rpb24gcGwoZSx0LG4pe3ZhciByLG89ZS5waW5nQ2FjaGU7bnVsbD09PW8/KG89ZS5waW5nQ2FjaGU9bmV3IHNsLHI9bmV3IFNldCxvLnNldCh0LHIpKTp2b2lkIDA9PT0ocj1vLmdldCh0KSkmJihyPW5ldyBTZXQsby5zZXQodCxyKSksci5oYXMobil8fChyLmFkZChuKSxlPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1lLnBpbmdDYWNoZTtudWxsIT09ciYmci5kZWxldGUodCksdD1tKCksZS5waW5nZWRMYW5lc3w9ZS5zdXNwZW5kZWRMYW5lcyZuLHA9PT1lJiYoVCZuKT09PW4mJig0PT09THx8Mz09PUwmJigxMzAwMjM0MjQmVCk9PT1UJiZoKCktdmM8NTAwP1ZjKGUsMCk6YmN8PW4pLExjKGUsdCl9LmJpbmQobnVsbCxlLHQsbiksdC50aGVuKGUsZSkpfWZ1bmN0aW9uIG1sKGUpe2Rve3ZhciB0O2lmKHQ9KHQ9MTM9PT1lLnRhZyk/bnVsbD09PSh0PWUubWVtb2l6ZWRTdGF0ZSl8fG51bGwhPT10LmRlaHlkcmF0ZWQ6dClyZXR1cm4gZX13aGlsZShudWxsIT09KGU9ZS5yZXR1cm4pKTtyZXR1cm4gbnVsbH1mdW5jdGlvbiBobChlLHQsbixyLG8pe2lmKDA9PSgxJmUubW9kZSkpcmV0dXJuIGU9PT10P2UuZmxhZ3N8PTY1NTM2OihlLmZsYWdzfD0xMjgsbi5mbGFnc3w9MTMxMDcyLG4uZmxhZ3MmPS01MjgwNSwxPT09bi50YWcmJihudWxsPT09bi5hbHRlcm5hdGU/bi50YWc9MTc6KCh0PVVhKC0xLDEpKS50YWc9MixCYShuLHQsMSkpKSxuLmxhbmVzfD0xKTtlLmZsYWdzfD02NTUzNixlLmxhbmVzPW99dmFyIGdsPUouUmVhY3RDdXJyZW50T3duZXIsaj0hMTtmdW5jdGlvbiBBKGUsdCxuLHIpe3QuY2hpbGQ9bnVsbD09PWU/cmkodCxudWxsLG4scik6bmkodCxlLmNoaWxkLG4scil9ZnVuY3Rpb24gYmwoZSx0LG4scixvKXtuPW4ucmVuZGVyO3ZhciBhPXQucmVmO3JldHVybiBJYSh0LG8pLHI9Q2koZSx0LG4scixhLG8pLG49RWkoKSxudWxsPT09ZXx8aj8oVSYmbiYmY2EodCksdC5mbGFnc3w9MSxBKGUsdCxyLG8pLHQuY2hpbGQpOih0LnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsdC5mbGFncyY9LTIwNTMsZS5sYW5lcyY9fm8sUmwoZSx0LG8pKX1mdW5jdGlvbiB5bChlLHQsbixyLG8pe3ZhciBhO2lmKG51bGw9PT1lKXJldHVybiJmdW5jdGlvbiIhPXR5cGVvZihhPW4udHlwZSl8fHJ1KGEpfHx2b2lkIDAhPT1hLmRlZmF1bHRQcm9wc3x8bnVsbCE9PW4uY29tcGFyZXx8dm9pZCAwIT09bi5kZWZhdWx0UHJvcHM/KChlPWF1KG4udHlwZSxudWxsLHIsdCx0Lm1vZGUsbykpLnJlZj10LnJlZiwoZS5yZXR1cm49dCkuY2hpbGQ9ZSk6KHQudGFnPTE1LHQudHlwZT1hLHZsKGUsdCxhLHIsbykpO2lmKGE9ZS5jaGlsZCwwPT0oZS5sYW5lcyZvKSl7dmFyIGk9YS5tZW1vaXplZFByb3BzO2lmKChuPW51bGwhPT0obj1uLmNvbXBhcmUpP246U3IpKGkscikmJmUucmVmPT09dC5yZWYpcmV0dXJuIFJsKGUsdCxvKX1yZXR1cm4gdC5mbGFnc3w9MSwoZT1vdShhLHIpKS5yZWY9dC5yZWYsKGUucmV0dXJuPXQpLmNoaWxkPWV9ZnVuY3Rpb24gdmwoZSx0LG4scixvKXtpZihudWxsIT09ZSl7dmFyIGE9ZS5tZW1vaXplZFByb3BzO2lmKFNyKGEscikmJmUucmVmPT09dC5yZWYpe2lmKGo9ITEsdC5wZW5kaW5nUHJvcHM9cj1hLDA9PShlLmxhbmVzJm8pKXJldHVybiB0LmxhbmVzPWUubGFuZXMsUmwoZSx0LG8pOzAhPSgxMzEwNzImZS5mbGFncykmJihqPSEwKX19cmV0dXJuIGtsKGUsdCxuLHIsbyl9ZnVuY3Rpb24gd2woZSx0LG4pe3ZhciByPXQucGVuZGluZ1Byb3BzLG89ci5jaGlsZHJlbixhPW51bGwhPT1lP2UubWVtb2l6ZWRTdGF0ZTpudWxsO2lmKCJoaWRkZW4iPT09ci5tb2RlKWlmKDA9PSgxJnQubW9kZSkpdC5tZW1vaXplZFN0YXRlPXtiYXNlTGFuZXM6MCxjYWNoZVBvb2w6bnVsbCx0cmFuc2l0aW9uczpudWxsfSxiKHBjLGRjKSxkY3w9bjtlbHNle2lmKDA9PSgxMDczNzQxODI0Jm4pKXJldHVybiBlPW51bGwhPT1hP2EuYmFzZUxhbmVzfG46bix0LmxhbmVzPXQuY2hpbGRMYW5lcz0xMDczNzQxODI0LHQubWVtb2l6ZWRTdGF0ZT17YmFzZUxhbmVzOmUsY2FjaGVQb29sOm51bGwsdHJhbnNpdGlvbnM6bnVsbH0sdC51cGRhdGVRdWV1ZT1udWxsLGIocGMsZGMpLGRjfD1lLG51bGw7dC5tZW1vaXplZFN0YXRlPXtiYXNlTGFuZXM6MCxjYWNoZVBvb2w6bnVsbCx0cmFuc2l0aW9uczpudWxsfSxyPW51bGwhPT1hP2EuYmFzZUxhbmVzOm4sYihwYyxkYyksZGN8PXJ9ZWxzZSBudWxsIT09YT8ocj1hLmJhc2VMYW5lc3xuLHQubWVtb2l6ZWRTdGF0ZT1udWxsKTpyPW4sYihwYyxkYyksZGN8PXI7cmV0dXJuIEEoZSx0LG8sbiksdC5jaGlsZH1mdW5jdGlvbiB4bChlLHQpe3ZhciBuPXQucmVmOyhudWxsPT09ZSYmbnVsbCE9PW58fG51bGwhPT1lJiZlLnJlZiE9PW4pJiYodC5mbGFnc3w9NTEyLHQuZmxhZ3N8PTIwOTcxNTIpfWZ1bmN0aW9uIGtsKGUsdCxuLHIsbyl7dmFyIGE9Qm8odCx3KG4pP1VvOnkuY3VycmVudCk7cmV0dXJuIElhKHQsbyksbj1DaShlLHQsbixyLGEsbykscj1FaSgpLG51bGw9PT1lfHxqPyhVJiZyJiZjYSh0KSx0LmZsYWdzfD0xLEEoZSx0LG4sbyksdC5jaGlsZCk6KHQudXBkYXRlUXVldWU9ZS51cGRhdGVRdWV1ZSx0LmZsYWdzJj0tMjA1MyxlLmxhbmVzJj1+byxSbChlLHQsbykpfWZ1bmN0aW9uIFNsKGUsdCxuLHIsbyl7dmFyIGEsaSxsLGMsdSxzLGYsZCxwLG07cmV0dXJuIHcobik/KGE9ITAsJG8odCkpOmE9ITEsSWEodCxvKSxyPW51bGw9PT10LnN0YXRlTm9kZT8oTWwoZSx0KSxYYSh0LG4sciksUWEodCxuLHIsbyksITApOm51bGw9PT1lPyhpPXQuc3RhdGVOb2RlLGw9dC5tZW1vaXplZFByb3BzLGkucHJvcHM9bCxkPWkuY29udGV4dCxjPSJvYmplY3QiPT10eXBlb2YoYz1uLmNvbnRleHRUeXBlKSYmbnVsbCE9PWM/X2EoYyk6Qm8odCxjPXcobik/VW86eS5jdXJyZW50KSwocz0iZnVuY3Rpb24iPT10eXBlb2YodT1uLmdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyl8fCJmdW5jdGlvbiI9PXR5cGVvZiBpLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlKXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGkuVU5TQUZFX2NvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJiJmdW5jdGlvbiIhPXR5cGVvZiBpLmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHN8fGw9PT1yJiZkPT09Y3x8WWEoMCxpLHIsYyksUmE9ITEsZj10Lm1lbW9pemVkU3RhdGUsaS5zdGF0ZT1mLFZhKHQscixpLG8pLGQ9dC5tZW1vaXplZFN0YXRlLGwhPT1yfHxmIT09ZHx8di5jdXJyZW50fHxSYT8oImZ1bmN0aW9uIj09dHlwZW9mIHUmJihHYSh0LDAsdSxyKSxkPXQubWVtb2l6ZWRTdGF0ZSksKGw9UmF8fFphKHQsbixsLHIsZixkLGMpKT8oc3x8ImZ1bmN0aW9uIiE9dHlwZW9mIGkuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCYmImZ1bmN0aW9uIiE9dHlwZW9mIGkuY29tcG9uZW50V2lsbE1vdW50fHwoImZ1bmN0aW9uIj09dHlwZW9mIGkuY29tcG9uZW50V2lsbE1vdW50JiZpLmNvbXBvbmVudFdpbGxNb3VudCgpLCJmdW5jdGlvbiI9PXR5cGVvZiBpLlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQmJmkuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCgpKSwiZnVuY3Rpb24iPT10eXBlb2YgaS5jb21wb25lbnREaWRNb3VudCYmKHQuZmxhZ3N8PTQxOTQzMDgpKTooImZ1bmN0aW9uIj09dHlwZW9mIGkuY29tcG9uZW50RGlkTW91bnQmJih0LmZsYWdzfD00MTk0MzA4KSx0Lm1lbW9pemVkUHJvcHM9cix0Lm1lbW9pemVkU3RhdGU9ZCksaS5wcm9wcz1yLGkuc3RhdGU9ZCxpLmNvbnRleHQ9YyxsKTooImZ1bmN0aW9uIj09dHlwZW9mIGkuY29tcG9uZW50RGlkTW91bnQmJih0LmZsYWdzfD00MTk0MzA4KSwhMSkpOihpPXQuc3RhdGVOb2RlLERhKGUsdCksbD10Lm1lbW9pemVkUHJvcHMsYz10LnR5cGU9PT10LmVsZW1lbnRUeXBlP2w6a2EodC50eXBlLGwpLGkucHJvcHM9YyxzPXQucGVuZGluZ1Byb3BzLGY9aS5jb250ZXh0LGQ9Im9iamVjdCI9PXR5cGVvZihkPW4uY29udGV4dFR5cGUpJiZudWxsIT09ZD9fYShkKTpCbyh0LGQ9dyhuKT9Vbzp5LmN1cnJlbnQpLCh1PSJmdW5jdGlvbiI9PXR5cGVvZihwPW4uZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKXx8ImZ1bmN0aW9uIj09dHlwZW9mIGkuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUpfHwiZnVuY3Rpb24iIT10eXBlb2YgaS5VTlNBRkVfY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyYmImZ1bmN0aW9uIiE9dHlwZW9mIGkuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wc3x8bD09PXMmJmY9PT1kfHxZYSgwLGkscixkKSxSYT0hMSxmPXQubWVtb2l6ZWRTdGF0ZSxpLnN0YXRlPWYsVmEodCxyLGksbyksbT10Lm1lbW9pemVkU3RhdGUsbCE9PXN8fGYhPT1tfHx2LmN1cnJlbnR8fFJhPygiZnVuY3Rpb24iPT10eXBlb2YgcCYmKEdhKHQsMCxwLHIpLG09dC5tZW1vaXplZFN0YXRlKSwoYz1SYXx8WmEodCxuLGMscixmLG0sZCl8fCExKT8odXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGkuVU5TQUZFX2NvbXBvbmVudFdpbGxVcGRhdGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBpLmNvbXBvbmVudFdpbGxVcGRhdGV8fCgiZnVuY3Rpb24iPT10eXBlb2YgaS5jb21wb25lbnRXaWxsVXBkYXRlJiZpLmNvbXBvbmVudFdpbGxVcGRhdGUocixtLGQpLCJmdW5jdGlvbiI9PXR5cGVvZiBpLlVOU0FGRV9jb21wb25lbnRXaWxsVXBkYXRlJiZpLlVOU0FGRV9jb21wb25lbnRXaWxsVXBkYXRlKHIsbSxkKSksImZ1bmN0aW9uIj09dHlwZW9mIGkuY29tcG9uZW50RGlkVXBkYXRlJiYodC5mbGFnc3w9NCksImZ1bmN0aW9uIj09dHlwZW9mIGkuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUmJih0LmZsYWdzfD0xMDI0KSk6KCJmdW5jdGlvbiIhPXR5cGVvZiBpLmNvbXBvbmVudERpZFVwZGF0ZXx8bD09PWUubWVtb2l6ZWRQcm9wcyYmZj09PWUubWVtb2l6ZWRTdGF0ZXx8KHQuZmxhZ3N8PTQpLCJmdW5jdGlvbiIhPXR5cGVvZiBpLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlfHxsPT09ZS5tZW1vaXplZFByb3BzJiZmPT09ZS5tZW1vaXplZFN0YXRlfHwodC5mbGFnc3w9MTAyNCksdC5tZW1vaXplZFByb3BzPXIsdC5tZW1vaXplZFN0YXRlPW0pLGkucHJvcHM9cixpLnN0YXRlPW0saS5jb250ZXh0PWQsYyk6KCJmdW5jdGlvbiIhPXR5cGVvZiBpLmNvbXBvbmVudERpZFVwZGF0ZXx8bD09PWUubWVtb2l6ZWRQcm9wcyYmZj09PWUubWVtb2l6ZWRTdGF0ZXx8KHQuZmxhZ3N8PTQpLCJmdW5jdGlvbiIhPXR5cGVvZiBpLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlfHxsPT09ZS5tZW1vaXplZFByb3BzJiZmPT09ZS5tZW1vaXplZFN0YXRlfHwodC5mbGFnc3w9MTAyNCksITEpKSxDbChlLHQsbixyLGEsbyl9ZnVuY3Rpb24gQ2woZSx0LG4scixvLGEpe3hsKGUsdCk7dmFyIGk9MCE9KDEyOCZ0LmZsYWdzKTtpZighciYmIWkpcmV0dXJuIG8mJldvKHQsbiwhMSksUmwoZSx0LGEpO3I9dC5zdGF0ZU5vZGUsZ2wuY3VycmVudD10O3ZhciBsPWkmJiJmdW5jdGlvbiIhPXR5cGVvZiBuLmdldERlcml2ZWRTdGF0ZUZyb21FcnJvcj9udWxsOnIucmVuZGVyKCk7cmV0dXJuIHQuZmxhZ3N8PTEsbnVsbCE9PWUmJmk/KHQuY2hpbGQ9bmkodCxlLmNoaWxkLG51bGwsYSksdC5jaGlsZD1uaSh0LG51bGwsbCxhKSk6QShlLHQsbCxhKSx0Lm1lbW9pemVkU3RhdGU9ci5zdGF0ZSxvJiZXbyh0LG4sITApLHQuY2hpbGR9ZnVuY3Rpb24gRWwoZSl7dmFyIHQ9ZS5zdGF0ZU5vZGU7dC5wZW5kaW5nQ29udGV4dD9IbygwLHQucGVuZGluZ0NvbnRleHQsdC5wZW5kaW5nQ29udGV4dCE9PXQuY29udGV4dCk6dC5jb250ZXh0JiZIbygwLHQuY29udGV4dCwhMSksdWkoZSx0LmNvbnRhaW5lckluZm8pfWZ1bmN0aW9uIE9sKGUsdCxuLHIsbyl7cmV0dXJuIHZhKCksd2EobyksdC5mbGFnc3w9MjU2LEEoZSx0LG4sciksdC5jaGlsZH12YXIgamw9e2RlaHlkcmF0ZWQ6bnVsbCx0cmVlQ29udGV4dDpudWxsLHJldHJ5TGFuZTowfTtmdW5jdGlvbiBBbChlKXtyZXR1cm57YmFzZUxhbmVzOmUsY2FjaGVQb29sOm51bGwsdHJhbnNpdGlvbnM6bnVsbH19ZnVuY3Rpb24gUGwoZSx0LG4pe3ZhciByLG8sYT10LnBlbmRpbmdQcm9wcyxpPVMuY3VycmVudCxsPSExLGM9MCE9KDEyOCZ0LmZsYWdzKTtpZigobz0obz1jKXx8KG51bGw9PT1lfHxudWxsIT09ZS5tZW1vaXplZFN0YXRlKSYmMCE9KDImaSkpPyhsPSEwLHQuZmxhZ3MmPS0xMjkpOm51bGwhPT1lJiZudWxsPT09ZS5tZW1vaXplZFN0YXRlfHwoaXw9MSksYihTLDEmaSksbnVsbD09PWUpcmV0dXJuIGhhKHQpLG51bGwhPT0oZT10Lm1lbW9pemVkU3RhdGUpJiZudWxsIT09KGU9ZS5kZWh5ZHJhdGVkKT8oMD09KDEmdC5tb2RlKT90LmxhbmVzPTE6IiQhIj09PWUuZGF0YT90LmxhbmVzPTg6dC5sYW5lcz0xMDczNzQxODI0LG51bGwpOihjPWEuY2hpbGRyZW4sZT1hLmZhbGxiYWNrLGw/KGE9dC5tb2RlLGw9dC5jaGlsZCxjPXttb2RlOiJoaWRkZW4iLGNoaWxkcmVuOmN9LDA9PSgxJmEpJiZudWxsIT09bD8obC5jaGlsZExhbmVzPTAsbC5wZW5kaW5nUHJvcHM9Yyk6bD1sdShjLGEsMCxudWxsKSxlPWl1KGUsYSxuLG51bGwpLGwucmV0dXJuPXQsZS5yZXR1cm49dCxsLnNpYmxpbmc9ZSx0LmNoaWxkPWwsdC5jaGlsZC5tZW1vaXplZFN0YXRlPUFsKG4pLHQubWVtb2l6ZWRTdGF0ZT1qbCxlKTpJbCh0LGMpKTtpZihudWxsPT09KGk9ZS5tZW1vaXplZFN0YXRlKXx8bnVsbD09PShvPWkuZGVoeWRyYXRlZCkpcmV0dXJuIGw/KGw9YS5mYWxsYmFjayxjPXQubW9kZSxvPShpPWUuY2hpbGQpLnNpYmxpbmcsdT17bW9kZToiaGlkZGVuIixjaGlsZHJlbjphLmNoaWxkcmVufSwwPT0oMSZjKSYmdC5jaGlsZCE9PWk/KChhPXQuY2hpbGQpLmNoaWxkTGFuZXM9MCxhLnBlbmRpbmdQcm9wcz11LHQuZGVsZXRpb25zPW51bGwpOihhPW91KGksdSkpLnN1YnRyZWVGbGFncz0xNDY4MDA2NCZpLnN1YnRyZWVGbGFncyxudWxsIT09bz9sPW91KG8sbCk6KGw9aXUobCxjLG4sbnVsbCkpLmZsYWdzfD0yLGwucmV0dXJuPXQsYS5yZXR1cm49dCxhLnNpYmxpbmc9bCx0LmNoaWxkPWEsYT1sLGw9dC5jaGlsZCxjPW51bGw9PT0oYz1lLmNoaWxkLm1lbW9pemVkU3RhdGUpP0FsKG4pOntiYXNlTGFuZXM6Yy5iYXNlTGFuZXN8bixjYWNoZVBvb2w6bnVsbCx0cmFuc2l0aW9uczpjLnRyYW5zaXRpb25zfSxsLm1lbW9pemVkU3RhdGU9YyxsLmNoaWxkTGFuZXM9ZS5jaGlsZExhbmVzJn5uLHQubWVtb2l6ZWRTdGF0ZT1qbCk6KGU9KGw9ZS5jaGlsZCkuc2libGluZyxhPW91KGwse21vZGU6InZpc2libGUiLGNoaWxkcmVuOmEuY2hpbGRyZW59KSwwPT0oMSZ0Lm1vZGUpJiYoYS5sYW5lcz1uKSxhLnJldHVybj10LChhLnNpYmxpbmc9bnVsbCkhPT1lJiYobnVsbD09PShuPXQuZGVsZXRpb25zKT8odC5kZWxldGlvbnM9W2VdLHQuZmxhZ3N8PTE2KTpuLnB1c2goZSkpLHQuY2hpbGQ9YSx0Lm1lbW9pemVkU3RhdGU9bnVsbCksYTt2YXIgdT1lLGw9dCxlPWEscz1vLHQ9aSxhPW47aWYoYylyZXR1cm4gMjU2JmwuZmxhZ3M/KGwuZmxhZ3MmPS0yNTcsZT1jbChFcnJvcihEKDQyMikpKSxfbCh1LGwsYSxlKSk6bnVsbCE9PWwubWVtb2l6ZWRTdGF0ZT8obC5jaGlsZD11LmNoaWxkLGwuZmxhZ3N8PTEyOCxudWxsKToodD1lLmZhbGxiYWNrLHM9bC5tb2RlLGU9bHUoe21vZGU6InZpc2libGUiLGNoaWxkcmVuOmUuY2hpbGRyZW59LHMsMCxudWxsKSwodD1pdSh0LHMsYSxudWxsKSkuZmxhZ3N8PTIsZS5yZXR1cm49bCx0LnJldHVybj1sLGUuc2libGluZz10LGwuY2hpbGQ9ZSwwIT0oMSZsLm1vZGUpJiZuaShsLHUuY2hpbGQsbnVsbCxhKSxsLmNoaWxkLm1lbW9pemVkU3RhdGU9QWwoYSksbC5tZW1vaXplZFN0YXRlPWpsLHQpO2lmKDA9PSgxJmwubW9kZSkpcmV0dXJuIF9sKHUsbCxhLG51bGwpO2lmKCIkISI9PT1zLmRhdGEpcmV0dXJuIGU9cj0oZT1zLm5leHRTaWJsaW5nJiZzLm5leHRTaWJsaW5nLmRhdGFzZXQpP2UuZGdzdDpyLHQ9RXJyb3IoRCg0MTkpKSxlPWNsKHQsZSx2b2lkIDApLF9sKHUsbCxhLGUpO2lmKHI9MCE9KGEmdS5jaGlsZExhbmVzKSxqfHxyKXtpZihudWxsIT09KGU9cCkpe3N3aXRjaChhJi1hKXtjYXNlIDQ6cz0yO2JyZWFrO2Nhc2UgMTY6cz04O2JyZWFrO2Nhc2UgNjQ6Y2FzZSAxMjg6Y2FzZSAyNTY6Y2FzZSA1MTI6Y2FzZSAxMDI0OmNhc2UgMjA0ODpjYXNlIDQwOTY6Y2FzZSA4MTkyOmNhc2UgMTYzODQ6Y2FzZSAzMjc2ODpjYXNlIDY1NTM2OmNhc2UgMTMxMDcyOmNhc2UgMjYyMTQ0OmNhc2UgNTI0Mjg4OmNhc2UgMTA0ODU3NjpjYXNlIDIwOTcxNTI6Y2FzZSA0MTk0MzA0OmNhc2UgODM4ODYwODpjYXNlIDE2Nzc3MjE2OmNhc2UgMzM1NTQ0MzI6Y2FzZSA2NzEwODg2NDpzPTMyO2JyZWFrO2Nhc2UgNTM2ODcwOTEyOnM9MjY4NDM1NDU2O2JyZWFrO2RlZmF1bHQ6cz0wfTAhPT0ocz0wIT0ocyYoZS5zdXNwZW5kZWRMYW5lc3xhKSk/MDpzKSYmcyE9PXQucmV0cnlMYW5lJiYodC5yZXRyeUxhbmU9cyxNYSh1LHMpLFRjKGUsdSxzLC0xKSl9cmV0dXJuIEdjKCksZT1jbChFcnJvcihEKDQyMSkpKSxfbCh1LGwsYSxlKX1yZXR1cm4iJD8iPT09cy5kYXRhPyhsLmZsYWdzfD0xMjgsbC5jaGlsZD11LmNoaWxkLGw9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5tZW1vaXplZFN0YXRlLG49MDtudWxsIT09dCYmKG49dC5yZXRyeUxhbmUpLEpjKGUsbil9LmJpbmQobnVsbCx1KSxzLl9yZWFjdFJldHJ5PWwsbnVsbCk6KHU9dC50cmVlQ29udGV4dCxrPVNvKHMubmV4dFNpYmxpbmcpLHNhPWwsVT0hMCwoZmE9bnVsbCkhPT11JiYodGFbbmErK109b2EsdGFbbmErK109YWEsdGFbbmErK109cmEsb2E9dS5pZCxhYT11Lm92ZXJmbG93LHJhPWwpLChsPUlsKGwsZS5jaGlsZHJlbikpLmZsYWdzfD00MDk2LGwpfWZ1bmN0aW9uIElsKGUsdCl7cmV0dXJuKCh0PWx1KHttb2RlOiJ2aXNpYmxlIixjaGlsZHJlbjp0fSxlLm1vZGUsMCxudWxsKSkucmV0dXJuPWUpLmNoaWxkPXR9ZnVuY3Rpb24gX2woZSx0LG4scil7cmV0dXJuIG51bGwhPT1yJiZ3YShyKSxuaSh0LGUuY2hpbGQsbnVsbCxuKSwoZT1JbCh0LHQucGVuZGluZ1Byb3BzLmNoaWxkcmVuKSkuZmxhZ3N8PTIsdC5tZW1vaXplZFN0YXRlPW51bGwsZX1mdW5jdGlvbiB6bChlLHQsbil7ZS5sYW5lc3w9dDt2YXIgcj1lLmFsdGVybmF0ZTtudWxsIT09ciYmKHIubGFuZXN8PXQpLFBhKGUucmV0dXJuLHQsbil9ZnVuY3Rpb24gVGwoZSx0LG4scixvKXt2YXIgYT1lLm1lbW9pemVkU3RhdGU7bnVsbD09PWE/ZS5tZW1vaXplZFN0YXRlPXtpc0JhY2t3YXJkczp0LHJlbmRlcmluZzpudWxsLHJlbmRlcmluZ1N0YXJ0VGltZTowLGxhc3Q6cix0YWlsOm4sdGFpbE1vZGU6b306KGEuaXNCYWNrd2FyZHM9dCxhLnJlbmRlcmluZz1udWxsLGEucmVuZGVyaW5nU3RhcnRUaW1lPTAsYS5sYXN0PXIsYS50YWlsPW4sYS50YWlsTW9kZT1vKX1mdW5jdGlvbiBMbChlLHQsbil7dmFyIHI9dC5wZW5kaW5nUHJvcHMsbz1yLnJldmVhbE9yZGVyLGE9ci50YWlsO2lmKEEoZSx0LHIuY2hpbGRyZW4sbiksMCE9KDImKHI9Uy5jdXJyZW50KSkpcj0xJnJ8Mix0LmZsYWdzfD0xMjg7ZWxzZXtpZihudWxsIT09ZSYmMCE9KDEyOCZlLmZsYWdzKSllOmZvcihlPXQuY2hpbGQ7bnVsbCE9PWU7KXtpZigxMz09PWUudGFnKW51bGwhPT1lLm1lbW9pemVkU3RhdGUmJnpsKGUsbix0KTtlbHNlIGlmKDE5PT09ZS50YWcpemwoZSxuLHQpO2Vsc2UgaWYobnVsbCE9PWUuY2hpbGQpe2U9KGUuY2hpbGQucmV0dXJuPWUpLmNoaWxkO2NvbnRpbnVlfWlmKGU9PT10KWJyZWFrO2Zvcig7bnVsbD09PWUuc2libGluZzspe2lmKG51bGw9PT1lLnJldHVybnx8ZS5yZXR1cm49PT10KWJyZWFrIGU7ZT1lLnJldHVybn1lLnNpYmxpbmcucmV0dXJuPWUucmV0dXJuLGU9ZS5zaWJsaW5nfXImPTF9aWYoYihTLHIpLDA9PSgxJnQubW9kZSkpdC5tZW1vaXplZFN0YXRlPW51bGw7ZWxzZSBzd2l0Y2gobyl7Y2FzZSJmb3J3YXJkcyI6Zm9yKG49dC5jaGlsZCxvPW51bGw7bnVsbCE9PW47KW51bGwhPT0oZT1uLmFsdGVybmF0ZSkmJm51bGw9PT1waShlKSYmKG89biksbj1uLnNpYmxpbmc7bnVsbD09PShuPW8pPyhvPXQuY2hpbGQsdC5jaGlsZD1udWxsKToobz1uLnNpYmxpbmcsbi5zaWJsaW5nPW51bGwpLFRsKHQsITEsbyxuLGEpO2JyZWFrO2Nhc2UiYmFja3dhcmRzIjpmb3Iobz10LmNoaWxkLHQuY2hpbGQ9bj1udWxsO251bGwhPT1vOyl7aWYobnVsbCE9PShlPW8uYWx0ZXJuYXRlKSYmbnVsbD09PXBpKGUpKXt0LmNoaWxkPW87YnJlYWt9ZT1vLnNpYmxpbmcsby5zaWJsaW5nPW4sbj1vLG89ZX1UbCh0LCEwLG4sbnVsbCxhKTticmVhaztjYXNlInRvZ2V0aGVyIjpUbCh0LCExLG51bGwsbnVsbCx2b2lkIDApO2JyZWFrO2RlZmF1bHQ6dC5tZW1vaXplZFN0YXRlPW51bGx9cmV0dXJuIHQuY2hpbGR9ZnVuY3Rpb24gTWwoZSx0KXswPT0oMSZ0Lm1vZGUpJiZudWxsIT09ZSYmKGUuYWx0ZXJuYXRlPW51bGwsdC5hbHRlcm5hdGU9bnVsbCx0LmZsYWdzfD0yKX1mdW5jdGlvbiBSbChlLHQsbil7aWYobnVsbCE9PWUmJih0LmRlcGVuZGVuY2llcz1lLmRlcGVuZGVuY2llcyksaGN8PXQubGFuZXMsMD09KG4mdC5jaGlsZExhbmVzKSlyZXR1cm4gbnVsbDtpZihudWxsIT09ZSYmdC5jaGlsZCE9PWUuY2hpbGQpdGhyb3cgRXJyb3IoRCgxNTMpKTtpZihudWxsIT09dC5jaGlsZCl7Zm9yKG49b3UoZT10LmNoaWxkLGUucGVuZGluZ1Byb3BzKSwodC5jaGlsZD1uKS5yZXR1cm49dDtudWxsIT09ZS5zaWJsaW5nOyllPWUuc2libGluZywobj1uLnNpYmxpbmc9b3UoZSxlLnBlbmRpbmdQcm9wcykpLnJldHVybj10O24uc2libGluZz1udWxsfXJldHVybiB0LmNoaWxkfWZ1bmN0aW9uIE5sKGUsdCl7aWYoIVUpc3dpdGNoKGUudGFpbE1vZGUpe2Nhc2UiaGlkZGVuIjp0PWUudGFpbDtmb3IodmFyIG49bnVsbDtudWxsIT09dDspbnVsbCE9PXQuYWx0ZXJuYXRlJiYobj10KSx0PXQuc2libGluZztudWxsPT09bj9lLnRhaWw9bnVsbDpuLnNpYmxpbmc9bnVsbDticmVhaztjYXNlImNvbGxhcHNlZCI6Zm9yKHZhciBuPWUudGFpbCxyPW51bGw7bnVsbCE9PW47KW51bGwhPT1uLmFsdGVybmF0ZSYmKHI9biksbj1uLnNpYmxpbmc7bnVsbD09PXI/dHx8bnVsbD09PWUudGFpbD9lLnRhaWw9bnVsbDplLnRhaWwuc2libGluZz1udWxsOnIuc2libGluZz1udWxsfX1mdW5jdGlvbiBmKGUpe3ZhciB0PW51bGwhPT1lLmFsdGVybmF0ZSYmZS5hbHRlcm5hdGUuY2hpbGQ9PT1lLmNoaWxkLG49MCxyPTA7aWYodClmb3IodmFyIG89ZS5jaGlsZDtudWxsIT09bzspbnw9by5sYW5lc3xvLmNoaWxkTGFuZXMscj0ocnw9MTQ2ODAwNjQmby5zdWJ0cmVlRmxhZ3MpfDE0NjgwMDY0Jm8uZmxhZ3Msby5yZXR1cm49ZSxvPW8uc2libGluZztlbHNlIGZvcihvPWUuY2hpbGQ7bnVsbCE9PW87KW58PW8ubGFuZXN8by5jaGlsZExhbmVzLHI9KHJ8PW8uc3VidHJlZUZsYWdzKXxvLmZsYWdzLG8ucmV0dXJuPWUsbz1vLnNpYmxpbmc7ZS5zdWJ0cmVlRmxhZ3N8PXIsZS5jaGlsZExhbmVzPW59dmFyIERsPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPXQuY2hpbGQ7bnVsbCE9PW47KXtpZig1PT09bi50YWd8fDY9PT1uLnRhZyllLmFwcGVuZENoaWxkKG4uc3RhdGVOb2RlKTtlbHNlIGlmKDQhPT1uLnRhZyYmbnVsbCE9PW4uY2hpbGQpe249KG4uY2hpbGQucmV0dXJuPW4pLmNoaWxkO2NvbnRpbnVlfWlmKG49PT10KWJyZWFrO2Zvcig7bnVsbD09PW4uc2libGluZzspe2lmKG51bGw9PT1uLnJldHVybnx8bi5yZXR1cm49PT10KXJldHVybjtuPW4ucmV0dXJufW4uc2libGluZy5yZXR1cm49bi5yZXR1cm4sbj1uLnNpYmxpbmd9fSxVbD1mdW5jdGlvbihlLHQsbixyKXt2YXIgbz1lLm1lbW9pemVkUHJvcHM7aWYobyE9PXIpe2U9dC5zdGF0ZU5vZGUsY2koYWkuY3VycmVudCk7dmFyIGEsaT1udWxsO3N3aXRjaChuKXtjYXNlImlucHV0IjpvPUVlKGUsbykscj1FZShlLHIpLGk9W107YnJlYWs7Y2FzZSJzZWxlY3QiOm89Zyh7fSxvLHt2YWx1ZTp2b2lkIDB9KSxyPWcoe30scix7dmFsdWU6dm9pZCAwfSksaT1bXTticmVhaztjYXNlInRleHRhcmVhIjpvPVRlKGUsbykscj1UZShlLHIpLGk9W107YnJlYWs7ZGVmYXVsdDoiZnVuY3Rpb24iIT10eXBlb2Ygby5vbkNsaWNrJiYiZnVuY3Rpb24iPT10eXBlb2Ygci5vbkNsaWNrJiYoZS5vbmNsaWNrPXBvKX1mb3IodSBpbiBaZShuLHIpLG49bnVsbCxvKWlmKCFyLmhhc093blByb3BlcnR5KHUpJiZvLmhhc093blByb3BlcnR5KHUpJiZudWxsIT1vW3VdKWlmKCJzdHlsZSI9PT11KXt2YXIgbD1vW3VdO2ZvcihhIGluIGwpbC5oYXNPd25Qcm9wZXJ0eShhKSYmKG49bnx8e30sblthXT0iIil9ZWxzZSJkYW5nZXJvdXNseVNldElubmVySFRNTCIhPT11JiYiY2hpbGRyZW4iIT09dSYmInN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyIhPT11JiYic3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nIiE9PXUmJiJhdXRvRm9jdXMiIT09dSYmKEguaGFzT3duUHJvcGVydHkodSk/aT1pfHxbXTooaT1pfHxbXSkucHVzaCh1LG51bGwpKTtmb3IodSBpbiByKXt2YXIgYz1yW3VdLGw9bnVsbCE9bz9vW3VdOnZvaWQgMDtpZihyLmhhc093blByb3BlcnR5KHUpJiZjIT09bCYmKG51bGwhPWN8fG51bGwhPWwpKWlmKCJzdHlsZSI9PT11KWlmKGwpe2ZvcihhIGluIGwpIWwuaGFzT3duUHJvcGVydHkoYSl8fGMmJmMuaGFzT3duUHJvcGVydHkoYSl8fChuPW58fHt9LG5bYV09IiIpO2ZvcihhIGluIGMpYy5oYXNPd25Qcm9wZXJ0eShhKSYmbFthXSE9PWNbYV0mJihuPW58fHt9LG5bYV09Y1thXSl9ZWxzZSBufHwoaT1pfHxbXSkucHVzaCh1LG4pLG49YztlbHNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PXU/KGM9Yz9jLl9faHRtbDp2b2lkIDAsbD1sP2wuX19odG1sOnZvaWQgMCxudWxsIT1jJiZsIT09YyYmKGk9aXx8W10pLnB1c2godSxjKSk6ImNoaWxkcmVuIj09PXU/InN0cmluZyIhPXR5cGVvZiBjJiYibnVtYmVyIiE9dHlwZW9mIGN8fChpPWl8fFtdKS5wdXNoKHUsIiIrYyk6InN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyIhPT11JiYic3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nIiE9PXUmJihILmhhc093blByb3BlcnR5KHUpPyhudWxsIT1jJiYib25TY3JvbGwiPT09dSYmcygic2Nyb2xsIixlKSxpfHxsPT09Y3x8KGk9W10pKTooaT1pfHxbXSkucHVzaCh1LGMpKX1uJiYoaT1pfHxbXSkucHVzaCgic3R5bGUiLG4pO3ZhciB1PWk7KHQudXBkYXRlUXVldWU9dSkmJih0LmZsYWdzfD00KX19LEJsPWZ1bmN0aW9uKGUsdCxuLHIpe24hPT1yJiYodC5mbGFnc3w9NCl9LEZsPSExLFA9ITEsSGw9ImZ1bmN0aW9uIj09dHlwZW9mIFdlYWtTZXQ/V2Vha1NldDpTZXQsST1udWxsO2Z1bmN0aW9uIFZsKHQsbil7dmFyIGU9dC5yZWY7aWYobnVsbCE9PWUpaWYoImZ1bmN0aW9uIj09dHlwZW9mIGUpdHJ5e2UobnVsbCl9Y2F0Y2goZSl7TSh0LG4sZSl9ZWxzZSBlLmN1cnJlbnQ9bnVsbH1mdW5jdGlvbiAkbCh0LG4sZSl7dHJ5e2UoKX1jYXRjaChlKXtNKHQsbixlKX19dmFyIFdsPSExO2Z1bmN0aW9uIEdsKGUsdCxuKXt2YXIgcj10LnVwZGF0ZVF1ZXVlO2lmKG51bGwhPT0ocj1udWxsIT09cj9yLmxhc3RFZmZlY3Q6bnVsbCkpe3ZhciBvLGE9cj1yLm5leHQ7ZG97fXdoaWxlKChhLnRhZyZlKT09PWUmJihvPWEuZGVzdHJveSwoYS5kZXN0cm95PXZvaWQgMCkhPT1vKSYmJGwodCxuLG8pLChhPWEubmV4dCkhPT1yKX19ZnVuY3Rpb24gcWwoZSx0KXtpZihudWxsIT09KHQ9bnVsbCE9PSh0PXQudXBkYXRlUXVldWUpP3QubGFzdEVmZmVjdDpudWxsKSl7dmFyIG4scj10PXQubmV4dDtkb3t9d2hpbGUoKHIudGFnJmUpPT09ZSYmKG49ci5jcmVhdGUsci5kZXN0cm95PW4oKSksKHI9ci5uZXh0KSE9PXQpfX1mdW5jdGlvbiBabChlKXt2YXIgdCxuPWUucmVmO251bGwhPT1uJiYodD1lLnN0YXRlTm9kZSxlLnRhZyxlPXQsImZ1bmN0aW9uIj09dHlwZW9mIG4/bihlKTpuLmN1cnJlbnQ9ZSl9ZnVuY3Rpb24gWGwoZSl7cmV0dXJuIDU9PT1lLnRhZ3x8Mz09PWUudGFnfHw0PT09ZS50YWd9ZnVuY3Rpb24gWWwoZSl7ZTpmb3IoOzspe2Zvcig7bnVsbD09PWUuc2libGluZzspe2lmKG51bGw9PT1lLnJldHVybnx8WGwoZS5yZXR1cm4pKXJldHVybiBudWxsO2U9ZS5yZXR1cm59Zm9yKGUuc2libGluZy5yZXR1cm49ZS5yZXR1cm4sZT1lLnNpYmxpbmc7NSE9PWUudGFnJiY2IT09ZS50YWcmJjE4IT09ZS50YWc7KXtpZigyJmUuZmxhZ3MpY29udGludWUgZTtpZihudWxsPT09ZS5jaGlsZHx8ND09PWUudGFnKWNvbnRpbnVlIGU7ZT0oZS5jaGlsZC5yZXR1cm49ZSkuY2hpbGR9aWYoISgyJmUuZmxhZ3MpKXJldHVybiBlLnN0YXRlTm9kZX19dmFyIGQ9bnVsbCxRbD0hMTtmdW5jdGlvbiBLbChlLHQsbil7Zm9yKG49bi5jaGlsZDtudWxsIT09bjspSmwoZSx0LG4pLG49bi5zaWJsaW5nfWZ1bmN0aW9uIEpsKGUsdCxuKXtpZihfdCYmImZ1bmN0aW9uIj09dHlwZW9mIF90Lm9uQ29tbWl0RmliZXJVbm1vdW50KXRyeXtfdC5vbkNvbW1pdEZpYmVyVW5tb3VudChJdCxuKX1jYXRjaChlKXt9c3dpdGNoKG4udGFnKXtjYXNlIDU6UHx8Vmwobix0KTtjYXNlIDY6dmFyIHI9ZCxvPVFsO2Q9bnVsbCxLbChlLHQsbiksUWw9byxudWxsIT09KGQ9cikmJihRbD8oZT1kLG49bi5zdGF0ZU5vZGUsKDg9PT1lLm5vZGVUeXBlP2UucGFyZW50Tm9kZTplKS5yZW1vdmVDaGlsZChuKSk6ZC5yZW1vdmVDaGlsZChuLnN0YXRlTm9kZSkpO2JyZWFrO2Nhc2UgMTg6bnVsbCE9PWQmJihRbD8oZT1kLG49bi5zdGF0ZU5vZGUsOD09PWUubm9kZVR5cGU/a28oZS5wYXJlbnROb2RlLG4pOjE9PT1lLm5vZGVUeXBlJiZrbyhlLG4pLG1uKGUpKTprbyhkLG4uc3RhdGVOb2RlKSk7YnJlYWs7Y2FzZSA0OnI9ZCxvPVFsLGQ9bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyxRbD0hMCxLbChlLHQsbiksZD1yLFFsPW87YnJlYWs7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNDpjYXNlIDE1OmlmKCFQJiZudWxsIT09KHI9bi51cGRhdGVRdWV1ZSkmJm51bGwhPT0ocj1yLmxhc3RFZmZlY3QpKXtvPXI9ci5uZXh0O2Rve3ZhciBhPW8uZGVzdHJveSxpPW8udGFnfXdoaWxlKHZvaWQgMD09PWF8fDA9PSgyJmkpJiYwPT0oNCZpKXx8JGwobix0LGEpLChvPW8ubmV4dCkhPT1yKX1LbChlLHQsbik7YnJlYWs7Y2FzZSAxOmlmKCFQJiYoVmwobix0KSwiZnVuY3Rpb24iPT10eXBlb2Yocj1uLnN0YXRlTm9kZSkuY29tcG9uZW50V2lsbFVubW91bnQpKXRyeXtyLnByb3BzPW4ubWVtb2l6ZWRQcm9wcyxyLnN0YXRlPW4ubWVtb2l6ZWRTdGF0ZSxyLmNvbXBvbmVudFdpbGxVbm1vdW50KCl9Y2F0Y2goZSl7TShuLHQsZSl9S2woZSx0LG4pO2JyZWFrO2Nhc2UgMjE6S2woZSx0LG4pO2JyZWFrO2Nhc2UgMjI6MSZuLm1vZGU/KFA9KHI9UCl8fG51bGwhPT1uLm1lbW9pemVkU3RhdGUsS2woZSx0LG4pLFA9cik6S2woZSx0LG4pO2JyZWFrO2RlZmF1bHQ6S2woZSx0LG4pfX1mdW5jdGlvbiBlYyhuKXt2YXIgcixlPW4udXBkYXRlUXVldWU7bnVsbCE9PWUmJigobi51cGRhdGVRdWV1ZT1udWxsKT09PShyPW4uc3RhdGVOb2RlKSYmKHI9bi5zdGF0ZU5vZGU9bmV3IEhsKSxlLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj0wO3N3aXRjaChlLnRhZyl7Y2FzZSAxMzp2YXIgcj1lLnN0YXRlTm9kZSxvPWUubWVtb2l6ZWRTdGF0ZTtudWxsIT09byYmKG49by5yZXRyeUxhbmUpO2JyZWFrO2Nhc2UgMTk6cj1lLnN0YXRlTm9kZTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKEQoMzE0KSl9bnVsbCE9PXImJnIuZGVsZXRlKHQpLEpjKGUsbil9LmJpbmQobnVsbCxuLGUpO3IuaGFzKGUpfHwoci5hZGQoZSksZS50aGVuKHQsdCkpfSkpfWZ1bmN0aW9uIHRjKGUsdCl7dmFyIG49dC5kZWxldGlvbnM7aWYobnVsbCE9PW4pZm9yKHZhciByPTA7cjxuLmxlbmd0aDtyKyspe3ZhciBvPW5bcl07dHJ5e3ZhciBhPWUsaT10LGw9aTtlOmZvcig7bnVsbCE9PWw7KXtzd2l0Y2gobC50YWcpe2Nhc2UgNTpkPWwuc3RhdGVOb2RlLFFsPSExO2JyZWFrIGU7Y2FzZSAzOmNhc2UgNDpkPWwuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8sUWw9ITA7YnJlYWsgZX1sPWwucmV0dXJufWlmKG51bGw9PT1kKXRocm93IEVycm9yKEQoMTYwKSk7SmwoYSxpLG8pLGQ9bnVsbCxRbD0hMTt2YXIgYz1vLmFsdGVybmF0ZTtudWxsIT09YyYmKGMucmV0dXJuPW51bGwpLG8ucmV0dXJuPW51bGx9Y2F0Y2goZSl7TShvLHQsZSl9fWlmKDEyODU0JnQuc3VidHJlZUZsYWdzKWZvcih0PXQuY2hpbGQ7bnVsbCE9PXQ7KW5jKHQsZSksdD10LnNpYmxpbmd9ZnVuY3Rpb24gbmModCxlKXt2YXIgbj10LmFsdGVybmF0ZSxyPXQuZmxhZ3M7c3dpdGNoKHQudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE0OmNhc2UgMTU6aWYodGMoZSx0KSxyYyh0KSw0JnIpe3RyeXtHbCgzLHQsdC5yZXR1cm4pLHFsKDMsdCl9Y2F0Y2goZSl7TSh0LHQucmV0dXJuLGUpfXRyeXtHbCg1LHQsdC5yZXR1cm4pfWNhdGNoKGUpe00odCx0LnJldHVybixlKX19YnJlYWs7Y2FzZSAxOnRjKGUsdCkscmModCksNTEyJnImJm51bGwhPT1uJiZWbChuLG4ucmV0dXJuKTticmVhaztjYXNlIDU6aWYodGMoZSx0KSxyYyh0KSw1MTImciYmbnVsbCE9PW4mJlZsKG4sbi5yZXR1cm4pLDMyJnQuZmxhZ3Mpe3ZhciBvPXQuc3RhdGVOb2RlO3RyeXtIZShvLCIiKX1jYXRjaChlKXtNKHQsdC5yZXR1cm4sZSl9fWlmKDQmciYmbnVsbCE9KG89dC5zdGF0ZU5vZGUpKXt2YXIgYT10Lm1lbW9pemVkUHJvcHMsaT1udWxsIT09bj9uLm1lbW9pemVkUHJvcHM6YSxsPXQudHlwZSxjPXQudXBkYXRlUXVldWU7aWYoKHQudXBkYXRlUXVldWU9bnVsbCkhPT1jKXRyeXsiaW5wdXQiPT09bCYmInJhZGlvIj09PWEudHlwZSYmbnVsbCE9YS5uYW1lJiZqZShvLGEpLFhlKGwsaSk7Zm9yKHZhciB1PVhlKGwsYSksaT0wO2k8Yy5sZW5ndGg7aSs9Mil7dmFyIHM9Y1tpXSxmPWNbaSsxXTsic3R5bGUiPT09cz9HZShvLGYpOiJkYW5nZXJvdXNseVNldElubmVySFRNTCI9PT1zP0ZlKG8sZik6ImNoaWxkcmVuIj09PXM/SGUobyxmKTpLKG8scyxmLHUpfXN3aXRjaChsKXtjYXNlImlucHV0IjpBZShvLGEpO2JyZWFrO2Nhc2UidGV4dGFyZWEiOk1lKG8sYSk7YnJlYWs7Y2FzZSJzZWxlY3QiOnZhciBkPW8uX3dyYXBwZXJTdGF0ZS53YXNNdWx0aXBsZSxwPShvLl93cmFwcGVyU3RhdGUud2FzTXVsdGlwbGU9ISFhLm11bHRpcGxlLGEudmFsdWUpO251bGwhPXA/emUobywhIWEubXVsdGlwbGUscCwhMSk6ZCE9PSEhYS5tdWx0aXBsZSYmKG51bGwhPWEuZGVmYXVsdFZhbHVlP3plKG8sISFhLm11bHRpcGxlLGEuZGVmYXVsdFZhbHVlLCEwKTp6ZShvLCEhYS5tdWx0aXBsZSxhLm11bHRpcGxlP1tdOiIiLCExKSl9b1tPb109YX1jYXRjaChlKXtNKHQsdC5yZXR1cm4sZSl9fWJyZWFrO2Nhc2UgNjppZih0YyhlLHQpLHJjKHQpLDQmcil7aWYobnVsbD09PXQuc3RhdGVOb2RlKXRocm93IEVycm9yKEQoMTYyKSk7bz10LnN0YXRlTm9kZSxhPXQubWVtb2l6ZWRQcm9wczt0cnl7by5ub2RlVmFsdWU9YX1jYXRjaChlKXtNKHQsdC5yZXR1cm4sZSl9fWJyZWFrO2Nhc2UgMzppZih0YyhlLHQpLHJjKHQpLDQmciYmbnVsbCE9PW4mJm4ubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpdHJ5e21uKGUuY29udGFpbmVySW5mbyl9Y2F0Y2goZSl7TSh0LHQucmV0dXJuLGUpfWJyZWFrO2Nhc2UgNDp0YyhlLHQpLHJjKHQpO2JyZWFrO2Nhc2UgMTM6dGMoZSx0KSxyYyh0KSw4MTkyJihvPXQuY2hpbGQpLmZsYWdzJiYoYT1udWxsIT09by5tZW1vaXplZFN0YXRlLCEoby5zdGF0ZU5vZGUuaXNIaWRkZW49YSl8fG51bGwhPT1vLmFsdGVybmF0ZSYmbnVsbCE9PW8uYWx0ZXJuYXRlLm1lbW9pemVkU3RhdGV8fCh2Yz1oKCkpKSw0JnImJmVjKHQpO2JyZWFrO2Nhc2UgMjI6aWYocz1udWxsIT09biYmbnVsbCE9PW4ubWVtb2l6ZWRTdGF0ZSwxJnQubW9kZT8oUD0odT1QKXx8cyx0YyhlLHQpLFA9dSk6dGMoZSx0KSxyYyh0KSw4MTkyJnIpe2lmKHU9bnVsbCE9PXQubWVtb2l6ZWRTdGF0ZSwodC5zdGF0ZU5vZGUuaXNIaWRkZW49dSkmJiFzJiYwIT0oMSZ0Lm1vZGUpKWZvcihzPShJPXQpLmNoaWxkO251bGwhPT1zOyl7Zm9yKGY9ST1zO251bGwhPT1JOyl7c3dpdGNoKHA9KGQ9SSkuY2hpbGQsZC50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTQ6Y2FzZSAxNTpHbCg0LGQsZC5yZXR1cm4pO2JyZWFrO2Nhc2UgMTpWbChkLGQucmV0dXJuKTt2YXIgbT1kLnN0YXRlTm9kZTtpZigiZnVuY3Rpb24iPT10eXBlb2YgbS5jb21wb25lbnRXaWxsVW5tb3VudCl7bj0ocj1kKS5yZXR1cm47dHJ5e2U9cixtLnByb3BzPWUubWVtb2l6ZWRQcm9wcyxtLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSxtLmNvbXBvbmVudFdpbGxVbm1vdW50KCl9Y2F0Y2goZSl7TShyLG4sZSl9fWJyZWFrO2Nhc2UgNTpWbChkLGQucmV0dXJuKTticmVhaztjYXNlIDIyOmlmKG51bGwhPT1kLm1lbW9pemVkU3RhdGUpe2ljKGYpO2NvbnRpbnVlfX1udWxsIT09cD8ocC5yZXR1cm49ZCxJPXApOmljKGYpfXM9cy5zaWJsaW5nfWU6Zm9yKHM9bnVsbCxmPXQ7Oyl7aWYoNT09PWYudGFnKXtpZihudWxsPT09cyl7cz1mO3RyeXtvPWYuc3RhdGVOb2RlLHU/ImZ1bmN0aW9uIj09dHlwZW9mKGE9by5zdHlsZSkuc2V0UHJvcGVydHk/YS5zZXRQcm9wZXJ0eSgiZGlzcGxheSIsIm5vbmUiLCJpbXBvcnRhbnQiKTphLmRpc3BsYXk9Im5vbmUiOihsPWYuc3RhdGVOb2RlLGk9bnVsbCE9KGM9Zi5tZW1vaXplZFByb3BzLnN0eWxlKSYmYy5oYXNPd25Qcm9wZXJ0eSgiZGlzcGxheSIpP2MuZGlzcGxheTpudWxsLGwuc3R5bGUuZGlzcGxheT1XZSgiZGlzcGxheSIsaSkpfWNhdGNoKGUpe00odCx0LnJldHVybixlKX19fWVsc2UgaWYoNj09PWYudGFnKXtpZihudWxsPT09cyl0cnl7Zi5zdGF0ZU5vZGUubm9kZVZhbHVlPXU/IiI6Zi5tZW1vaXplZFByb3BzfWNhdGNoKGUpe00odCx0LnJldHVybixlKX19ZWxzZSBpZigoMjIhPT1mLnRhZyYmMjMhPT1mLnRhZ3x8bnVsbD09PWYubWVtb2l6ZWRTdGF0ZXx8Zj09PXQpJiZudWxsIT09Zi5jaGlsZCl7Zj0oZi5jaGlsZC5yZXR1cm49ZikuY2hpbGQ7Y29udGludWV9aWYoZj09PXQpYnJlYWs7Zm9yKDtudWxsPT09Zi5zaWJsaW5nOyl7aWYobnVsbD09PWYucmV0dXJufHxmLnJldHVybj09PXQpYnJlYWsgZTtzPT09ZiYmKHM9bnVsbCksZj1mLnJldHVybn1zPT09ZiYmKHM9bnVsbCksZi5zaWJsaW5nLnJldHVybj1mLnJldHVybixmPWYuc2libGluZ319YnJlYWs7Y2FzZSAxOTp0YyhlLHQpLHJjKHQpLDQmciYmZWModCk7YnJlYWs7Y2FzZSAyMTpicmVhaztkZWZhdWx0OnRjKGUsdCkscmModCl9fWZ1bmN0aW9uIHJjKHQpe3ZhciBlPXQuZmxhZ3M7aWYoMiZlKXt0cnl7ZTp7Zm9yKHZhciBuPXQucmV0dXJuO251bGwhPT1uOyl7aWYoWGwobikpe3ZhciByPW47YnJlYWsgZX1uPW4ucmV0dXJufXRocm93IEVycm9yKEQoMTYwKSl9c3dpdGNoKHIudGFnKXtjYXNlIDU6dmFyIG89ci5zdGF0ZU5vZGU7MzImci5mbGFncyYmKEhlKG8sIiIpLHIuZmxhZ3MmPS0zMyksIWZ1bmN0aW9uIGUodCxuLHIpe3ZhciBvPXQudGFnO2lmKDU9PT1vfHw2PT09byl0PXQuc3RhdGVOb2RlLG4/ci5pbnNlcnRCZWZvcmUodCxuKTpyLmFwcGVuZENoaWxkKHQpO2Vsc2UgaWYoNCE9PW8mJm51bGwhPT0odD10LmNoaWxkKSlmb3IoZSh0LG4sciksdD10LnNpYmxpbmc7bnVsbCE9PXQ7KWUodCxuLHIpLHQ9dC5zaWJsaW5nfSh0LFlsKHQpLG8pO2JyZWFrO2Nhc2UgMzpjYXNlIDQ6dmFyIGE9ci5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzshZnVuY3Rpb24gZSh0LG4scil7dmFyIG89dC50YWc7aWYoNT09PW98fDY9PT1vKXQ9dC5zdGF0ZU5vZGUsbj8oOD09PXIubm9kZVR5cGU/ci5wYXJlbnROb2RlOnIpLmluc2VydEJlZm9yZSh0LG4pOig4PT09ci5ub2RlVHlwZT8obj1yLnBhcmVudE5vZGUpLmluc2VydEJlZm9yZSh0LHIpOihuPXIpLmFwcGVuZENoaWxkKHQpLG51bGw9PShyPXIuX3JlYWN0Um9vdENvbnRhaW5lcikmJm51bGw9PT1uLm9uY2xpY2smJihuLm9uY2xpY2s9cG8pKTtlbHNlIGlmKDQhPT1vJiZudWxsIT09KHQ9dC5jaGlsZCkpZm9yKGUodCxuLHIpLHQ9dC5zaWJsaW5nO251bGwhPT10OyllKHQsbixyKSx0PXQuc2libGluZ30odCxZbCh0KSxhKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKEQoMTYxKSl9fWNhdGNoKGUpe00odCx0LnJldHVybixlKX10LmZsYWdzJj0tM300MDk2JmUmJih0LmZsYWdzJj0tNDA5Nyl9ZnVuY3Rpb24gb2MoZSx0LG4peyFmdW5jdGlvbiBlKHQsbixyKXtmb3IodmFyIG89MCE9KDEmdC5tb2RlKTtudWxsIT09STspe3ZhciBhPUksaT1hLmNoaWxkO2lmKDIyPT09YS50YWcmJm8pe3ZhciBsPW51bGwhPT1hLm1lbW9pemVkU3RhdGV8fEZsO2lmKCFsKXt2YXIgYz1hLmFsdGVybmF0ZSx1PW51bGwhPT1jJiZudWxsIT09Yy5tZW1vaXplZFN0YXRlfHxQLHM9KGM9RmwsUCk7aWYoRmw9bCwoUD11KSYmIXMpZm9yKEk9YTtudWxsIT09STspdT0obD1JKS5jaGlsZCwoMjIhPT1sLnRhZ3x8bnVsbD09PWwubWVtb2l6ZWRTdGF0ZSkmJm51bGwhPT11Pyh1LnJldHVybj1sLEk9dSk6bGMoYSk7Zm9yKDtudWxsIT09aTspZShJPWksbixyKSxpPWkuc2libGluZztJPWEsRmw9YyxQPXN9YWModCl9ZWxzZSAwIT0oODc3MiZhLnN1YnRyZWVGbGFncykmJm51bGwhPT1pPyhpLnJldHVybj1hLEk9aSk6YWModCl9fShJPWUsdCxuKX1mdW5jdGlvbiBhYyhlKXtmb3IoO251bGwhPT1JOyl7dmFyIHQ9STtpZigwIT0oODc3MiZ0LmZsYWdzKSl7dmFyIG4scixvLGE9dC5hbHRlcm5hdGU7dHJ5e2lmKDAhPSg4NzcyJnQuZmxhZ3MpKXN3aXRjaCh0LnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTpQfHxxbCg1LHQpO2JyZWFrO2Nhc2UgMTp2YXIgaSxsPXQuc3RhdGVOb2RlLGM9KDQmdC5mbGFncyYmIVAmJihudWxsPT09YT9sLmNvbXBvbmVudERpZE1vdW50KCk6KGk9dC5lbGVtZW50VHlwZT09PXQudHlwZT9hLm1lbW9pemVkUHJvcHM6a2EodC50eXBlLGEubWVtb2l6ZWRQcm9wcyksbC5jb21wb25lbnREaWRVcGRhdGUoaSxhLm1lbW9pemVkU3RhdGUsbC5fX3JlYWN0SW50ZXJuYWxTbmFwc2hvdEJlZm9yZVVwZGF0ZSkpKSx0LnVwZGF0ZVF1ZXVlKTtudWxsIT09YyYmJGEoMCxjLGwpO2JyZWFrO2Nhc2UgMzp2YXIgdT10LnVwZGF0ZVF1ZXVlO2lmKG51bGwhPT11KXtpZigoYT1udWxsKSE9PXQuY2hpbGQpc3dpdGNoKHQuY2hpbGQudGFnKXtjYXNlIDU6Y2FzZSAxOmE9dC5jaGlsZC5zdGF0ZU5vZGV9JGEoMCx1LGEpfWJyZWFrO2Nhc2UgNTp2YXIgcz10LnN0YXRlTm9kZTtpZihudWxsPT09YSYmNCZ0LmZsYWdzKXt2YXIgYT1zLGY9dC5tZW1vaXplZFByb3BzO3N3aXRjaCh0LnR5cGUpe2Nhc2UiYnV0dG9uIjpjYXNlImlucHV0IjpjYXNlInNlbGVjdCI6Y2FzZSJ0ZXh0YXJlYSI6Zi5hdXRvRm9jdXMmJmEuZm9jdXMoKTticmVhaztjYXNlImltZyI6Zi5zcmMmJihhLnNyYz1mLnNyYyl9fWJyZWFrO2Nhc2UgNjpjYXNlIDQ6Y2FzZSAxMjpicmVhaztjYXNlIDEzOm51bGw9PT10Lm1lbW9pemVkU3RhdGUmJm51bGwhPT0obj10LmFsdGVybmF0ZSkmJm51bGwhPT0ocj1uLm1lbW9pemVkU3RhdGUpJiZudWxsIT09KG89ci5kZWh5ZHJhdGVkKSYmbW4obyk7YnJlYWs7Y2FzZSAxOTpjYXNlIDE3OmNhc2UgMjE6Y2FzZSAyMjpjYXNlIDIzOmNhc2UgMjU6YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcihEKDE2MykpfVB8fDUxMiZ0LmZsYWdzJiZabCh0KX1jYXRjaChlKXtNKHQsdC5yZXR1cm4sZSl9fWlmKHQ9PT1lKXtJPW51bGw7YnJlYWt9aWYobnVsbCE9PShhPXQuc2libGluZykpe2EucmV0dXJuPXQucmV0dXJuLEk9YTticmVha31JPXQucmV0dXJufX1mdW5jdGlvbiBpYyhlKXtmb3IoO251bGwhPT1JOyl7dmFyIHQ9STtpZih0PT09ZSl7ST1udWxsO2JyZWFrfXZhciBuPXQuc2libGluZztpZihudWxsIT09bil7bi5yZXR1cm49dC5yZXR1cm4sST1uO2JyZWFrfUk9dC5yZXR1cm59fWZ1bmN0aW9uIGxjKGUpe2Zvcig7bnVsbCE9PUk7KXt2YXIgdD1JO3RyeXtzd2l0Y2godC50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6dmFyIG49dC5yZXR1cm47dHJ5e3FsKDQsdCl9Y2F0Y2goZSl7TSh0LG4sZSl9YnJlYWs7Y2FzZSAxOnZhciByPXQuc3RhdGVOb2RlO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiByLmNvbXBvbmVudERpZE1vdW50KXt2YXIgbz10LnJldHVybjt0cnl7ci5jb21wb25lbnREaWRNb3VudCgpfWNhdGNoKGUpe00odCxvLGUpfX12YXIgYT10LnJldHVybjt0cnl7WmwodCl9Y2F0Y2goZSl7TSh0LGEsZSl9YnJlYWs7Y2FzZSA1OnZhciBpPXQucmV0dXJuO3RyeXtabCh0KX1jYXRjaChlKXtNKHQsaSxlKX19fWNhdGNoKGUpe00odCx0LnJldHVybixlKX1pZih0PT09ZSl7ST1udWxsO2JyZWFrfXZhciBsPXQuc2libGluZztpZihudWxsIT09bCl7bC5yZXR1cm49dC5yZXR1cm4sST1sO2JyZWFrfUk9dC5yZXR1cm59fXZhciBjYz1NYXRoLmNlaWwsdWM9Si5SZWFjdEN1cnJlbnREaXNwYXRjaGVyLHNjPUouUmVhY3RDdXJyZW50T3duZXIsZmM9Si5SZWFjdEN1cnJlbnRCYXRjaENvbmZpZyxfPTAscD1udWxsLHo9bnVsbCxUPTAsZGM9MCxwYz1ObygwKSxMPTAsbWM9bnVsbCxoYz0wLGdjPTAsYmM9MCx5Yz1udWxsLGw9bnVsbCx2Yz0wLHdjPTEvMCx4Yz1udWxsLGtjPSExLFNjPW51bGwsQ2M9bnVsbCxFYz0hMSxPYz1udWxsLGpjPTAsQWM9MCxQYz1udWxsLEljPS0xLF9jPTA7ZnVuY3Rpb24gbSgpe3JldHVybiAwIT0oNiZfKT9oKCk6LTEhPT1JYz9JYzpJYz1oKCl9ZnVuY3Rpb24gemMoZSl7cmV0dXJuIDA9PSgxJmUubW9kZSk/MTowIT0oMiZfKSYmMCE9PVQ/VCYtVDpudWxsIT09eGEudHJhbnNpdGlvbj9fYz0wPT09X2M/RnQoKTpfYzowPT09KGU9eCk/dm9pZCAwPT09KGU9d2luZG93LmV2ZW50KT8xNjprbihlLnR5cGUpOmV9ZnVuY3Rpb24gVGMoZSx0LG4scil7aWYoNTA8QWMpdGhyb3cgQWM9MCxQYz1udWxsLEVycm9yKEQoMTg1KSk7VnQoZSxuLHIpLDAhPSgyJl8pJiZlPT09cHx8KGU9PT1wJiYoMD09KDImXykmJihnY3w9biksND09PUwpJiZEYyhlLFQpLExjKGUsciksMT09PW4mJjA9PT1fJiYwPT0oMSZ0Lm1vZGUpJiYod2M9aCgpKzUwMCxxbykmJllvKCkpfWZ1bmN0aW9uIExjKGUsdCl7dmFyIG4scj1lLmNhbGxiYWNrTm9kZSxvPShVdChlLHQpLER0KGUsZT09PXA/VDowKSk7aWYoMD09PW8pbnVsbCE9PXImJnh0KHIpLGUuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTA7ZWxzZSBpZihlLmNhbGxiYWNrUHJpb3JpdHkhPT0odD1vJi1vKSl7aWYobnVsbCE9ciYmeHQociksMT09PXQpMD09PWUudGFnPyhuPVVjLmJpbmQobnVsbCxlKSxxbz0hMCxYbyhuKSk6WG8oVWMuYmluZChudWxsLGUpKSx3byhmdW5jdGlvbigpezA9PSg2Jl8pJiZZbygpfSkscj1udWxsO2Vsc2V7c3dpdGNoKFd0KG8pKXtjYXNlIDE6cj1FdDticmVhaztjYXNlIDQ6cj1PdDticmVhaztjYXNlIDE2OnI9anQ7YnJlYWs7Y2FzZSA1MzY4NzA5MTI6cj1QdDticmVhaztkZWZhdWx0OnI9anR9cj1ldShyLE1jLmJpbmQobnVsbCxlKSl9ZS5jYWxsYmFja1ByaW9yaXR5PXQsZS5jYWxsYmFja05vZGU9cn19ZnVuY3Rpb24gTWModCxlKXtpZihJYz0tMSwoX2M9MCkhPSg2Jl8pKXRocm93IEVycm9yKEQoMzI3KSk7dmFyIG49dC5jYWxsYmFja05vZGU7aWYoUWMoKSYmdC5jYWxsYmFja05vZGUhPT1uKXJldHVybiBudWxsO3ZhciByPUR0KHQsdD09PXA/VDowKTtpZigwPT09cilyZXR1cm4gbnVsbDtpZigwIT0oMzAmcil8fDAhPShyJnQuZXhwaXJlZExhbmVzKXx8ZSllPXFjKHQscik7ZWxzZXtlPXI7dmFyIG89XyxhPShffD0yLFdjKCkpO2ZvcihwPT09dCYmVD09PWV8fCh4Yz1udWxsLHdjPWgoKSs1MDAsVmModCxlKSk7Oyl0cnl7Zm9yKDtudWxsIT09eiYmIWt0KCk7KVpjKHopO2JyZWFrfWNhdGNoKGUpeyRjKHQsZSl9amEoKSx1Yy5jdXJyZW50PWEsXz1vLGU9bnVsbCE9PXo/MDoocD1udWxsLFQ9MCxMKX1pZigwIT09ZSl7aWYoMT09PShlPTI9PT1lJiYwIT09KG89QnQodCkpP1JjKHQscj1vKTplKSl0aHJvdyBuPW1jLFZjKHQsMCksRGModCxyKSxMYyh0LGgoKSksbjtpZig2PT09ZSlEYyh0LHIpO2Vsc2V7aWYobz10LmN1cnJlbnQuYWx0ZXJuYXRlLDA9PSgzMCZyKSYmIWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1lOzspe2lmKDE2Mzg0JnQuZmxhZ3Mpe3ZhciBuPXQudXBkYXRlUXVldWU7aWYobnVsbCE9PW4mJm51bGwhPT0obj1uLnN0b3JlcykpZm9yKHZhciByPTA7cjxuLmxlbmd0aDtyKyspe3ZhciBvPW5bcl0sYT1vLmdldFNuYXBzaG90O289by52YWx1ZTt0cnl7aWYoIWtyKGEoKSxvKSlyZXR1cm59Y2F0Y2goZSl7cmV0dXJufX19aWYobj10LmNoaWxkLDE2Mzg0JnQuc3VidHJlZUZsYWdzJiZudWxsIT09biluLnJldHVybj10LHQ9bjtlbHNle2lmKHQ9PT1lKWJyZWFrO2Zvcig7bnVsbD09PXQuc2libGluZzspe2lmKG51bGw9PT10LnJldHVybnx8dC5yZXR1cm49PT1lKXJldHVybiAxO3Q9dC5yZXR1cm59dC5zaWJsaW5nLnJldHVybj10LnJldHVybix0PXQuc2libGluZ319cmV0dXJuIDF9KG8pJiYxPT09KGU9Mj09PShlPXFjKHQscikpJiYwIT09KGE9QnQodCkpP1JjKHQscj1hKTplKSl0aHJvdyBuPW1jLFZjKHQsMCksRGModCxyKSxMYyh0LGgoKSksbjtzd2l0Y2godC5maW5pc2hlZFdvcms9byx0LmZpbmlzaGVkTGFuZXM9cixlKXtjYXNlIDA6Y2FzZSAxOnRocm93IEVycm9yKEQoMzQ1KSk7Y2FzZSAyOlljKHQsbCx4Yyk7YnJlYWs7Y2FzZSAzOmlmKERjKHQsciksKDEzMDAyMzQyNCZyKT09PXImJjEwPChlPXZjKzUwMC1oKCkpKXtpZigwIT09RHQodCwwKSlicmVhaztpZigoKG89dC5zdXNwZW5kZWRMYW5lcykmcikhPT1yKXttKCksdC5waW5nZWRMYW5lc3w9dC5zdXNwZW5kZWRMYW5lcyZvO2JyZWFrfXQudGltZW91dEhhbmRsZT1ibyhZYy5iaW5kKG51bGwsdCxsLHhjKSxlKX1lbHNlIFljKHQsbCx4Yyk7YnJlYWs7Y2FzZSA0OmlmKERjKHQsciksKDQxOTQyNDAmcikhPT1yKXtmb3IoZT10LmV2ZW50VGltZXMsbz0tMTswPHI7KXt2YXIgaT0zMS16dChyKSxhPTE8PGk7bzwoaT1lW2ldKSYmKG89aSksciY9fmF9cj1vLDEwPChyPSgocj1oKCktcik8MTIwPzEyMDpyPDQ4MD80ODA6cjwxMDgwPzEwODA6cjwxOTIwPzE5MjA6cjwzZTM/M2UzOnI8NDMyMD80MzIwOjE5NjAqY2Moci8xOTYwKSktcik/dC50aW1lb3V0SGFuZGxlPWJvKFljLmJpbmQobnVsbCx0LGwseGMpLHIpOlljKHQsbCx4Yyl9YnJlYWs7Y2FzZSA1OlljKHQsbCx4Yyk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcihEKDMyOSkpfX19cmV0dXJuIExjKHQsaCgpKSx0LmNhbGxiYWNrTm9kZT09PW4/TWMuYmluZChudWxsLHQpOm51bGx9ZnVuY3Rpb24gUmMoZSx0KXt2YXIgbj15YztyZXR1cm4gZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkJiYoVmMoZSx0KS5mbGFnc3w9MjU2KSwyIT09KGU9cWMoZSx0KSkmJih0PWwsbD1uLG51bGwhPT10KSYmTmModCksZX1mdW5jdGlvbiBOYyhlKXtudWxsPT09bD9sPWU6bC5wdXNoLmFwcGx5KGwsZSl9ZnVuY3Rpb24gRGMoZSx0KXtmb3IodD10Jn5iYyZ+Z2MsZS5zdXNwZW5kZWRMYW5lc3w9dCxlLnBpbmdlZExhbmVzJj1+dCxlPWUuZXhwaXJhdGlvblRpbWVzOzA8dDspe3ZhciBuPTMxLXp0KHQpLHI9MTw8bjtlW25dPS0xLHQmPX5yfX1mdW5jdGlvbiBVYyhlKXtpZigwIT0oNiZfKSl0aHJvdyBFcnJvcihEKDMyNykpO1FjKCk7dmFyIHQ9RHQoZSwwKTtpZigwIT0oMSZ0KSl7dmFyIG4scj1xYyhlLHQpO2lmKDE9PT0ocj0wIT09ZS50YWcmJjI9PT1yJiYwIT09KG49QnQoZSkpP1JjKGUsdD1uKTpyKSl0aHJvdyByPW1jLFZjKGUsMCksRGMoZSx0KSxMYyhlLGgoKSkscjtpZig2PT09cil0aHJvdyBFcnJvcihEKDM0NSkpO2UuZmluaXNoZWRXb3JrPWUuY3VycmVudC5hbHRlcm5hdGUsZS5maW5pc2hlZExhbmVzPXQsWWMoZSxsLHhjKX1yZXR1cm4gTGMoZSxoKCkpLG51bGx9ZnVuY3Rpb24gQmMoZSx0KXt2YXIgbj1fO198PTE7dHJ5e3JldHVybiBlKHQpfWZpbmFsbHl7MD09PShfPW4pJiYod2M9aCgpKzUwMCxxbykmJllvKCl9fWZ1bmN0aW9uIEZjKGUpe251bGwhPT1PYyYmMD09PU9jLnRhZyYmMD09KDYmXykmJlFjKCk7dmFyIHQ9XyxuPShffD0xLGZjLnRyYW5zaXRpb24pLHI9eDt0cnl7aWYoZmMudHJhbnNpdGlvbj1udWxsLHg9MSxlKXJldHVybiBlKCl9ZmluYWxseXt4PXIsZmMudHJhbnNpdGlvbj1uLDA9PSg2JihfPXQpKSYmWW8oKX19ZnVuY3Rpb24gSGMoKXtkYz1wYy5jdXJyZW50LHUocGMpfWZ1bmN0aW9uIFZjKGUsdCl7ZS5maW5pc2hlZFdvcms9bnVsbCxlLmZpbmlzaGVkTGFuZXM9MDt2YXIgbixyLG8sYT1lLnRpbWVvdXRIYW5kbGU7aWYoLTEhPT1hJiYoZS50aW1lb3V0SGFuZGxlPS0xLHlvKGEpKSxudWxsIT09eilmb3IoYT16LnJldHVybjtudWxsIT09YTspe3ZhciBpPWE7c3dpdGNoKHVhKGkpLGkudGFnKXtjYXNlIDE6bnVsbCE9KGk9aS50eXBlLmNoaWxkQ29udGV4dFR5cGVzKSYmRm8oKTticmVhaztjYXNlIDM6c2koKSx1KHYpLHUoeSksaGkoKTticmVhaztjYXNlIDU6ZGkoaSk7YnJlYWs7Y2FzZSA0OnNpKCk7YnJlYWs7Y2FzZSAxMzpjYXNlIDE5OnUoUyk7YnJlYWs7Y2FzZSAxMDpBYShpLnR5cGUuX2NvbnRleHQpO2JyZWFrO2Nhc2UgMjI6Y2FzZSAyMzpIYygpfWE9YS5yZXR1cm59aWYoej1lPW91KChwPWUpLmN1cnJlbnQsbnVsbCksVD1kYz10LGJjPWdjPWhjPUw9MCwobD15Yz1tYz1udWxsKSE9PXphKXtmb3IodD0wO3Q8emEubGVuZ3RoO3QrKyludWxsIT09KGk9KGE9emFbdF0pLmludGVybGVhdmVkKSYmKGEuaW50ZXJsZWF2ZWQ9bnVsbCxuPWkubmV4dCxudWxsIT09KHI9YS5wZW5kaW5nKSYmKG89ci5uZXh0LHIubmV4dD1uLGkubmV4dD1vKSxhLnBlbmRpbmc9aSk7emE9bnVsbH1yZXR1cm4gZX1mdW5jdGlvbiAkYyhlLHQpe2Rve3ZhciBuPXo7dHJ5e2lmKGphKCksZ2kuY3VycmVudD1ybCx2aSl7Zm9yKHZhciByPUMubWVtb2l6ZWRTdGF0ZTtudWxsIT09cjspe3ZhciBvPXIucXVldWU7bnVsbCE9PW8mJihvLnBlbmRpbmc9bnVsbCkscj1yLm5leHR9dmk9ITF9aWYoTz1FPUM9bnVsbCx3aT0hMSx4aT15aT0wLChzYy5jdXJyZW50PW51bGwpPT09bnx8bnVsbD09PW4ucmV0dXJuKXtMPTEsbWM9dCx6PW51bGw7YnJlYWt9ZTp7dmFyIGE9ZSxpPW4ucmV0dXJuLGw9dDtpZih0PVQsKGc9bikuZmxhZ3N8PTMyNzY4LG51bGwhPT1sJiYib2JqZWN0Ij09dHlwZW9mIGwmJiJmdW5jdGlvbiI9PXR5cGVvZiBsLnRoZW4pe3ZhciBjLHU9bCxzPWcsZj1zLnRhZyxkPSgwIT0oMSZzLm1vZGUpfHwwIT09ZiYmMTEhPT1mJiYxNSE9PWZ8fCgoYz1zLmFsdGVybmF0ZSk/KHMudXBkYXRlUXVldWU9Yy51cGRhdGVRdWV1ZSxzLm1lbW9pemVkU3RhdGU9Yy5tZW1vaXplZFN0YXRlLHMubGFuZXM9Yy5sYW5lcyk6KHMudXBkYXRlUXVldWU9bnVsbCxzLm1lbW9pemVkU3RhdGU9bnVsbCkpLG1sKGkpKTtpZihudWxsIT09ZCl7ZC5mbGFncyY9LTI1NyxobChkLGksZywwLHQpLDEmZC5tb2RlJiZwbChhLHUsdCk7dmFyIHAsbD11LG09KHQ9ZCkudXBkYXRlUXVldWU7bnVsbD09PW0/KChwPW5ldyBTZXQpLmFkZChsKSx0LnVwZGF0ZVF1ZXVlPXApOm0uYWRkKGwpO2JyZWFrIGV9aWYoMD09KDEmdCkpe3BsKGEsdSx0KSxHYygpO2JyZWFrIGV9bD1FcnJvcihEKDQyNikpfWVsc2UgaWYoVSYmMSZnLm1vZGUpe3ZhciBoPW1sKGkpO2lmKG51bGwhPT1oKXswPT0oNjU1MzYmaC5mbGFncykmJihoLmZsYWdzfD0yNTYpLGhsKGgsaSxnLDAsdCksd2EobGwobCxnKSk7YnJlYWsgZX19YT1sPWxsKGwsZyksNCE9PUwmJihMPTIpLG51bGw9PT15Yz95Yz1bYV06eWMucHVzaChhKSxhPWk7ZG97c3dpdGNoKGEudGFnKXtjYXNlIDM6YS5mbGFnc3w9NjU1MzYsdCY9LXQsYS5sYW5lc3w9dCxIYShhLGZsKDAsbCx0KSk7YnJlYWsgZTtjYXNlIDE6dmFyIGc9bCxiPWEudHlwZSx5PWEuc3RhdGVOb2RlO2lmKDA9PSgxMjgmYS5mbGFncykmJigiZnVuY3Rpb24iPT10eXBlb2YgYi5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3J8fG51bGwhPT15JiYiZnVuY3Rpb24iPT10eXBlb2YgeS5jb21wb25lbnREaWRDYXRjaCYmKG51bGw9PT1DY3x8IUNjLmhhcyh5KSkpKXthLmZsYWdzfD02NTUzNix0Jj0tdCxhLmxhbmVzfD10LEhhKGEsZGwoYSxnLHQpKTticmVhayBlfX19d2hpbGUobnVsbCE9PShhPWEucmV0dXJuKSl9WGMobil9Y2F0Y2goZSl7dD1lLHo9PT1uJiZudWxsIT09biYmKHo9bi5yZXR1cm4pO2NvbnRpbnVlfWJyZWFrfXdoaWxlKDEpfWZ1bmN0aW9uIFdjKCl7dmFyIGU9dWMuY3VycmVudDtyZXR1cm4gdWMuY3VycmVudD1ybCxudWxsPT09ZT9ybDplfWZ1bmN0aW9uIEdjKCl7MCE9PUwmJjMhPT1MJiYyIT09THx8KEw9NCksbnVsbD09PXB8fDA9PSgyNjg0MzU0NTUmaGMpJiYwPT0oMjY4NDM1NDU1JmdjKXx8RGMocCxUKX1mdW5jdGlvbiBxYyh0LGUpe3ZhciBuPV8scj0oX3w9MixXYygpKTtmb3IocD09PXQmJlQ9PT1lfHwoeGM9bnVsbCxWYyh0LGUpKTs7KXRyeXtmb3IoO251bGwhPT16OylaYyh6KTticmVha31jYXRjaChlKXskYyh0LGUpfWlmKGphKCksXz1uLHVjLmN1cnJlbnQ9cixudWxsIT09eil0aHJvdyBFcnJvcihEKDI2MSkpO3JldHVybiBwPW51bGwsVD0wLEx9ZnVuY3Rpb24gWmMoZSl7dmFyIHQ9eXUoZS5hbHRlcm5hdGUsZSxkYyk7ZS5tZW1vaXplZFByb3BzPWUucGVuZGluZ1Byb3BzLG51bGw9PT10P1hjKGUpOno9dCxzYy5jdXJyZW50PW51bGx9ZnVuY3Rpb24gWGMoZSl7dmFyIHQ9ZTtkb3t2YXIgbj10LmFsdGVybmF0ZTtpZihlPXQucmV0dXJuLDA9PSgzMjc2OCZ0LmZsYWdzKSl7aWYobnVsbCE9PShuPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj10LnBlbmRpbmdQcm9wcztzd2l0Y2godWEodCksdC50YWcpe2Nhc2UgMjpjYXNlIDE2OmNhc2UgMTU6Y2FzZSAwOmNhc2UgMTE6Y2FzZSA3OmNhc2UgODpjYXNlIDEyOmNhc2UgOTpjYXNlIDE0OnJldHVybiBmKHQpLG51bGw7Y2FzZSAxOnJldHVybiB3KHQudHlwZSkmJkZvKCksZih0KSxudWxsO2Nhc2UgMzpyZXR1cm4gcj10LnN0YXRlTm9kZSxzaSgpLHUodiksdSh5KSxoaSgpLHIucGVuZGluZ0NvbnRleHQmJihyLmNvbnRleHQ9ci5wZW5kaW5nQ29udGV4dCxyLnBlbmRpbmdDb250ZXh0PW51bGwpLG51bGwhPT1lJiZudWxsIT09ZS5jaGlsZHx8KGJhKHQpP3QuZmxhZ3N8PTQ6bnVsbD09PWV8fGUubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQmJjA9PSgyNTYmdC5mbGFncyl8fCh0LmZsYWdzfD0xMDI0LG51bGwhPT1mYSYmKE5jKGZhKSxmYT1udWxsKSkpLGYodCksbnVsbDtjYXNlIDU6ZGkodCk7dmFyIG8sYT1jaShsaS5jdXJyZW50KTtpZihuPXQudHlwZSxudWxsIT09ZSYmbnVsbCE9dC5zdGF0ZU5vZGUpVWwoZSx0LG4sciksZS5yZWYhPT10LnJlZiYmKHQuZmxhZ3N8PTUxMix0LmZsYWdzfD0yMDk3MTUyKTtlbHNle2lmKCFyKXtpZihudWxsPT09dC5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoRCgxNjYpKTtyZXR1cm4gZih0KSxudWxsfWlmKGU9Y2koYWkuY3VycmVudCksYmEodCkpe3I9dC5zdGF0ZU5vZGUsbj10LnR5cGU7dmFyIGksbCxjPXQubWVtb2l6ZWRQcm9wcztzd2l0Y2gocltFb109dCxyW09vXT1jLGU9MCE9KDEmdC5tb2RlKSxuKXtjYXNlImRpYWxvZyI6cygiY2FuY2VsIixyKSxzKCJjbG9zZSIscik7YnJlYWs7Y2FzZSJpZnJhbWUiOmNhc2Uib2JqZWN0IjpjYXNlImVtYmVkIjpzKCJsb2FkIixyKTticmVhaztjYXNlInZpZGVvIjpjYXNlImF1ZGlvIjpmb3IoYT0wO2E8WHIubGVuZ3RoO2ErKylzKFhyW2FdLHIpO2JyZWFrO2Nhc2Uic291cmNlIjpzKCJlcnJvciIscik7YnJlYWs7Y2FzZSJpbWciOmNhc2UiaW1hZ2UiOmNhc2UibGluayI6cygiZXJyb3IiLHIpLHMoImxvYWQiLHIpO2JyZWFrO2Nhc2UiZGV0YWlscyI6cygidG9nZ2xlIixyKTticmVhaztjYXNlImlucHV0IjpPZShyLGMpLHMoImludmFsaWQiLHIpO2JyZWFrO2Nhc2Uic2VsZWN0IjpyLl93cmFwcGVyU3RhdGU9e3dhc011bHRpcGxlOiEhYy5tdWx0aXBsZX0scygiaW52YWxpZCIscik7YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6TGUocixjKSxzKCJpbnZhbGlkIixyKX1mb3IoaSBpbiBaZShuLGMpLGE9bnVsbCxjKWMuaGFzT3duUHJvcGVydHkoaSkmJihsPWNbaV0sImNoaWxkcmVuIj09PWk/InN0cmluZyI9PXR5cGVvZiBsP3IudGV4dENvbnRlbnQhPT1sJiYoITAhPT1jLnN1cHByZXNzSHlkcmF0aW9uV2FybmluZyYmZm8oci50ZXh0Q29udGVudCxsLGUpLGE9WyJjaGlsZHJlbiIsbF0pOiJudW1iZXIiPT10eXBlb2YgbCYmci50ZXh0Q29udGVudCE9PSIiK2wmJighMCE9PWMuc3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nJiZmbyhyLnRleHRDb250ZW50LGwsZSksYT1bImNoaWxkcmVuIiwiIitsXSk6SC5oYXNPd25Qcm9wZXJ0eShpKSYmbnVsbCE9bCYmIm9uU2Nyb2xsIj09PWkmJnMoInNjcm9sbCIscikpO3N3aXRjaChuKXtjYXNlImlucHV0IjprZShyKSxQZShyLGMsITApO2JyZWFrO2Nhc2UidGV4dGFyZWEiOmtlKHIpLFJlKHIpO2JyZWFrO2Nhc2Uic2VsZWN0IjpjYXNlIm9wdGlvbiI6YnJlYWs7ZGVmYXVsdDoiZnVuY3Rpb24iPT10eXBlb2YgYy5vbkNsaWNrJiYoci5vbmNsaWNrPXBvKX1yPWEsbnVsbCE9PSh0LnVwZGF0ZVF1ZXVlPXIpJiYodC5mbGFnc3w9NCl9ZWxzZXtpPTk9PT1hLm5vZGVUeXBlP2E6YS5vd25lckRvY3VtZW50LCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj09PShlPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj09PWU/TmUobik6ZSk/InNjcmlwdCI9PT1uPygoZT1pLmNyZWF0ZUVsZW1lbnQoImRpdiIpKS5pbm5lckhUTUw9IjxzY3JpcHQ+PFwvc2NyaXB0PiIsZT1lLnJlbW92ZUNoaWxkKGUuZmlyc3RDaGlsZCkpOiJzdHJpbmciPT10eXBlb2Ygci5pcz9lPWkuY3JlYXRlRWxlbWVudChuLHtpczpyLmlzfSk6KGU9aS5jcmVhdGVFbGVtZW50KG4pLCJzZWxlY3QiPT09biYmKGk9ZSxyLm11bHRpcGxlP2kubXVsdGlwbGU9ITA6ci5zaXplJiYoaS5zaXplPXIuc2l6ZSkpKTplPWkuY3JlYXRlRWxlbWVudE5TKGUsbiksZVtFb109dCxlW09vXT1yLERsKGUsdCksdC5zdGF0ZU5vZGU9ZTtlOntzd2l0Y2goaT1YZShuLHIpLG4pe2Nhc2UiZGlhbG9nIjpzKCJjYW5jZWwiLGUpLHMoImNsb3NlIixlKSxhPXI7YnJlYWs7Y2FzZSJpZnJhbWUiOmNhc2Uib2JqZWN0IjpjYXNlImVtYmVkIjpzKCJsb2FkIixlKSxhPXI7YnJlYWs7Y2FzZSJ2aWRlbyI6Y2FzZSJhdWRpbyI6Zm9yKGE9MDthPFhyLmxlbmd0aDthKyspcyhYclthXSxlKTthPXI7YnJlYWs7Y2FzZSJzb3VyY2UiOnMoImVycm9yIixlKSxhPXI7YnJlYWs7Y2FzZSJpbWciOmNhc2UiaW1hZ2UiOmNhc2UibGluayI6cygiZXJyb3IiLGUpLHMoImxvYWQiLGUpLGE9cjticmVhaztjYXNlImRldGFpbHMiOnMoInRvZ2dsZSIsZSksYT1yO2JyZWFrO2Nhc2UiaW5wdXQiOk9lKGUsciksYT1FZShlLHIpLHMoImludmFsaWQiLGUpO2JyZWFrO2Nhc2Uib3B0aW9uIjphPXI7YnJlYWs7Y2FzZSJzZWxlY3QiOmUuX3dyYXBwZXJTdGF0ZT17d2FzTXVsdGlwbGU6ISFyLm11bHRpcGxlfSxhPWcoe30scix7dmFsdWU6dm9pZCAwfSkscygiaW52YWxpZCIsZSk7YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6TGUoZSxyKSxhPVRlKGUscikscygiaW52YWxpZCIsZSk7YnJlYWs7ZGVmYXVsdDphPXJ9Zm9yKGMgaW4gWmUobixhKSxsPWEpbC5oYXNPd25Qcm9wZXJ0eShjKSYmKG89bFtjXSwic3R5bGUiPT09Yz9HZShlLG8pOiJkYW5nZXJvdXNseVNldElubmVySFRNTCI9PT1jP251bGwhPShvPW8/by5fX2h0bWw6dm9pZCAwKSYmRmUoZSxvKToiY2hpbGRyZW4iPT09Yz8ic3RyaW5nIj09dHlwZW9mIG8/InRleHRhcmVhIj09PW4mJiIiPT09b3x8SGUoZSxvKToibnVtYmVyIj09dHlwZW9mIG8mJkhlKGUsIiIrbyk6InN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyIhPT1jJiYic3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nIiE9PWMmJiJhdXRvRm9jdXMiIT09YyYmKEguaGFzT3duUHJvcGVydHkoYyk/bnVsbCE9byYmIm9uU2Nyb2xsIj09PWMmJnMoInNjcm9sbCIsZSk6bnVsbCE9byYmSyhlLGMsbyxpKSkpO3N3aXRjaChuKXtjYXNlImlucHV0IjprZShlKSxQZShlLHIsITEpO2JyZWFrO2Nhc2UidGV4dGFyZWEiOmtlKGUpLFJlKGUpO2JyZWFrO2Nhc2Uib3B0aW9uIjpudWxsIT1yLnZhbHVlJiZlLnNldEF0dHJpYnV0ZSgidmFsdWUiLCIiK3dlKHIudmFsdWUpKTticmVhaztjYXNlInNlbGVjdCI6ZS5tdWx0aXBsZT0hIXIubXVsdGlwbGUsbnVsbCE9KGM9ci52YWx1ZSk/emUoZSwhIXIubXVsdGlwbGUsYywhMSk6bnVsbCE9ci5kZWZhdWx0VmFsdWUmJnplKGUsISFyLm11bHRpcGxlLHIuZGVmYXVsdFZhbHVlLCEwKTticmVhaztkZWZhdWx0OiJmdW5jdGlvbiI9PXR5cGVvZiBhLm9uQ2xpY2smJihlLm9uY2xpY2s9cG8pfXN3aXRjaChuKXtjYXNlImJ1dHRvbiI6Y2FzZSJpbnB1dCI6Y2FzZSJzZWxlY3QiOmNhc2UidGV4dGFyZWEiOnI9ISFyLmF1dG9Gb2N1czticmVhayBlO2Nhc2UiaW1nIjpyPSEwO2JyZWFrIGU7ZGVmYXVsdDpyPSExfX1yJiYodC5mbGFnc3w9NCl9bnVsbCE9PXQucmVmJiYodC5mbGFnc3w9NTEyLHQuZmxhZ3N8PTIwOTcxNTIpfXJldHVybiBmKHQpLG51bGw7Y2FzZSA2OmlmKGUmJm51bGwhPXQuc3RhdGVOb2RlKUJsKDAsdCxlLm1lbW9pemVkUHJvcHMscik7ZWxzZXtpZigic3RyaW5nIiE9dHlwZW9mIHImJm51bGw9PT10LnN0YXRlTm9kZSl0aHJvdyBFcnJvcihEKDE2NikpO2lmKG49Y2kobGkuY3VycmVudCksY2koYWkuY3VycmVudCksYmEodCkpe2lmKHI9dC5zdGF0ZU5vZGUsbj10Lm1lbW9pemVkUHJvcHMscltFb109dCwoYz1yLm5vZGVWYWx1ZSE9PW4pJiZudWxsIT09KGU9c2EpKXN3aXRjaChlLnRhZyl7Y2FzZSAzOmZvKHIubm9kZVZhbHVlLG4sMCE9KDEmZS5tb2RlKSk7YnJlYWs7Y2FzZSA1OiEwIT09ZS5tZW1vaXplZFByb3BzLnN1cHByZXNzSHlkcmF0aW9uV2FybmluZyYmZm8oci5ub2RlVmFsdWUsbiwwIT0oMSZlLm1vZGUpKX1jJiYodC5mbGFnc3w9NCl9ZWxzZSgocj0oOT09PW4ubm9kZVR5cGU/bjpuLm93bmVyRG9jdW1lbnQpLmNyZWF0ZVRleHROb2RlKHIpKVtFb109dCkuc3RhdGVOb2RlPXJ9cmV0dXJuIGYodCksbnVsbDtjYXNlIDEzOmlmKHUoUykscj10Lm1lbW9pemVkU3RhdGUsbnVsbD09PWV8fG51bGwhPT1lLm1lbW9pemVkU3RhdGUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUuZGVoeWRyYXRlZCl7aWYoVSYmbnVsbCE9PWsmJjAhPSgxJnQubW9kZSkmJjA9PSgxMjgmdC5mbGFncykpeWEoKSx2YSgpLHQuZmxhZ3N8PTk4NTYwLGM9ITE7ZWxzZSBpZihjPWJhKHQpLG51bGwhPT1yJiZudWxsIT09ci5kZWh5ZHJhdGVkKXtpZihudWxsPT09ZSl7aWYoIWMpdGhyb3cgRXJyb3IoRCgzMTgpKTtpZighKGM9bnVsbCE9PShjPXQubWVtb2l6ZWRTdGF0ZSk/Yy5kZWh5ZHJhdGVkOm51bGwpKXRocm93IEVycm9yKEQoMzE3KSk7Y1tFb109dH1lbHNlIHZhKCksMD09KDEyOCZ0LmZsYWdzKSYmKHQubWVtb2l6ZWRTdGF0ZT1udWxsKSx0LmZsYWdzfD00O2YodCksYz0hMX1lbHNlIG51bGwhPT1mYSYmKE5jKGZhKSxmYT1udWxsKSxjPSEwO2lmKCFjKXJldHVybiA2NTUzNiZ0LmZsYWdzP3Q6bnVsbH1yZXR1cm4gMCE9KDEyOCZ0LmZsYWdzKT8odC5sYW5lcz1uLHQpOigocj1udWxsIT09cikhPT0obnVsbCE9PWUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUpJiZyJiYodC5jaGlsZC5mbGFnc3w9ODE5MiwwIT0oMSZ0Lm1vZGUpKSYmKG51bGw9PT1lfHwwIT0oMSZTLmN1cnJlbnQpPzA9PT1MJiYoTD0zKTpHYygpKSxudWxsIT09dC51cGRhdGVRdWV1ZSYmKHQuZmxhZ3N8PTQpLGYodCksbnVsbCk7Y2FzZSA0OnJldHVybiBzaSgpLG51bGw9PT1lJiZ0byh0LnN0YXRlTm9kZS5jb250YWluZXJJbmZvKSxmKHQpLG51bGw7Y2FzZSAxMDpyZXR1cm4gQWEodC50eXBlLl9jb250ZXh0KSxmKHQpLG51bGw7Y2FzZSAxNzpyZXR1cm4gdyh0LnR5cGUpJiZGbygpLGYodCksbnVsbDtjYXNlIDE5OmlmKHUoUyksbnVsbD09PShjPXQubWVtb2l6ZWRTdGF0ZSkpO2Vsc2V7aWYocj0wIT0oMTI4JnQuZmxhZ3MpLG51bGw9PT0oaT1jLnJlbmRlcmluZykpaWYocilObChjLCExKTtlbHNle2lmKDAhPT1MfHxudWxsIT09ZSYmMCE9KDEyOCZlLmZsYWdzKSlmb3IoZT10LmNoaWxkO251bGwhPT1lOyl7aWYobnVsbCE9PShpPXBpKGUpKSl7Zm9yKHQuZmxhZ3N8PTEyOCxObChjLCExKSxudWxsIT09KHI9aS51cGRhdGVRdWV1ZSkmJih0LnVwZGF0ZVF1ZXVlPXIsdC5mbGFnc3w9NCksdC5zdWJ0cmVlRmxhZ3M9MCxyPW4sbj10LmNoaWxkO251bGwhPT1uOyllPXIsKGM9bikuZmxhZ3MmPTE0NjgwMDY2LG51bGw9PT0oaT1jLmFsdGVybmF0ZSk/KGMuY2hpbGRMYW5lcz0wLGMubGFuZXM9ZSxjLmNoaWxkPW51bGwsYy5zdWJ0cmVlRmxhZ3M9MCxjLm1lbW9pemVkUHJvcHM9bnVsbCxjLm1lbW9pemVkU3RhdGU9bnVsbCxjLnVwZGF0ZVF1ZXVlPW51bGwsYy5kZXBlbmRlbmNpZXM9bnVsbCxjLnN0YXRlTm9kZT1udWxsKTooYy5jaGlsZExhbmVzPWkuY2hpbGRMYW5lcyxjLmxhbmVzPWkubGFuZXMsYy5jaGlsZD1pLmNoaWxkLGMuc3VidHJlZUZsYWdzPTAsYy5kZWxldGlvbnM9bnVsbCxjLm1lbW9pemVkUHJvcHM9aS5tZW1vaXplZFByb3BzLGMubWVtb2l6ZWRTdGF0ZT1pLm1lbW9pemVkU3RhdGUsYy51cGRhdGVRdWV1ZT1pLnVwZGF0ZVF1ZXVlLGMudHlwZT1pLnR5cGUsZT1pLmRlcGVuZGVuY2llcyxjLmRlcGVuZGVuY2llcz1udWxsPT09ZT9udWxsOntsYW5lczplLmxhbmVzLGZpcnN0Q29udGV4dDplLmZpcnN0Q29udGV4dH0pLG49bi5zaWJsaW5nO3JldHVybiBiKFMsMSZTLmN1cnJlbnR8MiksdC5jaGlsZH1lPWUuc2libGluZ31udWxsIT09Yy50YWlsJiZoKCk+d2MmJih0LmZsYWdzfD0xMjgsTmwoYywhKHI9ITApKSx0LmxhbmVzPTQxOTQzMDQpfWVsc2V7aWYoIXIpaWYobnVsbCE9PShlPXBpKGkpKSl7aWYodC5mbGFnc3w9MTI4LHI9ITAsbnVsbCE9PShuPWUudXBkYXRlUXVldWUpJiYodC51cGRhdGVRdWV1ZT1uLHQuZmxhZ3N8PTQpLE5sKGMsITApLG51bGw9PT1jLnRhaWwmJiJoaWRkZW4iPT09Yy50YWlsTW9kZSYmIWkuYWx0ZXJuYXRlJiYhVSlyZXR1cm4gZih0KSxudWxsfWVsc2UgMipoKCktYy5yZW5kZXJpbmdTdGFydFRpbWU+d2MmJjEwNzM3NDE4MjQhPT1uJiYodC5mbGFnc3w9MTI4LE5sKGMsIShyPSEwKSksdC5sYW5lcz00MTk0MzA0KTtjLmlzQmFja3dhcmRzPyhpLnNpYmxpbmc9dC5jaGlsZCx0LmNoaWxkPWkpOihudWxsIT09KG49Yy5sYXN0KT9uLnNpYmxpbmc9aTp0LmNoaWxkPWksYy5sYXN0PWkpfWlmKG51bGwhPT1jLnRhaWwpcmV0dXJuIHQ9Yy50YWlsLGMucmVuZGVyaW5nPXQsYy50YWlsPXQuc2libGluZyxjLnJlbmRlcmluZ1N0YXJ0VGltZT1oKCksdC5zaWJsaW5nPW51bGwsbj1TLmN1cnJlbnQsYihTLHI/MSZufDI6MSZuKSx0fXJldHVybiBmKHQpLG51bGw7Y2FzZSAyMjpjYXNlIDIzOnJldHVybiBIYygpLHI9bnVsbCE9PXQubWVtb2l6ZWRTdGF0ZSxudWxsIT09ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSE9PXImJih0LmZsYWdzfD04MTkyKSxyJiYwIT0oMSZ0Lm1vZGUpPzAhPSgxMDczNzQxODI0JmRjKSYmKGYodCksNiZ0LnN1YnRyZWVGbGFncykmJih0LmZsYWdzfD04MTkyKTpmKHQpLG51bGw7Y2FzZSAyNDpjYXNlIDI1OnJldHVybiBudWxsfXRocm93IEVycm9yKEQoMTU2LHQudGFnKSl9KG4sdCxkYykpKXJldHVybiB2b2lkKHo9bil9ZWxzZXtpZihudWxsIT09KG49ZnVuY3Rpb24oZSx0KXtzd2l0Y2godWEodCksdC50YWcpe2Nhc2UgMTpyZXR1cm4gdyh0LnR5cGUpJiZGbygpLDY1NTM2JihlPXQuZmxhZ3MpPyh0LmZsYWdzPS02NTUzNyZlfDEyOCx0KTpudWxsO2Nhc2UgMzpyZXR1cm4gc2koKSx1KHYpLHUoeSksaGkoKSwwIT0oNjU1MzYmKGU9dC5mbGFncykpJiYwPT0oMTI4JmUpPyh0LmZsYWdzPS02NTUzNyZlfDEyOCx0KTpudWxsO2Nhc2UgNTpyZXR1cm4gZGkodCksbnVsbDtjYXNlIDEzOmlmKHUoUyksbnVsbCE9PShlPXQubWVtb2l6ZWRTdGF0ZSkmJm51bGwhPT1lLmRlaHlkcmF0ZWQpe2lmKG51bGw9PT10LmFsdGVybmF0ZSl0aHJvdyBFcnJvcihEKDM0MCkpO3ZhKCl9cmV0dXJuIDY1NTM2JihlPXQuZmxhZ3MpPyh0LmZsYWdzPS02NTUzNyZlfDEyOCx0KTpudWxsO2Nhc2UgMTk6cmV0dXJuIHUoUyksbnVsbDtjYXNlIDQ6cmV0dXJuIHNpKCksbnVsbDtjYXNlIDEwOnJldHVybiBBYSh0LnR5cGUuX2NvbnRleHQpLG51bGw7Y2FzZSAyMjpjYXNlIDIzOnJldHVybiBIYygpLG51bGw7ZGVmYXVsdDpyZXR1cm4gbnVsbH19KG4sdCkpKXJldHVybiBuLmZsYWdzJj0zMjc2Nyx2b2lkKHo9bik7aWYobnVsbD09PWUpcmV0dXJuIEw9Nix2b2lkKHo9bnVsbCk7ZS5mbGFnc3w9MzI3NjgsZS5zdWJ0cmVlRmxhZ3M9MCxlLmRlbGV0aW9ucz1udWxsfWlmKG51bGwhPT0odD10LnNpYmxpbmcpKXJldHVybiB2b2lkKHo9dCl9d2hpbGUoej10PWUsbnVsbCE9PXQpOzA9PT1MJiYoTD01KX1mdW5jdGlvbiBZYyhlLHQsbil7dmFyIHI9eCxvPWZjLnRyYW5zaXRpb247dHJ5e2ZjLnRyYW5zaXRpb249bnVsbCx4PTE7Zm9yKHZhciBhPWUsaT10LGw9bixjPXI7UWMoKSxudWxsIT09T2M7KTtpZigwIT0oNiZfKSl0aHJvdyBFcnJvcihEKDMyNykpO2w9YS5maW5pc2hlZFdvcms7dmFyIHU9YS5maW5pc2hlZExhbmVzO2lmKG51bGwhPT1sKXtpZihhLmZpbmlzaGVkV29yaz1udWxsLGEuZmluaXNoZWRMYW5lcz0wLGw9PT1hLmN1cnJlbnQpdGhyb3cgRXJyb3IoRCgxNzcpKTthLmNhbGxiYWNrTm9kZT1udWxsLGEuY2FsbGJhY2tQcmlvcml0eT0wO3ZhciBzLGYsZD1sLmxhbmVzfGwuY2hpbGRMYW5lcztpZighZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnBlbmRpbmdMYW5lcyZ+dCxyPShlLnBlbmRpbmdMYW5lcz10LGUuc3VzcGVuZGVkTGFuZXM9MCxlLnBpbmdlZExhbmVzPTAsZS5leHBpcmVkTGFuZXMmPXQsZS5tdXRhYmxlUmVhZExhbmVzJj10LGUuZW50YW5nbGVkTGFuZXMmPXQsdD1lLmVudGFuZ2xlbWVudHMsZS5ldmVudFRpbWVzKTtmb3IoZT1lLmV4cGlyYXRpb25UaW1lczswPG47KXt2YXIgbz0zMS16dChuKSxhPTE8PG87dFtvXT0wLHJbb109LTEsZVtvXT0tMSxuJj1+YX19KGEsZCksYT09PXAmJih6PXA9bnVsbCxUPTApLDA9PSgyMDY0Jmwuc3VidHJlZUZsYWdzKSYmMD09KDIwNjQmbC5mbGFncyl8fEVjfHwoRWM9ITAsZXUoanQsZnVuY3Rpb24oKXtyZXR1cm4gUWMoKSxudWxsfSkpLGQ9MCE9KDE1OTkwJmwuZmxhZ3MpLDAhPSgxNTk5MCZsLnN1YnRyZWVGbGFncyl8fGQ/KGQ9ZmMudHJhbnNpdGlvbixmYy50cmFuc2l0aW9uPW51bGwscz14LHg9MSxmPV8sX3w9NCxzYy5jdXJyZW50PW51bGwsZnVuY3Rpb24oZSx0KXtpZihtbz1nbixqcihlPU9yKCkpKXtpZigic2VsZWN0aW9uU3RhcnQiaW4gZSl2YXIgbj17c3RhcnQ6ZS5zZWxlY3Rpb25TdGFydCxlbmQ6ZS5zZWxlY3Rpb25FbmR9O2Vsc2UgZTppZigoYT0obj0obj1lLm93bmVyRG9jdW1lbnQpJiZuLmRlZmF1bHRWaWV3fHx3aW5kb3cpLmdldFNlbGVjdGlvbiYmbi5nZXRTZWxlY3Rpb24oKSkmJjAhPT1hLnJhbmdlQ291bnQpe3ZhciBuPWEuYW5jaG9yTm9kZSxyPWEuYW5jaG9yT2Zmc2V0LG89YS5mb2N1c05vZGUsYT1hLmZvY3VzT2Zmc2V0O3RyeXtuLm5vZGVUeXBlLG8ubm9kZVR5cGV9Y2F0Y2goZSl7bj1udWxsO2JyZWFrIGV9dmFyIGksbD0wLGM9LTEsdT0tMSxzPTAsZj0wLGQ9ZSxwPW51bGw7dDpmb3IoOzspe2Zvcig7ZCE9PW58fDAhPT1yJiYzIT09ZC5ub2RlVHlwZXx8KGM9bCtyKSxkIT09b3x8MCE9PWEmJjMhPT1kLm5vZGVUeXBlfHwodT1sK2EpLDM9PT1kLm5vZGVUeXBlJiYobCs9ZC5ub2RlVmFsdWUubGVuZ3RoKSxudWxsIT09KGk9ZC5maXJzdENoaWxkKTspcD1kLGQ9aTtmb3IoOzspe2lmKGQ9PT1lKWJyZWFrIHQ7aWYocD09PW4mJisrcz09PXImJihjPWwpLHA9PT1vJiYrK2Y9PT1hJiYodT1sKSxudWxsIT09KGk9ZC5uZXh0U2libGluZykpYnJlYWs7cD0oZD1wKS5wYXJlbnROb2RlfWQ9aX1uPS0xPT09Y3x8LTE9PT11P251bGw6e3N0YXJ0OmMsZW5kOnV9fWVsc2Ugbj1udWxsO249bnx8e3N0YXJ0OjAsZW5kOjB9fWVsc2Ugbj1udWxsO2Zvcihnbj0hKGhvPXtmb2N1c2VkRWxlbTplLHNlbGVjdGlvblJhbmdlOm59KSxJPXQ7bnVsbCE9PUk7KWlmKGU9KHQ9SSkuY2hpbGQsMCE9KDEwMjgmdC5zdWJ0cmVlRmxhZ3MpJiZudWxsIT09ZSllLnJldHVybj10LEk9ZTtlbHNlIGZvcig7bnVsbCE9PUk7KXt0PUk7dHJ5e3ZhciBtLGgsZyxiLHk9dC5hbHRlcm5hdGU7aWYoMCE9KDEwMjQmdC5mbGFncykpc3dpdGNoKHQudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OmJyZWFrO2Nhc2UgMTpudWxsIT09eSYmKG09eS5tZW1vaXplZFByb3BzLGg9eS5tZW1vaXplZFN0YXRlLGI9KGc9dC5zdGF0ZU5vZGUpLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlKHQuZWxlbWVudFR5cGU9PT10LnR5cGU/bTprYSh0LnR5cGUsbSksaCksZy5fX3JlYWN0SW50ZXJuYWxTbmFwc2hvdEJlZm9yZVVwZGF0ZT1iKTticmVhaztjYXNlIDM6dmFyIHY9dC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzsxPT09di5ub2RlVHlwZT92LnRleHRDb250ZW50PSIiOjk9PT12Lm5vZGVUeXBlJiZ2LmRvY3VtZW50RWxlbWVudCYmdi5yZW1vdmVDaGlsZCh2LmRvY3VtZW50RWxlbWVudCk7YnJlYWs7Y2FzZSA1OmNhc2UgNjpjYXNlIDQ6Y2FzZSAxNzpicmVhaztkZWZhdWx0OnRocm93IEVycm9yKEQoMTYzKSl9fWNhdGNoKGUpe00odCx0LnJldHVybixlKX1pZihudWxsIT09KGU9dC5zaWJsaW5nKSl7ZS5yZXR1cm49dC5yZXR1cm4sST1lO2JyZWFrfUk9dC5yZXR1cm59eT1XbCxXbD0hMX0oYSxsKSxuYyhsLGEpLEFyKGhvKSxnbj0hIW1vLGhvPW1vPW51bGwsb2MoYS5jdXJyZW50PWwsYSx1KSxTdCgpLF89Zix4PXMsZmMudHJhbnNpdGlvbj1kKTphLmN1cnJlbnQ9bCxFYyYmKEVjPSExLE9jPWEsamM9dSksMD09PShkPWEucGVuZGluZ0xhbmVzKSYmKENjPW51bGwpLCFmdW5jdGlvbihlKXtpZihfdCYmImZ1bmN0aW9uIj09dHlwZW9mIF90Lm9uQ29tbWl0RmliZXJSb290KXRyeXtfdC5vbkNvbW1pdEZpYmVyUm9vdChJdCxlLHZvaWQgMCwxMjg9PSgxMjgmZS5jdXJyZW50LmZsYWdzKSl9Y2F0Y2goZSl7fX0obC5zdGF0ZU5vZGUpLExjKGEsaCgpKSxudWxsIT09aSlmb3IoYz1hLm9uUmVjb3ZlcmFibGVFcnJvcixsPTA7bDxpLmxlbmd0aDtsKyspdT1pW2xdLGModS52YWx1ZSx7Y29tcG9uZW50U3RhY2s6dS5zdGFjayxkaWdlc3Q6dS5kaWdlc3R9KTtpZihrYyl0aHJvdyBrYz0hMSxhPVNjLFNjPW51bGwsYTswIT0oMSZqYykmJjAhPT1hLnRhZyYmUWMoKSwwIT0oMSYoZD1hLnBlbmRpbmdMYW5lcykpP2E9PT1QYz9BYysrOihBYz0wLFBjPWEpOkFjPTAsWW8oKX19ZmluYWxseXtmYy50cmFuc2l0aW9uPW8seD1yfXJldHVybiBudWxsfWZ1bmN0aW9uIFFjKCl7aWYobnVsbCE9PU9jKXt2YXIgZT1XdChqYyksdD1mYy50cmFuc2l0aW9uLG49eDt0cnl7aWYoZmMudHJhbnNpdGlvbj1udWxsLHg9ZTwxNj8xNjplLG51bGw9PT1PYyl2YXIgcj0hMTtlbHNle2lmKGU9T2MsT2M9bnVsbCwoamM9MCkhPSg2Jl8pKXRocm93IEVycm9yKEQoMzMxKSk7dmFyIG89Xztmb3IoX3w9NCxJPWUuY3VycmVudDtudWxsIT09STspe3ZhciBhPUksaT1hLmNoaWxkO2lmKDAhPSgxNiZJLmZsYWdzKSl7dmFyIGw9YS5kZWxldGlvbnM7aWYobnVsbCE9PWwpe2Zvcih2YXIgYz0wO2M8bC5sZW5ndGg7YysrKXt2YXIgdT1sW2NdO2ZvcihJPXU7bnVsbCE9PUk7KXtzd2l0Y2goKGY9SSkudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OkdsKDgsZixhKX12YXIgcz1mLmNoaWxkO2lmKG51bGwhPT1zKXMucmV0dXJuPWYsST1zO2Vsc2UgZm9yKDtudWxsIT09STspe3ZhciBmLGQ9KGY9SSkuc2libGluZyxwPWYucmV0dXJuO2lmKCFmdW5jdGlvbiBlKHQpe3ZhciBuPXQuYWx0ZXJuYXRlO251bGwhPT1uJiYodC5hbHRlcm5hdGU9bnVsbCxlKG4pKSx0LmNoaWxkPW51bGwsdC5kZWxldGlvbnM9bnVsbCx0LnNpYmxpbmc9bnVsbCw1PT09dC50YWcmJm51bGwhPT0obj10LnN0YXRlTm9kZSkmJihkZWxldGUgbltFb10sZGVsZXRlIG5bT29dLGRlbGV0ZSBuW0FvXSxkZWxldGUgbltQb10sZGVsZXRlIG5bSW9dKSx0LnN0YXRlTm9kZT1udWxsLHQucmV0dXJuPW51bGwsdC5kZXBlbmRlbmNpZXM9bnVsbCx0Lm1lbW9pemVkUHJvcHM9bnVsbCx0Lm1lbW9pemVkU3RhdGU9bnVsbCx0LnBlbmRpbmdQcm9wcz1udWxsLHQuc3RhdGVOb2RlPW51bGwsdC51cGRhdGVRdWV1ZT1udWxsfShmKSxmPT09dSl7ST1udWxsO2JyZWFrfWlmKG51bGwhPT1kKXtkLnJldHVybj1wLEk9ZDticmVha31JPXB9fX12YXIgbT1hLmFsdGVybmF0ZTtpZihudWxsIT09bSl7dmFyIGg9bS5jaGlsZDtpZihudWxsIT09aCl7bS5jaGlsZD1udWxsO2Rve3ZhciBnPWguc2libGluZ313aGlsZSgoaC5zaWJsaW5nPW51bGwpIT09KGg9ZykpfX1JPWF9fWlmKDAhPSgyMDY0JmEuc3VidHJlZUZsYWdzKSYmbnVsbCE9PWkpaS5yZXR1cm49YSxJPWk7ZWxzZSBmb3IoO251bGwhPT1JOyl7aWYoMCE9KDIwNDgmKGE9SSkuZmxhZ3MpKXN3aXRjaChhLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTpHbCg5LGEsYS5yZXR1cm4pfXZhciBiPWEuc2libGluZztpZihudWxsIT09Yil7Yi5yZXR1cm49YS5yZXR1cm4sST1iO2JyZWFrfUk9YS5yZXR1cm59fXZhciB5PWUuY3VycmVudDtmb3IoST15O251bGwhPT1JOyl7dmFyIHY9KGk9SSkuY2hpbGQ7aWYoMCE9KDIwNjQmaS5zdWJ0cmVlRmxhZ3MpJiZudWxsIT09dil2LnJldHVybj1pLEk9djtlbHNlIGZvcihpPXk7bnVsbCE9PUk7KXtpZigwIT0oMjA0OCYobD1JKS5mbGFncykpdHJ5e3N3aXRjaChsLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTpxbCg5LGwpfX1jYXRjaChlKXtNKGwsbC5yZXR1cm4sZSl9aWYobD09PWkpe0k9bnVsbDticmVha312YXIgdz1sLnNpYmxpbmc7aWYobnVsbCE9PXcpe3cucmV0dXJuPWwucmV0dXJuLEk9dzticmVha31JPWwucmV0dXJufX1pZihfPW8sWW8oKSxfdCYmImZ1bmN0aW9uIj09dHlwZW9mIF90Lm9uUG9zdENvbW1pdEZpYmVyUm9vdCl0cnl7X3Qub25Qb3N0Q29tbWl0RmliZXJSb290KEl0LGUpfWNhdGNoKGUpe31yPSEwfXJldHVybiByfWZpbmFsbHl7eD1uLGZjLnRyYW5zaXRpb249dH19fWZ1bmN0aW9uIEtjKGUsdCxuKXtlPUJhKGUsdD1mbCgwLHQ9bGwobix0KSwxKSwxKSx0PW0oKSxudWxsIT09ZSYmKFZ0KGUsMSx0KSxMYyhlLHQpKX1mdW5jdGlvbiBNKGUsdCxuKXtpZigzPT09ZS50YWcpS2MoZSxlLG4pO2Vsc2UgZm9yKDtudWxsIT09dDspe2lmKDM9PT10LnRhZyl7S2ModCxlLG4pO2JyZWFrfWlmKDE9PT10LnRhZyl7dmFyIHI9dC5zdGF0ZU5vZGU7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQudHlwZS5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3J8fCJmdW5jdGlvbiI9PXR5cGVvZiByLmNvbXBvbmVudERpZENhdGNoJiYobnVsbD09PUNjfHwhQ2MuaGFzKHIpKSl7dD1CYSh0LGU9ZGwodCxlPWxsKG4sZSksMSksMSksZT1tKCksbnVsbCE9PXQmJihWdCh0LDEsZSksTGModCxlKSk7YnJlYWt9fXQ9dC5yZXR1cm59fWZ1bmN0aW9uIEpjKGUsdCl7MD09PXQmJigwPT0oMSZlLm1vZGUpP3Q9MToodD1SdCwwPT0oMTMwMDIzNDI0JihSdDw8PTEpKSYmKFJ0PTQxOTQzMDQpKSk7dmFyIG49bSgpO251bGwhPT0oZT1NYShlLHQpKSYmKFZ0KGUsdCxuKSxMYyhlLG4pKX1mdW5jdGlvbiBldShlLHQpe3JldHVybiB3dChlLHQpfWZ1bmN0aW9uIHR1KGUsdCxuLHIpe3RoaXMudGFnPWUsdGhpcy5rZXk9bix0aGlzLnNpYmxpbmc9dGhpcy5jaGlsZD10aGlzLnJldHVybj10aGlzLnN0YXRlTm9kZT10aGlzLnR5cGU9dGhpcy5lbGVtZW50VHlwZT1udWxsLHRoaXMuaW5kZXg9MCx0aGlzLnJlZj1udWxsLHRoaXMucGVuZGluZ1Byb3BzPXQsdGhpcy5kZXBlbmRlbmNpZXM9dGhpcy5tZW1vaXplZFN0YXRlPXRoaXMudXBkYXRlUXVldWU9dGhpcy5tZW1vaXplZFByb3BzPW51bGwsdGhpcy5tb2RlPXIsdGhpcy5zdWJ0cmVlRmxhZ3M9dGhpcy5mbGFncz0wLHRoaXMuZGVsZXRpb25zPW51bGwsdGhpcy5jaGlsZExhbmVzPXRoaXMubGFuZXM9MCx0aGlzLmFsdGVybmF0ZT1udWxsfWZ1bmN0aW9uIG51KGUsdCxuLHIpe3JldHVybiBuZXcgdHUoZSx0LG4scil9ZnVuY3Rpb24gcnUoZSl7cmV0dXJuKGU9ZS5wcm90b3R5cGUpJiZlLmlzUmVhY3RDb21wb25lbnR9ZnVuY3Rpb24gb3UoZSx0KXt2YXIgbj1lLmFsdGVybmF0ZTtyZXR1cm4gbnVsbD09PW4/KChuPW51KGUudGFnLHQsZS5rZXksZS5tb2RlKSkuZWxlbWVudFR5cGU9ZS5lbGVtZW50VHlwZSxuLnR5cGU9ZS50eXBlLG4uc3RhdGVOb2RlPWUuc3RhdGVOb2RlLChuLmFsdGVybmF0ZT1lKS5hbHRlcm5hdGU9bik6KG4ucGVuZGluZ1Byb3BzPXQsbi50eXBlPWUudHlwZSxuLmZsYWdzPTAsbi5zdWJ0cmVlRmxhZ3M9MCxuLmRlbGV0aW9ucz1udWxsKSxuLmZsYWdzPTE0NjgwMDY0JmUuZmxhZ3Msbi5jaGlsZExhbmVzPWUuY2hpbGRMYW5lcyxuLmxhbmVzPWUubGFuZXMsbi5jaGlsZD1lLmNoaWxkLG4ubWVtb2l6ZWRQcm9wcz1lLm1lbW9pemVkUHJvcHMsbi5tZW1vaXplZFN0YXRlPWUubWVtb2l6ZWRTdGF0ZSxuLnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsdD1lLmRlcGVuZGVuY2llcyxuLmRlcGVuZGVuY2llcz1udWxsPT09dD9udWxsOntsYW5lczp0LmxhbmVzLGZpcnN0Q29udGV4dDp0LmZpcnN0Q29udGV4dH0sbi5zaWJsaW5nPWUuc2libGluZyxuLmluZGV4PWUuaW5kZXgsbi5yZWY9ZS5yZWYsbn1mdW5jdGlvbiBhdShlLHQsbixyLG8sYSl7dmFyIGk9MjtpZigiZnVuY3Rpb24iPT10eXBlb2Yocj1lKSlydShlKSYmKGk9MSk7ZWxzZSBpZigic3RyaW5nIj09dHlwZW9mIGUpaT01O2Vsc2UgZTpzd2l0Y2goZSl7Y2FzZSBuZTpyZXR1cm4gaXUobi5jaGlsZHJlbixvLGEsdCk7Y2FzZSByZTpvfD1pPTg7YnJlYWs7Y2FzZSBvZTpyZXR1cm4oZT1udSgxMixuLHQsMnxvKSkuZWxlbWVudFR5cGU9b2UsZS5sYW5lcz1hLGU7Y2FzZSBjZTpyZXR1cm4oZT1udSgxMyxuLHQsbykpLmVsZW1lbnRUeXBlPWNlLGUubGFuZXM9YSxlO2Nhc2UgdWU6cmV0dXJuKGU9bnUoMTksbix0LG8pKS5lbGVtZW50VHlwZT11ZSxlLmxhbmVzPWEsZTtjYXNlIGRlOnJldHVybiBsdShuLG8sYSx0KTtkZWZhdWx0OmlmKCJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUpc3dpdGNoKGUuJCR0eXBlb2Ype2Nhc2UgYWU6aT0xMDticmVhayBlO2Nhc2UgaWU6aT05O2JyZWFrIGU7Y2FzZSBsZTppPTExO2JyZWFrIGU7Y2FzZSBzZTppPTE0O2JyZWFrIGU7Y2FzZSBmZTppPTE2LHI9bnVsbDticmVhayBlfXRocm93IEVycm9yKEQoMTMwLG51bGw9PWU/ZTp0eXBlb2YgZSwiIikpfXJldHVybih0PW51KGksbix0LG8pKS5lbGVtZW50VHlwZT1lLHQudHlwZT1yLHQubGFuZXM9YSx0fWZ1bmN0aW9uIGl1KGUsdCxuLHIpe3JldHVybihlPW51KDcsZSxyLHQpKS5sYW5lcz1uLGV9ZnVuY3Rpb24gbHUoZSx0LG4scil7cmV0dXJuKGU9bnUoMjIsZSxyLHQpKS5lbGVtZW50VHlwZT1kZSxlLmxhbmVzPW4sZS5zdGF0ZU5vZGU9e2lzSGlkZGVuOiExfSxlfWZ1bmN0aW9uIGN1KGUsdCxuKXtyZXR1cm4oZT1udSg2LGUsbnVsbCx0KSkubGFuZXM9bixlfWZ1bmN0aW9uIHV1KGUsdCxuKXtyZXR1cm4odD1udSg0LG51bGwhPT1lLmNoaWxkcmVuP2UuY2hpbGRyZW46W10sZS5rZXksdCkpLmxhbmVzPW4sdC5zdGF0ZU5vZGU9e2NvbnRhaW5lckluZm86ZS5jb250YWluZXJJbmZvLHBlbmRpbmdDaGlsZHJlbjpudWxsLGltcGxlbWVudGF0aW9uOmUuaW1wbGVtZW50YXRpb259LHR9ZnVuY3Rpb24gc3UoZSx0LG4scixvKXt0aGlzLnRhZz10LHRoaXMuY29udGFpbmVySW5mbz1lLHRoaXMuZmluaXNoZWRXb3JrPXRoaXMucGluZ0NhY2hlPXRoaXMuY3VycmVudD10aGlzLnBlbmRpbmdDaGlsZHJlbj1udWxsLHRoaXMudGltZW91dEhhbmRsZT0tMSx0aGlzLmNhbGxiYWNrTm9kZT10aGlzLnBlbmRpbmdDb250ZXh0PXRoaXMuY29udGV4dD1udWxsLHRoaXMuY2FsbGJhY2tQcmlvcml0eT0wLHRoaXMuZXZlbnRUaW1lcz1IdCgwKSx0aGlzLmV4cGlyYXRpb25UaW1lcz1IdCgtMSksdGhpcy5lbnRhbmdsZWRMYW5lcz10aGlzLmZpbmlzaGVkTGFuZXM9dGhpcy5tdXRhYmxlUmVhZExhbmVzPXRoaXMuZXhwaXJlZExhbmVzPXRoaXMucGluZ2VkTGFuZXM9dGhpcy5zdXNwZW5kZWRMYW5lcz10aGlzLnBlbmRpbmdMYW5lcz0wLHRoaXMuZW50YW5nbGVtZW50cz1IdCgwKSx0aGlzLmlkZW50aWZpZXJQcmVmaXg9cix0aGlzLm9uUmVjb3ZlcmFibGVFcnJvcj1vLHRoaXMubXV0YWJsZVNvdXJjZUVhZ2VySHlkcmF0aW9uRGF0YT1udWxsfWZ1bmN0aW9uIGZ1KGUsdCxuLHIsbyxhLGksbCxjKXtyZXR1cm4gZT1uZXcgc3UoZSx0LDAsbCxjKSwxPT09dD8odD0xLCEwPT09YSYmKHR8PTgpKTp0PTAsYT1udSgzLG51bGwsbnVsbCx0KSwoZS5jdXJyZW50PWEpLnN0YXRlTm9kZT1lLGEubWVtb2l6ZWRTdGF0ZT17ZWxlbWVudDpyLGlzRGVoeWRyYXRlZDpuLGNhY2hlOm51bGwsdHJhbnNpdGlvbnM6bnVsbCxwZW5kaW5nU3VzcGVuc2VCb3VuZGFyaWVzOm51bGx9LE5hKGEpLGV9ZnVuY3Rpb24gZHUoZSl7aWYoIWUpcmV0dXJuIERvO2U6e2lmKGd0KGU9ZS5fcmVhY3RJbnRlcm5hbHMpIT09ZXx8MSE9PWUudGFnKXRocm93IEVycm9yKEQoMTcwKSk7dmFyIHQ9ZTtkb3tzd2l0Y2godC50YWcpe2Nhc2UgMzp0PXQuc3RhdGVOb2RlLmNvbnRleHQ7YnJlYWsgZTtjYXNlIDE6aWYodyh0LnR5cGUpKXt0PXQuc3RhdGVOb2RlLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWVyZ2VkQ2hpbGRDb250ZXh0O2JyZWFrIGV9fX13aGlsZShudWxsIT09KHQ9dC5yZXR1cm4pKTt0aHJvdyBFcnJvcihEKDE3MSkpfWlmKDE9PT1lLnRhZyl7dmFyIG49ZS50eXBlO2lmKHcobikpcmV0dXJuIFZvKGUsbix0KX1yZXR1cm4gdH1mdW5jdGlvbiBwdShlLHQsbixyLG8sYSxpLGwsYyl7cmV0dXJuKGU9ZnUobixyLCEwLGUsMCxhLDAsbCxjKSkuY29udGV4dD1kdShudWxsKSxuPWUuY3VycmVudCwoYT1VYShyPW0oKSxvPXpjKG4pKSkuY2FsbGJhY2s9bnVsbCE9dD90Om51bGwsQmEobixhLG8pLGUuY3VycmVudC5sYW5lcz1vLFZ0KGUsbyxyKSxMYyhlLHIpLGV9ZnVuY3Rpb24gbXUoZSx0LG4scil7dmFyIG89dC5jdXJyZW50LGE9bSgpLGk9emMobyk7bj1kdShuKSxudWxsPT09dC5jb250ZXh0P3QuY29udGV4dD1uOnQucGVuZGluZ0NvbnRleHQ9biwodD1VYShhLGkpKS5wYXlsb2FkPXtlbGVtZW50OmV9LG51bGwhPT0ocj12b2lkIDA9PT1yP251bGw6cikmJih0LmNhbGxiYWNrPXIpLG51bGwhPT0oZT1CYShvLHQsaSkpJiYoVGMoZSxvLGksYSksRmEoZSxvLGkpKX1mdW5jdGlvbiBodShlKXtyZXR1cm4oZT1lLmN1cnJlbnQpLmNoaWxkPyhlLmNoaWxkLnRhZyxlLmNoaWxkLnN0YXRlTm9kZSk6bnVsbH1mdW5jdGlvbiBndShlLHQpe3ZhciBuO251bGwhPT0oZT1lLm1lbW9pemVkU3RhdGUpJiZudWxsIT09ZS5kZWh5ZHJhdGVkJiYobj1lLnJldHJ5TGFuZSxlLnJldHJ5TGFuZT0wIT09biYmbjx0P246dCl9ZnVuY3Rpb24gYnUoZSx0KXtndShlLHQpLChlPWUuYWx0ZXJuYXRlKSYmZ3UoZSx0KX12YXIgeXU9ZnVuY3Rpb24oZSx0LG4pe2lmKG51bGwhPT1lKWlmKGUubWVtb2l6ZWRQcm9wcyE9PXQucGVuZGluZ1Byb3BzfHx2LmN1cnJlbnQpaj0hMDtlbHNle2lmKDA9PShlLmxhbmVzJm4pJiYwPT0oMTI4JnQuZmxhZ3MpKXtqPSExO3t2YXIgcj1lO3ZhciBvPXQ7dmFyIGE9bjtzd2l0Y2goby50YWcpe2Nhc2UgMzpFbChvKSx2YSgpO2JyZWFrO2Nhc2UgNTpmaShvKTticmVhaztjYXNlIDE6dyhvLnR5cGUpJiYkbyhvKTticmVhaztjYXNlIDQ6dWkobyxvLnN0YXRlTm9kZS5jb250YWluZXJJbmZvKTticmVhaztjYXNlIDEwOnZhciBpPW8udHlwZS5fY29udGV4dCxsPW8ubWVtb2l6ZWRQcm9wcy52YWx1ZTtiKFNhLGkuX2N1cnJlbnRWYWx1ZSksaS5fY3VycmVudFZhbHVlPWw7YnJlYWs7Y2FzZSAxMzppZihudWxsIT09KGk9by5tZW1vaXplZFN0YXRlKSlyZXR1cm4gbnVsbCE9PWkuZGVoeWRyYXRlZD8oYihTLDEmUy5jdXJyZW50KSxvLmZsYWdzfD0xMjgsbnVsbCk6MCE9KGEmby5jaGlsZC5jaGlsZExhbmVzKT9QbChyLG8sYSk6KGIoUywxJlMuY3VycmVudCksbnVsbCE9PShyPVJsKHIsbyxhKSk/ci5zaWJsaW5nOm51bGwpO2IoUywxJlMuY3VycmVudCk7YnJlYWs7Y2FzZSAxOTppZihpPTAhPShhJm8uY2hpbGRMYW5lcyksMCE9KDEyOCZyLmZsYWdzKSl7aWYoaSlyZXR1cm4gTGwocixvLGEpO28uZmxhZ3N8PTEyOH1pZihudWxsIT09KGw9by5tZW1vaXplZFN0YXRlKSYmKGwucmVuZGVyaW5nPW51bGwsbC50YWlsPW51bGwsbC5sYXN0RWZmZWN0PW51bGwpLGIoUyxTLmN1cnJlbnQpLGkpYnJlYWs7cmV0dXJuIG51bGw7Y2FzZSAyMjpjYXNlIDIzOnJldHVybiBvLmxhbmVzPTAsd2wocixvLGEpfXJldHVybiBSbChyLG8sYSk7cmV0dXJufX1qPTAhPSgxMzEwNzImZS5mbGFncyl9ZWxzZSBqPSExLFUmJjAhPSgxMDQ4NTc2JnQuZmxhZ3MpJiZsYSh0LGVhLHQuaW5kZXgpO3N3aXRjaCh0LmxhbmVzPTAsdC50YWcpe2Nhc2UgMjp2YXIgYz10LnR5cGUsdT0oTWwoZSx0KSxlPXQucGVuZGluZ1Byb3BzLEJvKHQseS5jdXJyZW50KSkscz0oSWEodCxuKSx1PUNpKG51bGwsdCxjLGUsdSxuKSxFaSgpKTtyZXR1cm4gdC5mbGFnc3w9MSx0PSJvYmplY3QiPT10eXBlb2YgdSYmbnVsbCE9PXUmJiJmdW5jdGlvbiI9PXR5cGVvZiB1LnJlbmRlciYmdm9pZCAwPT09dS4kJHR5cGVvZj8odC50YWc9MSx0Lm1lbW9pemVkU3RhdGU9bnVsbCx0LnVwZGF0ZVF1ZXVlPW51bGwsdyhjKT8ocz0hMCwkbyh0KSk6cz0hMSx0Lm1lbW9pemVkU3RhdGU9bnVsbCE9PXUuc3RhdGUmJnZvaWQgMCE9PXUuc3RhdGU/dS5zdGF0ZTpudWxsLE5hKHQpLHUudXBkYXRlcj1xYSxRYSgodC5zdGF0ZU5vZGU9dSkuX3JlYWN0SW50ZXJuYWxzPXQsYyxlLG4pLENsKG51bGwsdCxjLCEwLHMsbikpOih0LnRhZz0wLFUmJnMmJmNhKHQpLEEobnVsbCx0LHUsbiksdC5jaGlsZCk7Y2FzZSAxNjpjPXQuZWxlbWVudFR5cGU7ZTp7c3dpdGNoKE1sKGUsdCksZT10LnBlbmRpbmdQcm9wcyxjPSh1PWMuX2luaXQpKGMuX3BheWxvYWQpLHQudHlwZT1jLHU9dC50YWc9ZnVuY3Rpb24oZSl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGUpcmV0dXJuIHJ1KGUpPzE6MDtpZihudWxsIT1lKXtpZigoZT1lLiQkdHlwZW9mKT09PWxlKXJldHVybiAxMTtpZihlPT09c2UpcmV0dXJuIDE0fXJldHVybiAyfShjKSxlPWthKGMsZSksdSl7Y2FzZSAwOnQ9a2wobnVsbCx0LGMsZSxuKTticmVhayBlO2Nhc2UgMTp0PVNsKG51bGwsdCxjLGUsbik7YnJlYWsgZTtjYXNlIDExOnQ9YmwobnVsbCx0LGMsZSxuKTticmVhayBlO2Nhc2UgMTQ6dD15bChudWxsLHQsYyxrYShjLnR5cGUsZSksbik7YnJlYWsgZX10aHJvdyBFcnJvcihEKDMwNixjLCIiKSl9cmV0dXJuIHQ7Y2FzZSAwOnJldHVybiBjPXQudHlwZSx1PXQucGVuZGluZ1Byb3BzLGtsKGUsdCxjLHU9dC5lbGVtZW50VHlwZT09PWM/dTprYShjLHUpLG4pO2Nhc2UgMTpyZXR1cm4gYz10LnR5cGUsdT10LnBlbmRpbmdQcm9wcyxTbChlLHQsYyx1PXQuZWxlbWVudFR5cGU9PT1jP3U6a2EoYyx1KSxuKTtjYXNlIDM6ZTp7aWYoRWwodCksbnVsbD09PWUpdGhyb3cgRXJyb3IoRCgzODcpKTtjPXQucGVuZGluZ1Byb3BzLHU9KHM9dC5tZW1vaXplZFN0YXRlKS5lbGVtZW50LERhKGUsdCksVmEodCxjLG51bGwsbik7dmFyIGY9dC5tZW1vaXplZFN0YXRlLGM9Zi5lbGVtZW50O2lmKHMuaXNEZWh5ZHJhdGVkKXtpZihzPXtlbGVtZW50OmMsaXNEZWh5ZHJhdGVkOiExLGNhY2hlOmYuY2FjaGUscGVuZGluZ1N1c3BlbnNlQm91bmRhcmllczpmLnBlbmRpbmdTdXNwZW5zZUJvdW5kYXJpZXMsdHJhbnNpdGlvbnM6Zi50cmFuc2l0aW9uc30sdC51cGRhdGVRdWV1ZS5iYXNlU3RhdGU9cyx0Lm1lbW9pemVkU3RhdGU9cywyNTYmdC5mbGFncyl7dD1PbChlLHQsYyxuLHU9bGwoRXJyb3IoRCg0MjMpKSx0KSk7YnJlYWsgZX1pZihjIT09dSl7dD1PbChlLHQsYyxuLHU9bGwoRXJyb3IoRCg0MjQpKSx0KSk7YnJlYWsgZX1mb3Ioaz1Tbyh0LnN0YXRlTm9kZS5jb250YWluZXJJbmZvLmZpcnN0Q2hpbGQpLFU9ITAsbj1yaShzYT10LGZhPW51bGwsYyxuKSx0LmNoaWxkPW47bjspbi5mbGFncz0tMyZuLmZsYWdzfDQwOTYsbj1uLnNpYmxpbmd9ZWxzZXtpZih2YSgpLGM9PT11KXt0PVJsKGUsdCxuKTticmVhayBlfUEoZSx0LGMsbil9dD10LmNoaWxkfXJldHVybiB0O2Nhc2UgNTpyZXR1cm4gZmkodCksbnVsbD09PWUmJmhhKHQpLGM9dC50eXBlLHU9dC5wZW5kaW5nUHJvcHMscz1udWxsIT09ZT9lLm1lbW9pemVkUHJvcHM6bnVsbCxmPXUuY2hpbGRyZW4sZ28oYyx1KT9mPW51bGw6bnVsbCE9PXMmJmdvKGMscykmJih0LmZsYWdzfD0zMikseGwoZSx0KSxBKGUsdCxmLG4pLHQuY2hpbGQ7Y2FzZSA2OnJldHVybiBudWxsPT09ZSYmaGEodCksbnVsbDtjYXNlIDEzOnJldHVybiBQbChlLHQsbik7Y2FzZSA0OnJldHVybiB1aSh0LHQuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pLGM9dC5wZW5kaW5nUHJvcHMsbnVsbD09PWU/dC5jaGlsZD1uaSh0LG51bGwsYyxuKTpBKGUsdCxjLG4pLHQuY2hpbGQ7Y2FzZSAxMTpyZXR1cm4gYz10LnR5cGUsdT10LnBlbmRpbmdQcm9wcyxibChlLHQsYyx1PXQuZWxlbWVudFR5cGU9PT1jP3U6a2EoYyx1KSxuKTtjYXNlIDc6cmV0dXJuIEEoZSx0LHQucGVuZGluZ1Byb3BzLG4pLHQuY2hpbGQ7Y2FzZSA4OmNhc2UgMTI6cmV0dXJuIEEoZSx0LHQucGVuZGluZ1Byb3BzLmNoaWxkcmVuLG4pLHQuY2hpbGQ7Y2FzZSAxMDplOntpZihjPXQudHlwZS5fY29udGV4dCx1PXQucGVuZGluZ1Byb3BzLHM9dC5tZW1vaXplZFByb3BzLGY9dS52YWx1ZSxiKFNhLGMuX2N1cnJlbnRWYWx1ZSksYy5fY3VycmVudFZhbHVlPWYsbnVsbCE9PXMpaWYoa3Iocy52YWx1ZSxmKSl7aWYocy5jaGlsZHJlbj09PXUuY2hpbGRyZW4mJiF2LmN1cnJlbnQpe3Q9UmwoZSx0LG4pO2JyZWFrIGV9fWVsc2UgZm9yKG51bGwhPT0ocz10LmNoaWxkKSYmKHMucmV0dXJuPXQpO251bGwhPT1zOyl7dmFyIGQ9cy5kZXBlbmRlbmNpZXM7aWYobnVsbCE9PWQpZm9yKHZhciBwLG0sZj1zLmNoaWxkLGg9ZC5maXJzdENvbnRleHQ7bnVsbCE9PWg7KXtpZihoLmNvbnRleHQ9PT1jKXsxPT09cy50YWcmJigoaD1VYSgtMSxuJi1uKSkudGFnPTIsbnVsbCE9PShwPXMudXBkYXRlUXVldWUpKSYmKG51bGw9PT0obT0ocD1wLnNoYXJlZCkucGVuZGluZyk/aC5uZXh0PWg6KGgubmV4dD1tLm5leHQsbS5uZXh0PWgpLHAucGVuZGluZz1oKSxzLmxhbmVzfD1uLG51bGwhPT0oaD1zLmFsdGVybmF0ZSkmJihoLmxhbmVzfD1uKSxQYShzLnJldHVybixuLHQpLGQubGFuZXN8PW47YnJlYWt9aD1oLm5leHR9ZWxzZSBpZigxMD09PXMudGFnKWY9cy50eXBlPT09dC50eXBlP251bGw6cy5jaGlsZDtlbHNlIGlmKDE4PT09cy50YWcpe2lmKG51bGw9PT0oZj1zLnJldHVybikpdGhyb3cgRXJyb3IoRCgzNDEpKTtmLmxhbmVzfD1uLG51bGwhPT0oZD1mLmFsdGVybmF0ZSkmJihkLmxhbmVzfD1uKSxQYShmLG4sdCksZj1zLnNpYmxpbmd9ZWxzZSBmPXMuY2hpbGQ7aWYobnVsbCE9PWYpZi5yZXR1cm49cztlbHNlIGZvcihmPXM7bnVsbCE9PWY7KXtpZihmPT09dCl7Zj1udWxsO2JyZWFrfWlmKG51bGwhPT0ocz1mLnNpYmxpbmcpKXtzLnJldHVybj1mLnJldHVybixmPXM7YnJlYWt9Zj1mLnJldHVybn1zPWZ9QShlLHQsdS5jaGlsZHJlbixuKSx0PXQuY2hpbGR9cmV0dXJuIHQ7Y2FzZSA5OnJldHVybiB1PXQudHlwZSxjPXQucGVuZGluZ1Byb3BzLmNoaWxkcmVuLElhKHQsbiksYz1jKHU9X2EodSkpLHQuZmxhZ3N8PTEsQShlLHQsYyxuKSx0LmNoaWxkO2Nhc2UgMTQ6cmV0dXJuIHU9a2EoYz10LnR5cGUsdC5wZW5kaW5nUHJvcHMpLHlsKGUsdCxjLHU9a2EoYy50eXBlLHUpLG4pO2Nhc2UgMTU6cmV0dXJuIHZsKGUsdCx0LnR5cGUsdC5wZW5kaW5nUHJvcHMsbik7Y2FzZSAxNzpyZXR1cm4gYz10LnR5cGUsdT10LnBlbmRpbmdQcm9wcyx1PXQuZWxlbWVudFR5cGU9PT1jP3U6a2EoYyx1KSxNbChlLHQpLHQudGFnPTEsdyhjKT8oZT0hMCwkbyh0KSk6ZT0hMSxJYSh0LG4pLFhhKHQsYyx1KSxRYSh0LGMsdSxuKSxDbChudWxsLHQsYywhMCxlLG4pO2Nhc2UgMTk6cmV0dXJuIExsKGUsdCxuKTtjYXNlIDIyOnJldHVybiB3bChlLHQsbil9dGhyb3cgRXJyb3IoRCgxNTYsdC50YWcpKX0sdnU9ImZ1bmN0aW9uIj09dHlwZW9mIHJlcG9ydEVycm9yP3JlcG9ydEVycm9yOmZ1bmN0aW9uKGUpe2NvbnNvbGUuZXJyb3IoZSl9O2Z1bmN0aW9uIHd1KGUpe3RoaXMuX2ludGVybmFsUm9vdD1lfWZ1bmN0aW9uIHh1KGUpe3RoaXMuX2ludGVybmFsUm9vdD1lfWZ1bmN0aW9uIGt1KGUpe3JldHVybiBlJiYoMT09PWUubm9kZVR5cGV8fDk9PT1lLm5vZGVUeXBlfHwxMT09PWUubm9kZVR5cGUpfWZ1bmN0aW9uIFN1KGUpe3JldHVybiBlJiYoMT09PWUubm9kZVR5cGV8fDk9PT1lLm5vZGVUeXBlfHwxMT09PWUubm9kZVR5cGV8fDg9PT1lLm5vZGVUeXBlJiYiIHJlYWN0LW1vdW50LXBvaW50LXVuc3RhYmxlICI9PT1lLm5vZGVWYWx1ZSl9ZnVuY3Rpb24gQ3UoKXt9ZnVuY3Rpb24gRXUoZSx0LG4scixvKXt2YXIgYSxpLGw9bi5fcmVhY3RSb290Q29udGFpbmVyO3JldHVybiBsPygiZnVuY3Rpb24iPT10eXBlb2YgbyYmKGk9byxvPWZ1bmN0aW9uKCl7dmFyIGU9aHUoYSk7aS5jYWxsKGUpfSksbXUodCxhPWwsZSxvKSk6YT1mdW5jdGlvbihlLHQsbixyLG8pe3ZhciBhLGksbDtpZihvKXJldHVybiJmdW5jdGlvbiI9PXR5cGVvZiByJiYoYT1yLHI9ZnVuY3Rpb24oKXt2YXIgZT1odShpKTthLmNhbGwoZSl9KSxpPXB1KHQscixlLDAsbnVsbCwhMSwwLCIiLEN1KSxlLl9yZWFjdFJvb3RDb250YWluZXI9aSxlW2pvXT1pLmN1cnJlbnQsdG8oOD09PWUubm9kZVR5cGU/ZS5wYXJlbnROb2RlOmUpLEZjKCksaTtmb3IoO289ZS5sYXN0Q2hpbGQ7KWUucmVtb3ZlQ2hpbGQobyk7ImZ1bmN0aW9uIj09dHlwZW9mIHImJihsPXIscj1mdW5jdGlvbigpe3ZhciBlPWh1KGMpO2wuY2FsbChlKX0pO3ZhciBjPWZ1KGUsMCwhMSxudWxsLDAsITEsMCwiIixDdSk7cmV0dXJuIGUuX3JlYWN0Um9vdENvbnRhaW5lcj1jLGVbam9dPWMuY3VycmVudCx0byg4PT09ZS5ub2RlVHlwZT9lLnBhcmVudE5vZGU6ZSksRmMoZnVuY3Rpb24oKXttdSh0LGMsbixyKX0pLGN9KG4sdCxlLG8sciksaHUoYSl9eHUucHJvdG90eXBlLnJlbmRlcj13dS5wcm90b3R5cGUucmVuZGVyPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuX2ludGVybmFsUm9vdDtpZihudWxsPT09dCl0aHJvdyBFcnJvcihEKDQwOSkpO211KGUsdCxudWxsLG51bGwpfSx4dS5wcm90b3R5cGUudW5tb3VudD13dS5wcm90b3R5cGUudW5tb3VudD1mdW5jdGlvbigpe3ZhciBlLHQ9dGhpcy5faW50ZXJuYWxSb290O251bGwhPT10JiYodGhpcy5faW50ZXJuYWxSb290PW51bGwsZT10LmNvbnRhaW5lckluZm8sRmMoZnVuY3Rpb24oKXttdShudWxsLHQsbnVsbCxudWxsKX0pLGVbam9dPW51bGwpfSx4dS5wcm90b3R5cGUudW5zdGFibGVfc2NoZWR1bGVIeWRyYXRpb249ZnVuY3Rpb24oZSl7aWYoZSl7dmFyIHQ9WHQoKTtlPXtibG9ja2VkT246bnVsbCx0YXJnZXQ6ZSxwcmlvcml0eTp0fTtmb3IodmFyIG49MDtuPG9uLmxlbmd0aCYmMCE9PXQmJnQ8b25bbl0ucHJpb3JpdHk7bisrKTtvbi5zcGxpY2UobiwwLGUpLDA9PT1uJiZ1bihlKX19LEd0PWZ1bmN0aW9uKG4pe3N3aXRjaChuLnRhZyl7Y2FzZSAzOnZhciBlLHQ9bi5zdGF0ZU5vZGU7dC5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkJiYwIT09KGU9TnQodC5wZW5kaW5nTGFuZXMpKSYmKCR0KHQsMXxlKSxMYyh0LGgoKSksMD09KDYmXykpJiYod2M9aCgpKzUwMCxZbygpKTticmVhaztjYXNlIDEzOkZjKGZ1bmN0aW9uKCl7dmFyIGUsdD1NYShuLDEpO251bGwhPT10JiYoZT1tKCksVGModCxuLDEsZSkpfSksYnUobiwxKX19LHF0PWZ1bmN0aW9uKGUpe3ZhciB0OzEzPT09ZS50YWcmJihudWxsIT09KHQ9TWEoZSwxMzQyMTc3MjgpKSYmVGModCxlLDEzNDIxNzcyOCxtKCkpLGJ1KGUsMTM0MjE3NzI4KSl9LFp0PWZ1bmN0aW9uKGUpe3ZhciB0LG47MTM9PT1lLnRhZyYmKG51bGwhPT0obj1NYShlLHQ9emMoZSkpKSYmVGMobixlLHQsbSgpKSxidShlLHQpKX0sWHQ9ZnVuY3Rpb24oKXtyZXR1cm4geH0sWXQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj14O3RyeXtyZXR1cm4geD1lLHQoKX1maW5hbGx5e3g9bn19LGF0PUZjO2U9e3VzaW5nQ2xpZW50RW50cnlQb2ludDohKEtlPWZ1bmN0aW9uKGUsdCxuKXtzd2l0Y2godCl7Y2FzZSJpbnB1dCI6aWYoQWUoZSxuKSx0PW4ubmFtZSwicmFkaW8iPT09bi50eXBlJiZudWxsIT10KXtmb3Iobj1lO24ucGFyZW50Tm9kZTspbj1uLnBhcmVudE5vZGU7Zm9yKG49bi5xdWVyeVNlbGVjdG9yQWxsKCJpbnB1dFtuYW1lPSIrSlNPTi5zdHJpbmdpZnkoIiIrdCkrJ11bdHlwZT0icmFkaW8iXScpLHQ9MDt0PG4ubGVuZ3RoO3QrKyl7dmFyIHI9blt0XTtpZihyIT09ZSYmci5mb3JtPT09ZS5mb3JtKXt2YXIgbz1MbyhyKTtpZighbyl0aHJvdyBFcnJvcihEKDkwKSk7U2UociksQWUocixvKX19fWJyZWFrO2Nhc2UidGV4dGFyZWEiOk1lKGUsbik7YnJlYWs7Y2FzZSJzZWxlY3QiOm51bGwhPSh0PW4udmFsdWUpJiZ6ZShlLCEhbi5tdWx0aXBsZSx0LCExKX19KSxFdmVudHM6W3pvLFRvLExvLG50LHJ0LG90PUJjXX0sdD17ZmluZEZpYmVyQnlIb3N0SW5zdGFuY2U6X28sYnVuZGxlVHlwZTowLHZlcnNpb246IjE4LjIuMCIscmVuZGVyZXJQYWNrYWdlTmFtZToicmVhY3QtZG9tIn0sUj17YnVuZGxlVHlwZTp0LmJ1bmRsZVR5cGUsdmVyc2lvbjp0LnZlcnNpb24scmVuZGVyZXJQYWNrYWdlTmFtZTp0LnJlbmRlcmVyUGFja2FnZU5hbWUscmVuZGVyZXJDb25maWc6dC5yZW5kZXJlckNvbmZpZyxvdmVycmlkZUhvb2tTdGF0ZTpudWxsLG92ZXJyaWRlSG9va1N0YXRlRGVsZXRlUGF0aDpudWxsLG92ZXJyaWRlSG9va1N0YXRlUmVuYW1lUGF0aDpudWxsLG92ZXJyaWRlUHJvcHM6bnVsbCxvdmVycmlkZVByb3BzRGVsZXRlUGF0aDpudWxsLG92ZXJyaWRlUHJvcHNSZW5hbWVQYXRoOm51bGwsc2V0RXJyb3JIYW5kbGVyOm51bGwsc2V0U3VzcGVuc2VIYW5kbGVyOm51bGwsc2NoZWR1bGVVcGRhdGU6bnVsbCxjdXJyZW50RGlzcGF0Y2hlclJlZjpKLlJlYWN0Q3VycmVudERpc3BhdGNoZXIsZmluZEhvc3RJbnN0YW5jZUJ5RmliZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PT0oZT12dChlKSk/bnVsbDplLnN0YXRlTm9kZX0sZmluZEZpYmVyQnlIb3N0SW5zdGFuY2U6dC5maW5kRmliZXJCeUhvc3RJbnN0YW5jZXx8ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0sZmluZEhvc3RJbnN0YW5jZXNGb3JSZWZyZXNoOm51bGwsc2NoZWR1bGVSZWZyZXNoOm51bGwsc2NoZWR1bGVSb290Om51bGwsc2V0UmVmcmVzaEhhbmRsZXI6bnVsbCxnZXRDdXJyZW50RmliZXI6bnVsbCxyZWNvbmNpbGVyVmVyc2lvbjoiMTguMi4wLW5leHQtOWUzYjc3MmI4LTIwMjIwNjA4In07aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18pe3I9X19SRUFDVF9ERVZUT09MU19HTE9CQUxfSE9PS19fO2lmKCFyLmlzRGlzYWJsZWQmJnIuc3VwcG9ydHNGaWJlcil0cnl7SXQ9ci5pbmplY3QoUiksX3Q9cn1jYXRjaChlKXt9fWMuX19TRUNSRVRfSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfWU9VX1dJTExfQkVfRklSRUQ9ZSxjLmNyZWF0ZVBvcnRhbD1mdW5jdGlvbihlLHQpe2lmKGt1KHQpKXJldHVybiBmdW5jdGlvbihlLHQsbixyKXtyZXR1cm57JCR0eXBlb2Y6dGUsa2V5Om51bGw9PShyPTM8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09cj9yOm51bGwpP251bGw6IiIrcixjaGlsZHJlbjplLGNvbnRhaW5lckluZm86dCxpbXBsZW1lbnRhdGlvbjpufX0oZSx0LG51bGwsMjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOm51bGwpO3Rocm93IEVycm9yKEQoMjAwKSl9LGMuY3JlYXRlUm9vdD1mdW5jdGlvbihlLHQpe3ZhciBuLHIsbztpZihrdShlKSlyZXR1cm4gbj0hMSxyPSIiLG89dnUsbnVsbCE9dCYmKCEwPT09dC51bnN0YWJsZV9zdHJpY3RNb2RlJiYobj0hMCksdm9pZCAwIT09dC5pZGVudGlmaWVyUHJlZml4JiYocj10LmlkZW50aWZpZXJQcmVmaXgpLHZvaWQgMCE9PXQub25SZWNvdmVyYWJsZUVycm9yKSYmKG89dC5vblJlY292ZXJhYmxlRXJyb3IpLHQ9ZnUoZSwxLCExLG51bGwsMCxuLDAscixvKSxlW2pvXT10LmN1cnJlbnQsdG8oOD09PWUubm9kZVR5cGU/ZS5wYXJlbnROb2RlOmUpLG5ldyB3dSh0KTt0aHJvdyBFcnJvcihEKDI5OSkpfSxjLmZpbmRET01Ob2RlPWZ1bmN0aW9uKGUpe2lmKG51bGw9PWUpcmV0dXJuIG51bGw7aWYoMSE9PWUubm9kZVR5cGUpe3ZhciB0PWUuX3JlYWN0SW50ZXJuYWxzO2lmKHZvaWQgMD09PXQpe2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBlLnJlbmRlcil0aHJvdyBFcnJvcihEKDE4OCkpO3Rocm93IGU9T2JqZWN0LmtleXMoZSkuam9pbigiLCIpLEVycm9yKEQoMjY4LGUpKX1lPW51bGw9PT0oZT12dCh0KSk/bnVsbDplLnN0YXRlTm9kZX1yZXR1cm4gZX0sYy5mbHVzaFN5bmM9RmMsYy5oeWRyYXRlPWZ1bmN0aW9uKGUsdCxuKXtpZihTdSh0KSlyZXR1cm4gRXUobnVsbCxlLHQsITAsbik7dGhyb3cgRXJyb3IoRCgyMDApKX0sYy5oeWRyYXRlUm9vdD1mdW5jdGlvbihlLHQsbil7aWYoIWt1KGUpKXRocm93IEVycm9yKEQoNDA1KSk7dmFyIHI9bnVsbCE9biYmbi5oeWRyYXRlZFNvdXJjZXN8fG51bGwsbz0hMSxhPSIiLGk9dnU7aWYobnVsbCE9biYmKCEwPT09bi51bnN0YWJsZV9zdHJpY3RNb2RlJiYobz0hMCksdm9pZCAwIT09bi5pZGVudGlmaWVyUHJlZml4JiYoYT1uLmlkZW50aWZpZXJQcmVmaXgpLHZvaWQgMCE9PW4ub25SZWNvdmVyYWJsZUVycm9yKSYmKGk9bi5vblJlY292ZXJhYmxlRXJyb3IpLHQ9cHUodCxudWxsLGUsMSxudWxsIT1uP246bnVsbCxvLDAsYSxpKSxlW2pvXT10LmN1cnJlbnQsdG8oZSkscilmb3IoZT0wO2U8ci5sZW5ndGg7ZSsrKW89KG89KG49cltlXSkuX2dldFZlcnNpb24pKG4uX3NvdXJjZSksbnVsbD09dC5tdXRhYmxlU291cmNlRWFnZXJIeWRyYXRpb25EYXRhP3QubXV0YWJsZVNvdXJjZUVhZ2VySHlkcmF0aW9uRGF0YT1bbixvXTp0Lm11dGFibGVTb3VyY2VFYWdlckh5ZHJhdGlvbkRhdGEucHVzaChuLG8pO3JldHVybiBuZXcgeHUodCl9LGMucmVuZGVyPWZ1bmN0aW9uKGUsdCxuKXtpZihTdSh0KSlyZXR1cm4gRXUobnVsbCxlLHQsITEsbik7dGhyb3cgRXJyb3IoRCgyMDApKX0sYy51bm1vdW50Q29tcG9uZW50QXROb2RlPWZ1bmN0aW9uKGUpe2lmKFN1KGUpKXJldHVybiEhZS5fcmVhY3RSb290Q29udGFpbmVyJiYoRmMoZnVuY3Rpb24oKXtFdShudWxsLG51bGwsZSwhMSxmdW5jdGlvbigpe2UuX3JlYWN0Um9vdENvbnRhaW5lcj1udWxsLGVbam9dPW51bGx9KX0pLCEwKTt0aHJvdyBFcnJvcihEKDQwKSl9LGMudW5zdGFibGVfYmF0Y2hlZFVwZGF0ZXM9QmMsYy51bnN0YWJsZV9yZW5kZXJTdWJ0cmVlSW50b0NvbnRhaW5lcj1mdW5jdGlvbihlLHQsbixyKXtpZighU3UobikpdGhyb3cgRXJyb3IoRCgyMDApKTtpZihudWxsPT1lfHx2b2lkIDA9PT1lLl9yZWFjdEludGVybmFscyl0aHJvdyBFcnJvcihEKDM4KSk7cmV0dXJuIEV1KGUsdCxuLCExLHIpfSxjLnZlcnNpb249IjE4LjIuMC1uZXh0LTllM2I3NzJiOC0yMDIyMDYwOCJ9LGZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9bigxNzIpfSxmdW5jdGlvbihlLFQsdCl7IWZ1bmN0aW9uKGUpe2Z1bmN0aW9uIGEoZSx0KXt2YXIgbj1lLmxlbmd0aDtmb3IoZS5wdXNoKHQpOzA8bjspe3ZhciByPW4tMT4+PjEsbz1lW3JdO2lmKCEoMDxzKG8sdCkpKWJyZWFrO2Vbcl09dCxlW25dPW8sbj1yfX1mdW5jdGlvbiBsKGUpe3JldHVybiAwPT09ZS5sZW5ndGg/bnVsbDplWzBdfWZ1bmN0aW9uIGMoZSl7aWYoMCE9PWUubGVuZ3RoKXt2YXIgdD1lWzBdLG49ZS5wb3AoKTtpZihuIT09dCl7ZVswXT1uO2Zvcih2YXIgcj0wLG89ZS5sZW5ndGgsYT1vPj4+MTtyPGE7KXt2YXIgaT0yKihyKzEpLTEsbD1lW2ldLGM9MStpLHU9ZVtjXTtpZihzKGwsbik8MClyPWM8byYmcyh1LGwpPDA/KGVbcl09dSxlW2NdPW4sYyk6KGVbcl09bCxlW2ldPW4saSk7ZWxzZXtpZighKGM8byYmcyh1LG4pPDApKWJyZWFrO2Vbcl09dSxlW2NdPW4scj1jfX19fX1mdW5jdGlvbiBzKGUsdCl7dmFyIG49ZS5zb3J0SW5kZXgtdC5zb3J0SW5kZXg7cmV0dXJuIDAhPW4/bjplLmlkLXQuaWR9Im9iamVjdCI9PXR5cGVvZiBwZXJmb3JtYW5jZSYmImZ1bmN0aW9uIj09dHlwZW9mIHBlcmZvcm1hbmNlLm5vdz8odD1wZXJmb3JtYW5jZSxULnVuc3RhYmxlX25vdz1mdW5jdGlvbigpe3JldHVybiB0Lm5vdygpfSk6KG49RGF0ZSxyPW4ubm93KCksVC51bnN0YWJsZV9ub3c9ZnVuY3Rpb24oKXtyZXR1cm4gbi5ub3coKS1yfSk7dmFyIHQsbixyLHU9W10sZj1bXSxpPTEsZD1udWxsLHA9MyxtPSExLGg9ITEsZz0hMSxvPSJmdW5jdGlvbiI9PXR5cGVvZiBzZXRUaW1lb3V0P3NldFRpbWVvdXQ6bnVsbCxiPSJmdW5jdGlvbiI9PXR5cGVvZiBjbGVhclRpbWVvdXQ/Y2xlYXJUaW1lb3V0Om51bGwseT12b2lkIDAhPT1lP2U6bnVsbDtmdW5jdGlvbiB2KGUpe2Zvcih2YXIgdD1sKGYpO251bGwhPT10Oyl7aWYobnVsbD09PXQuY2FsbGJhY2spYyhmKTtlbHNle2lmKCEodC5zdGFydFRpbWU8PWUpKWJyZWFrO2MoZiksdC5zb3J0SW5kZXg9dC5leHBpcmF0aW9uVGltZSxhKHUsdCl9dD1sKGYpfX1mdW5jdGlvbiB3KGUpe3ZhciB0O2c9ITEsdihlKSxofHwobnVsbCE9PWwodSk/KGg9ITAsXyh4KSk6bnVsbCE9PSh0PWwoZikpJiZ6KHcsdC5zdGFydFRpbWUtZSkpfWZ1bmN0aW9uIHgoZSx0KXtoPSExLGcmJihnPSExLGIoTyksTz0tMSksbT0hMDt2YXIgbj1wO3RyeXtmb3Iodih0KSxkPWwodSk7bnVsbCE9PWQmJighKGQuZXhwaXJhdGlvblRpbWU+dCl8fGUmJiFQKCkpOyl7dmFyIHIsbz1kLmNhbGxiYWNrOyJmdW5jdGlvbiI9PXR5cGVvZiBvPyhkLmNhbGxiYWNrPW51bGwscD1kLnByaW9yaXR5TGV2ZWwscj1vKGQuZXhwaXJhdGlvblRpbWU8PXQpLHQ9VC51bnN0YWJsZV9ub3coKSwiZnVuY3Rpb24iPT10eXBlb2Ygcj9kLmNhbGxiYWNrPXI6ZD09PWwodSkmJmModSksdih0KSk6Yyh1KSxkPWwodSl9dmFyIGEsaT1udWxsIT09ZHx8KG51bGwhPT0oYT1sKGYpKSYmeih3LGEuc3RhcnRUaW1lLXQpLCExKTtyZXR1cm4gaX1maW5hbGx5e2Q9bnVsbCxwPW4sbT0hMX19InVuZGVmaW5lZCIhPXR5cGVvZiBuYXZpZ2F0b3ImJnZvaWQgMCE9PW5hdmlnYXRvci5zY2hlZHVsaW5nJiZ2b2lkIDAhPT1uYXZpZ2F0b3Iuc2NoZWR1bGluZy5pc0lucHV0UGVuZGluZyYmbmF2aWdhdG9yLnNjaGVkdWxpbmcuaXNJbnB1dFBlbmRpbmcuYmluZChuYXZpZ2F0b3Iuc2NoZWR1bGluZyk7dmFyIGssUyxDPSExLEU9bnVsbCxPPS0xLGo9NSxBPS0xO2Z1bmN0aW9uIFAoKXtyZXR1cm4hKFQudW5zdGFibGVfbm93KCktQTxqKX1mdW5jdGlvbiBJKCl7aWYobnVsbCE9PUUpe3ZhciBlPVQudW5zdGFibGVfbm93KCksdD0oQT1lLCEwKTt0cnl7dD1FKCEwLGUpfWZpbmFsbHl7dD9rKCk6KEM9ITEsRT1udWxsKX19ZWxzZSBDPSExfWZ1bmN0aW9uIF8oZSl7RT1lLEN8fChDPSEwLGsoKSl9ZnVuY3Rpb24geihlLHQpe089byhmdW5jdGlvbigpe2UoVC51bnN0YWJsZV9ub3coKSl9LHQpfWs9ImZ1bmN0aW9uIj09dHlwZW9mIHk/ZnVuY3Rpb24oKXt5KEkpfToidW5kZWZpbmVkIiE9dHlwZW9mIE1lc3NhZ2VDaGFubmVsPyhlPW5ldyBNZXNzYWdlQ2hhbm5lbCxTPWUucG9ydDIsZS5wb3J0MS5vbm1lc3NhZ2U9SSxmdW5jdGlvbigpe1MucG9zdE1lc3NhZ2UobnVsbCl9KTpmdW5jdGlvbigpe28oSSwwKX0sVC51bnN0YWJsZV9JZGxlUHJpb3JpdHk9NSxULnVuc3RhYmxlX0ltbWVkaWF0ZVByaW9yaXR5PTEsVC51bnN0YWJsZV9Mb3dQcmlvcml0eT00LFQudW5zdGFibGVfTm9ybWFsUHJpb3JpdHk9MyxULnVuc3RhYmxlX1Byb2ZpbGluZz1udWxsLFQudW5zdGFibGVfVXNlckJsb2NraW5nUHJpb3JpdHk9MixULnVuc3RhYmxlX2NhbmNlbENhbGxiYWNrPWZ1bmN0aW9uKGUpe2UuY2FsbGJhY2s9bnVsbH0sVC51bnN0YWJsZV9jb250aW51ZUV4ZWN1dGlvbj1mdW5jdGlvbigpe2h8fG18fChoPSEwLF8oeCkpfSxULnVuc3RhYmxlX2ZvcmNlRnJhbWVSYXRlPWZ1bmN0aW9uKGUpe2U8MHx8MTI1PGU/Y29uc29sZS5lcnJvcigiZm9yY2VGcmFtZVJhdGUgdGFrZXMgYSBwb3NpdGl2ZSBpbnQgYmV0d2VlbiAwIGFuZCAxMjUsIGZvcmNpbmcgZnJhbWUgcmF0ZXMgaGlnaGVyIHRoYW4gMTI1IGZwcyBpcyBub3Qgc3VwcG9ydGVkIik6aj0wPGU/TWF0aC5mbG9vcigxZTMvZSk6NX0sVC51bnN0YWJsZV9nZXRDdXJyZW50UHJpb3JpdHlMZXZlbD1mdW5jdGlvbigpe3JldHVybiBwfSxULnVuc3RhYmxlX2dldEZpcnN0Q2FsbGJhY2tOb2RlPWZ1bmN0aW9uKCl7cmV0dXJuIGwodSl9LFQudW5zdGFibGVfbmV4dD1mdW5jdGlvbihlKXtzd2l0Y2gocCl7Y2FzZSAxOmNhc2UgMjpjYXNlIDM6dmFyIHQ9MzticmVhaztkZWZhdWx0OnQ9cH12YXIgbj1wO3A9dDt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e3A9bn19LFQudW5zdGFibGVfcGF1c2VFeGVjdXRpb249ZnVuY3Rpb24oKXt9LFQudW5zdGFibGVfcmVxdWVzdFBhaW50PWZ1bmN0aW9uKCl7fSxULnVuc3RhYmxlX3J1bldpdGhQcmlvcml0eT1mdW5jdGlvbihlLHQpe3N3aXRjaChlKXtjYXNlIDE6Y2FzZSAyOmNhc2UgMzpjYXNlIDQ6Y2FzZSA1OmJyZWFrO2RlZmF1bHQ6ZT0zfXZhciBuPXA7cD1lO3RyeXtyZXR1cm4gdCgpfWZpbmFsbHl7cD1ufX0sVC51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1ULnVuc3RhYmxlX25vdygpO3N3aXRjaChuPSJvYmplY3QiPT10eXBlb2YgbiYmbnVsbCE9PW4mJiJudW1iZXIiPT10eXBlb2Yobj1uLmRlbGF5KSYmMDxuP3IrbjpyLGUpe2Nhc2UgMTp2YXIgbz0tMTticmVhaztjYXNlIDI6bz0yNTA7YnJlYWs7Y2FzZSA1Om89MTA3Mzc0MTgyMzticmVhaztjYXNlIDQ6bz0xZTQ7YnJlYWs7ZGVmYXVsdDpvPTVlM31yZXR1cm4gZT17aWQ6aSsrLGNhbGxiYWNrOnQscHJpb3JpdHlMZXZlbDplLHN0YXJ0VGltZTpuLGV4cGlyYXRpb25UaW1lOm89bitvLHNvcnRJbmRleDotMX0scjxuPyhlLnNvcnRJbmRleD1uLGEoZixlKSxudWxsPT09bCh1KSYmZT09PWwoZikmJihnPyhiKE8pLE89LTEpOmc9ITAseih3LG4tcikpKTooZS5zb3J0SW5kZXg9byxhKHUsZSksaHx8bXx8KGg9ITAsXyh4KSkpLGV9LFQudW5zdGFibGVfc2hvdWxkWWllbGQ9UCxULnVuc3RhYmxlX3dyYXBDYWxsYmFjaz1mdW5jdGlvbih0KXt2YXIgbj1wO3JldHVybiBmdW5jdGlvbigpe3ZhciBlPXA7cD1uO3RyeXtyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9ZmluYWxseXtwPWV9fX19LmNhbGwodGhpcyx0KDE3Mykuc2V0SW1tZWRpYXRlKX0sZnVuY3Rpb24oZSxvLGEpeyFmdW5jdGlvbihlKXt2YXIgdD12b2lkIDAhPT1lJiZlfHwidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGYmJnNlbGZ8fHdpbmRvdyxuPUZ1bmN0aW9uLnByb3RvdHlwZS5hcHBseTtmdW5jdGlvbiByKGUsdCl7dGhpcy5faWQ9ZSx0aGlzLl9jbGVhckZuPXR9by5zZXRUaW1lb3V0PWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyByKG4uY2FsbChzZXRUaW1lb3V0LHQsYXJndW1lbnRzKSxjbGVhclRpbWVvdXQpfSxvLnNldEludGVydmFsPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyByKG4uY2FsbChzZXRJbnRlcnZhbCx0LGFyZ3VtZW50cyksY2xlYXJJbnRlcnZhbCl9LG8uY2xlYXJUaW1lb3V0PW8uY2xlYXJJbnRlcnZhbD1mdW5jdGlvbihlKXtlJiZlLmNsb3NlKCl9LHIucHJvdG90eXBlLnVucmVmPXIucHJvdG90eXBlLnJlZj1mdW5jdGlvbigpe30sci5wcm90b3R5cGUuY2xvc2U9ZnVuY3Rpb24oKXt0aGlzLl9jbGVhckZuLmNhbGwodCx0aGlzLl9pZCl9LG8uZW5yb2xsPWZ1bmN0aW9uKGUsdCl7Y2xlYXJUaW1lb3V0KGUuX2lkbGVUaW1lb3V0SWQpLGUuX2lkbGVUaW1lb3V0PXR9LG8udW5lbnJvbGw9ZnVuY3Rpb24oZSl7Y2xlYXJUaW1lb3V0KGUuX2lkbGVUaW1lb3V0SWQpLGUuX2lkbGVUaW1lb3V0PS0xfSxvLl91bnJlZkFjdGl2ZT1vLmFjdGl2ZT1mdW5jdGlvbihlKXtjbGVhclRpbWVvdXQoZS5faWRsZVRpbWVvdXRJZCk7dmFyIHQ9ZS5faWRsZVRpbWVvdXQ7MDw9dCYmKGUuX2lkbGVUaW1lb3V0SWQ9c2V0VGltZW91dChmdW5jdGlvbigpe2UuX29uVGltZW91dCYmZS5fb25UaW1lb3V0KCl9LHQpKX0sYSgxNzQpLG8uc2V0SW1tZWRpYXRlPSJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZi5zZXRJbW1lZGlhdGV8fHZvaWQgMCE9PWUmJmUuc2V0SW1tZWRpYXRlfHx0aGlzJiZ0aGlzLnNldEltbWVkaWF0ZSxvLmNsZWFySW1tZWRpYXRlPSJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZi5jbGVhckltbWVkaWF0ZXx8dm9pZCAwIT09ZSYmZS5jbGVhckltbWVkaWF0ZXx8dGhpcyYmdGhpcy5jbGVhckltbWVkaWF0ZX0uY2FsbCh0aGlzLGEoMjIpKX0sZnVuY3Rpb24oZSx0LG4peyFmdW5jdGlvbihlLHQpe2Z1bmN0aW9uIGEoZSl7ZGVsZXRlIGNbZV19ZnVuY3Rpb24gaShlKXtpZih1KXNldFRpbWVvdXQoaSwwLGUpO2Vsc2V7dmFyIHQ9Y1tlXTtpZih0KXt1PSEwO3RyeXt2YXIgbj10LHI9bi5jYWxsYmFjayxvPW4uYXJncztzd2l0Y2goby5sZW5ndGgpe2Nhc2UgMDpyKCk7YnJlYWs7Y2FzZSAxOnIob1swXSk7YnJlYWs7Y2FzZSAyOnIob1swXSxvWzFdKTticmVhaztjYXNlIDM6cihvWzBdLG9bMV0sb1syXSk7YnJlYWs7ZGVmYXVsdDpyLmFwcGx5KGwsbyl9fWZpbmFsbHl7YShlKSx1PSExfX19fWZ1bmN0aW9uIG4oKXtmdW5jdGlvbiBlKGUpe2Uuc291cmNlPT09ciYmInN0cmluZyI9PXR5cGVvZiBlLmRhdGEmJjA9PT1lLmRhdGEuaW5kZXhPZih0KSYmaSgrZS5kYXRhLnNsaWNlKHQubGVuZ3RoKSl9dmFyIHQ9InNldEltbWVkaWF0ZSQiK01hdGgucmFuZG9tKCkrIiQiO3IuYWRkRXZlbnRMaXN0ZW5lcj9yLmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLGUsITEpOnIuYXR0YWNoRXZlbnQoIm9ubWVzc2FnZSIsZSksZj1mdW5jdGlvbihlKXtyLnBvc3RNZXNzYWdlKHQrZSwiKiIpfX12YXIgcixsLG8sYyx1LHMsZixkLHA7KHI9InVuZGVmaW5lZCI9PXR5cGVvZiBzZWxmP3ZvaWQgMD09PWU/dGhpczplOnNlbGYpLnNldEltbWVkaWF0ZXx8KG89MSx1PSEoYz17fSkscz1yLmRvY3VtZW50LGU9KGU9T2JqZWN0LmdldFByb3RvdHlwZU9mJiZPYmplY3QuZ2V0UHJvdG90eXBlT2YocikpJiZlLnNldFRpbWVvdXQ/ZTpyLCJbb2JqZWN0IHByb2Nlc3NdIj09PXt9LnRvU3RyaW5nLmNhbGwoci5wcm9jZXNzKT9mPWZ1bmN0aW9uKGUpe3QubmV4dFRpY2soZnVuY3Rpb24oKXtpKGUpfSl9OiFmdW5jdGlvbigpe3ZhciBlLHQ7aWYoci5wb3N0TWVzc2FnZSYmIXIuaW1wb3J0U2NyaXB0cylyZXR1cm4gZT0hMCx0PXIub25tZXNzYWdlLHIub25tZXNzYWdlPWZ1bmN0aW9uKCl7ZT0hMX0sci5wb3N0TWVzc2FnZSgiIiwiKiIpLHIub25tZXNzYWdlPXQsZX0oKT9mPXIuTWVzc2FnZUNoYW5uZWw/KChwPW5ldyBNZXNzYWdlQ2hhbm5lbCkucG9ydDEub25tZXNzYWdlPWZ1bmN0aW9uKGUpe2koZS5kYXRhKX0sZnVuY3Rpb24oZSl7cC5wb3J0Mi5wb3N0TWVzc2FnZShlKX0pOnMmJiJvbnJlYWR5c3RhdGVjaGFuZ2UiaW4gcy5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKT8oZD1zLmRvY3VtZW50RWxlbWVudCxmdW5jdGlvbihlKXt2YXIgdD1zLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO3Qub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7aShlKSx0Lm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsLGQucmVtb3ZlQ2hpbGQodCksdD1udWxsfSxkLmFwcGVuZENoaWxkKHQpfSk6ZnVuY3Rpb24oZSl7c2V0VGltZW91dChpLDAsZSl9Om4oKSxlLnNldEltbWVkaWF0ZT1mdW5jdGlvbihlKXsiZnVuY3Rpb24iIT10eXBlb2YgZSYmKGU9bmV3IEZ1bmN0aW9uKCIiK2UpKTtmb3IodmFyIHQ9bmV3IEFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMSksbj0wO248dC5sZW5ndGg7bisrKXRbbl09YXJndW1lbnRzW24rMV07cmV0dXJuIGNbb109e2NhbGxiYWNrOmUsYXJnczp0fSxmKG8pLG8rK30sZS5jbGVhckltbWVkaWF0ZT1hKX0uY2FsbCh0aGlzLG4oMjIpLG4oOTIpKX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByLG89U3ltYm9sLmZvcigicmVhY3QuZWxlbWVudCIpLGE9U3ltYm9sLmZvcigicmVhY3QucG9ydGFsIiksaT1TeW1ib2wuZm9yKCJyZWFjdC5mcmFnbWVudCIpLGw9U3ltYm9sLmZvcigicmVhY3Quc3RyaWN0X21vZGUiKSxjPVN5bWJvbC5mb3IoInJlYWN0LnByb2ZpbGVyIiksdT1TeW1ib2wuZm9yKCJyZWFjdC5wcm92aWRlciIpLHM9U3ltYm9sLmZvcigicmVhY3QuY29udGV4dCIpLGY9U3ltYm9sLmZvcigicmVhY3Quc2VydmVyX2NvbnRleHQiKSxkPVN5bWJvbC5mb3IoInJlYWN0LmZvcndhcmRfcmVmIikscD1TeW1ib2wuZm9yKCJyZWFjdC5zdXNwZW5zZSIpLG09U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2VfbGlzdCIpLGg9U3ltYm9sLmZvcigicmVhY3QubWVtbyIpLGc9U3ltYm9sLmZvcigicmVhY3QubGF6eSIpLGI9U3ltYm9sLmZvcigicmVhY3Qub2Zmc2NyZWVuIik7ZnVuY3Rpb24geShlKXtpZigib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lKXt2YXIgdD1lLiQkdHlwZW9mO3N3aXRjaCh0KXtjYXNlIG86c3dpdGNoKGU9ZS50eXBlKXtjYXNlIGk6Y2FzZSBjOmNhc2UgbDpjYXNlIHA6Y2FzZSBtOnJldHVybiBlO2RlZmF1bHQ6c3dpdGNoKGU9ZSYmZS4kJHR5cGVvZil7Y2FzZSBmOmNhc2UgczpjYXNlIGQ6Y2FzZSBnOmNhc2UgaDpjYXNlIHU6cmV0dXJuIGU7ZGVmYXVsdDpyZXR1cm4gdH19Y2FzZSBhOnJldHVybiB0fX19cj1TeW1ib2wuZm9yKCJyZWFjdC5tb2R1bGUucmVmZXJlbmNlIiksdC5Db250ZXh0Q29uc3VtZXI9cyx0LkNvbnRleHRQcm92aWRlcj11LHQuRWxlbWVudD1vLHQuRm9yd2FyZFJlZj1kLHQuRnJhZ21lbnQ9aSx0Lkxhenk9Zyx0Lk1lbW89aCx0LlBvcnRhbD1hLHQuUHJvZmlsZXI9Yyx0LlN0cmljdE1vZGU9bCx0LlN1c3BlbnNlPXAsdC5TdXNwZW5zZUxpc3Q9bSx0LmlzQXN5bmNNb2RlPWZ1bmN0aW9uKCl7cmV0dXJuITF9LHQuaXNDb25jdXJyZW50TW9kZT1mdW5jdGlvbigpe3JldHVybiExfSx0LmlzQ29udGV4dENvbnN1bWVyPWZ1bmN0aW9uKGUpe3JldHVybiB5KGUpPT09c30sdC5pc0NvbnRleHRQcm92aWRlcj1mdW5jdGlvbihlKXtyZXR1cm4geShlKT09PXV9LHQuaXNFbGVtZW50PWZ1bmN0aW9uKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJmUuJCR0eXBlb2Y9PT1vfSx0LmlzRm9yd2FyZFJlZj1mdW5jdGlvbihlKXtyZXR1cm4geShlKT09PWR9LHQuaXNGcmFnbWVudD1mdW5jdGlvbihlKXtyZXR1cm4geShlKT09PWl9LHQuaXNMYXp5PWZ1bmN0aW9uKGUpe3JldHVybiB5KGUpPT09Z30sdC5pc01lbW89ZnVuY3Rpb24oZSl7cmV0dXJuIHkoZSk9PT1ofSx0LmlzUG9ydGFsPWZ1bmN0aW9uKGUpe3JldHVybiB5KGUpPT09YX0sdC5pc1Byb2ZpbGVyPWZ1bmN0aW9uKGUpe3JldHVybiB5KGUpPT09Y30sdC5pc1N0cmljdE1vZGU9ZnVuY3Rpb24oZSl7cmV0dXJuIHkoZSk9PT1sfSx0LmlzU3VzcGVuc2U9ZnVuY3Rpb24oZSl7cmV0dXJuIHkoZSk9PT1wfSx0LmlzU3VzcGVuc2VMaXN0PWZ1bmN0aW9uKGUpe3JldHVybiB5KGUpPT09bX0sdC5pc1ZhbGlkRWxlbWVudFR5cGU9ZnVuY3Rpb24oZSl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlfHwiZnVuY3Rpb24iPT10eXBlb2YgZXx8ZT09PWl8fGU9PT1jfHxlPT09bHx8ZT09PXB8fGU9PT1tfHxlPT09Ynx8Im9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmKGUuJCR0eXBlb2Y9PT1nfHxlLiQkdHlwZW9mPT09aHx8ZS4kJHR5cGVvZj09PXV8fGUuJCR0eXBlb2Y9PT1zfHxlLiQkdHlwZW9mPT09ZHx8ZS4kJHR5cGVvZj09PXJ8fHZvaWQgMCE9PWUuZ2V0TW9kdWxlSWQpfSx0LnR5cGVPZj15fSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPW4oMTc3KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJlN5bWJvbC5mb3Isbz1yP1N5bWJvbC5mb3IoInJlYWN0LmVsZW1lbnQiKTo2MDEwMyxhPXI/U3ltYm9sLmZvcigicmVhY3QucG9ydGFsIik6NjAxMDYsaT1yP1N5bWJvbC5mb3IoInJlYWN0LmZyYWdtZW50Iik6NjAxMDcsbD1yP1N5bWJvbC5mb3IoInJlYWN0LnN0cmljdF9tb2RlIik6NjAxMDgsYz1yP1N5bWJvbC5mb3IoInJlYWN0LnByb2ZpbGVyIik6NjAxMTQsdT1yP1N5bWJvbC5mb3IoInJlYWN0LnByb3ZpZGVyIik6NjAxMDkscz1yP1N5bWJvbC5mb3IoInJlYWN0LmNvbnRleHQiKTo2MDExMCxmPXI/U3ltYm9sLmZvcigicmVhY3QuYXN5bmNfbW9kZSIpOjYwMTExLGQ9cj9TeW1ib2wuZm9yKCJyZWFjdC5jb25jdXJyZW50X21vZGUiKTo2MDExMSxwPXI/U3ltYm9sLmZvcigicmVhY3QuZm9yd2FyZF9yZWYiKTo2MDExMixtPXI/U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2UiKTo2MDExMyxoPXI/U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2VfbGlzdCIpOjYwMTIwLGc9cj9TeW1ib2wuZm9yKCJyZWFjdC5tZW1vIik6NjAxMTUsYj1yP1N5bWJvbC5mb3IoInJlYWN0LmxhenkiKTo2MDExNix5PXI/U3ltYm9sLmZvcigicmVhY3QuYmxvY2siKTo2MDEyMSx2PXI/U3ltYm9sLmZvcigicmVhY3QuZnVuZGFtZW50YWwiKTo2MDExNyx3PXI/U3ltYm9sLmZvcigicmVhY3QucmVzcG9uZGVyIik6NjAxMTgseD1yP1N5bWJvbC5mb3IoInJlYWN0LnNjb3BlIik6NjAxMTk7ZnVuY3Rpb24gayhlKXtpZigib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lKXt2YXIgdD1lLiQkdHlwZW9mO3N3aXRjaCh0KXtjYXNlIG86c3dpdGNoKGU9ZS50eXBlKXtjYXNlIGY6Y2FzZSBkOmNhc2UgaTpjYXNlIGM6Y2FzZSBsOmNhc2UgbTpyZXR1cm4gZTtkZWZhdWx0OnN3aXRjaChlPWUmJmUuJCR0eXBlb2Ype2Nhc2UgczpjYXNlIHA6Y2FzZSBiOmNhc2UgZzpjYXNlIHU6cmV0dXJuIGU7ZGVmYXVsdDpyZXR1cm4gdH19Y2FzZSBhOnJldHVybiB0fX19ZnVuY3Rpb24gUyhlKXtyZXR1cm4gayhlKT09PWR9dC5Bc3luY01vZGU9Zix0LkNvbmN1cnJlbnRNb2RlPWQsdC5Db250ZXh0Q29uc3VtZXI9cyx0LkNvbnRleHRQcm92aWRlcj11LHQuRWxlbWVudD1vLHQuRm9yd2FyZFJlZj1wLHQuRnJhZ21lbnQ9aSx0Lkxhenk9Yix0Lk1lbW89Zyx0LlBvcnRhbD1hLHQuUHJvZmlsZXI9Yyx0LlN0cmljdE1vZGU9bCx0LlN1c3BlbnNlPW0sdC5pc0FzeW5jTW9kZT1mdW5jdGlvbihlKXtyZXR1cm4gUyhlKXx8ayhlKT09PWZ9LHQuaXNDb25jdXJyZW50TW9kZT1TLHQuaXNDb250ZXh0Q29uc3VtZXI9ZnVuY3Rpb24oZSl7cmV0dXJuIGsoZSk9PT1zfSx0LmlzQ29udGV4dFByb3ZpZGVyPWZ1bmN0aW9uKGUpe3JldHVybiBrKGUpPT09dX0sdC5pc0VsZW1lbnQ9ZnVuY3Rpb24oZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmZS4kJHR5cGVvZj09PW99LHQuaXNGb3J3YXJkUmVmPWZ1bmN0aW9uKGUpe3JldHVybiBrKGUpPT09cH0sdC5pc0ZyYWdtZW50PWZ1bmN0aW9uKGUpe3JldHVybiBrKGUpPT09aX0sdC5pc0xhenk9ZnVuY3Rpb24oZSl7cmV0dXJuIGsoZSk9PT1ifSx0LmlzTWVtbz1mdW5jdGlvbihlKXtyZXR1cm4gayhlKT09PWd9LHQuaXNQb3J0YWw9ZnVuY3Rpb24oZSl7cmV0dXJuIGsoZSk9PT1hfSx0LmlzUHJvZmlsZXI9ZnVuY3Rpb24oZSl7cmV0dXJuIGsoZSk9PT1jfSx0LmlzU3RyaWN0TW9kZT1mdW5jdGlvbihlKXtyZXR1cm4gayhlKT09PWx9LHQuaXNTdXNwZW5zZT1mdW5jdGlvbihlKXtyZXR1cm4gayhlKT09PW19LHQuaXNWYWxpZEVsZW1lbnRUeXBlPWZ1bmN0aW9uKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZXx8ImZ1bmN0aW9uIj09dHlwZW9mIGV8fGU9PT1pfHxlPT09ZHx8ZT09PWN8fGU9PT1sfHxlPT09bXx8ZT09PWh8fCJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJihlLiQkdHlwZW9mPT09Ynx8ZS4kJHR5cGVvZj09PWd8fGUuJCR0eXBlb2Y9PT11fHxlLiQkdHlwZW9mPT09c3x8ZS4kJHR5cGVvZj09PXB8fGUuJCR0eXBlb2Y9PT12fHxlLiQkdHlwZW9mPT09d3x8ZS4kJHR5cGVvZj09PXh8fGUuJCR0eXBlb2Y9PT15KX0sdC50eXBlT2Y9a30sZnVuY3Rpb24oYixlLHQpe3QucihlKSx0LmQoZSwic2NyaXB0SWQiLGZ1bmN0aW9uKCl7cmV0dXJuIGd9KTt0KDk4KSx0KDE2Nyk7dmFyIG4sRj10KDApLEg9dC5uKEYpLGU9dCg5MykseT10Lm4oZSk7ZnVuY3Rpb24gbygpe3JldHVybiBuYXZpZ2F0b3IudXNlckFnZW50fHxuYXZpZ2F0b3IudmVuZG9yfWZ1bmN0aW9uIHYoKXtyZXR1cm4gMDw9bmF2aWdhdG9yLnBsYXRmb3JtLnRvVXBwZXJDYXNlKCkuaW5kZXhPZigiTUFDIil9ZnVuY3Rpb24gYSgpe3JldHVybiEhL2lQYWR8aVBob25lfGlQb2QvLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKXx8ISEvaXAoaG9uZXxvZHxhZCkvaS50ZXN0KG8oKSl8fG5hdmlnYXRvci5tYXhUb3VjaFBvaW50cyYmMjxuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHMmJi9NYWNJbnRlbC8udGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pfWZ1bmN0aW9uIHcoKXtyZXR1cm4tMSE9PW8oKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImFuZHJvaWQiKX1mdW5jdGlvbiBEKCl7dmFyIGU7cmV0dXJuIHZvaWQgMD09PW4mJiExPT09KG49YSgpfHx3KCkpJiYoZT1vKCksbj0vKGFuZHJvaWR8YmJcZCt8bWVlZ28pLittb2JpbGV8YXZhbnRnb3xiYWRhXC98YmxhY2tiZXJyeXxibGF6ZXJ8Y29tcGFsfGVsYWluZXxmZW5uZWN8aGlwdG9wfGllbW9iaWxlfGlwKGhvbmV8b2QpfGlyaXN8a2luZGxlfGxnZSB8bWFlbW98bWlkcHxtbXB8bW9iaWxlLitmaXJlZm94fG5ldGZyb250fG9wZXJhIG0ob2J8aW4paXxwYWxtKCBvcyk/fHBob25lfHAoaXhpfHJlKVwvfHBsdWNrZXJ8cG9ja2V0fHBzcHxzZXJpZXMoNHw2KTB8c3ltYmlhbnx0cmVvfHVwXC4oYnJvd3NlcnxsaW5rKXx2b2RhZm9uZXx3YXB8d2luZG93cyBjZXx4ZGF8eGlpbm8vaS50ZXN0KGUpfHwvMTIwN3w2MzEwfDY1OTB8M2dzb3w0dGhwfDUwWzEtNl1pfDc3MHN8ODAyc3xhIHdhfGFiYWN8YWMoZXJ8b298c1wtKXxhaShrb3xybil8YWwoYXZ8Y2F8Y28pfGFtb2l8YW4oZXh8bnl8eXcpfGFwdHV8YXIoY2h8Z28pfGFzKHRlfHVzKXxhdHR3fGF1KGRpfFwtbXxyIHxzICl8YXZhbnxiZShja3xsbHxucSl8YmkobGJ8cmQpfGJsKGFjfGF6KXxicihlfHYpd3xidW1ifGJ3XC0obnx1KXxjNTVcL3xjYXBpfGNjd2F8Y2RtXC18Y2VsbHxjaHRtfGNsZGN8Y21kXC18Y28obXB8bmQpfGNyYXd8ZGEoaXR8bGx8bmcpfGRidGV8ZGNcLXN8ZGV2aXxkaWNhfGRtb2J8ZG8oY3xwKW98ZHMoMTJ8XC1kKXxlbCg0OXxhaSl8ZW0obDJ8dWwpfGVyKGljfGswKXxlc2w4fGV6KFs0LTddMHxvc3x3YXx6ZSl8ZmV0Y3xmbHkoXC18Xyl8ZzEgdXxnNTYwfGdlbmV8Z2ZcLTV8Z1wtbW98Z28oXC53fG9kKXxncihhZHx1bil8aGFpZXxoY2l0fGhkXC0obXxwfHQpfGhlaVwtfGhpKHB0fHRhKXxocCggaXxpcCl8aHNcLWN8aHQoYyhcLXwgfF98YXxnfHB8c3x0KXx0cCl8aHUoYXd8dGMpfGlcLSgyMHxnb3xtYSl8aTIzMHxpYWMoIHxcLXxcLyl8aWJyb3xpZGVhfGlnMDF8aWtvbXxpbTFrfGlubm98aXBhcXxpcmlzfGphKHR8dilhfGpicm98amVtdXxqaWdzfGtkZGl8a2VqaXxrZ3QoIHxcLyl8a2xvbnxrcHQgfGt3Y1wtfGt5byhjfGspfGxlKG5vfHhpKXxsZyggZ3xcLyhrfGx8dSl8NTB8NTR8XC1bYS13XSl8bGlid3xseW54fG0xXC13fG0zZ2F8bTUwXC98bWEodGV8dWl8eG8pfG1jKDAxfDIxfGNhKXxtXC1jcnxtZShyY3xyaSl8bWkobzh8b2F8dHMpfG1tZWZ8bW8oMDF8MDJ8Yml8ZGV8ZG98dChcLXwgfG98dil8enopfG10KDUwfHAxfHYgKXxtd2JwfG15d2F8bjEwWzAtMl18bjIwWzItM118bjMwKDB8Mil8bjUwKDB8Mnw1KXxuNygwKDB8MSl8MTApfG5lKChjfG0pXC18b258dGZ8d2Z8d2d8d3QpfG5vayg2fGkpfG56cGh8bzJpbXxvcCh0aXx3dil8b3Jhbnxvd2cxfHA4MDB8cGFuKGF8ZHx0KXxwZHhnfHBnKDEzfFwtKFsxLThdfGMpKXxwaGlsfHBpcmV8cGwoYXl8dWMpfHBuXC0yfHBvKGNrfHJ0fHNlKXxwcm94fHBzaW98cHRcLWd8cWFcLWF8cWMoMDd8MTJ8MjF8MzJ8NjB8XC1bMi03XXxpXC0pfHF0ZWt8cjM4MHxyNjAwfHJha3N8cmltOXxybyh2ZXx6byl8czU1XC98c2EoZ2V8bWF8bW18bXN8bnl8dmEpfHNjKDAxfGhcLXxvb3xwXC0pfHNka1wvfHNlKGMoXC18MHwxKXw0N3xtY3xuZHxyaSl8c2doXC18c2hhcnxzaWUoXC18bSl8c2tcLTB8c2woNDV8aWQpfHNtKGFsfGFyfGIzfGl0fHQ1KXxzbyhmdHxueSl8c3AoMDF8aFwtfHZcLXx2ICl8c3koMDF8bWIpfHQyKDE4fDUwKXx0NigwMHwxMHwxOCl8dGEoZ3R8bGspfHRjbFwtfHRkZ1wtfHRlbChpfG0pfHRpbVwtfHRcLW1vfHRvKHBsfHNoKXx0cyg3MHxtXC18bTN8bTUpfHR4XC05fHVwKFwuYnxnMXxzaSl8dXRzdHx2NDAwfHY3NTB8dmVyaXx2aShyZ3x0ZSl8dmsoNDB8NVswLTNdfFwtdil8dm00MHx2b2RhfHZ1bGN8dngoNTJ8NTN8NjB8NjF8NzB8ODB8ODF8ODN8ODV8OTgpfHczYyhcLXwgKXx3ZWJjfHdoaXR8d2koZyB8bmN8bncpfHdtbGJ8d29udXx4NzAwfHlhc1wtfHlvdXJ8emV0b3x6dGVcLS9pLnRlc3QoZS5zdWJzdHIoMCw0KSkpLG59ZnVuY3Rpb24gVSgpe3JldHVybiFEKCl9dmFyIGU9dCg5NCkseD10Lm4oZSk7ZnVuY3Rpb24gaShlKXtyZXR1cm4oaT0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX0pKGUpfWZ1bmN0aW9uIF8odCxlKXt2YXIgbixyPU9iamVjdC5rZXlzKHQpO3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzJiYobj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpLGUmJihuPW4uZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSxyLnB1c2guYXBwbHkocixuKSkscn12YXIgbD17Y2FsbFRvQWN0aW9uOiJNZXNzYWdlIHVzIPCfkYsiLGJ1dHRvblRleHQ6IkNvbnRhY3QgdXMiLGJ1dHRvblRleHRDbG9zZToiQ2xvc2UiLGdyZWV0aW5nTWVzc2FnZToiSGVsbG8g8J+RiyBIb3cgbWF5IHdlIGhlbHAgeW91PyBKdXN0IHNlbmQgdXMgYSBtZXNzYWdlIG5vdyB0byBnZXQgYXNzaXN0YW5jZS4iLGdyZWV0aW5nTWVzc2FnZURlbGF5OjUsY2FsbFRvQWN0aW9uRGVsYXk6M2UzLGNvbXBhbnlMb2dvVXJsOiExLGJ1dHRvbkltYWdlVXJsOiExLHBvc2l0aW9uOiJyaWdodCIsZ3JlZXRpbmc6ITEsYW5pbWF0aW9uOiExLGdyZWV0aW5nU3R5bGU6ImNsYXNzaWMiLGdyZWV0aW5nQWdlbnROYW1lOiJCb2IiLGdyZWV0aW5nRGlyZWN0aW9uOiJjb2x1bW4iLGdyZWV0aW5nQWdlbnRQb3NpdGlvbjoiTWFuYWdlciIsZ3JlZXRpbmdTdGFydENoYXRXaXRoOiJTdGFydCBDaGF0IHdpdGg6IixncmVldGluZ01lc3NlbmdlcnM6ITAsZ3JlZXRpbmdDb29raWU6ODY0MDAsYnJhbmRpbmc6ITEsZGlyZWN0aW9uOiJjb2x1bW4iLGJvcmRlcjohMSxub3RpZmljYXRpb25JbmRpY2F0b3I6ITEsYnV0dG9uQm9yZGVyUmFkaXVzOjUwLGFjdGl2YXRvclNpemU6NTAsYnV0dG9uU2hhZG93OjQwLGJ1dHRvbk9wYWNpdHk6MTAwLGJnU3R5bGU6ImNvbG9yIixidXR0b25BbmltYXRpb246InB1bHNlIixhY3RpdmF0b3JJY29uOiJjbGFzc2ljIixidXR0b25TdHlsZToiY2xhc3NpYyIsc2hpZnRIb3Jpem9udGFsOjAsc2hpZnRWZXJ0aWNhbDowLGdhOiExLG1pcnJvcjohMSxtb2JpbGU6ITAsZGVza3RvcDohMCxkb21haW46ITEsa2V5OiExLG9yZGVyOltdLGlzU2luZ2xlOiExLHNob3dXaWRnZXQ6ITAsY29uZmlnTG9hZGVkOiExLGRpc3BsYXlPbkFsbFBhZ2VzOiEwLHBhZ2VMaXN0VG9TaG93OltdLHBhZ2VMaXN0VG9IaWRlOltdLHN1YnNjcmlwdGlvbkNyZWF0ZWREYXRlOm51bGwsYnV0dG9uQ29sb3I6IiNGRjY1NTAiLGFwcGxlOiExLGFwcGxlTGFiZWw6IkFwcGxlIE1lc3NhZ2VzIixhcHBsZUNvbG9yOiIjMzNkOTRmIixhcHBsZUljb246ITEseW91dHViZTohMSx5b3V0dWJlTGFiZWw6IllvdXR1YmUiLHlvdXR1YmVDb2xvcjoiI2ZmMDAwMCIseW91dHViZUljb246ITEseW91dHViZVNob3dQb3B1cFBsYXRmb3JtOiJldmVyeXdoZXJlIixjYWxsOiExLGNhbGxMYWJlbDoiUGhvbmUiLGNhbGxDb2xvcjoiI2VjNTkyMyIsY2FsbEljb246ITEsY2FsbFFyQ29kZTohMSxjYWxsU2hvd1BvcHVwUGxhdGZvcm06ImRlc2t0b3AiLGNvbnRhY3Rmb3JtSG9zdDpudWxsLGNvbnRhY3Rmb3JtOiExLGNvbnRhY3Rmb3JtTGFiZWw6IkNvbnRhY3QgRm9ybSIsY29udGFjdGZvcm1Db2xvcjoiIzAwNjNmZiIsY29udGFjdGZvcm1JY29uOiExLGNvbnRhY3Rmb3JtUG9wdXBUaXRsZToiQ29udGFjdCBVcyIsY29udGFjdGZvcm1Qb3B1cExhbmc6ImVuIixkaXNjb3JkOiExLGRpc2NvcmRMYWJlbDoiRGlzY29yZCIsZGlzY29yZENvbG9yOiIjNTg2NUYyIixkaXNjb3JkSWNvbjohMSx0ZWFtczohMSx0ZWFtc0xhYmVsOiJUZWFtcyIsdGVhbXNDb2xvcjoiI2ZmZmZmZiIsdGVhbXNJY29uOiExLGVtYWlsOiExLGVtYWlsTGFiZWw6IkVtYWlsIixlbWFpbENvbG9yOiIjNjA2MDYwIixlbWFpbEljb246ITEsZmFjZWJvb2s6ITEsZmFjZWJvb2tMYWJlbDoiTWVzc2VuZ2VyIixmYWNlYm9va0NvbG9yOiIjMDA4NGZmIixmYWNlYm9va0ljb246ITEsZmFjZWJvb2tGcmFtZTpudWxsLGNhbGVuZGFySG9zdDpudWxsLGNhbGVuZGFyOiExLGNhbGVuZGFyTGFiZWw6IkFwcG9pbnRtZW50IixjYWxlbmRhckNvbG9yOiIjMDA2M2ZmIixjYWxlbmRhckljb246ITEsY2FsZW5kYXJDdXN0b21NZXNzYWdlOiJNYWtlIGFuIGFwcG9pbnRtZW50ISIsY2FsZW5kYXJOYW1lUGxhY2Vob2xkZXI6Ik5hbWUiLGNhbGVuZGFyUGhvbmVQbGFjZWhvbGRlcjoiUGhvbmUiLGNhbGVuZGFyRW1haWxQbGFjZWhvbGRlcjoiRW1haWwiLGNhbGVuZGFyTWVzc2FnZVBsYWNlaG9sZGVyOiJNZXNzYWdlIixjYWxlbmRhclNlbmRCdXR0b25UZXh0OiJTRU5EIixnb29nbGVtYXA6ITEsZ29vZ2xlbWFwTGFiZWw6Ikdvb2dsZSBNYXBzIixnb29nbGVtYXBDdXN0b21NZXNzYWdlOiExLGdvb2dsZW1hcENvbG9yOiIjZjNmM2YzIixnb29nbGVtYXBJY29uOiExLGdvb2dsZW1hcFNob3dQb3B1cFBsYXRmb3JtOiJub3doZXJlIixpbnN0YWdyYW06ITEsaW5zdGFncmFtTGFiZWw6Ikluc3RhZ3JhbSIsaW5zdGFncmFtQ29sb3I6IiNGNzc3MzciLGluc3RhZ3JhbUljb246ITEsbGluZTohMSxsaW5lTGFiZWw6IkxpbmUiLGxpbmVDb2xvcjoiIzAwYzMwMCIsbGluZUljb246ITEsbGluZVNob3dQb3B1cFBsYXRmb3JtOiJkZXNrdG9wIixsaW5rOiExLGxpbmtMYWJlbDoiTGluayIsbGlua0NvbG9yOiIjMWY4OGU1IixsaW5rSWNvbjohMSxsaW5rZWRpbjohMSxsaW5rZWRpbkxhYmVsOiJMaW5rZWRJbiIsbGlua2VkaW5Db2xvcjoiIzAwN2ViYiIsbGlua2VkaW5JY29uOiExLHNreXBlOiExLHNreXBlTGFiZWw6IlNreXBlIixza3lwZUNvbG9yOiIjMDBhZmYwIixza3lwZUljb246ITEsc2xhY2s6ITEsc2xhY2tMYWJlbDoiU2xhY2siLHNsYWNrQ29sb3I6IiNmZmZmZmYiLHNsYWNrSWNvbjohMSxzbXM6ITEsc21zTGFiZWw6IlNNUyIsc21zQ29sb3I6IiMxZWNlYTgiLHNtc0ljb246ITEsc21zU2hvd1BvcHVwUGxhdGZvcm06ImRlc2t0b3AiLHNuYXBjaGF0OiExLHNuYXBjaGF0TGFiZWw6IlNuYXBjaGF0IixzbmFwY2hhdENvbG9yOiIjRkZFQTAwIixzbmFwY2hhdEljb246ITEsc25hcGNoYXRTaG93UG9wdXBQbGF0Zm9ybToiZGVza3RvcCIsdGVsZWdyYW06ITEsdGVsZWdyYW1MYWJlbDoiVGVsZWdyYW0iLHRlbGVncmFtQ29sb3I6IiMwMDg3Y2IiLHRlbGVncmFtSWNvbjohMSx0aWt0b2s6ITEsdGlrdG9rTGFiZWw6IlRpa1RvayIsdGlrdG9rQ29sb3I6IiMwMDAwMDAiLHRpa3Rva0ljb246ITEsdHdpdHRlcjohMSx0d2l0dGVyTGFiZWw6IlguY29tIix0d2l0dGVyQ29sb3I6IiMwMDAwMDAiLHR3aXR0ZXJJY29uOiExLHZpYmVyOiExLHZpYmVyTGFiZWw6IlZpYmVyIix2aWJlckNvbG9yOiIjN2I1MTlkIix2aWJlckljb246ITEsdmliZXJTaG93UG9wdXBQbGF0Zm9ybToiZGVza3RvcCIsdmtvbnRha3RlOiExLHZrb250YWt0ZUxhYmVsOiJWa29udGFrdGUiLHZrb250YWt0ZUNvbG9yOiIjNjM4M2E4Iix2a29udGFrdGVJY29uOiExLGNhbGxiYWNrSG9zdDpudWxsLGNhbGxiYWNrOiExLGNhbGxiYWNrTGFiZWw6IkNhbGxiYWNrIixjYWxsYmFja0NvbG9yOiIjMDA2M2ZmIixjYWxsYmFja0ljb246ITEsY2FsbGJhY2tDdXN0b21NZXNzYWdlOiJXZSB3aWxsIGNhbGwgeW91IGJhY2sgaW4gNSBtaW5zISIsY2FsbGJhY2tOYW1lUGxhY2Vob2xkZXI6Ik5hbWUiLGNhbGxiYWNrUGhvbmVQbGFjZWhvbGRlcjoiUGhvbmUiLGNhbGxiYWNrU2VuZEJ1dHRvblRleHQ6IkNhbGwgbWUiLHdhemU6ITEsd2F6ZUxhYmVsOiJXYXplIix3YXplQ29sb3I6IiMzMmNjZmYiLHdhemVJY29uOiExLHdlY2hhdDohMSx3ZWNoYXRMYWJlbDoiV2VDaGF0Iix3ZWNoYXRDb2xvcjoiIzJkYzEwMCIsd2VjaGF0SWNvbjohMSx3ZWNoYXRTaG93UG9wdXBQbGF0Zm9ybToiZGVza3RvcCIsd2hhdHNhcHBMYWJlbDoiV2hhdHNBcHAiLHdoYXRzYXBwQ29sb3I6IiM0ZGMyNDciLHdoYXRzYXBwSWNvbjohMSx3aGF0c2FwcFNob3dQb3B1cDohMSx3aGF0c2FwcFBvcHVwVGl0bGU6ITEsd2hhdHNhcHBQb3B1cFN1YnRpdGxlOiExLHdoYXRzYXBwOiExLHdoYXRzYXBwQWdlbnROdW1iZXIyOiExLHdoYXRzYXBwQWdlbnROdW1iZXIzOiExLHdoYXRzYXBwQWdlbnROdW1iZXI0OiExLHdoYXRzYXBwQWdlbnROdW1iZXI1OiExLHdoYXRzYXBwQWdlbnROYW1lMToiQWdlbnQgbmFtZSIsd2hhdHNhcHBBZ2VudE5hbWUyOiJBZ2VudCBuYW1lIix3aGF0c2FwcEFnZW50TmFtZTM6IkFnZW50IG5hbWUiLHdoYXRzYXBwQWdlbnROYW1lNDoiQWdlbnQgbmFtZSIsd2hhdHNhcHBBZ2VudE5hbWU1OiJBZ2VudCBuYW1lIix3aGF0c2FwcEFnZW50UG9zaXRpb24xOiJBZ2VudCBwb3NpdGlvbiIsd2hhdHNhcHBBZ2VudFBvc2l0aW9uMjoiQWdlbnQgcG9zaXRpb24iLHdoYXRzYXBwQWdlbnRQb3NpdGlvbjM6IkFnZW50IHBvc2l0aW9uIix3aGF0c2FwcEFnZW50UG9zaXRpb240OiJBZ2VudCBwb3NpdGlvbiIsd2hhdHNhcHBBZ2VudFBvc2l0aW9uNToiQWdlbnQgcG9zaXRpb24iLHByZUZpbGxlZE1lc3NhZ2U6ITEsd2hhdHNhcHBQcmVGaWxsZWRNZXNzYWdlMjohMSx3aGF0c2FwcFByZUZpbGxlZE1lc3NhZ2UzOiExLHdoYXRzYXBwUHJlRmlsbGVkTWVzc2FnZTQ6ITEsd2hhdHNhcHBQcmVGaWxsZWRNZXNzYWdlNTohMSx3aGF0c2FwcEFnZW50SW1hZ2UxOiExLHdoYXRzYXBwQWdlbnRJbWFnZTI6ITEsd2hhdHNhcHBBZ2VudEltYWdlMzohMSx3aGF0c2FwcEFnZW50SW1hZ2U0OiExLHdoYXRzYXBwQWdlbnRJbWFnZTU6ITEsd29uZGVyY2hhdDohMSx3b25kZXJjaGF0TGFiZWw6IkFJIGFzc2lzdGFudCIsd29uZGVyY2hhdENvbG9yOiIjNjIzMmViIix3b25kZXJjaGF0SWNvbjohMSxhaTohMSxhaUxhYmVsOiJBSSBjaGF0Ym90IixhaUNvbG9yOiIjMTI5YmYzIixhaUljb246ITEsYWlBdXRvb3BlbjpudWxsLGtha2FvdGFsazohMSxrYWthb3RhbGtMYWJlbDoiS2FrYW9UYWxrIixrYWthb3RhbGtDb2xvcjoiI2YyZGMwMCIsa2FrYW90YWxrSWNvbjohMX0sYz1mdW5jdGlvbihyKXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgbz1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9fKE9iamVjdChvKSwhMCkuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdCxuO3Q9cixuPW9bZT1lXSwoZT1mdW5jdGlvbihlKXtlPWZ1bmN0aW9uKGUsdCl7aWYoIm9iamVjdCIhPT1pKGUpfHxudWxsPT09ZSlyZXR1cm4gZTt2YXIgbj1lW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwPT09bilyZXR1cm4oInN0cmluZyI9PT10P1N0cmluZzpOdW1iZXIpKGUpO249bi5jYWxsKGUsdHx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9PWkobikpcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX0oZSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PT1pKGUpP2U6U3RyaW5nKGUpfShlKSlpbiB0P09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3ZhbHVlOm4sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTp0W2VdPW59KTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyhyLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKG8pKTpfKE9iamVjdChvKSkuZm9yRWFjaChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkocixlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobyxlKSl9KX1yZXR1cm4gcn0oe30sbCk7ZnVuY3Rpb24gdShlKXtyZXR1cm4odT0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX0pKGUpfWZ1bmN0aW9uIHoodCxlKXt2YXIgbixyPU9iamVjdC5rZXlzKHQpO3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzJiYobj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpLGUmJihuPW4uZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSxyLnB1c2guYXBwbHkocixuKSkscn1mdW5jdGlvbiByKHIpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciBvPW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP3ooT2JqZWN0KG8pLCEwKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0LG47dD1yLG49b1tlPWVdLChlPWZ1bmN0aW9uKGUpe2U9ZnVuY3Rpb24oZSx0KXtpZigib2JqZWN0IiE9PXUoZSl8fG51bGw9PT1lKXJldHVybiBlO3ZhciBuPWVbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDA9PT1uKXJldHVybigic3RyaW5nIj09PXQ/U3RyaW5nOk51bWJlcikoZSk7bj1uLmNhbGwoZSx0fHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT09dShuKSlyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfShlLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09PXUoZSk/ZTpTdHJpbmcoZSl9KGUpKWluIHQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6bixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOnRbZV09bn0pOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHIsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMobykpOnooT2JqZWN0KG8pKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihvLGUpKX0pfXJldHVybiByfXZhciBUPXtidXR0b25zOiExLGdyZWV0aW5nTWVzc2FnZTohMCxjYWxsVG9BY3Rpb246ITEsYnV0dG9uUG9wdXA6ITF9LEw9ImFjdGl2YXRvcl9jbGlja2VkIixNPSJhY3RpdmF0b3Jfb3ZlciIsUj0iZ3JlZXRpbmdfbWVzc2FnZV9jbG9zZWQiLHE9ImdyZWV0aW5nX21lc3NhZ2Vfb3BlbmVkIixaPSJidXR0b25fY2xpY2tlZCIsWD0ic2hvd19idXR0b25fcG9wdXAiLHM9e0FDVElWQVRPUl9DTElDS0VEOkwsQUNUSVZBVE9SX09WRVI6TSxHUkVFVElOR19NRVNTQUdFX0NMT1NFRDpSLEdSRUVUSU5HX01FU1NBR0VfT1BFTkVEOnEsQlVUVE9OX0NMSUNLRUQ6Wn07ZnVuY3Rpb24gWShlLHQpe3N3aXRjaCh0LnR5cGUpe2Nhc2UgTDpyZXR1cm4gcihyKHIoe30sZSksdC5wYXlsb2FkKSx7fSx7YnV0dG9uczohZS5idXR0b25zLGNhbGxUb0FjdGlvbjplLmJ1dHRvbnN9KTtjYXNlIE06Y2FzZSBaOmNhc2UgWDpjYXNlIFI6Y2FzZSBxOnJldHVybiByKHIoe30sZSksdC5wYXlsb2FkKTtkZWZhdWx0OnJldHVybiBlfX1mdW5jdGlvbiBRKCl7Qi53aGF0c2FwcC5zaG93UG9wdXA9Yy53aGF0c2FwcFNob3dQb3B1cCxCLnlvdXR1YmUuc2hvd1BvcHVwPWYoYy55b3V0dWJlU2hvd1BvcHVwUGxhdGZvcm0pLEIuY2FsbC5zaG93UG9wdXA9ZihjLmNhbGxTaG93UG9wdXBQbGF0Zm9ybSksQi5zbXMuc2hvd1BvcHVwPWYoYy5zbXNTaG93UG9wdXBQbGF0Zm9ybSksQi5saW5lLnNob3dQb3B1cD1mKGMubGluZVNob3dQb3B1cFBsYXRmb3JtKSxCLnNuYXBjaGF0LnNob3dQb3B1cD1mKGMuc25hcGNoYXRTaG93UG9wdXBQbGF0Zm9ybSksQi52aWJlci5zaG93UG9wdXA9ZihjLnZpYmVyU2hvd1BvcHVwUGxhdGZvcm0pLEIud2VjaGF0LnNob3dQb3B1cD1mKGMud2VjaGF0U2hvd1BvcHVwUGxhdGZvcm0pLEIuZ29vZ2xlbWFwLnNob3dQb3B1cD1mKGMuZ29vZ2xlbWFwU2hvd1BvcHVwUGxhdGZvcm0pO3ZhciB0PVtdO3JldHVybiBKLm1hcChmdW5jdGlvbihlKXtCW2VdLnNob3dQb3B1cCYmdC5wdXNoKGUpfSksdH12YXIgSz1VKCkmJi0xPT09WyJmaXJlZm94IiwiZWRnIiwic2FmYXJpIl0uaW5kZXhPZihmdW5jdGlvbigpe2Zvcih2YXIgZT1vKCkudG9Mb3dlckNhc2UoKSx0PTAsbj1bImZpcmVmb3giLCJ0cmlkZW50IiwiZWRnZSIsImVkZyIsIm9wZXJhIiwiY2hyb21lIiwic2FmYXJpIl07dDxuLmxlbmd0aDt0Kyspe3ZhciByPW5bdF07aWYoLTE8ZS5pbmRleE9mKHIpKXJldHVybiByfX0oKSksZj1mdW5jdGlvbihlKXtzd2l0Y2goZSl7Y2FzZSJldmVyeXdoZXJlIjpyZXR1cm4hMDtjYXNlImRlc2t0b3AiOnJldHVybiBVKCk7Y2FzZSJtb2JpbGUiOnJldHVybiFVKCk7ZGVmYXVsdDpyZXR1cm4hMX19LEI9e2FjdGl2YXRvcjp7Y29sb3I6Yy5idXR0b25Db2xvcixzaG93UG9wdXA6ITEsdGl0bGU6bnVsbCxvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGFwcGxlOntjb2xvcjpjLmFwcGxlQ29sb3Isc2hvd1BvcHVwOiFhKCkmJiF2KCksdGl0bGU6Yy5hcHBsZUxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tYXBwbGUiLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0seW91dHViZTp7Y29sb3I6Yy55b3V0dWJlQ29sb3Isc2hvd1BvcHVwOiEwLHRpdGxlOmMueW91dHViZUxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24teW91dHViZSIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSxjYWxsOntjb2xvcjpjLmNhbGxDb2xvcixzaG93UG9wdXA6VSgpLGNhbGxRckNvZGU6ITAsdGl0bGU6Yy5jYWxsTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1jYWxsIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGNvbnRhY3Rmb3JtOntob3N0OmMuY29udGFjdGZvcm1Ib3N0LGNvbG9yOmMuY29udGFjdGZvcm1Db2xvcixzaG93UG9wdXA6ITAsdGl0bGU6Yy5jb250YWN0Zm9ybUxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tY29udGFjdGZvcm0iLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sY2FsZW5kYXI6e2hvc3Q6Yy5jYWxlbmRhckhvc3QsY29sb3I6Yy5jYWxlbmRhckNvbG9yLHNob3dQb3B1cDohMCx0aXRsZTpjLmNhbGVuZGFyTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1jYWxlbmRhciIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSxkaXNjb3JkOntjb2xvcjpjLmRpc2NvcmRDb2xvcixzaG93UG9wdXA6ITEsdGl0bGU6Yy5kaXNjb3JkTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1kaXNjb3JkIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LHRlYW1zOntjb2xvcjpjLnRlYW1zQ29sb3Isc2hvd1BvcHVwOiExLHRpdGxlOmMudGVhbXNMYWJlbCxidXR0b25JZDoiZ2V0YnV0dG9uLXRlYW1zIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGVtYWlsOntjb2xvcjpjLmVtYWlsQ29sb3Isc2hvd1BvcHVwOiExLHRpdGxlOmMuZW1haWxMYWJlbCxidXR0b25JZDoiZ2V0YnV0dG9uLWVtYWlsIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGZhY2Vib29rOntjb2xvcjpjLmZhY2Vib29rQ29sb3Isc2hvd1BvcHVwOkssdGl0bGU6Yy5mYWNlYm9va0xhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tZmFjZWJvb2siLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sZ29vZ2xlbWFwOntjb2xvcjpjLmdvb2dsZW1hcENvbG9yLHRpdGxlOmMuZ29vZ2xlbWFwTGFiZWwsc2hvd1BvcHVwOiExLGJ1dHRvbklkOiJnZXRidXR0b24tZ29vZ2xlbWFwIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGluc3RhZ3JhbTp7Y29sb3I6Yy5pbnN0YWdyYW1Db2xvcixzaG93UG9wdXA6ITEsdGl0bGU6Yy5pbnN0YWdyYW1MYWJlbCxidXR0b25JZDoiZ2V0YnV0dG9uLWluc3RhZ3JhbSIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSxsaW5lOntjb2xvcjpjLmxpbmVDb2xvcixzaG93UG9wdXA6VSgpLHRpdGxlOmMubGluZUxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tbGluZSIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSxsaW5rOntjb2xvcjpjLmxpbmtDb2xvcixzaG93UG9wdXA6ITEsdGl0bGU6Yy5saW5rTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1saW5rIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGxpbmtlZGluOntjb2xvcjpjLmxpbmtlZGluQ29sb3IsdGl0bGU6Yy5saW5rZWRpbkxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tbGlua2VkaW4iLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sc2t5cGU6e2NvbG9yOmMuc2t5cGVDb2xvcix0aXRsZTpjLnNreXBlTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1za3lwZSIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSxzbGFjazp7Y29sb3I6Yy5zbGFja0NvbG9yLHRpdGxlOmMuc2xhY2tMYWJlbCxidXR0b25JZDoiZ2V0YnV0dG9uLXNsYWNrIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LHNtczp7Y29sb3I6Yy5zbXNDb2xvcixzaG93UG9wdXA6VSgpLHRpdGxlOmMuc21zTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1zbXMiLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMX0sc25hcGNoYXQ6e2NvbG9yOmMuc25hcGNoYXRDb2xvcixzaG93UG9wdXA6VSgpLHRpdGxlOmMuc25hcGNoYXRMYWJlbCxidXR0b25JZDoiZ2V0YnV0dG9uLXNuYXBjaGF0IixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LHRlbGVncmFtOntjb2xvcjpjLnRlbGVncmFtQ29sb3Isc2hvd1BvcHVwOiExLHRpdGxlOmMudGVsZWdyYW1MYWJlbCxidXR0b25JZDoiZ2V0YnV0dG9uLXRlbGVncmFtIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LHRpa3Rvazp7Y29sb3I6Yy50aWt0b2tDb2xvcix0aXRsZTpjLnRpa3Rva0xhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tdGlrdG9rIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LHR3aXR0ZXI6e2NvbG9yOmMudHdpdHRlckNvbG9yLHRpdGxlOmMudHdpdHRlckxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tdHdpdHRlciIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSx2aWJlcjp7Y29sb3I6Yy52aWJlckNvbG9yLHNob3dQb3B1cDpVKCksdGl0bGU6Yy52aWJlckxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tdmliZXIiLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sY2FsbGJhY2s6e2hvc3Q6Yy5jYWxsYmFja0hvc3QsY29sb3I6Yy5jYWxsYmFja0NvbG9yLHNob3dQb3B1cDohMCx0aXRsZTpjLmNhbGxiYWNrTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1jYWxsYmFjayIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSx2a29udGFrdGU6e2NvbG9yOmMudmtvbnRha3RlQ29sb3Isc2hvd1BvcHVwOiExLHRpdGxlOmMudmtvbnRha3RlTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi12a29udGFrdGUiLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sd2F6ZTp7Y29sb3I6Yy53YXplQ29sb3IsdGl0bGU6Yy53YXplTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi13YXplIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LHdlY2hhdDp7Y29sb3I6Yy53ZWNoYXRDb2xvcix0aXRsZTpjLndlY2hhdExhYmVsLHNob3dQb3B1cDpVKCksYnV0dG9uSWQ6ImdldGJ1dHRvbi13ZWNoYXQiLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sd2hhdHNhcHA6e2NvbG9yOmMud2hhdHNhcHBDb2xvcixzaG93UG9wdXA6Yy53aGF0c2FwcFNob3dQb3B1cCx0aXRsZTpjLndoYXRzYXBwTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi13aGF0c2FwcCIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSx3b25kZXJjaGF0Ontjb2xvcjpjLndvbmRlcmNoYXRDb2xvcixzaG93UG9wdXA6ITAsdGl0bGU6Yy53b25kZXJjaGF0TGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi13b25kZXJjaGF0IixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGFpOntjb2xvcjpjLmFpQ29sb3Isc2hvd1BvcHVwOiEwLHRpdGxlOmMuYWlMYWJlbCxidXR0b25JZDoiYWkiLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sa2FrYW90YWxrOntjb2xvcjpjLmtha2FvdGFsa0NvbG9yLHNob3dQb3B1cDohMSx0aXRsZTpjLmtha2FvdGFsa0xhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24ta2FrYW90YWxrdCIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfX0sSj1PYmplY3Qua2V5cyhCKS5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIEJbZV0ub25EZXNrdG9wJiZVKCl8fEJbZV0ub25Nb2JpbGUmJiFVKCl9KTtmdW5jdGlvbiBkKGUpe3JldHVybihkPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKGUpe3JldHVybiB0eXBlb2YgZX06ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJmUuY29uc3RydWN0b3I9PT1TeW1ib2wmJmUhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiBlfSkoZSl9ZnVuY3Rpb24gZWUodCxlKXt2YXIgbixyPU9iamVjdC5rZXlzKHQpO3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzJiYobj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpLGUmJihuPW4uZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSxyLnB1c2guYXBwbHkocixuKSkscn1mdW5jdGlvbiB0ZSh0KXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgbj1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9lZShPYmplY3QobiksITApLmZvckVhY2goZnVuY3Rpb24oZSl7bmUodCxlLG5bZV0pfSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXModCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhuKSk6ZWUoT2JqZWN0KG4pKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihuLGUpKX0pfXJldHVybiB0fWZ1bmN0aW9uIG5lKGUsdCxuKXtyZXR1cm4odD1mdW5jdGlvbihlKXtlPWZ1bmN0aW9uKGUsdCl7aWYoIm9iamVjdCIhPT1kKGUpfHxudWxsPT09ZSlyZXR1cm4gZTt2YXIgbj1lW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwPT09bilyZXR1cm4oInN0cmluZyI9PT10P1N0cmluZzpOdW1iZXIpKGUpO249bi5jYWxsKGUsdHx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9PWQobikpcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX0oZSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PT1kKGUpP2U6U3RyaW5nKGUpfSh0KSlpbiBlP09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse3ZhbHVlOm4sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTplW3RdPW4sZX1mdW5jdGlvbiByZShlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP29lKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP29lKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gb2UoZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn12YXIgYWU9ZnVuY3Rpb24oKXt2YXIgZT1yZShPYmplY3QoRi51c2VTdGF0ZSkoYyksMiksdD1lWzBdLHI9ZVsxXTtyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSl7dmFyIHQ9KGU9ZS5kZXRhaWwpLmtleSxuPWUudmFsdWU7cihmdW5jdGlvbihlKXtyZXR1cm4gdGUodGUoe30sZSkse30sbmUoe30sZmUodCksbikpfSl9cmV0dXJuImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIuaW5jbHVkZXMobG9jYXRpb24uaG9zdG5hbWUpJiZkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJzZXR0aW5nVXBkYXRlZCIsZSksZnVuY3Rpb24oKXtkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJzZXR0aW5nVXBkYXRlZCIsZSl9fSxbY10pLHR9O2Z1bmN0aW9uIGllKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/bGUoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/bGUoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBsZShlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfXZhciBjZT1ILmEuY3JlYXRlQ29udGV4dChudWxsKTtmdW5jdGlvbiB1ZShlKXt2YXIgZT1lLmNoaWxkcmVuLHQ9aWUoT2JqZWN0KEYudXNlUmVkdWNlcikoWSxUKSwyKSxuPXRbMF0scj10WzFdLHQ9e3RvZ2dsZUJ1dHRvbnM6ZnVuY3Rpb24oKXtyKHt0eXBlOnMuQUNUSVZBVE9SX0NMSUNLRUQscGF5bG9hZDp7YnV0dG9uUG9wdXA6ITEsZ3JlZXRpbmdNZXNzYWdlOiExfX0pfSxzaG93QnV0dG9uczpmdW5jdGlvbigpe3Ioe3R5cGU6cy5BQ1RJVkFUT1JfT1ZFUixwYXlsb2FkOntidXR0b25zOiEwLGJ1dHRvblBvcHVwOiExLGdyZWV0aW5nTWVzc2FnZTohMSxjYWxsVG9BY3Rpb246ITF9fSl9LGNsb3NlR3JlZXRpbmdNZXNzYWdlOmZ1bmN0aW9uKCl7cih7dHlwZTpzLkdSRUVUSU5HX01FU1NBR0VfQ0xPU0VELHBheWxvYWQ6e2dyZWV0aW5nTWVzc2FnZTohMSxidXR0b25Qb3B1cDohMSxjYWxsVG9BY3Rpb246ITB9fSl9LG9wZW5HcmVldGluZ01lc3NhZ2U6ZnVuY3Rpb24oKXtyKHt0eXBlOnMuR1JFRVRJTkdfTUVTU0FHRV9PUEVORUQscGF5bG9hZDp7Z3JlZXRpbmdNZXNzYWdlOiEwLGNhbGxUb0FjdGlvbjohMX19KX0sYnV0dG9uQ2xpY2tlZDpmdW5jdGlvbigpe3Ioe3R5cGU6cy5CVVRUT05fQ0xJQ0tFRCxwYXlsb2FkOntidXR0b25zOiExLGdyZWV0aW5nTWVzc2FnZTohMSxjYWxsVG9BY3Rpb246ITAsYnV0dG9uUG9wdXA6ITB9fSl9LHNob3dCdXR0b25Qb3B1cDpmdW5jdGlvbigpe3IoZnVuY3Rpb24oZSl7cmV0dXJuIGU9MDxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1lP2U6IiIsZT0tMSE9PVEoKS5pbmRleE9mKGUpJiZlLHt0eXBlOnMuQlVUVE9OX0NMSUNLRUQscGF5bG9hZDp7YnV0dG9uczohMSxidXR0b25Qb3B1cDplLGdyZWV0aW5nTWVzc2FnZTohMSxjYWxsVG9BY3Rpb246ITE9PT1lfX19KDA8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXToiIikpfSxjbG9zZUJ1dHRvblBvcHVwOmZ1bmN0aW9uKCl7cih7dHlwZTpzLkJVVFRPTl9DTElDS0VELHBheWxvYWQ6e2J1dHRvbnM6ITEsYnV0dG9uUG9wdXA6ITEsZ3JlZXRpbmdNZXNzYWdlOiExLGNhbGxUb0FjdGlvbjohMCxjYWxsVG9BY3Rpb25UaW1lcjohMH19KX19LG89YWUoKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoY2UuUHJvdmlkZXIse3ZhbHVlOntzdGF0ZTpuLGFjdGlvbnM6dCxzZXR0aW5nczpvfX0sZSl9Y2UuQ29uc3VtZXI7ZnVuY3Rpb24gc2UoZSl7dmFyIHQ9ZS5jaGlsZHJlbixlPWUudGhlbWU7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KEMuYSx7dGhlbWU6ZGVbZV19LHQpfWZ1bmN0aW9uIGZlKGUpe3JldHVybiBlLnJlcGxhY2UoLyhbLV9dW2EtejAtOV0pL2csZnVuY3Rpb24oZSl7cmV0dXJuIGUudG9VcHBlckNhc2UoKS5yZXBsYWNlKCItIiwiIikucmVwbGFjZSgiXyIsIiIpfSl9dmFyIFY9Y2UsQz10KDEpLGRlPXtsZWZ0Ontwb3NpdGlvbjoibGVmdCIsYnV0dG9uc09yZGVyOjEscG9wdXBzT3JkZXI6Mixjb250YWluZXJEaXJlY3Rpb246ImZsZXgtc3RhcnQiLGNhbGxUb0FjdGlvbk1hcmdpbjoiYXV0byBhdXRvIGF1dG8gMzFweCIsZ3JlZXRpbmdNYXJnaW46IjIxcHggMjBweCAwIDAifSxyaWdodDp7cG9zaXRpb246InJpZ2h0IixidXR0b25zT3JkZXI6Mixwb3B1cHNPcmRlcjoxLGNvbnRhaW5lckRpcmVjdGlvbjoiZmxleC1lbmQiLGNhbGxUb0FjdGlvbk1hcmdpbjoiYXV0byAzMXB4IGF1dG8gYXV0byIsZ3JlZXRpbmdNYXJnaW46IjIxcHggMCAwIDIwcHgifX0sJD1mdW5jdGlvbihlKXtyZXR1cm4gSC5hLnVzZUNhbGxiYWNrKGZ1bmN0aW9uKGUpe3JldHVybiA0MDxlPzI6MzA8ZT8wOjIwPGU/LTE6MTA8ZT8tMjotNH0sW10pKGUpfSxwZT1mdW5jdGlvbihlLHQpe3JldHVybiBILmEudXNlQ2FsbGJhY2soZnVuY3Rpb24oZSx0KXt2YXIgbj0oZT1lKT97cjpwYXJzZUludChlLnN1YnN0cmluZygxLDMpLDE2KSxnOnBhcnNlSW50KGUuc3Vic3RyaW5nKDMsNSksMTYpLGI6cGFyc2VJbnQoZS5zdWJzdHJpbmcoNSw3KSwxNil9Om51bGw7aWYoIW4pcmV0dXJuIG51bGw7Zm9yKHZhciByPSgyNTUtbi5yKS8odC0yKSxvPSgyNTUtbi5nKS8odCsxKSxhPSgyNTUtbi5iKS8odCs1KSxpPVtdLGw9MDtsPD10O2wrKyl7dmFyIGM9TWF0aC5yb3VuZChuLnIrcipsKSx1PU1hdGgucm91bmQobi5nK28qbCkscz1NYXRoLnJvdW5kKG4uYithKmwpLGM9KHU9dSxzPXMsIm51bWJlciIhPXR5cGVvZihjPWMpfHwibnVtYmVyIiE9dHlwZW9mIHV8fCJudW1iZXIiIT10eXBlb2Ygcz9udWxsOiIjIitjLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCIwIikrdS50b1N0cmluZygxNikucGFkU3RhcnQoMiwiMCIpK3MudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsIjAiKSk7YyYmaS5wdXNoKGMpfXJldHVybiBpLnNwbGljZSgtMyksaX0sW10pKGUsdCl9O2Z1bmN0aW9uIG1lKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/aGUoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/aGUoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBoZShlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIGdlKG8pe3ZhciBlPW1lKEguYS51c2VTdGF0ZSghMSksMiksdD1lWzBdLGE9ZVsxXTtyZXR1cm4gSC5hLnVzZUVmZmVjdChmdW5jdGlvbigpe2Z1bmN0aW9uIHQobil7dmFyIHI9MTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOm51bGw7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHQpe3ImJnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0KCl9LHIpO3ZhciBlPW5ldyBJbWFnZTtlLnNyYz1uLGUuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsZnVuY3Rpb24oZSl7dCgpfSl9KX12YXIgbj1vJiY1MDA8PW8/by01MDA6bnVsbCxlPVtjLmJ1dHRvbkltYWdlVXJsLGMuY29tcGFueUxvZ29VcmxdLHI9W2MuY2FsbEljb24sYy5lbWFpbEljb24sYy5mYWNlYm9va0ljb24sYy5pbnN0YWdyYW1JY29uLGMubGlua0ljb24sYy5saW5lSWNvbixjLnNtc0ljb24sYy5zbmFwY2hhdEljb24sYy50ZWxlZ3JhbUljb24sYy52aWJlckljb24sYy52a29udGFrdGVJY29uLGMud2hhdHNhcHBJY29uLGMuYWlJY29uXSxlPWUuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBlfSkubWFwKGZ1bmN0aW9uKGUpe3JldHVybiB0KGUsNTAwKX0pO1Byb21pc2UuYWxsKGUpLnRoZW4oZnVuY3Rpb24oKXt2YXIgZT1yLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4gZX0pLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gdChlLG4pfSk7UHJvbWlzZS5hbGwoZSkudGhlbihmdW5jdGlvbigpe2EoITApfSl9KX0sW10pLHR9dmFyIFc9ZnVuY3Rpb24oZSl7aWYoImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIuaW5jbHVkZXMobG9jYXRpb24uaG9zdG5hbWUpKXJldHVybiBkb2N1bWVudC5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiZWxlbWVudEFwcGVhcmVkIix7ZGV0YWlsOnt3aWRnZXRXaWR0aDplfX0pKX07ZnVuY3Rpb24gYmUoZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT95ZShlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT95ZShlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIHllKGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9ZnVuY3Rpb24gdmUoKXt2YXIgZT1iZShPYmplY3QoRi51c2VTdGF0ZSkoe3dpZHRoOnZvaWQgMCxoZWlnaHQ6dm9pZCAwfSksMiksdD1lWzBdLG49ZVsxXTtyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXtuKHt3aWR0aDp3aW5kb3cuaW5uZXJXaWR0aCxoZWlnaHQ6d2luZG93LmlubmVySGVpZ2h0fSl9cmV0dXJuIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLGUpLGUoKSxmdW5jdGlvbigpe3JldHVybiB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIixlKX19LFtdKSx0fWZ1bmN0aW9uIHdlKGUpe3JldHVybih3ZT0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX0pKGUpfWZ1bmN0aW9uIHhlKGUsdCl7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciByPXRbbl07ci5lbnVtZXJhYmxlPXIuZW51bWVyYWJsZXx8ITEsci5jb25maWd1cmFibGU9ITAsInZhbHVlImluIHImJihyLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxmdW5jdGlvbihlKXtlPWZ1bmN0aW9uKGUsdCl7aWYoIm9iamVjdCIhPT13ZShlKXx8bnVsbD09PWUpcmV0dXJuIGU7dmFyIG49ZVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMD09PW4pcmV0dXJuKCJzdHJpbmciPT09dD9TdHJpbmc6TnVtYmVyKShlKTtuPW4uY2FsbChlLHR8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPT13ZShuKSlyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfShlLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09PXdlKGUpP2U6U3RyaW5nKGUpfShyLmtleSkscil9fXZhciBrZT1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXtpZighKHRoaXMgaW5zdGFuY2VvZiBlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKX12YXIgdCxuLHI7cmV0dXJuIHQ9ZSxyPVt7a2V5OiJzZXQiLHZhbHVlOmZ1bmN0aW9uKGUsdCl7dmFyIG49Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOm51bGwscj0zPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106bnVsbCxvPTQ8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzRdP2FyZ3VtZW50c1s0XTpudWxsLGE9NTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbNV0mJmFyZ3VtZW50c1s1XSxlPShlPWUrIj0iK2VuY29kZVVSSUNvbXBvbmVudCh0LnRvU3RyaW5nKCkpKyI7ICIpKygicGF0aD0iKyhyfHwiLyIpKyI7ICIpKyJzYW1lc2l0ZT1sYXg7ICI7biYmKCJzdHJpbmciPT10eXBlb2Ygbnx8biBpbnN0YW5jZW9mIFN0cmluZz9lKz0iZXhwaXJlcz0iK24rIjsgIjooKHQ9bmV3IERhdGUpLnNldFRpbWUodC5nZXRUaW1lKCkrMWUzKm4pLGUrPSJleHBpcmVzPSIrdC50b1VUQ1N0cmluZygpKyI7ICIpKSxvJiYoZSs9ImRvbWFpbj0iK28rIjsgIiksYSYmKGUrPSJzZWN1cmU7ICIpLGRvY3VtZW50LmNvb2tpZT1lfX0se2tleToiZ2V0Iix2YWx1ZTpmdW5jdGlvbihlKXtmb3IodmFyIHQ9ZSsiPSIsbj1kb2N1bWVudC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxuLmxlbmd0aDtyKyspe2Zvcih2YXIgbz1uW3JdOyIgIj09PW8uY2hhckF0KDApOylvPW8uc3Vic3RyaW5nKDEpO2lmKDA9PT1vLmluZGV4T2YodCkpcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChvLnN1YnN0cmluZyh0Lmxlbmd0aCxvLmxlbmd0aCkpfXJldHVybiBudWxsfX1dLChuPW51bGwpJiZ4ZSh0LnByb3RvdHlwZSxuKSxyJiZ4ZSh0LHIpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pLGV9KCksU2U9MTYsQ2U9MTQsRWU9ImdiLXdpZGdldC1jb29raWUiLE9lPSExO2Z1bmN0aW9uIGplKCl7Y29uc29sZS5sb2coInZhbGlkYXRpb24uLi4iLGcpO2Z1bmN0aW9uIG8oZSl7ZS5zdGFydHNXaXRoKCJ3d3cuIikmJihlPWUuc2xpY2UoNCkpO3ZhciB0PWxvY2F0aW9uLmhvc3RuYW1lLGU9ZS50b0xvd2VyQ2FzZSgpLG49dC5zbGljZSgwLC1lLmxlbmd0aCkscj10LmVuZHNXaXRoKGUpJiZbIiIsIi4iXS5pbmNsdWRlcyhuLmNoYXJBdChuLmxlbmd0aC0xKSk7cmV0dXJuIHJ8fGNvbnNvbGUud2FybigicmVhc29uOiBkb21haW4iLHQsbixlKSxyfXJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihuKXt2YXIgZSx0OyFnJiYiYWRtaW4uZ2V0YnV0dG9uLmlvLCBuZXh0LmdldGJ1dHRvbi5pbywgMTI3LjAuMC4xLCBsb2NhbGhvc3QsIHRlc3QuZ2V0YnV0dG9uLmlvLCBkZXYuZ2V0YnV0dG9uLmlvLCBnZXRidXR0b24uaW8sIGFkbWluLnNob3BpZnkuY29tIi5pbmNsdWRlcyhsb2NhdGlvbi5ob3N0bmFtZSk/KGMuaXNQcm89ITAsbigpKTpjLmtleXx8Z3x8Yy5oYXNoSWQ/KGU9KHQ9Imh0dHBzOi8vd2lkZ2V0LmdldGJ1dHRvbi5pby9hcGkvdmFsaWRhdGUiKSsiP2tleT0iK2Mua2V5LHQ9Zz90KyI/aGFzaF9pZD0iK2c6Yy5oYXNoSWQ/dCsiP2hhc2hfaWQ9IitjLmhhc2hJZDplLGZldGNoKHQpLnRoZW4oZnVuY3Rpb24oZSl7ZS5vaz9lLmpzb24oKS50aGVuKGZ1bmN0aW9uKGUpe3ZhciB0PW51bGwhPWUmJmUuY3JlYXRlZF9hdD9lLmNyZWF0ZWRfYXQ6bnVsbDtjLmlzUHJvPSEwPT09ZS52YWxpZCYmZnVuY3Rpb24oKXt2YXIgZT0wPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06bnVsbCx0PTE8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpudWxsLG49KGNvbnNvbGUubG9nKCJ2YWxpZGF0ZURvbWFpbiIsZSx0KSxuZXcgRGF0ZSgiMjAyMi0wNS0xMyIpKSxyPXQ/bmV3IERhdGUodCk6bnVsbDtyZXR1cm4gbnVsbD09PXQ/byhlKTohKG48PXIpfHwoZT9vKGUpOihjb25zb2xlLndhcm4oInJlYXNvbjogaW52YWxpZCBkb21haW4iLGUpLCExKSl9KGUuZG9tYWlucyx0KSxjLnN1YnNjcmlwdGlvbkNyZWF0ZWREYXRlPXQsZS5vcHRpb25zJiYoT2U9ZS5vcHRpb25zKSxjLmlzUHJvfHxjb25zb2xlLndhcm4oIkdldEJ1dHRvbiB3b3JrcyBpbiBERU1PIG1vZGUsIHBsZWFzZSByZW5ldyBzdWJzY3JpcHRpb24gb3IgY29udGFjdCB3aXRoIHVzOiBodHRwczovL2dldGJ1dHRvbi5pbyIpLG4oKX0pOihjLmlzUHJvPSEwLG4oKSl9KSk6KGMuaXNQcm89ITEsbigpKX0pfWZ1bmN0aW9uIEFlKGUpe3ZhciB0PVtdO3JldHVybih0PSJzdHJpbmciPT10eXBlb2YgZXx8ZSBpbnN0YW5jZW9mIFN0cmluZz8oZT1lLnRyaW0oKSkuc3BsaXQoL1ssXG5dKy8pLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gZS50cmltKCl9KTp0KS5maWx0ZXIoZnVuY3Rpb24oZSx0LG4pe3JldHVybiJzdHJpbmciPT10eXBlb2YgZSYmIiIhPT1lLnRyaW0oKSYmbi5pbmRleE9mKGUpPT09dH0pfWZ1bmN0aW9uIFBlKGUpe3JldHVybiBlLnJlcGxhY2UoL1wvJC8sIiIpfWZ1bmN0aW9uIEllKGUsdCxuKXtmb3IodmFyIHI9MDtyPGUubGVuZ3RoO3IrKyl7dmFyIG8sYSxpPWVbcl0udHJpbSgpOyIiIT09aSYmKGkuZW5kc1dpdGgoIioiKT8obz1QZShpLnJlcGxhY2UoIioiLCIiKSksKGE9UGUod2luZG93LmxvY2F0aW9uLmhyZWYudG9Mb3dlckNhc2UoKSkpLnN0YXJ0c1dpdGgobykmJmEubGVuZ3RoPm8ubGVuZ3RoP2Muc2hvd1dpZGdldD10OmMuc2hvd1dpZGdldD0hdCk6bmV3IFJlZ0V4cCgiXiIuY29uY2F0KFBlKGkucmVwbGFjZSgvXCovZywiLioiKSksIiQiKSwiaSIpLnRlc3QoUGUod2luZG93LmxvY2F0aW9uLmhyZWYpKSYmKGMuc2hvd1dpZGdldD10KSl9biYmIWMuc2hvd1dpZGdldCYmKGMuc2hvd1dpZGdldD0hMSl9ZnVuY3Rpb24gX2UoZSl7Zm9yKHZhciB0PTAsbj1PYmplY3Qua2V5cyhlKTt0PG4ubGVuZ3RoO3QrKyl7dmFyIHI9blt0XTtjW2ZlKHIpXT1lW3JdfX1mdW5jdGlvbiB6ZShlLHQpe2Zvcih2YXIgbj0yPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06bnVsbCxyPTAsbz1PYmplY3Qua2V5cyhsKTtyPG8ubGVuZ3RoO3IrKyl7dmFyIGE9b1tyXTtjW2FdPWxbYV19biYmX2UobiksamUoIiIuY29uY2F0KHQsIi8vIikuY29uY2F0KGUsIi8iKSkudGhlbihmdW5jdGlvbigpe3ZhciBlLHQsbjtpZihPZSYmX2UoT2UpLGMuaXNQcm8/Yy5hY3RpdmF0b3JTaXplPWMuYWN0aXZhdG9yU2l6ZXx8NTA6Yy5hY3RpdmF0b3JTaXplPTUwLGMuaGFzT3duUHJvcGVydHkoInNoaWZ0SG9yaXpvbnRhbCIpJiYhKGMuc2hpZnRIb3Jpem9udGFsPFNlKSYmYy5pc1Byb3x8KGMuc2hpZnRIb3Jpem9udGFsPVNlKSxjLmhhc093blByb3BlcnR5KCJzaGlmdFZlcnRpY2FsIikmJiEoYy5zaGlmdFZlcnRpY2FsPENlKSYmYy5pc1Byb3x8KGMuc2hpZnRWZXJ0aWNhbD1DZSksInN0cmluZyI9PXR5cGVvZiBjLm9yZGVyfHxjLm9yZGVyIGluc3RhbmNlb2YgU3RyaW5nP2Mub3JkZXI9Yy5vcmRlci5zcGxpdCgiLCIpLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gZS50cmltKCl9KTpBcnJheS5pc0FycmF5KGMub3JkZXIpJiYoYy5vcmRlcj1bXSksYy5vcmRlcj1jLm9yZGVyLmNvbmNhdChPYmplY3Qua2V5cyh4KCkoYyxKKSkpLDA9PT1jLm9yZGVyLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIkJ1dHRvbiBpcyBlbXB0eSIpO2Mub3JkZXI9Yy5vcmRlci5maWx0ZXIoZnVuY3Rpb24oZSx0LG4pe3JldHVybiJzdHJpbmciPT10eXBlb2YgZSYmbi5pbmRleE9mKGUpPT09dH0pLGMub3JkZXI9Yy5vcmRlci5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuISFlJiZjLmhhc093blByb3BlcnR5KGUpJiYhIWNbZV19KSxjLmlzUHJvfHwoYy5vcmRlcj1jLm9yZGVyLnNsaWNlKDAsMikpLGMuYnV0dG9uQ29sb3I9bnVsbCE9KGU9Yy5idXR0b25Db2xvcik/ZToiI2ZmNjU1MCIsYy5pc1NpbmdsZT0xPT09Yy5vcmRlci5sZW5ndGgsYy5pc1Byb3x8KGMuYnV0dG9uSW1hZ2VVcmw9bnVsbCxjLmFwcGxlSWNvbj1udWxsLGMuY2FsbEljb249bnVsbCxjLmNvbnRhY3Rmb3JtSWNvbj1udWxsLGMuZGlzY29yZEljb249bnVsbCxjLmVtYWlsSWNvbj1udWxsLGMuZmFjZWJvb2tJY29uPW51bGwsYy5nb29nbGVtYXBJY29uPW51bGwsYy5pbnN0YWdyYW1JY29uPW51bGwsYy5saW5lSWNvbj1udWxsLGMubGlua0ljb249bnVsbCxjLmxpbmtlZGluSWNvbj1udWxsLGMuc2t5cGVJY29uPW51bGwsYy5zbGFja0ljb249bnVsbCxjLnNtc0ljb249bnVsbCxjLnNuYXBjaGF0SWNvbj1udWxsLGMudGVsZWdyYW1JY29uPW51bGwsYy50d2l0dGVySWNvbj1udWxsLGMudGlrdG9rSWNvbj1udWxsLGMudmliZXJJY29uPW51bGwsYy52a29udGFrdGVJY29uPW51bGwsYy53YXplSWNvbj1udWxsLGMud2VjaGF0SWNvbj1udWxsLGMud2hhdHNhcHBJY29uPW51bGwpLGMuaXNQcm98fChjLmFwcGxlTGFiZWw9Qi5hcHBsZS50aXRsZSxjLmNhbGxMYWJlbD1CLmNhbGwudGl0bGUsYy5jb250YWN0Zm9ybUxhYmVsPUIuY29udGFjdGZvcm0udGl0bGUsYy5kaXNjb3JkTGFiZWw9Qi5kaXNjb3JkLnRpdGxlLGMuZW1haWxMYWJlbD1CLmVtYWlsLnRpdGxlLGMuZmFjZWJvb2tMYWJlbD1CLmZhY2Vib29rLnRpdGxlLGMuZ29vZ2xlbWFwTGFiZWw9Qi5nb29nbGVtYXAudGl0bGUsYy5pbnN0YWdyYW1MYWJlbD1CLmluc3RhZ3JhbS50aXRsZSxjLmxpbmVMYWJlbD1CLmxpbmUudGl0bGUsYy5saW5rTGFiZWw9Qi5saW5rLnRpdGxlLGMubGlua2VkaW5MYWJlbD1CLmxpbmtlZGluLnRpdGxlLGMuc2t5cGVMYWJlbD1CLnNreXBlLnRpdGxlLGMuc2xhY2tMYWJlbD1CLnNsYWNrLnRpdGxlLGMuc21zTGFiZWw9Qi5zbXMudGl0bGUsYy5zbmFwY2hhdExhYmVsPUIuc25hcGNoYXQudGl0bGUsYy50ZWxlZ3JhbUxhYmVsPUIudGVsZWdyYW0udGl0bGUsYy50aWt0b2tMYWJlbD1CLnRpa3Rvay50aXRsZSxjLnR3aXR0ZXJMYWJlbD1CLnR3aXR0ZXIudGl0bGUsYy52aWJlckxhYmVsPUIudmliZXIudGl0bGUsYy52a29udGFrdGVMYWJlbD1CLnZrb250YWt0ZS50aXRsZSxjLndhemVMYWJlbD1CLndhemUudGl0bGUsYy53ZWNoYXRMYWJlbD1CLndlY2hhdC50aXRsZSxjLndoYXRzYXBwTGFiZWw9Qi53aGF0c2FwcC50aXRsZSksYy5ncmVldGluZz1jLmdyZWV0aW5nJiZjLmlzUHJvLGMuZ3JlZXRpbmcmJjAhPT1jLmdyZWV0aW5nQ29va2llJiYoZT1EYXRlLm5vdygpLG49RWUrKGd8fCIiKSwhKHQ9a2UuZ2V0KG4pKXx8KGUtKHQ9cGFyc2VJbnQodCwxMCkpKS8xZTM+PWMuZ3JlZXRpbmdDb29raWU/a2Uuc2V0KG4sZSxudWxsKTpjLmdyZWV0aW5nPSExKSxjLnBvc2l0aW9uPSJsZWZ0Ij09PWMucG9zaXRpb24/ImxlZnQiOiJyaWdodCIsIWMuaXNQcm8mJihjLmJyYW5kaW5nPSEwLGMuYW5pbWF0aW9uPSExLGMuZGlyZWN0aW9uPSJjb2x1bW4iLGMuYm9yZGVyPSExLGMubm90aWZpY2F0aW9uSW5kaWNhdG9yPSExLGMuYnV0dG9uQm9yZGVyUmFkaXVzPTUwLGMuYnV0dG9uU2hhZG93PTQwLGMuYnV0dG9uT3BhY2l0eT1sLmJ1dHRvbk9wYWNpdHksYy5iZ1N0eWxlPSJjb2xvciIsYy5hY3RpdmF0b3JJY29uPSJjbGFzc2ljIixjLmJ1dHRvblN0eWxlPSJjbGFzc2ljIixnfHxjLmhhc2hJZCkmJihjLmNhbGxUb0FjdGlvbj0hMSxjLmFjdGl2YXRvclNpemU9bC5hY3RpdmF0b3JTaXplLGMuYnV0dG9uQ29sb3I9bC5idXR0b25Db2xvcixjLmJ1dHRvblNoYWRvdz0wLGMuZ3JlZXRpbmc9ITEsYy5wb3NpdGlvbj1sLnBvc2l0aW9uLGMuc2hpZnRIb3Jpem9udGFsPTE2LGMuc2hpZnRWZXJ0aWNhbD0xNCksYy5nYT1jLmlzUHJvJiZjLmdhLHQ9QWUoYy5wYWdlTGlzdFRvU2hvdyksbj1BZShjLnBhZ2VMaXN0VG9IaWRlKSxjLmRpc3BsYXlPbkFsbFBhZ2VzP2Muc2hvd1dpZGdldD0hMDp0Lmxlbmd0aHx8bi5sZW5ndGg/dC5sZW5ndGg/bi5sZW5ndGg/KEllKHQsIShjLnNob3dXaWRnZXQ9ITEpLCExKSxJZShuLCExLCEwKSk6SWUodCwhKGMuc2hvd1dpZGdldD0hMSksITEpOkllKG4sIShjLnNob3dXaWRnZXQ9ITApLCEwKTpjLnNob3dXaWRnZXQ9ITEsYy5zaG93V2lkZ2V0JiYoYy5zaG93V2lkZ2V0PUQoKT9jLm1vYmlsZTpjLmRlc2t0b3ApLGMuY29uZmlnTG9hZGVkPSEwfSksc2V0VGltZW91dChmdW5jdGlvbigpe1coImNsYXNzaWMiPT09Yy5idXR0b25TdHlsZT9jLmFjdGl2YXRvclNpemU6MypjLmFjdGl2YXRvclNpemUpfSw1MDApfWZ1bmN0aW9uIFRlKCl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUsdCl7Yy5jb25maWdMb2FkZWQ/ZSghMCk6dCghMSl9KX1mdW5jdGlvbiBMZShyLGUsdCl7dmFyIG89MTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1lP2U6MTAsYT0yPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PXQ/dDo1MDA7cmV0dXJuIGNvbnNvbGUubG9nKCJjb25maWcgbG9hZGluZy4uIixvKSxuZXcgUHJvbWlzZShmdW5jdGlvbih0LG4pe3IoKS50aGVuKHQpLmNhdGNoKGZ1bmN0aW9uKGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXsxPT09bz8obihlKSxjb25zb2xlLmVycm9yKCJzdG9wIGNvbmZpZyBsb2FkcyIpKTpMZShyLGEsby0xKS50aGVuKHQsbil9LGEpfSl9KX1mdW5jdGlvbiBNZShlKXt3aW5kb3cuaGFzT3duUHJvcGVydHkoImRhdGFMYXllciIpJiYodD1lLHdpbmRvdy5kYXRhTGF5ZXIucHVzaCh7ZXZlbnQ6ImdldGJ1dHRvbl9jbGljayIsZXZlbnRfY2F0ZWdvcnk6IkdldEJ1dHRvbiBXaWRnZXQiLGV2ZW50X2xhYmVsOiJjbGlja18iLmNvbmNhdCh0KSxldmVudENhdGVnb3J5OiJHZXRCdXR0b24gV2lkZ2V0IixldmVudEFjdGlvbjoiY2xpY2tfIi5jb25jYXQodCl9KSksd2luZG93Lmhhc093blByb3BlcnR5KCJndGFnIikmJih0PXtldmVudF9jYXRlZ29yeToiR2V0QnV0dG9uIFdpZGdldCIsZXZlbnRfbGFiZWw6ImNsaWNrXyIuY29uY2F0KHQ9ZSl9LHdpbmRvdy5ndGFnKCJldmVudCIsImNsaWNrIix0KSksd2luZG93Lmhhc093blByb3BlcnR5KCJnYSIpJiYobj17ZXZlbnRDYXRlZ29yeToiR2V0QnV0dG9uIFdpZGdldCIsZXZlbnRBY3Rpb246ImNsaWNrXyIuY29uY2F0KG49ZSl9LHI9d2luZG93LmdhLmdldEFsbD93aW5kb3cuZ2EuZ2V0QWxsKClbMF06dm9pZCAwKSYmci5zZW5kKCJldmVudCIsImNsaWNrIixuKTt2YXIgdCxuLHI9ZTtyPXtjb250ZW50X2NhdGVnb3J5OiJHZXRCdXR0b24gV2lkZ2V0Iixjb250ZW50X25hbWU6ImNsaWNrXyIuY29uY2F0KHIpfSwiZnVuY3Rpb24iPT10eXBlb2YgZmJxJiZmYnEoInRyYWNrIiwiY2xpY2siLHIpfXZhciBSZT1PYmplY3QoQy5lKShbIjAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg0NXB4KTt9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApO30iXSksTmU9T2JqZWN0KEMuZSkoWyIwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9dG97b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDQ1cHgpO30iXSksRGU9T2JqZWN0KEMuZSkoWyIwJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoNDVweCk7fXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt9Il0pLFVlPU9iamVjdChDLmUpKFsiMCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC00NXB4KTt9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApO30iXSksQmU9T2JqZWN0KEMuZSkoWyIwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7fXRve29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCg0NXB4KTt9Il0pLEZlPU9iamVjdChDLmUpKFsiMCV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApO310b3tvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTQ1cHgpO30iXSksSGU9T2JqZWN0KEMuZSkoWyIwJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnJvdGF0ZSgtNjBkZWcpO310b3tvcGFjaXR5OjE7fSJdKSxWZT1PYmplY3QoQy5lKShbIjAle29wYWNpdHk6MTt9dG97b3BhY2l0eTowO3RyYW5zZm9ybTpyb3RhdGUoLTYwZGVnKTt9Il0pLGU9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMXMxOHEzZC0wIn0pKFsiYW5pbWF0aW9uLWR1cmF0aW9uOi4yczthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2U7YW5pbWF0aW9uLWRlbGF5Oi4wNXM7IiwiICIsIiAiLCIiXSxmdW5jdGlvbihlKXtyZXR1cm4icm93Ij09PWUuZGlyZWN0aW9uJiZPYmplY3QoQy5jKShbInRyYW5zZm9ybTp0cmFuc2xhdGVYKDApOyIsIjsiLCI7Il0sZS5pc1Nob3cmJk9iamVjdChDLmMpKFsiYW5pbWF0aW9uLWZpbGwtbW9kZTpiYWNrd2FyZHM7YW5pbWF0aW9uLW5hbWU6IiwiOyJdLCJyaWdodCI9PT1lLnRoZW1lLnBvc2l0aW9uP0RlOlVlKSwhZS5pc1Nob3cmJk9iamVjdChDLmMpKFsiYW5pbWF0aW9uLWZpbGwtbW9kZTpmb3J3YXJkczthbmltYXRpb24tbmFtZToiLCI7Il0sInJpZ2h0Ij09PWUudGhlbWUucG9zaXRpb24/QmU6RmUpKX0sZnVuY3Rpb24oZSl7cmV0dXJuImNvbHVtbiI9PT1lLmRpcmVjdGlvbiYmT2JqZWN0KEMuYykoWyJ0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTsiLCI7IiwiOyJdLGUuaXNTaG93JiZPYmplY3QoQy5jKShbImFuaW1hdGlvbi1maWxsLW1vZGU6YmFja3dhcmRzO2FuaW1hdGlvbi1uYW1lOiIsIjsiXSxSZSksIWUuaXNTaG93JiZPYmplY3QoQy5jKShbImFuaW1hdGlvbi1maWxsLW1vZGU6Zm9yd2FyZHM7YW5pbWF0aW9uLW5hbWU6IiwiOyJdLE5lKSl9LGZ1bmN0aW9uKGUpe3JldHVybiJhcm91bmQiPT09ZS5kaXJlY3Rpb24mJk9iamVjdChDLmMpKFsiYW5pbWF0aW9uLWR1cmF0aW9uOi40czthbmltYXRpb24tZmlsbC1tb2RlOmJvdGg7IiwiOyIsIjsiXSxlLmlzU2hvdyYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tbmFtZToiLCI7Il0sSGUpLCFlLmlzU2hvdyYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tbmFtZToiLCI7Il0sVmUpKX0pLHQ9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMXMxOHEzZC0xIn0pKFsiYW5pbWF0aW9uLWR1cmF0aW9uOi4yczthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2U7YW5pbWF0aW9uLWRlbGF5Oi4wNXM7IiwiICIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiJyb3ciPT09ZS5kaXJlY3Rpb24mJk9iamVjdChDLmMpKFsidHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7IiwiOyIsIjsiXSxlLmlzU2hvdyYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tZmlsbC1tb2RlOmJhY2t3YXJkczthbmltYXRpb24tbmFtZToiLCI7Il0sInJpZ2h0Ij09PWUudGhlbWUucG9zaXRpb24/RGU6VWUpLCFlLmlzU2hvdyYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tZmlsbC1tb2RlOmZvcndhcmRzO2FuaW1hdGlvbi1uYW1lOiIsIjsiXSwicmlnaHQiPT09ZS50aGVtZS5wb3NpdGlvbj9CZTpGZSkpfSxmdW5jdGlvbihlKXtyZXR1cm4icm93IiE9PWUuZGlyZWN0aW9uJiZPYmplY3QoQy5jKShbInRyYW5zZm9ybTp0cmFuc2xhdGVZKDApOyIsIjsiLCI7Il0sZS5pc1Nob3cmJk9iamVjdChDLmMpKFsiYW5pbWF0aW9uLWZpbGwtbW9kZTpiYWNrd2FyZHM7YW5pbWF0aW9uLW5hbWU6IiwiOyJdLFJlKSwhZS5pc1Nob3cmJk9iamVjdChDLmMpKFsiYW5pbWF0aW9uLWZpbGwtbW9kZTpmb3J3YXJkczthbmltYXRpb24tbmFtZToiLCI7Il0sTmUpKX0pLCRlPU9iamVjdChDLmUpKFsiMCV7b3BhY2l0eTowO2xlZnQ6LTIwcHg7fXRve29wYWNpdHk6MTtsZWZ0OjA7fSJdKSxXZT1PYmplY3QoQy5lKShbIjAle29wYWNpdHk6MTsiLCI6MDt9dG97b3BhY2l0eTowOyIsIjotMjBweDt9Il0sZnVuY3Rpb24oZSl7cmV0dXJuIGUudGhlbWUucG9zaXRpb259LGZ1bmN0aW9uKGUpe3JldHVybiBlLnRoZW1lLnBvc2l0aW9ufSksR2U9T2JqZWN0KEMuZSkoWyIwJXtvcGFjaXR5OjA7cmlnaHQ6LTIwcHg7fXRve29wYWNpdHk6MTtyaWdodDowO30iXSkscWU9T2JqZWN0KEMuZSkoWyIwJXtvcGFjaXR5OjE7IiwiOjA7fXRve29wYWNpdHk6MDsiLCI6LTIwcHg7fSJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLnRoZW1lLnBvc2l0aW9ufSxmdW5jdGlvbihlKXtyZXR1cm4gZS50aGVtZS5wb3NpdGlvbn0pLFplPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLTFzMThxM2QtMiJ9KShbInRyYW5zZm9ybTp0cmFuc2xhdGVYKDApO3Bvc2l0aW9uOnJlbGF0aXZlO2FuaW1hdGlvbi1kdXJhdGlvbjowLjY0czthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjMsMSwuMzIsMSk7YW5pbWF0aW9uLWRlbGF5OjAuMTZzOyIsIjsiLCI7Il0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuaXNTaG93JiZPYmplY3QoQy5jKShbImFuaW1hdGlvbi1maWxsLW1vZGU6YmFja3dhcmRzO2FuaW1hdGlvbi1uYW1lOiIsIjsiXSxmdW5jdGlvbihlKXtyZXR1cm4ibGVmdCI9PT1lLnRoZW1lLnBvc2l0aW9uPyRlOkdlfSl9LGZ1bmN0aW9uKGUpe3JldHVybiFlLmlzU2hvdyYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tZmlsbC1tb2RlOmZvcndhcmRzO2FuaW1hdGlvbi1uYW1lOiIsIjsiXSxmdW5jdGlvbihlKXtyZXR1cm4ibGVmdCI9PT1lLnRoZW1lLnBvc2l0aW9uP1dlOnFlfSl9KSxYZT1PYmplY3QoQy5lKShbImZyb217b3BhY2l0eTowO21hcmdpbi1sZWZ0Oi0yMHB4O310b3tvcGFjaXR5OjE7fSJdKSxZZT1PYmplY3QoQy5lKShbImZyb217b3BhY2l0eTowO21hcmdpbi1yaWdodDotMjBweDt9dG97b3BhY2l0eToxO30iXSksUWU9T2JqZWN0KEMuZSkoWyIwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7fTE0JXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLjMpO3RyYW5zZm9ybTpzY2FsZSgxLjMpO30yOCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpO300MiV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS4zKTt0cmFuc2Zvcm06c2NhbGUoMS4zKTt9NzAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKTt9Il0pLEtlPU9iamVjdChDLmUpKFsiZnJvbXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTt9MTUley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yNSUsMCwwKSByb3RhdGUzZCgwLDAsMSwtNWRlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yNSUsMCwwKSByb3RhdGUzZCgwLDAsMSwtNWRlZyk7fTMwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMCUsMCwwKSByb3RhdGUzZCgwLDAsMSwzZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjAlLDAsMCkgcm90YXRlM2QoMCwwLDEsM2RlZyk7fTQ1JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTUlLDAsMCkgcm90YXRlM2QoMCwwLDEsLTNkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTUlLDAsMCkgcm90YXRlM2QoMCwwLDEsLTNkZWcpO302MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAlLDAsMCkgcm90YXRlM2QoMCwwLDEsMmRlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwJSwwLDApIHJvdGF0ZTNkKDAsMCwxLDJkZWcpO303NSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTUlLDAsMCkgcm90YXRlM2QoMCwwLDEsLTFkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNSUsMCwwKSByb3RhdGUzZCgwLDAsMSwtMWRlZyk7fXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO30iXSksSmU9T2JqZWN0KEMuZSkoWyJmcm9tey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMSwxLDEpO3RyYW5zZm9ybTpzY2FsZTNkKDEsMSwxKTt9MzAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4yNSwwLjc1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKDEuMjUsMC43NSwxKTt9NDAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMC43NSwxLjI1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKDAuNzUsMS4yNSwxKTt9NTAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4xNSwwLjg1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKDEuMTUsMC44NSwxKTt9NjUley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMC45NSwxLjA1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKDAuOTUsMS4wNSwxKTt9NzUley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4wNSwwLjk1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKDEuMDUsMC45NSwxKTt9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgxLDEsMSk7dHJhbnNmb3JtOnNjYWxlM2QoMSwxLDEpO30iXSksZXQ9T2JqZWN0KEMuZSkoWyJmcm9tLDIwJSw1MyUsdG97LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllcigwLjIxNSwwLjYxLDAuMzU1LDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMjE1LDAuNjEsMC4zNTUsMSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7fTQwJSw0MyV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllcigwLjc1NSwwLjA1LDAuODU1LDAuMDYpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuNzU1LDAuMDUsMC44NTUsMC4wNik7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMzBweCwwKSBzY2FsZVkoMS4xKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMzBweCwwKSBzY2FsZVkoMS4xKTt9NzAley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMC43NTUsMC4wNSwwLjg1NSwwLjA2KTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllcigwLjc1NSwwLjA1LDAuODU1LDAuMDYpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTE1cHgsMCkgc2NhbGVZKDEuMDUpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xNXB4LDApIHNjYWxlWSgxLjA1KTt9ODAley13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMjE1LDAuNjEsMC4zNTUsMSk7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMjE1LDAuNjEsMC4zNTUsMSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApIHNjYWxlWSgwLjk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApIHNjYWxlWSgwLjk1KTt9OTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTRweCwwKSBzY2FsZVkoMS4wMik7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTRweCwwKSBzY2FsZVkoMS4wMik7fSJdKSx0dD1PYmplY3QoQy5lKShbImZyb217LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgxLDEsMSk7dHJhbnNmb3JtOnNjYWxlM2QoMSwxLDEpO301MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgxLjEsMS4xLDEuMSk7dHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpO310b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEsMSwxKTt0cmFuc2Zvcm06c2NhbGUzZCgxLDEsMSk7fSJdKSxudD1PYmplY3QoQy5lKShbIjAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7fTYuNSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNnB4KSByb3RhdGVZKC05ZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNnB4KSByb3RhdGVZKC05ZGVnKTt9MTguNSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCg1cHgpIHJvdGF0ZVkoN2RlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO30zMS41JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO300My41JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7fTUwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApO30iXSkscnQ9T2JqZWN0KEMuZSkoWyIyMCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlM2QoMCwwLDEsMTVkZWcpO3RyYW5zZm9ybTpyb3RhdGUzZCgwLDAsMSwxNWRlZyk7fTQwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUzZCgwLDAsMSwtMTBkZWcpO3RyYW5zZm9ybTpyb3RhdGUzZCgwLDAsMSwtMTBkZWcpO302MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlM2QoMCwwLDEsNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZTNkKDAsMCwxLDVkZWcpO304MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlM2QoMCwwLDEsLTVkZWcpO3RyYW5zZm9ybTpyb3RhdGUzZCgwLDAsMSwtNWRlZyk7fXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZTNkKDAsMCwxLDBkZWcpO3RyYW5zZm9ybTpyb3RhdGUzZCgwLDAsMSwwZGVnKTt9Il0pLG90PU9iamVjdChDLmUpKFsiZnJvbXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEsMSwxKTt0cmFuc2Zvcm06c2NhbGUzZCgxLDEsMSk7fTEwJSwyMCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgwLjksMC45LDAuOSkgcm90YXRlM2QoMCwwLDEsLTNkZWcpO3RyYW5zZm9ybTpzY2FsZTNkKDAuOSwwLjksMC45KSByb3RhdGUzZCgwLDAsMSwtM2RlZyk7fTMwJSw1MCUsNzAlLDkwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEuMSwxLjEsMS4xKSByb3RhdGUzZCgwLDAsMSwzZGVnKTt0cmFuc2Zvcm06c2NhbGUzZCgxLjEsMS4xLDEuMSkgcm90YXRlM2QoMCwwLDEsM2RlZyk7fTQwJSw2MCUsODAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpIHJvdGF0ZTNkKDAsMCwxLC0zZGVnKTt0cmFuc2Zvcm06c2NhbGUzZCgxLjEsMS4xLDEuMSkgcm90YXRlM2QoMCwwLDEsLTNkZWcpO310b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEsMSwxKTt0cmFuc2Zvcm06c2NhbGUzZCgxLDEsMSk7fSJdKSxhdD1PYmplY3QoQy5lKShbImZyb20sMTEuMSUsdG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7fTIyLjIley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7dHJhbnNmb3JtOnNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7fTMzLjMley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpO3RyYW5zZm9ybTpza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTt9NDQuNCV7LXdlYmtpdC10cmFuc2Zvcm06c2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO3RyYW5zZm9ybTpza2V3WCgtMy4xMjVkZWcpIHNrZXdZKC0zLjEyNWRlZyk7fTU1LjUley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTt0cmFuc2Zvcm06c2tld1goMS41NjI1ZGVnKSBza2V3WSgxLjU2MjVkZWcpO302Ni42JXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO3RyYW5zZm9ybTpza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO303Ny43JXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpO3RyYW5zZm9ybTpza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpO304OC44JXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTt0cmFuc2Zvcm06c2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7fSJdKSxpdD1PYmplY3QoQy5lKShbIjAle3dpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7b3BhY2l0eToxO30xMDAle3dpZHRoOiIsInB4O2hlaWdodDoiLCJweDtvcGFjaXR5OjA7fSJdLDMqYy5hY3RpdmF0b3JTaXplKzIwLGMuYWN0aXZhdG9yU2l6ZSs1MCksbHQ9T2JqZWN0KEMuZSkoWyIwJXt3aWR0aDozMHB4O2hlaWdodDozMHB4O29wYWNpdHk6MTt9MTAwJXt3aWR0aDoiLCJweDtoZWlnaHQ6IiwicHg7b3BhY2l0eTowO30iXSwzKmMuYWN0aXZhdG9yU2l6ZSsyMCxjLmFjdGl2YXRvclNpemUrNTApLGN0PU9iamVjdChDLmUpKFsiMCV7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZVgoMSkgc2NhbGVZKDEpO301MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZVgoMS40KSBzY2FsZVkoMS40KTt9MTAwJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlWCgxKSBzY2FsZVkoMSk7fSJdKTtmdW5jdGlvbiB1dChlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP3N0KGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP3N0KGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gc3QoZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn12YXIgZnQ9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtOGVxYzN5LTAifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLm1pcnJvcixlPWUuYWN0aXZhdG9yU2l6ZTtyZXR1cm4gT2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nOjdweCAxMHB4O2xpbmUtaGVpZ2h0OjE2cHg7Zm9udC1mYW1pbHk6QXJpYWwsSGVsdmV0aWNhIE5ldWUsSGVsdmV0aWNhLHNhbnMtc2VyaWY7Zm9udC1zaXplOiIsInB4O21hcmdpbjphdXRvOyIsIiJdLE1hdGgubWluKC4yOCplLDE3LjUpLHQmJk9iamVjdChDLmMpKFsiZGlyZWN0aW9uOnJ0bDt1bmljb2RlLWJpZGk6cGxhaW50ZXh0OyJdKSl9KSxkdD1PYmplY3QoQy5kKShaZSkud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLThlcWMzeS0xIn0pKFsiIiwiIl0sZnVuY3Rpb24oZSl7dmFyIHQ9ZS5idXR0b25TaGFkb3csZT1lLnRoZW1lO3JldHVybiBPYmplY3QoQy5jKShbImJveC1zaGFkb3c6MHB4IDFweCA3cHggcmdiYSgxMzYsMTM2LDEzNiwiLCIlKTtmbGV4LXNocmluazowO2JvcmRlcjoxcHggc29saWQgI2UyZTJlMjtib3JkZXItcmFkaXVzOjVweDtiYWNrZ3JvdW5kOndoaXRlO3RleHQtZGVjb3JhdGlvbjpub25lICFpbXBvcnRhbnQ7Y29sb3I6IzAwMDAwMCAhaW1wb3J0YW50O2N1cnNvcjpwb2ludGVyO21hcmdpbjoiLCI7bWF4LXdpZHRoOjE3MnB4O21heC1oZWlnaHQ6NjVweDtkaXNwbGF5OmZsZXg7b3JkZXI6IiwiOyY6OmJlZm9yZXtjb250ZW50OicnO3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQ6d2hpdGU7Ym9yZGVyLSIsIjoxcHggc29saWQgI2UyZTJlMjtib3JkZXItIiwiOjFweCBzb2xpZCAjZTJlMmUyOyIsIjotNXB4O3RvcDo1MCU7bWFyZ2luLXRvcDotNHB4O3dpZHRoOjhweDtoZWlnaHQ6OHB4O3otaW5kZXg6MTt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7fSY6OmFmdGVye2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZDp3aGl0ZTtib3JkZXItIiwiOjFweCBzb2xpZCAjZTJlMmUyO2JvcmRlci0iLCI6MXB4IHNvbGlkICNlMmUyZTI7IiwiOi01cHg7dG9wOjUwJTttYXJnaW4tdG9wOi00cHg7d2lkdGg6OHB4O2hlaWdodDo4cHg7ei1pbmRleDoxO3RyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTt9Il0sMjA8dD90OjIwLGUuY2FsbFRvQWN0aW9uTWFyZ2luLGUucG9wdXBzT3JkZXIsImxlZnQiPT09ZS5wb3NpdGlvbj8idG9wIjoiYm90dG9tIixlLnBvc2l0aW9uLGUucG9zaXRpb24sImxlZnQiPT09ZS5wb3NpdGlvbj8idG9wIjoiYm90dG9tIixlLnBvc2l0aW9uLGUucG9zaXRpb24pfSkscHQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5ocmVmLHQ9dm9pZCAwPT09dD9udWxsOnQsZT1lLnRhcmdldCxlPXZvaWQgMD09PWU/bnVsbDplLG49T2JqZWN0KEYudXNlQ29udGV4dCkoVikscj1uLnN0YXRlLG89bi5hY3Rpb25zLnNob3dCdXR0b25zLG49bi5zZXR0aW5ncyxhPW4uY2FsbFRvQWN0aW9uLGk9bi5jYWxsVG9BY3Rpb25EZWxheSxsPW4uZGlyZWN0aW9uLGM9bi5idXR0b25TdHlsZSx1PW4uYWN0aXZhdG9yU2l6ZSxzPW4ubWlycm9yLG49bi5idXR0b25TaGFkb3csZj11dChPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGQ9ZlswXSxwPWZbMV0sZj11dChPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLG09ZlswXSxoPWZbMV0sZz1PYmplY3QoRi51c2VSZWYpKDApO3JldHVybiBPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7IXIuYnV0dG9ucyYmITAhPT1yLmNhbGxUb0FjdGlvblRpbWVyfHwoY2xlYXJUaW1lb3V0KGcuY3VycmVudCksZy5jdXJyZW50PTApLHIuY2FsbFRvQWN0aW9uJiYwPGEubGVuZ3RoPzA9PT1nLmN1cnJlbnQmJihnLmN1cnJlbnQ9c2V0VGltZW91dChmdW5jdGlvbigpe3Aoci5jYWxsVG9BY3Rpb24pLGgoci5jYWxsVG9BY3Rpb24pLFcoImFyb3VuZCIhPT1sPyJjbGFzc2ljIj09PWM/MjgwOjMqdSsyMDA6OTk5OTk5OTk5KX0saSkpOnAoITEpfSksT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe3IuY2FsbFRvQWN0aW9uJiYwPGEubGVuZ3RoJiZXKCJhcm91bmQiIT09bD8iY2xhc3NpYyI9PT1jPzI4MDozKnUrMjAwOjk5OTk5OTk5OSl9LFtyLmNhbGxUb0FjdGlvbixhLGMsbCx1XSksbSYmSC5hLmNyZWF0ZUVsZW1lbnQoZHQse2FzOm51bGw9PT10PyJkaXYiOiJhIixocmVmOnQsdGFyZ2V0OmUsb25Nb3VzZVVwOmZ1bmN0aW9uKCl7bygpfSxpc1Nob3c6ZCxvbkFuaW1hdGlvbkVuZDpmdW5jdGlvbigpe2goZCl9LGJ1dHRvblNoYWRvdzpufSxILmEuY3JlYXRlRWxlbWVudChmdCx7bWlycm9yOnMsYWN0aXZhdG9yU2l6ZTp1fSxhKSl9O2Z1bmN0aW9uIG10KGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/aHQoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/aHQoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBodChlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIGd0KGUpe3N3aXRjaCghMCl7Y2FzZSJudW1iZXIiPT10eXBlb2YgZTpyZXR1cm4gZSsicHgiO2Nhc2Uic21hbGwiPT09ZTpyZXR1cm4iMzRweCI7Y2FzZSJtZWRpdW0iPT09ZTpyZXR1cm4iNDVweCI7ZGVmYXVsdDpyZXR1cm4iNTBweCJ9fWZ1bmN0aW9uIEUoZSl7c3dpdGNoKGUpe2Nhc2UiaGVhcnRCZWF0IjpyZXR1cm4gUWU7Y2FzZSJ3b2JibGUiOnJldHVybiBLZTtjYXNlInJ1YmJlckJhbmQiOnJldHVybiBKZTtjYXNlImJvdW5jZSI6cmV0dXJuIGV0O2Nhc2UicHVsc2UiOnJldHVybiB0dDtjYXNlImhlYWRTaGFrZSI6cmV0dXJuIG50O2Nhc2Uic3dpbmciOnJldHVybiBydDtjYXNlInRhZGEiOnJldHVybiBvdDtjYXNlImplbGxvIjpyZXR1cm4gYXQ7Y2FzZSJyaW5nIjpyZXR1cm4gaXQ7Y2FzZSJkb3VibGVSaW5nIjpyZXR1cm4gbHQ7Y2FzZSJtb3ZlSW4iOnJldHVybiBjdDtkZWZhdWx0OnJldHVybiJzdGFuZGFyZCJ9fWZ1bmN0aW9uIE8oZSl7c3dpdGNoKGUubGVuZ3RoKXtjYXNlIDI6cmV0dXJuIDUuMTtjYXNlIDM6cmV0dXJuIDg7ZGVmYXVsdDpyZXR1cm4gMTJ9fWZ1bmN0aW9uIHAoZSl7ZnVuY3Rpb24gdCgpe058fChkP2goKTooUyYmTWUoYSkscCgpLG0oYSksITE9PT1CW2FdLnNob3dQb3B1cCYmZygpKSl9ZnVuY3Rpb24gbigpe0QoKXx8InNtYWxsIj09PXJ8fCJtZWRpdW0iPT09cnx8ImZhY2Vib29rIj09PWF8fGR8fChNKCEwKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7TSghMSl9LDFlMyksdCgpKX12YXIgcj1lLnNpemUsbz1lLmxpbmssYT1lLm5hbWUsaT1lLmljb24sbD1lLnRhcmdldCxjPWUuY29sb3IsdT1lLmN1c3RvbUljb24sZT1lLmxhYmVsLHM9KGI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikpLnN0YXRlLGY9cy5idXR0b25zLGQ9cy5idXR0b25Qb3B1cDtzLmdyZWV0aW5nTWVzc2FnZTt2YXIgcD0ocz1iLmFjdGlvbnMpLmJ1dHRvbkNsaWNrZWQsbT1zLnNob3dCdXR0b25Qb3B1cCxoPXMuY2xvc2VCdXR0b25Qb3B1cCxnPXMub3BlbkdyZWV0aW5nTWVzc2FnZSxiPShzPWIuc2V0dGluZ3MpLmJ1dHRvbkJvcmRlclJhZGl1cyx5PXMuYWN0aXZhdG9yU2l6ZSx2PXMuaXNQcm8sdz1zLmlzU2luZ2xlLHg9cy5kaXJlY3Rpb24saz1zLmJ1dHRvblN0eWxlLFM9cy5nYSxDPXMuYnV0dG9uQW5pbWF0aW9uLEU9cy5ib3JkZXIsTz1zLmJ1dHRvblNoYWRvdyxqPXMuYnV0dG9uT3BhY2l0eSxBPXMuYmdTdHlsZSxQPXMubm90aWZpY2F0aW9uSW5kaWNhdG9yLEk9cy5taXJyb3IsXz1zLm9yZGVyLHo9cy5wb3NpdGlvbixUPXMuYW5pbWF0aW9uLFI9JChiKSxMPSIiLHI9InNtYWxsIj09PXJ8fCJtZWRpdW0iPT09cj9yOnkseT0odj8oYz1jfHxCW2FdLmNvbG9yLEw9QlthXS5idXR0b25JZCk6Yz1idChjKT9jOkJbYV0uY29sb3IsdyYmKHMuYnV0dG9uQ29sb3I9YykscGUoYyw1KSksTj0odj1tdChPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpKVswXSxNPXZbMV07cmV0dXJuIE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXt2YXIgZTtpZigiY29sdW1uIj09PXgpcmV0dXJuIGU9c2V0VGltZW91dChmdW5jdGlvbigpe1coImNsYXNzaWMiPT09az9yOjMqcil9LDM1MCksZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQoZSl9O1coZj85OTk5OTk5OToiY2xhc3NpYyI9PT1rP3I6MypyKX0sW2sseCxyXSksT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe3ZhciBlPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtXKCJjbGFzc2ljIj09PWs/cjozKnIpfSw1MDApO3JldHVybiBmdW5jdGlvbigpe2NsZWFyVGltZW91dChlKX19LFtrLHJdKSwhMD09PXc/SC5hLmNyZWF0ZUVsZW1lbnQoU3Qse29uTW91c2VVcDp0fSxVKCkmJkguYS5jcmVhdGVFbGVtZW50KHB0LHtocmVmOm8sdGFyZ2V0Omwsc2l6ZTpyfSksSC5hLmNyZWF0ZUVsZW1lbnQoeHQse2J1dHRvbkFuaW1hdGlvbjpDLGNvbG9yOmMsYnV0dG9uQm9yZGVyUmFkaXVzOmIsc2l6ZTpyLGFuaW1hdGlvbjpULGJ1dHRvblN0eWxlOmsscG9wdXBPcGVuZWQ6ZH0sSC5hLmNyZWF0ZUVsZW1lbnQod3Qse29uTW91c2VFbnRlcjpuLHNpemU6cixocmVmOm8sdGFyZ2V0OmwsImFyaWEtbGFiZWwiOiJHbyB0byAiLmNvbmNhdChhKSxjb2xvcjpjLGlkOkwsY3VzdG9tSWNvbjp1LGdyYWRpZW50OnksaW5kaWNhdG9yUG9zaXRpb246Uixib3JkZXI6RSxidXR0b25Cb3JkZXJSYWRpdXM6YixidXR0b25TaGFkb3c6TyxidXR0b25PcGFjaXR5OmosYmdTdHlsZTpBLGJ1dHRvblN0eWxlOmssYnV0dG9uQW5pbWF0aW9uOkMsbm90aWZpY2F0aW9uSW5kaWNhdG9yOlAsbWlycm9yOkksaXNTaW5nbGU6dyxkaXJlY3Rpb246eCxwb3NpdGlvbjp6LG9yZGVyOl8sYW5pbWF0aW9uOlQscG9wdXBPcGVuZWQ6ZH0saSwibWVkaXVtIj09PXImJkguYS5jcmVhdGVFbGVtZW50KEcse2NvbG9yOmMsbWlycm9yOkksc2l6ZTpyfSxlKSwibWVkaXVtIiE9PXImJiJjbGFzc2ljIiE9PWsmJkguYS5jcmVhdGVFbGVtZW50KEcse2NvbG9yOmMsbWlycm9yOkksc2l6ZTpyfSxlKSkpKTpILmEuY3JlYXRlRWxlbWVudChTdCx7b25Nb3VzZVVwOnQsZGF0YUluZGV4Onl0KF8sYSksb3BlbmVkOmYsc2l6ZTpyLGRpcmVjdGlvbjp4LG9yZGVyOl99LEguYS5jcmVhdGVFbGVtZW50KGt0LHtzaXplOnIsbWlycm9yOkksYnV0dG9uU3R5bGU6ayxkaXJlY3Rpb246eCxvcmRlcjpfLGRhdGFJbmRleDp5dChfLGEpLGJ1dHRvblNoYWRvdzpPfSxlKSxILmEuY3JlYXRlRWxlbWVudCh4dCx7c2l6ZTpyfSxILmEuY3JlYXRlRWxlbWVudCh3dCx7c2l6ZTpyLGhyZWY6byx0YXJnZXQ6bCwiYXJpYS1sYWJlbCI6IkdvIHRvICIuY29uY2F0KGEpLGNvbG9yOmMsaWQ6TCxjdXN0b21JY29uOnUsZ3JhZGllbnQ6eSwiZGF0YS1jb21wb25lbnQtbmFtZSI6IkJhc2VCdXR0b24iLGJvcmRlcjpFLGRhdGFJbmRleDp5dChfLGEpLGJ1dHRvbkJvcmRlclJhZGl1czpiLGJ1dHRvblNoYWRvdzpPLGJ1dHRvbk9wYWNpdHk6aixiZ1N0eWxlOkEsYnV0dG9uU3R5bGU6ayxtaXJyb3I6SSxpc1NpbmdsZTp3LGRpcmVjdGlvbjp4LHBvc2l0aW9uOnosb3JkZXI6X30saSwibWVkaXVtIiE9PXImJiJzbWFsbCIhPT1yJiYiY2xhc3NpYyIhPT1rJiZILmEuY3JlYXRlRWxlbWVudChHLHtjb2xvcjpjLG1pcnJvcjpJLHNpemU6cn0sZSkpKSl9dmFyIGJ0PWZ1bmN0aW9uKGUpe3JldHVybiEhWyIjNjY2NjY2IiwiIzY2NiIsIiNFNzQzMzkiLCIjRkY2NTUwIiwiI0E4Q0U1MCIsIiMxMjlCRjQiLCIjOTMyQzhCIiwiI0ZGMzE4RSIsIiMwMDAwMDAiLCIjMDAwIl0uaW5jbHVkZXMoZS50b1VwcGVyQ2FzZSgpKX0seXQ9ZnVuY3Rpb24oZSx0KXtlPWUuaW5kZXhPZih0KTtpZigtMSE9PWUpcmV0dXJuIGUrMX0sdnQ9MTQsd3Q9Qy5kLmEud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXE4YzZ0dC0wIn0pKFsiIiwiICJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUuYnV0dG9uT3BhY2l0eSxuPWUuc2l6ZSxyPWUuYnV0dG9uU3R5bGUsbz1lLmlzU2luZ2xlLGE9ZS5iZ1N0eWxlLGk9ZS5jb2xvcixsPWUuZ3JhZGllbnQsYz1lLmJ1dHRvbkJvcmRlclJhZGl1cyx1PWUuYnV0dG9uSW1hZ2Uscz1lLnRoZW1lLGY9ZS5jdXN0b21JY29uLGQ9ZS5ub3RpZmljYXRpb25JbmRpY2F0b3IscD1lLmJ1dHRvblNoYWRvdyxtPWUuYm9yZGVyLGg9ZS5hbmltYXRpb24sZz1lLmJ1dHRvbkFuaW1hdGlvbixiPWUub3BlbmVkLHk9ZS5pbmRpY2F0b3JQb3NpdGlvbix2PWUubWlycm9yLHc9ZS5kYXRhSW5kZXgseD1lLmRpcmVjdGlvbixrPWUucG9zaXRpb24sUz1lLm9yZGVyLGU9ZS5wb3B1cE9wZW5lZDtyZXR1cm4gT2JqZWN0KEMuYykoWyJkaXNwbGF5OiIsIjtmbGV4LXNocmluazowO29wYWNpdHk6IiwiJTt0ZXh0LWRlY29yYXRpb246bm9uZSAhaW1wb3J0YW50O3dpZHRoOiIsIjtoZWlnaHQ6IiwiO2JvcmRlci1yYWRpdXM6IiwiOyIsIjsiLCIgIiwiIG9yZGVyOiIsIjtwYWRkaW5nOiIsIjtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXI7b3ZlcmZsb3c6IiwiOyIsIjt0cmFuc2l0aW9uOmFsbCAwLjVzO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MjAwO2JvcmRlcjoiLCI7IiwiICIsIiAiLCI7Jjpob3ZlcntjdXJzb3I6cG9pbnRlcjtjb2xvcjojZmZmZmZmICFpbXBvcnRhbnQ7fSIsIjsiLCIgIiwiICIsIiAiLCIgIiwiICIsIiAiLCIgIiwiICIsIiJdLDA9PT1uPyJub25lIjoiYmxvY2siLHQsZ3QoIm1lZGl1bSIhPT1uJiYic21hbGwiIT09biYmImNsYXNzaWMiIT09cj8zKm46biksZ3QobiksIiIuY29uY2F0KGMsIm1lZGl1bSIhPT1uJiYic21hbGwiIT09biYmImNsYXNzaWMiIT09cj8icHgiOiIlIiksbyYmIm1lZGl1bSI9PT1uJiZPYmplY3QoQy5jKShbIndpZHRoOjI5MHB4O2JvcmRlci1yYWRpdXM6MTBweDtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6MTBweDtjb2xvcjojZmZmZmZmO2ZvbnQtd2VpZ2h0OmJvbGQ7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDo1MnB4OyJdKSwiY29sb3IiPT09YT9PYmplY3QoQy5jKShbImJhY2tncm91bmQtY29sb3I6IiwiICFpbXBvcnRhbnQ7Il0saXx8IiM4NDg0ODQiKTpPYmplY3QoQy5jKShbImJhY2tncm91bmQ6IiwiOyJdLCJsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAiLmNvbmNhdChsLCIpIikpLHUmJiJjbGFzc2ljIj09PXImJk9iamVjdChDLmMpKFsiYmFja2dyb3VuZC1pbWFnZTp1cmwoICIsIiApO2JhY2tncm91bmQtc2l6ZTpjb3ZlciAhaW1wb3J0YW50O2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjsiXSx1KSxzLmJ1dHRvbnNPcmRlcixmPyIwIjoiNXB4IiwhZCYmImhpZGRlbiIsIm1lZGl1bSIhPT1uJiYic21hbGwiIT09biYmT2JqZWN0KEMuYykoWyJib3gtc2hhZG93OjBweCAxcHggN3B4IHJnYmEoMTM2LDEzNiwxMzYsIiwiJSk7Il0scCksbSYmIm1lZGl1bSIhPT1uJiYic21hbGwiIT09biYmIiIuY29uY2F0KC4wNDUqbiwicHggc29saWQgI2ZmZmZmZiIpLCJzbWFsbCI9PT1uJiYiI2ZmZmZmZiI9PT1pJiZPYmplY3QoQy5jKShbImJvcmRlcjoxcHggc29saWQgbGlnaHRncmF5O2NvbG9yOmJsYWNrICFpbXBvcnRhbnQ7Jjpob3Zlcntjb2xvcjpibGFjayAhaW1wb3J0YW50O30iXSksIm1lZGl1bSI9PT1uJiYiI2ZmZmZmZiI9PT1pJiZPYmplY3QoQy5jKShbImJvcmRlcjoxcHggc29saWQgbGlnaHRncmF5O2NvbG9yOmJsYWNrICFpbXBvcnRhbnQ7Jjpob3Zlcntjb2xvcjpibGFjayAhaW1wb3J0YW50O30iXSksaCYmT2JqZWN0KEMuYykoWyIiLCIiXSwic3RhbmRhcmQiIT09ZyYmInJpbmciIT09ZyYmImRvdWJsZVJpbmciIT09ZyYmIm1vdmVJbiIhPT1nJiYibWVkaXVtIiE9PW4mJk9iamVjdChDLmMpKFsiYW5pbWF0aW9uOiIsIiAycyBpbmZpbml0ZTthbmltYXRpb24tZGVsYXk6MXM7Jjpob3ZlcnthbmltYXRpb246bm9uZTt9Il0sRShnKSkpLGQmJiJtZWRpdW0iIT09biYmIWImJk9iamVjdChDLmMpKFsiJjpiZWZvcmV7Y29udGVudDonMSc7d2lkdGg6IiwicHg7aGVpZ2h0OiIsInB4O2Rpc3BsYXk6Z3JpZDtwbGFjZS1jb250ZW50OmNlbnRlcjtjb2xvcjojZmZmZmZmO2ZvbnQtc2l6ZToxM3B4O2JhY2tncm91bmQtY29sb3I6cmVkO2JvcmRlci1yYWRpdXM6NTAlO2ZvbnQtZmFtaWx5OnNhbnMtc2VyaWY7cG9zaXRpb246YWJzb2x1dGU7dG9wOiIsInB4OyIsIiBib3gtc2hhZG93OjBweCAxcHggMnB4IHJnYmEoMCwwLDAsNTAlKTt9OyJdLE1hdGgubWluKC4zKm4sMjApLE1hdGgubWluKC4zKm4sMjApLHktNCx2P09iamVjdChDLmMpKFsibGVmdDoiLCJweDsiXSx5LTQpOk9iamVjdChDLmMpKFsicmlnaHQ6IiwicHg7Il0seS00KSksYiYmT2JqZWN0KEMuYykoWyJhbmltYXRpb246bm9uZTsiXSksZSYmT2JqZWN0KEMuYykoWyJhbmltYXRpb246bm9uZTsiXSksIm1lZGl1bSIhPT1uJiYic21hbGwiIT09biYmImNsYXNzaWMiIT09ciYmT2JqZWN0KEMuYykoWyJhbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNCwxZnIpOyIsIiJdLHY/T2JqZWN0KEMuYykoWyJwYWRkaW5nOjAgMTVweCAwIDIwcHg7Il0pOk9iamVjdChDLmMpKFsicGFkZGluZzowIDIwcHggMCAxNXB4OyJdKSksImNsYXNzaWMiIT09ciYmIm1lZGl1bSI9PT1ufHwic21hbGwiPT09biYmT2JqZWN0KEMuYykoWyJkaXNwbGF5OmdyaWQ7cGxhY2UtY29udGVudDpjZW50ZXI7Il0pLHYmJk9iamVjdChDLmMpKFsiZGlyZWN0aW9uOnJ0bDsiXSksInNtYWxsIj09PW4mJk9iamVjdChDLmMpKFsiZGlzcGxheTpibG9jazsiXSksdyYmImFyb3VuZCI9PT14JiYibWVkaXVtIiE9PW4mJiJzbWFsbCIhPT1uJiZPYmplY3QoQy5jKShbInRyYW5zZm9ybTpyb3RhdGUoIiwiZGVnKTsiXSwicmlnaHQiPT09az93KigzNjAvLU8oUykpLTE1KlMuc2xpY2UoMCw0KS5sZW5ndGg6dyooMzYwLy1PKFMpKS0xNSpTLnNsaWNlKDAsNCkubGVuZ3RoLTkwKSxwPDI1JiYiI2ZmZmZmZiI9PT1pJiZPYmplY3QoQy5jKShbIm91dGxpbmU6MXB4IHNvbGlkIGxpZ2h0Z3JheTsmOmhvdmVye291dGxpbmU6MXB4IHNvbGlkIGxpZ2h0Z3JheSAhaW1wb3J0YW50O30iXSkscDwyNSYmbSYmT2JqZWN0KEMuYykoWyJvdXRsaW5lOjFweCBzb2xpZCBsaWdodGdyYXk7Jjpob3ZlcntvdXRsaW5lOjFweCBzb2xpZCBsaWdodGdyYXkgIWltcG9ydGFudDt9Il0pKX0pLHh0PUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXE4YzZ0dC0xIn0pKFsiIiwiIl0sZnVuY3Rpb24oZSl7dmFyIHQ9ZS50aGVtZSxuPWUuYW5pbWF0aW9uLHI9ZS5idXR0b25BbmltYXRpb24sbz1lLnNpemUsYT1lLmJ1dHRvblN0eWxlLGk9ZS5idXR0b25Cb3JkZXJSYWRpdXMsbD1lLmNvbG9yLGM9ZS5vcGVuZWQsZT1lLnBvcHVwT3BlbmVkO3JldHVybiBPYmplY3QoQy5jKShbIm9yZGVyOiIsIjtwb3NpdGlvbjpyZWxhdGl2ZTsiLCIgIiwiICIsIiAiLCIiXSx0LmJ1dHRvbnNPcmRlcixuJiZPYmplY3QoQy5jKShbIiIsIiAiLCIgIiwiIl0sInJpbmciPT09ciYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tZGVsYXk6MXM7Jjo6YWZ0ZXJ7Y29udGVudDonJztib3JkZXItcmFkaXVzOiIsIjtib3JkZXI6NnB4IHNvbGlkICIsIjtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4Oi0xO3RvcDo1MCU7bGVmdDo1MCU7aGVpZ2h0OiIsIjt3aWR0aDoiLCI7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2FuaW1hdGlvbjoiLCIgMS41cyBpbmZpbml0ZTtvcGFjaXR5OjA7fSY6aG92ZXJ7YW5pbWF0aW9uOm5vbmU7fSJdLCIiLmNvbmNhdChpLCJtZWRpdW0iIT09byYmInNtYWxsIiE9PW8mJiJjbGFzc2ljIiE9PWE/InB4IjoiJSIpLGwsImNsYXNzaWMiIT09YT8iMTMwJSI6IjE1MCUiLCJjbGFzc2ljIiE9PWE/IjEzMCUiOiIxNTAlIixFKHIpKSwiZG91YmxlUmluZyI9PT1yJiZPYmplY3QoQy5jKShbImFuaW1hdGlvbi1kZWxheToxczsmOmhvdmVye2FuaW1hdGlvbjpub25lO30mOjphZnRlcntjb250ZW50OicnO29wYWNpdHk6MDtib3JkZXItcmFkaXVzOiIsIjtib3JkZXI6NnB4IHNvbGlkICIsIjtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4Oi0xO3RvcDo1MCU7bGVmdDo1MCU7aGVpZ2h0OiIsIjt3aWR0aDoiLCI7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2FuaW1hdGlvbjoiLCIgMS41cyBpbmZpbml0ZTt9Jjo6YmVmb3Jle2NvbnRlbnQ6Jyc7Ym9yZGVyLXJhZGl1czoiLCI7Ym9yZGVyOjZweCBzb2xpZCAiLCI7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDotMTt0b3A6NTAlO2xlZnQ6NTAlO2hlaWdodDoiLCI7d2lkdGg6IiwiO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTthbmltYXRpb246IiwiIDNzIGluZmluaXRlO29wYWNpdHk6MDt9Il0sIiIuY29uY2F0KGksIm1lZGl1bSIhPT1vJiYic21hbGwiIT09byYmImNsYXNzaWMiIT09YT8icHgiOiIlIiksbCwiY2xhc3NpYyIhPT1hPyIxMzAlIjoiMTUwJSIsImNsYXNzaWMiIT09YT8iMTMwJSI6IjE1MCUiLEUociksIiIuY29uY2F0KGksIm1lZGl1bSIhPT1vJiYic21hbGwiIT09byYmImNsYXNzaWMiIT09YT8icHgiOiIlIiksbCwiY2xhc3NpYyIhPT1hPyIxMzAlIjoiMTUwJSIsImNsYXNzaWMiIT09YT8iMTMwJSI6IjE1MCUiLEUocikpLCJtb3ZlSW4iPT09ciYmT2JqZWN0KEMuYykoWydhbmltYXRpb24tZGVsYXk6MXM7b3ZlcmZsb3c6dW5zZXQ7Jjpob3ZlcnthbmltYXRpb246bm9uZTt9JjphZnRlcntjb250ZW50OiIiO2FuaW1hdGlvbjonLCIgM3MgaW5maW5pdGU7b3BhY2l0eTowO2JhY2tncm91bmQtY29sb3I6IiwiNjk7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOiIsIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7ei1pbmRleDotMTtib3gtc2hhZG93OjAgMCA1MHB4IHJnYmEoMCwwLDAsMC4xKTt9Il0sRShyKSxsLCIiLmNvbmNhdChpLCJtZWRpdW0iIT09byYmInNtYWxsIiE9PW8mJiJjbGFzc2ljIiE9PWE/InB4IjoiJSIpKSksYyYmT2JqZWN0KEMuYykoWyImOmFmdGVyLCY6YmVmb3Jle2FuaW1hdGlvbjpub25lO30iXSksZSYmT2JqZWN0KEMuYykoWyImOmFmdGVyLCY6YmVmb3Jle2FuaW1hdGlvbjpub25lO30iXSksIm1lZGl1bSI9PT1vJiZPYmplY3QoQy5jKShbIiY6YWZ0ZXIsJjpiZWZvcmV7YW5pbWF0aW9uOm5vbmU7fSJdKSl9KSxrdD1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1xOGM2dHQtMiJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUuYnV0dG9uU3R5bGUsbj1lLnNpemUscj1lLnRoZW1lLG89ZS5idXR0b25TaGFkb3csYT1lLmRpcmVjdGlvbixpPWUubWlycm9yLGw9ZS5vcmRlcixlPWUuZGF0YUluZGV4O3JldHVybiBPYmplY3QoQy5jKShbInBvc2l0aW9uOmFic29sdXRlOyIsIiAiLCIgei1pbmRleDoxMDAwO3BhZGRpbmc6N3B4IDEwcHg7Zm9udC1mYW1pbHk6QXJpYWwsSGVsdmV0aWNhIE5ldWUsSGVsdmV0aWNhLHNhbnMtc2VyaWY7Zm9udC1zaXplOiIsInB4O2xpbmUtaGVpZ2h0OjEuMSAhaW1wb3J0YW50O2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO2JvcmRlci1yYWRpdXM6NHB4O2NvbG9yOiMzMzM7YmFja2dyb3VuZDp3aGl0ZTtib3gtc2hhZG93OjBweCAxcHggN3B4IHJnYmEoMTM2LDEzNiwxMzYsIiwiJSk7d2hpdGUtc3BhY2U6bm93cmFwO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNmb3JtLW9yaWdpbjoiLCI7IiwiICIsIiAiLCIgIiwiIl0sImNsYXNzaWMiIT09dCYmIm1lZGl1bSIhPT1uJiYic21hbGwiIT09bj9PYmplY3QoQy5jKShbImRpc3BsYXk6bm9uZSAhaW1wb3J0YW50OyJdKTpPYmplY3QoQy5jKShbImRpc3BsYXk6bm9uZTsiXSksInNtYWxsIiE9PW4mJiJtZWRpdW0iIT09bj9PYmplY3QoQy5jKShbIiIsIjoiLCJweDt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOyJdLHIucG9zaXRpb24sbisxNyk6T2JqZWN0KEMuYykoWyJsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTtib3R0b206IiwicHg7Il0sInNtYWxsIj09PW4/LTMzOiJtZWRpdW0iPT09bj8tMzg6biksTWF0aC5taW4oInNtYWxsIj09PW4/MzQqLjI4OiJtZWRpdW0iPT09bj80NSouMjg6LjI4Km4sMTcuNSksMjA8bz9vOjIwLHIucG9zaXRpb24sInNtYWxsIiE9PW4mJiJtZWRpdW0iIT09biYmInJvdyI9PT1hJiZPYmplY3QoQy5jKShbInRvcDotNDVweDsiLCI6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVYKCIsIik7Il0sci5wb3NpdGlvbiwibGVmdCI9PT1yLnBvc2l0aW9uPyItNTAlIjoiNTAlIiksInNtYWxsIiE9PW4mJiJtZWRpdW0iIT09biYmT2JqZWN0KEMuYykoWyImOjpiZWZvcmV7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXI6NXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yaWdodDo1cHggc29saWQgcmdiYSgwLDAsMCwuMDkpO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKCIsIik7IiwifSY6OmFmdGVye2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyOjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NXB4IHNvbGlkICNmZmY7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoIiwiKTsiLCJ9Il0sInJpZ2h0Ij09PXIucG9zaXRpb24/IjE4MGRlZyI6IjBkZWciLCJyaWdodCI9PT1yLnBvc2l0aW9uP09iamVjdChDLmMpKFsicmlnaHQ6LTExcHg7IiwiIl0sInJvdyI9PT1hJiZPYmplY3QoQy5jKShbInRvcDp1bnNldDtyaWdodDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoNTAlKSByb3RhdGUoMjcwZGVnKTtib3R0b206LTExcHg7Il0pKTpPYmplY3QoQy5jKShbImxlZnQ6LTExcHg7IiwiIl0sInJvdyI9PT1hJiZPYmplY3QoQy5jKShbInRvcDp1bnNldDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKSByb3RhdGUoMjcwZGVnKTtib3R0b206LTExcHg7Il0pKSwicmlnaHQiPT09ci5wb3NpdGlvbj8iMTgwZGVnIjoiMGRlZyIsInJpZ2h0Ij09PXIucG9zaXRpb24mJiJyb3ciIT09YT9PYmplY3QoQy5jKShbInJpZ2h0Oi0xMHB4OyIsIiJdLCJyb3ciPT09YSYmT2JqZWN0KEMuYykoWyJ0b3A6dW5zZXQ7cmlnaHQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDUwJSkgcm90YXRlKDI3MGRlZyk7Ym90dG9tOi0xMHB4OyJdKSk6T2JqZWN0KEMuYykoWyJsZWZ0Oi0xMHB4OyIsIiJdLCJyb3ciPT09YSYmT2JqZWN0KEMuYykoWyJ0b3A6dW5zZXQ7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSkgcm90YXRlKDI3MGRlZyk7Ym90dG9tOi0xMHB4OyJdKSkpLGkmJk9iamVjdChDLmMpKFsiZGlyZWN0aW9uOnJ0bDt1bmljb2RlLWJpZGk6cGxhaW50ZXh0OyJdKSxlJiYiYXJvdW5kIj09PWEmJiJtZWRpdW0iIT09biYmInNtYWxsIiE9PW4mJk9iamVjdChDLmMpKFsidG9wOnVuc2V0O2xlZnQ6dW5zZXQ7cmlnaHQ6dW5zZXQ7Ym90dG9tOnVuc2V0OyIsIiAiLCIgIiwiICIsIiAiLCIgIiwiICIsIiAiLCIgdHJhbnNmb3JtOnJvdGF0ZSgiLCJkZWcpOyJdLDE9PT1lJiZPYmplY3QoQy5jKShbIiIsIiJdLCJyaWdodCI9PT1yLnBvc2l0aW9uP09iamVjdChDLmMpKFsicmlnaHQ6NTAlO2JvdHRvbTotNTAlOyJdKTpPYmplY3QoQy5jKShbInJpZ2h0OjUwJTtib3R0b206MjUlOyJdKSksMj09PWUmJjQ9PT1sLnNsaWNlKDAsNCkubGVuZ3RoJiZPYmplY3QoQy5jKShbIiIsIiJdLCJyaWdodCI9PT1yLnBvc2l0aW9uP09iamVjdChDLmMpKFsicmlnaHQ6MTAlO2JvdHRvbTotNDAlOyJdKTpPYmplY3QoQy5jKShbInJpZ2h0OjEyJTtib3R0b206LTE1JTsiXSkpLDM9PT1lJiY0PT09bC5zbGljZSgwLDQpLmxlbmd0aCYmT2JqZWN0KEMuYykoWyIiLCIiXSwicmlnaHQiPT09ci5wb3NpdGlvbj9PYmplY3QoQy5jKShbInJpZ2h0Oi0yMCU7Ym90dG9tOi01JTsiXSk6T2JqZWN0KEMuYykoWyJyaWdodDotNDElO2JvdHRvbTotNTMlOyJdKSksND09PWUmJjQ9PT1sLnNsaWNlKDAsNCkubGVuZ3RoJiZPYmplY3QoQy5jKShbIiIsIiJdLCJyaWdodCI9PT1yLnBvc2l0aW9uP09iamVjdChDLmMpKFsicmlnaHQ6LTMwJTtib3R0b206MzAlOyJdKTpPYmplY3QoQy5jKShbInJpZ2h0Oi04OCU7Ym90dG9tOi02MSU7Il0pKSwyPT09ZSYmMz09PWwuc2xpY2UoMCw0KS5sZW5ndGgmJk9iamVjdChDLmMpKFsiIiwiIl0sInJpZ2h0Ij09PXIucG9zaXRpb24/T2JqZWN0KEMuYykoWyJyaWdodDotNSU7Ym90dG9tOi0yNSU7Il0pOk9iamVjdChDLmMpKFsicmlnaHQ6NSU7Ym90dG9tOi0zOCU7Il0pKSwzPT09ZSYmMz09PWwuc2xpY2UoMCw0KS5sZW5ndGgmJk9iamVjdChDLmMpKFsiIiwiIl0sInJpZ2h0Ij09PXIucG9zaXRpb24/T2JqZWN0KEMuYykoWyJyaWdodDotMjUlO2JvdHRvbToyNSU7Il0pOk9iamVjdChDLmMpKFsicmlnaHQ6LTkwJTtib3R0b206LTYwJTsiXSkpLDE9PT1lJiYyPT09bC5zbGljZSgwLDQpLmxlbmd0aCYmT2JqZWN0KEMuYykoWyIiLCIiXSwicmlnaHQiPT09ci5wb3NpdGlvbj9PYmplY3QoQy5jKShbInJpZ2h0OjM1JTtib3R0b206LTUwJTsiXSk6T2JqZWN0KEMuYykoWyJyaWdodDo0NiU7Ym90dG9tOjglOyJdKSksMj09PWUmJjI9PT1sLnNsaWNlKDAsNCkubGVuZ3RoJiZPYmplY3QoQy5jKShbIiIsIiJdLCJyaWdodCI9PT1yLnBvc2l0aW9uP09iamVjdChDLmMpKFsicmlnaHQ6LTI1JTtib3R0b206MTUlOyJdKTpPYmplY3QoQy5jKShbInJpZ2h0Oi03NCU7Ym90dG9tOi02MCU7Il0pKSwicmlnaHQiPT09ci5wb3NpdGlvbj9lKigzNjAvLU8obCkpLTE1Kmwuc2xpY2UoMCw0KS5sZW5ndGg6ZSooMzYwLy1PKGwpKS0xNSpsLnNsaWNlKDAsNCkubGVuZ3RoLTkwKSl9KSxTdD1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1xOGM2dHQtMyJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUudGhlbWUsbj1lLnNpemUscj1lLmRhdGFJbmRleCxvPWUuZGlyZWN0aW9uLGU9ZS5vcmRlcjtyZXR1cm4gT2JqZWN0KEMuYykoWyJkaXNwbGF5OmZsZXg7bWFyZ2luOiIsInB4O3Bvc2l0aW9uOnJlbGF0aXZlO2p1c3RpZnktY29udGVudDoiLCI7bWF4LWhlaWdodDoiLCJweDsiLCIgIiwiIl0sdnQvMix0LmNvbnRhaW5lckRpcmVjdGlvbixuLHImJiJhcm91bmQiPT09byYmIm1lZGl1bSIhPT1uJiYic21hbGwiIT09biYmT2JqZWN0KEMuYykoWyJwb3NpdGlvbjpmaXhlZDt0cmFuc2Zvcm06cm90YXRlKCIsImRlZykgdHJhbnNsYXRlWSgiLCJweCk7Il0sciooMzYwL08oZSkpLDIqbitmdW5jdGlvbihlKXtzd2l0Y2goZS5sZW5ndGgpe2Nhc2UgMjpyZXR1cm4tMjA7Y2FzZSAzOnJldHVybiAwO2RlZmF1bHQ6cmV0dXJuIDUwfX0oZSkpLFUoKSYmT2JqZWN0KEMuYykoWyImOmhvdmVyICIsIntkaXNwbGF5OmZsZXg7YW5pbWF0aW9uOiIsIiAwLjFzIGxpbmVhcjt9Il0sa3QsImxlZnQiPT09dC5wb3NpdGlvbj9YZTpZZSkpfSksRz1DLmQucC53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcThjNnR0LTQifSkoWyIiLCIgICJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUuY29sb3Isbj1lLnNpemUsZT1lLm1pcnJvcjtyZXR1cm4gT2JqZWN0KEMuYykoWyJtYXJnaW46MCAhaW1wb3J0YW50O2xldHRlci1zcGFjaW5nOjAuNXB4O2ZvbnQtZmFtaWx5OkFyaWFsLEhlbHZldGljYSBOZXVlLEhlbHZldGljYSxzYW5zLXNlcmlmOyIsIiBncmlkLWFyZWE6MSAvIDIgLyAyIC8gNTsiLCIiXSwiI2ZmZmZmZiI9PT10fHwiI2YzZjNmMyI9PT10P09iamVjdChDLmMpKFsiY29sb3I6IzAwMDAwMCAhaW1wb3J0YW50OyY6aG92ZXJ7Y29sb3I6IzAwMDAwMCAhaW1wb3J0YW50O30iXSk6T2JqZWN0KEMuYykoWyJjb2xvcjojZmZmZmZmOyJdKSwibWVkaXVtIiE9PW4/T2JqZWN0KEMuYykoWyIiLCIgbGluZS1oZWlnaHQ6MS4yNSAhaW1wb3J0YW50O2ZvbnQtc2l6ZToiLCJweDsiXSxlP09iamVjdChDLmMpKFsibWFyZ2luLXJpZ2h0OjEwcHg7dW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSk6T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOmxlZnQ7bWFyZ2luLWxlZnQ6MTBweDsiXSksTWF0aC5taW4oLjI5Km4sMjIpKTpPYmplY3QoQy5jKShbImxpbmUtaGVpZ2h0OjEgIWltcG9ydGFudDtmb250LXNpemU6MjBweDsiXSkpfSk7ZnVuY3Rpb24gQ3QoZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9FdChlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9FdChlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIEV0KGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9ZnVuY3Rpb24gT3QoKXt2YXIgZT0uMDEqd2luZG93LmlubmVySGVpZ2h0O2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgiLS12aCIsIiIuY29uY2F0KGUsInB4IikpfU90KCksd2luZG93Lm9ucmVzaXplPWZ1bmN0aW9uKCl7T3QoKX07ZnVuY3Rpb24ganQoZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLmFwcGxlSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmVyc2lvbjoiMS4xIix2aWV3Qm94OiIwIDAgMTM4IDEyNSIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNNjguODIsMTMuNzJjLTI5LjU1LDAtNTMuNSwyMC01My41LDQ0LjU2LDAsMTUuNjQsOS44OSwzMC4xMiwyNiwzOC4xNkE0Mi40Miw0Mi40MiwwLDAsMSwzMiwxMDkuNTMsNTcuMyw1Ny4zLDAsMCwwLDUzLjY4LDEwMWE2NCw2NCwwLDAsMCwxNS4xNCwxLjg0YzI5LjU1LDAsNTMuNS0yMCw1My41LTQ0LjU2Uzk4LjM3LDEzLjcyLDY4LjgyLDEzLjcyWiJ9KSl9dmFyIGs9T2JqZWN0KEMuZCkodCkud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXI4cmZ6eC0wIn0pKFsiIiwiIl0sZnVuY3Rpb24oZSl7dmFyIHQ9ZS5taXJyb3Isbj1lLnRoZW1lLHI9ZS5zaXplLG89ZS5idXR0b25TaGFkb3csZT1lLmN1c3RvbVNldHRpbmdzO3JldHVybiBPYmplY3QoQy5jKShbImJveC1zaGFkb3c6MHB4IDFweCA3cHggcmdiYSgxMzYsMTM2LDEzNiwiLCIlKTttaW4taGVpZ2h0OjE0OXB4O2JvcmRlci1yYWRpdXM6MTBweDsiLCI6MDtib3R0b206IiwncHg7YmFja2dyb3VuZC1jb2xvcjojZmZmZmZmO3dpZHRoOjMwMnB4O3Bvc2l0aW9uOmFic29sdXRlO2xpbmUtaGVpZ2h0OjIzcHg7Zm9udC1zaXplOjE0cHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1mYW1pbHk6Um9ib3RvLCJIZWx2ZXRpY2EgTmV1ZSIsc2Fucy1zZXJpZjsnLCIgIiwiIl0sMjA8bz9vOjIwLG4ucG9zaXRpb24sciszMCwid2hhdHNhcHAiIT09ZSYmRCgpJiZPYmplY3QoQy5jKShbInBvc2l0aW9uOmZpeGVkO2JvdHRvbTowO3JpZ2h0OjA7ei1pbmRleDo5OTk5O2JvcmRlci1yYWRpdXM6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2hlaWdodDpjYWxjKHZhcigtLXZoKSAqIDEwMCk7Il0pLHQmJk9iamVjdChDLmMpKFsiZGlyZWN0aW9uOnJ0bDsiXSkpfSksUz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yOHJmengtMSJ9KShbImN1cnNvcjpwb2ludGVyO3dpZHRoOjI0cHg7IiwiIl0sZnVuY3Rpb24oZSl7cmV0dXJuIGUubWlycm9yP09iamVjdChDLmMpKFsibWFyZ2luOjZweCBhdXRvIDAgMTJweDsiXSk6T2JqZWN0KEMuYykoWyJtYXJnaW46NnB4IDEycHggMCBhdXRvOyJdKX0pLGo9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTIifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLmdyYWRpZW50LG49ZS5iZ1N0eWxlLGU9ZS5jb2xvcjtyZXR1cm4gT2JqZWN0KEMuYykoWyIiLCIgZGlzcGxheTpmbGV4O2hlaWdodDo1MHB4O2JvcmRlci1yYWRpdXM6OXB4IDlweCAwIDA7YWxpZ24taXRlbXM6Y2VudGVyO3RleHQtYWxpZ246bGVmdDsiLCIiXSwiY29sb3IiPT09bj9PYmplY3QoQy5jKShbImJhY2tncm91bmQtY29sb3I6IiwiOyJdLGUpOk9iamVjdChDLmMpKFsiYmFja2dyb3VuZDoiLCI7Il0sImxpbmVhci1ncmFkaWVudCgxMzVkZWcsICIuY29uY2F0KHQsIikiKSksRCgpJiZPYmplY3QoQy5jKShbImJvcmRlci1yYWRpdXM6MDsiXSkpfSksQXQ9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTMifSkoWyJ0ZXh0LWFsaWduOmxlZnQ7Y29sb3I6I0ZGRkZGRjsiLCIiXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3ImJk9iamVjdChDLmMpKFsidW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSl9KSxBPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXI4cmZ6eC00In0pKFsid2lkdGg6MjhweDtoZWlnaHQ6MjhweDsiLCIiXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3I/T2JqZWN0KEMuYykoWyJtYXJnaW46MCAxMnB4IDAgM3B4OyJdKTpPYmplY3QoQy5jKShbIm1hcmdpbjowIDNweCAwIDEycHg7Il0pfSksUHQ9T2JqZWN0KEMuZCkoaykud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXI4cmZ6eC01In0pKFsiYm9yZGVyLXJhZGl1czoxNnB4O3dpZHRoOjMyMHB4OyJdKSxJdD1PYmplY3QoQy5kKShqKS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTYifSkoWyJqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjtib3JkZXItcmFkaXVzOjE2cHggMTZweCAwIDA7cGFkZGluZzowIDE1cHg7aGVpZ2h0OjgwcHg7Il0pLF90PUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXI4cmZ6eC03In0pKFsiZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDsiXSksenQ9Qy5kLmg0LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yOHJmengtOCJ9KShbImNvbG9yOiNGRkZGRkY7bWFyZ2luOjA7bGluZS1oZWlnaHQ6MTtmb250LXNpemU6MTVweDtmb250LXdlaWdodDpib2xkOyIsIiBsZXR0ZXItc3BhY2luZzowLjNweDsiXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3I/T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOnJpZ2h0O3VuaWNvZGUtYmlkaTpwbGFpbnRleHQ7Il0pOk9iamVjdChDLmMpKFsidGV4dC1hbGlnbjpsZWZ0OyJdKX0pLFR0PUMuZC5wLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yOHJmengtOSJ9KShbIiIsIiBjb2xvcjojZmZmZmZmY2M7bWFyZ2luOjVweCAwIDAgMDtsaW5lLWhlaWdodDoxO3dpZHRoOjE4MHB4O2xldHRlci1zcGFjaW5nOjAuM3B4OyJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLm1pcnJvcj9PYmplY3QoQy5jKShbInRleHQtYWxpZ246cmlnaHQ7dW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSk6T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOmxlZnQ7Il0pfSksTHQ9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTEwIn0pKFsid2lkdGg6NDVweDtoZWlnaHQ6NDVweDsiXSksTXQ9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTExIn0pKFsiY3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpncmlkOyJdKSxSdD1PYmplY3QoQy5kKShrKS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTEyIn0pKFsid2lkdGg6NTA1cHg7IiwiIl0sRCgpJiZPYmplY3QoQy5jKShbIndpZHRoOjEwMCU7Il0pKSxOdD1PYmplY3QoQy5kKShrKS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTEzIn0pKFsid2lkdGg6NDgwcHg7bGluZS1oZWlnaHQ6MHB4OyIsIiJdLEQoKT9PYmplY3QoQy5jKShbIndpZHRoOjEwMCU7Il0pOk9iamVjdChDLmMpKFsiQG1lZGlhIChtYXgtd2lkdGg6NTIwcHgpe3dpZHRoOjM4MHB4O31AbWVkaWEgKG1heC13aWR0aDo0MDBweCl7d2lkdGg6MjgwcHg7fUBtZWRpYSAobWF4LWhlaWdodDo2MDBweCl7Ym90dG9tOjdweCAhaW1wb3J0YW50OyIsIjoiLCJweCAhaW1wb3J0YW50O30iXSxmdW5jdGlvbihlKXtyZXR1cm4gZS50aGVtZS5wb3NpdGlvbn0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuc2l6ZSszMH0pKSxEdD1PYmplY3QoQy5kKShrKS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTE0In0pKFsiaGVpZ2h0OjY4MHB4O21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDE3MHB4KTtib3JkZXItcmFkaXVzOjIzcHg7d2lkdGg6MzMwcHg7IiwiIl0sRCgpP09iamVjdChDLmMpKFsid2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtoZWlnaHQ6Y2FsYyh2YXIoLS12aCkgKiAxMDApO21heC1oZWlnaHQ6dW5zZXQ7Ym9yZGVyLXJhZGl1czowOyJdKTpPYmplY3QoQy5jKShbIkBtZWRpYSAobWF4LWhlaWdodDo1MDBweCl7bWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gNDBweCk7Ym90dG9tOjdweCAhaW1wb3J0YW50OyIsIjoiLCJweCAhaW1wb3J0YW50O31AbWVkaWEgKG1heC13aWR0aDozNzBweCl7d2lkdGg6MjgwcHg7fSJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLnRoZW1lLnBvc2l0aW9ufSxmdW5jdGlvbihlKXtyZXR1cm4gZS5zaXplKzMwfSkpLFV0PU9iamVjdChDLmQpKGspLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yOHJmengtMTUifSkoWyJ3aWR0aDo0ODBweDtsaW5lLWhlaWdodDowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym94LXNoYWRvdzpub25lOyIsIiJdLEQoKT9PYmplY3QoQy5jKShbIndpZHRoOjEwMCU7YmFja2dyb3VuZDojZmZmZmZmOyJdKTpPYmplY3QoQy5jKShbIkBtZWRpYSAobWF4LXdpZHRoOjUyMHB4KXt3aWR0aDozODBweDt9QG1lZGlhIChtYXgtd2lkdGg6NDAwcHgpe3dpZHRoOjI4MHB4O31AbWVkaWEgKG1heC1oZWlnaHQ6NTAwcHgpe2JvdHRvbTo3cHggIWltcG9ydGFudDsiLCI6IiwicHggIWltcG9ydGFudDt9Il0sZnVuY3Rpb24oZSl7cmV0dXJuIGUudGhlbWUucG9zaXRpb259LGZ1bmN0aW9uKGUpe3JldHVybiBlLnNpemUrMzB9KSksQnQ9T2JqZWN0KEMuZCkoUykud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXI4cmZ6eC0xNiJ9KShbImJhY2tncm91bmQ6I2ZmZmZmZjtib3JkZXItcmFkaXVzOjMwcHg7cGFkZGluZzo2cHg7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDsiLCIgIiwiIl0sIUQoKSYmT2JqZWN0KEMuYykoWyJib3gtc2hhZG93OjBweCAxcHggN3B4IHJnYmEoMTM2LDEzNiwxMzYsIiwiJSk7Il0sZnVuY3Rpb24oZSl7cmV0dXJuIDIwPGUuYnV0dG9uU2hhZG93P2UuYnV0dG9uU2hhZG93OjIwfSksZnVuY3Rpb24oZSl7cmV0dXJuIGUubWlycm9yP09iamVjdChDLmMpKFsibWFyZ2luOjAgYXV0byAwIDA7Il0pOk9iamVjdChDLmMpKFsibWFyZ2luOjAgMCAwIGF1dG87Il0pfSksUD1mdW5jdGlvbihlKXtlPWUuY3VzdG9tU2V0dGluZ3M7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToid2hhdHNhcHAiPT09ZT97d2lkdGg6IjI1cHgiLGhlaWdodDoiMjVweCIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06InlvdXR1YmUiPT09ZT97d2lkdGg6IjEwMCUiLGZpbGw6IiMwMDAwMDAiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIyNHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0wIDBoMjR2MjRIMHoiLGZpbGw6Im5vbmUifSkpfSxOPWZ1bmN0aW9uKGUpe2Z1bmN0aW9uIHQoKXt4KHkpfWZ1bmN0aW9uIG4oKXtmKCl9dmFyIHI9ZS5pY29uLG89ZS5tZXNzZW5nZXJUaXRsZSxhPWUuY29sb3IsaT1lLmNoaWxkcmVuLGw9ZS5lbmFibGVQb3B1cCxjPWUuY3VzdG9tU2V0dGluZ3MsYz12b2lkIDAhPT1jJiZjLHU9ZS5iZ1N0eWxlLHU9dm9pZCAwPT09dT8iY29sb3IiOnUsZT1lLnNpemUscz1PYmplY3QoRi51c2VDb250ZXh0KShWKSxmPXMuYWN0aW9ucy5jbG9zZUJ1dHRvblBvcHVwLHM9cy5zZXR0aW5ncyxkPXMubWlycm9yLHA9cy53aGF0c2FwcFBvcHVwVGl0bGUsbT1zLndoYXRzYXBwUG9wdXBTdWJ0aXRsZSxoPXMuYnV0dG9uU2hhZG93LHM9cy5kaXJlY3Rpb24sZz1wZShhLDUpLGI9Q3QoT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSx5PWJbMF0sdj1iWzFdLGI9Q3QoT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSx3PWJbMF0seD1iWzFdO09iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtsPyh2KCEwKSx4KCEwKSk6dighMSl9KTtyZXR1cm4ieW91dHViZSI9PT1jP3cmJkguYS5jcmVhdGVFbGVtZW50KFV0LHtpc1Nob3c6eSxvbkFuaW1hdGlvbkVuZDp0LHNpemU6ZSxidXR0b25TaGFkb3c6aCxkaXJlY3Rpb246cyxjdXN0b21TZXR0aW5nczpjfSxILmEuY3JlYXRlRWxlbWVudChqLG51bGwsRCgpJiZILmEuY3JlYXRlRWxlbWVudChBLHttaXJyb3I6ZH0sciksSC5hLmNyZWF0ZUVsZW1lbnQoQnQse29uTW91c2VVcDpuLG1pcnJvcjpkLGJ1dHRvblNoYWRvdzpofSxILmEuY3JlYXRlRWxlbWVudChQLHtjdXN0b21TZXR0aW5nczpjfSkpKSxpKToid29uZGVyY2hhdCI9PT1jP3cmJkguYS5jcmVhdGVFbGVtZW50KER0LHtpc1Nob3c6eSxvbkFuaW1hdGlvbkVuZDp0LHNpemU6ZSxidXR0b25TaGFkb3c6aCxkaXJlY3Rpb246cyxjdXN0b21TZXR0aW5nczpjfSxEKCkmJkguYS5jcmVhdGVFbGVtZW50KGose2NvbG9yOmEsYmdTdHlsZTp1LGdyYWRpZW50Omd9LEguYS5jcmVhdGVFbGVtZW50KEEse21pcnJvcjpkfSxyKSxILmEuY3JlYXRlRWxlbWVudChBdCx7bWlycm9yOmR9LG8pLEguYS5jcmVhdGVFbGVtZW50KFMse29uTW91c2VVcDpuLG1pcnJvcjpkfSxILmEuY3JlYXRlRWxlbWVudChQLG51bGwpKSksaSk6Imdvb2dsZW1hcCI9PT1jP3cmJkguYS5jcmVhdGVFbGVtZW50KE50LHtpc1Nob3c6eSxvbkFuaW1hdGlvbkVuZDp0LHNpemU6ZSxidXR0b25TaGFkb3c6aCxkaXJlY3Rpb246cyxjdXN0b21TZXR0aW5nczpjfSxILmEuY3JlYXRlRWxlbWVudChqLHtjb2xvcjphLGJnU3R5bGU6dSxncmFkaWVudDpnfSxILmEuY3JlYXRlRWxlbWVudChBLHttaXJyb3I6ZH0sciksSC5hLmNyZWF0ZUVsZW1lbnQoQXQse21pcnJvcjpkfSxvKSxILmEuY3JlYXRlRWxlbWVudChTLHtvbk1vdXNlVXA6bixtaXJyb3I6ZH0sSC5hLmNyZWF0ZUVsZW1lbnQoUCxudWxsKSkpLGkpOiJ3aGF0c2FwcCI9PT1jP3cmJkguYS5jcmVhdGVFbGVtZW50KFB0LHtpc1Nob3c6eSxvbkFuaW1hdGlvbkVuZDp0LHNpemU6ZSxtaXJyb3I6ZCxidXR0b25TaGFkb3c6aCxkaXJlY3Rpb246cyxjdXN0b21TZXR0aW5nczpjfSxILmEuY3JlYXRlRWxlbWVudChJdCx7Y29sb3I6YSxiZ1N0eWxlOnUsZ3JhZGllbnQ6Z30sSC5hLmNyZWF0ZUVsZW1lbnQoX3QsbnVsbCxILmEuY3JlYXRlRWxlbWVudChMdCxudWxsLHIpLEguYS5jcmVhdGVFbGVtZW50KCJkaXYiLG51bGwscCYmSC5hLmNyZWF0ZUVsZW1lbnQoenQse21pcnJvcjpkfSxwKSxtJiZILmEuY3JlYXRlRWxlbWVudChUdCx7bWlycm9yOmR9LG0pKSksSC5hLmNyZWF0ZUVsZW1lbnQoTXQse29uTW91c2VVcDpufSxILmEuY3JlYXRlRWxlbWVudChQLHtjdXN0b21TZXR0aW5nczpjfSkpKSxpKToiY2FsZW5kYXIiPT09Yz93JiZILmEuY3JlYXRlRWxlbWVudChSdCx7aXNTaG93Onksb25BbmltYXRpb25FbmQ6dCxzaXplOmUsbWlycm9yOmQsYnV0dG9uU2hhZG93OmgsZGlyZWN0aW9uOnN9LEguYS5jcmVhdGVFbGVtZW50KGose2NvbG9yOmEsYmdTdHlsZTp1LGdyYWRpZW50Omd9LEguYS5jcmVhdGVFbGVtZW50KEEse21pcnJvcjpkfSxyKSxILmEuY3JlYXRlRWxlbWVudChBdCx7bWlycm9yOmR9LG8pLEguYS5jcmVhdGVFbGVtZW50KFMse29uTW91c2VVcDpuLG1pcnJvcjpkfSxILmEuY3JlYXRlRWxlbWVudChQLG51bGwpKSksaSk6dyYmSC5hLmNyZWF0ZUVsZW1lbnQoayx7aXNTaG93Onksb25BbmltYXRpb25FbmQ6dCxzaXplOmUsbWlycm9yOmQsYnV0dG9uU2hhZG93OmgsZGlyZWN0aW9uOnMsY3VzdG9tU2V0dGluZ3M6Y30sSC5hLmNyZWF0ZUVsZW1lbnQoaix7Y29sb3I6YSxiZ1N0eWxlOnUsZ3JhZGllbnQ6Z30sSC5hLmNyZWF0ZUVsZW1lbnQoQSx7bWlycm9yOmR9LHIpLEguYS5jcmVhdGVFbGVtZW50KEF0LHttaXJyb3I6ZH0sbyksSC5hLmNyZWF0ZUVsZW1lbnQoUyx7b25Nb3VzZVVwOm4sbWlycm9yOmR9LEguYS5jcmVhdGVFbGVtZW50KFAsbnVsbCkpKSxpKX0sRnQ9Qy5kLnNwYW4ud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLTE2Z2R4MGktMCJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUuYmdVcmwsbj1lLnNpemUscj1lLmlzU2luZ2xlLG89ZS5idXR0b25TdHlsZSxlPWUuYnV0dG9uQm9yZGVyUmFkaXVzO3JldHVybiBPYmplY3QoQy5jKShbJ2Rpc3BsYXk6YmxvY2sgIWltcG9ydGFudDtiYWNrZ3JvdW5kOnVybCgiJywnIikgbm8tcmVwZWF0IGNlbnRlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7d2lkdGg6JywiO2hlaWdodDoiLCI7IiwiIHBvaW50ZXItZXZlbnRzOm5vbmU7Ym9yZGVyLXJhZGl1czoiLCI7Il0sdCwibWVkaXVtIj09PW4mJnI/IjMwcHgiOiIxMDAlIiwibWVkaXVtIj09PW4mJnI/IjMwcHgiOiIxMDAlIiwiY2xhc3NpYyIhPT1vJiYibWVkaXVtIiE9PW4mJiJzbWFsbCIhPT1uJiZPYmplY3QoQy5jKShbIndpZHRoOiIsInB4O2hlaWdodDoiLCJweDsiXSxNYXRoLm1pbiguNTUqbiw0MCksTWF0aC5taW4oLjU1Km4sNDApKSwibWVkaXVtIiE9PW4mJiJzbWFsbCIhPT1uJiYiY2xhc3NpYyI9PT1vPyIiLmNvbmNhdChlLCIlIik6IiIuY29uY2F0KC4zNSplLCJweCIpKX0pLG09ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5pY29uVXJsLGU9ZS5zaXplLG49T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Mscj1uLmlzU2luZ2xlLG89bi5idXR0b25TdHlsZSxuPW4uYnV0dG9uQm9yZGVyUmFkaXVzO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChGdCx7YmdVcmw6dCxzaXplOmUsaXNTaW5nbGU6cixidXR0b25TdHlsZTpvLGJ1dHRvbkJvcmRlclJhZGl1czpufSl9O2Z1bmN0aW9uIEh0KGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/VnQoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/VnQoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBWdChlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uICR0KGUpe3ZhciB0PWUuc2l6ZSxlPXZvaWQgMD09PShlPWUuY3VzdG9tU2V0dGluZ3MpP251bGw6ZSxuPShvPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS55b3V0dWJlSWNvbixyPW8uaXNQcm8sbz1vLmlzU2luZ2xlO3JldHVybiByJiZuP0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6bixzaXplOnR9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT10JiZvP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmVyc2lvbjoiMS4xIix2aWV3Qm94OiItMyAtMyAzOCAzOCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTIuOTMyIDIwLjQ1OXYtOC45MTdsNy44MzkgNC40NTl6TTMwLjM2OCA4LjczNWMtMC4zNTQtMS4zMDEtMS4zNTQtMi4zMDctMi42MjUtMi42NjNsLTAuMDI3LTAuMDA2Yy0zLjE5My0wLjQwNi02Ljg4Ni0wLjYzOC0xMC42MzQtMC42MzgtMC4zODEgMC0wLjc2MSAwLjAwMi0xLjE0IDAuMDA3bDAuMDU4LTAuMDAxYy0wLjMyMi0wLjAwNC0wLjcwMS0wLjAwNy0xLjA4Mi0wLjAwNy0zLjc0OCAwLTcuNDQzIDAuMjMyLTExLjA3MCAwLjY4MWwwLjQzNC0wLjA0NGMtMS4yOTcgMC4zNjMtMi4yOTcgMS4zNjgtMi42NDQgMi42NDNsLTAuMDA2IDAuMDI2Yy0wLjQgMi4xMDktMC42MjggNC41MzYtMC42MjggNy4wMTYgMCAwLjA4OCAwIDAuMTc2IDAuMDAxIDAuMjYzbC0wLTAuMDE0Yy0wIDAuMDc0LTAuMDAxIDAuMTYyLTAuMDAxIDAuMjUgMCAyLjQ4IDAuMjI5IDQuOTA2IDAuNjY2IDcuMjU5bC0wLjAzOC0wLjI0NGMwLjM1NCAxLjMwMSAxLjM1NCAyLjMwNyAyLjYyNSAyLjY2M2wwLjAyNyAwLjAwNmMzLjE5MyAwLjQwNiA2Ljg4NiAwLjYzOCAxMC42MzQgMC42MzggMC4zOCAwIDAuNzYtMC4wMDIgMS4xNC0wLjAwN2wtMC4wNTggMC4wMDFjMC4zMjIgMC4wMDQgMC43MDIgMC4wMDcgMS4wODIgMC4wMDcgMy43NDkgMCA3LjQ0My0wLjIzMiAxMS4wNzAtMC42ODFsLTAuNDM0IDAuMDQ0YzEuMjk4LTAuMzYyIDIuMjk4LTEuMzY4IDIuNjQ2LTIuNjQzbDAuMDA2LTAuMDI2YzAuMzk5LTIuMTA5IDAuNjI3LTQuNTM2IDAuNjI3LTcuMDE1IDAtMC4wODgtMC0wLjE3Ni0wLjAwMS0wLjI2M2wwIDAuMDEzYzAtMC4wNzQgMC4wMDEtMC4xNjIgMC4wMDEtMC4yNSAwLTIuNDgtMC4yMjktNC45MDYtMC42NjYtNy4yNTlsMC4wMzggMC4yNDR6IixmaWxsOiJ5b3V0dWJlIj09PWUmJiIjZmYwMDAwIn0pKX12YXIgV3Q9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWVhNDV4aS0wIn0pKFsibWFyZ2luOjYwcHggMCA2MHB4IDA7bGluZS1oZWlnaHQ6MjNweDsmIGF7Y29sb3I6IzExMTtmb250LXNpemU6MjZweDt0ZXh0LWRlY29yYXRpb246bm9uZTt1bmljb2RlLWJpZGk6cGxhaW50ZXh0O30iXSksR3Q9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MteTVqbTd5LTAifSkoWyJwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cG9pbnRlci1ldmVudHM6bm9uZTsiXSksWmU9T2JqZWN0KEMuZSkoWyIwJXt0cmFuc2Zvcm06cm90YXRlKDBkZWcpO30xMDAle3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKTt9Il0pLHF0PUMuZC5zcGFuLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy15NWptN3ktMSJ9KShbImRpc3BsYXk6YmxvY2s7d2lkdGg6NTBweDtoZWlnaHQ6NTBweDtib3JkZXI6MTBweCBzb2xpZCAjZjNmM2YzO2JvcmRlci10b3A6MTBweCBzb2xpZCAjMzgzNjM2O2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjoiLCIgMS41cyBsaW5lYXIgaW5maW5pdGU7Il0sWmUpO2Z1bmN0aW9uIEkoZSl7ZS5jaGlsZHJlbjtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoR3Qse2NsYXNzTmFtZToic3Bpbm5lci1jb250YWluZXIifSxILmEuY3JlYXRlRWxlbWVudChxdCx7Y2xhc3NOYW1lOiJsb2FkaW5nLXNwaW5uZXIifSkpfWZ1bmN0aW9uIFp0KGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/WHQoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/WHQoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBYdChlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIFl0KGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5jYWxsSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiLTcyIC03MiA3MDQgNzA0Iix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6IiBNMTY2LjE1Niw1MTJoLTQxLjUzMWMtNy4zNzUtMC4wMzEtMjAuNTYzLTguNTYzLTIwLjkzOC04LjkwNkMzNy40MzgsNDM3Ljk2OSwwLDM0OC45MDYsMCwyNTUuOTM4IEMwLDE2Mi43MTksMzcuNjU2LDczLjM3NSwxMDQuMjgxLDguMjE5QzEwNC4zMTMsOC4xODgsMTE3LjI1LDAsMTI0LjYyNSwwaDQxLjUzMWMxNS4yMTksMCwzMy4yNSwxMS4xMjUsNDAuMDYzLDI0Ljc4MWwyLjkwNiw1Ljg0NCBjNi43ODEsMTMuNTk0LDYuMTg4LDM1LjU2My0xLjM0NCw0OC43NWwtMjcuOTA2LDQ4LjgxM2MtNy41NjMsMTMuMjE5LTI2LjE4OCwyNC4yNS00MS40MDYsMjQuMjVIMTEwLjc1IGMtMzYuODEzLDY0LTM2LjgxMywxNDMuMDk0LTAuMDMxLDIwNy4xMjVoMjcuNzVjMTUuMjE5LDAsMzMuODQ0LDExLjAzMSw0MS40MDYsMjQuMjVsMjcuODc1LDQ4LjgxMyBjNy41MzEsMTMuMTg4LDguMTU2LDM1LjA5NCwxLjM3NSw0OC43ODFsLTIuOTA2LDUuODQ0QzE5OS4zNzUsNTAwLjg0NCwxODEuMzc1LDUxMiwxNjYuMTU2LDUxMnogTTUxMiwxMjh2MjU2IGMwLDM1LjM0NC0yOC42NTYsNjQtNjQsNjRIMjQ0LjY4OGMtMS4yNS0xMS4yMTktMy45NjktMjIuMTU2LTkuMTU2LTMxLjI1bC0yNy44NzUtNDguODEzIGMtMTMuNDA2LTIzLjQwNi00Mi40NjktNDAuMzc1LTY5LjE4OC00MC4zNzVoLTguMTU2Yy0yMC4xODgtNDUuNDM4LTIwLjE4OC05Ny43MTksMC0xNDMuMTI1aDguMTU2IGMyNi43MTksMCw1NS43ODEtMTYuOTY5LDY5LjE4OC00MC4zNzVsMjcuOTA2LTQ4LjgxM2M1LjE4OC05LjA5NCw3LjkwNi0yMC4wNjMsOS4xNTYtMzEuMjVINDQ4QzQ4My4zNDQsNjQsNTEyLDkyLjY1Niw1MTIsMTI4eiBNMzI4LDM2OGMwLTEzLjI1LTEwLjc1LTI0LTI0LTI0cy0yNCwxMC43NS0yNCwyNHMxMC43NSwyNCwyNCwyNFMzMjgsMzgxLjI1LDMyOCwzNjh6IE0zMjgsMzA0YzAtMTMuMjUtMTAuNzUtMjQtMjQtMjQgcy0yNCwxMC43NS0yNCwyNHMxMC43NSwyNCwyNCwyNFMzMjgsMzE3LjI1LDMyOCwzMDR6IE0zMjgsMjQwYzAtMTMuMjUtMTAuNzUtMjQtMjQtMjRzLTI0LDEwLjc1LTI0LDI0czEwLjc1LDI0LDI0LDI0IFMzMjgsMjUzLjI1LDMyOCwyNDB6IE0zOTIsMzY4YzAtMTMuMjUtMTAuNzUtMjQtMjQtMjRzLTI0LDEwLjc1LTI0LDI0czEwLjc1LDI0LDI0LDI0UzM5MiwzODEuMjUsMzkyLDM2OHogTTM5MiwzMDQgYzAtMTMuMjUtMTAuNzUtMjQtMjQtMjRzLTI0LDEwLjc1LTI0LDI0czEwLjc1LDI0LDI0LDI0UzM5MiwzMTcuMjUsMzkyLDMwNHogTTM5MiwyNDBjMC0xMy4yNS0xMC43NS0yNC0yNC0yNHMtMjQsMTAuNzUtMjQsMjQgczEwLjc1LDI0LDI0LDI0UzM5MiwyNTMuMjUsMzkyLDI0MHogTTQ1NiwzNjhjMC0xMy4yNS0xMC43NS0yNC0yNC0yNHMtMjQsMTAuNzUtMjQsMjRzMTAuNzUsMjQsMjQsMjRTNDU2LDM4MS4yNSw0NTYsMzY4eiBNNDU2LDMwNCBjMC0xMy4yNS0xMC43NS0yNC0yNC0yNHMtMjQsMTAuNzUtMjQsMjRzMTAuNzUsMjQsMjQsMjRTNDU2LDMxNy4yNSw0NTYsMzA0eiBNNDU2LDI0MGMwLTEzLjI1LTEwLjc1LTI0LTI0LTI0cy0yNCwxMC43NS0yNCwyNCBzMTAuNzUsMjQsMjQsMjRTNDU2LDI1My4yNSw0NTYsMjQweiBNNDU2LDE0NGMwLTguODQ0LTcuMTU2LTE2LTE2LTE2SDI5NmMtOC44NDQsMC0xNiw3LjE1Ni0xNiwxNnYzMmMwLDguODQ0LDcuMTU2LDE2LDE2LDE2aDE0NCBjOC44NDQsMCwxNi03LjE1NiwxNi0xNlYxNDR6In0pKX12YXIgUXQ9Qy5kLmlmcmFtZS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWVoNGUzMy0wIn0pKFsiaGVpZ2h0OjI3MHB4O2JvcmRlci1yYWRpdXM6OXB4O21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDEwMHB4KTtib3JkZXI6bm9uZTtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjpvcGFjaXR5IC41czt3aWR0aDoxMDAlO2JveC1zaGFkb3c6MHB4IDFweCA3cHggcmdiYSgxMzYsMTM2LDEzNiwiLCIlKTsiLCI7IiwiIl0sZnVuY3Rpb24oZSl7cmV0dXJuIDIwPGUuYnV0dG9uU2hhZG93P2UuYnV0dG9uU2hhZG93OjIwfSxmdW5jdGlvbihlKXtyZXR1cm4gZS5pc0xvYWRpbmcmJk9iamVjdChDLmMpKFsib3BhY2l0eTowOyJdKX0sRCgpJiZPYmplY3QoQy5jKShbImhlaWdodDoxMDB2aDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA1MHB4KTtib3JkZXItcmFkaXVzOjA7Il0pKSxLdD1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xZWg0ZTMzLTEifSkoWyIgIGJvcmRlci1yYWRpdXM6OXB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246YmFja2dyb3VuZCAuNXM7IiwiICIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLmlzTG9hZGluZyYmT2JqZWN0KEMuYykoWyJiYWNrZ3JvdW5kOiMwMDAwMDA7Il0pfSxEKCkmJk9iamVjdChDLmMpKFsiYm9yZGVyLXJhZGl1czowOyJdKSk7ZnVuY3Rpb24gSnQoZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9lbihlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9lbihlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIGVuKGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9ZnVuY3Rpb24gdG4oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLmNvbnRhY3Rmb3JtSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDMyIDMyIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6IiBNMjcgMjIuNzU3YzAgMS4yNC0uOTg4IDIuMjQzLTIuMTkgMi4yNDNINy4xOUM1Ljk4IDI1IDUgMjMuOTk0IDUgMjIuNzU3VjEzLjY3YzAtLjU1Ni4zOS0uNzczLjg1NS0uNDk2bDguNzggNS4yMzhjLjc4Mi40NjcgMS45NS40NjcgMi43MyAwbDguNzgtNS4yMzhjLjQ3Mi0uMjguODU1LS4wNjMuODU1LjQ5NXY5LjA4N3oifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiIgTTI3IDkuMjQzQzI3IDguMDA2IDI2LjAyIDcgMjQuODEgN0g3LjE5QzUuOTg4IDcgNSA4LjAwNCA1IDkuMjQzdi40NjVjMCAuNTU0LjM4NSAxLjIzMi44NTcgMS41MTRsOS42MSA1LjczM2MuMjY3LjE2LjguMTYgMS4wNjcgMGw5LjYxLTUuNzMzYy40NzMtLjI4My44NTYtLjk2Ljg1Ni0xLjUxNHYtLjQ2NXoifSkpfXZhciBubj1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xNXZnYmh0LTAifSkoWyJtYXJnaW46NjBweCAwIDYwcHggMDtsaW5lLWhlaWdodDoyM3B4OyYgYXtjb2xvcjojMTExO2ZvbnQtc2l6ZToyNnB4O3RleHQtZGVjb3JhdGlvbjpub25lO3VuaWNvZGUtYmlkaTpwbGFpbnRleHQ7fSJdKSxybj1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xNXZnYmh0LTEifSkoWyJtYXJnaW46MzBweCAyNXB4IDIwcHggMjVweDt0cmFuc2l0aW9uOm9wYWNpdHkgLjVzOyIsIjsmIGltZ3t3aWR0aDoxNTBweDttYXJnaW46MCBhdXRvO30mIGF7Y29sb3I6IzExMTtkaXNwbGF5OmJsb2NrO21hcmdpbi1ib3R0b206MTBweDtmb250LXNpemU6MjZweDt0ZXh0LWRlY29yYXRpb246bm9uZTt1bmljb2RlLWJpZGk6cGxhaW50ZXh0O30iXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5pc0xvYWRpbmcmJk9iamVjdChDLmMpKFsib3BhY2l0eTouMTU7Il0pfSk7ZnVuY3Rpb24gb24oZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9hbihlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9hbihlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIGFuKGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9ZnVuY3Rpb24gbG4oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLmRpc2NvcmRJY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiItMTcuNiAwIDE2MC4xNCA5Ni4zNiIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIix4bWxuc1hsaW5rOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTA3LjcsOC4wN0ExMDUuMTUsMTA1LjE1LDAsMCwwLDgxLjQ3LDBhNzIuMDYsNzIuMDYsMCwwLDAtMy4zNiw2LjgzQTk3LjY4LDk3LjY4LDAsMCwwLDQ5LDYuODMsNzIuMzcsNzIuMzcsMCwwLDAsNDUuNjQsMCwxMDUuODksMTA1Ljg5LDAsMCwwLDE5LjM5LDguMDlDMi43OSwzMi42NS0xLjcxLDU2LjYuNTQsODAuMjFoMEExMDUuNzMsMTA1LjczLDAsMCwwLDMyLjcxLDk2LjM2LDc3LjcsNzcuNywwLDAsMCwzOS42LDg1LjI1YTY4LjQyLDY4LjQyLDAsMCwxLTEwLjg1LTUuMThjLjkxLS42NiwxLjgtMS4zNCwyLjY2LTJhNzUuNTcsNzUuNTcsMCwwLDAsNjQuMzIsMGMuODcuNzEsMS43NiwxLjM5LDIuNjYsMmE2OC42OCw2OC42OCwwLDAsMS0xMC44Nyw1LjE5LDc3LDc3LDAsMCwwLDYuODksMTEuMUExMDUuMjUsMTA1LjI1LDAsMCwwLDEyNi42LDgwLjIyaDBDMTI5LjI0LDUyLjg0LDEyMi4wOSwyOS4xMSwxMDcuNyw4LjA3Wk00Mi40NSw2NS42OUMzNi4xOCw2NS42OSwzMSw2MCwzMSw1M3M1LTEyLjc0LDExLjQzLTEyLjc0UzU0LDQ2LDUzLjg5LDUzLDQ4Ljg0LDY1LjY5LDQyLjQ1LDY1LjY5Wm00Mi4yNCwwQzc4LjQxLDY1LjY5LDczLjI1LDYwLDczLjI1LDUzczUtMTIuNzQsMTEuNDQtMTIuNzRTOTYuMjMsNDYsOTYuMTIsNTMsOTEuMDgsNjUuNjksODQuNjksNjUuNjlaIn0pKX1mdW5jdGlvbiBjbihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykudGVhbXNJY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiItMjAzLjMyNDk1IC01MTguMzMzNSAyODk3LjQ4MjkgMzExMC4wMDEiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIseG1sbnNYbGluazoiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTE1NTQuNjM3IDc3Ny41aDU3NS43MTNjNTQuMzkxIDAgOTguNDgzIDQ0LjA5MiA5OC40ODMgOTguNDgzdjUyNC4zOThjMCAxOTkuOTAxLTE2Mi4wNTEgMzYxLjk1Mi0zNjEuOTUyIDM2MS45NTJoLTEuNzExYy0xOTkuOTAxLjAyOC0zNjEuOTc1LTE2Mi0zNjIuMDA0LTM2MS45MDFWODI4Ljk3MWMuMDAxLTI4LjQyNyAyMy4wNDUtNTEuNDcxIDUxLjQ3MS01MS40NzF6IixmaWxsOiIjNTA1OUM5In0pLEguYS5jcmVhdGVFbGVtZW50KCJjaXJjbGUiLHtyOiIyMzMuMjUiLGN5OiI0NDAuNTgzIixjeDoiMTk0My43NSIsZmlsbDoiIzUwNTlDOSJ9KSxILmEuY3JlYXRlRWxlbWVudCgiY2lyY2xlIix7cjoiMzM2LjkxNyIsY3k6IjMzNi45MTciLGN4OiIxMjE4LjA4MyIsZmlsbDoiIzdCODNFQiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xNjY3LjMyMyA3NzcuNUg3MTcuMDFjLTUzLjc0MyAxLjMzLTk2LjI1NyA0NS45MzEtOTUuMDEgOTkuNjc2djU5OC4xMDVjLTcuNTA1IDMyMi41MTkgMjQ3LjY1NyA1OTAuMTYgNTcwLjE2NyA1OTguMDUzIDMyMi41MS03Ljg5MyA1NzcuNjcxLTI3NS41MzQgNTcwLjE2Ny01OTguMDUzVjg3Ny4xNzZjMS4yNDUtNTMuNzQ1LTQxLjI2OC05OC4zNDYtOTUuMDExLTk5LjY3NnoiLGZpbGw6IiM3QjgzRUIifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTI0NCA3NzcuNXY4MzguMTQ1Yy0uMjU4IDM4LjQzNS0yMy41NDkgNzIuOTY0LTU5LjA5IDg3LjU5OGE5MS44NTYgOTEuODU2IDAgMDEtMzUuNzY1IDcuMjU3SDY2Ny42MTNjLTYuNzM4LTE3LjEwNS0xMi45NTgtMzQuMjEtMTguMTQyLTUxLjgzM2E2MzEuMjg3IDYzMS4yODcgMCAwMS0yNy40NzItMTgzLjQ5Vjg3Ny4wMmMtMS4yNDYtNTMuNjU5IDQxLjE5OC05OC4xOSA5NC44NTUtOTkuNTJ6IixvcGFjaXR5OiIuMSJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xMTkyLjE2NyA3NzcuNXY4ODkuOTc4YTkxLjgwMiA5MS44MDIgMCAwMS03LjI1NyAzNS43NjVjLTE0LjYzNCAzNS41NDEtNDkuMTYzIDU4LjgzMy04Ny41OTggNTkuMDlINjkxLjk3NWMtOC44MTItMTcuMTA1LTE3LjEwNS0zNC4yMS0yNC4zNjItNTEuODMzLTcuMjU3LTE3LjYyMy0xMi45NTgtMzQuMjEtMTguMTQyLTUxLjgzM2E2MzEuMjgyIDYzMS4yODIgMCAwMS0yNy40NzItMTgzLjQ5Vjg3Ny4wMmMtMS4yNDYtNTMuNjU5IDQxLjE5OC05OC4xOSA5NC44NTUtOTkuNTJ6IixvcGFjaXR5OiIuMiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xMTkyLjE2NyA3NzcuNXY3ODYuMzEyYy0uMzk1IDUyLjIyMy00Mi42MzIgOTQuNDYtOTQuODU1IDk0Ljg1NWgtNDQ3Ljg0QTYzMS4yODIgNjMxLjI4MiAwIDAxNjIyIDE0NzUuMTc3Vjg3Ny4wMmMtMS4yNDYtNTMuNjU5IDQxLjE5OC05OC4xOSA5NC44NTUtOTkuNTJ6IixvcGFjaXR5OiIuMiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xMTQwLjMzMyA3NzcuNXY3ODYuMzEyYy0uMzk1IDUyLjIyMy00Mi42MzIgOTQuNDYtOTQuODU1IDk0Ljg1NUg2NDkuNDcyQTYzMS4yODIgNjMxLjI4MiAwIDAxNjIyIDE0NzUuMTc3Vjg3Ny4wMmMtMS4yNDYtNTMuNjU5IDQxLjE5OC05OC4xOSA5NC44NTUtOTkuNTJ6IixvcGFjaXR5OiIuMiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xMjQ0IDUwOS41MjJ2MTYzLjI3NWMtOC44MTIuNTE4LTE3LjEwNSAxLjAzNy0yNS45MTcgMS4wMzctOC44MTIgMC0xNy4xMDUtLjUxOC0yNS45MTctMS4wMzdhMjg0LjQ3MiAyODQuNDcyIDAgMDEtNTEuODMzLTguMjkzYy0xMDQuOTYzLTI0Ljg1Ny0xOTEuNjc5LTk4LjQ2OS0yMzMuMjUtMTk4LjAwM2EyODguMDIgMjg4LjAyIDAgMDEtMTYuNTg3LTUxLjgzM2gyNTguNjQ4YzUyLjMwNS4xOTggOTQuNjU3IDQyLjU0OSA5NC44NTYgOTQuODU0eiIsb3BhY2l0eToiLjEifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTE5Mi4xNjcgNTYxLjM1NXYxMTEuNDQyYTI4NC40NzIgMjg0LjQ3MiAwIDAxLTUxLjgzMy04LjI5M2MtMTA0Ljk2My0yNC44NTctMTkxLjY3OS05OC40NjktMjMzLjI1LTE5OC4wMDNoMTkwLjIyOGM1Mi4zMDQuMTk4IDk0LjY1NiA0Mi41NSA5NC44NTUgOTQuODU0eiIsb3BhY2l0eToiLjIifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTE5Mi4xNjcgNTYxLjM1NXYxMTEuNDQyYTI4NC40NzIgMjg0LjQ3MiAwIDAxLTUxLjgzMy04LjI5M2MtMTA0Ljk2My0yNC44NTctMTkxLjY3OS05OC40NjktMjMzLjI1LTE5OC4wMDNoMTkwLjIyOGM1Mi4zMDQuMTk4IDk0LjY1NiA0Mi41NSA5NC44NTUgOTQuODU0eiIsb3BhY2l0eToiLjIifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTE0MC4zMzMgNTYxLjM1NXYxMDMuMTQ4Yy0xMDQuOTYzLTI0Ljg1Ny0xOTEuNjc5LTk4LjQ2OS0yMzMuMjUtMTk4LjAwM2gxMzguMzk1YzUyLjMwNS4xOTkgOTQuNjU2IDQyLjU1MSA5NC44NTUgOTQuODU1eiIsb3BhY2l0eToiLjIifSksSC5hLmNyZWF0ZUVsZW1lbnQoImxpbmVhckdyYWRpZW50Iix7Z3JhZGllbnRUcmFuc2Zvcm06Im1hdHJpeCgxIDAgMCAtMSAwIDIwNzUuMzMzKSIseTI6IjM5NC4yNjEiLHgyOiI5NDIuMjM0Iix5MToiMTY4My4wNzMiLHgxOiIxOTguMDk5IixncmFkaWVudFVuaXRzOiJ1c2VyU3BhY2VPblVzZSIsaWQ6ImEifSxILmEuY3JlYXRlRWxlbWVudCgic3RvcCIse29mZnNldDoiMCIsc3RvcENvbG9yOiIjNWE2MmMzIn0pLEguYS5jcmVhdGVFbGVtZW50KCJzdG9wIix7b2Zmc2V0OiIuNSIsc3RvcENvbG9yOiIjNGQ1NWJkIn0pLEguYS5jcmVhdGVFbGVtZW50KCJzdG9wIix7b2Zmc2V0OiIxIixzdG9wQ29sb3I6IiMzOTQwYWIifSkpLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTk1LjAxIDQ2Ni41aDk1MC4zMTJjNTIuNDczIDAgOTUuMDEgNDIuNTM4IDk1LjAxIDk1LjAxdjk1MC4zMTJjMCA1Mi40NzMtNDIuNTM4IDk1LjAxLTk1LjAxIDk1LjAxSDk1LjAxYy01Mi40NzMgMC05NS4wMS00Mi41MzgtOTUuMDEtOTUuMDFWNTYxLjUxYzAtNTIuNDcyIDQyLjUzOC05NS4wMSA5NS4wMS05NS4wMXoiLGZpbGw6InVybCgjYSkifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNODIwLjIxMSA4MjguMTkzaC0xODkuOTd2NTE3LjI5N2gtMTIxLjAzVjgyOC4xOTNIMzIwLjEyM1Y3MjcuODQ0aDUwMC4wODh6IixmaWxsOiIjRkZGIn0pKX1mdW5jdGlvbiB1bihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykuZW1haWxJY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiIwIDAgMzIgMzIiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIseG1sbnNYbGluazoiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTE5LjYsMTkuNDdBNSw1LDAsMSwxLDIxLDE2djEuNWExLjUsMS41LDAsMCwwLDMsMFYxNmE4LDgsMCwxLDAtNC45NCw3LjRBMSwxLDAsMCwxLDIwLDI1LjE4bC0uMTQuMDZBMTAsMTAsMCwxLDEsMjYsMTZ2MS41YTMuNSwzLjUsMCwwLDEtNi40LDJaTTE2LDE5YTMsMywwLDEsMC0zLTNBMywzLDAsMCwwLDE2LDE5WiJ9KSl9ZnVuY3Rpb24gc24oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLmNhbGVuZGFySWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIix0cmFuc2Zvcm06InNjYWxlKDAuODUpIn0sdmVyc2lvbjoiMS4xIix2aWV3Qm94OiIwIDAgMjQuNSAyNCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNNy43NSAyLjVDNy43NSAyLjA4NTc5IDcuNDE0MjEgMS43NSA3IDEuNzVDNi41ODU3OSAxLjc1IDYuMjUgMi4wODU3OSA2LjI1IDIuNVY0LjA3OTI2QzQuODEwNjcgNC4xOTQ1MSAzLjg2NTc3IDQuNDc3MzcgMy4xNzE1NyA1LjE3MTU3QzIuNDc3MzcgNS44NjU3NyAyLjE5NDUxIDYuODEwNjcgMi4wNzkyNiA4LjI1SDIxLjkyMDdDMjEuODA1NSA2LjgxMDY3IDIxLjUyMjYgNS44NjU3NyAyMC44Mjg0IDUuMTcxNTdDMjAuMTM0MiA0LjQ3NzM3IDE5LjE4OTMgNC4xOTQ1MSAxNy43NSA0LjA3OTI2VjIuNUMxNy43NSAyLjA4NTc5IDE3LjQxNDIgMS43NSAxNyAxLjc1QzE2LjU4NTggMS43NSAxNi4yNSAyLjA4NTc5IDE2LjI1IDIuNVY0LjAxMjlDMTUuNTg0NyA0IDE0LjgzOSA0IDE0IDRIMTBDOS4xNjA5NyA0IDguNDE1MjcgNCA3Ljc1IDQuMDEyOVYyLjVaIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZmlsbFJ1bGU6ImV2ZW5vZGQiLGQ6Ik0yIDEyQzIgMTEuMTYxIDIgMTAuNDE1MyAyLjAxMjkgOS43NUgyMS45ODcxQzIyIDEwLjQxNTMgMjIgMTEuMTYxIDIyIDEyVjE0QzIyIDE3Ljc3MTIgMjIgMTkuNjU2OSAyMC44Mjg0IDIwLjgyODRDMTkuNjU2OSAyMiAxNy43NzEyIDIyIDE0IDIySDEwQzYuMjI4NzYgMjIgNC4zNDMxNSAyMiAzLjE3MTU3IDIwLjgyODRDMiAxOS42NTY5IDIgMTcuNzcxMiAyIDE0VjEyWk0xNyAxNEMxNy41NTIzIDE0IDE4IDEzLjU1MjMgMTggMTNDMTggMTIuNDQ3NyAxNy41NTIzIDEyIDE3IDEyQzE2LjQ0NzcgMTIgMTYgMTIuNDQ3NyAxNiAxM0MxNiAxMy41NTIzIDE2LjQ0NzcgMTQgMTcgMTRaTTE3IDE4QzE3LjU1MjMgMTggMTggMTcuNTUyMyAxOCAxN0MxOCAxNi40NDc3IDE3LjU1MjMgMTYgMTcgMTZDMTYuNDQ3NyAxNiAxNiAxNi40NDc3IDE2IDE3QzE2IDE3LjU1MjMgMTYuNDQ3NyAxOCAxNyAxOFpNMTMgMTNDMTMgMTMuNTUyMyAxMi41NTIzIDE0IDEyIDE0QzExLjQ0NzcgMTQgMTEgMTMuNTUyMyAxMSAxM0MxMSAxMi40NDc3IDExLjQ0NzcgMTIgMTIgMTJDMTIuNTUyMyAxMiAxMyAxMi40NDc3IDEzIDEzWk0xMyAxN0MxMyAxNy41NTIzIDEyLjU1MjMgMTggMTIgMThDMTEuNDQ3NyAxOCAxMSAxNy41NTIzIDExIDE3QzExIDE2LjQ0NzcgMTEuNDQ3NyAxNiAxMiAxNkMxMi41NTIzIDE2IDEzIDE2LjQ0NzcgMTMgMTdaTTcgMTRDNy41NTIyOCAxNCA4IDEzLjU1MjMgOCAxM0M4IDEyLjQ0NzcgNy41NTIyOCAxMiA3IDEyQzYuNDQ3NzIgMTIgNiAxMi40NDc3IDYgMTNDNiAxMy41NTIzIDYuNDQ3NzIgMTQgNyAxNFpNNyAxOEM3LjU1MjI4IDE4IDggMTcuNTUyMyA4IDE3QzggMTYuNDQ3NyA3LjU1MjI4IDE2IDcgMTZDNi40NDc3MiAxNiA2IDE2LjQ0NzcgNiAxN0M2IDE3LjU1MjMgNi40NDc3MiAxOCA3IDE4WiJ9KSl9dmFyIGZuPUMuZC5pZnJhbWUud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLTE5bnpuamMtMCJ9KShbImhlaWdodDozNTZweDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSAxNTBweCk7Ym9yZGVyOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246b3BhY2l0eSAuNXM7IiwiOyIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLmlzTG9hZGluZyYmT2JqZWN0KEMuYykoWyJvcGFjaXR5Oi4xNTsiXSl9LEQoKSYmT2JqZWN0KEMuYykoWyJ3aWR0aDoxMDAlO2hlaWdodDoxMDB2aDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA1N3B4KTsiXSkpO2Z1bmN0aW9uIGRuKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/cG4oZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/cG4oZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBwbihlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfXZhciBtbj1DLmQuaWZyYW1lLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xdXcwamMxLTAifSkoWyJoZWlnaHQ6NDA0cHg7bWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gMTkwcHgpO2JvcmRlcjpub25lO292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOm9wYWNpdHkgLjVzO3dpZHRoOjEwMCU7IiwiOyIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLmlzTG9hZGluZyYmT2JqZWN0KEMuYykoWyJvcGFjaXR5OjA7Il0pfSxEKCkmJk9iamVjdChDLmMpKFsiaGVpZ2h0OjEwMHZoO21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDUwcHgpOyJdKSksaG49ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LmZhY2Vib29rSWNvbixyPXQuaXNQcm8sdD10LmlzU2luZ2xlO3JldHVybiByJiZuP0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6bixzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZ0P3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDMyIDMyIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xNiA2QzkuOTI1IDYgNSAxMC41NiA1IDE2LjE4NWMwIDMuMjA1IDEuNiA2LjA2NSA0LjEgNy45MzJWMjhsMy43NDUtMi4wNTZjMSAuMjc3IDIuMDU4LjQyNiAzLjE1NS40MjYgNi4wNzUgMCAxMS00LjU2IDExLTEwLjE4NUMyNyAxMC41NiAyMi4wNzUgNiAxNiA2em0xLjA5MyAxMy43MTZsLTIuOC0yLjk4OC01LjQ2NyAyLjk4OCA2LjAxMy02LjM4MyAyLjg2OCAyLjk4OCA1LjM5OC0yLjk4Ny02LjAxMyA2LjM4M3oifSkpfTtmdW5jdGlvbiBnbihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP2JuKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP2JuKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gYm4oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiB5bigpe3ZhciBlPShhPU9iamVjdChGLnVzZUNvbnRleHQpKFYpKS5zdGF0ZSx0PShhPWEuc2V0dGluZ3MpLmZhY2Vib29rLG49YS5mYWNlYm9va0xhYmVsLHI9YS5mYWNlYm9va0NvbG9yLG89YS5iZ1N0eWxlLGE9YS5hY3RpdmF0b3JTaXplLGk9KHM9Z24oT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSlbMF0sbD1zWzFdO09iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtsKCJmYWNlYm9vayI9PT1lLmJ1dHRvblBvcHVwKX0pO3ZhciBjPShzPWduKE9iamVjdChGLnVzZVN0YXRlKSghMCksMikpWzBdLHU9c1sxXSxzPShPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7ImZhY2Vib29rIj09PWUuYnV0dG9uUG9wdXAmJnUoITApfSxbZS5idXR0b25Qb3B1cF0pLCJodHRwczovL3d3dy5mYWNlYm9vay5jb20vcGx1Z2lucy9wYWdlLnBocD9ocmVmPWh0dHBzJTNBJTJGJTJGd3d3LmZhY2Vib29rLmNvbSUyRiIuY29uY2F0KHQsIiZ0YWJzPW1lc3NhZ2VzJndpZHRoPTMwMiZoZWlnaHQ9MzAwJnNtYWxsX2hlYWRlcj10cnVlJmFkYXB0X2NvbnRhaW5lcl93aWR0aD10cnVlJmhpZGVfY292ZXI9dHJ1ZSZzaG93X2ZhY2VwaWxlPWZhbHNlJmFwcElkIikpO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChOLHtjb2xvcjpyLG1lc3NlbmdlclRpdGxlOm4saWNvbjpILmEuY3JlYXRlRWxlbWVudChobixudWxsKSxlbmFibGVQb3B1cDppLGJnU3R5bGU6byxzaXplOmF9LGMmJkguYS5jcmVhdGVFbGVtZW50KEksbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQod24se29uTG9hZDpmdW5jdGlvbihlKXt1KCExKX0sc2Nyb2xsaW5nOiJubyIsZnJhbWVCb3JkZXI6IjAiLGFsbG93dHJhbnNwYXJlbmN5OiJ0cnVlIixzcmM6c30pKX1mdW5jdGlvbiB2bihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykuZ29vZ2xlbWFwSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiJyZ2IoMjM0LCA2NywgNTMpIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoicmdiKDIzNCwgNjcsIDUzKSIsc3Ryb2tlOiJub25lIn0sdmVyc2lvbjoiMS4xIix2aWV3Qm94OiIwIDAgMTIwIDEyMCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNNjAsNy41QTM0LjU3LDM0LjU3LDAsMCwwLDI1LjQzLDQyLjA3QzI1LjQzLDYzLjIzLDQwLDcyLjgsNTAuMjgsODguOWM3LDExLDUuNTcsMTcuNiw5LjcyLDE3LjZzMi42OS02LjU4LDkuNzItMTcuNkM4MCw3Mi44LDk0LjU3LDYzLjIzLDk0LjU3LDQyLjA3QTM0LjU3LDM0LjU3LDAsMCwwLDYwLDcuNVptMCw0Ny44MUExMy4yNCwxMy4yNCwwLDEsMSw3My4yNCw0Mi4wNywxMy4yNCwxMy4yNCwwLDAsMSw2MCw1NS4zMVoifSkpfXZhciB3bj1DLmQuaWZyYW1lLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xOTQyYTQ2LTAifSkoWyJib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjAgMCAxNnB4IDE2cHg7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjMwMnB4O2hlaWdodDozMDBweDsiXSkseG49ZnVuY3Rpb24oZSx0KXtyZXR1cm4hIWUmJm51bGw9PT10JiZuZXcgRGF0ZShlKTxuZXcgRGF0ZSgiMjAyMi0wNS0yMCIpfTtmdW5jdGlvbiBrbihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP1NuKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP1NuKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gU24oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiBDbihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykuaW5zdGFncmFtSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDMyIDMyIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Im0yMC45NzM1NSw1bC05Ljg4NTM3LDBjLTMuMzU3MDIsMCAtNi4wODgxOCwyLjczMTI5IC02LjA4ODE4LDYuMDg4MzFsMCw5Ljg4NTM3YzAsMy4zNTcxNSAyLjczMTE2LDYuMDg4MzEgNi4wODgxOCw2LjA4ODMxbDkuODg1MzcsMGMzLjM1NzI4LDAgNi4wODg0NCwtMi43MzEyOSA2LjA4ODQ0LC02LjA4ODMxbDAsLTkuODg1MzdjMC4wMDAxMywtMy4zNTcwMiAtMi43MzExNiwtNi4wODgzMSAtNi4wODg0NCwtNi4wODgzMXptNC4xMzExMywxNS45NzM2OGMwLDIuMjc3ODIgLTEuODUzMTgsNC4xMzA4NyAtNC4xMzEsNC4xMzA4N2wtOS44ODU1LDBjLTIuMjc3NjksMC4wMDAxMyAtNC4xMzA3NCwtMS44NTMwNSAtNC4xMzA3NCwtNC4xMzA4N2wwLC05Ljg4NTM3YzAsLTIuMjc3NjkgMS44NTMwNSwtNC4xMzA4NyA0LjEzMDc0LC00LjEzMDg3bDkuODg1MzcsMGMyLjI3NzgyLDAgNC4xMzEsMS44NTMxOCA0LjEzMSw0LjEzMDg3bDAsOS44ODUzN2wwLjAwMDEzLDB6In0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoibTE2LjAzMSwxMC4zNDY0NGMtMy4xMzQ2NiwwIC01LjY4NDgyLDIuNTUwMTYgLTUuNjg0ODIsNS42ODQ4MmMwLDMuMTM0NTMgMi41NTAxNiw1LjY4NDU2IDUuNjg0ODIsNS42ODQ1NmMzLjEzNDY2LDAgNS42ODQ4MiwtMi41NTAwMyA1LjY4NDgyLC01LjY4NDU2YzAsLTMuMTM0NjYgLTIuNTUwMTYsLTUuNjg0ODIgLTUuNjg0ODIsLTUuNjg0ODJ6bTAsOS40MTE4Yy0yLjA1NTE5LDAgLTMuNzI3MzcsLTEuNjcxOTIgLTMuNzI3MzcsLTMuNzI3MTFjMCwtMi4wNTUzMiAxLjY3MjA1LC0zLjcyNzM3IDMuNzI3MzcsLTMuNzI3MzdjMi4wNTUzMiwwIDMuNzI3MzcsMS42NzIwNSAzLjcyNzM3LDMuNzI3MzdjMCwyLjA1NTE5IC0xLjY3MjE4LDMuNzI3MTEgLTMuNzI3MzcsMy43MjcxMXoifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJtMjEuOTU0MjMsOC42ODY2NmMtMC4zNzcxMywwIC0wLjc0NzYxLDAuMTUyNjggLTEuMDEzOTYsMC40MjAyYy0wLjI2NzY1LDAuMjY2MjEgLTAuNDIxNSwwLjYzNjgyIC0wLjQyMTUsMS4wMTUyNmMwLDAuMzc3MjcgMC4xNTM5OSwwLjc0Nzc0IDAuNDIxNSwxLjAxNTI2YzAuMjY2MjEsMC4yNjYyMSAwLjYzNjgyLDAuNDIwMiAxLjAxMzk2LDAuNDIwMmMwLjM3ODQ0LDAgMC43NDc3NCwtMC4xNTM5OSAxLjAxNTI2LC0wLjQyMDJjMC4yNjc1MiwtMC4yNjc1MiAwLjQyMDIsLTAuNjM4MTMgMC40MjAyLC0xLjAxNTI2YzAsLTAuMzc4NDQgLTAuMTUyNjgsLTAuNzQ5MDUgLTAuNDIwMiwtMS4wMTUyNmMtMC4yNjYyMSwtMC4yNjc1MiAtMC42MzY4MiwtMC40MjAyIC0xLjAxNTI2LC0wLjQyMDJ6In0pKX1mdW5jdGlvbiBFbihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykubGluZUljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJtZWRpdW0iPT09ZSYmcj97aGVpZ2h0OiIzMHB4IixtaW5XaWR0aDoiMzBweCIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9LHZpZXdCb3g6IjAgMCAzMiAzMiIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIix4bWxuc1hsaW5rOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMjcgMTQuOTI2QzI3IDEwLjAwNiAyMi4wNjUgNiAxNiA2UzUgMTAuMDA1IDUgMTQuOTI2YzAgNC40MTMgMy45MTMgOC4xMSA5LjIgOC44MDguMzU4LjA3Ny44NDUuMjM2Ljk2OC41NDIuMTEyLjI3OC4wNzMuNzEzLjAzNi45OTVsLS4xNTcuOTQyYy0uMDQ4LjI4LS4yMiAxLjA4OC45NTMuNTkzIDEuMTc0LS40OTQgNi4zMzQtMy43MyA4LjY0Mi02LjM4NkMyNi4yMzYgMTguNjcgMjcgMTYuODk2IDI3IDE0LjkyNXptLTQuMjQ3LS40MWEuNTc3LjU3NyAwIDAgMSAwIDEuMTUzaC0xLjYxdjEuMDNoMS42MWEuNTc4LjU3OCAwIDAgMSAwIDEuMTU1aC0yLjE4NmEuNTc4LjU3OCAwIDAgMS0uNTc3LS41Nzd2LTQuMzdjMC0uMzIuMjYtLjU3OC41NzctLjU3OGgyLjE4NmEuNTc4LjU3OCAwIDAgMSAwIDEuMTUzaC0xLjYxdjEuMDMzaDEuNjF6bS0zLjUzNyAyLjc2MmEuNTc1LjU3NSAwIDAgMS0uNTc4LjU3Ny41OC41OCAwIDAgMS0uNDYtLjIzbC0yLjI0LTMuMDV2Mi43MDNhLjU3Ny41NzcgMCAwIDEtMS4xNTQgMHYtNC4zN2EuNTc3LjU3NyAwIDAgMSAxLjAzOC0uMzQ3bDIuMjQgMy4wNXYtMi43MDNhLjU3OC41NzggMCAwIDEgMS4xNTQgMHY0LjM3em0tNS4yNiAwYS41NzcuNTc3IDAgMCAxLTEuMTU0IDB2LTQuMzdhLjU3Ny41NzcgMCAwIDEgMS4xNTMgMHY0LjM3em0tMi4yNjIuNTc3SDkuNTA4YS41NzcuNTc3IDAgMCAxLS41NzYtLjU3N3YtNC4zN2EuNTc3LjU3NyAwIDAgMSAxLjE1MyAwVjE2LjdoMS42MWEuNTc3LjU3NyAwIDAgMSAwIDEuMTU1eiJ9KSl9dmFyIE9uPUMuZC5pZnJhbWUud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLTE3dGI2d3YtMCJ9KShbImhlaWdodDo0MDBweDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSAxMDBweCk7Ym9yZGVyOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246b3BhY2l0eSAuNXM7d2lkdGg6MTAwJTsiLCI7IiwiIl0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuaXNMb2FkaW5nJiZPYmplY3QoQy5jKShbIm9wYWNpdHk6MDsiXSl9LEQoKT9PYmplY3QoQy5jKShbImhlaWdodDoxMDB2aDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA1MHB4KTtib3JkZXItcmFkaXVzOjA7Il0pOk9iamVjdChDLmMpKFsiIiwiIl0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ29vZ2xlbWFwQ3VzdG9tTWVzc2FnZT9PYmplY3QoQy5jKShbImJvcmRlci1yYWRpdXM6MDsiXSk6T2JqZWN0KEMuYykoWyJib3JkZXItcmFkaXVzOjAgMCA5cHggOXB4OyJdKX0pKTtmdW5jdGlvbiBqbihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP0FuKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP0FuKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gQW4oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiBQbihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykubGlua0ljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJtZWRpdW0iPT09ZSYmcj97aGVpZ2h0OiIzMHB4IixtaW5XaWR0aDoiMzBweCIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9LHZpZXdCb3g6Ii00IC00IDMyIDMyIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLHg6IjBweCIseToiMHB4In0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNNywyNWEyLjM4LDIuMzgsMCwwLDEtMS42OC0uN0wuNywxOS43M2EyLjM4LDIuMzgsMCwwLDEsMC0zLjM3bDUuMjItNS4yMmEyLjM3LDIuMzcsMCwwLDEsMS42OS0uN2gwYTIuMzUsMi4zNSwwLDAsMSwxLjY4LjcxbC45Mi45Mkw4LjgsMTMuNDhsLS45My0uOTNjLS4xLS4xLS4yMS0uMTQtLjI3LS4xMmEuMzkuMzksMCwwLDAtLjI3LjEyTDIuMTEsMTcuNzhhLjM5LjM5LDAsMCwwLDAsLjU0bDQuNTcsNC41N2EuMzkuMzksMCwwLDAsLjU0LDBsNS4yMi01LjIyYS4zOS4zOSwwLDAsMCwuMTItLjI4LjM2LjM2LDAsMCwwLS4xMS0uMjZsLS45NC0uOTQsMS40MS0xLjQyLjkzLjkzYTIuMzQsMi4zNCwwLDAsMSwuNywxLjY3LDIuMzcsMi4zNywwLDAsMS0uNywxLjdMOC42NCwyNC4zQTIuMzgsMi4zOCwwLDAsMSw3LDI1Wm0xLjM2LTYuOUw2LjksMTYuNjksMTYuNjksNi45LDE4LjEsOC4zMVptOS4wOC0zLjU0aDBhMi4zNSwyLjM1LDAsMCwxLTEuNjgtLjcxbC0uOTItLjkyLDEuNDItMS40MS45My45M2EuMzcuMzcsMCwwLDAsLjI3LjEyLjM5LjM5LDAsMCwwLC4yNy0uMTJsNS4yMi01LjIyYS4zOS4zOSwwLDAsMCwwLS41NEwxOC4zMiwyLjExYS4zOS4zOSwwLDAsMC0uNTQsMEwxMi41Niw3LjMzYS4zOS4zOSwwLDAsMC0uMTIuMjguMzYuMzYsMCwwLDAsLjExLjI2bC45NC45NC0xLjQxLDEuNDItLjkzLS45M2EyLjM0LDIuMzQsMCwwLDEtLjctMS42NywyLjM3LDIuMzcsMCwwLDEsLjctMS43TDE2LjM2LjdhMi4zOSwyLjM5LDAsMCwxLDMuMzcsMEwyNC4zLDUuMjdhMi4zOCwyLjM4LDAsMCwxLDAsMy4zN2wtNS4yMiw1LjIyQTIuMzcsMi4zNywwLDAsMSwxNy4zOSwxNC41NloifSkpfWZ1bmN0aW9uIEluKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5saW5rZWRpbkljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJtZWRpdW0iPT09ZSYmcj97aGVpZ2h0OiIzMHB4IixtaW5XaWR0aDoiMzBweCIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIixmaWxsUnVsZToiZXZlbm9kZCJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUiLGZpbGxSdWxlOiJldmVub2RkIn0sdmVyc2lvbjoiMS4xIix2aWV3Qm94OiIwIDAgNzIgNzIiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTU3LDU1SDQ4Ljc4VjQxYzAtMy44NC0xLjQ2LTYtNC40OS02LTMuMzEsMC01LDIuMjMtNSw2VjU1SDMxLjMzVjI4LjMzaDcuOTJ2My42YTkuMzIsOS4zMiwwLDAsMSw4LTQuNDFDNTMsMjcuNTIsNTcsMzEsNTcsMzguMTJaTTIxLjg4LDI0Ljg0YTQuOTIsNC45MiwwLDEsMSw0Ljg5LTQuOTJBNC45LDQuOSwwLDAsMSwyMS44OCwyNC44NFpNMTcuNzksNTVoOC4yNlYyOC4zM0gxNy43OVoifSkpfWZ1bmN0aW9uIF9uKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5za3lwZUljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJtZWRpdW0iPT09ZSYmcj97aGVpZ2h0OiIzMHB4IixtaW5XaWR0aDoiMzBweCIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9LHZlcnNpb246IjEuMSIsdmlld0JveDoiMCAwIDUxMiA1MTIiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTQzNi45LDI5Ni44YzIuOC0xMi41LDQuMi0yNS40LDQuMi0zOC43YzAtOTkuNy04Mi0xODAuNi0xODMuMi0xODAuNmMtMTAuNywwLTIxLjEsMC45LTMxLjMsMi42ICBDMjEwLjMsNjkuOSwxOTEsNjQsMTcwLjIsNjRDMTExLjYsNjQsNjQsMTEwLjksNjQsMTY4LjdjMCwxOS40LDUuMywzNy41LDE0LjYsNTNjLTIuNCwxMS43LTMuNywyMy45LTMuNywzNi4zICBjMCw5OS44LDgyLDE4MC42LDE4My4xLDE4MC42YzExLjUsMCwyMi43LTEsMzMuNS0zYzE1LDcuOSwzMi4xLDEyLjQsNTAuMiwxMi40YzU4LjcsMCwxMDYuMi00Ni45LDEwNi4yLTEwNC43ICBDNDQ4LDMyNi42LDQ0NCwzMTAuOCw0MzYuOSwyOTYuOHogTTM1MS45LDM0NC4zYy04LjUsMTEuOC0yMSwyMS4yLTM3LjIsMjcuOGMtMTYuMSw2LjYtMzUuMyw5LjktNTcuMyw5LjkgIGMtMjYuMywwLTQ4LjMtNC42LTY1LjYtMTMuNmMtMTIuMy02LjYtMjIuNC0xNS40LTMwLjItMjYuNGMtNy44LTExLTExLjctMjItMTEuNy0zMi42YzAtNi42LDIuNi0xMi4zLDcuNi0xNy4xYzUtNC42LDExLjUtNywxOS4xLTcgIGM2LjMsMCwxMS43LDEuOCwxNi4xLDUuNWM0LjIsMy41LDcuOCw4LjcsMTAuNywxNS41YzMuMyw3LjMsNi44LDEzLjUsMTAuNiwxOC40YzMuNiw0LjcsOC43LDguNiwxNS4zLDExLjcgIGM2LjcsMy4xLDE1LjYsNC43LDI2LjYsNC43YzE1LjEsMCwyNy41LTMuMiwzNi44LTkuNWM5LjItNi4xLDEzLjYtMTMuNSwxMy42LTIyLjVjMC03LjEtMi4zLTEyLjctNy4xLTE3LjEgIGMtNS00LjYtMTEuNS04LjItMTkuNi0xMC42Yy04LjMtMi42LTE5LjYtNS4zLTMzLjYtOC4yYy0xOS00LTM1LjEtOC44LTQ4LTE0LjJjLTEzLjEtNS41LTIzLjctMTMuMi0zMS41LTIyLjcgIGMtNy45LTkuNy0xMS44LTIxLjktMTEuOC0zNi4yYzAtMTMuNyw0LjItMjUuOSwxMi40LTM2LjVjOC4yLTEwLjUsMjAuMS0xOC43LDM1LjYtMjQuM2MxNS4yLTUuNiwzMy4zLTguNCw1My43LTguNCAgYzE2LjQsMCwzMC43LDEuOSw0Mi43LDUuNWMxMi4xLDMuNywyMi4yLDguNywzMC4zLDE0LjljOCw2LjIsMTQsMTIuOCwxNy44LDE5LjdjMy44LDcsNS43LDEzLjksNS43LDIwLjZjMCw2LjQtMi41LDEyLjMtNy41LDE3LjQgIGMtNSw1LjEtMTEuMyw3LjgtMTguOCw3LjhjLTYuOCwwLTEyLjEtMS42LTE1LjgtNC44Yy0zLjQtMy03LTcuNi0xMC45LTE0LjNjLTQuNi04LjUtMTAuMS0xNS4zLTE2LjQtMjAuMWMtNi4yLTQuNi0xNi40LTctMzAuNi03ICBjLTEzLjEsMC0yMy44LDIuNi0zMS43LDcuN2MtNy42LDQuOS0xMS4zLDEwLjYtMTEuMywxNy4zYzAsNC4xLDEuMiw3LjUsMy43LDEwLjVjMi42LDMuMSw2LjIsNS45LDEwLjksOC4yICBjNC44LDIuNCw5LjgsNC4zLDE0LjcsNS42YzUuMSwxLjQsMTMuNiwzLjUsMjUuMyw2LjFjMTQuOSwzLjEsMjguNSw2LjcsNDAuNSwxMC40YzEyLjIsMy45LDIyLjcsOC42LDMxLjMsMTQuMSAgYzguOCw1LjYsMTUuNywxMi45LDIwLjcsMjEuNWM0LjksOC42LDcuNCwxOS40LDcuNCwzMS44QzM2NC44LDMxOC45LDM2MC41LDMzMi41LDM1MS45LDM0NC4zeiJ9KSl9ZnVuY3Rpb24gem4oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLnNsYWNrSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmVyc2lvbjoiMS4xIix2aWV3Qm94OiIwIDAgMTY4IDE2OCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNNDcuMiwxMDBBMTMuMiwxMy4yLDAsMSwxLDM0LDg2LjhINDcuMlptNi42LDBhMTMuMiwxMy4yLDAsMCwxLDI2LjQsMHYzM2ExMy4yLDEzLjIsMCwwLDEtMjYuNCwwWiIsZmlsbDoiI2UwMWU1YSJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik02Nyw0N0ExMy4yLDEzLjIsMCwxLDEsODAuMiwzMy44VjQ3Wm0wLDYuN2ExMy4yLDEzLjIsMCwxLDEsMCwyNi40SDMzLjlhMTMuMiwxMy4yLDAsMCwxLDAtMjYuNFoiLGZpbGw6IiMzNmM1ZjAifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTE5LjksNjYuOWExMy4yLDEzLjIsMCwxLDEsMTMuMiwxMy4ySDExOS45Wm0tNi42LDBhMTMuMiwxMy4yLDAsMCwxLTI2LjQsMFYzMy44YTEzLjIsMTMuMiwwLDAsMSwyNi40LDBaIixmaWxsOiIjMmViNjdkIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTEwMC4xLDExOS44QTEzLjIsMTMuMiwwLDEsMSw4Ni45LDEzM1YxMTkuOFptMC02LjZhMTMuMiwxMy4yLDAsMSwxLDAtMjYuNGgzMy4xYTEzLjIsMTMuMiwwLDEsMSwwLDI2LjRaIixmaWxsOiIjZWNiMjJlIn0pKX1mdW5jdGlvbiBUbihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykuc21zSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7dmlld0JveDoiMCAwIDMyIDMyIixzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0yMSAyM2g0LjAxYzEuMSAwIDEuOTktLjg5MyAxLjk5LTEuOTk0VjguOTk0QzI3IDcuODk0IDI2LjExIDcgMjUuMDEgN0g2Ljk5QzUuODkgNyA1IDcuODkzIDUgOC45OTR2MTIuMDEyQzUgMjIuMTA2IDUuODkgMjMgNi45OSAyM2g5LjU2NmwzLjExNCAzLjUwNGMuNzMuODIgMS4zMy42MDIgMS4zMy0uNVYyM3pNMTAuNTE1IDEyLjE2NWMuMzYuMTEuNjgyLjI2Ljk2Mi40NDZsLS40MTMuODhhMy44ODIgMy44ODIgMCAwIDAtLjkxNS0uNDE2IDIuOSAyLjkgMCAwIDAtLjgyLS4xMzZjLS4zIDAtLjUzNi4wNTQtLjcwNy4xNmEuNTEyLjUxMiAwIDAgMC0uMjU2LjQ2YzAgLjE3My4wNTUuMzIuMTY3LjQzNy4xMS4xMi4yNTIuMjE0LjQyLjI4NS4xNy4wNzIuNDA4LjE1Mi43MTQuMjQuNC4xMi43MjUuMjM2Ljk3Ny4zNS4yNTIuMTE3LjQ2Ny4yOS42NDQuNTE4LjE3Ny4yMjguMjY2LjUyNi4yNjYuODkyIDAgLjM0NC0uMDk1LjY0Ny0uMjg1LjkwNy0uMTkuMjYtLjQ1My40Ni0uNzkuNi0uMzM4LjE0LS43MjQuMjEyLTEuMTYuMjEyLS40NSAwLS44ODgtLjA4Ni0xLjMxLS4yNTVhMy42NzMgMy42NzMgMCAwIDEtMS4xMS0uNjg0bC40MzQtLjg2M2MuMy4yNzYuNjI4LjQ5Ljk4NS42NC4zNTYuMTUuNjk1LjIyNCAxLjAxNy4yMjQuMzUgMCAuNjIyLS4wNjMuODE2LS4xOWEuNTk4LjU5OCAwIDAgMCAuMjkyLS41MjguNjE4LjYxOCAwIDAgMC0uMTc0LS40NSAxLjIxMiAxLjIxMiAwIDAgMC0uNDMtLjI4IDkuNjUgOS42NSAwIDAgMC0uNzEzLS4yMzcgNy40MTQgNy40MTQgMCAwIDEtLjk3Ny0uMzQ3IDEuNzUgMS43NSAwIDAgMS0uNjM3LS40OThjLS4xNzctLjIyLS4yNjYtLjUxLS4yNjYtLjg3NyAwLS4zMzQuMDktLjYyNS4yNy0uODc0LjE4LS4yNS40MzQtLjQ0My43Ni0uNTc4LjMyNC0uMTM1LjctLjIwMiAxLjEyNy0uMjAyLjM4IDAgLjc1LjA1NSAxLjExLjE2NXptNy43MzIgNS44bC0uMDEtNC40MjQtMS44NyAzLjgwNmgtLjY1M2wtMS44NjctMy44MDV2NC40MjZoLS45NDJWMTIuMDRoMS4xODZsMS45NTUgMy45MzggMS45NDUtMy45MzdoMS4xNzh2NS45MjZoLS45MnptNS43MjgtNS44Yy4zNi4xMS42OC4yNi45NjIuNDQ2bC0uNDEzLjg4YTMuODgyIDMuODgyIDAgMCAwLS45MTUtLjQxNiAyLjkgMi45IDAgMCAwLS44Mi0uMTM2Yy0uMyAwLS41MzcuMDU0LS43MDcuMTZhLjUxMi41MTIgMCAwIDAtLjI1Ny40NmMwIC4xNzMuMDU2LjMyLjE2OC40MzcuMTEuMTIuMjUyLjIxNC40Mi4yODUuMTcuMDcyLjQwOC4xNTIuNzE0LjI0LjQuMTIuNzI1LjIzNi45NzcuMzUuMjUyLjExNy40NjcuMjkuNjQ0LjUxOC4xNzcuMjI4LjI2Ni41MjYuMjY2Ljg5MiAwIC4zNDQtLjA5NS42NDctLjI4NS45MDctLjE5LjI2LS40NTMuNDYtLjc5LjYtLjMzOC4xNC0uNzI0LjIxMi0xLjE2LjIxMi0uNDUgMC0uODg4LS4wODYtMS4zMS0uMjU1YTMuNjczIDMuNjczIDAgMCAxLTEuMTEtLjY4NGwuNDM0LS44NjNjLjMuMjc2LjYyOC40OS45ODUuNjQuMzU2LjE1LjY5NS4yMjQgMS4wMTcuMjI0LjM1IDAgLjYyMi0uMDYzLjgxNi0uMTlhLjU5OC41OTggMCAwIDAgLjI5LS41MjguNjE4LjYxOCAwIDAgMC0uMTcyLS40NSAxLjIxMiAxLjIxMiAwIDAgMC0uNDMtLjI4IDkuNjUgOS42NSAwIDAgMC0uNzEzLS4yMzcgNy40MTQgNy40MTQgMCAwIDEtLjk3Ny0uMzQ3IDEuNzUgMS43NSAwIDAgMS0uNjM3LS40OThjLS4xNzctLjIyLS4yNjYtLjUxLS4yNjYtLjg3NyAwLS4zMzQuMDktLjYyNS4yNy0uODc0LjE4LS4yNS40MzQtLjQ0My43Ni0uNTc4LjMyNC0uMTM1LjctLjIwMiAxLjEyNi0uMjAyLjM4IDAgLjc1LjA1NSAxLjExMi4xNjV6In0pKX12YXIgTG49Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWNnd21tYy0wIn0pKFsibWFyZ2luOjI1cHggMjBweDsiXSk7ZnVuY3Rpb24gTW4oZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9SbihlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9SbihlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIFJuKGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9ZnVuY3Rpb24gTm4oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLnNuYXBjaGF0SWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDUxMiA1MTIiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIseG1sbnNYbGluazoiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoibSAyNTQuMjMxOTIsNjcuNzQ1NjU2IGMgLTI0LjE1NTMsMC4xNjUzNiAtNDkuMTMzMyw2LjU3NjE2IC02OC43MTg4LDIyLjA2MjUgLTE0LjY2NywxMS41Nzc2NTQgLTI2LjE5OTE2LDI2LjkyMTE2NCAtMzMuNDY4NzEsNDQuMDYyNTA0IC0wLjAxMDksMC4wNDE1IC0wLjAyMTMsMC4wODMyIC0wLjAzMTIsMC4xMjUgLTYuOTIzNTgsMTcuNjYyMDYgLTYuMjgyNDEsMzYuNDU5MDggLTUuMzQzNzUsNTMuODc1IDQuOWUtNCwwLjAxMDYgLTQuOWUtNCwwLjAyMDcgMCwwLjAzMTIgMC41NzA0NiwxMi4yNDExMSAxLjkxOTIsMjQuMDkxODIgMC43ODEyNSwzNS4zNDM3NSAtMC4wOTE5LDAuNDM4MDIgLTAuMDk2LDAuNTQ3NzYgLTAuMTU2MjUsMC44MTI1IC01LjQ0NTE2LDAuOTg3MDEgLTExLjM3MiwwLjYyOTAyIC0xNy4yNSwtMC41IC0wLjAzMTIsLTIuOWUtNCAtMC4wNjI1LC0yLjllLTQgLTAuMDkzNywwIC00LjAyNjM5LC0wLjY5MzA2IC04LjMyNzk3LC0yLjM1MjI5IC0xMy4xODc1LC0zLjcxODc1IC0wLjA4MjgsLTAuMDIzIC0wLjE2NjE1LC0wLjA0MzggLTAuMjUsLTAuMDYyNSAtNC43MTYzMywtMS4wNzgyNCAtOS4zNTI0MiwwLjI5NTAxIC0xMi45MDYyNSwyLjkzNzUgLTAuMDQ1NywwLjAyOTYgLTAuMTA5ODUsMC4wNjM1IC0wLjE1NjI1LDAuMDkzNyAtMC4wNzEsMC4wNTQgLTAuMTQ4NjUsMC4xMDEyNCAtMC4yMTg3NSwwLjE1NjI1IC0yLjg5MjY1LDEuOTE1NiAtNi44NTQ5NzgsNS4xMzE5NyAtNy4wNjI0OTgsMTAuNzE4NzUgLTAuMDA5LDAuMzY2NTUgMC4wMjI1LDAuNzM0MDcgMC4wOTM3LDEuMDkzNzUgMC42MjQ2NCwzLjI4Mjk5IDIuNjQ0MDcsNS42ODM0MyA0LjQzNzQ5OCw3LjI1IDEuNzkzNDIsMS41NjY1NyAzLjQ4Nzc4LDIuNjAxMTkgNC41MzEyNSwzLjQwNjI1IDAuMDgxNCwwLjA2NTEgMC4xNjQ3NCwwLjEyNzYyIDAuMjUsMC4xODc1IDguNzk2OTUsNS45MzUxNCAxOC41MzI4MSw4LjU0Mjk5IDI3LDExLjg0Mzc1IDAuMDA5LDAuMDAzIDAuMDIyNSwtMC4wMDMgMC4wMzEyLDAgNS44NjIwNSwyLjU5NzMxIDEwLjk1NTkyLDYuNjM2MDkgMTIuMTI1LDExLjcxODc1IDEuNDU5NzcsNi40MjcxMyAtMS4yNDY4LDEzLjgwNTU4IC00Ljc4MTI1LDIwLjk2ODc1IC0wLjAwNCwwLjAwOSAwLjAwNCwwLjAyMjYgMCwwLjAzMTIgLTkuNTMzMzQsMTguOTg1NjUgLTIzLjY5MDg5LDM1LjQ5NjA5IC00MS4wOTM3NDgsNDcuNTkzNzUgLTkuMTIzNzQsNi4yOTUxMSAtMTkuNDE2NTI1LDEwLjk5NDUgLTMwLjE1NjMwNSwxMy45MDY0IC0wLjE0ODE0OSwwLjA0NTMgLTAuMjk0MTkyLDAuMDk3NCAtMC40Mzc1LDAuMTU2MjUgLTIuMjAzNzQsMC44Mjk4NiAtNy40MjkyNCwxLjM3MjQ3IC0xMC43MTg3NSw2LjM3NSAtMC4yMzM3OTMsMC4zNDkzNyAtMC40MjMyODIsMC43MjgzNSAtMC41NjI1LDEuMTI1IC0xLjEwOTIzLDMuMjE2OCAwLjE1NjIsNi42NzA1OCAxLjcxODc1LDguNTYyNSAxLjQ5MjEsMS44MDY2MiAzLjE1NjY3LDIuODU3ODYgNC41OTM3NSwzLjYyNSAwLjA3MzUsMC4wNDMgMC4xNDUxLDAuMDgyNCAwLjIxODc1LDAuMTI1IDkuMDQyNzYsNS4yMjYwOCAxOC45MTg1OTUsNy40OTE1NyAyNy45Mzc1MDUsOS44MTI1IDAuMDQxNSwwLjAxMDkgMC4wODMyLDAuMDIxMyAwLjEyNSwwLjAzMTIgNi40OTgxLDEuNDc5NzcgMTIuNDg4NzM4LDIuMjcwMjkgMTcuMzc0OTk4LDQuMzc1IDAuMjM5MjMsMC40MDIzNCAwLjcyODUyLDIuMDU4MzIgMS44NzUsNC44MTI1IDEuNjAxNTEsNC45OTk2OCAyLjMyOTUyLDEwLjkwMzcgNC4xODc1LDE3LjA5Mzc1IDAuNTA4MDQsMS43MTM0MiAyLjAwMjI1LDMuMDk1NTYgMy43NSwzLjQ2ODc1IDQuMTA0LDAuODcxOTMgNi4zNjExOSwtMC41MzYxNyA2LjcxODc1LC0wLjU2MjUgMC4xNjc1OCwtMC4wMTI0IDAuMzM0NTIsLTAuMDMzMyAwLjUsLTAuMDYyNSAxNS4xMDAxOSwtMi42NDY4IDMwLjE2ODM1LC00Ljk5MzgzIDQzLjk5OTk2LC0xLjUgMC4wMSwwLjAwMyAwLjAyMSwtMC4wMDMgMC4wMzEsMCAxNC41MTYsMy44MjM2MyAyNy4xMzA5LDEzLjkxNDQ2IDQxLjM0MzgsMjIuNTkzNzUgMC4wMjUsMC4wMTU0IDAuMDM3LDAuMDQ3MSAwLjA2MiwwLjA2MjUgbCAwLC0wLjAzMTIgYyA5LjQzNDIsNS45ODY0NiAyMC4zMzkzLDExLjg0ODUgMzIuOTM3NSwxMi4yODEyNSBsIDAsMC4wMzEyIGMgMC4wNDIsMTBlLTQgMC4wODMsLTEwZS00IDAuMTI1LDAgOS41MTU1LDAuNTM4OTYgMTguODU1LC0wLjA2NTcgMjcuOTY4NywtMC42ODc1IDAuMDUyMSw4LjFlLTQgMC4xMDQyLDguMWUtNCAwLjE1NjMsMCA3LjgwMzgsLTAuNzczMDIgMTUuMzgwNywtMy4zNzAwMiAyMiwtNy42MjUgMC4wOTQsLTAuMDUzNSAwLjE4NzYsLTAuMTAyNTggMC4yODEyLC0wLjE1NjI1IDE0Ljk0NTIsLTguNTYzNDQgMjguMjI1OCwtMTguODgyMzQgNDIuNzgxMywtMjUuMzQzNzUgMC4wMjEsLTAuMDA4IDAuMDQyLC0wLjAyMzcgMC4wNjIsLTAuMDMxMiA0LjcyMDgsLTEuNzExNTcgMTAuNjE4OSwtMS42MTUwNiAxNy4xODc1LC0yLjA2MjUgMC4wNjIsLTAuMDAyIDAuMTI1LDAuMDAyIDAuMTg3NSwwIDEyLjA1MjcsLTAuMzcyMSAyNC4xMjgzLDAuMjc0MTQgMzYuMDkzNywxLjg3NSAwLjQxNDQ4LDAuMDUyMiAwLjgzNTUyLDAuMDUyMiAxLjI1LDAgMS41NzE0LC0wLjE4NjQgMy4yODg5LC0xLjI0MTU1IDQuMTI1LC0yLjMxMjUgMC44MzYxLC0xLjA3MDk1IDEuMDc3LC0xLjk0MzE4IDEuMjUsLTIuNTYyNSAwLjM0NjIsLTEuMjM4NjQgMC42NjcsLTEuODMxMDIgMC4wOTQsLTAuODEyNSAwLjE4MTcsLTAuMzE2MDYgMC4zMjg3LC0wLjY1MjA1IDAuNDM3NSwtMSAyLjE5NzEsLTcuMjgwMDIgMy4zOTI1LC0xMy44Njc5NyA2LjkzNzUsLTE3Ljk2ODc1IDEuNTkyOSwtMS41NTcxNiA0LjMzNCwtMi4zMzg4NiA3LjQzNzUsLTIuMjgxMjUgMC4yMjk1MiwwLjAwNSAwLjQ1OTQxLC0wLjAwNSAwLjY4NzUsLTAuMDMxMiAxMC40MDI0LC0xLjIzMTMzIDE5LjgwNTIsLTQuOTg2OTYgMjguNzE4OCwtOC4xODc1IDAuMTA1NTYsLTAuMDM4MiAwLjIwOTg0LC0wLjA3OTkgMC4zMTI2LC0wLjEyNTA1IDMuMzExMywtMS40NDM0MSA4LjI0NTMsLTMuMDk5NjMgMTEuNjI1LC03Ljg0Mzc1IDAuMDE4LC0wLjAyNTQgMC4wNDQsLTAuMDM2OSAwLjA2MiwtMC4wNjI1IGwgLTAuMDMxLC0wLjAzMTIgYyAyLjg0MjgsLTMuOTcyNSAxLjUyMywtOS40MjQ2OSAtMi41LC0xMS45MDYyNSBsIDAuMDYyLC0wLjA2MjUgYyAtMC4xMjc1LC0wLjA4NjcgLTAuMjQ3NCwtMC4xMzU5NSAtMC4zNzUsLTAuMjE4NzUgLTAuMDM0LC0wLjAxODYgLTAuMDU5LC0wLjA0NDQgLTAuMDk0LC0wLjA2MjUgbCAwLDAuMDMxMiBjIC00LjgyNTksLTMuMTAwMDYgLTkuNjYxMiwtMy41MzA5MiAtMTIuNzE4NywtNC42NTYyNSAtMC4wNjIxLC0wLjAyMjEgLTAuMTI0NiwtMC4wNDI5IC0wLjE4NzUsLTAuMDYyNSAtMjAuNjg3MiwtNi42MzU2OCAtMzguNTc3OCwtMjAuOTIxMTEgLTUxLjkzNzUsLTM4LjMxMjUgLTcuNDE3MiwtOS42OTEyOSAtMTMuNjg5OSwtMjAuMjIyMDIgLTE3Ljg0MzgsLTMxLjQ2ODc1IC0wLjAxNCwtMC4wNDEgLTAuMDE4LC0wLjA4NCAtMC4wMzEsLTAuMTI1IC0xLjYyNjIsLTQuODgzNTMgLTEuNzA3NywtMTAuMjA5MDIgMC42ODc1LC0xMy40Mzc1IDAuMDMxNywtMC4wMzA4IDAuMDYzMSwtMC4wNjIgMC4wOTQsLTAuMDkzNyAzLjczNjYsLTUuMzY4MzkgMTAuNTkzNSwtOC44MTg3OCAxNy45MDYzLC0xMS41MzEyNSAwLjAzLC0wLjAxMDQgMC4wNjQsLTAuMDIwOCAwLjA5NCwtMC4wMzEyIDguMDgxOSwtMi44MTE1NyAxNi45MjYzLC02LjA4Njg2IDI0LjIxODcsLTEyLjU2MjUgMC4wMzE4LC0wLjAzMDggMC4wNjMxLC0wLjA2MiAwLjA5NCwtMC4wOTM3IDEuMTI4MywtMS4wNjY5NSAyLjQ4NTIsLTIuNDU2MDIgMy41LC00LjUzMTI1IDEuMDE0OSwtMi4wNzUyMyAxLjQ5NjEsLTUuMzEwMzIgMC4xNTYzLC04LjEyNSAzZS01LC0wLjAxMDQgM2UtNSwtMC4wMjA4IDAsLTAuMDMxMiAtMi4xMDQ0LC00LjMzNTQ5IC01Ljc3NCwtNi41NjYyIC04LjUsLTguMTg3NSAtMC4wMTAzLC0zZS01IC0wLjAyMDcsLTNlLTUgLTAuMDMxLDAgLTQuNTY3MywtMi42NjU5MiAtOS44ODE2LC0yLjgzODg3IC0xNC41LC0xLjM0Mzc1IC0wLjAxLDAuMDAzIC0wLjAyMSwtMC4wMDMgLTAuMDMxLDAgLTAuMDMxLDAuMDEwMSAtMC4wNjMsMC4wMjEgLTAuMDk0LDAuMDMxMiAtNC45ODkyLDEuNTE4MzUgLTkuMDYyNCwzLjMzMzkxIC0xMi44NDM4LDMuODEyNSAtMC4wODM5LDAuMDE4NyAtMC4xNjcyMiwwLjAzOTUgLTAuMjUsMC4wNjI1IC01LjM3MzcsMC45NTc3NyAtMTAuNTc3MywxLjE4Nzc5IC0xNC42MjUsLTAuMzEyNSAtMC4wMzgsLTAuNjA2NDkgLTAuMDU3LC0xLjc5MDEzIC0wLjIxODcsLTMuMjUgbCAwLjAzMSwwIGMgLTAuMjk4OCwtOC45MTUzIDAuNDU2NSwtMTguMTA2MDQgMC41OTM3LC0yNy42MjUgM2UtNCwtMC4wMjEyIC0zZS00LC0wLjA0MTMgMCwtMC4wNjI1IDAuNDExMiwtMTQuNDYzMTggMC45OTQ4LC0yOS4zNTI5NSAtMS4xMjUsLTQ0LjM0Mzc1IC0wLjAwOSwtMC4wNzMxIC0wLjAxOTEsLTAuMTQ2MDcgLTAuMDMxLC0wLjIxODc1IC00LjYxNTQsLTI1LjI4NzUzIC0yMC42ODcsLTQ3LjA2NzM2IC00MS4wNjI1LC02MS41NjI1MDQgLTE0LjgxMjEsLTEwLjUwOTg3IC0zMi4zOTcyLC0xNi4zNzU4MSAtNTAuMjUsLTE4LjAzMTI1IC0wLjAxLC0wLjAwMSAtMC4wMjEsMC4wMDEgLTAuMDMxLDAgLTUuOTkxMiwtMC42MDQ4NyAtMTEuOTc0MSwtMC44MTk0NSAtMTcuOTM3NSwtMC43NSB6In0pKX12YXIgRG49Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtdzB5OWo1LTAifSkoWyJtYXJnaW46NjBweCAwIDYwcHggMDtsaW5lLWhlaWdodDoyM3B4OyYgYXtjb2xvcjojMTExO2ZvbnQtc2l6ZToyNnB4O3RleHQtZGVjb3JhdGlvbjpub25lO3VuaWNvZGUtYmlkaTpwbGFpbnRleHQ7fSJdKTtmdW5jdGlvbiBVbihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP0JuKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP0JuKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gQm4oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiBGbihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykudGVsZWdyYW1JY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiItOCAtMTcgMTMwIDEzMCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIix4bWxuc1hsaW5rOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNODguNzIzLDEyLjE0MkM3Ni40MTksMTcuMjM4LDIzLjY2MSwzOS4wOTEsOS4wODQsNDUuMDQ3Yy05Ljc3NiwzLjgxNS00LjA1Myw3LjM5Mi00LjA1Myw3LjM5MiAgICBzOC4zNDUsMi44NjEsMTUuNDk5LDUuMDA3YzcuMTUzLDIuMTQ2LDEwLjk2OC0wLjIzOCwxMC45NjgtMC4yMzhsMzMuNjItMjIuNjUyYzExLjkyMi04LjEwNyw5LjA2MS0xLjQzMSw2LjE5OSwxLjQzMSAgICBjLTYuMTk5LDYuMi0xNi40NTIsMTUuOTc1LTI1LjAzNiwyMy44NDRjLTMuODE1LDMuMzM4LTEuOTA4LDYuMTk5LTAuMjM4LDcuNjNjNi4xOTksNS4yNDYsMjMuMTI5LDE1Ljk3NiwyNC4wODIsMTYuNjkxICAgIGM1LjAzNywzLjU2NiwxNC45NDUsOC42OTksMTYuNDUyLTIuMTQ2YzAsMCw1Ljk2MS0zNy40MzUsNS45NjEtMzcuNDM1YzEuOTA4LTEyLjYzNywzLjgxNS0yNC4zMjEsNC4wNTMtMjcuNjU5ICAgIEM5Ny4zMDcsOC44MDQsODguNzIzLDEyLjE0Miw4OC43MjMsMTIuMTQyeiJ9KSl9ZnVuY3Rpb24gSG4oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLnRpa3Rva0ljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJtZWRpdW0iPT09ZSYmcj97aGVpZ2h0OiIzMHB4IixtaW5XaWR0aDoiMzBweCIsZmlsbDoiIzAwMCIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiMwMDAiLHN0cm9rZToibm9uZSJ9LHZlcnNpb246IjEuMSIsdmlld0JveDoiMCAwIDEyMCAxMjAiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTQ5LjY3LDQ5Ljk0YTI2LjM3LDI2LjM3LDAsMCwxLDQuNjEuMjhWNjYuMzNDNDMsNjIuNTYsMzEuNjgsNzUuNjcsMzkuNDQsODcuMTQsMTUuNDIsNzUuNDIsNDkuNjcsNDkuOTQsNDkuNjcsNDkuOTRabTI1LjU1LTM0aDQuNHMtLjg3LDcuNDUsNS41MiwxNC43NmwuMDkuMDlDODEsMjkuNjksNzQuNjIsMjEuNTYsNzUuMjIsMTUuOTFabTI2LjUsMjIuMjJWNTMuOTFDODQuNDQsNTIuMDYsNzkuODMsNDcsNzkuNjQsNDYuODV2MzIuNkM3OS4zLDEwNCw0OS40MywxMTksMjkuNDEsOTkuNjRsMCwwYTI5LjksMjkuOSwwLDAsMCwxNi4zMiw0Ljg4QzYyLjA4LDEwNC45MSw3NS4yLDkwLDc1LDc1LjU3VjQzYy4yMS4xMiwyMi4wOC01LjMsMjIuMDgtNS4zQTE0LjkzLDE0LjkzLDAsMCwwLDEwMS43MiwzOC4xM1oiLGZpbGw6IiNlZTFkNTIifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNOTcuMDksMzcuNjdWNTBhNTQuOTQsNTQuOTQsMCwwLDEtOS43Ny0xLjMzQzc4LjI1LDQ2LjUsNzUuMiw0My4wOSw3NSw0M3YzMi42YTMyLjg3LDMyLjg3LDAsMCwxLTEuOTMsMTAuMTJDNzAuMzgsOTIuNSw2Mi4yNSwxMDUsNDUuNzcsMTA0LjU2YTMwLjEsMzAuMSwwLDAsMS0xNi4zMi00Ljg4bDAsMGMtNy4xNi01LjM5LTEwLTEzLjE0LTEwLTI0LjQ1LjMxLTcuNTQsOS43NS0yNS4yNywzMC4yMy0yNS4yN1Y2Mi40M3MtNi4zNS0yLjEtMTEuNDQsMS42MmMtMy41NSwyLjc2LTUuNDQsNS40NC02LDEwLjI1LDAsMy41My44NSw4LjUyLDUuNTksMTEuODYuNTYuMzYsMS4xLjY5LDEuNjQsMSwyLjc5LDMsMTIuNTcsMy42NSwxNy4yOSwxLjExLDYuOTItMy43Miw2Ljg4LTcyLjM0LDYuODgtNzIuMzRINzUuMmEyMiwyMiwwLDAsMCw1LjMxLDEwLjg4LDI1LjgyLDI1LjgyLDAsMCwwLDQuNyw0LDI0LjQ1LDI0LjQ1LDAsMCwwLDYuNDYsNC45NCwyNC45NCwyNC45NCwwLDAsMCw1LjQyLDJaIixmaWxsOiIjZmZmIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTM5LjU2LDUyLjA2QzI4Ljk0LDU1Ljc1LDIxLjUsNjYuODgsMjEsNzguNjJjLS40MiwxMC44Nyw1LDE3LjQ0LDguMzcsMjEuMDYtNC4wOS0yLjIxLTEzLjY2LTkuMy0xMy0yNC45NC44OC0yMCwxNy4zMi0zMC4yMSwzMy4yNi0yOC4zOXYzLjU5QTM1Ljc0LDM1Ljc0LDAsMCwwLDM5LjU2LDUyLjA2WiIsZmlsbDoiIzY5YzlkMCJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik03NS4yMiwxNS45MUg2My42NVY3Ny4zNmExOS4wNiwxOS4wNiwwLDAsMS0uNzEsNi4zMywxMi44NywxMi44NywwLDAsMS03LDcuNjZjLTUsMi04Ljg3LDEuNzctMTMuNS0xLjNhMTIuNDQsMTIuNDQsMCwwLDEtMy0yLjg5YzQsMi4xLDcuNDksMi4wNiwxMS44Ni4zMWExMi43MiwxMi43MiwwLDAsMCw3LTcuNjZBMTguNSwxOC41LDAsMCwwLDU5LDczLjQ5VjEySDc1QTEzLjcsMTMuNywwLDAsMCw3NS4yMiwxNS45MVpNOTcuMDksMzQuMjV2My40MmEyNC45NCwyNC45NCwwLDAsMS01LjQyLTIsMjQuNzUsMjQuNzUsMCwwLDEtNi40Ni00Ljk0LDE4LjY2LDE4LjY2LDAsMCwwLDEuODQsMS4wNkM5MS4xMywzMy44NSw5NS4xMywzNC40Nyw5Ny4wOSwzNC4yNVoiLGZpbGw6IiM2OWM5ZDAifSkpfWZ1bmN0aW9uIFZuKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS50d2l0dGVySWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiLTM1MCAtMzUwIDE5MDAgMTkyNyIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNNzE0LjE2MyA1MTkuMjg0TDExNjAuODkgMEgxMDU1LjAzTDY2Ny4xMzcgNDUwLjg4N0wzNTcuMzI4IDBIMEw0NjguNDkyIDY4MS44MjFMMCAxMjI2LjM3SDEwNS44NjZMNTE1LjQ5MSA3NTAuMjE4TDg0Mi42NzIgMTIyNi4zN0gxMjAwTDcxNC4xMzcgNTE5LjI4NEg3MTQuMTYzWk01NjkuMTY1IDY4Ny44MjhMNTIxLjY5NyA2MTkuOTM0TDE0NC4wMTEgNzkuNjk0NEgzMDYuNjE1TDYxMS40MTIgNTE1LjY4NUw2NTguODggNTgzLjU3OUwxMDU1LjA4IDExNTAuM0g4OTIuNDc2TDU2OS4xNjUgNjg3Ljg1NFY2ODcuODI4WiJ9KSl9ZnVuY3Rpb24gJG4oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLnZpYmVySWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDMyIDMyIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0yMS4xNzYgMjdjLS4yMDgtLjA2Mi0uNjE4LS4xMy0uOTg3LS4zMDMtNi40NzYtMy4wMi0xMS4xOC03Ljk3Mi0xMy44NTMtMTUuMDgyLS44OTctMi4zODMuMDQtNC4zOTYgMi4yOTgtNS4yMi40MDUtLjE0Ny44MDItLjE1NyAxLjIuMDAyLjk2NC4zODMgMy40MDQgNC4wMjIgMy40NTggNS4xMS4wNDIuODM1LS40OCAxLjI4Ny0xIDEuNjctLjk4My43MjItLjk4OCAxLjYzOC0uNTY4IDIuNjYuOTQ4IDIuMzA4IDIuNTY3IDMuODk1IDQuNjYzIDQuOTI1Ljc2LjM3NCAxLjQ4OC4zMzcgMi4wMDctLjUxNS45MjUtMS41MTggMi4wNi0xLjQ0NSAzLjMtLjUwMi42Mi40NzMgMS4yNTMuOTM2IDEuODQ0IDEuNDUuOC43MDIgMS44MTYgMS4yODUgMS4zMzYgMi43NTQtLjUgMS41MjctMi4yMjYgMy4wNjYtMy43IDMuMDV6bS00Ljc2LTIwLjk4NmM0LjU0Ni4xNjYgOC40NiA0LjY3NyA4LjQwNiA5LjU0My0uMDA1LjQ3OC4xNTMgMS4xODUtLjUwNCAxLjE3Mi0uNjI4LS4wMTUtLjQ2NC0uNzMzLS41Mi0xLjIxLS42MDMtNS4xNjctMi43ODYtNy42MDYtNy41Mi04LjM5NC0uMzkyLS4wNjYtLjk5LjAyNi0uOTYtLjUzNS4wNDQtLjgzMy43NTQtLjUyMyAxLjA5Ny0uNTc2em02LjA3MiA4LjY3MmMtLjA0NS4zNTYuMTQ3Ljk2OC0uMzg1IDEuMDU2LS43Mi4xMTgtLjU4LS41OTUtLjY1LTEuMDUzLS40OC0zLjE0NC0xLjUtNC4yOTctNC40MjMtNS4wMDUtLjQzLS4xMDUtMS4xLS4wMzItLjk5LS43NS4xMDgtLjY4NS43MS0uNDUyIDEuMTY0LS4zOTMgMi45Mi4zOCA1LjMwNyAzLjEyNiA1LjI4NCA2LjE0NHptLTIuMjIyLS41NzNjLjAxMy4zOTgtLjAyNi44MTgtLjQ2Ljg3NC0uMzE0LjA0LS41Mi0uMjQ1LS41NTMtLjU5Ny0uMTItMS4yOTYtLjc1LTIuMDYyLTEuOTUtMi4yNy0uMzYtLjA2My0uNzEyLS4xOS0uNTQ0LS43MTUuMTEtLjM1Mi40MDgtLjM4Ny43MTItLjM5NiAxLjI5Ny0uMDM2IDIuODE1IDEuNjQ3IDIuNzk0IDMuMTAzeiJ9KSl9dmFyIFduPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXZ1NmF3eC0wIn0pKFsiZm9udC1zaXplOjE2cHg7Zm9udC13ZWlnaHQ6NjAwO21hcmdpbjo1cHggMCAxNXB4IDA7Il0pLEduPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXZ1NmF3eC0xIn0pKFsibWFyZ2luOjIxcHggMjBweCAwIDIwcHg7Il0pLHFuPUMuZC5pbWcud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXZ1NmF3eC0yIn0pKFsid2lkdGg6MjAwcHggIWltcG9ydGFudDtkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnQ7bWFyZ2luOjAgYXV0byAhaW1wb3J0YW50OyJdKTtmdW5jdGlvbiBabihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP1huKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP1huKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gWG4oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn12YXIgWW49Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWJreGUxbi0wIn0pKFsibWFyZ2luOi01cHggMCAxNXB4IDA7Zm9udC1zaXplOjE2cHg7JiBpbWd7aGVpZ2h0OjIwMHB4O2Rpc3BsYXk6YmxvY2s7bWFyZ2luOmF1dG87fSYgYXtjb2xvcjojMTExO3RleHQtZGVjb3JhdGlvbjpub25lO2ZvbnQtd2VpZ2h0OmJvbGQ7dW5pY29kZS1iaWRpOnBsYWludGV4dDsmIHNwYW57Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc2l6ZToxMnB4O3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fX0iXSksUW49Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWJreGUxbi0xIn0pKFsibWFyZ2luOjE1cHggMjBweCAwIDIwcHg7bGluZS1oZWlnaHQ6MjNweDsiXSk7ZnVuY3Rpb24gS24oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLmNhbGxiYWNrSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiLTQgLTQgNTYgNTYiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIseG1sbnNYbGluazoiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTI2LjQsMzMuOWMwLDAsNC0yLjYsNC44LTNjMC44LTAuNCwxLjctMC42LDIuMi0wLjJjMC44LDAuNSw3LjUsNC45LDguMSw1LjNjMC42LDAuNCwwLjgsMS41LDAuMSwyLjYgYy0wLjgsMS4xLTQuMyw1LjUtNS44LDUuNGMtMS41LDAtOC40LDAuNC0yMC4zLTExLjRDMy42LDIwLjcsNCwxMy44LDQsMTIuM2MwLTEuNSw0LjMtNS4xLDUuNC01LjhjMS4xLTAuOCwyLjItMC41LDIuNiwwLjEgYzAuNCwwLjYsNC44LDcuMyw1LjMsOC4xYzAuMywwLjUsMC4yLDEuNC0wLjIsMi4yYy0wLjQsMC44LTMsNC44LTMsNC44czAuNywyLjgsNSw3LjJDMjMuNSwzMy4yLDI2LjQsMzMuOSwyNi40LDMzLjl6In0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTM1LDlIMjV2NGgxMGMxLjEsMCwyLDAuOSwyLDJ2MTBoNFYxNUM0MSwxMS43LDM4LjMsOSwzNSw5eiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0yOCwxNkwyMS4zLDExTDI4LDYifSkpfWZ1bmN0aW9uIEpuKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/ZXIoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/ZXIoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBlcihlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIHRyKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS52a29udGFrdGVJY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiIwIDAgMzIgMzIiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIseG1sbnNYbGluazoiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTI2LjcxMiAxMC45NnMtLjE2Ny0uNDgtMS4yMS0uMzQ4bC0zLjQ0Ny4wMjRhLjc4NS43ODUgMCAwIDAtLjQ1NS4wNzJzLS4yMDQuMTA4LS4zLjM3YTIyLjEgMjIuMSAwIDAgMS0xLjI4IDIuNjk1Yy0xLjUzMyAyLjYxLTIuMTU2IDIuNzU0LTIuNDA3IDIuNTg3LS41ODctLjM3Mi0uNDMtMS41MS0uNDMtMi4zMjMgMC0yLjU0LjM4Mi0zLjU5Mi0uNzU2LTMuODY4LS4zNy0uMDg0LS42NDYtLjE0NC0xLjYxNi0uMTU2LTEuMjMyLS4wMTItMi4yNzQgMC0yLjg2LjI4Ny0uMzk2LjE5My0uNjk1LjYyNC0uNTE1LjY0OC4yMjcuMDM2Ljc0Mi4xNDMgMS4wMTcuNTE1IDAgMCAuMy40OS4zNDcgMS41NjguMTMgMi45ODItLjQ4IDMuMzUzLS40OCAzLjM1My0uNDY2LjI1Mi0xLjI4LS4xNjctMi40NzgtMi42MzQgMCAwLS42OTQtMS4yMjItMS4yMzMtMi41NjMtLjA5Ny0uMjUtLjI4OC0uMzgzLS4yODgtLjM4M3MtLjIxNi0uMTY4LS41MjctLjIxNmwtMy4yOC4wMjRjLS41MDQgMC0uNjgzLjIyOC0uNjgzLjIyOHMtLjE4LjE5LS4wMTIuNTg3YzIuNTYyIDYuMDIyIDUuNDgzIDkuMDQgNS40ODMgOS4wNHMyLjY3IDIuNzkgNS43IDIuNTk3aDEuMzc2Yy40MTgtLjAzNS42MzQtLjI2My42MzQtLjI2M3MuMTkyLS4yMTQuMTgtLjYxYy0uMDI0LTEuODQzLjgzOC0yLjEyLjgzOC0yLjEyLjgzOC0uMjYyIDEuOTE1IDEuNzg1IDMuMDY1IDIuNTc1IDAgMCAuODc0LjYgMS41MzIuNDY3bDMuMDY0LS4wNDhjMS42MTctLjAxLjg1LTEuMzUyLjg1LTEuMzUyLS4wNi0uMTA4LS40NDItLjkzNC0yLjI4Ni0yLjY0Ny0xLjkxNi0xLjc4NC0xLjY2NS0xLjQ5Ni42NTgtNC41ODUgMS40MTMtMS44OCAxLjk3Ni0zLjAzIDEuNzk2LTMuNTJ6In0pKX1mdW5jdGlvbiBucihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykud2F6ZUljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJtZWRpdW0iPT09ZSYmcj97aGVpZ2h0OiIzMHB4IixtaW5XaWR0aDoiMzBweCIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9LHZlcnNpb246IjEuMSIsdmlld0JveDoiMCAwIDMzMCAzMzAiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTI5OSwxNDkuNTlhMTIxLDEyMSwwLDAsMC0zNS42Mi04Ni4xNCwxMjIuOTMsMTIyLjkzLDAsMCwwLTg2LjE0LTM1LjYyYy0zNy4zLDAtNzIuMTMsMTYuODctOTYsNDYuODZhMTIxLjM1LDEyMS4zNSwwLDAsMC0yNi4xNSw3NS43OFYxNzBjMCwxMC4xNi03LDE5LjY0LTIxLDIwLjUyLTMuMzYuMy02LjIyLDIuNTctNi4yMiw1LjkyLS41OSw5LjI4LDkuMjgsMjYuMTUsMjIuNywzOS41N2ExMTUuOSwxMTUuOSwwLDAsMCwzMiwyMywzMy45MywzMy45MywwLDAsMCw2Ni42LDEyLjkzaDI4LjMyYzMuNjUsMTkuMTQsMjMuNTgsMzIuMjYsNDQuODksMjUsMTguNTUtNi4yMSwyNi42NC0yNy4yMywxOS45My00NC40QTEzNywxMzcsMCwwLDAsMjYzLDIzNS45MmExMjAuMzksMTIwLjM5LDAsMCwwLDM2LTg2LjMzWk0xNzcuMTQsMjU4LjEySDE0OS40MWEzNCwzNCwwLDAsMC02MS43Ni0xMS44NHYuM2ExMDAuOSwxMDAuOSwwLDAsMS0yNy4yNC0yMC4yM2MtOS41Ny05LjU3LTE0LjktMTguMjUtMTcuMDctMjMuODhhMzEuNzIsMzEuNzIsMCwwLDAsMTYuMjgtOS41NywzMy4zOCwzMy4zOCwwLDAsMCw5LTIzVjE0OS42OEExMDguNTYsMTA4LjU2LDAsMCwxLDI1My44MSw3M2ExMDguNDQsMTA4LjQ0LDAsMCwxLTc2LjY3LDE4NS4xWm02Ny42OS0xMzUuNDdhMTMuNDcsMTMuNDcsMCwxLDEtMTMuNDItMTMuNTIsMTMuNDMsMTMuNDMsMCwwLDEsMTMuNDIsMTMuNTJabS04MS40LDBBMTMuNDcsMTMuNDcsMCwxLDEsMTUwLDEwOS4xM2ExMy40MywxMy40MywwLDAsMSwxMy40MiwxMy41MlpNMTU0LjE1LDE2N2E3LjE2LDcuMTYsMCwwLDAtNi4yMi0zLjk0LDYuOCw2LjgsMCwwLDAtNi4yMSw5LjU3LDU0LjMsNTQuMywwLDAsMCw5OC4yNywwLDYuNzUsNi43NSwwLDAsMC02LjIxLTkuNTdoLS4zYTYuMzcsNi4zNywwLDAsMC01LjkyLDMuOTQsNDAuNTcsNDAuNTcsMCwwLDEtNzMuNDEsMFoifSkpfWZ1bmN0aW9uIHJyKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS53ZWNoYXRJY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2ZXJzaW9uOiIxLjEiLHZpZXdCb3g6IjAgMCAxMDAgMTAwIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik02NS42OCwzNy43NWMtNy40Ny4zOS0xNCwyLjY1LTE5LjI1LDcuNzdhMjIuODcsMjIuODcsMCwwLDAtNy4xLDE5LjM2Yy0yLjkyLS4zNi01LjU4LS43NS04LjI1LTFhNS4xMyw1LjEzLDAsMCwwLTIuODEuNDdjLTIuNTksMS40Ny01LjA5LDMuMTMtOCw1LC41NC0yLjQ1Ljg5LTQuNiwxLjUyLTYuNjZhMi41NCwyLjU0LDAsMCwwLTEuMTYtMy4zNWMtOS02LjMzLTEyLjc1LTE1LjgxLTkuOTItMjUuNTcsMi42Mi05LDktMTQuNSwxNy43OC0xNy4zNUM0MC4zOCwxMi41MSw1My43OCwxNi40OCw2MSwyNmEyMi4zNiwyMi4zNiwwLDAsMSw0LjY1LDExLjhabS0zNC40LTNBMy40MywzLjQzLDAsMCwwLDI4LDMxLjI2YTMuMzQsMy4zNCwwLDEsMC0uMjEsNi42NywzLjQsMy40LDAsMCwwLDMuNTItMy4yMlptMTcuOTUtMy40NWEzLjQ0LDMuNDQsMCwwLDAtMy4zNywzLjQsMy4zNSwzLjM1LDAsMCwwLDMuNDYsMy4yOCwzLjM0LDMuMzQsMCwxLDAtLjA5LTYuNjhaIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTgyLjQ3LDg0LjM0Yy0yLjM3LTEuMDYtNC41NC0yLjY0LTYuODUtMi44OHMtNC43MiwxLjA5LTcuMTMsMS4zNGEyMy44NCwyMy44NCwwLDAsMS0xOS4zMy02LjMxYy0xMC4zMS05LjU0LTguODMtMjQuMTUsMy4wOS0zMiwxMC42LTYuOTQsMjYuMTQtNC42MywzMy42MSw1LDYuNTMsOC40MSw1Ljc2LDE5LjU3LTIuMiwyNi42My0yLjMxLDItMy4xNCwzLjcyLTEuNjYsNi40MmE3LjQyLDcuNDIsMCwwLDEsLjQ3LDEuNzZaTTU1LjUzLDU4LjI2YTIuNzksMi43OSwwLDEsMC0yLjc5LTIuNjksMi44LDIuOCwwLDAsMCwyLjc5LDIuNjlaTTcyLjg5LDUyLjdhMi43NywyLjc3LDAsMCwwLTIuNzYsMi42NiwyLjc1LDIuNzUsMCwxLDAsMi43Ni0yLjY2WiJ9KSl9dmFyIG9yPUMuZC5pZnJhbWUud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLTFqbnU2bjItMCJ9KShbImhlaWdodDoyMjBweDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSAxOTBweCk7Ym9yZGVyOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246b3BhY2l0eSAuNXM7IiwiOyIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLmlzTG9hZGluZyYmT2JqZWN0KEMuYykoWyJvcGFjaXR5Oi4xNTsiXSl9LEQoKSYmT2JqZWN0KEMuYykoWyJ3aWR0aDoxMDAlO2hlaWdodDoxMDB2aDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA1N3B4KTsiXSkpO2Z1bmN0aW9uIGFyKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/aXIoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/aXIoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBpcihlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIGxyKGUpe3ZhciB0PWUuc2l6ZSxuPXZvaWQgMCE9PShuPWUuaXNJdGVtSWNvbikmJm4sZT12b2lkIDA9PT0oZT1lLmNvbG9yKT8iI2ZmZiI6ZSxyPShhPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS53aGF0c2FwcEljb24sbz1hLmlzUHJvLGE9YS5pc1NpbmdsZTtyZXR1cm4gbyYmciYmITE9PT1uP0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6cixzaXplOnR9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7dmlld0JveDoiMCAwIDMyIDMyIixzdHlsZToid2FfaGVhZGVyX2ljb24iPT09bj97d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06bj97d2lkdGg6IjMwcHgiLGhlaWdodDoiMzBweCIsZmlsbDoiIi5jb25jYXQoZSksc3Ryb2tlOiJub25lIn06Im1lZGl1bSI9PT10JiZhP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0seG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIix4bWxuc1hsaW5rOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTkuMTEgMTcuMjA1Yy0uMzcyIDAtMS4wODggMS4zOS0xLjUxOCAxLjM5YS42My42MyAwIDAgMS0uMzE1LS4xYy0uODAyLS40MDItMS41MDQtLjgxNy0yLjE2My0xLjQ0Ny0uNTQ1LS41MTYtMS4xNDYtMS4yOS0xLjQ2LTEuOTYzYS40MjYuNDI2IDAgMCAxLS4wNzMtLjIxNWMwLS4zMy45OS0uOTQ1Ljk5LTEuNDkgMC0uMTQzLS43My0yLjA5LS44MzItMi4zMzUtLjE0My0uMzcyLS4yMTQtLjQ4Ny0uNi0uNDg3LS4xODcgMC0uMzYtLjA0My0uNTMtLjA0My0uMzAyIDAtLjUzLjExNS0uNzQ2LjMxNS0uNjg4LjY0NS0xLjAzMiAxLjMxOC0xLjA2IDIuMjY0di4xMTRjLS4wMTUuOTkuNDcyIDEuOTc3IDEuMDE3IDIuNzggMS4yMyAxLjgyIDIuNTA2IDMuNDEgNC41NTQgNC4zNC42MTYuMjg3IDIuMDM1Ljg4OCAyLjcyMi44ODguODE3IDAgMi4xNS0uNTE1IDIuNDc4LTEuMzE4LjEzLS4zMy4yNDQtLjczLjI0NC0xLjA4OCAwLS4wNTggMC0uMTQ0LS4wMy0uMjE1LS4xLS4xNzItMi40MzQtMS4zOS0yLjY3OC0xLjM5em0tMi45MDggNy41OTNjLTEuNzQ3IDAtMy40OC0uNTMtNC45NDItMS40OUw3Ljc5MyAyNC40MWwxLjEzMi0zLjMzN2E4Ljk1NSA4Ljk1NSAwIDAgMS0xLjcyLTUuMjcyYzAtNC45NTUgNC4wNC04Ljk5NSA4Ljk5Ny04Ljk5NVMyNS4yIDEwLjg0NSAyNS4yIDE1LjhjMCA0Ljk1OC00LjA0IDguOTk4LTguOTk4IDguOTk4em0wLTE5Ljc5OGMtNS45NiAwLTEwLjggNC44NDItMTAuOCAxMC44IDAgMS45NjQuNTMgMy44OTggMS41NDYgNS41NzRMNSAyNy4xNzZsNS45NzQtMS45MmExMC44MDcgMTAuODA3IDAgMCAwIDE2LjAzLTkuNDU1YzAtNS45NTgtNC44NDItMTAuOC0xMC44MDItMTAuOHoifSkpfXZhciBjcj1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0yaWs1bGMtMCJ9KShbIm1hcmdpbjoyNXB4IDIwcHg7Il0pO2Z1bmN0aW9uIHVyKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/c3IoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/c3IoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBzcihlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIGZyKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS53b25kZXJjaGF0SWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIix4bWxuc1hsaW5rOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIixzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmZmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiIwIDAgMTAwIDEwMCJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTg1LDQ1Ljk0YzAtMTQuMTctMTEuNTgtMjUuNjctMjUuODctMjUuNjdoLTIwLjI1Yy0xNC4yOSwwLTI1Ljg3LDExLjQ5LTI1Ljg3LDI1LjY3djIuMjNjMCwxNC4xOCwxMS41OCwyNS42NywyNS44NywyNS42N2gyMC4yNWMxLjQyLDAsMi44MS0uMTIsNC4xNy0uMzRsNS42MSw5LjQ2YzIuOTEsNC45LDEwLjQ3LDIuODYsMTAuNDctMi44M3YtMTUuOTljMy41Mi00LjM4LDUuNjItOS45Myw1LjYyLTE1Ljk3di0yLjIzWk0zMi4xMiw1MS44N2MtMi40OSwwLTQuNS0yLjAyLTQuNS00LjUxaDBjMC0yLjQ5LDIuMDEtNC41MSw0LjUtNC41MmgwYzIuNDksMCw0LjUsMi4wMyw0LjUsNC41MiwwLDIuNDktMi4wMSw0LjUxLTQuNSw0LjUxWk00NS42Miw1MS44N2MtMi40OSwwLTQuNS0yLjAyLTQuNS00LjUxaDBjMC0yLjQ5LDIuMDEtNC41MSw0LjUtNC41MmgwYzIuNDksMCw0LjUsMi4wMyw0LjUsNC41MiwwLDIuNDktMi4wMSw0LjUxLTQuNSw0LjUxWk01NC43Miw0Ny44MWMtLjI1LS41NywwLTEuMjMuNTctMS40OGwzLjg5LTEuNzNjLjI2LS4xMS40Ni0uMzIuNTctLjU3bDEuNzItMy45Yy4xMS0uMjYuMzItLjQ2LjU3LS41Ny41Ny0uMjUsMS4yMywwLDEuNDcuNTdsMS43MiwzLjljLjExLjI1LjMyLjQ2LjU3LjU3bDMuODksMS43M2MuMjYuMTEuNDYuMzIuNTcuNTcuMjUuNTcsMCwxLjIzLS41NywxLjQ4bC0zLjg5LDEuNzNjLS4yNS4xMS0uNDYuMzItLjU3LjU3bC0xLjcyLDMuOWMtLjExLjI2LS4zMi40Ni0uNTcuNTctLjU3LjI1LTEuMjIsMC0xLjQ3LS41N2wtMS43Mi0zLjljLS4xMS0uMjYtLjMyLS40Ni0uNTctLjU3bC0zLjg5LTEuNzNjLS4yNi0uMTEtLjQ2LS4zMi0uNTctLjU3WiJ9KSl9dmFyIGRyPUMuZC51bC53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtbDAzMGFkLTAifSkoWyJkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4O3BhZGRpbmc6MTVweDttYXJnaW46MDtsaXN0LXN0eWxlLXR5cGU6bm9uZTttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSAyMjRweCk7b3ZlcmZsb3c6YXV0bzsmOjotd2Via2l0LXNjcm9sbGJhcntoZWlnaHQ6NXB4O3dpZHRoOjVweDttYXJnaW4tYm90dG9tOjVweDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjAyKTt9Jjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7bWFyZ2luLWJvdHRvbToxMHB4O30mOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOnJnYmEoNTcsNTYsMTgsLjA3KTstd2Via2l0LWJvcmRlci1yYWRpdXM6M3B4O30iLCIiXSxEKCkmJk9iamVjdChDLmMpKFsibWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gMTEwcHgpOyJdKSkscHI9Qy5kLmEud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLWwwMzBhZC0xIn0pKFsiIiwiIl0sZnVuY3Rpb24oZSl7ZT1lLmNvbG9yO3JldHVybiBPYmplY3QoQy5jKShbImhlaWdodDo2NXB4O2JhY2tncm91bmQtY29sb3I6IiwiMTA7Ym9yZGVyLXJhZGl1czoxMnB4O2JvcmRlcjoxcHggc29saWQgIiwiMzA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjVweCAxMHB4O3RleHQtZGVjb3JhdGlvbjpub25lO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246MC4xcyBhbGw7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1kZWNvcmF0aW9uOm5vbmUgIWltcG9ydGFudDsmOmJlZm9yZXtjb250ZW50OicnO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt3aWR0aDoycHg7aGVpZ2h0OjMyLjVweDtiYWNrZ3JvdW5kLWNvbG9yOiIsIjt9Jjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYgIWltcG9ydGFudDtib3gtc2hhZG93OnJnYigwIDAgMCAvIDglKSAycHggMnB4IDZweDt9Il0sZSxlLGUpfSksbXI9Qy5kLmltZy53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtbDAzMGFkLTIifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLmJ1dHRvbkJvcmRlclJhZGl1cyxlPWUuYm9yZGVyO3JldHVybiBPYmplY3QoQy5jKShbIndpZHRoOjQ1cHg7aGVpZ2h0OjQ1cHg7bWluLXdpZHRoOjQ1cHg7Ym9yZGVyLXJhZGl1czoiLCIlO29iamVjdC1maXQ6Y292ZXI7Ym9yZGVyOiIsIjsiXSx0LGUmJiIycHggc29saWQgI2ZmZmZmZiIpfSksaHI9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtbDAzMGFkLTMifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLmluZGljYXRvclBvc2l0aW9uLGU9ZS5taXJyb3I7cmV0dXJuIE9iamVjdChDLmMpKFsicG9zaXRpb246cmVsYXRpdmU7d2lkdGg6NDVweDtoZWlnaHQ6NDVweDttaW4td2lkdGg6NDVweDsmOmFmdGVye2NvbnRlbnQ6Jyc7d2lkdGg6MTBweDtoZWlnaHQ6MTBweDtiYWNrZ3JvdW5kLWNvbG9yOiM0ZGMyNDc7Ym9yZGVyLXJhZGl1czo1MCU7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOiIsInB4OyIsIiBib3gtc2hhZG93OjJweCAycHggNnB4IHJnYmEoMCwwLDAsMTAlKTt9Il0sdCxlP09iamVjdChDLmMpKFsibGVmdDoiLCJweDsiXSx0KTpPYmplY3QoQy5jKShbInJpZ2h0OiIsInB4OyJdLHQpKX0pLGdyPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLWwwMzBhZC00In0pKFsiZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDsiXSksYnI9Qy5kLmg0LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1sMDMwYWQtNSJ9KShbImNvbG9yOiM0ZDUxNTc7Zm9udC1zaXplOjE0cHg7bWFyZ2luOjA7bGluZS1oZWlnaHQ6MTZweDtmb250LXdlaWdodDo2MDA7IiwiIHRleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt3aWR0aDoxNzBweDsiXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3I/T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOnJpZ2h0OyJdKTpPYmplY3QoQy5jKShbInRleHQtYWxpZ246bGVmdDsiXSl9KSx5cj1DLmQucC53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtbDAzMGFkLTYifSkoWyJjb2xvcjojOTg5YjlmO2ZvbnQtc2l6ZToxMnB4O21hcmdpbjo1cHggMCAwIDA7bGluZS1oZWlnaHQ6MTRweDsiLCIgdGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjE3MHB4OyJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLm1pcnJvcj9PYmplY3QoQy5jKShbInRleHQtYWxpZ246cmlnaHQ7Il0pOk9iamVjdChDLmMpKFsidGV4dC1hbGlnbjpsZWZ0OyJdKX0pO2Z1bmN0aW9uIHZyKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/d3IoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/d3IoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiB3cihlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIHhyKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5haUljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIseG1sbnNYbGluazoiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsc3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZmZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDQ4IDQ4In0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtmaWxsOiIjZmZmIixkOiJNMzguOTUsMTkuNTNjLS4yMy0uMDgtLjQyLS4yNi0uNDktLjUtMS4zMy00LjQ1LTQuNzMtNi4yMS0xMC4wOS02LjczLS4xOS0uMDItLjM3LS4xLS41MS0uMjMtLjU5LS41NC0xLjQ4LS44Ni0yLjgtLjk3LS4xNC0uMDEtLjI1LS4xMi0uMjctLjI2bC0uMjMtMS43MWMtLjAyLS4xMy4wNi0uMjYuMTgtLjMyLjc4LS4zMiwxLjMtMS4xMywxLjE4LTIuMDUtLjExLS44OC0uODMtMS41Ny0xLjctMS42Ny0xLjE3LS4xMy0yLjE2Ljc4LTIuMTYsMS45MywwLC44MS40OSwxLjUsMS4xOSwxLjc5LjEzLjA1LjIuMTguMTguMzJsLS4yMywxLjcxYy0uMDIuMTQtLjEzLjI1LS4yNy4yNi0xLjMyLjEtMi4yMS40My0yLjguOTctLjE0LjEzLS4zMi4yMS0uNTEuMjMtNS4zNi41Mi04Ljc1LDIuMjgtMTAuMDksNi43My0uMDcuMjQtLjI1LjQyLS40OS41LTEuNTYuNTMtMi4yNywxLjc2LTIuMjcsNC42N3MuNzIsNC4xNSwyLjI3LDQuNjdjLjIzLjA4LjQyLjI2LjQ5LjUsMS4zNiw0LjU1LDQuODgsNi4yOCwxMC40NCw2Ljc2aC0uMDZjLjI4LjAyLjUxLjI1LjUxLjUydjIuNjNjMCwuMzIuMzEuNTQuNjEuNDMsMS44OS0uNjksNy43OS0yLjg1LDEyLjMtNC43aDBjMi41NS0xLjAyLDQuMjctMi43Nyw1LjEzLTUuNjQuMDctLjI0LjI1LS40Mi40OS0uNSwxLjU2LS41MywyLjI3LTEuNzYsMi4yNy00LjY4cy0uNzItNC4xNS0yLjI3LTQuNjdaTTM0Ljc4LDI4Ljk1Yy0uMzYuOTEtLjg2LDEuNTYtMS41OCwyLjA2LTEuNjEsMS4xMy00LjUzLDEuNjUtOS4yMSwxLjY1cy03LjYtLjUzLTkuMjEtMS42NWMtLjcxLS41LTEuMjEtMS4xNi0xLjU4LTIuMDYtLjQ3LTEuMTctLjctMi43Ni0uNy00Ljc0cy4yNC0zLjU4LjctNC43NGMuMzYtLjkxLjg2LTEuNTYsMS41OC0yLjA2LDEuNjEtMS4xMyw0LjUzLTEuNjUsOS4yMS0xLjY1czcuNi41Miw5LjIxLDEuNjVjLjcxLjUsMS4yMSwxLjE2LDEuNTgsMi4wNi40NywxLjE3LjcsMi43Ni43LDQuNzRzLS4yNCwzLjU4LS43LDQuNzRaIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZmlsbDoiI2ZmZiIsZDoiTTE4Ljk1LDIxLjk3Yy0xLjIxLDAtMS40NywxLjExLTEuNDcsMi4yNHMuMjYsMi4yNCwxLjQ3LDIuMjQsMS40Ny0xLjExLDEuNDctMi4yNC0uMjYtMi4yNC0xLjQ3LTIuMjRaIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZmlsbDoiI2ZmZiIsZDoiTTI5LjA1LDIxLjk3Yy0xLjIxLDAtMS40NywxLjExLTEuNDcsMi4yNHMuMjYsMi4yNCwxLjQ3LDIuMjQsMS40Ny0xLjExLDEuNDctMi4yNC0uMjYtMi4yNC0xLjQ3LTIuMjRaIn0pKX12YXIga3I9Qy5kLmlmcmFtZS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWdlamdrbS0wIn0pKFsiYm9yZGVyOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246b3BhY2l0eSAuNXM7d2lkdGg6MTA4JTtoZWlnaHQ6MTAwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTJweCk7IiwiOyIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLmlzTG9hZGluZyYmT2JqZWN0KEMuYykoWyJvcGFjaXR5Oi4wOyJdKX0sRCgpJiZPYmplY3QoQy5jKShbImhlaWdodDoxMDB2aDtoZWlnaHQ6Y2FsYygodmFyKC0tdmgpICogMTAwKSAtIDUwcHgpO21heC1oZWlnaHQ6Y2FsYygxMDAlIC0gNTBweCk7d2lkdGg6Y2FsYygxMDAlICsgMTlweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTExcHgpOyJdKSk7ZnVuY3Rpb24gU3IoZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9DcihlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9DcihlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIENyKGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9dmFyIEVyPSJmcm9tLWdiLXdpZGdldCIsT3I9ZnVuY3Rpb24oKXtyZXR1cm4iaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifSxqcj1mdW5jdGlvbiBlKHQpe3ZhciBuPTE8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO3dpbmRvdy5HQkFJPyh0LmlkPUVyLGNvbnNvbGUubG9nKCdHQiBzZW5kIGV2ZW50OiAiaW5pdCBhcHAiJyx0KSx3aW5kb3cuR0JBSS5pbml0KHtzZXR0aW5nczp0fSkpOihjb25zb2xlLmVycm9yKCJ3aW5kb3cuR0JBSSBub3QgZm91bmQuLi4iLHdpbmRvdy5HQkFJKSxuPDE1P3NldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zb2xlLmxvZygid2luZG93LkdCQUkgbG9hZGlnIGF0dGVtcHQgIi5jb25jYXQobisxLCI6IHJldHJ5aW5nIGluaXRQb3B1cC4uLiIpKSxlKHQsbisxKX0sMWUzKTpjb25zb2xlLmVycm9yKCJ3aW5kb3cuR0JBSSBhdHRlbXB0cyBmaW5pc2hlZC4iKSl9LEFyPWZ1bmN0aW9uKCl7SXIoe2lzX3Nob3dfcG9wdXA6ITB9KX0sUHI9ZnVuY3Rpb24oKXtJcih7aXNfc2hvd19wb3B1cDohMX0pfSxJcj1mdW5jdGlvbihlKXtlLmlkPUVyLGNvbnNvbGUubG9nKCdHQiBzZW5kIGV2ZW50OiAidXBkYXRlIHNldHRpbmdzIicsZSksd2luZG93LmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJHZXRidXR0b25BaVVwZGF0ZVN0YXRlIix7ZGV0YWlsOmV9KSl9O2Z1bmN0aW9uIF9yKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/enIoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/enIoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiB6cihlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIFRyKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5rYWthb3RhbGtJY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2ZXJzaW9uOiIxLjEiLHZpZXdCb3g6Ii0yNCAtMjQgMjUyIDIzNiIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtmaWxsUnVsZToiZXZlbm9kZCIsY2xpcFJ1bGU6ImV2ZW5vZGQiLGQ6Ik0wLjQzNzUgODAuMjM0NEMwLjQzNzUgMzYuMDA4OCA0NS45MDgyIDAuMTU2MjUgMTAyIDAuMTU2MjVDMTU4LjA5MiAwLjE1NjI1IDIwMy41NjIgMzYuMDA4OCAyMDMuNTYyIDgwLjIzNDRDMjAzLjU2MiAxMjQuNDYxIDE1OC4wOTIgMTYwLjMxMiAxMDIgMTYwLjMxMkM5NS44NDM4IDE2MC4zMTIgODkuODE1NCAxNTkuODgyIDgzLjk2MDkgMTU5LjA1M0M3OC4xMDA2IDE2My4xODMgNDQuMjQyMiAxODYuOTY2IDQxLjA0NjkgMTg3LjQxMkM0MS4wNDY5IDE4Ny40MTIgMzkuNzM2MyAxODcuOTIyIDM4LjYyMjEgMTg3LjI2NkMzNy41MDc4IDE4Ni42MDkgMzcuNzEgMTg0Ljg4OSAzNy43MSAxODQuODg5QzM4LjA0NTkgMTgyLjU5OSA0Ni40ODczIDE1My40NDggNDguMDQzIDE0OC4wODNDMTkuNDQ3MyAxMzMuOTE2IDAuNDM3NSAxMDguODI3IDAuNDM3NSA4MC4yMzQ0Wk0zOS45ODgzIDEwMi41OTNDMzkuOTg4MyAxMDUuNjc5IDQyLjYxNjIgMTA4LjE4OCA0NS44NDc3IDEwOC4xODhDNDkuMDc5MSAxMDguMTg4IDUxLjcwNyAxMDUuNjc5IDUxLjcwNyAxMDIuNTkzVjY3Ljc4MzJINjAuODQ5NkM2NC4wMTk1IDY3Ljc4MzIgNjYuNTk5NiA2NS4yMDkgNjYuNTk5NiA2Mi4wNDU5QzY2LjU5OTYgNTguODgyOCA2NC4wMjA1IDU2LjMwODYgNjAuODQ5NiA1Ni4zMDg2SDMwLjg0NTdDMjcuNjc1OCA1Ni4zMDg2IDI1LjA5NTcgNTguODgyOCAyNS4wOTU3IDYyLjA0NTlDMjUuMDk1NyA2NS4yMDkgMjcuNjc0OCA2Ny43ODMyIDMwLjg0NTcgNjcuNzgzMkgzOS45ODgzVjEwMi41OTNaTTkyLjM1MDYgMTA1LjUyNEM5Mi45MTQxIDEwNy4xMiA5NC43ODMyIDEwOC4xMTIgOTcuMjI2NiAxMDguMTEyQzk4LjUxMTYgMTA4LjExMyA5OS43ODE5IDEwNy44MzggMTAwLjk1MSAxMDcuMzA1QzEwMi41NjYgMTA2LjU2MiAxMDQuMTE5IDEwNC41MTIgMTAyLjMzNiA5OC45NzI3TDg4LjMyNjIgNjIuMDk4NkM4Ny4zMzY5IDU5LjI4NzEgODQuMzM3OSA1Ni4zOTU1IDgwLjUxMDcgNTYuMzA5NkM3Ni42OTQzIDU2LjM5NjUgNzMuNjk1MyA1OS4yODcxIDcyLjcwOCA2Mi4wOTI4TDU4LjY5MjQgOTguOTgzNEM1Ni45MTMxIDEwNC41MSA1OC40NjU4IDEwNi41NTkgNjAuMDgxMSAxMDcuMzA0QzYxLjI1IDEwNy44MzggNjIuNTIwNCAxMDguMTE0IDYzLjgwNTcgMTA4LjExMkM2Ni4yNDkgMTA4LjExMiA2OC4xMTcyIDEwNy4xMjEgNjguNjc4NyAxMDUuNTI4TDcxLjU4MiA5Ny45Mjc3TDg5LjQ0OTIgOTcuOTI4N0w5Mi4zNTA2IDEwNS41MjRaTTgwLjUxNTYgNzAuOTIzOEw4Ni4zNjgyIDg3LjU0OThINzQuNjYzMUw4MC41MTU2IDcwLjkyMzhaTTEwNi4xNSAxMDEuOTYzQzEwNi4xNSAxMDQuOTI0IDEwOC42NjkgMTA3LjMzNCAxMTEuNzY2IDEwNy4zMzRIMTMwLjU2NEMxMzMuNjYxIDEwNy4zMzQgMTM2LjE4IDEwNC45MjQgMTM2LjE4IDEwMS45NjNDMTM2LjE4IDk5LjAwMiAxMzMuNjYxIDk2LjU5MTggMTMwLjU2NCA5Ni41OTE4SDExOC4xMTNWNjIuMTY4QzExOC4xMTMgNTguOTM2NSAxMTUuNDMgNTYuMzA4NiAxMTIuMTMyIDU2LjMwODZDMTA4LjgzNCA1Ni4zMDg2IDEwNi4xNSA1OC45MzY1IDEwNi4xNSA2Mi4xNjhWMTAxLjk2M1pNMTM4LjQ1OSAxMDIuMjUzQzEzOC40NTkgMTA1LjQ4NCAxNDEuMDg3IDEwOC4xMTIgMTQ0LjMxOCAxMDguMTEyQzE0NS44NzIgMTA4LjExIDE0Ny4zNjIgMTA3LjQ5MiAxNDguNDYxIDEwNi4zOTNDMTQ5LjU2IDEwNS4yOTQgMTUwLjE3OCAxMDMuODA0IDE1MC4xOCAxMDIuMjVWODkuNDY1OEwxNTIuMjEzIDg3LjQzMjZMMTY1Ljk1NCAxMDUuNjRDMTY2LjQ5OCAxMDYuMzY2IDE2Ny4yMDUgMTA2Ljk1NiAxNjguMDE4IDEwNy4zNkMxNjguODMxIDEwNy43NjUgMTY5LjcyNyAxMDcuOTczIDE3MC42MzUgMTA3Ljk2OUMxNzEuOTA3IDEwNy45NzIgMTczLjE0NiAxMDcuNTU2IDE3NC4xNTkgMTA2Ljc4NkMxNzQuNzc1IDEwNi4zMjQgMTc1LjI5MyAxMDUuNzQ1IDE3NS42ODMgMTA1LjA4MkMxNzYuMDczIDEwNC40MTkgMTc2LjMyOCAxMDMuNjg0IDE3Ni40MzMgMTAyLjkyMkMxNzYuNTQyIDEwMi4xNiAxNzYuNDk5IDEwMS4zODQgMTc2LjMwNiAxMDAuNjM5QzE3Ni4xMTMgOTkuODkzNCAxNzUuNzczIDk5LjE5NCAxNzUuMzA4IDk4LjU4MTFMMTYwLjg4NSA3OS40NzM2TDE3NC4yMzcgNjYuMTIzQzE3NS4xNTUgNjUuMjA0MSAxNzUuNjE1IDYzLjkzNzUgMTc1LjUzIDYyLjU1NTdDMTc1LjQ0NiA2MS4xODU2IDE3NC44MzQgNTkuODY2MiAxNzMuODA4IDU4Ljg0MDhDMTcyLjcwNyA1Ny43NDEyIDE3MS4yMzggNTcuMTEwNCAxNjkuNzc1IDU3LjExMDRDMTY4LjUyMSA1Ny4xMTA0IDE2Ny4zNjYgNTcuNTczMiAxNjYuNTI1IDU4LjQxNDFMMTUwLjE3OCA3NC43NjE3VjYyLjE2OEMxNTAuMTc4IDU4LjkzNjUgMTQ3LjU1IDU2LjMwODYgMTQ0LjMxOCA1Ni4zMDg2QzE0MS4wODcgNTYuMzA4NiAxMzguNDU5IDU4LjkzNjUgMTM4LjQ1OSA2Mi4xNjhWMTAyLjI1M1oifSkpfWZ1bmN0aW9uIExyKGUpe3ZhciB0PXZvaWQgMD09PSh0PWUuYWN0aXZhdG9ySWNvbik/bnVsbDp0LGU9ZS5idXR0b25JbWFnZSxuPShvPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5hY3RpdmF0b3JTaXplLHI9by5idXR0b25Cb3JkZXJSYWRpdXMsbz1vLmJ1dHRvblN0eWxlO3JldHVybiBlP0guYS5jcmVhdGVFbGVtZW50KCJpbWciLHtzcmM6IiIuY29uY2F0KGUpLHN0eWxlOnt3aWR0aDoiIi5jb25jYXQoTWF0aC5taW4oLjU1Km4sNDApLCJweCIpLGhlaWdodDoiIi5jb25jYXQoTWF0aC5taW4oLjU1Km4sNDApLCJweCIpLG9iamVjdEZpdDoiY292ZXIiLGJvcmRlclJhZGl1czoiIi5jb25jYXQoLjM1KnIsInB4Iil9fSk6InNtaWxlIj09PXQ/SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJjbGFzc2ljIiE9PW8/e3dpZHRoOiI4NSUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiI2NSUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIixkaXNwbGF5OiJibG9jayIsbWFyZ2luOiJhdXRvIixtYXJnaW5MZWZ0OiIyMCUifSx2aWV3Qm94OiIwIDAgMzAgMzAiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZmlsbFJ1bGU6ImV2ZW5vZGQiLGNsaXBSdWxlOiJldmVub2RkIixkOiJNNy40NjIwNCAyLjAyNzQ2QzkuNzUwMjcgMC42OTgzMjcgMTIuMzQ5NSAtMC4wMDExODM3NyAxNC45OTU1IDIuNjAzNzNlLTA2QzE3LjMwMzEgLTAuMDAxMzU3MzQgMTkuNTc5OSAwLjUzMDAyOCAyMS42NDg3IDEuNTUyNzlDMjMuNzE3NCAyLjU3NTU2IDI1LjUyMjMgNC4wNjIxIDI2LjkyMjcgNS44OTY3MUMyOC4zMjMyIDcuNzMxMzEgMjkuMjgxNSA5Ljg2NDQ3IDI5LjcyMyAxMi4xMzAxQzMwLjE2NDUgMTQuMzk1OCAzMC4wNzczIDE2LjczMjggMjkuNDY4MiAxOC45NTkyQzI4Ljg1OTEgMjEuMTg1NiAyNy43NDQ2IDIzLjI0MTQgMjYuMjExMyAyNC45NjY1QzI0LjY3OCAyNi42OTE2IDIyLjc2NzUgMjguMDM5NSAyMC42MjgzIDI4LjkwNTJDMTguNDg5MSAyOS43NzA4IDE2LjE3OSAzMC4xMzEgMTMuODc3OSAyOS45NTc2QzExLjU3NjggMjkuNzg0MiA5LjM0Njc5IDI5LjA4MTkgNy4zNjEzOSAyNy45MDU1TDEuODI5MzcgMjkuOTE4MkMxLjY3OTc5IDI5Ljk3MTkgMS41MjIwOSAyOS45OTk2IDEuMzYzMTQgMzBDMS4xNDQwNyAyOS45OTk4IDAuOTI4MjY0IDI5Ljk0NjkgMC43MzM5OTcgMjkuODQ1NkMwLjUzOTczIDI5Ljc0NDMgMC4zNzI3MjggMjkuNTk3NyAwLjI0NzEzNCAyOS40MTgxQzAuMTIxNTQgMjkuMjM4NiAwLjA0MTA1NDYgMjkuMDMxNCAwLjAxMjQ5NDQgMjguODE0MUMtMC4wMTYwNjU3IDI4LjU5NjkgMC4wMDgxNDA4MyAyOC4zNzU5IDAuMDgzMDYzNiAyOC4xN0wyLjA5Mzg0IDIyLjYzNjRDMC43NDQ5NDQgMjAuMzU5MyAwLjAyMjcwOSAxNy43NjU2IDAuMDAwNTI2ODMyIDE1LjExODlDLTAuMDIxNjU1MyAxMi40NzIxIDAuNjU3MDA3IDkuODY2NzEgMS45Njc1NSA3LjU2NzMzQzMuMjc4MDkgNS4yNjc5NSA1LjE3MzggMy4zNTY1OCA3LjQ2MjA0IDIuMDI3NDZaTTEwLjkwNiA4LjAzNjQ0QzkuODc0NSA4LjAzNjQ0IDkuMDM3ODcgOC44NzMzNyA5LjAzNzg3IDkuOTA0NjFDOS4wMzc4NyAxMC45MzY4IDkuODc0NSAxMS43NzMxIDEwLjkwNiAxMS43NzM0QzExLjkzNzMgMTEuNzczNCAxMi43NzM5IDEwLjkzNjggMTIuNzczOSA5LjkwNDYxQzEyLjc3MzkgOC44NzMwNiAxMS45MzczIDguMDM2NDQgMTAuOTA2IDguMDM2NDRaTTE5LjM3NzQgOC4wMzY0NEMxOC4zNDYyIDguMDM2NDQgMTcuNTA4NyA4Ljg3MzM3IDE3LjUwODcgOS45MDQ2MUMxNy41MDg3IDEwLjkzNjggMTguMzQ2NSAxMS43NzMxIDE5LjM3NzQgMTEuNzczNEMyMC40MDkgMTEuNzczNCAyMS4yNDU2IDEwLjkzNjggMjEuMjQ1NiA5LjkwNDYxQzIxLjI0NTYgOC44NzMwNiAyMC40MDg3IDguMDM2NDQgMTkuMzc3NCA4LjAzNjQ0Wk0xNS4wMTc4IDIxLjk2MzVDMTguMDU2NCAyMS45NjM1IDIwLjc2NzggMjAuMjMzNiAyMS45MjU2IDE3LjU1NjNDMjIuMTIzOCAxNy4wOTggMjEuOTEyOSAxNi41NjYgMjEuNDU0MSAxNi4zNjhDMjAuOTk2NSAxNi4xNjkyIDIwLjQ2NDQgMTYuMzgwNCAyMC4yNjYyIDE2LjgzODZDMTkuMzk0NiAxOC44NTQxIDE3LjMzNDUgMjAuMTU2MiAxNS4wMTc4IDIwLjE1NjJDMTIuNjQ3NCAyMC4xNTYyIDEwLjU3NTIgMTguODU1IDkuNzM4NjIgMTYuODQxQzkuNTk0MzEgMTYuNDkzMSA5LjI1ODEgMTYuMjgzNCA4LjkwMzggMTYuMjgzNEM4Ljc4ODEyIDE2LjI4MzQgOC42NzA2MiAxNi4zMDU3IDguNTU3MzQgMTYuMzUyNEM4LjA5NjEgMTYuNTQ0IDcuODc3NjggMTcuMDczIDguMDY5MjkgMTcuNTM0QzkuMTg3IDIwLjIyNDkgMTEuOTE0NCAyMS45NjM1IDE1LjAxNzggMjEuOTYzNVoiLGZpbGw6IndoaXRlIn0pKToic3F1YXJlX21lc3NhZ2UiPT09dD9ILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6ImNsYXNzaWMiIT09bz97d2lkdGg6Ijg1JSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjY1JSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUiLGRpc3BsYXk6ImJsb2NrIixtYXJnaW46ImF1dG8iLG1hcmdpbkxlZnQ6IjIwJSJ9LHZpZXdCb3g6IjAgMCAzMiAzMiIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMjMuOTU0NSAySDcuMDQ1NDVDNS4xNzc1NyAyLjAwMjE3IDMuMzg2ODMgMi43MjEyIDIuMDY2MDQgMy45OTkzOEMwLjc0NTI0MyA1LjI3NzU2IDAuMDAyMjM3NDQgNy4wMTA1MiAwIDguODE4MTRWMTkuNzI3MkMwLjAwMjA0OTU2IDIxLjI5ODMgMC41NjM3NjMgMjIuODIwOCAxLjU5MDQ3IDI0LjAzNzlDMi42MTcxNyAyNS4yNTUxIDQuMDQ2MDggMjYuMDkyNCA1LjYzNjM2IDI2LjQwODlWMzAuNjM2MkM1LjYzNjMzIDMwLjg4MyA1LjcwNTU0IDMxLjEyNTMgNS44MzY2MyAzMS4zMzcxQzUuOTY3NzIgMzEuNTQ4OSA2LjE1NTc2IDMxLjcyMjIgNi4zODA2OSAzMS44Mzg3QzYuNjA1NjMgMzEuOTU1MiA2Ljg1OTAxIDMyLjAxMDQgNy4xMTM4MiAzMS45OTg0QzcuMzY4NjIgMzEuOTg2NCA3LjYxNTI5IDMxLjkwNzcgNy44Mjc1IDMxLjc3MDdMMTUuOTIyNyAyNi41NDUzSDIzLjk1NDVDMjUuODIyNCAyNi41NDMxIDI3LjYxMzIgMjUuODI0MSAyOC45MzQgMjQuNTQ1OUMzMC4yNTQ4IDIzLjI2NzcgMzAuOTk3OCAyMS41MzQ4IDMxIDE5LjcyNzJWOC44MTgxNEMzMC45OTc4IDcuMDEwNTIgMzAuMjU0OCA1LjI3NzU2IDI4LjkzNCAzLjk5OTM4QzI3LjYxMzIgMi43MjEyIDI1LjgyMjQgMi4wMDIxNyAyMy45NTQ1IDJaTTIxLjEzNjQgMTguMzYzNUg5Ljg2MzY0QzkuNDg5OTIgMTguMzYzNSA5LjEzMTUxIDE4LjIxOTkgOC44NjcyNiAxNy45NjQxQzguNjAzIDE3LjcwODQgOC40NTQ1NSAxNy4zNjE2IDguNDU0NTUgMTYuOTk5OUM4LjQ1NDU1IDE2LjYzODIgOC42MDMgMTYuMjkxNCA4Ljg2NzI2IDE2LjAzNTdDOS4xMzE1MSAxNS43Nzk5IDkuNDg5OTIgMTUuNjM2MyA5Ljg2MzY0IDE1LjYzNjNIMjEuMTM2NEMyMS41MTAxIDE1LjYzNjMgMjEuODY4NSAxNS43Nzk5IDIyLjEzMjcgMTYuMDM1N0MyMi4zOTcgMTYuMjkxNCAyMi41NDU1IDE2LjYzODIgMjIuNTQ1NSAxNi45OTk5QzIyLjU0NTUgMTcuMzYxNiAyMi4zOTcgMTcuNzA4NCAyMi4xMzI3IDE3Ljk2NDFDMjEuODY4NSAxOC4yMTk5IDIxLjUxMDEgMTguMzYzNSAyMS4xMzY0IDE4LjM2MzVaTTIzLjk1NDUgMTIuOTA5SDcuMDQ1NDVDNi42NzE3NCAxMi45MDkgNi4zMTMzMyAxMi43NjUzIDYuMDQ5MDggMTIuNTA5NkM1Ljc4NDgyIDEyLjI1MzkgNS42MzYzNiAxMS45MDcgNS42MzYzNiAxMS41NDU0QzUuNjM2MzYgMTEuMTgzNyA1Ljc4NDgyIDEwLjgzNjkgNi4wNDkwOCAxMC41ODEyQzYuMzEzMzMgMTAuMzI1NCA2LjY3MTc0IDEwLjE4MTggNy4wNDU0NSAxMC4xODE4SDIzLjk1NDVDMjQuMzI4MyAxMC4xODE4IDI0LjY4NjcgMTAuMzI1NCAyNC45NTA5IDEwLjU4MTJDMjUuMjE1MiAxMC44MzY5IDI1LjM2MzYgMTEuMTgzNyAyNS4zNjM2IDExLjU0NTRDMjUuMzYzNiAxMS45MDcgMjUuMjE1MiAxMi4yNTM5IDI0Ljk1MDkgMTIuNTA5NkMyNC42ODY3IDEyLjc2NTMgMjQuMzI4MyAxMi45MDkgMjMuOTU0NSAxMi45MDlaIixmaWxsOiJ3aGl0ZSJ9KSk6InJvdW5kX21lc3NhZ2UiPT09dD9ILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6ImNsYXNzaWMiIT09bz97d2lkdGg6Ijg1JSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjY1JSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUiLGRpc3BsYXk6ImJsb2NrIixtYXJnaW46ImF1dG8iLG1hcmdpbkxlZnQ6IjIwJSJ9LHZpZXdCb3g6IjAgMCAzMiAzMiIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTYgMUM3LjcyOTM4IDEgMSA3LjcyOTM4IDEgMTZWMzAuMDYyNUMxIDMwLjU4IDEuNDIgMzEgMS45Mzc1IDMxSDE2QzI0LjI3MDYgMzEgMzEgMjQuMjcwNiAzMSAxNkMzMSA3LjcyOTM4IDI0LjI3MDYgMSAxNiAxWk0xNi45Mzc1IDE5Ljc1SDkuNDM3NUM4LjkyIDE5Ljc1IDguNSAxOS4zMyA4LjUgMTguODEyNUM4LjUgMTguMjk1IDguOTIgMTcuODc1IDkuNDM3NSAxNy44NzVIMTYuOTM3NUMxNy40NTUgMTcuODc1IDE3Ljg3NSAxOC4yOTUgMTcuODc1IDE4LjgxMjVDMTcuODc1IDE5LjMzIDE3LjQ1NSAxOS43NSAxNi45Mzc1IDE5Ljc1Wk0yMi41NjI1IDE0LjEyNUg5LjQzNzVDOC45MiAxNC4xMjUgOC41IDEzLjcwNSA4LjUgMTMuMTg3NUM4LjUgMTIuNjcgOC45MiAxMi4yNSA5LjQzNzUgMTIuMjVIMjIuNTYyNUMyMy4wOCAxMi4yNSAyMy41IDEyLjY3IDIzLjUgMTMuMTg3NUMyMy41IDEzLjcwNSAyMy4wOCAxNC4xMjUgMjIuNTYyNSAxNC4xMjVaIixmaWxsOiJ3aGl0ZSJ9KSk6ImRpYWxvZyI9PT10P0guYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToiY2xhc3NpYyIhPT1vP3t3aWR0aDoiODUlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiNjUlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSIsZGlzcGxheToiYmxvY2siLG1hcmdpbjoiYXV0byIsbWFyZ2luTGVmdDoiMjAlIn0sdmlld0JveDoiMCAwIDMyIDMyIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0yNC45ODU3IDMwLjM2MTZDMjUuMjUxNSAzMC4zNjE2IDI1LjUxMzggMzAuNDYyNyAyNS43MTMzIDMwLjY1NTRDMjYuOTg4NyAzMS44ODcgMjguODQ5IDMyLjI5NyAzMC41MDI5IDMxLjc4MzhDMjkuNDM4NSAyOS41NjY0IDI5LjI5MSAyNy4wMjYxIDMwLjExNTggMjQuNjc0QzMxLjEzOTQgMjEuNzQ3NiAzMS4zOTYgMTguODE0NCAzMC4yMzEgMTUuODcyN0MyOS4yMDc1IDEzLjI4ODQgMjcuMjMyNSAxMS4xNDEzIDI0LjczMyA5LjkxNjk5QzI0Ljg4NjcgMTAuNzM2OCAyNC45NjQyIDExLjU3MjEgMjQuOTY0MiAxMi40MTYyQzI0Ljk2NDMgMTUuOTk5MyAyMy41ODY1IDE5LjM2OTIgMjEuMDg0OSAyMS45MDU0QzE4LjU4MjkgMjQuNDQxOSAxNS4yMjkxIDI1Ljg2ODEgMTEuNjQxMyAyNS45MjE0QzEwLjk3NDcgMjUuOTMxOCAxMC4zMTExIDI1Ljg5MjYgOS42NTUwNyAyNS44MDYyQzExLjYyNjkgMjkuMjYyNCAxNS4zNDU2IDMxLjUxMzQgMTkuNDMyMSAzMS41NzQxQzIxLjIxOTggMzEuNjAxNyAyMi45MzYyIDMxLjIyNzIgMjQuNTM0NyAzMC40NjM4QzI0LjY3ODYgMzAuMzk1IDI0LjgzMjggMzAuMzYxNiAyNC45ODU3IDMwLjM2MTZaIixmaWxsOiJ3aGl0ZSJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xMS42NzA4IDEuMDAyMjhDNS4zMDYxNyAwLjg3NTg5OSAwLjAxNTM4MSA2LjAyNDgxIDMuNDUxMTVlLTA1IDEyLjM4ODFDLTAuMDAzNzI1MzkgMTMuOTQyOCAwLjI5OTc1MiAxNS40NTAxIDAuOTAyMTA0IDE2Ljg2ODRDMC45MTA4NTEgMTYuODg5MSAwLjkxODk4NSAxNi45MDk5IDAuOTI2MzUxIDE2LjkzMTFDMS43NTExNSAxOS4yODMyIDEuNjAzNzUgMjEuODIzNCAwLjUzOTMxMiAyNC4wNDA4QzIuMTkzMjggMjQuNTUzOSA0LjA1MzQ0IDI0LjE0NCA1LjMyODg5IDIyLjkxMjRDNS42NDMxMSAyMi42MDg5IDYuMTEzMjUgMjIuNTMyNCA2LjUwNzUgMjIuNzIwOUM4LjEwNTc3IDIzLjQ4NDIgOS44MjI0MyAyMy44NTk5IDExLjYxIDIzLjgzMTJDMTcuOTI0OSAyMy43Mzc0IDIyLjg3MTQgMTguNzIzNCAyMi44NzE0IDEyLjQxNjJDMjIuODcxNCA2LjI0NjY0IDE3Ljg0NjggMS4xMjY0MyAxMS42NzA4IDEuMDAyMjhaTTUuMzM1NzkgMTQuMTIxMkM0LjQyMTM3IDE0LjEyMTIgMy42ODAwNiAxMy4zODExIDMuNjgwMDYgMTIuNDY4MkMzLjY4MDA2IDExLjU1NTMgNC40MjEzNyAxMC44MTUyIDUuMzM1NzkgMTAuODE1MkM2LjI1MDIyIDEwLjgxNTIgNi45OTE1MyAxMS41NTUzIDYuOTkxNTMgMTIuNDY4MkM2Ljk5MTQ1IDEzLjM4MTEgNi4yNTAyMiAxNC4xMjEyIDUuMzM1NzkgMTQuMTIxMlpNMTEuNDM1NyAxNC4xMjEyQzEwLjUyMTMgMTQuMTIxMiA5Ljc3OTk5IDEzLjM4MTEgOS43Nzk5OSAxMi40NjgyQzkuNzc5OTkgMTEuNTU1MyAxMC41MjEzIDEwLjgxNTIgMTEuNDM1NyAxMC44MTUyQzEyLjM1MDIgMTAuODE1MiAxMy4wOTE1IDExLjU1NTMgMTMuMDkxNSAxMi40NjgyQzEzLjA5MTUgMTMuMzgxMSAxMi4zNTAyIDE0LjEyMTIgMTEuNDM1NyAxNC4xMjEyWk0xNy41MzU3IDE0LjEyMTJDMTYuNjIxMyAxNC4xMjEyIDE1Ljg4IDEzLjM4MTEgMTUuODggMTIuNDY4MkMxNS44OCAxMS41NTUzIDE2LjYyMTMgMTAuODE1MiAxNy41MzU3IDEwLjgxNTJDMTguNDUwMiAxMC44MTUyIDE5LjE5MTUgMTEuNTU1MyAxOS4xOTE1IDEyLjQ2ODJDMTkuMTkxNSAxMy4zODExIDE4LjQ1MDIgMTQuMTIxMiAxNy41MzU3IDE0LjEyMTJaIixmaWxsOiJ3aGl0ZSJ9KSk6InBsYW5lIj09PXQ/SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJjbGFzc2ljIiE9PW8/e3dpZHRoOiI4NSUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiI2NSUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIixkaXNwbGF5OiJibG9jayIsbWFyZ2luOiJhdXRvIixtYXJnaW5SaWdodDoiMjElIn0sdmlld0JveDoiMCAwIDMwIDMwIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcifSxILmEuY3JlYXRlRWxlbWVudCgiZyIsbnVsbCxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0yOS45NDc4IDIuMTI5NTJMMjQuNjYxMyAyNi41MTA0QzI0LjU0ODggMjcuMDQwNyAyNC4xOTczIDI3LjQ4NzMgMjMuNzA1MiAyNy43MjQ1QzIzLjIxMzEgMjcuOTYxOCAyMi42NTA3IDI3Ljk2MTggMjIuMTQ0NiAyNy43MjQ1TDE4LjIwNzggMjUuODI2NUMxOC4yMDc4IDI1LjgyNjUgMTMuMTc0NCAyOS40NDExIDEyLjE0ODEgMjkuOTE1NkMxMS45NTEyIDMwLjAxMzMgMTEuODY2OSAyOS45OTkzIDExLjcyNjMgMjkuOTk5M0MxMS41Mjk0IDI5Ljk5OTMgMTEuMzE4NSAyOS45NDM1IDExLjE0OTggMjkuODMxOEMxMC44NTQ2IDI5LjYzNjUgMTAuNjcxOCAyOS4zMTU1IDEwLjY3MTggMjguOTY2NlYyMS41NTZDMTAuNjU3NyAyMS40MDI1IDEwLjY3MTggMjEuMjQ5IDEwLjc1NjIgMjEuMDk1NUMxMC43NTYyIDIxLjA5NTUgMTAuNzcwMiAyMS4wNjc2IDEwLjc4NDMgMjEuMDUzNkMxMC44MjY1IDIwLjk4MzggMTAuODY4NiAyMC45MTQxIDEwLjkyNDkgMjAuODQ0M0wyMy44NzQgNi43NzY4MUw3Ljc3NTQ4IDE5LjkyMzJDNy42NDg5NCAyMC4wNDg4IDcuNDgwMjIgMjAuMTYwNCA3LjI5NzQ0IDIwLjIwMjNDNy4wMDIxOSAyMC4yODYxIDYuNjc4ODEgMjAuMjMwMiA2LjQyNTc0IDIwLjA2MjhMMS4wMTI3MSAxNy42MzQ0QzAuNDA4MTQxIDE3LjM0MTQgMC4wMjg1MjYxIDE2Ljc1NTIgMC4wMDA0MDY0NzYgMTYuMDg1M0MtMC4wMTM2NTMzIDE1LjQyOTQgMC4zMzc4NDIgMTQuODE1NCAwLjkyODM1MyAxNC40OTQ0TDI3LjM2MDggMC4yMTc1NjhDMjcuOTc5NCAtMC4xMTczNzIgMjguNzEwNSAtMC4wNjE1NDg5IDI5LjI4NyAwLjM1NzEyNkMyOS44NDk0IDAuNzc1ODAxIDMwLjEwMjQgMS40NTk2NCAyOS45NjE4IDIuMTI5NTJIMjkuOTQ3OFoiLGZpbGw6IndoaXRlIn0pKSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOnt3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiIwIC0yNTYgMTg1MCAxODUwIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse3RyYW5zZm9ybToibWF0cml4KDAuNzExODY0NDEsMCwwLC0wLjcxMTg2NDQxLDI4OC41NDIzNywxMDkzLjk0ODIpIixkOiJNIDcwNCwxMTUyIFEgNTUxLDExNTIgNDE4LDExMDAgMjg1LDEwNDggMjA2LjUsOTU5IDEyOCw4NzAgMTI4LDc2OCBxIDAsLTgyIDUzLC0xNTggNTMsLTc2IDE0OSwtMTMyIGwgOTcsLTU2IC0zNSwtODQgcSAzNCwyMCA2MiwzOSBsIDQ0LDMxIDUzLC0xMCBxIDc4LC0xNCAxNTMsLTE0IDE1MywwIDI4Niw1MiAxMzMsNTIgMjExLjUsMTQxIDc4LjUsODkgNzguNSwxOTEgMCwxMDIgLTc4LjUsMTkxIC03OC41LDg5IC0yMTEuNSwxNDEgLTEzMyw1MiAtMjg2LDUyIHogbSAwLDEyOCBxIDE5MSwwIDM1My41LC02OC41IFEgMTIyMCwxMTQzIDEzMTQsMTAyNSAxNDA4LDkwNyAxNDA4LDc2OCAxNDA4LDYyOSAxMzE0LDUxMSAxMjIwLDM5MyAxMDU3LjUsMzI0LjUgODk1LDI1NiA3MDQsMjU2IDYxOCwyNTYgNTI4LDI3MiA0MDQsMTg0IDI1MCwxNDQgMjE0LDEzNSAxNjQsMTI4IGggLTMgcSAtMTEsMCAtMjAuNSw4IC05LjUsOCAtMTEuNSwyMSAtMSwzIC0xLDYuNSAwLDMuNSAwLjUsNi41IDAuNSwzIDIsNiBsIDIuNSw1IHEgMCwwIDMuNSw1LjUgMy41LDUuNSA0LDUgMC41LC0wLjUgNC41LDUgNCw1LjUgNCw0LjUgNSw2IDIzLDI1IDE4LDE5IDI2LDI5LjUgOCwxMC41IDIyLjUsMjkgUSAyMzUsMzAzIDI0NS41LDMyMyAyNTYsMzQzIDI2NiwzNjcgMTQyLDQzOSA3MSw1NDQgMCw2NDkgMCw3NjggMCw5MDcgOTQsMTAyNSAxODgsMTE0MyAzNTAuNSwxMjExLjUgNTEzLDEyODAgNzA0LDEyODAgWiBNIDE1MjYsMTExIHEgMTAsLTI0IDIwLjUsLTQ0IDEwLjUsLTIwIDI1LC0zOC41IDE0LjUsLTE4LjUgMjIuNSwtMjkgOCwtMTAuNSAyNiwtMjkuNSAxOCwtMTkgMjMsLTI1IDEsLTEgNCwtNC41IDMsLTMuNSA0LjUsLTUgMS41LC0xLjUgNCwtNSAyLjUsLTMuNSAzLjUsLTUuNSBsIDIuNSwtNSBxIDAsMCAyLC02IDIsLTYgMC41LC02LjUgLTEuNSwtMC41IC0xLC02LjUgLTMsLTE0IC0xMywtMjIgLTEwLC04IC0yMiwtNyAtNTAsNyAtODYsMTYgUSAxMzg4LC03MiAxMjY0LDE2IDExNzQsMCAxMDg4LDAgODE3LDAgNjE2LDEzMiBxIDU4LC00IDg4LC00IDE2MSwwIDMwOSw0NSAxNDgsNDUgMjY0LDEyOSAxMjUsOTIgMTkyLDIxMiA2NywxMjAgNjcsMjU0IDAsNzcgLTIzLDE1MiAxMjksLTcxIDIwNCwtMTc4IDc1LC0xMDcgNzUsLTIzMCAwLC0xMjAgLTcxLC0yMjQuNSBRIDE2NTAsMTgzIDE1MjYsMTExIFoifSkpfWZ1bmN0aW9uIE1yKCl7dmFyIGU9KHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLmFjdGl2YXRvclNpemUsdD10LmJ1dHRvblN0eWxlO3JldHVybiBILmEuY3JlYXRlRWxlbWVudCgic3BhbiIse3N0eWxlOiJjbGFzc2ljIj09PXQ/e2Rpc3BsYXk6ImdyaWQiLHBsYWNlQ29udGVudDoiY2VudGVyIixmb250U2l6ZToiIi5jb25jYXQoZS0xMCwicHgiKSxmb250V2VpZ2h0OiI2MDAiLGNvbG9yOiIjZmZmZmZmIixtYXJnaW5Ub3A6IjFweCIsd2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZm9udEZhbWlseToiVGltZXMgTmV3IFJvbWFuLCBzYW5zLXNlcmlmIixsaW5lSGVpZ2h0OiIxIn06e2ZvbnRTaXplOiIiLmNvbmNhdCguNSplKzE1LCJweCIpLGZvbnRXZWlnaHQ6IjYwMCIsY29sb3I6IiNmZmZmZmYiLGZvbnRGYW1pbHk6IlRpbWVzIE5ldyBSb21hbiwgc2Fucy1zZXJpZiIsbGluZUhlaWdodDoiMSJ9fSwiw5ciKX12YXIgaD17YXBwbGU6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LmFwcGxlLHI9dC5hcHBsZUNvbG9yLG89dC5hcHBsZUljb24sdD10LmFwcGxlTGFiZWwsbj1hKCl8fHYoKT8iaW1lc3NhZ2U6Ly8iLmNvbmNhdChuKTpudWxsO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToiYXBwbGUiLGxpbms6bixpY29uOkguYS5jcmVhdGVFbGVtZW50KGp0LHtzaXplOmV9KSxjb2xvcjpyfHwhMSxjdXN0b21JY29uOiEhbyxsYWJlbDp0fSl9LHlvdXR1YmU6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LnlvdXR1YmUscj10LnlvdXR1YmVDb2xvcixvPXQueW91dHViZUljb24sYT10LnlvdXR1YmVMYWJlbCxuPWZ1bmN0aW9uKGUsdCl7c3dpdGNoKHQpe2Nhc2UiZXZlcnl3aGVyZSI6cmV0dXJuIG51bGw7Y2FzZSJkZXNrdG9wIjppZihVKCkpcmV0dXJuIG51bGw7Y2FzZSJtb2JpbGUiOmlmKCFVKCkpcmV0dXJuIG51bGw7Y2FzZSJub3doZXJlIjpyZXR1cm4gZTtkZWZhdWx0OnJldHVybiBudWxsfX0obix0LnlvdXR1YmVTaG93UG9wdXBQbGF0Zm9ybSk7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJ5b3V0dWJlIixsaW5rOm4sdGFyZ2V0OiJfYmxhbmsiLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoJHQse3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOmF9KX0sY2FsbDpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQuY2FsbCxyPXQuY2FsbENvbG9yLG89dC5jYWxsSWNvbixhPXQuY2FsbExhYmVsLG49ZnVuY3Rpb24oZSx0KXtzd2l0Y2godCl7Y2FzZSJldmVyeXdoZXJlIjpyZXR1cm4gbnVsbDtjYXNlImRlc2t0b3AiOnJldHVybiBVKCk/bnVsbDoidGVsOiIuY29uY2F0KGUpO2Nhc2UibW9iaWxlIjpyZXR1cm4gVSgpPyJ0ZWw6Ii5jb25jYXQoZSk6bnVsbDtjYXNlIm5vd2hlcmUiOnJldHVybiJ0ZWw6Ii5jb25jYXQoZSk7ZGVmYXVsdDpyZXR1cm4gbnVsbH19KG4sdC5jYWxsU2hvd1BvcHVwUGxhdGZvcm0pO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToiY2FsbCIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoWXQse3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOmF9KX0sY29udGFjdGZvcm06ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LmNvbnRhY3Rmb3JtQ29sb3Iscj10LmNvbnRhY3Rmb3JtSWNvbix0PXQuY29udGFjdGZvcm1MYWJlbDtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImNvbnRhY3Rmb3JtIixpY29uOkguYS5jcmVhdGVFbGVtZW50KHRuLHtzaXplOmV9KSxjb2xvcjpufHwhMSxjdXN0b21JY29uOiEhcixsYWJlbDp0fSl9LGRpc2NvcmQ6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LmRpc2NvcmQscj10LmRpc2NvcmRDb2xvcixvPXQuZGlzY29yZEljb24sdD10LmRpc2NvcmRMYWJlbCxuPSIiLmNvbmNhdChuKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImRpc2NvcmQiLGxpbms6bix0YXJnZXQ6Il9ibGFuayIsaWNvbjpILmEuY3JlYXRlRWxlbWVudChsbix7c2l6ZTplfSksY29sb3I6cnx8ITEsY3VzdG9tSWNvbjohIW8sbGFiZWw6dH0pfSx0ZWFtczpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQudGVhbXMscj10LnRlYW1zQ29sb3Isbz10LnRlYW1zSWNvbix0PXQudGVhbXNMYWJlbCxuPSIiLmNvbmNhdChuKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6InRlYW1zIix0YXJnZXQ6Il9ibGFuayIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoY24se3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOnR9KX0sY2FsZW5kYXI6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LmNhbGVuZGFyQ29sb3Iscj10LmNhbGVuZGFySWNvbix0PXQuY2FsZW5kYXJMYWJlbDtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImNhbGVuZGFyIixpY29uOkguYS5jcmVhdGVFbGVtZW50KHNuLHtzaXplOmV9KSxjb2xvcjpufHwhMSxjdXN0b21JY29uOiEhcixsYWJlbDp0fSl9LGVtYWlsOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC5lbWFpbCxyPXQuZW1haWxDb2xvcixvPXQuZW1haWxJY29uLHQ9dC5lbWFpbExhYmVsLG49Im1haWx0bzoiLmNvbmNhdChuKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImVtYWlsIix0YXJnZXQ6Il9ibGFuayIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQodW4se3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOnR9KX0sZmFjZWJvb2s6ZnVuY3Rpb24oZSl7dmFyIHQsbixlPWUuc2l6ZSxyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLG89ci5zdGF0ZSxhPXIuYWN0aW9ucy5jbG9zZUJ1dHRvblBvcHVwLHI9ci5zZXR0aW5ncyxpPXIuZmFjZWJvb2ssbD1yLmZhY2Vib29rQ29sb3IsYz1yLmZhY2Vib29rSWNvbix1PXIuZmFjZWJvb2tMYWJlbCxzPXIuZmFjZWJvb2tGcmFtZSxmPXIuc3Vic2NyaXB0aW9uQ3JlYXRlZERhdGUscj1sfHwhMSxsPSEhYztyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpeyJmYWNlYm9vayI9PT1vLmJ1dHRvblBvcHVwJiZVKCkmJnMmJiF4bihmLHMpJiYob3BlbigiaHR0cHM6Ly9tLm1lLyIuY29uY2F0KGkpLCJnZXRidXR0b24tcG9wdXAtIitvLmJ1dHRvblBvcHVwLCJwb3B1cCxsZWZ0PTAsdG9wPTAsd2lkdGg9NjAwLGhlaWdodD01MDAiKSxhKG8uYnV0dG9uUG9wdXApKX0sW28uYnV0dG9uUG9wdXBdKSxILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToiZmFjZWJvb2siLGxpbms6KGM9Zix0PXMsbj1pLEsmJih4bihjLHQpfHx0KT92b2lkIDA6Imh0dHBzOi8vbS5tZS8iLmNvbmNhdChuKSksdGFyZ2V0OiJfYmxhbmsiLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoaG4se3NpemU6ZX0pLGNvbG9yOnIsY3VzdG9tSWNvbjpsLGxhYmVsOnV9KX0sZ29vZ2xlbWFwOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC5nb29nbGVtYXAscj10Lmdvb2dsZW1hcENvbG9yLG89dC5nb29nbGVtYXBJY29uLGE9dC5nb29nbGVtYXBMYWJlbCxuPWZ1bmN0aW9uKGUsdCl7c3dpdGNoKHQpe2Nhc2UiZXZlcnl3aGVyZSI6cmV0dXJuIG51bGw7Y2FzZSJkZXNrdG9wIjppZihVKCkpcmV0dXJuIG51bGw7Y2FzZSJtb2JpbGUiOmlmKCFVKCkpcmV0dXJuIG51bGw7Y2FzZSJub3doZXJlIjpyZXR1cm4gZTtkZWZhdWx0OnJldHVybiBudWxsfX0obix0Lmdvb2dsZW1hcFNob3dQb3B1cFBsYXRmb3JtKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6Imdvb2dsZW1hcCIsdGFyZ2V0OiJfYmxhbmsiLGxpbms6bixpY29uOkguYS5jcmVhdGVFbGVtZW50KHZuLHtzaXplOmV9KSxjb2xvcjpyfHwhMSxjdXN0b21JY29uOiEhbyxsYWJlbDphfSl9LGluc3RhZ3JhbTpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQuaW5zdGFncmFtLHI9dC5pbnN0YWdyYW1Db2xvcixvPXQuaW5zdGFncmFtSWNvbix0PXQuaW5zdGFncmFtTGFiZWwsbj1mdW5jdGlvbihlKXtlPWUmJmUuc3RhcnRzV2l0aCgiaHR0cHM6Ly9pZy5tZS9tLyIpP2U6Imh0dHBzOi8vd3d3Lmluc3RhZ3JhbS5jb20vIi5jb25jYXQoZSk7cmV0dXJuIGV9KG4pO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToiaW5zdGFncmFtIixsaW5rOm4sdGFyZ2V0OiJfYmxhbmsiLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoQ24se3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOnR9KX0sbGluZTpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQubGluZSxyPXQubGluZUNvbG9yLG89dC5saW5lSWNvbix0PXQubGluZUxhYmVsLG49VSgpP251bGw6Ii8vIj09PShuPW4pLnN1YnN0cigwLDIpPyJodHRwczoiK246Imh0dHAiIT09bi5zdWJzdHIoMCw0KT8iaHR0cHM6Ly8iK246bjtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImxpbmUiLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoRW4se3NpemU6ZX0pLGNvbG9yOnJ8fCExLGxpbms6bixjdXN0b21JY29uOiEhbyxsYWJlbDp0fSl9LGxpbms6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10Lmxpbmsscj10LmxpbmtJY29uLG89dC5saW5rQ29sb3IsdD10LmxpbmtMYWJlbCxuPSIiLmNvbmNhdChuKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImxpbmsiLHRhcmdldDoiX2JsYW5rIixsaW5rOm4saWNvbjpILmEuY3JlYXRlRWxlbWVudChQbix7c2l6ZTplfSksY29sb3I6b3x8ITEsY3VzdG9tSWNvbjohIXIsbGFiZWw6dH0pfSxsaW5rZWRpbjpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQubGlua2VkaW4scj10LmxpbmtlZGluSWNvbixvPXQubGlua2VkaW5Db2xvcix0PXQubGlua2VkaW5MYWJlbCxuPSIiLmNvbmNhdChuKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImxpbmtlZGluIix0YXJnZXQ6Il9ibGFuayIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoSW4se3NpemU6ZX0pLGNvbG9yOm98fCExLGN1c3RvbUljb246ISFyLGxhYmVsOnR9KX0sc2t5cGU6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LnNreXBlLHI9dC5za3lwZUljb24sbz10LnNreXBlQ29sb3IsdD10LnNreXBlTGFiZWwsbj0ic2t5cGU6Ii5jb25jYXQobiwiP2NoYXQiKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6InNreXBlIix0YXJnZXQ6Il9ibGFuayIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoX24se3NpemU6ZX0pLGNvbG9yOm98fCExLGN1c3RvbUljb246ISFyLGxhYmVsOnR9KX0sc2xhY2s6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LnNsYWNrLHI9dC5zbGFja0ljb24sbz10LnNsYWNrQ29sb3IsdD10LnNsYWNrTGFiZWwsbj0iIi5jb25jYXQobik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJzbGFjayIsdGFyZ2V0OiJfYmxhbmsiLGxpbms6bixpY29uOkguYS5jcmVhdGVFbGVtZW50KHpuLHtzaXplOmV9KSxjb2xvcjpvfHwhMSxjdXN0b21JY29uOiEhcixsYWJlbDp0fSl9LHNtczpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQuc21zLHI9dC5zbXNDb2xvcixvPXQuc21zSWNvbixhPXQuc21zTGFiZWwsbj1mdW5jdGlvbihlLHQpe3N3aXRjaCh0KXtjYXNlImV2ZXJ5d2hlcmUiOnJldHVybiBudWxsO2Nhc2UiZGVza3RvcCI6cmV0dXJuIFUoKT9udWxsOiJzbXM6Ii5jb25jYXQoZSk7Y2FzZSJtb2JpbGUiOnJldHVybiBVKCk/InNtczoiLmNvbmNhdChlKTpudWxsO2Nhc2Uibm93aGVyZSI6cmV0dXJuInNtczoiLmNvbmNhdChlKTtkZWZhdWx0OnJldHVybiBudWxsfX0obix0LnNtc1Nob3dQb3B1cFBsYXRmb3JtKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6InNtcyIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoVG4se3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOmF9KX0sc25hcGNoYXQ6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LnNuYXBjaGF0LHI9dC5zbmFwY2hhdENvbG9yLG89dC5zbmFwY2hhdEljb24sdD10LnNuYXBjaGF0TGFiZWwscj1yfHwhMSxvPSEhbztyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7bGluazpmdW5jdGlvbihlKXtpZihEKCkpcmV0dXJuImh0dHBzOi8vd3d3LnNuYXBjaGF0LmNvbS9hZGQvIi5jb25jYXQoZSl9KG4pLHNpemU6ZSxuYW1lOiJzbmFwY2hhdCIsaWNvbjpILmEuY3JlYXRlRWxlbWVudChObix7c2l6ZTplfSksY29sb3I6cixjdXN0b21JY29uOm8sbGFiZWw6dH0pfSx0ZWxlZ3JhbTpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQudGVsZWdyYW0scj10LnRlbGVncmFtQ29sb3Isbz10LnRlbGVncmFtSWNvbix0PXQudGVsZWdyYW1MYWJlbCxuPShVKCk/Imh0dHBzOi8vdGVsZWdyYW0ubWUvIjoidGc6Ly9yZXNvbHZlP2RvbWFpbj0iKS5jb25jYXQobik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJ0ZWxlZ3JhbSIsdGFyZ2V0OiJfYmxhbmsiLGxpbms6bixpY29uOkguYS5jcmVhdGVFbGVtZW50KEZuLHtzaXplOmV9KSxjb2xvcjpyfHwhMSxjdXN0b21JY29uOiEhbyxsYWJlbDp0fSl9LHRpa3RvazpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQudGlrdG9rLHI9dC50aWt0b2tDb2xvcixvPXQudGlrdG9rSWNvbix0PXQudGlrdG9rTGFiZWwsbj0iaHR0cHM6Ly90aWt0b2suY29tL0AiLmNvbmNhdChuKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6InRpa3RvayIsdGFyZ2V0OiJfYmxhbmsiLGxpbms6bixpY29uOkguYS5jcmVhdGVFbGVtZW50KEhuLHtzaXplOmV9KSxjb2xvcjpyfHwhMSxjdXN0b21JY29uOiEhbyxsYWJlbDp0fSl9LGNhbGxiYWNrOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC5jYWxsYmFja0NvbG9yLHI9dC5jYWxsYmFja0ljb24sdD10LmNhbGxiYWNrTGFiZWw7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJjYWxsYmFjayIsaWNvbjpILmEuY3JlYXRlRWxlbWVudChLbix7c2l6ZTplfSksY29sb3I6bnx8ITEsY3VzdG9tSWNvbjohIXIsbGFiZWw6dH0pfSx0d2l0dGVyOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC50d2l0dGVyLHI9dC50d2l0dGVyQ29sb3Isbz10LnR3aXR0ZXJJY29uLHQ9dC50d2l0dGVyTGFiZWwsbj0iaHR0cDovL3R3aXR0ZXIuY29tLyIuY29uY2F0KG4pO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToidHdpdHRlciIsdGFyZ2V0OiJfYmxhbmsiLGxpbms6bixpY29uOkguYS5jcmVhdGVFbGVtZW50KFZuLHtzaXplOmV9KSxjb2xvcjpyfHwhMSxjdXN0b21JY29uOiEhbyxsYWJlbDp0fSl9LHZpYmVyOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC52aWJlcixyPXQudmliZXJDb2xvcixvPXQudmliZXJJY29uLHQ9dC52aWJlckxhYmVsLHI9cnx8ITEsbz0hIW87cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse2xpbms6ZnVuY3Rpb24oZSl7aWYoRCgpJiYvXlswLTkgKCkrLV0rJC8udGVzdChlKSlyZXR1cm4gZT1lLnJlcGxhY2UoL1xEKy9nLCIiKS5yZXBsYWNlKC9eWzBdKy9nLCIiKSwodygpPyJ2aWJlcjovL2NoYXQ/bnVtYmVyPSUyQiI6YSgpPyJ2aWJlcjovL2NoYXQ/bnVtYmVyPSsiOiJ2aWJlcjovL2NoYXQ/bnVtYmVyPSIpLmNvbmNhdChlKX0obiksdGFyZ2V0OiJfYmxhbmsiLHNpemU6ZSxuYW1lOiJ2aWJlciIsaWNvbjpILmEuY3JlYXRlRWxlbWVudCgkbix7c2l6ZTplfSksY29sb3I6cixjdXN0b21JY29uOm8sbGFiZWw6dH0pfSx2a29udGFrdGU6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LnZrb250YWt0ZSxyPXQudmtvbnRha3RlQ29sb3Isbz10LnZrb250YWt0ZUljb24sdD10LnZrb250YWt0ZUxhYmVsLG49Imh0dHBzOi8vdmsubWUvIi5jb25jYXQobik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJ2a29udGFrdGUiLHRhcmdldDoiX2JsYW5rIixsaW5rOm4saWNvbjpILmEuY3JlYXRlRWxlbWVudCh0cix7c2l6ZTplfSksY29sb3I6cnx8ITEsY3VzdG9tSWNvbjohIW8sbGFiZWw6dH0pfSx3YXplOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC53YXplLHI9dC53YXplQ29sb3Isbz10LndhemVJY29uLHQ9dC53YXplTGFiZWwsbj0iIi5jb25jYXQobik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJ3YXplIix0YXJnZXQ6Il9ibGFuayIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQobnIse3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOnR9KX0sd2VjaGF0OmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC53ZWNoYXQscj10LndlY2hhdENvbG9yLG89dC53ZWNoYXRJY29uLGE9dC53ZWNoYXRMYWJlbCxuPWZ1bmN0aW9uKGUsdCl7c3dpdGNoKHQpe2Nhc2UiZXZlcnl3aGVyZSI6cmV0dXJuIG51bGw7Y2FzZSJkZXNrdG9wIjpyZXR1cm4gVSgpP251bGw6Imh0dHA6Ly93ZWl4aW4ucXEuY29tL3IvIi5jb25jYXQoZSk7Y2FzZSJtb2JpbGUiOnJldHVybiBVKCk/Imh0dHA6Ly93ZWl4aW4ucXEuY29tL3IvIi5jb25jYXQoZSk6bnVsbDtjYXNlIm5vd2hlcmUiOnJldHVybiJodHRwOi8vd2VpeGluLnFxLmNvbS9yLyIuY29uY2F0KGUpO2RlZmF1bHQ6cmV0dXJuIG51bGx9fShuLHQud2VjaGF0U2hvd1BvcHVwUGxhdGZvcm0pO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToid2VjaGF0Iix0YXJnZXQ6Il9ibGFuayIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQocnIse3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOmF9KX0sd2hhdHNhcHA6ZnVuY3Rpb24oZSl7dmFyIHQsZT1lLnNpemUsbj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxyPW4ud2hhdHNhcHAsbz1uLndoYXRzYXBwQ29sb3IsYT1uLndoYXRzYXBwSWNvbixpPW4ud2hhdHNhcHBMYWJlbCxsPW4ucHJlRmlsbGVkTWVzc2FnZSxuPW4ud2hhdHNhcHBTaG93UG9wdXAscj0obD1sLChyPXIpJiZyLnN0YXJ0c1dpdGgoImh0dHBzOi8vY2hhdC53aGF0c2FwcC5jb20vIik/dD1yOihyPXI/ci5tYXRjaCgvXGQrL2cpLmpvaW4oIiIpOm51bGwsdD0iaHR0cHM6Ly93YS5tZS8iLmNvbmNhdChyKSxsJiYodD0iIi5jb25jYXQodCwiP3RleHQ9IikuY29uY2F0KGVuY29kZVVSSUNvbXBvbmVudChsKSkpKSx0KTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6IndoYXRzYXBwIixsaW5rOm4/bnVsbDpyLHRhcmdldDpuP251bGw6Il9ibGFuayIsaWNvbjpILmEuY3JlYXRlRWxlbWVudChscix7c2l6ZTplfSksY29sb3I6b3x8ITEsY3VzdG9tSWNvbjohIWEsbGFiZWw6aX0pfSx3b25kZXJjaGF0OmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC53b25kZXJjaGF0Q29sb3Iscj10LndvbmRlcmNoYXRJY29uLHQ9dC53b25kZXJjaGF0TGFiZWw7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJ3b25kZXJjaGF0IixsaW5rOm51bGwsaWNvbjpILmEuY3JlYXRlRWxlbWVudChmcix7c2l6ZTplfSksY29sb3I6bnx8ITEsY3VzdG9tSWNvbjohIXIsbGFiZWw6dH0pfSxhaTpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQuYWlDb2xvcixyPXQuYWlJY29uLHQ9dC5haUxhYmVsO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToiYWkiLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoeHIse3NpemU6ZX0pLGNvbG9yOm58fCExLGN1c3RvbUljb246ISFyLGxhYmVsOnR9KX0sa2FrYW90YWxrOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC5rYWthb3RhbGsscj10Lmtha2FvdGFsa0NvbG9yLG89dC5rYWthb3RhbGtJY29uLHQ9dC5rYWthb3RhbGtMYWJlbCxuPSJodHRwczovL29wZW4ua2FrYW8uY29tL28vIi5jb25jYXQobik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJrYWthb3RhbGsiLGxpbms6bix0YXJnZXQ6Il9ibGFuayIsaWNvbjpILmEuY3JlYXRlRWxlbWVudChUcix7c2l6ZTplfSksY29sb3I6cnx8ITEsY3VzdG9tSWNvbjohIW8sbGFiZWw6dH0pfX0sUnI9e2FwcGxlOmZ1bmN0aW9uKCl7dmFyIGU9T2JqZWN0KEYudXNlQ29udGV4dCkoViksdD1lLnN0YXRlLGU9ZS5zZXR0aW5ncyxuPWUuYXBwbGVDb2xvcixyPWUuYXBwbGVMYWJlbCxvPWUuYXBwbGUsYT1lLmJnU3R5bGUsZT1lLmFjdGl2YXRvclNpemUsaT1IdChPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGw9aVswXSxjPWlbMV07cmV0dXJuIE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtjKCJhcHBsZSI9PT10LmJ1dHRvblBvcHVwKX0pLEguYS5jcmVhdGVFbGVtZW50KE4se2NvbG9yOm4sbWVzc2VuZ2VyVGl0bGU6cixpY29uOkguYS5jcmVhdGVFbGVtZW50KGp0LG51bGwpLGVuYWJsZVBvcHVwOmwsYmdTdHlsZTphLHNpemU6ZX0sSC5hLmNyZWF0ZUVsZW1lbnQoV3QsbnVsbCxILmEuY3JlYXRlRWxlbWVudCgiYSIse2hyZWY6ImltZXNzYWdlOi8vIi5jb25jYXQobyl9LG8pKSl9LHlvdXR1YmU6ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKSx0PWUuc3RhdGUsZT1lLnNldHRpbmdzLG49ZS55b3V0dWJlQ29sb3Iscj1lLnlvdXR1YmVMYWJlbCxvPWUueW91dHViZSxhPWUuYmdTdHlsZSxpPWUuYWN0aXZhdG9yU2l6ZSxlPWUuYnV0dG9uU2hhZG93LG89KG89KG89bykucmVwbGFjZSgvd2F0Y2hcP3Y9LywiZW1iZWQvIikuc3BsaXQoIiYiKVswXSwobD1uZXcgVVJMU2VhcmNoUGFyYW1zKS5hcHBlbmQoImNvbnRyb2xzIiwiMCIpLGwuYXBwZW5kKCJhdXRvcGxheSIsIjEiKSxsLmFwcGVuZCgibG9vcCIsIjEiKSwiIi5jb25jYXQobywiPyIpLmNvbmNhdChsLnRvU3RyaW5nKCkpKSxsPVp0KE9iamVjdChGLnVzZVN0YXRlKSghMSksMiksYz1sWzBdLHU9bFsxXTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7dSgieW91dHViZSI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBsPVp0KE9iamVjdChGLnVzZVN0YXRlKSghMCksMikscz1sWzBdLGY9bFsxXTtyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpeyJ5b3V0dWJlIj09PXQuYnV0dG9uUG9wdXAmJmYoITApfSxbdC5idXR0b25Qb3B1cF0pLEguYS5jcmVhdGVFbGVtZW50KE4se2NvbG9yOm4sbWVzc2VuZ2VyVGl0bGU6cixjdXN0b21TZXR0aW5nczoieW91dHViZSIsaWNvbjpILmEuY3JlYXRlRWxlbWVudCgkdCx7Y3VzdG9tU2V0dGluZ3M6InlvdXR1YmUifSksZW5hYmxlUG9wdXA6YyxiZ1N0eWxlOmEsc2l6ZTppfSxILmEuY3JlYXRlRWxlbWVudChLdCx7aXNMb2FkaW5nOnN9LHMmJkguYS5jcmVhdGVFbGVtZW50KEksbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoUXQse29uTG9hZDpmdW5jdGlvbihlKXtmKCExKX0sc3JjOm8saXNMb2FkaW5nOnMsYnV0dG9uU2hhZG93OmUsYWxsb3dGdWxsU2NyZWVuOiEwLGFsbG93OiJhY2NlbGVyb21ldGVyOyBhdXRvcGxheTsgY2xpcGJvYXJkLXdyaXRlOyBlbmNyeXB0ZWQtbWVkaWE7In0pKSl9LGNhbGw6ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKSx0PWUuc3RhdGUsZT1lLnNldHRpbmdzLG49ZS5jYWxsQ29sb3Iscj1lLmNhbGxMYWJlbCxvPWUuY2FsbCxhPWUuY2FsbFFyQ29kZSxpPWUuYmdTdHlsZSxlPWUuYWN0aXZhdG9yU2l6ZSxsPUp0KE9iamVjdChGLnVzZVN0YXRlKSghMSksMiksYz1sWzBdLHU9bFsxXTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7dSgiY2FsbCI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBsPUp0KE9iamVjdChGLnVzZVN0YXRlKSghMCksMikscz1sWzBdLGY9bFsxXSxsPShPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7ImxpbmUiPT09dC5idXR0b25Qb3B1cCYmZighMCl9LFt0LmJ1dHRvblBvcHVwXSksInRlbDoiLmNvbmNhdChvKSksZD0iaHR0cHM6Ly9hcGkucXJzZXJ2ZXIuY29tL3YxL2NyZWF0ZS1xci1jb2RlLz9zaXplPTE1MHgxNTAmbWFyZ2luPTEwJmRhdGE9Ii5jb25jYXQobCk7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KE4se2NvbG9yOm4sbWVzc2VuZ2VyVGl0bGU6cixpY29uOkguYS5jcmVhdGVFbGVtZW50KFl0LG51bGwpLGVuYWJsZVBvcHVwOmMsYmdTdHlsZTppLHNpemU6ZX0sYT9ILmEuY3JlYXRlRWxlbWVudChybix7aXNMb2FkaW5nOnN9LHMmJkguYS5jcmVhdGVFbGVtZW50KEksbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoImEiLHtocmVmOmx9LG8pLEguYS5jcmVhdGVFbGVtZW50KCJpbWciLHtvbkxvYWQ6ZnVuY3Rpb24oZSl7ZighMSl9LGFsdDoiY2FsbCIsc3JjOmQsaGVpZ2h0OiIxNTBweCIsd2lkdGg6IjE1MHB4In0pKTpILmEuY3JlYXRlRWxlbWVudChubixudWxsLEguYS5jcmVhdGVFbGVtZW50KCJhIix7aHJlZjpsfSxvKSkpfSxjb250YWN0Zm9ybTpmdW5jdGlvbigpe3ZhciBlLHQsbj1PYmplY3QoRi51c2VDb250ZXh0KShWKSxyPW4uc3RhdGUsbj1uLnNldHRpbmdzLG89bi5jb250YWN0Zm9ybSxhPW4uY29udGFjdGZvcm1Db2xvcixpPW4uY29udGFjdGZvcm1Qb3B1cFRpdGxlLGw9KG4uY29udGFjdGZvcm1Ib3N0LG4uY29udGFjdGZvcm1Qb3B1cExhbmcpLGM9bi5rZXksYz12b2lkIDA9PT1jP251bGw6Yyx1PW4ubWlycm9yLHM9bi5iZ1N0eWxlLGY9bi5hY3RpdmF0b3JTaXplLGQ9bi5oYXNoSWQsZD12b2lkIDA9PT1kP251bGw6ZCxuPW4uc2NyaXB0SWQsbj12b2lkIDA9PT1uP251bGw6bixwPW9uKE9iamVjdChGLnVzZVN0YXRlKSghMSksMiksbT1wWzBdLGg9cFsxXSxnPShwPW8sbz1sLGw9YyxjPXUsdT1kLGQ9bixuPWxvY2F0aW9uLmhvc3RuYW1lLGc9ImdldGJ1dHRvbi5pbyIsdD0iaHR0cHM6Ly9nZXRidXR0b24uaW8iLGI9bi5zbGljZSgwLC1nLmxlbmd0aCksbi5lbmRzV2l0aChnKSYmWyIiLCIuIl0uaW5jbHVkZXMoYi5jaGFyQXQoYi5sZW5ndGgtMSkpJiYoZT0vXi4rQC4rXC4uKyQvaS50ZXN0KHApP3A6bnVsbCksbj1uZXcgVVJMU2VhcmNoUGFyYW1zLGwmJm4uYXBwZW5kKCJ3aWRnZXRfa2V5IixsKSxlJiZuLmFwcGVuZCgidG8iLGUpLGMmJm4uYXBwZW5kKCJtaXJyb3IiLGMpLG8mJiJlbiIhPT1vJiZuLmFwcGVuZCgibGFuZyIsbyksKHV8fGQpJiZuLmFwcGVuZCgiaGFzaF9pZCIsdXx8ZCksdCsiL2NvbnRhY3QtYnV0dG9uPyIrbi50b1N0cmluZygpKTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7aCgiY29udGFjdGZvcm0iPT09ci5idXR0b25Qb3B1cCl9KTt2YXIgYj1vbihPYmplY3QoRi51c2VTdGF0ZSkoITApLDIpLHA9YlswXSx5PWJbMV07cmV0dXJuIE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXsibGluZSI9PT1yLmJ1dHRvblBvcHVwJiZ5KCEwKX0sW3IuYnV0dG9uUG9wdXBdKSxILmEuY3JlYXRlRWxlbWVudChOLHtjb2xvcjphLG1lc3NlbmdlclRpdGxlOmksaWNvbjpILmEuY3JlYXRlRWxlbWVudCh0bixudWxsKSxlbmFibGVQb3B1cDptLGJnU3R5bGU6cyxzaXplOmZ9LEguYS5jcmVhdGVFbGVtZW50KCJkaXYiLG51bGwscCYmSC5hLmNyZWF0ZUVsZW1lbnQoSSxudWxsKSxILmEuY3JlYXRlRWxlbWVudChmbix7b25Mb2FkOmZ1bmN0aW9uKGUpe3koITEpfSxzcmM6Zyxpc0xvYWRpbmc6cH0pKSl9LHNtczpmdW5jdGlvbigpe3ZhciBlPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLHQ9ZS5zdGF0ZSxlPWUuc2V0dGluZ3Msbj1lLnNtcyxyPWUuc21zQ29sb3Isbz1lLnNtc0xhYmVsLGE9ZS5iZ1N0eWxlLGU9ZS5hY3RpdmF0b3JTaXplLGk9TW4oT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSxsPWlbMF0sYz1pWzFdO3JldHVybiBPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7Yygic21zIj09PXQuYnV0dG9uUG9wdXApfSksSC5hLmNyZWF0ZUVsZW1lbnQoTix7Y29sb3I6cixtZXNzZW5nZXJUaXRsZTpvLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoVG4sbnVsbCksZW5hYmxlUG9wdXA6bCxiZ1N0eWxlOmEsc2l6ZTplfSxILmEuY3JlYXRlRWxlbWVudChEbixudWxsLEguYS5jcmVhdGVFbGVtZW50KCJhIix7aHJlZjoic21zOiIuY29uY2F0KG4pfSxuKSkpfSxnb29nbGVtYXA6ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKSx0PWUuc3RhdGUsZT1lLnNldHRpbmdzLG49KGUuZ29vZ2xlbWFwQ29sb3IsZS5nb29nbGVtYXBMYWJlbCkscj1lLmdvb2dsZW1hcCxvPWUuYmdTdHlsZSxhPWUuYWN0aXZhdG9yU2l6ZSxlPWUuZ29vZ2xlbWFwQ3VzdG9tTWVzc2FnZSxyPSJodHRwczovL2dldGJ1dHRvbi5pby8/Y29udHJvbGxlcj1NYXBCdXR0b24mYWN0aW9uPWluZGV4Jmxpbms9Ii5jb25jYXQociksaT1rbihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGw9aVswXSxjPWlbMV07T2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe2MoImdvb2dsZW1hcCI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBpPWtuKE9iamVjdChGLnVzZVN0YXRlKSghMCksMiksdT1pWzBdLHM9aVsxXTtyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpeyJnb29nbGVtYXAiPT09dC5idXR0b25Qb3B1cCYmcyghMCl9LFt0LmJ1dHRvblBvcHVwXSksSC5hLmNyZWF0ZUVsZW1lbnQoTix7Y29sb3I6IiM5MzkzOTMiLG1lc3NlbmdlclRpdGxlOm4saWNvbjpILmEuY3JlYXRlRWxlbWVudCh2bixudWxsKSxjdXN0b21TZXR0aW5nczoiZ29vZ2xlbWFwIixlbmFibGVQb3B1cDpsLGJnU3R5bGU6byxzaXplOmF9LEguYS5jcmVhdGVFbGVtZW50KCJkaXYiLG51bGwsdSYmSC5hLmNyZWF0ZUVsZW1lbnQoSSxudWxsKSxILmEuY3JlYXRlRWxlbWVudChPbix7b25Mb2FkOmZ1bmN0aW9uKGUpe3MoITEpfSxzcmM6cixpc0xvYWRpbmc6dSxsb2FkaW5nOiJsYXp5Iixnb29nbGVtYXBDdXN0b21NZXNzYWdlOmV9KSxlJiZILmEuY3JlYXRlRWxlbWVudCgicCIse3N0eWxlOnttYXJnaW46IjdweCAwcHgiLGxpbmVIZWlnaHQ6IjIzcHgifX0sZSkpKX0sY2FsbGJhY2s6ZnVuY3Rpb24oKXt2YXIgZSx0LG4scj1PYmplY3QoRi51c2VDb250ZXh0KShWKSxvPXIuc3RhdGUscj1yLnNldHRpbmdzLGE9ci5jYWxsYmFjayxpPXIuY2FsbGJhY2tDb2xvcixsPXIuY2FsbGJhY2tMYWJlbCxjPShyLmNhbGxiYWNrSG9zdCxyLmNhbGxiYWNrQ3VzdG9tTWVzc2FnZSksdT1yLmNhbGxiYWNrTmFtZVBsYWNlaG9sZGVyLHM9ci5jYWxsYmFja1Bob25lUGxhY2Vob2xkZXIsZj1yLmNhbGxiYWNrU2VuZEJ1dHRvblRleHQsZD1yLmtleSxkPXZvaWQgMD09PWQ/bnVsbDpkLHA9ci5taXJyb3IsbT1yLmJnU3R5bGUsaD1yLmFjdGl2YXRvclNpemUsZz1yLmhhc2hJZCxnPXZvaWQgMD09PWc/bnVsbDpnLHI9ci5zY3JpcHRJZCxyPXZvaWQgMD09PXI/bnVsbDpyLGI9Sm4oT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSx5PWJbMF0sdj1iWzFdLHc9KGI9YSxhPWksYz1jLHU9dSxzPXMsZj1mLGQ9ZCxwPXAsZz1nLHI9cix0PWxvY2F0aW9uLmhvc3RuYW1lLHc9ImdldGJ1dHRvbi5pbyIsbj0iaHR0cHM6Ly9nZXRidXR0b24uaW8iLGR8fCh4PXQuc2xpY2UoMCwtdy5sZW5ndGgpLHQuZW5kc1dpdGgodykmJlsiIiwiLiJdLmluY2x1ZGVzKHguY2hhckF0KHgubGVuZ3RoLTEpKSYmKGU9L14uK0AuK1wuLiskL2kudGVzdChiKT9iOm51bGwpKSx0PW5ldyBVUkxTZWFyY2hQYXJhbXMsZCYmdC5hcHBlbmQoIndpZGdldF9rZXkiLGQpLGUmJnQuYXBwZW5kKCJ0byIsZSkscCYmdC5hcHBlbmQoIm1pcnJvciIscCksYSYmdC5hcHBlbmQoImNvbG9yIixhLnNsaWNlKDEpKSxjJiZ0LmFwcGVuZCgiY3VzdG9tX21lc3NhZ2UiLGMpLHUmJnQuYXBwZW5kKCJuYW1lX3BsYWNlaG9sZGVyIix1KSxzJiZ0LmFwcGVuZCgicGhvbmVfcGxhY2Vob2xkZXIiLHMpLGYmJnQuYXBwZW5kKCJzZW5kX3RleHQiLGYpLChnfHxyKSYmdC5hcHBlbmQoImhhc2hfaWQiLGd8fHIpLG4rIi9jYWxsYmFjay1idXR0b24/Iit0LnRvU3RyaW5nKCkpO09iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXt2KCJjYWxsYmFjayI9PT1vLmJ1dHRvblBvcHVwKX0pO3ZhciB4PUpuKE9iamVjdChGLnVzZVN0YXRlKSghMCksMiksYj14WzBdLGs9eFsxXTtyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpeyJjYWxsYmFjayI9PT1vLmJ1dHRvblBvcHVwJiZrKCEwKX0sW28uYnV0dG9uUG9wdXBdKSxILmEuY3JlYXRlRWxlbWVudChOLHtjb2xvcjppLG1lc3NlbmdlclRpdGxlOmwsaWNvbjpILmEuY3JlYXRlRWxlbWVudChLbixudWxsKSxlbmFibGVQb3B1cDp5LGJnU3R5bGU6bSxzaXplOmh9LEguYS5jcmVhdGVFbGVtZW50KCJkaXYiLG51bGwsYiYmSC5hLmNyZWF0ZUVsZW1lbnQoSSxudWxsKSxILmEuY3JlYXRlRWxlbWVudChvcix7b25Mb2FkOmZ1bmN0aW9uKGUpe2soITEpfSxzcmM6dyxpc0xvYWRpbmc6Yn0pKSl9LGZhY2Vib29rOmZ1bmN0aW9uKCl7cmV0dXJuIHhuKCk/SC5hLmNyZWF0ZUVsZW1lbnQoeW4sbnVsbCk6SC5hLmNyZWF0ZUVsZW1lbnQoSC5hLkZyYWdtZW50LG51bGwpfSxjYWxlbmRhcjpmdW5jdGlvbigpe3ZhciBlLHQsbixyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLG89ci5zdGF0ZSxyPXIuc2V0dGluZ3MsYT1yLmNhbGVuZGFyLGk9ci5jYWxlbmRhckNvbG9yLGw9ci5jYWxlbmRhckxhYmVsLGM9KHIuY2FsZW5kYXJIb3N0LHIuY2FsZW5kYXJDdXN0b21NZXNzYWdlKSx1PXIuY2FsZW5kYXJOYW1lUGxhY2Vob2xkZXIscz1yLmNhbGVuZGFyUGhvbmVQbGFjZWhvbGRlcixmPXIuY2FsZW5kYXJFbWFpbFBsYWNlaG9sZGVyLGQ9ci5jYWxlbmRhck1lc3NhZ2VQbGFjZWhvbGRlcixwPXIuY2FsZW5kYXJTZW5kQnV0dG9uVGV4dCxtPXIua2V5LG09dm9pZCAwPT09bT9udWxsOm0saD1yLm1pcnJvcixnPXIuYmdTdHlsZSxiPXIuYWN0aXZhdG9yU2l6ZSx5PXIuaGFzaElkLHk9dm9pZCAwPT09eT9udWxsOnkscj1yLnNjcmlwdElkLHI9dm9pZCAwPT09cj9udWxsOnIsdj1kbihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLHc9dlswXSx4PXZbMV0saz0odj1hLGE9aSxjPWMsdT11LHM9cyxmPWYsZD1kLHA9cCxtPW0saD1oLHk9eSxyPXIsdD1sb2NhdGlvbi5ob3N0bmFtZSxrPSJnZXRidXR0b24uaW8iLG49Imh0dHBzOi8vZ2V0YnV0dG9uLmlvIixtfHwoUz10LnNsaWNlKDAsLWsubGVuZ3RoKSx0LmVuZHNXaXRoKGspJiZbIiIsIi4iXS5pbmNsdWRlcyhTLmNoYXJBdChTLmxlbmd0aC0xKSkmJihlPS9eLitALitcLi4rJC9pLnRlc3Qodik/djpudWxsKSksdD1uZXcgVVJMU2VhcmNoUGFyYW1zLG0mJnQuYXBwZW5kKCJ3aWRnZXRfa2V5IixtKSxlJiZ0LmFwcGVuZCgidG8iLGUpLGgmJnQuYXBwZW5kKCJtaXJyb3IiLGgpLGEmJnQuYXBwZW5kKCJjb2xvciIsYS5zbGljZSgxKSksYyYmdC5hcHBlbmQoImN1c3RvbV9tZXNzYWdlIixjKSx1JiZ0LmFwcGVuZCgibmFtZV9wbGFjZWhvbGRlciIsdSkscyYmdC5hcHBlbmQoInBob25lX3BsYWNlaG9sZGVyIixzKSxmJiZ0LmFwcGVuZCgiZW1haWxfcGxhY2Vob2xkZXIiLGYpLGQmJnQuYXBwZW5kKCJtZXNzYWdlX3BsYWNlaG9sZGVyIixkKSxwJiZ0LmFwcGVuZCgic2VuZF90ZXh0IixwKSwoeXx8cikmJnQuYXBwZW5kKCJoYXNoX2lkIix5fHxyKSxuKyIvY2FsZW5kYXItYnV0dG9uPyIrdC50b1N0cmluZygpKTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7eCgiY2FsZW5kYXIiPT09by5idXR0b25Qb3B1cCl9KTt2YXIgUz1kbihPYmplY3QoRi51c2VTdGF0ZSkoITApLDIpLHY9U1swXSxDPVNbMV07cmV0dXJuIE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXsiY2FsZW5kYXIiPT09by5idXR0b25Qb3B1cCYmQyghMCl9LFtvLmJ1dHRvblBvcHVwXSksSC5hLmNyZWF0ZUVsZW1lbnQoTix7Y29sb3I6aSxtZXNzZW5nZXJUaXRsZTpsLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoc24sbnVsbCksY3VzdG9tU2V0dGluZ3M6ImNhbGVuZGFyIixlbmFibGVQb3B1cDp3LGJnU3R5bGU6ZyxzaXplOmJ9LEguYS5jcmVhdGVFbGVtZW50KCJkaXYiLG51bGwsdiYmSC5hLmNyZWF0ZUVsZW1lbnQoSSxudWxsKSxILmEuY3JlYXRlRWxlbWVudChtbix7b25Mb2FkOmZ1bmN0aW9uKGUpe0MoITEpfSxzcmM6ayxpc0xvYWRpbmc6dn0pKSl9LGxpbmU6ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKSx0PWUuc3RhdGUsZT1lLnNldHRpbmdzLG49ZS5saW5lLHI9ZS5saW5lQ29sb3Isbz1lLmxpbmVMYWJlbCxhPWUuYmdTdHlsZSxlPWUuYWN0aXZhdG9yU2l6ZSxpPWpuKE9iamVjdChGLnVzZVN0YXRlKSghMSksMiksbD1pWzBdLGM9aVsxXTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7YygibGluZSI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBpPWpuKE9iamVjdChGLnVzZVN0YXRlKSghMCksMiksdT1pWzBdLHM9aVsxXSxuPShPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7ImxpbmUiPT09dC5idXR0b25Qb3B1cCYmcyghMCl9LFt0LmJ1dHRvblBvcHVwXSksLTEhPT0obj0oaT1uKS5pbmRleE9mKCJAIikpPyhuPWkuc2xpY2UobiksImh0dHBzOi8vbGluZS5tZS90aS9wL34iLmNvbmNhdChuKSk6aSksaT0iaHR0cHM6Ly9hcGkucXJzZXJ2ZXIuY29tL3YxL2NyZWF0ZS1xci1jb2RlLz9zaXplPTI1MHgyNTAmbWFyZ2luPTEwJmRhdGE9Ii5jb25jYXQobik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KE4se2NvbG9yOnIsbWVzc2VuZ2VyVGl0bGU6byxpY29uOkguYS5jcmVhdGVFbGVtZW50KEVuLG51bGwpLGVuYWJsZVBvcHVwOmwsYmdTdHlsZTphLHNpemU6ZX0sSC5hLmNyZWF0ZUVsZW1lbnQoTG4sbnVsbCx1JiZILmEuY3JlYXRlRWxlbWVudChJLG51bGwpLEguYS5jcmVhdGVFbGVtZW50KCJpbWciLHtvbkxvYWQ6ZnVuY3Rpb24oZSl7cyghMSl9LGFsdDoiV2VjaGF0IixzcmM6aSxoZWlnaHQ6IjI1MHB4Iix3aWR0aDoiMjUwcHgifSksSC5hLmNyZWF0ZUVsZW1lbnQoImEiLHtocmVmOiIiLmNvbmNhdChuKSx0YXJnZXQ6Il9ibGFuayJ9LG4pKSl9LHNuYXBjaGF0OmZ1bmN0aW9uKCl7dmFyIGU9T2JqZWN0KEYudXNlQ29udGV4dCkoViksdD1lLnN0YXRlLGU9ZS5zZXR0aW5ncyxuPWUuc25hcGNoYXQscj1lLnNuYXBjaGF0Q29sb3Isbz1lLnNuYXBjaGF0TGFiZWwsYT1lLmJnU3R5bGUsZT1lLmFjdGl2YXRvclNpemUsaT1VbihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGw9aVswXSxjPWlbMV07T2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe2MoInNuYXBjaGF0Ij09PXQuYnV0dG9uUG9wdXApfSk7dmFyIGk9VW4oT2JqZWN0KEYudXNlU3RhdGUpKCEwKSwyKSx1PWlbMF0scz1pWzFdLGk9KE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXsic25hcGNoYXQiPT09dC5idXR0b25Qb3B1cCYmcyghMCl9LFt0LmJ1dHRvblBvcHVwXSksImh0dHBzOi8vZmVlbGluc29uaWNlLWhyZC5hcHBzcG90LmNvbS93ZWIvZGVlcGxpbmsvc25hcGNvZGU/dXNlcm5hbWU9Ii5jb25jYXQobiwiJnR5cGU9UE5HIikpO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChOLHtjb2xvcjpyLG1lc3NlbmdlclRpdGxlOm8saWNvbjpILmEuY3JlYXRlRWxlbWVudChObixudWxsKSxlbmFibGVQb3B1cDpsLGJnU3R5bGU6YSxzaXplOmV9LEguYS5jcmVhdGVFbGVtZW50KEduLG51bGwsdSYmSC5hLmNyZWF0ZUVsZW1lbnQoSSxudWxsKSxILmEuY3JlYXRlRWxlbWVudChxbix7b25Mb2FkOmZ1bmN0aW9uKGUpe3MoITEpfSxhbHQ6IlNuYXBjaGF0IixzcmM6aSxoZWlnaHQ6IjIwMHB4Iix3aWR0aDoiMjAwcHgifSksSC5hLmNyZWF0ZUVsZW1lbnQoV24sbnVsbCxuKSkpfSx2aWJlcjpmdW5jdGlvbigpe3ZhciBlPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLHQ9ZS5zdGF0ZSxlPWUuc2V0dGluZ3Msbj1lLnZpYmVyLHI9ZS52aWJlckNvbG9yLG89ZS52aWJlckxhYmVsLGE9ZS5iZ1N0eWxlLGU9ZS5hY3RpdmF0b3JTaXplLGk9Wm4oT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSxsPWlbMF0sYz1pWzFdO09iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtjKCJ2aWJlciI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBpPVpuKE9iamVjdChGLnVzZVN0YXRlKSghMCksMiksdT1pWzBdLHM9aVsxXSxmPShPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7InZpYmVyIj09PXQuYnV0dG9uUG9wdXAmJnMoITApfSxbdC5idXR0b25Qb3B1cF0pLC9eWzAtOSAoKSstXSskLy50ZXN0KGk9bik/KGY9aS5yZXBsYWNlKC9cRCsvZywiIikucmVwbGFjZSgvXlswXSsvZywiIikse3FyOiJ2aWJlcjovL2FkZD9udW1iZXI9Ii5jb25jYXQoZiksbGluazoidmliZXI6Ly9jaGF0P251bWJlcj0iLmNvbmNhdChmKX0pOntxcjoidmliZXI6Ly9hZGQ/bnVtYmVyPSIuY29uY2F0KGVuY29kZVVSSUNvbXBvbmVudChpKSksbGluazoidmliZXI6Ly9wYT9jaGF0VVJJPSIuY29uY2F0KGVuY29kZVVSSUNvbXBvbmVudChpKSl9KSxpPWYubGluayxkPSJodHRwczovL2FwaS5xcnNlcnZlci5jb20vdjEvY3JlYXRlLXFyLWNvZGUvP3NpemU9MjUweDI1MCZtYXJnaW49MTAmZGF0YT0iLmNvbmNhdChmLnFyKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoTix7Y29sb3I6cixtZXNzZW5nZXJUaXRsZTpvLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoJG4sbnVsbCksZW5hYmxlUG9wdXA6bCxiZ1N0eWxlOmEsc2l6ZTplfSxILmEuY3JlYXRlRWxlbWVudChRbixudWxsLHUmJkguYS5jcmVhdGVFbGVtZW50KEksbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoImltZyIse29uTG9hZDpmdW5jdGlvbihlKXtzKCExKX0sYWx0OiJWaWJlciIsc3JjOmQsaGVpZ2h0OiIyNTBweCIsd2lkdGg6IjI1MHB4In0pLEguYS5jcmVhdGVFbGVtZW50KFluLG51bGwsSC5hLmNyZWF0ZUVsZW1lbnQoImEiLHtocmVmOmksdGFyZ2V0OiJfYmxhbmsifSxuLEguYS5jcmVhdGVFbGVtZW50KCJiciIsbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoInNwYW4iLG51bGwsIihPcGVuIGluIFZpYmVyIGZvciBEZXNrdG9wKSIpKSkpKX0sd2hhdHNhcHA6ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKSx0PWUuc3RhdGUsZT1lLnNldHRpbmdzLG49ZS53aGF0c2FwcEFnZW50SW1hZ2UxLHI9ZS53aGF0c2FwcEFnZW50SW1hZ2UyLG89ZS53aGF0c2FwcEFnZW50SW1hZ2UzLGE9ZS53aGF0c2FwcEFnZW50SW1hZ2U0LGk9ZS53aGF0c2FwcEFnZW50SW1hZ2U1LGw9ZS53aGF0c2FwcEFnZW50TmFtZTEsYz1lLndoYXRzYXBwQWdlbnROYW1lMix1PWUud2hhdHNhcHBBZ2VudE5hbWUzLHM9ZS53aGF0c2FwcEFnZW50TmFtZTQsZj1lLndoYXRzYXBwQWdlbnROYW1lNSxkPWUud2hhdHNhcHBBZ2VudFBvc2l0aW9uMSxwPWUud2hhdHNhcHBBZ2VudFBvc2l0aW9uMixtPWUud2hhdHNhcHBBZ2VudFBvc2l0aW9uMyxoPWUud2hhdHNhcHBBZ2VudFBvc2l0aW9uNCxnPWUud2hhdHNhcHBBZ2VudFBvc2l0aW9uNSxiPWUud2hhdHNhcHAseT1lLndoYXRzYXBwQWdlbnROdW1iZXIyLHY9ZS53aGF0c2FwcEFnZW50TnVtYmVyMyx3PWUud2hhdHNhcHBBZ2VudE51bWJlcjQseD1lLndoYXRzYXBwQWdlbnROdW1iZXI1LGs9ZS5wcmVGaWxsZWRNZXNzYWdlLFM9ZS53aGF0c2FwcFByZUZpbGxlZE1lc3NhZ2UyLEM9ZS53aGF0c2FwcFByZUZpbGxlZE1lc3NhZ2UzLEU9ZS53aGF0c2FwcFByZUZpbGxlZE1lc3NhZ2U0LE89ZS53aGF0c2FwcFByZUZpbGxlZE1lc3NhZ2U1LGo9ZS5idXR0b25Cb3JkZXJSYWRpdXMsQT1lLndoYXRzYXBwQ29sb3IsUD1lLmJnU3R5bGUsST1lLmFjdGl2YXRvclNpemUsXz1lLm1pcnJvcix6PWUuYm9yZGVyLGU9ZS53aGF0c2FwcExhYmVsLFQ9dXIoT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSxMPVRbMF0sTT1UWzFdLFI9KE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtNKCJ3aGF0c2FwcCI9PT10LmJ1dHRvblBvcHVwKX0pLCQoaikpLFQ9T2JqZWN0KEYudXNlTWVtbykoZnVuY3Rpb24oKXtyZXR1cm5be3Bob3RvOm4sbmFtZTpsLHBvc2l0aW9uOmQsbnVtYmVyOmIsbWVzc2FnZTprfSx7cGhvdG86cixuYW1lOmMscG9zaXRpb246cCxudW1iZXI6eSxtZXNzYWdlOlN9LHtwaG90bzpvLG5hbWU6dSxwb3NpdGlvbjptLG51bWJlcjp2LG1lc3NhZ2U6Q30se3Bob3RvOmEsbmFtZTpzLHBvc2l0aW9uOmgsbnVtYmVyOncsbWVzc2FnZTpFfSx7cGhvdG86aSxuYW1lOmYscG9zaXRpb246ZyxudW1iZXI6eCxtZXNzYWdlOk99XX0sW24scixvLGEsaSxsLGMsdSxzLGYsZCxwLG0saCxnLGIseSx2LHcseCxrLFMsQyxFLE9dKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoTix7Y29sb3I6QSxtZXNzZW5nZXJUaXRsZTplLGljb246SC5hLmNyZWF0ZUVsZW1lbnQobHIse2lzSXRlbUljb246IndhX2hlYWRlcl9pY29uIn0pLGVuYWJsZVBvcHVwOkwsY3VzdG9tU2V0dGluZ3M6IndoYXRzYXBwIixiZ1N0eWxlOlAsc2l6ZTpJfSxILmEuY3JlYXRlRWxlbWVudChkcixudWxsLFQubWFwKGZ1bmN0aW9uKGUsdCl7dmFyIG4scixvPWUucGhvdG8sYT1lLm5hbWUsaT1lLnBvc2l0aW9uLGw9ZS5udW1iZXIsZT1lLm1lc3NhZ2UsYz0oZT1lLChuPWwpJiZuLnN0YXJ0c1dpdGgoImh0dHBzOi8vY2hhdC53aGF0c2FwcC5jb20vIik/cj1uOihjPW4/bi5tYXRjaCgvXGQrL2cpLmpvaW4oIiIpOm51bGwscj0iaHR0cHM6Ly93YS5tZS8iLmNvbmNhdChjKSxudWxsIT09biYmZSYmKHI9IiIuY29uY2F0KHIsIj90ZXh0PSIpLmNvbmNhdChlbmNvZGVVUklDb21wb25lbnQoZSkpKSkscik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KCJsaSIse2tleTp0LHN0eWxlOntkaXNwbGF5OiFsJiYibm9uZSJ9fSxILmEuY3JlYXRlRWxlbWVudChwcix7aHJlZjpjLHRhcmdldDoiX2JsYW5rIixyZWw6Im5vcmVmZXJyZXIiLGNvbG9yOkF9LEguYS5jcmVhdGVFbGVtZW50KGdyLG51bGwsSC5hLmNyZWF0ZUVsZW1lbnQoaHIse2luZGljYXRvclBvc2l0aW9uOlIsbWlycm9yOl99LEguYS5jcmVhdGVFbGVtZW50KG1yLHtzcmM6b3x8bnVsbCxidXR0b25Cb3JkZXJSYWRpdXM6aixib3JkZXI6en0pKSxILmEuY3JlYXRlRWxlbWVudCgiZGl2IixudWxsLEguYS5jcmVhdGVFbGVtZW50KGJyLHttaXJyb3I6X30sYSksSC5hLmNyZWF0ZUVsZW1lbnQoeXIse21pcnJvcjpffSxpKSkpLEguYS5jcmVhdGVFbGVtZW50KGxyLHtpc0l0ZW1JY29uOiEwLGNvbG9yOkF9KSkpfSkpKX0sd2VjaGF0OmZ1bmN0aW9uKCl7dmFyIGU9T2JqZWN0KEYudXNlQ29udGV4dCkoViksdD1lLnN0YXRlLGU9ZS5zZXR0aW5ncyxuPWUud2VjaGF0LHI9ZS53ZWNoYXRDb2xvcixvPWUud2VjaGF0TGFiZWwsYT1lLmJnU3R5bGUsZT1lLmFjdGl2YXRvclNpemUsaT1hcihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGw9aVswXSxjPWlbMV07T2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe2MoIndlY2hhdCI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBpPWFyKE9iamVjdChGLnVzZVN0YXRlKSghMCksMiksdT1pWzBdLHM9aVsxXSxpPShPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7IndlY2hhdCI9PT10LmJ1dHRvblBvcHVwJiZzKCEwKX0sW3QuYnV0dG9uUG9wdXBdKSwiaHR0cDovL3dlaXhpbi5xcS5jb20vci8iLmNvbmNhdChlbmNvZGVVUklDb21wb25lbnQobikpKSxpPSJodHRwczovL2FwaS5xcnNlcnZlci5jb20vdjEvY3JlYXRlLXFyLWNvZGUvP3NpemU9MjUweDI1MCZtYXJnaW49MTAmZGF0YT0iLmNvbmNhdChpKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoTix7Y29sb3I6cixtZXNzZW5nZXJUaXRsZTpvLGljb246SC5hLmNyZWF0ZUVsZW1lbnQocnIsbnVsbCksZW5hYmxlUG9wdXA6bCxiZ1N0eWxlOmEsc2l6ZTplfSxILmEuY3JlYXRlRWxlbWVudChjcixudWxsLHUmJkguYS5jcmVhdGVFbGVtZW50KEksbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoImltZyIse29uTG9hZDpmdW5jdGlvbihlKXtzKCExKX0sYWx0OiJXZWNoYXQiLHNyYzppLGhlaWdodDoiMjUwcHgiLHdpZHRoOiIyNTBweCJ9KSxILmEuY3JlYXRlRWxlbWVudCgiYSIse2hyZWY6Imh0dHA6Ly93ZWl4aW4ucXEuY29tL3IvIi5jb25jYXQobiksdGFyZ2V0OiJfYmxhbmsifSwiaHR0cDovL3dlaXhpbi5xcS5jb20vci8iLmNvbmNhdChuKSkpKX0sd29uZGVyY2hhdDpmdW5jdGlvbigpe3ZhciBlPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLHQ9ZS5zdGF0ZSxlPWUuc2V0dGluZ3Msbj1lLndvbmRlcmNoYXQscj1lLndvbmRlcmNoYXRDb2xvcixvPWUud29uZGVyY2hhdExhYmVsLGE9ZS5iZ1N0eWxlLGk9ZS5hY3RpdmF0b3JTaXplLGU9ZS5rZXksbD12cihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGM9bFswXSx1PWxbMV0sbj0obD1uLG49ZSxlPW5ldyBVUkxTZWFyY2hQYXJhbXMsbiYmZS5hcHBlbmQoImdldGJ1dHRvbl9mYWxsYmFjayIsbiksRCgpJiZlLmFwcGVuZCgiaGVhZGVySGlkZGVuIiwhMCksImh0dHBzOi8vYXBwLndvbmRlcmNoYXQuaW8vY2hhdGJvdCIrIi8iLmNvbmNhdChsLCI/IikrZS50b1N0cmluZygpKTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7dSgid29uZGVyY2hhdCI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBsPXZyKE9iamVjdChGLnVzZVN0YXRlKSghMCksMiksZT1sWzBdLHM9bFsxXTtyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpeyJ3b25kZXJjaGF0Ij09PXQuYnV0dG9uUG9wdXAmJnMoITApfSxbdC5idXR0b25Qb3B1cF0pLEguYS5jcmVhdGVFbGVtZW50KE4se2NvbG9yOnIsbWVzc2VuZ2VyVGl0bGU6byxpY29uOkguYS5jcmVhdGVFbGVtZW50KGZyLG51bGwpLGVuYWJsZVBvcHVwOmMsYmdTdHlsZTphLHNpemU6aSxjdXN0b21TZXR0aW5nczoid29uZGVyY2hhdCJ9LEguYS5jcmVhdGVFbGVtZW50KEguYS5GcmFnbWVudCxudWxsLGUmJkguYS5jcmVhdGVFbGVtZW50KEksbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoa3Ise29uTG9hZDpmdW5jdGlvbihlKXtzKCExKX0sc3JjOm4saXNMb2FkaW5nOmV9KSkpfSxhaTpmdW5jdGlvbigpe3ZhciB0LHIsZSxuPV9yKE9iamVjdChGLnVzZVN0YXRlKSghMSksMiksbz1uWzBdLGE9blsxXSxuPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLGk9bi5zdGF0ZSxsPW4uYWN0aW9ucyxuPW4uc2V0dGluZ3MsYz1uLmFpLHU9bi5haUNvbG9yLHM9bi5haUljb24sZj0obi5haVBvcHVwVGl0bGUsbi5iZ1N0eWxlLG4uYWlQb3B1cExhbmcsbi5rZXksbi5taXJyb3IpLGQ9bi5haUF1dG9vcGVuLHA9bi5wb3NpdGlvbixtPW4uYWN0aXZhdG9yU2l6ZSxoPW4uc2hpZnRWZXJ0aWNhbCxnPW4uc2hpZnRIb3Jpem9udGFsLG49KE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXthKCJhaSI9PT1pLmJ1dHRvblBvcHVwKX0pLE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtzJiYoKG5ldyBJbWFnZSkuc3JjPXMpfSxbXSksbj17Y2xvc2VQb3B1cDpsLmNsb3NlQnV0dG9uUG9wdXB9LHQ9bi5jbG9zZVBvcHVwLG49U3IoT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSxsPW5bMF0scj1uWzFdLE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXt2YXIgZSx0PSJnYi1haS1zY3JpcHQiLG49ZG9jdW1lbnQucXVlcnlTZWxlY3Rvcigic2NyaXB0W2RhdGEtaWQ9Ii5jb25jYXQodCwiXSIpKTtuPyJsb2FkZWQiPT09bi5nZXRBdHRyaWJ1dGUoImRhdGEtc3RhdHVzIik/cighMCk6KG4ub25sb2FkPWZ1bmN0aW9uKCl7cighMCksbi5zZXRBdHRyaWJ1dGUoImRhdGEtc3RhdHVzIiwibG9hZGVkIil9LG4ub25lcnJvcj1mdW5jdGlvbihlKXtjb25zb2xlLmVycm9yKCJFcnJvciBsb2FkaW5nIEFJIHNjcmlwdCIsZSl9KToobj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSwwPD0oZT1PcigpKS5pbmRleE9mKCJsb2NhbGhvc3QiKSYmKG4udHlwZT0ibW9kdWxlIiksbi5zcmM9ZSxuLmRlZmVyPSEwLG4uc2V0QXR0cmlidXRlKCJkYXRhLWlkIix0KSxuLnNldEF0dHJpYnV0ZSgiZGF0YS1zdGF0dXMiLCJsb2FkaW5nIiksbi5vbmxvYWQ9ZnVuY3Rpb24oKXtyKCEwKSxuLnNldEF0dHJpYnV0ZSgiZGF0YS1zdGF0dXMiLCJsb2FkZWQiKX0sbi5vbmVycm9yPWZ1bmN0aW9uKGUpe2NvbnNvbGUuZXJyb3IoIkVycm9yIGxvYWRpbmcgQUkgc2NyaXB0IixlKX0sZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChuKSl9LFtyXSksZT1PYmplY3QoRi51c2VDYWxsYmFjaykoZnVuY3Rpb24oZSl7ZT1lLmRldGFpbDtjb25zb2xlLmxvZygiR0IgcmVjZWl2ZWQgZXZlbnQ6IixlKSxlP2UuaWQhPT1Fcj9jb25zb2xlLmxvZygiR0Igc2tpcCBldmVudCwgaWQ6IixlLmlkKTp2b2lkIDAhPT1lLmlzX3Nob3dfcG9wdXAmJnQoZS5pc19zaG93X3BvcHVwKTpjb25zb2xlLmVycm9yKCJldmVudE1hbmFnZXI6IGV2ZW50LmRldGFpbCBub3QgZm91bmQhIil9LFt0XSksT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe3JldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiR2V0YnV0dG9uVXBkYXRlU3RhdGUiLGUpLGZ1bmN0aW9uKCl7cmV0dXJuIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJHZXRidXR0b25VcGRhdGVTdGF0ZSIsZSl9fSxbZSx0XSkse2lzU2NyaXB0TG9hZGVkOmwsaW5pdFBvcHVwOmpyLGFwcGx5U2V0dGluZ3NQb3B1cDpJcixvcGVuUG9wdXA6QXIsY2xvc2VQb3B1cDpmdW5jdGlvbigpe3QoKSxQcigpfX0pLGI9bi5pc1NjcmlwdExvYWRlZCx5PW4ub3BlblBvcHVwLHY9bi5jbG9zZVBvcHVwLHc9bi5hcHBseVNldHRpbmdzUG9wdXAseD1uLmluaXRQb3B1cDtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7YiYmdyh7Y29sb3JfaGVhZGVyOnV9KX0sW3VdKTt2YXIgbD1fcihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGs9bFswXSxTPWxbMV07T2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe3ZhciBlO28/az95KCk6a3x8KGI/KGU9e2JvdF9pZDpjLGJvdF9sb2dvOnN8fG51bGwsY29sb3JfaGVhZGVyOnUsaXNfc2hvd19wb3B1cDpkfHxvLGlzX3Nob3dfYWN0aXZhdG9yOiExLGFjdGl2YXRvcl9zaXplOm0sYWN0aXZhdG9yX29mZnNldF94OmcsYWN0aXZhdG9yX29mZnNldF95OmgsYWN0aXZhdG9yX3Bvc2l0aW9uOnAsaXNfbWlycm9yOmZ9LGNvbnNvbGUubG9nKCJhaSBzY3JpcHQgbG9hZGluZy4uLiIsd2luZG93LkdCQUksZSkseChlKSxTKCEwKSk6Y29uc29sZS5lcnJvcigiUG9wdXAgQUkgbm90IGluaXRpYWxpemVkIikpOihifHxkKSYmdigpfSxbb10pfX0sTnI9ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncy5vcmRlcjtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT8oZT1lWzBdLEguYS5jcmVhdGVFbGVtZW50KEguYS5GcmFnbWVudCxudWxsLGhbZV0/SC5hLmNyZWF0ZUVsZW1lbnQoaFtlXSx7a2V5OjF9KTpudWxsKSk6bnVsbH07ZnVuY3Rpb24gRHIoZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9VcihlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9VcihlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIFVyKGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9ZnVuY3Rpb24gQnIoKXtmdW5jdGlvbiBlKCl7SSghMCksc2V0VGltZW91dChmdW5jdGlvbigpe0koITEpfSw1MDApfXZhciB0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLG49KGo9dC5zdGF0ZSkuYnV0dG9ucyxyPWouYnV0dG9uUG9wdXAsbz0oaj10LmFjdGlvbnMpLnRvZ2dsZUJ1dHRvbnMsYT1qLnNob3dCdXR0b25zLGk9ai5jbG9zZUJ1dHRvblBvcHVwLGw9KGo9dC5zZXR0aW5ncykuZGlyZWN0aW9uLGM9ai5hY3RpdmF0b3JTaXplLHQ9ai5hY3RpdmF0b3JJY29uLHU9ai5idXR0b25TdHlsZSxzPWouYnV0dG9uQW5pbWF0aW9uLGY9ai5idXR0b25Db2xvcixkPWouYnV0dG9uQm9yZGVyUmFkaXVzLHA9ai5idXR0b25JbWFnZVVybCxtPWouYm9yZGVyLGg9ai5idXR0b25TaGFkb3csZz1qLmJ1dHRvbk9wYWNpdHksYj1qLmJnU3R5bGUseT1qLm5vdGlmaWNhdGlvbkluZGljYXRvcix2PWoubWlycm9yLHc9ai5idXR0b25UZXh0LHg9ai5idXR0b25UZXh0Q2xvc2Usaz1qLmFuaW1hdGlvbixTPWouaXNTaW5nbGUsQz1qLm9yZGVyLEU9ai5wb3NpdGlvbixPPSQoai5idXR0b25Cb3JkZXJSYWRpdXMpLGo9cGUoai5idXR0b25Db2xvciw1KSxBPURyKE9iamVjdChGLnVzZVN0YXRlKSghMSksMiksUD1BWzBdLEk9QVsxXTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoU3QsbnVsbCxVKCkmJiJyb3ciIT09bCYmSC5hLmNyZWF0ZUVsZW1lbnQocHQsbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoeHQse29wZW5lZDpuLHBvcHVwT3BlbmVkOnIsYnV0dG9uQW5pbWF0aW9uOnMsY29sb3I6ZixidXR0b25Cb3JkZXJSYWRpdXM6ZCxzaXplOmMsYW5pbWF0aW9uOmssYnV0dG9uU3R5bGU6dX0sSC5hLmNyZWF0ZUVsZW1lbnQod3Qse29uTW91c2VVcDpmdW5jdGlvbigpe1B8fCgocj9pOm8pKCksZSgpLFcoImFyb3VuZCI9PT1sP24/Yzo5OTk5OTk5OTk6ImNsYXNzaWMiPT09dT9jOjMqYykpfSxvbk1vdXNlRW50ZXI6ZnVuY3Rpb24oKXtQfHwhVSgpfHwhMSE9PW58fHJ8fChhKCksZSgpLCJhcm91bmQiPT09bCYmVyg5OTk5OTk5OTkpKX0sZ3JhZGllbnQ6aixpbmRpY2F0b3JQb3NpdGlvbjpPLG9wZW5lZDpuLHBvcHVwT3BlbmVkOnIsImRhdGEtY29tcG9uZW50LW5hbWUiOiJCYXNlQnV0dG9uQWN0aXZhdG9yIiwiYXJpYS1sYWJlbCI6Ik9wZW4gbWVzc2VuZ2VycyBsaXN0Iixjb2xvcjpmLHNpemU6YyxidXR0b25JbWFnZTpwLGJvcmRlcjptLGJ1dHRvbkJvcmRlclJhZGl1czpkLGJ1dHRvblNoYWRvdzpoLGJ1dHRvbk9wYWNpdHk6ZyxiZ1N0eWxlOmIsYnV0dG9uQW5pbWF0aW9uOnMsbm90aWZpY2F0aW9uSW5kaWNhdG9yOnksYnV0dG9uU3R5bGU6dSxtaXJyb3I6dixhbmltYXRpb246ayxpc1NpbmdsZTpTLGRpcmVjdGlvbjpsLHBvc2l0aW9uOkUsb3JkZXI6Q30sSC5hLmNyZWF0ZUVsZW1lbnQoVnIse29wZW5lZDpuLGJ1dHRvblN0eWxlOnUsYnV0dG9uSW1hZ2VVcmw6cH0sIW4mJkguYS5jcmVhdGVFbGVtZW50KExyLHtidXR0b25JbWFnZToiY2xhc3NpYyIhPT11JiZwLGFjdGl2YXRvckljb246IXAmJnR9KSxuJiZILmEuY3JlYXRlRWxlbWVudChNcix7c3R5bGU6IndpZHRoOiA0MXB4In0pKSwiY2xhc3NpYyIhPT11JiYhbiYmSC5hLmNyZWF0ZUVsZW1lbnQoRyx7Y29sb3I6ZixtaXJyb3I6dixzaXplOmN9LHcpLCJjbGFzc2ljIiE9PXUmJm4mJkguYS5jcmVhdGVFbGVtZW50KEcse2NvbG9yOmYsbWlycm9yOnYsc2l6ZTpjfSx4KSkpKX12YXIgRnI9T2JqZWN0KEMuZSkoWyIwJXt0cmFuc2Zvcm06cm90YXRlKC0yNzBkZWcpO310b3t0cmFuc2Zvcm06cm90YXRlKDApO30iXSksSHI9T2JqZWN0KEMuZSkoWyIwJXt0cmFuc2Zvcm06cm90YXRlKDI3MGRlZyk7fXRve3RyYW5zZm9ybTpyb3RhdGUoMCk7fSJdKSxWcj1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy12MnAzaDItMCJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUub3BlbmVkLG49ZS5idXR0b25TdHlsZSxlPWUuYnV0dG9uSW1hZ2VVcmw7cmV0dXJuIE9iamVjdChDLmMpKFsiYW5pbWF0aW9uLWR1cmF0aW9uOjAuNHM7YW5pbWF0aW9uLWRlbGF5Oi4wNXM7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTttYXJnaW4tdG9wOi0xcHg7IiwiOyIsIjsiLCIgIiwiIl0sdCYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tbmFtZToiLCI7Il0sRnIpLCF0JiZPYmplY3QoQy5jKShbImFuaW1hdGlvbi1uYW1lOiIsIjsiXSxIciksImNsYXNzaWMiIT09biYmT2JqZWN0KEMuYykoWyJkaXNwbGF5OmdyaWQ7cGxhY2UtY29udGVudDpjZW50ZXI7Il0pLGUmJiJjbGFzc2ljIj09PW4mJk9iamVjdChDLmMpKFsiZGlzcGxheTpub25lOyJdKSl9KTtmdW5jdGlvbiAkcihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP1dyKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP1dyKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gV3IoZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiBHcigpe3JldHVybiBPYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncy5pc1NpbmdsZT9ILmEuY3JlYXRlRWxlbWVudChOcixudWxsKTpILmEuY3JlYXRlRWxlbWVudChacixudWxsKX1mdW5jdGlvbiBxcigpe3ZhciBlPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLm9yZGVyO3JldHVybiBBcnJheS5pc0FycmF5KGUpP0guYS5jcmVhdGVFbGVtZW50KEguYS5GcmFnbWVudCxudWxsLGUubWFwKGZ1bmN0aW9uKGUsdCl7aWYoUnIuaGFzT3duUHJvcGVydHkoZSkpcmV0dXJuIFJyW2VdP0guYS5jcmVhdGVFbGVtZW50KFJyW2VdLHtrZXk6dH0pOm51bGx9KSk6bnVsbH12YXIgWnI9ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKSx0PWUuc3RhdGUsZT1lLnNldHRpbmdzLG89ZS5vcmRlcixhPWUuYWN0aXZhdG9yU2l6ZSxpPWUuc2hpZnRWZXJ0aWNhbCxuPWUuc2hpZnRIb3Jpem9udGFsLGU9ZS5kaXJlY3Rpb247aWYoIUFycmF5LmlzQXJyYXkobykpcmV0dXJuIG51bGw7dmFyIGw9dmUoKS5oZWlnaHQscj0kcihPYmplY3QoRi51c2VTdGF0ZSkoMCksMiksYz1yWzBdLHU9clsxXTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7dmFyIGU9YSt2dCx0PW8ubGVuZ3RoLG49TWF0aC5mbG9vcigobC1pKS9lKS0xLG49TWF0aC5jZWlsKG4qZSkscj1NYXRoLmNlaWwoZSp0L24pO3UodC1uL2UqKHItMSk8MiYmMjxuL2U/bi0rZTpuKX0sW2xdKTt2YXIgcj0kcihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLHM9clswXSxmPXJbMV0scj0kcihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGQ9clswXSxwPXJbMV0scj0oT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe3QuYnV0dG9ucz8oZighMCkscCghMCkpOmYoITEpfSxbdC5idXR0b25zXSksImFyb3VuZCI9PT1lP28uc2xpY2UoMCw0KTpvKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoSC5hLkZyYWdtZW50LG51bGwsZCYmSC5hLmNyZWF0ZUVsZW1lbnQoWHIse2lzU2hvdzpzLG9uQW5pbWF0aW9uRW5kOmZ1bmN0aW9uKCl7cChzKX0saGVpZ2h0OmMsZGlyZWN0aW9uOmUsb3JkZXI6byxzaGlmdFZlcnRpY2FsOmksc2hpZnRIb3Jpem9udGFsOm4sYWN0aXZhdG9yU2l6ZTphfSxyLm1hcChmdW5jdGlvbihlLHQpe3JldHVybiBoW2VdP0guYS5jcmVhdGVFbGVtZW50KGhbZV0se2tleTp0fSk6bnVsbH0pKSxILmEuY3JlYXRlRWxlbWVudChCcixudWxsKSl9LFhyPU9iamVjdChDLmQpKGUpLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xd3hkZDJzLTAifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLmRpcmVjdGlvbixuPWUudGhlbWUscj1lLm9yZGVyLG89ZS5zaGlmdFZlcnRpY2FsLGE9ZS5zaGlmdEhvcml6b250YWwsaT1lLmFjdGl2YXRvclNpemUsZT1lLmhlaWdodDtyZXR1cm4gT2JqZWN0KEMuYykoWyIiLCIgIiwiICIsIiJdLCJhcm91bmQiPT09dD9PYmplY3QoQy5jKShbImRpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0cmFuc2Zvcm06cm90YXRlKCIsImRlZyk7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOiIsInB4OyIsIjoiLCJweDsiXSwicmlnaHQiPT09bi5wb3NpdGlvbj8xNSpyLnNsaWNlKDAsNCkubGVuZ3RoOjE1KnIuc2xpY2UoMCw0KS5sZW5ndGgrOTAsbyooNzA8PWk/My4yOjIuNSksbi5wb3NpdGlvbiwyLjUqYSk6T2JqZWN0KEMuYykoWyJkaXNwbGF5OmlubGluZS1mbGV4O2ZsZXgtd3JhcDoiLCI7bWFyZ2luLSIsIjphdXRvO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0OyJdLCJsZWZ0Ij09PW4ucG9zaXRpb24/IndyYXAiOiJ3cmFwLXJldmVyc2UiLCJsZWZ0Ij09PW4ucG9zaXRpb24/InJpZ2h0IjoibGVmdCIpLCJyb3ciPT09dCYmT2JqZWN0KEMuYykoWyJmbGV4LWRpcmVjdGlvbjoiLCI7ZmxleC13cmFwOiIsIjsiXSwicmlnaHQiPT09bi5wb3NpdGlvbiYmInJvdy1yZXZlcnNlIiwibGVmdCI9PT1uLnBvc2l0aW9uJiYid3JhcC1yZXZlcnNlIiksImNvbHVtbiI9PT10JiZPYmplY3QoQy5jKShbImZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlO2hlaWdodDoiLCI7Il0sZSsicHgiKSl9KTtmdW5jdGlvbiBZcihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP1FyKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP1FyKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gUXIoZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiBLcigpe3ZhciBlPSh0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5icmFuZGluZyx0PXQuYWN0aXZhdG9yU2l6ZTtyZXR1cm4gZSYmSC5hLmNyZWF0ZUVsZW1lbnQobm8se3NpemU6dCx0eXBlOiJsaW5rIixocmVmOnJvLHRhcmdldDoiX2JsYW5rIiwiYXJpYS1sYWJlbCI6IkdvIHRvIEdldEJ1dHRvbi5pbyB3ZWJzaXRlIn0sSC5hLmNyZWF0ZUVsZW1lbnQodG8sbnVsbCkpfXZhciBKcj1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xYXU4cnlsLTAifSkoWyJwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDo2NHB4O21hcmdpbjphdXRvOyJdKSxlbz1DLmQuc3Bhbi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWF1OHJ5bC0xIn0pKFsicG9zaXRpb246YWJzb2x1dGU7bGVmdDoycHg7cmlnaHQ6MDtib3R0b206LTFweDtoZWlnaHQ6MXB4O2JhY2tncm91bmQ6I2JlYmViZTsiXSksdG89ZnVuY3Rpb24oKXt2YXIgZT1ZcihILmEudXNlU3RhdGUoITEpLDIpLHQ9ZVswXSxuPWVbMV07cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KEpyLHtvbk1vdXNlRW50ZXI6ZnVuY3Rpb24oKXtyZXR1cm4gbighMCl9LG9uTW91c2VMZWF2ZTpmdW5jdGlvbigpe3JldHVybiBuKCExKX19LEguYS5jcmVhdGVFbGVtZW50KCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHZpZXdCb3g6IjAgMCA1OC4xNiAxMC4xNSJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTIuNDksNi40MiwxLjY1LDkuNzVjLS4wOS4yNy4xOC41NC40LjIxTDMuNjgsNy44OUE1LjQ5LDUuNDksMCwwLDAsNC43Niw4QzcuNCw4LDkuNTMsNi4yMSw5LjUzLDRTNy40LDAsNC43NiwwLDAsMS43OSwwLDRBMy40NywzLjQ3LDAsMCwwLC4yNCw1LjI1YS40NS40NSwwLDAsMCwuNDkuMTgsNy4wNyw3LjA3LDAsMCwwLC43LS4yNnMuMjQtLjEuMTktLjQ4aDBBMiwyLDAsMCwxLDEuNDksNEMxLjQ5LDIuNjIsMywxLjUsNC43NiwxLjVTOCwyLjYyLDgsNCw2LjU3LDYuNSw0Ljc2LDYuNWE0LjA2LDQuMDYsMCwwLDEtMS42OC0uMzZBLjQ5LjQ5LDAsMCwwLDIuNDksNi40MloiLGZpbGw6IiNhZmFmYWYifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTEuMTIsMTAuMTVIMTFsLTEuNDktLjlhNS40NSw1LjQ1LDAsMCwxLTIuNC42LDQuMTYsNC4xNiwwLDAsMS0yLjI3LS42Mkw1LDkuMTdjMi4yMiwwLDUuNDMtMS42Niw1LjYxLTQuMzdoMGEzLDMsMCwwLDEsLjU3LDEuODYsMi4zMywyLjMzLDAsMCwxLS42NSwxLjY0bC41MiwxLjI5cy4yMi40NC4xNi41MS0uMDYuMDUtLjExLjA1WiIsZmlsbDoiI2FmYWZhZiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik00OS44NCwzLjIxaDBhMi4zMywyLjMzLDAsMCwxLDIuMzIsMi4zNHYxLjNhMi4zMywyLjMzLDAsMCwxLTIuMzIsMi4zM2gwYTIuMzQsMi4zNCwwLDAsMS0yLjMzLTIuMzNWNS41NUEyLjM0LDIuMzQsMCwwLDEsNDkuODQsMy4yMVptMCwxLjE2aDBhMSwxLDAsMCwxLDEsMVY3YTEsMSwwLDAsMS0xLDFoMGExLDEsMCwwLDEtMS0xVjUuMzlBMSwxLDAsMCwxLDQ5Ljg0LDQuMzdaIixmaWxsOiIjYWZhZmFmIixmaWxsUnVsZToiZXZlbm9kZCJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik01NS44MywzLjIxaDBhMi4zNCwyLjM0LDAsMCwxLDIuMzMsMi4zNFY5LjA2SDU2Ljg0VjUuMzlhMSwxLDAsMCwwLTEtMWgwYTEsMSwwLDAsMC0xLDFWOS4wNkg1My41VjUuNTVBMi4zNCwyLjM0LDAsMCwxLDU1LjgzLDMuMjFaIixmaWxsOiIjYWZhZmFmIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTM2LjkzLDkuMDZoMGEyLjMzLDIuMzMsMCwwLDAsMi4zMy0yLjMyVjMuMjFIMzcuOTRWNi45YTEsMSwwLDAsMS0xLDFoMGExLDEsMCwwLDEtMS0xVjMuMjFIMzQuNlY2Ljc0QTIuMzMsMi4zMywwLDAsMCwzNi45Myw5LjA2WiIsZmlsbDoiI2FmYWZhZiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicG9seWdvbiIse3BvaW50czoiNDMuMiAzLjM3IDQyLjEyIDMuMzcgNDIuMTIgMS43OSA0MC45NyAxLjc5IDQwLjk3IDMuMzcgMzkuOTEgMy4zNyA0MC4yNiA0LjM5IDQwLjk3IDQuMzkgNDAuOTcgOS4wMyA0Mi4xMiA5LjAzIDQyLjEyIDQuMzkgNDMuMiA0LjM5IDQzLjIgMy4zNyIsZmlsbDoiI2FmYWZhZiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicG9seWdvbiIse3BvaW50czoiNDYuNzYgMy4zNyA0NS42NyAzLjM3IDQ1LjY3IDEuNzkgNDQuNTIgMS43OSA0NC41MiAzLjM3IDQzLjQ3IDMuMzcgNDMuODEgNC4zOSA0NC41MiA0LjM5IDQ0LjUyIDkuMDMgNDUuNjcgOS4wMyA0NS42NyA0LjM5IDQ2Ljc2IDQuMzkgNDYuNzYgMy4zNyIsZmlsbDoiI2FmYWZhZiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0yOC41NiwxLjczSDMwLjlhMy40OCwzLjQ4LDAsMCwxLDEuMzQuMTgsMS41MywxLjUzLDAsMCwxLC42Ni42MywyLjExLDIuMTEsMCwwLDEsLjI3LDEsMiwyLDAsMCwxLS4yMy45NSwxLjYsMS42LDAsMCwxLS41OS42NCwxLjQ5LDEuNDksMCwwLDEsLjguNjQsMi4wOSwyLjA5LDAsMCwxLC4zLDEuMTEsMi4zMSwyLjMxLDAsMCwxLS4zOCwxLjM1LDEuNTQsMS41NCwwLDAsMS0uODguNjhBOSw5LDAsMCwxLDMwLjU0LDloLTJaTTI5LjczLDNWNC42NGguNzhhNy4wNiw3LjA2LDAsMCwwLC44NywwLC43MS43MSwwLDAsMCwuNDctLjI2QS44Ni44NiwwLDAsMCwzMiwzLjc3YS45MS45MSwwLDAsMC0uMTQtLjUyQS42NC42NCwwLDAsMCwzMS41NSwzYTguMTYsOC4xNiwwLDAsMC0xLjE0LDBabTAsMi45VjcuNzloMS4xYTMuNDksMy40OSwwLDAsMCwuOTItLjA3LjcxLjcxLDAsMCwwLC4zNS0uMywxLjEzLDEuMTMsMCwwLDAsLjEzLS41OCwxLjIsMS4yLDAsMCwwLS4xNC0uNTkuODguODgsMCwwLDAtLjQtLjMyLDQuMSw0LjEsMCwwLDAtMS0uMDhaIixmaWxsOiIjYWZhZmFmIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwb2x5Z29uIix7cG9pbnRzOiIyNy41NiAzLjM3IDI2LjQ3IDMuMzcgMjYuNDcgMS43OSAyNS4zMiAxLjc5IDI1LjMyIDMuMzcgMjQuMjcgMy4zNyAyNC42MiA0LjM5IDI1LjMyIDQuMzkgMjUuMzIgOS4wMyAyNi40NyA5LjAzIDI2LjQ3IDQuMzkgMjcuNTYgNC4zOSAyNy41NiAzLjM3IixmaWxsOiIjYWZhZmFmIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTIxLjQ5LDMuMjFoMGEyLjM0LDIuMzQsMCwwLDEsMi4zMywyLjM0djFIMjAuNDhWN2MwLDEuMjUsMS45NCwxLjE5LDIuMy43MmwxLC43MmMtMS4xMywxLjM2LTQuNTkuODctNC41OS0xLjYxVjUuNTVBMi4zNCwyLjM0LDAsMCwxLDIxLjQ5LDMuMjFabS0xLDIuMzhoMnYtLjJhMSwxLDAsMCwwLTEtMWgwYTEsMSwwLDAsMC0xLDFaIixmaWxsOiIjYWZhZmFmIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTE3LjI3LDMuMDVhMy44MiwzLjgyLDAsMCwwLTIuNjgsMCwxLjE0LDEuMTQsMCwwLDAtLjUuNzloMFY2Ljg2YTEuMTcsMS4xNywwLDAsMCwxLjA2LDEsMy45LDMuOSwwLDAsMCwxLjU0LS4wOVY2LjEySDE1LjlWNC43N0gxOHYzLjRhLjY0LjY0LDAsMCwxLS4zMS42NCw0LjU1LDQuNTUsMCwwLDEtMi43My40QTIuNTIsMi41MiwwLDAsMSwxMi43NSw3VjMuNzloMGEyLjY3LDIuNjcsMCwwLDEsMS4xNC0xLjkybDAsMGMxLjU2LS45MSwzLjgyLDAsMy44MywwWiIsZmlsbDoiI2FmYWZhZiJ9KSksdCYmSC5hLmNyZWF0ZUVsZW1lbnQoZW8sbnVsbCkpfSxubz1DLmQuYS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtc2JzaTdsLTAifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLnRoZW1lLGU9ZS5zaXplO3JldHVybiBPYmplY3QoQy5jKShbIm9wYWNpdHk6MTtkaXNwbGF5OmJsb2NrO21hcmdpbi10b3A6N3B4O3doaXRlLXNwYWNlOm5vd3JhcDttYXJnaW4tIiwiOmF1dG87dGV4dC1kZWNvcmF0aW9uOm5vbmU7d2lkdGg6IiwncHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJIZWx2ZXRpY2EgTmV1ZSIsc2Fucy1zZXJpZjtmb250LXNpemU6MTFweDtsaW5lLWhlaWdodDoxMXB4O2NvbG9yOiNhZmFmYWYgIWltcG9ydGFudDtib3JkZXI6MDttYXgtd2lkdGg6aW5oZXJpdDsnLCIiXSwibGVmdCI9PT10LnBvc2l0aW9uPyJyaWdodCI6ImxlZnQiLChlfHw1MCkrMTQsVSgpJiZPYmplY3QoQy5jKShbIiY6aG92ZXJ7Y3Vyc29yOnBvaW50ZXI7fSJdKSl9KSxybz0iaHR0cHM6Ly9nZXRidXR0b24uaW8vP3V0bV9jYW1wYWlnbj1tdWx0eV93aWRnZXQmdXRtX21lZGl1bT13aWRnZXQmdXRtX3NvdXJjZT0iLmNvbmNhdCh3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUpO2Z1bmN0aW9uIG9vKGUpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBpbyhlKX0oZSl8fGZ1bmN0aW9uKGUpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZudWxsIT1lW1N5bWJvbC5pdGVyYXRvcl18fG51bGwhPWVbIkBAaXRlcmF0b3IiXSlyZXR1cm4gQXJyYXkuZnJvbShlKX0oZSl8fGFvKGUpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBzcHJlYWQgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIGFvKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/aW8oZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/aW8oZSx0KTp2b2lkIDB9ZnVuY3Rpb24gaW8oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn12YXIgbG89Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtZjMwZzVsLTAifSkoWyJtYXJnaW4tYm90dG9tOjA7cGFkZGluZy1ib3R0b206MjZweDsiXSksY289Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtZjMwZzVsLTEifSkoWyJkaXNwbGF5OmZsZXg7cGFkZGluZzowOyIsIiBAbWVkaWEgKG1heC13aWR0aDozNzBweCl7bWFyZ2luLWxlZnQ6MThweDt9Il0sZnVuY3Rpb24oZSl7cmV0dXJuIGUubWlycm9yP09iamVjdChDLmMpKFsibWFyZ2luOjAgODVweCAwIDA7Il0pOk9iamVjdChDLmMpKFsibWFyZ2luOjAgMCAwIDg1cHg7Il0pfSksdW89Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtZjMwZzVsLTIifSkoWyJtYXJnaW4tYm90dG9tOjA7QG1lZGlhIChtYXgtd2lkdGg6MzcwcHgpe3RyYW5zZm9ybTpzY2FsZSgwLjkpO30iXSksc289Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtZjMwZzVsLTMifSkoWyJkaXNwbGF5OmZsZXg7cGFkZGluZzowO2p1c3RpZnktY29udGVudDpjZW50ZXI7IiwiIEBtZWRpYShtYXggLSB3aWR0aDozNzBweCl7dHJhbnNmb3JtOnNjYWxlKDAuOSk7fSJdLGZ1bmN0aW9uKGUpe3JldHVybiJtaW5pIj09PWUuZ3JlZXRpbmdTdHlsZSYmZS5idXR0b25zTnVtYmVyPDUmJjE8ZS5idXR0b25zTnVtYmVyJiZPYmplY3QoQy5jKShbImp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O21hcmdpbi1sZWZ0OjM4cHg7Il0pfSksZm89ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyx0PWUub3JkZXIsbj1lLmdyZWV0aW5nU3R5bGUsZT1lLm1pcnJvcjtpZighQXJyYXkuaXNBcnJheSh0KSlyZXR1cm4gbnVsbDt2YXIgcixvPVtdLGE9ZnVuY3Rpb24oZSx0KXt2YXIgbixyLG8sYSxpPSJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihpKXJldHVybiByPSEobj0hMCkse3M6ZnVuY3Rpb24oKXtpPWkuY2FsbChlKX0sbjpmdW5jdGlvbigpe3ZhciBlPWkubmV4dCgpO3JldHVybiBuPWUuZG9uZSxlfSxlOmZ1bmN0aW9uKGUpe3I9ITAsbz1lfSxmOmZ1bmN0aW9uKCl7dHJ5e258fG51bGw9PWkucmV0dXJufHxpLnJldHVybigpfWZpbmFsbHl7aWYocil0aHJvdyBvfX19O2lmKEFycmF5LmlzQXJyYXkoZSl8fChpPWFvKGUpKXx8dCYmZSYmIm51bWJlciI9PXR5cGVvZiBlLmxlbmd0aClyZXR1cm4gaSYmKGU9aSksYT0wLHtzOnQ9ZnVuY3Rpb24oKXt9LG46ZnVuY3Rpb24oKXtyZXR1cm4gYT49ZS5sZW5ndGg/e2RvbmU6ITB9Ontkb25lOiExLHZhbHVlOmVbYSsrXX19LGU6ZnVuY3Rpb24oZSl7dGhyb3cgZX0sZjp0fTt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gaXRlcmF0ZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KG9vKHQpLnJldmVyc2UoKSk7dHJ5e2ZvcihhLnMoKTshKHI9YS5uKCkpLmRvbmU7KXt2YXIgaT1yLnZhbHVlLGw9QltpXTtpZigobCYmKCEwPT09VSgpJiZsLm9uRGVza3RvcHx8ITA9PT0vVGFibGV0fGlQYWR8aVBvZC9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkmJmwub25UYWJsZXQpfHwhMD09PUQoKSYmbC5vbk1vYmlsZSkmJihvLnB1c2goaSksNDxvLmxlbmd0aCkpYnJlYWt9fWNhdGNoKGUpe2EuZShlKX1maW5hbGx5e2EuZigpfXJldHVybiJhbHRlcm5hdGl2ZSI9PT1ufHwibWluaSI9PT1uP0guYS5jcmVhdGVFbGVtZW50KHVvLG51bGwsSC5hLmNyZWF0ZUVsZW1lbnQoc28se2J1dHRvbnNOdW1iZXI6by5sZW5ndGgsZ3JlZXRpbmdTdHlsZTpufSxvLm1hcChmdW5jdGlvbihlLHQpe3JldHVybiBoW2VdP0guYS5jcmVhdGVFbGVtZW50KGhbZV0se2tleTp0LHNpemU6Im1lZGl1bSJ9KTpudWxsfSkpKTpILmEuY3JlYXRlRWxlbWVudChsbyxudWxsLEguYS5jcmVhdGVFbGVtZW50KGNvLHttaXJyb3I6ZX0sby5tYXAoZnVuY3Rpb24oZSx0KXtyZXR1cm4gaFtlXT9ILmEuY3JlYXRlRWxlbWVudChoW2VdLHtrZXk6dCxzaXplOiJzbWFsbCJ9KTpudWxsfSkucmV2ZXJzZSgpKSl9LHBvPWZ1bmN0aW9uKGUpe3ZhciB0PWUuY29sb3IsdD12b2lkIDA9PT10PyIjZmZmZmZmIjp0LGU9ZS5zaXplLGU9dm9pZCAwPT09ZT8iMjVweCI6ZTtyZXR1cm4iYWx0ZXJuYXRpdmUiPT09T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MuZ3JlZXRpbmdTdHlsZT9ILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6e3dpZHRoOmUsaGVpZ2h0OmUsZmlsbDp0LHN0cm9rZToibm9uZSJ9LHZpZXdCb3g6IjAgMCAyNCAyNCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0wIDBoMjR2MjRIMHoiLGZpbGw6Im5vbmUifSkpOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZTp7d2lkdGg6IjE1cHgiLGhlaWdodDoiMTVweCIsZmlsbDoiI2EzYTNhMyIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDI0IDI0Iix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xOSA2LjQxTDE3LjU5IDUgMTIgMTAuNTkgNi40MSA1IDUgNi40MSAxMC41OSAxMiA1IDE3LjU5IDYuNDEgMTkgMTIgMTMuNDEgMTcuNTkgMTkgMTkgMTcuNTkgMTMuNDEgMTJ6In0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTAgMGgyNHYyNEgweiIsZmlsbDoibm9uZSJ9KSl9O2Z1bmN0aW9uIG1vKGUpe3JldHVybihtbz0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX0pKGUpfWZ1bmN0aW9uIGhvKGUsdCxuKXtyZXR1cm4odD1mdW5jdGlvbihlKXtlPWZ1bmN0aW9uKGUsdCl7aWYoIm9iamVjdCIhPT1tbyhlKXx8bnVsbD09PWUpcmV0dXJuIGU7dmFyIG49ZVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMD09PW4pcmV0dXJuKCJzdHJpbmciPT09dD9TdHJpbmc6TnVtYmVyKShlKTtuPW4uY2FsbChlLHR8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPT1tbyhuKSlyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfShlLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09PW1vKGUpP2U6U3RyaW5nKGUpfSh0KSlpbiBlP09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse3ZhbHVlOm4sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTplW3RdPW4sZX1mdW5jdGlvbiBnbyhlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP2JvKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP2JvKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gYm8oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiB5byhlKXtmdW5jdGlvbiB0KCl7bygpfWZ1bmN0aW9uIG4oKXtPKFMpfXZhciBlPWUuY29sb3Iscj0oaz1PYmplY3QoRi51c2VDb250ZXh0KShWKSkuc3RhdGUsbz1rLmFjdGlvbnMuY2xvc2VHcmVldGluZ01lc3NhZ2UsYT0oaz1rLnNldHRpbmdzKS5idXR0b25Cb3JkZXJSYWRpdXMsaT1rLmdyZWV0aW5nTWVzc2FnZURlbGF5LGw9ay5ncmVldGluZyxjPWsuZ3JlZXRpbmdEaXJlY3Rpb24sdT1rLmJ1dHRvblN0eWxlLHM9ay5hY3RpdmF0b3JTaXplLGY9ay5zaGlmdFZlcnRpY2FsLGQ9ay5wb3NpdGlvbixwPWsuc2hpZnRIb3Jpem9udGFsLG09ay5ncmVldGluZ1N0eWxlLGg9ay5taXJyb3IsZz1rLmJnU3R5bGUsYj1rLmNvbXBhbnlMb2dvVXJsLHk9ay5ncmVldGluZ01lc3NhZ2Usdj1rLmdyZWV0aW5nQWdlbnROYW1lLFI9ay5ncmVldGluZ0FnZW50UG9zaXRpb24sdz1rLmdyZWV0aW5nTWVzc2VuZ2VycyxOPWsuZ3JlZXRpbmdTdGFydENoYXRXaXRoLHg9ay5pc1NpbmdsZSxrPWsuYnV0dG9uU2hhZG93LFM9KGo9Z28oT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSlbMF0sQz1qWzFdLEU9KGo9Z28oT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSlbMF0sTz1qWzFdLGo9JChhKSxEPXBlKGUsNSksQT0iIi5jb25jYXQoaSwiMDAwIiksUD0oQS5pbmNsdWRlcygiLiIpJiYoQT0iIi5jb25jYXQoQS5yZXBsYWNlKC9cLi9nLCIiKS8xMCkpLE9iamVjdChGLnVzZVJlZikoMCkpO09iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtyLmdyZWV0aW5nTWVzc2FnZSYmIWw/dCgpOihyLmdyZWV0aW5nTWVzc2FnZT8wPT09UC5jdXJyZW50JiYoUC5jdXJyZW50PXNldFRpbWVvdXQoZnVuY3Rpb24oKXtDKHIuZ3JlZXRpbmdNZXNzYWdlKSxPKHIuZ3JlZXRpbmdNZXNzYWdlKX0sK0EpKTooQyghMSksTyghMSkpLHIuYnV0dG9ucyYmY2xlYXJUaW1lb3V0KFAuY3VycmVudCkpfSksT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe3IuZ3JlZXRpbmdNZXNzYWdlPyJyb3ciPT09YyYmVyg5OTk5OTk5OTkpOiJyb3ciPT09YyYmVygiY2xhc3NpYyI9PT11P3M6MypzKX0sW2MsdSxyLmdyZWV0aW5nTWVzc2FnZSxzXSk7dmFyIEk9KGk9dmUoKSkuaGVpZ2h0LGk9aS53aWR0aCxfPShNPWdvKE9iamVjdChGLnVzZVN0YXRlKSgiYXV0byIpLDIpKVswXSxVPU1bMV0sej0oTT1nbyhPYmplY3QoRi51c2VTdGF0ZSkoe3dpZHRoOiJhdXRvIixoZWlnaHQ6ImF1dG8ifSksMikpWzBdLEI9TVsxXSxUPU9iamVjdChGLnVzZVJlZikoKSxMPU9iamVjdChGLnVzZVJlZikoKSxNPShPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7dmFyIGUsdDtULmN1cnJlbnQmJih0PUktZi1zLXZ0LGU9VC5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCsxNzgsVSh0PGU/dC0xNDg6ImF1dG8iKSksTC5jdXJyZW50JiYoZT1MLmN1cnJlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0LHQ9TC5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoLEIoe3dpZHRoOnQsaGVpZ2h0OmV9KSl9LFtJLEUsaSxMXSksImNlbnRlciIhPT1jPyJjb2x1bW4iPT09Yz97Ym90dG9tOnMrMzB9OiJyaWdodCI9PT1kP3tyaWdodDoiY2xhc3NpYyI9PT11P3MrMzA6MypzKzMwLGJvdHRvbTo3fTp7bGVmdDoiY2xhc3NpYyI9PT11P3MrMzA6MypzKzMwLGJvdHRvbTo3fTpobyh7Ym90dG9tOiJjYWxjKDUwdmggLSAiLmNvbmNhdCh6LmhlaWdodC8yKzEwLCJweCAtICIpLmNvbmNhdChmLzItMiwicHgpIil9LCJyaWdodCI9PT1kPyJyaWdodCI6ImxlZnQiLCJjYWxjKDUwdncgLSAiLmNvbmNhdCh6LndpZHRoLzIrMjAsInB4IC0gIikuY29uY2F0KHAvMi0yLCJweCkiKSkpLGk9KG5ldyBEYXRlKS5nZXRIb3VycygpKyI6IisobmV3IERhdGUpLmdldE1pbnV0ZXMoKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsIjAiKTtyZXR1cm4iYWx0ZXJuYXRpdmUiPT09bT9FJiZILmEuY3JlYXRlRWxlbWVudChPbyx7aXNTaG93OlMsb25BbmltYXRpb25FbmQ6bixzaGlmdEhvcml6b250YWw6cCxtaXJyb3I6aCxyZWY6TCxzdHlsZTpNLGdyZWV0aW5nRGlyZWN0aW9uOmMsYWN0aXZhdG9yU2l6ZTpzfSxILmEuY3JlYXRlRWxlbWVudChqbyx7YnV0dG9uU2hhZG93OmssZ3JlZXRpbmdNZXNzZW5nZXJzOnd9LEguYS5jcmVhdGVFbGVtZW50KEFvLHtjb2xvcjplLGJnU3R5bGU6ZyxncmFkaWVudDpEfSxILmEuY3JlYXRlRWxlbWVudChQbyx7aXNTaW5nbGU6eH0sSC5hLmNyZWF0ZUVsZW1lbnQoSW8sbnVsbCxILmEuY3JlYXRlRWxlbWVudChMbyx7aW5kaWNhdG9yUG9zaXRpb246aixtaXJyb3I6aH0sSC5hLmNyZWF0ZUVsZW1lbnQoVG8se2NvbXBhbnlMb2dvVXJsOmIsYnV0dG9uQm9yZGVyUmFkaXVzOmF9KSksSC5hLmNyZWF0ZUVsZW1lbnQoImRpdiIsbnVsbCxILmEuY3JlYXRlRWxlbWVudChfbyx7bWlycm9yOmh9LHYpLEguYS5jcmVhdGVFbGVtZW50KHpvLHttaXJyb3I6aH0sUikpKSxILmEuY3JlYXRlRWxlbWVudChNbyx7b25Nb3VzZVVwOnR9LEguYS5jcmVhdGVFbGVtZW50KHBvLG51bGwpKSkpLEguYS5jcmVhdGVFbGVtZW50KFJvLHtncmVldGluZ01lc3NlbmdlcnM6d30sSC5hLmNyZWF0ZUVsZW1lbnQoR28se29uTW91c2VVcDp0fSxILmEuY3JlYXRlRWxlbWVudChwbyx7Y29sb3I6IiNlMGRmZGYiLHNpemU6IjIwcHgifSkpLEguYS5jcmVhdGVFbGVtZW50KCRvLG51bGwsaSksSC5hLmNyZWF0ZUVsZW1lbnQoRG8sbnVsbCxILmEuY3JlYXRlRWxlbWVudChCbyx7Y29tcGFueUxvZ29Vcmw6YixzaGlmdEhvcml6b250YWw6cCxidXR0b25Cb3JkZXJSYWRpdXM6YX0pLEguYS5jcmVhdGVFbGVtZW50KEZvLHtoZWlnaHQ6XyxtaXJyb3I6aH0sSC5hLmNyZWF0ZUVsZW1lbnQoVm8se21pcnJvcjpofSxILmEuY3JlYXRlRWxlbWVudCgic3BhbiIse3JlZjpUfSx5KSkpKSx3JiZILmEuY3JlYXRlRWxlbWVudChILmEuRnJhZ21lbnQsbnVsbCxILmEuY3JlYXRlRWxlbWVudChXbyx7bWlycm9yOmh9LE4pLEguYS5jcmVhdGVFbGVtZW50KGZvLG51bGwpKSkpKToibWluaSI9PT1tP0UmJkguYS5jcmVhdGVFbGVtZW50KE9vLHtpc1Nob3c6UyxvbkFuaW1hdGlvbkVuZDpuLHNoaWZ0SG9yaXpvbnRhbDpwLHJlZjpMLHN0eWxlOk0sbWlycm9yOmgsZ3JlZXRpbmdEaXJlY3Rpb246YyxhY3RpdmF0b3JTaXplOnN9LEguYS5jcmVhdGVFbGVtZW50KGpvLHtidXR0b25TaGFkb3c6ayxncmVldGluZ01lc3NlbmdlcnM6d30sSC5hLmNyZWF0ZUVsZW1lbnQoTm8sbnVsbCxILmEuY3JlYXRlRWxlbWVudChxbyx7b25Nb3VzZVVwOnR9LEguYS5jcmVhdGVFbGVtZW50KHBvLHtjb2xvcjoiI2UwZGZkZiIsc2l6ZToiMjBweCJ9KSksSC5hLmNyZWF0ZUVsZW1lbnQoVW8sbnVsbCxILmEuY3JlYXRlRWxlbWVudChCbyx7Y29tcGFueUxvZ29Vcmw6YixzaGlmdEhvcml6b250YWw6cCxidXR0b25Cb3JkZXJSYWRpdXM6YX0pLEguYS5jcmVhdGVFbGVtZW50KEhvLHtoZWlnaHQ6XyxtaXJyb3I6aH0sSC5hLmNyZWF0ZUVsZW1lbnQoVm8se21pcnJvcjpofSxILmEuY3JlYXRlRWxlbWVudCgic3BhbiIse3JlZjpUfSx5KSkpKSx3JiZILmEuY3JlYXRlRWxlbWVudChmbyxudWxsKSkpKTpFJiZILmEuY3JlYXRlRWxlbWVudCh2byx7aXNTaG93OlMsb25BbmltYXRpb25FbmQ6bixyZWY6TCxzdHlsZTpNLHNoaWZ0SG9yaXpvbnRhbDpwLG1pcnJvcjpoLGdyZWV0aW5nRGlyZWN0aW9uOmMsYWN0aXZhdG9yU2l6ZTpzfSxILmEuY3JlYXRlRWxlbWVudCh3byx7YnV0dG9uU2hhZG93OmssZ3JlZXRpbmdNZXNzZW5nZXJzOnd9LEguYS5jcmVhdGVFbGVtZW50KEVvLHtvbk1vdXNlVXA6dCxtaXJyb3I6aH0sSC5hLmNyZWF0ZUVsZW1lbnQocG8sbnVsbCkpLEguYS5jcmVhdGVFbGVtZW50KFNvLG51bGwsSC5hLmNyZWF0ZUVsZW1lbnQoQ28se2NvbXBhbnlMb2dvVXJsOmIsc2hpZnRIb3Jpem9udGFsOnB9KSxILmEuY3JlYXRlRWxlbWVudChrbyx7aGVpZ2h0Ol8sbWlycm9yOmh9LEguYS5jcmVhdGVFbGVtZW50KHhvLHttaXJyb3I6aH0sSC5hLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtyZWY6VH0seSkpKSksIXgmJncmJkguYS5jcmVhdGVFbGVtZW50KGZvLG51bGwpKSl9dmFyIHZvPU9iamVjdChDLmQpKHQpLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMCJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUudGhlbWUsbj1lLm1pcnJvcixyPWUuZ3JlZXRpbmdEaXJlY3Rpb24sZT1lLmFjdGl2YXRvclNpemU7cmV0dXJuIE9iamVjdChDLmMpKFsnb3BhY2l0eToxO3BhZGRpbmc6MDtib3JkZXI6MDt3aWR0aDozNDNweDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LWZhbWlseTpSb2JvdG8sIkhlbHZldGljYSBOZXVlIixzYW5zLXNlcmlmO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo3M3B4O2xpbmUtaGVpZ2h0OjIzcHg7Zm9udC1zaXplOjE0cHg7JywiOjA7QG1lZGlhIChtYXgtd2lkdGg6MzcwcHgpe3dpZHRoOjI4MHB4O30iLCIgQG1lZGlhIChtYXgtd2lkdGg6NDcwcHgpeyIsIn0iXSx0LnBvc2l0aW9uLG4mJk9iamVjdChDLmMpKFsiZGlyZWN0aW9uOnJ0bDsiXSksInJvdyI9PT1yJiZPYmplY3QoQy5jKShbImJvdHRvbToiLCJweCAhaW1wb3J0YW50OyIsIjowICFpbXBvcnRhbnQ7Il0sZSszMCx0LnBvc2l0aW9uKSl9KSx3bz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMSJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUuYnV0dG9uU2hhZG93LGU9ZS5ncmVldGluZ01lc3NlbmdlcnM7cmV0dXJuIE9iamVjdChDLmMpKFsiYm94LXNoYWRvdzowcHggMXB4IDdweCByZ2JhKDEzNiwxMzYsMTM2LCIsIiUpO2JvcmRlcjoxcHggc29saWQgI2UyZTJlMjtwb3NpdGlvbjpyZWxhdGl2ZTttaW4taGVpZ2h0OiIsIjtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZC1jb2xvcjp3aGl0ZTtkaXNwbGF5OmJsb2NrOyJdLDIwPHQ/dDoyMCxlPyIxNDlweCI6InVuc2V0Iil9KSx4bz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMiJ9KShbInBhZGRpbmc6MTBweCAxNnB4O2xpbmUtaGVpZ2h0OjIwcHg7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3cteTphdXRvO2hlaWdodDoxMDAlO2JveC1zaXppbmc6Ym9yZGVyLWJveDsiLCIgJjo6LXdlYmtpdC1zY3JvbGxiYXJ7aGVpZ2h0OjVweDt3aWR0aDo1cHg7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4wMik7fSY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6cmdiYSg1Nyw1NiwxOCwuMDcpOy13ZWJraXQtYm9yZGVyLXJhZGl1czozcHg7fSJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLm1pcnJvcj9PYmplY3QoQy5jKShbInRleHQtYWxpZ246cmlnaHQ7dW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSk6T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOmxlZnQ7Il0pfSksa289Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtcms3MmJoLTMifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLmhlaWdodCxlPWUubWlycm9yO3JldHVybiBPYmplY3QoQy5jKShbIm1pbi1oZWlnaHQ6NTZweDtoZWlnaHQ6IiwiO3dpZHRoOjIzNHB4O2JvcmRlcjoxcHggc29saWQgI2UyZTJlMjtib3JkZXItcmFkaXVzOjhweDtwb3NpdGlvbjpyZWxhdGl2ZTsiLCIgJjo6YmVmb3Jle2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7dG9wOjIwcHg7Ym9yZGVyOjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NXB4IHNvbGlkICNlMmUyZTI7IiwifSY6OmFmdGVye2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7dG9wOjIwcHg7Ym9yZGVyOjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NXB4IHNvbGlkICNmZmY7IiwifSJdLHQrInB4IixlP09iamVjdChDLmMpKFsibWFyZ2luOjAgYXV0byAwIDVweDsiXSk6T2JqZWN0KEMuYykoWyJtYXJnaW46MCA1cHggMCBhdXRvOyJdKSxlP09iamVjdChDLmMpKFsicmlnaHQ6LTEwcHg7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpOyJdKTpPYmplY3QoQy5jKShbImxlZnQ6LTEwcHg7Il0pLGU/T2JqZWN0KEMuYykoWyJyaWdodDotOXB4O3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTsiXSk6T2JqZWN0KEMuYykoWyJsZWZ0Oi05cHg7Il0pKX0pLFNvPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC00In0pKFsibWluLWhlaWdodDo1OHB4O2JvcmRlci1yYWRpdXM6NHB4IDRweCAwIDA7Y29sb3I6YmxhY2s7cGFkZGluZzoyN3B4IDE4cHggMjBweCAxOHB4O2Rpc3BsYXk6ZmxleDsiXSksQ289Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtcms3MmJoLTUifSkoWydkaXNwbGF5OmJsb2NrIWltcG9ydGFudDtoZWlnaHQ6NTBweDt3aWR0aDo1MHB4O21pbi13aWR0aDo1MHB4O2JvcmRlcjoxcHggc29saWQgI2UyZTJlMjtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOnVybCgiJywnIikgbm8tcmVwZWF0IGNlbnRlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7QG1lZGlhIChtYXgtd2lkdGg6MzcwcHgpe2Rpc3BsYXk6bm9uZTt9J10sZnVuY3Rpb24oZSl7cmV0dXJuIGUuY29tcGFueUxvZ29Vcmx9KSxFbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtNiJ9KShbIndpZHRoOjE1cHg7aGVpZ2h0OjE1cHg7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjdweDsiLCIiXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3I/T2JqZWN0KEMuYykoWyJsZWZ0OjlweDsiXSk6T2JqZWN0KEMuYykoWyJyaWdodDo5cHg7Il0pfSksT289T2JqZWN0KEMuZCkodm8pLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtNyJ9KShbIndpZHRoOjMyMHB4OyJdKSxqbz1PYmplY3QoQy5kKSh3bykud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC04In0pKFsiYm9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czoxNnB4OyJdKSxBbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtOSJ9KShbIiIsIiAiXSxmdW5jdGlvbihlKXt2YXIgdD1lLmJnU3R5bGUsbj1lLmNvbG9yLGU9ZS5ncmFkaWVudDtyZXR1cm4gT2JqZWN0KEMuYykoWyJib3JkZXItcmFkaXVzOjE2cHggMTZweCAwIDA7IiwiIEBtZWRpYShtYXgtaGVpZ2h0OjQ3MHB4KXtkaXNwbGF5Om5vbmU7fSJdLCJjb2xvciI9PT10P09iamVjdChDLmMpKFsiYmFja2dyb3VuZC1jb2xvcjoiLCI7Il0sbik6T2JqZWN0KEMuYykoWyJiYWNrZ3JvdW5kOiIsIjsiXSwibGluZWFyLWdyYWRpZW50KDEzNWRlZywgIi5jb25jYXQoZSwiKSIpKSl9KSxQbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMTAifSkoWyJib3JkZXItcmFkaXVzOjE2cHggMTZweCAwIDA7cGFkZGluZzowIDE1cHg7aGVpZ2h0OjgwcHg7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZHJvcC1maWx0ZXI6IiwiOyJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLmlzU2luZ2xlJiYiYnJpZ2h0bmVzcygwLjUpIn0pLElvPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0xMSJ9KShbImRpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjE1cHg7dGV4dC1kZWNvcmF0aW9uOm5vbmU7cG9zaXRpb246cmVsYXRpdmU7Il0pLF9vPUMuZC5oNC53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtcms3MmJoLTEyIn0pKFsibWFyZ2luOjA7dGV4dC1hbGlnbjpsZWZ0O2NvbG9yOndoaXRlICFpbXBvcnRhbnQ7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToxOHB4OyIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLm1pcnJvcj9PYmplY3QoQy5jKShbInRleHQtYWxpZ246cmlnaHQ7dW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSk6T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOmxlZnQ7Il0pfSksem89Qy5kLnAud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0xMyJ9KShbIm1hcmdpbjowO2xpbmUtaGVpZ2h0OjEuMyAhaW1wb3J0YW50O2NvbG9yOndoaXRlO2ZvbnQtc2l6ZToxNHB4OyIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLm1pcnJvcj9PYmplY3QoQy5jKShbInRleHQtYWxpZ246cmlnaHQ7dW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSk6T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOmxlZnQ7Il0pfSksVG89Qy5kLmltZy53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtcms3MmJoLTE0In0pKFsiIiwiIl0sZnVuY3Rpb24oZSl7dmFyIHQ9ZS5idXR0b25Cb3JkZXJSYWRpdXMsZT1lLmNvbXBhbnlMb2dvVXJsO3JldHVybiBPYmplY3QoQy5jKShbImRpc3BsYXk6YmxvY2shaW1wb3J0YW50O2hlaWdodDo1MHB4ICFpbXBvcnRhbnQ7d2lkdGg6NTBweDttaW4td2lkdGg6NTBweDtib3JkZXI6MnB4IHNvbGlkICNmZmZmZmY7Ym9yZGVyLXJhZGl1czoiLCclO2JhY2tncm91bmQ6dXJsKCInLCciKSBuby1yZXBlYXQgY2VudGVyO2JhY2tncm91bmQtc2l6ZTpjb3ZlcjtAbWVkaWEgKG1heC13aWR0aDozNzBweCl7ZGlzcGxheTpub25lO30nXSx0LGUpfSksTG89Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtcms3MmJoLTE1In0pKFsiIiwiIl0sZnVuY3Rpb24oZSl7dmFyIHQ9ZS5pbmRpY2F0b3JQb3NpdGlvbixlPWUubWlycm9yO3JldHVybiBPYmplY3QoQy5jKShbInBvc2l0aW9uOnJlbGF0aXZlOyY6YWZ0ZXJ7Y29udGVudDonJzt3aWR0aDoxMHB4O2hlaWdodDoxMHB4O2JhY2tncm91bmQtY29sb3I6IzRkYzI0Nztib3JkZXItcmFkaXVzOjUwJTtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206IiwicHg7Ym94LXNoYWRvdzoycHggMnB4IDZweCByZ2JhKDAsMCwwLDEwJSk7IiwifSJdLHQsZT9PYmplY3QoQy5jKShbImxlZnQ6IiwicHg7Il0sdCk6T2JqZWN0KEMuYykoWyJyaWdodDoiLCJweDsiXSx0KSl9KSxNbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMTYifSkoWyJ3aWR0aDoyNXB4O2hlaWdodDoyNXB4O2N1cnNvcjpwb2ludGVyOyJdKSxSbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMTcifSkoWyJwYWRkaW5nOiIsIjtAbWVkaWEobWF4LWhlaWdodDo0NzBweCl7cGFkZGluZzo1cHggMTVweDt9Il0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ3JlZXRpbmdNZXNzZW5nZXJzPyIxNXB4IjoiMTVweCAxNXB4IDI1cHggMTVweCJ9KSxObz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMTgifSkoWyJwYWRkaW5nOjE1cHg7Il0pLERvPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0xOSJ9KShbImRpc3BsYXk6ZmxleDtnYXA6MTBweDtjb2xvcjojMDAwMDAwO0BtZWRpYShtYXgtaGVpZ2h0OjQ3MHB4KXttYXJnaW46N3B4IDA7fSJdKSxVbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMjAifSkoWyJkaXNwbGF5OmZsZXg7Z2FwOjEwcHg7Y29sb3I6IzAwMDAwMDttYXJnaW46N3B4IDA7Il0pLEJvPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0yMSJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUuYnV0dG9uQm9yZGVyUmFkaXVzLGU9ZS5jb21wYW55TG9nb1VybDtyZXR1cm4gT2JqZWN0KEMuYykoWyJkaXNwbGF5OmJsb2NrIWltcG9ydGFudDtoZWlnaHQ6MzVweDt3aWR0aDozNXB4O21pbi13aWR0aDozNXB4O2JvcmRlci1yYWRpdXM6IiwnJTtiYWNrZ3JvdW5kOnVybCgiJywnIikgbm8tcmVwZWF0IGNlbnRlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7J10sdCxlKX0pLEZvPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0yMiJ9KShbImJhY2tncm91bmQ6cmdiYSg0NCwxMjAsMjU1LDAuMik7bWF4LWhlaWdodDoyMHZoO3BhZGRpbmc6MTRweCAwOyIsIiBAbWVkaWEobWF4LWhlaWdodDo0NzBweCl7d2lkdGg6ODAlO30iXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3I/T2JqZWN0KEMuYykoWyJib3JkZXItcmFkaXVzOjIwcHggMnB4IDIwcHggMjBweDsiXSk6T2JqZWN0KEMuYykoWyJib3JkZXItcmFkaXVzOjJweCAyMHB4IDIwcHggMjBweDsiXSl9KSxIbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMjMifSkoWyJiYWNrZ3JvdW5kOnJnYmEoNDQsMTIwLDI1NSwwLjIpO21heC1oZWlnaHQ6MjB2aDtwYWRkaW5nOjE0cHggMDt3aWR0aDo4MCU7IiwiIl0sZnVuY3Rpb24oZSl7cmV0dXJuIGUubWlycm9yP09iamVjdChDLmMpKFsiYm9yZGVyLXJhZGl1czoyMHB4IDJweCAyMHB4IDIwcHg7Il0pOk9iamVjdChDLmMpKFsiYm9yZGVyLXJhZGl1czoycHggMjBweCAyMHB4IDIwcHg7Il0pfSksVm89T2JqZWN0KEMuZCkoeG8pLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMjQifSkoWyJwYWRkaW5nOjAgMTZweDsiXSksJG89Qy5kLnAud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0yNSJ9KShbIm1hcmdpbjowIDAgMTVweCAwO2NvbG9yOiM5NTlEQTk7QG1lZGlhKG1heC1oZWlnaHQ6NDcwcHgpe2Rpc3BsYXk6bm9uZTt9Il0pLFdvPUMuZC5wLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMjYifSkoWyJmb250LXdlaWdodDpib2xkO21hcmdpbjoyNXB4IDAgNXB4IDA7Y29sb3I6IzAwMDAwMCAhaW1wb3J0YW50OyIsIiBAbWVkaWEobWF4LWhlaWdodDo0NzBweCl7ZGlzcGxheTpub25lO30iXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3ImJk9iamVjdChDLmMpKFsidW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSl9KSxHbz1PYmplY3QoQy5kKShNbykud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0yNyJ9KShbImRpc3BsYXk6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NXB4O3JpZ2h0OjNweDtAbWVkaWEobWF4LWhlaWdodDo0NzBweCl7ZGlzcGxheTpibG9jazt9Il0pLHFvPU9iamVjdChDLmQpKE1vKS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtcms3MmJoLTI4In0pKFsicG9zaXRpb246YWJzb2x1dGU7dG9wOjVweDtyaWdodDozcHg7Il0pLFpvPU9iamVjdChDLmIpKFsiIyIsIiA+ICp7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCkgIWltcG9ydGFudDtib3gtc2l6aW5nOmJvcmRlci1ib3ggIWltcG9ydGFudDt9IyIsIiBwe3BhZGRpbmctYm90dG9tOjAgIWltcG9ydGFudDt9IiwiIl0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuY29udGFpbmVySWR9LGZ1bmN0aW9uKGUpe3JldHVybiBlLmNvbnRhaW5lcklkfSxmdW5jdGlvbihlKXtyZXR1cm4gZS5zZXR0aW5ncy5mYWNlYm9vayYmWG99KSxYbz1PYmplY3QoQy5jKShbIiNmYi1yb290IC5mYi1jdXN0b21lcmNoYXQgPip7b3BhY2l0eTowO30uZmItY3VzdG9tZXJjaGF0IGlmcmFtZXtib3R0b206IiwicHggIWltcG9ydGFudDsiLCI6IiwicHggIWltcG9ydGFudDt9LmZiLWN1c3RvbWVyY2hhdCBpZnJhbWUuZmJfY3VzdG9tZXJfY2hhdF9ib3VuY2VfaW5fdjJ7bWF4LWhlaWdodDpjYWxjKDgwJSAtIDMwcHgpICFpbXBvcnRhbnQ7fS5mYl9kaWFsb2d7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fS5mYl9jdXN0b21lcl9jaGF0X2JvdW5jZV9vdXRfdjJ7YW5pbWF0aW9uLW5hbWU6ZmJfYm91bmNlX291dF9jcyFpbXBvcnRhbnQ7fS5mYl9jdXN0b21lcl9jaGF0X2JvdW5jZV9pbl92MnthbmltYXRpb24tbmFtZTpmYl9ib3VuY2VfaW5fY3MhaW1wb3J0YW50O31Aa2V5ZnJhbWVzIGZiX2JvdW5jZV9pbl9jc3swJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKDAsMCk7dHJhbnNmb3JtLW9yaWdpbjpib3R0b20gIiwiO301MCV7dHJhbnNmb3JtOnNjYWxlKDEuMDMsMS4wMyk7dHJhbnNmb3JtLW9yaWdpbjpib3R0b20gIiwiO30xMDAle29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMSwxKTt0cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbSAiLCI7fX1Aa2V5ZnJhbWVzIGZiX2JvdW5jZV9vdXRfY3N7MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxLDEpO3RyYW5zZm9ybS1vcmlnaW46Ym90dG9tICIsIjt9MTAwJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKDAsMCk7dHJhbnNmb3JtLW9yaWdpbjpib3R0b20gIiwiO319Il0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuc3R5bGVzLnNoaWZ0VmVydGljYWwrNTB9LGZ1bmN0aW9uKGUpe3JldHVybiBlLnN0eWxlcy5wb3NpdGlvbn0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuc3R5bGVzLnNoaWZ0SG9yaXpvbnRhbC0yMH0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuc3R5bGVzLnBvc2l0aW9ufSxmdW5jdGlvbihlKXtyZXR1cm4gZS5zdHlsZXMucG9zaXRpb259LGZ1bmN0aW9uKGUpe3JldHVybiBlLnN0eWxlcy5wb3NpdGlvbn0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuc3R5bGVzLnBvc2l0aW9ufSxmdW5jdGlvbihlKXtyZXR1cm4gZS5zdHlsZXMucG9zaXRpb259KTtmdW5jdGlvbiBZbyhlLHQpe3ZhciBuLHIsbyxhLGk9InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKGkpcmV0dXJuIHI9IShuPSEwKSx7czpmdW5jdGlvbigpe2k9aS5jYWxsKGUpfSxuOmZ1bmN0aW9uKCl7dmFyIGU9aS5uZXh0KCk7cmV0dXJuIG49ZS5kb25lLGV9LGU6ZnVuY3Rpb24oZSl7cj0hMCxvPWV9LGY6ZnVuY3Rpb24oKXt0cnl7bnx8bnVsbD09aS5yZXR1cm58fGkucmV0dXJuKCl9ZmluYWxseXtpZihyKXRocm93IG99fX07aWYoQXJyYXkuaXNBcnJheShlKXx8KGk9ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9RbyhlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9RbyhlLHQpOnZvaWQgMH0oZSkpfHx0JiZlJiYibnVtYmVyIj09dHlwZW9mIGUubGVuZ3RoKXJldHVybiBpJiYoZT1pKSxhPTAse3M6dD1mdW5jdGlvbigpe30sbjpmdW5jdGlvbigpe3JldHVybiBhPj1lLmxlbmd0aD97ZG9uZTohMH06e2RvbmU6ITEsdmFsdWU6ZVthKytdfX0sZTpmdW5jdGlvbihlKXt0aHJvdyBlfSxmOnR9O3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBpdGVyYXRlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX1mdW5jdGlvbiBRbyhlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfXdpbmRvdy5HQkJUTj13aW5kb3cuR0JCVE58fHtsb2FkZWRfYnV0dG9uc19oYXNoX2lkczpbXX07dmFyIEtvLEpvLGVhLHRhLG5hLGc9ITEscmE9WW8oZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpKTt0cnl7Zm9yKHJhLnMoKTshKGVhPXJhLm4oKSkuZG9uZTspe3ZhciBvYSxhYSxpYT1lYS52YWx1ZTtpZihudWxsIT0ob2E9aWEuc3JjKSYmb2EuaW5jbHVkZXMoIi5nZXRidXR0b24uaW8vd2lkZ2V0L2J1bmRsZS5qcz9pZCIpfHxudWxsIT0oYWE9aWEuc3JjKSYmYWEuaW5jbHVkZXMoIjo5MDAwL2J1bmRsZS5qcz9pZD0iKSl7aWYoZz1pYS5zcmMubWF0Y2goL2lkPShbXiZdKikvKVsxXSxjb25zb2xlLmxvZygiZm91bmQgaGFzaElkOiIsZyksIXdpbmRvdy5HQkJUTi5sb2FkZWRfYnV0dG9uc19oYXNoX2lkcy5pbmNsdWRlcyhnKSl7d2luZG93LkdCQlROLmxvYWRlZF9idXR0b25zX2hhc2hfaWRzLnB1c2goZyksdGE9ImdldGJ1dHRvbi5pbyIsbmE9Imh0dHBzOiIsY29uc29sZS5sb2coIj4gc2hvcnRDb2RlSW5pdCIpLHplKHRhLG5hKSxMZShUZSkudGhlbihmdW5jdGlvbigpe3JldHVybiBsYSgpfSkuY2F0Y2goZnVuY3Rpb24oZSl7cmV0dXJuIGNvbnNvbGUuZXJyb3J9KSxjLnNjcmlwdElkPWc7YnJlYWt9Y29uc29sZS5sb2coInNraXAgbG9hZGluZyBoYXNoSWQ6ICIuY29uY2F0KGcsIiAoYWxyZWFkeSBsb2FkZWQpIikpfX19Y2F0Y2goZSl7cmEuZShlKX1maW5hbGx5e3JhLmYoKX1jb25zb2xlLmxvZygiPiBsb25nQ29kZUluaXQiKSx3aW5kb3cuV2hXaWRnZXRTZW5kQnV0dG9uPXtpbml0OnplLHJlSW5pdDpmdW5jdGlvbihlLHQsbil7emUoZSx0LG4pLExlKFRlKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGxhKCl9KS5jYXRjaChmdW5jdGlvbihlKXtyZXR1cm4gY29uc29sZS5lcnJvcn0pfX07dHJ5e2NvbnNvbGUubG9nKCI+IHRyeSIpLExlKFRlKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGxhKCl9KS5jYXRjaChmdW5jdGlvbihlKXtyZXR1cm4gY29uc29sZS5lcnJvcn0pfWNhdGNoKGUpe2NvbnNvbGUuZXJyb3IoIj4gdHJ5IGVycm9yIixlKX12YXIgbGE9ZnVuY3Rpb24oKXt2YXIgZSx0O0pvJiYoSm8udW5tb3VudCgpLEpvPW51bGwsdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChLbykpJiZ0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCksYy5zaG93V2lkZ2V0PzAhPT1jLm9yZGVyLmxlbmd0aHx8Zz8oS289ImdiLXdpZGdldC0iLmNvbmNhdChNYXRoLmZsb29yKDk5OTkqTWF0aC5yYW5kb20oKSkpLChlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpKS5zZXRBdHRyaWJ1dGUoImlkIixLbyksZS5zZXRBdHRyaWJ1dGUoInNjcmlwdC1pZCIsZyksZG9jdW1lbnQuYm9keS5pbnNlcnRCZWZvcmUoZSxkb2N1bWVudC5ib2R5Lmxhc3RDaGlsZC5uZXh0U2libGluZyksdD1mdW5jdGlvbigpe3JldHVybiBnZSgxZTMpP0guYS5jcmVhdGVFbGVtZW50KHVlLG51bGwsSC5hLmNyZWF0ZUVsZW1lbnQoY2Ese3Jvb3RDb250YWluZXI6ZSxjb250YWluZXJJZDpLb30pKToiIn0sKEpvPXkuYS5jcmVhdGVSb290KGUpKS5yZW5kZXIoSC5hLmNyZWF0ZUVsZW1lbnQodCxudWxsKSkpOmNvbnNvbGUud2FybigiR2V0QnV0dG9uIGlzIGVtcHR5Iik6Y29uc29sZS53YXJuKCJXaWRnZXQgaXMgaGlkZGVuIixnKX0sY2E9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yb290Q29udGFpbmVyLGU9ZS5jb250YWluZXJJZCxuPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLHI9bi5hY3Rpb25zLG49bi5zZXR0aW5ncyxvPShILmEudXNlRWZmZWN0KGZ1bmN0aW9uKCl7d2luZG93LldoV2lkZ2V0U2VuZEJ1dHRvbj13aW5kb3cuV2hXaWRnZXRTZW5kQnV0dG9ufHx7fSx3aW5kb3cuV2hXaWRnZXRTZW5kQnV0dG9uLnNob3dQb3B1cD1mdW5jdGlvbihlKXtyLnNob3dCdXR0b25Qb3B1cChlKX19LFtdKSxuLnNoaWZ0VmVydGljYWwpLGE9bi5zaGlmdEhvcml6b250YWwsaT1uLnBvc2l0aW9uLGw9bi5kaXJlY3Rpb24sYz1uLmFjdGl2YXRvclNpemUsdT1uLmJ1dHRvbkNvbG9yLGw9IlxuICAgIGJvdHRvbTogIi5jb25jYXQobywicHggIWltcG9ydGFudDtcbiAgICAiKS5jb25jYXQoaSwiOiAiKS5jb25jYXQoYSwicHggIWltcG9ydGFudDtcbiAgICAvLyBvcGFjaXR5OiAwO1xuICAgIC8vIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDE2MDAwMTYwICFpbXBvcnRhbnQ7XG4gICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgdGV4dC1hbGlnbjogIikuY29uY2F0KCJyaWdodCI9PT1pPyJyaWdodCI6ImxlZnQiLCI7XG4gICAgZGlzcGxheTogIikuY29uY2F0KCJyb3ciPT09bCYmImZsZXgiLCI7XG4gICAgYWxpZ24taXRlbXM6ICIpLmNvbmNhdCgicm93Ij09PWwmJiJmbGV4LWVuZCIsIjtcbiAgICBmbGV4LWRpcmVjdGlvbjogIikuY29uY2F0KCJsZWZ0Ij09PWkmJiJyb3ctcmV2ZXJzZSIsIjtcbiAgIiksbz0odC5zZXRBdHRyaWJ1dGUoInN0eWxlIixsKSx7c2hpZnRWZXJ0aWNhbDpvLHNoaWZ0SG9yaXpvbnRhbDphLGFjdGl2YXRvclNpemU6Yyxwb3NpdGlvbjppfSk7cmV0dXJuIHQuc2V0QXR0cmlidXRlKCJzdHlsZSIsbCksSC5hLmNyZWF0ZUVsZW1lbnQoSC5hLkZyYWdtZW50LG51bGwsSC5hLmNyZWF0ZUVsZW1lbnQoWm8se2NvbnRhaW5lcklkOmUsc3R5bGVzOm8sc2V0dGluZ3M6bn0pLEguYS5jcmVhdGVFbGVtZW50KHNlLHt0aGVtZTppfSxILmEuY3JlYXRlRWxlbWVudChHcixudWxsKSxILmEuY3JlYXRlRWxlbWVudChLcixudWxsKSxILmEuY3JlYXRlRWxlbWVudChxcixudWxsKSxILmEuY3JlYXRlRWxlbWVudCh5byx7Y29sb3I6dX0pKSl9fV0scj17fSxvLm09bixvLmM9cixvLmQ9ZnVuY3Rpb24oZSx0LG4pe28ubyhlLHQpfHxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHtlbnVtZXJhYmxlOiEwLGdldDpufSl9LG8ucj1mdW5jdGlvbihlKXsidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmU3ltYm9sLnRvU3RyaW5nVGFnJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxTeW1ib2wudG9TdHJpbmdUYWcse3ZhbHVlOiJNb2R1bGUifSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pfSxvLnQ9ZnVuY3Rpb24odCxlKXtpZigxJmUmJih0PW8odCkpLDgmZSlyZXR1cm4gdDtpZig0JmUmJiJvYmplY3QiPT10eXBlb2YgdCYmdCYmdC5fX2VzTW9kdWxlKXJldHVybiB0O3ZhciBuPU9iamVjdC5jcmVhdGUobnVsbCk7aWYoby5yKG4pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJkZWZhdWx0Iix7ZW51bWVyYWJsZTohMCx2YWx1ZTp0fSksMiZlJiYic3RyaW5nIiE9dHlwZW9mIHQpZm9yKHZhciByIGluIHQpby5kKG4scixmdW5jdGlvbihlKXtyZXR1cm4gdFtlXX0uYmluZChudWxsLHIpKTtyZXR1cm4gbn0sby5uPWZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUuX19lc01vZHVsZT9mdW5jdGlvbigpe3JldHVybiBlLmRlZmF1bHR9OmZ1bmN0aW9uKCl7cmV0dXJuIGV9O3JldHVybiBvLmQodCwiYSIsdCksdH0sby5vPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHQpfSxvLnA9Ii8iLG8oby5zPTE3OCl9KCk7"}},"time_used":9,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":9,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/480cde08b8bfd5ce.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.124Z","timestamp":1785158433124,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/480cde08b8bfd5ce.js HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: *\r\nage: 7124806\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"480cde08b8bfd5ce.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com https://vitals.vercel-insights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\netag: W/\"2197ad79def7e68e0db5210279b81a88\"\r\nlast-modified: Tue, 28 Apr 2026 14:50:57 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/480cde08b8bfd5ce.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::m49ll-1777388594165-c9ac0a174814\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=Bef0Y%2FowtfeUdlUYFMfHY7rn48JUW4C2a%2FPUI0h4O%2FB3yIBeEKe4DLDcQ7mJCjucnmd%2F8mHc4qbW5qfZF8NGB6L5NWouW%2BdAbWnraKOKSxFkJ6JzUUCtUb2lRemf\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21bf12f083456b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":84456,"size_decoded":25530,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (65536), with no line terminators","md5":"2197ad79def7e68e0db5210279b81a88","sha1":"4a9572c96dc4b65a933f8494889a2d78f6bc8b3b","sha256":"0c61a398dcdf9a5d5a6a744855e7d95635c22711ee32b5af4a658fc6035de812","sha512":"1ed4b2613596da63a7fbbb97a8839e5ae8cf7a62d48b3f2818a3d7b510dde3fef57905aa4ce17843dcee71e3b9205f42c8e3b412427bddd975643af58c1b5979","ssdeep":"768:9Nf3ebiEpt8v84l+ayd9ar543m7dGwVBmOJ8SLBlbGJz5RBC8zogjPwNp9WxBbV3:yGY8AJ8pIOCSOvB9GW7H5sZzIxB","tlshash":"8883f8f931d1f88207ab44aac43f0002f32c5d77189e7864a3e5ddea716455da1f2faa","first_seen":"2026-04-28T18:06:46.282063Z","last_seen":"2026-08-17T21:34:38.522951Z","times_seen":2226,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDg1NTk0LChlLHQscik9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbihlLHQ9ITApe3JldHVybiBlLnBhdGhuYW1lK2Uuc2VhcmNoKyh0P2UuaGFzaDoiIil9T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJjcmVhdGVIcmVmRnJvbVVybCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSksKCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNTQzMjAsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIkhUTUxfTElNSVRFRF9CT1RfVUFfUkUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBufX0pO2xldCBuPS9bXHctXSstR29vZ2xlfEdvb2dsZS1bXHctXSt8Q2hyb21lLUxpZ2h0aG91c2V8U2x1cnB8RHVja0R1Y2tCb3R8YmFpZHVzcGlkZXJ8eWFuZGV4fHNvZ291fGJpdGx5Ym90fHR1bWJscnx2a1NoYXJlfHF1b3JhIGxpbmsgcHJldmlld3xyZWRkaXRib3R8aWFfYXJjaGl2ZXJ8QmluZ2JvdHxCaW5nUHJldmlld3xhcHBsZWJvdHxmYWNlYm9va2V4dGVybmFsaGl0fGZhY2Vib29rY2F0YWxvZ3xUd2l0dGVyYm90fExpbmtlZEluQm90fFNsYWNrYm90fERpc2NvcmRib3R8V2hhdHNBcHB8U2t5cGVVcmlQcmV2aWV3fFlldGl8Z29vZ2xld2VibGlnaHQvaX0sMzQ2NSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17SFRNTF9MSU1JVEVEX0JPVF9VQV9SRTpmdW5jdGlvbigpe3JldHVybiBsLkhUTUxfTElNSVRFRF9CT1RfVUFfUkV9LEhUTUxfTElNSVRFRF9CT1RfVUFfUkVfU1RSSU5HOmZ1bmN0aW9uKCl7cmV0dXJuIG99LGdldEJvdFR5cGU6ZnVuY3Rpb24oKXtyZXR1cm4gc30saXNCb3Q6ZnVuY3Rpb24oKXtyZXR1cm4gY319O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbD1lLnIoNTQzMjApLHU9L0dvb2dsZWJvdCg/IS0pfEdvb2dsZWJvdCQvaSxvPWwuSFRNTF9MSU1JVEVEX0JPVF9VQV9SRS5zb3VyY2U7ZnVuY3Rpb24gaShlKXtyZXR1cm4gbC5IVE1MX0xJTUlURURfQk9UX1VBX1JFLnRlc3QoZSl9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gdS50ZXN0KGUpfHxpKGUpfWZ1bmN0aW9uIHMoZSl7cmV0dXJuIHUudGVzdChlKT8iZG9tIjppKGUpPyJodG1sIjp2b2lkIDB9fSw4NTYxOSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSl7cmV0dXJuIGUuc3RhcnRzV2l0aCgiLyIpP2U6YC8ke2V9YH1PYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImVuc3VyZUxlYWRpbmdTbGFzaCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSl9LDkyMjI3LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtub3JtYWxpemVBcHBQYXRoOmZ1bmN0aW9uKCl7cmV0dXJuIG99LG5vcm1hbGl6ZVJzY1VSTDpmdW5jdGlvbigpe3JldHVybiBpfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig4NTYxOSksdT1lLnIoMjc0NTQpO2Z1bmN0aW9uIG8oZSl7cmV0dXJuKDAsbC5lbnN1cmVMZWFkaW5nU2xhc2gpKGUuc3BsaXQoIi8iKS5yZWR1Y2UoKGUsdCxyLG4pPT4hdHx8KDAsdS5pc0dyb3VwU2VnbWVudCkodCl8fCJAIj09PXRbMF18fCgicGFnZSI9PT10fHwicm91dGUiPT09dCkmJnI9PT1uLmxlbmd0aC0xP2U6YCR7ZX0vJHt0fWAsIiIpKX1mdW5jdGlvbiBpKGUpe3JldHVybiBlLnJlcGxhY2UoL1wucnNjKCR8XD8pLywiJDEiKX19LDU0NjgyLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtJTlRFUkNFUFRJT05fUk9VVEVfTUFSS0VSUzpmdW5jdGlvbigpe3JldHVybiB1fSxleHRyYWN0SW50ZXJjZXB0aW9uUm91dGVJbmZvcm1hdGlvbjpmdW5jdGlvbigpe3JldHVybiBpfSxpc0ludGVyY2VwdGlvblJvdXRlQXBwUGF0aDpmdW5jdGlvbigpe3JldHVybiBvfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig5MjIyNyksdT1bIiguLikoLi4pIiwiKC4pIiwiKC4uKSIsIiguLi4pIl07ZnVuY3Rpb24gbyhlKXtyZXR1cm4gdm9pZCAwIT09ZS5zcGxpdCgiLyIpLmZpbmQoZT0+dS5maW5kKHQ9PmUuc3RhcnRzV2l0aCh0KSkpfWZ1bmN0aW9uIGkoZSl7bGV0IHQscixuO2ZvcihsZXQgYSBvZiBlLnNwbGl0KCIvIikpaWYocj11LmZpbmQoZT0+YS5zdGFydHNXaXRoKGUpKSl7W3Qsbl09ZS5zcGxpdChyLDIpO2JyZWFrfWlmKCF0fHwhcnx8IW4pdGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGBJbnZhbGlkIGludGVyY2VwdGlvbiByb3V0ZTogJHtlfS4gTXVzdCBiZSBpbiB0aGUgZm9ybWF0IC88aW50ZXJjZXB0aW5nIHJvdXRlPi8oLi58Li4ufC4uKSguLikvPGludGVyY2VwdGVkIHJvdXRlPmApLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMjY5IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO3N3aXRjaCh0PSgwLGwubm9ybWFsaXplQXBwUGF0aCkodCkscil7Y2FzZSIoLikiOm49Ii8iPT09dD9gLyR7bn1gOnQrIi8iK247YnJlYWs7Y2FzZSIoLi4pIjppZigiLyI9PT10KXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcihgSW52YWxpZCBpbnRlcmNlcHRpb24gcm91dGU6ICR7ZX0uIENhbm5vdCB1c2UgKC4uKSBtYXJrZXIgYXQgdGhlIHJvb3QgbGV2ZWwsIHVzZSAoLikgaW5zdGVhZC5gKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTIwNyIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtuPXQuc3BsaXQoIi8iKS5zbGljZSgwLC0xKS5jb25jYXQobikuam9pbigiLyIpO2JyZWFrO2Nhc2UiKC4uLikiOm49Ii8iK247YnJlYWs7Y2FzZSIoLi4pKC4uKSI6bGV0IGE9dC5zcGxpdCgiLyIpO2lmKGEubGVuZ3RoPD0yKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcihgSW52YWxpZCBpbnRlcmNlcHRpb24gcm91dGU6ICR7ZX0uIENhbm5vdCB1c2UgKC4uKSguLikgbWFya2VyIGF0IHRoZSByb290IGxldmVsIG9yIG9uZSBsZXZlbCB1cC5gKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTQ4NiIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtuPWEuc2xpY2UoMCwtMikuY29uY2F0KG4pLmpvaW4oIi8iKTticmVhaztkZWZhdWx0OnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiSW52YXJpYW50OiB1bmV4cGVjdGVkIG1hcmtlciIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMTEyIixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pfXJldHVybntpbnRlcmNlcHRpbmdSb3V0ZTp0LGludGVyY2VwdGVkUm91dGU6bn19fSw4OTYxNiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwibWF0Y2hTZWdtZW50Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtsZXQgbj0oZSx0KT0+InN0cmluZyI9PXR5cGVvZiBlPyJzdHJpbmciPT10eXBlb2YgdCYmZT09PXQ6InN0cmluZyIhPXR5cGVvZiB0JiZlWzBdPT09dFswXSYmZVsxXT09PXRbMV07KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMTgxNjcsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e2NvbXB1dGVDaGFuZ2VkUGF0aDpmdW5jdGlvbigpe3JldHVybiBmfSxleHRyYWN0UGF0aEZyb21GbGlnaHRSb3V0ZXJTdGF0ZTpmdW5jdGlvbigpe3JldHVybiBzfSxnZXRTZWxlY3RlZFBhcmFtczpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiBlKHQscj17fSl7Zm9yKGxldCBuIG9mIE9iamVjdC52YWx1ZXModFsxXSkpe2xldCB0PW5bMF0sYT1BcnJheS5pc0FycmF5KHQpLGw9YT90WzFdOnQ7IWx8fGwuc3RhcnRzV2l0aCh1LlBBR0VfU0VHTUVOVF9LRVkpfHwoYSYmKCJjIj09PXRbMl18fCJvYyI9PT10WzJdKT9yW3RbMF1dPXRbMV0uc3BsaXQoIi8iKTphJiYoclt0WzBdXT10WzFdKSxyPWUobixyKSl9cmV0dXJuIHJ9fX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig1NDY4MiksdT1lLnIoMjc0NTQpLG89ZS5yKDg5NjE2KSxpPWU9PiJzdHJpbmciPT10eXBlb2YgZT8iY2hpbGRyZW4iPT09ZT8iIjplOmVbMV07ZnVuY3Rpb24gYyhlKXtyZXR1cm4gZS5yZWR1Y2UoKGUsdCk9PntsZXQgcjtyZXR1cm4iIj09PSh0PSIvIj09PShyPXQpWzBdP3Iuc2xpY2UoMSk6cil8fCgwLHUuaXNHcm91cFNlZ21lbnQpKHQpP2U6YCR7ZX0vJHt0fWB9LCIiKXx8Ii8ifWZ1bmN0aW9uIHMoZSl7bGV0IHQ9QXJyYXkuaXNBcnJheShlWzBdKT9lWzBdWzFdOmVbMF07aWYodD09PXUuREVGQVVMVF9TRUdNRU5UX0tFWXx8bC5JTlRFUkNFUFRJT05fUk9VVEVfTUFSS0VSUy5zb21lKGU9PnQuc3RhcnRzV2l0aChlKSkpcmV0dXJuO2lmKHQuc3RhcnRzV2l0aCh1LlBBR0VfU0VHTUVOVF9LRVkpKXJldHVybiIiO2xldCByPVtpKHQpXSxuPWVbMV0/P3t9LGE9bi5jaGlsZHJlbj9zKG4uY2hpbGRyZW4pOnZvaWQgMDtpZih2b2lkIDAhPT1hKXIucHVzaChhKTtlbHNlIGZvcihsZXRbZSx0XW9mIE9iamVjdC5lbnRyaWVzKG4pKXtpZigiY2hpbGRyZW4iPT09ZSljb250aW51ZTtsZXQgbj1zKHQpO3ZvaWQgMCE9PW4mJnIucHVzaChuKX1yZXR1cm4gYyhyKX1mdW5jdGlvbiBmKGUsdCl7bGV0IHI9ZnVuY3Rpb24gZSh0LHIpe2xldFtuLGFdPXQsW3UsY109cixmPWkobiksZD1pKHUpO2lmKGwuSU5URVJDRVBUSU9OX1JPVVRFX01BUktFUlMuc29tZShlPT5mLnN0YXJ0c1dpdGgoZSl8fGQuc3RhcnRzV2l0aChlKSkpcmV0dXJuIiI7aWYoISgwLG8ubWF0Y2hTZWdtZW50KShuLHUpKXJldHVybiBzKHIpPz8iIjtmb3IobGV0IHQgaW4gYSlpZihjW3RdKXtsZXQgcj1lKGFbdF0sY1t0XSk7aWYobnVsbCE9PXIpcmV0dXJuYCR7aSh1KX0vJHtyfWB9cmV0dXJuIG51bGx9KGUsdCk7cmV0dXJuIG51bGw9PXJ8fCIvIj09PXI/cjpjKHIuc3BsaXQoIi8iKSl9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNjMyNzgsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImhhbmRsZU11dGFibGUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBsfX0pO2xldCBuPWUucigxODE2Nyk7ZnVuY3Rpb24gYShlKXtyZXR1cm4gdm9pZCAwIT09ZX1mdW5jdGlvbiBsKGUsdCl7bGV0IHI9dC5zaG91bGRTY3JvbGw/PyEwLGw9ZS5wcmV2aW91c05leHRVcmwsdT1lLm5leHRVcmw7aWYoYSh0LnBhdGNoZWRUcmVlKSl7bGV0IHI9KDAsbi5jb21wdXRlQ2hhbmdlZFBhdGgpKGUudHJlZSx0LnBhdGNoZWRUcmVlKTtyPyhsPXUsdT1yKTp1fHwodT1lLmNhbm9uaWNhbFVybCl9cmV0dXJue2Nhbm9uaWNhbFVybDp0LmNhbm9uaWNhbFVybD8/ZS5jYW5vbmljYWxVcmwscmVuZGVyZWRTZWFyY2g6dC5yZW5kZXJlZFNlYXJjaD8/ZS5yZW5kZXJlZFNlYXJjaCxwdXNoUmVmOntwZW5kaW5nUHVzaDphKHQucGVuZGluZ1B1c2gpP3QucGVuZGluZ1B1c2g6ZS5wdXNoUmVmLnBlbmRpbmdQdXNoLG1wYU5hdmlnYXRpb246YSh0Lm1wYU5hdmlnYXRpb24pP3QubXBhTmF2aWdhdGlvbjplLnB1c2hSZWYubXBhTmF2aWdhdGlvbixwcmVzZXJ2ZUN1c3RvbUhpc3RvcnlTdGF0ZTphKHQucHJlc2VydmVDdXN0b21IaXN0b3J5U3RhdGUpP3QucHJlc2VydmVDdXN0b21IaXN0b3J5U3RhdGU6ZS5wdXNoUmVmLnByZXNlcnZlQ3VzdG9tSGlzdG9yeVN0YXRlfSxmb2N1c0FuZFNjcm9sbFJlZjp7YXBwbHk6ISFyJiYoISFhKHQ/LnNjcm9sbGFibGVTZWdtZW50cyl8fGUuZm9jdXNBbmRTY3JvbGxSZWYuYXBwbHkpLG9ubHlIYXNoQ2hhbmdlOnQub25seUhhc2hDaGFuZ2V8fCExLGhhc2hGcmFnbWVudDpyP3QuaGFzaEZyYWdtZW50JiYiIiE9PXQuaGFzaEZyYWdtZW50P2RlY29kZVVSSUNvbXBvbmVudCh0Lmhhc2hGcmFnbWVudC5zbGljZSgxKSk6ZS5mb2N1c0FuZFNjcm9sbFJlZi5oYXNoRnJhZ21lbnQ6bnVsbCxzZWdtZW50UGF0aHM6cj90Py5zY3JvbGxhYmxlU2VnbWVudHM/P2UuZm9jdXNBbmRTY3JvbGxSZWYuc2VnbWVudFBhdGhzOltdfSxjYWNoZTp0LmNhY2hlP3QuY2FjaGU6ZS5jYWNoZSx0cmVlOmEodC5wYXRjaGVkVHJlZSk/dC5wYXRjaGVkVHJlZTplLnRyZWUsbmV4dFVybDp1LHByZXZpb3VzTmV4dFVybDpsLGRlYnVnSW5mbzp0LmNvbGxlY3RlZERlYnVnSW5mbz8/bnVsbH19KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNDYyMTksKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e0hFQURfUkVRVUVTVF9LRVk6ZnVuY3Rpb24oKXtyZXR1cm4gb30sUk9PVF9TRUdNRU5UX1JFUVVFU1RfS0VZOmZ1bmN0aW9uKCl7cmV0dXJuIHV9LGFwcGVuZFNlZ21lbnRSZXF1ZXN0S2V5UGFydDpmdW5jdGlvbigpe3JldHVybiBjfSxjb252ZXJ0U2VnbWVudFBhdGhUb1N0YXRpY0V4cG9ydEZpbGVuYW1lOmZ1bmN0aW9uKCl7cmV0dXJuIGR9LGNyZWF0ZVNlZ21lbnRSZXF1ZXN0S2V5UGFydDpmdW5jdGlvbigpe3JldHVybiBpfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucigyNzQ1NCksdT0iIixvPSIvX2hlYWQiO2Z1bmN0aW9uIGkoZSl7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlLnN0YXJ0c1dpdGgobC5QQUdFX1NFR01FTlRfS0VZKT9sLlBBR0VfU0VHTUVOVF9LRVk6Ii9fbm90LWZvdW5kIj09PWU/Il9ub3QtZm91bmQiOmYoZSk7bGV0IHQ9ZVswXTtyZXR1cm4iJCIrZVsyXSsiJCIrZih0KX1mdW5jdGlvbiBjKGUsdCxyKXtyZXR1cm4gZSsiLyIrKCJjaGlsZHJlbiI9PT10P3I6YEAke2YodCl9LyR7cn1gKX1sZXQgcz0vXlthLXpBLVowLTlcLV9AXSskLztmdW5jdGlvbiBmKGUpe3JldHVybiBzLnRlc3QoZSk/ZToiISIrYnRvYShlKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoLz0rJC8sIiIpfWZ1bmN0aW9uIGQoZSl7cmV0dXJuYF9fbmV4dCR7ZS5yZXBsYWNlKC9cLy9nLCIuIil9LnR4dGB9fSw4ODA2MiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17ZG9lc1N0YXRpY1NlZ21lbnRBcHBlYXJJblVSTDpmdW5jdGlvbigpe3JldHVybiBmfSxnZXRDYWNoZUtleUZvckR5bmFtaWNQYXJhbTpmdW5jdGlvbigpe3JldHVybiBkfSxnZXRQYXJhbVZhbHVlRnJvbUNhY2hlS2V5OmZ1bmN0aW9uKCl7cmV0dXJuIHB9LGdldFJlbmRlcmVkUGF0aG5hbWU6ZnVuY3Rpb24oKXtyZXR1cm4gY30sZ2V0UmVuZGVyZWRTZWFyY2g6ZnVuY3Rpb24oKXtyZXR1cm4gaX0scGFyc2VEeW5hbWljUGFyYW1Gcm9tVVJMUGFydDpmdW5jdGlvbigpe3JldHVybiBzfSx1cmxTZWFyY2hQYXJhbXNUb1BhcnNlZFVybFF1ZXJ5OmZ1bmN0aW9uKCl7cmV0dXJuIHl9LHVybFRvVXJsV2l0aG91dEZsaWdodE1hcmtlcjpmdW5jdGlvbigpe3JldHVybiBofX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucigyNzQ1NCksdT1lLnIoNDYyMTkpLG89ZS5yKDM0NjQxKTtmdW5jdGlvbiBpKGUpe2xldCB0PWUuaGVhZGVycy5nZXQoby5ORVhUX1JFV1JJVFRFTl9RVUVSWV9IRUFERVIpO3JldHVybiBudWxsIT09dD8iIj09PXQ/IiI6Ij8iK3Q6aChuZXcgVVJMKGUudXJsKSkuc2VhcmNofWZ1bmN0aW9uIGMoZSl7cmV0dXJuIGUuaGVhZGVycy5nZXQoby5ORVhUX1JFV1JJVFRFTl9QQVRIX0hFQURFUik/P2gobmV3IFVSTChlLnVybCkpLnBhdGhuYW1lfWZ1bmN0aW9uIHMoZSx0LHIpe3N3aXRjaChlKXtjYXNlImMiOnJldHVybiByPHQubGVuZ3RoP3Quc2xpY2UocikubWFwKGU9PmVuY29kZVVSSUNvbXBvbmVudChlKSk6W107Y2FzZSJjaSguLikoLi4pIjpjYXNlImNpKC4pIjpjYXNlImNpKC4uKSI6Y2FzZSJjaSguLi4pIjp7bGV0IG49ZS5sZW5ndGgtMjtyZXR1cm4gcjx0Lmxlbmd0aD90LnNsaWNlKHIpLm1hcCgoZSx0KT0+MD09PXQ/ZW5jb2RlVVJJQ29tcG9uZW50KGUuc2xpY2UobikpOmVuY29kZVVSSUNvbXBvbmVudChlKSk6W119Y2FzZSJvYyI6cmV0dXJuIHI8dC5sZW5ndGg/dC5zbGljZShyKS5tYXAoZT0+ZW5jb2RlVVJJQ29tcG9uZW50KGUpKTpudWxsO2Nhc2UiZCI6aWYocj49dC5sZW5ndGgpcmV0dXJuIiI7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudCh0W3JdKTtjYXNlImRpKC4uKSguLikiOmNhc2UiZGkoLikiOmNhc2UiZGkoLi4pIjpjYXNlImRpKC4uLikiOntsZXQgbj1lLmxlbmd0aC0yO2lmKHI+PXQubGVuZ3RoKXJldHVybiIiO3JldHVybiBlbmNvZGVVUklDb21wb25lbnQodFtyXS5zbGljZShuKSl9ZGVmYXVsdDpyZXR1cm4iIn19ZnVuY3Rpb24gZihlKXtyZXR1cm4hKGU9PT11LlJPT1RfU0VHTUVOVF9SRVFVRVNUX0tFWXx8ZS5zdGFydHNXaXRoKGwuUEFHRV9TRUdNRU5UX0tFWSl8fCIoIj09PWVbMF0mJmUuZW5kc1dpdGgoIikiKSkmJmUhPT1sLkRFRkFVTFRfU0VHTUVOVF9LRVkmJiIvX25vdC1mb3VuZCIhPT1lfWZ1bmN0aW9uIGQoZSx0KXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/KDAsbC5hZGRTZWFyY2hQYXJhbXNJZlBhZ2VTZWdtZW50KShlLE9iamVjdC5mcm9tRW50cmllcyhuZXcgVVJMU2VhcmNoUGFyYW1zKHQpKSk6bnVsbD09PWU/IiI6ZS5qb2luKCIvIil9ZnVuY3Rpb24gaChlKXtsZXQgdD1uZXcgVVJMKGUpO3JldHVybiB0LnNlYXJjaFBhcmFtcy5kZWxldGUoby5ORVhUX1JTQ19VTklPTl9RVUVSWSksdH1mdW5jdGlvbiBwKGUsdCl7cmV0dXJuImMiPT09dHx8Im9jIj09PXQ/ZS5zcGxpdCgiLyIpOmV9ZnVuY3Rpb24geShlKXtsZXQgdD17fTtmb3IobGV0W3Isbl1vZiBlLmVudHJpZXMoKSl2b2lkIDA9PT10W3JdP3Rbcl09bjpBcnJheS5pc0FycmF5KHRbcl0pP3Rbcl0ucHVzaChuKTp0W3JdPVt0W3JdLG5dO3JldHVybiB0fSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDY3NjI4LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtjcmVhdGVJbml0aWFsUlNDUGF5bG9hZEZyb21GYWxsYmFja1ByZXJlbmRlcjpmdW5jdGlvbigpe3JldHVybiBjfSxnZXRGbGlnaHREYXRhUGFydHNGcm9tUGF0aDpmdW5jdGlvbigpe3JldHVybiBpfSxnZXROZXh0RmxpZ2h0U2VnbWVudFBhdGg6ZnVuY3Rpb24oKXtyZXR1cm4gc30sbm9ybWFsaXplRmxpZ2h0RGF0YTpmdW5jdGlvbigpe3JldHVybiBmfSxwcmVwYXJlRmxpZ2h0Um91dGVyU3RhdGVGb3JSZXF1ZXN0OmZ1bmN0aW9uKCl7cmV0dXJuIGR9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IGw9ZS5yKDI3NDU0KSx1PWUucig4ODA2Miksbz1lLnIoODU1OTQpO2Z1bmN0aW9uIGkoZSl7bGV0W3QscixuLGFdPWUuc2xpY2UoLTQpLGw9ZS5zbGljZSgwLC00KTtyZXR1cm57cGF0aFRvU2VnbWVudDpsLnNsaWNlKDAsLTEpLHNlZ21lbnRQYXRoOmwsc2VnbWVudDpsW2wubGVuZ3RoLTFdPz8iIix0cmVlOnQsc2VlZERhdGE6cixoZWFkOm4saXNIZWFkUGFydGlhbDphLGlzUm9vdFJlbmRlcjo0PT09ZS5sZW5ndGh9fWZ1bmN0aW9uIGMoZSx0KXtsZXQgcj0oMCx1LmdldFJlbmRlcmVkUGF0aG5hbWUpKGUpLG49KDAsdS5nZXRSZW5kZXJlZFNlYXJjaCkoZSksYT0oMCxvLmNyZWF0ZUhyZWZGcm9tVXJsKShuZXcgVVJMKGxvY2F0aW9uLmhyZWYpKSxsPXQuZlswXSxpPWxbMF07cmV0dXJue2I6dC5iLGM6YS5zcGxpdCgiLyIpLHE6bixpOnQuaSxmOltbZnVuY3Rpb24gZSh0LHIsbixhKXtsZXQgbCxvLGk9dFswXTtpZigic3RyaW5nIj09dHlwZW9mIGkpbD1pLG89KDAsdS5kb2VzU3RhdGljU2VnbWVudEFwcGVhckluVVJMKShpKTtlbHNle2xldCBlPWlbMF0sdD1pWzJdLGM9KDAsdS5wYXJzZUR5bmFtaWNQYXJhbUZyb21VUkxQYXJ0KSh0LG4sYSk7bD1bZSwoMCx1LmdldENhY2hlS2V5Rm9yRHluYW1pY1BhcmFtKShjLHIpLHRdLG89ITB9bGV0IGM9bz9hKzE6YSxzPXRbMV0sZj17fTtmb3IobGV0IHQgaW4gcyl7bGV0IGE9c1t0XTtmW3RdPWUoYSxyLG4sYyl9cmV0dXJuW2wsZixudWxsLHRbM10sdFs0XV19KGksbixyLnNwbGl0KCIvIikuZmlsdGVyKGU9PiIiIT09ZSksMCksbFsxXSxsWzJdLGxbMl1dXSxtOnQubSxHOnQuRyxTOnQuU319ZnVuY3Rpb24gcyhlKXtyZXR1cm4gZS5zbGljZSgyKX1mdW5jdGlvbiBmKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZT9lOmUubWFwKGU9PmkoZSkpfWZ1bmN0aW9uIGQoZSx0KXtyZXR1cm4gdD9lbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkoZSkpOmVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShmdW5jdGlvbiBlKHQpe3ZhciByLG47bGV0W2EsdSxvLGksYyxzXT10LGY9InN0cmluZyI9PXR5cGVvZihyPWEpJiZyLnN0YXJ0c1dpdGgobC5QQUdFX1NFR01FTlRfS0VZKyI/Iik/bC5QQUdFX1NFR01FTlRfS0VZOnIsZD17fTtmb3IobGV0W3Qscl1vZiBPYmplY3QuZW50cmllcyh1KSlkW3RdPWUocik7bGV0IGg9W2YsZCxudWxsLChuPWkpJiYicmVmcmVzaCIhPT1uP2k6bnVsbF07cmV0dXJuIHZvaWQgMCE9PWMmJihoWzRdPWMpLHZvaWQgMCE9PXMmJihoWzVdPXMpLGh9KGUpKSl9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNjE3MDYsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e2dldEFwcEJ1aWxkSWQ6ZnVuY3Rpb24oKXtyZXR1cm4gb30sc2V0QXBwQnVpbGRJZDpmdW5jdGlvbigpe3JldHVybiB1fX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPSIiO2Z1bmN0aW9uIHUoZSl7bD1lfWZ1bmN0aW9uIG8oKXtyZXR1cm4gbH0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwyNzQxOCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17ZGpiMkhhc2g6ZnVuY3Rpb24oKXtyZXR1cm4gbH0saGV4SGFzaDpmdW5jdGlvbigpe3JldHVybiB1fX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2Z1bmN0aW9uIGwoZSl7bGV0IHQ9NTM4MTtmb3IobGV0IHI9MDtyPGUubGVuZ3RoO3IrKyl0PSh0PDw1KSt0K2UuY2hhckNvZGVBdChyKXwwO3JldHVybiB0Pj4+MH1mdW5jdGlvbiB1KGUpe3JldHVybiBsKGUpLnRvU3RyaW5nKDM2KS5zbGljZSgwLDUpfX0sNjg4NDcsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImNvbXB1dGVDYWNoZUJ1c3RpbmdTZWFyY2hQYXJhbSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGF9fSk7bGV0IG49ZS5yKDI3NDE4KTtmdW5jdGlvbiBhKGUsdCxyLGEpe3JldHVybih2b2lkIDA9PT1lfHwiMCI9PT1lKSYmdm9pZCAwPT09dCYmdm9pZCAwPT09ciYmdm9pZCAwPT09YT8iIjooMCxuLmhleEhhc2gpKFtlfHwiMCIsdHx8IjAiLHJ8fCIwIixhfHwiMCJdLmpvaW4oIiwiKSl9fSw0MTMwMiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17c2V0Q2FjaGVCdXN0aW5nU2VhcmNoUGFyYW06ZnVuY3Rpb24oKXtyZXR1cm4gb30sc2V0Q2FjaGVCdXN0aW5nU2VhcmNoUGFyYW1XaXRoSGFzaDpmdW5jdGlvbigpe3JldHVybiBpfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig2ODg0NyksdT1lLnIoMzQ2NDEpLG89KGUsdCk9PntpKGUsKDAsbC5jb21wdXRlQ2FjaGVCdXN0aW5nU2VhcmNoUGFyYW0pKHRbdS5ORVhUX1JPVVRFUl9QUkVGRVRDSF9IRUFERVJdLHRbdS5ORVhUX1JPVVRFUl9TRUdNRU5UX1BSRUZFVENIX0hFQURFUl0sdFt1Lk5FWFRfUk9VVEVSX1NUQVRFX1RSRUVfSEVBREVSXSx0W3UuTkVYVF9VUkxdKSl9LGk9KGUsdCk9PntsZXQgcj1lLnNlYXJjaCxuPShyLnN0YXJ0c1dpdGgoIj8iKT9yLnNsaWNlKDEpOnIpLnNwbGl0KCImIikuZmlsdGVyKGU9PmUmJiFlLnN0YXJ0c1dpdGgoYCR7dS5ORVhUX1JTQ19VTklPTl9RVUVSWX09YCkpO3QubGVuZ3RoPjA/bi5wdXNoKGAke3UuTkVYVF9SU0NfVU5JT05fUVVFUll9PSR7dH1gKTpuLnB1c2goYCR7dS5ORVhUX1JTQ19VTklPTl9RVUVSWX1gKSxlLnNlYXJjaD1uLmxlbmd0aD9gPyR7bi5qb2luKCImIil9YDoiIn07KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMTEwNiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO2xldCBuO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgYT17Y3JlYXRlRmV0Y2g6ZnVuY3Rpb24oKXtyZXR1cm4gdn0sY3JlYXRlRnJvbU5leHRSZWFkYWJsZVN0cmVhbTpmdW5jdGlvbigpe3JldHVybiBFfSxmZXRjaFNlcnZlclJlc3BvbnNlOmZ1bmN0aW9uKCl7cmV0dXJuIFB9fTtmb3IodmFyIGwgaW4gYSlPYmplY3QuZGVmaW5lUHJvcGVydHkocixsLHtlbnVtZXJhYmxlOiEwLGdldDphW2xdfSk7bGV0IHU9ZS5yKDc1MDQ1KSxvPWUucigzNDY0MSksaT1lLnIoMzA5MzEpLGM9ZS5yKDg5NTk0KSxzPWUucig2NzYyOCksZj1lLnIoNjE3MDYpLGQ9ZS5yKDQxMzAyKSxoPWUucig4ODA2MikscD1lLnIoODg3NzQpLHk9dS5jcmVhdGVGcm9tUmVhZGFibGVTdHJlYW0sZz11LmNyZWF0ZUZyb21GZXRjaDtmdW5jdGlvbiBSKGUpe3JldHVybigwLGgudXJsVG9VcmxXaXRob3V0RmxpZ2h0TWFya2VyKShuZXcgVVJMKGUsbG9jYXRpb24ub3JpZ2luKSkudG9TdHJpbmcoKX1sZXQgXz0hMTthc3luYyBmdW5jdGlvbiBQKGUsdCl7bGV0e2ZsaWdodFJvdXRlclN0YXRlOnIsbmV4dFVybDpufT10LGE9e1tvLlJTQ19IRUFERVJdOiIxIixbby5ORVhUX1JPVVRFUl9TVEFURV9UUkVFX0hFQURFUl06KDAscy5wcmVwYXJlRmxpZ2h0Um91dGVyU3RhdGVGb3JSZXF1ZXN0KShyLHQuaXNIbXJSZWZyZXNoKX07biYmKGFbby5ORVhUX1VSTF09bik7dHJ5e2xldCB0PWF3YWl0IHYoZSxhLCJhdXRvIiwhMCkscj0oMCxoLnVybFRvVXJsV2l0aG91dEZsaWdodE1hcmtlcikobmV3IFVSTCh0LnVybCkpLG49dC5yZWRpcmVjdGVkP3I6ZSxsPXQuaGVhZGVycy5nZXQoImNvbnRlbnQtdHlwZSIpfHwiIix1PSEhdC5oZWFkZXJzLmdldCgidmFyeSIpPy5pbmNsdWRlcyhvLk5FWFRfVVJMKSxpPSEhdC5oZWFkZXJzLmdldChvLk5FWFRfRElEX1BPU1RQT05FX0hFQURFUiksYz10LmhlYWRlcnMuZ2V0KG8uTkVYVF9ST1VURVJfU1RBTEVfVElNRV9IRUFERVIpLGQ9bnVsbCE9PWM/MWUzKnBhcnNlSW50KGMsMTApOi0xO2lmKCFsLnN0YXJ0c1dpdGgoby5SU0NfQ09OVEVOVF9UWVBFX0hFQURFUil8fCF0Lm9rfHwhdC5ib2R5KXJldHVybiBlLmhhc2gmJihyLmhhc2g9ZS5oYXNoKSxSKHIudG9TdHJpbmcoKSk7bGV0IHA9dC5mbGlnaHRSZXNwb25zZTtpZihudWxsPT09cCl7bGV0IGUscj1pPyhlPXQuYm9keS5nZXRSZWFkZXIoKSxuZXcgUmVhZGFibGVTdHJlYW0oe2FzeW5jIHB1bGwodCl7Zm9yKDs7KXtsZXR7ZG9uZTpyLHZhbHVlOm59PWF3YWl0IGUucmVhZCgpO2lmKCFyKXt0LmVucXVldWUobik7Y29udGludWV9cmV0dXJufX19KSk6dC5ib2R5O3A9RShyLGEpfWxldCB5PWF3YWl0IHA7aWYoKDAsZi5nZXRBcHBCdWlsZElkKSgpIT09eS5iKXJldHVybiBSKHQudXJsKTtsZXQgZz0oMCxzLm5vcm1hbGl6ZUZsaWdodERhdGEpKHkuZik7aWYoInN0cmluZyI9PXR5cGVvZiBnKXJldHVybiBSKGcpO3JldHVybntmbGlnaHREYXRhOmcsY2Fub25pY2FsVXJsOm4scmVuZGVyZWRTZWFyY2g6KDAsaC5nZXRSZW5kZXJlZFNlYXJjaCkodCksY291bGRCZUludGVyY2VwdGVkOnUscHJlcmVuZGVyZWQ6eS5TLHBvc3Rwb25lZDppLHN0YWxlVGltZTpkLGRlYnVnSW5mbzpwLl9kZWJ1Z0luZm8/P251bGx9fWNhdGNoKHQpe3JldHVybiBffHxjb25zb2xlLmVycm9yKGBGYWlsZWQgdG8gZmV0Y2ggUlNDIHBheWxvYWQgZm9yICR7ZX0uIEZhbGxpbmcgYmFjayB0byBicm93c2VyIG5hdmlnYXRpb24uYCx0KSxlLnRvU3RyaW5nKCl9fWFzeW5jIGZ1bmN0aW9uIHYoZSx0LHIsYSxsKXt2YXIgdSxzO2xldCBmPSgwLHAuZ2V0RGVwbG95bWVudElkKSgpO2YmJih0WyJ4LWRlcGxveW1lbnQtaWQiXT1mKTtsZXQgaD1uZXcgVVJMKGUpOygwLGQuc2V0Q2FjaGVCdXN0aW5nU2VhcmNoUGFyYW0pKGgsdCk7bGV0IHk9ZmV0Y2goaCx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixoZWFkZXJzOnQscHJpb3JpdHk6cnx8dm9pZCAwLHNpZ25hbDpsfSksUj1hPyh1PXkscz10LGcodSx7Y2FsbFNlcnZlcjppLmNhbGxTZXJ2ZXIsZmluZFNvdXJjZU1hcFVSTDpjLmZpbmRTb3VyY2VNYXBVUkwsZGVidWdDaGFubmVsOm4mJm4ocyl9KSk6bnVsbCxfPWF3YWl0IHksUD1fLnJlZGlyZWN0ZWQsdj1uZXcgVVJMKF8udXJsLGgpO3JldHVybiB2LnNlYXJjaFBhcmFtcy5kZWxldGUoby5ORVhUX1JTQ19VTklPTl9RVUVSWSkse3VybDp2LmhyZWYscmVkaXJlY3RlZDpQLG9rOl8ub2ssaGVhZGVyczpfLmhlYWRlcnMsYm9keTpfLmJvZHksc3RhdHVzOl8uc3RhdHVzLGZsaWdodFJlc3BvbnNlOlJ9fWZ1bmN0aW9uIEUoZSx0KXtyZXR1cm4geShlLHtjYWxsU2VydmVyOmkuY2FsbFNlcnZlcixmaW5kU291cmNlTWFwVVJMOmMuZmluZFNvdXJjZU1hcFVSTCxkZWJ1Z0NoYW5uZWw6biYmbih0KX0pfSJ1Ij50eXBlb2Ygd2luZG93JiYod2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInBhZ2VoaWRlIiwoKT0+e189ITB9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicGFnZXNob3ciLCgpPT57Xz0hMX0pKSwoImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw1Nzc3OCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiY3JlYXRlUm91dGVyQ2FjaGVLZXkiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCBuPWUucigyNzQ1NCk7ZnVuY3Rpb24gYShlLHQ9ITEpe3JldHVybiBBcnJheS5pc0FycmF5KGUpP2Ake2VbMF19fCR7ZVsxXX18JHtlWzJdfWA6dCYmZS5zdGFydHNXaXRoKG4uUEFHRV9TRUdNRU5UX0tFWSk/bi5QQUdFX1NFR01FTlRfS0VZOmV9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMzczNjgsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImlzTmF2aWdhdGluZ1RvTmV3Um9vdExheW91dCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uIGUodCxyKXtsZXQgbj10WzBdLGE9clswXTtpZihBcnJheS5pc0FycmF5KG4pJiZBcnJheS5pc0FycmF5KGEpKXtpZihuWzBdIT09YVswXXx8blsyXSE9PWFbMl0pcmV0dXJuITB9ZWxzZSBpZihuIT09YSlyZXR1cm4hMDtpZih0WzRdKXJldHVybiFyWzRdO2lmKHJbNF0pcmV0dXJuITA7bGV0IGw9T2JqZWN0LnZhbHVlcyh0WzFdKVswXSx1PU9iamVjdC52YWx1ZXMoclsxXSlbMF07cmV0dXJuIWx8fCF1fHxlKGwsdSl9fX0pLCgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDE4OTM5LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuLGE9e0ZyZXNobmVzc1BvbGljeTpmdW5jdGlvbigpe3JldHVybiBnfSxjcmVhdGVJbml0aWFsQ2FjaGVOb2RlRm9ySHlkcmF0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIF99LGlzRGVmZXJyZWRSc2M6ZnVuY3Rpb24oKXtyZXR1cm4gTn0sc3Bhd25EeW5hbWljUmVxdWVzdHM6ZnVuY3Rpb24oKXtyZXR1cm4gan0sc3RhcnRQUFJOYXZpZ2F0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIFB9fTtmb3IodmFyIGwgaW4gYSlPYmplY3QuZGVmaW5lUHJvcGVydHkocixsLHtlbnVtZXJhYmxlOiEwLGdldDphW2xdfSk7bGV0IHU9ZS5yKDI3NDU0KSxvPWUucig4OTYxNiksaT1lLnIoODU1OTQpLGM9ZS5yKDU3Nzc4KSxzPWUucigxMTA2KSxmPWUucig5NDg3OSksZD1lLnIoNTk0MzApLGg9ZS5yKDM3MzY4KSxwPWUucig1NDAxMSkseT1lLnIoNjU0NjMpO3ZhciBnPSgobj17fSlbbi5EZWZhdWx0PTBdPSJEZWZhdWx0IixuW24uSHlkcmF0aW9uPTFdPSJIeWRyYXRpb24iLG5bbi5IaXN0b3J5VHJhdmVyc2FsPTJdPSJIaXN0b3J5VHJhdmVyc2FsIixuW24uUmVmcmVzaEFsbD0zXT0iUmVmcmVzaEFsbCIsbltuLkhNUlJlZnJlc2g9NF09IkhNUlJlZnJlc2giLG4pO2xldCBSPSgpPT57fTtmdW5jdGlvbiBfKGUsdCxyLG4pe3JldHVybiB2KGUsdCx2b2lkIDAsMSxyLG4sbnVsbCxudWxsLCExLG51bGwsbnVsbCwhMSx7c2Nyb2xsYWJsZVNlZ21lbnRzOm51bGwsc2VwYXJhdGVSZWZyZXNoVXJsczpudWxsfSkubm9kZX1mdW5jdGlvbiBQKGUsdCxyLG4sYSxsLHMsZixkLHAseSxnLFIpe3JldHVybiBmdW5jdGlvbiBlKHQscixuLGEsbCxzLGYsZCxwLHksZyxSLF8sUCxPLGosTSxBKXt2YXIgVSxDO2xldCBOLHcsRixJPWFbMF0sTD1sWzBdO2lmKCEoMCxvLm1hdGNoU2VnbWVudCkoTCxJKSlyZXR1cm4hZiYmKDAsaC5pc05hdmlnYXRpbmdUb05ld1Jvb3RMYXlvdXQpKGEsbCl8fEw9PT11Lk5PVF9GT1VORF9TRUdNRU5UX0tFWXx8bnVsbD09PVB8fG51bGw9PT1PP251bGw6dih0LGwsbixzLGQscCx5LGcsUixQLE8saixBKTtsZXQgRD1udWxsIT09TyYmbnVsbCE9PVA/UC5jb25jYXQoW08sTF0pOltdLHg9bFsxXSxrPWFbMV0sSD1udWxsIT09ZD9kWzFdOm51bGwsQj1udWxsIT09eT95WzFdOm51bGwsSz0hMD09PWxbNF0sVj1mfHxLLHE9dm9pZCAwIT09bj9uLnBhcmFsbGVsUm91dGVzOnZvaWQgMCxHPSExLHo9ITE7c3dpdGNoKHMpe2Nhc2UgMDpjYXNlIDI6Y2FzZSAxOkc9ITEsej0hMTticmVhaztjYXNlIDM6Y2FzZSA0Okc9ITAsej0hMH1sZXQgWD1uZXcgTWFwKEc/dm9pZCAwOnEpLFc9MD09PU9iamVjdC5rZXlzKHgpLmxlbmd0aDtpZih2b2lkIDA9PT1ufHx6fHxXJiZfKWlmKG51bGwhPT1kJiZudWxsIT09ZFswXSl7bGV0IGU9ZFswXSxyPWRbMl0sbj1udWxsPT09cDt3PVMoZSxyLCExLHAsbixXLFgsdCksRj1XJiZufWVsc2UgaWYobnVsbCE9PXkpe2xldCBlPXlbMF0scj15WzJdLG49eVszXTt3PVMoZSxyLG4sZyxSLFcsWCx0KSxGPW58fFcmJlJ9ZWxzZSB3PVQoWCxXLHQscyksRj0hMDtlbHNlIHc9YighMSxuLFgpLEY9ITE7bGV0IFk9bFsyXSwkPSJzdHJpbmciPT10eXBlb2YgWSYmInJlZnJlc2giPT09bFszXT9ZOk07RiYmbnVsbCE9PSQmJihVPUEsQz0kLG51bGw9PT0oTj1VLnNlcGFyYXRlUmVmcmVzaFVybHMpP1Uuc2VwYXJhdGVSZWZyZXNoVXJscz1uZXcgU2V0KFtDXSk6Ti5hZGQoQykpO2xldCBRPXt9LEo9bnVsbCxaPSExLGVlPXt9O2ZvcihsZXQgbiBpbiB4KXtsZXQgYT14W25dLGw9a1tuXTtpZih2b2lkIDA9PT1sKXJldHVybiBudWxsO2xldCBvPXZvaWQgMCE9PXE/cS5nZXQobik6dm9pZCAwLGY9bnVsbCE9PUg/SFtuXTpudWxsLGQ9bnVsbCE9PUI/QltuXTpudWxsLGg9YVswXSx5PXAsUD1nLHY9UjsyIT09cyYmaD09PXUuREVGQVVMVF9TRUdNRU5UX0tFWSYmKGg9KGE9ZnVuY3Rpb24oZSx0KXtsZXQgcjtyZXR1cm4icmVmcmVzaCI9PT10WzNdP3I9dDooKHI9RSh0LHRbMV0pKVsyXT0oMCxpLmNyZWF0ZUhyZWZGcm9tVXJsKShlKSxyWzNdPSJyZWZyZXNoIikscn0ocixsKSlbMF0sZj1udWxsLHk9bnVsbCxkPW51bGwsUD1udWxsLHY9ITEpO2xldCBtPSgwLGMuY3JlYXRlUm91dGVyQ2FjaGVLZXkpKGgpLGI9ZSh0LHIsdm9pZCAwIT09bz9vLmdldChtKTp2b2lkIDAsbCxhLHMsVixmPz9udWxsLHksZD8/bnVsbCxQLHYsXyxELG4sanx8RiwkLEEpO2lmKG51bGw9PT1iKXJldHVybiBudWxsO251bGw9PT1KJiYoSj1uZXcgTWFwKSxKLnNldChuLGIpO2xldCBTPWIubm9kZTtpZihudWxsIT09Uyl7bGV0IGU9bmV3IE1hcChHP3ZvaWQgMDpvKTtlLnNldChtLFMpLFguc2V0KG4sZSl9bGV0IFQ9Yi5yb3V0ZTtRW25dPVQ7bGV0IE89Yi5keW5hbWljUmVxdWVzdFRyZWU7bnVsbCE9PU8/KFo9ITAsZWVbbl09Tyk6ZWVbbl09VH1yZXR1cm57c3RhdHVzOishRixyb3V0ZTpFKGwsUSksbm9kZTp3LGR5bmFtaWNSZXF1ZXN0VHJlZTptKGwsZWUsRixaLGopLHJlZnJlc2hVcmw6JCxjaGlsZHJlbjpKfX0oZSx0LG51bGwhPT1yP3I6dm9pZCAwLG4sYSxsLCExLHMsZixkLHAseSxnLG51bGwsbnVsbCwhMSxudWxsLFIpfWZ1bmN0aW9uIHYoZSx0LHIsbixhLGwsdSxvLGkscyxmLGQsaCl7bGV0IHksZyxSPXRbMF0sXz1udWxsIT09ZiYmbnVsbCE9PXM/cy5jb25jYXQoW2YsUl0pOltdLFA9dFsxXSxPPW51bGwhPT11P3VbMV06bnVsbCxqPW51bGwhPT1hP2FbMV06bnVsbCxNPXZvaWQgMCE9PXI/ci5wYXJhbGxlbFJvdXRlczp2b2lkIDAsQT0hMSxVPSExLEM9ITE7c3dpdGNoKG4pe2Nhc2UgMDpBPSExLFU9dm9pZCAwPT09cnx8ZS1yLm5hdmlnYXRlZEF0Pj1wLkRZTkFNSUNfU1RBTEVUSU1FX01TLEM9ITE7YnJlYWs7Y2FzZSAxOlU9ITEsQT0hMSxDPSExO2JyZWFrO2Nhc2UgMjppZihVPSExLFU9ITEsdm9pZCAwIT09cil7bGV0IGU9ci5yc2M7Qz0hTihlKXx8InBlbmRpbmciIT09ZS5zdGF0dXN9ZWxzZSBDPSExO2JyZWFrO2Nhc2UgMzpjYXNlIDQ6VT0hMCxBPSEwLEM9ITF9bGV0IHc9bmV3IE1hcChBP3ZvaWQgMDpNKSxGPTA9PT1PYmplY3Qua2V5cyhQKS5sZW5ndGg7aWYoRiYmKG51bGw9PT1oLnNjcm9sbGFibGVTZWdtZW50cyYmKGguc2Nyb2xsYWJsZVNlZ21lbnRzPVtdKSxoLnNjcm9sbGFibGVTZWdtZW50cy5wdXNoKF8pKSxVfHx2b2lkIDA9PT1yKWlmKG51bGwhPT1hJiZudWxsIT09YVswXSl7bGV0IHQ9YVswXSxyPWFbMl0sdT1udWxsPT09bCYmMSE9PW47eT1TKHQsciwhMSxsLHUsRix3LGUpLGc9RiYmdX1lbHNlIGlmKDE9PT1uJiZGJiZudWxsIT09bCl5PVMobnVsbCxudWxsLCExLGwsITEsRix3LGUpLGc9ITE7ZWxzZSBpZigxIT09biYmbnVsbCE9PXUpe2xldCB0PXVbMF0scj11WzJdLG49dVszXTt5PVModCxyLG4sbyxpLEYsdyxlKSxnPW58fEYmJml9ZWxzZSB5PVQodyxGLGUsbiksZz0hMDtlbHNlIHk9YihDLHIsdyksZz0hMTtsZXQgST17fSxMPW51bGwsRD0hMSx4PXt9O2ZvcihsZXQgdCBpbiBQKXtsZXQgcj1QW3RdLGE9dm9pZCAwIT09TT9NLmdldCh0KTp2b2lkIDAsdT1udWxsIT09aj9qW3RdOm51bGwscz1udWxsIT09Tz9PW3RdOm51bGwsZj1yWzBdLHA9KDAsYy5jcmVhdGVSb3V0ZXJDYWNoZUtleSkoZikseT12KGUscix2b2lkIDAhPT1hP2EuZ2V0KHApOnZvaWQgMCxuLHU/P251bGwsbCxzPz9udWxsLG8saSxfLHQsZHx8ZyxoKTtudWxsPT09TCYmKEw9bmV3IE1hcCksTC5zZXQodCx5KTtsZXQgUj15Lm5vZGU7aWYobnVsbCE9PVIpe2xldCBlPW5ldyBNYXAoQT92b2lkIDA6YSk7ZS5zZXQocCxSKSx3LnNldCh0LGUpfWxldCBFPXkucm91dGU7SVt0XT1FO2xldCBtPXkuZHluYW1pY1JlcXVlc3RUcmVlO251bGwhPT1tPyhEPSEwLHhbdF09bSk6eFt0XT1FfXJldHVybntzdGF0dXM6KyFnLHJvdXRlOkUodCxJKSxub2RlOnksZHluYW1pY1JlcXVlc3RUcmVlOm0odCx4LGcsRCxkKSxyZWZyZXNoVXJsOm51bGwsY2hpbGRyZW46TH19ZnVuY3Rpb24gRShlLHQpe2xldCByPVtlWzBdLHRdO3JldHVybiAyIGluIGUmJihyWzJdPWVbMl0pLDMgaW4gZSYmKHJbM109ZVszXSksNCBpbiBlJiYocls0XT1lWzRdKSxyfWZ1bmN0aW9uIG0oZSx0LHIsbixhKXtsZXQgbD1udWxsO3JldHVybiByPyhsPUUoZSx0KSxhfHwobFszXT0icmVmZXRjaCIpKTpsPW4/RShlLHQpOm51bGwsbH1mdW5jdGlvbiBiKGUsdCxyKXtyZXR1cm57cnNjOnQucnNjLHByZWZldGNoUnNjOmU/bnVsbDp0LnByZWZldGNoUnNjLGhlYWQ6dC5oZWFkLHByZWZldGNoSGVhZDplP251bGw6dC5wcmVmZXRjaEhlYWQsbG9hZGluZzp0LmxvYWRpbmcscGFyYWxsZWxSb3V0ZXM6cixuYXZpZ2F0ZWRBdDp0Lm5hdmlnYXRlZEF0fX1mdW5jdGlvbiBTKGUsdCxyLG4sYSxsLHUsbyl7bGV0IGksYyxzLGY7cmV0dXJuIHI/KGM9ZSxpPXcoKSk6KGM9bnVsbCxpPWUpLGw/YT8ocz1uLGY9dygpKToocz1udWxsLGY9bik6KHM9bnVsbCxmPW51bGwpLHtyc2M6aSxwcmVmZXRjaFJzYzpjLGhlYWQ6ZixwcmVmZXRjaEhlYWQ6cyxsb2FkaW5nOnQscGFyYWxsZWxSb3V0ZXM6dSxuYXZpZ2F0ZWRBdDpvfX1mdW5jdGlvbiBUKGUsdCxyLG4pe2xldCBhPTE9PT1uO3JldHVybntyc2M6YT9udWxsOncoKSxwcmVmZXRjaFJzYzpudWxsLGhlYWQ6IWEmJnQ/dygpOm51bGwscHJlZmV0Y2hIZWFkOm51bGwsbG9hZGluZzphP251bGw6dygpLHBhcmFsbGVsUm91dGVzOmUsbmF2aWdhdGVkQXQ6cn19bGV0IE89ITE7ZnVuY3Rpb24gaihlLHQscixuLGEpe2xldCBsPWUuZHluYW1pY1JlcXVlc3RUcmVlO2lmKG51bGw9PT1sKXtPPSExO3JldHVybn1sZXQgdT1VKGUsbCx0LHIsbiksbz1hLnNlcGFyYXRlUmVmcmVzaFVybHMsYz1udWxsO2lmKG51bGwhPT1vKXtjPVtdO2xldCBhPSgwLGkuY3JlYXRlSHJlZkZyb21VcmwpKHQpO2ZvcihsZXQgdCBvZiBvKXQhPT1hJiZudWxsIT09bCYmYy5wdXNoKFUoZSxsLG5ldyBVUkwodCxsb2NhdGlvbi5vcmlnaW4pLHIsbikpfU0oZSxyLHUsYykudGhlbihSLFIpfWFzeW5jIGZ1bmN0aW9uIE0oZSx0LHIsbil7dmFyIGEsbDtsZXQgdT1hd2FpdCAoYT1yLGw9bixuZXcgUHJvbWlzZShlPT57bGV0IHQ9dD0+ezA9PT10LmV4aXRTdGF0dXM/MD09LS1uJiZlKDApOmUodC5leGl0U3RhdHVzKX0scj0oKT0+ZSgyKSxuPTE7YS50aGVuKHQsciksbnVsbCE9PWwmJihuKz1sLmxlbmd0aCxsLmZvckVhY2goZT0+ZS50aGVuKHQscikpKX0pKTtzd2l0Y2goMD09PXUmJih1PWZ1bmN0aW9uIGUodCxyLG4pe3ZhciBhLGwsdTtsZXQgbyxpLGMsczswPT09dC5zdGF0dXM/KHQuc3RhdHVzPTIsYT10Lm5vZGUsbD1yLHU9bixOKGk9YS5yc2MpJiYobnVsbD09PWw/aS5yZXNvbHZlKG51bGwsdSk6aS5yZWplY3QobCx1KSksTihjPWEubG9hZGluZykmJmMucmVzb2x2ZShudWxsLHUpLE4ocz1hLmhlYWQpJiZzLnJlc29sdmUobnVsbCx1KSxvPW51bGw9PT10LnJlZnJlc2hVcmw/MToyKTpvPTA7bGV0IGY9dC5jaGlsZHJlbjtpZihudWxsIT09Zilmb3IobGV0Wyx0XW9mIGYpe2xldCBhPWUodCxyLG4pO2E+byYmKG89YSl9cmV0dXJuIG99KGUsbnVsbCxudWxsKSksdSl7Y2FzZSAwOk89ITE7cmV0dXJuO2Nhc2UgMTp7bGV0IG49YXdhaXQgcjtBKCExLG4udXJsLHQsbi5zZWVkLGUucm91dGUpO3JldHVybn1jYXNlIDI6e2xldCBuPWF3YWl0IHI7QSghMCxuLnVybCx0LG4uc2VlZCxlLnJvdXRlKTtyZXR1cm59ZGVmYXVsdDpyZXR1cm4gdX19ZnVuY3Rpb24gQShlLHQscixuLGEpe2U9ZXx8TyxPPSEwO2xldCBsPXt0eXBlOmQuQUNUSU9OX1NFUlZFUl9QQVRDSCxwcmV2aW91c1RyZWU6YSx1cmw6dCxuZXh0VXJsOnIsc2VlZDpuLG1wYTplfTsoMCxmLmRpc3BhdGNoQXBwUm91dGVyQWN0aW9uKShsKX1hc3luYyBmdW5jdGlvbiBVKGUsdCxyLG4sYSl7dHJ5e2xldCBsPWF3YWl0ICgwLHMuZmV0Y2hTZXJ2ZXJSZXNwb25zZSkocix7ZmxpZ2h0Um91dGVyU3RhdGU6dCxuZXh0VXJsOm4saXNIbXJSZWZyZXNoOjQ9PT1hfSk7aWYoInN0cmluZyI9PXR5cGVvZiBsKXJldHVybntleGl0U3RhdHVzOjIsdXJsOm5ldyBVUkwobCxsb2NhdGlvbi5vcmlnaW4pLHNlZWQ6bnVsbH07bGV0IHU9KDAseS5jb252ZXJ0U2VydmVyUGF0Y2hUb0Z1bGxUcmVlKShlLnJvdXRlLGwuZmxpZ2h0RGF0YSxsLnJlbmRlcmVkU2VhcmNoKTtyZXR1cm57ZXhpdFN0YXR1czorISFmdW5jdGlvbiBlKHQscixuLGEsbCl7MD09PXQuc3RhdHVzJiZudWxsIT09biYmKHQuc3RhdHVzPTEsZnVuY3Rpb24oZSx0LHIsbil7bGV0IGE9ZS5yc2MsbD10WzBdO2lmKG51bGw9PT1sKXJldHVybjtudWxsPT09YT9lLnJzYz1sOk4oYSkmJmEucmVzb2x2ZShsLG4pO2xldCB1PWUubG9hZGluZztpZihOKHUpKXtsZXQgZT10WzJdO3UucmVzb2x2ZShlLG4pfWxldCBvPWUuaGVhZDtOKG8pJiZvLnJlc29sdmUocixuKX0odC5ub2RlLG4sYSxsKSk7bGV0IHU9dC5jaGlsZHJlbixpPXJbMV0sYz1udWxsIT09bj9uWzFdOm51bGwscz0hMTtpZihudWxsIT09dSlmb3IobGV0IHQgaW4gaSl7bGV0IHI9aVt0XSxuPW51bGwhPT1jP2NbdF06bnVsbCxmPXUuZ2V0KHQpO2lmKHZvaWQgMD09PWYpcz0hMDtlbHNle2xldCB0PWYucm91dGVbMF07KDAsby5tYXRjaFNlZ21lbnQpKHJbMF0sdCkmJm51bGwhPW4mJmUoZixyLG4sYSxsKSYmKHM9ITApfX1yZXR1cm4gc30oZSx1LnRyZWUsdS5kYXRhLHUuaGVhZCxsLmRlYnVnSW5mbyksdXJsOm5ldyBVUkwobC5jYW5vbmljYWxVcmwsbG9jYXRpb24ub3JpZ2luKSxzZWVkOnV9fWNhdGNoe3JldHVybntleGl0U3RhdHVzOjIsdXJsOnIsc2VlZDpudWxsfX19bGV0IEM9U3ltYm9sKCk7ZnVuY3Rpb24gTihlKXtyZXR1cm4gZSYmIm9iamVjdCI9PXR5cGVvZiBlJiZlLnRhZz09PUN9ZnVuY3Rpb24gdygpe2xldCBlLHQscj1bXSxuPW5ldyBQcm9taXNlKChyLG4pPT57ZT1yLHQ9bn0pO3JldHVybiBuLnN0YXR1cz0icGVuZGluZyIsbi5yZXNvbHZlPSh0LGEpPT57InBlbmRpbmciPT09bi5zdGF0dXMmJihuLnN0YXR1cz0iZnVsZmlsbGVkIixuLnZhbHVlPXQsbnVsbCE9PWEmJnIucHVzaC5hcHBseShyLGEpLGUodCkpfSxuLnJlamVjdD0oZSxhKT0+eyJwZW5kaW5nIj09PW4uc3RhdHVzJiYobi5zdGF0dXM9InJlamVjdGVkIixuLnJlYXNvbj1lLG51bGwhPT1hJiZyLnB1c2guYXBwbHkocixhKSx0KGUpKX0sbi50YWc9QyxuLl9kZWJ1Z0luZm89cixufSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDI0NDU3LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJIYXNMb2FkaW5nQm91bmRhcnkiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO3ZhciBuLGE9KChuPXt9KVtuLlNlZ21lbnRIYXNMb2FkaW5nQm91bmRhcnk9MV09IlNlZ21lbnRIYXNMb2FkaW5nQm91bmRhcnkiLG5bbi5TdWJ0cmVlSGFzTG9hZGluZ0JvdW5kYXJ5PTJdPSJTdWJ0cmVlSGFzTG9hZGluZ0JvdW5kYXJ5IixuW24uU3VidHJlZUhhc05vTG9hZGluZ0JvdW5kYXJ5PTNdPSJTdWJ0cmVlSGFzTm9Mb2FkaW5nQm91bmRhcnkiLG4pfSw1MjQxMywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbixhLGwsdT17RmV0Y2hTdHJhdGVneTpmdW5jdGlvbigpe3JldHVybiBzfSxOYXZpZ2F0aW9uUmVzdWx0VGFnOmZ1bmN0aW9uKCl7cmV0dXJuIGl9LFByZWZldGNoUHJpb3JpdHk6ZnVuY3Rpb24oKXtyZXR1cm4gY319O2Zvcih2YXIgbyBpbiB1KU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLG8se2VudW1lcmFibGU6ITAsZ2V0OnVbb119KTt2YXIgaT0oKG49e30pW24uTVBBPTBdPSJNUEEiLG5bbi5TdWNjZXNzPTFdPSJTdWNjZXNzIixuW24uTm9PcD0yXT0iTm9PcCIsbltuLkFzeW5jPTNdPSJBc3luYyIsbiksYz0oKGE9e30pW2EuSW50ZW50PTJdPSJJbnRlbnQiLGFbYS5EZWZhdWx0PTFdPSJEZWZhdWx0IixhW2EuQmFja2dyb3VuZD0wXT0iQmFja2dyb3VuZCIsYSkscz0oKGw9e30pW2wuTG9hZGluZ0JvdW5kYXJ5PTBdPSJMb2FkaW5nQm91bmRhcnkiLGxbbC5QUFI9MV09IlBQUiIsbFtsLlBQUlJ1bnRpbWU9Ml09IlBQUlJ1bnRpbWUiLGxbbC5GdWxsPTNdPSJGdWxsIixsKTsoImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw0MTg1MiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17ZGVsZXRlRnJvbUxydTpmdW5jdGlvbigpe3JldHVybiBmfSxscnVQdXQ6ZnVuY3Rpb24oKXtyZXR1cm4gY30sdXBkYXRlTHJ1U2l6ZTpmdW5jdGlvbigpe3JldHVybiBzfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig3NTc0NSksdT1udWxsLG89ITEsaT0wO2Z1bmN0aW9uIGMoZSl7aWYodT09PWUpcmV0dXJuO2xldCB0PWUucHJldixyPWUubmV4dDtpZihudWxsPT09cnx8bnVsbD09PXQ/KGkrPWUuc2l6ZSxkKCkpOih0Lm5leHQ9cixyLnByZXY9dCksbnVsbD09PXUpZS5wcmV2PWUsZS5uZXh0PWU7ZWxzZXtsZXQgdD11LnByZXY7ZS5wcmV2PXQsbnVsbCE9PXQmJih0Lm5leHQ9ZSksZS5uZXh0PXUsdS5wcmV2PWV9dT1lfWZ1bmN0aW9uIHMoZSx0KXtsZXQgcj1lLnNpemU7ZS5zaXplPXQsbnVsbCE9PWUubmV4dCYmKGk9aS1yK3QsZCgpKX1mdW5jdGlvbiBmKGUpe2xldCB0PWUubmV4dCxyPWUucHJldjtudWxsIT09dCYmbnVsbCE9PXImJihpLT1lLnNpemUsZS5uZXh0PW51bGwsZS5wcmV2PW51bGwsdT09PWU/dD09PXU/dT1udWxsOih1PXQsci5uZXh0PXQsdC5wcmV2PXIpOihyLm5leHQ9dCx0LnByZXY9cikpfWZ1bmN0aW9uIGQoKXtvfHxpPD0weDMyMDAwMDB8fChvPSEwLHAoaCkpfWZ1bmN0aW9uIGgoKXtvPSExO2Zvcig7aT4weDJkMDAwMDAmJm51bGwhPT11Oyl7bGV0IGU9dS5wcmV2O251bGwhPT1lJiYoMCxsLmRlbGV0ZU1hcEVudHJ5KShlKX19bGV0IHA9ImZ1bmN0aW9uIj09dHlwZW9mIHJlcXVlc3RJZGxlQ2FsbGJhY2s/cmVxdWVzdElkbGVDYWxsYmFjazplPT5zZXRUaW1lb3V0KGUsMCk7KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNzU3NDUsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e0ZhbGxiYWNrOmZ1bmN0aW9uKCl7cmV0dXJuIHV9LGNyZWF0ZUNhY2hlTWFwOmZ1bmN0aW9uKCl7cmV0dXJuIGl9LGRlbGV0ZUZyb21DYWNoZU1hcDpmdW5jdGlvbigpe3JldHVybiBofSxkZWxldGVNYXBFbnRyeTpmdW5jdGlvbigpe3JldHVybiBwfSxnZXRGcm9tQ2FjaGVNYXA6ZnVuY3Rpb24oKXtyZXR1cm4gY30saXNWYWx1ZUV4cGlyZWQ6ZnVuY3Rpb24oKXtyZXR1cm4gc30sc2V0SW5DYWNoZU1hcDpmdW5jdGlvbigpe3JldHVybiBmfSxzZXRTaXplSW5DYWNoZU1hcDpmdW5jdGlvbigpe3JldHVybiB5fX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig0MTg1MiksdT17fSxvPXt9O2Z1bmN0aW9uIGkoKXtyZXR1cm57cGFyZW50Om51bGwsa2V5Om51bGwsdmFsdWU6bnVsbCxtYXA6bnVsbCxwcmV2Om51bGwsbmV4dDpudWxsLHNpemU6MH19ZnVuY3Rpb24gYyhlLHQscixuLGEpe2xldCBpPWZ1bmN0aW9uIGUodCxyLG4sYSxsLGkpe2xldCBjLGY7aWYobnVsbCE9PWEpYz1hLnZhbHVlLGY9YS5wYXJlbnQ7ZWxzZSBpZihsJiZpIT09byljPW8sZj1udWxsO2Vsc2UgcmV0dXJuIG51bGw9PT1uLnZhbHVlP246cyh0LHIsbi52YWx1ZSk/KHAobiksbnVsbCk6bjtsZXQgZD1uLm1hcDtpZihudWxsIT09ZCl7bGV0IG49ZC5nZXQoYyk7aWYodm9pZCAwIT09bil7bGV0IGE9ZSh0LHIsbixmLGwsYyk7aWYobnVsbCE9PWEpcmV0dXJuIGF9bGV0IGE9ZC5nZXQodSk7aWYodm9pZCAwIT09YSlyZXR1cm4gZSh0LHIsYSxmLGwsYyl9cmV0dXJuIG51bGx9KGUsdCxyLG4sYSwwKTtyZXR1cm4gbnVsbD09PWl8fG51bGw9PT1pLnZhbHVlP251bGw6KCgwLGwubHJ1UHV0KShpKSxpLnZhbHVlKX1mdW5jdGlvbiBzKGUsdCxyKXtyZXR1cm4gci5zdGFsZUF0PD1lfHxyLnZlcnNpb248dH1mdW5jdGlvbiBmKGUsdCxyLG4pe2xldCBhPWZ1bmN0aW9uKGUsdCxyKXtsZXQgbj1lLGE9dCxsPW51bGw7Zm9yKDs7KXtsZXQgZT1sO2lmKG51bGwhPT1hKWw9YS52YWx1ZSxhPWEucGFyZW50O2Vsc2UgaWYociYmZSE9PW8pe2lmKG51bGw9PT1uLnZhbHVlKXJldHVybiBuO2w9b31lbHNlIGJyZWFrO2xldCB0PW4ubWFwO2lmKG51bGwhPT10KXtsZXQgZT10LmdldChsKTtpZih2b2lkIDAhPT1lKXtuPWU7Y29udGludWV9fWVsc2UgdD1uZXcgTWFwLG4ubWFwPXQ7bGV0IHU9e3BhcmVudDpuLGtleTpsLHZhbHVlOm51bGwsbWFwOm51bGwscHJldjpudWxsLG5leHQ6bnVsbCxzaXplOjB9O3Quc2V0KGwsdSksbj11fXJldHVybiBufShlLHQsbik7ZChhLHIpLCgwLGwubHJ1UHV0KShhKSwoMCxsLnVwZGF0ZUxydVNpemUpKGEsci5zaXplKX1mdW5jdGlvbiBkKGUsdCl7bnVsbCE9PWUudmFsdWUmJihlLnZhbHVlLnJlZj1udWxsLGUudmFsdWU9bnVsbCk7bGV0IHI9dC5yZWY7ZS52YWx1ZT10LHQucmVmPWUsKDAsbC51cGRhdGVMcnVTaXplKShlLHQuc2l6ZSksbnVsbCE9PXImJnIhPT1lJiZyLnZhbHVlPT09dCYmcChyKX1mdW5jdGlvbiBoKGUpe2xldCB0PWUucmVmO251bGwhPT10JiYoZS5yZWY9bnVsbCxwKHQpKX1mdW5jdGlvbiBwKGUpe2UudmFsdWU9bnVsbCwoMCxsLmRlbGV0ZUZyb21McnUpKGUpO2xldCB0PWUubWFwO2lmKG51bGw9PT10KXtsZXQgdD1lLnBhcmVudCxyPWUua2V5O2Zvcig7bnVsbCE9PXQ7KXtsZXQgZT10Lm1hcDtpZihudWxsIT09ZSYmKGUuZGVsZXRlKHIpLDA9PT1lLnNpemUpJiYodC5tYXA9bnVsbCxudWxsPT09dC52YWx1ZSkpe3I9dC5rZXksdD10LnBhcmVudDtjb250aW51ZX1icmVha319ZWxzZXtsZXQgcj10LmdldChvKTt2b2lkIDAhPT1yJiZudWxsIT09ci52YWx1ZSYmZChlLHIudmFsdWUpfX1mdW5jdGlvbiB5KGUsdCl7bGV0IHI9ZS5yZWY7bnVsbCE9PXImJihlLnNpemU9dCwoMCxsLnVwZGF0ZUxydVNpemUpKHIsdCkpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDY1ODkzLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXthcHBlbmRMYXlvdXRWYXJ5UGF0aDpmdW5jdGlvbigpe3JldHVybiBzfSxjbG9uZVBhZ2VWYXJ5UGF0aFdpdGhOZXdTZWFyY2hQYXJhbXM6ZnVuY3Rpb24oKXtyZXR1cm4geX0sZmluYWxpemVMYXlvdXRWYXJ5UGF0aDpmdW5jdGlvbigpe3JldHVybiBmfSxmaW5hbGl6ZU1ldGFkYXRhVmFyeVBhdGg6ZnVuY3Rpb24oKXtyZXR1cm4gaH0sZmluYWxpemVQYWdlVmFyeVBhdGg6ZnVuY3Rpb24oKXtyZXR1cm4gZH0sZ2V0RnVsZmlsbGVkUm91dGVWYXJ5UGF0aDpmdW5jdGlvbigpe3JldHVybiBjfSxnZXRSb3V0ZVZhcnlQYXRoOmZ1bmN0aW9uKCl7cmV0dXJuIGl9LGdldFNlZ21lbnRWYXJ5UGF0aEZvclJlcXVlc3Q6ZnVuY3Rpb24oKXtyZXR1cm4gcH19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbD1lLnIoNTI0MTMpLHU9ZS5yKDc1NzQ1KSxvPWUucig0NjIxOSk7ZnVuY3Rpb24gaShlLHQscil7cmV0dXJue3ZhbHVlOmUscGFyZW50Ont2YWx1ZTp0LHBhcmVudDp7dmFsdWU6cixwYXJlbnQ6bnVsbH19fX1mdW5jdGlvbiBjKGUsdCxyLG4pe3JldHVybnt2YWx1ZTplLHBhcmVudDp7dmFsdWU6dCxwYXJlbnQ6e3ZhbHVlOm4/cjp1LkZhbGxiYWNrLHBhcmVudDpudWxsfX19fWZ1bmN0aW9uIHMoZSx0KXtyZXR1cm57dmFsdWU6dCxwYXJlbnQ6ZX19ZnVuY3Rpb24gZihlLHQpe3JldHVybnt2YWx1ZTplLHBhcmVudDp0fX1mdW5jdGlvbiBkKGUsdCxyKXtyZXR1cm57dmFsdWU6ZSxwYXJlbnQ6e3ZhbHVlOnQscGFyZW50OnJ9fX1mdW5jdGlvbiBoKGUsdCxyKXtyZXR1cm57dmFsdWU6ZStvLkhFQURfUkVRVUVTVF9LRVkscGFyZW50Ont2YWx1ZTp0LHBhcmVudDpyfX19ZnVuY3Rpb24gcChlLHQpe2xldCByPXQudmFyeVBhdGg7aWYodC5pc1BhZ2UmJmUhPT1sLkZldGNoU3RyYXRlZ3kuRnVsbCYmZSE9PWwuRmV0Y2hTdHJhdGVneS5QUFJSdW50aW1lKXtsZXQgZT1yLnBhcmVudC5wYXJlbnQ7cmV0dXJue3ZhbHVlOnIudmFsdWUscGFyZW50Ont2YWx1ZTp1LkZhbGxiYWNrLHBhcmVudDplfX19cmV0dXJuIHJ9ZnVuY3Rpb24geShlLHQpe2xldCByPWUucGFyZW50O3JldHVybnt2YWx1ZTplLnZhbHVlLHBhcmVudDp7dmFsdWU6dCxwYXJlbnQ6ci5wYXJlbnR9fX0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwxNjMxNiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSx0KXtsZXQgcj1uZXcgVVJMKGUpO3JldHVybntwYXRobmFtZTpyLnBhdGhuYW1lLHNlYXJjaDpyLnNlYXJjaCxuZXh0VXJsOnR9fU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiY3JlYXRlQ2FjaGVLZXkiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBufX0pLCgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDc1NzgwLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtjYW5jZWxQcmVmZXRjaFRhc2s6ZnVuY3Rpb24oKXtyZXR1cm4gRX0saXNQcmVmZXRjaFRhc2tEaXJ0eTpmdW5jdGlvbigpe3JldHVybiBifSxwaW5nUHJlZmV0Y2hUYXNrOmZ1bmN0aW9uKCl7cmV0dXJuIEF9LHJlc2NoZWR1bGVQcmVmZXRjaFRhc2s6ZnVuY3Rpb24oKXtyZXR1cm4gbX0sc2NoZWR1bGVQcmVmZXRjaFRhc2s6ZnVuY3Rpb24oKXtyZXR1cm4gdn0sc3RhcnRSZXZhbGlkYXRpb25Db29sZG93bjpmdW5jdGlvbigpe3JldHVybiBQfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucigyNDQ1NyksdT1lLnIoODk2MTYpLG89ZS5yKDQ0NjY3KSxpPWUucig2NTg5MyksYz1lLnIoMTYzMTYpLHM9ZS5yKDUyNDEzKSxmPWUucigyNzQ1NCksZD0iZnVuY3Rpb24iPT10eXBlb2YgcXVldWVNaWNyb3Rhc2s/cXVldWVNaWNyb3Rhc2s6ZT0+UHJvbWlzZS5yZXNvbHZlKCkudGhlbihlKS5jYXRjaChlPT5zZXRUaW1lb3V0KCgpPT57dGhyb3cgZX0pKSxoPVtdLHA9MCx5PTAsZz0hMSxSPW51bGwsXz1udWxsO2Z1bmN0aW9uIFAoKXtudWxsIT09XyYmY2xlYXJUaW1lb3V0KF8pLF89c2V0VGltZW91dCgoKT0+e189bnVsbCxUKCl9LDMwMCl9ZnVuY3Rpb24gdihlLHQscixuLGEpe2xldCBsPXtrZXk6ZSx0cmVlQXRUaW1lT2ZQcmVmZXRjaDp0LGNhY2hlVmVyc2lvbjooMCxvLmdldEN1cnJlbnRDYWNoZVZlcnNpb24pKCkscHJpb3JpdHk6bixwaGFzZToxLGhhc0JhY2tncm91bmRXb3JrOiExLHNwYXduZWRSdW50aW1lUHJlZmV0Y2hlczpudWxsLGZldGNoU3RyYXRlZ3k6cixzb3J0SWQ6eSsrLGlzQ2FuY2VsZWQ6ITEsb25JbnZhbGlkYXRlOmEsX2hlYXBJbmRleDotMX07cmV0dXJuIFMobCksQihoLGwpLFQoKSxsfWZ1bmN0aW9uIEUoZSl7ZS5pc0NhbmNlbGVkPSEwLGZ1bmN0aW9uKGUsdCl7bGV0IHI9dC5faGVhcEluZGV4O2lmKC0xIT09ciYmKHQuX2hlYXBJbmRleD0tMSwwIT09ZS5sZW5ndGgpKXtsZXQgbj1lLnBvcCgpO24hPT10JiYoZVtyXT1uLG4uX2hlYXBJbmRleD1yLHooZSxuLHIpKX19KGgsZSl9ZnVuY3Rpb24gbShlLHQscixuKXtlLmlzQ2FuY2VsZWQ9ITEsZS5waGFzZT0xLGUuc29ydElkPXkrKyxlLnByaW9yaXR5PWU9PT1SP3MuUHJlZmV0Y2hQcmlvcml0eS5JbnRlbnQ6bixlLnRyZWVBdFRpbWVPZlByZWZldGNoPXQsZS5mZXRjaFN0cmF0ZWd5PXIsUyhlKSwtMSE9PWUuX2hlYXBJbmRleD9xKGgsZSk6QihoLGUpLFQoKX1mdW5jdGlvbiBiKGUsdCxyKXtsZXQgbj0oMCxvLmdldEN1cnJlbnRDYWNoZVZlcnNpb24pKCk7cmV0dXJuIGUuY2FjaGVWZXJzaW9uIT09bnx8ZS50cmVlQXRUaW1lT2ZQcmVmZXRjaCE9PXJ8fGUua2V5Lm5leHRVcmwhPT10fWZ1bmN0aW9uIFMoZSl7ZS5wcmlvcml0eT09PXMuUHJlZmV0Y2hQcmlvcml0eS5JbnRlbnQmJmUhPT1SJiYobnVsbCE9PVImJlIucHJpb3JpdHkhPT1zLlByZWZldGNoUHJpb3JpdHkuQmFja2dyb3VuZCYmKFIucHJpb3JpdHk9cy5QcmVmZXRjaFByaW9yaXR5LkRlZmF1bHQscShoLFIpKSxSPWUpfWZ1bmN0aW9uIFQoKXtnfHwoZz0hMCxkKFUpKX1mdW5jdGlvbiBPKGUpe3JldHVybiBudWxsPT09XyYmKGUucHJpb3JpdHk9PT1zLlByZWZldGNoUHJpb3JpdHkuSW50ZW50P3A8MTI6cDw0KX1mdW5jdGlvbiBqKGUpe3JldHVybiBwKyssZS50aGVuKGU9Pm51bGw9PT1lPyhNKCksbnVsbCk6KGUuY2xvc2VkLnRoZW4oTSksZS52YWx1ZSkpfWZ1bmN0aW9uIE0oKXtwLS0sVCgpfWZ1bmN0aW9uIEEoZSl7ZS5pc0NhbmNlbGVkfHwtMSE9PWUuX2hlYXBJbmRleHx8KEIoaCxlKSxUKCkpfWZ1bmN0aW9uIFUoKXtnPSExO2xldCBlPURhdGUubm93KCksdD1LKGgpO2Zvcig7bnVsbCE9PXQmJk8odCk7KXt0LmNhY2hlVmVyc2lvbj0oMCxvLmdldEN1cnJlbnRDYWNoZVZlcnNpb24pKCk7bGV0IHI9ZnVuY3Rpb24oZSx0KXtsZXQgcj10LmtleSxuPSgwLG8ucmVhZE9yQ3JlYXRlUm91dGVDYWNoZUVudHJ5KShlLHQsciksYT1mdW5jdGlvbihlLHQscil7c3dpdGNoKHIuc3RhdHVzKXtjYXNlIG8uRW50cnlTdGF0dXMuRW1wdHk6aigoMCxvLmZldGNoUm91dGVPbkNhY2hlTWlzcykocix0LHQua2V5KSksci5zdGFsZUF0PWUrNmU0LHIuc3RhdHVzPW8uRW50cnlTdGF0dXMuUGVuZGluZztjYXNlIG8uRW50cnlTdGF0dXMuUGVuZGluZzp7bGV0IGU9ci5ibG9ja2VkVGFza3M7cmV0dXJuIG51bGw9PT1lP3IuYmxvY2tlZFRhc2tzPW5ldyBTZXQoW3RdKTplLmFkZCh0KSwxfWNhc2Ugby5FbnRyeVN0YXR1cy5SZWplY3RlZDpicmVhaztjYXNlIG8uRW50cnlTdGF0dXMuRnVsZmlsbGVkOntpZigwIT09dC5waGFzZSlyZXR1cm4gMjtpZighTyh0KSlyZXR1cm4gMDtsZXQgaT1yLnRyZWUsYz10LmZldGNoU3RyYXRlZ3k9PT1zLkZldGNoU3RyYXRlZ3kuUFBSP3IuaXNQUFJFbmFibGVkP3MuRmV0Y2hTdHJhdGVneS5QUFI6cy5GZXRjaFN0cmF0ZWd5LkxvYWRpbmdCb3VuZGFyeTp0LmZldGNoU3RyYXRlZ3k7c3dpdGNoKGMpe2Nhc2Ugcy5GZXRjaFN0cmF0ZWd5LlBQUjp7dmFyIG4sYSx1O2lmKEYobj1lLGE9dCx1PXIsKDAsby5yZWFkT3JDcmVhdGVTZWdtZW50Q2FjaGVFbnRyeSkobixzLkZldGNoU3RyYXRlZ3kuUFBSLHUsdS5tZXRhZGF0YSksYS5rZXksdS5tZXRhZGF0YSksMD09PWZ1bmN0aW9uIGUodCxyLG4sYSxsKXtsZXQgdT0oMCxvLnJlYWRPckNyZWF0ZVNlZ21lbnRDYWNoZUVudHJ5KSh0LHIuZmV0Y2hTdHJhdGVneSxuLGwpO0YodCxyLG4sdSxyLmtleSxsKTtsZXQgaT1hWzFdLGM9bC5zbG90cztpZihudWxsIT09Yylmb3IobGV0IGEgaW4gYyl7aWYoIU8ocikpcmV0dXJuIDA7bGV0IGw9Y1thXSx1PWwuc2VnbWVudCxzPWlbYV0sZj1zPy5bMF07aWYoMD09PSh2b2lkIDAhPT1mJiZrKG4sdSxmKT9lKHQscixuLHMsbCk6ZnVuY3Rpb24gZSh0LHIsbixhKXtpZihhLmhhc1J1bnRpbWVQcmVmZXRjaClyZXR1cm4gbnVsbD09PXIuc3Bhd25lZFJ1bnRpbWVQcmVmZXRjaGVzP3Iuc3Bhd25lZFJ1bnRpbWVQcmVmZXRjaGVzPW5ldyBTZXQoW2EucmVxdWVzdEtleV0pOnIuc3Bhd25lZFJ1bnRpbWVQcmVmZXRjaGVzLmFkZChhLnJlcXVlc3RLZXkpLDI7bGV0IGw9KDAsby5yZWFkT3JDcmVhdGVTZWdtZW50Q2FjaGVFbnRyeSkodCxyLmZldGNoU3RyYXRlZ3ksbixhKTtpZihGKHQscixuLGwsci5rZXksYSksbnVsbCE9PWEuc2xvdHMpe2lmKCFPKHIpKXJldHVybiAwO2ZvcihsZXQgbCBpbiBhLnNsb3RzKWlmKDA9PT1lKHQscixuLGEuc2xvdHNbbF0pKXJldHVybiAwfXJldHVybiAyfSh0LHIsbixsKSkpcmV0dXJuIDB9cmV0dXJuIDJ9KGUsdCxyLHQudHJlZUF0VGltZU9mUHJlZmV0Y2gsaSkpcmV0dXJuIDA7bGV0IGw9dC5zcGF3bmVkUnVudGltZVByZWZldGNoZXM7aWYobnVsbCE9PWwpe2xldCBuPW5ldyBNYXA7TihlLHQscixuLHMuRmV0Y2hTdHJhdGVneS5QUFJSdW50aW1lKTtsZXQgYT1mdW5jdGlvbiBlKHQscixuLGEsbCx1KXtpZihsLmhhcyhhLnJlcXVlc3RLZXkpKXJldHVybiB3KHQscixuLGEsITEsdSxzLkZldGNoU3RyYXRlZ3kuUFBSUnVudGltZSk7bGV0IG89e30saT1hLnNsb3RzO2lmKG51bGwhPT1pKWZvcihsZXQgYSBpbiBpKXtsZXQgYz1pW2FdO29bYV09ZSh0LHIsbixjLGwsdSl9cmV0dXJuW2Euc2VnbWVudCxvLG51bGwsbnVsbF19KGUsdCxyLGksbCxuKTtuLnNpemU+MCYmaigoMCxvLmZldGNoU2VnbWVudFByZWZldGNoZXNVc2luZ0R5bmFtaWNSZXF1ZXN0KSh0LHIscy5GZXRjaFN0cmF0ZWd5LlBQUlJ1bnRpbWUsYSxuKSl9cmV0dXJuIDJ9Y2FzZSBzLkZldGNoU3RyYXRlZ3kuRnVsbDpjYXNlIHMuRmV0Y2hTdHJhdGVneS5QUFJSdW50aW1lOmNhc2Ugcy5GZXRjaFN0cmF0ZWd5LkxvYWRpbmdCb3VuZGFyeTp7bGV0IG49bmV3IE1hcDtOKGUsdCxyLG4sYyk7bGV0IGE9ZnVuY3Rpb24gZSh0LHIsbixhLHUsaSxjKXtsZXQgZj1hWzFdLGQ9dS5zbG90cyxoPXt9O2lmKG51bGwhPT1kKWZvcihsZXQgYSBpbiBkKXtsZXQgdT1kW2FdLHA9dS5zZWdtZW50LHk9ZlthXSxnPXk/LlswXTtpZih2b2lkIDAhPT1nJiZrKG4scCxnKSl7bGV0IGw9ZSh0LHIsbix5LHUsaSxjKTtoW2FdPWx9ZWxzZSBzd2l0Y2goYyl7Y2FzZSBzLkZldGNoU3RyYXRlZ3kuTG9hZGluZ0JvdW5kYXJ5OntsZXQgZT11Lmhhc0xvYWRpbmdCb3VuZGFyeSE9PWwuSGFzTG9hZGluZ0JvdW5kYXJ5LlN1YnRyZWVIYXNOb0xvYWRpbmdCb3VuZGFyeT9mdW5jdGlvbiBlKHQscixuLGEsdSxpKXtsZXQgYz1udWxsPT09dT8iaW5zaWRlLXNoYXJlZC1sYXlvdXQiOm51bGwsZj0oMCxvLnJlYWRPckNyZWF0ZVNlZ21lbnRDYWNoZUVudHJ5KSh0LHIuZmV0Y2hTdHJhdGVneSxuLGEpO3N3aXRjaChmLnN0YXR1cyl7Y2FzZSBvLkVudHJ5U3RhdHVzLkVtcHR5Omkuc2V0KGEucmVxdWVzdEtleSwoMCxvLnVwZ3JhZGVUb1BlbmRpbmdTZWdtZW50KShmLHMuRmV0Y2hTdHJhdGVneS5Mb2FkaW5nQm91bmRhcnkpKSwicmVmZXRjaCIhPT11JiYoYz11PSJyZWZldGNoIik7YnJlYWs7Y2FzZSBvLkVudHJ5U3RhdHVzLkZ1bGZpbGxlZDppZihhLmhhc0xvYWRpbmdCb3VuZGFyeT09PWwuSGFzTG9hZGluZ0JvdW5kYXJ5LlNlZ21lbnRIYXNMb2FkaW5nQm91bmRhcnkpcmV0dXJuKDAsby5jb252ZXJ0Um91dGVUcmVlVG9GbGlnaHRSb3V0ZXJTdGF0ZSkoYSk7Y2FzZSBvLkVudHJ5U3RhdHVzLlBlbmRpbmc6Y2FzZSBvLkVudHJ5U3RhdHVzLlJlamVjdGVkOn1sZXQgZD17fTtpZihudWxsIT09YS5zbG90cylmb3IobGV0IGwgaW4gYS5zbG90cyl7bGV0IG89YS5zbG90c1tsXTtkW2xdPWUodCxyLG4sbyx1LGkpfXJldHVyblthLnNlZ21lbnQsZCxudWxsLGMsYS5pc1Jvb3RMYXlvdXRdfSh0LHIsbix1LG51bGwsaSk6KDAsby5jb252ZXJ0Um91dGVUcmVlVG9GbGlnaHRSb3V0ZXJTdGF0ZSkodSk7aFthXT1lO2JyZWFrfWNhc2Ugcy5GZXRjaFN0cmF0ZWd5LlBQUlJ1bnRpbWU6e2xldCBlPXcodCxyLG4sdSwhMSxpLGMpO2hbYV09ZTticmVha31jYXNlIHMuRmV0Y2hTdHJhdGVneS5GdWxsOntsZXQgZT13KHQscixuLHUsITEsaSxjKTtoW2FdPWV9fX1yZXR1cm5bdS5zZWdtZW50LGgsbnVsbCxudWxsLHUuaXNSb290TGF5b3V0XX0oZSx0LHIsdC50cmVlQXRUaW1lT2ZQcmVmZXRjaCxpLG4sYyk7cmV0dXJuIG4uc2l6ZT4wJiZqKCgwLG8uZmV0Y2hTZWdtZW50UHJlZmV0Y2hlc1VzaW5nRHluYW1pY1JlcXVlc3QpKHQscixjLGEsbikpLDJ9fX19cmV0dXJuIDJ9KGUsdCxuKTtpZigwIT09YSYmIiIhPT1yLnNlYXJjaCl7bGV0IG49bmV3IFVSTChyLnBhdGhuYW1lLGxvY2F0aW9uLm9yaWdpbiksYT0oMCxjLmNyZWF0ZUNhY2hlS2V5KShuLmhyZWYsci5uZXh0VXJsKSxsPSgwLG8ucmVhZE9yQ3JlYXRlUm91dGVDYWNoZUVudHJ5KShlLHQsYSk7c3dpdGNoKGwuc3RhdHVzKXtjYXNlIG8uRW50cnlTdGF0dXMuRW1wdHk6Qyh0KSYmKGwuc3RhdHVzPW8uRW50cnlTdGF0dXMuUGVuZGluZyxqKCgwLG8uZmV0Y2hSb3V0ZU9uQ2FjaGVNaXNzKShsLHQsYSkpKTtjYXNlIG8uRW50cnlTdGF0dXMuUGVuZGluZzpjYXNlIG8uRW50cnlTdGF0dXMuRnVsZmlsbGVkOmNhc2Ugby5FbnRyeVN0YXR1cy5SZWplY3RlZDp9fXJldHVybiBhfShlLHQpLG49dC5oYXNCYWNrZ3JvdW5kV29yaztzd2l0Y2godC5oYXNCYWNrZ3JvdW5kV29yaz0hMSx0LnNwYXduZWRSdW50aW1lUHJlZmV0Y2hlcz1udWxsLHIpe2Nhc2UgMDpyZXR1cm47Y2FzZSAxOlYoaCksdD1LKGgpO2NvbnRpbnVlO2Nhc2UgMjoxPT09dC5waGFzZT8odC5waGFzZT0wLHEoaCx0KSk6bj8odC5wcmlvcml0eT1zLlByZWZldGNoUHJpb3JpdHkuQmFja2dyb3VuZCxxKGgsdCkpOlYoaCksdD1LKGgpO2NvbnRpbnVlfX19ZnVuY3Rpb24gQyhlKXtyZXR1cm4gZS5wcmlvcml0eT09PXMuUHJlZmV0Y2hQcmlvcml0eS5CYWNrZ3JvdW5kfHwoZS5oYXNCYWNrZ3JvdW5kV29yaz0hMCwhMSl9ZnVuY3Rpb24gTihlLHQscixuLGEpe3coZSx0LHIsci5tZXRhZGF0YSwhMSxuLGE9PT1zLkZldGNoU3RyYXRlZ3kuTG9hZGluZ0JvdW5kYXJ5P3MuRmV0Y2hTdHJhdGVneS5GdWxsOmEpfWZ1bmN0aW9uIHcoZSx0LHIsbixhLGwsdSl7bGV0IGk9KDAsby5yZWFkT3JDcmVhdGVTZWdtZW50Q2FjaGVFbnRyeSkoZSx1LHIsbiksYz1udWxsO3N3aXRjaChpLnN0YXR1cyl7Y2FzZSBvLkVudHJ5U3RhdHVzLkVtcHR5OmM9KDAsby51cGdyYWRlVG9QZW5kaW5nU2VnbWVudCkoaSx1KTticmVhaztjYXNlIG8uRW50cnlTdGF0dXMuRnVsZmlsbGVkOmkuaXNQYXJ0aWFsJiYoMCxvLmNhbk5ld0ZldGNoU3RyYXRlZ3lQcm92aWRlTW9yZUNvbnRlbnQpKGkuZmV0Y2hTdHJhdGVneSx1KSYmKGM9TChlLHIsbix1KSk7YnJlYWs7Y2FzZSBvLkVudHJ5U3RhdHVzLlBlbmRpbmc6Y2FzZSBvLkVudHJ5U3RhdHVzLlJlamVjdGVkOigwLG8uY2FuTmV3RmV0Y2hTdHJhdGVneVByb3ZpZGVNb3JlQ29udGVudCkoaS5mZXRjaFN0cmF0ZWd5LHUpJiYoYz1MKGUscixuLHUpKX1sZXQgcz17fTtpZihudWxsIT09bi5zbG90cylmb3IobGV0IG8gaW4gbi5zbG90cyl7bGV0IGk9bi5zbG90c1tvXTtzW29dPXcoZSx0LHIsaSxhfHxudWxsIT09YyxsLHUpfW51bGwhPT1jJiZsLnNldChuLnJlcXVlc3RLZXksYyk7bGV0IGY9YXx8bnVsbD09PWM/bnVsbDoicmVmZXRjaCI7cmV0dXJuW24uc2VnbWVudCxzLG51bGwsZixuLmlzUm9vdExheW91dF19ZnVuY3Rpb24gRihlLHQscixuLGEsbCl7c3dpdGNoKG4uc3RhdHVzKXtjYXNlIG8uRW50cnlTdGF0dXMuRW1wdHk6aigoMCxvLmZldGNoU2VnbWVudE9uQ2FjaGVNaXNzKShyLCgwLG8udXBncmFkZVRvUGVuZGluZ1NlZ21lbnQpKG4scy5GZXRjaFN0cmF0ZWd5LlBQUiksYSxsKSk7YnJlYWs7Y2FzZSBvLkVudHJ5U3RhdHVzLlBlbmRpbmc6c3dpdGNoKG4uZmV0Y2hTdHJhdGVneSl7Y2FzZSBzLkZldGNoU3RyYXRlZ3kuUFBSOmNhc2Ugcy5GZXRjaFN0cmF0ZWd5LlBQUlJ1bnRpbWU6Y2FzZSBzLkZldGNoU3RyYXRlZ3kuRnVsbDpicmVhaztjYXNlIHMuRmV0Y2hTdHJhdGVneS5Mb2FkaW5nQm91bmRhcnk6Qyh0KSYmSShlLHIsYSxsKTticmVhaztkZWZhdWx0Om4uZmV0Y2hTdHJhdGVneX1icmVhaztjYXNlIG8uRW50cnlTdGF0dXMuUmVqZWN0ZWQ6c3dpdGNoKG4uZmV0Y2hTdHJhdGVneSl7Y2FzZSBzLkZldGNoU3RyYXRlZ3kuUFBSOmNhc2Ugcy5GZXRjaFN0cmF0ZWd5LlBQUlJ1bnRpbWU6Y2FzZSBzLkZldGNoU3RyYXRlZ3kuRnVsbDpicmVhaztjYXNlIHMuRmV0Y2hTdHJhdGVneS5Mb2FkaW5nQm91bmRhcnk6SShlLHIsYSxsKTticmVhaztkZWZhdWx0Om4uZmV0Y2hTdHJhdGVneX1jYXNlIG8uRW50cnlTdGF0dXMuRnVsZmlsbGVkOn19ZnVuY3Rpb24gSShlLHQscixuKXtsZXQgYT0oMCxvLnJlYWRPckNyZWF0ZVJldmFsaWRhdGluZ1NlZ21lbnRFbnRyeSkoZSxzLkZldGNoU3RyYXRlZ3kuUFBSLHQsbik7c3dpdGNoKGEuc3RhdHVzKXtjYXNlIG8uRW50cnlTdGF0dXMuRW1wdHk6eChqKCgwLG8uZmV0Y2hTZWdtZW50T25DYWNoZU1pc3MpKHQsKDAsby51cGdyYWRlVG9QZW5kaW5nU2VnbWVudCkoYSxzLkZldGNoU3RyYXRlZ3kuUFBSKSxyLG4pKSwoMCxpLmdldFNlZ21lbnRWYXJ5UGF0aEZvclJlcXVlc3QpKHMuRmV0Y2hTdHJhdGVneS5QUFIsbikpO2Nhc2Ugby5FbnRyeVN0YXR1cy5QZW5kaW5nOmNhc2Ugby5FbnRyeVN0YXR1cy5GdWxmaWxsZWQ6Y2FzZSBvLkVudHJ5U3RhdHVzLlJlamVjdGVkOn19ZnVuY3Rpb24gTChlLHQscixuKXtsZXQgYT0oMCxvLnJlYWRPckNyZWF0ZVJldmFsaWRhdGluZ1NlZ21lbnRFbnRyeSkoZSxuLHQscik7aWYoYS5zdGF0dXM9PT1vLkVudHJ5U3RhdHVzLkVtcHR5KXtsZXQgZT0oMCxvLnVwZ3JhZGVUb1BlbmRpbmdTZWdtZW50KShhLG4pO3JldHVybiB4KCgwLG8ud2FpdEZvclNlZ21lbnRDYWNoZUVudHJ5KShlKSwoMCxpLmdldFNlZ21lbnRWYXJ5UGF0aEZvclJlcXVlc3QpKG4scikpLGV9aWYoKDAsby5jYW5OZXdGZXRjaFN0cmF0ZWd5UHJvdmlkZU1vcmVDb250ZW50KShhLmZldGNoU3RyYXRlZ3ksbikpe2xldCBlPSgwLG8ub3ZlcndyaXRlUmV2YWxpZGF0aW5nU2VnbWVudENhY2hlRW50cnkpKG4sdCxyKSxhPSgwLG8udXBncmFkZVRvUGVuZGluZ1NlZ21lbnQpKGUsbik7cmV0dXJuIHgoKDAsby53YWl0Rm9yU2VnbWVudENhY2hlRW50cnkpKGEpLCgwLGkuZ2V0U2VnbWVudFZhcnlQYXRoRm9yUmVxdWVzdCkobixyKSksYX1zd2l0Y2goYS5zdGF0dXMpe2Nhc2Ugby5FbnRyeVN0YXR1cy5QZW5kaW5nOmNhc2Ugby5FbnRyeVN0YXR1cy5GdWxmaWxsZWQ6Y2FzZSBvLkVudHJ5U3RhdHVzLlJlamVjdGVkOmRlZmF1bHQ6cmV0dXJuIG51bGx9fWxldCBEPSgpPT57fTtmdW5jdGlvbiB4KGUsdCl7ZS50aGVuKGU9PntudWxsIT09ZSYmKDAsby51cHNlcnRTZWdtZW50RW50cnkpKERhdGUubm93KCksdCxlKX0sRCl9ZnVuY3Rpb24gayhlLHQscil7cmV0dXJuIHI9PT1mLlBBR0VfU0VHTUVOVF9LRVk/dD09PSgwLGYuYWRkU2VhcmNoUGFyYW1zSWZQYWdlU2VnbWVudCkoZi5QQUdFX1NFR01FTlRfS0VZLE9iamVjdC5mcm9tRW50cmllcyhuZXcgVVJMU2VhcmNoUGFyYW1zKGUucmVuZGVyZWRTZWFyY2gpKSk6KDAsdS5tYXRjaFNlZ21lbnQpKHIsdCl9ZnVuY3Rpb24gSChlLHQpe2xldCByPXQucHJpb3JpdHktZS5wcmlvcml0eTtpZigwIT09cilyZXR1cm4gcjtsZXQgbj10LnBoYXNlLWUucGhhc2U7cmV0dXJuIDAhPT1uP246dC5zb3J0SWQtZS5zb3J0SWR9ZnVuY3Rpb24gQihlLHQpe2xldCByPWUubGVuZ3RoO2UucHVzaCh0KSx0Ll9oZWFwSW5kZXg9cixHKGUsdCxyKX1mdW5jdGlvbiBLKGUpe3JldHVybiAwPT09ZS5sZW5ndGg/bnVsbDplWzBdfWZ1bmN0aW9uIFYoZSl7aWYoMD09PWUubGVuZ3RoKXJldHVybiBudWxsO2xldCB0PWVbMF07dC5faGVhcEluZGV4PS0xO2xldCByPWUucG9wKCk7cmV0dXJuIHIhPT10JiYoZVswXT1yLHIuX2hlYXBJbmRleD0wLHooZSxyLDApKSx0fWZ1bmN0aW9uIHEoZSx0KXtsZXQgcj10Ll9oZWFwSW5kZXg7LTEhPT1yJiYoMD09PXI/eihlLHQsMCk6SChlW3ItMT4+PjFdLHQpPjA/RyhlLHQscik6eihlLHQscikpfWZ1bmN0aW9uIEcoZSx0LHIpe2xldCBuPXI7Zm9yKDtuPjA7KXtsZXQgcj1uLTE+Pj4xLGE9ZVtyXTtpZighKEgoYSx0KT4wKSlyZXR1cm47ZVtyXT10LHQuX2hlYXBJbmRleD1yLGVbbl09YSxhLl9oZWFwSW5kZXg9bixuPXJ9fWZ1bmN0aW9uIHooZSx0LHIpe2xldCBuPXIsYT1lLmxlbmd0aCxsPWE+Pj4xO2Zvcig7bjxsOyl7bGV0IHI9KG4rMSkqMi0xLGw9ZVtyXSx1PXIrMSxvPWVbdV07aWYoMD5IKGwsdCkpdTxhJiYwPkgobyxsKT8oZVtuXT1vLG8uX2hlYXBJbmRleD1uLGVbdV09dCx0Ll9oZWFwSW5kZXg9dSxuPXUpOihlW25dPWwsbC5faGVhcEluZGV4PW4sZVtyXT10LHQuX2hlYXBJbmRleD1yLG49cik7ZWxzZXtpZighKHU8YSYmMD5IKG8sdCkpKXJldHVybjtlW25dPW8sby5faGVhcEluZGV4PW4sZVt1XT10LHQuX2hlYXBJbmRleD11LG49dX19fSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDk4MDYzLChlLHQscik9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbihlKXtsZXQgdD1lLmluZGV4T2YoIiMiKSxyPWUuaW5kZXhPZigiPyIpLG49cj4tMSYmKHQ8MHx8cjx0KTtyZXR1cm4gbnx8dD4tMT97cGF0aG5hbWU6ZS5zdWJzdHJpbmcoMCxuP3I6dCkscXVlcnk6bj9lLnN1YnN0cmluZyhyLHQ+LTE/dDp2b2lkIDApOiIiLGhhc2g6dD4tMT9lLnNsaWNlKHQpOiIifTp7cGF0aG5hbWU6ZSxxdWVyeToiIixoYXNoOiIifX1PYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInBhcnNlUGF0aCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSl9LDkwNTgsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImFkZFBhdGhQcmVmaXgiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCBuPWUucig5ODA2Myk7ZnVuY3Rpb24gYShlLHQpe2lmKCFlLnN0YXJ0c1dpdGgoIi8iKXx8IXQpcmV0dXJuIGU7bGV0e3BhdGhuYW1lOnIscXVlcnk6YSxoYXNoOmx9PSgwLG4ucGFyc2VQYXRoKShlKTtyZXR1cm5gJHt0fSR7cn0ke2F9JHtsfWB9fSw5ODk0NywoZSx0LHIpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSl7cmV0dXJuIGUucmVwbGFjZSgvXC8kLywiIil8fCIvIn1PYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInJlbW92ZVRyYWlsaW5nU2xhc2giLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBufX0pfSw2MTgwNywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwibm9ybWFsaXplUGF0aFRyYWlsaW5nU2xhc2giLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBsfX0pO2xldCBuPWUucig5ODk0NyksYT1lLnIoOTgwNjMpLGw9ZT0+e2lmKCFlLnN0YXJ0c1dpdGgoIi8iKSlyZXR1cm4gZTtsZXR7cGF0aG5hbWU6dCxxdWVyeTpyLGhhc2g6bH09KDAsYS5wYXJzZVBhdGgpKGUpO3JldHVybmAkeygwLG4ucmVtb3ZlVHJhaWxpbmdTbGFzaCkodCl9JHtyfSR7bH1gfTsoImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwxNDg1NywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiYWRkQmFzZVBhdGgiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBsfX0pO2xldCBuPWUucig5MDU4KSxhPWUucig2MTgwNyk7ZnVuY3Rpb24gbChlLHQpe3JldHVybigwLGEubm9ybWFsaXplUGF0aFRyYWlsaW5nU2xhc2gpKCgwLG4uYWRkUGF0aFByZWZpeCkoZSwiIikpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDI5MzYyLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtjcmVhdGVQcmVmZXRjaFVSTDpmdW5jdGlvbigpe3JldHVybiBpfSxpc0V4dGVybmFsVVJMOmZ1bmN0aW9uKCl7cmV0dXJuIG99fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IGw9ZS5yKDM0NjUpLHU9ZS5yKDE0ODU3KTtmdW5jdGlvbiBvKGUpe3JldHVybiBlLm9yaWdpbiE9PXdpbmRvdy5sb2NhdGlvbi5vcmlnaW59ZnVuY3Rpb24gaShlKXtsZXQgdDtpZigoMCxsLmlzQm90KSh3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudCkpcmV0dXJuIG51bGw7dHJ5e3Q9bmV3IFVSTCgoMCx1LmFkZEJhc2VQYXRoKShlKSx3aW5kb3cubG9jYXRpb24uaHJlZil9Y2F0Y2godCl7dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGBDYW5ub3QgcHJlZmV0Y2ggJyR7ZX0nIGJlY2F1c2UgaXQgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBhIFVSTC5gKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTIzNCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KX1yZXR1cm4gbyh0KT9udWxsOnR9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sOTgyODMsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e0lETEVfTElOS19TVEFUVVM6ZnVuY3Rpb24oKXtyZXR1cm4gZn0sUEVORElOR19MSU5LX1NUQVRVUzpmdW5jdGlvbigpe3JldHVybiBzfSxtb3VudEZvcm1JbnN0YW5jZTpmdW5jdGlvbigpe3JldHVybiB2fSxtb3VudExpbmtJbnN0YW5jZTpmdW5jdGlvbigpe3JldHVybiBQfSxvbkxpbmtWaXNpYmlsaXR5Q2hhbmdlZDpmdW5jdGlvbigpe3JldHVybiBtfSxvbk5hdmlnYXRpb25JbnRlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gYn0scGluZ1Zpc2libGVMaW5rczpmdW5jdGlvbigpe3JldHVybiBUfSxzZXRMaW5rRm9yQ3VycmVudE5hdmlnYXRpb246ZnVuY3Rpb24oKXtyZXR1cm4gZH0sdW5tb3VudExpbmtGb3JDdXJyZW50TmF2aWdhdGlvbjpmdW5jdGlvbigpe3JldHVybiBofSx1bm1vdW50UHJlZmV0Y2hhYmxlSW5zdGFuY2U6ZnVuY3Rpb24oKXtyZXR1cm4gRX19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbD1lLnIoNTI0MTMpLHU9ZS5yKDE2MzE2KSxvPWUucig3NTc4MCksaT1lLnIoNzUyMDEpLGM9bnVsbCxzPXtwZW5kaW5nOiEwfSxmPXtwZW5kaW5nOiExfTtmdW5jdGlvbiBkKGUpeygwLGkuc3RhcnRUcmFuc2l0aW9uKSgoKT0+e2M/LnNldE9wdGltaXN0aWNMaW5rU3RhdHVzKGYpLGU/LnNldE9wdGltaXN0aWNMaW5rU3RhdHVzKHMpLGM9ZX0pfWZ1bmN0aW9uIGgoZSl7Yz09PWUmJihjPW51bGwpfWxldCBwPSJmdW5jdGlvbiI9PXR5cGVvZiBXZWFrTWFwP25ldyBXZWFrTWFwOm5ldyBNYXAseT1uZXcgU2V0LGc9ImZ1bmN0aW9uIj09dHlwZW9mIEludGVyc2VjdGlvbk9ic2VydmVyP25ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihmdW5jdGlvbihlKXtmb3IobGV0IHQgb2YgZSl7bGV0IGU9dC5pbnRlcnNlY3Rpb25SYXRpbz4wO20odC50YXJnZXQsZSl9fSx7cm9vdE1hcmdpbjoiMjAwcHgifSk6bnVsbDtmdW5jdGlvbiBSKGUsdCl7dm9pZCAwIT09cC5nZXQoZSkmJkUoZSkscC5zZXQoZSx0KSxudWxsIT09ZyYmZy5vYnNlcnZlKGUpfWZ1bmN0aW9uIF8odCl7aWYoISgidSI+dHlwZW9mIHdpbmRvdykpcmV0dXJuIG51bGw7e2xldHtjcmVhdGVQcmVmZXRjaFVSTDpyfT1lLnIoMjkzNjIpO3RyeXtyZXR1cm4gcih0KX1jYXRjaHtyZXR1cm4oImZ1bmN0aW9uIj09dHlwZW9mIHJlcG9ydEVycm9yP3JlcG9ydEVycm9yOmNvbnNvbGUuZXJyb3IpKGBDYW5ub3QgcHJlZmV0Y2ggJyR7dH0nIGJlY2F1c2UgaXQgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBhIFVSTC5gKSxudWxsfX19ZnVuY3Rpb24gUChlLHQscixuLGEsbCl7aWYoYSl7bGV0IGE9Xyh0KTtpZihudWxsIT09YSl7bGV0IHQ9e3JvdXRlcjpyLGZldGNoU3RyYXRlZ3k6bixpc1Zpc2libGU6ITEscHJlZmV0Y2hUYXNrOm51bGwscHJlZmV0Y2hIcmVmOmEuaHJlZixzZXRPcHRpbWlzdGljTGlua1N0YXR1czpsfTtyZXR1cm4gUihlLHQpLHR9fXJldHVybntyb3V0ZXI6cixmZXRjaFN0cmF0ZWd5Om4saXNWaXNpYmxlOiExLHByZWZldGNoVGFzazpudWxsLHByZWZldGNoSHJlZjpudWxsLHNldE9wdGltaXN0aWNMaW5rU3RhdHVzOmx9fWZ1bmN0aW9uIHYoZSx0LHIsbil7bGV0IGE9Xyh0KTtudWxsPT09YXx8UihlLHtyb3V0ZXI6cixmZXRjaFN0cmF0ZWd5Om4saXNWaXNpYmxlOiExLHByZWZldGNoVGFzazpudWxsLHByZWZldGNoSHJlZjphLmhyZWYsc2V0T3B0aW1pc3RpY0xpbmtTdGF0dXM6bnVsbH0pfWZ1bmN0aW9uIEUoZSl7bGV0IHQ9cC5nZXQoZSk7aWYodm9pZCAwIT09dCl7cC5kZWxldGUoZSkseS5kZWxldGUodCk7bGV0IHI9dC5wcmVmZXRjaFRhc2s7bnVsbCE9PXImJigwLG8uY2FuY2VsUHJlZmV0Y2hUYXNrKShyKX1udWxsIT09ZyYmZy51bm9ic2VydmUoZSl9ZnVuY3Rpb24gbShlLHQpe2xldCByPXAuZ2V0KGUpO3ZvaWQgMCE9PXImJihyLmlzVmlzaWJsZT10LHQ/eS5hZGQocik6eS5kZWxldGUociksUyhyLGwuUHJlZmV0Y2hQcmlvcml0eS5EZWZhdWx0KSl9ZnVuY3Rpb24gYihlLHQpe2xldCByPXAuZ2V0KGUpO3ZvaWQgMCE9PXImJnZvaWQgMCE9PXImJlMocixsLlByZWZldGNoUHJpb3JpdHkuSW50ZW50KX1mdW5jdGlvbiBTKHQscil7aWYoInUiPnR5cGVvZiB3aW5kb3cpe2xldCBuPXQucHJlZmV0Y2hUYXNrO2lmKCF0LmlzVmlzaWJsZSl7bnVsbCE9PW4mJigwLG8uY2FuY2VsUHJlZmV0Y2hUYXNrKShuKTtyZXR1cm59bGV0e2dldEN1cnJlbnRBcHBSb3V0ZXJTdGF0ZTphfT1lLnIoODQzOTUpLGw9YSgpO2lmKG51bGwhPT1sKXtsZXQgZT1sLnRyZWU7aWYobnVsbD09PW4pe2xldCBuPWwubmV4dFVybCxhPSgwLHUuY3JlYXRlQ2FjaGVLZXkpKHQucHJlZmV0Y2hIcmVmLG4pO3QucHJlZmV0Y2hUYXNrPSgwLG8uc2NoZWR1bGVQcmVmZXRjaFRhc2spKGEsZSx0LmZldGNoU3RyYXRlZ3kscixudWxsKX1lbHNlKDAsby5yZXNjaGVkdWxlUHJlZmV0Y2hUYXNrKShuLGUsdC5mZXRjaFN0cmF0ZWd5LHIpfX19ZnVuY3Rpb24gVChlLHQpe2ZvcihsZXQgciBvZiB5KXtsZXQgbj1yLnByZWZldGNoVGFzaztpZihudWxsIT09biYmISgwLG8uaXNQcmVmZXRjaFRhc2tEaXJ0eSkobixlLHQpKWNvbnRpbnVlO251bGwhPT1uJiYoMCxvLmNhbmNlbFByZWZldGNoVGFzaykobik7bGV0IGE9KDAsdS5jcmVhdGVDYWNoZUtleSkoci5wcmVmZXRjaEhyZWYsZSk7ci5wcmVmZXRjaFRhc2s9KDAsby5zY2hlZHVsZVByZWZldGNoVGFzaykoYSx0LHIuZmV0Y2hTdHJhdGVneSxsLlByZWZldGNoUHJpb3JpdHkuRGVmYXVsdCxudWxsKX19KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNDA0NjEsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBuKCl7bGV0IGUsdCxyPW5ldyBQcm9taXNlKChyLG4pPT57ZT1yLHQ9bn0pO3JldHVybntyZXNvbHZlOmUscmVqZWN0OnQscHJvbWlzZTpyfX1PYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImNyZWF0ZVByb21pc2VXaXRoUmVzb2x2ZXJzIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KX0sNDQ2NjcsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG4sYT17RW50cnlTdGF0dXM6ZnVuY3Rpb24oKXtyZXR1cm4gU30sY2FuTmV3RmV0Y2hTdHJhdGVneVByb3ZpZGVNb3JlQ29udGVudDpmdW5jdGlvbigpe3JldHVybiBlYX0sY29udmVydFJvdXRlVHJlZVRvRmxpZ2h0Um91dGVyU3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24gZSh0KXtsZXQgcj17fTtpZihudWxsIT09dC5zbG90cylmb3IobGV0IG4gaW4gdC5zbG90cylyW25dPWUodC5zbG90c1tuXSk7cmV0dXJuW3Quc2VnbWVudCxyLG51bGwsbnVsbCx0LmlzUm9vdExheW91dF19fSxjcmVhdGVEZXRhY2hlZFNlZ21lbnRDYWNoZUVudHJ5OmZ1bmN0aW9uKCl7cmV0dXJuIFZ9LGZldGNoUm91dGVPbkNhY2hlTWlzczpmdW5jdGlvbigpe3JldHVybiAkfSxmZXRjaFNlZ21lbnRPbkNhY2hlTWlzczpmdW5jdGlvbigpe3JldHVybiBRfSxmZXRjaFNlZ21lbnRQcmVmZXRjaGVzVXNpbmdEeW5hbWljUmVxdWVzdDpmdW5jdGlvbigpe3JldHVybiBKfSxnZXRDdXJyZW50Q2FjaGVWZXJzaW9uOmZ1bmN0aW9uKCl7cmV0dXJuIFV9LGdldFN0YWxlVGltZU1zOmZ1bmN0aW9uKCl7cmV0dXJuIGJ9LG92ZXJ3cml0ZVJldmFsaWRhdGluZ1NlZ21lbnRDYWNoZUVudHJ5OmZ1bmN0aW9uKCl7cmV0dXJuIEJ9LHBpbmdJbnZhbGlkYXRpb25MaXN0ZW5lcnM6ZnVuY3Rpb24oKXtyZXR1cm4gTn0scmVhZE9yQ3JlYXRlUmV2YWxpZGF0aW5nU2VnbWVudEVudHJ5OmZ1bmN0aW9uKCl7cmV0dXJuIEh9LHJlYWRPckNyZWF0ZVJvdXRlQ2FjaGVFbnRyeTpmdW5jdGlvbigpe3JldHVybiBMfSxyZWFkT3JDcmVhdGVTZWdtZW50Q2FjaGVFbnRyeTpmdW5jdGlvbigpe3JldHVybiBrfSxyZWFkUm91dGVDYWNoZUVudHJ5OmZ1bmN0aW9uKCl7cmV0dXJuIHd9LHJlYWRTZWdtZW50Q2FjaGVFbnRyeTpmdW5jdGlvbigpe3JldHVybiBGfSxyZXF1ZXN0T3B0aW1pc3RpY1JvdXRlQ2FjaGVFbnRyeTpmdW5jdGlvbigpe3JldHVybiBEfSxyZXZhbGlkYXRlRW50aXJlQ2FjaGU6ZnVuY3Rpb24oKXtyZXR1cm4gQ30sdXBncmFkZVRvUGVuZGluZ1NlZ21lbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gcX0sdXBzZXJ0U2VnbWVudEVudHJ5OmZ1bmN0aW9uKCl7cmV0dXJuIEt9LHdhaXRGb3JTZWdtZW50Q2FjaGVFbnRyeTpmdW5jdGlvbigpe3JldHVybiBJfX07Zm9yKHZhciBsIGluIGEpT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsbCx7ZW51bWVyYWJsZTohMCxnZXQ6YVtsXX0pO2xldCB1PWUucigyNDQ1Nyksbz1lLnIoMzQ2NDEpLGk9ZS5yKDExMDYpLGM9ZS5yKDc1NzgwKSxzPWUucig2NTg5MyksZj1lLnIoNjE3MDYpLGQ9ZS5yKDg1NTk0KSxoPWUucigxNjMxNikscD1lLnIoODgwNjIpLHk9ZS5yKDc1NzQ1KSxnPWUucig0NjIxOSksUj1lLnIoNjc2MjgpLF89ZS5yKDU0MDExKSxQPWUucig5ODI4Myksdj1lLnIoMjc0NTQpLEU9ZS5yKDUyNDEzKSxtPWUucig0MDQ2MSk7ZnVuY3Rpb24gYihlKXtyZXR1cm4gMWUzKk1hdGgubWF4KGUsMzApfXZhciBTPSgobj17fSlbbi5FbXB0eT0wXT0iRW1wdHkiLG5bbi5QZW5kaW5nPTFdPSJQZW5kaW5nIixuW24uRnVsZmlsbGVkPTJdPSJGdWxmaWxsZWQiLG5bbi5SZWplY3RlZD0zXT0iUmVqZWN0ZWQiLG4pO2xldCBUPVsiIix7fSxudWxsLCJtZXRhZGF0YS1vbmx5Il0sTz0oMCx5LmNyZWF0ZUNhY2hlTWFwKSgpLGo9KDAseS5jcmVhdGVDYWNoZU1hcCkoKSxNPW51bGwsQT0wO2Z1bmN0aW9uIFUoKXtyZXR1cm4gQX1mdW5jdGlvbiBDKGUsdCl7QSsrLCgwLGMuc3RhcnRSZXZhbGlkYXRpb25Db29sZG93bikoKSwoMCxQLnBpbmdWaXNpYmxlTGlua3MpKGUsdCksTihlLHQpfWZ1bmN0aW9uIE4oZSx0KXtpZihudWxsIT09TSl7bGV0IHI9TTtmb3IobGV0IG4gb2YoTT1udWxsLHIpKSgwLGMuaXNQcmVmZXRjaFRhc2tEaXJ0eSkobixlLHQpJiZmdW5jdGlvbihlKXtsZXQgdD1lLm9uSW52YWxpZGF0ZTtpZihudWxsIT09dCl7ZS5vbkludmFsaWRhdGU9bnVsbDt0cnl7dCgpfWNhdGNoKGUpeyJmdW5jdGlvbiI9PXR5cGVvZiByZXBvcnRFcnJvcj9yZXBvcnRFcnJvcihlKTpjb25zb2xlLmVycm9yKGUpfX19KG4pfX1mdW5jdGlvbiB3KGUsdCl7bGV0IHI9KDAscy5nZXRSb3V0ZVZhcnlQYXRoKSh0LnBhdGhuYW1lLHQuc2VhcmNoLHQubmV4dFVybCk7cmV0dXJuKDAseS5nZXRGcm9tQ2FjaGVNYXApKGUsQSxPLHIsITEpfWZ1bmN0aW9uIEYoZSx0KXtyZXR1cm4oMCx5LmdldEZyb21DYWNoZU1hcCkoZSxBLGosdCwhMSl9ZnVuY3Rpb24gSShlKXtsZXQgdD1lLnByb21pc2U7cmV0dXJuIG51bGw9PT10JiYodD1lLnByb21pc2U9KDAsbS5jcmVhdGVQcm9taXNlV2l0aFJlc29sdmVycykoKSksdC5wcm9taXNlfWZ1bmN0aW9uIEwoZSx0LHIpe251bGwhPT10Lm9uSW52YWxpZGF0ZSYmKG51bGw9PT1NP009bmV3IFNldChbdF0pOk0uYWRkKHQpKTtsZXQgbj13KGUscik7aWYobnVsbCE9PW4pcmV0dXJuIG47bGV0IGE9e2Nhbm9uaWNhbFVybDpudWxsLHN0YXR1czowLGJsb2NrZWRUYXNrczpudWxsLHRyZWU6bnVsbCxtZXRhZGF0YTpudWxsLGNvdWxkQmVJbnRlcmNlcHRlZDohMCxpc1BQUkVuYWJsZWQ6ITEscmVuZGVyZWRTZWFyY2g6bnVsbCxyZWY6bnVsbCxzaXplOjAsc3RhbGVBdDoxLzAsdmVyc2lvbjpBfSxsPSgwLHMuZ2V0Um91dGVWYXJ5UGF0aCkoci5wYXRobmFtZSxyLnNlYXJjaCxyLm5leHRVcmwpO3JldHVybigwLHkuc2V0SW5DYWNoZU1hcCkoTyxsLGEsITEpLGF9ZnVuY3Rpb24gRChlLHQscil7bGV0IG49dC5zZWFyY2g7aWYoIiI9PT1uKXJldHVybiBudWxsO2xldCBhPW5ldyBVUkwodCk7YS5zZWFyY2g9IiI7bGV0IGw9dyhlLCgwLGguY3JlYXRlQ2FjaGVLZXkpKGEuaHJlZixyKSk7aWYobnVsbD09PWx8fDIhPT1sLnN0YXR1cylyZXR1cm4gbnVsbDtsZXQgdT1uZXcgVVJMKGwuY2Fub25pY2FsVXJsLHQub3JpZ2luKSxvPSIiIT09dS5zZWFyY2g/dS5zZWFyY2g6bixpPSIiIT09bC5yZW5kZXJlZFNlYXJjaD9sLnJlbmRlcmVkU2VhcmNoOm4sYz1uZXcgVVJMKGwuY2Fub25pY2FsVXJsLGxvY2F0aW9uLm9yaWdpbik7cmV0dXJuIGMuc2VhcmNoPW8se2Nhbm9uaWNhbFVybDooMCxkLmNyZWF0ZUhyZWZGcm9tVXJsKShjKSxzdGF0dXM6MixibG9ja2VkVGFza3M6bnVsbCx0cmVlOngobC50cmVlLGkpLG1ldGFkYXRhOngobC5tZXRhZGF0YSxpKSxjb3VsZEJlSW50ZXJjZXB0ZWQ6bC5jb3VsZEJlSW50ZXJjZXB0ZWQsaXNQUFJFbmFibGVkOmwuaXNQUFJFbmFibGVkLHJlbmRlcmVkU2VhcmNoOmkscmVmOm51bGwsc2l6ZTowLHN0YWxlQXQ6bC5zdGFsZUF0LHZlcnNpb246bC52ZXJzaW9ufX1mdW5jdGlvbiB4KGUsdCl7bGV0IHI9bnVsbCxuPWUuc2xvdHM7aWYobnVsbCE9PW4pZm9yKGxldCBlIGluIHI9e30sbil7bGV0IGE9bltlXTtyW2VdPXgoYSx0KX1yZXR1cm4gZS5pc1BhZ2U/e3JlcXVlc3RLZXk6ZS5yZXF1ZXN0S2V5LHNlZ21lbnQ6ZS5zZWdtZW50LHZhcnlQYXRoOigwLHMuY2xvbmVQYWdlVmFyeVBhdGhXaXRoTmV3U2VhcmNoUGFyYW1zKShlLnZhcnlQYXRoLHQpLGlzUGFnZTohMCxzbG90czpyLGlzUm9vdExheW91dDplLmlzUm9vdExheW91dCxoYXNMb2FkaW5nQm91bmRhcnk6ZS5oYXNMb2FkaW5nQm91bmRhcnksaGFzUnVudGltZVByZWZldGNoOmUuaGFzUnVudGltZVByZWZldGNofTp7cmVxdWVzdEtleTplLnJlcXVlc3RLZXksc2VnbWVudDplLnNlZ21lbnQsdmFyeVBhdGg6ZS52YXJ5UGF0aCxpc1BhZ2U6ITEsc2xvdHM6cixpc1Jvb3RMYXlvdXQ6ZS5pc1Jvb3RMYXlvdXQsaGFzTG9hZGluZ0JvdW5kYXJ5OmUuaGFzTG9hZGluZ0JvdW5kYXJ5LGhhc1J1bnRpbWVQcmVmZXRjaDplLmhhc1J1bnRpbWVQcmVmZXRjaH19ZnVuY3Rpb24gayhlLHQscixuKXtsZXQgYT1GKGUsbi52YXJ5UGF0aCk7aWYobnVsbCE9PWEpcmV0dXJuIGE7bGV0IGw9KDAscy5nZXRTZWdtZW50VmFyeVBhdGhGb3JSZXF1ZXN0KSh0LG4pLHU9VihyLnN0YWxlQXQpO3JldHVybigwLHkuc2V0SW5DYWNoZU1hcCkoaixsLHUsITEpLHV9ZnVuY3Rpb24gSChlLHQscixuKXt2YXIgYTtsZXQgbD0oYT1uLnZhcnlQYXRoLCgwLHkuZ2V0RnJvbUNhY2hlTWFwKShlLEEsaixhLCEwKSk7aWYobnVsbCE9PWwpcmV0dXJuIGw7bGV0IHU9KDAscy5nZXRTZWdtZW50VmFyeVBhdGhGb3JSZXF1ZXN0KSh0LG4pLG89VihyLnN0YWxlQXQpO3JldHVybigwLHkuc2V0SW5DYWNoZU1hcCkoaix1LG8sITApLG99ZnVuY3Rpb24gQihlLHQscil7bGV0IG49KDAscy5nZXRTZWdtZW50VmFyeVBhdGhGb3JSZXF1ZXN0KShlLHIpLGE9Vih0LnN0YWxlQXQpO3JldHVybigwLHkuc2V0SW5DYWNoZU1hcCkoaixuLGEsITApLGF9ZnVuY3Rpb24gSyhlLHQscil7aWYoKDAseS5pc1ZhbHVlRXhwaXJlZCkoZSxBLHIpKXJldHVybiBudWxsO2xldCBuPUYoZSx0KTtpZihudWxsIT09bil7dmFyIGE7aWYoci5mZXRjaFN0cmF0ZWd5IT09bi5mZXRjaFN0cmF0ZWd5JiYoYT1uLmZldGNoU3RyYXRlZ3ksIShhPHIuZmV0Y2hTdHJhdGVneSkpfHwhbi5pc1BhcnRpYWwmJnIuaXNQYXJ0aWFsKXJldHVybiByLnN0YXR1cz0zLHIubG9hZGluZz1udWxsLHIucnNjPW51bGwsbnVsbDsoMCx5LmRlbGV0ZUZyb21DYWNoZU1hcCkobil9cmV0dXJuKDAseS5zZXRJbkNhY2hlTWFwKShqLHQsciwhMSkscn1mdW5jdGlvbiBWKGUpe3JldHVybntzdGF0dXM6MCxmZXRjaFN0cmF0ZWd5OkUuRmV0Y2hTdHJhdGVneS5QUFIscnNjOm51bGwsbG9hZGluZzpudWxsLGlzUGFydGlhbDohMCxwcm9taXNlOm51bGwscmVmOm51bGwsc2l6ZTowLHN0YWxlQXQ6ZSx2ZXJzaW9uOjB9fWZ1bmN0aW9uIHEoZSx0KXtyZXR1cm4gZS5zdGF0dXM9MSxlLmZldGNoU3RyYXRlZ3k9dCx0PT09RS5GZXRjaFN0cmF0ZWd5LkZ1bGwmJihlLmlzUGFydGlhbD0hMSksZS52ZXJzaW9uPUEsZX1mdW5jdGlvbiBHKGUpe2xldCB0PWUuYmxvY2tlZFRhc2tzO2lmKG51bGwhPT10KXtmb3IobGV0IGUgb2YgdCkoMCxjLnBpbmdQcmVmZXRjaFRhc2spKGUpO2UuYmxvY2tlZFRhc2tzPW51bGx9fWZ1bmN0aW9uIHooZSx0LHIsbixhLGwsbyxpKXtsZXQgYz17cmVxdWVzdEtleTpnLkhFQURfUkVRVUVTVF9LRVksc2VnbWVudDpnLkhFQURfUkVRVUVTVF9LRVksdmFyeVBhdGg6cixpc1BhZ2U6ITAsc2xvdHM6bnVsbCxpc1Jvb3RMYXlvdXQ6ITEsaGFzTG9hZGluZ0JvdW5kYXJ5OnUuSGFzTG9hZGluZ0JvdW5kYXJ5LlN1YnRyZWVIYXNOb0xvYWRpbmdCb3VuZGFyeSxoYXNSdW50aW1lUHJlZmV0Y2g6ITF9O3JldHVybiBlLnN0YXR1cz0yLGUudHJlZT10LGUubWV0YWRhdGE9YyxlLnN0YWxlQXQ9bixlLmNvdWxkQmVJbnRlcmNlcHRlZD1hLGUuY2Fub25pY2FsVXJsPWwsZS5yZW5kZXJlZFNlYXJjaD1vLGUuaXNQUFJFbmFibGVkPWksRyhlKSxlfWZ1bmN0aW9uIFgoZSx0LHIsbixhKXtyZXR1cm4gZS5zdGF0dXM9MixlLnJzYz10LGUubG9hZGluZz1yLGUuc3RhbGVBdD1uLGUuaXNQYXJ0aWFsPWEsbnVsbCE9PWUucHJvbWlzZSYmKGUucHJvbWlzZS5yZXNvbHZlKGUpLGUucHJvbWlzZT1udWxsKSxlfWZ1bmN0aW9uIFcoZSx0KXtlLnN0YXR1cz0zLGUuc3RhbGVBdD10LEcoZSl9ZnVuY3Rpb24gWShlLHQpe2Uuc3RhdHVzPTMsZS5zdGFsZUF0PXQsbnVsbCE9PWUucHJvbWlzZSYmKGUucHJvbWlzZS5yZXNvbHZlKG51bGwpLGUucHJvbWlzZT1udWxsKX1hc3luYyBmdW5jdGlvbiAkKGUsdCxyKXtsZXQgbj1yLnBhdGhuYW1lLGE9ci5zZWFyY2gsbD1yLm5leHRVcmwsYz17W28uUlNDX0hFQURFUl06IjEiLFtvLk5FWFRfUk9VVEVSX1BSRUZFVENIX0hFQURFUl06IjEiLFtvLk5FWFRfUk9VVEVSX1NFR01FTlRfUFJFRkVUQ0hfSEVBREVSXToiL190cmVlIn07bnVsbCE9PWwmJihjW28uTkVYVF9VUkxdPWwpO3RyeXtsZXQgcixoLFA9bmV3IFVSTChuK2EsbG9jYXRpb24ub3JpZ2luKTtpZihyPWF3YWl0IGVyKFAsYyksaD1udWxsIT09ciYmci5yZWRpcmVjdGVkP25ldyBVUkwoci51cmwpOlAsIXJ8fCFyLm9rfHwyMDQ9PT1yLnN0YXR1c3x8IXIuYm9keSlyZXR1cm4gVyhlLERhdGUubm93KCkrMWU0KSxudWxsO2xldCBTPSgwLGQuY3JlYXRlSHJlZkZyb21VcmwpKGgpLFQ9ci5oZWFkZXJzLmdldCgidmFyeSIpLGo9bnVsbCE9PVQmJlQuaW5jbHVkZXMoby5ORVhUX1VSTCksTT0oMCxtLmNyZWF0ZVByb21pc2VXaXRoUmVzb2x2ZXJzKSgpLEE9IjIiPT09ci5oZWFkZXJzLmdldChvLk5FWFRfRElEX1BPU1RQT05FX0hFQURFUik7aWYoQSl7bGV0IHQsbixhPWVuKHIuYm9keSxNLnJlc29sdmUsZnVuY3Rpb24odCl7KDAseS5zZXRTaXplSW5DYWNoZU1hcCkoZSx0KX0pLGw9YXdhaXQgKDAsaS5jcmVhdGVGcm9tTmV4dFJlYWRhYmxlU3RyZWFtKShhLGMpO2lmKGwuYnVpbGRJZCE9PSgwLGYuZ2V0QXBwQnVpbGRJZCkoKSlyZXR1cm4gVyhlLERhdGUubm93KCkrMWU0KSxudWxsO2xldCBvPSgwLHAuZ2V0UmVuZGVyZWRQYXRobmFtZSkociksZD0oMCxwLmdldFJlbmRlcmVkU2VhcmNoKShyKSxoPXttZXRhZGF0YVZhcnlQYXRoOm51bGx9LFI9KHQ9by5zcGxpdCgiLyIpLmZpbHRlcihlPT4iIiE9PWUpLG49Zy5ST09UX1NFR01FTlRfUkVRVUVTVF9LRVksZnVuY3Rpb24gZSh0LHIsbixhLGwsbyxpLGMpe2xldCBmLGQsaD1udWxsLHk9dC5zbG90cztpZihudWxsIT09eSlmb3IobGV0IHQgaW4gZj0hMSxkPSgwLHMuZmluYWxpemVMYXlvdXRWYXJ5UGF0aCkoYSxuKSxoPXt9LHkpe2xldCByLHUsZixkPXlbdF0sUj1kLm5hbWUsXz1kLnBhcmFtVHlwZSxQPWQucGFyYW1LZXk7aWYobnVsbCE9PV8pe2xldCBlPSgwLHAucGFyc2VEeW5hbWljUGFyYW1Gcm9tVVJMUGFydCkoXyxsLG8pLHQ9bnVsbCE9PVA/UDooMCxwLmdldENhY2hlS2V5Rm9yRHluYW1pY1BhcmFtKShlLCIiKTtmPSgwLHMuYXBwZW5kTGF5b3V0VmFyeVBhdGgpKG4sdCksdT1bUix0LF9dLHI9ITB9ZWxzZSBmPW4sdT1SLHI9KDAscC5kb2VzU3RhdGljU2VnbWVudEFwcGVhckluVVJMKShSKTtsZXQgdj1yP28rMTpvLEU9KDAsZy5jcmVhdGVTZWdtZW50UmVxdWVzdEtleVBhcnQpKHUpLG09KDAsZy5hcHBlbmRTZWdtZW50UmVxdWVzdEtleVBhcnQpKGEsdCxFKTtoW3RdPWUoZCx1LGYsbSxsLHYsaSxjKX1lbHNlIGEuZW5kc1dpdGgodi5QQUdFX1NFR01FTlRfS0VZKT8oZj0hMCxkPSgwLHMuZmluYWxpemVQYWdlVmFyeVBhdGgpKGEsaSxuKSxudWxsPT09Yy5tZXRhZGF0YVZhcnlQYXRoJiYoYy5tZXRhZGF0YVZhcnlQYXRoPSgwLHMuZmluYWxpemVNZXRhZGF0YVZhcnlQYXRoKShhLGksbikpKTooZj0hMSxkPSgwLHMuZmluYWxpemVMYXlvdXRWYXJ5UGF0aCkoYSxuKSk7cmV0dXJue3JlcXVlc3RLZXk6YSxzZWdtZW50OnIsdmFyeVBhdGg6ZCxpc1BhZ2U6ZixzbG90czpoLGlzUm9vdExheW91dDp0LmlzUm9vdExheW91dCxoYXNMb2FkaW5nQm91bmRhcnk6dS5IYXNMb2FkaW5nQm91bmRhcnkuU2VnbWVudEhhc0xvYWRpbmdCb3VuZGFyeSxoYXNSdW50aW1lUHJlZmV0Y2g6dC5oYXNSdW50aW1lUHJlZmV0Y2h9fShsLnRyZWUsbixudWxsLGcuUk9PVF9TRUdNRU5UX1JFUVVFU1RfS0VZLHQsMCxkLGgpKSxfPWgubWV0YWRhdGFWYXJ5UGF0aDtpZihudWxsPT09XylyZXR1cm4gVyhlLERhdGUubm93KCkrMWU0KSxudWxsO2xldCBQPWIobC5zdGFsZVRpbWUpO3ooZSxSLF8sRGF0ZS5ub3coKStQLGosUyxkLEEpfWVsc2V7bGV0IG49ZW4oci5ib2R5LE0ucmVzb2x2ZSxmdW5jdGlvbih0KXsoMCx5LnNldFNpemVJbkNhY2hlTWFwKShlLHQpfSksYT1hd2FpdCAoMCxpLmNyZWF0ZUZyb21OZXh0UmVhZGFibGVTdHJlYW0pKG4sYyk7aWYoYS5iIT09KDAsZi5nZXRBcHBCdWlsZElkKSgpKXJldHVybiBXKGUsRGF0ZS5ub3coKSsxZTQpLG51bGw7IWZ1bmN0aW9uKGUsdCxyLG4sYSxsLGksYyxmKXtsZXQgZD0oMCxwLmdldFJlbmRlcmVkU2VhcmNoKShuKSxoPSgwLFIubm9ybWFsaXplRmxpZ2h0RGF0YSkoYS5mKTtpZigic3RyaW5nIj09dHlwZW9mIGh8fDEhPT1oLmxlbmd0aClyZXR1cm4gVyhsLGUrMWU0KTtsZXQgeT1oWzBdO2lmKCF5LmlzUm9vdFJlbmRlcilyZXR1cm4gVyhsLGUrMWU0KTtsZXQgUD15LnRyZWUsRT0ibnVtYmVyIj09dHlwZW9mIGEucnA/LlsxXT9hLnJwWzFdOnBhcnNlSW50KG4uaGVhZGVycy5nZXQoby5ORVhUX1JPVVRFUl9TVEFMRV9USU1FX0hFQURFUik/PyIiLDEwKSxtPWlzTmFOKEUpP18uU1RBVElDX1NUQUxFVElNRV9NUzpiKEUpLFM9IjEiPT09bi5oZWFkZXJzLmdldChvLk5FWFRfRElEX1BPU1RQT05FX0hFQURFUiksVD17bWV0YWRhdGFWYXJ5UGF0aDpudWxsfSxPPWZ1bmN0aW9uIGUodCxyLG4sYSxsKXtsZXQgbyxpLGMsZixkPXRbMF07aWYoQXJyYXkuaXNBcnJheShkKSl7Yz0hMTtsZXQgZT1kWzFdO2k9KDAscy5hcHBlbmRMYXlvdXRWYXJ5UGF0aCkobixlKSxmPSgwLHMuZmluYWxpemVMYXlvdXRWYXJ5UGF0aCkocixpKSxvPWR9ZWxzZSBpPW4sci5lbmRzV2l0aCh2LlBBR0VfU0VHTUVOVF9LRVkpPyhjPSEwLG89di5QQUdFX1NFR01FTlRfS0VZLGY9KDAscy5maW5hbGl6ZVBhZ2VWYXJ5UGF0aCkocixhLGkpLG51bGw9PT1sLm1ldGFkYXRhVmFyeVBhdGgmJihsLm1ldGFkYXRhVmFyeVBhdGg9KDAscy5maW5hbGl6ZU1ldGFkYXRhVmFyeVBhdGgpKHIsYSxpKSkpOihjPSExLG89ZCxmPSgwLHMuZmluYWxpemVMYXlvdXRWYXJ5UGF0aCkocixpKSk7bGV0IGg9bnVsbCxwPXRbMV07Zm9yKGxldCB0IGluIHApe2xldCBuPXBbdF0sdT1uWzBdLG89KDAsZy5jcmVhdGVTZWdtZW50UmVxdWVzdEtleVBhcnQpKHUpLGM9ZShuLCgwLGcuYXBwZW5kU2VnbWVudFJlcXVlc3RLZXlQYXJ0KShyLHQsbyksaSxhLGwpO251bGw9PT1oP2g9e1t0XTpjfTpoW3RdPWN9cmV0dXJue3JlcXVlc3RLZXk6cixzZWdtZW50Om8sdmFyeVBhdGg6Zixpc1BhZ2U6YyxzbG90czpoLGlzUm9vdExheW91dDohMD09PXRbNF0saGFzTG9hZGluZ0JvdW5kYXJ5OnZvaWQgMCE9PXRbNV0/dFs1XTp1Lkhhc0xvYWRpbmdCb3VuZGFyeS5TdWJ0cmVlSGFzTm9Mb2FkaW5nQm91bmRhcnksaGFzUnVudGltZVByZWZldGNoOiExfX0oUCxnLlJPT1RfU0VHTUVOVF9SRVFVRVNUX0tFWSxudWxsLGQsVCksaj1ULm1ldGFkYXRhVmFyeVBhdGg7aWYobnVsbD09PWopcmV0dXJuIFcobCxlKzFlNCk7bGV0IE09eihsLE8saixlK20saSxjLGQsZik7ZWUoZSx0LHIsbixhLFMsTSxudWxsKX0oRGF0ZS5ub3coKSx0LEUuRmV0Y2hTdHJhdGVneS5Mb2FkaW5nQm91bmRhcnkscixhLGUsaixTLEEpfWlmKCFqKXtsZXQgdD0oMCxzLmdldEZ1bGZpbGxlZFJvdXRlVmFyeVBhdGgpKG4sYSxsLGopOygwLHkuc2V0SW5DYWNoZU1hcCkoTyx0LGUsITEpfXJldHVybnt2YWx1ZTpudWxsLGNsb3NlZDpNLnByb21pc2V9fWNhdGNoKHQpe3JldHVybiBXKGUsRGF0ZS5ub3coKSsxZTQpLG51bGx9fWFzeW5jIGZ1bmN0aW9uIFEoZSx0LHIsbil7bGV0IGE9bmV3IFVSTChlLmNhbm9uaWNhbFVybCxsb2NhdGlvbi5vcmlnaW4pLGw9ci5uZXh0VXJsLHU9bi5yZXF1ZXN0S2V5LGM9dT09PWcuUk9PVF9TRUdNRU5UX1JFUVVFU1RfS0VZPyIvX2luZGV4Ijp1LHM9e1tvLlJTQ19IRUFERVJdOiIxIixbby5ORVhUX1JPVVRFUl9QUkVGRVRDSF9IRUFERVJdOiIxIixbby5ORVhUX1JPVVRFUl9TRUdNRU5UX1BSRUZFVENIX0hFQURFUl06Y307bnVsbCE9PWwmJihzW28uTkVYVF9VUkxdPWwpO3RyeXtsZXQgcj1hd2FpdCBlcihhLHMpO2lmKCFyfHwhci5va3x8MjA0PT09ci5zdGF0dXN8fCIyIiE9PXIuaGVhZGVycy5nZXQoby5ORVhUX0RJRF9QT1NUUE9ORV9IRUFERVIpfHwhci5ib2R5KXJldHVybiBZKHQsRGF0ZS5ub3coKSsxZTQpLG51bGw7bGV0IG49KDAsbS5jcmVhdGVQcm9taXNlV2l0aFJlc29sdmVycykoKSxsPWVuKHIuYm9keSxuLnJlc29sdmUsZnVuY3Rpb24oZSl7KDAseS5zZXRTaXplSW5DYWNoZU1hcCkodCxlKX0pLHU9YXdhaXQgKDAsaS5jcmVhdGVGcm9tTmV4dFJlYWRhYmxlU3RyZWFtKShsLHMpO2lmKHUuYnVpbGRJZCE9PSgwLGYuZ2V0QXBwQnVpbGRJZCkoKSlyZXR1cm4gWSh0LERhdGUubm93KCkrMWU0KSxudWxsO3JldHVybnt2YWx1ZTpYKHQsdS5yc2MsdS5sb2FkaW5nLGUuc3RhbGVBdCx1LmlzUGFydGlhbCksY2xvc2VkOm4ucHJvbWlzZX19Y2F0Y2goZSl7cmV0dXJuIFkodCxEYXRlLm5vdygpKzFlNCksbnVsbH19YXN5bmMgZnVuY3Rpb24gSihlLHQscixuLGEpe2xldCBsPWUua2V5LHU9bmV3IFVSTCh0LmNhbm9uaWNhbFVybCxsb2NhdGlvbi5vcmlnaW4pLGM9bC5uZXh0VXJsOzE9PT1hLnNpemUmJmEuaGFzKHQubWV0YWRhdGEucmVxdWVzdEtleSkmJihuPVQpO2xldCBzPXtbby5SU0NfSEVBREVSXToiMSIsW28uTkVYVF9ST1VURVJfU1RBVEVfVFJFRV9IRUFERVJdOigwLFIucHJlcGFyZUZsaWdodFJvdXRlclN0YXRlRm9yUmVxdWVzdCkobil9O3N3aXRjaChudWxsIT09YyYmKHNbby5ORVhUX1VSTF09Yykscil7Y2FzZSBFLkZldGNoU3RyYXRlZ3kuRnVsbDpicmVhaztjYXNlIEUuRmV0Y2hTdHJhdGVneS5QUFJSdW50aW1lOnNbby5ORVhUX1JPVVRFUl9QUkVGRVRDSF9IRUFERVJdPSIyIjticmVhaztjYXNlIEUuRmV0Y2hTdHJhdGVneS5Mb2FkaW5nQm91bmRhcnk6c1tvLk5FWFRfUk9VVEVSX1BSRUZFVENIX0hFQURFUl09IjEifXRyeXtsZXQgbj1hd2FpdCBlcih1LHMpO2lmKCFufHwhbi5va3x8IW4uYm9keXx8KDAscC5nZXRSZW5kZXJlZFNlYXJjaCkobikhPT10LnJlbmRlcmVkU2VhcmNoKXJldHVybiBaKGEsRGF0ZS5ub3coKSsxZTQpLG51bGw7bGV0IGw9KDAsbS5jcmVhdGVQcm9taXNlV2l0aFJlc29sdmVycykoKSxvPW51bGwsYz1lbihuLmJvZHksbC5yZXNvbHZlLGZ1bmN0aW9uKGUpe2lmKG51bGw9PT1vKXJldHVybjtsZXQgdD1lL28ubGVuZ3RoO2ZvcihsZXQgZSBvZiBvKSgwLHkuc2V0U2l6ZUluQ2FjaGVNYXApKGUsdCl9KSxmPWF3YWl0ICgwLGkuY3JlYXRlRnJvbU5leHRSZWFkYWJsZVN0cmVhbSkoYyxzKSxkPXI9PT1FLkZldGNoU3RyYXRlZ3kuUFBSUnVudGltZSYmZi5ycD8uWzBdPT09ITA7cmV0dXJuIG89ZWUoRGF0ZS5ub3coKSxlLHIsbixmLGQsdCxhKSx7dmFsdWU6bnVsbCxjbG9zZWQ6bC5wcm9taXNlfX1jYXRjaChlKXtyZXR1cm4gWihhLERhdGUubm93KCkrMWU0KSxudWxsfX1mdW5jdGlvbiBaKGUsdCl7bGV0IHI9W107Zm9yKGxldCBuIG9mIGUudmFsdWVzKCkpMT09PW4uc3RhdHVzP1kobix0KToyPT09bi5zdGF0dXMmJnIucHVzaChuKTtyZXR1cm4gcn1mdW5jdGlvbiBlZShlLHQscixuLGEsbCx1LGkpe2lmKGEuYiE9PSgwLGYuZ2V0QXBwQnVpbGRJZCkoKSlyZXR1cm4gbnVsbCE9PWkmJlooaSxlKzFlNCksbnVsbDtsZXQgYz0oMCxSLm5vcm1hbGl6ZUZsaWdodERhdGEpKGEuZik7aWYoInN0cmluZyI9PXR5cGVvZiBjKXJldHVybiBudWxsO2xldCBzPSJudW1iZXIiPT10eXBlb2YgYS5ycD8uWzFdP2EucnBbMV06cGFyc2VJbnQobi5oZWFkZXJzLmdldChvLk5FWFRfUk9VVEVSX1NUQUxFX1RJTUVfSEVBREVSKT8/IiIsMTApLGQ9ZSsoaXNOYU4ocyk/Xy5TVEFUSUNfU1RBTEVUSU1FX01TOmIocykpO2ZvcihsZXQgbiBvZiBjKXtsZXQgYT1uLnNlZWREYXRhO2lmKG51bGwhPT1hKXtsZXQgbz1uLnNlZ21lbnRQYXRoLGM9dS50cmVlO2ZvcihsZXQgdD0wO3Q8by5sZW5ndGg7dCs9Mil7bGV0IHI9b1t0XTtpZihjPy5zbG90cz8uW3JdPT09dm9pZCAwKXJldHVybiBudWxsIT09aSYmWihpLGUrMWU0KSxudWxsO2M9Yy5zbG90c1tyXX0hZnVuY3Rpb24gZSh0LHIsbixhLGwsdSxvLGksYyl7bGV0IHM9b1swXTtldCh0LG4sYSxzLG9bMl0sbnVsbD09PXN8fGksdSxsLGMpO2xldCBmPWwuc2xvdHM7aWYobnVsbCE9PWYpe2xldCBsPW9bMV07Zm9yKGxldCBvIGluIGYpe2xldCBzPWZbb10sZD1sW29dO251bGwhPWQmJmUodCxyLG4sYSxzLHUsZCxpLGMpfX19KGUsdCxyLHUsYyxkLGEsbCxpKX1sZXQgbz1uLmhlYWQ7bnVsbCE9PW8mJmV0KGUscix1LG8sbnVsbCxuLmlzSGVhZFBhcnRpYWwsZCx1Lm1ldGFkYXRhLGkpfXJldHVybiBudWxsIT09aT9aKGksZSsxZTQpOm51bGx9ZnVuY3Rpb24gZXQoZSx0LHIsbixhLGwsdSxvLGkpe2xldCBjPW51bGwhPT1pP2kuZ2V0KG8ucmVxdWVzdEtleSk6dm9pZCAwO2lmKHZvaWQgMCE9PWMpWChjLG4sYSx1LGwpO2Vsc2V7bGV0IGk9ayhlLHQscixvKTtpZigwPT09aS5zdGF0dXMpWChxKGksdCksbixhLHUsbCk7ZWxzZXtsZXQgcj1YKHEoVih1KSx0KSxuLGEsdSxsKTtLKGUsKDAscy5nZXRTZWdtZW50VmFyeVBhdGhGb3JSZXF1ZXN0KSh0LG8pLHIpfX19YXN5bmMgZnVuY3Rpb24gZXIoZSx0KXtsZXQgcj1hd2FpdCAoMCxpLmNyZWF0ZUZldGNoKShlLHQsImxvdyIsITEpO2lmKCFyLm9rKXJldHVybiBudWxsO3tsZXQgZT1yLmhlYWRlcnMuZ2V0KCJjb250ZW50LXR5cGUiKTtpZighKGUmJmUuc3RhcnRzV2l0aChvLlJTQ19DT05URU5UX1RZUEVfSEVBREVSKSkpcmV0dXJuIG51bGx9cmV0dXJuIHJ9ZnVuY3Rpb24gZW4oZSx0LHIpe2xldCBuPTAsYT1lLmdldFJlYWRlcigpO3JldHVybiBuZXcgUmVhZGFibGVTdHJlYW0oe2FzeW5jIHB1bGwoZSl7Zm9yKDs7KXtsZXR7ZG9uZTpsLHZhbHVlOnV9PWF3YWl0IGEucmVhZCgpO2lmKCFsKXtlLmVucXVldWUodSkscihuKz11LmJ5dGVMZW5ndGgpO2NvbnRpbnVlfXQoKTtyZXR1cm59fX0pfWZ1bmN0aW9uIGVhKGUsdCl7cmV0dXJuIGU8dH0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw2NTQ2MywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17Y29udmVydFNlcnZlclBhdGNoVG9GdWxsVHJlZTpmdW5jdGlvbigpe3JldHVybiB2fSxuYXZpZ2F0ZTpmdW5jdGlvbigpe3JldHVybiBkfSxuYXZpZ2F0ZVRvU2VlZGVkUm91dGU6ZnVuY3Rpb24oKXtyZXR1cm4gaH19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbD1lLnIoMTEwNiksdT1lLnIoMTg5MzkpLG89ZS5yKDg1NTk0KSxpPWUucig0NDY2NyksYz1lLnIoMTYzMTYpLHM9ZS5yKDI3NDU0KSxmPWUucig1MjQxMyk7ZnVuY3Rpb24gZChlLHQscixuLGEsbCx1LG8pe2xldCBzPURhdGUubm93KCksZD1lLmhyZWYsaD1kPT09dC5ocmVmLHk9KDAsYy5jcmVhdGVDYWNoZUtleSkoZCxhKSxfPSgwLGkucmVhZFJvdXRlQ2FjaGVFbnRyeSkocyx5KTtpZihudWxsIT09XyYmXy5zdGF0dXM9PT1pLkVudHJ5U3RhdHVzLkZ1bGZpbGxlZCl7bGV0IG89ZyhzLF8sXy50cmVlKSxpPW8uZmxpZ2h0Um91dGVyU3RhdGUsYz1vLnNlZWREYXRhLGY9UihzLF8pLGQ9Zi5yc2MseT1mLmlzUGFydGlhbCxQPV8uY2Fub25pY2FsVXJsK2UuaGFzaDtyZXR1cm4gcChzLGUsdCxhLGgscixuLGksYyxkLHksUCxfLnJlbmRlcmVkU2VhcmNoLGwsdSl9aWYobnVsbD09PV98fF8uc3RhdHVzIT09aS5FbnRyeVN0YXR1cy5SZWplY3RlZCl7bGV0IG89KDAsaS5yZXF1ZXN0T3B0aW1pc3RpY1JvdXRlQ2FjaGVFbnRyeSkocyxlLGEpO2lmKG51bGwhPT1vKXtsZXQgaT1nKHMsbyxvLnRyZWUpLGM9aS5mbGlnaHRSb3V0ZXJTdGF0ZSxmPWkuc2VlZERhdGEsZD1SKHMsbykseT1kLnJzYyxfPWQuaXNQYXJ0aWFsLFA9by5jYW5vbmljYWxVcmwrZS5oYXNoO3JldHVybiBwKHMsZSx0LGEsaCxyLG4sYyxmLHksXyxQLG8ucmVuZGVyZWRTZWFyY2gsbCx1KX19bGV0IHY9by5jb2xsZWN0ZWREZWJ1Z0luZm8/P1tdO3JldHVybiB2b2lkIDA9PT1vLmNvbGxlY3RlZERlYnVnSW5mbyYmKHY9by5jb2xsZWN0ZWREZWJ1Z0luZm89W10pLHt0YWc6Zi5OYXZpZ2F0aW9uUmVzdWx0VGFnLkFzeW5jLGRhdGE6UChzLGUsdCxhLHIsbixsLHUsdil9fWZ1bmN0aW9uIGgoZSx0LHIsbixhLGwsbyxpLGMscyl7bGV0IGQ9e3Njcm9sbGFibGVTZWdtZW50czpudWxsLHNlcGFyYXRlUmVmcmVzaFVybHM6bnVsbH0saD10LmhyZWY9PT1hLmhyZWYscD0oMCx1LnN0YXJ0UFBSTmF2aWdhdGlvbikoZSxhLGwsbyxuLnRyZWUsaSxuLmRhdGEsbi5oZWFkLG51bGwsbnVsbCwhMSxoLGQpO3JldHVybiBudWxsIT09cD8oKDAsdS5zcGF3bkR5bmFtaWNSZXF1ZXN0cykocCx0LGMsaSxkKSx5KHAscixuLnJlbmRlcmVkU2VhcmNoLGQuc2Nyb2xsYWJsZVNlZ21lbnRzLHMsdC5oYXNoKSk6e3RhZzpmLk5hdmlnYXRpb25SZXN1bHRUYWcuTVBBLGRhdGE6cn19ZnVuY3Rpb24gcChlLHQscixuLGEsbCxvLGksYyxzLGQsaCxwLGcsUil7bGV0IF89e3Njcm9sbGFibGVTZWdtZW50czpudWxsLHNlcGFyYXRlUmVmcmVzaFVybHM6bnVsbH0sUD0oMCx1LnN0YXJ0UFBSTmF2aWdhdGlvbikoZSxyLGwsbyxpLGcsbnVsbCxudWxsLGMscyxkLGEsXyk7cmV0dXJuIG51bGwhPT1QPygoMCx1LnNwYXduRHluYW1pY1JlcXVlc3RzKShQLHQsbixnLF8pLHkoUCxoLHAsXy5zY3JvbGxhYmxlU2VnbWVudHMsUix0Lmhhc2gpKTp7dGFnOmYuTmF2aWdhdGlvblJlc3VsdFRhZy5NUEEsZGF0YTpofX1mdW5jdGlvbiB5KGUsdCxyLG4sYSxsKXtyZXR1cm57dGFnOmYuTmF2aWdhdGlvblJlc3VsdFRhZy5TdWNjZXNzLGRhdGE6e2ZsaWdodFJvdXRlclN0YXRlOmUucm91dGUsY2FjaGVOb2RlOmUubm9kZSxjYW5vbmljYWxVcmw6dCxyZW5kZXJlZFNlYXJjaDpyLHNjcm9sbGFibGVTZWdtZW50czpuLHNob3VsZFNjcm9sbDphLGhhc2g6bH19fWZ1bmN0aW9uIGcoZSx0LHIpe2xldCBuPXt9LGE9e30sbD1yLnNsb3RzO2lmKG51bGwhPT1sKWZvcihsZXQgciBpbiBsKXtsZXQgdT1nKGUsdCxsW3JdKTtuW3JdPXUuZmxpZ2h0Um91dGVyU3RhdGUsYVtyXT11LnNlZWREYXRhfWxldCB1PW51bGwsbz1udWxsLGM9ITAsZj0oMCxpLnJlYWRTZWdtZW50Q2FjaGVFbnRyeSkoZSxyLnZhcnlQYXRoKTtpZihudWxsIT09Zilzd2l0Y2goZi5zdGF0dXMpe2Nhc2UgaS5FbnRyeVN0YXR1cy5GdWxmaWxsZWQ6dT1mLnJzYyxvPWYubG9hZGluZyxjPWYuaXNQYXJ0aWFsO2JyZWFrO2Nhc2UgaS5FbnRyeVN0YXR1cy5QZW5kaW5nOntsZXQgZT0oMCxpLndhaXRGb3JTZWdtZW50Q2FjaGVFbnRyeSkoZik7dT1lLnRoZW4oZT0+bnVsbCE9PWU/ZS5yc2M6bnVsbCksbz1lLnRoZW4oZT0+bnVsbCE9PWU/ZS5sb2FkaW5nOm51bGwpLGM9Zi5pc1BhcnRpYWx9Y2FzZSBpLkVudHJ5U3RhdHVzLkVtcHR5OmNhc2UgaS5FbnRyeVN0YXR1cy5SZWplY3RlZDp9cmV0dXJue2ZsaWdodFJvdXRlclN0YXRlOlsoMCxzLmFkZFNlYXJjaFBhcmFtc0lmUGFnZVNlZ21lbnQpKHIuc2VnbWVudCxPYmplY3QuZnJvbUVudHJpZXMobmV3IFVSTFNlYXJjaFBhcmFtcyh0LnJlbmRlcmVkU2VhcmNoKSkpLG4sbnVsbCxudWxsLHIuaXNSb290TGF5b3V0XSxzZWVkRGF0YTpbdSxhLG8sYywhMV19fWZ1bmN0aW9uIFIoZSx0KXtsZXQgcj1udWxsLG49ITAsYT0oMCxpLnJlYWRTZWdtZW50Q2FjaGVFbnRyeSkoZSx0Lm1ldGFkYXRhLnZhcnlQYXRoKTtpZihudWxsIT09YSlzd2l0Y2goYS5zdGF0dXMpe2Nhc2UgaS5FbnRyeVN0YXR1cy5GdWxmaWxsZWQ6cj1hLnJzYyxuPWEuaXNQYXJ0aWFsO2JyZWFrO2Nhc2UgaS5FbnRyeVN0YXR1cy5QZW5kaW5nOnI9KDAsaS53YWl0Rm9yU2VnbWVudENhY2hlRW50cnkpKGEpLnRoZW4oZT0+bnVsbCE9PWU/ZS5yc2M6bnVsbCksbj1hLmlzUGFydGlhbDtjYXNlIGkuRW50cnlTdGF0dXMuRW1wdHk6Y2FzZSBpLkVudHJ5U3RhdHVzLlJlamVjdGVkOn1yZXR1cm57cnNjOnIsaXNQYXJ0aWFsOm59fWxldCBfPVsiIix7fSxudWxsLCJyZWZldGNoIl07YXN5bmMgZnVuY3Rpb24gUChlLHQscixuLGEsaSxjLHMsZCl7bGV0IHA7c3dpdGNoKGMpe2Nhc2UgdS5GcmVzaG5lc3NQb2xpY3kuRGVmYXVsdDpjYXNlIHUuRnJlc2huZXNzUG9saWN5Lkhpc3RvcnlUcmF2ZXJzYWw6cD1pO2JyZWFrO2Nhc2UgdS5GcmVzaG5lc3NQb2xpY3kuSHlkcmF0aW9uOmNhc2UgdS5GcmVzaG5lc3NQb2xpY3kuUmVmcmVzaEFsbDpjYXNlIHUuRnJlc2huZXNzUG9saWN5LkhNUlJlZnJlc2g6cD1fO2JyZWFrO2RlZmF1bHQ6cD1pfWxldCB5PSgwLGwuZmV0Y2hTZXJ2ZXJSZXNwb25zZSkodCx7ZmxpZ2h0Um91dGVyU3RhdGU6cCxuZXh0VXJsOm59KSxnPWF3YWl0IHk7aWYoInN0cmluZyI9PXR5cGVvZiBnKXJldHVybnt0YWc6Zi5OYXZpZ2F0aW9uUmVzdWx0VGFnLk1QQSxkYXRhOmd9O2xldHtmbGlnaHREYXRhOlIsY2Fub25pY2FsVXJsOlAscmVuZGVyZWRTZWFyY2g6RSxkZWJ1Z0luZm86bX09ZztudWxsIT09bSYmZC5wdXNoKC4uLm0pO2xldCBiPXYoaSxSLEUpO3JldHVybiBoKGUsdCwoMCxvLmNyZWF0ZUhyZWZGcm9tVXJsKShQKSxiLHIsYSxpLGMsbixzKX1mdW5jdGlvbiB2KGUsdCxyKXtsZXQgbj1lLGE9bnVsbCxsPW51bGw7Zm9yKGxldHtzZWdtZW50UGF0aDplLHRyZWU6cixzZWVkRGF0YTp1LGhlYWQ6b31vZiB0KXtsZXQgdD1mdW5jdGlvbiBlKHQscixuLGEsbCx1KXtsZXQgbztpZih1PT09bC5sZW5ndGgpcmV0dXJue3RyZWU6bixkYXRhOmF9O2xldCBpPWxbdV0sYz10WzFdLHM9bnVsbCE9PXI/clsxXTpudWxsLGY9e30sZD17fTtmb3IobGV0IHQgaW4gYyl7bGV0IHI9Y1t0XSxvPW51bGwhPT1zP3NbdF0/P251bGw6bnVsbDtpZih0PT09aSl7bGV0IGk9ZShyLG8sbixhLGwsdSsyKTtmW3RdPWkudHJlZSxkW3RdPWkuZGF0YX1lbHNlIGZbdF09cixkW3RdPW99cmV0dXJuIG89W3RbMF0sZl0sMiBpbiB0JiYob1syXT10WzJdKSwzIGluIHQmJihvWzNdPXRbM10pLDQgaW4gdCYmKG9bNF09dFs0XSkse3RyZWU6byxkYXRhOltudWxsLGQsbnVsbCwhMCwhMV19fShuLGEscix1LGUsMCk7bj10LnRyZWUsYT10LmRhdGEsbD1vfXJldHVybnt0cmVlOm4sZGF0YTphLHJlbmRlcmVkU2VhcmNoOnIsaGVhZDpsfX0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw1NDAxMSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17RFlOQU1JQ19TVEFMRVRJTUVfTVM6ZnVuY3Rpb24oKXtyZXR1cm4gZn0sU1RBVElDX1NUQUxFVElNRV9NUzpmdW5jdGlvbigpe3JldHVybiBkfSxnZW5lcmF0ZVNlZ21lbnRzRnJvbVBhdGNoOmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uIGUodCl7bGV0IHI9W10sW24sYV09dDtpZigwPT09T2JqZWN0LmtleXMoYSkubGVuZ3RoKXJldHVybltbbl1dO2ZvcihsZXRbdCxsXW9mIE9iamVjdC5lbnRyaWVzKGEpKWZvcihsZXQgYSBvZiBlKGwpKSIiPT09bj9yLnB1c2goW3QsLi4uYV0pOnIucHVzaChbbix0LC4uLmFdKTtyZXR1cm4gcn19LGhhbmRsZUV4dGVybmFsVXJsOmZ1bmN0aW9uKCl7cmV0dXJuIGh9LGhhbmRsZU5hdmlnYXRpb25SZXN1bHQ6ZnVuY3Rpb24oKXtyZXR1cm4gcH0sbmF2aWdhdGVSZWR1Y2VyOmZ1bmN0aW9uKCl7cmV0dXJuIHl9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IGw9ZS5yKDg1NTk0KSx1PWUucig2MzI3OCksbz1lLnIoNjU0NjMpLGk9ZS5yKDUyNDEzKSxjPWUucig0NDY2Nykscz1lLnIoMTg5MzkpLGY9MWUzKk51bWJlcigiMCIpLGQ9KDAsYy5nZXRTdGFsZVRpbWVNcykoTnVtYmVyKCIzMDAiKSk7ZnVuY3Rpb24gaChlLHQscixuKXtyZXR1cm4gdC5tcGFOYXZpZ2F0aW9uPSEwLHQuY2Fub25pY2FsVXJsPXIsdC5wZW5kaW5nUHVzaD1uLHQuc2Nyb2xsYWJsZVNlZ21lbnRzPXZvaWQgMCwoMCx1LmhhbmRsZU11dGFibGUpKGUsdCl9ZnVuY3Rpb24gcChlLHQscixuLGEpe3N3aXRjaChhLnRhZyl7Y2FzZSBpLk5hdmlnYXRpb25SZXN1bHRUYWcuTVBBOnJldHVybiBoKHQscixhLmRhdGEsbik7Y2FzZSBpLk5hdmlnYXRpb25SZXN1bHRUYWcuU3VjY2Vzczp7ci5jYWNoZT1hLmRhdGEuY2FjaGVOb2RlLHIucGF0Y2hlZFRyZWU9YS5kYXRhLmZsaWdodFJvdXRlclN0YXRlLHIucmVuZGVyZWRTZWFyY2g9YS5kYXRhLnJlbmRlcmVkU2VhcmNoLHIuY2Fub25pY2FsVXJsPWEuZGF0YS5jYW5vbmljYWxVcmwsci5zY3JvbGxhYmxlU2VnbWVudHM9YS5kYXRhLnNjcm9sbGFibGVTZWdtZW50cz8/dm9pZCAwLHIuc2hvdWxkU2Nyb2xsPWEuZGF0YS5zaG91bGRTY3JvbGwsci5oYXNoRnJhZ21lbnQ9YS5kYXRhLmhhc2g7bGV0IG49bmV3IFVSTCh0LmNhbm9uaWNhbFVybCxlKTtyZXR1cm4gZS5wYXRobmFtZT09PW4ucGF0aG5hbWUmJmUuc2VhcmNoPT09bi5zZWFyY2gmJmUuaGFzaCE9PW4uaGFzaCYmKHIub25seUhhc2hDaGFuZ2U9ITAsci5zaG91bGRTY3JvbGw9YS5kYXRhLnNob3VsZFNjcm9sbCxyLmhhc2hGcmFnbWVudD1lLmhhc2gsci5zY3JvbGxhYmxlU2VnbWVudHM9W10pLCgwLHUuaGFuZGxlTXV0YWJsZSkodCxyKX1jYXNlIGkuTmF2aWdhdGlvblJlc3VsdFRhZy5Bc3luYzpyZXR1cm4gYS5kYXRhLnRoZW4oYT0+cChlLHQscixuLGEpLCgpPT50KTtkZWZhdWx0OnJldHVybiB0fX1mdW5jdGlvbiB5KGUsdCl7bGV0e3VybDpyLGlzRXh0ZXJuYWxVcmw6bixuYXZpZ2F0ZVR5cGU6YSxzaG91bGRTY3JvbGw6dX09dCxpPXt9LGM9KDAsbC5jcmVhdGVIcmVmRnJvbVVybCkociksZj0icHVzaCI9PT1hO2lmKGkucHJlc2VydmVDdXN0b21IaXN0b3J5U3RhdGU9ITEsaS5wZW5kaW5nUHVzaD1mLG4pcmV0dXJuIGgoZSxpLHIudG9TdHJpbmcoKSxmKTtpZihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiX19uZXh0LXBhZ2UtcmVkaXJlY3QiKSlyZXR1cm4gaChlLGksYyxmKTtsZXQgZD1uZXcgVVJMKGUuY2Fub25pY2FsVXJsLGxvY2F0aW9uLm9yaWdpbikseT0oMCxvLm5hdmlnYXRlKShyLGQsZS5jYWNoZSxlLnRyZWUsZS5uZXh0VXJsLHMuRnJlc2huZXNzUG9saWN5LkRlZmF1bHQsdSxpKTtyZXR1cm4gcChyLGUsaSxmLHkpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDYxNzM5LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJoYXNJbnRlcmNlcHRpb25Sb3V0ZUluQ3VycmVudFRyZWUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiBlKFt0LHJdKXtpZihBcnJheS5pc0FycmF5KHQpJiYoImRpKC4uKSguLikiPT09dFsyXXx8ImNpKC4uKSguLikiPT09dFsyXXx8ImRpKC4pIj09PXRbMl18fCJjaSguKSI9PT10WzJdfHwiZGkoLi4pIj09PXRbMl18fCJjaSguLikiPT09dFsyXXx8ImRpKC4uLikiPT09dFsyXXx8ImNpKC4uLikiPT09dFsyXSl8fCJzdHJpbmciPT10eXBlb2YgdCYmKDAsbi5pc0ludGVyY2VwdGlvblJvdXRlQXBwUGF0aCkodCkpcmV0dXJuITA7aWYocil7Zm9yKGxldCB0IGluIHIpaWYoZShyW3RdKSlyZXR1cm4hMH1yZXR1cm4hMX19fSk7bGV0IG49ZS5yKDU0NjgyKTsoImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw3NzczMywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17cmVmcmVzaER5bmFtaWNEYXRhOmZ1bmN0aW9uKCl7cmV0dXJuIGZ9LHJlZnJlc2hSZWR1Y2VyOmZ1bmN0aW9uKCl7cmV0dXJuIHN9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IGw9ZS5yKDU0MDExKSx1PWUucig2NTQ2Myksbz1lLnIoNDQ2NjcpLGk9ZS5yKDYxNzM5KSxjPWUucigxODkzOSk7ZnVuY3Rpb24gcyhlKXtsZXQgdD1lLm5leHRVcmwscj1lLnRyZWU7cmV0dXJuKDAsby5yZXZhbGlkYXRlRW50aXJlQ2FjaGUpKHQsciksZihlLGMuRnJlc2huZXNzUG9saWN5LlJlZnJlc2hBbGwpfWZ1bmN0aW9uIGYoZSx0KXtsZXQgcj1lLm5leHRVcmwsbj0oMCxpLmhhc0ludGVyY2VwdGlvblJvdXRlSW5DdXJyZW50VHJlZSkoZS50cmVlKT9lLnByZXZpb3VzTmV4dFVybHx8cjpudWxsLGE9ZS5jYW5vbmljYWxVcmwsbz1uZXcgVVJMKGEsbG9jYXRpb24ub3JpZ2luKSxjPWUudHJlZSxzPXt0cmVlOmUudHJlZSxyZW5kZXJlZFNlYXJjaDplLnJlbmRlcmVkU2VhcmNoLGRhdGE6bnVsbCxoZWFkOm51bGx9LGY9RGF0ZS5ub3coKSxkPSgwLHUubmF2aWdhdGVUb1NlZWRlZFJvdXRlKShmLG8sYSxzLG8sZS5jYWNoZSxjLHQsbiwhMCksaD17fTtyZXR1cm4gaC5wcmVzZXJ2ZUN1c3RvbUhpc3RvcnlTdGF0ZT0hMSwoMCxsLmhhbmRsZU5hdmlnYXRpb25SZXN1bHQpKG8sZSxoLCExLGQpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDYwNTUzLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJzZXJ2ZXJQYXRjaFJlZHVjZXIiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBpfX0pO2xldCBuPWUucig4NTU5NCksYT1lLnIoNTQwMTEpLGw9ZS5yKDY1NDYzKSx1PWUucig3NzczMyksbz1lLnIoMTg5MzkpO2Z1bmN0aW9uIGkoZSx0KXtsZXQgcj17fTtyLnByZXNlcnZlQ3VzdG9tSGlzdG9yeVN0YXRlPSExO2xldCBpPXQubXBhLGM9bmV3IFVSTCh0LnVybCxsb2NhdGlvbi5vcmlnaW4pLHM9dC5zZWVkO2lmKGl8fG51bGw9PT1zKXJldHVybigwLGEuaGFuZGxlRXh0ZXJuYWxVcmwpKGUscixjLmhyZWYsITEpO2xldCBmPW5ldyBVUkwoZS5jYW5vbmljYWxVcmwsbG9jYXRpb24ub3JpZ2luKTtpZih0LnByZXZpb3VzVHJlZSE9PWUudHJlZSlyZXR1cm4oMCx1LnJlZnJlc2hSZWR1Y2VyKShlKTtsZXQgZD0oMCxuLmNyZWF0ZUhyZWZGcm9tVXJsKShjKSxoPXQubmV4dFVybCxwPURhdGUubm93KCkseT0oMCxsLm5hdmlnYXRlVG9TZWVkZWRSb3V0ZSkocCxjLGQscyxmLGUuY2FjaGUsZS50cmVlLG8uRnJlc2huZXNzUG9saWN5LlJlZnJlc2hBbGwsaCwhMCk7cmV0dXJuKDAsYS5oYW5kbGVOYXZpZ2F0aW9uUmVzdWx0KShjLGUsciwhMSx5KX0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwzMjgzOCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwicmVzdG9yZVJlZHVjZXIiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBvfX0pO2xldCBuPWUucig4NTU5NCksYT1lLnIoMTgxNjcpLGw9ZS5yKDE4OTM5KSx1PWUucig1NDAxMSk7ZnVuY3Rpb24gbyhlLHQpe2xldCByLG8saT10Lmhpc3RvcnlTdGF0ZTtpPyhyPWkudHJlZSxvPWkucmVuZGVyZWRTZWFyY2gpOihyPWUudHJlZSxvPWUucmVuZGVyZWRTZWFyY2gpO2xldCBjPW5ldyBVUkwoZS5jYW5vbmljYWxVcmwsbG9jYXRpb24ub3JpZ2luKSxzPXQudXJsLGY9KDAsbi5jcmVhdGVIcmVmRnJvbVVybCkocyksZD0oMCxhLmV4dHJhY3RQYXRoRnJvbUZsaWdodFJvdXRlclN0YXRlKShyKT8/cy5wYXRobmFtZSxoPURhdGUubm93KCkscD17c2Nyb2xsYWJsZVNlZ21lbnRzOm51bGwsc2VwYXJhdGVSZWZyZXNoVXJsczpudWxsfSx5PSgwLGwuc3RhcnRQUFJOYXZpZ2F0aW9uKShoLGMsZS5jYWNoZSxlLnRyZWUscixsLkZyZXNobmVzc1BvbGljeS5IaXN0b3J5VHJhdmVyc2FsLG51bGwsbnVsbCxudWxsLG51bGwsITEsITEscCk7cmV0dXJuIG51bGw9PT15PygwLHUuaGFuZGxlRXh0ZXJuYWxVcmwpKGUse3ByZXNlcnZlQ3VzdG9tSGlzdG9yeVN0YXRlOiEwfSxmLCExKTooKDAsbC5zcGF3bkR5bmFtaWNSZXF1ZXN0cykoeSxzLGQsbC5GcmVzaG5lc3NQb2xpY3kuSGlzdG9yeVRyYXZlcnNhbCxwKSx7Y2Fub25pY2FsVXJsOmYscmVuZGVyZWRTZWFyY2g6byxwdXNoUmVmOntwZW5kaW5nUHVzaDohMSxtcGFOYXZpZ2F0aW9uOiExLHByZXNlcnZlQ3VzdG9tSGlzdG9yeVN0YXRlOiEwfSxmb2N1c0FuZFNjcm9sbFJlZjplLmZvY3VzQW5kU2Nyb2xsUmVmLGNhY2hlOnkubm9kZSx0cmVlOnIsbmV4dFVybDpkLHByZXZpb3VzTmV4dFVybDpudWxsLGRlYnVnSW5mbzpudWxsfSl9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNTk2NjIsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImhtclJlZnJlc2hSZWR1Y2VyIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbH19KTtsZXQgbj1lLnIoNzc3MzMpLGE9ZS5yKDE4OTM5KTtmdW5jdGlvbiBsKGUpe3JldHVybigwLG4ucmVmcmVzaER5bmFtaWNEYXRhKShlLGEuRnJlc2huZXNzUG9saWN5LkhNUlJlZnJlc2gpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDY4OTM0LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJhc3NpZ25Mb2NhdGlvbiIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGF9fSk7bGV0IG49ZS5yKDE0ODU3KTtmdW5jdGlvbiBhKGUsdCl7aWYoZS5zdGFydHNXaXRoKCIuIikpe2xldCByPXQub3JpZ2luK3QucGF0aG5hbWU7cmV0dXJuIG5ldyBVUkwoKHIuZW5kc1dpdGgoIi8iKT9yOnIrIi8iKStlKX1yZXR1cm4gbmV3IFVSTCgoMCxuLmFkZEJhc2VQYXRoKShlKSx0LmhyZWYpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDk5ODk2LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJwYXRoSGFzUHJlZml4Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gYX19KTtsZXQgbj1lLnIoOTgwNjMpO2Z1bmN0aW9uIGEoZSx0KXtpZigic3RyaW5nIiE9dHlwZW9mIGUpcmV0dXJuITE7bGV0e3BhdGhuYW1lOnJ9PSgwLG4ucGFyc2VQYXRoKShlKTtyZXR1cm4gcj09PXR8fHIuc3RhcnRzV2l0aCh0KyIvIil9fSwzODkzMywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiaGFzQmFzZVBhdGgiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCBuPWUucig5OTg5Nik7ZnVuY3Rpb24gYShlKXtyZXR1cm4oMCxuLnBhdGhIYXNQcmVmaXgpKGUsIiIpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDI0MDQyLChlLHQscik9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbihlKXtyZXR1cm4gZX1PYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInJlbW92ZUJhc2VQYXRoIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KSxlLnIoMzg5MzMpLCgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDgwOTI0LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtleHRyYWN0SW5mb0Zyb21TZXJ2ZXJSZWZlcmVuY2VJZDpmdW5jdGlvbigpe3JldHVybiBsfSxvbWl0VW51c2VkQXJnczpmdW5jdGlvbigpe3JldHVybiB1fX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2Z1bmN0aW9uIGwoZSl7bGV0IHQ9cGFyc2VJbnQoZS5zbGljZSgwLDIpLDE2KSxyPXQ+PjEmNjMsbj1BcnJheSg2KTtmb3IobGV0IGU9MDtlPDY7ZSsrKXtsZXQgdD1yPj41LWUmMTtuW2VdPTE9PT10fXJldHVybnt0eXBlOjE9PSh0Pj43JjEpPyJ1c2UtY2FjaGUiOiJzZXJ2ZXItYWN0aW9uIix1c2VkQXJnczpuLGhhc1Jlc3RBcmdzOjE9PSgxJnQpfX1mdW5jdGlvbiB1KGUsdCl7bGV0IHI9QXJyYXkoZS5sZW5ndGgpO2ZvcihsZXQgbj0wO248ZS5sZW5ndGg7bisrKShuPDYmJnQudXNlZEFyZ3Nbbl18fG4+PTYmJnQuaGFzUmVzdEFyZ3MpJiYocltuXT1lW25dKTtyZXR1cm4gcn19LDc2ODQ0LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtBY3Rpb25EaWROb3RSZXZhbGlkYXRlOmZ1bmN0aW9uKCl7cmV0dXJuIGx9LEFjdGlvbkRpZFJldmFsaWRhdGVEeW5hbWljT25seTpmdW5jdGlvbigpe3JldHVybiBvfSxBY3Rpb25EaWRSZXZhbGlkYXRlU3RhdGljQW5kRHluYW1pYzpmdW5jdGlvbigpe3JldHVybiB1fX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPTAsdT0xLG89Mn0sNjcwMzMsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtsZXQgbjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInNlcnZlckFjdGlvblJlZHVjZXIiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBqfX0pO2xldCBhPWUucigzMDkzMSksbD1lLnIoODk1OTQpLHU9ZS5yKDM0NjQxKSxvPWUucig3NTA1MSksaT1lLnIoNzUwNDUpLGM9ZS5yKDY4OTM0KSxzPWUucig4NTU5NCksZj1lLnIoNTQwMTEpLGQ9ZS5yKDYxNzM5KSxoPWUucig2NzYyOCkscD1lLnIoNDE3MjEpLHk9ZS5yKDkwODYyKSxnPWUucigyNDA0MiksUj1lLnIoMzg5MzMpLF89ZS5yKDgwOTI0KSxQPWUucig0NDY2Nyksdj1lLnIoODg3NzQpLEU9ZS5yKDY1NDYzKSxtPWUucig3Njg0NCksYj1lLnIoMjkzNjIpLFM9ZS5yKDE4OTM5KSxUPWkuY3JlYXRlRnJvbUZldGNoO2FzeW5jIGZ1bmN0aW9uIE8oZSx0LHthY3Rpb25JZDpyLGFjdGlvbkFyZ3M6c30pe2xldCBmLGQscCxnLFIsUD0oMCxpLmNyZWF0ZVRlbXBvcmFyeVJlZmVyZW5jZVNldCkoKSxFPSgwLF8uZXh0cmFjdEluZm9Gcm9tU2VydmVyUmVmZXJlbmNlSWQpKHIpLGI9InVzZS1jYWNoZSI9PT1FLnR5cGU/KDAsXy5vbWl0VW51c2VkQXJncykocyxFKTpzLFM9YXdhaXQgKDAsaS5lbmNvZGVSZXBseSkoYix7dGVtcG9yYXJ5UmVmZXJlbmNlczpQfSksTz17QWNjZXB0OnUuUlNDX0NPTlRFTlRfVFlQRV9IRUFERVIsW3UuQUNUSU9OX0hFQURFUl06cixbdS5ORVhUX1JPVVRFUl9TVEFURV9UUkVFX0hFQURFUl06KDAsaC5wcmVwYXJlRmxpZ2h0Um91dGVyU3RhdGVGb3JSZXF1ZXN0KShlLnRyZWUpfSxqPSgwLHYuZ2V0RGVwbG95bWVudElkKSgpO2omJihPWyJ4LWRlcGxveW1lbnQtaWQiXT1qKSx0JiYoT1t1Lk5FWFRfVVJMXT10KTtsZXQgTT1hd2FpdCBmZXRjaChlLmNhbm9uaWNhbFVybCx7bWV0aG9kOiJQT1NUIixoZWFkZXJzOk8sYm9keTpTfSk7aWYoIjEiPT09TS5oZWFkZXJzLmdldCh1Lk5FWFRfQUNUSU9OX05PVF9GT1VORF9IRUFERVIpKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgby5VbnJlY29nbml6ZWRBY3Rpb25FcnJvcihgU2VydmVyIEFjdGlvbiAiJHtyfSIgd2FzIG5vdCBmb3VuZCBvbiB0aGUgc2VydmVyLiAKUmVhZCBtb3JlOiBodHRwczovL25leHRqcy5vcmcvZG9jcy9tZXNzYWdlcy9mYWlsZWQtdG8tZmluZC1zZXJ2ZXItYWN0aW9uYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3MTUiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7bGV0IEE9TS5oZWFkZXJzLmdldCgieC1hY3Rpb24tcmVkaXJlY3QiKSxbVSxDXT1BPy5zcGxpdCgiOyIpfHxbXTtzd2l0Y2goQyl7Y2FzZSJwdXNoIjpmPXkuUmVkaXJlY3RUeXBlLnB1c2g7YnJlYWs7Y2FzZSJyZXBsYWNlIjpmPXkuUmVkaXJlY3RUeXBlLnJlcGxhY2U7YnJlYWs7ZGVmYXVsdDpmPXZvaWQgMH1sZXQgTj0hIU0uaGVhZGVycy5nZXQodS5ORVhUX0lTX1BSRVJFTkRFUl9IRUFERVIpLHc9bS5BY3Rpb25EaWROb3RSZXZhbGlkYXRlO3RyeXtsZXQgZT1NLmhlYWRlcnMuZ2V0KCJ4LWFjdGlvbi1yZXZhbGlkYXRlZCIpO2lmKGUpe2xldCB0PUpTT04ucGFyc2UoZSk7KHQ9PT1tLkFjdGlvbkRpZFJldmFsaWRhdGVTdGF0aWNBbmREeW5hbWljfHx0PT09bS5BY3Rpb25EaWRSZXZhbGlkYXRlRHluYW1pY09ubHkpJiYodz10KX19Y2F0Y2h7fWxldCBGPVU/KDAsYy5hc3NpZ25Mb2NhdGlvbikoVSxuZXcgVVJMKGUuY2Fub25pY2FsVXJsLHdpbmRvdy5sb2NhdGlvbi5ocmVmKSk6dm9pZCAwLEk9TS5oZWFkZXJzLmdldCgiY29udGVudC10eXBlIiksTD0hIShJJiZJLnN0YXJ0c1dpdGgodS5SU0NfQ09OVEVOVF9UWVBFX0hFQURFUikpO2lmKCFMJiYhRil0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoTS5zdGF0dXM+PTQwMCYmInRleHQvcGxhaW4iPT09ST9hd2FpdCBNLnRleHQoKToiQW4gdW5leHBlY3RlZCByZXNwb25zZSB3YXMgcmVjZWl2ZWQgZnJvbSB0aGUgc2VydmVyLiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMzk0IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO2lmKEwpe2xldCBlPWF3YWl0IFQoUHJvbWlzZS5yZXNvbHZlKE0pLHtjYWxsU2VydmVyOmEuY2FsbFNlcnZlcixmaW5kU291cmNlTWFwVVJMOmwuZmluZFNvdXJjZU1hcFVSTCx0ZW1wb3JhcnlSZWZlcmVuY2VzOlAsZGVidWdDaGFubmVsOm4mJm4oTyl9KTtkPUY/dm9pZCAwOmUuYTtsZXQgdD0oMCxoLm5vcm1hbGl6ZUZsaWdodERhdGEpKGUuZik7IiIhPT10JiYocD10LGc9ZS5xLFI9ZS5pKX1lbHNlIGQ9dm9pZCAwLHA9dm9pZCAwLGc9dm9pZCAwLFI9dm9pZCAwO3JldHVybnthY3Rpb25SZXN1bHQ6ZCxhY3Rpb25GbGlnaHREYXRhOnAsYWN0aW9uRmxpZ2h0RGF0YVJlbmRlcmVkU2VhcmNoOmcsYWN0aW9uRmxpZ2h0RGF0YUNvdWxkQmVJbnRlcmNlcHRlZDpSLHJlZGlyZWN0TG9jYXRpb246RixyZWRpcmVjdFR5cGU6ZixyZXZhbGlkYXRpb25LaW5kOncsaXNQcmVyZW5kZXI6Tn19ZnVuY3Rpb24gaihlLHQpe2xldHtyZXNvbHZlOnIscmVqZWN0Om59PXQsYT17fTthLnByZXNlcnZlQ3VzdG9tSGlzdG9yeVN0YXRlPSExO2xldCBsPShlLnByZXZpb3VzTmV4dFVybHx8ZS5uZXh0VXJsKSYmKDAsZC5oYXNJbnRlcmNlcHRpb25Sb3V0ZUluQ3VycmVudFRyZWUpKGUudHJlZSk/ZS5wcmV2aW91c05leHRVcmx8fGUubmV4dFVybDpudWxsO3JldHVybiBPKGUsbCx0KS50aGVuKGFzeW5jKHtyZXZhbGlkYXRpb25LaW5kOnUsYWN0aW9uUmVzdWx0Om8sYWN0aW9uRmxpZ2h0RGF0YTppLGFjdGlvbkZsaWdodERhdGFSZW5kZXJlZFNlYXJjaDpjLGFjdGlvbkZsaWdodERhdGFDb3VsZEJlSW50ZXJjZXB0ZWQ6ZCxyZWRpcmVjdExvY2F0aW9uOmgscmVkaXJlY3RUeXBlOnB9KT0+e3UhPT1tLkFjdGlvbkRpZE5vdFJldmFsaWRhdGUmJih0LmRpZFJldmFsaWRhdGU9ITAsdT09PW0uQWN0aW9uRGlkUmV2YWxpZGF0ZVN0YXRpY0FuZER5bmFtaWMmJigwLFAucmV2YWxpZGF0ZUVudGlyZUNhY2hlKShsLGUudHJlZSkpO2xldCBfPXAhPT15LlJlZGlyZWN0VHlwZS5yZXBsYWNlO2lmKGUucHVzaFJlZi5wZW5kaW5nUHVzaD1fLGEucGVuZGluZ1B1c2g9Xyx2b2lkIDAhPT1oKXtsZXQgdD1wfHx5LlJlZGlyZWN0VHlwZS5wdXNoO2lmKCgwLGIuaXNFeHRlcm5hbFVSTCkoaCkpe2xldCByPWguaHJlZjtyZXR1cm4gbihNKHIsdCkpLCgwLGYuaGFuZGxlRXh0ZXJuYWxVcmwpKGUsYSxyLF8pfXtsZXQgZT0oMCxzLmNyZWF0ZUhyZWZGcm9tVXJsKShoLCExKTtuKE0oKDAsUi5oYXNCYXNlUGF0aCkoZSk/KDAsZy5yZW1vdmVCYXNlUGF0aCkoZSk6ZSx0KSl9fWVsc2UgcihvKTtpZih2b2lkIDA9PT1oJiZ1PT09bS5BY3Rpb25EaWROb3RSZXZhbGlkYXRlJiZ2b2lkIDA9PT1pKXJldHVybiBlO2lmKHZvaWQgMD09PWkmJnZvaWQgMCE9PWgpcmV0dXJuKDAsZi5oYW5kbGVFeHRlcm5hbFVybCkoZSxhLGguaHJlZixfKTtpZigic3RyaW5nIj09dHlwZW9mIGkpcmV0dXJuKDAsZi5oYW5kbGVFeHRlcm5hbFVybCkoZSxhLGksXyk7bGV0IHY9bmV3IFVSTChlLmNhbm9uaWNhbFVybCxsb2NhdGlvbi5vcmlnaW4pLFQ9dm9pZCAwIT09aD9oOnYsTz1lLnRyZWUsaj11PT09bS5BY3Rpb25EaWROb3RSZXZhbGlkYXRlP1MuRnJlc2huZXNzUG9saWN5LkRlZmF1bHQ6Uy5GcmVzaG5lc3NQb2xpY3kuUmVmcmVzaEFsbDtpZih2b2lkIDAhPT1pKXtsZXQgdD1pWzBdO2lmKHZvaWQgMCE9PXQmJnQuaXNSb290UmVuZGVyJiZ2b2lkIDAhPT1jJiZ2b2lkIDAhPT1kKXtsZXQgcj0oMCxzLmNyZWF0ZUhyZWZGcm9tVXJsKShUKSxuPXt0cmVlOnQudHJlZSxyZW5kZXJlZFNlYXJjaDpjLGRhdGE6dC5zZWVkRGF0YSxoZWFkOnQuaGVhZH0sdT1EYXRlLm5vdygpLG89KDAsRS5uYXZpZ2F0ZVRvU2VlZGVkUm91dGUpKHUsVCxyLG4sdixlLmNhY2hlLE8saixsLCEwKTtyZXR1cm4oMCxmLmhhbmRsZU5hdmlnYXRpb25SZXN1bHQpKFQsZSxhLF8sbyl9fWxldCBBPSgwLEUubmF2aWdhdGUpKFQsdixlLmNhY2hlLE8sbCxqLCEwLGEpO3JldHVybigwLGYuaGFuZGxlTmF2aWdhdGlvblJlc3VsdCkoVCxlLGEsXyxBKX0sdD0+KG4odCksZSkpfWZ1bmN0aW9uIE0oZSx0KXtsZXQgcj0oMCxwLmdldFJlZGlyZWN0RXJyb3IpKGUsdCk7cmV0dXJuIHIuaGFuZGxlZD0hMCxyfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDY0MSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwicmVkdWNlciIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHN9fSk7bGV0IG49ZS5yKDU5NDMwKSxhPWUucig1NDAxMSksbD1lLnIoNjA1NTMpLHU9ZS5yKDMyODM4KSxvPWUucig3NzczMyksaT1lLnIoNTk2NjIpLGM9ZS5yKDY3MDMzKSxzPSJ1Ijx0eXBlb2Ygd2luZG93P2Z1bmN0aW9uKGUsdCl7cmV0dXJuIGV9OmZ1bmN0aW9uKGUsdCl7c3dpdGNoKHQudHlwZSl7Y2FzZSBuLkFDVElPTl9OQVZJR0FURTpyZXR1cm4oMCxhLm5hdmlnYXRlUmVkdWNlcikoZSx0KTtjYXNlIG4uQUNUSU9OX1NFUlZFUl9QQVRDSDpyZXR1cm4oMCxsLnNlcnZlclBhdGNoUmVkdWNlcikoZSx0KTtjYXNlIG4uQUNUSU9OX1JFU1RPUkU6cmV0dXJuKDAsdS5yZXN0b3JlUmVkdWNlcikoZSx0KTtjYXNlIG4uQUNUSU9OX1JFRlJFU0g6cmV0dXJuKDAsby5yZWZyZXNoUmVkdWNlcikoZSk7Y2FzZSBuLkFDVElPTl9ITVJfUkVGUkVTSDpyZXR1cm4oMCxpLmhtclJlZnJlc2hSZWR1Y2VyKShlKTtjYXNlIG4uQUNUSU9OX1NFUlZFUl9BQ1RJT046cmV0dXJuKDAsYy5zZXJ2ZXJBY3Rpb25SZWR1Y2VyKShlLHQpO2RlZmF1bHQ6dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKCJVbmtub3duIGFjdGlvbiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMjk1IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pfX07KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMzQwNTIsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInByZWZldGNoIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gb319KTtsZXQgbj1lLnIoMjkzNjIpLGE9ZS5yKDE2MzE2KSxsPWUucig3NTc4MCksdT1lLnIoNTI0MTMpO2Z1bmN0aW9uIG8oZSx0LHIsbyxpKXtsZXQgYz0oMCxuLmNyZWF0ZVByZWZldGNoVVJMKShlKTtpZihudWxsPT09YylyZXR1cm47bGV0IHM9KDAsYS5jcmVhdGVDYWNoZUtleSkoYy5ocmVmLHQpOygwLGwuc2NoZWR1bGVQcmVmZXRjaFRhc2spKHMscixvLHUuUHJlZmV0Y2hQcmlvcml0eS5EZWZhdWx0LGkpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDg0Mzk1LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtjcmVhdGVNdXRhYmxlQWN0aW9uUXVldWU6ZnVuY3Rpb24oKXtyZXR1cm4gX30sZGlzcGF0Y2hOYXZpZ2F0ZUFjdGlvbjpmdW5jdGlvbigpe3JldHVybiBFfSxkaXNwYXRjaFRyYXZlcnNlQWN0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIG19LGdldEN1cnJlbnRBcHBSb3V0ZXJTdGF0ZTpmdW5jdGlvbigpe3JldHVybiBQfSxwdWJsaWNBcHBSb3V0ZXJJbnN0YW5jZTpmdW5jdGlvbigpe3JldHVybiBifX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig1OTQzMCksdT1lLnIoNjQxKSxvPWUucig3NTIwMSksaT1lLnIoOTE3NjgpLGM9ZS5yKDUyNDEzKSxzPWUucigzNDA1MiksZj1lLnIoOTQ4NzkpLGQ9ZS5yKDE0ODU3KSxoPWUucigyOTM2MikscD1lLnIoOTgyODMpO2Z1bmN0aW9uIHkoZSx0KXtudWxsIT09ZS5wZW5kaW5nPyhlLnBlbmRpbmc9ZS5wZW5kaW5nLm5leHQsbnVsbCE9PWUucGVuZGluZyYmZyh7YWN0aW9uUXVldWU6ZSxhY3Rpb246ZS5wZW5kaW5nLHNldFN0YXRlOnR9KSk6ZS5uZWVkc1JlZnJlc2gmJihlLm5lZWRzUmVmcmVzaD0hMSxlLmRpc3BhdGNoKHt0eXBlOmwuQUNUSU9OX1JFRlJFU0h9LHQpKX1hc3luYyBmdW5jdGlvbiBnKHthY3Rpb25RdWV1ZTplLGFjdGlvbjp0LHNldFN0YXRlOnJ9KXtsZXQgbj1lLnN0YXRlO2UucGVuZGluZz10O2xldCBhPXQucGF5bG9hZCx1PWUuYWN0aW9uKG4sYSk7ZnVuY3Rpb24gbyhuKXtpZih0LmRpc2NhcmRlZCl7dC5wYXlsb2FkLnR5cGU9PT1sLkFDVElPTl9TRVJWRVJfQUNUSU9OJiZ0LnBheWxvYWQuZGlkUmV2YWxpZGF0ZSYmKGUubmVlZHNSZWZyZXNoPSEwKSx5KGUscik7cmV0dXJufWUuc3RhdGU9bix5KGUsciksdC5yZXNvbHZlKG4pfSgwLGkuaXNUaGVuYWJsZSkodSk/dS50aGVuKG8sbj0+e3koZSxyKSx0LnJlamVjdChuKX0pOm8odSl9bGV0IFI9bnVsbDtmdW5jdGlvbiBfKGUsdCl7bGV0IHI9e3N0YXRlOmUsZGlzcGF0Y2g6KGUsdCk9PihmdW5jdGlvbihlLHQscil7bGV0IG49e3Jlc29sdmU6cixyZWplY3Q6KCk9Pnt9fTtpZih0LnR5cGUhPT1sLkFDVElPTl9SRVNUT1JFKXtsZXQgZT1uZXcgUHJvbWlzZSgoZSx0KT0+e249e3Jlc29sdmU6ZSxyZWplY3Q6dH19KTsoMCxvLnN0YXJ0VHJhbnNpdGlvbikoKCk9PntyKGUpfSl9bGV0IGE9e3BheWxvYWQ6dCxuZXh0Om51bGwscmVzb2x2ZTpuLnJlc29sdmUscmVqZWN0Om4ucmVqZWN0fTtudWxsPT09ZS5wZW5kaW5nPyhlLmxhc3Q9YSxnKHthY3Rpb25RdWV1ZTplLGFjdGlvbjphLHNldFN0YXRlOnJ9KSk6dC50eXBlPT09bC5BQ1RJT05fTkFWSUdBVEV8fHQudHlwZT09PWwuQUNUSU9OX1JFU1RPUkU/KGUucGVuZGluZy5kaXNjYXJkZWQ9ITAsYS5uZXh0PWUucGVuZGluZy5uZXh0LGcoe2FjdGlvblF1ZXVlOmUsYWN0aW9uOmEsc2V0U3RhdGU6cn0pKToobnVsbCE9PWUubGFzdCYmKGUubGFzdC5uZXh0PWEpLGUubGFzdD1hKX0pKHIsZSx0KSxhY3Rpb246YXN5bmMoZSx0KT0+KDAsdS5yZWR1Y2VyKShlLHQpLHBlbmRpbmc6bnVsbCxsYXN0Om51bGwsb25Sb3V0ZXJUcmFuc2l0aW9uU3RhcnQ6bnVsbCE9PXQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0Lm9uUm91dGVyVHJhbnNpdGlvblN0YXJ0P3Qub25Sb3V0ZXJUcmFuc2l0aW9uU3RhcnQ6bnVsbH07aWYoInUiPnR5cGVvZiB3aW5kb3cpe2lmKG51bGwhPT1SKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiSW50ZXJuYWwgTmV4dC5qcyBFcnJvcjogY3JlYXRlTXV0YWJsZUFjdGlvblF1ZXVlIHdhcyBjYWxsZWQgbW9yZSB0aGFuIG9uY2UiKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTYyNCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtSPXJ9cmV0dXJuIHJ9ZnVuY3Rpb24gUCgpe3JldHVybiBudWxsIT09Uj9SLnN0YXRlOm51bGx9ZnVuY3Rpb24gdigpe3JldHVybiBudWxsIT09Uj9SLm9uUm91dGVyVHJhbnNpdGlvblN0YXJ0Om51bGx9ZnVuY3Rpb24gRShlLHQscixuKXtsZXQgYT1uZXcgVVJMKCgwLGQuYWRkQmFzZVBhdGgpKGUpLGxvY2F0aW9uLmhyZWYpOygwLHAuc2V0TGlua0ZvckN1cnJlbnROYXZpZ2F0aW9uKShuKTtsZXQgdT12KCk7bnVsbCE9PXUmJnUoZSx0KSwoMCxmLmRpc3BhdGNoQXBwUm91dGVyQWN0aW9uKSh7dHlwZTpsLkFDVElPTl9OQVZJR0FURSx1cmw6YSxpc0V4dGVybmFsVXJsOigwLGguaXNFeHRlcm5hbFVSTCkoYSksbG9jYXRpb25TZWFyY2g6bG9jYXRpb24uc2VhcmNoLHNob3VsZFNjcm9sbDpyLG5hdmlnYXRlVHlwZTp0fSl9ZnVuY3Rpb24gbShlLHQpe2xldCByPXYoKTtudWxsIT09ciYmcihlLCJ0cmF2ZXJzZSIpLCgwLGYuZGlzcGF0Y2hBcHBSb3V0ZXJBY3Rpb24pKHt0eXBlOmwuQUNUSU9OX1JFU1RPUkUsdXJsOm5ldyBVUkwoZSksaGlzdG9yeVN0YXRlOnR9KX1sZXQgYj17YmFjazooKT0+d2luZG93Lmhpc3RvcnkuYmFjaygpLGZvcndhcmQ6KCk9PndpbmRvdy5oaXN0b3J5LmZvcndhcmQoKSxwcmVmZXRjaDooZSx0KT0+e2xldCByLG49ZnVuY3Rpb24oKXtpZihudWxsPT09Uil0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIkludGVybmFsIE5leHQuanMgZXJyb3I6IFJvdXRlciBhY3Rpb24gZGlzcGF0Y2hlZCBiZWZvcmUgaW5pdGlhbGl6YXRpb24uIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU2NjgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7cmV0dXJuIFJ9KCk7c3dpdGNoKHQ/LmtpbmQ/P2wuUHJlZmV0Y2hLaW5kLkFVVE8pe2Nhc2UgbC5QcmVmZXRjaEtpbmQuQVVUTzpyPWMuRmV0Y2hTdHJhdGVneS5QUFI7YnJlYWs7Y2FzZSBsLlByZWZldGNoS2luZC5GVUxMOnI9Yy5GZXRjaFN0cmF0ZWd5LkZ1bGw7YnJlYWs7ZGVmYXVsdDpyPWMuRmV0Y2hTdHJhdGVneS5QUFJ9KDAscy5wcmVmZXRjaCkoZSxuLnN0YXRlLm5leHRVcmwsbi5zdGF0ZS50cmVlLHIsdD8ub25JbnZhbGlkYXRlPz9udWxsKX0scmVwbGFjZTooZSx0KT0+eygwLG8uc3RhcnRUcmFuc2l0aW9uKSgoKT0+e0UoZSwicmVwbGFjZSIsdD8uc2Nyb2xsPz8hMCxudWxsKX0pfSxwdXNoOihlLHQpPT57KDAsby5zdGFydFRyYW5zaXRpb24pKCgpPT57RShlLCJwdXNoIix0Py5zY3JvbGw/PyEwLG51bGwpfSl9LHJlZnJlc2g6KCk9PnsoMCxvLnN0YXJ0VHJhbnNpdGlvbikoKCk9PnsoMCxmLmRpc3BhdGNoQXBwUm91dGVyQWN0aW9uKSh7dHlwZTpsLkFDVElPTl9SRUZSRVNIfSl9KX0saG1yUmVmcmVzaDooKT0+e3Rocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiaG1yUmVmcmVzaCBjYW4gb25seSBiZSB1c2VkIGluIGRldmVsb3BtZW50IG1vZGUuIFBsZWFzZSB1c2UgcmVmcmVzaCBpbnN0ZWFkLiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNDg1IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pfX07InUiPnR5cGVvZiB3aW5kb3cmJndpbmRvdy5uZXh0JiYod2luZG93Lm5leHQucm91dGVyPWIpLCgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9XSk7"}},"time_used":12,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":10,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.googletagmanager.com/gtag/js?id=G-V84XP8WGXY","fqdn":"www.googletagmanager.com","domain":"googletagmanager.com","tld":"com"},"ip":{"addr":"142.250.178.104","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.263Z","timestamp":1785158433263,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.google-analytics.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:33 GMT","end":"Mon, 21 Sep 2026 08:37:32 GMT"},"fingerprint":{"sha1":"85:82:80:E9:F0:BC:08:B5:D8:5D:91:B4:E5:D3:DB:B1:A7:2F:E3:F3","sha256":"E3:94:E9:DA:2C:F1:36:09:33:63:D3:69:08:E7:E6:91:8D:F3:61:7F:0F:D0:5F:8E:B6:E9:D7:F3:DD:10:3C:DC"}}},"request":{"raw":"GET /gtag/js?id=G-V84XP8WGXY HTTP/1.1\r\nHost: www.googletagmanager.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ncontent-type: application/javascript; charset=UTF-8\r\naccess-control-allow-origin: *\r\naccess-control-allow-credentials: true\r\naccess-control-allow-headers: Cache-Control\r\ncontent-encoding: zstd\r\nvary: Accept-Encoding\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\nexpires: Mon, 27 Jul 2026 13:20:33 GMT\r\ncache-control: private, max-age=900\r\nstrict-transport-security: max-age=31536000; includeSubDomains\r\ncross-origin-resource-policy: cross-origin\r\nserver: Google Tag Manager\r\ncontent-length: 166346\r\nx-xss-protection: 0\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":488553,"size_decoded":166950,"mime_type":"application/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (6033)","md5":"2ca987f27dbee6434faaa87c0bb3775e","sha1":"1514e49aadd900d255d2b68832184a9475dbbd4c","sha256":"9ecf53ae7638eb4eae44692512062b0efde9485d80d3c4e073b71d8449325bed","sha512":"d1370434890d0efd043b9d565d6ce4a6f3b6f3fe8cd770692c994332b0792a035e68789e2d02c8f2387d5cc9003c3d1f5437f9566096b888338511cf11387ea2","ssdeep":"6144:/yH5RU0jIWXbP69FMxmRknhqsScPmfxNf3EjUxVGaZoXzRYGg:/85C1WLP69VwqxVZOvg","tlshash":"17a4f8cdb3d674225396f478903f018ba57b29e2b44cc899f189cce42e7465a8267f7c","first_seen":"2026-07-27T07:02:55.664103Z","last_seen":"2026-07-27T14:57:18.250575Z","times_seen":250,"resource_available":true,"data":"Ci8vIENvcHlyaWdodCAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKKGZ1bmN0aW9uKCl7Cgp2YXIgZGF0YSA9IHsKInJlc291cmNlIjogewogICJ2ZXJzaW9uIjoiMSIsCiAgCiAgIm1hY3JvcyI6W3siZnVuY3Rpb24iOiJfX2UifSx7ImZ1bmN0aW9uIjoiX19jIiwidnRwX3ZhbHVlIjoiZ29vZ2xlLm5vIn0seyJmdW5jdGlvbiI6Il9fYyIsInZ0cF92YWx1ZSI6MH1dLAogICJ0YWdzIjpbeyJmdW5jdGlvbiI6Il9fb2d0XzFwX2RhdGFfdjIiLCJwcmlvcml0eSI6MTMsInZ0cF9pc0F1dG9FbmFibGVkIjp0cnVlLCJ2dHBfYXV0b1Bob25lRW5hYmxlZCI6dHJ1ZSwidnRwX2F1dG9Db2xsZWN0RXhjbHVzaW9uU2VsZWN0b3JzIjpbImxpc3QiLFsibWFwIiwiZXhjbHVzaW9uU2VsZWN0b3IiLCIiXV0sInZ0cF9pc0VuYWJsZWQiOnRydWUsInZ0cF9hdXRvQWRkcmVzc0VuYWJsZWQiOnRydWUsInZ0cF9hdXRvRW1haWxFbmFibGVkIjp0cnVlLCJ2dHBfaXNBdXRvQ29sbGVjdFBpaUVuYWJsZWRGbGFnIjp0cnVlLCJ0YWdfaWQiOjR9LHsiZnVuY3Rpb24iOiJfX2NjZF9nYV9maXJzdCIsInByaW9yaXR5IjoxMiwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6MTh9LHsiZnVuY3Rpb24iOiJfX3NldF9wcm9kdWN0X3NldHRpbmdzIiwicHJpb3JpdHkiOjExLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1WODRYUDhXR1hZIiwidnRwX2ZvcmVpZ25UbGRNYWNyb1Jlc3VsdCI6WyJtYWNybyIsMV0sInZ0cF9pc0NoaW5hVmlwUmVnaW9uTWFjcm9SZXN1bHQiOlsibWFjcm8iLDJdLCJ0YWdfaWQiOjE3fSx7ImZ1bmN0aW9uIjoiX19jY2RfZ2FfcmVnc2NvcGUiLCJwcmlvcml0eSI6MTAsInZ0cF9zZXR0aW5nc1RhYmxlIjpbImxpc3QiLFsibWFwIiwicmVkYWN0RmllbGRHcm91cCIsIkRFVklDRV9BTkRfR0VPIiwiZGlzYWxsb3dBbGxSZWdpb25zIixmYWxzZSwiZGlzYWxsb3dlZFJlZ2lvbnMiLCIiXSxbIm1hcCIsInJlZGFjdEZpZWxkR3JvdXAiLCJHT09HTEVfU0lHTkFMUyIsImRpc2FsbG93QWxsUmVnaW9ucyIsdHJ1ZSwiZGlzYWxsb3dlZFJlZ2lvbnMiLCIiXV0sInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLVY4NFhQOFdHWFkiLCJ0YWdfaWQiOjE2fSx7ImZ1bmN0aW9uIjoiX19jY2RfZW1fZG93bmxvYWQiLCJwcmlvcml0eSI6OSwidnRwX2luY2x1ZGVQYXJhbXMiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLVY4NFhQOFdHWFkiLCJ0YWdfaWQiOjE1fSx7ImZ1bmN0aW9uIjoiX19jY2RfZW1fZm9ybSIsInByaW9yaXR5Ijo4LCJ2dHBfaW5jbHVkZVBhcmFtcyI6dHJ1ZSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6MTR9LHsiZnVuY3Rpb24iOiJfX2NjZF9lbV9vdXRib3VuZF9jbGljayIsInByaW9yaXR5Ijo3LCJ2dHBfaW5jbHVkZVBhcmFtcyI6dHJ1ZSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6MTN9LHsiZnVuY3Rpb24iOiJfX2NjZF9lbV9wYWdlX3ZpZXciLCJwcmlvcml0eSI6NiwidnRwX2hpc3RvcnlFdmVudHMiOnRydWUsInZ0cF9pbmNsdWRlUGFyYW1zIjp0cnVlLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1WODRYUDhXR1hZIiwidGFnX2lkIjoxMn0seyJmdW5jdGlvbiI6Il9fY2NkX2VtX3Njcm9sbCIsInByaW9yaXR5Ijo1LCJ2dHBfaW5jbHVkZVBhcmFtcyI6dHJ1ZSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6MTF9LHsiZnVuY3Rpb24iOiJfX2NjZF9lbV9zaXRlX3NlYXJjaCIsInByaW9yaXR5Ijo0LCJ2dHBfc2VhcmNoUXVlcnlQYXJhbXMiOiJxLHMsc2VhcmNoLHF1ZXJ5LGtleXdvcmQiLCJ2dHBfaW5jbHVkZVBhcmFtcyI6dHJ1ZSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6MTB9LHsiZnVuY3Rpb24iOiJfX2NjZF9lbV92aWRlbyIsInByaW9yaXR5IjozLCJ2dHBfaW5jbHVkZVBhcmFtcyI6dHJ1ZSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6OX0seyJmdW5jdGlvbiI6Il9fY2NkX2NvbnZlcnNpb25fbWFya2luZyIsInByaW9yaXR5IjoyLCJ2dHBfY29udmVyc2lvblJ1bGVzIjpbImxpc3QiLFsibWFwIiwibWF0Y2hpbmdSdWxlcyIsIntcInR5cGVcIjo1LFwiYXJnc1wiOlt7XCJzdHJpbmdWYWx1ZVwiOlwiY2xvc2VfY29udmVydF9sZWFkXCJ9LHtcImNvbnRleHRWYWx1ZVwiOntcIm5hbWVzcGFjZVR5cGVcIjoxLFwia2V5UGFydHNcIjpbXCJldmVudE5hbWVcIl19fV19Il0sWyJtYXAiLCJtYXRjaGluZ1J1bGVzIiwie1widHlwZVwiOjUsXCJhcmdzXCI6W3tcInN0cmluZ1ZhbHVlXCI6XCJxdWFsaWZ5X2xlYWRcIn0se1wiY29udGV4dFZhbHVlXCI6e1wibmFtZXNwYWNlVHlwZVwiOjEsXCJrZXlQYXJ0c1wiOltcImV2ZW50TmFtZVwiXX19XX0iXSxbIm1hcCIsIm1hdGNoaW5nUnVsZXMiLCJ7XCJ0eXBlXCI6NSxcImFyZ3NcIjpbe1wic3RyaW5nVmFsdWVcIjpcInB1cmNoYXNlXCJ9LHtcImNvbnRleHRWYWx1ZVwiOntcIm5hbWVzcGFjZVR5cGVcIjoxLFwia2V5UGFydHNcIjpbXCJldmVudE5hbWVcIl19fV19Il1dLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1WODRYUDhXR1hZIiwidGFnX2lkIjo4fSx7ImZ1bmN0aW9uIjoiX19jY2RfYXV0b19yZWRhY3QiLCJwcmlvcml0eSI6MSwidnRwX3JlZGFjdEVtYWlsIjp0cnVlLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1WODRYUDhXR1hZIiwidGFnX2lkIjo3fSx7ImZ1bmN0aW9uIjoiX19nY3QiLCJ2dHBfdHJhY2tpbmdJZCI6IkctVjg0WFA4V0dYWSIsInZ0cF9zZXNzaW9uRHVyYXRpb24iOjAsInRhZ19pZCI6MX0seyJmdW5jdGlvbiI6Il9fY2NkX2dhX2xhc3QiLCJwcmlvcml0eSI6MCwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6Nn1dLAogICJwcmVkaWNhdGVzIjpbeyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDBdLCJhcmcxIjoiZ3RtLmpzIn0seyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDBdLCJhcmcxIjoiZ3RtLmluaXQifV0sCiAgInJ1bGVzIjpbW1siaWYiLDBdLFsiYWRkIiwxM11dLFtbImlmIiwxXSxbImFkZCIsMCwxNCwxMiwxMSwxMCw5LDgsNyw2LDUsNCwzLDIsMV1dXQp9LAoicnVudGltZSI6WyBbNTAsIl9fYyIsWzQ2LCJhIl0sWzM2LFsxNyxbMTUsImEiXSwidmFsdWUiXV1dCiAsWzUwLCJfX2NjZF9hdXRvX3JlZGFjdCIsWzQ2LCJhIl0sWzUwLCJ2IixbNDYsImFGIl0sWzM2LFsyLFsxNSwiYUYiXSwicmVwbGFjZSIsWzcsWzE1LCJ1Il0sIlxcJDEiXV1dXSxbNTAsInciLFs0NiwiYUYiXSxbNTIsImFHIixbMzAsWyJjIixbMTUsImFGIl1dLFsxNSwiYUYiXV1dLFs1MiwiYUgiLFs3XV0sWzY1LCJhSSIsWzIsWzE1LCJhRyJdLCJzcGxpdCIsWzcsIiJdXSxbNDYsWzUzLFs1MiwiYUoiLFs3LFsidiIsWzE1LCJhSSJdXV1dLFs1MiwiYUsiLFsiZCIsWzE1LCJhSSJdXV0sWzIyLFsxMixbMTUsImFLIl0sWzQ1XV0sWzQ2LFs1MyxbMzYsWyJkIixbInYiLFsxNSwiYUYiXV1dXV1dXSxbMjIsWzIxLFsxNSwiYUsiXSxbMTUsImFJIl1dLFs0NixbNTMsWzIsWzE1LCJhSiJdLCJwdXNoIixbNyxbMTUsImFLIl1dXSxbMjIsWzIxLFsxNSwiYUkiXSxbMixbMTUsImFJIl0sInRvTG93ZXJDYXNlIixbN11dXSxbNDYsWzUzLFsyLFsxNSwiYUoiXSwicHVzaCIsWzcsWyJkIixbMixbMTUsImFJIl0sInRvTG93ZXJDYXNlIixbN11dXV1dXV0sWzQ2LFsyMixbMjEsWzE1LCJhSSJdLFsyLFsxNSwiYUkiXSwidG9VcHBlckNhc2UiLFs3XV1dLFs0NixbNTMsWzIsWzE1LCJhSiJdLCJwdXNoIixbNyxbImQiLFsyLFsxNSwiYUkiXSwidG9VcHBlckNhc2UiLFs3XV1dXV1dXV1dXV1dXSxbMjIsWzE4LFsxNyxbMTUsImFKIl0sImxlbmd0aCJdLDFdLFs0NixbNTMsWzIsWzE1LCJhSCJdLCJwdXNoIixbNyxbMCxbMCwiKD86IixbMixbMTUsImFKIl0sImpvaW4iLFs3LCJ8Il1dXSwiKSJdXV1dXSxbNDYsWzUzLFsyLFsxNSwiYUgiXSwicHVzaCIsWzcsWzE2LFsxNSwiYUoiXSwwXV1dXV1dXV1dLFszNixbMixbMTUsImFIIl0sImpvaW4iLFs3LCIiXV1dXSxbNTAsIngiLFs0NiwiYUYiLCJhRyIsImFIIl0sWzUyLCJhSSIsWyJ6IixbMTUsImFGIl0sWzE1LCJhSCJdXV0sWzIyLFsyOCxbMTUsImFJIl1dLFs0NixbMzYsWzE1LCJhRiJdXV1dLFsyMixbMjgsWzE3LFsxNSwiYUkiXSwic2VhcmNoIl1dLFs0NixbMzYsWzE1LCJhRiJdXV1dLFs0MSwiYUoiXSxbMywiYUoiLFsxNyxbMTUsImFJIl0sInNlYXJjaCJdXSxbNjUsImFLIixbMTUsImFHIl0sWzQ2LFs1MyxbNTIsImFMIixbNyxbInYiLFsxNSwiYUsiXV0sWyJ3IixbMTUsImFLIl1dXV0sWzY1LCJhTSIsWzE1LCJhTCJdLFs0NixbNTMsWzUyLCJhTiIsWzMwLFsxNixbMTUsInQiXSxbMTUsImFNIl1dLFs0MyxbMTUsInQiXSxbMTUsImFNIl0sWyJiIixbMCxbMCwiKFs/Jl0iLFsxNSwiYU0iXV0sIj0pKFteJl0qKSJdLCJnaSJdXV1dLFszLCJhSiIsWzIsWzE1LCJhSiJdLCJyZXBsYWNlIixbNyxbMTUsImFOIl0sWzAsIiQxIixbMTUsInIiXV1dXV1dXV1dXV0sWzIyLFsyMCxbMTUsImFKIl0sWzE3LFsxNSwiYUkiXSwic2VhcmNoIl1dLFs0NixbMzYsWzE1LCJhRiJdXV1dLFsyMixbMjAsWzE2LFsxNSwiYUoiXSwwXSwiJiJdLFs0NixbMywiYUoiLFsyLFsxNSwiYUoiXSwic3Vic3RyaW5nIixbNywxXV1dXV0sWzIyLFsyMSxbMTYsWzE1LCJhSiJdLDBdLCI/Il0sWzQ2LFszLCJhSiIsWzAsIj8iLFsxNSwiYUoiXV1dXV0sWzIyLFsyMCxbMTUsImFKIl0sIj8iXSxbNDYsWzMsImFKIiwiIl1dXSxbNDMsWzE1LCJhSSJdLCJzZWFyY2giLFsxNSwiYUoiXV0sWzM2LFsiYUEiLFsxNSwiYUkiXSxbMTUsImFIIl1dXV0sWzUwLCJ6IixbNDYsImFGIiwiYUciXSxbMjIsWzIwLFsxNSwiYUciXSxbMTcsWzE1LCJzIl0sIlBBVEgiXV0sWzQ2LFs1MyxbMywiYUYiLFswLFsxNSwieSJdLFsxNSwiYUYiXV1dXV1dLFszNixbImYiLFsxNSwiYUYiXV1dXSxbNTAsImFBIixbNDYsImFGIiwiYUciXSxbNDEsImFIIl0sWzMsImFIIiwiIl0sWzIyLFsyMCxbMTUsImFHIl0sWzE3LFsxNSwicyJdLCJVUkwiXV0sWzQ2LFs1MyxbNDEsImFJIl0sWzMsImFJIiwiIl0sWzIyLFszMCxbMTcsWzE1LCJhRiJdLCJ1c2VybmFtZSJdLFsxNyxbMTUsImFGIl0sInBhc3N3b3JkIl1dLFs0NixbNTMsWzMsImFJIixbMCxbMTUsImFJIl0sWzAsWzAsWzAsWzE3LFsxNSwiYUYiXSwidXNlcm5hbWUiXSxbMzksWzE3LFsxNSwiYUYiXSwicGFzc3dvcmQiXSwiOiIsIiJdXSxbMTcsWzE1LCJhRiJdLCJwYXNzd29yZCJdXSwiQCJdXV1dXV0sWzMsImFIIixbMCxbMCxbMCxbMTcsWzE1LCJhRiJdLCJwcm90b2NvbCJdLCIvLyJdLFsxNSwiYUkiXV0sWzE3LFsxNSwiYUYiXSwiaG9zdCJdXV1dXV0sWzM2LFswLFswLFswLFsxNSwiYUgiXSxbMTcsWzE1LCJhRiJdLCJwYXRobmFtZSJdXSxbMTcsWzE1LCJhRiJdLCJzZWFyY2giXV0sWzE3LFsxNSwiYUYiXSwiaGFzaCJdXV1dLFs1MCwiYUIiLFs0NiwiYUYiLCJhRyJdLFs0MSwiYUgiXSxbMywiYUgiLFsyLFsxNSwiYUYiXSwicmVwbGFjZSIsWzcsWzE1LCJuIl0sWzE1LCJyIl1dXV0sWzIyLFszMCxbMjAsWzE1LCJhRyJdLFsxNyxbMTUsInMiXSwiVVJMIl1dLFsyMCxbMTUsImFHIl0sWzE3LFsxNSwicyJdLCJQQVRIIl1dXSxbNDYsWzUzLFs1MiwiYUkiLFsieiIsWzE1LCJhSCJdLFsxNSwiYUciXV1dLFsyMixbMjAsWzE1LCJhSSJdLFs0NF1dLFs0NixbMzYsWzE1LCJhSCJdXV1dLFs1MiwiYUoiLFsxNyxbMTUsImFJIl0sInNlYXJjaCJdXSxbNTIsImFLIixbMixbMTUsImFKIl0sInJlcGxhY2UiLFs3LFsxNSwibyJdLFsxNSwiciJdXV1dLFsyMixbMjAsWzE1LCJhSiJdLFsxNSwiYUsiXV0sWzQ2LFszNixbMTUsImFIIl1dXV0sWzQzLFsxNSwiYUkiXSwic2VhcmNoIixbMTUsImFLIl1dLFszLCJhSCIsWyJhQSIsWzE1LCJhSSJdLFsxNSwiYUciXV1dXV1dLFszNixbMTUsImFIIl1dXSxbNTAsImFDIixbNDYsImFGIl0sWzIyLFsyMCxbMTUsImFGIl0sWzE1LCJxIl1dLFs0NixbNTMsWzM2LFsxNyxbMTUsInMiXSwiUEFUSCJdXV1dLFs0NixbMjIsWzIxLFsyLFsxNSwicCJdLCJpbmRleE9mIixbNyxbMTUsImFGIl1dXSxbMjcsMV1dLFs0NixbNTMsWzM2LFsxNyxbMTUsInMiXSwiVVJMIl1dXV0sWzQ2LFs1MyxbMzYsWzE3LFsxNSwicyJdLCJURVhUIl1dXV1dXV1dLFs1MCwiYUQiLFs0NiwiYUYiLCJhRyJdLFs0MSwiYUgiXSxbMywiYUgiLGZhbHNlXSxbNTIsImFJIixbImUiLFsxNSwiYUYiXV1dLFszOCxbMTUsImFJIl0sWzQ2LCJzdHJpbmciLCJhcnJheSIsIm9iamVjdCJdLFs0NixbNSxbNDYsWzUyLCJhSiIsWyJhQiIsWzE1LCJhRiJdLFsxNSwiYUciXV1dLFsyMixbMjEsWzE1LCJhRiJdLFsxNSwiYUoiXV0sWzQ2LFs1MyxbMzYsWzE1LCJhSiJdXV1dXSxbNF1dXSxbNSxbNDYsWzUzLFs0MSwiYUsiXSxbMywiYUsiLDBdLFs2MyxbNywiYUsiXSxbMjMsWzE1LCJhSyJdLFsxNyxbMTUsImFGIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJhSyJdLFszLCJhSyIsWzAsWzE1LCJhSyJdLDFdXV0sWzQ2LFs1MyxbNTIsImFMIixbImFEIixbMTYsWzE1LCJhRiJdLFsxNSwiYUsiXV0sWzE3LFsxNSwicyJdLCJURVhUIl1dXSxbMjIsWzIxLFsxNSwiYUwiXSxbNDRdXSxbNDYsWzUzLFs0MyxbMTUsImFGIl0sWzE1LCJhSyJdLFsxNSwiYUwiXV0sWzMsImFIIix0cnVlXV1dXV1dXV0sWzRdXV0sWzUsWzQ2LFs1NCwiYUsiLFsxNSwiYUYiXSxbNDYsWzUzLFs1MiwiYUwiLFsiYUQiLFsxNixbMTUsImFGIl0sWzE1LCJhSyJdXSxbMTcsWzE1LCJzIl0sIlRFWFQiXV1dLFsyMixbMjEsWzE1LCJhTCJdLFs0NF1dLFs0NixbNTMsWzQzLFsxNSwiYUYiXSxbMTUsImFLIl0sWzE1LCJhTCJdXSxbMywiYUgiLHRydWVdXV1dXV1dLFs0XV1dXV0sWzM2LFszOSxbMTUsImFIIl0sWzE1LCJhRiJdLFs0NF1dXV0sWzUwLCJhRSIsWzQ2LCJhRiIsImFHIl0sWzUyLCJhSCIsWzMwLFsyLFsxNSwiYUYiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImgiXSwiQUMiXV1dLFs3XV1dLFsyMixbMjAsWzIsWzE1LCJhSCJdLCJpbmRleE9mIixbNyxbMTUsImFHIl1dXSxbMjcsMV1dLFs0NixbNTMsWzIsWzE1LCJhSCJdLCJwdXNoIixbNyxbMTUsImFHIl1dXV1dXSxbMixbMTUsImFGIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJoIl0sIkFDIl0sWzE1LCJhSCJdXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuY3JlYXRlUmVnZXgiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJkZWNvZGVVcmlDb21wb25lbnQiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJlbmNvZGVVcmlDb21wb25lbnQiXV0sWzUyLCJlIixbInJlcXVpcmUiLCJnZXRUeXBlIl1dLFs1MiwiZiIsWyJyZXF1aXJlIiwicGFyc2VVcmwiXV0sWzUyLCJnIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiaCIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImkiLFsxNSwiX19tb2R1bGVfZ29sZEV2ZW50VXNhZ2VJZCJdXSxbNTIsImoiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFs1MiwiayIsWzE3LFsxNSwiYSJdLCJyZWRhY3RFbWFpbCJdXSxbNTIsImwiLFsxNyxbMTUsImEiXSwicmVkYWN0UXVlcnlQYXJhbXMiXV0sWzUyLCJtIixbMzksWzE1LCJsIl0sWzIsWzE1LCJsIl0sInNwbGl0IixbNywiLCJdXSxbN11dXSxbMjIsWzEsWzI4LFsxNyxbMTUsIm0iXSwibGVuZ3RoIl1dLFsyOCxbMTUsImsiXV1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFs1MiwibiIsWyJiIiwiW0EtWjAtOS5fJSstXStAW0EtWjAtOS4tXStcXC5bQS1aXXsyLH0iLCJnaSJdXSxbNTIsIm8iLFsiYiIsWzAsIihbQS1aMC05Ll8tXXwlMjV8JTJCKSslNDBbQS1aMC05Li1dIiwiK1xcLltBLVpdezIsfSJdLCJnaSJdXSxbNTIsInAiLFs3LCJwYWdlX2xvY2F0aW9uIiwicGFnZV9yZWZlcnJlciIsInBhZ2VfcGF0aCIsImxpbmtfdXJsIiwidmlkZW9fdXJsIiwiZm9ybV9kZXN0aW5hdGlvbiJdXSxbNTIsInEiLCJwYWdlX3BhdGgiXSxbNTIsInIiLCIocmVkYWN0ZWQpIl0sWzUyLCJzIixbOCwiVEVYVCIsMCwiVVJMIiwxLCJQQVRIIiwyXV0sWzUyLCJ0IixbOF1dLFs1MiwidSIsWyJiIiwiKFtcXFxcXiQufD8qKygpe31dfFxcW3xcXFspIiwiZyJdXSxbNTIsInkiLCJodHRwOi8vLiJdLFsiZyIsWzE1LCJqIl0sWzUxLCIiLFs3LCJhRiJdLFsyMixbMTUsImsiXSxbNDYsWzUzLFs1MiwiYUciLFsyLFsxNSwiYUYiXSwiZ2V0SGl0S2V5cyIsWzddXV0sWzY1LCJhSCIsWzE1LCJhRyJdLFs0NixbNTMsWzIyLFsyMCxbMTUsImFIIl0sIl9zc3RfcGFyYW1ldGVycyJdLFs0NixbNl1dXSxbNTIsImFJIixbMixbMTUsImFGIl0sImdldEhpdERhdGEiLFs3LFsxNSwiYUgiXV1dXSxbMjIsWzI4LFsxNSwiYUkiXV0sWzQ2LFs2XV1dLFs1MiwiYUoiLFsiYUMiLFsxNSwiYUgiXV1dLFs1MiwiYUsiLFsiYUQiLFsxNSwiYUkiXSxbMTUsImFKIl1dXSxbMjIsWzIxLFsxNSwiYUsiXSxbNDRdXSxbNDYsWzUzLFsyLFsxNSwiYUYiXSwic2V0SGl0RGF0YSIsWzcsWzE1LCJhSCJdLFsxNSwiYUsiXV1dLFsiYUUiLFsxNSwiYUYiXSxbMzksWzIsWzE1LCJhRiJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiaCJdLCJCTyJdXV0sWzE3LFsxNSwiaSJdLCJXIl0sWzE3LFsxNSwiaSJdLCJPIl1dXV1dXV1dXV1dXSxbMjIsWzE3LFsxNSwibSJdLCJsZW5ndGgiXSxbNDYsWzUzLFs2NSwiYUciLFsxNSwicCJdLFs0NixbNTMsWzUyLCJhSCIsWzIsWzE1LCJhRiJdLCJnZXRIaXREYXRhIixbNyxbMTUsImFHIl1dXV0sWzIyLFsyOCxbMTUsImFIIl1dLFs0NixbNl1dXSxbNTIsImFJIixbMzksWzIwLFsxNSwiYUciXSxbMTUsInEiXV0sWzE3LFsxNSwicyJdLCJQQVRIIl0sWzE3LFsxNSwicyJdLCJVUkwiXV1dLFs1MiwiYUoiLFsieCIsWzE1LCJhSCJdLFsxNSwibSJdLFsxNSwiYUkiXV1dLFsyMixbMjEsWzE1LCJhSiJdLFsxNSwiYUgiXV0sWzQ2LFs1MyxbMixbMTUsImFGIl0sInNldEhpdERhdGEiLFs3LFsxNSwiYUciXSxbMTUsImFKIl1dXSxbImFFIixbMTUsImFGIl0sWzM5LFsyLFsxNSwiYUYiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImgiXSwiQk8iXV1dLFsxNyxbMTUsImkiXSwiWCJdLFsxNyxbMTUsImkiXSwiUCJdXV1dXV1dXV1dXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfY29udmVyc2lvbl9tYXJraW5nIixbNDYsImEiXSxbMjIsWzMwLFsyOCxbMTcsWzE1LCJhIl0sImNvbnZlcnNpb25SdWxlcyJdXSxbMjAsWzE3LFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sImxlbmd0aCJdLDBdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNvcHlQcmVIaXQiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5ldmFsdWF0ZUJvb2xlYW5FeHByZXNzaW9uIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJmIiwiZmlyc3RfdmlzaXQiXSxbNTIsImciLCJzZXNzaW9uX3N0YXJ0Il0sWzQxLCJoIl0sWzQxLCJpIl0sWyJkIixbMTcsWzE1LCJhIl0sImluc3RhbmNlRGVzdGluYXRpb25JZCJdLFs1MSwiIixbNywiaiJdLFs1MiwiayIsWzgsInByZUhpdCIsWzE1LCJqIl1dXSxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiUCJdLHRydWVdXSxbNjUsImwiLFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sWzQ2LFs1MyxbMjIsWyJjIixbMTcsWzE1LCJsIl0sIm1hdGNoaW5nUnVsZXMiXSxbMTUsImsiXV0sWzQ2LFs1MyxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQVYiXSx0cnVlXV0sWzRdXV1dXV1dLFsyMixbMixbMTUsImoiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQVoiXV1dLFs0NixbNTMsWzIyLFsyOCxbMTUsImgiXV0sWzQ2LFs1MyxbNTIsImwiLFsiYiIsWzE1LCJqIl0sWzgsIm9taXRIaXREYXRhIix0cnVlLCJvbWl0TWV0YWRhdGEiLHRydWVdXV0sWzIsWzE1LCJsIl0sInNldEV2ZW50TmFtZSIsWzcsWzE1LCJmIl1dXSxbMywiaCIsWzgsInByZUhpdCIsWzE1LCJsIl1dXV1dXSxbNjUsImwiLFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sWzQ2LFs1MyxbMjIsWyJjIixbMTcsWzE1LCJsIl0sIm1hdGNoaW5nUnVsZXMiXSxbMTUsImgiXV0sWzQ2LFs1MyxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQkEiXSx0cnVlXV0sWzRdXV1dXV1dXV1dLFsyMixbMixbMTUsImoiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQkwiXV1dLFs0NixbNTMsWzIyLFsyOCxbMTUsImkiXV0sWzQ2LFs1MyxbNTIsImwiLFsiYiIsWzE1LCJqIl0sWzgsIm9taXRIaXREYXRhIix0cnVlLCJvbWl0TWV0YWRhdGEiLHRydWVdXV0sWzIsWzE1LCJsIl0sInNldEV2ZW50TmFtZSIsWzcsWzE1LCJnIl1dXSxbMywiaSIsWzgsInByZUhpdCIsWzE1LCJsIl1dXV1dXSxbNjUsImwiLFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sWzQ2LFs1MyxbMjIsWyJjIixbMTcsWzE1LCJsIl0sIm1hdGNoaW5nUnVsZXMiXSxbMTUsImkiXV0sWzQ2LFs1MyxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQk0iXSx0cnVlXV0sWzRdXV1dXV1dXV1dXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXQogLFs1MCwiX19jY2RfZW1fZG93bmxvYWQiLFs0NiwiYSJdLFs1MCwicSIsWzQ2LCJ2Il0sWzM2LFsxLFsxNSwidiJdLFsyMSxbMixbMixbMTUsInYiXSwidG9Mb3dlckNhc2UiLFs3XV0sIm1hdGNoIixbNyxbMTUsInAiXV1dLFs0NV1dXV1dLFs1MCwiciIsWzQ2LCJ2Il0sWzUyLCJ3IixbMixbMTcsWzE1LCJ2Il0sInBhdGhuYW1lIl0sInNwbGl0IixbNywiLiJdXV0sWzUyLCJ4IixbMzksWzE4LFsxNyxbMTUsInciXSwibGVuZ3RoIl0sMV0sWzE2LFsxNSwidyJdLFszNyxbMTcsWzE1LCJ3Il0sImxlbmd0aCJdLDFdXSwiIl1dLFszNixbMTYsWzIsWzE1LCJ4Il0sInNwbGl0IixbNywiLyJdXSwwXV1dLFs1MCwicyIsWzQ2LCJ2Il0sWzM2LFszOSxbMTIsWzIsWzE3LFsxNSwidiJdLCJwYXRobmFtZSJdLCJzdWJzdHJpbmciLFs3LDAsMV1dLCIvIl0sWzE3LFsxNSwidiJdLCJwYXRobmFtZSJdLFswLCIvIixbMTcsWzE1LCJ2Il0sInBhdGhuYW1lIl1dXV1dLFs1MCwidCIsWzQ2LCJ2Il0sWzQxLCJ3Il0sWzMsInciLCIiXSxbMjIsWzEsWzE1LCJ2Il0sWzE3LFsxNSwidiJdLCJocmVmIl1dLFs0NixbNTMsWzQxLCJ4Il0sWzMsIngiLFsyLFsxNyxbMTUsInYiXSwiaHJlZiJdLCJpbmRleE9mIixbNywiIyJdXV0sWzMsInciLFszOSxbMjMsWzE1LCJ4Il0sMF0sWzE3LFsxNSwidiJdLCJocmVmIl0sWzIsWzE3LFsxNSwidiJdLCJocmVmIl0sInN1YnN0cmluZyIsWzcsMCxbMTUsIngiXV1dXV1dXV0sWzM2LFsxNSwidyJdXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9jY2RFbURvd25sb2FkQWN0aXZpdHkiXV0sWzUyLCJmIixbMTcsWzE1LCJkIl0sIkEiXV0sWzUyLCJnIiwiZmlsZV9kb3dubG9hZCJdLFs1MiwiaCIsImlzUmVnaXN0ZXJlZCJdLFs1MiwiaSIsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXV0sWzIyLFsiYiIsWzE1LCJpIl0sWzE1LCJmIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZSJdLCJBIixbNyxbMTUsImkiXSxbMTcsWzE1LCJhIl0sImluY2x1ZGVQYXJhbXMiXV1dLFsyMixbMixbMTUsImMiXSwiZ2V0SXRlbSIsWzcsWzE1LCJoIl1dXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImoiLFsicmVxdWlyZSIsImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkxpbmtDbGljayJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZW5oYW5jZWRNZWFzdXJlbWVudCJdXSxbNTIsIm0iLFsicmVxdWlyZSIsInBhcnNlVXJsIl1dLFs1MiwibiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2VuZEd0YWdFdmVudCJdXSxbNTIsIm8iLFsyLFsxNSwibCJdLCJBIixbNywiZG93bmxvYWQiXV1dLFs1MiwicCIsWzAsIl4ocGRmfHhsc3g/fGRvY3g/fHR4dHxydGZ8Y3N2fGV4ZXxrZXl8cHAoc3x0fHR4KXw3enxwa2d8cmFyfGd6fHppcHxhdml8IiwibW92fG1wNHxtcGU/Z3x3bXZ8bWlkaT98bXAzfHdhdnx3bWEpJCJdXSxbNTIsInUiLFsiayIsWzgsImNoZWNrVmFsaWRhdGlvbiIsdHJ1ZV1dXSxbMjIsWzI4LFsxNSwidSJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV0sWzM2XV1dXSxbMixbMTUsImMiXSwic2V0SXRlbSIsWzcsWzE1LCJoIl0sdHJ1ZV1dLFsiaiIsImd0bS5saW5rQ2xpY2siLFs1MSwiIixbNywidiIsInciXSxbInciXSxbNTIsIngiLFs4LCJldmVudElkIixbMTYsWzE1LCJ2Il0sImd0bS51bmlxdWVFdmVudElkIl0sImRlZmVycmFibGUiLHRydWVdXSxbNTIsInkiLFsxNixbMTUsInYiXSwiZ3RtLmVsZW1lbnRVcmwiXV0sWzUyLCJ6IixbIm0iLFsxNSwieSJdXV0sWzIyLFsyOCxbMTUsInoiXV0sWzQ2LFszNl1dXSxbNTIsImFBIixbInIiLFsxNSwieiJdXV0sWzIyLFsyOCxbInEiLFsxNSwiYUEiXV1dLFs0NixbNTMsWzM2XV1dXSxbNTIsImFCIixbOCwibGlua19pZCIsWzE2LFsxNSwidiJdLCJndG0uZWxlbWVudElkIl0sImxpbmtfdXJsIixbInQiLFsxNSwieiJdXSwibGlua190ZXh0IixbMTYsWzE1LCJ2Il0sImd0bS5lbGVtZW50VGV4dCJdLCJmaWxlX25hbWUiLFsicyIsWzE1LCJ6Il1dLCJmaWxlX2V4dGVuc2lvbiIsWzE1LCJhQSJdXV0sWzIsWzE1LCJsIl0sIkIiLFs3LFsxNSwieCJdXV0sWyJuIixbMTUsIm8iXSxbMTUsImciXSxbMTUsImFCIl0sWzE1LCJ4Il1dXSxbMTUsInUiXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2VtX2Zvcm0iLFs0NiwiYSJdLFs1MCwieCIsWzQ2LCJhTCJdLFs1MiwiYU0iLFszMCxbMTYsWzE1LCJhTCJdLFsxNSwiciJdXSxbOF1dXSxbNDMsWzE1LCJhTSJdLCJldmVudF91c2FnZSIsWzcsWzE3LFsxNSwiZyJdLCJIIl1dXSxbNDMsWzE1LCJhTCJdLFsxNSwiciJdLFsxNSwiYU0iXV1dLFs1MCwieSIsWzQ2LCJhTCIsImFNIl0sWzUyLCJhTiIsWzMwLFsxNixbMTUsImFMIl0sWzE1LCJyIl1dLFs4XV1dLFsyMixbMTYsWzE1LCJhTSJdLCJndG0uZm9ybUNhbmNlbGVkIl0sWzQ2LFs1MyxbNDMsWzE1LCJhTiJdLFsxNyxbMTUsImkiXSwiQUoiXSx0cnVlXV1dXSxbMixbMTUsInUiXSwiQiIsWzcsWzE1LCJhTCJdLFsxNSwiYU4iXV1dXSxbNTAsInoiLFs0NiwiYUwiLCJhTSIsImFOIl0sWzUyLCJhTyIsWzIsWzE1LCJ3Il0sImZpbHRlciIsWzcsWzUxLCIiLFs3LCJhUSJdLFszNixbMjAsWzIsWzE1LCJhUSJdLCJpbmRleE9mIixbNywiQVctIl1dLDBdXV1dXV0sWzIyLFsxOCxbMTcsWzE1LCJhTyJdLCJsZW5ndGgiXSwwXSxbNDYsWzUzLFsidiIsWzE1LCJhTyJdLFsxNSwiYUwiXSxbMTUsImFNIl0sWzE1LCJhTiJdXV1dXSxbNTIsImFQIixbMixbMTUsInciXSwiZmlsdGVyIixbNyxbNTEsIiIsWzcsImFRIl0sWzM2LFsyMSxbMixbMTUsImFRIl0sImluZGV4T2YiLFs3LCJBVy0iXV0sMF1dXV1dXSxbMjIsWzE4LFsxNyxbMTUsImFQIl0sImxlbmd0aCJdLDBdLFs0NixbNTMsWzQzLFsxNSwiYU4iXSwiZGVmZXJyYWJsZSIsdHJ1ZV0sWyJ2IixbMTUsImFQIl0sWzE1LCJhTCJdLFsxNSwiYU0iXSxbMTUsImFOIl1dXV1dXSxbNTAsImFLIixbNDZdLFs1MiwiYUwiLFsibSIsWyJsIiwwLDIuMTQ3NDgzNjQ3RTldXV0sWzQxLCJhTSJdLFszLCJhTSIsMF0sWzM2LFs1MSwiIixbNywiYU4iXSxbMjIsWzIwLFsxNSwiYU4iXSxbMTUsInMiXV0sWzQ2LFs1MyxbMywiYU0iLFsiayJdXSxbMzYsWzAsWyJtIixbMTUsImFNIl1dLFsxNSwiYUwiXV1dXV0sWzQ2LFsyMixbMjAsWzE1LCJhTiJdLFsxNSwibyJdXSxbNDYsWzUzLFsyMixbMjAsWzE1LCJhTSJdLDBdLFs0NixbNTMsWzM2LFswLFsibSIsWyJrIl1dLFsxNSwiYUwiXV1dXV1dLFs1MiwiYU8iLFsiayJdXSxbMjIsWzIzLFszNyxbMTUsImFPIl0sWzE1LCJhTSJdXSwyMDBdLFs0NixbNTMsWzUyLCJhUCIsWzE1LCJhTSJdXSxbMywiYU0iLDBdLFszNixbMCxbIm0iLFsxNSwiYVAiXV0sWzE1LCJhTCJdXV1dXV0sWzMsImFNIiwwXSxbMzYsWzAsWyJtIixbMTUsImFPIl1dLFsxNSwiYUwiXV1dXV1dXV1dXV0sWzUyLCJiIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9jY2RFbUZvcm1BY3Rpdml0eSJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImUiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJnIixbMTUsIl9fbW9kdWxlX2dvbGRFdmVudFVzYWdlSWQiXV0sWzUyLCJoIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiaSIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImoiLFsxNSwiX19tb2R1bGVfYWR3b3Jkc0hpdFR5cGUiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJnZXRUaW1lc3RhbXBNaWxsaXMiXV0sWzUyLCJsIixbInJlcXVpcmUiLCJnZW5lcmF0ZVJhbmRvbSJdXSxbNTIsIm0iLFsicmVxdWlyZSIsIm1ha2VTdHJpbmciXV0sWzUyLCJuIixbMTcsWzE1LCJoIl0sIkIiXV0sWzUyLCJvIiwiZm9ybV9zdWJtaXQiXSxbNTIsInAiLCJmb3JtX3N0YXJ0Il0sWzUyLCJxIiwiaXNSZWdpc3RlcmVkIl0sWzUyLCJyIiwiZXZlbnRNZXRhZGF0YSJdLFs1MiwicyIsImNsaWNrIl0sWzUyLCJ0IixbMTcsWzE1LCJhIl0sImluc3RhbmNlRGVzdGluYXRpb25JZCJdXSxbMjIsWyJkIixbMTUsInQiXSxbMTUsIm4iXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzIsWzE1LCJjIl0sIkEiLFs3LFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl0sWzE3LFsxNSwiYSJdLCJza2lwVmFsaWRhdGlvbiJdLFsxNyxbMTUsImEiXSwiaW5jbHVkZVBhcmFtcyJdXV0sWzIyLFsyLFsxNSwiZiJdLCJnZXRJdGVtIixbNyxbMTUsInEiXV1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZiJdLCJzZXRJdGVtIixbNyxbMTUsInEiXSx0cnVlXV0sWzUyLCJ1IixbMTUsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiXV0sWzUyLCJ2IixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwidyIsWzIsWzE1LCJ1Il0sIkEiLFs3LCJmb3JtIl1dXSxbNTIsImFBIixbOF1dLFs1MiwiYUIiLFs1MSwiIixbNywiYUwiLCJhTSJdLFsyMixbMTUsImFNIl0sWzQ2LFsiYU0iXV1dLFs1MiwiYU4iLFsxNixbMTUsImFMIl0sImd0bS5lbGVtZW50SWQiXV0sWzIyLFsxNixbMTUsImFBIl0sWzE1LCJhTiJdXSxbNDYsWzM2XV1dLFs0MyxbMTUsImFBIl0sWzE1LCJhTiJdLHRydWVdLFs1MiwiYU8iLFs4LCJmb3JtX2lkIixbMTUsImFOIl0sImZvcm1fbmFtZSIsWzE2LFsxNSwiYUwiXSwiZ3RtLmludGVyYWN0ZWRGb3JtTmFtZSJdLCJmb3JtX2Rlc3RpbmF0aW9uIixbMTYsWzE1LCJhTCJdLCJndG0uZWxlbWVudFVybCJdLCJmb3JtX2xlbmd0aCIsWzE2LFsxNSwiYUwiXSwiZ3RtLmludGVyYWN0ZWRGb3JtTGVuZ3RoIl0sImZpcnN0X2ZpZWxkX2lkIixbMTYsWzE1LCJhTCJdLCJndG0uaW50ZXJhY3RlZEZvcm1GaWVsZElkIl0sImZpcnN0X2ZpZWxkX25hbWUiLFsxNixbMTUsImFMIl0sImd0bS5pbnRlcmFjdGVkRm9ybUZpZWxkTmFtZSJdLCJmaXJzdF9maWVsZF90eXBlIixbMTYsWzE1LCJhTCJdLCJndG0uaW50ZXJhY3RlZEZvcm1GaWVsZFR5cGUiXSwiZmlyc3RfZmllbGRfcG9zaXRpb24iLFsxNixbMTUsImFMIl0sImd0bS5pbnRlcmFjdGVkRm9ybUZpZWxkUG9zaXRpb24iXV1dLFs1MiwiYVAiLFs4LCJldmVudElkIixbMTYsWzE1LCJhTCJdLCJndG0udW5pcXVlRXZlbnRJZCJdXV0sWyJ4IixbMTUsImFQIl1dLFsieSIsWzE1LCJhUCJdLFsxNSwiYUwiXV0sWzQzLFsxNixbMTUsImFQIl0sWzE1LCJyIl1dLFsxNyxbMTUsImkiXSwiQUEiXSwiZm9ybV9zdGFydCJdLFsieiIsWzE1LCJwIl0sWzE1LCJhTyJdLFsxNSwiYVAiXV1dXSxbNTIsImFDIixbImFLIl1dLFs1MiwiYUQiLFs1MSwiIixbNywiYUwiLCJhTSJdLFs1MiwiYU4iLFsiYUMiLFsxNSwibyJdXV0sWyJhQiIsWzE1LCJhTCJdLFs0NF1dLFs1MiwiYU8iLFs4LCJmb3JtX2lkIixbMTYsWzE1LCJhTCJdLCJndG0uZWxlbWVudElkIl0sImZvcm1fbmFtZSIsWzE2LFsxNSwiYUwiXSwiZ3RtLmludGVyYWN0ZWRGb3JtTmFtZSJdLCJmb3JtX2Rlc3RpbmF0aW9uIixbMTYsWzE1LCJhTCJdLCJndG0uZWxlbWVudFVybCJdLCJmb3JtX2xlbmd0aCIsWzE2LFsxNSwiYUwiXSwiZ3RtLmludGVyYWN0ZWRGb3JtTGVuZ3RoIl0sImZvcm1fc3VibWl0X3RleHQiLFsxNixbMTUsImFMIl0sImd0bS5mb3JtU3VibWl0RWxlbWVudFRleHQiXV1dLFs0MyxbMTUsImFPIl0sImV2ZW50X2NhbGxiYWNrIixbMTUsImFNIl1dLFs1MiwiYVAiLFs4LCJldmVudElkIixbMTYsWzE1LCJhTCJdLCJndG0udW5pcXVlRXZlbnRJZCJdXV0sWyJ4IixbMTUsImFQIl1dLFsieSIsWzE1LCJhUCJdLFsxNSwiYUwiXV0sWzQzLFsxNixbMTUsImFQIl0sWzE1LCJyIl1dLFsxNyxbMTUsImkiXSwiQUEiXSwiZm9ybV9zdWJtaXQiXSxbNDMsWzE2LFsxNSwiYVAiXSxbMTUsInIiXV0sWzE3LFsxNSwiaSJdLCJTIl0sWzE1LCJhTiJdXSxbInoiLFsxNSwibyJdLFsxNSwiYU8iXSxbMTUsImFQIl1dXV0sWzUyLCJhRSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuYWRkRGF0YUxheWVyRXZlbnRMaXN0ZW5lciJdXSxbNTIsImFGIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1TdWJtaXQiXV0sWzUyLCJhRyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25Gb3JtSW50ZXJhY3Rpb24iXV0sWzUyLCJhSCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25DbGljayJdXSxbNTIsImFJIixbImFHIl1dLFsyMixbMjgsWzE1LCJhSSJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV0sWzM2XV1dXSxbImFFIiwiZ3RtLmZvcm1JbnRlcmFjdCIsWzE1LCJhQiJdLFsxNSwiYUkiXV0sWzUyLCJhSiIsWyJhRiIsWzgsImNoZWNrVmFsaWRhdGlvbiIsZmFsc2UsIndhaXRGb3JUYWdzIixmYWxzZV1dXSxbMjIsWzI4LFsxNSwiYUoiXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25GYWlsdXJlIixbN11dLFszNl1dXV0sWyJhRSIsImd0bS5mb3JtU3VibWl0IixbMTUsImFEIl0sWzE1LCJhSiJdXSxbMjIsWyJlIixbMTcsWzE1LCJiIl0sIkNQIl1dLFs0NixbNTMsWzUyLCJhTCIsWyJhSCIsWzgsInVzZVYyRXZlbnROYW1lIix0cnVlLCJjc3NTZWxlY3RvciIsWzAsWzAsWzAsWzAsWzAsWzAsWzAsImZvcm0gYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0sICIsImZvcm0gYnV0dG9uOm5vdChbdHlwZV0pLCJdLCJmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sICJdLCJmb3JtIGlucHV0W3R5cGU9XCJpbWFnZVwiXSwgIl0sImJ1dHRvbltmb3JtXVt0eXBlPVwic3VibWl0XCJdLCAiXSwiYnV0dG9uW2Zvcm1dOm5vdChbdHlwZV0pLCAiXSwiaW5wdXRbdHlwZT1cInN1Ym1pdFwiXVtmb3JtXSwgIl0sImlucHV0W3R5cGU9XCJpbWFnZVwiXVtmb3JtXSJdXV1dLFs1MCwiYU0iLFs0NiwiYU4iLCJhTyJdLFs1MiwiYVAiLFs4LCJldmVudF9jYWxsYmFjayIsWzE1LCJhTyJdXV0sWzUyLCJhUSIsWzgsImV2ZW50SWQiLFsxNixbMTUsImFOIl0sImd0bS51bmlxdWVFdmVudElkIl1dXSxbIngiLFsxNSwiYVEiXV0sWyJ5IixbMTUsImFRIl0sWzE1LCJhTiJdXSxbNDMsWzE2LFsxNSwiYVEiXSxbMTUsInIiXV0sWzE3LFsxNSwiaSJdLCJBUiJdLFsxNyxbMTUsImoiXSwiSyJdXSxbNDMsWzE2LFsxNSwiYVEiXSxbMTUsInIiXV0sWzE3LFsxNSwiaSJdLCJBQSJdLCJjbGljayJdLFs0MyxbMTYsWzE1LCJhUSJdLFsxNSwiciJdXSxbMTcsWzE1LCJpIl0sIlMiXSxbImFDIixbMTUsInMiXV1dLFsieiIsWzE1LCJvIl0sWzE1LCJhUCJdLFsxNSwiYVEiXV1dLFsiYUUiLCJndG0uY2xpY2stdjIiLFsxNSwiYU0iXSxbMTUsImFMIl1dXV1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2NjZF9lbV9vdXRib3VuZF9jbGljayIsWzQ2LCJhIl0sWzUwLCJyIixbNDYsInciXSxbMjIsWzI4LFsxNSwidyJdXSxbNDYsWzM2LFs0NF1dXV0sWzQxLCJ4Il0sWzMsIngiLCIiXSxbMjIsWzEsWzE1LCJ3Il0sWzE3LFsxNSwidyJdLCJocmVmIl1dLFs0NixbNTMsWzQxLCJ5Il0sWzMsInkiLFsyLFsxNyxbMTUsInciXSwiaHJlZiJdLCJpbmRleE9mIixbNywiIyJdXV0sWzMsIngiLFszOSxbMjMsWzE1LCJ5Il0sMF0sWzE3LFsxNSwidyJdLCJocmVmIl0sWzIsWzE3LFsxNSwidyJdLCJocmVmIl0sInN1YnN0cmluZyIsWzcsMCxbMTUsInkiXV1dXV1dXV0sWzM2LFsxNSwieCJdXV0sWzUwLCJzIixbNDYsInciXSxbMjIsWzI4LFsxNSwidyJdXSxbNDYsWzM2LFs0NF1dXV0sWzQxLCJ4Il0sWzMsIngiLFsxNyxbMTUsInciXSwiaG9zdG5hbWUiXV0sWzUyLCJ5IixbMixbMTUsIngiXSwibWF0Y2giLFs3LCJed3d3XFxkKlxcLiJdXV0sWzIyLFsxLFsxNSwieSJdLFsxNixbMTUsInkiXSwwXV0sWzQ2LFszLCJ4IixbMixbMTUsIngiXSwic3Vic3RyaW5nIixbNyxbMTcsWzE2LFsxNSwieSJdLDBdLCJsZW5ndGgiXV1dXV1dLFszNixbMTUsIngiXV1dLFs1MCwidCIsWzQ2LCJ3Il0sWzIyLFsyOCxbMTUsInciXV0sWzQ2LFszNixmYWxzZV1dXSxbNTIsIngiLFsyLFsxNyxbMTUsInciXSwiaG9zdG5hbWUiXSwidG9Mb3dlckNhc2UiLFs3XV1dLFsyMixbMjgsWzE1LCJ4Il1dLFs0NixbNTMsWzM2LGZhbHNlXV1dXSxbNDEsInkiXSxbMywieSIsWzIsWyJzIixbIm8iLFsibiJdXV0sInRvTG93ZXJDYXNlIixbN11dXSxbNDEsInoiXSxbMywieiIsWzM3LFsxNyxbMTUsIngiXSwibGVuZ3RoIl0sWzE3LFsxNSwieSJdLCJsZW5ndGgiXV1dLFsyMixbMSxbMTgsWzE1LCJ6Il0sMF0sWzI5LFsyLFsxNSwieSJdLCJjaGFyQXQiLFs3LDBdXSwiLiJdXSxbNDYsWzUzLFszMixbMTUsInoiXSxbMywieiIsWzM3LFsxNSwieiJdLDFdXV0sWzMsInkiLFswLCIuIixbMTUsInkiXV1dXV1dLFsyMixbMSxbMTksWzE1LCJ6Il0sMF0sWzEyLFsyLFsxNSwieCJdLCJpbmRleE9mIixbNyxbMTUsInkiXSxbMTUsInoiXV1dLFsxNSwieiJdXV0sWzQ2LFs1MyxbMzYsZmFsc2VdXV1dLFszNix0cnVlXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9jY2RFbU91dGJvdW5kQ2xpY2tBY3Rpdml0eSJdXSxbNTIsImYiLFsxNyxbMTUsImQiXSwiRCJdXSxbNTIsImciLCJjbGljayJdLFs1MiwiaCIsImlzUmVnaXN0ZXJlZCJdLFs1MiwiaSIsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXV0sWzIyLFsiYiIsWzE1LCJpIl0sWzE1LCJmIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZSJdLCJBIixbNyxbMTUsImkiXSxbMTcsWzE1LCJhIl0sImluY2x1ZGVQYXJhbXMiXV1dLFsyMixbMixbMTUsImMiXSwiZ2V0SXRlbSIsWzcsWzE1LCJoIl1dXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImoiLFsicmVxdWlyZSIsImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkxpbmtDbGljayJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZW5oYW5jZWRNZWFzdXJlbWVudCJdXSxbNTIsIm0iLFsicmVxdWlyZSIsImludGVybmFsLmdldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciJdXSxbNTIsIm4iLFsicmVxdWlyZSIsImdldFVybCJdXSxbNTIsIm8iLFsicmVxdWlyZSIsInBhcnNlVXJsIl1dLFs1MiwicCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2VuZEd0YWdFdmVudCJdXSxbNTIsInEiLFsyLFsxNSwibCJdLCJBIixbNywib3V0Ym91bmRfY2xpY2siXV1dLFs1MiwidSIsWyJtIixbMTUsImkiXSwiY3Jvc3NfZG9tYWluX2NvbmRpdGlvbnMiXV0sWzUyLCJ2IixbImsiLFs4LCJhZmZpbGlhdGVEb21haW5zIixbMTUsInUiXSwiY2hlY2tWYWxpZGF0aW9uIix0cnVlLCJ3YWl0Rm9yVGFncyIsZmFsc2VdXV0sWzIyLFsyOCxbMTUsInYiXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25GYWlsdXJlIixbN11dLFszNl1dXV0sWzIsWzE1LCJjIl0sInNldEl0ZW0iLFs3LFsxNSwiaCJdLHRydWVdXSxbImoiLCJndG0ubGlua0NsaWNrIixbNTEsIiIsWzcsInciLCJ4Il0sWzUyLCJ5IixbIm8iLFsxNixbMTUsInciXSwiZ3RtLmVsZW1lbnRVcmwiXV1dLFsyMixbMjgsWyJ0IixbMTUsInkiXV1dLFs0NixbNTMsWyJ4Il0sWzM2XV1dXSxbNTIsInoiLFs4LCJsaW5rX2lkIixbMTYsWzE1LCJ3Il0sImd0bS5lbGVtZW50SWQiXSwibGlua19jbGFzc2VzIixbMTYsWzE1LCJ3Il0sImd0bS5lbGVtZW50Q2xhc3NlcyJdLCJsaW5rX3VybCIsWyJyIixbMTUsInkiXV0sImxpbmtfZG9tYWluIixbInMiLFsxNSwieSJdXSwib3V0Ym91bmQiLHRydWVdXSxbNDMsWzE1LCJ6Il0sImV2ZW50X2NhbGxiYWNrIixbMTUsIngiXV0sWzUyLCJhQSIsWzgsImV2ZW50SWQiLFsxNixbMTUsInciXSwiZ3RtLnVuaXF1ZUV2ZW50SWQiXSwiZGVmZXJyYWJsZSIsdHJ1ZV1dLFsyLFsxNSwibCJdLCJCIixbNyxbMTUsImFBIl1dXSxbInAiLFsxNSwicSJdLFsxNSwiZyJdLFsxNSwieiJdLFsxNSwiYUEiXV1dLFsxNSwidiJdXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfZW1fcGFnZV92aWV3IixbNDYsImEiXSxbMjIsWzI4LFsxNyxbMTUsImEiXSwiaGlzdG9yeUV2ZW50cyJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciJdXSxbNTIsImQiLFsicmVxdWlyZSIsInRlbXBsYXRlU3RvcmFnZSJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfY2NkRW1QYWdlVmlld0FjdGl2aXR5Il1dLFs1MiwiZiIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImciLFsxNyxbMTUsImYiXSwiQyJdXSxbNTIsImgiLCJwYWdlX3ZpZXciXSxbNTIsImkiLCJpc1JlZ2lzdGVyZWQiXSxbNTIsImoiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFsyMixbImIiLFsxNSwiaiJdLFsxNSwiZyJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbMixbMTUsImUiXSwiQSIsWzcsWzE1LCJqIl1dXSxbMjIsWzIsWzE1LCJkIl0sImdldEl0ZW0iLFs3LFsxNSwiaSJdXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzUyLCJrIixbInJlcXVpcmUiLCJpbnRlcm5hbC5hZGREYXRhTGF5ZXJFdmVudExpc3RlbmVyIl1dLFs1MiwibCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25IaXN0b3J5Q2hhbmdlIl1dLFs1MiwibSIsWzE1LCJfX21vZHVsZV9lbmhhbmNlZE1lYXN1cmVtZW50Il1dLFs1MiwibiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2VuZEd0YWdFdmVudCJdXSxbNTIsIm8iLFsyLFsxNSwibSJdLCJBIixbNywicGFnZV92aWV3Il1dXSxbNTIsInAiLFs4LCJpbnRlcnZhbCIsMTAwMCwidXNlVjJFdmVudE5hbWUiLHRydWVdXSxbNTIsInEiLFsibCIsWzE1LCJwIl1dXSxbMjIsWzI4LFsxNSwicSJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV0sWzM2XV1dXSxbMixbMTUsImQiXSwic2V0SXRlbSIsWzcsWzE1LCJpIl0sdHJ1ZV1dLFsiayIsImd0bS5oaXN0b3J5Q2hhbmdlLXYyIixbNTEsIiIsWzcsInIiLCJzIl0sWyJzIl0sWzUyLCJ0IixbMTYsWzE1LCJyIl0sImd0bS5vbGRVcmwiXV0sWzIyLFsyMCxbMTYsWzE1LCJyIl0sImd0bS5uZXdVcmwiXSxbMTUsInQiXV0sWzQ2LFszNl1dXSxbNTIsInUiLFsxNixbMTUsInIiXSwiZ3RtLmhpc3RvcnlDaGFuZ2VTb3VyY2UiXV0sWzIyLFsxLFsxLFsyMSxbMTUsInUiXSwicHVzaFN0YXRlIl0sWzIxLFsxNSwidSJdLCJwb3BzdGF0ZSJdXSxbMjEsWzE1LCJ1Il0sInJlcGxhY2VTdGF0ZSJdXSxbNDYsWzUzLFszNl1dXV0sWzUyLCJ2IixbOF1dLFsyMixbMTcsWzE1LCJhIl0sImluY2x1ZGVQYXJhbXMiXSxbNDYsWzUzLFs0MyxbMTUsInYiXSwicGFnZV9sb2NhdGlvbiIsWzE2LFsxNSwiciJdLCJndG0ubmV3VXJsIl1dLFs0MyxbMTUsInYiXSwicGFnZV9yZWZlcnJlciIsWzE1LCJ0Il1dXV1dLFs1MiwidyIsWzgsImV2ZW50SWQiLFsxNixbMTUsInIiXSwiZ3RtLnVuaXF1ZUV2ZW50SWQiXV1dLFsyMixbMjEsWzE3LFsxNSwiYSJdLCJkZWZlclBhZ2VWaWV3Il0sZmFsc2VdLFs0NixbNTMsWzQzLFsxNSwidyJdLCJkZWZlcnJhYmxlIix0cnVlXV1dXSxbMixbMTUsIm0iXSwiQiIsWzcsWzE1LCJ3Il1dXSxbIm4iLFsxNSwibyJdLFsxNSwiaCJdLFsxNSwidiJdLFsxNSwidyJdXV0sWzE1LCJxIl1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2NjZF9lbV9zY3JvbGwiLFs0NiwiYSJdLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwidGVtcGxhdGVTdG9yYWdlIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfY2NkRW1TY3JvbGxBY3Rpdml0eSJdXSxbNTIsImYiLFsxNyxbMTUsImQiXSwiRSJdXSxbNTIsImciLCJzY3JvbGwiXSxbNTIsImgiLCJpc1JlZ2lzdGVyZWQiXSxbNTIsImkiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFsyMixbImIiLFsxNSwiaSJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbMixbMTUsImUiXSwiQSIsWzcsWzE1LCJpIl0sWzE3LFsxNSwiYSJdLCJpbmNsdWRlUGFyYW1zIl1dXSxbMjIsWzIsWzE1LCJjIl0sImdldEl0ZW0iLFs3LFsxNSwiaCJdXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzUyLCJqIixbInJlcXVpcmUiLCJpbnRlcm5hbC5hZGREYXRhTGF5ZXJFdmVudExpc3RlbmVyIl1dLFs1MiwiayIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25TY3JvbGwiXV0sWzUyLCJsIixbMTUsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiXV0sWzUyLCJtIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwibiIsWzIsWzE1LCJsIl0sIkEiLFs3LCJzY3JvbGwiXV1dLFs1MiwibyIsWyJrIixbOCwidmVydGljYWxUaHJlc2hvbGRVbml0cyIsIlBFUkNFTlQiLCJ2ZXJ0aWNhbFRocmVzaG9sZHMiLDkwXV1dLFsyMixbMjgsWzE1LCJvIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uRmFpbHVyZSIsWzddXSxbMzZdXV1dLFsyLFsxNSwiYyJdLCJzZXRJdGVtIixbNyxbMTUsImgiXSx0cnVlXV0sWyJqIiwiZ3RtLnNjcm9sbERlcHRoIixbNTEsIiIsWzcsInAiLCJxIl0sWyJxIl0sWzUyLCJyIixbOCwiZXZlbnRJZCIsWzE2LFsxNSwicCJdLCJndG0udW5pcXVlRXZlbnRJZCJdLCJkZWZlcnJhYmxlIix0cnVlXV0sWzUyLCJzIixbOCwicGVyY2VudF9zY3JvbGxlZCIsWzE2LFsxNSwicCJdLCJndG0uc2Nyb2xsVGhyZXNob2xkIl1dXSxbMixbMTUsImwiXSwiQiIsWzcsWzE1LCJyIl1dXSxbIm0iLFsxNSwibiJdLFsxNSwiZyJdLFsxNSwicyJdLFsxNSwiciJdXV0sWzE1LCJvIl1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2NjZF9lbV9zaXRlX3NlYXJjaCIsWzQ2LCJhIl0sWzUyLCJiIixbInJlcXVpcmUiLCJnZXRRdWVyeVBhcmFtZXRlcnMiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiZ2V0Q29udGFpbmVyVmVyc2lvbiJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfZmVhdHVyZXMiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5pc0ZlYXR1cmVFbmFibGVkIl1dLFs1MiwiZyIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImgiLFsxNSwiX19tb2R1bGVfY2NkRW1TaXRlU2VhcmNoQWN0aXZpdHkiXV0sWzUyLCJpIixbMixbMTUsImgiXSwiQSIsWzcsWzE3LFsxNSwiYSJdLCJzZWFyY2hRdWVyeVBhcmFtcyJdLFsxNSwiYiJdXV1dLFs1MiwiaiIsWzMwLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl0sWzE3LFsiZCJdLCJjb250YWluZXJJZCJdXV0sWzUyLCJrIixbOCwiZGVmZXJyYWJsZSIsdHJ1ZSwiZXZlbnRJZCIsWzE3LFsxNSwiYSJdLCJndG1FdmVudElkIl0sImV2ZW50TWV0YWRhdGEiLFs4LCJlbV9ldmVudCIsdHJ1ZV1dXSxbMjIsWzE1LCJpIl0sWzQ2LFs1MyxbNTIsImwiLFszOSxbMjgsWzI4LFsxNyxbMTUsImEiXSwiaW5jbHVkZVBhcmFtcyJdXV0sWzIsWzE1LCJoIl0sIkIiLFs3LFsxNSwiaSJdLFsxNyxbMTUsImEiXSwiYWRkaXRpb25hbFF1ZXJ5UGFyYW1zIl0sWzE1LCJiIl1dXSxbOF1dXSxbNDMsWzE3LFsxNSwiayJdLCJldmVudE1ldGFkYXRhIl0sWzE3LFsxNSwiZyJdLCJaIl0sImEiXSxbImMiLFsxNSwiaiJdLCJ2aWV3X3NlYXJjaF9yZXN1bHRzIixbMTUsImwiXSxbMTUsImsiXV1dXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2VtX3ZpZGVvIixbNDYsImEiXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsInRlbXBsYXRlU3RvcmFnZSJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfYXV0b0V2ZW50QmxvY2tTY2hlbWEiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX2NjZEVtVmlkZW9BY3Rpdml0eSJdXSxbNTIsImYiLFsxNyxbMTUsImQiXSwiRiJdXSxbNTIsImciLCJ2aWRlb19zdGFydCJdLFs1MiwiaCIsInZpZGVvX3Byb2dyZXNzIl0sWzUyLCJpIiwidmlkZW9fY29tcGxldGUiXSxbNTIsImoiLCJpc1JlZ2lzdGVyZWQiXSxbNTIsImsiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFsyMixbImIiLFsxNSwiayJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbMixbMTUsImUiXSwiQSIsWzcsWzE1LCJrIl0sWzE3LFsxNSwiYSJdLCJpbmNsdWRlUGFyYW1zIl1dXSxbMjIsWzIsWzE1LCJjIl0sImdldEl0ZW0iLFs3LFsxNSwiaiJdXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzUyLCJsIixbInJlcXVpcmUiLCJpbnRlcm5hbC5hZGREYXRhTGF5ZXJFdmVudExpc3RlbmVyIl1dLFs1MiwibSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25Zb3VUdWJlQWN0aXZpdHkiXV0sWzUyLCJuIixbMTUsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiXV0sWzUyLCJvIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwicCIsWzIsWzE1LCJuIl0sIkEiLFs3LCJ2aWRlbyJdXV0sWzUyLCJxIixbIm0iLFs4LCJjYXB0dXJlQ29tcGxldGUiLHRydWUsImNhcHR1cmVTdGFydCIsdHJ1ZSwicHJvZ3Jlc3NUaHJlc2hvbGRzUGVyY2VudCIsWzcsMTAsMjUsNTAsNzVdXV1dLFsyMixbMjgsWzE1LCJxIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uRmFpbHVyZSIsWzddXSxbMzZdXV1dLFsyLFsxNSwiYyJdLCJzZXRJdGVtIixbNyxbMTUsImoiXSx0cnVlXV0sWyJsIiwiZ3RtLnZpZGVvIixbNTEsIiIsWzcsInIiLCJzIl0sWyJzIl0sWzUyLCJ0IixbMTYsWzE1LCJyIl0sImd0bS52aWRlb1N0YXR1cyJdXSxbNDEsInUiXSxbMjIsWzIwLFsxNSwidCJdLCJzdGFydCJdLFs0NixbNTMsWzMsInUiLFsxNSwiZyJdXV1dLFs0NixbMjIsWzIwLFsxNSwidCJdLCJwcm9ncmVzcyJdLFs0NixbNTMsWzMsInUiLFsxNSwiaCJdXV1dLFs0NixbMjIsWzIwLFsxNSwidCJdLCJjb21wbGV0ZSJdLFs0NixbNTMsWzMsInUiLFsxNSwiaSJdXV1dLFs0NixbNTMsWzM2XV1dXV1dXV0sWzUyLCJ2IixbOCwidmlkZW9fY3VycmVudF90aW1lIixbMTYsWzE1LCJyIl0sImd0bS52aWRlb0N1cnJlbnRUaW1lIl0sInZpZGVvX2R1cmF0aW9uIixbMTYsWzE1LCJyIl0sImd0bS52aWRlb0R1cmF0aW9uIl0sInZpZGVvX3BlcmNlbnQiLFsxNixbMTUsInIiXSwiZ3RtLnZpZGVvUGVyY2VudCJdLCJ2aWRlb19wcm92aWRlciIsWzE2LFsxNSwiciJdLCJndG0udmlkZW9Qcm92aWRlciJdLCJ2aWRlb190aXRsZSIsWzE2LFsxNSwiciJdLCJndG0udmlkZW9UaXRsZSJdLCJ2aWRlb191cmwiLFsxNixbMTUsInIiXSwiZ3RtLnZpZGVvVXJsIl0sInZpc2libGUiLFsxNixbMTUsInIiXSwiZ3RtLnZpZGVvVmlzaWJsZSJdXV0sWzUyLCJ3IixbOCwiZXZlbnRJZCIsWzE2LFsxNSwiciJdLCJndG0udW5pcXVlRXZlbnRJZCJdLCJkZWZlcnJhYmxlIix0cnVlXV0sWzIsWzE1LCJuIl0sIkIiLFs3LFsxNSwidyJdXV0sWyJvIixbMTUsInAiXSxbMTUsInUiXSxbMTUsInYiXSxbMTUsInciXV1dLFsxNSwicSJdXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfZ2FfZmlyc3QiLFs0NiwiYSJdLFs1MCwiZSIsWzQ2LCJmIl0sWzIsWzE1LCJjIl0sIkEiLFs3LFsxNSwiZiJdXV0sWzIsWzE1LCJkIl0sIkEiLFs3LFsxNSwiZiJdXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfdGFza1BsYXRmb3JtRGV0ZWN0aW9uIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV90YXNrU2V0VGVzdEhpdFBhcmFtcyJdXSxbImIiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl0sWzUxLCIiLFs3LCJmIl0sWyJlIixbMTUsImYiXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfZ2FfbGFzdCIsWzQ2LCJhIl0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2dhX3JlZ3Njb3BlIixbNDYsImEiXSxbNTIsImIiLFsxNSwiX19tb2R1bGVfY2NkR2FSZWdpb25TY29wZWRTZXR0aW5ncyJdXSxbNTIsImMiLFsyLFsxNSwiYiJdLCJCIixbNyxbMTUsImEiXV1dXSxbMixbMTUsImIiXSwiQSIsWzcsWzE1LCJhIl0sWzE1LCJjIl1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19lIixbNDYsImEiXSxbMzYsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFsicmVxdWlyZSIsImludGVybmFsLmdldEV2ZW50RGF0YSJdXSxbIiQwIiwiZXZlbnQiXV1dXQogLFs1MCwiX19nY3QiLFs0NiwiYSJdLFs1MCwiZyIsWzQ2LCJtIl0sWzUyLCJuIixbN11dLFs2NSwibyIsWzE1LCJtIl0sWzQ2LFs1MyxbNTIsInAiLFsiYiIsWzE1LCJvIl1dXSxbMjIsWzIxLFsxNSwicCJdLFs0NV1dLFs0NixbMixbMTUsIm4iXSwicHVzaCIsWzcsWzE1LCJwIl1dXV1dXV1dLFszNixbMTUsIm4iXV1dLFs1MCwiaCIsWzQ2LCJtIl0sWzUyLCJuIixbMTcsWzE1LCJtIl0sImxpbmtlciJdXSxbMjIsWzEsWzE1LCJuIl0sWzE2LFsxNSwibiJdLCJkb21haW5zIl1dLFs0NixbNTMsWzQzLFsxNSwibiJdLCJkb21haW5zIixbImciLFsxNixbMTUsIm4iXSwiZG9tYWlucyJdXV1dXV0sWzM2LFsxNSwibiJdXV0sWzUwLCJpIixbNDYsIm0iXSxbNTIsIm4iLFsxNyxbMTUsIm0iXSwicmVmZXJyYWxFeGNsdXNpb25EZWZpbml0aW9uIl1dLFsyMixbMSxbMTUsIm4iXSxbMTYsWzE1LCJuIl0sImluY2x1ZGVfY29uZGl0aW9ucyJdXSxbNDYsWzUzLFs0MyxbMTUsIm4iXSwiaW5jbHVkZV9jb25kaXRpb25zIixbImciLFsxNixbMTUsIm4iXSwiaW5jbHVkZV9jb25kaXRpb25zIl1dXV1dXSxbMzYsWzE1LCJuIl1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNyZWF0ZVJlZ2V4Il1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiZ2V0VHlwZSJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLm1lcmdlUmVtb3RlQ29uZmlnIl1dLFs1MiwiZSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJEZXN0aW5hdGlvbiJdXSxbNTIsImYiLFsicmVxdWlyZSIsInRlbXBsYXRlU3RvcmFnZSJdXSxbNTIsImoiLFszMCxbMixbMTUsImYiXSwiZ2V0SXRlbSIsWzcsInJlZ2V4Il1dLFsiYiIsIlsuKitcXC0/XiR7fSgpfFtcXF1cXFxcXSIsImciXV1dLFsyLFsxNSwiZiJdLCJzZXRJdGVtIixbNywicmVnZXgiLFsxNSwiaiJdXV0sWzUyLCJrIixbOF1dLFs1MiwibCIsWzE3LFsxNSwiYSJdLCJzZXNzaW9uRHVyYXRpb24iXV0sWzIyLFsxOCxbMTUsImwiXSwwXSxbNDYsWzUzLFs0MyxbMTUsImsiXSwic2Vzc2lvbl9kdXJhdGlvbiIsWzE1LCJsIl1dXV1dLFs0MyxbMTUsImsiXSwiZXZlbnRfc2V0dGluZ3MiLFsxNyxbMTUsImEiXSwiZXZlbnRTZXR0aW5ncyJdXSxbNDMsWzE1LCJrIl0sImR5bmFtaWNfZXZlbnRfc2V0dGluZ3MiLFsxNyxbMTUsImEiXSwiZHluYW1pY0V2ZW50U2V0dGluZ3MiXV0sWzQzLFsxNSwiayJdLCJnb29nbGVfc2lnbmFscyIsWzIwLFsxNyxbMTUsImEiXSwiZ29vZ2xlU2lnbmFscyJdLDFdXSxbNDMsWzE1LCJrIl0sImdvb2dsZV90bGQiLFsxNyxbMTUsImEiXSwiZm9yZWlnblRsZCJdXSxbNDMsWzE1LCJrIl0sImdhX3Jlc3RyaWN0X2RvbWFpbiIsWzIwLFsxNyxbMTUsImEiXSwicmVzdHJpY3REb21haW4iXSwxXV0sWzQzLFsxNSwiayJdLCJpbnRlcm5hbF90cmFmZmljX3Jlc3VsdHMiLFsxNyxbMTUsImEiXSwiaW50ZXJuYWxUcmFmZmljUmVzdWx0cyJdXSxbNDMsWzE1LCJrIl0sImxpbmtlciIsWyJoIixbMTUsImEiXV1dLFs0MyxbMTUsImsiXSwicmVmZXJyYWxfZXhjbHVzaW9uX2RlZmluaXRpb24iLFsiaSIsWzE1LCJhIl1dXSxbImQiLFsxNyxbMTUsImEiXSwidHJhY2tpbmdJZCJdLFsxNSwiayJdXSxbImUiLFsxNyxbMTUsImEiXSwidHJhY2tpbmdJZCJdXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19vZ3RfMXBfZGF0YV92MiIsWzQ2LCJhIl0sWzUwLCJwIixbNDYsInIiLCJzIiwidCIsInUiXSxbMjIsWzIwLFsxNixbMTUsInMiXSwidHlwZSJdLFsxNSwidCJdXSxbNDYsWzUzLFsyMixbMjgsWzE1LCJyIl1dLFs0NixbNTMsWzMsInIiLFs4XV1dXV0sWzIyLFsyOCxbMTYsWzE1LCJyIl0sWzE1LCJ0Il1dXSxbNDYsWzUzLFs0MyxbMTUsInIiXSxbMTUsInQiXSxbMTYsWzE1LCJzIl0sInVzZXJEYXRhIl1dLFs1MiwidiIsWzgsIm1vZGUiLCJhIl1dLFsyMixbMTYsWzE1LCJzIl0sInRhZ05hbWUiXSxbNDYsWzUzLFs0MyxbMTUsInYiXSwibG9jYXRpb24iLFsxNixbMTUsInMiXSwidGFnTmFtZSJdXV1dXSxbMjIsWzE2LFsxNSwicyJdLCJxdWVyeVNlbGVjdG9yIl0sWzQ2LFs1MyxbNDMsWzE1LCJ2Il0sInNlbGVjdG9yIixbMTYsWzE1LCJzIl0sInF1ZXJ5U2VsZWN0b3IiXV1dXV0sWzQzLFsxNSwidSJdLFsxNSwidCJdLFsxNSwidiJdXV1dXV1dXSxbMzYsWzE1LCJyIl1dXSxbNTAsInEiLFs0NiwiciIsInMiLCJ0Il0sWzIyLFsyOCxbMTYsWzE1LCJhIl0sWzE1LCJ0Il1dXSxbNDYsWzM2XV1dLFs0MyxbMTUsInIiXSxbMTUsInMiXSxbOCwidmFsdWUiLFsxNixbMTUsImEiXSxbMTUsInQiXV1dXV0sWzIyLFsyOCxbMTcsWzE1LCJhIl0sImlzRW5hYmxlZCJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImIiLFsicmVxdWlyZSIsIk9iamVjdCJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVGbGFncyJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfZmVhdHVyZXMiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXREZXN0aW5hdGlvbklkcyJdXSxbNTIsImciLFsicmVxdWlyZSIsImludGVybmFsLmRldGVjdFVzZXJQcm92aWRlZERhdGEiXV0sWzUyLCJoIixbInJlcXVpcmUiLCJxdWVyeVBlcm1pc3Npb24iXV0sWzUyLCJpIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRSZW1vdGVDb25maWdQYXJhbWV0ZXIiXV0sWzUyLCJqIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiayIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsIm0iLFsiYyIsWzE3LFsxNSwiZSJdLCJBVCJdXV0sWzUyLCJuIixbMzAsWyJmIl0sWzddXV0sWzUyLCJvIixbOCwiZW5hYmxlX2NvZGUiLHRydWVdXSxbMjIsWzE3LFsxNSwiYSJdLCJpc0F1dG9FbmFibGVkIl0sWzQ2LFs1MyxbNTIsInIiLFs3XV0sWzIyLFsxLFsxNyxbMTUsImEiXSwiYXV0b0NvbGxlY3RFeGNsdXNpb25TZWxlY3RvcnMiXSxbMTcsWzE3LFsxNSwiYSJdLCJhdXRvQ29sbGVjdEV4Y2x1c2lvblNlbGVjdG9ycyJdLCJsZW5ndGgiXV0sWzQ2LFs1MyxbNTMsWzQxLCJ1Il0sWzMsInUiLDBdLFs2MyxbNywidSJdLFsyMyxbMTUsInUiXSxbMTcsWzE3LFsxNSwiYSJdLCJhdXRvQ29sbGVjdEV4Y2x1c2lvblNlbGVjdG9ycyJdLCJsZW5ndGgiXV0sWzMzLFsxNSwidSJdLFszLCJ1IixbMCxbMTUsInUiXSwxXV1dLFs0NixbNTMsWzUyLCJ2IixbMTcsWzE2LFsxNyxbMTUsImEiXSwiYXV0b0NvbGxlY3RFeGNsdXNpb25TZWxlY3RvcnMiXSxbMTUsInUiXV0sImV4Y2x1c2lvblNlbGVjdG9yIl1dLFsyMixbMTUsInYiXSxbNDYsWzUzLFsyLFsxNSwiciJdLCJwdXNoIixbNyxbMTUsInYiXV1dXV1dXV1dXV1dXSxbNTIsInMiLFsxNyxbMTUsImEiXSwiaXNBdXRvQ29sbGVjdFBpaUVuYWJsZWRGbGFnIl1dLFs1MiwidCIsWzM5LFsxNyxbMTUsImEiXSwiaXNBdXRvQ29sbGVjdFBpaUVuYWJsZWRGbGFnIl0sWzE3LFsxNSwiYSJdLCJhdXRvRW1haWxFbmFibGVkIl0sdHJ1ZV1dLFs0MyxbMTUsIm8iXSwiYXV0b19kZXRlY3QiLFs4LCJlbWFpbCIsWzE1LCJ0Il0sInBob25lIixbMSxbMTUsInMiXSxbMTcsWzE1LCJhIl0sImF1dG9QaG9uZUVuYWJsZWQiXV0sImFkZHJlc3MiLFsxLFsxNSwicyJdLFsxNyxbMTUsImEiXSwiYXV0b0FkZHJlc3NFbmFibGVkIl1dLCJleGNsdWRlX2VsZW1lbnRfc2VsZWN0b3JzIixbMTUsInIiXV1dXV1dLFsyMixbMTcsWzE1LCJhIl0sImlzTWFudWFsRW5hYmxlZCJdLFs0NixbNTMsWzUyLCJyIixbOF1dLFsyMixbMTcsWzE1LCJhIl0sIm1hbnVhbEVtYWlsRW5hYmxlZCJdLFs0NixbNTMsWyJxIixbMTUsInIiXSwiZW1haWwiLCJlbWFpbFZhbHVlIl1dXV0sWzIyLFsxNyxbMTUsImEiXSwibWFudWFsUGhvbmVFbmFibGVkIl0sWzQ2LFs1MyxbInEiLFsxNSwiciJdLCJwaG9uZSIsInBob25lVmFsdWUiXV1dXSxbMjIsWzE3LFsxNSwiYSJdLCJtYW51YWxBZGRyZXNzRW5hYmxlZCJdLFs0NixbNTMsWzUyLCJzIixbOF1dLFsicSIsWzE1LCJzIl0sImZpcnN0X25hbWUiLCJmaXJzdE5hbWVWYWx1ZSJdLFsicSIsWzE1LCJzIl0sImxhc3RfbmFtZSIsImxhc3ROYW1lVmFsdWUiXSxbInEiLFsxNSwicyJdLCJzdHJlZXQiLCJzdHJlZXRWYWx1ZSJdLFsicSIsWzE1LCJzIl0sImNpdHkiLCJjaXR5VmFsdWUiXSxbInEiLFsxNSwicyJdLCJyZWdpb24iLCJyZWdpb25WYWx1ZSJdLFsicSIsWzE1LCJzIl0sImNvdW50cnkiLCJjb3VudHJ5VmFsdWUiXSxbInEiLFsxNSwicyJdLCJwb3N0YWxfY29kZSIsInBvc3RhbENvZGVWYWx1ZSJdLFs0MyxbMTUsInIiXSwibmFtZV9hbmRfYWRkcmVzcyIsWzcsWzE1LCJzIl1dXV1dXSxbNDMsWzE1LCJvIl0sInNlbGVjdG9ycyIsWzE1LCJyIl1dXV1dLFs2NSwiciIsWzE1LCJuIl0sWzQ2LFs1MyxbImkiLFsxNSwiciJdLCJ1c2VyX2RhdGFfc2V0dGluZ3MiLFsxNSwibyJdXSxbNTIsInMiLFsxNixbMTUsIm8iXSwiYXV0b19kZXRlY3QiXV0sWzIyLFsyOCxbMTUsInMiXV0sWzQ2LFs1MyxbNl1dXV0sWzUyLCJ0IixbNTEsIiIsWzcsInUiXSxbNTIsInYiLFsyLFsxNSwidSJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiayJdLCJDWCJdXV1dLFsyMixbMTUsInYiXSxbNDYsWzUzLFszNixbMTUsInYiXV1dXV0sWzUyLCJ3IixbImMiLFsxNyxbMTUsImUiXSwiQlYiXV1dLFs1MiwieCIsWyJjIixbMTcsWzE1LCJlIl0sIkNJIl1dXSxbNDEsInkiXSxbMjIsWyJoIiwiZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSIsImF1dG8iXSxbNDYsWzUzLFszLCJ5IixbImciLFs4LCJleGNsdWRlRWxlbWVudFNlbGVjdG9ycyIsWzE2LFsxNSwicyJdLCJleGNsdWRlX2VsZW1lbnRfc2VsZWN0b3JzIl0sImZpZWxkRmlsdGVycyIsWzgsImVtYWlsIixbMTYsWzE1LCJzIl0sImVtYWlsIl0sInBob25lIixbMTYsWzE1LCJzIl0sInBob25lIl0sImFkZHJlc3MiLFsxNixbMTUsInMiXSwiYWRkcmVzcyJdXSwiaW5jbHVkZVNlbGVjdG9yIixbMTUsInciXSwicmVhZEZyb21EYXRhTGF5ZXIiLFsxNSwieCJdXV1dXV1dLFs1MiwieiIsWzEsWzE1LCJ5Il0sWzE2LFsxNSwieSJdLCJlbGVtZW50cyJdXV0sWzUyLCJhQSIsWzhdXSxbNTIsImFCIixbOF1dLFsyMixbMSxbMTUsInoiXSxbMTgsWzE3LFsxNSwieiJdLCJsZW5ndGgiXSwwXV0sWzQ2LFs1MyxbNDEsImFDIl0sWzQxLCJhRCJdLFszLCJhRCIsWzhdXSxbNTMsWzQxLCJhRSJdLFszLCJhRSIsMF0sWzYzLFs3LCJhRSJdLFsyMyxbMTUsImFFIl0sWzE3LFsxNSwieiJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiYUUiXSxbMywiYUUiLFswLFsxNSwiYUUiXSwxXV1dLFs0NixbNTMsWzUyLCJhRiIsWzE2LFsxNSwieiJdLFsxNSwiYUUiXV1dLFsicCIsWzE1LCJhQSJdLFsxNSwiYUYiXSwiZW1haWwiLFsxNSwiYUIiXV0sWzIyLFsiYyIsWzE3LFsxNSwiZSJdLCJCTyJdXSxbNDYsWzUzLFsicCIsWzE1LCJhQSJdLFsxNSwiYUYiXSwicGhvbmVfbnVtYmVyIixbMTUsImFCIl1dLFszLCJhQyIsWyJwIixbMTUsImFDIl0sWzE1LCJhRiJdLCJmaXJzdF9uYW1lIixbMTUsImFEIl1dXSxbMywiYUMiLFsicCIsWzE1LCJhQyJdLFsxNSwiYUYiXSwibGFzdF9uYW1lIixbMTUsImFEIl1dXSxbMywiYUMiLFsicCIsWzE1LCJhQyJdLFsxNSwiYUYiXSwiY291bnRyeSIsWzE1LCJhRCJdXV0sWzMsImFDIixbInAiLFsxNSwiYUMiXSxbMTUsImFGIl0sInBvc3RhbF9jb2RlIixbMTUsImFEIl1dXV1dXV1dXV0sWzIyLFsxLFsxNSwiYUMiXSxbMjgsWzE2LFsxNSwiYUEiXSwiYWRkcmVzcyJdXV0sWzQ2LFs1MyxbNDMsWzE1LCJhQSJdLCJhZGRyZXNzIixbMTUsImFDIl1dLFsyMixbMTUsIm0iXSxbNDYsWzUzLFs0MyxbMTYsWzE1LCJhQSJdLCJhZGRyZXNzIl0sIl90YWdfbWV0YWRhdGEiLFsxNSwiYUQiXV1dXV1dXV1dXV0sWzIyLFsxLFsxNSwieSJdLFsxNSwieCJdXSxbNDYsWzUzLFs1MiwiYUMiLFsxNixbMTUsInkiXSwiZGF0YUxheWVyU2VhcmNoVGltZSJdXSxbNTIsImFEIixbMTYsWzE1LCJ5Il0sImRhdGFMYXllclNlYXJjaENvdW50Il1dLFsyLFsxNSwidSJdLCJtZXJnZUhpdERhdGFGb3JLZXkiLFs3LFsxNyxbMTUsImwiXSwiRlQiXSxbOCwiZGxzdCIsWzE1LCJhQyJdLCJkbHNjIixbMTUsImFEIl1dXV1dXV0sWzIyLFsxNSwibSJdLFs0NixbNTMsWzIyLFszMCxbMTYsWzE1LCJhQSJdLCJlbWFpbCJdLFsxNixbMTUsImFBIl0sInBob25lX251bWJlciJdXSxbNDYsWzUzLFs0MyxbMTUsImFBIl0sIl90YWdfbWV0YWRhdGEiLFsxNSwiYUIiXV1dXV1dXV0sWzIsWzE1LCJ1Il0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJrIl0sIkNYIl0sWzE1LCJhQSJdXV0sWzM2LFsxNSwiYUEiXV1dXSxbImoiLFsxNSwiciJdLFs1MSwiIixbNywidSJdLFsyLFsxNSwidSJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiayJdLCJDWSJdLFsxNSwidCJdXV1dXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19zZXRfcHJvZHVjdF9zZXR0aW5ncyIsWzQ2LCJhIl0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTIsIl9fbW9kdWxlX2Fkd29yZHNIaXRUeXBlIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwiY29udmVyc2lvbiJdLFs1MiwiYyIsImZsb29kbGlnaHQiXSxbNTIsImQiLCJnYV9jb252ZXJzaW9uIl0sWzUyLCJlIiwicGFnZV92aWV3Il0sWzUyLCJmIiwicmVtYXJrZXRpbmciXSxbNTIsImciLCJ1c2VyX2RhdGFfbGVhZCJdLFs1MiwiaCIsInVzZXJfZGF0YV93ZWIiXSxbMzYsWzgsIkQiLFsxNSwiYiJdLCJFIixbMTUsImMiXSwiRiIsWzE1LCJkIl0sIkgiLFsxNSwiZSJdLCJJIixbMTUsImYiXSwiSiIsWzE1LCJnIl0sIksiLFsxNSwiaCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZ3RhZ1NjaGVtYSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImFkX3BlcnNvbmFsaXphdGlvbiJdLFs1MiwiYyIsImFkX3N0b3JhZ2UiXSxbNTIsImQiLCJhZF91c2VyX2RhdGEiXSxbNTIsImUiLCJjb25zZW50X3VwZGF0ZWQiXSxbNTIsImYiLCJhcHBfcmVtb3ZlIl0sWzUyLCJnIiwiYXBwX3N0b3JlX3JlZnVuZCJdLFs1MiwiaCIsImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fY2FuY2VsIl0sWzUyLCJpIiwiYXBwX3N0b3JlX3N1YnNjcmlwdGlvbl9jb252ZXJ0Il0sWzUyLCJqIiwiYXBwX3N0b3JlX3N1YnNjcmlwdGlvbl9yZW5ldyJdLFs1MiwiayIsImNvbnZlcnNpb24iXSxbNTIsImwiLCJwdXJjaGFzZSJdLFs1MiwibSIsImZpcnN0X29wZW4iXSxbNTIsIm4iLCJmaXJzdF92aXNpdCJdLFs1MiwibyIsImd0YWcuY29uZmlnIl0sWzUyLCJwIiwiaW5fYXBwX3B1cmNoYXNlIl0sWzUyLCJxIiwicGFnZV92aWV3Il0sWzUyLCJyIiwic2Vzc2lvbl9zdGFydCJdLFs1MiwicyIsInVzZXJfZW5nYWdlbWVudCJdLFs1MiwidCIsImFkc19kYXRhX3JlZGFjdGlvbiJdLFs1MiwidSIsImFsbG93X2FkX3BlcnNvbmFsaXphdGlvbl9zaWduYWxzIl0sWzUyLCJ2IiwiYWxsb3dfY3VzdG9tX3NjcmlwdHMiXSxbNTIsInciLCJhbGxvd19lbmhhbmNlZF9jb252ZXJzaW9ucyJdLFs1MiwieCIsImFsbG93X2dvb2dsZV9zaWduYWxzIl0sWzUyLCJ5IiwiYXVpZCJdLFs1MiwieiIsImF3X3JlbWFya2V0aW5nX29ubHkiXSxbNTIsImFBIiwiZGlzY291bnQiXSxbNTIsImFCIiwiYXdfZmVlZF9jb3VudHJ5Il0sWzUyLCJhQyIsImF3X2ZlZWRfbGFuZ3VhZ2UiXSxbNTIsImFEIiwiaXRlbXMiXSxbNTIsImFFIiwiYXdfbWVyY2hhbnRfaWQiXSxbNTIsImFGIiwiYXdfYmFza2V0X3R5cGUiXSxbNTIsImFHIiwiY2xpZW50X2lkIl0sWzUyLCJhSCIsImNvbnZlcnNpb25fY29va2llX3ByZWZpeCJdLFs1MiwiYUkiLCJjb252ZXJzaW9uX2lkIl0sWzUyLCJhSiIsImNvbnZlcnNpb25fbGlua2VyIl0sWzUyLCJhSyIsImNvbnZlcnNpb25fYXBpIl0sWzUyLCJhTCIsImNvb2tpZV9kZXByZWNhdGlvbiJdLFs1MiwiYU0iLCJjb29raWVfZXhwaXJlcyJdLFs1MiwiYU4iLCJjb29raWVfcHJlZml4Il0sWzUyLCJhTyIsImNvb2tpZV91cGRhdGUiXSxbNTIsImFQIiwiY291bnRyeSJdLFs1MiwiYVEiLCJjdXJyZW5jeSJdLFs1MiwiYVIiLCJjdXN0b21lcl9saWZldGltZV92YWx1ZSJdLFs1MiwiYVMiLCJjdXN0b21lcl90eXBlIl0sWzUyLCJhVCIsImRlYnVnX21vZGUiXSxbNTIsImFVIiwic2hpcHBpbmciXSxbNTIsImFWIiwiZW5nYWdlbWVudF90aW1lX21zZWMiXSxbNTIsImFXIiwiZXN0aW1hdGVkX2RlbGl2ZXJ5X2RhdGUiXSxbNTIsImFYIiwiZXZlbnRfZGV2ZWxvcGVyX2lkX3N0cmluZyJdLFs1MiwiYVkiLCJldmVudF9pZCJdLFs1MiwiYVoiLCJldmVudCJdLFs1MiwiYkEiLCJfJmFlIl0sWzUyLCJiQiIsImV2ZW50X3RpbWVvdXQiXSxbNTIsImJDIiwiZXh0X2NsaWVudF9pZCJdLFs1MiwiYkQiLCJmaXJzdF9wYXJ0eV9jb2xsZWN0aW9uIl0sWzUyLCJiRSIsIm1hdGNoX2lkIl0sWzUyLCJiRiIsImdkcHJfYXBwbGllcyJdLFs1MiwiYkciLCJfZ3RfbWV0YWRhdGEiXSxbNTIsImJIIiwiZ29vZ2xlX2FuYWx5c2lzX3BhcmFtcyJdLFs1MiwiYkkiLCJfZ29vZ2xlX25nIl0sWzUyLCJiSiIsIl9vbm8iXSxbNTIsImJLIiwiZ3BwX3NpZCJdLFs1MiwiYkwiLCJncHBfc3RyaW5nIl0sWzUyLCJiTSIsImdzYV9leHBlcmltZW50X2lkIl0sWzUyLCJiTiIsImd0YWdfZXZlbnRfZmVhdHVyZV91c2FnZSJdLFs1MiwiYk8iLCJpZnJhbWVfc3RhdGUiXSxbNTIsImJQIiwiaWdub3JlX3JlZmVycmVyIl0sWzUyLCJiUSIsImlzX3Bhc3N0aHJvdWdoIl0sWzUyLCJiUiIsImxhbmd1YWdlIl0sWzUyLCJiUyIsIm1lcmNoYW50X2ZlZWRfbGFiZWwiXSxbNTIsImJUIiwibWVyY2hhbnRfZmVlZF9sYW5ndWFnZSJdLFs1MiwiYlUiLCJtZXJjaGFudF9pZCJdLFs1MiwiYlYiLCJuZXdfY3VzdG9tZXIiXSxbNTIsImJXIiwicGFnZV9ob3N0bmFtZSJdLFs1MiwiYlgiLCJwYWdlX3BhdGgiXSxbNTIsImJZIiwicGFnZV9yZWZlcnJlciJdLFs1MiwiYloiLCJwYWdlX3RpdGxlIl0sWzUyLCJjQSIsIl9wbGF0aW51bV9yZXF1ZXN0X3N0YXR1cyJdLFs1MiwiY0IiLCJxdWFudGl0eSJdLFs1MiwiY0MiLCJyZXN0cmljdGVkX2RhdGFfcHJvY2Vzc2luZyJdLFs1MiwiY0QiLCJzY3JlZW5fcmVzb2x1dGlvbiJdLFs1MiwiY0UiLCJzZW5kX3BhZ2VfdmlldyJdLFs1MiwiY0YiLCJzZXJ2ZXJfY29udGFpbmVyXzNwX2VucmljaG1lbnQiXSxbNTIsImNHIiwic2VydmVyX2NvbnRhaW5lcl91cmwiXSxbNTIsImNIIiwic2Vzc2lvbl9kdXJhdGlvbiJdLFs1MiwiY0kiLCJzZXNzaW9uX2VuZ2FnZWRfdGltZSJdLFs1MiwiY0oiLCJzZXNzaW9uX2lkIl0sWzUyLCJjSyIsIl9zaGFyZWRfdXNlcl9pZCJdLFs1MiwiY0wiLCJkZWxpdmVyeV9wb3N0YWxfY29kZSJdLFs1MiwiY00iLCJ0ZXN0b25seSJdLFs1MiwiY04iLCJ0b3Btb3N0X3VybCJdLFs1MiwiY08iLCJ0cmFuc2FjdGlvbl9pZCJdLFs1MiwiY1AiLCJ0cmFuc2FjdGlvbl9pZF9zb3VyY2UiXSxbNTIsImNRIiwidHJhbnNwb3J0X3VybCJdLFs1MiwiY1IiLCJ1cGRhdGUiXSxbNTIsImNTIiwiX3VzZXJfYWdlbnRfYXJjaGl0ZWN0dXJlIl0sWzUyLCJjVCIsIl91c2VyX2FnZW50X2JpdG5lc3MiXSxbNTIsImNVIiwiX3VzZXJfYWdlbnRfZnVsbF92ZXJzaW9uX2xpc3QiXSxbNTIsImNWIiwiX3VzZXJfYWdlbnRfbW9iaWxlIl0sWzUyLCJjVyIsIl91c2VyX2FnZW50X21vZGVsIl0sWzUyLCJjWCIsIl91c2VyX2FnZW50X3BsYXRmb3JtIl0sWzUyLCJjWSIsIl91c2VyX2FnZW50X3BsYXRmb3JtX3ZlcnNpb24iXSxbNTIsImNaIiwiX3VzZXJfYWdlbnRfd293NjQiXSxbNTIsImRBIiwidXNlcl9kYXRhIl0sWzUyLCJkQiIsInVzZXJfZGF0YV9hdXRvX2xhdGVuY3kiXSxbNTIsImRDIiwidXNlcl9kYXRhX2F1dG9fbWV0YSJdLFs1MiwiZEQiLCJ1c2VyX2RhdGFfYXV0b19tdWx0aSJdLFs1MiwiZEUiLCJ1c2VyX2RhdGFfYXV0b19zZWxlY3RvcnMiXSxbNTIsImRGIiwidXNlcl9kYXRhX2F1dG9fc3RhdHVzIl0sWzUyLCJkRyIsInVzZXJfZGF0YV9tb2RlIl0sWzUyLCJkSCIsInVzZXJfaWQiXSxbNTIsImRJIiwidXNlcl9wcm9wZXJ0aWVzIl0sWzUyLCJkSiIsInVzX3ByaXZhY3lfc3RyaW5nIl0sWzUyLCJkSyIsInZhbHVlIl0sWzUyLCJkTCIsIl9mcG1fcGFyYW1ldGVycyJdLFs1MiwiZE0iLCJfaG9zdF9uYW1lIl0sWzUyLCJkTiIsIl9pbl9wYWdlX2NvbW1hbmQiXSxbNTIsImRPIiwiX21lYXN1cmVtZW50X3R5cGUiXSxbNTIsImRQIiwibm9uX3BlcnNvbmFsaXplZF9hZHMiXSxbNTIsImRRIiwiY29udmVyc2lvbl9sYWJlbCJdLFs1MiwiZFIiLCJwYWdlX2xvY2F0aW9uIl0sWzUyLCJkUyIsIl9leHRyYWN0ZWRfZGF0YSJdLFs1MiwiZFQiLCJnbG9iYWxfZGV2ZWxvcGVyX2lkX3N0cmluZyJdLFs1MiwiZFUiLCJ0Y19wcml2YWN5X3N0cmluZyJdLFszNixbOCwiQSIsWzE1LCJiIl0sIkIiLFsxNSwiYyJdLCJDIixbMTUsImQiXSwiRiIsWzE1LCJlIl0sIkkiLFsxNSwiZiJdLCJKIixbMTUsImciXSwiSyIsWzE1LCJoIl0sIkwiLFsxNSwiaSJdLCJNIixbMTUsImoiXSwiTyIsWzE1LCJrIl0sIkFBIixbMTUsImwiXSwiQUYiLFsxNSwibSJdLCJBRyIsWzE1LCJuIl0sIkFIIixbMTUsIm8iXSwiQUoiLFsxNSwicCJdLCJBSyIsWzE1LCJxIl0sIkFNIixbMTUsInIiXSwiQVEiLFsxNSwicyJdLCJCQyIsWzE1LCJ0Il0sIkJKIixbMTUsInUiXSwiQksiLFsxNSwidiJdLCJCTSIsWzE1LCJ3Il0sIkJOIixbMTUsIngiXSwiQlQiLFsxNSwieSJdLCJCWCIsWzE1LCJ6Il0sIkJZIixbMTUsImFBIl0sIkJaIixbMTUsImFCIl0sIkNBIixbMTUsImFDIl0sIkNCIixbMTUsImFEIl0sIkNDIixbMTUsImFFIl0sIkNEIixbMTUsImFGIl0sIkNMIixbMTUsImFHIl0sIkNRIixbMTUsImFIIl0sIkNSIixbMTUsImFJIl0sIktHIixbMTUsImRRIl0sIkNTIixbMTUsImFKIl0sIkNVIixbMTUsImFLIl0sIkNXIixbMTUsImFMIl0sIkNZIixbMTUsImFNIl0sIkRDIixbMTUsImFOIl0sIkREIixbMTUsImFPIl0sIkRFIixbMTUsImFQIl0sIkRGIixbMTUsImFRIl0sIkRHIixbMTUsImFSIl0sIkRIIixbMTUsImFTIl0sIkROIixbMTUsImFUIl0sIkVBIixbMTUsImFVIl0sIkVDIixbMTUsImFWIl0sIkVHIixbMTUsImFXIl0sIkVKIixbMTUsImFYIl0sIkVLIixbMTUsImFZIl0sIkVOIixbMTUsImFaIl0sIkVPIixbMTUsImJBIl0sIkVRIixbMTUsImJCIl0sIktJIixbMTUsImRTIl0sIkVVIixbMTUsImJDIl0sIkVXIixbMTUsImJEIl0sIkZFIixbMTUsImJFIl0sIkZPIixbMTUsImJGIl0sIkZQIixbMTUsImJHIl0sIktKIixbMTUsImRUIl0sIkZUIixbMTUsImJIIl0sIkZVIixbMTUsImJJIl0sIkZWIixbMTUsImJKIl0sIkZZIixbMTUsImJLIl0sIkZaIixbMTUsImJMIl0sIkdCIixbMTUsImJNIl0sIkdDIixbMTUsImJOIl0sIkdFIixbMTUsImJPIl0sIkdGIixbMTUsImJQIl0sIkdLIixbMTUsImJRIl0sIkdNIixbMTUsImJSIl0sIkdUIixbMTUsImJTIl0sIkdVIixbMTUsImJUIl0sIkdWIixbMTUsImJVIl0sIkdaIixbMTUsImJWIl0sIkhDIixbMTUsImJXIl0sIktIIixbMTUsImRSIl0sIkhEIixbMTUsImJYIl0sIkhFIixbMTUsImJZIl0sIkhGIixbMTUsImJaIl0sIkhOIixbMTUsImNBIl0sIkhQIixbMTUsImNCIl0sIkhUIixbMTUsImNDIl0sIkhYIixbMTUsImNEIl0sIklBIixbMTUsImNFIl0sIklDIixbMTUsImNGIl0sIklEIixbMTUsImNHIl0sIklGIixbMTUsImNIIl0sIklIIixbMTUsImNJIl0sIklJIixbMTUsImNKIl0sIklLIixbMTUsImNLIl0sIklMIixbMTUsImNMIl0sIktLIixbMTUsImRVIl0sIklQIixbMTUsImNNIl0sIklSIixbMTUsImNOIl0sIklVIixbMTUsImNPIl0sIklWIixbMTUsImNQIl0sIklXIixbMTUsImNRIl0sIklZIixbMTUsImNSIl0sIkpCIixbMTUsImNTIl0sIkpDIixbMTUsImNUIl0sIkpEIixbMTUsImNVIl0sIkpFIixbMTUsImNWIl0sIkpGIixbMTUsImNXIl0sIkpHIixbMTUsImNYIl0sIkpIIixbMTUsImNZIl0sIkpJIixbMTUsImNaIl0sIkpKIixbMTUsImRBIl0sIkpLIixbMTUsImRCIl0sIkpMIixbMTUsImRDIl0sIkpNIixbMTUsImREIl0sIkpOIixbMTUsImRFIl0sIkpPIixbMTUsImRGIl0sIkpQIixbMTUsImRHIl0sIkpSIixbMTUsImRIIl0sIkpTIixbMTUsImRJIl0sIkpVIixbMTUsImRKIl0sIkpWIixbMTUsImRLIl0sIkpYIixbMTUsImRMIl0sIkpZIixbMTUsImRNIl0sIkpaIixbMTUsImROIl0sIktDIixbMTUsImRPIl0sIktEIixbMTUsImRQIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImFib3J0X3dpdGhvdXRfZmFpbCJdLFs1MiwiYyIsImFjY2VwdF9ieV9kZWZhdWx0Il0sWzUyLCJkIiwiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uIl0sWzUyLCJlIiwiY29uc2VudF9zdGF0ZSJdLFs1MiwiZiIsImNvbnNlbnRfdXBkYXRlZCJdLFs1MiwiZyIsImNvbnZlcnNpb25fbGlua2VyX2VuYWJsZWQiXSxbNTIsImgiLCJjb252ZXJzaW9uX21hcmtpbmdfY2FsbGVkIl0sWzUyLCJpIiwiY29va2llX29wdGlvbnMiXSxbNTIsImoiLCJkZWR1cGVfaWQiXSxbNTIsImsiLCJlbV9ldmVudCJdLFs1MiwibCIsImV2ZW50X3Byb3ZlbmFuY2UiXSxbNTIsIm0iLCJldmVudF9zb3VyY2UiXSxbNTIsIm4iLCJldmVudF9zdGFydF90aW1lc3RhbXBfbXMiXSxbNTIsIm8iLCJldmVudF91c2FnZSJdLFs1MiwicCIsImV4dHJhX3RhZ19leHBlcmltZW50X2lkcyJdLFs1MiwicSIsImZvcm1fZXZlbnRfY2FuY2VsZWQiXSxbNTIsInIiLCJnYTRfY29sbGVjdGlvbl9zdWJkb21haW4iXSxbNTIsInMiLCJndG1fZXh0cmFjdGVkX2RhdGEiXSxbNTIsInQiLCJoYW5kbGVfaW50ZXJuYWxseSJdLFs1MiwidSIsImhhc19nYV9jb252ZXJzaW9uX2NvbnNlbnRzIl0sWzUyLCJ2IiwiaGl0X3R5cGUiXSxbNTIsInciLCJoaXRfdHlwZV9vdmVycmlkZSJdLFs1MiwieCIsImlnbm9yZV9kdXBlX2NvbmZpZyJdLFs1MiwieSIsImlzX2NvbnZlcnNpb24iXSxbNTIsInoiLCJpc19leHRlcm5hbF9ldmVudCJdLFs1MiwiYUEiLCJpc19maXJzdF92aXNpdCJdLFs1MiwiYUIiLCJpc19maXJzdF92aXNpdF9jb252ZXJzaW9uIl0sWzUyLCJhQyIsImlzX2ZwbV9lbmNyeXB0aW9uIl0sWzUyLCJhRCIsImlzX2ZwbV9zcGxpdCJdLFs1MiwiYUUiLCJpc19nY3BfYnJvd3NlciJdLFs1MiwiYUYiLCJpc19nb29nbGVfbWVhc3VyZW1lbnRfYWxsb3dlZCJdLFs1MiwiYUciLCJpc19zZXJ2ZXJfc2lkZV9kZXN0aW5hdGlvbiJdLFs1MiwiYUgiLCJpc19zZXNzaW9uX3N0YXJ0Il0sWzUyLCJhSSIsImlzX3Nlc3Npb25fc3RhcnRfY29udmVyc2lvbiJdLFs1MiwiYUoiLCJpc19zZ3RtX2dhX2Fkc19jb252ZXJzaW9uX3N0dWR5X2NvbnRyb2xfZ3JvdXAiXSxbNTIsImFLIiwiaXNfc2d0bV9wcmVoaXQiXSxbNTIsImFMIiwiaXNfc3BsaXRfY29udmVyc2lvbiJdLFs1MiwiYU0iLCJpc19zeW4iXSxbNTIsImFOIiwiaXNfdGVzdF9ldmVudCJdLFs1MiwiYU8iLCJwcmVoaXRfZm9yX3JldHJ5Il0sWzUyLCJhUCIsInJlZGFjdF9hZHNfZGF0YSJdLFs1MiwiYVEiLCJyZWRhY3RfY2xpY2tfaWRzIl0sWzUyLCJhUiIsInNlbmRfY2NtX3BhcmFsbGVsX3BpbmciXSxbNTIsImFTIiwic2VuZF91c2VyX2RhdGFfaGl0Il0sWzUyLCJhVCIsInNwZWN1bGF0aXZlIl0sWzUyLCJhVSIsInN5bl9vcl9tb2QiXSxbNTIsImFWIiwidHJhbnNpZW50X2Vjc2lkIl0sWzUyLCJhVyIsInVzZXJfZGF0YSJdLFs1MiwiYVgiLCJ1c2VyX2RhdGFfZnJvbV9hdXRvbWF0aWMiXSxbNTIsImFZIiwidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljX2dldHRlciJdLFs1MiwiYVoiLCJ1c2VyX2RhdGFfZnJvbV9jb2RlIl0sWzUyLCJiQSIsInVzZXJfZGF0YV9mcm9tX21hbnVhbCJdLFszNixbOCwiQSIsWzE1LCJiIl0sIkIiLFsxNSwiYyJdLCJGIixbMTUsImQiXSwiTSIsWzE1LCJlIl0sIk4iLFsxNSwiZiJdLCJPIixbMTUsImciXSwiUCIsWzE1LCJoIl0sIlEiLFsxNSwiaSJdLCJTIixbMTUsImoiXSwiVCIsWzE1LCJrIl0sIloiLFsxNSwibCJdLCJBQSIsWzE1LCJtIl0sIkFCIixbMTUsIm4iXSwiQUMiLFsxNSwibyJdLCJBRCIsWzE1LCJwIl0sIkFKIixbMTUsInEiXSwiQUsiLFsxNSwiciJdLCJBTiIsWzE1LCJzIl0sIkFPIixbMTUsInQiXSwiQVAiLFsxNSwidSJdLCJBUSIsWzE1LCJ2Il0sIkFSIixbMTUsInciXSwiQVMiLFsxNSwieCJdLCJBViIsWzE1LCJ5Il0sIkFZIixbMTUsInoiXSwiQVoiLFsxNSwiYUEiXSwiQkEiLFsxNSwiYUIiXSwiQkMiLFsxNSwiYUMiXSwiQkQiLFsxNSwiYUQiXSwiQkUiLFsxNSwiYUUiXSwiQkYiLFsxNSwiYUYiXSwiQksiLFsxNSwiYUciXSwiQkwiLFsxNSwiYUgiXSwiQk0iLFsxNSwiYUkiXSwiQk4iLFsxNSwiYUoiXSwiQk8iLFsxNSwiYUsiXSwiQlEiLFsxNSwiYUwiXSwiQlIiLFsxNSwiYU0iXSwiQlMiLFsxNSwiYU4iXSwiQlkiLFsxNSwiYU8iXSwiQ0IiLFsxNSwiYVAiXSwiQ0MiLFsxNSwiYVEiXSwiQ0UiLFsxNSwiYVIiXSwiQ04iLFsxNSwiYVMiXSwiQ1EiLFsxNSwiYVQiXSwiQ1QiLFsxNSwiYVUiXSwiQ1UiLFsxNSwiYVYiXSwiQ1ciLFsxNSwiYVciXSwiQ1giLFsxNSwiYVgiXSwiQ1kiLFsxNSwiYVkiXSwiQ1oiLFsxNSwiYVoiXSwiREEiLFsxNSwiYkEiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2ZlYXR1cmVGbGFncyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsNDVdLFs1MiwiYyIsNDZdLFs1MiwiZCIsNDddLFs1MiwiZSIsMTc0XSxbNTIsImYiLDI3Nl0sWzM2LFs4LCJGIixbMTUsImIiXSwiRyIsWzE1LCJjIl0sIkgiLFsxNSwiZCJdLCJWIixbMTUsImUiXSwiQUQiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZWNUeXBlcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImZzcmMiXSxbNTIsImMiLCJmZWlkIl0sWzUyLCJkIiwiMCJdLFs1MiwiZSIsIjEiXSxbNTIsImYiLCIyIl0sWzUyLCJnIiwiMyJdLFs1MiwiaCIsIjQiXSxbMzYsWzgsIkIiLFsxNSwiYyJdLCJGIixbMTUsImciXSwiRCIsWzE1LCJlIl0sIkUiLFsxNSwiZiJdLCJDIixbMTUsImQiXSwiRyIsWzE1LCJoIl0sIkEiLFsxNSwiYiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZmVhdHVyZXMiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLDQyNV0sWzUyLCJjIiw0MzVdLFs1MiwiZCIsNDg4XSxbNTIsImUiLDQ4OV0sWzUyLCJmIiw0OThdLFs1MiwiZyIsNTAzXSxbNTIsImgiLDUwNF0sWzUyLCJpIiw1MDZdLFs1MiwiaiIsNTIzXSxbNTIsImsiLDUzMl0sWzUyLCJsIiw1NTNdLFs1MiwibSIsNTY4XSxbNTIsIm4iLDU3N10sWzUyLCJvIiw1ODFdLFs1MiwicCIsNTgzXSxbNTIsInEiLDU5Ml0sWzUyLCJyIiw1OTRdLFs1MiwicyIsNTk5XSxbMzYsWzgsIkFWIixbMTUsImsiXSwiQUQiLFsxNSwiZCJdLCJDSSIsWzE1LCJxIl0sIkJWIixbMTUsIm4iXSwiQk8iLFsxNSwibSJdLCJDSyIsWzE1LCJyIl0sIkNQIixbMTUsInMiXSwiQU0iLFsxNSwiZyJdLCJCWiIsWzE1LCJvIl0sIkFUIixbMTUsImoiXSwiQUUiLFsxNSwiZSJdLCJBTiIsWzE1LCJoIl0sIkwiLFsxNSwiYyJdLCJCQyIsWzE1LCJsIl0sIkFPIixbMTUsImkiXSwiQ0IiLFsxNSwicCJdLCJBSSIsWzE1LCJmIl0sIkkiLFsxNSwiYiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY3Jvc3NDb250YWluZXJTY2hlbWEiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLCJjb29raWVfZGVwcmVjYXRpb25fbGFiZWwiXSxbNTIsImMiLCJwbGQiXSxbNTIsImQiLCJzaGFyZWRfdXNlcl9pZCJdLFs1MiwiZSIsInNoYXJlZF91c2VyX2lkX3JlcXVlc3RlZCJdLFs1MiwiZiIsInNoYXJlZF91c2VyX2lkX3NvdXJjZSJdLFszNixbOCwiQiIsWzE1LCJiIl0sIk4iLFsxNSwiYyJdLCJTIixbMTUsImQiXSwiVCIsWzE1LCJlIl0sIlUiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfcGxhdGZvcm1TY2hlbWEiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLDFdLFs1MiwiYyIsMl0sWzUyLCJkIiwzXSxbNTIsImUiLDRdLFs1MiwiZiIsNV0sWzUyLCJnIiw2XSxbMzYsWzgsIkEiLFsxNSwiYiJdLCJGIixbMTUsImciXSwiQiIsWzE1LCJjIl0sIkMiLFsxNSwiZCJdLCJEIixbMTUsImUiXSwiRSIsWzE1LCJmIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9nb2xkRXZlbnRVc2FnZUlkIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwxXSxbNTIsImMiLDJdLFs1MiwiZCIsNV0sWzUyLCJlIiw2XSxbNTIsImYiLDddLFs1MiwiZyIsOF0sWzUyLCJoIiw5XSxbNTIsImkiLDExXSxbNTIsImoiLDE1XSxbNTIsImsiLDE2XSxbNTIsImwiLDIwXSxbNTIsIm0iLDIxXSxbNTIsIm4iLDIzXSxbNTIsIm8iLDI0XSxbNTIsInAiLDI3XSxbNTIsInEiLDQwXSxbNTIsInIiLDQxXSxbMzYsWzgsIk8iLFsxNSwiaiJdLCJXIixbMTUsIm4iXSwiUCIsWzE1LCJrIl0sIlgiLFsxNSwibyJdLCJLIixbMTUsImkiXSwiQSIsWzE1LCJiIl0sIlQiLFsxNSwibCJdLCJFIixbMTUsImQiXSwiRiIsWzE1LCJlIl0sIkIiLFsxNSwiYyJdLCJIIixbMTUsImciXSwiQU4iLFsxNSwicSJdLCJJIixbMTUsImgiXSwiRyIsWzE1LCJmIl0sIlUiLFsxNSwibSJdLCJBTyIsWzE1LCJyIl0sIkFBIixbMTUsInAiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwiYWVfYmxvY2tfZG93bmxvYWRzIl0sWzUyLCJjIiwiYWVfYmxvY2tfZm9ybSJdLFs1MiwiZCIsImFlX2Jsb2NrX2hpc3RvcnkiXSxbNTIsImUiLCJhZV9ibG9ja19vdXRib3VuZF9jbGljayJdLFs1MiwiZiIsImFlX2Jsb2NrX3Njcm9sbCJdLFs1MiwiZyIsImFlX2Jsb2NrX3ZpZGVvIl0sWzM2LFs4LCJBIixbMTUsImIiXSwiQiIsWzE1LCJjIl0sIkMiLFsxNSwiZCJdLCJEIixbMTUsImUiXSwiRSIsWzE1LCJmIl0sIkYiLFsxNSwiZyJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1TaXRlU2VhcmNoQWN0aXZpdHkiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImIiLFs0NiwiZCIsImUiXSxbNTIsImYiLFsyLFszMCxbMTUsImQiXSwiIl0sInNwbGl0IixbNywiLCJdXV0sWzUzLFs0MSwiZyJdLFszLCJnIiwwXSxbNjMsWzcsImciXSxbMjMsWzE1LCJnIl0sWzE3LFsxNSwiZiJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiZyJdLFszLCJnIixbMCxbMTUsImciXSwxXV1dLFs0NixbNTMsWzUyLCJoIixbImUiLFsyLFsxNixbMTUsImYiXSxbMTUsImciXV0sInRyaW0iLFs3XV1dXSxbMjIsWzIxLFsxNSwiaCJdLFs0NF1dLFs0NixbNTMsWzM2LFsxNSwiaCJdXV1dXV1dXV1dLFs1MCwiYyIsWzQ2LCJkIiwiZSIsImYiXSxbNTIsImciLFs4LCJzZWFyY2hfdGVybSIsWzE1LCJkIl1dXSxbNTIsImgiLFsyLFszMCxbMTUsImUiXSwiIl0sInNwbGl0IixbNywiLCJdXV0sWzUzLFs0MSwiaSJdLFszLCJpIiwwXSxbNjMsWzcsImkiXSxbMjMsWzE1LCJpIl0sWzE3LFsxNSwiaCJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiaSJdLFszLCJpIixbMCxbMTUsImkiXSwxXV1dLFs0NixbNTMsWzUyLCJqIixbMixbMTYsWzE1LCJoIl0sWzE1LCJpIl1dLCJ0cmltIixbN11dXSxbNTIsImsiLFsiZiIsWzE1LCJqIl1dXSxbMjIsWzIxLFsxNSwiayJdLFs0NF1dLFs0NixbNTMsWzQzLFsxNSwiZyJdLFswLCJxXyIsWzE1LCJqIl1dLFsxNSwiayJdXV1dXV1dXV0sWzM2LFsxNSwiZyJdXV0sWzM2LFs4LCJCIixbMTUsImMiXSwiQSIsWzE1LCJiIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9hY3Rpdml0aWVzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJiIixbNDYsImMiLCJkIl0sWzM2LFszOSxbMTUsImQiXSxbImQiLFsxNSwiYyJdXSxbMTUsImMiXV1dXSxbMzYsWzgsIkEiLFsxNSwiYiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfcGxhdGZvcm1EZXRlY3Rpb24iLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsIm8iLFs0Nl0sWzY4LCJ3IixbNTMsWzIyLFsxLFsyOCxbImUiLFsxNyxbMTUsImgiXSwiQUkiXV1dLFsyOCxbImUiLFsxNyxbMTUsImgiXSwiSSJdXV1dLFs0NixbNTMsWzM2LFs3XV1dXV0sWzUyLCJ3IixbImIiLFsxNyxbMTUsImciXSwiTiJdXV0sWzIyLFsibiIsWzE1LCJ3Il1dLFs0NixbNTMsWzM2LFsxNSwidyJdXV1dXSxbNTIsIngiLFs3XV0sWzIyLFsicCJdLFs0NixbMixbMTUsIngiXSwicHVzaCIsWzcsWzE3LFsxNSwiaiJdLCJBIl1dXV1dLFsyMixbInEiXSxbNDYsWzIsWzE1LCJ4Il0sInB1c2giLFs3LFsxNyxbMTUsImoiXSwiQiJdXV1dXSxbMjIsWyJyIl0sWzQ2LFsyLFsxNSwieCJdLCJwdXNoIixbNyxbMTcsWzE1LCJqIl0sIkYiXV1dXV0sWzIyLFsidSJdLFs0NixbMixbMTUsIngiXSwicHVzaCIsWzcsWzE3LFsxNSwiaiJdLCJEIl1dXV1dLFsyMixbInMiXSxbNDYsWzIsWzE1LCJ4Il0sInB1c2giLFs3LFsxNyxbMTUsImoiXSwiRSJdXV1dXSxbMjIsWyJ0Il0sWzQ2LFsyLFsxNSwieCJdLCJwdXNoIixbNyxbMTcsWzE1LCJqIl0sIkMiXV1dXV0sWzIyLFsibCJdLFs0NixbNTMsWyJmIixbMTcsWzE1LCJnIl0sIk4iXSxbMTUsIngiXSx0cnVlXV1dXSxbMzYsWzE1LCJ4Il1dXSxbNDZdXSxbMzYsWzddXV0sWzUwLCJwIixbNDZdLFs2OCwidyIsWzUzLFszNixbMjgsWzI4LFsiYyIsInNjcmlwdFtkYXRhLXJlcXVpcmVtb2R1bGVePVwibWFnZS9cIl0iXV1dXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJxIixbNDZdLFs2OCwidyIsWzUzLFs1MiwidyIsWyJtIiwiWVhOelpYUnpMbk54ZFdGeVpYTndZV05sTG1OdmJTOD0iXV0sWzIyLFsyOCxbMTUsInciXV0sWzQ2LFszNixmYWxzZV1dXSxbMzYsWzI4LFsyOCxbImMiLFswLFswLCJzY3JpcHRbc3JjXj1cIi8vIixbMTUsInciXV0sIlwiXSJdXV1dXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJyIixbNDZdLFsyMixbMjgsWyJlIixbMTcsWzE1LCJoIl0sIkkiXV1dLFs0NixbNTMsWzM2LGZhbHNlXV1dXSxbNjgsInciLFs1MyxbNTIsInciLFsibSIsImMyaHZjR2xtZVM1amIyMD0iXV0sWzUyLCJ4IixbIm0iLCJjMmh2Y0dsbWVXTmtiaTVqYjIwPSJdXSxbMjIsWzMwLFsyOCxbMTUsInciXV0sWzI4LFsxNSwieCJdXV0sWzQ2LFszNixmYWxzZV1dXSxbMzYsWzI4LFsyOCxbImMiLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLCJzY3JpcHRbc3JjKj1cImNkbi4iLFsxNSwidyJdXSwiXCJdLCJdLCJtZXRhW3Byb3BlcnR5PVwib2c6aW1hZ2VcIl1bY29udGVudCo9XCJjZG4uIl0sWzE1LCJ3Il1dLCJcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cImNkbi4iXSxbMTUsInciXV0sIlwiXSwiXSwibGlua1tyZWw9XCJwcmVjb25uZWN0XCJdW2hyZWYqPVwiZm9udHMuIl0sWzE1LCJ4Il1dLCJcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cIml0ZXJhYmxlLXNob3BpZnlcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cInYuIl0sWzE1LCJ3Il1dLCJcIl0iXV1dXV1dLFs0Nl1dLFszNixmYWxzZV1dLFs1MCwicyIsWzQ2XSxbNjgsInciLFs1MyxbNTIsInciLFsiZCIsInByb3RvY29sIl1dLFs1MiwieCIsWyJkIiwiaG9zdCJdXSxbNTIsInkiLFszOSxbMSxbMTUsInciXSxbMTUsIngiXV0sWzAsWzAsWzAsWzAsIltzcmNePVwiIixbMTUsInciXV0sIjovLyJdLFsxNSwieCJdXSwiL3dwLWNvbnRlbnRcIl0sIl0sIiJdXSxbNTIsInoiLFsibSIsIkxuZHZjbVJ3Y21WemN5NWpiMjA9Il1dLFs1MiwiYUEiLFsibSIsIkx5OXpMbmN1YjNKbiJdXSxbMjIsWzMwLFsyOCxbMTUsInoiXV0sWzI4LFsxNSwiYUEiXV1dLFs0NixbMzYsZmFsc2VdXV0sWzM2LFszMCxbInYiLFsxNSwieCJdLFsxNSwieiJdXSxbMjgsWzI4LFsiYyIsWzAsWzAsWzAsWzAsWzE1LCJ5Il0sIm1ldGFbbmFtZT1cImdlbmVyYXRvclwiXVtjb250ZW50Xj1cIldvcmRQcmVzcyBcIl0sIl0sImxpbmtbcmVsPVwiZG5zLXByZWZldGNoXCJdW2hyZWY9XCIiXSxbMTUsImFBIl1dLCJcIl0iXV1dXV1dXSxbNDZdXSxbMzYsZmFsc2VdXSxbNTAsInQiLFs0Nl0sWzY4LCJ3IixbNTMsWzUyLCJ3IixbMjgsWzI4LFsiYyIsWzAsIltjbGFzcyo9XCJ3b29jb21tZXJjZVwiXSwiLCJtZXRhW25hbWU9XCJnZW5lcmF0b3JcIl1bY29udGVudF49XCJXb29Db21tZXJjZSBcIl0iXV1dXV0sWzIyLFsxNSwidyJdLFs0NixbNTNdXV0sWzM2LFsxNSwidyJdXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJ1IixbNDZdLFs2OCwidyIsWzUzLFs1MiwidyIsWzI4LFsyOCxbImMiLFswLFswLCJzY3JpcHRbc3JjKj1cIndvb2NvbW1lcmNlXCJdLCIsImxpbmtbaHJlZio9XCJ3b29jb21tZXJjZVwiXSwiXSwiW2NsYXNzfD1cIndvb2NvbW1lcmNlXCJdIl1dXV1dLFsyMixbMTUsInciXSxbNDYsWzUzXV1dLFszNixbMTUsInciXV1dLFs0Nl1dLFszNixmYWxzZV1dLFs1MCwidiIsWzQ2LCJ3IiwieCJdLFszNixbMSxbMTksWzE3LFsxNSwidyJdLCJsZW5ndGgiXSxbMTcsWzE1LCJ4Il0sImxlbmd0aCJdXSxbMjAsWzIsWzE1LCJ3Il0sInN1YnN0cmluZyIsWzcsWzM3LFsxNyxbMTUsInciXSwibGVuZ3RoIl0sWzE3LFsxNSwieCJdLCJsZW5ndGgiXV0sWzE3LFsxNSwidyJdLCJsZW5ndGgiXV1dLFsxNSwieCJdXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNvcHlGcm9tQ3Jvc3NDb250YWluZXJEYXRhIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0Rmlyc3RFbGVtZW50QnlDc3NTZWxlY3RvciJdXSxbNTIsImQiLFsicmVxdWlyZSIsImdldFVybCJdXSxbNTIsImUiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRJbkNyb3NzQ29udGFpbmVyRGF0YSJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfY3Jvc3NDb250YWluZXJTY2hlbWEiXV0sWzUyLCJoIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiaSIsWzE1LCJfX21vZHVsZV9mZWF0dXJlRmxhZ3MiXV0sWzUyLCJqIixbMTUsIl9fbW9kdWxlX3BsYXRmb3JtU2NoZW1hIl1dLFs1MiwiayIsWyJyZXF1aXJlIiwiZ2V0VHlwZSJdXSxbNTIsImwiLFsicmVxdWlyZSIsImludGVybmFsLmlzRG9tUmVhZHkiXV0sWzUyLCJtIixbInJlcXVpcmUiLCJmcm9tQmFzZTY0Il1dLFs1MiwibiIsWzUxLCIiLFs3LCJ3Il0sWzM2LFsyMCxbImsiLFsxNSwidyJdXSwiYXJyYXkiXV1dXSxbMzYsWzgsIkEiLFsxNSwibyJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1Eb3dubG9hZEFjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJoIixbNDYsImkiLCJqIl0sWyJjIixbMTUsImkiXSxbNTEsIiIsWzcsImsiXSxbMjIsWzMwLFsyMSxbMixbMTUsImsiXSwiZ2V0RXZlbnROYW1lIixbN11dLFsxNSwiZyJdXSxbMjgsWzIsWzE1LCJrIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiaSJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiayJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyLFsxNSwiayJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJDUSJdLGZhbHNlXV0sWzIyLFsyOCxbMTUsImoiXV0sWzQ2LFs1MyxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfaWQiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfdXJsIixbNDRdXV0sWzIsWzE1LCJrIl0sInNldEhpdERhdGEiLFs3LCJsaW5rX3RleHQiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImZpbGVfbmFtZSIsWzQ0XV1dLFsyLFsxNSwiayJdLCJzZXRIaXREYXRhIixbNywiZmlsZV9leHRlbnNpb24iLFs0NF1dXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImYiLFsxNyxbMTUsImUiXSwiQSJdXSxbNTIsImciLCJmaWxlX2Rvd25sb2FkIl0sWzM2LFs4LCJBIixbMTUsImgiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImUiLFs0NiwiZyJdLFs1MiwiaCIsWyJiIl1dLFs1MiwiaSIsWzddXSxbNTMsWzQxLCJqIl0sWzMsImoiLDBdLFs2MyxbNywiaiJdLFsyMyxbMTUsImoiXSxbMTcsWzE1LCJoIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJqIl0sWzMsImoiLFswLFsxNSwiaiJdLDFdXV0sWzQ2LFs1MyxbNTIsImsiLFsxNixbMTUsImgiXSxbMTUsImoiXV1dLFsyMixbImQiLFsxNSwiZyJdLFsxNSwiayJdXSxbNDYsWzUzLFsyLFsxNSwiaSJdLCJwdXNoIixbNyxbMTUsImsiXV1dXV1dXV1dXSxbMzYsWzE1LCJpIl1dXSxbNTAsImYiLFs0NiwiZyIsImgiXSxbNTIsImkiLFszMCxbMTUsImgiXSxbOF1dXSxbNDMsWzE1LCJpIl0sWzE3LFsxNSwiYyJdLCJUIl0sdHJ1ZV0sWzQzLFsxNSwiaSJdLFsxNyxbMTUsImMiXSwiQ1EiXSx0cnVlXSxbNDMsWzE1LCJpIl0sWzE3LFsxNSwiYyJdLCJaIl0sImEiXSxbNDMsWzE1LCJnIl0sImV2ZW50TWV0YWRhdGEiLFsxNSwiaSJdXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXREZXN0aW5hdGlvbklkcyJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJpbnRlcm5hbC5jbGFpbURlc3RpbmF0aW9uIl1dLFszNixbOCwiQSIsWzE1LCJlIl0sIkIiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1Gb3JtQWN0aXZpdHkiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsIm4iLFs0NiwibyIsInAiLCJxIl0sWzUyLCJyIixbMjAsWzIsWzE1LCJvIl0sImluZGV4T2YiLFs3LCJBVy0iXV0sMF1dLFsyMixbMjAsWzE1LCJwIl0sWzQ0XV0sWzQ2LFs1MyxbMywicCIsWzE1LCJyIl1dXV1dLFsiYyIsWzE1LCJvIl0sWzUxLCIiLFs3LCJzIl0sWzUyLCJ0IixbMixbMTUsInMiXSwiZ2V0RXZlbnROYW1lIixbN11dXSxbNTIsInUiLFszMCxbMjAsWzE1LCJ0Il0sWzE1LCJsIl1dLFsyMCxbMTUsInQiXSxbMTUsImsiXV1dXSxbMjIsWzMwLFsyOCxbMTUsInUiXV0sWzI4LFsyLFsxNSwicyJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJUIl1dXV1dLFs0NixbNTMsWzM2XV1dXSxbMjIsWyJiIixbMTUsIm8iXSxbMTUsImoiXV0sWzQ2LFs1MyxbMixbMTUsInMiXSwiYWJvcnQiLFs3XV0sWzM2XV1dXSxbMjIsWzEsWzI4LFsxNSwicCJdXSxbMixbMTUsInMiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiQUoiXV1dXSxbNDYsWzUzLFsyLFsxNSwicyJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFs1MiwidiIsWzIsWzE1LCJzIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIkFBIl1dXV0sWzIyLFsxLFsyOCxbMTUsInIiXV0sWzIwLFsxNSwidiJdLFsxNSwibSJdXV0sWzQ2LFs1MyxbMixbMTUsInMiXSwiYWJvcnQiLFs3XV0sWzM2XV1dXSxbMjIsWzI4LFsiaCIsWzE3LFsxNSwiaSJdLCJCWiJdXV0sWzQ2LFs1MyxbMjIsWzIwLFsxNSwidiJdLFsxNSwibSJdXSxbNDYsWzUzLFsyLFsxNSwicyJdLCJhYm9ydCIsWzddXSxbMzZdXV0sWzQ2LFsyMixbMjAsWzE1LCJ2Il0sWzE1LCJrIl1dLFs0NixbNTMsWzIsWzE1LCJzIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlMiXSxbNDRdXV1dXV1dXV1dXSxbMixbMTUsInMiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiQ1EiXSxmYWxzZV1dLFsyMixbMSxbMTUsInYiXSxbMTUsInIiXV0sWzQ2LFs1MyxbNDEsInciXSxbMywidyIsWzE3LFsxNSwiZyJdLCJDIl1dLFs0MSwieCJdLFsyMixbMjAsWzE1LCJ2Il0sWzE1LCJsIl1dLFs0NixbNTMsWzMsInciLFsxNyxbMTUsImciXSwiRCJdXV1dLFs0NixbMjIsWzIwLFsxNSwidiJdLFsxNSwiayJdXSxbNDYsWzUzLFszLCJ3IixbMTcsWzE1LCJnIl0sIkUiXV0sWzMsIngiLFsyLFsxNSwicyJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJTIl1dXV1dXSxbNDYsWzIyLFsyMCxbMTUsInYiXSxbMTUsIm0iXV0sWzQ2LFs1MyxbMywidyIsWzE3LFsxNSwiZyJdLCJGIl1dLFszLCJ4IixbMixbMTUsInMiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiUyJdXV1dXV1dXV1dXSxbNTIsInkiLFs4XV0sWzQzLFsxNSwieSJdLFsxNyxbMTUsImciXSwiQSJdLFsxNSwidyJdXSxbMjIsWzE1LCJ4Il0sWzQ2LFs1MyxbNDMsWzE1LCJ5Il0sWzE3LFsxNSwiZyJdLCJCIl0sWzE1LCJ4Il1dXV1dLFsyLFsxNSwicyJdLCJtZXJnZUhpdERhdGFGb3JLZXkiLFs3LFsxNyxbMTUsImYiXSwiRlQiXSxbMTUsInkiXV1dXV1dLFsyMixbMjgsWzE1LCJxIl1dLFs0NixbNTMsWzIsWzE1LCJzIl0sInNldEhpdERhdGEiLFs3LCJmb3JtX2lkIixbNDRdXV0sWzIsWzE1LCJzIl0sInNldEhpdERhdGEiLFs3LCJmb3JtX25hbWUiLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZvcm1fZGVzdGluYXRpb24iLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZvcm1fbGVuZ3RoIixbNDRdXV0sWzIyLFsyMCxbMTUsInQiXSxbMTUsImsiXV0sWzQ2LFs1MyxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZvcm1fc3VibWl0X3RleHQiLFs0NF1dXV1dLFs0NixbMjIsWzIwLFsxNSwidCJdLFsxNSwibCJdXSxbNDYsWzUzLFsyLFsxNSwicyJdLCJzZXRIaXREYXRhIixbNywiZmlyc3RfZmllbGRfaWQiLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZpcnN0X2ZpZWxkX25hbWUiLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZpcnN0X2ZpZWxkX3R5cGUiLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZpcnN0X2ZpZWxkX3Bvc2l0aW9uIixbNDRdXV1dXV1dXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImYiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfZWNUeXBlcyJdXSxbNTIsImgiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJpIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiaiIsWzE3LFsxNSwiZSJdLCJCIl1dLFs1MiwiayIsImZvcm1fc3VibWl0Il0sWzUyLCJsIiwiZm9ybV9zdGFydCJdLFs1MiwibSIsImNsaWNrIl0sWzM2LFs4LCJBIixbMTUsIm4iXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2NjZEVtT3V0Ym91bmRDbGlja0FjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJoIixbNDYsImkiLCJqIl0sWyJjIixbMTUsImkiXSxbNTEsIiIsWzcsImsiXSxbMjIsWzMwLFsyMSxbMixbMTUsImsiXSwiZ2V0RXZlbnROYW1lIixbN11dLFsxNSwiZyJdXSxbMjgsWzIsWzE1LCJrIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiaSJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiayJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyLFsxNSwiayJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJDUSJdLGZhbHNlXV0sWzIyLFsyOCxbMTUsImoiXV0sWzQ2LFs1MyxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfaWQiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfY2xhc3NlcyIsWzQ0XV1dLFsyLFsxNSwiayJdLCJzZXRIaXREYXRhIixbNywibGlua191cmwiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfZG9tYWluIixbNDRdXV0sWzIsWzE1LCJrIl0sInNldEhpdERhdGEiLFs3LCJvdXRib3VuZCIsWzQ0XV1dXV1dXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZiIsWzE3LFsxNSwiZSJdLCJEIl1dLFs1MiwiZyIsImNsaWNrIl0sWzM2LFs4LCJBIixbMTUsImgiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2NjZEVtUGFnZVZpZXdBY3Rpdml0eSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiaiIsWzQ2LCJrIl0sWyJjIixbMTUsImsiXSxbNTEsIiIsWzcsImwiXSxbMjIsWzMwLFsyMSxbMixbMTUsImwiXSwiZ2V0RXZlbnROYW1lIixbN11dLFsxNSwiaSJdXSxbMjgsWzIsWzE1LCJsIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJlIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiayJdLFsxNSwiaCJdXSxbNDYsWzUzLFsyLFsxNSwibCJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyMixbMjgsWzIsWzE1LCJsIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJlIl0sIkJPIl1dXV0sWzQ2LFs1MyxbImQiLFsxNSwiayJdLFsxNyxbMTUsImYiXSwiSEUiXSxbMixbMTUsImwiXSwiZ2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiZiJdLCJIRSJdXV1dXV1dLFsyLFsxNSwibCJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZSJdLCJDUSJdLGZhbHNlXV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2V0UmVtb3RlQ29uZmlnUGFyYW1ldGVyIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImYiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfYXV0b0V2ZW50QmxvY2tTY2hlbWEiXV0sWzUyLCJoIixbMTcsWzE1LCJnIl0sIkMiXV0sWzUyLCJpIixbMTcsWzE1LCJmIl0sIkFLIl1dLFszNixbOCwiQSIsWzE1LCJqIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9jY2RFbVNjcm9sbEFjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJoIixbNDYsImkiLCJqIl0sWyJjIixbMTUsImkiXSxbNTEsIiIsWzcsImsiXSxbMjIsWzMwLFsyMSxbMixbMTUsImsiXSwiZ2V0RXZlbnROYW1lIixbN11dLFsxNSwiZyJdXSxbMjgsWzIsWzE1LCJrIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiaSJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiayJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyLFsxNSwiayJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJDUSJdLGZhbHNlXV0sWzIyLFsyOCxbMTUsImoiXV0sWzQ2LFs1MyxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsInBlcmNlbnRfc2Nyb2xsZWQiLFs0NF1dXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImYiLFsxNyxbMTUsImUiXSwiRSJdXSxbNTIsImciLCJzY3JvbGwiXSxbMzYsWzgsIkEiLFsxNSwiaCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1WaWRlb0FjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJqIixbNDYsImsiLCJsIl0sWyJjIixbMTUsImsiXSxbNTEsIiIsWzcsIm0iXSxbNTIsIm4iLFsyLFsxNSwibSJdLCJnZXRFdmVudE5hbWUiLFs3XV1dLFs1MiwibyIsWzMwLFszMCxbMjAsWzE1LCJuIl0sWzE1LCJnIl1dLFsyMCxbMTUsIm4iXSxbMTUsImgiXV1dLFsyMCxbMTUsIm4iXSxbMTUsImkiXV1dXSxbMjIsWzMwLFsyOCxbMTUsIm8iXV0sWzI4LFsyLFsxNSwibSJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJUIl1dXV1dLFs0NixbNTMsWzM2XV1dXSxbMjIsWyJiIixbMTUsImsiXSxbMTUsImYiXV0sWzQ2LFs1MyxbMixbMTUsIm0iXSwiYWJvcnQiLFs3XV0sWzM2XV1dXSxbMixbMTUsIm0iXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiQ1EiXSxmYWxzZV1dLFsyMixbMjgsWzE1LCJsIl1dLFs0NixbNTMsWzIsWzE1LCJtIl0sInNldEhpdERhdGEiLFs3LCJ2aWRlb19jdXJyZW50X3RpbWUiLFs0NF1dXSxbMixbMTUsIm0iXSwic2V0SGl0RGF0YSIsWzcsInZpZGVvX2R1cmF0aW9uIixbNDRdXV0sWzIsWzE1LCJtIl0sInNldEhpdERhdGEiLFs3LCJ2aWRlb19wZXJjZW50IixbNDRdXV0sWzIsWzE1LCJtIl0sInNldEhpdERhdGEiLFs3LCJ2aWRlb19wcm92aWRlciIsWzQ0XV1dLFsyLFsxNSwibSJdLCJzZXRIaXREYXRhIixbNywidmlkZW9fdGl0bGUiLFs0NF1dXSxbMixbMTUsIm0iXSwic2V0SGl0RGF0YSIsWzcsInZpZGVvX3VybCIsWzQ0XV1dLFsyLFsxNSwibSJdLCJzZXRIaXREYXRhIixbNywidmlzaWJsZSIsWzQ0XV1dXV1dXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZiIsWzE3LFsxNSwiZSJdLCJGIl1dLFs1MiwiZyIsInZpZGVvX3N0YXJ0Il0sWzUyLCJoIiwidmlkZW9fcHJvZ3Jlc3MiXSxbNTIsImkiLCJ2aWRlb19jb21wbGV0ZSJdLFszNixbOCwiQSIsWzE1LCJqIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV90YXNrU2V0VGVzdEhpdFBhcmFtcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiZiIsWzQ2LCJnIl0sWzIyLFsyLFsxNSwiZyJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZSJdLCJCUyJdXV0sWzQ2LFs1MyxbMixbMTUsImciXSwic2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJJUCJdLCIxIl1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbMzYsWzgsIkEiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkR2FSZWdpb25TY29wZWRTZXR0aW5ncyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiaiIsWzQ2LCJtIiwibiIsIm8iXSxbNTAsInQiLFs0NiwidiJdLFs1MiwidyIsWzE2LFsxNSwiaSJdLFsxNSwidiJdXV0sWzIyLFsyOCxbMTUsInciXV0sWzQ2LFszNl1dXSxbNTMsWzQxLCJ4Il0sWzMsIngiLDBdLFs2MyxbNywieCJdLFsyMyxbMTUsIngiXSxbMTcsWzE1LCJ3Il0sImxlbmd0aCJdXSxbMzMsWzE1LCJ4Il0sWzMsIngiLFswLFsxNSwieCJdLDFdXV0sWzQ2LFs1MyxbNTIsInkiLFsxNixbMTUsInciXSxbMTUsIngiXV1dLFsicSIsWzE1LCJwIl0sWzE3LFsxNSwieSJdLCJuYW1lIl0sWzE3LFsxNSwieSJdLCJ2YWx1ZSJdXV1dXV1dLFs1MCwidSIsWzQ2LCJ2Il0sWzIyLFszMCxbMjgsWzE1LCJyIl1dLFsyMSxbMTcsWzE1LCJyIl0sImxlbmd0aCJdLDJdXSxbNDYsWzUzLFszNixmYWxzZV1dXV0sWzQxLCJ3Il0sWzMsInciLFsxNixbMTUsInYiXSxbMTUsInMiXV1dLFsyMixbMjAsWzE1LCJ3Il0sWzQ0XV0sWzQ2LFs1MyxbMywidyIsWzE2LFsxNSwidiJdLFsxNSwiciJdXV1dXV0sWzM2LFsyOCxbMjgsWzE1LCJ3Il1dXV1dLFsyMixbMjgsWzE1LCJuIl1dLFs0NixbMzZdXV0sWzUyLCJwIixbMzAsWzE3LFsxNSwibSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXSxbMTcsWyJjIl0sImNvbnRhaW5lcklkIl1dXSxbNTIsInEiLFsiaCIsWzE1LCJmIl0sWzE1LCJvIl1dXSxbNTIsInIiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbImgiLFsxNSwiZCJdLFsxNSwibyJdXV0sWyIkMCJdXV0sWzUyLCJzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWyJoIixbMTUsImUiXSxbMTUsIm8iXV1dLFsiJDAiXV1dLFs1MyxbNDEsInYiXSxbMywidiIsMF0sWzYzLFs3LCJ2Il0sWzIzLFsxNSwidiJdLFsxNyxbMTUsIm4iXSwibGVuZ3RoIl1dLFszMyxbMTUsInYiXSxbMywidiIsWzAsWzE1LCJ2Il0sMV1dXSxbNDYsWzUzLFs1MiwidyIsWzE2LFsxNSwibiJdLFsxNSwidiJdXV0sWzIyLFszMCxbMTcsWzE1LCJ3Il0sImRpc2FsbG93QWxsUmVnaW9ucyJdLFsidSIsWzE3LFsxNSwidyJdLCJkaXNhbGxvd2VkUmVnaW9ucyJdXV0sWzQ2LFs1MyxbInQiLFsxNyxbMTUsInciXSwicmVkYWN0RmllbGRHcm91cCJdXV1dXV1dXV1dLFs1MCwiayIsWzQ2LCJtIl0sWzUyLCJuIixbOF1dLFsyMixbMjgsWzE1LCJtIl1dLFs0NixbMzYsWzE1LCJuIl1dXV0sWzUyLCJvIixbMixbMTUsIm0iXSwic3BsaXQiLFs3LCIsIl1dXSxbNTMsWzQxLCJwIl0sWzMsInAiLDBdLFs2MyxbNywicCJdLFsyMyxbMTUsInAiXSxbMTcsWzE1LCJvIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJwIl0sWzMsInAiLFswLFsxNSwicCJdLDFdXV0sWzQ2LFs1MyxbNTIsInEiLFsyLFsxNixbMTUsIm8iXSxbMTUsInAiXV0sInRyaW0iLFs3XV1dLFsyMixbMjgsWzE1LCJxIl1dLFs0NixbNl1dXSxbNTIsInIiLFsyLFsxNSwicSJdLCJzcGxpdCIsWzcsIi0iXV1dLFs1MiwicyIsWzE2LFsxNSwiciJdLDBdXSxbNTIsInQiLFszOSxbMjAsWzE3LFsxNSwiciJdLCJsZW5ndGgiXSwyXSxbMTUsInEiXSxbNDRdXV0sWzIyLFszMCxbMjgsWzE1LCJzIl1dLFsyMSxbMTcsWzE1LCJzIl0sImxlbmd0aCJdLDJdXSxbNDYsWzUzLFs2XV1dXSxbMjIsWzEsWzIxLFsxNSwidCJdLFs0NF1dLFszMCxbMjMsWzE3LFsxNSwidCJdLCJsZW5ndGgiXSw0XSxbMTgsWzE3LFsxNSwidCJdLCJsZW5ndGgiXSw2XV1dLFs0NixbNTMsWzZdXV1dLFs0MyxbMTUsIm4iXSxbMTUsInEiXSx0cnVlXV1dXV0sWzM2LFsxNSwibiJdXV0sWzUwLCJsIixbNDYsIm0iXSxbMjIsWzI4LFsxNyxbMTUsIm0iXSwic2V0dGluZ3NUYWJsZSJdXSxbNDYsWzM2LFs3XV1dXSxbNTIsIm4iLFs4XV0sWzUzLFs0MSwibyJdLFszLCJvIiwwXSxbNjMsWzcsIm8iXSxbMjMsWzE1LCJvIl0sWzE3LFsxNyxbMTUsIm0iXSwic2V0dGluZ3NUYWJsZSJdLCJsZW5ndGgiXV0sWzMzLFsxNSwibyJdLFszLCJvIixbMCxbMTUsIm8iXSwxXV1dLFs0NixbNTMsWzUyLCJwIixbMTYsWzE3LFsxNSwibSJdLCJzZXR0aW5nc1RhYmxlIl0sWzE1LCJvIl1dXSxbNTIsInEiLFsxNyxbMTUsInAiXSwicmVkYWN0RmllbGRHcm91cCJdXSxbMjIsWzI4LFsxNixbMTUsImkiXSxbMTUsInEiXV1dLFs0NixbNl1dXSxbNDMsWzE1LCJuIl0sWzE1LCJxIl0sWzgsInJlZGFjdEZpZWxkR3JvdXAiLFsxNSwicSJdLCJkaXNhbGxvd0FsbFJlZ2lvbnMiLGZhbHNlLCJkaXNhbGxvd2VkUmVnaW9ucyIsWzhdXV0sWzUyLCJyIixbMTYsWzE1LCJuIl0sWzE1LCJxIl1dXSxbMjIsWzE3LFsxNSwicCJdLCJkaXNhbGxvd0FsbFJlZ2lvbnMiXSxbNDYsWzUzLFs0MyxbMTUsInIiXSwiZGlzYWxsb3dBbGxSZWdpb25zIix0cnVlXSxbNl1dXV0sWzQzLFsxNSwiciJdLCJkaXNhbGxvd2VkUmVnaW9ucyIsWyJrIixbMTcsWzE1LCJwIl0sImRpc2FsbG93ZWRSZWdpb25zIl1dXV1dXV0sWzM2LFsyLFsxNSwiYiJdLCJ2YWx1ZXMiLFs3LFsxNSwibiJdXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsIk9iamVjdCJdXSxbNTIsImMiLFsicmVxdWlyZSIsImdldENvbnRhaW5lclZlcnNpb24iXV0sWzUyLCJkIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRDb3VudHJ5Q29kZSJdXSxbNTIsImUiLFsicmVxdWlyZSIsImludGVybmFsLmdldFJlZ2lvbkNvZGUiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRSZW1vdGVDb25maWdQYXJhbWV0ZXIiXV0sWzUyLCJnIixbMTUsIl9fbW9kdWxlX2FjdGl2aXRpZXMiXV0sWzUyLCJoIixbMTcsWzE1LCJnIl0sIkEiXV0sWzUyLCJpIixbOCwiR09PR0xFX1NJR05BTFMiLFs3LFs4LCJuYW1lIiwiYWxsb3dfZ29vZ2xlX3NpZ25hbHMiLCJ2YWx1ZSIsZmFsc2VdXSwiREVWSUNFX0FORF9HRU8iLFs3LFs4LCJuYW1lIiwiZ2VvX2dyYW51bGFyaXR5IiwidmFsdWUiLHRydWVdLFs4LCJuYW1lIiwicmVkYWN0X2RldmljZV9pbmZvIiwidmFsdWUiLHRydWVdXV1dLFszNixbOCwiQSIsWzE1LCJqIl0sIkIiLFsxNSwibCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfdGFza1BsYXRmb3JtRGV0ZWN0aW9uIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJkIixbNDYsImUiXSxbNTIsImYiLFsyLFsxNSwiYyJdLCJBIixbN11dXSxbMjIsWzEsWzE1LCJmIl0sWzE4LFsxNyxbMTUsImYiXSwibGVuZ3RoIl0sMF1dLFs0NixbNTMsWzIsWzE1LCJlIl0sIm1lcmdlSGl0RGF0YUZvcktleSIsWzcsWzE3LFsxNSwiYiJdLCJGVCJdLFs4LCJwbGYiLFsyLFsxNSwiZiJdLCJqb2luIixbNywiLiJdXV1dXV1dXV0sWzUyLCJiIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX3BsYXRmb3JtRGV0ZWN0aW9uIl1dLFszNixbOCwiQSIsWzE1LCJkIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAKXQosImVudGl0aWVzIjp7CiJfX2MiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfYXV0b19yZWRhY3QiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfY29udmVyc2lvbl9tYXJraW5nIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2VtX2Rvd25sb2FkIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2VtX2Zvcm0iOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfZW1fb3V0Ym91bmRfY2xpY2siOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfZW1fcGFnZV92aWV3Ijp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2VtX3Njcm9sbCI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9lbV9zaXRlX3NlYXJjaCI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9lbV92aWRlbyI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9nYV9maXJzdCI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9nYV9sYXN0Ijp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2dhX3JlZ3Njb3BlIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fZSI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2djdCI6eyI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX29ndF8xcF9kYXRhX3YyIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fc2V0X3Byb2R1Y3Rfc2V0dGluZ3MiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KCgp9CiwiYmxvYiI6eyIxIjoiMSIsIjEwIjoiRy1WODRYUDhXR1hZfEdULVROR1hSNlE4IiwiMTEiOnRydWUsIjE0IjoiNjdtMCIsIjE1IjoiMCIsIjE2IjoiQ2hFSThJT2Mwd1lRZ09tc2t2dWx4S3FSQVJJZEFMMlBZWmFzNEo1RE8vLzVIc2p6aTJxK1ZKU0NtVXAzTTJJUTZkWWFBckRPIiwiMTciOiIiLCIxOSI6ImRhdGFMYXllciIsIjIiOnRydWUsIjIwIjoiIiwiMjEiOiJ3d3cuZ29vZ2xldGFnbWFuYWdlci5jb20iLCIyMiI6ImV5SXdJam9pVGs4aUxDSXhJam9pVGs4dE1ETWlMQ0l5SWpwbVlXeHpaU3dpTXlJNkltZHZiMmRzWlM1dWJ5SXNJalFpT2lKeVpXZHBiMjR4SWl3aU5TSTZabUZzYzJVc0lqWWlPblJ5ZFdVc0lqY2lPaUpoWkY5emRHOXlZV2RsZkdGdVlXeDVkR2xqYzE5emRHOXlZV2RsZkdGa1gzVnpaWEpmWkdGMFlYeGhaRjl3WlhKemIyNWhiR2w2WVhScGIyNGlMQ0k1SWpwMGNuVmxmUSIsIjIzIjoiZ29vZ2xlLnRhZ21hbmFnZXIuZGVidWd1aTIucXVldWUiLCIyNCI6InRhZ2Fzc2lzdGFudC5nb29nbGUuY29tIiwiMjciOjAuMDA1LCIzIjoid3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tIiwiMzAiOiJOTyIsIjMxIjoiTk8tMDMiLCIzMiI6ZmFsc2UsIjMzIjoicmVnaW9uMSIsIjM0IjoiRy1WODRYUDhXR1hZIiwiMzUiOiJHIiwiMzYiOiJodHRwczovL2Fkc2VydmljZS5nb29nbGUuY29tL3BhZ2VhZC9yZWdjbGsiLCIzNyI6Il9fVEFHR1lfSU5TVEFMTEVEIiwiMzgiOiJjY3QuZ29vZ2xlIiwiMzkiOiJnb29nVGFnZ3lSZWZlcnJlciIsIjQwIjoiaHR0cHM6Ly9jY3QuZ29vZ2xlL3RhZ2d5L2FnZW50LmpzIiwiNDEiOiJnb29nbGUudGFnbWFuYWdlci50YS5wcm9kcXVldWUiLCI0MiI6MC4wMSwiNDMiOiJ7XCJrZXlzXCI6W3tcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCS2x5VFgyanlvYnBRQ21mVXlCYmhCeVFIazlaMkhkTjVsSHhwQkF0SUtHTWNtencwZ0UrZWJsWUNtbTFHYTdiWWVUZHlkb0ptZTZJcGFTb0NVMElVVW89XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiZGVlNGIzNTEtYjBmNS00YzI3LWE4YzgtZWQ2NjA0NzdhNDRjXCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCRHRZQlJuUEJTMWc2bWVYTzFyUTVhNTJCNUZibmg3REM1anF2MDJpeEpzc24wazFKOXJjSENhVmMvenpSc25zSEJ6U29GS3M2SjhwSDdDY25RUDNFanc9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiYWQxOTNiMmEtNGE5MC00YzFhLWI3OWUtZGUzN2FjMzkxYmQyXCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCTVowVU11ZEFlNFBvYWZTVHBVeFB0SWtmQmVDTWJGQlh2dHlSWXZITENTUS9FVXZFSnNtc1Y0dDZOQi9CRVZwcUwzSHY4Z05TUWg3SytTVW9vZjI1YW89XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiNDhjNGVmZTEtZmRkMC00MzZhLWFjOGYtOTIzZjExOTE4Nzg3XCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCRmZsdlVsK3hwSGFGVkNJWU8xS1BMeGt2K0FqZGw0ZDhydnJYaEk2emZwbmJCRHFJNTFERGt0SEhiM1pXSVM1N29EaDBLaXI5QXVDT29uMk1PeE5WOVk9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiNDMyYmMyNzAtOTllYS00MjIwLWI1NjItZTJjNWFlNzdkNGQ5XCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCQVE4VGt5NERMV09KYkhPSGJWWURiUVpFZkVlbGI0RlRCOEVZTVFlUlFpTDFtMUx0QWQwcjN6ZXlMamdaMy9XMjRSOFZmYjIyelkyaXg2Vy9UZkNqakE9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiMDUwYTZlMTEtMzhhYi00ZjgwLTg5Y2ItN2IzMTliOTcwNGMwXCJ9XX0iLCI0NCI6IjExODg5NzkyMH4xMTg4OTc5MzAiLCI0NSI6dHJ1ZSwiNDYiOnsiMSI6IjEwMDAiLCIxMCI6IjY2dTAiLCIxMSI6IjY2ZzAiLCIxNCI6IjEwMDAiLCIxNiI6IlVTLUNPflVTLUNUflVTLU1UflVTLU5FflVTLU5IflVTLVRYflVTLU1OflVTLU5KflVTLU1EflVTLU9SflVTLURFIiwiMTciOiJVUy1DT35VUy1DVH5VUy1NVH5VUy1ORX5VUy1OSH5VUy1UWH5VUy1NTn5VUy1OSn5VUy1NRH5VUy1PUn5VUy1ERSIsIjIiOiI5IiwiMjAiOiI1MDAwIiwiMjEiOiI1MDAwIiwiMjIiOiI0LjQuMCIsIjIzIjoiMC4wLjAiLCIyNSI6IjEiLCIyNiI6IjQwMDAiLCIyNyI6IjEwMCIsIjMiOiI1IiwiNCI6ImFkX3N0b3JhZ2V8YW5hbHl0aWNzX3N0b3JhZ2V8YWRfdXNlcl9kYXRhfGFkX3BlcnNvbmFsaXphdGlvbiIsIjQ0IjoiMTUwMDAiLCI0OCI6IjMwMDAwIiwiNSI6ImFkX3N0b3JhZ2V8YW5hbHl0aWNzX3N0b3JhZ2V8YWRfdXNlcl9kYXRhIiwiNiI6IjEiLCI2MSI6IjEwMDAiLCI2MiI6IkE2T05IUlk3L2J2QnJvK0lNWmQvYTZMTmpuN1NTdjk5OVNrTi9oRkFFOUw2dk1yMzRkTmdmZFNWZFltdjRVK05IWmcxc3hkMzhSdGNpUnBSVXRJUlBnUUFBQUNDZXlKdmNtbG5hVzRpT2lKb2RIUndjem92TDNkM2R5NW5iMjluYkdWMFlXZHRZVzVoWjJWeUxtTnZiVG8wTkRNaUxDSm1aV0YwZFhKbElqb2lVMmhoY21Wa1YyOXlhMlZ5UlhoMFpXNWtaV1JNYVdabGRHbHRaU0lzSW1WNGNHbHllU0k2TVRjM05qY3lPVFl3TUN3aWFYTlVhR2x5WkZCaGNuUjVJanAwY25WbGZRPT0iLCI2MyI6IjEwMDAiLCI2NiI6IjEwMCIsIjciOiIxMCJ9LCI0OCI6dHJ1ZSwiNSI6IkctVjg0WFA4V0dYWSIsIjU1IjpbIkctVjg0WFA4V0dYWSJdLCI1NiI6W3siMSI6NDAzLCIzIjowLjUsIjQiOjExNTkzODQ2NSwiNSI6MTE1OTM4NDY2LCI2IjowLCI3IjoyfSx7IjEiOjQwNCwiMyI6MC41LCI0IjoxMTU5Mzg0NjgsIjUiOjExNTkzODQ2OSwiNiI6MCwiNyI6MX0seyIxIjo2MDIsIjMiOjAuMDEsIjQiOjEyMDEyNDQ1NSwiNSI6MTIwMTI0NDUzLCI2IjoxMjAxMjQ0NTQsIjciOjN9LHsiMSI6NTY5LCIyIjp0cnVlfSx7IjEiOjQ3NSwiMiI6dHJ1ZX0seyIxIjo1MDIsIjIiOnRydWV9LHsiMSI6NTc3LCIyIjp0cnVlfSx7IjEiOjU2OCwiMyI6MC4wMSwiNCI6MTE5NzkxNzQ5LCI1IjoxMTk3OTE3NDgsIjYiOjAsIjciOjF9LHsiMSI6NDkwLCIyIjp0cnVlfSx7IjEiOjQ5MSwiMyI6MC4wMSwiNCI6MTE4MDEyMDA3LCI1IjoxMTgwMTIwMDgsIjYiOjExODAxMjAwOSwiNyI6MX0seyIxIjo0ODAsIjIiOnRydWV9LHsiMSI6NTk0LCIzIjowLjAxLCI0IjoxMTk3OTM5NzQsIjUiOjExOTc5Mzk3MiwiNiI6MTE5NzkzOTczLCI3IjoxfSx7IjEiOjU5OSwiMiI6dHJ1ZX0seyIxIjo1ODAsIjMiOjAuMSwiNCI6MTE5NTI3MDIwLCI1IjoxMTk1MjcwMTksIjYiOjAsIjciOjF9LHsiMSI6NTIzLCIyIjp0cnVlfSx7IjEiOjU4MSwiMyI6MC4wMSwiNCI6MTE5OTQ4ODU0LCI1IjoxMTk5NDg4NTIsIjYiOjExOTk0ODg1MywiNyI6M30seyIxIjo1NTUsIjMiOjAuMDEsIjQiOjExOTI1OTYwNiwiNSI6MTE5MjU5NjA1LCI2IjowLCI3IjoyfSx7IjEiOjUwNCwiMiI6dHJ1ZX0seyIxIjo0NjIsIjMiOjAuMDUsIjQiOjExODgwNjUyNCwiNSI6MTE4ODA2NTI1LCI2IjoxMTg4MDY1MjYsIjciOjF9LHsiMSI6NDEzLCIyIjp0cnVlfSx7IjEiOjU5MywiMiI6dHJ1ZX0seyIxIjo1MDYsIjIiOnRydWV9LHsiMSI6NTAwLCIyIjp0cnVlfSx7IjEiOjU2MSwiMyI6MC4wMDEsIjQiOjExOTQwNDcwMywiNSI6MTE5NDA0NzAyLCI2IjowLCI3IjoxfSx7IjEiOjQ4MSwiMyI6MC4wMDEsIjQiOjExOTQwNDcwMSwiNSI6MTE5NDA0NzAwLCI2IjowLCI3IjoxfSx7IjEiOjQ1MCwiMyI6MC4wMSwiNCI6MTE3MjI3NzE0LCI1IjoxMTcyMjc3MTUsIjYiOjExNzIyNzcxNiwiNyI6M30seyIxIjo1ODMsIjMiOjAuNSwiNCI6MTE5ODk2ODAzLCI1IjoxMTk4OTY4MDIsIjYiOjAsIjciOjF9LHsiMSI6NDU4LCIyIjp0cnVlfSx7IjEiOjU4MiwiMyI6MC4wMSwiNCI6MTE5MzgxNjY0LCI1IjoxMTkzODE2NjIsIjYiOjExOTM4MTY2MywiNyI6MX0seyIxIjo1NzAsIjIiOnRydWV9LHsiMSI6NDk4LCIzIjowLjIsIjQiOjExNTYxNjk4NSwiNSI6MTE1NjE2OTg2LCI2IjowLCI3IjoxfSx7IjEiOjU5NSwiMiI6dHJ1ZX0seyIxIjo1ODksIjMiOjAuMDEsIjQiOjEyMDA4NDIxNSwiNSI6MTIwMDg0MjE0LCI2IjowLCI3IjoxfSx7IjEiOjQ5NSwiMyI6MC4wNSwiNCI6MTE4MTMxODEwLCI1IjoxMTgxMzE4MDgsIjYiOjExODEzMTgwOSwiNyI6M30seyIxIjo1ODcsIjMiOjAuMSwiNCI6MTE5NzMyMTcxLCI1IjoxMTk3MzIxNzAsIjYiOjAsIjciOjN9LHsiMSI6NTg0LCIyIjp0cnVlfSx7IjEiOjU2NCwiMyI6MC4wMDAxLCI0IjoxMTkyMDUzMTcsIjUiOjExOTIwNTMxNSwiNiI6MTE5MjA1MzE2LCI3IjoxfSx7IjEiOjU1NywiMiI6dHJ1ZX0seyIxIjo0MjcsIjMiOjAuMSwiNCI6MTE5NzI0MzIyLCI1IjoxMTk3MjQzMjAsIjYiOjExOTcyNDMyMSwiNyI6Mn0seyIxIjo1NzYsIjMiOjAuMDEsIjQiOjExOTMxNzgxMCwiNSI6MTE5MzE3ODExLCI2IjoxMTkzMTgxNzcsIjciOjN9LHsiMSI6NTczLCIyIjp0cnVlfSx7IjEiOjQ5OSwiMiI6dHJ1ZX0seyIxIjo1MTYsIjMiOjAuMSwiNCI6MTE4Mzk1MzM1LCI1IjoxMTgzOTUzMzMsIjYiOjExODM5NTMzNCwiNyI6MX0seyIxIjo1MjQsIjIiOnRydWV9XSwiNTkiOlsiRy1WODRYUDhXR1hZIl0sIjYiOiIyNTAwOTM2MDIiLCI2MiI6dHJ1ZSwiNjMiOjAuMDA1fQosInBlcm1pc3Npb25zIjp7CiJfX2MiOnt9CiwKIl9fY2NkX2F1dG9fcmVkYWN0Ijp7fQosCiJfX2NjZF9jb252ZXJzaW9uX21hcmtpbmciOnt9CiwKIl9fY2NkX2VtX2Rvd25sb2FkIjp7Imxpc3Rlbl9kYXRhX2xheWVyIjp7ImFjY2Vzc1R5cGUiOiJzcGVjaWZpYyIsImFsbG93ZWRFdmVudHMiOlsiZ3RtLmxpbmtDbGljayJdfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJkZXRlY3RfbGlua19jbGlja19ldmVudHMiOnsiYWxsb3dXYWl0Rm9yVGFncyI6IiJ9fQosCiJfX2NjZF9lbV9mb3JtIjp7ImFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlIjp7fSwibGlzdGVuX2RhdGFfbGF5ZXIiOnsiYWNjZXNzVHlwZSI6InNwZWNpZmljIiwiYWxsb3dlZEV2ZW50cyI6WyJndG0uZm9ybUludGVyYWN0IiwiZ3RtLmZvcm1TdWJtaXQiLCJndG0uY2xpY2stdjIiXX0sImRldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHMiOnsiYWxsb3dXYWl0Rm9yVGFncyI6IiJ9LCJkZXRlY3RfY2xpY2tfZXZlbnRzIjp7fSwiZGV0ZWN0X2Zvcm1faW50ZXJhY3Rpb25fZXZlbnRzIjp7fX0KLAoiX19jY2RfZW1fb3V0Ym91bmRfY2xpY2siOnsiZ2V0X3VybCI6eyJ1cmxQYXJ0cyI6ImFueSIsInF1ZXJpZXNBbGxvd2VkIjoiYW55In0sImxpc3Rlbl9kYXRhX2xheWVyIjp7ImFjY2Vzc1R5cGUiOiJzcGVjaWZpYyIsImFsbG93ZWRFdmVudHMiOlsiZ3RtLmxpbmtDbGljayJdfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJkZXRlY3RfbGlua19jbGlja19ldmVudHMiOnsiYWxsb3dXYWl0Rm9yVGFncyI6IiJ9fQosCiJfX2NjZF9lbV9wYWdlX3ZpZXciOnsibGlzdGVuX2RhdGFfbGF5ZXIiOnsiYWNjZXNzVHlwZSI6InNwZWNpZmljIiwiYWxsb3dlZEV2ZW50cyI6WyJndG0uaGlzdG9yeUNoYW5nZS12MiJdfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJkZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzIjp7fX0KLAoiX19jY2RfZW1fc2Nyb2xsIjp7Imxpc3Rlbl9kYXRhX2xheWVyIjp7ImFjY2Vzc1R5cGUiOiJzcGVjaWZpYyIsImFsbG93ZWRFdmVudHMiOlsiZ3RtLnNjcm9sbERlcHRoIl19LCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSI6e30sImRldGVjdF9zY3JvbGxfZXZlbnRzIjp7fX0KLAoiX19jY2RfZW1fc2l0ZV9zZWFyY2giOnsiZ2V0X3VybCI6eyJ1cmxQYXJ0cyI6ImFueSIsInF1ZXJpZXNBbGxvd2VkIjoiYW55In0sInJlYWRfY29udGFpbmVyX2RhdGEiOnt9fQosCiJfX2NjZF9lbV92aWRlbyI6eyJsaXN0ZW5fZGF0YV9sYXllciI6eyJhY2Nlc3NUeXBlIjoic3BlY2lmaWMiLCJhbGxvd2VkRXZlbnRzIjpbImd0bS52aWRlbyJdfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJkZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMiOnsiYWxsb3dGaXhNaXNzaW5nSmF2YVNjcmlwdEFwaSI6ZmFsc2V9fQosCiJfX2NjZF9nYV9maXJzdCI6eyJyZWFkX2RvbV9lbGVtZW50cyI6eyJhbGxvd2VkQ3NzU2VsZWN0b3JzIjoiYW55In0sImdldF91cmwiOnsidXJsUGFydHMiOiJzcGVjaWZpYyIsInByb3RvY29sIjp0cnVlLCJob3N0Ijp0cnVlfX0KLAoiX19jY2RfZ2FfbGFzdCI6e30KLAoiX19jY2RfZ2FfcmVnc2NvcGUiOnsicmVhZF9jb250YWluZXJfZGF0YSI6e319CiwKIl9fZSI6eyJyZWFkX2V2ZW50X2RhdGEiOnsiZXZlbnREYXRhQWNjZXNzIjoic3BlY2lmaWMiLCJrZXlQYXR0ZXJucyI6WyJldmVudCJdfX0KLAoiX19nY3QiOnsiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9fQosCiJfX29ndF8xcF9kYXRhX3YyIjp7ImRldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEiOnsibGltaXREYXRhU291cmNlcyI6dHJ1ZSwiYWxsb3dBdXRvRGF0YVNvdXJjZXMiOnRydWUsImFsbG93TWFudWFsRGF0YVNvdXJjZXMiOmZhbHNlLCJhbGxvd0NvZGVEYXRhU291cmNlcyI6ZmFsc2V9fQosCiJfX3NldF9wcm9kdWN0X3NldHRpbmdzIjp7fQoKCn0KCgoKLCJzZWN1cml0eV9ncm91cHMiOnsKImdvb2dsZSI6WwoiX19jIgosCiJfX2NjZF9hdXRvX3JlZGFjdCIKLAoiX19jY2RfY29udmVyc2lvbl9tYXJraW5nIgosCiJfX2NjZF9lbV9kb3dubG9hZCIKLAoiX19jY2RfZW1fZm9ybSIKLAoiX19jY2RfZW1fb3V0Ym91bmRfY2xpY2siCiwKIl9fY2NkX2VtX3BhZ2VfdmlldyIKLAoiX19jY2RfZW1fc2Nyb2xsIgosCiJfX2NjZF9lbV9zaXRlX3NlYXJjaCIKLAoiX19jY2RfZW1fdmlkZW8iCiwKIl9fY2NkX2dhX2ZpcnN0IgosCiJfX2NjZF9nYV9sYXN0IgosCiJfX2NjZF9nYV9yZWdzY29wZSIKLAoiX19lIgosCiJfX2djdCIKLAoiX19vZ3RfMXBfZGF0YV92MiIKLAoiX19zZXRfcHJvZHVjdF9zZXR0aW5ncyIKCl0KCgp9CgoKCgoKfTsKCgoKCnZhciBrLGFhPXR5cGVvZiBPYmplY3QuY3JlYXRlPT0iZnVuY3Rpb24iP09iamVjdC5jcmVhdGU6ZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oKXt9O2IucHJvdG90eXBlPWE7cmV0dXJuIG5ldyBifSxiYT10eXBlb2YgT2JqZWN0LmRlZmluZVByb3BlcnRpZXM9PSJmdW5jdGlvbiI/T2JqZWN0LmRlZmluZVByb3BlcnR5OmZ1bmN0aW9uKGEsYixjKXtpZihhPT1BcnJheS5wcm90b3R5cGV8fGE9PU9iamVjdC5wcm90b3R5cGUpcmV0dXJuIGE7YVtiXT1jLnZhbHVlO3JldHVybiBhfSxjYT1mdW5jdGlvbihhKXtmb3IodmFyIGI9WyJvYmplY3QiPT10eXBlb2YgZ2xvYmFsVGhpcyYmZ2xvYmFsVGhpcyxhLCJvYmplY3QiPT10eXBlb2Ygd2luZG93JiZ3aW5kb3csIm9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmLCJvYmplY3QiPT10eXBlb2YgZ2xvYmFsJiZnbG9iYWxdLGM9MDtjPGIubGVuZ3RoOysrYyl7dmFyIGQ9YltjXTtpZihkJiZkLk1hdGg9PU1hdGgpcmV0dXJuIGR9dGhyb3cgRXJyb3IoIkNhbm5vdCBmaW5kIGdsb2JhbCBvYmplY3QiKTsKfSxoYT1jYSh0aGlzKSxpYT10eXBlb2YgU3ltYm9sPT09ImZ1bmN0aW9uIiYmdHlwZW9mIFN5bWJvbCgieCIpPT09InN5bWJvbCIsa2E9e30sbGE9e30sbmE9ZnVuY3Rpb24oYSxiLGMpe2lmKCFjfHxhIT1udWxsKXt2YXIgZD1sYVtiXTtpZihkPT1udWxsKXJldHVybiBhW2JdO3ZhciBlPWFbZF07cmV0dXJuIGUhPT12b2lkIDA/ZTphW2JdfX0sb2E9ZnVuY3Rpb24oYSxiLGMpe2lmKGIpYTp7dmFyIGQ9YS5zcGxpdCgiLiIpLGU9ZC5sZW5ndGg9PT0xLGY9ZFswXSxnOyFlJiZmIGluIGthP2c9a2E6Zz1oYTtmb3IodmFyIGg9MDtoPGQubGVuZ3RoLTE7aCsrKXt2YXIgbD1kW2hdO2lmKCEobCBpbiBnKSlicmVhayBhO2c9Z1tsXX12YXIgbj1kW2QubGVuZ3RoLTFdLHA9aWEmJmM9PT0iZXM2Ij9nW25dOm51bGwscT1iKHApO2lmKHEhPW51bGwpaWYoZSliYShrYSxuLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6cX0pO2Vsc2UgaWYocSE9PXApe2lmKGxhW25dPT09dm9pZCAwKXt2YXIgcj0KTWF0aC5yYW5kb20oKSoxRTk+Pj4wO2xhW25dPWlhP2hhLlN5bWJvbChuKToiJGpzY3AkIityKyIkIitufWJhKGcsbGFbbl0se2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpxfSl9fX0scGE7aWYoaWEmJnR5cGVvZiBPYmplY3Quc2V0UHJvdG90eXBlT2Y9PSJmdW5jdGlvbiIpcGE9T2JqZWN0LnNldFByb3RvdHlwZU9mO2Vsc2V7dmFyIHJhO2E6e3ZhciB0YT17YTohMH0sdWE9e307dHJ5e3VhLl9fcHJvdG9fXz10YTtyYT11YS5hO2JyZWFrIGF9Y2F0Y2goYSl7fXJhPSExfXBhPXJhP2Z1bmN0aW9uKGEsYil7YS5fX3Byb3RvX189YjtpZihhLl9fcHJvdG9fXyE9PWIpdGhyb3cgbmV3IFR5cGVFcnJvcihhKyIgaXMgbm90IGV4dGVuc2libGUiKTtyZXR1cm4gYX06bnVsbH0KdmFyIHZhPXBhLHdhPWZ1bmN0aW9uKGEsYil7YS5wcm90b3R5cGU9YWEoYi5wcm90b3R5cGUpO2EucHJvdG90eXBlLmNvbnN0cnVjdG9yPWE7aWYodmEpdmEoYSxiKTtlbHNlIGZvcih2YXIgYyBpbiBiKWlmKGMhPSJwcm90b3R5cGUiKWlmKE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKXt2YXIgZD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGIsYyk7ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsYyxkKX1lbHNlIGFbY109YltjXTthLkZ0PWIucHJvdG90eXBlfSx4YT1mdW5jdGlvbihhKXt2YXIgYj0wO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBiPGEubGVuZ3RoP3tkb25lOiExLHZhbHVlOmFbYisrXX06e2RvbmU6ITB9fX0sbT1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgU3ltYm9sIT0idW5kZWZpbmVkIiYmU3ltYm9sLml0ZXJhdG9yJiZhW1N5bWJvbC5pdGVyYXRvcl07aWYoYilyZXR1cm4gYi5jYWxsKGEpO2lmKHR5cGVvZiBhLmxlbmd0aD09Im51bWJlciIpcmV0dXJue25leHQ6eGEoYSl9Owp0aHJvdyBFcnJvcihTdHJpbmcoYSkrIiBpcyBub3QgYW4gaXRlcmFibGUgb3IgQXJyYXlMaWtlIik7fSx5YT1mdW5jdGlvbihhKXtmb3IodmFyIGIsYz1bXTshKGI9YS5uZXh0KCkpLmRvbmU7KWMucHVzaChiLnZhbHVlKTtyZXR1cm4gY30sdz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIEFycmF5P2E6eWEobShhKSl9LEFhPWZ1bmN0aW9uKGEpe3JldHVybiB6YShhLGEpfSx6YT1mdW5jdGlvbihhLGIpe2EucmF3PWI7T2JqZWN0LmZyZWV6ZSYmKE9iamVjdC5mcmVlemUoYSksT2JqZWN0LmZyZWV6ZShiKSk7cmV0dXJuIGF9LEJhPWlhJiZ0eXBlb2YgbmEoT2JqZWN0LCJhc3NpZ24iKT09ImZ1bmN0aW9uIj9uYShPYmplY3QsImFzc2lnbiIpOmZ1bmN0aW9uKGEsYil7aWYoYT09bnVsbCl0aHJvdyBuZXcgVHlwZUVycm9yKCJObyBudWxsaXNoIGFyZyIpO2E9T2JqZWN0KGEpO2Zvcih2YXIgYz0xO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspe3ZhciBkPWFyZ3VtZW50c1tjXTsKaWYoZClmb3IodmFyIGUgaW4gZClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZCxlKSYmKGFbZV09ZFtlXSl9cmV0dXJuIGF9O29hKCJPYmplY3QuYXNzaWduIixmdW5jdGlvbihhKXtyZXR1cm4gYXx8QmF9LCJlczYiKTt2YXIgQ2E9ZnVuY3Rpb24oYSl7aWYoIShhIGluc3RhbmNlb2YgT2JqZWN0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJJdGVyYXRvciByZXN1bHQgIithKyIgaXMgbm90IGFuIG9iamVjdCIpO30sRGE9ZnVuY3Rpb24oKXt0aGlzLmZhPSExO3RoaXMuUj1udWxsO3RoaXMuamE9dm9pZCAwO3RoaXMuSD0xO3RoaXMuTj10aGlzLlo9MDt0aGlzLkxhPXRoaXMuSz1udWxsfSxFYT1mdW5jdGlvbihhKXtpZihhLmZhKXRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IHJ1bm5pbmciKTthLmZhPSEwfTtEYS5wcm90b3R5cGUueWE9ZnVuY3Rpb24oYSl7dGhpcy5qYT1hfTsKdmFyIEdhPWZ1bmN0aW9uKGEsYil7YS5LPXthbzpiLGlzRXhjZXB0aW9uOiEwfTthLkg9YS5afHxhLk59O0RhLnByb3RvdHlwZS5nZXROZXh0QWRkcmVzc0pzYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkh9O0RhLnByb3RvdHlwZS5nZXRZaWVsZFJlc3VsdEpzYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmphfTtEYS5wcm90b3R5cGUucmV0dXJuPWZ1bmN0aW9uKGEpe3RoaXMuSz17cmV0dXJuOmF9O3RoaXMuSD10aGlzLk59O0RhLnByb3RvdHlwZVsicmV0dXJuIl09RGEucHJvdG90eXBlLnJldHVybjtEYS5wcm90b3R5cGUuQWo9ZnVuY3Rpb24oYSl7dGhpcy5LPXtuZDphfTt0aGlzLkg9dGhpcy5OfTtEYS5wcm90b3R5cGUuanVtcFRocm91Z2hGaW5hbGx5QmxvY2tzPURhLnByb3RvdHlwZS5BajtEYS5wcm90b3R5cGUuYWM9ZnVuY3Rpb24oYSxiKXt0aGlzLkg9YjtyZXR1cm57dmFsdWU6YX19O0RhLnByb3RvdHlwZS55aWVsZD1EYS5wcm90b3R5cGUuYWM7CkRhLnByb3RvdHlwZS54cz1mdW5jdGlvbihhLGIpe3ZhciBjPW0oYSksZD1jLm5leHQoKTtDYShkKTtpZihkLmRvbmUpdGhpcy5qYT1kLnZhbHVlLHRoaXMuSD1iO2Vsc2UgcmV0dXJuIHRoaXMuUj1jLHRoaXMuYWMoZC52YWx1ZSxiKX07RGEucHJvdG90eXBlLnlpZWxkQWxsPURhLnByb3RvdHlwZS54cztEYS5wcm90b3R5cGUubmQ9ZnVuY3Rpb24oYSl7dGhpcy5IPWF9O0RhLnByb3RvdHlwZS5qdW1wVG89RGEucHJvdG90eXBlLm5kO0RhLnByb3RvdHlwZS5Eaj1mdW5jdGlvbigpe3RoaXMuSD0wfTtEYS5wcm90b3R5cGUuanVtcFRvRW5kPURhLnByb3RvdHlwZS5EajtEYS5wcm90b3R5cGUuTmo9ZnVuY3Rpb24oYSxiKXt0aGlzLlo9YTtiIT12b2lkIDAmJih0aGlzLk49Yil9O0RhLnByb3RvdHlwZS5zZXRDYXRjaEZpbmFsbHlCbG9ja3M9RGEucHJvdG90eXBlLk5qO0RhLnByb3RvdHlwZS52Zz1mdW5jdGlvbihhKXt0aGlzLlo9MDt0aGlzLk49YXx8MH07CkRhLnByb3RvdHlwZS5zZXRGaW5hbGx5QmxvY2s9RGEucHJvdG90eXBlLnZnO0RhLnByb3RvdHlwZS5Jaj1mdW5jdGlvbihhLGIpe3RoaXMuSD1hO3RoaXMuWj1ifHwwfTtEYS5wcm90b3R5cGUubGVhdmVUcnlCbG9jaz1EYS5wcm90b3R5cGUuSWo7RGEucHJvdG90eXBlLlBoPWZ1bmN0aW9uKGEpe3RoaXMuWj1hfHwwO3ZhciBiPXRoaXMuSy5hbzt0aGlzLks9bnVsbDtyZXR1cm4gYn07RGEucHJvdG90eXBlLmVudGVyQ2F0Y2hCbG9jaz1EYS5wcm90b3R5cGUuUGg7RGEucHJvdG90eXBlLmtkPWZ1bmN0aW9uKGEsYixjKXtjP3RoaXMuTGFbY109dGhpcy5LOnRoaXMuTGE9W3RoaXMuS107dGhpcy5aPWF8fDA7dGhpcy5OPWJ8fDB9O0RhLnByb3RvdHlwZS5lbnRlckZpbmFsbHlCbG9jaz1EYS5wcm90b3R5cGUua2Q7CkRhLnByb3RvdHlwZS5oZT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuTGEuc3BsaWNlKGJ8fDApWzBdLGQ9dGhpcy5LPXRoaXMuS3x8YztkP2QuaXNFeGNlcHRpb24/dGhpcy5IPXRoaXMuWnx8dGhpcy5OOmQubmQhPXZvaWQgMCYmdGhpcy5OPGQubmQ/KHRoaXMuSD1kLm5kLHRoaXMuSz1udWxsKTp0aGlzLkg9dGhpcy5OOnRoaXMuSD1hfTtEYS5wcm90b3R5cGUubGVhdmVGaW5hbGx5QmxvY2s9RGEucHJvdG90eXBlLmhlO0RhLnByb3RvdHlwZS5mZT1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IEhhKGEpfTtEYS5wcm90b3R5cGUuZm9ySW49RGEucHJvdG90eXBlLmZlO3ZhciBIYT1mdW5jdGlvbihhKXt0aGlzLks9YTt0aGlzLkg9W107Zm9yKHZhciBiIGluIGEpdGhpcy5ILnB1c2goYik7dGhpcy5ILnJldmVyc2UoKX07SGEucHJvdG90eXBlLmhvPWZ1bmN0aW9uKCl7Zm9yKDt0aGlzLkgubGVuZ3RoPjA7KXt2YXIgYT10aGlzLkgucG9wKCk7aWYoYSBpbiB0aGlzLkspcmV0dXJuIGF9cmV0dXJuIG51bGx9OwpIYS5wcm90b3R5cGUuZ2V0TmV4dD1IYS5wcm90b3R5cGUuaG87CnZhciBJYT1mdW5jdGlvbihhKXt0aGlzLkg9bmV3IERhO3RoaXMuSz1hfSxMYT1mdW5jdGlvbihhLGIpe0VhKGEuSCk7dmFyIGM9YS5ILlI7aWYoYylyZXR1cm4gSmEoYSwicmV0dXJuImluIGM/Y1sicmV0dXJuIl06ZnVuY3Rpb24oZCl7cmV0dXJue3ZhbHVlOmQsZG9uZTohMH19LGIsYS5ILnJldHVybik7YS5ILnJldHVybihiKTtyZXR1cm4gS2EoYSl9LEphPWZ1bmN0aW9uKGEsYixjLGQpe3RyeXt2YXIgZT1iLmNhbGwoYS5ILlIsYyk7Q2EoZSk7aWYoIWUuZG9uZSlyZXR1cm4gYS5ILmZhPSExLGU7dmFyIGY9ZS52YWx1ZX1jYXRjaChnKXtyZXR1cm4gYS5ILlI9bnVsbCxHYShhLkgsZyksS2EoYSl9YS5ILlI9bnVsbDtkLmNhbGwoYS5ILGYpO3JldHVybiBLYShhKX0sS2E9ZnVuY3Rpb24oYSl7Zm9yKDthLkguSDspdHJ5e3ZhciBiPWEuSyhhLkgpO2lmKGIpcmV0dXJuIGEuSC5mYT0hMSx7dmFsdWU6Yi52YWx1ZSxkb25lOiExfX1jYXRjaChkKXthLkguamE9dm9pZCAwLEdhKGEuSCwKZCl9YS5ILmZhPSExO2lmKGEuSC5LKXt2YXIgYz1hLkguSzthLkguSz1udWxsO2lmKGMuaXNFeGNlcHRpb24pdGhyb3cgYy5hbztyZXR1cm57dmFsdWU6Yy5yZXR1cm4sZG9uZTohMH19cmV0dXJue3ZhbHVlOnZvaWQgMCxkb25lOiEwfX0sTWE9ZnVuY3Rpb24oYSl7dGhpcy5uZXh0PWZ1bmN0aW9uKGIpe3ZhciBjO0VhKGEuSCk7YS5ILlI/Yz1KYShhLGEuSC5SLm5leHQsYixhLkgueWEpOihhLkgueWEoYiksYz1LYShhKSk7cmV0dXJuIGN9O3RoaXMudGhyb3c9ZnVuY3Rpb24oYil7dmFyIGM7RWEoYS5IKTthLkguUj9jPUphKGEsYS5ILlJbInRocm93Il0sYixhLkgueWEpOihHYShhLkgsYiksYz1LYShhKSk7cmV0dXJuIGN9O3RoaXMucmV0dXJuPWZ1bmN0aW9uKGIpe3JldHVybiBMYShhLGIpfTt0aGlzW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc319LE5hPWZ1bmN0aW9uKGEsYil7dmFyIGM9bmV3IE1hKG5ldyBJYShiKSk7dmEmJmEucHJvdG90eXBlJiZ2YShjLAphLnByb3RvdHlwZSk7cmV0dXJuIGN9LE9hPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPU51bWJlcih0aGlzKSxiPVtdLGM9YTtjPGFyZ3VtZW50cy5sZW5ndGg7YysrKWJbYy1hXT1hcmd1bWVudHNbY107cmV0dXJuIGJ9LFFhPWZ1bmN0aW9uKGEpe3JldHVybiBhfTsvKgoKIENvcHlyaWdodCBUaGUgQ2xvc3VyZSBMaWJyYXJ5IEF1dGhvcnMuCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwp2YXIgUmE9dGhpc3x8c2VsZixTYT1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoKXt9Yy5wcm90b3R5cGU9Yi5wcm90b3R5cGU7YS5GdD1iLnByb3RvdHlwZTthLnByb3RvdHlwZT1uZXcgYzthLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1hO2EubnY9ZnVuY3Rpb24oZCxlLGYpe2Zvcih2YXIgZz1BcnJheShhcmd1bWVudHMubGVuZ3RoLTIpLGg9MjtoPGFyZ3VtZW50cy5sZW5ndGg7aCsrKWdbaC0yXT1hcmd1bWVudHNbaF07cmV0dXJuIGIucHJvdG90eXBlW2VdLmFwcGx5KGQsZyl9fTt2YXIgVGE9ZnVuY3Rpb24oYSxiKXt0aGlzLnR5cGU9YTt0aGlzLmRhdGE9Yn07dmFyIFVhPWZ1bmN0aW9uKCl7dGhpcy5tYXA9e307dGhpcy5IPXt9fTtVYS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm1hcFsiZHVzdC4iK2FdfTtVYS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dmFyIGM9ImR1c3QuIithO3RoaXMuSC5oYXNPd25Qcm9wZXJ0eShjKXx8KHRoaXMubWFwW2NdPWIpfTtVYS5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm1hcC5oYXNPd25Qcm9wZXJ0eSgiZHVzdC4iK2EpfTtVYS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGEpe3ZhciBiPSJkdXN0LiIrYTt0aGlzLkguaGFzT3duUHJvcGVydHkoYil8fGRlbGV0ZSB0aGlzLm1hcFtiXX07CnZhciBWYT1mdW5jdGlvbihhLGIpe3ZhciBjPVtdLGQ7Zm9yKGQgaW4gYS5tYXApaWYoYS5tYXAuaGFzT3duUHJvcGVydHkoZCkpe3ZhciBlPWQuc3Vic3RyaW5nKDUpO3N3aXRjaChiKXtjYXNlIDE6Yy5wdXNoKGUpO2JyZWFrO2Nhc2UgMjpjLnB1c2goYS5tYXBbZF0pO2JyZWFrO2Nhc2UgMzpjLnB1c2goW2UsYS5tYXBbZF1dKX19cmV0dXJuIGN9O1VhLnByb3RvdHlwZS5GYT1mdW5jdGlvbigpe3JldHVybiBWYSh0aGlzLDEpfTtVYS5wcm90b3R5cGUuaGM9ZnVuY3Rpb24oKXtyZXR1cm4gVmEodGhpcywyKX07VWEucHJvdG90eXBlLmZjPWZ1bmN0aW9uKCl7cmV0dXJuIFZhKHRoaXMsMyl9O3ZhciBXYT1mdW5jdGlvbigpe307V2EucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7fTt2YXIgWGE9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlPXt9O3RoaXMucHJlZml4PSJndG0uIn07az1YYS5wcm90b3R5cGU7ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLnZhbHVlW3RoaXMucHJlZml4K1N0cmluZyhhKV09Yn07ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWVbdGhpcy5wcmVmaXgrU3RyaW5nKGEpXX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWUuaGFzT3duUHJvcGVydHkodGhpcy5wcmVmaXgrU3RyaW5nKGEpKX07ay5kZWxldGU9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5wcmVmaXgrU3RyaW5nKGEpO3JldHVybiB0aGlzLnZhbHVlLmhhc093blByb3BlcnR5KGIpPyhkZWxldGUgdGhpcy52YWx1ZVtiXSwhMCk6ITF9O2suY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlPXt9fTsKay52YWx1ZXM9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3JldHVybiBmdW5jdGlvbiBjKCl7dmFyIGQsZSxmO3JldHVybiBOYShjLGZ1bmN0aW9uKGcpe3N3aXRjaChnLkgpe2Nhc2UgMTpnLnZnKDIpLGU9Zy5mZShhLnZhbHVlKTtjYXNlIDQ6aWYoKGQ9ZS5obygpKT09bnVsbCl7Zy5uZCgyKTticmVha31pZighYS52YWx1ZS5oYXNPd25Qcm9wZXJ0eShkKSl7Zy5uZCg0KTticmVha31mPVFhO3JldHVybiBnLmFjKGEudmFsdWVbZF0sOCk7Y2FzZSA4OmYoZy5qYSk7Zy5uZCg0KTticmVhaztjYXNlIDI6Zy5rZCgpLGcuaGUoMCl9fSl9KCl9O2hhLk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKFhhLnByb3RvdHlwZSx7c2l6ZTp7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIE9iamVjdC5rZXlzKHRoaXMudmFsdWUpLmxlbmd0aH19fSk7CmZ1bmN0aW9uIFlhKCl7dHJ5e2lmKE1hcClyZXR1cm4gbmV3IE1hcH1jYXRjaChhKXt9cmV0dXJuIG5ldyBYYX07dmFyIFphPWZ1bmN0aW9uKCl7dGhpcy52YWx1ZXM9W119O1phLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSl7dGhpcy52YWx1ZXMuaW5kZXhPZihhKT09PS0xJiZ0aGlzLnZhbHVlcy5wdXNoKGEpfTtaYS5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnZhbHVlcy5pbmRleE9mKGEpPi0xfTt2YXIgJGE9ZnVuY3Rpb24oYSxiKXt0aGlzLmZhPWE7dGhpcy5wYXJlbnQ9Yjt0aGlzLlI9dGhpcy5LPXZvaWQgMDt0aGlzLkhiPSExO3RoaXMuTj1mdW5jdGlvbihkLGUsZil7cmV0dXJuIGQuYXBwbHkoZSxmKX07dGhpcy5IPVlhKCk7dmFyIGM7YTp7dHJ5e2lmKFNldCl7Yz1uZXcgU2V0O2JyZWFrIGF9fWNhdGNoKGQpe31jPW5ldyBaYX10aGlzLlo9Y307JGEucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhLGIpe2FiKHRoaXMsYSxiLCExKX07JGEucHJvdG90eXBlLlFoPWZ1bmN0aW9uKGEsYil7YWIodGhpcyxhLGIsITApfTt2YXIgYWI9ZnVuY3Rpb24oYSxiLGMsZCl7YS5IYnx8YS5aLmhhcyhiKXx8KGQmJmEuWi5hZGQoYiksYS5ILnNldChiLGMpKX07az0kYS5wcm90b3R5cGU7Cmsuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5IYnx8KCF0aGlzLkguaGFzKGEpJiZ0aGlzLnBhcmVudCYmdGhpcy5wYXJlbnQuaGFzKGEpP3RoaXMucGFyZW50LnNldChhLGIpOnRoaXMuWi5oYXMoYSl8fHRoaXMuSC5zZXQoYSxiKSl9O2suZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLkguaGFzKGEpP3RoaXMuSC5nZXQoYSk6dGhpcy5wYXJlbnQ/dGhpcy5wYXJlbnQuZ2V0KGEpOnZvaWQgMH07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuISF0aGlzLkguaGFzKGEpfHwhKCF0aGlzLnBhcmVudHx8IXRoaXMucGFyZW50LmhhcyhhKSl9O2sud2I9ZnVuY3Rpb24oKXt2YXIgYT1uZXcgJGEodGhpcy5mYSx0aGlzKTt0aGlzLksmJmEuUWIodGhpcy5LKTthLnNkKHRoaXMuTik7YS51ZSh0aGlzLlIpO3JldHVybiBhfTtrLmplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZmF9O2suUWI9ZnVuY3Rpb24oYSl7dGhpcy5LPWF9O2suZm89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LfTsKay5zZD1mdW5jdGlvbihhKXt0aGlzLk49YX07ay5Qaj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk59O2suWmE9ZnVuY3Rpb24oKXt0aGlzLkhiPSEwfTtrLnVlPWZ1bmN0aW9uKGEpe3RoaXMuUj1hfTtrLnhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuUn07dmFyIGJiPWZ1bmN0aW9uKGEsYixjKXt2YXIgZDtkPUVycm9yLmNhbGwodGhpcyxhLm1lc3NhZ2UpO3RoaXMubWVzc2FnZT1kLm1lc3NhZ2U7InN0YWNrImluIGQmJih0aGlzLnN0YWNrPWQuc3RhY2spO3RoaXMudm89YTt0aGlzLlNuPWM9PT12b2lkIDA/ITE6Yzt0aGlzLks9W107dGhpcy5IPWJ9O3dhKGJiLEVycm9yKTt2YXIgY2I9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBiYj9hOm5ldyBiYihhLHZvaWQgMCwhMCl9O3ZhciBkYj1ZYSgpO2Z1bmN0aW9uIGViKGEsYil7Zm9yKHZhciBjLGQ9bShiKSxlPWQubmV4dCgpOyFlLmRvbmUmJiEoYz1mYihhLGUudmFsdWUpLGMgaW5zdGFuY2VvZiBUYSk7ZT1kLm5leHQoKSk7cmV0dXJuIGN9ZnVuY3Rpb24gZmIoYSxiKXt0cnl7dmFyIGM9YlswXSxkPWIuc2xpY2UoMSksZT1TdHJpbmcoYyksZj1kYi5oYXMoZSk/ZGIuZ2V0KGUpOmEuZ2V0KGUpO2lmKCFmfHx0eXBlb2YgZi5pbnZva2UhPT0iZnVuY3Rpb24iKXRocm93IGNiKEVycm9yKCJBdHRlbXB0aW5nIHRvIGV4ZWN1dGUgbm9uLWZ1bmN0aW9uICIrYlswXSsiLiIpKTtyZXR1cm4gZi5hcHBseShhLGQpfWNhdGNoKGgpe3ZhciBnPWEuZm8oKTtnJiZnKGgsYi5jb250ZXh0P3tpZDpiWzBdLGxpbmU6Yi5jb250ZXh0LmxpbmV9Om51bGwpO3Rocm93IGg7fX07dmFyIGdiPWZ1bmN0aW9uKCl7dGhpcy5LPW5ldyBXYTt0aGlzLkg9bmV3ICRhKHRoaXMuSyl9O2s9Z2IucHJvdG90eXBlO2suamU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LfTtrLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07ay5zZD1mdW5jdGlvbihhKXt0aGlzLkguc2QoYSl9O2suZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5yayhbYV0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpfTtrLnJrPWZ1bmN0aW9uKCl7Zm9yKHZhciBhLGI9bShPYS5hcHBseSgwLGFyZ3VtZW50cykpLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWE9ZmIodGhpcy5ILGMudmFsdWUpO3JldHVybiBhfTtrLkpxPWZ1bmN0aW9uKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKSxjPXRoaXMuSC53YigpO2MudWUoYSk7Zm9yKHZhciBkLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSlkPWZiKGMsZi52YWx1ZSk7cmV0dXJuIGR9O2suWmE9ZnVuY3Rpb24oKXt0aGlzLkguWmEoKX07dmFyIGhiPWZ1bmN0aW9uKGEsYil7dGhpcy5SPWE7dGhpcy5wYXJlbnQ9Yjt0aGlzLk49dGhpcy5IPXZvaWQgMDt0aGlzLkhiPSExO3RoaXMuSz1mdW5jdGlvbihjLGQsZSl7cmV0dXJuIGMuYXBwbHkoZCxlKX07dGhpcy52YWx1ZXM9bmV3IFVhfTtoYi5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYil7amIodGhpcyxhLGIsITEpfTtoYi5wcm90b3R5cGUuUWg9ZnVuY3Rpb24oYSxiKXtqYih0aGlzLGEsYiwhMCl9O3ZhciBqYj1mdW5jdGlvbihhLGIsYyxkKXtpZighYS5IYilpZihkKXt2YXIgZT1hLnZhbHVlcztlLnNldChiLGMpO2UuSFsiZHVzdC4iK2JdPSEwfWVsc2UgYS52YWx1ZXMuc2V0KGIsYyl9O2s9aGIucHJvdG90eXBlO2suc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5IYnx8KCF0aGlzLnZhbHVlcy5oYXMoYSkmJnRoaXMucGFyZW50JiZ0aGlzLnBhcmVudC5oYXMoYSk/dGhpcy5wYXJlbnQuc2V0KGEsYik6dGhpcy52YWx1ZXMuc2V0KGEsYikpfTsKay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWVzLmhhcyhhKT90aGlzLnZhbHVlcy5nZXQoYSk6dGhpcy5wYXJlbnQ/dGhpcy5wYXJlbnQuZ2V0KGEpOnZvaWQgMH07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuISF0aGlzLnZhbHVlcy5oYXMoYSl8fCEoIXRoaXMucGFyZW50fHwhdGhpcy5wYXJlbnQuaGFzKGEpKX07ay53Yj1mdW5jdGlvbigpe3ZhciBhPW5ldyBoYih0aGlzLlIsdGhpcyk7dGhpcy5IJiZhLlFiKHRoaXMuSCk7YS5zZCh0aGlzLkspO2EudWUodGhpcy5OKTtyZXR1cm4gYX07ay5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLlJ9O2suUWI9ZnVuY3Rpb24oYSl7dGhpcy5IPWF9O2suZm89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5IfTtrLnNkPWZ1bmN0aW9uKGEpe3RoaXMuSz1hfTtrLlBqPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuS307ay5aYT1mdW5jdGlvbigpe3RoaXMuSGI9ITB9O2sudWU9ZnVuY3Rpb24oYSl7dGhpcy5OPWF9O2sueGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OfTt2YXIga2I9ZnVuY3Rpb24oKXt0aGlzLk5hPSExO3RoaXMubGE9bmV3IFVhfTtrPWtiLnByb3RvdHlwZTtrLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5nZXQoYSl9O2suc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5OYXx8dGhpcy5sYS5zZXQoYSxiKX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuaGFzKGEpfTtrLnJlbW92ZT1mdW5jdGlvbihhKXt0aGlzLk5hfHx0aGlzLmxhLnJlbW92ZShhKX07ay5GYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLkZhKCl9O2suaGM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5oYygpfTtrLmZjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuZmMoKX07ay5aYT1mdW5jdGlvbigpe3RoaXMuTmE9ITB9O2suSGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OYX07ZnVuY3Rpb24gbGIoKXtmb3IodmFyIGE9bWIsYj17fSxjPTA7YzxhLmxlbmd0aDsrK2MpYlthW2NdXT1jO3JldHVybiBifWZ1bmN0aW9uIG5iKCl7dmFyIGE9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIjthKz1hLnRvTG93ZXJDYXNlKCkrIjAxMjM0NTY3ODktXyI7cmV0dXJuIGErIi4ifXZhciBtYixvYjtmdW5jdGlvbiBwYihhKXttYj1tYnx8bmIoKTtvYj1vYnx8bGIoKTtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7Yys9Myl7dmFyIGQ9YysxPGEubGVuZ3RoLGU9YysyPGEubGVuZ3RoLGY9YS5jaGFyQ29kZUF0KGMpLGc9ZD9hLmNoYXJDb2RlQXQoYysxKTowLGg9ZT9hLmNoYXJDb2RlQXQoYysyKTowLGw9Zj4+MixuPShmJjMpPDw0fGc+PjQscD0oZyYxNSk8PDJ8aD4+NixxPWgmNjM7ZXx8KHE9NjQsZHx8KHA9NjQpKTtiLnB1c2gobWJbbF0sbWJbbl0sbWJbcF0sbWJbcV0pfXJldHVybiBiLmpvaW4oIiIpfQpmdW5jdGlvbiBxYihhKXtmdW5jdGlvbiBiKGwpe2Zvcig7ZDxhLmxlbmd0aDspe3ZhciBuPWEuY2hhckF0KGQrKykscD1vYltuXTtpZihwIT1udWxsKXJldHVybiBwO2lmKCEvXltcc1x4YTBdKiQvLnRlc3QobikpdGhyb3cgRXJyb3IoIlVua25vd24gYmFzZTY0IGVuY29kaW5nIGF0IGNoYXI6ICIrbik7fXJldHVybiBsfW1iPW1ifHxuYigpO29iPW9ifHxsYigpO2Zvcih2YXIgYz0iIixkPTA7Oyl7dmFyIGU9YigtMSksZj1iKDApLGc9Yig2NCksaD1iKDY0KTtpZihoPT09NjQmJmU9PT0tMSlyZXR1cm4gYztjKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGU8PDJ8Zj4+NCk7ZyE9PTY0JiYoYys9U3RyaW5nLmZyb21DaGFyQ29kZShmPDw0JjI0MHxnPj4yKSxoIT09NjQmJihjKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGc8PDYmMTkyfGgpKSl9fTt2YXIgcmI9e307ZnVuY3Rpb24gc2IoYSxiKXt2YXIgYz1yYlthXTtjfHwoYz1yYlthXT1bXSk7Y1tiXT0hMH1mdW5jdGlvbiB0Yigpe2RlbGV0ZSByYi5HQTRfRVZFTlR9ZnVuY3Rpb24gdWIoKXt2YXIgYT12Yi5ILnNsaWNlKCk7cmIuR1RBR19FVkVOVF9GRUFUVVJFX0NIQU5ORUw9YX1mdW5jdGlvbiB3YihhKXtmb3IodmFyIGI9W10sYz0wLGQ9MDtkPGEubGVuZ3RoO2QrKylkJTg9PT0wJiZkPjAmJihiLnB1c2goU3RyaW5nLmZyb21DaGFyQ29kZShjKSksYz0wKSxhW2RdJiYoY3w9MTw8ZCU4KTtjPjAmJmIucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKGMpKTtyZXR1cm4gcGIoYi5qb2luKCIiKSkucmVwbGFjZSgvXC4rJC8sIiIpfTtmdW5jdGlvbiB4Yigpe31mdW5jdGlvbiB5YihhKXtyZXR1cm4gdHlwZW9mIGE9PT0iZnVuY3Rpb24ifWZ1bmN0aW9uIHpiKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmcifWZ1bmN0aW9uIEFiKGEpe3JldHVybiB0eXBlb2YgYT09PSJudW1iZXIiJiYhaXNOYU4oYSl9ZnVuY3Rpb24gQmIoYSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YTpbYV19ZnVuY3Rpb24gQ2IoYSxiKXtpZihhJiZBcnJheS5pc0FycmF5KGEpKWZvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGFbY10mJmIoYVtjXSkpcmV0dXJuIGFbY119ZnVuY3Rpb24gRGIoYSxiKXtpZighQWIoYSl8fCFBYihiKXx8YT5iKWE9MCxiPTIxNDc0ODM2NDc7cmV0dXJuIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSooYi1hKzEpK2EpfQpmdW5jdGlvbiBFYihhLGIpe2Zvcih2YXIgYz1uZXcgRmIsZD0wO2Q8YS5sZW5ndGg7ZCsrKWMuc2V0KGFbZF0sITApO2Zvcih2YXIgZT0wO2U8Yi5sZW5ndGg7ZSsrKWlmKGMuZ2V0KGJbZV0pKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEdiKGEsYil7Zm9yKHZhciBjIGluIGEpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsYykmJmIoYyxhW2NdKX1mdW5jdGlvbiBIYihhKXtyZXR1cm4hIWEmJihPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoYSk9PT0iW29iamVjdCBBcmd1bWVudHNdInx8T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsImNhbGxlZSIpKX1mdW5jdGlvbiBJYihhKXtyZXR1cm4gTWF0aC5yb3VuZChOdW1iZXIoYSkpfHwwfWZ1bmN0aW9uIEpiKGEpe3JldHVybiJmYWxzZSI9PT1TdHJpbmcoYSkudG9Mb3dlckNhc2UoKT8hMTohIWF9CmZ1bmN0aW9uIEtiKGEpe3ZhciBiPVtdO2lmKEFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspYi5wdXNoKFN0cmluZyhhW2NdKSk7cmV0dXJuIGJ9ZnVuY3Rpb24gTGIoYSl7cmV0dXJuIGE/YS5yZXBsYWNlKC9eXHMrfFxzKyQvZywiIik6IiJ9ZnVuY3Rpb24gTWIoKXtyZXR1cm4gbmV3IERhdGUoRGF0ZS5ub3coKSl9ZnVuY3Rpb24gTmIoKXtyZXR1cm4gTWIoKS5nZXRUaW1lKCl9dmFyIEZiPWZ1bmN0aW9uKCl7dGhpcy5wcmVmaXg9Imd0bS4iO3RoaXMudmFsdWVzPXt9fTtGYi5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy52YWx1ZXNbdGhpcy5wcmVmaXgrYV09Yn07RmIucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZXNbdGhpcy5wcmVmaXgrYV19O0ZiLnByb3RvdHlwZS5jb250YWlucz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5nZXQoYSkhPT12b2lkIDB9OwpmdW5jdGlvbiBPYihhLGIsYyl7cmV0dXJuIGEmJmEuaGFzT3duUHJvcGVydHkoYik/YVtiXTpjfWZ1bmN0aW9uIFBiKGEpe3ZhciBiPWE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYil7dmFyIGM9YjtiPXZvaWQgMDt0cnl7YygpfWNhdGNoKGQpe319fX1mdW5jdGlvbiBRYihhLGIpe2Zvcih2YXIgYyBpbiBiKWIuaGFzT3duUHJvcGVydHkoYykmJihhW2NdPWJbY10pfWZ1bmN0aW9uIFJiKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGEubGVuZ3RoO2QrKyljLnB1c2goYVtkXSksYy5wdXNoLmFwcGx5KGMsYlthW2RdXXx8W10pO3JldHVybiBjfWZ1bmN0aW9uIFNiKGEsYil7cmV0dXJuIGEubGVuZ3RoPj1iLmxlbmd0aCYmYS5zdWJzdHJpbmcoMCxiLmxlbmd0aCk9PT1ifWZ1bmN0aW9uIFRiKGEsYil7cmV0dXJuIGEubGVuZ3RoPj1iLmxlbmd0aCYmYS5zdWJzdHJpbmcoYS5sZW5ndGgtYi5sZW5ndGgsYS5sZW5ndGgpPT09Yn0KZnVuY3Rpb24gVWIoYSxiLGMpe2M9Y3x8W107Zm9yKHZhciBkPWEsZT0wO2U8Yi5sZW5ndGgtMTtlKyspe2lmKCFkLmhhc093blByb3BlcnR5KGJbZV0pKXJldHVybjtkPWRbYltlXV07aWYoYy5pbmRleE9mKGQpPj0wKXJldHVybn1yZXR1cm4gZH1mdW5jdGlvbiBWYihhLGIpe2Zvcih2YXIgYz17fSxkPWMsZT1hLnNwbGl0KCIuIiksZj0wO2Y8ZS5sZW5ndGgtMTtmKyspZD1kW2VbZl1dPXt9O2RbZVtlLmxlbmd0aC0xXV09YjtyZXR1cm4gY312YXIgV2I9L15cd3sxLDl9JC87ZnVuY3Rpb24gWWIoYSxiKXthPWF8fHt9O2I9Ynx8IiwiO3ZhciBjPVtdO0diKGEsZnVuY3Rpb24oZCxlKXtXYi50ZXN0KGQpJiZlJiZjLnB1c2goZCl9KTtyZXR1cm4gYy5qb2luKGIpfQpmdW5jdGlvbiBaYihhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hLmNoYXJDb2RlQXQoYyk7ZDwxMjg/Yi5wdXNoKGQpOmQ8MjA0OD9iLnB1c2goMTkyfGQ+PjYsMTI4fGQmNjMpOmQ8NTUyOTZ8fGQ+PTU3MzQ0P2IucHVzaCgyMjR8ZD4+MTIsMTI4fGQ+PjYmNjMsMTI4fGQmNjMpOihkPTY1NTM2KygoZCYxMDIzKTw8MTB8YS5jaGFyQ29kZUF0KCsrYykmMTAyMyksYi5wdXNoKDI0MHxkPj4xOCwxMjh8ZD4+MTImNjMsMTI4fGQ+PjYmNjMsMTI4fGQmNjMpKX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYil9ZnVuY3Rpb24gJGIoYSl7aWYoIWEpcmV0dXJuIGE7dmFyIGI9YTt0cnl7Yj1kZWNvZGVVUklDb21wb25lbnQoYSl9Y2F0Y2goZCl7fXZhciBjPWIuc3BsaXQoIiwiKTtyZXR1cm4gYy5sZW5ndGg9PT0yJiZjWzBdPT09Y1sxXT9jWzBdOmF9CmZ1bmN0aW9uIGFjKGEsYixjKXtmdW5jdGlvbiBkKG4pe3ZhciBwPW4uc3BsaXQoIj0iKVswXTtpZihhLmluZGV4T2YocCk8MClyZXR1cm4gbjtpZihjIT09dm9pZCAwKXJldHVybiBwKyI9IitjfWZ1bmN0aW9uIGUobil7cmV0dXJuIG4uc3BsaXQoIiYiKS5tYXAoZCkuZmlsdGVyKGZ1bmN0aW9uKHApe3JldHVybiBwIT09dm9pZCAwfSkuam9pbigiJiIpfXZhciBmPWIuaHJlZi5zcGxpdCgvWz8jXS8pWzBdLGc9Yi5zZWFyY2gsaD1iLmhhc2g7Z1swXT09PSI/IiYmKGc9Zy5zdWJzdHJpbmcoMSkpO2hbMF09PT0iIyImJihoPWguc3Vic3RyaW5nKDEpKTtnPWUoZyk7aD1lKGgpO2chPT0iIiYmKGc9Ij8iK2cpO2ghPT0iIiYmKGg9IiMiK2gpO3ZhciBsPSIiK2YrZytoO2xbbC5sZW5ndGgtMV09PT0iLyImJihsPWwuc3Vic3RyaW5nKDAsbC5sZW5ndGgtMSkpO3JldHVybiBsfQpmdW5jdGlvbiBiYyhhKXtmb3IodmFyIGI9MDtiPDM7KytiKXRyeXt2YXIgYz1kZWNvZGVVUklDb21wb25lbnQoYSkucmVwbGFjZSgvXCsvZywiICIpO2lmKGM9PT1hKWJyZWFrO2E9Y31jYXRjaChkKXtyZXR1cm4iIn1yZXR1cm4gYX1mdW5jdGlvbiBjYygpe3ZhciBhPUEsYjthOnt2YXIgYz1hLmNyeXB0b3x8YS5tc0NyeXB0bztpZihjJiZjLmdldFJhbmRvbVZhbHVlcyl0cnl7dmFyIGQ9bmV3IFVpbnQ4QXJyYXkoMjUpO2MuZ2V0UmFuZG9tVmFsdWVzKGQpO2I9YnRvYShTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZyx3KGQpKSkucmVwbGFjZSgvXCsvZywiLSIpLnJlcGxhY2UoL1wvL2csIl8iKS5yZXBsYWNlKC89KyQvLCIiKTticmVhayBhfWNhdGNoKGUpe31iPXZvaWQgMH1yZXR1cm4gYn07LyoKCiBDb3B5cmlnaHQgR29vZ2xlIExMQwogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KdmFyIGRjPWdsb2JhbFRoaXMudHJ1c3RlZFR5cGVzLGVjO2Z1bmN0aW9uIGZjKCl7dmFyIGE9bnVsbDtpZighZGMpcmV0dXJuIGE7dHJ5e3ZhciBiPWZ1bmN0aW9uKGMpe3JldHVybiBjfTthPWRjLmNyZWF0ZVBvbGljeSgiZ29vZyNodG1sIix7Y3JlYXRlSFRNTDpiLGNyZWF0ZVNjcmlwdDpiLGNyZWF0ZVNjcmlwdFVSTDpifSl9Y2F0Y2goYyl7fXJldHVybiBhfWZ1bmN0aW9uIGhjKCl7ZWM9PT12b2lkIDAmJihlYz1mYygpKTtyZXR1cm4gZWN9O3ZhciBpYz1mdW5jdGlvbihhKXt0aGlzLkg9YX07aWMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSCsiIn07ZnVuY3Rpb24gamMoYSl7dmFyIGI9YSxjPWhjKCksZD1jP2MuY3JlYXRlU2NyaXB0VVJMKGIpOmI7cmV0dXJuIG5ldyBpYyhkKX1mdW5jdGlvbiBrYyhhKXtpZihhIGluc3RhbmNlb2YgaWMpcmV0dXJuIGEuSDt0aHJvdyBFcnJvcigiIik7fTt2YXIgbGM9QWEoWyIiXSksbWM9emEoWyJceDAwIl0sWyJcXDAiXSksbmM9emEoWyJcbiJdLFsiXFxuIl0pLG9jPXphKFsiXHgwMCJdLFsiXFx1MDAwMCJdKTtmdW5jdGlvbiBwYyhhKXtyZXR1cm4gYS50b1N0cmluZygpLmluZGV4T2YoImAiKT09PS0xfXBjKGZ1bmN0aW9uKGEpe3JldHVybiBhKGxjKX0pfHxwYyhmdW5jdGlvbihhKXtyZXR1cm4gYShtYyl9KXx8cGMoZnVuY3Rpb24oYSl7cmV0dXJuIGEobmMpfSl8fHBjKGZ1bmN0aW9uKGEpe3JldHVybiBhKG9jKX0pO3ZhciBxYz1mdW5jdGlvbihhKXt0aGlzLkg9YX07cWMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSH07dmFyIHJjPWZ1bmN0aW9uKGEpe3RoaXMuSnM9YX07ZnVuY3Rpb24gc2MoYSl7cmV0dXJuIG5ldyByYyhmdW5jdGlvbihiKXtyZXR1cm4gYi5zdWJzdHIoMCxhLmxlbmd0aCsxKS50b0xvd2VyQ2FzZSgpPT09YSsiOiJ9KX12YXIgdGM9W3NjKCJkYXRhIiksc2MoImh0dHAiKSxzYygiaHR0cHMiKSxzYygibWFpbHRvIiksc2MoImZ0cCIpLG5ldyByYyhmdW5jdGlvbihhKXtyZXR1cm4vXlteOl0qKFsvPyNdfCQpLy50ZXN0KGEpfSldO2Z1bmN0aW9uIHVjKGEpe3ZhciBiO2I9Yj09PXZvaWQgMD90YzpiO2lmKGEgaW5zdGFuY2VvZiBxYylyZXR1cm4gYTtmb3IodmFyIGM9MDtjPGIubGVuZ3RoOysrYyl7dmFyIGQ9YltjXTtpZihkIGluc3RhbmNlb2YgcmMmJmQuSnMoYSkpcmV0dXJuIG5ldyBxYyhhKX19dmFyIHZjPS9eXHMqKD8hamF2YXNjcmlwdDopKD86W1x3Ky4tXSs6fFteOi8/I10qKD86Wy8/I118JCkpL2k7CmZ1bmN0aW9uIHdjKGEpe3ZhciBiO2lmKGEgaW5zdGFuY2VvZiBxYylpZihhIGluc3RhbmNlb2YgcWMpYj1hLkg7ZWxzZSB0aHJvdyBFcnJvcigiIik7ZWxzZSBiPXZjLnRlc3QoYSk/YTp2b2lkIDA7cmV0dXJuIGJ9O2Z1bmN0aW9uIHhjKGEsYil7dmFyIGM9d2MoYik7YyE9PXZvaWQgMCYmKGEuYWN0aW9uPWMpfTtmdW5jdGlvbiB5YyhhLGIpe3Rocm93IEVycm9yKGI9PT12b2lkIDA/InVuZXhwZWN0ZWQgdmFsdWUgIithKyIhIjpiKTt9O3ZhciB6Yz1mdW5jdGlvbihhKXt0aGlzLkg9YX07emMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSCsiIn07dmFyIEJjPWZ1bmN0aW9uKCl7dGhpcy5IPUFjWzBdLnRvTG93ZXJDYXNlKCl9O0JjLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkh9O2Z1bmN0aW9uIENjKGEsYil7dmFyIGM9W25ldyBCY107aWYoYy5sZW5ndGg9PT0wKXRocm93IEVycm9yKCIiKTt2YXIgZD1jLm1hcChmdW5jdGlvbihmKXt2YXIgZztpZihmIGluc3RhbmNlb2YgQmMpZz1mLkg7ZWxzZSB0aHJvdyBFcnJvcigiIik7cmV0dXJuIGd9KSxlPWIudG9Mb3dlckNhc2UoKTtpZihkLmV2ZXJ5KGZ1bmN0aW9uKGYpe3JldHVybiBlLmluZGV4T2YoZikhPT0wfSkpdGhyb3cgRXJyb3IoJ0F0dHJpYnV0ZSAiJytiKyciIGRvZXMgbm90IG1hdGNoIGFueSBvZiB0aGUgYWxsb3dlZCBwcmVmaXhlcy4nKTthLnNldEF0dHJpYnV0ZShiLCJ0cnVlIil9O3ZhciBEYz1BcnJheS5wcm90b3R5cGUuaW5kZXhPZj9mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUuaW5kZXhPZi5jYWxsKGEsYix2b2lkIDApfTpmdW5jdGlvbihhLGIpe2lmKHR5cGVvZiBhPT09InN0cmluZyIpcmV0dXJuIHR5cGVvZiBiIT09InN0cmluZyJ8fGIubGVuZ3RoIT0xPy0xOmEuaW5kZXhPZihiLDApO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGMgaW4gYSYmYVtjXT09PWIpcmV0dXJuIGM7cmV0dXJuLTF9OyJBUlRJQ0xFIFNFQ1RJT04gTkFWIEFTSURFIEgxIEgyIEgzIEg0IEg1IEg2IEhFQURFUiBGT09URVIgQUREUkVTUyBQIEhSIFBSRSBCTE9DS1FVT1RFIE9MIFVMIExIIExJIERMIERUIEREIEZJR1VSRSBGSUdDQVBUSU9OIE1BSU4gRElWIEVNIFNUUk9ORyBTTUFMTCBTIENJVEUgUSBERk4gQUJCUiBSVUJZIFJCIFJUIFJUQyBSUCBEQVRBIFRJTUUgQ09ERSBWQVIgU0FNUCBLQkQgU1VCIFNVUCBJIEIgVSBNQVJLIEJESSBCRE8gU1BBTiBCUiBXQlIgTk9CUiBJTlMgREVMIFBJQ1RVUkUgUEFSQU0gVFJBQ0sgTUFQIFRBQkxFIENBUFRJT04gQ09MR1JPVVAgQ09MIFRCT0RZIFRIRUFEIFRGT09UIFRSIFREIFRIIFNFTEVDVCBEQVRBTElTVCBPUFRHUk9VUCBPUFRJT04gT1VUUFVUIFBST0dSRVNTIE1FVEVSIEZJRUxEU0VUIExFR0VORCBERVRBSUxTIFNVTU1BUlkgTUVOVSBESUFMT0cgU0xPVCBDQU5WQVMgRk9OVCBDRU5URVIgQUNST05ZTSBCQVNFRk9OVCBCSUcgRElSIEhHUk9VUCBTVFJJS0UgVFQiLnNwbGl0KCIgIikuY29uY2F0KFsiQlVUVE9OIiwKIklOUFVUIl0pO2Z1bmN0aW9uIEVjKGEpe3JldHVybiBhPT09bnVsbD8ibnVsbCI6YT09PXZvaWQgMD8idW5kZWZpbmVkIjphfTt2YXIgQT13aW5kb3csRmM9W10sR2M9d2luZG93Lmhpc3RvcnksQj1kb2N1bWVudCxIYz1uYXZpZ2F0b3I7ZnVuY3Rpb24gSWMoKXt2YXIgYTt0cnl7YT1IYy5zZXJ2aWNlV29ya2VyfWNhdGNoKGIpe3JldHVybn1yZXR1cm4gYX12YXIgSmM9Qi5jdXJyZW50U2NyaXB0LEtjPUpjJiZKYy5zcmM7ZnVuY3Rpb24gTWMoYSxiKXt2YXIgYz1BLGQ9Y1thXTtjW2FdPWQ9PT12b2lkIDA/YjpkO3JldHVybiBjW2FdfWZ1bmN0aW9uIE5jKGEpe3JldHVybihIYy51c2VyQWdlbnR8fCIiKS5pbmRleE9mKGEpIT09LTF9ZnVuY3Rpb24gT2MoKXtyZXR1cm4gTmMoIkZpcmVmb3giKXx8TmMoIkZ4aU9TIil9ZnVuY3Rpb24gUGMoKXtyZXR1cm4oTmMoIkdTQSIpfHxOYygiR29vZ2xlQXBwIikpJiYoTmMoImlQaG9uZSIpfHxOYygiaVBhZCIpKX1mdW5jdGlvbiBRYygpe3JldHVybiBOYygiRWRnLyIpfHxOYygiRWRnQS8iKXx8TmMoIkVkZ2lPUy8iKX0KdmFyIFJjPXthc3luYzoxLG5vbmNlOjEsb25lcnJvcjoxLG9ubG9hZDoxLHNyYzoxLHR5cGU6MX0sU2M9e2hlaWdodDoxLG9ubG9hZDoxLHNyYzoxLHN0eWxlOjEsd2lkdGg6MX07ZnVuY3Rpb24gVGMoYSxiLGMpe2ImJkdiKGIsZnVuY3Rpb24oZCxlKXtkPWQudG9Mb3dlckNhc2UoKTtjLmhhc093blByb3BlcnR5KGQpfHxhLnNldEF0dHJpYnV0ZShkLGUpfSl9CmZ1bmN0aW9uIFVjKGEsYixjLGQsZSl7dmFyIGY9Qi5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtUYyhmLGQsUmMpO2YudHlwZT0idGV4dC9qYXZhc2NyaXB0IjtmLmFzeW5jPWQmJmQuYXN5bmM9PT0hMT8hMTohMDt2YXIgZztnPWpjKEVjKGEpKTtmLnNyYz1rYyhnKTt2YXIgaCxsPWYub3duZXJEb2N1bWVudDtsPWw9PT12b2lkIDA/ZG9jdW1lbnQ6bDt2YXIgbixwLHE9KHA9KG49bCkucXVlcnlTZWxlY3Rvcik9PW51bGw/dm9pZCAwOnAuY2FsbChuLCJzY3JpcHRbbm9uY2VdIik7KGg9cT09bnVsbD8iIjpxLm5vbmNlfHxxLmdldEF0dHJpYnV0ZSgibm9uY2UiKXx8IiIpJiZmLnNldEF0dHJpYnV0ZSgibm9uY2UiLGgpO2ImJihmLm9ubG9hZD1iKTtjJiYoZi5vbmVycm9yPWMpO2U/ZS5hcHBlbmRDaGlsZChmKTpWYy5CcyhmKTtyZXR1cm4gZn0KZnVuY3Rpb24gV2MoKXtpZihLYyl7dmFyIGE9S2MudG9Mb3dlckNhc2UoKTtpZihhLmluZGV4T2YoImh0dHBzOi8vIik9PT0wKXJldHVybiAyO2lmKGEuaW5kZXhPZigiaHR0cDovLyIpPT09MClyZXR1cm4gM31yZXR1cm4gMX1mdW5jdGlvbiBYYyhhLGIsYyxkLGUsZil7Zj1mPT09dm9pZCAwPyEwOmY7dmFyIGc9ZSxoPSExO2d8fChnPUIuY3JlYXRlRWxlbWVudCgiaWZyYW1lIiksaD0hMCk7VGMoZyxjLFNjKTtkJiZHYihkLGZ1bmN0aW9uKG4scCl7Zy5kYXRhc2V0W25dPXB9KTtmJiYoZy5oZWlnaHQ9IjAiLGcud2lkdGg9IjAiLGcuc3R5bGUuZGlzcGxheT0ibm9uZSIsZy5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4iKTthIT09dm9pZCAwJiYoZy5zcmM9YSk7aWYoaCl7dmFyIGw9Qi5ib2R5JiZCLmJvZHkubGFzdENoaWxkfHxCLmJvZHl8fEIuaGVhZDtsLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGcsbCl9YiYmKGcub25sb2FkPWIpO3JldHVybiBnfQpmdW5jdGlvbiBaYygpe3JldHVybiBWYy5Fci5hcHBseShWYyx3KE9hLmFwcGx5KDAsYXJndW1lbnRzKSkpfWZ1bmN0aW9uICRjKGEsYixjLGQpe2EuYWRkRXZlbnRMaXN0ZW5lciYmYS5hZGRFdmVudExpc3RlbmVyKGIsYywhIWQpfWZ1bmN0aW9uIGFkKGEsYixjKXthLnJlbW92ZUV2ZW50TGlzdGVuZXImJmEucmVtb3ZlRXZlbnRMaXN0ZW5lcihiLGMsITEpfWZ1bmN0aW9uIGJkKGEpe0Euc2V0VGltZW91dChhLDApfWZ1bmN0aW9uIGNkKGEsYil7dmFyIGM9T2EuYXBwbHkoMixhcmd1bWVudHMpLGQsZT0oZD1BKS5zZXRJbnRlcnZhbC5hcHBseShkLFthLGJdLmNvbmNhdCh3KGMpKSk7RmMucHVzaChlKTtyZXR1cm4gZX0KZnVuY3Rpb24gZGQoYSl7dmFyIGI9QTt5YihiLnF1ZXVlTWljcm90YXNrKT9iLnF1ZXVlTWljcm90YXNrKGEpOnliKGIuUHJvbWlzZSkmJmIuUHJvbWlzZS5yZXNvbHZlP2IuUHJvbWlzZS5yZXNvbHZlKCkudGhlbihmdW5jdGlvbigpe2EoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSk6YmQoYSl9ZnVuY3Rpb24gZWQoYSxiKXtyZXR1cm4gYSYmYiYmYS5hdHRyaWJ1dGVzJiZhLmF0dHJpYnV0ZXNbYl0/YS5hdHRyaWJ1dGVzW2JdLnZhbHVlOm51bGx9ZnVuY3Rpb24gZmQoYSl7dmFyIGI9YS5pbm5lclRleHR8fGEudGV4dENvbnRlbnR8fCIiO2ImJmIhPT0iICImJihiPWIucmVwbGFjZSgvXltcc1x4YTBdKy9nLCIiKSxiPWIucmVwbGFjZSgvW1xzXHhhMF0rJC9nLCIiKSk7YiYmKGI9Yi5yZXBsYWNlKC8oXHhhMCt8XHN7Mix9fFxufFxyXHQpL2csIiAiKSk7cmV0dXJuIGJ9CmZ1bmN0aW9uIGdkKGEpe3ZhciBiPUIuY3JlYXRlRWxlbWVudCgiZGl2IiksYz1iLGQsZT1FYygiQTxkaXY+IithKyI8L2Rpdj4iKSxmPWhjKCksZz1mP2YuY3JlYXRlSFRNTChlKTplO2Q9bmV3IHpjKGcpO2lmKGMubm9kZVR5cGU9PT0xJiYvXihzY3JpcHR8c3R5bGUpJC9pLnRlc3QoYy50YWdOYW1lKSl0aHJvdyBFcnJvcigiIik7dmFyIGg7aWYoZCBpbnN0YW5jZW9mIHpjKWg9ZC5IO2Vsc2UgdGhyb3cgRXJyb3IoIiIpO2MuaW5uZXJIVE1MPWg7Yj1iLmxhc3RDaGlsZDtmb3IodmFyIGw9W107YiYmYi5maXJzdENoaWxkOylsLnB1c2goYi5yZW1vdmVDaGlsZChiLmZpcnN0Q2hpbGQpKTtyZXR1cm4gbH0KZnVuY3Rpb24gaGQoYSxiLGMpe2M9Y3x8MTAwO2Zvcih2YXIgZD17fSxlPTA7ZTxiLmxlbmd0aDtlKyspZFtiW2VdXT0hMDtmb3IodmFyIGY9YSxnPTA7ZiYmZzw9YztnKyspe2lmKGRbU3RyaW5nKGYudGFnTmFtZSkudG9Mb3dlckNhc2UoKV0pcmV0dXJuIGY7Zj1mLnBhcmVudEVsZW1lbnR9cmV0dXJuIG51bGx9ZnVuY3Rpb24gaWQoYSxiLGMpe3ZhciBkO3RyeXtkPUhjLnNlbmRCZWFjb24mJkhjLnNlbmRCZWFjb24oYSl9Y2F0Y2goZSl7c2IoIlRBR0dJTkciLDE1KX1kP2I9PW51bGx8fGIoKTpaYyhhLGIsYyl9ZnVuY3Rpb24gamQoYSxiKXt0cnl7aWYoSGMuc2VuZEJlYWNvbiE9PXZvaWQgMClyZXR1cm4gSGMuc2VuZEJlYWNvbihhLGIpfWNhdGNoKGMpe3NiKCJUQUdHSU5HIiwxNSl9cmV0dXJuITF9ZnVuY3Rpb24ga2QoKXtyZXR1cm4gSGMuc2VuZEJlYWNvbiE9PXZvaWQgMH0KdmFyIGxkPXtjYWNoZToibm8tc3RvcmUiLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixrZWVwYWxpdmU6ITAsbWV0aG9kOiJQT1NUIixtb2RlOiJuby1jb3JzIixyZWRpcmVjdDoiZm9sbG93In07CmZ1bmN0aW9uIG1kKGEsYixjLGQsZSl7aWYobmQoKSl7dmFyIGY9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxsZCk7YiYmKGYuYm9keT1iKTtjJiYoYy5hdHRyaWJ1dGlvblJlcG9ydGluZyYmKGYuYXR0cmlidXRpb25SZXBvcnRpbmc9Yy5hdHRyaWJ1dGlvblJlcG9ydGluZyksYy5icm93c2luZ1RvcGljcyE9PXZvaWQgMCYmKGYuYnJvd3NpbmdUb3BpY3M9Yy5icm93c2luZ1RvcGljcyksYy5jcmVkZW50aWFscyYmKGYuY3JlZGVudGlhbHM9Yy5jcmVkZW50aWFscyksYy5rZWVwYWxpdmUhPT12b2lkIDAmJihmLmtlZXBhbGl2ZT1jLmtlZXBhbGl2ZSksYy5tZXRob2QmJihmLm1ldGhvZD1jLm1ldGhvZCksYy5tb2RlJiYoZi5tb2RlPWMubW9kZSkpO3RyeXt2YXIgZz1BLmZldGNoKGEsZik7aWYoZylyZXR1cm4gZy50aGVuKGZ1bmN0aW9uKGwpe2wmJihsLm9rfHxsLnN0YXR1cz09PTApP2Q9PW51bGx8fGQoKTplPT1udWxsfHxlKCl9KS5jYXRjaChmdW5jdGlvbigpe2U9PQpudWxsfHxlKCl9KSwhMH1jYXRjaChsKXt9fWlmKChjPT1udWxsPzA6Yy5RZyl8fChjPT1udWxsPzA6Yy5jcmVkZW50aWFscykmJmMuY3JlZGVudGlhbHMhPT0iaW5jbHVkZSIpcmV0dXJuIGU9PW51bGx8fGUoKSwhMTtpZihiKXt2YXIgaD1qZChhLGIpO2g/ZD09bnVsbHx8ZCgpOmU9PW51bGx8fGUoKTtyZXR1cm4gaH1WYy53dChhLGQsZSk7cmV0dXJuITB9ZnVuY3Rpb24gbmQoKXtyZXR1cm4geWIoQS5mZXRjaCl9ZnVuY3Rpb24gb2QoYSxiKXt2YXIgYz1hW2JdO2MmJnR5cGVvZiBjLmFuaW1WYWw9PT0ic3RyaW5nIiYmKGM9Yy5hbmltVmFsKTtyZXR1cm4gY31mdW5jdGlvbiBwZCgpe3ZhciBhPUEucGVyZm9ybWFuY2U7aWYoYSYmeWIoYS5ub3cpKXJldHVybiBhLm5vdygpfQpmdW5jdGlvbiBxZCgpe3ZhciBhLGI9QS5wZXJmb3JtYW5jZTtpZihiJiZiLmdldEVudHJpZXNCeVR5cGUpdHJ5e3ZhciBjPWIuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpO2MmJmMubGVuZ3RoPjAmJihhPWNbMF0udHlwZSl9Y2F0Y2goZCl7cmV0dXJuImUifWlmKCFhKXJldHVybiJ1Ijtzd2l0Y2goYSl7Y2FzZSAibmF2aWdhdGUiOnJldHVybiJuIjtjYXNlICJiYWNrX2ZvcndhcmQiOnJldHVybiJoIjtjYXNlICJyZWxvYWQiOnJldHVybiJyIjtjYXNlICJwcmVyZW5kZXIiOnJldHVybiJwIjtkZWZhdWx0OnJldHVybiJ4In19ZnVuY3Rpb24gcmQoKXtyZXR1cm4gQS5wZXJmb3JtYW5jZXx8dm9pZCAwfWZ1bmN0aW9uIHNkKCl7dmFyIGE9QS53ZWJQaXhlbHNNYW5hZ2VyO3JldHVybiBhP2EuY3JlYXRlU2hvcGlmeUV4dGVuZCE9PXZvaWQgMDohMX0KdmFyIFZjPXtFcjpmdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1uZXcgSW1hZ2UoMSwxKTtUYyhlLGQse30pO2Uub25sb2FkPWZ1bmN0aW9uKCl7ZS5vbmxvYWQ9bnVsbDtiJiZiKCl9O2Uub25lcnJvcj1mdW5jdGlvbigpe2Uub25lcnJvcj1udWxsO2MmJmMoKX07ZS5zcmM9YTtyZXR1cm4gZX0sQnM6ZnVuY3Rpb24oYSl7dmFyIGI9Qi5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF18fEIuYm9keXx8Qi5oZWFkO2IucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYSxiKX0sd3Q6aWR9O2Z1bmN0aW9uIHRkKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkmJnRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gdWQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKT09PXRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gdmQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKXx8dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiB3ZChhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSksZD10aGlzLmV2YWx1YXRlKGIpO3JldHVybiBTdHJpbmcoYykuaW5kZXhPZihTdHJpbmcoZCkpPi0xfWZ1bmN0aW9uIHhkKGEsYil7dmFyIGM9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYSkpLGQ9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYikpO3JldHVybiBjLnN1YnN0cmluZygwLGQubGVuZ3RoKT09PWR9CmZ1bmN0aW9uIHlkKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYik7c3dpdGNoKGMpe2Nhc2UgInBhZ2VMb2NhdGlvbiI6dmFyIGU9QS5sb2NhdGlvbi5ocmVmO2QgaW5zdGFuY2VvZiBrYiYmZC5nZXQoInN0cmlwUHJvdG9jb2wiKSYmKGU9ZS5yZXBsYWNlKC9eaHR0cHM/OlwvXC8vLCIiKSk7cmV0dXJuIGV9fTsvKgogalF1ZXJ5IChjKSAyMDA1LCAyMDEyIGpRdWVyeSBGb3VuZGF0aW9uLCBJbmMuIGpxdWVyeS5vcmcvbGljZW5zZS4KKi8KdmFyIHpkPS9cW29iamVjdCAoQm9vbGVhbnxOdW1iZXJ8U3RyaW5nfEZ1bmN0aW9ufEFycmF5fERhdGV8UmVnRXhwKVxdLyxBZD1mdW5jdGlvbihhKXtpZihhPT1udWxsKXJldHVybiBTdHJpbmcoYSk7dmFyIGI9emQuZXhlYyhPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoT2JqZWN0KGEpKSk7cmV0dXJuIGI/YlsxXS50b0xvd2VyQ2FzZSgpOiJvYmplY3QifSxCZD1mdW5jdGlvbihhLGIpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoT2JqZWN0KGEpLGIpfSxDZD1mdW5jdGlvbihhKXtpZighYXx8QWQoYSkhPSJvYmplY3QifHxhLm5vZGVUeXBlfHxhPT1hLndpbmRvdylyZXR1cm4hMTt0cnl7aWYoYS5jb25zdHJ1Y3RvciYmIUJkKGEsImNvbnN0cnVjdG9yIikmJiFCZChhLmNvbnN0cnVjdG9yLnByb3RvdHlwZSwiaXNQcm90b3R5cGVPZiIpKXJldHVybiExfWNhdGNoKGMpe3JldHVybiExfWZvcih2YXIgYiBpbiBhKTtyZXR1cm4gYj09PXZvaWQgMHx8CkJkKGEsYil9LEVkPWZ1bmN0aW9uKGEsYil7dmFyIGM9Ynx8KEFkKGEpPT0iYXJyYXkiP1tdOnt9KSxkO2ZvcihkIGluIGEpaWYoQmQoYSxkKSl7dmFyIGU9YVtkXTtBZChlKT09ImFycmF5Ij8oQWQoY1tkXSkhPSJhcnJheSImJihjW2RdPVtdKSxjW2RdPUVkKGUsY1tkXSkpOkNkKGUpPyhDZChjW2RdKXx8KGNbZF09e30pLGNbZF09RWQoZSxjW2RdKSk6Y1tkXT1lfXJldHVybiBjfTtmdW5jdGlvbiBGZChhKXtyZXR1cm4gdHlwZW9mIGE9PT0ibnVtYmVyIiYmYT49MCYmaXNGaW5pdGUoYSkmJmElMT09PTB8fHR5cGVvZiBhPT09InN0cmluZyImJmFbMF0hPT0iLSImJmE9PT0iIitwYXJzZUludChhKX07dmFyIEdkPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9bXTphO3RoaXMubGE9bmV3IFVhO3RoaXMudmFsdWVzPVtdO3RoaXMuTmE9ITE7Zm9yKHZhciBiIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShiKSYmKEZkKGIpP3RoaXMudmFsdWVzW051bWJlcihiKV09YVtOdW1iZXIoYildOnRoaXMubGEuc2V0KGIsYVtiXSkpfTtrPUdkLnByb3RvdHlwZTtrLnRvU3RyaW5nPWZ1bmN0aW9uKGEpe2lmKGEmJmEuaW5kZXhPZih0aGlzKT49MClyZXR1cm4iIjtmb3IodmFyIGI9W10sYz0wO2M8dGhpcy52YWx1ZXMubGVuZ3RoO2MrKyl7dmFyIGQ9dGhpcy52YWx1ZXNbY107ZD09PW51bGx8fGQ9PT12b2lkIDA/Yi5wdXNoKCIiKTpkIGluc3RhbmNlb2YgR2Q/KGE9YXx8W10sYS5wdXNoKHRoaXMpLGIucHVzaChkLnRvU3RyaW5nKGEpKSxhLnBvcCgpKTpiLnB1c2goU3RyaW5nKGQpKX1yZXR1cm4gYi5qb2luKCIsIil9OwprLnNldD1mdW5jdGlvbihhLGIpe2lmKCF0aGlzLk5hKWlmKGE9PT0ibGVuZ3RoIil7aWYoIUZkKGIpKXRocm93IGNiKEVycm9yKCJSYW5nZUVycm9yOiBMZW5ndGggcHJvcGVydHkgbXVzdCBiZSBhIHZhbGlkIGludGVnZXIuIikpO3RoaXMudmFsdWVzLmxlbmd0aD1OdW1iZXIoYil9ZWxzZSBGZChhKT90aGlzLnZhbHVlc1tOdW1iZXIoYSldPWI6dGhpcy5sYS5zZXQoYSxiKX07ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT0ibGVuZ3RoIj90aGlzLmxlbmd0aCgpOkZkKGEpP3RoaXMudmFsdWVzW051bWJlcihhKV06dGhpcy5sYS5nZXQoYSl9O2subGVuZ3RoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWVzLmxlbmd0aH07ay5GYT1mdW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLmxhLkZhKCksYj0wO2I8dGhpcy52YWx1ZXMubGVuZ3RoO2IrKyl0aGlzLnZhbHVlcy5oYXNPd25Qcm9wZXJ0eShiKSYmYS5wdXNoKFN0cmluZyhiKSk7cmV0dXJuIGF9OwprLmhjPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMubGEuaGMoKSxiPTA7Yjx0aGlzLnZhbHVlcy5sZW5ndGg7YisrKXRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGIpJiZhLnB1c2godGhpcy52YWx1ZXNbYl0pO3JldHVybiBhfTtrLmZjPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMubGEuZmMoKSxiPTA7Yjx0aGlzLnZhbHVlcy5sZW5ndGg7YisrKXRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGIpJiZhLnB1c2goW1N0cmluZyhiKSx0aGlzLnZhbHVlc1tiXV0pO3JldHVybiBhfTtrLnJlbW92ZT1mdW5jdGlvbihhKXtGZChhKT9kZWxldGUgdGhpcy52YWx1ZXNbTnVtYmVyKGEpXTp0aGlzLk5hfHx0aGlzLmxhLnJlbW92ZShhKX07ay5wb3A9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMucG9wKCl9O2sucHVzaD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZhbHVlcy5wdXNoLmFwcGx5KHRoaXMudmFsdWVzLHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSl9O2suc2hpZnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMuc2hpZnQoKX07Cmsuc3BsaWNlPWZ1bmN0aW9uKGEsYil7dmFyIGM9T2EuYXBwbHkoMixhcmd1bWVudHMpO3JldHVybiBiPT09dm9pZCAwJiZjLmxlbmd0aD09PTA/bmV3IEdkKHRoaXMudmFsdWVzLnNwbGljZShhKSk6bmV3IEdkKHRoaXMudmFsdWVzLnNwbGljZS5hcHBseSh0aGlzLnZhbHVlcyxbYSxifHwwXS5jb25jYXQodyhjKSkpKX07ay51bnNoaWZ0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWVzLnVuc2hpZnQuYXBwbHkodGhpcy52YWx1ZXMsdyhPYS5hcHBseSgwLGFyZ3VtZW50cykpKX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIEZkKGEpJiZ0aGlzLnZhbHVlcy5oYXNPd25Qcm9wZXJ0eShhKXx8dGhpcy5sYS5oYXMoYSl9O2suWmE9ZnVuY3Rpb24oKXt0aGlzLk5hPSEwO09iamVjdC5mcmVlemUodGhpcy52YWx1ZXMpfTtrLkhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTmF9OwpmdW5jdGlvbiBIZChhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGgoKTtjKyspYS5oYXMoYykmJihiW2NdPWEuZ2V0KGMpKTtyZXR1cm4gYn07dmFyIElkPWZ1bmN0aW9uKGEsYil7dGhpcy5mdW5jdGlvbk5hbWU9YTt0aGlzLmllPWI7dGhpcy5sYT1uZXcgVWE7dGhpcy5OYT0hMX07az1JZC5wcm90b3R5cGU7ay50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmZ1bmN0aW9uTmFtZX07ay5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZnVuY3Rpb25OYW1lfTtrLmdldEtleXM9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IEdkKHRoaXMuRmEoKSl9O2suaW52b2tlPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmllLmNhbGwuYXBwbHkodGhpcy5pZSxbbmV3IEpkKHRoaXMsYSldLmNvbmNhdCh3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpKX07ay5hcHBseT1mdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmllLmFwcGx5KG5ldyBKZCh0aGlzLGEpLGIpfTtrLk5jPWZ1bmN0aW9uKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTt0cnl7cmV0dXJuIHRoaXMuaW52b2tlLmFwcGx5KHRoaXMsW2FdLmNvbmNhdCh3KGIpKSl9Y2F0Y2goYyl7fX07CmsuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmdldChhKX07ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLk5hfHx0aGlzLmxhLnNldChhLGIpfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5oYXMoYSl9O2sucmVtb3ZlPWZ1bmN0aW9uKGEpe3RoaXMuTmF8fHRoaXMubGEucmVtb3ZlKGEpfTtrLkZhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuRmEoKX07ay5oYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmhjKCl9O2suZmM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5mYygpfTtrLlphPWZ1bmN0aW9uKCl7dGhpcy5OYT0hMH07ay5IYj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk5hfTt2YXIgS2Q9ZnVuY3Rpb24oYSxiKXtJZC5jYWxsKHRoaXMsYSxiKX07d2EoS2QsSWQpO3ZhciBMZD1mdW5jdGlvbihhLGIpe0lkLmNhbGwodGhpcyxhLGIpfTt3YShMZCxJZCk7dmFyIEpkPWZ1bmN0aW9uKGEsYil7dGhpcy5pZT1hO3RoaXMuVD1ifTsKSmQucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuVDtyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9mYihiLGEpOmF9O0pkLnByb3RvdHlwZS5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaWUuZ2V0TmFtZSgpfTtKZC5wcm90b3R5cGUuamU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ULmplKCl9O3ZhciBNZD1mdW5jdGlvbigpe3RoaXMubWFwPW5ldyBNYXB9O01kLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLm1hcC5zZXQoYSxiKX07TWQucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5tYXAuZ2V0KGEpfTt2YXIgTmQ9ZnVuY3Rpb24oKXt0aGlzLmtleXM9W107dGhpcy52YWx1ZXM9W119O05kLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLmtleXMucHVzaChhKTt0aGlzLnZhbHVlcy5wdXNoKGIpfTtOZC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMua2V5cy5pbmRleE9mKGEpO2lmKGI+LTEpcmV0dXJuIHRoaXMudmFsdWVzW2JdfTtmdW5jdGlvbiBPZCgpe3RyeXtyZXR1cm4gTWFwP25ldyBNZDpuZXcgTmR9Y2F0Y2goYSl7cmV0dXJuIG5ldyBOZH19O3ZhciBQZD1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgUGQpcmV0dXJuIGE7dmFyIGI7YTppZihhPT12b2lkIDB8fEFycmF5LmlzQXJyYXkoYSl8fENkKGEpKWI9ITA7ZWxzZXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgImJvb2xlYW4iOmNhc2UgIm51bWJlciI6Y2FzZSAic3RyaW5nIjpjYXNlICJmdW5jdGlvbiI6Yj0hMDticmVhayBhfWI9ITF9aWYoYil0aHJvdyBFcnJvcigiVHlwZSBvZiBnaXZlbiB2YWx1ZSBoYXMgYW4gZXF1aXZhbGVudCBQaXhpZSB0eXBlLiIpO3RoaXMudmFsdWU9YX07UGQucHJvdG90eXBlLmdldFZhbHVlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9O1BkLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiBTdHJpbmcodGhpcy52YWx1ZSl9O3ZhciBTZD1mdW5jdGlvbihhKXt0aGlzLnByb21pc2U9YTt0aGlzLk5hPSExO3RoaXMubGE9bmV3IFVhO3RoaXMubGEuc2V0KCJ0aGVuIixSZCh0aGlzKSk7dGhpcy5sYS5zZXQoImNhdGNoIixSZCh0aGlzLCEwKSk7dGhpcy5sYS5zZXQoImZpbmFsbHkiLFJkKHRoaXMsITEsITApKX07az1TZC5wcm90b3R5cGU7ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuZ2V0KGEpfTtrLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuTmF8fHRoaXMubGEuc2V0KGEsYil9O2suaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmhhcyhhKX07ay5yZW1vdmU9ZnVuY3Rpb24oYSl7dGhpcy5OYXx8dGhpcy5sYS5yZW1vdmUoYSl9O2suRmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5GYSgpfTtrLmhjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuaGMoKX07ay5mYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmZjKCl9Owp2YXIgUmQ9ZnVuY3Rpb24oYSxiLGMpe2I9Yj09PXZvaWQgMD8hMTpiO2M9Yz09PXZvaWQgMD8hMTpjO3JldHVybiBuZXcgS2QoIiIsZnVuY3Rpb24oZCxlKXtiJiYoZT1kLGQ9dm9pZCAwKTtjJiYoZT1kKTtkIGluc3RhbmNlb2YgS2R8fChkPXZvaWQgMCk7ZSBpbnN0YW5jZW9mIEtkfHwoZT12b2lkIDApO3ZhciBmPXRoaXMuVC53YigpLGc9ZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4pe3RyeXtyZXR1cm4gYz8obC5pbnZva2UoZiksYS5wcm9taXNlKTpsLmludm9rZShmLG4pfWNhdGNoKHApe3JldHVybiBQcm9taXNlLnJlamVjdChwIGluc3RhbmNlb2YgRXJyb3I/bmV3IFBkKHApOlN0cmluZyhwKSl9fX0saD1hLnByb21pc2UudGhlbihkJiZnKGQpLGUmJmcoZSkpO3JldHVybiBuZXcgU2QoaCl9KX07U2QucHJvdG90eXBlLlphPWZ1bmN0aW9uKCl7dGhpcy5OYT0hMH07U2QucHJvdG90eXBlLkhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTmF9O2Z1bmN0aW9uIFRkKGEsYixjKXt2YXIgZD1PZCgpLGU9ZnVuY3Rpb24oZyxoKXtmb3IodmFyIGw9Zy5GYSgpLG49MDtuPGwubGVuZ3RoO24rKyloW2xbbl1dPWYoZy5nZXQobFtuXSkpfSxmPWZ1bmN0aW9uKGcpe2lmKGc9PT1udWxsfHxnPT09dm9pZCAwKXJldHVybiBnO3ZhciBoPWQuZ2V0KGcpO2lmKGgpcmV0dXJuIGg7aWYoZyBpbnN0YW5jZW9mIEdkKXt2YXIgbD1bXTtkLnNldChnLGwpO2Zvcih2YXIgbj1nLkZhKCkscD0wO3A8bi5sZW5ndGg7cCsrKWxbbltwXV09ZihnLmdldChuW3BdKSk7cmV0dXJuIGx9aWYoZyBpbnN0YW5jZW9mIFNkKXJldHVybiBnLnByb21pc2UudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gVGQodSxiLDEpfSxmdW5jdGlvbih1KXtyZXR1cm4gUHJvbWlzZS5yZWplY3QoVGQodSxiLDEpKX0pO2lmKGcgaW5zdGFuY2VvZiBrYil7dmFyIHE9e307ZC5zZXQoZyxxKTtlKGcscSk7cmV0dXJuIHF9aWYoZyBpbnN0YW5jZW9mIEtkKXt2YXIgcj1mdW5jdGlvbigpe2Zvcih2YXIgdT0KW10sdj0wO3Y8YXJndW1lbnRzLmxlbmd0aDt2KyspdVt2XT1VZChhcmd1bWVudHNbdl0sYixjKTt2YXIgeD1uZXcgaGIoYj9iLmplKCk6bmV3IFdhKTtiJiZ4LnVlKGIueGIoKSk7cmV0dXJuIGYoZy5hcHBseSh4LHUpKX07ZC5zZXQoZyxyKTtlKGcscik7cmV0dXJuIHJ9dmFyIHQ9ITE7c3dpdGNoKGMpe2Nhc2UgMTp0PSEwO2JyZWFrO2Nhc2UgMjp0PSExO2JyZWFrO2Nhc2UgMzp0PSExO2JyZWFrO2RlZmF1bHQ6fWlmKGcgaW5zdGFuY2VvZiBQZCYmdClyZXR1cm4gZy5nZXRWYWx1ZSgpO3N3aXRjaCh0eXBlb2YgZyl7Y2FzZSAiYm9vbGVhbiI6Y2FzZSAibnVtYmVyIjpjYXNlICJzdHJpbmciOmNhc2UgInVuZGVmaW5lZCI6cmV0dXJuIGc7Y2FzZSAib2JqZWN0IjppZihnPT09Cm51bGwpcmV0dXJuIG51bGx9fTtyZXR1cm4gZihhKX0KZnVuY3Rpb24gVWQoYSxiLGMpe3ZhciBkPU9kKCksZT1mdW5jdGlvbihnLGgpe2Zvcih2YXIgbCBpbiBnKWcuaGFzT3duUHJvcGVydHkobCkmJmguc2V0KGwsZihnW2xdKSl9LGY9ZnVuY3Rpb24oZyl7dmFyIGg9ZC5nZXQoZyk7aWYoaClyZXR1cm4gaDtpZihBcnJheS5pc0FycmF5KGcpfHxIYihnKSl7dmFyIGw9bmV3IEdkO2Quc2V0KGcsbCk7Zm9yKHZhciBuIGluIGcpZy5oYXNPd25Qcm9wZXJ0eShuKSYmbC5zZXQobixmKGdbbl0pKTtyZXR1cm4gbH1pZihDZChnKSl7dmFyIHA9bmV3IGtiO2Quc2V0KGcscCk7ZShnLHApO3JldHVybiBwfWlmKHR5cGVvZiBnPT09ImZ1bmN0aW9uIil7dmFyIHE9bmV3IEtkKCIiLGZ1bmN0aW9uKCl7Zm9yKHZhciB1PU9hLmFwcGx5KDAsYXJndW1lbnRzKSx2PVtdLHg9MDt4PHUubGVuZ3RoO3grKyl2W3hdPVRkKHRoaXMuZXZhbHVhdGUodVt4XSksYixjKTtyZXR1cm4gZih0aGlzLlQuUGooKShnLGcsdikpfSk7ZC5zZXQoZyxxKTtlKGcscSk7cmV0dXJuIHF9dmFyIHI9dHlwZW9mIGc7aWYoZz09PW51bGx8fHI9PT0ic3RyaW5nInx8cj09PSJudW1iZXIifHxyPT09ImJvb2xlYW4iKXJldHVybiBnO3ZhciB0PSExO3N3aXRjaChjKXtjYXNlIDE6dD0hMDticmVhaztjYXNlIDI6dD0hMTticmVhaztkZWZhdWx0On1pZihnIT09dm9pZCAwJiZ0KXJldHVybiBuZXcgUGQoZyl9O3JldHVybiBmKGEpfTt2YXIgVmQ9e3N1cHBvcnRlZE1ldGhvZHM6ImNvbmNhdCBldmVyeSBmaWx0ZXIgZm9yRWFjaCBoYXNPd25Qcm9wZXJ0eSBpbmRleE9mIGpvaW4gbGFzdEluZGV4T2YgbWFwIHBvcCBwdXNoIHJlZHVjZSByZWR1Y2VSaWdodCByZXZlcnNlIHNoaWZ0IHNsaWNlIHNvbWUgc29ydCBzcGxpY2UgdW5zaGlmdCB0b1N0cmluZyIuc3BsaXQoIiAiKSxjb25jYXQ6ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPVtdLGM9MDtjPHRoaXMubGVuZ3RoKCk7YysrKWIucHVzaCh0aGlzLmdldChjKSk7Zm9yKHZhciBkPTE7ZDxhcmd1bWVudHMubGVuZ3RoO2QrKylpZihhcmd1bWVudHNbZF1pbnN0YW5jZW9mIEdkKWZvcih2YXIgZT1hcmd1bWVudHNbZF0sZj0wO2Y8ZS5sZW5ndGgoKTtmKyspYi5wdXNoKGUuZ2V0KGYpKTtlbHNlIGIucHVzaChhcmd1bWVudHNbZF0pO3JldHVybiBuZXcgR2QoYil9LGV2ZXJ5OmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD0wO2Q8dGhpcy5sZW5ndGgoKSYmCmQ8YztkKyspaWYodGhpcy5oYXMoZCkmJiFiLmludm9rZShhLHRoaXMuZ2V0KGQpLGQsdGhpcykpcmV0dXJuITE7cmV0dXJuITB9LGZpbHRlcjpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz10aGlzLmxlbmd0aCgpLGQ9W10sZT0wO2U8dGhpcy5sZW5ndGgoKSYmZTxjO2UrKyl0aGlzLmhhcyhlKSYmYi5pbnZva2UoYSx0aGlzLmdldChlKSxlLHRoaXMpJiZkLnB1c2godGhpcy5nZXQoZSkpO3JldHVybiBuZXcgR2QoZCl9LGZvckVhY2g6ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9dGhpcy5sZW5ndGgoKSxkPTA7ZDx0aGlzLmxlbmd0aCgpJiZkPGM7ZCsrKXRoaXMuaGFzKGQpJiZiLmludm9rZShhLHRoaXMuZ2V0KGQpLGQsdGhpcyl9LGhhc093blByb3BlcnR5OmZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuaGFzKGIpfSxpbmRleE9mOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGU9Yz09PXZvaWQgMD8wOk51bWJlcihjKTtlPDAmJihlPU1hdGgubWF4KGQrZSwwKSk7Zm9yKHZhciBmPQplO2Y8ZDtmKyspaWYodGhpcy5oYXMoZikmJnRoaXMuZ2V0KGYpPT09YilyZXR1cm4gZjtyZXR1cm4tMX0sam9pbjpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDx0aGlzLmxlbmd0aCgpO2QrKyljLnB1c2godGhpcy5nZXQoZCkpO3JldHVybiBjLmpvaW4oYil9LGxhc3RJbmRleE9mOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGU9ZC0xO2MhPT12b2lkIDAmJihlPWM8MD9kK2M6TWF0aC5taW4oYyxlKSk7Zm9yKHZhciBmPWU7Zj49MDtmLS0paWYodGhpcy5oYXMoZikmJnRoaXMuZ2V0KGYpPT09YilyZXR1cm4gZjtyZXR1cm4tMX0sbWFwOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD1bXSxlPTA7ZTx0aGlzLmxlbmd0aCgpJiZlPGM7ZSsrKXRoaXMuaGFzKGUpJiYoZFtlXT1iLmludm9rZShhLHRoaXMuZ2V0KGUpLGUsdGhpcykpO3JldHVybiBuZXcgR2QoZCl9LHBvcDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnBvcCgpfSxwdXNoOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnB1c2guYXBwbHkodGhpcywKdyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKX0scmVkdWNlOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGUsZj0wO2lmKGMhPT12b2lkIDApZT1jO2Vsc2V7aWYoZD09PTApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlIG9uIExpc3Qgd2l0aCBubyBlbGVtZW50cy4iKSk7Zm9yKHZhciBnPTA7ZzxkO2crKylpZih0aGlzLmhhcyhnKSl7ZT10aGlzLmdldChnKTtmPWcrMTticmVha31pZihnPT09ZCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBSZWR1Y2Ugb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTt9Zm9yKHZhciBoPWY7aDxkO2grKyl0aGlzLmhhcyhoKSYmKGU9Yi5pbnZva2UoYSxlLHRoaXMuZ2V0KGgpLGgsdGhpcykpO3JldHVybiBlfSxyZWR1Y2VSaWdodDpmdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5sZW5ndGgoKSxlLGY9ZC0xO2lmKGMhPT12b2lkIDApZT1jO2Vsc2V7aWYoZD09PTApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlUmlnaHQgb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTsKZm9yKHZhciBnPTE7Zzw9ZDtnKyspaWYodGhpcy5oYXMoZC1nKSl7ZT10aGlzLmdldChkLWcpO2Y9ZC0oZysxKTticmVha31pZihnPmQpdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlUmlnaHQgb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTt9Zm9yKHZhciBoPWY7aD49MDtoLS0pdGhpcy5oYXMoaCkmJihlPWIuaW52b2tlKGEsZSx0aGlzLmdldChoKSxoLHRoaXMpKTtyZXR1cm4gZX0scmV2ZXJzZTpmdW5jdGlvbigpe2Zvcih2YXIgYT1IZCh0aGlzKSxiPWEubGVuZ3RoLTEsYz0wO2I+PTA7Yi0tLGMrKylhLmhhc093blByb3BlcnR5KGIpP3RoaXMuc2V0KGMsYVtiXSk6dGhpcy5yZW1vdmUoYyk7cmV0dXJuIHRoaXN9LHNoaWZ0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2hpZnQoKX0sc2xpY2U6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMubGVuZ3RoKCk7Yj09PXZvaWQgMCYmKGI9MCk7Yj1iPDA/TWF0aC5tYXgoZCtiLDApOk1hdGgubWluKGIsZCk7Yz1jPT09CnZvaWQgMD9kOmM8MD9NYXRoLm1heChkK2MsMCk6TWF0aC5taW4oYyxkKTtjPU1hdGgubWF4KGIsYyk7Zm9yKHZhciBlPVtdLGY9YjtmPGM7ZisrKWUucHVzaCh0aGlzLmdldChmKSk7cmV0dXJuIG5ldyBHZChlKX0sc29tZTpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz10aGlzLmxlbmd0aCgpLGQ9MDtkPHRoaXMubGVuZ3RoKCkmJmQ8YztkKyspaWYodGhpcy5oYXMoZCkmJmIuaW52b2tlKGEsdGhpcy5nZXQoZCksZCx0aGlzKSlyZXR1cm4hMDtyZXR1cm4hMX0sc29ydDpmdW5jdGlvbihhLGIpe3ZhciBjPUhkKHRoaXMpO2I9PT12b2lkIDA/Yy5zb3J0KCk6Yy5zb3J0KGZ1bmN0aW9uKGUsZil7cmV0dXJuIE51bWJlcihiLmludm9rZShhLGUsZikpfSk7Zm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspYy5oYXNPd25Qcm9wZXJ0eShkKT90aGlzLnNldChkLGNbZF0pOnRoaXMucmVtb3ZlKGQpO3JldHVybiB0aGlzfSxzcGxpY2U6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiB0aGlzLnNwbGljZS5hcHBseSh0aGlzLApbYixjXS5jb25jYXQodyhPYS5hcHBseSgzLGFyZ3VtZW50cykpKSl9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudG9TdHJpbmcoKX0sdW5zaGlmdDpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy51bnNoaWZ0LmFwcGx5KHRoaXMsdyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKX19O3ZhciBXZD17Y2hhckF0OjEsY29uY2F0OjEsaW5kZXhPZjoxLGxhc3RJbmRleE9mOjEsbWF0Y2g6MSxyZXBsYWNlOjEsc2VhcmNoOjEsc2xpY2U6MSxzcGxpdDoxLHN1YnN0cmluZzoxLHRvTG93ZXJDYXNlOjEsdG9Mb2NhbGVMb3dlckNhc2U6MSx0b1N0cmluZzoxLHRvVXBwZXJDYXNlOjEsdG9Mb2NhbGVVcHBlckNhc2U6MSx0cmltOjF9LFhkPW5ldyBUYSgiYnJlYWsiKSxZZD1uZXcgVGEoImNvbnRpbnVlIik7ZnVuY3Rpb24gWmQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSt0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uICRkKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkmJnRoaXMuZXZhbHVhdGUoYil9CmZ1bmN0aW9uIGFlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyk7aWYoIShmIGluc3RhbmNlb2YgR2QpKXRocm93IEVycm9yKCJFcnJvcjogTm9uLUxpc3QgYXJndW1lbnQgZ2l2ZW4gdG8gQXBwbHkgaW5zdHJ1Y3Rpb24uIik7aWYoZD09PW51bGx8fGQ9PT12b2lkIDApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogQ2FuJ3QgcmVhZCBwcm9wZXJ0eSAiK2UrIiBvZiAiK2QrIi4iKSk7dmFyIGc9dHlwZW9mIGQ9PT0ibnVtYmVyIjtpZih0eXBlb2YgZD09PSJib29sZWFuInx8Zyl7aWYoZT09PSJ0b1N0cmluZyIpe2lmKGcmJmYubGVuZ3RoKCkpe3ZhciBoPVRkKGYuZ2V0KDApKTt0cnl7cmV0dXJuIGQudG9TdHJpbmcoaCl9Y2F0Y2godSl7fX1yZXR1cm4gZC50b1N0cmluZygpfXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6ICIrZCsiLiIrZSsiIGlzIG5vdCBhIGZ1bmN0aW9uLiIpKTt9aWYodHlwZW9mIGQ9PT0KInN0cmluZyIpe2lmKFdkLmhhc093blByb3BlcnR5KGUpKXt2YXIgbD1UZChmLHZvaWQgMCwxKTtyZXR1cm4gVWQoZFtlXS5hcHBseShkLGwpLHRoaXMuVCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitlKyIgaXMgbm90IGEgZnVuY3Rpb24iKSk7fWlmKGQgaW5zdGFuY2VvZiBHZCl7aWYoZC5oYXMoZSkpe3ZhciBuPWQuZ2V0KFN0cmluZyhlKSk7aWYobiBpbnN0YW5jZW9mIEtkKXt2YXIgcD1IZChmKTtyZXR1cm4gbi5hcHBseSh0aGlzLlQscCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitlKyIgaXMgbm90IGEgZnVuY3Rpb24iKSk7fWlmKFZkLnN1cHBvcnRlZE1ldGhvZHMuaW5kZXhPZihlKT49MCl7dmFyIHE9SGQoZik7cmV0dXJuIFZkW2VdLmNhbGwuYXBwbHkoVmRbZV0sW2QsdGhpcy5UXS5jb25jYXQodyhxKSkpfX1pZihkIGluc3RhbmNlb2YgS2R8fGQgaW5zdGFuY2VvZiBrYnx8ZCBpbnN0YW5jZW9mIFNkKXtpZihkLmhhcyhlKSl7dmFyIHI9ZC5nZXQoZSk7CmlmKHIgaW5zdGFuY2VvZiBLZCl7dmFyIHQ9SGQoZik7cmV0dXJuIHIuYXBwbHkodGhpcy5ULHQpfXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6ICIrZSsiIGlzIG5vdCBhIGZ1bmN0aW9uIikpO31pZihlPT09InRvU3RyaW5nIilyZXR1cm4gZCBpbnN0YW5jZW9mIEtkP2QuZ2V0TmFtZSgpOmQudG9TdHJpbmcoKTtpZihlPT09Imhhc093blByb3BlcnR5IilyZXR1cm4gZC5oYXMoZi5nZXQoMCkpfWlmKGQgaW5zdGFuY2VvZiBQZCYmZT09PSJ0b1N0cmluZyIpcmV0dXJuIGQudG9TdHJpbmcoKTt0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBPYmplY3QgaGFzIG5vICciK2UrIicgcHJvcGVydHkuIikpO30KZnVuY3Rpb24gYmUoYSxiKXthPXRoaXMuZXZhbHVhdGUoYSk7aWYodHlwZW9mIGEhPT0ic3RyaW5nIil0aHJvdyBFcnJvcigiSW52YWxpZCBrZXkgbmFtZSBnaXZlbiBmb3IgYXNzaWdubWVudC4iKTt2YXIgYz10aGlzLlQ7aWYoIWMuaGFzKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFzc2lnbiB0byB1bmRlZmluZWQgdmFsdWUgIitiKTt2YXIgZD10aGlzLmV2YWx1YXRlKGIpO2Muc2V0KGEsZCk7cmV0dXJuIGR9ZnVuY3Rpb24gY2UoKXt2YXIgYT1PYS5hcHBseSgwLGFyZ3VtZW50cyksYj10aGlzLlQud2IoKSxjPWViKGIsYSk7aWYoYyBpbnN0YW5jZW9mIFRhKXJldHVybiBjfWZ1bmN0aW9uIGRlKCl7cmV0dXJuIFhkfWZ1bmN0aW9uIGVlKGEpe2Zvcih2YXIgYj10aGlzLmV2YWx1YXRlKGEpLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShiW2NdKTtpZihkIGluc3RhbmNlb2YgVGEpcmV0dXJuIGR9fQpmdW5jdGlvbiBmZSgpe2Zvcih2YXIgYT10aGlzLlQsYj0wO2I8YXJndW1lbnRzLmxlbmd0aC0xO2IrPTIpe3ZhciBjPWFyZ3VtZW50c1tiXTtpZih0eXBlb2YgYz09PSJzdHJpbmciKXt2YXIgZD10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiKzFdKTthLlFoKGMsZCl9fX1mdW5jdGlvbiBnZSgpe3JldHVybiBZZH1mdW5jdGlvbiBoZShhLGIpe3JldHVybiBuZXcgVGEoYSx0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBpZShhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkO2Q9bmV3IEdkO2Zvcih2YXIgZT10aGlzLmV2YWx1YXRlKGIpLGY9MDtmPGUubGVuZ3RoO2YrKylkLnB1c2goZVtmXSk7dmFyIGc9WzUxLGEsZF0uY29uY2F0KHcoYykpO3RoaXMuVC5hZGQoYSx0aGlzLmV2YWx1YXRlKGcpKX1mdW5jdGlvbiBqZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpL3RoaXMuZXZhbHVhdGUoYil9CmZ1bmN0aW9uIGtlKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYiksZT1jIGluc3RhbmNlb2YgUGQsZj1kIGluc3RhbmNlb2YgUGQ7cmV0dXJuIGV8fGY/ZSYmZj9jLmdldFZhbHVlKCk9PT1kLmdldFZhbHVlKCk6ITE6Yz09ZH1mdW5jdGlvbiBsZSgpe2Zvcih2YXIgYSxiPTA7Yjxhcmd1bWVudHMubGVuZ3RoO2IrKylhPXRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2JdKTtyZXR1cm4gYX1mdW5jdGlvbiBtZShhLGIsYyxkKXtmb3IodmFyIGU9MDtlPGIoKTtlKyspe3ZhciBmPWEoYyhlKSksZz1lYihmLGQpO2lmKGcgaW5zdGFuY2VvZiBUYSl7aWYoZy50eXBlPT09ImJyZWFrIilicmVhaztpZihnLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gZ319fQpmdW5jdGlvbiBuZShhLGIsYyl7aWYodHlwZW9mIGI9PT0ic3RyaW5nIilyZXR1cm4gbWUoYSxmdW5jdGlvbigpe3JldHVybiBiLmxlbmd0aH0sZnVuY3Rpb24oZil7cmV0dXJuIGZ9LGMpO2lmKGIgaW5zdGFuY2VvZiBrYnx8YiBpbnN0YW5jZW9mIFNkfHxiIGluc3RhbmNlb2YgR2R8fGIgaW5zdGFuY2VvZiBLZCl7dmFyIGQ9Yi5GYSgpLGU9ZC5sZW5ndGg7cmV0dXJuIG1lKGEsZnVuY3Rpb24oKXtyZXR1cm4gZX0sZnVuY3Rpb24oZil7cmV0dXJuIGRbZl19LGMpfX1mdW5jdGlvbiBvZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpLGc9dGhpcy5UO3JldHVybiBuZShmdW5jdGlvbihoKXtnLnNldChkLGgpO3JldHVybiBnfSxlLGYpfQpmdW5jdGlvbiBwZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpLGc9dGhpcy5UO3JldHVybiBuZShmdW5jdGlvbihoKXt2YXIgbD1nLndiKCk7bC5RaChkLGgpO3JldHVybiBsfSxlLGYpfWZ1bmN0aW9uIHFlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIG5lKGZ1bmN0aW9uKGgpe3ZhciBsPWcud2IoKTtsLmFkZChkLGgpO3JldHVybiBsfSxlLGYpfWZ1bmN0aW9uIHJlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIHNlKGZ1bmN0aW9uKGgpe2cuc2V0KGQsaCk7cmV0dXJuIGd9LGUsZil9CmZ1bmN0aW9uIHRlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIHNlKGZ1bmN0aW9uKGgpe3ZhciBsPWcud2IoKTtsLlFoKGQsaCk7cmV0dXJuIGx9LGUsZil9ZnVuY3Rpb24gdWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKSxnPXRoaXMuVDtyZXR1cm4gc2UoZnVuY3Rpb24oaCl7dmFyIGw9Zy53YigpO2wuYWRkKGQsaCk7cmV0dXJuIGx9LGUsZil9CmZ1bmN0aW9uIHNlKGEsYixjKXtpZih0eXBlb2YgYj09PSJzdHJpbmciKXJldHVybiBtZShhLGZ1bmN0aW9uKCl7cmV0dXJuIGIubGVuZ3RofSxmdW5jdGlvbihkKXtyZXR1cm4gYltkXX0sYyk7aWYoYiBpbnN0YW5jZW9mIEdkKXJldHVybiBtZShhLGZ1bmN0aW9uKCl7cmV0dXJuIGIubGVuZ3RoKCl9LGZ1bmN0aW9uKGQpe3JldHVybiBiLmdldChkKX0sYyk7dGhyb3cgY2IoRXJyb3IoIlRoZSB2YWx1ZSBpcyBub3QgaXRlcmFibGUuIikpO30KZnVuY3Rpb24gdmUoYSxiLGMsZCl7ZnVuY3Rpb24gZShxLHIpe2Zvcih2YXIgdD0wO3Q8Zi5sZW5ndGgoKTt0Kyspe3ZhciB1PWYuZ2V0KHQpO3IuYWRkKHUscS5nZXQodSkpfX12YXIgZj10aGlzLmV2YWx1YXRlKGEpO2lmKCEoZiBpbnN0YW5jZW9mIEdkKSl0aHJvdyBFcnJvcigiVHlwZUVycm9yOiBOb24tTGlzdCBhcmd1bWVudCBnaXZlbiB0byBGb3JMZXQgaW5zdHJ1Y3Rpb24uIik7dmFyIGc9dGhpcy5ULGg9dGhpcy5ldmFsdWF0ZShkKSxsPWcud2IoKTtmb3IoZShnLGwpO2ZiKGwsYik7KXt2YXIgbj1lYihsLGgpO2lmKG4gaW5zdGFuY2VvZiBUYSl7aWYobi50eXBlPT09ImJyZWFrIilicmVhaztpZihuLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gbn12YXIgcD1nLndiKCk7ZShsLHApO2ZiKHAsYyk7bD1wfX0KZnVuY3Rpb24gd2UoYSxiKXt2YXIgYz1PYS5hcHBseSgyLGFyZ3VtZW50cyksZD10aGlzLlQsZT10aGlzLmV2YWx1YXRlKGIpO2lmKCEoZSBpbnN0YW5jZW9mIEdkKSl0aHJvdyBFcnJvcigiRXJyb3I6IG5vbi1MaXN0IHZhbHVlIGdpdmVuIGZvciBGbiBhcmd1bWVudCBuYW1lcy4iKTtyZXR1cm4gbmV3IEtkKGEsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZj1PYS5hcHBseSgwLGFyZ3VtZW50cyksZz1kLndiKCk7Zy54YigpPT09dm9pZCAwJiZnLnVlKHRoaXMuVC54YigpKTtmb3IodmFyIGg9W10sbD0wO2w8Zi5sZW5ndGg7bCsrKXt2YXIgbj10aGlzLmV2YWx1YXRlKGZbbF0pO2hbbF09bn1mb3IodmFyIHA9ZS5nZXQoImxlbmd0aCIpLHE9MDtxPHA7cSsrKXE8aC5sZW5ndGg/Zy5hZGQoZS5nZXQocSksaFtxXSk6Zy5hZGQoZS5nZXQocSksdm9pZCAwKTtnLmFkZCgiYXJndW1lbnRzIixuZXcgR2QoaCkpO3ZhciByPWViKGcsYyk7aWYociBpbnN0YW5jZW9mIFRhKXJldHVybiByLnR5cGU9PT0KInJldHVybiI/ci5kYXRhOnJ9fSgpKX1mdW5jdGlvbiB4ZShhKXt2YXIgYj10aGlzLmV2YWx1YXRlKGEpLGM9dGhpcy5UO2lmKHllJiYhYy5oYXMoYikpdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKGIrIiBpcyBub3QgZGVmaW5lZC4iKTtyZXR1cm4gYy5nZXQoYil9CmZ1bmN0aW9uIHplKGEsYil7dmFyIGMsZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKTtpZihkPT09dm9pZCAwfHxkPT09bnVsbCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBDYW5ub3QgcmVhZCBwcm9wZXJ0aWVzIG9mICIrZCsiIChyZWFkaW5nICciK2UrIicpIikpO2lmKGQgaW5zdGFuY2VvZiBrYnx8ZCBpbnN0YW5jZW9mIFNkfHxkIGluc3RhbmNlb2YgR2R8fGQgaW5zdGFuY2VvZiBLZCljPWQuZ2V0KGUpO2Vsc2UgaWYodHlwZW9mIGQ9PT0ic3RyaW5nIillPT09Imxlbmd0aCI/Yz1kLmxlbmd0aDpGZChlKSYmKGM9ZFtlXSk7ZWxzZSBpZihkIGluc3RhbmNlb2YgUGQpcmV0dXJuO3JldHVybiBjfWZ1bmN0aW9uIEFlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk+dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiBCZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpPj10aGlzLmV2YWx1YXRlKGIpfQpmdW5jdGlvbiBDZShhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSksZD10aGlzLmV2YWx1YXRlKGIpO2MgaW5zdGFuY2VvZiBQZCYmKGM9Yy5nZXRWYWx1ZSgpKTtkIGluc3RhbmNlb2YgUGQmJihkPWQuZ2V0VmFsdWUoKSk7cmV0dXJuIGM9PT1kfWZ1bmN0aW9uIERlKGEsYil7cmV0dXJuIUNlLmNhbGwodGhpcyxhLGIpfWZ1bmN0aW9uIEVlKGEsYixjKXt2YXIgZD1bXTt0aGlzLmV2YWx1YXRlKGEpP2Q9dGhpcy5ldmFsdWF0ZShiKTpjJiYoZD10aGlzLmV2YWx1YXRlKGMpKTt2YXIgZT1lYih0aGlzLlQsZCk7aWYoZSBpbnN0YW5jZW9mIFRhKXJldHVybiBlfXZhciB5ZT0hMTsKZnVuY3Rpb24gRmUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKTx0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIEdlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk8PXRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gSGUoKXtmb3IodmFyIGE9bmV3IEdkLGI9MDtiPGFyZ3VtZW50cy5sZW5ndGg7YisrKXt2YXIgYz10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiXSk7YS5wdXNoKGMpfXJldHVybiBhfWZ1bmN0aW9uIEllKCl7Zm9yKHZhciBhPW5ldyBrYixiPTA7Yjxhcmd1bWVudHMubGVuZ3RoLTE7Yis9Mil7dmFyIGM9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2JdKSksZD10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiKzFdKTthLnNldChjLGQpfXJldHVybiBhfWZ1bmN0aW9uIEplKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkldGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24gS2UoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSp0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIExlKGEpe3JldHVybi10aGlzLmV2YWx1YXRlKGEpfWZ1bmN0aW9uIE1lKGEpe3JldHVybiF0aGlzLmV2YWx1YXRlKGEpfWZ1bmN0aW9uIE5lKGEsYil7cmV0dXJuIWtlLmNhbGwodGhpcyxhLGIpfWZ1bmN0aW9uIE9lKCl7cmV0dXJuIG51bGx9ZnVuY3Rpb24gUGUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKXx8dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiBRZShhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSk7dGhpcy5ldmFsdWF0ZShiKTtyZXR1cm4gY31mdW5jdGlvbiBSZShhKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKX1mdW5jdGlvbiBTZSgpe3JldHVybiBPYS5hcHBseSgwLGFyZ3VtZW50cyl9ZnVuY3Rpb24gVGUoYSl7cmV0dXJuIG5ldyBUYSgicmV0dXJuIix0aGlzLmV2YWx1YXRlKGEpKX0KZnVuY3Rpb24gVWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKTtpZihkPT09bnVsbHx8ZD09PXZvaWQgMCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBDYW4ndCBzZXQgcHJvcGVydHkgIitlKyIgb2YgIitkKyIuIikpOyhkIGluc3RhbmNlb2YgS2R8fGQgaW5zdGFuY2VvZiBHZHx8ZCBpbnN0YW5jZW9mIGtiKSYmZC5zZXQoU3RyaW5nKGUpLGYpO3JldHVybiBmfWZ1bmN0aW9uIFZlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSktdGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24gV2UoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKTtpZighQXJyYXkuaXNBcnJheShlKXx8IUFycmF5LmlzQXJyYXkoZikpdGhyb3cgRXJyb3IoIkVycm9yOiBNYWxmb3JtZWQgc3dpdGNoIGluc3RydWN0aW9uLiIpO2Zvcih2YXIgZyxoPSExLGw9MDtsPGUubGVuZ3RoO2wrKylpZihofHxkPT09dGhpcy5ldmFsdWF0ZShlW2xdKSlpZihnPXRoaXMuZXZhbHVhdGUoZltsXSksZyBpbnN0YW5jZW9mIFRhKXt2YXIgbj1nLnR5cGU7aWYobj09PSJicmVhayIpcmV0dXJuO2lmKG49PT0icmV0dXJuInx8bj09PSJjb250aW51ZSIpcmV0dXJuIGd9ZWxzZSBoPSEwO2lmKGYubGVuZ3RoPT09ZS5sZW5ndGgrMSYmKGc9dGhpcy5ldmFsdWF0ZShmW2YubGVuZ3RoLTFdKSxnIGluc3RhbmNlb2YgVGEmJihnLnR5cGU9PT0icmV0dXJuInx8Zy50eXBlPT09ImNvbnRpbnVlIikpKXJldHVybiBnfQpmdW5jdGlvbiBYZShhLGIsYyl7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk/dGhpcy5ldmFsdWF0ZShiKTp0aGlzLmV2YWx1YXRlKGMpfWZ1bmN0aW9uIFllKGEpe3ZhciBiPXRoaXMuZXZhbHVhdGUoYSk7cmV0dXJuIGIgaW5zdGFuY2VvZiBLZD8iZnVuY3Rpb24iOnR5cGVvZiBifWZ1bmN0aW9uIFplKCl7Zm9yKHZhciBhPXRoaXMuVCxiPTA7Yjxhcmd1bWVudHMubGVuZ3RoO2IrKyl7dmFyIGM9YXJndW1lbnRzW2JdO3R5cGVvZiBjIT09InN0cmluZyJ8fGEuYWRkKGMsdm9pZCAwKX19CmZ1bmN0aW9uICRlKGEsYixjLGQpe3ZhciBlPXRoaXMuZXZhbHVhdGUoZCk7aWYodGhpcy5ldmFsdWF0ZShjKSl7dmFyIGY9ZWIodGhpcy5ULGUpO2lmKGYgaW5zdGFuY2VvZiBUYSl7aWYoZi50eXBlPT09ImJyZWFrIilyZXR1cm47aWYoZi50eXBlPT09InJldHVybiIpcmV0dXJuIGZ9fWZvcig7dGhpcy5ldmFsdWF0ZShhKTspe3ZhciBnPWViKHRoaXMuVCxlKTtpZihnIGluc3RhbmNlb2YgVGEpe2lmKGcudHlwZT09PSJicmVhayIpYnJlYWs7aWYoZy50eXBlPT09InJldHVybiIpcmV0dXJuIGd9dGhpcy5ldmFsdWF0ZShiKX19ZnVuY3Rpb24gYWYoYSl7cmV0dXJufk51bWJlcih0aGlzLmV2YWx1YXRlKGEpKX1mdW5jdGlvbiBiZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSk8PE51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBjZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSk+Pk51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX0KZnVuY3Rpb24gZGYoYSxiKXtyZXR1cm4gTnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpPj4+TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGVmKGEsYil7cmV0dXJuIE51bWJlcih0aGlzLmV2YWx1YXRlKGEpKSZOdW1iZXIodGhpcy5ldmFsdWF0ZShiKSl9ZnVuY3Rpb24gZmYoYSxiKXtyZXR1cm4gTnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpXk51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBnZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSl8TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGhmKCl7fQpmdW5jdGlvbiBrZihhLGIsYyl7dHJ5e3ZhciBkPXRoaXMuZXZhbHVhdGUoYik7aWYoZCBpbnN0YW5jZW9mIFRhKXJldHVybiBkfWNhdGNoKGgpe2lmKCEoaCBpbnN0YW5jZW9mIGJiJiZoLlNuKSl0aHJvdyBoO3ZhciBlPXRoaXMuVC53YigpO2EhPT0iIiYmKGggaW5zdGFuY2VvZiBiYiYmKGg9aC52byksZS5hZGQoYSxuZXcgUGQoaCkpKTt2YXIgZj10aGlzLmV2YWx1YXRlKGMpLGc9ZWIoZSxmKTtpZihnIGluc3RhbmNlb2YgVGEpcmV0dXJuIGd9fWZ1bmN0aW9uIGxmKGEsYil7dmFyIGMsZDt0cnl7ZD10aGlzLmV2YWx1YXRlKGEpfWNhdGNoKGYpe2lmKCEoZiBpbnN0YW5jZW9mIGJiJiZmLlNuKSl0aHJvdyBmO2M9Zn12YXIgZT10aGlzLmV2YWx1YXRlKGIpO2lmKGUgaW5zdGFuY2VvZiBUYSlyZXR1cm4gZTtpZihjKXRocm93IGM7aWYoZCBpbnN0YW5jZW9mIFRhKXJldHVybiBkfTt2YXIgbmY9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IGdiO21mKHRoaXMpfTtuZi5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5ILnJrKGEpfTt2YXIgbWY9ZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oYyxkKXt2YXIgZT1uZXcgTGQoU3RyaW5nKGMpLGQpO2UuWmEoKTt2YXIgZj1TdHJpbmcoYyk7YS5ILkguc2V0KGYsZSk7ZGIuc2V0KGYsZSl9O2IoIm1hcCIsSWUpO2IoImFuZCIsdGQpO2IoImNvbnRhaW5zIix3ZCk7YigiZXF1YWxzIix1ZCk7Yigib3IiLHZkKTtiKCJzdGFydHNXaXRoIix4ZCk7YigidmFyaWFibGUiLHlkKX07bmYucHJvdG90eXBlLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07dmFyIHBmPWZ1bmN0aW9uKCl7dGhpcy5LPSExO3RoaXMuSD1uZXcgZ2I7b2YodGhpcyk7dGhpcy5LPSEwfTtwZi5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gcWYodGhpcy5ILnJrKGEpKX07dmFyIHJmPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gcWYoYS5ILkpxKGIsYykpfTtwZi5wcm90b3R5cGUuWmE9ZnVuY3Rpb24oKXt0aGlzLkguWmEoKX07CnZhciBvZj1mdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbihjLGQpe3ZhciBlPVN0cmluZyhjKSxmPW5ldyBMZChlLGQpO2YuWmEoKTthLkguSC5zZXQoZSxmKTtkYi5zZXQoZSxmKX07YigwLFpkKTtiKDEsJGQpO2IoMixhZSk7YigzLGJlKTtiKDU2LGVmKTtiKDU3LGJmKTtiKDU4LGFmKTtiKDU5LGdmKTtiKDYwLGNmKTtiKDYxLGRmKTtiKDYyLGZmKTtiKDUzLGNlKTtiKDQsZGUpO2IoNSxlZSk7Yig2OCxrZik7Yig1MixmZSk7Yig2LGdlKTtiKDQ5LGhlKTtiKDcsSGUpO2IoOCxJZSk7Yig5LGVlKTtiKDUwLGllKTtiKDEwLGplKTtiKDEyLGtlKTtiKDEzLGxlKTtiKDY3LGxmKTtiKDUxLHdlKTtiKDQ3LG9lKTtiKDU0LHBlKTtiKDU1LHFlKTtiKDYzLHZlKTtiKDY0LHJlKTtiKDY1LHRlKTtiKDY2LHVlKTtiKDE1LHhlKTtiKDE2LHplKTtiKDE3LHplKTtiKDE4LEFlKTtiKDE5LEJlKTtiKDIwLENlKTtiKDIxLERlKTtiKDIyLEVlKTtiKDIzLEZlKTtiKDI0LEdlKTtiKDI1LEplKTtiKDI2LApLZSk7YigyNyxMZSk7YigyOCxNZSk7YigyOSxOZSk7Yig0NSxPZSk7YigzMCxQZSk7YigzMixRZSk7YigzMyxRZSk7YigzNCxSZSk7YigzNSxSZSk7Yig0NixTZSk7YigzNixUZSk7Yig0MyxVZSk7YigzNyxWZSk7YigzOCxXZSk7YigzOSxYZSk7Yig0MCxZZSk7Yig0NCxoZik7Yig0MSxaZSk7Yig0MiwkZSl9O3BmLnByb3RvdHlwZS5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkguamUoKX07cGYucHJvdG90eXBlLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07cGYucHJvdG90eXBlLnNkPWZ1bmN0aW9uKGEpe3RoaXMuSC5zZChhKX07CmZ1bmN0aW9uIHFmKGEpe2lmKGEgaW5zdGFuY2VvZiBUYXx8YSBpbnN0YW5jZW9mIEtkfHxhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkfHxhIGluc3RhbmNlb2YgUGR8fGE9PT1udWxsfHxhPT09dm9pZCAwfHx0eXBlb2YgYT09PSJzdHJpbmcifHx0eXBlb2YgYT09PSJudW1iZXIifHx0eXBlb2YgYT09PSJib29sZWFuIilyZXR1cm4gYX07dmFyIHNmPWZ1bmN0aW9uKGEpe3RoaXMubWVzc2FnZT1hfTtmdW5jdGlvbiB0ZihhKXthLnF2PSEwO3JldHVybiBhfTt2YXIgdWY9dGYoZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciJ9KSx2Zj10ZihmdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIn0pLHdmPXRmKGZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PSJib29sZWFuIn0pO2Z1bmN0aW9uIHhmKGEpe3ZhciBiPSIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIlthXTtyZXR1cm4gYj09PXZvaWQgMD9uZXcgc2YoIlZhbHVlICIrYSsiIGNhbiBub3QgYmUgZW5jb2RlZCBpbiB3ZWItc2FmZSBiYXNlNjQgZGljdGlvbmFyeS4iKTpifTtmdW5jdGlvbiB5ZihhKXtzd2l0Y2goYSl7Y2FzZSAxOnJldHVybiIxIjtjYXNlIDI6Y2FzZSA0OnJldHVybiIwIjtkZWZhdWx0OnJldHVybiItIn19O3ZhciB6Zj0vXlsxLTlhLXpBLVpfLV1bMS05YS1jXVsxLTlhLXZdXGQkLztmdW5jdGlvbiBBZihhLGIpe2Zvcih2YXIgYz0iIixkPSEwO2E+Nzspe3ZhciBlPWEmMzE7YT4+PTU7ZD9kPSExOmV8PTMyO2M9IiIreGYoZSkrY31hPDw9MjtkfHwoYXw9MzIpO3JldHVybiBjPSIiK3hmKGF8YikrY31mdW5jdGlvbiBCZihhLGIpe3JldHVybiBiPT09dm9pZCAwfHxiPT09MD8iIjoiIitBZihhLDEpK3hmKGIpfQpmdW5jdGlvbiBDZihhLGIpe3ZhciBjO3ZhciBkPWEuaGksZT1hLmJrO2Q9PT12b2lkIDA/Yz0iIjooZXx8KGU9MCksYz0iIitBZigxLDEpK3hmKGQ8PDJ8ZSkpO3ZhciBmPSI0IitjK0JmKDIsYS5xciksZyxoPWEuSW87Zz1oJiZ6Zi50ZXN0KGgpPyIiK0FmKDMsMikraDoiIjt2YXIgbDt2YXIgbj1hLmN0aWQ7aWYobiYmYil7dmFyIHA9QWYoNSwzKSxxPW4uc3BsaXQoIi0iKSxyPXFbMF0udG9VcHBlckNhc2UoKTtpZihyIT09IkdUTSImJnIhPT0iT1BUIilsPSIiO2Vsc2V7dmFyIHQ9cVsxXTtsPSIiK3AreGYoMSt0Lmxlbmd0aCkrKGEuTHN8fDApK3R9fWVsc2UgbD0iIjt2YXIgdT1hLmNhbm9uaWNhbElkLHY9YS5tYyx4PWEuenYseT1mK2crQmYoNCxhLkRvKStsK0JmKDYsYS5EdCkrKHU/IiIrQWYoNywzKSt4Zih1Lmxlbmd0aCkrdToiIikrKHY/IiIrQWYoOCwzKSt4Zih2Lmxlbmd0aCkrdjoiIikrKHg/IiIrQWYoOSwzKSt4Zih4Lmxlbmd0aCkreDoiIiksejt2YXIgQz1hLnpyO0M9CkM9PT12b2lkIDA/e306Qztmb3IodmFyIEQ9W10sST1tKE9iamVjdC5rZXlzKEMpKSxHPUkubmV4dCgpOyFHLmRvbmU7Rz1JLm5leHQoKSl7dmFyIE49Ry52YWx1ZTtEW051bWJlcihOKV09Q1tOXX1pZihELmxlbmd0aCl7dmFyIFM9QWYoMTAsMyksVztpZihELmxlbmd0aD09PTApVz14ZigwKTtlbHNle2Zvcih2YXIgZWE9W10samE9MCxmYT0hMSxzYT0wO3NhPEQubGVuZ3RoO3NhKyspe2ZhPSEwO3ZhciBkYT1zYSU2O0Rbc2FdJiYoamF8PTE8PGRhKTtkYT09PTUmJihlYS5wdXNoKHhmKGphKSksamE9MCxmYT0hMSl9ZmEmJmVhLnB1c2goeGYoamEpKTtXPWVhLmpvaW4oIiIpfXZhciBtYT1XO3o9IiIrUyt4ZihtYS5sZW5ndGgpK21hfWVsc2Ugej0iIjt2YXIgUGE9YS5VcyxGYT1hLm50O3JldHVybiB5K3orKFBhPyIiK0FmKDExLDMpK3hmKFBhLmxlbmd0aCkrUGE6IiIpKyhGYT8iIitBZigxMywzKSt4ZihGYS5sZW5ndGgpK0ZhOiIiKStCZigxNCxhLkV0KStCZigxNSxhLnJ2KStCZigxNiwKYS5Bdil9O2Z1bmN0aW9uIERmKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD0wO2Q8YS5sZW5ndGg7ZCsrKXt2YXIgZT1hLmNoYXJDb2RlQXQoZCk7ZTwxMjg/YltjKytdPWU6KGU8MjA0OD9iW2MrK109ZT4+NnwxOTI6KChlJjY0NTEyKT09NTUyOTYmJmQrMTxhLmxlbmd0aCYmKGEuY2hhckNvZGVBdChkKzEpJjY0NTEyKT09NTYzMjA/KGU9NjU1MzYrKChlJjEwMjMpPDwxMCkrKGEuY2hhckNvZGVBdCgrK2QpJjEwMjMpLGJbYysrXT1lPj4xOHwyNDAsYltjKytdPWU+PjEyJjYzfDEyOCk6YltjKytdPWU+PjEyfDIyNCxiW2MrK109ZT4+NiY2M3wxMjgpLGJbYysrXT1lJjYzfDEyOCl9cmV0dXJuIGJ9O2Z1bmN0aW9uIEVmKGEsYil7Zm9yKHZhciBjPXFiKGIpLGQ9bmV3IFVpbnQ4QXJyYXkoYy5sZW5ndGgpLGU9MDtlPGMubGVuZ3RoO2UrKylkW2VdPWMuY2hhckNvZGVBdChlKTtpZihkLmxlbmd0aCE9PTMyKXRocm93IEVycm9yKCJLZXkgaXMgbm90IDMyIGJ5dGVzLiIpO3JldHVybiBGZihhLGQpfWZ1bmN0aW9uIEZmKGEsYil7aWYoYT09PSIiKXJldHVybiIiO3ZhciBjPVpiKGEpLGQ9Yi5zbGljZSgtMiksZT1bXS5jb25jYXQodyhkKSx3KGMpKS5tYXAoZnVuY3Rpb24oZyxoKXtyZXR1cm4gZ15iW2glYi5sZW5ndGhdfSksZj1uZXcgVWludDhBcnJheShbXS5jb25jYXQodyhlKSx3KGQpKSk7cmV0dXJuIHBiKFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoU3RyaW5nLHcoZikpKS5yZXBsYWNlKC9cLiskLywiIil9O3ZhciBHZj1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoYil7cmV0dXJue3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIGJ9fX1yZXR1cm57Y3A6YSgiY29uc2VudCIpLFprOmEoImNvbnZlcnRfY2FzZV90byIpLGFsOmEoImNvbnZlcnRfZmFsc2VfdG8iKSxibDphKCJjb252ZXJ0X251bGxfdG8iKSxlcDphKCJjb252ZXJ0X3RvX2Jvb2xlYW4iKSxhaDphKCJjb252ZXJ0X3RvX251bWJlciIpLGZsOmEoImNvbnZlcnRfdHJ1ZV90byIpLGlsOmEoImNvbnZlcnRfdW5kZWZpbmVkX3RvIiksWXQ6YSgiZGVidWdfbW9kZV9tZXRhZGF0YSIpLFliOmEoImZ1bmN0aW9uIiksUm06YSgiaW5zdGFuY2VfbmFtZSIpLE5xOmEoImxpdmVfb25seSIpLE9xOmEoIm1hbHdhcmVfZGlzYWJsZWQiKSxNRVRBREFUQTphKCJtZXRhZGF0YSIpLFJxOmEoIm9yaWdpbmFsX2FjdGl2aXR5X2lkIiksVHU6YSgib3JpZ2luYWxfdmVuZG9yX3RlbXBsYXRlX2lkIiksU3U6YSgib25jZV9vbl9sb2FkIiksUXE6YSgib25jZV9wZXJfZXZlbnQiKSwKa246YSgib25jZV9wZXJfbG9hZCIpLFZ1OmEoInByaW9yaXR5X292ZXJyaWRlIiksWXU6YSgicmVzcGVjdGVkX2NvbnNlbnRfdHlwZXMiKSx0bjphKCJzZXR1cF90YWdzIikseWo6YSgidGFnX2lkIiksRG46YSgidGVhcmRvd25fdGFncyIpLHBsOmEoImRpc2FibGVkX2luX2dvb2dsZV9tb2RlIiksRnE6YSgiZ2VuZXJhdGVkX3RhZ2dpbmdfbWV0YWRhdGEiKX19KCk7ZnVuY3Rpb24gSGYoYSxiKXt2YXIgYz17fTtjW0dmLlliXT0iX18iK2E7Zm9yKHZhciBkIGluIGIpYi5oYXNPd25Qcm9wZXJ0eShkKSYmKGNbInZ0cF8iK2RdPWJbZF0pO3JldHVybiBjfTtmdW5jdGlvbiBJZihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjLGQ7cmV0dXJuKChjPWRhdGEpPT1udWxsPzA6KGQ9Yy5ibG9iKT09bnVsbD8wOmQuaGFzT3duUHJvcGVydHkoYSkpPyEhZGF0YS5ibG9iW2FdOmJ9ZnVuY3Rpb24gRShhKXt2YXIgYjtiPWI9PT12b2lkIDA/IiI6Yjt2YXIgYyxkO3JldHVybigoYz1kYXRhKT09bnVsbD8wOihkPWMuYmxvYik9PW51bGw/MDpkLmhhc093blByb3BlcnR5KGEpKT9TdHJpbmcoZGF0YS5ibG9iW2FdKTpifWZ1bmN0aW9uIEpmKGEpe3ZhciBiLGM7cmV0dXJuKChiPWRhdGEpPT1udWxsPzA6KGM9Yi5ibG9iKT09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP051bWJlcihkYXRhLmJsb2JbYV0pOjB9ZnVuY3Rpb24gS2YoYSl7dmFyIGI7Yj1iPT09dm9pZCAwP1tdOmI7dmFyIGMsZCxlPShjPWRhdGEpPT1udWxsP3ZvaWQgMDooZD1jLmJsb2IpPT1udWxsP3ZvaWQgMDpkW2FdO3JldHVybiBBcnJheS5pc0FycmF5KGUpP2U6Yn0KZnVuY3Rpb24gTGYoYSl7dmFyIGI7Yj1iPT09dm9pZCAwPyIiOmI7dmFyIGM9TWYoNDYpO3JldHVybiBjJiYoYz09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP1N0cmluZyhjW2FdKTpifWZ1bmN0aW9uIE5mKGEsYil7dmFyIGM9TWYoNDYpO3JldHVybiBjJiYoYz09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP051bWJlcihjW2FdKTpifWZ1bmN0aW9uIE1mKGEpe3ZhciBiLGM7cmV0dXJuKGI9ZGF0YSk9PW51bGw/dm9pZCAwOihjPWIuYmxvYik9PW51bGw/dm9pZCAwOmNbYV19O3ZhciBPZj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7ZD1FcnJvci5jYWxsKHRoaXMsYyk7dGhpcy5tZXNzYWdlPWQubWVzc2FnZTsic3RhY2siaW4gZCYmKHRoaXMuc3RhY2s9ZC5zdGFjayk7dGhpcy5wZXJtaXNzaW9uSWQ9YTt0aGlzLnBhcmFtZXRlcnM9Yjt0aGlzLm5hbWU9IlBlcm1pc3Npb25FcnJvciJ9O3dhKE9mLEVycm9yKTtPZi5wcm90b3R5cGUuZ2V0TWVzc2FnZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1lc3NhZ2V9O2Z1bmN0aW9uIFBmKGEsYil7aWYoQXJyYXkuaXNBcnJheShhKSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KGEsImNvbnRleHQiLHt2YWx1ZTp7bGluZTpiWzBdfX0pO2Zvcih2YXIgYz0xO2M8YS5sZW5ndGg7YysrKVBmKGFbY10sYltjXSl9fTtmdW5jdGlvbiBRZigpe3JldHVybiBmdW5jdGlvbihhLGIpe3ZhciBjO3ZhciBkPVJmO2EgaW5zdGFuY2VvZiBiYj8oYS5IPWQsYz1hKTpjPW5ldyBiYihhLGQpO3ZhciBlPWM7YiYmZS5LLnB1c2goYik7dGhyb3cgZTt9fWZ1bmN0aW9uIFJmKGEpe2lmKCFhLmxlbmd0aClyZXR1cm4gYTthLnB1c2goe2lkOiJtYWluIixsaW5lOjB9KTtmb3IodmFyIGI9YS5sZW5ndGgtMTtiPjA7Yi0tKUFiKGFbYl0uaWQpJiZhLnNwbGljZShiKyssMSk7Zm9yKHZhciBjPWEubGVuZ3RoLTE7Yz4wO2MtLSlhW2NdLmxpbmU9YVtjLTFdLmxpbmU7YS5zcGxpY2UoMCwxKTtyZXR1cm4gYX07dmFyIFNmPVJlZ0V4cCgiW14wLTlcXC4rLV0iLCJnIiksVGY9UmVnRXhwKCJbXjAtOVxcLCstXSIsImciKSxVZj1SZWdFeHAoIlteMC05Ky1dIiwiZyIpOwpmdW5jdGlvbiBWZihhLGIpe2lmKHR5cGVvZiBhPT09Im51bWJlciIpcmV0dXJuIGE7dmFyIGM9U3RyaW5nKGEpLGQ7aWYoYj09PSJBVVRPTUFUSUMiKXt2YXIgZT0oYy5tYXRjaCgvXC4vZyl8fFtdKS5sZW5ndGgsZj0oYy5tYXRjaCgvLC9nKXx8W10pLmxlbmd0aCxnPSJOT05FIjtpZihlPjAmJmY+MCl7dmFyIGg9Yy5sYXN0SW5kZXhPZigiLiIpPmMubGFzdEluZGV4T2YoIiwiKTtoJiZlPT09MT9nPSJQRVJJT0QiOmh8fGYhPT0xfHwoZz0iQ09NTUEiKX1lbHNlIGU9PT0xP2c9KGMuc3BsaXQoIi4iKVsxXS5tYXRjaCgvWzAtOV0vZyl8fFtdKS5sZW5ndGghPT0zPyJQRVJJT0QiOiJOT05FIjpmPT09MSYmKGc9KGMuc3BsaXQoIiwiKVsxXS5tYXRjaCgvWzAtOV0vZyl8fFtdKS5sZW5ndGghPT0zPyJDT01NQSI6Ik5PTkUiKTtkPWd9ZWxzZSBkPWI9PT0iQ09NTUEiPyJDT01NQSI6IlBFUklPRCI7dmFyIGwsbjtkPT09IlBFUklPRCI/KGw9Ii4iLG49U2YpOmQ9PT0iQ09NTUEiPyhsPSIsIiwKbj1UZik6KGw9IiIsbj1VZik7dmFyIHA9Yy5yZXBsYWNlKG4sIiIpO2lmKGwhPT0iIiYmcC5zcGxpdChsKS5sZW5ndGg+MilyZXR1cm4gYTt2YXIgcT1wLnJlcGxhY2UoLywvZywiLiIpO2lmKHE9PT0iIilyZXR1cm4gYTt2YXIgcj1OdW1iZXIocSk7cmV0dXJuIGlzTmFOKHIpP2E6cn07dmFyIFdmPVtdLFhmPXt9O2Z1bmN0aW9uIFlmKGEpe3JldHVybiBXZlthXT09PXZvaWQgMD8hMTpXZlthXX07dmFyIFpmPWZ1bmN0aW9uKCl7dGhpcy5IPXt9fSwkZj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7KGQ9YS5IKVtiXSE9bnVsbHx8KGRbYl09W10pO2EuSFtiXS5wdXNoKGZ1bmN0aW9uKCl7cmV0dXJuIGMuYXBwbHkobnVsbCx3KE9hLmFwcGx5KDAsYXJndW1lbnRzKSkpfSl9O2Z1bmN0aW9uIGFnKGEsYixjLGQpe2lmKGEpZm9yKHZhciBlPTA7ZTxhLmxlbmd0aDtlKyspe3ZhciBmPXZvaWQgMCxnPSJBIHBvbGljeSBmdW5jdGlvbiBkZW5pZWQgdGhlIHBlcm1pc3Npb24gcmVxdWVzdCI7dHJ5e2Y9YVtlXShiLGMsZCksZys9Ii4ifWNhdGNoKGgpe2c9dHlwZW9mIGg9PT0ic3RyaW5nIj9nKygiOiAiK2gpOmggaW5zdGFuY2VvZiBFcnJvcj9nKygiOiAiK2gubWVzc2FnZSk6ZysiLiJ9aWYoIWYpdGhyb3cgbmV3IE9mKGMsZCxnKTt9fQpmdW5jdGlvbiBiZyhhLGIpe3ZhciBjPWNnKGRnLkgsYixmdW5jdGlvbigpe3JldHVybnt9fSk7dHJ5e3JldHVybiBjKGEpLCEwfWNhdGNoKGQpe3JldHVybiExfX1mdW5jdGlvbiBjZyhhLGIsYyl7cmV0dXJuIGZ1bmN0aW9uKGQpe2lmKGQpe3ZhciBlPWEuSFtkXSxmPWEuSC5hbGw7aWYoZXx8Zil7dmFyIGc9Yy5hcHBseSh2b2lkIDAsW2RdLmNvbmNhdCh3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpKTthZyhlLGIsZCxnKTthZyhmLGIsZCxnKX19fX07dmFyIGdnPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzO3RoaXMuSz17fTt0aGlzLkg9bmV3IFpmO3ZhciBlPXt9LGY9e30sZz1jZyh0aGlzLkgsYSxmdW5jdGlvbihoKXtyZXR1cm4gaCYmZVtoXT9lW2hdLmFwcGx5KHZvaWQgMCxbaF0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpOnt9fSk7R2IoYixmdW5jdGlvbihoLGwpe2Z1bmN0aW9uIG4ocSl7dmFyIHI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2lmKCFwW3FdKXRocm93IGVnKHEse30sIlRoZSByZXF1ZXN0ZWQgYWRkaXRpb25hbCBwZXJtaXNzaW9uICIrcSsiIGlzIG5vdCBjb25maWd1cmVkLiIpO2cuYXBwbHkobnVsbCxbcV0uY29uY2F0KHcocikpKX12YXIgcD17fTtHYihsLGZ1bmN0aW9uKHEscil7dmFyIHQ9ZmcocSxyLGMpO3BbcV09dC5hc3NlcnQ7ZVtxXXx8KGVbcV09dC5hYSk7dC5PbiYmIWZbcV0mJihmW3FdPXQuT24pfSk7ZC5LW2hdPWZ1bmN0aW9uKHEscil7dmFyIHQ9cFtxXTtpZighdCl0aHJvdyBlZyhxLAp7fSwiVGhlIHJlcXVlc3RlZCBwZXJtaXNzaW9uICIrcSsiIGlzIG5vdCBjb25maWd1cmVkLiIpO3ZhciB1PUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKTt0LmFwcGx5KHZvaWQgMCx1KTtnLmFwcGx5KHZvaWQgMCx1KTt2YXIgdj1mW3FdO3YmJnYuYXBwbHkobnVsbCxbbl0uY29uY2F0KHcodS5zbGljZSgxKSkpKX19KX0saGc9ZnVuY3Rpb24oYSl7cmV0dXJuIGRnLktbYV18fGZ1bmN0aW9uKCl7fX07CmZ1bmN0aW9uIGZnKGEsYixjKXt0cnl7dmFyIGQ9Y1siX18iK2FdO2lmKCFkKXRocm93IEVycm9yKCJObyBmdW5jdGlvbiBmb3VuZCBmb3IgcGVybWlzc2lvbjogIithKyIuIik7dmFyIGU9SGYoYSxiKTtlLnZ0cF9wZXJtaXNzaW9uTmFtZT1hO2UudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcj1lZztkZWxldGUgZVtHZi5ZYl07cmV0dXJuIGQoZSl9Y2F0Y2goZil7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihnKXt0aHJvdyBuZXcgT2YoZyx7fSwiUGVybWlzc2lvbiAiK2crIiBpcyB1bmtub3duLiIpO30sYWE6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgT2YoYSx7fSwiUGVybWlzc2lvbiAiK2ErIiBpcyB1bmtub3duLiIpO319fX1mdW5jdGlvbiBlZyhhLGIsYyl7cmV0dXJuIG5ldyBPZihhLGIsYyl9O3ZhciBpZz1FKDUpLGpnPUUoMjApLGtnPUUoMSksbGc9ITE7dmFyIG1nPXt9O21nLlBvPUlmKDI5KTttZy5Lcj1JZigyOCk7ZnVuY3Rpb24gbmcoYSl7dmFyIGI9MSxjLGQsZTtpZihhKWZvcihiPTAsZD1hLmxlbmd0aC0xO2Q+PTA7ZC0tKWU9YS5jaGFyQ29kZUF0KGQpLGI9KGI8PDYmMjY4NDM1NDU1KStlKyhlPDwxNCksYz1iJjI2NjMzODMwNCxiPWMhPT0wP2JeYz4+MjE6YjtyZXR1cm4gYn07dmFyIG9nPWZ1bmN0aW9uKGEpe3RoaXMuY2FjaGU9YX07b2cucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXt2YXIgYj1uZyhhKSxjPXRoaXMuY2FjaGUuZ2V0KGIpO2lmKCFjKXJldHVybntwcm9taXNlOnZvaWQgMCxLajowfTtpZihEYXRlLm5vdygpPj1jLnRpbWVzdGFtcCs5RTUpcmV0dXJuIHRoaXMuY2FjaGUuZGVsZXRlKGIpLHtwcm9taXNlOnZvaWQgMCxLajozfTt2YXIgZD1jLnJlc29sdmVkVmFsdWU/MjoxO3JldHVybntwcm9taXNlOmMucmVzb2x2ZWRWYWx1ZT9Qcm9taXNlLnJlc29sdmUoYy5yZXNvbHZlZFZhbHVlKTpjLnByb21pc2UsS2o6ZH19O29nLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz17cHJvbWlzZTpiLHJlc29sdmVkVmFsdWU6dm9pZCAwLHRpbWVzdGFtcDpEYXRlLm5vdygpfTt0aGlzLmNhY2hlLnNldChuZyhhKSxjKTtiLnRoZW4oZnVuY3Rpb24oZCl7Yy5yZXNvbHZlZFZhbHVlPWR9KX07ZnVuY3Rpb24gcGcoYSl7c3dpdGNoKGEpe2Nhc2UgMDpicmVhaztjYXNlIDk6cmV0dXJuImU0IjtjYXNlIDY6cmV0dXJuImU1IjtjYXNlIDE0OnJldHVybiJlNiI7ZGVmYXVsdDpyZXR1cm4iZTcifX07dmFyIEY9e0Q6e1hhOiJhZF9wZXJzb25hbGl6YXRpb24iLGthOiJhZF9zdG9yYWdlIixtYToiYWRfdXNlcl9kYXRhIixyYToiYW5hbHl0aWNzX3N0b3JhZ2UiLG5jOiJyZWdpb24iLHNhOiJjb25zZW50X3VwZGF0ZWQiLFlnOiJ3YWl0X2Zvcl91cGRhdGUiLGVoOiJlbmRwb2ludF90eXBlIixxcDoiYXBwX3JlbW92ZSIscnA6ImFwcF9zdG9yZV9yZWZ1bmQiLHRwOiJhcHBfc3RvcmVfc3Vic2NyaXB0aW9uX2NhbmNlbCIsdXA6ImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fY29udmVydCIsdnA6ImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fcmVuZXciLHdwOiJjb25zZW50X3VwZGF0ZSIseHA6ImNvbnZlcnNpb24iLHZsOiJhZGRfcGF5bWVudF9pbmZvIix3bDoiYWRkX3NoaXBwaW5nX2luZm8iLHhlOiJhZGRfdG9fY2FydCIseWU6InJlbW92ZV9mcm9tX2NhcnQiLHhsOiJ2aWV3X2NhcnQiLEFkOiJiZWdpbl9jaGVja291dCIsZXU6ImdlbmVyYXRlX2xlYWQiLHplOiJzZWxlY3RfaXRlbSIsb2M6InZpZXdfaXRlbV9saXN0IiwKUWM6InNlbGVjdF9wcm9tb3Rpb24iLHFjOiJ2aWV3X3Byb21vdGlvbiIsSWI6InB1cmNoYXNlIixBZToicmVmdW5kIixyYzoidmlld19pdGVtIix5bDoiYWRkX3RvX3dpc2hsaXN0Iix5cDoiZXhjZXB0aW9uIix6cDoiZmlyc3Rfb3BlbiIsQXA6ImZpcnN0X3Zpc2l0Iix3YToiZ3RhZy5jb25maWciLEpiOiJndGFnLmdldCIsQnA6ImluX2FwcF9wdXJjaGFzZSIsc2M6InBhZ2VfdmlldyIsQ3A6InNjcmVlbl92aWV3IixEcDoic2Vzc2lvbl9zdGFydCIsRXA6InNvdXJjZV91cGRhdGUiLEZwOiJ0aW1pbmdfY29tcGxldGUiLEdwOiJ0cmFja19zb2NpYWwiLHlmOiJ1c2VyX2VuZ2FnZW1lbnQiLEhwOiJ1c2VyX2lkX3VwZGF0ZSIsZmg6ImJyYWlkX2xpbmtfZGVjb3JhdGlvbl9zb3VyY2UiLGdoOiJicmFpZF9zdG9yYWdlX3NvdXJjZSIsQmQ6ImdjbGlkX2xpbmtfZGVjb3JhdGlvbl9zb3VyY2UiLENkOiJnY2xpZF9zdG9yYWdlX3NvdXJjZSIsU2I6ImdjbGdiIixsYjoiZ2NsaWQiLHpsOiJnY2xpZF9sZW4iLApCZToiZ2NsZ3MiLENlOiJnY2xscCIsRGU6ImdjbHN0IixtYjoiYWRzX2RhdGFfcmVkYWN0aW9uIix6ZjoiZ2FkX3NvdXJjZSIsQWY6ImdhZF9zb3VyY2Vfc3JjIixEZDoiZ2NsaWRfdXJsIixBbDoiZ2Nsc3JjIixCZjoiZ2JyYWlkIixFZToid2JyYWlkIixSYzoiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uX3NpZ25hbHMiLHJpOiJhbGxvd19jdXN0b21fc2NyaXB0cyIsaGg6ImFsbG93X2Rpc3BsYXlfZmVhdHVyZXMiLHNpOiJhbGxvd19lbmhhbmNlZF9jb252ZXJzaW9ucyIsU2M6ImFsbG93X2dvb2dsZV9zaWduYWxzIix1aToiYWxsb3dfaW50ZXJlc3RfZ3JvdXBzIixJcDoiYXBwX2lkIixKcDoiYXBwX2luc3RhbGxlcl9pZCIsS3A6ImFwcF9uYW1lIixMcDoiYXBwX3ZlcnNpb24iLEVkOiJhdWlkIixmdToiYXV0b19kZXRlY3Rpb25fZW5hYmxlZCIsQmw6ImF1dG9fZXZlbnQiLENsOiJhd19yZW1hcmtldGluZyIsaWg6ImF3X3JlbWFya2V0aW5nX29ubHkiLENmOiJkaXNjb3VudCIsRGY6ImF3X2ZlZWRfY291bnRyeSIsCkVmOiJhd19mZWVkX2xhbmd1YWdlIixIYToiaXRlbXMiLEZmOiJhd19tZXJjaGFudF9pZCIsd2k6ImF3X2Jhc2tldF90eXBlIixHZjoiY2FtcGFpZ25fY29udGVudCIsSGY6ImNhbXBhaWduX2lkIixJZjoiY2FtcGFpZ25fbWVkaXVtIixKZjoiY2FtcGFpZ25fbmFtZSIsS2Y6ImNhbXBhaWduIixMZjoiY2FtcGFpZ25fc291cmNlIixNZjoiY2FtcGFpZ25fdGVybSIsS2I6ImNsaWVudF9pZCIsRGw6InJuZCIseGk6ImNvbnNlbnRfdXBkYXRlX3R5cGUiLE1wOiJjb250ZW50X2dyb3VwIixOcDoiY29udGVudF90eXBlIixGZDoiY29udmVyc2lvbl9jb29raWVfcHJlZml4Iix5aToiY29udmVyc2lvbl9pZCIsdWM6ImNvbnZlcnNpb25fbGlua2VyIixIZDoiY29udmVyc2lvbl9saW5rZXJfZGlzYWJsZWQiLEZlOiJjb252ZXJzaW9uX2FwaSIsemk6Il8mcmNiIixqaDoiY29va2llX2RlcHJlY2F0aW9uIixMYjoiY29va2llX2RvbWFpbiIsQ2I6ImNvb2tpZV9leHBpcmVzIixUYjoiY29va2llX2ZsYWdzIiwKSWQ6ImNvb2tpZV9uYW1lIix2YzoiY29va2llX3BhdGgiLG5iOiJjb29raWVfcHJlZml4IixKZDoiY29va2llX3VwZGF0ZSIsVGM6ImNvdW50cnkiLGViOiJjdXJyZW5jeSIsR2U6ImN1c3RvbWVyX2xpZmV0aW1lX3ZhbHVlIixraDoiY3VzdG9tZXJfdHlwZSIsSGU6ImN1c3RvbV9tYXAiLEFpOiJnY2xkY19saW5rX2RlY29yYXRpb25fc291cmNlIixCaToiZ2NsZGNfc3RvcmFnZV9zb3VyY2UiLE5mOiJnY2xkYyIsS2Q6ImRjbGlkIixFbDoiZGVidWdfbW9kZSIsT2E6ImRldmVsb3Blcl9pZCIsT3A6ImRpc2FibGVfbWVyY2hhbnRfcmVwb3J0ZWRfcHVyY2hhc2VzIixVYzoiZGNfY3VzdG9tX3BhcmFtcyIsUHA6ImRjX25hdHVyYWxfc2VhcmNoIixRcDoiZHluYW1pY19ldmVudF9zZXR0aW5ncyIsRmw6ImFmZmlsaWF0aW9uIixtaDoiY2hlY2tvdXRfb3B0aW9uIixDaToiY2hlY2tvdXRfc3RlcCIsR2w6ImNvdXBvbiIsT2Y6Iml0ZW1fbGlzdF9uYW1lIixEaToibGlzdF9uYW1lIixScDoicHJvbW90aW9ucyIsCkxkOiJzaGlwcGluZyIsSGw6InRheCIsbmg6ImVuZ2FnZW1lbnRfdGltZV9tc2VjIixvaDoiZW5oYW5jZWRfY2xpZW50X2lkIixTcDoiZW5oYW5jZWRfY29udmVyc2lvbnMiLGd1OiJlbmhhbmNlZF9jb252ZXJzaW9uc19hdXRvbWF0aWNfc2V0dGluZ3MiLEllOiJlc3RpbWF0ZWRfZGVsaXZlcnlfZGF0ZSIsUGY6ImV2ZW50X2NhbGxiYWNrIixUcDoiZXZlbnRfY2F0ZWdvcnkiLFZjOiJldmVudF9kZXZlbG9wZXJfaWRfc3RyaW5nIixNZDoiZXZlbnRfaWQiLEVpOiJfZXZlbnRfam9pbl9pZCIsVXA6ImV2ZW50X2xhYmVsIixVYjoiZXZlbnQiLElsOiJfJmFlIixGaToiZXZlbnRfc2V0dGluZ3MiLHBoOiJldmVudF90aW1lb3V0IixWcDoiZGVzY3JpcHRpb24iLFdwOiJmYXRhbCIsWHA6ImV4cGVyaW1lbnRzIixOZDoiZXh0X2NsaWVudF9pZCIsR2k6ImZpcmViYXNlX2lkIixRZjoiZmlyc3RfcGFydHlfY29sbGVjdGlvbiIsUmY6Il94XzIwIixWYjoiX3hfMTkiLFlwOiJmbGlnaHRfZXJyb3JfY29kZSIsClpwOiJmbGlnaHRfZXJyb3JfbWVzc2FnZSIsSGk6ImZsX2FjdGl2aXR5X2NhdGVnb3J5IixJaToiZmxfYWN0aXZpdHlfZ3JvdXAiLHFoOiJmbF9hZHZlcnRpc2VyX2lkIixKaToibWF0Y2hfaWQiLEpsOiJmbF9yYW5kb21fbnVtYmVyIixLbDoidHJhbiIsTGw6InUiLHJoOiJnYWNfZ2NsaWQiLEplOiJnYWNfd2JyYWlkIixNbDoiZ2FjX3dicmFpZF9tdWx0aXBsZV9jb252ZXJzaW9ucyIsYXE6ImdhX3Jlc3RyaWN0X2RvbWFpbiIsTmw6ImdhX3RlbXBfY2xpZW50X2lkIixicToiZ2FfdGVtcF9lY2lkIixLZToiZ2Rwcl9hcHBsaWVzIixzaDoiX2d0X21ldGFkYXRhIixPbDoiZ2VvX2dyYW51bGFyaXR5IixTZjoidmFsdWVfY2FsbGJhY2siLFRmOiJ2YWx1ZV9rZXkiLFRhOiJnb29nbGVfYW5hbHlzaXNfcGFyYW1zIixMZToiX2dvb2dsZV9uZyIsY3E6Il9vbm8iLFVmOiJnb29nbGVfc2lnbmFscyIsZnE6Imdvb2dsZV90bGQiLHRoOiJncHBfc2lkIix1aDoiZ3BwX3N0cmluZyIsT2Q6Imdyb3VwcyIsClBsOiJnc2FfZXhwZXJpbWVudF9pZCIsVmY6Imd0YWdfZXZlbnRfZmVhdHVyZV91c2FnZSIsUWw6Imd0bV91cCIsTWU6ImlmcmFtZV9zdGF0ZSIsV2Y6Imlnbm9yZV9yZWZlcnJlciIsUmw6ImludGVybmFsX3RyYWZmaWNfcmVzdWx0cyIsU2w6Il9pc19mcG0iLFljOiJpc19sZWdhY3lfY29udmVydGVkIixaYzoiaXNfbGVnYWN5X2xvYWRlZCIsS2k6ImlzX3Bhc3N0aHJvdWdoIixQZDoiX2xwcyIsdGI6Imxhbmd1YWdlIixMaToibGVnYWN5X2RldmVsb3Blcl9pZF9zdHJpbmciLERiOiJsaW5rZXIiLFhmOiJhY2NlcHRfaW5jb21pbmciLHdjOiJkZWNvcmF0ZV9mb3JtcyIsQWE6ImRvbWFpbnMiLGFkOiJ1cmxfcG9zaXRpb24iLFFkOiJtZXJjaGFudF9mZWVkX2xhYmVsIixSZDoibWVyY2hhbnRfZmVlZF9sYW5ndWFnZSIsU2Q6Im1lcmNoYW50X2lkIixUbDoibWV0aG9kIixncToibmFtZSIsVWw6Im5hdmlnYXRpb25fdHlwZSIsTmU6Im5ld19jdXN0b21lciIsTWk6Im5vbl9pbnRlcmFjdGlvbiIsCmhxOiJvcHRpbWl6ZV9pZCIsVmw6InBhZ2VfaG9zdG5hbWUiLFlmOiJwYWdlX3BhdGgiLFVhOiJwYWdlX3JlZmVycmVyIixNYjoicGFnZV90aXRsZSIsaXE6InBhc3NlbmdlcnMiLFdsOiJwaG9uZV9jb252ZXJzaW9uX2NhbGxiYWNrIixqcToicGhvbmVfY29udmVyc2lvbl9jb3VudHJ5X2NvZGUiLFhsOiJwaG9uZV9jb252ZXJzaW9uX2Nzc19jbGFzcyIsa3E6InBob25lX2NvbnZlcnNpb25faWRzIixZbDoicGhvbmVfY29udmVyc2lvbl9udW1iZXIiLFpsOiJwaG9uZV9jb252ZXJzaW9uX29wdGlvbnMiLGxxOiJfcGxhdGludW1fcmVxdWVzdF9zdGF0dXMiLG1xOiJfcHJvdGVjdGVkX2F1ZGllbmNlX2VuYWJsZWQiLHdoOiJxdWFudGl0eSIseGg6InJlZGFjdF9kZXZpY2VfaW5mbyIsYW06InJlZmVycmFsX2V4Y2x1c2lvbl9kZWZpbml0aW9uIixodToiX3JlcXVlc3Rfc3RhcnRfdGltZSIsV2I6InJlc3RyaWN0ZWRfZGF0YV9wcm9jZXNzaW5nIixucToicmV0b2tlbiIsb3E6InNhbXBsZV9yYXRlIiwKTmk6InNjcmVlbl9uYW1lIixiZDoic2NyZWVuX3Jlc29sdXRpb24iLGJtOiJfc2NyaXB0X3NvdXJjZSIscHE6InNlYXJjaF90ZXJtIixUZDoic2VuZF9wYWdlX3ZpZXciLFhiOiJzZW5kX3RvIixPaToic2VydmVyX2NvbnRhaW5lcl8zcF9lbnJpY2htZW50IixkZDoic2VydmVyX2NvbnRhaW5lcl91cmwiLHFxOiJzZXNzaW9uX2F0dHJpYnV0ZXNfZW5jb2RlZCIseWg6InNlc3Npb25fZHVyYXRpb24iLHpoOiJzZXNzaW9uX2VuZ2FnZWQiLFBpOiJzZXNzaW9uX2VuZ2FnZWRfdGltZSIseGM6InNlc3Npb25faWQiLEFoOiJzZXNzaW9uX251bWJlciIsWmY6Il9zaGFyZWRfdXNlcl9pZCIsVWQ6ImRlbGl2ZXJ5X3Bvc3RhbF9jb2RlIixpdToiX3RhZ19maXJpbmdfZGVsYXkiLGp1OiJfdGFnX2ZpcmluZ190aW1lIixrdToidGVtcG9yYXJ5X2NsaWVudF9pZCIsUWk6InRlc3Rvbmx5IixycToiX3RpbWV6b25lIixQZToidG9wbW9zdF91cmwiLFFlOiJ0cmFja2luZ19pZCIsUmk6InRyYWZmaWNfdHlwZSIsClBhOiJ0cmFuc2FjdGlvbl9pZCIsZG06InRyYW5zYWN0aW9uX2lkX3NvdXJjZSIseWM6InRyYW5zcG9ydF91cmwiLHNxOiJ0cmlwX3R5cGUiLFZkOiJ1cGRhdGUiLHpjOiJ1cmxfcGFzc3Rocm91Z2giLGZtOiJ1cHRncyIsY2c6Il91c2VyX2FnZW50X2FyY2hpdGVjdHVyZSIsZGc6Il91c2VyX2FnZW50X2JpdG5lc3MiLGVnOiJfdXNlcl9hZ2VudF9mdWxsX3ZlcnNpb25fbGlzdCIsZmc6Il91c2VyX2FnZW50X21vYmlsZSIsZ2c6Il91c2VyX2FnZW50X21vZGVsIixoZzoiX3VzZXJfYWdlbnRfcGxhdGZvcm0iLGlnOiJfdXNlcl9hZ2VudF9wbGF0Zm9ybV92ZXJzaW9uIixqZzoiX3VzZXJfYWdlbnRfd293NjQiLEFjOiJ1c2VyX2RhdGEiLGdtOiJ1c2VyX2RhdGFfYXV0b19sYXRlbmN5IixobToidXNlcl9kYXRhX2F1dG9fbWV0YSIsaW06InVzZXJfZGF0YV9hdXRvX211bHRpIixqbToidXNlcl9kYXRhX2F1dG9fc2VsZWN0b3JzIixrbToidXNlcl9kYXRhX2F1dG9fc3RhdHVzIixCYzoidXNlcl9kYXRhX21vZGUiLApsbToidXNlcl9kYXRhX3NldHRpbmdzIixmYjoidXNlcl9pZCIsV2Q6InVzZXJfcHJvcGVydGllcyIsb206Il91c2VyX3JlZ2lvbiIsa2c6InVzX3ByaXZhY3lfc3RyaW5nIixRYToidmFsdWUiLHFtOiJ3YnJhaWRfbXVsdGlwbGVfY29udmVyc2lvbnMiLGVkOiJfZnBtX3BhcmFtZXRlcnMiLFdpOiJfaG9zdF9uYW1lIixWbToiX2luX3BhZ2VfY29tbWFuZCIsWWk6Il9pcF9vdmVycmlkZSIsWm06Il9pc19wYXNzdGhyb3VnaF9jaWQiLEpoOiJfbWVhc3VyZW1lbnRfdHlwZSIsZGU6Im5vbl9wZXJzb25hbGl6ZWRfYWRzIixvajoiX3NzdF9wYXJhbWV0ZXJzIixZcToic2d0bV9nZW9fdXNlcl9jb3VudHJ5IixHZDoiY29udmVyc2lvbl9sYWJlbCIsemE6InBhZ2VfbG9jYXRpb24iLFdjOiJfZXh0cmFjdGVkX2RhdGEiLFhjOiJnbG9iYWxfZGV2ZWxvcGVyX2lkX3N0cmluZyIsT2U6InRjX3ByaXZhY3lfc3RyaW5nIn19O3ZhciBIPXtKOntTbzoiYWJvcnRfd2l0aG91dF9mYWlsIixraToiYWNjZXB0X2J5X2RlZmF1bHQiLEJrOiJhZGRfdGFnX3RpbWluZyIsRGs6ImFkc19jb25zZW50X2dyYW50ZWQiLHZkOiJhZHNfZXZlbnRfcGFnZV92aWV3Iix3ZDoiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uIixRdDoiYXV0b19ldmVudCIsS2s6ImJhdGNoX29uX25hdmlnYXRpb24iLFhnOiJiaXNjb3R0aV9qb2luX2lkIixQazoiY2xpZW50X2lkX3NvdXJjZSIsdWY6ImNvbnNlbnRfZXZlbnRfaWQiLHZmOiJjb25zZW50X3ByaW9yaXR5X2lkIixTdDoiY29uc2VudF9zdGF0ZSIsc2E6ImNvbnNlbnRfdXBkYXRlZCIsd2Y6ImNvbnZlcnNpb25fbGlua2VyX2VuYWJsZWQiLFR0OiJjb252ZXJzaW9uX21hcmtpbmdfY2FsbGVkIixHYToiY29va2llX29wdGlvbnMiLG9sOiJkY19yYW5kb20iLFp0OiJkZWR1cGVfaWQiLFBjOiJlbV9ldmVudCIsYnU6ImVuZHBvaW50X2Zvcl9kZWJ1ZyIsdGw6ImVuaGFuY2VkX2NsaWVudF9pZF9zb3VyY2UiLApwcDoiZW5oYW5jZWRfbWF0Y2hfcmVzdWx0IixybToiZXVpZF9sb2dnZWRfaW5fc3RhdGUiLGxnOiJldWlkX21vZGVfZW5hYmxlZCIsdHE6ImV2ZW50X3Byb3ZlbmFuY2UiLG11OiJldmVudF9zb3VyY2UiLEViOiJldmVudF9zdGFydF90aW1lc3RhbXBfbXMiLHdtOiJldmVudF91c2FnZSIsQ2g6ImV4dHJhX3RhZ19leHBlcmltZW50X2lkcyIscHU6ImFkZF9wYXJhbWV0ZXIiLFVpOiJjb3VudGluZ19tZXRob2QiLERoOiJzZW5kX2FzX2lmcmFtZSIscXU6InBhcmFtZXRlcl9vcmRlciIsRWg6InBhcnNlZF90YXJnZXQiLHN1OiJmb3JtX2V2ZW50X2NhbmNlbGVkIixBcToiZ2E0X2NvbGxlY3Rpb25fc3ViZG9tYWluIixWaToiZ2E0X3JlcXVlc3RfZmxhZ3MiLE5tOiJnYnJhaWRfY29va2llX21hcmtlZCIsUW06Imd0bV9leHRyYWN0ZWRfZGF0YSIsQ2M6ImhhbmRsZV9pbnRlcm5hbGx5Iix1dToiaGFzX2dhX2NvbnZlcnNpb25fY29uc2VudHMiLGRhOiJoaXRfdHlwZSIsRGM6ImhpdF90eXBlX292ZXJyaWRlIiwKSHE6Imlnbm9yZV9kdXBlX2NvbmZpZyIsT3U6ImlzX2NvbmZpZ19jb21tYW5kIixHaDoiaXNfY29uc2VudF91cGRhdGUiLG1nOiJpc19jb252ZXJzaW9uIixXbToiaXNfZWNvbW1lcmNlIixYbToiaXNfZWNfY21fc3BsaXQiLGFlOiJpc19leHRlcm5hbF9ldmVudCIsbmc6ImlzX2ZpcnN0X3Zpc2l0IixZbToiaXNfZmlyc3RfdmlzaXRfY29udmVyc2lvbiIsWmk6ImlzX2ZsX2ZhbGxiYWNrX2NvbnZlcnNpb25fZmxvd19hbGxvd2VkIixmZDoiaXNfZnBtX2VuY3J5cHRpb24iLGFqOiJpc19mcG1fc3BsaXQiLG9iOiJpc19nY3BfYnJvd3NlciIsYmo6ImlzX2dvb2dsZV9tZWFzdXJlbWVudF9hbGxvd2VkIixjajoiaXNfZ29vZ2xlX3NpZ25hbHNfZW5hYmxlZCIsYmU6ImlzX21lcmNoYW50X2NlbnRlciIsSGg6ImlzX25ld190b19zaXRlIixFYzoiaXNfcGVyc29uYWxpemF0aW9uIixkajoiaXNfc2VydmVyX3NpZGVfZGVzdGluYXRpb24iLFRlOiJpc19zZXNzaW9uX3N0YXJ0IixibjoiaXNfc2Vzc2lvbl9zdGFydF9jb252ZXJzaW9uIiwKUHU6ImlzX3NndG1fZ2FfYWRzX2NvbnZlcnNpb25fc3R1ZHlfY29udHJvbF9ncm91cCIsUXU6ImlzX3NndG1fcHJlaGl0IixkbjoiaXNfc2d0bV9zZXJ2aWNlX3dvcmtlciIsSWg6ImlzX3NwbGl0X2NvbnZlcnNpb24iLElxOiJpc19zeW4iLEZjOiJpc190ZXN0X2V2ZW50IixvZzoiam9pbl9pZCIsZWo6ImpvaW5fZWxhcHNlZCIscGc6ImpvaW5fdGltZXJfc2VjIixnbjoibG9jYWxfc3RvcmFnZV9hd19jb252ZXJzaW9uX2NvdW50ZXJzIixXZToidHVubmVsX3VwZGF0ZWQiLFV1OiJwcmVoaXRfZm9yX3JldHJ5IixXdToicHJvbWlzZXMiLFh1OiJyZWNvcmRfYXdfbGF0ZW5jeSIsWGU6InJlZGFjdF9hZHNfZGF0YSIsWWU6InJlZGFjdF9jbGlja19pZHMiLHBuOiJyZW1hcmtldGluZ19vbmx5Iixsajoic2VuZF9jY21fcGFyYWxsZWxfcGluZyIsaGQ6InNlbmRfZG91YmxlY2xpY2tfam9pbiIsTWg6InNlbmRfZnBtX2dlb19qb2luIixOaDoic2VuZF9mcG1fZ29vZ2xlX2pvaW4iLFp1OiJzZW5kX2NjbV9wYXJhbGxlbF90ZXN0X3BpbmciLApybjoic2VuZF9nb29nbGVfbWVhc3VyZW1lbnQiLHJnOiJzZW5kX3RsZF9qb2luIixzZzoic2VuZF90b19kZXN0aW5hdGlvbnMiLG1qOiJzZW5kX3RvX3RhcmdldHMiLHNuOiJzZW5kX3VzZXJfZGF0YV9oaXQiLHBqOiJzZXJ2aWNlX3dvcmtlcl9jb250ZXh0IixOYjoic291cmNlX2Nhbm9uaWNhbF9pZCIsSmE6InNwZWN1bGF0aXZlIix5bjoic3BlY3VsYXRpdmVfaW5fbWVzc2FnZSIsQW46InN1cHByZXNzX3NjcmlwdF9sb2FkIixCbjoic3luX29yX21vZCIsemo6InRyYW5zaWVudF9lY3NpZCIsdGc6InRyYW5zbWlzc2lvbl90eXBlIixZYToidXNlcl9kYXRhIixndjoidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljIixodjoidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljX2dldHRlciIsR246InVzZXJfZGF0YV9mcm9tX2NvZGUiLGlyOiJ1c2VyX2RhdGFfZnJvbV9tYW51YWwiLGp2OiJ1c2VyX2RhdGFfbW9kZSIsdWc6InVzZXJfaWRfdXBkYXRlZCJ9fTsKdmFyIHRnPWZ1bmN0aW9uKGEpe3ZhciBiPXt9LGM9MDtHYihhLGZ1bmN0aW9uKGUsZil7aWYoZiE9bnVsbCl7dmFyIGc9KCIiK2YpLnJlcGxhY2UoL34vZywifn4iKTtpZihxZy5oYXNPd25Qcm9wZXJ0eShlKSliW3FnW2VdXT1nO2Vsc2UgaWYocmcuaGFzT3duUHJvcGVydHkoZSkpe3ZhciBoPXJnW2VdO2IuaGFzT3duUHJvcGVydHkoaCl8fChiW2hdPWcpfWVsc2UgaWYoZT09PSJjYXRlZ29yeSIpZm9yKHZhciBsPWcuc3BsaXQoIi8iLDUpLG49MDtuPGwubGVuZ3RoO24rKyl7dmFyIHA9YixxPXNnW25dLHI9bFtuXTtwLmhhc093blByb3BlcnR5KHEpfHwocFtxXT1yKX1lbHNlIGlmKGM8Mjcpe3ZhciB0PVN0cmluZy5mcm9tQ2hhckNvZGUoYzwxMD80OCtjOjY1K2MtMTApO2JbImsiK3RdPSgiIitTdHJpbmcoZSkpLnJlcGxhY2UoL34vZywifn4iKTtiWyJ2Iit0XT1nO2MrK319fSk7dmFyIGQ9W107R2IoYixmdW5jdGlvbihlLGYpe2QucHVzaCgiIitlK2YpfSk7cmV0dXJuIGQuam9pbigifiIpfSwKcWc9e2l0ZW1faWQ6ImlkIixpdGVtX25hbWU6Im5tIixpdGVtX2JyYW5kOiJiciIsaXRlbV9jYXRlZ29yeToiY2EiLGl0ZW1fY2F0ZWdvcnkyOiJjMiIsaXRlbV9jYXRlZ29yeTM6ImMzIixpdGVtX2NhdGVnb3J5NDoiYzQiLGl0ZW1fY2F0ZWdvcnk1OiJjNSIsaXRlbV92YXJpYW50OiJ2YSIscHJpY2U6InByIixxdWFudGl0eToicXQiLGNvdXBvbjoiY3AiLGl0ZW1fbGlzdF9uYW1lOiJsbiIsaW5kZXg6ImxwIixpdGVtX2xpc3RfaWQ6ImxpIixkaXNjb3VudDoiZHMiLGFmZmlsaWF0aW9uOiJhZiIscHJvbW90aW9uX2lkOiJwaSIscHJvbW90aW9uX25hbWU6InBuIixjcmVhdGl2ZV9uYW1lOiJjbiIsY3JlYXRpdmVfc2xvdDoiY3MiLGxvY2F0aW9uX2lkOiJsbyJ9LHJnPXtpZDoiaWQiLG5hbWU6Im5tIixicmFuZDoiYnIiLHZhcmlhbnQ6InZhIixsaXN0X25hbWU6ImxuIixsaXN0X3Bvc2l0aW9uOiJscCIsbGlzdDoibG4iLHBvc2l0aW9uOiJscCIsY3JlYXRpdmU6ImNuIn0sc2c9WyJjYSIsCiJjMiIsImMzIiwiYzQiLCJjNSJdO3ZhciB1Zz1mdW5jdGlvbihhKXt2YXIgYj1bXTtHYihhLGZ1bmN0aW9uKGMsZCl7ZCE9bnVsbCYmYi5wdXNoKGVuY29kZVVSSUNvbXBvbmVudChjKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhkKSkpfSk7cmV0dXJuIGIuam9pbigiJiIpfSx2Zz1mdW5jdGlvbihhLGIsYyxkLGUsZixnLGgpe3RoaXMuYmFzZVVybD1iO3RoaXMuZW5kcG9pbnQ9Yzt0aGlzLmRlc3RpbmF0aW9uSWQ9Zjt0aGlzLmV2ZW50SWQ9Zzt0aGlzLnByaW9yaXR5SWQ9aDt0aGlzLkJhPWEuQmE7dGhpcy52ZT1hLnZlO3RoaXMuTGo9YS5Majt0aGlzLk49ZDt0aGlzLks9dWcoYS5CYSk7dGhpcy5IPXVnKGEuTGopO3RoaXMuUj10aGlzLkgubGVuZ3RoO2lmKGUmJnRoaXMuUj4xNjM4NCl0aHJvdyBFcnJvcigiRVZFTlRfVE9PX0xBUkdFIik7fTsKdmFyIHdnPWZ1bmN0aW9uKCl7dGhpcy5ldmVudHM9W107dGhpcy5IPSIiO3RoaXMuQmE9e307dGhpcy5iYXNlVXJsPSIiO3RoaXMuTj0wO3RoaXMuSz0xO3RoaXMuZW5kcG9pbnQ9MH07d2cucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5SKGEpPyh0aGlzLmV2ZW50cy5wdXNoKGEpLHRoaXMuSD1hLkssdGhpcy5CYT1hLkJhLHRoaXMuYmFzZVVybD1hLmJhc2VVcmwsdGhpcy5OKz1hLlIsdGhpcy5LPWEuTix0aGlzLmVuZHBvaW50PWEuZW5kcG9pbnQsdGhpcy5kZXN0aW5hdGlvbklkPWEuZGVzdGluYXRpb25JZCx0aGlzLlo9YS5ldmVudElkLHRoaXMuZmE9YS5wcmlvcml0eUlkLCEwKTohMX07d2cucHJvdG90eXBlLlI9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZXZlbnRzLmxlbmd0aD90aGlzLmV2ZW50cy5sZW5ndGg+PTIwfHxhLlIrdGhpcy5OPj0xNjM4ND8hMTp0aGlzLmJhc2VVcmw9PT1hLmJhc2VVcmwmJnRoaXMuSz09PWEuTiYmdGhpcy5qYShhKTohMH07CndnLnByb3RvdHlwZS5qYT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5IPT09YS5LfTt2YXIgSj17VTp7a3A6MSxtcDoyLEVuOjMsbm46NCxxbDo1LHJsOjYsRXE6NyxucDo4LERxOjksanA6MTAsaHA6MTEseG46MTIsdm46MTMsTms6MTQsVW86MTUsV286MTYsaG46MTcsc2w6MTgsZm46MTksbHA6MjAsUHE6MjEsYXA6MjIsVm86MjMsWG86MjQsbmw6MjUsTGs6MjYsZXI6MjcsSm06MjgsVW06MjksVG06MzAsU206MzEsTW06MzIsS206MzMsTG06MzQsR206MzUsRm06MzYsSG06MzcsSW06MzgsQnE6MzksQ3E6NDAsVXE6NDF9fTtKLlVbSi5VLmtwXT0iQ1JFQVRFX0VWRU5UX1NPVVJDRSI7Si5VW0ouVS5tcF09IkVESVRfRVZFTlQiO0ouVVtKLlUuRW5dPSJUUkFGRklDX1RZUEUiO0ouVVtKLlUubm5dPSJSRUZFUlJBTF9FWENMVVNJT04iO0ouVVtKLlUucWxdPSJFQ09NTUVSQ0VfRlJPTV9HVE1fVEFHIjtKLlVbSi5VLnJsXT0iRUNPTU1FUkNFX0ZST01fR1RNX1VBX1NDSEVNQSI7Si5VW0ouVS5FcV09IkdBX1NFTkQiO0ouVVtKLlUubnBdPSJFTV9GT1JNIjsKSi5VW0ouVS5EcV09IkdBX0dBTV9MSU5LIjtKLlVbSi5VLmpwXT0iQ1JFQVRFX0VWRU5UX0FVVE9fUEFHRV9QQVRIIjtKLlVbSi5VLmhwXT0iQ1JFQVRFRF9FVkVOVCI7Si5VW0ouVS54bl09IlNJREVMT0FERUQiO0ouVVtKLlUudm5dPSJTR1RNX0xFR0FDWV9DT05GSUdVUkFUSU9OIjtKLlVbSi5VLk5rXT0iQ0NEX0VNX0VWRU5UIjtKLlVbSi5VLlVvXT0iQVVUT19SRURBQ1RfRU1BSUwiO0ouVVtKLlUuV29dPSJBVVRPX1JFREFDVF9RVUVSWV9QQVJBTSI7Si5VW0ouVS5obl09Ik1VTFRJUExFX1BBR0VWSUVXX0ZST01fQ09ORklHIjtKLlVbSi5VLnNsXT0iRU1fRVZFTlRfU0VOVF9CRUZPUkVfQ09ORklHIjtKLlVbSi5VLmZuXT0iTE9BREVEX1ZJQV9DU1RfT1JfU0lERUxPQURJTkciO0ouVVtKLlUubHBdPSJERUNPREVEX1BBUkFNX01BVENIIjtKLlVbSi5VLlBxXT0iTk9OX0RFQ09ERURfUEFSQU1fTUFUQ0giO0ouVVtKLlUuYXBdPSJDQ0RfRVZFTlRfU0dUTSI7CkouVVtKLlUuVm9dPSJBVVRPX1JFREFDVF9FTUFJTF9TR1RNIjtKLlVbSi5VLlhvXT0iQVVUT19SRURBQ1RfUVVFUllfUEFSQU1fU0dUTSI7Si5VW0ouVS5ubF09IkRBSUxZX0xJTUlUX1JFQUNIRUQiO0ouVVtKLlUuTGtdPSJCVVJTVF9MSU1JVF9SRUFDSEVEIjtKLlVbSi5VLmVyXT0iU0hBUkVEX1VTRVJfSURfU0VUX0FGVEVSX1JFUVVFU1QiO0ouVVtKLlUuSm1dPSJHQTRfTVVMVElQTEVfU0VTU0lPTl9DT09LSUVTIjtKLlVbSi5VLlVtXT0iSU5WQUxJRF9HQTRfU0VTU0lPTl9DT1VOVCI7Si5VW0ouVS5UbV09IklOVkFMSURfR0E0X0xBU1RfRVZFTlRfVElNRVNUQU1QIjtKLlVbSi5VLlNtXT0iSU5WQUxJRF9HQTRfSk9JTl9USU1FUiI7Si5VW0ouVS5NbV09IkdBNF9TVEFMRV9TRVNTSU9OX0NPT0tJRV9TRUxFQ1RFRCI7Si5VW0ouVS5LbV09IkdBNF9TRVNTSU9OX0NPT0tJRV9HUzFfUkVBRCI7Si5VW0ouVS5MbV09IkdBNF9TRVNTSU9OX0NPT0tJRV9HUzJfUkVBRCI7CkouVVtKLlUuR21dPSJHQTRfRExfUEFSQU1fUkVDT1ZFUllfQVZBSUxBQkxFIjtKLlVbSi5VLkZtXT0iR0E0X0RMX1BBUkFNX1JFQ09WRVJZX0FQUExJRUQiO0ouVVtKLlUuSG1dPSJHQTRfR09PR0xFX01FQVNVUkVNRU5UX0FMTE9XRUQiO0ouVVtKLlUuSW1dPSJHQTRfR09PR0xFX1NJR05BTFNfRU5BQkxFRCI7Si5VW0ouVS5CcV09IkdBNF9GQUxMQkFDS19SRVFVRVNUIjtKLlVbSi5VLkNxXT0iR0FfQURTX0xJTktfQkVGT1JFX0NPTlZFUlNJT05fTUFSS0lORyI7Si5VW0ouVS5VcV09IlBMQVRJTlVNX0VMSUdJQkxFIjt2YXIgeGc9e30seWc9KHhnLnVhYT0hMCx4Zy51YWI9ITAseGcudWFmdmw9ITAseGcudWFtYj0hMCx4Zy51YW09ITAseGcudWFwPSEwLHhnLnVhcHY9ITAseGcudWF3PSEwLHhnKTsKdmFyIEJnPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5ldmVudHM7aWYoYy5sZW5ndGg9PT0xKXJldHVybiB6ZyhjWzBdLGIpO3ZhciBkPVtdO2EuSCYmZC5wdXNoKGEuSCk7Zm9yKHZhciBlPXt9LGY9MDtmPGMubGVuZ3RoO2YrKylHYihjW2ZdLnZlLGZ1bmN0aW9uKHQsdSl7dSE9bnVsbCYmKGVbdF09ZVt0XXx8e30sZVt0XVtTdHJpbmcodSldPWVbdF1bU3RyaW5nKHUpXSsxfHwxKX0pO3ZhciBnPXt9O0diKGUsZnVuY3Rpb24odCx1KXt2YXIgdix4PS0xLHk9MDtHYih1LGZ1bmN0aW9uKHosQyl7eSs9Qzt2YXIgRD0oei5sZW5ndGgrdC5sZW5ndGgrMikqKEMtMSk7RD54JiYodj16LHg9RCl9KTt5PT09Yy5sZW5ndGgmJihnW3RdPXYpfSk7QWcoZyxkKTtiJiZkLnB1c2goIl9zPSIrYik7Zm9yKHZhciBoPWQuam9pbigiJiIpLGw9W10sbj17fSxwPTA7cDxjLmxlbmd0aDtuPXtmazp2b2lkIDB9LHArKyl7dmFyIHE9W107bi5maz17fTtHYihjW3BdLnZlLGZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbih1LAp2KXtnW3VdIT09IiIrdiYmKHQuZmtbdV09dil9fShuKSk7Y1twXS5IJiZxLnB1c2goY1twXS5IKTtBZyhuLmZrLHEpO2wucHVzaChxLmpvaW4oIiYiKSl9dmFyIHI9bC5qb2luKCJcclxuIik7cmV0dXJue3BhcmFtczpoLGJvZHk6cn19LHpnPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107YS5LJiZjLnB1c2goYS5LKTtiJiZjLnB1c2goIl9zPSIrYik7QWcoYS52ZSxjKTt2YXIgZD0hMTthLkgmJihjLnB1c2goYS5IKSxkPSEwKTt2YXIgZT1jLmpvaW4oIiYiKSxmPSIiLGc9ZS5sZW5ndGgrYS5iYXNlVXJsLmxlbmd0aCsxO2QmJmc+MjA0OCYmKGY9Yy5wb3AoKSxlPWMuam9pbigiJiIpKTtyZXR1cm57cGFyYW1zOmUsYm9keTpmfX0sQWc9ZnVuY3Rpb24oYSxiKXtHYihhLGZ1bmN0aW9uKGMsZCl7ZCE9bnVsbCYmYi5wdXNoKGVuY29kZVVSSUNvbXBvbmVudChjKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGQpKX0pfTsKdmFyIEVnPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWEsZT1iW2NdO2lmKCFDZy5leGVjKGUpKXRocm93IEVycm9yKCJJbnZhbGlkIGtleSB3aWxkY2FyZCIpO3ZhciBmPWUuaW5kZXhPZigiLioiKSxnPWYhPT0tMSYmZj09PWUubGVuZ3RoLTIsaD1nP2Uuc2xpY2UoMCxlLmxlbmd0aC0yKTplLGw7YTppZihkLmxlbmd0aD09PTApbD0hMTtlbHNle2Zvcih2YXIgbj1kLnNwbGl0KCIuIikscD0wO3A8bi5sZW5ndGg7cCsrKWlmKCFEZy5leGVjKG5bcF0pKXtsPSExO2JyZWFrIGF9bD0hMH1pZighbHx8aC5sZW5ndGg+ZC5sZW5ndGh8fCFnJiZkLmxlbmd0aCE9PWUubGVuZ3RoPzA6Zz9TYihkLGgpJiYoZD09PWh8fGQuY2hhckF0KGgubGVuZ3RoKT09PSIuIik6ZD09PWgpcmV0dXJuITB9cmV0dXJuITF9LERnPS9eW2EteiRfXVtcdy0kXSokL2ksQ2c9L14oPzpbYS16XyRdW2Etei1fJDAtOV0qXC4pKlthLXpfJF1bYS16LV8kMC05XSooPzpcLlwqKT8kL2k7CnZhciBGZz1bIm1hdGNoZXMiLCJ3ZWJraXRNYXRjaGVzU2VsZWN0b3IiLCJtb3pNYXRjaGVzU2VsZWN0b3IiLCJtc01hdGNoZXNTZWxlY3RvciIsIm9NYXRjaGVzU2VsZWN0b3IiXTtmdW5jdGlvbiBHZyhhLGIpe2lmKCFhKXJldHVybiExO3RyeXtmb3IodmFyIGM9MDtjPEZnLmxlbmd0aDtjKyspe3ZhciBkPUZnW2NdO2lmKGFbZF0hPW51bGwpcmV0dXJuIGFbZF0oYil9fWNhdGNoKGUpe31yZXR1cm4hMX1mdW5jdGlvbiBIZyhhLGIpe3ZhciBjPVN0cmluZyhhKSxkPVN0cmluZyhiKSxlPWMubGVuZ3RoLWQubGVuZ3RoO3JldHVybiBlPj0wJiZjLmluZGV4T2YoZCxlKT09PWV9ZnVuY3Rpb24gSWcoYSxiKXtyZXR1cm4gU3RyaW5nKGEpLnNwbGl0KCIsIikuaW5kZXhPZihTdHJpbmcoYikpPj0wfQpmdW5jdGlvbiBKZyhhLGIsYyxkKXt2YXIgZT1jPyJpIjp2b2lkIDA7dHJ5e3ZhciBmPVN0cmluZyhiKStTdHJpbmcoZSksZz1kPT1udWxsP3ZvaWQgMDpkLmdldChmKTtnfHwoZz1uZXcgUmVnRXhwKGIsZSksZD09bnVsbHx8ZC5zZXQoZixnKSk7cmV0dXJuIGcudGVzdChhKX1jYXRjaChoKXtyZXR1cm4hMX19ZnVuY3Rpb24gS2coYSxiKXtyZXR1cm4gU3RyaW5nKGEpLmluZGV4T2YoU3RyaW5nKGIpKT49MH1mdW5jdGlvbiBMZyhhLGIpe3JldHVybiBTdHJpbmcoYSk9PT1TdHJpbmcoYil9ZnVuY3Rpb24gTWcoYSxiKXtyZXR1cm4gTnVtYmVyKGEpPj1OdW1iZXIoYil9ZnVuY3Rpb24gTmcoYSxiKXtyZXR1cm4gTnVtYmVyKGEpPD1OdW1iZXIoYil9ZnVuY3Rpb24gT2coYSxiKXtyZXR1cm4gTnVtYmVyKGEpPk51bWJlcihiKX1mdW5jdGlvbiBQZyhhLGIpe3JldHVybiBOdW1iZXIoYSk8TnVtYmVyKGIpfQpmdW5jdGlvbiBRZyhhLGIpe3JldHVybiBTYihTdHJpbmcoYSksU3RyaW5nKGIpKX07ZnVuY3Rpb24gWGcoYSl7dmFyIGI9YS5zZWFyY2g7cmV0dXJuIGEucHJvdG9jb2wrIi8vIithLmhvc3RuYW1lK2EucGF0aG5hbWUrKGI/YisiJnJpY2hzc3Rzc2UiOiI/cmljaHNzdHNzZSIpfTt2YXIgWWc9ZnVuY3Rpb24oKXt0aGlzLlI9IiJ9LCRnPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGM9Yi5mYWxsYmFja191cmwsZD1iLmZhbGxiYWNrX3VybF9tZXRob2Q7aWYoYyYmZCl7dmFyIGU9e307WmcoYSwoZVtkXT1bY10sZS5vcHRpb25zPXt9LGUpKX19fSxhaD1mdW5jdGlvbihhLGIsYyl7aWYoQXJyYXkuaXNBcnJheShhKSlmb3IodmFyIGQ9bShhKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTt0eXBlb2YgZj09PSJzdHJpbmciJiZjKGYsYil9fSxaZz1mdW5jdGlvbihhLGIpe2lmKGIpZm9yKHZhciBjPUNkKGIub3B0aW9ucyk/Yi5vcHRpb25zOnt9LGQ9bShPYmplY3Qua2V5cyhiKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWUsZz1iW2ZdO3N3aXRjaChmKXtjYXNlICJzZW5kX3BpeGVsIjphaChnLGMsZnVuY3Rpb24oaCxsKXtyZXR1cm4gdm9pZCBhLksoaCxsKX0pO2JyZWFrO2Nhc2UgImZldGNoIjphaChnLApjLGZ1bmN0aW9uKGgsbCl7cmV0dXJuIHZvaWQgYS5IKGgsbCl9KX19fTt2YXIgYmg9L14oW2Etel1bYS16MC05XSopOighfFw/KShcKnxzdHJpbmd8Ym9vbGVhbnxudW1iZXJ8Rm58UGl4aWVNYXB8TGlzdHxPcGFxdWVWYWx1ZSkkL2ksY2g9e0ZuOiJmdW5jdGlvbiIsUGl4aWVNYXA6Ik9iamVjdCIsTGlzdDoiQXJyYXkifTsKZnVuY3Rpb24gZGgoYSxiKXtmb3IodmFyIGM9WyJpbnB1dDohKiJdLGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9YmguZXhlYyhjW2RdKTtpZighZSl0aHJvdyBFcnJvcigiSW50ZXJuYWwgRXJyb3IgaW4gIithKTt2YXIgZj1lWzFdLGc9ZVsyXT09PSIhIixoPWVbM10sbD1iW2RdO2lmKGw9PW51bGwpe2lmKGcpdGhyb3cgRXJyb3IoIkVycm9yIGluICIrYSsiLiBSZXF1aXJlZCBhcmd1bWVudCAiK2YrIiBub3Qgc3VwcGxpZWQuIik7fWVsc2UgaWYoaCE9PSIqIil7dmFyIG49dHlwZW9mIGw7bCBpbnN0YW5jZW9mIEtkP249IkZuIjpsIGluc3RhbmNlb2YgR2Q/bj0iTGlzdCI6bCBpbnN0YW5jZW9mIGtiP249IlBpeGllTWFwIjpsIGluc3RhbmNlb2YgU2Q/bj0iUGl4aWVQcm9taXNlIjpsIGluc3RhbmNlb2YgUGQmJihuPSJPcGFxdWVWYWx1ZSIpO2lmKG4hPT1oKXRocm93IEVycm9yKCJFcnJvciBpbiAiK2ErIi4gQXJndW1lbnQgIitmKyIgaGFzIHR5cGUgIisoKGNoW25dfHxuKSsiLCB3aGljaCBkb2VzIG5vdCBtYXRjaCByZXF1aXJlZCB0eXBlICIpKwooKGNoW2hdfHxoKSsiLiIpKTt9fX1mdW5jdGlvbiBLKGEsYixjKXtmb3IodmFyIGQ9W10sZT1tKGMpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO2cgaW5zdGFuY2VvZiBLZD9kLnB1c2goImZ1bmN0aW9uIik6ZyBpbnN0YW5jZW9mIEdkP2QucHVzaCgiQXJyYXkiKTpnIGluc3RhbmNlb2Yga2I/ZC5wdXNoKCJPYmplY3QiKTpnIGluc3RhbmNlb2YgU2Q/ZC5wdXNoKCJQcm9taXNlIik6ZyBpbnN0YW5jZW9mIFBkP2QucHVzaCgiT3BhcXVlVmFsdWUiKTpkLnB1c2godHlwZW9mIGcpfXJldHVybiBFcnJvcigiQXJndW1lbnQgZXJyb3IgaW4gIithKyIuIEV4cGVjdGVkIGFyZ3VtZW50IHR5cGVzIFsiKyhiLmpvaW4oIiwiKSsiXSwgYnV0IHJlY2VpdmVkIFsiKSsoZC5qb2luKCIsIikrIl0uIikpfWZ1bmN0aW9uIGVoKGEpe3JldHVybiBhIGluc3RhbmNlb2Yga2J9ZnVuY3Rpb24gZmgoYSl7cmV0dXJuIGVoKGEpfHxhPT09bnVsbHx8Z2goYSl9CmZ1bmN0aW9uIGhoKGEpe3JldHVybiBhIGluc3RhbmNlb2YgS2R9ZnVuY3Rpb24gaWgoYSl7cmV0dXJuIGhoKGEpfHxhPT09bnVsbHx8Z2goYSl9ZnVuY3Rpb24gamgoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBHZH1mdW5jdGlvbiBraChhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIFBkfWZ1bmN0aW9uIGxoKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmcifWZ1bmN0aW9uIG1oKGEpe3JldHVybiBsaChhKXx8YT09PW51bGx8fGdoKGEpfWZ1bmN0aW9uIG5oKGEpe3JldHVybiB0eXBlb2YgYT09PSJib29sZWFuIn1mdW5jdGlvbiBvaChhKXtyZXR1cm4gbmgoYSl8fGdoKGEpfWZ1bmN0aW9uIHBoKGEpe3JldHVybiBuaChhKXx8YT09PW51bGx8fGdoKGEpfWZ1bmN0aW9uIHFoKGEpe3JldHVybiB0eXBlb2YgYT09PSJudW1iZXIifWZ1bmN0aW9uIGdoKGEpe3JldHVybiBhPT09dm9pZCAwfTtmdW5jdGlvbiByaChhKXtyZXR1cm4iIithfQpmdW5jdGlvbiBzaChhLGIpe3ZhciBjPVtdO3JldHVybiBjfTtmdW5jdGlvbiB0aChhLGIpe3ZhciBjPW5ldyBLZChhLGZ1bmN0aW9uKCl7Zm9yKHZhciBkPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKSxlPTA7ZTxkLmxlbmd0aDtlKyspZFtlXT10aGlzLmV2YWx1YXRlKGRbZV0pO3RyeXtyZXR1cm4gYi5hcHBseSh0aGlzLGQpfWNhdGNoKGcpe3Rocm93IGNiKGcpO319KTtjLlphKCk7cmV0dXJuIGN9CmZ1bmN0aW9uIHVoKGEsYil7dmFyIGM9bmV3IGtiLGQ7Zm9yKGQgaW4gYilpZihiLmhhc093blByb3BlcnR5KGQpKXt2YXIgZT1iW2RdO3liKGUpP2Muc2V0KGQsdGgoYSsiXyIrZCxlKSk6Q2QoZSk/Yy5zZXQoZCx1aChhKyJfIitkLGUpKTooQWIoZSl8fHpiKGUpfHx0eXBlb2YgZT09PSJib29sZWFuIikmJmMuc2V0KGQsZSl9Yy5aYSgpO3JldHVybiBjfTtmdW5jdGlvbiB3aChhLGIpe2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIl0sYXJndW1lbnRzKTtpZighbWgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGM9e30sZD1uZXcga2I7cmV0dXJuIGQ9dWgoIkFzc2VydEFwaVN1YmplY3QiLApjKX07ZnVuY3Rpb24geGgoYSxiKXtpZighbWgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7aWYoYSBpbnN0YW5jZW9mIFNkKXRocm93IEVycm9yKCJBcmd1bWVudCBhY3R1YWwgY2Fubm90IGhhdmUgdHlwZSBQcm9taXNlLiBBc3NlcnRpb25zIG9uIGFzeW5jaHJvbm91cyBjb2RlIGFyZW4ndCBzdXBwb3J0ZWQuIik7dmFyIGM9e30sZD1uZXcga2I7cmV0dXJuIGQ9dWgoIkFzc2VydFRoYXRTdWJqZWN0IixjKX07ZnVuY3Rpb24geWgoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7Zm9yKHZhciBiPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxjPVtdLGQ9dGhpcy5ULGU9MDtlPGIubGVuZ3RoOysrZSljLnB1c2goVGQoYltlXSxkKSk7cmV0dXJuIFVkKGEuYXBwbHkobnVsbCxjKSl9fWZ1bmN0aW9uIHpoKCl7Zm9yKHZhciBhPU1hdGgsYj1BaCxjPXt9LGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXTthLmhhc093blByb3BlcnR5KGUpJiYoY1tlXT15aChhW2VdLmJpbmQoYSkpKX1yZXR1cm4gY307ZnVuY3Rpb24gQmgoYSl7cmV0dXJuIGEhPW51bGwmJlNiKGEsIl9fY3Z0XyIpfTtmdW5jdGlvbiBDaChhKXt2YXIgYjtyZXR1cm4gYn07ZnVuY3Rpb24gRGgoYSl7dmFyIGI7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO3RyeXtiPWRlY29kZVVSSUNvbXBvbmVudChhKX1jYXRjaChjKXt9cmV0dXJuIGJ9O2Z1bmN0aW9uIEVoKGEpe3RyeXtyZXR1cm4gZW5jb2RlVVJJKGEpfWNhdGNoKGIpe319O2Z1bmN0aW9uIEZoKGEpe3RyeXtyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhhKSl9Y2F0Y2goYil7fX07ZnVuY3Rpb24gR2goYSxiKXt2YXIgYz0hMTt2YXIgZD1KU09OLnBhcnNlKGEpO2lmKCFkKXRocm93IEVycm9yKCJJbnZhbGlkIGJvb2xlYW4gZXhwcmVzc2lvbiBzdHJpbmcgd2FzIGdpdmVuLiIpO2M9SGgoZCxiKTtyZXR1cm4gY30KdmFyIEloPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDtjKyspe2lmKGE9PT12b2lkIDApcmV0dXJuO2E9YVtiW2NdXX1yZXR1cm4gYX0sSmg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnByZUhpdDtpZihjKXt2YXIgZD1hWzBdO3N3aXRjaChkKXtjYXNlICJoaXREYXRhIjpyZXR1cm4gYS5sZW5ndGg8Mj92b2lkIDA6SWgoYy5nZXRIaXREYXRhKGFbMV0pLGEuc2xpY2UoMikpO2Nhc2UgIm1ldGFkYXRhIjpyZXR1cm4gYS5sZW5ndGg8Mj92b2lkIDA6SWgoYy5nZXRNZXRhZGF0YShhWzFdKSxhLnNsaWNlKDIpKTtjYXNlICJldmVudE5hbWUiOnJldHVybiBjLmdldEV2ZW50TmFtZSgpO2Nhc2UgImRlc3RpbmF0aW9uSWQiOnJldHVybiBjLmdldERlc3RpbmF0aW9uSWQoKTtkZWZhdWx0OnRocm93IEVycm9yKGQrIiBpcyBub3QgYSB2YWxpZCBmaWVsZCB0aGF0IGNhbiBiZSBhY2Nlc3NlZFxuICAgICAgICAgICAgICAgICAgICAgIGZyb20gUHJlSGl0IGRhdGEuIik7fX19LApLaD1mdW5jdGlvbihhLGIpe2lmKGEpe2lmKGEuY29udGV4dFZhbHVlIT09dm9pZCAwKXt2YXIgYzthOnt2YXIgZD1hLmNvbnRleHRWYWx1ZSxlPWQua2V5UGFydHM7aWYoZSYmZS5sZW5ndGghPT0wKXt2YXIgZj1kLm5hbWVzcGFjZVR5cGU7c3dpdGNoKGYpe2Nhc2UgMTpjPUpoKGUsYik7YnJlYWsgYTtjYXNlIDI6dmFyIGc9Yi5tYWNybztjPWc/Z1tlWzBdXTp2b2lkIDA7YnJlYWsgYTtkZWZhdWx0OnRocm93IEVycm9yKCJVbmtub3duIE5hbWVzcGFjZSBUeXBlIHVzZWQ6ICIrZik7fX1jPXZvaWQgMH1yZXR1cm4gY31pZihhLmJvb2xlYW5FeHByZXNzaW9uVmFsdWUhPT12b2lkIDApcmV0dXJuIEhoKGEuYm9vbGVhbkV4cHJlc3Npb25WYWx1ZSxiKTtpZihhLmJvb2xlYW5WYWx1ZSE9PXZvaWQgMClyZXR1cm4hIWEuYm9vbGVhblZhbHVlO2lmKGEuc3RyaW5nVmFsdWUhPT12b2lkIDApcmV0dXJuIFN0cmluZyhhLnN0cmluZ1ZhbHVlKTtpZihhLmludGVnZXJWYWx1ZSE9PXZvaWQgMClyZXR1cm4gTnVtYmVyKGEuaW50ZWdlclZhbHVlKTsKaWYoYS5kb3VibGVWYWx1ZSE9PXZvaWQgMClyZXR1cm4gTnVtYmVyKGEuZG91YmxlVmFsdWUpO3Rocm93IEVycm9yKCJVbmtub3duIGZpZWxkIHVzZWQgZm9yIHZhcmlhYmxlIG9mIHR5cGUgRXhwcmVzc2lvblZhbHVlOiIrYSk7fX0sSGg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLmFyZ3M7aWYoIUFycmF5LmlzQXJyYXkoYyl8fGMubGVuZ3RoPT09MCl0aHJvdyBFcnJvcignSW52YWxpZCBib29sZWFuIGV4cHJlc3Npb24gZm9ybWF0LiBFeHBlY3RlZCAiYXJncyI6JytjKyIgcHJvcGVydHkgdG9cbiAgICAgICAgIGJlIG5vbi1lbXB0eSBhcnJheS4iKTt2YXIgZD1mdW5jdGlvbihnKXtyZXR1cm4gS2goZyxiKX07c3dpdGNoKGEudHlwZSl7Y2FzZSAxOmZvcih2YXIgZT0wO2U8Yy5sZW5ndGg7ZSsrKWlmKGQoY1tlXSkpcmV0dXJuITA7cmV0dXJuITE7Y2FzZSAyOmZvcih2YXIgZj0wO2Y8Yy5sZW5ndGg7ZisrKWlmKCFkKGNbZl0pKXJldHVybiExO3JldHVybiBjLmxlbmd0aD4wO2Nhc2UgMzpyZXR1cm4hZChjWzBdKTsKY2FzZSA0OnJldHVybiBKZyhkKGNbMF0pLGQoY1sxXSksITEsYi5yZWdleENhY2hlKTtjYXNlIDU6cmV0dXJuIExnKGQoY1swXSksZChjWzFdKSk7Y2FzZSA2OnJldHVybiBRZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgNzpyZXR1cm4gSGcoZChjWzBdKSxkKGNbMV0pKTtjYXNlIDg6cmV0dXJuIEtnKGQoY1swXSksZChjWzFdKSk7Y2FzZSA5OnJldHVybiBQZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgMTA6cmV0dXJuIE5nKGQoY1swXSksZChjWzFdKSk7Y2FzZSAxMTpyZXR1cm4gT2coZChjWzBdKSxkKGNbMV0pKTtjYXNlIDEyOnJldHVybiBNZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgMTM6cmV0dXJuIElnKGQoY1swXSksU3RyaW5nKGQoY1sxXSkpKTtkZWZhdWx0OnRocm93IEVycm9yKCdJbnZhbGlkIGJvb2xlYW4gZXhwcmVzc2lvbiBmb3JtYXQuIEV4cGVjdGVkICJ0eXBlIiBwcm9wZXJ0eSB0b2JlIGEgcG9zaXRpdmUgaW50ZWdlciB3aGljaCBpcyBsZXNzIHRoYW4gMTQuJyk7fX07CmZ1bmN0aW9uIExoKGEpe2lmKCFtaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7fTtmdW5jdGlvbiBNaChhKXt2YXIgYj1UZChhKTtyZXR1cm4gbmcoYj8iIitiOiIiKX07ZnVuY3Rpb24gTmgoYSxiKXtpZighcWgoYSl8fCFxaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsibnVtYmVyIiwibnVtYmVyIl0sYXJndW1lbnRzKTtyZXR1cm4gRGIoYSxiKX07ZnVuY3Rpb24gT2goKXtyZXR1cm4obmV3IERhdGUpLmdldFRpbWUoKX07ZnVuY3Rpb24gUGgoYSl7aWYoYT09PW51bGwpcmV0dXJuIm51bGwiO2lmKGEgaW5zdGFuY2VvZiBHZClyZXR1cm4iYXJyYXkiO2lmKGEgaW5zdGFuY2VvZiBLZClyZXR1cm4iZnVuY3Rpb24iO2lmKGEgaW5zdGFuY2VvZiBQZCl7dmFyIGI9YS5nZXRWYWx1ZSgpO2lmKChiPT1udWxsP3ZvaWQgMDpiLmNvbnN0cnVjdG9yKT09PXZvaWQgMHx8Yi5jb25zdHJ1Y3Rvci5uYW1lPT09dm9pZCAwKXt2YXIgYz1TdHJpbmcoYik7cmV0dXJuIGMuc3Vic3RyaW5nKDgsYy5sZW5ndGgtMSl9cmV0dXJuIFN0cmluZyhiLmNvbnN0cnVjdG9yLm5hbWUpfXJldHVybiB0eXBlb2YgYX07ZnVuY3Rpb24gUWgoYSl7ZnVuY3Rpb24gYihjKXtyZXR1cm4gZnVuY3Rpb24oZCl7dHJ5e3JldHVybiBjKGQpfWNhdGNoKGUpeyhsZ3x8bWcuUG8pJiZhLmNhbGwodGhpcyxlLm1lc3NhZ2UpfX19cmV0dXJue3BhcnNlOmIoZnVuY3Rpb24oYyl7cmV0dXJuIFVkKEpTT04ucGFyc2UoYykpfSksc3RyaW5naWZ5OmIoZnVuY3Rpb24oYyl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KFRkKGMpKX0pLHB1YmxpY05hbWU6IkpTT04ifX07ZnVuY3Rpb24gUmgoYSl7cmV0dXJuIEliKFRkKGEsdGhpcy5UKSl9O2Z1bmN0aW9uIFNoKGEpe3JldHVybiBOdW1iZXIoVGQoYSx0aGlzLlQpKX07ZnVuY3Rpb24gVGgoYSl7cmV0dXJuIGE9PT1udWxsPyJudWxsIjphPT09dm9pZCAwPyJ1bmRlZmluZWQiOmEudG9TdHJpbmcoKX07ZnVuY3Rpb24gVWgoYSxiLGMpe3ZhciBkPW51bGwsZT0hMTtyZXR1cm4gZT9kOm51bGx9O3ZhciBBaD0iZmxvb3IgY2VpbCByb3VuZCBtYXggbWluIGFicyBwb3cgc3FydCIuc3BsaXQoIiAiKTtmdW5jdGlvbiBWaCgpe3ZhciBhPXt9O3JldHVybntXcjpmdW5jdGlvbihiKXtyZXR1cm4gYS5oYXNPd25Qcm9wZXJ0eShiKT9hW2JdOnZvaWQgMH0sS286ZnVuY3Rpb24oYixjKXthW2JdPWN9LHJlc2V0OmZ1bmN0aW9uKCl7YT17fX19fWZ1bmN0aW9uIFdoKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEtkLnByb3RvdHlwZS5pbnZva2UuYXBwbHkoYSxbYl0uY29uY2F0KHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSkpfX0KZnVuY3Rpb24gWGgoYSxiKXtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImFueSJdLGFyZ3VtZW50cyk7fQpmdW5jdGlvbiBZaChhLGIpe2lmKCFsaChhKXx8IWVoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJQaXhpZU1hcCJdLGFyZ3VtZW50cyk7fTt2YXIgWmg9e307dmFyICRoPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBrYjtpZihhIGluc3RhbmNlb2YgR2QpZm9yKHZhciBjPWEuRmEoKSxkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPWNbZF07YS5oYXMoZSkmJmIuc2V0KGUsYS5nZXQoZSkpfWVsc2UgaWYoYSBpbnN0YW5jZW9mIEtkKWZvcih2YXIgZj1hLkZhKCksZz0wO2c8Zi5sZW5ndGg7ZysrKXt2YXIgaD1mW2ddO2Iuc2V0KGgsYS5nZXQoaCkpfWVsc2UgZm9yKHZhciBsPTA7bDxhLmxlbmd0aDtsKyspYi5zZXQobCxhW2xdKTtyZXR1cm4gYn07ClpoLmtleXM9ZnVuY3Rpb24oYSl7ZGgodGhpcy5nZXROYW1lKCksYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZHx8dHlwZW9mIGE9PT0ic3RyaW5nIilhPSRoKGEpO2lmKGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkKXJldHVybiBuZXcgR2QoYS5GYSgpKTtyZXR1cm4gbmV3IEdkfTsKWmgudmFsdWVzPWZ1bmN0aW9uKGEpe2RoKHRoaXMuZ2V0TmFtZSgpLGFyZ3VtZW50cyk7aWYoYSBpbnN0YW5jZW9mIEdkfHxhIGluc3RhbmNlb2YgS2R8fHR5cGVvZiBhPT09InN0cmluZyIpYT0kaChhKTtpZihhIGluc3RhbmNlb2Yga2J8fGEgaW5zdGFuY2VvZiBTZClyZXR1cm4gbmV3IEdkKGEuaGMoKSk7cmV0dXJuIG5ldyBHZH07ClpoLmVudHJpZXM9ZnVuY3Rpb24oYSl7ZGgodGhpcy5nZXROYW1lKCksYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZHx8dHlwZW9mIGE9PT0ic3RyaW5nIilhPSRoKGEpO2lmKGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkKXJldHVybiBuZXcgR2QoYS5mYygpLm1hcChmdW5jdGlvbihiKXtyZXR1cm4gbmV3IEdkKGIpfSkpO3JldHVybiBuZXcgR2R9OwpaaC5mcmVlemU9ZnVuY3Rpb24oYSl7KGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkfHxhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZCkmJmEuWmEoKTtyZXR1cm4gYX07WmguZGVsZXRlPWZ1bmN0aW9uKGEsYil7aWYoYSBpbnN0YW5jZW9mIGtiJiYhYS5IYigpKXJldHVybiBhLnJlbW92ZShiKSwhMDtyZXR1cm4hMX07ZnVuY3Rpb24gTChhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkPWEuVC54YigpO2lmKCFkKXRocm93IEVycm9yKCJNaXNzaW5nIHByb2dyYW0gc3RhdGUuIik7aWYoZC5pdCl7dHJ5e2QuUm4uYXBwbHkobnVsbCxbYl0uY29uY2F0KHcoYykpKX1jYXRjaChlKXt0aHJvdyBzYigiVEFHR0lORyIsMjEpLGU7fXJldHVybn1kLlJuLmFwcGx5KG51bGwsW2JdLmNvbmNhdCh3KGMpKSl9O3ZhciBhaT1mdW5jdGlvbigpe3RoaXMuSz17fTt0aGlzLkg9e307dGhpcy5OPSEwO307YWkucHJvdG90eXBlLmdldD1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuY29udGFpbnMoYSk/dGhpcy5LW2FdOnZvaWQgMDtyZXR1cm4gY307YWkucHJvdG90eXBlLmNvbnRhaW5zPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLksuaGFzT3duUHJvcGVydHkoYSl9OwphaS5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYixjKXtpZih0aGlzLmNvbnRhaW5zKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFkZCBhIGZ1bmN0aW9uIHdoaWNoIGFscmVhZHkgZXhpc3RzOiAiK2ErIi4iKTtpZih0aGlzLkguaGFzT3duUHJvcGVydHkoYSkpdGhyb3cgRXJyb3IoIkF0dGVtcHRpbmcgdG8gYWRkIGFuIEFQSSB3aXRoIGFuIGV4aXN0aW5nIHByaXZhdGUgQVBJIG5hbWU6ICIrYSsiLiIpO3RoaXMuS1thXT1jP3ZvaWQgMDp5YihiKT90aChhLGIpOnVoKGEsYil9O2Z1bmN0aW9uIGJpKGEsYil7dmFyIGM9dm9pZCAwO3JldHVybiBjfTtmdW5jdGlvbiBjaSgpe3ZhciBhPXt9OwpyZXR1cm4gYX07dmFyIGRpPXt9LGVpPShkaVtGLkQuc2FdPSJnY3UiLGRpW0YuRC5laF09ImVwdCIsZGlbRi5ELlNiXT0iZ2NsZ2IiLGRpW0YuRC5sYl09ImdjbGF3IixkaVtGLkQuemxdPSJnY2xpZF9sZW4iLGRpW0YuRC5CZV09ImdjbGdzIixkaVtGLkQuQ2VdPSJnY2xscCIsZGlbRi5ELkRlXT0iZ2Nsc3QiLGRpW0YuRC5FZF09ImF1aWQiLGRpW0YuRC5CbF09ImFlIixkaVtGLkQuQ2ZdPSJkc2NudCIsZGlbRi5ELkRmXT0iZmNudHIiLGRpW0YuRC5FZl09ImZsbmciLGRpW0YuRC5GZl09Im1pZCIsZGlbRi5ELndpXT0iYnR0eXBlIixkaVtGLkQuS2JdPSJnYWNpZCIsZGlbRi5ELkdkXT0ibGFiZWwiLGRpW0YuRC5GZV09ImNhcGkiLGRpW0YuRC5qaF09InBzY2RsIixkaVtGLkQuZWJdPSJjdXJyZW5jeV9jb2RlIixkaVtGLkQuR2VdPSJ2ZGx0diIsZGlbRi5ELmtoXT0iY2xvY3QiLGRpW0YuRC5FbF09Il9kYmciLGRpW0YuRC5JZV09Im9lZGVsZCIsZGlbRi5ELlZjXT0iZWRpZCIsZGlbRi5ELk1kXT0iZXZuaWQiLApkaVtGLkQuRWldPSJldmppZCIsZGlbRi5ELk5kXT0iZXhjaWQiLGRpW0YuRC5yaF09ImdhYyIsZGlbRi5ELkplXT0iZ2FjZ2IiLGRpW0YuRC5NbF09ImdhY21jb3YiLGRpW0YuRC5LZV09ImdkcHIiLGRpW0YuRC5YY109ImdkaWQiLGRpW0YuRC5MZV09Il9uZyIsZGlbRi5ELmNxXT0iX29ubyIsZGlbRi5ELnRoXT0iZ3BwX3NpZCIsZGlbRi5ELnVoXT0iZ3BwIixkaVtGLkQuUGxdPSJnc2FleHAiLGRpW0YuRC5WZl09Il90dSIsZGlbRi5ELk1lXT0iZnJtIixkaVtGLkQuS2ldPSJndG1fdXAiLGRpW0YuRC5QZF09ImxwcyIsZGlbRi5ELkxpXT0iZGlkIixkaVtGLkQuUWRdPSJmY250ciIsZGlbRi5ELlJkXT0iZmxuZyIsZGlbRi5ELlNkXT0ibWlkIixkaVtGLkQuTmVdPXZvaWQgMCxkaVtGLkQuTWJdPSJ0aWJhIixkaVtGLkQuV2JdPSJyZHAiLGRpW0YuRC54Y109ImVjc2lkIixkaVtGLkQuWmZdPSJnYV91aWQiLGRpW0YuRC5VZF09ImRlbG9wYyIsZGlbRi5ELk9lXT0iZ2Rwcl9jb25zZW50IiwKZGlbRi5ELlBhXT0ib2lkIixkaVtGLkQuZG1dPSJvaWRzcmMiLGRpW0YuRC5mbV09InVwdGdzIixkaVtGLkQuY2ddPSJ1YWEiLGRpW0YuRC5kZ109InVhYiIsZGlbRi5ELmVnXT0idWFmdmwiLGRpW0YuRC5mZ109InVhbWIiLGRpW0YuRC5nZ109InVhbSIsZGlbRi5ELmhnXT0idWFwIixkaVtGLkQuaWddPSJ1YXB2IixkaVtGLkQuamddPSJ1YXciLGRpW0YuRC5nbV09ImVjX2xhdCIsZGlbRi5ELmhtXT0iZWNfbWV0YSIsZGlbRi5ELmltXT0iZWNfbSIsZGlbRi5ELmptXT0iZWNfc2VsIixkaVtGLkQua21dPSJlY19zIixkaVtGLkQuQmNdPSJlY19tb2RlIixkaVtGLkQuZmJdPSJ1c2VySWQiLGRpW0YuRC5rZ109InVzX3ByaXZhY3kiLGRpW0YuRC5RYV09InZhbHVlIixkaVtGLkQucW1dPSJtY292IixkaVtGLkQuV2ldPSJobiIsZGlbRi5ELlZtXT0iZ3RtX2VlIixkaVtGLkQuWWldPSJ1aXAiLGRpW0YuRC5KaF09Im10IixkaVtGLkQuZGVdPSJucGEiLGRpW0YuRC5ZcV09InNnX3VjIixkaVtGLkQueWldPQpudWxsLGRpW0YuRC5iZF09bnVsbCxkaVtGLkQudGJdPW51bGwsZGlbRi5ELkhhXT1udWxsLGRpW0YuRC56YV09bnVsbCxkaVtGLkQuVWFdPW51bGwsZGlbRi5ELlBlXT1udWxsLGRpW0YuRC5lZF09bnVsbCxkaVtGLkQuc2hdPW51bGwsZGlbRi5ELkJkXT1udWxsLGRpW0YuRC5DZF09bnVsbCxkaVtGLkQuZmhdPW51bGwsZGlbRi5ELmdoXT1udWxsLGRpW0YuRC5UYV09bnVsbCxkaVtGLkQuV2NdPW51bGwsZGkpO2Z1bmN0aW9uIGZpKGEsYil7aWYoYSl7dmFyIGM9YS5zcGxpdCgieCIpO2MubGVuZ3RoPT09MiYmKGdpKGIsInVfdyIsY1swXSksZ2koYiwidV9oIixjWzFdKSl9fWZ1bmN0aW9uIGhpKGEpe3ZhciBiPWlpO2I9Yj09PXZvaWQgMD9qaTpiO3JldHVybiBraShsaShhLGIpKX1mdW5jdGlvbiBraShhKXtyZXR1cm4oYXx8W10pLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4hIWJ9KS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIigiK1ttaShiLnZhbHVlKSxtaShiLnF1YW50aXR5KSxtaShiLml0ZW1faWQpLG1pKGIuc3RhcnRfZGF0ZSksbWkoYi5lbmRfZGF0ZSldLmpvaW4oIioiKSsiKSJ9KS5qb2luKCIiKX0KZnVuY3Rpb24gbGkoYSxiKXtyZXR1cm4oYXx8W10pLmZpbHRlcihmdW5jdGlvbihjKXtyZXR1cm4hIWN9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJue2l0ZW1faWQ6YihjKSxxdWFudGl0eTpjLnF1YW50aXR5LHZhbHVlOmMucHJpY2Usc3RhcnRfZGF0ZTpjLnN0YXJ0X2RhdGUsZW5kX2RhdGU6Yy5lbmRfZGF0ZX19KX1mdW5jdGlvbiBqaShhKXtyZXR1cm5bYS5pdGVtX2lkLGEuaWQsYS5pdGVtX25hbWVdLmZpbmQoZnVuY3Rpb24oYil7cmV0dXJuIGIhPW51bGx9KX1mdW5jdGlvbiBuaShhKXtpZihhJiZhLmxlbmd0aClyZXR1cm4gYS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGImJmIuZXN0aW1hdGVkX2RlbGl2ZXJ5X2RhdGU/Yi5lc3RpbWF0ZWRfZGVsaXZlcnlfZGF0ZToiIn0pLmpvaW4oIiwiKX1mdW5jdGlvbiBnaShhLGIsYyl7Yz09PXZvaWQgMHx8Yz09PW51bGx8fGM9PT0iIiYmIXlnW2JdfHwoYVtiXT1jKX0KZnVuY3Rpb24gbWkoYSl7cmV0dXJuIHR5cGVvZiBhIT09Im51bWJlciImJnR5cGVvZiBhIT09InN0cmluZyI/IiI6YS50b1N0cmluZygpfTtmdW5jdGlvbiBvaSgpe3RoaXMuYmxvY2tTaXplPS0xfTtmdW5jdGlvbiBwaShhLGIpe3RoaXMuYmxvY2tTaXplPS0xO3RoaXMuYmxvY2tTaXplPTY0O3RoaXMuTj1SYS5VaW50OEFycmF5P25ldyBVaW50OEFycmF5KHRoaXMuYmxvY2tTaXplKTpBcnJheSh0aGlzLmJsb2NrU2l6ZSk7dGhpcy5SPXRoaXMuSz0wO3RoaXMuSD1bXTt0aGlzLmZhPWE7dGhpcy5aPWI7dGhpcy5qYT1SYS5JbnQzMkFycmF5P25ldyBJbnQzMkFycmF5KDY0KTpBcnJheSg2NCk7cWk9PT12b2lkIDAmJihSYS5JbnQzMkFycmF5P3FpPW5ldyBJbnQzMkFycmF5KHJpKTpxaT1yaSk7dGhpcy5yZXNldCgpfVNhKHBpLG9pKTtmb3IodmFyIHNpPVtdLHRpPTA7dGk8NjM7dGkrKylzaVt0aV09MDt2YXIgdWk9W10uY29uY2F0KDEyOCxzaSk7CnBpLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuUj10aGlzLks9MDt2YXIgYTtpZihSYS5JbnQzMkFycmF5KWE9bmV3IEludDMyQXJyYXkodGhpcy5aKTtlbHNle3ZhciBiPXRoaXMuWixjPWIubGVuZ3RoO2lmKGM+MCl7Zm9yKHZhciBkPUFycmF5KGMpLGU9MDtlPGM7ZSsrKWRbZV09YltlXTthPWR9ZWxzZSBhPVtdfXRoaXMuSD1hfTsKdmFyIHZpPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1hLk4sYz1hLmphLGQ9MCxlPTA7ZTxiLmxlbmd0aDspY1tkKytdPWJbZV08PDI0fGJbZSsxXTw8MTZ8YltlKzJdPDw4fGJbZSszXSxlPWQqNDtmb3IodmFyIGY9MTY7Zjw2NDtmKyspe3ZhciBnPWNbZi0xNV18MCxoPWNbZi0yXXwwO2NbZl09KChjW2YtMTZdfDApKygoZz4+Pjd8Zzw8MjUpXihnPj4+MTh8Zzw8MTQpXmc+Pj4zKXwwKSsoKGNbZi03XXwwKSsoKGg+Pj4xN3xoPDwxNSleKGg+Pj4xOXxoPDwxMyleaD4+PjEwKXwwKXwwfWZvcih2YXIgbD1hLkhbMF18MCxuPWEuSFsxXXwwLHA9YS5IWzJdfDAscT1hLkhbM118MCxyPWEuSFs0XXwwLHQ9YS5IWzVdfDAsdT1hLkhbNl18MCx2PWEuSFs3XXwwLHg9MDt4PDY0O3grKyl7dmFyIHk9KChsPj4+MnxsPDwzMCleKGw+Pj4xM3xsPDwxOSleKGw+Pj4yMnxsPDwxMCkpKyhsJm5ebCZwXm4mcCl8MCx6PSh2Kygocj4+PjZ8cjw8MjYpXihyPj4+MTF8cjw8MjEpXihyPj4+MjV8cjw8NykpfAowKSsoKChyJnRefnImdSkrKHFpW3hdfDApfDApKyhjW3hdfDApfDApfDA7dj11O3U9dDt0PXI7cj1xK3p8MDtxPXA7cD1uO249bDtsPXoreXwwfWEuSFswXT1hLkhbMF0rbHwwO2EuSFsxXT1hLkhbMV0rbnwwO2EuSFsyXT1hLkhbMl0rcHwwO2EuSFszXT1hLkhbM10rcXwwO2EuSFs0XT1hLkhbNF0rcnwwO2EuSFs1XT1hLkhbNV0rdHwwO2EuSFs2XT1hLkhbNl0rdXwwO2EuSFs3XT1hLkhbN10rdnwwfTsKcGkucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbihhLGIpe2I9PT12b2lkIDAmJihiPWEubGVuZ3RoKTt2YXIgYz0wLGQ9dGhpcy5LO2lmKHR5cGVvZiBhPT09InN0cmluZyIpZm9yKDtjPGI7KXRoaXMuTltkKytdPWEuY2hhckNvZGVBdChjKyspLGQ9PXRoaXMuYmxvY2tTaXplJiYodmkodGhpcyksZD0wKTtlbHNle3ZhciBlLGY9dHlwZW9mIGE7ZT1mIT0ib2JqZWN0Ij9mOmE/QXJyYXkuaXNBcnJheShhKT8iYXJyYXkiOmY6Im51bGwiO2lmKGU9PSJhcnJheSJ8fGU9PSJvYmplY3QiJiZ0eXBlb2YgYS5sZW5ndGg9PSJudW1iZXIiKWZvcig7YzxiOyl7dmFyIGc9YVtjKytdO2lmKCEoIm51bWJlciI9PXR5cGVvZiBnJiYwPD1nJiYyNTU+PWcmJmc9PShnfDApKSl0aHJvdyBFcnJvcigibWVzc2FnZSBtdXN0IGJlIGEgYnl0ZSBhcnJheSIpO3RoaXMuTltkKytdPWc7ZD09dGhpcy5ibG9ja1NpemUmJih2aSh0aGlzKSxkPTApfWVsc2UgdGhyb3cgRXJyb3IoIm1lc3NhZ2UgbXVzdCBiZSBzdHJpbmcgb3IgYXJyYXkiKTsKfXRoaXMuSz1kO3RoaXMuUis9Yn07cGkucHJvdG90eXBlLmRpZ2VzdD1mdW5jdGlvbigpe3ZhciBhPVtdLGI9dGhpcy5SKjg7dGhpcy5LPDU2P3RoaXMudXBkYXRlKHVpLDU2LXRoaXMuSyk6dGhpcy51cGRhdGUodWksdGhpcy5ibG9ja1NpemUtKHRoaXMuSy01NikpO2Zvcih2YXIgYz02MztjPj01NjtjLS0pdGhpcy5OW2NdPWImMjU1LGIvPTI1Njt2aSh0aGlzKTtmb3IodmFyIGQ9MCxlPTA7ZTx0aGlzLmZhO2UrKylmb3IodmFyIGY9MjQ7Zj49MDtmLT04KWFbZCsrXT10aGlzLkhbZV0+PmYmMjU1O3JldHVybiBhfTsKdmFyIHJpPVsxMTE2MzUyNDA4LDE4OTk0NDc0NDEsMzA0OTMyMzQ3MSwzOTIxMDA5NTczLDk2MTk4NzE2MywxNTA4OTcwOTkzLDI0NTM2MzU3NDgsMjg3MDc2MzIyMSwzNjI0MzgxMDgwLDMxMDU5ODQwMSw2MDcyMjUyNzgsMTQyNjg4MTk4NywxOTI1MDc4Mzg4LDIxNjIwNzgyMDYsMjYxNDg4ODEwMywzMjQ4MjIyNTgwLDM4MzUzOTA0MDEsNDAyMjIyNDc3NCwyNjQzNDcwNzgsNjA0ODA3NjI4LDc3MDI1NTk4MywxMjQ5MTUwMTIyLDE1NTUwODE2OTIsMTk5NjA2NDk4NiwyNTU0MjIwODgyLDI4MjE4MzQzNDksMjk1Mjk5NjgwOCwzMjEwMzEzNjcxLDMzMzY1NzE4OTEsMzU4NDUyODcxMSwxMTM5MjY5OTMsMzM4MjQxODk1LDY2NjMwNzIwNSw3NzM1Mjk5MTIsMTI5NDc1NzM3MiwxMzk2MTgyMjkxLDE2OTUxODM3MDAsMTk4NjY2MTA1MSwyMTc3MDI2MzUwLDI0NTY5NTYwMzcsMjczMDQ4NTkyMSwyODIwMzAyNDExLDMyNTk3MzA4MDAsMzM0NTc2NDc3MSwzNTE2MDY1ODE3LDM2MDAzNTI4MDQsCjQwOTQ1NzE5MDksMjc1NDIzMzQ0LDQzMDIyNzczNCw1MDY5NDg2MTYsNjU5MDYwNTU2LDg4Mzk5Nzg3Nyw5NTgxMzk1NzEsMTMyMjgyMjIxOCwxNTM3MDAyMDYzLDE3NDc4NzM3NzksMTk1NTU2MjIyMiwyMDI0MTA0ODE1LDIyMjc3MzA0NTIsMjM2MTg1MjQyNCwyNDI4NDM2NDc0LDI3NTY3MzQxODcsMzIwNDAzMTQ3OSwzMzI5MzI1Mjk4XSxxaTtmdW5jdGlvbiB3aSgpe3BpLmNhbGwodGhpcyw4LHhpKX1TYSh3aSxwaSk7dmFyIHhpPVsxNzc5MDMzNzAzLDMxNDQxMzQyNzcsMTAxMzkwNDI0MiwyNzczNDgwNzYyLDEzNTk4OTMxMTksMjYwMDgyMjkyNCw1Mjg3MzQ2MzUsMTU0MTQ1OTIyNV07dmFyIHlpPS9eWzAtOUEtRmEtZl17NjR9JC87ZnVuY3Rpb24gemkoYSl7dHJ5e3JldHVybihuZXcgVGV4dEVuY29kZXIpLmVuY29kZShhKX1jYXRjaChiKXtyZXR1cm4gWmIoYSl9fWZ1bmN0aW9uIEFpKGEpe3ZhciBiPUE7aWYoYT09PSIifHxhPT09ImUwIilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGEpO3ZhciBjO2lmKChjPWIuY3J5cHRvKT09bnVsbD8wOmMuc3VidGxlKXtpZih5aS50ZXN0KGEpKXJldHVybiBQcm9taXNlLnJlc29sdmUoYSk7dHJ5e3ZhciBkPXppKGEpO3JldHVybiBiLmNyeXB0by5zdWJ0bGUuZGlnZXN0KCJTSEEtMjU2IixkKS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBCaShlLGIpfSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4iZTIifSl9Y2F0Y2goZSl7cmV0dXJuIFByb21pc2UucmVzb2x2ZSgiZTIiKX19ZWxzZSByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCJlMSIpfQpmdW5jdGlvbiBDaShhKXt0cnl7dmFyIGI9bmV3IHdpO2IudXBkYXRlKHppKGEpKTtyZXR1cm4gYi5kaWdlc3QoKX1jYXRjaChjKXtyZXR1cm4iZTIifX1mdW5jdGlvbiBEaShhKXt2YXIgYj1BO2lmKGE9PT0iInx8YT09PSJlMCJ8fHlpLnRlc3QoYSkpcmV0dXJuIGE7dmFyIGM9Q2koYSk7aWYoYz09PSJlMiIpcmV0dXJuImUyIjt0cnl7cmV0dXJuIEJpKGMsYil9Y2F0Y2goZCl7cmV0dXJuImUyIn19ZnVuY3Rpb24gQmkoYSxiKXt2YXIgYz1BcnJheS5mcm9tKG5ldyBVaW50OEFycmF5KGEpKS5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUoZCl9KS5qb2luKCIiKTtyZXR1cm4gYi5idG9hKGMpLnJlcGxhY2UoL1wrL2csIi0iKS5yZXBsYWNlKC9cLy9nLCJfIikucmVwbGFjZSgvPSskLywiIil9O2Z1bmN0aW9uIEVpKCl7Zm9yKHZhciBhPSExLGI9ITEsYz0wO2E9PT1iOylpZihhPURiKDAsMSk9PT0wLGI9RGIoMCwxKT09PTAsYysrLGM+MzApcmV0dXJuO3JldHVybiBhfXZhciBHaT17c2s6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBGaS5zayhhLGIsYyl9fSxIaT1mdW5jdGlvbigpe3RoaXMuc3R1ZGllcz17fTt0aGlzLkg9RWl9OwpIaS5wcm90b3R5cGUuc2s9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMuc3R1ZGllc1tiXTtpZighKChjPT09dm9pZCAwP0RiKDAsOTk5OSk6YyUxRTQpPGQucHJvYmFiaWxpdHkqKGQuY29udHJvbElkMj80OjIpKjFFNCkpcmV0dXJuIGE7YTp7dmFyIGU9ZC5zdHVkeUlkLGY9ZC5leHBlcmltZW50SWQsZz1kLmNvbnRyb2xJZCxoPWQuY29udHJvbElkMjtpZighKChhLmV4cHx8e30pW2ZdfHwoYS5leHB8fHt9KVtnXXx8aCYmKGEuZXhwfHx7fSlbaF0pKXt2YXIgbD1jIT09dm9pZCAwP2MlMj09PTA6dGhpcy5IKCk7aWYobCE9PXZvaWQgMCl7dmFyIG49bD8wOjE7aWYoaCl7dmFyIHA9YyE9PXZvaWQgMD8oYz4+MSklMj09PTA6dGhpcy5IKCk7aWYocD09PXZvaWQgMClicmVhayBhO258PShwPzA6MSk8PDF9bj09PTA/SWkoYSxmLGUpOm49PT0xP0lpKGEsZyxlKTpuPT09MiYmSWkoYSxoLGUpfX19cmV0dXJuIGF9Owp2YXIgS2k9ZnVuY3Rpb24oYSxiKXt2YXIgYz1GaTtyZXR1cm4gYy5zdHVkaWVzW2JdP0ppKGMsYil8fCEhKGEuZXhwfHx7fSlbYy5zdHVkaWVzW2JdLmV4cGVyaW1lbnRJZF06ITF9LExpPWZ1bmN0aW9uKGEsYil7dmFyIGM9Rmk7cmV0dXJuIGMuc3R1ZGllc1tiXSYmYy5zdHVkaWVzW2JdLmNvbnRyb2xJZCYmIUppKGMsYik/ISEoYS5leHB8fHt9KVtjLnN0dWRpZXNbYl0uY29udHJvbElkXTohMX0sTWk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1GaTtyZXR1cm4gYy5zdHVkaWVzW2JdJiZjLnN0dWRpZXNbYl0uY29udHJvbElkMiYmIUppKGMsYik/ISEoYS5leHB8fHt9KVtjLnN0dWRpZXNbYl0uY29udHJvbElkMl06ITF9LE5pPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWEuZXhwfHx7fSxkPW0oT2JqZWN0LmtleXMoYykubWFwKE51bWJlcikpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO2lmKGNbZl09PT1iKXJldHVybiBmfX0sSmk9ZnVuY3Rpb24oYSwKYil7cmV0dXJuISFhLnN0dWRpZXNbYl0uYWN0aXZlfHxhLnN0dWRpZXNbYl0ucHJvYmFiaWxpdHk+LjV9LElpPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLmV4cHx8e307ZFtiXT1jO2EuZXhwPWR9LEZpPW5ldyBIaTt2YXIgaWo9ZnVuY3Rpb24oKXt0aGlzLkg9QS5nb29nbGVfdGFnX21hbmFnZXI9QS5nb29nbGVfdGFnX21hbmFnZXJ8fHt9fSxqajtmdW5jdGlvbiBraihhLGIpe2xqKCk7dmFyIGM9amo7cmV0dXJuIGMuSFthXT1jLkhbYV18fGIoKX1mdW5jdGlvbiBtaihhKXtsaigpO3JldHVybiBqai5IW2FdfWZ1bmN0aW9uIG5qKGEsYil7bGooKTtqai5IW2FdPWJ9ZnVuY3Rpb24gb2ooYSl7dmFyIGI9RSg1KTtsaigpO3ZhciBjPWpqO2MuSFtiXT1jLkhbYl18fGF9ZnVuY3Rpb24gcGooKXt2YXIgYT1FKDE5KTtsaigpO3ZhciBiPWpqO3JldHVybiBiLkhbYV09Yi5IW2FdfHx7fX1mdW5jdGlvbiBxaigpe3ZhciBhPUUoMTkpO2xqKCk7cmV0dXJuIGpqLkhbYV19ZnVuY3Rpb24gcmooKXtsaigpO3ZhciBhPWpqLGI9YS5ILnNlcXVlbmNlfHwxO2EuSC5zZXF1ZW5jZT1iKzE7cmV0dXJuIGJ9ZnVuY3Rpb24gbGooKXtqanx8KGpqPW5ldyBpail9O3ZhciBzaj1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAxOnJldHVybiAwO2Nhc2UgNDkxOnJldHVybiAxMjtjYXNlIDQ4MDpyZXR1cm4gMTE7Y2FzZSA0OTk6cmV0dXJuIDEwO2Nhc2UgNTAwOnJldHVybiA2O2Nhc2UgNDIxOnJldHVybiA5O2Nhc2UgNTYxOnJldHVybiAxNztjYXNlIDQ4MjpyZXR1cm4gMTU7Y2FzZSA1NzA6cmV0dXJuIDE5O2Nhc2UgNDk1OnJldHVybiAxMztjYXNlIDUxNDpyZXR1cm4gMTY7Y2FzZSA1NzM6cmV0dXJuIDE4O2Nhc2UgMjM1OnJldHVybiA4O2Nhc2UgNTM6cmV0dXJuIDE7Y2FzZSA1NDpyZXR1cm4gMjtjYXNlIDUyOnJldHVybiA0O2Nhc2UgNzU6cmV0dXJuIDN9fSx0aj1mdW5jdGlvbihhLGIpe2EuTltiXT0hMDt2YXIgYz1zaihiKTtjIT09dm9pZCAwJiYoV2ZbY109ITApfSxNPWZ1bmN0aW9uKGEpe3JldHVybiEhdWouTlthXX0sdWo9bmV3IGZ1bmN0aW9uKCl7dGhpcy5OPVtdO3RoaXMuSz1bXTt0aGlzLkg9W107CnRqKHRoaXMsMTMyKTt2YXIgYT1OZig2LDZFNCk7WGZbMV09YTt2YXIgYj1OZig3LDEpO1hmWzNdPWI7dmFyIGM9TmYoMzUsNTApO1hmWzJdPWM7dmFyIGQ9TmYoNjksMTc3NjQ0ODkyMCk7WGZbNF09ZDsKdGoodGhpcyw0MzUpO3RqKHRoaXMsMTQxKTsKfTt2YXIgdmo9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IFNldDt0aGlzLks9bmV3IFNldH0seGo9ZnVuY3Rpb24oYSl7dmFyIGI9d2ouSDthPWE9PT12b2lkIDA/W106YTt2YXIgYz1bXS5jb25jYXQodyhiLkgpKS5jb25jYXQoW10uY29uY2F0KHcoYi5LKSkpLmNvbmNhdChhKTtjLnNvcnQoZnVuY3Rpb24oZCxlKXtyZXR1cm4gZC1lfSk7cmV0dXJuIGN9LHlqPWZ1bmN0aW9uKCl7dmFyIGE9W10uY29uY2F0KHcod2ouSC5IKSk7YS5zb3J0KGZ1bmN0aW9uKGIsYyl7cmV0dXJuIGItY30pO3JldHVybiBhfSx6aj1mdW5jdGlvbigpe3ZhciBhPXdqLkgsYj1FKDQ0KTthLkg9bmV3IFNldDtpZihiIT09IiIpZm9yKHZhciBjPW0oYi5zcGxpdCgifiIpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9TnVtYmVyKGQudmFsdWUpO2lzTmFOKGUpfHxhLkguYWRkKGUpfX07dmFyIEFqPXt9LEJqPXtfX2NsOjEsX19lY2w6MSxfX2VobDoxLF9fZXZsOjEsX19mYWw6MSxfX2ZpbDoxLF9fZnNsOjEsX19obDoxLF9famVsOjEsX19sY2w6MSxfX3NkbDoxLF9fdGw6MSxfX3l0bDoxfSxDaj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHtfX3BhdXNlZDoxLF9fdGc6MX0sQmopLERqLEVqPSExO0RqPUVqO3ZhciBGaj0iIjtBai5xaj1Gajt2YXIgd2o9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPW5ldyB2an07dmFyIEdqPS86WzAtOV0rJC8sSGo9L15cZCtcLmZsc1wuZG91YmxlY2xpY2tcLm5ldCQvO2Z1bmN0aW9uIElqKGEsYixjLGQpe3ZhciBlPUpqKGEsISFkLGIpLGYsZztyZXR1cm4gYz8oZz1lW2JdKSE9bnVsbD9nOltdOihmPWVbYl0pPT1udWxsP3ZvaWQgMDpmWzBdfWZ1bmN0aW9uIEpqKGEsYixjKXtmb3IodmFyIGQ9e30sZT1tKGEuc3BsaXQoIiYiKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPW0oZi52YWx1ZS5zcGxpdCgiPSIpKSxoPWcubmV4dCgpLnZhbHVlLGw9eWEoZyksbj1kZWNvZGVVUklDb21wb25lbnQoaC5yZXBsYWNlKC9cKy9nLCIgIikpO2lmKGM9PT12b2lkIDB8fG49PT1jKXt2YXIgcD1sLmpvaW4oIj0iKTtkW25dfHwoZFtuXT1bXSk7ZFtuXS5wdXNoKGI/cDpkZWNvZGVVUklDb21wb25lbnQocC5yZXBsYWNlKC9cKy9nLCIgIikpKX19cmV0dXJuIGR9CmZ1bmN0aW9uIEtqKGEpe3RyeXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGEpfWNhdGNoKGIpe319ZnVuY3Rpb24gTGooYSxiLGMsZCxlKXtiJiYoYj1TdHJpbmcoYikudG9Mb3dlckNhc2UoKSk7aWYoYj09PSJwcm90b2NvbCJ8fGI9PT0icG9ydCIpYS5wcm90b2NvbD1NaihhLnByb3RvY29sKXx8TWooQS5sb2NhdGlvbi5wcm90b2NvbCk7Yj09PSJwb3J0Ij9hLnBvcnQ9U3RyaW5nKE51bWJlcihhLmhvc3RuYW1lP2EucG9ydDpBLmxvY2F0aW9uLnBvcnQpfHwoYS5wcm90b2NvbD09PSJodHRwIj84MDphLnByb3RvY29sPT09Imh0dHBzIj80NDM6IiIpKTpiPT09Imhvc3QiJiYoYS5ob3N0bmFtZT0oYS5ob3N0bmFtZXx8QS5sb2NhdGlvbi5ob3N0bmFtZSkucmVwbGFjZShHaiwiIikudG9Mb3dlckNhc2UoKSk7cmV0dXJuIE5qKGEsYixjLGQsZSl9CmZ1bmN0aW9uIE5qKGEsYixjLGQsZSl7dmFyIGYsZz1NaihhLnByb3RvY29sKTtiJiYoYj1TdHJpbmcoYikudG9Mb3dlckNhc2UoKSk7c3dpdGNoKGIpe2Nhc2UgInVybF9ub19mcmFnbWVudCI6Zj1PaihhKTticmVhaztjYXNlICJwcm90b2NvbCI6Zj1nO2JyZWFrO2Nhc2UgImhvc3QiOmY9YS5ob3N0bmFtZS5yZXBsYWNlKEdqLCIiKS50b0xvd2VyQ2FzZSgpO2lmKGMpe3ZhciBoPS9ed3d3XGQqXC4vLmV4ZWMoZik7aCYmaFswXSYmKGY9Zi5zdWJzdHJpbmcoaFswXS5sZW5ndGgpKX1icmVhaztjYXNlICJwb3J0IjpmPVN0cmluZyhOdW1iZXIoYS5wb3J0KXx8KGc9PT0iaHR0cCI/ODA6Zz09PSJodHRwcyI/NDQzOiIiKSk7YnJlYWs7Y2FzZSAicGF0aCI6YS5wYXRobmFtZXx8YS5ob3N0bmFtZXx8c2IoIlRBR0dJTkciLDEpO2Y9YS5wYXRobmFtZS5zdWJzdHJpbmcoMCwxKT09PSIvIj9hLnBhdGhuYW1lOiIvIithLnBhdGhuYW1lO3ZhciBsPWYuc3BsaXQoIi8iKTsoZHx8W10pLmluZGV4T2YobFtsLmxlbmd0aC0KMV0pPj0wJiYobFtsLmxlbmd0aC0xXT0iIik7Zj1sLmpvaW4oIi8iKTticmVhaztjYXNlICJxdWVyeSI6Zj1hLnNlYXJjaC5yZXBsYWNlKCI/IiwiIik7ZSYmKGY9SWooZixlLCExKSk7YnJlYWs7Y2FzZSAiZXh0ZW5zaW9uIjp2YXIgbj1hLnBhdGhuYW1lLnNwbGl0KCIuIik7Zj1uLmxlbmd0aD4xP25bbi5sZW5ndGgtMV06IiI7Zj1mLnNwbGl0KCIvIilbMF07YnJlYWs7Y2FzZSAiZnJhZ21lbnQiOmY9YS5oYXNoLnJlcGxhY2UoIiMiLCIiKTticmVhaztkZWZhdWx0OmY9YSYmYS5ocmVmfXJldHVybiBmfWZ1bmN0aW9uIE1qKGEpe3JldHVybiBhP2EucmVwbGFjZSgiOiIsIiIpLnRvTG93ZXJDYXNlKCk6IiJ9ZnVuY3Rpb24gT2ooYSl7dmFyIGI9IiI7aWYoYSYmYS5ocmVmKXt2YXIgYz1hLmhyZWYuaW5kZXhPZigiIyIpO2I9YzwwP2EuaHJlZjphLmhyZWYuc3Vic3RyaW5nKDAsYyl9cmV0dXJuIGJ9dmFyIFBqPXt9LFFqPTA7CmZ1bmN0aW9uIFJqKGEpe3ZhciBiPVBqW2FdO2lmKCFiKXt2YXIgYz1CLmNyZWF0ZUVsZW1lbnQoImEiKTthJiYoYy5ocmVmPWEpO3ZhciBkPWMucGF0aG5hbWU7ZFswXSE9PSIvIiYmKGF8fHNiKCJUQUdHSU5HIiwxKSxkPSIvIitkKTt2YXIgZT1jLmhvc3RuYW1lLnJlcGxhY2UoR2osIiIpO2I9e2hyZWY6Yy5ocmVmLHByb3RvY29sOmMucHJvdG9jb2wsaG9zdDpjLmhvc3QsaG9zdG5hbWU6ZSxwYXRobmFtZTpkLHNlYXJjaDpjLnNlYXJjaCxoYXNoOmMuaGFzaCxwb3J0OmMucG9ydH07UWo8NSYmKFBqW2FdPWIsUWorKyl9cmV0dXJuIGJ9ZnVuY3Rpb24gU2ooYSxiLGMpe3ZhciBkPVJqKGEpO3JldHVybiBhYyhiLGQsYyl9CmZ1bmN0aW9uIFRqKGEpe3ZhciBiPVJqKEEubG9jYXRpb24uaHJlZiksYz1MaihiLCJob3N0IiwhMSk7aWYoYyYmYy5tYXRjaChIaikpe3ZhciBkPUxqKGIsInBhdGgiKTtpZihkKXt2YXIgZT1kLnNwbGl0KGErIj0iKTtpZihlLmxlbmd0aD4xKXJldHVybiBlWzFdLnNwbGl0KCI7IilbMF0uc3BsaXQoIj8iKVswXX19fTt2YXIgVWo9eyJodHRwczovL3d3dy5nb29nbGUuY29tIjoiL2ciLCJodHRwczovL3d3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSI6Ii9hcyIsImh0dHBzOi8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iOiIvZ3MifSxWaj1bIi9hcy9kL2NjbS9jb252ZXJzaW9uIiwiL2cvZC9jY20vY29udmVyc2lvbiIsIi9ncy9jY20vY29udmVyc2lvbiIsIi9kL2NjbS9mb3JtLWRhdGEiXTtmdW5jdGlvbiBXaigpe3JldHVybiBJZig0Nyk/SmYoNTQpIT09MTohMX1mdW5jdGlvbiBYaigpe3ZhciBhPUUoMTgpLGI9YS5sZW5ndGg7cmV0dXJuIGFbYi0xXT09PSIvIj9hLnN1YnN0cmluZygwLGItMSk6YX0KZnVuY3Rpb24gWWooYSxiKXtpZihhKXt2YXIgYz0iIithO2MuaW5kZXhPZigiaHR0cDovLyIpIT09MCYmYy5pbmRleE9mKCJodHRwczovLyIpIT09MCYmKGM9Imh0dHBzOi8vIitjKTtjW2MubGVuZ3RoLTFdPT09Ii8iJiYoYz1jLnN1YnN0cmluZygwLGMubGVuZ3RoLTEpKTtyZXR1cm4gUmooIiIrYytiKS5ocmVmfX1mdW5jdGlvbiBaaihhKXtpZihhaygpKXJldHVybiBZaihhLCIvYW5hbHl0aWNzLmpzIil9ZnVuY3Rpb24gYmsoYSl7cmV0dXJuIGE9PT0yfHxhPT09M31mdW5jdGlvbiBjayhhKXtyZXR1cm4gTSg1ODgpJiZhPT09M31mdW5jdGlvbiBhaygpe3JldHVybiBXaigpfHxJZig1MCl9ZnVuY3Rpb24gZGsoKXtyZXR1cm4hIUFqLnFqJiZBai5xai5zcGxpdCgiQEAiKS5qb2luKCIiKSE9PSJTR1RNX1RPS0VOIn0KZnVuY3Rpb24gZWsoYSl7Zm9yKHZhciBiPW0oW0YuRC5kZCxGLkQueWNdKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9TyhhLGMudmFsdWUpO2lmKGQpcmV0dXJuIGR9fWZ1bmN0aW9uIGZrKGEsYixjKXtjPWM9PT12b2lkIDA/IiI6YztpZighV2ooKSlyZXR1cm4gYTt2YXIgZD1iP1VqW2FdfHwiIjoiIjtkPT09Ii9ncyImJihjPSIiKTtyZXR1cm4iIitYaigpK2QrY31mdW5jdGlvbiBnayhhKXtpZihXaigpKWZvcih2YXIgYj1tKFZqKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTtpZihTYihhLCIiK1hqKCkrZCkpcmV0dXJuIjo6In19CmZ1bmN0aW9uIGhrKCl7dmFyIGE9QTtpZighYSlyZXR1cm4hMTt0cnl7aWYoYT09PWEudG9wKXJldHVybiExO3ZhciBiPWEubG9jYXRpb24ucGF0aG5hbWU7cmV0dXJuIGIuaW5kZXhPZigiL18vc2VydmljZV93b3JrZXIvIikhPT0tMSYmVGIoYiwiL3N3X2lmcmFtZS5odG1sIil9Y2F0Y2goYyl7cmV0dXJuITF9fTt2YXIgaWs9L2d0YWdbLlwvXWpzLyxqaz0vZ3RtWy5cL11qcy8sbGs9ZnVuY3Rpb24oYSl7dmFyIGI9a2s7aWYoKGEuc2NyaXB0Q29udGFpbmVySWR8fCIiKS5pbmRleE9mKCJHVE0tIik+PTApe3ZhciBjO2E6e3ZhciBkLGU9KGQ9YS5zY3JpcHRFbGVtZW50KT09bnVsbD92b2lkIDA6ZC5zcmM7aWYoZSl7Zm9yKHZhciBmPUlmKDQ3KSxnPVJqKGUpLGg9Zj9nLnBhdGhuYW1lOiIiK2cuaG9zdG5hbWUrZy5wYXRobmFtZSxsPUIuc2NyaXB0cyxuPSIiLHA9MDtwPGwubGVuZ3RoOysrcCl7dmFyIHE9bFtwXTtpZighKHEuaW5uZXJIVE1MLmxlbmd0aD09PTB8fCFmJiZxLmlubmVySFRNTC5pbmRleE9mKGEuc2NyaXB0Q29udGFpbmVySWR8fCJTSE9VTERfTk9UX0JFX1NFVCIpPDB8fHEuaW5uZXJIVE1MLmluZGV4T2YoaCk8MCkpe2lmKHEuaW5uZXJIVE1MLmluZGV4T2YoIihmdW5jdGlvbih3LGQscyxsLGkpIik+PTApe2M9U3RyaW5nKHApO2JyZWFrIGF9bj1TdHJpbmcocCl9fWlmKG4pe2M9Cm47YnJlYWsgYX19Yz12b2lkIDB9dmFyIHI9YztpZihyKXJldHVybiBiLkg9ITAscn12YXIgdD1bXS5zbGljZS5jYWxsKEIuc2NyaXB0cyk7cmV0dXJuIGEuc2NyaXB0RWxlbWVudD9TdHJpbmcodC5pbmRleE9mKGEuc2NyaXB0RWxlbWVudCkpOiItMSJ9LG1rPWZ1bmN0aW9uKGEpe2lmKGtrLkgpcmV0dXJuIjEiO3ZhciBiLGM9KGI9YS5zY3JpcHRFbGVtZW50KT09bnVsbD92b2lkIDA6Yi5zcmM7aWYoYyl7aWYoaWsudGVzdChjKSlyZXR1cm4iMyI7aWYoamsudGVzdChjKSlyZXR1cm4iMiJ9cmV0dXJuIjAifSxraz1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9ITF9O2Z1bmN0aW9uIFAoYSl7c2IoIkdUTSIsYSl9O2Z1bmN0aW9uIG5rKGEpe3ZhciBiPW9rKCkuZGVzdGluYXRpb25BcnJheVthXSxjPW9rKCkuZGVzdGluYXRpb25bYV07cmV0dXJuIGImJmIubGVuZ3RoPjA/YlswXTpjfWZ1bmN0aW9uIHBrKGEsYil7dmFyIGM9b2soKTtjLnBlbmRpbmd8fChjLnBlbmRpbmc9W10pO0NiKGMucGVuZGluZyxmdW5jdGlvbihkKXtyZXR1cm4gZC50YXJnZXQuY3RpZD09PWEuY3RpZCYmZC50YXJnZXQuaXNEZXN0aW5hdGlvbj09PWEuaXNEZXN0aW5hdGlvbn0pfHxjLnBlbmRpbmcucHVzaCh7dGFyZ2V0OmEsb25Mb2FkOmJ9KX1mdW5jdGlvbiBxaygpe3ZhciBhPUEuZ29vZ2xlX3RhZ3NfZmlyc3RfcGFydHk7QXJyYXkuaXNBcnJheShhKXx8KGE9W10pO2Zvcih2YXIgYj17fSxjPW0oYSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpYltkLnZhbHVlXT0hMDtyZXR1cm4gT2JqZWN0LmZyZWV6ZShiKX0KdmFyIHJrPWZ1bmN0aW9uKCl7dGhpcy5jb250YWluZXI9e307dGhpcy5kZXN0aW5hdGlvbj17fTt0aGlzLmRlc3RpbmF0aW9uQXJyYXk9e307dGhpcy5jYW5vbmljYWw9e307dGhpcy5wZW5kaW5nPVtdO3RoaXMuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVycz17fTt0aGlzLmluamVjdGVkRmlyc3RQYXJ0eUNvbnRhaW5lcnM9cWsoKX07CmZ1bmN0aW9uIG9rKCl7dmFyIGE9TWMoImdvb2dsZV90YWdfZGF0YSIse30pLGI9YS50aWRyO2ImJnR5cGVvZiBiPT09Im9iamVjdCJ8fChiPW5ldyByayxhLnRpZHI9Yik7dmFyIGM9YjtjLmNvbnRhaW5lcnx8KGMuY29udGFpbmVyPXt9KTtjLmRlc3RpbmF0aW9ufHwoYy5kZXN0aW5hdGlvbj17fSk7Yy5kZXN0aW5hdGlvbkFycmF5fHwoYy5kZXN0aW5hdGlvbkFycmF5PXt9KTtjLmNhbm9uaWNhbHx8KGMuY2Fub25pY2FsPXt9KTtjLnBlbmRpbmd8fChjLnBlbmRpbmc9W10pO2MuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVyc3x8KGMuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVycz1xaygpKTtyZXR1cm4gY307ZnVuY3Rpb24gc2soKXtyZXR1cm4gSWYoNykmJnRrKCkuc29tZShmdW5jdGlvbihhKXtyZXR1cm4gYT09PUUoNSl9KX1mdW5jdGlvbiB1aygpe3ZhciBhO3JldHVybihhPUtmKDU1KSkhPW51bGw/YTpbXX1mdW5jdGlvbiB2aygpe3JldHVybiBFKDYpfHwiXyIrRSg1KX1mdW5jdGlvbiB3aygpe3ZhciBhPUUoMTApO3JldHVybiBhP2Euc3BsaXQoInwiKTpbRSg1KV19ZnVuY3Rpb24gdGsoKXt2YXIgYT1LZig1OSk7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIHR5cGVvZiBiPT09InN0cmluZyJ9KS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGIuaW5kZXhPZigiR1RNLSIpIT09MH0pOltdfWZ1bmN0aW9uIHhrKCl7dmFyIGE9eWsoemsoKSksYj1hJiZhLnBhcmVudDtpZihiKXJldHVybiB5ayhiKX0KZnVuY3Rpb24gQWsoKXt2YXIgYT15ayh6aygpKTtpZihhKXtmb3IoO2EucGFyZW50Oyl7dmFyIGI9eWsoYS5wYXJlbnQpO2lmKCFiKWJyZWFrO2E9Yn1yZXR1cm4gYX19ZnVuY3Rpb24geWsoYSl7dmFyIGI9b2soKTtyZXR1cm4gYS5pc0Rlc3RpbmF0aW9uP25rKGEuY3RpZCk6Yi5jb250YWluZXJbYS5jdGlkXX1mdW5jdGlvbiBCaygpe3ZhciBhPW9rKCk7aWYoYS5wZW5kaW5nKXtmb3IodmFyIGIsYz1bXSxkPSExLGU9d2soKSxmPXRrKCksZz17fSxoPTA7aDxhLnBlbmRpbmcubGVuZ3RoO2c9e1JnOnZvaWQgMH0saCsrKWcuUmc9YS5wZW5kaW5nW2hdLENiKGcuUmcudGFyZ2V0LmlzRGVzdGluYXRpb24/ZjplLGZ1bmN0aW9uKGwpe3JldHVybiBmdW5jdGlvbihuKXtyZXR1cm4gbj09PWwuUmcudGFyZ2V0LmN0aWR9fShnKSk/ZHx8KGI9Zy5SZy5vbkxvYWQsZD0hMCk6Yy5wdXNoKGcuUmcpO2EucGVuZGluZz1jO2lmKGIpdHJ5e2IodmsoKSl9Y2F0Y2gobCl7fX19CmZ1bmN0aW9uIENrKCl7Zm9yKHZhciBhPUUoNSksYj13aygpLGM9dGsoKSxkPXVrKCksZT1mdW5jdGlvbihxLHIpe3ZhciB0PXtjYW5vbmljYWxDb250YWluZXJJZDpFKDYpLHNjcmlwdENvbnRhaW5lcklkOmEsc3RhdGU6Mixjb250YWluZXJzOmIuc2xpY2UoKSxkZXN0aW5hdGlvbnM6Yy5zbGljZSgpfTtKYyYmKHQuc2NyaXB0RWxlbWVudD1KYyk7S2MmJih0LnNjcmlwdFNvdXJjZT1LYyk7eGsoKT09PXZvaWQgMCYmKHQuaHRtbExvYWRPcmRlcj1sayh0KSx0LmxvYWRTY3JpcHRUeXBlPW1rKHQpKTt2YXIgdSx2O3N3aXRjaChyKXtjYXNlIDA6dT1mdW5jdGlvbih6KXtmLmNvbnRhaW5lcltxXT16fTt2PWYuY29udGFpbmVyW3FdO2JyZWFrO2Nhc2UgMTp1PWZ1bmN0aW9uKHope2YuZGVzdGluYXRpb25BcnJheVtxXT1mLmRlc3RpbmF0aW9uQXJyYXlbcV18fFtdO2YuZGVzdGluYXRpb25BcnJheVtxXS51bnNoaWZ0KHopfTt2YXIgeCx5PSgoeD1mLmRlc3RpbmF0aW9uQXJyYXlbcV0pPT0KbnVsbD92b2lkIDA6eFswXSl8fGYuZGVzdGluYXRpb25bcV07IXl8fHkuc3RhdGUhPT0wJiZ5LnN0YXRlIT09MXx8KHY9eSk7YnJlYWs7Y2FzZSAyOnU9ZnVuY3Rpb24oeil7Zi5kZXN0aW5hdGlvbkFycmF5W3FdPWYuZGVzdGluYXRpb25BcnJheVtxXXx8W107Zi5kZXN0aW5hdGlvbkFycmF5W3FdLnB1c2goeil9LHY9dm9pZCAwfXUmJih2Pyh2LnN0YXRlPT09MCYmUCg5MyksbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx2LHQpKTp1KHQpKX0sZj1vaygpLGc9bShiKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSllKGgudmFsdWUsMCk7Zm9yKHZhciBsPW0oYyksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7ZC5pbmNsdWRlcyhwKT9lKHAsMSk6ZShwLDIpfWYuY2Fub25pY2FsW3ZrKCldPXt9O0JrKCl9ZnVuY3Rpb24gRGsoKXt2YXIgYT12aygpO3JldHVybiEhb2soKS5jYW5vbmljYWxbYV19CmZ1bmN0aW9uIEVrKGEpe3JldHVybiEhb2soKS5jb250YWluZXJbYV19ZnVuY3Rpb24gRmsoKXt2YXIgYT16aygpLGI9eWsoYSk7cmV0dXJuIGImJmIuY29udGV4dH1mdW5jdGlvbiBHayhhKXt2YXIgYj1uayhhKTtyZXR1cm4gYj9iLnN0YXRlIT09MDohMX1mdW5jdGlvbiB6aygpe3JldHVybntjdGlkOkUoNSksaXNEZXN0aW5hdGlvbjpJZig3KX19ZnVuY3Rpb24gSGsoYSxiLGMpe3ZhciBkPXprKCksZT1vaygpLmNvbnRhaW5lclthXTtlJiZlLnN0YXRlIT09M3x8KG9rKCkuY29udGFpbmVyW2FdPXtzdGF0ZToxLGNvbnRleHQ6YixwYXJlbnQ6ZH0scGsoe2N0aWQ6YSxpc0Rlc3RpbmF0aW9uOiExfSxjKSl9ZnVuY3Rpb24gSWsoYSxiLGMpe3ZhciBkPW9rKCksZT1uayhhKTtlP2Uuc3RhdGU9MTooZT17Y29udGV4dDpiLHN0YXRlOjEscGFyZW50OnprKCl9LGQuZGVzdGluYXRpb25BcnJheVthXT1bZV0pO3BrKHtjdGlkOmEsaXNEZXN0aW5hdGlvbjohMH0sYyl9CmZ1bmN0aW9uIEprKGEsYixjLGQpe3ZhciBlPW9rKCksZj1uayhhKTtmP2Yuc3RhdGU9MDooZj17c3RhdGU6MCx0cmFuc3BvcnRVcmw6Yixjb250ZXh0OmMscGFyZW50OnprKCl9LGUuZGVzdGluYXRpb25BcnJheVthXT1bZl0pO3BrKHtjdGlkOmEsaXNEZXN0aW5hdGlvbjohMH0sZCk7UCg5MSl9ZnVuY3Rpb24gS2soKXt2YXIgYT1vaygpLmNvbnRhaW5lcixiO2ZvcihiIGluIGEpaWYoYS5oYXNPd25Qcm9wZXJ0eShiKSYmYVtiXS5zdGF0ZT09PTEpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gTGsoKXt2YXIgYT17fTtHYihvaygpLmRlc3RpbmF0aW9uLGZ1bmN0aW9uKGIsYyl7KGM9PW51bGw/dm9pZCAwOmMuc3RhdGUpPT09MCYmKGFbYl09Yyl9KTtHYihvaygpLmRlc3RpbmF0aW9uQXJyYXksZnVuY3Rpb24oYixjKXt2YXIgZD1jWzBdOyhkPT1udWxsP3ZvaWQgMDpkLnN0YXRlKT09PTAmJihhW2JdPWQpfSk7cmV0dXJuIGF9CmZ1bmN0aW9uIE1rKGEpe3JldHVybiEhKGEmJmEucGFyZW50JiZhLmNvbnRleHQmJmEuY29udGV4dC5zb3VyY2U9PT0xJiZhLnBhcmVudC5jdGlkLmluZGV4T2YoIkdUTS0iKSE9PTApfWZ1bmN0aW9uIE5rKCl7Zm9yKHZhciBhPW9rKCksYj1tKHdrKCkpLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWlmKGEuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVyc1tjLnZhbHVlXSlyZXR1cm4hMDtyZXR1cm4hMX07dmFyIE9rPWZ1bmN0aW9uKCl7fTtPay5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4idW5kZWZpbmVkIn07dmFyIFBrPW5ldyBPazt2YXIgWGs9ZnVuY3Rpb24oKXt0aGlzLnN0b3JhZ2U9WWEoKX07WGsucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuc3RvcmFnZS5zZXQoU3RyaW5nKGEpLGIpfTtYay5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnN0b3JhZ2UuZ2V0KFN0cmluZyhhKSl9O3ZhciBZaztmdW5jdGlvbiBaayhhLGIpe1lrfHwoWWs9bmV3IFhrKTtZay5zZXQoYSxiKX1mdW5jdGlvbiAkayhhKXtZa3x8KFlrPW5ldyBYayk7cmV0dXJuIFlrLmdldChhKX1mdW5jdGlvbiBhbChhLGIpe1lrfHwoWWs9bmV3IFhrKTt2YXIgYz1ZaztjLnN0b3JhZ2UuaGFzKFN0cmluZyhhKSl8fGMuc3RvcmFnZS5zZXQoU3RyaW5nKGEpLGIoKSk7cmV0dXJuIGMuc3RvcmFnZS5nZXQoU3RyaW5nKGEpKX07ZnVuY3Rpb24gYmwoYSxiKXtmdW5jdGlvbiBjKGcpe3ZhciBoPVJqKGcpLGw9TGooaCwicHJvdG9jb2wiKSxuPUxqKGgsImhvc3QiLCEwKSxwPUxqKGgsInBvcnQiKSxxPUxqKGgsInBhdGgiKS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL1wvJC8sIiIpO2lmKGw9PT12b2lkIDB8fGw9PT0iaHR0cCImJnA9PT0iODAifHxsPT09Imh0dHBzIiYmcD09PSI0NDMiKWw9IndlYiIscD0iZGVmYXVsdCI7cmV0dXJuW2wsbixwLHFdfWZvcih2YXIgZD1jKFN0cmluZyhhKSksZT1jKFN0cmluZyhiKSksZj0wO2Y8ZC5sZW5ndGg7ZisrKWlmKGRbZl0hPT1lW2ZdKXJldHVybiExO3JldHVybiEwfWZ1bmN0aW9uIGNsKGEpe3JldHVybiBkbChhKT8xOjB9CmZ1bmN0aW9uIGRsKGEpe3ZhciBiPWEuYXJnMCxjPWEuYXJnMTtpZihhLmFueV9vZiYmQXJyYXkuaXNBcnJheShjKSl7Zm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPUVkKGEse30pO0VkKHthcmcxOmNbZF0sYW55X29mOnZvaWQgMH0sZSk7aWYoY2woZSkpcmV0dXJuITB9cmV0dXJuITF9c3dpdGNoKGFbImZ1bmN0aW9uIl0pe2Nhc2UgIl9jbiI6cmV0dXJuIEtnKGIsYyk7Y2FzZSAiX2NzcyI6cmV0dXJuIEdnKGIsYyk7Y2FzZSAiX2V3IjpyZXR1cm4gSGcoYixjKTtjYXNlICJfZXEiOnJldHVybiBMZyhiLGMpO2Nhc2UgIl9nZSI6cmV0dXJuIE1nKGIsYyk7Y2FzZSAiX2d0IjpyZXR1cm4gT2coYixjKTtjYXNlICJfbGMiOnJldHVybiBJZyhiLGMpO2Nhc2UgIl9sZSI6cmV0dXJuIE5nKGIsYyk7Y2FzZSAiX2x0IjpyZXR1cm4gUGcoYixjKTtjYXNlICJfcmUiOnJldHVybiBKZyhiLGMsYS5pZ25vcmVfY2FzZSxhbCgzLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KSk7Y2FzZSAiX3N3IjpyZXR1cm4gUWcoYiwKYyk7Y2FzZSAiX3VtIjpyZXR1cm4gYmwoYixjKX1yZXR1cm4hMX07ZnVuY3Rpb24gZWwoYSxiLGMsZCxlKXtpZihBcnJheS5pc0FycmF5KGEpKXt2YXIgZjtzd2l0Y2goYVswXSl7Y2FzZSAiZnVuY3Rpb25faWQiOnJldHVybiBhWzFdO2Nhc2UgImxpc3QiOmY9W107Zm9yKHZhciBnPTE7ZzxhLmxlbmd0aDtnKyspZi5wdXNoKGVsKGFbZ10sYixjLGQsZSkpO3JldHVybiBmO2Nhc2UgIm1hY3JvIjp2YXIgaD1kW2FbMV1dO3JldHVybiBoP2guZXZhbHVhdGUoYixlKTp2b2lkIDA7Y2FzZSAibWFwIjpmPXt9O2Zvcih2YXIgbD0xO2w8YS5sZW5ndGg7bCs9MilmW2VsKGFbbF0sYixjLGQsZSldPWVsKGFbbCsxXSxiLGMsZCxlKTtyZXR1cm4gZjtjYXNlICJ0ZW1wbGF0ZSI6Zj1bXTtmb3IodmFyIG49ITEscD0xO3A8YS5sZW5ndGg7cCsrKXt2YXIgcT1lbChhW3BdLGIsYyxkLGUpO2YucHVzaChxKX1yZXR1cm4gZi5qb2luKCIiKTtjYXNlICJlc2NhcGUiOmY9ZWwoYVsxXSxiLGMsZCxlKTtmPVN0cmluZyhmKTtmb3IodmFyIHk9Mjt5PGEubGVuZ3RoO3krKylVaVthW3ldXSYmKGY9VWlbYVt5XV0oZikpO3JldHVybiBmO2Nhc2UgInRhZyI6dmFyIHo9YVsxXTtpZighY1t6XSl0aHJvdyBFcnJvcigiVW5hYmxlIHRvIHJlc29sdmUgdGFnIHJlZmVyZW5jZSAiKwp6KyIuIik7cmV0dXJue2JvOmFbMl0saW5kZXg6en07Y2FzZSAiemIiOnZhciBDPXt9LEQ9KENbR2YuWWJdPWFbMV0sQy5hcmcwPWVsKGFbMl0sYixjLGQsZSksQy5hcmcxPWVsKGFbM10sYixjLGQsZSksQy5pZ25vcmVfY2FzZT1lbChhWzVdLGIsYyxkLGUpLEMpLEk9Y2woRCksRz0hIWFbNF07cmV0dXJuIEd8fEkhPT0yP0chPT0oST09PTEpOm51bGw7ZGVmYXVsdDp0aHJvdyBFcnJvcigiQXR0ZW1wdGluZyB0byBleHBhbmQgdW5rbm93biBWYWx1ZSB0eXBlOiAiK2FbMF0rIi4iKTt9fXJldHVybiBhfTtmdW5jdGlvbiBmbChhKXtyZXR1cm4gYSYmYS5pbmRleE9mKCJwZW5kaW5nOiIpPT09MD9nbChhLnN1YnN0cig4KSk6ITF9ZnVuY3Rpb24gZ2woYSl7aWYoYT09bnVsbHx8YS5sZW5ndGg9PT0wKXJldHVybiExO3ZhciBiPU51bWJlcihhKSxjPU5iKCk7cmV0dXJuIGI8YyszRTUmJmI+Yy05RTV9O3ZhciBobD0hMSxpbD0hMSxqbD0hMSxrbD0wLGxsPSExLG1sPXZvaWQgMCxubD1bXTtmdW5jdGlvbiBvbChhKXtpZihrbD09PTApbGwmJm5sJiYobmwubGVuZ3RoPj0xMDAmJm5sLnNoaWZ0KCksbmwucHVzaChhKSk7ZWxzZSBpZihwbCgpKXt2YXIgYj1FKDQxKSxjPU1jKGIsW10pO2MubGVuZ3RoPj01MCYmYy5zaGlmdCgpO2MucHVzaChhKX19ZnVuY3Rpb24gcWwoKXtpbHx8KHJsKCksc2woa2wpKX1mdW5jdGlvbiBzbChhKXtpZighaWx8fGtsPT09MiYmYT09PTEpaWYoaWw9ITAsamwmJihhZChCLCJUQVByb2REZWJ1Z1NpZ25hbCIscWwpLGpsPSExKSxtbCE9PXZvaWQgMCYmKEEuY2xlYXJUaW1lb3V0KG1sKSxtbD12b2lkIDApLGtsPWEsYT09PTEpe3ZhciBiPW5sO25sPXZvaWQgMDtiPT1udWxsfHxiLmZvckVhY2goZnVuY3Rpb24oYyl7b2woYyl9KX19CmZ1bmN0aW9uIHJsKCl7dmFyIGE9Qi5kb2N1bWVudEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLXRhZy1hc3Npc3RhbnQtcHJvZC1wcmVzZW50Iik7Z2woYSk/a2w9MTohZmwoYSl8fGhsfHxqbD9rbD0yOihqbD0hMCwkYyhCLCJUQVByb2REZWJ1Z1NpZ25hbCIscWwsITEpLG1sPUEuc2V0VGltZW91dChmdW5jdGlvbigpe2lsfHwocmwoKSxzbChrbCkpO2hsPSEwfSwyMDApKX1mdW5jdGlvbiBwbCgpe2lmKCFsbClyZXR1cm4hMTtzd2l0Y2goa2wpe2Nhc2UgMTpjYXNlIDA6cmV0dXJuITA7Y2FzZSAyOnJldHVybiExO2RlZmF1bHQ6cmV0dXJuITF9fTtmdW5jdGlvbiB0bCgpe3ZhciBhPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KTtyZXR1cm4gYS5pY3M9YS5pY3N8fG5ldyB1bH12YXIgdWw9ZnVuY3Rpb24oKXt0aGlzLmVudHJpZXM9e307dGhpcy53YWl0UGVyaW9kVGltZWRPdXQ9dGhpcy53YXNTZXRMYXRlPXRoaXMuYWNjZXNzZWRBbnk9dGhpcy5hY2Nlc3NlZERlZmF1bHQ9dGhpcy51c2VkSW1wbGljaXQ9dGhpcy51c2VkVXBkYXRlPXRoaXMudXNlZERlZmF1bHQ9dGhpcy51c2VkRGVjbGFyZT10aGlzLmFjdGl2ZT0hMTt0aGlzLkg9W119Owp1bC5wcm90b3R5cGUuZGVmYXVsdD1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXt0aGlzLnVzZWREZWZhdWx0fHx0aGlzLnVzZWREZWNsYXJlfHwhdGhpcy5hY2Nlc3NlZERlZmF1bHQmJiF0aGlzLmFjY2Vzc2VkQW55fHwodGhpcy53YXNTZXRMYXRlPSEwKTt0aGlzLnVzZWREZWZhdWx0PXRoaXMuYWN0aXZlPSEwO3NiKCJUQUdHSU5HIiwxOSk7Yj09bnVsbD9zYigiVEFHR0lORyIsMTgpOnZsKHRoaXMsYSxiPT09ImdyYW50ZWQiLGMsZCxlLGYsZyl9O3VsLnByb3RvdHlwZS53YWl0Rm9yVXBkYXRlPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGEubGVuZ3RoO2QrKyl2bCh0aGlzLGFbZF0sdm9pZCAwLHZvaWQgMCwiIiwiIixiLGMpfTsKdmFyIHZsPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCl7dmFyIGw9YS5lbnRyaWVzLG49bFtiXXx8e30scD1uLnJlZ2lvbixxPWQmJnpiKGQpP2QudG9VcHBlckNhc2UoKTp2b2lkIDA7ZT1lLnRvVXBwZXJDYXNlKCk7Zj1mLnRvVXBwZXJDYXNlKCk7aWYoZT09PSIifHxxPT09Znx8KHE9PT1lP3AhPT1mOiFxJiYhcCkpe3ZhciByPSEhKGcmJmc+MCYmbi51cGRhdGU9PT12b2lkIDApLHQ9e3JlZ2lvbjpxLGRlY2xhcmVfcmVnaW9uOm4uZGVjbGFyZV9yZWdpb24saW1wbGljaXQ6bi5pbXBsaWNpdCxkZWZhdWx0OmMhPT12b2lkIDA/YzpuLmRlZmF1bHQsZGVjbGFyZTpuLmRlY2xhcmUsdXBkYXRlOm4udXBkYXRlLHF1aWV0OnJ9O2lmKGUhPT0iInx8bi5kZWZhdWx0IT09ITEpbFtiXT10O3ImJkEuc2V0VGltZW91dChmdW5jdGlvbigpe2xbYl09PT10JiZ0LnF1aWV0JiYoc2IoIlRBR0dJTkciLDIpLGEud2FpdFBlcmlvZFRpbWVkT3V0PSEwLGEuY2xlYXJUaW1lb3V0KGIsdm9pZCAwLGgpLAphLm5vdGlmeUxpc3RlbmVycygpKX0sZyl9fTtrPXVsLnByb3RvdHlwZTtrLmNsZWFyVGltZW91dD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W2FdLGU9Yy5kZWxlZ2F0ZWRDb25zZW50VHlwZXMsZjtmb3IoZiBpbiBlKWUuaGFzT3duUHJvcGVydHkoZikmJmVbZl09PT1hJiZkLnB1c2goZik7dmFyIGc9dGhpcy5lbnRyaWVzW2FdfHx7fSxoPXRoaXMuZ2V0Q29uc2VudFN0YXRlKGEsYyk7aWYoZy5xdWlldCl7Zy5xdWlldD0hMTtmb3IodmFyIGw9bShkKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl3bCh0aGlzLG4udmFsdWUpfWVsc2UgaWYoYiE9PXZvaWQgMCYmaCE9PWIpZm9yKHZhciBwPW0oZCkscT1wLm5leHQoKTshcS5kb25lO3E9cC5uZXh0KCkpd2wodGhpcyxxLnZhbHVlKX07CmsudXBkYXRlPWZ1bmN0aW9uKGEsYixjKXt0aGlzLnVzZWREZWZhdWx0fHx0aGlzLnVzZWREZWNsYXJlfHx0aGlzLnVzZWRVcGRhdGV8fCF0aGlzLmFjY2Vzc2VkQW55fHwodGhpcy53YXNTZXRMYXRlPSEwKTt0aGlzLnVzZWRVcGRhdGU9dGhpcy5hY3RpdmU9ITA7aWYoYiE9bnVsbCl7dmFyIGQ9dGhpcy5nZXRDb25zZW50U3RhdGUoYSxjKSxlPXRoaXMuZW50cmllczsoZVthXT1lW2FdfHx7fSkudXBkYXRlPWI9PT0iZ3JhbnRlZCI7dGhpcy5jbGVhclRpbWVvdXQoYSxkLGMpfX07CmsuZGVjbGFyZT1mdW5jdGlvbihhLGIsYyxkLGUpe3RoaXMudXNlZERlY2xhcmU9dGhpcy5hY3RpdmU9ITA7dmFyIGY9dGhpcy5lbnRyaWVzLGc9ZlthXXx8e30saD1nLmRlY2xhcmVfcmVnaW9uLGw9YyYmemIoYyk/Yy50b1VwcGVyQ2FzZSgpOnZvaWQgMDtkPWQudG9VcHBlckNhc2UoKTtlPWUudG9VcHBlckNhc2UoKTtpZihkPT09IiJ8fGw9PT1lfHwobD09PWQ/aCE9PWU6IWwmJiFoKSl7dmFyIG49e3JlZ2lvbjpnLnJlZ2lvbixkZWNsYXJlX3JlZ2lvbjpsLGRlY2xhcmU6Yj09PSJncmFudGVkIixpbXBsaWNpdDpnLmltcGxpY2l0LGRlZmF1bHQ6Zy5kZWZhdWx0LHVwZGF0ZTpnLnVwZGF0ZSxxdWlldDpnLnF1aWV0fTtpZihkIT09IiJ8fGcuZGVjbGFyZSE9PSExKWZbYV09bn19OwprLmltcGxpY2l0PWZ1bmN0aW9uKGEsYil7dGhpcy51c2VkSW1wbGljaXQ9ITA7dmFyIGM9dGhpcy5lbnRyaWVzLGQ9Y1thXT1jW2FdfHx7fTtkLmltcGxpY2l0IT09ITEmJihkLmltcGxpY2l0PWI9PT0iZ3JhbnRlZCIpfTsKay5nZXRDb25zZW50U3RhdGU9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLmVudHJpZXMsZD1jW2FdfHx7fSxlPWQudXBkYXRlO2lmKGUhPT12b2lkIDApcmV0dXJuIGU/MToyO2lmKGIudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzKXt2YXIgZj1iLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzW2FdO2lmKGY9PT0zKXJldHVybiAxO2lmKGY9PT0yKXJldHVybiAyfWVsc2UgaWYoZT1kLmRlZmF1bHQsZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7aWYoYj09bnVsbD8wOmIuZGVsZWdhdGVkQ29uc2VudFR5cGVzLmhhc093blByb3BlcnR5KGEpKXt2YXIgZz1iLmRlbGVnYXRlZENvbnNlbnRUeXBlc1thXSxoPWNbZ118fHt9O2U9aC51cGRhdGU7aWYoZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7aWYoYi51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHMpe3ZhciBsPWIuY29udGFpbmVyU2NvcGVkRGVmYXVsdHNbZ107aWYobD09PTMpcmV0dXJuIDE7aWYobD09PTIpcmV0dXJuIDJ9ZWxzZSBpZihlPQpoLmRlZmF1bHQsZSE9PXZvaWQgMClyZXR1cm4gZT8xOjJ9ZT1kLmRlY2xhcmU7aWYoZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7ZT1kLmltcGxpY2l0O3JldHVybiBlIT09dm9pZCAwP2U/Mzo0OjB9O2suYWRkTGlzdGVuZXI9ZnVuY3Rpb24oYSxiKXt0aGlzLkgucHVzaCh7Y29uc2VudFR5cGVzOmEsaWU6Yn0pfTt2YXIgd2w9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9MDtjPGEuSC5sZW5ndGg7KytjKXt2YXIgZD1hLkhbY107QXJyYXkuaXNBcnJheShkLmNvbnNlbnRUeXBlcykmJmQuY29uc2VudFR5cGVzLmluZGV4T2YoYikhPT0tMSYmKGQueG89ITApfX07dWwucHJvdG90eXBlLm5vdGlmeUxpc3RlbmVycz1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wO2M8dGhpcy5ILmxlbmd0aDsrK2Mpe3ZhciBkPXRoaXMuSFtjXTtpZihkLnhvKXtkLnhvPSExO3RyeXtkLmllKHtjb25zZW50RXZlbnRJZDphLGNvbnNlbnRQcmlvcml0eUlkOmJ9KX1jYXRjaChlKXt9fX19O3ZhciB4bD0hMSx5bD0hMSx6bD17fSxBbD17ZGVsZWdhdGVkQ29uc2VudFR5cGVzOnt9LGNvcmVQbGF0Zm9ybVNlcnZpY2VzOnt9LHVzZWRDb3JlUGxhdGZvcm1TZXJ2aWNlczohMSxzZWxlY3RlZEFsbENvcmVQbGF0Zm9ybVNlcnZpY2VzOiExLGNvbnRhaW5lclNjb3BlZERlZmF1bHRzOih6bC5hZF9zdG9yYWdlPTEsemwuYW5hbHl0aWNzX3N0b3JhZ2U9MSx6bC5hZF91c2VyX2RhdGE9MSx6bC5hZF9wZXJzb25hbGl6YXRpb249MSx6bCksdXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzOiExfTtmdW5jdGlvbiBCbChhKXt2YXIgYj10bCgpO2IuYWNjZXNzZWRBbnk9ITA7cmV0dXJuKHpiKGEpP1thXTphKS5ldmVyeShmdW5jdGlvbihjKXtzd2l0Y2goYi5nZXRDb25zZW50U3RhdGUoYyxBbCkpe2Nhc2UgMTpjYXNlIDM6cmV0dXJuITA7Y2FzZSAyOmNhc2UgNDpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX0pfQpmdW5jdGlvbiBDbChhKXt2YXIgYj10bCgpO2IuYWNjZXNzZWRBbnk9ITA7cmV0dXJuIGIuZ2V0Q29uc2VudFN0YXRlKGEsQWwpfWZ1bmN0aW9uIERsKGEpe3ZhciBiPXRsKCk7Yi5hY2Nlc3NlZEFueT0hMDtyZXR1cm4hKGIuZW50cmllc1thXXx8e30pLnF1aWV0fWZ1bmN0aW9uIEVsKCl7aWYoIVlmKDUpKXJldHVybiExO3ZhciBhPXRsKCk7YS5hY2Nlc3NlZEFueT0hMDtpZihhLmFjdGl2ZSlyZXR1cm4hMDtpZighQWwudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzKXJldHVybiExO2Zvcih2YXIgYj1tKE9iamVjdC5rZXlzKEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzKSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpaWYoQWwuY29udGFpbmVyU2NvcGVkRGVmYXVsdHNbYy52YWx1ZV0hPT0xKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEZsKGEsYil7dGwoKS5hZGRMaXN0ZW5lcihhLGIpfQpmdW5jdGlvbiBHbChhLGIpe3RsKCkubm90aWZ5TGlzdGVuZXJzKGEsYil9ZnVuY3Rpb24gSGwoYSxiKXtpZihiLmV2ZXJ5KERsKSlhKHt9KTtlbHNle3ZhciBjPSExO0ZsKGIsZnVuY3Rpb24oZCl7IWMmJmIuZXZlcnkoRGwpJiYoYz0hMCxhKGQpKX0pfX0KZnVuY3Rpb24gSWwoYSxiKXt2YXIgYz16YihiKT9bYl06YixkPXt9LGU9ZnVuY3Rpb24oKXtyZXR1cm4gYy5maWx0ZXIoZnVuY3Rpb24oaCl7cmV0dXJuIEJsKGgpJiYhZFtoXX0pfSxmPWUoKTtpZihmLmxlbmd0aCE9PWMubGVuZ3RoKXt2YXIgZz1mdW5jdGlvbihoKXtmb3IodmFyIGw9bShoKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSlkW24udmFsdWVdPSEwfTtnKGYpO0ZsKGMsZnVuY3Rpb24oaCl7ZnVuY3Rpb24gbChxKXtxLmxlbmd0aCE9PTAmJihnKHEpLGguY29uc2VudFR5cGVzPXEsYShoKSl9dmFyIG49ZSgpO2lmKG4ubGVuZ3RoIT09MCl7dmFyIHA9T2JqZWN0LmtleXMoZCkubGVuZ3RoO24ubGVuZ3RoK3A+PWMubGVuZ3RoP2wobik6QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bChlKCkpfSw1MDApfX0pfX07dmFyIEpsPSExO2Z1bmN0aW9uIEtsKGEsYil7dmFyIGM9d2soKSxkPXRrKCk7RSgyNik7dmFyIGU9SWYoNDcpPzA6SWYoNTApPzE6MyxmPVhqKCk7aWYocGwoKSl7dmFyIGc9TGwoIklOSVQiKTtnLmNvbnRhaW5lckxvYWRTb3VyY2U9YSE9bnVsbD9hOjA7YiYmKGcucGFyZW50VGFyZ2V0UmVmZXJlbmNlPWIpO2cuYWxpYXNlcz1jO2cuZGVzdGluYXRpb25zPWQ7ZSE9PXZvaWQgMCYmKGcuZ3RnPXtzb3VyY2U6ZSxtUGF0aDpmIT1udWxsP2Y6IiJ9KTtvbChnKX19CmZ1bmN0aW9uIE1sKGEpe3ZhciBiLGMsZCxlO2I9YS50YXJnZXRJZDtjPWEucmVxdWVzdDtkPWEucWI7ZT1hLmlzQmF0Y2hlZDt2YXIgZjtpZihmPXBsKCkpe3ZhciBnO2E6c3dpdGNoKGMuZW5kcG9pbnQpe2Nhc2UgNjg6Y2FzZSA2OTpjYXNlIDE5OmNhc2UgNjI6Y2FzZSA0NzpnPSEwO2JyZWFrIGE7ZGVmYXVsdDpnPSExfWY9IWd9aWYoZil7dmFyIGg9TGwoIkdUQUdfSElUIix7ZXZlbnRJZDpkLmV2ZW50SWQscHJpb3JpdHlJZDpkLnByaW9yaXR5SWR9KTtoLnRhcmdldD1iO2gudXJsPWMudXJsO2MucG9zdEJvZHkmJihoLnBvc3RCb2R5PWMucG9zdEJvZHkpO2gucGFyYW1ldGVyRW5jb2Rpbmc9Yy5wYXJhbWV0ZXJFbmNvZGluZztoLmVuZHBvaW50PWMuZW5kcG9pbnQ7ZSE9PXZvaWQgMCYmKGguaXNCYXRjaGVkPWUpO29sKGgpfX1mdW5jdGlvbiBObChhKXtwbCgpJiZNbChhKCkpfQpmdW5jdGlvbiBMbChhLGIpe2I9Yj09PXZvaWQgMD97fTpiO2IuZ3JvdXBJZD1PbDt2YXIgYyxkPWIsZT1QbCxmPXtwdWJsaWNJZDpRbH07ZC5ldmVudElkIT1udWxsJiYoZi5ldmVudElkPWQuZXZlbnRJZCk7ZC5wcmlvcml0eUlkIT1udWxsJiYoZi5wcmlvcml0eUlkPWQucHJpb3JpdHlJZCk7ZC5ldmVudE5hbWUmJihmLmV2ZW50TmFtZT1kLmV2ZW50TmFtZSk7ZC5ncm91cElkJiYoZi5ncm91cElkPWQuZ3JvdXBJZCk7ZC50YWdOYW1lJiYoZi50YWdOYW1lPWQudGFnTmFtZSk7Yz17Y29udGFpbmVyUHJvZHVjdDoiR1RNIixrZXk6Zix2ZXJzaW9uOmUsbWVzc2FnZVR5cGU6YX07Yy5jb250YWluZXJQcm9kdWN0PUpsPyJPR1QiOiJHVE0iO2Mua2V5LnRhcmdldFJlZj1SbDtyZXR1cm4gY312YXIgUWw9IiIsUGw9IiIsUmw9e2N0aWQ6IiIsaXNEZXN0aW5hdGlvbjohMX0sT2w7CmZ1bmN0aW9uIFNsKGEpe3ZhciBiPUUoNSksYz1JZig0NSksZD1zaygpLGU9RSg2KSxmPUUoMSk7RSgyMyk7a2w9MDtsbD0hMDtybCgpO09sPWE7UWw9YjtQbD1mO0psPWM7Umw9e2N0aWQ6Yixpc0Rlc3RpbmF0aW9uOmQsY2Fub25pY2FsSWQ6ZX19O2Z1bmN0aW9uIFRsKGEsYixjLGQpe2lmKHBsKCkpe3ZhciBlPWIuTTtNbCh7dGFyZ2V0SWQ6ZHx8W2IudGFyZ2V0LmRlc3RpbmF0aW9uSWRdLHJlcXVlc3Q6e3VybDphLHBhcmFtZXRlckVuY29kaW5nOjIsZW5kcG9pbnQ6Y30scWI6e2V2ZW50SWQ6ZS5ldmVudElkLHByaW9yaXR5SWQ6ZS5wcmlvcml0eUlkfSxGajp7ZXZlbnRJZDpRKGIsSC5KLnVmKSxwcmlvcml0eUlkOlEoYixILkoudmYpfX0pfX07ZnVuY3Rpb24gVWwoYSxiLGMpe3ZhciBkPSJodHRwczovLyIrYStiO3JldHVybiBjP2Z1bmN0aW9uKCl7cmV0dXJuIFdqKCk/WGooKStjK2I6ZH06ZnVuY3Rpb24oKXtyZXR1cm4gZH19O3ZhciBWbD17fSxXbD0oVmxbMjJdPVVsKCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iLCIvY2NtL2NvbnZlcnNpb24iLCIvYXMvZCIpLFZsWzYwXT1VbCgicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvY2NtL2NvbnZlcnNpb24iLCIvZ3MiKSxWbFsyM109VWwoInd3dy5nb29nbGUuY29tIiwiL2NjbS9jb252ZXJzaW9uIiwiL2cvZCIpLFZsKTt2YXIgWGw9e30sWWw9KFhsWzVdPVVsKCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iLCIvcGFnZWFkL2NvbnZlcnNpb24iKSxYbFs2XT1VbCgicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvcGFnZWFkL2NvbnZlcnNpb24iLCIvZ3MiKSxYbFs4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkLzFwLWNvbnZlcnNpb24iKSxYbFs2Nl09VWwoInd3dy5nb29nbGUuY29tIiwiL3BhZ2VhZC91Y29udmVyc2lvbiIpLFhsWzYzXT1VbCgid3d3Lmdvb2dsZWFkc2VydmljZXMuY29tIiwiL3BhZ2VhZC9jb252ZXJzaW9uIiksWGxbNjRdPVVsKCJwYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbSIsIi9wYWdlYWQvY29udmVyc2lvbiIsIi9ncyIpLFhsWzY1XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkLzFwLWNvbnZlcnNpb24iKSxYbFs3NF09ZnVuY3Rpb24oKXtyZXR1cm4gWGooKSsiL2FzL3AvYyJ9LFhsKTt2YXIgWmw9e30sJGw9KFpsWzQ1XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvY2NtL2NvbGxlY3QiKSxabFs0Nl09VWwoInBhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tIiwiL2NjbS9jb2xsZWN0IiwiL2dzIiksWmxbNjldPVVsKCJhZC5kb3VibGVjbGljay5uZXQiLCIvY2NtL3MvY29sbGVjdCIpLFpsWzU4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkL3NldF9wYXJ0aXRpb25lZF9jb29raWUiKSxabFs1N109VWwoInd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSIsIi9wYWdlYWQvc2V0X3BhcnRpdGlvbmVkX2Nvb2tpZSIpLFpsKTt2YXIgYW09e30sYm09KGFtWzldPVVsKCJnb29nbGVhZHMuZy5kb3VibGVjbGljay5uZXQiLCIvcGFnZWFkL3ZpZXd0aHJvdWdoY29udmVyc2lvbiIpLGFtWzY4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcm1rdC9jb2xsZWN0IiksYW0pO3ZhciBjbT17fSxkbT0oY21bMTFdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9wYWdlYWQvZm9ybS1kYXRhIiwiL2QiKSxjbVsyMV09VWwoInd3dy5nb29nbGUuY29tIiwiL2NjbS9mb3JtLWRhdGEiLCIvZCIpLGNtWzcyXT1VbCgiZ29vZ2xlLmNvbSIsIi9wYWdlYWQvZm9ybS1kYXRhIiwiL2QiKSxjbVs3M109VWwoImdvb2dsZS5jb20iLCIvY2NtL2Zvcm0tZGF0YSIsIi9kIiksY20pO3ZhciBlbT17fSxmbT0oZW1bNTFdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi90cmF2ZWwvZmxpZ2h0cy9jbGljay9jb252ZXJzaW9uIiksZW0pO3ZhciBnbT17fSxobT0oZ21bMV09ZnVuY3Rpb24oKXtyZXR1cm4iaHR0cHM6Ly9hZC5kb3VibGVjbGljay5uZXQvYWN0aXZpdHk7In0sZ21bMl09ZnVuY3Rpb24oKXtyZXR1cm4oV2ooKT9YaigpOiJodHRwczovL2FkZS5nb29nbGVzeW5kaWNhdGlvbi5jb20iKSsiL2RkbS9hY3Rpdml0eSIrKE0oNDY3KT8iOyI6Ii8iKX0sZ21bM109ZnVuY3Rpb24oYSl7cmV0dXJuImh0dHBzOi8vIithLmxyKyIuZmxzLmRvdWJsZWNsaWNrLm5ldC9hY3Rpdml0eWk7In0sZ20pO2Z1bmN0aW9uIGltKGEpe3NiKCJIRUFMVEgiLGEpfTt2YXIgam09e2JhOntQdDoiYXdfdXNlcl9kYXRhX2NhY2hlIixvaToiY29va2llX2RlcHJlY2F0aW9uX2xhYmVsIixiaDoiZGlhZ25vc3RpY3NfcGFnZV9pZCIsb3A6ImVtZW1vIixkdToiZW1fcmVnaXN0cnkiLFNpOiJlYWIiLHJ1OiJmbF91c2VyX2RhdGFfY2FjaGUiLHR1OiJnYTRfdXNlcl9kYXRhX2NhY2hlIixMdToiaWRjX3B2X2NsYWltIixTZToiaXBfZ2VvX2RhdGFfY2FjaGUiLFhpOiJpcF9nZW9fZmV0Y2hfaW5fcHJvZ3Jlc3MiLGpuOiJuYl9kYXRhIixUcToicGFnZV9leHBlcmltZW50X2lkcyIsbG46InBsZCIsVmU6InB0X2RhdGEiLG1uOiJwdF9saXN0ZW5lcl9zZXQiLGtqOiJyZXRyeV9jb250YWluZXJzIixPaDoic2VydmljZV93b3JrZXJfZW5kcG9pbnQiLFpxOiJzaGFyZWRfdXNlcl9pZCIsYXI6InNoYXJlZF91c2VyX2lkX3JlcXVlc3RlZCIsc2o6InNoYXJlZF91c2VyX2lkX3NvdXJjZSIsYnY6ImF3aCIsaHI6InVuaXZlcnNhbF9jbGFpbV9yZWdpc3RyeSJ9fTt2YXIga209ZnVuY3Rpb24oYSl7cmV0dXJuIHRmKGZ1bmN0aW9uKGIpe2Zvcih2YXIgYyBpbiBhKWlmKGI9PT1hW2NdJiYhL15bMC05XSskLy50ZXN0KGMpKXJldHVybiEwO3JldHVybiExfSl9KGptLmJhKTsKZnVuY3Rpb24gbG0oYSxiKXtiPWI9PT12b2lkIDA/ITE6YjtpZihrbShhKSl7dmFyIGMsZCxlPShkPShjPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KSkueGNkKSE9bnVsbD9kOmMueGNkPXt9O2lmKGVbYV0pcmV0dXJuIGVbYV07aWYoYil7dmFyIGY9dm9pZCAwLGc9MSxoPXt9LGw9e3NldDpmdW5jdGlvbihuKXtmPW47bC5ub3RpZnkoKX0sZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGZ9LHN1YnNjcmliZTpmdW5jdGlvbihuKXtoW1N0cmluZyhnKV09bjtyZXR1cm4gZysrfSx1bnN1YnNjcmliZTpmdW5jdGlvbihuKXt2YXIgcD1TdHJpbmcobik7cmV0dXJuIGguaGFzT3duUHJvcGVydHkocCk/KGRlbGV0ZSBoW3BdLCEwKTohMX0sbm90aWZ5OmZ1bmN0aW9uKCl7Zm9yKHZhciBuPW0oT2JqZWN0LmtleXMoaCkpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3RyeXtoW3FdKGEsZil9Y2F0Y2gocil7fX19fTtyZXR1cm4gZVthXT1sfX19CmZ1bmN0aW9uIG1tKGEsYil7dmFyIGM9bG0oYSwhMCk7YyYmYy5zZXQoYil9ZnVuY3Rpb24gbm0oYSl7dmFyIGI7cmV0dXJuKGI9bG0oYSkpPT1udWxsP3ZvaWQgMDpiLmdldCgpfWZ1bmN0aW9uIG9tKGEsYil7dmFyIGM9bG0oYSk7aWYoIWMpe2M9bG0oYSwhMCk7aWYoIWMpcmV0dXJuO2Muc2V0KGIpfXJldHVybiBjLmdldCgpfWZ1bmN0aW9uIHBtKGEsYil7aWYodHlwZW9mIGI9PT0iZnVuY3Rpb24iKXt2YXIgYztyZXR1cm4oYz1sbShhLCEwKSk9PW51bGw/dm9pZCAwOmMuc3Vic2NyaWJlKGIpfX1mdW5jdGlvbiBxbShhLGIpe3ZhciBjPWxtKGEpO3JldHVybiBjP2MudW5zdWJzY3JpYmUoYik6ITF9O3ZhciBzbT1mdW5jdGlvbigpe3RoaXMuSD17fTt0aGlzLks9ITF9O3NtLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7dGhpcy5LfHwodGhpcy5IPXRtKCksdGhpcy5IWyIwIl0mJm9tKGptLmJhLlNlLEpTT04uc3RyaW5naWZ5KHRoaXMuSCkpKX07CnZhciB4bT1mdW5jdGlvbigpe3ZhciBhPXVtLGI9dm0sYz12b2lkIDAsZD1mdW5jdGlvbigpe2MhPT12b2lkIDAmJnFtKGptLmJhLlNlLGMpO3RyeXt2YXIgZj1ubShqbS5iYS5TZSk7Yi5IPUpTT04ucGFyc2UoZil9Y2F0Y2goZyl7UCgxMjMpLGltKDIpLGIuSD17fX1iLks9ITA7YSgpfSxlPW5tKGptLmJhLlNlKTtlP2QoZSk6KGM9cG0oam0uYmEuU2UsZCksd20oKSl9LHdtPWZ1bmN0aW9uKCl7aWYoIW5tKGptLmJhLlhpKSl7bW0oam0uYmEuWGksITApO3ZhciBhPWZ1bmN0aW9uKGIpe21tKGptLmJhLlNlLGJ8fCJ7fSIpO21tKGptLmJhLlhpLCExKX07dHJ5e0EuZmV0Y2goImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vY2NtL2dlbyIse21ldGhvZDoiR0VUIixjYWNoZToibm8tc3RvcmUiLG1vZGU6ImNvcnMiLGNyZWRlbnRpYWxzOiJvbWl0In0pLnRoZW4oZnVuY3Rpb24oYil7Yi5vaz9iLnRleHQoKS50aGVuKGZ1bmN0aW9uKGMpe2EoYyl9LGZ1bmN0aW9uKCl7YSgpfSk6YSgpfSxmdW5jdGlvbigpe2EoKX0pfWNhdGNoKGIpe2EoKX19fSwKdG09ZnVuY3Rpb24oKXt2YXIgYT1FKDIyKTt0cnl7cmV0dXJuIEpTT04ucGFyc2UocWIoYSkpfWNhdGNoKGIpe3JldHVybiBQKDEyMyksaW0oMikse319fSx5bT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyIwIl18fCIifSx6bT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyIxIl18fCIifSxBbT1mdW5jdGlvbigpe3ZhciBhPXZtLGI9ITE7Yj0hIWEuSFsiMiJdO3JldHVybiBifSxCbT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyI2Il0hPT0hMX0sQ209ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSExO2I9ISFhLkhbIjkiXTtyZXR1cm4gYn0sRG09ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSIiO2I9YS5IWyI0Il18fCIiOwpyZXR1cm4gYn0sRW09ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSIiO2I9YS5IWyIzIl18fCIiO3JldHVybiBifSx2bT1uZXcgc207ZnVuY3Rpb24gRm0oYSl7YT1hPT09dm9pZCAwPyJnL2NvbGxlY3QiOmE7cmV0dXJuImh0dHBzOi8vIisoRG0oKXx8Ind3dyIpKyIuZ29vZ2xlLWFuYWx5dGljcy5jb20vIithfWZ1bmN0aW9uIEdtKGEpe2E9YT09PXZvaWQgMD8iZy9jb2xsZWN0IjphO3ZhciBiPURtKCk7cmV0dXJuImh0dHBzOi8vIisoYj9iKyIuIjoiIikrImFuYWx5dGljcy5nb29nbGUuY29tLyIrYX12YXIgSG09e30sSW09KEhtWzE3XT1mdW5jdGlvbigpe3JldHVybiBXaigpJiYhRG0oKT9YaigpKyIvYWcvZy9jIjpHbSgpfSxIbVsxNl09ZnVuY3Rpb24oKXtyZXR1cm4gV2ooKSYmIURtKCk/WGooKSsiL2dhL2cvYyI6Rm0oKX0sSG1bNjddPWZ1bmN0aW9uKCl7dmFyIGE7YT1hPT09dm9pZCAwPyJnL2NvbGxlY3QiOmE7cmV0dXJuIERtKCk/IiI6Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vIithfSxIbSk7ZnVuY3Rpb24gSm0oYSxiLGMpe3ZhciBkPVVsKGIsIi9tZWFzdXJlbWVudC9jb252ZXJzaW9uIixjKTtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gRG0oKT9hKCJtZWFzdXJlbWVudC9jb252ZXJzaW9uIik6ZCgpfX12YXIgS209e30sTG09KEttWzU1XT1KbShGbSwicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvZ3MiKSxLbVs1NF09Sm0oR20sInd3dy5nb29nbGUuY29tIiwiL2ciKSxLbSk7dmFyIE1tPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sV2wsWWwsJGwsYm0sZG0sZm0saG0sTG0sSW0pO2Z1bmN0aW9uIE5tKGEsYil7dmFyIGM9T2JqZWN0LmtleXMoYikuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBiW2RdIT1udWxsfSkubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBkKyI9IitiW2RdfSkuam9pbigiJiIpO3JldHVybiBNbVthXSh2b2lkIDApKyI/IitjfTt2YXIgT209e30sUG09KE9tLnRkcD0xLE9tLmV4cD0xLE9tLmd0bT0xLE9tLnBpZD0xLE9tLmRsPTEsT20uc2VxPTEsT20udD0xLE9tLnY9MSxPbSksUm09ZnVuY3Rpb24oKXt2YXIgYT1RbTtyZXR1cm4gT2JqZWN0LmtleXMoYS5IKS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGEuSFtiXX0pfSxTbT1mdW5jdGlvbihhLGIsYyl7aWYoYS5IW2JdPT09dm9pZCAwfHwoYz09PXZvaWQgMD8wOmMpKWEuSFtiXT0hMH0sVG09ZnVuY3Rpb24oYSl7YS5mb3JFYWNoKGZ1bmN0aW9uKGIpe1BtW2JdfHwoUW0uSFtiXT0hMSl9KX0sUW09bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXt9O3RoaXMuSz17fX07ZnVuY3Rpb24gVW0oYSxiLGMpe3ZhciBkPWM9PT12b2lkIDA/ITA6YyxlPVFtO2UuS1thXT1iOyhkPT09dm9pZCAwfHxkKSYmU20oZSxhKX1mdW5jdGlvbiBWbShhLGIpe1NtKFFtLGEsYj09PXZvaWQgMD8hMTpiKX07ZnVuY3Rpb24gV20oYSl7dmFyIGI9MDthLkdjLmZvckVhY2goZnVuY3Rpb24oYyl7Ynw9MTw8Y30pO3JldHVybiBifWZ1bmN0aW9uIFhtKCl7cmV0dXJue3RvdGFsOjAsamI6MCxHYzpuZXcgU2V0LGxmOnt9fX1mdW5jdGlvbiBZbShhLGIsYyxkKXt2YXIgZT1PYmplY3Qua2V5cyhhLm5mKS5zb3J0KGZ1bmN0aW9uKGYsZyl7cmV0dXJuIE51bWJlcihmKS1OdW1iZXIoZyl9KS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuW2YsYihhLm5mW2ZdKV19KS5maWx0ZXIoZnVuY3Rpb24oZil7cmV0dXJuIGZbMV0hPT12b2lkIDB9KS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuIGYuam9pbihjKX0pLmpvaW4oZCk7cmV0dXJuIGU/ZTp2b2lkIDB9CmZ1bmN0aW9uIFptKGEsYil7dmFyIGMsZCxlO2M9Yz09PXZvaWQgMD8iXyI6YztkPWQ9PT12b2lkIDA/IjsiOmQ7ZT1lPT09dm9pZCAwPyJ+IjplO2Zvcih2YXIgZj1bXSxnPW0oT2JqZWN0LmtleXMoYS5sZikuc29ydCgpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPVltKGEubGZbbF0sYixjLGQpO2lmKG4pe3ZhciBwPXZvaWQgMDtmLnB1c2goIiIrKChwPWwpIT1udWxsP3A6IiIpK2Qrbil9fXJldHVybiBmLmxlbmd0aD9mLmpvaW4oZSk6dm9pZCAwfQpmdW5jdGlvbiAkbShhKXthLmpiPTA7YS5HYy5jbGVhcigpO2Zvcih2YXIgYj1tKE9iamVjdC5rZXlzKGEubGYpKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9YS5sZltjLnZhbHVlXTtkLmpiPTA7ZC5HYy5jbGVhcigpO2Zvcih2YXIgZT1tKE9iamVjdC5rZXlzKGQubmYpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9ZC5uZltmLnZhbHVlXTtnLmpiPTA7Zy5HYy5jbGVhcigpfX19CmZ1bmN0aW9uIGFuKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPzE6ZDthLnRvdGFsKz1kO2EuamIrPWQ7dmFyIGYsZz1iPT09dm9pZCAwPyIiOmI7Zj1hLmxmW2ddfHwoYS5sZltnXT17dG90YWw6MCxqYjowLEdjOm5ldyBTZXQsbmY6e319KTtmLnRvdGFsKz1kO2YuamIrPWQ7dmFyIGgsbD1TdHJpbmcoYyk7aD1mLm5mW2xdfHwoZi5uZltsXT17dG90YWw6MCxqYjowLEdjOm5ldyBTZXR9KTtoLnRvdGFsKz1kO2guamIrPWQ7ZSE9PXZvaWQgMCYmKGEuR2MuYWRkKGUpLGYuR2MuYWRkKGUpLGguR2MuYWRkKGUpKX07dmFyIGJuPWZ1bmN0aW9uKCl7dGhpcy5IPVhtKCl9O2JuLnByb3RvdHlwZS5pbmNyZW1lbnQ9ZnVuY3Rpb24oYSxiKXthbih0aGlzLkgsYSxiKX07dmFyIGNuPW5ldyBibjtmdW5jdGlvbiBkbihhKXt2YXIgYj1TdHJpbmcoYVtHZi5ZYl18fCIiKS5yZXBsYWNlKC9fL2csIiIpO3JldHVybiBTYihiLCJjdnQiKT8iY3Z0IjpifXZhciBlbj1BLmxvY2F0aW9uLnNlYXJjaC5pbmRleE9mKCI/Z3RtX2xhdGVuY3k9Iik+PTB8fEEubG9jYXRpb24uc2VhcmNoLmluZGV4T2YoIiZndG1fbGF0ZW5jeT0iKT49MDt2YXIgZ249ZnVuY3Rpb24oKXt2YXIgYT1mbjtyZXR1cm4gTSg2MDMpJiZJZig2NSwhMSkmJiFhLlp9LGZuPW5ldyBmdW5jdGlvbihhKXt0aGlzLlI9YSgpO3ZhciBiPUpmKDI3KTt0aGlzLk49ZW58fHRoaXMuUjxiO3ZhciBjPUpmKDQyKTt0aGlzLlo9ZW58fHRoaXMuUj49MS1jO3ZhciBkPU0oNjAzKSYmSWYoNjUsITEpO3RoaXMuSz10aGlzLlp8fGQ7dmFyIGU9SmYoMjcpLGY9SmYoNjMpO3RoaXMuSD1lbnx8Zj09PTF8fHRoaXMuUj49ZSYmdGhpcy5SPGUrZn0oZnVuY3Rpb24oKXtyZXR1cm4gTWF0aC5yYW5kb20oKX0pO3ZhciBobj1mdW5jdGlvbigpe3RoaXMuSD17fX07aG4ucHJvdG90eXBlLnJlZ2lzdGVyPWZ1bmN0aW9uKGEsYixjKXtpZihmbi5LKXt2YXIgZD1qbihiLGMpO2lmKGQpe3ZhciBlLGY9YjtmPT09NCYmKGY9NSk7dmFyIGc9dGhpcy5IW2ZdO2d8fChnPXRoaXMuSFtmXT17fSk7ZT1nO3ZhciBoPWVbZF07aHx8KGg9ZVtkXT1bXSk7aC5wdXNoKG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYSkpO2NuLmluY3JlbWVudChhLmRlc3RpbmF0aW9uSWQsYS5lbmRwb2ludCk7YS5lbmRwb2ludCE9PTU2JiZhLmVuZHBvaW50IT09NjEmJlZtKCJtZGUiLCEwKX19fTsKdmFyIG1uPWZ1bmN0aW9uKGEsYil7dmFyIGM9a24sZD1qbihhLGIpO2lmKGQpe3ZhciBlPWxuKGMsYSk7aWYoZSl7dmFyIGY9ZVtkXTtmJiYoZVtkXT1mLmZpbHRlcihmdW5jdGlvbihnKXtyZXR1cm4hZy5Fb30pKX19fSxsbj1mdW5jdGlvbihhLGIpe2I9PT00JiYoYj01KTtyZXR1cm4gYS5IW2JdfSxqbj1mdW5jdGlvbihhLGIpe3ZhciBjPWI7aWYoYlswXT09PSIvIil7dmFyIGQ7Yz0oKGQ9QS5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmQub3JpZ2luKStifXRyeXt2YXIgZT1uZXcgVVJMKGMpO3JldHVybiBhPT09Mj9lLm9yaWdpbjplLm9yaWdpbitlLnBhdGhuYW1lfWNhdGNoKGYpe319LGtuPW5ldyBobjsKZnVuY3Rpb24gbm4oYSl7c3dpdGNoKGEpe2Nhc2UgInNjcmlwdC1zcmMiOnJldHVybiA0O2Nhc2UgInNjcmlwdC1zcmMtZWxlbSI6cmV0dXJuIDU7Y2FzZSAiZnJhbWUtc3JjIjpyZXR1cm4gMjtjYXNlICJjb25uZWN0LXNyYyI6cmV0dXJuIDE7Y2FzZSAiaW1nLXNyYyI6cmV0dXJuIDN9fTtmdW5jdGlvbiBvbihhLGIsYyl7dmFyIGQsZT1hLkdvb2dsZWJRaENzTztlfHwoZT17fSxhLkdvb2dsZWJRaENzTz1lKTtkPWU7aWYoZFtiXSlyZXR1cm4hMTtkW2JdPVtdO2RbYl1bMF09YztyZXR1cm4hMH07dmFyIHBuLHFuO2E6e2Zvcih2YXIgcm49WyJDTE9TVVJFX0ZMQUdTIl0sc249UmEsdG49MDt0bjxybi5sZW5ndGg7dG4rKylpZihzbj1zbltyblt0bl1dLHNuPT1udWxsKXtxbj1udWxsO2JyZWFrIGF9cW49c259dmFyIHVuPXFuJiZxbls2MTA0MDEzMDFdO3BuPXVuIT1udWxsP3VuOiExO2Z1bmN0aW9uIHZuKCl7dmFyIGE9UmEubmF2aWdhdG9yO2lmKGEpe3ZhciBiPWEudXNlckFnZW50O2lmKGIpcmV0dXJuIGJ9cmV0dXJuIiJ9dmFyIHduLHhuPVJhLm5hdmlnYXRvcjt3bj14bj94bi51c2VyQWdlbnREYXRhfHxudWxsOm51bGw7ZnVuY3Rpb24geW4oYSl7aWYoIXBufHwhd24pcmV0dXJuITE7Zm9yKHZhciBiPTA7Yjx3bi5icmFuZHMubGVuZ3RoO2IrKyl7dmFyIGM9d24uYnJhbmRzW2JdLmJyYW5kO2lmKGMmJmMuaW5kZXhPZihhKSE9LTEpcmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gem4oYSl7cmV0dXJuIHZuKCkuaW5kZXhPZihhKSE9LTF9O2Z1bmN0aW9uIEFuKCl7cmV0dXJuIHBuPyEhd24mJnduLmJyYW5kcy5sZW5ndGg+MDohMX1mdW5jdGlvbiBCbigpe3JldHVybiBBbigpPyExOnpuKCJPcGVyYSIpfWZ1bmN0aW9uIENuKCl7cmV0dXJuIHpuKCJGaXJlZm94Iil8fHpuKCJGeGlPUyIpfWZ1bmN0aW9uIERuKCl7cmV0dXJuIEFuKCk/eW4oIkNocm9taXVtIik6KHpuKCJDaHJvbWUiKXx8em4oIkNyaU9TIikpJiYhKEFuKCk/MDp6bigiRWRnZSIpKXx8em4oIlNpbGsiKX07ZnVuY3Rpb24gRW4oKXtyZXR1cm4gcG4/ISF3biYmISF3bi5wbGF0Zm9ybTohMX1mdW5jdGlvbiBGbigpe3JldHVybiB6bigiaVBob25lIikmJiF6bigiaVBvZCIpJiYhem4oImlQYWQiKX1mdW5jdGlvbiBHbigpe0ZuKCl8fHpuKCJpUGFkIil8fHpuKCJpUG9kIil9O3ZhciBIbj1mdW5jdGlvbihhKXtIblsiICJdKGEpO3JldHVybiBhfTtIblsiICJdPWZ1bmN0aW9uKCl7fTtCbigpO0FuKCl8fHpuKCJUcmlkZW50Iil8fHpuKCJNU0lFIik7em4oIkVkZ2UiKTshem4oIkdlY2tvIil8fHZuKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSE9LTEmJiF6bigiRWRnZSIpfHx6bigiVHJpZGVudCIpfHx6bigiTVNJRSIpfHx6bigiRWRnZSIpO3ZuKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSE9LTEmJiF6bigiRWRnZSIpJiZ6bigiTW9iaWxlIik7RW4oKXx8em4oIk1hY2ludG9zaCIpO0VuKCl8fHpuKCJXaW5kb3dzIik7KEVuKCk/d24ucGxhdGZvcm09PT0iTGludXgiOnpuKCJMaW51eCIpKXx8RW4oKXx8em4oIkNyT1MiKTtFbigpfHx6bigiQW5kcm9pZCIpO0ZuKCk7em4oImlQYWQiKTt6bigiaVBvZCIpO0duKCk7dm4oKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImthaW9zIik7Q24oKTtGbigpfHx6bigiaVBvZCIpO3puKCJpUGFkIik7IXpuKCJBbmRyb2lkIil8fERuKCl8fENuKCl8fEJuKCl8fHpuKCJTaWxrIik7RG4oKTshem4oIlNhZmFyaSIpfHxEbigpfHwoQW4oKT8wOnpuKCJDb2FzdCIpKXx8Qm4oKXx8KEFuKCk/MDp6bigiRWRnZSIpKXx8KEFuKCk/eW4oIk1pY3Jvc29mdCBFZGdlIik6em4oIkVkZy8iKSl8fChBbigpP3luKCJPcGVyYSIpOnpuKCJPUFIiKSl8fENuKCl8fHpuKCJTaWxrIil8fHpuKCJBbmRyb2lkIil8fEduKCk7dmFyIEluPXt9LEpuPW51bGw7CmZ1bmN0aW9uIEtuKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD0wO2Q8YS5sZW5ndGg7ZCsrKXt2YXIgZT1hLmNoYXJDb2RlQXQoZCk7ZT4yNTUmJihiW2MrK109ZSYyNTUsZT4+PTgpO2JbYysrXT1lfXZhciBmPTQ7Zj09PXZvaWQgMCYmKGY9MCk7aWYoIUpuKXtKbj17fTtmb3IodmFyIGc9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ii5zcGxpdCgiIiksaD1bIisvPSIsIisvIiwiLV89IiwiLV8uIiwiLV8iXSxsPTA7bDw1O2wrKyl7dmFyIG49Zy5jb25jYXQoaFtsXS5zcGxpdCgiIikpO0luW2xdPW47Zm9yKHZhciBwPTA7cDxuLmxlbmd0aDtwKyspe3ZhciBxPW5bcF07Sm5bcV09PT12b2lkIDAmJihKbltxXT1wKX19fWZvcih2YXIgcj1JbltmXSx0PUFycmF5KE1hdGguZmxvb3IoYi5sZW5ndGgvMykpLHU9cls2NF18fCIiLHY9MCx4PTA7djxiLmxlbmd0aC0yO3YrPTMpe3ZhciB5PWJbdl0sej1iW3YrMV0sQz1iW3YrMl0sCkQ9clt5Pj4yXSxJPXJbKHkmMyk8PDR8ej4+NF0sRz1yWyh6JjE1KTw8MnxDPj42XSxOPXJbQyY2M107dFt4KytdPSIiK0QrSStHK059dmFyIFM9MCxXPXU7c3dpdGNoKGIubGVuZ3RoLXYpe2Nhc2UgMjpTPWJbdisxXSxXPXJbKFMmMTUpPDwyXXx8dTtjYXNlIDE6dmFyIGVhPWJbdl07dFt4XT0iIityW2VhPj4yXStyWyhlYSYzKTw8NHxTPj40XStXK3V9cmV0dXJuIHQuam9pbigiIil9O3ZhciBMbj1mdW5jdGlvbihhKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGEucmVwbGFjZSgvXCsvZywiICIpKX07dmFyIE1uPVJlZ0V4cCgiXig/OihbXjovPyMuXSspOik/KD86Ly8oPzooW15cXFxcLz8jXSopQCk/KFteXFxcXC8/I10qPykoPzo6KFswLTldKykpPyg/PVtcXFxcLz8jXXwkKSk/KFtePyNdKyk/KD86XFw/KFteI10qKSk/KD86IyhbXFxzXFxTXSopKT8kIik7ZnVuY3Rpb24gTm4oYSxiLGMsZCl7Zm9yKHZhciBlPWIsZj1jLmxlbmd0aDsoZT1hLmluZGV4T2YoYyxlKSk+PTAmJmU8ZDspe3ZhciBnPWEuY2hhckNvZGVBdChlLTEpO2lmKGc9PTM4fHxnPT02Myl7dmFyIGg9YS5jaGFyQ29kZUF0KGUrZik7aWYoIWh8fGg9PTYxfHxoPT0zOHx8aD09MzUpcmV0dXJuIGV9ZSs9ZisxfXJldHVybi0xfXZhciBPbj0vI3wkLzsKZnVuY3Rpb24gUG4oYSxiKXt2YXIgYz1hLnNlYXJjaChPbiksZD1ObihhLDAsYixjKTtpZihkPDApcmV0dXJuIG51bGw7dmFyIGU9YS5pbmRleE9mKCImIixkKTtpZihlPDB8fGU+YyllPWM7ZCs9Yi5sZW5ndGgrMTtyZXR1cm4gTG4oYS5zbGljZShkLGUhPT0tMT9lOjApKX12YXIgUW49L1s/Jl0oJHwjKS87CmZ1bmN0aW9uIFJuKGEsYixjKXtmb3IodmFyIGQsZT1hLnNlYXJjaChPbiksZj0wLGcsaD1bXTsoZz1ObihhLGYsYixlKSk+PTA7KWgucHVzaChhLnN1YnN0cmluZyhmLGcpKSxmPU1hdGgubWluKGEuaW5kZXhPZigiJiIsZykrMXx8ZSxlKTtoLnB1c2goYS5zbGljZShmKSk7ZD1oLmpvaW4oIiIpLnJlcGxhY2UoUW4sIiQxIik7dmFyIGwsbj1jIT1udWxsPyI9IitlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGMpKToiIjt2YXIgcD1iK247aWYocCl7dmFyIHEscj1kLmluZGV4T2YoIiMiKTtyPDAmJihyPWQubGVuZ3RoKTt2YXIgdD1kLmluZGV4T2YoIj8iKSx1O3Q8MHx8dD5yPyh0PXIsdT0iIik6dT1kLnN1YnN0cmluZyh0KzEscik7cT1bZC5zbGljZSgwLHQpLHUsZC5zbGljZShyKV07dmFyIHY9cVsxXTtxWzFdPXA/dj92KyImIitwOnA6djtsPXFbMF0rKHFbMV0/Ij8iK3FbMV06IiIpK3FbMl19ZWxzZSBsPWQ7cmV0dXJuIGx9O2Z1bmN0aW9uIFNuKGEsYixjLGQsZSxmLGcsaCl7dmFyIGw9UG4oYywiZm10Iik7aWYoZCl7dmFyIG49UG4oYywicmFuZG9tIikscD1QbihjLCJsYWJlbCIpfHwiIjtpZighbilyZXR1cm47dmFyIHE9S24oTG4ocCkrIjoiK0xuKG4pKTtpZighb24oYSxxLGQpKXJldHVybn1sJiZOdW1iZXIobCkhPT00PyhjPVJuKGMsInJmbXQiLGwpLGM9Um4oYywiZm10Iiw0KSk6bHx8KGM9Um4oYywiZm10Iiw0KSk7VWMoYyxmdW5jdGlvbigpe2c9PW51bGx8fFRuKGcpO2g9PW51bGx8fFVuKGgsYyk7YS5nb29nbGVfbm9GdXJ0aGVyUmVkaXJlY3RzJiZkJiYoYS5nb29nbGVfbm9GdXJ0aGVyUmVkaXJlY3RzPW51bGwsZCgpKX0sZnVuY3Rpb24oKXtnPT1udWxsfHxUbihnKTtoPT1udWxsfHxVbihoLGMpO2U9PW51bGx8fGUoKX0sZixiLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXS5wYXJlbnRFbGVtZW50fHx2b2lkIDApO3JldHVybiBjfTtmdW5jdGlvbiBWbihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSwxLGJbMF0pO2lkLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gV24oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMSxiWzBdKTtyZXR1cm4gamQuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBYbihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSwzLGJbMF0pO1pjLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gWW4oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMSxiWzBdKTtyZXR1cm4gbWQuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBabihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSw1LGJbMF0pO1VjLmFwcGx5KG51bGwsdyhiKSl9CmZ1bmN0aW9uICRuKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTtiWzBdJiZrbi5yZWdpc3RlcihhLDIsYlswXSk7WGMuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBhbyhhKXt2YXIgYj1Tbi5hcHBseShudWxsLHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSk7YiYma24ucmVnaXN0ZXIoYSw0LGIpO3JldHVybiBifTt2YXIgYm89e01hOntSZTowLFVlOjEsTGg6Mn19O2JvLk1hW2JvLk1hLlJlXT0iRlVMTF9UUkFOU01JU1NJT04iO2JvLk1hW2JvLk1hLlVlXT0iTElNSVRFRF9UUkFOU01JU1NJT04iO2JvLk1hW2JvLk1hLkxoXT0iTk9fVFJBTlNNSVNTSU9OIjt2YXIgY289e2lhOntnZDowLGNiOjEseGQ6MixaYjozfX07Y28uaWFbY28uaWEuZ2RdPSJOT19RVUVVRSI7Y28uaWFbY28uaWEuY2JdPSJBRFMiO2NvLmlhW2NvLmlhLnhkXT0iQU5BTFlUSUNTIjtjby5pYVtjby5pYS5aYl09Ik1PTklUT1JJTkciO3ZhciBlbz1mdW5jdGlvbihhLGIpe3RoaXMuSD1hO3RoaXMuY29uc2VudFR5cGVzPWJ9O2VvLnByb3RvdHlwZS5pc0NvbnNlbnRHcmFudGVkPWZ1bmN0aW9uKCl7c3dpdGNoKHRoaXMuSCl7Y2FzZSAwOnJldHVybiB0aGlzLmNvbnNlbnRUeXBlcy5ldmVyeShmdW5jdGlvbihhKXtyZXR1cm4gQmwoYSl9KTtjYXNlIDE6cmV0dXJuIHRoaXMuY29uc2VudFR5cGVzLnNvbWUoZnVuY3Rpb24oYSl7cmV0dXJuIEJsKGEpfSk7ZGVmYXVsdDp5Yyh0aGlzLkgsImNvbnNlbnRzUmVxdWlyZWQgaGFkIGFuIHVua25vd24gdHlwZSIpfX07CnZhciBmbz1uZXcgZnVuY3Rpb24oKXt2YXIgYT17fTt0aGlzLkg9KGFbY28uaWEuZ2RdPWJvLk1hLlJlLGFbY28uaWEuY2JdPWJvLk1hLlJlLGFbY28uaWEueGRdPWJvLk1hLlJlLGFbY28uaWEuWmJdPWJvLk1hLlJlLGEpO3ZhciBiPXt9O3RoaXMuSz0oYltjby5pYS5nZF09bmV3IGVvKDAsW10pLGJbY28uaWEuY2JdPW5ldyBlbygwLFsiYWRfc3RvcmFnZSJdKSxiW2NvLmlhLnhkXT1uZXcgZW8oMCxbImFuYWx5dGljc19zdG9yYWdlIl0pLGJbY28uaWEuWmJdPW5ldyBlbygxLFsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIl0pLGIpfTt2YXIgaG89ZnVuY3Rpb24oYSl7dmFyIGI9dGhpczt0aGlzLnR5cGU9YTt0aGlzLkg9W107RmwoZm8uS1thXS5jb25zZW50VHlwZXMsZnVuY3Rpb24oKXtnbyhiKXx8Yi5mbHVzaCgpfSl9O2hvLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe2Zvcih2YXIgYT1tKHRoaXMuSCksYj1hLm5leHQoKTshYi5kb25lO2I9YS5uZXh0KCkpe3ZhciBjPWIudmFsdWU7YygpfXRoaXMuSD1bXX07dmFyIGdvPWZ1bmN0aW9uKGEpe3JldHVybiBmby5IW2EudHlwZV09PT1iby5NYS5MaCYmIWZvLktbYS50eXBlXS5pc0NvbnNlbnRHcmFudGVkKCl9LGlvPWZ1bmN0aW9uKGEsYil7Z28oYSk/YS5ILnB1c2goYik6YigpfSxqbz1mdW5jdGlvbigpe3RoaXMuSD1uZXcgTWFwfSxsbz1mdW5jdGlvbihhKXt2YXIgYj1rbztiLkguaGFzKGEpfHxiLkguc2V0KGEsbmV3IGhvKGEpKTtyZXR1cm4gYi5ILmdldChhKX07am8ucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5ILmNsZWFyKCl9Owp2YXIga289bmV3IGpvO3ZhciBtbz1bImZpbiIsImZzIiwibWNjIiwibmNjIl0sbm89ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwPyExOmE7dmFyIGI9Um0oKSxjPVFtLkssZD1iLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4gY1tlXSE9PXZvaWQgMCYmKGF8fCFtby5pbmNsdWRlcyhlKSl9KTtUbShkKTtyZXR1cm4gZC5tYXAoZnVuY3Rpb24oZSl7dmFyIGY9Y1tlXTt0eXBlb2YgZj09PSJmdW5jdGlvbiImJihmPWYoKSk7cmV0dXJuIGY/IiYiK2UrIj0iK2Y6IiJ9KS5qb2luKCIiKSsiJno9MCJ9LG9vPWZ1bmN0aW9uKGEpe3ZhciBiPSJodHRwczovLyIrRSgyMSksYz0iL3RkP2lkPSIrRSg1KTtyZXR1cm4iIitmayhiKStjK2F9LHBvPWZ1bmN0aW9uKGEsYixjKXtiPWI9PT12b2lkIDA/ITE6YjtjPWM9PT12b2lkIDA/ITE6YztpZigkaygyNikmJmZuLksmJkUoNSkmJihjfHwhZ24oKSkpe3ZhciBkPWxvKGNvLmlhLlpiKTtpZihnbyhkKSlhLkh8fChhLkg9ITAsaW8oZCxmdW5jdGlvbigpe3JldHVybiBwbyhhKX0pKTsKZWxzZXtiJiZVbSgiZmluIiwiMSIpO3ZhciBlPW5vKGIpLGY9b28oZSksZz17ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjYxfTtiP1luKGcsZix2b2lkIDAse1FnOiEwfSx2b2lkIDAsZnVuY3Rpb24oKXtaYyhmKyImaW1nPTEiKX0pOlhuKGcsZik7YS5IPSExO3FvKGUpfX19LHFvPWZ1bmN0aW9uKGEpe2lmKEtjJiYoU2IoS2MsImh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tLyIpfHxJZig0NykpJiYhKGEuaW5kZXhPZigiJmNzcD0iKTwwJiZhLmluZGV4T2YoIiZtZGU9Iik8MCkpe3ZhciBiO2E6e3RyeXtpZihLYyl7Yj1uZXcgVVJMKEtjKTticmVhayBhfX1jYXRjaChjKXt9Yj12b2lkIDB9YiYmVWMoIiIrS2MrKEtjLmluZGV4T2YoIj8iKT49MD8iJiI6Ij8iKSsiaXNfdGQ9MSIrYSl9fSxybz1mdW5jdGlvbihhKXtSbSgpLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIVBtW2JdfSkmJnBvKGEsITApfSxzbz1uZXcgZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0hMTsKJGMoQSwicGFnZWhpZGUiLGZ1bmN0aW9uKCl7cm8oYSl9KX07ZnVuY3Rpb24gdG8oYSxiKXtwbyhzbyxhPT09dm9pZCAwPyExOmEsYj09PXZvaWQgMD8hMTpiKX07dmFyIHVvPVsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIiwiYWRfcGVyc29uYWxpemF0aW9uIl0sdm89W0YuRC5kZCxGLkQueWMsRi5ELlFmLEYuRC5LYixGLkQueGMsRi5ELmZiLEYuRC5EYixGLkQubmIsRi5ELkxiLEYuRC52Y10seW89ZnVuY3Rpb24oKXt2YXIgYT13bzshYS5SJiZhLkgmJih1by5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBBbC5jb250YWluZXJTY29wZWREZWZhdWx0c1tiXSE9PTF9KXx8eG8oIm1iYyIpKTthLlI9ITB9LHhvPWZ1bmN0aW9uKGEpe2ZuLksmJihVbShhLCIxIiksdG8oKSl9LHpvPWZ1bmN0aW9uKGEsYil7dmFyIGM9d287aWYoIWMuTltiXSYmKGMuTltiXT0hMCxjLktbYl0pKWZvcih2YXIgZD1tKHZvKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSlpZihPKGEsZS52YWx1ZSkpe3hvKCJlcmMiKTticmVha319LHdvPW5ldyBmdW5jdGlvbigpe3RoaXMuUj10aGlzLkg9ITE7dGhpcy5OPXt9O3RoaXMuSz17fX07dmFyIEFvPXt9LEJvPU9iamVjdC5mcmVlemUoKEFvW0YuRC5SY109MSxBb1tGLkQuaGhdPTEsQW9bRi5ELnNpXT0xLEFvW0YuRC5TY109MSxBb1tGLkQuSGFdPTEsQW9bRi5ELkxiXT0xLEFvW0YuRC5DYl09MSxBb1tGLkQuVGJdPTEsQW9bRi5ELklkXT0xLEFvW0YuRC52Y109MSxBb1tGLkQubmJdPTEsQW9bRi5ELkpkXT0xLEFvW0YuRC5IZV09MSxBb1tGLkQuT2FdPTEsQW9bRi5ELlFwXT0xLEFvW0YuRC5QZl09MSxBb1tGLkQuRmldPTEsQW9bRi5ELnBoXT0xLEFvW0YuRC5XY109MSxBb1tGLkQuUWZdPTEsQW9bRi5ELmFxXT0xLEFvW0YuRC5UYV09MSxBb1tGLkQuVWZdPTEsQW9bRi5ELmZxXT0xLEFvW0YuRC5PZF09MSxBb1tGLkQuUmxdPTEsQW9bRi5ELlljXT0xLEFvW0YuRC5aY109MSxBb1tGLkQuRGJdPTEsQW9bRi5ELmFtXT0xLEFvW0YuRC5XYl09MSxBb1tGLkQuVGRdPTEsQW9bRi5ELlhiXT0xLEFvW0YuRC5PaV09MSxBb1tGLkQuZGRdPTEsQW9bRi5ELnloXT0xLEFvW0YuRC5QaV09CjEsQW9bRi5ELlVkXT0xLEFvW0YuRC55Y109MSxBb1tGLkQuVmRdPTEsQW9bRi5ELmxtXT0xLEFvW0YuRC5XZF09MSxBb1tGLkQuZWRdPTEsQW9bRi5ELm9qXT0xLEFvKSk7T2JqZWN0LmZyZWV6ZShbRi5ELnphLEYuRC5VYSxGLkQuTWIsRi5ELnRiLEYuRC5OaSxGLkQuZmIsRi5ELkdpLEYuRC5NcF0pOwp2YXIgQ289e30sRG89T2JqZWN0LmZyZWV6ZSgoQ29bRi5ELnFwXT0xLENvW0YuRC5ycF09MSxDb1tGLkQudHBdPTEsQ29bRi5ELnVwXT0xLENvW0YuRC52cF09MSxDb1tGLkQuenBdPTEsQ29bRi5ELkFwXT0xLENvW0YuRC5CcF09MSxDb1tGLkQuRHBdPTEsQ29bRi5ELnlmXT0xLENvKSksRW89e30sRm89T2JqZWN0LmZyZWV6ZSgoRW9bRi5ELnZsXT0xLEVvW0YuRC53bF09MSxFb1tGLkQueGVdPTEsRW9bRi5ELnllXT0xLEVvW0YuRC54bF09MSxFb1tGLkQuQWRdPTEsRW9bRi5ELnplXT0xLEVvW0YuRC5vY109MSxFb1tGLkQuUWNdPTEsRW9bRi5ELnFjXT0xLEVvW0YuRC5JYl09MSxFb1tGLkQuQWVdPTEsRW9bRi5ELnJjXT0xLEVvW0YuRC55bF09MSxFbykpLEdvPU9iamVjdC5mcmVlemUoW0YuRC5SYyxGLkQuU2MsRi5ELkpkLEYuRC5RZixGLkQuV2YsRi5ELlRkLEYuRC5PaSxGLkQuVmRdKSxIbz1PYmplY3QuZnJlZXplKFtdLmNvbmNhdCh3KEdvKSkpLElvPU9iamVjdC5mcmVlemUoW0YuRC5DYiwKRi5ELnBoLEYuRC55aCxGLkQuUGksRi5ELm5oXSksSm89T2JqZWN0LmZyZWV6ZShbXS5jb25jYXQodyhJbykpKSxLbz17fSxMbz0oS29bRi5ELmthXT0iMSIsS29bRi5ELnJhXT0iMiIsS29bRi5ELm1hXT0iMyIsS29bRi5ELlhhXT0iNCIsS28pLE1vPXt9LE5vPU9iamVjdC5mcmVlemUoKE1vLnNlYXJjaD0icyIsTW8ueW91dHViZT0ieSIsTW8ucGxheXN0b3JlPSJwIixNby5zaG9wcGluZz0iaCIsTW8uYWRzPSJhIixNby5tYXBzPSJtIixNbykpO2Z1bmN0aW9uIE9vKGEpe3JldHVybiB0eXBlb2YgYSE9PSJvYmplY3QifHxhPT09bnVsbD97fTphfWZ1bmN0aW9uIFBvKGEpe3JldHVybiBhPT09dm9pZCAwfHxhPT09bnVsbD8iIjp0eXBlb2YgYT09PSJvYmplY3QiP2EudG9TdHJpbmcoKTpTdHJpbmcoYSl9ZnVuY3Rpb24gUW8oYSl7aWYoYSE9PXZvaWQgMCYmYSE9PW51bGwpcmV0dXJuIFBvKGEpfTt2YXIgUm89W0YuRC5rYSxGLkQucmEsRi5ELm1hLEYuRC5YYV07ZnVuY3Rpb24gU28oYSl7Zm9yKHZhciBiPW0oYVtGLkQubmNdfHxbIiJdKSxjPWIubmV4dCgpLGQ9e307IWMuZG9uZTtkPXtyZWdpb246dm9pZCAwfSxjPWIubmV4dCgpKWQucmVnaW9uPWMudmFsdWUsR2IoYSxmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oZixnKXtpZihmIT09Ri5ELm5jKXt2YXIgaD1QbyhnKSxsPWUucmVnaW9uLG49eW0oKSxwPXptKCk7eWw9ITA7eGwmJnNiKCJUQUdHSU5HIiwyMCk7dGwoKS5kZWNsYXJlKGYsaCxsLG4scCl9fX0oZCkpfQpmdW5jdGlvbiBUbyhhKXt5bygpO3ZhciBiPWFsKDE3LGZ1bmN0aW9uKCl7cmV0dXJuITF9KSxjPWFsKDE2LGZ1bmN0aW9uKCl7cmV0dXJuITF9KTshYiYmYyYmeG8oImNyYyIpO1prKDE3LCEwKTt2YXIgZD1hW0YuRC5ZZ107ZCYmUCg0MSk7dmFyIGU9YVtGLkQubmNdO2U/UCg0MCk6ZT1bIiJdO2Zvcih2YXIgZj1tKGUpLGc9Zi5uZXh0KCksaD17fTshZy5kb25lO2g9e0JvOnZvaWQgMH0sZz1mLm5leHQoKSloLkJvPWcudmFsdWUsR2IoYSxmdW5jdGlvbihsKXtyZXR1cm4gZnVuY3Rpb24obixwKXtpZihuIT09Ri5ELm5jJiZuIT09Ri5ELllnKXt2YXIgcT1RbyhwKSxyPWwuQm8sdD1OdW1iZXIoZCksdT15bSgpLHY9em0oKTt0PXQ9PT12b2lkIDA/MDp0O3hsPSEwO3lsJiZzYigiVEFHR0lORyIsMjApO3RsKCkuZGVmYXVsdChuLHEscix1LHYsdCxBbCl9fX0oaCkpfQpmdW5jdGlvbiBVbyhhKXtBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM9ITA7dmFyIGI9YVtGLkQubmNdO2lmKGIpe3ZhciBjPUFycmF5LmlzQXJyYXkoYik/YjpbYl07aWYoIWMuaW5jbHVkZXMoem0oKSkmJiFjLmluY2x1ZGVzKHltKCkpKXJldHVybn1HYihhLGZ1bmN0aW9uKGQsZSl7c3dpdGNoKGQpe2Nhc2UgImFkX3N0b3JhZ2UiOmNhc2UgImFuYWx5dGljc19zdG9yYWdlIjpjYXNlICJhZF91c2VyX2RhdGEiOmNhc2UgImFkX3BlcnNvbmFsaXphdGlvbiI6YnJlYWs7ZGVmYXVsdDpyZXR1cm59QWwudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzPSEwO0FsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzW2RdPWU9PT0iZ3JhbnRlZCI/MzoyfSl9CmZ1bmN0aW9uIFZvKGEsYil7eW8oKTtaaygxNiwhMCk7R2IoYSxmdW5jdGlvbihjLGQpe3ZhciBlPVBvKGQpO3hsPSEwO3lsJiZzYigiVEFHR0lORyIsMjApO3RsKCkudXBkYXRlKGMsZSxBbCl9KTtHbChiLmV2ZW50SWQsYi5wcmlvcml0eUlkKX1mdW5jdGlvbiBXbyhhKXthLmhhc093blByb3BlcnR5KCJhbGwiKSYmKEFsLnNlbGVjdGVkQWxsQ29yZVBsYXRmb3JtU2VydmljZXM9ITAsR2IoTm8sZnVuY3Rpb24oYil7QWwuY29yZVBsYXRmb3JtU2VydmljZXNbYl09YS5hbGw9PT0iZ3JhbnRlZCI7QWwudXNlZENvcmVQbGF0Zm9ybVNlcnZpY2VzPSEwfSkpO0diKGEsZnVuY3Rpb24oYixjKXtiIT09ImFsbCImJihBbC5jb3JlUGxhdGZvcm1TZXJ2aWNlc1tiXT1jPT09ImdyYW50ZWQiLEFsLnVzZWRDb3JlUGxhdGZvcm1TZXJ2aWNlcz0hMCl9KX0KZnVuY3Rpb24gWG8oYSl7QXJyYXkuaXNBcnJheShhKXx8KGE9W2FdKTtyZXR1cm4gYS5ldmVyeShmdW5jdGlvbihiKXtyZXR1cm4gQmwoYil9KX1mdW5jdGlvbiBZbygpe3ZhciBhPVpvO0FycmF5LmlzQXJyYXkoYSl8fChhPVthXSk7cmV0dXJuIGEuc29tZShmdW5jdGlvbihiKXtyZXR1cm4gQmwoYil9KX1mdW5jdGlvbiAkbyhhLGIpe0ZsKGEsYil9ZnVuY3Rpb24gYXAoYSxiKXtJbChhLGIpfWZ1bmN0aW9uIGJwKGEsYil7SGwoYSxiKX1mdW5jdGlvbiBjcCgpe3ZhciBhPVtGLkQua2EsRi5ELlhhLEYuRC5tYV07dGwoKS53YWl0Rm9yVXBkYXRlKGEsNTAwLEFsKX1mdW5jdGlvbiBkcChhKXtmb3IodmFyIGI9bShhKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTt0bCgpLmNsZWFyVGltZW91dChkLHZvaWQgMCxBbCl9R2woKX0KZnVuY3Rpb24gZXAoYSl7Zm9yKHZhciBiPXt9LGM9bShhLnNwbGl0KCJ8IikpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKWJbZC52YWx1ZV09ITA7cmV0dXJuIGJ9O3ZhciBmcD1PYmplY3QuZnJlZXplKFtGLkQua2EsRi5ELm1hXSk7CnZhciBocD1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz1tKE9iamVjdC5rZXlzKGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtiW2dwW2VdfHxlXT1hW2VdfXJldHVybiBifSxpcD1mdW5jdGlvbihhKXtyZXR1cm4hIVEoYSxILkoudmQpJiZSKGEsRi5ELlBkKT09PSIxIiYmUihhLEYuRC5IZCkhPT0iMSImJlhvKGZwKX0sanA9ZnVuY3Rpb24oYSxiKXtpZighaXAoYSkpcmV0dXJuITE7dmFyIGM9UWMoKXx8T2MoKT81ODo1NyxkPU5tKGMsaHAoYikpO1RsKGQsYSxjKTtZbih7ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmMsZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxkKyImZm10PTgiLHZvaWQgMCx7UWc6ITAsbWV0aG9kOiJHRVQifSxmdW5jdGlvbigpe30sZnVuY3Rpb24oKXtaYyhkKyImZm10PTMiKX0pO3JldHVybiEwfSxrcD17fSxncD0oa3AuZGw9InVybCIsa3AuZHI9CiJyZWYiLGtwLnVpZD0idXNlcklkIixrcCk7dmFyIGxwPWZ1bmN0aW9uKGEsYil7dmFyIGM9e30sZD1mdW5jdGlvbihlKXtiW2VdIT1udWxsJiZiW2VdIT09IiImJihjW2VdPWJbZV0pfTtNKDQ3NCkmJmQoIl9nc2lkIik7UihhLEYuRC5IZCkhPT0iMSImJihkKCJnY2xpZCIpLGQoImdjbHNyYyIpLGQoImF1aWQiKSxkKCJkY2xpZCIpKTtpZihPYmplY3Qua2V5cyhjKS5sZW5ndGgpcmV0dXJuIGQoImd0bSIpLGN9Owp2YXIgbXA9e30sbnA9KG1wW0YuRC5zYV09ImdjdSIsbXBbRi5ELlNiXT0iZ2NsZ2IiLG1wW0YuRC5sYl09ImdjbGF3IixtcFtGLkQuemZdPSJnYWRfc291cmNlIixtcFtGLkQuQWZdPSJnYWRfc291cmNlX3NyYyIsbXBbRi5ELkRkXT0iZ2NsaWQiLG1wW0YuRC5BbF09ImdjbHNyYyIsbXBbRi5ELkJmXT0iZ2JyYWlkIixtcFtGLkQuRWVdPSJ3YnJhaWQiLG1wW0YuRC5FZF09ImF1aWQiLG1wW0YuRC5CbF09ImFlIixtcFtGLkQuSGFdPW51bGwsbXBbRi5ELkRsXT0icm5kIixtcFtGLkQuSGRdPSJuY2wiLG1wW0YuRC5OZl09ImdjbGRjIixtcFtGLkQuS2RdPSJkY2xpZCIsbXBbRi5ELlZjXT0iZWRpZCIsbXBbRi5ELlViXT0iZW4iLG1wW0YuRC5LZV09ImdkcHIiLG1wW0YuRC5YY109ImdkaWQiLG1wW0YuRC5UYV09bnVsbCxtcFtGLkQuTGVdPSJfbmciLG1wW0YuRC50aF09ImdwcF9zaWQiLG1wW0YuRC51aF09ImdwcCIsbXBbRi5ELlZmXT0iX3R1IixtcFtGLkQuUWxdPSJndG1fdXAiLG1wW0YuRC5NZV09CiJmcm0iLG1wW0YuRC5QZF09ImxwcyIsbXBbRi5ELkxpXT0iZGlkIixtcFtGLkQuVWxdPSJuYXZ0IixtcFtGLkQuemFdPSJkbCIsbXBbRi5ELlVhXT0iZHIiLG1wW0YuRC5NYl09ImR0IixtcFtGLkQuYm1dPSJzY3JzcmMiLG1wW0YuRC5aZl09ImdhX3VpZCIsbXBbRi5ELk9lXT0iZ2Rwcl9jb25zZW50IixtcFtGLkQuUWldPSJ0ZXN0b25seSIsbXBbRi5ELnJxXT0idV90eiIsbXBbRi5ELlBlXT0idG9wIixtcFtGLkQuUWVdPSJ0aWQiLG1wW0YuRC5mYl09InVpZCIsbXBbRi5ELmtnXT0idXNfcHJpdmFjeSIsbXBbRi5ELmVkXT1udWxsLG1wW0YuRC5kZV09Im5wYSIsbXApO2Z1bmN0aW9uIG9wKGEsYil7aWYoYiE9bnVsbCYmYiE9PSIiKXt2YXIgYz1iPT09ITA/IjEiOmI9PT0hMT8iMCI6ZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhiKSk7aWYoU2IoYSwiXyYiKSlyZXR1cm57a2V5OmEuc3Vic3RyaW5nKDIpLHZhbHVlOmN9O3ZhciBkPW5wW2FdO2lmKGQhPT1udWxsKXJldHVybiBkP3trZXk6ZCx2YWx1ZTpjfTp7a2V5OkFiKGIpPyJlcG4uIithOiJlcC4iK2EsdmFsdWU6Y319fTtmdW5jdGlvbiBwcChhKXthPWE9PT12b2lkIDA/W106YTtyZXR1cm4geGooYSkuam9pbigifiIpfTtmdW5jdGlvbiBxcCgpe3ZhciBhPVtdLGI9TnVtYmVyKCcnKXx8MCxjPU51bWJlcignJyl8fDA7Y3x8KGM9Yi8xMDApO3ZhciBkPWZ1bmN0aW9uKCl7dmFyIHQ9ITE7cmV0dXJuIHR9KCk7YS5wdXNoKHt1azoyMjgsc3R1ZHlJZDoyMjgsZXhwZXJpbWVudElkOjEwNTE3NzE1NCxjb250cm9sSWQ6MTA1MTc3MTU1LGNvbnRyb2xJZDI6MTA1MjU1MjQ1LHByb2JhYmlsaXR5OmMsYWN0aXZlOmQsWmU6MH0pO3ZhciBlPU51bWJlcignJyl8fAowLGY9TnVtYmVyKCcnKXx8MDtmfHwoZj1lLzEwMCk7dmFyIGc9ZnVuY3Rpb24oKXt2YXIgdD0hMTtyZXR1cm4gdH0oKTthLnB1c2goe3VrOjIzNSxzdHVkeUlkOjIzNSxleHBlcmltZW50SWQ6MTA1MzU3MTUwLGNvbnRyb2xJZDoxMDUzNTcxNTEsY29udHJvbElkMjowLHByb2JhYmlsaXR5OmYsYWN0aXZlOmcsWmU6MX0pO3ZhciBoPU51bWJlcignJyl8fDAsbD1OdW1iZXIoJycpfHwKMDtsfHwobD1oLzEwMCk7dmFyIG49ZnVuY3Rpb24oKXt2YXIgdD0hMTtyZXR1cm4gdH0oKTthLnB1c2goe3VrOjI2NixzdHVkeUlkOjI2NixleHBlcmltZW50SWQ6MTE1NzE4NTI5LGNvbnRyb2xJZDoxMTU3MTg1MzAsY29udHJvbElkMjoxMTU3MTg1MzEscHJvYmFiaWxpdHk6bCxhY3RpdmU6bixaZTowfSk7dmFyIHA9TnVtYmVyKCcnKXx8MCxxPU51bWJlcignJyl8fAowO3F8fChxPXAvMTAwKTt2YXIgcj1mdW5jdGlvbigpe3ZhciB0PSExO3JldHVybiB0fSgpO2EucHVzaCh7dWs6MjY3LHN0dWR5SWQ6MjY3LGV4cGVyaW1lbnRJZDoxMTU3MTg1MjYsY29udHJvbElkOjExNTcxODUyNyxjb250cm9sSWQyOjExNTcxODUyOCxwcm9iYWJpbGl0eTpxLGFjdGl2ZTpyLFplOjB9KTtyZXR1cm4gYX07dmFyIHJwPWZ1bmN0aW9uKCl7dGhpcy5LPXt9O3RoaXMuSD17fTt0aGlzLk49e307dGhpcy5SPW5ldyBTZXR9LHhwPWZ1bmN0aW9uKGEsYil7dmFyIGM9YixkPWI9YS5OW2Muc3R1ZHlJZF0/bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLHthY3RpdmU6ITB9KTpjLGU9Rmk7ZC5jb250cm9sSWQyJiZkLnByb2JhYmlsaXR5PD0uMjV8fChkPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sZCx7Y29udHJvbElkMjowfSkpO2Uuc3R1ZGllc1tkLnN0dWR5SWRdPWQ7Yi5mb2N1c2VkJiYoYS5LW2Iuc3R1ZHlJZF09ITApO2lmKGIuWmU9PT0xKXt2YXIgZj1iLnN0dWR5SWQ7c3AoYSx0cCgpLGYpO3VwKGEsZik/dGoodWosZik6dnAoYSxmKT91ai5LW2ZdPSEwOndwKGEsZikmJih1ai5IW2ZdPSEwKX1lbHNlIGlmKGIuWmU9PT0wKXt2YXIgZz1iLnN0dWR5SWQ7c3AoYSxhLkgsZyk7dXAoYSxnKT90aih1aixnKTp2cChhLGcpP3VqLktbZ109ITA6d3AoYSxnKSYmCih1ai5IW2ddPSEwKX19LHNwPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPUZpO2lmKGUuc3R1ZGllc1tjXSl7dmFyIGY9ZS5zdHVkaWVzW2NdLGc9Zi5leHBlcmltZW50SWQsaD1mLnByb2JhYmlsaXR5O2lmKCEoYi5zdHVkaWVzfHx7fSlbY10pe3ZhciBsPWIuc3R1ZGllc3x8e307bFtjXT0hMDtiLnN0dWRpZXM9bDtpZighZS5zdHVkaWVzW2NdLmFjdGl2ZSlpZihlLnN0dWRpZXNbY10ucHJvYmFiaWxpdHk+LjUpSWkoYixnLGMpO2Vsc2UgaWYoIShoPD0wfHxoPjEpKXt2YXIgbj12b2lkIDA7aWYoZCl7dmFyIHA9Q2koZCsifiIrYyk7aWYocD09PSJlMiIpbj0tMTtlbHNle2Zvcih2YXIgcT1uZXcgVWludDhBcnJheShwKSxyPUJpZ0ludCgwKSx0PW0ocSksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpcj1yPDxCaWdJbnQoOCl8QmlnSW50KHUudmFsdWUpO249TnVtYmVyKHIlQmlnSW50KE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSl9fUdpLnNrKGIsYyxuKX19fWlmKCFhLktbY10pe3ZhciB2PQpOaShiLGMpO3YmJndqLkguSy5hZGQodil9fSx0cD1mdW5jdGlvbigpe3JldHVybiBvbShqbS5iYS5UcSx7fSl9LHVwPWZ1bmN0aW9uKGEsYil7dmFyIGM9dHAoKTtyZXR1cm4gS2koYyxiKXx8S2koYS5ILGIpfSx2cD1mdW5jdGlvbihhLGIpe3ZhciBjPXRwKCk7cmV0dXJuIExpKGMsYil8fExpKGEuSCxiKX0sd3A9ZnVuY3Rpb24oYSxiKXt2YXIgYz10cCgpO3JldHVybiBNaShjLGIpfHxNaShhLkgsYil9LHlwOwpmdW5jdGlvbiB6cCgpe2lmKCF5cCl7dmFyIGE9eXA9bmV3IHJwLGIsYyxkPSgoYj1BKT09bnVsbD92b2lkIDA6KGM9Yi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmMuaGFzaCl8fCIiO2lmKGRbMF09PT0iIyImJmRbMV09PT0iXyImJmRbMl09PT0idCImJmRbM109PT0iZSImJmRbNF09PT0iPSIpe3ZhciBlPWQuc3Vic3RyaW5nKDUpO2lmKGUpZm9yKHZhciBmPW0oZS5zcGxpdCgifiIpKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9TnVtYmVyKGcudmFsdWUpO2gmJihhLk5baF09ITAsdGoodWosaCkpfX1mb3IodmFyIGw9bShxcCgpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl4cChhLG4udmFsdWUpO2Zvcih2YXIgcD1bXSxxPW0oTWYoNTYpfHxbXSkscj1xLm5leHQoKTshci5kb25lO3I9cS5uZXh0KCkpe3ZhciB0PXIudmFsdWUsdT17c3R1ZHlJZDp0WzFdLGFjdGl2ZTohIXRbMl0scHJvYmFiaWxpdHk6dFszXXx8MCxleHBlcmltZW50SWQ6dFs0XXx8CjAsY29udHJvbElkOnRbNV18fDAsY29udHJvbElkMjp0WzZdfHwwfSx2PTA7c3dpdGNoKHRbN10pe2Nhc2UgMjp2PTE7YnJlYWs7Y2FzZSAzOnY9MjticmVhaztjYXNlIDE6Y2FzZSA0OmNhc2UgNTpjYXNlIDA6dj0wfXZhciB4O2E6c3dpdGNoKHUuc3R1ZHlJZCl7Y2FzZSA1Njc6Y2FzZSA0NjI6eD0hMDticmVhayBhO2RlZmF1bHQ6eD0hMX12YXIgeT1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHUse1plOnYsZm9jdXNlZDp4fSk7KHkuYWN0aXZlfHx5LnByb2JhYmlsaXR5Pi41JiZ5LmV4cGVyaW1lbnRJZHx8eS5leHBlcmltZW50SWQmJnkuY29udHJvbElkKSYmcC5wdXNoKHkpfWZvcih2YXIgej1tKHApLEM9ei5uZXh0KCk7IUMuZG9uZTtDPXoubmV4dCgpKXhwKGEsQy52YWx1ZSl9fQpmdW5jdGlvbiBBcChhLGIpe3pwKCk7dmFyIGM9eXA7c3AoYyx0cCgpLGEsYik7dXAoYyxhKT90aih1aixhKTp2cChjLGEpP3VqLktbYV09ITA6d3AoYyxhKSYmKHVqLkhbYV09ITApfWZ1bmN0aW9uIEJwKCl7enAoKTt2YXIgYT15cCxiPXVwKGEsNTY3KTtpZihhLktbNTY3XSl7dmFyIGMsZD10cCgpOyhjPU5pKGQsNTY3KXx8TmkoYS5ILDU2NykpJiZhLlIuYWRkKGMpfXJldHVybiBifWZ1bmN0aW9uIENwKGEpe3pwKCk7dmFyIGI9bmV3IFNldCh5cC5SKTtpZihhKWZvcih2YXIgYz1RKGEsSC5KLkNoKXx8W10sZD1tKGMpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKWIuYWRkKGUudmFsdWUpO3JldHVybiBwcChbXS5jb25jYXQodyhiKSkpfTtmdW5jdGlvbiBEcChhKXt2YXIgYj1hLmxvY2F0aW9uLmhyZWY7aWYoYT09PWEudG9wKXJldHVybnt1cmw6YixJczohMH07dmFyIGM9ITEsZD1hLmRvY3VtZW50O2QmJmQucmVmZXJyZXImJihiPWQucmVmZXJyZXIsYS5wYXJlbnQ9PT1hLnRvcCYmKGM9ITApKTt2YXIgZT1hLmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucztpZihlKXt2YXIgZj1lW2UubGVuZ3RoLTFdLGc7ZiYmKChnPWIpPT1udWxsP3ZvaWQgMDpnLmluZGV4T2YoZikpPT09LTEmJihjPSExLGI9Zil9cmV0dXJue3VybDpiLElzOmN9fWZ1bmN0aW9uIEVwKGEpe3RyeXt2YXIgYjtpZihiPSEhYSYmYS5sb2NhdGlvbi5ocmVmIT1udWxsKWE6e3RyeXtIbihhLmZvbyk7Yj0hMDticmVhayBhfWNhdGNoKGMpe31iPSExfXJldHVybiBifWNhdGNoKGMpe3JldHVybiExfX1mdW5jdGlvbiBGcCgpe2Zvcih2YXIgYT1BLGI9YTthJiZhIT09YS5wYXJlbnQ7KWE9YS5wYXJlbnQsRXAoYSkmJihiPWEpO3JldHVybiBifTt2YXIgR3A9ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdW5jdGlvbigpe307Yy5wcm90b3R5cGU9YS5wcm90b3R5cGU7dmFyIGQ9bmV3IGM7YS5hcHBseShkLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSk7cmV0dXJuIGR9LEhwPWZ1bmN0aW9uKGEpe3ZhciBiPWE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYil7dmFyIGM9YjtiPW51bGw7YygpfX19O2Z1bmN0aW9uIElwKGEsYil7aWYoYSlmb3IodmFyIGMgaW4gYSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxjKSYmYihhW2NdLGMsYSl9O2Z1bmN0aW9uIEpwKGEpe3ZhciBiPWEuc3BsaXQoL1s/I10vKSxjPS9bP10vLnRlc3QoYSk/Ij8iK2JbMV06IiI7cmV0dXJue3prOmJbMF0scGFyYW1zOmMsZnJhZ21lbnQ6L1sjXS8udGVzdChhKT8iIyIrKGM/YlsyXTpiWzFdKToiIn19ZnVuY3Rpb24gS3AoYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2lmKGIubGVuZ3RoPT09MClyZXR1cm4gamMoYVswXSk7Zm9yKHZhciBjPWFbMF0sZD0wO2Q8Yi5sZW5ndGg7ZCsrKWMrPWVuY29kZVVSSUNvbXBvbmVudChiW2RdKSthW2QrMV07cmV0dXJuIGpjKGMpfQpmdW5jdGlvbiBMcChhLGIsYyxkKXtmdW5jdGlvbiBlKGcsaCl7ZyE9bnVsbCYmKEFycmF5LmlzQXJyYXkoZyk/Zy5mb3JFYWNoKGZ1bmN0aW9uKGwpe3JldHVybiBlKGwsaCl9KTooYis9ZitlbmNvZGVVUklDb21wb25lbnQoaCkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChnKSxmPSImIikpfXZhciBmPWIubGVuZ3RoPyImIjoiPyI7ZC5jb25zdHJ1Y3Rvcj09PU9iamVjdCYmKGQ9T2JqZWN0LmVudHJpZXMoZCkpO0FycmF5LmlzQXJyYXkoZCk/ZC5mb3JFYWNoKGZ1bmN0aW9uKGcpe3JldHVybiBlKGdbMV0sZ1swXSl9KTpkLmZvckVhY2goZSk7cmV0dXJuIGpjKGErYitjKX1mdW5jdGlvbiBNcChhLGIpe3ZhciBjPUpwKGtjKGEpLnRvU3RyaW5nKCkpLGQ9Yy56ay5zbGljZSgtMSk9PT0iLyI/IiI6Ii8iLGU9Yy56aytkK2VuY29kZVVSSUNvbXBvbmVudChiKTtyZXR1cm4gamMoZStjLnBhcmFtcytjLmZyYWdtZW50KX07dmFyIE5wPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWEsZD0wO2Q8NTA7KytkKXt2YXIgZTt0cnl7ZT0hKCFjLmZyYW1lc3x8IWMuZnJhbWVzW2JdKX1jYXRjaChoKXtlPSExfWlmKGUpcmV0dXJuIGM7dmFyIGY7YTp7dHJ5e3ZhciBnPWMucGFyZW50O2lmKGcmJmchPT1jKXtmPWc7YnJlYWsgYX19Y2F0Y2goaCl7fWY9bnVsbH1pZighKGM9ZikpYnJlYWt9cmV0dXJuIG51bGx9LE9wPWZ1bmN0aW9uKGEpe3ZhciBiPUE7aWYoYi50b3A9PWIpcmV0dXJuIDA7aWYoYT09PXZvaWQgMD8wOmEpe3ZhciBjPWIubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zO2lmKGMpcmV0dXJuIGNbYy5sZW5ndGgtMV09PWIubG9jYXRpb24ub3JpZ2luPzE6Mn1yZXR1cm4gRXAoYi50b3ApPzE6Mn0sUHA9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP2RvY3VtZW50OmE7cmV0dXJuIGEuY3JlYXRlRWxlbWVudCgiaW1nIil9O2Z1bmN0aW9uIFFwKGEpe2Zvcih2YXIgYj1bXSxjPUIuY29va2llLnNwbGl0KCI7IiksZD1uZXcgUmVnRXhwKCJeXFxzKiIrKGF8fCJfZ2FjIikrIl8oVUEtXFxkKy1cXGQrKT1cXHMqKC4rPylcXHMqJCIpLGU9MDtlPGMubGVuZ3RoO2UrKyl7dmFyIGY9Y1tlXS5tYXRjaChkKTtmJiZiLnB1c2goe3VkOmZbMV0sdmFsdWU6ZlsyXSx0aW1lc3RhbXA6TnVtYmVyKGZbMl0uc3BsaXQoIi4iKVsxXSl8fDB9KX1iLnNvcnQoZnVuY3Rpb24oZyxoKXtyZXR1cm4gaC50aW1lc3RhbXAtZy50aW1lc3RhbXB9KTtyZXR1cm4gYn0KZnVuY3Rpb24gUnAoYSxiKXt2YXIgYz1RcChhKSxkPXt9O2lmKCFjfHwhYy5sZW5ndGgpcmV0dXJuIGQ7Zm9yKHZhciBlPTA7ZTxjLmxlbmd0aDtlKyspe3ZhciBmPWNbZV0udmFsdWUuc3BsaXQoIi4iKTtpZighKGZbMF0hPT0iMSJ8fGImJmYubGVuZ3RoPDN8fCFiJiZmLmxlbmd0aCE9PTMpJiZOdW1iZXIoZlsxXSkpe2RbY1tlXS51ZF18fChkW2NbZV0udWRdPVtdKTt2YXIgZz17dmVyc2lvbjpmWzBdLHRpbWVzdGFtcDpOdW1iZXIoZlsxXSkqMUUzLGdjbGlkOmZbMl19O2ImJmYubGVuZ3RoPjMmJihnLmxhYmVscz1mLnNsaWNlKDMpKTtkW2NbZV0udWRdLnB1c2goZyl9fXJldHVybiBkfTtmdW5jdGlvbiBTcChhKXtyZXR1cm4gYS5vcmlnaW4hPT0ibnVsbCJ9O3ZhciBUcD17fSxVcD0oVHAuaz17bmE6L15bXHctXSskL30sVHAuYj17bmE6L15bXHctXSskLyxuazohMH0sVHAuaT17bmE6L15bMS05XVxkKiQvfSxUcC5oPXtuYTovXlxkKyQvfSxUcC50PXtuYTovXlsxLTldXGQqJC99LFRwLmQ9e25hOi9eW0EtWmEtejAtOV8tXSskL30sVHAuaj17bmE6L15cZCskL30sVHAudT17bmE6L15bMS05XVxkKiQvfSxUcC5sPXtuYTovXlswMV0kL30sVHAubz17bmE6L15bMS05XVxkKiQvfSxUcC5nPXtuYTovXlswMV0kL30sVHAucz17bmE6L14uKyQvfSxUcC5tPXtuYTovXlswMV0kL30sVHApO3ZhciBWcD17fSxacD0oVnBbNV09e2ppOnsyOldwfSxaajoiMiIsUmg6WyJrIiwiaSIsImIiLCJ1Il19LFZwWzRdPXtqaTp7MjpXcCxHQ0w6WHB9LFpqOiIyIixSaDpbImsiLCJpIiwiYiIsIm0iXX0sVnBbMl09e2ppOntHUzI6V3AsR1MxOllwfSxaajoiR1MyIixSaDoic29ndGpsaGQiLnNwbGl0KCIiKX0sVnApO2Z1bmN0aW9uICRwKGEsYixjKXt2YXIgZD1acFtiXTtpZihkKXt2YXIgZT1hLnNwbGl0KCIuIilbMF07Yz09bnVsbHx8YyhlKTtpZihlKXt2YXIgZj1kLmppW2VdO2lmKGYpcmV0dXJuIGYoYSxiKX19fQpmdW5jdGlvbiBXcChhLGIpe3ZhciBjPWEuc3BsaXQoIi4iKTtpZihjLmxlbmd0aD09PTMpe3ZhciBkPWNbMl07aWYoZC5pbmRleE9mKCIkIik9PT0tMSYmZC5pbmRleE9mKCIlMjQiKSE9PS0xKXRyeXtkPWRlY29kZVVSSUNvbXBvbmVudChkKX1jYXRjaCh0KXt9dmFyIGU9e30sZj1acFtiXTtpZihmKXtmb3IodmFyIGc9Zi5SaCxoPW0oZC5zcGxpdCgiJCIpKSxsPWgubmV4dCgpOyFsLmRvbmU7bD1oLm5leHQoKSl7dmFyIG49bC52YWx1ZSxwPW5bMF07aWYoZy5pbmRleE9mKHApIT09LTEpdHJ5e3ZhciBxPWRlY29kZVVSSUNvbXBvbmVudChuLnN1YnN0cmluZygxKSkscj1VcFtwXTtyJiYoci5uaz8oZVtwXT1lW3BdfHxbXSxlW3BdLnB1c2gocSkpOmVbcF09cSl9Y2F0Y2godCl7fX1yZXR1cm4gZX19fWZ1bmN0aW9uIGFxKGEsYixjKXt2YXIgZD1acFtiXTtpZihkKXJldHVybltkLlpqLGN8fCIxIixicShhLGIpXS5qb2luKCIuIil9CmZ1bmN0aW9uIGJxKGEsYil7dmFyIGM9WnBbYl07aWYoYyl7Zm9yKHZhciBkPVtdLGU9bShjLlJoKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPVVwW2ddO2lmKGgpe3ZhciBsPWFbZ107aWYobCE9PXZvaWQgMClpZihoLm5rJiZBcnJheS5pc0FycmF5KGwpKWZvcih2YXIgbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKWQucHVzaChlbmNvZGVVUklDb21wb25lbnQoIiIrZytwLnZhbHVlKSk7ZWxzZSBkLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCIiK2crbCkpfX1yZXR1cm4gZC5qb2luKCIkIil9fWZ1bmN0aW9uIFhwKGEpe3ZhciBiPWEuc3BsaXQoIi4iKTtiLnNoaWZ0KCk7dmFyIGM9Yi5zaGlmdCgpLGQ9Yi5zaGlmdCgpLGU9e307cmV0dXJuIGUuaz1kLGUuaT1jLGUuYj1iLGV9CmZ1bmN0aW9uIFlwKGEpe3ZhciBiPWEuc3BsaXQoIi4iKS5zbGljZSgyKTtpZighKGIubGVuZ3RoPDV8fGIubGVuZ3RoPjcpKXt2YXIgYz17fTtyZXR1cm4gYy5zPWJbMF0sYy5vPWJbMV0sYy5nPWJbMl0sYy50PWJbM10sYy5qPWJbNF0sYy5sPWJbNV0sYy5oPWJbNl0sY319O2Z1bmN0aW9uIGNxKGEsYixjLGQpe3ZhciBlO3JldHVybihlPWRxKGZ1bmN0aW9uKGYpe3JldHVybiBmPT09YX0sYixjLGQpW2FdKSE9bnVsbD9lOltdfWZ1bmN0aW9uIGRxKGEsYixjLGQpe3ZhciBlO2lmKGVxKGQpKXtmb3IodmFyIGY9e30sZz1TdHJpbmcoYnx8ZnEoKSkuc3BsaXQoIjsiKSxoPTA7aDxnLmxlbmd0aDtoKyspe3ZhciBsPWdbaF0uc3BsaXQoIj0iKSxuPWxbMF0udHJpbSgpO2lmKG4mJmEobikpe3ZhciBwPWwuc2xpY2UoMSkuam9pbigiPSIpLnRyaW0oKTtwJiZjJiYocD1kZWNvZGVVUklDb21wb25lbnQocCkpO3ZhciBxPXZvaWQgMCxyPXZvaWQgMDsoKHE9Zilbcj1uXXx8KHFbcl09W10pKS5wdXNoKHApfX1lPWZ9ZWxzZSBlPXt9O3JldHVybiBlfQpmdW5jdGlvbiBncShhLGIsYyxkLGUpe2lmKGVxKGUpKXt2YXIgZj1ocShhLGQsZSk7aWYoZi5sZW5ndGg9PT0xKXJldHVybiBmWzBdO2lmKGYubGVuZ3RoIT09MCl7Zj1pcShmLGZ1bmN0aW9uKGcpe3JldHVybiBnLkpyfSxiKTtpZihmLmxlbmd0aD09PTEpcmV0dXJuIGZbMF07Zj1pcShmLGZ1bmN0aW9uKGcpe3JldHVybiBnLldzfSxjKTtyZXR1cm4gZlswXX19fWZ1bmN0aW9uIGpxKGEsYixjLGQpe3ZhciBlPWZxKCksZj1BO1NwKGYpJiYoZi5kb2N1bWVudC5jb29raWU9YSk7dmFyIGc9ZnEoKTtyZXR1cm4gZSE9PWd8fGMhPT12b2lkIDAmJmNxKGIsZywhMSxkKS5pbmRleE9mKGMpPj0wfQpmdW5jdGlvbiBrcShhLGIsYyxkKXtmdW5jdGlvbiBlKHgseSx6KXtpZih6PT1udWxsKXJldHVybiBkZWxldGUgaFt5XSx4O2hbeV09ejtyZXR1cm4geCsiOyAiK3krIj0iK3p9ZnVuY3Rpb24gZih4LHkpe2lmKHk9PW51bGwpcmV0dXJuIHg7aFt5XT0hMDtyZXR1cm4geCsiOyAiK3l9aWYoIWVxKGMuTWMpKXJldHVybiAyO3ZhciBnO2I9PW51bGw/Zz1hKyI9ZGVsZXRlZDsgZXhwaXJlcz0iKyhuZXcgRGF0ZSgwKSkudG9VVENTdHJpbmcoKTooYy5lbmNvZGUmJihiPWVuY29kZVVSSUNvbXBvbmVudChiKSksYj1scShiKSxnPWErIj0iK2IpO3ZhciBoPXt9O2c9ZShnLCJwYXRoIixjLnBhdGgpO3ZhciBsO2MuZXhwaXJlcyBpbnN0YW5jZW9mIERhdGU/bD1jLmV4cGlyZXMudG9VVENTdHJpbmcoKTpjLmV4cGlyZXMhPW51bGwmJihsPSIiK2MuZXhwaXJlcyk7Zz1lKGcsImV4cGlyZXMiLGwpO2c9ZShnLCJtYXgtYWdlIixjLk9zKTtnPWUoZywic2FtZXNpdGUiLGMucnQpO2Muc2VjdXJlJiYKKGc9ZihnLCJzZWN1cmUiKSk7dmFyIG49Yy5kb21haW47aWYobiYmbi50b0xvd2VyQ2FzZSgpPT09ImF1dG8iKXtmb3IodmFyIHA9bXEoKSxxPXZvaWQgMCxyPSExLHQ9MDt0PHAubGVuZ3RoOysrdCl7dmFyIHU9cFt0XSE9PSJub25lIj9wW3RdOnZvaWQgMCx2PWUoZywiZG9tYWluIix1KTt2PWYodixjLmZsYWdzKTt0cnl7ZCYmZChhLGgpfWNhdGNoKHgpe3E9eDtjb250aW51ZX1yPSEwO2lmKCFucSh1LGMucGF0aCkmJmpxKHYsYSxiLGMuTWMpKXJldHVybiAwfWlmKHEmJiFyKXRocm93IHE7cmV0dXJuIDF9biYmbi50b0xvd2VyQ2FzZSgpIT09Im5vbmUiJiYoZz1lKGcsImRvbWFpbiIsbikpO2c9ZihnLGMuZmxhZ3MpO2QmJmQoYSxoKTtyZXR1cm4gbnEobixjLnBhdGgpPzE6anEoZyxhLGIsYy5NYyk/MDoxfWZ1bmN0aW9uIG9xKGEsYixjKXtjLnBhdGg9PW51bGwmJihjLnBhdGg9Ii8iKTtjLmRvbWFpbnx8KGMuZG9tYWluPSJhdXRvIik7cmV0dXJuIGtxKGEsYixjKX0KZnVuY3Rpb24gaXEoYSxiLGMpe2Zvcih2YXIgZD1bXSxlPVtdLGYsZz0wO2c8YS5sZW5ndGg7ZysrKXt2YXIgaD1hW2ddLGw9YihoKTtsPT09Yz9kLnB1c2goaCk6Zj09PXZvaWQgMHx8bDxmPyhlPVtoXSxmPWwpOmw9PT1mJiZlLnB1c2goaCl9cmV0dXJuIGQubGVuZ3RoPjA/ZDplfWZ1bmN0aW9uIGhxKGEsYixjKXtmb3IodmFyIGQ9W10sZT1jcShhLHZvaWQgMCx2b2lkIDAsYyksZj0wO2Y8ZS5sZW5ndGg7ZisrKXt2YXIgZz1lW2ZdLnNwbGl0KCIuIiksaD1nLnNoaWZ0KCk7aWYoIWJ8fCFofHxiLmluZGV4T2YoaCkhPT0tMSl7dmFyIGw9Zy5zaGlmdCgpO2lmKGwpe3ZhciBuPWwuc3BsaXQoIi0iKTtkLnB1c2goe0JyOmVbZl0sQ3I6Zy5qb2luKCIuIiksSnI6TnVtYmVyKG5bMF0pfHwxLFdzOk51bWJlcihuWzFdKXx8MX0pfX19cmV0dXJuIGR9ZnVuY3Rpb24gbHEoYSl7YSYmYS5sZW5ndGg+MTIwMCYmKGE9YS5zdWJzdHJpbmcoMCwxMjAwKSk7cmV0dXJuIGF9CnZhciBwcT0vXih3d3dcLik/Z29vZ2xlKFwuY29tPyk/KFwuW2Etel17Mn0pPyQvLHFxPS8oXnxcLilkb3VibGVjbGlja1wubmV0JC9pO2Z1bmN0aW9uIG5xKGEsYil7cmV0dXJuIGEhPT12b2lkIDAmJihxcS50ZXN0KEEuZG9jdW1lbnQubG9jYXRpb24uaG9zdG5hbWUpfHxiPT09Ii8iJiZwcS50ZXN0KGEpKX1mdW5jdGlvbiBycShhKXtpZighYSlyZXR1cm4gMTt2YXIgYj1hO1lmKDQpJiZhPT09Im5vbmUiJiYoYj1BLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lKTtiPWIuaW5kZXhPZigiLiIpPT09MD9iLnN1YnN0cmluZygxKTpiO3JldHVybiBiLnNwbGl0KCIuIikubGVuZ3RofWZ1bmN0aW9uIHNxKGEpe2lmKCFhfHxhPT09Ii8iKXJldHVybiAxO2FbMF0hPT0iLyImJihhPSIvIithKTthW2EubGVuZ3RoLTFdIT09Ii8iJiYoYSs9Ii8iKTtyZXR1cm4gYS5zcGxpdCgiLyIpLmxlbmd0aC0xfQpmdW5jdGlvbiB0cShhLGIpe3ZhciBjPSIiK3JxKGEpLGQ9c3EoYik7ZD4xJiYoYys9Ii0iK2QpO3JldHVybiBjfQp2YXIgZnE9ZnVuY3Rpb24oKXt2YXIgYT1BO3JldHVybiBTcChhKT9hLmRvY3VtZW50LmNvb2tpZToiIn0sZXE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJllmKDUpPyhBcnJheS5pc0FycmF5KGEpP2E6W2FdKS5ldmVyeShmdW5jdGlvbihiKXtyZXR1cm4gRGwoYikmJkJsKGIpfSk6ITB9LG1xPWZ1bmN0aW9uKCl7dmFyIGE9W10sYj1BLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lLnNwbGl0KCIuIik7aWYoYi5sZW5ndGg9PT00KXt2YXIgYz1iW2IubGVuZ3RoLTFdO2lmKE51bWJlcihjKS50b1N0cmluZygpPT09YylyZXR1cm5bIm5vbmUiXX1mb3IodmFyIGQ9Yi5sZW5ndGgtMjtkPj0wO2QtLSlhLnB1c2goYi5zbGljZShkKS5qb2luKCIuIikpO3ZhciBlPUEuZG9jdW1lbnQubG9jYXRpb24uaG9zdG5hbWU7cXEudGVzdChlKXx8cHEudGVzdChlKXx8YS5wdXNoKCJub25lIik7cmV0dXJuIGF9O2Z1bmN0aW9uIHVxKGEsYixjLGQpe3ZhciBlLGY9TnVtYmVyKGEucGQhPW51bGw/YS5wZDp2b2lkIDApO2YhPT0wJiYoZT1uZXcgRGF0ZSgoYnx8TmIoKSkrMUUzKihmfHw3Nzc2RTMpKSk7cmV0dXJue3BhdGg6YS5wYXRoLGRvbWFpbjphLmRvbWFpbixmbGFnczphLmZsYWdzLGVuY29kZTohIWMsZXhwaXJlczplLE1jOmR9fTt2YXIgdnE9bmV3IE1hcChbWzUsImFkX3N0b3JhZ2UiXSxbNCxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXV0sWzIsImFuYWx5dGljc19zdG9yYWdlIl1dKTtmdW5jdGlvbiB3cShhLGIsYyl7aWYoWnBbYl0pe2Zvcih2YXIgZD1bXSxlPWNxKGEsdm9pZCAwLHZvaWQgMCx2cS5nZXQoYikpLGY9bShlKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9JHAoZy52YWx1ZSxiLGMpO2gmJmQucHVzaCh4cShoKSl9cmV0dXJuIGR9fQpmdW5jdGlvbiB5cShhKXt2YXIgYj16cTtpZihacFsyXSl7Zm9yKHZhciBjPXt9LGQ9ZHEoYSx2b2lkIDAsdm9pZCAwLHZxLmdldCgyKSksZT1PYmplY3Qua2V5cyhkKS5zb3J0KCksZj1tKGUpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWZvcih2YXIgaD1nLnZhbHVlLGw9bShkW2hdKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9JHAobi52YWx1ZSwyLGIpO3AmJihjW2hdfHwoY1toXT1bXSksY1toXS5wdXNoKHhxKHApKSl9cmV0dXJuIGN9fWZ1bmN0aW9uIEFxKGEsYixjLGQsZSl7ZD1kfHx7fTt2YXIgZj10cShkLmRvbWFpbixkLnBhdGgpLGc9YXEoYixjLGYpO2lmKCFnKXJldHVybiAxO3ZhciBoPXVxKGQsZSx2b2lkIDAsdnEuZ2V0KGMpKTtyZXR1cm4gb3EoYSxnLGgpfWZ1bmN0aW9uIEJxKGEsYil7dmFyIGM9Yi5uYTtyZXR1cm4gdHlwZW9mIGM9PT0iZnVuY3Rpb24iP2MoYSk6Yy50ZXN0KGEpfQpmdW5jdGlvbiB4cShhKXtmb3IodmFyIGI9bShPYmplY3Qua2V5cyhhKSksYz1iLm5leHQoKSxkPXt9OyFjLmRvbmU7ZD17QWc6dm9pZCAwfSxjPWIubmV4dCgpKXt2YXIgZT1jLnZhbHVlLGY9YVtlXTtkLkFnPVVwW2VdO2QuQWc/ZC5BZy5uaz9hW2VdPUFycmF5LmlzQXJyYXkoZik/Zi5maWx0ZXIoZnVuY3Rpb24oZyl7cmV0dXJuIGZ1bmN0aW9uKGgpe3JldHVybiBCcShoLGcuQWcpfX0oZCkpOnZvaWQgMDp0eXBlb2YgZj09PSJzdHJpbmciJiZCcShmLGQuQWcpfHwoYVtlXT12b2lkIDApOmFbZV09dm9pZCAwfXJldHVybiBhfTt2YXIgQ3E7ZnVuY3Rpb24gRHEoKXtmdW5jdGlvbiBhKGcpe2MoZy50YXJnZXR8fGcuc3JjRWxlbWVudHx8e30pfWZ1bmN0aW9uIGIoZyl7ZChnLnRhcmdldHx8Zy5zcmNFbGVtZW50fHx7fSl9dmFyIGM9RXEsZD1GcSxlPUdxKCk7aWYoIWUuaW5pdCl7JGMoQiwibW91c2Vkb3duIixhKTskYyhCLCJrZXl1cCIsYSk7JGMoQiwic3VibWl0IixiKTt2YXIgZj1IVE1MRm9ybUVsZW1lbnQucHJvdG90eXBlLnN1Ym1pdDtIVE1MRm9ybUVsZW1lbnQucHJvdG90eXBlLnN1Ym1pdD1mdW5jdGlvbigpe2QodGhpcyk7Zi5jYWxsKHRoaXMpfTtlLmluaXQ9ITB9fWZ1bmN0aW9uIEhxKGEsYixjLGQsZSl7dmFyIGY9e2NhbGxiYWNrOmEsZG9tYWluczpiLGZyYWdtZW50OmM9PT0yLHBsYWNlbWVudDpjLGZvcm1zOmQsc2FtZUhvc3Q6ZX07R3EoKS5kZWNvcmF0b3JzLnB1c2goZil9CmZ1bmN0aW9uIElxKGEsYixjKXtmb3IodmFyIGQ9R3EoKS5kZWNvcmF0b3JzLGU9e30sZj0wO2Y8ZC5sZW5ndGg7KytmKXt2YXIgZz1kW2ZdLGg7aWYoaD0hY3x8Zy5mb3JtcylhOnt2YXIgbD1nLmRvbWFpbnMsbj1hLHA9ISFnLnNhbWVIb3N0O2lmKGwmJihwfHxuIT09Qi5sb2NhdGlvbi5ob3N0bmFtZSkpZm9yKHZhciBxPTA7cTxsLmxlbmd0aDtxKyspaWYobFtxXWluc3RhbmNlb2YgUmVnRXhwKXtpZihsW3FdLnRlc3Qobikpe2g9ITA7YnJlYWsgYX19ZWxzZSBpZihuLmluZGV4T2YobFtxXSk+PTB8fHAmJmxbcV0uaW5kZXhPZihuKT49MCl7aD0hMDticmVhayBhfWg9ITF9aWYoaCl7dmFyIHI9Zy5wbGFjZW1lbnQ7cj09PXZvaWQgMCYmKHI9Zy5mcmFnbWVudD8yOjEpO3I9PT1iJiZRYihlLGcuY2FsbGJhY2soKSl9fXJldHVybiBlfQpmdW5jdGlvbiBHcSgpe3ZhciBhPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KSxiPWEuZ2w7YiYmYi5kZWNvcmF0b3JzfHwoYj17ZGVjb3JhdG9yczpbXX0sYS5nbD1iKTtyZXR1cm4gYn07dmFyIEpxPS8oLio/KVwqKC4qPylcKiguKikvLEtxPS9eaHR0cHM/OlwvXC8oW15cL10qPylcLj9jZG5cLmFtcHByb2plY3RcLm9yZ1wvPyguKikvLExxPS9eKD86d3d3XC58bVwufGFtcFwuKSsvLE1xPS8oW14/I10rKShcP1teI10qKT8oIy4qKT8vO2Z1bmN0aW9uIE5xKGEpe3ZhciBiPU1xLmV4ZWMoYSk7aWYoYilyZXR1cm57aGs6YlsxXSxxdWVyeTpiWzJdLGZyYWdtZW50OmJbM119fWZ1bmN0aW9uIE9xKGEpe3JldHVybiBuZXcgUmVnRXhwKCIoLio/KShefCYpIithKyI9KFteJl0qKSY/KC4qKSIpfQpmdW5jdGlvbiBQcShhLGIpe3ZhciBjPVtIYy51c2VyQWdlbnQsKG5ldyBEYXRlKS5nZXRUaW1lem9uZU9mZnNldCgpLEhjLnVzZXJMYW5ndWFnZXx8SGMubGFuZ3VhZ2UsTWF0aC5mbG9vcihOYigpLzYwLzFFMyktKGI9PT12b2lkIDA/MDpiKSxhXS5qb2luKCIqIiksZDtpZighKGQ9Q3EpKXtmb3IodmFyIGU9QXJyYXkoMjU2KSxmPTA7ZjwyNTY7ZisrKXtmb3IodmFyIGc9ZixoPTA7aDw4O2grKylnPWcmMT9nPj4+MV4zOTg4MjkyMzg0Omc+Pj4xO2VbZl09Z31kPWV9Q3E9ZDtmb3IodmFyIGw9NDI5NDk2NzI5NSxuPTA7bjxjLmxlbmd0aDtuKyspbD1sPj4+OF5DcVsobF5jLmNoYXJDb2RlQXQobikpJjI1NV07cmV0dXJuKChsXi0xKT4+PjApLnRvU3RyaW5nKDM2KX0KZnVuY3Rpb24gUXEoYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe3ZhciBjPVJqKEEubG9jYXRpb24uaHJlZiksZD1jLnNlYXJjaC5yZXBsYWNlKCI/IiwiIiksZT1JaihkLCJfZ2wiLCExLCEwKXx8IiI7Yi5xdWVyeT1ScShlKXx8e307dmFyIGY9TGooYywiZnJhZ21lbnQiKSxnO3ZhciBoPS0xO2lmKFNiKGYsIl9nbD0iKSloPTQ7ZWxzZXt2YXIgbD1mLmluZGV4T2YoIiZfZ2w9Iik7bD4wJiYoaD1sKzMrMil9aWYoaDwwKWc9dm9pZCAwO2Vsc2V7dmFyIG49Zi5pbmRleE9mKCImIixoKTtnPW48MD9mLnN1YnN0cmluZyhoKTpmLnN1YnN0cmluZyhoLG4pfWIuZnJhZ21lbnQ9UnEoZ3x8IiIpfHx7fTthJiZTcShjLGQsZil9fWZ1bmN0aW9uIFRxKGEsYil7dmFyIGM9T3EoYSkuZXhlYyhiKSxkPWI7aWYoYyl7dmFyIGU9Y1syXSxmPWNbNF07ZD1jWzFdO2YmJihkPWQrZStmKX1yZXR1cm4gZH0KZnVuY3Rpb24gU3EoYSxiLGMpe2Z1bmN0aW9uIGQoZyxoKXt2YXIgbD1UcSgiX2dsIixnKTtsLmxlbmd0aCYmKGw9aCtsKTtyZXR1cm4gbH1pZihHYyYmR2MucmVwbGFjZVN0YXRlKXt2YXIgZT1PcSgiX2dsIik7aWYoZS50ZXN0KGIpfHxlLnRlc3QoYykpe3ZhciBmPUxqKGEsInBhdGgiKTtiPWQoYiwiPyIpO2M9ZChjLCIjIik7R2MucmVwbGFjZVN0YXRlKHt9LCIiLCIiK2YrYitjKX19fWZ1bmN0aW9uIFVxKGEsYil7dmFyIGM9UXEoISFiKSxkPUdxKCk7ZC5kYXRhfHwoZC5kYXRhPXtxdWVyeTp7fSxmcmFnbWVudDp7fX0sYyhkLmRhdGEpKTt2YXIgZT17fSxmPWQuZGF0YTtmJiYoUWIoZSxmLnF1ZXJ5KSxhJiZRYihlLGYuZnJhZ21lbnQpKTtyZXR1cm4gZX0KdmFyIFJxPWZ1bmN0aW9uKGEpe3RyeXt2YXIgYj1WcShhLDMpO2lmKGIhPT12b2lkIDApe2Zvcih2YXIgYz17fSxkPWI/Yi5zcGxpdCgiKiIpOltdLGU9MDtlKzE8ZC5sZW5ndGg7ZSs9Mil7dmFyIGY9ZFtlXSxnPXFiKGRbZSsxXSk7Y1tmXT1nfXNiKCJUQUdHSU5HIiw2KTtyZXR1cm4gY319Y2F0Y2goaCl7c2IoIlRBR0dJTkciLDgpfX07ZnVuY3Rpb24gVnEoYSxiKXtpZihhKXt2YXIgYzthOntmb3IodmFyIGQ9YSxlPTA7ZTwzOysrZSl7dmFyIGY9SnEuZXhlYyhkKTtpZihmKXtjPWY7YnJlYWsgYX1kPUtqKGQpfHwiIn1jPXZvaWQgMH12YXIgZz1jO2lmKGcmJmdbMV09PT0iMSIpe3ZhciBoPWdbM10sbDthOntmb3IodmFyIG49Z1syXSxwPTA7cDxiOysrcClpZihuPT09UHEoaCxwKSl7bD0hMDticmVhayBhfWw9ITF9aWYobClyZXR1cm4gaDtzYigiVEFHR0lORyIsNyl9fX0KZnVuY3Rpb24gV3EoYSxiLGMsZCxlKXtmdW5jdGlvbiBmKHApe3A9VHEoYSxwKTt2YXIgcT1wLmNoYXJBdChwLmxlbmd0aC0xKTtwJiZxIT09IiYiJiYocCs9IiYiKTtyZXR1cm4gcCtufWQ9ZD09PXZvaWQgMD8hMTpkO2U9ZT09PXZvaWQgMD8hMTplO3ZhciBnPU5xKGMpO2lmKCFnKXJldHVybiIiO3ZhciBoPWcucXVlcnl8fCIiLGw9Zy5mcmFnbWVudHx8IiIsbj1hKyI9IitiO2Q/bC5zdWJzdHJpbmcoMSkubGVuZ3RoIT09MCYmZXx8KGw9IiMiK2YobC5zdWJzdHJpbmcoMSkpKTpoPSI/IitmKGguc3Vic3RyaW5nKDEpKTtyZXR1cm4iIitnLmhrK2grbH0KZnVuY3Rpb24gWHEoYSxiKXtmdW5jdGlvbiBjKG4scCxxKXt2YXIgcjthOntmb3IodmFyIHQgaW4gbilpZihuLmhhc093blByb3BlcnR5KHQpKXtyPSEwO2JyZWFrIGF9cj0hMX1pZihyKXt2YXIgdSx2PVtdLHg7Zm9yKHggaW4gbilpZihuLmhhc093blByb3BlcnR5KHgpKXt2YXIgeT1uW3hdO3khPT12b2lkIDAmJnk9PT15JiZ5IT09bnVsbCYmeS50b1N0cmluZygpIT09IltvYmplY3QgT2JqZWN0XSImJih2LnB1c2goeCksdi5wdXNoKHBiKFN0cmluZyh5KSkpKX12YXIgej12LmpvaW4oIioiKTt1PVsiMSIsUHEoeiksel0uam9pbigiKiIpO2Q/KFlmKDMpfHxZZigxKXx8IXApJiZZcSgiX2dsIix1LGEscCxxKTpacSgiX2dsIix1LGEscCxxKX19dmFyIGQ9KGEudGFnTmFtZXx8IiIpLnRvVXBwZXJDYXNlKCk9PT0iRk9STSIsZT1JcShiLDEsZCksZj1JcShiLDIsZCksZz1JcShiLDQsZCksaD1JcShiLDMsZCk7YyhlLCExLCExKTtjKGYsITAsITEpO1lmKDEpJiZjKGcsITAsITApO2Zvcih2YXIgbCBpbiBoKWguaGFzT3duUHJvcGVydHkobCkmJgokcShsLGhbbF0sYSl9ZnVuY3Rpb24gJHEoYSxiLGMpe2MudGFnTmFtZS50b0xvd2VyQ2FzZSgpPT09ImEiP1pxKGEsYixjKTpjLnRhZ05hbWUudG9Mb3dlckNhc2UoKT09PSJmb3JtIiYmWXEoYSxiLGMpfWZ1bmN0aW9uIFpxKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPyExOmQ7ZT1lPT09dm9pZCAwPyExOmU7dmFyIGY7aWYoZj1jLmhyZWYpe3ZhciBnO2lmKCEoZz1kKSl7dmFyIGg9QS5sb2NhdGlvbi5ocmVmLGw9TnEoYy5ocmVmKSxuPU5xKGgpO2c9IShsJiZuJiZsLmhrPT09bi5oayYmbC5xdWVyeT09PW4ucXVlcnkmJmwuZnJhZ21lbnQpfWY9Z31pZihmKXt2YXIgcD1XcShhLGIsYy5ocmVmLGQsZSk7dmMudGVzdChwKSYmKGMuaHJlZj1wKX19CmZ1bmN0aW9uIFlxKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPyExOmQ7ZT1lPT09dm9pZCAwPyExOmU7aWYoYyl7dmFyIGY9Yy5nZXRBdHRyaWJ1dGUoImFjdGlvbiIpfHwiIjtpZihmKXt2YXIgZz0oYy5tZXRob2R8fCIiKS50b0xvd2VyQ2FzZSgpO2lmKGchPT0iZ2V0Inx8ZCl7aWYoZz09PSJnZXQifHxnPT09InBvc3QiKXt2YXIgaD1XcShhLGIsZixkLGUpO3ZjLnRlc3QoaCkmJihjLmFjdGlvbj1oKX19ZWxzZXtmb3IodmFyIGw9Yy5jaGlsZE5vZGVzfHxbXSxuPSExLHA9MDtwPGwubGVuZ3RoO3ArKyl7dmFyIHE9bFtwXTtpZihxLm5hbWU9PT1hKXtxLnNldEF0dHJpYnV0ZSgidmFsdWUiLGIpO249ITA7YnJlYWt9fWlmKCFuKXt2YXIgcj1CLmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7ci5zZXRBdHRyaWJ1dGUoInR5cGUiLCJoaWRkZW4iKTtyLnNldEF0dHJpYnV0ZSgibmFtZSIsYSk7ci5zZXRBdHRyaWJ1dGUoInZhbHVlIixiKTtjLmFwcGVuZENoaWxkKHIpfX19fX0KZnVuY3Rpb24gRXEoYSl7dHJ5e3ZhciBiO2E6e2Zvcih2YXIgYz1hLGQ9MTAwO2MmJmQ+MDspe2lmKGMuaHJlZiYmYy5ub2RlTmFtZS5tYXRjaCgvXmEoPzpyZWEpPyQvaSkpe2I9YzticmVhayBhfWM9Yy5wYXJlbnROb2RlO2QtLX1iPW51bGx9dmFyIGU9YjtpZihlKXt2YXIgZj1lLnByb3RvY29sO2YhPT0iaHR0cDoiJiZmIT09Imh0dHBzOiJ8fFhxKGUsZS5ob3N0bmFtZSl9fWNhdGNoKGcpe319ZnVuY3Rpb24gRnEoYSl7dHJ5e3ZhciBiPWEuZ2V0QXR0cmlidXRlKCJhY3Rpb24iKTtpZihiKXt2YXIgYz1MaihSaihiKSwiaG9zdCIpO1hxKGEsYyl9fWNhdGNoKGQpe319ZnVuY3Rpb24gYXIoYSxiLGMsZCl7RHEoKTt2YXIgZT1jPT09ImZyYWdtZW50Ij8yOjE7ZD0hIWQ7SHEoYSxiLGUsZCwhMSk7ZT09PTImJnNiKCJUQUdHSU5HIiwyMyk7ZCYmc2IoIlRBR0dJTkciLDI0KX0KZnVuY3Rpb24gYnIoYSxiKXtEcSgpO0hxKGEsW05qKEEubG9jYXRpb24sImhvc3QiLCEwKV0sYiwhMCwhMCl9ZnVuY3Rpb24gY3IoKXt2YXIgYT1CLmxvY2F0aW9uLmhvc3RuYW1lLGI9S3EuZXhlYyhCLnJlZmVycmVyKTtpZighYilyZXR1cm4hMTt2YXIgYz1iWzJdLGQ9YlsxXSxlPSIiO2lmKGMpe3ZhciBmPWMuc3BsaXQoIi8iKSxnPWZbMV07ZT1nPT09InMiP0tqKGZbMl0pfHwiIjpLaihnKXx8IiJ9ZWxzZSBpZihkKXtpZihkLmluZGV4T2YoInhuLS0iKT09PTApcmV0dXJuITE7ZT1kLnJlcGxhY2UoLy0vZywiLiIpLnJlcGxhY2UoL1wuXC4vZywiLSIpfXZhciBoPWEucmVwbGFjZShMcSwiIiksbD1lLnJlcGxhY2UoTHEsIiIpO3JldHVybiBoPT09bHx8VGIoaCwiLiIrbCl9ZnVuY3Rpb24gZHIoYSxiKXtyZXR1cm4gYT09PSExPyExOmF8fGJ8fGNyKCl9O3ZhciBlcj1mdW5jdGlvbihhKXt0aGlzLnZhbHVlPTA7dGhpcy52YWx1ZT1hPT09dm9pZCAwPzA6YX07ZXIucHJvdG90eXBlLnNldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZXw9MTw8YX07dmFyIGZyPWZ1bmN0aW9uKGEsYil7Yjw9MHx8KGEudmFsdWV8PTE8PGItMSl9O2VyLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX07ZXIucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKGEpe3RoaXMudmFsdWUmPX4oMTw8YSl9O2VyLnByb3RvdHlwZS5jbGVhckFsbD1mdW5jdGlvbigpe3RoaXMudmFsdWU9MH07ZXIucHJvdG90eXBlLmVxdWFscz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZT09PWEudmFsdWV9O2Z1bmN0aW9uIGdyKGEpe2lmKGEpdHJ5e3JldHVybiBuZXcgVWludDhBcnJheShhdG9iKGEucmVwbGFjZSgvLS9nLCIrIikucmVwbGFjZSgvXy9nLCIvIikpLnNwbGl0KCIiKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGIuY2hhckNvZGVBdCgwKX0pKX1jYXRjaChiKXt9fWZ1bmN0aW9uIGhyKGEsYil7dmFyIGM9MCxkPTAsZSxmPWI7ZG97aWYoZj49YS5sZW5ndGgpcmV0dXJuO2U9YVtmKytdO2N8PShlJjEyNyk8PGQ7ZCs9N313aGlsZShlJjEyOCk7cmV0dXJuW2MsZl19O2Z1bmN0aW9uIGlyKCl7dmFyIGE9U3RyaW5nLGI9QS5sb2NhdGlvbi5ob3N0bmFtZSxjPUEubG9jYXRpb24ucGF0aG5hbWUsZD1iPWJjKGIpO2Quc3BsaXQoIi4iKS5sZW5ndGg+MiYmKGQ9ZC5yZXBsYWNlKC9eKHd3d1swLTldKnx3ZWJ8ZnRwfHdhcHxob21lfG18d3xhbXB8bW9iaWxlKVwuLywiIikpO2I9ZDtjPWJjKGMpO3ZhciBlPWMuc3BsaXQoIjsiKVswXTtlPWUucmVwbGFjZSgvXC8oYXJ8c2xwfHdlYnxpbmRleCk/XC8/JC8sIiIpO3JldHVybiBhKG5nKCgiIitiK2UpLnRvTG93ZXJDYXNlKCkpKX07dmFyIGpyPVsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdO2Z1bmN0aW9uIGtyKGEsYil7aWYoIWEpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMiksMTA7aWYoYj09PW51bGx8fGI9PT12b2lkIDB8fGI9PT0iIilyZXR1cm4gc2IoIlRBR0dJTkciLDMzKSwxMTt2YXIgYz1scighMSk7aWYoYy5lcnJvciE9PTApcmV0dXJuIHNiKCJUQUdHSU5HIiwzNCksYy5lcnJvcjtpZighYy52YWx1ZSlyZXR1cm4gc2IoIlRBR0dJTkciLDM1KSwyO2MudmFsdWVbYV09Yjt2YXIgZD1tcihjKTtkIT09MCYmc2IoIlRBR0dJTkciLDM2KTtyZXR1cm4gZH0KZnVuY3Rpb24gbnIoYSl7aWYoIWEpcmV0dXJuIHNiKCJUQUdHSU5HIiwyNykse2Vycm9yOjEwfTt2YXIgYj1scigpO2lmKGIuZXJyb3IhPT0wKXJldHVybiBzYigiVEFHR0lORyIsMjkpLGI7aWYoIWIudmFsdWUpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMCkse2Vycm9yOjJ9O2lmKCEoYSBpbiBiLnZhbHVlKSlyZXR1cm4gc2IoIlRBR0dJTkciLDMxKSx7dmFsdWU6dm9pZCAwLGVycm9yOjE1fTt2YXIgYz1iLnZhbHVlW2FdO3JldHVybiBjPT09bnVsbHx8Yz09PXZvaWQgMHx8Yz09PSIiPyhzYigiVEFHR0lORyIsMjgpLHt2YWx1ZTp2b2lkIDAsZXJyb3I6MTF9KTp7dmFsdWU6YyxlcnJvcjowfX0KZnVuY3Rpb24gb3IoYSl7aWYoYSl7dmFyIGI9bHIoITEpO2IuZXJyb3IhPT0wP3NiKCJUQUdHSU5HIiwzOCk6Yi52YWx1ZT9hIGluIGIudmFsdWU/KGRlbGV0ZSBiLnZhbHVlW2FdLG1yKGIpIT09MCYmc2IoIlRBR0dJTkciLDQxKSk6c2IoIlRBR0dJTkciLDQwKTpzYigiVEFHR0lORyIsMzkpfWVsc2Ugc2IoIlRBR0dJTkciLDM3KX0KZnVuY3Rpb24gbHIoYSl7YT1hPT09dm9pZCAwPyEwOmE7aWYoIUJsKGpyKSlyZXR1cm4gc2IoIlRBR0dJTkciLDQzKSx7ZXJyb3I6M307dHJ5e2lmKCFBLmxvY2FsU3RvcmFnZSlyZXR1cm4gc2IoIlRBR0dJTkciLDQ0KSx7ZXJyb3I6MX19Y2F0Y2goZil7cmV0dXJuIHNiKCJUQUdHSU5HIiw0NSkse2Vycm9yOjE0fX12YXIgYj17c2NoZW1hOiJnY2wiLHZlcnNpb246MX0sYz12b2lkIDA7dHJ5e2M9QS5sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgiX2djbF9scyIpfWNhdGNoKGYpe3JldHVybiBzYigiVEFHR0lORyIsNDYpLHtlcnJvcjoxM319dHJ5e2lmKGMpe3ZhciBkPUpTT04ucGFyc2UoYyk7aWYoZCYmdHlwZW9mIGQ9PT0ib2JqZWN0IiliPWQ7ZWxzZSByZXR1cm4gc2IoIlRBR0dJTkciLDQ3KSx7ZXJyb3I6MTJ9fX1jYXRjaChmKXtyZXR1cm4gc2IoIlRBR0dJTkciLDQ4KSx7ZXJyb3I6OH19aWYoYi5zY2hlbWEhPT0iZ2NsIilyZXR1cm4gc2IoIlRBR0dJTkciLDQ5KSx7ZXJyb3I6NH07CmlmKGIudmVyc2lvbiE9PTEpcmV0dXJuIHNiKCJUQUdHSU5HIiw1MCkse2Vycm9yOjV9O3RyeXt2YXIgZT1wcihiKTthJiZlJiZtcih7dmFsdWU6YixlcnJvcjowfSl9Y2F0Y2goZil7cmV0dXJuIHNiKCJUQUdHSU5HIiw0OCkse2Vycm9yOjh9fXJldHVybnt2YWx1ZTpiLGVycm9yOjB9fQpmdW5jdGlvbiBwcihhKXtpZighYXx8dHlwZW9mIGEhPT0ib2JqZWN0IilyZXR1cm4hMTtpZigiZXhwaXJlcyJpbiBhJiYidmFsdWUiaW4gYSl7dmFyIGI7dHlwZW9mIGEuZXhwaXJlcz09PSJudW1iZXIiP2I9YS5leHBpcmVzOmI9dHlwZW9mIGEuZXhwaXJlcz09PSJzdHJpbmciP051bWJlcihhLmV4cGlyZXMpOk5hTjtpZihpc05hTihiKXx8IShEYXRlLm5vdygpPD1iKSlyZXR1cm4gYS52YWx1ZT1udWxsLGEuZXJyb3I9OSxzYigiVEFHR0lORyIsNTQpLCEwfWVsc2V7Zm9yKHZhciBjPSExLGQ9bShPYmplY3Qua2V5cyhhKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpYz1wcihhW2UudmFsdWVdKXx8YztyZXR1cm4gY31yZXR1cm4hMX0KZnVuY3Rpb24gbXIoYSl7aWYoYS5lcnJvcilyZXR1cm4gYS5lcnJvcjtpZighYS52YWx1ZSlyZXR1cm4gc2IoIlRBR0dJTkciLDQyKSwyO3ZhciBiPWEudmFsdWUsYzt0cnl7Yz1KU09OLnN0cmluZ2lmeShiKX1jYXRjaChkKXtyZXR1cm4gc2IoIlRBR0dJTkciLDUyKSw2fXRyeXtBLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJfZ2NsX2xzIixjKX1jYXRjaChkKXtyZXR1cm4gc2IoIlRBR0dJTkciLDUzKSw3fXJldHVybiAwfTt2YXIgcXI9e30scnI9KHFyLmdjbGlkPSEwLHFyLmRjbGlkPSEwLHFyLmdicmFpZD0hMCxxci53YnJhaWQ9ITAscXIpLHNyPS9eXHcrJC8sdHI9L15bXHctXSskLyx1cj17fSx2cj0odXIuYXc9IkZQR0NMQVciLHVyKSx3cj17fSx4cj0od3IuYWc9Il9hZyIsd3IuZ2I9Il9nYiIsd3IuYXc9Il9hdyIsd3IuZGM9Il9kYyIsd3IuZ2Y9Il9nZiIsd3IuaGE9Il9oYSIsd3IuZ3A9Il9ncCIsd3IuZ3M9Il9ncyIsd3IpLHlyPS9eKD86d3d3XC4pP2dvb2dsZSg/OlwuY29tPyk/KD86XC5bYS16XXsyfXQ/KT8kLyx6cj0vXnd3d1wuZ29vZ2xlYWRzZXJ2aWNlc1wuY29tJC87ZnVuY3Rpb24gQXIoKXtyZXR1cm5bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXX1mdW5jdGlvbiBCcihhKXtyZXR1cm4hWWYoNSl8fEJsKGEpfWZ1bmN0aW9uIENyKGEsYil7ZnVuY3Rpb24gYygpe3ZhciBkPUJyKGIpO2QmJmEoKTtyZXR1cm4gZH1IbChmdW5jdGlvbigpe2MoKXx8SWwoYyxiKX0sYil9CmZ1bmN0aW9uIERyKGEpe3JldHVybiBFcihhKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGIuZ2NsaWR9KX1mdW5jdGlvbiBGcihhKXtyZXR1cm4gR3IoYSkuZmlsdGVyKGZ1bmN0aW9uKGIpe3JldHVybiBiLmdjbGlkfSkubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBiLmdjbGlkfSl9ZnVuY3Rpb24gR3IoYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1IcihhLnByZWZpeCksZD1JcigiZ2IiLGMpLGU9SXIoImFnIixjKTtpZighZXx8IWQpcmV0dXJuW107dmFyIGY9ZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4pe24uemc9bDtyZXR1cm4gbn19LGc9RXIoZCxiKS5tYXAoZigiZ2IiKSksaD1KcihlKS5tYXAoZigiYWciKSk7cmV0dXJuIGcuY29uY2F0KGgpLnNvcnQoZnVuY3Rpb24obCxuKXtyZXR1cm4gbi50aW1lc3RhbXAtbC50aW1lc3RhbXB9KX0KZnVuY3Rpb24gS3IoYSxiLGMsZCxlKXt2YXIgZj1DYihhLGZ1bmN0aW9uKGcpe3JldHVybiBnLmdjbGlkPT09Yn0pO2Y/KGYudGltZXN0YW1wPGMmJihmLnRpbWVzdGFtcD1jLGYub2Q9ZSksZi5sYWJlbHM9THIoZi5sYWJlbHN8fFtdLGR8fFtdKSk6YS5wdXNoKHt2ZXJzaW9uOiIyIixnY2xpZDpiLHRpbWVzdGFtcDpjLGxhYmVsczpkLG9kOmV9KX1mdW5jdGlvbiBNcihhKXtmb3IodmFyIGI9d3EoYSw1KXx8W10sYz1bXSxkPW0oYiksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWUsZz1mLGg9TnIoZik7aCYmS3IoYyxnLmssaCxnLmJ8fFtdLGYudSl9cmV0dXJuIGMuc29ydChmdW5jdGlvbihsLG4pe3JldHVybiBuLnRpbWVzdGFtcC1sLnRpbWVzdGFtcH0pfQpmdW5jdGlvbiBFcihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjPVtdO09yKGMsYSwxKTtpZihiKWlmKFRiKGEsIl9hdyIpKXt2YXIgZD1QcigpO2QmJihkLm9kPXZvaWQgMCxkLm9hPWQub2F8fFsyXSxRcihjLGQpKTtPcihjLCJnY2xfYXciLDIpfWVsc2UgVGIoYSwiX2diIikmJllmKDYpJiZPcihjLCJnY2xfZ2IiLDIpO2Muc29ydChmdW5jdGlvbihlLGYpe3JldHVybiBmLnRpbWVzdGFtcC1lLnRpbWVzdGFtcH0pO3JldHVybiBScihjKX1mdW5jdGlvbiBTcihhLGIpe2Zvcih2YXIgYz1bXSxkPW0oYSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Yy5pbmNsdWRlcyhmKXx8Yy5wdXNoKGYpfWZvcih2YXIgZz1tKGIpLGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKXt2YXIgbD1oLnZhbHVlO2MuaW5jbHVkZXMobCl8fGMucHVzaChsKX1yZXR1cm4gY30KZnVuY3Rpb24gUXIoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO2Zvcih2YXIgZCxlLGY9bShhKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtpZihoLmdjbGlkPT09Yi5nY2xpZCl7ZD1oO2JyZWFrfWgucWEmJmIucWEmJmgucWEuZXF1YWxzKGIucWEpJiYoZT1oKX1pZihkKXt2YXIgbCxuLHA9KGw9ZC5xYSkhPW51bGw/bDpuZXcgZXIscT0obj1iLnFhKSE9bnVsbD9uOm5ldyBlcjtwLnZhbHVlfD1xLnZhbHVlO2QucWE9cDtkLnRpbWVzdGFtcDxiLnRpbWVzdGFtcCYmKGQudGltZXN0YW1wPWIudGltZXN0YW1wLGQub2Q9Yi5vZCk7ZC5sYWJlbHM9U3IoZC5sYWJlbHN8fFtdLGIubGFiZWxzfHxbXSk7ZC5vYT1TcihkLm9hfHxbXSxiLm9hfHxbXSl9ZWxzZSBjJiZlP25hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZSxiKTphLnB1c2goYil9CmZ1bmN0aW9uIFRyKGEpe2lmKCFhKXJldHVybiBuZXcgZXI7dmFyIGI9bmV3IGVyO2lmKGE9PT0xKXJldHVybiBmcihiLDIpLGZyKGIsMyksYjtmcihiLGEpO3JldHVybiBifQpmdW5jdGlvbiBQcigpe3ZhciBhPW5yKCJnY2xpZCIpO2lmKCFhfHxhLmVycm9yfHwhYS52YWx1ZXx8dHlwZW9mIGEudmFsdWUhPT0ib2JqZWN0IilyZXR1cm4gbnVsbDt2YXIgYj1hLnZhbHVlO3RyeXtpZighKCJ2YWx1ZSJpbiBiJiZiLnZhbHVlKXx8dHlwZW9mIGIudmFsdWUhPT0ib2JqZWN0IilyZXR1cm4gbnVsbDt2YXIgYz1iLnZhbHVlLGQ9Yy52YWx1ZTtpZighZHx8IWQubWF0Y2godHIpKXJldHVybiBudWxsO3ZhciBlPWMubGlua0RlY29yYXRpb25Tb3VyY2UsZj1jLmxpbmtEZWNvcmF0aW9uU291cmNlcyxnPW5ldyBlcjt0eXBlb2YgZT09PSJudW1iZXIiP2c9VHIoZSk6dHlwZW9mIGY9PT0ibnVtYmVyIiYmKGcudmFsdWU9Zik7cmV0dXJue3ZlcnNpb246IiIsZ2NsaWQ6ZCx0aW1lc3RhbXA6TnVtYmVyKGMuY3JlYXRpb25UaW1lTXMpfHwwLGxhYmVsczpbXSxxYTpnLG9hOlsyXX19Y2F0Y2goaCl7cmV0dXJuIG51bGx9fQpmdW5jdGlvbiBVcihhKXt2YXIgYj1ucihhKTtpZihiLmVycm9yIT09MClyZXR1cm4gbnVsbDt0cnl7cmV0dXJuIGIudmFsdWUucmVkdWNlKGZ1bmN0aW9uKGMsZCl7aWYoIWQudmFsdWV8fHR5cGVvZiBkLnZhbHVlIT09Im9iamVjdCIpcmV0dXJuIGM7dmFyIGU9ZC52YWx1ZSxmPWUudmFsdWU7aWYoIWZ8fCFmLm1hdGNoKHRyKSlyZXR1cm4gYzt2YXIgZz1uZXcgZXIsaD1lLmxpbmtEZWNvcmF0aW9uU291cmNlczt0eXBlb2YgaD09PSJudW1iZXIiJiYoZy52YWx1ZT1oKTt2YXIgbDtjLnB1c2goe3ZlcnNpb246IiIsZ2NsaWQ6Zix0aW1lc3RhbXA6TnVtYmVyKGUuY3JlYXRpb25UaW1lTXMpfHwwLGV4cGlyZXM6TnVtYmVyKGQuZXhwaXJlcyl8fDAsbGFiZWxzOihsPWUubGFiZWxzKSE9bnVsbD9sOltdLHFhOmcsb2E6WzJdfSk7cmV0dXJuIGN9LFtdKX1jYXRjaChjKXtyZXR1cm4gbnVsbH19CmZ1bmN0aW9uIE9yKGEsYixjKXtpZihjPT09MSlmb3IodmFyIGQ9Y3EoYixCLmNvb2tpZSx2b2lkIDAsQXIoKSksZT1tKGQpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1WcihmLnZhbHVlLnNwbGl0KCIuIikpLGg9Zy5sZW5ndGg9PT0wP251bGw6e3ZlcnNpb246Z1swXSxnY2xpZDpnWzJdLHRpbWVzdGFtcDooTnVtYmVyKGdbMV0pfHwwKSoxRTMsbGFiZWxzOmcuc2xpY2UoMyl9O2ghPW51bGwmJihoLm9kPXZvaWQgMCxoLnFhPW5ldyBlcixoLm9hPVtjXSxRcihhLGgpKX1lbHNlIGlmKGM9PT0yKXt2YXIgbD1VcihiKTtpZihsKWZvcih2YXIgbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3Eub2Q9dm9pZCAwO3Eub2E9cS5vYTtRcihhLHEpfX19CmZ1bmN0aW9uIFpyKGEpe3ZhciBiPUVyKGEpLGM9VXIoImdjbF9kYyIpO2lmKGMpZm9yKHZhciBkPW0oYyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Zi5vZD12b2lkIDA7Zi5vYT1mLm9hfHxbMl07UXIoYixmKX1iLnNvcnQoZnVuY3Rpb24oZyxoKXt2YXIgbD1nLm9hJiZnLm9hLmluY2x1ZGVzKDEpLG49aC5vYSYmaC5vYS5pbmNsdWRlcygxKTtyZXR1cm4gbCYmIW4/LTE6IWwmJm4/MTpoLnRpbWVzdGFtcC1nLnRpbWVzdGFtcH0pO3JldHVybiBScihiKX1mdW5jdGlvbiBKcihhKXtyZXR1cm4gTXIoYSkubWFwKGZ1bmN0aW9uKGIpe2IucWE9bmV3IGVyO2Iub2E9WzFdO3JldHVybiBifSl9CmZ1bmN0aW9uIExyKGEsYil7aWYoIWEubGVuZ3RoKXJldHVybiBiO2lmKCFiLmxlbmd0aClyZXR1cm4gYTt2YXIgYz17fTtyZXR1cm4gYS5jb25jYXQoYikuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBjLmhhc093blByb3BlcnR5KGQpPyExOmNbZF09ITB9KX1mdW5jdGlvbiBIcihhKXtyZXR1cm4gYSYmdHlwZW9mIGE9PT0ic3RyaW5nIiYmYS5tYXRjaChzcik/YToiX2djbCJ9ZnVuY3Rpb24gJHIoYSxiKXtpZihhKXt2YXIgYz17dmFsdWU6YSxxYTpuZXcgZXJ9O2ZyKGMucWEsYik7cmV0dXJuIGN9fQpmdW5jdGlvbiBhcyhhLGIsYyl7dmFyIGQ9UmooYSksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xzcmMiKSxmPSRyKExqKGQsInF1ZXJ5IiwhMSx2b2lkIDAsImdjbGlkIiksYz80OjIpO2lmKGImJighZnx8IWUpKXt2YXIgZz1kLmhhc2gucmVwbGFjZSgiIyIsIiIpO2Z8fChmPSRyKElqKGcsImdjbGlkIiwhMSksMykpO2V8fChlPUlqKGcsImdjbHNyYyIsITEpKX1yZXR1cm4gZiYmKGU9PT12b2lkIDB8fGU9PT0iYXcifHxlPT09ImF3LmRzInx8WWYoOCkmJmU9PT0iYXcuZHYiKT9bZl06W119CmZ1bmN0aW9uIGJzKGEsYil7dmFyIGM9UmooYSksZD1MaihjLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xpZCIpLGU9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZ2Nsc3JjIiksZj1MaihjLCJxdWVyeSIsITEsdm9pZCAwLCJ3YnJhaWQiKTtmPSRiKGYpO3ZhciBnPUxqKGMsInF1ZXJ5IiwhMSx2b2lkIDAsImdicmFpZCIpLGg9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZ2FkX3NvdXJjZSIpLGw9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZGNsaWQiKTtpZihiJiYhKGQmJmUmJmYmJmcpKXt2YXIgbj1jLmhhc2gucmVwbGFjZSgiIyIsIiIpO2Q9ZHx8SWoobiwiZ2NsaWQiLCExKTtlPWV8fElqKG4sImdjbHNyYyIsITEpO2Y9Znx8SWoobiwid2JyYWlkIiwhMSk7Zz1nfHxJaihuLCJnYnJhaWQiLCExKTtoPWh8fElqKG4sImdhZF9zb3VyY2UiLCExKX1yZXR1cm4gY3MoZCxlLGwsZixnLGgpfQpmdW5jdGlvbiBkcyhhLGIsYyl7dmFyIGQ9UmooYSksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xzcmMiKSxmPSRyKExqKGQsInF1ZXJ5IiwhMSx2b2lkIDAsImdjbGlkIiksYz80OjIpLGc9JHIoTGooZCwicXVlcnkiLCExLHZvaWQgMCwiZGNsaWQiKSxjPzQ6Mik7aWYoYiYmKCFlfHwhZikpe3ZhciBoPWQuaGFzaC5yZXBsYWNlKCIjIiwiIik7Znx8KGY9JHIoSWooaCwiZ2NsaWQiLCExKSwzKSk7ZXx8KGU9SWooaCwiZ2Nsc3JjIiwhMSkpfXJldHVybiBmJiZlJiYoZT09PSJhdy5kcyJ8fGU9PT0iYXcuZHYifHxlPT09IjNwLmRzInx8ZT09PSJkcyIpP1tmXTpnP1tnXTpbXX1mdW5jdGlvbiBlcygpe3JldHVybiBicyhBLmxvY2F0aW9uLmhyZWYsITApfQpmdW5jdGlvbiBjcyhhLGIsYyxkLGUsZil7dmFyIGc9e30saD1mdW5jdGlvbihsLG4pe2dbbl18fChnW25dPVtdKTtnW25dLnB1c2gobCl9O2cuZ2NsaWQ9YTtnLmdjbHNyYz1iO2cuZGNsaWQ9YztpZihhIT09dm9pZCAwJiZhLm1hdGNoKHRyKSlzd2l0Y2goYil7Y2FzZSB2b2lkIDA6aChhLCJhdyIpO2JyZWFrO2Nhc2UgImF3LmRzIjpoKGEsImF3Iik7aChhLCJkYyIpO2JyZWFrO2Nhc2UgImF3LmR2IjpZZig4KSYmKGgoYSwiYXciKSxoKGEsImRjIikpO2JyZWFrO2Nhc2UgImRzIjpoKGEsImRjIik7YnJlYWs7Y2FzZSAiM3AuZHMiOmgoYSwiZGMiKTticmVhaztjYXNlICJnZiI6aChhLCJnZiIpO2JyZWFrO2Nhc2UgImhhIjpoKGEsImhhIil9YyYmaChjLCJkYyIpO2QhPT12b2lkIDAmJnRyLnRlc3QoZCkmJihnLndicmFpZD1kLGgoZCwiZ2IiKSk7ZSE9PXZvaWQgMCYmdHIudGVzdChlKSYmKGcuZ2JyYWlkPWUsaChlLCJhZyIpKTtmIT09dm9pZCAwJiZ0ci50ZXN0KGYpJiYoZy5nYWRfc291cmNlPQpmLGgoZiwiZ3MiKSk7cmV0dXJuIGd9ZnVuY3Rpb24gZnMoKXtmb3IodmFyIGE9ZXMoKSxiPSEwLGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpaWYoYVtkLnZhbHVlXSE9PXZvaWQgMCl7Yj0hMTticmVha31iJiYoYT1icyhBLmRvY3VtZW50LnJlZmVycmVyLCExKSxhLmdhZF9zb3VyY2U9dm9pZCAwKTtyZXR1cm4gYX1mdW5jdGlvbiBncyhhKXt2YXIgYj1mcygpO2hzKGIsITEsYSl9CmZ1bmN0aW9uIGlzKGEpe3ZhciBiPWFzKEEubG9jYXRpb24uaHJlZiwhMCwhMSk7Yi5sZW5ndGh8fChiPWFzKEEuZG9jdW1lbnQucmVmZXJyZXIsITEsITApKTthPWF8fHt9O2pzKGEpO2lmKGIubGVuZ3RoKXt2YXIgYz1iWzBdLGQ9TmIoKSxlPXVxKGEsZCwhMCksZj1BcigpLGc9ZnVuY3Rpb24oKXtCcihmKSYmZS5leHBpcmVzIT09dm9pZCAwJiZrcigiZ2NsaWQiLHt2YWx1ZTp7dmFsdWU6Yy52YWx1ZSxjcmVhdGlvblRpbWVNczpkLGxpbmtEZWNvcmF0aW9uU291cmNlczpjLnFhLmdldCgpfSxleHBpcmVzOk51bWJlcihlLmV4cGlyZXMpfSl9O0hsKGZ1bmN0aW9uKCl7ZygpO0JyKGYpfHxJbChnLGYpfSxmKX19CmZ1bmN0aW9uIGpzKGEpe3ZhciBiPUIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIjtpZih5ci50ZXN0KGIpfHx6ci50ZXN0KGIpfHxrcygpKXt2YXIgYzthOntmb3IodmFyIGQ9UmooQS5sb2NhdGlvbi5ocmVmKSxlPUpqKExqKGQsInF1ZXJ5IikpLGY9bShPYmplY3Qua2V5cyhlKSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7aWYoIXJyW2hdKXt2YXIgbD1lW2hdWzBdfHwiIixuO2lmKCFsfHxsLmxlbmd0aDw1MHx8bC5sZW5ndGg+MjAwKW49ITE7ZWxzZXt2YXIgcD1ncihsKSxxO2lmKHApYzp7dmFyIHI9cDtpZihyJiZyLmxlbmd0aCE9PTApe3ZhciB0PTA7dHJ5e2Zvcih2YXIgdT0xMDt0PHIubGVuZ3RoJiYhKHUtLTw9MCk7KXt2YXIgdj1ocihyLHQpO2lmKHY9PT12b2lkIDApYnJlYWs7dmFyIHg9bSh2KSx5PXgubmV4dCgpLnZhbHVlLHo9eC5uZXh0KCkudmFsdWUsQz15LEQ9eixJPUMmNztpZihDPj4zPT09MTYzODIpe2lmKEkhPT0KMClicmVhazt2YXIgRz1ocihyLEQpO2lmKEc9PT12b2lkIDApYnJlYWs7cT1tKEcpLm5leHQoKS52YWx1ZT09PTE7YnJlYWsgY312YXIgTjtkOnt2YXIgUz12b2lkIDAsVz1yLGVhPUQ7c3dpdGNoKEkpe2Nhc2UgMDpOPShTPWhyKFcsZWEpKT09bnVsbD92b2lkIDA6U1sxXTticmVhayBkO2Nhc2UgMTpOPWVhKzg7YnJlYWsgZDtjYXNlIDI6dmFyIGphPWhyKFcsZWEpO2lmKGphPT09dm9pZCAwKWJyZWFrO3ZhciBmYT1tKGphKSxzYT1mYS5uZXh0KCkudmFsdWU7Tj1mYS5uZXh0KCkudmFsdWUrc2E7YnJlYWsgZDtjYXNlIDU6Tj1lYSs0O2JyZWFrIGR9Tj12b2lkIDB9aWYoTj09PXZvaWQgMHx8Tj5yLmxlbmd0aHx8Tjw9dClicmVhazt0PU59fWNhdGNoKG1hKXt9fXE9ITF9ZWxzZSBxPSExO249cX1pZihuKXtjPWw7YnJlYWsgYX19fWM9dm9pZCAwfXZhciBkYT1jO2RhJiZscygiZ2NsX2F3IixkYSw3LGEpfX0KZnVuY3Rpb24gbHMoYSxiLGMsZCl7bXMoYSxbe3ZlcnNpb246IiIsZ2NsaWQ6Yix0aW1lc3RhbXA6TmIoKSxxYTpUcihjKX1dLGQpfQpmdW5jdGlvbiBtcyhhLGIsYyl7Yz1jfHx7fTt2YXIgZD1BcigpLGU9ZnVuY3Rpb24oKXtpZihCcihkKSYmYi5sZW5ndGg+MCl7dmFyIGY9VXIoYSl8fFtdO2IuZm9yRWFjaChmdW5jdGlvbihnKXt2YXIgaD11cShjLGcudGltZXN0YW1wLCEwKTtoLmV4cGlyZXMhPT12b2lkIDAmJlFyKGYse3ZlcnNpb246IiIsZ2NsaWQ6Zy5nY2xpZCx0aW1lc3RhbXA6Zy50aW1lc3RhbXAsZXhwaXJlczpOdW1iZXIoaC5leHBpcmVzKSxxYTpnLnFhLGxhYmVsczpnLmxhYmVsc30sITApfSk7Zi5sZW5ndGgmJmtyKGEsZi5tYXAoZnVuY3Rpb24oZyl7dmFyIGg9e3ZhbHVlOmcuZ2NsaWQsY3JlYXRpb25UaW1lTXM6Zy50aW1lc3RhbXAsbGlua0RlY29yYXRpb25Tb3VyY2VzOmcucWE/Zy5xYS5nZXQoKTowfSxsO2lmKChsPWcubGFiZWxzKT09bnVsbD8wOmwubGVuZ3RoKWgubGFiZWxzPWcubGFiZWxzO3JldHVybnt2YWx1ZTpoLGV4cGlyZXM6TnVtYmVyKGcuZXhwaXJlcyl9fSkpfX07SGwoZnVuY3Rpb24oKXtCcihkKT8KZSgpOklsKGUsZCl9LGQpfQpmdW5jdGlvbiBocyhhLGIsYyxkLGUpe2M9Y3x8e307ZT1lfHxbXTt2YXIgZj1IcihjLnByZWZpeCksZz1kfHxOYigpLGg9TWF0aC5yb3VuZChnLzFFMyksbD1BcigpLG49ITEscD0hMSxxPVlmKDkpLHI9ZnVuY3Rpb24oKXtpZihCcihsKSl7dmFyIHQ9dXEoYyxnLCEwKTt0Lk1jPWw7Zm9yKHZhciB1PWZ1bmN0aW9uKFcsZWEpe3ZhciBqYT1JcihXLGYpO2phJiYob3EoamEsZWEsdCksVyE9PSJnYiImJihuPSEwKSl9LHY9ZnVuY3Rpb24oVyl7dmFyIGVhPVsiR0NMIixoLFddO2UubGVuZ3RoPjAmJmVhLnB1c2goZS5qb2luKCIuIikpO3JldHVybiBlYS5qb2luKCIuIil9LHg9bShbImF3IiwiZGMiLCJnZiIsImhhIiwiZ3AiXSkseT14Lm5leHQoKTsheS5kb25lO3k9eC5uZXh0KCkpe3ZhciB6PXkudmFsdWU7YVt6XSYmdSh6LHYoYVt6XVswXSkpfWlmKCghbnx8cSkmJmEuZ2Ipe3ZhciBDPWEuZ2JbMF0sRD1JcigiZ2IiLGYpOyFiJiZFcihEKS5zb21lKGZ1bmN0aW9uKFcpe3JldHVybiBXLmdjbGlkPT09QyYmClcubGFiZWxzJiZXLmxhYmVscy5sZW5ndGg+MH0pfHx1KCJnYiIsdihDKSl9fWlmKCFwJiZhLmdicmFpZCYmQnIoImFkX3N0b3JhZ2UiKSYmKHA9ITAsIW58fHEpKXt2YXIgST1hLmdicmFpZCxHPUlyKCJhZyIsZik7aWYoYnx8IUpyKEcpLnNvbWUoZnVuY3Rpb24oVyl7cmV0dXJuIFcuZ2NsaWQ9PT1JJiZXLmxhYmVscyYmVy5sYWJlbHMubGVuZ3RoPjB9KSl7dmFyIE49e30sUz0oTi5rPUksTi5pPSIiK2gsTi5iPWUsTik7QXEoRyxTLDUsYyxnKX19bnMoYSxmLGcsYyl9O0hsKGZ1bmN0aW9uKCl7cigpO0JyKGwpfHxJbChyLGwpfSxsKX0KZnVuY3Rpb24gbnMoYSxiLGMsZCl7aWYoYS5nYWRfc291cmNlIT09dm9pZCAwJiZCcigiYWRfc3RvcmFnZSIpKXt2YXIgZT1xZCgpO2lmKGUhPT0iciImJmUhPT0iaCIpe3ZhciBmPWEuZ2FkX3NvdXJjZSxnPUlyKCJncyIsYik7aWYoZyl7dmFyIGg9TWF0aC5mbG9vcigoTmIoKS0ocGQoKXx8MCkpLzFFMyksbCxuPWlyKCkscD17fTtsPShwLms9ZixwLmk9IiIraCxwLnU9bixwKTtBcShnLGwsNSxkLGMpfX19fWZ1bmN0aW9uIG9zKGEsYixjKXtmb3IodmFyIGQ9d3EoYixjKSxlPTA7ZTxkLmxlbmd0aDsrK2UpaWYoTnIoZFtlXSk+YSlyZXR1cm4hMDtyZXR1cm4hMX0KZnVuY3Rpb24gcHMoYSl7dmFyIGI9cXMsYz1ycyhhLnByZWZpeCk7Q3IoZnVuY3Rpb24oKXtmb3IodmFyIGQ9SHIoYS5wcmVmaXgpLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPWNbZ107aWYoaCl7dmFyIGw9TWF0aC5taW4oc3MoaCksTmIoKSksbj11cShhLGwsITApO24uTWM9QXIoKTt2YXIgcD1JcihnLGQpO3AmJm9xKHAsaCxuKX19dmFyIHE9VXEoITApO2hzKGNzKHEuZ2NsaWQscS5nY2xzcmMpLCExLGEpfSxBcigpKX0KZnVuY3Rpb24gcnMoYSl7dmFyIGI9VXEoITApLGM9SHIoYSksZD17fSxlO2ZvcihlIGluIHhyKWlmKHhyLmhhc093blByb3BlcnR5KGUpKXt2YXIgZj1lLGc9SXIoZixjKTtpZihnIT09dm9pZCAwKXt2YXIgaD1iW2ddO2lmKGgpe3ZhciBsPXNzKGgpLG47YTp7Zm9yKHZhciBwPU1hdGgubWluKGwsTmIoKSl8fE5iKCkscT1jcShnLEIuY29va2llLHZvaWQgMCxBcigpKSxyPTA7cjxxLmxlbmd0aDsrK3IpaWYoc3MocVtyXSk+cCl7bj0hMDticmVhayBhfW49ITF9bnx8KGRbZl09aCl9fX1yZXR1cm4gZH0KZnVuY3Rpb24gdHMoYSl7dmFyIGI9WyJhZyJdLGM9VXEoITApLGQ9SHIoYS5wcmVmaXgpO0NyKGZ1bmN0aW9uKCl7Zm9yKHZhciBlPTA7ZTxiLmxlbmd0aDsrK2Upe3ZhciBmPUlyKGJbZV0sZCk7aWYoZil7dmFyIGc9Y1tmXTtpZihnKXt2YXIgaD0kcChnLDUpO2lmKGgpe3ZhciBsPU5yKGgpO2x8fChsPU5iKCkpO2lmKG9zKGwsZiw1KSlicmVhaztoLmk9IiIrTWF0aC5yb3VuZChsLzFFMyk7QXEoZixoLDUsYSxsKX19fX19LFsiYWRfc3RvcmFnZSJdKX1mdW5jdGlvbiBJcihhLGIpe3ZhciBjPXhyW2FdO2lmKGMhPT12b2lkIDApcmV0dXJuIGIrY31mdW5jdGlvbiBzcyhhKXtyZXR1cm4gVnIoYS5zcGxpdCgiLiIpKS5sZW5ndGghPT0wPyhOdW1iZXIoYS5zcGxpdCgiLiIpWzFdKXx8MCkqMUUzOjB9ZnVuY3Rpb24gTnIoYSl7cmV0dXJuIGE/KE51bWJlcihhLmkpfHwwKSoxRTM6MH0KZnVuY3Rpb24gVnIoYSl7cmV0dXJuIGEubGVuZ3RoPDN8fGFbMF0hPT0iR0NMIiYmYVswXSE9PSIxInx8IS9eXGQrJC8udGVzdChhWzFdKXx8IXRyLnRlc3QoYVsyXSk/W106YX1mdW5jdGlvbiB1cyhhLGIsYyxkKXt2YXIgZT1xcztpZihBcnJheS5pc0FycmF5KGEpJiZTcChBKSl7dmFyIGY9SHIoZCksZz1mdW5jdGlvbigpe2Zvcih2YXIgaD17fSxsPTA7bDxlLmxlbmd0aDsrK2wpe3ZhciBuPUlyKGVbbF0sZik7aWYobil7dmFyIHA9Y3EobixCLmNvb2tpZSx2b2lkIDAsQXIoKSk7cC5sZW5ndGgmJihoW25dPXAuc29ydCgpW3AubGVuZ3RoLTFdKX19cmV0dXJuIGh9O0NyKGZ1bmN0aW9uKCl7YXIoZyxhLGIsYyl9LEFyKCkpfX0KZnVuY3Rpb24gdnMoYSxiLGMpe3ZhciBkPXFzO2lmKFlmKDEzKSYmQXJyYXkuaXNBcnJheShhKSYmU3AoQSkpe3ZhciBlPWZ1bmN0aW9uKCl7Zm9yKHZhciBmPXt9LGc9MDtnPGQubGVuZ3RoOysrZyl7dmFyIGg9dnJbZFtnXV07aWYoaCl7dmFyIGw9Y3EoaCxCLmNvb2tpZSx2b2lkIDAsQXIoKSk7aWYobC5sZW5ndGgpe2Zvcih2YXIgbj12b2lkIDAscD0wLHE9bShsKSxyPXEubmV4dCgpOyFyLmRvbmU7cj1xLm5leHQoKSl7dmFyIHQ9ci52YWx1ZSx1PSRwKHQsNCk7aWYodSYmKHUubT09PSIxInx8WWYoMTYpKSl7dmFyIHY9TnIodSk7dj49cCYmKHA9dixuPXQpfX1uJiYoZltoXT1uKX19fXJldHVybiBmfTtDcihmdW5jdGlvbigpe2FyKGUsYSxiLGMpfSxBcigpKX19CmZ1bmN0aW9uIHdzKGEsYixjLGQpe2lmKEFycmF5LmlzQXJyYXkoYSkmJlNwKEEpKXt2YXIgZT1bImFnIl0sZj1IcihkKSxnPWZ1bmN0aW9uKCl7Zm9yKHZhciBoPXt9LGw9MDtsPGUubGVuZ3RoOysrbCl7dmFyIG49SXIoZVtsXSxmKTtpZighbilyZXR1cm57fTt2YXIgcD13cShuLDUpO2lmKHAubGVuZ3RoKXt2YXIgcT1wLnNvcnQoZnVuY3Rpb24ocix0KXtyZXR1cm4gTnIodCktTnIocil9KVswXTtoW25dPWFxKHEsNSl9fXJldHVybiBofTtDcihmdW5jdGlvbigpe2FyKGcsYSxiLGMpfSxbImFkX3N0b3JhZ2UiXSl9fWZ1bmN0aW9uIFJyKGEpe3JldHVybiBhLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4gdHIudGVzdChiLmdjbGlkKX0pfQpmdW5jdGlvbiB4cyhhLGIpe2lmKFNwKEEpKXtmb3IodmFyIGM9SHIoYi5wcmVmaXgpLGQ9e30sZT0wO2U8YS5sZW5ndGg7ZSsrKXhyW2FbZV1dJiYoZFthW2VdXT14clthW2VdXSk7Q3IoZnVuY3Rpb24oKXtHYihkLGZ1bmN0aW9uKGYsZyl7dmFyIGg9Y3EoYytnLEIuY29va2llLHZvaWQgMCxBcigpKTtoLnNvcnQoZnVuY3Rpb24odCx1KXtyZXR1cm4gc3ModSktc3ModCl9KTtpZihoLmxlbmd0aCl7dmFyIGw9aFswXSxuPXNzKGwpLHA9VnIobC5zcGxpdCgiLiIpKS5sZW5ndGghPT0wP2wuc3BsaXQoIi4iKS5zbGljZSgzKTpbXSxxPXt9LHI7cj1WcihsLnNwbGl0KCIuIikpLmxlbmd0aCE9PTA/bC5zcGxpdCgiLiIpWzJdOnZvaWQgMDtxW2ZdPVtyXTtocyhxLCEwLGIsbixwKX19KX0sQXIoKSl9fQpmdW5jdGlvbiB5cyhhKXt2YXIgYj1bImFnIl0sYz1bImdicmFpZCJdO0NyKGZ1bmN0aW9uKCl7Zm9yKHZhciBkPUhyKGEucHJlZml4KSxlPTA7ZTxiLmxlbmd0aDsrK2Upe3ZhciBmPUlyKGJbZV0sZCk7aWYoIWYpYnJlYWs7dmFyIGc9d3EoZiw1KTtpZihnLmxlbmd0aCl7dmFyIGg9Zy5zb3J0KGZ1bmN0aW9uKHEscil7cmV0dXJuIE5yKHIpLU5yKHEpfSlbMF0sbD1OcihoKSxuPWguYixwPXt9O3BbY1tlXV09aC5rO2hzKHAsITAsYSxsLG4pfX19LFsiYWRfc3RvcmFnZSJdKX1mdW5jdGlvbiB6cyhhLGIpe2Zvcih2YXIgYz0wO2M8Yi5sZW5ndGg7KytjKWlmKGFbYltjXV0pcmV0dXJuITA7cmV0dXJuITF9CmZ1bmN0aW9uIEFzKGEpe2Z1bmN0aW9uIGIoaCxsLG4pe24mJihoW2xdPW4pfWlmKEVsKCkpe3ZhciBjPWVzKCksZDthLmluY2x1ZGVzKCJnYWRfc291cmNlIikmJihkPWMuZ2FkX3NvdXJjZSE9PXZvaWQgMD9jLmdhZF9zb3VyY2U6VXEoITEpLl9ncyk7aWYoenMoYyxhKXx8ZCl7dmFyIGU9e307YihlLCJnY2xpZCIsYy5nY2xpZCk7YihlLCJkY2xpZCIsYy5kY2xpZCk7YihlLCJnY2xzcmMiLGMuZ2Nsc3JjKTtiKGUsIndicmFpZCIsYy53YnJhaWQpO2IoZSwiZ2JyYWlkIixjLmdicmFpZCk7YnIoZnVuY3Rpb24oKXtyZXR1cm4gZX0sMyk7dmFyIGY9e30sZz0oZi5fdXA9IjEiLGYpO2IoZywiX2dzIixkKTticihmdW5jdGlvbigpe3JldHVybiBnfSwxKX19fWZ1bmN0aW9uIGtzKCl7dmFyIGE9UmooQS5sb2NhdGlvbi5ocmVmKTtyZXR1cm4gTGooYSwicXVlcnkiLCExLHZvaWQgMCwiZ2FkX3NvdXJjZSIpfQpmdW5jdGlvbiBCcyhhKXtpZighWWYoMSkpcmV0dXJuIG51bGw7dmFyIGI9VXEoITApLmdhZF9zb3VyY2U7aWYoYiE9bnVsbClyZXR1cm4gQS5sb2NhdGlvbi5oYXNoPSIiLGI7aWYoWWYoMikpe2I9a3MoKTtpZihiIT1udWxsKXJldHVybiBiO3ZhciBjPWVzKCk7aWYoenMoYyxhKSlyZXR1cm4iMCJ9cmV0dXJuIG51bGx9ZnVuY3Rpb24gQ3MoYSl7dmFyIGI9QnMoYSk7YiE9bnVsbCYmYnIoZnVuY3Rpb24oKXt2YXIgYz17fTtyZXR1cm4gYy5nYWRfc291cmNlPWIsY30sNCl9CmZ1bmN0aW9uIERzKGEsYixjKXt2YXIgZD1bXTtpZihiLmxlbmd0aD09PTApcmV0dXJuIGQ7Zm9yKHZhciBlPXt9LGY9MDtmPGIubGVuZ3RoO2YrKyl7dmFyIGc9YltmXSxoPWcuemc/Zy56ZzoiZ2NsIjtpZigoZy5sYWJlbHN8fFtdKS5pbmRleE9mKGMpPT09LTEpe2EucHVzaCgwKTt2YXIgbD0hMSxuPXZvaWQgMDtpZigobj1nLm9hKT09bnVsbD8wOm4uaW5jbHVkZXMoMikpbD0hMDt2YXIgcD12b2lkIDA7KChwPWcub2EpPT1udWxsPzA6cC5pbmNsdWRlcygxKSkmJiFlW2hdJiYobD0hMCxlW2hdPSEwKTtsJiZkLnB1c2goZyl9ZWxzZXthLnB1c2goMSk7dmFyIHE9dm9pZCAwO2lmKChxPWcub2EpPT1udWxsPzA6cS5pbmNsdWRlcygxKSllW2hdPSEwfX1yZXR1cm4gZH0KZnVuY3Rpb24gRXMoYSxiLGMsZCxlKXtlPWU9PT12b2lkIDA/ITE6ZTt2YXIgZj1bXTtjPWN8fHt9O2lmKCFCcihBcigpKSlyZXR1cm4gZjt2YXIgZz1FcihhLGUpLGg9RHMoZixnLGIpO2lmKGgubGVuZ3RoJiYhZCl7Zm9yKHZhciBsPVtdLG49ITEscD1tKGgpLHE9cC5uZXh0KCk7IXEuZG9uZTtxPXAubmV4dCgpKXt2YXIgcj1xLnZhbHVlLHQ9cix1PXQudmVyc2lvbix2PXQuZ2NsaWQseD10LnRpbWVzdGFtcCx5PXQub2Esej0odC5sYWJlbHN8fFtdKS5jb25jYXQoW2JdKSxDPXZvaWQgMDtpZigoKEM9eSk9PW51bGw/MDpDLmluY2x1ZGVzKDEpKSYmIW4pe3ZhciBEPVt1LE1hdGgucm91bmQoeC8xRTMpLHZdLmNvbmNhdCh6KS5qb2luKCIuIiksST11cShjLHgsITApO0kuTWM9QXIoKTtvcShhLEQsSSk7bj0hMH12YXIgRz12b2lkIDA7ZSYmKChHPXkpPT1udWxsPzA6Ry5pbmNsdWRlcygyKSkmJmwucHVzaChuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHIse2xhYmVsczp6fSkpfWwubGVuZ3RoJiYKbXMoImdjbF9nYiIsbCxjKX1yZXR1cm4gZn0KZnVuY3Rpb24gRnMoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO3ZhciBkPVtdO2I9Ynx8e307dmFyIGU9R3IoYixjKSxmPURzKGQsZSxhKTtpZihmLmxlbmd0aCl7Zm9yKHZhciBnPVtdLGg9e30sbD1tKGYpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlLHE9SHIoYi5wcmVmaXgpLHI9SXIocC56ZyxxKTtpZighcilyZXR1cm4gZDt2YXIgdD1wLHU9dC52ZXJzaW9uLHY9dC5nY2xpZCx4PXQudGltZXN0YW1wLHk9dC5vYSx6PU1hdGgucm91bmQoeC8xRTMpLEM9THIodC5sYWJlbHN8fFtdLFthXSksRD12b2lkIDA7aWYoKEQ9eSk9PW51bGw/MDpELmluY2x1ZGVzKDEpKWlmKHAuemc9PT0iYWciJiYhaC5hZyl7dmFyIEk9e30sRz0oSS5rPXYsSS5pPSIiK3osSS5iPUMsSSk7QXEocixHLDUsYix4KTtoLmFnPSEwfWVsc2UgaWYocC56Zz09PSJnYiImJiFoLmdiKXt2YXIgTj1bdSx6LHZdLmNvbmNhdChDKS5qb2luKCIuIiksUz11cShiLHgsITApO1MuTWM9CkFyKCk7b3EocixOLFMpO2guZ2I9ITB9dmFyIFc9dm9pZCAwO2MmJigoVz15KT09bnVsbD8wOlcuaW5jbHVkZXMoMikpJiZnLnB1c2gobmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxwLHtsYWJlbHM6Q30pKX1nLmxlbmd0aCYmbXMoImdjbF9nYiIsZyxiKX1yZXR1cm4gZH1mdW5jdGlvbiBHcyhhLGIpe3ZhciBjPUhyKGIpLGQ9SXIoYSxjKTtpZighZClyZXR1cm4gMDt2YXIgZTtlPWE9PT0iYWciP0pyKGQpOkVyKGQpO2Zvcih2YXIgZj0wLGc9MDtnPGUubGVuZ3RoO2crKylmPU1hdGgubWF4KGYsZVtnXS50aW1lc3RhbXApO3JldHVybiBmfWZ1bmN0aW9uIEhzKGEpe2Zvcih2YXIgYj0wLGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpZm9yKHZhciBlPWFbZC52YWx1ZV0sZj0wO2Y8ZS5sZW5ndGg7ZisrKWI9TWF0aC5tYXgoYixOdW1iZXIoZVtmXS50aW1lc3RhbXApKTtyZXR1cm4gYn0KZnVuY3Rpb24gSXMoYSl7dmFyIGI9TWF0aC5tYXgoR3MoImF3IixhKSxIcyhCcihBcigpKT9ScCgpOnt9KSksYz1NYXRoLm1heChHcygiZ2IiLGEpLEhzKEJyKEFyKCkpP1JwKCJfZ2FjX2diIiwhMCk6e30pKTtjPU1hdGgubWF4KGMsR3MoImFnIixhKSk7cmV0dXJuIGM+Yn07dmFyIEpzPVJlZ0V4cCgiXlVBLVxcZCstXFxkKyUzQVtcXHctXSsoPzolMkNbXFx3LV0rKSooPzolM0JVQS1cXGQrLVxcZCslM0FbXFx3LV0rKD86JTJDW1xcdy1dKykqKSokIiksS3M9L15+P1tcdy1dKyg/Olwufj9bXHctXSspKiQvLExzPS9eXGQrXC5mbHNcLmRvdWJsZWNsaWNrXC5uZXQkLyxNcz0vO2dhYz0oW147P10rKS8sTnM9LztnYWNnYj0oW147P10rKS87CmZ1bmN0aW9uIE9zKGEsYil7aWYoTHMudGVzdChCLmxvY2F0aW9uLmhvc3QpKXt2YXIgYz1CLmxvY2F0aW9uLmhyZWYubWF0Y2goYik7cmV0dXJuIGMmJmMubGVuZ3RoPT09MiYmY1sxXS5tYXRjaChKcyk/S2ooY1sxXSl8fCIiOiIifWZvcih2YXIgZD1bXSxlPW0oT2JqZWN0LmtleXMoYSkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXtmb3IodmFyIGc9Zi52YWx1ZSxoPVtdLGw9YVtnXSxuPTA7bjxsLmxlbmd0aDtuKyspaC5wdXNoKGxbbl0uZ2NsaWQpO2QucHVzaChnKyI6IitoLmpvaW4oIiwiKSl9cmV0dXJuIGQubGVuZ3RoPjA/ZC5qb2luKCI7Iik6IiJ9CmZ1bmN0aW9uIFBzKGEsYixjKXtmb3IodmFyIGQ9QnIoQXIoKSk/UnAoIl9nYWNfZ2IiLCEwKTp7fSxlPVtdLGY9ITEsZz1tKE9iamVjdC5rZXlzKGQpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPUVzKCJfZ2FjX2diXyIrbCxhLGIsYyk7Zj1mfHxuLmxlbmd0aCE9PTAmJm4uc29tZShmdW5jdGlvbihwKXtyZXR1cm4gcD09PTF9KTtlLnB1c2gobCsiOiIrbi5qb2luKCIsIikpfXJldHVybntScjpmP2Uuam9pbigiOyIpOiIiLFFyOk9zKGQsTnMpfX1mdW5jdGlvbiBRcyhhKXt2YXIgYj1CLmxvY2F0aW9uLmhyZWYubWF0Y2gobmV3IFJlZ0V4cCgiOyIrYSsiPShbXjs/XSspIikpO3JldHVybiBiJiZiLmxlbmd0aD09PTImJmJbMV0ubWF0Y2goS3MpP2JbMV06dm9pZCAwfQpmdW5jdGlvbiBScyhhKXt2YXIgYj17fSxjLGQsZTtMcy50ZXN0KEIubG9jYXRpb24uaG9zdCkmJihjPVFzKCJnY2xncyIpLGQ9UXMoImdjbHN0IiksZT1RcygiZ2NsbHAiKSk7aWYoYyYmZCYmZSliLkVnPWMsYi5XaD1kLGIuVWg9ZTtlbHNle3ZhciBmPU5iKCksZz1NcigoYXx8Il9nY2wiKSsiX2dzIiksaD1nLm1hcChmdW5jdGlvbihwKXtyZXR1cm4gcC5nY2xpZH0pLGw9Zy5tYXAoZnVuY3Rpb24ocCl7cmV0dXJuIGYtcC50aW1lc3RhbXB9KSxuPWcubWFwKGZ1bmN0aW9uKHApe3JldHVybiBwLm9kfSk7aC5sZW5ndGg+MCYmbC5sZW5ndGg+MCYmbi5sZW5ndGg+MCYmKGIuRWc9aC5qb2luKCIuIiksYi5XaD1sLmpvaW4oIi4iKSxiLlVoPW4uam9pbigiLiIpKX1yZXR1cm4gYn0KZnVuY3Rpb24gU3MoYSxiKXt2YXIgYz1hLnNwbGl0KCIuIiksZD1iP2Iuc3BsaXQoIi4iKTpbXSxlPWQubGVuZ3RoPT09Yy5sZW5ndGg/ZDp2b2lkIDA7cmV0dXJuIGMubWFwKGZ1bmN0aW9uKGYsZyl7dmFyIGg9e2djbGlkOmZ9O2lmKGUpe3ZhciBsPWVbZ10uc3BsaXQoIl8iKTtpZihsLmxlbmd0aD09PTIpe2gucWE9bmV3IGVyKE51bWJlcihsWzBdKSk7dmFyIG47dmFyIHA9TnVtYmVyKGxbMV0pO2lmKHA9PT0wKW49WzBdO2Vsc2V7dmFyIHE9W107cCYxJiZxLnB1c2goMSk7cCYyJiZxLnB1c2goMik7cCY0JiZxLnB1c2goMyk7cCY4JiZxLnB1c2goNCk7cCYxNiYmcS5wdXNoKDUpO249cX1oLm9hPW59fXJldHVybiBofSl9CmZ1bmN0aW9uIFRzKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO2lmKExzLnRlc3QoQi5sb2NhdGlvbi5ob3N0KSl7dmFyIGU9UXMoYyk7aWYoZSl7aWYoWWYoMTcpKXt2YXIgZj1RcyhjKyJfc3JjIik7cmV0dXJuIFNzKGUsZil9aWYoZCl7dmFyIGc9bmV3IGVyO2ZyKGcsMik7ZnIoZywzKTtyZXR1cm4gZS5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihyKXtyZXR1cm57Z2NsaWQ6cixxYTpnLG9hOlsxXX19KX1yZXR1cm4gZS5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihyKXtyZXR1cm57Z2NsaWQ6cixxYTpuZXcgZXIsb2E6WzFdfX0pfX1lbHNle2lmKGI9PT0iZ2NsaWQiKXtmb3IodmFyIGg9RXIoKGF8fCJfZ2NsIikrIl9hdyIsZCksbD1OdW1iZXIoWGZbNF09PT12b2lkIDA/MDpYZls0XSksbj1tKFVzKCkpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3EudGltZXN0YW1wPmwmJlFyKGgscSl9cmV0dXJuIGh9aWYoYj09PSJ3YnJhaWQiKXJldHVybiBFcigoYXx8CiJfZ2NsIikrIl9nYiIsZCk7aWYoYj09PSJicmFpZHMiKXJldHVybiBHcih7cHJlZml4OmF9LGQpfXJldHVybltdfWZ1bmN0aW9uIFVzKCl7cmV0dXJuKHdxKHZyLmF3LDQpfHxbXSkuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLm09PT0iMSJ9KS5tYXAoZnVuY3Rpb24oYSl7cmV0dXJue2djbGlkOmEuayx0aW1lc3RhbXA6TnVtYmVyKGEuaSksdmVyc2lvbjoiIixvYTpbNV19fSl9ZnVuY3Rpb24gVnMoYSl7Zm9yKHZhciBiPTAsYz1tKGEpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO2U+MCYmKGJ8PTE8PGUtMSl9cmV0dXJuIGIudG9TdHJpbmcoKX1mdW5jdGlvbiBXcyhhKXtyZXR1cm4gTHMudGVzdChCLmxvY2F0aW9uLmhvc3QpPyEoUXMoImdjbGF3Iil8fFFzKCJnYWMiKSk6SXMoYSl9CmZ1bmN0aW9uIFhzKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO3ZhciBlO2U9Yz9GcyhhLGIsZCk6RXMoKGImJmIucHJlZml4fHwiX2djbCIpKyJfZ2IiLGEsYix2b2lkIDAsZCk7cmV0dXJuIGUubGVuZ3RoPT09MHx8ZS5ldmVyeShmdW5jdGlvbihmKXtyZXR1cm4gZj09PTB9KT8iIjplLmpvaW4oIi4iKX07CnZhciBZcz1mdW5jdGlvbihhKXt2YXIgYjtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1raigiYWRzX3BhZ2V2aWV3IixmdW5jdGlvbigpe3JldHVybnt9fSk7aWYoY1thXSlyZXR1cm4hMTtifHwoY1thXT0hMCk7cmV0dXJuITB9LFpzPWZ1bmN0aW9uKGEpe3JldHVybiBTaihhLCJnY2xpZCBkY2xpZCBnYnJhaWQgd2JyYWlkIGdjbGF3IGdjbGRjIGdjbGhhIGdjbGdmIGdjbGdiIF9nbCIuc3BsaXQoIiAiKSwiMCIpfSxhdD1mdW5jdGlvbigpe3ZhciBhPVJqKEEubG9jYXRpb24uaHJlZiksYj12b2lkIDAsYz12b2lkIDAsZD1MaihhLCJxdWVyeSIsITEsdm9pZCAwLCJnYWRfc291cmNlIiksZT1MaihhLCJxdWVyeSIsITEsdm9pZCAwLCJnYWRfY2FtcGFpZ25pZCIpLGYsZz1hLmhhc2gucmVwbGFjZSgiIyIsIiIpLm1hdGNoKCRzKTtmPWc/Z1sxXTp2b2lkIDA7ZCYmZj8oYj1kLGM9MSk6ZD8oYj1kLGM9Mik6ZiYmKGI9ZixjPTMpO3JldHVybntEZzpiLFNyOmMsVGg6ZX19LGJ0PWZ1bmN0aW9uKGEpe3ZhciBiPQpPcCghMSk9PT0xP0EudG9wLmxvY2F0aW9uLmhyZWY6QS5sb2NhdGlvbi5ocmVmO3JldHVybiBhKGIpfSxjdD1mdW5jdGlvbihhKXt2YXIgYj1bXTtHYihhLGZ1bmN0aW9uKGMsZCl7ZD1ScihkKTtmb3IodmFyIGU9W10sZj0wO2Y8ZC5sZW5ndGg7ZisrKWUucHVzaChkW2ZdLmdjbGlkKTtlLmxlbmd0aCYmYi5wdXNoKGMrIjoiK2Uuam9pbigiLCIpKX0pO3JldHVybiBiLmpvaW4oIjsiKX0sZXQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWR0KGEpO2lmKGQpcmV0dXJuIGQ7dmFyIGU9SHIoYik7aWYoZT09PSJfZ2NsIil7dmFyIGY9IVhvKGZwKSYmYyxnPVtdO2E9PT0iYXciP2c9YXMoQS5sb2NhdGlvbi5ocmVmLCEwLCExKTphPT09ImRjIiYmKGc9ZHMoQS5sb2NhdGlvbi5ocmVmLCEwLCExKSk7aWYoZy5sZW5ndGg+MClyZXR1cm4gZj9be3ZlcnNpb246IkdDTCIsdGltZXN0YW1wOjAsZ2NsaWQ6IjAifV06Zy5tYXAoZnVuY3Rpb24obCl7cmV0dXJue3ZlcnNpb246IkdDTCIsdGltZXN0YW1wOjAsCmdjbGlkOmwudmFsdWUscWE6bC5xYSxvYTpbMV19fSl9dmFyIGg9SXIoYSxlKTtyZXR1cm4gaD9hPT09ImF3Ij9FcihoLE0oNTYyKSk6WnIoaCk6W119LGR0PWZ1bmN0aW9uKGEpe3ZhciBiPVRqKCJnY2wiK2EpLGM9YT09PSJkYyJ8fGE9PT0iYXciP1RqKCJnY2wiK2ErIl9zcmMiKTp2b2lkIDA7aWYoYilyZXR1cm4gU3MoYixjKX0sZnQ9ZnVuY3Rpb24oYSxiLGMpe2lmKGE9PT0iYXcifHxhPT09ImRjInx8YT09PSJnYiIpe3ZhciBkPVRqKCJnY2wiK2EpO2lmKGQpcmV0dXJuIGQuc3BsaXQoIi4iKX12YXIgZT1IcihiKTtpZihlPT09Il9nY2wiKXt2YXIgZj0hWG8oZnApJiZjLGc7Zz1lcygpW2FdfHxbXTtpZihnLmxlbmd0aD4wKXJldHVybiBmP1siMCJdOmd9dmFyIGg9SXIoYSxlKTtyZXR1cm4gaD9EcihoKTpbXX0sZ3Q9ZnVuY3Rpb24oYSxiLGMpe2lmKCFSKGEsYil8fCFSKGEsYykpcmV0dXJuIiI7dmFyIGQ9UihhLGIpLnNwbGl0KCIuIiksZT1SKGEsYykuc3BsaXQoIi4iKTtyZXR1cm4gZC5sZW5ndGgmJgplLmxlbmd0aCYmZC5sZW5ndGg9PT1lLmxlbmd0aCYmZFswXSYmZVswXT9kLm1hcChmdW5jdGlvbihmLGcpe3JldHVybiBmKyJfIitlW2ddfSkuam9pbigiLiIpOiIifSwkcz0vXmdhZF9zb3VyY2VbXz1dKFxkKykkLztmdW5jdGlvbiBodChhLGIsYyl7dmFyIGQ9UihhLEYuRC5UYSk7aWYoZCYmdHlwZW9mIGQ9PT0ib2JqZWN0Iilmb3IodmFyIGU9bShPYmplY3Qua2V5cyhkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWUsaD1kW2ddO2lmKGghPT12b2lkIDApe2g9PT1udWxsJiYoaD0iIik7dmFyIGw9ImdhcC4iK2csbj1TdHJpbmcoaCk7Yz9jKGwsbik6YltsXT1ufX19O3ZhciBpdD0hMSxqdD1bXTtmdW5jdGlvbiBrdCgpe2lmKCFpdCl7aXQ9ITA7Zm9yKHZhciBhPWp0Lmxlbmd0aC0xO2E+PTA7YS0tKWp0W2FdKCk7anQ9W119fTtmdW5jdGlvbiBsdChhKXt2YXIgYj1bXSxjPTAsZDtmb3IoZCBpbiBhKWJbYysrXT1hW2RdO3JldHVybiBifTtmdW5jdGlvbiBtdChhLGIsYyl7cmV0dXJuIHR5cGVvZiBhLmFkZEV2ZW50TGlzdGVuZXI9PT0iZnVuY3Rpb24iPyhhLmFkZEV2ZW50TGlzdGVuZXIoYixjLCExKSwhMCk6ITF9ZnVuY3Rpb24gbnQoYSxiLGMpe3R5cGVvZiBhLnJlbW92ZUV2ZW50TGlzdGVuZXI9PT0iZnVuY3Rpb24iJiZhLnJlbW92ZUV2ZW50TGlzdGVuZXIoYixjLCExKX07ZnVuY3Rpb24gb3QoYSxiLGMsZCl7ZD1kPT09dm9pZCAwPyExOmQ7YS5nb29nbGVfaW1hZ2VfcmVxdWVzdHN8fChhLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cz1bXSk7dmFyIGU9UHAoYS5kb2N1bWVudCk7aWYoYyl7dmFyIGY9ZnVuY3Rpb24oKXtpZihjKXt2YXIgZz1hLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cyxoPURjKGcsZSk7aD49MCYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGcsaCwxKX1udChlLCJsb2FkIixmKTtudChlLCJlcnJvciIsZil9O210KGUsImxvYWQiLGYpO210KGUsImVycm9yIixmKX1kJiYoZS5hdHRyaWJ1dGlvblNyYz0iIik7ZS5zcmM9YjthLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cy5wdXNoKGUpfQpmdW5jdGlvbiBwdChhKXt2YXIgYjtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz0iaHR0cHM6Ly9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvZ2VuXzIwND9pZD10Y2ZlIjtJcChhLGZ1bmN0aW9uKGQsZSl7aWYoZHx8ZD09PTApYys9IiYiK2UrIj0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoZCkpfSk7cXQoYyxiKX0KZnVuY3Rpb24gcXQoYSxiKXt2YXIgYz13aW5kb3csZDtiPWI9PT12b2lkIDA/ITE6YjtkPWQ9PT12b2lkIDA/ITE6ZDtpZihjLmZldGNoKXt2YXIgZT17a2VlcGFsaXZlOiEwLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixyZWRpcmVjdDoiZm9sbG93IixtZXRob2Q6ImdldCIsbW9kZToibm8tY29ycyJ9O2QmJihlLm1vZGU9ImNvcnMiLCJzZXRBdHRyaWJ1dGlvblJlcG9ydGluZyJpbiBYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGU/ZS5hdHRyaWJ1dGlvblJlcG9ydGluZz17ZXZlbnRTb3VyY2VFbGlnaWJsZToidHJ1ZSIsdHJpZ2dlckVsaWdpYmxlOiJmYWxzZSJ9OmUuaGVhZGVycz17IkF0dHJpYnV0aW9uLVJlcG9ydGluZy1FbGlnaWJsZSI6ImV2ZW50LXNvdXJjZSJ9KTtjLmZldGNoKGEsZSl9ZWxzZSBvdChjLGEsYj09PXZvaWQgMD8hMTpiLGQ9PT12b2lkIDA/ITE6ZCl9O2Z1bmN0aW9uIHJ0KCl7dGhpcy5mYT10aGlzLmZhO3RoaXMuUj10aGlzLlJ9cnQucHJvdG90eXBlLmZhPSExO3J0LnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7dGhpcy5mYXx8KHRoaXMuZmE9ITAsdGhpcy5OKCkpfTtydC5wcm90b3R5cGVbU3ltYm9sLmRpc3Bvc2VdPWZ1bmN0aW9uKCl7dGhpcy5kaXNwb3NlKCl9O3J0LnByb3RvdHlwZS5hZGRPbkRpc3Bvc2VDYWxsYmFjaz1mdW5jdGlvbihhLGIpe3RoaXMuZmE/YiE9PXZvaWQgMD9hLmNhbGwoYik6YSgpOih0aGlzLlJ8fCh0aGlzLlI9W10pLGImJihhPWEuYmluZChiKSksdGhpcy5SLnB1c2goYSkpfTtydC5wcm90b3R5cGUuTj1mdW5jdGlvbigpe2lmKHRoaXMuUilmb3IoO3RoaXMuUi5sZW5ndGg7KXRoaXMuUi5zaGlmdCgpKCl9O2Z1bmN0aW9uIHN0KGEpe2EuYWRkdGxDb25zZW50PT09dm9pZCAwfHx2ZihhLmFkZHRsQ29uc2VudCl8fChhLmFkZHRsQ29uc2VudD12b2lkIDApO2EuZ2RwckFwcGxpZXM9PT12b2lkIDB8fHdmKGEuZ2RwckFwcGxpZXMpfHwoYS5nZHByQXBwbGllcz12b2lkIDApO3JldHVybiBhLnRjU3RyaW5nIT09dm9pZCAwJiYhdmYoYS50Y1N0cmluZyl8fGEubGlzdGVuZXJJZCE9PXZvaWQgMCYmIXVmKGEubGlzdGVuZXJJZCk/MjphLmNtcFN0YXR1cyYmYS5jbXBTdGF0dXMhPT0iZXJyb3IiPzA6M312YXIgdHQ9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/e306YjtydC5jYWxsKHRoaXMpO3RoaXMuSD1udWxsO3RoaXMuamE9e307dGhpcy55YT0wO3RoaXMuWj1udWxsO3RoaXMuSz1hO3ZhciBjO3RoaXMudGltZW91dE1zPShjPWIudGltZW91dE1zKSE9bnVsbD9jOjUwMDt2YXIgZDt0aGlzLkVqPShkPWIuRWopIT1udWxsP2Q6ITF9O3dhKHR0LHJ0KTsKdHQucHJvdG90eXBlLk49ZnVuY3Rpb24oKXt0aGlzLmphPXt9O3RoaXMuWiYmKG50KHRoaXMuSywibWVzc2FnZSIsdGhpcy5aKSxkZWxldGUgdGhpcy5aKTtkZWxldGUgdGhpcy5qYTtkZWxldGUgdGhpcy5LO2RlbGV0ZSB0aGlzLkg7cnQucHJvdG90eXBlLk4uY2FsbCh0aGlzKX07dmFyIHZ0PWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYS5LLl9fdGNmYXBpPT09ImZ1bmN0aW9uInx8dXQoYSkhPW51bGx9Owp0dC5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9e2ludGVybmFsQmxvY2tPbkVycm9yczp0aGlzLkVqfSxkPUhwKGZ1bmN0aW9uKCl7YShjKX0pLGU9MDt0aGlzLnRpbWVvdXRNcyE9PS0xJiYoZT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSI7Yy5pbnRlcm5hbEVycm9yU3RhdGU9MTtkKCl9LHRoaXMudGltZW91dE1zKSk7dmFyIGY9ZnVuY3Rpb24oZyxoKXtjbGVhclRpbWVvdXQoZSk7Zz8oYz1nLGMuaW50ZXJuYWxFcnJvclN0YXRlPXN0KGMpLGMuaW50ZXJuYWxCbG9ja09uRXJyb3JzPWIuRWosaCYmYy5pbnRlcm5hbEVycm9yU3RhdGU9PT0wfHwoYy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSIsaHx8KGMuaW50ZXJuYWxFcnJvclN0YXRlPTMpKSk6KGMudGNTdHJpbmc9InRjdW5hdmFpbGFibGUiLGMuaW50ZXJuYWxFcnJvclN0YXRlPTMpO2EoYyl9O3RyeXt3dCh0aGlzLCJhZGRFdmVudExpc3RlbmVyIiwKZil9Y2F0Y2goZyl7Yy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSIsYy5pbnRlcm5hbEVycm9yU3RhdGU9MyxlJiYoY2xlYXJUaW1lb3V0KGUpLGU9MCksZCgpfX07dHQucHJvdG90eXBlLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7YSYmYS5saXN0ZW5lcklkJiZ3dCh0aGlzLCJyZW1vdmVFdmVudExpc3RlbmVyIixudWxsLGEubGlzdGVuZXJJZCl9Owp2YXIgenQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkO2Q9ZD09PXZvaWQgMD8iNzU1IjpkO3ZhciBlO2E6e2lmKGEucHVibGlzaGVyJiZhLnB1Ymxpc2hlci5yZXN0cmljdGlvbnMpe3ZhciBmPWEucHVibGlzaGVyLnJlc3RyaWN0aW9uc1tiXTtpZihmIT09dm9pZCAwKXtlPWZbZD09PXZvaWQgMD8iNzU1IjpkXTticmVhayBhfX1lPXZvaWQgMH12YXIgZz1lO2lmKGc9PT0wKXJldHVybiExO3ZhciBoPWM7Yz09PTI/KGg9MCxnPT09MiYmKGg9MSkpOmM9PT0zJiYoaD0xLGc9PT0xJiYoaD0wKSk7dmFyIGw7aWYoaD09PTApaWYoYS5wdXJwb3NlJiZhLnZlbmRvcil7dmFyIG49eHQoYS52ZW5kb3IuY29uc2VudHMsZD09PXZvaWQgMD8iNzU1IjpkKTtsPW4mJmI9PT0iMSImJmEucHVycG9zZU9uZVRyZWF0bWVudCYmYS5wdWJsaXNoZXJDQz09PSJDSCI/ITA6biYmeHQoYS5wdXJwb3NlLmNvbnNlbnRzLGIpfWVsc2UgbD0hMDtlbHNlIGw9aD09PTE/YS5wdXJwb3NlJiZhLnZlbmRvcj94dChhLnB1cnBvc2UubGVnaXRpbWF0ZUludGVyZXN0cywKYikmJnh0KGEudmVuZG9yLmxlZ2l0aW1hdGVJbnRlcmVzdHMsZD09PXZvaWQgMD8iNzU1IjpkKTohMDohMDtyZXR1cm4gbH0seHQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4hKCFhfHwhYVtiXSl9LHd0PWZ1bmN0aW9uKGEsYixjLGQpe2N8fChjPWZ1bmN0aW9uKCl7fSk7dmFyIGU9YS5LO2lmKHR5cGVvZiBlLl9fdGNmYXBpPT09ImZ1bmN0aW9uIil7dmFyIGY9ZS5fX3RjZmFwaTtmKGIsMixjLGQpfWVsc2UgaWYodXQoYSkpe0F0KGEpO3ZhciBnPSsrYS55YTthLmphW2ddPWM7aWYoYS5IKXt2YXIgaD17fTthLkgucG9zdE1lc3NhZ2UoKGguX190Y2ZhcGlDYWxsPXtjb21tYW5kOmIsdmVyc2lvbjoyLGNhbGxJZDpnLHBhcmFtZXRlcjpkfSxoKSwiKiIpfX1lbHNlIGMoe30sITEpfSx1dD1mdW5jdGlvbihhKXtpZihhLkgpcmV0dXJuIGEuSDthLkg9TnAoYS5LLCJfX3RjZmFwaUxvY2F0b3IiKTtyZXR1cm4gYS5IfSxBdD1mdW5jdGlvbihhKXtpZighYS5aKXt2YXIgYj1mdW5jdGlvbihjKXtpZihjLnNvdXJjZT09PQphLkgpdHJ5e3ZhciBkO2Q9KHZmKGMuZGF0YSk/SlNPTi5wYXJzZShjLmRhdGEpOmMuZGF0YSkuX190Y2ZhcGlSZXR1cm47YS5qYVtkLmNhbGxJZF0oZC5yZXR1cm5WYWx1ZSxkLnN1Y2Nlc3MpfWNhdGNoKGUpe319O2EuWj1iO210KGEuSywibWVzc2FnZSIsYil9fSxCdD1mdW5jdGlvbihhKXtpZihhLmdkcHJBcHBsaWVzPT09ITEpcmV0dXJuITA7YS5pbnRlcm5hbEVycm9yU3RhdGU9PT12b2lkIDAmJihhLmludGVybmFsRXJyb3JTdGF0ZT1zdChhKSk7cmV0dXJuIGEuY21wU3RhdHVzPT09ImVycm9yInx8YS5pbnRlcm5hbEVycm9yU3RhdGUhPT0wP2EuaW50ZXJuYWxCbG9ja09uRXJyb3JzPyhwdCh7ZTpTdHJpbmcoYS5pbnRlcm5hbEVycm9yU3RhdGUpfSksITEpOiEwOmEuY21wU3RhdHVzIT09ImxvYWRlZCJ8fGEuZXZlbnRTdGF0dXMhPT0idGNsb2FkZWQiJiZhLmV2ZW50U3RhdHVzIT09InVzZXJhY3Rpb25jb21wbGV0ZSI/ITE6ITB9O3ZhciBDdD17MTowLDM6MCw0OjAsNzozLDk6MywxMDozfTtmdW5jdGlvbiBEdCgpe3JldHVybiBraigidGNmIixmdW5jdGlvbigpe3JldHVybnt9fSl9dmFyIEV0PWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB0dChBLHt0aW1lb3V0TXM6LTF9KX07CmZ1bmN0aW9uIEZ0KCl7dmFyIGE9RHQoKSxiPUV0KCk7dnQoYikmJiFHdCgpJiYhSHQoKSYmUCgxMjQpO2lmKCFhLmFjdGl2ZSYmdnQoYikpe0d0KCkmJihhLmFjdGl2ZT0hMCxhLnB1cnBvc2VzPXt9LGEuY21wSWQ9MCxhLnRjZlBvbGljeVZlcnNpb249MCx0bCgpLmFjdGl2ZT0hMCxhLnRjU3RyaW5nPSJ0Y3VuYXZhaWxhYmxlIik7Y3AoKTt0cnl7Yi5hZGRFdmVudExpc3RlbmVyKGZ1bmN0aW9uKGMpe2lmKGMuaW50ZXJuYWxFcnJvclN0YXRlIT09MClJdChhKSxkcChbRi5ELmthLEYuRC5YYSxGLkQubWFdKSx0bCgpLmFjdGl2ZT0hMDtlbHNlIGlmKGEuZ2RwckFwcGxpZXM9Yy5nZHByQXBwbGllcyxhLmNtcElkPWMuY21wSWQsYS5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU9Yy5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGUsSHQoKSYmKGEuYWN0aXZlPSEwKSwhSnQoYyl8fEd0KCl8fEh0KCkpe2EudGNmUG9saWN5VmVyc2lvbj1jLnRjZlBvbGljeVZlcnNpb247dmFyIGQ7aWYoYy5nZHByQXBwbGllcz09PQohMSl7dmFyIGU9e30sZjtmb3IoZiBpbiBDdClDdC5oYXNPd25Qcm9wZXJ0eShmKSYmKGVbZl09ITApO2Q9ZTtiLnJlbW92ZUV2ZW50TGlzdGVuZXIoYyl9ZWxzZSBpZihKdChjKSl7dmFyIGc9e30saDtmb3IoaCBpbiBDdClpZihDdC5oYXNPd25Qcm9wZXJ0eShoKSlpZihoPT09IjEiKXt2YXIgbCxuPWMscD17VXI6ITB9O3A9cD09PXZvaWQgMD97fTpwO2w9QnQobik/bi5nZHByQXBwbGllcz09PSExPyEwOm4udGNTdHJpbmc9PT0idGN1bmF2YWlsYWJsZSI/IXAuaWRwY0FwcGxpZXM6KHAuaWRwY0FwcGxpZXN8fG4uZ2RwckFwcGxpZXMhPT12b2lkIDB8fHAuVXIpJiYocC5pZHBjQXBwbGllc3x8dmYobi50Y1N0cmluZykmJm4udGNTdHJpbmcubGVuZ3RoKT96dChuLCIxIiwwKTohMDohMTtnWyIxIl09bH1lbHNlIGdbaF09enQoYyxoLEN0W2hdKTtkPWd9aWYoZCl7YS50Y1N0cmluZz1jLnRjU3RyaW5nfHwidGNlbXB0eSI7YS5wdXJwb3Nlcz1kO3ZhciBxPXt9LHI9KHFbRi5ELmthXT0KYS5wdXJwb3Nlc1siMSJdPyJncmFudGVkIjoiZGVuaWVkIixxKTthLmdkcHJBcHBsaWVzIT09ITA/KGRwKFtGLkQua2EsRi5ELlhhLEYuRC5tYV0pLHRsKCkuYWN0aXZlPSEwKToocltGLkQuWGFdPWEucHVycG9zZXNbIjMiXSYmYS5wdXJwb3Nlc1siNCJdPyJncmFudGVkIjoiZGVuaWVkIix0eXBlb2YgYS50Y2ZQb2xpY3lWZXJzaW9uPT09Im51bWJlciImJmEudGNmUG9saWN5VmVyc2lvbj49ND9yW0YuRC5tYV09YS5wdXJwb3Nlc1siMSJdJiZhLnB1cnBvc2VzWyI3Il0/ImdyYW50ZWQiOiJkZW5pZWQiOmRwKFtGLkQubWFdKSxWbyhyLHtldmVudElkOjB9LHtnZHByQXBwbGllczphP2EuZ2RwckFwcGxpZXM6dm9pZCAwLHRjU3RyaW5nOkt0KCl8fCIifSkpfX1lbHNlIGRwKFtGLkQua2EsRi5ELlhhLEYuRC5tYV0pfSl9Y2F0Y2goYyl7SXQoYSksZHAoW0YuRC5rYSxGLkQuWGEsRi5ELm1hXSksdGwoKS5hY3RpdmU9ITB9fX0KZnVuY3Rpb24gSXQoYSl7YS50eXBlPSJlIjthLnRjU3RyaW5nPSJ0Y3VuYXZhaWxhYmxlIn1mdW5jdGlvbiBKdChhKXtyZXR1cm4gYS5ldmVudFN0YXR1cz09PSJ0Y2xvYWRlZCJ8fGEuZXZlbnRTdGF0dXM9PT0idXNlcmFjdGlvbmNvbXBsZXRlInx8YS5ldmVudFN0YXR1cz09PSJjbXB1aXNob3duIn1mdW5jdGlvbiBHdCgpe3JldHVybiBBLmd0YWdfZW5hYmxlX3RjZl9zdXBwb3J0PT09ITB9ZnVuY3Rpb24gSHQoKXtyZXR1cm4gRHQoKS5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU9PT0hMH1mdW5jdGlvbiBLdCgpe3ZhciBhPUR0KCk7aWYoYS5hY3RpdmUpcmV0dXJuIGEudGNTdHJpbmd9ZnVuY3Rpb24gTHQoKXt2YXIgYT1EdCgpO2lmKGEuYWN0aXZlJiZhLmdkcHJBcHBsaWVzIT09dm9pZCAwKXJldHVybiBhLmdkcHJBcHBsaWVzPyIxIjoiMCJ9CmZ1bmN0aW9uIE10KGEpe2lmKCFDdC5oYXNPd25Qcm9wZXJ0eShTdHJpbmcoYSkpKXJldHVybiEwO3ZhciBiPUR0KCk7cmV0dXJuIGIuYWN0aXZlJiZiLnB1cnBvc2VzPyEhYi5wdXJwb3Nlc1tTdHJpbmcoYSldOiEwfTt2YXIgTnQ9W0YuRC5rYSxGLkQucmEsRi5ELm1hLEYuRC5YYV0sT3Q9e30sUHQ9KE90W0YuRC5rYV09MSxPdFtGLkQucmFdPTIsT3QpO2Z1bmN0aW9uIFF0KGEpe2lmKGE9PT12b2lkIDApcmV0dXJuIDA7c3dpdGNoKE8oYSxGLkQuUmMpKXtjYXNlIHZvaWQgMDpyZXR1cm4gMTtjYXNlICExOnJldHVybiAzO2RlZmF1bHQ6cmV0dXJuIDJ9fWZ1bmN0aW9uIFJ0KCl7cmV0dXJuKE0oMTgzKT9MZigxNikuc3BsaXQoIn4iKTpMZigxNykuc3BsaXQoIn4iKSkuaW5kZXhPZih6bSgpKSE9PS0xJiZIYy5nbG9iYWxQcml2YWN5Q29udHJvbD09PSEwfWZ1bmN0aW9uIFN0KGEpe2lmKFJ0KCkpcmV0dXJuITE7dmFyIGI9UXQoYSk7aWYoYj09PTMpcmV0dXJuITE7c3dpdGNoKENsKEYuRC5YYSkpe2Nhc2UgMTpjYXNlIDM6cmV0dXJuITA7Y2FzZSAyOnJldHVybiExO2Nhc2UgNDpyZXR1cm4gYj09PTI7Y2FzZSAwOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fQpmdW5jdGlvbiBUdCgpe3JldHVybiBFbCgpfHwhQmwoRi5ELmthKXx8IUJsKEYuRC5yYSl9ZnVuY3Rpb24gVXQoKXt2YXIgYT17fSxiO2ZvcihiIGluIFB0KVB0Lmhhc093blByb3BlcnR5KGIpJiYoYVtQdFtiXV09Q2woYikpO3JldHVybiJHMSIreWYoYVsxXXx8MCkreWYoYVsyXXx8MCl9dmFyIFZ0PXt9LFd0PShWdFtGLkQua2FdPTAsVnRbRi5ELnJhXT0xLFZ0W0YuRC5tYV09MixWdFtGLkQuWGFdPTMsVnQpO2Z1bmN0aW9uIFh0KGEpe3N3aXRjaChhKXtjYXNlIHZvaWQgMDpyZXR1cm4gMTtjYXNlICEwOnJldHVybiAzO2Nhc2UgITE6cmV0dXJuIDI7ZGVmYXVsdDpyZXR1cm4gMH19CmZ1bmN0aW9uIFl0KGEpe2Zvcih2YXIgYj0iMSIsYz0wO2M8TnQubGVuZ3RoO2MrKyl7dmFyIGQ9YixlLGY9TnRbY10sZz1BbC5kZWxlZ2F0ZWRDb25zZW50VHlwZXNbZl07ZT1nPT09dm9pZCAwPzA6V3QuaGFzT3duUHJvcGVydHkoZyk/MTJ8V3RbZ106ODt2YXIgaD10bCgpO2guYWNjZXNzZWRBbnk9ITA7dmFyIGw9aC5lbnRyaWVzW2ZdfHx7fTtlPWU8PDJ8WHQobC5pbXBsaWNpdCk7Yj1kKygiIisiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotXyJbZV0rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW1h0KGwuZGVjbGFyZSk8PDR8WHQobC5kZWZhdWx0KTw8MnxYdChsLnVwZGF0ZSldKX12YXIgbj1iLHA9KFJ0KCk/MTowKTw8MyxxPShFbCgpPzE6MCk8PDIscj1RdChhKTtiPW4rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW3B8CnF8cl07cmV0dXJuIGIrPSIiKyIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIltBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hZF9zdG9yYWdlPDw0fEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzLmFuYWx5dGljc19zdG9yYWdlPDwyfEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzLmFkX3VzZXJfZGF0YV0rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iWyhBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM/MTowKTw8MnxBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hZF9wZXJzb25hbGl6YXRpb25dfWZ1bmN0aW9uIFp0KCl7cmV0dXJuIEJsKEYuRC5tYSk/ImEiOiItIn1mdW5jdGlvbiAkdCgpe3JldHVybiBCbSgpfHwoR3QoKXx8SHQoKSkmJkx0KCk9PT0iMSI/IjEiOiIwIn0KZnVuY3Rpb24gYXUoKXtyZXR1cm4oQm0oKT8hMDohKCFHdCgpJiYhSHQoKSkmJkx0KCk9PT0iMSIpfHwhQmwoRi5ELm1hKX0KZnVuY3Rpb24gYnUoKXt2YXIgYT0iMCIsYj0iMCIsYzt2YXIgZD1EdCgpO2M9ZC5hY3RpdmU/ZC5jbXBJZDp2b2lkIDA7dHlwZW9mIGM9PT0ibnVtYmVyIiYmYz49MCYmYzw9NDA5NSYmKGE9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2M+PjYmNjNdLGI9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2MmNjNdKTt2YXIgZT0iMCIsZjt2YXIgZz1EdCgpO2Y9Zy5hY3RpdmU/Zy50Y2ZQb2xpY3lWZXJzaW9uOnZvaWQgMDt0eXBlb2YgZj09PSJudW1iZXIiJiZmPj0wJiZmPD02MyYmKGU9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2ZdKTt2YXIgaD0wO0JtKCkmJihofD0xKTtMdCgpPT09IjEiJiYoaHw9Mik7R3QoKSYmKGh8PTQpO3ZhciBsO3ZhciBuPUR0KCk7bD1uLmVuYWJsZUFkdmVydGlzZXJDb25zZW50TW9kZSE9PQp2b2lkIDA/bi5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU/IjEiOiIwIjp2b2lkIDA7bD09PSIxIiYmKGh8PTgpO3RsKCkud2FpdFBlcmlvZFRpbWVkT3V0JiYoaHw9MTYpO3JldHVybiIxIithK2IrZSsiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotXyJbaF19O3ZhciBjdT17VUE6MSxBVzoyLERDOjMsRzo0LEdGOjUsR1Q6MTIsR1RNOjE0LEhBOjYsTUM6N307CmZ1bmN0aW9uIGR1KGEpe2E9YT09PXZvaWQgMD97fTphO3ZhciBiPUUoNSkuc3BsaXQoIi0iKVswXS50b1VwcGVyQ2FzZSgpLGMsZD17Y3RpZDpFKDUpLERvOkpmKDE1KSxJbzpFKDE0KSxMczpJZig3KT8yOjEsRHQ6YS5wZixjYW5vbmljYWxJZDpFKDYpLG50OihjPUFrKCkpPT1udWxsP3ZvaWQgMDpjLmNhbm9uaWNhbENvbnRhaW5lcklkLEV0OmEuVGc9PT12b2lkIDA/dm9pZCAwOmEuVGc/MTA6MTJ9O2QuY2Fub25pY2FsSWQhPT1hLm1jJiYoZC5tYz1hLm1jKTt2YXIgZT14aygpO2QuVXM9ZT9lLmNhbm9uaWNhbENvbnRhaW5lcklkOnZvaWQgMDtJZig0NSk/KGQuaGk9Y3VbYl0sZC5oaXx8KGQuaGk9MCkpOmQuaGk9RGo/MTM6MTA7SWYoNDcpPyhkLmJrPTAsZC5xcj0yKTpJZig1MCk/ZC5iaz0xOmQuYms9Mzt2YXIgZj1hLGc9ezY6ITF9O0pmKDU0KT09PTI/Z1s3XT0hMDpKZig1NCk9PT0xJiYoZ1syXT0hMCk7aWYoS2Mpe3ZhciBoPUxqKFJqKEtjKSwiaG9zdCIpO2gmJihnWzhdPQpoLm1hdGNoKC9eKHd3d1wuKT9nb29nbGV0YWdtYW5hZ2VyXC5jb20kLyk9PT1udWxsKX12YXIgbDtnWzldPShsPWYuZWYpIT1udWxsP2w6ITE7dmFyIG49RmsoKSxwO2dbMTBdPShwPW49PW51bGw/dm9pZCAwOm4uZnJvbUNvbnRhaW5lckV4ZWN1dGlvbikhPW51bGw/cDohMTtkLnpyPWc7cmV0dXJuIENmKGQsYS5Qbil9Owp2YXIgZnU9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9bShldShhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWUsZj1SKGEsZSksZz1RKGEsSC5KLlllKTtNKDU4OSkmJmcmJihlPT09Ri5ELnphfHxlPT09Ri5ELlVhfHxlPT09Ri5ELlBlKSYmdHlwZW9mIGY9PT0ic3RyaW5nIiYmKGY9WnMoZikpO3ZhciBoPW9wKGUsZik7aCYmKCFnfHxlIT09Ri5ELkRkJiZlIT09Ri5ELktkJiZlIT09Ri5ELkVlJiZlIT09Ri5ELkJmfHwoaC52YWx1ZT0iMCIpLE0oNTA0KSYmKGU9PT1GLkQuTWQ/aC5rZXk9ImV2bmlkIjplPT09Ri5ELk5kJiYoaC5rZXk9ImV4Y2lkIikpLGJbaC5rZXldPWgudmFsdWUpfWIuZ3RtPWR1KHttYzpRKGEsSC5KLk5iKSxUZzphLk0uaXNHdG1FdmVudCxlZjpRKGEsSC5KLkNjKX0pO1R0KCkmJihiLmdjcz1iLmdjc3x8VXQoKSk7Yi5nY2Q9Yi5nY2R8fFl0KGEuTSk7YXUoKSYmKGIuZG1hX2Nwcz1adCgpKTtiLmRtYT0kdCgpO3Z0KEV0KCkpJiYKKGIudGNmZD1idSgpKTt2YXIgbD1DcChhKTtsJiYoYi50YWdfZXhwPWwpO2lmKFEoYSxILkouQmspKXtiLnRmdD1TdHJpbmcoTmIoKSk7dmFyIG49cGQoKTtuIT09dm9pZCAwJiYoYi50ZmQ9U3RyaW5nKE1hdGgucm91bmQobikpKX1iLmFwdmU9IjEiO2IuYXB2Zj1uZCgpPyJmIjoibmYiO2ZvLkhbY28uaWEuY2JdIT09Ym8uTWEuVWV8fGZvLktbY28uaWEuY2JdLmlzQ29uc2VudEdyYW50ZWQoKXx8KGIubGltaXRlZF9hZHM9IjEiKTt2YXIgcD1RKGEsSC5KLlhnKTtNKDQ3NCkmJnAhPW51bGwmJnAhPT0iIiYmKGIuX2dzaWQ9cCk7aHQoYSxiLGZ1bmN0aW9uKHEscil7YltxXT1lbmNvZGVVUklDb21wb25lbnQocil9KTtyZXR1cm4gYn07dmFyIGd1PWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy5lbmRwb2ludD1hO3RoaXMuZmE9Yzt0aGlzLmphPWQ7dGhpcy5wYXJhbWV0ZXJFbmNvZGluZz1lO3RoaXMuWj1iLnNsaWNlKCl9O2d1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKCl7cmV0dXJuIFhvKHRoaXMuWil9O2d1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtndS5wcm90b3R5cGUuUj1mdW5jdGlvbigpe3ZhciBhPU1tW3RoaXMuZW5kcG9pbnRdKHZvaWQgMCk7cmV0dXJuIFNiKGEsImh0dHBzOi8vIik/YS5zdWJzdHJpbmcoOCk6U2IoYSwiaHR0cDovLyIpP2Euc3Vic3RyaW5nKDcpOmF9O3ZhciBodT1mdW5jdGlvbihhLGIpe3RoaXMubWV0aG9kTmFtZT1hO3RoaXMuUj1ifTtodS5wcm90b3R5cGUuc2VuZFJlcXVlc3Q9ZnVuY3Rpb24oYSxiLGMpe2lmKHRoaXMuaXNTdXBwb3J0ZWQoKSlpZigoYz09bnVsbD92b2lkIDA6Yy5ib2R5KT09PXZvaWQgMHx8dGhpcy5IKCkpdHJ5e3RoaXMuSyhhLGIsYyl9Y2F0Y2goZCl7YS5yZChkKX1lbHNlIGEucmQoIlJlcXVlc3QgbWV0aG9kICIrdGhpcy5tZXRob2ROYW1lKyIgZG9lcyBub3Qgc3VwcG9ydCBhIHJlcXVlc3QgYm9keS4iKTtlbHNlIGEucmQoIlJlcXVlc3QgbWV0aG9kICIrdGhpcy5tZXRob2ROYW1lKyIgaXMgbm90IHN1cHBvcnRlZC4iKX07dmFyIGl1PWZ1bmN0aW9uKCl7aHUuY2FsbCh0aGlzLCJJbWFnZVBpeGVsIiwzKX07d2EoaXUsaHUpO2l1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtpdS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiExfTsKaXUucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe1pjKGIsZnVuY3Rpb24oKXthLmpmKCl9LGZ1bmN0aW9uKCl7YS5vbkZhaWx1cmUodm9pZCAwKX0sYz09bnVsbD92b2lkIDA6Yy5hZil9O3ZhciBqdT1mdW5jdGlvbigpe2h1LmNhbGwodGhpcywiU2VuZEJlYWNvbiIsMSl9O3dhKGp1LGh1KTtqdS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4ga2QoKX07anUucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07anUucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe2pkKGIsYz09bnVsbD92b2lkIDA6Yy5ib2R5KT9hLmpmKCk6YS5yZCh2b2lkIDApfTt2YXIga3U9ZnVuY3Rpb24oKXtodS5jYWxsKHRoaXMsIkZldGNoIiwxKX07d2Eoa3UsaHUpO2t1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiB5YihBLmZldGNoKX07a3UucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07Cmt1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjKXtBLmZldGNoKGIsYz09bnVsbD92b2lkIDA6Yy5HYikudGhlbihmdW5jdGlvbihkKXtpZihkLm9rKWEucGUoZCk7ZWxzZSBpZihkLnN0YXR1cz09PTApYS5qZigpO2Vsc2UgYS5vbkZhaWx1cmUoIkZldGNoIGZhaWxlZCB3aXRoIHN0YXR1cyBjb2RlICIrZC5zdGF0dXMrIi4iKX0pLmNhdGNoKGZ1bmN0aW9uKGQpe2EucmQoZCl9KX07dmFyIGx1PW5ldyBpdSxtdT1uZXcganUsbnU9bmV3IGt1O3ZhciBvdT1mdW5jdGlvbigpe307b3UucHJvdG90eXBlLks9ZnVuY3Rpb24oKXtyZXR1cm5bXX07CnZhciBwdT1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD9bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXTpiO2d1LmNhbGwodGhpcyxhLGIsMSwhMCwyKX07d2EocHUsZ3UpO3B1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEpe2lmKHRoaXMuWi5sZW5ndGgpe3ZhciBiPVEoYSxILkouRGspO2lmKGIhPT12b2lkIDApcmV0dXJuIGJ9cmV0dXJuIGd1LnByb3RvdHlwZS5LLmNhbGwodGhpcyxhKX07cHUucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdShhKTthLnRhcmdldC5kZXN0aW5hdGlvbklkJiYoYy50aWQ9YS50YXJnZXQuZGVzdGluYXRpb25JZCk7Yi5tZXRob2QgaW5zdGFuY2VvZiBrdT9jLmZtdD0iOCI6Yi5tZXRob2QgaW5zdGFuY2VvZiBqdT9jLmZtdD0iNSI6Yi5tZXRob2QgaW5zdGFuY2VvZiBpdSYmKGMuZm10PSIzIik7cmV0dXJuIGN9O3B1LnByb3RvdHlwZS55YT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuTihhLGIpO3JldHVybiI/IitPYmplY3Qua2V5cyhjKS5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIGQrCiI9IitjW2RdfSkuam9pbigiJiIpfTtwdS5wcm90b3R5cGUuSD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy55YShhLGIpLGU9e307aWYoYi5tZXRob2QgaW5zdGFuY2VvZiBrdSl7ZS5HYj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGxkKTtpZih0aGlzLmVuZHBvaW50PT09NTh8fHRoaXMuZW5kcG9pbnQ9PT01NyllLkdiLm1ldGhvZD0iR0VUIjt0aGlzLmVuZHBvaW50IT09NDV8fHF1LksoYSl8fChlLkdiLmNyZWRlbnRpYWxzPSJvbWl0IixkKz0iJmdhcC51Y2ZiPTEiKX1jKGQsZSl9O3ZhciBxdT1uZXcgcHUoNDUpLHJ1PW5ldyBwdSg0NSxbXSksc3U9bmV3IHB1KDQ2LFtdKSx0dT1mdW5jdGlvbigpe3B1LmNhbGwodGhpcyw2OSl9O3dhKHR1LHB1KTt0dS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oYSl7dmFyIGI9TSg0NzQpJiYoISFSKGEsIl9nc2lkIil8fCEhUShhLEguSi5YZykpLGM9UihhLEYuRC5IZCkhPT0iMSImJighIVIoYSwiZ2NsaWQiKXx8CiEhUihhLCJkY2xpZCIpfHwhIVIoYSwiZ2Nsc3JjIil8fCEhUihhLCJhdWlkIikpO3JldHVybiBifHxjfTt0dS5wcm90b3R5cGUuTj1mdW5jdGlvbihhLGIpe3ZhciBjPWZ1KGEpLGQ9bHAoYSxjKXx8e307T2JqZWN0LmtleXMoZCkubGVuZ3RoPjAmJihiLm1ldGhvZCBpbnN0YW5jZW9mIGt1P2QuZm10PSI4IjpiLm1ldGhvZCBpbnN0YW5jZW9mIGp1P2QuZm10PSI1IjpiLm1ldGhvZCBpbnN0YW5jZW9mIGl1JiYoZC5mbXQ9IjMiKSk7cmV0dXJuIGR9O3ZhciB1dT1uZXcgdHUsdnU9ZnVuY3Rpb24oKXtwdS5jYWxsKHRoaXMsNDUpfTt3YSh2dSxwdSk7dnUucHJvdG90eXBlLlI9ZnVuY3Rpb24oKXtyZXR1cm4gWGooKSsiL2cvZC9jY20vY29sbGVjdCJ9O3Z1LnByb3RvdHlwZS5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9cHUucHJvdG90eXBlLk4uY2FsbCh0aGlzLGEsYik7Y1siZ2FwLjFwZmIiXT0iMSI7cmV0dXJuIGN9O3ZhciB3dT1mdW5jdGlvbihhKXtwdS5jYWxsKHRoaXMsYSxbImFkX3N0b3JhZ2UiLAoiYWRfdXNlcl9kYXRhIl0pfTt3YSh3dSxwdSk7d3UucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1wdS5wcm90b3R5cGUuTi5jYWxsKHRoaXMsYSxiKTtyZXR1cm4gaHAoYyl9O3ZhciB4dT1uZXcgd3UoNTgpLHl1PW5ldyB3dSg1NyksenU9ZnVuY3Rpb24oKXt9O3dhKHp1LG91KTt6dS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXt2YXIgYj1xdS5LKGEpLGM9Yj9xdTpzdSxkPVt7ZW5kcG9pbnQ6YyxtZXRob2Q6bmQoKT9udTptdX0se2VuZHBvaW50OmMsbWV0aG9kOmx1fV07Yj9NKDUxNykmJklmKDQ3KSYmZC5wdXNoKHtlbmRwb2ludDpuZXcgdnUsbWV0aG9kOm51fSk6TSg2MDApJiZkLnB1c2goe2VuZHBvaW50OnJ1LG1ldGhvZDpudX0pO3JldHVybiBkfTt6dS5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPSEhUShhLEguSi52ZCksZD1SKGEsRi5ELlBkKT09PSIxIixlPVIoYSxGLkQuSGQpPT09IjEiLGY9cXUuSyhhKSxnPWMmJmQmJiFlJiZmO2lmKGcpe3ZhciBoPQpRYygpfHxPYygpP3h1Onl1O2IucHVzaChbe2VuZHBvaW50OmgsbWV0aG9kOm51fSx7ZW5kcG9pbnQ6aCxtZXRob2Q6bHV9XSl9ZiYmKGd8fFEoYSxILkouaGQpKSYmYi5wdXNoKFt7ZW5kcG9pbnQ6dXUsbWV0aG9kOm5kKCk/bnU6bHV9XSk7cmV0dXJuIGJ9O3ZhciBBdT1uZXcgenU7dmFyIFQ9e1c6e0prOjEsbmo6MixGazozLG1sOjQsR2s6NSx5ZDo2LGtsOjcsTXE6OCxxbjo5LEhrOjEwLElrOjExLEZoOjEyLERtOjEzLEFtOjE0LENtOjE1LHptOjE2LEJtOjE3LHltOjE4LFRvOjE5LHhxOjIwLHlxOjIxLGZqOjIyLHVuOjI0LE9tOjI1LFNrOjI2LFRrOjI3LFJrOjI4LFVrOjI5LHJqOjMwLE9rOjMxLFpvOjMyfX07VC5XW1QuVy5Ka109IkFMTE9XX0lOVEVSRVNUX0dST1VQUyI7VC5XW1QuVy5ual09IlNFUlZFUl9DT05UQUlORVJfVVJMIjtULldbVC5XLkZrXT0iQURTX0RBVEFfUkVEQUNUSU9OIjtULldbVC5XLm1sXT0iQ1VTVE9NRVJfTElGRVRJTUVfVkFMVUUiO1QuV1tULlcuR2tdPSJBTExPV19DVVNUT01fU0NSSVBUUyI7VC5XW1QuVy55ZF09IkFOWV9DT09LSUVfUEFSQU1TIjtULldbVC5XLmtsXT0iQ09PS0lFX0VYUElSRVMiO1QuV1tULlcuTXFdPSJMRUdBQ1lfRU5IQU5DRURfQ09OVkVSU0lPTl9KU19WQVJJQUJMRSI7VC5XW1QuVy5xbl09IlJFU1RSSUNURURfREFUQV9QUk9DRVNTSU5HIjsKVC5XW1QuVy5Ia109IkFMTE9XX0RJU1BMQVlfRkVBVFVSRVMiO1QuV1tULlcuSWtdPSJBTExPV19HT09HTEVfU0lHTkFMUyI7VC5XW1QuVy5GaF09IkdFTkVSQVRFRF9UUkFOU0FDVElPTl9JRCI7VC5XW1QuVy5EbV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1VOS05PV04iO1QuV1tULlcuQW1dPSJGTE9PRExJR0hUX0NPVU5USU5HX01FVEhPRF9TVEFOREFSRCI7VC5XW1QuVy5DbV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1VOSVFVRSI7VC5XW1QuVy56bV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1BFUl9TRVNTSU9OIjtULldbVC5XLkJtXT0iRkxPT0RMSUdIVF9DT1VOVElOR19NRVRIT0RfVFJBTlNBQ1RJT05TIjtULldbVC5XLnltXT0iRkxPT0RMSUdIVF9DT1VOVElOR19NRVRIT0RfSVRFTVNfU09MRCI7VC5XW1QuVy5Ub109IkFEU19PR1RfVjFfVVNBR0UiO1QuV1tULlcueHFdPSJGT1JNX0lOVEVSQUNUSU9OX1BFUk1JU1NJT05fREVOSUVEIjsKVC5XW1QuVy55cV09IkZPUk1fU1VCTUlUX1BFUk1JU1NJT05fREVOSUVEIjtULldbVC5XLmZqXT0iTUlDUk9UQVNLX05PVF9TVVBQT1JURUQiO1QuV1tULlcudW5dPSJTRVRfRU5DUllQVEVEX0RBVEFfVE9fQ0FDSEUiO1QuV1tULlcuT21dPSJHRVRfRU5DUllQVEVEX0RBVEFfRlJPTV9DQUNIRSI7VC5XW1QuVy5Ta109IkNPTkZJR19ERVRFQ1RFRF9XSVRIX05PX1BBUkFNIjtULldbVC5XLlRrXT0iQ09ORklHX0RFVEVDVEVEX1dJVEhfUEFSQU0iO1QuV1tULlcuUmtdPSJDT05GSUdfQ09OU0VOVF9TRVRfQkVGT1JFIjtULldbVC5XLlVrXT0iQ09ORklHX1NFVF9VU0VEX0JFRk9SRSI7VC5XW1QuVy5yal09IlNIQURPV19ET01fQVVUT19QSUkiO1QuV1tULlcuT2tdPSJDQ0RfVVNFUl9EQVRBX1dFQl9PTl9DT05GSUciO1QuV1tULlcuWm9dPSJCTEVOREVEX1VTRVJfREFUQSI7dmFyIEJ1PXt9LEN1PShCdVtGLkQudWldPVQuVy5KayxCdVtGLkQuZGRdPVQuVy5uaixCdVtGLkQueWNdPVQuVy5uaixCdVtGLkQubWJdPVQuVy5GayxCdVtGLkQuR2VdPVQuVy5tbCxCdVtGLkQucmldPVQuVy5HayxCdVtGLkQuSmRdPVQuVy55ZCxCdVtGLkQubmJdPVQuVy55ZCxCdVtGLkQuTGJdPVQuVy55ZCxCdVtGLkQuSWRdPVQuVy55ZCxCdVtGLkQudmNdPVQuVy55ZCxCdVtGLkQuVGJdPVQuVy55ZCxCdVtGLkQuQ2JdPVQuVy5rbCxCdVtGLkQuV2JdPVQuVy5xbixCdVtGLkQuaGhdPVQuVy5IayxCdVtGLkQuU2NdPVQuVy5JayxCdSksRHU9e30sRXU9KER1LnVua25vd249VC5XLkRtLER1LnN0YW5kYXJkPVQuVy5BbSxEdS51bmlxdWU9VC5XLkNtLER1LnBlcl9zZXNzaW9uPVQuVy56bSxEdS50cmFuc2FjdGlvbnM9VC5XLkJtLER1Lml0ZW1zX3NvbGQ9VC5XLnltLER1KTt2YXIgRnU9ZnVuY3Rpb24oYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO3NiKCJHVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTCIsYik7YyYmKGEuSFtiXT0hMCl9LHZiPW5ldyBmdW5jdGlvbigpe3RoaXMuSD1bXX07ZnVuY3Rpb24gR3UoYSl7RnUodmIsYSwhMSl9ZnVuY3Rpb24gSHUoYSxiKXt2YXIgYz1iPT09dm9pZCAwPyExOmIsZD12YjtjPWM9PT12b2lkIDA/ITE6Yztmb3IodmFyIGU9T2JqZWN0LmtleXMoYSksZj1tKE9iamVjdC5rZXlzKEN1KSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7ZS5pbmNsdWRlcyhoKSYmRnUoZCxDdVtoXSxjKX19O2Z1bmN0aW9uIEl1KGEsYil7YT9hLnRoZW4oYik6Yih2b2lkIDApfWZ1bmN0aW9uIEp1KGEpe3JldHVybiBQcm9taXNlLmFsbFNldHRsZWQoYSkudGhlbihmdW5jdGlvbihiKXtyZXR1cm4gYi5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIGMuc3RhdHVzPT09ImZ1bGZpbGxlZCJ9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIGMudmFsdWV9KX0pfWZ1bmN0aW9uIEt1KCl7dmFyIGEsYjtyZXR1cm57cHJvbWlzZTpuZXcgUHJvbWlzZShmdW5jdGlvbihjLGQpe2E9YztiPWR9KSxyZXNvbHZlOmEscmVqZWN0OmJ9fTtmdW5jdGlvbiBMdShhLGIsYyxkLGUsZil7dmFyIGc9Yy5zbGljZSgpLGg7ZD09bnVsbHx8KGg9ZC51dik9PW51bGx8fGguY2FsbChkLGEsYixjLGUpO3ZhciBsPUt1KCksbj1sLnByb21pc2UscD1sLnJlc29sdmUscT1bXSxyPWZ1bmN0aW9uKCl7cChxKTt2YXIgdTtkPT1udWxsfHwodT1kLlJzKT09bnVsbHx8dS5jYWxsKGQsYSxiLGMsZSxxKX0sdD1mdW5jdGlvbigpe3ZhciB1PWcuc2hpZnQoKTt1P3UubWV0aG9kLmlzU3VwcG9ydGVkKCk/TXUoYSxiLHUuZW5kcG9pbnQsZCxxLHUubWV0aG9kLGUsZix0LHIpOnQoKTpyKCl9O3QoKTtyZXR1cm4gbn0KZnVuY3Rpb24gTXUoYSxiLGMsZCxlLGYsZyxoLGwsbil7dmFyIHA9Yy5SKGEpLHE9e3RrOmIsZW5kcG9pbnQ6Yyxpc1ByaW1hcnk6ZyxzYjp2b2lkIDAscGs6ZixqdDp7fX0scj0hMSx0PWZ1bmN0aW9uKHosQyl7aWYocilQKDE4Nyk7ZWxzZSBpZihyPSEwLCF1KXt2YXIgRD1DfHx7fSxJPUQuYm9keSxHPUQuR2IsTj1ELmFmO0M9T2JqZWN0LmZyZWV6ZShuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LEk/e2JvZHk6SX06e30sRz97R2I6R306e30sTj97YWY6Tn06e30pKTtpZihJJiYhZi5IKCkpeCgpLGwoKTtlbHNle3ZhciBTPU51KHopLFc9cFswXT09PSIvIj8iIitwK1M6Imh0dHBzOi8vIitwK1M7cS5zYj1XO3EuanQ9Qzt2YXIgZWE7ZD09bnVsbHx8KGVhPWQuU3MpPT1udWxsfHxlYS5jYWxsKGQsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHEpKTt2YXIgamE9e2Rlc3RpbmF0aW9uSWQ6YS50YXJnZXQuZGVzdGluYXRpb25JZCxlbmRwb2ludDpjLmVuZHBvaW50LApldmVudElkOmEuTS5ldmVudElkLHByaW9yaXR5SWQ6YS5NLnByaW9yaXR5SWR9O2YuUj09PXZvaWQgMHx8Yy5mYSE9PTImJihjLmZhIT09MXx8ZS5sZW5ndGgpfHxrbi5yZWdpc3RlcihqYSxmLlIsVyk7dmFyIGZhPWZ1bmN0aW9uKGRhLG1hKXt4KCk7aWYocS5zdGF0dXMhPT12b2lkIDApcmV0dXJuIFAoMTkyKSwhMTtxLnN0YXR1cz1kYTtlLnB1c2gocSk7dmFyIFBhO2Q9PW51bGx8fChQYT1kLnVvKT09bnVsbHx8UGEuY2FsbChkLGEsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxxKSxtYSk7cmV0dXJuITB9LHNhPXtGbzpqYSxyZDpmdW5jdGlvbigpe2ZhKDIpJiZsKCl9LG9uRmFpbHVyZTpmdW5jdGlvbigpe2ZhKDMpJiZsKCl9LHBlOmZ1bmN0aW9uKGRhKXtmYShkYS5zdGF0dXM9PT0wPzE6ZGEub2s/MDozLGRhKSYmbigpfSxqZjpmdW5jdGlvbigpe2ZhKDEpJiZuKCl9fTtPdShjLGEsVyxTLEkpO2Yuc2VuZFJlcXVlc3Qoc2EsVyxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LAp7fSxJJiZ7Ym9keTpJfSxHJiZ7R2I6R30sTiYme2FmOk59KSl9fX0sdT0hMSx2LHg9ZnVuY3Rpb24oKXt2IT09dm9pZCAwJiYoQS5jbGVhclRpbWVvdXQodiksdj12b2lkIDApfTtNKDU3NCkmJih2PUEuc2V0VGltZW91dChmdW5jdGlvbigpe3Y9dm9pZCAwO3U9ITA7aWYocS5zdGF0dXM9PT12b2lkIDApe3Euc3RhdHVzPTQ7cS5zYj09PXZvaWQgMCYmKHEuc2I9IltmYWlsZWQgdG8gYnVpbGRdICIrcCk7ZS5wdXNoKHEpO3ZhciB6O2Q9PW51bGx8fCh6PWQudW8pPT1udWxsfHx6LmNhbGwoZCxhLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30scSksdm9pZCAwKTtsKCl9fSw1RTMpKTt2YXIgeT17SWM6cCxtZXRob2Q6Zix5djplLGlzUHJpbWFyeTpnLEN0Omh9O3RyeXtjLkgoYSx5LHQpfWNhdGNoKHope3goKSxQKDE4OCksbCgpfX0KZnVuY3Rpb24gT3UoYSxiLGMsZCxlKXtpZihhLmphKXt2YXIgZj1iLnRhcmdldC5kZXN0aW5hdGlvbklkLGc9YS5lbmRwb2ludDtpZihnPT09NDV8fGc9PT00Nnx8Zz09PTY5fHxnPT09NTh8fGc9PT01Nyl7dmFyIGg9L1s/Jl10aWRzPShbXiZdKykvLmV4ZWMoZCk7Zj1oP2RlY29kZVVSSUNvbXBvbmVudChoWzFdKS5zcGxpdCgifiIpOltmXX1NbCh7dGFyZ2V0SWQ6ZixyZXF1ZXN0Om5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30se3VybDpjLHBhcmFtZXRlckVuY29kaW5nOmEucGFyYW1ldGVyRW5jb2RpbmcsZW5kcG9pbnQ6YS5lbmRwb2ludH0sZT97cG9zdEJvZHk6ZX06e30pLHFiOntldmVudElkOmIuTS5ldmVudElkLHByaW9yaXR5SWQ6Yi5NLnByaW9yaXR5SWR9LEZqOntldmVudElkOlEoYixILkoudWYpLHByaW9yaXR5SWQ6UShiLEguSi52Zil9fSl9fQpmdW5jdGlvbiBOdShhKXtyZXR1cm4gYSYmYSE9PSI/Ij9hWzBdIT09Ij8iPyI/Ii5jb25jYXQoYSk6YToiIn07ZnVuY3Rpb24gUHUoYSxiLGMsZCxlKXt2YXIgZjtlPT1udWxsfHwoZj1lLnZ2KT09bnVsbHx8Zi5jYWxsKGUsYSxiKTtpZighYy5sZW5ndGgpe3ZhciBnO2U9PW51bGx8fChnPWUuVHMpPT1udWxsfHxnLmNhbGwoZSxhLGIsW10pO3JldHVybiBQcm9taXNlLnJlc29sdmUoW10pfXZhciBoPVtdLGw9e3RrOmIsbWs6YyxqazpkfTtoLnB1c2goTHUoYSxiLGMsZSwhMCxsKSk7Zm9yKHZhciBuPW0oZCkscD1uLm5leHQoKTshcC5kb25lO3A9bi5uZXh0KCkpaC5wdXNoKEx1KGEsYixwLnZhbHVlLGUsITEsbCkpO3JldHVybiBKdShoKS50aGVuKGZ1bmN0aW9uKHEpe2Zvcih2YXIgcj1bXSx0PW0ocSksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpci5wdXNoLmFwcGx5KHIsdyh1LnZhbHVlKSk7dmFyIHY7ZT09bnVsbHx8KHY9ZS5Ucyk9PW51bGx8fHYuY2FsbChlLGEsYixyKTtyZXR1cm4gcn0pfTtmdW5jdGlvbiBRdShhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkO2I9PW51bGx8fChkPWIud3YpPT1udWxsfHxkLmNhbGwoYixhLGMpO2Zvcih2YXIgZT1bXSxmPW0oYyksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpZS5wdXNoKFJ1KGEsZy52YWx1ZSkpO2Zvcih2YXIgaD1bXSxsPW0oZSksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7aC5wdXNoKFB1KGEscC50ayxwLm1rLHAuamssYikpfUp1KGgpLnRoZW4oZnVuY3Rpb24ocSl7Zm9yKHZhciByPVtdLHQ9bShxKSx1PXQubmV4dCgpOyF1LmRvbmU7dT10Lm5leHQoKSlyLnB1c2guYXBwbHkocix3KHUudmFsdWUpKTt2YXIgdjtiPT1udWxsfHwodj1iLlFzKT09bnVsbHx8di5jYWxsKGIsYSxjLHIpfSl9CmZ1bmN0aW9uIFJ1KGEsYil7dmFyIGM9ZnVuY3Rpb24oZil7cmV0dXJuIGYubWV0aG9kLmlzU3VwcG9ydGVkKCkmJmYuZW5kcG9pbnQuaXNTdXBwb3J0ZWQoYSkmJmYuZW5kcG9pbnQuSyhhKX0sZD0oYi5IKGEpfHxbXSkuZmlsdGVyKGMpLGU9W107ZC5sZW5ndGgmJihlPShiLksoYSl8fFtdKS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuIGYuZmlsdGVyKGMpfSkuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmLmxlbmd0aD4wfSkpO3JldHVybnt0azpiLG1rOmQsams6ZX19Owp2YXIgU3U9ZnVuY3Rpb24oYSxiKXtpZihNKDUxNykmJklmKDQ3KSYmYT09PTQ1KXJldHVybiBYaigpKyIvZy9kL2NjbS9jb2xsZWN0PyIrYi5zcGxpdCgiPyIpWzFdKyImZ2FwLjFwZmI9MSJ9LFd1PWZ1bmN0aW9uKCl7dmFyIGE9YWwoMzAsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGEubGVuZ3RoKXtmb3IodmFyIGI9e30sYz1tKGEpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlLGY9VHUoZS5rZSwiYXB2YyIpLGc9VHUoZS5rZSwidGZ0IiksaD1UdShlLmtlLCJ0ZmQiKSxsPVR1KGUua2UsInRpZCIpLG49Tm0oZS5lbmRwb2ludCxlLmtlKSxwPWJbbl09YltuXXx8e3hrOltdLFpoOltdfTtwLlpoLnB1c2goZSk7bD8ocC54ay5wdXNoKGwpLHAudWR8fChwLnVkPWwpKTpwLnhrLnB1c2goIiIpO2Y9PT0iMSImJihwLlFuPSEwKTtpZihnfHxoKXAuTm49ITB9YS5sZW5ndGg9MDtmb3IodmFyIHE9bShPYmplY3Qua2V5cyhiKSkscj1xLm5leHQoKSx0PXt9OyFyLmRvbmU7dD0Ke3lrOnZvaWQgMH0scj1xLm5leHQoKSl7dmFyIHU9ci52YWx1ZSx2PWJbdV07dC55az12LnhrO3ZhciB4PXQueWsuZmlsdGVyKGZ1bmN0aW9uKEQpe3JldHVybiBmdW5jdGlvbihJLEcpe3JldHVybiBELnlrLmluZGV4T2YoSSk9PT1HfX0odCkpLmZpbHRlcihmdW5jdGlvbihEKXtyZXR1cm4hIUR9KTtpZihNKDQyNykpe3ZhciB5PVV1KHYseCk7UXUoeSx2b2lkIDAsQXUpfWVsc2V7dmFyIHo9dSsiJmFwdmM9Iisodi5Rbj8iMSI6IjAiKTt4Lmxlbmd0aCYmKHorPSImdGlkcz0iK3guam9pbigifiIpKTt2LnVkJiYoeis9IiZ0aWQ9Iit2LnVkKTtpZih2Lk5uKXt6Kz0iJnRmdD0iK1N0cmluZyhOYigpKTt2YXIgQz1wZCgpO0MhPT12b2lkIDAmJih6Kz0iJnRmZD0iK1N0cmluZyhNYXRoLnJvdW5kKEMpKSl9VnUodi5aaFswXS5ldmVudCx6LHYuWmhbMF0uZW5kcG9pbnQseC5sZW5ndGg/eDpbIiJdKX19fX0sVHU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hW2JdO2lmKGMhPT12b2lkIDApcmV0dXJuIGRlbGV0ZSBhW2JdLApjfSxWdT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT17ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmMsZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxmPWZ1bmN0aW9uKGwsbil7dmFyIHA9YitYdShsKTtUbChwLGEsYyxkKTtyZXR1cm4gbihwKX07aWYobmQoKSl7dmFyIGc9ZnVuY3Rpb24oKXt9LGg9U3UoYyxiKTtoIT09dm9pZCAwJiYoZz1mdW5jdGlvbigpe1luKGUsaCtYdSg4KSx2b2lkIDAse1FnOiEwfSl9KTtmKDgsZnVuY3Rpb24obCl7WW4oZSxsLHZvaWQgMCx7UWc6ITB9LGZ1bmN0aW9uKCl7fSxmdW5jdGlvbigpe1pjKGIrWHUoMyksZnVuY3Rpb24oKXt9LGcpfSl9KX1lbHNlIGYoNSxmdW5jdGlvbihsKXtyZXR1cm4gV24oZSxsKX0pfHxaYyhiK1h1KDMpKX0sVXU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLlpoWzBdLGQ9eyJfJmFwdmMiOmEuUW4/IjEiOiIwIn07Yi5sZW5ndGg+MCYmKGRbIl8mdGlkcyJdPQpiLmpvaW4oIn4iKSk7aWYoYS5Obil7ZFsiXyZ0ZnQiXT1TdHJpbmcoTmIoKSk7dmFyIGU9cGQoKTtlIT09dm9pZCAwJiYoZFsiXyZ0ZmQiXT1TdHJpbmcoTWF0aC5yb3VuZChlKSkpfXJldHVybiBZdShjLmV2ZW50LGEudWR8fCIiLGQpfSxZdT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxhLnRhcmdldCx7ZGVzdGluYXRpb25JZDpifSksZT1adShhLHt0YXJnZXQ6ZH0pO2J8fFUoZSxGLkQuUWUpO2Zvcih2YXIgZj1tKE9iamVjdC5rZXlzKGMpKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtVKGUsaCxjW2hdKX1yZXR1cm4gZX0sWHU9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgODpjYXNlIDM6Y2FzZSA1OnJldHVybiImZm10PSIrYTtkZWZhdWx0OnJldHVybiIifX0sJHU9ZnVuY3Rpb24oYSxiKXthPVp1KGEpO1YoYSxILkouRGssWG8oZnApKTtUdCgpJiZVKGEsIl8mZ2NzIixVdCgpKTsKVShhLCJfJmdjZCIsWXQoYS5NKSk7dmFyIGM9WG8oZnApPzQ1OjQ2LGQ9ZnVuY3Rpb24oKXt2YXIgZj1iLnRpZDtpZihNKDQyNykpe3ZhciBnPVl1KGEsZixiKTtRdShnLHZvaWQgMCxBdSl9ZWxzZXt2YXIgaD1ObShjLGIpO1Z1KGEsaCxjLFtmXSl9fTtpZih5YihBLnF1ZXVlTWljcm90YXNrKSl7dmFyIGU9YWwoMzAsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGUubGVuZ3RoPT09MCl0cnl7QS5xdWV1ZU1pY3JvdGFzayhXdSl9Y2F0Y2goZil7R3UoVC5XLmZqKTtkKCk7cmV0dXJufWI9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxiKTtlLnB1c2goe2V2ZW50OmEsa2U6YixlbmRwb2ludDpjfSl9ZWxzZSBHdShULlcuZmopLGQoKX07dmFyIFg9e1Y6e01rOiJjYWxsX2NvbnZlcnNpb24iLHpkOiJjY21fY29udmVyc2lvbiIsUWs6ImNvbW1vbl9hdyIseGE6ImNvbnZlcnNpb24iLHdxOiJmbG9vZGxpZ2h0IixZZDoiZ2FfY29udmVyc2lvbiIsWmQ6ImdjcF9yZW1hcmtldGluZyIsS2E6InBhZ2VfdmlldyIsdWI6InJlbWFya2V0aW5nIixPYjoidXNlcl9kYXRhX2xlYWQiLEZiOiJ1c2VyX2RhdGFfd2ViIn19O2Z1bmN0aW9uIGJ2KGEsYil7YiYmR2IoYixmdW5jdGlvbihjLGQpe3R5cGVvZiBkIT09Im9iamVjdCImJmQhPT12b2lkIDAmJihhWyIxcC4iK2NdPVN0cmluZyhkKSl9KX07dmFyIG12PXtOZzoidmFsdWUiLHBiOiJjb252ZXJzaW9uQ291bnQiLE9nOjF9LG52PXtOZzoidGltZW91dHMiLHBiOiJ0aW1lb3V0cyIsT2c6MH0sb3Y9e05nOiJlb3BDb3VudCIscGI6ImVuZE9mUGFnZUNvdW50IixPZzowfSxwdj17Tmc6ImVycm9ycyIscGI6ImVycm9ycyIsT2c6MH0scXY9W212LG52LHB2LG92XTtmdW5jdGlvbiBydihhLGIpe2I9Yj09PXZvaWQgMD8xOmI7aWYoIXN2KGEpKXJldHVybnt9O3ZhciBjPXR2KHF2KSxkPWNbYS5wYl07aWYoZD09PXZvaWQgMHx8ZD09PS0xKXJldHVybiBjO3ZhciBlPXt9LGY9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLChlW2EucGJdPWQrYixlKSk7cmV0dXJuIHV2KGYpP2Y6Y30KZnVuY3Rpb24gdHYoYSl7dmFyIGI7YTp7dmFyIGM9bnIoImdjbF9jdHIiKTtpZihjLmVycm9yPT09MCYmYy52YWx1ZSYmdHlwZW9mIGMudmFsdWU9PT0ib2JqZWN0Iil7dmFyIGQ9Yy52YWx1ZTt0cnl7Yj0idmFsdWUiaW4gZCYmdHlwZW9mIGQudmFsdWU9PT0ib2JqZWN0Ij9kLnZhbHVlOnZvaWQgMDticmVhayBhfWNhdGNoKHApe319Yj12b2lkIDB9Zm9yKHZhciBlPWIsZj17fSxnPW0oYSksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPWgudmFsdWU7aWYoZSYmc3YobCkpe3ZhciBuPWVbbC5OZ107bj09PXZvaWQgMHx8TnVtYmVyLmlzTmFOKG4pP2ZbbC5wYl09LTE6ZltsLnBiXT1OdW1iZXIobil9ZWxzZSBmW2wucGJdPS0xfXJldHVybiBmfQpmdW5jdGlvbiB1dihhLGIpe2I9Ynx8e307Zm9yKHZhciBjPU5iKCksZD11cShiLGMsITApLGU9e30sZj1tKHF2KSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZSxsPWFbaC5wYl07bCE9PXZvaWQgMCYmbCE9PS0xJiYoZVtoLk5nXT1sKX1lLmNyZWF0aW9uVGltZU1zPWM7cmV0dXJuIGtyKCJnY2xfY3RyIix7dmFsdWU6ZSxleHBpcmVzOk51bWJlcihkLmV4cGlyZXMpfSk9PT0wPyEwOiExfWZ1bmN0aW9uIHN2KGEpe3JldHVybiBCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk/IWEuZnR8fFlmKGEuZnQpOiExfWZ1bmN0aW9uIHZ2KGEpe3JldHVybiBCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk/IWEuQXN8fFlmKGEuQXMpOiExfTtmdW5jdGlvbiB3digpe2lmKHh2KCkpe3ZhciBhPW5yKCJsYXN0X2NvbnZzIik7aWYoYS5lcnJvcj09PTAmJmEudmFsdWUmJnR5cGVvZiBhLnZhbHVlPT09Im9iamVjdCIpe3ZhciBiPWEudmFsdWU7aWYoYi52YWx1ZSYmQXJyYXkuaXNBcnJheShiLnZhbHVlKSl7dmFyIGM9Yi52YWx1ZTtpZighKGMubGVuZ3RoPjEpKXtmb3IodmFyIGQ9W10sZT1tKGMpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO2lmKHR5cGVvZiBnIT09Im9iamVjdCJ8fGc9PT1udWxsfHx0eXBlb2YgZy5yYW5kb20hPT0ibnVtYmVyInx8dHlwZW9mIGcubGFiZWwhPT0ic3RyaW5nInx8Zy5sYWJlbC5sZW5ndGg+MjAwKXJldHVybjtkLnB1c2goe3JhbmRvbTpnLnJhbmRvbSxsYWJlbDpnLmxhYmVsfSl9cmV0dXJuIGR9fX19fQpmdW5jdGlvbiB5dihhLGIpeyF4digpfHxhLmxlbmd0aD4xfHxhLmxlbmd0aD09PTEmJmFbMF0ubGFiZWwubGVuZ3RoPjIwMHx8KGI9Ynx8e30sa3IoImxhc3RfY29udnMiLHt2YWx1ZTphLGV4cGlyZXM6TnVtYmVyKHVxKGIpLmV4cGlyZXMpfSkpfWZ1bmN0aW9uIHh2KCl7cmV0dXJuIEJsKFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSYmWWYoMTEpfTtmdW5jdGlvbiB6dihhKXt2YXIgYj1NYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkqMjE0NzQ4MzY0Nyk7cmV0dXJuIGE/U3RyaW5nKGJebmcoYSkmMjE0NzQ4MzY0Nyk6U3RyaW5nKGIpfWZ1bmN0aW9uIEF2KGEpe3JldHVyblt6dihhKSxNYXRoLnJvdW5kKE5iKCkvMUUzKV0uam9pbigiLiIpfWZ1bmN0aW9uIEJ2KGEsYixjLGQsZSl7dmFyIGY9cnEoYiksZztyZXR1cm4oZz1ncShhLGYsc3EoYyksZCxlKSk9PW51bGw/dm9pZCAwOmcuQ3J9O3ZhciBDdj1bIjEiXSxEdj17fSxFdj17fTtmdW5jdGlvbiBGdihhKXtyZXR1cm4gRXZbR3YoYSldfWZ1bmN0aW9uIEh2KGEsYil7Yj1iPT09dm9pZCAwPyEwOmI7dmFyIGM9R3YoYS5wcmVmaXgpO2lmKER2W2NdKUl2KGEpLEp2KGEpO2Vsc2UgaWYoS3YoYyxhLnBhdGgsYS5kb21haW4pKXt2YXIgZD1GdihhLnByZWZpeCl8fHtpZDp2b2lkIDAsa2M6dm9pZCAwfTtiJiZMdihhLGQpO0l2KGEpO0p2KGEpfWVsc2V7dmFyIGU9VGooImF1aWRkYyIpO2lmKGUpc2IoIlRBR0dJTkciLDE3KSxEdltjXT1lO2Vsc2UgaWYoYil7dmFyIGY9R3YoYS5wcmVmaXgpLGc9QXYoKTtNdihmLGcsYSk7S3YoYyxhLnBhdGgsYS5kb21haW4pO0l2KGEsITApO0p2KGEsITApfX19CmZ1bmN0aW9uIEl2KGEsYil7KGI9PT12b2lkIDA/MDpiKSYmc3YobXYpJiZvcigiZ2NsX2N0ciIpO2lmKHZ2KG12KSYmdHYoW212XSlbbXYucGJdPT09LTEpe2Zvcih2YXIgYz17fSxkPShjW212LnBiXT0wLGMpLGU9bShxdiksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7ZyE9PW12JiZ2dihnKSYmKGRbZy5wYl09MCl9dXYoZCxhKX19ZnVuY3Rpb24gSnYoYSxiKXsoYj09PXZvaWQgMD8wOmIpJiZ4digpJiZvcigibGFzdF9jb252cyIpOyFCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSl8fCFZZigxMil8fHd2KCl8fHl2KFtdLGEpfQpmdW5jdGlvbiBMdihhLGIpe3ZhciBjPUd2KGEucHJlZml4KSxkPUR2W2NdO2lmKGQpe3ZhciBlPWQuc3BsaXQoIi4iKTtpZihlLmxlbmd0aD09PTIpe3ZhciBmPU51bWJlcihlWzFdKXx8MDtpZihmKXt2YXIgZz1kO1lmKDE5KSYmYi5maT9nPWQrIi4iKyhiLnNlc3Npb25JZHx8Ii0uLSIpKyIuIisoYi5rYz9iLmtjOk1hdGguZmxvb3IoTmIoKS8xRTMpKSsiLiIrYi5maSsiLiIrKGIuTGM/Yi5MYzpNYXRoLmZsb29yKE5iKCkvMUUzKSk6Yi5zZXNzaW9uSWQmJihnPWQrIi4iK2Iuc2Vzc2lvbklkKyIuIisoYi5rYz9iLmtjOk1hdGguZmxvb3IoTmIoKS8xRTMpKSk7TXYoYyxnLGEsZioxRTMpfX19fWZ1bmN0aW9uIE12KGEsYixjLGQpe3ZhciBlO2U9WyIxIix0cShjLmRvbWFpbixjLnBhdGgpLGJdLmpvaW4oIi4iKTt2YXIgZj11cShjLGQpO2YuTWM9TnYoKTtvcShhLGUsZil9CmZ1bmN0aW9uIEt2KGEsYixjKXt2YXIgZD1CdihhLGIsYyxDdixOdigpKTtpZighZClyZXR1cm4hMTtPdihhLGQpO3JldHVybiEwfWZ1bmN0aW9uIE92KGEsYil7dmFyIGM9Yi5zcGxpdCgiLiIpO2lmKGMubGVuZ3RoPT09MylFdlthXT17c2Vzc2lvbklkOmNbMF0rIi4iK2NbMV0sa2M6TnVtYmVyKGNbMl0pfHwwLExjOjB9O2Vsc2UgaWYoYy5sZW5ndGg+PTImJihEdlthXT1jWzBdKyIuIitjWzFdLGMuc2hpZnQoKSxjLnNoaWZ0KCksYy5sZW5ndGg+PTMpKXt2YXIgZD17c2Vzc2lvbklkOmNbMF09PT0iLSI/dm9pZCAwOmNbMF0rIi4iK2NbMV0sa2M6TnVtYmVyKGNbMl0pfHwwLExjOjB9O2lmKFlmKDE5KSYmYy5sZW5ndGg+PTYpe3ZhciBlPWNbM10rIi4iK2NbNF0sZj1OdW1iZXIoY1s1XSl8fDA7ZSYmZiE9PTAmJihkLmZpPWUsZC5MYz1mKX1FdlthXT1kfX1mdW5jdGlvbiBHdihhKXtyZXR1cm4oYXx8Il9nY2wiKSsiX2F1In0KZnVuY3Rpb24gUHYoYSl7ZnVuY3Rpb24gYigpe0JsKGMpJiZhKCl9dmFyIGM9TnYoKTtIbChmdW5jdGlvbigpe2IoKTtCbChjKXx8SWwoYixjKX0sYyl9ZnVuY3Rpb24gUXYoYSl7dmFyIGI9VXEoITApLGM9R3YoYS5wcmVmaXgpO1B2KGZ1bmN0aW9uKCl7dmFyIGQ9YltjXTtpZihkKXtPdihjLGQpO3ZhciBlPU51bWJlcihEdltjXS5zcGxpdCgiLiIpWzFdKSoxRTM7aWYoZSl7c2IoIlRBR0dJTkciLDE2KTt2YXIgZj11cShhLGUpO2YuTWM9TnYoKTt2YXIgZz1bIjEiLHRxKGEuZG9tYWluLGEucGF0aCksZF0uam9pbigiLiIpO29xKGMsZyxmKX19fSl9ZnVuY3Rpb24gUnYoYSxiLGMsZCxlKXtlPWV8fHt9O3ZhciBmPWZ1bmN0aW9uKCl7dmFyIGc9e30saD1CdihhLGUucGF0aCxlLmRvbWFpbixDdixOdigpKTtoJiYoZ1thXT1oKTtyZXR1cm4gZ307UHYoZnVuY3Rpb24oKXthcihmLGIsYyxkKX0pfQpmdW5jdGlvbiBOdigpe3JldHVyblsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdfTt2YXIgVnY9ImVtYWlsIGVtYWlsX2FkZHJlc3Mgc2hhMjU2X2VtYWlsX2FkZHJlc3MgcGhvbmVfbnVtYmVyIHNoYTI1Nl9waG9uZV9udW1iZXIgZmlyc3RfbmFtZSBsYXN0X25hbWUiLnNwbGl0KCIgIiksV3Y9ImZpcnN0X25hbWUgc2hhMjU2X2ZpcnN0X25hbWUgbGFzdF9uYW1lIHNoYTI1Nl9sYXN0X25hbWUgc3RyZWV0IHNoYTI1Nl9zdHJlZXQgY2l0eSByZWdpb24gY291bnRyeSBwb3N0YWxfY29kZSIuc3BsaXQoIiAiKTtmdW5jdGlvbiBYdihhLGIpe2lmKCFiLl90YWdfbWV0YWRhdGEpe2Zvcih2YXIgYz17fSxkPTAsZT0wO2U8YS5sZW5ndGg7ZSsrKWQrPVl2KGFbZV0sYixjKT8xOjA7ZD4wJiYoYi5fdGFnX21ldGFkYXRhPWMpfX0KZnVuY3Rpb24gWXYoYSxiLGMpe3ZhciBkPWJbYV07aWYoZD09PXZvaWQgMHx8ZD09PW51bGwpcmV0dXJuITE7Y1thXT1BcnJheS5pc0FycmF5KGQpP2QubWFwKGZ1bmN0aW9uKCl7cmV0dXJue21vZGU6ImMifX0pOnttb2RlOiJjIn07cmV0dXJuITB9ZnVuY3Rpb24gWnYoYSl7aWYoTSg1MjMpJiZhKXtYdihWdixhKTtmb3IodmFyIGI9QmIoYS5hZGRyZXNzKSxjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWJbY107ZCYmWHYoV3YsZCl9dmFyIGU9YS5ob21lX2FkZHJlc3M7ZSYmWHYoV3YsZSl9fQpmdW5jdGlvbiAkdihhLGIsYyl7ZnVuY3Rpb24gZChmLGcpe2c9U3RyaW5nKGcpLnN1YnN0cmluZygwLDEwMCk7ZS5wdXNoKCIiK2YrZW5jb2RlVVJJQ29tcG9uZW50KGcpKX1pZighYylyZXR1cm4iIjt2YXIgZT1bXTtkKCJpIixTdHJpbmcoYSkpO2QoImYiLGIpO2MubW9kZSYmZCgibSIsYy5tb2RlKTtjLmlzUHJlSGFzaGVkJiZkKCJwIiwiMSIpO2MucmF3TGVuZ3RoJiZkKCJyIixTdHJpbmcoYy5yYXdMZW5ndGgpKTtjLm5vcm1hbGl6ZWRMZW5ndGgmJmQoIm4iLFN0cmluZyhjLm5vcm1hbGl6ZWRMZW5ndGgpKTtjLmxvY2F0aW9uJiZkKCJsIixjLmxvY2F0aW9uKTtjLnNlbGVjdG9yJiZkKCJzIixjLnNlbGVjdG9yKTtyZXR1cm4gZS5qb2luKCIuIil9O3ZhciBhdz12b2lkIDA7ZnVuY3Rpb24gYncoKXtpZighYXcpe3ZhciBhPW9tKGptLmJhLm9wLG5ldyBNYXApO2F3PW5ldyBvZyhhKX1yZXR1cm4gYXd9Owp2YXIgY3c9ZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJuIGE7Zm9yKHZhciBiPXt9LGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7ZSE9PSJhZGRyZXNzIiYmZSE9PSJwaG9uZV9udW1iZXIiJiZlIT09InNoYTI1Nl9waG9uZV9udW1iZXIiJiYoYltlXT1hW2VdKX1yZXR1cm4gYn0sZnc9ZnVuY3Rpb24oYSl7dmFyIGI9TSg1MjMpLGM9WyJ0di4xIl0sZD1bInR2ZC4xIl0sZT1kdyhhKTtpZihlKXJldHVybiBjLnB1c2goZSkse2hhc1VwZDohMSxPbzpjLmpvaW4oIn4iKSxZbjpjLmpvaW4oIn4iKSxlbmNyeXB0aW9uS2V5U3RyaW5nOnZvaWQgMCxpaTp7fSxtZXRhZGF0YVBhcmFtOmI/ZC5qb2luKCJ+Iik6dm9pZCAwfTt2YXIgZj17fSxnPTA7dmFyIGg9MCxsPWV3KGEsZnVuY3Rpb24ocSxyLHQpe2grKzt2YXIgdT1xLnZhbHVlLHY7CmlmKHQpe3ZhciB4PXIrIl9fIitnKys7dj0iJHt1c2VyRGF0YS4iK3grInxzaGEyNTZ9IjtmW3hdPXV9ZWxzZSB2PWVuY29kZVVSSUNvbXBvbmVudChlbmNvZGVVUklDb21wb25lbnQodSkpO3EuaW5kZXghPT12b2lkIDAmJihyKz1xLmluZGV4KTtjLnB1c2gocisiLiIrdik7aWYoYil7dmFyIHk9JHYoaCxyLHEubWV0YWRhdGEpO3kmJmQucHVzaCh5KX19KS5oYXNVcGQsbj1kLmpvaW4oIn4iKTt2YXIgcD1jLmpvaW4oIn4iKTtyZXR1cm57aGFzVXBkOmwsT286cCxpaTp7dXNlckRhdGE6Zn0sWW46InR2LjF+JHsiKyhwKyJ8IisoTSg1NTUpPyJlbmNyeXB0X3dpdGhfbWVtbyI6ImVuY3J5cHQiKSsifSIpLGVuY3J5cHRpb25LZXlTdHJpbmc6RSg0MyksbWV0YWRhdGFQYXJhbTpiP246dm9pZCAwfX0saHc9ZnVuY3Rpb24oYSl7aWYoIShhIT1udWxsJiZPYmplY3Qua2V5cyhhKS5sZW5ndGg+MCkpcmV0dXJuITE7CnZhciBiPWd3KGEpO3JldHVybiBldyhiLGZ1bmN0aW9uKCl7fSkuaGFzVXBkfSxldz1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD9mdW5jdGlvbigpe306Yjtmb3IodmFyIGM9ITEsZD0hMSxlPW0oYSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7aWYoZy52YWx1ZSl7dmFyIGg9aXdbZy5uYW1lXTtpZihoKXt2YXIgbD1qdyhnKTtsJiYoYz0hMCk7ZD0hMDtiKGcsaCxsKX19fXJldHVybntoYXNVcGQ6ZCxoYXNVcGRUb0hhc2g6Y319LGp3PWZ1bmN0aW9uKGEpe3ZhciBiPWt3KGEubmFtZSksYz0vXmVcZCskLy50ZXN0KGEudmFsdWUpLGQ7aWYoZD1iJiYhYyl7dmFyIGU9YS52YWx1ZTtkPSEobHcudGVzdChlKXx8eWkudGVzdChlKSl9cmV0dXJuIGR9LGt3PWZ1bmN0aW9uKGEpe3JldHVybiBtdy5pbmRleE9mKGEpIT09LTF9LHN3PWZ1bmN0aW9uKGEsYixjKXtpZih5YihBLlByb21pc2UpKXRyeXt2YXIgZD0hMTt2YXIgZT1ndyhhLGQpLGY9bncoZSkudGhlbihmdW5jdGlvbihoKXt2YXIgbD1oLnliLG49bC5maWx0ZXIoZnVuY3Rpb24ocSl7cmV0dXJuIVNiKHEubmFtZSwicmF3Iil9KSxwPW93KHt5YjpufSk7cmV0dXJue3Jlc3VsdDp7cGFyYW06cC5wYXJhbSxoYXNVcGRUb0hhc2g6cC5oYXNVcGRUb0hhc2gsaGFzVXBkOnAuaGFzVXBkLGhhZEVycm9yOnAuaGFkRXJyb3IsbWV0YWRhdGFQYXJhbTpwLm1ldGFkYXRhUGFyYW19LHliOmx9fSk7cmV0dXJuIGYudGhlbihmdW5jdGlvbihoKXtyZXR1cm4gaC5yZXN1bHR9KX1jYXRjaChoKXt9fSxxdz1mdW5jdGlvbihhKXt2YXIgYj12b2lkIDA7cmV0dXJuIGJ9LG93PWZ1bmN0aW9uKGEpe3ZhciBiPU0oNTIzKSxjPWEueWIsZD1bInR2LjEiXSxlPVsidHZkLjEiXSxmPWR3KGMpO2lmKGYpcmV0dXJuIGQucHVzaChmKSx7cGFyYW06ZC5qb2luKCJ+IiksaGFzVXBkVG9IYXNoOiExLGhhc1VwZDohMSxoYWRFcnJvcjohMCxtZXRhZGF0YVBhcmFtOmI/ZS5qb2luKCJ+Iik6dm9pZCAwfTt2YXIgZz1jLmZpbHRlcihmdW5jdGlvbihxKXtyZXR1cm4hancocSl9KSxoPTAsbD1ldyhnLGZ1bmN0aW9uKHEscil7aCsrO3ZhciB0PXEudmFsdWUsdT1xLmluZGV4O3UhPT12b2lkIDAmJihyKz11KTtkLnB1c2gocisiLiIrdCk7aWYoYil7dmFyIHY9JHYoaCxyLHEubWV0YWRhdGEpO3YmJmUucHVzaCh2KX19KSxuPWwuaGFzVXBkVG9IYXNoLHA9bC5oYXNVcGQ7cmV0dXJue3BhcmFtOmVuY29kZVVSSUNvbXBvbmVudChkLmpvaW4oIn4iKSksCmhhc1VwZFRvSGFzaDpuLGhhc1VwZDpwLGhhZEVycm9yOiExLG1ldGFkYXRhUGFyYW06Yj9lLmpvaW4oIn4iKTp2b2lkIDB9fSxkdz1mdW5jdGlvbihhKXtpZihhLmxlbmd0aD09PTEmJmFbMF0ubmFtZT09PSJlcnJvcl9jb2RlIilyZXR1cm4gaXcuZXJyb3JfY29kZSsiLiIrYVswXS52YWx1ZX0scHc9ZnVuY3Rpb24oYSl7aWYoYS5sZW5ndGg9PT0xJiZhWzBdLm5hbWU9PT0iZXJyb3JfY29kZSIpcmV0dXJuITE7Zm9yKHZhciBiPW0oYSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpe3ZhciBkPWMudmFsdWU7aWYoaXdbZC5uYW1lXSYmZC52YWx1ZSlyZXR1cm4hMH1yZXR1cm4hMX0sZ3c9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1bXTtpZihBLmxvY2F0aW9uLnByb3RvY29sIT09Imh0dHBzOiIpcmV0dXJuIGMucHVzaCh7bmFtZToiZXJyb3JfY29kZSIsdmFsdWU6ImUzIixpbmRleDp2b2lkIDB9KSxjO3ZhciBkPWMucHVzaCxlPWQuYXBwbHksZj1bXSwKZz1mLmNvbmNhdCxoLGw9YS5fdGFnX21ldGFkYXRhfHx7fTtoPVtdLmNvbmNhdCh3KHR3KHtuYW1lOiJlbWFpbCIscmF3OmEuZW1haWwsU2E6YS5zaGEyNTZfZW1haWxfYWRkcmVzcyxhYjpsLmVtYWlsLG1kOmwuc2hhMjU2X2VtYWlsX2FkZHJlc3N9LHV3KSksdyh0dyh7bmFtZToicGhvbmVfbnVtYmVyIixyYXc6YS5waG9uZV9udW1iZXIsU2E6YS5zaGEyNTZfcGhvbmVfbnVtYmVyLGFiOmwucGhvbmVfbnVtYmVyLG1kOmwuc2hhMjU2X3Bob25lX251bWJlcn0sdncpKSk7dmFyIG49dyhoKSxwLHE9YS5fdGFnX21ldGFkYXRhfHx7fSxyPWEuaG9tZV9hZGRyZXNzfHx7fSx0PXIuX3RhZ19tZXRhZGF0YXx8e307cD1bXS5jb25jYXQodyh0dyh7bmFtZToiZmlyc3RfbmFtZSIscmF3OmEuZmlyc3RfbmFtZSxTYTphLnNoYTI1Nl9maXJzdF9uYW1lLGFiOnEuZmlyc3RfbmFtZSxtZDpxLnNoYTI1Nl9maXJzdF9uYW1lfSx3dyh4dykpKSx3KHR3KHtuYW1lOiJsYXN0X25hbWUiLHJhdzphLmxhc3RfbmFtZSwKU2E6YS5zaGEyNTZfbGFzdF9uYW1lLGFiOnEubGFzdF9uYW1lLG1kOnEuc2hhMjU2X2xhc3RfbmFtZX0sd3coeHcpKSksdyh0dyh7bmFtZToic3RyZWV0IixyYXc6ci5zdHJlZXQsU2E6ci5zaGEyNTZfc3RyZWV0LGFiOnQuc3RyZWV0LG1kOnQuc2hhMjU2X3N0cmVldH0sd3coeXcpKSksdyh0dyh7bmFtZToiY2l0eSIscmF3OnIuY2l0eSxhYjp0LmNpdHl9LHd3KHl3KSkpLHcodHcoe25hbWU6InBvc3RhbF9jb2RlIixyYXc6ci5wb3N0YWxfY29kZSxhYjp0LnBvc3RhbF9jb2RlfSx3dyh6dykpKSx3KHR3KHtuYW1lOiJyZWdpb24iLHJhdzpyLnJlZ2lvbixhYjp0LnJlZ2lvbn0sd3coeXcpKSksdyh0dyh7bmFtZToiY291bnRyeSIscmF3OnIuY291bnRyeSxhYjp0LmNvdW50cnl9LHd3KHp3KSkpKTtmb3IodmFyIHU9dyhwKSx2PVtdLHg9QmIoYS5hZGRyZXNzfHx7fSkseT0wO3k8eC5sZW5ndGg7eSsrKXtmb3IodmFyIHo9eFt5XSxDPXouX3RhZ19tZXRhZGF0YXx8e30sRD1bXS5jb25jYXQodyh0dyh7bmFtZToiZmlyc3RfbmFtZSIsCnJhdzp6LmZpcnN0X25hbWUsU2E6ei5zaGEyNTZfZmlyc3RfbmFtZSxhYjpDLmZpcnN0X25hbWUsbWQ6Qy5zaGEyNTZfZmlyc3RfbmFtZX0seHcpKSx3KHR3KHtuYW1lOiJsYXN0X25hbWUiLHJhdzp6Lmxhc3RfbmFtZSxTYTp6LnNoYTI1Nl9sYXN0X25hbWUsYWI6Qy5sYXN0X25hbWUsbWQ6Qy5zaGEyNTZfbGFzdF9uYW1lfSx4dykpLHcodHcoe25hbWU6InN0cmVldCIscmF3Onouc3RyZWV0LFNhOnouc2hhMjU2X3N0cmVldCxhYjpDLnN0cmVldCxtZDpDLnNoYTI1Nl9zdHJlZXR9LHl3KSksdyh0dyh7bmFtZToiY2l0eSIscmF3OnouY2l0eSxhYjpDLmNpdHl9LHl3KSksdyh0dyh7bmFtZToicG9zdGFsX2NvZGUiLHJhdzp6LnBvc3RhbF9jb2RlLGFiOkMucG9zdGFsX2NvZGV9LHp3KSksdyh0dyh7bmFtZToicmVnaW9uIixyYXc6ei5yZWdpb24sYWI6Qy5yZWdpb259LHl3KSksdyh0dyh7bmFtZToiY291bnRyeSIscmF3OnouY291bnRyeSxhYjpDLmNvdW50cnl9LHp3KSkpLEk9MDtJPApELmxlbmd0aDtJKyspRFtJXS5pbmRleD15O3YucHVzaC5hcHBseSh2LHcoRCkpfWUuY2FsbChkLGMsZy5jYWxsKGYsbix1LHcodikpKTtpZihiJiZCcCgpKXt2YXIgRz1jLnB1c2gsTj1HLmFwcGx5LFM9W107Uy5wdXNoLmFwcGx5KFMsW10uY29uY2F0KHcoQXcoe25hbWU6InJhd19lbWFpbCIscmF3OmEuZW1haWwsU2E6YS5zaGEyNTZfZW1haWxfYWRkcmVzc30pKSx3KEF3KHtuYW1lOiJyYXdfcGhvbmVfbnVtYmVyIixyYXc6YS5waG9uZV9udW1iZXIsU2E6YS5zaGEyNTZfcGhvbmVfbnVtYmVyfSkpKSk7Zm9yKHZhciBXPUJiKGEuYWRkcmVzc3x8e30pLGVhPTA7ZWE8Vy5sZW5ndGg7ZWErKyl7dmFyIGphPVdbZWFdO1MucHVzaC5hcHBseShTLFtdLmNvbmNhdCh3KEF3KHtuYW1lOiJyYXdfZmlyc3RfbmFtZSIscmF3OmphLmZpcnN0X25hbWUsU2E6amEuc2hhMjU2X2ZpcnN0X25hbWV9LGVhKSksdyhBdyh7bmFtZToicmF3X2xhc3RfbmFtZSIscmF3OmphLmxhc3RfbmFtZSxTYTpqYS5zaGEyNTZfbGFzdF9uYW1lfSwKZWEpKSx3KEF3KHtuYW1lOiJyYXdfc3RyZWV0IixyYXc6amEuc3RyZWV0LFNhOmphLnNoYTI1Nl9zdHJlZXR9LGVhKSkpKX1pZihhLmZpcnN0X25hbWV8fGEuaG9tZV9hZGRyZXNzKXtTLnB1c2guYXBwbHkoUyxbXS5jb25jYXQodyhBdyh7bmFtZToicmF3X2ZpcnN0X25hbWUiLHJhdzphLmZpcnN0X25hbWUsU2E6YS5zaGEyNTZfZmlyc3RfbmFtZX0pKSx3KEF3KHtuYW1lOiJyYXdfbGFzdF9uYW1lIixyYXc6YS5sYXN0X25hbWUsU2E6YS5zaGEyNTZfbGFzdF9uYW1lfSkpKSk7dmFyIGZhPWEuaG9tZV9hZGRyZXNzfHx7fTtTLnB1c2guYXBwbHkoUyx3KEF3KHtuYW1lOiJyYXdfc3RyZWV0IixyYXc6ZmEuc3RyZWV0LFNhOmZhLnNoYTI1Nl9zdHJlZXR9KSkpfU4uY2FsbChHLGMsdyhTKSl9cmV0dXJuIGN9LHd3PWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihiKXtQKDY0KTtyZXR1cm4gYShiKX19LEF3PWZ1bmN0aW9uKGEsYil7dmFyIGM9W107aWYoYS5TYSlyZXR1cm4gYztmb3IodmFyIGQ9CkJiKGEucmF3KSxlPTA7ZTxkLmxlbmd0aDsrK2Upe3ZhciBmPUJ3KGRbZV0pO2lmKGYmJiF5aS50ZXN0KGYpKWlmKC9eZVxkKyQvLnRlc3QoZikpYy5wdXNoKHtuYW1lOmEubmFtZSx2YWx1ZTpmLGluZGV4OmJ9KTtlbHNle3ZhciBnPWMsaD1nLnB1c2gsbD1hLm5hbWUsbjt2YXIgcD1BO3RyeXtuPUJpKEFycmF5LmZyb20oWmIoZikpLHApfWNhdGNoKHEpe249ImUwIn1oLmNhbGwoZyx7bmFtZTpsLHZhbHVlOm4saW5kZXg6Yn0pfX1yZXR1cm4gY30sdHc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXSxkPU0oNTIzKSxlPWEucmF3LGY9ZD9hLmFiOnZvaWQgMDtDdyhlLCExKTthLlNhJiYoZSYmUCg5MCksZT1hLlNhLGY9ZD9hLm1kOnZvaWQgMCxDdyhlLCEwKSk7Zm9yKHZhciBnPUJiKGUpLGg9QmIoZiksbD0wO2w8Zy5sZW5ndGg7KytsKXt2YXIgbjt2YXIgcD1hLm5hbWUscT1iLHI9aFtsXSx0PUJ3KGdbbF0pO2lmKHQhPT0iIilpZih5aS50ZXN0KHQpKXtyJiYoci5pc1ByZUhhc2hlZD0hMCk7CnZhciB1PXtuYW1lOnAsdmFsdWU6dCxpbmRleDp2b2lkIDB9O3ImJih1Lm1ldGFkYXRhPXIpO249dX1lbHNle3ZhciB2PXEodCkseD17bmFtZTpwLHZhbHVlOnYsaW5kZXg6dm9pZCAwfTtyJiYoeC5tZXRhZGF0YT1yLHYmJihyLnJhd0xlbmd0aD1TdHJpbmcodCkubGVuZ3RoLHIubm9ybWFsaXplZExlbmd0aD12Lmxlbmd0aCkpO249eH1lbHNlIG49dm9pZCAwO3ZhciB5PW47eSYmYy5wdXNoKHkpfXJldHVybiBjfSxDdz1mdW5jdGlvbihhLGIpe2lmKHpiKGEpfHxBcnJheS5pc0FycmF5KGEpKWZvcih2YXIgYz1CYihhKSxkPTA7ZDxjLmxlbmd0aDsrK2Qpe3ZhciBlPUJ3KGNbZF0pLGY9eWkudGVzdChlKTtiJiYhZiYmUCg4OSk7IWImJmYmJlAoODgpfX0sRHc9ZnVuY3Rpb24oYSl7dmFyIGI9YT9ndyhhKTpbXTtyZXR1cm4gb3coe3liOmJ9KX0sRXc9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJmEhPW51bGwmJk9iamVjdC5rZXlzKGEpLmxlbmd0aD4wJiZ5YihBLlByb21pc2UpP2d3KGEpLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGIudmFsdWUmJgprdyhiLm5hbWUpJiYheWkudGVzdChiLnZhbHVlKX0pOiExfSxCdz1mdW5jdGlvbihhKXtyZXR1cm4gYT09bnVsbD8iIjp6YihhKT9MYihTdHJpbmcoYSkpOiJlMCJ9LHp3PWZ1bmN0aW9uKGEpe3JldHVybiBhLnJlcGxhY2UoRncsIiIpfSx4dz1mdW5jdGlvbihhKXtyZXR1cm4geXcoYS5yZXBsYWNlKC9ccy9nLCIiKSl9LHl3PWZ1bmN0aW9uKGEpe3JldHVybiBMYihhLnJlcGxhY2UoR3csIiIpLnRvTG93ZXJDYXNlKCkpfSx2dz1mdW5jdGlvbihhKXthPWEucmVwbGFjZSgvW1xzLSgpLy5dL2csIiIpO2EuY2hhckF0KDApIT09IisiJiYoYT0iKyIrYSk7cmV0dXJuKE0oNTk3KT9IdzpJdykudGVzdChhKT9hOiJlMCJ9LHV3PWZ1bmN0aW9uKGEpe3ZhciBiPWEudG9Mb3dlckNhc2UoKS5zcGxpdCgiQCIpO2lmKGIubGVuZ3RoPT09Mil7dmFyIGM9YlswXTsvXihnbWFpbHxnb29nbGVtYWlsKVwuLy50ZXN0KGJbMV0pJiYoYz1jLnJlcGxhY2UoL1wuL2csIiIpKTtjPWMrIkAiK2JbMV07aWYoSncudGVzdChjKSlyZXR1cm4gY31yZXR1cm4iZTAifSwKS3c9ZnVuY3Rpb24oYSl7dHJ5e3JldHVybiBhLmZvckVhY2goZnVuY3Rpb24oYil7Yi52YWx1ZSYma3coYi5uYW1lKSYmKGIudmFsdWU9RGkoYi52YWx1ZSkpfSkse3liOmF9fWNhdGNoKGIpe3JldHVybnt5YjpbXX19fSxudz1mdW5jdGlvbihhKXtyZXR1cm4gYS5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBiLnZhbHVlJiZrdyhiLm5hbWUpfSk/eWIoQS5Qcm9taXNlKT9Qcm9taXNlLmFsbChhLm1hcChmdW5jdGlvbihiKXtyZXR1cm4gYi52YWx1ZSYma3coYi5uYW1lKT9BaShiLnZhbHVlKS50aGVuKGZ1bmN0aW9uKGMpe2IudmFsdWU9Y30pOlByb21pc2UucmVzb2x2ZSgpfSkpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm57eWI6YX19KS5jYXRjaChmdW5jdGlvbigpe3JldHVybnt5YjpbXX19KTp7dGhlbjpmdW5jdGlvbihiKXtiKHt5YjpbXX0pfX06UHJvbWlzZS5yZXNvbHZlKHt5YjphfSl9LEd3PS9bMC05YH4hQCMkJV4mKigpX1wtKz06Ozw+LC4/fC9cXFtcXV0vZyxKdz0vXlxTK0BcUytcLlxTKyQvLApJdz0vXlwrXGR7MTAsMTV9JC8sSHc9L15cK1xkezcsMTV9JC8sRnc9L1sufl0vZyxsdz0vXlswLTlBLVphLXpfLV17NDN9JC8sTHc9WyJyZW0iLCJycG4iLCJyZm4iLCJybG4iLCJyc2EiXSxNdz17fSxpdz0oTXcuZW1haWw9ImVtIixNdy5waG9uZV9udW1iZXI9InBuIixNdy5maXJzdF9uYW1lPSJmbiIsTXcubGFzdF9uYW1lPSJsbiIsTXcuc3RyZWV0PSJzYSIsTXcuY2l0eT0iY3QiLE13LnJlZ2lvbj0icmciLE13LmNvdW50cnk9ImNvIixNdy5wb3N0YWxfY29kZT0icGMiLE13LmVycm9yX2NvZGU9ImVjIixNdy5yYXdfZW1haWw9InJlbSIsTXcucmF3X3Bob25lX251bWJlcj0icnBuIixNdy5yYXdfZmlyc3RfbmFtZT0icmZuIixNdy5yYXdfbGFzdF9uYW1lPSJybG4iLE13LnJhd19zdHJlZXQ9InJzYSIsTXcpO3ZhciBtdz1PYmplY3QuZnJlZXplKFsiZW1haWwiLAoicGhvbmVfbnVtYmVyIiwiZmlyc3RfbmFtZSIsImxhc3RfbmFtZSIsInN0cmVldCJdKTt2YXIgbXg9T2JqZWN0LmZyZWV6ZSh7YXR0cmlidXRpb25zcmM6IiJ9KSxueD1PYmplY3QuZnJlZXplKHtldmVudFNvdXJjZUVsaWdpYmxlOiExLHRyaWdnZXJFbGlnaWJsZTohMH0pO2Z1bmN0aW9uIG94KCl7dmFyIGE9WE1MSHR0cFJlcXVlc3QucHJvdG90eXBlO3JldHVybiBhJiZ5YihhLnNldEF0dHJpYnV0aW9uUmVwb3J0aW5nKX07dmFyIHB4PU9iamVjdC5mcmVlemUoe2NhY2hlOiJuby1zdG9yZSIsY3JlZGVudGlhbHM6ImluY2x1ZGUiLG1ldGhvZDoiR0VUIixrZWVwYWxpdmU6ITAscmVkaXJlY3Q6ImZvbGxvdyJ9KTsKZnVuY3Rpb24gcXgoYSxiLGMsZCxlLGYpe2lmKCF5YihBLmZldGNoKSlyZXR1cm4gZj09bnVsbHx8Zih2b2lkIDAsdm9pZCAwKSwhMTt2YXIgZz1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHB4KTtiJiYoZy5ib2R5PWIsZy5tZXRob2Q9IlBPU1QiKTtuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGcsZCk7QS5mZXRjaChhLGcpLnRoZW4oZnVuY3Rpb24oaCl7aWYoaC5vayl7aWYoaC5ib2R5KXt2YXIgbD1oLmJvZHkuZ2V0UmVhZGVyKCksbj1uZXcgVGV4dERlY29kZXI7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHApe2Z1bmN0aW9uIHEoKXtsLnJlYWQoKS50aGVuKGZ1bmN0aW9uKHIpe3ZhciB0O3Q9ci5kb25lO3ZhciB1PW4uZGVjb2RlKHIudmFsdWUse3N0cmVhbTohdH0pO3U9Yy5SK3U7Zm9yKHZhciB2PXUuaW5kZXhPZigiXG5cbiIpO3YhPT0tMTspe3ZhciB4PVpnLHk7YTp7dmFyIHo9bSh1LnN1YnN0cmluZygwLHYpLnNwbGl0KCJcbiIpKSxDPQp6Lm5leHQoKS52YWx1ZSxEPXoubmV4dCgpLnZhbHVlO2lmKFNiKEMsImV2ZW50OiBtZXNzYWdlIikmJlNiKEQsImRhdGE6ICIpKXt2YXIgST1ELnN1YnN0cmluZyg2KTt0cnl7eT1KU09OLnBhcnNlKEkpO2JyZWFrIGF9Y2F0Y2goRyl7fX15PXZvaWQgMH14KGMseSk7dT11LnN1YnN0cmluZyh2KzIpO3Y9dS5pbmRleE9mKCJcblxuIil9Yy5SPXU7dD8oZT09bnVsbHx8ZShoKSxwKCkpOnEoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZT09bnVsbHx8ZShoKTtwKCl9KX1xKCl9KX1lPT1udWxsfHxlKGgpfWVsc2UgZj09bnVsbHx8ZihoLHZvaWQgMCl9KS5jYXRjaChmdW5jdGlvbihoKXtmPT1udWxsfHxmKHZvaWQgMCxoKX0pO3JldHVybiEwfTt2YXIgcng9ZnVuY3Rpb24oYSl7aHUuY2FsbCh0aGlzLCJGZXRjaFJpY2hSZXNwb25zZSIsMSk7dGhpcy5OPWF9O3dhKHJ4LGh1KTtyeC5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4geWIoQS5mZXRjaCl9O3J4LnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7cmV0dXJuITB9O3J4LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjKXtxeChiLGM9PW51bGw/dm9pZCAwOmMuYm9keSx0aGlzLk4sYz09bnVsbD92b2lkIDA6Yy5HYixhLnBlLGZ1bmN0aW9uKGQsZSl7YS5vbkZhaWx1cmUoZSl9KX07dmFyIEN4PWZ1bmN0aW9uKCl7WWcuYXBwbHkodGhpcyxhcmd1bWVudHMpfTt3YShDeCxZZyk7Q3gucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiKXtaYyhhLHZvaWQgMCwkZyh0aGlzLGIpLGIuYXR0cmlidXRpb25fcmVwb3J0aW5nJiZveCgpP214Ont9KX07Q3gucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmF0dHJpYnV0aW9uX3JlcG9ydGluZyYmb3goKT97YXR0cmlidXRpb25SZXBvcnRpbmc6bnh9Ont9LGQ9JGcodGhpcyxiKTtiLnByb2Nlc3NfcmVzcG9uc2U/cXgoYSx2b2lkIDAsdGhpcyxjLHZvaWQgMCxkKTptZChhLHZvaWQgMCxjLHZvaWQgMCxkKX07dmFyIFF4PWZ1bmN0aW9uKGEsYil7dGhpcy5IPWE7dGhpcy50aW1lb3V0TXM9Yjt0aGlzLlJiPXZvaWQgMH0sUng9ZnVuY3Rpb24oYSl7YS5SYnx8KGEuUmI9c2V0VGltZW91dChmdW5jdGlvbigpe2EuSCgpO2EuUmI9dm9pZCAwfSxhLnRpbWVvdXRNcykpfSxUbj1mdW5jdGlvbihhKXthLlJiJiYoY2xlYXJUaW1lb3V0KGEuUmIpLGEuUmI9dm9pZCAwKX07dmFyIFN4PWZ1bmN0aW9uKCl7dmFyIGE9TmYoNjYsMCk7dGhpcy5LPVtdO3RoaXMuUj1hO3RoaXMuSD1ZYSgpfSxVeD1mdW5jdGlvbihhKXt2YXIgYj1UeDtiLksucHVzaChhKTtiLk58fChiLk49ZnVuY3Rpb24oKXtmb3IodmFyIGM9bShiLkspLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO3RyeXtlKCl9Y2F0Y2gobCl7fX1mb3IodmFyIGY9bShiLkgudmFsdWVzKCkpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKXt2YXIgaD12b2lkIDA7KGg9Zy52YWx1ZS53ZSk9PW51bGx8fFRuKGgpfWIuSC5jbGVhcigpfSwkYyhBLCJwYWdlaGlkZSIsYi5OKSl9LFZ4PWZ1bmN0aW9uKGEpe3ZhciBiPWEubWF0Y2goTW4pWzNdfHxudWxsLGM9KGI/ZGVjb2RlVVJJKGIpOmIpfHwiIixkPVBuKGEsImxhYmVsIil8fCIiLGU9UG4oYSwicmFuZG9tIil8fCIiO3JldHVybiBjKyI6IitMbihkKSsiOiIrTG4oZSl9LFd4PWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1UeCwKZT1WeChhKTtpZighKGQuSC5oYXMoZSl8fGQuSC5zaXplPj1kLlIpKXt2YXIgZj17fTtiJiZiPjAmJmMmJihmLndlPW5ldyBReChjLGIpKTtkLkguc2V0KGUsZik7dmFyIGc7KGc9Zi53ZSk9PW51bGx8fFJ4KGcpfX0sVW49ZnVuY3Rpb24oYSxiKXt2YXIgYz1WeChiKSxkLGU7KGQ9YS5ILmdldChjKSk9PW51bGx8fChlPWQud2UpPT1udWxsfHxUbihlKTthLkguZGVsZXRlKGMpfTtTeC5wcm90b3R5cGUuZ2V0U2l6ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkguc2l6ZX07dmFyIGRnO2Z1bmN0aW9uIGh5KGEsYil7dmFyIGM7KGM9ZGcpPT1udWxsfHwkZihjLkgsYSxiKX07dmFyIGl5PUFhKFsiLyJdKSxqeT1mdW5jdGlvbihhKXt0aGlzLkg9YTt0aGlzLmZhaWx1cmVUeXBlPXZvaWQgMH07ankucHJvdG90eXBlLmlvPWZ1bmN0aW9uKGEsYixjKXt0cnl7dmFyIGQ9dGhpcy5ILmFjdGl2ZTtkPyhkLnBvc3RNZXNzYWdlKHt0eXBlOjEsY29tbWFuZDphfSksYih7ZGF0YToiIn0pKTpjKHtmYWlsdXJlVHlwZToxMyxkYXRhOiIifSl9Y2F0Y2goZSl7Yyh7ZmFpbHVyZVR5cGU6MTEsZGF0YTplLm1lc3NhZ2V9KX19O3ZhciBreT1mdW5jdGlvbihhLGIpe3RoaXMuZmFpbHVyZVR5cGU9YTt0aGlzLkg9Yn07a3kucHJvdG90eXBlLmlvPWZ1bmN0aW9uKGEsYixjKXtjKHtmYWlsdXJlVHlwZTp0aGlzLmZhaWx1cmVUeXBlLGRhdGE6ImYiK3RoaXMuZmFpbHVyZVR5cGUrKCJ0IisoKG5ldyBEYXRlKS5nZXRUaW1lKCktdGhpcy5IKSl9KX07CnZhciBueT1mdW5jdGlvbihhKXt2YXIgYj10aGlzO3RoaXMuaW5pdFRpbWU9KG5ldyBEYXRlKS5nZXRUaW1lKCk7dGhpcy5IPW5ldyBreSgxNSx0aGlzLmluaXRUaW1lKTt2YXIgYz1uZXcgUHJvbWlzZShmdW5jdGlvbihlKXtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtlKCl9LDIwKX0pLGQ9bHkoYSkudGhlbihmdW5jdGlvbihlKXtiLkg9bmV3IGp5KGUpO215KGIsZSl9KS5jYXRjaChmdW5jdGlvbigpe2IuSD1uZXcga3koNCxiLmluaXRUaW1lKX0pO3RoaXMuSz1Qcm9taXNlLnJhY2UoW2MsZF0pfSxteT1mdW5jdGlvbihhLGIpe3ZhciBjPWZ1bmN0aW9uKGQpe2QmJmQuYWRkRXZlbnRMaXN0ZW5lcigic3RhdGVjaGFuZ2UiLGZ1bmN0aW9uKCl7aWYoZC5zdGF0ZT09PSJyZWR1bmRhbnQiKXt2YXIgZT1iLmFjdGl2ZTtlJiZlLnN0YXRlIT09InJlZHVuZGFudCJ8fChhLkg9bmV3IGt5KDEwLGEuaW5pdFRpbWUpKX19KX07YyhiLmFjdGl2ZSk7YyhiLndhaXRpbmcpO2MoYi5pbnN0YWxsaW5nKTsKYi5hZGRFdmVudExpc3RlbmVyKCJ1cGRhdGVmb3VuZCIsZnVuY3Rpb24oKXtjKGIuaW5zdGFsbGluZyl9KX07bnkucHJvdG90eXBlLmRlbGVnYXRlPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzO3RoaXMuSy50aGVuKGZ1bmN0aW9uKCl7ZC5ILmlvKGEsYixjKX0pfTtueS5wcm90b3R5cGUuZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gMn07CnZhciBseT1mdW5jdGlvbihhKXt2YXIgYixjPUxmKDExKTtjPUxmKDEwKTtiPWM7dmFyIGQ9e3Njb3BlOihUYihhLmhyZWYsIi8iKT9hLmhyZWYuc2xpY2UoMCwtMSk6YS5ocmVmKSsiL18vc2VydmljZV93b3JrZXIifTtiJiYoZC51cGRhdGVWaWFDYWNoZT0iYWxsIik7dmFyIGUsZj1veShhLGIpLGc9bmV3IE1hcChbWyJwYXRoIixhLnBhdGhuYW1lXV0pLGg9SnAoa2MoZikudG9TdHJpbmcoKSk7ZT1McChoLnprLGgucGFyYW1zLGguZnJhZ21lbnQsZyk7dmFyIGw9SWMoKSxuPWtjKGUpO3RyeXtyZXR1cm4gbC5yZWdpc3RlcihuLGQpfWNhdGNoKHApe3RyeXtyZXR1cm4gbC5yZWdpc3RlcihuLnRvU3RyaW5nKCksZCl9Y2F0Y2gocSl7cmV0dXJuIFByb21pc2UucmVqZWN0KHEpfX19OwpmdW5jdGlvbiBveShhLGIpe2Zvcih2YXIgYz1LcChpeSksZD1hLnBhdGhuYW1lLnNwbGl0KCIvIikuZmlsdGVyKGZ1bmN0aW9uKGgpe3JldHVybiBoLmxlbmd0aD4wfSksZT1bXS5jb25jYXQodyhkKSxbIl8iLCJzZXJ2aWNlX3dvcmtlciIsYiwic3cuanMiXSksZj1tKGUpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWM9TXAoYyxnLnZhbHVlKTtyZXR1cm4gY307ZnVuY3Rpb24gcHkoYSl7dmFyIGI9bm0oam0uYmEuT2gpLGM9Yj09bnVsbD92b2lkIDA6YlthXTtjfHxhIT09ImxpdGUifHwoYz1iPT1udWxsP3ZvaWQgMDpiLmZ1bGwpO3JldHVybiBjfXZhciBxeT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9cHkoImZ1bGwiKTtkP2QuZGVsZWdhdGUoYSxiLGMpOmMoe2ZhaWx1cmVUeXBlOjE2fSl9O2Z1bmN0aW9uIHJ5KGEsYixjLGQsZSl7cXkoe2NvbW1hbmRUeXBlOjAscGFyYW1zOnt1cmw6YSxtZXRob2Q6MSx0ZW1wbGF0ZXM6Yixib2R5OiIiLHByb2Nlc3NSZXNwb25zZTohMSxlbmNyeXB0aW9uS2V5U3RyaW5nOmUsc29SZWZlcnJlcjpBLmxvY2F0aW9uLmhyZWZ9fSxjLGZ1bmN0aW9uKGYpe2QoZi5mYWlsdXJlVHlwZSxmLmRhdGEpfSl9O3ZhciBEeT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPTA7dGhpcy5LPSExO00oNDYyKSYmVW0oImZzIixmdW5jdGlvbigpe3JldHVybiBhLkg+MCYmYS5IPDU/U3RyaW5nKGEuSCk6dm9pZCAwfSwhMSl9LEV5O2Z1bmN0aW9uIEZ5KGEsYil7RXl8fChFeT1uZXcgRHkpO3ZhciBjPUV5O00oNDYyKSYmZm4uSyYmKGI9PT0iZ3RtLmZvcm1TdWJtaXQifHxiPT09ImZvcm1fc3VibWl0IiYmSWYoNDUpKSYmKGE9PT0xfHxjLkspJiYoYy5LPSEwLGMuSD1hLGEhPT01P1ZtKCJmcyIpOlFtLkguZnM9ITEpfTt2YXIgR3k9ZnVuY3Rpb24oYSl7aWYoUShhLEguSi5kYSk9PT1YLlYuS2Epe3ZhciBiPWZ1KGEpO2lmKCFNKDQyNykmJihqcChhLGIpfHxRKGEsSC5KLmhkKSkmJlhvKGZwKSl7dmFyIGM9bHAoYSxiKTtpZihjKXt2YXIgZD1ObSg2OSxjKTtUbChkLGEsNjkpO1luKHtkZXN0aW5hdGlvbklkOmEudGFyZ2V0LmRlc3RpbmF0aW9uSWQsZW5kcG9pbnQ6NjksZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxkKX19dmFyIGU9eWIoYS5NLm9uU3VjY2Vzcyk/YS5NLm9uU3VjY2Vzczp4YjskdShhLGIpO2UoKX19O3ZhciBIeT17WDp7V3E6MCxFazoxLFpnOjIsWGs6MyxtaTo0LFZrOjUsV2s6NixZazo3LG5pOjgsdG06OSxzbToxMCxUaToxMSx2bToxMixCaDoxMyxFbToxNCxpajoxNSxTcToxNixqZDoxNyx1ajoxOCx2ajoxOSx3ajoyMCxDbjoyMSx4ajoyMn19O0h5LlhbSHkuWC5XcV09IlJFU0VSVkVEX1pFUk8iO0h5LlhbSHkuWC5Fa109IkFEU19DT05WRVJTSU9OX0hJVCI7SHkuWFtIeS5YLlpnXT0iQ09OVEFJTkVSX0VYRUNVVEVfU1RBUlQiO0h5LlhbSHkuWC5Ya109IkNPTlRBSU5FUl9TRVRVUF9FTkQiO0h5LlhbSHkuWC5taV09IkNPTlRBSU5FUl9TRVRVUF9TVEFSVCI7SHkuWFtIeS5YLlZrXT0iQ09OVEFJTkVSX0JMT0NLSU5HX0VORCI7SHkuWFtIeS5YLldrXT0iQ09OVEFJTkVSX0VYRUNVVEVfRU5EIjtIeS5YW0h5LlguWWtdPSJDT05UQUlORVJfWUlFTERfRU5EIjtIeS5YW0h5LlgubmldPSJDT05UQUlORVJfWUlFTERfU1RBUlQiO0h5LlhbSHkuWC50bV09IkVWRU5UX0VYRUNVVEVfRU5EIjsKSHkuWFtIeS5YLnNtXT0iRVZFTlRfRVZBTFVBVElPTl9FTkQiO0h5LlhbSHkuWC5UaV09IkVWRU5UX0VWQUxVQVRJT05fU1RBUlQiO0h5LlhbSHkuWC52bV09IkVWRU5UX1NFVFVQX0VORCI7SHkuWFtIeS5YLkJoXT0iRVZFTlRfU0VUVVBfU1RBUlQiO0h5LlhbSHkuWC5FbV09IkdBNF9DT05WRVJTSU9OX0hJVCI7SHkuWFtIeS5YLmlqXT0iUEFHRV9MT0FEIjtIeS5YW0h5LlguU3FdPSJQQUdFVklFVyI7SHkuWFtIeS5YLmpkXT0iU05JUFBFVF9MT0FEIjtIeS5YW0h5LlgudWpdPSJUQUdfQ0FMTEJBQ0tfRVJST1IiO0h5LlhbSHkuWC52al09IlRBR19DQUxMQkFDS19GQUlMVVJFIjtIeS5YW0h5Llgud2pdPSJUQUdfQ0FMTEJBQ0tfU1VDQ0VTUyI7SHkuWFtIeS5YLkNuXT0iVEFHX0VYRUNVVEVfRU5EIjtIeS5YW0h5LlgueGpdPSJUQUdfRVhFQ1VURV9TVEFSVCI7dmFyIEl5PXt9O0l5Llg9SHkuWDt2YXIgSnk9e1J1OiJMIixYcToiUyIsa3Y6IlkiLFJ0OiJCIixudToiRSIsTnU6IkkiLGZ2OiJUQyIsdnU6IkhUQyIsb3U6IkYiLE11OiJDIn0sS3k9e1hxOiJTIixsdToiViIsYXU6IkUiLGR2OiJ0YWcifSxMeT17fSxNeT0oTHlbSXkuWC52al09IjYiLEx5W0l5Llgud2pdPSI1IixMeVtJeS5YLnVqXT0iNyIsTHkpO2Z1bmN0aW9uIE55KGEpe3ZhciBiPUUoNSksYz1OdW1iZXIoYS5ldmVudElkKSxkPU51bWJlcihhLnRhZ0lkKTtyZXR1cm4oU2IoYiwiR1RNLSIpP2I6IkdUTS0iK2IpKyI6IisoQWIoYyk/YysiOiI6IiIpKyhBYihkKT9kKyI6IjoiIikrYS5zdGFnZX07ZnVuY3Rpb24gT3koKXt2YXIgYT1yZCgpO3JldHVybiEhKGEmJmEubWFyayBpbnN0YW5jZW9mIEZ1bmN0aW9uJiZhLm1lYXN1cmUgaW5zdGFuY2VvZiBGdW5jdGlvbiYmYS5jbGVhck1lYXN1cmVzIGluc3RhbmNlb2YgRnVuY3Rpb24mJmEuY2xlYXJNYXJrcyBpbnN0YW5jZW9mIEZ1bmN0aW9uKX07dmFyIFB5PWZ1bmN0aW9uKCl7dGhpcy5IPXt9fSxReTtmdW5jdGlvbiBSeSgpe1F5fHwoUXk9bmV3IFB5KTtyZXR1cm4gUXl9ZnVuY3Rpb24gU3koYSl7dmFyIGI9UnkoKSxjPU55KGEpO3JldHVybiBiLkhbY119ZnVuY3Rpb24gVHkoYSxiKXt2YXIgYzthOnt2YXIgZD1SeSgpO2lmKE95KCkpe3ZhciBlPU55KGEpLGYsZztpZihmPShnPXJkKCkpPT1udWxsP3ZvaWQgMDpnLm1hcmsoZSxiKSl7Yz1kLkhbZV09ZjticmVhayBhfX1jPXZvaWQgMH1yZXR1cm4gY307ZnVuY3Rpb24gVXkoYSxiKXtpZihPeSgpKXthLmVudHJ5PU55KGEpO3ZhciBjPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYSk7Yy5zdGFnZT1iO2RlbGV0ZSBjLnNlbnQ7dmFyIGQ9U3koYj09PUl5LlguamQ/e3N0YWdlOkl5LlguamR9OmMpLGU9U3koYSk7aWYoZCYmZSYmIShkLnN0YXJ0VGltZT5lLnN0YXJ0VGltZSkpe2Muc3RhZ2U9YisiOiIrYS5zdGFnZTt2YXIgZj1OeShjKSxnPXtzdGFydDpkLm5hbWUsZW5kOmUubmFtZX0saCxsO3JldHVybihsPShoPXJkKCkpPT1udWxsP3ZvaWQgMDpoLm1lYXN1cmUoZixnKSk9PW51bGw/dm9pZCAwOmwuZHVyYXRpb259fX07dmFyIFd5PWZ1bmN0aW9uKCl7dmFyIGE9NTtWeS5Sbz4wJiYoYT1WeS5Sbyk7dGhpcy5LPWE7dGhpcy5IPTA7dGhpcy5OPVtdfSxYeT1mdW5jdGlvbihhKXtyZXR1cm4gYS5IPGEuSz8hMTpOYigpLWEuTlthLkglYS5LXTwxRTN9LFl5PWZ1bmN0aW9uKGEpe3ZhciBiPWEuSCsrJWEuSzthLk5bYl09TmIoKX07dmFyIFZ5PXtSbzpOZigzLDApfSwkeT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy55YT1bXTt0aGlzLkg9dm9pZCAwO3RoaXMuWj17fTt0aGlzLks9dm9pZCAwO3RoaXMuamE9bmV3IFd5O3RoaXMuTGE9MUUzO3RoaXMuUj10aGlzLk49ITE7dGhpcy5mYT1EYigpO1p5KHRoaXMsZnVuY3Rpb24oKXt2YXIgYj1bWyJ2IiwiMyJdLFsidCIsInQiXSxbInBpZCIsU3RyaW5nKGEuZmEpXV0sYz1kdSgpO2MmJmIucHVzaChbImd0bSIsY10pO3JldHVybiBifSk7Y2QoZnVuY3Rpb24oKXthLmZhPURiKCl9LDg2NEU1KX0sWnk9ZnVuY3Rpb24oYSxiKXthLnlhLnB1c2goYil9LGF6PWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLkg7aWYoZD09PXZvaWQgMClpZihjKWQ9cmooKTtlbHNlIHJldHVybiIiO2Zvcih2YXIgZT1bZmsoImh0dHBzOi8vIitFKDIxKSksIi9hIiwiP2lkPSIrRSg1KV0sZj1tKGEueWEpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWZvcih2YXIgaD1nLnZhbHVlLGw9Cmgoe2V2ZW50SWQ6ZCx0ZjohIWJ9KSxuPW0obCkscD1uLm5leHQoKTshcC5kb25lO3A9bi5uZXh0KCkpe3ZhciBxPW0ocC52YWx1ZSkscj1xLm5leHQoKS52YWx1ZSx0PXEubmV4dCgpLnZhbHVlO2UucHVzaCgiJiIrcisiPSIrdCl9ZS5wdXNoKCImej0wIik7cmV0dXJuIGUuam9pbigiIil9LGJ6PWZ1bmN0aW9uKGEpe2lmKCRrKDI2KSYmKGEuSyYmKEEuY2xlYXJUaW1lb3V0KGEuSyksYS5LPXZvaWQgMCksYS5IIT09dm9pZCAwJiZhLlIpKXt2YXIgYj1sbyhjby5pYS5aYik7aWYoZ28oYikpYS5OfHwoYS5OPSEwLGlvKGIsZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBieihhKX0pKTtlbHNlIGlmKGEuWlthLkhdfHxYeShhLmphKXx8YS5MYS0tPD0wKVAoMSksYS5aW2EuSF09ITA7ZWxzZXtZeShhLmphKTt2YXIgYz1heihhLCEwKTtYbih7ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjU2LGV2ZW50SWQ6YS5IfSxjKTthLlI9ITE7YS5OPSExfX19LGN6PWZ1bmN0aW9uKGEpe2EuS3x8KGEuSz0KQS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgYnooYSl9LDUwMCkpfSxlej1mdW5jdGlvbihhKXt2YXIgYj1kejtiLlpbYV18fChhIT09Yi5IJiYoYnooYiksYi5IPWEpLGIuUj0hMCxjeihiKSxheihiKS5sZW5ndGg+PTIwMjImJmJ6KGIpKX0sZHo7ZnVuY3Rpb24gZnooYSl7Z3ooKTtaeShkeixhKX1mdW5jdGlvbiBoeigpe3ZhciBhO2E9YT09PXZvaWQgMD8hMTphO2d6KCk7dmFyIGI9YSxjPWR6O2I9Yj09PXZvaWQgMD8hMTpiO2lmKGZuLk4mJiRrKDI2KSl7dmFyIGQ9YXooYywhMCwhMCk7Yj9Wbih7ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjU2LGV2ZW50SWQ6Yy5IfSxkKTpYbih7ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjU2LGV2ZW50SWQ6Yy5IfSxkKX19ZnVuY3Rpb24gZ3ooKXtkenx8KGR6PW5ldyAkeSl9O2Z1bmN0aW9uIGl6KCl7ZnVuY3Rpb24gYShjLGQpe3ZhciBlPXdiKHJiW2RdfHxbXSk7ZSYmYi5wdXNoKFtjLGVdKX12YXIgYj1bXTthKCJ1IiwiR1RNIik7YSgidXQiLCJUQUdHSU5HIik7YSgiaCIsIkhFQUxUSCIpO3JldHVybiBifTt2YXIgano9Imh0dHBzOi8vIitFKDIxKSxrej1mdW5jdGlvbigpe3RoaXMuTj0hMTt0aGlzLlI9W107dGhpcy5aPVtdO3RoaXMuSD17VEM6MCxIVEM6MH07dGhpcy5LPXt9fSxsej1mdW5jdGlvbihhLGIsYyxkKXthLktbYl18fChhLktbYl09e30pO2EuS1tiXVtjXT1kfSxvej1mdW5jdGlvbihhKXt2YXIgYj0iIixjPSIiLGQ9bXooKTtBYihkKSYmKGEuSC5JPU1hdGguZmxvb3IoZCkpO2M9bnooYS5ILEp5KS50b1N0cmluZygpO2Zvcih2YXIgZT1tKE9iamVjdC5rZXlzKGEuSykpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlLGg9YS5LW2ddLm5hbWUsbD0iIixuPW56KGEuS1tnXSxLeSk7biYmKGw9aCsiLiIrbi50b1N0cmluZygpLGIrPSJ+IitsKX12YXIgcD0ifkFXQ1QiK2EuUi5qb2luKCIuIikscT0ifkdBIithLlouam9pbigiLiIpLHI9IiZjY2lkPSIrdmsoKS50b1N0cmluZygpKyImY2lkPSIrRSg1KS50b1N0cmluZygpKyImbD0iK2MrYisoYS5SLmxlbmd0aD8KcDoiIikrKGEuWi5sZW5ndGg/cToiIik7aWYoTSgyMTQpKXt2YXIgdCx1PSh0PXJkKCkpPT1udWxsP3ZvaWQgMDp0LmdldEVudHJpZXNCeU5hbWUoS2MpLm1hcChmdW5jdGlvbih2KXtyZXR1cm4gU3RyaW5nKHYuZHVyYXRpb24pfSkuam9pbigiLiIpO3UmJihyKz0iflNTIit1KX1yZXR1cm4gcn0scHo9ZnVuY3Rpb24oYSxiKXtpZighYi5zdGFnZXx8YS5OfHwhT3koKXx8U3koYikpcmV0dXJuITE7dmFyIGMsZD0oYz1yZCgpKT09bnVsbD92b2lkIDA6Yy50aW1lT3JpZ2luO2lmKCFBYihkKSlhLk49ITA7ZWxzZSBpZihBYigkaygyNSkpJiYhU3koe3N0YWdlOkl5LlguamR9KSYmIWEuTiYmT3koKSl0cnl7dmFyIGU9TnVtYmVyKCRrKDI1KSk7VHkoe3N0YWdlOkl5LlguamR9LHtzdGFydFRpbWU6TWF0aC5tYXgoZS1kLDApfSk7VHkoe3N0YWdlOkl5LlguaWp9LHtzdGFydFRpbWU6MH0pO3ZhciBmPVV5KHtzdGFnZTpJeS5YLmpkfSxJeS5YLmlqKTtmJiYoYS5ILkw9TWF0aC5mbG9vcihmKSl9Y2F0Y2goZyl7YS5OPQohMH1pZihhLk4pcmV0dXJuITE7dHJ5e2lmKCFUeShiKSlyZXR1cm4hMX1jYXRjaChnKXtyZXR1cm4gYS5OPSEwLCExfXJldHVybiEwfSxxej1mdW5jdGlvbihhLGIsYyl7aWYocHooYSxiKSl0cnl7dmFyIGQ9VXkoYixjKTtpZihkKXJldHVybiBNYXRoLmZsb29yKGQpfWNhdGNoKGUpe2EuTj0hMH19LHN6PWZ1bmN0aW9uKCl7dmFyIGE9cnooKTtweihhLHtzdGFnZTpJeS5YLm1pfSl9LHR6PWZ1bmN0aW9uKCl7dmFyIGE9cnooKSxiPXF6KGEse3N0YWdlOkl5LlguWGt9LEl5LlgubWkpO2IhPT12b2lkIDAmJihhLkguUz1iKX0sdXo9ZnVuY3Rpb24oKXt2YXIgYT1yeigpO3B6KGEse3N0YWdlOkl5Llgubml9KX0sdno9ZnVuY3Rpb24oYSxiKXt2YXIgYz1yeigpO3B6KGMse3N0YWdlOkl5LlguQmgsZXZlbnRJZDphfSk7Yy5LW2FdJiZjLktbYV0ubmFtZXx8bHooYyxhLCJuYW1lIixTYihiLCJndG0uIik/YjoiKiIpfSx3ej1mdW5jdGlvbihhKXt2YXIgYj1yeigpLGM9cXooYix7c3RhZ2U6SXkuWC52bSwKZXZlbnRJZDphfSxJeS5YLkJoKTtjIT09dm9pZCAwJiZseihiLGEsIlMiLGMpfSx5ej1mdW5jdGlvbihhLGIpe3ZhciBjPXJ6KCksZD1xeihjLHtzdGFnZTpJeS5YLnRtLGV2ZW50SWQ6YX0sSXkuWC5CaCk7ZCE9PXZvaWQgMCYmbHooYyxhLCJFIixkKTtpZihiPT09Imd0bS5sb2FkIil7dmFyIGU9cXooYyx7c3RhZ2U6SXkuWC5Xa30sSXkuWC5aZyk7ZSE9PXZvaWQgMCYmKGMuSC5FPWUpO2lvKGxvKGNvLmlhLlpiKSxmdW5jdGlvbigpe2lmKCFjLk4mJk95KCkmJkUoNSkpe3ZhciBmPXh6KCk7ZiE9PXZvaWQgMCYmKGMuSC5GPU1hdGguZmxvb3IoZikpO3RyeXtmb3IodmFyIGc9aXooe2V2ZW50SWQ6MCx0ZjohMX0pLGg9W10sbD1tKGcpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1tKG4udmFsdWUpLHE9cC5uZXh0KCkudmFsdWUscj1wLm5leHQoKS52YWx1ZTtoLnB1c2goIiYiK3ErIj0iK3IpfXZhciB0PUNwKCksdT1bW2ZrKGp6KSwiL2E/dj0zJnQ9bCIsIiZwaWQ9IisKRGIoKS50b1N0cmluZygpLCImcnY9IitFKDE0KSx0PyImdGFnX2V4cD0iK3Q6IiIsaC5qb2luKCIiKV0uam9pbigiIiksIiZndG09IixkdSgpLG96KGMpXS5qb2luKCIiKTtpZih1Lmxlbmd0aD4yMDIyKXt2YXIgdj1NYXRoLm1heCh1Lmxhc3RJbmRleE9mKCIuVFMiLDIwMjIpLHUubGFzdEluZGV4T2YoIn4iLDIwMjIpKTt1PXUuc2xpY2UoMCx2KX1Ybih7ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjU2fSx1KX1jYXRjaCh4KXt9fX0pfX0seno7ZnVuY3Rpb24gcnooKXt6enx8KHp6PW5ldyBreik7cmV0dXJuIHp6fWZ1bmN0aW9uIG16KCl7dHJ5e3ZhciBhO3JldHVybigoYT1yZCgpKT09bnVsbD92b2lkIDA6YS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0pLmRvbUludGVyYWN0aXZlfWNhdGNoKGIpe319CmZ1bmN0aW9uIG56KGEsYil7cmV0dXJuIE9iamVjdC5rZXlzKGIpLm1hcChmdW5jdGlvbihjKXtyZXR1cm4gYltjXX0pLmZpbHRlcihmdW5jdGlvbihjKXtyZXR1cm4gYVtjXSE9PXZvaWQgMH0pLm1hcChmdW5jdGlvbihjKXtyZXR1cm4oIiIrKGM9PT0idGFnIj8iIjpjKSkuY29uY2F0KGFbY10udG9TdHJpbmcoKSl9KS5qb2luKCIuIil9ZnVuY3Rpb24gQXooYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5LlguRW0sZXZlbnRJZDphfSxJeS5YLmpkKTtjIT09dm9pZCAwJiZiLloucHVzaChjKX1mdW5jdGlvbiBCeihhKXt2YXIgYj1yeigpLGM9cXooYix7c3RhZ2U6SXkuWC5FayxldmVudElkOmF9LEl5LlguamQpO2MhPT12b2lkIDAmJmIuUi5wdXNoKGMpfWZ1bmN0aW9uIEN6KGEpe3ZhciBiPXJ6KCk7cHooYix7c3RhZ2U6SXkuWC5UaSxldmVudElkOmF9KX0KZnVuY3Rpb24gRHooYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5Llguc20sZXZlbnRJZDphfSxJeS5YLlRpKTtjIT09dm9pZCAwJiZseihiLGEsIlYiLGMpfWZ1bmN0aW9uIHh6KCl7dHJ5e3ZhciBhLGI7cmV0dXJuKGI9KGE9cmQoKSk9PW51bGw/dm9pZCAwOmEuZ2V0RW50cmllc0J5VHlwZSgicGFpbnQiKS5maW5kKGZ1bmN0aW9uKGMpe3JldHVybiBjLm5hbWU9PT0iZmlyc3QtY29udGVudGZ1bC1wYWludCJ9KSk9PW51bGw/dm9pZCAwOmIuc3RhcnRUaW1lfWNhdGNoKGMpe319ZnVuY3Rpb24gRXooYSxiKXt2YXIgYz1yeigpO3B6KGMse3N0YWdlOkl5LlgueGosZXZlbnRJZDphLmlkLHRhZ0lkOk51bWJlcihiW0dmLnlqXSl9KX0KZnVuY3Rpb24gRnooYSxiLGMpe3ZhciBkPXJ6KCksZT1kbihiKSxmPU51bWJlcihiW0dmLnlqXSksZz1xeihkLHtzdGFnZTpjLGV2ZW50SWQ6YS5pZCx0YWdJZDpmfSxJeS5YLnhqKTtpZihnIT09dm9pZCAwJiZkLktbYS5pZF0pe3ZhciBoPWQuS1thLmlkXS50YWd8fCIiLGwsbj0obD1NeVtjXSkhPW51bGw/bDoiMSIscD1uZXcgUmVnRXhwKCJUU1xcZCIrZSsiLlRJIitmKSxxPSJUUyIrbitlKyIuVEkiK2YrIi5URSIrZztoLnNlYXJjaChwKT49MD9uIT09IjEiJiZseihkLGEuaWQsInRhZyIsaC5yZXBsYWNlKHAscS5yZXBsYWNlKCIuVEUiK2csIiIpKSk6KGx6KGQsYS5pZCwidGFnIiwoaD9oKyIuIjoiIikrcSksZT09PSJodG1sIiYmKGQuSC5IVEMrPTEpLGQuSC5UQys9MSl9fTt2YXIgS3o9e2dqOnticDoiMSIsdXE6IjIiLFZxOiIzIn19Owp2YXIgTHo9e30sTXo9T2JqZWN0LmZyZWV6ZSgoTHpbRi5ELmZoXT0xLEx6W0YuRC5naF09MSxMeltGLkQuQmRdPTEsTHpbRi5ELkNkXT0xLEx6W0YuRC5SY109MSxMeltGLkQuc2ldPTEsTHpbRi5ELnVpXT0xLEx6W0YuRC5DbF09MSxMeltGLkQuaWhdPTEsTHpbRi5ELkNmXT0xLEx6W0YuRC5EZl09MSxMeltGLkQuRWZdPTEsTHpbRi5ELkhhXT0xLEx6W0YuRC5GZl09MSxMeltGLkQuRmRdPTEsTHpbRi5ELnVjXT0xLEx6W0YuRC5IZF09MSxMeltGLkQuTGJdPTEsTHpbRi5ELkNiXT0xLEx6W0YuRC5UYl09MSxMeltGLkQubmJdPTEsTHpbRi5ELmViXT0xLEx6W0YuRC5HZV09MSxMeltGLkQua2hdPTEsTHpbRi5ELk9hXT0xLEx6W0YuRC5PcF09MSxMeltGLkQuU3BdPTEsTHpbRi5ELkllXT0xLEx6W0YuRC5HaV09MSxMeltGLkQuUWZdPTEsTHpbRi5ELlRhXT0xLEx6W0YuRC5ZY109MSxMeltGLkQuWmNdPTEsTHpbRi5ELnRiXT0xLEx6W0YuRC5RZF09MSxMeltGLkQuUmRdPTEsTHpbRi5ELlNkXT0KMSxMeltGLkQuTmVdPTEsTHpbRi5ELnphXT0xLEx6W0YuRC5VYV09MSxMeltGLkQuV2xdPTEsTHpbRi5ELlhsXT0xLEx6W0YuRC5ZbF09MSxMeltGLkQuWmxdPTEsTHpbRi5ELldiXT0xLEx6W0YuRC5UZF09MSxMeltGLkQuWGJdPTEsTHpbRi5ELmRkXT0xLEx6W0YuRC5VZF09MSxMeltGLkQuUWVdPTEsTHpbRi5ELlBhXT0xLEx6W0YuRC55Y109MSxMeltGLkQuVmRdPTEsTHpbRi5ELnpjXT0xLEx6W0YuRC5BY109MSxMeltGLkQuZmJdPTEsTHpbRi5ELlFhXT0xLEx6KSksTno9e30sT3o9KE56W0YuRC5VY109MSxOeltGLkQuUHBdPTEsTnpbRi5ELkhlXT0xLE56W0YuRC5yaV09MSxOei5vcmVmPTEsTnopO3ZhciBQeixRejsKZnVuY3Rpb24gUnooYSxiKXt2YXIgYz1hW0dmLlliXSxkPWImJmIuZXZlbnQ7aWYoIWMpdGhyb3cgRXJyb3IoIkVycm9yOiBObyBmdW5jdGlvbiBuYW1lIGdpdmVuIGZvciBmdW5jdGlvbiBjYWxsLiIpO3ZhciBlPVF6W2NdLGY9e30sZztmb3IoZyBpbiBhKWEuaGFzT3duUHJvcGVydHkoZykmJihTYihnLCJ2dHBfIik/ZltlIT09dm9pZCAwP2c6Zy5zdWJzdHJpbmcoNCldPWFbZ106Zz09PUdmLkZxLnRvU3RyaW5nKCkmJihmW2UhPT12b2lkIDA/InZ0cF9ndG1HZW5lcmF0ZWRUYWdnaW5nTWV0YWRhdGEiOmddPWFbZ10pKTtJZig2MSkmJmUmJihmLnZ0cF9leHRyYUV4cGVyaW1lbnRJZHM9ITApO2UmJmQmJmQuY2FjaGVkTW9kZWxWYWx1ZXMmJihmLnZ0cF9ndG1DYWNoZWRWYWx1ZXM9ZC5jYWNoZWRNb2RlbFZhbHVlcyk7YiYmZSYmKGYudnRwX2d0bUVudGl0eUluZGV4PWIuaW5kZXgsZi52dHBfZ3RtRW50aXR5TmFtZT1iLm5hbWUpO3JldHVybiBlIT09dm9pZCAwP2UoZik6UHooYyxmLApiKX12YXIgVHo9ZnVuY3Rpb24oKXt2YXIgYT1TejtpZihNKDU4NSkmJmZuLkspe3ZhciBiPUUoNSkuaW5kZXhPZigiR1RNLSIpPT09MCYmSWYoNjIpLGMsZD0oKGM9RmsoKSk9PW51bGw/dm9pZCAwOmMuc291cmNlKT09PTE7YiYmIWR8fGEuSHx8KGEuSD0hMCxVbSgiYWJsIiwiMSIpLHRvKCkpfX0sU3o9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPSExfTt2YXIgVXo9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5IPWE7dGhpcy5pbmRleD1iO3RoaXMudGFncz1jO3RoaXMubWFjcm9zPWQ7dGhpcy5uYW1lPVN0cmluZyh0aGlzLkhbR2YuUm1dfHwiIil9OwpVei5wcm90b3R5cGUuZXZhbHVhdGU9ZnVuY3Rpb24oYSxiKXtpZighYlt0aGlzLmluZGV4XSYmIWEuaXNCbG9ja2VkKHRoaXMuSCkpe2JbdGhpcy5pbmRleF09ITA7dGhpcy5IW0dmLnBsLnRvU3RyaW5nKCldJiZUeigpO3ZhciBjPXRoaXMubmFtZSxkO3RyeXt2YXIgZT17fSxmO2ZvcihmIGluIHRoaXMuSCl0aGlzLkguaGFzT3duUHJvcGVydHkoZikmJihlW2ZdPWVsKHRoaXMuSFtmXSxhLHRoaXMudGFncyx0aGlzLm1hY3JvcyxiKSk7ZS52dHBfZ3RtRXZlbnRJZD1hLmlkO2EucHJpb3JpdHlJZCYmKGUudnRwX2d0bVByaW9yaXR5SWQ9YS5wcmlvcml0eUlkKTt2YXIgZz1kPVJ6KGUse2V2ZW50OmEsaW5kZXg6dGhpcy5pbmRleCx0eXBlOjIsbmFtZTpjfSk7ZVtHZi5aa10mJnR5cGVvZiBnPT09InN0cmluZyImJihnPWVbR2YuWmtdPT09MT9nLnRvTG93ZXJDYXNlKCk6Zy50b1VwcGVyQ2FzZSgpKTtlLmhhc093blByb3BlcnR5KEdmLmFoKSYmKGc9WWYoMTgpP2VbR2YuYWhdPT09MT8KVmYoZywiUEVSSU9EIik6ZVtHZi5haF09PT0yP1ZmKGcsIkNPTU1BIik6VmYoZywiQVVUT01BVElDIik6ZVtHZi5haF09PT0xP1ZmKGcsIlBFUklPRCIpOlZmKGcsIkNPTU1BIikpO2UuaGFzT3duUHJvcGVydHkoR2YuYmwpJiZnPT09bnVsbCYmKGc9ZVtHZi5ibF0pO2UuaGFzT3duUHJvcGVydHkoR2YuaWwpJiZnPT09dm9pZCAwJiYoZz1lW0dmLmlsXSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5lcCkmJihnPUpiKGcpKTtlLmhhc093blByb3BlcnR5KEdmLmZsKSYmZz09PSEwJiYoZz1lW0dmLmZsXSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5hbCkmJmc9PT0hMSYmKGc9ZVtHZi5hbF0pO2Q9Z31jYXRjaChoKXthLmxvZ01hY3JvRXJyb3ImJmEubG9nTWFjcm9FcnJvcihoLE51bWJlcih0aGlzLmluZGV4KSxjKSxkPSExfWJbdGhpcy5pbmRleF09ITE7cmV0dXJuIGR9fTtVei5wcm90b3R5cGUuRmc9ZnVuY3Rpb24oKXtyZXR1cm4gbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSx0aGlzLkgpfTt2YXIgVno9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuSD1hO3RoaXMudGFncz1iO3RoaXMubWFjcm9zPWN9O1Z6LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbihhLGIpe3RyeXtmb3IodmFyIGM9e30sZD1tKE9iamVjdC5rZXlzKHRoaXMuSCkpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO2NbZl09Zj09PSJmdW5jdGlvbiI/dGhpcy5IW2ZdOmVsKHRoaXMuSFtmXSxhLHRoaXMudGFncyx0aGlzLm1hY3JvcyxiKX1yZXR1cm4gY2woYyl9Y2F0Y2goZyl7SlNPTi5zdHJpbmdpZnkodGhpcy5IKX1yZXR1cm4gMn07VnoucHJvdG90eXBlLkZnPWZ1bmN0aW9uKCl7cmV0dXJuIG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sdGhpcy5IKX07dmFyIFd6PWZ1bmN0aW9uKGEsYil7dGhpcy5pbmRleD1iO3RoaXMuTj1bXTt0aGlzLlI9W107dGhpcy5LPVtdO3RoaXMuSD1bXTt0aGlzLm5hbWU9IiI7Zm9yKHZhciBjPW0oYSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPW0oZC52YWx1ZSksZj1lLm5leHQoKS52YWx1ZSxnPXlhKGUpLGg9ZixsPWc7aD09PSJpZiI/dGhpcy5OPWw6aD09PSJ1bmxlc3MiP3RoaXMuUj1sOmg9PT0iYWRkIj90aGlzLks9bDpoPT09ImJsb2NrIj90aGlzLkg9bDpoPT09InJ1bGVOYW1lIiYmKHRoaXMubmFtZT1sWzBdKX19OwpXei5wcm90b3R5cGUuZXZhbHVhdGU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1Yeih0aGlzLGIpLGQ9W10sZT1bXTtjPyhkLnB1c2guYXBwbHkoZCx3KHRoaXMuSykpLGUucHVzaC5hcHBseShlLHcodGhpcy5IKSkpOmM9PT1udWxsJiZlLnB1c2guYXBwbHkoZSx3KHRoaXMuSCkpO3JldHVybntmaXJpbmdUYWdzOmQsYmxvY2tpbmdUYWdzOmV9fTsKdmFyIFh6PWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPW0oYS5OKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9YihkLnZhbHVlKTtpZihlPT09MClyZXR1cm4hMTtpZihlPT09MilyZXR1cm4gbnVsbH1mb3IodmFyIGY9bShhLlIpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKXt2YXIgaD1iKGcudmFsdWUpO2lmKGg9PT0yKXJldHVybiBudWxsO2lmKGg9PT0xKXJldHVybiExfXJldHVybiEwfTtXei5wcm90b3R5cGUuZ2V0TmFtZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm5hbWV9O3ZhciBZej1mdW5jdGlvbihhLGIsYyxkKXt0aGlzLklhPWE7dGhpcy5pbmRleD1iO3RoaXMudGFncz1jO3RoaXMubWFjcm9zPWQ7dGhpcy5PPVN0cmluZyh0aGlzLklhW0dmLlliXSk7dGhpcy5uYW1lPVN0cmluZyh0aGlzLklhW0dmLlJtXXx8IiIpO3RoaXMudGFnSWQ9TnVtYmVyKHRoaXMuSWFbR2YueWpdKX07Cll6LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbihhLGIsYyl7Yz1jPT09dm9pZCAwP3t9OmM7dmFyIGQsZT1jO2U9ZT09PXZvaWQgMD97fTplO3ZhciBmPXt9LGc7Zm9yKGcgaW4gdGhpcy5JYSl0aGlzLklhLmhhc093blByb3BlcnR5KGcpJiYoZltnXT1lbCh0aGlzLklhW2ddLGEsdGhpcy50YWdzLHRoaXMubWFjcm9zLFtdKSk7ZD1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGYsZSk7ZC52dHBfZ3RtVGFnSWQ9dGhpcy50YWdJZDt0aGlzLklhW0dmLnBsLnRvU3RyaW5nKCldJiZUeigpO1J6KGQse2V2ZW50OmEsaW5kZXg6dGhpcy5pbmRleCx0eXBlOjEsbmFtZTp0aGlzLm5hbWV9KX07WXoucHJvdG90eXBlLkZnPWZ1bmN0aW9uKCl7cmV0dXJuIG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sdGhpcy5JYSl9Owp2YXIgWno9ZnVuY3Rpb24oYSxiKXtpZihhLklhW0dmLnRuXSlyZXR1cm4gZWwoYS5JYVtHZi50bl0sYixhLnRhZ3MsYS5tYWNyb3MsW10pfSwkej1mdW5jdGlvbihhLGIpe2lmKGEuSWFbR2YuRG5dKXJldHVybiBlbChhLklhW0dmLkRuXSxiLGEudGFncyxhLm1hY3JvcyxbXSl9LGFBPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5JYVtHZi5jcF07aWYoYylyZXR1cm4gZWwoYyxiLGEudGFncyxhLm1hY3JvcyxbXSl9O1l6LnByb3RvdHlwZS5nZXRNZXRhZGF0YT1mdW5jdGlvbihhKXtyZXR1cm4gZWwodGhpcy5JYVtHZi5NRVRBREFUQV0sYSx0aGlzLnRhZ3MsdGhpcy5tYWNyb3MsW10pfTtZei5wcm90b3R5cGUuZ2V0TmFtZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm5hbWV9O3ZhciBiQT1mdW5jdGlvbigpe3RoaXMubWFjcm9zPVtdO3RoaXMucnVsZXM9W107dGhpcy5wcmVkaWNhdGVzPVtdO3RoaXMudGFncz1bXTt0aGlzLnZrPVtdfTtiQS5wcm90b3R5cGUuZ2V0UnVsZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ydWxlc307dmFyIGNBPW5ldyBiQTtmdW5jdGlvbiBkQShhLGIsYyxkKXt2YXIgZT1XYygpLGY7aWYoZT09PTEpYTp7dmFyIGc9RSgzKTtnPWcudG9Mb3dlckNhc2UoKTtmb3IodmFyIGg9Imh0dHBzOi8vIitnLGw9Imh0dHA6Ly8iK2csbj0xLHA9Qi5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IikscT0wO3E8cC5sZW5ndGgmJnE8MTAwO3ErKyl7dmFyIHI9cFtxXS5zcmM7aWYocil7cj1yLnRvTG93ZXJDYXNlKCk7aWYoci5pbmRleE9mKGwpPT09MCl7Zj0zO2JyZWFrIGF9bj09PTEmJnIuaW5kZXhPZihoKT09PTAmJihuPTIpfX1mPW59ZWxzZSBmPWU7cmV0dXJuKGY9PT0yfHxkfHwiaHR0cDoiIT09QS5sb2NhdGlvbi5wcm90b2NvbD9hOmIpK2N9O3ZhciBlQT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5LPXt9O3RoaXMuSD17fTtmeihmdW5jdGlvbihiKXt2YXIgYz1bXSxkO2ZvcihkIGluIGEuSylPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYS5LLGQpJiZjLnB1c2goZCsifiIrYS5LW2RdKTt2YXIgZT1bXSxmO2ZvcihmIGluIGEuSClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYS5ILGYpJiZlLnB1c2goZisifiIrYS5IW2ZdKTtiLnRmJiYoYS5LPXt9LGEuSD17fSk7dmFyIGc9W107Yy5sZW5ndGg+MCYmZy5wdXNoKFsiYmNzIixjLmpvaW4oIi4iKV0pO2UubGVuZ3RoPjAmJmcucHVzaChbImJldCIsZS5qb2luKCIuIildKTtyZXR1cm4gZ30pfSxmQTtmdW5jdGlvbiBnQSgpe2ZBfHwoZkE9bmV3IGVBKX07ZnVuY3Rpb24gaEEoYSxiLGMsZCxlKXtpZighRWsoYSkpe2QubG9hZEV4cGVyaW1lbnRzPXlqKCk7SGsoYSxkLGUpO3ZhciBmPWlBKGEpLGc9ZnVuY3Rpb24oKXtvaygpLmNvbnRhaW5lclthXSYmKG9rKCkuY29udGFpbmVyW2FdLnN0YXRlPTMpO2pBKCl9LGg9e2Rlc3RpbmF0aW9uSWQ6YSxlbmRwb2ludDowfTtpZihXaigpKXt2YXIgbD1YaigpLG49bCsiLyIra0EoZixhKTtabihoLG4sdm9pZCAwLGZ1bmN0aW9uKCl7bEEoYSxuLGwrIi8iK2YsaCxnKX0pfWVsc2V7dmFyIHA9U2IoYSwiR1RNLSIpLHE9ZGsoKSxyPWM/Ii9ndGFnL2pzIjoiL2d0bS5qcyIsdD1tQShiLHIrZixhKTtpZighdCl7dmFyIHU9RSgzKStyO3EmJktjJiZwJiYodT1LYy5yZXBsYWNlKC9eKD86aHR0cHM/OlwvXC8pPy9pLCIiKS5zcGxpdCgvWz8jXS8pWzBdKTt0PWRBKCJodHRwczovLyIsImh0dHA6Ly8iLHUrZil9Wm4oaCx0LHZvaWQgMCxnKX19fQpmdW5jdGlvbiBqQSgpe0trKCl8fEdiKExrKCksZnVuY3Rpb24oYSxiKXtuQShhLGIudHJhbnNwb3J0VXJsLGIuY29udGV4dCk7UCg5Mil9KX1mdW5jdGlvbiBuQShhLGIsYyxkKXtpZighR2soYSkpaWYoYy5sb2FkRXhwZXJpbWVudHN8fChjLmxvYWRFeHBlcmltZW50cz15aigpKSxLaygpKUprKGEsYixjLGQpO2Vsc2V7SWsoYSxjLGQpO3ZhciBlPXtkZXN0aW5hdGlvbklkOmEsZW5kcG9pbnQ6MH07aWYoV2ooKSl7dmFyIGY9WGooKSxnPSJndGQiK2lBKGEsITApLGg9ZisiLyIra0EoZyxhKTtabihlLGgsdm9pZCAwLGZ1bmN0aW9uKCl7bEEoYSxoLGYrIi8iK2csZSl9KX1lbHNle3ZhciBsPSIvZ3RhZy9kZXN0aW5hdGlvbiIraUEoYSwhMCksbj1tQShiLGwsYSk7bnx8KG49ZEEoImh0dHBzOi8vIiwiaHR0cDovLyIsRSgzKStsKSk7Wm4oZSxuKX19fQpmdW5jdGlvbiBsQShhLGIsYyxkLGUpe2lmKE0oNDEzKSl7Z0EoKTt2YXIgZj1mQTtpZihmbi5OKXt2YXIgZz1BLnBlcmZvcm1hbmNlLGg9LTE7aWYoZyYmZy5nZXRFbnRyaWVzQnlUeXBlKXt2YXIgbD1SaihiKS5ocmVmLG49Zy5nZXRFbnRyaWVzQnlOYW1lKGwpLnBvcCgpO2lmKCFuKWZvcih2YXIgcD1nLmdldEVudHJpZXNCeVR5cGUoInJlc291cmNlIikscT0wO3E8cC5sZW5ndGg7cSsrKXt2YXIgcj1wW3FdO2lmKHIubmFtZSYmci5uYW1lLmluZGV4T2YoYikhPT0tMSl7bj1yO2JyZWFrfX1uJiZuLnJlc3BvbnNlU3RhdHVzIT09dm9pZCAwJiYoaD1uLnJlc3BvbnNlU3RhdHVzKX1mLktbYV09aH1QKDE5MCk7dmFyIHQ9bm0oam0uYmEua2opfHx7fTt0W2FdPSEwO21tKGptLmJhLmtqLHQpO3ZhciB1PWMrKGMuaW5kZXhPZigiPyIpPT09LTE/Ij9mPTEiOiImZj0xIik7ZT9abihkLHUsdm9pZCAwLGUpOlpuKGQsdSl9ZWxzZSBlJiZlKCl9CmZ1bmN0aW9uIGlBKGEsYil7Yj1iPT09dm9pZCAwPyExOmI7dmFyIGM9Ij9pZD0iK2VuY29kZVVSSUNvbXBvbmVudChhKSxkPUUoMTkpO2QhPT0iZGF0YUxheWVyIiYmKGMrPSImbD0iK2QpO3ZhciBlPVNiKGEsIkdUTS0iKTtpZighZXx8YiljKz0iJmN4PWMiO2UmJklmKDYyKSYmKGMrPSImZ29vZ2xlX29ubHk9dHJ1ZSIpO3ZhciBmPWMsZyxoPXtEbzpKZigxNSksSW86RSgxNCl9O2c9Q2YoaCk7Yz1mKygiJmd0bT0iK2cpO2RrKCkmJihjKz0iJnNpZ249IitBai5xaik7dmFyIGw9YyxuPUpmKDU0KTtpZihuPT09MSl7bCs9IiZmcHM9ZmMiO3ZhciBwPUUoNjApO3AmJihsKz0iJmdkZXY9IitwKX1lbHNlIG49PT0yJiYobCs9IiZmcHM9ZmUiKTtyZXR1cm4gbH0KZnVuY3Rpb24ga0EoYSxiKXtpZighTSg0MTMpfHwhWGooKSlyZXR1cm4gYTt2YXIgYz1FKDU4KTtpZighYylyZXR1cm4gUCgxODIpLGE7dHJ5e3ZhciBkPU5iKCksZT1FZihhLGMpLGY9TmIoKS1kO2dBKCk7dmFyIGc9ZkE7Zm4uTiYmKGcuSFtiXT1mKTtyZXR1cm4gZX1jYXRjaChoKXtyZXR1cm4gUCgxODMpLGF9fWZ1bmN0aW9uIG1BKGEsYixjKXtpZihhaygpJiZhKXt2YXIgZD1FKDU4KSxlPVhqKCk7aWYoZCYmZSl0cnl7dmFyIGY9TmIoKTtiPWUrIi8iK0VmKGIsZCk7dmFyIGc9TmIoKS1mO2dBKCk7dmFyIGg9ZkE7Zm4uTiYmKGguSFtjXT1nKX1jYXRjaChsKXtQKDE4Myl9cmV0dXJuIFlqKGEsYil9fTt2YXIgcEE9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSz1uZXcgRmI7dGhpcy5IPXt9O3RoaXMuTj17fTt0aGlzLlI9e25hbWU6RSgxOSksc2V0OmZ1bmN0aW9uKGIsYyl7RWQoVmIoYixjKSxhLkgpO29BKGEpfSxnZXQ6ZnVuY3Rpb24oYil7cmV0dXJuIGEuZ2V0KGIsMil9LHJlc2V0OmZ1bmN0aW9uKCl7YS5LPW5ldyBGYjthLkg9e307b0EoYSl9fX07cEEucHJvdG90eXBlLmdldD1mdW5jdGlvbihhLGIpe3JldHVybiBiIT0yP3RoaXMuSy5nZXQoYSk6cUEodGhpcyxhKX07dmFyIHFBPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1iLnNwbGl0KCIuIik7Yz1jfHxbXTtmb3IodmFyIGU9YS5ILGY9MDtmPGQubGVuZ3RoO2YrKyl7aWYoZT09PW51bGwpcmV0dXJuITE7aWYoZT09PXZvaWQgMClicmVhaztlPWVbZFtmXV07aWYoYy5pbmRleE9mKGUpIT09LTEpcmV0dXJufXJldHVybiBlfTsKcEEucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuTi5oYXNPd25Qcm9wZXJ0eShhKXx8KHRoaXMuSy5zZXQoYSxiKSxFZChWYihhLGIpLHRoaXMuSCksb0EodGhpcykpfTt2YXIgc0E9ZnVuY3Rpb24oKXtmb3IodmFyIGE9WyJndG0uYWxsb3dsaXN0IiwiZ3RtLmJsb2NrbGlzdCIsImd0bS53aGl0ZWxpc3QiLCJndG0uYmxhY2tsaXN0IiwidGFnVHlwZUJsYWNrbGlzdCJdLGI9ckEsYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hW2NdLGU9Yi5nZXQoZCwxKTtpZihBcnJheS5pc0FycmF5KGUpfHxDZChlKSllPUVkKGUsbnVsbCk7Yi5OW2RdPWV9fSxvQT1mdW5jdGlvbihhLGIpe0diKGEuTixmdW5jdGlvbihjLGQpe2EuSy5zZXQoYyxkKTtFZChWYihjKSxhLkgpO0VkKFZiKGMsZCksYS5IKTtiJiZkZWxldGUgYS5OW2NdfSl9LHJBPW5ldyBwQSx0QT1yQS5SO2Z1bmN0aW9uIHVBKGEsYil7cmV0dXJuIHJBLmdldChhLGIpfQpmdW5jdGlvbiB2QShhLGIpe3ZhciBjPWI9PT12b2lkIDA/MjpiLGQ9ckEsZSxmPShjPT09dm9pZCAwPzI6YykhPT0xP3FBKGQsYSk6ZC5LLmdldChhKTtBZChmKT09PSJhcnJheSJ8fEFkKGYpPT09Im9iamVjdCI/ZT1FZChmLG51bGwpOmU9ZjtyZXR1cm4gZX07dmFyIHdBPW5ldyBSZWdFeHAoL14oLipcLik/KGdvb2dsZXx5b3V0dWJlfGJsb2dnZXJ8d2l0aGdvb2dsZSkoXC5jb20/KT8oXC5bYS16XXsyfSk/XC4/JC8pLHhBPXtjbDpbImVjbCJdLGN1c3RvbVBpeGVsczpbIm5vbkdvb2dsZVBpeGVscyJdLGVjbDpbImNsIl0sZWhsOlsiaGwiXSxnYWF3YzpbImdvb2d0YWciXSxobDpbImVobCJdLGh0bWw6WyJjdXN0b21TY3JpcHRzIiwiY3VzdG9tUGl4ZWxzIiwibm9uR29vZ2xlUGl4ZWxzIiwibm9uR29vZ2xlU2NyaXB0cyIsIm5vbkdvb2dsZUlmcmFtZXMiXSxjdXN0b21TY3JpcHRzOlsiaHRtbCIsImN1c3RvbVBpeGVscyIsIm5vbkdvb2dsZVBpeGVscyIsIm5vbkdvb2dsZVNjcmlwdHMiLCJub25Hb29nbGVJZnJhbWVzIl0sbm9uR29vZ2xlUGl4ZWxzOltdLG5vbkdvb2dsZVNjcmlwdHM6WyJub25Hb29nbGVQaXhlbHMiXSxub25Hb29nbGVJZnJhbWVzOlsibm9uR29vZ2xlUGl4ZWxzIl19LHlBPXtjbDpbImVjbCJdLGN1c3RvbVBpeGVsczpbImN1c3RvbVNjcmlwdHMiLAoiaHRtbCJdLGVjbDpbImNsIl0sZWhsOlsiaGwiXSxnYWF3YzpbImdvb2d0YWciXSxobDpbImVobCJdLGh0bWw6WyJjdXN0b21TY3JpcHRzIl0sY3VzdG9tU2NyaXB0czpbImh0bWwiXSxub25Hb29nbGVQaXhlbHM6WyJjdXN0b21QaXhlbHMiLCJjdXN0b21TY3JpcHRzIiwiaHRtbCIsIm5vbkdvb2dsZVNjcmlwdHMiLCJub25Hb29nbGVJZnJhbWVzIl0sbm9uR29vZ2xlU2NyaXB0czpbImN1c3RvbVNjcmlwdHMiLCJodG1sIl0sbm9uR29vZ2xlSWZyYW1lczpbImN1c3RvbVNjcmlwdHMiLCJodG1sIiwibm9uR29vZ2xlU2NyaXB0cyJdfSx6QT0iZ29vZ2xlIGN1c3RvbVBpeGVscyBjdXN0b21TY3JpcHRzIGh0bWwgbm9uR29vZ2xlUGl4ZWxzIG5vbkdvb2dsZVNjcmlwdHMgbm9uR29vZ2xlSWZyYW1lcyIuc3BsaXQoIiAiKTsKZnVuY3Rpb24gQUEoKXt2YXIgYT11QSgiZ3RtLmFsbG93bGlzdCIpfHx1QSgiZ3RtLndoaXRlbGlzdCIpO2EmJlAoOSk7SWYoNjIpJiYoYT12b2lkIDApO0JBKCkmJihJZig2Mik/UCgxMTYpOihQKDExNyksSWYoNDgpJiYoYT1bXSx3aW5kb3cuY29uc29sZSYmd2luZG93LmNvbnNvbGUubG9nJiZ3aW5kb3cuY29uc29sZS5sb2coIkdUTSBibG9ja2VkLiBTZWUgZ28vMTM2ODc3MjguIikpKSk7dmFyIGI9YSYmUmIoS2IoYSkseEEpLGM9dUEoImd0bS5ibG9ja2xpc3QiKXx8dUEoImd0bS5ibGFja2xpc3QiKTtjfHwoYz11QSgidGFnVHlwZUJsYWNrbGlzdCIpKSYmUCgzKTtjP1AoOCk6Yz1bXTtCQSgpJiYoYz1LYihjKSxjLnB1c2goIm5vbkdvb2dsZVBpeGVscyIsIm5vbkdvb2dsZVNjcmlwdHMiLCJzYW5kYm94ZWRTY3JpcHRzIikpO0tiKGMpLmluZGV4T2YoImdvb2dsZSIpPj0wJiZQKDIpO3ZhciBkPWMmJlJiKEtiKGMpLHlBKSxlPXt9O3JldHVybiBmdW5jdGlvbihmKXt2YXIgZz1mJiYKZltHZi5ZYl07aWYoIWd8fHR5cGVvZiBnIT09InN0cmluZyIpcmV0dXJuITA7Zz1nLnJlcGxhY2UoL15fKi8sIiIpO2lmKGVbZ10hPT12b2lkIDApcmV0dXJuIGVbZ107dmFyIGg9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pW2ddfHxbXSxsPSEwO2EmJihsPWwmJkNBKGcsaCxiKSk7dmFyIG49ITE7YyYmKG49REEoZyxoLGQpKTt2YXIgcD0hbHx8bjshcCYmKGguaW5kZXhPZigic2FuZGJveGVkU2NyaXB0cyIpPT09LTF8fGImJmIuaW5kZXhPZigic2FuZGJveGVkU2NyaXB0cyIpIT09LTE/MDpFYihkLHpBKSkmJihwPSEwKTtyZXR1cm4gZVtnXT1wfX1mdW5jdGlvbiBDQShhLGIsYyl7aWYoYy5pbmRleE9mKGEpPDApaWYoYiYmYi5sZW5ndGg+MClmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7aWYoYy5pbmRleE9mKGJbZF0pPDApcmV0dXJuIFAoMTEpLCExfWVsc2UgcmV0dXJuITE7cmV0dXJuITB9CmZ1bmN0aW9uIERBKGEsYixjKXt2YXIgZD1jLmluZGV4T2YoYSk+PTA7aWYoZClyZXR1cm4gZDt2YXIgZT1FYihjLGJ8fFtdKTtlJiZQKDEwKTtyZXR1cm4gZX1mdW5jdGlvbiBCQSgpe3JldHVybiB3QS50ZXN0KEEubG9jYXRpb24mJkEubG9jYXRpb24uaG9zdG5hbWUpfTtmdW5jdGlvbiBFQShhKXtmb3IodmFyIGI9W10sYz1bXSxkPUZBKGEpLGU9bShjQS5nZXRSdWxlcygpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7Zm9yKHZhciBnPWYudmFsdWUuZXZhbHVhdGUoYSxkKSxoPWcuZmlyaW5nVGFncyxsPWcuYmxvY2tpbmdUYWdzLG49MDtuPGgubGVuZ3RoO24rKyliW2hbbl1dPSEwO2Zvcih2YXIgcD0wO3A8bC5sZW5ndGg7cCsrKWNbbFtwXV09ITB9Zm9yKHZhciBxPVtdLHI9MDtyPGNBLnRhZ3MubGVuZ3RoO3IrKyliW3JdJiYhY1tyXSYmKHFbcl09ITApO3JldHVybiBxfWZ1bmN0aW9uIEZBKGEpe3ZhciBiPVtdO3JldHVybiBmdW5jdGlvbihjKXtiW2NdPT09dm9pZCAwJiYoYltjXT1jQS5wcmVkaWNhdGVzW2NdLmV2YWx1YXRlKGEsW10pKTtyZXR1cm4gYltjXX19O3ZhciBHQT1mdW5jdGlvbigpe3RoaXMuSz0wO3RoaXMuSD17fX07R0EucHJvdG90eXBlLmFkZExpc3RlbmVyPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0rK3RoaXMuSzt0aGlzLkhbYV09dGhpcy5IW2FdfHx7fTt0aGlzLkhbYV1bU3RyaW5nKGQpXT17bGlzdGVuZXI6YixyZjpjfTtyZXR1cm4gZH07R0EucHJvdG90eXBlLnJlbW92ZUxpc3RlbmVyPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5IW2FdLGQ9U3RyaW5nKGIpO2lmKCFjfHwhY1tkXSlyZXR1cm4hMTtkZWxldGUgY1tkXTtyZXR1cm4hMH07dmFyIElBPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107R2IoSEEuSFthXSxmdW5jdGlvbihkLGUpe2MuaW5kZXhPZihlLmxpc3RlbmVyKTwwJiYoZS5yZj09PXZvaWQgMHx8Yi5pbmRleE9mKGUucmYpPj0wKSYmYy5wdXNoKGUubGlzdGVuZXIpfSk7cmV0dXJuIGN9O2Z1bmN0aW9uIEpBKGEsYixjKXtyZXR1cm57ZW50aXR5VHlwZTphLGluZGV4SW5PcmlnaW5Db250YWluZXI6YixuYW1lSW5PcmlnaW5Db250YWluZXI6YyxvcmlnaW5Db250YWluZXJJZDpFKDUpLG9yaWdpbkNJZDp2aygpfX07ZnVuY3Rpb24gS0EoYSxiKXtpZihkYXRhLmVudGl0aWVzKXt2YXIgYz1kYXRhLmVudGl0aWVzW2FdO2lmKGMpcmV0dXJuIGNbYl19fTt2YXIgTUE9ZnVuY3Rpb24oYSxiKXt0aGlzLkg9ITE7dGhpcy5SPVtdO3RoaXMuZXZlbnREYXRhPXt0YWdzOltdfTt0aGlzLlo9ITE7dGhpcy5LPXRoaXMuTj0wO0xBKHRoaXMsYSxiKX0sTkE9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoQ2ouaGFzT3duUHJvcGVydHkoYil8fGI9PT0iX196b25lIilyZXR1cm4tMTt2YXIgZT17fTtDZChkKSYmKGU9RWQoZCxlKSk7ZS5pZD1jO2Uuc3RhdHVzPSJ0aW1lb3V0IjtyZXR1cm4gYS5ldmVudERhdGEudGFncy5wdXNoKGUpLTF9LE9BPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWEuZXZlbnREYXRhLnRhZ3NbYl07ZSYmKGUuc3RhdHVzPWMsZS5leGVjdXRpb25UaW1lPWQpfSxQQT1mdW5jdGlvbihhKXtpZighYS5IKXtmb3IodmFyIGI9YS5SLGM9MDtjPGIubGVuZ3RoO2MrKyliW2NdKCk7YS5IPSEwO2EuUi5sZW5ndGg9MH19LExBPWZ1bmN0aW9uKGEsYixjKXtiIT09dm9pZCAwJiZhLndnKGIpO2MmJkEuc2V0VGltZW91dChmdW5jdGlvbigpe1BBKGEpfSwKTnVtYmVyKGMpKX07TUEucHJvdG90eXBlLndnPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1QYihmdW5jdGlvbigpe2JkKGZ1bmN0aW9uKCl7YShFKDUpLGIuZXZlbnREYXRhKX0pfSk7dGhpcy5IP2MoKTp0aGlzLlIucHVzaChjKX07dmFyIFFBPWZ1bmN0aW9uKGEpe2EuTisrO3JldHVybiBQYihmdW5jdGlvbigpe2EuSysrO2EuWiYmYS5LPj1hLk4mJlBBKGEpfSl9LFJBPWZ1bmN0aW9uKGEpe2EuWj0hMDthLks+PWEuTiYmUEEoYSl9O2Z1bmN0aW9uIFNBKCl7cmV0dXJuIEFbVEEoKV19CmZ1bmN0aW9uIFRBKCl7cmV0dXJuIEEuR29vZ2xlQW5hbHl0aWNzT2JqZWN0fHwiZ2EifXZhciBXQT1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9e319O2Z1bmN0aW9uIFhBKCl7YTp7dmFyIGE9RSg1KTt9fQpmdW5jdGlvbiBZQShhLGIpe3JldHVybiBmdW5jdGlvbigpe3ZhciBjPVNBKCksZD1jJiZjLmdldEJ5TmFtZSYmYy5nZXRCeU5hbWUoYSk7aWYoZCl7dmFyIGU9ZC5nZXQoInNlbmRIaXRUYXNrIik7ZC5zZXQoInNlbmRIaXRUYXNrIixmdW5jdGlvbihmKXt2YXIgZz1mLmdldCgiaGl0UGF5bG9hZCIpLGg9Zi5nZXQoImhpdENhbGxiYWNrIiksbD1nLmluZGV4T2YoIiZ0aWQ9IitiKTwwO2wmJihmLnNldCgiaGl0UGF5bG9hZCIsZy5yZXBsYWNlKC8mdGlkPVVBLVswLTldKy1bMC05XSsvLCImdGlkPSIrYiksITApLGYuc2V0KCJoaXRDYWxsYmFjayIsdm9pZCAwLCEwKSk7ZShmKTtsJiYoZi5zZXQoImhpdFBheWxvYWQiLGcsITApLGYuc2V0KCJoaXRDYWxsYmFjayIsaCwhMCksZi5zZXQoIl94XzE5Iix2b2lkIDAsITApLGUoZikpfSl9fX07dmFyIGFCPVsiZXMiLCIxIl0sYkI9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuZXZlbnREYXRhPXt9O3RoaXMuSD17fTtmeihmdW5jdGlvbihiKXt2YXIgYzt2YXIgZD1iLmV2ZW50SWQsZT1iLnRmO2lmKGEuZXZlbnREYXRhW2RdKXt2YXIgZj1bXTthLkhbZF18fGYucHVzaChhQik7Zi5wdXNoLmFwcGx5KGYsdyhhLmV2ZW50RGF0YVtkXSkpO2UmJihhLkhbZF09ITApO2M9Zn1lbHNlIGM9W107cmV0dXJuIGN9KX0sY0I7ZnVuY3Rpb24gZEIoYSxiKXt2YXIgYztpZigoYz1jQikhPW51bGwmJmZuLk4pe3ZhciBkPWMuZXZlbnREYXRhLGU7ZT1iLm1hdGNoKC9eKGd0bXxndGFnKVwuLyk/ZW5jb2RlVVJJQ29tcG9uZW50KGIpOiIqIjtkW2FdPVtbImUiLGVdLFsiZWlkIixTdHJpbmcoYSldXTtneigpO2V6KGEpfX07dmFyIGVCPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLkg9e307dGhpcy5LPXt9O2Z6KGZ1bmN0aW9uKGIpe3ZhciBjPWIuZXZlbnRJZCxkPWIudGYsZT1bXSxmPWEuSFtjXXx8W107Zi5sZW5ndGgmJmUucHVzaChbInRyIixmLmpvaW4oIi4iKV0pO3ZhciBnPWEuS1tjXXx8W107Zy5sZW5ndGgmJmUucHVzaChbInRpIixnLmpvaW4oIi4iKV0pO2QmJihkZWxldGUgYS5IW2NdLGRlbGV0ZSBhLktbY10pO3JldHVybiBlfSl9LGZCOwpmdW5jdGlvbiBnQihhLGIsYyl7ZkJ8fChmQj1uZXcgZUIpO3ZhciBkPWZCO2lmKGZuLk4mJmIpe3ZhciBlPWRuKGIpO2QuSFthXT1kLkhbYV18fFtdO2QuSFthXS5wdXNoKGMrZSk7dmFyIGY9YltHZi5ZYl07aWYoIWYpdGhyb3cgRXJyb3IoIkVycm9yOiBObyBmdW5jdGlvbiBuYW1lIGdpdmVuIGZvciBmdW5jdGlvbiBjYWxsLiIpO3ZhciBnPShReltmXT8iMSI6IjIiKStlO2QuS1thXT1kLktbYV18fFtdO2QuS1thXS5wdXNoKGcpO2d6KCk7ZXooYSl9fTtmdW5jdGlvbiBoQihhLGIsYyl7Yz1jPT09dm9pZCAwPyExOmM7aUIoKS5hZGRSZXN0cmljdGlvbigwLGEsYixjKX1mdW5jdGlvbiBqQigpe3ZhciBhPXZrKCk7cmV0dXJuIGlCKCkuZ2V0UmVzdHJpY3Rpb25zKDAsYSl9ZnVuY3Rpb24ga0IoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO2lCKCkuYWRkUmVzdHJpY3Rpb24oMSxhLGIsYyl9ZnVuY3Rpb24gbEIoKXt2YXIgYT12aygpO3JldHVybiBpQigpLmdldFJlc3RyaWN0aW9ucygxLGEpfXZhciBtQj1mdW5jdGlvbigpe3RoaXMuY29udGFpbmVyPXt9O3RoaXMuSD17fX0sbkI9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLmNvbnRhaW5lcltiXTtjfHwoYz17X2VudGl0eTp7aW50ZXJuYWw6W10sZXh0ZXJuYWw6W119LF9ldmVudDp7aW50ZXJuYWw6W10sZXh0ZXJuYWw6W119fSxhLmNvbnRhaW5lcltiXT1jKTtyZXR1cm4gY307Cm1CLnByb3RvdHlwZS5hZGRSZXN0cmljdGlvbj1mdW5jdGlvbihhLGIsYyxkKXtkPWQ9PT12b2lkIDA/ITE6ZDtpZighZHx8IXRoaXMuSFtiXSl7dmFyIGU9bkIodGhpcyxiKTthPT09MD9kP2UuX2VudGl0eS5leHRlcm5hbC5wdXNoKGMpOmUuX2VudGl0eS5pbnRlcm5hbC5wdXNoKGMpOmE9PT0xJiYoZD9lLl9ldmVudC5leHRlcm5hbC5wdXNoKGMpOmUuX2V2ZW50LmludGVybmFsLnB1c2goYykpfX07Cm1CLnByb3RvdHlwZS5nZXRSZXN0cmljdGlvbnM9ZnVuY3Rpb24oYSxiKXt2YXIgYz1uQih0aGlzLGIpO2lmKGE9PT0wKXt2YXIgZCxlO3JldHVybltdLmNvbmNhdCh3KChjPT1udWxsP3ZvaWQgMDooZD1jLl9lbnRpdHkpPT1udWxsP3ZvaWQgMDpkLmludGVybmFsKXx8W10pLHcoKGM9PW51bGw/dm9pZCAwOihlPWMuX2VudGl0eSk9PW51bGw/dm9pZCAwOmUuZXh0ZXJuYWwpfHxbXSkpfWlmKGE9PT0xKXt2YXIgZixnO3JldHVybltdLmNvbmNhdCh3KChjPT1udWxsP3ZvaWQgMDooZj1jLl9ldmVudCk9PW51bGw/dm9pZCAwOmYuaW50ZXJuYWwpfHxbXSksdygoYz09bnVsbD92b2lkIDA6KGc9Yy5fZXZlbnQpPT1udWxsP3ZvaWQgMDpnLmV4dGVybmFsKXx8W10pKX1yZXR1cm5bXX07Cm1CLnByb3RvdHlwZS5nZXRFeHRlcm5hbFJlc3RyaWN0aW9ucz1mdW5jdGlvbihhLGIpe3ZhciBjPW5CKHRoaXMsYiksZCxlO3JldHVybiBhPT09MD8oYz09bnVsbD92b2lkIDA6KGQ9Yy5fZW50aXR5KT09bnVsbD92b2lkIDA6ZC5leHRlcm5hbCl8fFtdOihjPT1udWxsP3ZvaWQgMDooZT1jLl9ldmVudCk9PW51bGw/dm9pZCAwOmUuZXh0ZXJuYWwpfHxbXX07bUIucHJvdG90eXBlLnJlbW92ZUV4dGVybmFsUmVzdHJpY3Rpb25zPWZ1bmN0aW9uKGEpe3ZhciBiPW5CKHRoaXMsYSk7Yi5fZXZlbnQmJihiLl9ldmVudC5leHRlcm5hbD1bXSk7Yi5fZW50aXR5JiYoYi5fZW50aXR5LmV4dGVybmFsPVtdKTt0aGlzLkhbYV09ITB9O2Z1bmN0aW9uIGlCKCl7cmV0dXJuIGtqKCJyIixmdW5jdGlvbigpe3JldHVybiBuZXcgbUJ9KX07ZnVuY3Rpb24gb0IoYSxiLGMsZCl7dmFyIGU9Y0EudGFnc1thXSxmPXBCKGEsYixjLGQpO2lmKCFmKXJldHVybiBudWxsO3ZhciBnPVp6KGUsYyk7aWYoZyYmZy5sZW5ndGgpe3ZhciBoPWdbMF07Zj1vQihoLmluZGV4LHtvblN1Y2Nlc3M6ZixvbkZhaWx1cmU6aC5ibz09PTE/Yi50ZXJtaW5hdGU6Zix0ZXJtaW5hdGU6Yi50ZXJtaW5hdGV9LGMsZCl9cmV0dXJuIGZ9CmZ1bmN0aW9uIHBCKGEsYixjLGQpe2Z1bmN0aW9uIGUoKXtmdW5jdGlvbiB5KCl7aW0oMyk7dmFyIFM9TmIoKS1OO0pBKDEsYSxmLmdldE5hbWUoKSk7Z0IoYy5pZCxnLCI3Iik7T0EoYy5sZCxELCJleGNlcHRpb24iLFMpO2ZuLkgmJkZ6KGMsZyxJeS5YLnVqKTtJfHwoST0hMCxsKCkpfWlmKGYuSWFbR2YuT3FdKWwoKTtlbHNle3ZhciB6PWFBKGYsYyk7aWYoeiE9bnVsbClmb3IodmFyIEM9MDtDPHoubGVuZ3RoO0MrKylpZighWG8oeltDXSkpe2woKTtyZXR1cm59dmFyIEQ9TkEoYy5sZCxmLk8sZi50YWdJZCxmLmdldE1ldGFkYXRhKGMpKSxJPSExLEc9e3Z0cF9ndG1PblN1Y2Nlc3M6ZnVuY3Rpb24oKXtpZighSSl7ST0hMDt2YXIgUz1OYigpLU47Z0IoYy5pZCxnLCI1Iik7T0EoYy5sZCxELCJzdWNjZXNzIixTKTtmbi5IJiZGeihjLGcsSXkuWC53aik7aCgpfX0sdnRwX2d0bU9uRmFpbHVyZTpmdW5jdGlvbigpe2lmKCFJKXtJPSEwO3ZhciBTPU5iKCktTjtnQihjLmlkLGcsIjYiKTsKT0EoYy5sZCxELCJmYWlsdXJlIixTKTtmbi5IJiZGeihjLGcsSXkuWC52aik7bCgpfX19O0cudnRwX2d0bUV2ZW50SWQ9Yy5pZDtjLnByaW9yaXR5SWQmJihHLnZ0cF9ndG1Qcmlvcml0eUlkPWMucHJpb3JpdHlJZCk7Z0IoYy5pZCxnLCIxIik7Zm4uSCYmRXooYyxnKTt2YXIgTj1OYigpO3RyeXtmLmV2YWx1YXRlKGMsZCxHKX1jYXRjaChTKXt5KFMpfWZuLkgmJkZ6KGMsZyxJeS5YLkNuKX19dmFyIGY9Y0EudGFnc1thXSxnPWYuRmcoKSxoPWIub25TdWNjZXNzLGw9Yi5vbkZhaWx1cmUsbj1iLnRlcm1pbmF0ZTtpZihjLmlzQmxvY2tlZChnKSlyZXR1cm4gbnVsbDt2YXIgcD0keihmLGMpO2lmKHAmJnAubGVuZ3RoKXt2YXIgcT1wWzBdLHI9b0IocS5pbmRleCx7b25TdWNjZXNzOmgsb25GYWlsdXJlOmwsdGVybWluYXRlOm59LGMsZCk7aWYoIXIpcmV0dXJuIG51bGw7aD1yO2w9cS5ibz09PTI/bjpyfWlmKGYuSWFbR2Yua25dfHxmLklhW0dmLlFxXSl7dmFyIHQ9Zi5JYVtHZi5rbl0/CmNBLnZrOmMudmssdT1oLHY9bDtpZighdFthXSl7dmFyIHg9cUIoYSx0LFBiKGUpKTtoPXgub25TdWNjZXNzO2w9eC5vbkZhaWx1cmV9cmV0dXJuIGZ1bmN0aW9uKCl7dFthXSh1LHYpfX1yZXR1cm4gZX1mdW5jdGlvbiBxQihhLGIsYyl7dmFyIGQ9W10sZT1bXTtiW2FdPXJCKGQsZSxjKTtyZXR1cm57b25TdWNjZXNzOmZ1bmN0aW9uKCl7YlthXT1zQjtmb3IodmFyIGY9MDtmPGQubGVuZ3RoO2YrKylkW2ZdKCl9LG9uRmFpbHVyZTpmdW5jdGlvbigpe2JbYV09dEI7Zm9yKHZhciBmPTA7ZjxlLmxlbmd0aDtmKyspZVtmXSgpfX19ZnVuY3Rpb24gckIoYSxiLGMpe3JldHVybiBmdW5jdGlvbihkLGUpe2EucHVzaChkKTtiLnB1c2goZSk7YygpfX1mdW5jdGlvbiBzQihhKXthKCl9ZnVuY3Rpb24gdEIoYSxiKXtiKCl9O3ZhciB3Qj1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDxjQS50YWdzLmxlbmd0aDtkKyspaWYoYVtkXSl7dmFyIGU9Y0EudGFnc1tkXTt2YXIgZj1RQShiLmxkKTt0cnl7dmFyIGc9b0IoZCx7b25TdWNjZXNzOmYsb25GYWlsdXJlOmYsdGVybWluYXRlOmZ9LGIsZCk7aWYoZyl7dmFyIGg9UXpbZS5PXTtjLnB1c2goe05vOmQscHJpb3JpdHlPdmVycmlkZTooaD9oLnByaW9yaXR5T3ZlcnJpZGV8fDA6MCl8fEtBKGUuTywxKXx8MCxleGVjdXRlOmd9KX1lbHNlIHVCKGQsYiksZigpfWNhdGNoKG4pe2YoKX19Yy5zb3J0KHZCKTtmb3IodmFyIGw9MDtsPGMubGVuZ3RoO2wrKyljW2xdLmV4ZWN1dGUoKTtyZXR1cm4gYy5sZW5ndGg+MH07CmZ1bmN0aW9uIHhCKGEsYil7aWYoIUhBKXJldHVybiExO3ZhciBjPWFbImd0bS50cmlnZ2VycyJdJiZTdHJpbmcoYVsiZ3RtLnRyaWdnZXJzIl0pLGQ9SUEoYS5ldmVudCxjP1N0cmluZyhjKS5zcGxpdCgiLCIpOltdKTtpZighZC5sZW5ndGgpcmV0dXJuITE7Zm9yKHZhciBlPTA7ZTxkLmxlbmd0aDsrK2Upe3ZhciBmPVFBKGIpO3RyeXtkW2VdKGEsZil9Y2F0Y2goZyl7ZigpfX1yZXR1cm4hMH1mdW5jdGlvbiB2QihhLGIpe3ZhciBjLGQ9Yi5wcmlvcml0eU92ZXJyaWRlLGU9YS5wcmlvcml0eU92ZXJyaWRlO2M9ZD5lPzE6ZDxlPy0xOjA7dmFyIGY7aWYoYyE9PTApZj1jO2Vsc2V7dmFyIGc9YS5ObyxoPWIuTm87Zj1nPmg/MTpnPGg/LTE6MH1yZXR1cm4gZn0KZnVuY3Rpb24gdUIoYSxiKXtpZihmbi5OKXt2YXIgYz1mdW5jdGlvbihkKXt2YXIgZT1iLmlzQmxvY2tlZChjQS50YWdzW2RdLkZnKCkpPyIzIjoiNCIsZj1aeihjQS50YWdzW2RdLGIpO2YmJmYubGVuZ3RoJiZjKGZbMF0uaW5kZXgpO2dCKGIuaWQsY0EudGFnc1tkXS5GZygpLGUpO3ZhciBnPSR6KGNBLnRhZ3NbZF0sYik7ZyYmZy5sZW5ndGgmJmMoZ1swXS5pbmRleCl9O2MoYSl9fXZhciBIQTtmdW5jdGlvbiB5Qigpe0hBfHwoSEE9bmV3IEdBKTtyZXR1cm4gSEF9CmZ1bmN0aW9uIHpCKGEpe3ZhciBiPWFbImd0bS51bmlxdWVFdmVudElkIl0sYz1hWyJndG0ucHJpb3JpdHlJZCJdLGQ9YVsiZ3RtLnByaW9yaXR5UXVldWUiXSxlPWEuZXZlbnQ7Zm4uSCYmdnooYixlKTtpZihlPT09Imd0bS5qcyIpe2lmKCRrKDEzKSlyZXR1cm4hMTtaaygxMywhMCl9dmFyIGY9ITEsZz1sQigpLGg9RWQoYSxudWxsKTtpZighZy5ldmVyeShmdW5jdGlvbih1KXtyZXR1cm4gdSh7b3JpZ2luYWxFdmVudERhdGE6aH0pfSkpe2lmKGUhPT0iZ3RtLmpzIiYmZSE9PSJndG0uaW5pdCImJmUhPT0iZ3RtLmluaXRfY29uc2VudCIpcmV0dXJuITE7Zj0hMH1kQihiLGUpO3ZhciBsPWEuZXZlbnRDYWxsYmFjayxuPWEuZXZlbnRUaW1lb3V0LHA9e2lkOmIscHJpb3JpdHlJZDpjLHByaW9yaXR5UXVldWU6ZCxuYW1lOmUsaXNCbG9ja2VkOkFCKGgsZiksdms6W10sbG9nTWFjcm9FcnJvcjpmdW5jdGlvbih1LHYseCl7UCg2KTtpbSg0KTtKQSgyLHYseCl9LGNhY2hlZE1vZGVsVmFsdWVzOkJCKCksCmxkOm5ldyBNQShmdW5jdGlvbigpe2ZuLkgmJnl6KGIsZSk7RnkoNSxlKTtsJiZsLmFwcGx5KGwsQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDApKX0sbiksb3JpZ2luYWxFdmVudERhdGE6aH07Zm4uSCYmQ3oocC5pZCk7dmFyIHE9RUEocCk7Zm4uSCYmRHoocC5pZCk7RnkoMixlKTtjQS5nZXRSdWxlcygpO2YmJihxPUNCKHEpKTtmbi5IJiZ3eihiKTt2YXIgcj13QihxLHApO3ImJkZ5KDQsZSk7dmFyIHQ9eEIoYSxwLmxkKTtSQShwLmxkKTtlIT09Imd0bS5qcyImJmUhPT0iZ3RtLnN5bmMifHxYQSgpO3JldHVybiBEQihxLHIpfHx0fQpmdW5jdGlvbiBCQigpe3ZhciBhPXt9O2EuZXZlbnQ9dkEoImV2ZW50IiwxKTthLmVjb21tZXJjZT12QSgiZWNvbW1lcmNlIiwxKTthLmd0bT12QSgiZ3RtIik7YS5ldmVudE1vZGVsPXZBKCJldmVudE1vZGVsIik7cmV0dXJuIGF9CmZ1bmN0aW9uIEFCKGEsYil7dmFyIGM9QUEoKTtyZXR1cm4gZnVuY3Rpb24oZCl7dmFyIGU9YyhkKTtpZihlKXJldHVybiEwO3ZhciBmPWQmJmRbR2YuWWJdO2lmKCFmfHx0eXBlb2YgZiE9PSJzdHJpbmciKXJldHVybiEwO2Y9Zi5yZXBsYWNlKC9eXyovLCIiKTt2YXIgZz1qQigpLGg9YTtiJiYoaD1FZChhLG51bGwpLGhbImd0bS51bmlxdWVFdmVudElkIl09TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpO2Zvcih2YXIgbD0hMSxuPWFsKDI3LGZ1bmN0aW9uKCl7cmV0dXJue319KVtmXXx8W10scD1tKGcpLHE9cC5uZXh0KCk7IXEuZG9uZTtxPXAubmV4dCgpKXt2YXIgcj1xLnZhbHVlO3RyeXtyKHtlbnRpdHlJZDpmLHNlY3VyaXR5R3JvdXBzOm4sb3JpZ2luYWxFdmVudERhdGE6aH0pfHwobD0hMCl9Y2F0Y2godCl7bD0hMH19cmV0dXJuIGx8fGV9fQpmdW5jdGlvbiBDQihhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKWlmKGFbY10pe3ZhciBkPWNBLnRhZ3NbY10uTztpZihCaltkXXx8Y0EudGFnc1tjXS5JYVtHZi5ScV0hPT12b2lkIDB8fEtBKGQsMikpYltjXT0hMH1yZXR1cm4gYn1mdW5jdGlvbiBEQihhLGIpe2lmKCFiKXJldHVybiBiO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGFbY10mJmNBLnRhZ3NbY10mJiFDaltjQS50YWdzW2NdLk9dKXJldHVybiEwO3JldHVybiExfTt2YXIgRUI9TmYoNjEsMUUzKSxGQj1OZig2OCwyRTMpLFpvPVsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIl07ZnVuY3Rpb24gR0IoYSxiKXtpZihhKXt2YXIgYz1raigiZ3RoIixmdW5jdGlvbigpe3JldHVybnt9fSksZDthIT09Mnx8KChkPUhCKCkpPT1udWxsP3ZvaWQgMDpkLnN0YXR1cykhPT0zfHxiIT09dm9pZCAwJiZiPD1GQnx8KGE9MyxjLmRsPWI/TWF0aC5mbG9vcihiLzFFMyk6dm9pZCAwKTtjLnM9YTtJQihjKX19ZnVuY3Rpb24gSUIoYSl7aWYoYS5zKXt2YXIgYj1mdW5jdGlvbigpe3ZhciBjPXtzdGF0dXM6YS5zLGV4cGlyZXM6RGF0ZS5ub3coKSs4NjRFNX07YS5kbCE9PXZvaWQgMCYmKGMuZGVsYXk9YS5kbCk7a3IoImd0Z19sb2FkX3N0YXR1cyIsYyl9O2JwKGZ1bmN0aW9uKCl7aWYoWW8oKSliKCk7ZWxzZSBmb3IodmFyIGM9UGIoYiksZD1tKFpvKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSlJbChjLGUudmFsdWUpfSxabyl9fQpmdW5jdGlvbiBKQigpe3ZhciBhPUtCKCEwKTtyZXR1cm4gYT8oTEIoYS5zdGF0dXMsYS5kZWxheSksITEpOiEwfWZ1bmN0aW9uIEtCKGEpe2E9YT09PXZvaWQgMD8hMTphO2lmKGFrKCkpe3ZhciBiPW5yKCJndGdfbG9hZF9zdGF0dXMiKSxjPWIudmFsdWUsZD1hJiZBYihjPT1udWxsP3ZvaWQgMDpjLmV4cGlyZXMpJiYoYz09bnVsbD92b2lkIDA6Yy5leHBpcmVzKTxEYXRlLm5vdygpKzM2RTU7aWYoYi5lcnJvcj09PTAmJkFiKGM9PW51bGw/dm9pZCAwOmMuc3RhdHVzKSYmIWQpe3ZhciBlPXtzdGF0dXM6Yy5zdGF0dXN9OyhjPT1udWxsP3ZvaWQgMDpjLmRlbGF5KSE9PXZvaWQgMCYmKGUuZGVsYXk9Yy5kZWxheSk7cmV0dXJuIGV9cmV0dXJuIEhCKCl9fWZ1bmN0aW9uIExCKGEsYil7dmFyIGM9a2ooImd0aCIsZnVuY3Rpb24oKXtyZXR1cm57fX0pO2Mucz1hO2IhPT12b2lkIDAmJihjLmRsPWIpfQpmdW5jdGlvbiBIQigpe3ZhciBhPW1qKCJndGgiKTtpZihhIT1udWxsJiZhLnMpe3ZhciBiPXtzdGF0dXM6YS5zfTthLmRsIT09dm9pZCAwJiYoYi5kZWxheT1hLmRsKTtyZXR1cm4gYn19ZnVuY3Rpb24gTUIoKXt2YXIgYTsoKGE9SEIoKSk9PW51bGw/dm9pZCAwOmEuc3RhdHVzKT09PTEmJkdCKDMpfWZ1bmN0aW9uIE5CKCl7aWYoSkIoKSl7dmFyIGE9RGF0ZS5ub3coKTtuaigiZ3RoIix7bDpmdW5jdGlvbigpe0dCKDIsRGF0ZS5ub3coKS1hKX0sczoxfSk7dmFyIGI9RSg1KSxjPVNiKGIsIkdUTS0iKT8iL2d0bS5qcyI6Ii9ndGFnL2pzIixkPSJodHRwczovLyIrRSgzKStjKyI/aWQ9IitiKyImZ3RnX2hlYWx0aD0xIjtVYyhkLE1CLE1CKTtBLnNldFRpbWVvdXQoTUIsRUIpfX07ZnVuY3Rpb24gT0IoKXt5QigpLmFkZExpc3RlbmVyKCJndG0uaW5pdCIsZnVuY3Rpb24oYSxiKXtaaygyNiwhMCk7TSg1NTYpJiZhaygpJiYhSWYoNDUpJiYoZm8uSFtjby5pYS5aYl09Ym8uTWEuTGgpO2lmKGFrKCkpe3ZhciBjO2M9bG8oY28uaWEuWmIpO2dvKGMpP2lvKGMsTkIpOk5CKCl9dG8oITEsITApO2IoKX0pfTtmdW5jdGlvbiBQQigpe2lmKG1qKCJwc2NkbCIpIT09dm9pZCAwKW5tKGptLmJhLm9pKT09PXZvaWQgMCYmbW0oam0uYmEub2ksbWooInBzY2RsIikpO2Vsc2V7dmFyIGE9ZnVuY3Rpb24oYyl7bmooInBzY2RsIixjKTttbShqbS5iYS5vaSxjKX0sYj1mdW5jdGlvbigpe2EoImVycm9yIil9O3RyeXtIYy5jb29raWVEZXByZWNhdGlvbkxhYmVsPyhhKCJwZW5kaW5nIiksSGMuY29va2llRGVwcmVjYXRpb25MYWJlbC5nZXRWYWx1ZSgpLnRoZW4oYSkuY2F0Y2goYikpOmEoIm5vYXBpIil9Y2F0Y2goYyl7YihjKX19fTt2YXIgUkI9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMucmVhZHk9ITE7dGhpcy5LPTA7dGhpcy5IPVtdO3ZhciBiPUE7aWYoQi5yZWFkeVN0YXRlPT09ImludGVyYWN0aXZlIiYmIUIuY3JlYXRlRXZlbnRPYmplY3R8fEIucmVhZHlTdGF0ZT09PSJjb21wbGV0ZSIpdGhpcy5vblJlYWR5KCk7ZWxzZXskYyhCLCJET01Db250ZW50TG9hZGVkIixmdW5jdGlvbihkKXtyZXR1cm4gdm9pZCBhLm9uUmVhZHkoZCl9KTskYyhCLCJyZWFkeXN0YXRlY2hhbmdlIixmdW5jdGlvbihkKXtyZXR1cm4gdm9pZCBhLm9uUmVhZHkoZCl9KTtpZihCLmNyZWF0ZUV2ZW50T2JqZWN0JiZCLmRvY3VtZW50RWxlbWVudC5kb1Njcm9sbCl7dmFyIGM9ITA7dHJ5e2M9IWIuZnJhbWVFbGVtZW50fWNhdGNoKGQpe31jJiZRQih0aGlzKX0kYyhiLCJsb2FkIixmdW5jdGlvbihkKXtyZXR1cm4gdm9pZCBhLm9uUmVhZHkoZCl9KX19O1JCLnByb3RvdHlwZS5pc1JlYWR5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucmVhZHl9OwpSQi5wcm90b3R5cGUub25SZWFkeT1mdW5jdGlvbihhKXtpZighdGhpcy5yZWFkeSl7dmFyIGI9Qi5jcmVhdGVFdmVudE9iamVjdCxjPUIucmVhZHlTdGF0ZT09PSJjb21wbGV0ZSIsZD1CLnJlYWR5U3RhdGU9PT0iaW50ZXJhY3RpdmUiO2lmKCFhfHxhLnR5cGUhPT0icmVhZHlzdGF0ZWNoYW5nZSJ8fGN8fCFiJiZkKXt0aGlzLnJlYWR5PSEwO2Zvcih2YXIgZT0wO2U8dGhpcy5ILmxlbmd0aDtlKyspYmQodGhpcy5IW2VdKX10aGlzLkgucHVzaD1mdW5jdGlvbigpe2Zvcih2YXIgZj1PYS5hcHBseSgwLGFyZ3VtZW50cyksZz0wO2c8Zi5sZW5ndGg7ZysrKWJkKGZbZ10pO3JldHVybiAwfX19Owp2YXIgUUI9ZnVuY3Rpb24oYSl7aWYoIWEucmVhZHkmJmEuSzwxNDApe2EuSysrO3RyeXt2YXIgYixjOyhjPShiPUIuZG9jdW1lbnRFbGVtZW50KS5kb1Njcm9sbCk9PW51bGx8fGMuY2FsbChiLCJsZWZ0Iik7YS5vblJlYWR5KCl9Y2F0Y2goZCl7QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgUUIoYSl9LDUwKX19fSxTQjtmdW5jdGlvbiBUQigpe1NCfHwoU0I9bmV3IFJCKX1mdW5jdGlvbiBVQigpe1RCKCk7dmFyIGE7cmV0dXJuKGE9U0IpPT1udWxsP3ZvaWQgMDphLmlzUmVhZHkoKX1mdW5jdGlvbiBWQihhKXtUQigpO3ZhciBiOyhiPVNCKSE9bnVsbCYmKGIucmVhZHk/YmQoYSk6Yi5ILnB1c2goYSkpfTt2YXIgWEI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVdCLGU7aWYoKGU9ZC5IKT09bnVsbHx8IWUuT3Ipe3ZhciBmPU9iamVjdC5rZXlzKGIpLmxlbmd0aD4wPzI6MSxnLGgsbD0oYz09bnVsbD92b2lkIDA6KGg9Yy5vcmlnaW5hdGluZ0VudGl0eSk9PW51bGw/dm9pZCAwOmgub3JpZ2luQ29udGFpbmVySWQpfHwiIjtnPWw/U2IobCwiR1RNLSIpPzM6MjoxO2lmKCFhKWQuSD17dHlwZTpmLHNvdXJjZTpnLHBhcmFtczpifTtlbHNlIGlmKGQuSCl7UCgxODQpO3ZhciBuPSExO2QuSC5zb3VyY2U9PT1nfHxkLkguc291cmNlIT09MyYmZyE9PTN8fChVbSgiaWRjcyIsIjEiKSxuPSEwKTtkLkgudHlwZSE9PTImJmYhPT0yfHxQKDE4Nik7dmFyIHA7aWYocD1kLkgudHlwZT09PTImJmY9PT0yKWE6e3ZhciBxPWQuSC5wYXJhbXMscj1PYmplY3Qua2V5cyhxKSx0PU9iamVjdC5rZXlzKGIpO2lmKHIubGVuZ3RoIT09dC5sZW5ndGgpcD0hMDtlbHNle2Zvcih2YXIgdT1tKHIpLHY9dS5uZXh0KCk7IXYuZG9uZTt2PQp1Lm5leHQoKSl7dmFyIHg9di52YWx1ZTtpZighYi5oYXNPd25Qcm9wZXJ0eSh4KXx8cVt4XSE9PWJbeF0pe3A9ITA7YnJlYWsgYX19cD0hMX19cCYmKFVtKCJpZGNjIiwiMSIpLG49ITApO24mJih0bygpLGQuSC5Pcj0hMCl9fX0sV0I9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXZvaWQgMH07dmFyIFpCPWZ1bmN0aW9uKGEpe3ZhciBiPVlCOyghZm4uS3x8U2IoRSg1KSwiR1RNLSIpPzA6YT09PXZvaWQgMCkmJmIuSD09PTAmJihVbSgibWNjIiwiMSIpLGIuSD0xKX0sWUI9bmV3IGZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLkg9MDtVbSgibmNjIixmdW5jdGlvbigpe2lmKElmKDQ1KSYmYS5IIT09MilyZXR1cm4iMSJ9KX07dmFyICRCPS9eKD86QVd8REN8R3xHRnxHVHxIQXxNQ3xVQSkkLyxhQz0vXHMvOwpmdW5jdGlvbiBiQyhhLGIpe2lmKHpiKGEpKXthPUxiKGEpO3ZhciBjPWEuaW5kZXhPZigiLSIpO2lmKCEoYzwwKSl7dmFyIGQ9YS5zdWJzdHJpbmcoMCxjKTtpZigkQi50ZXN0KGQpKXt2YXIgZT1hLnN1YnN0cmluZyhjKzEpLGY7aWYoYil7dmFyIGc9ZnVuY3Rpb24obil7dmFyIHA9bi5pbmRleE9mKCIvIik7cmV0dXJuIHA8MD9bbl06W24uc3Vic3RyaW5nKDAscCksbi5zdWJzdHJpbmcocCsxKV19O2Y9ZyhlKTtpZihkPT09IkRDIiYmZi5sZW5ndGg9PT0yKXt2YXIgaD1nKGZbMV0pO2gubGVuZ3RoPT09MiYmKGZbMV09aFswXSxmLnB1c2goaFsxXSkpfX1lbHNle2Y9ZS5zcGxpdCgiLyIpO2Zvcih2YXIgbD0wO2w8Zi5sZW5ndGg7bCsrKWlmKCFmW2xdfHxhQy50ZXN0KGZbbF0pJiYoZCE9PSJBVyJ8fGwhPT0xKSlyZXR1cm59cmV0dXJue2lkOmEscHJlZml4OmQsZGVzdGluYXRpb25JZDpkKyItIitmWzBdLGlkczpmLEpjOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaWQhPT10aGlzLmRlc3RpbmF0aW9uSWR9fX19fX0KZnVuY3Rpb24gY0MoYSxiKXtmb3IodmFyIGM9e30sZD0wO2Q8YS5sZW5ndGg7KytkKXt2YXIgZT1iQyhhW2RdLGIpO2UmJihjW2UuaWRdPWUpfXZhciBmPVtdLGc7Zm9yKGcgaW4gYylpZihjLmhhc093blByb3BlcnR5KGcpKXt2YXIgaD1jW2ddO2gucHJlZml4PT09IkFXIiYmaC5pZHNbZENbMV1dJiZmLnB1c2goaC5kZXN0aW5hdGlvbklkKX1mb3IodmFyIGw9MDtsPGYubGVuZ3RoOysrbClkZWxldGUgY1tmW2xdXTtmb3IodmFyIG49W10scD1tKE9iamVjdC5rZXlzKGMpKSxxPXAubmV4dCgpOyFxLmRvbmU7cT1wLm5leHQoKSluLnB1c2goY1txLnZhbHVlXSk7cmV0dXJuIG59dmFyIGVDPXt9LGRDPShlQ1swXT0wLGVDWzFdPTEsZUNbMl09MixlQ1szXT0wLGVDWzRdPTEsZUNbNV09MCxlQ1s2XT0wLGVDWzddPTAsZUMpO3ZhciBmQz17aW5pdGlhbGl6ZWQ6MTEsY29tcGxldGU6MTIsaW50ZXJhY3RpdmU6MTN9LGdDPXt9LGhDPU9iamVjdC5mcmVlemUoKGdDW0YuRC5UZF09ITAsZ0MpKSxpQz1mdW5jdGlvbigpe3RoaXMuUj1OZigzNCw1MDApO3RoaXMuSD17fTt0aGlzLk49e307dGhpcy5LPXZvaWQgMH0sakM9ZnVuY3Rpb24oYSxiLGMpe2lmKGMubGVuZ3RoJiZmbi5LKXt2YXIgZDsoZD1hLkgpW2JdIT1udWxsfHwoZFtiXT1bXSk7dmFyIGU7KGU9YS5OKVtiXSE9bnVsbHx8KGVbYl09W10pO3ZhciBmPWMuZmlsdGVyKGZ1bmN0aW9uKGcpe3JldHVybiFhLk5bYl0uaW5jbHVkZXMoZyl9KTthLkhbYl0ucHVzaC5hcHBseShhLkhbYl0sdyhmKSk7YS5OW2JdLnB1c2guYXBwbHkoYS5OW2JdLHcoZikpOyFhLksmJmYubGVuZ3RoPjAmJihWbSgidGRjIiwhMCksYS5LPUEuc2V0VGltZW91dChmdW5jdGlvbigpe3RvKCk7YS5IPXt9O2EuSz12b2lkIDB9LGEuUikpfX07CmlDLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcztVbSgidGRjIixmdW5jdGlvbigpe2EuSyYmKEEuY2xlYXJUaW1lb3V0KGEuSyksYS5LPXZvaWQgMCk7dmFyIGI9W10sYztmb3IoYyBpbiBhLkgpYS5ILmhhc093blByb3BlcnR5KGMpJiZiLnB1c2goYysiKiIrYS5IW2NdLmpvaW4oIi4iKSk7cmV0dXJuIGIubGVuZ3RoP2Iuam9pbigiISIpOnZvaWQgMH0sITEpfTsKdmFyIGtDPWZ1bmN0aW9uKGEsYil7dmFyIGM9e30sZDtmb3IoZCBpbiBiKWIuaGFzT3duUHJvcGVydHkoZCkmJihjW2RdPSEwKTtmb3IodmFyIGUgaW4gYSlhLmhhc093blByb3BlcnR5KGUpJiYoY1tlXT0hMCk7cmV0dXJuIGN9LGxDPWZ1bmN0aW9uKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwP3t9OmQ7ZT1lPT09dm9pZCAwPyIiOmU7aWYoYj09PWMpcmV0dXJuW107dmFyIGY9ZnVuY3Rpb24odCx1KXt2YXIgdjtBZCh1KT09PSJvYmplY3QiP3Y9dVt0XTpBZCh1KT09PSJhcnJheSImJih2PXVbdF0pO3JldHVybiB2PT09dm9pZCAwP2hDW3RdOnZ9LGc9a0MoYixjKSxoO2ZvcihoIGluIGcpaWYoZy5oYXNPd25Qcm9wZXJ0eShoKSYmaCE9PUYuRC5YYil7dmFyIGw9KGU/ZSsiLiI6IiIpK2gsbj1mKGgsYikscD1mKGgsYykscT1BZChuKT09PSJvYmplY3QifHxBZChuKT09PSJhcnJheSIscj1BZChwKT09PSJvYmplY3QifHxBZChwKT09PSJhcnJheSI7aWYocSYmcilsQyhhLG4scCxkLGwpOwplbHNlIGlmKHF8fHJ8fG4hPT1wKWRbbF09ITB9cmV0dXJuIE9iamVjdC5rZXlzKGQpfSxtQz1uZXcgaUM7dmFyIG5DPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuSz1OYigpO3RoaXMuSD1iO3RoaXMuYXJncz1jO3RoaXMubWVzc2FnZUNvbnRleHQ9ZDt0aGlzLnR5cGU9YX0sb0M9ZnVuY3Rpb24oKXt0aGlzLldhPXt9O3RoaXMuaWI9e307dGhpcy5LPXt9O3RoaXMuTj1udWxsO3RoaXMuaGI9e307dGhpcy5IPSExO3RoaXMuc3RhdHVzPTF9O2Z1bmN0aW9uIHBDKGEsYil7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg9PT0xP3FDKCJzZXQiLGEpOnFDKCJzZXQiLGEsYil9ZnVuY3Rpb24gckMoYSxiKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD09PTE/cUMoImNvbmZpZyIsYSk6cUMoImNvbmZpZyIsYSxiKX1mdW5jdGlvbiBzQyhhLGIsYyl7Yz1jfHx7fTtjW0YuRC5YYl09YTtyZXR1cm4gcUMoImV2ZW50IixiLGMpfWZ1bmN0aW9uIHFDKCl7cmV0dXJuIGFyZ3VtZW50c307dmFyIHRDPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCxsLG4scCxxLHIpe3RoaXMuZXZlbnRJZD1hO3RoaXMucHJpb3JpdHlJZD1iO3RoaXMucHJpb3JpdHlRdWV1ZT1jO3RoaXMuRWE9ZDt0aGlzLldhPWU7dGhpcy5oYj1mO3RoaXMuSGM9Zzt0aGlzLkJnPWg7dGhpcy5pYj1sO3RoaXMuZXZlbnRNZXRhZGF0YT1uO3RoaXMub25TdWNjZXNzPXA7dGhpcy5vbkZhaWx1cmU9cTt0aGlzLmlzR3RtRXZlbnQ9cn0sdUM9ZnVuY3Rpb24oYSl7dmFyIGI9e29uU3VjY2Vzczp4YixvbkZhaWx1cmU6eGJ9O2I9Yj09PXZvaWQgMD97fTpiO3ZhciBjLGQsZSxmLGcsaCxsLG4scCxxLHIsdCx1LHYseCx5LHosQyxELEksRyxOLFMsVyxlYSxqYTtyZXR1cm4gbmV3IHRDKCh2PShjPWIpPT1udWxsP3ZvaWQgMDpjLmV2ZW50SWQpIT1udWxsP3Y6YS5ldmVudElkLCh4PShkPWIpPT1udWxsP3ZvaWQgMDpkLnByaW9yaXR5SWQpIT1udWxsP3g6YS5wcmlvcml0eUlkLCh5PShlPWIpPT1udWxsP3ZvaWQgMDplLnByaW9yaXR5UXVldWUpIT0KbnVsbD95OmEucHJpb3JpdHlRdWV1ZSwoej0oZj1iKT09bnVsbD92b2lkIDA6Zi5FYSkhPW51bGw/ejphLkVhLChDPShnPWIpPT1udWxsP3ZvaWQgMDpnLldhKSE9bnVsbD9DOmEuV2EsKEQ9KGg9Yik9PW51bGw/dm9pZCAwOmguaGIpIT1udWxsP0Q6YS5oYiwoST0obD1iKT09bnVsbD92b2lkIDA6bC5IYykhPW51bGw/STphLkhjLChHPShuPWIpPT1udWxsP3ZvaWQgMDpuLkJnKSE9bnVsbD9HOmEuQmcsKE49KHA9Yik9PW51bGw/dm9pZCAwOnAuaWIpIT1udWxsP046YS5pYiwoUz0ocT1iKT09bnVsbD92b2lkIDA6cS5ldmVudE1ldGFkYXRhKSE9bnVsbD9TOmEuZXZlbnRNZXRhZGF0YSwoVz0ocj1iKT09bnVsbD92b2lkIDA6ci5vblN1Y2Nlc3MpIT1udWxsP1c6YS5vblN1Y2Nlc3MsKGVhPSh0PWIpPT1udWxsP3ZvaWQgMDp0Lm9uRmFpbHVyZSkhPW51bGw/ZWE6YS5vbkZhaWx1cmUsKGphPSh1PWIpPT1udWxsP3ZvaWQgMDp1LmlzR3RtRXZlbnQpIT1udWxsP2phOmEuaXNHdG1FdmVudCl9LAp2Qz1mdW5jdGlvbihhLGIpe3ZhciBjPVtdO3N3aXRjaChiKXtjYXNlIDM6Yy5wdXNoKGEuRWEpO2MucHVzaChhLldhKTtjLnB1c2goYS5oYik7Yy5wdXNoKGEuSGMpO2MucHVzaChhLmliKTticmVhaztjYXNlIDI6Yy5wdXNoKGEuRWEpO2JyZWFrO2Nhc2UgMTpjLnB1c2goYS5XYSk7Yy5wdXNoKGEuaGIpO2MucHVzaChhLkhjKTtjLnB1c2goYS5pYik7YnJlYWs7Y2FzZSA0OmMucHVzaChhLkVhKSxjLnB1c2goYS5XYSksYy5wdXNoKGEuaGIpLGMucHVzaChhLkhjKX1yZXR1cm4gY30sTz1mdW5jdGlvbihhLGIsYyxkKXtmb3IodmFyIGU9bSh2QyhhLGQ9PT12b2lkIDA/MzpkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7aWYoZ1tiXSE9PXZvaWQgMClyZXR1cm4gZ1tiXX1yZXR1cm4gY30sd0M9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9dkMoYSw0KSxkPW0oYyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpZm9yKHZhciBmPU9iamVjdC5rZXlzKGUudmFsdWUpLApnPW0oZiksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpYltoLnZhbHVlXT0xO3JldHVybiBPYmplY3Qua2V5cyhiKX07dEMucHJvdG90eXBlLmdldE1lcmdlZFZhbHVlcz1mdW5jdGlvbihhLGIsYyl7Yj1iPT09dm9pZCAwPzM6Yjt2YXIgZD17fSxlPSExLGY9ZnVuY3Rpb24obil7Q2QobikmJkdiKG4sZnVuY3Rpb24ocCxxKXtlPSEwO2RbcF09cX0pfTtjJiZmKGMpO3ZhciBnPXZDKHRoaXMsYik7Zy5yZXZlcnNlKCk7Zm9yKHZhciBoPW0oZyksbD1oLm5leHQoKTshbC5kb25lO2w9aC5uZXh0KCkpZihsLnZhbHVlW2FdKTtyZXR1cm4gZT9kOnZvaWQgMH07CnZhciB4Qz1mdW5jdGlvbihhKXtmb3IodmFyIGI9W0YuRC5LZixGLkQuR2YsRi5ELkhmLEYuRC5JZixGLkQuSmYsRi5ELkxmLEYuRC5NZl0sYz12QyhhLDMpLGQ9bShjKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7Zm9yKHZhciBmPWUudmFsdWUsZz17fSxoPSExLGw9bShiKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZTtmW3BdIT09dm9pZCAwJiYoZ1twXT1mW3BdLGg9ITApfXZhciBxPWg/Zzp2b2lkIDA7aWYocSlyZXR1cm4gcX1yZXR1cm57fX0seUM9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZXZlbnRJZD1hO3RoaXMucHJpb3JpdHlJZD1iO3RoaXMucHJpb3JpdHlRdWV1ZT1jO3RoaXMuRWE9e307dGhpcy5XYT17fTt0aGlzLmhiPXt9O3RoaXMuSGM9e307dGhpcy5CZz17fTt0aGlzLmliPXt9O3RoaXMuZXZlbnRNZXRhZGF0YT17fTt0aGlzLmlzR3RtRXZlbnQ9ITE7dGhpcy5vblN1Y2Nlc3M9ZnVuY3Rpb24oKXt9O3RoaXMub25GYWlsdXJlPQpmdW5jdGlvbigpe319LHpDPWZ1bmN0aW9uKGEsYil7YS5FYT1iO3JldHVybiBhfSxBQz1mdW5jdGlvbihhLGIpe2EuV2E9YjtyZXR1cm4gYX0sQkM9ZnVuY3Rpb24oYSxiKXthLmhiPWI7cmV0dXJuIGF9LENDPWZ1bmN0aW9uKGEsYil7YS5IYz1iO3JldHVybiBhfSxEQz1mdW5jdGlvbihhLGIpe2EuQmc9YjtyZXR1cm4gYX0sRUM9ZnVuY3Rpb24oYSxiKXthLmliPWI7cmV0dXJuIGF9LEZDPWZ1bmN0aW9uKGEsYil7YS5ldmVudE1ldGFkYXRhPWJ8fHt9O3JldHVybiBhfSxHQz1mdW5jdGlvbihhLGIpe2Eub25TdWNjZXNzPWI7cmV0dXJuIGF9LEhDPWZ1bmN0aW9uKGEsYil7YS5vbkZhaWx1cmU9YjtyZXR1cm4gYX0sSUM9ZnVuY3Rpb24oYSxiKXthLmlzR3RtRXZlbnQ9YjtyZXR1cm4gYX0sSkM9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyB0QyhhLmV2ZW50SWQsYS5wcmlvcml0eUlkLGEucHJpb3JpdHlRdWV1ZSxhLkVhLGEuV2EsYS5oYixhLkhjLGEuQmcsYS5pYixhLmV2ZW50TWV0YWRhdGEsCmEub25TdWNjZXNzLGEub25GYWlsdXJlLGEuaXNHdG1FdmVudCl9O2Z1bmN0aW9uIEtDKGEsYil7R2IoYSxmdW5jdGlvbihjKXt2YXIgZDtpZihkPWMuY2hhckF0KDApPT09Il8iKXt2YXIgZTthOnN3aXRjaChjKXtjYXNlIEYuRC5WYjpjYXNlIEYuRC5SZjpjYXNlIEYuRC5zaDplPSEwO2JyZWFrIGE7ZGVmYXVsdDplPSExfWQ9IWV9ZCYmKGImJmIoYyksZGVsZXRlIGFbY10pfSl9O3ZhciBMQz1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPXt9O2Z6KGZ1bmN0aW9uKGIpe3ZhciBjPWIuZXZlbnRJZCxkPWIudGYsZT1bXSxmPWEuSFtjXXx8W107Zi5sZW5ndGgmJmUucHVzaChbImVwciIsZi5qb2luKCIuIildKTtkJiZkZWxldGUgYS5IW2NdO3JldHVybiBlfSl9LE5DPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1NQztmbi5OJiZhIT09dm9pZCAwJiYoZC5IW2FdPWQuSFthXXx8W10sZC5IW2FdLnB1c2goYytiKSxneigpLGV6KGEpKX0sTUM7ZnVuY3Rpb24gT0MoKXtNQ3x8KE1DPW5ldyBMQyl9O3ZhciBQQz1mdW5jdGlvbigpe3RoaXMuZGVzdGluYXRpb25zPXt9O3RoaXMuSD17fTt0aGlzLmNvbW1hbmRzPVtdfSxRQz1mdW5jdGlvbihhLGIpe3JldHVybiBhLmRlc3RpbmF0aW9uc1tiLmRlc3RpbmF0aW9uSWRdPWEuZGVzdGluYXRpb25zW2IuZGVzdGluYXRpb25JZF18fG5ldyBvQ30sUkM9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoZC5IKXt2YXIgZT1RQyhhLGQuSCksZj1lLk47aWYoZil7dmFyIGc9RWQoYyxudWxsKSxoPUVkKGUuV2FbZC5ILmRlc3RpbmF0aW9uSWRdLG51bGwpLGw9RWQoZS5oYixudWxsKSxuPUVkKGUuaWIsbnVsbCkscD1FZChhLkgsbnVsbCkscT17fTtpZihmbi5OKXRyeXtxPUVkKHJBLkgsbnVsbCl9Y2F0Y2goeCl7UCg3Mil9dmFyIHI9ZC5ILnByZWZpeCx0PWZ1bmN0aW9uKHgpe3ZhciB5PWQubWVzc2FnZUNvbnRleHQuZXZlbnRJZDtPQygpO05DKHkscix4KX0sdT1KQyhJQyhIQyhHQyhGQyhEQyhDQyhFQyhCQyhBQyh6QyhuZXcgeUMoZC5tZXNzYWdlQ29udGV4dC5ldmVudElkLApkLm1lc3NhZ2VDb250ZXh0LnByaW9yaXR5SWQsZC5tZXNzYWdlQ29udGV4dC5wcmlvcml0eVF1ZXVlKSxnKSxoKSxsKSxuKSxwKSxxKSxkLm1lc3NhZ2VDb250ZXh0LmV2ZW50TWV0YWRhdGEpLGZ1bmN0aW9uKCl7aWYodCl7dmFyIHg9dDt0PXZvaWQgMDt4KCIyIik7aWYoZC5tZXNzYWdlQ29udGV4dC5vblN1Y2Nlc3MpZC5tZXNzYWdlQ29udGV4dC5vblN1Y2Nlc3MoKX19KSxmdW5jdGlvbigpe2lmKHQpe3ZhciB4PXQ7dD12b2lkIDA7eCgiMyIpO2lmKGQubWVzc2FnZUNvbnRleHQub25GYWlsdXJlKWQubWVzc2FnZUNvbnRleHQub25GYWlsdXJlKCl9fSksISFkLm1lc3NhZ2VDb250ZXh0LmlzR3RtRXZlbnQpKSx2PWZ1bmN0aW9uKCl7dHJ5e3ZhciB4PWQubWVzc2FnZUNvbnRleHQuZXZlbnRJZDtPQygpO05DKHgsciwiMSIpO3ZhciB5PWQuSC5pZCx6PW1DO2lmKGZuLksmJmI9PT1GLkQud2Epe3ZhciBDLEQ9KEM9YkMoeSkpPT1udWxsP3ZvaWQgMDpDLmlkcztpZighKEQmJkQubGVuZ3RoPgoxKSl7dmFyIEk9dS5FYVtGLkQuWGJdO2lmKCFJfHxJPT09eSl7dmFyIEcsTj1NYygiZ29vZ2xlX3RhZ19kYXRhIix7fSk7Ti50ZHx8KE4udGQ9e30pO0c9Ti50ZDt2YXIgUz1FZCh1LkhjLG51bGwpO0VkKHUuRWEsUyk7dmFyIFc9W10sZWE7Zm9yKGVhIGluIEcpRy5oYXNPd25Qcm9wZXJ0eShlYSkmJmxDKHosR1tlYV0sUykubGVuZ3RoJiZXLnB1c2goZWEpO1cubGVuZ3RoJiYoakMoeix5LFcpLHNiKCJUQUdHSU5HIixmQ1tCLnJlYWR5U3RhdGVdfHwxNCkpO0dbeV09U319fWYoZC5ILmlkLGIsZC5LLHUpfWNhdGNoKGZhKXt2YXIgamE9ZC5tZXNzYWdlQ29udGV4dC5ldmVudElkO09DKCk7TkMoamEsciwiNCIpfX07Yj09PSJndGFnLmdldCI/digpOmlvKGUuUix2KX19fSxTQz1mdW5jdGlvbihhLGIpe2lmKGIudHlwZSE9PSJyZXF1aXJlIil7dmFyIGM9dm9pZCAwO2IudHlwZT09PSJldmVudCImJihjPWIuYXJnc1sxXSk7aWYoYi5IKWZvcih2YXIgZD1RQyhhLGIuSCkuS1tiLnR5cGVdfHwKW10sZT0wO2U8ZC5sZW5ndGg7ZSsrKWRbZV0oYyk7ZWxzZSBmb3IodmFyIGYgaW4gYS5kZXN0aW5hdGlvbnMpaWYoYS5kZXN0aW5hdGlvbnMuaGFzT3duUHJvcGVydHkoZikpe3ZhciBnPWEuZGVzdGluYXRpb25zW2ZdO2lmKGcmJmcuSylmb3IodmFyIGg9Zy5LW2IudHlwZV18fFtdLGw9MDtsPGgubGVuZ3RoO2wrKyloW2xdKGMpfX19O1BDLnByb3RvdHlwZS5yZWdpc3Rlcj1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1RQyh0aGlzLGEpO2Uuc3RhdHVzIT09MyYmKGUuTj1iLGUuc3RhdHVzPTMsZS5SPWxvKGMpLFRDKHRoaXMsYSxkfHx7fSksdGhpcy5mbHVzaCgpKX07ClBDLnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKGEsYixjLGQpe2MhPT12b2lkIDAmJihRQyh0aGlzLGMpLnN0YXR1cz09PTEmJihRQyh0aGlzLGMpLnN0YXR1cz0yLHRoaXMucHVzaCgicmVxdWlyZSIsW3t9XSxjLHt9KSksUUModGhpcyxjKS5IJiYoZC5kZWZlcnJhYmxlPSExKSxkLmV2ZW50TWV0YWRhdGF8fChkLmV2ZW50TWV0YWRhdGE9e30pLGQuZXZlbnRNZXRhZGF0YVtILkouc2ddfHwoZC5ldmVudE1ldGFkYXRhW0guSi5zZ109W2MuZGVzdGluYXRpb25JZF0pLGQuZXZlbnRNZXRhZGF0YVtILkoubWpdfHwoZC5ldmVudE1ldGFkYXRhW0guSi5tal09W2MuaWRdKSk7dGhpcy5jb21tYW5kcy5wdXNoKG5ldyBuQyhhLGMsYixkKSk7ZC5kZWZlcnJhYmxlfHx0aGlzLmZsdXNoKCl9OwpQQy5wcm90b3R5cGUuZmx1c2g9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXRoaXMsYz1bXSxkPSExLGU9e307dGhpcy5jb21tYW5kcy5sZW5ndGg7ZT17Wm46dm9pZCAwfSl7dmFyIGY9dGhpcy5jb21tYW5kc1swXSxnPWYuSDtpZihmLm1lc3NhZ2VDb250ZXh0LmRlZmVycmFibGUpIWd8fFFDKHRoaXMsZykuSD8oZi5tZXNzYWdlQ29udGV4dC5kZWZlcnJhYmxlPSExLHRoaXMuY29tbWFuZHMucHVzaChmKSk6Yy5wdXNoKGYpLHRoaXMuY29tbWFuZHMuc2hpZnQoKTtlbHNle3N3aXRjaChmLnR5cGUpe2Nhc2UgInJlcXVpcmUiOmlmKFFDKHRoaXMsZykuc3RhdHVzIT09MyYmIWEpe3RoaXMuY29tbWFuZHMucHVzaC5hcHBseSh0aGlzLmNvbW1hbmRzLGMpO3JldHVybn1icmVhaztjYXNlICJzZXQiOnZhciBoPWYuYXJnc1swXTtLQyhoKTtVQyhoKTtHYihoLGZ1bmN0aW9uKHgseSl7RWQoVmIoeCx5KSxiLkgpfSk7SHUoaCwhMCk7YnJlYWs7Y2FzZSAiZXZlbnQiOmUuWm49Zi5hcmdzWzFdO3ZhciBsPQpWQyhmLmFyZ3NbMF0sZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oKXt9fShlKSksbj1sW0YuRC5YYl07biYmbiE9PWcuaWR8fEh1KGwpO1JDKHRoaXMsZS5abixsLGYpO2JyZWFrO2Nhc2UgImdldCI6dmFyIHA9e30scT0ocFtGLkQuVGZdPWYuYXJnc1swXSxwW0YuRC5TZl09Zi5hcmdzWzFdLHApO1JDKHRoaXMsRi5ELkpiLHEsZik7YnJlYWs7Y2FzZSAiY29udGFpbmVyX2NvbmZpZyI6dmFyIHI9UUModGhpcyxnKSx0PVZDKGYuYXJnc1swXSxmdW5jdGlvbigpe30pO0h1KHQsITApO3IuSD0hMDtFZCh0LHIuaGIpO2Q9ITA7YnJlYWs7Y2FzZSAiZGVzdGluYXRpb25fY29uZmlnIjp2YXIgdT1RQyh0aGlzLGcpLHY9VkMoZi5hcmdzWzBdLGZ1bmN0aW9uKCl7fSk7SHUodiwhMCk7dS5XYVtnLmlkXXx8KHUuV2FbZy5pZF09e30pO3UuSD0hMDtFZCh2LHUuV2FbZy5pZF0pO2Q9ITA7YnJlYWs7Y2FzZSAicmVzZXRfY29udGFpbmVyX2NvbmZpZyI6UUModGhpcyxnKS5oYj17fTticmVhazsKY2FzZSAicmVzZXRfdGFyZ2V0X2NvbmZpZyI6UUModGhpcyxnKS5XYVtnLmlkXT17fX10aGlzLmNvbW1hbmRzLnNoaWZ0KCk7U0ModGhpcyxmKX19dGhpcy5jb21tYW5kcy5wdXNoLmFwcGx5KHRoaXMuY29tbWFuZHMsYyk7ZCYmdGhpcy5mbHVzaCgpfTt2YXIgVEM9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPUVkKGMsbnVsbCk7RWQoUUMoYSxiKS5pYixkKTtRQyhhLGIpLmliPWR9O2Z1bmN0aW9uIFZDKGEsYil7dmFyIGM9e307R2IoYSxmdW5jdGlvbihkLGUpe0VkKFZiKGQsZSksYyl9KTtLQyhjLGIpO1VDKGMpO3JldHVybiBjfQpmdW5jdGlvbiBVQyhhKXtpZihNKDYwMSkmJkJBKCkpe2Zvcih2YXIgYj0hMSxjPW0obmV3IFNldChbRi5ELnljLEYuRC5kZF0pKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTthW2VdIT09dm9pZCAwJiYoYj0hMCxkZWxldGUgYVtlXSl9YiYmIWFsKDM1LGZ1bmN0aW9uKCl7cmV0dXJuITF9KSYmKFprKDM1LCEwKSx3aW5kb3cuY29uc29sZSYmd2luZG93LmNvbnNvbGUubG9nJiZ3aW5kb3cuY29uc29sZS5sb2coIkdvb2dsZSBUYWcgTWFuYWdlcjogU2VydmVyLXNpZGUgR1RNIHBhcmFtZXRlcnMgKHRyYW5zcG9ydF91cmwvc2VydmVyX2NvbnRhaW5lcl91cmwpIGFyZSBub3QgcGVybWl0dGVkIG9uIHRoaXMgZG9tYWluIGFuZCBoYXZlIGJlZW4gaWdub3JlZC4iKSxQKDE5NykpfX07dmFyIFdDPWZ1bmN0aW9uKCl7dGhpcy5IPW5ldyBQQzt0aGlzLks9ITF9O1dDLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe3RoaXMuSC5mbHVzaCgpfTt2YXIgWEM7ZnVuY3Rpb24gWUMoKXtYQ3x8KFhDPW5ldyBXQyk7cmV0dXJuIFhDfWZ1bmN0aW9uIFpDKGEsYixjLGQpe3ZhciBlPVlDKCksZj1iQyhjLGQuaXNHdG1FdmVudCk7ZiYmKGUuSyYmKGQuZGVmZXJyYWJsZT0hMCksZS5ILnB1c2goImV2ZW50IixbYixhXSxmLGQpKX1mdW5jdGlvbiAkQyhhLGIsYyxkKXt2YXIgZT1ZQygpLGY9YkMoYyxkLmlzR3RtRXZlbnQpO2YmJmUuSC5wdXNoKCJnZXQiLFthLGJdLGYsZCl9ZnVuY3Rpb24gYUQoYSxiLGMpe3ZhciBkPVlDKCksZT1iQyhhLGMuaXNHdG1FdmVudCk7ZSYmZC5ILnB1c2goImNvbnRhaW5lcl9jb25maWciLFtiXSxlLGMpfQpmdW5jdGlvbiBiRChhLGIsYyl7dmFyIGQ9WUMoKSxlPWJDKGEsYy5pc0d0bUV2ZW50KTtlJiZkLkgucHVzaCgiZGVzdGluYXRpb25fY29uZmlnIixbYl0sZSxjKX1mdW5jdGlvbiBjRChhKXt2YXIgYj1ZQygpLGM9YkMoYSwhMCk7YyYmYi5ILnB1c2goInJlc2V0X2NvbnRhaW5lcl9jb25maWciLFtdLGMse30pfWZ1bmN0aW9uIGREKGEpe3ZhciBiPVlDKCksYz1iQyhhLCEwKTtjJiZiLkgucHVzaCgicmVzZXRfdGFyZ2V0X2NvbmZpZyIsW10sYyx7fSl9ZnVuY3Rpb24gZUQoYSl7dmFyIGI9WUMoKSxjPWJDKGEsITApO3JldHVybiBjP1FDKGIuSCxjKS5pYjp7fX1mdW5jdGlvbiBmRChhKXtyZXR1cm4gWUMoKS5ILkhbYV19ZnVuY3Rpb24gZ0QoYSl7dmFyIGI9WUMoKSxjPWJDKGEsITApO3JldHVybiBjP1FDKGIuSCxjKS5IOiExfTtmdW5jdGlvbiBoRChhLGIpe2EuaGFzT3duUHJvcGVydHkoImd0bS51bmlxdWVFdmVudElkIil8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLCJndG0udW5pcXVlRXZlbnRJZCIse3ZhbHVlOnJqKCl9KTtiLmV2ZW50SWQ9YVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXTtiLnByaW9yaXR5SWQ9YVsiZ3RtLnByaW9yaXR5SWQiXTtyZXR1cm57ZXZlbnRJZDpiLmV2ZW50SWQscHJpb3JpdHlJZDpiLnByaW9yaXR5SWR9fWZ1bmN0aW9uIGlEKGEpe2Zvcih2YXIgYj1tKFtGLkQuZGQsRi5ELnljXSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpe3ZhciBkPWMudmFsdWUsZT1hJiZhW2RdfHxmRChkKTtpZihlKXJldHVybiBlfX1mdW5jdGlvbiBqRChhKXtyZXR1cm4hYS5pc0d0bUV2ZW50fHxhLmV2ZW50TWV0YWRhdGEmJmEuZXZlbnRNZXRhZGF0YVtILkouQ2NdJiZhLmV2ZW50TWV0YWRhdGFbSC5KLk5iXSE9PXZrKCk/ITE6ITB9O3ZhciBrRD1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9ITF9O3ZhciBsRD1mdW5jdGlvbigpe3RoaXMubWVzc2FnZXM9W107dGhpcy5IPVtdfTtsRC5wcm90b3R5cGUuZW5xdWV1ZT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5tZXNzYWdlcy5sZW5ndGgrMTthWyJndG0udW5pcXVlRXZlbnRJZCJdPWI7YVsiZ3RtLnByaW9yaXR5SWQiXT1kO3ZhciBlPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYyx7ZXZlbnRJZDpiLHByaW9yaXR5SWQ6ZCxmcm9tQ29udGFpbmVyRXhlY3V0aW9uOiEwfSk7aWYoTSg1OTUpKXt2YXIgZj1jLnByaW9yaXR5UXVldWU/W10uY29uY2F0KHcoYy5wcmlvcml0eVF1ZXVlKSxbZF0pOltkXTthWyJndG0ucHJpb3JpdHlRdWV1ZSJdPWY7ZS5wcmlvcml0eVF1ZXVlPWZ9dmFyIGc9e21lc3NhZ2U6YSxub3RCZWZvcmVFdmVudElkOmIscHJpb3JpdHlJZDpkLG1lc3NhZ2VDb250ZXh0OmV9O3RoaXMubWVzc2FnZXMucHVzaChnKTtmb3IodmFyIGg9MDtoPHRoaXMuSC5sZW5ndGg7aCsrKXRyeXt0aGlzLkhbaF0oZyl9Y2F0Y2gobCl7fX07CmxELnByb3RvdHlwZS5saXN0ZW49ZnVuY3Rpb24oYSl7dGhpcy5ILnB1c2goYSl9O2xELnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXtmb3IodmFyIGE9e30sYj0wO2I8dGhpcy5tZXNzYWdlcy5sZW5ndGg7YisrKXt2YXIgYz10aGlzLm1lc3NhZ2VzW2JdLGQ9YVtjLm5vdEJlZm9yZUV2ZW50SWRdO2R8fChkPVtdLGFbYy5ub3RCZWZvcmVFdmVudElkXT1kKTtkLnB1c2goYyl9cmV0dXJuIGF9O2xELnByb3RvdHlwZS5wcnVuZT1mdW5jdGlvbihhKXtmb3IodmFyIGI9W10sYz1bXSxkPTA7ZDx0aGlzLm1lc3NhZ2VzLmxlbmd0aDtkKyspe3ZhciBlPXRoaXMubWVzc2FnZXNbZF07ZS5ub3RCZWZvcmVFdmVudElkPT09YT9iLnB1c2goZSk6Yy5wdXNoKGUpfXRoaXMubWVzc2FnZXM9YztyZXR1cm4gYn07CmZ1bmN0aW9uIG1EKGEsYixjKXtjLmV2ZW50TWV0YWRhdGE9Yy5ldmVudE1ldGFkYXRhfHx7fTtjLmV2ZW50TWV0YWRhdGFbSC5KLk5iXT1NKDU1MCk/dmsoKTpFKDYpO25EKCkuZW5xdWV1ZShhLGIsYyl9ZnVuY3Rpb24gbkQoKXtyZXR1cm4ga2ooIm1iIixmdW5jdGlvbigpe3JldHVybiBuZXcgbER9KX07dmFyIHBEPWZ1bmN0aW9uKGEsYil7dmFyIGM9b0Q7Yj1TdHJpbmcoYikuc3BsaXQoIiwiKTtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9Yy5OW2JbZF1dfHxbXTtjLk5bYltkXV09ZTtlLmluZGV4T2YoYSk8MCYmZS5wdXNoKGEpfX0scUQ9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9b0QsZD1bXSxlPVtdLGY9e30sZz0wO2c8YS5sZW5ndGg7Zj17bGs6dm9pZCAwLFFqOnZvaWQgMCxSajp2b2lkIDB9LGcrKyl7dmFyIGg9YVtnXTtpZihoLmluZGV4T2YoIi0iKT49MCl7aWYoZi5saz1iQyhoLGIpLGYubGspe3ZhciBsPXRrKCk7Q2IobCxmdW5jdGlvbih4KXtyZXR1cm4gZnVuY3Rpb24oeSl7cmV0dXJuIHgubGsuZGVzdGluYXRpb25JZD09PXl9fShmKSk/ZC5wdXNoKGgpOmUucHVzaChoKX19ZWxzZXtpZihNKDU1MCkpe3ZhciBuPWMuS1toXXx8W107Zi5Saj17fTtuLmZvckVhY2goZnVuY3Rpb24oeCl7cmV0dXJuIGZ1bmN0aW9uKHkpe3guUmpbeV09ITB9fShmKSk7Zm9yKHZhciBwPQp0aygpLHE9MDtxPHAubGVuZ3RoO3ErKylmLlJqW3BbcV1dJiZkLnB1c2gocFtxXSl9ZWxzZXt2YXIgcj1jLkhbaF18fFtdO2YuUWo9e307ci5mb3JFYWNoKGZ1bmN0aW9uKHgpe3JldHVybiBmdW5jdGlvbih5KXt4LlFqW3ldPSEwfX0oZikpO2Zvcih2YXIgdD13aygpLHU9MDt1PHQubGVuZ3RoO3UrKylpZihmLlFqW3RbdV1dKXtkPWQuY29uY2F0KHRrKCkpO2JyZWFrfX12YXIgdj1jLk5baF18fFtdO3YubGVuZ3RoJiYoZD1kLmNvbmNhdCh2KSl9fXJldHVybntlazpkLFBzOmV9fSxyRD1mdW5jdGlvbihhKXtHYihvRC5ILGZ1bmN0aW9uKGIsYyl7dmFyIGQ9Yy5pbmRleE9mKGEpO2Q+PTAmJmMuc3BsaWNlKGQsMSl9KX0sc0Q9ZnVuY3Rpb24oYSl7R2Iob0QuSyxmdW5jdGlvbihiLGMpe3ZhciBkPWMuaW5kZXhPZihhKTtkPj0wJiZjLnNwbGljZShkLDEpfSl9LHREPWZ1bmN0aW9uKGEpe0diKG9ELk4sZnVuY3Rpb24oYixjKXt2YXIgZD1jLmluZGV4T2YoYSk7ZD49MCYmYy5zcGxpY2UoZCwKMSl9KX0sb0Q9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXt9O3RoaXMuTj17fTt0aGlzLks9e319O2Z1bmN0aW9uIHVEKGEsYixjKXt2YXIgZD1FZChhLG51bGwpO2QuZXZlbnRJZD12b2lkIDA7ZC5pbmhlcml0UGFyZW50Q29uZmlnPXZvaWQgMDtPYmplY3Qua2V5cyhiKS5zb21lKGZ1bmN0aW9uKGYpe3JldHVybiBiW2ZdIT09dm9pZCAwfSkmJlAoMTM2KTt2YXIgZT1FZChiLG51bGwpO0VkKGMsZSk7bUQockMod2soKVswXSxlKSxhLmV2ZW50SWQsZCl9CmZ1bmN0aW9uIHZEKGEsYixjLGQpe3ZhciBlPXt9LGY9KGVbRi5ELlViXT1GLkQud2EsZVsiZ3RtLmNvbmZpZ0NvbnRhaW5lcklkIl09YS5pZCxlWyJndG0uY29uZmlnUGFyYW1ldGVycyJdPWIsZVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1kLmV2ZW50SWQsZSk7Yy5wcmlvcml0eVF1ZXVlJiYoZlsiZ3RtLnByaW9yaXR5UXVldWUiXT1jLnByaW9yaXR5UXVldWUpO2MuZXZlbnRNZXRhZGF0YSYmKGZbImd0bS5ldmVudE1ldGFkYXRhIl09Yy5ldmVudE1ldGFkYXRhKTthLkpjKCkmJihmWyJndG0uY29uZmlnQ29udGFpbmVySWQiXT13aygpWzBdLGZbImd0bS5vcmlnaW5hbENvbmZpZ1RhcmdldElkIl09YS5pZCk7cmV0dXJuIGZ9ZnVuY3Rpb24gd0QoYSxiLGMpe2lmKElmKDExKSYmIWMmJiFhW0YuRC5WZF0pe3ZhciBkPWFsKDEwLGZ1bmN0aW9uKCl7cmV0dXJuITF9KTtaaygxMCwhMCk7WEIoZCxhLGIpO2lmKGQpcmV0dXJuITB9cmV0dXJuITF9O2Z1bmN0aW9uIHhEKGEsYil7dmFyIGM9e30sZD0oYy5ldmVudD1hLGMpO2ImJihkLmV2ZW50TW9kZWw9RWQoYixudWxsKSxiW0YuRC5QZl0mJihkLmV2ZW50Q2FsbGJhY2s9YltGLkQuUGZdKSxiW0YuRC5waF0mJihkLmV2ZW50VGltZW91dD1iW0YuRC5waF0pKTtyZXR1cm4gZH0KZnVuY3Rpb24geUQoYSxiKXt2YXIgYz1hJiZhW0YuRC5YYl07Yz09PXZvaWQgMCYmKGM9dUEoRi5ELlhiLDIpLGM9PT12b2lkIDAmJihjPSJkZWZhdWx0IikpO2lmKHpiKGMpfHxBcnJheS5pc0FycmF5KGMpKXt2YXIgZDtkPWIuaXNHdG1FdmVudD96YihjKT9bY106YzpjLnRvU3RyaW5nKCkucmVwbGFjZSgvXHMrL2csIiIpLnNwbGl0KCIsIik7dmFyIGU9cUQoZCxiLmlzR3RtRXZlbnQpLGY9ZS5layxnPWUuUHM7aWYoZy5sZW5ndGgpZm9yKHZhciBoPWlEKGEpLGw9MDtsPGcubGVuZ3RoO2wrKyl7dmFyIG49YkMoZ1tsXSxiLmlzR3RtRXZlbnQpO2lmKG4pe3ZhciBwPW4uZGVzdGluYXRpb25JZCxxPXZvaWQgMDsoKHE9bmsobi5kZXN0aW5hdGlvbklkKSk9PW51bGw/dm9pZCAwOnEuc3RhdGUpPT09MHx8bkEocCxoLHtzb3VyY2U6Myxmcm9tQ29udGFpbmVyRXhlY3V0aW9uOmIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbn0pfX12YXIgcj1mLmNvbmNhdChnKTtyZXR1cm57ZWs6Y0MoZixiLmlzR3RtRXZlbnQpLAptcjpjQyhyLGIuaXNHdG1FdmVudCl9fX07dmFyIHpEPXt9LEFEPSh6RC5jb25maWc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1oRChhLGIpLGQ7YTp7aWYoIShhLmxlbmd0aDwyKSYmemIoYVsxXSkpe3ZhciBlPXt9O2lmKGEubGVuZ3RoPjIpe2lmKGFbMl0hPT12b2lkIDAmJiFDZChhWzJdKXx8YS5sZW5ndGg+Myl7ZD12b2lkIDA7YnJlYWsgYX1lPWFbMl19dmFyIGY9YkMoYVsxXSxiLmlzR3RtRXZlbnQpO2lmKGYpe2Q9e3RhcmdldDpmLHBhcmFtczplfTticmVhayBhfX1kPXZvaWQgMH12YXIgZz1kO2lmKGcpe3ZhciBoPWcudGFyZ2V0LGw9Zy5wYXJhbXMsbjthOntpZighSWYoNykpe3ZhciBwPXlrKHprKCkpO2lmKE1rKHApKXt2YXIgcT1wLnBhcmVudCxyPXEuaXNEZXN0aW5hdGlvbjtuPXtWczp5ayhxKSxNczpyfTticmVhayBhfX1uPXZvaWQgMH12YXIgdD1uLHU9dD09bnVsbD92b2lkIDA6dC5Wcyx2PXQ9PW51bGw/dm9pZCAwOnQuTXM7ZEIoYy5ldmVudElkLCJndGFnLmNvbmZpZyIpO3ZhciB4LHk9aC5kZXN0aW5hdGlvbklkOwppZihoLkpjKCk/dGsoKS5pbmRleE9mKHkpIT09LTE6d2soKS5pbmRleE9mKHkpIT09LTEpYTp7aWYodSYmKFAoMTI4KSx2JiZQKDEzMCksYi5pbmhlcml0UGFyZW50Q29uZmlnKSl7dmFyIHo7dmFyIEM9JGsoMTIpO2lmKEMpdUQoYixDLGwpLHo9ITE7ZWxzZXt2YXIgRD0kaygxMSk7IWxbRi5ELlZkXSYmKE0oNTUwKXx8SWYoMTEpKSYmRHx8WmsoMTEsRWQobCxudWxsKSk7ej0hMH16JiZ1LmNvbnRhaW5lcnMmJnUuY29udGFpbmVycy5qb2luKCIsIik7eD12b2lkIDA7YnJlYWsgYX12YXIgST0hSWYoNDUpLEc9IVNiKGguaWQsIkdUTS0iKTtJJiZHJiYoT2JqZWN0LmtleXMobCkubGVuZ3RoPT09MD9HdShULlcuU2spOkd1KFQuVy5UayksRWwoKSYmR3UoVC5XLlJrKSwkaygzMSkmJkd1KFQuVy5VaykpO3ZhciBOPVlCO2ZuLksmJihOLkg9PT0xJiYoUW0uSC5tY2M9ITEpLE4uSD0yKTtpZihNKDU1MCl8fCF3RChsLGIsaC5KYygpKSl7a0QuSHx8UCg0Myk7aWYoIU0oNTUwKSl7aWYoIWIubm9UYXJnZXRHcm91cCl7dmFyIFM9CmguaWQ7aWYoaC5KYygpKXREKFMpLHBEKFMsbFtGLkQuT2RdfHwiZGVmYXVsdCIpO2Vsc2V7ckQoUyk7dmFyIFc9bFtGLkQuT2RdfHwiZGVmYXVsdCIsZWE9b0Q7Vz1XLnRvU3RyaW5nKCkuc3BsaXQoIiwiKTtmb3IodmFyIGphPTA7amE8Vy5sZW5ndGg7amErKyl7dmFyIGZhPWVhLkhbV1tqYV1dfHxbXTtlYS5IW1dbamFdXT1mYTtmYS5pbmRleE9mKFMpPDAmJmZhLnB1c2goUyl9fX1kZWxldGUgbFtGLkQuT2RdfXZhciBzYT1iLmV2ZW50TWV0YWRhdGF8fHt9O3NhLmhhc093blByb3BlcnR5KEguSi5hZSl8fChzYVtILkouYWVdPSFiLmZyb21Db250YWluZXJFeGVjdXRpb24pO2IuZXZlbnRNZXRhZGF0YT1zYTtkZWxldGUgbFtGLkQuUGZdO2lmKE0oNTUwKSl7eD12RChoLGwsYixjKTticmVhayBhfXZhciBkYT0hIWxbRi5ELlZkXTtkZWxldGUgbFtGLkQuVmRdO3ZhciBtYT10aygpLFBhPWNELEZhPWFEO2guSmMoKSYmKG1hPVtoLmlkXSxQYT1kRCxGYT1iRCk7Zm9yKHZhciBxYT0wO3FhPAptYS5sZW5ndGg7cWErKyl7ZGF8fFBhKG1hW3FhXSk7dmFyIGliPWdEKG1hW3FhXSk7RmEobWFbcWFdLEVkKGwsbnVsbCksRWQoYixudWxsKSk7aWImJmRhfHxaQyhGLkQud2EsRWQobCxudWxsKSxtYVtxYV0sRWQoYixudWxsKSl9fXg9dm9pZCAwfWVsc2UgYTp7aWYoIWIuaW5oZXJpdFBhcmVudENvbmZpZyYmIWxbRi5ELlpjXSl7dmFyIFhiPWlEKGwpLExjPWguZGVzdGluYXRpb25JZDtpZihoLkpjKCkpbkEoTGMsWGIse3NvdXJjZToyLGZyb21Db250YWluZXJFeGVjdXRpb246Yi5mcm9tQ29udGFpbmVyRXhlY3V0aW9ufSk7ZWxzZSBpZih1IT09dm9pZCAwJiZ1LmNvbnRhaW5lcnMuaW5kZXhPZihMYykhPT0tMSl7dmFyIFFkPSRrKDExKSxZYz0kaygxMik7UWQ/dUQoYixsLFFkKTpZY3x8WmsoMTIsRWQobCxudWxsKSl9ZWxzZSBpZihoQShMYyxYYiwhMCx7c291cmNlOjIsZnJvbUNvbnRhaW5lckV4ZWN1dGlvbjpiLmZyb21Db250YWluZXJFeGVjdXRpb259KSxNKDU1MCkpe3g9dkQoaCwKbCxiLGMpO2JyZWFrIGF9fXg9dm9pZCAwfXJldHVybiB4fX0sekQuY29uc2VudD1mdW5jdGlvbihhLGIpe2lmKGEubGVuZ3RoPT09Myl7UCgzOSk7dmFyIGM9aEQoYSxiKSxkPWFbMV0sZT17fSxmPU9vKGFbMl0pLGc7Zm9yKGcgaW4gZilpZihmLmhhc093blByb3BlcnR5KGcpKXt2YXIgaD1mW2ddO2VbZ109Zz09PUYuRC5ZZz9BcnJheS5pc0FycmF5KGgpP05hTjpOdW1iZXIoaCk6Zz09PUYuRC5uYz8oQXJyYXkuaXNBcnJheShoKT9oOltoXSkubWFwKFBvKTpRbyhoKX1iLmZyb21Db250YWluZXJFeGVjdXRpb258fChlW0YuRC5tYV0mJlAoMTM5KSxlW0YuRC5YYV0mJlAoMTQwKSk7ZD09PSJkZWZhdWx0Ij9UbyhlKTpkPT09InVwZGF0ZSI/Vm8oZSxjKTpkPT09ImRlY2xhcmUiJiZiLmZyb21Db250YWluZXJFeGVjdXRpb24mJlNvKGUpfX0sekQuY29udGFpbmVyX2NvbmZpZz1mdW5jdGlvbihhLGIpe2lmKGpEKGIpJiZhLmxlbmd0aD09PTMmJnpiKGFbMV0pJiZDZChhWzJdKSl7dmFyIGM9CmFbMl0sZD1iQyhhWzFdLCEwKTtkJiZhRChkLmRlc3RpbmF0aW9uSWQsYyxFZChiLG51bGwpKX19LHpELmRlc3RpbmF0aW9uX2NvbmZpZz1mdW5jdGlvbihhLGIpe2lmKGpEKGIpJiZhLmxlbmd0aD09PTMmJnpiKGFbMV0pJiZDZChhWzJdKSl7dmFyIGM9YVsyXSxkPWJDKGFbMV0sITApO2lmKGQpe2lmKE0oNTUwKSl7aWYoIWIubm9UYXJnZXRHcm91cCl7dmFyIGU9ZC5pZDtpZihkLkpjKCkpdEQoZSkscEQoZSxjW0YuRC5PZF18fCJkZWZhdWx0Iik7ZWxzZXtzRChlKTt2YXIgZj1jW0YuRC5PZF18fCJkZWZhdWx0IixnPW9EO2Y9U3RyaW5nKGYpLnNwbGl0KCIsIik7Zm9yKHZhciBoPTA7aDxmLmxlbmd0aDtoKyspe3ZhciBsPWcuS1tmW2hdXXx8W107Zy5LW2ZbaF1dPWw7bC5pbmRleE9mKGUpPDAmJmwucHVzaChlKX19fWRlbGV0ZSBjW0YuRC5PZF19YkQoZC5pZCxjLEVkKGIsbnVsbCkpfX19LHpELmV2ZW50PWZ1bmN0aW9uKGEsYil7dmFyIGM9YVsxXTtpZighKGEubGVuZ3RoPDIpJiYKemIoYykpe3ZhciBkPXZvaWQgMDtpZihhLmxlbmd0aD4yKXtpZighQ2QoYVsyXSkmJmFbMl0hPT12b2lkIDB8fGEubGVuZ3RoPjMpcmV0dXJuO2Q9YVsyXX12YXIgZT14RChjLGQpLGY9aEQoYSxiKSxnPWYuZXZlbnRJZCxoPWYucHJpb3JpdHlJZDtlWyJndG0udW5pcXVlRXZlbnRJZCJdPWc7aCYmKGVbImd0bS5wcmlvcml0eUlkIl09aCk7Yi5wcmlvcml0eVF1ZXVlJiYoZVsiZ3RtLnByaW9yaXR5UXVldWUiXT1iLnByaW9yaXR5UXVldWUpO2lmKGM9PT0ib3B0aW1pemUuY2FsbGJhY2siKXJldHVybiBlLmV2ZW50TW9kZWw9ZS5ldmVudE1vZGVsfHx7fSxlO3ZhciBsPXlEKGQsYik7aWYobCl7Zm9yKHZhciBuPWwuZWsscD1sLm1yLHE9cC5tYXAoZnVuY3Rpb24oTil7cmV0dXJuIE4uaWR9KSxyPXAubWFwKGZ1bmN0aW9uKE4pe3JldHVybiBOLmRlc3RpbmF0aW9uSWR9KSx0PW4ubWFwKGZ1bmN0aW9uKE4pe3JldHVybiBOLmlkfSksdT1tKHRrKCkpLHY9dS5uZXh0KCk7IXYuZG9uZTt2PQp1Lm5leHQoKSl7dmFyIHg9di52YWx1ZTtyLmluZGV4T2YoeCk8MCYmdC5wdXNoKHgpfWRCKGcsYyk7Zm9yKHZhciB5PW0odCksej15Lm5leHQoKTshei5kb25lO3o9eS5uZXh0KCkpe3ZhciBDPXoudmFsdWUsRD1FZChiLG51bGwpLEk9RWQoZCxudWxsKTtkZWxldGUgSVtGLkQuUGZdO3ZhciBHPUQuZXZlbnRNZXRhZGF0YXx8e307Ry5oYXNPd25Qcm9wZXJ0eShILkouYWUpfHwoR1tILkouYWVdPSFELmZyb21Db250YWluZXJFeGVjdXRpb24pO0dbSC5KLm1qXT1xLnNsaWNlKCk7R1tILkouc2ddPXIuc2xpY2UoKTtELmV2ZW50TWV0YWRhdGE9RztaQyhjLEksQyxEKX1lLmV2ZW50TW9kZWw9ZS5ldmVudE1vZGVsfHx7fTtxLmxlbmd0aD4wP2UuZXZlbnRNb2RlbFtGLkQuWGJdPXEuam9pbigiLCIpOmRlbGV0ZSBlLmV2ZW50TW9kZWxbRi5ELlhiXTtrRC5IfHxQKDQzKTtiLm5vR3RtRXZlbnQ9PT12b2lkIDAmJmIuZXZlbnRNZXRhZGF0YSYmYi5ldmVudE1ldGFkYXRhW0guSi5Cbl0mJihiLm5vR3RtRXZlbnQ9CiEwKTtlLmV2ZW50TW9kZWxbRi5ELlljXSYmKGIubm9HdG1FdmVudD0hMCk7cmV0dXJuIGIubm9HdG1FdmVudD92b2lkIDA6ZX19fSx6RC5nZXQ9ZnVuY3Rpb24oYSxiKXtQKDUzKTtpZihhLmxlbmd0aD09PTQmJnpiKGFbMV0pJiZ6YihhWzJdKSYmeWIoYVszXSkpe3ZhciBjPWJDKGFbMV0sYi5pc0d0bUV2ZW50KSxkPVN0cmluZyhhWzJdKSxlPWFbM107aWYoYyl7a0QuSHx8UCg0Myk7dmFyIGY9aUQoKTtpZihDYih0aygpLGZ1bmN0aW9uKGgpe3JldHVybiBjLmRlc3RpbmF0aW9uSWQ9PT1ofSkpe2hEKGEsYik7dmFyIGc9e307RWQoKGdbRi5ELlRmXT1kLGdbRi5ELlNmXT1lLGcpLG51bGwpOyRDKGQsZnVuY3Rpb24oaCl7YmQoZnVuY3Rpb24oKXtlKGgpfSl9LGMuaWQsYil9ZWxzZSBuQShjLmRlc3RpbmF0aW9uSWQsZix7c291cmNlOjQsZnJvbUNvbnRhaW5lckV4ZWN1dGlvbjpiLmZyb21Db250YWluZXJFeGVjdXRpb259KX19fSx6RC5qcz1mdW5jdGlvbihhLGIpe3ZhciBjO2lmKGEubGVuZ3RoPT09CjImJmFbMV0uZ2V0VGltZSl7a0QuSD0hMDt2YXIgZD1oRChhLGIpLGU9ZC5ldmVudElkLGY9ZC5wcmlvcml0eUlkLGc9e307Yz0oZy5ldmVudD0iZ3RtLmpzIixnWyJndG0uc3RhcnQiXT1hWzFdLmdldFRpbWUoKSxnWyJndG0udW5pcXVlRXZlbnRJZCJdPWUsZ1siZ3RtLnByaW9yaXR5SWQiXT1mLGcpfWVsc2UgYz12b2lkIDA7cmV0dXJuIGN9LHpELnBvbGljeT1mdW5jdGlvbihhKXtpZihhLmxlbmd0aD09PTMmJnpiKGFbMV0pJiZ5YihhWzJdKSl7aWYoaHkoYVsxXSxhWzJdKSxQKDc0KSxhWzFdPT09ImFsbCIpe1AoNzUpO3ZhciBiPSExO3RyeXtiPWFbMl0oRSg1KSwidW5rbm93biIse30pfWNhdGNoKGMpe31ifHxQKDc2KX19ZWxzZSBQKDczKX0sekQucmVzZXRfdGFyZ2V0X2NvbmZpZz1mdW5jdGlvbihhLGIpe2lmKGpEKGIpJiZhLmxlbmd0aD09PTImJnpiKGFbMV0pKXt2YXIgYz1iQyhhWzFdLCEwKTtjJiZkRChjLmlkKX19LHpELnNldD1mdW5jdGlvbihhLGIpe3ZhciBjPXZvaWQgMDsKYS5sZW5ndGg9PT0yJiZDZChhWzFdKT9jPUVkKGFbMV0sbnVsbCk6YS5sZW5ndGg9PT0zJiZ6YihhWzFdKSYmKGM9e30sQ2QoYVsyXSl8fEFycmF5LmlzQXJyYXkoYVsyXSk/Y1thWzFdXT1FZChhWzJdLG51bGwpOmNbYVsxXV09YVsyXSk7aWYoYyl7WmsoMzEsITApO3ZhciBkPWhEKGEsYiksZT1kLmV2ZW50SWQsZj1kLnByaW9yaXR5SWQ7RWQoYyxudWxsKTtFKDUpO3ZhciBnPUVkKGMsbnVsbCk7WUMoKS5ILnB1c2goInNldCIsW2ddLHZvaWQgMCxiKTtjWyJndG0udW5pcXVlRXZlbnRJZCJdPWU7ZiYmKGNbImd0bS5wcmlvcml0eUlkIl09Zik7ZGVsZXRlIGMuZXZlbnQ7Yi5vdmVyd3JpdGVNb2RlbEZpZWxkcz0hMDtyZXR1cm4gY319LHpEKSxCRD17fSxDRD0oQkQucG9saWN5PSEwLEJEKTt2YXIgRUQ9ZnVuY3Rpb24oYSl7aWYoREQoYSkpcmV0dXJuIGE7dGhpcy52YWx1ZT1hfTtFRC5wcm90b3R5cGUuZ2V0VW50cnVzdGVkTWVzc2FnZVZhbHVlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9O3ZhciBERD1mdW5jdGlvbihhKXtyZXR1cm4hYXx8QWQoYSkhPT0ib2JqZWN0Inx8Q2QoYSk/ITE6ImdldFVudHJ1c3RlZE1lc3NhZ2VWYWx1ZSJpbiBhfTtFRC5wcm90b3R5cGUuZ2V0VW50cnVzdGVkTWVzc2FnZVZhbHVlPUVELnByb3RvdHlwZS5nZXRVbnRydXN0ZWRNZXNzYWdlVmFsdWU7dmFyIEZEPXtCYjoiMSIsZWU6IjIiLFhkOiIzIixjZToiNCIseGY6IjUiLHFnOiI2IixLaDoiNyIsdGo6IjgiLGxpOiI5IixqajoiMTAifTsKdmFyIEdEPWZ1bmN0aW9uKGEsYil7aWYoYSl7dmFyIGM9YS50cmltKCkucmVwbGFjZUFsbCgvXHMrL2csIiIpLnJlcGxhY2VBbGwoLyhcZHsyLH0pXC4vZywiJDEiKS5yZXBsYWNlQWxsKC8tL2csIiIpLnJlcGxhY2VBbGwoL1woKFxkKylcKS9nLCIkMSIpO2lmKGImJmMubWF0Y2goL15cKz9cZHszLDR9JC8pKXJldHVybiBjO2MuY2hhckF0KDApIT09IisiJiYoYz0iKyIrYyk7aWYoYy5tYXRjaChuZXcgUmVnRXhwKCJeXFwrXFxkeyIrKE0oNTk3KT83OjEwKSsiLDE1fSQiKSkpcmV0dXJuIGN9fSxJRD1mdW5jdGlvbihhKXtpZihhKXt2YXIgYj1hLnRyaW0oKTtpZihIRC50ZXN0KGIpKXJldHVybiBiLnRvTG93ZXJDYXNlKCkucmVwbGFjZUFsbCgvWy0gXSsvZywiIil9fSxNRD1mdW5jdGlvbihhKXt2YXIgYj1KRChLRCkoYSk7aWYoYiYmIUxEKGIpKXJldHVybiBifSxMRD1mdW5jdGlvbihhKXtpZighQS5sb2NhdGlvbilyZXR1cm4hMTt2YXIgYj1OaihBLmxvY2F0aW9uLCJob3N0IiwhMCksCmM7aWYoTSg2MDIpKWE6e2Zvcih2YXIgZD1iLnNwbGl0KCIuIiksZT1hLnRvTG93ZXJDYXNlKCksZj0wO2Y8ZC5sZW5ndGgtMTtmKyspe3ZhciBnPWQuc2xpY2UoZikuam9pbigiLiIpO2lmKGUubWF0Y2goIkAiK2crIiQiKSl7Yz0hMDticmVhayBhfX1jPSExfWVsc2UgYz1hLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihiKT49MDtyZXR1cm4gY30sSkQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe3ZhciBjPWIubWF0Y2goYSk7cmV0dXJuIGM/Y1swXS50cmltKCkudG9Mb3dlckNhc2UoKTp2b2lkIDB9fSxLRD0vW0EtWjAtOS5fJSstXStAW0EtWjAtOS4tXStcLltBLVpdezIsfS9pLE5EPUpEKC9eKFteXHgwMC1ceDQwXHg1Yi1ceDYwXHg3Yi1ceGZmXXxbLi1dfFxzKSskLyksSEQ9UmVnRXhwKCJeKD86W0EtWl17MSwyfVxcZFtBLVpcXGRdP1sgLV0/XFxkW0EtWl17Mn18W0EtWl1cXGRbQS1aXVsgLV0/XFxkW0EtWl1cXGR8XFxkezR9ID9bQS1aXXsyfXxbQS1aXVxcZHs0fVtBLVpdezN9fFxcZHs1fSg/Oi1cXGR7NH0pP3xcXGR7NX0tXFxkezN9fFxcZHs0fS1cXGR7M318XFxkezN9LVxcZHs0fXxcXGR7Mn0tXFxkezN9fFxcZHszfSA/XFxkezJ9fFxcZHs0LDd9KSQiLAoiaSIpLE9EPUpEKC9eKFteXHgwMC1ceDQwXHg1Yi1ceDYwXHg3Yi1ceGZmXXxbLi1dfFxzfFxkKSskLyk7CnZhciBQRD1mdW5jdGlvbigpe3ZhciBhPVN0cmluZyhhbCgzMyxmdW5jdGlvbigpe3JldHVybiAwfSkpO2EuaW5kZXhPZigiLiIpIT09LTEmJihhPWEuc3Vic3RyaW5nKDAsYS5pbmRleE9mKCIuIikrMykpO3ZhciBiPWFsKDM0LGZ1bmN0aW9uKCl7cmV0dXJuIDB9KTtyZXR1cm57dnQ6TnVtYmVyKGEpLHN0OmJ9fSxRRD1mdW5jdGlvbigpe3JldHVybiBhbCgzMixmdW5jdGlvbigpe3JldHVybiBuZXcgTWFwfSl9LFNEPWZ1bmN0aW9uKGEpe3ZhciBiPXBkKCl8fDAsYz1bRkQuQmJdO00oNTY4KSYmYy5wdXNoKEZELmVlLEZELlhkLEZELmNlLEZELnhmLEZELnFnLEZELnRqLEZELmxpLEZELmpqKTtmb3IodmFyIGQ9UkQoYSxuZXcgU2V0KGMpKSxlPWFsKDMyLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KSxmPW0oZCksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7ZS5zZXQoaC5EYSxoKX12YXIgbD0ocGQoKXx8MCktYixuPWFsKDMzLGZ1bmN0aW9uKCl7cmV0dXJuIDB9KTsKWmsoMzMsbitsKTt2YXIgcD1hbCgzNCxmdW5jdGlvbigpe3JldHVybiAwfSk7WmsoMzQscCsxKX0sUkQ9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9TmYoMzYsMiksZD1bXSxlPVt7b286YSxkZXB0aDowfV07ZS5sZW5ndGg+MDspZm9yKHZhciBmPWUuc2hpZnQoKSxnPWYub28saD1mLmRlcHRoLGw9bShPYmplY3Qua2V5cyhnKSksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7aWYoIVRELmhhcyhwKSl7dmFyIHE9Z1twXTtpZihxKWlmKENkKHEpKWgrMTw9YyYmZS5wdXNoKHtvbzpxLGRlcHRoOmgrMX0pO2Vsc2V7Zm9yKHZhciByPW0oYiksdD1yLm5leHQoKTshdC5kb25lO3Q9ci5uZXh0KCkpe3ZhciB1PXQudmFsdWUsdj1VRFt1XTtpZih2JiZ2LktjLnRlc3QocCkpe3ZhciB4PXYubmEoU3RyaW5nKHEpKTtpZih4KXtkLnB1c2goe0NhOngsRGE6dX0pO2IuZGVsZXRlKHUpO2JyZWFrfX19aWYoYi5zaXplPT09MClyZXR1cm4gZH19fXJldHVybiBkfSxURD0KbmV3IFNldChbIml0ZW1zIiwiZWNvbW1lcmNlIl0pLFZEPVJlZ0V4cCgicGhvbmUiLCJpIiksV0Q9UmVnRXhwKCJmaXJzdF8/bmFtZSIsImkiKSxYRD1SZWdFeHAoImxhc3RfP25hbWUiLCJpIiksWUQ9UmVnRXhwKCJjb3VudHJ5IiwiaSIpLFpEPVJlZ0V4cCgicG9zdHx6aXAiLCJpIiksJEQ9UmVnRXhwKCJhZGRyZXNzfHN0cmVldCIsImkiKSxhRT1SZWdFeHAoImNpdHkiLCJpIiksYkU9UmVnRXhwKCJyZWdpb258c3RhdGV8cHJvdmluY2UiLCJpIiksY0U9e30sVUQ9KGNFW0ZELkJiXT17S2M6UmVnRXhwKCJlbWFpbCIsImkiKSxuYTpNRH0sY0VbRkQuZWVdPXtLYzpWRCxuYTpmdW5jdGlvbihhKXtyZXR1cm4gR0QoYSwhMSl9fSxjRVtGRC5YZF09e0tjOldELG5hOk5EfSxjRVtGRC5jZV09e0tjOlhELG5hOk5EfSxjRVtGRC50al09e0tjOiRELG5hOk9EfSxjRVtGRC5saV09e0tjOmFFLG5hOk5EfSxjRVtGRC5qal09e0tjOmJFLG5hOk5EfSxjRVtGRC5xZ109e0tjOlpELG5hOklEfSxjRVtGRC54Zl09CntLYzpZRCxuYTpORH0sY0UpO3ZhciBkRT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5sb2FkZWQ9ITE7dGhpcy5IPVtdO2lmKEIucmVhZHlTdGF0ZT09PSJjb21wbGV0ZSIpdGhpcy5vbkxvYWQoKTtlbHNlICRjKEEsImxvYWQiLGZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgYS5vbkxvYWQoKX0pfTtkRS5wcm90b3R5cGUub25Mb2FkPWZ1bmN0aW9uKCl7aWYoIXRoaXMubG9hZGVkKXt0aGlzLmxvYWRlZD0hMDtmb3IodmFyIGE9MDthPHRoaXMuSC5sZW5ndGg7YSsrKWJkKHRoaXMuSFthXSl9fTt2YXIgZkU9ZnVuY3Rpb24oYSl7dmFyIGI9ZUU7Yi5sb2FkZWQ/YmQoYSk6Yi5ILnB1c2goYSl9LGVFPW5ldyBkRTt2YXIgZ0U9ZnVuY3Rpb24oKXt0aGlzLlo9MDt0aGlzLks9e307dGhpcy5IPVtdO3RoaXMuTj1bXTt0aGlzLmZhPXRoaXMuUj10aGlzLmphPSExfSxpRT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9aEU7YS5ldmVudENhbGxiYWNrPWI7YyYmKGEuZXZlbnRUaW1lb3V0PWMpO3JldHVybiBkLnB1c2goYSl9LGpFPWZ1bmN0aW9uKGEsYil7aWYoIUFiKGIpfHxiPDApYj0wO3ZhciBjPXFqKCksZD0wLGU9ITEsZj12b2lkIDA7Zj1BLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtlfHwoZT0hMCxhKCkpO2Y9dm9pZCAwfSxiKTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZz1jP2Muc3Vic2NyaWJlcnM6MTsrK2Q9PT1nJiYoZiYmKEEuY2xlYXJUaW1lb3V0KGYpLGY9dm9pZCAwKSxlfHwoYSgpLGU9ITApKX19LGxFPWZ1bmN0aW9uKGEpe3ZhciBiO2lmKGEuTi5sZW5ndGgpYj1hLk4uc2hpZnQoKTtlbHNlIGlmKGEuSC5sZW5ndGgpYj1hLkguc2hpZnQoKTtlbHNlIHJldHVybjt2YXIgYzt2YXIgZD1iO2lmKGEuamF8fAoha0UoZC5tZXNzYWdlKSljPWQ7ZWxzZXthLmphPSEwO3ZhciBlPWQubWVzc2FnZVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXSxmLGc7dHlwZW9mIGU9PT0ibnVtYmVyIj8oZj1lLTIsZz1lLTEpOihmPXJqKCksZz1yaigpLGQubWVzc2FnZVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1yaigpKTt2YXIgaD17fSxsPXttZXNzYWdlOihoLmV2ZW50PSJndG0uaW5pdF9jb25zZW50IixoWyJndG0udW5pcXVlRXZlbnRJZCJdPWYsaCksbWVzc2FnZUNvbnRleHQ6e2V2ZW50SWQ6Zn19LG49e30scD17bWVzc2FnZToobi5ldmVudD0iZ3RtLmluaXQiLG5bImd0bS51bmlxdWVFdmVudElkIl09ZyxuKSxtZXNzYWdlQ29udGV4dDp7ZXZlbnRJZDpnfX07YS5ILnVuc2hpZnQocCxkKTtjPWx9cmV0dXJuIGN9LG9FPWZ1bmN0aW9uKGEpe2EuZmF8fFAoMTk2KTtmb3IodmFyIGI9ITEsYzshYS5SJiYoYz1sRShhKSk7KXthLlI9ITA7dmFyIGQ9ckE7ZGVsZXRlIGQuSC5ldmVudE1vZGVsO29BKGQpO3ZhciBlPWMsZj0KZS5tZXNzYWdlLGc9ZS5tZXNzYWdlQ29udGV4dDtpZihmPT1udWxsKWEuUj0hMTtlbHNle2cuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbiYmc0EoKTt0cnl7aWYoeWIoZikpdHJ5e2YuY2FsbCh0QSl9Y2F0Y2goUyl7fWVsc2UgaWYoQXJyYXkuaXNBcnJheShmKSl7aWYoemIoZlswXSkpe3ZhciBoPWZbMF0uc3BsaXQoIi4iKSxsPWgucG9wKCksbj1mLnNsaWNlKDEpLHA9dUEoaC5qb2luKCIuIiksMik7aWYocCE9bnVsbCl0cnl7cFtsXS5hcHBseShwLG4pfWNhdGNoKFMpe319fWVsc2V7dmFyIHE9dm9pZCAwO2lmKEhiKGYpKWE6e2lmKGYubGVuZ3RoJiZ6YihmWzBdKSl7dmFyIHI9QURbZlswXV07aWYociYmKCFnLmZyb21Db250YWluZXJFeGVjdXRpb258fCFDRFtmWzBdXSkpe3E9cihmLGcpO2JyZWFrIGF9fXE9dm9pZCAwfWVsc2UgcT1mO2lmKHEpe3ZhciB0O2Zvcih2YXIgdT1xLHY9dS5fY2xlYXJ8fGcub3ZlcndyaXRlTW9kZWxGaWVsZHMseD1tKE9iamVjdC5rZXlzKHUpKSx5PXgubmV4dCgpOyF5LmRvbmU7eT0KeC5uZXh0KCkpe3ZhciB6PXkudmFsdWU7eiE9PSJfY2xlYXIiJiYodiYmckEuc2V0KHosdm9pZCAwKSxyQS5zZXQoeix1W3pdKSl9TSg1OTIpJiZTRCh1KTskaygyNSl8fFprKDI1LHVbImd0bS5zdGFydCJdKTt2YXIgQz11WyJndG0udW5pcXVlRXZlbnRJZCJdO3UuZXZlbnQ/KHR5cGVvZiBDIT09Im51bWJlciImJihDPXJqKCksdVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1DLHJBLnNldCgiZ3RtLnVuaXF1ZUV2ZW50SWQiLEMpKSx0PXpCKHUpKTp0PSExO2I9dHx8Yn19fWZpbmFsbHl7Zy5mcm9tQ29udGFpbmVyRXhlY3V0aW9uJiZvQShyQSwhMCk7dmFyIEQ9ZlsiZ3RtLnVuaXF1ZUV2ZW50SWQiXTtpZih0eXBlb2YgRD09PSJudW1iZXIiKXtmb3IodmFyIEk9YSxHPUkuS1tTdHJpbmcoRCldfHxbXSxOPTA7TjxHLmxlbmd0aDtOKyspSS5OLnB1c2gobUUoR1tOXSkpO0cubGVuZ3RoJiZJLk4uc29ydChuRSk7ZGVsZXRlIEkuS1tTdHJpbmcoRCldO0Q+YS5aJiYoYS5aPUQpfWEuUj0hMX19fXJldHVybiFifSwKcEU9ZnVuY3Rpb24oKXt2YXIgYT1oRTthLmZhJiZQKDE5NSk7YS5mYT0hMDtpZihmbi5IKXt2YXIgYj0hSWYoNTEpLGM9cnooKTtweihjLHtzdGFnZTpJeS5YLlpnfSk7aWYoYil7dmFyIGQ9cXooYyx7c3RhZ2U6SXkuWC5Za30sSXkuWC5uaSk7ZCE9PXZvaWQgMCYmKGMuSC5ZPWQpfXZhciBlPWEuSC5sZW5ndGg7cnooKS5ILkM9ZX1vRShhKTtpZihmbi5IKXt2YXIgZj1yeigpLGc9cXooZix7c3RhZ2U6SXkuWC5Wa30sSXkuWC5aZyk7ZyE9PXZvaWQgMCYmKGYuSC5CPWcpfXRyeXt2YXIgaD1BW0UoMTkpXSxsPUUoNSksbj1oLmhpZGU7aWYobiYmbltsXSE9PXZvaWQgMCYmbi5lbmQpe25bbF09ITE7dmFyIHA9ITAscTtmb3IocSBpbiBuKWlmKG4uaGFzT3duUHJvcGVydHkocSkmJm5bcV09PT0hMCl7cD0hMTticmVha31wJiYobi5lbmQoKSxuLmVuZD1udWxsKX19Y2F0Y2gocil7RSg1KX19LHFFPWZ1bmN0aW9uKGEsYil7aWYoYS5aPGIubm90QmVmb3JlRXZlbnRJZCl7dmFyIGM9U3RyaW5nKGIubm90QmVmb3JlRXZlbnRJZCk7CmEuS1tjXT1hLktbY118fFtdO2EuS1tjXS5wdXNoKGIpfWVsc2V7YS5OLnB1c2gobUUoYikpO2EuTi5zb3J0KG5FKTt2YXIgZD1mdW5jdGlvbigpe2EuUnx8b0UoYSl9O00oNTgwKT9kZChkKTpiZChkKX19OwpnRS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoaCl7dmFyIGw9e307aWYoREQoaCkpe3ZhciBuPWg7aD1ERChuKT9uLmdldFVudHJ1c3RlZE1lc3NhZ2VWYWx1ZSgpOnZvaWQgMDtsLmZyb21Db250YWluZXJFeGVjdXRpb249ITB9cmV0dXJue21lc3NhZ2U6aCxtZXNzYWdlQ29udGV4dDpsfX12YXIgYj10aGlzLGM9TWMoRSgxOSksW10pLGQ9cGooKTtkLnBydW5lZD09PSEwJiZQKDgzKTt0aGlzLks9bkQoKS5nZXQoKTtuRCgpLmxpc3RlbihmdW5jdGlvbihoKXtxRShiLGgpfSk7ZC5zdWJzY3JpYmVycz0oZC5zdWJzY3JpYmVyc3x8MCkrMTt2YXIgZT1jLnB1c2gsZj10aGlzO2MucHVzaD1mdW5jdGlvbigpe3ZhciBoO2xqKCk7aWYoamouSC5TQU5EQk9YRURfSlNfU0VNQVBIT1JFPjApe2g9W107Zm9yKHZhciBsPTA7bDxhcmd1bWVudHMubGVuZ3RoO2wrKyloW2xdPW5ldyBFRChhcmd1bWVudHNbbF0pfWVsc2UgaD1bXS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKTsKdmFyIG49aC5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIGEodCl9KTtmLkgucHVzaC5hcHBseShmLkgsbik7dmFyIHA9ZS5hcHBseShjLGgpLHE9TWF0aC5tYXgoMTAwLE5mKDEsMzAwKSk7aWYodGhpcy5sZW5ndGg+cSlmb3IoUCg0KSxkLnBydW5lZD0hMDt0aGlzLmxlbmd0aD5xOyl0aGlzLnNoaWZ0KCk7dmFyIHI9dHlwZW9mIHAhPT0iYm9vbGVhbiJ8fHA7cmV0dXJuIG9FKGYpJiZyfTt2YXIgZz1jLnNsaWNlKDApLm1hcChmdW5jdGlvbihoKXtyZXR1cm4gYShoKX0pO3RoaXMuSC5wdXNoLmFwcGx5KHRoaXMuSCxnKTtJZig1MSl8fChmbi5IJiZ1eigpLGJkKHJFKSk7VkIoZnVuY3Rpb24oKXtpZighZC5ndG1Eb20pe2QuZ3RtRG9tPSEwO3ZhciBoPXt9O2MucHVzaCgoaC5ldmVudD0iZ3RtLmRvbSIsaCkpfX0pO2ZFKGZ1bmN0aW9uKCl7aWYoIWQuZ3RtTG9hZCl7ZC5ndG1Mb2FkPSEwO3ZhciBoPXt9O2MucHVzaCgoaC5ldmVudD0iZ3RtLmxvYWQiLGgpKX19KX07CmdFLnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKGEpe3JldHVybiBBW0UoMTkpXS5wdXNoKGEpfTt2YXIgaEU9bmV3IGdFO2Z1bmN0aW9uIG5FKGEsYil7dmFyIGM9YS5tZXNzYWdlQ29udGV4dCxkPWIubWVzc2FnZUNvbnRleHQ7aWYoYy5ldmVudElkIT09ZC5ldmVudElkKXJldHVybiBjLmV2ZW50SWQtZC5ldmVudElkO2lmKCFNKDU5NSkpcmV0dXJuIGMucHJpb3JpdHlJZC1kLnByaW9yaXR5SWQ7dmFyIGUsZixnO2E6e2Zvcih2YXIgaD0oZT1jLnByaW9yaXR5UXVldWUpIT1udWxsP2U6W2MucHJpb3JpdHlJZF0sbD0oZj1kLnByaW9yaXR5UXVldWUpIT1udWxsP2Y6W2QucHJpb3JpdHlJZF0sbj1NYXRoLm1pbihoLmxlbmd0aCxsLmxlbmd0aCkscD0wO3A8bjtwKyspaWYoaFtwXSE9PWxbcF0pe2c9aFtwXS1sW3BdO2JyZWFrIGF9Zz1oLmxlbmd0aC1sLmxlbmd0aH1yZXR1cm4gZ30KZnVuY3Rpb24ga0UoYSl7aWYoYT09bnVsbHx8dHlwZW9mIGEhPT0ib2JqZWN0IilyZXR1cm4hMTtpZihhLmV2ZW50KXJldHVybiEwO2lmKEhiKGEpKXt2YXIgYj1hWzBdO2lmKGI9PT0iY29uZmlnInx8Yj09PSJldmVudCJ8fGI9PT0ianMifHxiPT09ImdldCIpcmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gbUUoYSl7cmV0dXJue21lc3NhZ2U6YS5tZXNzYWdlLG1lc3NhZ2VDb250ZXh0OmEubWVzc2FnZUNvbnRleHR9fWZ1bmN0aW9uIHNFKGEsYixjKXtyZXR1cm4gaUUoYSxiLGMpfWZ1bmN0aW9uIHRFKGEsYil7cmV0dXJuIGpFKGEsYil9ZnVuY3Rpb24gckUoKXtwRSgpfWZ1bmN0aW9uIHVFKGEpe3JldHVybiBoRS5wdXNoKGEpfTt2YXIgdkU9ZnVuY3Rpb24oKXt9O3ZFLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7dmFyIGEsYj1SaihBLmxvY2F0aW9uLmhyZWYpOyhhPWIuaG9zdG5hbWUrYi5wYXRobmFtZSkmJlVtKCJkbCIsZW5jb2RlVVJJQ29tcG9uZW50KGEpKTt2YXIgYzt2YXIgZD1FKDUpO2lmKGQpe3ZhciBlPUlmKDcpPzE6MCxmPUZrKCksZz1mJiZmLmZyb21Db250YWluZXJFeGVjdXRpb24/MTowLGg9ZiYmZi5zb3VyY2V8fDAsbD1FKDYpO2M9ZCsiOyIrbCsiOyIrZysiOyIraCsiOyIrZX1lbHNlIGM9dm9pZCAwO3ZhciBuPWM7biYmVW0oInRkcCIsbik7dmFyIHA9T3AoITApO3AhPT12b2lkIDAmJlVtKCJmcm0iLFN0cmluZyhwKSl9O3ZhciB3RT1uZXcgdkU7dmFyIHhFPWZ1bmN0aW9uKCl7dGhpcy5IPVhtKCk7dGhpcy5LPXZvaWQgMH0seUU9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gWm0oYSxmdW5jdGlvbihjKXtyZXR1cm4gYy5qYj4wP2I/Yy5qYisiXyIrV20oYyk6U3RyaW5nKGMuamIpOnZvaWQgMH0pfTsKeEUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO2lmKHBsKCl8fGZuLkspVW0oImNzcCIsZnVuY3Rpb24oKXt2YXIgYj15RShhLkgsITApOyRtKGEuSCk7cmV0dXJuIGJ9LCExKSxVbSgibWRlIixmdW5jdGlvbigpe3ZhciBiPWNuLkgsYz15RShiLCExKTskbShiKTtyZXR1cm4gY30sITEpLEEuYWRkRXZlbnRMaXN0ZW5lcigic2VjdXJpdHlwb2xpY3l2aW9sYXRpb24iLGZ1bmN0aW9uKGIpe2lmKGIuZGlzcG9zaXRpb249PT0iZW5mb3JjZSIpe1AoMTc5KTt2YXIgYz1ubihiLmVmZmVjdGl2ZURpcmVjdGl2ZSk7aWYoYyl7dmFyIGQ7YTp7dmFyIGU9Yi5ibG9ja2VkVVJJLGY9a247aWYoZm4uSyYmZSl7dmFyIGc9am4oYyxlKTtpZihnKXt2YXIgaDtkPShoPWxuKGYsYykpPT1udWxsP3ZvaWQgMDpoW2ddO2JyZWFrIGF9fWQ9dm9pZCAwfXZhciBsPWQ7aWYobCl7dmFyIG47YTp7dHJ5e3ZhciBwPW5ldyBVUkwoYi5ibG9ja2VkVVJJKSxxPXAucGF0aG5hbWUuaW5kZXhPZigiOyIpOwpuPXE+PTA/cC5vcmlnaW4rcC5wYXRobmFtZS5zdWJzdHJpbmcoMCxxKTpwLm9yaWdpbitwLnBhdGhuYW1lO2JyZWFrIGF9Y2F0Y2goRCl7fW49dm9pZCAwfXZhciByPW47aWYocil7Zm9yKHZhciB0PW0obCksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpe3ZhciB2PXUudmFsdWU7aWYoIXYuRW8pe3YuRW89ITA7dmFyIHg9e2V2ZW50SWQ6di5ldmVudElkLHByaW9yaXR5SWQ6di5wcmlvcml0eUlkfTtpZihwbCgpKXt2YXIgeT14LHo9e3R5cGU6MSxibG9ja2VkVXJsOnIsZW5kcG9pbnQ6di5lbmRwb2ludCx2aW9sYXRpb246Yi5lZmZlY3RpdmVEaXJlY3RpdmV9O2lmKHBsKCkpe3ZhciBDPUxsKCJUQUdfRElBR05PU1RJQ1MiLHtldmVudElkOnk9PW51bGw/dm9pZCAwOnkuZXZlbnRJZCxwcmlvcml0eUlkOnk9PW51bGw/dm9pZCAwOnkucHJpb3JpdHlJZH0pO0MudGFnRGlhZ25vc3RpY3M9ejtvbChDKX19ekUoYSx2LmRlc3RpbmF0aW9uSWQsdi5lbmRwb2ludCxjKX19bW4oYywKYi5ibG9ja2VkVVJJKX19fX19KX07dmFyIHpFPWZ1bmN0aW9uKGEsYixjLGQpe2FuKGEuSCxiLGMsMSxkKTtWbSgiY3NwIiwhMCk7Vm0oIm1kZSIsITApO2MhPT02MSYmYyE9PTU2JiZhLks9PT12b2lkIDAmJihhLks9QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS5ILmpiPjAmJnRvKCExKTthLks9dm9pZCAwfSw1MDApKX0sQUU9bmV3IHhFO3ZhciBCRT1mdW5jdGlvbigpe3RoaXMuc2VxdWVuY2VOdW1iZXI9MH07QkUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO0NFKHRoaXMpO0lmKDY1KSYmVW0oIm10YmwiLCIxIik7VW0oInYiLCIzIik7VW0oInQiLCJ0Iik7VW0oInBpZCIsZnVuY3Rpb24oKXtyZXR1cm4gU3RyaW5nKG5tKGptLmJhLmJoKSl9KTtVbSgiZ3RtIixmdW5jdGlvbigpe3JldHVybiBkdSgpfSk7VW0oInNlcSIsZnVuY3Rpb24oKXtyZXR1cm4gU3RyaW5nKCsrYS5zZXF1ZW5jZU51bWJlcil9KTtVbSgiZXhwIixmdW5jdGlvbigpe3JldHVybiBDcCgpfSl9O3ZhciBDRT1mdW5jdGlvbihhKXtpZihubShqbS5iYS5iaCk9PT12b2lkIDApe3ZhciBiPWZ1bmN0aW9uKCl7bW0oam0uYmEuYmgsRGIoKSk7YS5zZXF1ZW5jZU51bWJlcj0wfTtiKCk7Y2QoYiw4NjRFNSl9ZWxzZSBwbShqbS5iYS5iaCxmdW5jdGlvbigpe2Euc2VxdWVuY2VOdW1iZXI9MH0pO2Euc2VxdWVuY2VOdW1iZXI9MH0sREU9bmV3IEJFO2Z1bmN0aW9uIEVFKGEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBBW2FdfX0KdmFyIEZFPXt9LEdFPShGRVsxNF09ZnVuY3Rpb24oKXt2YXIgYTtyZXR1cm4oYT1BLmNyeXB0byk9PW51bGw/dm9pZCAwOmEuZ2V0UmFuZG9tVmFsdWVzfSxGRVsxNV09ZnVuY3Rpb24oKXt2YXIgYSxiO3JldHVybihhPUEuY3J5cHRvKT09bnVsbD92b2lkIDA6KGI9YS5zdWJ0bGUpPT1udWxsP3ZvaWQgMDpiLmRpZ2VzdH0sRkVbMV09RUUoImZldGNoIiksRkVbNl09RUUoIk1hcCIpLEZFWzJdPWZ1bmN0aW9uKCl7cmV0dXJuIE1hdGgucmFuZG9tfSxGRVs4XT1mdW5jdGlvbigpe3JldHVybiBuYShPYmplY3QsImFzc2lnbiIpfSxGRVs5XT1mdW5jdGlvbigpe3JldHVybiBPYmplY3QuZW50cmllc30sRkVbMTBdPWZ1bmN0aW9uKCl7cmV0dXJuIE9iamVjdC5mcm9tRW50cmllc30sRkVbNV09RUUoIlByb21pc2UiKSxGRVsxM109RUUoIlJlZ0V4cCIpLEZFWzNdPWZ1bmN0aW9uKCl7cmV0dXJuIEhjLnNlbmRCZWFjb259LEZFWzddPUVFKCJTZXQiKSxGRVsxMl09ZnVuY3Rpb24oKXtyZXR1cm4gU3RyaW5nLnByb3RvdHlwZS5lbmRzV2l0aH0sCkZFWzExXT1mdW5jdGlvbigpe3JldHVybiBTdHJpbmcucHJvdG90eXBlLnN0YXJ0c1dpdGh9LEZFWzRdPUVFKCJYTUxIdHRwUmVxdWVzdCIpLEZFKSxIRT17fSxJRT0oSEVbMTVdPSEwLEhFKTt2YXIgTkU9L14oaHR0cHM/Oik/XC9cLy87CgpmdW5jdGlvbiBoRigpe307ZnVuY3Rpb24gaUYoKXtJZig2MikmJihoeSgiZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzIixmdW5jdGlvbihhLGIsYyl7dmFyIGQ7cmV0dXJuKChkPWMub3B0aW9ucyk9PW51bGw/dm9pZCAwOmQud2FpdEZvclRhZ3MpIT09ITB9KSxoeSgiZGV0ZWN0X2Zvcm1fc3VibWl0X2V2ZW50cyIsZnVuY3Rpb24oYSxiLGMpe3ZhciBkO3JldHVybigoZD1jLm9wdGlvbnMpPT1udWxsP3ZvaWQgMDpkLndhaXRGb3JUYWdzKSE9PSEwfSksaHkoImRldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cyIsZnVuY3Rpb24oYSxiLGMpe3ZhciBkO3JldHVybigoZD1jLm9wdGlvbnMpPT1udWxsP3ZvaWQgMDpkLmZpeE1pc3NpbmdBcGkpIT09ITB9KSl9O3ZhciBqRj1mdW5jdGlvbigpe3RoaXMuSD10aGlzLmdwcFN0cmluZz12b2lkIDB9O2pGLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuSD10aGlzLmdwcFN0cmluZz12b2lkIDB9O3ZhciBrRj1uZXcgakY7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtsdCh7R3U6MCxGdToxLEN1OjIseHU6MyxEdTo0LHl1OjUsRXU6NixBdTo3LEJ1Ojgsd3U6OSx6dToxMCxIdToxMX0pLm1hcChmdW5jdGlvbihhKXtyZXR1cm4gTnVtYmVyKGEpfSk7bHQoe0p1OjAsS3U6MSxJdToyfSkubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBOdW1iZXIoYSl9KTt2YXIgbEY9ZnVuY3Rpb24oYSxiLGMsZCl7cnQuY2FsbCh0aGlzKTt0aGlzLmZlPWI7dGhpcy5rZD1jO3RoaXMuYWM9ZDt0aGlzLkxhPW5ldyBNYXA7dGhpcy5oZT0wO3RoaXMuamE9bmV3IE1hcDt0aGlzLnlhPW5ldyBNYXA7dGhpcy5aPXZvaWQgMDt0aGlzLks9YX07d2EobEYscnQpO2xGLnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7ZGVsZXRlIHRoaXMuSDt0aGlzLkxhLmNsZWFyKCk7dGhpcy5qYS5jbGVhcigpO3RoaXMueWEuY2xlYXIoKTt0aGlzLlomJihudCh0aGlzLkssIm1lc3NhZ2UiLHRoaXMuWiksZGVsZXRlIHRoaXMuWik7ZGVsZXRlIHRoaXMuSztkZWxldGUgdGhpcy5hYztydC5wcm90b3R5cGUuTi5jYWxsKHRoaXMpfTsKdmFyIG1GPWZ1bmN0aW9uKGEpe2lmKGEuSClyZXR1cm4gYS5IO2Eua2QmJmEua2QoYS5LKT9hLkg9YS5LOmEuSD1OcChhLkssYS5mZSk7dmFyIGI7cmV0dXJuKGI9YS5IKSE9bnVsbD9iOm51bGx9LG9GPWZ1bmN0aW9uKGEsYixjKXtpZihtRihhKSlpZihhLkg9PT1hLkspe3ZhciBkPWEuTGEuZ2V0KGIpO2QmJmQoYS5ILGMpfWVsc2V7dmFyIGU9YS5qYS5nZXQoYik7aWYoZSYmZS5kayl7bkYoYSk7dmFyIGY9KythLmhlO2EueWEuc2V0KGYse3BlOmUucGUsSXI6ZS5ubyhjKSxwZXJzaXN0ZW50OmI9PT0iYWRkRXZlbnRMaXN0ZW5lciJ9KTthLkgucG9zdE1lc3NhZ2UoZS5kayhjLGYpLCIqIil9fX0sbkY9ZnVuY3Rpb24oYSl7YS5afHwoYS5aPWZ1bmN0aW9uKGIpe2lmKGIuc291cmNlPT09YS5IKXRyeXt2YXIgYztjPWEuYWM/YS5hYyhiKTp2b2lkIDA7aWYoYyl7dmFyIGQ9Yy5ZcyxlPWEueWEuZ2V0KGQpO2lmKGUpe2UucGVyc2lzdGVudHx8YS55YS5kZWxldGUoZCk7dmFyIGY7KGY9CmUucGUpPT1udWxsfHxmLmNhbGwoZSxlLklyLGMucGF5bG9hZCl9fX1jYXRjaChnKXt9fSxtdChhLkssIm1lc3NhZ2UiLGEuWikpfTt2YXIgcEY9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmxpc3RlbmVyLGQ9KDAsYS5fX2dwcCkoImFkZEV2ZW50TGlzdGVuZXIiLGMpO2QmJmMoZCwhMCl9LHFGPWZ1bmN0aW9uKGEsYil7KDAsYS5fX2dwcCkoInJlbW92ZUV2ZW50TGlzdGVuZXIiLGIubGlzdGVuZXIsYi5saXN0ZW5lcklkKX0sckY9e25vOmZ1bmN0aW9uKGEpe3JldHVybiBhLmxpc3RlbmVyfSxkazpmdW5jdGlvbihhLGIpe3ZhciBjPXt9O3JldHVybiBjLl9fZ3BwQ2FsbD17Y2FsbElkOmIsY29tbWFuZDoiYWRkRXZlbnRMaXN0ZW5lciIsdmVyc2lvbjoiMS4xIn0sY30scGU6ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLl9fZ3BwUmV0dXJuO2EoYy5yZXR1cm5WYWx1ZSxjLnN1Y2Nlc3MpfX0sc0Y9e25vOmZ1bmN0aW9uKGEpe3JldHVybiBhLmxpc3RlbmVyfSxkazpmdW5jdGlvbihhLGIpe3ZhciBjPXt9O3JldHVybiBjLl9fZ3BwQ2FsbD17Y2FsbElkOmIsY29tbWFuZDoicmVtb3ZlRXZlbnRMaXN0ZW5lciIsdmVyc2lvbjoiMS4xIiwKcGFyYW1ldGVyOmEubGlzdGVuZXJJZH0sY30scGU6ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLl9fZ3BwUmV0dXJuLGQ9Yy5yZXR1cm5WYWx1ZS5kYXRhO2E9PW51bGx8fGEoZCxjLnN1Y2Nlc3MpfX07ZnVuY3Rpb24gdEYoYSl7dmFyIGI9e307dmYoYS5kYXRhKT9iPUpTT04ucGFyc2UoYS5kYXRhKTpiPWEuZGF0YTtyZXR1cm57cGF5bG9hZDpiLFlzOmIuX19ncHBSZXR1cm4uY2FsbElkfX0KdmFyIHVGPWZ1bmN0aW9uKGEsYil7dmFyIGM7Yz0oYj09PXZvaWQgMD97fTpiKS50aW1lb3V0TXM7cnQuY2FsbCh0aGlzKTt0aGlzLmNhbGxlcj1uZXcgbEYoYSwiX19ncHBMb2NhdG9yIixmdW5jdGlvbihkKXtyZXR1cm4gdHlwZW9mIGQuX19ncHA9PT0iZnVuY3Rpb24ifSx0Rik7dGhpcy5jYWxsZXIuTGEuc2V0KCJhZGRFdmVudExpc3RlbmVyIixwRik7dGhpcy5jYWxsZXIuamEuc2V0KCJhZGRFdmVudExpc3RlbmVyIixyRik7dGhpcy5jYWxsZXIuTGEuc2V0KCJyZW1vdmVFdmVudExpc3RlbmVyIixxRik7dGhpcy5jYWxsZXIuamEuc2V0KCJyZW1vdmVFdmVudExpc3RlbmVyIixzRik7dGhpcy50aW1lb3V0TXM9YyE9bnVsbD9jOjUwMH07d2EodUYscnQpO3VGLnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7dGhpcy5jYWxsZXIuZGlzcG9zZSgpO3J0LnByb3RvdHlwZS5OLmNhbGwodGhpcyl9Owp1Ri5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9SHAoZnVuY3Rpb24oKXthKHZGLCEwKX0pLGQ9dGhpcy50aW1lb3V0TXM9PT0tMT92b2lkIDA6c2V0VGltZW91dChmdW5jdGlvbigpe2MoKX0sdGhpcy50aW1lb3V0TXMpO29GKHRoaXMuY2FsbGVyLCJhZGRFdmVudExpc3RlbmVyIix7bGlzdGVuZXI6ZnVuY3Rpb24oZSxmKXtjbGVhclRpbWVvdXQoZCk7dHJ5e3ZhciBnO3ZhciBoOygoaD1lLnBpbmdEYXRhKT09bnVsbD92b2lkIDA6aC5ncHBWZXJzaW9uKT09PXZvaWQgMHx8ZS5waW5nRGF0YS5ncHBWZXJzaW9uPT09IjEifHxlLnBpbmdEYXRhLmdwcFZlcnNpb249PT0iMS4wIj8oYi5yZW1vdmVFdmVudExpc3RlbmVyKGUubGlzdGVuZXJJZCksZz17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7aW50ZXJuYWxFcnJvclN0YXRlOjEsZ3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX0lTX0RFUFJFQ0FURURfU1BFQyIsCmFwcGxpY2FibGVTZWN0aW9uczpbLTFdfX0pOkFycmF5LmlzQXJyYXkoZS5waW5nRGF0YS5hcHBsaWNhYmxlU2VjdGlvbnMpP2c9ZTooYi5yZW1vdmVFdmVudExpc3RlbmVyKGUubGlzdGVuZXJJZCksZz17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7aW50ZXJuYWxFcnJvclN0YXRlOjIsZ3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX0VYUEVDVEVEX0FQUExJQ0FUSU9OX1NFQ1RJT05fQVJSQVkiLGFwcGxpY2FibGVTZWN0aW9uczpbLTFdfX0pO2EoZyxmKX1jYXRjaChsKXtpZihlPT1udWxsPzA6ZS5saXN0ZW5lcklkKXRyeXtiLnJlbW92ZUV2ZW50TGlzdGVuZXIoZS5saXN0ZW5lcklkKX1jYXRjaChuKXthKHdGLCEwKTtyZXR1cm59YSh4RiwhMCl9fX0pfTsKdUYucHJvdG90eXBlLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7b0YodGhpcy5jYWxsZXIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLHtsaXN0ZW5lcjpmdW5jdGlvbigpe30sbGlzdGVuZXJJZDphfSl9Owp2YXIgeEY9e2V2ZW50TmFtZToic2lnbmFsU3RhdHVzIixkYXRhOiJyZWFkeSIscGluZ0RhdGE6e2ludGVybmFsRXJyb3JTdGF0ZToyLGdwcFN0cmluZzoiR1BQX0VSUk9SX1NUUklOR19VTkFWQUlMQUJMRSIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19LGxpc3RlbmVySWQ6LTF9LHZGPXtldmVudE5hbWU6InNpZ25hbFN0YXR1cyIsZGF0YToicmVhZHkiLHBpbmdEYXRhOntncHBTdHJpbmc6IkdQUF9FUlJPUl9TVFJJTkdfTElTVEVORVJfUkVHSVNUUkFUSU9OX1RJTUVPVVQiLGludGVybmFsRXJyb3JTdGF0ZToyLGFwcGxpY2FibGVTZWN0aW9uczpbLTFdfSxsaXN0ZW5lcklkOi0xfSx3Rj17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7Z3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX1JFTU9WRV9FVkVOVF9MSVNURU5FUl9FUlJPUiIsaW50ZXJuYWxFcnJvclN0YXRlOjIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19LGxpc3RlbmVySWQ6LTF9O2Z1bmN0aW9uIHlGKGEpe3ZhciBiO2lmKCEoYj1hLnBpbmdEYXRhLnNpZ25hbFN0YXR1cz09PSJyZWFkeSIpKXt2YXIgYz1hLnBpbmdEYXRhLmFwcGxpY2FibGVTZWN0aW9ucztiPSFjfHxjLmxlbmd0aD09PTEmJmNbMF09PT0tMX1pZihiKXtrRi5ncHBTdHJpbmc9YS5waW5nRGF0YS5ncHBTdHJpbmc7dmFyIGQ9YS5waW5nRGF0YS5hcHBsaWNhYmxlU2VjdGlvbnMuam9pbigiLCIpO2tGLkg9ZH19ZnVuY3Rpb24gekYoKXt0cnl7dmFyIGE9bmV3IHVGKEEse3RpbWVvdXRNczotMX0pO21GKGEuY2FsbGVyKSYmYS5hZGRFdmVudExpc3RlbmVyKHlGKX1jYXRjaChiKXt9fTtmdW5jdGlvbiBBRigpe3ZhciBhPVtbImN2IixFKDEpXSxbInJ2IixFKDE0KV0sWyJ0YyIsY0EudGFncy5maWx0ZXIoZnVuY3Rpb24oZCl7cmV0dXJuIGR9KS5sZW5ndGhdXSxiPUpmKDE1KTtiJiZhLnB1c2goWyJ4IixiXSk7dmFyIGM9Q3AoKTtjJiZhLnB1c2goWyJ0YWdfZXhwIixjXSk7cmV0dXJuIGF9O3ZhciBCRj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPXt9O3RoaXMuSz17fTtmeihmdW5jdGlvbihiKXt2YXIgYz1iLmV2ZW50SWQsZD1iLnRmLGU9W10sZj1hLkhbY118fFtdO2YubGVuZ3RoJiZlLnB1c2goWyJoZiIsZi5qb2luKCIuIildKTt2YXIgZz1hLktbY118fFtdO2cubGVuZ3RoJiZlLnB1c2goWyJodCIsZy5qb2luKCIuIildKTtkJiYoZGVsZXRlIGEuSFtjXSxkZWxldGUgYS5LW2NdKTtyZXR1cm4gZX0pfSxDRj1mdW5jdGlvbigpe3ZhciBhPTA7cmV0dXJuIGZ1bmN0aW9uKGIpe3N3aXRjaChiKXtjYXNlIDE6YXw9MTticmVhaztjYXNlIDI6YXw9MjticmVhaztjYXNlIDM6YXw9NH1yZXR1cm4gYX19LERGO3ZhciBFRj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPSIiO2ZuLk4mJk0oNTE2KSYmZnooZnVuY3Rpb24oKXt2YXIgYj1bXTthLkgmJmIucHVzaChbInBzZCIsYS5IXSk7cmV0dXJuIGJ9KX0sRkY7ZnVuY3Rpb24gR0YoKXtyZXR1cm4hMX0KZnVuY3Rpb24gSEYoKXt2YXIgYT17fTtyZXR1cm4gZnVuY3Rpb24oYixjLGQpe319O2Z1bmN0aW9uIElGKCl7dmFyIGE9SkY7cmV0dXJuIGZ1bmN0aW9uKGIsYyxkKXt2YXIgZT1kJiZkLmV2ZW50O0tGKGMpO3ZhciBmPUJoKGIpP3ZvaWQgMDoxLGc9bmV3IGtiO0diKGMsZnVuY3Rpb24ocix0KXt2YXIgdT1VZCh0LHZvaWQgMCxmKTt1PT09dm9pZCAwJiZ0IT09dm9pZCAwJiZQKDQ0KTtnLnNldChyLHUpfSk7YS5RYihRZigpKTt2YXIgaD17Um46aGcoYiksZXZlbnRJZDplPT1udWxsP3ZvaWQgMDplLmlkLHByaW9yaXR5SWQ6ZSE9PXZvaWQgMD9lLnByaW9yaXR5SWQ6dm9pZCAwLHByaW9yaXR5UXVldWU6ZSE9PXZvaWQgMD9lLnByaW9yaXR5UXVldWU6dm9pZCAwLHdnOmUhPT12b2lkIDA/ZnVuY3Rpb24ocil7ZS5sZC53ZyhyKX06dm9pZCAwLFBiOmZ1bmN0aW9uKCl7cmV0dXJuIGJ9LGxvZzpmdW5jdGlvbigpe30sTnI6e2luZGV4OmQ9PW51bGw/dm9pZCAwOmQuaW5kZXgsdHlwZTpkPT1udWxsP3ZvaWQgMDpkLnR5cGUsbmFtZTpkPT1udWxsP3ZvaWQgMDpkLm5hbWV9LAppdDohIUtBKGIsMyksb3JpZ2luYWxFdmVudERhdGE6ZT09bnVsbD92b2lkIDA6ZS5vcmlnaW5hbEV2ZW50RGF0YX07ZSYmZS5jYWNoZWRNb2RlbFZhbHVlcyYmKGguY2FjaGVkTW9kZWxWYWx1ZXM9e2d0bTplLmNhY2hlZE1vZGVsVmFsdWVzLmd0bSxlY29tbWVyY2U6ZS5jYWNoZWRNb2RlbFZhbHVlcy5lY29tbWVyY2V9KTtpZihHRigpKXt2YXIgbD1IRigpLG4scDtoLkFiPXt3azpbXSx5Zzp7fSxqYzpmdW5jdGlvbihyLHQsdSl7dD09PTEmJihuPXIpO3Q9PT03JiYocD11KTtsKHIsdCx1KX0sZWk6VmgoKX07aC5sb2c9ZnVuY3Rpb24ocil7dmFyIHQ9T2EuYXBwbHkoMSxhcmd1bWVudHMpO24mJmwobiw0LHtsZXZlbDpyLHNvdXJjZTpwLG1lc3NhZ2U6dH0pfX0KdmFyIHE9cmYoYSxoLFtiLGddKTthLlFiKCk7cSBpbnN0YW5jZW9mIFRhJiYocS50eXBlPT09InJldHVybiI/cT1xLmRhdGE6cT12b2lkIDApO3JldHVybiBUZChxLHZvaWQgMCxmKX19ZnVuY3Rpb24gS0YoYSl7dmFyIGI9YS5ndG1PblN1Y2Nlc3MsYz1hLmd0bU9uRmFpbHVyZTt5YihiKSYmKGEuZ3RtT25TdWNjZXNzPWZ1bmN0aW9uKCl7YmQoYil9KTt5YihjKSYmKGEuZ3RtT25GYWlsdXJlPWZ1bmN0aW9uKCl7YmQoYyl9KX07dmFyIE1GPWZ1bmN0aW9uKGEpe1YoYSxILkoudGcsY28uaWEuY2IpfTtmdW5jdGlvbiBORigpe3JldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMjApfTt2YXIgT0Y9W0YuRC56aV0ubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBhLnNsaWNlKDIpfSk7dmFyIFBGPWZ1bmN0aW9uKGEpe1UoYSxGLkQuemksYWwoOCxORikpfTtmdW5jdGlvbiBRRihhKXt9UUYuUD0iaW50ZXJuYWwuYWRkQWRzQ2xpY2tJZHMiO2Z1bmN0aW9uIFJGKGEsYil7dmFyIGM9dGhpczt9UkYucHVibGljTmFtZT0iYWRkQ29uc2VudExpc3RlbmVyIjt2YXIgU0Y9ITE7ZnVuY3Rpb24gVEYoYSl7Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDsrK2IpaWYoU0YpdHJ5e2FbYl0oKX1jYXRjaChjKXtQKDc3KX1lbHNlIGFbYl0oKX1mdW5jdGlvbiBVRihhLGIsYyl7dmFyIGQ9dGhpcyxlO2lmKCFsaChhKXx8IWhoKGIpfHwhbWgoYykpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImZ1bmN0aW9uIiwic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7VEYoW2Z1bmN0aW9uKCl7TChkLCJsaXN0ZW5fZGF0YV9sYXllciIsYSl9XSk7ZT15QigpLmFkZExpc3RlbmVyKGEsVGQoYix2b2lkIDAsMSksYz09PW51bGw/dm9pZCAwOmMpO3JldHVybiBlfVVGLlA9ImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIFZGKGEsYixjKXt9VkYucHVibGljTmFtZT0iYWRkRG9jdW1lbnRFdmVudExpc3RlbmVyIjtmdW5jdGlvbiBXRihhLGIsYyxkKXt9V0YucHVibGljTmFtZT0iYWRkRWxlbWVudEV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIFhGKGEpe3JldHVybiBhLlQueGIoKX07ZnVuY3Rpb24gWUYoYSl7fVlGLnB1YmxpY05hbWU9ImFkZEV2ZW50Q2FsbGJhY2siOwp2YXIgWkY9ZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyI/YTpTdHJpbmcocmooKSl9LGJHPWZ1bmN0aW9uKGEsYil7JEYoYSwiaW5pdCIsITEpfHwoYUcoYSwiaW5pdCIsITApLGIoKSl9LCRGPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1jRyhhKTtyZXR1cm4gT2IoZCxiLGMpfSxkRz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1jRyhhKSxmPU9iKGUsYixkKSxnPWMoZik7cmV0dXJuIGVbYl09Z30sYUc9ZnVuY3Rpb24oYSxiLGMpe2NHKGEpW2JdPWN9LGNHPWZ1bmN0aW9uKGEpe3ZhciBiPWtqKCJhdXRvRXZlbnRzU2V0dGluZ3MiLGZ1bmN0aW9uKCl7cmV0dXJue319KTtiLmhhc093blByb3BlcnR5KGEpfHwoYlthXT17fSk7cmV0dXJuIGJbYV19LGVHPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD17ZXZlbnQ6YiwiZ3RtLmVsZW1lbnQiOmEsImd0bS5lbGVtZW50Q2xhc3NlcyI6b2QoYSwiY2xhc3NOYW1lIiksImd0bS5lbGVtZW50SWQiOmEuZm9yfHxlZChhLCJpZCIpfHwKIiIsImd0bS5lbGVtZW50VGFyZ2V0IjphLmZvcm1UYXJnZXR8fG9kKGEsInRhcmdldCIpfHwiIn07YyYmKGRbImd0bS50cmlnZ2VycyJdPWMuam9pbigiLCIpKTtkWyJndG0uZWxlbWVudFVybCJdPShhLmF0dHJpYnV0ZXMmJmEuYXR0cmlidXRlcy5mb3JtYWN0aW9uP2EuZm9ybUFjdGlvbjoiIil8fGEuYWN0aW9ufHxvZChhLCJocmVmIil8fGEuc3JjfHxhLmNvZGV8fGEuY29kZWJhc2V8fCIiO3JldHVybiBkfTt2YXIgaEc9ZnVuY3Rpb24oYSxiLGMpe2lmKCFhLmVsZW1lbnRzKXJldHVybiAwO2Zvcih2YXIgZD1iLmRhdGFzZXRbY10sZT0wLGY9MTtlPGEuZWxlbWVudHMubGVuZ3RoO2UrKyl7dmFyIGc9YS5lbGVtZW50c1tlXSxoPWcudGFnTmFtZS50b0xvd2VyQ2FzZSgpO2lmKCEoZkcuaW5kZXhPZihoKTwwfHxoPT09ImlucHV0IiYmZ0cuaW5kZXhPZihnLnR5cGUudG9Mb3dlckNhc2UoKSk+PTApKXtpZihnLmRhdGFzZXRbY109PT1kKXJldHVybiBmO2YrK319cmV0dXJuIDB9LGZHPVsiaW5wdXQiLCJzZWxlY3QiLCJ0ZXh0YXJlYSJdLGdHPVsiYnV0dG9uIiwiaGlkZGVuIiwiaW1hZ2UiLCJyZXNldCIsInN1Ym1pdCJdOwpmdW5jdGlvbiBpRyhhKXtpZihhLmZvcm0pe3ZhciBiO3JldHVybigoYj1hLmZvcm0pPT1udWxsPzA6Yi50YWdOYW1lKT9hLmZvcm06Qi5nZXRFbGVtZW50QnlJZChhLmZvcm0pfXJldHVybiBoZChhLFsiZm9ybSJdLDEwMCl9OwpmdW5jdGlvbiBtRyhhKXt9bUcuUD0iaW50ZXJuYWwuYWRkRm9ybUFiYW5kb25tZW50TGlzdGVuZXIiO2Z1bmN0aW9uIG5HKGEsYixjLGQpe30KbkcuUD0iaW50ZXJuYWwuYWRkRm9ybURhdGEiOwpmdW5jdGlvbiBzRyhhKXt9c0cuUD0iaW50ZXJuYWwuYWRkR2FTZW5kTGlzdGVuZXIiO2Z1bmN0aW9uIHRHKGEpe2lmKCFhKXJldHVybnt9O3ZhciBiPWEuTnI7cmV0dXJuIEpBKGIudHlwZSxiLmluZGV4LGIubmFtZSl9ZnVuY3Rpb24gdUcoYSl7aWYoIWEpcmV0dXJue307dmFyIGI9e29yaWdpbmF0aW5nRW50aXR5OnRHKGEpfTthLnByaW9yaXR5UXVldWUmJihiLnByaW9yaXR5UXVldWU9YS5wcmlvcml0eVF1ZXVlKTtyZXR1cm4gYn07ZnVuY3Rpb24gQ0coYSl7dmFyIGI9bWooInpvbmVzIik7cmV0dXJuIGI/Yi5nZXRJc0FsbG93ZWRGbih3aygpLGEpOmZ1bmN0aW9uKCl7cmV0dXJuITB9fWZ1bmN0aW9uIERHKCl7dmFyIGE9bWooInpvbmVzIik7YSYmYS51bnJlZ2lzdGVyQ2hpbGQod2soKSl9CmZ1bmN0aW9uIEVHKCl7a0IodmsoKSxmdW5jdGlvbihhKXt2YXIgYj1hLm9yaWdpbmFsRXZlbnREYXRhWyJndG0udW5pcXVlRXZlbnRJZCJdLGM9bWooInpvbmVzIik7cmV0dXJuIGM/Yy5pc0FjdGl2ZSh3aygpLGIpOiEwfSk7aEIodmsoKSxmdW5jdGlvbihhKXt2YXIgYixjO2I9YS5lbnRpdHlJZDtjPWEuc2VjdXJpdHlHcm91cHM7cmV0dXJuIENHKE51bWJlcihhLm9yaWdpbmFsRXZlbnREYXRhWyJndG0udW5pcXVlRXZlbnRJZCJdKSkoYixjKX0pfTt2YXIgRkc9ZnVuY3Rpb24oYSxiKXt0aGlzLnRhZ0lkPWE7dGhpcy5jYW5vbmljYWxJZD1ifTsKZnVuY3Rpb24gR0coYSxiKXt2YXIgYz10aGlzO3JldHVybiBhfUdHLlA9ImludGVybmFsLmxvYWRHb29nbGVUYWciO2Z1bmN0aW9uIEhHKGEpe3JldHVybiBuZXcgS2QoIiIsZnVuY3Rpb24oYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShiKTtpZihjIGluc3RhbmNlb2YgS2QpcmV0dXJuIG5ldyBLZCgiIixmdW5jdGlvbigpe3ZhciBkPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxlPXRoaXMsZj1FZChYRih0aGlzKSxudWxsKTtmLmV2ZW50SWQ9YS5ldmVudElkO2YucHJpb3JpdHlJZD1hLnByaW9yaXR5SWQ7Zi5vcmlnaW5hbEV2ZW50RGF0YT1hLm9yaWdpbmFsRXZlbnREYXRhO3ZhciBnPWQubWFwKGZ1bmN0aW9uKGwpe3JldHVybiBlLmV2YWx1YXRlKGwpfSksaD10aGlzLlQud2IoKTtoLnVlKGYpO3JldHVybiBjLk5jLmFwcGx5KGMsW2hdLmNvbmNhdCh3KGcpKSl9KX0pfTtmdW5jdGlvbiBJRyhhLGIsYyl7dmFyIGQ9dGhpczt9SUcuUD0iaW50ZXJuYWwuYWRkR29vZ2xlVGFnUmVzdHJpY3Rpb24iOwpmdW5jdGlvbiBQRyhhLGIpe31QRy5QPSJpbnRlcm5hbC5hZGRIaXN0b3J5Q2hhbmdlTGlzdGVuZXIiO2Z1bmN0aW9uIFFHKGEsYixjKXt9UUcucHVibGljTmFtZT0iYWRkV2luZG93RXZlbnRMaXN0ZW5lciI7ZnVuY3Rpb24gUkcoYSxiKXtyZXR1cm4hMH1SRy5wdWJsaWNOYW1lPSJhbGlhc0luV2luZG93IjtmdW5jdGlvbiBTRyhhLGIsYyl7fVNHLlA9ImludGVybmFsLmFwcGVuZFJlbW90ZUNvbmZpZ1BhcmFtZXRlciI7ZnVuY3Rpb24gVEcoYSl7dmFyIGI7cmV0dXJuIGJ9ClRHLnB1YmxpY05hbWU9ImNhbGxJbldpbmRvdyI7ZnVuY3Rpb24gVUcoYSl7fVVHLnB1YmxpY05hbWU9ImNhbGxMYXRlciI7ZnVuY3Rpb24gVkcoYSl7fVZHLlA9ImNhbGxPbkRvbVJlYWR5IjtmdW5jdGlvbiBXRyhhKXt9V0cuUD0iY2FsbE9uV2luZG93TG9hZCI7dmFyIFlHPWZ1bmN0aW9uKGEsYil7dmFyIGM9bm0oWEcpfHx7fSxkPWNbYV18fHt9O2lmKGRbYl0pcmV0dXJuITE7dmFyIGU9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxkKTtlW2JdPSEwO3ZhciBmPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYyk7ZlthXT1lO21tKFhHLGYpO3JldHVybiEwfSxYRz1qbS5iYS5ocjtmdW5jdGlvbiBaRyhhLGIpe2lmKCFsaChhKXx8IWxoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBjPVlHKGEsYik7cmV0dXJuIGN9WkcuUD0iaW50ZXJuYWwuY2xhaW1EZXN0aW5hdGlvbiI7ZnVuY3Rpb24gJEcoYSxiKXt2YXIgYztyZXR1cm4gY30kRy5QPSJpbnRlcm5hbC5jb21wdXRlR3RtUGFyYW1ldGVyIjtmdW5jdGlvbiBhSChhLGIpe3ZhciBjPXRoaXM7fWFILlA9ImludGVybmFsLmNvbnNlbnRTY2hlZHVsZUZpcnN0VHJ5IjtmdW5jdGlvbiBiSChhLGIpe3ZhciBjPXRoaXM7fWJILlA9ImludGVybmFsLmNvbnNlbnRTY2hlZHVsZVJldHJ5IjtmdW5jdGlvbiBjSChhKXt2YXIgYjtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyJdLGFyZ3VtZW50cyk7dmFyIGM9YTtpZigha20oYykpdGhyb3cgRXJyb3IoImNvcHlGcm9tQ3Jvc3NDb250YWluZXJEYXRhIHJlcXVpcmVzIHZhbGlkIENyb3NzQ29udGFpbmVyU2NoZW1hIGtleS4iKTt2YXIgZD1ubShjKTtiPVVkKGQsdGhpcy5ULDEpO3JldHVybiBifWNILlA9ImludGVybmFsLmNvcHlGcm9tQ3Jvc3NDb250YWluZXJEYXRhIjtmdW5jdGlvbiBkSChhLGIpe3ZhciBjO3ZhciBlPVVkKGMsdGhpcy5ULEJoKFhGKHRoaXMpLlBiKCkpPzI6MSk7ZT09PXZvaWQgMCYmYyE9PXZvaWQgMCYmUCg0NSk7cmV0dXJuIGV9ZEgucHVibGljTmFtZT0iY29weUZyb21EYXRhTGF5ZXIiOwpmdW5jdGlvbiBlSChhKXt2YXIgYj12b2lkIDA7cmV0dXJuIGJ9ZUguUD0iaW50ZXJuYWwuY29weUZyb21EYXRhTGF5ZXJDYWNoZSI7ZnVuY3Rpb24gZkgoYSl7dmFyIGI7cmV0dXJuIGJ9ZkgucHVibGljTmFtZT0iY29weUZyb21XaW5kb3ciO2Z1bmN0aW9uIGdIKGEpe3ZhciBiPXZvaWQgMDtyZXR1cm4gVWQoYix0aGlzLlQsMSl9Z0guUD0iaW50ZXJuYWwuY29weUtleUZyb21XaW5kb3ciO3ZhciBoSD1mdW5jdGlvbihhKXtyZXR1cm4gYT09PWNvLmlhLmNiJiZmby5IW2FdPT09Ym8uTWEuVWUmJiFYbyhGLkQua2EpfTt2YXIgaUg9ZnVuY3Rpb24oKXtyZXR1cm4iMCJ9LGpIPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09InN0cmluZyIpcmV0dXJuIiI7dmFyIGI9WyJnY2xpZCIsImRjbGlkIiwid2JyYWlkIiwiX2dsIl07TSgxMDIpJiZiLnB1c2goImdicmFpZCIpO3JldHVybiBTaihhLGIsIjAiKX07dmFyIGtIPXt9LGxIPXt9LG1IPXt9LG5IPXt9LG9IPXt9LHBIPXt9LHFIPXt9LHJIPXt9LHNIPXt9LHRIPXt9LHVIPXt9LHZIPXt9LHdIPXt9LHhIPXt9LHlIPXt9LHpIPXt9LEFIPXt9LEJIPXt9LENIPXt9LERIPXt9LEVIPXt9LEZIPXt9LEdIPXt9LEhIPXt9LElIPXt9LEpIPXt9LEtIPShKSFtGLkQuZmJdPShrSFsyXT1baEhdLGtIKSxKSFtGLkQuWmZdPShsSFsyXT1baEhdLGxIKSxKSFtGLkQuSmldPShtSFsyXT1baEhdLG1IKSxKSFtGLkQuZ21dPShuSFsyXT1baEhdLG5IKSxKSFtGLkQuaG1dPShvSFsyXT1baEhdLG9IKSxKSFtGLkQuaW1dPShwSFsyXT1baEhdLHBIKSxKSFtGLkQuam1dPShxSFsyXT1baEhdLHFIKSxKSFtGLkQua21dPShySFsyXT1baEhdLHJIKSxKSFtGLkQuQmNdPShzSFsyXT1baEhdLHNIKSxKSFtGLkQuY2ddPSh0SFsyXT1baEhdLHRIKSxKSFtGLkQuZGddPSh1SFsyXT1baEhdLHVIKSxKSFtGLkQuZWddPSh2SFsyXT1baEhdLHZIKSxKSFtGLkQuZmddPSh3SFsyXT0KW2hIXSx3SCksSkhbRi5ELmdnXT0oeEhbMl09W2hIXSx4SCksSkhbRi5ELmhnXT0oeUhbMl09W2hIXSx5SCksSkhbRi5ELmlnXT0oekhbMl09W2hIXSx6SCksSkhbRi5ELmpnXT0oQUhbMl09W2hIXSxBSCksSkhbRi5ELmxiXT0oQkhbMV09W2hIXSxCSCksSkhbRi5ELkRkXT0oQ0hbMV09W2hIXSxDSCksSkhbRi5ELktkXT0oREhbMV09W2hIXSxESCksSkhbRi5ELkVlXT0oRUhbMV09W2hIXSxFSCksSkhbRi5ELkJmXT0oRkhbMV09W2Z1bmN0aW9uKGEpe3JldHVybiBNKDEwMikmJmhIKGEpfV0sRkgpLEpIW0YuRC5VY109KEdIWzFdPVtoSF0sR0gpLEpIW0YuRC56YV09KEhIWzFdPVtoSF0sSEgpLEpIW0YuRC5VYV09KElIWzFdPVtoSF0sSUgpLEpIKSxMSD17fSxNSD0oTEhbRi5ELmxiXT1pSCxMSFtGLkQuRGRdPWlILExIW0YuRC5LZF09aUgsTEhbRi5ELkVlXT1pSCxMSFtGLkQuQmZdPWlILExIW0YuRC5VY109ZnVuY3Rpb24oYSl7aWYoIUNkKGEpKXJldHVybnt9O3ZhciBiPUVkKGEsCm51bGwpO2RlbGV0ZSBiLm1hdGNoX2lkO3JldHVybiBifSxMSFtGLkQuemFdPWpILExIW0YuRC5VYV09akgsTEgpLE5IPXt9LE9IPXt9LFBIPShPSFtILkouWWFdPShOSFsyXT1baEhdLE5IKSxPSCksUUg9e307dmFyIFJIPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuSD1hO3RoaXMuTj1iO3RoaXMuUj1jO3RoaXMuWj1kfTtSSC5wcm90b3R5cGUuZ2V0VmFsdWU9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP2NvLmlhLmdkOmE7aWYoIXRoaXMuTi5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBiKGEpfSkpcmV0dXJuIHRoaXMuUi5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBiKGEpfSk/dGhpcy5aKHRoaXMuSCk6dGhpcy5IfTtSSC5wcm90b3R5cGUuSz1mdW5jdGlvbigpe3JldHVybiBBZCh0aGlzLkgpPT09ImFycmF5Inx8Q2QodGhpcy5IKT9FZCh0aGlzLkgsbnVsbCk6dGhpcy5IfTsKdmFyIFNIPWZ1bmN0aW9uKCl7fSxUSD1mdW5jdGlvbihhLGIpe3RoaXMuY29uZGl0aW9ucz1hO3RoaXMuSD1ifSxVSD1mdW5jdGlvbihhLGIsYyl7dmFyIGQsZT0oKGQ9YS5jb25kaXRpb25zW2JdKT09bnVsbD92b2lkIDA6ZFsyXSl8fFtdLGYsZz0oKGY9YS5jb25kaXRpb25zW2JdKT09bnVsbD92b2lkIDA6ZlsxXSl8fFtdO3JldHVybiBuZXcgUkgoYyxlLGcsYS5IW2JdfHxTSCl9LFZILFdIO3ZhciBZSD1mdW5jdGlvbihhKXthLks9ITA7YS5IPSExO2lmKElmKDUyKSl7aWYoTSg1MTYpJiZYSCgpKXt2YXIgYjthLnNldHRpbmdzPShiPWRhdGEucHJvZHVjdFNldHRpbmdzKSE9bnVsbD9iOnt9O2EuSD0hMH1lbHNle3ZhciBjO2Euc2V0dGluZ3M9KGM9cHJvZHVjdFNldHRpbmdzKSE9bnVsbD9jOnt9fXByb2R1Y3RTZXR0aW5ncz12b2lkIDA7ZGF0YS5wcm9kdWN0U2V0dGluZ3M9dm9pZCAwO3ZhciBkOyhkPUZGKSE9bnVsbCYmZm4uTiYmTSg1MTYpJiYoZC5IPWEuSD8iMSI6IjAiKX19LCRIPWZ1bmN0aW9uKGEpe3ZhciBiPVpIO2IuS3x8WUgoYik7cmV0dXJuIGIuc2V0dGluZ3NbYV19LFpIPW5ldyBmdW5jdGlvbigpe3RoaXMuc2V0dGluZ3M9e307dGhpcy5LPXRoaXMuSD0hMX07CmZ1bmN0aW9uIFhIKCl7aWYoIWRhdGEucHJvZHVjdFNldHRpbmdzJiYhcHJvZHVjdFNldHRpbmdzKXJldHVybiEwO2lmKCFkYXRhLnByb2R1Y3RTZXR0aW5nc3x8IXByb2R1Y3RTZXR0aW5nc3x8T2JqZWN0LmtleXMoZGF0YS5wcm9kdWN0U2V0dGluZ3MpLmxlbmd0aCE9PU9iamVjdC5rZXlzKHByb2R1Y3RTZXR0aW5ncykubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgYSBpbiBwcm9kdWN0U2V0dGluZ3MpaWYoIWRhdGEucHJvZHVjdFNldHRpbmdzLmhhc093blByb3BlcnR5KGEpfHxkYXRhLnByb2R1Y3RTZXR0aW5nc1thXS5wcmVBdXRvUGlpIT09cHJvZHVjdFNldHRpbmdzW2FdLnByZUF1dG9QaWkpcmV0dXJuITE7cmV0dXJuITB9O3ZhciBhST1mdW5jdGlvbihhLGIsYyl7dGhpcy5ldmVudE5hbWU9Yjt0aGlzLk09Yzt0aGlzLkg9e307dGhpcy5pc0Fib3J0ZWQ9ITE7dGhpcy50YXJnZXQ9YTt0aGlzLm1ldGFkYXRhPXt9O2Zvcih2YXIgZD1jLmV2ZW50TWV0YWRhdGF8fHt9LGU9bShPYmplY3Qua2V5cyhkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7Vih0aGlzLGcsZFtnXSl9fSxSPWZ1bmN0aW9uKGEsYil7dmFyIGMsZDtyZXR1cm4oYz1hLkhbYl0pPT1udWxsP3ZvaWQgMDooZD1jLmdldFZhbHVlKT09bnVsbD92b2lkIDA6ZC5jYWxsKGMsUShhLEguSi50ZykpfSxldT1mdW5jdGlvbihhKXtyZXR1cm4gT2JqZWN0LmtleXMoYS5IKX0sVT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5ILGU7Yz09PXZvaWQgMD9lPXZvaWQgMDooVkghPW51bGx8fChWSD1uZXcgVEgoS0gsTUgpKSxlPVVIKFZILGIsYykpO2RbYl09ZX07CmFJLnByb3RvdHlwZS5tZXJnZUhpdERhdGFGb3JLZXk9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGU7Yz0oZD10aGlzLkhbYV0pPT1udWxsP3ZvaWQgMDooZT1kLkspPT1udWxsP3ZvaWQgMDplLmNhbGwoZCk7aWYoIWMpcmV0dXJuIFUodGhpcyxhLGIpLCEwO2lmKCFDZChjKSlyZXR1cm4hMTtVKHRoaXMsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGMsYikpO3JldHVybiEwfTt2YXIgYkk9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/e306Yjtmb3IodmFyIGM9bShPYmplY3Qua2V5cyhhLkgpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZSxmPXZvaWQgMCxnPXZvaWQgMCxoPXZvaWQgMDtiW2VdPShmPWEuSFtlXSk9PW51bGw/dm9pZCAwOihoPShnPWYpLkspPT1udWxsP3ZvaWQgMDpoLmNhbGwoZyl9cmV0dXJuIGJ9OwphSS5wcm90b3R5cGUuY29weVRvSGl0RGF0YT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Tyh0aGlzLk0sYSk7ZD09PXZvaWQgMCYmKGQ9Yik7aWYoemIoZCkmJmMhPT12b2lkIDApdHJ5e2Q9YyhkKX1jYXRjaChlKXt9ZCE9PXZvaWQgMCYmVSh0aGlzLGEsZCl9Owp2YXIgUT1mdW5jdGlvbihhLGIpe3ZhciBjPWEubWV0YWRhdGFbYl07aWYoYj09PUguSi50Zyl7dmFyIGQ7cmV0dXJuIGM9PW51bGw/dm9pZCAwOihkPWMuSyk9PW51bGw/dm9pZCAwOmQuY2FsbChjKX12YXIgZTtyZXR1cm4gYz09bnVsbD92b2lkIDA6KGU9Yy5nZXRWYWx1ZSk9PW51bGw/dm9pZCAwOmUuY2FsbChjLFEoYSxILkoudGcpKX0sVj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5tZXRhZGF0YSxlO2M9PT12b2lkIDA/ZT1jOihXSCE9bnVsbHx8KFdIPW5ldyBUSChQSCxRSCkpLGU9VUgoV0gsYixjKSk7ZFtiXT1lfSxjST1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD97fTpiO2Zvcih2YXIgYz1tKE9iamVjdC5rZXlzKGEubWV0YWRhdGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZSxmPXZvaWQgMCxnPXZvaWQgMCxoPXZvaWQgMDtiW2VdPShmPWEubWV0YWRhdGFbZV0pPT1udWxsP3ZvaWQgMDooaD0oZz1mKS5LKT09bnVsbD92b2lkIDA6CmguY2FsbChnKX1yZXR1cm4gYn0sZEk9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPSRIKGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpO3JldHVybiBkJiZkW2JdIT09dm9pZCAwP2RbYl06Y30sWnU9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9bmV3IGFJKChiPT1udWxsP3ZvaWQgMDpiLnRhcmdldCl8fGEudGFyZ2V0LChiPT1udWxsP3ZvaWQgMDpiLmV2ZW50TmFtZSl8fGEuZXZlbnROYW1lLChiPT1udWxsP3ZvaWQgMDpiLk0pfHxhLk0pLGQ9YkkoYSksZT1tKE9iamVjdC5rZXlzKGQpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtVKGMsZyxkW2ddKX1mb3IodmFyIGg9Y0koYSksbD1tKE9iamVjdC5rZXlzKGgpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZTtWKGMscCxoW3BdKX1jLmlzQWJvcnRlZD1hLmlzQWJvcnRlZDtyZXR1cm4gY30sZUk9ZnVuY3Rpb24oYSl7dmFyIGI9YS5NLGM9Yi5ldmVudElkLGQ9Yi5wcmlvcml0eUlkOwpyZXR1cm4gZD9jKyJfIitkOlN0cmluZyhjKX07YUkucHJvdG90eXBlLmFjY2VwdD1mdW5jdGlvbigpe3ZhciBhPW9tKGptLmJhLlNpLHt9KSxiPWVJKHRoaXMpLGM9dGhpcy50YXJnZXQuZGVzdGluYXRpb25JZDthW2JdfHwoYVtiXT17fSk7YVtiXVtjXT12aygpO3ZhciBkPWptLmJhLlNpO2lmKGttKGQpKXt2YXIgZTsoZT1sbShkKSk9PW51bGx8fGUubm90aWZ5KCl9fTthSS5wcm90b3R5cGUuY2FuQmVBY2NlcHRlZD1mdW5jdGlvbihhKXt2YXIgYj1ubShqbS5iYS5TaSk7aWYoIWIpcmV0dXJuITA7dmFyIGM9YltlSSh0aGlzKV07aWYoIWMpcmV0dXJuITA7dmFyIGQ9Y1thIT1udWxsP2E6dGhpcy50YXJnZXQuZGVzdGluYXRpb25JZF07cmV0dXJuIGQ9PT12b2lkIDB8fGQ9PT12aygpfTtmdW5jdGlvbiBmSShhKXtyZXR1cm57Z2V0RGVzdGluYXRpb25JZDpmdW5jdGlvbigpe3JldHVybiBhLnRhcmdldC5kZXN0aW5hdGlvbklkfSxnZXRFdmVudE5hbWU6ZnVuY3Rpb24oKXtyZXR1cm4gYS5ldmVudE5hbWV9LHNldEV2ZW50TmFtZTpmdW5jdGlvbihiKXthLmV2ZW50TmFtZT1ifSxnZXRIaXREYXRhOmZ1bmN0aW9uKGIpe3JldHVybiBSKGEsYil9LHNldEhpdERhdGE6ZnVuY3Rpb24oYixjKXtVKGEsYixjKX0sc2V0SGl0RGF0YUlmTm90RGVmaW5lZDpmdW5jdGlvbihiLGMpe1IoYSxiKT09PXZvaWQgMCYmVShhLGIsYyl9LGNvcHlUb0hpdERhdGE6ZnVuY3Rpb24oYixjKXthLmNvcHlUb0hpdERhdGEoYixjKX0sZ2V0TWV0YWRhdGE6ZnVuY3Rpb24oYil7cmV0dXJuIFEoYSxiKX0sc2V0TWV0YWRhdGE6ZnVuY3Rpb24oYixjKXtWKGEsYixjKX0saXNBYm9ydGVkOmZ1bmN0aW9uKCl7cmV0dXJuIGEuaXNBYm9ydGVkfSxhYm9ydDpmdW5jdGlvbigpe2EuaXNBYm9ydGVkPSEwfSwKZ2V0RnJvbUV2ZW50Q29udGV4dDpmdW5jdGlvbihiKXtyZXR1cm4gTyhhLk0sYil9LHJiOmZ1bmN0aW9uKCl7cmV0dXJuIGF9LGdldEhpdEtleXM6ZnVuY3Rpb24oKXtyZXR1cm4gZXUoYSl9LGdldE1lcmdlZFZhbHVlczpmdW5jdGlvbihiKXtyZXR1cm4gYS5NLmdldE1lcmdlZFZhbHVlcyhiLDMpfSxtZXJnZUhpdERhdGFGb3JLZXk6ZnVuY3Rpb24oYixjKXtyZXR1cm4gQ2QoYyk/YS5tZXJnZUhpdERhdGFGb3JLZXkoYixjKTohMX0sYWNjZXB0OmZ1bmN0aW9uKCl7YS5hY2NlcHQoKX0sY2FuQmVBY2NlcHRlZDpmdW5jdGlvbihiKXtyZXR1cm4gYS5jYW5CZUFjY2VwdGVkKGIpfX19O2Z1bmN0aW9uIGdJKGEsYil7dmFyIGM7aWYoIWVoKGEpfHwhZmgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCIsIk9iamVjdHx1bmRlZmluZWQiXSxhcmd1bWVudHMpO3ZhciBkPVRkKGIpfHx7fSxlPVRkKGEsdGhpcy5ULDEpLnJiKCksZj1lLk07ZC5vbWl0RXZlbnRDb250ZXh0JiYoZj1KQyhuZXcgeUMoZS5NLmV2ZW50SWQsZS5NLnByaW9yaXR5SWQpKSk7dmFyIGc9bmV3IGFJKGUudGFyZ2V0LGUuZXZlbnROYW1lLGYpO2lmKCFkLm9taXRIaXREYXRhKWZvcih2YXIgaD1iSShlKSxsPW0oT2JqZWN0LmtleXMoaCkpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlO1UoZyxwLGhbcF0pfWlmKGQub21pdE1ldGFkYXRhKWcubWV0YWRhdGE9e307ZWxzZSBmb3IodmFyIHE9Y0koZSkscj1tKE9iamVjdC5rZXlzKHEpKSx0PXIubmV4dCgpOyF0LmRvbmU7dD0Kci5uZXh0KCkpe3ZhciB1PXQudmFsdWU7VihnLHUscVt1XSl9Zy5pc0Fib3J0ZWQ9ZS5pc0Fib3J0ZWQ7Yz1VZChmSShnKSx0aGlzLlQsMSk7cmV0dXJuIGN9Z0kuUD0iaW50ZXJuYWwuY29weVByZUhpdCI7ZnVuY3Rpb24gaEkoYSxiKXt2YXIgYz1udWxsO3JldHVybiBVZChjLHRoaXMuVCwyKX1oSS5wdWJsaWNOYW1lPSJjcmVhdGVBcmd1bWVudHNRdWV1ZSI7ZnVuY3Rpb24gaUkoYSl7cmV0dXJuIFVkKGZ1bmN0aW9uKGMpe3ZhciBkPVNBKCk7aWYodHlwZW9mIGM9PT0iZnVuY3Rpb24iKWQoZnVuY3Rpb24oKXtjKGZ1bmN0aW9uKGYsZyxoKXt2YXIgbD0KU0EoKSxuPWwmJmwuZ2V0QnlOYW1lJiZsLmdldEJ5TmFtZShmKTtyZXR1cm4obmV3IEEuZ2FwbHVnaW5zLkxpbmtlcihuKSkuZGVjb3JhdGUoZyxoKX0pfSk7ZWxzZSBpZihBcnJheS5pc0FycmF5KGMpKXt2YXIgZT1TdHJpbmcoY1swXSkuc3BsaXQoIi4iKTtiW2UubGVuZ3RoPT09MT9lWzBdOmVbMV1dJiZkLmFwcGx5KG51bGwsYyl9ZWxzZSBpZihjPT09ImlzTG9hZGVkIilyZXR1cm4hIWQubG9hZGVkfSx0aGlzLlQsMSl9aUkuUD0iaW50ZXJuYWwuY3JlYXRlR2FDb21tYW5kUXVldWUiO2Z1bmN0aW9uIGpJKGEpe3JldHVybiBVZChmdW5jdGlvbigpe2lmKCF5YihlLnB1c2gpKXRocm93IEVycm9yKCJPYmplY3QgYXQgIithKyIgaW4gd2luZG93IGlzIG5vdCBhbiBhcnJheS4iKTtlLnB1c2guYXBwbHkoZSxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMCkpfSx0aGlzLlQsCkJoKFhGKHRoaXMpLlBiKCkpPzI6MSl9akkucHVibGljTmFtZT0iY3JlYXRlUXVldWUiO2Z1bmN0aW9uIGtJKGEsYil7dmFyIGM9bnVsbDtpZighbGgoYSl8fCFtaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dHJ5e3ZhciBkPShifHwiIikuc3BsaXQoIiIpLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4iaWciLmluZGV4T2YoZSk+PTB9KS5qb2luKCIiKTtjPW5ldyBQZChuZXcgUmVnRXhwKGEsZCkpfWNhdGNoKGUpe31yZXR1cm4gY31rSS5QPSJpbnRlcm5hbC5jcmVhdGVSZWdleCI7ZnVuY3Rpb24gbEkoYSl7fWxJLlA9ImludGVybmFsLmRlY2xhcmVDb25zZW50U3RhdGUiO2Z1bmN0aW9uIG1JKGEpe3ZhciBiPSIiO3JldHVybiBifW1JLlA9ImludGVybmFsLmRlY29kZVVybEh0bWxFbnRpdGllcyI7ZnVuY3Rpb24gbkkoYSxiLGMpe3ZhciBkO3JldHVybiBkfW5JLlA9ImludGVybmFsLmRlY29yYXRlVXJsV2l0aEdhQ29va2llcyI7ZnVuY3Rpb24gb0koKXt9b0kuUD0iaW50ZXJuYWwuZGVmZXJDdXN0b21FdmVudHMiO2Z1bmN0aW9uIHBJKGEsYil7dHJ5e3JldHVybiBhLmNsb3Nlc3QoYil9Y2F0Y2goYyl7cmV0dXJuIG51bGx9fTtmdW5jdGlvbiBxSSgpe3ZhciBhPUEuc2NyZWVuO3JldHVybnt3aWR0aDphP2Eud2lkdGg6MCxoZWlnaHQ6YT9hLmhlaWdodDowfX0KZnVuY3Rpb24gckkoYSl7aWYoQi5oaWRkZW4pcmV0dXJuITA7dmFyIGI9YS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihiLnRvcD09PWIuYm90dG9tfHxiLmxlZnQ9PT1iLnJpZ2h0fHwhQS5nZXRDb21wdXRlZFN0eWxlKXJldHVybiEwO3ZhciBjPUEuZ2V0Q29tcHV0ZWRTdHlsZShhLG51bGwpO2lmKGMudmlzaWJpbGl0eT09PSJoaWRkZW4iKXJldHVybiEwO2Zvcih2YXIgZD1hLGU9YztkOyl7aWYoZS5kaXNwbGF5PT09Im5vbmUiKXJldHVybiEwO3ZhciBmPWUub3BhY2l0eSxnPWUuZmlsdGVyO2lmKGcpe3ZhciBoPWcuaW5kZXhPZigib3BhY2l0eSgiKTtoPj0wJiYoZz1nLnN1YnN0cmluZyhoKzgsZy5pbmRleE9mKCIpIixoKSksZy5jaGFyQXQoZy5sZW5ndGgtMSk9PT0iJSImJihnPWcuc3Vic3RyaW5nKDAsZy5sZW5ndGgtMSkpLGY9U3RyaW5nKE1hdGgubWluKE51bWJlcihnKSxOdW1iZXIoZikpKSl9aWYoZiE9PXZvaWQgMCYmTnVtYmVyKGYpPD0wKXJldHVybiEwOyhkPWQucGFyZW50RWxlbWVudCkmJgooZT1BLmdldENvbXB1dGVkU3R5bGUoZCxudWxsKSl9cmV0dXJuITF9CnZhciB0ST1mdW5jdGlvbihhKXt2YXIgYj1zSSgpLGM9Yi5oZWlnaHQsZD1iLndpZHRoLGU9YS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxmPWUuYm90dG9tLWUudG9wLGc9ZS5yaWdodC1lLmxlZnQ7cmV0dXJuIGYmJmc/KDEtTWF0aC5taW4oKE1hdGgubWF4KDAtZS5sZWZ0LDApK01hdGgubWF4KGUucmlnaHQtZCwwKSkvZywxKSkqKDEtTWF0aC5taW4oKE1hdGgubWF4KDAtZS50b3AsMCkrTWF0aC5tYXgoZS5ib3R0b20tYywwKSkvZiwxKSk6MH0sc0k9ZnVuY3Rpb24oKXt2YXIgYT1CLmJvZHksYj1CLmRvY3VtZW50RWxlbWVudHx8YSYmYS5wYXJlbnRFbGVtZW50LGMsZDtpZihCLmNvbXBhdE1vZGUmJkIuY29tcGF0TW9kZSE9PSJCYWNrQ29tcGF0IiljPWI/Yi5jbGllbnRIZWlnaHQ6MCxkPWI/Yi5jbGllbnRXaWR0aDowO2Vsc2V7dmFyIGU9ZnVuY3Rpb24oZixnKXtyZXR1cm4gZiYmZz9NYXRoLm1pbihmLGcpOk1hdGgubWF4KGYsZyl9O2M9ZShiP2IuY2xpZW50SGVpZ2h0OjAsYT8KYS5jbGllbnRIZWlnaHQ6MCk7ZD1lKGI/Yi5jbGllbnRXaWR0aDowLGE/YS5jbGllbnRXaWR0aDowKX1yZXR1cm57d2lkdGg6ZCxoZWlnaHQ6Y319O3ZhciB2ST1mdW5jdGlvbihhKXtpZih1SSl7dmFyIGI9YWwoMjQsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGE+PTAmJmE8Yi5sZW5ndGgmJmJbYV0pe3ZhciBjOyhjPWJbYV0pPT1udWxsfHxjLmRpc2Nvbm5lY3QoKTtiW2FdPXZvaWQgMH19ZWxzZSBBLmNsZWFySW50ZXJ2YWwoYSl9LHlJPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGMubGVuZ3RoO2QrKyljW2RdPjE/Y1tkXT0xOmNbZF08MCYmKGNbZF09MCk7aWYodUkpe3ZhciBlPSExO2JkKGZ1bmN0aW9uKCl7ZXx8d0koYSxiLGMpKCl9KTtyZXR1cm4geEkoZnVuY3Rpb24oZil7ZT0hMDtmb3IodmFyIGc9e0hnOjB9O2cuSGc8Zi5sZW5ndGg7Zz17SGc6Zy5IZ30sZy5IZysrKWJkKGZ1bmN0aW9uKGgpe3JldHVybiBmdW5jdGlvbigpe2EoZltoLkhnXSl9fShnKSl9LApiLGMpfXJldHVybiBjZCh3SShhLGIsYyksMUUzKX0sd0k9ZnVuY3Rpb24oYSxiLGMpe2Z1bmN0aW9uIGQoaCxsKXt2YXIgbj17dG9wOjAsYm90dG9tOjAscmlnaHQ6MCxsZWZ0OjAsd2lkdGg6MCxoZWlnaHQ6MH0scD17Ym91bmRpbmdDbGllbnRSZWN0OmguZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksaW50ZXJzZWN0aW9uUmF0aW86bCxpbnRlcnNlY3Rpb25SZWN0Om4saXNJbnRlcnNlY3Rpbmc6bD4wLHJvb3RCb3VuZHM6bix0YXJnZXQ6aCx0aW1lOk5iKCl9O2JkKGZ1bmN0aW9uKCl7YShwKX0pfWZvcih2YXIgZT1bXSxmPVtdLGc9MDtnPGIubGVuZ3RoO2crKyllLnB1c2goMCksZi5wdXNoKC0xKTtjLnNvcnQoZnVuY3Rpb24oaCxsKXtyZXR1cm4gaC1sfSk7cmV0dXJuIGZ1bmN0aW9uKCl7Zm9yKHZhciBoPTA7aDxiLmxlbmd0aDtoKyspe3ZhciBsPXRJKGJbaF0pO2lmKGw+ZVtoXSlmb3IoO2ZbaF08Yy5sZW5ndGgtMSYmbD49Y1tmW2hdKzFdOylkKGJbaF0sbCksZltoXSsrO2Vsc2UgaWYobDwKZVtoXSlmb3IoO2ZbaF0+PTAmJmw8PWNbZltoXV07KWQoYltoXSxsKSxmW2hdLS07ZVtoXT1sfX19LHhJPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9bmV3IEEuSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoYSx7dGhyZXNob2xkOmN9KSxlPTA7ZTxiLmxlbmd0aDtlKyspZC5vYnNlcnZlKGJbZV0pO2Zvcih2YXIgZj1hbCgyNCxmdW5jdGlvbigpe3JldHVybltdfSksZz0wO2c8Zi5sZW5ndGg7ZysrKWlmKCFmW2ddKXJldHVybiBmW2ddPWQsZztyZXR1cm4gZi5wdXNoKGQpLTF9LHVJPSEoIUEuSW50ZXJzZWN0aW9uT2JzZXJ2ZXJ8fCFBLkludGVyc2VjdGlvbk9ic2VydmVyRW50cnkpOwp2YXIgSkk9ZnVuY3Rpb24oYSl7dmFyIGIsYz0oYj1hPT1udWxsP3ZvaWQgMDphLmluY2x1ZGVTZWxlY3RvcikhPW51bGw/YjohMCxkLGU9KGQ9YT09bnVsbD92b2lkIDA6YS5pbmNsdWRlVmlzaWJpbGl0eSkhPW51bGw/ZDohMCxmLGc9KGY9YT09bnVsbD92b2lkIDA6YS5zZWxlY3RNdWx0aXBsZUVsZW1lbnRzKSE9bnVsbD9mOiExLGg9KGE9PW51bGw/dm9pZCAwOmEuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnMpfHxbXSxsPShhPT1udWxsP3ZvaWQgMDphLmZpZWxkRmlsdGVycyl8fHtlbWFpbDohMCxwaG9uZTohMSxhZGRyZXNzOiExfSxuPWFsKDYsZnVuY3Rpb24oKXtyZXR1cm57fX0pLHA9ekkoe2luY2x1ZGVTZWxlY3RvcjpjLGluY2x1ZGVWaXNpYmlsaXR5OmUsZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnM6aCxmaWVsZEZpbHRlcnM6bH0pLHE9bltwXTtpZihxJiZOYigpLXEudGltZXN0YW1wPDIwMCl7dmFyIHI9cS5yZXN1bHQsdDsoci5lbGVtZW50cy5zb21lKGZ1bmN0aW9uKHFhKXtyZXR1cm4gcWEuZGl9KXx8CigodD1yLmdpKT09bnVsbD8wOnQuZGkpKSYmR3UoVC5XLnJqKTtyZXR1cm4gcn12YXIgdT1BSSgpLHY9dS5zdGF0dXMseD1bXSx5LHosQz1bXTtpZihNKDU2OCkpe3ZhciBEPUJJKGwpLEk9Q0kodS5lbGVtZW50cyxEKSxHPURJKEkpLE49RUkoRyxoKSxTPUZJKE4pO3k9Uy5maWx0ZXIoZnVuY3Rpb24ocWEpe3JldHVybiBxYS5EYT09PUZELkJifSlbMF07Zm9yKHZhciBXPVtdLGVhPXtJZzowfTtlYS5JZzxELmxlbmd0aDtlYT17SWc6ZWEuSWd9LGVhLklnKyspe3ZhciBqYT1OLmZpbHRlcihmdW5jdGlvbihxYSl7cmV0dXJuIGZ1bmN0aW9uKGliKXtyZXR1cm4gaWIuRGE9PT1EW3FhLklnXX19KGVhKSk7amEubGVuZ3RoPjEwJiYodj0iMyIsamE9amEuc2xpY2UoMCwxMCkpO1c9Vy5jb25jYXQoamEpfU49VzshZyYmUyYmKE49Uyk7Zm9yKHZhciBmYT0wO2ZhPE4ubGVuZ3RoO2ZhKyspe3ZhciBzYT1OW2ZhXTtzYS5EYSE9PUZELktoJiZDLnB1c2goR0koc2EsYyxlKSl9fWVsc2V7aWYobC5lbWFpbCl7dmFyIGRhPQpISSh1LmVsZW1lbnRzKTt4PUVJKGRhLGgpO3k9SUkoeCk7ZGEubGVuZ3RoPjEwJiYodj0iMyIpfSFnJiZ5JiYoeD1beV0pO2Zvcih2YXIgbWE9MDttYTx4Lmxlbmd0aDttYSsrKUMucHVzaChHSSh4W21hXSxjLGUpKTtDPUMuc2xpY2UoMCwxMCl9eSYmKHo9R0koeSxjLGUpKTt2YXIgUGE9e2VsZW1lbnRzOkMsZ2k6eixzdGF0dXM6dn07bltwXT17dGltZXN0YW1wOk5iKCkscmVzdWx0OlBhfTt2YXIgRmE7KFBhLmVsZW1lbnRzLnNvbWUoZnVuY3Rpb24ocWEpe3JldHVybiBxYS5kaX0pfHwoKEZhPVBhLmdpKT09bnVsbD8wOkZhLmRpKSkmJkd1KFQuVy5yaik7cmV0dXJuIFBhfSxEST1mdW5jdGlvbihhKXt2YXIgYj1hLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5EYT09PUZELktofSksYz1hLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5EYT09PUZELlhkfSk7aWYoYS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5jZX0pLmxlbmd0aD09PTAmJmMubGVuZ3RoPT09CjApZm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF0sZj1lLkNhLnNwbGl0KCIgIik7Zi5sZW5ndGg+MSYmYS5wdXNoKHtDYTpmWzBdLERhOkZELlhkLGVsZW1lbnQ6ZS5lbGVtZW50LE9jOmUuT2N9LHtDYTpmLnNsaWNlKDEpLmpvaW4oIiAiKSxEYTpGRC5jZSxlbGVtZW50OmUuZWxlbWVudCxPYzplLk9jfSl9Zm9yKHZhciBnLGg9MCxsLG49ZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5lZSYmdS5DYS5sZW5ndGg+PTMmJnUuQ2EubGVuZ3RoPD00fSxwPTA7cDxhLmxlbmd0aDtwKyspe3ZhciBxPWFbcF07aWYobihxKSYmZyYmcS5lbGVtZW50LnBhcmVudEVsZW1lbnQ9PT1nJiZoPDMpe2lmKGgrPTEsbCs9cS5DYSxoPT09Myl7dmFyIHI9cC1oKzE7aWYobD1LSVtGRC5lZV0ubmEobCkpYVtyXS5DYT1sfX1lbHNlIGlmKGg9MCxsPSIiLGc9dm9pZCAwLG4ocSkpe2grKztsPXEuQ2E7dmFyIHQ9dm9pZCAwO2c9KHQ9cS5lbGVtZW50LnBhcmVudEVsZW1lbnQpIT1udWxsPwp0OnZvaWQgMH19cmV0dXJuIGEuZmlsdGVyKGZ1bmN0aW9uKHUpe3JldHVybiFuKHUpfSl9LE9JPWZ1bmN0aW9uKGEsYil7aWYoYS52YWx1ZSYmTEkuaW5kZXhPZigoYS50eXBlfHwidGV4dCIpLnRvTG93ZXJDYXNlKCkpIT09LTEpe3ZhciBjPWEuYXV0b2NvbXBsZXRlO2lmKGMpZm9yKHZhciBkPWMuc3BsaXQoIiAiKSxlPTA7ZTxkLmxlbmd0aDtlKyspe3ZhciBmPU1JKGEudmFsdWUsYixkW2VdKTtpZihmKXJldHVybiBmfXZhciBnLGg9W2EubmFtZSxhLmlkLChnPWEuYXJpYUxhYmVsKSE9bnVsbD9nOnZvaWQgMCxhLnBsYWNlaG9sZGVyXSxsPWEucGFyZW50RWxlbWVudDtsJiZsLnRhZ05hbWU9PT0iTEFCRUwiJiZoLnB1c2gobC5pbm5lclRleHQpO3ZhciBuPWEucHJldmlvdXNFbGVtZW50U2libGluZztuJiZuLnRhZ05hbWU9PT0iTEFCRUwiJiYhbi5odG1sRm9yJiZoLnB1c2gobi5pbm5lclRleHQpO2lmKGEuaWQpe3ZhciBwPVtdO3RyeXtwPWRvY3VtZW50LmJvZHkucXVlcnlTZWxlY3RvckFsbCgnbGFiZWxbZm9yPSInKwphLmlkKyciXScpfWNhdGNoKEQpe31mb3IodmFyIHE9MDtxPHAubGVuZ3RoO3ErKyloLnB1c2gocFtxXS5pbm5lclRleHQpfWg9aC5maWx0ZXIoZnVuY3Rpb24oRCl7cmV0dXJuIEQmJkQudHJpbSgpfSk7Zm9yKHZhciByLHQ9MCx1PTA7dTxoLmxlbmd0aDt1Kyspe3ZhciB2PU5JKGEsYixoW3VdKTtpZih2KXt2YXIgeD12LHk9eC5DYSx6PXguRGEsQz14LlhzO0M+dCYmKHQ9QyxyPXtDYTp5LERhOnp9KX19cmV0dXJuIHJ9fSxOST1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF07aWYoS0lbZV0ubmUpe3ZhciBmPUtJW2VdLm5lLmV4ZWMoYy50cmltKCkpO2lmKGYpe3ZhciBnPWEsaD1bXSxsPWcudmFsdWUudHJpbSgpO2wmJmgucHVzaChsKTtpZihnLnRhZ05hbWU9PT0iU0VMRUNUIil0cnl7dmFyIG49Zy5xdWVyeVNlbGVjdG9yKCdbdmFsdWU9IicrZy52YWx1ZSsnIl0nKSxwPW4mJm4uaW5uZXJUZXh0LnRyaW0oKTtwJiZoLnB1c2gocCl9Y2F0Y2godSl7fWZvcih2YXIgcT0KaCxyPXZvaWQgMCx0PTA7dDxxLmxlbmd0aCYmIXI7dCsrKXI9S0lbZV0ubmEocVt0XSk7aWYocilyZXR1cm57RGE6ZSxDYTpyLFhzOmZbMF0ubGVuZ3RoL2MudHJpbSgpLmxlbmd0aH19fX19LE1JPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXTtpZihLSVtlXS5hdXRvY29tcGxldGUmJktJW2VdLmF1dG9jb21wbGV0ZS5pbmRleE9mKGMpPj0wKXt2YXIgZj1LSVtlXS5uYShhLnRyaW0oKSk7aWYoZilyZXR1cm57RGE6ZSxDYTpmfX19fSxCST1mdW5jdGlvbihhKXt2YXIgYj1bXTthLmVtYWlsJiZiLnB1c2goRkQuQmIpO2EucGhvbmUmJmIucHVzaChGRC5lZSk7YS5hZGRyZXNzJiZiLnB1c2goRkQuWGQsRkQuY2UsRkQueGYsRkQucWcsRkQuS2gpO3JldHVybiBifSxDST1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDxhLmxlbmd0aDtkKyspe3ZhciBlPWFbZF0sZj1lLmVsZW1lbnQsZz1lLk9jLGg7YTp7dmFyIGw9ZixuPWIsCnA9bC5pbm5lckhUTUw7UEkuaW5kZXhPZihsLnRhZ05hbWUpPj0wJiYocD1sLnZhbHVlfHxwKTtpZihwKXt2YXIgcTtiOntmb3IodmFyIHI9cCx0PW4sdT0wO3U8dC5sZW5ndGg7dSsrKXt2YXIgdj10W3VdO2lmKCFLSVt2XS5tZSl7dmFyIHg9S0lbdl0ubmEoci50cmltKCkpO2lmKHgpe3E9e0RhOnYsQ2E6eH07YnJlYWsgYn19fXE9dm9pZCAwfWlmKHEpe2g9cTticmVhayBhfWlmKFBJLmluZGV4T2YobC50YWdOYW1lKSE9PS0xKXtoPU9JKGwsbik7YnJlYWsgYX19aD12b2lkIDB9dmFyIHk9aDtpZih5KXt2YXIgej15O2MucHVzaCh7Q2E6ei5DYSxEYTp6LkRhLGVsZW1lbnQ6ZixPYzpnfSl9fXJldHVybiBjfSxGST1mdW5jdGlvbihhKXt2YXIgYj1bXTtpZihhLmxlbmd0aD09PTApcmV0dXJuIGI7dmFyIGM9e30sZDtmb3IoZCBpbiBGRClpZihjPXtWZzpjLlZnfSxjLlZnPWQsRkQuaGFzT3duUHJvcGVydHkoYy5WZykpe3ZhciBlPWEuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmdW5jdGlvbihnKXtyZXR1cm4gZy5EYT09PQpGRFtmLlZnXX19KGMpKTtlLmxlbmd0aCE9PTAmJihGRFtjLlZnXT09PUZELkJiJiYoZT1RSShlLGZ1bmN0aW9uKGYpe3JldHVybiFSSS50ZXN0KGYuQ2EpfSksZT1RSShlLGZ1bmN0aW9uKGYpe3JldHVybiBmLmVsZW1lbnQudGFnTmFtZS50b1VwcGVyQ2FzZSgpPT09IklOUFVUIn0pLGU9UUkoZSxmdW5jdGlvbihmKXtyZXR1cm4hckkoZi5lbGVtZW50KX0pKSxiLnB1c2goZVswXSkpfXJldHVybiBifSxHST1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5lbGVtZW50LGU9YS5PYyxmPXtDYTphLkNhLHR5cGU6YS5EYSx0YWdOYW1lOmQudGFnTmFtZX07aWYoYil7dmFyIGcsaD1TSShkKTtpZihnPShlP2UrInwiK2g6aCkuc2xpY2UoMCxUSSkpZi5xdWVyeVNlbGVjdG9yPWd9YyYmKGYuaXNWaXNpYmxlPSFySShkKSk7ZSYmKGYuZGk9ITApO3JldHVybiBmfSx6ST1mdW5jdGlvbihhKXt2YXIgYixjLGQsZTtiPWEuaW5jbHVkZVNlbGVjdG9yO2M9YS5pbmNsdWRlVmlzaWJpbGl0eTtkPWEuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnM7CmU9YS5maWVsZEZpbHRlcnM7dmFyIGY9ISFiKyIuIishIWM7ZC5sZW5ndGgmJihmKz0iLiIrZC5qb2luKCIuIikpO3JldHVybiBmKz0iLiIrZS5lbWFpbCsiLiIrZS5waG9uZSsiLiIrZS5hZGRyZXNzfSxJST1mdW5jdGlvbihhKXtpZihhLmxlbmd0aCE9PTApe3ZhciBiO2I9UUkoYSxmdW5jdGlvbihjKXtyZXR1cm4hUkkudGVzdChjLkNhKX0pO2I9UUkoYixmdW5jdGlvbihjKXtyZXR1cm4gYy5lbGVtZW50LnRhZ05hbWUudG9VcHBlckNhc2UoKT09PSJJTlBVVCJ9KTtiPVFJKGIsZnVuY3Rpb24oYyl7cmV0dXJuIXJJKGMuZWxlbWVudCl9KTtyZXR1cm4gYlswXX19LEVJPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGEubGVuZ3RoO2QrKyl7Zm9yKHZhciBlPSEwLGY9MDtmPGIubGVuZ3RoO2YrKyl7dmFyIGc9YltmXTtpZihnJiZwSShhW2RdLmVsZW1lbnQsZykpe2U9ITE7YnJlYWt9fWFbZF0uRGE9PT1GRC5CYiYmTSg2MDIpJiYoUkkudGVzdChhW2RdLkNhKXx8YVtkXS5lbGVtZW50LnRhZ05hbWUudG9VcHBlckNhc2UoKT09PQoiQSImJmFbZF0uZWxlbWVudC5oYXNBdHRyaWJ1dGUoImhyZWYiKSYmYVtkXS5lbGVtZW50LmdldEF0dHJpYnV0ZSgiaHJlZiIpLmluZGV4T2YoIm1haWx0bzoiKSE9PS0xP2U9ITE6YVtkXS5lbGVtZW50LmNsb3Nlc3QoImZvb3RlciIpIT09bnVsbCYmKGU9ITEpKTtlJiZjLnB1c2goYVtkXSl9cmV0dXJuIGN9LFFJPWZ1bmN0aW9uKGEsYil7aWYoYS5sZW5ndGg8PTEpcmV0dXJuIGE7dmFyIGM9YS5maWx0ZXIoYik7cmV0dXJuIGMubGVuZ3RoPT09MD9hOmN9LFNJPWZ1bmN0aW9uKGEpe2lmKGE9PT1CLmJvZHkpcmV0dXJuImJvZHkiO2lmKGEuaWQpcmV0dXJuIiMiK2EuaWQ7dmFyIGI9YS5wYXJlbnRFbGVtZW50O2lmKGIpe3ZhciBjPVNJKGIpLGQ9VUkoYSxiKSxlPVZJKGEpKyI6bnRoLWNoaWxkKCIrZCsiKSI7cmV0dXJuIGM/YysiPiIrZTplfXZhciBmPWEucGFyZW50Tm9kZTtpZihmIGluc3RhbmNlb2YgU2hhZG93Um9vdCl7dmFyIGc9VUkoYSxmKTtyZXR1cm4gVkkoYSkrIjpudGgtY2hpbGQoIisKZysiKSJ9cmV0dXJuIGEudGFnTmFtZT9hLnRhZ05hbWUudG9Mb3dlckNhc2UoKToiIn0sVkk9ZnVuY3Rpb24oYSl7aWYoYS5jbGFzc0xpc3QmJmEuY2xhc3NMaXN0Lmxlbmd0aD4wKXt2YXIgYj1BcnJheS5mcm9tKGEuY2xhc3NMaXN0LGZ1bmN0aW9uKGMpe3JldHVybiBDU1MuZXNjYXBlKGMpfSkuZmlsdGVyKGZ1bmN0aW9uKGMpe3JldHVybiBjLmxlbmd0aD4wfSk7aWYoYi5sZW5ndGg+MClyZXR1cm4iLiIrYi5qb2luKCIuIil9cmV0dXJuIiJ9LFVJPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWIuY2hpbGRyZW4sZD0wO2Q8Yy5sZW5ndGg7ZCsrKWlmKGNbZF09PT1hKXJldHVybiBkKzE7cmV0dXJuIDF9LEhJPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWFbY10sZT1kLmVsZW1lbnQsZj1kLk9jLGc9ZS50ZXh0Q29udGVudDtlLnRhZ05hbWUudG9VcHBlckNhc2UoKT09PSJJTlBVVCImJmUudmFsdWUmJihnPWUudmFsdWUpO2lmKGcpe3ZhciBoPQpnLm1hdGNoKEtEKTtpZihoKXt2YXIgbD1oWzBdO0xEKGwpfHxiLnB1c2goe2VsZW1lbnQ6ZSxDYTpsLERhOkZELkJiLE9jOmZ9KX19fXJldHVybiBifSxBST1mdW5jdGlvbigpe3ZhciBhPVtdLGI9Qi5ib2R5O2lmKCFiKXJldHVybntlbGVtZW50czphLHN0YXR1czoiNCJ9O3ZhciBjPVdJKGIsMCwiIixhKTtyZXR1cm57ZWxlbWVudHM6YSxzdGF0dXM6Y319LFdJPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT1hLnF1ZXJ5U2VsZWN0b3JBbGwoIioiKSxmPWUubGVuZ3RoPjFFND8iMiI6IjEiLGc9MDtnPE1hdGgubWluKGUubGVuZ3RoLDFFNCk7ZysrKXt2YXIgaD1lW2ddO2lmKCEoWEkuaW5kZXhPZihoLnRhZ05hbWUudG9VcHBlckNhc2UoKSk+PTApJiZoLmNoaWxkcmVuIGluc3RhbmNlb2YgSFRNTENvbGxlY3Rpb24pe3ZhciBsPSExO2lmKE0oNTgyKSYmaC5zaGFkb3dSb290JiZiPDEpe3ZhciBuPVNJKGgpO1dJKGguc2hhZG93Um9vdCxiKzEsYz9jKyJ8IituOm4sZCk9PT0iMiImJgooZj0iMiIpO2w9ITB9dmFyIHA9ITE7aWYoIWwpZm9yKHZhciBxPTA7cTxNYXRoLm1pbihoLmNoaWxkRWxlbWVudENvdW50LDFFNCk7cSsrKWlmKCEoWUkuaW5kZXhPZihoLmNoaWxkcmVuW3FdLnRhZ05hbWUudG9VcHBlckNhc2UoKSk+PTApKXtwPSEwO2JyZWFrfSghcCYmIWx8fE0oNTY4KSYmUEkuaW5kZXhPZihoLnRhZ05hbWUpIT09LTEpJiZkLnB1c2goe2VsZW1lbnQ6aCxPYzpiPjA/Yzp2b2lkIDB9KX19cmV0dXJuIGZ9LFJJPS9zdXBwb3J0fG5vcmVwbHkvaSxYST0iU0NSSVBUIFNUWUxFIElNRyBTVkcgUEFUSCBCUiBOT1NDUklQVCBURVhUQVJFQSIuc3BsaXQoIiAiKSxZST1bIkJSIl0sVEk9TmYoNzAsNTApLFBJPVsiSU5QVVQiLCJTRUxFQ1QiXSxMST0idGV4dCB0ZWwgc2VhcmNoIG51bWJlciBoaWRkZW4gZW1haWwgc2VsZWN0LW9uZSIuc3BsaXQoIiAiKSxaST1SZWdFeHAoInBob25lfG1vYmlsZXxjb250YWN0Lj9udW1iZXJ8dGVsZWZvbm51bW1lcnx0ZWxlZm9ub3x0ZWxcdTAwZTlmb25vfHRlbGZpeGV8XHU5NmZiXHU4YTcxfHRlbGVmb25lfHRlbGVtb3ZlbHxcdTA0NDJcdTA0MzVcdTA0M2JcdTA0MzVcdTA0NDRcdTA0M2VcdTA0M2R8XHUwOTJlXHUwOTRiXHUwOTJjXHUwOTNlXHUwOTA3XHUwOTMyfFx1NzUzNVx1OGJkZHxcdTYyNGJcdTY3M2FcdTUzZjd8XHUwZDJlXHUwZDRhXHUwZDJjXHUwZDQ4XHUwZDMyXHUwZDRkXHUyMDBkfChefFstX10pdGVsWy1fXT8oXFxkKykqKFxcWy4qXFxdKSokfCg/Olx1YzgwNFx1ZDY1NHxcdWQ1NzhcdWI0ZGNcdWQzZjB8XHVkNzM0XHViMzAwXHVkM2YwfFx1ZDczNFx1YjMwMFx1YzgwNFx1ZDY1NCkoPzouP1x1YmM4OFx1ZDYzOCk/fChcXGJ8X3xcXCopdGVsZWZvbihcXGJ8X3xcXCopfHRlbGVwb258cG9uc2VsfChub21vcnxub1xcLj8pLj8oaHB8aGFuZHBob25lKSIsCiJpIiksJEk9UmVnRXhwKCJebmFtZXxmdWxsLj9uYW1lfHlvdXIuP25hbWV8Y3VzdG9tZXIuP25hbWV8YmlsbC4/bmFtZXxzaGlwLj9uYW1lfG5hbWUuKmZpcnN0LipsYXN0fGZpcnN0YW5kbGFzdG5hbWV8Y29udGFjdC4/KG5hbWV8cGVyc29uKXxub21icmUuKnkuKmFwZWxsaWRvc3xebm9tKD8hW2EtekEtWl0pfFx1MzA0YVx1NTQwZFx1NTI0ZHxcdTZjMGZcdTU0MGR8Xm5vbWV8XHUwNjQ2XHUwNjI3XHUwNjQ1LipcdTA2NDZcdTA2MjdcdTA2NDUuKlx1MDYyZVx1MDYyN1x1MDY0Nlx1MDY0OFx1MDYyN1x1MDYyZlx1MDZhZlx1MDZjY3xcdTU5ZDNcXHMqXHU1NDBkfFx1MDQzYVx1MDQzZVx1MDQzZFx1MDQ0Mlx1MDQzMFx1MDQzYVx1MDQ0Mlx1MDQzZFx1MDQzZVx1MDQzNS4/XHUwNDNiXHUwNDM4XHUwNDQ2XHUwNDNlfChcXGJ8X3xcXCopYWRbXHUwMTMxXT8gc295YWRbXHUwMTMxXT8oXFxifF98XFwqKXxcdWMxMzFcdWJhODV8bmFtYS4/KGxlbmdrYXB8cGVuZXJpbWF8a2FtdSkiLAoiaSIpLGFKPVJlZ0V4cCgiZmlyc3QuKm5hbWV8aW5pdGlhbHN8Zm5hbWV8Zmlyc3QkfGdpdmVuLipuYW1lfHZvcm5hbWV8bm9tYnJlfGZvcmVuYW1lfHByXHUwMGU5bm9tfHByZW5vbXxcdTU0MGR8bm9tZXxcdTA0MThcdTA0M2NcdTA0NGZ8XHUwNjQ2XHUwNjI3XHUwNjQ1fFx1Yzc3NFx1Yjk4NHxcdTBkMmFcdTBkNDdcdTBkMzBcdTBkNGR8KFxcYnxffFxcKikoaXNpbXxhZHxhZChpfFx1MDEzMXxpbml6fFx1MDEzMW5cdTAxMzF6KT8pKFxcYnxffFxcKil8XHUwOTI4XHUwOTNlXHUwOTJlfG5hbWEgZGVwYW4iLCJpIiksYko9UmVnRXhwKCJsYXN0LipuYW1lfGxuYW1lfHN1cm5hbWUoPyFcXGQpfGxhc3QkfHNlY29uZG5hbWV8ZmFtaWx5LipuYW1lfG5hY2huYW1lfGFwZWxsaWRvcz98ZmFtaWxsZXxebm9tKD8hW2EtekEtWl0pfGNvZ25vbWV8XHU1OWQzfGFwZWxpZG9zfHN1cmVuYW1lfHNvYnJlbm9tZXxcdTA0MjRcdTA0MzBcdTA0M2NcdTA0MzhcdTA0M2JcdTA0MzhcdTA0NGZ8XHUwNjQ2XHUwNjI3XHUwNjQ1LipcdTA2MmVcdTA2MjdcdTA2NDZcdTA2NDhcdTA2MjdcdTA2MmZcdTA2YWZcdTA2Y2N8XHUwOTA5XHUwOTJhXHUwOTI4XHUwOTNlXHUwOTJlfFx1MGQyZVx1MGQzMVx1MGQ0MVx1MGQyYVx1MGQ0N1x1MGQzMFx1MGQ0ZHwoXFxifF98XFwqKShzb3lpc2ltfHNveWFkKGl8XHUwMTMxfGluaXp8XHUwMTMxblx1MDEzMXopPykoXFxifF98XFwqKXxcXGJcdWMxMzEoPzpbXlx1YmE4NV18XFxiKXxuYW1hIGJlbGFrYW5nIiwKImkiKSxjSj1SZWdFeHAoImNvdW50cnl8Y291bnRyaWVzfHBhXHUwMGVkc3xwYWlzfChcXGJ8XylsYW5kKFxcYnxfKSg/IS4qKG1hcmsuKikpfChefFteKFx1NTE2NXxcdTUxZmEpXSlcdTU2ZmR8XHU1NmZkXHU1YmI2fFx1YWQ2ZFx1YWMwMHxcdWIwOThcdWI3N2N8KFxcYnxfKShcdTAwZmNsa2V8dWxjZXx1bGtlKShcXGJ8Xyl8XHUwNmE5XHUwNjM0XHUwNjQ4XHUwNjMxfG5lZ2FyYSIsImkiKSxkSj1SZWdFeHAoIihefFteLl0pemlwfHBvc3RhbHxwb3N0Lipjb2RlfHBjb2RlfHBpbi4/Y29kZXxwb3N0bGVpdHphaGx8XFxiY3BcXGJ8XFxiY2RwXFxifFxcYmNhcFxcYnxcdTkwZjVcdTRmYmZcdTc1NmFcdTUzZjd8Y29kaWdvfGNvZHBvc3xcXGJjZXBcXGJ8XHUwNDFmXHUwNDNlXHUwNDQ3XHUwNDQyXHUwNDNlXHUwNDMyXHUwNDRiXHUwNDM5Lj9cdTA0MThcdTA0M2RcdTA0MzRcdTA0MzVcdTA0M2FcdTA0NDF8XHUwOTJhXHUwOTNmXHUwOTI4Lj9cdTA5MTVcdTA5NGJcdTA5MjF8XHUwZDJhXHUwZDNmXHUwZDI4XHUwZDRkXHUyMDBkXHUwZDE1XHUwZDRiXHUwZDIxXHUwZDRkfFx1OTBhZVx1NjUzZlx1N2YxNlx1NzgwMXxcdTkwYWVcdTdmMTZ8XHU5MGY1XHU5MDVlXHU1MzQwXHU4NjVmfChcXGJ8Xylwb3N0YSBrb2R1KFxcYnxfKXxcdWM2YjBcdWQzYjguP1x1YmM4OFx1ZDYzOHxrb2RlLj9wb3MiLAoiaSIpLGVKPXt9LEtJPShlSltGRC5CYl09e21lOiExLG5hOk1EfSxlSltGRC5lZV09e21lOiEwLGF1dG9jb21wbGV0ZTpbInRlbCIsInRlbC1uYXRpb25hbCIsInRlbC1sb2NhbCJdLG5lOlpJLG5hOmZ1bmN0aW9uKGEpe3JldHVybiBHRChhLCEwKX19LGVKW0ZELktoXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsibmFtZSIsImNjLW5hbWUiXSxuZTokSSxuYTpORH0sZUpbRkQuWGRdPXttZTohMCxhdXRvY29tcGxldGU6WyJnaXZlbi1uYW1lIiwiY2MtZ2l2ZW4tbmFtZSJdLG5lOmFKLG5hOk5EfSxlSltGRC5jZV09e21lOiEwLGF1dG9jb21wbGV0ZTpbImZhbWlseS1uYW1lIiwiY2MtZmFtaWx5LW5hbWUiXSxuZTpiSixuYTpORH0sZUpbRkQueGZdPXttZTohMCxhdXRvY29tcGxldGU6WyJjb3VudHJ5IiwiY291bnRyeS1uYW1lIl0sbmU6Y0osbmE6TkR9LGVKW0ZELnFnXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsicG9zdGFsLWNvZGUiXSxuZTpkSixuYTpJRH0sZUopO2Z1bmN0aW9uIGZKKGEpe3ZhciBiO0wodGhpcywiZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSIsImF1dG8iKTt2YXIgYz1UZChhKXx8e30sZD1KSSh7aW5jbHVkZVNlbGVjdG9yOiEhYy5pbmNsdWRlU2VsZWN0b3IsaW5jbHVkZVZpc2liaWxpdHk6ISFjLmluY2x1ZGVWaXNpYmlsaXR5LGV4Y2x1ZGVFbGVtZW50U2VsZWN0b3JzOmMuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnMsZmllbGRGaWx0ZXJzOmMuZmllbGRGaWx0ZXJzLHNlbGVjdE11bHRpcGxlRWxlbWVudHM6ISFjLnNlbGVjdE11bHRpcGxlRWxlbWVudHN9KTtiPW5ldyBrYjt2YXIgZT1uZXcgR2Q7Yi5zZXQoImVsZW1lbnRzIixlKTtmb3IodmFyIGY9ZC5lbGVtZW50cyxnPTA7ZzxmLmxlbmd0aDtnKyspZS5wdXNoKGdKKGZbZ10pKTtkLmdpIT09dm9pZCAwJiZiLnNldCgicHJlZmVycmVkRW1haWxFbGVtZW50IiwKZ0ooZC5naSkpO2Iuc2V0KCJzdGF0dXMiLGQuc3RhdHVzKTtpZihjLnJlYWRGcm9tRGF0YUxheWVyKXtoSihlLGMpO3ZhciBoPVBEKCksbD1oLnN0O2Iuc2V0KCJkYXRhTGF5ZXJTZWFyY2hUaW1lIixoLnZ0KTtiLnNldCgiZGF0YUxheWVyU2VhcmNoQ291bnQiLGwpfXJldHVybiBifQp2YXIgaUo9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgRkQuQmI6cmV0dXJuImVtYWlsIjtjYXNlIEZELmVlOnJldHVybiJwaG9uZV9udW1iZXIiO2Nhc2UgRkQuWGQ6cmV0dXJuImZpcnN0X25hbWUiO2Nhc2UgRkQuY2U6cmV0dXJuImxhc3RfbmFtZSI7Y2FzZSBGRC50ajpyZXR1cm4ic3RyZWV0IjtjYXNlIEZELmxpOnJldHVybiJjaXR5IjtjYXNlIEZELmpqOnJldHVybiJyZWdpb24iO2Nhc2UgRkQucWc6cmV0dXJuInBvc3RhbF9jb2RlIjtjYXNlIEZELnhmOnJldHVybiJjb3VudHJ5In19LGpKPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBrYixjPWlKKGEuRGEpO2MhPT12b2lkIDAmJmIuc2V0KCJ0eXBlIixjKTtiLnNldCgidXNlckRhdGEiLGEuQ2EpO2Iuc2V0KCJ0YWdOYW1lIiwiRExZUiIpO3JldHVybiBifSxoSj1mdW5jdGlvbihhLGIpe3ZhciBjPVFEKCk7aWYoTSg1NjgpKWZvcih2YXIgZD1uZXcgU2V0KGEuaGMoKS5tYXAoZnVuY3Rpb24ocil7cmV0dXJuIHIuZ2V0KCJ0eXBlIil9KSksCmU9bShjKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9bShmLnZhbHVlKSxoPWcubmV4dCgpLnZhbHVlLGw9Zy5uZXh0KCkudmFsdWUsbj1oLHA9bDtpZihiLnNlbGVjdE11bHRpcGxlRWxlbWVudHMpYS5wdXNoKGpKKHApKTtlbHNle3ZhciBxPWlKKG4pO3EmJiFkLmhhcyhxKSYmYS5wdXNoKGpKKHApKX19ZWxzZSBjLmhhcyhGRC5CYikmJihiLnNlbGVjdE11bHRpcGxlRWxlbWVudHN8fGEubGVuZ3RoKCk9PT0wKSYmYS5wdXNoKGpKKGMuZ2V0KEZELkJiKSkpfSxnSj1mdW5jdGlvbihhKXt2YXIgYj1uZXcga2I7Yi5zZXQoInVzZXJEYXRhIixhLkNhKTtiLnNldCgidGFnTmFtZSIsYS50YWdOYW1lKTthLnF1ZXJ5U2VsZWN0b3IhPT12b2lkIDAmJmIuc2V0KCJxdWVyeVNlbGVjdG9yIixhLnF1ZXJ5U2VsZWN0b3IpO2EuaXNWaXNpYmxlIT09dm9pZCAwJiZiLnNldCgiaXNWaXNpYmxlIixhLmlzVmlzaWJsZSk7aWYoTSg1NjgpKXt2YXIgYz1pSihhLnR5cGUpO2MhPT0Kdm9pZCAwJiZiLnNldCgidHlwZSIsYyl9ZWxzZSBzd2l0Y2goYS50eXBlKXtjYXNlIEZELkJiOmIuc2V0KCJ0eXBlIiwiZW1haWwiKX1yZXR1cm4gYn07ZkouUD0iaW50ZXJuYWwuZGV0ZWN0VXNlclByb3ZpZGVkRGF0YSI7CnZhciBrSj1mdW5jdGlvbihhKXt2YXIgYj1oZChhLFsiYnV0dG9uIiwiaW5wdXQiXSw1MCk7aWYoIWIpcmV0dXJuIG51bGw7dmFyIGM9U3RyaW5nKGIudGFnTmFtZSkudG9Mb3dlckNhc2UoKTtpZihjPT09ImJ1dHRvbiIpcmV0dXJuIGI7aWYoYz09PSJpbnB1dCIpe3ZhciBkPWVkKGIsInR5cGUiKTtpZihkPT09ImJ1dHRvbiJ8fGQ9PT0ic3VibWl0Inx8ZD09PSJpbWFnZSJ8fGQ9PT0iZmlsZSJ8fGQ9PT0icmVzZXQiKXJldHVybiBifXJldHVybiBudWxsfSxsSj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Yy50YXJnZXQ7aWYoZCl7dmFyIGU9JEYoYSwiaW5kaXZpZHVhbEVsZW1lbnRJZHMiLFtdKTtpZihlLmxlbmd0aD4wKXt2YXIgZj1lRyhkLGIsZSk7dUUoZil9dmFyIGc9ITEsaD0kRihhLCJjb21tb25CdXR0b25JZHMiLFtdKTtpZihoLmxlbmd0aD4wKXt2YXIgbD1rSihkKTtpZihsKXt2YXIgbj1lRyhsLGIsaCk7dUUobik7Zz0hMH19dmFyIHA9JEYoYSwic2VsZWN0b3JUb1RyaWdnZXJJZHMiLAp7fSkscTtmb3IocSBpbiBwKWlmKHAuaGFzT3duUHJvcGVydHkocSkpe3ZhciByPWc/cFtxXS5maWx0ZXIoZnVuY3Rpb24odil7cmV0dXJuIGguaW5kZXhPZih2KT09PS0xfSk6cFtxXTtpZihyLmxlbmd0aCE9PTApe3ZhciB0PXBJKGQscSk7aWYodCl7dmFyIHU9ZUcodCxiLHIpO3VFKHUpfX19fX07CmZ1bmN0aW9uIG1KKGEsYil7aWYoIWZoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3R8dW5kZWZpbmVkIiwiYW55Il0sYXJndW1lbnRzKTt2YXIgYz1hP1RkKGEpOnt9LGQ9SmIoYy5tYXRjaENvbW1vbkJ1dHRvbnMpLGU9ISFjLmNzc1NlbGVjdG9yLGY9WkYoYik7TCh0aGlzLCJkZXRlY3RfY2xpY2tfZXZlbnRzIixjLm1hdGNoQ29tbW9uQnV0dG9ucyxjLmNzc1NlbGVjdG9yKTt2YXIgZz1jLnVzZVYyRXZlbnROYW1lPyJndG0uY2xpY2stdjIiOiJndG0uY2xpY2siLGg9Yy51c2VWMkV2ZW50TmFtZT8iZWNsIjoiY2wiLGw9ZnVuY3Rpb24ocCl7cC5wdXNoKGYpO3JldHVybiBwfTtpZihlfHxkKXtpZihkJiZkRyhoLCJjb21tb25CdXR0b25JZHMiLGwsW10pLGUpe3ZhciBuPUxiKFN0cmluZyhjLmNzc1NlbGVjdG9yKSk7ZEcoaCwic2VsZWN0b3JUb1RyaWdnZXJJZHMiLApmdW5jdGlvbihwKXtwLmhhc093blByb3BlcnR5KG4pfHwocFtuXT1bXSk7bChwW25dKTtyZXR1cm4gcH0se30pfX1lbHNlIGRHKGgsImluZGl2aWR1YWxFbGVtZW50SWRzIixsLFtdKTtiRyhoLGZ1bmN0aW9uKCl7JGMoQiwiY2xpY2siLGZ1bmN0aW9uKHApe2xKKGgsZyxwKX0sITApfSk7cmV0dXJuIGZ9bUouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25DbGljayI7CnZhciBuSj1mdW5jdGlvbigpe3RoaXMuSD1bXTt0aGlzLk49ISFBLk11dGF0aW9uT2JzZXJ2ZXJ9O25KLnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7aWYodGhpcy5ILmxlbmd0aD09PTApe3ZhciBjPWZ1bmN0aW9uKCl7dmFyIGQ9Qi5ib2R5O2lmKGQpaWYoYi5OKShuZXcgTXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbigpe2Zvcih2YXIgZj0wO2Y8Yi5ILmxlbmd0aDtmKyspYmQoYi5IW2ZdKX0pKS5vYnNlcnZlKGQse2NoaWxkTGlzdDohMCxzdWJ0cmVlOiEwfSk7ZWxzZXt2YXIgZT0hMTskYyhkLCJET01Ob2RlSW5zZXJ0ZWQiLGZ1bmN0aW9uKCl7ZXx8KGU9ITAsYmQoZnVuY3Rpb24oKXtlPSExO2Zvcih2YXIgZj0wO2Y8Yi5ILmxlbmd0aDtmKyspYmQoYi5IW2ZdKX0pKX0pfX07Qi5ib2R5P2MoKTpiZChjKX10aGlzLkgucHVzaChhKX07bkoucHJvdG90eXBlLlI9ZnVuY3Rpb24oYSl7aWYodGhpcy5IKWZvcih2YXIgYj0wO2I8dGhpcy5ILmxlbmd0aDtiKyspdGhpcy5IW2JdPT09CmEmJnRoaXMuSC5zcGxpY2UoYiwxKX07dmFyIG9KPW5ldyBuSjsKZnVuY3Rpb24gdEooYSxiKXtyZXR1cm4gcH10Si5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkVsZW1lbnRWaXNpYmlsaXR5IjtmdW5jdGlvbiB1Sigpe311Si5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkVycm9yIjsKdmFyIHdKPWZ1bmN0aW9uKGEsYil7R2IoYSxmdW5jdGlvbihjLGQpe3ZhciBlPWJbY107ZSYmR2IoZCxmdW5jdGlvbihmLGcpe3ZKKGcsZSl9KX0pfSx6Sj1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXt2YXIgaD0iIitiO2lmKGNbaF0pY1toXS5wdXNoKGEpO2Vsc2V7dmFyIGw9W2FdO2NbaF09bDt2YXIgbj1kW2hdO258fChuPXt9LGRbaF09bik7ZS5wdXNoKGZ1bmN0aW9uKHApe3ZhciBxPXAudGFyZ2V0O2lmKHEpe3ZhciByPWlHKHEpO2lmKHIpe3ZhciB0PXhKKHIsImd0bUZvcm1JbnRlcmFjdElkIixmKSx1PXhKKHEsImd0bUZvcm1JbnRlcmFjdEZpZWxkSWQiLGcpO2lmKHQhPT1udWxsJiZ1IT09bnVsbCl7dmFyIHY9blt0XTt2Pyh2LlJiJiYoQS5jbGVhclRpbWVvdXQodi5SYiksdi5kZi5nZXRBdHRyaWJ1dGUoImRhdGEtZ3RtLWZvcm0taW50ZXJhY3QtZmllbGQtaWQiKSE9PXUmJnZKKHYsbCkpLHYuZGY9cSx5Sih2LGwsYikpOihuW3RdPXtmb3JtOnIsZGY6cSxzZXF1ZW5jZU51bWJlcjowLApSYjpudWxsfSx5SihuW3RdLGwsYikpfX19fSl9fSx2Sj1mdW5jdGlvbihhLGIpe3ZhciBjPWEuZm9ybSxkPWEuZGYsZT1lRyhjLCJndG0uZm9ybUludGVyYWN0IixiKSxmPWMuYWN0aW9uO2YmJmYudGFnTmFtZSYmKGY9Yy5jbG9uZU5vZGUoITEpLmFjdGlvbik7ZVsiZ3RtLmVsZW1lbnRVcmwiXT1mO2VbImd0bS5pbnRlcmFjdGVkRm9ybU5hbWUiXT1jLmdldEF0dHJpYnV0ZSgibmFtZSIpIT1udWxsP2MuZ2V0QXR0cmlidXRlKCJuYW1lIik6dm9pZCAwO2VbImd0bS5pbnRlcmFjdGVkRm9ybUxlbmd0aCJdPWMubGVuZ3RoO2VbImd0bS5pbnRlcmFjdGVkRm9ybUZpZWxkIl09ZDtlWyJndG0uaW50ZXJhY3RlZEZvcm1GaWVsZElkIl09ZC5pZDtlWyJndG0uaW50ZXJhY3RlZEZvcm1GaWVsZE5hbWUiXT1kLmdldEF0dHJpYnV0ZSgibmFtZSIpIT1udWxsP2QuZ2V0QXR0cmlidXRlKCJuYW1lIik6dm9pZCAwO2VbImd0bS5pbnRlcmFjdGVkRm9ybUZpZWxkUG9zaXRpb24iXT1oRyhjLGQsImd0bUZvcm1JbnRlcmFjdEZpZWxkSWQiKTsKZVsiZ3RtLmludGVyYWN0ZWRGb3JtRmllbGRUeXBlIl09ZC5nZXRBdHRyaWJ1dGUoInR5cGUiKSE9bnVsbD9kLmdldEF0dHJpYnV0ZSgidHlwZSIpOnZvaWQgMDtlWyJndG0uaW50ZXJhY3RTZXF1ZW5jZU51bWJlciJdPWEuc2VxdWVuY2VOdW1iZXI7dUUoZSk7YS5zZXF1ZW5jZU51bWJlcisrO2EuUmI9bnVsbH0seUo9ZnVuY3Rpb24oYSxiLGMpe2M/YS5SYj1BLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2SihhLGIpfSxjKTp2SihhLGIpfSx4Sj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7dHJ5e2lmKGQ9YS5kYXRhc2V0W2JdKXJldHVybiBkO2Q9U3RyaW5nKGMoKSk7YS5kYXRhc2V0W2JdPWR9Y2F0Y2goZSl7ZD1udWxsfXJldHVybiBkfTsKZnVuY3Rpb24gQUooYSxiKXt2YXIgYz10aGlzO2lmKCFmaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0fHVuZGVmaW5lZCIsImFueSJdLGFyZ3VtZW50cyk7VEYoW2Z1bmN0aW9uKCl7TChjLCJkZXRlY3RfZm9ybV9pbnRlcmFjdGlvbl9ldmVudHMiKX1dKTt2YXIgZD1aRihiKSxlPWEmJk51bWJlcihhLmdldCgiaW50ZXJ2YWwiKSk7ZT4wJiZpc0Zpbml0ZShlKXx8KGU9MCk7aWYoJEYoImZpbCIsImluaXQiLCExKSl7dmFyIGY9JEYoImZpbCIsInJlZyIpO2lmKGYpZihkLGUpO2Vsc2UgdGhyb3cgRXJyb3IoIkZhaWxlZCB0byByZWdpc3RlciB0cmlnZ2VyOiAiK2QpO31lbHNle3ZhciBnPXt9LGg9W10sbD17fSxuPTAscD1mdW5jdGlvbigpe3JldHVybiBuKyt9LHE9MCxyPWZ1bmN0aW9uKCl7cmV0dXJuIHErK307JGMoQiwiY2hhbmdlIiwKZnVuY3Rpb24odCl7Zm9yKHZhciB1PTA7dTxoLmxlbmd0aDt1KyspaFt1XSh0KX0pOyRjKEEsInBhZ2VoaWRlIixmdW5jdGlvbigpe3dKKGwsZyl9KTt6SihkLGUsZyxsLGgscCxyKTthRygiZmlsIiwicmVnIixmdW5jdGlvbih0LHUpe3pKKHQsdSxnLGwsaCxwLHIpfSk7YUcoImZpbCIsImluaXQiLCEwKX1yZXR1cm4gZH1BSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1JbnRlcmFjdGlvbiI7CnZhciBCSj1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPSRGKCJmc2wiLGM/Im52Lm13dCI6Im13dCIsMCksZztnPWM/JEYoImZzbCIsIm52LmlkcyIsW10pOiRGKCJmc2wiLCJpZHMiLFtdKTtpZighZy5sZW5ndGgpcmV0dXJuITA7dmFyIGg9ZUcoYSwiZ3RtLmZvcm1TdWJtaXQiLGcpLGw9YS5hY3Rpb247bCYmbC50YWdOYW1lJiYobD1hLmNsb25lTm9kZSghMSkuYWN0aW9uKTtQKDEyMSk7aWYobD09PSJodHRwczovL3d3dy5mYWNlYm9vay5jb20vdHIvIilyZXR1cm4gUCgxMjIpLCEwO2hbImd0bS5lbGVtZW50VXJsIl09bDtoWyJndG0uZm9ybUNhbmNlbGVkIl09YzthLmdldEF0dHJpYnV0ZSgibmFtZSIpIT1udWxsJiYoaFsiZ3RtLmludGVyYWN0ZWRGb3JtTmFtZSJdPWEuZ2V0QXR0cmlidXRlKCJuYW1lIikpO2UmJihoWyJndG0uZm9ybVN1Ym1pdEVsZW1lbnQiXT1lLGhbImd0bS5mb3JtU3VibWl0RWxlbWVudFRleHQiXT1lLnZhbHVlKTtpZihkJiZmKXtpZighc0UoaCxqRShiLApmKSxmKSlyZXR1cm4hMX1lbHNlIEZ5KDEsImd0bS5mb3JtU3VibWl0Iiksc0UoaCxmdW5jdGlvbigpe30sZnx8MkUzKTtyZXR1cm4hMH0sQ0o9ZnVuY3Rpb24oKXt2YXIgYT1bXSxiPWZ1bmN0aW9uKGMpe3JldHVybiBDYihhLGZ1bmN0aW9uKGQpe3JldHVybiBkLmZvcm09PT1jfSl9O3JldHVybntzdG9yZTpmdW5jdGlvbihjLGQpe3ZhciBlPWIoYyk7ZT9lLmJ1dHRvbj1kOmEucHVzaCh7Zm9ybTpjLGJ1dHRvbjpkfSl9LGdldDpmdW5jdGlvbihjKXt2YXIgZD1iKGMpO2lmKGQpcmV0dXJuIGQuYnV0dG9ufX19LERKPWZ1bmN0aW9uKGEpe3ZhciBiPWEudGFyZ2V0O3JldHVybiBiJiZiIT09Il9zZWxmIiYmYiE9PSJfcGFyZW50IiYmYiE9PSJfdG9wIj8hMTohMH0sRUo9ZnVuY3Rpb24oKXt2YXIgYT1DSigpLGI9SFRNTEZvcm1FbGVtZW50LnByb3RvdHlwZS5zdWJtaXQ7JGMoQiwiY2xpY2siLGZ1bmN0aW9uKGMpe3ZhciBkPWMudGFyZ2V0O2lmKGQpe3ZhciBlPWhkKGQsWyJidXR0b24iLAoiaW5wdXQiXSwxMDApO2lmKGUmJihlLnR5cGU9PT0ic3VibWl0Inx8ZS50eXBlPT09ImltYWdlIikmJmUubmFtZSYmZWQoZSwidmFsdWUiKSl7dmFyIGY9aUcoZSk7ZiYmYS5zdG9yZShmLGUpfX19LCExKTskYyhCLCJzdWJtaXQiLGZ1bmN0aW9uKGMpe3ZhciBkPWMudGFyZ2V0O2lmKCFkKXJldHVybiBjLnJldHVyblZhbHVlO3ZhciBlPWMuZGVmYXVsdFByZXZlbnRlZHx8Yy5yZXR1cm5WYWx1ZT09PSExLGY9REooZCkmJiFlLGc9YS5nZXQoZCksaD0hMDtpZihCSihkLGZ1bmN0aW9uKCl7aWYoaCl7dmFyIGw9bnVsbCxuPXt9O2cmJihsPUIuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSxsLnR5cGU9ImhpZGRlbiIsbC5uYW1lPWcubmFtZSxsLnZhbHVlPWcudmFsdWUsZC5hcHBlbmRDaGlsZChsKSxnLmhhc0F0dHJpYnV0ZSgiZm9ybWFjdGlvbiIpJiYobi5hY3Rpb249ZC5nZXRBdHRyaWJ1dGUoImFjdGlvbiIpLHhjKGQsZy5nZXRBdHRyaWJ1dGUoImZvcm1hY3Rpb24iKSkpLGcuaGFzQXR0cmlidXRlKCJmb3JtZW5jdHlwZSIpJiYKKG4uZW5jdHlwZT1kLmdldEF0dHJpYnV0ZSgiZW5jdHlwZSIpLGQuc2V0QXR0cmlidXRlKCJlbmN0eXBlIixnLmdldEF0dHJpYnV0ZSgiZm9ybWVuY3R5cGUiKSkpLGcuaGFzQXR0cmlidXRlKCJmb3JtbWV0aG9kIikmJihuLm1ldGhvZD1kLmdldEF0dHJpYnV0ZSgibWV0aG9kIiksZC5zZXRBdHRyaWJ1dGUoIm1ldGhvZCIsZy5nZXRBdHRyaWJ1dGUoImZvcm1tZXRob2QiKSkpLGcuaGFzQXR0cmlidXRlKCJmb3JtdmFsaWRhdGUiKSYmKG4udmFsaWRhdGU9ZC5nZXRBdHRyaWJ1dGUoInZhbGlkYXRlIiksZC5zZXRBdHRyaWJ1dGUoInZhbGlkYXRlIixnLmdldEF0dHJpYnV0ZSgiZm9ybXZhbGlkYXRlIikpKSxnLmhhc0F0dHJpYnV0ZSgiZm9ybXRhcmdldCIpJiYobi50YXJnZXQ9ZC5nZXRBdHRyaWJ1dGUoInRhcmdldCIpLGQuc2V0QXR0cmlidXRlKCJ0YXJnZXQiLGcuZ2V0QXR0cmlidXRlKCJmb3JtdGFyZ2V0IikpKSk7Yi5jYWxsKGQpO2wmJihkLnJlbW92ZUNoaWxkKGwpLG4uaGFzT3duUHJvcGVydHkoImFjdGlvbiIpJiYKeGMoZCxuLmFjdGlvbiksbi5oYXNPd25Qcm9wZXJ0eSgiZW5jdHlwZSIpJiZkLnNldEF0dHJpYnV0ZSgiZW5jdHlwZSIsbi5lbmN0eXBlKSxuLmhhc093blByb3BlcnR5KCJtZXRob2QiKSYmZC5zZXRBdHRyaWJ1dGUoIm1ldGhvZCIsbi5tZXRob2QpLG4uaGFzT3duUHJvcGVydHkoInZhbGlkYXRlIikmJmQuc2V0QXR0cmlidXRlKCJ2YWxpZGF0ZSIsbi52YWxpZGF0ZSksbi5oYXNPd25Qcm9wZXJ0eSgidGFyZ2V0IikmJmQuc2V0QXR0cmlidXRlKCJ0YXJnZXQiLG4udGFyZ2V0KSl9fSxlLGYsZykpaD0hMTtlbHNlIHJldHVybiBlfHwoYy5wcmV2ZW50RGVmYXVsdCYmYy5wcmV2ZW50RGVmYXVsdCgpLGMucmV0dXJuVmFsdWU9ITEpLCExO3JldHVybiBjLnJldHVyblZhbHVlfSwhMSk7SFRNTEZvcm1FbGVtZW50LnByb3RvdHlwZS5zdWJtaXQ9ZnVuY3Rpb24oKXt2YXIgYz10aGlzLGQ9ITA7QkooYyxmdW5jdGlvbigpe2QmJmIuY2FsbChjKX0sITEsREooYykpJiYoYi5jYWxsKGMpLGQ9CiExKX19OwpmdW5jdGlvbiBGSihhLGIpe3ZhciBjPXRoaXM7aWYoIWZoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3R8dW5kZWZpbmVkIiwiYW55Il0sYXJndW1lbnRzKTt2YXIgZD1hJiZhLmdldCgid2FpdEZvclRhZ3MiKTtURihbZnVuY3Rpb24oKXtMKGMsImRldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHMiLHt3YWl0Rm9yVGFnczohIWR9KX1dKTt2YXIgZT1hJiZhLmdldCgiY2hlY2tWYWxpZGF0aW9uIiksZj1aRihiKTtpZihkKXt2YXIgZz1OdW1iZXIoYS5nZXQoIndhaXRGb3JUYWdzVGltZW91dCIpKTtnPjAmJmlzRmluaXRlKGcpfHwoZz0yRTMpO3ZhciBoPWZ1bmN0aW9uKG4pe3JldHVybiBNYXRoLm1heChnLG4pfTtkRygiZnNsIiwibXd0IixoLDApO2V8fGRHKCJmc2wiLCJudi5td3QiLGgsMCl9dmFyIGw9ZnVuY3Rpb24obil7bi5wdXNoKGYpOwpyZXR1cm4gbn07ZEcoImZzbCIsImlkcyIsbCxbXSk7ZXx8ZEcoImZzbCIsIm52LmlkcyIsbCxbXSk7JEYoImZzbCIsImluaXQiLCExKXx8KEVKKCksYUcoImZzbCIsImluaXQiLCEwKSk7cmV0dXJuIGZ9RkouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25Gb3JtU3VibWl0IjsKZnVuY3Rpb24gS0ooKXt2YXIgYT10aGlzO31LSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkdhU2VuZCI7CnZhciBNSj1mdW5jdGlvbihhLGIsYyxkKXtjPWM9PT12b2lkIDA/e306YztkPWQ9PT12b2lkIDA/W106ZDt2YXIgZT0iIitiO2lmKGNbZV0pY1tlXS5wdXNoKGEpO2Vsc2V7dmFyIGY9W2FdO2NbZV09Zjt2YXIgZz1MSigiZ3RtLmhpc3RvcnlDaGFuZ2UtdjIiKSxoPS0xO2QucHVzaChmdW5jdGlvbihsKXtoPj0wJiZBLmNsZWFyVGltZW91dChoKTtiP2g9QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZyhsLGYpO2g9LTF9LGIpOmcobCxmKX0pfX0sTEo9ZnVuY3Rpb24oYSl7dmFyIGI9QS5sb2NhdGlvbi5ocmVmLGM9e3NvdXJjZTpudWxsLHN0YXRlOkEuaGlzdG9yeS5zdGF0ZXx8bnVsbCx1cmw6T2ooUmooYikpLGtiOkxqKFJqKGIpLCJmcmFnbWVudCIpfTtyZXR1cm4gZnVuY3Rpb24oZCxlKXt2YXIgZj1jLGc9e307Z1tmLnNvdXJjZV09ITA7Z1tkLnNvdXJjZV09ITA7aWYoIWcucG9wc3RhdGV8fCFnLmhhc2hjaGFuZ2V8fGYua2IhPT1kLmtiKXt2YXIgaD17ZXZlbnQ6YSwiZ3RtLmhpc3RvcnlDaGFuZ2VTb3VyY2UiOmQuc291cmNlLAoiZ3RtLm9sZFVybEZyYWdtZW50IjpjLmtiLCJndG0ubmV3VXJsRnJhZ21lbnQiOmQua2IsImd0bS5vbGRIaXN0b3J5U3RhdGUiOmMuc3RhdGUsImd0bS5uZXdIaXN0b3J5U3RhdGUiOmQuc3RhdGUsImd0bS5vbGRVcmwiOmMudXJsLCJndG0ubmV3VXJsIjpkLnVybH07ZSYmKGhbImd0bS50cmlnZ2VycyJdPWUuam9pbigiLCIpKTtjPWQ7dUUoaCl9fX0sTko9ZnVuY3Rpb24oYSxiKXt2YXIgYz1BLmhpc3RvcnksZD1jW2FdO2lmKHliKGQpKXRyeXtjW2FdPWZ1bmN0aW9uKGUsZixnKXtkLmFwcGx5KGMsW10uc2xpY2UuY2FsbChhcmd1bWVudHMsMCkpO3ZhciBoPUEubG9jYXRpb24uaHJlZjtiKHtzb3VyY2U6YSxzdGF0ZTplLHVybDpPaihSaihoKSksa2I6TGooUmooaCksImZyYWdtZW50Iil9KX19Y2F0Y2goZSl7fX0sUEo9ZnVuY3Rpb24oYSl7QS5hZGRFdmVudExpc3RlbmVyKCJwb3BzdGF0ZSIsZnVuY3Rpb24oYil7dmFyIGM9T0ooYik7YSh7c291cmNlOiJwb3BzdGF0ZSIsc3RhdGU6Yi5zdGF0ZSwKdXJsOk9qKFJqKGMpKSxrYjpMaihSaihjKSwiZnJhZ21lbnQiKX0pfSl9LFFKPWZ1bmN0aW9uKGEpe0EuYWRkRXZlbnRMaXN0ZW5lcigiaGFzaGNoYW5nZSIsZnVuY3Rpb24oYil7dmFyIGM9T0ooYik7YSh7c291cmNlOiJoYXNoY2hhbmdlIixzdGF0ZTpudWxsLHVybDpPaihSaihjKSksa2I6TGooUmooYyksImZyYWdtZW50Iil9KX0pfSxPSj1mdW5jdGlvbihhKXt2YXIgYixjO3JldHVybigoYj1hLnRhcmdldCk9PW51bGw/dm9pZCAwOihjPWIubG9jYXRpb24pPT1udWxsP3ZvaWQgMDpjLmhyZWYpfHxBLmxvY2F0aW9uLmhyZWZ9OwpmdW5jdGlvbiBSSihhLGIpe3ZhciBjPXRoaXM7aWYoIWZoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3R8dW5kZWZpbmVkIiwiYW55Il0sYXJndW1lbnRzKTtURihbZnVuY3Rpb24oKXtMKGMsImRldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMiKX1dKTt2YXIgZD1hJiZhLmdldCgidXNlVjJFdmVudE5hbWUiKT8iZWhsIjoiaGwiLGU9TnVtYmVyKGEmJmEuZ2V0KCJpbnRlcnZhbCIpKTtlPjAmJmlzRmluaXRlKGUpfHwoZT0wKTt2YXIgZjtpZighJEYoZCwiaW5pdCIsITEpKXt2YXIgZz17fSxoPVtdLGw7ZD09PSJlaGwiPyhsPWZ1bmN0aW9uKHApe2Zvcih2YXIgcT0wO3E8aC5sZW5ndGg7cSsrKWhbcV0ocCl9LGY9WkYoYiksTUooZixlLGcsaCksYUcoZCwicmVnIixmdW5jdGlvbihwLHEpe01KKHAscSxnLGgpfSkpOmw9TEooImd0bS5oaXN0b3J5Q2hhbmdlIik7ClFKKGwpO1BKKGwpO05KKCJwdXNoU3RhdGUiLGwpO05KKCJyZXBsYWNlU3RhdGUiLGwpO2FHKGQsImluaXQiLCEwKX1lbHNlIGlmKGQ9PT0iZWhsIil7dmFyIG49JEYoZCwicmVnIik7biYmKGY9WkYoYiksbihmLGUpKX1kPT09ImhsIiYmKGY9dm9pZCAwKTtyZXR1cm4gZn1SSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkhpc3RvcnlDaGFuZ2UiO3ZhciBTSj1bImh0dHA6Ly8iLCJodHRwczovLyIsImphdmFzY3JpcHQ6IiwiZmlsZTovLyJdOwp2YXIgVEo9ZnVuY3Rpb24oYSxiKXtpZihhLndoaWNoPT09Mnx8YS5jdHJsS2V5fHxhLnNoaWZ0S2V5fHxhLmFsdEtleXx8YS5tZXRhS2V5KXJldHVybiExO3ZhciBjPW9kKGIsImhyZWYiKTtpZihjLmluZGV4T2YoIjoiKSE9PS0xJiYhU0ouc29tZShmdW5jdGlvbihoKXtyZXR1cm4gU2IoYyxoKX0pKXJldHVybiExO3ZhciBkPWMuaW5kZXhPZigiIyIpLGU9b2QoYiwidGFyZ2V0Iik7aWYoZSYmZSE9PSJfc2VsZiImJmUhPT0iX3BhcmVudCImJmUhPT0iX3RvcCJ8fGQ9PT0wKXJldHVybiExO2lmKGQ+MCl7dmFyIGY9T2ooUmooYykpLGc9T2ooUmooQS5sb2NhdGlvbi5ocmVmKSk7cmV0dXJuIGYhPT1nfXJldHVybiEwfSxVSj1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1MaihSaigoYi5hdHRyaWJ1dGVzJiZiLmF0dHJpYnV0ZXMuZm9ybWFjdGlvbj9iLmZvcm1BY3Rpb246IiIpfHxiLmFjdGlvbnx8b2QoYiwiaHJlZiIpfHxiLnNyY3x8Yi5jb2RlfHxiLmNvZGViYXNlfHwiIiksImhvc3QiKSwKZD0wO2Q8YS5sZW5ndGg7ZCsrKXRyeXtpZigobmV3IFJlZ0V4cChhW2RdKSkudGVzdChjKSlyZXR1cm4hMX1jYXRjaChlKXt9cmV0dXJuITB9LFZKPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShjKXt2YXIgZD1jLnRhcmdldDtpZihkJiZjLndoaWNoIT09MyYmIShjLkh8fGMudGltZVN0YW1wJiZjLnRpbWVTdGFtcD09PWIpKXtiPWMudGltZVN0YW1wO2Q9aGQoZCxbImEiLCJhcmVhIl0sMTAwKTtpZighZClyZXR1cm4gYy5yZXR1cm5WYWx1ZTt2YXIgZT1jLmRlZmF1bHRQcmV2ZW50ZWR8fGMucmV0dXJuVmFsdWU9PT0hMSxmPSRGKCJsY2wiLGU/Im52Lm13dCI6Im13dCIsMCksZztnPWU/JEYoImxjbCIsIm52LmlkcyIsW10pOiRGKCJsY2wiLCJpZHMiLFtdKTtmb3IodmFyIGg9W10sbD0wO2w8Zy5sZW5ndGg7bCsrKXt2YXIgbj1nW2xdLHA9JEYoImxjbCIsImFmZi5tYXAiLHt9KVtuXTtwJiYhVUoocCxkKXx8aC5wdXNoKG4pfWlmKGgubGVuZ3RoKXt2YXIgcT1USihjLGQpLHI9ZUcoZCwiZ3RtLmxpbmtDbGljayIsCmgpO3JbImd0bS5lbGVtZW50VGV4dCJdPWZkKGQpO3JbImd0bS53aWxsT3BlbkluTmV3V2luZG93Il09IXE7aWYocSYmIWUmJmYmJmQuaHJlZil7dmFyIHQ9ISFDYihTdHJpbmcob2QoZCwicmVsIil8fCIiKS5zcGxpdCgiICIpLGZ1bmN0aW9uKHkpe3JldHVybiB5LnRvTG93ZXJDYXNlKCk9PT0ibm9yZWZlcnJlciJ9KSx1PUFbKG9kKGQsInRhcmdldCIpfHwiX3NlbGYiKS5zdWJzdHJpbmcoMSldLHY9ITAseD10RShmdW5jdGlvbigpe3ZhciB5O2lmKHk9diYmdSl7dmFyIHo7YTppZih0KXt2YXIgQzt0cnl7Qz1uZXcgTW91c2VFdmVudChjLnR5cGUse2J1YmJsZXM6ITB9KX1jYXRjaChEKXtpZighQi5jcmVhdGVFdmVudCl7ej0hMTticmVhayBhfUM9Qi5jcmVhdGVFdmVudCgiTW91c2VFdmVudHMiKTtDLmluaXRFdmVudChjLnR5cGUsITAsITApfUMuSD0hMDtjLnRhcmdldC5kaXNwYXRjaEV2ZW50KEMpO3o9ITB9ZWxzZSB6PSExO3k9IXp9eSYmKHUubG9jYXRpb24uaHJlZj1vZChkLAoiaHJlZiIpKX0sZik7aWYoaUUocix4LGYpKXY9ITE7ZWxzZSByZXR1cm4gYy5wcmV2ZW50RGVmYXVsdCYmYy5wcmV2ZW50RGVmYXVsdCgpLGMucmV0dXJuVmFsdWU9ITF9ZWxzZSBzRShyLGZ1bmN0aW9uKCl7fSxmfHwyRTMpO3JldHVybiEwfX19dmFyIGI9MDskYyhCLCJjbGljayIsYSwhMSk7JGMoQiwiYXV4Y2xpY2siLGEsITEpfTsKZnVuY3Rpb24gV0ooYSxiKXt2YXIgYz10aGlzO2lmKCFmaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0fHVuZGVmaW5lZCIsImFueSJdLGFyZ3VtZW50cyk7dmFyIGQ9VGQoYSk7VEYoW2Z1bmN0aW9uKCl7TChjLCJkZXRlY3RfbGlua19jbGlja19ldmVudHMiLGQpfV0pO3ZhciBlPWQmJiEhZC53YWl0Rm9yVGFncyxmPWQmJiEhZC5jaGVja1ZhbGlkYXRpb24sZz1kP2QuYWZmaWxpYXRlRG9tYWluczp2b2lkIDAsaD1aRihiKTtpZihlKXt2YXIgbD1OdW1iZXIoZC53YWl0Rm9yVGFnc1RpbWVvdXQpO2w+MCYmaXNGaW5pdGUobCl8fChsPTJFMyk7dmFyIG49ZnVuY3Rpb24ocSl7cmV0dXJuIE1hdGgubWF4KGwscSl9O2RHKCJsY2wiLCJtd3QiLG4sMCk7Znx8ZEcoImxjbCIsIm52Lm13dCIsbiwwKX12YXIgcD1mdW5jdGlvbihxKXtxLnB1c2goaCk7CnJldHVybiBxfTtkRygibGNsIiwiaWRzIixwLFtdKTtmfHxkRygibGNsIiwibnYuaWRzIixwLFtdKTtnJiZkRygibGNsIiwiYWZmLm1hcCIsZnVuY3Rpb24ocSl7cVtoXT1nO3JldHVybiBxfSx7fSk7JEYoImxjbCIsImluaXQiLCExKXx8KFZKKCksYUcoImxjbCIsImluaXQiLCEwKSk7cmV0dXJuIGh9V0ouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25MaW5rQ2xpY2siOwp2YXIgWEo9ZnVuY3Rpb24oYSl7cmV0dXJuICRGKCJzZGwiLGEse30pfSxZSj1mdW5jdGlvbihhLGIsYyl7aWYoYil7dmFyIGQ9QXJyYXkuaXNBcnJheShhKT9hOlthXTtkRygic2RsIixjLGZ1bmN0aW9uKGUpe2Zvcih2YXIgZj0wO2Y8ZC5sZW5ndGg7ZisrKXt2YXIgZz1TdHJpbmcoZFtmXSk7ZS5oYXNPd25Qcm9wZXJ0eShnKXx8KGVbZ109W10pO2VbZ10ucHVzaChiKX1yZXR1cm4gZX0se30pfX0sYUs9ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7WkooYSxiKTskSihjLCEwKX1yZXR1cm4gY30sYks9ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7aD9nPUEuc2V0VGltZW91dChjLGUpOihnPTAsWkooYSxiKSwkSihkKSk7aD0hMX1mdW5jdGlvbiBkKCl7ZiYmYigpO2c/aD0hMDooZz1BLnNldFRpbWVvdXQoYyxlKSxhRygic2RsIiwicGVuZGluZyIsITApKX12YXIgZT0yNTAsZj0hMTtCLnNjcm9sbGluZ0VsZW1lbnQmJkIuZG9jdW1lbnRFbGVtZW50JiYoZT01MCxmPSEwKTt2YXIgZz0KMCxoPSExO3JldHVybiBkfSwkSj1mdW5jdGlvbihhLGIpeyRGKCJzZGwiLCJpbml0IiwhMSkmJiFjSygpJiYoYj9hZChBLCJzY3JvbGxlbmQiLGEpOmFkKEEsInNjcm9sbCIsYSksYWQoQSwicmVzaXplIixhKSxhRygic2RsIiwiaW5pdCIsITEpKX0sWko9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iKCksZD1jLmRlcHRoWCxlPWMuZGVwdGhZLGY9ZC9hLnNjcm9sbFdpZHRoKjEwMCxnPWUvYS5zY3JvbGxIZWlnaHQqMTAwO2RLKGQsImhvcml6LnBpeCIsIlBJWEVMUyIsImhvcml6b250YWwiKTtkSyhmLCJob3Jpei5wY3QiLCJQRVJDRU5UIiwiaG9yaXpvbnRhbCIpO2RLKGUsInZlcnQucGl4IiwiUElYRUxTIiwidmVydGljYWwiKTtkSyhnLCJ2ZXJ0LnBjdCIsIlBFUkNFTlQiLCJ2ZXJ0aWNhbCIpO2FHKCJzZGwiLCJwZW5kaW5nIiwhMSl9LGRLPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPVhKKGIpLGY9e30sZztmb3IoZyBpbiBlKWlmKGY9e3FmOmYucWZ9LGYucWY9ZyxlLmhhc093blByb3BlcnR5KGYucWYpKXt2YXIgaD0KTnVtYmVyKGYucWYpO2lmKCEoYTxoKSl7dmFyIGw9e307dUUoKGwuZXZlbnQ9Imd0bS5zY3JvbGxEZXB0aCIsbFsiZ3RtLnNjcm9sbFRocmVzaG9sZCJdPWgsbFsiZ3RtLnNjcm9sbFVuaXRzIl09Yy50b0xvd2VyQ2FzZSgpLGxbImd0bS5zY3JvbGxEaXJlY3Rpb24iXT1kLGxbImd0bS50cmlnZ2VycyJdPWVbZi5xZl0uam9pbigiLCIpLGwpKTtkRygic2RsIixiLGZ1bmN0aW9uKG4pe3JldHVybiBmdW5jdGlvbihwKXtkZWxldGUgcFtuLnFmXTtyZXR1cm4gcH19KGYpLHt9KX19fSxmSz1mdW5jdGlvbigpe3ZhciBhPWRHKCJzZGwiLCJzY3IiLGZ1bmN0aW9uKGMpe2N8fChjPUIuc2Nyb2xsaW5nRWxlbWVudHx8Qi5ib2R5JiZCLmJvZHkucGFyZW50Tm9kZSk7cmV0dXJuIGN9LG51bGwpLGI9ZEcoInNkbCIsImRlcHRoIixmdW5jdGlvbihjKXtjfHwoYz1lSyhhKSk7cmV0dXJuIGN9KTtyZXR1cm57c2Nyb2xsaW5nRWxlbWVudDphLHZyOmJ9fSxlSz1mdW5jdGlvbihhKXt2YXIgYj0wLGM9CjA7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGQ9c0koKSxlPWQuaGVpZ2h0O2I9TWF0aC5tYXgoYS5zY3JvbGxMZWZ0K2Qud2lkdGgsYik7Yz1NYXRoLm1heChhLnNjcm9sbFRvcCtlLGMpO3JldHVybntkZXB0aFg6YixkZXB0aFk6Y319fSxjSz1mdW5jdGlvbigpe3JldHVybiEhKE9iamVjdC5rZXlzKFhKKCJob3Jpei5waXgiKSkubGVuZ3RofHxPYmplY3Qua2V5cyhYSigiaG9yaXoucGN0IikpLmxlbmd0aHx8T2JqZWN0LmtleXMoWEooInZlcnQucGl4IikpLmxlbmd0aHx8T2JqZWN0LmtleXMoWEooInZlcnQucGN0IikpLmxlbmd0aCl9OwpmdW5jdGlvbiBnSyhhLGIpe3ZhciBjPXRoaXM7aWYoIWVoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3QiLCJhbnkiXSxhcmd1bWVudHMpO1RGKFtmdW5jdGlvbigpe0woYywiZGV0ZWN0X3Njcm9sbF9ldmVudHMiKX1dKTt2YXIgZD1mSygpLGU9ZC5zY3JvbGxpbmdFbGVtZW50LGY9ZC52cjtpZighZSlyZXR1cm47dmFyIGc9WkYoYiksaD1UZChhKTtzd2l0Y2goaC5ob3Jpem9udGFsVGhyZXNob2xkVW5pdHMpe2Nhc2UgIlBJWEVMUyI6WUooaC5ob3Jpem9udGFsVGhyZXNob2xkcyxnLCJob3Jpei5waXgiKTticmVhaztjYXNlICJQRVJDRU5UIjpZSihoLmhvcml6b250YWxUaHJlc2hvbGRzLGcsImhvcml6LnBjdCIpfXN3aXRjaChoLnZlcnRpY2FsVGhyZXNob2xkVW5pdHMpe2Nhc2UgIlBJWEVMUyI6WUooaC52ZXJ0aWNhbFRocmVzaG9sZHMsCmcsInZlcnQucGl4Iik7YnJlYWs7Y2FzZSAiUEVSQ0VOVCI6WUooaC52ZXJ0aWNhbFRocmVzaG9sZHMsZywidmVydC5wY3QiKX0kRigic2RsIiwiaW5pdCIsITEpPyRGKCJzZGwiLCJwZW5kaW5nIiwhMSl8fGJkKGZ1bmN0aW9uKCl7WkooZSxmKX0pOihhRygic2RsIiwiaW5pdCIsITApLGFHKCJzZGwiLCJwZW5kaW5nIiwhMCksYmQoZnVuY3Rpb24oKXtaSihlLGYpO2lmKGNLKCkpe3ZhciBsPWJLKGUsZik7Im9uc2Nyb2xsZW5kImluIEE/KGw9YUsoZSxmKSwkYyhBLCJzY3JvbGxlbmQiLGwpKTokYyhBLCJzY3JvbGwiLGwpOyRjKEEsInJlc2l6ZSIsbCl9ZWxzZSBhRygic2RsIiwiaW5pdCIsITEpfSkpO3JldHVybiBnfWdLLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uU2Nyb2xsIjtmdW5jdGlvbiBoSyhhKXtyZXR1cm4gZnVuY3Rpb24oKXtpZihhLmxpbWl0JiZhLmdrPj1hLmxpbWl0KWEuYWkmJkEuY2xlYXJJbnRlcnZhbChhLmFpKTtlbHNle2EuZ2srKzt2YXIgYj1OYigpO3VFKHtldmVudDphLmV2ZW50TmFtZSwiZ3RtLnRpbWVySWQiOmEuYWksImd0bS50aW1lckV2ZW50TnVtYmVyIjphLmdrLCJndG0udGltZXJJbnRlcnZhbCI6YS5pbnRlcnZhbCwiZ3RtLnRpbWVyTGltaXQiOmEubGltaXQsImd0bS50aW1lclN0YXJ0VGltZSI6YS5NbywiZ3RtLnRpbWVyQ3VycmVudFRpbWUiOmIsImd0bS50aW1lckVsYXBzZWRUaW1lIjpiLWEuTW8sImd0bS50cmlnZ2VycyI6YS5MdH0pfX19CmZ1bmN0aW9uIGlLKGEsYil7CnJldHVybiBmfWlLLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uVGltZXIiOwp2YXIgaks9ZnVuY3Rpb24oYSxiLGMpe2Z1bmN0aW9uIGQoKXt2YXIgZz1hKCk7Zis9ZT8oTmIoKS1lKSpnLnBsYXliYWNrUmF0ZS8xRTM6MDtlPU5iKCl9dmFyIGU9MCxmPTA7cmV0dXJue2NyZWF0ZUV2ZW50OmZ1bmN0aW9uKGcsaCxsKXt2YXIgbj1hKCkscD1uLlduLHE9bD9NYXRoLnJvdW5kKGwpOmg/TWF0aC5yb3VuZChuLlduKmgpOk1hdGgucm91bmQobi5Hcikscj1oIT09dm9pZCAwP01hdGgucm91bmQoaCoxMDApOnA8PTA/MDpNYXRoLnJvdW5kKHEvcCoxMDApLHQ9Qi5oaWRkZW4/ITE6dEkoYyk+PS41O2QoKTt2YXIgdT12b2lkIDA7YiE9PXZvaWQgMCYmKHU9W2JdKTt2YXIgdj1lRyhjLCJndG0udmlkZW8iLHUpO3ZbImd0bS52aWRlb1Byb3ZpZGVyIl09InlvdXR1YmUiO3ZbImd0bS52aWRlb1N0YXR1cyJdPWc7dlsiZ3RtLnZpZGVvVXJsIl09bi51cmw7dlsiZ3RtLnZpZGVvVGl0bGUiXT1uLnRpdGxlO3ZbImd0bS52aWRlb0R1cmF0aW9uIl09TWF0aC5yb3VuZChwKTt2WyJndG0udmlkZW9DdXJyZW50VGltZSJdPQpNYXRoLnJvdW5kKHEpO3ZbImd0bS52aWRlb0VsYXBzZWRUaW1lIl09TWF0aC5yb3VuZChmKTt2WyJndG0udmlkZW9QZXJjZW50Il09cjt2WyJndG0udmlkZW9WaXNpYmxlIl09dDtyZXR1cm4gdn0sbXQ6ZnVuY3Rpb24oKXtlPU5iKCl9LEJqOmZ1bmN0aW9uKCl7ZCgpfX19O3ZhciBBYz1BYShbImRhdGEtZ3RtLXl0LWluc3BlY3RlZC0iXSksa0s9WyJ3d3cueW91dHViZS5jb20iLCJ3d3cueW91dHViZS1ub2Nvb2tpZS5jb20iXSxsSzsKdmFyIG1LPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLm1hcChmdW5jdGlvbihnKXtyZXR1cm57dGU6ZyxKbzpnLHdvOnZvaWQgMH19KTtpZighYi5sZW5ndGgpcmV0dXJuIGQ7dmFyIGU9Yi5tYXAoZnVuY3Rpb24oZyl7cmV0dXJue3RlOmcqYyxKbzp2b2lkIDAsd286Z319KTtpZighZC5sZW5ndGgpcmV0dXJuIGU7dmFyIGY9ZC5jb25jYXQoZSk7Zi5zb3J0KGZ1bmN0aW9uKGcsaCl7cmV0dXJuIGcudGUtaC50ZX0pO3JldHVybiBmfSxuSz1mdW5jdGlvbihhKXthPWE9PT12b2lkIDA/W106YTtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKWFbY108MHx8Yi5wdXNoKGFbY10pO2Iuc29ydChmdW5jdGlvbihkLGUpe3JldHVybiBkLWV9KTtyZXR1cm4gYn0sb0s9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP1tdOmE7Zm9yKHZhciBiPVtdLGM9MDtjPGEubGVuZ3RoO2MrKylhW2NdPjEwMHx8YVtjXTwwfHwoYltjXT1hW2NdLzEwMCk7Yi5zb3J0KGZ1bmN0aW9uKGQsZSl7cmV0dXJuIGQtCmV9KTtyZXR1cm4gYn0scEs9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkO2Z1bmN0aW9uIGUoKXt0PWpLKGZ1bmN0aW9uKCl7cmV0dXJue3VybDp4LHRpdGxlOnksV246dixHcjphLmdldEN1cnJlbnRUaW1lKCkscGxheWJhY2tSYXRlOnp9fSxiLnJmLGEuZ2V0SWZyYW1lKCkpO3Y9MDt5PXg9IiI7ej0xO3JldHVybiBmfWZ1bmN0aW9uIGYoRyl7c3dpdGNoKEcpe2Nhc2UgMTp2PU1hdGgucm91bmQoYS5nZXREdXJhdGlvbigpKTt4PWEuZ2V0VmlkZW9VcmwoKTtpZihhLmdldFZpZGVvRGF0YSl7dmFyIE49YS5nZXRWaWRlb0RhdGEoKTt5PU4/Ti50aXRsZToiIn16PWEuZ2V0UGxheWJhY2tSYXRlKCk7Yi55cj91RSh0LmNyZWF0ZUV2ZW50KCJzdGFydCIpKTp0LkJqKCk7dT1tSyhiLmV0LGIuY3QsYS5nZXREdXJhdGlvbigpKTtyZXR1cm4gZyhHKTtkZWZhdWx0OnJldHVybiBmfX1mdW5jdGlvbiBnKCl7Qz1hLmdldEN1cnJlbnRUaW1lKCk7RD1NYigpLmdldFRpbWUoKTt0Lm10KCk7cigpO3JldHVybiBofQpmdW5jdGlvbiBoKEcpe3ZhciBOO3N3aXRjaChHKXtjYXNlIDA6cmV0dXJuIG4oRyk7Y2FzZSAyOk49InBhdXNlIjtjYXNlIDM6dmFyIFM9YS5nZXRDdXJyZW50VGltZSgpLUM7Tj1NYXRoLmFicygoTWIoKS5nZXRUaW1lKCktRCkvMUUzKnotUyk+MT8ic2VlayI6Tnx8ImJ1ZmZlcmluZyI7YS5nZXRDdXJyZW50VGltZSgpJiYoYi54cj91RSh0LmNyZWF0ZUV2ZW50KE4pKTp0LkJqKCkpO3EoKTtyZXR1cm4gbDtjYXNlIC0xOnJldHVybiBlKEcpO2RlZmF1bHQ6cmV0dXJuIGh9fWZ1bmN0aW9uIGwoRyl7c3dpdGNoKEcpe2Nhc2UgMDpyZXR1cm4gbihHKTtjYXNlIDE6cmV0dXJuIGcoRyk7Y2FzZSAtMTpyZXR1cm4gZShHKTtkZWZhdWx0OnJldHVybiBsfX1mdW5jdGlvbiBuKCl7Zm9yKDtkOyl7dmFyIEc9YztBLmNsZWFyVGltZW91dChkKTtHKCl9Yi53ciYmdUUodC5jcmVhdGVFdmVudCgiY29tcGxldGUiLDEpKTtyZXR1cm4gZSgtMSl9ZnVuY3Rpb24gcCgpe31mdW5jdGlvbiBxKCl7ZCYmCihBLmNsZWFyVGltZW91dChkKSxkPTAsYz1wKX1mdW5jdGlvbiByKCl7aWYodS5sZW5ndGgmJnohPT0wKXt2YXIgRz0tMSxOO2Rve049dVswXTtpZihOLnRlPmEuZ2V0RHVyYXRpb24oKSlyZXR1cm47Rz0oTi50ZS1hLmdldEN1cnJlbnRUaW1lKCkpL3o7aWYoRzwwJiYodS5zaGlmdCgpLHUubGVuZ3RoPT09MCkpcmV0dXJufXdoaWxlKEc8MCk7Yz1mdW5jdGlvbigpe2Q9MDtjPXA7dS5sZW5ndGg+MCYmdVswXS50ZT09PU4udGUmJih1LnNoaWZ0KCksdUUodC5jcmVhdGVFdmVudCgicHJvZ3Jlc3MiLE4ud28sTi5KbykpKTtyKCl9O2Q9QS5zZXRUaW1lb3V0KGMsRyoxRTMpfX12YXIgdCx1PVtdLHYseCx5LHosQyxELEk9ZSgtMSk7ZD0wO2M9cDtyZXR1cm57b25TdGF0ZUNoYW5nZTpmdW5jdGlvbihHKXtJPUkoRyl9LG9uUGxheWJhY2tSYXRlQ2hhbmdlOmZ1bmN0aW9uKEcpe0M9YS5nZXRDdXJyZW50VGltZSgpO0Q9TWIoKS5nZXRUaW1lKCk7dC5CaigpO3o9RztxKCk7cigpfX19LHJLPQpmdW5jdGlvbihhKXtiZChmdW5jdGlvbigpe2Z1bmN0aW9uIGIoKXtmb3IodmFyIGQ9Yy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaWZyYW1lIiksZT1kLmxlbmd0aCxmPTA7ZjxlO2YrKylxSyhkW2ZdLGEpfXZhciBjPUI7YigpO29KLksoYil9KX0scUs9ZnVuY3Rpb24oYSxiKXtpZighYS5nZXRBdHRyaWJ1dGUoImRhdGEtZ3RtLXl0LWluc3BlY3RlZC0iK2IucmYpJiYoQ2MoYSwiZGF0YS1ndG0teXQtaW5zcGVjdGVkLSIrYi5yZiksc0soYSxiLmNvKSkpe2EuaWR8fChhLmlkPXRLKCkpO3ZhciBjPUEuWVQsZD1jLmdldChhLmlkKTtkfHwoZD1uZXcgYy5QbGF5ZXIoYS5pZCkpO3ZhciBlPXBLKGQsYiksZj17fSxnO2ZvcihnIGluIGUpZj17TWc6Zi5NZ30sZi5NZz1nLGUuaGFzT3duUHJvcGVydHkoZi5NZykmJmQuYWRkRXZlbnRMaXN0ZW5lcihmLk1nLGZ1bmN0aW9uKGgpe3JldHVybiBmdW5jdGlvbihsKXtyZXR1cm4gZVtoLk1nXShsLmRhdGEpfX0oZikpfX0sc0s9ZnVuY3Rpb24oYSwKYil7dmFyIGM9YS5nZXRBdHRyaWJ1dGUoInNyYyIpO2lmKHVLKGMsImVtYmVkLyIpKXtpZihjLmluZGV4T2YoImVuYWJsZWpzYXBpPTEiKT4wKXJldHVybiEwO2lmKGIpe3ZhciBkO3ZhciBlPWMuaW5kZXhPZigiPyIpIT09LTE/IiYiOiI/IjtjLmluZGV4T2YoIm9yaWdpbj0iKT4tMT9kPWMrZSsiZW5hYmxlanNhcGk9MSI6KGxLfHwobEs9Qi5sb2NhdGlvbi5wcm90b2NvbCsiLy8iK0IubG9jYXRpb24uaG9zdG5hbWUsQi5sb2NhdGlvbi5wb3J0JiYobEsrPSI6IitCLmxvY2F0aW9uLnBvcnQpKSxkPWMrZSsiZW5hYmxlanNhcGk9MSZvcmlnaW49IitlbmNvZGVVUklDb21wb25lbnQobEspKTt2YXIgZjtmPWpjKGQpO2Euc3JjPWtjKGYpLnRvU3RyaW5nKCk7cmV0dXJuITB9fXJldHVybiExfSx1Sz1mdW5jdGlvbihhLGIpe2lmKCFhKXJldHVybiExO2Zvcih2YXIgYz0wO2M8a0subGVuZ3RoO2MrKylpZihhLmluZGV4T2YoIi8vIitrS1tjXSsiLyIrYik+PTApcmV0dXJuITA7cmV0dXJuITF9LAp0Sz1mdW5jdGlvbigpe3ZhciBhPSIiK01hdGgucm91bmQoTWF0aC5yYW5kb20oKSoxRTkpO3JldHVybiBCLmdldEVsZW1lbnRCeUlkKGEpP3RLKCk6YX07CmZ1bmN0aW9uIHZLKGEsYil7dmFyIGM9dGhpczt2YXIgZD1mdW5jdGlvbigpe3JLKHEpfTtpZighZWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCIsImFueSJdLGFyZ3VtZW50cyk7VEYoW2Z1bmN0aW9uKCl7TChjLCJkZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMiLHtmaXhNaXNzaW5nQXBpOiEhYS5nZXQoImZpeE1pc3NpbmdBcGkiKX0pfV0pO3ZhciBlPVpGKGIpLGY9ISFhLmdldCgiY2FwdHVyZVN0YXJ0IiksZz0hIWEuZ2V0KCJjYXB0dXJlQ29tcGxldGUiKSxoPSEhYS5nZXQoImNhcHR1cmVQYXVzZSIpLGw9b0soVGQoYS5nZXQoInByb2dyZXNzVGhyZXNob2xkc1BlcmNlbnQiKSkpLG49bksoVGQoYS5nZXQoInByb2dyZXNzVGhyZXNob2xkc1RpbWVJblNlY29uZHMiKSkpLHA9ISFhLmdldCgiZml4TWlzc2luZ0FwaSIpOwppZighKGZ8fGd8fGh8fGwubGVuZ3RofHxuLmxlbmd0aCkpcmV0dXJuO3ZhciBxPXt5cjpmLHdyOmcseHI6aCxjdDpsLGV0Om4sY286cCxyZjplfSxyPUEuWVQ7aWYocilyZXR1cm4gci5yZWFkeSYmci5yZWFkeShkKSxlO3ZhciB0PUEsdT10Lm9uWW91VHViZUlmcmFtZUFQSVJlYWR5O3Qub25Zb3VUdWJlSWZyYW1lQVBJUmVhZHk9ZnVuY3Rpb24oKXt1JiZ1KCk7ZCgpfTtiZChmdW5jdGlvbigpe2Zvcih2YXIgdj1CLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSx4PXYubGVuZ3RoLHk9MDt5PHg7eSsrKXt2YXIgej12W3ldLmdldEF0dHJpYnV0ZSgic3JjIik7aWYodUsoeiwiaWZyYW1lX2FwaSIpfHx1Syh6LCJwbGF5ZXJfYXBpIikpcmV0dXJuIGV9Zm9yKHZhciBDPUIuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImlmcmFtZSIpLEQ9Qy5sZW5ndGgsST1hbCg1LGZ1bmN0aW9uKCl7cmV0dXJuITF9KSxHPTA7RzxEO0crKylpZighSSYmc0soQ1tHXSxxLmNvKSlyZXR1cm4gVWMoImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2lmcmFtZV9hcGkiKSwKWmsoNSwhMCksZX0pO3JldHVybiBlfXZLLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uWW91VHViZUFjdGl2aXR5IjtmdW5jdGlvbiB3SyhhLGIpe2lmKCFsaChhKXx8IWZoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJPYmplY3R8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTt2YXIgYz1iP1RkKGIpOnt9O2MucmVnZXhDYWNoZT1hbCgzLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KTtyZXR1cm4gR2goYSxjKX13Sy5QPSJpbnRlcm5hbC5ldmFsdWF0ZUJvb2xlYW5FeHByZXNzaW9uIjtmdW5jdGlvbiB4SyhhKXt2YXIgYj0hMTtyZXR1cm4gYn14Sy5QPSJpbnRlcm5hbC5ldmFsdWF0ZU1hdGNoaW5nUnVsZXMiO3ZhciB5Sz1uZXcgTWFwKFtbImF3Iiw0XV0pO2Z1bmN0aW9uIHpLKGEpe3ZhciBiPXZyW2FdLGM9eUsuZ2V0KGEpO3JldHVybiBjPyh3cShiLGMpfHxbXSkuc29tZShmdW5jdGlvbihkKXtyZXR1cm4gZC5tPT09IjAifHxkLm09PT12b2lkIDB9KTohMX0KZnVuY3Rpb24gQUsoYSxiKXtpZihNKDQ5NSkpe2Zvcih2YXIgYz1uZXcgTWFwLGQ9bSh5SyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPW0oZS52YWx1ZSksZz1mLm5leHQoKS52YWx1ZSxoPWYubmV4dCgpLnZhbHVlLGw9ZyxuPWFbbF0scD1BcnJheS5pc0FycmF5KG4pP25bMF06bjtpZihwIT09dm9pZCAwKXt2YXIgcT17fSxyPShxLms9cCxxLmk9U3RyaW5nKE1hdGguZmxvb3IoRGF0ZS5ub3coKS8xRTMpKSxxLmI9W10scS5tPSIxIixxKSx0PWFxKHIsaCk7dCYmKHpLKGwpfHxjLnNldChsLHQpKX19aWYoYy5zaXplKXt2YXIgdSx2PVtdLHg9Yi5wYXRofHwiLyI7di5wdXNoKGVuY29kZVVSSUNvbXBvbmVudCgicCIpKyI9IitlbmNvZGVVUklDb21wb25lbnQoeCkpO2IuQXImJnYucHVzaChlbmNvZGVVUklDb21wb25lbnQoImNlIikrIj0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoYi5BcikpKTt2YXIgeT1iLmRvbWFpbiYmYi5kb21haW4hPT0iYXV0byI/CmIuZG9tYWluOiJhdXRvOiIrQS5sb2NhdGlvbi5ob3N0bmFtZTt2LnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCJkIikrIj0iK2VuY29kZVVSSUNvbXBvbmVudCh5KSk7Zm9yKHZhciB6PW0oYyksQz16Lm5leHQoKTshQy5kb25lO0M9ei5uZXh0KCkpe3ZhciBEPW0oQy52YWx1ZSksST1ELm5leHQoKS52YWx1ZSxHPUQubmV4dCgpLnZhbHVlO3YucHVzaChlbmNvZGVVUklDb21wb25lbnQoSSkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChHKSl9dT0iXy9zZXRfY29va2llPyIrdi5qb2luKCImIik7dmFyIE4sUz1FKDU4KTtOPUVmKHUsUyk7dmFyIFc9WGooKSsiLyIrTjttZChXKX19fTtmdW5jdGlvbiBCSyhhKXtyZXR1cm4iQ1dWV2ViVmlld01lc3NhZ2UiaW4gYX1mdW5jdGlvbiBDSyhhKXt2YXIgYj1BLGM9Yi53ZWJraXQ7ZGVsZXRlIGIud2Via2l0O2EoYi53ZWJraXQpO2Iud2Via2l0PWN9ZnVuY3Rpb24gREsoYSxiKXt2YXIgYz17YWN0aW9uOiJnY2xfc2V0dXAifTtpZihCSyhhLm1lc3NhZ2VIYW5kbGVycykpcmV0dXJuIGEubWVzc2FnZUhhbmRsZXJzLkNXVldlYlZpZXdNZXNzYWdlLnBvc3RNZXNzYWdlKHtjb21tYW5kOmIscGF5bG9hZDpjfSksITA7dmFyIGQ9YS5tZXNzYWdlSGFuZGxlcnNbYl07cmV0dXJuIGQ/KGQucG9zdE1lc3NhZ2UoYyksITApOiExfTt2YXIgRUs9e30sRks9KEVLLmF3Yj17bm90Rm91bmQ6MTc4fSxFSy55dGI9e25vdEZvdW5kOjE5NH0sRUspO2Z1bmN0aW9uIEdLKGEpe3ZhciBiLGM9KGI9RktbYV0pPT1udWxsP3ZvaWQgMDpiLm5vdEZvdW5kO2MmJlAoYyl9CmZ1bmN0aW9uIEhLKGEpe2lmKCFubShqbS5iYS5qbikmJiJ3ZWJraXQiaW4gQSYmQS53ZWJraXQubWVzc2FnZUhhbmRsZXJzKXt2YXIgYj1mdW5jdGlvbigpe3RyeXtDSyhmdW5jdGlvbihjKXtpZihjKXt2YXIgZDtkPUJLKGMubWVzc2FnZUhhbmRsZXJzKXx8ImF3YiJpbiBjLm1lc3NhZ2VIYW5kbGVycz97Y29tbWFuZDoiYXdiIixzb3VyY2U6NX06KEJLKGMubWVzc2FnZUhhbmRsZXJzKXx8Inl0YiJpbiBjLm1lc3NhZ2VIYW5kbGVycykmJk0oNDk5KT97Y29tbWFuZDoieXRiIixzb3VyY2U6OH06dm9pZCAwO2QmJihtbShqbS5iYS5qbixmdW5jdGlvbihlKXt2YXIgZj1kLnNvdXJjZTtlLmdjbGlkJiZscygiZ2NsX2F3IixlLmdjbGlkLGYsYSk7ZS53YnJhaWQmJmxzKCJnY2xfZ2IiLGUud2JyYWlkLGYsYSl9KSxESyhjLGQuY29tbWFuZCl8fEdLKGQuY29tbWFuZCkpfX0pfWNhdGNoKGMpe1AoMTkzKX19O0hsKGZ1bmN0aW9uKCl7QnIoZnApP2IoKTpJbChiLGZwKX0sZnApfX07dmFyIElLPVsiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbSIsImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tIiwiaHR0cHM6Ly9tLnlvdXR1YmUuY29tIl07ZnVuY3Rpb24gSksoYSl7cmV0dXJuIGEuZGF0YS5hY3Rpb24hPT0iZ2NsX3RyYW5zZmVyIj8oUCgxNzMpLCEwKTphLmRhdGEuZ2FkU291cmNlP2EuZGF0YS5nY2xpZD8hMTooUCgxODEpLCEwKTooUCgxODApLCEwKX0KZnVuY3Rpb24gS0soYSxiKXtpZighYXx8TShhKSl7aWYobm0oam0uYmEuVmUpKXJldHVybiBQKDE3Niksam0uYmEuVmU7aWYobm0oam0uYmEubW4pKXJldHVybiBQKDE3MCksam0uYmEuVmU7dmFyIGM9RnAoKTtpZighYylQKDE3MSk7ZWxzZSBpZihjLm9wZW5lcil7dmFyIGQ9ZnVuY3Rpb24oZyl7aWYoIUlLLmluY2x1ZGVzKGcub3JpZ2luKSlQKDE3Mik7ZWxzZSBpZighSksoZykpe3ZhciBoPXtnYWRTb3VyY2U6Zy5kYXRhLmdhZFNvdXJjZX07aC5nY2xpZD1nLmRhdGEuZ2NsaWQ7bW0oam0uYmEuVmUsaCk7YiYmZy5kYXRhLmdjbGlkJiZscygiZ2NsX2F3IixTdHJpbmcoZy5kYXRhLmdjbGlkKSw2LGIpO3ZhciBsOyhsPWcuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKT09bnVsbHx8bC5jYWxsKGcpO250KGMsIm1lc3NhZ2UiLGQpfX07aWYobXQoYywibWVzc2FnZSIsZCkpe21tKGptLmJhLm1uLCEwKTtmb3IodmFyIGU9bShJSyksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpYy5vcGVuZXIucG9zdE1lc3NhZ2Uoe2FjdGlvbjoiZ2NsX3NldHVwIn0sCmYudmFsdWUpO1AoMTc0KTtyZXR1cm4gam0uYmEuVmV9UCgxNzUpfX19Owp2YXIgTEs9ZnVuY3Rpb24oYSl7dmFyIGI9e3ByZWZpeDpPKGEuTSxGLkQuRmQpfHxPKGEuTSxGLkQubmIpLGRvbWFpbjpPKGEuTSxGLkQuTGIpLHBkOk8oYS5NLEYuRC5DYiksZmxhZ3M6TyhhLk0sRi5ELlRiKX07YS5NLmlzR3RtRXZlbnQmJihiLnBhdGg9TyhhLk0sRi5ELnZjKSk7cmV0dXJuIGJ9LE1LPWZ1bmN0aW9uKGEsYil7aWYoIVEoYSxILkouV2UpKXt2YXIgYz1LSygxMTkpO2lmKGMpe3ZhciBkPW5tKGMpLGU9ZnVuY3Rpb24oZyl7VihhLEguSi5XZSwhMCk7dmFyIGg9UihhLEYuRC56ZiksbD1SKGEsRi5ELkFmKTtVKGEsRi5ELnpmLFN0cmluZyhnLmdhZFNvdXJjZSkpO1UoYSxGLkQuQWYsNik7VihhLEguSi5zYSk7VihhLEguSi51Zyk7VShhLEYuRC5zYSk7YigpO1UoYSxGLkQuemYsaCk7VShhLEYuRC5BZixsKTtWKGEsSC5KLldlLCExKX07aWYoZCllKGQpO2Vsc2V7dmFyIGY9dm9pZCAwO2Y9cG0oYyxmdW5jdGlvbihnLGgpe2UoaCk7cW0oYyxmKX0pfX19fSxQSz1mdW5jdGlvbihhKXt2YXIgYiwKYyxkLGU7Yj1hLlRuO2M9YS5tbztkPWEuUW87ZT1hLlVuO2lmKGIpe2lmKGRyKGNbRi5ELlhmXSwhIWNbRi5ELkFhXSkpe2lmKFdqKCkmJkJyKEFyKCkpKXtmb3IodmFyIGY9VXEoITApLGc9e30saD1tKE9iamVjdC5rZXlzKHZyKSksbD1oLm5leHQoKTshbC5kb25lO2w9aC5uZXh0KCkpe3ZhciBuPWwudmFsdWUscD12cltuXSxxPWZbcF07aWYocSl7dmFyIHI9JHAocSw0KTtyJiYob3MoTWF0aC5taW4oTnIociksTmIoKSl8fE5iKCkscCw0KXx8KGdbbl09cSkpfX1mb3IodmFyIHQ9e30sdT1tKE9iamVjdC5rZXlzKGcpKSx2PXUubmV4dCgpOyF2LmRvbmU7dj11Lm5leHQoKSl7dmFyIHg9di52YWx1ZSx5PWdbeF07aWYoeSE9PXZvaWQgMCl7dmFyIHo9JHAoeSw0KTt6JiZ6Lm09PT0iMSImJih0W3hdPXouayl9fUFLKHQsZSl9cHMoZSk7dHMoZSk7UXYoZSl9aWYoT3AoKSE9PTIpe2dzKGUpO2lzKGUpO2lmKFlmKDE1KSl7dmFyIEM9ZSxEPWRzKEEubG9jYXRpb24uaHJlZiwhMCwhMSk7CkQubGVuZ3RofHwoRD1kcyhBLmRvY3VtZW50LnJlZmVycmVyLCExLCEwKSk7aWYoRC5sZW5ndGgpe0M9Q3x8e307dmFyIEk9RFswXTtJLnZhbHVlJiZtcygiZ2NsX2RjIixbe3ZlcnNpb246IiIsZ2NsaWQ6SS52YWx1ZSx0aW1lc3RhbXA6TmIoKSxxYTpJLnFhfV0sQyl9fUhLKGUpO0tLKHZvaWQgMCxlKX1lbHNlIGdzKGUpO2lmKFdqKCkmJkJyKEFyKCkpKXt2YXIgRz1mcygpO0FLKEcsZSl9eHMocXMsZSk7eXMoZSl9Y1tGLkQuQWFdJiYodnMoY1tGLkQuQWFdLGNbRi5ELmFkXSwhIWNbRi5ELndjXSksdXMoY1tGLkQuQWFdLGNbRi5ELmFkXSwhIWNbRi5ELndjXSxlLnByZWZpeCksd3MoY1tGLkQuQWFdLGNbRi5ELmFkXSwhIWNbRi5ELndjXSxlLnByZWZpeCksUnYoR3YoZS5wcmVmaXgpLGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10sZSksUnYoIkZQQVUiLGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10sZSkpO2QmJkFzKE5LKTtDcyhPSyl9LHFzPVsiYXciLCJkYyIsCiJnYiJdLE9LPVsiYXciLCJkYyIsImdiIiwiYWciXSxOSz1bImF3IiwiZGMiLCJnYiIsImFnIiwiZ2FkX3NvdXJjZSJdO2Z1bmN0aW9uIFZLKCl7cmV0dXJuIE10KDcpJiZNdCg5KSYmTXQoMTApfTt2YXIgV0s9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXt9O2EubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5vaiwoZFtiXT1jLGQpKX0sWEs9ZnVuY3Rpb24oYSxiKXt2YXIgYz1kSShhLEYuRC5GaSxhLk0uaWJbRi5ELkZpXSk7aWYoYyYmY1tifHxhLmV2ZW50TmFtZV0hPT12b2lkIDApcmV0dXJuIGNbYnx8YS5ldmVudE5hbWVdfSxZSz1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLllhKTtpZihDZChiKSlyZXR1cm4gYn0sWks9ZnVuY3Rpb24oYSl7aWYoUShhLEguSi5iZSl8fCFlayhhLk0pKXJldHVybiAxO2lmKCFPKGEuTSxGLkQuZGQpKXt2YXIgYj1PKGEuTSxGLkQuUWYpO2lmKGIhPT0hMCYmYiE9PSJ0cnVlIilyZXR1cm4gMX12YXIgYz1PKGEuTSxGLkQuT2kpO3JldHVybiBjPT09ITF8fGM9PT0iZmFsc2UiPzM6Mn07CnZhciBhTD1mdW5jdGlvbihhLGIpe2EmJigkSygic2lkIixhLnRhcmdldElkLGIpLCRLKCJjYyIsYS5jbGllbnRDb3VudCxiKSwkSygidGwiLGEudG90YWxMaWZlTXMsYiksJEsoImhjIixhLmhlYXJ0YmVhdENvdW50LGIpLCRLKCJjbCIsYS5jbGllbnRMaWZlTXMsYikpfSwkSz1mdW5jdGlvbihhLGIsYyl7YiE9bnVsbCYmYy5wdXNoKGErIj0iK2IpfSxiTD1mdW5jdGlvbigpe3ZhciBhPUIucmVmZXJyZXI7aWYoYSl7dmFyIGI7cmV0dXJuIExqKFJqKGEpLCJob3N0Iik9PT0oKGI9QS5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmIuaG9zdCk/MToyfXJldHVybiAwfSxkTD1mdW5jdGlvbigpe3RoaXMuamE9Y0w7dGhpcy5OPTA7dGhpcy55YT1OZig1Nyw1KTt0aGlzLlI9TmYoNTgsNTApO3RoaXMuZmE9RGIoKTt0aGlzLkxhPSJodHRwczovLyIrRSgyMSkrIi9hPyJ9O2RMLnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjLGQpewp2YXIgZT1iTCgpLGYsZz1bXTtmPUE9PT1BLnRvcCYmZSE9PTAmJmI/KGI9PW51bGw/dm9pZCAwOmIuY2xpZW50Q291bnQpPjE/ZT09PTI/MToyOmU9PT0yPzA6Mzo0O2EmJiRLKCJzaSIsYS5KZyxnKTskSygibSIsMCxnKTskSygiaXNzIixmLGcpOyRLKCJpZiIsYyxnKTthTChiLGcpO2QmJiRLKCJmbSIsZW5jb2RlVVJJQ29tcG9uZW50KGQuc3Vic3RyaW5nKDAsdGhpcy5SKSksZyk7dGhpcy5aKGcpO307ZEwucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1bXTskSygibSIsMSxmKTskSygicyIsYSxmKTskSygicG8iLGJMKCksZik7YiYmKCRLKCJzdCIsYi5zdGF0ZSxmKSwkSygic2kiLGIuSmcsZiksJEsoInNtIixiLlVnLGYpKTthTChjLGYpOyRLKCJjIixkLGYpO2UmJiRLKCJmbSIsZW5jb2RlVVJJQ29tcG9uZW50KGUuc3Vic3RyaW5nKDAsCnRoaXMuUikpLGYpO3RoaXMuWihmKTt9O2RMLnByb3RvdHlwZS5aPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9bXTphOyFmbi5OfHx0aGlzLk4+PXRoaXMueWF8fCgkSygicGlkIix0aGlzLmZhLGEpLCRLKCJiYyIsKyt0aGlzLk4sYSksYS51bnNoaWZ0KCJjdGlkPSIrRSg1KSsiJnQ9cyIpLHRoaXMuamEoIiIrdGhpcy5MYSthLmpvaW4oIiYiKSkpfTtmdW5jdGlvbiBlTChhKXtyZXR1cm4gYS5wZXJmb3JtYW5jZSYmYS5wZXJmb3JtYW5jZS5ub3coKXx8RGF0ZS5ub3coKX0KdmFyIGZMPWZ1bmN0aW9uKGEsYil7dmFyIGM9QSxkPU5mKDUzLDUwMCksZT1OZig1NCw1RTMpLGY9TmYoOCwyMCksZz1OZig1NSw1RTMpLGg7dmFyIGw9ZnVuY3Rpb24obixwLHEpe3E9cT09PXZvaWQgMD97cW86ZnVuY3Rpb24oKXt9LHNvOmZ1bmN0aW9uKCl7fSxwbzpmdW5jdGlvbigpe30sb25GYWlsdXJlOmZ1bmN0aW9uKCl7fX06cTt0aGlzLklqPW47dGhpcy5IPXA7dGhpcy5OPXE7dGhpcy5mYT10aGlzLmphPXRoaXMuaGVhcnRiZWF0Q291bnQ9dGhpcy5Eaj0wO3RoaXMuZmU9ITE7dGhpcy5LPXt9O3RoaXMuaWQ9U3RyaW5nKE1hdGguZmxvb3IoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIqTWF0aC5yYW5kb20oKSkpO3RoaXMuc3RhdGU9MDt0aGlzLkpnPWVMKHRoaXMuSCk7dGhpcy5VZz1lTCh0aGlzLkgpO3RoaXMuWj0xMH07bC5wcm90b3R5cGUuaW5pdD1mdW5jdGlvbigpe3RoaXMuUigxKTsKdGhpcy5MYSgpfTtsLnByb3RvdHlwZS5nZXRTdGF0ZT1mdW5jdGlvbigpe3JldHVybntzdGF0ZTp0aGlzLnN0YXRlLEpnOk1hdGgucm91bmQoZUwodGhpcy5IKS10aGlzLkpnKSxVZzpNYXRoLnJvdW5kKGVMKHRoaXMuSCktdGhpcy5VZyl9fTtsLnByb3RvdHlwZS5SPWZ1bmN0aW9uKG4pe3RoaXMuc3RhdGUhPT1uJiYodGhpcy5zdGF0ZT1uLHRoaXMuVWc9ZUwodGhpcy5IKSl9O2wucHJvdG90eXBlLnZnPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZyh0aGlzLkRqKyspfTtsLnByb3RvdHlwZS5MYT1mdW5jdGlvbigpe3ZhciBuPXRoaXM7dGhpcy5oZWFydGJlYXRDb3VudCsrO3RoaXMueWEoe3R5cGU6MCxjbGllbnRJZDp0aGlzLmlkLHJlcXVlc3RJZDp0aGlzLnZnKCksbWF4RGVsYXk6dGhpcy5oZSgpfSxmdW5jdGlvbihwKXtpZihwLnR5cGU9PT0wKXt2YXIgcTtpZigoKHE9cC5mYWlsdXJlKT09bnVsbD92b2lkIDA6cS5mYWlsdXJlVHlwZSkhPW51bGwpaWYocC5zdGF0cyYmKG4uc3RhdHM9CnAuc3RhdHMpLG4uZmErKyxwLmlzRGVhZHx8bi5mYT5mKXt2YXIgcj1wLmlzRGVhZCYmcC5mYWlsdXJlLmZhaWx1cmVUeXBlO24uWj1yfHwxMDtuLlIoNCk7bi5BaigpO3ZhciB0LHU7KHU9KHQ9bi5OKS5wbyk9PW51bGx8fHUuY2FsbCh0LHtmYWlsdXJlVHlwZTpyfHwxMCxkYXRhOnAuZmFpbHVyZS5kYXRhfSl9ZWxzZSBuLlIoMyksbi5QaCgpO2Vsc2V7aWYobi5oZWFydGJlYXRDb3VudD5wLnN0YXRzLmhlYXJ0YmVhdENvdW50K2Ype24uaGVhcnRiZWF0Q291bnQ9cC5zdGF0cy5oZWFydGJlYXRDb3VudDt2YXIgdix4Oyh4PSh2PW4uTikub25GYWlsdXJlKT09bnVsbHx8eC5jYWxsKHYse2ZhaWx1cmVUeXBlOjEzfSl9bi5zdGF0cz1wLnN0YXRzO3ZhciB5PW4uc3RhdGU7bi5SKDIpO2lmKHkhPT0yKWlmKG4uZmUpe3ZhciB6LEM7KEM9KHo9bi5OKS5zbyk9PW51bGx8fEMuY2FsbCh6KX1lbHNle24uZmU9ITA7dmFyIEQsSTsoST0oRD1uLk4pLnFvKT09bnVsbHx8SS5jYWxsKEQpfW4uZmE9CjA7bi5OaigpO24uUGgoKX19fSl9O2wucHJvdG90eXBlLmhlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc3RhdGU9PT0yP2U6ZH07bC5wcm90b3R5cGUuUGg9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO3RoaXMuSC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bi5MYSgpfSxNYXRoLm1heCgwLHRoaXMuaGUoKS0oZUwodGhpcy5IKS10aGlzLmphKSkpfTtsLnByb3RvdHlwZS5rcj1mdW5jdGlvbihuLHAscSl7dmFyIHI9dGhpczt0aGlzLnlhKHt0eXBlOjEsY2xpZW50SWQ6dGhpcy5pZCxyZXF1ZXN0SWQ6dGhpcy52ZygpLGNvbW1hbmQ6bn0sZnVuY3Rpb24odCl7aWYodC50eXBlPT09MSlpZih0LnJlc3VsdClwKHQucmVzdWx0KTtlbHNle3ZhciB1LHYseCx5PXtmYWlsdXJlVHlwZTooeD0odT10LmZhaWx1cmUpPT1udWxsP3ZvaWQgMDp1LmZhaWx1cmVUeXBlKSE9bnVsbD94OjEyLGRhdGE6KHY9dC5mYWlsdXJlKT09bnVsbD92b2lkIDA6di5kYXRhfSx6LEM7KEM9KHo9ci5OKS5vbkZhaWx1cmUpPT0KbnVsbHx8Qy5jYWxsKHoseSk7cSh5KX19KX07bC5wcm90b3R5cGUueWE9ZnVuY3Rpb24obixwKXt2YXIgcT10aGlzO2lmKHRoaXMuc3RhdGU9PT00KW4uZmFpbHVyZT17ZmFpbHVyZVR5cGU6dGhpcy5afSxwKG4pO2Vsc2V7dmFyIHI9dGhpcy5zdGF0ZSE9PTImJm4udHlwZSE9PTAsdD1uLnJlcXVlc3RJZCx1LHY9dGhpcy5ILnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgeT1xLktbdF07eSYmKGltKDYpLHEua2QoeSw3KSl9LCh1PW4ubWF4RGVsYXkpIT1udWxsP3U6ZykseD17cmVxdWVzdDpuLEhvOnAsem86cixOczp2fTt0aGlzLktbdF09eDtyfHx0aGlzLnNlbmRSZXF1ZXN0KHgpfX07bC5wcm90b3R5cGUuc2VuZFJlcXVlc3Q9ZnVuY3Rpb24obil7dGhpcy5qYT1lTCh0aGlzLkgpO24uem89ITE7dGhpcy5JaihuLnJlcXVlc3QpfTtsLnByb3RvdHlwZS5Oaj1mdW5jdGlvbigpe2Zvcih2YXIgbj1tKE9iamVjdC5rZXlzKHRoaXMuSykpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT0KdGhpcy5LW3AudmFsdWVdO3Euem8mJnRoaXMuc2VuZFJlcXVlc3QocSl9fTtsLnByb3RvdHlwZS5Baj1mdW5jdGlvbigpe2Zvcih2YXIgbj1tKE9iamVjdC5rZXlzKHRoaXMuSykpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXRoaXMua2QodGhpcy5LW3AudmFsdWVdLHRoaXMuWil9O2wucHJvdG90eXBlLmtkPWZ1bmN0aW9uKG4scCl7dGhpcy5hYyhuKTt2YXIgcT1uLnJlcXVlc3Q7cS5mYWlsdXJlPXtmYWlsdXJlVHlwZTpwfTtuLkhvKHEpfTtsLnByb3RvdHlwZS5hYz1mdW5jdGlvbihuKXtkZWxldGUgdGhpcy5LW24ucmVxdWVzdC5yZXF1ZXN0SWRdO3RoaXMuSC5jbGVhclRpbWVvdXQobi5Ocyl9O2wucHJvdG90eXBlLmtzPWZ1bmN0aW9uKG4pe3RoaXMuamE9ZUwodGhpcy5IKTt2YXIgcD10aGlzLktbbi5yZXF1ZXN0SWRdO2lmKHApdGhpcy5hYyhwKSxwLkhvKG4pO2Vsc2V7dmFyIHEscjsocj0ocT10aGlzLk4pLm9uRmFpbHVyZSk9PW51bGx8fHIuY2FsbChxLHtmYWlsdXJlVHlwZToxNH0pfX07Cmg9bmV3IGwoYSxjLGIpO3JldHVybiBofTsKdmFyIGdMPWZ1bmN0aW9uKCl7cmV0dXJuIGFsKDE4LGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBkTH0pfSxjTD1mdW5jdGlvbihhKXtpbyhsbyhjby5pYS5aYiksZnVuY3Rpb24oKXtaYyhhKX0pfSxoTD1mdW5jdGlvbihhKXt2YXIgYj1hLnN1YnN0cmluZygwLGEuaW5kZXhPZigiL18vc2VydmljZV93b3JrZXIiKSk7cmV0dXJuIiYxcD0xIisoYj8iJnBhdGg9IitlbmNvZGVVUklDb21wb25lbnQoYik6IiIpfSxpTD1mdW5jdGlvbihhKXt2YXIgYj1BLmxvY2F0aW9uLm9yaWdpbjtpZighYilyZXR1cm4gbnVsbDsoTSg0MzIpP1dqKCk6V2ooKSYmIWEpJiYoYT0iIitiK1hqKCkrIi9fL3NlcnZpY2Vfd29ya2VyIik7dmFyIGM9YSxkLGU9TGYoMTEpO2U9TGYoMTApO2Q9ZTtjPyhjLmNoYXJBdChjLmxlbmd0aC0xKSE9PSIvIiYmCihjKz0iLyIpLGE9YytkKTphPSJodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9zdGF0aWMvc2VydmljZV93b3JrZXIvIitkKyIvIjt2YXIgZjt0cnl7Zj1uZXcgVVJMKGEpfWNhdGNoKGcpe3JldHVybiBudWxsfXJldHVybiBmLnByb3RvY29sIT09Imh0dHBzOiI/bnVsbDpmfSxqTD1mdW5jdGlvbihhKXt2YXIgYj1ubShqbS5iYS5PaCk7cmV0dXJuIGImJmJbYV19LGtMPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7dGhpcy5LPWdMKCk7dGhpcy5aPXRoaXMuUj0hMTt0aGlzLmZhPW51bGw7dGhpcy5pbml0VGltZT1NYXRoLnJvdW5kKE5iKCkpO3RoaXMuSD0xNTt0aGlzLk49dGhpcy5GcihhKTtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtiLmluaXRpYWxpemUoKX0sMUUzKTtiZChmdW5jdGlvbigpe2IuenMoYSl9KX07az1rTC5wcm90b3R5cGU7ay5kZWxlZ2F0ZT1mdW5jdGlvbihhLGIsYyl7dGhpcy5nZXRTdGF0ZSgpIT09Mj8odGhpcy5LLkgodGhpcy5ILHtzdGF0ZTp0aGlzLmdldFN0YXRlKCksCkpnOnRoaXMuaW5pdFRpbWUsVWc6TWF0aC5yb3VuZChOYigpKS10aGlzLmluaXRUaW1lfSx2b2lkIDAsYS5jb21tYW5kVHlwZSksYyh7ZmFpbHVyZVR5cGU6dGhpcy5IfSkpOnRoaXMuTi5rcihhLGIsYyl9O2suZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OLmdldFN0YXRlKCkuc3RhdGV9O2suenM9ZnVuY3Rpb24oYSl7dmFyIGI9QS5sb2NhdGlvbi5vcmlnaW4sYz10aGlzLGQ9WGMoKTt0cnl7dmFyIGU9ZC5jb250ZW50RG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIiksZj1hLnBhdGhuYW1lLGc9ZltmLmxlbmd0aC0xXT09PSIvIj9hLnRvU3RyaW5nKCk6YS50b1N0cmluZygpKyIvIixoPWEub3JpZ2luIT09Imh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tIj9oTChmKToiIixsO00oMTMzKSYmKGw9e3NhbmRib3g6ImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMifSk7WGMoZysic3dfaWZyYW1lLmh0bWw/b3JpZ2luPSIrZW5jb2RlVVJJQ29tcG9uZW50KGIpKwpoLHZvaWQgMCxsLHZvaWQgMCxlKTt2YXIgbj1mdW5jdGlvbigpe2QuY29udGVudERvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZSk7ZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixmdW5jdGlvbigpe2MuZmE9ZS5jb250ZW50V2luZG93O2QuY29udGVudFdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixmdW5jdGlvbihwKXtwLm9yaWdpbj09PWEub3JpZ2luJiZjLk4ua3MocC5kYXRhKX0pO2MuaW5pdGlhbGl6ZSgpfSl9O2QuY29udGVudERvY3VtZW50LnJlYWR5U3RhdGU9PT0iY29tcGxldGUiP24oKTpkLmNvbnRlbnRXaW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsZnVuY3Rpb24oKXtuKCl9KX1jYXRjaChwKXtkLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoZCksdGhpcy5IPTExLHRoaXMuSy5LKHZvaWQgMCx2b2lkIDAsdGhpcy5ILHAudG9TdHJpbmcoKSl9fTtrLkZyPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1mTChmdW5jdGlvbihkKXt2YXIgZTsoZT1iLmZhKT09Cm51bGx8fGUucG9zdE1lc3NhZ2UoZCxhLm9yaWdpbil9LHtxbzpmdW5jdGlvbigpe2IuUj0hMDtiLksuSyhjLmdldFN0YXRlKCksYy5zdGF0cyl9LHNvOmZ1bmN0aW9uKCl7fSxwbzpmdW5jdGlvbihkKXtiLlI/KGIuSD0oZD09bnVsbD92b2lkIDA6ZC5mYWlsdXJlVHlwZSl8fDEwLGIuSy5IKGIuSCxjLmdldFN0YXRlKCksYy5zdGF0cyx2b2lkIDAsZD09bnVsbD92b2lkIDA6ZC5kYXRhKSk6KGIuSD0oZD09bnVsbD92b2lkIDA6ZC5mYWlsdXJlVHlwZSl8fDQsYi5LLksoYy5nZXRTdGF0ZSgpLGMuc3RhdHMsYi5ILGQ9PW51bGw/dm9pZCAwOmQuZGF0YSkpfSxvbkZhaWx1cmU6ZnVuY3Rpb24oZCl7Yi5IPWQuZmFpbHVyZVR5cGU7Yi5LLkgoYi5ILGMuZ2V0U3RhdGUoKSxjLnN0YXRzLGQuY29tbWFuZCxkLmRhdGEpfX0pO3JldHVybiBjfTtrLmluaXRpYWxpemU9ZnVuY3Rpb24oKXt0aGlzLlp8fHRoaXMuTi5pbml0KCk7dGhpcy5aPSEwfTsKdmFyIGxMPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlO2lmKChlPWpMKGEpKT09bnVsbHx8IWUuZGVsZWdhdGUpe3ZhciBmPUljKCk/MTY6NjtnTCgpLkgoZix2b2lkIDAsdm9pZCAwLGIuY29tbWFuZFR5cGUpO2Qoe2ZhaWx1cmVUeXBlOmZ9KTtyZXR1cm59akwoYSkuZGVsZWdhdGUoYixjLGQpO307CmZ1bmN0aW9uIG1MKGEsYixjLGQpe3ZhciBlPWlMKGEpO2lmKGU9PT1udWxsKXtkKCJfaXNfc3c9ZiIrKEljKCk/MTY6NikrInRlIik7cmV0dXJufXZhciBmPWI/MTowLGc9TWF0aC5yb3VuZChOYigpKSxoLGw9KGg9akwoZS5vcmlnaW4pKT09bnVsbD92b2lkIDA6aC5pbml0VGltZSxuPWw/Zy1sOnZvaWQgMCxwO00oNDMyKT9wPVdqKCk/dm9pZCAwOkEubG9jYXRpb24uaHJlZjpwPUEubG9jYXRpb24uaHJlZjtsTChlLm9yaWdpbix7Y29tbWFuZFR5cGU6MCxwYXJhbXM6e3VybDphLG1ldGhvZDpmLHRlbXBsYXRlczpjLGJvZHk6Ynx8IiIscHJvY2Vzc1Jlc3BvbnNlOiEwLHNpbmNlSW5pdDpuLGF0dHJpYnV0aW9uUmVwb3J0aW5nOiEwLHJlZmVyZXI6cCxzdHJpY3Q6TSg1ODQpfX0sZnVuY3Rpb24oKXt9LGZ1bmN0aW9uKHEpe3ZhciByPSJfaXNfc3c9ZiIrcS5mYWlsdXJlVHlwZSx0LHU9KHQ9akwoZS5vcmlnaW4pKT09Cm51bGw/dm9pZCAwOnQuZ2V0U3RhdGUoKTt1IT09dm9pZCAwJiYocis9InMiK3UpO2Qobj9yKygidCIrbik6cisidGUiKX0pO307ZnVuY3Rpb24gbkwoYSl7aWYoSWYoNDcpJiZkSShhLCJjY2RfYWRkXzFwX2RhdGEiLCExKSYmV2ooKSl7dmFyIGI9YS5NO2lmKEljKCkmJmJnKCJpbnRlcm5hbF9zd19hbGxvd2VkIiwiIikpe3ZhciBjPWVrKGIpLGQ9V2ooKT9YaigpOnZvaWQgMCxlO2U9ZD97cGF0aDpkLGVvOiJmdWxsIn06Yz97cGF0aDpjLGVvOiJsaXRlIn06dm9pZCAwO2lmKGUpe3ZhciBmPWUuZW8sZz1uZXcgVVJMKGUucGF0aCxBLmxvY2F0aW9uLm9yaWdpbik7aWYoZy5vcmlnaW49PT1BLmxvY2F0aW9uLm9yaWdpbiYmcHkoZik9PT12b2lkIDApe3ZhciBoPW9tKGptLmJhLk9oLHt9KTtoW2ZdfHwoaFtmXT1uZXcgbnkoZykpfX19fX07ZnVuY3Rpb24gc0woKXt2YXIgYTthPWE9PT12b2lkIDA/ZG9jdW1lbnQ6YTt2YXIgYjtyZXR1cm4hKChiPWEuZmVhdHVyZVBvbGljeSk9PW51bGx8fCFiLmFsbG93ZWRGZWF0dXJlcygpLmluY2x1ZGVzKCJhdHRyaWJ1dGlvbi1yZXBvcnRpbmciKSl9O2Z1bmN0aW9uIHdMKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO3ZhciBlPUZwKCksZj1EcChlKTtpZihmLnVybClpZihkKXt2YXIgZz1jKGYudXJsKTtiIT09ZyYmVShhLEYuRC5QZSxnKX1lbHNle3ZhciBoPWYudXJsO2IhPT1oJiZVKGEsRi5ELlBlLGMoaCkpfX07CnZhciB4TD1mdW5jdGlvbihhKXtpZihhIT1udWxsKXt2YXIgYj1TdHJpbmcoYSkuc3Vic3RyaW5nKDAsNTEyKSxjPWIuaW5kZXhPZigiIyIpO3JldHVybiBjPT09LTE/YjpiLnN1YnN0cmluZygwLGMpfXJldHVybiIifSx5TD1mdW5jdGlvbigpe3ZhciBhPUIudGl0bGU7aWYoYT09PXZvaWQgMHx8YT09PSIiKXJldHVybiIiO2E9ZW5jb2RlVVJJQ29tcG9uZW50KGEpO2Zvcih2YXIgYj0yNTY7Yj4wJiZLaihhLnN1YnN0cmluZygwLGIpKT09PXZvaWQgMDspYi0tO3JldHVybiBLaihhLnN1YnN0cmluZygwLGIpKXx8IiJ9O2Z1bmN0aW9uIEFMKGEpe1YoYSxILkouSmEsITApO1YoYSxILkouRWIsTmIoKSk7VihhLEguSi55bixhLk0uZXZlbnRNZXRhZGF0YVtILkouSmFdKX07dmFyIFNMPWZ1bmN0aW9uKGEpe3ZhciBiPVhvKEYuRC5rYSk/bWooInBzY2RsIik6ImRlbmllZCI7YiE9bnVsbCYmVShhLEYuRC5qaCxiKX07dmFyIFRMPW5ldyBmdW5jdGlvbigpe3RoaXMuSD17fX07dmFyIFVMPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5NO2lmKGI9PT12b2lkIDA/MDpiKXt2YXIgZD1jLmdldE1lcmdlZFZhbHVlcyhGLkQuT2EpO1liKGQpJiZVKGEsRi5ELkxpLFliKGQpKX12YXIgZT1PbyhmRChGLkQuT2EpKSxmPWMuZ2V0TWVyZ2VkVmFsdWVzKEYuRC5PYSwxLGUpLGc9Yy5nZXRNZXJnZWRWYWx1ZXMoRi5ELk9hLDIpLGg9WWIobmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxmLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sVEwuSCkpLCIuIiksbD1ZYihnLCIuIik7aCYmVShhLEYuRC5YYyxoKTtsJiZVKGEsRi5ELlZjLGwpfTt2YXIgVkw9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi50cSk7YiYmVShhLEYuRC5JbCxiKX07ZnVuY3Rpb24gV0woYSl7dmFyIGI9S0IoITEpO2lmKGIhPW51bGwmJmIuc3RhdHVzKXt2YXIgYz17Z3RiOmIuc3RhdHVzfTtiLmRlbGF5JiYoYy5ndGJkPWIuZGVsYXkpO2EubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSxjKX19O3ZhciBYTD1mdW5jdGlvbihhKXt6bSgpPT09IlVTLUNPIiYmVShhLEYuRC5MZSwxKX07dmFyIFlMPXtSYTp7Q2s6MSx6bjoyLEhuOjMsSW46NCxKbjo1LHduOjZ9fTtZTC5SYVtZTC5SYS5Da109IkFET0JFX0NPTU1FUkNFIjtZTC5SYVtZTC5SYS56bl09IlNRVUFSRVNQQUNFIjtZTC5SYVtZTC5SYS5Ibl09IldPT19DT01NRVJDRSI7WUwuUmFbWUwuUmEuSW5dPSJXT09fQ09NTUVSQ0VfTEVHQUNZIjtZTC5SYVtZTC5SYS5Kbl09IldPUkRfUFJFU1MiO1lMLlJhW1lMLlJhLnduXT0iU0hPUElGWSI7ZnVuY3Rpb24gWkwoYSl7dmFyIGI9QTtyZXR1cm4gS2ooYi5lc2NhcGUoYi5hdG9iKGEpKSl9CmZ1bmN0aW9uICRMKCl7dHJ5e2lmKCFNKDQ5OCkmJiFNKDQyNSkpcmV0dXJuW107dmFyIGE9bm0oam0uYmEubG4pO2lmKEFycmF5LmlzQXJyYXkoYSkpcmV0dXJuIGE7dmFyIGI9W10sYzthOnt0cnl7Yz0hIUIucXVlcnlTZWxlY3Rvcignc2NyaXB0W2RhdGEtcmVxdWlyZW1vZHVsZV49Im1hZ2UvIl0nKTticmVhayBhfWNhdGNoKHkpe31jPSExfWMmJmIucHVzaChZTC5SYS5Dayk7dmFyIGQ7YTp7dHJ5e3ZhciBlPVpMKCJZWE56WlhSekxuTnhkV0Z5WlhOd1lXTmxMbU52YlM4PSIpO2Q9ZT8hIUIucXVlcnlTZWxlY3Rvcignc2NyaXB0W3NyY149Ii8vJytlKyciXScpOiExO2JyZWFrIGF9Y2F0Y2goeSl7fWQ9ITF9ZCYmYi5wdXNoKFlMLlJhLnpuKTt2YXIgZjthOntpZihNKDQyNSkpdHJ5e3ZhciBnPVpMKCJjMmh2Y0dsbWVTNWpiMjA9IiksaD1aTCgiYzJodmNHbG1lV05rYmk1amIyMD0iKTtmPWcmJmg/ISFCLnF1ZXJ5U2VsZWN0b3IoJ3NjcmlwdFtzcmMqPSJjZG4uJytnKyciXSxtZXRhW3Byb3BlcnR5PSJvZzppbWFnZSJdW2NvbnRlbnQqPSJjZG4uJysKKGcrJyJdLGxpbmtbcmVsPSJwcmVjb25uZWN0Il1baHJlZio9ImNkbi4nKSsoZysnIl0sbGlua1tyZWw9InByZWNvbm5lY3QiXVtocmVmKj0iZm9udHMuJykrKGgrJyJdLGxpbmtbcmVsPSJwcmVjb25uZWN0Il1baHJlZio9Iml0ZXJhYmxlLXNob3BpZnkiXSxsaW5rW3JlbD0icHJlY29ubmVjdCJdW2hyZWYqPSJ2LicpKyhnKyciXScpKTohMTticmVhayBhfWNhdGNoKHkpe31mPSExfWYmJmIucHVzaChZTC5SYS53bik7dmFyIGw7YTp7dHJ5e2w9ISFCLnF1ZXJ5U2VsZWN0b3IoJ3NjcmlwdFtzcmMqPSJ3b29jb21tZXJjZSJdLGxpbmtbaHJlZio9Indvb2NvbW1lcmNlIl0sW2NsYXNzfD0id29vY29tbWVyY2UiXScpO2JyZWFrIGF9Y2F0Y2goeSl7fWw9ITF9bCYmYi5wdXNoKFlMLlJhLkluKTt2YXIgbjthOnt0cnl7dmFyIHAscT0oKHA9Qi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOnAuaG9zdG5hbWUpfHwiIixyLHQ9KChyPUIubG9jYXRpb24pPT1udWxsP3ZvaWQgMDpyLm9yaWdpbil8fAoiIix1PVpMKCJMbmR2Y21Sd2NtVnpjeTVqYjIwPSIpLHY9WkwoIkx5OXpMbmN1YjNKbiIpO249dSYmdj9UYihxLHUpfHwhIUIucXVlcnlTZWxlY3RvcignW3NyY149IicrdCsnL3dwLWNvbnRlbnQiXSxtZXRhW25hbWU9ImdlbmVyYXRvciJdW2NvbnRlbnRePSJXb3JkUHJlc3MgIl0sbGlua1tyZWw9ImRucy1wcmVmZXRjaCJdW2hyZWY9IicrKHYrJyJdJykpOiExO2JyZWFrIGF9Y2F0Y2goeSl7fW49ITF9biYmYi5wdXNoKFlMLlJhLkpuKTt2YXIgeDthOnt0cnl7eD0hIUIucXVlcnlTZWxlY3RvcignW2NsYXNzKj0id29vY29tbWVyY2UiXSxtZXRhW25hbWU9ImdlbmVyYXRvciJdW2NvbnRlbnRePSJXb29Db21tZXJjZSAiXScpO2JyZWFrIGF9Y2F0Y2goeSl7fXg9ITF9eCYmYi5wdXNoKFlMLlJhLkhuKTtVQigpJiZtbShqbS5iYS5sbixiKTtyZXR1cm4gYn1jYXRjaCh5KXt9cmV0dXJuW119O2Z1bmN0aW9uIHdNKGEpe2lmKE0oNDI1KSYmUShhLEguSi5GYykpe3ZhciBiPU5mKDY3LDE1MDApLGM9YS5tZXJnZUhpdERhdGFGb3JLZXksZD1GLkQuVGEsZT17fTtjLmNhbGwoYSxkLGUpfX07dmFyIHhNPSJwbGF0Zm9ybSBwbGF0Zm9ybVZlcnNpb24gYXJjaGl0ZWN0dXJlIG1vZGVsIHVhRnVsbFZlcnNpb24gYml0bmVzcyBmdWxsVmVyc2lvbkxpc3Qgd293NjQiLnNwbGl0KCIgIik7ZnVuY3Rpb24geU0oYSl7dmFyIGI7cmV0dXJuKGI9YS5nb29nbGVfdGFnX2RhdGEpIT1udWxsP2I6YS5nb29nbGVfdGFnX2RhdGE9e319ZnVuY3Rpb24gek0oYSl7dmFyIGIsYztyZXR1cm4oYz0oYj1hLmdvb2dsZV90YWdfZGF0YSk9PW51bGw/dm9pZCAwOmIudWFjaF9wcm9taXNlKSE9bnVsbD9jOm51bGx9ZnVuY3Rpb24gQU0oYSl7dmFyIGIsYztyZXR1cm4gdHlwZW9mKChiPWEubmF2aWdhdG9yKT09bnVsbD92b2lkIDA6KGM9Yi51c2VyQWdlbnREYXRhKT09bnVsbD92b2lkIDA6Yy5nZXRIaWdoRW50cm9weVZhbHVlcyk9PT0iZnVuY3Rpb24ifQpmdW5jdGlvbiBCTShhKXtpZighQU0oYSkpcmV0dXJuIG51bGw7dmFyIGI9eU0oYSk7aWYoYi51YWNoX3Byb21pc2UpcmV0dXJuIGIudWFjaF9wcm9taXNlO3ZhciBjPWEubmF2aWdhdG9yLnVzZXJBZ2VudERhdGEuZ2V0SGlnaEVudHJvcHlWYWx1ZXMoeE0pLnRoZW4oZnVuY3Rpb24oZCl7Yi51YWNoIT1udWxsfHwoYi51YWNoPWQpO3JldHVybiBkfSk7cmV0dXJuIGIudWFjaF9wcm9taXNlPWN9Owp2YXIgQ009ZnVuY3Rpb24oKXt0aGlzLndpbmRvdz1BO3RoaXMuTj1OYn07Q00ucHJvdG90eXBlLlI9ZnVuY3Rpb24oKXtpZihBTSh0aGlzLndpbmRvdykmJih0aGlzLlo9dGhpcy5OKCksIXpNKHRoaXMud2luZG93KSkpe3ZhciBhPUJNKHRoaXMud2luZG93KTthJiZhLnRoZW4oZnVuY3Rpb24oKXtQKDk1KX0pLmNhdGNoKGZ1bmN0aW9uKCl7UCg5Nil9KX19O0NNLnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy53aW5kb3cuZ29vZ2xlX3RhZ19kYXRhLGI7aWYoYSE9bnVsbCYmYS51YWNoKXt2YXIgYz1hLnVhY2gsZD1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGMpO2MuZnVsbFZlcnNpb25MaXN0JiYoZC5mdWxsVmVyc2lvbkxpc3Q9Yy5mdWxsVmVyc2lvbkxpc3Quc2xpY2UoMCkpO2I9ZH1lbHNlIGI9bnVsbDtyZXR1cm4gYn07Q00ucHJvdG90eXBlLmZhPWZ1bmN0aW9uKGEpe3ZhciBiPTAsYz10aGlzLGQ9ZnVuY3Rpb24oaCxsKXt0cnl7YShoLGwpfWNhdGNoKG4pe319LAplPXRoaXMuSCgpO2lmKGUpZChlKTtlbHNle3ZhciBmPXpNKHRoaXMud2luZG93KTtpZihmKXtiPU1hdGgubWluKE1hdGgubWF4KGlzRmluaXRlKGIpP2I6MCwwKSwxRTMpO3ZhciBnPXRoaXMud2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXtkLktnfHwoZC5LZz0hMCxQKDEwNiksZChudWxsLEVycm9yKCJUaW1lb3V0IikpKX0sYik7Zi50aGVuKGZ1bmN0aW9uKGgpe2QuS2d8fChkLktnPSEwLFAoMTA0KSxjLndpbmRvdy5jbGVhclRpbWVvdXQoZyksZChoKSl9KS5jYXRjaChmdW5jdGlvbihoKXtkLktnfHwoZC5LZz0hMCxQKDEwNSksYy53aW5kb3cuY2xlYXJUaW1lb3V0KGcpLGQobnVsbCxoKSl9KX1lbHNlIGQobnVsbCl9fTtDTS5wcm90b3R5cGUuSz1mdW5jdGlvbigpe3JldHVybiB0aGlzLlohPT12b2lkIDB9O3ZhciBETT1mdW5jdGlvbigpe3ZhciBhO2E9YT09PXZvaWQgMD9BOmE7cmV0dXJuIEFNKGEpfSxFTT1mdW5jdGlvbihhKXt2YXIgYj17fTtiW0YuRC5jZ109YS5hcmNoaXRlY3R1cmU7CmJbRi5ELmRnXT1hLmJpdG5lc3M7YS5mdWxsVmVyc2lvbkxpc3QmJihiW0YuRC5lZ109YS5mdWxsVmVyc2lvbkxpc3QubWFwKGZ1bmN0aW9uKGMpe3JldHVybiBlbmNvZGVVUklDb21wb25lbnQoYy5icmFuZHx8IiIpKyI7IitlbmNvZGVVUklDb21wb25lbnQoYy52ZXJzaW9ufHwiIil9KS5qb2luKCJ8IikpO2JbRi5ELmZnXT1hLm1vYmlsZT8iMSI6IjAiO2JbRi5ELmdnXT1hLm1vZGVsO2JbRi5ELmhnXT1hLnBsYXRmb3JtO2JbRi5ELmlnXT1hLnBsYXRmb3JtVmVyc2lvbjtiW0YuRC5qZ109YS53b3c2ND8iMSI6IjAiO3JldHVybiBifSxGTT1uZXcgQ007dmFyIEdNPWZ1bmN0aW9uKGEpe2lmKCFETSgpKVAoODcpO2Vsc2UgaWYoRk0uSygpKXtQKDg1KTt2YXIgYj1GTS5IKCk7aWYoYil7aWYoYilmb3IodmFyIGM9RU0oYiksZD1tKE9iamVjdC5rZXlzKGMpKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTtVKGEsZixjW2ZdKX19ZWxzZSBQKDg2KX19O2Z1bmN0aW9uIEhNKGEsYil7Yj1iPT09dm9pZCAwPyExOmI7dmFyIGM9UShhLEguSi5zZyksZD1kSShhLCJjdXN0b21fZXZlbnRfYWNjZXB0X3J1bGVzIiwhMSkmJiFiO2lmKGMpe3ZhciBlPWMuaW5kZXhPZihhLnRhcmdldC5kZXN0aW5hdGlvbklkKT49MCxmPSEwO1EoYSxILkouQ2MpJiYoZj1RKGEsSC5KLk5iKT09PXZrKCkpO2UmJmY/VihhLEguSi5raSwhMCk6KFYoYSxILkoua2ksITEpLGR8fChhLmlzQWJvcnRlZD0hMCkpO2lmKGEuY2FuQmVBY2NlcHRlZCgpKXt2YXIgZz11aygpLmluZGV4T2YoYS50YXJnZXQuZGVzdGluYXRpb25JZCk+PTAsaD0hMTtpZighZyl7dmFyIGwsbj0obD1uayhhLnRhcmdldC5kZXN0aW5hdGlvbklkKSk9PW51bGw/dm9pZCAwOmwuY2Fub25pY2FsQ29udGFpbmVySWQ7biYmKGg9dmsoKT09PW4pfWd8fGg/UShhLEguSi5raSkmJmEuYWNjZXB0KCk6YS5pc0Fib3J0ZWQ9ITB9ZWxzZSBhLmlzQWJvcnRlZD0hMH19O3ZhciBJTT1mdW5jdGlvbihhKXt2YXIgYj1PKGEuTSxGLkQuWmMpLGM9TyhhLk0sRi5ELlljKTtiJiYhYz8oYS5ldmVudE5hbWUhPT1GLkQud2EmJmEuZXZlbnROYW1lIT09Ri5ELnlmJiZQKDEzMSksYS5pc0Fib3J0ZWQ9ITApOiFiJiZjJiYoUCgxMzIpLGEuaXNBYm9ydGVkPSEwKX07dmFyIEpNPWZ1bmN0aW9uKGEpe2lmKGEuZXZlbnROYW1lPT09Ri5ELndhKXt2YXIgYj1JZigxMSksYz1RKGEsSC5KLkhxKTshKCFNKDU1MCkmJmJ8fGMpfHxhLnRhcmdldC5KYygpfHxZRygiaWRjX2NvbmZpZ19wdiIsYS50YXJnZXQuZGVzdGluYXRpb25JZCl8fChhLmlzQWJvcnRlZD0hMCl9fTt2YXIgTE09ZnVuY3Rpb24oYSxiKXtLTS5OKGEsYil9LE1NPWZ1bmN0aW9uKCl7dGhpcy5IPXt9fTtNTS5wcm90b3R5cGUuTj1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuSFthXTtjfHwoYz10aGlzLkhbYV09W10pO2MucHVzaChiKX07TU0ucHJvdG90eXBlLks9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5IW2EudGFyZ2V0LmRlc3RpbmF0aW9uSWRdO2lmKCFhLmlzQWJvcnRlZCYmYilmb3IodmFyIGM9ZkkoYSksZD0wO2Q8Yi5sZW5ndGg7KytkKXt0cnl7YltkXShjKX1jYXRjaChlKXthLmlzQWJvcnRlZD0hMH1pZihhLmlzQWJvcnRlZClicmVha319O3ZhciBLTT1uZXcgTU07dmFyIE5NPWZ1bmN0aW9uKGEpe0tNLksoYSk7fTt2YXIgT009ZnVuY3Rpb24oYSl7YSYmKEFwKDQ5NSxhKSxBcCg1NjcsYSksQXAoNDUwLGEpLEFwKDQ0MyxhKSxBcCg1ODcsYSksQXAoNTc2LGEpLEFwKDU3MCxhKSxBcCg1ODEsYSksQXAoNjAyLGEpKX0sUE09ZnVuY3Rpb24oYSl7aWYoUShhLEguSi53ZikmJlhvKGZwKSl7dmFyIGI9UShhLEguSi5HYSksYz1RKGEsSC5KLmRhKSE9PVguVi51YiYmUShhLEguSi5kYSkhPT1YLlYuT2ImJlEoYSxILkouZGEpIT09WC5WLkZiJiZhLmV2ZW50TmFtZSE9PUYuRC5KYjtIdihiLGMpO3ZhciBkPUR2W0d2KGIucHJlZml4KV07T00oZCk7VShhLEYuRC5FZCxkKX19O2Z1bmN0aW9uIFFNKCl7cmV0dXJuIGtqKCJkZWR1cGVfZ2NsaWQiLGZ1bmN0aW9uKCl7cmV0dXJuIEF2KCl9KX07dmFyIFJNPS9eKHd3d1wuKT9nb29nbGUoXC5jb20/KT8oXC5bYS16XXsyfXQ/KT8kLyxTTT0vXnd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSQvO2Z1bmN0aW9uIFRNKGEpe2F8fChhPVVNKCkpO3JldHVybiBhLk50PyExOmEubnN8fGEucXN8fGEudnN8fGEucnN8fGEuRGd8fGEuVGh8fGEuVHJ8fGEuVmg9PT0iYXcuZHMifHxNKDIzNSkmJmEuVmg9PT0iYXcuZHYifHxhLllyPyEwOiExfQpmdW5jdGlvbiBVTSgpe3ZhciBhPXt9LGI9VXEoITApO2EuTnQ9ISFiLl91cDt2YXIgYz1lcygpLGQ9YXQoKTthLm5zPWMuYXchPT12b2lkIDA7YS5xcz1jLmRjIT09dm9pZCAwO2EudnM9Yy53YnJhaWQhPT12b2lkIDA7YS5ycz1jLmdicmFpZCE9PXZvaWQgMDthLlZoPXR5cGVvZiBjLmdjbHNyYz09PSJzdHJpbmciP2MuZ2Nsc3JjOnZvaWQgMDthLkRnPWQuRGc7YS5UaD1kLlRoO3ZhciBlPUIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIjthLllyPVJNLnRlc3QoZSk7YS5Ucj1TTS50ZXN0KGUpO3JldHVybiBhfTtmdW5jdGlvbiBWTSgpe3ZhciBhPUEuX191c3BhcGk7aWYoeWIoYSkpe3ZhciBiPSIiO3RyeXthKCJnZXRVU1BEYXRhIiwxLGZ1bmN0aW9uKGMsZCl7aWYoZCYmYyl7dmFyIGU9Yy51c3BTdHJpbmc7ZSYmUmVnRXhwKCJeW1xcZGEtekEtWi1dezEsMjB9JCIpLnRlc3QoZSkmJihiPWUpfX0pfWNhdGNoKGMpe31yZXR1cm4gYn19Owp2YXIgV009ZnVuY3Rpb24oYSl7dmFyIGI9WG8oZnApO1YoYSxILkouWWUsTyhhLk0sRi5ELm1iKSE9bnVsbCYmTyhhLk0sRi5ELm1iKSE9PSExJiYhYik7dmFyIGM9UShhLEguSi5kaiksZD1PKGEuTSxGLkQudWMpIT09ITEsZT1MSyhhKTtkfHxVKGEsRi5ELkhkLCIxIik7dmFyIGY9SHIoZS5wcmVmaXgpLGc9UShhLEguSi5zYSl8fFEoYSxILkoudWcpfHxRKGEsSC5KLldlKTtjfHxnfHxVKGEsIl8mYXB2YyIsIjAiKTthLk0uaXNHdG1FdmVudCYmVShhLEYuRC5JbCwiZyIpO1UoYSxGLkQuRWQpO1UoYSxGLkQuTWIpO2lmKGImJihVKGEsRi5ELk1iLHlMKCkpLGQpKXtIdihlKTt2YXIgaD1EdltHdihlLnByZWZpeCldO1UoYSxGLkQuRWQsaCk7T00oaCl9aWYoYS5ldmVudE5hbWU9PT1GLkQud2EmJiFnKXt2YXIgbD1PKGEuTSxGLkQuemMpLG49TyhhLk0sRi5ELkRiKXx8e307UEsoe1RuOmQsbW86bixRbzpsLFVuOmV9KTshYyYmWXMoZikmJihWKGEsSC5KLnZkLCEwKSxVKGEsIl8mYXB2YyIsCiIxIikpfWlmKGMpYS5pc0Fib3J0ZWQ9ITA7ZWxzZXthLnRhcmdldC5kZXN0aW5hdGlvbklkJiZVKGEsRi5ELlFlLGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpO1UoYSxGLkQuVWIsYS5ldmVudE5hbWUpO2EuZXZlbnROYW1lPT09Ri5ELndhJiZVKGEsRi5ELlViLEYuRC5zYyk7aWYoUShhLEguSi5zYSkpVShhLEYuRC5VYixGLkQud3ApLFUoYSxGLkQuc2EsIjEiKTtlbHNlIGlmKFEoYSxILkoudWcpKVUoYSxGLkQuVWIsRi5ELkhwKTtlbHNlIGlmKFEoYSxILkouV2UpKVUoYSxGLkQuVWIsRi5ELkVwKTtlbHNle3ZhciBwPWVzKCk7VShhLEYuRC5EZCxwLmdjbGlkKTtVKGEsRi5ELktkLHAuZGNsaWQpO1UoYSxGLkQuQWwscC5nY2xzcmMpO2lmKCFSKGEsRi5ELkRkKSYmIVIoYSxGLkQuS2QpfHxNKDQyMSkpVShhLEYuRC5FZSxwLndicmFpZCksVShhLEYuRC5CZixwLmdicmFpZCk7dmFyIHE9TSg1ODkpLHI9ZnVuY3Rpb24oZmEpe3JldHVybiBmYS5yZXBsYWNlKC9bXD8jXS4qJC8sIiIpfSwKdD0hIU8oYS5NLEYuRC56YSksdT1xP3Q/ZnVuY3Rpb24oZmEpe3JldHVybiB4TChyKGZhKSl9OmZ1bmN0aW9uKGZhKXtyZXR1cm4geEwoZmEucmVwbGFjZSgvIy4qJC8sIiIpKX06cix2PWJ0KHUpO1UoYSxGLkQuemEsdik7dmFyIHg9ISFPKGEuTSxGLkQuVWEpLHk9Qi5yZWZlcnJlcjtVKGEsRi5ELlVhLHE/eD9yKHkpOnkucmVwbGFjZSgvIy4qJC8sIiIpOkIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIik7d0woYSx2LHUsITApO2lmKEtjKXt2YXIgej1MaihSaihLYyksImhvc3QiKTt6JiZVKGEsRi5ELmJtLHopfWlmKCFRKGEsSC5KLldlKSl7dmFyIEM9YXQoKTtVKGEsRi5ELnpmLEMuRGcpO1UoYSxGLkQuQWYsQy5Tcil9dmFyIEQ9VU0oKTtUTShEKSYmVShhLEYuRC5QZCwiMSIpO1UoYSxGLkQuRGwsUU0oKSk7VXEoITEpLl91cD09PSIxIiYmVShhLEYuRC5RbCwiMSIpfXdvLkg9ITA7VShhLEYuRC5TYik7VShhLEYuRC5sYik7aWYoTSg0MjEpKXt2YXIgST1GcihlKTsKSS5sZW5ndGg+MCYmVShhLEYuRC5TYixJLmpvaW4oIi4iKSk7dmFyIEc9RHIoZisiX2F3Iik7Ry5sZW5ndGg+MCYmVShhLEYuRC5sYixHLmpvaW4oIi4iKSl9ZWxzZSBpZighUihhLEYuRC5EZCkmJiFSKGEsRi5ELktkKSYmV3MoZikpe3ZhciBOPUZyKGUpO04ubGVuZ3RoPjAmJlUoYSxGLkQuU2IsTi5qb2luKCIuIikpfWVsc2UgaWYoIVIoYSxGLkQuRWUpJiZiKXt2YXIgUz1EcihmKyJfYXciKTtTLmxlbmd0aD4wJiZVKGEsRi5ELmxiLFMuam9pbigiLiIpKX1VKGEsRi5ELlVsLHFkKCkpO2EuTS5pc0d0bUV2ZW50JiYoYS5NLkVhW0YuRC5SY109ZkQoRi5ELlJjKSk7U3QoYS5NKT9VKGEsRi5ELmRlLCExKTpVKGEsRi5ELmRlLCEwKTtWKGEsSC5KLkJrLCEwKTt2YXIgVz1WTSgpO1chPT12b2lkIDAmJlUoYSxGLkQua2csV3x8ImVycm9yIik7dmFyIGVhPUx0KCk7ZWEmJlUoYSxGLkQuS2UsZWEpO3ZhciBqYT1LdCgpO2phJiZVKGEsRi5ELk9lLGphKTtRKGEsSC5KLlBjKXx8VihhLEguSi5KYSwKITEpfX07CnZhciBYTT1mdW5jdGlvbihhLGIsYyl7Yj1iPT09dm9pZCAwPyEwOmI7Yz1jPT09dm9pZCAwP3t9OmM7aWYoYS5ldmVudE5hbWU9PT1GLkQuSmImJiFhLk0uaXNHdG1FdmVudCl7dmFyIGQ9TyhhLk0sRi5ELlNmKTtpZih0eXBlb2YgZD09PSJmdW5jdGlvbiImJiFRKGEsSC5KLnNhKSl7dmFyIGU9U3RyaW5nKE8oYS5NLEYuRC5UZikpLGY9ZTtjW2VdJiYoZj1jW2VdKTt2YXIgZz1SKGEsZil8fE8oYS5NLGUpO2lmKGIpe2lmKHR5cGVvZiBkPT09ImZ1bmN0aW9uIilpZihlPT09Ri5ELmxiJiZnIT09dm9pZCAwKXt2YXIgaD1nLnNwbGl0KCIuIik7aC5sZW5ndGg9PT0wP2Qodm9pZCAwKTpoLmxlbmd0aD09PTE/ZChoWzBdKTpkKGgpfWVsc2UgaWYoZT09PUYuRC5xcSYmTSgyNTgpKXt2YXIgbCxuPXt9O1hvKGZwKSYmKG4uYXVpZD1SKGEsRi5ELkVkKSk7dmFyIHA9VU0oKTtpZihUTShwKSluLmdhZF9zb3VyY2U9cC5EZyxuLmdhZF9jYW1wYWlnbmlkPXAuVGgsbi5zZXNzaW9uX3N0YXJ0X3RpbWVfdXNlYz0KKERhdGUubm93KCkqMUUzKS50b1N0cmluZygpLG4ubGFuZGluZ19wYWdlX3VybD1BLmxvY2F0aW9uLmhyZWYsbi5sYW5kaW5nX3BhZ2VfcmVmZXJyZXI9Qi5yZWZlcnJlcixuLmxhbmRpbmdfcGFnZV91c2VyX2FnZW50PUhjLnVzZXJBZ2VudDtlbHNle3ZhciBxPVEoYSxILkouR2EpO24uZ2FkX3NvdXJjZT1ScyhxLnByZWZpeCkuRWd9bD1idG9hKEpTT04uc3RyaW5naWZ5KG4pKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoLz0rJC8sIiIpO2QobCl9ZWxzZSBkKGcpfWVsc2UgZChnKX1hLmlzQWJvcnRlZD0hMH19O3ZhciBZTT1mdW5jdGlvbihhKXtpZihNKDQyNSkmJlEoYSxILkouRmMpKXtmb3IodmFyIGI9WyJfJmFwdmMiLCJ0aWRzIixGLkQuVGEsRi5ELlFpLEYuRC5VYixGLkQuUWUsRi5ELlZjLEYuRC5YY10sYz1tKGV1KGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtpZihlPT09Ri5ELnphKXt2YXIgZj1SKGEsZSk7ZiYmKGY9Zi5yZXBsYWNlKC9bXD8jXS4qJC8sIiIpKTtVKGEsZSxmKX1lbHNlIGIuaW5jbHVkZXMoZSl8fFUoYSxlKX1WKGEsSC5KLlhnKTtWKGEsSC5KLmhkKX19O2Z1bmN0aW9uIFpNKGEpe2lmKGZuLkspaWYod28uSD0hMCxhLmV2ZW50TmFtZT09PUYuRC53YSl6byhhLk0sYS50YXJnZXQuaWQpO2Vsc2V7UShhLEguSi5QYyl8fCh3by5LW2EudGFyZ2V0LmlkXT0hMCk7dmFyIGI9UShhLEguSi5OYik7WkIoYil9fTt2YXIgJE09ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZj1iPT09dm9pZCAwP3t9OmI7Yz1mLlNqPT09dm9pZCAwPyExOmYuU2o7ZD1mLk1qPT09dm9pZCAwPyExOmYuTWo7ZT1mLmtvPT09dm9pZCAwPyExOmYua287ZHx8KGEuTS5pc0d0bUV2ZW50P1EoYSxILkouZGEpIT09WC5WLnhhJiZhLmV2ZW50TmFtZSYmVShhLEYuRC5VYixhLmV2ZW50TmFtZSk6VShhLEYuRC5VYixhLmV2ZW50TmFtZSkpO0diKGEuTS5FYSxmdW5jdGlvbihnLGgpe016W2ddfHxjJiZCb1tnXXx8ZSYmT3pbZ118fFUoYSxnLGgpfSl9O3ZhciBhTj1mdW5jdGlvbihhKXtmb3IodmFyIGI9bShbRi5ELlBhLEYuRC5RYSxGLkQuZWIsRi5ELk5lLEYuRC5HZSxGLkQuVWQsRi5ELkllLEYuRC5UYyxGLkQuTGQsRi5ELmtoLEYuRC5GZixGLkQuRGYsRi5ELkVmLEYuRC5DZixGLkQud2ksRi5ELlNkLEYuRC5RZCxGLkQuUmQsRi5ELnRiXSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpYS5jb3B5VG9IaXREYXRhKGMudmFsdWUpfTtmdW5jdGlvbiBiTihhLGIpe3JldHVybiBrcigiZ3NpZF9kYyIse3ZhbHVlOntqb2luSWQ6YSxsYXN0Sm9pbmVkVGltZU1zOmJ9LGV4cGlyZXM6YiszRTV9KT09PTA/ITA6ITF9Owp2YXIgY049ZnVuY3Rpb24oYSl7aWYoWG8oZnApKXt2YXIgYjthOnt2YXIgYz1ucigiZ3NpZF9kYyIpO2lmKGMuZXJyb3I9PT0wJiZjLnZhbHVlJiZ0eXBlb2YgYy52YWx1ZT09PSJvYmplY3QiKXt2YXIgZD1jLnZhbHVlO2lmKGQudmFsdWUmJnR5cGVvZiBkLnZhbHVlPT09Im9iamVjdCIpe3ZhciBlPWQudmFsdWU7aWYoZS5qb2luSWQmJmUubGFzdEpvaW5lZFRpbWVNcyYmdHlwZW9mIGUuam9pbklkPT09InN0cmluZyImJnR5cGVvZiBlLmxhc3RKb2luZWRUaW1lTXM9PT0ibnVtYmVyIil7Yj1lO2JyZWFrIGF9fX1iPXZvaWQgMH12YXIgZj1iLGc9Zj09bnVsbD92b2lkIDA6Zi5qb2luSWQsaD1OYigpO2lmKCFmfHwhZ3x8Zi5sYXN0Sm9pbmVkVGltZU1zPGgtM0U1KXt2YXIgbD1jYygpO2c9bCYmYk4obCxOYigpKT9sOnZvaWQgMDtnJiZWKGEsSC5KLmhkLCEwKX1lbHNlIGcmJmYubGFzdEpvaW5lZFRpbWVNczxoLTZFNCYmYk4oZi5qb2luSWQsaCkmJlYoYSxILkouaGQsITApO2cmJk0oNDc0KSYmClYoYSxILkouWGcsZyl9fTt2YXIgZE49ZnVuY3Rpb24oYSl7VihhLEguSi53ZixPKGEuTSxGLkQudWMpIT09ITEpO1YoYSxILkouR2EsTEsoYSkpO1YoYSxILkouWGUsTyhhLk0sRi5ELm1iKSE9bnVsbCYmTyhhLk0sRi5ELm1iKSE9PSExKTtWKGEsSC5KLndkLFN0KGEuTSkpfTt2YXIgZU49e3pxOntVdDoiY2QiLGZwOiJjZSIsVnQ6ImNmIixXdDoiY3BmIixYdDoiY3UifX07dmFyIGZOPWZ1bmN0aW9uKGEpe3ZhciBiPWVOLnpxLmZwLGM9TyhhLk0sRi5ELkNiKTtSKGEsRi5ELmVkKXx8VShhLEYuRC5lZCx7fSk7UihhLEYuRC5lZClbYl09Y307ZnVuY3Rpb24gZ04oYSxiKXtiPWI9PT12b2lkIDA/ITA6Yjt2YXIgYz13YihyYi5HVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTHx8W10pO2MmJihVKGEsRi5ELlZmLGMpLGImJnViKCkpfTt2YXIgaE49ZnVuY3Rpb24oYSl7dmFyIGI9YS5NLmdldE1lcmdlZFZhbHVlcyhGLkQuVGEpO2ImJmEubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSxiKX07dmFyIGlOPWZ1bmN0aW9uKGEpe3ZhciBiPU9wKCExKTtVKGEsRi5ELk1lLGIpfTt2YXIgak49ZnVuY3Rpb24oYSl7UShhLEguSi53ZCk/VShhLEYuRC5kZSwiMCIpOlUoYSxGLkQuZGUsIjEiKX07dmFyIGtOPWZ1bmN0aW9uKGEsYil7aWYoYj09PXZvaWQgMHx8Yil7dmFyIGM9Vk0oKTtjIT09dm9pZCAwJiZVKGEsRi5ELmtnLGN8fCJlcnJvciIpfXZhciBkPUx0KCk7ZCYmVShhLEYuRC5LZSxkKTt2YXIgZT1LdCgpO2UmJlUoYSxGLkQuT2UsZSl9O3ZhciBsTj1mdW5jdGlvbihhKXt2YXIgYj1ubShqbS5iYS5raiksYz1FKDUpO2ImJmJbY10mJmEubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSx7cmV0cnk6IjEifSl9O3ZhciBtTj1mdW5jdGlvbihhKXtVcSghMSkuX3VwPT09IjEiJiZVKGEsRi5ELktpLCIxIil9Owp2YXIgbk49ZnVuY3Rpb24oYSxiLGMpe2lmKGEhPT12b2lkIDApcmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YS5tYXAoZnVuY3Rpb24oKXtyZXR1cm57bW9kZToibSIsbG9jYXRpb246YixzZWxlY3RvcjpjfX0pOnttb2RlOiJtIixsb2NhdGlvbjpiLHNlbGVjdG9yOmN9fSxvTj1mdW5jdGlvbihhLGIsYyxkKXtpZighYylyZXR1cm4hMTtmb3IodmFyIGU9U3RyaW5nKGMudmFsdWUpLGYsZz12b2lkIDAsaD1lLnJlcGxhY2UoL1xbIj8nPy9nLCIuIikucmVwbGFjZSgvIj8nP1xdL2csIiIpLnNwbGl0KCIsIikubWFwKGZ1bmN0aW9uKHUpe3JldHVybiB1LnRyaW0oKX0pLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdSYmIVNiKHUsIiMiKSYmIVNiKHUsIi4iKX0pLGw9MDtsPGgubGVuZ3RoO2wrKyl7dmFyIG49aFtsXTtpZihTYihuLCJkYXRhTGF5ZXIuIikpZj11QShuLnN1YnN0cmluZygxMCkpLGc9bk4oZiwiZCIsbik7ZWxzZXt2YXIgcD1uLnNwbGl0KCIuIik7Zj1BW3Auc2hpZnQoKV07CmZvcih2YXIgcT0wO3E8cC5sZW5ndGg7cSsrKWY9ZiYmZltwW3FdXTtnPW5OKGYsImoiLG4pfWlmKGYhPT12b2lkIDApYnJlYWt9aWYoZj09PXZvaWQgMCl0cnl7dmFyIHI9Qi5xdWVyeVNlbGVjdG9yQWxsKGUpO2lmKHImJnIubGVuZ3RoPjApe2Y9W107Zm9yKHZhciB0PTA7dDxyLmxlbmd0aCYmdDwoYj09PSJlbWFpbCJ8fGI9PT0icGhvbmVfbnVtYmVyIj81OjEpO3QrKylmLnB1c2goZmQoclt0XSl8fExiKHJbdF0udmFsdWUpKTtmPWYubGVuZ3RoPT09MT9mWzBdOmY7Zz1uTihmLCJjIixlKX19Y2F0Y2godSl7UCgxNDkpfXJldHVybiBmPyhhW2JdPWYsZCYmZyYmKGRbYl09ZyksITApOiExfTsKdmFyIHBOPWZ1bmN0aW9uKGEpe2lmKGRJKGEsImNjZF9hZGRfMXBfZGF0YSIsITEpJiZYbyhmcCkpe3ZhciBiPWEuTS5pYltGLkQubG1dO2lmKENkKGIpJiZiLmVuYWJsZV9jb2RlKXt2YXIgYz1PKGEuTSxGLkQuQWMpO2lmKGM9PT1udWxsKVYoYSxILkouR24sbnVsbCk7ZWxzZSBpZihiLmVuYWJsZV9jb2RlJiZDZChjKSYmKFp2KGMpLFYoYSxILkouR24sYykpLENkKGIuc2VsZWN0b3JzKSl7dmFyIGQ9SC5KLmlyLGU7dmFyIGY9Yi5zZWxlY3RvcnMsZz1NKDUyMyk7Zz1nPT09dm9pZCAwPyExOmc7aWYoZil7dmFyIGg9e30sbD0hMSxuPXt9O2w9b04oaCwiZW1haWwiLGYuZW1haWwsbil8fGw7bD1vTihoLCJwaG9uZV9udW1iZXIiLGYucGhvbmUsbil8fGw7aC5hZGRyZXNzPVtdO2Zvcih2YXIgcD1mLm5hbWVfYW5kX2FkZHJlc3N8fFtdLHE9MDtxPHAubGVuZ3RoO3ErKyl7dmFyIHI9e30sdD17fTtsPW9OKHIsImZpcnN0X25hbWUiLHBbcV0uZmlyc3RfbmFtZSx0KXx8bDtsPW9OKHIsCiJsYXN0X25hbWUiLHBbcV0ubGFzdF9uYW1lLHQpfHxsO2w9b04ociwic3RyZWV0IixwW3FdLnN0cmVldCx0KXx8bDtsPW9OKHIsImNpdHkiLHBbcV0uY2l0eSx0KXx8bDtsPW9OKHIsInJlZ2lvbiIscFtxXS5yZWdpb24sdCl8fGw7bD1vTihyLCJjb3VudHJ5IixwW3FdLmNvdW50cnksdCl8fGw7bD1vTihyLCJwb3N0YWxfY29kZSIscFtxXS5wb3N0YWxfY29kZSx0KXx8bDtoLmFkZHJlc3MucHVzaChyKTtnJiYoci5fdGFnX21ldGFkYXRhPXQpfWcmJihoLl90YWdfbWV0YWRhdGE9bik7ZT1sP2g6dm9pZCAwfWVsc2UgZT12b2lkIDA7VihhLGQsZSl9fX19O2Z1bmN0aW9uIEZPKGEsYixjLGQpe31GTy5QPSJpbnRlcm5hbC5leGVjdXRlRXZlbnRQcm9jZXNzb3IiO2Z1bmN0aW9uIEdPKGEpe3ZhciBiO3JldHVybiBVZChiLHRoaXMuVCwxKX1HTy5QPSJpbnRlcm5hbC5leGVjdXRlSmF2YXNjcmlwdFN0cmluZyI7ZnVuY3Rpb24gSE8oYSl7dmFyIGI7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBjPUE7dHJ5e2I9S2ooYy5lc2NhcGUoYy5hdG9iKGEpKSl9Y2F0Y2goZCl7cmV0dXJufXJldHVybiBifTtmdW5jdGlvbiBJTyhhKXt2YXIgYj0iIjtyZXR1cm4gYn1JTy5QPSJpbnRlcm5hbC5nZW5lcmF0ZUNsaWVudElkIjtmdW5jdGlvbiBKTyhhKXt2YXIgYj17fTtyZXR1cm4gVWQoYil9Sk8uUD0iaW50ZXJuYWwuZ2V0QWRzQ29va2llV3JpdGluZ09wdGlvbnMiO2Z1bmN0aW9uIEtPKGEsYil7dmFyIGM9ITE7cmV0dXJuIGN9S08uUD0iaW50ZXJuYWwuZ2V0QWxsb3dBZFBlcnNvbmFsaXphdGlvbiI7ZnVuY3Rpb24gTE8oKXt2YXIgYTtyZXR1cm4gYX1MTy5QPSJpbnRlcm5hbC5nZXRBbmRSZXNldEV2ZW50VXNhZ2UiO2Z1bmN0aW9uIE1PKGEsYil7Yj1iPT09dm9pZCAwPyEwOmI7dmFyIGM7cmV0dXJuIGN9TU8uUD0iaW50ZXJuYWwuZ2V0QXVpZCI7ZnVuY3Rpb24gTk8oKXt2YXIgYT1bXTtyZXR1cm4gVWQoYSl9Tk8uUD0iaW50ZXJuYWwuZ2V0Q29udGFpbmVySWRzIjtmdW5jdGlvbiBPTygpe3ZhciBhPW5ldyBrYjtMKHRoaXMsInJlYWRfY29udGFpbmVyX2RhdGEiKSxhLnNldCgiY29udGFpbmVySWQiLGlnKSxhLnNldCgidmVyc2lvbiIsa2cpLGEuc2V0KCJlbnZpcm9ubWVudE5hbWUiLGpnKSxhLnNldCgiZGVidWdNb2RlIixsZyksYS5zZXQoInByZXZpZXdNb2RlIixtZy5QbyksYS5zZXQoImVudmlyb25tZW50TW9kZSIsbWcuS3IpLGEuc2V0KCJmaXJzdFBhcnR5U2VydmluZyIsYWsoKSksYS5zZXQoImNvbnRhaW5lclVybCIsS2MpLGEuc2V0KCJpc0dvb2dsZU9ubHlNb2RlIixJZig2MikpLGEuWmEoKTtyZXR1cm4gYX1PTy5wdWJsaWNOYW1lPSJnZXRDb250YWluZXJWZXJzaW9uIjtmdW5jdGlvbiBQTyhhLGIpe2I9Yj09PXZvaWQgMD8hMDpiO3ZhciBjO3JldHVybiBjfVBPLnB1YmxpY05hbWU9ImdldENvb2tpZVZhbHVlcyI7ZnVuY3Rpb24gUU8oKXt2YXIgYT0iIjtyZXR1cm4gYX1RTy5QPSJpbnRlcm5hbC5nZXRDb3JlUGxhdGZvcm1TZXJ2aWNlc1BhcmFtIjtmdW5jdGlvbiBSTygpe3JldHVybiB5bSgpfVJPLlA9ImludGVybmFsLmdldENvdW50cnlDb2RlIjtmdW5jdGlvbiBTTygpe3ZhciBhPVtdO2E9dGsoKTtyZXR1cm4gVWQoYSl9U08uUD0iaW50ZXJuYWwuZ2V0RGVzdGluYXRpb25JZHMiO2Z1bmN0aW9uIFRPKGEpe3ZhciBiPW5ldyBrYjtyZXR1cm4gYn1UTy5QPSJpbnRlcm5hbC5nZXREZXZlbG9wZXJJZHMiO2Z1bmN0aW9uIFVPKGEpe3ZhciBiO3JldHVybiBifVVPLlA9ImludGVybmFsLmdldEVjc2lkQ29va2llVmFsdWUiO2Z1bmN0aW9uIFZPKGEsYil7dmFyIGM9bnVsbDtyZXR1cm4gY31WTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50QXR0cmlidXRlIjtmdW5jdGlvbiBXTyhhKXt2YXIgYj1udWxsO3JldHVybiBifVdPLlA9ImludGVybmFsLmdldEVsZW1lbnRCeUlkIjtmdW5jdGlvbiBYTyhhKXt2YXIgYj0iIjtyZXR1cm4gYn1YTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50SW5uZXJUZXh0IjtmdW5jdGlvbiBZTyhhKXt2YXIgYj1udWxsO3JldHVybiBifVlPLlA9ImludGVybmFsLmdldEVsZW1lbnRQYXJlbnQiO2Z1bmN0aW9uIFpPKGEpe3ZhciBiPW51bGw7cmV0dXJuIGJ9Wk8uUD0iaW50ZXJuYWwuZ2V0RWxlbWVudFByZXZpb3VzU2libGluZyI7ZnVuY3Rpb24gJE8oYSxiKXt2YXIgYz1udWxsO3JldHVybiBVZChjKX0kTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50UHJvcGVydHkiO2Z1bmN0aW9uIGFQKGEpe3ZhciBiO3JldHVybiBifWFQLlA9ImludGVybmFsLmdldEVsZW1lbnRWYWx1ZSI7ZnVuY3Rpb24gYlAoYSl7dmFyIGI9MDtyZXR1cm4gYn1iUC5QPSJpbnRlcm5hbC5nZXRFbGVtZW50VmlzaWJpbGl0eVJhdGlvIjtmdW5jdGlvbiBjUChhKXt2YXIgYj1udWxsO3JldHVybiBifWNQLlA9ImludGVybmFsLmdldEVsZW1lbnRzQnlDc3NTZWxlY3RvciI7CmZ1bmN0aW9uIGRQKGEpe3ZhciBiO2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIl0sYXJndW1lbnRzKTtMKHRoaXMsInJlYWRfZXZlbnRfZGF0YSIsYSk7dmFyIGM7YTp7dmFyIGQ9YSxlPVhGKHRoaXMpLm9yaWdpbmFsRXZlbnREYXRhO2lmKGUpe2Zvcih2YXIgZj1lLGc9e30saD17fSxsPXt9LG49W10scD1kLnNwbGl0KCJcXFxcIikscT0wO3E8cC5sZW5ndGg7cSsrKXtmb3IodmFyIHI9cFtxXS5zcGxpdCgiXFwuIiksdD0wO3Q8ci5sZW5ndGg7dCsrKXtmb3IodmFyIHU9clt0XS5zcGxpdCgiLiIpLHY9MDt2PHUubGVuZ3RoO3YrKyluLnB1c2godVt2XSksdiE9PXUubGVuZ3RoLTEmJm4ucHVzaChsKTt0IT09ci5sZW5ndGgtMSYmbi5wdXNoKGgpfXEhPT1wLmxlbmd0aC0xJiZuLnB1c2goZyl9Zm9yKHZhciB4PVtdLHk9IiIsej1tKG4pLEM9ei5uZXh0KCk7IUMuZG9uZTtDPQp6Lm5leHQoKSl7dmFyIEQ9Qy52YWx1ZTtEPT09bD8oeC5wdXNoKHkpLHk9IiIpOnk9RD09PWc/eSsiXFwiOkQ9PT1oP3krIi4iOnkrRH15JiZ4LnB1c2goeSk7Zm9yKHZhciBJPW0oeCksRz1JLm5leHQoKTshRy5kb25lO0c9SS5uZXh0KCkpe2lmKGY9PW51bGwpe2M9dm9pZCAwO2JyZWFrIGF9Zj1mW0cudmFsdWVdfWM9Zn1lbHNlIGM9dm9pZCAwfWI9VWQoYyx0aGlzLlQsMSk7cmV0dXJuIGJ9ZFAuUD0iaW50ZXJuYWwuZ2V0RXZlbnREYXRhIjtmdW5jdGlvbiBlUChhKXt2YXIgYj1udWxsO2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIl0sYXJndW1lbnRzKTtMKHRoaXMsInJlYWRfZG9tX2VsZW1lbnRzIiwiY3NzIixhKTt0cnl7dmFyIGM9Qi5xdWVyeVNlbGVjdG9yKGEpO2MmJihiPW5ldyBQZChjKSl9Y2F0Y2goZCl7cmV0dXJuIG51bGx9cmV0dXJuIGJ9ZVAuUD0iaW50ZXJuYWwuZ2V0Rmlyc3RFbGVtZW50QnlDc3NTZWxlY3RvciI7ZnVuY3Rpb24gZlAoKXt2YXIgYTtyZXR1cm4gYX1mUC5QPSJpbnRlcm5hbC5nZXRHc2FFeHBlcmltZW50SWQiO2Z1bmN0aW9uIGdQKCl7cmV0dXJuIG5ldyBQZChQayl9Z1AuUD0iaW50ZXJuYWwuZ2V0SHRtbElkIjtmdW5jdGlvbiBoUCgpe3ZhciBhO3JldHVybiBhfWhQLlA9ImludGVybmFsLmdldElmcmFtaW5nU3RhdGUiO2Z1bmN0aW9uIGlQKGEsYil7dmFyIGM9e307cmV0dXJuIFVkKGMpfWlQLlA9ImludGVybmFsLmdldExpbmtlclZhbHVlRnJvbUxvY2F0aW9uIjtmdW5jdGlvbiBqUCgpe3ZhciBhPW5ldyBrYjtyZXR1cm4gYX1qUC5QPSJpbnRlcm5hbC5nZXRQcml2YWN5U3RyaW5ncyI7ZnVuY3Rpb24ga1AoYSxiKXt2YXIgYztpZighbGgoYSl8fCFsaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwic3RyaW5nIl0sYXJndW1lbnRzKTt2YXIgZD0kSChhKXx8e307Yz1VZChkW2JdLHRoaXMuVCk7cmV0dXJuIGN9a1AuUD0iaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIjtmdW5jdGlvbiBsUChhLGIpe3ZhciBjO2lmKCFsaChhKXx8IXBoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJib29sZWFufHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7TCh0aGlzLCJnZXRfdXJsIiwicXVlcnkiLGEpO3ZhciBkPUxqKFJqKEEubG9jYXRpb24uaHJlZiksInF1ZXJ5IiksZT1JaihkLGEsYik7Yz1VZChlLHRoaXMuVCk7cmV0dXJuIGN9bFAucHVibGljTmFtZT0iZ2V0UXVlcnlQYXJhbWV0ZXJzIjtmdW5jdGlvbiBtUChhLGIpe3ZhciBjO3JldHVybiBjfW1QLnB1YmxpY05hbWU9ImdldFJlZmVycmVyUXVlcnlQYXJhbWV0ZXJzIjtmdW5jdGlvbiBuUChhKXt2YXIgYj0iIjtyZXR1cm4gYn1uUC5wdWJsaWNOYW1lPSJnZXRSZWZlcnJlclVybCI7ZnVuY3Rpb24gb1AoKXtyZXR1cm4gem0oKX1vUC5QPSJpbnRlcm5hbC5nZXRSZWdpb25Db2RlIjtmdW5jdGlvbiBwUChhLGIpe3ZhciBjO2lmKCFsaChhKXx8IWxoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBkPWVEKGEpO2M9VWQoZFtiXSx0aGlzLlQpO3JldHVybiBjfXBQLlA9ImludGVybmFsLmdldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciI7ZnVuY3Rpb24gcVAoYSxiKXt2YXIgYz1udWxsOwpyZXR1cm4gY31xUC5QPSJpbnRlcm5hbC5nZXRTY29wZWRFbGVtZW50c0J5Q3NzU2VsZWN0b3IiO2Z1bmN0aW9uIHJQKCl7dmFyIGE9bmV3IGtiO2Euc2V0KCJ3aWR0aCIsMCk7YS5zZXQoImhlaWdodCIsMCk7cmV0dXJuIGF9clAuUD0iaW50ZXJuYWwuZ2V0U2NyZWVuRGltZW5zaW9ucyI7ZnVuY3Rpb24gc1AoKXt2YXIgYT0iIjtyZXR1cm4gYX1zUC5QPSJpbnRlcm5hbC5nZXRUb3BTYW1lRG9tYWluVXJsIjtmdW5jdGlvbiB0UCgpe3ZhciBhPSIiO3JldHVybiBhfXRQLlA9ImludGVybmFsLmdldFRvcFdpbmRvd1VybCI7ZnVuY3Rpb24gdVAoYSl7dmFyIGI9IiI7aWYoIW1oKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmd8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTtMKHRoaXMsImdldF91cmwiLGEpO2I9TGooUmooQS5sb2NhdGlvbi5ocmVmKSxhKTtyZXR1cm4gYn11UC5wdWJsaWNOYW1lPSJnZXRVcmwiO2Z1bmN0aW9uIHZQKCl7TCh0aGlzLCJnZXRfdXNlcl9hZ2VudCIpO3JldHVybiBIYy51c2VyQWdlbnR9dlAucHVibGljTmFtZT0iZ2V0VXNlckFnZW50Ijt2UC5QPSJpbnRlcm5hbC5nZXRVc2VyQWdlbnQiO2Z1bmN0aW9uIHdQKCl7dmFyIGE7cmV0dXJuIGE/VWQoRU0oYSkpOmF9d1AuUD0iaW50ZXJuYWwuZ2V0VXNlckFnZW50Q2xpZW50SGludHMiO3ZhciB5UD1mdW5jdGlvbihhKXt2YXIgYj1hLmV2ZW50TmFtZT09PUYuRC5zYyYmRWwoKSYmYmsoWksoYSkpLGM9UShhLEguSi5kbiksZD1RKGEsSC5KLktrKSxlPVEoYSxILkoubWcpLGY9UShhLEguSi5UZSksZz1RKGEsSC5KLkZjKSxoPVEoYSxILkouaGQpLGw9UShhLEguSi5yZyksbj1RKGEsSC5KLk1oKSxwPVEoYSxILkouTmgpLHE9ISFZSyhhKXx8ISFRKGEsSC5KLnBwKTtyZXR1cm4hKCFuZCgpJiYha2QoKXx8ZXx8cXx8Znx8Z3x8aHx8bHx8cHx8bnx8Ynx8Y3x8IWQmJnhQKCkpfSx4UD1mdW5jdGlvbigpe3JldHVybiBhbCg5LGZ1bmN0aW9uKCl7cmV0dXJuITF9KX07ZnVuY3Rpb24gelAoKXt2YXIgYT1BO3JldHVybiBhLmdhR2xvYmFsPWEuZ2FHbG9iYWx8fHt9fWZ1bmN0aW9uIEFQKGEsYil7dmFyIGM9elAoKTtpZihjLnZpZD09PXZvaWQgMHx8YiYmIWMuZnJvbV9jb29raWUpYy52aWQ9YSxjLmZyb21fY29va2llPWJ9O3ZhciBCUD1bIkdBMSJdOwp2YXIgQ1A9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVEoYSxILkouUGspO2lmKGQ9PT12b2lkIDB8fGM8PWQpVShhLEYuRC5LYixiKSxWKGEsSC5KLlBrLGMpfSxFUD1mdW5jdGlvbihhLGIpe3ZhciBjPVIoYSxGLkQuS2IpO2lmKE8oYS5NLEYuRC5aYykmJk8oYS5NLEYuRC5ZYyl8fGImJmM9PT1iKXJldHVybiBjO2lmKGMpe2M9IiIrYztpZighRFAoYyxhKSlyZXR1cm4gUCgzMSksYS5pc0Fib3J0ZWQ9ITAsIiI7QVAoYyxYbyhGLkQucmEpKTtyZXR1cm4gY31QKDMyKTthLmlzQWJvcnRlZD0hMDtyZXR1cm4iIn0sRlA9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5HYSksYz1iLnByZWZpeCsiX2dhIixkPUJ2KGIucHJlZml4KyJfZ2EiLGIuZG9tYWluLGIucGF0aCxCUCxGLkQucmEpO2lmKCFkKXt2YXIgZT1TdHJpbmcoTyhhLk0sRi5ELklkLCIiKSk7ZSYmZSE9PWMmJihkPUJ2KGUsYi5kb21haW4sYi5wYXRoLEJQLEYuRC5yYSkpfXJldHVybiBkfSxEUD1mdW5jdGlvbihhLGIpe3ZhciBjOwp2YXIgZD1RKGIsSC5KLkdhKSxlPWQucHJlZml4KyJfZ2EiLGY9dXEoZCx2b2lkIDAsdm9pZCAwLEYuRC5yYSk7aWYoTyhiLk0sRi5ELkpkKT09PSExJiZGUChiKT09PWEpYz0hMDtlbHNle3ZhciBnO2c9W0JQWzBdLHRxKGQuZG9tYWluLGQucGF0aCksYV0uam9pbigiLiIpO2M9b3EoZSxnLGYpIT09MX1yZXR1cm4gY307CnZhciBHUD1mdW5jdGlvbihhKXt2YXIgYj0wLGM9MDtyZXR1cm57c3RhcnQ6ZnVuY3Rpb24oKXtiPU5iKCl9LHN0b3A6ZnVuY3Rpb24oKXtjPXRoaXMuZ2V0KCl9LGdldDpmdW5jdGlvbigpe3ZhciBkPTA7YS5WaigpJiYoZD1OYigpLWIpO3JldHVybiBkK2N9fX0sSFA9ZnVuY3Rpb24oKXt0aGlzLkg9dm9pZCAwO3RoaXMuSz0wO3RoaXMuaXNBY3RpdmU9dGhpcy5pc1Zpc2libGU9dGhpcy5OPSExO3RoaXMuWj10aGlzLlI9dm9pZCAwfTtrPUhQLnByb3RvdHlwZTtrLktxPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7aWYoIXRoaXMuSCl7dGhpcy5OPUIuaGFzRm9jdXMoKTt0aGlzLmlzVmlzaWJsZT0hQi5oaWRkZW47dGhpcy5pc0FjdGl2ZT0hMDt2YXIgYz1mdW5jdGlvbihlLGYsZyl7JGMoZSxmLGZ1bmN0aW9uKGgpe2IuSC5zdG9wKCk7ZyhoKTtiLlZqKCkmJmIuSC5zdGFydCgpfSl9LGQ9QTtjKGQsImZvY3VzIixmdW5jdGlvbigpe2IuTj0hMH0pO2MoZCwiYmx1ciIsZnVuY3Rpb24oKXtiLk49CiExfSk7YyhkLCJwYWdlc2hvdyIsZnVuY3Rpb24oZSl7Yi5pc0FjdGl2ZT0hMDtlLnBlcnNpc3RlZCYmUCg1Nik7Yi5aJiZiLlooKX0pO2MoZCwicGFnZWhpZGUiLGZ1bmN0aW9uKCl7Yi5pc0FjdGl2ZT0hMTtiLlImJmIuUigpfSk7YyhCLCJ2aXNpYmlsaXR5Y2hhbmdlIixmdW5jdGlvbigpe2IuaXNWaXNpYmxlPSFCLmhpZGRlbn0pO2JrKFpLKGEpKSYmIU9jKCkmJmMoZCwiYmVmb3JldW5sb2FkIixmdW5jdGlvbigpe1prKDksITApfSk7dGhpcy5xayghMCk7dGhpcy5LPTB9fTtrLnFrPWZ1bmN0aW9uKGEpe2lmKChhPT09dm9pZCAwPzA6YSl8fHRoaXMuSCl0aGlzLksrPXRoaXMuWWgoKSx0aGlzLkg9R1AodGhpcyksdGhpcy5WaigpJiZ0aGlzLkguc3RhcnQoKX07ay5LdD1mdW5jdGlvbihhKXt2YXIgYj10aGlzLlloKCk7Yj4wJiZVKGEsRi5ELm5oLGIpfTtrLmxzPWZ1bmN0aW9uKGEpe1UoYSxGLkQubmgpO3RoaXMucWsoKTt0aGlzLks9MH07ay5Waj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk4mJgp0aGlzLmlzVmlzaWJsZSYmdGhpcy5pc0FjdGl2ZX07ay5Ycj1mdW5jdGlvbigpe3JldHVybiB0aGlzLksrdGhpcy5ZaCgpfTtrLlloPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSCYmdGhpcy5ILmdldCgpfHwwfTtrLmh0PWZ1bmN0aW9uKGEpe3RoaXMuUj1hfTtrLkNvPWZ1bmN0aW9uKGEpe3RoaXMuWj1hfTt2YXIgSVA9ZnVuY3Rpb24oYSl7c2IoIkdBNF9FVkVOVCIsYSl9O3ZhciBKUD1mdW5jdGlvbihhKXt2YXIgYixjPVEoYSxILkoud20pO2lmKEFycmF5LmlzQXJyYXkoYykpZm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspSVAoY1tkXSk7KGI9d2IocmIuR0E0X0VWRU5UfHxbXSkpJiZVKGEsIl9ldSIsYil9Owp2YXIgTVA9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IFJlZ0V4cCgiXiIrKCgoYT09bnVsbD92b2lkIDA6YS5wcmVmaXgpfHwiIikrIl9nYV9cXHcrJCIpKSxjPXlxKGZ1bmN0aW9uKHApe3JldHVybiBiLnRlc3QocCl9KSxkPXt9LGU7Zm9yKGUgaW4gYylpZihjLmhhc093blByb3BlcnR5KGUpKXt2YXIgZj1LUChjW2VdKTtpZihmKXt2YXIgZz1icShmLDIpO2lmKGcpe3ZhciBoPUxQKGcpO2lmKGgpe3ZhciBsPXZvaWQgMCxuPSgoKGw9YSk9PW51bGw/dm9pZCAwOmwucHJlZml4KXx8IiIpLmxlbmd0aCs0O2RbIkctIitlLnN1YnN0cmluZyhuKV09aH19fX1yZXR1cm4gZH0sTlA9ZnVuY3Rpb24oYSl7aWYoYSl7dmFyIGI7YTp7dmFyIGM9KFNiKGEsInMiKSYmYS5pbmRleE9mKCIuIik9PT0tMT8iR1MyIjoiR1MxIikrIi4xLiIrYTt0cnl7Yj0kcChjLDIpO2JyZWFrIGF9Y2F0Y2goZCl7fWI9dm9pZCAwfXJldHVybiBifX0sS1A9ZnVuY3Rpb24oYSl7aWYoYSYmYS5sZW5ndGghPT0wKXtmb3IodmFyIGIsCmM9LUluZmluaXR5LGQ9bShhKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTtpZihmLnQhPT12b2lkIDApe3ZhciBnPU51bWJlcihmLnQpOyFpc05hTihnKSYmZz5jJiYoYz1nLGI9Zil9fXJldHVybiBifX0senE9ZnVuY3Rpb24oYSl7YSYmKGE9PT0iR1MxIj9JUChKLlUuS20pOmE9PT0iR1MyIiYmSVAoSi5VLkxtKSl9LExQPWZ1bmN0aW9uKGEpe3ZhciBiPU5QKGEpO2lmKGIpe3ZhciBjPU51bWJlcihiLm8pLGQ9TnVtYmVyKGIudCksZT1OdW1iZXIoYi5qfHwwKTtjfHxJUChKLlUuVW0pO2R8fElQKEouVS5UbSk7aXNOYU4oZSkmJklQKEouVS5TbSk7aWYoYyYmZCYmIWlzTmFOKGUpKXt2YXIgZj1iLmgsZz1mJiZmIT09IjAiP1N0cmluZyhmKTp2b2lkIDAsaD1iLmQ/U3RyaW5nKGIuZCk6dm9pZCAwLGw9e307cmV0dXJuIGwucz1TdHJpbmcoYi5zKSxsLm89YyxsLmc9ISFOdW1iZXIoYi5nKSxsLnQ9ZCxsLmQ9aCxsLmo9ZSxsLmw9Yi5sPT09IjEiLApsLmg9ZyxsfX19Owp2YXIgUFA9ZnVuY3Rpb24oYSxiLGMpe2lmKCFiKXJldHVybiBhO2lmKCFhKXJldHVybiBiO3ZhciBkPUxQKGEpO2lmKCFkKXJldHVybiBiO3ZhciBlLGY9SWIoKGU9TyhjLk0sRi5ELnloKSkhPW51bGw/ZTozMCksZz1RKGMsSC5KLkViKTtpZighKE1hdGguZmxvb3IoZy8xRTMpPmQudCtmKjYwKSlyZXR1cm4gYTt2YXIgaD1MUChiKTtpZighaClyZXR1cm4gYTtoLm89ZC5vKzE7dmFyIGw7cmV0dXJuKGw9T1AoaCkpIT1udWxsP2w6Yn0sUlA9ZnVuY3Rpb24oYSxiKXt2YXIgYz1RKGIsSC5KLkdhKSxkPVFQKGIsYyksZT1OUChhKTtpZighZSlyZXR1cm4hMTt2YXIgZj11cShjfHx7fSx2b2lkIDAsdm9pZCAwLHZxLmdldCgyKSk7b3EoZCx2b2lkIDAsZik7cmV0dXJuIEFxKGQsZSwyLGMpIT09MX0sU1A9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5HYSksYzt2YXIgZD1RUChhLGIpLGU7Yjp7dmFyIGY9enEsZz1acFsyXTtpZihnKXt2YXIgaCxsPXJxKGIuZG9tYWluKSxuPXNxKGIucGF0aCksCnA9T2JqZWN0LmtleXMoZy5qaSkscT12cS5nZXQoMikscjtpZihoPShyPWdxKGQsbCxuLHAscSkpPT1udWxsP3ZvaWQgMDpyLkJyKXt2YXIgdD0kcChoLDIsZik7ZT10P3hxKHQpOnZvaWQgMDticmVhayBifX1lPXZvaWQgMH1pZihlKXt2YXIgdT13cShkLDIsenEpO2lmKHUmJnUubGVuZ3RoPjEpe0lQKEouVS5KbSk7dmFyIHY9S1AodSk7diYmdi50IT09ZS50JiYoSVAoSi5VLk1tKSxlPXYpfWM9YnEoZSwyKX1lbHNlIGM9dm9pZCAwO3JldHVybiBjfSxUUD1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLkViKSxjPXt9O2Mucz1SKGEsRi5ELnhjKTtjLm89UihhLEYuRC5BaCk7dmFyIGQ7ZD1SKGEsRi5ELnpoKTt2YXIgZT0oYy5nPWQsYy50PU1hdGguZmxvb3IoYi8xRTMpLGMuZD1RKGEsSC5KLm9nKSxjLmo9UShhLEguSi5wZyl8fDAsYy5sPSEhUShhLEguSi5ybSksYy5oPVIoYSxGLkQub2gpLGMpO3JldHVybiBPUChlKX0sT1A9ZnVuY3Rpb24oYSl7aWYoYS5zJiZhLm8pe3ZhciBiPQp7fSxjPShiLnM9YS5zLGIubz1TdHJpbmcoYS5vKSxiLmc9SWIoYS5nKT8iMSI6IjAiLGIudD1TdHJpbmcoYS50KSxiLmo9U3RyaW5nKGEuaiksYi5sPWEubD8iMSI6IjAiLGIuaD1hLmh8fCIwIixiLmQ9YS5kLGIpO3JldHVybiBicShjLDIpfX0sUVA9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYi5wcmVmaXgrIl9nYV8iK2EudGFyZ2V0Lmlkc1tkQ1s2XV19Owp2YXIgVVA9ZnVuY3Rpb24oKXtyZXR1cm4gYWwoMixmdW5jdGlvbigpe3JldHVybiExfSl9LFZQPWZ1bmN0aW9uKGEpe3ZhciBiPU8oYS5NLEYuRC5EYiksYz1hLk0uaWJbRi5ELkRiXTtpZihjPT09YilyZXR1cm4gYzt2YXIgZD1FZChiLG51bGwpO2MmJmNbRi5ELkFhXSYmKGRbRi5ELkFhXT0oZFtGLkQuQWFdfHxbXSkuY29uY2F0KGNbRi5ELkFhXSkpO3JldHVybiBkfSxXUD1mdW5jdGlvbihhLGIpe3ZhciBjPVVxKCEwKTtyZXR1cm4gYy5fdXAhPT0iMSI/e306e2NsaWVudElkOmNbYV0semI6Y1tiXX19LFhQPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1VcSghMCksZT1kW2JdO2UmJihDUChhLGUsMiksRFAoZSxhKSk7dmFyIGY9ZFtjXTtmJiZSUChmLGEpO3JldHVybntjbGllbnRJZDplLHpiOmZ9fSxZUD1mdW5jdGlvbigpe3ZhciBhPU5qKEEubG9jYXRpb24sImhvc3QiKSxiPU5qKFJqKEIucmVmZXJyZXIpLCJob3N0Iik7cmV0dXJuIGEmJmI/YT09PWJ8fGEuaW5kZXhPZigiLiIrYik+PQowfHxiLmluZGV4T2YoIi4iK2EpPj0wPyEwOiExOiExfSxaUD1mdW5jdGlvbihhKXtpZighTyhhLk0sRi5ELnpjKSlyZXR1cm57fTt2YXIgYj1RKGEsSC5KLkdhKSxjPWIucHJlZml4KyJfZ2EiLGQ9UVAoYSxiKTticihmdW5jdGlvbigpe3ZhciBlO2lmKFhvKCJhbmFseXRpY3Nfc3RvcmFnZSIpKWU9e307ZWxzZXt2YXIgZj17X3VwOiIxIn0sZztnPVIoYSxGLkQuS2IpO2U9KGZbY109ZyxmW2RdPVRQKGEpLGYpfXJldHVybiBlfSwxKTtyZXR1cm4hWG8oImFuYWx5dGljc19zdG9yYWdlIikmJllQKCk/V1AoYyxkKTp7fX0sJFA9ZnVuY3Rpb24oYSl7dmFyIGI9VlAoYSl8fHt9LGM9UShhLEguSi5HYSksZD1jLnByZWZpeCsiX2dhIixlPVFQKGEsYyksZj17fTtkcihiW0YuRC5YZl0sISFiW0YuRC5BYV0pJiYoZj1YUChhLGQsZSksZi5jbGllbnRJZCYmZi56YiYmWmsoMiwhMCkpO2JbRi5ELkFhXSYmYXIoZnVuY3Rpb24oKXt2YXIgZz17fSxoPUZQKGEpO2gmJihnW2RdPWgpO3ZhciBsPVNQKGEpOwpsJiYoZ1tlXT1sKTt2YXIgbj1jcSgiRlBMQyIsdm9pZCAwLHZvaWQgMCxGLkQucmEpO24ubGVuZ3RoJiYoZy5fZnBsYz1uWzBdKTtyZXR1cm4gZ30sYltGLkQuQWFdLGJbRi5ELmFkXSwhIWJbRi5ELndjXSk7cmV0dXJuIGZ9O3ZhciBhUT1mdW5jdGlvbihhKXtpZighUShhLEguSi5iZSkmJmVrKGEuTSkpe3ZhciBiPVZQKGEpfHx7fSxjPShkcihiW0YuRC5YZl0sISFiW0YuRC5BYV0pP1VxKCEwKS5fZnBsYzp2b2lkIDApfHwoY3EoIkZQTEMiLHZvaWQgMCx2b2lkIDAsRi5ELnJhKS5sZW5ndGg+MD92b2lkIDA6IjAiKTtVKGEsIl9mcGxjIixjKX19O2Z1bmN0aW9uIGJRKGEpeyhiayhaSyhhKSl8fFdqKCkpJiZVKGEsRi5ELm9tLHptKCl8fHltKCkpOyFiayhaSyhhKSkmJldqKCkmJlUoYSxGLkQuWWksIjo6Iil9ZnVuY3Rpb24gY1EoYSl7V2ooKSYmKGJrKFpLKGEpKXx8RG0oKXx8VShhLEYuRC5TbCwhMCkpfTt2YXIgZVE9ZnVuY3Rpb24oYSxiKXtraigiZ3JsIixmdW5jdGlvbigpe3JldHVybiBkUSgpfSkoYil8fChQKDM1KSxhLmlzQWJvcnRlZD0hMCl9LGRRPWZ1bmN0aW9uKCl7dmFyIGE9TmIoKSxiPWErODY0RTUsYz0yMCxkPTVFMztyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIGY9TmIoKTtmPj1iJiYoYj1mKzg2NEU1LGQ9NUUzKTtjPU1hdGgubWluKGMrKGYtYSkvMUUzKjUsMjApO2E9Zjt2YXIgZz0hMTtkPDF8fGM8MXx8KGc9ITAsZC0tLGMtLSk7ZSYmKGUuSHI9ZCxlLnVyPWMpO3JldHVybiBnfX07CnZhciBmUT1mdW5jdGlvbihhKXt2YXIgYj1SKGEsRi5ELlVhKTtyZXR1cm4gTGooUmooYiksImhvc3QiLCEwKX0sZ1E9ZnVuY3Rpb24oYSl7aWYoTyhhLk0sRi5ELldmKSE9PXZvaWQgMClhLmNvcHlUb0hpdERhdGEoRi5ELldmKTtlbHNle3ZhciBiPU8oYS5NLEYuRC5hbSksYyxkO2E6e2lmKFVQKCkpe3ZhciBlPVZQKGEpfHx7fTtpZihlJiZlW0YuRC5BYV0pZm9yKHZhciBmPWZRKGEpLGc9ZVtGLkQuQWFdLGg9MDtoPGcubGVuZ3RoO2grKylpZihnW2hdaW5zdGFuY2VvZiBSZWdFeHApe2lmKGdbaF0udGVzdChmKSl7ZD0hMDticmVhayBhfX1lbHNlIGlmKGYuaW5kZXhPZihnW2hdKT49MCl7ZD0hMDticmVhayBhfX1kPSExfWlmKCEoYz1kKSl7dmFyIGw7aWYobD1iKWE6e2Zvcih2YXIgbj1iLmluY2x1ZGVfY29uZGl0aW9uc3x8W10scD1mUShhKSxxPTA7cTxuLmxlbmd0aDtxKyspaWYobltxXS50ZXN0KHApKXtsPSEwO2JyZWFrIGF9bD0hMX1jPWx9YyYmKFUoYSxGLkQuV2YsIjEiKSwKSVAoSi5VLm5uKSl9fTtmdW5jdGlvbiBoUShhLGIsYyxkKXt2YXIgZTtpZigobmQoKXx8a2QoKSkmJlhqKCkmJlhqKCkhPT0iLyIpe3ZhciBmPVJqKGEpO2U9SWYoNTApJiZkJiZUYihmLnBhdGhuYW1lLCIvZy9jb2xsZWN0Iik/MjooZHx8IVdqKCl8fERtKCk/MDpUYihmLnBhdGhuYW1lLCIvZ2EvZy9jIil8fFRiKGYucGF0aG5hbWUsIi9hZy9nL2MiKSk/MTowfWVsc2UgZT0wO3N3aXRjaChlKXtjYXNlIDI6dmFyIGc7aWYoTSg1NDYpKXt2YXIgaD1UYihhLCIvZy9jb2xsZWN0Iik/YS5zdWJzdHJpbmcoMCxhLmxlbmd0aC0xMCk6YSxsPWlRKCksbj1oK2wscD1qUSgiL2cvY29sbGVjdCIsYixjKTtnPXtJYzpuLGtmOiIiLGJvZHk6cH19ZWxzZSBnPXtJYzphLGtmOmIsYm9keTpjfTtyZXR1cm4gZztjYXNlIDE6dmFyIHE7aWYoTSg1NDcpKXt2YXIgcj1pUSgpLHQ9YS5pbmRleE9mKHIpLHU9YS5zdWJzdHJpbmcoMCx0KStyLHY9alEoYS5zdWJzdHJpbmcodCtyLmxlbmd0aC0xKSxiLGMpO3E9e0ljOnUsa2Y6IiIsCmJvZHk6dn19ZWxzZSBxPXtJYzphLGtmOmIsYm9keTpjfTtyZXR1cm4gcTtkZWZhdWx0OnJldHVybntJYzphLGtmOmIsYm9keTpjfX19ZnVuY3Rpb24gaVEoKXt2YXIgYT1YaigpO2lmKCFhKXJldHVybiIiO1NiKGEsIi8iKXx8KGE9Ii8iK2EpO1RiKGEsIi8iKXx8KGErPSIvIik7cmV0dXJuIGF9ZnVuY3Rpb24galEoYSxiLGMpe3ZhciBkPVthXTtiJiZkLnB1c2goIj8iLGIpO2MmJmQucHVzaCgiXHJcbiIsYyk7cmV0dXJuIGQuam9pbigiIil9Owp2YXIga1E9ZnVuY3Rpb24oYSxiKXtUdCgpJiYoYS5nY3M9VXQoKSxRKGIsSC5KLkdoKSYmKGEuZ2N1PSIxIikpO2EuZ2NkPVl0KGIuTSk7YS5ucGE9UShiLEguSi53ZCk/IjAiOiIxIjt6bSgpPT09IlVTLUNPIiYmKGEuX25nPSIxIil9LGxRPWZ1bmN0aW9uKGEpe2lmKFEoYSxILkouYmUpKXJldHVybnt1cmw6ZmsoImh0dHBzOi8vd3d3Lm1lcmNoYW50LWNlbnRlci1hbmFseXRpY3MuZ29vZyIsdm9pZCAwLCIiKSsiL21jL2NvbGxlY3QiLGVuZHBvaW50OjIwfTt2YXIgYj1ZaihlayhhLk0pLCIvZy9jb2xsZWN0Iik7aWYoYilyZXR1cm57dXJsOmIsZW5kcG9pbnQ6MTZ9O3ZhciBjO2M9UShhLEguSi5ybikmJiFRKGEsSC5KLkZjKT8xNzoxNjtyZXR1cm57dXJsOk1tW2NdKHZvaWQgMCksZW5kcG9pbnQ6Y319LG1RPXt9O21RW0YuRC5LYl09ImNpZCI7bVFbRi5ELnhpXT0iZ2N1dCI7bVFbRi5ELkZlXT0iYXJlIjttUVtGLkQuamhdPSJwc2NkbCI7bVFbRi5ELk5kXT0iZXhjaWQiO21RW0YuRC5HaV09CiJfZmlkIjttUVtGLkQuT2xdPSJfZ2VvIjttUVtGLkQuWGNdPSJnZGlkIjttUVtGLkQuTGVdPSJfbmciO21RW0YuRC5NZV09ImZybSI7bVFbRi5ELldmXT0iaXIiO21RW0YuRC5TbF09ImZwIjttUVtGLkQudGJdPSJ1bCI7bVFbRi5ELk1pXT0ibmkiO21RW0YuRC5tcV09InBhZSI7bVFbRi5ELnhoXT0iX3JkaSI7bVFbRi5ELmJkXT0ic3IiO21RW0YuRC5RaV09InRlc3Rvbmx5IjttUVtGLkQuUWVdPSJ0aWQiO21RW0YuRC5SaV09InR0IjttUVtGLkQuQmNdPSJlY19tb2RlIjttUVtGLkQuWm1dPSJndG1fdXAiO21RW0YuRC5jZ109InVhYSI7bVFbRi5ELmRnXT0idWFiIjttUVtGLkQuZWddPSJ1YWZ2bCI7bVFbRi5ELmZnXT0idWFtYiI7bVFbRi5ELmdnXT0idWFtIjsKbVFbRi5ELmhnXT0idWFwIjttUVtGLkQuaWddPSJ1YXB2IjttUVtGLkQuamddPSJ1YXciO21RW0YuRC5vbV09InVyIjttUVtGLkQuWWldPSJfdWlwIjttUVtGLkQubHFdPSJfcHJzIjttUVtGLkQuUGRdPSJscHMiO21RW0YuRC5CZV09ImdjbGdzIjttUVtGLkQuRGVdPSJnY2xzdCI7bVFbRi5ELkNlXT0iZ2NsbHAiO3ZhciBuUT17fTtuUVtGLkQuR2ZdPSJjYyI7blFbRi5ELkhmXT0iY2kiO25RW0YuRC5JZl09ImNtIjtuUVtGLkQuSmZdPSJjbiI7blFbRi5ELkxmXT0iY3MiO25RW0YuRC5NZl09ImNrIjtuUVtGLkQuZWJdPSJjdSI7blFbRi5ELlZmXT0iX3R1IjtuUVtGLkQuemFdPSJkbCI7blFbRi5ELllmXT0iZHAiO25RW0YuRC5VYV09ImRyIjtuUVtGLkQuTWJdPSJkdCI7blFbRi5ELnpoXT0ic2VnIjtuUVtGLkQueGNdPQoic2lkIjtuUVtGLkQuQWhdPSJzY3QiO25RW0YuRC5mYl09InVpZCI7dmFyIG9RPXt9O29RW0YuRC5uaF09Il9ldCI7b1FbRi5ELlZjXT0iZWRpZCI7b1FbRi5ELk1kXT0iZXZuaWQiO00oOTQpJiYob1EuX2V1PSJfZXUiKTt2YXIgcFE9e307cFFbRi5ELkdmXT0iY2MiO3BRW0YuRC5IZl09ImNpIjtwUVtGLkQuSWZdPSJjbSI7cFFbRi5ELkpmXT0iY24iO3BRW0YuRC5MZl09ImNzIjtwUVtGLkQuTWZdPSJjayI7dmFyIHFRPXt9LHJRPShxUVtGLkQuQWNdPTEscVEpLHNRPWZ1bmN0aW9uKGEsYixjKXtmdW5jdGlvbiBkKGRhLG1hKXtpZihtYSE9PXZvaWQgMCYmIUJvLmhhc093blByb3BlcnR5KGRhKSl7bWE9PT1udWxsJiYobWE9IiIpO3ZhciBQYTt2YXIgRmE9bWE7ZGEhPT1GLkQub2g/UGE9ITE6UShhLEguSi5sZyl8fGJrKFpLKGEpKT8oZS5lY2lkPUZhLFBhPSEwKTpQYT12b2lkIDA7aWYoIVBhKXt2YXIgcWE9bWE7bWE9PT0hMCYmKHFhPSIxIik7bWE9PT0hMSYmKHFhPSIwIik7cWE9ClN0cmluZyhxYSk7dmFyIGliO2lmKGRhIT09Ri5ELk5kJiZkYSE9PUYuRC5NZHx8TSg1MDQpKWlmKG1RW2RhXSlpYj1tUVtkYV0sdltpYl09cWE7ZWxzZSBpZihuUVtkYV0paWI9blFbZGFdLGdbaWJdPXFhO2Vsc2UgaWYob1FbZGFdKWliPW9RW2RhXSxmW2liXT1xYTtlbHNlIGlmKFNiKGRhLCJfJiIpKWliPWRhLnN1YnN0cmluZygyKSx2W2liXT1xYTtlbHNlIGlmKGRhLmNoYXJBdCgwKT09PSJfIil2W2RhXT1xYTtlbHNle3ZhciBYYjtwUVtkYV0/WGI9ITA6ZGEhPT1GLkQuS2Y/WGI9ITE6KHR5cGVvZiBtYSE9PSJvYmplY3QiJiZ1KGRhLG1hKSxYYj0hMCk7WGJ8fHUoZGEsbWEpfWVsc2UgdShkYSxtYSl9fX12YXIgZT17fSxmPXt9LGc9e307ZS52PSIyIjtlLnRpZD1hLnRhcmdldC5kZXN0aW5hdGlvbklkO2UuZ3RtPWR1KHttYzpRKGEsSC5KLk5iKSxlZjpRKGEsSC5KLkNjKX0pO2UuX3A9JGsoMjUpO2MmJihjLmhhc1VwZHx8Yy5oYWRFcnJvcikmJihlLmVtPWMucGFyYW0pO1EoYSwKSC5KLnJnKSYmKGUuX2dhej0xKTtrUShlLGEpO2F1KCkmJihlLmRtYV9jcHM9WnQoKSk7ZS5kbWE9JHQoKTt2dChFdCgpKSYmKGUudGNmZD1idSgpKTt2YXIgaD1DcChhKTtoJiYoZy50YWdfZXhwPWgpO3ZhciBsPVIoYSxGLkQuWGMpO2wmJihlLmdkaWQ9bCk7Zi5lbj1TdHJpbmcoYS5ldmVudE5hbWUpO2lmKFEoYSxILkoubmcpKXt2YXIgbj1RKGEsSC5KLlltKTtmLl9mdj1uPzI6MX1RKGEsSC5KLkhoKSYmKGYuX25zaT0xKTtpZihRKGEsSC5KLlRlKSl7dmFyIHA9UShhLEguSi5ibik7Zi5fc3M9cD8yOjF9UShhLEguSi5tZykmJihmLl9jPTEpO1EoYSxILkouYWUpJiYoZi5fZWU9MSk7aWYoUShhLEguSi5XbSkpe3ZhciBxPVIoYSxGLkQuSGEpfHxPKGEuTSxGLkQuSGEpO2lmKEFycmF5LmlzQXJyYXkocSkpZm9yKHZhciByPTA7cjxxLmxlbmd0aCYmcjwyMDA7cisrKWZbInByIisocisxKV09dGcocVtyXSl9dmFyIHQ9UihhLEYuRC5WYyk7dCYmKGYuZWRpZD10KTtodChhLGYpO2Zvcih2YXIgdT0KZnVuY3Rpb24oZGEsbWEpe2lmKHR5cGVvZiBtYSE9PSJvYmplY3QifHwhclFbZGFdKXt2YXIgUGE9ImVwLiIrZGEsRmE9ImVwbi4iK2RhO2RhPUFiKG1hKT9GYTpQYTt2YXIgcWE9QWIobWEpP1BhOkZhO2YuaGFzT3duUHJvcGVydHkocWEpJiZkZWxldGUgZltxYV07ZltkYV09U3RyaW5nKG1hKX19LHY9e30seD1tKGV1KGEpKSx5PXgubmV4dCgpOyF5LmRvbmU7eT14Lm5leHQoKSl7dmFyIHo9eS52YWx1ZTtkKHosUihhLHopKX1mb3IodmFyIEM9bShPYmplY3Qua2V5cyh2KS5zb3J0KCkpLEQ9Qy5uZXh0KCk7IUQuZG9uZTtEPUMubmV4dCgpKXt2YXIgST1ELnZhbHVlO2VbSV09dltJXX0oZnVuY3Rpb24oZGEpe2JrKFpLKGEpKSYmdHlwZW9mIGRhPT09Im9iamVjdCImJkdiKGRhfHx7fSxmdW5jdGlvbihtYSxQYSl7dHlwZW9mIFBhIT09Im9iamVjdCImJihlWyJzc3QuIittYV09U3RyaW5nKFBhKSl9KX0pKFIoYSxGLkQub2opKTtidihlLFIoYSxGLkQuZWQpKTt2YXIgRz1SKGEsRi5ELldkKXx8Cnt9O0diKEcsZnVuY3Rpb24oZGEsbWEpe21hIT09dm9pZCAwJiYoKG1hPT09bnVsbCYmKG1hPSIiKSxkYSE9PUYuRC5mYnx8Zy51aWQpP2JbZGFdIT09bWEmJihmWyhBYihtYSk/InVwbi4iOiJ1cC4iKStTdHJpbmcoZGEpXT1TdHJpbmcobWEpLGJbZGFdPW1hKTpnLnVpZD1TdHJpbmcobWEpKX0pO2lmKFdqKCkmJiFEbSgpJiYhYmsoWksoYSkpKXt2YXIgTj1RKGEsSC5KLm9nKTtOP2UuX2dzaWQ9TjplLm5qaWQ9IjEifXZhciBTPVEoYSxILkouVmkpOyhTPT1udWxsP3ZvaWQgMDpTLnZhbHVlKT4wJiYoZS5nYWY9Uy5nZXQoKSk7dmFyIFc9UihhLEYuRC5XYyk7aWYoVylmb3IodmFyIGVhPW0oT2JqZWN0LmtleXMoVykpLGphPWVhLm5leHQoKTshamEuZG9uZTtqYT1lYS5uZXh0KCkpe3ZhciBmYT1qYS52YWx1ZTtmWyJleHQuIitmYV09V1tmYV18fCIifXZhciBzYT1sUShhKTt2Zy5jYWxsKHRoaXMse0JhOmUsdmU6ZyxMajpmfSxzYS51cmwsc2EuZW5kcG9pbnQsWksoYSksdm9pZCAwLAphLnRhcmdldC5kZXN0aW5hdGlvbklkLGEuTS5ldmVudElkLGEuTS5wcmlvcml0eUlkKX07d2Eoc1EsdmcpOwp2YXIgdFE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5yZXBsYWNlKC9cJFx7KFteXH1dKylcfS9nLGZ1bmN0aW9uKGMsZCl7cmV0dXJuIGJbZF18fGN9KX0sdVE9ZnVuY3Rpb24oYSl7dmFyIGI9e30sYz0iIixkPWEucGF0aG5hbWUuaW5kZXhPZigiL2cvY29sbGVjdCIpO2Q+PTAmJihjPWEucGF0aG5hbWUuc3Vic3RyaW5nKDAsZCkpO2IudHJhbnNwb3J0X3VybD1hLnByb3RvY29sKyIvLyIrYS5ob3N0bmFtZStjO3ZhciBlO3RyeXtlPWVuY29kZVVSSUNvbXBvbmVudChjfHwiLyIpfWNhdGNoKGYpe2U9ZW5jb2RlVVJJQ29tcG9uZW50KCIvIil9Yi5lbmNvZGVkX3BhdGg9ZTtyZXR1cm4gYn0sdlE9ZnVuY3Rpb24oYSxiKXtpZighTSg1NDYpKXJldHVybnt1cmw6YSxib2R5OmJ9O3ZhciBjPW0oYS5zcGxpdCgiPyIpKSxkPWMubmV4dCgpLnZhbHVlLGU9Yy5uZXh0KCkudmFsdWUsZj1oUShkLGV8fCIiLGJ8fCIiLCEwKSxnPWYuSWMsaD1mLmtmO2E9aCE9PSIiP2crIj8iK2g6ZztiPWYuYm9keTsKcmV0dXJue3VybDphLGJvZHk6Yn19LHhRPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1SaihiKSxlPXVRKGQpLGY9dlEoWGcoZCksYyksZz1mdW5jdGlvbihoKXtxeChmLnVybCxmLmJvZHksbmV3IHdRKGUsaCkpJiZhJiZrbi5yZWdpc3RlcihhLDEsZi51cmwpfTshTSgxMzIpfHxOYygiOyB3diIpfHxOYygiRkJBTiIpfHxOYygiRkJBViIpfHxQYygpP2coKTptTChmLnVybCxmLmJvZHksZSxnKX0sd1E9ZnVuY3Rpb24oYSxiKXtDeC5jYWxsKHRoaXMpO3RoaXMudGVtcGxhdGVzPWE7dGhpcy5OPWJ9O3dhKHdRLEN4KTt3US5wcm90b3R5cGUuWj1mdW5jdGlvbihhKXt2YXIgYj10UShhLHRoaXMudGVtcGxhdGVzKTtyZXR1cm4gdGhpcy5OP2IucmVwbGFjZSgiX2lzX3N3PTAiLHRoaXMuTik6Yn07d1EucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLlooYSk7Q3gucHJvdG90eXBlLksuY2FsbCh0aGlzLGMsYil9O3dRLnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEsYil7dmFyIGM9CnRoaXMuWihhKTtDeC5wcm90b3R5cGUuSC5jYWxsKHRoaXMsYyxiKX07CnZhciB5UT1mdW5jdGlvbihhKXtyZXR1cm4hU2IoYSxGbSgpKSYmIVNiKGEsR20oKSl9LEFRPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtpZighbmQoKSlyZXR1cm4gelEoYSxiLGMsZCksITA7WW4oYyxiIT09IiI/YSsiPyIrYjphLGQsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxlfHx7fSx7UWc6ITB9KSx2b2lkIDAsZil8fHpRKGEsYixjLGQpO3JldHVybiEwfSx6UT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1iIT09IiI/YSsiPyIrYjphO2Q/V24oYyxlLGQpOlZuKGMsZSl9LENRPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9YixnPXBkKCk7ZyE9PXZvaWQgMCYmKGYrPSImdGZkPSIrTWF0aC5yb3VuZChnKSk7Yj1mO3ZhciBoPWErIj8iK2I7aWYoIWJrKGQpfHxjayhkKXx8eFAoKSl7dmFyIGw9aFEoYSxiLGMsYmsoZCkpO2E9bC5JYztiPWwua2Y7Yz1sLmJvZHk7QVEoYSxiLGUsYyx2b2lkIDAsQlEoYSxiLGUsYykpfHx6UShhLGIsZSxjKX1lbHNlIHhRKGUsaCxjKTsKYmsoZCkmJk0oNTY0KSYmbmQoKSYmVGIoYSwiL2cvY29sbGVjdCIpJiZBLmZldGNoKGEuc3Vic3RyaW5nKDAsYS5sZW5ndGgtMTApLHttZXRob2Q6IlBPU1QiLGJvZHk6IkNqQU9BVHdjQ0JnTyIsY3JlZGVudGlhbHM6Im9taXQifSl9LEJRPWZ1bmN0aW9uKGEsYixjLGQpe2lmKCF5UShhKSl7dmFyIGU9TW1bNjddKHZvaWQgMCk7aWYoZSlyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZjt2YXIgZz1iLnJlcGxhY2UoL15cPy8sIiIpLGg9TnVtYmVyKElqKGcsImdhZiIsITEpKSxsPTA7TnVtYmVyLmlzSW50ZWdlcihoKSYmKGw9aCk7dmFyIG49bmV3IGVyKGwpO2ZyKG4sMSk7aWYobi52YWx1ZSE9PTApe3ZhciBwLHE9bi5nZXQoKSxyPVJlZ0V4cCgiKF58Wz8mXSlnYWY9W14mXSooJnwkKSIpO3A9ci50ZXN0KGcpP2cucmVwbGFjZShyLCIkMWdhZj0iK3ErIiQyIik6Zy5pbmRleE9mKCI/Iik+PTA/ZysiJmdhZj0iK3E6Z1swXT09PSIvInx8Zy5pbmRleE9mKCI6Ly8iKT49MD9nKyI/Z2FmPSIrCnE6Zy5sZW5ndGg+MD9nKyImZ2FmPSIrcToiZ2FmPSIrcTtmPWIuaW5kZXhPZigiPyIpPT09MD8iPyIrcDpwfWVsc2UgZj12b2lkIDA7QVEoZSxmfHxiLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYyx7ZW5kcG9pbnQ6Njd9KSxkLGMuZW5kcG9pbnQ9PT0xNz92b2lkIDA6e2NyZWRlbnRpYWxzOiJvbWl0In0pfX19LERRPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1bXSxlPWZ1bmN0aW9uKGgpe2QucHVzaChoKyI9IitlbmNvZGVVUklDb21wb25lbnQoIiIrYS5CYVtoXSkpfTtkLnB1c2goInY9MiIpO2UoIl9nc2lkIik7ZSgiZ3RtIik7YS5CYS5fZ2VvJiZlKCJfZ2VvIik7dmFyIGY9Imh0dHBzOi8ve2dhNENvbGxlY3Rpb25TdWJkb21haW4ufWdvb2dsZS1hbmFseXRpY3MuY29tL2cvcy9jb2xsZWN0Ii5yZXBsYWNlKCJ7Z2E0Q29sbGVjdGlvblN1YmRvbWFpbi59IiwoYnx8Ind3dyIpKyIuIiksZz1kLmpvaW4oIiYiKTt6UShmLGcse2Rlc3RpbmF0aW9uSWQ6YS5kZXN0aW5hdGlvbklkfHwKIiIsZW5kcG9pbnQ6NjIsZXZlbnRJZDphLmV2ZW50SWQscHJpb3JpdHlJZDphLnByaW9yaXR5SWR9KTtNbCh7dGFyZ2V0SWQ6U3RyaW5nKGEuQmEudGlkKSxyZXF1ZXN0Ont1cmw6ZisiPyIrZyxwYXJhbWV0ZXJFbmNvZGluZzoyLGVuZHBvaW50OjYyfSxxYjpjfSl9LEVRPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0iaHR0cHM6Ly97Z2E0Q29sbGVjdGlvblN1YmRvbWFpbi59YW5hbHl0aWNzLmdvb2dsZS5jb20vZy9zL2NvbGxlY3QiLnJlcGxhY2UoIntnYTRDb2xsZWN0aW9uU3ViZG9tYWluLn0iLGI/YisiLiI6IiIpLGU9W10sZj1mdW5jdGlvbihoKXtlLnB1c2goaCsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KCIiK2EuQmFbaF0pKX07ZigiX2dzaWQiKTtmKCJndG0iKTthLkJhLl9nZW8mJmYoIl9nZW8iKTt2YXIgZz1lLmpvaW4oIiYiKTt6UShkLGcse2Rlc3RpbmF0aW9uSWQ6YS5kZXN0aW5hdGlvbklkfHwiIixlbmRwb2ludDoxOCxldmVudElkOmEuZXZlbnRJZCxwcmlvcml0eUlkOmEucHJpb3JpdHlJZH0pOwpNbCh7dGFyZ2V0SWQ6U3RyaW5nKGEuQmEudGlkKSxyZXF1ZXN0Ont1cmw6ZCsiPyIrZyxwYXJhbWV0ZXJFbmNvZGluZzoyLGVuZHBvaW50OjE4fSxxYjpjfSl9LEZRPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtjJiZiLnB1c2goInRhZ19leHA9IitjKTtiLnB1c2goIno9IitEYigpKTtpZighZSl7dmFyIGc9ZCYmU2IoZCwiZ29vZ2xlLiIpJiZkIT09Imdvb2dsZS5jb20iPyJodHRwczovL3d3dy4lL2Fkcy9nYS1hdWRpZW5jZXM/dj0xJnQ9c3Imc2xmX3JkPTEmX3I9NCYiLnJlcGxhY2UoIiUiLGQpOnZvaWQgMDtpZihnKXt2YXIgaD1nK2Iuam9pbigiJiIpO1huKHtkZXN0aW5hdGlvbklkOmEuZGVzdGluYXRpb25JZHx8IiIsZW5kcG9pbnQ6NDcsZXZlbnRJZDphLmV2ZW50SWQscHJpb3JpdHlJZDphLnByaW9yaXR5SWR9LGgpO01sKHt0YXJnZXRJZDpTdHJpbmcoYS5CYS50aWQpLHJlcXVlc3Q6e3VybDpoLHBhcmFtZXRlckVuY29kaW5nOjIsZW5kcG9pbnQ6NDd9LHFiOmZ9KX19fSxHUT0KZnVuY3Rpb24oYSxiLGMsZCl7YyYmYi5wdXNoKCJ0YWdfZXhwPSIrYyk7elEoImh0dHBzOi8vc3RhdHMuZy5kb3VibGVjbGljay5uZXQvZy9jb2xsZWN0Iiwidj0yJiIrYi5qb2luKCImIikse2Rlc3RpbmF0aW9uSWQ6YS5kZXN0aW5hdGlvbklkfHwiIixlbmRwb2ludDoxOSxldmVudElkOmEuZXZlbnRJZCxwcmlvcml0eUlkOmEucHJpb3JpdHlJZH0pO01sKHt0YXJnZXRJZDpTdHJpbmcoYS5CYS50aWQpLHJlcXVlc3Q6e3VybDoiaHR0cHM6Ly9zdGF0cy5nLmRvdWJsZWNsaWNrLm5ldC9nL2NvbGxlY3Q/dj0yJiIrYi5qb2luKCImIikscGFyYW1ldGVyRW5jb2Rpbmc6MixlbmRwb2ludDoxOX0scWI6ZH0pfSxIUT1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGModil7cS5wdXNoKHYrIj0iK2VuY29kZVVSSUNvbXBvbmVudCgiIithLkJhW3ZdKSl9dmFyIGQ9Yi54dCxlPWIuQnQsZj1iLkF0LGc9Yi56dCxoPWIuWnIsbD1iLkNzLG49Yi5QcixwPWIuR3Q7aWYoZHx8ZXx8Znx8Zyl7dmFyIHE9CltdO2EuQmEuX25nJiZjKCJfbmciKTthLkJhLm5ncyYmYygibmdzIik7YS5CYS5pYnQmJmMoImlidCIpO2MoInRpZCIpO2MoImNpZCIpO2MoImd0bSIpO2Zvcih2YXIgcj1tKE9GKSx0PXIubmV4dCgpOyF0LmRvbmU7dD1yLm5leHQoKSl7dmFyIHU9dC52YWx1ZTthLkJhW3VdIT1udWxsJiZjKHUpfXEucHVzaCgiYWlwPTEiKTthLnZlLnVpZCYmcS5wdXNoKCJ1aWQ9IitlbmNvZGVVUklDb21wb25lbnQoIiIrYS52ZS51aWQpKTtjKCJkbWEiKTthLkJhLmRtYV9jcHMhPW51bGwmJmMoImRtYV9jcHMiKTthLkJhLmdjcyE9bnVsbCYmYygiZ2NzIik7YygiZ2NkIik7YS5CYS5ucGEhPW51bGwmJmMoIm5wYSIpO2EuQmEuZnJtIT1udWxsJiZjKCJmcm0iKTtkJiZHUShhLHEuc2xpY2UoKSxwLGIucWIpO2UmJkZRKGEscS5zbGljZSgpLHAsaCxsLGIucWIpO2YmJkVRKGEsbixiLnFiKTtnJiZEUShhLG4sYi5xYil9fSxJUT1mdW5jdGlvbigpe3RoaXMuUj0xO3RoaXMuWj17fTt0aGlzLks9LTE7dGhpcy5IPQpuZXcgd2d9O0lRLnByb3RvdHlwZS5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcyxkPW5ldyBzUShhLHRoaXMuWixiKSxlPXtldmVudElkOmEuTS5ldmVudElkLHByaW9yaXR5SWQ6YS5NLnByaW9yaXR5SWR9LGY9eVAoYSksZyxoO2YmJnRoaXMuSC5SKGQpfHx0aGlzLmZsdXNoKCk7dmFyIGw9ZiYmdGhpcy5ILmFkZChkKTtpZihsKXtpZih0aGlzLks8MCl7dmFyIG49QSxwPW4uc2V0VGltZW91dCxxO2JrKFpLKGEpKT9KUT8oSlE9ITEscT1LUSk6cT1MUTpxPTVFMzt0aGlzLks9cC5jYWxsKG4sZnVuY3Rpb24oKXtjLmZsdXNoKCl9LHEpfX1lbHNle3ZhciByPXpnKGQsdGhpcy5SKyspLHQ9ci5wYXJhbXMsdT1yLmJvZHk7Zz10O2g9dTtGeSgzLGEuZXZlbnROYW1lKTtDUShkLmJhc2VVcmwsdCx1LGQuTix7ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmQuZW5kcG9pbnQsZXZlbnRJZDpkLmV2ZW50SWQscHJpb3JpdHlJZDpkLnByaW9yaXR5SWR9KTsKdmFyIHY9UShhLEguSi5oZCkseD1RKGEsSC5KLnJnKSx5PVEoYSxILkouTmgpLHo9UShhLEguSi5NaCksQz1PKGEuTSxGLkQudWkpIT09ITEsRD1TdChhLk0pLEk9e3h0OnYsQnQ6eCxBdDp5LHp0OnosWnI6RW0oKSxtdjpDLGx2OkQsQ3M6QW0oKSxxYjplLE06YS5NLFByOkRtKCksR3Q6Q3AoYSl9O0hRKGQsSSl9Zm4uSCYmQXooYS5NLmV2ZW50SWQpO05sKGZ1bmN0aW9uKCl7aWYobCl7dmFyIEc9emcoZCksTj1HLmJvZHk7Zz1HLnBhcmFtcztoPU59cmV0dXJue3RhcmdldElkOmEudGFyZ2V0LmRlc3RpbmF0aW9uSWQscmVxdWVzdDp7dXJsOmQuYmFzZVVybCsiPyIrZyxwYXJhbWV0ZXJFbmNvZGluZzoyLHBvc3RCb2R5OmgsZW5kcG9pbnQ6ZC5lbmRwb2ludH0scWI6ZSxpc0JhdGNoZWQ6ITF9fSl9O0lRLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSl7WUsoYSkmJiF4UCgpP3RoaXMuZmEoYSk6dGhpcy5OKGEpfTtJUS5wcm90b3R5cGUuZmx1c2g9ZnVuY3Rpb24oKXtpZih0aGlzLkguZXZlbnRzLmxlbmd0aCl7dmFyIGE9CkJnKHRoaXMuSCx0aGlzLlIrKyk7Q1EodGhpcy5ILmJhc2VVcmwsYS5wYXJhbXMsYS5ib2R5LHRoaXMuSC5LLHtkZXN0aW5hdGlvbklkOnRoaXMuSC5kZXN0aW5hdGlvbklkfHwiIixlbmRwb2ludDp0aGlzLkguZW5kcG9pbnQsZXZlbnRJZDp0aGlzLkguWixwcmlvcml0eUlkOnRoaXMuSC5mYX0pO3RoaXMuSD1uZXcgd2c7dGhpcy5LPj0wJiYoQS5jbGVhclRpbWVvdXQodGhpcy5LKSx0aGlzLks9LTEpfX07SVEucHJvdG90eXBlLmZhPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1ZSyhhKTtNKDU2OCkmJiFNKDU4NikmJlIoYSxGLkQuQmMpPT09ImEiJiYoYz1jdyhjKSk7aWYoRXcoYykpe3ZhciBkPXN3KGMpO2Q/ZC50aGVuKGZ1bmN0aW9uKGYpe2IuTihhLGYpfSxmdW5jdGlvbigpe2IuTihhKX0pOnRoaXMuTihhKX1lbHNle3ZhciBlPUR3KGMpO3RoaXMuTihhLGUpfX07dmFyIEtRPU5mKDI0LDUwMCksTFE9TmYoNTYsNUUzKSxKUT0hMDt2YXIgTVE9ZnVuY3Rpb24oYSl7dmFyIGI9U3QoYS5NKTtPKGEuTSxGLkQuV2IpPT09ITAmJihiPSExKTtWKGEsSC5KLndkLGIpfTsKdmFyIE5RPWZ1bmN0aW9uKGEsYixjKXtjPT09dm9pZCAwJiYoYz17fSk7aWYoYj09bnVsbClyZXR1cm4gYztpZih0eXBlb2YgYj09PSJvYmplY3QiKWZvcih2YXIgZD1tKE9iamVjdC5rZXlzKGIpKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTtOUShhKyIuIitmLGJbZl0sYyl9ZWxzZSBjW2FdPWI7cmV0dXJuIGN9LE9RPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj17fSxjPW0oYSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7YltlXT0hIVhvKGUpfXJldHVybiBifSxRUT1mdW5jdGlvbihhLGIpe3ZhciBjPVBRLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4hWG8oZSl9KTtpZihjLmxlbmd0aCl7dmFyIGQ9T1EoYyk7JG8oYyxmdW5jdGlvbigpe2Zvcih2YXIgZT1PUShjKSxmPVtdLGc9bShjKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZTshZFtsXSYmZVtsXSYmZi5wdXNoKGwpO2VbbF0mJgooZFtsXT0hMCl9aWYoZi5sZW5ndGgpe1YoYixILkouR2gsITApO3ZhciBuPWYubWFwKGZ1bmN0aW9uKHApe3JldHVybiBMb1twXX0pLmpvaW4oIi4iKTtuJiZXSyhiLCJnY3V0IixuKTtNUShiKTthKGIpfX0pfX0sUlE9ZnVuY3Rpb24oYSl7UihhLEYuRC5XYykmJiFiayhaSyhhKSkmJlUoYSxGLkQuV2MpfSxTUT1mdW5jdGlvbihhKXtiayhaSyhhKSkmJldLKGEsIm5hdnQiLHFkKCkpfSxUUT1mdW5jdGlvbihhKXtiayhaSyhhKSkmJldLKGEsImxwYyIsaXIoKSl9LFVRPWZ1bmN0aW9uKGEpe2lmKGJrKFpLKGEpKSl7dmFyIGI9TyhhLk0sRi5ELldiKSxjO2I9PT0hMCYmKGM9IjEiKTtiPT09ITEmJihjPSIwIik7YyYmV0soYSwicmRwIixjKX19LFZRPWZ1bmN0aW9uKGEsYil7aWYoYmsoWksoYikpKXt2YXIgYz1RKGIsSC5KLm1nKTsoYi5ldmVudE5hbWU9PT0icGFnZV92aWV3Inx8YykmJlFRKGEsYil9fSxXUT1mdW5jdGlvbihhKXtpZihiayhaSyhhKSkmJmEuZXZlbnROYW1lPT09Ri5ELnlmJiYKUShhLEguSi5HaCkpe3ZhciBiPVIoYSxGLkQueGkpO2ImJihXSyhhLCJnY3V0IixiKSxXSyhhLCJzeW4iLDEpKX19LFhRPWZ1bmN0aW9uKGEsYixjKXtpZihhPT09YilyZXR1cm4gV2ooKSYmU2IoYysiLyIsWGooKSsiLyIpPyI3IjoiMSI7aWYoVGIoYSwiLiIrYikpcmV0dXJuIjIiO2lmKFRiKGIsIi4iK2EpKXJldHVybiIzIjt2YXIgZD1hLnNwbGl0KCIuIiksZT1iLnNwbGl0KCIuIiksZj1mdW5jdGlvbihnKXtpZihkLmxlbmd0aDxnfHxlLmxlbmd0aDxnKXJldHVybiExO2Zvcih2YXIgaD0xO2g8PWc7aCsrKWlmKGRbZC5sZW5ndGgtaF0hPT1lW2UubGVuZ3RoLWhdKXJldHVybiExO3JldHVybiEwfTtyZXR1cm4gZigzKT8iNiI6ZigyKT8iNSI6IjQifSxZUT1mdW5jdGlvbihhKXtpZihiayhaSyhhKSkpe3ZhciBiPWVrKGEuTSk7aWYoYil7dmFyIGM9WWooYiwiLyIpLGQ9UmooYyksZT1OaihkLCJob3N0IiksZj1OaihBLmxvY2F0aW9uLCJob3N0Iik7aWYoZSYmZil7dmFyIGc9TmooZCwKInBhdGgiKTthLm1lcmdlSGl0RGF0YUZvcktleShGLkQuVGEse3NzdGQ6WFEoZSxmLGcpfSl9fX19LFpRPWZ1bmN0aW9uKGEpe2JrKFpLKGEpKSYmVihhLEguSi5KYSwhMSl9LCRRPWZ1bmN0aW9uKGEpe2JrKFpLKGEpKSYmKFEoYSxILkouSmEpJiZXSyhhLCJzcCIsMSksUShhLEguSi5JcSkmJldLKGEsInN5biIsMSksUShhLEguSi5QYykmJihXSyhhLCJlbV9ldmVudCIsMSksV0soYSwic3AiLDEpKSl9LGFSPWZ1bmN0aW9uKGEpe2lmKGJrKFpLKGEpKSl7dmFyIGI9JGsoMjUpO2ImJldLKGEsInRmdCIsTnVtYmVyKGIpKX19LGJSPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoZSl7dmFyIGY9TlEoRi5ELkFjLGUpO0diKGYsZnVuY3Rpb24oZyxoKXtVKGEsZyxoKX0pfWlmKGJrKFpLKGEpKSl7dmFyIGM9ZEkoYSwiY2NkX2FkZF8xcF9kYXRhIiwhMSk/MTowO1dLKGEsInVkZSIsYyk7dmFyIGQ9TyhhLk0sRi5ELkFjKTtkIT09dm9pZCAwPyhadihkKSxiKGQpLFUoYSxGLkQuQmMsImMiKSk6CmIoUShhLEguSi5ZYSkpO1YoYSxILkouWWEpfX0sY1I9ZnVuY3Rpb24oYSl7aWYoYmsoWksoYSkpKXt2YXIgYj1WTSgpO2ImJldLKGEsInVzX3ByaXZhY3kiLGIpO3ZhciBjPUx0KCk7YyYmV0soYSwiZ2RwciIsYyk7dmFyIGQ9S3QoKTtkJiZXSyhhLCJnZHByX2NvbnNlbnQiLGQpO3ZhciBlPWtGLmdwcFN0cmluZztlJiZXSyhhLCJncHAiLGUpO3ZhciBmPWtGLkg7ZiYmV0soYSwiZ3BwX3NpZCIsZil9fSxkUj1mdW5jdGlvbihhKXtiayhaSyhhKSkmJkVsKCkmJk8oYS5NLEYuRC5tYikmJldLKGEsImFkciIsMSl9LGVSPWZ1bmN0aW9uKGEpe2lmKGJrKFpLKGEpKSl7dmFyIGI9RG0oKTtiJiZXSyhhLCJnY3N1YiIsYil9fSxmUj1mdW5jdGlvbihhKXtpZihiayhaSyhhKSkpe08oYS5NLEYuRC5TYyx2b2lkIDAsNCk9PT0hMSYmV0soYSwibmdzIiwxKTtBbSgpJiZXSyhhLCJnYV9yZCIsMSk7VksoKXx8V0soYSwibmdzdCIsMSk7dmFyIGI9RW0oKTtiJiZXSyhhLCJldGxkIixiKX19LGdSPQpmdW5jdGlvbihhKXt9LGhSPWZ1bmN0aW9uKGEpe2JrKFpLKGEpKSYmRWwoKSYmV0soYSwicm5kIixRTSgpKX0sUFE9W0YuRC5rYSxGLkQubWEsRi5ELlhhXTsKdmFyIGlSPWZ1bmN0aW9uKGEsYil7dmFyIGM7YTp7aWYoIVEoYSxILkouRmMpKXt2YXIgZD1UUChhKTtpZihkKXtpZihSUChkLGEpKXtjPWQ7YnJlYWsgYX1QKDI1KTthLmlzQWJvcnRlZD0hMH19Yz12b2lkIDB9dmFyIGU9YztyZXR1cm57Y2xpZW50SWQ6RVAoYSxiKSx6YjplfX0salI9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1RbyhPKGEuTSxGLkQuS2IpKTtpZihPKGEuTSxGLkQuWmMpJiZPKGEuTSxGLkQuWWMpKWY/Q1AoYSxmLDEpOihQKDEyNyksYS5pc0Fib3J0ZWQ9ITApO2Vsc2V7dmFyIGc9Zj8xOjg7VihhLEguSi5IaCwhMSk7Znx8KGY9RlAoYSksZz0zKTtmfHwoZj1iLGc9NSk7aWYoIWYpe3ZhciBoPVhvKEYuRC5yYSksbD16UCgpO2Y9IWwuZnJvbV9jb29raWV8fGg/bC52aWQ6dm9pZCAwO2c9Nn1mP2Y9IiIrZjooZj1BdigpLGc9NyxWKGEsSC5KLm5nLCEwKSxWKGEsSC5KLkhoLCEwKSk7Q1AoYSxmLGcpfVIoYSxGLkQuS2IpO2lmKCFRKGEsSC5KLkZjKSl7dmFyIG49ClEoYSxILkouRWIpLHA9TWF0aC5mbG9vcihuLzFFMykscT12b2lkIDA7UShhLEguSi5IaCl8fChxPVNQKGEpfHxjKTt2YXIgcj1JYihPKGEuTSxGLkQueWgsMzApKTtyPU1hdGgubWluKDQ3NSxyKTtyPU1hdGgubWF4KDUscik7dmFyIHQ9SWIoTyhhLk0sRi5ELlBpLDFFNCkpLHU9TFAocSk7VihhLEguSi5uZywhMSk7VihhLEguSi5UZSwhMSk7VihhLEguSi5wZywwKTt1JiZ1LmomJlYoYSxILkoucGcsTWF0aC5tYXgoMCx1LmotTWF0aC5tYXgoMCxwLXUudCkpKTt2YXIgdj0hMTtpZighdSl7VihhLEguSi5uZywhMCk7dj0hMDt2YXIgeD17fTt1PSh4LnM9U3RyaW5nKHApLHgubz0xLHguZz0hMSx4LnQ9cCx4Lmw9ITEseC5oPXZvaWQgMCx4KX1wPnUudCtyKjYwJiYodj0hMCx1LnM9U3RyaW5nKHApLHUubysrLHUuZz0hMSx1Lmg9dm9pZCAwKTtpZih2KVYoYSxILkouVGUsITApLGQubHMoYSk7ZWxzZSBpZihkLlhyKCk+dHx8YS5ldmVudE5hbWU9PT1GLkQuc2MpdS5nPSEwO1EoYSxILkoubGcpPwpPKGEuTSxGLkQuZmIpP3UubD0hMDp1Lmw9ITE6dS5sPSExO3ZhciB5PXUuaDtpZihRKGEsSC5KLmxnKXx8YmsoWksoYSkpKXt2YXIgej1PKGEuTSxGLkQub2gpLEM9ej8xOjg7enx8KHo9eSxDPTQpO3p8fCh6PXp2KCksQz03KTt2YXIgRD16LnRvU3RyaW5nKCksST1DLEc9UShhLEguSi50bCk7aWYoRz09PXZvaWQgMHx8STw9RylVKGEsRi5ELm9oLEQpLFYoYSxILkoudGwsSSl9ZT8oYS5jb3B5VG9IaXREYXRhKEYuRC54Yyx1LnMpLGEuY29weVRvSGl0RGF0YShGLkQuQWgsdS5vKSxhLmNvcHlUb0hpdERhdGEoRi5ELnpoLHUuZz8xOjApKTooVShhLEYuRC54Yyx1LnMpLFUoYSxGLkQuQWgsdS5vKSxVKGEsRi5ELnpoLHUuZz8xOjApKTtWKGEsSC5KLnJtLHUubD8xOjApO1dqKCkmJlYoYSxILkoub2csdS5kfHxjYygpKX19Owp2YXIga1I9ZnVuY3Rpb24oYSl7dmFyIGI9YS5pbmRleE9mKCI/IiksYz1iPT09LTE/YTphLnN1YnN0cmluZygwLGIpLGQ9S2ooYyk7ZCYmKGM9ZCk7cmV0dXJuIGI9PT0tMT9jOiIiK2MrYS5zdWJzdHJpbmcoYil9LGxSPWZ1bmN0aW9uKGEpe2lmKCFPKGEuTSxGLkQuWWMpfHwhTyhhLk0sRi5ELlpjKSl7dmFyIGI9YS5jb3B5VG9IaXREYXRhLGM9Ri5ELnphLGQ9IiIsZT1CLmxvY2F0aW9uO2lmKGUpe3ZhciBmPWUucGF0aG5hbWV8fCIiO2YuY2hhckF0KDApIT09Ii8iJiYoZj0iLyIrZik7dmFyIGc9ZS5zZWFyY2h8fCIiO2lmKGdbMF09PT0iPyIpZm9yKHZhciBoPWcuc3Vic3RyaW5nKDEpLnNwbGl0KCImIiksbD0wO2w8aC5sZW5ndGg7KytsKXt2YXIgbj1oW2xdLnNwbGl0KCI9Iik7biYmbi5sZW5ndGg9PT0yJiZuWzBdPT09IndicmFpZCImJihnPWcucmVwbGFjZSgvKFs/Jl0pd2JyYWlkPVteJl0rLywiJDF3YnJhaWQ9IiskYihuWzFdKSkpfWQ9ZS5wcm90b2NvbCsiLy8iK2UuaG9zdG5hbWUrCmYrZ31iLmNhbGwoYSxjLGQsa1IpO3ZhciBwPWEuY29weVRvSGl0RGF0YSxxPUYuRC5VYSxyPXVBKCJndG0uZ3RhZ1JlZmVycmVyLiIrYS50YXJnZXQuZGVzdGluYXRpb25JZCksdD1CLnJlZmVycmVyO3AuY2FsbChhLHEsKHI/IiIrcjp0KXx8dm9pZCAwLGtSKTthLmNvcHlUb0hpdERhdGEoRi5ELk1iLEIudGl0bGUpO2EuY29weVRvSGl0RGF0YShGLkQudGIsKEhjLmxhbmd1YWdlfHwiIikudG9Mb3dlckNhc2UoKSk7dmFyIHU9cUkoKTthLmNvcHlUb0hpdERhdGEoRi5ELmJkLHUud2lkdGgrIngiK3UuaGVpZ2h0KTthLmNvcHlUb0hpdERhdGEoRi5ELllmLHZvaWQgMCxrUik7VE0oKSYmYS5jb3B5VG9IaXREYXRhKEYuRC5QZCwiMSIpfX07dmFyIG5SPWZ1bmN0aW9uKGEpe3ZhciBiPXhDKGEuTSksYz1mdW5jdGlvbihkLGUpe21SW2RdJiZVKGEsZCxlKX07Q2QoYltGLkQuS2ZdKT9HYihiW0YuRC5LZl0sZnVuY3Rpb24oZCxlKXtjKChGLkQuS2YrIl8iK2QpLnRvTG93ZXJDYXNlKCksZSl9KTpHYihiLGMpfSxvUj17fSxtUj0ob1JbRi5ELkdmXT0xLG9SW0YuRC5IZl09MSxvUltGLkQuSWZdPTEsb1JbRi5ELkpmXT0xLG9SW0YuRC5MZl09MSxvUltGLkQuTWZdPTEsb1IpO3ZhciBwUj1mdW5jdGlvbihhKXtpZighYmsoWksoYSkpJiZRKGEsSC5KLm1nKSYmWG8oRi5ELmthKSYmZEkoYSwiZ2E0X2Fkc19saW5rZWQiLCExKSl7dmFyIGI9TEsoYSksYz1IcihiLnByZWZpeCksZD1ScyhjKTtVKGEsRi5ELkJlLGQuRWcpO1UoYSxGLkQuRGUsZC5XaCk7VShhLEYuRC5DZSxkLlVoKX19O3ZhciBxUj1mdW5jdGlvbihhKXt2YXIgYj1PKGEuTSxGLkQuWmMpO2ImJklQKEouVS54bik7UShhLEguSi5QYykmJklQKEouVS5Oayk7dmFyIGM9eWsoemsoKSk7KGJ8fE1rKGMpfHxjJiZjLnBhcmVudCYmYy5jb250ZXh0JiZjLmNvbnRleHQuc291cmNlPT09NSkmJklQKEouVS5mbik7UShhLEguSi5jaikmJklQKEouVS5JbSk7UShhLEguSi5iaikmJklQKEouVS5IbSl9O3ZhciByUj1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLlZpKXx8bmV3IGVyO1EoYSxILkouYmopJiZRKGEsSC5KLmNqKSYmZnIoYiwyKTtWKGEsSC5KLlZpLGIpfTtmdW5jdGlvbiBzUihhKXthLmNvcHlUb0hpdERhdGEoRi5ELmZiKTt2YXIgYj1PKGEuTSxGLkQuV2QpO2ImJihLQyhiLGZ1bmN0aW9uKCl7fSksVShhLEYuRC5XZCxiKSl9O3ZhciB1Uj1mdW5jdGlvbihhKXtpZih0Ui5Nci5yZXBsYWNlKC9ccysvZywiIikuc3BsaXQoIiwiKS5pbmRleE9mKGEuZXZlbnROYW1lKT49MClhLmlzQWJvcnRlZD0hMDtlbHNle3ZhciBiPVhLKGEpO2ImJmIuYmxhY2tsaXN0ZWQmJihhLmlzQWJvcnRlZD0hMCl9fSx0Uj17TXI6TGYoMzEpfTtmdW5jdGlvbiB2UihhKXt2YXIgYj1mdW5jdGlvbihjKXtyZXR1cm4hIWMmJmMuY29udmVyc2lvbn07VihhLEguSi5tZyxiKFhLKGEpKSk7UShhLEguSi5uZykmJlYoYSxILkouWW0sYihYSyhhLCJmaXJzdF92aXNpdCIpKSk7UShhLEguSi5UZSkmJlYoYSxILkouYm4sYihYSyhhLCJzZXNzaW9uX3N0YXJ0IikpKX07dmFyIHdSPWZ1bmN0aW9uKGEpe0ZvLmhhc093blByb3BlcnR5KGEuZXZlbnROYW1lKSYmKFYoYSxILkouV20sITApLGEuY29weVRvSGl0RGF0YShGLkQuSGEpLGEuY29weVRvSGl0RGF0YShGLkQuZWIpKX07dmFyIHhSPWZ1bmN0aW9uKGEpe1EoYSxILkouYmUpP1YoYSxILkoubGcsITEpOmRJKGEsImNjZF9hZGRfZWNfc3RpdGNoaW5nIiwhMSkmJlYoYSxILkoubGcsITApfTt2YXIgeVI9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5wZyk7Yj1ifHwwO3ZhciBjPSEhUShhLEguSi5zYSksZD1iPT09MHx8YztWKGEsSC5KLmVqLGQpO2QmJlYoYSxILkoucGcsNjApfTt2YXIgQVI9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9U3RyaW5nKHpSLmNvb2tpZSkuc3BsaXQoIjsiKSxkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPWNbZF0uc3BsaXQoIj0iKSxmPWVbMF0udHJpbSgpO2lmKGYmJmEoZikpe3ZhciBnPWUuc2xpY2UoMSkuam9pbigiPSIpLnRyaW0oKTtnJiYoZz1kZWNvZGVVUklDb21wb25lbnQoZykpO3ZhciBoPXZvaWQgMCxsPXZvaWQgMDsoKGg9YilbbD1mXXx8KGhbbF09W10pKS5wdXNoKGcpfX1yZXR1cm4gYn07dmFyIEJSPXdpbmRvdyx6Uj1kb2N1bWVudCxDUj1mdW5jdGlvbihhKXt2YXIgYj1CUi5fZ2FVc2VyUHJlZnM7aWYoYiYmYi5pb28mJmIuaW9vKCl8fHpSLmRvY3VtZW50RWxlbWVudC5oYXNBdHRyaWJ1dGUoImRhdGEtZ29vZ2xlLWFuYWx5dGljcy1vcHQtb3V0Iil8fGEmJkJSWyJnYS1kaXNhYmxlLSIrYV09PT0hMClyZXR1cm4hMDt0cnl7dmFyIGM9QlIuZXh0ZXJuYWw7aWYoYyYmYy5fZ2FVc2VyUHJlZnMmJmMuX2dhVXNlclByZWZzPT0ib28iKXJldHVybiEwfWNhdGNoKGYpe31mb3IodmFyIGQ9QVIoZnVuY3Rpb24oZil7cmV0dXJuIGY9PT0iQU1QX1RPS0VOIn0pLkFNUF9UT0tFTnx8W10sZT0wO2U8ZC5sZW5ndGg7ZSsrKWlmKGRbZV09PSIkT1BUX09VVCIpcmV0dXJuITA7cmV0dXJuIHpSLmdldEVsZW1lbnRCeUlkKCJfX2dhT3B0T3V0RXh0ZW5zaW9uIik/ITA6ITF9O3ZhciBEUj1mdW5jdGlvbihhKXtpZihDUihhLnRhcmdldC5kZXN0aW5hdGlvbklkKSlQKDI4KSxhLmlzQWJvcnRlZD0hMDtlbHNle3ZhciBiPXhrKCk7aWYoYiYmQXJyYXkuaXNBcnJheShiLmRlc3RpbmF0aW9ucykpZm9yKHZhciBjPTA7YzxiLmRlc3RpbmF0aW9ucy5sZW5ndGg7YysrKWlmKENSKGIuZGVzdGluYXRpb25zW2NdKSl7UCgxMjUpO2EuaXNBYm9ydGVkPSEwO2JyZWFrfX19O3ZhciBFUj1mdW5jdGlvbihhKXt2YXIgYj1CLmxvY2F0aW9uLnByb3RvY29sO2IhPT0iaHR0cDoiJiZiIT09Imh0dHBzOiImJihQKDI5KSxhLmlzQWJvcnRlZD0hMCl9O3ZhciBGUj1mdW5jdGlvbihhKXtIYyYmSGMubG9hZFB1cnBvc2U9PT0icHJldmlldyImJihQKDMwKSxhLmlzQWJvcnRlZD0hMCl9O3ZhciBHUj1mdW5jdGlvbihhLGIpe2IuVGomJihWKGEsSC5KLnNhLCEwKSxiLlRqPSExLFdqKCkmJlYoYSxILkoub2csY2MoKSkpfTt2YXIgSFI9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihjLGQpe0JvW2NdfHxkPT09dm9pZCAwfHxVKGEsYyxkKX1NKDU1MCkmJkdiKGEuTS5XYSxiKTtHYihhLk0uaGIsYik7R2IoYS5NLkVhLGIpfTt2YXIgSVI9ZnVuY3Rpb24oYSl7YS5ldmVudE5hbWU9PT1GLkQud2EmJihPKGEuTSxGLkQuVGQsITApPyhhLk0uRWFbRi5ELk9hXSYmKE0oNTUwKSYmKGEuTS5XYVtGLkQuT2FdPWEuTS5FYVtGLkQuT2FdKSxhLk0uaGJbRi5ELk9hXT1hLk0uRWFbRi5ELk9hXSxhLk0uRWFbRi5ELk9hXT12b2lkIDAsVShhLEYuRC5PYSkpLGEuZXZlbnROYW1lPUYuRC5zYyk6YS5pc0Fib3J0ZWQ9ITApfTsKdmFyIEpSPWZ1bmN0aW9uKGEpe2lmKE0oMTMyKSl7dmFyIGI9WksoYSk7aWYoYmsoYikpaWYoY2soYikpY2soWksoYSkpJiZhLm1lcmdlSGl0RGF0YUZvcktleShGLkQuVGEseyIzcGQiOiIxIn0pO2Vsc2UgaWYoIShOYygiOyB3diIpfHxOYygiRkJBTiIpfHxOYygiRkJBViIpfHxQYygpKSYmWG8oRi5ELnJhKSl7VihhLEguSi5kbiwhMCk7YmsoWksoYSkpJiZXSyhhLCJzd19leHAiLDEpO2E6e2lmKCFNKDEzMil8fCFiayhaSyhhKSl8fGNrKFpLKGEpKSlicmVhayBhO2I6e3ZhciBjPXtvdDpZaihlayhhLk0pLCIvXy9zZXJ2aWNlX3dvcmtlciIpfSxkO2Q9KGM9PT12b2lkIDA/e306Yykub3Q7dmFyIGU9aUwoZCk7aWYoZT09PW51bGx8fCFiZygiaW50ZXJuYWxfc3dfYWxsb3dlZCIsIiIpfHxqTChlLm9yaWdpbikpYnJlYWsgYjsKaWYoIUljKCkpe2dMKCkuSyh2b2lkIDAsdm9pZCAwLDYpO2JyZWFrIGJ9dmFyIGY9bmV3IGtMKGUpO29tKGptLmJhLk9oLHt9KVtlLm9yaWdpbl09Zjt9fX19fTt2YXIgTFI9ZnVuY3Rpb24oYSl7YS5jb3B5VG9IaXREYXRhKEYuRC5PbCk7TyhhLk0sRi5ELnhoKSYmKFUoYSxGLkQueGgsITApLGJrKFpLKGEpKXx8S1IoYSkpfSxLUj1mdW5jdGlvbihhKXt2YXIgYj1GLkQuYmQsYztjfHwoYz1mdW5jdGlvbigpe30pO1IoYSxiKSE9PXZvaWQgMCYmVShhLGIsYyhSKGEsYikpKX07dmFyIE1SPSJnY2xpZCBkY2xpZCBnY2xzcmMgd2JyYWlkIGdicmFpZCBnYWRfc291cmNlIGdhZF9jYW1wYWlnbmlkIHV0bV9zb3VyY2UgdXRtX21lZGl1bSB1dG1fY2FtcGFpZ24gdXRtX3Rlcm0gdXRtX2NvbnRlbnQgdXRtX2lkIi5zcGxpdCgiICIpO2Z1bmN0aW9uIE5SKCl7dmFyIGE9Qi5sb2NhdGlvbixiLGM9YT09bnVsbD92b2lkIDA6KGI9YS5zZWFyY2gpPT1udWxsP3ZvaWQgMDpiLnJlcGxhY2UoIj8iLCIiKSxkO2lmKGMpe2Zvcih2YXIgZT1bXSxmPUpqKGMsITApLGc9bShNUiksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPWgudmFsdWUsbj1mW2xdO2lmKG4pZm9yKHZhciBwPTA7cDxuLmxlbmd0aDtwKyspe3ZhciBxPW5bcF07cSE9PXZvaWQgMCYmZS5wdXNoKHtuYW1lOmwsdmFsdWU6cX0pfX1kPWV9ZWxzZSBkPVtdO3JldHVybiBkfTt2YXIgT1I9ZnVuY3Rpb24oYSl7dmFyIGI9TSgyNjYpLGM9TSgyNjcpO2lmKGJ8fGMpe3ZhciBkPVIoYSxGLkQuemEpO2lmKGQmJmQuaW5kZXhPZigiPyIpPT09LTEpe3ZhciBlPU5SKCk7aWYoZS5sZW5ndGghPT0wJiYoYiYmSVAoSi5VLkdtKSxjKSl7SVAoSi5VLkZtKTt2YXIgZj1lLm1hcChmdW5jdGlvbihnKXtyZXR1cm4gZy5uYW1lKyI9IitnLnZhbHVlfSkuam9pbigiJiIpO1UoYSxGLkQuemEsZCsiPyIrZil9fX19O3ZhciBQUj1bRi5ELnJhLEYuRC5rYV0sUVI9W0YuRC5yYSxGLkQua2EsRi5ELm1hXTsKZnVuY3Rpb24gUlIoYSl7dmFyIGIsYz1NKDUwNikmJiFkSShhLCJjY2RfZ2FfYWRzX2lkc19vcHRfb3V0IiwhMSksZD0hIWRJKGEsImdvb2dsZV9uZyIsITEpLGU9WG8oYz9kP1FSOmZwOlBSKSxmO2Y9ZEkoYSxGLkQuVWYsTyhhLk0sRi5ELlVmKSl8fCEhZEkoYSwiZ29vZ2xlX25nIiwhMSk7Yj17aGY6YyxFczpkLEdvOmUsZmY6ZixMZzohIWRJKGEsImdhNF9hZHNfbGlua2VkIiwhMSksYmk6QW0oKSxHajohVksoKSxGczpiayhaSyhhKSksRHM6ISFRKGEsSC5KLmJlKSxHczohIVEoYSxILkouVGUpLHVzOiEhTyhhLk0sRi5ELk5sKSxLczohIVEoYSxILkouZWopLHhnOk8oYS5NLEYuRC5TYyksbnI6TyhhLk0sRi5ELlNjLHZvaWQgMCw0KSxIczohIVEoYSxILkouRmMpfTtWKGEsSC5KLmNqLGIuZmYpO1YoYSxILkouYmosU1IoYikpO2IuaGYmJiFiLmZmJiZiLkxnJiZTUihiKSYmVShhLCJfJmlidCIsIjEiKTtTUihiKSYmYi5HbyYmKGIuaGY/Yi54ZyE9PSExfHxiLkxnOjEpJiZWKGEsCkguSi5ybiwhMCk7Yi5FcyYmIWIuYmkmJlUoYSxGLkQuTGUsMSk7KGIuaGY/Yi54ZzpiLm5yKT09PSExJiZVKGEsIl8mbmdzIiwiMSIpO1YoYSxILkouaGQsVFIoYikmJihiLkdzfHxiLnVzKSk7VihhLEguSi5yZyxUUihiKSYmYi5LcyYmIWIuYmkpfWZ1bmN0aW9uIFNSKGEpe3JldHVybiBhLmhmPyhhLkxnfHxhLmZmKSYmIWEuYmkmJiFhLkdqOmEuZmYmJmEueGchPT0hMSYmIWEuR2omJiFhLmJpfWZ1bmN0aW9uIFRSKGEpe2lmKGEuSHMpcmV0dXJuITE7aWYoYS5oZil7aWYoIWEuZmYmJiFhLkxnKXJldHVybiExfWVsc2UgaWYoIWEuZmYpcmV0dXJuITE7cmV0dXJuIGEuRnN8fGEuRHN8fGEuR2p8fChhLmhmP2EueGc9PT0hMSYmIWEuTGc6YS54Zz09PSExKXx8IWEuR28/ITE6ITB9O3ZhciBVUj1mdW5jdGlvbihhKXtzTCgpJiZVKGEsRi5ELkZlLCIxIil9O3ZhciBWUj1mdW5jdGlvbihhKXt2YXIgYj17cHJlZml4OlN0cmluZyhPKGEuTSxGLkQubmIsIiIpKSxwYXRoOlN0cmluZyhPKGEuTSxGLkQudmMsIi8iKSksZmxhZ3M6U3RyaW5nKE8oYS5NLEYuRC5UYiwiIikpLGRvbWFpbjpTdHJpbmcoTyhhLk0sRi5ELkxiLCJhdXRvIikpLHBkOk51bWJlcihPKGEuTSxGLkQuQ2IsNjMwNzJFMykpfTtWKGEsSC5KLkdhLGIpfTt2YXIgV1I9ZnVuY3Rpb24oYSl7aWYoTSg0MzUpfHxNKDU1Mykpe3ZhciBiPURtKCk7YiYmVihhLEguSi5BcSxiKX19O3ZhciBZUj1mdW5jdGlvbihhKXthLmNvcHlUb0hpdERhdGEoRi5ELlJpKTtmb3IodmFyIGI9TyhhLk0sRi5ELlJsKXx8W10sYz0wO2M8Yi5sZW5ndGg7YysrKXt2YXIgZD1iW2NdO2lmKGQucnVsZV9yZXN1bHQpe2EuY29weVRvSGl0RGF0YShGLkQuUmksZC50cmFmZmljX3R5cGUpO0lQKEouVS5Fbik7YnJlYWt9fX07dmFyIFpSPWZ1bmN0aW9uKGEpe2lmKGRJKGEsImdhNF9hZHNfbGlua2VkIiwhMSkmJmEuZXZlbnROYW1lPT09Ri5ELndhKXt2YXIgYj1PKGEuTSxGLkQudWMpIT09ITE7aWYoYil7dmFyIGM9TEsoYSk7Yy5wZCYmKGMucGQ9TWF0aC5taW4oYy5wZCw3Nzc2RTMpKTtQSyh7VG46YixtbzpPbyhPKGEuTSxGLkQuRGIpKSxRbzohIU8oYS5NLEYuRC56YyksVW46Y30pfX19O3ZhciAkUj1mdW5jdGlvbihhKXtWKGEsSC5KLk1oLCExKTtWKGEsSC5KLk5oLCExKTtpZighRG0oKSYmV2ooKSYmIWJrKFpLKGEpKSYmIVEoYSxILkouYmUpJiZRKGEsSC5KLmVqKSl7dmFyIGI9UShhLEguSi5yZyk7UShhLEguSi5vZykmJihiP1YoYSxILkouTmgsITApOlYoYSxILkouTWgsITApKX19O3ZhciBhUz1mdW5jdGlvbihhKXtPKGEuTSxGLkQuemMpJiYoWG8oRi5ELnJhKXx8TyhhLk0sRi5ELktiKXx8VShhLEYuRC5abSwhMCkpO3ZhciBiO3ZhciBjO2M9Yz09PXZvaWQgMD8zOmM7dmFyIGQ9QS5sb2NhdGlvbi5ocmVmO2lmKGQpe3ZhciBlPVJqKGQpLnNlYXJjaC5yZXBsYWNlKCI/IiwiIiksZj1JaihlLCJfZ2wiLCExLCEwKXx8IiI7Yj1mP1ZxKGYsYykhPT12b2lkIDA6ITF9ZWxzZSBiPSExO2ImJmJrKFpLKGEpKSYmV0soYSwiZ2x2IiwxKTtpZihhLmV2ZW50TmFtZSE9PUYuRC53YSlyZXR1cm57fTtPKGEuTSxGLkQuemMpJiZBcyhbImF3IiwiZGMiXSk7Q3MoWyJhdyIsImRjIl0pO3ZhciBnPSRQKGEpLGg9WlAoYSk7cmV0dXJuIE9iamVjdC5rZXlzKGcpLmxlbmd0aD9nOmh9O3ZhciBiUz1mdW5jdGlvbihhKXt2YXIgYj0hMDtiPWI9PT12b2lkIDA/ITE6YjtpZihNKDQyNSkmJiEocGwoKXx8YiYmUShhLEguSi5kail8fGEuZXZlbnROYW1lIT09Ri5ELndhfHxRKGEsSC5KLkZjKSkpe3ZhciBjPXt9LGQ9e30sZT17ZXZlbnRNZXRhZGF0YTpuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGEuTS5ldmVudE1ldGFkYXRhLChjW0guSi5GY109ITAsYyksYj97fTooZFtILkouRGNdPVguVi5LYSxkKSksbm9HdG1FdmVudDohMH0sZj1zQyhhLnRhcmdldC5kZXN0aW5hdGlvbklkLCJzdHJ1Y3R1cmVkX2RhdGEiLGEuTS5FYSk7bUQoZixhLk0uZXZlbnRJZCxlKX19Owp2YXIgZFM9ZnVuY3Rpb24oYSl7cmV0dXJuIWF8fGNTLnRlc3QoYSl8fERvLmhhc093blByb3BlcnR5KGEpfSxjUz0vXihffGdhX3xnb29nbGVffGd0YWdcLnxmaXJlYmFzZV8pLiokLyxlUz1mdW5jdGlvbihhKXt0aGlzLnlhPWE7dGhpcy5IPXRoaXMuemI9dGhpcy5jbGllbnRJZD12b2lkIDA7dGhpcy5qYT10aGlzLlI9ITE7dGhpcy5MYT0wO3RoaXMuTj0hMTt0aGlzLlo9e1RqOiExfTt0aGlzLmZhPW5ldyBJUTt0aGlzLks9bmV3IEhQfTtrPWVTLnByb3RvdHlwZTtrLlpzPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLGU9YkModGhpcy55YSk7aWYoZSlpZihjLmV2ZW50TWV0YWRhdGFbSC5KLmFlXSYmYS5jaGFyQXQoMCk9PT0iXyIpYy5vbkZhaWx1cmUoKTtlbHNle2EhPT1GLkQud2EmJmEhPT1GLkQuSmImJmRTKGEpJiZQKDU4KTt2YXIgZj1uZXcgYUkoZSxhLGMpO1YoZixILkouRWIsYik7dmFyIGc9W0YuRC5yYV0saD1iayhaSyhmKSk7VihmLEguSi5kaixoKTtpZihkSShmLEYuRC5VZiwKTyhmLk0sRi5ELlVmKSl8fGgpZy5wdXNoKEYuRC5rYSksZy5wdXNoKEYuRC5tYSk7Rk0uZmEoZnVuY3Rpb24oKXticChmdW5jdGlvbigpe2QuYnQoZil9LGcpfSl9ZWxzZSBjLm9uRmFpbHVyZSgpfTtrLmJ0PWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7dHJ5e0hNKGEpO2lmKGEuaXNBYm9ydGVkKXt0YigpO3JldHVybn1KTShhKTtEUihhKTt1UihhKTtFUihhKTtGUihhKTtJTShhKTt2YXIgYz17fTtlUShhLGMpO2lmKGEuaXNBYm9ydGVkKXthLk0ub25GYWlsdXJlKCk7dGIoKTtyZXR1cm59dGhpcy5IPWE7dmFyIGQ9Yy51cjtjLkhyPT09MCYmSVAoSi5VLm5sKTtkPT09MCYmSVAoSi5VLkxrKTtaTShhKTtWKGEsSC5KLnRnLGNvLmlhLnhkKTtWUihhKTtIUihhKTt0aGlzLkxxKGEpO3RoaXMuSy5LdChhKTtVKGEsRi5ELnppLGFsKDgsTkYpKTt4UihhKTtwTihhKTtaUihhKTtNUShhKTt0aGlzLkFvKGFTKGEpKTtiUyhhKTt2YXIgZT1hLmV2ZW50TmFtZT09PUYuRC53YTtlJiYodGhpcy5OPQohMCk7SVIoYSk7ZSYmIWEuaXNBYm9ydGVkJiZ0aGlzLkxhKys+MCYmSVAoSi5VLmhuKTtVTChhKTtqUihhLHRoaXMuY2xpZW50SWQsdGhpcy56Yix0aGlzLkssIXRoaXMuamEpO25SKGEpO2xSKGEpO09SKGEpO1hMKGEpO0dSKGEsdGhpcy5aKTt5UihhKTt2UihhKTt3UihhKTtZUihhKTthUShhKTtnUShhKTt3TShhKTtoUihhKTtZUShhKTtnUihhKTtmUihhKTtlUihhKTtkUihhKTtjUihhKTthUihhKTskUShhKTtXUShhKTtVUShhKTtUUShhKTtTUShhKTtiUShhKTtjUShhKTtPKGEuTSxGLkQueGgpJiYhYmsoWksoYSkpfHxHTShhKTtVUihhKTtXUihhKTtpTihhKTtWTChhKTtTTChhKTtsTihhKTtoTihhKTtYTShhLCExKTtzUihhKTtSUihhKTskUihhKTtOTShhKTtyUihhKTtwUihhKTtiUihhKTtaUShhKTtSUShhKTtxUihhKTshdGhpcy5OJiZRKGEsSC5KLlBjKSYmSVAoSi5VLnNsKTtKUChhKTtpZihNKDU3NSkpe2lmKGEuaXNBYm9ydGVkKXtpZighUShhLEguSi5TbykpYS5NLm9uRmFpbHVyZSgpOwp0YigpO3JldHVybn1pZihRKGEsSC5KLkphKSl7YS5NLm9uRmFpbHVyZSgpO3RiKCk7cmV0dXJufX1lbHNlIGlmKFEoYSxILkouSmEpfHxhLmlzQWJvcnRlZCl7YS5NLm9uRmFpbHVyZSgpO3RiKCk7cmV0dXJufXRoaXMuQW8oaVIoYSx0aGlzLmNsaWVudElkKSk7dGhpcy5qYT0hMDt0aGlzLkh0KGEpO0pSKGEpO1ZRKGZ1bmN0aW9uKGYpe2IuTW4oZil9LGEpO3RoaXMuSy5xaygpO0xSKGEpO2dOKGEpO1dMKGEpO1lNKGEpO2lmKGEuaXNBYm9ydGVkKXthLk0ub25GYWlsdXJlKCk7dGIoKTtyZXR1cm59dGhpcy5NbihhKTthLk0ub25TdWNjZXNzKCl9Y2F0Y2goZil7YS5NLm9uRmFpbHVyZSgpfXRiKCl9O2suTW49ZnVuY3Rpb24oYSl7dGhpcy5mYS5hZGQoYSl9O2suQW89ZnVuY3Rpb24oYSl7dmFyIGI9YS5jbGllbnRJZCxjPWEuemI7YiYmYyYmKHRoaXMuY2xpZW50SWQ9Yix0aGlzLnpiPWMpfTtrLmZsdXNoPWZ1bmN0aW9uKCl7dGhpcy5mYS5mbHVzaCgpfTtrLkh0PWZ1bmN0aW9uKGEpe3ZhciBiPQp0aGlzO2lmKCF0aGlzLlIpe3ZhciBjPVhvKEYuRC5tYSksZD1YbyhGLkQucmEpOyRvKFtGLkQubWEsRi5ELnJhLEYuRC5rYV0sZnVuY3Rpb24oZSl7dmFyIGY7Zj0oZT09PXZvaWQgMD97fTplKS5jb25zZW50RXZlbnRJZDt2YXIgZz1YbyhGLkQubWEpLGg9WG8oRi5ELnJhKSxsPSExLG49e30scD17fTtpZihkIT09aCYmYi5IJiZiLnpiJiZiLmNsaWVudElkKXt2YXIgcT1iLmNsaWVudElkLHI7dmFyIHQ9TFAoYi56Yik7cj10P3QuaDp2b2lkIDA7aWYoaCl7dmFyIHU9RlAoYi5IKTtpZih1KXtiLmNsaWVudElkPXU7dmFyIHY9U1AoYi5IKTt2JiYoYi56Yj1QUCh2LGIuemIsYi5IKSl9ZWxzZSBEUChiLmNsaWVudElkLGIuSCksQVAoYi5jbGllbnRJZCwhMCk7UlAoYi56YixiLkgpO2w9ITA7bltGLkQuTmxdPXE7ciYmKG5bRi5ELmJxXT1yKX1lbHNlIGIuemI9dm9pZCAwLGIuY2xpZW50SWQ9dm9pZCAwLEEuZ2FHbG9iYWw9e319ZyYmIWMmJihsPSEwLHBbSC5KLkdoXT0hMCxuW0YuRC54aV09CkxvW0YuRC5tYV0pO2lmKGwpe3ZhciB4PXNDKGIueWEsRi5ELnlmLG4pO21EKHgsZiE9bnVsbD9mOmEuTS5ldmVudElkLHtldmVudE1ldGFkYXRhOnB9KX1kPWg7Yz1nO2IuWi5Uaj0hMH0pO3RoaXMuUj0hMH19O2suTHE9ZnVuY3Rpb24oYSl7YS5ldmVudE5hbWUhPT1GLkQuSmImJnRoaXMuSy5LcShhKX07dmFyIGdTPWZ1bmN0aW9uKGEpe2lmKCFmUyhhKSl7dmFyIGI9ITEsYz1mdW5jdGlvbigpeyFiJiZmUyhhKSYmKGI9ITAsYWQoQiwidmlzaWJpbGl0eWNoYW5nZSIsYyksYWQoQiwicHJlcmVuZGVyaW5nY2hhbmdlIixjKSxQKDU1KSl9OyRjKEIsInZpc2liaWxpdHljaGFuZ2UiLGMpOyRjKEIsInByZXJlbmRlcmluZ2NoYW5nZSIsYyk7UCg1NCl9fSxmUz1mdW5jdGlvbihhKXtpZigicHJlcmVuZGVyaW5nImluIEI/Qi5wcmVyZW5kZXJpbmc6Qi52aXNpYmlsaXR5U3RhdGU9PT0icHJlcmVuZGVyIilyZXR1cm4hMTthKCk7cmV0dXJuITB9O2Z1bmN0aW9uIGhTKGEpe2dTKGZ1bmN0aW9uKCl7dmFyIGI9YkMoYSk7aWYoYil7dmFyIGM9aVMoYiksZD1jby5pYS54ZCxlPVlDKCksZj1iQyhhLCEwKTtmJiZlLkgucmVnaXN0ZXIoZixjLGQsdm9pZCAwKX19KTt9ZnVuY3Rpb24gaVMoYSl7dmFyIGI9ZnVuY3Rpb24oKXt9O3ZhciBjPW5ldyBlUyhhLmlkKSxkPWEucHJlZml4PT09Ik1DIjtiPWZ1bmN0aW9uKGUsZixnLGgpe2QmJihoLmV2ZW50TWV0YWRhdGFbSC5KLmJlXT0hMCk7Yy5acyhmLGcsaCl9O2pTKGEsYyk7cmV0dXJuIGJ9CmZ1bmN0aW9uIGpTKGEsYil7dmFyIGM9Yi5LO2MuaHQoZnVuY3Rpb24oKXtaayg5LCEwKTtZQygpLmZsdXNoKCk7aWYoYy5ZaCgpPj0xRTMmJmtkKCkpe3ZhciBkPXt9LGU9e2V2ZW50SWQ6cmooKSxldmVudE1ldGFkYXRhOihkW0guSi5La109ITAsZCksZGVmZXJyYWJsZTohMH07WkMoRi5ELnlmLHt9LGEuaWQsZSl9Yi5mbHVzaCgpO2MuQ28oZnVuY3Rpb24oKXtaayg5LCExKTtjLkNvKCl9KX0pO312YXIga1M9Si5VLnFsLGxTPUouVS5ybDtmdW5jdGlvbiBtUyhhLGIpe3ZhciBjPXRrKCk7YyYmYy5pbmRleE9mKGIpPi0xJiYoYVtILkouQ2NdPSEwKX1mdW5jdGlvbiBvUyhhLGIsYyl7dmFyIGQ9dGhpczt9b1MuUD0iaW50ZXJuYWwuZ3RhZ0NvbmZpZyI7ZnVuY3Rpb24gcFMoYSxiLGMsZCl7dmFyIGU9dGhpczt9cFMuUD0iaW50ZXJuYWwuZ3RhZ0Rlc3RpbmF0aW9uQ29uZmlnIjsKZnVuY3Rpb24gclMoYSxiKXt9CnJTLnB1YmxpY05hbWU9Imd0YWdTZXQiO2Z1bmN0aW9uIHNTKCl7dmFyIGE9e307cmV0dXJuIGF9O2Z1bmN0aW9uIHRTKGEpe310Uy5QPSJpbnRlcm5hbC5pbml0aWFsaXplU2VydmljZVdvcmtlciI7ZnVuY3Rpb24gdVMoYSxiKXt9dVMucHVibGljTmFtZT0iaW5qZWN0SGlkZGVuSWZyYW1lIjtmdW5jdGlvbiB2UyhhLGIsYyxkLGUpe312Uy5QPSJpbnRlcm5hbC5pbmplY3RIdG1sIjt2YXIgQVM9e2RsOjEsaWQ6MX07CmZ1bmN0aW9uIEJTKGEsYixjLGQpe31CUy5wdWJsaWNOYW1lPSJpbmplY3RTY3JpcHQiO2Z1bmN0aW9uIENTKCl7dmFyIGE9dm0sYj0hMTtiPSEhYS5IWyI1Il07cmV0dXJuIGJ9Q1MuUD0iaW50ZXJuYWwuaXNBdXRvUGlpRWxpZ2libGUiO2Z1bmN0aW9uIERTKGEpe3ZhciBiPSEwO3JldHVybiBifURTLnB1YmxpY05hbWU9ImlzQ29uc2VudEdyYW50ZWQiO2Z1bmN0aW9uIEVTKGEpe3ZhciBiPSExO3JldHVybiBifUVTLlA9ImludGVybmFsLmlzRGVidWdNb2RlIjtmdW5jdGlvbiBGUyhhKXt2YXIgYj0hMTtyZXR1cm4gYn1GUy5QPSJpbnRlcm5hbC5pc0Rlc3RpbmF0aW9uSW5pdGlhbGl6ZWQiO2Z1bmN0aW9uIEdTKCl7cmV0dXJuIEJtKCl9R1MuUD0iaW50ZXJuYWwuaXNEbWFSZWdpb24iO2Z1bmN0aW9uIEhTKCl7cmV0dXJuIFVCKCl9SFMuUD0iaW50ZXJuYWwuaXNEb21SZWFkeSI7ZnVuY3Rpb24gSVMoYSl7dmFyIGI9ITE7cmV0dXJuIGJ9SVMuUD0iaW50ZXJuYWwuaXNFbnRpdHlJbmZyYXN0cnVjdHVyZSI7ZnVuY3Rpb24gSlMoYSl7dmFyIGI9ITE7aWYoIXFoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJudW1iZXIiXSxbYV0pO2I9TShhKTtyZXR1cm4gYn1KUy5QPSJpbnRlcm5hbC5pc0ZlYXR1cmVFbmFibGVkIjtmdW5jdGlvbiBLUygpe3ZhciBhPSExO3JldHVybiBhfUtTLlA9ImludGVybmFsLmlzRnBmZSI7ZnVuY3Rpb24gTFMoKXt2YXIgYT0hMTtyZXR1cm4gYX1MUy5QPSJpbnRlcm5hbC5pc0djcEJyb3dzZXIiO2Z1bmN0aW9uIE1TKCl7dmFyIGE9ITE7cmV0dXJuIGF9TVMuUD0iaW50ZXJuYWwuaXNMYW5kaW5nUGFnZSI7ZnVuY3Rpb24gTlMoKXt2YXIgYT0hMTtyZXR1cm4gYX1OUy5QPSJpbnRlcm5hbC5pc09ndCI7ZnVuY3Rpb24gT1MoKXt2YXIgYTtyZXR1cm4gYX1PUy5QPSJpbnRlcm5hbC5pc1NhZmFyaVBjbUVsaWdpYmxlQnJvd3NlciI7ZnVuY3Rpb24gUFMoKXt2YXIgYT1RaChmdW5jdGlvbihiKXtYRih0aGlzKS5sb2coImVycm9yIixiKX0pO2EucHVibGljTmFtZT0iSlNPTiI7cmV0dXJuIGF9O2Z1bmN0aW9uIFFTKGEpe3ZhciBiPXZvaWQgMDtyZXR1cm4gVWQoYil9UVMuUD0iaW50ZXJuYWwubGVnYWN5UGFyc2VVcmwiO2Z1bmN0aW9uIFJTKCl7cmV0dXJuITF9CnZhciBTUz17Z2V0SXRlbTpmdW5jdGlvbihhKXt2YXIgYj1udWxsO3JldHVybiBifSxzZXRJdGVtOmZ1bmN0aW9uKGEsYil7cmV0dXJuITF9LHJlbW92ZUl0ZW06ZnVuY3Rpb24oYSl7fX07ZnVuY3Rpb24gVFMoKXt9VFMucHVibGljTmFtZT0ibG9nVG9Db25zb2xlIjtmdW5jdGlvbiBVUyhhLGIpe2lmKCFsaChhKXx8IWVoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJPYmplY3QiXSxhcmd1bWVudHMpO3ZhciBjPWEsZD1UZChiLHRoaXMuVCksZT1ZQygpLGY9YkMoYywhMCk7ZiYmVEMoZS5ILGYsZCk7fVVTLlA9ImludGVybmFsLm1lcmdlUmVtb3RlQ29uZmlnIjtmdW5jdGlvbiBWUyhhLGIsYyl7Yz1jPT09dm9pZCAwPyEwOmM7dmFyIGQ9W107cmV0dXJuIFVkKGQpfVZTLlA9ImludGVybmFsLnBhcnNlQ29va2llVmFsdWVzRnJvbVN0cmluZyI7ZnVuY3Rpb24gV1MoYSl7dmFyIGI9dm9pZCAwO2lmKHR5cGVvZiBhIT09InN0cmluZyIpcmV0dXJuO2EmJlNiKGEsIi8vIikmJihhPUIubG9jYXRpb24ucHJvdG9jb2wrYSk7aWYodHlwZW9mIFVSTD09PSJmdW5jdGlvbiIpe3ZhciBjO2E6e3ZhciBkO3RyeXtkPW5ldyBVUkwoYSl9Y2F0Y2goeCl7Yz12b2lkIDA7YnJlYWsgYX1mb3IodmFyIGU9e30sZj1BcnJheS5mcm9tKGQuc2VhcmNoUGFyYW1zKSxnPTA7ZzxmLmxlbmd0aDtnKyspe3ZhciBoPWZbZ11bMF0sbD1mW2ddWzFdO2UuaGFzT3duUHJvcGVydHkoaCk/dHlwZW9mIGVbaF09PT0ic3RyaW5nIj9lW2hdPVtlW2hdLGxdOmVbaF0ucHVzaChsKTplW2hdPWx9Yz17aHJlZjpkLmhyZWYsb3JpZ2luOmQub3JpZ2luLHByb3RvY29sOmQucHJvdG9jb2wsdXNlcm5hbWU6ZC51c2VybmFtZSxwYXNzd29yZDpkLnBhc3N3b3JkLGhvc3Q6ZC5ob3N0LGhvc3RuYW1lOmQuaG9zdG5hbWUsCnBvcnQ6ZC5wb3J0LHBhdGhuYW1lOmQucGF0aG5hbWUsc2VhcmNoOmQuc2VhcmNoLHNlYXJjaFBhcmFtczplLGhhc2g6ZC5oYXNofX1yZXR1cm4gVWQoYyl9dmFyIG47dHJ5e249UmooYSl9Y2F0Y2goeCl7cmV0dXJufWlmKCFuLnByb3RvY29sfHwhbi5ob3N0KXJldHVybjt2YXIgcD17fTtpZihuLnNlYXJjaClmb3IodmFyIHE9bi5zZWFyY2gucmVwbGFjZSgiPyIsIiIpLnNwbGl0KCImIikscj0wO3I8cS5sZW5ndGg7cisrKXt2YXIgdD1xW3JdLnNwbGl0KCI9IiksdT10WzBdLHY9S2oodC5zcGxpY2UoMSkuam9pbigiPSIpKXx8IiI7dj12LnJlcGxhY2UoL1wrL2csIiAiKTtwLmhhc093blByb3BlcnR5KHUpP3R5cGVvZiBwW3VdPT09InN0cmluZyI/cFt1XT1bcFt1XSx2XTpwW3VdLnB1c2godik6cFt1XT12fW4uc2VhcmNoUGFyYW1zPXA7bi5vcmlnaW49bi5wcm90b2NvbCsiLy8iK24uaG9zdDtuLnVzZXJuYW1lPSIiO24ucGFzc3dvcmQ9IiI7Yj1VZChuKTsKcmV0dXJuIGJ9V1MucHVibGljTmFtZT0icGFyc2VVcmwiO2Z1bmN0aW9uIFhTKGEpe31YUy5QPSJpbnRlcm5hbC5wcm9jZXNzQXNOZXdFdmVudCI7ZnVuY3Rpb24gWVMoYSxiLGMpe3ZhciBkO3JldHVybiBkfVlTLlA9ImludGVybmFsLnB1c2hUb0RhdGFMYXllciI7ZnVuY3Rpb24gWlMoYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpLGM9ITE7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO2Zvcih2YXIgZD1bdGhpcyxhXSxlPW0oYiksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpZC5wdXNoKFRkKGYudmFsdWUsdGhpcy5ULDEpKTt0cnl7TC5hcHBseShudWxsLGQpLGM9ITB9Y2F0Y2goZyl7cmV0dXJuITF9cmV0dXJuIGN9WlMucHVibGljTmFtZT0icXVlcnlQZXJtaXNzaW9uIjtmdW5jdGlvbiAkUyhhKXt2YXIgYj10aGlzO30kUy5QPSJpbnRlcm5hbC5xdWV1ZUFkc1RyYW5zbWlzc2lvbiI7ZnVuY3Rpb24gYVQoYSl7dmFyIGI9dm9pZCAwO3JldHVybiBifWFULnB1YmxpY05hbWU9InJlYWRBbmFseXRpY3NTdG9yYWdlIjtmdW5jdGlvbiBiVCgpe3ZhciBhPSIiO3JldHVybiBhfWJULnB1YmxpY05hbWU9InJlYWRDaGFyYWN0ZXJTZXQiO2Z1bmN0aW9uIGNUKCl7cmV0dXJuIEUoMTkpfWNULlA9ImludGVybmFsLnJlYWREYXRhTGF5ZXJOYW1lIjtmdW5jdGlvbiBkVCgpe3ZhciBhPSIiO3JldHVybiBhfWRULnB1YmxpY05hbWU9InJlYWRUaXRsZSI7ZnVuY3Rpb24gZVQoYSxiKXt2YXIgYz10aGlzO2lmKCFsaChhKXx8IWhoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJmdW5jdGlvbiJdLGFyZ3VtZW50cyk7TE0oYSxmdW5jdGlvbihkKXtiLmludm9rZShjLlQsVWQoZCxjLlQsMSkpfSk7fWVULlA9ImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siO2Z1bmN0aW9uIGZUKGEsYil7aWYoIWxoKGEpfHwhZWgoYikmJiFnaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7aWYoQmgoWEYodGhpcykuUGIoKSkpcmV0dXJuITE7dmFyIGMsZCxlPWJDKGEsITApO2lmKCFlKXJldHVybiExO3N3aXRjaChlLnByZWZpeCl7Y2FzZSAiQVciOmM9dE47ZD1jby5pYS5jYjticmVhaztjYXNlICJEQyI6Yz1JTjtkPWNvLmlhLmNiO2JyZWFrO2Nhc2UgIkdGIjpjPU5OO2Q9Y28uaWEuZ2Q7YnJlYWs7Y2FzZSAiSEEiOmM9UE47ZD1jby5pYS5nZDticmVhaztjYXNlICJVQSI6Yz1mTztkPWNvLmlhLmdkO2JyZWFrO2Nhc2UgIk1DIjpjPWlTKGUpO2Q9Y28uaWEueGQ7YnJlYWs7Y2FzZSAiRyI6cmV0dXJuIGhTKGEpLCEwO2RlZmF1bHQ6cmV0dXJuITF9dmFyIGY9YSwKZz1jLGg9ZCxsPVRkKGIsdGhpcy5ULDEpLG49WUMoKSxwPWJDKGYsITApO3AmJm4uSC5yZWdpc3RlcihwLGcsaCxsKTtyZXR1cm4hMH1mVC5QPSJpbnRlcm5hbC5yZWdpc3RlckRlc3RpbmF0aW9uIjt2YXIgZ1Q9WyJldmVudCJdO2Z1bmN0aW9uIGhUKGEsYixjKXt9aFQuUD0iaW50ZXJuYWwucmVnaXN0ZXJHdGFnQ29tbWFuZExpc3RlbmVyIjtmdW5jdGlvbiBpVChhLGIpe3ZhciBjPSExO3JldHVybiBjfWlULlA9ImludGVybmFsLnJlbW92ZURhdGFMYXllckV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIGpUKGEsYil7fQpqVC5QPSJpbnRlcm5hbC5yZW1vdmVGb3JtRGF0YSI7ZnVuY3Rpb24ga1QoKXt9a1QucHVibGljTmFtZT0icmVzZXREYXRhTGF5ZXIiO2Z1bmN0aW9uIGxUKGEsYixjKXt2YXIgZD12b2lkIDA7cmV0dXJuIGR9bFQuUD0iaW50ZXJuYWwuc2NydWJVcmxQYXJhbXMiO2Z1bmN0aW9uIG1UKGEpe31tVC5QPSJpbnRlcm5hbC5zZW5kQWRzSGl0IjtmdW5jdGlvbiBuVChhLGIsYyxkKXtpZihhcmd1bWVudHMubGVuZ3RoPDJ8fCFmaChkKXx8IWZoKGMpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJhbnkiLCJhbnkiLCJPYmplY3R8dW5kZWZpbmVkIiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGU9Yz9UZChjLHRoaXMuVCwxKTp7fSxmPVRkKGEpLGc9QXJyYXkuaXNBcnJheShmKT9mOltmXTtiPVN0cmluZyhiKTt2YXIgaD1kP1RkKGQpOnt9LGw9WEYodGhpcyk7aC5vcmlnaW5hdGluZ0VudGl0eT10RyhsKTtsLnByaW9yaXR5UXVldWUmJihoLnByaW9yaXR5UXVldWU9bC5wcmlvcml0eVF1ZXVlKTtmb3IodmFyIG49MDtuPGcubGVuZ3RoO24rKyl7dmFyIHA9Z1tuXTtpZih0eXBlb2YgcD09PSJzdHJpbmciKXt2YXIgcT17fTtFZChlLHEpO3ZhciByPXt9O0VkKGgscik7dmFyIHQ9c0MocCxiLHEpO21EKHQsCmguZXZlbnRJZHx8bC5ldmVudElkLHIpfX19blQuUD0iaW50ZXJuYWwuc2VuZEd0YWdFdmVudCI7ZnVuY3Rpb24gb1QoYSxiLGMpe31vVC5wdWJsaWNOYW1lPSJzZW5kUGl4ZWwiO2Z1bmN0aW9uIHBUKGEsYil7fXBULlA9ImludGVybmFsLnNldEFuY2hvckhyZWYiO2Z1bmN0aW9uIHFUKGEpe31xVC5QPSJpbnRlcm5hbC5zZXRDb250YWluZXJDb25zZW50RGVmYXVsdHMiO2Z1bmN0aW9uIHJUKGEsYixjLGQpe3ZhciBlPXRoaXM7ZD1kPT09dm9pZCAwPyEwOmQ7dmFyIGY9ITE7CnJldHVybiBmfXJULnB1YmxpY05hbWU9InNldENvb2tpZSI7ZnVuY3Rpb24gc1QoYSl7fXNULlA9ImludGVybmFsLnNldENvcmVQbGF0Zm9ybVNlcnZpY2VzIjtmdW5jdGlvbiB0VChhLGIpe310VC5QPSJpbnRlcm5hbC5zZXREYXRhTGF5ZXJWYWx1ZSI7ZnVuY3Rpb24gdVQoYSl7fXVULnB1YmxpY05hbWU9InNldERlZmF1bHRDb25zZW50U3RhdGUiO2Z1bmN0aW9uIHZUKGEsYil7fXZULlA9ImludGVybmFsLnNldERlbGVnYXRlZENvbnNlbnRUeXBlIjtmdW5jdGlvbiB3VChhLGIpe313VC5QPSJpbnRlcm5hbC5zZXRGb3JtQWN0aW9uIjtmdW5jdGlvbiB4VChhLGIsYyl7Yz1jPT09dm9pZCAwPyExOmM7aWYoIWxoKGEpfHwhb2goYykpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImFueSIsImJvb2xlYW58dW5kZWZpbmVkIl0sYXJndW1lbnRzKTtpZigha20oYSkpdGhyb3cgRXJyb3IoInNldEluQ3Jvc3NDb250YWluZXJEYXRhIHJlcXVpcmVzIHZhbGlkIENyb3NzQ29udGFpbmVyU2NoZW1hIGtleS4iKTsoY3x8bm0oYSk9PT12b2lkIDApJiZtbShhLFRkKGIsdGhpcy5ULDEpKTt9eFQuUD0iaW50ZXJuYWwuc2V0SW5Dcm9zc0NvbnRhaW5lckRhdGEiO2Z1bmN0aW9uIHlUKGEsYixjKXtyZXR1cm4hMX15VC5wdWJsaWNOYW1lPSJzZXRJbldpbmRvdyI7ZnVuY3Rpb24gelQoYSxiLGMpe316VC5QPSJpbnRlcm5hbC5zZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiO2Z1bmN0aW9uIEFUKGEsYixjKXtpZighbGgoYSl8fCFsaChiKXx8YXJndW1lbnRzLmxlbmd0aCE9PTMpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInN0cmluZyIsImFueSJdLGFyZ3VtZW50cyk7Zm9yKHZhciBkPWIuc3BsaXQoIi4iKSxlPWVEKGEpLGY9MDtmPGQubGVuZ3RoLTE7ZisrKXtpZihlW2RbZl1dPT09dm9pZCAwKWVbZFtmXV09e307ZWxzZSBpZighQ2QoZVtkW2ZdXSkpdGhyb3cgRXJyb3IoInNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciBmYWlsZWQsIHBhdGggY29udGFpbnMgYSBub24tb2JqZWN0IHR5cGU6ICIrZFtmXSk7ZT1lW2RbZl1dfWVbZFtmXV09VGQoYyx0aGlzLlQsMSk7fUFULlA9ImludGVybmFsLnNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciI7ZnVuY3Rpb24gQlQoYSxiKXt9CkJULlA9ImludGVybmFsLnNldFRyYW5zbWlzc2lvbk1vZGUiO2Z1bmN0aW9uIENUKGEsYixjLGQpe3ZhciBlPXRoaXM7fUNULnB1YmxpY05hbWU9InNoYTI1NiI7ZnVuY3Rpb24gRFQoYSxiLGMpe30KRFQuUD0iaW50ZXJuYWwuc29ydFJlbW90ZUNvbmZpZ1BhcmFtZXRlcnMiO2Z1bmN0aW9uIEVUKGEpe31FVC5QPSJpbnRlcm5hbC5zdG9yZUFkc0JyYWlkTGFiZWxzIjtmdW5jdGlvbiBGVChhLGIpe3ZhciBjPXZvaWQgMDtyZXR1cm4gY31GVC5QPSJpbnRlcm5hbC5zdWJzY3JpYmVUb0Nyb3NzQ29udGFpbmVyRGF0YSI7ZnVuY3Rpb24gR1QoYSl7fUdULlA9ImludGVybmFsLnRhc2tTZW5kQWRzSGl0cyI7dmFyIEhUPXtnZXRJdGVtOmZ1bmN0aW9uKGEpe3ZhciBiPW51bGw7TCh0aGlzLCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSIpO3ZhciBjPVhGKHRoaXMpLlBiKCksZD1hbCg3LGZ1bmN0aW9uKCl7cmV0dXJue319KTtkW2NdJiYoYj1kW2NdLmhhc093blByb3BlcnR5KCJndG0uIithKT9kW2NdWyJndG0uIithXTpudWxsKTtyZXR1cm4gYn0sc2V0SXRlbTpmdW5jdGlvbihhLGIpe0wodGhpcywiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiKTt2YXIgYz1YRih0aGlzKS5QYigpLGQ9YWwoNyxmdW5jdGlvbigpe3JldHVybnt9fSk7ZFtjXT1kW2NdfHx7fTtkW2NdWyJndG0uIithXT1iO30sCnJlbW92ZUl0ZW06ZnVuY3Rpb24oYSl7TCh0aGlzLCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSIpO3ZhciBiPVhGKHRoaXMpLlBiKCksYz1hbCg3LGZ1bmN0aW9uKCl7cmV0dXJue319KTtpZighY1tiXXx8IWNbYl0uaGFzT3duUHJvcGVydHkoImd0bS4iK2EpKXJldHVybjtkZWxldGUgY1tiXVsiZ3RtLiIrYV07fSxjbGVhcjpmdW5jdGlvbigpe0wodGhpcywiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiKTt2YXIgYT1YRih0aGlzKS5QYigpO2RlbGV0ZSBhbCg3LGZ1bmN0aW9uKCl7cmV0dXJue319KVthXTt9LApwdWJsaWNOYW1lOiJ0ZW1wbGF0ZVN0b3JhZ2UifTtmdW5jdGlvbiBJVChhLGIpe3ZhciBjPSExO3JldHVybiBjfUlULlA9ImludGVybmFsLnRlc3RSZWdleCI7ZnVuY3Rpb24gSlQoYSl7dmFyIGI7cmV0dXJuIGJ9O2Z1bmN0aW9uIEtUKGEsYil7fUtULlA9ImludGVybmFsLnRyYWNrVXNhZ2UiO2Z1bmN0aW9uIExUKGEsYil7dmFyIGM7cmV0dXJuIGN9TFQuUD0iaW50ZXJuYWwudW5zdWJzY3JpYmVGcm9tQ3Jvc3NDb250YWluZXJEYXRhIjtmdW5jdGlvbiBNVChhKXt9TVQucHVibGljTmFtZT0idXBkYXRlQ29uc2VudFN0YXRlIjtmdW5jdGlvbiBOVChhKXt2YXIgYj0hMTtyZXR1cm4gYn1OVC5QPSJpbnRlcm5hbC51c2VyRGF0YU5lZWRzRW5jcnlwdGlvbiI7dmFyIE9UPWZ1bmN0aW9uKCl7dGhpcy5IPW5ldyBhaX0sUVQ9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oYSl7dmFyIGI7dmFyIGM9UFQuSDtpZihjLmNvbnRhaW5zKGEpKWI9Yy5nZXQoYSx0aGlzKTtlbHNle3ZhciBkO2lmKGQ9Yy5ILmhhc093blByb3BlcnR5KGEpKXt2YXIgZT10aGlzLlQueGIoKTtpZihlKXt2YXIgZj0hMSxnPWUuUGIoKTtpZihnKXtCaChnKXx8KGY9ITApO31kPWZ9ZWxzZSBkPSEwfWlmKGQpe3ZhciBoPWMuSC5oYXNPd25Qcm9wZXJ0eShhKT9jLkhbYV06dm9pZCAwO2I9aH1lbHNlIHRocm93IEVycm9yKGErIiBpcyBub3QgYSB2YWxpZCBBUEkgbmFtZS4iKTt9cmV0dXJuIGJ9fSxQVDtmdW5jdGlvbiBSVChhLGIsYyl7UFR8fChQVD1uZXcgT1QpO1BULkguYWRkKGEsYixjKX1mdW5jdGlvbiBTVChhLGIpe1BUfHwoUFQ9bmV3IE9UKTt2YXIgYz1QVC5IO2lmKGMuSC5oYXNPd25Qcm9wZXJ0eShhKSl0aHJvdyBFcnJvcigiQXR0ZW1wdGluZyB0byBhZGQgYSBwcml2YXRlIGZ1bmN0aW9uIHdoaWNoIGFscmVhZHkgZXhpc3RzOiAiK2ErIi4iKTtpZihjLmNvbnRhaW5zKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFkZCBhIHByaXZhdGUgZnVuY3Rpb24gd2l0aCBhbiBleGlzdGluZyBBUEkgbmFtZTogIithKyIuIik7Yy5IW2FdPXliKGIpP3RoKGEsYik6dWgoYSxiKX07ZnVuY3Rpb24gVFQoYSxiKXtmdW5jdGlvbiBjKGQpe2lmKCFlaChkKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0Il0sYXJndW1lbnRzKTt2YXIgZT1UZChkLHRoaXMuVCwxKS5yYigpO2EoZSl9Yy5QPSJpbnRlcm5hbC4iK2I7cmV0dXJuIGN9O2Z1bmN0aW9uIFVUKCl7dmFyIGE9ZnVuY3Rpb24oYyl7cmV0dXJuIHZvaWQgU1QoYy5QLGMpfSxiPWZ1bmN0aW9uKGMpe3JldHVybiB2b2lkIFJUKGMucHVibGljTmFtZSxjKX07YihSRik7YihZRik7YihSRyk7YihURyk7YihVRyk7YihkSCk7YihmSCk7YihoSSk7YihQUygpKTtiKGpJKTtiKE9PKTtiKFBPKTtiKGxQKTtiKG1QKTtiKG5QKTtiKHVQKTtiKHZQKTtiKHJTKTtiKHVTKTtiKEJTKTtiKERTKTtiKFRTKTtiKFdTKTtiKFpTKTtiKGFUKTtiKGJUKTtiKGRUKTtiKG9UKTtiKHJUKTtiKHVUKTtiKHlUKTtiKENUKTtiKEhUKTtiKE1UKTtSVCgiTWF0aCIsemgoKSk7UlQoIk9iamVjdCIsWmgpO1JUKCJUZXN0SGVscGVyIixjaSgpKTtSVCgiYXNzZXJ0QXBpIix3aCk7UlQoImFzc2VydFRoYXQiLHhoKTtSVCgiZGVjb2RlVXJpIixDaCk7UlQoImRlY29kZVVyaUNvbXBvbmVudCIsRGgpO1JUKCJlbmNvZGVVcmkiLEVoKTtSVCgiZW5jb2RlVXJpQ29tcG9uZW50IixGaCk7UlQoImZhaWwiLApMaCk7UlQoImdlbmVyYXRlUmFuZG9tIixOaCk7UlQoImdldFRpbWVzdGFtcCIsT2gpO1JUKCJnZXRUaW1lc3RhbXBNaWxsaXMiLE9oKTtSVCgiZ2V0VHlwZSIsUGgpO1JUKCJtYWtlSW50ZWdlciIsUmgpO1JUKCJtYWtlTnVtYmVyIixTaCk7UlQoIm1ha2VTdHJpbmciLFRoKTtSVCgibWFrZVRhYmxlTWFwIixVaCk7UlQoIm1vY2siLFhoKTtSVCgibW9ja09iamVjdCIsWWgpO1JUKCJmcm9tQmFzZTY0IixITywhKCJhdG9iImluIEEpKTtSVCgibG9jYWxTdG9yYWdlIixTUywhUlMoKSk7UlQoInRvQmFzZTY0IixKVCwhKCJidG9hImluIEEpKTthKFFGKTthKFVGKTthKG5HKTthKHNHKTthKElHKTthKFBHKTthKFNHKTthKFZHKTthKFdHKTthKFpHKTthKCRHKTthKGFIKTthKGJIKTthKGNIKTthKGVIKTthKGdIKTthKGdJKTthKGlJKTthKGtJKTthKGxJKTthKG1JKTthKG5JKTthKG9JKTthKGZKKTthKG1KKTthKHRKKTthKHVKKTthKEFKKTthKEZKKTthKEtKKTthKFJKKTthKFdKKTthKGdLKTsKYShpSyk7YSh2Syk7YSh3Syk7YSh4Syk7YShGTyk7YShHTyk7YShJTyk7YShKTyk7YShLTyk7YShMTyk7YShNTyk7YShOTyk7YShRTyk7YShSTyk7YShTTyk7YShUTyk7YShVTyk7YShWTyk7YShXTyk7YShYTyk7YShZTyk7YShaTyk7YSgkTyk7YShhUCk7YShiUCk7YShjUCk7YShkUCk7YShlUCk7YShmUCk7YShnUCk7YShoUCk7YShpUCk7YShqUCk7YShrUCk7YShvUCk7YShwUCk7YShxUCk7YShyUCk7YShzUCk7YSh0UCk7YSh3UCk7YShvUyk7YShwUyk7YSh0Uyk7YSh2Uyk7YShDUyk7YShFUyk7YShGUyk7YShHUyk7YShIUyk7YShJUyk7YShKUyk7YShLUyk7YShMUyk7YShNUyk7YShOUyk7YShPUyk7YShRUyk7YShHRyk7YShVUyk7YShWUyk7YShYUyk7YShZUyk7YSgkUyk7YShjVCk7YShlVCk7YShmVCk7YShoVCk7YShpVCk7YShqVCk7YShsVCk7YShtVCk7YShuVCk7YShwVCk7YShxVCk7YShzVCk7YSh0VCk7YSh2VCk7YSh3VCk7YSh4VCk7YSh6VCk7YShBVCk7YShCVCk7YShEVCk7CmEoRVQpO2EoRlQpO2EoR1QpO2EoSVQpO2EoS1QpO2EoTFQpO2EoTlQpO1NUKCJpbnRlcm5hbC5JZnJhbWluZ1N0YXRlU2NoZW1hIixzUygpKTtTVCgiaW50ZXJuYWwucXVpY2tIYXNoIixNaCk7YShUVChNRiwidGFza1NldEFkc1RyYW5zbWlzc2lvblR5cGUiKSksYShUVChQRiwidGFza1NldFVuaXZlcnNhbFBhcmFtcyIpKTtQVHx8KFBUPW5ldyBPVCk7cmV0dXJuIFFUKCl9O3ZhciBKRjtmdW5jdGlvbiBWVCgpe0pGLnNkKGZ1bmN0aW9uKGEsYixjKXtsaigpO3ZhciBkPWpqO2QuSC5TQU5EQk9YRURfSlNfU0VNQVBIT1JFPWQuSC5TQU5EQk9YRURfSlNfU0VNQVBIT1JFfHwwO2QuSC5TQU5EQk9YRURfSlNfU0VNQVBIT1JFKys7dHJ5e3JldHVybiBhLmFwcGx5KGIsYyl9ZmluYWxseXtsaigpLGpqLkguU0FOREJPWEVEX0pTX1NFTUFQSE9SRS0tfX0pfWZ1bmN0aW9uIFdUKGEpe2lmKGEmJmEubGVuZ3RoKWZvcih2YXIgYj1hbCgyNyxmdW5jdGlvbigpe3JldHVybnt9fSksYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hW2NdLnJlcGxhY2UoL15fKi8sIiIpO2JbZF09WyJzYW5kYm94ZWRTY3JpcHRzIl19fQpmdW5jdGlvbiBYVChhKXtpZihhKXt2YXIgYj1hbCgyNyxmdW5jdGlvbigpe3JldHVybnt9fSk7R2IoYSxmdW5jdGlvbihjLGQpe2Zvcih2YXIgZT0wO2U8ZC5sZW5ndGg7ZSsrKXt2YXIgZj1kW2VdLnJlcGxhY2UoL15fKi8sIiIpO2JbZl09YltmXXx8W107YltmXS5wdXNoKGMpfX0pfX07ZnVuY3Rpb24gWlQoYSl7bUQocEMoImRldmVsb3Blcl9pZC4iK2EsITApLDAse30pfTtmdW5jdGlvbiAkVChhLGIpe3JldHVybiBFZChhLGJ8fG51bGwpfWZ1bmN0aW9uIFkoYSl7cmV0dXJuIHdpbmRvdy5lbmNvZGVVUklDb21wb25lbnQoYSl9ZnVuY3Rpb24gYVUoYSl7WmMoYSx2b2lkIDAsdm9pZCAwKX1mdW5jdGlvbiBiVShhKXt2YXIgYj1bInZlaW50ZXJhY3RpdmUuY29tIiwidmUtaW50ZXJhY3RpdmUuY24iXTtpZighYSlyZXR1cm4hMTt2YXIgYz1MaihSaihhKSwiaG9zdCIpO2lmKCFjKXJldHVybiExO2Zvcih2YXIgZD0wO2ImJmQ8Yi5sZW5ndGg7ZCsrKXt2YXIgZT1iW2RdJiZiW2RdLnRvTG93ZXJDYXNlKCk7aWYoZSl7dmFyIGY9Yy5sZW5ndGgtZS5sZW5ndGg7Zj4wJiZlLmNoYXJBdCgwKSE9PSIuIiYmKGYtLSxlPSIuIitlKTtpZihmPj0wJiZjLmluZGV4T2YoZSxmKT09PWYpcmV0dXJuITB9fXJldHVybiExfQpmdW5jdGlvbiBjVShhLGIsYyl7Zm9yKHZhciBkPXt9LGU9ITEsZj0wO2EmJmY8YS5sZW5ndGg7ZisrKWFbZl0mJmFbZl0uaGFzT3duUHJvcGVydHkoYikmJmFbZl0uaGFzT3duUHJvcGVydHkoYykmJihkW2FbZl1bYl1dPWFbZl1bY10sZT0hMCk7cmV0dXJuIGU/ZDpudWxsfWZ1bmN0aW9uIGRVKGEsYil7dmFyIGM9e307aWYoYSlmb3IodmFyIGQgaW4gYSlhLmhhc093blByb3BlcnR5KGQpJiYoY1tkXT1hW2RdKTtpZihiKXt2YXIgZT1jVShiLCJwYXJhbWV0ZXIiLCJwYXJhbWV0ZXJWYWx1ZSIpO2UmJihjPSRUKGUsYykpfXJldHVybiBjfWZ1bmN0aW9uIGVVKGEsYixjKXtyZXR1cm4gYT09PXZvaWQgMHx8YT09PWM/YjphfWZ1bmN0aW9uIGZVKGEsYixjKXtyZXR1cm4gVWMoYSxiLGMsdm9pZCAwKX1mdW5jdGlvbiBnVShhLGIpe0FbYV09Yn1mdW5jdGlvbiBoVShhLGIsYyl7dmFyIGQ9QTtiJiYoZFthXT09PXZvaWQgMHx8YyYmIWRbYV0pJiYoZFthXT1iKTtyZXR1cm4gZFthXX12YXIgaVU9e30salU9WC5WO3ZhciBaPXtzZWN1cml0eUdyb3Vwczp7fX07CgpaLnNlY3VyaXR5R3JvdXBzLmFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlPVsiZ29vZ2xlIl0sWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlPWZ1bmN0aW9uKCl7cmV0dXJue2Fzc2VydDpmdW5jdGlvbigpe30sYWE6ZnVuY3Rpb24oKXtyZXR1cm57fX19fSxaLl9fYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UuTz0iYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZS5pc1ZlbmRvclRlbXBsYXRlPSEwLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZS5wcmlvcml0eU92ZXJyaWRlPTAsWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlLmlzSW5mcmFzdHJ1Y3R1cmU9ITEsWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlWyI1Il09ITEsWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlWyI2Il09ITE7CgoKClouc2VjdXJpdHlHcm91cHMucmVhZF9ldmVudF9kYXRhPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue2tleTpjfX0oZnVuY3Rpb24oYil7Wi5fX3JlYWRfZXZlbnRfZGF0YT1iO1ouX19yZWFkX2V2ZW50X2RhdGEuTz0icmVhZF9ldmVudF9kYXRhIjtaLl9fcmVhZF9ldmVudF9kYXRhLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX3JlYWRfZXZlbnRfZGF0YS5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX3JlYWRfZXZlbnRfZGF0YS5pc0luZnJhc3RydWN0dXJlPSExO1ouX19yZWFkX2V2ZW50X2RhdGFbIjUiXT0hMTtaLl9fcmVhZF9ldmVudF9kYXRhWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF9ldmVudERhdGFBY2Nlc3MsZD1iLnZ0cF9rZXlQYXR0ZXJuc3x8W10sZT1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihmLGcpe2lmKGchPW51bGwmJiF6YihnKSl0aHJvdyBlKGYse2tleTpnfSwiS2V5IG11c3QgYmUgYSBzdHJpbmcuIik7CmlmKGMhPT0iYW55Iil7dHJ5e2lmKGM9PT0ic3BlY2lmaWMiJiZnIT1udWxsJiZFZyhnLGQpKXJldHVybn1jYXRjaChoKXt0aHJvdyBlKGYse2tleTpnfSwiSW52YWxpZCBrZXkgZmlsdGVyLiIpO310aHJvdyBlKGYse2tleTpnfSwiUHJvaGliaXRlZCByZWFkIGZyb20gZXZlbnQgZGF0YS4iKTt9fSxhYTphfX0pfSgpOwoKWi5zZWN1cml0eUdyb3Vwcy5kZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57b3B0aW9uczp7Zml4TWlzc2luZ0FwaTohIWMuZml4TWlzc2luZ0FwaX19fShmdW5jdGlvbihiKXtaLl9fZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzPWI7Wi5fX2RldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cy5PPSJkZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMiO1ouX19kZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2RldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50c1siNSJdPSExO1ouX19kZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHNbIjYiXT0KITF9KShmdW5jdGlvbihiKXt2YXIgYz0hIWIudnRwX2FsbG93Rml4TWlzc2luZ0phdmFTY3JpcHRBcGksZD1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihlLGYpe2lmKCFjJiZmJiZmLmZpeE1pc3NpbmdBcGkpdGhyb3cgZChlLHt9LCJQcm9oaWJpdGVkIG9wdGlvbjogZml4TWlzc2luZ0FwaS4iKTt9LGFhOmF9fSl9KCk7CgoKCgoKClouc2VjdXJpdHlHcm91cHMuZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50cz1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYSgpe3JldHVybnt9fShmdW5jdGlvbihiKXtaLl9fZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50cz1iO1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzLk89ImRldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMiO1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMucHJpb3JpdHlPdmVycmlkZT0wO1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2RldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHNbIjUiXT0hMTtaLl9fZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50c1siNiJdPSExfSkoZnVuY3Rpb24oKXtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKCl7fSxhYTphfX0pfSgpOwoKClouc2VjdXJpdHlHcm91cHMuZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue29wdGlvbnM6Y319KGZ1bmN0aW9uKGIpe1ouX19kZXRlY3RfbGlua19jbGlja19ldmVudHM9YjtaLl9fZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzLk89ImRldGVjdF9saW5rX2NsaWNrX2V2ZW50cyI7Wi5fX2RldGVjdF9saW5rX2NsaWNrX2V2ZW50cy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19kZXRlY3RfbGlua19jbGlja19ldmVudHMucHJpb3JpdHlPdmVycmlkZT0wO1ouX19kZXRlY3RfbGlua19jbGlja19ldmVudHMuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzWyI1Il09ITE7Wi5fX2RldGVjdF9saW5rX2NsaWNrX2V2ZW50c1siNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfYWxsb3dXYWl0Rm9yVGFncyxkPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGUsCmYpe2lmKCFjJiZmJiZmLndhaXRGb3JUYWdzKXRocm93IGQoZSx7fSwiUHJvaGliaXRlZCBvcHRpb24gd2FpdEZvclRhZ3MuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmRldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57b3B0aW9uczpjfX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHM9YjtaLl9fZGV0ZWN0X2Zvcm1fc3VibWl0X2V2ZW50cy5PPSJkZXRlY3RfZm9ybV9zdWJtaXRfZXZlbnRzIjtaLl9fZGV0ZWN0X2Zvcm1fc3VibWl0X2V2ZW50cy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19kZXRlY3RfZm9ybV9zdWJtaXRfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X2Zvcm1fc3VibWl0X2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfZm9ybV9zdWJtaXRfZXZlbnRzWyI1Il09ITE7Wi5fX2RldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2FsbG93V2FpdEZvclRhZ3MsZD1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7CnJldHVybnthc3NlcnQ6ZnVuY3Rpb24oZSxmKXtpZighYyYmZiYmZi53YWl0Rm9yVGFncyl0aHJvdyBkKGUse30sIlByb2hpYml0ZWQgb3B0aW9uIHdhaXRGb3JUYWdzLiIpO30sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5yZWFkX2NvbnRhaW5lcl9kYXRhPVsiZ29vZ2xlIl0sWi5fX3JlYWRfY29udGFpbmVyX2RhdGE9ZnVuY3Rpb24oKXtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKCl7fSxhYTpmdW5jdGlvbigpe3JldHVybnt9fX19LFouX19yZWFkX2NvbnRhaW5lcl9kYXRhLk89InJlYWRfY29udGFpbmVyX2RhdGEiLFouX19yZWFkX2NvbnRhaW5lcl9kYXRhLmlzVmVuZG9yVGVtcGxhdGU9ITAsWi5fX3JlYWRfY29udGFpbmVyX2RhdGEucHJpb3JpdHlPdmVycmlkZT0wLFouX19yZWFkX2NvbnRhaW5lcl9kYXRhLmlzSW5mcmFzdHJ1Y3R1cmU9ITEsWi5fX3JlYWRfY29udGFpbmVyX2RhdGFbIjUiXT0hMSxaLl9fcmVhZF9jb250YWluZXJfZGF0YVsiNiJdPSExOwpaLnNlY3VyaXR5R3JvdXBzLmxpc3Rlbl9kYXRhX2xheWVyPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue2V2ZW50TmFtZTpjfX0oZnVuY3Rpb24oYil7Wi5fX2xpc3Rlbl9kYXRhX2xheWVyPWI7Wi5fX2xpc3Rlbl9kYXRhX2xheWVyLk89Imxpc3Rlbl9kYXRhX2xheWVyIjtaLl9fbGlzdGVuX2RhdGFfbGF5ZXIuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fbGlzdGVuX2RhdGFfbGF5ZXIucHJpb3JpdHlPdmVycmlkZT0wO1ouX19saXN0ZW5fZGF0YV9sYXllci5pc0luZnJhc3RydWN0dXJlPSExO1ouX19saXN0ZW5fZGF0YV9sYXllclsiNSJdPSExO1ouX19saXN0ZW5fZGF0YV9sYXllclsiNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfYWNjZXNzVHlwZSxkPWIudnRwX2FsbG93ZWRFdmVudHN8fFtdLGU9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZixnKXtpZighemIoZykpdGhyb3cgZShmLHtldmVudE5hbWU6Z30sCiJFdmVudCBuYW1lIG11c3QgYmUgYSBzdHJpbmcuIik7aWYoIShjPT09ImFueSJ8fGM9PT0ic3BlY2lmaWMiJiZkLmluZGV4T2YoZyk+PTApKXRocm93IGUoZix7ZXZlbnROYW1lOmd9LCJQcm9oaWJpdGVkIGxpc3RlbiBvbiBkYXRhIGxheWVyIGV2ZW50LiIpO30sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue2RhdGFTb3VyY2U6Y319KGZ1bmN0aW9uKGIpe1ouX19kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhPWI7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEuTz0iZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSI7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YS5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YVsiNSJdPSExO1ouX19kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihkLAplKXtpZihlIT09ImF1dG8iJiZlIT09Im1hbnVhbCImJmUhPT0iY29kZSIpdGhyb3cgYyhkLHt9LCJVbmtub3duIHVzZXIgcHJvdmlkZWQgZGF0YSBzb3VyY2UuIik7aWYoYi52dHBfbGltaXREYXRhU291cmNlcylpZihlIT09ImF1dG8ifHxiLnZ0cF9hbGxvd0F1dG9EYXRhU291cmNlcyl7aWYoZT09PSJtYW51YWwiJiYhYi52dHBfYWxsb3dNYW51YWxEYXRhU291cmNlcyl0aHJvdyBjKGQse30sIkRldGVjdGlvbiBvZiB1c2VyIHByb3ZpZGVkIGRhdGEgdmlhIG1hbnVhbGx5IHNwZWNpZmllZCBDU1Mgc2VsZWN0b3JzIGlzIG5vdCBhbGxvd2VkLiIpO2lmKGU9PT0iY29kZSImJiFiLnZ0cF9hbGxvd0NvZGVEYXRhU291cmNlcyl0aHJvdyBjKGQse30sIkRldGVjdGlvbiBvZiB1c2VyIHByb3ZpZGVkIGRhdGEgZnJvbSBhbiBpbi1wYWdlIHZhcmlhYmxlIGlzIG5vdCBhbGxvd2VkLiIpO31lbHNlIHRocm93IGMoZCx7fSwiQXV0b21hdGljIGRldGVjdGlvbiBvZiB1c2VyIHByb3ZpZGVkIGRhdGEgaXMgbm90IGFsbG93ZWQuIik7Cn0sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5nZXRfdXJsPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXtyZXR1cm57Y29tcG9uZW50OmMscXVlcnlLZXk6ZH19KGZ1bmN0aW9uKGIpe1ouX19nZXRfdXJsPWI7Wi5fX2dldF91cmwuTz0iZ2V0X3VybCI7Wi5fX2dldF91cmwuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fZ2V0X3VybC5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2dldF91cmwuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZ2V0X3VybFsiNSJdPSExO1ouX19nZXRfdXJsWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF91cmxQYXJ0cz09PSJhbnkiP251bGw6W107YyYmKGIudnRwX3Byb3RvY29sJiZjLnB1c2goInByb3RvY29sIiksYi52dHBfaG9zdCYmYy5wdXNoKCJob3N0IiksYi52dHBfcG9ydCYmYy5wdXNoKCJwb3J0IiksYi52dHBfcGF0aCYmYy5wdXNoKCJwYXRoIiksYi52dHBfZXh0ZW5zaW9uJiZjLnB1c2goImV4dGVuc2lvbiIpLGIudnRwX3F1ZXJ5JiYKYy5wdXNoKCJxdWVyeSIpLGIudnRwX2ZyYWdtZW50JiZjLnB1c2goImZyYWdtZW50IikpO3ZhciBkPWMmJmIudnRwX3F1ZXJpZXNBbGxvd2VkIT09ImFueSI/Yi52dHBfcXVlcnlLZXlzfHxbXTpudWxsLGU9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZixnLGgpe2lmKGcpe2lmKCF6YihnKSl0aHJvdyBlKGYse30sIlVSTCBjb21wb25lbnQgbXVzdCBiZSBhIHN0cmluZy4iKTtpZihjJiZjLmluZGV4T2YoZyk8MCl0aHJvdyBlKGYse30sIlByb2hpYml0ZWQgVVJMIGNvbXBvbmVudDogIitnKTtpZihnPT09InF1ZXJ5IiYmZCl7aWYoIWgpdGhyb3cgZShmLHt9LCJQcm9oaWJpdGVkIGZyb20gZ2V0dGluZyBlbnRpcmUgVVJMIHF1ZXJ5IHdoZW4gcXVlcnkga2V5cyBhcmUgc3BlY2lmaWVkLiIpO2lmKCF6YihoKSl0aHJvdyBlKGYse30sIlF1ZXJ5IGtleSBtdXN0IGJlIGEgc3RyaW5nLiIpO2lmKGQuaW5kZXhPZihoKTwwKXRocm93IGUoZix7fSwKIlByb2hpYml0ZWQgcXVlcnkga2V5OiAiK2gpO319ZWxzZSBpZihjKXRocm93IGUoZix7fSwiUHJvaGliaXRlZCBmcm9tIGdldHRpbmcgZW50aXJlIFVSTCB3aGVuIGNvbXBvbmVudHMgYXJlIHNwZWNpZmllZC4iKTt9LGFhOmF9fSl9KCk7CgoKClouc2VjdXJpdHlHcm91cHMucmVhZF9kb21fZWxlbWVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjLGQpe3JldHVybnt0eXBlOmMsdmFsdWU6ZH19KGZ1bmN0aW9uKGIpe1ouX19yZWFkX2RvbV9lbGVtZW50cz1iO1ouX19yZWFkX2RvbV9lbGVtZW50cy5PPSJyZWFkX2RvbV9lbGVtZW50cyI7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fcmVhZF9kb21fZWxlbWVudHMuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fcmVhZF9kb21fZWxlbWVudHNbIjUiXT0hMTtaLl9fcmVhZF9kb21fZWxlbWVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2FsbG93ZWRFbGVtZW50SWRzfHwibm9uZSIsZD1iLnZ0cF9hbGxvd2VkQ3NzU2VsZWN0b3JzfHwibm9uZSIsZT1iLnZ0cF9lbGVtZW50SWRzfHxbXSxmPWIudnRwX2Nzc1NlbGVjdG9yc3x8W10sZz0KYi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oaCxsLG4pe3N3aXRjaChsKXtjYXNlICJpZCI6aWYoYz09PSJub25lIilicmVhaztpZihjPT09ImFueSJ8fGUuaW5kZXhPZihuKT4tMSlyZXR1cm47YnJlYWs7Y2FzZSAiY3NzIjppZihkPT09Im5vbmUiKWJyZWFrO2lmKGQ9PT0iYW55Inx8Zi5pbmRleE9mKG4pPi0xKXJldHVybjticmVhaztkZWZhdWx0OnRocm93IGcoaCx7fSwiVW5rbm93biBzZWxlY3RvciB0eXBlICIrbCsiLiIpO310aHJvdyBnKGgse30sIlByb2hpYml0ZWQgc2VsZWN0b3IgdmFsdWUgIituKyIgZm9yIHNlbGVjdG9yIHR5cGUgIitsKyIuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmRldGVjdF9jbGlja19ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjLGQpe3JldHVybnttYXRjaENvbW1vbkJ1dHRvbnM6Yyxjc3NTZWxlY3RvcjpkfX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF9jbGlja19ldmVudHM9YjtaLl9fZGV0ZWN0X2NsaWNrX2V2ZW50cy5PPSJkZXRlY3RfY2xpY2tfZXZlbnRzIjtaLl9fZGV0ZWN0X2NsaWNrX2V2ZW50cy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19kZXRlY3RfY2xpY2tfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X2NsaWNrX2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfY2xpY2tfZXZlbnRzWyI1Il09ITE7Wi5fX2RldGVjdF9jbGlja19ldmVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGQsZSxmKXtpZihlIT09dm9pZCAwJiZ0eXBlb2YgZSE9PQoiYm9vbGVhbiIpdGhyb3cgYyhkLHt9LCJtYXRjaENvbW1vbkJ1dHRvbnMgbXVzdCBiZSBhIGJvb2xlYW4uIik7aWYoZiE9PXZvaWQgMCYmdHlwZW9mIGYhPT0ic3RyaW5nIil0aHJvdyBjKGQse30sImNzc1NlbGVjdG9yIG11c3QgYmUgYSBzdHJpbmcuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmRldGVjdF9zY3JvbGxfZXZlbnRzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7cmV0dXJue319KGZ1bmN0aW9uKGIpe1ouX19kZXRlY3Rfc2Nyb2xsX2V2ZW50cz1iO1ouX19kZXRlY3Rfc2Nyb2xsX2V2ZW50cy5PPSJkZXRlY3Rfc2Nyb2xsX2V2ZW50cyI7Wi5fX2RldGVjdF9zY3JvbGxfZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF9zY3JvbGxfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X3Njcm9sbF9ldmVudHMuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZGV0ZWN0X3Njcm9sbF9ldmVudHNbIjUiXT0hMTtaLl9fZGV0ZWN0X3Njcm9sbF9ldmVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKCl7cmV0dXJue2Fzc2VydDpmdW5jdGlvbigpe30sYWE6YX19KX0oKTsKCgoKWi5zZWN1cml0eUdyb3Vwcy5kZXRlY3RfZm9ybV9pbnRlcmFjdGlvbl9ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoKXtyZXR1cm57fX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF9mb3JtX2ludGVyYWN0aW9uX2V2ZW50cz1iO1ouX19kZXRlY3RfZm9ybV9pbnRlcmFjdGlvbl9ldmVudHMuTz0iZGV0ZWN0X2Zvcm1faW50ZXJhY3Rpb25fZXZlbnRzIjtaLl9fZGV0ZWN0X2Zvcm1faW50ZXJhY3Rpb25fZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF9mb3JtX2ludGVyYWN0aW9uX2V2ZW50cy5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2RldGVjdF9mb3JtX2ludGVyYWN0aW9uX2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfZm9ybV9pbnRlcmFjdGlvbl9ldmVudHNbIjUiXT0hMTtaLl9fZGV0ZWN0X2Zvcm1faW50ZXJhY3Rpb25fZXZlbnRzWyI2Il09ITF9KShmdW5jdGlvbigpe3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oKXt9LAphYTphfX0pfSgpOwpmdW5jdGlvbiBrVSgpe3ZhciBhPXt9LGI9e2RhdGFMYXllcjp0QSxjYWxsYmFjazpmdW5jdGlvbihjKXthLmhhc093blByb3BlcnR5KGMpJiZ5YihhW2NdKSYmYVtjXSgpO2RlbGV0ZSBhW2NdfSxib290c3RyYXA6MH07cmV0dXJuIGJ9CmZ1bmN0aW9uIGxVKCl7dmFyIGE9a1UoKTtvaihhKTtDaygpO2pBKCk7dmFyIGI9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pO1FiKGIsWi5zZWN1cml0eUdyb3Vwcyk7dmFyIGM9eWsoemsoKSksZCxlPWM9PW51bGw/dm9pZCAwOihkPWMuY29udGV4dCk9PW51bGw/dm9pZCAwOmQuc291cmNlO0tsKGUsYz09bnVsbD92b2lkIDA6Yy5wYXJlbnQpO2UhPT0yJiZlIT09NCYmZSE9PTN8fFAoMTQyKTtyZXR1cm4gYX1mdW5jdGlvbiBtVSgpe3ZhciBhPUUoNjApO2lmKGEpZm9yKHZhciBiPWEuc3BsaXQoIi4iKSxjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWJbY10sZT1UTDtkJiYoZS5IW2RdPSEwKX19CmZ1bmN0aW9uIG5VKCl7enAoKTtsaigpO2Zvcih2YXIgYT1kYXRhLnJlc291cmNlfHx7fSxiPWNBLGM9YS5tYWNyb3N8fFtdLGQ9MDtkPGMubGVuZ3RoO2QrKyliLm1hY3Jvcy5wdXNoKG5ldyBVeihjW2RdLGQsYi50YWdzLGIubWFjcm9zKSk7Zm9yKHZhciBlPWEudGFnc3x8W10sZj0wO2Y8ZS5sZW5ndGg7ZisrKWIudGFncy5wdXNoKG5ldyBZeihlW2ZdLGYsYi50YWdzLGIubWFjcm9zKSk7Zm9yKHZhciBnPWEucHJlZGljYXRlc3x8W10saD0wO2g8Zy5sZW5ndGg7aCsrKWIucHJlZGljYXRlcy5wdXNoKG5ldyBWeihnW2hdLGIudGFncyxiLm1hY3JvcykpO2Zvcih2YXIgbD1hLnJ1bGVzfHxbXSxuPTA7bjxsLmxlbmd0aDtuKyspYi5ydWxlcy5wdXNoKG5ldyBXeihsW25dLG4pKTtRej1aO3ZhciBwPWRhdGEucGVybWlzc2lvbnN8fHt9LHE9WjtkZz1uZXcgZ2coRSg1KSxwLHEpO3ZhciByPWRhdGEuc2FuZGJveGVkX3NjcmlwdHMsdD1kYXRhLnNlY3VyaXR5X2dyb3Vwcyx1PWRhdGEucnVudGltZXx8CltdLHY9ZGF0YS5ydW50aW1lX2xpbmVzO0pGPW5ldyBwZjtWVCgpO1B6PUlGKCk7dmFyIHg9SkYseT1VVCgpLHo9bmV3IExkKCJyZXF1aXJlIix5KTt6LlphKCk7eC5ILkguc2V0KCJyZXF1aXJlIix6KTtkYi5zZXQoInJlcXVpcmUiLHopO2Zvcih2YXIgQz0wO0M8dS5sZW5ndGg7QysrKXt2YXIgRD11W0NdO2lmKCFBcnJheS5pc0FycmF5KEQpfHxELmxlbmd0aDwzKXtpZihELmxlbmd0aD09PTApY29udGludWU7YnJlYWt9diYmdltDXSYmdltDXS5sZW5ndGgmJlBmKEQsdltDXSk7dHJ5e0pGLmV4ZWN1dGUoRCl9Y2F0Y2gob1Upe319V1Qocik7WFQodCk7dmFyIEk9bFUoKTtpRigpO3ZtLmJpbmQoKTtpZighRGopZm9yKHZhciBHPUJtKCk/ZXAoTGYoNSkpOmVwKExmKDQpKSxOPW0oUm8pLFM9Ti5uZXh0KCk7IVMuZG9uZTtTPU4ubmV4dCgpKXt2YXIgVz1TLnZhbHVlLGVhPVcsamE9R1tXXT8iZ3JhbnRlZCI6ImRlbmllZCI7dGwoKS5pbXBsaWNpdChlYSxqYSl9aEUuYmluZCgpO1RCKCk7Ck9CKCk7Zm4uTiYmKGd6KCksZnooQUYpLGdBKCksY0I9bmV3IGJCLGZ6KGl6KSxPQygpLERGfHwoREY9bmV3IEJGKSxmQnx8KGZCPW5ldyBlQiksRkY9bmV3IEVGKTtpZihmbi5LKXtERS5iaW5kKCk7bUMuYmluZCgpO3dFLmJpbmQoKTt2YXIgZmE9QWsoKTtpZihmYSl7dmFyIHNhO2E6e3ZhciBkYSxtYT0oZGE9ZmEuc2NyaXB0RWxlbWVudCk9PW51bGw/dm9pZCAwOmRhLnNyYztpZihtYSl7dmFyIFBhO3RyeXt2YXIgRmE7UGE9KEZhPXJkKCkpPT1udWxsP3ZvaWQgMDpGYS5nZXRFbnRyaWVzQnlUeXBlKCJyZXNvdXJjZSIpfWNhdGNoKG9VKXt9aWYoUGEpe2Zvcih2YXIgcWE9LTEsaWI9bShQYSksWGI9aWIubmV4dCgpOyFYYi5kb25lO1hiPWliLm5leHQoKSl7dmFyIExjPVhiLnZhbHVlO2lmKExjLmluaXRpYXRvclR5cGU9PT0KInNjcmlwdCImJihxYSs9MSxMYy5uYW1lLnJlcGxhY2UoTkUsIiIpPT09bWEucmVwbGFjZShORSwiIikpKXtzYT1xYTticmVhayBhfX1QKDE0Nil9ZWxzZSBQKDE0NSl9c2E9dm9pZCAwfXZhciBRZD1zYTtRZCE9PXZvaWQgMCYmKGZhLmNhbm9uaWNhbENvbnRhaW5lcklkJiZVbSgicnRnIixTdHJpbmcoZmEuY2Fub25pY2FsQ29udGFpbmVySWQpKSxVbSgic2xvIixTdHJpbmcoUWQpKSxVbSgiaGxvIixmYS5odG1sTG9hZE9yZGVyfHwiLTEiKSxVbSgibHN0IixTdHJpbmcoZmEubG9hZFNjcmlwdFR5cGV8fCIwIikpKX1lbHNlIFAoMTQ0KTt2YXIgWWM7dmFyIERkPXhrKCk7aWYoRGQpaWYoRGQuY2Fub25pY2FsQ29udGFpbmVySWQpWWM9RGQuY2Fub25pY2FsQ29udGFpbmVySWQ7ZWxzZXt2YXIgamYsdmg9RGQuc2NyaXB0Q29udGFpbmVySWR8fCgoamY9RGQuZGVzdGluYXRpb25zKT09bnVsbD92b2lkIDA6amZbMF0pO1ljPXZoPyJfIit2aDp2b2lkIDB9ZWxzZSBZYz12b2lkIDA7dmFyIEpFPQpZYztKRSYmVW0oInBjaWQiLEpFKTtVbSgiYnQiLFN0cmluZyhJZig0Nyk/MjpJZig1MCk/MTowKSk7VW0oImN0IixTdHJpbmcoSWYoNDcpPzA6SWYoNTApPzE6MykpO0FFLmJpbmQoKTtmb3IodmFyIFdyPVtdLFhyPVtdLEtFPW0oT2JqZWN0LmtleXMoR0UpKSxZcj1LRS5uZXh0KCk7IVlyLmRvbmU7WXI9S0UubmV4dCgpKXt2YXIgcm09WXIudmFsdWU7aWYod2luZG93LmlzU2VjdXJlQ29udGV4dHx8IUlFW3JtXSl7dmFyIExFPUdFW3JtXSgpO2lmKHliKExFKSl7dmFyIE1FPUZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZy5jYWxsKExFKTtUYihNRSwieyBbbmF0aXZlIGNvZGVdIH0iKXx8VGIoTUUsIntcbiAgICBbbmF0aXZlIGNvZGVdXG59Iil8fFhyLnB1c2gocm0pfWVsc2UgV3IucHVzaChybSl9fVdyLmxlbmd0aD4wJiZVbSgianNtIixXci5qb2luKCJ+IikpO1hyLmxlbmd0aD4wJiZVbSgianNwIixYci5qb2luKCJ+IikpO0V5fHwoRXk9bmV3IER5KX1oRigpO2ltKDEpO0VHKCk7cmV0dXJuIEl9CmZ1bmN0aW9uIHVtKCl7dHJ5e2lmKCFoaygpJiYoSWYoNDcpfHwhTmsoKSkpe0lmKDY0KSYmd2ouSC5LLmFkZCgxMTg1MTc5MTcpO3pqKCk7Zm4uSCYmc3ooKTtXZls1XT0hMDt2YXIgYT1raigiZGVidWdHcm91cElkIixmdW5jdGlvbigpe3JldHVybiBTdHJpbmcoTWF0aC5mbG9vcihOdW1iZXIuTUFYX1NBRkVfSU5URUdFUipNYXRoLnJhbmRvbSgpKSl9KTtTbChhKTtrdCgpO3pGKCk7RnQoKTtQQigpO2lmKERrKCkpe0UoNSk7REcoKTtpQigpLnJlbW92ZUV4dGVybmFsUmVzdHJpY3Rpb25zKHZrKCkpO31lbHNle0ZNLlIoKTtuVSgpLmJvb3RzdHJhcD1OYigpO0lmKDUxKSYmcEUoKTsKZm4uSCYmdHooKTt0eXBlb2YgQS5uYW1lPT09InN0cmluZyImJlNiKEEubmFtZSwid2ViLXBpeGVsLXNhbmRib3gtQ1VTVE9NIikmJnNkKCk/WlQoImRNRGcwWXoiKTpBLlNob3BpZnkmJihaVCgiZE4yWmtNaiIpLHNkKCkmJlpUKCJkTlRVMFl6IikpO21VKCl9fX1jYXRjaChiKXtpbSg1KSxoeigpfX0KKGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoKXtuPUIuZG9jdW1lbnRFbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS10YWctYXNzaXN0YW50LXByZXNlbnQiKTtnbChuKSYmKGw9aC54bSl9ZnVuY3Rpb24gYygpe2wmJktjP2cobCk6YSgpfWlmKCFBW0UoMzcpXSl7dmFyIGQ9ITE7aWYoQi5yZWZlcnJlcil7dmFyIGU9UmooQi5yZWZlcnJlcik7ZD1OaihlLCJob3N0Iik9PT1FKDM4KX1pZighZCl7dmFyIGY9Y3EoRSgzOSkpO2Q9ISghZi5sZW5ndGh8fCFmWzBdLmxlbmd0aCl9ZCYmKEFbRSgzNyldPSEwLFVjKEUoNDApKSl9dmFyIGc9ZnVuY3Rpb24odSl7dmFyIHY9IkdUTSIseD0iR1RNIjtJZig0NSkmJih2PSJPR1QiLHg9IkdUQUciKTt2YXIgeT1FKDIzKSx6PUFbeV07enx8KHo9W10sQVt5XT16LFVjKCJodHRwczovLyIrRSgzKSsiL2RlYnVnL2Jvb3RzdHJhcD9pZD0iK0UoNSkrIiZzcmM9Iit4KyImY29uZD0iK1N0cmluZyh1KSsiJmd0bT0iK2R1KCkpKTt2YXIgQz17bWVzc2FnZVR5cGU6IkNPTlRBSU5FUl9TVEFSVElORyIsCmRhdGE6e3NjcmlwdFNvdXJjZTpLYyxjb250YWluZXJQcm9kdWN0OnYsZGVidWc6ITEsaWQ6RSg1KSx0YXJnZXRSZWY6e2N0aWQ6RSg1KSxpc0Rlc3RpbmF0aW9uOnNrKCksY2Fub25pY2FsSWQ6RSg2KX0sYWxpYXNlczp3aygpLGRlc3RpbmF0aW9uczp0aygpfX0sRD1DLmRhdGE7RC5yZXN1bWU9ZnVuY3Rpb24oKXthKCl9O0QucmVzdW1lV2l0aE1lbW9zPWZ1bmN0aW9uKCl7c2woMSk7YSgpfTtJZigyKSYmKEMuZGF0YS5pbml0aWFsUHVibGlzaD0hMCk7ei5wdXNoKEMpfSxoPXtHcToxLFBtOjIsb246MyxqbDo0LHhtOjV9O2hbaC5HcV09IkdUTV9ERUJVR19MRUdBQ1lfUEFSQU0iO2hbaC5QbV09IkdUTV9ERUJVR19QQVJBTSI7aFtoLm9uXT0iUkVGRVJSRVIiO2hbaC5qbF09IkNPT0tJRSI7aFtoLnhtXT0iRVhURU5TSU9OX1BBUkFNIjt2YXIgbD12b2lkIDAsbj12b2lkIDAscD1MaihBLmxvY2F0aW9uLCJxdWVyeSIsITEsdm9pZCAwLCJndG1fZGVidWciKTtnbChwKSYmKGw9aC5QbSk7CmlmKCFsJiZCLnJlZmVycmVyKXt2YXIgcT1SaihCLnJlZmVycmVyKTtOaihxLCJob3N0Iik9PT1FKDI0KSYmKGw9aC5vbil9aWYoIWwpe3ZhciByPWNxKCJfX1RBR19BU1NJU1RBTlQiKTtyLmxlbmd0aCYmclswXS5sZW5ndGgmJihsPWguamwpfWx8fGIoKTtpZighbCYmZmwobikpe3ZhciB0PSExOyRjKEIsIlRBRGVidWdTaWduYWwiLGZ1bmN0aW9uKCl7dHx8KHQ9ITAsYigpLGMoKSl9LCExKTtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0fHwodD0hMCxiKCksYygpKX0sMjAwKX1lbHNlIGMoKX0pKGZ1bmN0aW9uKCl7IUlmKDQ3KXx8dG0oKVsiMCJdP3VtKCk6eG0oKX0pOwoKfSkoKQoK"}},"time_used":133,"timings":{"blocked":0,"dns":2,"connect":16,"send":0,"wait":35,"receive":48,"ssl":31},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/3408.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"52.84.50.71","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.405Z","timestamp":1785158433405,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/3408.png HTTP/1.1\r\nHost: s2.coinmarketcap.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncontent-type: image/png\r\ncontent-length: 2357\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Fri, 06 Feb 2026 07:18:54 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 03:43:02 GMT\r\ncache-control: public, max-age=86400\r\netag: \"e745bf550d209084227adac42e9ec7df\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 34652\r\nvia: 1.1 bb489e045ccdb24c55a720f2ea03e7f0.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: OSL50-P3\r\nx-amz-cf-id: cUTvYKOZhlNaF1DfczpXZTDRSj63serTYWNAv5LPgSfWtvnVdlTaCg==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":2357,"size_decoded":2929,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"e745bf550d209084227adac42e9ec7df","sha1":"d335544c68c51d8ae72314406109b7cd06b5668d","sha256":"6f2390c4bf94ba36584793958432d5069f2bec31dfa7cb9b93c0c76cf965a901","sha512":"cf24459f5841a89b0ac17a689b0b5fe241a66b117d0abc94c95502e1664e0e25011d41f249c3645173a122622ad17bad5f1f9558785155184a6fde91920e58b7","ssdeep":"","tlshash":"12413a80ab21b72a88210d32530a056fe5b7ec49c711b6a5a97a3c117a9bbef149315f","first_seen":"2026-02-08T21:55:57.588725Z","last_seen":"2026-08-17T21:34:38.524576Z","times_seen":1744,"resource_available":false,"data":"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"}},"time_used":7,"timings":{"blocked":1,"dns":0,"connect":0,"send":0,"wait":6,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/images/branding/googlelogo/1x/googlelogo_color_42x16dp.png","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":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.515Z","timestamp":1785158433515,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /images/branding/googlelogo/1x/googlelogo_color_42x16dp.png HTTP/1.1\r\nHost: www.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 910\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:10:14 GMT\r\nexpires: Thu, 22 Jul 2027 13:10:14 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Thu, 02 Nov 2023 22:48:00 GMT\r\ncontent-type: image/png\r\nvary: Origin\r\nage: 432620\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":910,"size_decoded":1583,"mime_type":"image/png","magic":"PNG image data, 42 x 16, 8-bit/color RGBA, non-interlaced","md5":"efa6bb2bfe459bc6f4bdafa3db0383f6","sha1":"52d15ce52fe50643e542c17812de43f4ed1b6ee0","sha256":"6318394f737c66f0e2ccfcd88e3935c6667633a1b95fa29fba2b75431d55eef2","sha512":"e23c04d8997f5c2f92070e09261b7ee50d9df8753f45cf66f604f0874ffa8d99e947c97c528ec02a2c3fbe8e43d840b343a7d0225532980d5da95031216415b7","ssdeep":"","tlshash":"491184a73cd1dc6854a47a87aa91b864ec250f1b91a220981237b42277313444fdc8f7","first_seen":"2023-04-05T07:39:29Z","last_seen":"2026-08-17T20:02:35.826459Z","times_seen":57422,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAACoAAAAQCAYAAABgIu2QAAADVUlEQVR4AcxUA9AdPRRNbdu2+7K//+4mW9vWqNbYU2z21bZt27Zt+6nK5lUftrkPO7V1Zu7iZnJycoUc2HYC4hZVKROjqCnmEdMaoDJRHv1g4HmNKuCFjVX0OajeO5CWML5eCrSlnaGMr5VCr4X+mdXrhwpd0GgKXtDgAPoUIJIgTDPFE42JalF37952QspE+6rG0zy/hVDdsDSInHy3Qp8Jr6pk99A/s7333ttRdrD3ramDRHbd/STTp4QG6F+5fNUq5kCvg5qWmxr8qWuincTxsWAu1bRKR42avCT4H1TFeXxU2ePTFRvMo7t2AmlI4ObkeWM2J9kTsyWJDSa/d8ZvSRFaU3vzzJohNkFA5Fnx8sz9mmGJt4XeVV2ZvTreFuWXZy29rqrJEYAwMUYKuYccgM+aAKRR0wweayOUwEdc++Tm034dK/e1in96CT7nocoO20YJpLh9MVsSnX65ObHyclviP+X3ORAbvri1kjJ+mxi8EmWiIjHFKeB9W6hXV+Z7iXITuMF8RBHyPDeKkHSDTeqAYO7XU6SavDgYYWKEjEYgoP6RG27pp7iOUwI6bgQ+MShn+XAkkzprMZuTNgLfxlmNC0AUNca7OIEwecP3CZXCglLsCMk7xEtcDyAwcAYC/GfyLHKTRQ2xEBoIvYbave2U0n8exhWkPZKS2o7Qyrgh+F70z1khnO5EzlrMpqQNwbdhVuvC4cwEO0bXNBas9yGhYF6qTPRWUd4ZjRDVJprJ42TktgEJzE/ZXM3k/0kp9CExHheC1Huo67CPuo7fr4JLy2YqC2Ughe6NpP6wTPfxFxuTlH6xJUlZKAOoWeCH0QfjTmVBHM4SP/Zeoboy20OUu16C//GSioW8FM/1UNwavQ4pVKUmP/x6bRJTbAdiFAFslkTHosXuJcqhe6RCPlh7tjlZwZhNiY46zbQpycH4rcnzRUuJGmKPw834ifcJffzffxl8FG8A7ohd9tGKFdEHR0g/q4wzRt5CKLI6LggG36+vQWRB8LONyQrAt8PZ25ta7/+sIBhMFBnd7pAp9AFAP/gJLmb3RgnRz4QUNhm6HsqKuIN1iclvUWZNQ78b/hnoT0MMMVsz+Qtq8JfQuGrvR+nR74omi+xEYOjVBgEYBQDoQD6ep9ySZwAAAABJRU5ErkJggg=="}},"time_used":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":"bootstrap.smartsuppchat.com/widget/f9ad02e4001115367f7ba0f789e08b34efb4e292.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://uniz-coinzltd.com/","date":"2026-07-27T13:20:39.719Z","timestamp":1785158439719,"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/f9ad02e4001115367f7ba0f789e08b34efb4e292.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://uniz-coinzltd.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 13:20:39 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: source\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":880,"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-08-17T17:13:48.011243Z","times_seen":2462,"resource_available":false,"data":"eyJhaVJhdGluZ0VuYWJsZWQiOnRydWUsImFsbG93ZWREb21haW5zIjpbXSwiYnV0dG9uU3R5bGUiOiJncmVldGluZyIsImNvbG9yIjoiIzEyMzNkZiIsImNvbG9yMiI6bnVsbCwiY29sb3JHcmFkaWVudCI6dHJ1ZSwiY29uc2VudE1vZGVFbmFibGVkIjpmYWxzZSwiY3Jvc3NEb21haW5FbmFibGVkIjpmYWxzZSwiY3VzdG9tQnJhbmRpbmdFbmFibGVkIjpmYWxzZSwiY3VzdG9tQnJhbmRpbmdMaW5rIjoiIiwiY3VzdG9tQnJhbmRpbmdUZXh0IjoiIiwiZW1haWxDb250cm9sIjp0cnVlLCJmZWF0dXJlcyI6eyJhcGkiOmZhbHNlLCJjdXN0b21pemUiOmZhbHNlLCJnYSI6ZmFsc2UsImdyb3VwcyI6ZmFsc2UsInJhdGluZyI6ZmFsc2UsIndoaXRlTGFiZWwiOmZhbHNlfSwiZ29vZ2xlQW5hbHl0aWNzRW5hYmxlZCI6ZmFsc2UsImdvb2dsZUFuYWx5dGljc01hbnVhbCI6ZmFsc2UsImdvb2dsZUFuYWx5dGljc01lYXN1cmVtZW50SWRzIjpbXSwiZ3JvdXBTZWxlY3RFbmFibGVkIjpmYWxzZSwiaGVhZGVyU3R5bGUiOiJzdGFuZGFyZCIsImhpZGVPZmZsaW5lQ2hhdCI6ZmFsc2UsImhpZGVXaWRnZXQiOmZhbHNlLCJob3N0Ijoid2Vic29ja2V0LXZpc2l0b3JzLnNtYXJ0c3VwcC5jb20iLCJpbnRlcm5hbEFuYWx5dGljc0VuYWJsZWQiOmZhbHNlLCJpc0Jsb2NrZWQiOmZhbHNlLCJsYW5nIjoiZW4iLCJtb2JpbGVQb3B1cHNFbmFibGVkIjp0cnVlLCJuYW1lQ29udHJvbCI6dHJ1ZSwibnVtYmVyQ29udHJvbCI6ZmFsc2UsIm9wZW5PblRyaWdnZXIiOmZhbHNlLCJvcmllbnRhdGlvbiI6InJpZ2h0IiwicGFja2FnZU5hbWUiOiJmcmVlIiwicG9wdXBUZXh0YXJlYUVuYWJsZWQiOmZhbHNlLCJwcml2YWN5Tm90aWNlQ2hlY2tSZXF1aXJlZCI6ZmFsc2UsInByaXZhY3lOb3RpY2VFbmFibGVkIjp0cnVlLCJwcml2YWN5Tm90aWNlVXJsIjoiIiwicmF0aW5nRW5hYmxlZCI6ZmFsc2UsInJlcXVpcmVMb2dpbiI6ZmFsc2UsInRyYW5zbGF0ZXMiOnt9LCJ1cmxDYXJkc0VuYWJsZWQiOnRydWUsIndpZGdldFZlcnNpb24iOjMsImhhc0ludGVybmFsQXBpIjpmYWxzZSwiY29uZmlnIjp7fSwiYnJvd3NlckxhbmciOiJlbiIsIndpZGdldFRyYWNrZXJVcmwiOiJodHRwczovL3dpZGdldC10cmFja2VyLnNtYXJ0c3VwcC5jb20iLCJ0cmFuc2xhdGlvbnNCYXNlVXJsIjoiaHR0cHM6Ly90cmFuc2xhdGlvbnMuc21hcnRzdXBwY2RuLmNvbSIsIndpZGdldFRyYWNrZXJFbmFibGVkIjpmYWxzZX0="}},"time_used":229,"timings":{"blocked":0,"dns":3,"connect":22,"send":0,"wait":176,"receive":0,"ssl":28},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/1027.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"52.84.50.71","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.400Z","timestamp":1785158433400,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/1027.png HTTP/1.1\r\nHost: s2.coinmarketcap.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncontent-type: image/png\r\ncontent-length: 2780\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 09:13:52 GMT\r\nlast-modified: Tue, 19 Oct 2021 05:32:40 GMT\r\netag: \"856bfdb63dc0d6fad6b92fc6a29719e1\"\r\ncache-control: max-age=86400\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 14802\r\nvia: 1.1 bb489e045ccdb24c55a720f2ea03e7f0.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: OSL50-P3\r\nvary: Origin\r\nx-amz-cf-id: Tbl4Dw69eHXuc_m0H7PsKIUjzwZEKc7ebV645znPOxToT6F8bYTsBA==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":2780,"size_decoded":3289,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"856bfdb63dc0d6fad6b92fc6a29719e1","sha1":"2fed2e3409ce1bbbfb37f6da4abeecc30cefc021","sha256":"eebe29898b8b7de5c9e47daab474152be8095e3ab42d768b84b085c5a12b95c6","sha512":"a61c0a108d63c89ae62a2b03108480b5c08bda0e80049089a2a84cd7973bd9e94dcd2902e166b92e1d7ad5b7356357c9b181cb1b6051dd25913e82d2420154f0","ssdeep":"","tlshash":"51518cc7a707f33a9c866161bed44509f244d80a8160b31c0f33a7572c8a83ea4f324f","first_seen":"2023-05-01T18:49:36Z","last_seen":"2026-08-17T23:48:38.53378Z","times_seen":23313,"resource_available":false,"data":"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"}},"time_used":8,"timings":{"blocked":2,"dns":0,"connect":0,"send":0,"wait":6,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/images/branding/product/2x/translate_24dp.png","fqdn":"www.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.519Z","timestamp":1785158433519,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /images/branding/product/2x/translate_24dp.png HTTP/1.1\r\nHost: www.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.gstatic.com/_/translate_http/_/ss/k=translate_http.tr.B7Dih9Jyjnw.L.F4.O/am=BIAABw/d=0/rs=AN8SPfpC04vrrzQXgs_TCM5EtruwfPzNtQ/m=el_main_css\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=6, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 1842\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Fri, 24 Jul 2026 07:17:13 GMT\r\nexpires: Sat, 24 Jul 2027 07:17:13 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Thu, 14 Oct 2021 09:08:00 GMT\r\ncontent-type: image/png\r\nvary: Origin\r\nage: 281001\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":1842,"size_decoded":2516,"mime_type":"image/png","magic":"PNG image data, 48 x 48, 8-bit/color RGBA, non-interlaced","md5":"c69c796362406f9e11c7f4bf5bb628da","sha1":"e489ce95ab56208090868882113d7416abf46775","sha256":"4dac0026fbfa2615dce30c0af12830863fe885f84387a0147b9e338f548d5d82","sha512":"d3ad560ed0fd29be7d2cc434694f09e5a6fbea8b29c0611aecb54a1b73b4d722c53f42a19dae9e3d5d358444e50fb8fffbc39d67ce751bdbc8c861f6f95d3162","ssdeep":"","tlshash":"4e31f9fd129220437101ade72165eef798347c15f412da60ce65ba389c9fe20ed9a619","first_seen":"2023-04-05T07:39:29Z","last_seen":"2026-08-17T21:53:38.010247Z","times_seen":75043,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAG+UlEQVR4Ae2YVXfbWBCAtc/L8H+WocztYpmflrfccGKIU2ZmZuY2jLbMDjNvw693dkbOKIrWcpR18JzNOV987dL3SXMlpdJE+fr/CwDeWHqgY+6inb2e+Tv7hJ55OwaY288cJiPMbA3r97a+hUijjbpYvLdz/oJdfYKJNWBhWtsMRBptBt7s7HVr5WMNmGnvfIRIo426IEkjeUKVNxkwy4F/319F7yLSaKIuWHTkApCkujmINJqoCxYd/vgwOnnC3vkYkUYTdWFe3nwAj9G4jBBLG8tHHx9iJjI7qXoeIo0W6kIvbCTPAXMz+kDLHEeY2VrS+2Dl/g5wuspFVVWDaG5pFa2tYVpaWlSam5sVmpqaItLY2EjQWq6urp+GSIy6GI48oZdntPLMtYceEQxVoQAJ//cAprKyZgYiERIvjKWNR2eoo88kn66C3DxZVFXXk3DMAfX1jU5EIiRezDUhvvhAnzj5ohvkik5oauuAZsRd2Qmn8LPF+yLLz0KW7WmHzCynkOWAqG9ojDWAkQiJF0biTPL1HtHY2gGvOyJDv7btYk/EAOIqjlFhkUcEAiGSGvkAkjSC5F+/HpCtbOiEx65OuF3QBaGa8Gf0uvJQb0T5mfaBMXJ7AqK0tIzEWJ4xko8hAOf8p/196pFv/7sDjj3r1l42aQ177vfA0v2R5Tlgaf8YuVx+EQiGRHl5OQmOYADJRODk824+8sqs66/32rk3OvrM1QfhMfL7g3QWKIJEhj0+DQ0NhERIvDAKoA1L8k14FubtHCzPmJGfgSSdwjHKpTHyi1CoVJSVqRGxB7CYHhKngNxAJ+jFjTb0g+KuiAFLduMYZdIY+USwP4BYtc0Ka5MywIR8bAEkbSbgibNLL8+oY+Tz0RiFA1Zus8DK7VYgsRELYEntCM3dyc84YWy3elT2PRzYK1dyuv4lP92GWPtg3tZnsPgPCyzbhNJbrQi+bmOssDohA9Yk7kAyGOUzjXzkABbWc0KziekmxvIq6WGOPBn4fSnXelieUeSJmSk18OPvFli6MRywYmuaGrACA1Zut6GwQyMfY8AP+wYuo214GT3ytFvMyhgsn3KjR7S2h39PTVMXzM/oZfEwNgYjkCsP3DhGbmWMtJu5oqJCIf34BSXizrMs/fgYB5CQEQlXB9/IKuhG5uyEm3gj81Z2qp/T70m40mMozwGJeDXKyXUJ2e0XwWBoUIDb6xOr4+ywJj4dyvC9gfzwAjiisYVEI0NnwHare0h5YvGudojLOAVLN1hg56mLwAHELnxPG3rniYtQWVlJouYCeByiQeN0/Fk3uMo7lU3d3NYJHjwD5zO7YemBXmFGnphm7YVTNwrFsg1WWLbZCpm5+Yr8q9wCsQr3AJ2BIqcsKKCqqoqFYwuYEYXp9gHMyBOJJyvBcfginoU0+CVtN5TIsvjVskfZzEcu3wIaJwrgiPr6+ugBM4xFTYkzRuIsz/y0sx1evioWG6wHYfmWNFiXkA4rUH6D4wCU4khxgHGELiAWaWJaP2bkp/Zz5b5bPH2ZJ5Zv4cupDYqdsjJOHECvHFBdXc0RxgHGwsbieqLLMzRGVZC06wzeE9JwL6TBcryp7Tp5CTiA0QbU1NREDjCWNCHN2MJoxA3kEUsvzLE0wPe/psKqzTa4cOeRWBfvgBUYsePkRYowDKitrSUkQuKFeWljccaMPDElrRd+2HAY7j58pTxiv8wpEGtxLyzfhhEnLsCwAowFzYsTU/vRiBvKE38dCEB2jkt9xM7MKxTrEhzKOO04rpwJbQARQ4DNmKk6hpL/hgJw/QNejV71P2IHwndljChQIujZyH7sHHAAYRgww9brMpY0L05MsfaKSOIMyzOX78mioFAe9Iid1R9x/ModOgP6MSIkQuLFbEv77FikWVxLJPkpOigmQXk2Un7g1z/cMdEDmKnx1fOmpr72TbV0Ci1ThuCbtH/zNTIltRO0fKPj65QOhR8czco+cMm0D8q0AfwaPWC02JL4NO6zuTfhUx2fzLmh8umcm7A5+Qnk5eMZcA8+A8S4BsTZn3/0xYI7oOXz+YPZnvoCcvNcorjEK/wBZRMz4x9ArP3jRcuXi+7DF3oW3od420vIL5BFEcp7PPyzQdQAjiAkgr6NKkmOrA0UoMLy9hco7xTFxR4cHR/9lyOOTwivQqVGAczYBjgcDz7QihNx1uc482F5WfYJnz+ARz8YLYAZ+wBizW8vWlg+3vYcZ75EFBW5FXmvz49HP3oArzmgtLxCRiSCvo06ybacP5Qjj/I5ucWiEG9aTqdHkff7owfwe23Aq+yS+YhE0LdRJw7HKM7yGDKz8kVOTpEoKCgRThddNt0KHg/GeL3C5/NxEEFrbSD9Xu+jpzkLEInhxWRl8gf8A1/5iBrINb9BAAAAAElFTkSuQmCC"}},"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":"widgets.coingecko.com/coingecko-coin-price-marquee-widget.js","fqdn":"widgets.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"104.18.4.118","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.490Z","timestamp":1785158432490,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coingecko.com","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Thu, 25 Jun 2026 14:12:31 GMT","end":"Wed, 23 Sep 2026 14:12:30 GMT"},"fingerprint":{"sha1":"79:92:C9:C4:9C:3B:8E:38:3D:B4:5C:FA:23:B7:32:6D:E5:6E:21:4C","sha256":"9F:04:05:47:D7:AB:A2:ED:CE:9E:40:05:15:CB:1D:E0:9F:A7:BB:C0:DC:EC:A2:90:53:EC:F5:8E:57:D6:62:B0"}}},"request":{"raw":"GET /coingecko-coin-price-marquee-widget.js HTTP/1.1\r\nHost: widgets.coingecko.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: application/javascript\r\nx-amz-id-2: qdG2E7yuprzpD92tmuQTHsg9WLeSp2GAwFbdpwF/9TG6OqrOcrw49t0xAy9Ru0CuvBXrKO3HxYfGer2Z34j64aw/9qIl8DZg\r\nx-amz-request-id: VXPQAT8JR3CV0BYQ\r\nx-amz-replication-status: COMPLETED\r\nlast-modified: Fri, 03 Jul 2026 04:41:16 GMT\r\nvary: accept-encoding\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: pUfu3vFk32PoX9Yh9wO6PBDW1nhUzKSO\r\nserver: cloudflare\r\npriority: u=2,i=?0\r\nage: 58484\r\nexpires: Tue, 28 Jul 2026 13:20:32 GMT\r\ncache-control: public, max-age=86400\r\ncf-cache-status: HIT\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nspeculation-rules: \"/cdn-cgi/speculation\"\r\netag: W/\"c943d4422dad6300bbaf689c2211180f\"\r\ncontent-encoding: br\r\ncf-ray: a21bf12b4e51c759-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":"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"]},{"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":230974,"size_decoded":69893,"mime_type":"application/javascript","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (36129)","md5":"c943d4422dad6300bbaf689c2211180f","sha1":"4cf78792b3a9dddc6f2ee8219bbfdd213194f144","sha256":"d8d3d9a390c75f612142118d3281d85b95cb50e84c2f6d9438daa83efa8e2437","sha512":"c5516ee60fdc9e900036dec072c7c2de8d01dcfce22fc901048697428c43604ea8dd8d907abda960ce8aae5201ec7f649300af511c8bcccac469a9541f0d9d4f","ssdeep":"3072:/uPfvYNJshGWDSBttCWINmVZrnPodE5rUzpI4Oz:XYBctCo2c4Oz","tlshash":"bc34198eb6c0f19947b693e9605f394ba77d28fc68884380e972f4e5587e05c6132f6c","first_seen":"2026-07-05T23:38:03.171209Z","last_seen":"2026-08-17T04:08:41.272685Z","times_seen":333,"resource_available":true,"data":"KGZ1bmN0aW9uKGUpe3ZhciB0PXt9O2Z1bmN0aW9uIG4ocil7aWYodFtyXSlyZXR1cm4gdFtyXS5leHBvcnRzO3ZhciBpPXRbcl09e2k6cixsOiExLGV4cG9ydHM6e319O3JldHVybiBlW3JdLmNhbGwoaS5leHBvcnRzLGksaS5leHBvcnRzLG4pLGkubD0hMCxpLmV4cG9ydHN9bi5tPWUsbi5jPXQsbi5kPWZ1bmN0aW9uKGUsdCxyKXtuLm8oZSx0KXx8T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7ZW51bWVyYWJsZTohMCxnZXQ6cn0pfSxuLnI9ZnVuY3Rpb24oZSl7InVuZGVmaW5lZCIhPT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSl9LG4udD1mdW5jdGlvbihlLHQpe2lmKDEmdCYmKGU9bihlKSksOCZ0KXJldHVybiBlO2lmKDQmdCYmIm9iamVjdCI9PT10eXBlb2YgZSYmZSYmZS5fX2VzTW9kdWxlKXJldHVybiBlO3ZhciByPU9iamVjdC5jcmVhdGUobnVsbCk7aWYobi5yKHIpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJkZWZhdWx0Iix7ZW51bWVyYWJsZTohMCx2YWx1ZTplfSksMiZ0JiYic3RyaW5nIiE9dHlwZW9mIGUpZm9yKHZhciBpIGluIGUpbi5kKHIsaSxmdW5jdGlvbih0KXtyZXR1cm4gZVt0XX0uYmluZChudWxsLGkpKTtyZXR1cm4gcn0sbi5uPWZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUuX19lc01vZHVsZT9mdW5jdGlvbigpe3JldHVybiBlWyJkZWZhdWx0Il19OmZ1bmN0aW9uKCl7cmV0dXJuIGV9O3JldHVybiBuLmQodCwiYSIsdCksdH0sbi5vPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHQpfSxuLnA9Ii8iLG4obi5zPTIwKX0pKHsiMDE0YiI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCJlNTNkIiksaT1uKCIwN2UzIiksYT1uKCI4ZTYwIiksbz1uKCI2M2I2IiksYz1uKCI5MTM4Iikscz1uKCJlYmZkIikuS0VZLHA9bigiMjk0YyIpLGw9bigiZGJkYiIpLHU9bigiNDVmMiIpLGQ9bigiNjJhMCIpLF89bigiNTE2OCIpLG09bigiY2NiOSIpLGY9bigiNjcxOCIpLGg9bigiNDdlZSIpLHY9bigiOTAwMyIpLHk9bigiZTRhZSIpLGc9bigiZjc3MiIpLHc9bigiMjQxZSIpLGI9bigiMzZjMyIpLGs9bigiMWJjMyIpLHg9bigiYWViZCIpLEM9bigiYTE1OSIpLFM9bigiMDM5NSIpLFA9bigiYmYwYiIpLGo9bigiOWFhOSIpLE89bigiZDlmNiIpLEE9bigiYzNhMSIpLEU9UC5mLFQ9Ty5mLEQ9Uy5mLHo9ci5TeW1ib2wsTT1yLkpTT04sJD1NJiZNLnN0cmluZ2lmeSxOPSJwcm90b3R5cGUiLEk9XygiX2hpZGRlbiIpLEY9XygidG9QcmltaXRpdmUiKSxMPXt9LnByb3BlcnR5SXNFbnVtZXJhYmxlLFI9bCgic3ltYm9sLXJlZ2lzdHJ5IiksVj1sKCJzeW1ib2xzIiksVT1sKCJvcC1zeW1ib2xzIiksSD1PYmplY3RbTl0sRz0iZnVuY3Rpb24iPT10eXBlb2YgeiYmISFqLmYsSz1yLlFPYmplY3QsQj0hS3x8IUtbTl18fCFLW05dLmZpbmRDaGlsZCxxPWEmJnAoKGZ1bmN0aW9uKCl7cmV0dXJuIDchPUMoVCh7fSwiYSIse2dldDpmdW5jdGlvbigpe3JldHVybiBUKHRoaXMsImEiLHt2YWx1ZTo3fSkuYX19KSkuYX0pKT9mdW5jdGlvbihlLHQsbil7dmFyIHI9RShILHQpO3ImJmRlbGV0ZSBIW3RdLFQoZSx0LG4pLHImJmUhPT1IJiZUKEgsdCxyKX06VCxKPWZ1bmN0aW9uKGUpe3ZhciB0PVZbZV09Qyh6W05dKTtyZXR1cm4gdC5faz1lLHR9LFc9RyYmInN5bWJvbCI9PXR5cGVvZiB6Lml0ZXJhdG9yP2Z1bmN0aW9uKGUpe3JldHVybiJzeW1ib2wiPT10eXBlb2YgZX06ZnVuY3Rpb24oZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiB6fSxYPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gZT09PUgmJlgoVSx0LG4pLHkoZSksdD1rKHQsITApLHkobiksaShWLHQpPyhuLmVudW1lcmFibGU/KGkoZSxJKSYmZVtJXVt0XSYmKGVbSV1bdF09ITEpLG49QyhuLHtlbnVtZXJhYmxlOngoMCwhMSl9KSk6KGkoZSxJKXx8VChlLEkseCgxLHt9KSksZVtJXVt0XT0hMCkscShlLHQsbikpOlQoZSx0LG4pfSxaPWZ1bmN0aW9uKGUsdCl7eShlKTt2YXIgbixyPWgodD1iKHQpKSxpPTAsYT1yLmxlbmd0aDt3aGlsZShhPmkpWChlLG49cltpKytdLHRbbl0pO3JldHVybiBlfSxZPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PXQ/QyhlKTpaKEMoZSksdCl9LFE9ZnVuY3Rpb24oZSl7dmFyIHQ9TC5jYWxsKHRoaXMsZT1rKGUsITApKTtyZXR1cm4hKHRoaXM9PT1IJiZpKFYsZSkmJiFpKFUsZSkpJiYoISh0fHwhaSh0aGlzLGUpfHwhaShWLGUpfHxpKHRoaXMsSSkmJnRoaXNbSV1bZV0pfHx0KX0sZWU9ZnVuY3Rpb24oZSx0KXtpZihlPWIoZSksdD1rKHQsITApLGUhPT1IfHwhaShWLHQpfHxpKFUsdCkpe3ZhciBuPUUoZSx0KTtyZXR1cm4hbnx8IWkoVix0KXx8aShlLEkpJiZlW0ldW3RdfHwobi5lbnVtZXJhYmxlPSEwKSxufX0sdGU9ZnVuY3Rpb24oZSl7dmFyIHQsbj1EKGIoZSkpLHI9W10sYT0wO3doaWxlKG4ubGVuZ3RoPmEpaShWLHQ9blthKytdKXx8dD09SXx8dD09c3x8ci5wdXNoKHQpO3JldHVybiByfSxuZT1mdW5jdGlvbihlKXt2YXIgdCxuPWU9PT1ILHI9RChuP1U6YihlKSksYT1bXSxvPTA7d2hpbGUoci5sZW5ndGg+bykhaShWLHQ9cltvKytdKXx8biYmIWkoSCx0KXx8YS5wdXNoKFZbdF0pO3JldHVybiBhfTtHfHwoej1mdW5jdGlvbigpe2lmKHRoaXMgaW5zdGFuY2VvZiB6KXRocm93IFR5cGVFcnJvcigiU3ltYm9sIGlzIG5vdCBhIGNvbnN0cnVjdG9yISIpO3ZhciBlPWQoYXJndW1lbnRzLmxlbmd0aD4wP2FyZ3VtZW50c1swXTp2b2lkIDApLHQ9ZnVuY3Rpb24obil7dGhpcz09PUgmJnQuY2FsbChVLG4pLGkodGhpcyxJKSYmaSh0aGlzW0ldLGUpJiYodGhpc1tJXVtlXT0hMSkscSh0aGlzLGUseCgxLG4pKX07cmV0dXJuIGEmJkImJnEoSCxlLHtjb25maWd1cmFibGU6ITAsc2V0OnR9KSxKKGUpfSxjKHpbTl0sInRvU3RyaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fa30pKSxQLmY9ZWUsTy5mPVgsbigiNmFiZiIpLmY9Uy5mPXRlLG4oIjM1NWQiKS5mPVEsai5mPW5lLGEmJiFuKCJiOGUzIikmJmMoSCwicHJvcGVydHlJc0VudW1lcmFibGUiLFEsITApLG0uZj1mdW5jdGlvbihlKXtyZXR1cm4gSihfKGUpKX0pLG8oby5HK28uVytvLkYqIUcse1N5bWJvbDp6fSk7Zm9yKHZhciByZT0iaGFzSW5zdGFuY2UsaXNDb25jYXRTcHJlYWRhYmxlLGl0ZXJhdG9yLG1hdGNoLHJlcGxhY2Usc2VhcmNoLHNwZWNpZXMsc3BsaXQsdG9QcmltaXRpdmUsdG9TdHJpbmdUYWcsdW5zY29wYWJsZXMiLnNwbGl0KCIsIiksaWU9MDtyZS5sZW5ndGg+aWU7KV8ocmVbaWUrK10pO2Zvcih2YXIgYWU9QShfLnN0b3JlKSxvZT0wO2FlLmxlbmd0aD5vZTspZihhZVtvZSsrXSk7byhvLlMrby5GKiFHLCJTeW1ib2wiLHtmb3I6ZnVuY3Rpb24oZSl7cmV0dXJuIGkoUixlKz0iIik/UltlXTpSW2VdPXooZSl9LGtleUZvcjpmdW5jdGlvbihlKXtpZighVyhlKSl0aHJvdyBUeXBlRXJyb3IoZSsiIGlzIG5vdCBhIHN5bWJvbCEiKTtmb3IodmFyIHQgaW4gUilpZihSW3RdPT09ZSlyZXR1cm4gdH0sdXNlU2V0dGVyOmZ1bmN0aW9uKCl7Qj0hMH0sdXNlU2ltcGxlOmZ1bmN0aW9uKCl7Qj0hMX19KSxvKG8uUytvLkYqIUcsIk9iamVjdCIse2NyZWF0ZTpZLGRlZmluZVByb3BlcnR5OlgsZGVmaW5lUHJvcGVydGllczpaLGdldE93blByb3BlcnR5RGVzY3JpcHRvcjplZSxnZXRPd25Qcm9wZXJ0eU5hbWVzOnRlLGdldE93blByb3BlcnR5U3ltYm9sczpuZX0pO3ZhciBjZT1wKChmdW5jdGlvbigpe2ouZigxKX0pKTtvKG8uUytvLkYqY2UsIk9iamVjdCIse2dldE93blByb3BlcnR5U3ltYm9sczpmdW5jdGlvbihlKXtyZXR1cm4gai5mKHcoZSkpfX0pLE0mJm8oby5TK28uRiooIUd8fHAoKGZ1bmN0aW9uKCl7dmFyIGU9eigpO3JldHVybiJbbnVsbF0iIT0kKFtlXSl8fCJ7fSIhPSQoe2E6ZX0pfHwie30iIT0kKE9iamVjdChlKSl9KSkpLCJKU09OIix7c3RyaW5naWZ5OmZ1bmN0aW9uKGUpe3ZhciB0LG4scj1bZV0saT0xO3doaWxlKGFyZ3VtZW50cy5sZW5ndGg+aSlyLnB1c2goYXJndW1lbnRzW2krK10pO2lmKG49dD1yWzFdLChnKHQpfHx2b2lkIDAhPT1lKSYmIVcoZSkpcmV0dXJuIHYodCl8fCh0PWZ1bmN0aW9uKGUsdCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIG4mJih0PW4uY2FsbCh0aGlzLGUsdCkpLCFXKHQpKXJldHVybiB0fSksclsxXT10LCQuYXBwbHkoTSxyKX19KSx6W05dW0ZdfHxuKCIzNWU4IikoeltOXSxGLHpbTl0udmFsdWVPZiksdSh6LCJTeW1ib2wiKSx1KE1hdGgsIk1hdGgiLCEwKSx1KHIuSlNPTiwiSlNPTiIsITApfSwiMDFmOSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCIyZDAwIiksaT1uKCI1Y2ExIiksYT1uKCIyYWJhIiksbz1uKCIzMmU5IiksYz1uKCI4NGYyIikscz1uKCI0MWEwIikscD1uKCI3ZjIwIiksbD1uKCIzOGZkIiksdT1uKCIyYjRjIikoIml0ZXJhdG9yIiksZD0hKFtdLmtleXMmJiJuZXh0ImluW10ua2V5cygpKSxfPSJAQGl0ZXJhdG9yIixtPSJrZXlzIixmPSJ2YWx1ZXMiLGg9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc307ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuLHYseSxnLHcpe3Mobix0LHYpO3ZhciBiLGsseCxDPWZ1bmN0aW9uKGUpe2lmKCFkJiZlIGluIE8pcmV0dXJuIE9bZV07c3dpdGNoKGUpe2Nhc2UgbTpyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG4odGhpcyxlKX07Y2FzZSBmOnJldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgbih0aGlzLGUpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG4odGhpcyxlKX19LFM9dCsiIEl0ZXJhdG9yIixQPXk9PWYsaj0hMSxPPWUucHJvdG90eXBlLEE9T1t1XXx8T1tfXXx8eSYmT1t5XSxFPUF8fEMoeSksVD15P1A/QygiZW50cmllcyIpOkU6dm9pZCAwLEQ9IkFycmF5Ij09dCYmTy5lbnRyaWVzfHxBO2lmKEQmJih4PWwoRC5jYWxsKG5ldyBlKSkseCE9PU9iamVjdC5wcm90b3R5cGUmJngubmV4dCYmKHAoeCxTLCEwKSxyfHwiZnVuY3Rpb24iPT10eXBlb2YgeFt1XXx8byh4LHUsaCkpKSxQJiZBJiZBLm5hbWUhPT1mJiYoaj0hMCxFPWZ1bmN0aW9uKCl7cmV0dXJuIEEuY2FsbCh0aGlzKX0pLHImJiF3fHwhZCYmIWomJk9bdV18fG8oTyx1LEUpLGNbdF09RSxjW1NdPWgseSlpZihiPXt2YWx1ZXM6UD9FOkMoZiksa2V5czpnP0U6QyhtKSxlbnRyaWVzOlR9LHcpZm9yKGsgaW4gYilrIGluIE98fGEoTyxrLGJba10pO2Vsc2UgaShpLlAraS5GKihkfHxqKSx0LGIpO3JldHVybiBifX0sIjAyZjQiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI0NTg4IiksaT1uKCJiZTEzIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0LG4pe3ZhciBhLG8sYz1TdHJpbmcoaSh0KSkscz1yKG4pLHA9Yy5sZW5ndGg7cmV0dXJuIHM8MHx8cz49cD9lPyIiOnZvaWQgMDooYT1jLmNoYXJDb2RlQXQocyksYTw1NTI5Nnx8YT41NjMxOXx8cysxPT09cHx8KG89Yy5jaGFyQ29kZUF0KHMrMSkpPDU2MzIwfHxvPjU3MzQzP2U/Yy5jaGFyQXQocyk6YTplP2Muc2xpY2UocyxzKzIpOm8tNTYzMjArKGEtNTUyOTY8PDEwKSs2NTUzNil9fX0sIjAzOTAiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiMDJmNCIpKCEwKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiB0KyhuP3IoZSx0KS5sZW5ndGg6MSl9fSwiMDM5NSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjM2YzMiKSxpPW4oIjZhYmYiKS5mLGE9e30udG9TdHJpbmcsbz0ib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmd2luZG93JiZPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcz9PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh3aW5kb3cpOltdLGM9ZnVuY3Rpb24oZSl7dHJ5e3JldHVybiBpKGUpfWNhdGNoKHQpe3JldHVybiBvLnNsaWNlKCl9fTtlLmV4cG9ydHMuZj1mdW5jdGlvbihlKXtyZXR1cm4gbyYmIltvYmplY3QgV2luZG93XSI9PWEuY2FsbChlKT9jKGUpOmkocihlKSl9fSwiMDQyMyI6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IuaZguS+oee3j+mhjeODqeODs+OCryIsIm1jYXAiOiLmmYLkvqHnt4/poY0iLCIyNGhfdm9sdW1lIjoiMjTmmYLplpPps6XosrTml48iLCIyNGhfaGlnaF9sb3ciOiIyNOaZgumWkyDmnIDpq5jlgKQv5pyA5a6J5YCkIn0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH3jgavjgojjgovmj5DkvpsiLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IuS7ruaDs+mAmuiyqOS+oeagvOOBruavlOi8gyIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiLku67mg7PpgJrosqjmmYLkvqHnt4/poY3jga7mr5TovIMifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR944Gr44KI44KL5o+Q5L6bIn0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjRI5pyA6auY5YCkIiwiMjRoX2xvdyI6IjI0SOacgOWuieWApCIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW5944Gu5L6h5qC844OB44Oj44O844OI44KS6KaL44KLIiwicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH3jgavjgojjgovmj5DkvpsifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfeOBq+OCiOOCi+aPkOS+myJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR944Gr44KI44KL5o+Q5L6bIn0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR944Gr44KI44KL5o+Q5L6bIn0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0SOacgOmrmOWApCIsIjI0aF9sb3ciOiIyNEjmnIDlronlgKQiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiJXtjb2lufeOBruS+oeagvOODgeODo+ODvOODiOOCkuimi+OCiyIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR944Gr44KI44KL5o+Q5L6bIn0sImNvaW5fY29udmVydGVyX3dpZGdldCI6eyJ2aWV3X3ByaWNlX2NoYXJ0IjoiJXtjb2lufeOBruS+oeagvOODgeODo+ODvOODiOOCkuimi+OCiyIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR944Gr44KI44KL5o+Q5L6bIn0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiLku67mg7PpgJrosqjjg4fjg7zjgr/kuIDopqciLCJzdWJ0aXRsZSI6IijmmYLkvqHnt4/poY3kuIrkvY0le3RvcH0pIiwicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH3jgavjgojjgovmj5DkvpsifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLlhY3osqzkuovpoIU6IOOBk+OBruODhOODvOODq+OBr+OCqOODs+OCv+ODvOODhuOCpOODoeODs+ODiOOCkuebrueahOOBqOOBl+OBpuaPkOS+m+OBleOCjOOBpuOBiuOCiuOAgeiyoeWLmeeahOOBquWKqeiogOOCkuaIkOOBmeOCguOBruOBp+OBr+OBguOCiuOBvuOBm+OCk+OAgiIsInNwaW4iOiLjgrnjg5Tjg7MiLCJhdmFpbGFibGVfY29pbnMiOiLliKnnlKjlj6/og73jgarjgrPjgqTjg7MifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiJDb2luR2Vja28g5L6h5qC844Ki44OD44OX44OH44O844OIIiwidG90YWxfbWNhcCI6IuaZguS+oee3j+mhjeWQiOioiCIsIjI0aF92b2wiOiIyNEjlj5blvJXpq5giLCJkb20iOiLljaDmnInnjocifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoi5Y+W5byV5omAIiwicGFpciI6IumAmuiyqOODmuOCoiIsInByaWNlIjoi5L6h5qC8Iiwidm9sdW1lIjoi5Y+W5byV6auYIiwidHJ1c3Rfc2NvcmUiOiLjg4jjg6njgrnjg4jjgrnjgrPjgqIiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi5L6h5qC844OB44Oj44O844OI44KS6KaL44KLIiwicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH3jgavjgojjgovmj5DkvpsiLCJ2aWV3X2FsbCI6IuOBmeOBueOBpuOBriAle2NvaW59IOODnuODvOOCseODg+ODiOOCkuihqOekuiJ9fScpfSwiMDU2YyI6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6Iue4veW4guWAvOaOkuWQjSIsIm1jYXAiOiLnuL3luILlgLwiLCIyNGhfdm9sdW1lIjoiMjQg5bCP5pmC5Lqk5piT6YePIiwiMjRoX2hpZ2hfbG93IjoiMjQg5bCP5pmC6auY5YO5L+S9juWDuSJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmj5DkvpsiLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IuWKoOWvhuiyqOW5o+WMr+eOh+avlOi8gyIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiLliqDlr4bosqjluaPluILlgLzmr5TovIMifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmj5DkvpsifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNCDlsI/mmYLpq5jlg7kiLCIyNGhfbG93IjoiMjQg5bCP5pmC5L2O5YO5Iiwidmlld19wcmljZV9jaGFydCI6IuafpeeciyAle2NvaW59IOeahOWMr+eOh+WcluihqCIsInBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmj5DkvpsifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5o+Q5L6bIn0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IueUsSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOaPkOS+myJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5o+Q5L6bIn0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0IOWwj+aZgumrmOWDuSIsIjI0aF9sb3ciOiIyNCDlsI/mmYLkvY7lg7kiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi5p+l55yLICV7Y29pbn0g55qE5Yyv546H5ZyW6KGoIiwicG93ZXJlZF9ieSI6IueUsSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOaPkOS+myJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IuafpeeciyAle2NvaW59IOeahOWMr+eOh+i1sOWLouWcliIsInBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmj5DkvpsifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IuWKoOWvhuiyqOW5o+aoueeLgOWcliIsInN1YnRpdGxlIjoiKOW4guWAvOWJjSAle3RvcH0g5ZCNKSIsInBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmj5DkvpsifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLlhY3osqzogbLmmI7vvJrmraTlt6Xlhbflg4XkvpvlqJvmqILkuYvnlKjvvIzkuI3mp4vmiJDosqHli5nlu7rorbDjgIIiLCJzcGluIjoiU3BpbiIsImF2YWlsYWJsZV9jb2lucyI6IuWPr+eUqOiyqOW5oyJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyDljK/njofmm7TmlrAiLCJ0b3RhbF9tY2FwIjoi57i95biC5YC8IiwiMjRoX3ZvbCI6IjI0IOWwj+aZguS6pOaYk+mHjyIsImRvbSI6IuW4guS9lOeOhyJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiLkuqTmmJPlubPlj7AiLCJwYWlyIjoi5bCNIiwicHJpY2UiOiLlg7nmoLwiLCJ2b2x1bWUiOiLkuqTmmJPph48iLCJ0cnVzdF9zY29yZSI6IuS/oeS7u+WIhuaVuCIsInZpZXdfcHJpY2VfY2hhcnQiOiLmn6XnnIvljK/njofotbDli6LlnJYiLCJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5o+Q5L6bIiwidmlld19hbGwiOiLmn6XnnIvmiYDmnIkgJXtjb2lufSDluILloLQifX0nKX0sIjA3ZTMiOmZ1bmN0aW9uKGUsdCl7dmFyIG49e30uaGFzT3duUHJvcGVydHk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIG4uY2FsbChlLHQpfX0sIjA4MjUiOmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiJDbGFzc2lmaWNhIGNhcC4gZGkgbWVyY2F0byIsIm1jYXAiOiJDYXAuIGRpIG1lcmNhdG8iLCIyNGhfdm9sdW1lIjoiVm9sdW1lIGluIDI0IG9yZSIsIjI0aF9oaWdoX2xvdyI6Ik1heC9taW4gaW4gMjQgb3JlIn0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiQ29uZnJvbnRvIHByZXp6aSBkZWxsZSBjcmlwdG8iLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiQ29uZnJvbnRvIGRpIGNhcGl0YWxpenphemlvbmUgZGkgbWVyY2F0byBkZWxsZSBjcmlwdG8ifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiJNYXNzaW1vIGluIDI0IG9yZSIsIjI0aF9sb3ciOiJNaW5pbW8gaW4gMjQgb3JlIiwidmlld19wcmljZV9jaGFydCI6IlZpc3VhbGl6emEgZ3JhZmljbyBwcmV6emkgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6Ik1hc3NpbW8gaW4gMjQgb3JlIiwiMjRoX2xvdyI6Ik1pbmltbyBpbiAyNCBvcmUiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmlzdWFsaXp6YSBncmFmaWNvIHByZXp6aSAle2NvaW59IiwicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZpc3VhbGl6emEgZ3JhZmljbyBwcmV6emkgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6Ik1hcHBhIGFkIGFsYmVybyBkZWxsZSBjcmlwdG92YWx1dGUiLCJzdWJ0aXRsZSI6IihWYWx1dGUgdG9wICV7dG9wfSBwZXIgY2FwaXRhbGl6emF6aW9uZSBkaSBtZXJjYXRvKSIsInBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiJEaXNjbGFpbWVyOiBRdWVzdGkgc3RydW1lbnRpIHNvbm8gYSBzY29wbyBkaSBpbnRyYXR0ZW5pbWVudG8gZSBub24gY29zdGl0dWlzY29ubyB1bmEgY29uc3VsZW56YSBmaW5hbnppYXJpYS4iLCJzcGluIjoiU3BpbiIsImF2YWlsYWJsZV9jb2lucyI6IlZhbHV0ZSBEaXNwb25pYmlsaSJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkFnZ2lvcm5hbWVudG8gcHJlenppIENvaW5HZWNrbyIsInRvdGFsX21jYXAiOiJDYXAuIGRpIG1lcmNhdG8gdG90YWxlIiwiMjRoX3ZvbCI6IlZvbHVtZSBpbiAyNCBvcmUiLCJkb20iOiJEb20ifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiRXhjaGFuZ2UiLCJwYWlyIjoiQ29wcGlhIiwicHJpY2UiOiJQcmV6em8iLCJ2b2x1bWUiOiJWb2x1bWUiLCJ0cnVzdF9zY29yZSI6IlB1bnRlZ2dpbyBkaSBmaWR1Y2lhIiwidmlld19wcmljZV9jaGFydCI6IlZpc3VhbGl6emEgZ3JhZmljbyBwcmV6emkiLCJwb3dlcmVkX2J5IjoiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJWaXN1YWxpenphIHR1dHRpIGkgbWVyY2F0aSAle2NvaW59In19Jyl9LCIwYTQ5IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiOWI0MyIpLGk9bigiNjI2YSIpLGE9bigiNGJmOCIpLG89bigiOWRlZiIpLGM9bigiY2QxYyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuPTE9PWUscz0yPT1lLHA9Mz09ZSxsPTQ9PWUsdT02PT1lLGQ9NT09ZXx8dSxfPXR8fGM7cmV0dXJuIGZ1bmN0aW9uKHQsYyxtKXtmb3IodmFyIGYsaCx2PWEodCkseT1pKHYpLGc9cihjLG0sMyksdz1vKHkubGVuZ3RoKSxiPTAsaz1uP18odCx3KTpzP18odCwwKTp2b2lkIDA7dz5iO2IrKylpZigoZHx8YiBpbiB5KSYmKGY9eVtiXSxoPWcoZixiLHYpLGUpKWlmKG4pa1tiXT1oO2Vsc2UgaWYoaClzd2l0Y2goZSl7Y2FzZSAzOnJldHVybiEwO2Nhc2UgNTpyZXR1cm4gZjtjYXNlIDY6cmV0dXJuIGI7Y2FzZSAyOmsucHVzaChmKX1lbHNlIGlmKGwpcmV0dXJuITE7cmV0dXJuIHU/LTE6cHx8bD9sOmt9fX0sIjBiZmIiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiY2I3YyIpO2UuZXhwb3J0cz1mdW5jdGlvbigpe3ZhciBlPXIodGhpcyksdD0iIjtyZXR1cm4gZS5nbG9iYWwmJih0Kz0iZyIpLGUuaWdub3JlQ2FzZSYmKHQrPSJpIiksZS5tdWx0aWxpbmUmJih0Kz0ibSIpLGUudW5pY29kZSYmKHQrPSJ1IiksZS5zdGlja3kmJih0Kz0ieSIpLHR9fSwiMGQ1OCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImNlMTAiKSxpPW4oImUxMWUiKTtlLmV4cG9ydHM9T2JqZWN0LmtleXN8fGZ1bmN0aW9uKGUpe3JldHVybiByKGUsaSl9fSwiMGY3YyI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCI2ODhlIik7ZS5leHBvcnRzPUZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kfHxyfSwiMGZjOSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjNhMzgiKSxpPU1hdGgubWF4LGE9TWF0aC5taW47ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9cihlKSxlPDA/aShlK3QsMCk6YShlLHQpfX0sMTE1MzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjgzYzIiKSxpPXIoIiVTdHJpbmclIiksYT1yKCIlVHlwZUVycm9yJSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZigic3ltYm9sIj09PXR5cGVvZiBlKXRocm93IG5ldyBhKCJDYW5ub3QgY29udmVydCBhIFN5bWJvbCB2YWx1ZSB0byBhIHN0cmluZyIpO3JldHVybiBpKGUpfX0sMTE2OTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMmQ5NSIpO2UuZXhwb3J0cz1BcnJheS5pc0FycmF5fHxmdW5jdGlvbihlKXtyZXR1cm4iQXJyYXkiPT1yKGUpfX0sIjExZTkiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI1MmE3IiksaT1uKCI0NjMwIiksYT1uKCI2ODIxIiksbz1uKCI2YTk5IiksYz1uKCI2OWE4Iikscz1uKCJjNjlhIikscD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yO3QuZj1uKCI5ZTFlIik/cDpmdW5jdGlvbihlLHQpe2lmKGU9YShlKSx0PW8odCwhMCkscyl0cnl7cmV0dXJuIHAoZSx0KX1jYXRjaChuKXt9aWYoYyhlLHQpKXJldHVybiBpKCFyLmYuY2FsbChlLHQpLGVbdF0pfX0sMTQ5NTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiODZjYyIpLGk9bigiY2I3YyIpLGE9bigiMGQ1OCIpO2UuZXhwb3J0cz1uKCI5ZTFlIik/T2JqZWN0LmRlZmluZVByb3BlcnRpZXM6ZnVuY3Rpb24oZSx0KXtpKGUpO3ZhciBuLG89YSh0KSxjPW8ubGVuZ3RoLHM9MDt3aGlsZShjPnMpci5mKGUsbj1vW3MrK10sdFtuXSk7cmV0dXJuIGV9fSwxNjU0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiNzFjMSIpKCEwKTtuKCIzMGYxIikoU3RyaW5nLCJTdHJpbmciLChmdW5jdGlvbihlKXt0aGlzLl90PVN0cmluZyhlKSx0aGlzLl9pPTB9KSwoZnVuY3Rpb24oKXt2YXIgZSx0PXRoaXMuX3Qsbj10aGlzLl9pO3JldHVybiBuPj10Lmxlbmd0aD97dmFsdWU6dm9pZCAwLGRvbmU6ITB9OihlPXIodCxuKSx0aGlzLl9pKz1lLmxlbmd0aCx7dmFsdWU6ZSxkb25lOiExfSl9KSl9LDE2OTE6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ImNvbnN0cnVjdG9yLGhhc093blByb3BlcnR5LGlzUHJvdG90eXBlT2YscHJvcGVydHlJc0VudW1lcmFibGUsdG9Mb2NhbGVTdHJpbmcsdG9TdHJpbmcsdmFsdWVPZiIuc3BsaXQoIiwiKX0sIjFiN2YiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiNTYyZSIpLGk9IuKAiyI7ZS5leHBvcnRzPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZy5wcm90b3R5cGUudHJpbSYmaS50cmltKCk9PT1pP1N0cmluZy5wcm90b3R5cGUudHJpbTpyfX0sIjFiYzMiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJmNzcyIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7aWYoIXIoZSkpcmV0dXJuIGU7dmFyIG4saTtpZih0JiYiZnVuY3Rpb24iPT10eXBlb2Yobj1lLnRvU3RyaW5nKSYmIXIoaT1uLmNhbGwoZSkpKXJldHVybiBpO2lmKCJmdW5jdGlvbiI9PXR5cGVvZihuPWUudmFsdWVPZikmJiFyKGk9bi5jYWxsKGUpKSlyZXR1cm4gaTtpZighdCYmImZ1bmN0aW9uIj09dHlwZW9mKG49ZS50b1N0cmluZykmJiFyKGk9bi5jYWxsKGUpKSlyZXR1cm4gaTt0aHJvdyBUeXBlRXJyb3IoIkNhbid0IGNvbnZlcnQgb2JqZWN0IHRvIHByaW1pdGl2ZSB2YWx1ZSIpfX0sIjFlYzkiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJmNzcyIiksaT1uKCJlNTNkIikuZG9jdW1lbnQsYT1yKGkpJiZyKGkuY3JlYXRlRWxlbWVudCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBhP2kuY3JlYXRlRWxlbWVudChlKTp7fX19LDIwOmZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9bigiNWMyMiIpfSwiMjEwYyI6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IlBlcmluZ2thdCBLYXAgUGFzYXIiLCJtY2FwIjoiS2FwaXRhbGlzYXNpIFBhc2FyIiwiMjRoX3ZvbHVtZSI6IlZvbHVtZSAyNEoiLCIyNGhfaGlnaF9sb3ciOiJUaW5nZ2kvUmVuZGFoIDI0SiJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEaWR1a3VuZyBvbGVoICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IlBlcmJhbmRpbmdhbiBIYXJnYSBLcmlwdG8iLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiUGVyYmFuZGluZ2FuIEthcCBQYWFyIEtyaXB0byJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRpZHVrdW5nIG9sZWggJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0SiBUaW5nZ2kiLCIyNGhfbG93IjoiMjRKIFJlbmRhaCIsInZpZXdfcHJpY2VfY2hhcnQiOiJMaWhhdCBHcmFmaWsgSGFyZ2EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJEaWR1a3VuZyBvbGVoICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiRGlkdWt1bmcgb2xlaCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRpZHVrdW5nIG9sZWggJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiRGlkdWt1bmcgb2xlaCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0SiBUaW5nZ2kiLCIyNGhfbG93IjoiMjRKIFJlbmRhaCIsInZpZXdfcHJpY2VfY2hhcnQiOiJMaWhhdCBHcmFmaWsgSGFyZ2EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJEaWR1a3VuZyBvbGVoICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiJMaWhhdCBHcmFmaWsgSGFyZ2EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJEaWR1a3VuZyBvbGVoICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IlBldGEgUG9ob24gQ3J5cHRvY3VycmVuY3kiLCJzdWJ0aXRsZSI6Iigle3RvcH0gVGVyYXRhcyBCZXJkYXNhcmthbiBLYXAgUGFzYXIpIiwicG93ZXJlZF9ieSI6IkRpZHVrdW5nIG9sZWggJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IlNhbmdrYWxhbjogQWxhdCBpbmkgYmVyZnVuZ3NpIHNlYmFnYWkgaGlidXJhbiBkYW4gYnVrYW4gbWVydXBha2FuIHNhcmFuIGtldWFuZ2FuLiIsInNwaW4iOiJQdXRhciIsImF2YWlsYWJsZV9jb2lucyI6IktvaW4geWFuZyBUZXJzZWRpYSJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IlBlbWJhcnVhbiBIYXJnYSBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiVG90YWwgS2FwIFAiLCIyNGhfdm9sIjoiVm9sdW1lIDI0SiIsImRvbSI6IkRvbSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJCdXJzYSIsInBhaXIiOiJQYXNhbmdhbiIsInByaWNlIjoiSGFyZ2EiLCJ2b2x1bWUiOiJWb2x1bWUiLCJ0cnVzdF9zY29yZSI6IlNrb3IgS2VwZXJjYXlhYW4iLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiTGloYXQgR3JhZmlrIEhhcmdhIiwicG93ZXJlZF9ieSI6IkRpZHVrdW5nIG9sZWggJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiTGloYXQgc2VtdWEgcGFzYXIgJXtjb2lufSJ9fScpfSwiMjE0ZiI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCJiMGM1Iik7dmFyIHI9bigiMmFiYSIpLGk9bigiMzJlOSIpLGE9bigiNzllNSIpLG89bigiYmUxMyIpLGM9bigiMmI0YyIpLHM9bigiNTIwYSIpLHA9Yygic3BlY2llcyIpLGw9IWEoKGZ1bmN0aW9uKCl7dmFyIGU9Ly4vO3JldHVybiBlLmV4ZWM9ZnVuY3Rpb24oKXt2YXIgZT1bXTtyZXR1cm4gZS5ncm91cHM9e2E6IjcifSxlfSwiNyIhPT0iIi5yZXBsYWNlKGUsIiQ8YT4iKX0pKSx1PWZ1bmN0aW9uKCl7dmFyIGU9Lyg/OikvLHQ9ZS5leGVjO2UuZXhlYz1mdW5jdGlvbigpe3JldHVybiB0LmFwcGx5KHRoaXMsYXJndW1lbnRzKX07dmFyIG49ImFiIi5zcGxpdChlKTtyZXR1cm4gMj09PW4ubGVuZ3RoJiYiYSI9PT1uWzBdJiYiYiI9PT1uWzFdfSgpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7dmFyIGQ9YyhlKSxfPSFhKChmdW5jdGlvbigpe3ZhciB0PXt9O3JldHVybiB0W2RdPWZ1bmN0aW9uKCl7cmV0dXJuIDd9LDchPSIiW2VdKHQpfSkpLG09Xz8hYSgoZnVuY3Rpb24oKXt2YXIgdD0hMSxuPS9hLztyZXR1cm4gbi5leGVjPWZ1bmN0aW9uKCl7cmV0dXJuIHQ9ITAsbnVsbH0sInNwbGl0Ij09PWUmJihuLmNvbnN0cnVjdG9yPXt9LG4uY29uc3RydWN0b3JbcF09ZnVuY3Rpb24oKXtyZXR1cm4gbn0pLG5bZF0oIiIpLCF0fSkpOnZvaWQgMDtpZighX3x8IW18fCJyZXBsYWNlIj09PWUmJiFsfHwic3BsaXQiPT09ZSYmIXUpe3ZhciBmPS8uL1tkXSxoPW4obyxkLCIiW2VdLChmdW5jdGlvbihlLHQsbixyLGkpe3JldHVybiB0LmV4ZWM9PT1zP18mJiFpP3tkb25lOiEwLHZhbHVlOmYuY2FsbCh0LG4scil9Ontkb25lOiEwLHZhbHVlOmUuY2FsbChuLHQscil9Ontkb25lOiExfX0pKSx2PWhbMF0seT1oWzFdO3IoU3RyaW5nLnByb3RvdHlwZSxlLHYpLGkoUmVnRXhwLnByb3RvdHlwZSxkLDI9PXQ/ZnVuY3Rpb24oZSx0KXtyZXR1cm4geS5jYWxsKGUsdGhpcyx0KX06ZnVuY3Rpb24oZSl7cmV0dXJuIHkuY2FsbChlLHRoaXMpfSl9fX0sIjIxYWEiOmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiJSYW5nbGlzdGUgZWZ0ZXIgbWFya2Vkc3bDpnJkaSIsIm1jYXAiOiJNYXJrZWRzdsOmcmRpIiwiMjRoX3ZvbHVtZSI6IjI0dCB2b2x1bWVuIiwiMjRoX2hpZ2hfbG93IjoiMjR0IGjDuGovbGF2In0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRyZXZldCBhZiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJTYW1tZW5saWduaW5nIGFmIGtyeXB0b2t1cnMiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiU2FtbWVubGlnbmluZyBhZiBrcnlwdG9tYXJrZWRzdsOmcmRpIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiRHJldmV0IGFmICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNHQgaMO4aiIsIjI0aF9sb3ciOiIyNHQgbGF2Iiwidmlld19wcmljZV9jaGFydCI6IlZpcyBrdXJzZGlhZ3JhbSBmb3IgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJEcmV2ZXQgYWYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcmV2ZXQgYWYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcmV2ZXQgYWYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiRHJldmV0IGFmICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjR0IGjDuGoiLCIyNGhfbG93IjoiMjR0IGxhdiIsInZpZXdfcHJpY2VfY2hhcnQiOiJWaXMga3Vyc2RpYWdyYW0gZm9yICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiRHJldmV0IGFmICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiJWaXMga3Vyc2RpYWdyYW0gZm9yICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiRHJldmV0IGFmICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6Ik92ZXJzaWd0IG92ZXIga3J5cHRvdmFsdXRhZXIiLCJzdWJ0aXRsZSI6IihUb3AgJXt0b3B9IHVkIGZyYSBtYXJrZWRzdsOmcmRpKSIsInBvd2VyZWRfYnkiOiJEcmV2ZXQgYWYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IkFuc3ZhcnNmcmFza3JpdmVsc2U6IERpc3NlIHbDpnJrdMO4amVyIGZ1bmdlcmVyIHNvbSB1bmRlcmhvbGRuaW5nIG9nIHVkZ8O4ciBpa2tlIGZpbmFuc2llbCByw6VkZ2l2bmluZy4iLCJzcGluIjoiS2FzdCIsImF2YWlsYWJsZV9jb2lucyI6IlRpbGfDpm5nZWxpZ2UgY29pbnMifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiJDb2luR2Vja28ga3Vyc29wZGF0ZXJpbmciLCJ0b3RhbF9tY2FwIjoiTWFya2Vkc3bDpnJkaSBpIGFsdCIsIjI0aF92b2wiOiIyNHQgdm9sdW1lbiIsImRvbSI6IkRvbSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJCw7hycyIsInBhaXIiOiJQYXIiLCJwcmljZSI6IlByaXMiLCJ2b2x1bWUiOiJWb2x1bWVuIiwidHJ1c3Rfc2NvcmUiOiJUaWxsaWRzc2NvcmUiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmlzIGt1cnNkaWFncmFtIiwicG93ZXJlZF9ieSI6IkRyZXZldCBhZiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJWaXMgYWxsZSAle2NvaW59LW1hcmtlZGVyIn19Jyl9LCIyMWQwIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPUZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZyxpPS9eXHMqY2xhc3NcYi8sYT1mdW5jdGlvbihlKXt0cnl7dmFyIHQ9ci5jYWxsKGUpO3JldHVybiBpLnRlc3QodCl9Y2F0Y2gobil7cmV0dXJuITF9fSxvPWZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4hYShlKSYmKHIuY2FsbChlKSwhMCl9Y2F0Y2godCl7cmV0dXJuITF9fSxjPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcscz0iW29iamVjdCBGdW5jdGlvbl0iLHA9IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIixsPSJmdW5jdGlvbiI9PT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09PXR5cGVvZiBTeW1ib2wudG9TdHJpbmdUYWc7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKCFlKXJldHVybiExO2lmKCJmdW5jdGlvbiIhPT10eXBlb2YgZSYmIm9iamVjdCIhPT10eXBlb2YgZSlyZXR1cm4hMTtpZigiZnVuY3Rpb24iPT09dHlwZW9mIGUmJiFlLnByb3RvdHlwZSlyZXR1cm4hMDtpZihsKXJldHVybiBvKGUpO2lmKGEoZSkpcmV0dXJuITE7dmFyIHQ9Yy5jYWxsKGUpO3JldHVybiB0PT09c3x8dD09PXB9fSwiMjMwZSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImQzZjQiKSxpPW4oIjc3MjYiKS5kb2N1bWVudCxhPXIoaSkmJnIoaS5jcmVhdGVFbGVtZW50KTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGE/aS5jcmVhdGVFbGVtZW50KGUpOnt9fX0sIjIzYzYiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIyZDk1IiksaT1uKCIyYjRjIikoInRvU3RyaW5nVGFnIiksYT0iQXJndW1lbnRzIj09cihmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHN9KCkpLG89ZnVuY3Rpb24oZSx0KXt0cnl7cmV0dXJuIGVbdF19Y2F0Y2gobil7fX07ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0LG4sYztyZXR1cm4gdm9pZCAwPT09ZT8iVW5kZWZpbmVkIjpudWxsPT09ZT8iTnVsbCI6InN0cmluZyI9PXR5cGVvZihuPW8odD1PYmplY3QoZSksaSkpP246YT9yKHQpOiJPYmplY3QiPT0oYz1yKHQpKSYmImZ1bmN0aW9uIj09dHlwZW9mIHQuY2FsbGVlPyJBcmd1bWVudHMiOmN9fSwiMjQxZSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjI1ZWIiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdChyKGUpKX19LCIyNGZiIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSx0KXt2YXIgbj1lWzFdfHwiIixyPWVbM107aWYoIXIpcmV0dXJuIG47aWYodCYmImZ1bmN0aW9uIj09PXR5cGVvZiBidG9hKXt2YXIgYT1pKHIpLG89ci5zb3VyY2VzLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIi8qIyBzb3VyY2VVUkw9IityLnNvdXJjZVJvb3QrZSsiICovIn0pKTtyZXR1cm5bbl0uY29uY2F0KG8pLmNvbmNhdChbYV0pLmpvaW4oIlxuIil9cmV0dXJuW25dLmpvaW4oIlxuIil9ZnVuY3Rpb24gaShlKXt2YXIgdD1idG9hKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShlKSkpKSxuPSJzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCwiK3Q7cmV0dXJuIi8qIyAiK24rIiAqLyJ9ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0PVtdO3JldHVybiB0LnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWFwKChmdW5jdGlvbih0KXt2YXIgbj1yKHQsZSk7cmV0dXJuIHRbMl0/IkBtZWRpYSAiK3RbMl0rInsiK24rIn0iOm59KSkuam9pbigiIil9LHQuaT1mdW5jdGlvbihlLG4peyJzdHJpbmciPT09dHlwZW9mIGUmJihlPVtbbnVsbCxlLCIiXV0pO2Zvcih2YXIgcj17fSxpPTA7aTx0aGlzLmxlbmd0aDtpKyspe3ZhciBhPXRoaXNbaV1bMF07bnVsbCE9YSYmKHJbYV09ITApfWZvcihpPTA7aTxlLmxlbmd0aDtpKyspe3ZhciBvPWVbaV07bnVsbCE9b1swXSYmcltvWzBdXXx8KG4mJiFvWzJdP29bMl09bjpuJiYob1syXT0iKCIrb1syXSsiKSBhbmQgKCIrbisiKSIpLHQucHVzaChvKSl9fSx0fX0sIjI1ZWIiOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKHZvaWQgMD09ZSl0aHJvdyBUeXBlRXJyb3IoIkNhbid0IGNhbGwgbWV0aG9kIG9uICAiK2UpO3JldHVybiBlfX0sMjg3NzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSx0LG4scixpLGEsbyxjKXt2YXIgcyxwPSJmdW5jdGlvbiI9PT10eXBlb2YgZT9lLm9wdGlvbnM6ZTtpZih0JiYocC5yZW5kZXI9dCxwLnN0YXRpY1JlbmRlckZucz1uLHAuX2NvbXBpbGVkPSEwKSxyJiYocC5mdW5jdGlvbmFsPSEwKSxhJiYocC5fc2NvcGVJZD0iZGF0YS12LSIrYSksbz8ocz1mdW5jdGlvbihlKXtlPWV8fHRoaXMuJHZub2RlJiZ0aGlzLiR2bm9kZS5zc3JDb250ZXh0fHx0aGlzLnBhcmVudCYmdGhpcy5wYXJlbnQuJHZub2RlJiZ0aGlzLnBhcmVudC4kdm5vZGUuc3NyQ29udGV4dCxlfHwidW5kZWZpbmVkIj09PXR5cGVvZiBfX1ZVRV9TU1JfQ09OVEVYVF9ffHwoZT1fX1ZVRV9TU1JfQ09OVEVYVF9fKSxpJiZpLmNhbGwodGhpcyxlKSxlJiZlLl9yZWdpc3RlcmVkQ29tcG9uZW50cyYmZS5fcmVnaXN0ZXJlZENvbXBvbmVudHMuYWRkKG8pfSxwLl9zc3JSZWdpc3Rlcj1zKTppJiYocz1jP2Z1bmN0aW9uKCl7aS5jYWxsKHRoaXMsdGhpcy4kcm9vdC4kb3B0aW9ucy5zaGFkb3dSb290KX06aSkscylpZihwLmZ1bmN0aW9uYWwpe3AuX2luamVjdFN0eWxlcz1zO3ZhciBsPXAucmVuZGVyO3AucmVuZGVyPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHMuY2FsbCh0KSxsKGUsdCl9fWVsc2V7dmFyIHU9cC5iZWZvcmVDcmVhdGU7cC5iZWZvcmVDcmVhdGU9dT9bXS5jb25jYXQodSxzKTpbc119cmV0dXJue2V4cG9ydHM6ZSxvcHRpb25zOnB9fW4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKX0sIjI4OGEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiZDAyNCIpLGk9bigiZmE0ZSIpLGE9bigiYTBkMyIpLG89bigiY2E5ZiIpLGM9ZnVuY3Rpb24oZSl7aSghMSxlKX0scz1TdHJpbmcucHJvdG90eXBlLnJlcGxhY2UscD1TdHJpbmcucHJvdG90eXBlLnNwbGl0LGw9Inx8fHwiLHU9ZnVuY3Rpb24oZSl7dmFyIHQ9ZSUxMDtyZXR1cm4gMTEhPT1lJiYxPT09dD8wOjI8PXQmJnQ8PTQmJiEoZT49MTImJmU8PTE0KT8xOjJ9LGQ9e2FyYWJpYzpmdW5jdGlvbihlKXtpZihlPDMpcmV0dXJuIGU7dmFyIHQ9ZSUxMDA7cmV0dXJuIHQ+PTMmJnQ8PTEwPzM6dD49MTE/NDo1fSxib3NuaWFuX3NlcmJpYW46dSxjaGluZXNlOmZ1bmN0aW9uKCl7cmV0dXJuIDB9LGNyb2F0aWFuOnUsZnJlbmNoOmZ1bmN0aW9uKGUpe3JldHVybiBlPjE/MTowfSxnZXJtYW46ZnVuY3Rpb24oZSl7cmV0dXJuIDEhPT1lPzE6MH0scnVzc2lhbjp1LGxpdGh1YW5pYW46ZnVuY3Rpb24oZSl7cmV0dXJuIGUlMTA9PT0xJiZlJTEwMCE9PTExPzA6ZSUxMD49MiYmZSUxMDw9OSYmKGUlMTAwPDExfHxlJTEwMD4xOSk/MToyfSxjemVjaDpmdW5jdGlvbihlKXtyZXR1cm4gMT09PWU/MDplPj0yJiZlPD00PzE6Mn0scG9saXNoOmZ1bmN0aW9uKGUpe2lmKDE9PT1lKXJldHVybiAwO3ZhciB0PWUlMTA7cmV0dXJuIDI8PXQmJnQ8PTQmJihlJTEwMDwxMHx8ZSUxMDA+PTIwKT8xOjJ9LGljZWxhbmRpYzpmdW5jdGlvbihlKXtyZXR1cm4gZSUxMCE9PTF8fGUlMTAwPT09MTE/MTowfSxzbG92ZW5pYW46ZnVuY3Rpb24oZSl7dmFyIHQ9ZSUxMDA7cmV0dXJuIDE9PT10PzA6Mj09PXQ/MTozPT09dHx8ND09PXQ/MjozfX0sXz17YXJhYmljOlsiYXIiXSxib3NuaWFuX3NlcmJpYW46WyJicy1MYXRuLUJBIiwiYnMtQ3lybC1CQSIsInNybC1SUyIsInNyLVJTIl0sY2hpbmVzZTpbImlkIiwiaWQtSUQiLCJqYSIsImtvIiwia28tS1IiLCJsbyIsIm1zIiwidGgiLCJ0aC1USCIsInpoIl0sY3JvYXRpYW46WyJociIsImhyLUhSIl0sZ2VybWFuOlsiZmEiLCJkYSIsImRlIiwiZW4iLCJlcyIsImZpIiwiZWwiLCJoZSIsImhpLUlOIiwiaHUiLCJodS1IVSIsIml0IiwibmwiLCJubyIsInB0Iiwic3YiLCJ0ciJdLGZyZW5jaDpbImZyIiwidGwiLCJwdC1iciJdLHJ1c3NpYW46WyJydSIsInJ1LVJVIl0sbGl0aHVhbmlhbjpbImx0Il0sY3plY2g6WyJjcyIsImNzLUNaIiwic2siXSxwb2xpc2g6WyJwbCJdLGljZWxhbmRpYzpbImlzIl0sc2xvdmVuaWFuOlsic2wtU0wiXX07ZnVuY3Rpb24gbShlKXt2YXIgdD17fTtyZXR1cm4gcihlLChmdW5jdGlvbihlLG4pe3IoZSwoZnVuY3Rpb24oZSl7dFtlXT1ufSkpfSkpLHR9ZnVuY3Rpb24gZihlKXt2YXIgdD1tKF8pO3JldHVybiB0W2VdfHx0W3AuY2FsbChlLC8tLywxKVswXV18fHQuZW59ZnVuY3Rpb24gaChlLHQpe3JldHVybiBkW2YoZSldKHQpfWZ1bmN0aW9uIHYoZSl7cmV0dXJuIGUucmVwbGFjZSgvWy4qKz9eJHt9KCl8W1xdXFxdL2csIlxcJCYiKX1mdW5jdGlvbiB5KGUpe3ZhciB0PWUmJmUucHJlZml4fHwiJXsiLG49ZSYmZS5zdWZmaXh8fCJ9IjtpZih0PT09bHx8bj09PWwpdGhyb3cgbmV3IFJhbmdlRXJyb3IoJyInK2wrJyIgdG9rZW4gaXMgcmVzZXJ2ZWQgZm9yIHBsdXJhbGl6YXRpb24nKTtyZXR1cm4gbmV3IFJlZ0V4cCh2KHQpKyIoLio/KSIrdihuKSwiZyIpfXZhciBnPS9cJC9nLHc9IiQkIixiPS8lXHsoLio/KVx9L2c7ZnVuY3Rpb24gayhlLHQsbixyKXtpZigic3RyaW5nIiE9PXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoIlBvbHlnbG90LnRyYW5zZm9ybVBocmFzZSBleHBlY3RzIGFyZ3VtZW50ICMxIHRvIGJlIHN0cmluZyIpO2lmKG51bGw9PXQpcmV0dXJuIGU7dmFyIGk9ZSxjPXJ8fGIsdT0ibnVtYmVyIj09PXR5cGVvZiB0P3tzbWFydF9jb3VudDp0fTp0O2lmKG51bGwhPXUuc21hcnRfY291bnQmJmkpe3ZhciBkPXAuY2FsbChpLGwpO2k9byhkW2gobnx8ImVuIix1LnNtYXJ0X2NvdW50KV18fGRbMF0pfXJldHVybiBpPXMuY2FsbChpLGMsKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGEodSx0KSYmbnVsbCE9dVt0XT9zLmNhbGwodVt0XSxnLHcpOmV9KSksaX1mdW5jdGlvbiB4KGUpe3ZhciB0PWV8fHt9O3RoaXMucGhyYXNlcz17fSx0aGlzLmV4dGVuZCh0LnBocmFzZXN8fHt9KSx0aGlzLmN1cnJlbnRMb2NhbGU9dC5sb2NhbGV8fCJlbiI7dmFyIG49dC5hbGxvd01pc3Npbmc/azpudWxsO3RoaXMub25NaXNzaW5nS2V5PSJmdW5jdGlvbiI9PT10eXBlb2YgdC5vbk1pc3NpbmdLZXk/dC5vbk1pc3NpbmdLZXk6bix0aGlzLndhcm49dC53YXJufHxjLHRoaXMudG9rZW5SZWdleD15KHQuaW50ZXJwb2xhdGlvbil9eC5wcm90b3R5cGUubG9jYWxlPWZ1bmN0aW9uKGUpe3JldHVybiBlJiYodGhpcy5jdXJyZW50TG9jYWxlPWUpLHRoaXMuY3VycmVudExvY2FsZX0seC5wcm90b3R5cGUuZXh0ZW5kPWZ1bmN0aW9uKGUsdCl7cihlLChmdW5jdGlvbihlLG4pe3ZhciByPXQ/dCsiLiIrbjpuOyJvYmplY3QiPT09dHlwZW9mIGU/dGhpcy5leHRlbmQoZSxyKTp0aGlzLnBocmFzZXNbcl09ZX0pLHRoaXMpfSx4LnByb3RvdHlwZS51bnNldD1mdW5jdGlvbihlLHQpeyJzdHJpbmciPT09dHlwZW9mIGU/ZGVsZXRlIHRoaXMucGhyYXNlc1tlXTpyKGUsKGZ1bmN0aW9uKGUsbil7dmFyIHI9dD90KyIuIituOm47Im9iamVjdCI9PT10eXBlb2YgZT90aGlzLnVuc2V0KGUscik6ZGVsZXRlIHRoaXMucGhyYXNlc1tyXX0pLHRoaXMpfSx4LnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3RoaXMucGhyYXNlcz17fX0seC5wcm90b3R5cGUucmVwbGFjZT1mdW5jdGlvbihlKXt0aGlzLmNsZWFyKCksdGhpcy5leHRlbmQoZSl9LHgucHJvdG90eXBlLnQ9ZnVuY3Rpb24oZSx0KXt2YXIgbixyLGk9bnVsbD09dD97fTp0O2lmKCJzdHJpbmciPT09dHlwZW9mIHRoaXMucGhyYXNlc1tlXSluPXRoaXMucGhyYXNlc1tlXTtlbHNlIGlmKCJzdHJpbmciPT09dHlwZW9mIGkuXyluPWkuXztlbHNlIGlmKHRoaXMub25NaXNzaW5nS2V5KXt2YXIgYT10aGlzLm9uTWlzc2luZ0tleTtyPWEoZSxpLHRoaXMuY3VycmVudExvY2FsZSx0aGlzLnRva2VuUmVnZXgpfWVsc2UgdGhpcy53YXJuKCdNaXNzaW5nIHRyYW5zbGF0aW9uIGZvciBrZXk6ICInK2UrJyInKSxyPWU7cmV0dXJuInN0cmluZyI9PT10eXBlb2YgbiYmKHI9ayhuLGksdGhpcy5jdXJyZW50TG9jYWxlLHRoaXMudG9rZW5SZWdleCkpLHJ9LHgucHJvdG90eXBlLmhhcz1mdW5jdGlvbihlKXtyZXR1cm4gYSh0aGlzLnBocmFzZXMsZSl9LHgudHJhbnNmb3JtUGhyYXNlPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gayhlLHQsbil9LGUuZXhwb3J0cz14fSwiMjhhNSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCJhYWUzIiksaT1uKCJjYjdjIiksYT1uKCJlYmQ2Iiksbz1uKCIwMzkwIiksYz1uKCI5ZGVmIikscz1uKCI1ZjFiIikscD1uKCI1MjBhIiksbD1uKCI3OWU1IiksdT1NYXRoLm1pbixkPVtdLnB1c2gsXz0ic3BsaXQiLG09Imxlbmd0aCIsZj0ibGFzdEluZGV4IixoPTQyOTQ5NjcyOTUsdj0hbCgoZnVuY3Rpb24oKXtSZWdFeHAoaCwieSIpfSkpO24oIjIxNGYiKSgic3BsaXQiLDIsKGZ1bmN0aW9uKGUsdCxuLGwpe3ZhciB5O3JldHVybiB5PSJjIj09ImFiYmMiW19dKC8oYikqLylbMV18fDQhPSJ0ZXN0IltfXSgvKD86KS8sLTEpW21dfHwyIT0iYWIiW19dKC8oPzphYikqLylbbV18fDQhPSIuIltfXSgvKC4/KSguPykvKVttXXx8Ii4iW19dKC8oKSgpLylbbV0+MXx8IiJbX10oLy4/LylbbV0/ZnVuY3Rpb24oZSx0KXt2YXIgaT1TdHJpbmcodGhpcyk7aWYodm9pZCAwPT09ZSYmMD09PXQpcmV0dXJuW107aWYoIXIoZSkpcmV0dXJuIG4uY2FsbChpLGUsdCk7dmFyIGEsbyxjLHM9W10sbD0oZS5pZ25vcmVDYXNlPyJpIjoiIikrKGUubXVsdGlsaW5lPyJtIjoiIikrKGUudW5pY29kZT8idSI6IiIpKyhlLnN0aWNreT8ieSI6IiIpLHU9MCxfPXZvaWQgMD09PXQ/aDp0Pj4+MCx2PW5ldyBSZWdFeHAoZS5zb3VyY2UsbCsiZyIpO3doaWxlKGE9cC5jYWxsKHYsaSkpe2lmKG89dltmXSxvPnUmJihzLnB1c2goaS5zbGljZSh1LGEuaW5kZXgpKSxhW21dPjEmJmEuaW5kZXg8aVttXSYmZC5hcHBseShzLGEuc2xpY2UoMSkpLGM9YVswXVttXSx1PW8sc1ttXT49XykpYnJlYWs7dltmXT09PWEuaW5kZXgmJnZbZl0rK31yZXR1cm4gdT09PWlbbV0/IWMmJnYudGVzdCgiIil8fHMucHVzaCgiIik6cy5wdXNoKGkuc2xpY2UodSkpLHNbbV0+Xz9zLnNsaWNlKDAsXyk6c306IjAiW19dKHZvaWQgMCwwKVttXT9mdW5jdGlvbihlLHQpe3JldHVybiB2b2lkIDA9PT1lJiYwPT09dD9bXTpuLmNhbGwodGhpcyxlLHQpfTpuLFtmdW5jdGlvbihuLHIpe3ZhciBpPWUodGhpcyksYT12b2lkIDA9PW4/dm9pZCAwOm5bdF07cmV0dXJuIHZvaWQgMCE9PWE/YS5jYWxsKG4saSxyKTp5LmNhbGwoU3RyaW5nKGkpLG4scil9LGZ1bmN0aW9uKGUsdCl7dmFyIHI9bCh5LGUsdGhpcyx0LHkhPT1uKTtpZihyLmRvbmUpcmV0dXJuIHIudmFsdWU7dmFyIHA9aShlKSxkPVN0cmluZyh0aGlzKSxfPWEocCxSZWdFeHApLG09cC51bmljb2RlLGY9KHAuaWdub3JlQ2FzZT8iaSI6IiIpKyhwLm11bHRpbGluZT8ibSI6IiIpKyhwLnVuaWNvZGU/InUiOiIiKSsodj8ieSI6ImciKSxnPW5ldyBfKHY/cDoiXig/OiIrcC5zb3VyY2UrIikiLGYpLHc9dm9pZCAwPT09dD9oOnQ+Pj4wO2lmKDA9PT13KXJldHVybltdO2lmKDA9PT1kLmxlbmd0aClyZXR1cm4gbnVsbD09PXMoZyxkKT9bZF06W107dmFyIGI9MCxrPTAseD1bXTt3aGlsZShrPGQubGVuZ3RoKXtnLmxhc3RJbmRleD12P2s6MDt2YXIgQyxTPXMoZyx2P2Q6ZC5zbGljZShrKSk7aWYobnVsbD09PVN8fChDPXUoYyhnLmxhc3RJbmRleCsodj8wOmspKSxkLmxlbmd0aCkpPT09YilrPW8oZCxrLG0pO2Vsc2V7aWYoeC5wdXNoKGQuc2xpY2UoYixrKSkseC5sZW5ndGg9PT13KXJldHVybiB4O2Zvcih2YXIgUD0xO1A8PVMubGVuZ3RoLTE7UCsrKWlmKHgucHVzaChTW1BdKSx4Lmxlbmd0aD09PXcpcmV0dXJuIHg7az1iPUN9fXJldHVybiB4LnB1c2goZC5zbGljZShiKSkseH1dfSkpfSwiMjk0YyI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dHJ5e3JldHVybiEhZSgpfWNhdGNoKHQpe3JldHVybiEwfX19LCIyYWJhIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNzcyNiIpLGk9bigiMzJlOSIpLGE9bigiNjlhOCIpLG89bigiY2E1YSIpKCJzcmMiKSxjPW4oImZhNWIiKSxzPSJ0b1N0cmluZyIscD0oIiIrYykuc3BsaXQocyk7bigiODM3OCIpLmluc3BlY3RTb3VyY2U9ZnVuY3Rpb24oZSl7cmV0dXJuIGMuY2FsbChlKX0sKGUuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixjKXt2YXIgcz0iZnVuY3Rpb24iPT10eXBlb2YgbjtzJiYoYShuLCJuYW1lIil8fGkobiwibmFtZSIsdCkpLGVbdF0hPT1uJiYocyYmKGEobixvKXx8aShuLG8sZVt0XT8iIitlW3RdOnAuam9pbihTdHJpbmcodCkpKSksZT09PXI/ZVt0XT1uOmM/ZVt0XT9lW3RdPW46aShlLHQsbik6KGRlbGV0ZSBlW3RdLGkoZSx0LG4pKSl9KShGdW5jdGlvbi5wcm90b3R5cGUscywoZnVuY3Rpb24oKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgdGhpcyYmdGhpc1tvXXx8Yy5jYWxsKHRoaXMpfSkpfSwiMmFlYiI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImNiN2MiKSxpPW4oIjE0OTUiKSxhPW4oImUxMWUiKSxvPW4oIjYxM2IiKSgiSUVfUFJPVE8iKSxjPWZ1bmN0aW9uKCl7fSxzPSJwcm90b3R5cGUiLHA9ZnVuY3Rpb24oKXt2YXIgZSx0PW4oIjIzMGUiKSgiaWZyYW1lIikscj1hLmxlbmd0aCxpPSI8IixvPSI+Ijt0LnN0eWxlLmRpc3BsYXk9Im5vbmUiLG4oImZhYjIiKS5hcHBlbmRDaGlsZCh0KSx0LnNyYz0iamF2YXNjcmlwdDoiLGU9dC5jb250ZW50V2luZG93LmRvY3VtZW50LGUub3BlbigpLGUud3JpdGUoaSsic2NyaXB0IitvKyJkb2N1bWVudC5GPU9iamVjdCIraSsiL3NjcmlwdCIrbyksZS5jbG9zZSgpLHA9ZS5GO3doaWxlKHItLSlkZWxldGUgcFtzXVthW3JdXTtyZXR1cm4gcCgpfTtlLmV4cG9ydHM9T2JqZWN0LmNyZWF0ZXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtyZXR1cm4gbnVsbCE9PWU/KGNbc109cihlKSxuPW5ldyBjLGNbc109bnVsbCxuW29dPWUpOm49cCgpLHZvaWQgMD09PXQ/bjppKG4sdCl9fSwiMmIwZSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjsoZnVuY3Rpb24oZSl7Ci8qIQogKiBWdWUuanMgdjIuNS4yMQogKiAoYykgMjAxNC0yMDE4IEV2YW4gWW91CiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4KICovCnZhciBuPU9iamVjdC5mcmVlemUoe30pO2Z1bmN0aW9uIHIoZSl7cmV0dXJuIHZvaWQgMD09PWV8fG51bGw9PT1lfWZ1bmN0aW9uIGkoZSl7cmV0dXJuIHZvaWQgMCE9PWUmJm51bGwhPT1lfWZ1bmN0aW9uIGEoZSl7cmV0dXJuITA9PT1lfWZ1bmN0aW9uIG8oZSl7cmV0dXJuITE9PT1lfWZ1bmN0aW9uIGMoZSl7cmV0dXJuInN0cmluZyI9PT10eXBlb2YgZXx8Im51bWJlciI9PT10eXBlb2YgZXx8InN5bWJvbCI9PT10eXBlb2YgZXx8ImJvb2xlYW4iPT09dHlwZW9mIGV9ZnVuY3Rpb24gcyhlKXtyZXR1cm4gbnVsbCE9PWUmJiJvYmplY3QiPT09dHlwZW9mIGV9dmFyIHA9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZztmdW5jdGlvbiBsKGUpe3JldHVybiJbb2JqZWN0IE9iamVjdF0iPT09cC5jYWxsKGUpfWZ1bmN0aW9uIHUoZSl7cmV0dXJuIltvYmplY3QgUmVnRXhwXSI9PT1wLmNhbGwoZSl9ZnVuY3Rpb24gZChlKXt2YXIgdD1wYXJzZUZsb2F0KFN0cmluZyhlKSk7cmV0dXJuIHQ+PTAmJk1hdGguZmxvb3IodCk9PT10JiZpc0Zpbml0ZShlKX1mdW5jdGlvbiBfKGUpe3JldHVybiBudWxsPT1lPyIiOiJvYmplY3QiPT09dHlwZW9mIGU/SlNPTi5zdHJpbmdpZnkoZSxudWxsLDIpOlN0cmluZyhlKX1mdW5jdGlvbiBtKGUpe3ZhciB0PXBhcnNlRmxvYXQoZSk7cmV0dXJuIGlzTmFOKHQpP2U6dH1mdW5jdGlvbiBmKGUsdCl7Zm9yKHZhciBuPU9iamVjdC5jcmVhdGUobnVsbCkscj1lLnNwbGl0KCIsIiksaT0wO2k8ci5sZW5ndGg7aSsrKW5bcltpXV09ITA7cmV0dXJuIHQ/ZnVuY3Rpb24oZSl7cmV0dXJuIG5bZS50b0xvd2VyQ2FzZSgpXX06ZnVuY3Rpb24oZSl7cmV0dXJuIG5bZV19fWYoInNsb3QsY29tcG9uZW50IiwhMCk7dmFyIGg9Zigia2V5LHJlZixzbG90LHNsb3Qtc2NvcGUsaXMiKTtmdW5jdGlvbiB2KGUsdCl7aWYoZS5sZW5ndGgpe3ZhciBuPWUuaW5kZXhPZih0KTtpZihuPi0xKXJldHVybiBlLnNwbGljZShuLDEpfX12YXIgeT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2Z1bmN0aW9uIGcoZSx0KXtyZXR1cm4geS5jYWxsKGUsdCl9ZnVuY3Rpb24gdyhlKXt2YXIgdD1PYmplY3QuY3JlYXRlKG51bGwpO3JldHVybiBmdW5jdGlvbihuKXt2YXIgcj10W25dO3JldHVybiByfHwodFtuXT1lKG4pKX19dmFyIGI9Ly0oXHcpL2csaz13KChmdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKGIsKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ/dC50b1VwcGVyQ2FzZSgpOiIifSkpfSkpLHg9dygoZnVuY3Rpb24oZSl7cmV0dXJuIGUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrZS5zbGljZSgxKX0pKSxDPS9cQihbQS1aXSkvZyxTPXcoKGZ1bmN0aW9uKGUpe3JldHVybiBlLnJlcGxhY2UoQywiLSQxIikudG9Mb3dlckNhc2UoKX0pKTtmdW5jdGlvbiBQKGUsdCl7ZnVuY3Rpb24gbihuKXt2YXIgcj1hcmd1bWVudHMubGVuZ3RoO3JldHVybiByP3I+MT9lLmFwcGx5KHQsYXJndW1lbnRzKTplLmNhbGwodCxuKTplLmNhbGwodCl9cmV0dXJuIG4uX2xlbmd0aD1lLmxlbmd0aCxufWZ1bmN0aW9uIGooZSx0KXtyZXR1cm4gZS5iaW5kKHQpfXZhciBPPUZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kP2o6UDtmdW5jdGlvbiBBKGUsdCl7dD10fHwwO3ZhciBuPWUubGVuZ3RoLXQscj1uZXcgQXJyYXkobik7d2hpbGUobi0tKXJbbl09ZVtuK3RdO3JldHVybiByfWZ1bmN0aW9uIEUoZSx0KXtmb3IodmFyIG4gaW4gdCllW25dPXRbbl07cmV0dXJuIGV9ZnVuY3Rpb24gVChlKXtmb3IodmFyIHQ9e30sbj0wO248ZS5sZW5ndGg7bisrKWVbbl0mJkUodCxlW25dKTtyZXR1cm4gdH1mdW5jdGlvbiBEKGUsdCxuKXt9dmFyIHo9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiExfSxNPWZ1bmN0aW9uKGUpe3JldHVybiBlfTtmdW5jdGlvbiAkKGUsdCl7aWYoZT09PXQpcmV0dXJuITA7dmFyIG49cyhlKSxyPXModCk7aWYoIW58fCFyKXJldHVybiFuJiYhciYmU3RyaW5nKGUpPT09U3RyaW5nKHQpO3RyeXt2YXIgaT1BcnJheS5pc0FycmF5KGUpLGE9QXJyYXkuaXNBcnJheSh0KTtpZihpJiZhKXJldHVybiBlLmxlbmd0aD09PXQubGVuZ3RoJiZlLmV2ZXJ5KChmdW5jdGlvbihlLG4pe3JldHVybiAkKGUsdFtuXSl9KSk7aWYoZSBpbnN0YW5jZW9mIERhdGUmJnQgaW5zdGFuY2VvZiBEYXRlKXJldHVybiBlLmdldFRpbWUoKT09PXQuZ2V0VGltZSgpO2lmKGl8fGEpcmV0dXJuITE7dmFyIG89T2JqZWN0LmtleXMoZSksYz1PYmplY3Qua2V5cyh0KTtyZXR1cm4gby5sZW5ndGg9PT1jLmxlbmd0aCYmby5ldmVyeSgoZnVuY3Rpb24obil7cmV0dXJuICQoZVtuXSx0W25dKX0pKX1jYXRjaChwKXtyZXR1cm4hMX19ZnVuY3Rpb24gTihlLHQpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKWlmKCQoZVtuXSx0KSlyZXR1cm4gbjtyZXR1cm4tMX1mdW5jdGlvbiBJKGUpe3ZhciB0PSExO3JldHVybiBmdW5jdGlvbigpe3R8fCh0PSEwLGUuYXBwbHkodGhpcyxhcmd1bWVudHMpKX19dmFyIEY9ImRhdGEtc2VydmVyLXJlbmRlcmVkIixMPVsiY29tcG9uZW50IiwiZGlyZWN0aXZlIiwiZmlsdGVyIl0sUj1bImJlZm9yZUNyZWF0ZSIsImNyZWF0ZWQiLCJiZWZvcmVNb3VudCIsIm1vdW50ZWQiLCJiZWZvcmVVcGRhdGUiLCJ1cGRhdGVkIiwiYmVmb3JlRGVzdHJveSIsImRlc3Ryb3llZCIsImFjdGl2YXRlZCIsImRlYWN0aXZhdGVkIiwiZXJyb3JDYXB0dXJlZCJdLFY9e29wdGlvbk1lcmdlU3RyYXRlZ2llczpPYmplY3QuY3JlYXRlKG51bGwpLHNpbGVudDohMSxwcm9kdWN0aW9uVGlwOiExLGRldnRvb2xzOiExLHBlcmZvcm1hbmNlOiExLGVycm9ySGFuZGxlcjpudWxsLHdhcm5IYW5kbGVyOm51bGwsaWdub3JlZEVsZW1lbnRzOltdLGtleUNvZGVzOk9iamVjdC5jcmVhdGUobnVsbCksaXNSZXNlcnZlZFRhZzp6LGlzUmVzZXJ2ZWRBdHRyOnosaXNVbmtub3duRWxlbWVudDp6LGdldFRhZ05hbWVzcGFjZTpELHBhcnNlUGxhdGZvcm1UYWdOYW1lOk0sbXVzdFVzZVByb3A6eixhc3luYzohMCxfbGlmZWN5Y2xlSG9va3M6Un07ZnVuY3Rpb24gVShlKXt2YXIgdD0oZSsiIikuY2hhckNvZGVBdCgwKTtyZXR1cm4gMzY9PT10fHw5NT09PXR9ZnVuY3Rpb24gSChlLHQsbixyKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHt2YWx1ZTpuLGVudW1lcmFibGU6ISFyLHdyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH0pfXZhciBHPS9bXlx3LiRdLztmdW5jdGlvbiBLKGUpe2lmKCFHLnRlc3QoZSkpe3ZhciB0PWUuc3BsaXQoIi4iKTtyZXR1cm4gZnVuY3Rpb24oZSl7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspe2lmKCFlKXJldHVybjtlPWVbdFtuXV19cmV0dXJuIGV9fX12YXIgQixxPSJfX3Byb3RvX18iaW57fSxKPSJ1bmRlZmluZWQiIT09dHlwZW9mIHdpbmRvdyxXPSJ1bmRlZmluZWQiIT09dHlwZW9mIFdYRW52aXJvbm1lbnQmJiEhV1hFbnZpcm9ubWVudC5wbGF0Zm9ybSxYPVcmJldYRW52aXJvbm1lbnQucGxhdGZvcm0udG9Mb3dlckNhc2UoKSxaPUomJndpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCksWT1aJiYvbXNpZXx0cmlkZW50Ly50ZXN0KFopLFE9WiYmWi5pbmRleE9mKCJtc2llIDkuMCIpPjAsZWU9WiYmWi5pbmRleE9mKCJlZGdlLyIpPjAsdGU9KFomJlouaW5kZXhPZigiYW5kcm9pZCIpLFomJi9pcGhvbmV8aXBhZHxpcG9kfGlvcy8udGVzdChaKXx8ImlvcyI9PT1YKSxuZT0oWiYmL2Nocm9tZVwvXGQrLy50ZXN0KFopLHt9LndhdGNoKSxyZT0hMTtpZihKKXRyeXt2YXIgaWU9e307T2JqZWN0LmRlZmluZVByb3BlcnR5KGllLCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7cmU9ITB9fSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QtcGFzc2l2ZSIsbnVsbCxpZSl9Y2F0Y2gob28pe312YXIgYWU9ZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCAwPT09QiYmKEI9IUomJiFXJiYidW5kZWZpbmVkIiE9PXR5cGVvZiBlJiYoZVsicHJvY2VzcyJdJiYic2VydmVyIj09PWVbInByb2Nlc3MiXS5lbnYuVlVFX0VOVikpLEJ9LG9lPUomJndpbmRvdy5fX1ZVRV9ERVZUT09MU19HTE9CQUxfSE9PS19fO2Z1bmN0aW9uIGNlKGUpe3JldHVybiJmdW5jdGlvbiI9PT10eXBlb2YgZSYmL25hdGl2ZSBjb2RlLy50ZXN0KGUudG9TdHJpbmcoKSl9dmFyIHNlLHBlPSJ1bmRlZmluZWQiIT09dHlwZW9mIFN5bWJvbCYmY2UoU3ltYm9sKSYmInVuZGVmaW5lZCIhPT10eXBlb2YgUmVmbGVjdCYmY2UoUmVmbGVjdC5vd25LZXlzKTtzZT0idW5kZWZpbmVkIiE9PXR5cGVvZiBTZXQmJmNlKFNldCk/U2V0OmZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSgpe3RoaXMuc2V0PU9iamVjdC5jcmVhdGUobnVsbCl9cmV0dXJuIGUucHJvdG90eXBlLmhhcz1mdW5jdGlvbihlKXtyZXR1cm4hMD09PXRoaXMuc2V0W2VdfSxlLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oZSl7dGhpcy5zZXRbZV09ITB9LGUucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy5zZXQ9T2JqZWN0LmNyZWF0ZShudWxsKX0sZX0oKTt2YXIgbGU9RCx1ZT0wLGRlPWZ1bmN0aW9uKCl7dGhpcy5pZD11ZSsrLHRoaXMuc3Vicz1bXX07ZGUucHJvdG90eXBlLmFkZFN1Yj1mdW5jdGlvbihlKXt0aGlzLnN1YnMucHVzaChlKX0sZGUucHJvdG90eXBlLnJlbW92ZVN1Yj1mdW5jdGlvbihlKXt2KHRoaXMuc3VicyxlKX0sZGUucHJvdG90eXBlLmRlcGVuZD1mdW5jdGlvbigpe2RlLnRhcmdldCYmZGUudGFyZ2V0LmFkZERlcCh0aGlzKX0sZGUucHJvdG90eXBlLm5vdGlmeT1mdW5jdGlvbigpe3ZhciBlPXRoaXMuc3Vicy5zbGljZSgpO2Zvcih2YXIgdD0wLG49ZS5sZW5ndGg7dDxuO3QrKyllW3RdLnVwZGF0ZSgpfSxkZS50YXJnZXQ9bnVsbDt2YXIgX2U9W107ZnVuY3Rpb24gbWUoZSl7X2UucHVzaChlKSxkZS50YXJnZXQ9ZX1mdW5jdGlvbiBmZSgpe19lLnBvcCgpLGRlLnRhcmdldD1fZVtfZS5sZW5ndGgtMV19dmFyIGhlPWZ1bmN0aW9uKGUsdCxuLHIsaSxhLG8sYyl7dGhpcy50YWc9ZSx0aGlzLmRhdGE9dCx0aGlzLmNoaWxkcmVuPW4sdGhpcy50ZXh0PXIsdGhpcy5lbG09aSx0aGlzLm5zPXZvaWQgMCx0aGlzLmNvbnRleHQ9YSx0aGlzLmZuQ29udGV4dD12b2lkIDAsdGhpcy5mbk9wdGlvbnM9dm9pZCAwLHRoaXMuZm5TY29wZUlkPXZvaWQgMCx0aGlzLmtleT10JiZ0LmtleSx0aGlzLmNvbXBvbmVudE9wdGlvbnM9byx0aGlzLmNvbXBvbmVudEluc3RhbmNlPXZvaWQgMCx0aGlzLnBhcmVudD12b2lkIDAsdGhpcy5yYXc9ITEsdGhpcy5pc1N0YXRpYz0hMSx0aGlzLmlzUm9vdEluc2VydD0hMCx0aGlzLmlzQ29tbWVudD0hMSx0aGlzLmlzQ2xvbmVkPSExLHRoaXMuaXNPbmNlPSExLHRoaXMuYXN5bmNGYWN0b3J5PWMsdGhpcy5hc3luY01ldGE9dm9pZCAwLHRoaXMuaXNBc3luY1BsYWNlaG9sZGVyPSExfSx2ZT17Y2hpbGQ6e2NvbmZpZ3VyYWJsZTohMH19O3ZlLmNoaWxkLmdldD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbXBvbmVudEluc3RhbmNlfSxPYmplY3QuZGVmaW5lUHJvcGVydGllcyhoZS5wcm90b3R5cGUsdmUpO3ZhciB5ZT1mdW5jdGlvbihlKXt2b2lkIDA9PT1lJiYoZT0iIik7dmFyIHQ9bmV3IGhlO3JldHVybiB0LnRleHQ9ZSx0LmlzQ29tbWVudD0hMCx0fTtmdW5jdGlvbiBnZShlKXtyZXR1cm4gbmV3IGhlKHZvaWQgMCx2b2lkIDAsdm9pZCAwLFN0cmluZyhlKSl9ZnVuY3Rpb24gd2UoZSl7dmFyIHQ9bmV3IGhlKGUudGFnLGUuZGF0YSxlLmNoaWxkcmVuJiZlLmNoaWxkcmVuLnNsaWNlKCksZS50ZXh0LGUuZWxtLGUuY29udGV4dCxlLmNvbXBvbmVudE9wdGlvbnMsZS5hc3luY0ZhY3RvcnkpO3JldHVybiB0Lm5zPWUubnMsdC5pc1N0YXRpYz1lLmlzU3RhdGljLHQua2V5PWUua2V5LHQuaXNDb21tZW50PWUuaXNDb21tZW50LHQuZm5Db250ZXh0PWUuZm5Db250ZXh0LHQuZm5PcHRpb25zPWUuZm5PcHRpb25zLHQuZm5TY29wZUlkPWUuZm5TY29wZUlkLHQuYXN5bmNNZXRhPWUuYXN5bmNNZXRhLHQuaXNDbG9uZWQ9ITAsdH12YXIgYmU9QXJyYXkucHJvdG90eXBlLGtlPU9iamVjdC5jcmVhdGUoYmUpLHhlPVsicHVzaCIsInBvcCIsInNoaWZ0IiwidW5zaGlmdCIsInNwbGljZSIsInNvcnQiLCJyZXZlcnNlIl07eGUuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIHQ9YmVbZV07SChrZSxlLChmdW5jdGlvbigpe3ZhciBuPVtdLHI9YXJndW1lbnRzLmxlbmd0aDt3aGlsZShyLS0pbltyXT1hcmd1bWVudHNbcl07dmFyIGksYT10LmFwcGx5KHRoaXMsbiksbz10aGlzLl9fb2JfXztzd2l0Y2goZSl7Y2FzZSJwdXNoIjpjYXNlInVuc2hpZnQiOmk9bjticmVhaztjYXNlInNwbGljZSI6aT1uLnNsaWNlKDIpO2JyZWFrfXJldHVybiBpJiZvLm9ic2VydmVBcnJheShpKSxvLmRlcC5ub3RpZnkoKSxhfSkpfSkpO3ZhciBDZT1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhrZSksU2U9ITA7ZnVuY3Rpb24gUGUoZSl7U2U9ZX12YXIgamU9ZnVuY3Rpb24oZSl7dGhpcy52YWx1ZT1lLHRoaXMuZGVwPW5ldyBkZSx0aGlzLnZtQ291bnQ9MCxIKGUsIl9fb2JfXyIsdGhpcyksQXJyYXkuaXNBcnJheShlKT8ocT9PZShlLGtlKTpBZShlLGtlLENlKSx0aGlzLm9ic2VydmVBcnJheShlKSk6dGhpcy53YWxrKGUpfTtmdW5jdGlvbiBPZShlLHQpe2UuX19wcm90b19fPXR9ZnVuY3Rpb24gQWUoZSx0LG4pe2Zvcih2YXIgcj0wLGk9bi5sZW5ndGg7cjxpO3IrKyl7dmFyIGE9bltyXTtIKGUsYSx0W2FdKX19ZnVuY3Rpb24gRWUoZSx0KXt2YXIgbjtpZihzKGUpJiYhKGUgaW5zdGFuY2VvZiBoZSkpcmV0dXJuIGcoZSwiX19vYl9fIikmJmUuX19vYl9fIGluc3RhbmNlb2YgamU/bj1lLl9fb2JfXzpTZSYmIWFlKCkmJihBcnJheS5pc0FycmF5KGUpfHxsKGUpKSYmT2JqZWN0LmlzRXh0ZW5zaWJsZShlKSYmIWUuX2lzVnVlJiYobj1uZXcgamUoZSkpLHQmJm4mJm4udm1Db3VudCsrLG59ZnVuY3Rpb24gVGUoZSx0LG4scixpKXt2YXIgYT1uZXcgZGUsbz1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUsdCk7aWYoIW98fCExIT09by5jb25maWd1cmFibGUpe3ZhciBjPW8mJm8uZ2V0LHM9byYmby5zZXQ7YyYmIXN8fDIhPT1hcmd1bWVudHMubGVuZ3RofHwobj1lW3RdKTt2YXIgcD0haSYmRWUobik7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7dmFyIHQ9Yz9jLmNhbGwoZSk6bjtyZXR1cm4gZGUudGFyZ2V0JiYoYS5kZXBlbmQoKSxwJiYocC5kZXAuZGVwZW5kKCksQXJyYXkuaXNBcnJheSh0KSYmTWUodCkpKSx0fSxzZXQ6ZnVuY3Rpb24odCl7dmFyIHI9Yz9jLmNhbGwoZSk6bjt0PT09cnx8dCE9PXQmJnIhPT1yfHxjJiYhc3x8KHM/cy5jYWxsKGUsdCk6bj10LHA9IWkmJkVlKHQpLGEubm90aWZ5KCkpfX0pfX1mdW5jdGlvbiBEZShlLHQsbil7aWYoQXJyYXkuaXNBcnJheShlKSYmZCh0KSlyZXR1cm4gZS5sZW5ndGg9TWF0aC5tYXgoZS5sZW5ndGgsdCksZS5zcGxpY2UodCwxLG4pLG47aWYodCBpbiBlJiYhKHQgaW4gT2JqZWN0LnByb3RvdHlwZSkpcmV0dXJuIGVbdF09bixuO3ZhciByPWUuX19vYl9fO3JldHVybiBlLl9pc1Z1ZXx8ciYmci52bUNvdW50P246cj8oVGUoci52YWx1ZSx0LG4pLHIuZGVwLm5vdGlmeSgpLG4pOihlW3RdPW4sbil9ZnVuY3Rpb24gemUoZSx0KXtpZihBcnJheS5pc0FycmF5KGUpJiZkKHQpKWUuc3BsaWNlKHQsMSk7ZWxzZXt2YXIgbj1lLl9fb2JfXztlLl9pc1Z1ZXx8biYmbi52bUNvdW50fHxnKGUsdCkmJihkZWxldGUgZVt0XSxuJiZuLmRlcC5ub3RpZnkoKSl9fWZ1bmN0aW9uIE1lKGUpe2Zvcih2YXIgdD12b2lkIDAsbj0wLHI9ZS5sZW5ndGg7bjxyO24rKyl0PWVbbl0sdCYmdC5fX29iX18mJnQuX19vYl9fLmRlcC5kZXBlbmQoKSxBcnJheS5pc0FycmF5KHQpJiZNZSh0KX1qZS5wcm90b3R5cGUud2Fsaz1mdW5jdGlvbihlKXtmb3IodmFyIHQ9T2JqZWN0LmtleXMoZSksbj0wO248dC5sZW5ndGg7bisrKVRlKGUsdFtuXSl9LGplLnByb3RvdHlwZS5vYnNlcnZlQXJyYXk9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTAsbj1lLmxlbmd0aDt0PG47dCsrKUVlKGVbdF0pfTt2YXIgJGU9Vi5vcHRpb25NZXJnZVN0cmF0ZWdpZXM7ZnVuY3Rpb24gTmUoZSx0KXtpZighdClyZXR1cm4gZTtmb3IodmFyIG4scixpLGE9T2JqZWN0LmtleXModCksbz0wO288YS5sZW5ndGg7bysrKW49YVtvXSxyPWVbbl0saT10W25dLGcoZSxuKT9yIT09aSYmbChyKSYmbChpKSYmTmUocixpKTpEZShlLG4saSk7cmV0dXJuIGV9ZnVuY3Rpb24gSWUoZSx0LG4pe3JldHVybiBuP2Z1bmN0aW9uKCl7dmFyIHI9ImZ1bmN0aW9uIj09PXR5cGVvZiB0P3QuY2FsbChuLG4pOnQsaT0iZnVuY3Rpb24iPT09dHlwZW9mIGU/ZS5jYWxsKG4sbik6ZTtyZXR1cm4gcj9OZShyLGkpOml9OnQ/ZT9mdW5jdGlvbigpe3JldHVybiBOZSgiZnVuY3Rpb24iPT09dHlwZW9mIHQ/dC5jYWxsKHRoaXMsdGhpcyk6dCwiZnVuY3Rpb24iPT09dHlwZW9mIGU/ZS5jYWxsKHRoaXMsdGhpcyk6ZSl9OnQ6ZX1mdW5jdGlvbiBGZShlLHQpe3JldHVybiB0P2U/ZS5jb25jYXQodCk6QXJyYXkuaXNBcnJheSh0KT90Olt0XTplfWZ1bmN0aW9uIExlKGUsdCxuLHIpe3ZhciBpPU9iamVjdC5jcmVhdGUoZXx8bnVsbCk7cmV0dXJuIHQ/RShpLHQpOml9JGUuZGF0YT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIG4/SWUoZSx0LG4pOnQmJiJmdW5jdGlvbiIhPT10eXBlb2YgdD9lOkllKGUsdCl9LFIuZm9yRWFjaCgoZnVuY3Rpb24oZSl7JGVbZV09RmV9KSksTC5mb3JFYWNoKChmdW5jdGlvbihlKXskZVtlKyJzIl09TGV9KSksJGUud2F0Y2g9ZnVuY3Rpb24oZSx0LG4scil7aWYoZT09PW5lJiYoZT12b2lkIDApLHQ9PT1uZSYmKHQ9dm9pZCAwKSwhdClyZXR1cm4gT2JqZWN0LmNyZWF0ZShlfHxudWxsKTtpZighZSlyZXR1cm4gdDt2YXIgaT17fTtmb3IodmFyIGEgaW4gRShpLGUpLHQpe3ZhciBvPWlbYV0sYz10W2FdO28mJiFBcnJheS5pc0FycmF5KG8pJiYobz1bb10pLGlbYV09bz9vLmNvbmNhdChjKTpBcnJheS5pc0FycmF5KGMpP2M6W2NdfXJldHVybiBpfSwkZS5wcm9wcz0kZS5tZXRob2RzPSRlLmluamVjdD0kZS5jb21wdXRlZD1mdW5jdGlvbihlLHQsbixyKXtpZighZSlyZXR1cm4gdDt2YXIgaT1PYmplY3QuY3JlYXRlKG51bGwpO3JldHVybiBFKGksZSksdCYmRShpLHQpLGl9LCRlLnByb3ZpZGU9SWU7dmFyIFJlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PXQ/ZTp0fTtmdW5jdGlvbiBWZShlLHQpe3ZhciBuPWUucHJvcHM7aWYobil7dmFyIHIsaSxhLG89e307aWYoQXJyYXkuaXNBcnJheShuKSl7cj1uLmxlbmd0aDt3aGlsZShyLS0paT1uW3JdLCJzdHJpbmciPT09dHlwZW9mIGkmJihhPWsoaSksb1thXT17dHlwZTpudWxsfSl9ZWxzZSBpZihsKG4pKWZvcih2YXIgYyBpbiBuKWk9bltjXSxhPWsoYyksb1thXT1sKGkpP2k6e3R5cGU6aX07ZWxzZSAwO2UucHJvcHM9b319ZnVuY3Rpb24gVWUoZSx0KXt2YXIgbj1lLmluamVjdDtpZihuKXt2YXIgcj1lLmluamVjdD17fTtpZihBcnJheS5pc0FycmF5KG4pKWZvcih2YXIgaT0wO2k8bi5sZW5ndGg7aSsrKXJbbltpXV09e2Zyb206bltpXX07ZWxzZSBpZihsKG4pKWZvcih2YXIgYSBpbiBuKXt2YXIgbz1uW2FdO3JbYV09bChvKT9FKHtmcm9tOmF9LG8pOntmcm9tOm99fWVsc2UgMH19ZnVuY3Rpb24gSGUoZSl7dmFyIHQ9ZS5kaXJlY3RpdmVzO2lmKHQpZm9yKHZhciBuIGluIHQpe3ZhciByPXRbbl07ImZ1bmN0aW9uIj09PXR5cGVvZiByJiYodFtuXT17YmluZDpyLHVwZGF0ZTpyfSl9fWZ1bmN0aW9uIEdlKGUsdCxuKXtpZigiZnVuY3Rpb24iPT09dHlwZW9mIHQmJih0PXQub3B0aW9ucyksVmUodCxuKSxVZSh0LG4pLEhlKHQpLCF0Ll9iYXNlJiYodC5leHRlbmRzJiYoZT1HZShlLHQuZXh0ZW5kcyxuKSksdC5taXhpbnMpKWZvcih2YXIgcj0wLGk9dC5taXhpbnMubGVuZ3RoO3I8aTtyKyspZT1HZShlLHQubWl4aW5zW3JdLG4pO3ZhciBhLG89e307Zm9yKGEgaW4gZSljKGEpO2ZvcihhIGluIHQpZyhlLGEpfHxjKGEpO2Z1bmN0aW9uIGMocil7dmFyIGk9JGVbcl18fFJlO29bcl09aShlW3JdLHRbcl0sbixyKX1yZXR1cm4gb31mdW5jdGlvbiBLZShlLHQsbixyKXtpZigic3RyaW5nIj09PXR5cGVvZiBuKXt2YXIgaT1lW3RdO2lmKGcoaSxuKSlyZXR1cm4gaVtuXTt2YXIgYT1rKG4pO2lmKGcoaSxhKSlyZXR1cm4gaVthXTt2YXIgbz14KGEpO2lmKGcoaSxvKSlyZXR1cm4gaVtvXTt2YXIgYz1pW25dfHxpW2FdfHxpW29dO3JldHVybiBjfX1mdW5jdGlvbiBCZShlLHQsbixyKXt2YXIgaT10W2VdLGE9IWcobixlKSxvPW5bZV0sYz1YZShCb29sZWFuLGkudHlwZSk7aWYoYz4tMSlpZihhJiYhZyhpLCJkZWZhdWx0Iikpbz0hMTtlbHNlIGlmKCIiPT09b3x8bz09PVMoZSkpe3ZhciBzPVhlKFN0cmluZyxpLnR5cGUpOyhzPDB8fGM8cykmJihvPSEwKX1pZih2b2lkIDA9PT1vKXtvPXFlKHIsaSxlKTt2YXIgcD1TZTtQZSghMCksRWUobyksUGUocCl9cmV0dXJuIG99ZnVuY3Rpb24gcWUoZSx0LG4pe2lmKGcodCwiZGVmYXVsdCIpKXt2YXIgcj10LmRlZmF1bHQ7cmV0dXJuIGUmJmUuJG9wdGlvbnMucHJvcHNEYXRhJiZ2b2lkIDA9PT1lLiRvcHRpb25zLnByb3BzRGF0YVtuXSYmdm9pZCAwIT09ZS5fcHJvcHNbbl0/ZS5fcHJvcHNbbl06ImZ1bmN0aW9uIj09PXR5cGVvZiByJiYiRnVuY3Rpb24iIT09SmUodC50eXBlKT9yLmNhbGwoZSk6cn19ZnVuY3Rpb24gSmUoZSl7dmFyIHQ9ZSYmZS50b1N0cmluZygpLm1hdGNoKC9eXHMqZnVuY3Rpb24gKFx3KykvKTtyZXR1cm4gdD90WzFdOiIifWZ1bmN0aW9uIFdlKGUsdCl7cmV0dXJuIEplKGUpPT09SmUodCl9ZnVuY3Rpb24gWGUoZSx0KXtpZighQXJyYXkuaXNBcnJheSh0KSlyZXR1cm4gV2UodCxlKT8wOi0xO2Zvcih2YXIgbj0wLHI9dC5sZW5ndGg7bjxyO24rKylpZihXZSh0W25dLGUpKXJldHVybiBuO3JldHVybi0xfWZ1bmN0aW9uIFplKGUsdCxuKXtpZih0KXt2YXIgcj10O3doaWxlKHI9ci4kcGFyZW50KXt2YXIgaT1yLiRvcHRpb25zLmVycm9yQ2FwdHVyZWQ7aWYoaSlmb3IodmFyIGE9MDthPGkubGVuZ3RoO2ErKyl0cnl7dmFyIG89ITE9PT1pW2FdLmNhbGwocixlLHQsbik7aWYobylyZXR1cm59Y2F0Y2gob28pe1llKG9vLHIsImVycm9yQ2FwdHVyZWQgaG9vayIpfX19WWUoZSx0LG4pfWZ1bmN0aW9uIFllKGUsdCxuKXtpZihWLmVycm9ySGFuZGxlcil0cnl7cmV0dXJuIFYuZXJyb3JIYW5kbGVyLmNhbGwobnVsbCxlLHQsbil9Y2F0Y2gob28pe1FlKG9vLG51bGwsImNvbmZpZy5lcnJvckhhbmRsZXIiKX1RZShlLHQsbil9ZnVuY3Rpb24gUWUoZSx0LG4pe2lmKCFKJiYhV3x8InVuZGVmaW5lZCI9PT10eXBlb2YgY29uc29sZSl0aHJvdyBlO2NvbnNvbGUuZXJyb3IoZSl9dmFyIGV0LHR0LG50PVtdLHJ0PSExO2Z1bmN0aW9uIGl0KCl7cnQ9ITE7dmFyIGU9bnQuc2xpY2UoMCk7bnQubGVuZ3RoPTA7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0KyspZVt0XSgpfXZhciBhdD0hMTtpZigidW5kZWZpbmVkIiE9PXR5cGVvZiBzZXRJbW1lZGlhdGUmJmNlKHNldEltbWVkaWF0ZSkpdHQ9ZnVuY3Rpb24oKXtzZXRJbW1lZGlhdGUoaXQpfTtlbHNlIGlmKCJ1bmRlZmluZWQiPT09dHlwZW9mIE1lc3NhZ2VDaGFubmVsfHwhY2UoTWVzc2FnZUNoYW5uZWwpJiYiW29iamVjdCBNZXNzYWdlQ2hhbm5lbENvbnN0cnVjdG9yXSIhPT1NZXNzYWdlQ2hhbm5lbC50b1N0cmluZygpKXR0PWZ1bmN0aW9uKCl7c2V0VGltZW91dChpdCwwKX07ZWxzZXt2YXIgb3Q9bmV3IE1lc3NhZ2VDaGFubmVsLGN0PW90LnBvcnQyO290LnBvcnQxLm9ubWVzc2FnZT1pdCx0dD1mdW5jdGlvbigpe2N0LnBvc3RNZXNzYWdlKDEpfX1pZigidW5kZWZpbmVkIiE9PXR5cGVvZiBQcm9taXNlJiZjZShQcm9taXNlKSl7dmFyIHN0PVByb21pc2UucmVzb2x2ZSgpO2V0PWZ1bmN0aW9uKCl7c3QudGhlbihpdCksdGUmJnNldFRpbWVvdXQoRCl9fWVsc2UgZXQ9dHQ7ZnVuY3Rpb24gcHQoZSl7cmV0dXJuIGUuX3dpdGhUYXNrfHwoZS5fd2l0aFRhc2s9ZnVuY3Rpb24oKXthdD0hMDt0cnl7cmV0dXJuIGUuYXBwbHkobnVsbCxhcmd1bWVudHMpfWZpbmFsbHl7YXQ9ITF9fSl9ZnVuY3Rpb24gbHQoZSx0KXt2YXIgbjtpZihudC5wdXNoKChmdW5jdGlvbigpe2lmKGUpdHJ5e2UuY2FsbCh0KX1jYXRjaChvbyl7WmUob28sdCwibmV4dFRpY2siKX1lbHNlIG4mJm4odCl9KSkscnR8fChydD0hMCxhdD90dCgpOmV0KCkpLCFlJiYidW5kZWZpbmVkIiE9PXR5cGVvZiBQcm9taXNlKXJldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24oZSl7bj1lfSkpfXZhciB1dD1uZXcgc2U7ZnVuY3Rpb24gZHQoZSl7X3QoZSx1dCksdXQuY2xlYXIoKX1mdW5jdGlvbiBfdChlLHQpe3ZhciBuLHIsaT1BcnJheS5pc0FycmF5KGUpO2lmKCEoIWkmJiFzKGUpfHxPYmplY3QuaXNGcm96ZW4oZSl8fGUgaW5zdGFuY2VvZiBoZSkpe2lmKGUuX19vYl9fKXt2YXIgYT1lLl9fb2JfXy5kZXAuaWQ7aWYodC5oYXMoYSkpcmV0dXJuO3QuYWRkKGEpfWlmKGkpe249ZS5sZW5ndGg7d2hpbGUobi0tKV90KGVbbl0sdCl9ZWxzZXtyPU9iamVjdC5rZXlzKGUpLG49ci5sZW5ndGg7d2hpbGUobi0tKV90KGVbcltuXV0sdCl9fX12YXIgbXQsZnQ9dygoZnVuY3Rpb24oZSl7dmFyIHQ9IiYiPT09ZS5jaGFyQXQoMCk7ZT10P2Uuc2xpY2UoMSk6ZTt2YXIgbj0ifiI9PT1lLmNoYXJBdCgwKTtlPW4/ZS5zbGljZSgxKTplO3ZhciByPSIhIj09PWUuY2hhckF0KDApO3JldHVybiBlPXI/ZS5zbGljZSgxKTplLHtuYW1lOmUsb25jZTpuLGNhcHR1cmU6cixwYXNzaXZlOnR9fSkpO2Z1bmN0aW9uIGh0KGUpe2Z1bmN0aW9uIHQoKXt2YXIgZT1hcmd1bWVudHMsbj10LmZucztpZighQXJyYXkuaXNBcnJheShuKSlyZXR1cm4gbi5hcHBseShudWxsLGFyZ3VtZW50cyk7Zm9yKHZhciByPW4uc2xpY2UoKSxpPTA7aTxyLmxlbmd0aDtpKyspcltpXS5hcHBseShudWxsLGUpfXJldHVybiB0LmZucz1lLHR9ZnVuY3Rpb24gdnQoZSx0LG4saSxvLGMpe3ZhciBzLHAsbCx1O2ZvcihzIGluIGUpcD1lW3NdLGw9dFtzXSx1PWZ0KHMpLHIocCl8fChyKGwpPyhyKHAuZm5zKSYmKHA9ZVtzXT1odChwKSksYSh1Lm9uY2UpJiYocD1lW3NdPW8odS5uYW1lLHAsdS5jYXB0dXJlKSksbih1Lm5hbWUscCx1LmNhcHR1cmUsdS5wYXNzaXZlLHUucGFyYW1zKSk6cCE9PWwmJihsLmZucz1wLGVbc109bCkpO2ZvcihzIGluIHQpcihlW3NdKSYmKHU9ZnQocyksaSh1Lm5hbWUsdFtzXSx1LmNhcHR1cmUpKX1mdW5jdGlvbiB5dChlLHQsbil7dmFyIG87ZSBpbnN0YW5jZW9mIGhlJiYoZT1lLmRhdGEuaG9va3x8KGUuZGF0YS5ob29rPXt9KSk7dmFyIGM9ZVt0XTtmdW5jdGlvbiBzKCl7bi5hcHBseSh0aGlzLGFyZ3VtZW50cyksdihvLmZucyxzKX1yKGMpP289aHQoW3NdKTppKGMuZm5zKSYmYShjLm1lcmdlZCk/KG89YyxvLmZucy5wdXNoKHMpKTpvPWh0KFtjLHNdKSxvLm1lcmdlZD0hMCxlW3RdPW99ZnVuY3Rpb24gZ3QoZSx0LG4pe3ZhciBhPXQub3B0aW9ucy5wcm9wcztpZighcihhKSl7dmFyIG89e30sYz1lLmF0dHJzLHM9ZS5wcm9wcztpZihpKGMpfHxpKHMpKWZvcih2YXIgcCBpbiBhKXt2YXIgbD1TKHApO3d0KG8scyxwLGwsITApfHx3dChvLGMscCxsLCExKX1yZXR1cm4gb319ZnVuY3Rpb24gd3QoZSx0LG4scixhKXtpZihpKHQpKXtpZihnKHQsbikpcmV0dXJuIGVbbl09dFtuXSxhfHxkZWxldGUgdFtuXSwhMDtpZihnKHQscikpcmV0dXJuIGVbbl09dFtyXSxhfHxkZWxldGUgdFtyXSwhMH1yZXR1cm4hMX1mdW5jdGlvbiBidChlKXtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKylpZihBcnJheS5pc0FycmF5KGVbdF0pKXJldHVybiBBcnJheS5wcm90b3R5cGUuY29uY2F0LmFwcGx5KFtdLGUpO3JldHVybiBlfWZ1bmN0aW9uIGt0KGUpe3JldHVybiBjKGUpP1tnZShlKV06QXJyYXkuaXNBcnJheShlKT9DdChlKTp2b2lkIDB9ZnVuY3Rpb24geHQoZSl7cmV0dXJuIGkoZSkmJmkoZS50ZXh0KSYmbyhlLmlzQ29tbWVudCl9ZnVuY3Rpb24gQ3QoZSx0KXt2YXIgbixvLHMscCxsPVtdO2ZvcihuPTA7bjxlLmxlbmd0aDtuKyspbz1lW25dLHIobyl8fCJib29sZWFuIj09PXR5cGVvZiBvfHwocz1sLmxlbmd0aC0xLHA9bFtzXSxBcnJheS5pc0FycmF5KG8pP28ubGVuZ3RoPjAmJihvPUN0KG8sKHR8fCIiKSsiXyIrbikseHQob1swXSkmJnh0KHApJiYobFtzXT1nZShwLnRleHQrb1swXS50ZXh0KSxvLnNoaWZ0KCkpLGwucHVzaC5hcHBseShsLG8pKTpjKG8pP3h0KHApP2xbc109Z2UocC50ZXh0K28pOiIiIT09byYmbC5wdXNoKGdlKG8pKTp4dChvKSYmeHQocCk/bFtzXT1nZShwLnRleHQrby50ZXh0KTooYShlLl9pc1ZMaXN0KSYmaShvLnRhZykmJnIoby5rZXkpJiZpKHQpJiYoby5rZXk9Il9fdmxpc3QiK3QrIl8iK24rIl9fIiksbC5wdXNoKG8pKSk7cmV0dXJuIGx9ZnVuY3Rpb24gU3QoZSx0KXtyZXR1cm4oZS5fX2VzTW9kdWxlfHxwZSYmIk1vZHVsZSI9PT1lW1N5bWJvbC50b1N0cmluZ1RhZ10pJiYoZT1lLmRlZmF1bHQpLHMoZSk/dC5leHRlbmQoZSk6ZX1mdW5jdGlvbiBQdChlLHQsbixyLGkpe3ZhciBhPXllKCk7cmV0dXJuIGEuYXN5bmNGYWN0b3J5PWUsYS5hc3luY01ldGE9e2RhdGE6dCxjb250ZXh0Om4sY2hpbGRyZW46cix0YWc6aX0sYX1mdW5jdGlvbiBqdChlLHQsbil7aWYoYShlLmVycm9yKSYmaShlLmVycm9yQ29tcCkpcmV0dXJuIGUuZXJyb3JDb21wO2lmKGkoZS5yZXNvbHZlZCkpcmV0dXJuIGUucmVzb2x2ZWQ7aWYoYShlLmxvYWRpbmcpJiZpKGUubG9hZGluZ0NvbXApKXJldHVybiBlLmxvYWRpbmdDb21wO2lmKCFpKGUuY29udGV4dHMpKXt2YXIgbz1lLmNvbnRleHRzPVtuXSxjPSEwLHA9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTAsbj1vLmxlbmd0aDt0PG47dCsrKW9bdF0uJGZvcmNlVXBkYXRlKCk7ZSYmKG8ubGVuZ3RoPTApfSxsPUkoKGZ1bmN0aW9uKG4pe2UucmVzb2x2ZWQ9U3Qobix0KSxjfHxwKCEwKX0pKSx1PUkoKGZ1bmN0aW9uKHQpe2koZS5lcnJvckNvbXApJiYoZS5lcnJvcj0hMCxwKCEwKSl9KSksZD1lKGwsdSk7cmV0dXJuIHMoZCkmJigiZnVuY3Rpb24iPT09dHlwZW9mIGQudGhlbj9yKGUucmVzb2x2ZWQpJiZkLnRoZW4obCx1KTppKGQuY29tcG9uZW50KSYmImZ1bmN0aW9uIj09PXR5cGVvZiBkLmNvbXBvbmVudC50aGVuJiYoZC5jb21wb25lbnQudGhlbihsLHUpLGkoZC5lcnJvcikmJihlLmVycm9yQ29tcD1TdChkLmVycm9yLHQpKSxpKGQubG9hZGluZykmJihlLmxvYWRpbmdDb21wPVN0KGQubG9hZGluZyx0KSwwPT09ZC5kZWxheT9lLmxvYWRpbmc9ITA6c2V0VGltZW91dCgoZnVuY3Rpb24oKXtyKGUucmVzb2x2ZWQpJiZyKGUuZXJyb3IpJiYoZS5sb2FkaW5nPSEwLHAoITEpKX0pLGQuZGVsYXl8fDIwMCkpLGkoZC50aW1lb3V0KSYmc2V0VGltZW91dCgoZnVuY3Rpb24oKXtyKGUucmVzb2x2ZWQpJiZ1KG51bGwpfSksZC50aW1lb3V0KSkpLGM9ITEsZS5sb2FkaW5nP2UubG9hZGluZ0NvbXA6ZS5yZXNvbHZlZH1lLmNvbnRleHRzLnB1c2gobil9ZnVuY3Rpb24gT3QoZSl7cmV0dXJuIGUuaXNDb21tZW50JiZlLmFzeW5jRmFjdG9yeX1mdW5jdGlvbiBBdChlKXtpZihBcnJheS5pc0FycmF5KGUpKWZvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgbj1lW3RdO2lmKGkobikmJihpKG4uY29tcG9uZW50T3B0aW9ucyl8fE90KG4pKSlyZXR1cm4gbn19ZnVuY3Rpb24gRXQoZSl7ZS5fZXZlbnRzPU9iamVjdC5jcmVhdGUobnVsbCksZS5faGFzSG9va0V2ZW50PSExO3ZhciB0PWUuJG9wdGlvbnMuX3BhcmVudExpc3RlbmVyczt0JiZNdChlLHQpfWZ1bmN0aW9uIFR0KGUsdCl7bXQuJG9uKGUsdCl9ZnVuY3Rpb24gRHQoZSx0KXttdC4kb2ZmKGUsdCl9ZnVuY3Rpb24genQoZSx0KXt2YXIgbj1tdDtyZXR1cm4gZnVuY3Rpb24gcigpe3ZhciBpPXQuYXBwbHkobnVsbCxhcmd1bWVudHMpO251bGwhPT1pJiZuLiRvZmYoZSxyKX19ZnVuY3Rpb24gTXQoZSx0LG4pe210PWUsdnQodCxufHx7fSxUdCxEdCx6dCxlKSxtdD12b2lkIDB9ZnVuY3Rpb24gJHQoZSl7dmFyIHQ9L15ob29rOi87ZS5wcm90b3R5cGUuJG9uPWZ1bmN0aW9uKGUsbil7dmFyIHI9dGhpcztpZihBcnJheS5pc0FycmF5KGUpKWZvcih2YXIgaT0wLGE9ZS5sZW5ndGg7aTxhO2krKylyLiRvbihlW2ldLG4pO2Vsc2Uoci5fZXZlbnRzW2VdfHwoci5fZXZlbnRzW2VdPVtdKSkucHVzaChuKSx0LnRlc3QoZSkmJihyLl9oYXNIb29rRXZlbnQ9ITApO3JldHVybiByfSxlLnByb3RvdHlwZS4kb25jZT1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXM7ZnVuY3Rpb24gcigpe24uJG9mZihlLHIpLHQuYXBwbHkobixhcmd1bWVudHMpfXJldHVybiByLmZuPXQsbi4kb24oZSxyKSxufSxlLnByb3RvdHlwZS4kb2ZmPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcztpZighYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gbi5fZXZlbnRzPU9iamVjdC5jcmVhdGUobnVsbCksbjtpZihBcnJheS5pc0FycmF5KGUpKXtmb3IodmFyIHI9MCxpPWUubGVuZ3RoO3I8aTtyKyspbi4kb2ZmKGVbcl0sdCk7cmV0dXJuIG59dmFyIGE9bi5fZXZlbnRzW2VdO2lmKCFhKXJldHVybiBuO2lmKCF0KXJldHVybiBuLl9ldmVudHNbZV09bnVsbCxuO2lmKHQpe3ZhciBvLGM9YS5sZW5ndGg7d2hpbGUoYy0tKWlmKG89YVtjXSxvPT09dHx8by5mbj09PXQpe2Euc3BsaWNlKGMsMSk7YnJlYWt9fXJldHVybiBufSxlLnByb3RvdHlwZS4kZW1pdD1mdW5jdGlvbihlKXt2YXIgdD10aGlzLG49dC5fZXZlbnRzW2VdO2lmKG4pe249bi5sZW5ndGg+MT9BKG4pOm47Zm9yKHZhciByPUEoYXJndW1lbnRzLDEpLGk9MCxhPW4ubGVuZ3RoO2k8YTtpKyspdHJ5e25baV0uYXBwbHkodCxyKX1jYXRjaChvbyl7WmUob28sdCwnZXZlbnQgaGFuZGxlciBmb3IgIicrZSsnIicpfX1yZXR1cm4gdH19ZnVuY3Rpb24gTnQoZSx0KXt2YXIgbj17fTtpZighZSlyZXR1cm4gbjtmb3IodmFyIHI9MCxpPWUubGVuZ3RoO3I8aTtyKyspe3ZhciBhPWVbcl0sbz1hLmRhdGE7aWYobyYmby5hdHRycyYmby5hdHRycy5zbG90JiZkZWxldGUgby5hdHRycy5zbG90LGEuY29udGV4dCE9PXQmJmEuZm5Db250ZXh0IT09dHx8IW98fG51bGw9PW8uc2xvdCkobi5kZWZhdWx0fHwobi5kZWZhdWx0PVtdKSkucHVzaChhKTtlbHNle3ZhciBjPW8uc2xvdCxzPW5bY118fChuW2NdPVtdKTsidGVtcGxhdGUiPT09YS50YWc/cy5wdXNoLmFwcGx5KHMsYS5jaGlsZHJlbnx8W10pOnMucHVzaChhKX19Zm9yKHZhciBwIGluIG4pbltwXS5ldmVyeShJdCkmJmRlbGV0ZSBuW3BdO3JldHVybiBufWZ1bmN0aW9uIEl0KGUpe3JldHVybiBlLmlzQ29tbWVudCYmIWUuYXN5bmNGYWN0b3J5fHwiICI9PT1lLnRleHR9ZnVuY3Rpb24gRnQoZSx0KXt0PXR8fHt9O2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKUFycmF5LmlzQXJyYXkoZVtuXSk/RnQoZVtuXSx0KTp0W2Vbbl0ua2V5XT1lW25dLmZuO3JldHVybiB0fXZhciBMdD1udWxsO2Z1bmN0aW9uIFJ0KGUpe3ZhciB0PUx0O3JldHVybiBMdD1lLGZ1bmN0aW9uKCl7THQ9dH19ZnVuY3Rpb24gVnQoZSl7dmFyIHQ9ZS4kb3B0aW9ucyxuPXQucGFyZW50O2lmKG4mJiF0LmFic3RyYWN0KXt3aGlsZShuLiRvcHRpb25zLmFic3RyYWN0JiZuLiRwYXJlbnQpbj1uLiRwYXJlbnQ7bi4kY2hpbGRyZW4ucHVzaChlKX1lLiRwYXJlbnQ9bixlLiRyb290PW4/bi4kcm9vdDplLGUuJGNoaWxkcmVuPVtdLGUuJHJlZnM9e30sZS5fd2F0Y2hlcj1udWxsLGUuX2luYWN0aXZlPW51bGwsZS5fZGlyZWN0SW5hY3RpdmU9ITEsZS5faXNNb3VudGVkPSExLGUuX2lzRGVzdHJveWVkPSExLGUuX2lzQmVpbmdEZXN0cm95ZWQ9ITF9ZnVuY3Rpb24gVXQoZSl7ZS5wcm90b3R5cGUuX3VwZGF0ZT1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXMscj1uLiRlbCxpPW4uX3Zub2RlLGE9UnQobik7bi5fdm5vZGU9ZSxuLiRlbD1pP24uX19wYXRjaF9fKGksZSk6bi5fX3BhdGNoX18obi4kZWwsZSx0LCExKSxhKCksciYmKHIuX192dWVfXz1udWxsKSxuLiRlbCYmKG4uJGVsLl9fdnVlX189biksbi4kdm5vZGUmJm4uJHBhcmVudCYmbi4kdm5vZGU9PT1uLiRwYXJlbnQuX3Zub2RlJiYobi4kcGFyZW50LiRlbD1uLiRlbCl9LGUucHJvdG90eXBlLiRmb3JjZVVwZGF0ZT1mdW5jdGlvbigpe3ZhciBlPXRoaXM7ZS5fd2F0Y2hlciYmZS5fd2F0Y2hlci51cGRhdGUoKX0sZS5wcm90b3R5cGUuJGRlc3Ryb3k9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2lmKCFlLl9pc0JlaW5nRGVzdHJveWVkKXtKdChlLCJiZWZvcmVEZXN0cm95IiksZS5faXNCZWluZ0Rlc3Ryb3llZD0hMDt2YXIgdD1lLiRwYXJlbnQ7IXR8fHQuX2lzQmVpbmdEZXN0cm95ZWR8fGUuJG9wdGlvbnMuYWJzdHJhY3R8fHYodC4kY2hpbGRyZW4sZSksZS5fd2F0Y2hlciYmZS5fd2F0Y2hlci50ZWFyZG93bigpO3ZhciBuPWUuX3dhdGNoZXJzLmxlbmd0aDt3aGlsZShuLS0pZS5fd2F0Y2hlcnNbbl0udGVhcmRvd24oKTtlLl9kYXRhLl9fb2JfXyYmZS5fZGF0YS5fX29iX18udm1Db3VudC0tLGUuX2lzRGVzdHJveWVkPSEwLGUuX19wYXRjaF9fKGUuX3Zub2RlLG51bGwpLEp0KGUsImRlc3Ryb3llZCIpLGUuJG9mZigpLGUuJGVsJiYoZS4kZWwuX192dWVfXz1udWxsKSxlLiR2bm9kZSYmKGUuJHZub2RlLnBhcmVudD1udWxsKX19fWZ1bmN0aW9uIEh0KGUsdCxuKXt2YXIgcjtyZXR1cm4gZS4kZWw9dCxlLiRvcHRpb25zLnJlbmRlcnx8KGUuJG9wdGlvbnMucmVuZGVyPXllKSxKdChlLCJiZWZvcmVNb3VudCIpLHI9ZnVuY3Rpb24oKXtlLl91cGRhdGUoZS5fcmVuZGVyKCksbil9LG5ldyBwbihlLHIsRCx7YmVmb3JlOmZ1bmN0aW9uKCl7ZS5faXNNb3VudGVkJiYhZS5faXNEZXN0cm95ZWQmJkp0KGUsImJlZm9yZVVwZGF0ZSIpfX0sITApLG49ITEsbnVsbD09ZS4kdm5vZGUmJihlLl9pc01vdW50ZWQ9ITAsSnQoZSwibW91bnRlZCIpKSxlfWZ1bmN0aW9uIEd0KGUsdCxyLGksYSl7dmFyIG89ISEoYXx8ZS4kb3B0aW9ucy5fcmVuZGVyQ2hpbGRyZW58fGkuZGF0YS5zY29wZWRTbG90c3x8ZS4kc2NvcGVkU2xvdHMhPT1uKTtpZihlLiRvcHRpb25zLl9wYXJlbnRWbm9kZT1pLGUuJHZub2RlPWksZS5fdm5vZGUmJihlLl92bm9kZS5wYXJlbnQ9aSksZS4kb3B0aW9ucy5fcmVuZGVyQ2hpbGRyZW49YSxlLiRhdHRycz1pLmRhdGEuYXR0cnN8fG4sZS4kbGlzdGVuZXJzPXJ8fG4sdCYmZS4kb3B0aW9ucy5wcm9wcyl7UGUoITEpO2Zvcih2YXIgYz1lLl9wcm9wcyxzPWUuJG9wdGlvbnMuX3Byb3BLZXlzfHxbXSxwPTA7cDxzLmxlbmd0aDtwKyspe3ZhciBsPXNbcF0sdT1lLiRvcHRpb25zLnByb3BzO2NbbF09QmUobCx1LHQsZSl9UGUoITApLGUuJG9wdGlvbnMucHJvcHNEYXRhPXR9cj1yfHxuO3ZhciBkPWUuJG9wdGlvbnMuX3BhcmVudExpc3RlbmVycztlLiRvcHRpb25zLl9wYXJlbnRMaXN0ZW5lcnM9cixNdChlLHIsZCksbyYmKGUuJHNsb3RzPU50KGEsaS5jb250ZXh0KSxlLiRmb3JjZVVwZGF0ZSgpKX1mdW5jdGlvbiBLdChlKXt3aGlsZShlJiYoZT1lLiRwYXJlbnQpKWlmKGUuX2luYWN0aXZlKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEJ0KGUsdCl7aWYodCl7aWYoZS5fZGlyZWN0SW5hY3RpdmU9ITEsS3QoZSkpcmV0dXJufWVsc2UgaWYoZS5fZGlyZWN0SW5hY3RpdmUpcmV0dXJuO2lmKGUuX2luYWN0aXZlfHxudWxsPT09ZS5faW5hY3RpdmUpe2UuX2luYWN0aXZlPSExO2Zvcih2YXIgbj0wO248ZS4kY2hpbGRyZW4ubGVuZ3RoO24rKylCdChlLiRjaGlsZHJlbltuXSk7SnQoZSwiYWN0aXZhdGVkIil9fWZ1bmN0aW9uIHF0KGUsdCl7aWYoKCF0fHwoZS5fZGlyZWN0SW5hY3RpdmU9ITAsIUt0KGUpKSkmJiFlLl9pbmFjdGl2ZSl7ZS5faW5hY3RpdmU9ITA7Zm9yKHZhciBuPTA7bjxlLiRjaGlsZHJlbi5sZW5ndGg7bisrKXF0KGUuJGNoaWxkcmVuW25dKTtKdChlLCJkZWFjdGl2YXRlZCIpfX1mdW5jdGlvbiBKdChlLHQpe21lKCk7dmFyIG49ZS4kb3B0aW9uc1t0XTtpZihuKWZvcih2YXIgcj0wLGk9bi5sZW5ndGg7cjxpO3IrKyl0cnl7bltyXS5jYWxsKGUpfWNhdGNoKG9vKXtaZShvbyxlLHQrIiBob29rIil9ZS5faGFzSG9va0V2ZW50JiZlLiRlbWl0KCJob29rOiIrdCksZmUoKX12YXIgV3Q9W10sWHQ9W10sWnQ9e30sWXQ9ITEsUXQ9ITEsZW49MDtmdW5jdGlvbiB0bigpe2VuPVd0Lmxlbmd0aD1YdC5sZW5ndGg9MCxadD17fSxZdD1RdD0hMX1mdW5jdGlvbiBubigpe3ZhciBlLHQ7Zm9yKFF0PSEwLFd0LnNvcnQoKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUuaWQtdC5pZH0pKSxlbj0wO2VuPFd0Lmxlbmd0aDtlbisrKWU9V3RbZW5dLGUuYmVmb3JlJiZlLmJlZm9yZSgpLHQ9ZS5pZCxadFt0XT1udWxsLGUucnVuKCk7dmFyIG49WHQuc2xpY2UoKSxyPVd0LnNsaWNlKCk7dG4oKSxvbihuKSxybihyKSxvZSYmVi5kZXZ0b29scyYmb2UuZW1pdCgiZmx1c2giKX1mdW5jdGlvbiBybihlKXt2YXIgdD1lLmxlbmd0aDt3aGlsZSh0LS0pe3ZhciBuPWVbdF0scj1uLnZtO3IuX3dhdGNoZXI9PT1uJiZyLl9pc01vdW50ZWQmJiFyLl9pc0Rlc3Ryb3llZCYmSnQociwidXBkYXRlZCIpfX1mdW5jdGlvbiBhbihlKXtlLl9pbmFjdGl2ZT0hMSxYdC5wdXNoKGUpfWZ1bmN0aW9uIG9uKGUpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKWVbdF0uX2luYWN0aXZlPSEwLEJ0KGVbdF0sITApfWZ1bmN0aW9uIGNuKGUpe3ZhciB0PWUuaWQ7aWYobnVsbD09WnRbdF0pe2lmKFp0W3RdPSEwLFF0KXt2YXIgbj1XdC5sZW5ndGgtMTt3aGlsZShuPmVuJiZXdFtuXS5pZD5lLmlkKW4tLTtXdC5zcGxpY2UobisxLDAsZSl9ZWxzZSBXdC5wdXNoKGUpO1l0fHwoWXQ9ITAsbHQobm4pKX19dmFyIHNuPTAscG49ZnVuY3Rpb24oZSx0LG4scixpKXt0aGlzLnZtPWUsaSYmKGUuX3dhdGNoZXI9dGhpcyksZS5fd2F0Y2hlcnMucHVzaCh0aGlzKSxyPyh0aGlzLmRlZXA9ISFyLmRlZXAsdGhpcy51c2VyPSEhci51c2VyLHRoaXMubGF6eT0hIXIubGF6eSx0aGlzLnN5bmM9ISFyLnN5bmMsdGhpcy5iZWZvcmU9ci5iZWZvcmUpOnRoaXMuZGVlcD10aGlzLnVzZXI9dGhpcy5sYXp5PXRoaXMuc3luYz0hMSx0aGlzLmNiPW4sdGhpcy5pZD0rK3NuLHRoaXMuYWN0aXZlPSEwLHRoaXMuZGlydHk9dGhpcy5sYXp5LHRoaXMuZGVwcz1bXSx0aGlzLm5ld0RlcHM9W10sdGhpcy5kZXBJZHM9bmV3IHNlLHRoaXMubmV3RGVwSWRzPW5ldyBzZSx0aGlzLmV4cHJlc3Npb249IiIsImZ1bmN0aW9uIj09PXR5cGVvZiB0P3RoaXMuZ2V0dGVyPXQ6KHRoaXMuZ2V0dGVyPUsodCksdGhpcy5nZXR0ZXJ8fCh0aGlzLmdldHRlcj1EKSksdGhpcy52YWx1ZT10aGlzLmxhenk/dm9pZCAwOnRoaXMuZ2V0KCl9O3BuLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXt2YXIgZTttZSh0aGlzKTt2YXIgdD10aGlzLnZtO3RyeXtlPXRoaXMuZ2V0dGVyLmNhbGwodCx0KX1jYXRjaChvbyl7aWYoIXRoaXMudXNlcil0aHJvdyBvbztaZShvbyx0LCdnZXR0ZXIgZm9yIHdhdGNoZXIgIicrdGhpcy5leHByZXNzaW9uKyciJyl9ZmluYWxseXt0aGlzLmRlZXAmJmR0KGUpLGZlKCksdGhpcy5jbGVhbnVwRGVwcygpfXJldHVybiBlfSxwbi5wcm90b3R5cGUuYWRkRGVwPWZ1bmN0aW9uKGUpe3ZhciB0PWUuaWQ7dGhpcy5uZXdEZXBJZHMuaGFzKHQpfHwodGhpcy5uZXdEZXBJZHMuYWRkKHQpLHRoaXMubmV3RGVwcy5wdXNoKGUpLHRoaXMuZGVwSWRzLmhhcyh0KXx8ZS5hZGRTdWIodGhpcykpfSxwbi5wcm90b3R5cGUuY2xlYW51cERlcHM9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLmRlcHMubGVuZ3RoO3doaWxlKGUtLSl7dmFyIHQ9dGhpcy5kZXBzW2VdO3RoaXMubmV3RGVwSWRzLmhhcyh0LmlkKXx8dC5yZW1vdmVTdWIodGhpcyl9dmFyIG49dGhpcy5kZXBJZHM7dGhpcy5kZXBJZHM9dGhpcy5uZXdEZXBJZHMsdGhpcy5uZXdEZXBJZHM9bix0aGlzLm5ld0RlcElkcy5jbGVhcigpLG49dGhpcy5kZXBzLHRoaXMuZGVwcz10aGlzLm5ld0RlcHMsdGhpcy5uZXdEZXBzPW4sdGhpcy5uZXdEZXBzLmxlbmd0aD0wfSxwbi5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKCl7dGhpcy5sYXp5P3RoaXMuZGlydHk9ITA6dGhpcy5zeW5jP3RoaXMucnVuKCk6Y24odGhpcyl9LHBuLnByb3RvdHlwZS5ydW49ZnVuY3Rpb24oKXtpZih0aGlzLmFjdGl2ZSl7dmFyIGU9dGhpcy5nZXQoKTtpZihlIT09dGhpcy52YWx1ZXx8cyhlKXx8dGhpcy5kZWVwKXt2YXIgdD10aGlzLnZhbHVlO2lmKHRoaXMudmFsdWU9ZSx0aGlzLnVzZXIpdHJ5e3RoaXMuY2IuY2FsbCh0aGlzLnZtLGUsdCl9Y2F0Y2gob28pe1plKG9vLHRoaXMudm0sJ2NhbGxiYWNrIGZvciB3YXRjaGVyICInK3RoaXMuZXhwcmVzc2lvbisnIicpfWVsc2UgdGhpcy5jYi5jYWxsKHRoaXMudm0sZSx0KX19fSxwbi5wcm90b3R5cGUuZXZhbHVhdGU9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlPXRoaXMuZ2V0KCksdGhpcy5kaXJ0eT0hMX0scG4ucHJvdG90eXBlLmRlcGVuZD1mdW5jdGlvbigpe3ZhciBlPXRoaXMuZGVwcy5sZW5ndGg7d2hpbGUoZS0tKXRoaXMuZGVwc1tlXS5kZXBlbmQoKX0scG4ucHJvdG90eXBlLnRlYXJkb3duPWZ1bmN0aW9uKCl7aWYodGhpcy5hY3RpdmUpe3RoaXMudm0uX2lzQmVpbmdEZXN0cm95ZWR8fHYodGhpcy52bS5fd2F0Y2hlcnMsdGhpcyk7dmFyIGU9dGhpcy5kZXBzLmxlbmd0aDt3aGlsZShlLS0pdGhpcy5kZXBzW2VdLnJlbW92ZVN1Yih0aGlzKTt0aGlzLmFjdGl2ZT0hMX19O3ZhciBsbj17ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsZ2V0OkQsc2V0OkR9O2Z1bmN0aW9uIHVuKGUsdCxuKXtsbi5nZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc1t0XVtuXX0sbG4uc2V0PWZ1bmN0aW9uKGUpe3RoaXNbdF1bbl09ZX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsbixsbil9ZnVuY3Rpb24gZG4oZSl7ZS5fd2F0Y2hlcnM9W107dmFyIHQ9ZS4kb3B0aW9uczt0LnByb3BzJiZfbihlLHQucHJvcHMpLHQubWV0aG9kcyYmYm4oZSx0Lm1ldGhvZHMpLHQuZGF0YT9tbihlKTpFZShlLl9kYXRhPXt9LCEwKSx0LmNvbXB1dGVkJiZ2bihlLHQuY29tcHV0ZWQpLHQud2F0Y2gmJnQud2F0Y2ghPT1uZSYma24oZSx0LndhdGNoKX1mdW5jdGlvbiBfbihlLHQpe3ZhciBuPWUuJG9wdGlvbnMucHJvcHNEYXRhfHx7fSxyPWUuX3Byb3BzPXt9LGk9ZS4kb3B0aW9ucy5fcHJvcEtleXM9W10sYT0hZS4kcGFyZW50O2F8fFBlKCExKTt2YXIgbz1mdW5jdGlvbihhKXtpLnB1c2goYSk7dmFyIG89QmUoYSx0LG4sZSk7VGUocixhLG8pLGEgaW4gZXx8dW4oZSwiX3Byb3BzIixhKX07Zm9yKHZhciBjIGluIHQpbyhjKTtQZSghMCl9ZnVuY3Rpb24gbW4oZSl7dmFyIHQ9ZS4kb3B0aW9ucy5kYXRhO3Q9ZS5fZGF0YT0iZnVuY3Rpb24iPT09dHlwZW9mIHQ/Zm4odCxlKTp0fHx7fSxsKHQpfHwodD17fSk7dmFyIG49T2JqZWN0LmtleXModCkscj1lLiRvcHRpb25zLnByb3BzLGk9KGUuJG9wdGlvbnMubWV0aG9kcyxuLmxlbmd0aCk7d2hpbGUoaS0tKXt2YXIgYT1uW2ldOzAsciYmZyhyLGEpfHxVKGEpfHx1bihlLCJfZGF0YSIsYSl9RWUodCwhMCl9ZnVuY3Rpb24gZm4oZSx0KXttZSgpO3RyeXtyZXR1cm4gZS5jYWxsKHQsdCl9Y2F0Y2gob28pe3JldHVybiBaZShvbyx0LCJkYXRhKCkiKSx7fX1maW5hbGx5e2ZlKCl9fXZhciBobj17bGF6eTohMH07ZnVuY3Rpb24gdm4oZSx0KXt2YXIgbj1lLl9jb21wdXRlZFdhdGNoZXJzPU9iamVjdC5jcmVhdGUobnVsbCkscj1hZSgpO2Zvcih2YXIgaSBpbiB0KXt2YXIgYT10W2ldLG89ImZ1bmN0aW9uIj09PXR5cGVvZiBhP2E6YS5nZXQ7MCxyfHwobltpXT1uZXcgcG4oZSxvfHxELEQsaG4pKSxpIGluIGV8fHluKGUsaSxhKX19ZnVuY3Rpb24geW4oZSx0LG4pe3ZhciByPSFhZSgpOyJmdW5jdGlvbiI9PT10eXBlb2Ygbj8obG4uZ2V0PXI/Z24odCk6d24obiksbG4uc2V0PUQpOihsbi5nZXQ9bi5nZXQ/ciYmITEhPT1uLmNhY2hlP2duKHQpOnduKG4uZ2V0KTpELGxuLnNldD1uLnNldHx8RCksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCxsbil9ZnVuY3Rpb24gZ24oZSl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fY29tcHV0ZWRXYXRjaGVycyYmdGhpcy5fY29tcHV0ZWRXYXRjaGVyc1tlXTtpZih0KXJldHVybiB0LmRpcnR5JiZ0LmV2YWx1YXRlKCksZGUudGFyZ2V0JiZ0LmRlcGVuZCgpLHQudmFsdWV9fWZ1bmN0aW9uIHduKGUpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBlLmNhbGwodGhpcyx0aGlzKX19ZnVuY3Rpb24gYm4oZSx0KXtlLiRvcHRpb25zLnByb3BzO2Zvcih2YXIgbiBpbiB0KWVbbl09ImZ1bmN0aW9uIiE9PXR5cGVvZiB0W25dP0Q6Tyh0W25dLGUpfWZ1bmN0aW9uIGtuKGUsdCl7Zm9yKHZhciBuIGluIHQpe3ZhciByPXRbbl07aWYoQXJyYXkuaXNBcnJheShyKSlmb3IodmFyIGk9MDtpPHIubGVuZ3RoO2krKyl4bihlLG4scltpXSk7ZWxzZSB4bihlLG4scil9fWZ1bmN0aW9uIHhuKGUsdCxuLHIpe3JldHVybiBsKG4pJiYocj1uLG49bi5oYW5kbGVyKSwic3RyaW5nIj09PXR5cGVvZiBuJiYobj1lW25dKSxlLiR3YXRjaCh0LG4scil9ZnVuY3Rpb24gQ24oZSl7dmFyIHQ9e2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9kYXRhfX0sbj17Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3Byb3BzfX07T2JqZWN0LmRlZmluZVByb3BlcnR5KGUucHJvdG90eXBlLCIkZGF0YSIsdCksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUucHJvdG90eXBlLCIkcHJvcHMiLG4pLGUucHJvdG90eXBlLiRzZXQ9RGUsZS5wcm90b3R5cGUuJGRlbGV0ZT16ZSxlLnByb3RvdHlwZS4kd2F0Y2g9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPXRoaXM7aWYobCh0KSlyZXR1cm4geG4ocixlLHQsbik7bj1ufHx7fSxuLnVzZXI9ITA7dmFyIGk9bmV3IHBuKHIsZSx0LG4pO2lmKG4uaW1tZWRpYXRlKXRyeXt0LmNhbGwocixpLnZhbHVlKX1jYXRjaChhKXtaZShhLHIsJ2NhbGxiYWNrIGZvciBpbW1lZGlhdGUgd2F0Y2hlciAiJytpLmV4cHJlc3Npb24rJyInKX1yZXR1cm4gZnVuY3Rpb24oKXtpLnRlYXJkb3duKCl9fX1mdW5jdGlvbiBTbihlKXt2YXIgdD1lLiRvcHRpb25zLnByb3ZpZGU7dCYmKGUuX3Byb3ZpZGVkPSJmdW5jdGlvbiI9PT10eXBlb2YgdD90LmNhbGwoZSk6dCl9ZnVuY3Rpb24gUG4oZSl7dmFyIHQ9am4oZS4kb3B0aW9ucy5pbmplY3QsZSk7dCYmKFBlKCExKSxPYmplY3Qua2V5cyh0KS5mb3JFYWNoKChmdW5jdGlvbihuKXtUZShlLG4sdFtuXSl9KSksUGUoITApKX1mdW5jdGlvbiBqbihlLHQpe2lmKGUpe2Zvcih2YXIgbj1PYmplY3QuY3JlYXRlKG51bGwpLHI9cGU/UmVmbGVjdC5vd25LZXlzKGUpLmZpbHRlcigoZnVuY3Rpb24odCl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSx0KS5lbnVtZXJhYmxlfSkpOk9iamVjdC5rZXlzKGUpLGk9MDtpPHIubGVuZ3RoO2krKyl7dmFyIGE9cltpXSxvPWVbYV0uZnJvbSxjPXQ7d2hpbGUoYyl7aWYoYy5fcHJvdmlkZWQmJmcoYy5fcHJvdmlkZWQsbykpe25bYV09Yy5fcHJvdmlkZWRbb107YnJlYWt9Yz1jLiRwYXJlbnR9aWYoIWMpaWYoImRlZmF1bHQiaW4gZVthXSl7dmFyIHM9ZVthXS5kZWZhdWx0O25bYV09ImZ1bmN0aW9uIj09PXR5cGVvZiBzP3MuY2FsbCh0KTpzfWVsc2UgMH1yZXR1cm4gbn19ZnVuY3Rpb24gT24oZSx0KXt2YXIgbixyLGEsbyxjO2lmKEFycmF5LmlzQXJyYXkoZSl8fCJzdHJpbmciPT09dHlwZW9mIGUpZm9yKG49bmV3IEFycmF5KGUubGVuZ3RoKSxyPTAsYT1lLmxlbmd0aDtyPGE7cisrKW5bcl09dChlW3JdLHIpO2Vsc2UgaWYoIm51bWJlciI9PT10eXBlb2YgZSlmb3Iobj1uZXcgQXJyYXkoZSkscj0wO3I8ZTtyKyspbltyXT10KHIrMSxyKTtlbHNlIGlmKHMoZSkpZm9yKG89T2JqZWN0LmtleXMoZSksbj1uZXcgQXJyYXkoby5sZW5ndGgpLHI9MCxhPW8ubGVuZ3RoO3I8YTtyKyspYz1vW3JdLG5bcl09dChlW2NdLGMscik7cmV0dXJuIGkobil8fChuPVtdKSxuLl9pc1ZMaXN0PSEwLG59ZnVuY3Rpb24gQW4oZSx0LG4scil7dmFyIGksYT10aGlzLiRzY29wZWRTbG90c1tlXTthPyhuPW58fHt9LHImJihuPUUoRSh7fSxyKSxuKSksaT1hKG4pfHx0KTppPXRoaXMuJHNsb3RzW2VdfHx0O3ZhciBvPW4mJm4uc2xvdDtyZXR1cm4gbz90aGlzLiRjcmVhdGVFbGVtZW50KCJ0ZW1wbGF0ZSIse3Nsb3Q6b30saSk6aX1mdW5jdGlvbiBFbihlKXtyZXR1cm4gS2UodGhpcy4kb3B0aW9ucywiZmlsdGVycyIsZSwhMCl8fE19ZnVuY3Rpb24gVG4oZSx0KXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT8tMT09PWUuaW5kZXhPZih0KTplIT09dH1mdW5jdGlvbiBEbihlLHQsbixyLGkpe3ZhciBhPVYua2V5Q29kZXNbdF18fG47cmV0dXJuIGkmJnImJiFWLmtleUNvZGVzW3RdP1RuKGkscik6YT9UbihhLGUpOnI/UyhyKSE9PXQ6dm9pZCAwfWZ1bmN0aW9uIHpuKGUsdCxuLHIsaSl7aWYobilpZihzKG4pKXt2YXIgYTtBcnJheS5pc0FycmF5KG4pJiYobj1UKG4pKTt2YXIgbz1mdW5jdGlvbihvKXtpZigiY2xhc3MiPT09b3x8InN0eWxlIj09PW98fGgobykpYT1lO2Vsc2V7dmFyIGM9ZS5hdHRycyYmZS5hdHRycy50eXBlO2E9cnx8Vi5tdXN0VXNlUHJvcCh0LGMsbyk/ZS5kb21Qcm9wc3x8KGUuZG9tUHJvcHM9e30pOmUuYXR0cnN8fChlLmF0dHJzPXt9KX12YXIgcz1rKG8pO2lmKCEobyBpbiBhKSYmIShzIGluIGEpJiYoYVtvXT1uW29dLGkpKXt2YXIgcD1lLm9ufHwoZS5vbj17fSk7cFsidXBkYXRlOiIrc109ZnVuY3Rpb24oZSl7bltvXT1lfX19O2Zvcih2YXIgYyBpbiBuKW8oYyl9ZWxzZTtyZXR1cm4gZX1mdW5jdGlvbiBNbihlLHQpe3ZhciBuPXRoaXMuX3N0YXRpY1RyZWVzfHwodGhpcy5fc3RhdGljVHJlZXM9W10pLHI9bltlXTtyZXR1cm4gciYmIXQ/cjoocj1uW2VdPXRoaXMuJG9wdGlvbnMuc3RhdGljUmVuZGVyRm5zW2VdLmNhbGwodGhpcy5fcmVuZGVyUHJveHksbnVsbCx0aGlzKSxObihyLCJfX3N0YXRpY19fIitlLCExKSxyKX1mdW5jdGlvbiAkbihlLHQsbil7cmV0dXJuIE5uKGUsIl9fb25jZV9fIit0KyhuPyJfIituOiIiKSwhMCksZX1mdW5jdGlvbiBObihlLHQsbil7aWYoQXJyYXkuaXNBcnJheShlKSlmb3IodmFyIHI9MDtyPGUubGVuZ3RoO3IrKyllW3JdJiYic3RyaW5nIiE9PXR5cGVvZiBlW3JdJiZJbihlW3JdLHQrIl8iK3Isbik7ZWxzZSBJbihlLHQsbil9ZnVuY3Rpb24gSW4oZSx0LG4pe2UuaXNTdGF0aWM9ITAsZS5rZXk9dCxlLmlzT25jZT1ufWZ1bmN0aW9uIEZuKGUsdCl7aWYodClpZihsKHQpKXt2YXIgbj1lLm9uPWUub24/RSh7fSxlLm9uKTp7fTtmb3IodmFyIHIgaW4gdCl7dmFyIGk9bltyXSxhPXRbcl07bltyXT1pP1tdLmNvbmNhdChpLGEpOmF9fWVsc2U7cmV0dXJuIGV9ZnVuY3Rpb24gTG4oZSl7ZS5fbz0kbixlLl9uPW0sZS5fcz1fLGUuX2w9T24sZS5fdD1BbixlLl9xPSQsZS5faT1OLGUuX209TW4sZS5fZj1FbixlLl9rPURuLGUuX2I9em4sZS5fdj1nZSxlLl9lPXllLGUuX3U9RnQsZS5fZz1Gbn1mdW5jdGlvbiBSbihlLHQscixpLG8pe3ZhciBjLHM9by5vcHRpb25zO2coaSwiX3VpZCIpPyhjPU9iamVjdC5jcmVhdGUoaSksYy5fb3JpZ2luYWw9aSk6KGM9aSxpPWkuX29yaWdpbmFsKTt2YXIgcD1hKHMuX2NvbXBpbGVkKSxsPSFwO3RoaXMuZGF0YT1lLHRoaXMucHJvcHM9dCx0aGlzLmNoaWxkcmVuPXIsdGhpcy5wYXJlbnQ9aSx0aGlzLmxpc3RlbmVycz1lLm9ufHxuLHRoaXMuaW5qZWN0aW9ucz1qbihzLmluamVjdCxpKSx0aGlzLnNsb3RzPWZ1bmN0aW9uKCl7cmV0dXJuIE50KHIsaSl9LHAmJih0aGlzLiRvcHRpb25zPXMsdGhpcy4kc2xvdHM9dGhpcy5zbG90cygpLHRoaXMuJHNjb3BlZFNsb3RzPWUuc2NvcGVkU2xvdHN8fG4pLHMuX3Njb3BlSWQ/dGhpcy5fYz1mdW5jdGlvbihlLHQsbixyKXt2YXIgYT1RbihjLGUsdCxuLHIsbCk7cmV0dXJuIGEmJiFBcnJheS5pc0FycmF5KGEpJiYoYS5mblNjb3BlSWQ9cy5fc2NvcGVJZCxhLmZuQ29udGV4dD1pKSxhfTp0aGlzLl9jPWZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiBRbihjLGUsdCxuLHIsbCl9fWZ1bmN0aW9uIFZuKGUsdCxyLGEsbyl7dmFyIGM9ZS5vcHRpb25zLHM9e30scD1jLnByb3BzO2lmKGkocCkpZm9yKHZhciBsIGluIHApc1tsXT1CZShsLHAsdHx8bik7ZWxzZSBpKHIuYXR0cnMpJiZIbihzLHIuYXR0cnMpLGkoci5wcm9wcykmJkhuKHMsci5wcm9wcyk7dmFyIHU9bmV3IFJuKHIscyxvLGEsZSksZD1jLnJlbmRlci5jYWxsKG51bGwsdS5fYyx1KTtpZihkIGluc3RhbmNlb2YgaGUpcmV0dXJuIFVuKGQscix1LnBhcmVudCxjLHUpO2lmKEFycmF5LmlzQXJyYXkoZCkpe2Zvcih2YXIgXz1rdChkKXx8W10sbT1uZXcgQXJyYXkoXy5sZW5ndGgpLGY9MDtmPF8ubGVuZ3RoO2YrKyltW2ZdPVVuKF9bZl0scix1LnBhcmVudCxjLHUpO3JldHVybiBtfX1mdW5jdGlvbiBVbihlLHQsbixyLGkpe3ZhciBhPXdlKGUpO3JldHVybiBhLmZuQ29udGV4dD1uLGEuZm5PcHRpb25zPXIsdC5zbG90JiYoKGEuZGF0YXx8KGEuZGF0YT17fSkpLnNsb3Q9dC5zbG90KSxhfWZ1bmN0aW9uIEhuKGUsdCl7Zm9yKHZhciBuIGluIHQpZVtrKG4pXT10W25dfUxuKFJuLnByb3RvdHlwZSk7dmFyIEduPXtpbml0OmZ1bmN0aW9uKGUsdCl7aWYoZS5jb21wb25lbnRJbnN0YW5jZSYmIWUuY29tcG9uZW50SW5zdGFuY2UuX2lzRGVzdHJveWVkJiZlLmRhdGEua2VlcEFsaXZlKXt2YXIgbj1lO0duLnByZXBhdGNoKG4sbil9ZWxzZXt2YXIgcj1lLmNvbXBvbmVudEluc3RhbmNlPXFuKGUsTHQpO3IuJG1vdW50KHQ/ZS5lbG06dm9pZCAwLHQpfX0scHJlcGF0Y2g6ZnVuY3Rpb24oZSx0KXt2YXIgbj10LmNvbXBvbmVudE9wdGlvbnMscj10LmNvbXBvbmVudEluc3RhbmNlPWUuY29tcG9uZW50SW5zdGFuY2U7R3QocixuLnByb3BzRGF0YSxuLmxpc3RlbmVycyx0LG4uY2hpbGRyZW4pfSxpbnNlcnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5jb250ZXh0LG49ZS5jb21wb25lbnRJbnN0YW5jZTtuLl9pc01vdW50ZWR8fChuLl9pc01vdW50ZWQ9ITAsSnQobiwibW91bnRlZCIpKSxlLmRhdGEua2VlcEFsaXZlJiYodC5faXNNb3VudGVkP2FuKG4pOkJ0KG4sITApKX0sZGVzdHJveTpmdW5jdGlvbihlKXt2YXIgdD1lLmNvbXBvbmVudEluc3RhbmNlO3QuX2lzRGVzdHJveWVkfHwoZS5kYXRhLmtlZXBBbGl2ZT9xdCh0LCEwKTp0LiRkZXN0cm95KCkpfX0sS249T2JqZWN0LmtleXMoR24pO2Z1bmN0aW9uIEJuKGUsdCxuLG8sYyl7aWYoIXIoZSkpe3ZhciBwPW4uJG9wdGlvbnMuX2Jhc2U7aWYocyhlKSYmKGU9cC5leHRlbmQoZSkpLCJmdW5jdGlvbiI9PT10eXBlb2YgZSl7dmFyIGw7aWYocihlLmNpZCkmJihsPWUsZT1qdChsLHAsbiksdm9pZCAwPT09ZSkpcmV0dXJuIFB0KGwsdCxuLG8sYyk7dD10fHx7fSxzcihlKSxpKHQubW9kZWwpJiZYbihlLm9wdGlvbnMsdCk7dmFyIHU9Z3QodCxlLGMpO2lmKGEoZS5vcHRpb25zLmZ1bmN0aW9uYWwpKXJldHVybiBWbihlLHUsdCxuLG8pO3ZhciBkPXQub247aWYodC5vbj10Lm5hdGl2ZU9uLGEoZS5vcHRpb25zLmFic3RyYWN0KSl7dmFyIF89dC5zbG90O3Q9e30sXyYmKHQuc2xvdD1fKX1Kbih0KTt2YXIgbT1lLm9wdGlvbnMubmFtZXx8YyxmPW5ldyBoZSgidnVlLWNvbXBvbmVudC0iK2UuY2lkKyhtPyItIittOiIiKSx0LHZvaWQgMCx2b2lkIDAsdm9pZCAwLG4se0N0b3I6ZSxwcm9wc0RhdGE6dSxsaXN0ZW5lcnM6ZCx0YWc6YyxjaGlsZHJlbjpvfSxsKTtyZXR1cm4gZn19fWZ1bmN0aW9uIHFuKGUsdCl7dmFyIG49e19pc0NvbXBvbmVudDohMCxfcGFyZW50Vm5vZGU6ZSxwYXJlbnQ6dH0scj1lLmRhdGEuaW5saW5lVGVtcGxhdGU7cmV0dXJuIGkocikmJihuLnJlbmRlcj1yLnJlbmRlcixuLnN0YXRpY1JlbmRlckZucz1yLnN0YXRpY1JlbmRlckZucyksbmV3IGUuY29tcG9uZW50T3B0aW9ucy5DdG9yKG4pfWZ1bmN0aW9uIEpuKGUpe2Zvcih2YXIgdD1lLmhvb2t8fChlLmhvb2s9e30pLG49MDtuPEtuLmxlbmd0aDtuKyspe3ZhciByPUtuW25dLGk9dFtyXSxhPUduW3JdO2k9PT1hfHxpJiZpLl9tZXJnZWR8fCh0W3JdPWk/V24oYSxpKTphKX19ZnVuY3Rpb24gV24oZSx0KXt2YXIgbj1mdW5jdGlvbihuLHIpe2UobixyKSx0KG4scil9O3JldHVybiBuLl9tZXJnZWQ9ITAsbn1mdW5jdGlvbiBYbihlLHQpe3ZhciBuPWUubW9kZWwmJmUubW9kZWwucHJvcHx8InZhbHVlIixyPWUubW9kZWwmJmUubW9kZWwuZXZlbnR8fCJpbnB1dCI7KHQucHJvcHN8fCh0LnByb3BzPXt9KSlbbl09dC5tb2RlbC52YWx1ZTt2YXIgYT10Lm9ufHwodC5vbj17fSksbz1hW3JdLGM9dC5tb2RlbC5jYWxsYmFjaztpKG8pPyhBcnJheS5pc0FycmF5KG8pPy0xPT09by5pbmRleE9mKGMpOm8hPT1jKSYmKGFbcl09W2NdLmNvbmNhdChvKSk6YVtyXT1jfXZhciBabj0xLFluPTI7ZnVuY3Rpb24gUW4oZSx0LG4scixpLG8pe3JldHVybihBcnJheS5pc0FycmF5KG4pfHxjKG4pKSYmKGk9cixyPW4sbj12b2lkIDApLGEobykmJihpPVluKSxlcihlLHQsbixyLGkpfWZ1bmN0aW9uIGVyKGUsdCxuLHIsYSl7aWYoaShuKSYmaShuLl9fb2JfXykpcmV0dXJuIHllKCk7aWYoaShuKSYmaShuLmlzKSYmKHQ9bi5pcyksIXQpcmV0dXJuIHllKCk7dmFyIG8sYyxzOyhBcnJheS5pc0FycmF5KHIpJiYiZnVuY3Rpb24iPT09dHlwZW9mIHJbMF0mJihuPW58fHt9LG4uc2NvcGVkU2xvdHM9e2RlZmF1bHQ6clswXX0sci5sZW5ndGg9MCksYT09PVluP3I9a3Qocik6YT09PVpuJiYocj1idChyKSksInN0cmluZyI9PT10eXBlb2YgdCk/KGM9ZS4kdm5vZGUmJmUuJHZub2RlLm5zfHxWLmdldFRhZ05hbWVzcGFjZSh0KSxvPVYuaXNSZXNlcnZlZFRhZyh0KT9uZXcgaGUoVi5wYXJzZVBsYXRmb3JtVGFnTmFtZSh0KSxuLHIsdm9pZCAwLHZvaWQgMCxlKTpuJiZuLnByZXx8IWkocz1LZShlLiRvcHRpb25zLCJjb21wb25lbnRzIix0KSk/bmV3IGhlKHQsbixyLHZvaWQgMCx2b2lkIDAsZSk6Qm4ocyxuLGUscix0KSk6bz1Cbih0LG4sZSxyKTtyZXR1cm4gQXJyYXkuaXNBcnJheShvKT9vOmkobyk/KGkoYykmJnRyKG8sYyksaShuKSYmbnIobiksbyk6eWUoKX1mdW5jdGlvbiB0cihlLHQsbil7aWYoZS5ucz10LCJmb3JlaWduT2JqZWN0Ij09PWUudGFnJiYodD12b2lkIDAsbj0hMCksaShlLmNoaWxkcmVuKSlmb3IodmFyIG89MCxjPWUuY2hpbGRyZW4ubGVuZ3RoO288YztvKyspe3ZhciBzPWUuY2hpbGRyZW5bb107aShzLnRhZykmJihyKHMubnMpfHxhKG4pJiYic3ZnIiE9PXMudGFnKSYmdHIocyx0LG4pfX1mdW5jdGlvbiBucihlKXtzKGUuc3R5bGUpJiZkdChlLnN0eWxlKSxzKGUuY2xhc3MpJiZkdChlLmNsYXNzKX1mdW5jdGlvbiBycihlKXtlLl92bm9kZT1udWxsLGUuX3N0YXRpY1RyZWVzPW51bGw7dmFyIHQ9ZS4kb3B0aW9ucyxyPWUuJHZub2RlPXQuX3BhcmVudFZub2RlLGk9ciYmci5jb250ZXh0O2UuJHNsb3RzPU50KHQuX3JlbmRlckNoaWxkcmVuLGkpLGUuJHNjb3BlZFNsb3RzPW4sZS5fYz1mdW5jdGlvbih0LG4scixpKXtyZXR1cm4gUW4oZSx0LG4scixpLCExKX0sZS4kY3JlYXRlRWxlbWVudD1mdW5jdGlvbih0LG4scixpKXtyZXR1cm4gUW4oZSx0LG4scixpLCEwKX07dmFyIGE9ciYmci5kYXRhO1RlKGUsIiRhdHRycyIsYSYmYS5hdHRyc3x8bixudWxsLCEwKSxUZShlLCIkbGlzdGVuZXJzIix0Ll9wYXJlbnRMaXN0ZW5lcnN8fG4sbnVsbCwhMCl9ZnVuY3Rpb24gaXIoZSl7TG4oZS5wcm90b3R5cGUpLGUucHJvdG90eXBlLiRuZXh0VGljaz1mdW5jdGlvbihlKXtyZXR1cm4gbHQoZSx0aGlzKX0sZS5wcm90b3R5cGUuX3JlbmRlcj1mdW5jdGlvbigpe3ZhciBlLHQ9dGhpcyxyPXQuJG9wdGlvbnMsaT1yLnJlbmRlcixhPXIuX3BhcmVudFZub2RlO2EmJih0LiRzY29wZWRTbG90cz1hLmRhdGEuc2NvcGVkU2xvdHN8fG4pLHQuJHZub2RlPWE7dHJ5e2U9aS5jYWxsKHQuX3JlbmRlclByb3h5LHQuJGNyZWF0ZUVsZW1lbnQpfWNhdGNoKG9vKXtaZShvbyx0LCJyZW5kZXIiKSxlPXQuX3Zub2RlfXJldHVybiBlIGluc3RhbmNlb2YgaGV8fChlPXllKCkpLGUucGFyZW50PWEsZX19dmFyIGFyPTA7ZnVuY3Rpb24gb3IoZSl7ZS5wcm90b3R5cGUuX2luaXQ9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpczt0Ll91aWQ9YXIrKyx0Ll9pc1Z1ZT0hMCxlJiZlLl9pc0NvbXBvbmVudD9jcih0LGUpOnQuJG9wdGlvbnM9R2Uoc3IodC5jb25zdHJ1Y3RvciksZXx8e30sdCksdC5fcmVuZGVyUHJveHk9dCx0Ll9zZWxmPXQsVnQodCksRXQodCkscnIodCksSnQodCwiYmVmb3JlQ3JlYXRlIiksUG4odCksZG4odCksU24odCksSnQodCwiY3JlYXRlZCIpLHQuJG9wdGlvbnMuZWwmJnQuJG1vdW50KHQuJG9wdGlvbnMuZWwpfX1mdW5jdGlvbiBjcihlLHQpe3ZhciBuPWUuJG9wdGlvbnM9T2JqZWN0LmNyZWF0ZShlLmNvbnN0cnVjdG9yLm9wdGlvbnMpLHI9dC5fcGFyZW50Vm5vZGU7bi5wYXJlbnQ9dC5wYXJlbnQsbi5fcGFyZW50Vm5vZGU9cjt2YXIgaT1yLmNvbXBvbmVudE9wdGlvbnM7bi5wcm9wc0RhdGE9aS5wcm9wc0RhdGEsbi5fcGFyZW50TGlzdGVuZXJzPWkubGlzdGVuZXJzLG4uX3JlbmRlckNoaWxkcmVuPWkuY2hpbGRyZW4sbi5fY29tcG9uZW50VGFnPWkudGFnLHQucmVuZGVyJiYobi5yZW5kZXI9dC5yZW5kZXIsbi5zdGF0aWNSZW5kZXJGbnM9dC5zdGF0aWNSZW5kZXJGbnMpfWZ1bmN0aW9uIHNyKGUpe3ZhciB0PWUub3B0aW9ucztpZihlLnN1cGVyKXt2YXIgbj1zcihlLnN1cGVyKSxyPWUuc3VwZXJPcHRpb25zO2lmKG4hPT1yKXtlLnN1cGVyT3B0aW9ucz1uO3ZhciBpPXByKGUpO2kmJkUoZS5leHRlbmRPcHRpb25zLGkpLHQ9ZS5vcHRpb25zPUdlKG4sZS5leHRlbmRPcHRpb25zKSx0Lm5hbWUmJih0LmNvbXBvbmVudHNbdC5uYW1lXT1lKX19cmV0dXJuIHR9ZnVuY3Rpb24gcHIoZSl7dmFyIHQsbj1lLm9wdGlvbnMscj1lLmV4dGVuZE9wdGlvbnMsaT1lLnNlYWxlZE9wdGlvbnM7Zm9yKHZhciBhIGluIG4pblthXSE9PWlbYV0mJih0fHwodD17fSksdFthXT1scihuW2FdLHJbYV0saVthXSkpO3JldHVybiB0fWZ1bmN0aW9uIGxyKGUsdCxuKXtpZihBcnJheS5pc0FycmF5KGUpKXt2YXIgcj1bXTtuPUFycmF5LmlzQXJyYXkobik/bjpbbl0sdD1BcnJheS5pc0FycmF5KHQpP3Q6W3RdO2Zvcih2YXIgaT0wO2k8ZS5sZW5ndGg7aSsrKSh0LmluZGV4T2YoZVtpXSk+PTB8fG4uaW5kZXhPZihlW2ldKTwwKSYmci5wdXNoKGVbaV0pO3JldHVybiByfXJldHVybiBlfWZ1bmN0aW9uIHVyKGUpe3RoaXMuX2luaXQoZSl9ZnVuY3Rpb24gZHIoZSl7ZS51c2U9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5faW5zdGFsbGVkUGx1Z2luc3x8KHRoaXMuX2luc3RhbGxlZFBsdWdpbnM9W10pO2lmKHQuaW5kZXhPZihlKT4tMSlyZXR1cm4gdGhpczt2YXIgbj1BKGFyZ3VtZW50cywxKTtyZXR1cm4gbi51bnNoaWZ0KHRoaXMpLCJmdW5jdGlvbiI9PT10eXBlb2YgZS5pbnN0YWxsP2UuaW5zdGFsbC5hcHBseShlLG4pOiJmdW5jdGlvbiI9PT10eXBlb2YgZSYmZS5hcHBseShudWxsLG4pLHQucHVzaChlKSx0aGlzfX1mdW5jdGlvbiBfcihlKXtlLm1peGluPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLm9wdGlvbnM9R2UodGhpcy5vcHRpb25zLGUpLHRoaXN9fWZ1bmN0aW9uIG1yKGUpe2UuY2lkPTA7dmFyIHQ9MTtlLmV4dGVuZD1mdW5jdGlvbihlKXtlPWV8fHt9O3ZhciBuPXRoaXMscj1uLmNpZCxpPWUuX0N0b3J8fChlLl9DdG9yPXt9KTtpZihpW3JdKXJldHVybiBpW3JdO3ZhciBhPWUubmFtZXx8bi5vcHRpb25zLm5hbWU7dmFyIG89ZnVuY3Rpb24oZSl7dGhpcy5faW5pdChlKX07cmV0dXJuIG8ucHJvdG90eXBlPU9iamVjdC5jcmVhdGUobi5wcm90b3R5cGUpLG8ucHJvdG90eXBlLmNvbnN0cnVjdG9yPW8sby5jaWQ9dCsrLG8ub3B0aW9ucz1HZShuLm9wdGlvbnMsZSksb1sic3VwZXIiXT1uLG8ub3B0aW9ucy5wcm9wcyYmZnIobyksby5vcHRpb25zLmNvbXB1dGVkJiZocihvKSxvLmV4dGVuZD1uLmV4dGVuZCxvLm1peGluPW4ubWl4aW4sby51c2U9bi51c2UsTC5mb3JFYWNoKChmdW5jdGlvbihlKXtvW2VdPW5bZV19KSksYSYmKG8ub3B0aW9ucy5jb21wb25lbnRzW2FdPW8pLG8uc3VwZXJPcHRpb25zPW4ub3B0aW9ucyxvLmV4dGVuZE9wdGlvbnM9ZSxvLnNlYWxlZE9wdGlvbnM9RSh7fSxvLm9wdGlvbnMpLGlbcl09byxvfX1mdW5jdGlvbiBmcihlKXt2YXIgdD1lLm9wdGlvbnMucHJvcHM7Zm9yKHZhciBuIGluIHQpdW4oZS5wcm90b3R5cGUsIl9wcm9wcyIsbil9ZnVuY3Rpb24gaHIoZSl7dmFyIHQ9ZS5vcHRpb25zLmNvbXB1dGVkO2Zvcih2YXIgbiBpbiB0KXluKGUucHJvdG90eXBlLG4sdFtuXSl9ZnVuY3Rpb24gdnIoZSl7TC5mb3JFYWNoKChmdW5jdGlvbih0KXtlW3RdPWZ1bmN0aW9uKGUsbil7cmV0dXJuIG4/KCJjb21wb25lbnQiPT09dCYmbChuKSYmKG4ubmFtZT1uLm5hbWV8fGUsbj10aGlzLm9wdGlvbnMuX2Jhc2UuZXh0ZW5kKG4pKSwiZGlyZWN0aXZlIj09PXQmJiJmdW5jdGlvbiI9PT10eXBlb2YgbiYmKG49e2JpbmQ6bix1cGRhdGU6bn0pLHRoaXMub3B0aW9uc1t0KyJzIl1bZV09bixuKTp0aGlzLm9wdGlvbnNbdCsicyJdW2VdfX0pKX1mdW5jdGlvbiB5cihlKXtyZXR1cm4gZSYmKGUuQ3Rvci5vcHRpb25zLm5hbWV8fGUudGFnKX1mdW5jdGlvbiBncihlLHQpe3JldHVybiBBcnJheS5pc0FycmF5KGUpP2UuaW5kZXhPZih0KT4tMToic3RyaW5nIj09PXR5cGVvZiBlP2Uuc3BsaXQoIiwiKS5pbmRleE9mKHQpPi0xOiEhdShlKSYmZS50ZXN0KHQpfWZ1bmN0aW9uIHdyKGUsdCl7dmFyIG49ZS5jYWNoZSxyPWUua2V5cyxpPWUuX3Zub2RlO2Zvcih2YXIgYSBpbiBuKXt2YXIgbz1uW2FdO2lmKG8pe3ZhciBjPXlyKG8uY29tcG9uZW50T3B0aW9ucyk7YyYmIXQoYykmJmJyKG4sYSxyLGkpfX19ZnVuY3Rpb24gYnIoZSx0LG4scil7dmFyIGk9ZVt0XTshaXx8ciYmaS50YWc9PT1yLnRhZ3x8aS5jb21wb25lbnRJbnN0YW5jZS4kZGVzdHJveSgpLGVbdF09bnVsbCx2KG4sdCl9b3IodXIpLENuKHVyKSwkdCh1ciksVXQodXIpLGlyKHVyKTt2YXIga3I9W1N0cmluZyxSZWdFeHAsQXJyYXldLHhyPXtuYW1lOiJrZWVwLWFsaXZlIixhYnN0cmFjdDohMCxwcm9wczp7aW5jbHVkZTprcixleGNsdWRlOmtyLG1heDpbU3RyaW5nLE51bWJlcl19LGNyZWF0ZWQ6ZnVuY3Rpb24oKXt0aGlzLmNhY2hlPU9iamVjdC5jcmVhdGUobnVsbCksdGhpcy5rZXlzPVtdfSxkZXN0cm95ZWQ6ZnVuY3Rpb24oKXtmb3IodmFyIGUgaW4gdGhpcy5jYWNoZSlicih0aGlzLmNhY2hlLGUsdGhpcy5rZXlzKX0sbW91bnRlZDpmdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy4kd2F0Y2goImluY2x1ZGUiLChmdW5jdGlvbih0KXt3cihlLChmdW5jdGlvbihlKXtyZXR1cm4gZ3IodCxlKX0pKX0pKSx0aGlzLiR3YXRjaCgiZXhjbHVkZSIsKGZ1bmN0aW9uKHQpe3dyKGUsKGZ1bmN0aW9uKGUpe3JldHVybiFncih0LGUpfSkpfSkpfSxyZW5kZXI6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLiRzbG90cy5kZWZhdWx0LHQ9QXQoZSksbj10JiZ0LmNvbXBvbmVudE9wdGlvbnM7aWYobil7dmFyIHI9eXIobiksaT10aGlzLGE9aS5pbmNsdWRlLG89aS5leGNsdWRlO2lmKGEmJighcnx8IWdyKGEscikpfHxvJiZyJiZncihvLHIpKXJldHVybiB0O3ZhciBjPXRoaXMscz1jLmNhY2hlLHA9Yy5rZXlzLGw9bnVsbD09dC5rZXk/bi5DdG9yLmNpZCsobi50YWc/Ijo6IituLnRhZzoiIik6dC5rZXk7c1tsXT8odC5jb21wb25lbnRJbnN0YW5jZT1zW2xdLmNvbXBvbmVudEluc3RhbmNlLHYocCxsKSxwLnB1c2gobCkpOihzW2xdPXQscC5wdXNoKGwpLHRoaXMubWF4JiZwLmxlbmd0aD5wYXJzZUludCh0aGlzLm1heCkmJmJyKHMscFswXSxwLHRoaXMuX3Zub2RlKSksdC5kYXRhLmtlZXBBbGl2ZT0hMH1yZXR1cm4gdHx8ZSYmZVswXX19LENyPXtLZWVwQWxpdmU6eHJ9O2Z1bmN0aW9uIFNyKGUpe3ZhciB0PXtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gVn19O09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJjb25maWciLHQpLGUudXRpbD17d2FybjpsZSxleHRlbmQ6RSxtZXJnZU9wdGlvbnM6R2UsZGVmaW5lUmVhY3RpdmU6VGV9LGUuc2V0PURlLGUuZGVsZXRlPXplLGUubmV4dFRpY2s9bHQsZS5vcHRpb25zPU9iamVjdC5jcmVhdGUobnVsbCksTC5mb3JFYWNoKChmdW5jdGlvbih0KXtlLm9wdGlvbnNbdCsicyJdPU9iamVjdC5jcmVhdGUobnVsbCl9KSksZS5vcHRpb25zLl9iYXNlPWUsRShlLm9wdGlvbnMuY29tcG9uZW50cyxDciksZHIoZSksX3IoZSksbXIoZSksdnIoZSl9U3IodXIpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh1ci5wcm90b3R5cGUsIiRpc1NlcnZlciIse2dldDphZX0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh1ci5wcm90b3R5cGUsIiRzc3JDb250ZXh0Iix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJHZub2RlJiZ0aGlzLiR2bm9kZS5zc3JDb250ZXh0fX0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh1ciwiRnVuY3Rpb25hbFJlbmRlckNvbnRleHQiLHt2YWx1ZTpSbn0pLHVyLnZlcnNpb249IjIuNS4yMSI7dmFyIFByPWYoInN0eWxlLGNsYXNzIiksanI9ZigiaW5wdXQsdGV4dGFyZWEsb3B0aW9uLHNlbGVjdCxwcm9ncmVzcyIpLE9yPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4idmFsdWUiPT09biYmanIoZSkmJiJidXR0b24iIT09dHx8InNlbGVjdGVkIj09PW4mJiJvcHRpb24iPT09ZXx8ImNoZWNrZWQiPT09biYmImlucHV0Ij09PWV8fCJtdXRlZCI9PT1uJiYidmlkZW8iPT09ZX0sQXI9ZigiY29udGVudGVkaXRhYmxlLGRyYWdnYWJsZSxzcGVsbGNoZWNrIiksRXI9ZigiYWxsb3dmdWxsc2NyZWVuLGFzeW5jLGF1dG9mb2N1cyxhdXRvcGxheSxjaGVja2VkLGNvbXBhY3QsY29udHJvbHMsZGVjbGFyZSxkZWZhdWx0LGRlZmF1bHRjaGVja2VkLGRlZmF1bHRtdXRlZCxkZWZhdWx0c2VsZWN0ZWQsZGVmZXIsZGlzYWJsZWQsZW5hYmxlZCxmb3Jtbm92YWxpZGF0ZSxoaWRkZW4saW5kZXRlcm1pbmF0ZSxpbmVydCxpc21hcCxpdGVtc2NvcGUsbG9vcCxtdWx0aXBsZSxtdXRlZCxub2hyZWYsbm9yZXNpemUsbm9zaGFkZSxub3ZhbGlkYXRlLG5vd3JhcCxvcGVuLHBhdXNlb25leGl0LHJlYWRvbmx5LHJlcXVpcmVkLHJldmVyc2VkLHNjb3BlZCxzZWFtbGVzcyxzZWxlY3RlZCxzb3J0YWJsZSx0cmFuc2xhdGUsdHJ1ZXNwZWVkLHR5cGVtdXN0bWF0Y2gsdmlzaWJsZSIpLFRyPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIixEcj1mdW5jdGlvbihlKXtyZXR1cm4iOiI9PT1lLmNoYXJBdCg1KSYmInhsaW5rIj09PWUuc2xpY2UoMCw1KX0senI9ZnVuY3Rpb24oZSl7cmV0dXJuIERyKGUpP2Uuc2xpY2UoNixlLmxlbmd0aCk6IiJ9LE1yPWZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lfHwhMT09PWV9O2Z1bmN0aW9uICRyKGUpe3ZhciB0PWUuZGF0YSxuPWUscj1lO3doaWxlKGkoci5jb21wb25lbnRJbnN0YW5jZSkpcj1yLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZSxyJiZyLmRhdGEmJih0PU5yKHIuZGF0YSx0KSk7d2hpbGUoaShuPW4ucGFyZW50KSluJiZuLmRhdGEmJih0PU5yKHQsbi5kYXRhKSk7cmV0dXJuIElyKHQuc3RhdGljQ2xhc3MsdC5jbGFzcyl9ZnVuY3Rpb24gTnIoZSx0KXtyZXR1cm57c3RhdGljQ2xhc3M6RnIoZS5zdGF0aWNDbGFzcyx0LnN0YXRpY0NsYXNzKSxjbGFzczppKGUuY2xhc3MpP1tlLmNsYXNzLHQuY2xhc3NdOnQuY2xhc3N9fWZ1bmN0aW9uIElyKGUsdCl7cmV0dXJuIGkoZSl8fGkodCk/RnIoZSxMcih0KSk6IiJ9ZnVuY3Rpb24gRnIoZSx0KXtyZXR1cm4gZT90P2UrIiAiK3Q6ZTp0fHwiIn1mdW5jdGlvbiBMcihlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT9ScihlKTpzKGUpP1ZyKGUpOiJzdHJpbmciPT09dHlwZW9mIGU/ZToiIn1mdW5jdGlvbiBScihlKXtmb3IodmFyIHQsbj0iIixyPTAsYT1lLmxlbmd0aDtyPGE7cisrKWkodD1McihlW3JdKSkmJiIiIT09dCYmKG4mJihuKz0iICIpLG4rPXQpO3JldHVybiBufWZ1bmN0aW9uIFZyKGUpe3ZhciB0PSIiO2Zvcih2YXIgbiBpbiBlKWVbbl0mJih0JiYodCs9IiAiKSx0Kz1uKTtyZXR1cm4gdH12YXIgVXI9e3N2ZzoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLG1hdGg6Imh0dHA6Ly93d3cudzMub3JnLzE5OTgvTWF0aC9NYXRoTUwifSxIcj1mKCJodG1sLGJvZHksYmFzZSxoZWFkLGxpbmssbWV0YSxzdHlsZSx0aXRsZSxhZGRyZXNzLGFydGljbGUsYXNpZGUsZm9vdGVyLGhlYWRlcixoMSxoMixoMyxoNCxoNSxoNixoZ3JvdXAsbmF2LHNlY3Rpb24sZGl2LGRkLGRsLGR0LGZpZ2NhcHRpb24sZmlndXJlLHBpY3R1cmUsaHIsaW1nLGxpLG1haW4sb2wscCxwcmUsdWwsYSxiLGFiYnIsYmRpLGJkbyxicixjaXRlLGNvZGUsZGF0YSxkZm4sZW0saSxrYmQsbWFyayxxLHJwLHJ0LHJ0YyxydWJ5LHMsc2FtcCxzbWFsbCxzcGFuLHN0cm9uZyxzdWIsc3VwLHRpbWUsdSx2YXIsd2JyLGFyZWEsYXVkaW8sbWFwLHRyYWNrLHZpZGVvLGVtYmVkLG9iamVjdCxwYXJhbSxzb3VyY2UsY2FudmFzLHNjcmlwdCxub3NjcmlwdCxkZWwsaW5zLGNhcHRpb24sY29sLGNvbGdyb3VwLHRhYmxlLHRoZWFkLHRib2R5LHRkLHRoLHRyLGJ1dHRvbixkYXRhbGlzdCxmaWVsZHNldCxmb3JtLGlucHV0LGxhYmVsLGxlZ2VuZCxtZXRlcixvcHRncm91cCxvcHRpb24sb3V0cHV0LHByb2dyZXNzLHNlbGVjdCx0ZXh0YXJlYSxkZXRhaWxzLGRpYWxvZyxtZW51LG1lbnVpdGVtLHN1bW1hcnksY29udGVudCxlbGVtZW50LHNoYWRvdyx0ZW1wbGF0ZSxibG9ja3F1b3RlLGlmcmFtZSx0Zm9vdCIpLEdyPWYoInN2ZyxhbmltYXRlLGNpcmNsZSxjbGlwcGF0aCxjdXJzb3IsZGVmcyxkZXNjLGVsbGlwc2UsZmlsdGVyLGZvbnQtZmFjZSxmb3JlaWduT2JqZWN0LGcsZ2x5cGgsaW1hZ2UsbGluZSxtYXJrZXIsbWFzayxtaXNzaW5nLWdseXBoLHBhdGgscGF0dGVybixwb2x5Z29uLHBvbHlsaW5lLHJlY3Qsc3dpdGNoLHN5bWJvbCx0ZXh0LHRleHRwYXRoLHRzcGFuLHVzZSx2aWV3IiwhMCksS3I9ZnVuY3Rpb24oZSl7cmV0dXJuIEhyKGUpfHxHcihlKX07ZnVuY3Rpb24gQnIoZSl7cmV0dXJuIEdyKGUpPyJzdmciOiJtYXRoIj09PWU/Im1hdGgiOnZvaWQgMH12YXIgcXI9T2JqZWN0LmNyZWF0ZShudWxsKTtmdW5jdGlvbiBKcihlKXtpZighSilyZXR1cm4hMDtpZihLcihlKSlyZXR1cm4hMTtpZihlPWUudG9Mb3dlckNhc2UoKSxudWxsIT1xcltlXSlyZXR1cm4gcXJbZV07dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChlKTtyZXR1cm4gZS5pbmRleE9mKCItIik+LTE/cXJbZV09dC5jb25zdHJ1Y3Rvcj09PXdpbmRvdy5IVE1MVW5rbm93bkVsZW1lbnR8fHQuY29uc3RydWN0b3I9PT13aW5kb3cuSFRNTEVsZW1lbnQ6cXJbZV09L0hUTUxVbmtub3duRWxlbWVudC8udGVzdCh0LnRvU3RyaW5nKCkpfXZhciBXcj1mKCJ0ZXh0LG51bWJlcixwYXNzd29yZCxzZWFyY2gsZW1haWwsdGVsLHVybCIpO2Z1bmN0aW9uIFhyKGUpe2lmKCJzdHJpbmciPT09dHlwZW9mIGUpe3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoZSk7cmV0dXJuIHR8fGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpfXJldHVybiBlfWZ1bmN0aW9uIFpyKGUsdCl7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChlKTtyZXR1cm4ic2VsZWN0IiE9PWU/bjoodC5kYXRhJiZ0LmRhdGEuYXR0cnMmJnZvaWQgMCE9PXQuZGF0YS5hdHRycy5tdWx0aXBsZSYmbi5zZXRBdHRyaWJ1dGUoIm11bHRpcGxlIiwibXVsdGlwbGUiKSxuKX1mdW5jdGlvbiBZcihlLHQpe3JldHVybiBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoVXJbZV0sdCl9ZnVuY3Rpb24gUXIoZSl7cmV0dXJuIGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGUpfWZ1bmN0aW9uIGVpKGUpe3JldHVybiBkb2N1bWVudC5jcmVhdGVDb21tZW50KGUpfWZ1bmN0aW9uIHRpKGUsdCxuKXtlLmluc2VydEJlZm9yZSh0LG4pfWZ1bmN0aW9uIG5pKGUsdCl7ZS5yZW1vdmVDaGlsZCh0KX1mdW5jdGlvbiByaShlLHQpe2UuYXBwZW5kQ2hpbGQodCl9ZnVuY3Rpb24gaWkoZSl7cmV0dXJuIGUucGFyZW50Tm9kZX1mdW5jdGlvbiBhaShlKXtyZXR1cm4gZS5uZXh0U2libGluZ31mdW5jdGlvbiBvaShlKXtyZXR1cm4gZS50YWdOYW1lfWZ1bmN0aW9uIGNpKGUsdCl7ZS50ZXh0Q29udGVudD10fWZ1bmN0aW9uIHNpKGUsdCl7ZS5zZXRBdHRyaWJ1dGUodCwiIil9dmFyIHBpPU9iamVjdC5mcmVlemUoe2NyZWF0ZUVsZW1lbnQ6WnIsY3JlYXRlRWxlbWVudE5TOllyLGNyZWF0ZVRleHROb2RlOlFyLGNyZWF0ZUNvbW1lbnQ6ZWksaW5zZXJ0QmVmb3JlOnRpLHJlbW92ZUNoaWxkOm5pLGFwcGVuZENoaWxkOnJpLHBhcmVudE5vZGU6aWksbmV4dFNpYmxpbmc6YWksdGFnTmFtZTpvaSxzZXRUZXh0Q29udGVudDpjaSxzZXRTdHlsZVNjb3BlOnNpfSksbGk9e2NyZWF0ZTpmdW5jdGlvbihlLHQpe3VpKHQpfSx1cGRhdGU6ZnVuY3Rpb24oZSx0KXtlLmRhdGEucmVmIT09dC5kYXRhLnJlZiYmKHVpKGUsITApLHVpKHQpKX0sZGVzdHJveTpmdW5jdGlvbihlKXt1aShlLCEwKX19O2Z1bmN0aW9uIHVpKGUsdCl7dmFyIG49ZS5kYXRhLnJlZjtpZihpKG4pKXt2YXIgcj1lLmNvbnRleHQsYT1lLmNvbXBvbmVudEluc3RhbmNlfHxlLmVsbSxvPXIuJHJlZnM7dD9BcnJheS5pc0FycmF5KG9bbl0pP3Yob1tuXSxhKTpvW25dPT09YSYmKG9bbl09dm9pZCAwKTplLmRhdGEucmVmSW5Gb3I/QXJyYXkuaXNBcnJheShvW25dKT9vW25dLmluZGV4T2YoYSk8MCYmb1tuXS5wdXNoKGEpOm9bbl09W2FdOm9bbl09YX19dmFyIGRpPW5ldyBoZSgiIix7fSxbXSksX2k9WyJjcmVhdGUiLCJhY3RpdmF0ZSIsInVwZGF0ZSIsInJlbW92ZSIsImRlc3Ryb3kiXTtmdW5jdGlvbiBtaShlLHQpe3JldHVybiBlLmtleT09PXQua2V5JiYoZS50YWc9PT10LnRhZyYmZS5pc0NvbW1lbnQ9PT10LmlzQ29tbWVudCYmaShlLmRhdGEpPT09aSh0LmRhdGEpJiZmaShlLHQpfHxhKGUuaXNBc3luY1BsYWNlaG9sZGVyKSYmZS5hc3luY0ZhY3Rvcnk9PT10LmFzeW5jRmFjdG9yeSYmcih0LmFzeW5jRmFjdG9yeS5lcnJvcikpfWZ1bmN0aW9uIGZpKGUsdCl7aWYoImlucHV0IiE9PWUudGFnKXJldHVybiEwO3ZhciBuLHI9aShuPWUuZGF0YSkmJmkobj1uLmF0dHJzKSYmbi50eXBlLGE9aShuPXQuZGF0YSkmJmkobj1uLmF0dHJzKSYmbi50eXBlO3JldHVybiByPT09YXx8V3IocikmJldyKGEpfWZ1bmN0aW9uIGhpKGUsdCxuKXt2YXIgcixhLG89e307Zm9yKHI9dDtyPD1uOysrcilhPWVbcl0ua2V5LGkoYSkmJihvW2FdPXIpO3JldHVybiBvfWZ1bmN0aW9uIHZpKGUpe3ZhciB0LG4sbz17fSxzPWUubW9kdWxlcyxwPWUubm9kZU9wcztmb3IodD0wO3Q8X2kubGVuZ3RoOysrdClmb3Iob1tfaVt0XV09W10sbj0wO248cy5sZW5ndGg7KytuKWkoc1tuXVtfaVt0XV0pJiZvW19pW3RdXS5wdXNoKHNbbl1bX2lbdF1dKTtmdW5jdGlvbiBsKGUpe3JldHVybiBuZXcgaGUocC50YWdOYW1lKGUpLnRvTG93ZXJDYXNlKCkse30sW10sdm9pZCAwLGUpfWZ1bmN0aW9uIHUoZSx0KXtmdW5jdGlvbiBuKCl7MD09PS0tbi5saXN0ZW5lcnMmJmQoZSl9cmV0dXJuIG4ubGlzdGVuZXJzPXQsbn1mdW5jdGlvbiBkKGUpe3ZhciB0PXAucGFyZW50Tm9kZShlKTtpKHQpJiZwLnJlbW92ZUNoaWxkKHQsZSl9ZnVuY3Rpb24gXyhlLHQsbixyLG8sYyxzKXtpZihpKGUuZWxtKSYmaShjKSYmKGU9Y1tzXT13ZShlKSksZS5pc1Jvb3RJbnNlcnQ9IW8sIW0oZSx0LG4scikpe3ZhciBsPWUuZGF0YSx1PWUuY2hpbGRyZW4sZD1lLnRhZztpKGQpPyhlLmVsbT1lLm5zP3AuY3JlYXRlRWxlbWVudE5TKGUubnMsZCk6cC5jcmVhdGVFbGVtZW50KGQsZSksayhlKSxnKGUsdSx0KSxpKGwpJiZiKGUsdCkseShuLGUuZWxtLHIpKTphKGUuaXNDb21tZW50KT8oZS5lbG09cC5jcmVhdGVDb21tZW50KGUudGV4dCkseShuLGUuZWxtLHIpKTooZS5lbG09cC5jcmVhdGVUZXh0Tm9kZShlLnRleHQpLHkobixlLmVsbSxyKSl9fWZ1bmN0aW9uIG0oZSx0LG4scil7dmFyIG89ZS5kYXRhO2lmKGkobykpe3ZhciBjPWkoZS5jb21wb25lbnRJbnN0YW5jZSkmJm8ua2VlcEFsaXZlO2lmKGkobz1vLmhvb2spJiZpKG89by5pbml0KSYmbyhlLCExKSxpKGUuY29tcG9uZW50SW5zdGFuY2UpKXJldHVybiBoKGUsdCkseShuLGUuZWxtLHIpLGEoYykmJnYoZSx0LG4sciksITB9fWZ1bmN0aW9uIGgoZSx0KXtpKGUuZGF0YS5wZW5kaW5nSW5zZXJ0KSYmKHQucHVzaC5hcHBseSh0LGUuZGF0YS5wZW5kaW5nSW5zZXJ0KSxlLmRhdGEucGVuZGluZ0luc2VydD1udWxsKSxlLmVsbT1lLmNvbXBvbmVudEluc3RhbmNlLiRlbCx3KGUpPyhiKGUsdCksayhlKSk6KHVpKGUpLHQucHVzaChlKSl9ZnVuY3Rpb24gdihlLHQsbixyKXt2YXIgYSxjPWU7d2hpbGUoYy5jb21wb25lbnRJbnN0YW5jZSlpZihjPWMuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlLGkoYT1jLmRhdGEpJiZpKGE9YS50cmFuc2l0aW9uKSl7Zm9yKGE9MDthPG8uYWN0aXZhdGUubGVuZ3RoOysrYSlvLmFjdGl2YXRlW2FdKGRpLGMpO3QucHVzaChjKTticmVha315KG4sZS5lbG0scil9ZnVuY3Rpb24geShlLHQsbil7aShlKSYmKGkobik/cC5wYXJlbnROb2RlKG4pPT09ZSYmcC5pbnNlcnRCZWZvcmUoZSx0LG4pOnAuYXBwZW5kQ2hpbGQoZSx0KSl9ZnVuY3Rpb24gZyhlLHQsbil7aWYoQXJyYXkuaXNBcnJheSh0KSl7MDtmb3IodmFyIHI9MDtyPHQubGVuZ3RoOysrcilfKHRbcl0sbixlLmVsbSxudWxsLCEwLHQscil9ZWxzZSBjKGUudGV4dCkmJnAuYXBwZW5kQ2hpbGQoZS5lbG0scC5jcmVhdGVUZXh0Tm9kZShTdHJpbmcoZS50ZXh0KSkpfWZ1bmN0aW9uIHcoZSl7d2hpbGUoZS5jb21wb25lbnRJbnN0YW5jZSllPWUuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlO3JldHVybiBpKGUudGFnKX1mdW5jdGlvbiBiKGUsbil7Zm9yKHZhciByPTA7cjxvLmNyZWF0ZS5sZW5ndGg7KytyKW8uY3JlYXRlW3JdKGRpLGUpO3Q9ZS5kYXRhLmhvb2ssaSh0KSYmKGkodC5jcmVhdGUpJiZ0LmNyZWF0ZShkaSxlKSxpKHQuaW5zZXJ0KSYmbi5wdXNoKGUpKX1mdW5jdGlvbiBrKGUpe3ZhciB0O2lmKGkodD1lLmZuU2NvcGVJZCkpcC5zZXRTdHlsZVNjb3BlKGUuZWxtLHQpO2Vsc2V7dmFyIG49ZTt3aGlsZShuKWkodD1uLmNvbnRleHQpJiZpKHQ9dC4kb3B0aW9ucy5fc2NvcGVJZCkmJnAuc2V0U3R5bGVTY29wZShlLmVsbSx0KSxuPW4ucGFyZW50fWkodD1MdCkmJnQhPT1lLmNvbnRleHQmJnQhPT1lLmZuQ29udGV4dCYmaSh0PXQuJG9wdGlvbnMuX3Njb3BlSWQpJiZwLnNldFN0eWxlU2NvcGUoZS5lbG0sdCl9ZnVuY3Rpb24geChlLHQsbixyLGksYSl7Zm9yKDtyPD1pOysrcilfKG5bcl0sYSxlLHQsITEsbixyKX1mdW5jdGlvbiBDKGUpe3ZhciB0LG4scj1lLmRhdGE7aWYoaShyKSlmb3IoaSh0PXIuaG9vaykmJmkodD10LmRlc3Ryb3kpJiZ0KGUpLHQ9MDt0PG8uZGVzdHJveS5sZW5ndGg7Kyt0KW8uZGVzdHJveVt0XShlKTtpZihpKHQ9ZS5jaGlsZHJlbikpZm9yKG49MDtuPGUuY2hpbGRyZW4ubGVuZ3RoOysrbilDKGUuY2hpbGRyZW5bbl0pfWZ1bmN0aW9uIFMoZSx0LG4scil7Zm9yKDtuPD1yOysrbil7dmFyIGE9dFtuXTtpKGEpJiYoaShhLnRhZyk/KFAoYSksQyhhKSk6ZChhLmVsbSkpfX1mdW5jdGlvbiBQKGUsdCl7aWYoaSh0KXx8aShlLmRhdGEpKXt2YXIgbixyPW8ucmVtb3ZlLmxlbmd0aCsxO2ZvcihpKHQpP3QubGlzdGVuZXJzKz1yOnQ9dShlLmVsbSxyKSxpKG49ZS5jb21wb25lbnRJbnN0YW5jZSkmJmkobj1uLl92bm9kZSkmJmkobi5kYXRhKSYmUChuLHQpLG49MDtuPG8ucmVtb3ZlLmxlbmd0aDsrK24pby5yZW1vdmVbbl0oZSx0KTtpKG49ZS5kYXRhLmhvb2spJiZpKG49bi5yZW1vdmUpP24oZSx0KTp0KCl9ZWxzZSBkKGUuZWxtKX1mdW5jdGlvbiBqKGUsdCxuLGEsbyl7dmFyIGMscyxsLHUsZD0wLG09MCxmPXQubGVuZ3RoLTEsaD10WzBdLHY9dFtmXSx5PW4ubGVuZ3RoLTEsZz1uWzBdLHc9blt5XSxiPSFvO3doaWxlKGQ8PWYmJm08PXkpcihoKT9oPXRbKytkXTpyKHYpP3Y9dFstLWZdOm1pKGgsZyk/KEEoaCxnLGEsbixtKSxoPXRbKytkXSxnPW5bKyttXSk6bWkodix3KT8oQSh2LHcsYSxuLHkpLHY9dFstLWZdLHc9blstLXldKTptaShoLHcpPyhBKGgsdyxhLG4seSksYiYmcC5pbnNlcnRCZWZvcmUoZSxoLmVsbSxwLm5leHRTaWJsaW5nKHYuZWxtKSksaD10WysrZF0sdz1uWy0teV0pOm1pKHYsZyk/KEEodixnLGEsbixtKSxiJiZwLmluc2VydEJlZm9yZShlLHYuZWxtLGguZWxtKSx2PXRbLS1mXSxnPW5bKyttXSk6KHIoYykmJihjPWhpKHQsZCxmKSkscz1pKGcua2V5KT9jW2cua2V5XTpPKGcsdCxkLGYpLHIocyk/XyhnLGEsZSxoLmVsbSwhMSxuLG0pOihsPXRbc10sbWkobCxnKT8oQShsLGcsYSxuLG0pLHRbc109dm9pZCAwLGImJnAuaW5zZXJ0QmVmb3JlKGUsbC5lbG0saC5lbG0pKTpfKGcsYSxlLGguZWxtLCExLG4sbSkpLGc9blsrK21dKTtkPmY/KHU9cihuW3krMV0pP251bGw6blt5KzFdLmVsbSx4KGUsdSxuLG0seSxhKSk6bT55JiZTKGUsdCxkLGYpfWZ1bmN0aW9uIE8oZSx0LG4scil7Zm9yKHZhciBhPW47YTxyO2ErKyl7dmFyIG89dFthXTtpZihpKG8pJiZtaShlLG8pKXJldHVybiBhfX1mdW5jdGlvbiBBKGUsdCxuLGMscyxsKXtpZihlIT09dCl7aSh0LmVsbSkmJmkoYykmJih0PWNbc109d2UodCkpO3ZhciB1PXQuZWxtPWUuZWxtO2lmKGEoZS5pc0FzeW5jUGxhY2Vob2xkZXIpKWkodC5hc3luY0ZhY3RvcnkucmVzb2x2ZWQpP0QoZS5lbG0sdCxuKTp0LmlzQXN5bmNQbGFjZWhvbGRlcj0hMDtlbHNlIGlmKGEodC5pc1N0YXRpYykmJmEoZS5pc1N0YXRpYykmJnQua2V5PT09ZS5rZXkmJihhKHQuaXNDbG9uZWQpfHxhKHQuaXNPbmNlKSkpdC5jb21wb25lbnRJbnN0YW5jZT1lLmNvbXBvbmVudEluc3RhbmNlO2Vsc2V7dmFyIGQsXz10LmRhdGE7aShfKSYmaShkPV8uaG9vaykmJmkoZD1kLnByZXBhdGNoKSYmZChlLHQpO3ZhciBtPWUuY2hpbGRyZW4sZj10LmNoaWxkcmVuO2lmKGkoXykmJncodCkpe2ZvcihkPTA7ZDxvLnVwZGF0ZS5sZW5ndGg7KytkKW8udXBkYXRlW2RdKGUsdCk7aShkPV8uaG9vaykmJmkoZD1kLnVwZGF0ZSkmJmQoZSx0KX1yKHQudGV4dCk/aShtKSYmaShmKT9tIT09ZiYmaih1LG0sZixuLGwpOmkoZik/KGkoZS50ZXh0KSYmcC5zZXRUZXh0Q29udGVudCh1LCIiKSx4KHUsbnVsbCxmLDAsZi5sZW5ndGgtMSxuKSk6aShtKT9TKHUsbSwwLG0ubGVuZ3RoLTEpOmkoZS50ZXh0KSYmcC5zZXRUZXh0Q29udGVudCh1LCIiKTplLnRleHQhPT10LnRleHQmJnAuc2V0VGV4dENvbnRlbnQodSx0LnRleHQpLGkoXykmJmkoZD1fLmhvb2spJiZpKGQ9ZC5wb3N0cGF0Y2gpJiZkKGUsdCl9fX1mdW5jdGlvbiBFKGUsdCxuKXtpZihhKG4pJiZpKGUucGFyZW50KSllLnBhcmVudC5kYXRhLnBlbmRpbmdJbnNlcnQ9dDtlbHNlIGZvcih2YXIgcj0wO3I8dC5sZW5ndGg7KytyKXRbcl0uZGF0YS5ob29rLmluc2VydCh0W3JdKX12YXIgVD1mKCJhdHRycyxjbGFzcyxzdGF0aWNDbGFzcyxzdGF0aWNTdHlsZSxrZXkiKTtmdW5jdGlvbiBEKGUsdCxuLHIpe3ZhciBvLGM9dC50YWcscz10LmRhdGEscD10LmNoaWxkcmVuO2lmKHI9cnx8cyYmcy5wcmUsdC5lbG09ZSxhKHQuaXNDb21tZW50KSYmaSh0LmFzeW5jRmFjdG9yeSkpcmV0dXJuIHQuaXNBc3luY1BsYWNlaG9sZGVyPSEwLCEwO2lmKGkocykmJihpKG89cy5ob29rKSYmaShvPW8uaW5pdCkmJm8odCwhMCksaShvPXQuY29tcG9uZW50SW5zdGFuY2UpKSlyZXR1cm4gaCh0LG4pLCEwO2lmKGkoYykpe2lmKGkocCkpaWYoZS5oYXNDaGlsZE5vZGVzKCkpaWYoaShvPXMpJiZpKG89by5kb21Qcm9wcykmJmkobz1vLmlubmVySFRNTCkpe2lmKG8hPT1lLmlubmVySFRNTClyZXR1cm4hMX1lbHNle2Zvcih2YXIgbD0hMCx1PWUuZmlyc3RDaGlsZCxkPTA7ZDxwLmxlbmd0aDtkKyspe2lmKCF1fHwhRCh1LHBbZF0sbixyKSl7bD0hMTticmVha311PXUubmV4dFNpYmxpbmd9aWYoIWx8fHUpcmV0dXJuITF9ZWxzZSBnKHQscCxuKTtpZihpKHMpKXt2YXIgXz0hMTtmb3IodmFyIG0gaW4gcylpZighVChtKSl7Xz0hMCxiKHQsbik7YnJlYWt9IV8mJnNbImNsYXNzIl0mJmR0KHNbImNsYXNzIl0pfX1lbHNlIGUuZGF0YSE9PXQudGV4dCYmKGUuZGF0YT10LnRleHQpO3JldHVybiEwfXJldHVybiBmdW5jdGlvbihlLHQsbixjKXtpZighcih0KSl7dmFyIHM9ITEsdT1bXTtpZihyKGUpKXM9ITAsXyh0LHUpO2Vsc2V7dmFyIGQ9aShlLm5vZGVUeXBlKTtpZighZCYmbWkoZSx0KSlBKGUsdCx1LG51bGwsbnVsbCxjKTtlbHNle2lmKGQpe2lmKDE9PT1lLm5vZGVUeXBlJiZlLmhhc0F0dHJpYnV0ZShGKSYmKGUucmVtb3ZlQXR0cmlidXRlKEYpLG49ITApLGEobikmJkQoZSx0LHUpKXJldHVybiBFKHQsdSwhMCksZTtlPWwoZSl9dmFyIG09ZS5lbG0sZj1wLnBhcmVudE5vZGUobSk7aWYoXyh0LHUsbS5fbGVhdmVDYj9udWxsOmYscC5uZXh0U2libGluZyhtKSksaSh0LnBhcmVudCkpe3ZhciBoPXQucGFyZW50LHY9dyh0KTt3aGlsZShoKXtmb3IodmFyIHk9MDt5PG8uZGVzdHJveS5sZW5ndGg7Kyt5KW8uZGVzdHJveVt5XShoKTtpZihoLmVsbT10LmVsbSx2KXtmb3IodmFyIGc9MDtnPG8uY3JlYXRlLmxlbmd0aDsrK2cpby5jcmVhdGVbZ10oZGksaCk7dmFyIGI9aC5kYXRhLmhvb2suaW5zZXJ0O2lmKGIubWVyZ2VkKWZvcih2YXIgaz0xO2s8Yi5mbnMubGVuZ3RoO2srKyliLmZuc1trXSgpfWVsc2UgdWkoaCk7aD1oLnBhcmVudH19aShmKT9TKGYsW2VdLDAsMCk6aShlLnRhZykmJkMoZSl9fXJldHVybiBFKHQsdSxzKSx0LmVsbX1pKGUpJiZDKGUpfX12YXIgeWk9e2NyZWF0ZTpnaSx1cGRhdGU6Z2ksZGVzdHJveTpmdW5jdGlvbihlKXtnaShlLGRpKX19O2Z1bmN0aW9uIGdpKGUsdCl7KGUuZGF0YS5kaXJlY3RpdmVzfHx0LmRhdGEuZGlyZWN0aXZlcykmJndpKGUsdCl9ZnVuY3Rpb24gd2koZSx0KXt2YXIgbixyLGksYT1lPT09ZGksbz10PT09ZGksYz1raShlLmRhdGEuZGlyZWN0aXZlcyxlLmNvbnRleHQpLHM9a2kodC5kYXRhLmRpcmVjdGl2ZXMsdC5jb250ZXh0KSxwPVtdLGw9W107Zm9yKG4gaW4gcylyPWNbbl0saT1zW25dLHI/KGkub2xkVmFsdWU9ci52YWx1ZSxDaShpLCJ1cGRhdGUiLHQsZSksaS5kZWYmJmkuZGVmLmNvbXBvbmVudFVwZGF0ZWQmJmwucHVzaChpKSk6KENpKGksImJpbmQiLHQsZSksaS5kZWYmJmkuZGVmLmluc2VydGVkJiZwLnB1c2goaSkpO2lmKHAubGVuZ3RoKXt2YXIgdT1mdW5jdGlvbigpe2Zvcih2YXIgbj0wO248cC5sZW5ndGg7bisrKUNpKHBbbl0sImluc2VydGVkIix0LGUpfTthP3l0KHQsImluc2VydCIsdSk6dSgpfWlmKGwubGVuZ3RoJiZ5dCh0LCJwb3N0cGF0Y2giLChmdW5jdGlvbigpe2Zvcih2YXIgbj0wO248bC5sZW5ndGg7bisrKUNpKGxbbl0sImNvbXBvbmVudFVwZGF0ZWQiLHQsZSl9KSksIWEpZm9yKG4gaW4gYylzW25dfHxDaShjW25dLCJ1bmJpbmQiLGUsZSxvKX12YXIgYmk9T2JqZWN0LmNyZWF0ZShudWxsKTtmdW5jdGlvbiBraShlLHQpe3ZhciBuLHIsaT1PYmplY3QuY3JlYXRlKG51bGwpO2lmKCFlKXJldHVybiBpO2ZvcihuPTA7bjxlLmxlbmd0aDtuKyspcj1lW25dLHIubW9kaWZpZXJzfHwoci5tb2RpZmllcnM9YmkpLGlbeGkocildPXIsci5kZWY9S2UodC4kb3B0aW9ucywiZGlyZWN0aXZlcyIsci5uYW1lLCEwKTtyZXR1cm4gaX1mdW5jdGlvbiB4aShlKXtyZXR1cm4gZS5yYXdOYW1lfHxlLm5hbWUrIi4iK09iamVjdC5rZXlzKGUubW9kaWZpZXJzfHx7fSkuam9pbigiLiIpfWZ1bmN0aW9uIENpKGUsdCxuLHIsaSl7dmFyIGE9ZS5kZWYmJmUuZGVmW3RdO2lmKGEpdHJ5e2Eobi5lbG0sZSxuLHIsaSl9Y2F0Y2gob28pe1plKG9vLG4uY29udGV4dCwiZGlyZWN0aXZlICIrZS5uYW1lKyIgIit0KyIgaG9vayIpfX12YXIgU2k9W2xpLHlpXTtmdW5jdGlvbiBQaShlLHQpe3ZhciBuPXQuY29tcG9uZW50T3B0aW9ucztpZigoIWkobil8fCExIT09bi5DdG9yLm9wdGlvbnMuaW5oZXJpdEF0dHJzKSYmKCFyKGUuZGF0YS5hdHRycyl8fCFyKHQuZGF0YS5hdHRycykpKXt2YXIgYSxvLGMscz10LmVsbSxwPWUuZGF0YS5hdHRyc3x8e30sbD10LmRhdGEuYXR0cnN8fHt9O2ZvcihhIGluIGkobC5fX29iX18pJiYobD10LmRhdGEuYXR0cnM9RSh7fSxsKSksbClvPWxbYV0sYz1wW2FdLGMhPT1vJiZqaShzLGEsbyk7Zm9yKGEgaW4oWXx8ZWUpJiZsLnZhbHVlIT09cC52YWx1ZSYmamkocywidmFsdWUiLGwudmFsdWUpLHApcihsW2FdKSYmKERyKGEpP3MucmVtb3ZlQXR0cmlidXRlTlMoVHIsenIoYSkpOkFyKGEpfHxzLnJlbW92ZUF0dHJpYnV0ZShhKSl9fWZ1bmN0aW9uIGppKGUsdCxuKXtlLnRhZ05hbWUuaW5kZXhPZigiLSIpPi0xP09pKGUsdCxuKTpFcih0KT9NcihuKT9lLnJlbW92ZUF0dHJpYnV0ZSh0KToobj0iYWxsb3dmdWxsc2NyZWVuIj09PXQmJiJFTUJFRCI9PT1lLnRhZ05hbWU/InRydWUiOnQsZS5zZXRBdHRyaWJ1dGUodCxuKSk6QXIodCk/ZS5zZXRBdHRyaWJ1dGUodCxNcihuKXx8ImZhbHNlIj09PW4/ImZhbHNlIjoidHJ1ZSIpOkRyKHQpP01yKG4pP2UucmVtb3ZlQXR0cmlidXRlTlMoVHIsenIodCkpOmUuc2V0QXR0cmlidXRlTlMoVHIsdCxuKTpPaShlLHQsbil9ZnVuY3Rpb24gT2koZSx0LG4pe2lmKE1yKG4pKWUucmVtb3ZlQXR0cmlidXRlKHQpO2Vsc2V7aWYoWSYmIVEmJigiVEVYVEFSRUEiPT09ZS50YWdOYW1lfHwiSU5QVVQiPT09ZS50YWdOYW1lKSYmInBsYWNlaG9sZGVyIj09PXQmJiFlLl9faWVwaCl7dmFyIHI9ZnVuY3Rpb24odCl7dC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSxlLnJlbW92ZUV2ZW50TGlzdGVuZXIoImlucHV0IixyKX07ZS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsciksZS5fX2llcGg9ITB9ZS5zZXRBdHRyaWJ1dGUodCxuKX19dmFyIEFpPXtjcmVhdGU6UGksdXBkYXRlOlBpfTtmdW5jdGlvbiBFaShlLHQpe3ZhciBuPXQuZWxtLGE9dC5kYXRhLG89ZS5kYXRhO2lmKCEocihhLnN0YXRpY0NsYXNzKSYmcihhLmNsYXNzKSYmKHIobyl8fHIoby5zdGF0aWNDbGFzcykmJnIoby5jbGFzcykpKSl7dmFyIGM9JHIodCkscz1uLl90cmFuc2l0aW9uQ2xhc3NlcztpKHMpJiYoYz1GcihjLExyKHMpKSksYyE9PW4uX3ByZXZDbGFzcyYmKG4uc2V0QXR0cmlidXRlKCJjbGFzcyIsYyksbi5fcHJldkNsYXNzPWMpfX12YXIgVGksRGk9e2NyZWF0ZTpFaSx1cGRhdGU6RWl9LHppPSJfX3IiLE1pPSJfX2MiO2Z1bmN0aW9uICRpKGUpe2lmKGkoZVt6aV0pKXt2YXIgdD1ZPyJjaGFuZ2UiOiJpbnB1dCI7ZVt0XT1bXS5jb25jYXQoZVt6aV0sZVt0XXx8W10pLGRlbGV0ZSBlW3ppXX1pKGVbTWldKSYmKGUuY2hhbmdlPVtdLmNvbmNhdChlW01pXSxlLmNoYW5nZXx8W10pLGRlbGV0ZSBlW01pXSl9ZnVuY3Rpb24gTmkoZSx0LG4pe3ZhciByPVRpO3JldHVybiBmdW5jdGlvbiBpKCl7dmFyIGE9dC5hcHBseShudWxsLGFyZ3VtZW50cyk7bnVsbCE9PWEmJkZpKGUsaSxuLHIpfX1mdW5jdGlvbiBJaShlLHQsbixyKXt0PXB0KHQpLFRpLmFkZEV2ZW50TGlzdGVuZXIoZSx0LHJlP3tjYXB0dXJlOm4scGFzc2l2ZTpyfTpuKX1mdW5jdGlvbiBGaShlLHQsbixyKXsocnx8VGkpLnJlbW92ZUV2ZW50TGlzdGVuZXIoZSx0Ll93aXRoVGFza3x8dCxuKX1mdW5jdGlvbiBMaShlLHQpe2lmKCFyKGUuZGF0YS5vbil8fCFyKHQuZGF0YS5vbikpe3ZhciBuPXQuZGF0YS5vbnx8e30saT1lLmRhdGEub258fHt9O1RpPXQuZWxtLCRpKG4pLHZ0KG4saSxJaSxGaSxOaSx0LmNvbnRleHQpLFRpPXZvaWQgMH19dmFyIFJpPXtjcmVhdGU6TGksdXBkYXRlOkxpfTtmdW5jdGlvbiBWaShlLHQpe2lmKCFyKGUuZGF0YS5kb21Qcm9wcyl8fCFyKHQuZGF0YS5kb21Qcm9wcykpe3ZhciBuLGEsbz10LmVsbSxjPWUuZGF0YS5kb21Qcm9wc3x8e30scz10LmRhdGEuZG9tUHJvcHN8fHt9O2ZvcihuIGluIGkocy5fX29iX18pJiYocz10LmRhdGEuZG9tUHJvcHM9RSh7fSxzKSksYylyKHNbbl0pJiYob1tuXT0iIik7Zm9yKG4gaW4gcyl7aWYoYT1zW25dLCJ0ZXh0Q29udGVudCI9PT1ufHwiaW5uZXJIVE1MIj09PW4pe2lmKHQuY2hpbGRyZW4mJih0LmNoaWxkcmVuLmxlbmd0aD0wKSxhPT09Y1tuXSljb250aW51ZTsxPT09by5jaGlsZE5vZGVzLmxlbmd0aCYmby5yZW1vdmVDaGlsZChvLmNoaWxkTm9kZXNbMF0pfWlmKCJ2YWx1ZSI9PT1uKXtvLl92YWx1ZT1hO3ZhciBwPXIoYSk/IiI6U3RyaW5nKGEpO1VpKG8scCkmJihvLnZhbHVlPXApfWVsc2Ugb1tuXT1hfX19ZnVuY3Rpb24gVWkoZSx0KXtyZXR1cm4hZS5jb21wb3NpbmcmJigiT1BUSU9OIj09PWUudGFnTmFtZXx8SGkoZSx0KXx8R2koZSx0KSl9ZnVuY3Rpb24gSGkoZSx0KXt2YXIgbj0hMDt0cnl7bj1kb2N1bWVudC5hY3RpdmVFbGVtZW50IT09ZX1jYXRjaChvbyl7fXJldHVybiBuJiZlLnZhbHVlIT09dH1mdW5jdGlvbiBHaShlLHQpe3ZhciBuPWUudmFsdWUscj1lLl92TW9kaWZpZXJzO2lmKGkocikpe2lmKHIubGF6eSlyZXR1cm4hMTtpZihyLm51bWJlcilyZXR1cm4gbShuKSE9PW0odCk7aWYoci50cmltKXJldHVybiBuLnRyaW0oKSE9PXQudHJpbSgpfXJldHVybiBuIT09dH12YXIgS2k9e2NyZWF0ZTpWaSx1cGRhdGU6Vml9LEJpPXcoKGZ1bmN0aW9uKGUpe3ZhciB0PXt9LG49LzsoPyFbXihdKlwpKS9nLHI9LzooLispLztyZXR1cm4gZS5zcGxpdChuKS5mb3JFYWNoKChmdW5jdGlvbihlKXtpZihlKXt2YXIgbj1lLnNwbGl0KHIpO24ubGVuZ3RoPjEmJih0W25bMF0udHJpbSgpXT1uWzFdLnRyaW0oKSl9fSkpLHR9KSk7ZnVuY3Rpb24gcWkoZSl7dmFyIHQ9SmkoZS5zdHlsZSk7cmV0dXJuIGUuc3RhdGljU3R5bGU/RShlLnN0YXRpY1N0eWxlLHQpOnR9ZnVuY3Rpb24gSmkoZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/VChlKToic3RyaW5nIj09PXR5cGVvZiBlP0JpKGUpOmV9ZnVuY3Rpb24gV2koZSx0KXt2YXIgbixyPXt9O2lmKHQpe3ZhciBpPWU7d2hpbGUoaS5jb21wb25lbnRJbnN0YW5jZSlpPWkuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlLGkmJmkuZGF0YSYmKG49cWkoaS5kYXRhKSkmJkUocixuKX0obj1xaShlLmRhdGEpKSYmRShyLG4pO3ZhciBhPWU7d2hpbGUoYT1hLnBhcmVudClhLmRhdGEmJihuPXFpKGEuZGF0YSkpJiZFKHIsbik7cmV0dXJuIHJ9dmFyIFhpLFppPS9eLS0vLFlpPS9ccyohaW1wb3J0YW50JC8sUWk9ZnVuY3Rpb24oZSx0LG4pe2lmKFppLnRlc3QodCkpZS5zdHlsZS5zZXRQcm9wZXJ0eSh0LG4pO2Vsc2UgaWYoWWkudGVzdChuKSllLnN0eWxlLnNldFByb3BlcnR5KHQsbi5yZXBsYWNlKFlpLCIiKSwiaW1wb3J0YW50Iik7ZWxzZXt2YXIgcj10YSh0KTtpZihBcnJheS5pc0FycmF5KG4pKWZvcih2YXIgaT0wLGE9bi5sZW5ndGg7aTxhO2krKyllLnN0eWxlW3JdPW5baV07ZWxzZSBlLnN0eWxlW3JdPW59fSxlYT1bIldlYmtpdCIsIk1veiIsIm1zIl0sdGE9dygoZnVuY3Rpb24oZSl7aWYoWGk9WGl8fGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLnN0eWxlLGU9ayhlKSwiZmlsdGVyIiE9PWUmJmUgaW4gWGkpcmV0dXJuIGU7Zm9yKHZhciB0PWUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrZS5zbGljZSgxKSxuPTA7bjxlYS5sZW5ndGg7bisrKXt2YXIgcj1lYVtuXSt0O2lmKHIgaW4gWGkpcmV0dXJuIHJ9fSkpO2Z1bmN0aW9uIG5hKGUsdCl7dmFyIG49dC5kYXRhLGE9ZS5kYXRhO2lmKCEocihuLnN0YXRpY1N0eWxlKSYmcihuLnN0eWxlKSYmcihhLnN0YXRpY1N0eWxlKSYmcihhLnN0eWxlKSkpe3ZhciBvLGMscz10LmVsbSxwPWEuc3RhdGljU3R5bGUsbD1hLm5vcm1hbGl6ZWRTdHlsZXx8YS5zdHlsZXx8e30sdT1wfHxsLGQ9SmkodC5kYXRhLnN0eWxlKXx8e307dC5kYXRhLm5vcm1hbGl6ZWRTdHlsZT1pKGQuX19vYl9fKT9FKHt9LGQpOmQ7dmFyIF89V2kodCwhMCk7Zm9yKGMgaW4gdSlyKF9bY10pJiZRaShzLGMsIiIpO2ZvcihjIGluIF8pbz1fW2NdLG8hPT11W2NdJiZRaShzLGMsbnVsbD09bz8iIjpvKX19dmFyIHJhPXtjcmVhdGU6bmEsdXBkYXRlOm5hfSxpYT0vXHMrLztmdW5jdGlvbiBhYShlLHQpe2lmKHQmJih0PXQudHJpbSgpKSlpZihlLmNsYXNzTGlzdCl0LmluZGV4T2YoIiAiKT4tMT90LnNwbGl0KGlhKS5mb3JFYWNoKChmdW5jdGlvbih0KXtyZXR1cm4gZS5jbGFzc0xpc3QuYWRkKHQpfSkpOmUuY2xhc3NMaXN0LmFkZCh0KTtlbHNle3ZhciBuPSIgIisoZS5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIiKSsiICI7bi5pbmRleE9mKCIgIit0KyIgIik8MCYmZS5zZXRBdHRyaWJ1dGUoImNsYXNzIiwobit0KS50cmltKCkpfX1mdW5jdGlvbiBvYShlLHQpe2lmKHQmJih0PXQudHJpbSgpKSlpZihlLmNsYXNzTGlzdCl0LmluZGV4T2YoIiAiKT4tMT90LnNwbGl0KGlhKS5mb3JFYWNoKChmdW5jdGlvbih0KXtyZXR1cm4gZS5jbGFzc0xpc3QucmVtb3ZlKHQpfSkpOmUuY2xhc3NMaXN0LnJlbW92ZSh0KSxlLmNsYXNzTGlzdC5sZW5ndGh8fGUucmVtb3ZlQXR0cmlidXRlKCJjbGFzcyIpO2Vsc2V7dmFyIG49IiAiKyhlLmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8IiIpKyIgIixyPSIgIit0KyIgIjt3aGlsZShuLmluZGV4T2Yocik+PTApbj1uLnJlcGxhY2UociwiICIpO249bi50cmltKCksbj9lLnNldEF0dHJpYnV0ZSgiY2xhc3MiLG4pOmUucmVtb3ZlQXR0cmlidXRlKCJjbGFzcyIpfX1mdW5jdGlvbiBjYShlKXtpZihlKXtpZigib2JqZWN0Ij09PXR5cGVvZiBlKXt2YXIgdD17fTtyZXR1cm4hMSE9PWUuY3NzJiZFKHQsc2EoZS5uYW1lfHwidiIpKSxFKHQsZSksdH1yZXR1cm4ic3RyaW5nIj09PXR5cGVvZiBlP3NhKGUpOnZvaWQgMH19dmFyIHNhPXcoKGZ1bmN0aW9uKGUpe3JldHVybntlbnRlckNsYXNzOmUrIi1lbnRlciIsZW50ZXJUb0NsYXNzOmUrIi1lbnRlci10byIsZW50ZXJBY3RpdmVDbGFzczplKyItZW50ZXItYWN0aXZlIixsZWF2ZUNsYXNzOmUrIi1sZWF2ZSIsbGVhdmVUb0NsYXNzOmUrIi1sZWF2ZS10byIsbGVhdmVBY3RpdmVDbGFzczplKyItbGVhdmUtYWN0aXZlIn19KSkscGE9SiYmIVEsbGE9InRyYW5zaXRpb24iLHVhPSJhbmltYXRpb24iLGRhPSJ0cmFuc2l0aW9uIixfYT0idHJhbnNpdGlvbmVuZCIsbWE9ImFuaW1hdGlvbiIsZmE9ImFuaW1hdGlvbmVuZCI7cGEmJih2b2lkIDA9PT13aW5kb3cub250cmFuc2l0aW9uZW5kJiZ2b2lkIDAhPT13aW5kb3cub253ZWJraXR0cmFuc2l0aW9uZW5kJiYoZGE9IldlYmtpdFRyYW5zaXRpb24iLF9hPSJ3ZWJraXRUcmFuc2l0aW9uRW5kIiksdm9pZCAwPT09d2luZG93Lm9uYW5pbWF0aW9uZW5kJiZ2b2lkIDAhPT13aW5kb3cub253ZWJraXRhbmltYXRpb25lbmQmJihtYT0iV2Via2l0QW5pbWF0aW9uIixmYT0id2Via2l0QW5pbWF0aW9uRW5kIikpO3ZhciBoYT1KP3dpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWU/d2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZS5iaW5kKHdpbmRvdyk6c2V0VGltZW91dDpmdW5jdGlvbihlKXtyZXR1cm4gZSgpfTtmdW5jdGlvbiB2YShlKXtoYSgoZnVuY3Rpb24oKXtoYShlKX0pKX1mdW5jdGlvbiB5YShlLHQpe3ZhciBuPWUuX3RyYW5zaXRpb25DbGFzc2VzfHwoZS5fdHJhbnNpdGlvbkNsYXNzZXM9W10pO24uaW5kZXhPZih0KTwwJiYobi5wdXNoKHQpLGFhKGUsdCkpfWZ1bmN0aW9uIGdhKGUsdCl7ZS5fdHJhbnNpdGlvbkNsYXNzZXMmJnYoZS5fdHJhbnNpdGlvbkNsYXNzZXMsdCksb2EoZSx0KX1mdW5jdGlvbiB3YShlLHQsbil7dmFyIHI9a2EoZSx0KSxpPXIudHlwZSxhPXIudGltZW91dCxvPXIucHJvcENvdW50O2lmKCFpKXJldHVybiBuKCk7dmFyIGM9aT09PWxhP19hOmZhLHM9MCxwPWZ1bmN0aW9uKCl7ZS5yZW1vdmVFdmVudExpc3RlbmVyKGMsbCksbigpfSxsPWZ1bmN0aW9uKHQpe3QudGFyZ2V0PT09ZSYmKytzPj1vJiZwKCl9O3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7czxvJiZwKCl9KSxhKzEpLGUuYWRkRXZlbnRMaXN0ZW5lcihjLGwpfXZhciBiYT0vXGIodHJhbnNmb3JtfGFsbCkoLHwkKS87ZnVuY3Rpb24ga2EoZSx0KXt2YXIgbixyPXdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGUpLGk9KHJbZGErIkRlbGF5Il18fCIiKS5zcGxpdCgiLCAiKSxhPShyW2RhKyJEdXJhdGlvbiJdfHwiIikuc3BsaXQoIiwgIiksbz14YShpLGEpLGM9KHJbbWErIkRlbGF5Il18fCIiKS5zcGxpdCgiLCAiKSxzPShyW21hKyJEdXJhdGlvbiJdfHwiIikuc3BsaXQoIiwgIikscD14YShjLHMpLGw9MCx1PTA7dD09PWxhP28+MCYmKG49bGEsbD1vLHU9YS5sZW5ndGgpOnQ9PT11YT9wPjAmJihuPXVhLGw9cCx1PXMubGVuZ3RoKToobD1NYXRoLm1heChvLHApLG49bD4wP28+cD9sYTp1YTpudWxsLHU9bj9uPT09bGE/YS5sZW5ndGg6cy5sZW5ndGg6MCk7dmFyIGQ9bj09PWxhJiZiYS50ZXN0KHJbZGErIlByb3BlcnR5Il0pO3JldHVybnt0eXBlOm4sdGltZW91dDpsLHByb3BDb3VudDp1LGhhc1RyYW5zZm9ybTpkfX1mdW5jdGlvbiB4YShlLHQpe3doaWxlKGUubGVuZ3RoPHQubGVuZ3RoKWU9ZS5jb25jYXQoZSk7cmV0dXJuIE1hdGgubWF4LmFwcGx5KG51bGwsdC5tYXAoKGZ1bmN0aW9uKHQsbil7cmV0dXJuIENhKHQpK0NhKGVbbl0pfSkpKX1mdW5jdGlvbiBDYShlKXtyZXR1cm4gMWUzKk51bWJlcihlLnNsaWNlKDAsLTEpLnJlcGxhY2UoIiwiLCIuIikpfWZ1bmN0aW9uIFNhKGUsdCl7dmFyIG49ZS5lbG07aShuLl9sZWF2ZUNiKSYmKG4uX2xlYXZlQ2IuY2FuY2VsbGVkPSEwLG4uX2xlYXZlQ2IoKSk7dmFyIGE9Y2EoZS5kYXRhLnRyYW5zaXRpb24pO2lmKCFyKGEpJiYhaShuLl9lbnRlckNiKSYmMT09PW4ubm9kZVR5cGUpe3ZhciBvPWEuY3NzLGM9YS50eXBlLHA9YS5lbnRlckNsYXNzLGw9YS5lbnRlclRvQ2xhc3MsdT1hLmVudGVyQWN0aXZlQ2xhc3MsZD1hLmFwcGVhckNsYXNzLF89YS5hcHBlYXJUb0NsYXNzLGY9YS5hcHBlYXJBY3RpdmVDbGFzcyxoPWEuYmVmb3JlRW50ZXIsdj1hLmVudGVyLHk9YS5hZnRlckVudGVyLGc9YS5lbnRlckNhbmNlbGxlZCx3PWEuYmVmb3JlQXBwZWFyLGI9YS5hcHBlYXIsaz1hLmFmdGVyQXBwZWFyLHg9YS5hcHBlYXJDYW5jZWxsZWQsQz1hLmR1cmF0aW9uLFM9THQsUD1MdC4kdm5vZGU7d2hpbGUoUCYmUC5wYXJlbnQpUD1QLnBhcmVudCxTPVAuY29udGV4dDt2YXIgaj0hUy5faXNNb3VudGVkfHwhZS5pc1Jvb3RJbnNlcnQ7aWYoIWp8fGJ8fCIiPT09Yil7dmFyIE89aiYmZD9kOnAsQT1qJiZmP2Y6dSxFPWomJl8/XzpsLFQ9aiYmd3x8aCxEPWomJiJmdW5jdGlvbiI9PT10eXBlb2YgYj9iOnYsej1qJiZrfHx5LE09aiYmeHx8ZywkPW0ocyhDKT9DLmVudGVyOkMpOzA7dmFyIE49ITEhPT1vJiYhUSxGPU9hKEQpLEw9bi5fZW50ZXJDYj1JKChmdW5jdGlvbigpe04mJihnYShuLEUpLGdhKG4sQSkpLEwuY2FuY2VsbGVkPyhOJiZnYShuLE8pLE0mJk0obikpOnomJnoobiksbi5fZW50ZXJDYj1udWxsfSkpO2UuZGF0YS5zaG93fHx5dChlLCJpbnNlcnQiLChmdW5jdGlvbigpe3ZhciB0PW4ucGFyZW50Tm9kZSxyPXQmJnQuX3BlbmRpbmcmJnQuX3BlbmRpbmdbZS5rZXldO3ImJnIudGFnPT09ZS50YWcmJnIuZWxtLl9sZWF2ZUNiJiZyLmVsbS5fbGVhdmVDYigpLEQmJkQobixMKX0pKSxUJiZUKG4pLE4mJih5YShuLE8pLHlhKG4sQSksdmEoKGZ1bmN0aW9uKCl7Z2EobixPKSxMLmNhbmNlbGxlZHx8KHlhKG4sRSksRnx8KGphKCQpP3NldFRpbWVvdXQoTCwkKTp3YShuLGMsTCkpKX0pKSksZS5kYXRhLnNob3cmJih0JiZ0KCksRCYmRChuLEwpKSxOfHxGfHxMKCl9fX1mdW5jdGlvbiBQYShlLHQpe3ZhciBuPWUuZWxtO2kobi5fZW50ZXJDYikmJihuLl9lbnRlckNiLmNhbmNlbGxlZD0hMCxuLl9lbnRlckNiKCkpO3ZhciBhPWNhKGUuZGF0YS50cmFuc2l0aW9uKTtpZihyKGEpfHwxIT09bi5ub2RlVHlwZSlyZXR1cm4gdCgpO2lmKCFpKG4uX2xlYXZlQ2IpKXt2YXIgbz1hLmNzcyxjPWEudHlwZSxwPWEubGVhdmVDbGFzcyxsPWEubGVhdmVUb0NsYXNzLHU9YS5sZWF2ZUFjdGl2ZUNsYXNzLGQ9YS5iZWZvcmVMZWF2ZSxfPWEubGVhdmUsZj1hLmFmdGVyTGVhdmUsaD1hLmxlYXZlQ2FuY2VsbGVkLHY9YS5kZWxheUxlYXZlLHk9YS5kdXJhdGlvbixnPSExIT09byYmIVEsdz1PYShfKSxiPW0ocyh5KT95LmxlYXZlOnkpOzA7dmFyIGs9bi5fbGVhdmVDYj1JKChmdW5jdGlvbigpe24ucGFyZW50Tm9kZSYmbi5wYXJlbnROb2RlLl9wZW5kaW5nJiYobi5wYXJlbnROb2RlLl9wZW5kaW5nW2Uua2V5XT1udWxsKSxnJiYoZ2EobixsKSxnYShuLHUpKSxrLmNhbmNlbGxlZD8oZyYmZ2EobixwKSxoJiZoKG4pKToodCgpLGYmJmYobikpLG4uX2xlYXZlQ2I9bnVsbH0pKTt2P3YoeCk6eCgpfWZ1bmN0aW9uIHgoKXtrLmNhbmNlbGxlZHx8KCFlLmRhdGEuc2hvdyYmbi5wYXJlbnROb2RlJiYoKG4ucGFyZW50Tm9kZS5fcGVuZGluZ3x8KG4ucGFyZW50Tm9kZS5fcGVuZGluZz17fSkpW2Uua2V5XT1lKSxkJiZkKG4pLGcmJih5YShuLHApLHlhKG4sdSksdmEoKGZ1bmN0aW9uKCl7Z2EobixwKSxrLmNhbmNlbGxlZHx8KHlhKG4sbCksd3x8KGphKGIpP3NldFRpbWVvdXQoayxiKTp3YShuLGMsaykpKX0pKSksXyYmXyhuLGspLGd8fHd8fGsoKSl9fWZ1bmN0aW9uIGphKGUpe3JldHVybiJudW1iZXIiPT09dHlwZW9mIGUmJiFpc05hTihlKX1mdW5jdGlvbiBPYShlKXtpZihyKGUpKXJldHVybiExO3ZhciB0PWUuZm5zO3JldHVybiBpKHQpP09hKEFycmF5LmlzQXJyYXkodCk/dFswXTp0KTooZS5fbGVuZ3RofHxlLmxlbmd0aCk+MX1mdW5jdGlvbiBBYShlLHQpeyEwIT09dC5kYXRhLnNob3cmJlNhKHQpfXZhciBFYT1KP3tjcmVhdGU6QWEsYWN0aXZhdGU6QWEscmVtb3ZlOmZ1bmN0aW9uKGUsdCl7ITAhPT1lLmRhdGEuc2hvdz9QYShlLHQpOnQoKX19Ont9LFRhPVtBaSxEaSxSaSxLaSxyYSxFYV0sRGE9VGEuY29uY2F0KFNpKSx6YT12aSh7bm9kZU9wczpwaSxtb2R1bGVzOkRhfSk7USYmZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VsZWN0aW9uY2hhbmdlIiwoZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5hY3RpdmVFbGVtZW50O2UmJmUudm1vZGVsJiZWYShlLCJpbnB1dCIpfSkpO3ZhciBNYT17aW5zZXJ0ZWQ6ZnVuY3Rpb24oZSx0LG4scil7InNlbGVjdCI9PT1uLnRhZz8oci5lbG0mJiFyLmVsbS5fdk9wdGlvbnM/eXQobiwicG9zdHBhdGNoIiwoZnVuY3Rpb24oKXtNYS5jb21wb25lbnRVcGRhdGVkKGUsdCxuKX0pKTokYShlLHQsbi5jb250ZXh0KSxlLl92T3B0aW9ucz1bXS5tYXAuY2FsbChlLm9wdGlvbnMsRmEpKTooInRleHRhcmVhIj09PW4udGFnfHxXcihlLnR5cGUpKSYmKGUuX3ZNb2RpZmllcnM9dC5tb2RpZmllcnMsdC5tb2RpZmllcnMubGF6eXx8KGUuYWRkRXZlbnRMaXN0ZW5lcigiY29tcG9zaXRpb25zdGFydCIsTGEpLGUuYWRkRXZlbnRMaXN0ZW5lcigiY29tcG9zaXRpb25lbmQiLFJhKSxlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsUmEpLFEmJihlLnZtb2RlbD0hMCkpKX0sY29tcG9uZW50VXBkYXRlZDpmdW5jdGlvbihlLHQsbil7aWYoInNlbGVjdCI9PT1uLnRhZyl7JGEoZSx0LG4uY29udGV4dCk7dmFyIHI9ZS5fdk9wdGlvbnMsaT1lLl92T3B0aW9ucz1bXS5tYXAuY2FsbChlLm9wdGlvbnMsRmEpO2lmKGkuc29tZSgoZnVuY3Rpb24oZSx0KXtyZXR1cm4hJChlLHJbdF0pfSkpKXt2YXIgYT1lLm11bHRpcGxlP3QudmFsdWUuc29tZSgoZnVuY3Rpb24oZSl7cmV0dXJuIElhKGUsaSl9KSk6dC52YWx1ZSE9PXQub2xkVmFsdWUmJklhKHQudmFsdWUsaSk7YSYmVmEoZSwiY2hhbmdlIil9fX19O2Z1bmN0aW9uICRhKGUsdCxuKXtOYShlLHQsbiksKFl8fGVlKSYmc2V0VGltZW91dCgoZnVuY3Rpb24oKXtOYShlLHQsbil9KSwwKX1mdW5jdGlvbiBOYShlLHQsbil7dmFyIHI9dC52YWx1ZSxpPWUubXVsdGlwbGU7aWYoIWl8fEFycmF5LmlzQXJyYXkocikpe2Zvcih2YXIgYSxvLGM9MCxzPWUub3B0aW9ucy5sZW5ndGg7YzxzO2MrKylpZihvPWUub3B0aW9uc1tjXSxpKWE9TihyLEZhKG8pKT4tMSxvLnNlbGVjdGVkIT09YSYmKG8uc2VsZWN0ZWQ9YSk7ZWxzZSBpZigkKEZhKG8pLHIpKXJldHVybiB2b2lkKGUuc2VsZWN0ZWRJbmRleCE9PWMmJihlLnNlbGVjdGVkSW5kZXg9YykpO2l8fChlLnNlbGVjdGVkSW5kZXg9LTEpfX1mdW5jdGlvbiBJYShlLHQpe3JldHVybiB0LmV2ZXJ5KChmdW5jdGlvbih0KXtyZXR1cm4hJCh0LGUpfSkpfWZ1bmN0aW9uIEZhKGUpe3JldHVybiJfdmFsdWUiaW4gZT9lLl92YWx1ZTplLnZhbHVlfWZ1bmN0aW9uIExhKGUpe2UudGFyZ2V0LmNvbXBvc2luZz0hMH1mdW5jdGlvbiBSYShlKXtlLnRhcmdldC5jb21wb3NpbmcmJihlLnRhcmdldC5jb21wb3Npbmc9ITEsVmEoZS50YXJnZXQsImlucHV0IikpfWZ1bmN0aW9uIFZhKGUsdCl7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRXZlbnQoIkhUTUxFdmVudHMiKTtuLmluaXRFdmVudCh0LCEwLCEwKSxlLmRpc3BhdGNoRXZlbnQobil9ZnVuY3Rpb24gVWEoZSl7cmV0dXJuIWUuY29tcG9uZW50SW5zdGFuY2V8fGUuZGF0YSYmZS5kYXRhLnRyYW5zaXRpb24/ZTpVYShlLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZSl9dmFyIEhhPXtiaW5kOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj10LnZhbHVlO249VWEobik7dmFyIGk9bi5kYXRhJiZuLmRhdGEudHJhbnNpdGlvbixhPWUuX192T3JpZ2luYWxEaXNwbGF5PSJub25lIj09PWUuc3R5bGUuZGlzcGxheT8iIjplLnN0eWxlLmRpc3BsYXk7ciYmaT8obi5kYXRhLnNob3c9ITAsU2EobiwoZnVuY3Rpb24oKXtlLnN0eWxlLmRpc3BsYXk9YX0pKSk6ZS5zdHlsZS5kaXNwbGF5PXI/YToibm9uZSJ9LHVwZGF0ZTpmdW5jdGlvbihlLHQsbil7dmFyIHI9dC52YWx1ZSxpPXQub2xkVmFsdWU7aWYoIXIhPT0haSl7bj1VYShuKTt2YXIgYT1uLmRhdGEmJm4uZGF0YS50cmFuc2l0aW9uO2E/KG4uZGF0YS5zaG93PSEwLHI/U2EobiwoZnVuY3Rpb24oKXtlLnN0eWxlLmRpc3BsYXk9ZS5fX3ZPcmlnaW5hbERpc3BsYXl9KSk6UGEobiwoZnVuY3Rpb24oKXtlLnN0eWxlLmRpc3BsYXk9Im5vbmUifSkpKTplLnN0eWxlLmRpc3BsYXk9cj9lLl9fdk9yaWdpbmFsRGlzcGxheToibm9uZSJ9fSx1bmJpbmQ6ZnVuY3Rpb24oZSx0LG4scixpKXtpfHwoZS5zdHlsZS5kaXNwbGF5PWUuX192T3JpZ2luYWxEaXNwbGF5KX19LEdhPXttb2RlbDpNYSxzaG93OkhhfSxLYT17bmFtZTpTdHJpbmcsYXBwZWFyOkJvb2xlYW4sY3NzOkJvb2xlYW4sbW9kZTpTdHJpbmcsdHlwZTpTdHJpbmcsZW50ZXJDbGFzczpTdHJpbmcsbGVhdmVDbGFzczpTdHJpbmcsZW50ZXJUb0NsYXNzOlN0cmluZyxsZWF2ZVRvQ2xhc3M6U3RyaW5nLGVudGVyQWN0aXZlQ2xhc3M6U3RyaW5nLGxlYXZlQWN0aXZlQ2xhc3M6U3RyaW5nLGFwcGVhckNsYXNzOlN0cmluZyxhcHBlYXJBY3RpdmVDbGFzczpTdHJpbmcsYXBwZWFyVG9DbGFzczpTdHJpbmcsZHVyYXRpb246W051bWJlcixTdHJpbmcsT2JqZWN0XX07ZnVuY3Rpb24gQmEoZSl7dmFyIHQ9ZSYmZS5jb21wb25lbnRPcHRpb25zO3JldHVybiB0JiZ0LkN0b3Iub3B0aW9ucy5hYnN0cmFjdD9CYShBdCh0LmNoaWxkcmVuKSk6ZX1mdW5jdGlvbiBxYShlKXt2YXIgdD17fSxuPWUuJG9wdGlvbnM7Zm9yKHZhciByIGluIG4ucHJvcHNEYXRhKXRbcl09ZVtyXTt2YXIgaT1uLl9wYXJlbnRMaXN0ZW5lcnM7Zm9yKHZhciBhIGluIGkpdFtrKGEpXT1pW2FdO3JldHVybiB0fWZ1bmN0aW9uIEphKGUsdCl7aWYoL1xkLWtlZXAtYWxpdmUkLy50ZXN0KHQudGFnKSlyZXR1cm4gZSgia2VlcC1hbGl2ZSIse3Byb3BzOnQuY29tcG9uZW50T3B0aW9ucy5wcm9wc0RhdGF9KX1mdW5jdGlvbiBXYShlKXt3aGlsZShlPWUucGFyZW50KWlmKGUuZGF0YS50cmFuc2l0aW9uKXJldHVybiEwfWZ1bmN0aW9uIFhhKGUsdCl7cmV0dXJuIHQua2V5PT09ZS5rZXkmJnQudGFnPT09ZS50YWd9dmFyIFphPWZ1bmN0aW9uKGUpe3JldHVybiBlLnRhZ3x8T3QoZSl9LFlhPWZ1bmN0aW9uKGUpe3JldHVybiJzaG93Ij09PWUubmFtZX0sUWE9e25hbWU6InRyYW5zaXRpb24iLHByb3BzOkthLGFic3RyYWN0OiEwLHJlbmRlcjpmdW5jdGlvbihlKXt2YXIgdD10aGlzLG49dGhpcy4kc2xvdHMuZGVmYXVsdDtpZihuJiYobj1uLmZpbHRlcihaYSksbi5sZW5ndGgpKXswO3ZhciByPXRoaXMubW9kZTswO3ZhciBpPW5bMF07aWYoV2EodGhpcy4kdm5vZGUpKXJldHVybiBpO3ZhciBhPUJhKGkpO2lmKCFhKXJldHVybiBpO2lmKHRoaXMuX2xlYXZpbmcpcmV0dXJuIEphKGUsaSk7dmFyIG89Il9fdHJhbnNpdGlvbi0iK3RoaXMuX3VpZCsiLSI7YS5rZXk9bnVsbD09YS5rZXk/YS5pc0NvbW1lbnQ/bysiY29tbWVudCI6bythLnRhZzpjKGEua2V5KT8wPT09U3RyaW5nKGEua2V5KS5pbmRleE9mKG8pP2Eua2V5Om8rYS5rZXk6YS5rZXk7dmFyIHM9KGEuZGF0YXx8KGEuZGF0YT17fSkpLnRyYW5zaXRpb249cWEodGhpcykscD10aGlzLl92bm9kZSxsPUJhKHApO2lmKGEuZGF0YS5kaXJlY3RpdmVzJiZhLmRhdGEuZGlyZWN0aXZlcy5zb21lKFlhKSYmKGEuZGF0YS5zaG93PSEwKSxsJiZsLmRhdGEmJiFYYShhLGwpJiYhT3QobCkmJighbC5jb21wb25lbnRJbnN0YW5jZXx8IWwuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlLmlzQ29tbWVudCkpe3ZhciB1PWwuZGF0YS50cmFuc2l0aW9uPUUoe30scyk7aWYoIm91dC1pbiI9PT1yKXJldHVybiB0aGlzLl9sZWF2aW5nPSEwLHl0KHUsImFmdGVyTGVhdmUiLChmdW5jdGlvbigpe3QuX2xlYXZpbmc9ITEsdC4kZm9yY2VVcGRhdGUoKX0pKSxKYShlLGkpO2lmKCJpbi1vdXQiPT09cil7aWYoT3QoYSkpcmV0dXJuIHA7dmFyIGQsXz1mdW5jdGlvbigpe2QoKX07eXQocywiYWZ0ZXJFbnRlciIsXykseXQocywiZW50ZXJDYW5jZWxsZWQiLF8pLHl0KHUsImRlbGF5TGVhdmUiLChmdW5jdGlvbihlKXtkPWV9KSl9fXJldHVybiBpfX19LGVvPUUoe3RhZzpTdHJpbmcsbW92ZUNsYXNzOlN0cmluZ30sS2EpO2RlbGV0ZSBlby5tb2RlO3ZhciB0bz17cHJvcHM6ZW8sYmVmb3JlTW91bnQ6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9dGhpcy5fdXBkYXRlO3RoaXMuX3VwZGF0ZT1mdW5jdGlvbihuLHIpe3ZhciBpPVJ0KGUpO2UuX19wYXRjaF9fKGUuX3Zub2RlLGUua2VwdCwhMSwhMCksZS5fdm5vZGU9ZS5rZXB0LGkoKSx0LmNhbGwoZSxuLHIpfX0scmVuZGVyOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD10aGlzLnRhZ3x8dGhpcy4kdm5vZGUuZGF0YS50YWd8fCJzcGFuIixuPU9iamVjdC5jcmVhdGUobnVsbCkscj10aGlzLnByZXZDaGlsZHJlbj10aGlzLmNoaWxkcmVuLGk9dGhpcy4kc2xvdHMuZGVmYXVsdHx8W10sYT10aGlzLmNoaWxkcmVuPVtdLG89cWEodGhpcyksYz0wO2M8aS5sZW5ndGg7YysrKXt2YXIgcz1pW2NdO2lmKHMudGFnKWlmKG51bGwhPXMua2V5JiYwIT09U3RyaW5nKHMua2V5KS5pbmRleE9mKCJfX3ZsaXN0IikpYS5wdXNoKHMpLG5bcy5rZXldPXMsKHMuZGF0YXx8KHMuZGF0YT17fSkpLnRyYW5zaXRpb249bztlbHNlO31pZihyKXtmb3IodmFyIHA9W10sbD1bXSx1PTA7dTxyLmxlbmd0aDt1Kyspe3ZhciBkPXJbdV07ZC5kYXRhLnRyYW5zaXRpb249byxkLmRhdGEucG9zPWQuZWxtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLG5bZC5rZXldP3AucHVzaChkKTpsLnB1c2goZCl9dGhpcy5rZXB0PWUodCxudWxsLHApLHRoaXMucmVtb3ZlZD1sfXJldHVybiBlKHQsbnVsbCxhKX0sdXBkYXRlZDpmdW5jdGlvbigpe3ZhciBlPXRoaXMucHJldkNoaWxkcmVuLHQ9dGhpcy5tb3ZlQ2xhc3N8fCh0aGlzLm5hbWV8fCJ2IikrIi1tb3ZlIjtlLmxlbmd0aCYmdGhpcy5oYXNNb3ZlKGVbMF0uZWxtLHQpJiYoZS5mb3JFYWNoKG5vKSxlLmZvckVhY2gocm8pLGUuZm9yRWFjaChpbyksdGhpcy5fcmVmbG93PWRvY3VtZW50LmJvZHkub2Zmc2V0SGVpZ2h0LGUuZm9yRWFjaCgoZnVuY3Rpb24oZSl7aWYoZS5kYXRhLm1vdmVkKXt2YXIgbj1lLmVsbSxyPW4uc3R5bGU7eWEobix0KSxyLnRyYW5zZm9ybT1yLldlYmtpdFRyYW5zZm9ybT1yLnRyYW5zaXRpb25EdXJhdGlvbj0iIixuLmFkZEV2ZW50TGlzdGVuZXIoX2Esbi5fbW92ZUNiPWZ1bmN0aW9uIGUocil7ciYmci50YXJnZXQhPT1ufHxyJiYhL3RyYW5zZm9ybSQvLnRlc3Qoci5wcm9wZXJ0eU5hbWUpfHwobi5yZW1vdmVFdmVudExpc3RlbmVyKF9hLGUpLG4uX21vdmVDYj1udWxsLGdhKG4sdCkpfSl9fSkpKX0sbWV0aG9kczp7aGFzTW92ZTpmdW5jdGlvbihlLHQpe2lmKCFwYSlyZXR1cm4hMTtpZih0aGlzLl9oYXNNb3ZlKXJldHVybiB0aGlzLl9oYXNNb3ZlO3ZhciBuPWUuY2xvbmVOb2RlKCk7ZS5fdHJhbnNpdGlvbkNsYXNzZXMmJmUuX3RyYW5zaXRpb25DbGFzc2VzLmZvckVhY2goKGZ1bmN0aW9uKGUpe29hKG4sZSl9KSksYWEobix0KSxuLnN0eWxlLmRpc3BsYXk9Im5vbmUiLHRoaXMuJGVsLmFwcGVuZENoaWxkKG4pO3ZhciByPWthKG4pO3JldHVybiB0aGlzLiRlbC5yZW1vdmVDaGlsZChuKSx0aGlzLl9oYXNNb3ZlPXIuaGFzVHJhbnNmb3JtfX19O2Z1bmN0aW9uIG5vKGUpe2UuZWxtLl9tb3ZlQ2ImJmUuZWxtLl9tb3ZlQ2IoKSxlLmVsbS5fZW50ZXJDYiYmZS5lbG0uX2VudGVyQ2IoKX1mdW5jdGlvbiBybyhlKXtlLmRhdGEubmV3UG9zPWUuZWxtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpfWZ1bmN0aW9uIGlvKGUpe3ZhciB0PWUuZGF0YS5wb3Msbj1lLmRhdGEubmV3UG9zLHI9dC5sZWZ0LW4ubGVmdCxpPXQudG9wLW4udG9wO2lmKHJ8fGkpe2UuZGF0YS5tb3ZlZD0hMDt2YXIgYT1lLmVsbS5zdHlsZTthLnRyYW5zZm9ybT1hLldlYmtpdFRyYW5zZm9ybT0idHJhbnNsYXRlKCIrcisicHgsIitpKyJweCkiLGEudHJhbnNpdGlvbkR1cmF0aW9uPSIwcyJ9fXZhciBhbz17VHJhbnNpdGlvbjpRYSxUcmFuc2l0aW9uR3JvdXA6dG99O3VyLmNvbmZpZy5tdXN0VXNlUHJvcD1Pcix1ci5jb25maWcuaXNSZXNlcnZlZFRhZz1Lcix1ci5jb25maWcuaXNSZXNlcnZlZEF0dHI9UHIsdXIuY29uZmlnLmdldFRhZ05hbWVzcGFjZT1Ccix1ci5jb25maWcuaXNVbmtub3duRWxlbWVudD1KcixFKHVyLm9wdGlvbnMuZGlyZWN0aXZlcyxHYSksRSh1ci5vcHRpb25zLmNvbXBvbmVudHMsYW8pLHVyLnByb3RvdHlwZS5fX3BhdGNoX189Sj96YTpELHVyLnByb3RvdHlwZS4kbW91bnQ9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZT1lJiZKP1hyKGUpOnZvaWQgMCxIdCh0aGlzLGUsdCl9LEomJnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7Vi5kZXZ0b29scyYmb2UmJm9lLmVtaXQoImluaXQiLHVyKX0pLDApLHRbImEiXT11cn0pLmNhbGwodGhpcyxuKCJjOGJhIikpfSwiMmI0YyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjU1MzciKSgid2tzIiksaT1uKCJjYTVhIiksYT1uKCI3NzI2IikuU3ltYm9sLG89ImZ1bmN0aW9uIj09dHlwZW9mIGEsYz1lLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIHJbZV18fChyW2VdPW8mJmFbZV18fChvP2E6aSkoIlN5bWJvbC4iK2UpKX07Yy5zdG9yZT1yfSwiMmQwMCI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ITF9LCIyZDk1IjpmdW5jdGlvbihlLHQpe3ZhciBuPXt9LnRvU3RyaW5nO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbi5jYWxsKGUpLnNsaWNlKDgsLTEpfX0sIjJmNmQiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpO24oIjdmN2YiKTt2YXIgcj17Y3JlYXRlZDpmdW5jdGlvbigpe2NvbnNvbGUud2FybigiWyIuY29uY2F0KHRoaXMuJG9wdGlvbnMubmFtZSwiXSBUaGlzIHdpZGdldCBpcyBkZXByZWNhdGVkIGFuZCBpcyBubyBsb25nZXIgbWFpbnRhaW5lZC4gUGxlYXNlIHZpc2l0IGh0dHBzOi8vd3d3LmNvaW5nZWNrby5jb20vd2lkZ2V0cyB0byBnZXQgdGhlIG5ldyB2ZXJzaW9uIG9mIHRoaXMgd2lkZ2V0LCB3aGljaCBmZWF0dXJlcyBhIG5ldyBkZXNpZ24gYW5kIGJldHRlciBwZXJmb3JtYW5jZSEiKSl9fX0sIjMwZjEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiYjhlMyIpLGk9bigiNjNiNiIpLGE9bigiOTEzOCIpLG89bigiMzVlOCIpLGM9bigiNDgxYiIpLHM9bigiOGY2MCIpLHA9bigiNDVmMiIpLGw9bigiNTNlMiIpLHU9bigiNTE2OCIpKCJpdGVyYXRvciIpLGQ9IShbXS5rZXlzJiYibmV4dCJpbltdLmtleXMoKSksXz0iQEBpdGVyYXRvciIsbT0ia2V5cyIsZj0idmFsdWVzIixoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9O2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbix2LHksZyx3KXtzKG4sdCx2KTt2YXIgYixrLHgsQz1mdW5jdGlvbihlKXtpZighZCYmZSBpbiBPKXJldHVybiBPW2VdO3N3aXRjaChlKXtjYXNlIG06cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBuKHRoaXMsZSl9O2Nhc2UgZjpyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG4odGhpcyxlKX19cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBuKHRoaXMsZSl9fSxTPXQrIiBJdGVyYXRvciIsUD15PT1mLGo9ITEsTz1lLnByb3RvdHlwZSxBPU9bdV18fE9bX118fHkmJk9beV0sRT1BfHxDKHkpLFQ9eT9QP0MoImVudHJpZXMiKTpFOnZvaWQgMCxEPSJBcnJheSI9PXQmJk8uZW50cmllc3x8QTtpZihEJiYoeD1sKEQuY2FsbChuZXcgZSkpLHghPT1PYmplY3QucHJvdG90eXBlJiZ4Lm5leHQmJihwKHgsUywhMCkscnx8ImZ1bmN0aW9uIj09dHlwZW9mIHhbdV18fG8oeCx1LGgpKSksUCYmQSYmQS5uYW1lIT09ZiYmKGo9ITAsRT1mdW5jdGlvbigpe3JldHVybiBBLmNhbGwodGhpcyl9KSxyJiYhd3x8IWQmJiFqJiZPW3VdfHxvKE8sdSxFKSxjW3RdPUUsY1tTXT1oLHkpaWYoYj17dmFsdWVzOlA/RTpDKGYpLGtleXM6Zz9FOkMobSksZW50cmllczpUfSx3KWZvcihrIGluIGIpayBpbiBPfHxhKE8sayxiW2tdKTtlbHNlIGkoaS5QK2kuRiooZHx8aiksdCxiKTtyZXR1cm4gYn19LCIzMmU5IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiODZjYyIpLGk9bigiNDYzMCIpO2UuZXhwb3J0cz1uKCI5ZTFlIik/ZnVuY3Rpb24oZSx0LG4pe3JldHVybiByLmYoZSx0LGkoMSxuKSl9OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gZVt0XT1uLGV9fSwiMzJmYyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImU1M2QiKS5kb2N1bWVudDtlLmV4cG9ydHM9ciYmci5kb2N1bWVudEVsZW1lbnR9LCIzMzVjIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNmI0YyIpO2UuZXhwb3J0cz1PYmplY3QoInoiKS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgwKT9PYmplY3Q6ZnVuY3Rpb24oZSl7cmV0dXJuIlN0cmluZyI9PXIoZSk/ZS5zcGxpdCgiIik6T2JqZWN0KGUpfX0sMzUwNDpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoi5oC75biC5YC85o6S5ZCNIiwibWNhcCI6IuaAu+W4guWAvCIsIjI0aF92b2x1bWUiOiIyNCDlsI/ml7bkuqTmmJPph48iLCIyNGhfaGlnaF9sb3ciOiIyNOWwj+aXtumrmC/kvY4ifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5pSv5oyBIiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiLliqDlr4bku7fmoLzmr5TovoMiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoi5Yqg5a+G6LSn5biB5biC5YC85q+U6L6DIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5pSv5oyBIn0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjQg5bCP5pe25pyA6auY5Lu35qC8IiwiMjRoX2xvdyI6IjI0IOWwj+aXtuacgOS9juS7t+agvCIsInZpZXdfcHJpY2VfY2hhcnQiOiLmn6XnnIsgJXtjb2lufSDku7fmoLzotbDlir/lm74iLCJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5pSv5oyBIn0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IueUsSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOaUr+aMgSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmlK/mjIEifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IueUsSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOaUr+aMgSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNCDlsI/ml7bmnIDpq5jku7fmoLwiLCIyNGhfbG93IjoiMjQg5bCP5pe25pyA5L2O5Lu35qC8Iiwidmlld19wcmljZV9jaGFydCI6IuafpeeciyAle2NvaW59IOS7t+agvOi1sOWKv+WbviIsInBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmlK/mjIEifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiLmn6XnnIsgJXtjb2lufSDku7fmoLzotbDlir/lm74iLCJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5pSv5oyBIn0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiLliqDlr4botKfluIHmoJHlnovlm74iLCJzdWJ0aXRsZSI6Iu+8iOW4guWAvOaOkuWQjeWJjSV7dG9wfe+8iSIsInBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmlK/mjIEifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLlhY3otKPlo7DmmI7vvJrmraTlt6Xlhbfku4XnlKjkuo7lqLHkuZDnm67nmoTvvIzkuI3mnoTmiJDku7vkvZXph5Hono3lu7rorq7jgIIiLCJzcGluIjoiU3BpbiIsImF2YWlsYWJsZV9jb2lucyI6IuWPr+eUqOS7o+W4gSJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyDku7fmoLzmm7TmlrAiLCJ0b3RhbF9tY2FwIjoi5oC75biC5YC8IiwiMjRoX3ZvbCI6IjI05bCP5pe25Lqk5piT6YePIiwiZG9tIjoi5biC5Y2g546HIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IuS6pOaYk+aJgCIsInBhaXIiOiLotKfluIHnu4TlkIgiLCJwcmljZSI6IuS7t+agvCIsInZvbHVtZSI6IuS6pOaYk+mHjyIsInRydXN0X3Njb3JlIjoi5L+h55So6K+E5YiGIiwidmlld19wcmljZV9jaGFydCI6Iuafpeeci+S7t+agvOi1sOWKv+WbviIsInBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmlK/mjIEiLCJ2aWV3X2FsbCI6Iuafpeeci+aJgOaciSAle2NvaW59IOW4guWcuiJ9fScpfSwiMzU1ZCI6ZnVuY3Rpb24oZSx0KXt0LmY9e30ucHJvcGVydHlJc0VudW1lcmFibGV9LCIzNWU4IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDlmNiIpLGk9bigiYWViZCIpO2UuZXhwb3J0cz1uKCI4ZTYwIik/ZnVuY3Rpb24oZSx0LG4pe3JldHVybiByLmYoZSx0LGkoMSxuKSl9OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gZVt0XT1uLGV9fSwiMzZjMyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjMzNWMiKSxpPW4oIjI1ZWIiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIHIoaShlKSl9fSwzODQ2OmZ1bmN0aW9uKGUsdCxuKXtuKCI5ZTFlIikmJiJnIiE9Ly4vZy5mbGFncyYmbigiODZjYyIpLmYoUmVnRXhwLnByb3RvdHlwZSwiZmxhZ3MiLHtjb25maWd1cmFibGU6ITAsZ2V0Om4oIjBiZmIiKX0pfSwiMzhmZCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjY5YTgiKSxpPW4oIjRiZjgiKSxhPW4oIjYxM2IiKSgiSUVfUFJPVE8iKSxvPU9iamVjdC5wcm90b3R5cGU7ZS5leHBvcnRzPU9iamVjdC5nZXRQcm90b3R5cGVPZnx8ZnVuY3Rpb24oZSl7cmV0dXJuIGU9aShlKSxyKGUsYSk/ZVthXToiZnVuY3Rpb24iPT10eXBlb2YgZS5jb25zdHJ1Y3RvciYmZSBpbnN0YW5jZW9mIGUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5wcm90b3R5cGU6ZSBpbnN0YW5jZW9mIE9iamVjdD9vOm51bGx9fSwiM2EzOCI6ZnVuY3Rpb24oZSx0KXt2YXIgbj1NYXRoLmNlaWwscj1NYXRoLmZsb29yO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gaXNOYU4oZT0rZSk/MDooZT4wP3I6bikoZSl9fSwiM2RhOSI6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IlBvcmFkaWUgdHJob3ZlaiBrYXBpdGFsaXrDoWNpZSIsIm1jYXAiOiJUcmhvdsOhIGthcGl0YWxpesOhY2lhIiwiMjRoX3ZvbHVtZSI6Ik9iamVtIHphIDI0SCIsIjI0aF9oaWdoX2xvdyI6IjI0SCB2eXNva8OhL27DrXprYSJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb2jDocWIYW7DqSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJQb3Jvdm5hbmllIGNpZW4ga3J5cHRvbWllbiIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiJQb3Jvdm5hbmllIHRyaG92ZWoga2FwaXRhbGl6w6FjaWUga3J5cHRvbWllbiJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBvaMOhxYhhbsOpICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNEggdnlzb2vDoSIsIjI0aF9sb3ciOiIyNEggbsOtemthIiwidmlld19wcmljZV9jaGFydCI6IlpvYnJhemnFpSBjZW5vdsO9IGdyYWYgcHJlICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiUG9ow6HFiGFuw6kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb2jDocWIYW7DqSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBvaMOhxYhhbsOpICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBvaMOhxYhhbsOpICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjRIIHZ5c29rw6EiLCIyNGhfbG93IjoiMjRIIG7DrXprYSIsInZpZXdfcHJpY2VfY2hhcnQiOiJab2JyYXppxaUgY2Vub3bDvSBncmFmIHByZSAle2NvaW59IiwicG93ZXJlZF9ieSI6IlBvaMOhxYhhbsOpICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiJab2JyYXppxaUgY2Vub3bDvSBncmFmIHByZSAle2NvaW59IiwicG93ZXJlZF9ieSI6IlBvaMOhxYhhbsOpICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6Ik1hcGEga3J5cHRvbWllbiIsInN1YnRpdGxlIjoiKFRvcCAle3RvcH0gcG9kxL5hIHRyaG92ZWoga2FwKSIsInBvd2VyZWRfYnkiOiJQb2jDocWIYW7DqSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiWnJpZWtudXRpZSBzYSB6b2Rwb3ZlZG5vc3RpOiBUZW50byBuw6FzdHJvaiBzbMO6xb5pYSBuYSB6w6FiYXZ1IGEgbmVwcmVkc3RhdnVqw7ogZmluYW7EjW7DqSBwb3JhZGVuc3R2by4iLCJzcGluIjoiVG/EjWnFpSIsImF2YWlsYWJsZV9jb2lucyI6IkRvc3R1cG7DqSBjb2lueSJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkFrdHVhbGl6w6FjaWEgY2VueSBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiQ2Vsa292w6EgdHJoLiBrYXAuIiwiMjRoX3ZvbCI6Ik9iamVtIHphIDI0aCIsImRvbSI6IkRvbWluYW5jaWEifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiQnVyemEiLCJwYWlyIjoiUMOhciIsInByaWNlIjoiQ2VuYSIsInZvbHVtZSI6Ik9iamVtIiwidHJ1c3Rfc2NvcmUiOiJTa8OzcmUgZMO0dmVyeWhvZG5vc3RpIiwidmlld19wcmljZV9jaGFydCI6IlpvYnJhemnFpSBjZW5vdsO9IGdyYWYiLCJwb3dlcmVkX2J5IjoiUG9ow6HFiGFuw6kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiWm9icmF6acWlIHbFoWV0a3kgdHJoeSAle2NvaW59In19Jyl9LCI0MWEwIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjJhZWIiKSxpPW4oIjQ2MzAiKSxhPW4oIjdmMjAiKSxvPXt9O24oIjMyZTkiKShvLG4oIjJiNGMiKSgiaXRlcmF0b3IiKSwoZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pKSxlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe2UucHJvdG90eXBlPXIobyx7bmV4dDppKDEsbil9KSxhKGUsdCsiIEl0ZXJhdG9yIil9fSwiNDU2ZCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjRiZjgiKSxpPW4oIjBkNTgiKTtuKCI1ZWRhIikoImtleXMiLChmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gaShyKGUpKX19KSl9LDQ1ODg6ZnVuY3Rpb24oZSx0KXt2YXIgbj1NYXRoLmNlaWwscj1NYXRoLmZsb29yO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gaXNOYU4oZT0rZSk/MDooZT4wP3I6bikoZSl9fSwiNDVmMiI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImQ5ZjYiKS5mLGk9bigiMDdlMyIpLGE9bigiNTE2OCIpKCJ0b1N0cmluZ1RhZyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7ZSYmIWkoZT1uP2U6ZS5wcm90b3R5cGUsYSkmJnIoZSxhLHtjb25maWd1cmFibGU6ITAsdmFsdWU6dH0pfX0sNDYwMTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjgzYzIiKSxpPXIoIiVUeXBlRXJyb3IlIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7aWYobnVsbD09ZSl0aHJvdyBuZXcgaSh0fHwiQ2Fubm90IGNhbGwgbWV0aG9kIG9uICIrZSk7cmV0dXJuIGV9fSw0NjMwOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJue2VudW1lcmFibGU6ISgxJmUpLGNvbmZpZ3VyYWJsZTohKDImZSksd3JpdGFibGU6ISg0JmUpLHZhbHVlOnR9fX0sIjQ3ZWUiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJjM2ExIiksaT1uKCI5YWE5IiksYT1uKCIzNTVkIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0PXIoZSksbj1pLmY7aWYobil7dmFyIG8sYz1uKGUpLHM9YS5mLHA9MDt3aGlsZShjLmxlbmd0aD5wKXMuY2FsbChlLG89Y1twKytdKSYmdC5wdXNoKG8pfXJldHVybiB0fX0sIjQ4MWIiOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPXt9fSwiNGJmOCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImJlMTMiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdChyKGUpKX19LCI0YzViIjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiQsO2cnN2w6RyZGVzcmFua25pbmciLCJtY2FwIjoiQsO2cnN2w6RyZGUiLCIyNGhfdm9sdW1lIjoiVm9seW0gMjQgaCIsIjI0aF9oaWdoX2xvdyI6IjI0SCBow7Znc3QvbMOkZ3N0YSJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcml2cyBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJKw6RtZsO2cmVsc2UgYXYga3J5cHRvcHJpc2VyIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IkrDpG1mw7ZyZWxzZSBhdiBrcnlwdG9iw7Zyc3bDpHJkZSJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRyaXZzIGF2ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNCBoIGjDtmdzdGEiLCIyNGhfbG93IjoiMjRoIGzDpGdzdGEiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmlzYSBwcmlzbGlzdGEgZsO2ciAle2NvaW59IiwicG93ZXJlZF9ieSI6IkRyaXZzIGF2ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiRHJpdnMgYXYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcml2cyBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcml2cyBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0IGggaMO2Z3N0YSIsIjI0aF9sb3ciOiIyNGggbMOkZ3N0YSIsInZpZXdfcHJpY2VfY2hhcnQiOiJWaXNhIHByaXNsaXN0YSBmw7ZyICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiRHJpdnMgYXYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZpc2EgcHJpc2xpc3RhIGbDtnIgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJEcml2cyBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiJUcsOkZGthcnRhIMO2dmVyIGtyeXB0b3ZhbHV0b3IiLCJzdWJ0aXRsZSI6Iigle3RvcH0gaSB0b3BwIGVmdGVyIGLDtnJzdsOkcmRlKSIsInBvd2VyZWRfYnkiOiJEcml2cyBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiT2JzISBEZXNzYSB2ZXJrdHlnIGZ1bmdlcmFyIHNvbSB1bmRlcmjDpWxsbmluZyBvY2ggdXRnw7ZyIGludGUgZmluYW5zaWVsbCByw6VkZ2l2bmluZy4iLCJzcGluIjoiU251cnJhIiwiYXZhaWxhYmxlX2NvaW5zIjoiVGlsbGfDpG5nbGlnYSBteW50In0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiUHJpc3VwcGRhdGVyaW5nIGhvcyBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiVG90YWx0IGLDtnJzdsOkcmRlIiwiMjRoX3ZvbCI6IlZvbHltIDI0IGgiLCJkb20iOiJEb20ifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiSGFuZGVsIiwicGFpciI6IlBhciIsInByaWNlIjoiUHJpcyIsInZvbHVtZSI6IlZvbHltIiwidHJ1c3Rfc2NvcmUiOiJGw7ZydHJvZW5kZWJldHlnIiwidmlld19wcmljZV9jaGFydCI6IlZpc2EgcHJpc3RhYmVsbCIsInBvd2VyZWRfYnkiOiJEcml2cyBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJWaXNhIGFsbGEgJXtjb2lufS1tYXJrbmFkZXIifX0nKX0sIjRkMDEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiMGY3YyIpLGk9bigiODNjMiIpLGE9aSgiJUZ1bmN0aW9uJSIpLG89YS5hcHBseSxjPWEuY2FsbDtlLmV4cG9ydHM9ZnVuY3Rpb24oKXtyZXR1cm4gci5hcHBseShjLGFyZ3VtZW50cyl9LGUuZXhwb3J0cy5hcHBseT1mdW5jdGlvbigpe3JldHVybiByLmFwcGx5KG8sYXJndW1lbnRzKX19LCI0ZTczIjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiS2FwaXRhbGl6w6FjacOzcyByYW5nIiwibWNhcCI6IlBpYWNpIGthcGl0YWxpesOhY2nDsyIsIjI0aF92b2x1bWUiOiIyNCDDs3LDoXMgZm9yZ2Fsb20iLCIyNGhfaGlnaF9sb3ciOiIyNCDDs3LDoXMgbWF4aW11bS9taW5pbXVtIn0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkEoeikgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSBqw7N2b2x0w6Fiw7NsIiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJLcmlwdG/DoXJmb2x5YW1vayDDtnNzemVoYXNvbmzDrXTDoXNhIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IktyaXB0b3BpYWNpIGthcGl0YWxpesOhY2nDsyDDtnNzemVoYXNvbmzDrXTDoXNhIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiQSh6KSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IGrDs3ZvbHTDoWLDs2wifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNCDDs3LDoXMgbWF4aW11bSIsIjI0aF9sb3ciOiIyNCDDs3LDoXMgbWluaW11bSIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59LcOhcmZvbHlhbWRpYWdyYW0gbWVndGVraW50w6lzZSIsInBvd2VyZWRfYnkiOiJBKHopICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gasOzdm9sdMOhYsOzbCJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJBKHopICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gasOzdm9sdMOhYsOzbCJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJBKHopICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gasOzdm9sdMOhYsOzbCJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiQSh6KSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IGrDs3ZvbHTDoWLDs2wifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjQgw7Nyw6FzIG1heGltdW0iLCIyNGhfbG93IjoiMjQgw7Nyw6FzIG1pbmltdW0iLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiJXtjb2lufS3DoXJmb2x5YW1kaWFncmFtIG1lZ3Rla2ludMOpc2UiLCJwb3dlcmVkX2J5IjoiQSh6KSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IGrDs3ZvbHTDoWLDs2wifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59LcOhcmZvbHlhbWRpYWdyYW0gbWVndGVraW50w6lzZSIsInBvd2VyZWRfYnkiOiJBKHopICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gasOzdm9sdMOhYsOzbCJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoiS3JpcHRvZGV2aXrDoWsgZmFzdHJ1a3TDunJhLXTDqXJrw6lwZSIsInN1YnRpdGxlIjoiKEVsc8WRICV7dG9wfSBrYXBpdGFsaXrDoWNpw7MgYWxhcGrDoW4pIiwicG93ZXJlZF9ieSI6IkEoeikgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSBqw7N2b2x0w6Fiw7NsIn0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiRmVsZWzFkXNzw6lnaSBueWlsYXRrb3phdDogZXogYXogY3NhayBlc3prw7Z6IHN6w7NyYWtvenRhdMOhc3JhIHN6b2xnw6FsLCBuZW0gbWluxZFzw7xsIHDDqW56w7xneWkgdGFuw6Fjc2Fkw6FzbmFrLiIsInNwaW4iOiJQw7ZyZ2V0w6lzIiwiYXZhaWxhYmxlX2NvaW5zIjoiRWzDqXJoZXTFkSDDqXJtw6lrIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiQ29pbkdlY2tvLcOhcmZvbHlhbWZyaXNzw610w6lzIiwidG90YWxfbWNhcCI6IlRlbGplcyBwLiBrYXAuIiwiMjRoX3ZvbCI6IjI0IMOzcsOhcyBmb3JnYWxvbSIsImRvbSI6IkRvbWluYW5jaWEifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiVMWRenNkZSIsInBhaXIiOiJEZXZpemFww6FyIiwicHJpY2UiOiLDgXJmb2x5YW0iLCJ2b2x1bWUiOiJGb3JnYWxvbSIsInRydXN0X3Njb3JlIjoiTWVnYsOtemhhdMOzc8OhZ2kgcG9udHN6w6FtIiwidmlld19wcmljZV9jaGFydCI6IsOBcmZvbHlhbWRpYWdyYW0gbWVndGVraW50w6lzZSIsInBvd2VyZWRfYnkiOiJBKHopICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gasOzdm9sdMOhYsOzbCIsInZpZXdfYWxsIjoiw5Zzc3plcyAle2NvaW59LXBpYWMgbWVndGVraW50w6lzZSJ9fScpfSwiNTBlZCI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm57dmFsdWU6dCxkb25lOiEhZX19fSw1MTY4OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkYmRiIikoIndrcyIpLGk9bigiNjJhMCIpLGE9bigiZTUzZCIpLlN5bWJvbCxvPSJmdW5jdGlvbiI9PXR5cGVvZiBhLGM9ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiByW2VdfHwocltlXT1vJiZhW2VdfHwobz9hOmkpKCJTeW1ib2wuIitlKSl9O2Muc3RvcmU9cn0sIjUyMGEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiMGJmYiIpLGk9UmVnRXhwLnByb3RvdHlwZS5leGVjLGE9U3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLG89aSxjPSJsYXN0SW5kZXgiLHM9ZnVuY3Rpb24oKXt2YXIgZT0vYS8sdD0vYiovZztyZXR1cm4gaS5jYWxsKGUsImEiKSxpLmNhbGwodCwiYSIpLDAhPT1lW2NdfHwwIT09dFtjXX0oKSxwPXZvaWQgMCE9PS8oKT8/Ly5leGVjKCIiKVsxXSxsPXN8fHA7bCYmKG89ZnVuY3Rpb24oZSl7dmFyIHQsbixvLGwsdT10aGlzO3JldHVybiBwJiYobj1uZXcgUmVnRXhwKCJeIit1LnNvdXJjZSsiJCg/IVxccykiLHIuY2FsbCh1KSkpLHMmJih0PXVbY10pLG89aS5jYWxsKHUsZSkscyYmbyYmKHVbY109dS5nbG9iYWw/by5pbmRleCtvWzBdLmxlbmd0aDp0KSxwJiZvJiZvLmxlbmd0aD4xJiZhLmNhbGwob1swXSxuLChmdW5jdGlvbigpe2ZvcihsPTE7bDxhcmd1bWVudHMubGVuZ3RoLTI7bCsrKXZvaWQgMD09PWFyZ3VtZW50c1tsXSYmKG9bbF09dm9pZCAwKX0pKSxvfSksZS5leHBvcnRzPW99LCI1MmE3IjpmdW5jdGlvbihlLHQpe3QuZj17fS5wcm9wZXJ0eUlzRW51bWVyYWJsZX0sNTMwOTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKTt2YXIgcj17Y3VzdG9tRWxlbWVudDp7c3JjOiJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9kb2N1bWVudC1yZWdpc3Rlci1lbGVtZW50LzEuMTEuMS9kb2N1bWVudC1yZWdpc3Rlci1lbGVtZW50LmpzIixpbnRlZ3JpdHk6InNoYTM4NC16QTZWNGNoWUZHZ3NlemgxeUFRenVzMlZOVWN5VHlHSTNOTzdMNXBFaUU4QU9YdjNFQytPUzJDLy83MlZVNk1nIn0sZmV0Y2g6e3NyYzoiaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvZmV0Y2gvMi4wLjQvZmV0Y2gubWluLmpzIixpbnRlZ3JpdHk6InNoYTM4NC0ya2t1cXdTQ0Z6ZTF5N1VjQWVqVUg2d3QyTXBRNG5hYSsreldQMFN4eVVDL2pud3E5MVNBZmUxNFJBcnVYdG5WIn0sY3NzdmFyOntzcmM6Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vY3NzLXZhcnMtcG9ueWZpbGxAMS4xNi4yIixpbnRlZ3JpdHk6InNoYTM4NC00c1ZWc3RHQVg1RUVIUXp4c2ZmMDVDZWRZNDZVVmpYT01jVTVlbHU5NHZ6dEc1Yk8yVlNBcTY5RDFaUEdQTDVFIn0sY29uZmV0dGk6e3NyYzoiaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9jYW52YXMtY29uZmV0dGlAMS45LjMvZGlzdC9jb25mZXR0aS5icm93c2VyLm1pbi5qcyIsaW50ZWdyaXR5OiJzaGEzODQtR3ZKMjRPN0Jwbjd6TG5rVHpLRndhUE8wVWN6MG5uSlJra24yeFMwK1NaOHZ1Q01Zbi9QakMvaCtXSWVobkdTTSJ9fX0sIjUzZTIiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIwN2UzIiksaT1uKCIyNDFlIiksYT1uKCI1NTU5IikoIklFX1BST1RPIiksbz1PYmplY3QucHJvdG90eXBlO2UuZXhwb3J0cz1PYmplY3QuZ2V0UHJvdG90eXBlT2Z8fGZ1bmN0aW9uKGUpe3JldHVybiBlPWkoZSkscihlLGEpP2VbYV06ImZ1bmN0aW9uIj09dHlwZW9mIGUuY29uc3RydWN0b3ImJmUgaW5zdGFuY2VvZiBlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IucHJvdG90eXBlOmUgaW5zdGFuY2VvZiBPYmplY3Q/bzpudWxsfX0sNTUzNzpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiODM3OCIpLGk9bigiNzcyNiIpLGE9Il9fY29yZS1qc19zaGFyZWRfXyIsbz1pW2FdfHwoaVthXT17fSk7KGUuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybiBvW2VdfHwob1tlXT12b2lkIDAhPT10P3Q6e30pfSkoInZlcnNpb25zIixbXSkucHVzaCh7dmVyc2lvbjpyLnZlcnNpb24sbW9kZTpuKCIyZDAwIik/InB1cmUiOiJnbG9iYWwiLGNvcHlyaWdodDoiwqkgMjAxOSBEZW5pcyBQdXNoa2FyZXYgKHpsb2lyb2NrLnJ1KSJ9KX0sNTU1OTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZGJkYiIpKCJrZXlzIiksaT1uKCI2MmEwIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiByW2VdfHwocltlXT1pKGUpKX19LCI1NjJlIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjQ2MDEiKSxpPW4oIjExNTMiKSxhPW4oIjhhYjUiKSxvPWEoIlN0cmluZy5wcm90b3R5cGUucmVwbGFjZSIpLGM9L15bXHgwOVx4MEFceDBCXHgwQ1x4MERceDIwXHhBMFx1MTY4MFx1MTgwRVx1MjAwMFx1MjAwMVx1MjAwMlx1MjAwM1x1MjAwNFx1MjAwNVx1MjAwNlx1MjAwN1x1MjAwOFx1MjAwOVx1MjAwQVx1MjAyRlx1MjA1Rlx1MzAwMFx1MjAyOFx1MjAyOVx1RkVGRl0rLyxzPS9bXHgwOVx4MEFceDBCXHgwQ1x4MERceDIwXHhBMFx1MTY4MFx1MTgwRVx1MjAwMFx1MjAwMVx1MjAwMlx1MjAwM1x1MjAwNFx1MjAwNVx1MjAwNlx1MjAwN1x1MjAwOFx1MjAwOVx1MjAwQVx1MjAyRlx1MjA1Rlx1MzAwMFx1MjAyOFx1MjAyOVx1RkVGRl0rJC87ZS5leHBvcnRzPWZ1bmN0aW9uKCl7dmFyIGU9aShyKHRoaXMpKTtyZXR1cm4gbyhvKGUsYywiIikscywiIil9fSw1NzU0OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiJNYXJra2luYS1hcnZvbiBzaWphIiwibWNhcCI6Ik1hcmtraW5hLWFydm8iLCIyNGhfdm9sdW1lIjoiMjR0IHZvbHl5bWkiLCIyNGhfaGlnaF9sb3ciOiIyNHQga29ya2VpbiAvIGFsaW4gaGludGEifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUGFsdmVsdW4gdGFyam9hYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJLcnlwdG9qZW4gaGlubmFudmVydGFpbHUiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiS3J5cHRvamVuIG1hcmtraW5hLWFydm9qZW4gdmVydGFpbHUifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQYWx2ZWx1biB0YXJqb2FhICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNHQgS29ya2VpbiIsIjI0aF9sb3ciOiIyNHQgQWxoYWlzaW4iLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiTsOkeXTDpCBrb2xpa29uICV7Y29pbn0gaGludGFrYWF2aW8iLCJwb3dlcmVkX2J5IjoiUGFsdmVsdW4gdGFyam9hYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBhbHZlbHVuIHRhcmpvYWEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQYWx2ZWx1biB0YXJqb2FhICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBhbHZlbHVuIHRhcmpvYWEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNHQgS29ya2VpbiIsIjI0aF9sb3ciOiIyNHQgQWxoYWlzaW4iLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiTsOkeXTDpCBrb2xpa29uICV7Y29pbn0gaGludGFrYWF2aW8iLCJwb3dlcmVkX2J5IjoiUGFsdmVsdW4gdGFyam9hYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fY29udmVydGVyX3dpZGdldCI6eyJ2aWV3X3ByaWNlX2NoYXJ0IjoiTsOkeXTDpCBrb2xpa29uICV7Y29pbn0gaGludGFrYWF2aW8iLCJwb3dlcmVkX2J5IjoiUGFsdmVsdW4gdGFyam9hYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiJLcnlwdG92YWx1dXR0b2plbiBwdXVrYWF2aW8iLCJzdWJ0aXRsZSI6IihQYXJoYWF0ICV7dG9wfSBtYXJra2luYS1hcnZvbiBtdWthYW4pIiwicG93ZXJlZF9ieSI6IlBhbHZlbHVuIHRhcmpvYWEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IlZhc3R1dXZhcGF1c2xhdXNla2U6IFTDpG3DpCB0ecO2a2FsdSBvbiB0YXJrb2l0ZXR0dSB2aWloZGVrw6R5dHTDtsO2biwgamEgc2VuIHNpc8OkbHTDtiBlaSBvbGUgdGFsb3VkZWxsaXN0YSBuZXV2b250YWEuIiwic3BpbiI6IlB5w7Zyw6R5dMOkIiwiYXZhaWxhYmxlX2NvaW5zIjoiU2FhdGF2aWxsYSBvbGV2YXQga29saWtvdCJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyBoaW5uYW5ww6Rpdml0eXMiLCJ0b3RhbF9tY2FwIjoiS29rb25haXNtYXJra2luYS1hcnZvIiwiMjRoX3ZvbCI6IjI0IHR1bm5pbiB2b2x5eW1pIiwiZG9tIjoiRG9taW5hbnNzaSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJLcnlwdG9ww7Zyc3NpIiwicGFpciI6IlBhcmkiLCJwcmljZSI6IkhpbnRhIiwidm9sdW1lIjoiVm9seXltaSIsInRydXN0X3Njb3JlIjoiVHJ1c3QgU2NvcmUiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiTsOkeXTDpCBoaW50YWthYXZpbyIsInBvd2VyZWRfYnkiOiJQYWx2ZWx1biB0YXJqb2FhICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJ2aWV3X2FsbCI6Ik7DpHl0w6Qga2Fpa2tpICV7Y29pbn0gbWFya2tpbmF0In19Jyl9LCI1ODRhIjpmdW5jdGlvbihlLHQpe3ZhciBuPWUuZXhwb3J0cz17dmVyc2lvbjoiMi42LjExIn07Im51bWJlciI9PXR5cGVvZiBfX2UmJihfX2U9bil9LCI1YjRlIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMzZjMyIpLGk9bigiYjQ0NyIpLGE9bigiMGZjOSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24odCxuLG8pe3ZhciBjLHM9cih0KSxwPWkocy5sZW5ndGgpLGw9YShvLHApO2lmKGUmJm4hPW4pe3doaWxlKHA+bClpZihjPXNbbCsrXSxjIT1jKXJldHVybiEwfWVsc2UgZm9yKDtwPmw7bCsrKWlmKChlfHxsIGluIHMpJiZzW2xdPT09bilyZXR1cm4gZXx8bHx8MDtyZXR1cm4hZSYmLTF9fX0sIjVjMjIiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5yKHQpO24oIjZiNTQiKTt2YXIgcj1uKCIyYjBlIiksaT1uKCJjODk0IiksYT1uKCI1MzA5Iiksbz1uKCJhZjE0IiksYz1uKCJjNjQ5Iikscz1uKCJkYTY4IikscD1uKCI2MWRhIiksbD1uLm4ocCk7clsiYSJdLnVzZShpWyJhIl0pO3ZhciB1PWZ1bmN0aW9uKCl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOntzaGFkb3c6ITF9O3JbImEiXS5jdXN0b21FbGVtZW50KCJjb2luZ2Vja28tY29pbi1wcmljZS1tYXJxdWVlLXdpZGdldCIsc1siYSJdLHtzaGFkb3c6ZS5zaGFkb3csc2hhZG93Q3NzOmwuYS50b1N0cmluZygpLGNvbm5lY3RlZENhbGxiYWNrOmZ1bmN0aW9uKCl7aWYoIWUuc2hhZG93KXt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3QuaW5uZXJIVE1MPWwuYS50b1N0cmluZygpLGRvY3VtZW50LmhlYWQuYXBwZW5kKHQpfX19KX07T2JqZWN0KG9bImEiXSkoKT91KHtzaGFkb3c6ITB9KTpPYmplY3QoY1siYyJdKShbYVsiYSJdLmN1c3RvbUVsZW1lbnQsYVsiYSJdLmZldGNoLGFbImEiXS5jc3N2YXJdKS50aGVuKChmdW5jdGlvbigpe3JldHVybiB1KHtzaGFkb3c6ITF9KX0pKX0sIjVjYTEiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI3NzI2IiksaT1uKCI4Mzc4IiksYT1uKCIzMmU5Iiksbz1uKCIyYWJhIiksYz1uKCI5YjQzIikscz0icHJvdG90eXBlIixwPWZ1bmN0aW9uKGUsdCxuKXt2YXIgbCx1LGQsXyxtPWUmcC5GLGY9ZSZwLkcsaD1lJnAuUyx2PWUmcC5QLHk9ZSZwLkIsZz1mP3I6aD9yW3RdfHwoclt0XT17fSk6KHJbdF18fHt9KVtzXSx3PWY/aTppW3RdfHwoaVt0XT17fSksYj13W3NdfHwod1tzXT17fSk7Zm9yKGwgaW4gZiYmKG49dCksbil1PSFtJiZnJiZ2b2lkIDAhPT1nW2xdLGQ9KHU/ZzpuKVtsXSxfPXkmJnU/YyhkLHIpOnYmJiJmdW5jdGlvbiI9PXR5cGVvZiBkP2MoRnVuY3Rpb24uY2FsbCxkKTpkLGcmJm8oZyxsLGQsZSZwLlUpLHdbbF0hPWQmJmEodyxsLF8pLHYmJmJbbF0hPWQmJihiW2xdPWQpfTtyLmNvcmU9aSxwLkY9MSxwLkc9MixwLlM9NCxwLlA9OCxwLkI9MTYscC5XPTMyLHAuVT02NCxwLlI9MTI4LGUuZXhwb3J0cz1wfSwiNWQ1OCI6ZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1uKCJkOGQ2Iil9LCI1ZDY3IjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiQ2xhc3NpZmljYcOnw6NvIGRhIGNhcGl0YWxpemHDp8OjbyBkZSBtZXJjYWRvIiwibWNhcCI6IkNhcGl0YWxpemHDp8OjbyBkZSBtZXJjYWRvIiwiMjRoX3ZvbHVtZSI6IlZvbHVtZSBlbSAyNCBIIiwiMjRoX2hpZ2hfbG93IjoiMjRIIEFsdGEvQmFpeGEifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiRGVzZW52b2x2aWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJDb21wYXJhw6fDo28gZGUgUHJlw6dvcyBkZSBDcmlwdG8iLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiQ29tcGFyYcOnw6NvIGRlIENhcGl0YWxpemHDp8OjbyBkZSBNZXJjYWRvIGRlIENyaXB0byJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRlc2Vudm9sdmlkbyBwb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6IkFsdGEgZGUgMjQgaCIsIjI0aF9sb3ciOiJCYWl4YSBkZSAyNCBoIiwidmlld19wcmljZV9jaGFydCI6IlZlciBHcsOhZmljbyBkZSBQcmXDp29zICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiRGVzZW52b2x2aWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRlc2Vudm9sdmlkbyBwb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEZXNlbnZvbHZpZG8gcG9yICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRlc2Vudm9sdmlkbyBwb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiJBbHRhIGRlIDI0IGgiLCIyNGhfbG93IjoiQmFpeGEgZGUgMjQgaCIsInZpZXdfcHJpY2VfY2hhcnQiOiJWZXIgR3LDoWZpY28gZGUgUHJlw6dvcyAle2NvaW59IiwicG93ZXJlZF9ieSI6IkRlc2Vudm9sdmlkbyBwb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZlciBHcsOhZmljbyBkZSBQcmXDp29zICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiRGVzZW52b2x2aWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiJNYXBhIGRlIMOhcnZvcmUgZGUgY3JpcHRvbW9lZGFzIiwic3VidGl0bGUiOiIoUHJpbmNpcGFpcyAle3RvcH0gTW9lZGFzIHBvciBDYXBpdGFsaXphw6fDo28gZGUgTWVyY2FkbykiLCJwb3dlcmVkX2J5IjoiRGVzZW52b2x2aWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiQXRlbsOnw6NvOiBFc3RhcyBmZXJyYW1lbnRhcyBzw6NvIHBhcmEgZmlucyBkZSBlbnRyZXRlbmltZW50byBlIG7Do28gY29uc3RpdHVlbSBjb25zZWxob3MgZmluYW5jZWlyb3MuIiwic3BpbiI6IkdpcmFyIiwiYXZhaWxhYmxlX2NvaW5zIjoiTW9lZGFzIERpc3BvbsOtdmVpcyJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkF0dWFsaXphw6fDo28gZG8gUHJlw6dvcyBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiQ2FwaXRhbGl6YcOnw6NvIFRvdGFsIGRlIE1lcmNhZG8iLCIyNGhfdm9sIjoiVm9sdW1lIGVtIDI0IGgiLCJkb20iOiJEb20ifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiQ8OibWJpbyIsInBhaXIiOiJQYXIiLCJwcmljZSI6IlByZcOnbyIsInZvbHVtZSI6IlZvbHVtZSIsInRydXN0X3Njb3JlIjoiUGxhY2FyIGRlIENvbmZpYW7Dp2EiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmVyIEdyw6FmaWNvIGRlIFByZcOnb3MiLCJwb3dlcmVkX2J5IjoiRGVzZW52b2x2aWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJWZXIgdG9kb3Mgb3MgbWVyY2Fkb3MgJXtjb2lufSJ9fScpfSwiNWRiYyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImQzZjQiKSxpPW4oIjhiOTciKS5zZXQ7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXt2YXIgYSxvPXQuY29uc3RydWN0b3I7cmV0dXJuIG8hPT1uJiYiZnVuY3Rpb24iPT10eXBlb2YgbyYmKGE9by5wcm90b3R5cGUpIT09bi5wcm90b3R5cGUmJnIoYSkmJmkmJmkoZSxhKSxlfX0sIjVkZjIiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI1Y2ExIiksaT1uKCJkNzUyIik7cihyLlMrci5GKihOdW1iZXIucGFyc2VGbG9hdCE9aSksIk51bWJlciIse3BhcnNlRmxvYXQ6aX0pfSwiNWRmMyI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCIwMmY0IikoITApO24oIjAxZjkiKShTdHJpbmcsIlN0cmluZyIsKGZ1bmN0aW9uKGUpe3RoaXMuX3Q9U3RyaW5nKGUpLHRoaXMuX2k9MH0pLChmdW5jdGlvbigpe3ZhciBlLHQ9dGhpcy5fdCxuPXRoaXMuX2k7cmV0dXJuIG4+PXQubGVuZ3RoP3t2YWx1ZTp2b2lkIDAsZG9uZTohMH06KGU9cih0LG4pLHRoaXMuX2krPWUubGVuZ3RoLHt2YWx1ZTplLGRvbmU6ITF9KX0pKX0sIjVlZGEiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI1Y2ExIiksaT1uKCI4Mzc4IiksYT1uKCI3OWU1Iik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dmFyIG49KGkuT2JqZWN0fHx7fSlbZV18fE9iamVjdFtlXSxvPXt9O29bZV09dChuKSxyKHIuUytyLkYqYSgoZnVuY3Rpb24oKXtuKDEpfSkpLCJPYmplY3QiLG8pfX0sIjVmMWIiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiMjNjNiIpLGk9UmVnRXhwLnByb3RvdHlwZS5leGVjO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuPWUuZXhlYztpZigiZnVuY3Rpb24iPT09dHlwZW9mIG4pe3ZhciBhPW4uY2FsbChlLHQpO2lmKCJvYmplY3QiIT09dHlwZW9mIGEpdGhyb3cgbmV3IFR5cGVFcnJvcigiUmVnRXhwIGV4ZWMgbWV0aG9kIHJldHVybmVkIHNvbWV0aGluZyBvdGhlciB0aGFuIGFuIE9iamVjdCBvciBudWxsIik7cmV0dXJuIGF9aWYoIlJlZ0V4cCIhPT1yKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIlJlZ0V4cCNleGVjIGNhbGxlZCBvbiBpbmNvbXBhdGlibGUgcmVjZWl2ZXIiKTtyZXR1cm4gaS5jYWxsKGUsdCl9fSw2MDQ1OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiJSaW5rb3Mga2FwaXRhbGl6YWNpam9zIHJlaXRpbmdhcyIsIm1jYXAiOiJSaW5rb3Mga2FwaXRhbGl6YWNpamEiLCIyNGhfdm9sdW1lIjoiMjQgdmFsLiBhcGltdGlzIiwiMjRoX2hpZ2hfbG93IjoiQXVrxaHEjWlhdXNpYSAvIG1hxb5pYXVzaWEgcGVyIDI0IHZhbC4ifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoixK5kaWVndGEgcGFnYWwgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiS3JpcHRvdmFsaXV0xbMga2FpbsWzIHBhbHlnaW5pbWFzIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IktyaXB0b3ZhbGl1dMWzIHJpbmtvcyB0YWxwb3MgcGFseWdpbmltYXMifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLErmRpZWd0YSBwYWdhbCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiRGlkxb5pYXVzaWEgcGVyIDI0IHZhbC4iLCIyNGhfbG93Ijoixb1lbWlhdXNpYSBwZXIgMjQgdmFsLiIsInZpZXdfcHJpY2VfY2hhcnQiOiJQZXLFvmnFq3LEl3RpICV7Y29pbn0gS2FpbsWzIGRpYWdyYW1hIiwicG93ZXJlZF9ieSI6IsSuZGllZ3RhIHBhZ2FsICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoixK5kaWVndGEgcGFnYWwgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLErmRpZWd0YSBwYWdhbCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLErmRpZWd0YSBwYWdhbCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IkRpZMW+aWF1c2lhIHBlciAyNCB2YWwuIiwiMjRoX2xvdyI6IsW9ZW1pYXVzaWEgcGVyIDI0IHZhbC4iLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiUGVyxb5pxatyxJd0aSAle2NvaW59IEthaW7FsyBkaWFncmFtYSIsInBvd2VyZWRfYnkiOiLErmRpZWd0YSBwYWdhbCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fY29udmVydGVyX3dpZGdldCI6eyJ2aWV3X3ByaWNlX2NoYXJ0IjoiUGVyxb5pxatyxJd0aSAle2NvaW59IEthaW7FsyBkaWFncmFtYSIsInBvd2VyZWRfYnkiOiLErmRpZWd0YSBwYWdhbCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiJLcmlwdG92YWxpdXTFsyBtZWRpcyIsInN1YnRpdGxlIjoiKFBvcHVsaWFyaWF1c2lvcyAgJXt0b3B9IHBhZ2FsIHJpbmtvcyBrYXBpdGFsaXphY2lqxIUpIiwicG93ZXJlZF9ieSI6IsSuZGllZ3RhIHBhZ2FsICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiJBdHNha29teWLEl3MgYXByaWJvamltYXM6IMWgaWUgxK9yYW5raWFpIHNraXJ0aSBwcmFtb2dhaSBpciBuxJdyYSBmaW5hbnNpbsSXcyBrb25zdWx0YWNpam9zLiIsInNwaW4iOiJTdWt0aSIsImF2YWlsYWJsZV9jb2lucyI6IlByaWVpbmFtb3MgbW9uZXRvcyJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyBLYWluxbMgQXRuYXVqaW5pbWFzIiwidG90YWxfbWNhcCI6IkJlbmRyYSBNIHJpYmEiLCIyNGhfdm9sIjoiQXBpbXRpcyBwZXIgMjQgdmFsLiIsImRvbSI6IkRvbWluYXZpbWFzIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IktlaXR5a2xhIiwicGFpciI6IlBvcmEiLCJwcmljZSI6IkthaW5hIiwidm9sdW1lIjoiQXBpbXRpcyIsInRydXN0X3Njb3JlIjoiUGFzaXRpa8SXamltbyBiYWxhcyIsInZpZXdfcHJpY2VfY2hhcnQiOiJQZXLFvmnFq3LEl3RpIEthaW7FsyBkaWFncmFtxIUiLCJwb3dlcmVkX2J5IjoixK5kaWVndGEgcGFnYWwgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiUGVyxb5pxatyxJd0aSB2aXNhcyAle2NvaW59IHJpbmthcyJ9fScpfSwiNjEzYiI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjU1MzciKSgia2V5cyIpLGk9bigiY2E1YSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gcltlXXx8KHJbZV09aShlKSl9fSwiNjFkYSI6ZnVuY3Rpb24oZSx0LG4pe3Q9ZS5leHBvcnRzPW4oIjI0ZmIiKSghMSksdC5pKG4oIjc1ZmMiKSwiIiksdC5wdXNoKFtlLmksIi5jZy1jb250YWluZXIge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXG4gIGNvbG9yOiAjNGM0YzRjO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgZm9udC1zaXplOiAxMnB4O1xuXG4gIG1pbi13aWR0aDogMzAwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4uY2ctY29udGFpbmVyW2RhdGEtbG9hZGluZ10gLmNnLXdpZGdldCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jZy1jb2luLXJvdzpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTQxLCAxOTgsIDcxLCAwLjIpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4uY2ctZXZlbi1yb3cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmZmY4O1xufVxuLmNnLWFycm93LXVwIHtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICM0Yjg4MDA7XG59XG5cbi5jZy1hcnJvdy1kb3duIHtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICNhMTFiMGE7XG59XG5cbi5jZy1mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTQxLCAxOTgsIDcxLCAwLjEpO1xufVxuXG4uY2ctd2lkZ2V0IHNlbGVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItY29sb3I6IHJnYigxNDEsIDE5OCwgNzEpO1xufVxuLmNnLXdpZGdldCBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzRjNGM0Yztcbn1cbi5jZy13aWRnZXQgYTpob3ZlciB7XG4gIGNvbG9yOiAjNGM0YzRjO1xufVxuXG4uY2ctY29pbi1yb3cgaW1nIHtcbiAgd2lkdGg6IDIycHg7XG59XG5cbi5jZy1tYXJxdWVlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNnLW1hcnF1ZWUtY29udGVudC0xIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDAlOyAvKiBzaG93IHRoZSBtYXJxdWVlIGp1c3Qgb3V0c2lkZSB0aGUgcGFyYWdyYXBoICovXG4gIGFuaW1hdGlvbjogbWFycXVlZSAzMHMgbGluZWFyIGluZmluaXRlO1xufVxuLmNnLW1hcnF1ZWUtY29udGVudC1sb25nIHtcbiAgYW5pbWF0aW9uOiBtYXJxdWVlIDEwMHMgbGluZWFyIGluZmluaXRlO1xufVxuXG4uY2ctbWFycXVlZS1jb250ZW50LTIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMCU7IC8qIHNob3cgdGhlIG1hcnF1ZWUganVzdCBvdXRzaWRlIHRoZSBwYXJhZ3JhcGggKi9cbiAgYW5pbWF0aW9uOiBtYXJxdWVlMiAzMHMgbGluZWFyIGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIG1hcnF1ZWUge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbWFycXVlZTIge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG59XG4iLCIiXSl9LCI2MjZhIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMmQ5NSIpO2UuZXhwb3J0cz1PYmplY3QoInoiKS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgwKT9PYmplY3Q6ZnVuY3Rpb24oZSl7cmV0dXJuIlN0cmluZyI9PXIoZSk/ZS5zcGxpdCgiIik6T2JqZWN0KGUpfX0sIjYyYTAiOmZ1bmN0aW9uKGUsdCl7dmFyIG49MCxyPU1hdGgucmFuZG9tKCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiJTeW1ib2woIi5jb25jYXQodm9pZCAwPT09ZT8iIjplLCIpXyIsKCsrbityKS50b1N0cmluZygzNikpfX0sIjYyZWEiOmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiLQoNC10LnRgtC40L3QsyDRgNC40L3QutC+0LLQvtGXINC60LDQv9GW0YLQsNC70ZbQt9Cw0YbRltGXIiwibWNhcCI6ItCg0LjQvdC60L7QstCwINC60LDQv9GW0YLQsNC70ZbQt9Cw0YbRltGPIiwiMjRoX3ZvbHVtZSI6ItCe0LHRgdGP0LMg0LfQsCAyNCDQs9C+0LTQuNC90LgiLCIyNGhfaGlnaF9sb3ciOiLQnNCw0LrRgS4v0LzRltC9LiDQt9CwIDI0INCz0L7QtNC40L3QuCJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLQn9GA0LDRhtGO0ZQg0L3QsCDQv9C70LDRgtGE0L7RgNC80ZYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoi0J/QvtGA0ZbQstC90Y/QvdC90Y8g0YbRltC9INC60YDQuNC/0YLQvtCy0LDQu9GO0YIiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoi0J/QvtGA0ZbQstC90Y/QvdC90Y8g0YDQuNC90LrQvtCy0L7RlyDQutCw0L/RltGC0LDQu9GW0LfQsNGG0ZbRlyDQutGA0LjQv9GC0L7QstCw0LvRjtGCIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/RgNCw0YbRjtGUINC90LAg0L/Qu9Cw0YLRhNC+0YDQvNGWICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiLQnNCw0LrRgdC40LzRg9C8INC30LAgMjQg0LPQvtC00LjQvdC4IiwiMjRoX2xvdyI6ItCc0ZbQvdGW0LzRg9C8INC30LAgMjQg0LPQvtC00LjQvdC4Iiwidmlld19wcmljZV9jaGFydCI6ItCf0LXRgNC10LPQu9GP0L3Rg9GC0Lgg0LPRgNCw0YTRltC6INGG0ZbQvdC4ICV7Y29pbn0iLCJwb3dlcmVkX2J5Ijoi0J/RgNCw0YbRjtGUINC90LAg0L/Qu9Cw0YLRhNC+0YDQvNGWICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/RgNCw0YbRjtGUINC90LAg0L/Qu9Cw0YLRhNC+0YDQvNGWICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/RgNCw0YbRjtGUINC90LAg0L/Qu9Cw0YLRhNC+0YDQvNGWICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6ItCf0YDQsNGG0Y7RlCDQvdCwINC/0LvQsNGC0YTQvtGA0LzRliAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6ItCc0LDQutGB0LjQvNGD0Lwg0LfQsCAyNCDQs9C+0LTQuNC90LgiLCIyNGhfbG93Ijoi0JzRltC90ZbQvNGD0Lwg0LfQsCAyNCDQs9C+0LTQuNC90LgiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi0J/QtdGA0LXQs9C70Y/QvdGD0YLQuCDQs9GA0LDRhNGW0Log0YbRltC90LggJXtjb2lufSIsInBvd2VyZWRfYnkiOiLQn9GA0LDRhtGO0ZQg0L3QsCDQv9C70LDRgtGE0L7RgNC80ZYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6ItCf0LXRgNC10LPQu9GP0L3Rg9GC0Lgg0LPRgNCw0YTRltC6INGG0ZbQvdC4ICV7Y29pbn0iLCJwb3dlcmVkX2J5Ijoi0J/RgNCw0YbRjtGUINC90LAg0L/Qu9Cw0YLRhNC+0YDQvNGWICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6ItCa0LDRgNGC0LAg0LTQtdGA0LXQstCwINC60YDQuNC/0YLQvtCy0LDQu9GO0YLQuCIsInN1YnRpdGxlIjoiKNCa0YDQsNGJ0ZYgJXt0b3B9INC30LAg0YDQuNC90LrQvtCy0L7RjiDQutCw0L/RltGC0LDQu9GW0LfQsNGG0ZbRlNGOKSIsInBvd2VyZWRfYnkiOiLQn9GA0LDRhtGO0ZQg0L3QsCDQv9C70LDRgtGE0L7RgNC80ZYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6ItCS0ZbQtNC80L7QstCwINCy0ZbQtCDQstGW0LTQv9C+0LLRltC00LDQu9GM0L3QvtGB0YLRljog0KbRliDRltC90YHRgtGA0YPQvNC10L3RgtC4INC00LDQvdGWINGP0Log0YDQvtC30LLQsNC20LDQu9GM0L3RliDQuSDQvdC1INGUINGE0ZbQvdCw0L3RgdC+0LLQuNC80Lgg0YDQtdC60L7QvNC10L3QtNCw0YbRltGP0LzQuC4iLCJzcGluIjoi0KHQv9GW0L0iLCJhdmFpbGFibGVfY29pbnMiOiLQlNC+0YHRgtGD0L/QvdGWINC80L7QvdC10YLQuCJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6ItCe0L3QvtCy0LvQtdC90L3RjyDRhtGW0L3QuCBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoi0JfQsNCz0LDQu9GM0L3QsCDRgNC40L0uINC60LDQvy4iLCIyNGhfdm9sIjoi0J7QsdGB0Y/QsyDRgtC+0YDQs9GW0LIg0LfQsCAyNCDQs9C+0LTQuNC90LgiLCJkb20iOiLQlNC+0LzRltC90YPQstCw0L3QvdGPIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6ItCR0ZbRgNC20LAiLCJwYWlyIjoi0J/QsNGA0LAiLCJwcmljZSI6ItCm0ZbQvdCwIiwidm9sdW1lIjoi0J7QsdGB0Y/QsyIsInRydXN0X3Njb3JlIjoi0J/QvtC60LDQt9C90LjQuiDQvdCw0LTRltC50L3QvtGB0YLRliIsInZpZXdfcHJpY2VfY2hhcnQiOiLQn9C10YDQtdCz0LvRj9C90YPRgtC4INCz0YDQsNGE0ZbQuiDRhtGW0L3QuCIsInBvd2VyZWRfYnkiOiLQn9GA0LDRhtGO0ZQg0L3QsCDQv9C70LDRgtGE0L7RgNC80ZYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoi0J/QtdGA0LXQs9C70Y/QvdGD0YLQuCDQstGB0ZYg0YDQuNC90LrQuCAle2NvaW59In19Jyl9LCI2M2I2IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZTUzZCIpLGk9bigiNTg0YSIpLGE9bigiZDg2NCIpLG89bigiMzVlOCIpLGM9bigiMDdlMyIpLHM9InByb3RvdHlwZSIscD1mdW5jdGlvbihlLHQsbil7dmFyIGwsdSxkLF89ZSZwLkYsbT1lJnAuRyxmPWUmcC5TLGg9ZSZwLlAsdj1lJnAuQix5PWUmcC5XLGc9bT9pOmlbdF18fChpW3RdPXt9KSx3PWdbc10sYj1tP3I6Zj9yW3RdOihyW3RdfHx7fSlbc107Zm9yKGwgaW4gbSYmKG49dCksbil1PSFfJiZiJiZ2b2lkIDAhPT1iW2xdLHUmJmMoZyxsKXx8KGQ9dT9iW2xdOm5bbF0sZ1tsXT1tJiYiZnVuY3Rpb24iIT10eXBlb2YgYltsXT9uW2xdOnYmJnU/YShkLHIpOnkmJmJbbF09PWQ/ZnVuY3Rpb24oZSl7dmFyIHQ9ZnVuY3Rpb24odCxuLHIpe2lmKHRoaXMgaW5zdGFuY2VvZiBlKXtzd2l0Y2goYXJndW1lbnRzLmxlbmd0aCl7Y2FzZSAwOnJldHVybiBuZXcgZTtjYXNlIDE6cmV0dXJuIG5ldyBlKHQpO2Nhc2UgMjpyZXR1cm4gbmV3IGUodCxuKX1yZXR1cm4gbmV3IGUodCxuLHIpfXJldHVybiBlLmFwcGx5KHRoaXMsYXJndW1lbnRzKX07cmV0dXJuIHRbc109ZVtzXSx0fShkKTpoJiYiZnVuY3Rpb24iPT10eXBlb2YgZD9hKEZ1bmN0aW9uLmNhbGwsZCk6ZCxoJiYoKGcudmlydHVhbHx8KGcudmlydHVhbD17fSkpW2xdPWQsZSZwLlImJncmJiF3W2xdJiZvKHcsbCxkKSkpfTtwLkY9MSxwLkc9MixwLlM9NCxwLlA9OCxwLkI9MTYscC5XPTMyLHAuVT02NCxwLlI9MTI4LGUuZXhwb3J0cz1wfSw2NzE4OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJlNTNkIiksaT1uKCI1ODRhIiksYT1uKCJiOGUzIiksbz1uKCJjY2I5IiksYz1uKCJkOWY2IikuZjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQ9aS5TeW1ib2x8fChpLlN5bWJvbD1hP3t9OnIuU3ltYm9sfHx7fSk7Il8iPT1lLmNoYXJBdCgwKXx8ZSBpbiB0fHxjKHQsZSx7dmFsdWU6by5mKGUpfSl9fSwiNjdiYiI6ZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1uKCJmOTIxIil9LDY4MjE6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjYyNmEiKSxpPW4oImJlMTMiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIHIoaShlKSl9fSwiNjg4ZSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj0iRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQgY2FsbGVkIG9uIGluY29tcGF0aWJsZSAiLGk9QXJyYXkucHJvdG90eXBlLnNsaWNlLGE9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxvPSJbb2JqZWN0IEZ1bmN0aW9uXSI7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7aWYoImZ1bmN0aW9uIiE9PXR5cGVvZiB0fHxhLmNhbGwodCkhPT1vKXRocm93IG5ldyBUeXBlRXJyb3Iocit0KTtmb3IodmFyIG4sYz1pLmNhbGwoYXJndW1lbnRzLDEpLHM9ZnVuY3Rpb24oKXtpZih0aGlzIGluc3RhbmNlb2Ygbil7dmFyIHI9dC5hcHBseSh0aGlzLGMuY29uY2F0KGkuY2FsbChhcmd1bWVudHMpKSk7cmV0dXJuIE9iamVjdChyKT09PXI/cjp0aGlzfXJldHVybiB0LmFwcGx5KGUsYy5jb25jYXQoaS5jYWxsKGFyZ3VtZW50cykpKX0scD1NYXRoLm1heCgwLHQubGVuZ3RoLWMubGVuZ3RoKSxsPVtdLHU9MDt1PHA7dSsrKWwucHVzaCgiJCIrdSk7aWYobj1GdW5jdGlvbigiYmluZGVyIiwicmV0dXJuIGZ1bmN0aW9uICgiK2wuam9pbigiLCIpKyIpeyByZXR1cm4gYmluZGVyLmFwcGx5KHRoaXMsYXJndW1lbnRzKTsgfSIpKHMpLHQucHJvdG90eXBlKXt2YXIgZD1mdW5jdGlvbigpe307ZC5wcm90b3R5cGU9dC5wcm90b3R5cGUsbi5wcm90b3R5cGU9bmV3IGQsZC5wcm90b3R5cGU9bnVsbH1yZXR1cm4gbn19LCI2OWE4IjpmdW5jdGlvbihlLHQpe3ZhciBuPXt9Lmhhc093blByb3BlcnR5O2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybiBuLmNhbGwoZSx0KX19LCI2OWQzIjpmdW5jdGlvbihlLHQsbil7bigiNjcxOCIpKCJhc3luY0l0ZXJhdG9yIil9LCI2YTk5IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDNmNCIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKCFyKGUpKXJldHVybiBlO3ZhciBuLGk7aWYodCYmImZ1bmN0aW9uIj09dHlwZW9mKG49ZS50b1N0cmluZykmJiFyKGk9bi5jYWxsKGUpKSlyZXR1cm4gaTtpZigiZnVuY3Rpb24iPT10eXBlb2Yobj1lLnZhbHVlT2YpJiYhcihpPW4uY2FsbChlKSkpcmV0dXJuIGk7aWYoIXQmJiJmdW5jdGlvbiI9PXR5cGVvZihuPWUudG9TdHJpbmcpJiYhcihpPW4uY2FsbChlKSkpcmV0dXJuIGk7dGhyb3cgVHlwZUVycm9yKCJDYW4ndCBjb252ZXJ0IG9iamVjdCB0byBwcmltaXRpdmUgdmFsdWUiKX19LCI2YWJmIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZTZmMyIpLGk9bigiMTY5MSIpLmNvbmNhdCgibGVuZ3RoIiwicHJvdG90eXBlIik7dC5mPU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzfHxmdW5jdGlvbihlKXtyZXR1cm4gcihlLGkpfX0sIjZiNGMiOmZ1bmN0aW9uKGUsdCl7dmFyIG49e30udG9TdHJpbmc7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBuLmNhbGwoZSkuc2xpY2UoOCwtMSl9fSwiNmI1NCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCIzODQ2Iik7dmFyIHI9bigiY2I3YyIpLGk9bigiMGJmYiIpLGE9bigiOWUxZSIpLG89InRvU3RyaW5nIixjPS8uL1tvXSxzPWZ1bmN0aW9uKGUpe24oIjJhYmEiKShSZWdFeHAucHJvdG90eXBlLG8sZSwhMCl9O24oIjc5ZTUiKSgoZnVuY3Rpb24oKXtyZXR1cm4iL2EvYiIhPWMuY2FsbCh7c291cmNlOiJhIixmbGFnczoiYiJ9KX0pKT9zKChmdW5jdGlvbigpe3ZhciBlPXIodGhpcyk7cmV0dXJuIi8iLmNvbmNhdChlLnNvdXJjZSwiLyIsImZsYWdzImluIGU/ZS5mbGFnczohYSYmZSBpbnN0YW5jZW9mIFJlZ0V4cD9pLmNhbGwoZSk6dm9pZCAwKX0pKTpjLm5hbWUhPW8mJnMoKGZ1bmN0aW9uKCl7cmV0dXJuIGMuY2FsbCh0aGlzKX0pKX0sIjZjMWMiOmZ1bmN0aW9uKGUsdCxuKXtuKCJjMzY3Iik7Zm9yKHZhciByPW4oImU1M2QiKSxpPW4oIjM1ZTgiKSxhPW4oIjQ4MWIiKSxvPW4oIjUxNjgiKSgidG9TdHJpbmdUYWciKSxjPSJDU1NSdWxlTGlzdCxDU1NTdHlsZURlY2xhcmF0aW9uLENTU1ZhbHVlTGlzdCxDbGllbnRSZWN0TGlzdCxET01SZWN0TGlzdCxET01TdHJpbmdMaXN0LERPTVRva2VuTGlzdCxEYXRhVHJhbnNmZXJJdGVtTGlzdCxGaWxlTGlzdCxIVE1MQWxsQ29sbGVjdGlvbixIVE1MQ29sbGVjdGlvbixIVE1MRm9ybUVsZW1lbnQsSFRNTFNlbGVjdEVsZW1lbnQsTWVkaWFMaXN0LE1pbWVUeXBlQXJyYXksTmFtZWROb2RlTWFwLE5vZGVMaXN0LFBhaW50UmVxdWVzdExpc3QsUGx1Z2luLFBsdWdpbkFycmF5LFNWR0xlbmd0aExpc3QsU1ZHTnVtYmVyTGlzdCxTVkdQYXRoU2VnTGlzdCxTVkdQb2ludExpc3QsU1ZHU3RyaW5nTGlzdCxTVkdUcmFuc2Zvcm1MaXN0LFNvdXJjZUJ1ZmZlckxpc3QsU3R5bGVTaGVldExpc3QsVGV4dFRyYWNrQ3VlTGlzdCxUZXh0VHJhY2tMaXN0LFRvdWNoTGlzdCIuc3BsaXQoIiwiKSxzPTA7czxjLmxlbmd0aDtzKyspe3ZhciBwPWNbc10sbD1yW3BdLHU9bCYmbC5wcm90b3R5cGU7dSYmIXVbb10mJmkodSxvLHApLGFbcF09YS5BcnJheX19LCI2Y2UyIjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiTWFya3RrYXBpdGFsaXNpZXJ1bmdzcmFuZyIsIm1jYXAiOiJNYXJrdGthcGl0YWxpc2llcnVuZyIsIjI0aF92b2x1bWUiOiIyNC1TdHVuZGVuIFZvbHVtZW4iLCIyNGhfaGlnaF9sb3ciOiIyNC1TdHVuZGVuLUhvY2gvLVRpZWYifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVW50ZXJzdMO8dHp0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJLcnlwdG8tS3Vyc3ZlcmdsZWljaCIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiJLcnlwdG8tTWFya3RrYXBpdGFsaXNpZXJ1bmdzdmVyZ2xlaWNoIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVW50ZXJzdMO8dHp0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjQtU3R1bmRlbi1Ib2NoIiwiMjRoX2xvdyI6IjI0LVN0dW5kZW4tVGllZiIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IEt1cnNkaWFncmFtbSBhbnplaWdlbiIsInBvd2VyZWRfYnkiOiJVbnRlcnN0w7x0enQgdm9uICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVW50ZXJzdMO8dHp0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlVudGVyc3TDvHR6dCB2b24gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVW50ZXJzdMO8dHp0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0LVN0dW5kZW4tSG9jaCIsIjI0aF9sb3ciOiIyNC1TdHVuZGVuLVRpZWYiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiJXtjb2lufSBLdXJzZGlhZ3JhbW0gYW56ZWlnZW4iLCJwb3dlcmVkX2J5IjoiVW50ZXJzdMO8dHp0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fY29udmVydGVyX3dpZGdldCI6eyJ2aWV3X3ByaWNlX2NoYXJ0IjoiJXtjb2lufSBLdXJzZGlhZ3JhbW0gYW56ZWlnZW4iLCJwb3dlcmVkX2J5IjoiVW50ZXJzdMO8dHp0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiJLcnlwdG93w6RocnVuZ3MtVHJlZS1NYXAiLCJzdWJ0aXRsZSI6IihUb3AtJXt0b3B9IG5hY2ggTWFya3RrYXBpdGFsaXNpZXJ1bmcpIiwicG93ZXJlZF9ieSI6IlVudGVyc3TDvHR6dCB2b24gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IkRpc2NsYWltZXI6IERpZXNlIFdlcmt6ZXVnZSBkaWVuZW4gYWxzIFVudGVyaGFsdHVuZyB1bmQgc3RlbGxlbiBrZWluZSBmaW5hbnppZWxsZSBCZXJhdHVuZyBkYXIuIiwic3BpbiI6IkRyZWhlbiIsImF2YWlsYWJsZV9jb2lucyI6IlZlcmbDvGdiYXJlIENvaW5zIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiQ29pbkdlY2tvIEt1cnNha3R1YWxpc2llcnVuZyIsInRvdGFsX21jYXAiOiJNYXJrdGthcGl0YWxpc2llcnVuZyBpbnNnZXNhbXQiLCIyNGhfdm9sIjoiMjQtU3R1bmRlbi1Wb2x1bWVuIiwiZG9tIjoiRG9taW5hbnoifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiQsO2cnNlIiwicGFpciI6IlBhYXIiLCJwcmljZSI6Ikt1cnMiLCJ2b2x1bWUiOiJWb2x1bWVuIiwidHJ1c3Rfc2NvcmUiOiJWZXJ0cmF1ZW5zd2VydCIsInZpZXdfcHJpY2VfY2hhcnQiOiIgS3Vyc2RpYWdyYW1tIGFuemVpZ2VuIiwicG93ZXJlZF9ieSI6IlVudGVyc3TDvHR6dCB2b24gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiQWxsZSAle2NvaW59LU3DpHJrdGUgYW56ZWlnZW4ifX0nKX0sIjcxYzEiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIzYTM4IiksaT1uKCIyNWViIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0LG4pe3ZhciBhLG8sYz1TdHJpbmcoaSh0KSkscz1yKG4pLHA9Yy5sZW5ndGg7cmV0dXJuIHM8MHx8cz49cD9lPyIiOnZvaWQgMDooYT1jLmNoYXJDb2RlQXQocyksYTw1NTI5Nnx8YT41NjMxOXx8cysxPT09cHx8KG89Yy5jaGFyQ29kZUF0KHMrMSkpPDU2MzIwfHxvPjU3MzQzP2U/Yy5jaGFyQXQocyk6YTplP2Muc2xpY2UocyxzKzIpOm8tNTYzMjArKGEtNTUyOTY8PDEwKSs2NTUzNil9fX0sNzUxNDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjVjYTEiKSxpPW4oIjBhNDkiKSg1KSxhPSJmaW5kIixvPSEwO2EgaW5bXSYmQXJyYXkoMSlbYV0oKGZ1bmN0aW9uKCl7bz0hMX0pKSxyKHIuUCtyLkYqbywiQXJyYXkiLHtmaW5kOmZ1bmN0aW9uKGUpe3JldHVybiBpKHRoaXMsZSxhcmd1bWVudHMubGVuZ3RoPjE/YXJndW1lbnRzWzFdOnZvaWQgMCl9fSksbigiOWM2YyIpKGEpfSwiNzVmYyI6ZnVuY3Rpb24oZSx0LG4pe3Q9ZS5leHBvcnRzPW4oIjI0ZmIiKSghMSksdC5wdXNoKFtlLmksIi5jZy1kZWZhdWx0IHtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgc2Vnb2UgdWksIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYsXG4gICAgYXBwbGUgY29sb3IgZW1vamksIHNlZ29lIHVpIGVtb2ppLCBzZWdvZSB1aSBzeW1ib2w7XG59XG4uY2ctYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uY2ctY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmNnLXByaW1hcnktY29sb3Ige1xuICBjb2xvcjogIzhkYzY0NyAhaW1wb3J0YW50O1xufVxuLmNnLXByaW1hcnktY29sb3ItZGFyayB7XG4gIGNvbG9yOiAjNGI4ODAwICFpbXBvcnRhbnQ7XG59XG4uY2ctcmVkLWNvbG9yLWRhcmsge1xuICBjb2xvcjogI2MyMjIwZCAhaW1wb3J0YW50O1xufVxuLmNnLXJlZC1jb2xvciB7XG4gIGNvbG9yOiAjZmY2MTRkICFpbXBvcnRhbnQ7XG59XG4uY2ctMnhzIHtcbiAgZm9udC1zaXplOiA4LjhweDsgLyogMC41NXJlbTsgKi9cbn1cbi5jZy14cyB7XG4gIGZvbnQtc2l6ZTogMTAuNHB4OyAvKiAwLjY1cmVtICovXG59XG4uY2ctc20ge1xuICBmb250LXNpemU6IDEyLjhweDsgLyogMC44cmVtICovXG59XG4uY2ctbm9ybWFsIHtcbiAgZm9udC1zaXplOiAxMy42cHg7IC8qIDAuODVyZW0gKi9cbn1cbi5jZy1iYXNlIHtcbiAgZm9udC1zaXplOiAxNnB4OyAvKiAxNnB4ICovXG59XG4uY2ctbWVkaXVtIHtcbiAgZm9udC1zaXplOiAxOS4ycHg7IC8qIDEuMnJlbSAqL1xufVxuLmNnLWxnIHtcbiAgZm9udC1zaXplOiAyNHB4OyAvKiAxLjVyZW0gKi9cbn1cbi5jZy14bCB7XG4gIGZvbnQtc2l6ZTogMzAuNHB4OyAvKiAxLjlyZW0gKi9cbn1cbi5jZy1jYXAge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cbi5jZy1uby11bmRlcmxpbmUge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uY2ctbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmNnLW0tMCB7XG4gIG1hcmdpbjogMDtcbn1cbi5jZy1tLTEge1xuICBtYXJnaW46IDRweDtcbn1cbi5jZy1tLTIge1xuICBtYXJnaW46IDhweDtcbn1cbi5jZy1tdC0xIHtcbiAgbWFyZ2luLXRvcDogNHB4O1xufVxuLmNnLW1iLTEge1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG59XG4uY2ctbWwtMSB7XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG59XG4uY2ctbXItMSB7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuLmNnLW10LTIge1xuICBtYXJnaW4tdG9wOiA4cHg7XG59XG4uY2ctbWwtMiB7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG59XG4uY2ctbXItMiB7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuLmNnLW1iLTIge1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG4uY2ctbXgtMSB7XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuLmNnLW15LTEge1xuICBtYXJnaW4tdG9wOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cbi5jZy1teC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG4uY2ctbXktMiB7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuLmNnLW15LTUge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uY2ctcC0xIHtcbiAgcGFkZGluZzogNHB4O1xufVxuLmNnLXAtMiB7XG4gIHBhZGRpbmc6IDhweDtcbn1cbi5jZy1wLTMge1xuICBwYWRkaW5nOiAxMnB4O1xufVxuLmNnLXAtNCB7XG4gIHBhZGRpbmc6IDE2cHg7XG59XG4uY2ctcHQtMSB7XG4gIHBhZGRpbmctdG9wOiA0cHg7XG59XG4uY2ctcGItMSB7XG4gIHBhZGRpbmctYm90dG9tOiA0cHg7XG59XG4uY2ctcHQtMiB7XG4gIHBhZGRpbmctdG9wOiA4cHg7XG59XG4uY2ctcGItMiB7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG59XG4uY2ctcHQtMyB7XG4gIHBhZGRpbmctdG9wOiAxMnB4O1xufVxuLmNnLXBiLTMge1xuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbn1cbi5jZy1weS0xIHtcbiAgcGFkZGluZy10b3A6IDRweDtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbn1cbi5jZy1weC0xIHtcbiAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDRweDtcbn1cbi5jZy1weS0yIHtcbiAgcGFkZGluZy10b3A6IDhweDtcbiAgcGFkZGluZy1ib3R0b206IDhweDtcbn1cbi5jZy1weC0yIHtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbn1cbi5jZy1weS0zIHtcbiAgcGFkZGluZy10b3A6IDEycHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xufVxuLmNnLXB4LTMge1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG59XG4uY2ctcHgtNCB7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cbi5jZy1weS00IHtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xufVxuLmNnLXB5LTUge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG4uY2ctcHItMSB7XG4gIHBhZGRpbmctcmlnaHQ6IDRweDtcbn1cbi5jZy1wci0yIHtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xufVxuXG4uY2ctZmxleCB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbn1cbi5jZy1mbGV4LXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG4uY2ctZmxleC1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uY2ctaXRlbXMtc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0cmV0Y2g7XG59XG4uY2ctaXRlbXMtc3RhcnQge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5jZy1pdGVtcy1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmNnLWl0ZW1zLWVuZCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cbi5jZy1pdGVtcy1iYXNlbGluZSB7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbn1cblxuLmNnLWp1c3RpZnktc3RhcnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4uY2ctanVzdGlmeS1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5jZy1qdXN0aWZ5LWVuZCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4uY2ctanVzdGlmeS1iZXR3ZWVuIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuLmNnLWp1c3RpZnktYXJvdW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG59XG5cbi5jZy1zZWxmLWF1dG8ge1xuICBhbGlnbi1zZWxmOiBhdXRvO1xufVxuLmNnLXNlbGYtc3RhcnQge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuLmNnLXNlbGYtY2VudGVyIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuLmNnLXNlbGYtZW5kIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG59XG4uY2ctc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLmNnLXJlbGF0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmNnLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLmNnLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iLCIiXSl9LDc2MTg6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGN9KSk7dmFyIHI9bigiNWQ1OCIpLGk9bi5uKHIpLGE9bigiNjdiYiIpLG89bi5uKGEpO2Z1bmN0aW9uIGMoZSl7cmV0dXJuIGM9ImZ1bmN0aW9uIj09PXR5cGVvZiBvLmEmJiJzeW1ib2wiPT09dHlwZW9mIGkuYT9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT09dHlwZW9mIG8uYSYmZS5jb25zdHJ1Y3Rvcj09PW8uYSYmZSE9PW8uYS5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIGV9LGMoZSl9fSwiNzY1ZCI6ZnVuY3Rpb24oZSx0LG4pe24oIjY3MTgiKSgib2JzZXJ2YWJsZSIpfSw3NzA0OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiLQn9C+0LfQuNGG0LjRjyDQsiDRgNC10LnRgtC40L3Qs9C1INC/0L4g0YDRi9C90L7Rh9C90L7QuSDQutCw0L/QuNGC0LDQu9C40LfQsNGG0LjQuCIsIm1jYXAiOiLQoNGL0L3QvtGH0L3QsNGPINC60LDQv9C40YLQsNC70LjQt9Cw0YbQuNGPIiwiMjRoX3ZvbHVtZSI6ItCe0LHRitC10Lwg0LfQsCAyNCDRh9Cw0YHQsCIsIjI0aF9oaWdoX2xvdyI6ItCc0LDQutGBLi/QvNC40L0uINC30LAgMjQg0YfQsNGB0LAifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/RgNC4INC/0L7QtNC00LXRgNC20LrQtSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiLQodGA0LDQstC90LXQvdC40LUg0YbQtdC9INC60YDQuNC/0YLQvtCy0LDQu9GO0YIiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoi0KHRgNCw0LLQvdC10L3QuNC1INGA0YvQvdC+0YfQvdC+0Lkg0LrQsNC/0LjRgtCw0LvQuNC30LDRhtC40Lgg0LrRgNC40L/RgtC+0LLQsNC70Y7RgiJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6ItCf0YDQuCDQv9C+0LTQtNC10YDQttC60LUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6ItCc0LDQutGBLiDQt9CwIDI0INGH0LDRgdCwIiwiMjRoX2xvdyI6ItCc0LjQvS4g0LfQsCAyNMKg0YfQsNGB0LAiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi0J/QvtGB0LzQvtGC0YDQtdGC0Ywg0LPRgNCw0YTQuNC6INGG0LXQvSAle2NvaW59IiwicG93ZXJlZF9ieSI6ItCf0YDQuCDQv9C+0LTQtNC10YDQttC60LUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLQn9GA0Lgg0L/QvtC00LTQtdGA0LbQutC1ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/RgNC4INC/0L7QtNC00LXRgNC20LrQtSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLQn9GA0Lgg0L/QvtC00LTQtdGA0LbQutC1ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoi0JzQsNC60YEuINC30LAgMjTCoNGH0LDRgdCwIiwiMjRoX2xvdyI6ItCc0LjQvS4g0LfQsCAyNMKg0YfQsNGB0LAiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi0J/QvtGB0LzQvtGC0YDQtdGC0Ywg0LPRgNCw0YTQuNC6INGG0LXQvSAle2NvaW59IiwicG93ZXJlZF9ieSI6ItCf0YDQuCDQv9C+0LTQtNC10YDQttC60LUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6ItCf0L7RgdC80L7RgtGA0LXRgtGMINCz0YDQsNGE0LjQuiDRhtC10L0gJXtjb2lufSIsInBvd2VyZWRfYnkiOiLQn9GA0Lgg0L/QvtC00LTQtdGA0LbQutC1ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6ItCa0LDRgNGC0LAg0LTQtdGA0LXQstCwINC60YDQuNC/0YLQvtCy0LDQu9GO0YIiLCJzdWJ0aXRsZSI6IijQm9GD0YfRiNC40LUg0LzQvtC90LXRgtGLICV7dG9wfSDQv9C+INGA0YvQvdC+0YfQvdC+0Lkg0LrQsNC/0LjRgtCw0LvQuNC30LDRhtC40LgpIiwicG93ZXJlZF9ieSI6ItCf0YDQuCDQv9C+0LTQtNC10YDQttC60LUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6ItCe0YLQutCw0Lcg0L7RgiDQvtGC0LLQtdGC0YHRgtCy0LXQvdC90L7RgdGC0Lg6INCt0YLQuCDQuNC90YHRgtGA0YPQvNC10L3RgtGLINC00LDQvdGLINCyINC60LDRh9C10YHRgtCy0LUg0YDQsNC30LLQu9C10LrQsNGC0LXQu9GM0L3Ri9GFINC4INC90LUg0Y/QstC70Y/RjtGC0YHRjyDRhNC40L3QsNC90YHQvtCy0YvQvNC4INGA0LXQutC+0LzQtdC90LTQsNGG0LjRj9C80LguIiwic3BpbiI6ItCh0L/QuNC9IiwiYXZhaWxhYmxlX2NvaW5zIjoi0JTQvtGB0YLRg9C/0L3Ri9C1INC80L7QvdC10YLRiyJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6ItCe0LHQvdC+0LLQu9C10L3QuNC1INGG0LXQvdGLIENvaW5HZWNrbyIsInRvdGFsX21jYXAiOiLQoNGL0L0u0LrQsNC/LiDQstGB0LXQs9C+IiwiMjRoX3ZvbCI6ItCe0LHRitC10Lwg0YLQvtGA0LPQvtCyINC30LAgMjQg0YfQsNGB0LAiLCJkb20iOiLQlNC+0LzQuNC90LjRgNC+0LLQsNC90LjQtSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiLQkdC40YDQttCwIiwicGFpciI6ItCf0LDRgNCwIiwicHJpY2UiOiLQptC10L3QsCIsInZvbHVtZSI6ItCe0LHQvtGA0L7RgiIsInRydXN0X3Njb3JlIjoi0J/QvtC60LDQt9Cw0YLQtdC70Ywg0L3QsNC00LXQttC90L7RgdGC0LgiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi0J/QvtGB0LzQvtGC0YDQtdGC0Ywg0LPRgNCw0YTQuNC6INGG0LXQvSIsInBvd2VyZWRfYnkiOiLQn9GA0Lgg0L/QvtC00LTQtdGA0LbQutC1ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJ2aWV3X2FsbCI6ItCf0L7RgdC80L7RgtGA0LXRgtGMINCy0YHQtSDRgNGL0L3QutC4ICV7Y29pbn0ifX0nKX0sNzcyNjpmdW5jdGlvbihlLHQpe3ZhciBuPWUuZXhwb3J0cz0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmd2luZG93Lk1hdGg9PU1hdGg/d2luZG93OiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZi5NYXRoPT1NYXRoP3NlbGY6RnVuY3Rpb24oInJldHVybiB0aGlzIikoKTsibnVtYmVyIj09dHlwZW9mIF9fZyYmKF9fZz1uKX0sIjc3ZjEiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI0NTg4IiksaT1NYXRoLm1heCxhPU1hdGgubWluO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybiBlPXIoZSksZTwwP2koZSt0LDApOmEoZSx0KX19LCI3OTRiIjpmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPSFuKCI4ZTYwIikmJiFuKCIyOTRjIikoKGZ1bmN0aW9uKCl7cmV0dXJuIDchPU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuKCIxZWM5IikoImRpdiIpLCJhIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDd9fSkuYX0pKX0sIjc5YWEiOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IFR5cGVFcnJvcihlKyIgaXMgbm90IGEgZnVuY3Rpb24hIik7cmV0dXJuIGV9fSwiNzllNSI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dHJ5e3JldHVybiEhZSgpfWNhdGNoKHQpe3JldHVybiEwfX19LCI3YTAzIjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoi4KSu4KS+4KSw4KWN4KSV4KWH4KSfIOCkleCliOCkqiDgpLDgpYjgpILgpJUiLCJtY2FwIjoi4KSu4KS+4KSw4KWN4KSV4KWH4KSfIOCkleCliOCkqiIsIjI0aF92b2x1bWUiOiIyNOCkmOCkgiDgpJXgpL4g4KS14KS+4KSy4KWN4KSv4KWC4KSuIiwiMjRoX2hpZ2hfbG93IjoiMjTgpJjgpIIg4KSV4KS+IOCkueCkvuCkiC/gpLLgpYsifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDgpKbgpY3gpLXgpL7gpLDgpL4g4KS44KSC4KSa4KS+4KSy4KS/4KSkIiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiLgpJXgpY3gpLDgpL/gpKrgpY3gpJ/gpYsg4KSq4KWN4KSw4KS+4KSH4KS4IOCkleClgCDgpKTgpYHgpLLgpKjgpL4iLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoi4KSV4KWN4KSw4KS/4KSq4KWN4KSf4KWLIOCkruCkvuCksOCljeCkleClh+CknyDgpJXgpYjgpKog4KSV4KWAIOCkpOClgeCksuCkqOCkviJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g4KSm4KWN4KS14KS+4KSw4KS+IOCkuOCkguCkmuCkvuCksuCkv+CkpCJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6IjI04KSY4KSCIOCkleCkviDgpLngpL7gpIgiLCIyNGhfbG93IjoiMjTgpJjgpIIg4KSV4KS+IOCksuCliyIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IOCkleCkviDgpKrgpY3gpLDgpL7gpIfgpLgg4KSa4KS+4KSw4KWN4KSfIOCkpuClh+CkluClh+CkgiIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOCkpuCljeCkteCkvuCksOCkviDgpLjgpILgpJrgpL7gpLLgpL/gpKQifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDgpKbgpY3gpLXgpL7gpLDgpL4g4KS44KSC4KSa4KS+4KSy4KS/4KSkIn0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g4KSm4KWN4KS14KS+4KSw4KS+IOCkuOCkguCkmuCkvuCksuCkv+CkpCJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDgpKbgpY3gpLXgpL7gpLDgpL4g4KS44KSC4KSa4KS+4KSy4KS/4KSkIn0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI04KSY4KSCIOCkleCkviDgpLngpL7gpIgiLCIyNGhfbG93IjoiMjTgpJjgpIIg4KSV4KS+IOCksuCliyIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IOCkleCkviDgpKrgpY3gpLDgpL7gpIfgpLgg4KSa4KS+4KSw4KWN4KSfIOCkpuClh+CkluClh+CkgiIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOCkpuCljeCkteCkvuCksOCkviDgpLjgpILgpJrgpL7gpLLgpL/gpKQifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IOCkleCkviDgpKrgpY3gpLDgpL7gpIfgpLgg4KSa4KS+4KSw4KWN4KSfIOCkpuClh+CkluClh+CkgiIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOCkpuCljeCkteCkvuCksOCkviDgpLjgpILgpJrgpL7gpLLgpL/gpKQifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IuCkleCljeCksOCkv+CkquCljeCkn+Cli+CkleCksOCkguCkuOClgCDgpJ/gpY3gpLDgpYAg4KSu4KWI4KSqIiwic3VidGl0bGUiOiIo4KSu4KS+4KSw4KWN4KSV4KWH4KSfIOCkleCliOCkqiDgpJXgpYcg4KSG4KSn4KS+4KSwIOCkquCksCDgpJ/gpYngpKogJXt0b3B9KSIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOCkpuCljeCkteCkvuCksOCkviDgpLjgpILgpJrgpL7gpLLgpL/gpKQifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLgpKHgpL/gpLjgpY3gpJXgpY3gpLLgpYfgpK7gpLA6IOCkr+CkuSDgpK7gpKjgpYvgpLDgpILgpJzgpKgg4KSV4KSw4KSo4KWHIOCkleClhyDgpLLgpL/gpI8g4KSV4KS+4KSuIOCkleCksOCkpOCkviDgpLngpYgg4KSU4KSwIOCkh+CkuOCkruClh+CkgiDgpJXgpYvgpIgg4KSG4KSw4KWN4KSl4KS/4KSVIOCkuOCksuCkvuCkuSDgpKjgpLngpYDgpIIg4KSm4KWAIOCknOCkvuCkpOClgCDgpLngpYjgpaQiLCJzcGluIjoi4KS44KWN4KSq4KS/4KSoIOCkleCksOClh+CkgiIsImF2YWlsYWJsZV9jb2lucyI6IuCkruCljOCknOClguCkpiDgpJXgpYngpIfgpKgifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiJDb2luR2Vja28g4KSq4KWN4KSw4KS+4KSH4KS4IOCkheCkquCkoeClh+CknyIsInRvdGFsX21jYXAiOiLgpJXgpYHgpLIg4KSu4KS+4KSw4KWN4KSV4KWH4KSfIOCkleCliOCkqiIsIjI0aF92b2wiOiIyNOCkmOCkguCkn+ClhyDgpJXgpL4g4KS14KS+4KSy4KWN4KSv4KWC4KSuIiwiZG9tIjoi4KS14KSw4KWN4KSa4KS44KWN4KS1In0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IuCkj+CkleCljeCkuOCkmuClh+CkguCknCIsInBhaXIiOiLgpKrgpYfgpK/gpLAiLCJwcmljZSI6IuCkquCljeCksOCkvuCkh+CkuCIsInZvbHVtZSI6IuCkteCkvuCksuCljeCkr+ClguCkriIsInRydXN0X3Njb3JlIjoi4KSf4KWN4KSw4KS44KWN4KSfIOCkuOCljeCkleCli+CksCIsInZpZXdfcHJpY2VfY2hhcnQiOiLgpKrgpY3gpLDgpL7gpIfgpLgg4KSa4KS+4KSw4KWN4KSfIOCkpuClh+CkleClh+CkgiIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOCkpuCljeCkteCkvuCksOCkviDgpLjgpILgpJrgpL7gpLLgpL/gpKQiLCJ2aWV3X2FsbCI6IuCkuOCkreClgCAle2NvaW59IOCkruCkvuCksOCljeCkleClh+Ckn+Cli+CkgiDgpJXgpYsg4KSm4KWH4KSW4KWH4KSCIn19Jyl9LCI3ZGFiIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gaX0pKSxuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGF9KSk7bigiYWM2YSIpLG4oIjQ1NmQiKTt2YXIgcj17QlRDOiEwLEVUSDohMCxVU0Q6ITAsQUVEOiEwLEFSUzohMCxBVUQ6ITAsQlJMOiEwLENBRDohMCxDSEY6ITAsQ0xQOiEwLENOWTohMCxDWks6ITAsREtLOiEwLEVVUjohMCxHQlA6ITAsSEtEOiEwLEhVRjohMCxJRFI6ITAsSUxTOiEwLElOUjohMCxKUFk6ITAsS1JXOiEwLEtXRDohMCxMS1I6ITAsTVhOOiEwLE1ZUjohMCxOT0s6ITAsTlpEOiEwLFBIUDohMCxQS1I6ITAsUExOOiEwLFJVQjohMCxTQVI6ITAsU0VLOiEwLFNHRDohMCxUSEI6ITAsVFJZOiEwLFRXRDohMCxaQVI6ITB9O2Z1bmN0aW9uIGkoKXtyZXR1cm4gT2JqZWN0LmtleXMocil9dmFyIGE9WyJBRUQiLCJBUlMiLCJBVUQiLCJCQ0giLCJCRFQiLCJCSEQiLCJCSVRTIiwiQk1EIiwiQk5CIiwiQlJMIiwiQlRDIiwiQ0FEIiwiQ0hGIiwiQ0xQIiwiQ05ZIiwiQ1pLIiwiREtLIiwiRE9UIiwiRU9TIiwiRVRIIiwiRVVSIiwiR0JQIiwiR0VMIiwiSEtEIiwiSFVGIiwiSURSIiwiSUxTIiwiSU5SIiwiSlBZIiwiS1JXIiwiS1dEIiwiTElOSyIsIkxLUiIsIkxUQyIsIk1NSyIsIk1YTiIsIk1ZUiIsIk5HTiIsIk5PSyIsIk5aRCIsIlBIUCIsIlBLUiIsIlBMTiIsIlJVQiIsIlNBUiIsIlNBVFMiLCJTRUsiLCJTR0QiLCJUSEIiLCJUUlkiLCJUV0QiLCJVQUgiLCJVU0QiLCJWRUYiLCJWTkQiLCJYQUciLCJYQVUiLCJYRFIiLCJYTE0iLCJYUlAiLCJZRkkiLCJaQVIiXX0sIjdlOTAiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkOWY2IiksaT1uKCJlNGFlIiksYT1uKCJjM2ExIik7ZS5leHBvcnRzPW4oIjhlNjAiKT9PYmplY3QuZGVmaW5lUHJvcGVydGllczpmdW5jdGlvbihlLHQpe2koZSk7dmFyIG4sbz1hKHQpLGM9by5sZW5ndGgscz0wO3doaWxlKGM+cylyLmYoZSxuPW9bcysrXSx0W25dKTtyZXR1cm4gZX19LCI3ZjIwIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiODZjYyIpLmYsaT1uKCI2OWE4IiksYT1uKCIyYjRjIikoInRvU3RyaW5nVGFnIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXtlJiYhaShlPW4/ZTplLnByb3RvdHlwZSxhKSYmcihlLGEse2NvbmZpZ3VyYWJsZTohMCx2YWx1ZTp0fSl9fSwiN2Y3ZiI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjg2Y2MiKS5mLGk9RnVuY3Rpb24ucHJvdG90eXBlLGE9L15ccypmdW5jdGlvbiAoW14gKF0qKS8sbz0ibmFtZSI7byBpbiBpfHxuKCI5ZTFlIikmJnIoaSxvLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7dHJ5e3JldHVybigiIit0aGlzKS5tYXRjaChhKVsxXX1jYXRjaChlKXtyZXR1cm4iIn19fSl9LDgzNzg6ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLmV4cG9ydHM9e3ZlcnNpb246IjIuNi4xMSJ9OyJudW1iZXIiPT10eXBlb2YgX19lJiYoX19lPW4pfSwiODNjMiI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcixpPVR5cGVFcnJvcixhPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7aWYoYSl0cnl7YSh7fSwiIil9Y2F0Y2goUyl7YT1udWxsfXZhciBvLGMscyxwPWZ1bmN0aW9uKCl7dGhyb3cgbmV3IGl9LGw9YT9mdW5jdGlvbigpe3RyeXtyZXR1cm4gYXJndW1lbnRzLmNhbGxlZSxwfWNhdGNoKGUpe3RyeXtyZXR1cm4gYShhcmd1bWVudHMsImNhbGxlZSIpLmdldH1jYXRjaCh0KXtyZXR1cm4gcH19fSgpOnAsdT1uKCI5ZDNjIikoKSxkPU9iamVjdC5nZXRQcm90b3R5cGVPZnx8ZnVuY3Rpb24oZSl7cmV0dXJuIGUuX19wcm90b19ffSxfPW8/ZChvKTpyLG09Yz9jLmNvbnN0cnVjdG9yOnIsZj1zP2Qocyk6cixoPXM/cygpOnIsdj0idW5kZWZpbmVkIj09PXR5cGVvZiBVaW50OEFycmF5P3I6ZChVaW50OEFycmF5KSx5PXsiJUFycmF5JSI6QXJyYXksIiVBcnJheUJ1ZmZlciUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEFycmF5QnVmZmVyP3I6QXJyYXlCdWZmZXIsIiVBcnJheUJ1ZmZlclByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEFycmF5QnVmZmVyP3I6QXJyYXlCdWZmZXIucHJvdG90eXBlLCIlQXJyYXlJdGVyYXRvclByb3RvdHlwZSUiOnU/ZChbXVtTeW1ib2wuaXRlcmF0b3JdKCkpOnIsIiVBcnJheVByb3RvdHlwZSUiOkFycmF5LnByb3RvdHlwZSwiJUFycmF5UHJvdG9fZW50cmllcyUiOkFycmF5LnByb3RvdHlwZS5lbnRyaWVzLCIlQXJyYXlQcm90b19mb3JFYWNoJSI6QXJyYXkucHJvdG90eXBlLmZvckVhY2gsIiVBcnJheVByb3RvX2tleXMlIjpBcnJheS5wcm90b3R5cGUua2V5cywiJUFycmF5UHJvdG9fdmFsdWVzJSI6QXJyYXkucHJvdG90eXBlLnZhbHVlcywiJUFzeW5jRnJvbVN5bmNJdGVyYXRvclByb3RvdHlwZSUiOnIsIiVBc3luY0Z1bmN0aW9uJSI6bSwiJUFzeW5jRnVuY3Rpb25Qcm90b3R5cGUlIjptP20ucHJvdG90eXBlOnIsIiVBc3luY0dlbmVyYXRvciUiOnM/ZChoKTpyLCIlQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiUiOmYsIiVBc3luY0dlbmVyYXRvclByb3RvdHlwZSUiOmY/Zi5wcm90b3R5cGU6ciwiJUFzeW5jSXRlcmF0b3JQcm90b3R5cGUlIjpoJiZ1JiZTeW1ib2wuYXN5bmNJdGVyYXRvcj9oW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSgpOnIsIiVBdG9taWNzJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgQXRvbWljcz9yOkF0b21pY3MsIiVCb29sZWFuJSI6Qm9vbGVhbiwiJUJvb2xlYW5Qcm90b3R5cGUlIjpCb29sZWFuLnByb3RvdHlwZSwiJURhdGFWaWV3JSI6InVuZGVmaW5lZCI9PT10eXBlb2YgRGF0YVZpZXc/cjpEYXRhVmlldywiJURhdGFWaWV3UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgRGF0YVZpZXc/cjpEYXRhVmlldy5wcm90b3R5cGUsIiVEYXRlJSI6RGF0ZSwiJURhdGVQcm90b3R5cGUlIjpEYXRlLnByb3RvdHlwZSwiJWRlY29kZVVSSSUiOmRlY29kZVVSSSwiJWRlY29kZVVSSUNvbXBvbmVudCUiOmRlY29kZVVSSUNvbXBvbmVudCwiJWVuY29kZVVSSSUiOmVuY29kZVVSSSwiJWVuY29kZVVSSUNvbXBvbmVudCUiOmVuY29kZVVSSUNvbXBvbmVudCwiJUVycm9yJSI6RXJyb3IsIiVFcnJvclByb3RvdHlwZSUiOkVycm9yLnByb3RvdHlwZSwiJWV2YWwlIjpldmFsLCIlRXZhbEVycm9yJSI6RXZhbEVycm9yLCIlRXZhbEVycm9yUHJvdG90eXBlJSI6RXZhbEVycm9yLnByb3RvdHlwZSwiJUZsb2F0MzJBcnJheSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEZsb2F0MzJBcnJheT9yOkZsb2F0MzJBcnJheSwiJUZsb2F0MzJBcnJheVByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEZsb2F0MzJBcnJheT9yOkZsb2F0MzJBcnJheS5wcm90b3R5cGUsIiVGbG9hdDY0QXJyYXklIjoidW5kZWZpbmVkIj09PXR5cGVvZiBGbG9hdDY0QXJyYXk/cjpGbG9hdDY0QXJyYXksIiVGbG9hdDY0QXJyYXlQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBGbG9hdDY0QXJyYXk/cjpGbG9hdDY0QXJyYXkucHJvdG90eXBlLCIlRnVuY3Rpb24lIjpGdW5jdGlvbiwiJUZ1bmN0aW9uUHJvdG90eXBlJSI6RnVuY3Rpb24ucHJvdG90eXBlLCIlR2VuZXJhdG9yJSI6bz9kKG8oKSk6ciwiJUdlbmVyYXRvckZ1bmN0aW9uJSI6XywiJUdlbmVyYXRvclByb3RvdHlwZSUiOl8/Xy5wcm90b3R5cGU6ciwiJUludDhBcnJheSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEludDhBcnJheT9yOkludDhBcnJheSwiJUludDhBcnJheVByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEludDhBcnJheT9yOkludDhBcnJheS5wcm90b3R5cGUsIiVJbnQxNkFycmF5JSI6InVuZGVmaW5lZCI9PT10eXBlb2YgSW50MTZBcnJheT9yOkludDE2QXJyYXksIiVJbnQxNkFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgSW50MTZBcnJheT9yOkludDhBcnJheS5wcm90b3R5cGUsIiVJbnQzMkFycmF5JSI6InVuZGVmaW5lZCI9PT10eXBlb2YgSW50MzJBcnJheT9yOkludDMyQXJyYXksIiVJbnQzMkFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgSW50MzJBcnJheT9yOkludDMyQXJyYXkucHJvdG90eXBlLCIlaXNGaW5pdGUlIjppc0Zpbml0ZSwiJWlzTmFOJSI6aXNOYU4sIiVJdGVyYXRvclByb3RvdHlwZSUiOnU/ZChkKFtdW1N5bWJvbC5pdGVyYXRvcl0oKSkpOnIsIiVKU09OJSI6Im9iamVjdCI9PT10eXBlb2YgSlNPTj9KU09OOnIsIiVKU09OUGFyc2UlIjoib2JqZWN0Ij09PXR5cGVvZiBKU09OP0pTT04ucGFyc2U6ciwiJU1hcCUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIE1hcD9yOk1hcCwiJU1hcEl0ZXJhdG9yUHJvdG90eXBlJSI6InVuZGVmaW5lZCIhPT10eXBlb2YgTWFwJiZ1P2QoKG5ldyBNYXApW1N5bWJvbC5pdGVyYXRvcl0oKSk6ciwiJU1hcFByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIE1hcD9yOk1hcC5wcm90b3R5cGUsIiVNYXRoJSI6TWF0aCwiJU51bWJlciUiOk51bWJlciwiJU51bWJlclByb3RvdHlwZSUiOk51bWJlci5wcm90b3R5cGUsIiVPYmplY3QlIjpPYmplY3QsIiVPYmplY3RQcm90b3R5cGUlIjpPYmplY3QucHJvdG90eXBlLCIlT2JqUHJvdG9fdG9TdHJpbmclIjpPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLCIlT2JqUHJvdG9fdmFsdWVPZiUiOk9iamVjdC5wcm90b3R5cGUudmFsdWVPZiwiJXBhcnNlRmxvYXQlIjpwYXJzZUZsb2F0LCIlcGFyc2VJbnQlIjpwYXJzZUludCwiJVByb21pc2UlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBQcm9taXNlP3I6UHJvbWlzZSwiJVByb21pc2VQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBQcm9taXNlP3I6UHJvbWlzZS5wcm90b3R5cGUsIiVQcm9taXNlUHJvdG9fdGhlbiUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFByb21pc2U/cjpQcm9taXNlLnByb3RvdHlwZS50aGVuLCIlUHJvbWlzZV9hbGwlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBQcm9taXNlP3I6UHJvbWlzZS5hbGwsIiVQcm9taXNlX3JlamVjdCUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFByb21pc2U/cjpQcm9taXNlLnJlamVjdCwiJVByb21pc2VfcmVzb2x2ZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFByb21pc2U/cjpQcm9taXNlLnJlc29sdmUsIiVQcm94eSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFByb3h5P3I6UHJveHksIiVSYW5nZUVycm9yJSI6UmFuZ2VFcnJvciwiJVJhbmdlRXJyb3JQcm90b3R5cGUlIjpSYW5nZUVycm9yLnByb3RvdHlwZSwiJVJlZmVyZW5jZUVycm9yJSI6UmVmZXJlbmNlRXJyb3IsIiVSZWZlcmVuY2VFcnJvclByb3RvdHlwZSUiOlJlZmVyZW5jZUVycm9yLnByb3RvdHlwZSwiJVJlZmxlY3QlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBSZWZsZWN0P3I6UmVmbGVjdCwiJVJlZ0V4cCUiOlJlZ0V4cCwiJVJlZ0V4cFByb3RvdHlwZSUiOlJlZ0V4cC5wcm90b3R5cGUsIiVTZXQlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBTZXQ/cjpTZXQsIiVTZXRJdGVyYXRvclByb3RvdHlwZSUiOiJ1bmRlZmluZWQiIT09dHlwZW9mIFNldCYmdT9kKChuZXcgU2V0KVtTeW1ib2wuaXRlcmF0b3JdKCkpOnIsIiVTZXRQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBTZXQ/cjpTZXQucHJvdG90eXBlLCIlU2hhcmVkQXJyYXlCdWZmZXIlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBTaGFyZWRBcnJheUJ1ZmZlcj9yOlNoYXJlZEFycmF5QnVmZmVyLCIlU2hhcmVkQXJyYXlCdWZmZXJQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBTaGFyZWRBcnJheUJ1ZmZlcj9yOlNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZSwiJVN0cmluZyUiOlN0cmluZywiJVN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlJSI6dT9kKCIiW1N5bWJvbC5pdGVyYXRvcl0oKSk6ciwiJVN0cmluZ1Byb3RvdHlwZSUiOlN0cmluZy5wcm90b3R5cGUsIiVTeW1ib2wlIjp1P1N5bWJvbDpyLCIlU3ltYm9sUHJvdG90eXBlJSI6dT9TeW1ib2wucHJvdG90eXBlOnIsIiVTeW50YXhFcnJvciUiOlN5bnRheEVycm9yLCIlU3ludGF4RXJyb3JQcm90b3R5cGUlIjpTeW50YXhFcnJvci5wcm90b3R5cGUsIiVUaHJvd1R5cGVFcnJvciUiOmwsIiVUeXBlZEFycmF5JSI6diwiJVR5cGVkQXJyYXlQcm90b3R5cGUlIjp2P3YucHJvdG90eXBlOnIsIiVUeXBlRXJyb3IlIjppLCIlVHlwZUVycm9yUHJvdG90eXBlJSI6aS5wcm90b3R5cGUsIiVVaW50OEFycmF5JSI6InVuZGVmaW5lZCI9PT10eXBlb2YgVWludDhBcnJheT9yOlVpbnQ4QXJyYXksIiVVaW50OEFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgVWludDhBcnJheT9yOlVpbnQ4QXJyYXkucHJvdG90eXBlLCIlVWludDhDbGFtcGVkQXJyYXklIjoidW5kZWZpbmVkIj09PXR5cGVvZiBVaW50OENsYW1wZWRBcnJheT9yOlVpbnQ4Q2xhbXBlZEFycmF5LCIlVWludDhDbGFtcGVkQXJyYXlQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBVaW50OENsYW1wZWRBcnJheT9yOlVpbnQ4Q2xhbXBlZEFycmF5LnByb3RvdHlwZSwiJVVpbnQxNkFycmF5JSI6InVuZGVmaW5lZCI9PT10eXBlb2YgVWludDE2QXJyYXk/cjpVaW50MTZBcnJheSwiJVVpbnQxNkFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgVWludDE2QXJyYXk/cjpVaW50MTZBcnJheS5wcm90b3R5cGUsIiVVaW50MzJBcnJheSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFVpbnQzMkFycmF5P3I6VWludDMyQXJyYXksIiVVaW50MzJBcnJheVByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFVpbnQzMkFycmF5P3I6VWludDMyQXJyYXkucHJvdG90eXBlLCIlVVJJRXJyb3IlIjpVUklFcnJvciwiJVVSSUVycm9yUHJvdG90eXBlJSI6VVJJRXJyb3IucHJvdG90eXBlLCIlV2Vha01hcCUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFdlYWtNYXA/cjpXZWFrTWFwLCIlV2Vha01hcFByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFdlYWtNYXA/cjpXZWFrTWFwLnByb3RvdHlwZSwiJVdlYWtTZXQlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBXZWFrU2V0P3I6V2Vha1NldCwiJVdlYWtTZXRQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBXZWFrU2V0P3I6V2Vha1NldC5wcm90b3R5cGV9LGc9bigiMGY3YyIpLHc9Zy5jYWxsKEZ1bmN0aW9uLmNhbGwsU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlKSxiPS9bXiUuW1xdXSt8XFsoPzooLT9cZCsoPzpcLlxkKyk/KXwoWyInXSkoKD86KD8hXDIpW15cXF18XFwuKSo/KVwyKVxdfCg/PSg/OlwufFxbXF0pKD86XC58XFtcXXwlJCkpL2csaz0vXFwoXFwpPy9nLHg9ZnVuY3Rpb24oZSl7dmFyIHQ9W107cmV0dXJuIHcoZSxiLChmdW5jdGlvbihlLG4scixpKXt0W3QubGVuZ3RoXT1yP3coaSxrLCIkMSIpOm58fGV9KSksdH0sQz1mdW5jdGlvbihlLHQpe2lmKCEoZSBpbiB5KSl0aHJvdyBuZXcgU3ludGF4RXJyb3IoImludHJpbnNpYyAiK2UrIiBkb2VzIG5vdCBleGlzdCEiKTtpZigidW5kZWZpbmVkIj09PXR5cGVvZiB5W2VdJiYhdCl0aHJvdyBuZXcgaSgiaW50cmluc2ljICIrZSsiIGV4aXN0cywgYnV0IGlzIG5vdCBhdmFpbGFibGUuIFBsZWFzZSBmaWxlIGFuIGlzc3VlISIpO3JldHVybiB5W2VdfTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtpZigic3RyaW5nIiE9PXR5cGVvZiBlfHwwPT09ZS5sZW5ndGgpdGhyb3cgbmV3IFR5cGVFcnJvcigiaW50cmluc2ljIG5hbWUgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmciKTtpZihhcmd1bWVudHMubGVuZ3RoPjEmJiJib29sZWFuIiE9PXR5cGVvZiB0KXRocm93IG5ldyBUeXBlRXJyb3IoJyJhbGxvd01pc3NpbmciIGFyZ3VtZW50IG11c3QgYmUgYSBib29sZWFuJyk7Zm9yKHZhciBuPXgoZSkscj1DKCIlIisobi5sZW5ndGg+MD9uWzBdOiIiKSsiJSIsdCksbz0xO288bi5sZW5ndGg7bys9MSlpZihudWxsIT1yKWlmKGEmJm8rMT49bi5sZW5ndGgpe3ZhciBjPWEocixuW29dKTtpZighdCYmIShuW29daW4gcikpdGhyb3cgbmV3IGkoImJhc2UgaW50cmluc2ljIGZvciAiK2UrIiBleGlzdHMsIGJ1dCB0aGUgcHJvcGVydHkgaXMgbm90IGF2YWlsYWJsZS4iKTtyPWM/Yy5nZXR8fGMudmFsdWU6cltuW29dXX1lbHNlIHI9cltuW29dXTtyZXR1cm4gcn19LDg0MzY6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oKXt9fSwiODRmMiI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9e319LDg2ODA6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IuC4reC4seC4meC4lOC4seC4muC4oeC4ueC4peC4hOC5iOC4suC4leC4suC4oeC4o+C4suC4hOC4suC4leC4peC4suC4lCIsIm1jYXAiOiLguKHguLnguKXguITguYjguLLguJXguLLguKHguKPguLLguITguLLguJXguKXguLLguJQiLCIyNGhfdm9sdW1lIjoi4Lib4Lij4Li04Lih4Liy4LiTIDI0IOC4iuC4seC5iOC4p+C5guC4oeC4hyIsIjI0aF9oaWdoX2xvdyI6IuC4quC4ueC4hyAvIOC4leC5iOC4syAyNCDguIrguKEuIn0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IuC4guC4seC4muC5gOC4hOC4peC4t+C5iOC4reC4meC5guC4lOC4oiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiLguIHguLLguKPguYDguJvguKPguLXguKLguJrguYDguJfguLXguKLguJrguKPguLLguITguLLguITguKPguLTguJvguYLguJUiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoi4LiB4Liy4Lij4LmA4Lib4Lij4Li14Lii4Lia4LmA4LiX4Li14Lii4Lia4Lih4Li54Lil4LiE4LmI4Liy4LiV4Lil4Liy4LiU4LiE4Lij4Li04Lib4LmC4LiVIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi4LiC4Lix4Lia4LmA4LiE4Lil4Li34LmI4Lit4LiZ4LmC4LiU4LiiICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNCDguIrguKEuIOC4quC4ueC4h+C4quC4uOC4lCIsIjI0aF9sb3ciOiIyNCDguIrguKEuIOC4leC5iOC4s+C4quC4uOC4lCIsInZpZXdfcHJpY2VfY2hhcnQiOiLguJTguLnguIHguKPguLLguJ/guKPguLLguITguLIgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLguILguLHguJrguYDguITguKXguLfguYjguK3guJnguYLguJTguKIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLguILguLHguJrguYDguITguKXguLfguYjguK3guJnguYLguJTguKIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLguILguLHguJrguYDguITguKXguLfguYjguK3guJnguYLguJTguKIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi4LiC4Lix4Lia4LmA4LiE4Lil4Li34LmI4Lit4LiZ4LmC4LiU4LiiICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjQg4LiK4LihLiDguKrguLnguIfguKrguLjguJQiLCIyNGhfbG93IjoiMjQg4LiK4LihLiDguJXguYjguLPguKrguLjguJQiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi4LiU4Li54LiB4Lij4Liy4Lif4Lij4Liy4LiE4LiyICV7Y29pbn0iLCJwb3dlcmVkX2J5Ijoi4LiC4Lix4Lia4LmA4LiE4Lil4Li34LmI4Lit4LiZ4LmC4LiU4LiiICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiLguJTguLnguIHguKPguLLguJ/guKPguLLguITguLIgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLguILguLHguJrguYDguITguKXguLfguYjguK3guJnguYLguJTguKIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoi4LmB4Lic4LiZ4LiX4Li14LmI4Lij4Li54Lib4LiV4LmJ4LiZ4LmE4Lih4LmJIENyeXB0b2N1cnJlbmN5Iiwic3VidGl0bGUiOiIoJXt0b3B9IOC4quC4ueC4h+C4quC4uOC4lOC4leC4suC4oeC4oeC4ueC4peC4hOC5iOC4suC4leC4peC4suC4lCkiLCJwb3dlcmVkX2J5Ijoi4LiC4Lix4Lia4LmA4LiE4Lil4Li34LmI4Lit4LiZ4LmC4LiU4LiiICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLguILguYnguK3guIjguLPguIHguLHguJTguITguKfguLLguKHguKPguLHguJrguJzguLTguJTguIrguK3guJo6IOC5gOC4hOC4o+C4t+C5iOC4reC4h+C4oeC4t+C4reC4meC4teC5ieC4l+C4s+C4q+C4meC5ieC4suC4l+C4teC5iOC5gOC4m+C5h+C4meC4hOC4p+C4suC4oeC4muC4seC4meC5gOC4l+C4tOC4h+C5geC4peC4sOC5hOC4oeC5iOC5g+C4iuC5iOC4hOC4s+C5geC4meC4sOC4meC4s+C4l+C4suC4h+C4geC4suC4o+C5gOC4h+C4tOC4mSIsInNwaW4iOiLguKvguKHguLjguJkiLCJhdmFpbGFibGVfY29pbnMiOiLguYDguKvguKPguLXguKLguI3guJfguLXguYjguKHguLXguK3guKLguLnguYgifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiLguK3guLHguJ7guYDguJTguJfguKPguLLguITguLIgQ29pbkdlY2tvIiwidG90YWxfbWNhcCI6IuC4hOC4p+C4suC4oeC4iOC4uOC4l+C4seC5ieC4h+C4q+C4oeC4lOC4guC4reC4hyBNIiwiMjRoX3ZvbCI6IuC4m+C4o+C4tOC4oeC4suC4kyAyNCDguIrguKEuIiwiZG9tIjoi4LiB4Liy4Lij4LiE4Lij4Lit4LiH4Liq4LmI4Lin4LiZ4LmB4Lia4LmI4LiH4LmD4LiZ4LiV4Lil4Liy4LiUIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IuC4leC4peC4suC4lOC5geC4peC4geC5gOC4m+C4peC4teC5iOC4ouC4mSIsInBhaXIiOiLguITguLnguYgiLCJwcmljZSI6IuC4o+C4suC4hOC4siIsInZvbHVtZSI6IuC4m+C4o+C4tOC4oeC4suC4kyIsInRydXN0X3Njb3JlIjoi4LiE4Liw4LmB4LiZ4LiZ4LiE4Lin4Liy4Lih4LiZ4LmI4Liy4LmA4LiK4Li34LmI4Lit4LiW4Li34LitIiwidmlld19wcmljZV9jaGFydCI6IuC4lOC4ueC4geC4o+C4suC4n+C4o+C4suC4hOC4siIsInBvd2VyZWRfYnkiOiLguILguLHguJrguYDguITguKXguLfguYjguK3guJnguYLguJTguKIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoi4LiU4Li54LiV4Lil4Liy4LiUICV7Y29pbn0g4LiX4Lix4LmJ4LiH4Lir4Lih4LiUIn19Jyl9LCI4NmNjIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiY2I3YyIpLGk9bigiYzY5YSIpLGE9bigiNmE5OSIpLG89T2JqZWN0LmRlZmluZVByb3BlcnR5O3QuZj1uKCI5ZTFlIik/T2JqZWN0LmRlZmluZVByb3BlcnR5OmZ1bmN0aW9uKGUsdCxuKXtpZihyKGUpLHQ9YSh0LCEwKSxyKG4pLGkpdHJ5e3JldHVybiBvKGUsdCxuKX1jYXRjaChjKXt9aWYoImdldCJpbiBufHwic2V0ImluIG4pdGhyb3cgVHlwZUVycm9yKCJBY2Nlc3NvcnMgbm90IHN1cHBvcnRlZCEiKTtyZXR1cm4idmFsdWUiaW4gbiYmKGVbdF09bi52YWx1ZSksZX19LCI4OWIyIjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiT2NlbmEgd2cuIGthcGl0YWxpemFjamkgcnlua3UiLCJtY2FwIjoiS2FwaXRhbGl6YWNqYSByeW5rb3dhIiwiMjRoX3ZvbHVtZSI6IldvbHVtZW4g4oCTIDI0IGdvZHouIiwiMjRoX2hpZ2hfbG93IjoiMjQgaCDigJMgbWFrcy4vbWluLiJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJPYnPFgnVnaXdhbmUgcHJ6ZXogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiUG9yw7N3bmFuaWUga3Vyc3Uga3J5cHRvIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IlBvcsOzd25hbmllIGthcGl0YWxpemFjamkgcnlua293ZWoga3J5cHRvIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiT2JzxYJ1Z2l3YW5lIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNCBnb2R6LiDigJMgd3lzb2tvIiwiMjRoX2xvdyI6IjI0IGdvZHouIOKAkyBuaXNrbyIsInZpZXdfcHJpY2VfY2hhcnQiOiJXecWbd2lldGwgd3lrcmVzIGt1cnN1ICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiT2JzxYJ1Z2l3YW5lIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiT2JzxYJ1Z2l3YW5lIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiT2JzxYJ1Z2l3YW5lIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6Ik9ic8WCdWdpd2FuZSBwcnpleiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0IGdvZHouIOKAkyB3eXNva28iLCIyNGhfbG93IjoiMjQgZ29kei4g4oCTIG5pc2tvIiwidmlld19wcmljZV9jaGFydCI6Ild5xZt3aWV0bCB3eWtyZXMga3Vyc3UgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJPYnPFgnVnaXdhbmUgcHJ6ZXogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6Ild5xZt3aWV0bCB3eWtyZXMga3Vyc3UgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJPYnPFgnVnaXdhbmUgcHJ6ZXogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoiRHJ6ZXdvIGtyeXB0b3dhbHV0Iiwic3VidGl0bGUiOiIoVG9wICV7dG9wfSB3ZWTFgnVnIGthcGl0YWxpemFjamkgcnlua293ZWopIiwicG93ZXJlZF9ieSI6Ik9ic8WCdWdpd2FuZSBwcnpleiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiT8Wbd2lhZGN6ZW5pZTogTmFyesSZZHppYSB0ZSBzxYJ1xbzEhSByb3pyeXdjZSBpIG5pZSBzdGFub3dpxIUgcG9yYWR5IGZpbmFuc293ZWouIiwic3BpbiI6Ilpha3LEmcSHIiwiYXZhaWxhYmxlX2NvaW5zIjoiRG9zdMSZcG5lIHdhbHV0eSJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkFrdHVhbGl6YWNqYSBrdXJzdSBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiQ2HFgmtvd2l0YSBrYXBpdGFsaXphY2phIHJ5bmtvd2EiLCIyNGhfdm9sIjoiV29sdW1lbiDigJMgMjQgZ29kei4iLCJkb20iOiJEb21pbmFjamEifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiR2llxYJkYSIsInBhaXIiOiJQYXJhIiwicHJpY2UiOiJLdXJzIiwidm9sdW1lIjoiV29sdW1lbiIsInRydXN0X3Njb3JlIjoiV3NrYcW6bmlrIHphdWZhbmlhIiwidmlld19wcmljZV9jaGFydCI6Ild5xZt3aWV0bCB3eWtyZXMga3Vyc3UiLCJwb3dlcmVkX2J5IjoiT2JzxYJ1Z2l3YW5lIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJ2aWV3X2FsbCI6IlpvYmFjeiB3c3p5c3RraWUgcnlua2kgJXtjb2lufSJ9fScpfSwiOGFiNSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCI4M2MyIiksaT1uKCI0ZDAxIiksYT1pKHIoIlN0cmluZy5wcm90b3R5cGUuaW5kZXhPZiIpKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt2YXIgbj1yKGUsISF0KTtyZXR1cm4iZnVuY3Rpb24iPT09dHlwZW9mIG4mJmEoZSwiLnByb3RvdHlwZS4iKT9pKG4pOm59fSwiOGI5NyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImQzZjQiKSxpPW4oImNiN2MiKSxhPWZ1bmN0aW9uKGUsdCl7aWYoaShlKSwhcih0KSYmbnVsbCE9PXQpdGhyb3cgVHlwZUVycm9yKHQrIjogY2FuJ3Qgc2V0IGFzIHByb3RvdHlwZSEiKX07ZS5leHBvcnRzPXtzZXQ6T2JqZWN0LnNldFByb3RvdHlwZU9mfHwoIl9fcHJvdG9fXyJpbnt9P2Z1bmN0aW9uKGUsdCxyKXt0cnl7cj1uKCI5YjQzIikoRnVuY3Rpb24uY2FsbCxuKCIxMWU5IikuZihPYmplY3QucHJvdG90eXBlLCJfX3Byb3RvX18iKS5zZXQsMikscihlLFtdKSx0PSEoZSBpbnN0YW5jZW9mIEFycmF5KX1jYXRjaChpKXt0PSEwfXJldHVybiBmdW5jdGlvbihlLG4pe3JldHVybiBhKGUsbiksdD9lLl9fcHJvdG9fXz1uOnIoZSxuKSxlfX0oe30sITEpOnZvaWQgMCksY2hlY2s6YX19LCI4ZTYwIjpmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPSFuKCIyOTRjIikoKGZ1bmN0aW9uKCl7cmV0dXJuIDchPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwiYSIse2dldDpmdW5jdGlvbigpe3JldHVybiA3fX0pLmF9KSl9LCI4ZjYwIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oImExNTkiKSxpPW4oImFlYmQiKSxhPW4oIjQ1ZjIiKSxvPXt9O24oIjM1ZTgiKShvLG4oIjUxNjgiKSgiaXRlcmF0b3IiKSwoZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pKSxlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe2UucHJvdG90eXBlPXIobyx7bmV4dDppKDEsbil9KSxhKGUsdCsiIEl0ZXJhdG9yIil9fSw5MDAzOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI2YjRjIik7ZS5leHBvcnRzPUFycmF5LmlzQXJyYXl8fGZ1bmN0aW9uKGUpe3JldHVybiJBcnJheSI9PXIoZSl9fSw5MDkzOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJjZTEwIiksaT1uKCJlMTFlIikuY29uY2F0KCJsZW5ndGgiLCJwcm90b3R5cGUiKTt0LmY9T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXN8fGZ1bmN0aW9uKGUpe3JldHVybiByKGUsaSl9fSw5MTM4OmZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9bigiMzVlOCIpfSwiOTJkNyI6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IlJhbmcgcHJlbWEgdHLFvmnFoW5vaiBrYXBpdC4iLCJtY2FwIjoiVHLFvmnFoW5hIGthcGl0LiIsIjI0aF92b2x1bWUiOiJWb2x1bWVuIHUgMjQgaCIsIjI0aF9oaWdoX2xvdyI6IlZpc29rYS9uaXNrYSB1IDI0IGgifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUG9rcmXEh2UgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiVXNwb3JlZGJhIGNpamVuZSBrcmlwdG92YWx1dGEiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiVXNwb3JlZGJhIHRyxb5pxaFuZSBrYXBpdGFsaXphY2lqZSBrcmlwdG92YWx1dGEifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb2tyZcSHZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiVmlzb2thIHUgMjQgaCIsIjI0aF9sb3ciOiJOaXNrYSB1IDI0IGgiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiUHJpa2HFvmkgZ3JhZmlrb24gY2lqZW5lICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiUG9rcmXEh2UgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb2tyZcSHZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBva3JlxIdlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBva3JlxIdlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiVmlzb2thIHUgMjQgaCIsIjI0aF9sb3ciOiJOaXNrYSB1IDI0IGgiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiUHJpa2HFvmkgZ3JhZmlrb24gY2lqZW5lICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiUG9rcmXEh2UgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlByaWthxb5pIGdyYWZpa29uIGNpamVuZSAle2NvaW59IiwicG93ZXJlZF9ieSI6IlBva3JlxIdlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IkthcnRhIHNhIHN0YWJsb20ga3JpcHRvdmFsdXRhIiwic3VidGl0bGUiOiIoTmFqdmXEh2loICV7dG9wfSBwcmVtYSB0csW+acWhbm9qIGthcGl0YWxpemFjaWppKSIsInBvd2VyZWRfYnkiOiJQb2tyZcSHZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiSXpqYXZhIG8gb2RyaWNhbmp1IG9kZ292b3Jub3N0aTogb3ZpIGFsYXRpIHphYmF2bm9nIHN1IGthcmFrdGVyYSBpIG5lIHByZWRzdGF2bGphanUgZmluYW5jaWpza2kgc2F2amV0LiIsInNwaW4iOiJTcGluIiwiYXZhaWxhYmxlX2NvaW5zIjoiRG9zdHVwbmkgbm92xI1pxIdpIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiQcW+dXJpcmFuamUgY2lqZW5lIG5hIHBsYXRmb3JtaSBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiVWt1cG5hIHRyxb4uIGthcGl0YWxpemFjaWphIiwiMjRoX3ZvbCI6IlZvbHVtZW4gdSAyNCBoIiwiZG9tIjoiRG9taW5hbnRub3N0In0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IkJ1cnphIiwicGFpciI6IlBhciIsInByaWNlIjoiQ2lqZW5hIiwidm9sdW1lIjoiVm9sdW1lbiIsInRydXN0X3Njb3JlIjoiT2NqZW5hIHBvdXpkYW5vc3RpIiwidmlld19wcmljZV9jaGFydCI6IlByaWthxb5pIGdyYWZpa29uIGNpamVuZSIsInBvd2VyZWRfYnkiOiJQb2tyZcSHZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJQcmlrYcW+aSBzdmEgdHLFvmnFoXRhIHphICV7Y29pbn0ifX0nKX0sOTU0MjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiUmFuZyBjYXBpdGFsaXphcmUgbGEgYnVyc8SDIiwibWNhcCI6IkNhcGl0YWxpemFyZSBsYSBidXJzxIMiLCIyNGhfdm9sdW1lIjoiVm9sdW0gw65uIHVsdGltZWxlIDI0IG9yZSIsIjI0aF9oaWdoX2xvdyI6Ik1heGltL01pbmltIMOubiAyNGgifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiU3VzyJtpbnV0IGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IkNvbXBhcmFyZWEgcHJlyJt1cmlsb3IgQ3JpcHRvIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IkNvbXBhcmFyZSBjYXBpdGFsaXphcmVhIGxhIGJ1cnNhIGNyaXB0byJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlN1c8ibaW51dCBkZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTWF4aW0gw65uIHVsdGltZWxlIDI0IG9yZSIsIjI0aF9sb3ciOiJNaW5pbSDDrm4gdWx0aW1lbGUgMjQgb3JlIiwidmlld19wcmljZV9jaGFydCI6IlZlemkgZ3JhZmljdWwgZGUgcHJlyJt1cmkgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJTdXPIm2ludXQgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJTdXPIm2ludXQgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJTdXPIm2ludXQgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiU3VzyJtpbnV0IGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTWF4aW0gw65uIHVsdGltZWxlIDI0IG9yZSIsIjI0aF9sb3ciOiJNaW5pbSDDrm4gdWx0aW1lbGUgMjQgb3JlIiwidmlld19wcmljZV9jaGFydCI6IlZlemkgZ3JhZmljdWwgZGUgcHJlyJt1cmkgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJTdXPIm2ludXQgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZlemkgZ3JhZmljdWwgZGUgcHJlyJt1cmkgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJTdXPIm2ludXQgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoiSGFydGEgYXJib3Jlc2NlbnTEgyBhIGNyaXB0b21vbmVkZWxvciIsInN1YnRpdGxlIjoiKFRvcCAle3RvcH0gZHVwxIMgY2FwaXRhbGl6YXJlYSBidXJzaWVyxIMpIiwicG93ZXJlZF9ieSI6IlN1c8ibaW51dCBkZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiQXZlcnRpc21lbnQ6IEFjZXN0IGluc3RydW1lbnQgZXN0ZSBwZW50cnUgZGl2ZXJ0aXNtZW50IMiZaSBudSBhcmUgcm9sdWwgZGUgY29uc2lsaWVyZSBmaW5hbmNpYXLEgy4iLCJzcGluIjoiUm90aXJlIiwiYXZhaWxhYmxlX2NvaW5zIjoiTW9uZWRlIGRpc3BvbmliaWxlIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiQWN0dWFsaXphcmUgUHJlyJsgQ29pbkdlY2tvIiwidG90YWxfbWNhcCI6IlRvdGFsIGNhcGl0YWxpemFyZSBsYSBidXJzxIMiLCIyNGhfdm9sIjoiVm9sdW0gw65uIHVsdGltZWxlIDI0IG9yZSIsImRvbSI6IkRvbWluYcibaWUifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiU2NoaW1iIiwicGFpciI6IlBlcmVjaGUiLCJwcmljZSI6IlByZcibIiwidm9sdW1lIjoiVm9sdW0iLCJ0cnVzdF9zY29yZSI6IlNjb3IgZGUgw65uY3JlZGVyZSIsInZpZXdfcHJpY2VfY2hhcnQiOiJWZXppIGdyYWZpY3VsIGRlIHByZcibdXJpIiwicG93ZXJlZF9ieSI6IlN1c8ibaW51dCBkZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJWZXppIHRvYXRlIHBpZcibZWxlICV7Y29pbn0ifX0nKX0sIjlhYTkiOmZ1bmN0aW9uKGUsdCl7dC5mPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHN9LCI5YjQzIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDhlOCIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7aWYocihlKSx2b2lkIDA9PT10KXJldHVybiBlO3N3aXRjaChuKXtjYXNlIDE6cmV0dXJuIGZ1bmN0aW9uKG4pe3JldHVybiBlLmNhbGwodCxuKX07Y2FzZSAyOnJldHVybiBmdW5jdGlvbihuLHIpe3JldHVybiBlLmNhbGwodCxuLHIpfTtjYXNlIDM6cmV0dXJuIGZ1bmN0aW9uKG4scixpKXtyZXR1cm4gZS5jYWxsKHQsbixyLGkpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gZS5hcHBseSh0LGFyZ3VtZW50cyl9fX0sIjljNmMiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIyYjRjIikoInVuc2NvcGFibGVzIiksaT1BcnJheS5wcm90b3R5cGU7dm9pZCAwPT1pW3JdJiZuKCIzMmU5IikoaSxyLHt9KSxlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aVtyXVtlXT0hMH19LCI5ZDNjIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiOyhmdW5jdGlvbih0KXt2YXIgcj10LlN5bWJvbCxpPW4oImQ2ZGEiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oKXtyZXR1cm4iZnVuY3Rpb24iPT09dHlwZW9mIHImJigiZnVuY3Rpb24iPT09dHlwZW9mIFN5bWJvbCYmKCJzeW1ib2wiPT09dHlwZW9mIHIoImZvbyIpJiYoInN5bWJvbCI9PT10eXBlb2YgU3ltYm9sKCJiYXIiKSYmaSgpKSkpfX0pLmNhbGwodGhpcyxuKCJjOGJhIikpfSwiOWRlZiI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjQ1ODgiKSxpPU1hdGgubWluO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gZT4wP2kocihlKSw5MDA3MTk5MjU0NzQwOTkxKTowfX0sIjllMWUiOmZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9IW4oIjc5ZTUiKSgoZnVuY3Rpb24oKXtyZXR1cm4gNyE9T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJhIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDd9fSkuYX0pKX0sYTBkMzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjBmN2MiKTtlLmV4cG9ydHM9ci5jYWxsKEZ1bmN0aW9uLmNhbGwsT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSl9LGExNTk6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImU0YWUiKSxpPW4oIjdlOTAiKSxhPW4oIjE2OTEiKSxvPW4oIjU1NTkiKSgiSUVfUFJPVE8iKSxjPWZ1bmN0aW9uKCl7fSxzPSJwcm90b3R5cGUiLHA9ZnVuY3Rpb24oKXt2YXIgZSx0PW4oIjFlYzkiKSgiaWZyYW1lIikscj1hLmxlbmd0aCxpPSI8IixvPSI+Ijt0LnN0eWxlLmRpc3BsYXk9Im5vbmUiLG4oIjMyZmMiKS5hcHBlbmRDaGlsZCh0KSx0LnNyYz0iamF2YXNjcmlwdDoiLGU9dC5jb250ZW50V2luZG93LmRvY3VtZW50LGUub3BlbigpLGUud3JpdGUoaSsic2NyaXB0IitvKyJkb2N1bWVudC5GPU9iamVjdCIraSsiL3NjcmlwdCIrbyksZS5jbG9zZSgpLHA9ZS5GO3doaWxlKHItLSlkZWxldGUgcFtzXVthW3JdXTtyZXR1cm4gcCgpfTtlLmV4cG9ydHM9T2JqZWN0LmNyZWF0ZXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtyZXR1cm4gbnVsbCE9PWU/KGNbc109cihlKSxuPW5ldyBjLGNbc109bnVsbCxuW29dPWUpOm49cCgpLHZvaWQgMD09PXQ/bjppKG4sdCl9fSxhMzA2OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiJDbGFzaWZpY2FjacOzbiBkZSBjYXBpdGFsaXphY2nDs24gZGUgbWVyY2FkbyIsIm1jYXAiOiJDYXAuIGRlIG1lcmNhZG8iLCIyNGhfdm9sdW1lIjoiMjRIIFZvbHVtZW4iLCIyNGhfaGlnaF9sb3ciOiJNw6F4aW1vL23DrW5pbW8gZW4gMjTCoGgifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IkNvbXBhcmFjacOzbiBkZSBwcmVjaW9zIGRlIGNyaXB0b21vbmVkYXMiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiQ29tcGFyYWNpw7NuIGRlIGxhIGNhcGl0YWxpemFjacOzbiBkZWwgbWVyY2FkbyBkZSBjcmlwdG9tb25lZGFzIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiJNw6F4aW1vIGVuIDI0IGgiLCIyNGhfbG93IjoiTcOtbmltbyBlbiAyNCBoIiwidmlld19wcmljZV9jaGFydCI6IlZlciBncsOhZmljbyBkZSBwcmVjaW9zIGRlICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkNvbiB0ZWNub2xvZ8OtYSBkZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6Ik3DoXhpbW8gZW4gMjQgaCIsIjI0aF9sb3ciOiJNw61uaW1vIGVuIDI0IGgiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmVyIGdyw6FmaWNvIGRlIHByZWNpb3MgZGUgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJDb24gdGVjbm9sb2fDrWEgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZlciBncsOhZmljbyBkZSBwcmVjaW9zIGRlICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6Ik1hcGEgZGUgw6FyYm9sIGRlIGNyaXB0b21vbmVkYXMiLCJzdWJ0aXRsZSI6IihQcmluY2lwYWxlcyAle3RvcH0gc2Vnw7puIGxhIGNhcGl0YWxpemFjacOzbiBkZSBtZXJjYWRvKSIsInBvd2VyZWRfYnkiOiJDb24gdGVjbm9sb2fDrWEgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IkRlc2NhcmdvIGRlIHJlc3BvbnNhYmlsaWRhZDogZXN0YXMgaGVycmFtaWVudGFzIHRpZW5lbiBmaW5lcyBpbmZvcm1hdGl2b3MgeSBubyBjb25zdGl0dXllbiBhc2Vzb3JhbWllbnRvIGZpbmFuY2llcm8uIiwic3BpbiI6IkdpcmFyIiwiYXZhaWxhYmxlX2NvaW5zIjoiTW9uZWRhcyBkaXNwb25pYmxlcyJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkFjdHVhbGl6YWNpw7NuIGRlIHByZWNpbyBkZSBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiQ2FwIE0gdG90YWwiLCIyNGhfdm9sIjoiVm9sdW1lbiBlbiAyNMKgaCIsImRvbSI6IkRvbSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJJbnRlcmNhbWJpb3MiLCJwYWlyIjoiUGFyIiwicHJpY2UiOiJQcmVjaW8iLCJ2b2x1bWUiOiJWb2x1bWVuIiwidHJ1c3Rfc2NvcmUiOiJQdW50dWFjacOzbiBkZSBjb25maWFuemEiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmVyIGdyw6FmaWNvIGRlIHByZWNpb3MiLCJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJ2aWV3X2FsbCI6IlZlciB0b2RvcyBsb3MgbWVyY2Fkb3MgZGUgJXtjb2lufSJ9fScpfSxhNDgxOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiY2I3YyIpLGk9bigiNGJmOCIpLGE9bigiOWRlZiIpLG89bigiNDU4OCIpLGM9bigiMDM5MCIpLHM9bigiNWYxYiIpLHA9TWF0aC5tYXgsbD1NYXRoLm1pbix1PU1hdGguZmxvb3IsZD0vXCQoWyQmYCddfFxkXGQ/fDxbXj5dKj4pL2csXz0vXCQoWyQmYCddfFxkXGQ/KS9nLG09ZnVuY3Rpb24oZSl7cmV0dXJuIHZvaWQgMD09PWU/ZTpTdHJpbmcoZSl9O24oIjIxNGYiKSgicmVwbGFjZSIsMiwoZnVuY3Rpb24oZSx0LG4sZil7cmV0dXJuW2Z1bmN0aW9uKHIsaSl7dmFyIGE9ZSh0aGlzKSxvPXZvaWQgMD09cj92b2lkIDA6clt0XTtyZXR1cm4gdm9pZCAwIT09bz9vLmNhbGwocixhLGkpOm4uY2FsbChTdHJpbmcoYSkscixpKX0sZnVuY3Rpb24oZSx0KXt2YXIgaT1mKG4sZSx0aGlzLHQpO2lmKGkuZG9uZSlyZXR1cm4gaS52YWx1ZTt2YXIgdT1yKGUpLGQ9U3RyaW5nKHRoaXMpLF89ImZ1bmN0aW9uIj09PXR5cGVvZiB0O198fCh0PVN0cmluZyh0KSk7dmFyIHY9dS5nbG9iYWw7aWYodil7dmFyIHk9dS51bmljb2RlO3UubGFzdEluZGV4PTB9dmFyIGc9W107d2hpbGUoMSl7dmFyIHc9cyh1LGQpO2lmKG51bGw9PT13KWJyZWFrO2lmKGcucHVzaCh3KSwhdilicmVhazt2YXIgYj1TdHJpbmcod1swXSk7IiI9PT1iJiYodS5sYXN0SW5kZXg9YyhkLGEodS5sYXN0SW5kZXgpLHkpKX1mb3IodmFyIGs9IiIseD0wLEM9MDtDPGcubGVuZ3RoO0MrKyl7dz1nW0NdO2Zvcih2YXIgUz1TdHJpbmcod1swXSksUD1wKGwobyh3LmluZGV4KSxkLmxlbmd0aCksMCksaj1bXSxPPTE7Tzx3Lmxlbmd0aDtPKyspai5wdXNoKG0od1tPXSkpO3ZhciBBPXcuZ3JvdXBzO2lmKF8pe3ZhciBFPVtTXS5jb25jYXQoaixQLGQpO3ZvaWQgMCE9PUEmJkUucHVzaChBKTt2YXIgVD1TdHJpbmcodC5hcHBseSh2b2lkIDAsRSkpfWVsc2UgVD1oKFMsZCxQLGosQSx0KTtQPj14JiYoays9ZC5zbGljZSh4LFApK1QseD1QK1MubGVuZ3RoKX1yZXR1cm4gaytkLnNsaWNlKHgpfV07ZnVuY3Rpb24gaChlLHQscixhLG8sYyl7dmFyIHM9citlLmxlbmd0aCxwPWEubGVuZ3RoLGw9XztyZXR1cm4gdm9pZCAwIT09byYmKG89aShvKSxsPWQpLG4uY2FsbChjLGwsKGZ1bmN0aW9uKG4saSl7dmFyIGM7c3dpdGNoKGkuY2hhckF0KDApKXtjYXNlIiQiOnJldHVybiIkIjtjYXNlIiYiOnJldHVybiBlO2Nhc2UiYCI6cmV0dXJuIHQuc2xpY2UoMCxyKTtjYXNlIiciOnJldHVybiB0LnNsaWNlKHMpO2Nhc2UiPCI6Yz1vW2kuc2xpY2UoMSwtMSldO2JyZWFrO2RlZmF1bHQ6dmFyIGw9K2k7aWYoMD09PWwpcmV0dXJuIG47aWYobD5wKXt2YXIgZD11KGwvMTApO3JldHVybiAwPT09ZD9uOmQ8PXA/dm9pZCAwPT09YVtkLTFdP2kuY2hhckF0KDEpOmFbZC0xXStpLmNoYXJBdCgxKTpufWM9YVtsLTFdfXJldHVybiB2b2lkIDA9PT1jPyIiOmN9KSl9fSkpfSxhNjI1OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiJSYW5nb3JkZSBtYXJrdGthcGl0YWxpc2F0aWUiLCJtY2FwIjoiTWFya3RrYXAuIiwiMjRoX3ZvbHVtZSI6IjI0VSB2b2x1bWUiLCIyNGhfaGlnaF9sb3ciOiIyNC11dXJzIGhvb2cvbGFhZyJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJNb2dlbGlqayBnZW1hYWt0IGRvb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiVmVyZ2VsaWpraW5nIHZhbiBjcnlwdG9wcmlqemVuIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IlZlcmdlbGlqa2luZyB2YW4gY3J5cHRvbWFya3RrYXBpdGFsaXNhdGllcyJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6Ik1vZ2VsaWprIGdlbWFha3QgZG9vciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjRVIGhvb2ciLCIyNGhfbG93IjoiMjRVIGxhYWciLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiS29lcnNncmFmaWVrIHZhbiAle2NvaW59IGJla2lqa2VuIiwicG93ZXJlZF9ieSI6Ik1vZ2VsaWprIGdlbWFha3QgZG9vciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6Ik1vZ2VsaWprIGdlbWFha3QgZG9vciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6Ik1vZ2VsaWprIGdlbWFha3QgZG9vciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJNb2dlbGlqayBnZW1hYWt0IGRvb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNFUgaG9vZyIsIjI0aF9sb3ciOiIyNFUgbGFhZyIsInZpZXdfcHJpY2VfY2hhcnQiOiJLb2Vyc2dyYWZpZWsgdmFuICV7Y29pbn0gYmVraWprZW4iLCJwb3dlcmVkX2J5IjoiTW9nZWxpamsgZ2VtYWFrdCBkb29yICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiJLb2Vyc2dyYWZpZWsgdmFuICV7Y29pbn0gYmVraWprZW4iLCJwb3dlcmVkX2J5IjoiTW9nZWxpamsgZ2VtYWFrdCBkb29yICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IkJvb21rYWFydCBjcnlwdG9jdXJyZW5jeVwncyIsInN1YnRpdGxlIjoiKFRvcCAle3RvcH0gbXVudGVuIG9wIG1hcmt0a2FwaXRhbGlzYXRpZSkiLCJwb3dlcmVkX2J5IjoiTW9nZWxpamsgZ2VtYWFrdCBkb29yICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiJEaXNjbGFpbWVyOiBEZXplIHRvb2xzIHppam4gYmVkb2VsZCBhbHMgZW50ZXJ0YWlubWVudCBlbiB2b3JtZW4gZ2VlbiBmaW5hbmNpZWVsIGFkdmllcy4iLCJzcGluIjoiRHJhYWllbiIsImF2YWlsYWJsZV9jb2lucyI6IkJlc2NoaWtiYXJlIG11bnRlbiJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyBwcmlqc3VwZGF0ZSIsInRvdGFsX21jYXAiOiJUb3RhbGUgbWFya3RrYXBpdGFsaXNhdGllIiwiMjRoX3ZvbCI6IjI0aCBWb2x1bWUiLCJkb20iOiJEb21pbmFudGllIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IkJldXJzIiwicGFpciI6IlBhYXIiLCJwcmljZSI6IlByaWpzIiwidm9sdW1lIjoiVm9sdW1lIiwidHJ1c3Rfc2NvcmUiOiJUcnVzdCBTY29yZSIsInZpZXdfcHJpY2VfY2hhcnQiOiJLb2Vyc2dyYWZpZWsgYmVraWprZW4iLCJwb3dlcmVkX2J5IjoiTW9nZWxpamsgZ2VtYWFrdCBkb29yICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJ2aWV3X2FsbCI6IkJla2lqayBhbGxlICV7Y29pbn0tbWFya3RlbiJ9fScpfSxhYTc3OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI1Y2ExIiksaT1uKCJiZTEzIiksYT1uKCI3OWU1Iiksbz1uKCJmZGVmIiksYz0iWyIrbysiXSIscz0i4oCLwoUiLHA9UmVnRXhwKCJeIitjK2MrIioiKSxsPVJlZ0V4cChjK2MrIiokIiksdT1mdW5jdGlvbihlLHQsbil7dmFyIGk9e30sYz1hKChmdW5jdGlvbigpe3JldHVybiEhb1tlXSgpfHxzW2VdKCkhPXN9KSkscD1pW2VdPWM/dChkKTpvW2VdO24mJihpW25dPXApLHIoci5QK3IuRipjLCJTdHJpbmciLGkpfSxkPXUudHJpbT1mdW5jdGlvbihlLHQpe3JldHVybiBlPVN0cmluZyhpKGUpKSwxJnQmJihlPWUucmVwbGFjZShwLCIiKSksMiZ0JiYoZT1lLnJlcGxhY2UobCwiIikpLGV9O2UuZXhwb3J0cz11fSxhYWUzOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkM2Y0IiksaT1uKCIyZDk1IiksYT1uKCIyYjRjIikoIm1hdGNoIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiByKGUpJiYodm9pZCAwIT09KHQ9ZVthXSk/ISF0OiJSZWdFeHAiPT1pKGUpKX19LGFjNmE6ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcj1uKCJjYWRmIiksaT1uKCIwZDU4IiksYT1uKCIyYWJhIiksbz1uKCI3NzI2IiksYz1uKCIzMmU5Iikscz1uKCI4NGYyIikscD1uKCIyYjRjIiksbD1wKCJpdGVyYXRvciIpLHU9cCgidG9TdHJpbmdUYWciKSxkPXMuQXJyYXksXz17Q1NTUnVsZUxpc3Q6ITAsQ1NTU3R5bGVEZWNsYXJhdGlvbjohMSxDU1NWYWx1ZUxpc3Q6ITEsQ2xpZW50UmVjdExpc3Q6ITEsRE9NUmVjdExpc3Q6ITEsRE9NU3RyaW5nTGlzdDohMSxET01Ub2tlbkxpc3Q6ITAsRGF0YVRyYW5zZmVySXRlbUxpc3Q6ITEsRmlsZUxpc3Q6ITEsSFRNTEFsbENvbGxlY3Rpb246ITEsSFRNTENvbGxlY3Rpb246ITEsSFRNTEZvcm1FbGVtZW50OiExLEhUTUxTZWxlY3RFbGVtZW50OiExLE1lZGlhTGlzdDohMCxNaW1lVHlwZUFycmF5OiExLE5hbWVkTm9kZU1hcDohMSxOb2RlTGlzdDohMCxQYWludFJlcXVlc3RMaXN0OiExLFBsdWdpbjohMSxQbHVnaW5BcnJheTohMSxTVkdMZW5ndGhMaXN0OiExLFNWR051bWJlckxpc3Q6ITEsU1ZHUGF0aFNlZ0xpc3Q6ITEsU1ZHUG9pbnRMaXN0OiExLFNWR1N0cmluZ0xpc3Q6ITEsU1ZHVHJhbnNmb3JtTGlzdDohMSxTb3VyY2VCdWZmZXJMaXN0OiExLFN0eWxlU2hlZXRMaXN0OiEwLFRleHRUcmFja0N1ZUxpc3Q6ITEsVGV4dFRyYWNrTGlzdDohMSxUb3VjaExpc3Q6ITF9LG09aShfKSxmPTA7ZjxtLmxlbmd0aDtmKyspe3ZhciBoLHY9bVtmXSx5PV9bdl0sZz1vW3ZdLHc9ZyYmZy5wcm90b3R5cGU7aWYodyYmKHdbbF18fGModyxsLGQpLHdbdV18fGModyx1LHYpLHNbdl09ZCx5KSlmb3IoaCBpbiByKXdbaF18fGEodyxoLHJbaF0sITApfX0sYWNlZDpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiWOG6v3AgaOG6oW5nIFbhu5FuIGjDs2EgdGjhu4sgdHLGsOG7nW5nIiwibWNhcCI6Ilbhu5FuIGjDs2EgdGjhu4sgdHLGsOG7nW5nIiwiMjRoX3ZvbHVtZSI6Ikto4buRaSBsxrDhu6NuZyB0cm9uZyAyNGgiLCIyNGhfaGlnaF9sb3ciOiJN4bupYyBjYW8gbmjhuqV0L3Ro4bqlcCBuaOG6pXQgdHJvbmcgMjQgZ2nhu50ifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoixJDGsOG7o2MgaOG7lyB0cuG7oyBi4bufaSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJTbyBzw6FuaCBnacOhIHRp4buBbiBtw6MgaMOzYSIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiJTbyBzw6FuaCBnacOhIHRy4buLIHbhu5FuIGjDs2EgdGjhu4sgdHLGsOG7nW5nIGPhu6dhIHRp4buBbiBtw6MgaMOzYSJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IsSQxrDhu6NjIGjhu5cgdHLhu6MgYuG7n2kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6IkNhbyB0cm9uZyAyNEgiLCIyNGhfbG93IjoiVGjhuqVwIHRyb25nIDI0SCIsInZpZXdfcHJpY2VfY2hhcnQiOiJYZW0gYmnhu4N1IMSR4buTIGdpw6EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLEkMaw4bujYyBo4buXIHRy4bujIGLhu59pICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoixJDGsOG7o2MgaOG7lyB0cuG7oyBi4bufaSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IsSQxrDhu6NjIGjhu5cgdHLhu6MgYuG7n2kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoixJDGsOG7o2MgaOG7lyB0cuG7oyBi4bufaSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IkNhbyB0cm9uZyAyNEgiLCIyNGhfbG93IjoiVGjhuqVwIHRyb25nIDI0SCIsInZpZXdfcHJpY2VfY2hhcnQiOiJYZW0gYmnhu4N1IMSR4buTIGdpw6EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLEkMaw4bujYyBo4buXIHRy4bujIGLhu59pICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiJYZW0gYmnhu4N1IMSR4buTIGdpw6EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLEkMaw4bujYyBo4buXIHRy4bujIGLhu59pICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IlPGoSDEkeG7kyBjw6J5IFRp4buBbiBtw6MgaMOzYSIsInN1YnRpdGxlIjoiKCV7dG9wfSBow6BuZyDEkeG6p3UgdGhlbyBnacOhIHRy4buLIHbhu5FuIGjDs2EgdGjhu4sgdHLGsOG7nW5nKSIsInBvd2VyZWRfYnkiOiLEkMaw4bujYyBo4buXIHRy4bujIGLhu59pICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiJUdXnDqm4gYuG7kSBtaeG7hW4gdHLhu6sgdHLDoWNoIG5oaeG7h206IEPDtG5nIGPhu6UgbsOgeSDEkcaw4bujYyBkw7luZyBjaG8gbeG7pWMgxJHDrWNoIGdp4bqjaSB0csOtIHbDoCBraMO0bmcgY+G6pXUgdGjDoG5oIHRow7RuZyB0aW4gdMawIHbhuqVuIHTDoGkgY2jDrW5oLiIsInNwaW4iOiLEkOG7k25nIFNwaW4iLCJhdmFpbGFibGVfY29pbnMiOiJUaeG7gW4g4bqjbyBraOG6oyBk4bulbmcifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiJD4bqtcCBuaOG6rXQgZ2nDoSB0csOqbiBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiVOG7lW5nIGdpw6EgdHLhu4sgduG7kW4gaMOzYSB0aOG7iyB0csaw4budbmciLCIyNGhfdm9sIjoiS2jhu5FpIGzGsOG7o25nIGdpYW8gZOG7i2NoIHRyb25nIDI0IGdp4budIiwiZG9tIjoixq91IHRo4bq/In0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IlPDoG4gZ2lhbyBk4buLY2giLCJwYWlyIjoiQ+G6t3AiLCJwcmljZSI6Ikdpw6EiLCJ2b2x1bWUiOiJLaOG7kWkgbMaw4bujbmciLCJ0cnVzdF9zY29yZSI6IsSQaeG7g20gdGluIGPhuq15Iiwidmlld19wcmljZV9jaGFydCI6IlhlbSBiaeG7g3UgxJHhu5MgZ2nDoSIsInBvd2VyZWRfYnkiOiLEkMaw4bujYyBo4buXIHRy4bujIGLhu59pICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJ2aWV3X2FsbCI6IlhlbSB04bqldCBj4bqjIGPDoWMgdGjhu4sgdHLGsOG7nW5nICV7Y29pbn0ifX0nKX0sYWViZDpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybntlbnVtZXJhYmxlOiEoMSZlKSxjb25maWd1cmFibGU6ISgyJmUpLHdyaXRhYmxlOiEoNCZlKSx2YWx1ZTp0fX19LGFmMDg6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6Itiq2LXZhtmK2YEg2KfZhNmC2YrZhdipINin2YTYs9mI2YLZitipIiwibWNhcCI6Itin2YTZgtmK2YXYqSDYp9mE2LPZiNmC2YrYqSAiLCIyNGhfdm9sdW1lIjoi2K3YrNmFINin2YTYqtiv2KfZiNmEINi52YTZiSDZhdiv2KfYsSAyNCDYs9in2LnYqSIsIjI0aF9oaWdoX2xvdyI6Itin2LHYqtmB2KfYuS/Yp9mG2K7Zgdin2LYg2LnZhNmJINmF2K/Yp9ixIDI0INiz2KfYudipIn0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6ItmF2K/YudmI2YUg2YXZhiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiLZhdmC2KfYsdmG2Kkg2LPYudixINin2YTYudmF2YTYp9iqINin2YTZhdi02YHYsdipIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6ItmF2YLYp9ix2YbYqSDYp9mE2YLZitmF2Kkg2KfZhNiz2YjZgtmK2Kkg2YTZhNi52YXZhNin2Kog2KfZhNmF2LTZgdix2KkifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLZhdiv2LnZiNmFINmF2YYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6ItmF2LHYqtmB2Lkg2LnZhNmJINmF2K/Yp9ixIDI0INiz2KfYudipIiwiMjRoX2xvdyI6ItmF2YbYrtmB2LYg2LnZhNmJINmF2K/Yp9ixIDI0INiz2KfYudipIiwidmlld19wcmljZV9jaGFydCI6Iti52LHYtiDYp9mE2LHYs9mFINin2YTYqNmK2KfZhtmKINmE2LPYudixICV7Y29pbn0iLCJwb3dlcmVkX2J5Ijoi2YXYr9i52YjZhSDZhdmGICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi2YXYr9i52YjZhSDZhdmGICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi2YXYr9i52YjZhSDZhdmGICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6ItmF2K/YudmI2YUg2YXZhiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6ItmF2LHYqtmB2Lkg2LnZhNmJINmF2K/Yp9ixIDI0INiz2KfYudipIiwiMjRoX2xvdyI6ItmF2YbYrtmB2LYg2LnZhNmJINmF2K/Yp9ixIDI0INiz2KfYudipIiwidmlld19wcmljZV9jaGFydCI6Iti52LHYtiAle2NvaW59INin2YTYsdiz2YUg2KfZhNio2YrYp9mG2Yog2YTZhNiz2LnYsSIsInBvd2VyZWRfYnkiOiLZhdiv2LnZiNmFINmF2YYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6Iti52LHYtiAle2NvaW59INin2YTYsdiz2YUg2KfZhNio2YrYp9mG2Yog2YTZhNiz2LnYsSIsInBvd2VyZWRfYnkiOiLZhdiv2LnZiNmFINmF2YYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoi2K7YsdmK2LfYqSDYtNis2LHYqSDYp9mE2LnZhdmE2KfYqiDYp9mE2YXYtNmB2LHYqSIsInN1YnRpdGxlIjoiKNij2YHYttmEICV7dG9wfSDZiNmB2YLZi9inINmE2YTZgtmK2YXYqSDYp9mE2LPZiNmC2YrYqSkiLCJwb3dlcmVkX2J5Ijoi2YXYr9i52YjZhSDZhdmGICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLYpdiu2YTYp9ihINin2YTZhdiz2KTZiNmE2YrYqTog2KrYs9iq2K7Yr9mFINmH2LDZhyDYp9mE2KPYr9mI2KfYqiDZg9ij2K/ZiNin2Kog2KrYsdmB2YrZh9mK2Kkg2YjZhNinINiq2LTZg9mR2YQg2YXYtNmI2LHYqSDZhdin2YTZitipLiIsInNwaW4iOiLYr9mI2LHYp9mGIiwiYXZhaWxhYmxlX2NvaW5zIjoi2LnZhdmE2KfYqiDZhdiq2KfYrdipIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoi2KrYrdiv2YrYqyDYs9i52LEgQ29pbkdlY2tvIiwidG90YWxfbWNhcCI6Itil2KzZhdin2YTZiiDYp9mE2YLZitmF2Kkg2KfZhNiz2YjZgtmK2KkiLCIyNGhfdm9sIjoi2KfZhNit2KzZhSDYudmE2Ykg2YXYr9in2LEgMjQg2LPYp9i52KkiLCJkb20iOiLYp9mE2YfZitmF2YbYqSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiLYqNmI2LHYtdipIiwicGFpciI6Itiy2YjYrCIsInByaWNlIjoi2KfZhNiz2LnYsSIsInZvbHVtZSI6Itin2YTYrdis2YUiLCJ0cnVzdF9zY29yZSI6ItmG2YLYp9i3INin2YTYq9mC2KkgVHJ1c3QgU2NvcmUiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi2LnYsdi2INin2YTYsdiz2YUg2KfZhNio2YrYp9mG2Yog2YTZhNiz2LnYsSIsInBvd2VyZWRfYnkiOiLZhdiv2LnZiNmFINmF2YYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoi2LnYsdi2INis2YXZiti5INij2LPZiNin2YIgJXtjb2lufSJ9fScpfSxhZjE0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpO24oIjc2MTgiKTtmdW5jdGlvbiByKCl7cmV0dXJuIG51bGwhPWRvY3VtZW50LmhlYWQuYXR0YWNoU2hhZG93JiZudWxsIT13aW5kb3cuY3VzdG9tRWxlbWVudHMmJm51bGwhPXdpbmRvdy5mZXRjaH19LGIwYzU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCI1MjBhIik7bigiNWNhMSIpKHt0YXJnZXQ6IlJlZ0V4cCIscHJvdG86ITAsZm9yY2VkOnIhPT0vLi8uZXhlY30se2V4ZWM6cn0pfSxiM2ZkOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiZjM2NyIpLGk9bigiMWI3ZiIpO2UuZXhwb3J0cz1mdW5jdGlvbigpe3ZhciBlPWkoKTtyZXR1cm4gcihTdHJpbmcucHJvdG90eXBlLHt0cmltOmV9LHt0cmltOmZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZy5wcm90b3R5cGUudHJpbSE9PWV9fSksZX19LGI0NDc6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjNhMzgiKSxpPU1hdGgubWluO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gZT4wP2kocihlKSw5MDA3MTk5MjU0NzQwOTkxKTowfX0sYjhlMzpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz0hMH0sYmE4ZDpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoi15PXqNeS16og16nXldeV15kg16nXldenIiwibWNhcCI6Itep15XXldeZINep15XXpyIsIjI0aF92b2x1bWUiOiLXoNek15cg157XodeX16gg15EtMjQg16nXoteV16oiLCIyNGhfaGlnaF9sb3ciOiLXqdeZ15Av16nXpNecINeRLTI0INep16LXldeqIn0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6Itee15XXpNei15wg16LXnCDXmdeT15kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoi15TXqdeV15XXkNeqINee15fXmdeo15kg157XmNeR16LXldeqINen16jXmdek15jXlSIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiLXlNep15XXldeQ16og16nXldeV15kg16nXldenINep15wg157XmNeR16LXldeqINen16jXmdek15jXlSJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6Itee15XXpNei15wg16LXnCDXmdeT15kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6Itep15nXkCDXkS0yNCDXqdei15XXqiIsIjI0aF9sb3ciOiLXqdek15wg15EtMjQg16nXoteV16oiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi15TXpteSINeQ16og15jXkdec16og15TXnteX15nXqNeZ150g16nXnCAle2NvaW59IiwicG93ZXJlZF9ieSI6Itee15XXpNei15wg16LXnCDXmdeT15kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLXnteV16TXotecINei15wg15nXk9eZICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi157Xldek16LXnCDXotecINeZ15PXmSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLXnteV16TXotecINei15wg15nXk9eZICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoi16nXmdeQINeRLTI0INep16LXldeqIiwiMjRoX2xvdyI6Itep16TXnCDXkS0yNCDXqdei15XXqiIsInZpZXdfcHJpY2VfY2hhcnQiOiLXlNem15Ig15DXqiDXmNeR15zXqiDXlNee15fXmdeo15nXnSDXqdecICV7Y29pbn0iLCJwb3dlcmVkX2J5Ijoi157Xldek16LXnCDXotecINeZ15PXmSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fY29udmVydGVyX3dpZGdldCI6eyJ2aWV3X3ByaWNlX2NoYXJ0Ijoi15TXpteSINeQ16og15jXkdec16og15TXnteX15nXqNeZ150g16nXnCAle2NvaW59IiwicG93ZXJlZF9ieSI6Itee15XXpNei15wg16LXnCDXmdeT15kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoi157XpNeqINeU16LXpSDXqdecINee15jXkdei15XXqiDXp9eo15nXpNeY15UiLCJzdWJ0aXRsZSI6Iigle3RvcH0g157XldeR15nXnNeZ150g15zXpNeZINep15XXldeZINep15XXpykiLCJwb3dlcmVkX2J5Ijoi157Xldek16LXnCDXotecINeZ15PXmSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoi15vXqteRINeV15nXqteV16g6INeb15zXmdedINeQ15zXlSDXntep157XqdeZ150g15zXpteV16jXmiDXkdeZ15PXldeoINeV15DXmdeg150g157XlNeV15XXmdedINeZ15nXoteV16Ug16TXmdeg16DXodeZLiIsInNwaW4iOiLXodeV15HXkSIsImF2YWlsYWJsZV9jb2lucyI6Itee15jXkdei15XXqiDXltee15nXoNeZ150ifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiLXoteT15vXldefINee15fXmdeo15kgQ29pbkdlY2tvIiwidG90YWxfbWNhcCI6Itep15XXldeZINep15XXpyDXm9eV15zXnCIsIjI0aF92b2wiOiLXoNek15cg15EtMjQg16nXoteV16oiLCJkb20iOiLXk9eV157Xmdeg16DXmNeZ15XXqiJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiLXkdeV16jXodeUIiwicGFpciI6Item157XkyIsInByaWNlIjoi157Xl9eZ16jXnteX15nXqCIsInZvbHVtZSI6Iteg16TXlyIsInRydXN0X3Njb3JlIjoi16bXmdeV158g15DXnteZ16DXldeqIiwidmlld19wcmljZV9jaGFydCI6IteU16bXkiDXmNeR15zXqiDXnteX15nXqNeZ150iLCJwb3dlcmVkX2J5Ijoi157Xldek16LXnCDXotecINeZ15PXmSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiLXlNem15Ig15DXqiDXm9ecINeU16nXldeV16fXmdedINep15wgJXtjb2lufSJ9fScpfSxiZTEzOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKHZvaWQgMD09ZSl0aHJvdyBUeXBlRXJyb3IoIkNhbid0IGNhbGwgbWV0aG9kIG9uICAiK2UpO3JldHVybiBlfX0sYmYwYjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMzU1ZCIpLGk9bigiYWViZCIpLGE9bigiMzZjMyIpLG89bigiMWJjMyIpLGM9bigiMDdlMyIpLHM9bigiNzk0YiIpLHA9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcjt0LmY9bigiOGU2MCIpP3A6ZnVuY3Rpb24oZSx0KXtpZihlPWEoZSksdD1vKHQsITApLHMpdHJ5e3JldHVybiBwKGUsdCl9Y2F0Y2gobil7fWlmKGMoZSx0KSlyZXR1cm4gaSghci5mLmNhbGwoZSx0KSxlW3RdKX19LGJmMGY6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIEx9KSk7dmFyIHI9bigiNzYxOCIpLGk9bigiYWYwOCIpLGE9bigiZGNkMCIpLG89bigiYzY4NiIpLGM9bigiMjFhYSIpLHM9bigiNmNlMiIpLHA9bigiZjE4NCIpLGw9bigiZWRkNCIpLHU9bigiYTMwNiIpLGQ9bigiNTc1NCIpLF89bigiZjY5MyIpLG09bigiYmE4ZCIpLGY9bigiN2EwMyIpLGg9bigiOTJkNyIpLHY9bigiNGU3MyIpLHk9bigiMjEwYyIpLGc9bigiMDgyNSIpLHc9bigiMDQyMyIpLGI9bigiZGQxMSIpLGs9bigiNjA0NSIpLHg9bigiYTYyNSIpLEM9bigiZjk0NyIpLFM9bigiODliMiIpLFA9bigiNWQ2NyIpLGo9bigiOTU0MiIpLE89bigiNzcwNCIpLEE9bigiM2RhOSIpLEU9bigiZDM0YSIpLFQ9bigiNGM1YiIpLEQ9bigiODY4MCIpLHo9bigiZmZlYiIpLE09bigiNjJlYSIpLCQ9bigiYWNlZCIpLE49bigiMzUwNCIpLEk9bigiMDU2YyIpLEY9e2FyOmksYmc6YSxjczpvLGRhOmMsZGU6cyxlbDpwLGVuOmwsZXM6dSxmaTpkLGZyOl8saGU6bSxoaTpmLGhyOmgsaHU6dixpZDp5LGl0OmcsamE6dyxrbzpiLGx0Omssbmw6eCxubzpDLHBsOlMscHQ6UCxybzpqLHJ1Ok8sc2s6QSxzbDpFLHN2OlQsdGg6RCx0cjp6LHVrOk0sdmk6JCx6aDpOLCJ6aC10dyI6SX07ZnVuY3Rpb24gTChlKXt2YXIgdD1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06ImVuIjtyZXR1cm4gUihGW2VdLEZbdF0pfWZ1bmN0aW9uIFIoZSx0KXt2YXIgbj1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHQpKTtmb3IodmFyIGkgaW4gbil7dmFyIGE9ZVtpXSxvPW5baV07aWYoYSYmbylpZigib2JqZWN0Ij09PU9iamVjdChyWyJhIl0pKGEpJiYib2JqZWN0Ij09PU9iamVjdChyWyJhIl0pKG8pKWZvcih2YXIgYyBpbiBlW2ldKW5baV1bY109ZVtpXVtjXTtlbHNlIG5baV09ZVtpXX1yZXR1cm4gbn10WyJhIl09Rn0sYzFlMjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjJiMGUiKSxpPW4oIjI4OGEiKSxhPW4ubihpKSxvPW4oImJmMGYiKSxjPWZ1bmN0aW9uKCl7cmV0dXJuIHJbImEiXS5taXhpbih7ZGF0YTpmdW5jdGlvbigpe3JldHVybntwb2x5Z2xvdDpuZXcgYS5hKHtwaHJhc2VzOk9iamVjdChvWyJiIl0pKCJlbiIpfSl9fSxtZXRob2RzOntyZWxvYWRMb2NhbGU6ZnVuY3Rpb24oKXtpZih2b2lkIDAhPT10aGlzLmxvY2FsZSl7aWYoIW9bImEiXVt0aGlzLmxvY2FsZV0pdGhyb3cgbmV3IEVycm9yKCJMb2NhbGUgbm90IHN1cHBvcnRlZCBieSB3aWRnZXQuIENvbnRhY3Qgc3VwcG9ydEBjb2luZ2Vja28uY29tIGZvciBoZWxwLiIpO3RoaXMucG9seWdsb3Q9bmV3IGEuYSh7cGhyYXNlczpPYmplY3Qob1siYiJdKSh0aGlzLmxvY2FsZSwiZW4iKX0pfX19LHdhdGNoOntsb2NhbGU6ZnVuY3Rpb24oKXt0aGlzLnJlbG9hZExvY2FsZSgpfX0sY3JlYXRlZDpmdW5jdGlvbigpe3RoaXMucmVsb2FkTG9jYWxlKCl9fSl9O3RbImEiXT1jfSxjMjA3OmZ1bmN0aW9uKGUsdCl7fSxjMzY2OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI2ODIxIiksaT1uKCI5ZGVmIiksYT1uKCI3N2YxIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0LG4sbyl7dmFyIGMscz1yKHQpLHA9aShzLmxlbmd0aCksbD1hKG8scCk7aWYoZSYmbiE9bil7d2hpbGUocD5sKWlmKGM9c1tsKytdLGMhPWMpcmV0dXJuITB9ZWxzZSBmb3IoO3A+bDtsKyspaWYoKGV8fGwgaW4gcykmJnNbbF09PT1uKXJldHVybiBlfHxsfHwwO3JldHVybiFlJiYtMX19fSxjMzY3OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiODQzNiIpLGk9bigiNTBlZCIpLGE9bigiNDgxYiIpLG89bigiMzZjMyIpO2UuZXhwb3J0cz1uKCIzMGYxIikoQXJyYXksIkFycmF5IiwoZnVuY3Rpb24oZSx0KXt0aGlzLl90PW8oZSksdGhpcy5faT0wLHRoaXMuX2s9dH0pLChmdW5jdGlvbigpe3ZhciBlPXRoaXMuX3QsdD10aGlzLl9rLG49dGhpcy5faSsrO3JldHVybiFlfHxuPj1lLmxlbmd0aD8odGhpcy5fdD12b2lkIDAsaSgxKSk6aSgwLCJrZXlzIj09dD9uOiJ2YWx1ZXMiPT10P2Vbbl06W24sZVtuXV0pfSksInZhbHVlcyIpLGEuQXJndW1lbnRzPWEuQXJyYXkscigia2V5cyIpLHIoInZhbHVlcyIpLHIoImVudHJpZXMiKX0sYzNhMTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZTZmMyIpLGk9bigiMTY5MSIpO2UuZXhwb3J0cz1PYmplY3Qua2V5c3x8ZnVuY3Rpb24oZSl7cmV0dXJuIHIoZSxpKX19LGM1ZjY6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCI3NzI2IiksaT1uKCI2OWE4IiksYT1uKCIyZDk1Iiksbz1uKCI1ZGJjIiksYz1uKCI2YTk5Iikscz1uKCI3OWU1IikscD1uKCI5MDkzIikuZixsPW4oIjExZTkiKS5mLHU9bigiODZjYyIpLmYsZD1uKCJhYTc3IikudHJpbSxfPSJOdW1iZXIiLG09cltfXSxmPW0saD1tLnByb3RvdHlwZSx2PWEobigiMmFlYiIpKGgpKT09Xyx5PSJ0cmltImluIFN0cmluZy5wcm90b3R5cGUsZz1mdW5jdGlvbihlKXt2YXIgdD1jKGUsITEpO2lmKCJzdHJpbmciPT10eXBlb2YgdCYmdC5sZW5ndGg+Mil7dD15P3QudHJpbSgpOmQodCwzKTt2YXIgbixyLGksYT10LmNoYXJDb2RlQXQoMCk7aWYoNDM9PT1hfHw0NT09PWEpe2lmKG49dC5jaGFyQ29kZUF0KDIpLDg4PT09bnx8MTIwPT09bilyZXR1cm4gTmFOfWVsc2UgaWYoNDg9PT1hKXtzd2l0Y2godC5jaGFyQ29kZUF0KDEpKXtjYXNlIDY2OmNhc2UgOTg6cj0yLGk9NDk7YnJlYWs7Y2FzZSA3OTpjYXNlIDExMTpyPTgsaT01NTticmVhaztkZWZhdWx0OnJldHVybit0fWZvcih2YXIgbyxzPXQuc2xpY2UoMikscD0wLGw9cy5sZW5ndGg7cDxsO3ArKylpZihvPXMuY2hhckNvZGVBdChwKSxvPDQ4fHxvPmkpcmV0dXJuIE5hTjtyZXR1cm4gcGFyc2VJbnQocyxyKX19cmV0dXJuK3R9O2lmKCFtKCIgMG8xIil8fCFtKCIwYjEiKXx8bSgiKzB4MSIpKXttPWZ1bmN0aW9uKGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg8MT8wOmUsbj10aGlzO3JldHVybiBuIGluc3RhbmNlb2YgbSYmKHY/cygoZnVuY3Rpb24oKXtoLnZhbHVlT2YuY2FsbChuKX0pKTphKG4pIT1fKT9vKG5ldyBmKGcodCkpLG4sbSk6Zyh0KX07Zm9yKHZhciB3LGI9bigiOWUxZSIpP3AoZik6Ik1BWF9WQUxVRSxNSU5fVkFMVUUsTmFOLE5FR0FUSVZFX0lORklOSVRZLFBPU0lUSVZFX0lORklOSVRZLEVQU0lMT04saXNGaW5pdGUsaXNJbnRlZ2VyLGlzTmFOLGlzU2FmZUludGVnZXIsTUFYX1NBRkVfSU5URUdFUixNSU5fU0FGRV9JTlRFR0VSLHBhcnNlRmxvYXQscGFyc2VJbnQsaXNJbnRlZ2VyIi5zcGxpdCgiLCIpLGs9MDtiLmxlbmd0aD5rO2srKylpKGYsdz1iW2tdKSYmIWkobSx3KSYmdShtLHcsbChmLHcpKTttLnByb3RvdHlwZT1oLGguY29uc3RydWN0b3I9bSxuKCIyYWJhIikocixfLG0pfX0sYzY0OTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKSxuLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIGF9KSksbi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBvfSkpO24oImE0ODEiKSxuKCI1ZGYzIiksbigiYWM2YSIpO2Z1bmN0aW9uIHIoZSl7dmFyIHQ9W107cmV0dXJuIGUuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dC5wdXNoKG5ldyBQcm9taXNlKChmdW5jdGlvbih0LG4pe2koZSx0LG4pfSkpKX0pKSxQcm9taXNlLmFsbCh0KX1mdW5jdGlvbiBpKGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpmdW5jdGlvbigpe30sbj1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06ZnVuY3Rpb24oKXt9LHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7ci5zcmM9ZS5zcmMsci5jcm9zc09yaWdpbj0iYW5vbnltb3VzIixyLmludGVncml0eT1lLmludGVncml0eSxyLm9ubG9hZD10LHIub25lcnJvcj1mdW5jdGlvbigpe24obmV3IEVycm9yKCJGYWlsZWQgdG8gbG9hZCBzY3JpcHQgIitlLnNyYykpfSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHIpfWZ1bmN0aW9uIGEoZSx0LG4pe3ZhciByO3JldHVybiBmdW5jdGlvbigpe3ZhciBpPXRoaXMsYT1hcmd1bWVudHMsbz1mdW5jdGlvbigpe3I9bnVsbCxufHxlLmFwcGx5KGksYSl9LGM9biYmIXI7Y2xlYXJUaW1lb3V0KHIpLHI9c2V0VGltZW91dChvLHQpLGMmJmUuYXBwbHkoaSxhKX19ZnVuY3Rpb24gbyhlKXt2YXIgdD1bXS5zbGljZSxuPTE8PWFyZ3VtZW50cy5sZW5ndGg/dC5jYWxsKGFyZ3VtZW50cywwKTpbXSxyPS8oXnxbXHNcbl18PFtBLVphLXpdKlwvPz4pKCg/Omh0dHBzP3xmdHApOlwvXC9bXC1BLVowLTkrXHUwMDI2XHUyMDE5QCNcLyU/PSgpfl98ITosLjtdKltcLUEtWjAtOStcdTAwMjZAI1wvJT1+KClffF0pL2dpO3JldHVybiBuLmxlbmd0aD4wP2UucmVwbGFjZShyLChmdW5jdGlvbihlLHQsbil7dmFyIHI9JzxhIGhyZWY9IicrbisnIiBjbGFzcz0iY2ctcHJpbWFyeS1jb2xvci1kYXJrIGNnLW5vLXVuZGVybGluZSIgdGFyZ2V0PSJfYmxhbmsiPicrbisiPC9hPiI7cmV0dXJuIiIrdCtyfSkpOmUucmVwbGFjZShyLCckMTxhIGNsYXNzPSJjZy1wcmltYXJ5LWNvbG9yLWRhcmsgY2ctbm8tdW5kZXJsaW5lIiB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iJDIiPiQyPC9hPicpfX0sYzY4NjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiUG/FmWFkw60gcG9kbGUgdHLFvm7DrSBrYXBpdGFsaXphY2UiLCJtY2FwIjoiVHLFvm7DrSBrYXBpdGFsaXphY2UiLCIyNGhfdm9sdW1lIjoiT2JqZW0gemEgMjQgaG9kLiIsIjI0aF9oaWdoX2xvdyI6Ik5lanZ5xaHFocOtL25lam5pxb7FocOtIHphIDI0IGhvZC4ifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVnl1xb7DrXbDoSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJTcm92bsOhbsOtIGNlbiBrcnlwdG9txJtuIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IlNyb3Zuw6Fuw60ga2FwaXRhbGl6YWNlIGtyeXB0byB0cmh1In0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVnl1xb7DrXbDoSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTmVqdnnFocWhw60gemEgMjQgaG9kLiIsIjI0aF9sb3ciOiJOZWpuacW+xaHDrSB6YSAyNCBob2QuIiwidmlld19wcmljZV9jaGFydCI6IlpvYnJheml0IGNlbm92w70gZ3JhZiAle2NvaW59IiwicG93ZXJlZF9ieSI6IlZ5dcW+w612w6EgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJWeXXFvsOtdsOhICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVnl1xb7DrXbDoSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJWeXXFvsOtdsOhICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTmVqdnnFocWhw60gemEgMjQgaG9kLiIsIjI0aF9sb3ciOiJOZWpuacW+xaHDrSB6YSAyNCBob2QuIiwidmlld19wcmljZV9jaGFydCI6IlpvYnJheml0IGNlbm92w70gZ3JhZiAle2NvaW59IiwicG93ZXJlZF9ieSI6IlZ5dcW+w612w6EgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlpvYnJheml0IGNlbm92w70gZ3JhZiAle2NvaW59IiwicG93ZXJlZF9ieSI6IlZ5dcW+w612w6EgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoiU3Ryb21vdsOhIG1hcGEga3J5cHRvbcSbbiIsInN1YnRpdGxlIjoiKE5laiAle3RvcH0gcG9kbGUgdHLFvm7DrSBrYXBpdGFsaXphY2UpIiwicG93ZXJlZF9ieSI6IlZ5dcW+w612w6EgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6Ik9kbcOtdG51dMOtIG9kcG92xJtkbm9zdGk6IHR5dG8gbsOhc3Ryb2plIHNsb3XFvsOtIHBybyB6w6FiYXZ1IGEgbmVwxZllZHN0YXZ1asOtIGZvcm11IGZpbmFuxI1uw61obyBwb3JhZGVuc3R2w60uIiwic3BpbiI6IlJvenRvxI1pdCIsImF2YWlsYWJsZV9jb2lucyI6IkRvc3R1cG7DqSBtaW5jZSJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkFrdHVhbGl6YWNlIGNlbnkgQ29pbkdlY2tvIiwidG90YWxfbWNhcCI6IkNlbGtvdsOhIHRyxb5uw60ga2FwLiIsIjI0aF92b2wiOiJPYmplbSAoMjQgaC4pIiwiZG9tIjoiRG9tIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IkJ1cnphIiwicGFpciI6IlDDoXIiLCJwcmljZSI6IkNlbmEiLCJ2b2x1bWUiOiJPYmplbSIsInRydXN0X3Njb3JlIjoiU2vDs3JlIGTFr3bEm3J5aG9kbm9zdGkiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiWm9icmF6aXQgY2Vub3bDvSBncmFmIiwicG93ZXJlZF9ieSI6IlZ5dcW+w612w6EgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiWm9icmF6aXQgdsWhZWNobnkgdHJoeSBwcm8gJXtjb2lufSJ9fScpfSxjNjlhOmZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9IW4oIjllMWUiKSYmIW4oIjc5ZTUiKSgoZnVuY3Rpb24oKXtyZXR1cm4gNyE9T2JqZWN0LmRlZmluZVByb3BlcnR5KG4oIjIzMGUiKSgiZGl2IiksImEiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gN319KS5hfSkpfSxjODk0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7Ci8qKgogICogdnVlLWN1c3RvbS1lbGVtZW50IHYzLjIuNgogICogKGMpIDIwMTggS2Fyb2wgRmFiamHFhGN6dWsKICAqIEBsaWNlbnNlIE1JVAogICovZnVuY3Rpb24gcihlLHQpe3JldHVybiBlLl9fcHJvdG9fXz10LGV9T2JqZWN0LnNldFByb3RvdHlwZU9mPU9iamVjdC5zZXRQcm90b3R5cGVPZnx8cjtyLmJpbmQoT2JqZWN0KTtmdW5jdGlvbiBpKCl7cmV0dXJuInVuZGVmaW5lZCIhPT10eXBlb2YgU3ltYm9sJiYidW5kZWZpbmVkIiE9PXR5cGVvZiBSZWZsZWN0JiYidW5kZWZpbmVkIiE9PXR5cGVvZiBQcm94eSYmIU9iamVjdC5pc1NlYWxlZChQcm94eSl9dmFyIGE9aSgpLG89ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUsdCl7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciByPXRbbl07ci5lbnVtZXJhYmxlPXIuZW51bWVyYWJsZXx8ITEsci5jb25maWd1cmFibGU9ITAsInZhbHVlImluIHImJihyLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxyLmtleSxyKX19cmV0dXJuIGZ1bmN0aW9uKHQsbixyKXtyZXR1cm4gbiYmZSh0LnByb3RvdHlwZSxuKSxyJiZlKHQsciksdH19KCk7ZnVuY3Rpb24gYyhlLHQpe2lmKCEoZSBpbnN0YW5jZW9mIHQpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvbiIpfWZ1bmN0aW9uIHMoZSx0KXtpZighZSl0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IoInRoaXMgaGFzbid0IGJlZW4gaW5pdGlhbGlzZWQgLSBzdXBlcigpIGhhc24ndCBiZWVuIGNhbGxlZCIpO3JldHVybiF0fHwib2JqZWN0IiE9PXR5cGVvZiB0JiYiZnVuY3Rpb24iIT09dHlwZW9mIHQ/ZTp0fWZ1bmN0aW9uIHAoZSx0KXtpZigiZnVuY3Rpb24iIT09dHlwZW9mIHQmJm51bGwhPT10KXRocm93IG5ldyBUeXBlRXJyb3IoIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uLCBub3QgIit0eXBlb2YgdCk7ZS5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZSh0JiZ0LnByb3RvdHlwZSx7Y29uc3RydWN0b3I6e3ZhbHVlOmUsZW51bWVyYWJsZTohMSx3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9fSksdCYmKE9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YoZSx0KTplLl9fcHJvdG9fXz10KX1mdW5jdGlvbiBsKCl7cmV0dXJuIFJlZmxlY3QuY29uc3RydWN0KEhUTUxFbGVtZW50LFtdLHRoaXMuX19wcm90b19fLmNvbnN0cnVjdG9yKX1mdW5jdGlvbiB1KGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7fTtpZigidW5kZWZpbmVkIiE9PXR5cGVvZiBjdXN0b21FbGVtZW50cyl7aWYoYSl7dmFyIG49ZnVuY3Rpb24oZSl7ZnVuY3Rpb24gbihlKXt2YXIgdDtjKHRoaXMsbik7dmFyIHI9cyh0aGlzLChuLl9fcHJvdG9fX3x8T2JqZWN0LmdldFByb3RvdHlwZU9mKG4pKS5jYWxsKHRoaXMpKSxhPWU/SFRNTEVsZW1lbnQuY2FsbChlKTpyO3JldHVybiBpLmNhbGwoYSksdD1hLHMocix0KX1yZXR1cm4gcChuLGUpLG8obixudWxsLFt7a2V5OiJvYnNlcnZlZEF0dHJpYnV0ZXMiLGdldDpmdW5jdGlvbigpe3JldHVybiB0Lm9ic2VydmVkQXR0cmlidXRlc3x8W119fV0pLG59KGwpO3JldHVybiBuLnByb3RvdHlwZS5jb25uZWN0ZWRDYWxsYmFjaz11LG4ucHJvdG90eXBlLmRpc2Nvbm5lY3RlZENhbGxiYWNrPWQsbi5wcm90b3R5cGUuYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrPV8sbShlLG4pLG59dmFyIHI9ZnVuY3Rpb24oZSl7dmFyIHQ9ZT9IVE1MRWxlbWVudC5jYWxsKGUpOnRoaXM7cmV0dXJuIGkuY2FsbCh0KSx0fTtyZXR1cm4gci5vYnNlcnZlZEF0dHJpYnV0ZXM9dC5vYnNlcnZlZEF0dHJpYnV0ZXN8fFtdLHIucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJvdG90eXBlLHtjb25zdHJ1Y3Rvcjp7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnJ9fSksci5wcm90b3R5cGUuY29ubmVjdGVkQ2FsbGJhY2s9dSxyLnByb3RvdHlwZS5kaXNjb25uZWN0ZWRDYWxsYmFjaz1kLHIucHJvdG90eXBlLmF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjaz1fLG0oZSxyKSxyfWZ1bmN0aW9uIGkoKXshMD09PXQuc2hhZG93JiZIVE1MRWxlbWVudC5wcm90b3R5cGUuYXR0YWNoU2hhZG93JiZ0aGlzLmF0dGFjaFNoYWRvdyh7bW9kZToib3BlbiJ9KSwiZnVuY3Rpb24iPT09dHlwZW9mIHQuY29uc3RydWN0b3JDYWxsYmFjayYmdC5jb25zdHJ1Y3RvckNhbGxiYWNrLmNhbGwodGhpcyl9ZnVuY3Rpb24gdSgpeyJmdW5jdGlvbiI9PT10eXBlb2YgdC5jb25uZWN0ZWRDYWxsYmFjayYmdC5jb25uZWN0ZWRDYWxsYmFjay5jYWxsKHRoaXMpfWZ1bmN0aW9uIGQoKXsiZnVuY3Rpb24iPT09dHlwZW9mIHQuZGlzY29ubmVjdGVkQ2FsbGJhY2smJnQuZGlzY29ubmVjdGVkQ2FsbGJhY2suY2FsbCh0aGlzKX1mdW5jdGlvbiBfKGUsbixyKXsiZnVuY3Rpb24iPT09dHlwZW9mIHQuYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrJiZ0LmF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjay5jYWxsKHRoaXMsZSxuLHIpfWZ1bmN0aW9uIG0oZSx0KXt2YXIgbj1jdXN0b21FbGVtZW50cy5nZXQoZSk7cmV0dXJuInVuZGVmaW5lZCIhPT10eXBlb2Ygbj9uOmN1c3RvbUVsZW1lbnRzLmRlZmluZShlLHQpfX1PYmplY3Quc2V0UHJvdG90eXBlT2YobC5wcm90b3R5cGUsSFRNTEVsZW1lbnQucHJvdG90eXBlKSxPYmplY3Quc2V0UHJvdG90eXBlT2YobCxIVE1MRWxlbWVudCk7dmFyIGQ9Ly0oXHcpL2csXz1mdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKGQsKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ/dC50b1VwcGVyQ2FzZSgpOiIifSkpfSxtPS8oW14tXSkoW0EtWl0pL2csZj1mdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKG0sIiQxLSQyIikucmVwbGFjZShtLCIkMS0kMiIpLnRvTG93ZXJDYXNlKCl9O2Z1bmN0aW9uIGgoZSl7dmFyIHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjAsbj1lLmxlbmd0aC10LHI9bmV3IEFycmF5KG4pO3doaWxlKG4tLSlyW25dPWVbbit0XTtyZXR1cm4gcn12YXIgdj0iZnVuY3Rpb24iPT09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKGUpe3JldHVybiB0eXBlb2YgZX06ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJiJmdW5jdGlvbiI9PT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX07ZnVuY3Rpb24geShlLHQpe3ZhciBuPWUscj1bInRydWUiLCJmYWxzZSJdLmluZGV4T2YoZSk+LTEsaT1wYXJzZUZsb2F0KG4sMTApLGE9IWlzTmFOKGkpJiZpc0Zpbml0ZShuKSYmInN0cmluZyI9PT10eXBlb2YgbiYmIW4ubWF0Y2goL14wK1teLl1cZCokL2cpO3JldHVybiB0JiZ0IT09Qm9vbGVhbiYmKCJ1bmRlZmluZWQiPT09dHlwZW9mIG4/InVuZGVmaW5lZCI6dihuKSkhPT10P249dChlKTpyfHx0PT09Qm9vbGVhbj9uPSIiPT09bnx8InRydWUiPT09bjphJiYobj1pKSxufWZ1bmN0aW9uIGcoZSx0KXtpZihlJiZlLmxlbmd0aCllLmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciBuPV8oZSk7LTE9PT10LmNhbWVsQ2FzZS5pbmRleE9mKG4pJiZ0LmNhbWVsQ2FzZS5wdXNoKG4pfSkpO2Vsc2UgaWYoZSYmIm9iamVjdCI9PT0oInVuZGVmaW5lZCI9PT10eXBlb2YgZT8idW5kZWZpbmVkIjp2KGUpKSlmb3IodmFyIG4gaW4gZSl7dmFyIHI9XyhuKTstMT09PXQuY2FtZWxDYXNlLmluZGV4T2YocikmJnQuY2FtZWxDYXNlLnB1c2gociksZVtyXSYmZVtyXS50eXBlJiYodC50eXBlc1tuXT1bXS5jb25jYXQoZVtyXS50eXBlKVswXSl9fWZ1bmN0aW9uIHcoKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30sdD17Y2FtZWxDYXNlOltdLGh5cGhlbmF0ZTpbXSx0eXBlczp7fX07aWYoZS5taXhpbnMmJmUubWl4aW5zLmZvckVhY2goKGZ1bmN0aW9uKGUpe2coZS5wcm9wcyx0KX0pKSxlLmV4dGVuZHMmJmUuZXh0ZW5kcy5wcm9wcyl7dmFyIG49ZS5leHRlbmRzLnByb3BzO2cobix0KX1yZXR1cm4gZyhlLnByb3BzLHQpLHQuY2FtZWxDYXNlLmZvckVhY2goKGZ1bmN0aW9uKGUpe3QuaHlwaGVuYXRlLnB1c2goZihlKSl9KSksdH1mdW5jdGlvbiBiKGUsdCl7dC5jYW1lbENhc2UuZm9yRWFjaCgoZnVuY3Rpb24obixyKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fW25dfSxzZXQ6ZnVuY3Rpb24oZSl7aWYoIm9iamVjdCIhPT0oInVuZGVmaW5lZCI9PT10eXBlb2YgZT8idW5kZWZpbmVkIjp2KGUpKSYmImZ1bmN0aW9uIiE9PXR5cGVvZiBlfHwhdGhpcy5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fKXt2YXIgbj10LnR5cGVzW3QuY2FtZWxDYXNlW3JdXTt0aGlzLnNldEF0dHJpYnV0ZSh0Lmh5cGhlbmF0ZVtyXSx5KGUsbikpfWVsc2V7dmFyIGk9dC5jYW1lbENhc2Vbcl07dGhpcy5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fW2ldPWV9fX0pfSkpfWZ1bmN0aW9uIGsoZSx0LG4pe3ZhciByPXQucHJvcHNEYXRhfHx7fTtyZXR1cm4gbi5oeXBoZW5hdGUuZm9yRWFjaCgoZnVuY3Rpb24odCxpKXt2YXIgYT1uLmNhbWVsQ2FzZVtpXSxvPWUuYXR0cmlidXRlc1t0XXx8ZVthXSxjPW51bGw7bi50eXBlc1thXSYmKGM9bi50eXBlc1thXSksbyBpbnN0YW5jZW9mIEF0dHI/clthXT15KG8udmFsdWUsYyk6InVuZGVmaW5lZCIhPT10eXBlb2YgbyYmKHJbYV09byl9KSkscn1mdW5jdGlvbiB4KGUpe3ZhciB0PXt9O3JldHVybiBoKGUuYXR0cmlidXRlcykuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dFsidnVlLXNsb3QiPT09ZS5ub2RlTmFtZT8ic2xvdCI6ZS5ub2RlTmFtZV09ZS5ub2RlVmFsdWV9KSksdH1mdW5jdGlvbiBDKGUpe2lmKGUuY2hpbGROb2Rlcy5sZW5ndGgpcmV0dXJuIGUuY2hpbGROb2RlcztpZihlLmNvbnRlbnQmJmUuY29udGVudC5jaGlsZE5vZGVzJiZlLmNvbnRlbnQuY2hpbGROb2Rlcy5sZW5ndGgpcmV0dXJuIGUuY29udGVudC5jaGlsZE5vZGVzO3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3JldHVybiB0LmlubmVySFRNTD1lLmlubmVySFRNTCx0LmNoaWxkTm9kZXN9ZnVuY3Rpb24gUyhlLHQsbil7dmFyIHI9Qyh0KSxpPWgocikubWFwKChmdW5jdGlvbih0KXtyZXR1cm4iI3RleHQiPT09dC5ub2RlTmFtZT90Lm5vZGVWYWx1ZTplKHQudGFnTmFtZSx7YXR0cnM6eCh0KSxkb21Qcm9wczp7aW5uZXJIVE1MOnQuaW5uZXJIVE1MfX0pfSkpO3JldHVybiBuLnNsb3Q9dC5pZCxlKCJ0ZW1wbGF0ZSIsbixpKX1mdW5jdGlvbiBQKCl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOltdLHQ9YXJndW1lbnRzWzFdLG49W107cmV0dXJuIGgoZSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7aWYoIiN0ZXh0Ij09PWUubm9kZU5hbWUpZS5ub2RlVmFsdWUudHJpbSgpJiZuLnB1c2godCgic3BhbiIsZS5ub2RlVmFsdWUpKTtlbHNlIGlmKCIjY29tbWVudCIhPT1lLm5vZGVOYW1lKXt2YXIgcj14KGUpLGk9e2F0dHJzOnIsZG9tUHJvcHM6e2lubmVySFRNTDoiIj09PWUuaW5uZXJIVE1MP2UuaW5uZXJUZXh0OmUuaW5uZXJIVE1MfX07ci5zbG90JiYoaS5zbG90PXIuc2xvdCxyLnNsb3Q9dm9pZCAwKTt2YXIgYT0iVEVNUExBVEUiPT09ZS50YWdOYW1lP1ModCxlLGkpOnQoZS50YWdOYW1lLGkpO24ucHVzaChhKX19KSksbn1mdW5jdGlvbiBqKGUsdCl7dmFyIG49e2J1YmJsZXM6ITEsY2FuY2VsYWJsZTohMSxkZXRhaWw6dH0scj12b2lkIDA7cmV0dXJuImZ1bmN0aW9uIj09PXR5cGVvZiB3aW5kb3cuQ3VzdG9tRXZlbnQ/cj1uZXcgQ3VzdG9tRXZlbnQoZSxuKToocj1kb2N1bWVudC5jcmVhdGVFdmVudCgiQ3VzdG9tRXZlbnQiKSxyLmluaXRDdXN0b21FdmVudChlLG4uYnViYmxlcyxuLmNhbmNlbGFibGUsbi5kZXRhaWwpKSxyfWZ1bmN0aW9uIE8oZSx0KXtmb3IodmFyIG49YXJndW1lbnRzLmxlbmd0aCxyPUFycmF5KG4+Mj9uLTI6MCksaT0yO2k8bjtpKyspcltpLTJdPWFyZ3VtZW50c1tpXTt2YXIgYT1qKHQsW10uY29uY2F0KHIpKTtlLmRpc3BhdGNoRXZlbnQoYSl9ZnVuY3Rpb24gQShlLHQsbixyLGkpe2lmKCFlLl9fdnVlX2N1c3RvbV9lbGVtZW50X18pe3ZhciBhPWZ1bmN0aW9uKCl7dGhpcy4kZW1pdD1mdW5jdGlvbigpe2Zvcih2YXIgdCxuPWFyZ3VtZW50cy5sZW5ndGgscj1BcnJheShuKSxpPTA7aTxuO2krKylyW2ldPWFyZ3VtZW50c1tpXTtPLmFwcGx5KHZvaWQgMCxbZV0uY29uY2F0KHIpKSx0aGlzLl9fcHJvdG9fXyYmKHQ9dGhpcy5fX3Byb3RvX18uJGVtaXQpLmNhbGwuYXBwbHkodCxbdGhpc10uY29uY2F0KHIpKX19LG89dC51dGlsLmV4dGVuZCh7fSxuKSxjPWsoZSxvLHIpLHM9dC52ZXJzaW9uJiZwYXJzZUludCh0LnZlcnNpb24uc3BsaXQoIi4iKVswXSwxMCl8fDA7aWYoby5iZWZvcmVDcmVhdGU9W10uY29uY2F0KG8uYmVmb3JlQ3JlYXRlfHxbXSxhKSxvLl9jb21waWxlZCl7dmFyIHA9e307by5fQ3RvciYmKHA9T2JqZWN0LnZhbHVlcyhvLl9DdG9yKVswXS5vcHRpb25zKSxwLmJlZm9yZUNyZWF0ZT1vLmJlZm9yZUNyZWF0ZX12YXIgbD12b2lkIDA7aWYocz49Mil7dmFyIHU9ZS5jbG9uZU5vZGUoITApLmNoaWxkTm9kZXM7bD17cHJvcHNEYXRhOmMscHJvcHM6ci5jYW1lbENhc2UsY29tcHV0ZWQ6e3JlYWN0aXZlUHJvcHM6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9e307cmV0dXJuIHIuY2FtZWxDYXNlLmZvckVhY2goKGZ1bmN0aW9uKG4peyJ1bmRlZmluZWQiIT09dHlwZW9mIGVbbl0mJih0W25dPWVbbl0pfSkpLHR9fSxyZW5kZXI6ZnVuY3Rpb24oZSl7dmFyIHQ9e3Byb3BzOnRoaXMucmVhY3RpdmVQcm9wc307cmV0dXJuIGUobyx0LFAodSxlKSl9fX1lbHNlIGlmKDE9PT1zKWw9byxsLnByb3BzRGF0YT1jO2Vsc2V7bD1vO3ZhciBkPXt9O09iamVjdC5rZXlzKGMpLmZvckVhY2goKGZ1bmN0aW9uKGUpe2RbZV09e2RlZmF1bHQ6Y1tlXX19KSksbC5wcm9wcz1kfXZhciBfPXM+PTI/IjxkaXY+PC9kaXY+IjooIjxkaXY+IitlLmlubmVySFRNTCsiPC9kaXY+IikucmVwbGFjZSgvdnVlLXNsb3Q9L2csInNsb3Q9Iik7aWYoaS5zaGFkb3cmJmUuc2hhZG93Um9vdD8oZS5zaGFkb3dSb290LmlubmVySFRNTD1fLGwuZWw9ZS5zaGFkb3dSb290LmNoaWxkcmVuWzBdKTooZS5pbm5lckhUTUw9XyxsLmVsPWUuY2hpbGRyZW5bMF0pLGIoZSxyKSwiZnVuY3Rpb24iPT09dHlwZW9mIGkuYmVmb3JlQ3JlYXRlVnVlSW5zdGFuY2UmJihsPWkuYmVmb3JlQ3JlYXRlVnVlSW5zdGFuY2UobCl8fGwpLGUuX192dWVfY3VzdG9tX2VsZW1lbnRfXz1uZXcgdChsKSxlLl9fdnVlX2N1c3RvbV9lbGVtZW50X3Byb3BzX189cixlLmdldFZ1ZUluc3RhbmNlPWZ1bmN0aW9uKCl7cmV0dXJuIGUuX192dWVfY3VzdG9tX2VsZW1lbnRfXy4kY2hpbGRyZW5bMF19LGkuc2hhZG93JiZpLnNoYWRvd0NzcyYmZS5zaGFkb3dSb290KXt2YXIgbT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO20udHlwZT0idGV4dC9jc3MiLG0uYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoaS5zaGFkb3dDc3MpKSxlLnNoYWRvd1Jvb3QuYXBwZW5kQ2hpbGQobSl9ZS5yZW1vdmVBdHRyaWJ1dGUoInZjZS1jbG9hayIpLGUuc2V0QXR0cmlidXRlKCJ2Y2UtcmVhZHkiLCIiKSxPKGUsInZjZS1yZWFkeSIpfX1mdW5jdGlvbiBFKGUpe2UuY3VzdG9tRWxlbWVudD1mdW5jdGlvbih0LG4pe3ZhciByPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTp7fSxpPSJmdW5jdGlvbiI9PT10eXBlb2YgbixhPWkmJntwcm9wczpyLnByb3BzfHxbXX0sbz13KGk/YTpuKSxjPXUodCx7Y29uc3RydWN0b3JDYWxsYmFjazpmdW5jdGlvbigpeyJmdW5jdGlvbiI9PT10eXBlb2Ygci5jb25zdHJ1Y3RvckNhbGxiYWNrJiZyLmNvbnN0cnVjdG9yQ2FsbGJhY2suY2FsbCh0aGlzKX0sY29ubmVjdGVkQ2FsbGJhY2s6ZnVuY3Rpb24oKXt2YXIgYT10aGlzLGM9aSYmbigpLHM9YyYmYy50aGVuJiYiZnVuY3Rpb24iPT09dHlwZW9mIGMudGhlbjtpZigiZnVuY3Rpb24iPT09dHlwZW9mIHIuY29ubmVjdGVkQ2FsbGJhY2smJnIuY29ubmVjdGVkQ2FsbGJhY2suY2FsbCh0aGlzKSxpJiYhcyl0aHJvdyBuZXcgRXJyb3IoIkFzeW5jIGNvbXBvbmVudCAiK3QrIiBkbyBub3QgcmV0dXJucyBQcm9taXNlIik7dGhpcy5fX2RldGFjaGVkX198fChzP2MudGhlbigoZnVuY3Rpb24odCl7dmFyIG49dyh0KTtBKGEsZSx0LG4sciksImZ1bmN0aW9uIj09PXR5cGVvZiByLnZ1ZUluc3RhbmNlQ3JlYXRlZENhbGxiYWNrJiZyLnZ1ZUluc3RhbmNlQ3JlYXRlZENhbGxiYWNrLmNhbGwoYSl9KSk6KEEodGhpcyxlLG4sbyxyKSwiZnVuY3Rpb24iPT09dHlwZW9mIHIudnVlSW5zdGFuY2VDcmVhdGVkQ2FsbGJhY2smJnIudnVlSW5zdGFuY2VDcmVhdGVkQ2FsbGJhY2suY2FsbCh0aGlzKSkpLHRoaXMuX19kZXRhY2hlZF9fPSExfSxkaXNjb25uZWN0ZWRDYWxsYmFjazpmdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5fX2RldGFjaGVkX189ITAsImZ1bmN0aW9uIj09PXR5cGVvZiByLmRpc2Nvbm5lY3RlZENhbGxiYWNrJiZyLmRpc2Nvbm5lY3RlZENhbGxiYWNrLmNhbGwodGhpcyksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtlLl9fZGV0YWNoZWRfXyYmZS5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fJiYoZS5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fLiRkZXN0cm95KCEwKSxkZWxldGUgZS5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fLGRlbGV0ZSBlLl9fdnVlX2N1c3RvbV9lbGVtZW50X3Byb3BzX18pfSksci5kZXN0cm95VGltZW91dHx8M2UzKX0sYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrOmZ1bmN0aW9uKGUsdCxuKXtpZih0aGlzLl9fdnVlX2N1c3RvbV9lbGVtZW50X18mJiJ1bmRlZmluZWQiIT09dHlwZW9mIG4pe3ZhciBpPV8oZSk7ImZ1bmN0aW9uIj09PXR5cGVvZiByLmF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayYmci5hdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2suY2FsbCh0aGlzLGUsdCxuKTt2YXIgYT10aGlzLl9fdnVlX2N1c3RvbV9lbGVtZW50X3Byb3BzX18udHlwZXNbaV07dGhpcy5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fW2ldPXkobixhKX19LG9ic2VydmVkQXR0cmlidXRlczpvLmh5cGhlbmF0ZSxzaGFkb3c6ISFyLnNoYWRvdyYmISFIVE1MRWxlbWVudC5wcm90b3R5cGUuYXR0YWNoU2hhZG93fSk7cmV0dXJuIGN9fSJ1bmRlZmluZWQiIT09dHlwZW9mIHdpbmRvdyYmd2luZG93LlZ1ZSYmKHdpbmRvdy5WdWUudXNlKEUpLEUuaW5zdGFsbGVkJiYoRS5pbnN0YWxsZWQ9ITEpKSx0WyJhIl09RX0sYzhiYTpmdW5jdGlvbihlLHQpe3ZhciBuO249ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30oKTt0cnl7bj1ufHxuZXcgRnVuY3Rpb24oInJldHVybiB0aGlzIikoKX1jYXRjaChyKXsib2JqZWN0Ij09PXR5cGVvZiB3aW5kb3cmJihuPXdpbmRvdyl9ZS5leHBvcnRzPW59LGNhNWE6ZnVuY3Rpb24oZSx0KXt2YXIgbj0wLHI9TWF0aC5yYW5kb20oKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIlN5bWJvbCgiLmNvbmNhdCh2b2lkIDA9PT1lPyIiOmUsIilfIiwoKytuK3IpLnRvU3RyaW5nKDM2KSl9fSxjYTlmOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiNGQwMSIpLGk9bigiZjM2NyIpLGE9bigiNTYyZSIpLG89bigiMWI3ZiIpLGM9bigiYjNmZCIpLHM9cihvKCkpO2kocyx7Z2V0UG9seWZpbGw6byxpbXBsZW1lbnRhdGlvbjphLHNoaW06Y30pLGUuZXhwb3J0cz1zfSxjYWRmOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiOWM2YyIpLGk9bigiZDUzYiIpLGE9bigiODRmMiIpLG89bigiNjgyMSIpO2UuZXhwb3J0cz1uKCIwMWY5IikoQXJyYXksIkFycmF5IiwoZnVuY3Rpb24oZSx0KXt0aGlzLl90PW8oZSksdGhpcy5faT0wLHRoaXMuX2s9dH0pLChmdW5jdGlvbigpe3ZhciBlPXRoaXMuX3QsdD10aGlzLl9rLG49dGhpcy5faSsrO3JldHVybiFlfHxuPj1lLmxlbmd0aD8odGhpcy5fdD12b2lkIDAsaSgxKSk6aSgwLCJrZXlzIj09dD9uOiJ2YWx1ZXMiPT10P2Vbbl06W24sZVtuXV0pfSksInZhbHVlcyIpLGEuQXJndW1lbnRzPWEuQXJyYXkscigia2V5cyIpLHIoInZhbHVlcyIpLHIoImVudHJpZXMiKX0sY2I3YzpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDNmNCIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZighcihlKSl0aHJvdyBUeXBlRXJyb3IoZSsiIGlzIG5vdCBhbiBvYmplY3QhIik7cmV0dXJuIGV9fSxjY2I5OmZ1bmN0aW9uKGUsdCxuKXt0LmY9bigiNTE2OCIpfSxjZDFjOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJlODUzIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIG5ldyhyKGUpKSh0KX19LGNlMTA6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjY5YTgiKSxpPW4oIjY4MjEiKSxhPW4oImMzNjYiKSghMSksbz1uKCI2MTNiIikoIklFX1BST1RPIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dmFyIG4sYz1pKGUpLHM9MCxwPVtdO2ZvcihuIGluIGMpbiE9byYmcihjLG4pJiZwLnB1c2gobik7d2hpbGUodC5sZW5ndGg+cylyKGMsbj10W3MrK10pJiYofmEocCxuKXx8cC5wdXNoKG4pKTtyZXR1cm4gcH19LGQwMjQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCIyMWQwIiksaT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLGE9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxvPWZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHI9MCxpPWUubGVuZ3RoO3I8aTtyKyspYS5jYWxsKGUscikmJihudWxsPT1uP3QoZVtyXSxyLGUpOnQuY2FsbChuLGVbcl0scixlKSl9LGM9ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcj0wLGk9ZS5sZW5ndGg7cjxpO3IrKyludWxsPT1uP3QoZS5jaGFyQXQocikscixlKTp0LmNhbGwobixlLmNoYXJBdChyKSxyLGUpfSxzPWZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHIgaW4gZSlhLmNhbGwoZSxyKSYmKG51bGw9PW4/dChlW3JdLHIsZSk6dC5jYWxsKG4sZVtyXSxyLGUpKX0scD1mdW5jdGlvbihlLHQsbil7aWYoIXIodCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiaXRlcmF0b3IgbXVzdCBiZSBhIGZ1bmN0aW9uIik7dmFyIGE7YXJndW1lbnRzLmxlbmd0aD49MyYmKGE9biksIltvYmplY3QgQXJyYXldIj09PWkuY2FsbChlKT9vKGUsdCxhKToic3RyaW5nIj09PXR5cGVvZiBlP2MoZSx0LGEpOnMoZSx0LGEpfTtlLmV4cG9ydHM9cH0sZDM0YTpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiUmFuZyB0csW+bmUga2FwaXRhbGl6YWNpamUiLCJtY2FwIjoiVHLFvm5hIGthcGl0YWxpemFjaWphIiwiMjRoX3ZvbHVtZSI6Ik9ic2VnIHYgMjQgaCIsIjI0aF9oaWdoX2xvdyI6Ik5hanYuL25ham0uIHYgMjQgaCJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJVcG9yYWJsamEgdGVobm9sb2dpam8gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiUHJpbWVyamF2YSBjZW4ga3JpcHRvdmFsdXQiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiUHJpbWVyamF2YSB0csW+bmUga2FwaXRhbGl6YWNpamUga3JpcHRvdmFsdXQifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJVcG9yYWJsamEgdGVobm9sb2dpam8gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6Ik5hanYuIHYgMjQgaCIsIjI0aF9sb3ciOiJOYWptLiB2IDI0IGgiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiT2dsZWQgZ3JhZmlrb25hIGtvdmFuY2EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJVcG9yYWJsamEgdGVobm9sb2dpam8gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJVcG9yYWJsamEgdGVobm9sb2dpam8gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJVcG9yYWJsamEgdGVobm9sb2dpam8gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVXBvcmFibGphIHRlaG5vbG9naWpvICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTmFqdi4gdiAyNCBoIiwiMjRoX2xvdyI6Ik5ham0uIHYgMjQgaCIsInZpZXdfcHJpY2VfY2hhcnQiOiJPZ2xlZCBncmFmaWtvbmEga292YW5jYSAle2NvaW59IiwicG93ZXJlZF9ieSI6IlVwb3JhYmxqYSB0ZWhub2xvZ2lqbyAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fY29udmVydGVyX3dpZGdldCI6eyJ2aWV3X3ByaWNlX2NoYXJ0IjoiT2dsZWQgZ3JhZmlrb25hIGtvdmFuY2EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJVcG9yYWJsamEgdGVobm9sb2dpam8gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoiRHJldmVzbmkgcG9nbGVkIGtyaXB0b3ZhbHV0Iiwic3VidGl0bGUiOiIoVG9wICV7dG9wfSBwbyB0csW+bmkga2FwaXRhbGl6YWNpamkpIiwicG93ZXJlZF9ieSI6IlVwb3JhYmxqYSB0ZWhub2xvZ2lqbyAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiSXpqYXZhIG8gb21laml0dmkgb2Rnb3Zvcm5vc3RpOiBUYSBvcm9kamEgc28gbmFtZW5qZW5hIHJhenZlZHJpbHUgaW4gbmUgcHJlZHN0YXZsamFqbyBmaW5hbsSNbmVnYSBzdmV0b3ZhbmphLiIsInNwaW4iOiJaYXZydGkiLCJhdmFpbGFibGVfY29pbnMiOiJSYXpwb2xvxb5saml2aSBrb3ZhbmNpIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiUG9zb2RvYml0ZXYgY2VuZSBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiU2t1cC4gdHIuIGthcC4iLCIyNGhfdm9sIjoiT2JzZWcgdHJnb3ZhbmphIHYgMjQgaCIsImRvbSI6IkRvbWluYW50bm9zdCJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJCb3J6YSIsInBhaXIiOiJQYXIiLCJwcmljZSI6IkNlbmEiLCJ2b2x1bWUiOiJPYnNlZyIsInRydXN0X3Njb3JlIjoiT2NlbmEgemF1cGFuamEiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiT2dsZWQgY2VuaWthIiwicG93ZXJlZF9ieSI6IlVwb3JhYmxqYSB0ZWhub2xvZ2lqbyAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJPZ2xlZCB2c2VoIHRyZ292IGtvdmFuY2EgJXtjb2lufSJ9fScpfSxkM2Y0OmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiJvYmplY3QiPT09dHlwZW9mIGU/bnVsbCE9PWU6ImZ1bmN0aW9uIj09PXR5cGVvZiBlfX0sZDRhYjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0PXIuY2FsbChlKSxuPSJbb2JqZWN0IEFyZ3VtZW50c10iPT09dDtyZXR1cm4gbnx8KG49IltvYmplY3QgQXJyYXldIiE9PXQmJm51bGwhPT1lJiYib2JqZWN0Ij09PXR5cGVvZiBlJiYibnVtYmVyIj09PXR5cGVvZiBlLmxlbmd0aCYmZS5sZW5ndGg+PTAmJiJbb2JqZWN0IEZ1bmN0aW9uXSI9PT1yLmNhbGwoZS5jYWxsZWUpKSxufX0sZDUyNTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoKXtyZXR1cm57dW5zdWJzY3JpYmU6ZnVuY3Rpb24oKXt9fX1uLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSl9LGQ1M2I6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm57dmFsdWU6dCxkb25lOiEhZX19fSxkNmM3OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxpPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcsYT1BcnJheS5wcm90b3R5cGUuc2xpY2Usbz1uKCJkNGFiIiksYz1PYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLHM9IWMuY2FsbCh7dG9TdHJpbmc6bnVsbH0sInRvU3RyaW5nIikscD1jLmNhbGwoKGZ1bmN0aW9uKCl7fSksInByb3RvdHlwZSIpLGw9WyJ0b1N0cmluZyIsInRvTG9jYWxlU3RyaW5nIiwidmFsdWVPZiIsImhhc093blByb3BlcnR5IiwiaXNQcm90b3R5cGVPZiIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwiY29uc3RydWN0b3IiXSx1PWZ1bmN0aW9uKGUpe3ZhciB0PWUuY29uc3RydWN0b3I7cmV0dXJuIHQmJnQucHJvdG90eXBlPT09ZX0sZD17JGFwcGxpY2F0aW9uQ2FjaGU6ITAsJGNvbnNvbGU6ITAsJGV4dGVybmFsOiEwLCRmcmFtZTohMCwkZnJhbWVFbGVtZW50OiEwLCRmcmFtZXM6ITAsJGlubmVySGVpZ2h0OiEwLCRpbm5lcldpZHRoOiEwLCRvdXRlckhlaWdodDohMCwkb3V0ZXJXaWR0aDohMCwkcGFnZVhPZmZzZXQ6ITAsJHBhZ2VZT2Zmc2V0OiEwLCRwYXJlbnQ6ITAsJHNjcm9sbExlZnQ6ITAsJHNjcm9sbFRvcDohMCwkc2Nyb2xsWDohMCwkc2Nyb2xsWTohMCwkc2VsZjohMCwkd2Via2l0SW5kZXhlZERCOiEwLCR3ZWJraXRTdG9yYWdlSW5mbzohMCwkd2luZG93OiEwfSxfPWZ1bmN0aW9uKCl7aWYoInVuZGVmaW5lZCI9PT10eXBlb2Ygd2luZG93KXJldHVybiExO2Zvcih2YXIgZSBpbiB3aW5kb3cpdHJ5e2lmKCFkWyIkIitlXSYmci5jYWxsKHdpbmRvdyxlKSYmbnVsbCE9PXdpbmRvd1tlXSYmIm9iamVjdCI9PT10eXBlb2Ygd2luZG93W2VdKXRyeXt1KHdpbmRvd1tlXSl9Y2F0Y2godCl7cmV0dXJuITB9fWNhdGNoKHQpe3JldHVybiEwfXJldHVybiExfSgpLG09ZnVuY3Rpb24oZSl7aWYoInVuZGVmaW5lZCI9PT10eXBlb2Ygd2luZG93fHwhXylyZXR1cm4gdShlKTt0cnl7cmV0dXJuIHUoZSl9Y2F0Y2godCl7cmV0dXJuITF9fSxmPWZ1bmN0aW9uKGUpe3ZhciB0PW51bGwhPT1lJiYib2JqZWN0Ij09PXR5cGVvZiBlLG49IltvYmplY3QgRnVuY3Rpb25dIj09PWkuY2FsbChlKSxhPW8oZSksYz10JiYiW29iamVjdCBTdHJpbmddIj09PWkuY2FsbChlKSx1PVtdO2lmKCF0JiYhbiYmIWEpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0LmtleXMgY2FsbGVkIG9uIGEgbm9uLW9iamVjdCIpO3ZhciBkPXAmJm47aWYoYyYmZS5sZW5ndGg+MCYmIXIuY2FsbChlLDApKWZvcih2YXIgXz0wO188ZS5sZW5ndGg7KytfKXUucHVzaChTdHJpbmcoXykpO2lmKGEmJmUubGVuZ3RoPjApZm9yKHZhciBmPTA7ZjxlLmxlbmd0aDsrK2YpdS5wdXNoKFN0cmluZyhmKSk7ZWxzZSBmb3IodmFyIGggaW4gZSlkJiYicHJvdG90eXBlIj09PWh8fCFyLmNhbGwoZSxoKXx8dS5wdXNoKFN0cmluZyhoKSk7aWYocylmb3IodmFyIHY9bShlKSx5PTA7eTxsLmxlbmd0aDsrK3kpdiYmImNvbnN0cnVjdG9yIj09PWxbeV18fCFyLmNhbGwoZSxsW3ldKXx8dS5wdXNoKGxbeV0pO3JldHVybiB1fTtmLnNoaW09ZnVuY3Rpb24oKXtpZihPYmplY3Qua2V5cyl7dmFyIGU9ZnVuY3Rpb24oKXtyZXR1cm4gMj09PShPYmplY3Qua2V5cyhhcmd1bWVudHMpfHwiIikubGVuZ3RofSgxLDIpO2lmKCFlKXt2YXIgdD1PYmplY3Qua2V5cztPYmplY3Qua2V5cz1mdW5jdGlvbihlKXtyZXR1cm4gbyhlKT90KGEuY2FsbChlKSk6dChlKX19fWVsc2UgT2JqZWN0LmtleXM9ZjtyZXR1cm4gT2JqZWN0LmtleXN8fGZ9LGUuZXhwb3J0cz1mfSxkNmRhOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPWZ1bmN0aW9uKCl7aWYoImZ1bmN0aW9uIiE9PXR5cGVvZiBTeW1ib2x8fCJmdW5jdGlvbiIhPT10eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scylyZXR1cm4hMTtpZigic3ltYm9sIj09PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3IpcmV0dXJuITA7dmFyIGU9e30sdD1TeW1ib2woInRlc3QiKSxuPU9iamVjdCh0KTtpZigic3RyaW5nIj09PXR5cGVvZiB0KXJldHVybiExO2lmKCJbb2JqZWN0IFN5bWJvbF0iIT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpKXJldHVybiExO2lmKCJbb2JqZWN0IFN5bWJvbF0iIT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKG4pKXJldHVybiExO3ZhciByPTQyO2Zvcih0IGluIGVbdF09cixlKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PT10eXBlb2YgT2JqZWN0LmtleXMmJjAhPT1PYmplY3Qua2V5cyhlKS5sZW5ndGgpcmV0dXJuITE7aWYoImZ1bmN0aW9uIj09PXR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyYmMCE9PU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGUpLmxlbmd0aClyZXR1cm4hMTt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKGUpO2lmKDEhPT1pLmxlbmd0aHx8aVswXSE9PXQpcmV0dXJuITE7aWYoIU9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChlLHQpKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PT10eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcil7dmFyIGE9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLHQpO2lmKGEudmFsdWUhPT1yfHwhMCE9PWEuZW51bWVyYWJsZSlyZXR1cm4hMX1yZXR1cm4hMH19LGQ3NTI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjc3MjYiKS5wYXJzZUZsb2F0LGk9bigiYWE3NyIpLnRyaW07ZS5leHBvcnRzPTEvcihuKCJmZGVmIikrIi0wIikhPT0tMS8wP2Z1bmN0aW9uKGUpe3ZhciB0PWkoU3RyaW5nKGUpLDMpLG49cih0KTtyZXR1cm4gMD09PW4mJiItIj09dC5jaGFyQXQoMCk/LTA6bn06cn0sZDg2NDpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNzlhYSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7aWYocihlKSx2b2lkIDA9PT10KXJldHVybiBlO3N3aXRjaChuKXtjYXNlIDE6cmV0dXJuIGZ1bmN0aW9uKG4pe3JldHVybiBlLmNhbGwodCxuKX07Y2FzZSAyOnJldHVybiBmdW5jdGlvbihuLHIpe3JldHVybiBlLmNhbGwodCxuLHIpfTtjYXNlIDM6cmV0dXJuIGZ1bmN0aW9uKG4scixpKXtyZXR1cm4gZS5jYWxsKHQsbixyLGkpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gZS5hcHBseSh0LGFyZ3VtZW50cyl9fX0sZDhkNjpmdW5jdGlvbihlLHQsbil7bigiMTY1NCIpLG4oIjZjMWMiKSxlLmV4cG9ydHM9bigiY2NiOSIpLmYoIml0ZXJhdG9yIil9LGQ4ZTg6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUpdGhyb3cgVHlwZUVycm9yKGUrIiBpcyBub3QgYSBmdW5jdGlvbiEiKTtyZXR1cm4gZX19LGQ5ZjY6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImU0YWUiKSxpPW4oIjc5NGIiKSxhPW4oIjFiYzMiKSxvPU9iamVjdC5kZWZpbmVQcm9wZXJ0eTt0LmY9bigiOGU2MCIpP09iamVjdC5kZWZpbmVQcm9wZXJ0eTpmdW5jdGlvbihlLHQsbil7aWYocihlKSx0PWEodCwhMCkscihuKSxpKXRyeXtyZXR1cm4gbyhlLHQsbil9Y2F0Y2goYyl7fWlmKCJnZXQiaW4gbnx8InNldCJpbiBuKXRocm93IFR5cGVFcnJvcigiQWNjZXNzb3JzIG5vdCBzdXBwb3J0ZWQhIik7cmV0dXJuInZhbHVlImluIG4mJihlW3RdPW4udmFsdWUpLGV9fSxkYTMwOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihlKXtyZXR1cm4gZS5wYXJlbnRFbGVtZW50fHxlLmdldFJvb3ROb2RlKCkuaG9zdH1uLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSl9LGRhNjg6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1mdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1lLiRjcmVhdGVFbGVtZW50LG49ZS5fc2VsZi5fY3x8dDtyZXR1cm4gbigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLWNvbnRhaW5lciIsY2xhc3M6ZS5jb250YWluZXJDbGFzcyxzdHlsZTplLmNvbnRhaW5lclN0eWxlLGF0dHJzOnsiZGF0YS1sb2FkaW5nIjplLmxvYWRpbmd9fSxbZS5sb2FkaW5nP24oImRpdiIse3N0YXRpY0NsYXNzOiJjZy1wLTMgY2ctYmFzZSJ9LFtlLl92KCJMb2FkaW5nIHdpZGdldC4uLiIpXSk6bigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLXdpZGdldCJ9LFtuKCJkaXYiLHtzdGF0aWNDbGFzczoiY2ctbWFycXVlZSIsc3R5bGU6e2JhY2tncm91bmRDb2xvcjplLmJhY2tncm91bmRDb2xvcn19LGUuX2woMiwoZnVuY3Rpb24odCl7cmV0dXJuIG4oInNwYW4iLHtrZXk6dCxjbGFzczpbImNnLW1hcnF1ZWUtY29udGVudC0iK3QsZS5jb2lucy5sZW5ndGg+MjU/ImNnLW1hcnF1ZWUtY29udGVudC1sb25nIjoiIl19LFtuKCJkaXYiLHtzdGF0aWNDbGFzczoiY2ctZmxleCBjZy1mbGV4LXJvdyJ9LFtlLl9sKGUuY29pbnMsKGZ1bmN0aW9uKHQpe3JldHVybiBuKCJhIix7a2V5OnQuaWQsc3RhdGljQ2xhc3M6ImNnLXB5LTIgY2ctcHgtMyBjZy1mbGV4IGNnLWNvaW4tcm93IGNnLXNtIixzdHlsZTp7Y29sb3I6ZS5mb250Q29sb3J9LGF0dHJzOntocmVmOmUubGlua1RvQ29pbk92ZXJ2aWV3KHQuaWQpLHRhcmdldDoiX2JsYW5rIn19LFtuKCJkaXYiLHtzdGF0aWNDbGFzczoiY2ctZmxleCBjZy1pdGVtcy1jZW50ZXIifSxbbigiaW1nIix7c3RhdGljQ2xhc3M6ImNnLW1yLTIiLGF0dHJzOntzcmM6dC5pbWFnZX19KSxuKCJzcGFuIixbbigic3BhbiIse3N0YXRpY0NsYXNzOiJjZy1ib2xkIn0sW2UuX3YoZS5fcyh0Lm5hbWUpKV0pLGUuX3YoIiAoIitlLl9zKHQuc3ltYm9sLnRvVXBwZXJDYXNlKCkpKyIpXG4gICAgICAgICAgICAgICIpXSldKSxlLmxvYWRpbmdQcmljZT9lLl9lKCk6bigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLW1sLTIgY2ctZmxleCBjZy1qdXN0aWZ5LWVuZCBjZy1pdGVtcy1jZW50ZXIiLGNsYXNzOmUuaXNOZWdhdGl2ZSh0LnByaWNlX2NoYW5nZV9wZXJjZW50YWdlXzI0aCk/ImNnLXJlZC1jb2xvci1kYXJrIjoiY2ctcHJpbWFyeS1jb2xvci1kYXJrIn0sW24oImRpdiIsW24oInNwYW4iLHtzdGF0aWNDbGFzczoiY2ctYm9sZCIsY2xhc3M6ZS5wcmljaW5nSGlnaGxpZ2h0Q2xhc3Nlc1t0LmlkXX0sW2UuX3YoIlxuICAgICAgICAgICAgICAgICAgIitlLl9zKGUuZm9ybWF0Q3VycmVuY3kodC5jdXJyZW50X3ByaWNlKSkrIlxuICAgICAgICAgICAgICAgICIpXSksbigic3BhbiIsW2UuX3YoIigiK2UuX3MoZS5mb3JtYXRQZXJjZW50YWdlKHQucHJpY2VfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoKSkrIikiKV0pXSksbigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLW1sLTIiLGNsYXNzOmUuaXNOZWdhdGl2ZSh0LnByaWNlX2NoYW5nZV9wZXJjZW50YWdlXzI0aCk/ImNnLWFycm93LWRvd24iOiJjZy1hcnJvdy11cCJ9KV0pXSl9KSksbigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLWZsZXggY2ctaXRlbXMtY2VudGVyIn0sW24oImEiLHtzdGF0aWNDbGFzczoiY2ctYm9sZCBjZy1zbSBjZy1weC0zIixkb21Qcm9wczp7aW5uZXJIVE1MOmUuX3MoZS5wb3dlcmVkQnlDb2luR2Vja28pfX0pXSldLDIpXSl9KSksMCldKV0pfSxpPVtdLGE9KG4oIjc1MTQiKSxuKCI1ZGYyIiksbigiYWM2YSIpLG4oIjI4YTUiKSxuKCJjNWY2IiksbigiMmIwZSIpKSxvPW4oIjdkYWIiKSxjPW4oImRhMzAiKSxzPW4oImU4YmEiKSxwPW4oImQ1MjUiKSxsPW4oImMxZTIiKSx1PW4oIjJmNmQiKSxkPXtuYW1lOiJDb2luZ2Vja29Db2luUHJpY2VNYXJxdWVlV2lkZ2V0IixtaXhpbnM6W09iamVjdChsWyJhIl0pKCksdVsiYSJdXSxwcm9wczp7Y29pbklkczp7dHlwZTpTdHJpbmcsZGVmYXVsdDoiYml0Y29pbixldGhlcmV1bSxlb3MscmlwcGxlLGxpdGVjb2luLHRyb24sbmVvLG1vbmVybyJ9LGN1cnJlbmN5Ont0eXBlOlN0cmluZyxkZWZhdWx0OiJ1c2QifSxsb2NhbGU6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6ImVuIn0sd2lkdGg6e3R5cGU6TnVtYmVyLGRlZmF1bHQ6MH0sYmFja2dyb3VuZENvbG9yOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIjZmZmZmZmIn0sZm9udENvbG9yOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIjNGM0YzRjIn19LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57bG9hZGluZzohMCxwb2x5Z2xvdDp7fSxhcGlEYXRhOltdLGNvbnRhaW5lckNsYXNzOiJsYXJnZSIsbG9hZGluZ1ByaWNlOiExLHByaWNpbmdIaWdobGlnaHRDbGFzc2VzOnt9fX0sY29tcHV0ZWQ6e21hcnF1ZWVDbGFzczpmdW5jdGlvbigpe3JldHVybnthY3RpdmU6ITAsInRleHQtZGFuZ2VyIjohMX19LGN1cnJlbmN5Q29kZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLmN1cnJlbmN5LnRvTG93ZXJDYXNlKCl9LHNhbml0aXplZENvaW5JZHM6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLmNvaW5JZHMuc3BsaXQoIiwiKS5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiBlLnRyaW0oKX0pKSx0PVtdLG49e307cmV0dXJuIGUuZm9yRWFjaCgoZnVuY3Rpb24oZSl7bltlXXx8dC5wdXNoKGUpLG5bZV09ZX0pKSx0fSxjb2luczpmdW5jdGlvbigpe2lmKCEodGhpcy5hcGlEYXRhLmxlbmd0aD4wKSlyZXR1cm5bXTt2YXIgZT17fTtyZXR1cm4gdGhpcy5hcGlEYXRhLmZvckVhY2goKGZ1bmN0aW9uKHQpe2VbdC5pZF09dH0pKSx0aGlzLnNhbml0aXplZENvaW5JZHMubWFwKChmdW5jdGlvbih0KXtyZXR1cm4gZVt0XX0pKX0scG93ZXJlZEJ5Q29pbkdlY2tvOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucG9seWdsb3QudCgiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldC5wb3dlcmVkX2J5Iix7bmFtZToiQ29pbkdlY2tvIixuYW1lX3N0YXJ0Oic8YSBjbGFzcz0iY2ctcHJpbWFyeS1jb2xvci1kYXJrIGNnLW5vLXVuZGVybGluZSIgaHJlZj0iaHR0cHM6Ly93d3cuY29pbmdlY2tvLmNvbS8nLmNvbmNhdCh0aGlzLmxvY2FsZSwiPyIpLmNvbmNhdCh0aGlzLnV0bVBhcmFtcyh0aGlzLnNhbml0aXplZENvaW5JZHMuam9pbigpKSwnIiB0YXJnZXQ9Il9ibGFuayI+JyksbmFtZV9lbmQ6IjwvYT4ifSl9LGNvbnRhaW5lclN0eWxlOmZ1bmN0aW9uKCl7cmV0dXJue3dpZHRoOjA9PT10aGlzLndpZHRoPyIxMDAlIjoiIi5jb25jYXQodGhpcy53aWR0aCwicHgiKSxiYWNrZ3JvdW5kQ29sb3I6dGhpcy5iYWNrZ3JvdW5kQ29sb3J9fX0sbWV0aG9kczp7Y3VycmVuY3lDaGFuZ2VkOmZ1bmN0aW9uKGUpe09iamVjdChjWyJhIl0pKHRoaXMuJGVsKS5zZXRBdHRyaWJ1dGUoImN1cnJlbmN5IixlLnRhcmdldC52YWx1ZS50b0xvd2VyQ2FzZSgpKX0sZm9ybWF0Q3VycmVuY3k6ZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdChzWyJmb3JtYXRDdXJyZW5jeSJdKShlLHRoaXMuY3VycmVuY3lDb2RlLHRoaXMubG9jYWxlKX0sZm9ybWF0UGVyY2VudGFnZTpmdW5jdGlvbihlKXt2YXIgdD1OdW1iZXIucGFyc2VGbG9hdChlKTtyZXR1cm4iIi5jb25jYXQodC50b0ZpeGVkKDIpLCIlIil9LGZldGNoRGF0YTpmdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30sbj10LmNvaW5SZWxvYWQscj12b2lkIDAhPT1uJiZuLGk9dC5jdXJyZW5jeVJlbG9hZCxhPXZvaWQgMCE9PWkmJmk7cj90aGlzLmxvYWRpbmc9ITA6YSYmKHRoaXMubG9hZGluZ1ByaWNlPSEwKSxmZXRjaCgiaHR0cHM6Ly9hcGkuY29pbmdlY2tvLmNvbS9hcGkvdjMvY29pbnMvbWFya2V0cz92c19jdXJyZW5jeT0iLmNvbmNhdCh0aGlzLmN1cnJlbmN5Q29kZSwiJmlkcz0iKS5jb25jYXQodGhpcy5zYW5pdGl6ZWRDb2luSWRzLmpvaW4oIiwiKSwiJmxvY2FsZT0iKS5jb25jYXQodGhpcy5sb2NhbGUpKS50aGVuKChmdW5jdGlvbihlKXtyZXR1cm4gZS5qc29uKCl9KSkudGhlbigoZnVuY3Rpb24odCl7dCYmKGUuYXBpRGF0YT10LGUubG9hZGluZz0hMSxlLmxvYWRpbmdQcmljZT0hMSl9KSl9LGlzTmVnYXRpdmU6ZnVuY3Rpb24oZSl7cmV0dXJuIE51bWJlci5wYXJzZUZsb2F0KGUpPDB9LGxpbmtUb0NvaW5PdmVydmlldzpmdW5jdGlvbihlKXtyZXR1cm4iaHR0cHM6Ly93d3cuY29pbmdlY2tvLmNvbS9yZXNvdXJjZV9yZWRpcmVjdD9sb2NhbGU9Ii5jb25jYXQodGhpcy5sb2NhbGUsIiZyb3V0ZT1jb2lucy8iKS5jb25jYXQoZSwiJiIpLmNvbmNhdCh0aGlzLnV0bVBhcmFtcyhlKSl9LHV0bVBhcmFtczpmdW5jdGlvbihlKXtyZXR1cm4idXRtX3NvdXJjZT0iLmNvbmNhdCh3aW5kb3cubG9jYXRpb24uaG9zdCwiJnV0bV9tZWRpdW09Y29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCZ1dG1fY29udGVudD0iKS5jb25jYXQoZSl9LGxpc3RlbkZvclByaWNlQ2hhbmdlczpmdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5jb2luRGF0YUxpc3RlbmVyJiZ0aGlzLmNvaW5EYXRhTGlzdGVuZXIudW5zdWJzY3JpYmUoKSx0aGlzLmNvaW5EYXRhTGlzdGVuZXI9T2JqZWN0KHBbImEiXSkodGhpcy5zYW5pdGl6ZWRDb2luSWRzLChmdW5jdGlvbih0KXt2YXIgbj1lLmFwaURhdGEuZmluZCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUuaWQ9PT10LmN9KSk7aWYobil7dmFyIHI9bi5jdXJyZW50X3ByaWNlLGk9dC5wW2UuY3VycmVuY3lDb2RlXTtlLmZvcm1hdEN1cnJlbmN5KHIpIT09ZS5mb3JtYXRDdXJyZW5jeShpKSYmKHBhcnNlRmxvYXQocik8PXBhcnNlRmxvYXQoaSk/ZS5oaWdobGlnaHRQcmljaW5nKG4uaWQsImNnLXByaW1hcnktY29sb3IiKTplLmhpZ2hsaWdodFByaWNpbmcobi5pZCwiY2ctcmVkLWNvbG9yIikpLG4uY3VycmVudF9wcmljZT10LnBbZS5jdXJyZW5jeUNvZGVdLG4ucHJpY2VfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoPXQuZVtlLmN1cnJlbmN5Q29kZV19fSkpfSxoaWdobGlnaHRQcmljaW5nOmZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpczthWyJhIl0uc2V0KHRoaXMucHJpY2luZ0hpZ2hsaWdodENsYXNzZXMsZSx0KSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe2FbImEiXS5zZXQobi5wcmljaW5nSGlnaGxpZ2h0Q2xhc3NlcyxlLG51bGwpfSksMWUzKX0sc3VwcG9ydGVkQ3VycmVuY2llczpvWyJiIl19LHdhdGNoOntjb2luSWRzOmZ1bmN0aW9uKCl7dGhpcy5mZXRjaERhdGEoe2NvaW5SZWxvYWQ6ITB9KSx0aGlzLmxpc3RlbkZvclByaWNlQ2hhbmdlcygpLHRoaXMucHJpY2luZ0hpZ2hsaWdodENsYXNzZXM9e319LGN1cnJlbmN5OmZ1bmN0aW9uKCl7dGhpcy5mZXRjaERhdGEoe2N1cnJlbmN5UmVsb2FkOiEwfSl9LGxvY2FsZTpmdW5jdGlvbigpe3RoaXMuZmV0Y2hEYXRhKCl9fSxjcmVhdGVkOmZ1bmN0aW9uKCl7dGhpcy5mZXRjaERhdGEoKSx0aGlzLmxpc3RlbkZvclByaWNlQ2hhbmdlcygpfSxtb3VudGVkOmZ1bmN0aW9uKCl7fSxkZXN0cm95ZWQ6ZnVuY3Rpb24oKXt0aGlzLmNvaW5EYXRhTGlzdGVuZXImJnRoaXMuY29pbkRhdGFMaXN0ZW5lci51bnN1YnNjcmliZSgpfX0sXz1kLG09bigiMjg3NyIpLGY9T2JqZWN0KG1bImEiXSkoXyxyLGksITEsbnVsbCxudWxsLG51bGwpO3RbImEiXT1mLmV4cG9ydHN9LGRiZGI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjU4NGEiKSxpPW4oImU1M2QiKSxhPSJfX2NvcmUtanNfc2hhcmVkX18iLG89aVthXXx8KGlbYV09e30pOyhlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gb1tlXXx8KG9bZV09dm9pZCAwIT09dD90Ont9KX0pKCJ2ZXJzaW9ucyIsW10pLnB1c2goe3ZlcnNpb246ci52ZXJzaW9uLG1vZGU6bigiYjhlMyIpPyJwdXJlIjoiZ2xvYmFsIixjb3B5cmlnaHQ6IsKpIDIwMTkgRGVuaXMgUHVzaGthcmV2ICh6bG9pcm9jay5ydSkifSl9LGRjZDA6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6ItCg0LXQudGC0LjQvdCzINC/0L4g0L/QsNC30LDRgNC90LAg0LrQsNC/0LjRgtCw0LvQuNC30LDRhtC40Y8iLCJtY2FwIjoi0J/QsNC30LDRgNC90LAg0LrQsNC/0LjRgtCw0LvQuNC30LDRhtC40Y8iLCIyNGhfdm9sdW1lIjoi0J7QsdC10Lwg0LfQsCAyNCDRhy4iLCIyNGhfaGlnaF9sb3ciOiLQndCw0Lkt0LLQuNGB0L7QutCwL9C90LDQuS3QvdC40YHQutCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCAyNCDRhy4ifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/QvtC00LTRitGA0LbQsCDRgdC1INC+0YIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoi0KHRgNCw0LLQvdC10L3QuNC1INC90LAg0YbQtdC90LjRgtC1INC90LAg0LrRgNC40L/RgtC+0LLQsNC70YPRgtC40YLQtSIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiLQodGA0LDQstC90LXQvdC40LUg0L3QsCDQv9Cw0LfQsNGA0L3QsNGC0LAg0LrQsNC/0LjRgtCw0LvQuNC30LDRhtC40Y8g0L3QsCDQutGA0LjQv9GC0L7QstCw0LvRg9GC0LjRgtC1In0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/QvtC00LTRitGA0LbQsCDRgdC1INC+0YIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6ItCd0LDQuS3QstC40YHQvtC60LAg0YHRgtC+0LnQvdC+0YHRgiDQt9CwIDI0INGHLiIsIjI0aF9sb3ciOiLQndCw0Lkt0L3QuNGB0LrQsCDRgdGC0L7QudC90L7RgdGCINC30LAgMjQg0YcuIiwidmlld19wcmljZV9jaGFydCI6ItCf0YDQtdCz0LvQtdC0INC90LAg0LPRgNCw0YTQuNC60LDRgtCwINC90LAg0YbQtdC90LjRgtC1INC90LAgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLQn9C+0LTQtNGK0YDQttCwINGB0LUg0L7RgiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6ItCf0L7QtNC00YrRgNC20LAg0YHQtSDQvtGCICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/QvtC00LTRitGA0LbQsCDRgdC1INC+0YIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/QvtC00LTRitGA0LbQsCDRgdC1INC+0YIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiLQndCw0Lkt0LLQuNGB0L7QutCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCAyNCDRhy4iLCIyNGhfbG93Ijoi0J3QsNC5LdC90LjRgdC60LAg0YHRgtC+0LnQvdC+0YHRgiDQt9CwIDI0INGHLiIsInZpZXdfcHJpY2VfY2hhcnQiOiLQn9GA0LXQs9C70LXQtCDQvdCwINCz0YDQsNGE0LjQutCw0YLQsCDQvdCwINGG0LXQvdC40YLQtSDQvdCwICV7Y29pbn0iLCJwb3dlcmVkX2J5Ijoi0J/QvtC00LTRitGA0LbQsCDRgdC1INC+0YIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6ItCf0YDQtdCz0LvQtdC0INC90LAg0LPRgNCw0YTQuNC60LDRgtCwINC90LAg0YbQtdC90LjRgtC1INC90LAgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLQn9C+0LTQtNGK0YDQttCwINGB0LUg0L7RgiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiLQlNGK0YDQstC+0LLQuNC00L3QsCDQutCw0YDRgtCwINC90LAg0LrRgNC40L/RgtC+0LLQsNC70YPRgtC40YLQtSIsInN1YnRpdGxlIjoiKNCi0L7QvyAle3RvcH0g0L/QviDQv9Cw0LfQsNGA0L3QsCDQutCw0L/QuNGC0LDQu9C40LfQsNGG0LjRjykiLCJwb3dlcmVkX2J5Ijoi0J/QvtC00LTRitGA0LbQsCDRgdC1INC+0YIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6ItCe0YLQutCw0Lcg0L7RgiDQvtGC0LPQvtCy0L7RgNC90L7RgdGCOiDQotC10LfQuCDQuNC90YHRgtGA0YPQvNC10L3RgtC4INGB0LAg0LfQsCDRgNCw0LfQstC70LXRh9C10L3QuNC1INC4INC90LUg0L/RgNC10LTRgdGC0LDQstC70Y/QstCw0YIg0YTQuNC90LDQvdGB0L7QsiDRgdGK0LLQtdGCLiIsInNwaW4iOiLQn9C70LDRgtGE0L7RgNC80LAgU3BpbiIsImF2YWlsYWJsZV9jb2lucyI6ItCd0LDQu9C40YfQvdC4INCy0LDQu9GD0YLQuCJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6ItCQ0LrRgtGD0LDQu9C40LfQuNGA0LDQvdC1INC90LAg0YbQtdC90LjRgtC1INCyIENvaW5HZWNrbyIsInRvdGFsX21jYXAiOiLQntCx0YnQsCDQv9Cw0LfQsNGA0L3QsCDQutCw0L/QuNGC0LDQu9C40LfQsNGG0LjRjyIsIjI0aF92b2wiOiLQntCx0LXQvCDQt9CwIDI0INGHLiIsImRvbSI6ItCU0L7QvC4ifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoi0JHQvtGA0YHQsCIsInBhaXIiOiLQlNCy0L7QudC60LAiLCJwcmljZSI6ItCm0LXQvdCwIiwidm9sdW1lIjoi0J7QsdC10LwiLCJ0cnVzdF9zY29yZSI6ItCg0LXQt9GD0LvRgtCw0YIg0LfQsCDQtNC+0LLQtdGA0LjQtSIsInZpZXdfcHJpY2VfY2hhcnQiOiLQn9GA0LXQs9C70LXQtCDQvdCwINCz0YDQsNGE0LjQutCw0YLQsCDQvdCwINGG0LXQvdC40YLQtSIsInBvd2VyZWRfYnkiOiLQn9C+0LTQtNGK0YDQttCwINGB0LUg0L7RgiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiLQn9GA0LXQs9C70LXQtCDQvdCwINCy0YHQuNGH0LrQuCDQv9Cw0LfQsNGA0Lgg0LfQsCAle2NvaW59In19Jyl9LGRkMTE6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IuyLnOqwgOy0neyVoSDsiJzsnIQiLCJtY2FwIjoi7Iuc6rCA7LSd7JWhIiwiMjRoX3ZvbHVtZSI6IjI07Iuc6rCEIOuzvOulqCIsIjI0aF9oaWdoX2xvdyI6IjI07Iuc6rCEIOqzoOqwgC/soIDqsIAifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDsoJzqs7UiLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IuyVlO2YuO2ZlO2PkCDqsIDqsqkg67mE6rWQIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IuyVlO2YuO2ZlO2PkCDsi5zqsIDstJ3slaEg67mE6rWQIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDsoJzqs7UifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNOyLnOqwhCDqs6DqsIAiLCIyNGhfbG93IjoiMjTsi5zqsIQg7KCA6rCAIiwidmlld19wcmljZV9jaGFydCI6IiV7Y29pbn0g6rCA6rKpIOywqO2KuCDsobDtmowiLCJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDsoJzqs7UifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDsoJzqs7UifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDsoJzqs7UifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g7KCc6rO1In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI07Iuc6rCEIOqzoOqwgCIsIjI0aF9sb3ciOiIyNOyLnOqwhCDsoIDqsIAiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiJXtjb2lufSDqsIDqsqkg7LCo7Yq4IOyhsO2ajCIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOygnOqztSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IiV7Y29pbn0g6rCA6rKpIOywqO2KuCDsobDtmowiLCJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDsoJzqs7UifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IuyVlO2YuO2ZlO2PkCDrgpjrrLTsp4Drj4QiLCJzdWJ0aXRsZSI6Iijsi5zqsIDstJ3slaEg6riw7KSAIOyDgeychCAle3RvcH0g7L2U7J24KSIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOygnOqztSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IuqzoOyngCDsgqztla06IOuzuCDrj4TqtazripQg7J6s66+466Gc66eMIO2ZnOyaqe2VoCDsiJgg7J6I7Iq164uI64ukLCDquIjsnLXsoIHsnbgg7J6Q66y47J20IOyVhOuLmeuLiOuLpC4iLCJzcGluIjoi7ZqM7KCEIiwiYXZhaWxhYmxlX2NvaW5zIjoi7IKs7JqpIOqwgOuKpSDsvZTsnbgifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiJDb2luR2Vja28g6rCA6rKpIOyXheuNsOydtO2KuCIsInRvdGFsX21jYXAiOiLstJ0g7Iuc6rCA7LSd7JWhIiwiMjRoX3ZvbCI6IjI07Iuc6rCEIOqxsOuemOufiSIsImRvbSI6IuyngOuwsOugpSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiLqsbDrnpjshowiLCJwYWlyIjoi7IyNIiwicHJpY2UiOiLsi5zshLgiLCJ2b2x1bWUiOiLqsbDrnpjrn4kiLCJ0cnVzdF9zY29yZSI6IuyLoOuisOyngOyImCIsInZpZXdfcHJpY2VfY2hhcnQiOiLqsIDqsqkg7LCo7Yq4IOyhsO2ajCIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOygnOqztSIsInZpZXdfYWxsIjoi7KCE7LK0ICV7Y29pbn0g66eI7LyTIOyhsO2ajCJ9fScpfSxlMTFlOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPSJjb25zdHJ1Y3RvcixoYXNPd25Qcm9wZXJ0eSxpc1Byb3RvdHlwZU9mLHByb3BlcnR5SXNFbnVtZXJhYmxlLHRvTG9jYWxlU3RyaW5nLHRvU3RyaW5nLHZhbHVlT2YiLnNwbGl0KCIsIil9LGU0YWU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImY3NzIiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aWYoIXIoZSkpdGhyb3cgVHlwZUVycm9yKGUrIiBpcyBub3QgYW4gb2JqZWN0ISIpO3JldHVybiBlfX0sZTUzZDpmdW5jdGlvbihlLHQpe3ZhciBuPWUuZXhwb3J0cz0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmd2luZG93Lk1hdGg9PU1hdGg/d2luZG93OiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZi5NYXRoPT1NYXRoP3NlbGY6RnVuY3Rpb24oInJldHVybiB0aGlzIikoKTsibnVtYmVyIj09dHlwZW9mIF9fZyYmKF9fZz1uKX0sZTZmMzpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMDdlMyIpLGk9bigiMzZjMyIpLGE9bigiNWI0ZSIpKCExKSxvPW4oIjU1NTkiKSgiSUVfUFJPVE8iKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt2YXIgbixjPWkoZSkscz0wLHA9W107Zm9yKG4gaW4gYyluIT1vJiZyKGMsbikmJnAucHVzaChuKTt3aGlsZSh0Lmxlbmd0aD5zKXIoYyxuPXRbcysrXSkmJih+YShwLG4pfHxwLnB1c2gobikpO3JldHVybiBwfX0sZTg1MzpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDNmNCIpLGk9bigiMTE2OSIpLGE9bigiMmI0YyIpKCJzcGVjaWVzIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiBpKGUpJiYodD1lLmNvbnN0cnVjdG9yLCJmdW5jdGlvbiIhPXR5cGVvZiB0fHx0IT09QXJyYXkmJiFpKHQucHJvdG90eXBlKXx8KHQ9dm9pZCAwKSxyKHQpJiYodD10W2FdLG51bGw9PT10JiYodD12b2lkIDApKSksdm9pZCAwPT09dD9BcnJheTp0fX0sZThiYTpmdW5jdGlvbihlLHQsbil7KGZ1bmN0aW9uKGUsbil7bih0KX0pKDAsKGZ1bmN0aW9uKGUpeyJ1c2Ugc3RyaWN0Ijtjb25zdCB0PXtCVEM6IuKCvyIsRVRIOiLOniIsVVNEOiIkIixDQUQ6IkMkIixHQlA6IsKjIixFVVI6IuKCrCIsQ0hGOiJGci4iLFNFSzoia3IiLEpQWToiwqUiLENOWToiwqUiLElOUjoi4oK5IixSVUI6IuKCvSIsQVVEOiJBJCIsSEtEOiJISyQiLFNHRDoiUyQiLFRXRDoiTlQkIixCUkw6IlIkIixLUlc6IuKCqSIsWkFSOiJSIixNWVI6IlJNIixJRFI6IlJwIixOWkQ6Ik5aJCIsTVhOOiJNWCQiLFBIUDoi4oKxIixES0s6ImtyLiIsUExOOiJ6xYIiLEFFRDoiREgiLEFSUzoiJCIsQ0xQOiJDTFAiLENaSzoiS8SNIixIVUY6IkZ0IixJTFM6IuKCqiIsS1dEOiJLRCIsTEtSOiJScyIsTk9LOiJrciIsUEtSOiLigqgiLFNBUjoiU1IiLFRIQjoi4Li/IixUUlk6IuKCuiIsWEFVOiJYQVUiLFhBRzoiWEFHIixYRFI6IlhEUiJ9LG49e01ZUjp7bG9jYXRpb246e3N0YXJ0OiEwfSxmb3JMb2NhbGVzOntlbjohMH19LFNHRDp7bG9jYXRpb246e3N0YXJ0OiEwfSxmb3JMb2NhbGVzOntlbjohMH19LFBIUDp7bG9jYXRpb246e3N0YXJ0OiEwfSxmb3JMb2NhbGVzOntlbjohMH19LEJUQzp7bG9jYXRpb246e3N0YXJ0OiEwfSxmb3JMb2NhbGVzOntlbjohMH19LEVUSDp7bG9jYXRpb246e3N0YXJ0OiEwfSxmb3JMb2NhbGVzOntlbjohMH19fTtmdW5jdGlvbiByKCl7cmV0dXJuISgib2JqZWN0IiE9dHlwZW9mIEludGx8fCFJbnRsfHwiZnVuY3Rpb24iIT10eXBlb2YgSW50bC5OdW1iZXJGb3JtYXQpfWZ1bmN0aW9uIGkoZSl7cmV0dXJuIkJUQyI9PT1lfHwiRVRIIj09PWV9ZnVuY3Rpb24gYShlKXtyZXR1cm4gaShlKXx8bnVsbD09dFtlXX1mdW5jdGlvbiBvKGUsdCl7Y29uc3Qgbj1uZXcgUmVnRXhwKGAoXFwufCwpKDB7JHt0KzF9LH0pKD89WzEtOV0/KWApO3JldHVybiBlLnJlcGxhY2UobiwodCxuLHIpPT5gJHtufTA8c3ViIHRpdGxlPSIke2V9Ij4ke3IubGVuZ3RofTwvc3ViPmApfWZ1bmN0aW9uIGMoZSxyPSJlbiIsaSl7InVuZGVmaW5lZCIhPT10eXBlb2YgaSYmKGU9byhlLGkpKTtjb25zdCBhPWUubWF0Y2goL15bQS1aXXszfVxzPy8pO2lmKG51bGwhPWEpe2NvbnN0IGk9YVswXS50cmltKCksbz1uW2ldO3JldHVybiBvJiZvLmxvY2F0aW9uLnN0YXJ0JiZvLmZvckxvY2FsZXNbcl0/ZS5yZXBsYWNlKGFbMF0sdFtpXSk6ZX1jb25zdCBjPWUubWF0Y2goL1tBLVpdezN9JC8pO2lmKG51bGwhPWMpe2NvbnN0IGk9Y1swXSxhPW5baV07cmV0dXJuIGEmJmEubG9jYXRpb24uZW5kJiZhLmZvckxvY2FsZXNbcl0/ZS5yZXBsYWNlKGksdFtpXSk6ZX1yZXR1cm4gZX1mdW5jdGlvbiBzKGUsdCxuLHIpe3RyeXtjb25zdCBpPXtzdHlsZToiY3VycmVuY3kiLGN1cnJlbmN5OmUsY3VycmVuY3lEaXNwbGF5OiJzeW1ib2wifTtyZXR1cm4gdm9pZCAwIT09bj8oaS5taW5pbXVtRnJhY3Rpb25EaWdpdHM9bixpLm1heGltdW1GcmFjdGlvbkRpZ2l0cz1uKTp2b2lkIDAhPT1yJiYoaS5tYXhpbXVtU2lnbmlmaWNhbnREaWdpdHM9ciksbmV3IEludGwuTnVtYmVyRm9ybWF0KHQsaSl9Y2F0Y2goaSl7cmV0dXJuIHAoZSx0LG4pfX1mdW5jdGlvbiBwKGUsdCxuPTIpe3JldHVybiBlPWUudG9VcHBlckNhc2UoKSxuPjI/e2Zvcm1hdDp0PT5hKGUpP2Ake3QudG9GaXhlZChuKX0gJHtlfWA6YCR7ZX0gJHt0LnRvRml4ZWQobil9YH06e2Zvcm1hdDpuPT5hKGUpP2Ake24udG9Mb2NhbGVTdHJpbmcodCl9ICR7ZX1gOmAke2V9ICR7bi50b0xvY2FsZVN0cmluZyh0KX1gfX1mdW5jdGlvbiBsKGUsdCl7aWYoIXIoKSlyZXR1cm4gcChlLHQsMCk7bGV0IG49e3N0eWxlOiJkZWNpbWFsIixub3RhdGlvbjoiY29tcGFjdCIsbWluaW11bUZyYWN0aW9uRGlnaXRzOjAsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjN9O3JldHVybiBhKGUpJiYhaShlKXx8KG4uc3R5bGU9ImN1cnJlbmN5IixuLmN1cnJlbmN5PWUpLG5ldyBJbnRsLk51bWJlckZvcm1hdCh0LG4pfWZ1bmN0aW9uIHUoZSx0LG4sbyl7Y29uc3QgYz1yKCksbD1jJiYoIWEoZSl8fGkoZSkpO3JldHVybiBsP3MoZSx0LG4sbyk6cChlLHQsbil9bGV0IGQsXyxtLGYsaCx2LHksZyx3LGIsayx4LEM9e307ZnVuY3Rpb24gUygpe0M9e319ZnVuY3Rpb24gUChlLHQpe2NvbnN0IG49YCR7ZX0tJHt0fWAscj1DW25dO209cj9yLmN1cnJlbmN5Rm9ybWF0dGVyTm9ybWFsOnUoZSx0KSxmPXI/ci5jdXJyZW5jeUZvcm1hdHRlck5vRGVjaW1hbDp1KGUsdCwwKSxoPXI/ci5jdXJyZW5jeUZvcm1hdHRlck1lZGl1bTp1KGUsdCwzKSx2PXI/ci5jdXJyZW5jeUZvcm1hdHRlclR3b0RlY2ltYWw6dShlLHQsMikseT1yP3IuY3VycmVuY3lGb3JtYXR0ZXJTbWFsbDp1KGUsdCw2KSxnPXI/ci5jdXJyZW5jeUZvcm1hdHRlclZlcnlTbWFsbDp1KGUsdCw4KSx3PXI/ci5jdXJyZW5jeUZvcm1hdHRlclZlcnlWZXJ5U21hbGw6dShlLHQsMTIpLGI9cj9yLmN1cnJlbmN5Rm9ybWF0dGVyMTVEUDp1KGUsdCwxNSksaz1yP3IuY3VycmVuY3lGb3JtYXR0ZXIxOERQOnUoZSx0LDE4KSx4PXI/ci5jdXJyZW5jeUZvcm1hdHRlckFiYnJldmlhdGVkOmwoZSx0KSxudWxsPT1yJiYoQ1tuXT17fSxDW25dLmN1cnJlbmN5Rm9ybWF0dGVyTm9ybWFsPW0sQ1tuXS5jdXJyZW5jeUZvcm1hdHRlck5vRGVjaW1hbD1mLENbbl0uY3VycmVuY3lGb3JtYXR0ZXJNZWRpdW09aCxDW25dLmN1cnJlbmN5Rm9ybWF0dGVyVHdvRGVjaW1hbD12LENbbl0uY3VycmVuY3lGb3JtYXR0ZXJTbWFsbD15LENbbl0uY3VycmVuY3lGb3JtYXR0ZXJWZXJ5U21hbGw9ZyxDW25dLmN1cnJlbmN5Rm9ybWF0dGVyVmVyeVZlcnlTbWFsbD13LENbbl0uY3VycmVuY3lGb3JtYXR0ZXIxNURQPWIsQ1tuXS5jdXJyZW5jeUZvcm1hdHRlcjE4RFA9ayxDW25dLmN1cnJlbmN5Rm9ybWF0dGVyQWJicmV2aWF0ZWQ9eCl9Y29uc3Qgaj01MCxPPTFlMyxBPTFlNTtmdW5jdGlvbiBFKGUsdCxuPSJlbiIscj0hMSxvPSExLHM9ITEpe3Q9dC50b1VwcGVyQ2FzZSgpO2xldCBwPXZvaWQgMDtpZihkPT09dCYmXz09bnx8KGQ9dCxfPW4sUCh0LG4pKSxzKXtsZXQgcj14LmZvcm1hdChlKTtyZXR1cm4gYSh0KSYmIWkodCkmJihyPWAke3J9ICR7dH1gKSxjKHIsbil9aWYoITA9PT1vJiZlPjEwMClyZXR1cm4gYyhmLmZvcm1hdChlKSxuKTtpZigib2JqZWN0Ij09PXR5cGVvZiBvJiZudWxsIT09byl7aWYocil7bGV0IHQ9by5oYXNPd25Qcm9wZXJ0eSgiZGVjaW1hbFBsYWNlcyIpP2UudG9GaXhlZChvLmRlY2ltYWxQbGFjZXMpOmU7cmV0dXJuYCR7cGFyc2VGbG9hdCh0KS50b1ByZWNpc2lvbihvLnNpZ25pZmljYW50RmlndXJlcykvMX1gfWlmKG8uaGFzT3duUHJvcGVydHkoIm1heGltdW1EZWNpbWFsVHJhaWxpbmdaZXJvZXMiKSYmKHA9by5tYXhpbXVtRGVjaW1hbFRyYWlsaW5nWmVyb2VzKSxvLmhhc093blByb3BlcnR5KCJkZWNpbWFsUGxhY2VzIikmJm8uaGFzT3duUHJvcGVydHkoInNpZ25pZmljYW50RmlndXJlcyIpKXtjb25zdCByPXUodCxuLHZvaWQgMCxvLnNpZ25pZmljYW50RmlndXJlcyk7cmV0dXJuIGMoci5mb3JtYXQoTnVtYmVyLnBhcnNlRmxvYXQoZS50b0ZpeGVkKG8uZGVjaW1hbFBsYWNlcykpKSxuLHApfWlmKG8uaGFzT3duUHJvcGVydHkoImRlY2ltYWxQbGFjZXMiKXx8by5oYXNPd25Qcm9wZXJ0eSgic2lnbmlmaWNhbnRGaWd1cmVzIikpe2NvbnN0IHI9dSh0LG4sby5kZWNpbWFsUGxhY2VzLG8uc2lnbmlmaWNhbnRGaWd1cmVzKTtyZXR1cm4gYyhyLmZvcm1hdChlKSxuLHApfX1pZighYSh0KSl7Y29uc3QgaT1NYXRoLmFicyhlKTtyZXR1cm4gcj9pPDFlLTEyP2UudG9GaXhlZCgxOCk6aTwxZS05P2UudG9GaXhlZCgxNSk6aTwxZS02P2UudG9GaXhlZCgxMik6aTwuMDAxP2UudG9GaXhlZCg4KTppPDE/ZS50b0ZpeGVkKDYpOmUudG9GaXhlZCgyKTowPT09aT9jKG0uZm9ybWF0KGUpLG4scCk6aTwxZS0xMj9jKGsuZm9ybWF0KGUpLG4scCk6aTwxZS05P2MoYi5mb3JtYXQoZSksbixwKTppPDFlLTY/Yyh3LmZvcm1hdChlKSxuLHApOmk8LjA1P2MoZy5mb3JtYXQoZSksbixwKTppPDE/Yyh5LmZvcm1hdChlKSxuLHApOiJKUFkiPT09dCYmaTwxMDA/Yyh2LmZvcm1hdChlKSxuLHApOmMoaT5BP2YuZm9ybWF0KGUpOm0uZm9ybWF0KGUpLG4pfXtsZXQgdD1wYXJzZUZsb2F0KGUpO2lmKHIpcmV0dXJuIDA9PT1lP3QudG9GaXhlZCgyKTp0LnRvUHJlY2lzaW9uKDgpO2lmKDA9PT1lKXJldHVybiBjKG0uZm9ybWF0KGUpLG4scCk7aWYodD49TylyZXR1cm4gYyhmLmZvcm1hdChlKSxuKTtpZih0Pj1qJiZ0PE8pcmV0dXJuIGMoaC5mb3JtYXQoZSksbixwKTtpZih0Pj0xJiZ0PGopcmV0dXJuIGMoeS5mb3JtYXQoZSksbixwKTtpZih0Pj0xZS02JiZ0PDEpcmV0dXJuIGMoZy5mb3JtYXQoZSksbixwKTtpZih0Pj0xZS05JiZ0PDFlLTYpcmV0dXJuIGMody5mb3JtYXQoZSksbixwKTtpZih0Pj0xZS0xMiYmdDwxZS05KXJldHVybiBjKGIuZm9ybWF0KGUpLG4scCk7aWYodDwxZS0xMilyZXR1cm4gYyhrLmZvcm1hdChlKSxuLHApfX1lLmNsZWFyQ2FjaGU9UyxlLmZvcm1hdEN1cnJlbmN5PUUsZS5pc0NyeXB0bz1hLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KX0pKX0sZWJkNjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiY2I3YyIpLGk9bigiZDhlOCIpLGE9bigiMmI0YyIpKCJzcGVjaWVzIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dmFyIG4sbz1yKGUpLmNvbnN0cnVjdG9yO3JldHVybiB2b2lkIDA9PT1vfHx2b2lkIDA9PShuPXIobylbYV0pP3Q6aShuKX19LGViZmQ6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjYyYTAiKSgibWV0YSIpLGk9bigiZjc3MiIpLGE9bigiMDdlMyIpLG89bigiZDlmNiIpLmYsYz0wLHM9T2JqZWN0LmlzRXh0ZW5zaWJsZXx8ZnVuY3Rpb24oKXtyZXR1cm4hMH0scD0hbigiMjk0YyIpKChmdW5jdGlvbigpe3JldHVybiBzKE9iamVjdC5wcmV2ZW50RXh0ZW5zaW9ucyh7fSkpfSkpLGw9ZnVuY3Rpb24oZSl7byhlLHIse3ZhbHVlOntpOiJPIisgKytjLHc6e319fSl9LHU9ZnVuY3Rpb24oZSx0KXtpZighaShlKSlyZXR1cm4ic3ltYm9sIj09dHlwZW9mIGU/ZTooInN0cmluZyI9PXR5cGVvZiBlPyJTIjoiUCIpK2U7aWYoIWEoZSxyKSl7aWYoIXMoZSkpcmV0dXJuIkYiO2lmKCF0KXJldHVybiJFIjtsKGUpfXJldHVybiBlW3JdLml9LGQ9ZnVuY3Rpb24oZSx0KXtpZighYShlLHIpKXtpZighcyhlKSlyZXR1cm4hMDtpZighdClyZXR1cm4hMTtsKGUpfXJldHVybiBlW3JdLnd9LF89ZnVuY3Rpb24oZSl7cmV0dXJuIHAmJm0uTkVFRCYmcyhlKSYmIWEoZSxyKSYmbChlKSxlfSxtPWUuZXhwb3J0cz17S0VZOnIsTkVFRDohMSxmYXN0S2V5OnUsZ2V0V2VhazpkLG9uRnJlZXplOl99fSxlZGQ0OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImFwaV9lcnJvciI6IkNhblwndCBjb25uZWN0IHRvIENvaW5HZWNrbyBBUEkuIFBsZWFzZSB0cnkgYWdhaW4gbGF0ZXIuIiwicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkiLCJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiTWFya2V0IENhcCBSYW5rIiwibWNhcCI6Ik1hcmtldCBDYXAiLCIyNGhfdm9sdW1lIjoiMjRoIFZvbHVtZSIsIjI0aF9oaWdoX2xvdyI6IjI0aCBIaWdoL0xvdyJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IkNyeXB0byBQcmljZSBDb21wYXJpc29uIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IkNyeXB0byBNYXJrZXQgQ2FwIENvbXBhcmlzb24ifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNEggSGlnaCIsIjI0aF9sb3ciOiIyNEggTG93Iiwidmlld19wcmljZV9jaGFydCI6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIsInBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0SCBIaWdoIiwiMjRoX2xvdyI6IjI0SCBMb3ciLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0IiwicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIsInBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IkNyeXB0b2N1cnJlbmNpZXMgVHJlZSBNYXAiLCJzdWJ0aXRsZSI6IihUb3AgJXt0b3B9IGJ5IE1hcmtldCBDYXApIiwicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInByaWNlIjoiUHJpY2UiLCJtYXJrZXRfY2FwIjoiTWFya2V0IENhcCIsIjI0aF9jaGFuZ2UiOiIyNGggQ2hhbmdlIn0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJyYW5kb21fY29pbl9nZW5lcmF0b3IiOiJSYW5kb20gQ29pbiBHZW5lcmF0b3IiLCJjb2luc19mcm9tIjoiY29pbnMgZnJvbSIsImRpc2NsYWltZXIiOiJEaXNjbGFpbWVyOiBUaGlzIHRvb2wgaXMgY3JlYXRlZCBmb3IgZW50ZXJ0YWlubWVudCBwdXJwb3NlcyBhbmQgZG9lcyBub3QgY29uc3RpdHV0ZSBmaW5hbmNpYWwgYWR2aWNlLiIsInNwaW4iOiJTcGluIiwiYXZhaWxhYmxlX2NvaW5zIjoiQXZhaWxhYmxlIENvaW5zIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiQ29pbkdlY2tvIFByaWNlIFVwZGF0ZSIsInRvdGFsX21jYXAiOiJUb3RhbCBNIGNhcCIsIjI0aF92b2wiOiIyNGggVm9sdW1lIiwiZG9tIjoiRG9tIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IkV4Y2hhbmdlIiwicGFpciI6IlBhaXIiLCJwcmljZSI6IlByaWNlIiwidm9sdW1lIjoiVm9sdW1lIiwidHJ1c3Rfc2NvcmUiOiJUcnVzdCBTY29yZSIsInZpZXdfcHJpY2VfY2hhcnQiOiJWaWV3IFByaWNlIENoYXJ0IiwicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiVmlldyBhbGwgJXtjb2lufSBtYXJrZXRzIn19Jyl9LGYxODQ6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6Is6azrHPhM6sz4TOsc6+zrcgzrrOtc+GzrHOu86xzrnOv8+Azr/Or863z4POt8+CIiwibWNhcCI6Is6azrXPhs6xzrvOsc65zr/PgM6/zq/Ot8+DzrciLCIyNGhfdm9sdW1lIjoizozOs866zr/PgiAyNCDPic+Bz47OvSIsIjI0aF9oaWdoX2xvdyI6Is6lz4jOt867z4zPgi/Op86xzrzOt867z4zPgiAyNCDPic+Bz47OvSJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLOoM6xz4HOrc+HzrXPhM6xzrkgzrHPgM+MOiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiLOo8+NzrPOus+BzrnPg863IM+EzrnOvM+Ozr0gzrrPgc+Fz4DPhM6/zr3Ov868zrnPg868zqzPhM+Jzr0iLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoizqPPjc6zzrrPgc65z4POtyDOus61z4bOsc67zrHOuc6/z4DOv86vzrfPg863z4IgzrrPgc+Fz4DPhM6/zr3Ov868zrnPg868zqzPhM+Jzr0ifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLOoM6xz4HOrc+HzrXPhM6xzrkgzrHPgM+MOiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoizqXPiM63zrvPjM+CIDI0IM+Jz4HPjs69IiwiMjRoX2xvdyI6Is6nzrHOvM63zrvPjM+CIDI0IM+Jz4HPjs69Iiwidmlld19wcmljZV9jaGFydCI6Is6gz4HOv86yzr/Ou86uIM6zz4HOsc+Gzq7OvM6xz4TOv8+CIM+EzrnOvM+Ozr0gJXtjb2lufSIsInBvd2VyZWRfYnkiOiLOoM6xz4HOrc+HzrXPhM6xzrkgzrHPgM+MOiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6Is6gzrHPgc6tz4fOtc+EzrHOuSDOsc+Az4w6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoizqDOsc+Bzq3Ph861z4TOsc65IM6xz4DPjDogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoizqDOsc+Bzq3Ph861z4TOsc65IM6xz4DPjDogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiLOpc+IzrfOu8+Mz4IgMjQgz4nPgc+Ozr0iLCIyNGhfbG93IjoizqfOsc68zrfOu8+Mz4IgMjQgz4nPgc+Ozr0iLCJ2aWV3X3ByaWNlX2NoYXJ0IjoizqDPgc6/zrLOv867zq4gzrPPgc6xz4bOrs68zrHPhM6/z4Igz4TOuc68z47OvSAle2NvaW59IiwicG93ZXJlZF9ieSI6Is6gzrHPgc6tz4fOtc+EzrHOuSDOsc+Az4w6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiLOoM+Bzr/Oss6/zrvOriDOs8+BzrHPhs6uzrzOsc+Ezr/PgiDPhM65zrzPjs69ICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoizqDOsc+Bzq3Ph861z4TOsc65IM6xz4DPjDogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoizpPPgc6sz4bOt868zrEgdHJlZW1hcCDOus+Bz4XPgM+Ezr/Ovc6/zrzOuc+DzrzOrM+Ez4nOvSIsInN1YnRpdGxlIjoiKM6azr/Pgc+Fz4bOsc6vzrEgJXt0b3B9IM66zrHPhM6sIM66zrXPhs6xzrvOsc65zr/PgM6/zq/Ot8+DzrcpIiwicG93ZXJlZF9ieSI6Is6gzrHPgc6tz4fOtc+EzrHOuSDOsc+Az4w6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLOkc+Azr/PgM6/zq/Ot8+DzrcgzrXPhc64z4XOvc+Ozr06IM6Rz4XPhM6sIM+EzrEgzrXPgc6zzrHOu861zq/OsSDPh8+BzrfPg865zrzOv8+Azr/Ouc6/z43Ovc+EzrHOuSDOs865zrEgzrvPjM6zzr/Phc+CIM+Iz4XPh86xzrPPic6zzq/Osc+CIM66zrHOuSDOtM61zr0gzrHPgM6/z4TOtc67zr/Pjc69IM+Hz4HOt868zrHPhM6/zr/Ouc66zr/Ovc6/zrzOuc66zq3PgiDPg8+FzrzOss6/z4XOu86tz4IuIiwic3BpbiI6IlNwaW4iLCJhdmFpbGFibGVfY29pbnMiOiLOlM65zrHOuM6tz4POuc68zrEgzr3Ov868zq/Pg868zrHPhM6xIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoizpXOvc63zrzOrc+Bz4nPg863IM+EzrnOvM+Ozr0gzrHPgM+MIM+Ezr8gQ29pbkdlY2tvIiwidG90YWxfbWNhcCI6Is6jz4XOvc6/zrvOuc66zq4gzrrOtc+GzrHOu86xzrnOv8+Azr/Or863z4POtyIsIjI0aF92b2wiOiLOjM6zzrrOv8+CIM+EzrnPgiDPhM61zrvOtc+Fz4TOsc6vzrXPgiAyNCDPjs+BzrXPgiIsImRvbSI6Is6az4XPgc65zrHPgc+Hzq/OsSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiLOkc69z4TOsc67zrvOsc66z4TOrs+BzrnOvyIsInBhaXIiOiLOls61z43Os86/z4IiLCJwcmljZSI6Is6kzrnOvM6uIiwidm9sdW1lIjoizozOs866zr/PgiIsInRydXN0X3Njb3JlIjoiVHJ1c3QgU2NvcmUiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoizqDPgc6/zrLOv867zq4gzrPPgc6xz4bOrs68zrHPhM6/z4Igz4TOuc68z47OvSIsInBvd2VyZWRfYnkiOiLOoM6xz4HOrc+HzrXPhM6xzrkgzrHPgM+MOiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiLOoM+Bzr/Oss6/zrvOriDPjM67z4nOvSDPhM+Jzr0gzrHOs86/z4HPjs69ICV7Y29pbn0ifX0nKX0sZjM2NzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oImQ2YzciKSxpPSJmdW5jdGlvbiI9PT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09PXR5cGVvZiBTeW1ib2woImZvbyIpLGE9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxvPUFycmF5LnByb3RvdHlwZS5jb25jYXQsYz1PYmplY3QuZGVmaW5lUHJvcGVydHkscz1mdW5jdGlvbihlKXtyZXR1cm4iZnVuY3Rpb24iPT09dHlwZW9mIGUmJiJbb2JqZWN0IEZ1bmN0aW9uXSI9PT1hLmNhbGwoZSl9LHA9ZnVuY3Rpb24oKXt2YXIgZT17fTt0cnl7Zm9yKHZhciB0IGluIGMoZSwieCIse2VudW1lcmFibGU6ITEsdmFsdWU6ZX0pLGUpcmV0dXJuITE7cmV0dXJuIGUueD09PWV9Y2F0Y2gobil7cmV0dXJuITF9fSxsPWMmJnAoKSx1PWZ1bmN0aW9uKGUsdCxuLHIpeyghKHQgaW4gZSl8fHMocikmJnIoKSkmJihsP2MoZSx0LHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMSx2YWx1ZTpuLHdyaXRhYmxlOiEwfSk6ZVt0XT1uKX0sZD1mdW5jdGlvbihlLHQpe3ZhciBuPWFyZ3VtZW50cy5sZW5ndGg+Mj9hcmd1bWVudHNbMl06e30sYT1yKHQpO2kmJihhPW8uY2FsbChhLE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCkpKTtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrPTEpdShlLGFbY10sdFthW2NdXSxuW2FbY11dKX07ZC5zdXBwb3J0c0Rlc2NyaXB0b3JzPSEhbCxlLmV4cG9ydHM9ZH0sZjY5MzpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiQ2xhc3NlbWVudCIsIm1jYXAiOiJDYXBpdGFsaXNhdGlvbiBib3Vyc2nDqHJlIiwiMjRoX3ZvbHVtZSI6IlZvbHVtZSBzdXIgMjTCoGgiLCIyNGhfaGlnaF9sb3ciOiIyNEggSGF1dCAvIEJhcyJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQcm9wb3PDqSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiQ29tcGFyYWlzb24gQ291cnMgQ3J5cHRvbW9ubmFpZXMiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiQ29tcGFyYWlzb24gQ2FwaXRhbGlzYXRpb25zIENyeXB0byJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlByb3Bvc8OpIHBhciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTGUgcGx1cyDDqWxldsOpIHN1ciAyNMKgaCIsIjI0aF9sb3ciOiJMZSBwbHVzIGJhcyBzdXIgMjTCoGgiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVm9pciBsZSBHcmFwaGlxdWUgZGUgQ291cnMgZGUgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJQcm9wb3PDqSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQcm9wb3PDqSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQcm9wb3PDqSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUHJvcG9zw6kgcGFyICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTGUgcGx1cyDDqWxldsOpIHN1ciAyNMKgaCIsIjI0aF9sb3ciOiJMZSBwbHVzIGJhcyBzdXIgMjTCoGgiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVm9pciBsZSBHcmFwaGlxdWUgZGUgQ291cnMgZGUgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJQcm9wb3PDqSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZvaXIgbGUgR3JhcGhpcXVlIGRlIENvdXJzIGRlICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiUHJvcG9zw6kgcGFyICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IkRpYWdyYW1tZSBkZXMgY3J5cHRvLW1vbm5haWVzIiwic3VidGl0bGUiOiIoVG9wICV7dG9wfSBwYXIgQ2FwaXRhbGlzYXRpb24pIiwicG93ZXJlZF9ieSI6IlByb3Bvc8OpIHBhciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiQXZlcnRpc3NlbWVudCA6IENlcyBvdXRpbHMgc2VydmVudCBkZSBkaXZlcnRpc3NlbWVudCBldCBuZSBjb25zdGl0dWVudCBwYXMgZGVzIGNvbnNlaWxzIGZpbmFuY2llcnMuIiwic3BpbiI6IlRvdXJuZXIiLCJhdmFpbGFibGVfY29pbnMiOiJNb25uYWllcyBEaXNwb25pYmxlcyJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6Ik1pc2Ugw6AgSm91ciBDb3VycyBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiVG90YWwgQ2FwaXRhbGlzYXRpb24iLCIyNGhfdm9sIjoiVm9sdW1lIHN1ciAyNMKgaCIsImRvbSI6IkRvbSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJQbGF0ZS1mb3JtZSBkXCfDqWNoYW5nZSIsInBhaXIiOiJQYWlyZSIsInByaWNlIjoiQ291cnMiLCJ2b2x1bWUiOiJWb2x1bWUiLCJ0cnVzdF9zY29yZSI6IlNjb3JlIGRlIGNvbmZpYW5jZSIsInZpZXdfcHJpY2VfY2hhcnQiOiJWb2lyIEdyYXBoaXF1ZSBDb3VycyIsInBvd2VyZWRfYnkiOiJQcm9wb3PDqSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiVm9pciB0b3VzIGxlcyBtYXJjaMOpcyAle2NvaW59In19Jyl9LGY3NzI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIm9iamVjdCI9PT10eXBlb2YgZT9udWxsIT09ZToiZnVuY3Rpb24iPT09dHlwZW9mIGV9fSxmOTIxOmZ1bmN0aW9uKGUsdCxuKXtuKCIwMTRiIiksbigiYzIwNyIpLG4oIjY5ZDMiKSxuKCI3NjVkIiksZS5leHBvcnRzPW4oIjU4NGEiKS5TeW1ib2x9LGY5NDc6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IlJhbmdlcmluZyBldHRlciBtYXJrZWRzdmVyZGkiLCJtY2FwIjoiTWFya2Vkc3ZlcmRpIiwiMjRoX3ZvbHVtZSI6IjI0LXRpbWVycyBWb2x1bSIsIjI0aF9oaWdoX2xvdyI6IjI0LXRpbWVycyBIw7h5L0xhdiJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcmV2ZXQgYXYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiS3J5cHRvcHJpcyBzYW1tZW5saWduaW5nIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IktyeXB0byBtYXJrZWRzdmVyZGkgc2FtbWVubGlnbmluZyJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRyZXZldCBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjQtdGltZXJzIGjDuHkiLCIyNGhfbG93IjoiMjQtdGltZXJzIGxhdiIsInZpZXdfcHJpY2VfY2hhcnQiOiJTZSAle2NvaW59IHByaXNkaWFncmFtIiwicG93ZXJlZF9ieSI6IkRyZXZldCBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRyZXZldCBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRyZXZldCBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcmV2ZXQgYXYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNC10aW1lcnMgaMO4eSIsIjI0aF9sb3ciOiIyNC10aW1lcnMgbGF2Iiwidmlld19wcmljZV9jaGFydCI6IlNlICV7Y29pbn0gcHJpc2RpYWdyYW0iLCJwb3dlcmVkX2J5IjoiRHJldmV0IGF2ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiJTZSAle2NvaW59IHByaXNkaWFncmFtIiwicG93ZXJlZF9ieSI6IkRyZXZldCBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiJUcmVkaWFncmFtIGZvciBrcnlwdG92YWx1dGFlciIsInN1YnRpdGxlIjoiKFRvcHAgJXt0b3B9IGV0dGVyIG1hcmtlZHN2ZXJkaSkiLCJwb3dlcmVkX2J5IjoiRHJldmV0IGF2ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiJBbnN2YXJzZnJhc2tyaXZlbHNlOiBEZXR0ZSBlciB2ZXJrdMO4eSBzb20gdW5kZXJob2xkbmluZyBvZyB1dGdqw7hyIGlra2Ugw7hrb25vbWlza2UgcsOlZC4iLCJzcGluIjoiU251cnIiLCJhdmFpbGFibGVfY29pbnMiOiJUaWxnamVuZ2VsaWdlIG15bnRlciJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyBwcmlzb3BwZGF0ZXJpbmciLCJ0b3RhbF9tY2FwIjoiVG90YWwgTSBNYXJrZWRzdmVyZGkiLCIyNGhfdm9sIjoiMjR0IG9tc2V0bmluZyIsImRvbSI6IkRvbSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJCw7hycyIsInBhaXIiOiJQYXIiLCJwcmljZSI6Ikt1cnMiLCJ2b2x1bWUiOiJPbXNldG5pbmciLCJ0cnVzdF9zY29yZSI6IlRydXN0LXBvZW5nc3VtIiwidmlld19wcmljZV9jaGFydCI6IlNlIHByaXNkaWFncmFtIiwicG93ZXJlZF9ieSI6IkRyZXZldCBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJWaXMgYWxsZSAle2NvaW59IG1hcmtlZGVyIn19Jyl9LGZhNGU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj0hMSxpPWZ1bmN0aW9uKCl7fTtpZihyKXt2YXIgYT1mdW5jdGlvbihlLHQpe3ZhciBuPWFyZ3VtZW50cy5sZW5ndGg7dD1uZXcgQXJyYXkobj4xP24tMTowKTtmb3IodmFyIHI9MTtyPG47cisrKXRbci0xXT1hcmd1bWVudHNbcl07dmFyIGk9MCxhPSJXYXJuaW5nOiAiK2UucmVwbGFjZSgvJXMvZywoZnVuY3Rpb24oKXtyZXR1cm4gdFtpKytdfSkpOyJ1bmRlZmluZWQiIT09dHlwZW9mIGNvbnNvbGUmJmNvbnNvbGUuZXJyb3IoYSk7dHJ5e3Rocm93IG5ldyBFcnJvcihhKX1jYXRjaChvKXt9fTtpPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1hcmd1bWVudHMubGVuZ3RoO249bmV3IEFycmF5KHI+Mj9yLTI6MCk7Zm9yKHZhciBpPTI7aTxyO2krKyluW2ktMl09YXJndW1lbnRzW2ldO2lmKHZvaWQgMD09PXQpdGhyb3cgbmV3IEVycm9yKCJgd2FybmluZyhjb25kaXRpb24sIGZvcm1hdCwgLi4uYXJncylgIHJlcXVpcmVzIGEgd2FybmluZyBtZXNzYWdlIGFyZ3VtZW50Iik7ZXx8YS5hcHBseShudWxsLFt0XS5jb25jYXQobikpfX1lLmV4cG9ydHM9aX0sZmE1YjpmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPW4oIjU1MzciKSgibmF0aXZlLWZ1bmN0aW9uLXRvLXN0cmluZyIsRnVuY3Rpb24udG9TdHJpbmcpfSxmYWIyOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI3NzI2IikuZG9jdW1lbnQ7ZS5leHBvcnRzPXImJnIuZG9jdW1lbnRFbGVtZW50fSxmZGVmOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPSJcdFxuXHZcZlxyIMKg4ZqA4aCO4oCA4oCB4oCC4oCD4oCE4oCF4oCG4oCH4oCI4oCJ4oCK4oCv4oGf44CAXHUyMDI4XHUyMDI5XHVmZWZmIn0sZmZlYjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiUGl5YXNhIERlxJ9lcmkgU8SxcmFsYW1hc8SxIiwibWNhcCI6IlBpeWFzYSBEZcSfZXJpIiwiMjRoX3ZvbHVtZSI6IjI0IFNhYXRsaWsgSGFjaW0iLCIyNGhfaGlnaF9sb3ciOiIyNFNBIFnDvGtzZWsgLyBEw7zFn8O8ayJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IHRhcmFmxLFuZGFuIGRlc3Rla2xlbm1la3RlZGlyIiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJLcmlwdG8gRml5YXQgS2FyxZ/EsWxhxZ90xLFybWFzxLEiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiS3JpcHRvIFBpeWFzYSBEZcSfZXJpIEthcsWfxLFsYcWfdMSxcm1hc8SxIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSB0YXJhZsSxbmRhbiBkZXN0ZWtsZW5tZWt0ZWRpciJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0UyBZw7xrc2VrIiwiMjRoX2xvdyI6IjI0UyBEw7zFn8O8ayIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IEZpeWF0IEdyYWZpxJ9pbmkgR8O2csO8bnTDvGxlIiwicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gdGFyYWbEsW5kYW4gZGVzdGVrbGVubWVrdGVkaXIifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSB0YXJhZsSxbmRhbiBkZXN0ZWtsZW5tZWt0ZWRpciJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IHRhcmFmxLFuZGFuIGRlc3Rla2xlbm1la3RlZGlyIn0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IHRhcmFmxLFuZGFuIGRlc3Rla2xlbm1la3RlZGlyIn0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0UyBZw7xrc2VrIiwiMjRoX2xvdyI6IjI0UyBEw7zFn8O8ayIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IEZpeWF0IEdyYWZpxJ9pbmkgR8O2csO8bnTDvGxlIiwicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gdGFyYWbEsW5kYW4gZGVzdGVrbGVubWVrdGVkaXIifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IEZpeWF0IEdyYWZpxJ9pbmkgR8O2csO8bnTDvGxlIiwicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gdGFyYWbEsW5kYW4gZGVzdGVrbGVubWVrdGVkaXIifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IktyaXB0byBQYXJhIEHEn2FjxLEgSGFyaXRhc8SxIiwic3VidGl0bGUiOiIoUGl5YXNhIERlxJ9lcmluZSBHw7ZyZSBFbiDEsHlpICV7dG9wfSkiLCJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSB0YXJhZsSxbmRhbiBkZXN0ZWtsZW5tZWt0ZWRpciJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IlNvcnVtbHVsdWsgUmVkZGk6IEJ1IGFyYcOnbGFyIGXEn2xlbmNlIGFtYcOnbMSxZMSxciB2ZSBmaW5hbnNhbCB0YXZzaXllIHRlxZ9raWwgZXRtZXouIiwic3BpbiI6IkTDtm5kw7xyIiwiYXZhaWxhYmxlX2NvaW5zIjoiTWV2Y3V0IENvaW5cJ2xlciJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyBGaXlhdCBHw7xuY2VsbGVtZXNpIiwidG90YWxfbWNhcCI6IlRvcGxhbSBQIGRlxJ9lcmkiLCIyNGhfdm9sIjoiMjQgU2FhdGxpayBIYWNpbSIsImRvbSI6IkhrbSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJCb3JzYSIsInBhaXIiOiLDh2lmdCIsInByaWNlIjoiRml5YXQiLCJ2b2x1bWUiOiJIYWNpbSIsInRydXN0X3Njb3JlIjoiR8O8dmVuIFB1YW7EsSIsInZpZXdfcHJpY2VfY2hhcnQiOiIgRml5YXQgR3JhZmnEn2luaSBHw7Zyw7xudMO8bGUiLCJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSB0YXJhZsSxbmRhbiBkZXN0ZWtsZW5tZWt0ZWRpciIsInZpZXdfYWxsIjoiVMO8bSAle2NvaW59IHBpeWFzYWxhcsSxbsSxIGfDtnLDvG50w7xsZSJ9fScpfX0pOw=="}},"time_used":48,"timings":{"blocked":-1,"dns":3,"connect":26,"send":0,"wait":15,"receive":3,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/mainsliderbg.jpg","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.760Z","timestamp":1785158432760,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/mainsliderbg.jpg HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/styles/custom.css\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/jpeg\r\nserver-timing: cfExtPri\r\npriority: u=4,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:32 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23159\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=zcXLeX4IlVpcdUeo7bG9mzlzOGV4cqGHK%2Bg1IciSzZxjJVO27h%2B6pt5Q9mmcBjWS3JiYhT6a3GGZUWck61JtTeo53A6obPNpA1ja2fLsJMz9sUxkf9l8MP0%2F6%2BM5n3%2FNbNqLFw%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12ccc9856b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 632634\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"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":632634,"size_decoded":633403,"mime_type":"image/jpeg","magic":"JPEG image data, Exif standard: [TIFF image data, little-endian, direntries=0], progressive, precision 8, 1920x920, components 3","md5":"3a933e7a541b7b8ef75349d49426f605","sha1":"31ebd83cc8a266f31bbeee163c1ec1e15c866b15","sha256":"3b83979c8949a4f681b7a6ca4f3349e5b81a603705c50ed59f039d20572dc1f2","sha512":"9e8b64bed313048374620d53889ce3b1b8fdbe05017c50787ad6296783b43e30dc082abbcb2c789ec271d4c860d6d82cc7eb71be88ae6246448fe95e37fd0ea0","ssdeep":"12288:MMhoTdXqsM8hV6zPj6HmG0obdn3TnTGJv4McvEVsIrxIqW3z3ODBGQ:jGThPM8hV5mo3TnYQjpPyFGQ","tlshash":"48d423c95ba3505ff7e81238c2301b7de3b6ed58e15c2d8626d48e50b12b9399b14afc","first_seen":"2023-08-05T18:30:32Z","last_seen":"2026-07-27T13:21:39.126197Z","times_seen":18,"resource_available":false,"data":"/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAABkAAD/4QMraHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjMtYzAxMSA2Ni4xNDU2NjEsIDIwMTIvMDIvMDYtMTQ6NTY6MjcgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkYxRkMyQzA0ODVERjExRTlCMjU4RUU1RkNFRTJGMDlBIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkYxRkMyQzA1ODVERjExRTlCMjU4RUU1RkNFRTJGMDlBIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjFGQzJDMDI4NURGMTFFOUIyNThFRTVGQ0VFMkYwOUEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RjFGQzJDMDM4NURGMTFFOUIyNThFRTVGQ0VFMkYwOUEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7/7gAmQWRvYmUAZMAAAAABAwAVBAMGCg0AAbw2AAPpOQAGNMkACac4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xdu37fDZzlJ2S3SW6S3SW6S3n/8A0Ii3SWl+h55xbV1gqW6S3Twr7zLS3SW6S3SW6S3SLStWtst0lpbzl/islJTrK418r1lOsp1jyS//AOoEW4LJZzIpUsu2WcyWcyWcyWcyWcyWcyWcyWcyWc5SU6ynWU6ynWdkt0lukt0lukt5/wD+wiCLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7y+R7v9nafP8AZXIe7/ZVRxdtlv8AZXIe7/ZXIe7/AGVyHu/2VyHu/wBlch7v9lch7v8AZXIe7/ZXIe7/AGdp7v8AZ2ff9l+R/svyP9l+R/svyP8AZf8A0f7LOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOT5/ss5Pn+yzk+f7LOT5/ss5Pn+yzk+f7LOT5/ss5Pn+yzk+f7LOT5/ss5Pn+yzk+f7LOT5/ss5Pn+yzk+f7LOT5/ss5Pn+yzk8u8s5PLvLOT5/ss5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8s5PLvLOTy7yzk8u8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"}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":15,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"translate.googleapis.com/translate_static/img/loading.gif","fqdn":"translate.googleapis.com","domain":"translate.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.653Z","timestamp":1785158433653,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"upload.video.google.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:27 GMT","end":"Mon, 21 Sep 2026 08:39:26 GMT"},"fingerprint":{"sha1":"50:37:CF:61:33:A1:EE:47:D9:3D:A6:5E:07:BA:4C:FF:F7:25:9F:76","sha256":"7D:4D:21:06:63:E2:5E:F0:8C:59:8E:EB:B7:94:2B:81:70:11:D3:F4:C0:A0:81:A6:1B:E7:27:FD:56:10:1A:11"}}},"request":{"raw":"GET /translate_static/img/loading.gif HTTP/1.1\r\nHost: translate.googleapis.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 702\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Fri, 24 Jul 2026 21:36:56 GMT\r\nexpires: Sat, 24 Jul 2027 21:36:56 GMT\r\ncache-control: public, max-age=31536000\r\nage: 229417\r\nlast-modified: Thu, 03 Oct 2019 10:15:00 GMT\r\ncontent-type: image/gif\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":702,"size_decoded":1361,"mime_type":"image/gif","magic":"GIF image data, version 89a, 16 x 16","md5":"eefaa072b284a305c12c06608333abc2","sha1":"58272721ccc1efda26eaa22354022c7c793edbb6","sha256":"fb6b7bcc1ab09f27db17bcbdf5239ce1d52af34f1fc5125b3fc8528a07848d21","sha512":"c5ccfdcd9ce76de85f043a1733c9f0b620e15babbaf2a5639684c7b2bb8e5a66473c9a83f14cb48d9cb6c6a1c6b36f2c5a28e25abaf131fb85ec5eedecbae4ac","ssdeep":"","tlshash":"5d01dd13f3d50473f66d0075a20cc57f010635daaadad7089a48117cfe1983c5239b82","first_seen":"2023-04-05T11:18:23Z","last_seen":"2026-08-17T20:02:35.870478Z","times_seen":19897,"resource_available":false,"data":"R0lGODlhEAAQAPIAAP///wAAAMLCwkJCQgAAAGJiYoKCgpKSkiH/C05FVFNDQVBFMi4wAwEAAAAh/h1CdWlsdCB3aXRoIEdJRiBNb3ZpZSBHZWFyIDQuMAAh/hVNYWRlIGJ5IEFqYXhMb2FkLmluZm8AIfkECQoAAAAsAAAAABAAEAAAAzMIutz+MMpJaxNjCDoIGZwHTphmCUWxMcK6FJnBti5gxMJx0C1bGDndpgc5GAwHSmvnSAAAIfkECQoAAAAsAAAAABAAEAAAAzQIutz+TowhIBuEDLuw5opEcUJRVGAxGSBgTEVbGqh8HLV13+1hGAeAINcY4oZDGbIlJCoSACH5BAkKAAAALAAAAAAQABAAAAM2CLoyIyvKQciQzJRWLwaFYxwO9BlO8UlCYZircBzwCsyzvRzGqCsCWe0X/AGDww8yqWQan78EACH5BAkKAAAALAAAAAAQABAAAAMzCLpiJSvKMoaR7JxWX4WLpgmFIQwEMUSHYRwRqkaCsNEfA2JSXfM9HzA4LBqPyKRyOUwAACH5BAkKAAAALAAAAAAQABAAAAMyCLpyJytK52QU8BjzTIEMJnbDYFxiVJSFhLkeaFlCKc/KQBADHuk8H8MmLBqPyKRSkgAAIfkECQoAAAAsAAAAABAAEAAAAzMIuiDCkDkX43TnvNqeMBnHHOAhLkK2ncpXrKIxDAYLFHNhu7A195UBgTCwCYm7n20pSgAAIfkECQoAAAAsAAAAABAAEAAAAzIIutz+8AkR2ZxVXZoB7tpxcJVgiN1hnN00loVBRsUwFJBgm7YBDQTCQBCbMYDC1s6RAAAh+QQJCgAAACwAAAAAEAAQAAADMgi63P4wykmrZULUnCnXHggIwyCOx3EOBDEwqcqwrlAYwmEYB1bapQIgdWIYgp5bEZAAADsAAAAAAAAAAAAK"}},"time_used":17,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":17,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.google.com/js/th/-kKZYXbYL1zKddVWiRpKQAs-FFrmXi_6UkcmhFlYLos.js","fqdn":"www.google.com","domain":"google.com","tld":"com"},"ip":{"addr":"142.251.151.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/4ekOcDG2D8E","date":"2026-07-27T13:20:34.031Z","timestamp":1785158434031,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.google.com","organization":""},"issuer":{"commonName":"WR2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:25 GMT","end":"Mon, 21 Sep 2026 08:37:24 GMT"},"fingerprint":{"sha1":"D9:DA:81:30:78:3E:9C:6B:5F:9D:18:52:0E:BE:6D:52:2F:FB:33:E0","sha256":"EA:E2:2D:87:EC:9C:D6:51:9D:59:E4:13:35:3B:97:14:E3:DA:58:2D:1C:69:19:41:54:94:25:C3:94:17:F3:0C"}}},"request":{"raw":"GET /js/th/-kKZYXbYL1zKddVWiRpKQAs-FFrmXi_6UkcmhFlYLos.js HTTP/1.1\r\nHost: www.google.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.youtube.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\ncontent-encoding: br\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/botguard-scs\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"botguard-scs\"\r\nreport-to: {\"group\":\"botguard-scs\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/botguard-scs\"}]}\r\ncontent-length: 23710\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Tue, 21 Jul 2026 17:03:41 GMT\r\nexpires: Wed, 21 Jul 2027 17:03:41 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: 505013\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":62145,"size_decoded":24521,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (60918)","md5":"175c5223286c359a85dc124e70b631cc","sha1":"9783da70cc4ec9e1ee0345dcbad47674d41c5ed7","sha256":"fa42996176d82f5cca75d556891a4a400b3e145ae65e2ffa5247268459582e8b","sha512":"cfa0f26623d1cb13939c7b675013156701c25016a2eb9c8fe728cb97c652643368bb57914488e6f2ad40d97606a7cb39396905dad46897148f68f353b80b2d82","ssdeep":"768:jcaBTPMErdYHnCuKN9dPS5oPX3zp76JSAZg+hCU7aeTEPecnjfJG9CwaebQHr6na:jcainjK1pHh6i+9aeQmKSLQLOEEK","tlshash":"cc532aeff2d273710de665e2045b820d92be75525c40189eba05e7f86eb0c47e02bf29","first_seen":"2026-07-22T04:26:21.664288Z","last_seen":"2026-07-28T07:04:56.300909Z","times_seen":362,"resource_available":true,"data":"Ly8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGV5SjJaWEp6YVc5dUlqb2dNeXdpYzI5MWNtTmxjeUk2V3lJaVhTd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lJQ0pkTENKdVlXMWxjeUk2V3lKamJHOXpkWEpsUkhsdVlXMXBZMEoxZEhSdmJpSmRMQ0p0WVhCd2FXNW5jeUk2SWtGQlFVRTdRVUZCUVR0QlFVRkJPMEZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUVpZlE9PQooZnVuY3Rpb24oKXt2YXIgYz1mdW5jdGlvbihmLEwsWSxGLFMseSxyLEcsSSxwKXtmb3IoST05NjtJIT04NzspaWYoST09MzcpST1ZPDwxJjM/NTQ6ZjtlbHNlIGlmKEk9PWYpcD1GLEk9NTQ7ZWxzZXtpZihJPT1MKXJldHVybiBwO2lmKEk9PTU0KUk9KFkmNTMpPT1ZPzI2Okw7ZWxzZSBpZihJPT05NilJPTM3O2Vsc2UgaWYoST09MjYpe2E6e2lmKHI9KEc9Rix1KS50cnVzdGVkVHlwZXMsIXJ8fCFyLmNyZWF0ZVBvbGljeSl7cD1HO2JyZWFrIGF9dHJ5e0c9ci5jcmVhdGVQb2xpY3koUyx7Y3JlYXRlSFRNTDpYLGNyZWF0ZVNjcmlwdDpYLGNyZWF0ZVNjcmlwdFVSTDpYfSl9Y2F0Y2goQSl7aWYodS5jb25zb2xlKXUuY29uc29sZVt5XShBLm1lc3NhZ2UpfXA9R31JPUx9fX0sWD1mdW5jdGlvbihmKXtyZXR1cm4gYy5jYWxsKHRoaXMsMjgsNzksNixmKX0sdT10aGlzfHxzZWxmOygwLGV2YWwpKGZ1bmN0aW9uKGYsTCl7cmV0dXJuKEw9YygyOCw3OSw1LG51bGwsImFkIiwiZXJyb3IiKSkmJmYuZXZhbChMLmNyZWF0ZVNjcmlwdCgiMSIpKT09PTE/ZnVuY3Rpb24oWSl7cmV0dXJuIEwuY3JlYXRlU2NyaXB0KFkpfTpmdW5jdGlvbihZKXtyZXR1cm4iIitZfX0odSkoQXJyYXkoTWF0aC5yYW5kb20oKSo3ODI0fDApLmpvaW4oIlxuIikrWycvLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsZXlKMlpYSnphVzl1SWpvZ015d2ljMjkxY21ObGN5STZXeUlpWFN3aWMyOTFjbU5sYzBOdmJuUmxiblFpT2xzaUlDSmRMQ0p1WVcxbGN5STZXeUpqYkc5emRYSmxSSGx1WVcxcFkwSjFkSFJ2YmlKZExDSnRZWEJ3YVc1bmN5STZJa0ZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUU3UVVGQlFUdEJRVUZCTzBGQlFVRWlmUT09JywKJyhmdW5jdGlvbigpey8qJywKJycsCicgQ29weXJpZ2h0IEdvb2dsZSBMTEMnLAonIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wJywKJyovJywKJ3ZhciByUD1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRil7Zm9yKHk9OTY7eSE9STspaWYoeT09OTcpcD1YP3R5cGVvZiBYLmVvPT09ImZ1bmN0aW9uIj9YLmVvKCk6bmV3IFg6bnVsbCx5PTQwO2Vsc2UgaWYoeT09NDApdGhpcy5HPXAseT03OTtlbHNlIGlmKHk9PTc5KXk9TCs5Pj4xPEwmJihMKzdeMjUpPj1MPzkwOjI4O2Vsc2UgaWYoeT09MjYpdGhpcy5VPVkseT01NDtlbHNlIGlmKHk9PTcyKXk9KFg9SWFbdV0pPzkzOjQ5O2Vsc2UgaWYoeT09NjgpeT0xMjtlbHNlIGlmKHk9PTM1KUxFLmNhbGwodGhpcyxyKSx5PTE0O2Vsc2UgaWYoeT09NDkpUz0oYz1PYmplY3QuZ2V0UHJvdG90eXBlT2YoUy5wcm90b3R5cGUpKSYmYy5jb25zdHJ1Y3Rvcix5PTU7ZWxzZSBpZih5PT0zNyl5PShMXjUxKT4+ND49MyYmTC00PDIxPzI2OjU0O2Vsc2V7aWYoeT09MjgpcmV0dXJuIEY7eT09NT95PTEyOnk9PTQyPyh1PWlCKDMsUykseT03Mik6eT09MTI/eT1TPzQyOjk3Onk9PTkwPyh0aGlzLnR5cGU9WSx0aGlzLmN1cnJlbnRUYXJnZXQ9dGhpcy50YXJnZXQ9Zix0aGlzLmRlZmF1bHRQcmV2ZW50ZWQ9dGhpcy5GbT1mYWxzZSx5PTI4KTp5PT05Mz95PTk3Onk9PTYwPyhTPXRoaXMuY29uc3RydWN0b3IseT02OCk6eT09NTQ/eT0oTHw4KT09TD8zNTo3OTp5PT05Nj95PTM3Onk9PTE0JiYoeT0ocD1mKT80MDo2MCl9fSxxPWZ1bmN0aW9uKEksTCxZLGYscixwLHUpeygoSXw1KT4+Mz49MCYmSTw8MTwxNiYmKGY9JEsoWSksZiYxMjgmJihmPS0yKn4oZiZMKS0xK34oZnxMKSsoZl5MKXwkSyhZKTw8NyksdT1mKSxJKzU+PTIwKSYmKEleMTcpPDM4JiYoZj1wRVtMLkJdKEwuR3gpLGZbTC5CXT1mdW5jdGlvbigpe3JldHVybiBZfSxmLmNvbmNhdD1mdW5jdGlvbihYKXtZPVh9LHU9Zik7d2hpbGUoSS00PDMxJiYoKEl8NykmMTUpPj0xMil7Zm9yKHA9KHI9TihZLDIxKSwwKTtmPjA7Zi0tKXA9cDw8THwkSyhZKTtpZihKKFkscixwKSx7fSlicmVha31pZigoSXwyNCk9PUkpaWYocj1qMCgiYXJyYXkiLGYsIm51bWJlciIpPT09ImFycmF5Ij9mOltmXSx0aGlzLlcpTCh0aGlzLlcpO2Vsc2UgdHJ5e3A9IXRoaXMuVC5sZW5ndGgmJiF0aGlzLk4sZShbdUIsW10scixMLFldLDkyLHRoaXMpLFkmJiFwfHxYZih0cnVlLDMsMCx0aGlzLFksdHJ1ZSl9Y2F0Y2goWCl7Syg2NCx0aGlzLFgsMCksTCh0aGlzLlcpfXJldHVybiB1fSxOPWZ1bmN0aW9uKEksTCxZLGYscil7Zm9yKGZhbHNlOyEoTDw8MiY3KTshIVtdKXthOntpZihJLk8pe3I9VGwoSS5aLEkpO2JyZWFrIGF9cj0oKGY9a0sodHJ1ZSxJLDgpLChmfDEyOCktfihmJjEyOCkrfihmfDEyOCkpJiYoZj0tMTMwLX4oZnwxMjgpLShmfC0xMjkpLFk9a0sodHJ1ZSxJLDIpLGY9KGY8PDIpKyhZfDApKSxmKX1pZigiVyIpYnJlYWt9aWYoKEwmOTMpPT1MKWE6e3doaWxlKEkuTyl7d2hpbGUodHJ1ZSlpZihyPVRsKEkuWixJKSx0cnVlKWJyZWFrO2JyZWFrIGE7aWYoW10pYnJlYWt9KChZPWtLKHRydWUsSSw4KSxZKXwxMjgpLX4oWSYxMjgpK34oWXwxMjgpJiYoWT0tMTMwLX4oWXwxMjgpLShZfC0xMjkpLGY9a0sodHJ1ZSxJLDIpLFk9KFk8PDIpKyhmfDApKSxyPVl9cmV0dXJuIHJ9LFQ9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYpeygoTHwxKSYxNCk9PTImJihGPShYPShyPShjPWZbWV08PDI0LHA9ZlstMi1+WS0gLTJdPDwxNiwoY3xJKSsocHxJKS0oYyZwKSksdT1mWzIqKFl8MiktMip+KFkmMikrflkrLTNdPDw4LCh1fEkpK34ociZ1KS1+ciksUz1mWzIqKFl8MyktfihZJjMpK34oWXwzKV0sKFN8SSkrfihYJlMpLX5YKSk7Zm9yKFtdIT0oZmFsc2UhPW51bGwpOyEoKExeMTgpPj40KTt0cnVlLnRydWUpe2E6e2lmKEkuTyl7Rj1UbChJLlosSSk7YnJlYWsgYX0oWT1rSyh0cnVlLEksOCksWXwxMjgpLX4oWSYxMjgpK34oWXwxMjgpJiYoWT0tMTMwLX4oWXwxMjgpLShZfC0xMjkpLGY9a0sodHJ1ZSxJLDIpLFk9KFk8PDIpKyhmfDApKSxGPVl9aWYodHJ1ZSE9W10pYnJlYWt9KCgoTCY1NCk9PUwmJihGPXk9ZnVuY3Rpb24oKXt7dmFyIEc9ODA7d2hpbGUoRyE9OClpZihHPT0wKUc9Zj09WT85ODo0ODtlbHNlIGlmKEc9PTQ0KXt2YXIgQT1YZih0cnVlLDUsKGUoRCw5NCxwKSwwKSxwLGZhbHNlLGZhbHNlKTtHPTI0fWVsc2UgaWYoRz09OTgpe3ZhciBRPSFwLlQubGVuZ3RoJiYhcC5OO0c9KChlKEQsODYscCksUSkmJlhmKHRydWUsNiwwLHAsZmFsc2UsZmFsc2UpLDI0KX1lbHNlIGlmKEc9PTgwKUc9cC5VPT1wPzI5Ojg7ZWxzZSBpZihHPT0xMil2YXIgRD1bKEc9NCxNZiksdSxyLHZvaWQgMCxYLGMsYXJndW1lbnRzXTtlbHNlIGlmKEc9PTQ4KUE9QlMoMSwyOTcscCxEKSxHPTI0O2Vsc2UgaWYoRz09MjkpRz1wLlM/MTI6NTtlbHNlIGlmKEc9PTUpWCYmYyYmWC5yZW1vdmVFdmVudExpc3RlbmVyKGMseSxIUyksRz04O2Vsc2UgaWYoRz09NClHPWY9PUk/NDQ6MDtlbHNlIGlmKEc9PTI0KXJldHVybiBBfX0pLEwpJjI5KT09TCYmKFM9VmMscj1bLTY5LDQsOTcsMjIsLTEwLDgyLHIsODgsLTczLC02Ml0sdT0ocHw3KS1+KHAmNykrLTgtKHAmLTgpLGM9cEVbWS5CXShZLnhJKSxjW1kuQl09ZnVuY3Rpb24oRyl7WD1HLHUrPTYrNypwLHUmPTd9LGMuY29uY2F0PWZ1bmN0aW9uKEcsQSxRLEQsVyxiKXtyZXR1cm4oKFg9KFE9MTgyMCpYLShEPWYlMTYrMSxJKmYpKmYqWCtyW2I9dSs2NywoYnwwKSsofmJeNyktKGJ8LTgpXSpmKkQrKFMoKXwwKSpEKzUqZipmKkQtMjA4KmYqWC1EKlgrNTIqWCpYK3Usdm9pZCAwKSxXPXJbUV0scilbQT11KzI5JjcsRz1wJjIsLTEtMip+KEF8RykrKH5BXkcpXT1XLHIpW3UrKC1+KHB8MiktKHAmLTMpKyhwfC0zKSldPTQsV30sRj1jKTt3aGlsZSh0cnVlKXtyZXR1cm4gRjtpZighIiI9PSFmYWxzZSlicmVha319LGdQPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSxGLEcsQSl7e0c9NzQ7d2hpbGUoRyE9NylpZihHPT0yMSlBKFMpLEc9OTU7ZWxzZSBpZihHPT02MilHPShMLTN8NzUpPEwmJihMKzleNik+PUw/NTU6NTM7ZWxzZXtpZihHPT04NylyZXR1cm4gRjtpZihHPT02OSlHPSFteigwLCJvYmplY3QiLHIsMyxmLFMpfHxTMChTLEksMzMpJiZTLm5vZGVUeXBlPlk/MjE6NTA7ZWxzZSBpZihHPT02MClHPTc4O2Vsc2UgaWYoRz09NzQpRz02MjtlbHNlIGlmKEc9PTc4KUc9eTxwLmxlbmd0aD82NDo1MztlbHNlIGlmKEc9PTYzKUc9KExeNzYpJjEzPzEyOjI3O2Vsc2UgaWYoRz09NjQpUz1wW3ldLEc9Njk7ZWxzZSBpZihHPT01NylGPVFjKEksMjAsSSksRz04NztlbHNlIGlmKEc9PTU1KUE9ZnVuY3Rpb24oUSl7USYmdS5hcHBlbmRDaGlsZCh0eXBlb2YgUT09PSJzdHJpbmciP1guY3JlYXRlVGV4dE5vZGUoUSk6USl9LHk9MSxHPTYwO2Vsc2UgaWYoRz09NjEpRz02NjtlbHNlIGlmKEc9PTk1KXkrKyxHPTc4O2Vsc2UgaWYoRz09NTMpRz0oTC04fDQyKTxMJiZMLTk8PDE+PUw/MzY6NjM7ZWxzZSBpZihHPT04OClYPXIubGVuZ3RoLHA9dHlwZW9mIHI9PT0ic3RyaW5nIj9yLnNwbGl0KFkpOnIsdT1JLEc9NjE7ZWxzZSBpZihHPT0yNyl7Zm9yKHAgaW4gcj1JLGYuSil7Zm9yKHU9KFg9Zi5KW3BdLEkpO3U8WC5sZW5ndGg7dSsrKSsrcixaKDc0LFksWFt1XSk7ZGVsZXRlIGYuSltmLmc1LS0scF19Rz0xMn1lbHNlIGlmKEc9PTY2KUc9dTxYPzkxOjE1O2Vsc2UgaWYoRz09MzYpWS5JOShmdW5jdGlvbihRKXtyPVF9LEksZiksRj1yLEc9NjM7ZWxzZSBpZihHPT05MSl1IGluIHAmJmYuY2FsbCh2b2lkIDAscFt1XSx1LHIpLEc9ODQ7ZWxzZSBpZihHPT04NCl1KyssRz02NjtlbHNlIGlmKEc9PTEyKUc9KEx8NTYpPT1MPzg4OjE1O2Vsc2UgaWYoRz09MTUpRz0oTC04XjkpPEwmJihMKzgmMjUpPj1MPzU3Ojg3O2Vsc2UgaWYoRz09NTApe2E6e2lmKFMmJnR5cGVvZiBTLmxlbmd0aD09Zil7aWYoUzAoUyxJLDM0KSl7Yz10eXBlb2YgUy5pdGVtPT0iZnVuY3Rpb24ifHx0eXBlb2YgUy5pdGVtPT0ic3RyaW5nIjticmVhayBhfWlmKHR5cGVvZiBTPT09ImZ1bmN0aW9uIil7Yz10eXBlb2YgUy5pdGVtPT0iZnVuY3Rpb24iO2JyZWFrIGF9fWM9ZmFsc2V9Z1AoWSw1NiwiIixBLGM/eEsoMywxMSxTLFkpOlMpLEc9OTV9fX19LGlCPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCl7e3U9Nzc7d2hpbGUodSE9ODYpaWYodT09NzcpdT0xO2Vsc2UgaWYodT09MzgpcC5jbGFzc0xpc3Q/cC5jbGFzc0xpc3QucmVtb3ZlKHIpOksoMTEsWSxwLGYscikmJlJhKDQ1LDI0LGYsQXJyYXkucHJvdG90eXBlLmZpbHRlci5jYWxsKGFhKDQ0LGYscCksZnVuY3Rpb24oYyl7cmV0dXJuIGMhPXJ9KS5qb2luKEwpLHApLHU9MjA7ZWxzZXtpZih1PT01OClyZXR1cm4gWDt1PT03Mj91PUkrOT4+Mz09Mz83ODoyMTp1PT0yMT91PUkrNj4+ND8zMjo0MTp1PT0yMD91PShJLTZ8NDApPj1JJiYoSS02fDUyKTxJPzY5OjU4OnU9PTY5PyhMLnZxPXZvaWQgMCxMLmVvPWZ1bmN0aW9uKCl7cmV0dXJuIEwudnE/TC52cTpMLnZxPW5ldyBMfSx1PTU4KTp1PT0yMj8oWD13UCgwLDksODE5MixudWxsLGZhbHNlLEwpLHU9NzIpOnU9PTc4PyhYPUFDKDM5LDUsMixZLGYpJiZaKDMzLDAsWSxmKSE9ciYmKCEocD1mLkxpLChwfFkpLX5wK35ZLTIqKHAmflkpKXx8Zi5kaXNwYXRjaEV2ZW50KGUoNjQsMzQsMSwzMixMLHIsWSkpKSYmIWYuWSx1PTIxKTp1PT0xP3U9KChJXjM3KSYxMyk9PTE/MjI6NzI6dT09MzI/dT1JLTg+PjQ9PTQ/Mzg6MjA6dT09NDEmJihYPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChMLE5mKSYmTFtOZl18fChMW05mXT0rK3ZTKSx1PTMyKX19fSxWPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSxGLEcpe3tHPTI4O3doaWxlKEchPTM4KWlmKEc9PTUpcisrLEc9NDA7ZWxzZSBpZihHPT0zOSl7YTp7aWYoKCgoZi5pKz0oYz0oUz0ocnx8Zi5aYysrLGYuT0E+MCkmJmYuTiYmZi5BbCYmZi5ocjw9MSYmIWYuTyYmIWYuSyYmKCFyfHxmLldpLXA+MSkmJmRvY3VtZW50LmhpZGRlbj09MCwoeT1mLlpjPT00KXx8Uz9mLnUoKTpmLnhhKSx1PWMtZi54YSx1Pj4xNCk+MCxmLkMpJiYoZi5DXj0oZi5pKzE+PjIpKih1PDwyKSksZikuVT1mLmkrMT4+MiE9MHx8Zi5VLHkpfHxTKWYueGE9YyxmLlpjPTA7aWYoIVMpe0Y9ZmFsc2U7YnJlYWsgYX1pZihjLShmLk9BPmYuRGMmJihmLkRjPWYuT0EpLGYpLmQ1PGYuT0EtKFk/MjU1OnI/NToyKSl7Rj1mYWxzZTticmVhayBhfUY9KChNKChYPWsoZiwoZi5XaT1wLHI/MjcyOjUwOSkpLEwpLGYsZi5QKSxmLlQpLnB1c2goW1V3LFgscj9wKzE6cCxmLm8sZi5JXSksZi5LPUNFLHRydWUpfUc9NTB9ZWxzZSBpZihHPT02MClHPTgwO2Vsc2UgaWYoRz09MjIpRz0oSSs1JjE1KT09MT80NzoyMztlbHNlIGlmKEc9PTMpRj11LEc9MjI7ZWxzZSBpZihHPT05NylHPTU0O2Vsc2V7aWYoRz09NTApcmV0dXJuIEY7Rz09NTQ/Rz1JKzYmMTU/NTA6Mzk6Rz09ODc/KGYrPVkscD1wPDxZfExbcl0sRz02MCk6Rz09NzI/Rz1JKzEmNz8yMjo0NDpHPT02MT9HPTQwOkc9PTQwP0c9cjxMLmxlbmd0aD84NzozOkc9PTIzP0c9KChJXjc0KSY3KT09Mj85Nzo1NDpHPT0xNj9HPTgwOkc9PTQ0PyhyPWY9MCx1PVtdLEc9NjEpOkc9PTk4PyhmLT04LHUucHVzaChwPj5mJjI1NSksRz0xNik6Rz09ODA/Rz1mPjc/OTg6NTpHPT0yOD9HPTcyOkc9PTQ3JiYoTShmLFksTCksTFtkUF09Mjc5NixHPTIzKX19fSxtej1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTKXt7Yz05Nzt3aGlsZShjIT02MylpZihjPT0xMCljPShmPDwyJjcpPj0xJiZmLTk+PjU8MT81MTozNjtlbHNle2lmKGM9PTkyKXJldHVybiBTO2M9PTUxPyhYPXR5cGVvZiBwLHU9WCE9TD9YOnA/QXJyYXkuaXNBcnJheShwKT8iYXJyYXkiOlg6Im51bGwiLFM9dT09WXx8dT09TCYmdHlwZW9mIHAubGVuZ3RoPT1yLGM9MzYpOmM9PTIzP2M9KGYtOF4zKTxmJiYoZi00XjEwKT49Zj8xNTo5MjpjPT0zNj9jPWYtOT4+NDwzJiYoZj4+MSY3KT49ND81ODoyMzpjPT0xNT8oTC5jbGFzc0xpc3Q/QXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChZLGZ1bmN0aW9uKHkpe2lCKDcyLCIgIixJLCJzdHJpbmciLHksTCl9KTpSYSg0NSwyNywic3RyaW5nIixBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoYWEoNDIsInN0cmluZyIsTCksZnVuY3Rpb24oeSl7cmV0dXJuIShTMChZLEksMjQseSk+PUkpfSkuam9pbigiICIpLEwpLGM9OTIpOmM9PTU4PyhyPVksdEM9PT12b2lkIDAmJih0Qz1MKSx1PShwPXRDKT9wLmNyZWF0ZVNjcmlwdFVSTChyKTpyLFM9bmV3IFo0KHUpLGM9MjMpOmM9PTk3JiYoYz0xMCl9fX0seEs9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYpe3tGPTMzO3doaWxlKEYhPTI1KWlmKEY9PTU3KUY9MTU7ZWxzZSBpZihGPT04MilGPShMLTFeMjkpPj1MJiYoTC1JXjEyKTxMPzE4OjE0O2Vsc2UgaWYoRj09MTUpRj1TPHAubGVuZ3RoPzY3OjY7ZWxzZSBpZihGPT0yNilvYSgxLDUsZixZLHUsWCxwLHIsYyksRj02O2Vsc2UgaWYoRj09MzMpRj04MjtlbHNlIGlmKEY9PTY3KXhLKDMsNSxudWxsLHRydWUscixwW1NdLHUsWCxjKSxGPTc4O2Vsc2UgaWYoRj09ODQpUz0wLEY9NTc7ZWxzZSBpZihGPT0xOCl7YTp7aWYoKHU9WS5sZW5ndGgsdSk+Zil7Zm9yKHA9KHI9QXJyYXkodSksZik7cDx1O3ArKylyW3BdPVlbcF07eT1yO2JyZWFrIGF9eT1bXX1GPTE0fWVsc2UgaWYoRj09MTApRj1YJiZYLm9uY2U/MjY6NDU7ZWxzZSBpZihGPT00MSljPXljKDk5LDMzLGMpLHImJnJbYkJdP3IuZy5hZGQoU3RyaW5nKHApLGMsZmFsc2UsUzAoWCxZLDM2KT8hIVguY2FwdHVyZTohIVgsdSk6ZShudWxsLDUsZmFsc2UsYyxyLFgscCx1LGZhbHNlKSxGPTY7ZWxzZXtpZihGPT02KXJldHVybiB5O0Y9PTQ1P0Y9QXJyYXkuaXNBcnJheShwKT84NDo0MTpGPT03OD8oUysrLEY9MTUpOkY9PTE0JiYoRj1MPj4yJjY/NjoxMCl9fX0sWGY9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYpe2Zvcih5PTI3O3khPTc7KWlmKHk9PTI3KXk9ODk7ZWxzZSBpZih5PT0zOClGPU1hdGguZmxvb3IodGhpcy51KCkpLHk9NjY7ZWxzZSBpZih5PT04OSl5PUwrOD4+Mz09MT80Mzo0OTtlbHNle2lmKHk9PTY2KXJldHVybiBGO2lmKHk9PTQ5KXk9KExeMzEpPj40PzY2OjM4O2Vsc2UgaWYoeT09NDMpe2E6aWYoZi5ULmxlbmd0aCl7Zi5OPShmLk4mJiI6VFFSOlRRUjoiKCksSSksZi5BbD1yO3RyeXtTPWYudSgpLGYuRGM9WSxmLnhhPVMsZi5kNT1TLGYuWmM9WSxjPVFjKEksMjUsbnVsbCwwLDI5NyxmLHIpLFg9cD8wOjEwLHU9Zi51KCktZi5kNSxmLnNBKz11LGYubTcmJmYubTcodS1mLmwsZi5vLGYuSSxmLkRjKSxmLm89ZmFsc2UsZi5sPVksZi5JPWZhbHNlLHU8WHx8Zi5ZYS0tPD1ZfHwodT1NYXRoLmZsb29yKHUpLGYuVmUucHVzaCh1PD0yNTQ/dToyNTQpKX1maW5hbGx5e2YuTj1mYWxzZX1GPWM7YnJlYWsgYX15PTQ5fX19LEFDPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSl7e1M9MjY7d2hpbGUoUyE9NTIpaWYoUz09ODcpWD1yLnByb3h5LHA9ci50eXBlLHUucmVtb3ZlRXZlbnRMaXN0ZW5lcj91LnJlbW92ZUV2ZW50TGlzdGVuZXIocCxYLHIuY2FwdHVyZSk6dS5kZXRhY2hFdmVudD91LmRldGFjaEV2ZW50KFMwKHAsIm9uIiwzKSxYKTp1LmFkZExpc3RlbmVyJiZ1LnJlbW92ZUxpc3RlbmVyJiZ1LnJlbW92ZUxpc3RlbmVyKFgpLGhDLS0sYz1RYyh1LDgpLFM9STtlbHNlIGlmKFM9PTU1KVM9dSYmdVtiQl0/ODU6ODc7ZWxzZSBpZihTPT0xNil1PXIuc3JjLFM9NTU7ZWxzZSBpZihTPT0yNilTPTg2O2Vsc2UgaWYoUz09NjYpUz1jLmc1PT0wPzg0OjIxO2Vsc2UgaWYoUz09SSlTPWM/NjI6NDg7ZWxzZXtpZihTPT0yMSlyZXR1cm4geTtTPT04NT8oSyg2MCxyLHUuZyxZKSxTPTIxKTpTPT00OD8oWig1OCxZLHIpLFM9MjEpOlM9PTYzP1M9KChMXjUwKSYxMik+PTEmJihMLTgmMTIpPDg/Mjg6OTU6Uz09NjI/KEsoNTYscixjLFkpLFM9NjYpOlM9PTk1P1M9KEwtOHwzNCk8TCYmTC04PDwxPj1MPzU2OjIxOlM9PTg0PyhjLnNyYz1mLHVbRXddPWYsUz0yMSk6Uz09ODY/Uz0oTHw4KT4+ND82MzoyOlM9PTU2P1M9dHlwZW9mIHIhPT0ibnVtYmVyIiYmciYmIXIudWQ/MTY6MjE6Uz09Mj8oeT0hIShwPXIuUmwsLX4ocHxmKS0ofnBeZiktWSoofnAmZikrWSoofnB8ZikpLFM9NjMpOlM9PTI4JiYocj1ZLHk9ZnVuY3Rpb24oKXtyZXR1cm4gcjxmLmxlbmd0aD97ZG9uZTpmYWxzZSx2YWx1ZTpmW3IrK119Ontkb25lOnRydWV9fSxTPTk1KX19fSxRYz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRixHLEEpe0Y9Nzk7e0c9NzM7d2hpbGUoe30pdHJ5e2lmKEY9PTk5KWJyZWFrO2Vsc2UgaWYoRj09MjUpWT1JW0V3XSxBPVkgaW5zdGFuY2VvZiBLRT9ZOm51bGwsRj05NjtlbHNle2lmKEY9PTQ0KXJldHVybiBBO0Y9PTQ5PyhHPTczLEsoNDgscCx5LGYpLEY9NjkpOkY9PTU2PyhBPVgsRj0yOSk6Rj09MD9GPXAuVC5sZW5ndGg/OTU6NTY6Rj09ND9GPTA6Rj09OTU/KHAuSz1ZLGM9cC5ULnBvcCgpLEY9NSk6Rj09ODU/KFM9cC5LLFMoZnVuY3Rpb24oKXtYZih0cnVlLDYsZixwLEksSSl9KSxGPTU2KTpGPT02OT8oRz03MyxGPTQwKTpGPT0yMj9GPTA6Rj09NTE/KEkucmF3PVksT2JqZWN0LmZyZWV6ZSYmKE9iamVjdC5mcmVlemUoSSksT2JqZWN0LmZyZWV6ZShZKSksQT1JLEY9NDQpOkY9PTI5P0Y9KEwtOCYxMSk+PTgmJihMfDIpPDI3PzUxOjQ0OkY9PTQwP0Y9dSYmcC5LPzg1OjQ6Rj09NDE/Rj1MLTQ+PjQ/OTY6MjU6Rj09NT8oRz00MSxYPUJTKDEscixwLGMpLEY9NjkpOkY9PTc5P0Y9NDE6Rj09OTYmJihGPShMKzEmNDMpPEwmJihMKzcmNDUpPj1MPzIyOjI5KX19Y2F0Y2goUSl7aWYoRz09NzMpdGhyb3cgUTtHPT00MSYmKHk9USxGPTQ5KX19fSxmTz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRil7e0Y9NTU7d2hpbGUoRiE9ODcpaWYoRj09MjcpcC5zZXRBdHRyaWJ1dGUoUyx1KSxGPTM3O2Vsc2UgaWYoRj09NTUpRj0zNjtlbHNlIGlmKEY9PTI0KUY9dT09PSIifHx1PT12b2lkIDA/NDA6Mjc7ZWxzZSBpZihGPT0zNilGPShMKzZeMTYpPEwmJihMLTh8MjMpPj1MPzY2OjM3O2Vsc2UgaWYoRj09NDApRj1MTz8zMDo0NztlbHNlIGlmKEY9PTQ3KVg9e30sTE89KFguYXRvbWljPWYsWC5hdXRvY29tcGxldGU9Im5vbmUiLFguZHJvcGVmZmVjdD0ibm9uZSIsWC5oYXNwb3B1cD1mLFgubGl2ZT0ib2ZmIixYLm11bHRpbGluZT1mLFgubXVsdGlzZWxlY3RhYmxlPWYsWC5vcmllbnRhdGlvbj0idmVydGljYWwiLFgucmVhZG9ubHk9ZixYLnJlbGV2YW50PSJhZGRpdGlvbnMgdGV4dCIsWC5yZXF1aXJlZD1mLFguc29ydD0ibm9uZSIsWC5idXN5PWYsWC5kaXNhYmxlZD1mLFhbWV09ZixYLmludmFsaWQ9ImZhbHNlIixYKSxGPTMwO2Vsc2UgaWYoRj09OTMpRj0oTDw8MSYxNSk9PTI/NTg6MTQ7ZWxzZSBpZihGPT02MilGPTkzO2Vsc2UgaWYoRj09MzApYz1MTyxyIGluIGM/cC5zZXRBdHRyaWJ1dGUoUyxjW3JdKTpwLnJlbW92ZUF0dHJpYnV0ZShTKSxGPTM3O2Vsc2UgaWYoRj09NjYpQXJyYXkuaXNBcnJheSh1KSYmKHU9dS5qb2luKCIgIikpLFM9ImFyaWEtIityLEY9MjQ7ZWxzZXtpZihGPT0xNClyZXR1cm4geTtpZihGPT01OCl7YTp7aWYoIShyPShmPW51bGwsVS50cnVzdGVkVHlwZXMpLHIpfHwhci5jcmVhdGVQb2xpY3kpe3k9ZjticmVhayBhfXRyeXtmPXIuY3JlYXRlUG9saWN5KEkse2NyZWF0ZUhUTUw6WVYsY3JlYXRlU2NyaXB0OllWLGNyZWF0ZVNjcmlwdFVSTDpZVn0pfWNhdGNoKEcpe2lmKFUuY29uc29sZSlVLmNvbnNvbGVbWV0oRy5tZXNzYWdlKX15PWZ9Rj0xNH1lbHNlIEY9PTM3JiYoRj0oTC03XjEzKTxMJiYoTC0yfDE0KT49TD82Mjo5Myl9fX0sWj1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyl7e2M9NjM7d2hpbGUoYyE9MjIpaWYoYz09OTgpYz0oSSY4MSk9PUk/MjM6ODM7ZWxzZSBpZihjPT0yOSl1PXdQKDAsNDEsODE5MixudWxsLHRydWUsTCksYz0zMztlbHNlIGlmKGM9PTMzKWM9KEktOCYxNSk9PTI/ODY6MDtlbHNlIGlmKGM9PTApYz0oSXw5KTwxNiYmKEk8PDImMTMpPj02PzI0OjQxO2Vsc2UgaWYoYz09ODYpWS51ZD1MLFkubGlzdGVuZXI9bnVsbCxZLnByb3h5PW51bGwsWS5zcmM9bnVsbCxZLkN6PW51bGwsYz0wO2Vsc2UgaWYoYz09ODMpYz0oST4+MSYyMyk9PTI/Mjk6MzM7ZWxzZSBpZihjPT0yMylYPWZ1bmN0aW9uKFMpe3JldHVybiBMLmNhbGwoWC5zcmMsWC5saXN0ZW5lcixTKX0sTD0kVix1PVgsYz04MztlbHNlIGlmKGM9PTYzKWM9OTg7ZWxzZSBpZihjPT00MSljPShJLTZeOCk8SSYmKEkrNyY0Nik+PUk/NTI6Nzk7ZWxzZSBpZihjPT0yNClwPVMwKGYsTCwyNSxZKSwocj1wPj1MKSYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGYscCwxKSx1PXIsYz00MTtlbHNlIGlmKGM9PTUyKXU9ISEocj1mLldxLChZfEwpLX5yK34ocnxZKSksYz03OTtlbHNlIGlmKGM9PTc5KXJldHVybiB1fX0seWM9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMpe2ZvcihYPTY2O1ghPTkyOylpZihYPT04NSl0aGlzW3RoaXMrIiJdPXRoaXMsWD04MTtlbHNlIGlmKFg9PTIpYz1ZLFg9ODI7ZWxzZXtpZihYPT0yOClyZXR1cm4gYztpZihYPT03OCl0aGlzLmxpc3RlbmVyPXUsdGhpcy5wcm94eT1udWxsLHRoaXMuc3JjPVksdGhpcy50eXBlPXIsdGhpcy5jYXB0dXJlPSEhcCx0aGlzLkN6PWYsdGhpcy5rZXk9Kytpbyx0aGlzLnllPXRoaXMudWQ9ZmFsc2UsWD0yODtlbHNlIGlmKFg9PTM2KVg9KEwrMyYxNSk+PTgmJkwtNzwxOT8yOjgyO2Vsc2UgaWYoWD09ODIpWD1MPj4yJjk/MzM6ODtlbHNlIGlmKFg9PTgxKVg9KEwmMTAxKT09TD81NjozNjtlbHNlIGlmKFg9PTY2KVg9NTg7ZWxzZSBpZihYPT01Nil7YTp7aWYodHlwZW9mIFk9PT0iZnVuY3Rpb24iKXtjPVk7YnJlYWsgYX1jPVlbWVtyQ118fChZW3JDXT1mdW5jdGlvbihTKXtyZXR1cm4gWS5oYW5kbGVFdmVudChTKX0pLHJDXX1YPTM2fWVsc2UgaWYoWD09MzIpQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChmLGZ1bmN0aW9uKFMseSxGKXtmb3IoRj0xO0YhPTQzOylGPT0xP0Y9WS5jbGFzc0xpc3Q/OTpJOkY9PTk/KFkuY2xhc3NMaXN0LmFkZChTKSxGPTQzKTpGPT0zMD8oeT1hYSgzLCJzdHJpbmciLCIiLFkpLFJhKDQ1LDI2LCJzdHJpbmciLHkrKHkubGVuZ3RoPjA/IiAiK1M6UyksWSksRj00Myk6Rj09SSYmKEY9SygxOSwwLFksInN0cmluZyIsUyk/NDM6MzApfSksWD0zMztlbHNlIGlmKFg9PTU4KVg9TC0zPDQwJiZMLTc+PTI5Pzg1OjgxO2Vsc2UgaWYoWD09OClYPVkuY2xhc3NMaXN0PzMyOjk3O2Vsc2UgaWYoWD09OTcpe2ZvcihyIGluIEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoKHA9e30sYWEoNDAsInN0cmluZyIsWSkpLGZ1bmN0aW9uKFMpe3BbU109dHJ1ZX0pLEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoZixmdW5jdGlvbihTKXtwW1NdPXRydWV9KSx1PSIiLHApdSs9dS5sZW5ndGg+MD8iICIrcjpyO1g9KFJhKDQ1LDI1LCJzdHJpbmciLHUsWSksMzMpfWVsc2UgWD09MzMmJihYPShMXjU1KT4+ND8yODo3OCl9fSxLPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSxGLEcsQSl7Zm9yKEE9NDc7QSE9NTA7KWlmKEE9PTQpWT10cnVlLEE9NDE7ZWxzZSBpZihBPT0zKUE9KChJXjgwKSY3KT09Mz8zMDo2MTtlbHNlIGlmKEE9PTMwKUE9WS5jbGFzc0xpc3Q/MTQ6OTg7ZWxzZSBpZihBPT02MSlBPShJLTcmMTUpPT0yPzg4OjM0O2Vsc2UgaWYoQT09NDEpRz1ZLEE9MzQ7ZWxzZSBpZihBPT0zOClBPVkuSltyXS5sZW5ndGg9PTA/NDI6NjY7ZWxzZSBpZihBPT0xNSlBPShJJjM5KT09ST81NDozO2Vsc2UgaWYoQT09ODgpQT1mLnVkPzQ6NTg7ZWxzZXtpZihBPT0zNClyZXR1cm4gRztpZihBPT0xNClwPVkuY2xhc3NMaXN0LmNvbnRhaW5zKHIpLEE9NzU7ZWxzZSBpZihBPT03NSlHPXAsQT02MTtlbHNlIGlmKEE9PTU0KXthOntpZihYPXIuZy5KW1N0cmluZyhMKV0sIVgpe0c9ZjticmVhayBhfWZvcihTPShYPVguY29uY2F0KCksdT0wLGYpO3U8WC5sZW5ndGg7Kyt1KShGPVhbdV0pJiYhRi51ZCYmRi5jYXB0dXJlPT1wJiYoYz1GLmxpc3RlbmVyLHk9Ri5Denx8Ri5zcmMsRi55ZSYmSyg1OCxGLHIuZyxmKSxTPWMuY2FsbCh5LFkpIT09ZmFsc2UmJlMpO0c9UyYmIVkuZGVmYXVsdFByZXZlbnRlZH1BPTN9ZWxzZSBBPT01OD8ocD1uZXcgT3coTCx0aGlzKSx1PWYubGlzdGVuZXIscj1mLkN6fHxmLnNyYyxmLnllJiZBQygzOSw0OSx0cnVlLG51bGwsZiksWT11LmNhbGwocixwKSxBPTQxKTpBPT00Nj8oWig0MixmLEwpLEE9MzgpOkE9PTgyP0E9ciBpbiBZLkomJlooNiwwLEwsWS5KW3JdKT80Njo2NjpBPT05OD8odT1hYSg0MyxmLFkpLHA9UzAodSxMLDI2LHIpPj1MLEE9NzUpOkE9PTQyPyhkZWxldGUgWS5KW3JdLFkuZzUtLSxBPTY2KTpBPT04Nz8oTC5XPSgoTC5XP0wuVysifiI6IkU6IikrWS5tZXNzYWdlKyI6IitZLnN0YWNrKS5zbGljZShmLDIwNDgpLEE9MTUpOkE9PTY2P0E9KEkmMTE2KT09ST84NzoxNTpBPT00Nz9BPTg1OkE9PTg1P0E9KEktOHw0Myk+PUkmJihJLTd8NTIpPEk/NTk6NjY6QT09NTkmJihyPUwudHlwZSxBPTgyKX19LEZmPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSxGLEcsQSl7e0c9ODI7d2hpbGUoRyE9NSlpZihHPT05OClHPShyJjEyMSk9PXI/MTY6Mzc7ZWxzZSBpZihHPT0yKUZmKDAsTCxZW3ldLGYsMjYsbnVsbCx1LFgpLEc9MTQ7ZWxzZSBpZihHPT04MClGPVMwKFgscCwzMik/ISFYLmNhcHR1cmU6ISFYLEw9eWMoOTksMzIsTCksRz0xNTtlbHNlIGlmKEc9PTE5KUc9NDk7ZWxzZSBpZihHPT0zMSljKz1JLmNoYXJDb2RlQXQoTCksYys9Yzw8MTAsY149Yz4+NixHPTMyO2Vsc2V7aWYoRz09MzcpcmV0dXJuIEE7Rz09NDk/Rz15PFkubGVuZ3RoPzI6OTg6Rz09MTQ/KHkrKyxHPTQ5KTpHPT01OT8oKGM9Uy5sZChGLFksdSxMKSkmJkFDKDM5LDQ4LHRydWUsbnVsbCxjKSxHPTk4KTpHPT0zMj8oTCsrLEc9NzcpOkc9PTg3Pyh5PUksRz0xOSk6Rz09NDA/KFM9UWMoZiw5KSxHPTIyKTpHPT0xNT9HPWYmJmZbYkJdPzk0OjY5Okc9PTMzPyhjKz1jPDwzLGNePWM+PjExLGY9YysoYzw8MTUpPj4+MCx1PW5ldyBOdW1iZXIoKFg9KDE8PHApLTEsLTEtfmYtKGZeWCkrKH5mJlgpKSksdVswXT0oZj4+PnApJVksQT11LEc9MzcpOkc9PTE2PyhMPWM9MCxHPTQxKTpHPT03Nz9HPUw8SS5sZW5ndGg/MzE6MzM6Rz09ODI/Rz03ODpHPT02OT9HPWY/NDA6OTg6Rz09OTQ/KGYuZy5yZW1vdmUoU3RyaW5nKFkpLEwsRix1KSxHPTk4KTpHPT03OD9HPShyKzZeMTkpPj1yJiYoci00XjMwKTxyPzI0Ojk4Okc9PTI0P0c9QXJyYXkuaXNBcnJheShZKT84Nzo4MDpHPT0yMj9HPVM/NTk6OTg6Rz09NDEmJihHPTc3KX19fSx3UD1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRil7e0Y9NTA7d2hpbGUoRiE9MzgpaWYoRj09MzApeT1NYXRoLmZsb29yKHRoaXMuc0ErKHRoaXMudSgpLXRoaXMuZDUpKSxGPTU0O2Vsc2V7aWYoRj09NzYpcmV0dXJuIHk7aWYoRj09NDgpe2E6aWYoYz13aW5kb3cuYnRvYSl7Zm9yKHU9SSxYPSIiO3U8cC5sZW5ndGg7dSs9WSlYKz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KGYscC5zbGljZSh1LHUrWSkpO3k9KFM9YyhYKSxyJiYoUz1TLnJlcGxhY2UoL1xcKy9nLCItIikucmVwbGFjZSgvXFwvL2csIl8iKS5yZXBsYWNlKC89L2csIiIpKSxTKTticmVhayBhfUY9NzJ9ZWxzZSBGPT00Mj8odGhpc1t0aGlzKyIiXT10aGlzLHk9UHJvbWlzZS5yZXNvbHZlKCksRj0yNyk6Rj09NDk/KHRoaXMuc3JjPVksdGhpcy5KPXt9LHRoaXMuZzU9SSxGPTM3KTpGPT01OD9GPShMJjEwNSk9PUw/NDg6NzI6Rj09NzI/Rj0oTCYxMjIpPT1MPzMwOjU0OkY9PTUwP0Y9NTg6Rj09NTk/KHk9cEVbWV0ocEUucHJvdG90eXBlLHtwYXJlbnQ6ZixjYWxsOmYsbGVuZ3RoOmYscHJvcGVydHlJc0VudW1lcmFibGU6ZixyZXBsYWNlOmYsY29uc29sZTpmLHN0YWNrOmYsZG9jdW1lbnQ6ZixzcGxpY2U6Zixwcm90b3R5cGU6ZixmbG9vcjpmLHBvcDpmfSksRj03Nik6Rj09NTQ/Rj0oTCY5Mik9PUw/NDk6Mzc6Rj09Mzc/Rj1MLTM+PTI1JiZMLTM8Mzc/NDI6Mjc6Rj09MjcmJihGPShMXjMzKT4+Mz09Mz81OTo3Nil9fX0sUzA9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSl7Zm9yKHA9NTM7cCE9MjspaWYocD09MTIpcD1ZPj4yJjE1PzM1Ojc4O2Vsc2UgaWYocD09OTYpcD0oWV44MCk+PS03OSYmKFktNiYxNik8Mj85NzoxMjtlbHNlIGlmKHA9PTk3KXRoaXMubisrLEk9TC10aGlzLlIsdGhpcy5SKz1JL3RoaXMubix0aGlzLnc1Kz1JKihMLXRoaXMuUikscD0xMjtlbHNlIGlmKHA9PTEpZj10eXBlb2YgSSx1PWY9PSJvYmplY3QiJiZJIT1MfHxmPT0iZnVuY3Rpb24iLHA9NTtlbHNlIGlmKHA9PTcyKXA9KFleMzgpPj4zPzU6MTtlbHNlIGlmKHA9PTUzKXA9NzI7ZWxzZXtpZihwPT0zNSlyZXR1cm4gdTtpZihwPT01KXA9WSs1Pj4xPFkmJihZLTheMTUpPj1ZPzc3Ojk2O2Vsc2UgaWYocD09NzgpdT1JIGluIEkxP0kxW0ldOkkxW0ldPUwrSSxwPTM1O2Vsc2UgaWYocD09Nzcpe2E6e2lmKHR5cGVvZiBJPT09InN0cmluZyIpe3U9dHlwZW9mIGYhPT0ic3RyaW5nInx8Zi5sZW5ndGghPTE/LTE6SS5pbmRleE9mKGYsTCk7YnJlYWsgYX1mb3Iocj1MO3I8SS5sZW5ndGg7cisrKWlmKHIgaW4gSSYmSVtyXT09PWYpe3U9cjticmVhayBhfXU9LTF9cD05Nn19fSxQUz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHkpe3t5PTQwO3doaWxlKHkhPTQ4KWlmKHk9PTQwKXk9NzU7ZWxzZSBpZih5PT00Myl7YTp7Zm9yKGM9WTtjPHUubGVuZ3RoOysrYylpZihYPXVbY10sIVgudWQmJlgubGlzdGVuZXI9PXImJlguY2FwdHVyZT09ISFmJiZYLkN6PT1wKXtTPWM7YnJlYWsgYX1TPS0xfXk9MjF9ZWxzZSBpZih5PT04Myl5PShMKzYmNjIpPj1MJiZMLTg8PDI8TD84Njo5NDtlbHNlIGlmKHk9PTg2KXk9WT8yOTo1MjtlbHNlIGlmKHk9PTk0KXk9KEwtMSYxMSk9PTI/OTY6Njk7ZWxzZXtpZih5PT00Nil0aHJvdyBFcnJvcigiSW52YWxpZCBkZWNvcmF0b3IgZnVuY3Rpb24gIitmKTtpZih5PT05Nil0aGlzLlk9dGhpcy5ZLHRoaXMuTmg9dGhpcy5OaCx5PTY5O2Vsc2UgaWYoeT09NzUpeT0oTD4+MiYxNSk9PTM/MTA6ODM7ZWxzZSBpZih5PT0yOSl5PXR5cGVvZiBmIT09ImZ1bmN0aW9uIj80Njo5NDtlbHNle2lmKHk9PTIxKXJldHVybiBTO2lmKHk9PTY5KXk9KEx8SSk9PUw/NDM6MjE7ZWxzZXtpZih5PT01Mil0aHJvdyBFcnJvcigiSW52YWxpZCBjbGFzcyBuYW1lICIrWSk7eT09MTAmJih0aGlzLkFyPVUuZG9jdW1lbnR8fGRvY3VtZW50LHk9ODMpfX19fX0sUmE9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSl7e3A9ODE7d2hpbGUocCE9SSlpZihwPT02MilwPShMfDI0KT09TD82Njo5MjtlbHNlIGlmKHA9PTYpSkMuY2FsbCh0aGlzKSx0aGlzLmc9bmV3IEtFKHRoaXMpLHRoaXMuQmk9dGhpcyx0aGlzLmE5PW51bGwscD02MjtlbHNlIGlmKHA9PTgxKXA9NDM7ZWxzZXtpZihwPT05MilyZXR1cm4gdTtwPT00Mz9wPUwtMT4+ND82Mjo2OnA9PTY2JiYodHlwZW9mIHIuY2xhc3NOYW1lPT1ZP3IuY2xhc3NOYW1lPWY6ci5zZXRBdHRyaWJ1dGUmJnIuc2V0QXR0cmlidXRlKCJjbGFzcyIsZikscD05Mil9fX0sYWE9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYKXt7dT0wO3doaWxlKHUhPTM4KXtpZih1PT0zNylyZXR1cm4gWDtpZih1PT0wKXU9MjQ7ZWxzZSBpZih1PT00NClYPUwmJkwucGFyZW50Tm9kZT9MLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoTCk6bnVsbCx1PTU2O2Vsc2UgaWYodT09NDcpdT1JKzY+PjM9PTI/NDQ6NTY7ZWxzZSBpZih1PT04OClYPXRoaXMubj09PTA/MDpNYXRoLnNxcnQodGhpcy53NS90aGlzLm4pLHU9NTtlbHNlIGlmKHU9PTcpWD1ZLmNsYXNzTGlzdD9ZLmNsYXNzTGlzdDphYSg1LEwsIiIsWSkubWF0Y2goL1xcUysvZyl8fFtdLHU9NDc7ZWxzZSBpZih1PT01Nil1PUktMSY3PzM3OjY4O2Vsc2UgaWYodT09MTIpdT0oSS0zJjE2KTwxMSYmST4+Mj49MTk/ODg6NTtlbHNlIGlmKHU9PTY4KXthOntmb3IocCBpbiBmKWlmKHIuY2FsbCh2b2lkIDAsZltwXSxwLGYpKXtYPVk7YnJlYWsgYX1YPUx9dT0zN31lbHNlIHU9PTU0PyhYPXR5cGVvZiBmLmNsYXNzTmFtZT09TD9mLmNsYXNzTmFtZTpmLmdldEF0dHJpYnV0ZSYmZi5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fFksdT0xMik6dT09NT91PShJfDQwKT09ST83OjQ3OnU9PTI0JiYodT0oSS03XjI3KTxJJiYoSS0yfDI1KT49ST81NDoxMil9fX0sb2E9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYpe2ZvcihGPTUyO0YhPTk0Oyl7aWYoRj09MzkpcmV0dXJuIHk7Rj09ND9GPUFycmF5LmlzQXJyYXkodSk/NTc6NzE6Rj09NTI/Rj05MTpGPT04Mj9GPVM8dS5sZW5ndGg/NDM6ODQ6Rj09NTc/KFM9MCxGPTU1KTpGPT05NT8oeT1xZihuRSxZKSxGPTM5KTpGPT01NT9GPTgyOkY9PTcxPyhjPXljKDk5LDY4LGMpLFgmJlhbYkJdP1guZy5hZGQoU3RyaW5nKHUpLGMsWSxTMChwLGYsMzUpPyEhcC5jYXB0dXJlOiEhcCxyKTplKG51bGwsNixmYWxzZSxjLFgscCx1LHIsWSksRj04NCk6Rj09ODQ/Rj0oTF41KT4+NDwyJiZMLTc+PjQ+PTA/OTU6Mzk6Rj09NDM/KG9hKDEsNix0cnVlLG51bGwscixwLHVbU10sWCxjKSxGPTc5KTpGPT05MT9GPSgoTF4zNSkmNyk+PTUmJigoTF4xNykmOCk8ST80Ojg0OkY9PTc5JiYoUysrLEY9ODIpfX0sZT1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRixHLEEsUSl7Zm9yKFE9NDQ7USE9ODY7KXtpZihRPT04NSlyZXR1cm4gQTtpZihRPT02OSlRPXIuYWRkTGlzdGVuZXImJnIucmVtb3ZlTGlzdGVuZXI/MTk6MTtlbHNlIGlmKFE9PTQxKXIuYXR0YWNoRXZlbnQoUzAodS50b1N0cmluZygpLCJvbiIsNjQpLEcpLFE9NzU7ZWxzZSBpZihRPT00NClRPTgwO2Vsc2UgaWYoUT09MzMpUT0oTC03XjE0KT49TCYmTCs4Pj4yPEw/Njc6ODU7ZWxzZSBpZihRPT0zOSlTPVMwKHAsSSwzNyk/ISFwLmNhcHR1cmU6ISFwLCh5PVFjKHIsMTApKXx8KHJbRXddPXk9bmV3IEtFKHIpKSxGPXkuYWRkKHUsZixjLFMsWCksUT0yMDtlbHNlIGlmKFE9PTIzKXRoaXMuWC5wdXNoKEkpLFE9MzM7ZWxzZSBpZihRPT03NSloQysrLFE9MTA7ZWxzZXtpZihRPT02Mil0aHJvdyBFcnJvcigiSW52YWxpZCBldmVudCB0eXBlIik7aWYoUT09MClRPXU/Mzk6NjI7ZWxzZSBpZihRPT05NSlRPShMPj4xJjE1KT09MT8xMjo3ODtlbHNlIGlmKFE9PTkxKVkuVC5zcGxpY2UoMCwwLEkpLFE9OTU7ZWxzZSBpZihRPT0xNil0aGlzLm4rKyxRPTkyO2Vsc2UgaWYoUT09NjcpQT0hIShwPWYuajUsWSoocnxJKSt+ci0ocF5yKS0ofnB8cikpJiZBQygzOSwzLFkscixmKSxRPTg1O2Vsc2UgaWYoUT09NzYpR2N8fChwPVMpLHA9PT12b2lkIDAmJihwPVkpLHIuYWRkRXZlbnRMaXN0ZW5lcih1LnRvU3RyaW5nKCksRyxwKSxRPTc1O2Vsc2UgaWYoUT09NzgpUT0oTHw5KT4+ND8xMDowO2Vsc2UgaWYoUT09ODApUT0oTHw4MCk9PUw/OTE6OTU7ZWxzZSBpZihRPT00NilRPXIuYXR0YWNoRXZlbnQ/NDE6Njk7ZWxzZSBpZihRPT0xNClZPU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSp0aGlzLm4pLFk8NTAmJih0aGlzLlhbWV09SSksUT0zMztlbHNlIGlmKFE9PTEyKXthOntzd2l0Y2godSl7Y2FzZSBZOkE9cD8iZGlzYWJsZSI6ImVuYWJsZSI7YnJlYWsgYTtjYXNlIDI6QT1wPyJoaWdobGlnaHQiOiJ1bmhpZ2hsaWdodCI7YnJlYWsgYTtjYXNlIDQ6QT1wPyJhY3RpdmF0ZSI6ImRlYWN0aXZhdGUiO2JyZWFrIGE7Y2FzZSByOkE9cD8ic2VsZWN0IjoidW5zZWxlY3QiO2JyZWFrIGE7Y2FzZSAxNjpBPXA/ImNoZWNrIjoidW5jaGVjayI7YnJlYWsgYTtjYXNlIGY6QT1wPyJmb2N1cyI6ImJsdXIiO2JyZWFrIGE7Y2FzZSBJOkE9cD8ib3BlbiI6ImNsb3NlIjticmVhayBhfXRocm93IEVycm9yKCJJbnZhbGlkIGNvbXBvbmVudCBzdGF0ZSIpO31RPTc4fWVsc2UgaWYoUT09MjApUT1GLnByb3h5PzEwOjk5O2Vsc2UgaWYoUT09MTApUT0oKExeODEpJjcpPT0xPzE2OjMzO2Vsc2UgaWYoUT09NjUpUT1yLmFkZEV2ZW50TGlzdGVuZXI/NzY6NDY7ZWxzZSBpZihRPT05MilRPXRoaXMuWC5sZW5ndGg8NTA/MjM6MTQ7ZWxzZXtpZihRPT0xKXRocm93IEVycm9yKCJhZGRFdmVudExpc3RlbmVyIGFuZCBhdHRhY2hFdmVudCBhcmUgdW5hdmFpbGFibGUuIik7UT09MTk/KHIuYWRkTGlzdGVuZXIoRyksUT03NSk6UT09OTkmJihHPVooMTYpLEYucHJveHk9RyxHLnNyYz1yLEcubGlzdGVuZXI9RixRPTY1KX19fX0sUjE9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMpe3tYPTgzO3doaWxlKFghPTM4KWlmKFg9PTg3KVg9KFk8PDEmOCk8MyYmWTw8MT49LTM3PzEwOjE1O2Vsc2UgaWYoWD09MjQpWD0oWXwzKTwzMyYmWSszPj0xNT80Nzo4NztlbHNlIGlmKFg9PTE1KVg9KFk+PjImNyk9PTE/MzA6MTtlbHNlIGlmKFg9PTc0KVg9MTI7ZWxzZSBpZihYPT0xMilYPXA8ci5sZW5ndGg/NTY6ODI7ZWxzZSBpZihYPT0xMClMLnJlbW92ZUF0dHJpYnV0ZSgic3JjZG9jIiksWD03MjtlbHNle2lmKFg9PTEpcmV0dXJuIHU7aWYoWD09ODkpdGhyb3cgbmV3IERxKHR5cGVvZiBJLDEpO2lmKFg9PTU2KUwuc2FuZGJveC5zdXBwb3J0cyYmIUwuc2FuZGJveC5zdXBwb3J0cyhyW3BdKXx8TC5zYW5kYm94LmFkZChyW3BdKSxYPTM0O2Vsc2UgaWYoWD09ODEpcj0iYWxsb3ctc2FtZS1vcmlnaW4gYWxsb3ctc2NyaXB0cyBhbGxvdy1mb3JtcyBhbGxvdy1wb3B1cHMgYWxsb3ctcG9wdXBzLXRvLWVzY2FwZS1zYW5kYm94IGFsbG93LXN0b3JhZ2UtYWNjZXNzLWJ5LXVzZXItYWN0aXZhdGlvbiIuc3BsaXQoIiAiKSxMLnNldEF0dHJpYnV0ZSgic2FuZGJveCIsIiIpLHA9MCxYPTc0O2Vsc2UgaWYoWD09NDcpYm8uY2FsbCh0aGlzLEw/TC50eXBlOiIiKSx0aGlzLnJlbGF0ZWRUYXJnZXQ9dGhpcy5jdXJyZW50VGFyZ2V0PXRoaXMudGFyZ2V0PW51bGwsdGhpcy5idXR0b249dGhpcy5zY3JlZW5ZPXRoaXMuc2NyZWVuWD10aGlzLmNsaWVudFk9dGhpcy5jbGllbnRYPXRoaXMub2Zmc2V0WT10aGlzLm9mZnNldFg9MCx0aGlzLmtleT0iIix0aGlzLmNoYXJDb2RlPXRoaXMua2V5Q29kZT0wLHRoaXMubWV0YUtleT10aGlzLnNoaWZ0S2V5PXRoaXMuYWx0S2V5PXRoaXMuY3RybEtleT1mYWxzZSx0aGlzLnN0YXRlPW51bGwsdGhpcy5wb2ludGVySWQ9MCx0aGlzLnBvaW50ZXJUeXBlPSIiLHRoaXMudGltZVN0YW1wPTAsdGhpcy5Tbz1udWxsLEwmJnRoaXMuaW5pdChMLEkpLFg9ODc7ZWxzZSBpZihYPT04Mil7aWYoSSBpbnN0YW5jZW9mIFo0KWY9SS5IaTtlbHNlIHRocm93IEVycm9yKCIiKTtYPShMLnNyYz1mLnRvU3RyaW5nKCksMTUpfWVsc2UgWD09MzA/KGM9ZnVuY3Rpb24oKXt9LGMucHJvdG90eXBlPWYucHJvdG90eXBlLEkuRj1mLnByb3RvdHlwZSxJLnByb3RvdHlwZT1uZXcgYyxJLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1JLEkueWk9ZnVuY3Rpb24oUyx5LEYpe2Zvcih2YXIgRz02MTtHIT03OTspaWYoRz09NjkpRz1RPGFyZ3VtZW50cy5sZW5ndGg/NDA6MTM7ZWxzZSBpZihHPT05OSlRKyssRz02OTtlbHNlIGlmKEc9PTQwKUFbUS1MXT1hcmd1bWVudHNbUV0sRz05OTtlbHNle2lmKEc9PTEzKXJldHVybiBmLnByb3RvdHlwZVt5XS5hcHBseShTLEEpO2lmKEc9PTYxKXZhciBBPUFycmF5KGFyZ3VtZW50cy5sZW5ndGgtKEc9NDksTCkpLFE9TDtlbHNlIEc9PTQ5JiYoRz02OSl9fSxYPTEpOlg9PTcyP1g9SSBpbnN0YW5jZW9mIFo0PzgxOjg5Olg9PTM0PyhwKyssWD0xMik6WD09ODMmJihYPTI0KX19fSxXaz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHkpe2ZvcihjPTM5O2MhPTg0OylpZihjPT05MilZLkhxJiZZLkhxLmZvckVhY2goZix2b2lkIDApLGM9MjtlbHNle2lmKGM9PTg5KXJldHVybiBTO2lmKGM9PTE3KXk9ZnVuY3Rpb24oKXt9LHI9dm9pZCAwLHA9UVMoWSxmdW5jdGlvbihGLEcpe2ZvcihHPTU2O0chPTkwOylHPT0xNj8oZiYmQ0UoZikscj1GLHkoKSx5PXZvaWQgMCxHPTkwKTpHPT01NiYmKEc9eT8xNjo5MCl9LCEhZiksdT1wWzFdLFg9cFswXSxTPXtob3Q6ZnVuY3Rpb24oRixHLEEsUSxELFcsYil7Zm9yKFc9MTM7VyE9MTU7KWlmKFc9PTIyKWIoKSxXPTE1O2Vsc2UgaWYoVz09OTIpVz1HPzEwOjcwO2Vsc2UgaWYoVz09MTApVz1yPzIyOjE2O2Vsc2V7aWYoVz09NzApcmV0dXJuIEQ9WChBKSxGJiZGKEQpLEQ7Vz09MTM/KGI9ZnVuY3Rpb24oKXtyKGZ1bmN0aW9uKGEpe0NFKGZ1bmN0aW9uKCl7RihhKX0pfSxBKX0sVz05Mik6Vz09MTYmJihRPXkseT1mdW5jdGlvbigpeyhRKCksQ0UpKGIpfSxXPTE1KX19LHBlOmZ1bmN0aW9uKEYpe3UmJnUoRil9fSxjPTg5O2Vsc2UgaWYoYz09SSl7YTp7aWYodGhpcy5uPT09MCl7Uz1bMCwwXTticmVhayBhfVM9Wyh0aGlzLlguc29ydChmdW5jdGlvbihGLEcpe3JldHVybiBGLUd9KSx0aGlzKS5uLHRoaXMuWFt0aGlzLlgubGVuZ3RoPj4xXV19Yz03Mn1lbHNlIGM9PTcyP2M9TC05Pj4zPzI6OTI6Yz09Mj9jPShMPDwxJjcpPj02JiZMLTQ+PjU8NT8xNzo4OTpjPT0zOT9jPTk0OmM9PTk0JiYoYz0oTCs2XjEzKTxMJiYoTCsyJjI1KT49TD9JOjcyKX19LGhLPWZ1bmN0aW9uKCl7cmV0dXJuIHdDLmNhbGwodGhpcyw3Mil9LEFLPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSl7Zm9yKFM9Nzk7UyE9ODQ7KWlmKFM9PTc5KVM9ODg7ZWxzZSBpZihTPT1JKVM9cDxyLmxlbmd0aD83NTo0MTtlbHNlIGlmKFM9PTY4KXRoaXMuSGk9WSxTPTgzO2Vsc2V7aWYoUz09NTkpcmV0dXJuIHk7Uz09Njk/Uz1JOlM9PTE0P1M9KEw+PjEmMTEpPT0xPzYyOjU5OlM9PTQ0P1M9dT5mPzg1OjM5OlM9PTgxPyhYPVksYz1bXSxwPVksUz02OSk6Uz09ODM/Uz0oTCYzNyk9PUw/ODE6MTQ6Uz09ODg/Uz0oTHw5KT4+ND49MyYmKEw8PDEmMTYpPEk/Njg6ODM6Uz09ODU/KGNbWCsrXT1mLX4odSZmKSstMjU2LHU+Pj04LFM9MzkpOlM9PTY1PyhwKyssUz1JKTpTPT03NT8odT1yLmNoYXJDb2RlQXQocCksUz00NCk6Uz09Mzk/KGNbWCsrXT11LFM9NjUpOlM9PTQxPyh5PWMsUz0xNCk6Uz09NjImJihTPTU5KX19LGVTPWZ1bmN0aW9uKEksTCxZLGYpe2Y9TihMLChZPVQoTCwzMCksNikpLEpLKGYsTCxkKEksQyhMLFkpKSl9LHZrPWZ1bmN0aW9uKEksTCxZLGYscil7cmV0dXJuIFIxLmNhbGwodGhpcyxMLEksMyxZLGYscil9LEU4PWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCl7Zm9yKFg9TFt1PUxbM118cixwPXIsMl18cjtwPDE2O3ArKylmPWY+Pj5JfGY8PDI0LGYrPVl8cix1PXU+Pj5JfHU8PDI0LFk9WTw8M3xZPj4+MjksZl49WCs2NTksdSs9WHxyLFg9WDw8M3xYPj4+MjksdV49cCs2NTksWF49dSxZXj1mO3JldHVybltZPj4+MjQmMjU1LFk+Pj4xNiYyNTUsWT4+PkkmMjU1LFk+Pj5yJjI1NSxmPj4+MjQmMjU1LGY+Pj4xNiYyNTUsZj4+PkkmMjU1LGY+Pj5yJjI1NV19LERxPWZ1bmN0aW9uKEksTCxZKXt0aGlzLnR5cGU9KCJzdGFjayJpbihZPUVycm9yLmNhbGwodGhpcyxJKyIgY2Fubm90IGJlIHVzZWQgd2l0aCBpbnRlbnQgIitOQltMXSksdGhpcy5tZXNzYWdlPVkubWVzc2FnZSxZKSYmKHRoaXMuc3RhY2s9WS5zdGFjayksSSk7d2hpbGUoW10paWYodGhpcy5uYW1lPSJUeXBlQ2Fubm90QmVVc2VkV2l0aElmcmFtZUludGVudEVycm9yIix0cnVlKWJyZWFrfSx5Uz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgpe2ZvcihYPUw7WCE9ODA7KWlmKFg9PTIpdW8uY2FsbCh0aGlzLGYscnx8WHQuZW8oKSxwKSxYPTc5O2Vsc2UgaWYoWD09MjkpRnQuY2FsbCh0aGlzKSxmfHxja3x8KGNrPW5ldyBTUyksdGhpcy5Kcj12b2lkIDAsdGhpcy5MPXRoaXMuSHE9dGhpcy5UMT1udWxsLHRoaXMud289dGhpcy5Mej1mYWxzZSx0aGlzLnVSPXRoaXMuTWg9bnVsbCxYPTE5O2Vsc2UgaWYoWD09MTkpWD0oWSYxMjMpPT1ZPzI6Nzk7ZWxzZXtpZihYPT03OSlyZXR1cm4gdTtYPT1MP1g9ODg6WD09ODgmJihYPShZKzYmSSk8WSYmKFkrNV42KT49WT8yOToxOSl9fSxLTz1mdW5jdGlvbihJLEwpe3JldHVybiBtei5jYWxsKHRoaXMsMCxJLEwsNil9LFRjPWZ1bmN0aW9uKEksTCxZLGYscixwLHUpe211KCgoWT1DKChwPU4oKHU9Tigocj00LShMJi00KS0ofkxeMykrMiooTHwtNCksZj0oTHw0KS1+KEwmNCkrfihMfDQpLEkpLDE3KSxJKSwyMiksSSksdSksZikmJihZPVpxKCIiK1ksMTAyMykpLHImJkpLKHAsSSxkKDIsWS5sZW5ndGgpKSxwKSxJLFkpfSxnPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjKXtjPXRoaXM7dHJ5e01CKHUscixZLFgsdGhpcyxmLEksTCxwKX1jYXRjaChTKXtLKDE2LHRoaXMsUywwKSxYKGZ1bmN0aW9uKHkpe3koYy5XKX0pfX0sd0M9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYsRyl7e0c9OTM7d2hpbGUoRyE9NjgpaWYoRz09ODMpRz0oSXw3Mik9PUk/MzA6NjM7ZWxzZXtpZihHPT03NilyZXR1cm4gRjtHPT00Nj8oRj0oeT1hMVtMLnN1YnN0cmluZygwLDMpKyJfIl0pP3koTC5zdWJzdHJpbmcoMyksWSxmLHIscCx1LFgsYyxTKTp3QygxNixZLEwpLEc9MzIpOkc9PTMyP0c9ST4+MiYxMT83Njo3ODpHPT02Mz9HPShJPDwxJjE2KTw5JiYoSTw8MSYxNSk+PTU/NDY6MzI6Rz09Nzg/KEwoZnVuY3Rpb24oQSl7QShZKX0pLEY9W2Z1bmN0aW9uKCl7cmV0dXJuIFl9LGZ1bmN0aW9uKCl7fV0sRz03Nik6Rz09NTE/KHI9WSxyXj1yPDwxMyxyXj1yPj4xNyxyPShwPXI8PDUsKHJ8MCkrfihyfHApLSh+cl5wKSsofnImcCkpLChyPS1+Zi0ociZ+ZiktKH5yXmYpKzIqKHJ8fmYpKXx8KHI9MSksRj0tKEx8MCkrKEx8cikrKEwmfnIpLEc9ODMpOkc9PTI3P0c9KEk8PDEmMTUpPj0xMiYmKEkrMyY4KTw2PzUxOjgzOkc9PTMwP0c9NjM6Rz09OTMmJihHPTI3KX19fSx0Sz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyl7aWYoIUwuVyl7TC5ocisrO3RyeXtyPShjPXZvaWQgMCwwKTt7cD1MLlA7d2hpbGUoLS1ZKXRyeXtpZihYPXZvaWQgMCxMLk8pYz1UbChMLk8sTCk7ZWxzZXtpZihyPUMoTCxmKSxyPj1wKWJyZWFrO2M9KFg9KEooTCxJLHIpLE4oTCwxMCkpLEMoTCxYKSl9Vig1OCwoYyYmKHU9Y1txQl0sMjA0OC1+dSstMjA0OS0odSYtMjA0OSkpP2MoTCxZKTpuTyhbbzEsMjEsWF0sMCwzNTcsTCksZiksZmFsc2UsTCxmYWxzZSxZKX1jYXRjaChTKXtsKEwsMzgpP25PKFMsMjIsMzU3LEwpOkooTCwzOCxTKX19aWYoIVkpe2ZvcigwPT0oTnVtYmVyKCkhPSFbXSk7TC5aejswKXt0SygyNzIsTCwoTC5oci0tLDE0MDQyMzU1MzYyOTEpLDUwOSk7cmV0dXJuO2lmKCFbXT09TnVtYmVyKCkpYnJlYWt9bk8oW28xLDMzXSwwLDM1NyxMKX19Y2F0Y2goUyl7dHJ5e25PKFMsMjIsMzU3LEwpfWNhdGNoKHkpe0soMjAsTCx5LDApfX1MLmhyLS19fSxYdD1mdW5jdGlvbigpe3JldHVybiBmTy5jYWxsKHRoaXMsImFkIiwzKX0sbk89ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYsRyl7c3dpdGNoKCEoIWYuYmQmJihTPXZvaWQgMCxJJiZJWzBdPT09bzEmJihTPUlbMl0sTD1JWzFdLEk9dm9pZCAwKSxjPWwoZixZKSxjLmxlbmd0aD09MCYmKFg9bChmLDI3Mik+PjMsYy5wdXNoKEwsWD4+OCYyNTUsMiooWHwyNTUpLSAtMSt+KFh8MjU1KS0oWF4yNTUpKSxTIT12b2lkIDAmJmMucHVzaCgtMS1+KFN8MjU1KS0oU14yNTUpKSkseT0iIixJJiYoSS5tZXNzYWdlJiYoeSs9SS5tZXNzYWdlKSxJLnN0YWNrJiYoeSs9IjoiK0kuc3RhY2spKSx1PWsoZiw0NjQpLHVbMF0+MykpKXtjYXNlIHRydWU6IVtdPT0oZmFsc2U9PTApO2JyZWFrO2Nhc2UgZmFsc2U6KHA9KHVbMF0tPSh5PXkuc2xpY2UoMCwodVswXXwwKS0zKSxGPXkubGVuZ3RoLDIqKEYmMyktMS0ofkZeMykpLHk9WnEoeSwxMDIzKSxmLlUpLGYpLlU9Zjt0cnl7Zi5rYT8ocj0ocj1DKGYsMzUwKSkmJnJbci5sZW5ndGgtMV18fDk1LChHPWwoZiw0MjEpKSYmR1tHLmxlbmd0aC0xXT09cnx8SksoNDIxLGYsW3ImMjU1XSkpOm11KDM1MCxmLFs5NV0pLG11KDE5NSxmLGQoMix5Lmxlbmd0aCkuY29uY2F0KHkpLDE0NCl9ZmluYWxseXtmLlU9cH1icmVha319LExFPWZ1bmN0aW9uKEkpe3JldHVybiB5Uy5jYWxsKHRoaXMsNDAsNywxMixJKX0sU1M9ZnVuY3Rpb24oKXtyZXR1cm4gUFMuY2FsbCh0aGlzLDU2LDEyKX0sT3c9ZnVuY3Rpb24oSSxMKXtyZXR1cm4gUjEuY2FsbCh0aGlzLEwsSSwxMil9LGtWPWZ1bmN0aW9uKEksTCl7ZnVuY3Rpb24gWSgpe3RoaXMuUj10aGlzLnc1PXRoaXMubj0wfXdoaWxlKDEyKWlmKFkucHJvdG90eXBlLnB6PWZ1bmN0aW9uKGYscil7cmV0dXJuIFMwLmNhbGwodGhpcyxyLGYsNil9LHRydWUpYnJlYWs7WS5wcm90b3R5cGUuRks9ZnVuY3Rpb24oKXtyZXR1cm4gYWEuY2FsbCh0aGlzLDc2KX07d2hpbGUoW10paWYoST1uZXcgWSx0cnVlKWJyZWFrO3JldHVybltmdW5jdGlvbihmKXtJLnB6KGYpLEwucHooZil9LChMPW5ldyBZLGZ1bmN0aW9uKGYscil7cmV0dXJuKChyPVtJLkZLKCksTC5GSygpLEkuUixMLlJdLGY9PT12b2lkIDApfHxmKSYmKEw9bmV3IFkpLHJ9KV19LHM4PWZ1bmN0aW9uKEksTCxZLGYscil7cmV0dXJuIHljLmNhbGwodGhpcyw5OSw0OCxZLHIsZixJLEwpfSxKSz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyl7c3dpdGNoKCEoTC5VPT1MKSl7Y2FzZSAtMD09PU51bWJlcigpOk5hTjticmVhaztjYXNlIFtdPT0obnVsbCE9ZmFsc2UpOmZvcih1PUMoTCxJKSxJPT0xOTV8fEk9PTQ4OHx8ST09MTI/KGM9ZnVuY3Rpb24oUyx5LEYsRyxBLFEsRCxXLGIsYSl7Zm9yKFc9KGI9NjYsMTQpOzspdHJ5e2lmKGI9PTQwKWJyZWFrO2Vsc2UgaWYoYj09NDEpYj11LkVBIT15PzMyOjM1O2Vsc2UgaWYoYj09MjgpVz0zMyx1LnI1PUU4KDgsRyxUKDAsMyxBLHUpLFQoMCwzNSwtKEEmNCktMS0zKn4oQXw0KSsyKih+QV40KSx1KSwwKSxiPTM1O2Vsc2UgaWYoYj09MzUpdS5wdXNoKChGPXUucjVbLX4oRCY3KS0gLTErMiooRF43KSsyKih+RF43KV0sLTErKH5GJlMpLSh+RnxTKSkpLGI9NDA7ZWxzZXtpZihiPT0wKXRocm93IFc9MTQsYTtiPT0zMj8odS5FQT15LEE9KFE9eTw8MywtfihRJjQpK34oUXw0KSsyKihRJi01KSksRz1bMCwwLHBbMV0scFsyXV0sYj0yOCk6Yj09NjYmJihEPXUubGVuZ3RoLHk9KER8MCktND4+MyxiPTQxKX19Y2F0Y2godyl7aWYoVz09MTQpdGhyb3cgdztXPT0zMyYmKGE9dyxiPTApfX0scD1DKEwsMzgwKSk6Yz1mdW5jdGlvbihTKXt1LnB1c2goUyl9LGYmJmMoZiYyNTUpLFg9MCxyPVkubGVuZ3RoO1g8cjtYKyspYyhZW1hdKTticmVha319LHoseD1mdW5jdGlvbihJLEwsWSl7c3dpdGNoKCEoST09NTA5fHxJPT0yNzIpKXtjYXNlIFtdIT10cnVlOmlmKEwuYmQmJkkhPTQ4KXJldHVybjtJPT0yNjJ8fEk9PTE5NXx8ST09MjM2fHxJPT0xMnx8ST09MzU3fHxJPT0zNTB8fEk9PTQyMXx8ST09MzgwfHxJPT00ODh8fEk9PTQ2ND9MLlNbSV18fChMLlNbSV09VCgyNjAsMTIsTCxJLFksNTQpKTpMLlNbSV09VCgyNjAsOCxMLEksWSw4OSk7YnJlYWs7Y2FzZSBbXT09dHJ1ZTpMLlNbSV0/TC5TW0ldLmNvbmNhdChZKTpMLlNbSV09cSgyMCxMLFkpO2JyZWFrfUk9PTQ4JiYoTC5DPWtLKGZhbHNlLEwsMzIpLEwuQT12b2lkIDApfSxDTz1mdW5jdGlvbigpe2Zvcih2YXIgST04MztJIT0zMzspe2lmKEk9PTIxKXJldHVybiBZO2lmKEk9PTgzKXZhciBMPShJPTksTnVtYmVyKHRoaXMpKSxZPVtdLGY9TDtlbHNlIEk9PTk0PyhmKyssST02OCk6ST09NDc/KFlbZi1MXT1hcmd1bWVudHNbZl0sST05NCk6ST09OT9JPTY4Okk9PTY4JiYoST1mPGFyZ3VtZW50cy5sZW5ndGg/NDc6MjEpfX0sa0s9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYsRyxBLFEsRCxXKXtpZihEPWsoTCw1MDkpLEQ+PUwuUCl0aHJvd1tvMSwzMV07Zm9yKEE9KFM9MCxRPVkscD1ELEwucWUubGVuZ3RoKTtRPjA7KWY9cD4+MyxXPUwudHJbZl0sYz1wJTgsRz04LShjfDApLFg9RzxRP0c6USxJJiYoRj1wLHk9TCx5LkEhPUY+PjYmJih5LkE9Rj4+Nix1PWwoeSw0OCkseS5VZj1FOCg4LFswLDAsdVsxXSx1WzJdXSx5LkMseS5BLDApKSxXXj1MLlVmW2YmQV0pLFN8PShXPj44LShjfDApLShYfDApJigxPDxYKS0xKTw8KFF8MCktKFh8MCkscCs9WCxRLT1YO3JldHVybiBNKDUwOSxMLChyPVMsKER8MCkrKFl8MCkpKSxyfSxIaz1mdW5jdGlvbihJLEwsWSxmLHIscCl7cmV0dXJuIGwoZiwoeChJLCh0SygyNzIsZixyLCgocD1rKGYsSSksZi50ciYmcDxmLlApPyhNKEksZixmLlApLEJrKDM1NywwLGYsSSxZLDEwNCkpOk0oSSxmLFkpLEkpKSxmKSxwKSxMKSl9LFU4PWZ1bmN0aW9uKEksTCl7Zm9yKHZhciBZPTEzO1khPTU5OylpZihZPT0xMyl2YXIgZj0oWT0zOCwxKTtlbHNlIGlmKFk9PTU0KXt2YXIgcj1hcmd1bWVudHNbZl07Zm9yKHUgaW4gcilJW3VdPXJbdV07dmFyIHA9KFk9MjcsMCl9ZWxzZSBpZihZPT0zOClZPTEyO2Vsc2UgaWYoWT09MjcpWT01MTtlbHNlIGlmKFk9PTEyKVk9Zjxhcmd1bWVudHMubGVuZ3RoPzU0OjU5O2Vsc2UgaWYoWT09MjUpe3ZhciB1PVZTW3BdO09iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChyLHUpJiYoSVt1XT1yW3VdKSxZPTM5fWVsc2UgWT09NTE/WT1wPFZTLmxlbmd0aD8yNTo2NDpZPT0zOT8ocCsrLFk9NTEpOlk9PTY0JiYoZisrLFk9MTIpfSwkSz1mdW5jdGlvbihJKXtyZXR1cm4gSS5PP1RsKEkuWixJKTprSyh0cnVlLEksOCl9LGQ9ZnVuY3Rpb24oSSxMLFksZixyKXtmPVtdO3tyPShJfDApLTE7d2hpbGUocj49MClmWy0oSXwxKSsoSSYxKSsyKihJJi0yKS0ocnwwKV09KFk9TD4+cio4LDI1NisyKihZJi0yNTYpLShZXjI1NSkrKH5ZfDI1NSkpLHItLX1yZXR1cm4gZn0sTT1mdW5jdGlvbihJLEwsWSl7aWYoST09NTA5fHxJPT0yNzIpTC5TW0ldP0wuU1tJXS5jb25jYXQoWSk6TC5TW0ldPXEoMTgsTCxZKTtlbHNle2lmKEwuYmQmJkkhPTQ4KXJldHVybjtJPT0yNjJ8fEk9PTE5NXx8ST09MjM2fHxJPT0xMnx8ST09MzU3fHxJPT0zNTB8fEk9PTQyMXx8ST09MzgwfHxJPT00ODh8fEk9PTQ2ND9MLlNbSV18fChMLlNbSV09VCgyNjAsOSxMLEksWSw1NCkpOkwuU1tJXT1UKDI2MCwxMyxMLEksWSw4OSl9ST09NDgmJihMLkM9a0soZmFsc2UsTCwzMiksTC5BPXZvaWQgMCl9LFhqPXR5cGVvZiBPYmplY3QuY3JlYXRlPT0iZnVuY3Rpb24iP09iamVjdC5jcmVhdGU6ZnVuY3Rpb24oSSl7ZnVuY3Rpb24gTCgpe31MLnByb3RvdHlwZT1JO3doaWxlKFtdKXtyZXR1cm4gbmV3IEw7aWYoIWZhbHNlPT0hIiIpYnJlYWt9fSxGaj1mdW5jdGlvbihJLEwsWSxmLHIpe2lmKEkubGVuZ3RoPT0zKXt7WT0wO3doaWxlKFk8MylMW1ldKz1JW1ldLFkrK31mb3IoZj1bMTMsOCwxMywxMiwxNiw1LDMsMTAsMTVdLHI9MDtyPDk7cisrKUxbM10oTCxyJTMsZltyXSl9fSxKPWZ1bmN0aW9uKEksTCxZKXtzd2l0Y2goIShMPT01MDl8fEw9PTI3Mikpe2Nhc2UgTnVtYmVyKHVuZGVmaW5lZCkhPT1OdW1iZXIodW5kZWZpbmVkKTppZihJLmJkJiZMIT00OClyZXR1cm47TD09MjYyfHxMPT0xOTV8fEw9PTIzNnx8TD09MTJ8fEw9PTM1N3x8TD09MzUwfHxMPT00MjF8fEw9PTM4MHx8TD09NDg4fHxMPT00NjQ/SS5TW0xdfHwoSS5TW0xdPVQoMjYwLDUsSSxMLFksNTQpKTpJLlNbTF09VCgyNjAsNSxJLEwsWSw4OSk7YnJlYWs7Y2FzZSAwIT0hWyIiXTpJLlNbTF0/SS5TW0xdLmNvbmNhdChZKTpJLlNbTF09cSgxNyxJLFkpO2JyZWFrfUw9PTQ4JiYoSS5DPWtLKGZhbHNlLEksMzIpLEkuQT12b2lkIDApfSxsbz1mdW5jdGlvbihJLEwsWSl7cmV0dXJuIHlTLmNhbGwodGhpcyw0MCw3LDMsSSxMLFkpfSxNQj1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRil7Zm9yKFM9KHk9KHIuR3g9KHIueEk9d1AoMCw1NyxyLkIsKHIucWU9KHIuU2I9eFYsci5VaT16YyxyW1BrXSkse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbmNhdCgpfX0pKSxwRVtyLkJdKHIueEkse3ZhbHVlOnt2YWx1ZTp7fX19KSksW10pLDApO1M8MzIzO1MrKyl5W1NdPVN0cmluZy5mcm9tQ2hhckNvZGUoUyk7aWYoKChyLmw9MCwoci5zQT0wLHIpLlZlPShyLlc9KChyLkk9KHIuSWw9TCxmYWxzZSkscikuSz0oci50cj0oKHIuT0E9MCxyKS5XaT0zMDAwMSxyLmJkPWZhbHNlLHIuZDU9MCxbXSksKHIuTmU9W10sci5DPXZvaWQgMCxyLlVmPXZvaWQgMCxyKS5VPXIsci5obD0wLHIuQT12b2lkIDAsci5CcT1bXSxyLkRjPTAsci5ZYT0oci5QPShyLm85PXZvaWQgMCwwKSxyLm03PWMsMjUpLG51bGwpLHZvaWQgMCksRj0oci5TPVtdLHdpbmRvdy5wZXJmb3JtYW5jZSl8fHt9LHIuVD1bXSwoci5hbD1bXSxyLmNxPShyLkt6PShyLmhyPTAsci5RVz1mdW5jdGlvbihHKXtyZXR1cm4gclAuY2FsbCh0aGlzLDg3LDMsRyl9LFtdKSxbXSksci5BbD1mYWxzZSxyKS5vPWZhbHNlLHIua2E9KHIuSjU9KHIueGE9MCxyLk89dm9pZCAwLDApLHIuWmM9dm9pZCAwLCEoci5pPShyLlo9dm9pZCAwLDEpLDEpKSxbXSksci5OPWZhbHNlLHIpLlBpPShyLmd5PUksRi50aW1lT3JpZ2lufHwoRi50aW1pbmd8fHt9KS5uYXZpZ2F0aW9uU3RhcnR8fDApLHApJiZwLmxlbmd0aD09MiYmKHIuYWw9cFsxXSxyLk5lPXBbMF0pLFkpdHJ5e3Iubzk9SlNPTi5wYXJzZShZKX1jYXRjaChHKXtyLm85PXt9fVYoNzYsKHgoMzgsKEoociwxMiwoVig3NixmdW5jdGlvbihHKXtUYyhHLDQpfSwoKE0oMzUwLHIsKFYoMjgsZnVuY3Rpb24oRyxBLFEsRCxXLGIsYSx3LHYsRSl7Zm9yKEU9OTU7RSE9NzA7KUU9PTk/KFc9ZkgoMjMsNSwwLDEsRy5VKSxhPVcueVcsYj1XLk9mLFE9Vy5KbCx2PVcuVix3PXYubGVuZ3RoLEQ9dz09MD9uZXcgYltRXTp3PT0xP25ldyBiW1FdKHZbMF0pOnc9PTI/bmV3IGJbUV0odlswXSx2WzFdKTp3PT0zP25ldyBiW1FdKHZbMF0sdlsxXSx2WzJdKTp3PT00P25ldyBiW1FdKHZbMF0sdlsxXSx2WzJdLHZbM10pOjIoKSxKKEcsYSxEKSxFPTcwKTpFPT05NSYmKEU9Vig0Miw1MDksZmFsc2UsRyx0cnVlLEEpPzcwOjkpfSxyLChKKHIsMjM2LChKKHIsKFYoKChuZXcgKFYoMTIsZnVuY3Rpb24oRyl7ZVMoMSxHKX0sKFYoNjAsZnVuY3Rpb24oRyxBLFEsRCxXLGIpe3doaWxlKHt9KWlmKChRPU4oRywzNCksMCk9PSFbdW5kZWZpbmVkXSlicmVhazsoRD1sKEcsKEE9QyhHLChXPShiPVQoRywzMSksVChHLDMwKSksUSkpLGIpKSxNKShXLEcsQSBpbiBEfDApfSwoVig2MCwoTSgoKFYoMjgsZnVuY3Rpb24oRyxBLFEsRCxXLGIsYSx3LHYpe2Zvcih2PTYyO3YhPTk5Oyl2PT05PyhBKyssdj0zOSk6dj09Njg/dj0zOTp2PT04MT8oTShiLEcsYSBpbiBEfDApLHY9OTkpOnY9PTUxPyhhKz1TdHJpbmcuZnJvbUNoYXJDb2RlKFFbQV1eMTIxKSx2PTkpOnY9PTM5P3Y9QTxRLmxlbmd0aD81MTo4MTp2PT02MiYmKFc9TihHLDEzKSx3PVQoRywzMSksYj1UKEcsMjcpLFE9ayhHLFcpLEQ9ayhHLHcpLGE9IiIsQT0wLHY9NjgpfSxyLChWKDI4LChWKDc2LGZ1bmN0aW9uKEcsQSxRLEQsVyxiLGEsdyl7Zm9yKHc9Mjc7dyE9MTA7KXc9PTgyP3c9MTI6dz09Mjc/KEE9TihHLDYpLGI9cSg1LDEyNyxHKSxEPVtdLGE9ayhHLDc0KSxRPTAsVz1hLmxlbmd0aCx3PTgyKTp3PT0yOD8oUT0oKFF8MCkrKHEoMywxMjcsRyl8MCkpJVcsRC5wdXNoKGFbUV0pLHc9OTQpOnc9PTk0P3c9MTI6dz09MTI/dz1iLS0/Mjg6NDY6dz09NDYmJih4KEEsRyxEKSx3PTEwKX0sciwyNTIpLGZ1bmN0aW9uKEcsQSxRLEQsVyxiLGEsdyx2LEUpe3tFPTkyO3doaWxlKEUhPTkxKUU9PTkyPyh3PU4oRywyOSksUT1OKEcsMzgpLEQ9VChHLDIzKSxhPWwoRyx3KSxiPUMoRyxRKSxBPTAsVz0iIixFPTQyKTpFPT05Mz9FPUE8Yi5sZW5ndGg/OTA6NzY6RT09NDI/RT05MzpFPT0yND8oQSsrLEU9OTMpOkU9PTc2PyhKKEcsRCxhW1ddKSxFPTkxKTpFPT05MCYmKFcrPVN0cmluZy5mcm9tQ2hhckNvZGUoKHY9YltBXSwtMS0ofnZeMTIxKSkpLEU9MjQpfX0pLHIsMzAyKSwyMzcpKSx4KSg1MDksciwwKSwyNzIpLHIsMCksZnVuY3Rpb24oRyxBLFEsRCl7eCgoRD0oQT0oUT1UKEcsMjYpLCRLKEcpKSxUKEcsMjYpKSxEKSxHLGsoRyxRKT4+PkEpfSksciw0NTEpLHIpLDU5KSxyKSw1MCksbG8pKCJTdWJtaXQiKSkuZGlzcG9zZSgpLDYwKSxmdW5jdGlvbihHLEEsUSxELFcsYixhLHcpe2Zvcih3PTMxO3chPTE4Oyl3PT0zMD93PUcuVT09Rz84NToxODp3PT01Mz8oRy5BPXZvaWQgMCx3PTI0KTp3PT0yMj93PWE9PTQ4PzUzOjE4Onc9PTk5PyhHLkM9a0soZmFsc2UsRywzMiksRy5BPXZvaWQgMCx3PTE4KTp3PT0zMT8oYT1OKEcsMzQpLGI9TihHLDM2KSxXPVQoRywyMyksdz0zMCk6dz09MjQ/dz1BPT0yPzk5OjE4Onc9PTg1JiYoUT1sKEcsYSksRD1DKEcsVyksQT1sKEcsYiksUVtBXT1ELHc9MjIpfSxyLDE0NCksNDg4KSxZOCg0KSksW10pKSw0NjYpKSxbXSkpLHIpLnQ1PTAsciksNjkpLFk4KDQpKSksciksNTQ3KSxmdW5jdGlvbigpe30pLHIsMjgwKTt3aGlsZShbXSlpZihWKDYwLGZ1bmN0aW9uKEcsQSxRLEQsVyl7eCgoQT1qMCgiYXJyYXkiLChEPWwoKFc9TigoUT1UKEcsMjMpLEcpLDEwKSxHKSxRKSxEKSwibnVtYmVyIiksVyksRyxBKX0sciwzNDApLFtdKWJyZWFrO2lmKFYoNzYsZnVuY3Rpb24oRyxBLFEsRCxXLGIpeyhiPWwoRywoVz1sKEcsKEQ9TigoUT1UKEcsMjYpLEE9TihHLDMwKSxHKSwxOCksQSkpLFEpKT09Vyx4KShELEcsK2IpfSxyLChKKHIsMTYxLChKKHIsKEoociwoVig0NCxmdW5jdGlvbihHKXtxKDksOCxHLDQpfSxyLChWKDEyLCh4KDI2MixyLFs1NywwLCh4KDM1MywoVigyOCwoVig2MCxmdW5jdGlvbihHLEEsUSxELFcpe3tXPTM4O3doaWxlKFchPTYpVz09OTQ/KEQtLSxXPTYzKTpXPT0zND9XPTYzOlc9PTQxP1c9QT82NTo0MjpXPT00Mj8oeCg1MDksRyxHLlApLFc9Nik6Vz09Mzk/KFE9VChHLDMxKSxBW1FdPUcuU1tRXSxXPTk0KTpXPT02Mz9XPUQ+MD8zOTo4Olc9PTg/KEFbMzU3XT1HLlNbMzU3XSxBWzQ2NF09Ry5TWzQ2NF0sRy5TPUEsVz02KTpXPT0zOD8oQT1HLkt6LnBvcCgpLFc9NDEpOlc9PTY1JiYoRD0kSyhHKSxXPTM0KX19LChNKDE5NSwoVigxMiwoVig3NixmdW5jdGlvbihHLEEsUSxELFcsYixhLHcsdixFLG0sWUssR2wsY1MsbixzdyxsQixoLFdTKXt7aD0wO3doaWxlKGghPTY1KWg9PTYzP2g9bTxZSz84OTozOmg9PTc2PyhjUz1XUygxKSxELnB1c2goY1MpLFcrPWNTPzA6MSxoPTI3KTpoPT03Mz9oPTMwOmg9PTQ/KHN3PSgoV3wwKS0xKS50b1N0cmluZygyKS5sZW5ndGgsRT0wLHY9W10saD03KTpoPT0yNz8oYisrLGg9MzIpOmg9PTIzPyhWKDEyLGZ1bmN0aW9uKEgsZkUsUCxENCxlMCx0KXtmb3IodD0xMjt0IT0yODspdD09NDc/dD1mRT49RDQubGVuZ3RoPzYyOjg4OnQ9PTYyPyhENC5wdXNoKFQoSCwzMSkpLHQ9NCk6dD09NjQ/KFArKyx0PTE1KTp0PT04NT90PURbUF0/NTQ6OTA6dD09MTU/dD1QPFlLPzU5OjY3OnQ9PTg4PyhmRT1ENFtmRV0sdD01NCk6dD09NTk/KGZFPXZbUF0sdD04NSk6dD09MTI/KEQ0PVtdLGUwPVtdLFA9MCx0PTcwKTp0PT00P3Q9NDc6dD09NTQ/KGUwLnB1c2goZkUpLHQ9NjQpOnQ9PTY3PyhILk89cSgxOSxILG4uc2xpY2UoKSksSC5aPXEoMTYsSCxlMCksdD0yOCk6dD09NzA/dD0xNTp0PT05MCYmKHQ9NDcpfSxHLGxCKSxoPTY1KTpoPT0zMD9oPUdsLS0/OTE6MjM6aD09OTE/KG4ucHVzaChDKEcsTihHLDUpKSksaD03Myk6aD09Nz9oPTg6aD09ODk/KERbbV0mJih2W21dPU4oRywxOCkpLGg9NzkpOmg9PTA/KFdTPWZ1bmN0aW9uKEgsZkUpe2Zvcig7YTxIOylRfD0kSyhHKTw8YSxhKz04O3JldHVybiBhLT1ILFE+Pj0oZkU9USYoMTw8SCktMSxIKSxmRX0sbEI9VChHLDMxKSxhPVE9MCx3PShBPVdTKDMpLH5BLTMqfihBfDEpKyhBJi0yKSsyKih+QV4xKSksWUs9V1MoNSksVz1iPTAsRD1bXSxoPTkyKTpoPT03OT8obSsrLGg9NjMpOmg9PTkyP2g9MzI6aD09MzI/aD1iPFlLPzc2OjQ6aD09MzE/KG09MCxoPTc3KTpoPT00MT8oRSsrLGg9OCk6aD09Nzc/aD02MzpoPT04Nz9oPTMwOmg9PTg/aD1FPFlLPzE0OjMxOmg9PTM/KG49W10sR2w9dyxoPTg3KTpoPT0xNCYmKERbRV18fCh2W0VdPVdTKHN3KSksaD00MSl9fSxyLChWKDI4LGZ1bmN0aW9uKEcsQSxRLEQsVyl7Zm9yKFc9Nzg7VyE9MTI7KVc9PTc4P1c9Vig3NCw1MDksZmFsc2UsRyx0cnVlLEEpPzEyOjI3Olc9PTI3JiYoRD1OKEcsMTMpLFE9TihHLDEzKSxKKEcsUSxmdW5jdGlvbihiKXtyZXR1cm4gZXZhbChiKX0oTzgobChHLlUsRCkpKSksVz0xMil9LHIsKFYoMjgsZnVuY3Rpb24oRyxBLFEsRCxXLGIpe2ZvcihiPTY5O2IhPTczOyliPT00ND8oQSsrLGI9ODApOmI9PTc0P2I9ODA6Yj09MzY/KEooRyxXLEQpLGI9NzMpOmI9PTgwP2I9QTxRPzg0OjM2OmI9PTg0PyhELnB1c2goJEsoRykpLGI9NDQpOmI9PTY5JiYoVz1OKEcsMjYpLFE9cSg3LDEyNyxHKSxBPTAsRD1bXSxiPTc0KX0sKFYoNDQsZnVuY3Rpb24oRyxBLFEpeyhBPWsoKFE9TihHLDE0KSxHLlUpLFEpLEEpWzBdLnJlbW92ZUV2ZW50TGlzdGVuZXIoQVsxXSxBWzJdLEhTKX0sKFYoNDQsZnVuY3Rpb24oRyl7ZVMoNCxHKX0sKEoociwoTSg0NjQscixbKEoociw0NjEsKFYoNjAsZnVuY3Rpb24oRyxBLFEsRCl7RD1rKEcsKEE9TihHLChRPU4oRywxNyksMjEpKSxBKSksbChHLFEpIT0wJiZNKDUwOSxHLEQpfSxyLChWKDI4LGZ1bmN0aW9uKEcsQSxRLEQsVyxiKXt4KChEPWwoKFc9bCgoYj0oUT0oQT1UKEcsMjYpLFQoRywyNykpLE4oRyw1KSksRyksQSksRyksUSksYiksRyxXW0RdKX0sciwoTSgzNTcsKFYoMTIsZnVuY3Rpb24oRyxBKXtCaygzNTcsKEE9bChHLE4oRyw2KSksMCksRy5VLDUwOSxBLDEwNCl9LChyLkY4PShWKDEyLGZ1bmN0aW9uKEcsQSxRLEQsVyxiLGEsdyx2LEUsbSl7Zm9yKG09MjI7bSE9MzA7KW09PTQ3PyhEPVQoMiwzMiwxLDEsdixHLFcsQSxRKSxBLmFkZEV2ZW50TGlzdGVuZXIoUSxELEhTKSxrKEcsMTYxKS5wdXNoKGZ1bmN0aW9uKCl7QS5yZW1vdmVFdmVudExpc3RlbmVyKFEsRCxIUyl9KSx4KDM1NSxHLFtBLFEsRF0pLG09MzApOm09PTI0P209QSE9PTA/NDc6MzA6bT09MjImJihhPVQoRywyNyksRT1OKEcsOSksdz1OKEcsMjIpLGI9TihHLDM2KSxXPUMoRyx3KSxRPUMoRyxFKSxBPWwoRy5VLGEpLHY9bChHLGIpLG09MjQpfSxyLDYzKSwwKSxyKSw0MzUpLHIpLFtdKSw0NDgpKSwxMTEpKSxVKSksMjA0OCldKSwyOTcpLHt9KSxyKSwzNzkpLHIpLDQ2MiksciksMSksMTE4KSksMzA2KSksZnVuY3Rpb24oRyxBLFEsRCxXLGIsYSl7Zm9yKGE9Mjg7YSE9OTE7KWlmKGE9PTM0KWE9RC5maT81MzozOTtlbHNlIGlmKGE9PTM5KVUuY2xlYXJUaW1lb3V0KEQuZTUpLGUoRC5Eeiw4MyxHKSxlKEQuTWUsOTMsRyksYT01MztlbHNlIGlmKGE9PTUzKUErKyxhPTk0O2Vsc2UgaWYoYT09NTIpRD1HLkJxW0FdLGE9MzQ7ZWxzZSBpZihhPT03NilhPTk0O2Vsc2UgaWYoYT09MzApRy5CcS5sZW5ndGg9MCxhPTkxO2Vsc2UgaWYoYT09Mjgpe2ZvcihXIGluIGI9ayhHLChRPSRLKEcpLDM4MSkpLGRlbGV0ZSBiW1FdLGIpaWYoVyE9PSJ0IiYmT2JqZWN0Lmhhc093bihiLFcpKXJldHVybjtBPShhPTc2LDApfWVsc2UgYT09OTQmJihhPUE8Ry5CcS5sZW5ndGg/NTI6MzApfSksciwzMzQpLHIpLFk4KDQpKSxyKSwzMjMpLGZ1bmN0aW9uKEcsQSxRLEQsVyxiLGEsdyx2LEUsbSxZSyxHbCxjUyxuKXtmb3Iobj0yO24hPTk0OylpZihuPT0yNSluPTE5O2Vsc2UgaWYobj09NjgpY1M9YS5sZW5ndGgsdj12PjA/djoxLG09MCxuPTI1O2Vsc2UgaWYobj09Njcpbj1qMCgiYXJyYXkiLGEsIm51bWJlciIpPT0ib2JqZWN0Ij8wOjUzO2Vsc2UgaWYobj09NTMpbj1HLlU9PUc/Njg6OTQ7ZWxzZSBpZihuPT00NSltKz12LG49MTk7ZWxzZSBpZihuPT0wKXtmb3IoRSBpbiBXPVtdLGEpVy5wdXNoKEUpO2E9VyxuPTUzfWVsc2Ugbj09Mj9uPVYoMTAsNTA5LHRydWUsRyx0cnVlLEEpPzk0OjI5Om49PTE5P249bTxjUz83NDo5NDpuPT0yOT8oR2w9VChHLDMwKSx3PVQoRywyNiksRD1OKEcsMTcpLGI9TihHLDI2KSxRPUMoRyx3KSx2PWsoRyxEKSxZSz1sKEcsYiksYT1DKEcsR2wpLG49NjcpOm49PTc0JiYoUShhLnNsaWNlKG0sKG18MCkrKHZ8MCkpLFlLKSxuPTQ1KX0pLHIsNDM3KSxyKSwwKSxyLllJPTAsMCldKSxmdW5jdGlvbihHLEEsUSxELFcsYixhLHcpe2Zvcih3PTIyO3chPTU5Oyl3PT05P3c9US0tPzkyOjU3Onc9PTIyPyhXPU4oRywxNCksUT1xKDYsMTI3LEcpLGE9IiIsRD1rKEcsNzQpLGI9RC5sZW5ndGgsQT0wLHc9NjMpOnc9PTEwP3c9OTp3PT02Mz93PTk6dz09NTc/KEooRyxXLGEpLHc9NTkpOnc9PTkyJiYoQT0oKEF8MCkrKHEoMywxMjcsRyl8MCkpJWIsYSs9eVtEW0FdXSx3PTEwKX0pLHIsNDExKSwzKSksMzgwKSxbMCwwLDBdKSw0OTEpLHIpLFtdKSksMTAzKSksOClWKDQ0LGZ1bmN0aW9uKEcsQSxRLEQpe0ooRywoRD1OKEcsKEE9TihHLChRPU4oRywzMCksMzgpKSwxMCkpLEQpLEMoRyxRKXx8QyhHLEEpKX0sciwxODcpO1hmKHRydWUsKGUoKCgoSihyLDM4MSwoVig0NCxmdW5jdGlvbihHLEEsUSxELFcsYil7e2I9Nzg7d2hpbGUoYiE9OTcpYj09Mj9iPUcuVT09R3x8RD09Ry5RVyYmUT09Rz8zOTo5NzpiPT02OT8oVz1mSCgyMyw1LDAsMSxHKSxRPVcuT2YsRD1XLkpsLGI9Mik6Yj09Nzg/Yj1WKDI2LDUwOSxmYWxzZSxHLHRydWUsQSk/OTc6Njk6Yj09MzkmJihNKFcueVcsRyxELmFwcGx5KFEsVy5WKSksRy54YT1HLnUoKSxiPTk3KX19LChKKHIsKChWKDEyLGZ1bmN0aW9uKEcsQSxRLEQsVyl7SihHLChXPShEPShBPU4oRywoUT1OKEcsMzIpLDI1KSksQyhHLFEpKSxDKEcsQSkpLEEpLFcrRCl9LHIsKFYoNDQsZnVuY3Rpb24oRyxBLFEsRCxXLGIsYSx3KXtNKChRPUMoKGI9KEE9bCgoVz1OKEcsKEQ9KGE9VChHLCh3PVQoRywyNyksMjMpKSxOKEcsMjkpKSwyNSkpLEcpLFcpLEMoRyxEKSksRyksYSksdyksRyxUKDIsNiwxLEEsYixHLFEpKX0sciwoSihyLChWKDc2LGZ1bmN0aW9uKEcsQSxRKXsoQT1UKChRPVQoRywyNyksRyksMzApLHgpKEEsRywiIitsKEcsUSkpfSxyLDMxNCksNDIxKSxbXSksNDUyKSksODgpKSxWKSg0NCxmdW5jdGlvbihHKXtUYyhHLDMpfSxyLDEzMCksMzU1KSwwKSxyKSwxNSkse30pKSxYKXx8ZShbZFBdLDg1LHIpLGUpKFtpeCx1XSw5MSxyKSxbcmEsZl0pLDgyLHIpLDcpLDAscix0cnVlLHRydWUpfSxCUz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRixHKXtpZihwPWZbMF0scD09dUIpISh5PVkuaihmKSl8fCh5LmU1PVUuc2V0VGltZW91dChmdW5jdGlvbihBKXt3aGlsZSh0cnVlKWlmKEE9IVkuVC5sZW5ndGgmJiFZLk4sMTUpYnJlYWs7ZSh5LkR6LDk1LCh5LmZpPXRydWUsWSkpO3doaWxlKCEhW10paWYoZSh5Lk1lLDgxLFkpLFtdKWJyZWFrO0EmJlhmKHRydWUsMywwLFksdHJ1ZSx0cnVlKX0seS50aW1lb3V0KSxZLkJxLnB1c2goeSkpO2Vsc2UgaWYocD09JDgpWS5JPXRydWUsWS5ZYT0yNSxZLmhsPVkuRzEoKS1mWzJdLFkuaihmKTtlbHNlIGlmKHA9PVBrKXtGPWZbSV1bM107dHJ5e1g9WS5XfHxZLmooZil9Y2F0Y2goQSl7Syg1MixZLEEsMCksWD1ZLld9aWYoYz1ZLnUoKSxbXSlGKFgpO1kubCs9WS51KCktY31lbHNlIGlmKHA9PVV3KWZbM10mJihZLm89dHJ1ZSksZls0XSYmKFkuST10cnVlKSxZLmooZik7ZWxzZSBzd2l0Y2goIShwPT1peCkpe2Nhc2UgdHJ1ZTpzd2l0Y2goIShwPT1yYSkpe2Nhc2UgMD09IVtdOndoaWxlKHA9PU1mKXtyZXR1cm4gdT1mWzJdLHgoMjE3LFksZls2XSksTShMLFksdSksWS5qKGYpO2lmKE51bWJlcigpPT09LTApYnJlYWt9cD09cUI/KFkuaihmKSxZLnRyPVtdLFkuUz1udWxsLFkuVmU9W10pOnA9PWRQJiZVLmRvY3VtZW50LnJlYWR5U3RhdGU9PT0ibG9hZGluZyImJihZLks9ZnVuY3Rpb24oQSxRKXtmdW5jdGlvbiBEKFcpe2ZvcihXPTE2O1chPTEyOylXPT02Mj8oUT10cnVlLFUuZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsRCxIUyksVS5yZW1vdmVFdmVudExpc3RlbmVyKCJsb2FkIixELEhTKSxBKCksVz0xMik6Vz09MTYmJihXPVE/MTI6NjIpfVUuZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsKFE9ZmFsc2UsRCksSFMpLFUuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsRCxIUyl9KTticmVhaztjYXNlIGZhbHNlOnRyeXt7Rz0wO3doaWxlKEc8WS5jcS5sZW5ndGgpe3RyeXtTPVkuY3FbR10sU1swXVtTW0ldXShTWzJdKX1jYXRjaChBKXt9RysrfX19Y2F0Y2goQSl7fSgwLGZbSV0pKGZ1bmN0aW9uKEEsUSl7WS5JOShBLHRydWUsUSl9LChyPShZLmNxPVtdLFkpLnUoKSxmdW5jdGlvbihBKXsoZShbcUJdLChBPSFZLlQubGVuZ3RoJiYhWS5OLDg0KSxZKSxBKSYmWGYodHJ1ZSw1LDAsWSx0cnVlLGZhbHNlKX0pLGZ1bmN0aW9uKEEpe3JldHVybiBZLnoxKEEpfSxmdW5jdGlvbihBLFEsRCl7cmV0dXJuIFkuQ2koQSxRLEQpfSksWS5sKz1ZLnUoKS1yO2JyZWFrfWJyZWFrO2Nhc2UgISFudWxsOlkubz10cnVlLFkuaihmKTticmVha319LGowPWZ1bmN0aW9uKEksTCxZLGYscil7aWYoKGY9dHlwZW9mIEwsZik9PSJvYmplY3QiKWlmKEwpe2lmKEwgaW5zdGFuY2VvZiBBcnJheSlyZXR1cm4gSTt3aGlsZShMIGluc3RhbmNlb2YgT2JqZWN0KXtyZXR1cm4gZjtpZihbXSlicmVha31pZigocj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoTCkscik9PSJbb2JqZWN0IFdpbmRvd10iKXJldHVybiJvYmplY3QiO3doaWxlKHI9PSJbb2JqZWN0IEFycmF5XSJ8fHR5cGVvZiBMLmxlbmd0aD09WSYmdHlwZW9mIEwuc3BsaWNlIT0idW5kZWZpbmVkIiYmdHlwZW9mIEwucHJvcGVydHlJc0VudW1lcmFibGUhPSJ1bmRlZmluZWQiJiYhTC5wcm9wZXJ0eUlzRW51bWVyYWJsZSgic3BsaWNlIikpe3JldHVybiBJO2lmKE5hTiE9PU5hTilicmVha31pZihyPT0iW29iamVjdCBGdW5jdGlvbl0ifHx0eXBlb2YgTC5jYWxsIT0idW5kZWZpbmVkIiYmdHlwZW9mIEwucHJvcGVydHlJc0VudW1lcmFibGUhPSJ1bmRlZmluZWQiJiYhTC5wcm9wZXJ0eUlzRW51bWVyYWJsZSgiY2FsbCIpKXJldHVybiJmdW5jdGlvbiJ9ZWxzZSByZXR1cm4ibnVsbCI7ZWxzZSBmb3IoMTtmPT0iZnVuY3Rpb24iJiZ0eXBlb2YgTC5jYWxsPT0idW5kZWZpbmVkIjsxKXtyZXR1cm4ib2JqZWN0IjtpZihudWxsIT0oTmFOPT09TmFOKSlicmVha31yZXR1cm4gZn0scEg9ZnVuY3Rpb24oKXt3aGlsZSh0cnVlKXtyZXR1cm4gQUsuY2FsbCh0aGlzLDcsMyk7aWYoe30pYnJlYWt9fSx1eD1mdW5jdGlvbihJLEwpe2Z1bmN0aW9uIFkoKXt0aGlzLm49KHRoaXMuWD1bXSwwKX1yZXR1cm4gTD0oST0oKFkucHJvdG90eXBlLnRsPWZ1bmN0aW9uKCl7cmV0dXJuIFdrLmNhbGwodGhpcyw3MSw2KX0sWSkucHJvdG90eXBlLm56PWZ1bmN0aW9uKGYscil7cmV0dXJuIGUuY2FsbCh0aGlzLGYsMTYscil9LG5ldyBZKSxuZXcgWSksW2Z1bmN0aW9uKGYpe0kubnooZiksTC5ueihmKX0sZnVuY3Rpb24oZixyKXtyZXR1cm4oZj1mPT09dm9pZCAwP3RydWU6ZixyPUkudGwoKS5jb25jYXQoTC50bCgpKSxmKSYmKEw9bmV3IFkpLHJ9XX0sSkM9ZnVuY3Rpb24oKXtyZXR1cm4gUFMuY2FsbCh0aGlzLDU2LDE5KX0sbD1mdW5jdGlvbihJLEwsWSl7WT1JLlNbTF07d2hpbGUoWT09PXZvaWQgMCl7dGhyb3dbbzEsMzAsTF07aWYodHJ1ZSlicmVha31pZihZLnZhbHVlKXJldHVybiBZLmNyZWF0ZSgpO3JldHVybiBZLmNyZWF0ZShMKjUqTCs0KkwrLTM1KSxZLnByb3RvdHlwZX0sQms9ZnVuY3Rpb24oSSxMLFksZixyLHApe1kuS3oubGVuZ3RoPnA/bk8oW28xLDM2XSxMLEksWSk6KFkuS3oucHVzaChZLlMuc2xpY2UoKSksWS5TW2ZdPXZvaWQgMCx4KGYsWSxyKSl9LEtFPWZ1bmN0aW9uKEkpe3JldHVybiB3UC5jYWxsKHRoaXMsMCwxMixJKX0sQz1mdW5jdGlvbihJLEwsWSl7WT1JLlNbTF07d2hpbGUoWT09PXZvaWQgMCl7dGhyb3dbbzEsMzAsTF07aWYoMSlicmVha31zd2l0Y2goIVkudmFsdWUpe2Nhc2UgdHJ1ZTp0cnVlLnRydWU7YnJlYWs7Y2FzZSAwIT0hWyIiXTpyZXR1cm4gWS5jcmVhdGUoKTticmVha31yZXR1cm4oWS5jcmVhdGUoTCo1KkwrNCpMKy0zNSksWSkucHJvdG90eXBlfSxHeT1mdW5jdGlvbihJLEwsWSxmLHIscCl7cmV0dXJuIFdrLmNhbGwodGhpcyw3MSwzLEksTCxZLGYscixwKX0sZEM9ZnVuY3Rpb24oKXtyZXR1cm4gVi5jYWxsKHRoaXMsOCl9LFpxPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSxGLEcsQSl7Zm9yKGM9KHU9KFk9SS5yZXBsYWNlKC9cXHJcXG4vZywiXFxuIiksMCkscj1bXSwwKTt1PFkubGVuZ3RoO3UrKylmPVkuY2hhckNvZGVBdCh1KSxmPDEyOD9yW2MrK109ZjooZjwyMDQ4P3JbYysrXT0oRz1mPj42LC0xLX4oR3wxOTIpKTooKGZ8MCkrfihmJjY0NTEyKS0gLTY0NTEzLShmXjY0NTEyKT09NTUyOTYmJnUrMTxZLmxlbmd0aCYmKFM9WS5jaGFyQ29kZUF0KHUrMSksLShTfDY0NTEyKS0yKn4oU3w2NDUxMikrKFNeNjQ1MTIpKzIqKH5TXjY0NTEyKSk9PTU2MzIwPyhmPTY1NTM2KygyKihmfDApLX4oZiZMKS0gLTErMip+Zjw8MTApKyhZLmNoYXJDb2RlQXQoKyt1KSZMKSxyW2MrK109KHk9Zj4+MTgsLTEtfnkrKH55JjI0MCkpLHJbYysrXT0oQT1mPj4xMiY2MywtfihBJjEyOCkrMiooQV4xMjgpKyh+QV4xMjgpKSk6cltjKytdPShwPWY+PjEyLDIqfihwJjIyNCktMip+cC0gLTIyNSsofnB8MjI0KSkscltjKytdPShYPWY+PjYmNjMsLX5YKyhYXjEyOCkrKH5YfDEyOCkpKSxyW2MrK109KEY9ZiY2MywoRiYxMjgpLTEtKH5GXjEyOCkpKTtyZXR1cm4gcn0sRnQ9ZnVuY3Rpb24oKXtyZXR1cm4gUmEuY2FsbCh0aGlzLDQ1LDMpfSxqYT1mdW5jdGlvbihJKXtyZXR1cm4gb2EuY2FsbCh0aGlzLDEsNyxJKX0sZ0M9ZnVuY3Rpb24oSSxMLFksZil7dHJ5e2Y9SVsoKEx8MiktfihMfDIpKyh+TF4yKSklM10sSVtMXT0oSVtMXXwwKS0oSVsoKEx8MCkrMSklM118MCktKGZ8MCleKEw9PTE/Zjw8WTpmPj4+WSl9Y2F0Y2gocil7dGhyb3cgcjt9fSxZVj1mdW5jdGlvbihJKXtyZXR1cm4geWMuY2FsbCh0aGlzLDk5LDYsSSl9LGs9ZnVuY3Rpb24oSSxMLFkpe2lmKChZPUkuU1tMXSxZKT09PXZvaWQgMCl0aHJvd1tvMSwzMCxMXTtpZihZLnZhbHVlKXJldHVybiBZLmNyZWF0ZSgpO3JldHVybiBZLmNyZWF0ZShMKjUqTCs0KkwrLTM1KSxZLnByb3RvdHlwZX0sU2E9ZnVuY3Rpb24oSSl7cmV0dXJuIGFhLmNhbGwodGhpcywxMCxJKX0sbXU9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMpe3doaWxlKEwuVT09TCl7Zm9yKHU9QyhMLEkpLEk9PTE5NXx8ST09NDg4fHxJPT0xMj8ocD1mdW5jdGlvbihTLHksRixHLEEsUSxELFcsYixhKXtmb3IoYj0oYT02Myw2Nyk7Oyl0cnl7aWYoYT09NzQpYnJlYWs7ZWxzZSBpZihhPT02MylEPXUubGVuZ3RoLEE9KER8MCktND4+MyxhPTM3O2Vsc2UgaWYoYT09MTkpYj00Myx1LnI1PUU4KDgsRixUKDAsNjYseSx1KSxUKDAsNTEsLSh5JjQpLTEtMyp+KHl8NCkrMioofnleNCksdSksMCksYT02NjtlbHNlIGlmKGE9PTY2KXUucHVzaCgoUT11LnI1Wy1+KEQmNyktIC0xKzIqKEReNykrMioofkReNyldLC0xKyh+USZTKS0oflF8UykpKSxhPTc0O2Vsc2UgaWYoYT09NTApdS5FQT1BLHk9KEc9QTw8MywtfihHJjQpK34oR3w0KSsyKihHJi01KSksRj1bMCwwLGNbMV0sY1syXV0sYT0xOTtlbHNlIGlmKGE9PTM3KWE9dS5FQSE9QT81MDo2NjtlbHNlIGlmKGE9PTk1KXRocm93IGI9NjcsVzt9Y2F0Y2godyl7aWYoYj09NjcpdGhyb3cgdztiPT00MyYmKFc9dyxhPTk1KX19LGM9QyhMLDM4MCkpOnA9ZnVuY3Rpb24oUyl7dS5wdXNoKFMpfSxmJiZwKGYmMjU1KSxYPTAscj1ZLmxlbmd0aDtYPHI7WCsrKXAoWVtYXSk7aWYodHJ1ZSE9IVtdKWJyZWFrfX0sdW89ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYKXtyZXR1cm4gclAuY2FsbCh0aGlzLDg3LDI0LEksTCxZLGYscixwLHUsWCl9LGZIPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMpe3U9KFg9KCgocD1OKHIsKGM9cltBcF18fHt9LEwpKSxjKS55Vz1UKHIsSSksYykuVj1bXSxyLlUpPT1yPygkSyhyKXxZKS1mOjEsTikociw5KTt7Uz1ZO3doaWxlKFM8WCljLlYucHVzaChUKHIsMzApKSxTKyt9Zm9yKChjLk9mPWsocix1KSxjKS5KbD1sKHIscCk7WC0tOyljLlZbWF09QyhyLGMuVltYXSk7cmV0dXJuIGN9LFE4LFk4PWZ1bmN0aW9uKEksTCxZKXtmb3IoWT01NTtZIT04MjspaWYoWT09NTIpWT0zOTtlbHNlIGlmKFk9PTM5KVk9SS0tPzY4Ojc3O2Vsc2UgaWYoWT09OTIpWT0zOTtlbHNlIGlmKFk9PTY4KUwucHVzaChNYXRoLnJhbmRvbSgpKjI1NXwwKSxZPTUyO2Vsc2V7aWYoWT09NzcpcmV0dXJuIEw7WT09NTUmJihMPVtdLFk9OTIpfX0sYm89ZnVuY3Rpb24oSSxMKXtyZXR1cm4gclAuY2FsbCh0aGlzLDg3LDMyLEksTCl9LFFTPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMpe3JldHVybiB3Qy5jYWxsKHRoaXMsNSxJLEwsWSxmLHIscCx1LFgsYyxTKX0seTg9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYpeyhMLnB1c2goKHA9SVswXTw8MjQscj1JWzFdPDwxNiwocCZyKS0xLSh+cF5yKSl8SVsyXTw8OHxJWzNdKSxMLnB1c2goKHk9KFg9SVs0XTw8MjQsRj1JWzVdPDwxNiwtfihYJkYpKy0zLShYfH5GKS0oflh8RikpfElbNl08PDgsZj1JWzddLChmfDApK34oeSZmKS1+eSkpLEwpLnB1c2goKFk9KHU9SVs4XTw8MjQsUz1JWzldPDwxNiwoU3wwKSsodV5TKS0ofnUmUykpfElbMTBdPDw4LGM9SVsxMV0sKFkmYyktMSsoWSZ+YyktKFl8fmMpKSl9LFRsPWZ1bmN0aW9uKEksTCxZKXtyZXR1cm4oWT1JLmNyZWF0ZSgpLnNoaWZ0KCksTCkuTy5jcmVhdGUoKS5sZW5ndGh8fEwuWi5jcmVhdGUoKS5sZW5ndGh8fChMLk89dm9pZCAwLEwuWj12b2lkIDApLFl9LCRWPWZ1bmN0aW9uKEksTCxZLGYscixwKXtyZXR1cm4gSy5jYWxsKHRoaXMsOSxMLFksSSxmLHIscCl9LGN2PWZ1bmN0aW9uKEksTCxZLGYscil7cmV0dXJuIHljLmNhbGwodGhpcyw5OSwzLEksTCxZLGYscil9LHFmPWZ1bmN0aW9uKEkpe3t2YXIgTD00Nzt3aGlsZShMIT0xOSlpZihMPT00Nyl2YXIgWT1DTy5hcHBseSgoTD00LDEpLGFyZ3VtZW50cyk7ZWxzZSBpZihMPT05MylMPTY4O2Vsc2UgaWYoTD09MzgpcisrLEw9Njg7ZWxzZSBpZihMPT0yKXZhciBmPShMPTkzLEkpWzBdLHI9MDtlbHNlIGlmKEw9PTY4KUw9cjxZLmxlbmd0aD81OToxMTtlbHNle2lmKEw9PTI5KXJldHVybiBteigwLG51bGwsSVswXSwxNCk7aWYoTD09NClMPVkubGVuZ3RoPT09MD8yOToyO2Vsc2UgaWYoTD09NTkpZis9ZW5jb2RlVVJJQ29tcG9uZW50KFlbcl0pK0lbcisxXSxMPTM4O2Vsc2UgaWYoTD09MTEpcmV0dXJuIG16KDAsbnVsbCxmLDEyKX19fSxaND1mdW5jdGlvbihJKXtyZXR1cm4gQUsuY2FsbCh0aGlzLDcsNDgsSSl9O3N3aXRjaCghKHR5cGVvZiBPYmplY3Quc2V0UHJvdG90eXBlT2Y9PSJmdW5jdGlvbiIpKXtjYXNlIGZhbHNlPT0wOnZhciBXdjthOnt2YXIgRGM9e2E6dHJ1ZX0sYng9e307dHJ5e1d2PShieC5fX3Byb3RvX189RGMsYngpLmE7YnJlYWsgYX1jYXRjaChJKXt9V3Y9ZmFsc2V9UTg9V3Y/ZnVuY3Rpb24oSSxMLFkpe2ZvcihZPTU4O1khPTMxOylpZihZPT01OClJLl9fcHJvdG9fXz1MLFk9MjA7ZWxzZSBpZihZPT0yMClZPUkuX19wcm90b19fIT09TD84NDo0NDtlbHNle2lmKFk9PTQ0KXJldHVybiBJO2lmKFk9PTg0KXRocm93IG5ldyBUeXBlRXJyb3IoSSsiIGlzIG5vdCBleHRlbnNpYmxlIik7fX06bnVsbDticmVhaztjYXNlIGZhbHNlOlE4PU9iamVjdC5zZXRQcm90b3R5cGVPZjticmVha312YXIgVT10aGlzfHxzZWxmLFJfPVE4LE5mPSJjbG9zdXJlX3VpZF8iKyhNYXRoLnJhbmRvbSgpKjFFOT4+PjApLGNrLHZTPTAsR2M9ZnVuY3Rpb24oSSxMLFksZixyLHApe2lmKCJzIilwPTg3O2ZvcihmPTI1OzspdHJ5e2lmKHA9PTgwKWJyZWFrO2Vsc2UgaWYocD09MTMpZj0yNSxwPTY5O2Vsc2UgaWYocD09NDIpST1mYWxzZSxMPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwicGFzc2l2ZSIse2dldDpmdW5jdGlvbigpe0k9dHJ1ZX19KSxwPTEwO2Vsc2V7aWYocD09MTUpcmV0dXJuIGZhbHNlO2lmKHA9PTY5KXJldHVybiBmPTI1LEk7cD09MTA/KGY9NjcsWT1mdW5jdGlvbigpe30sVS5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0IixZLEwpLFUucmVtb3ZlRXZlbnRMaXN0ZW5lcigidGVzdCIsWSxMKSxwPTY5KTpwPT04NyYmKHA9VS5hZGRFdmVudExpc3RlbmVyJiZPYmplY3QuZGVmaW5lUHJvcGVydHk/NDI6MTUpfX1jYXRjaCh1KXtpZihmPT0yNSl0aHJvdyB1O2Y9PTY3JiYocj11LHA9MTMpfX0oKSxiQj0oKFIxKE93LDIsMzYsKCgoYm8ucHJvdG90eXBlLnN0b3BQcm9wYWdhdGlvbj1mdW5jdGlvbigpe3RoaXMuRm09dHJ1ZX0sSkMucHJvdG90eXBlKS5IPWZ1bmN0aW9uKEkpe3tJPTE1O3doaWxlKEkhPTcwKUk9PTE0P0k9dGhpcy5OaC5sZW5ndGg/MTM6NzA6ST09MjI/ST0xNDpJPT0xNT9JPXRoaXMuTmg/Njc6NzA6ST09Njc/ST0xNDpJPT0xMyYmKHRoaXMuTmguc2hpZnQoKSgpLEk9MjIpfX0sSkMucHJvdG90eXBlKVsoYm8ucHJvdG90eXBlLnByZXZlbnREZWZhdWx0PWZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPXRydWV9LEpDLnByb3RvdHlwZS5ZPWZhbHNlLEpDLnByb3RvdHlwZSkuZGlzcG9zZT1mdW5jdGlvbihJKXt7ST0yNzt3aGlsZShJIT0yMSlJPT0yNz9JPXRoaXMuWT8yMTo4NzpJPT04NyYmKHRoaXMuWT10cnVlLHRoaXMuSCgpLEk9MjEpfX0sU3ltYm9sLmRpc3Bvc2VdPWZ1bmN0aW9uKCl7dGhpcy5kaXNwb3NlKCl9LGJvKSksT3cucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oSSxMLFksZixyLHApe2ZvcihwPTE1O3AhPTIwOylwPT03OT8odGhpcy5vZmZzZXRYPUkub2Zmc2V0WCx0aGlzLm9mZnNldFk9SS5vZmZzZXRZLHRoaXMuY2xpZW50WD1JLmNsaWVudFghPT12b2lkIDA/SS5jbGllbnRYOkkucGFnZVgsdGhpcy5jbGllbnRZPUkuY2xpZW50WSE9PXZvaWQgMD9JLmNsaWVudFk6SS5wYWdlWSx0aGlzLnNjcmVlblg9SS5zY3JlZW5YfHwwLHRoaXMuc2NyZWVuWT1JLnNjcmVlbll8fDAscD0zNSk6cD09Njk/cD1yPzI6Nzk6cD09NDM/cD1mPzk2OjU2OnA9PTM1Pyh0aGlzLmJ1dHRvbj1JLmJ1dHRvbix0aGlzLmtleUNvZGU9SS5rZXlDb2RlfHwwLHRoaXMua2V5PUkua2V5fHwiIix0aGlzLmNoYXJDb2RlPUkuY2hhckNvZGV8fChZPT0ia2V5cHJlc3MiP0kua2V5Q29kZTowKSx0aGlzLmN0cmxLZXk9SS5jdHJsS2V5LHRoaXMuYWx0S2V5PUkuYWx0S2V5LHRoaXMuc2hpZnRLZXk9SS5zaGlmdEtleSx0aGlzLm1ldGFLZXk9SS5tZXRhS2V5LHRoaXMucG9pbnRlcklkPUkucG9pbnRlcklkfHwwLHRoaXMucG9pbnRlclR5cGU9SS5wb2ludGVyVHlwZSx0aGlzLnN0YXRlPUkuc3RhdGUsdGhpcy50aW1lU3RhbXA9SS50aW1lU3RhbXAsdGhpcy5Tbz1JLEkuZGVmYXVsdFByZXZlbnRlZCYmT3cuRi5wcmV2ZW50RGVmYXVsdC5jYWxsKHRoaXMpLHA9MjApOnA9PTY3PyhmPUkuZnJvbUVsZW1lbnQscD05Nik6cD09MTU/KFk9dGhpcy50eXBlPUkudHlwZSxyPUkuY2hhbmdlZFRvdWNoZXMmJkkuY2hhbmdlZFRvdWNoZXMubGVuZ3RoP0kuY2hhbmdlZFRvdWNoZXNbMF06bnVsbCx0aGlzLnRhcmdldD1JLnRhcmdldHx8SS5zcmNFbGVtZW50LHRoaXMuY3VycmVudFRhcmdldD1MLGY9SS5yZWxhdGVkVGFyZ2V0LHA9NDMpOnA9PTU2P3A9WT09Im1vdXNlb3ZlciI/Njc6Mzg6cD09ODI/KGY9SS50b0VsZW1lbnQscD05Nik6cD09OTY/KHRoaXMucmVsYXRlZFRhcmdldD1mLHA9NjkpOnA9PTI/KHRoaXMuY2xpZW50WD1yLmNsaWVudFghPT12b2lkIDA/ci5jbGllbnRYOnIucGFnZVgsdGhpcy5jbGllbnRZPXIuY2xpZW50WSE9PXZvaWQgMD9yLmNsaWVudFk6ci5wYWdlWSx0aGlzLnNjcmVlblg9ci5zY3JlZW5YfHwwLHRoaXMuc2NyZWVuWT1yLnNjcmVlbll8fDAscD0zNSk6cD09MzgmJihwPVk9PSJtb3VzZW91dCI/ODI6OTYpfSxPdy5wcm90b3R5cGUuc3RvcFByb3BhZ2F0aW9uPWZ1bmN0aW9uKCl7KE93LkYuc3RvcFByb3BhZ2F0aW9uLmNhbGwodGhpcyksdGhpcy5Tbykuc3RvcFByb3BhZ2F0aW9uP3RoaXMuU28uc3RvcFByb3BhZ2F0aW9uKCk6dGhpcy5Tby5jYW5jZWxCdWJibGU9dHJ1ZX0sT3cpLnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbihJKXt3aGlsZSh0cnVlIT0hW10paWYoZmFsc2UhPShPdy5GLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyksbnVsbCkpYnJlYWs7KEk9dGhpcy5TbyxJLnByZXZlbnREZWZhdWx0KT9JLnByZXZlbnREZWZhdWx0KCk6SS5yZXR1cm5WYWx1ZT1mYWxzZX0sImNsb3N1cmVfbGlzdGVuYWJsZV8iKSsoTWF0aC5yYW5kb20oKSoxRTZ8MCksaW89MCxWUz0iY29uc3RydWN0b3IgaGFzT3duUHJvcGVydHkgaXNQcm90b3R5cGVPZiBwcm9wZXJ0eUlzRW51bWVyYWJsZSB0b0xvY2FsZVN0cmluZyB0b1N0cmluZyB2YWx1ZU9mIi5zcGxpdCgiICIpLEV3PSJjbG9zdXJlX2xtXyIrKCgoKEtFLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyl7Zm9yKFM9OTk7UyE9MTk7KWlmKFM9PTgzKVM9Yz4tMT8zNTo4NDtlbHNlIGlmKFM9PTM1KVg9cFtjXSxTPTM0O2Vsc2UgaWYoUz09NzEpUz1wPzQzOjkwO2Vsc2V7aWYoUz09NTkpcmV0dXJuIFg7Uz09MzQ/Uz1ZPzU5OjQ0OlM9PTQ0PyhYLnllPWZhbHNlLFM9NTkpOlM9PTg0PyhYPW5ldyBzOCghIWYsTCx0aGlzLnNyYyx1LHIpLFgueWU9WSxwLnB1c2goWCksUz01OSk6Uz09NDM/KGM9UFMoNTYsNTYsMCxmLEwscixwKSxTPTgzKTpTPT05OT8odT1JLnRvU3RyaW5nKCkscD10aGlzLkpbdV0sUz03MSk6Uz09OTAmJihwPXRoaXMuSlt1XT1bXSx0aGlzLmc1KyssUz00Myl9fSxLRSkucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgpe3tYPTI5O3doaWxlKFghPTQ1KWlmKFg9PTM4KVooMjYsdHJ1ZSxyW3VdKSxBcnJheS5wcm90b3R5cGUuc3BsaWNlLmNhbGwocix1LDEpLFg9NTY7ZWxzZXtpZihYPT05NilyZXR1cm4gZmFsc2U7aWYoWD09NzcpWD1wIGluIHRoaXMuSj82Nzo4ODtlbHNlIGlmKFg9PTg5KVg9dT4tMT8zODo5NjtlbHNlIGlmKFg9PTU2KVg9ci5sZW5ndGg9PTA/NTA6NjU7ZWxzZXtpZihYPT04OClyZXR1cm4gZmFsc2U7aWYoWD09Njcpcj10aGlzLkpbcF0sdT1QUyg1Niw1OCwwLFksTCxmLHIpLFg9ODk7ZWxzZSBpZihYPT0yOSlwPUkudG9TdHJpbmcoKSxYPTc3O2Vsc2UgaWYoWD09NTApZGVsZXRlIHRoaXMuSltwXSx0aGlzLmc1LS0sWD02NTtlbHNlIGlmKFg9PTY1KXJldHVybiB0cnVlfX19fSxLRS5wcm90b3R5cGUpLmxkPShLRS5wcm90b3R5cGUuaGFzTGlzdGVuZXI9ZnVuY3Rpb24oSSxMLFksZixyKXtyZXR1cm4gYWEoOSwoZj0ocj1JIT09KFk9TCE9PXZvaWQgMCx2b2lkIDApKT9JLnRvU3RyaW5nKCk6IiIsZmFsc2UpLHRydWUsdGhpcy5KLGZ1bmN0aW9uKHAsdSxYKXtmb3IoWD01MTtYIT03OTspaWYoWD09NjgpWD1yJiZwW3VdLnR5cGUhPWZ8fFkmJnBbdV0uY2FwdHVyZSE9TD81OToxO2Vsc2UgaWYoWD09OTUpWD11PHAubGVuZ3RoPzY4OjQ5O2Vsc2UgaWYoWD09NTkpKyt1LFg9OTU7ZWxzZSBpZihYPT04NylYPTk1O2Vsc2V7aWYoWD09MSlyZXR1cm4gdHJ1ZTtpZihYPT00OSlyZXR1cm4gZmFsc2U7WD09NTEmJih1PTAsWD04Nyl9fSl9LGZ1bmN0aW9uKEksTCxZLGYscixwKXtyZXR1cm4ocj0ocD0tMSx0aGlzLkopW0wudG9TdHJpbmcoKV0scikmJihwPVBTKDU2LDU3LDAsSSxmLFkscikpLHA+LTE/cltwXTpudWxsfSksTWF0aCkucmFuZG9tKCkqMUU2fDApLEkxPXt9LGhDPTAsckM9Il9fY2xvc3VyZV9ldmVudHNfZm5fIisoTWF0aC5yYW5kb20oKSoxRTk+Pj4wKTt6PSgoUjEoRnQsMiw3LEpDKSxGdC5wcm90b3R5cGUpW2JCXT10cnVlLEZ0LnByb3RvdHlwZSk7d2hpbGUodHJ1ZSlpZih0cnVlIT0hKHoucWg9ZnVuY3Rpb24oSSl7dGhpcy5hOT1JfSxbXSkpYnJlYWs7KHouYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihJLEwsWSxmKXt4SygzLDMsbnVsbCx0cnVlLHRoaXMsSSxmLFksTCl9LHopLnJlbW92ZUV2ZW50TGlzdGVuZXI9KHouZGlzcGF0Y2hFdmVudD1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRil7e0Y9OTU7d2hpbGUoRiE9OTMpaWYoRj09MTApRj0hcC5GbSYmeTxTLmxlbmd0aD81MDo4NDtlbHNlIGlmKEY9PTQyKUY9NDc7ZWxzZSBpZihGPT02KUY9NzA7ZWxzZSBpZihGPT04OSlYPXAscD1uZXcgYm8ocixZKSxVOChwLFgpLEY9ODg7ZWxzZSBpZihGPT05NClGPVM/NjA6ODQ7ZWxzZSBpZihGPT01MCl1PXAuY3VycmVudFRhcmdldD1TW3ldLGY9SygzMyxyLHAsdHJ1ZSx1LGZhbHNlKSYmZixGPTIzO2Vsc2UgaWYoRj09ODcpRj1wIGluc3RhbmNlb2YgYm8/NzY6ODk7ZWxzZSBpZihGPT0zNyljPWMuYTksRj03MDtlbHNlIGlmKEY9PTM4KUwucHVzaChjKSxGPTM3O2Vsc2UgaWYoRj09NjApeT0wLEY9MzQ7ZWxzZSBpZihGPT03NilwLnRhcmdldD1wLnRhcmdldHx8WSxGPTg4O2Vsc2UgaWYoRj09ODgpZj10cnVlLEY9NTY7ZWxzZSBpZihGPT0yMClMPVtdLEY9NjtlbHNlIGlmKEY9PTQ3KUY9IXAuRm0mJnk+PTA/NDoxODtlbHNlIGlmKEY9PTgzKXA9bmV3IGJvKHAsWSksRj04ODtlbHNlIGlmKEY9PTM5KUY9dHlwZW9mIHA9PT0ic3RyaW5nIj84Mzo4NztlbHNle2lmKEY9PTg0KXJldHVybiBmO0Y9PTIzPyh5KyssRj0xMCk6Rj09MzQ/Rj0xMDpGPT01ND8odT1wLmN1cnJlbnRUYXJnZXQ9WSxmPUsoNixyLHAsdHJ1ZSx1LHRydWUpJiZmLHAuRm18fChmPUsoNSxyLHAsdHJ1ZSx1LGZhbHNlKSYmZiksRj05NCk6Rj09NTY/Rj1TPzM6MTg6Rj09Mz8oeT1TLmxlbmd0aC0xLEY9NDIpOkY9PTQ/KHU9cC5jdXJyZW50VGFyZ2V0PVNbeV0sZj1LKDcscixwLHRydWUsdSx0cnVlKSYmZixGPTE1KTpGPT0xOD9GPXAuRm0/OTQ6NTQ6Rj09Nzg/KFM9TCxwPUkscj1wLnR5cGV8fHAsWT10aGlzLkJpLEY9MzkpOkY9PTE1Pyh5LS0sRj00Nyk6Rj09OTU/KGM9dGhpcy5hOSxGPTQzKTpGPT00Mz9GPWM/MjA6Nzg6Rj09NzAmJihGPWM/Mzg6NzgpfX19LGZ1bmN0aW9uKEksTCxZLGYpe0ZmKDAsTCxJLHRoaXMsMyxudWxsLGYsWSl9KTt3aGlsZShOdW1iZXIodW5kZWZpbmVkKSE9PU5hTilpZighKHoubGQ9ZnVuY3Rpb24oSSxMLFksZil7cmV0dXJuIHRoaXMuZy5sZChJLFN0cmluZyhMKSxZLGYpfSwiIik9PSFmYWxzZSlicmVhazt6Lmhhc0xpc3RlbmVyPSh6Lkg9ZnVuY3Rpb24oKXt0aGlzLmE5PShGdC5GLkguY2FsbCh0aGlzKSx0aGlzLmcmJmdQKDAsMTIsdHJ1ZSx0aGlzLmcpLG51bGwpfSxmdW5jdGlvbihJLEwpe3JldHVybiB0aGlzLmcuaGFzTGlzdGVuZXIoSSE9PXZvaWQgMD9TdHJpbmcoSSk6dm9pZCAwLEwpfSk7dmFyIExPLHRDLE5CPXtYSzowLGNpOjEsc2Y6KFo0LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkhpKyIifSwyKSwwOiJGT1JNQVRURURfSFRNTF9DT05URU5UIiwxOiJFTUJFRERFRF9JTlRFUk5BTF9DT05URU5UIiwyOiJFTUJFRERFRF9UUlVTVEVEX0VYVEVSTkFMX0NPTlRFTlQifSxhXz1FcnJvcjtpZigoRHEucHJvdG90eXBlPVhqKGFfLnByb3RvdHlwZSksRHEpLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1EcSxSXylSXyhEcSxhXyk7ZWxzZSBmb3IodmFyIHdhIGluIGFfKWlmKHdhIT0icHJvdG90eXBlIilpZihPYmplY3QuZGVmaW5lUHJvcGVydGllcyl7dmFyIE5fPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYV8sd2EpO05fJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoRHEsd2EsTl8pfWVsc2UgRHFbd2FdPWFfW3dhXTsoKChSMShMRSwyLDYsKChpQig1NSwoKCh6PShEcS5GPWFfLnByb3RvdHlwZSwiQVJUSUNMRSBTRUNUSU9OIE5BViBBU0lERSBIMSBIMiBIMyBINCBINSBINiBIRUFERVIgRk9PVEVSIEFERFJFU1MgUCBIUiBQUkUgQkxPQ0tRVU9URSBPTCBVTCBMSCBMSSBETCBEVCBERCBGSUdVUkUgRklHQ0FQVElPTiBNQUlOIERJViBFTSBTVFJPTkcgU01BTEwgUyBDSVRFIFEgREZOIEFCQlIgUlVCWSBSQiBSVCBSVEMgUlAgREFUQSBUSU1FIENPREUgVkFSIFNBTVAgS0JEIFNVQiBTVVAgSSBCIFUgTUFSSyBCREkgQkRPIFNQQU4gQlIgV0JSIE5PQlIgSU5TIERFTCBQSUNUVVJFIFBBUkFNIFRSQUNLIE1BUCBUQUJMRSBDQVBUSU9OIENPTEdST1VQIENPTCBUQk9EWSBUSEVBRCBURk9PVCBUUiBURCBUSCBTRUxFQ1QgREFUQUxJU1QgT1BUR1JPVVAgT1BUSU9OIE9VVFBVVCBQUk9HUkVTUyBNRVRFUiBGSUVMRFNFVCBMRUdFTkQgREVUQUlMUyBTVU1NQVJZIE1FTlUgRElBTE9HIFNMT1QgQ0FOVkFTIEZPTlQgQ0VOVEVSIEFDUk9OWU0gQkFTRUZPTlQgQklHIERJUiBIR1JPVVAgU1RSSUtFIFRUIi5zcGxpdCgiICIpLmNvbmNhdChbIkJVVFRPTiIsIklOUFVUIl0pLFNTKS5wcm90b3R5cGUsei52PWZ1bmN0aW9uKEksTCl7cmV0dXJuIHR5cGVvZiBJPT09KEw9dGhpcy5Bciwic3RyaW5nIik/TC5nZXRFbGVtZW50QnlJZChJKTpJfSx6KS5nZXRFbGVtZW50c0J5VGFnTmFtZT1mdW5jdGlvbihJLEwpe3JldHVybihMfHx0aGlzLkFyKS5nZXRFbGVtZW50c0J5VGFnTmFtZShTdHJpbmcoSSkpfSx6LmNyZWF0ZUVsZW1lbnQ9ZnVuY3Rpb24oSSxMLFkpe3JldHVybigoTD0oWT1TdHJpbmcoSSksdGhpcy5BciksTCkuY29udGVudFR5cGU9PT0iYXBwbGljYXRpb24veGh0bWwreG1sIiYmKFk9WS50b0xvd2VyQ2FzZSgpKSxMKS5jcmVhdGVFbGVtZW50KFkpfSx6KS5jcmVhdGVUZXh0Tm9kZT1mdW5jdGlvbihJKXtyZXR1cm4gdGhpcy5Bci5jcmVhdGVUZXh0Tm9kZShTdHJpbmcoSSkpfSx6LmFwcGVuZENoaWxkPWZ1bmN0aW9uKEksTCl7aWYodHJ1ZSlJLmFwcGVuZENoaWxkKEwpfSx6LmFwcGVuZD1mdW5jdGlvbihJLEwpe2dQKG51bGwsNzcsMCwibnVtYmVyIiwiYXJyYXkiLGFyZ3VtZW50cyxJLEkubm9kZVR5cGU9PTk/STpJLm93bmVyRG9jdW1lbnR8fEkuZG9jdW1lbnQpfSx6LmNhbkhhdmVDaGlsZHJlbj1mdW5jdGlvbihJLEwpe2ZvcihMPTYwO0whPTcwOylpZihMPT02MClMPUkubm9kZVR5cGUhPTE/Mzc6OTE7ZWxzZXtpZihMPT05MSl7c3dpdGNoKEkudGFnTmFtZSl7Y2FzZSAiQVBQTEVUIjpjYXNlICJBUkVBIjpjYXNlICJCQVNFIjpjYXNlICJCUiI6Y2FzZSAiQ09MIjpjYXNlICJDT01NQU5EIjpjYXNlICJFTUJFRCI6Y2FzZSAiRlJBTUUiOmNhc2UgIkhSIjpjYXNlICJJTUciOmNhc2UgIklOUFVUIjpjYXNlICJJRlJBTUUiOmNhc2UgIklTSU5ERVgiOmNhc2UgIktFWUdFTiI6Y2FzZSAiTElOSyI6Y2FzZSAiTk9GUkFNRVMiOmNhc2UgIk5PU0NSSVBUIjpjYXNlICJNRVRBIjpjYXNlICJPQkpFQ1QiOmNhc2UgIlBBUkFNIjpjYXNlICJTQ1JJUFQiOmNhc2UgIlNPVVJDRSI6Y2FzZSAiU1RZTEUiOmNhc2UgIlRSQUNLIjpjYXNlICJXQlIiOnJldHVybiBmYWxzZX1yZXR1cm4gdHJ1ZX1pZihMPT0zNylyZXR1cm4gZmFsc2V9fSx6LnJlbW92ZU5vZGU9U2Esei5jb250YWlucz1mdW5jdGlvbihJLEwsWSxmKXt7Zj03ODt3aGlsZShmIT0zKWlmKGY9PTkyKWY9dHlwZW9mIEkuY29tcGFyZURvY3VtZW50UG9zaXRpb24hPSJ1bmRlZmluZWQiPzg1OjcwO2Vsc2V7aWYoZj09NjgpcmV0dXJuIEk9PUx8fEkuY29udGFpbnMoTCk7aWYoZj09ODUpcmV0dXJuIEk9PUx8fCEhKFk9SS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihMKSwoWXwxNiktIC0xKyh+WV4xNikpO2lmKGY9PTY0KUw9TC5wYXJlbnROb2RlLGY9NjE7ZWxzZSBpZihmPT01KWY9SS5jb250YWlucyYmTC5ub2RlVHlwZT09MT82ODo5MjtlbHNle2lmKGY9PTUyKXJldHVybiBmYWxzZTtpZihmPT05NylmPUwmJkkhPUw/NjQ6NztlbHNlIGlmKGY9PTYxKWY9OTc7ZWxzZSBpZihmPT03MClmPTk3O2Vsc2UgaWYoZj09NzgpZj1JJiZMPzU6NTI7ZWxzZSBpZihmPT03KXJldHVybiBMPT1JfX19fSxwSCkpLHBILnByb3RvdHlwZS5sUj0wLHBIKS5wcm90b3R5cGUuRWY9IiIsRnQpKSx6PUxFLnByb3RvdHlwZSx6LnJvPXBILmVvKCkseikudj1mdW5jdGlvbigpe3JldHVybiB0aGlzLkx9LHouZ2V0UGFyZW50PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuVDF9LHoucWg9ZnVuY3Rpb24oSSxMKXtmb3IoTD00MDtMIT04Oyl7aWYoTD09MjIpdGhyb3cgRXJyb3IoIk1ldGhvZCBub3Qgc3VwcG9ydGVkIik7TD09NDA/TD10aGlzLlQxJiZ0aGlzLlQxIT1JPzIyOjQ6TD09NCYmKExFLkYucWguY2FsbCh0aGlzLEkpLEw9OCl9fSx6KS5VQT1mdW5jdGlvbigpe3RoaXMuTHo9IShXayg3MSwxMix0aGlzLGZ1bmN0aW9uKEkpe0kuTHomJkkuVUEoKX0pLHRoaXMuSnImJmdQKDAsMTQsdHJ1ZSx0aGlzLkpyKSwxKX0seikuSD1mdW5jdGlvbihJKXt7ST0xMjt3aGlsZShJIT03NylJPT01PyhXayg3MSwxMCx0aGlzLGZ1bmN0aW9uKEwpe0wuZGlzcG9zZSgpfSksIXRoaXMud28mJnRoaXMuTCYmU2EodGhpcy5MKSx0aGlzLlQxPXRoaXMuTWg9dGhpcy5MPXRoaXMuSHE9bnVsbCxMRS5GLkguY2FsbCh0aGlzKSxJPTc3KTpJPT0xMj8odGhpcy5MeiYmdGhpcy5VQSgpLEk9MzMpOkk9PTMzP0k9dGhpcy5Kcj83Mzo1Okk9PTczJiYodGhpcy5Kci5kaXNwb3NlKCksZGVsZXRlIHRoaXMuSnIsST01KX19LHoucmVtb3ZlQ2hpbGQ9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYpe3tGPTEzO3doaWxlKEYhPTMzKWlmKEY9PTY1KUY9TD85OjU7ZWxzZSBpZihGPT0yMylGPUk/NDY6ODQ7ZWxzZSBpZihGPT0xMClGPXkmJkk/ODY6MjM7ZWxzZSBpZihGPT00MSlZLlQxPW51bGwsTEUuRi5xaC5jYWxsKFksbnVsbCksRj0yMztlbHNlIGlmKEY9PTgyKUY9dHlwZW9mIEk9PT0ic3RyaW5nIj80NDo2NDtlbHNlIGlmKEY9PTI5KXI9ZixGPTY5O2Vsc2UgaWYoRj09NTkpdT10aGlzLk1oLFM9KHUhPT1udWxsJiZ5IGluIHU/dVt5XTp2b2lkIDApfHxudWxsLEY9MTU7ZWxzZXtpZihGPT04NCl0aHJvdyBFcnJvcigiQ2hpbGQgaXMgbm90IGluIHBhcmVudCBjb21wb25lbnQiKTtpZihGPT00MClGPXRoaXMuTWgmJnk/NTk6NDI7ZWxzZSBpZihGPT02NClGPShmPUkudVIpPzI5OjU2O2Vsc2UgaWYoRj09OSlJLlVBKCksSS5MJiZTYShJLkwpLEY9NTtlbHNle2lmKEY9PTYxKXRocm93IEVycm9yKCJVbmFibGUgdG8gc2V0IHBhcmVudCBjb21wb25lbnQiKTtpZihGPT03MylGPVk9PW51bGw/NjE6NDE7ZWxzZSBpZihGPT00MilTPW51bGwsRj0xNTtlbHNlIGlmKEY9PTg2KWM9dGhpcy5NaCx5IGluIGMmJmRlbGV0ZSBjW3ldLFooNywwLEksdGhpcy5IcSksRj02NTtlbHNlIGlmKEY9PTE1KUk9UyxGPTEwO2Vsc2UgaWYoRj09NSlZPUksRj03MztlbHNle2lmKEY9PTQ2KXJldHVybiBJO0Y9PTY5Pyh5PXIsRj00MCk6Rj09NDQ/KHI9SSxGPTY5KTpGPT0xMz9GPUk/ODI6MjM6Rj09NTYmJihwPUkucm8sWD1wLkVmKyI6IisocC5sUisrKS50b1N0cmluZygzNiksZj1JLnVSPVgsRj0yOSl9fX19fTt2YXIgdnYsaHA9e2J1dHRvbjoicHJlc3NlZCIsY2hlY2tib3g6ImNoZWNrZWQiLG1lbnVpdGVtOiJzZWxlY3RlZCIsbWVudWl0ZW1jaGVja2JveDooej0oaUIoNTgsaEspLGhLKS5wcm90b3R5cGUsImNoZWNrZWQiKSxtZW51aXRlbXJhZGlvOiJjaGVja2VkIixyYWRpbzoiY2hlY2tlZCIsdGFiOiJzZWxlY3RlZCIsdHJlZWl0ZW06InNlbGVjdGVkIn0sSWE9KGlCKDU3LChSMShkQywyLCgoei5QcT0oei5UeD1mdW5jdGlvbigpe3JldHVybiJnb29nLWNvbnRyb2wifSxmdW5jdGlvbihJKXtyZXR1cm4gSS52KCl9KSx6LlI5PWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjKXtjPTEwO3tYPTgzO3doaWxlKHRydWUpdHJ5e2lmKGM9PTMzKWJyZWFrO2Vsc2UgYz09Nzc/KFg9MyxyLmJsdXIoKSxjPTgyKTpjPT00Mj9jPVkhPUw/Mzg6MzM6Yz09Njk/KHAudGFiSW5kZXg9LTEscC5yZW1vdmVBdHRyaWJ1dGUoInRhYkluZGV4IiksYz0zMyk6Yz09Mzg/KHA9cixjPTg2KTpjPT04Nj9jPUw/NjQ6Njk6Yz09NzI/KGY9ci50YWJJbmRleCxZPXR5cGVvZiBmPT09Im51bWJlciImJmY+PTAmJmY8MzI3NjgsYz00Mik6Yz09ODI/KFg9ODMsYz0yOSk6Yz09NzE/KFg9ODMsYz04Mik6Yz09NjQ/KHAudGFiSW5kZXg9MCxjPTMzKTpjPT01Mj9jPSFMJiZaKDMxLDAsMzIsSSk/Nzc6NjA6Yz09MTY/KGUoMCwyNSwyLEksNCkmJkkuc2V0QWN0aXZlKGZhbHNlKSxlKDAsMjMsMixJLDMyKSYmaUIoMTcsOCwzMixJLGZhbHNlKSYmSS5oKDMyLGZhbHNlKSxjPTYwKTpjPT0yOT9jPVooMzAsMCwzMixJKT8xNjo2MDpjPT0xMD9jPUFDKDM5LDYsMiwzMixJKSYmKHI9SS5QcSgpKT81MjozMzpjPT02MCYmKGM9KFk9ci5oYXNBdHRyaWJ1dGUoInRhYmluZGV4IikpPzcyOjQyKX1jYXRjaChTKXtpZihYPT04Myl0aHJvdyBTO1g9PTMmJih1PVMsYz03MSl9fX0sei5qbz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgpe3doaWxlKDA9PSFbXSlpZih2dnx8KHZ2PXsxOiJkaXNhYmxlZCIsODoic2VsZWN0ZWQiLDE2OiJjaGVja2VkIiw2NDoiZXhwYW5kZWQifSksW10pYnJlYWs7KHA9KFg9dnZbTF0sKHI9SS5nZXRBdHRyaWJ1dGUoInJvbGUiKXx8bnVsbCk/KHU9aHBbcl18fFgsZj1YPT0iY2hlY2tlZCJ8fFg9PSJzZWxlY3RlZCI/dTpYKTpmPVgsZikpJiZmTygiYWQiLDE2LCJoaWRkZW4iLGZhbHNlLHAsSSxZKX0seikuZno9ZnVuY3Rpb24oSSxMLFksZil7KGY9TC52P0wudigpOkwpJiYoWT9jdjpLTykoZixbSV0pfSx6Lmg9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSl7Zm9yKHU9ODI7dSE9NDspdT09MjA/KChwPXRoaXMuUzVbTF0pJiZ0aGlzLmZ6KHAsSSxZKSx0aGlzLmpvKGYsTCxZKSx1PTQpOnU9PTk4PyhyPXRoaXMuVHgoKSxyLnJlcGxhY2UoL1xceGEwfFxccy9nLCIgIiksdGhpcy5TNT17MTpyKyItZGlzYWJsZWQiLDI6cisiLWhvdmVyIiw0OnIrIi1hY3RpdmUiLDg6cisiLXNlbGVjdGVkIiwxNjpyKyItY2hlY2tlZCIsMzI6cisiLWZvY3VzZWQiLDY0OnIrIi1vcGVuIn0sdT0yMCk6dT09ODg/dT1mPzY1OjQ6dT09ODI/KGY9SS52KCksdT04OCk6dT09NjUmJih1PXRoaXMuUzU/MjA6OTgpfSwzNyksaEspLGRDKSkse30pO1IxKHVvLDIsKChkQy5wcm90b3R5cGUuVHg9ZnVuY3Rpb24oKXtyZXR1cm4iZ29vZy1idXR0b24ifSxkQy5wcm90b3R5cGUpLmpvPWZ1bmN0aW9uKEksTCxZKXtzd2l0Y2goTCl7Y2FzZSA4OmNhc2UgMTY6Zk8oImFkIiwxMCwiaGlkZGVuIixmYWxzZSwicHJlc3NlZCIsSSxZKTticmVhaztkZWZhdWx0OmNhc2UgNjQ6Y2FzZSAxOmRDLkYuam8uY2FsbCh0aGlzLEksTCxZKX19LDM4KSxMRSk7d2hpbGUoImciKWlmKCFbIiJdPT0oej11by5wcm90b3R5cGUsMCkpYnJlYWs7aWYodHlwZW9mIHVvIT09KHouaXNWaXNpYmxlPSgoKHouS2k9dHJ1ZSx6KS5QcT0oei5mej1mdW5jdGlvbihJLEwsWSl7e1k9NDt3aGlsZShZIT01MSlZPT02MT9ZPUwmJnRoaXMuRCYmWigxMSwwLEwsdGhpcy5EKT8zNjo1MTpZPT03Mz8odGhpcy5EP1MwKHRoaXMuRCwwLDI3LEwpPj0wfHx0aGlzLkQucHVzaChMKTp0aGlzLkQ9W0xdLHRoaXMuRy5meihMLHRoaXMsdHJ1ZSksWT01MSk6WT09OTA/KHRoaXMuRD1udWxsLFk9MTMpOlk9PTQ/WT1JPzg6NjE6WT09MTM/KHRoaXMuRy5meihMLHRoaXMsZmFsc2UpLFk9NTEpOlk9PTM2P1k9dGhpcy5ELmxlbmd0aD09MD85MDoxMzpZPT04JiYoWT1MPzczOjUxKX19LHouZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5XcX0sei5MaT0wLHouaXNFbmFibGVkPWZ1bmN0aW9uKCl7cmV0dXJuIVooMzUsMCwxLHRoaXMpfSx6LmlzQWN0aXZlPWZ1bmN0aW9uKCl7cmV0dXJuIFooMzIsMCw0LHRoaXMpfSx6Lkg9ZnVuY3Rpb24oSSl7e0k9Nzg7d2hpbGUoSSE9NjkpST09Nzg/KHVvLkYuSC5jYWxsKHRoaXMpLEk9MjYpOkk9PTM4PyhkZWxldGUgdGhpcy5HLHRoaXMuRD1udWxsLEk9NjkpOkk9PTkyPyh0aGlzLlFlLmRpc3Bvc2UoKSxkZWxldGUgdGhpcy5RZSxJPTM4KTpJPT0yNiYmKEk9dGhpcy5RZT85MjozOCl9fSx6LlJsPSh6Lmo1PTI1NSwzOSksKHouRD1udWxsLHouaD1mdW5jdGlvbihJLEwsWSxmLHIscCl7Zm9yKHA9NTQ7cCE9NDA7KXA9PTkwP3A9QUMoMzksNywyLEksdGhpcykmJkwhPVooMzQsMCxJLHRoaXMpPzY5OjQwOnA9PTY5Pyh0aGlzLkcuaCh0aGlzLEksTCksdGhpcy5XcT1MP3RoaXMuV3F8STp0aGlzLldxJn5JLHA9NDApOnA9PTc2P3A9ZiYmdHlwZW9mIGYuaXNFbmFibGVkPT0iZnVuY3Rpb24iJiYhZi5pc0VuYWJsZWQoKXx8IWlCKDE1LDgsMSx0aGlzLCFyKT80MDoyNjpwPT0yOT8ocj0hTCxmPXRoaXMuZ2V0UGFyZW50KCkscD03Nik6cD09OTI/KHRoaXMuc2V0QWN0aXZlKGZhbHNlKSxpQigxNiw4LDIsdGhpcyxmYWxzZSkmJnRoaXMuaCgyLGZhbHNlKSxwPTYpOnA9PTY/KHRoaXMuaXNWaXNpYmxlKCkmJnRoaXMuRy5SOSh0aGlzLHIpLHRoaXMuaCgxLCFyLHRydWUpLHA9NDApOnA9PTI2P3A9cj82OjkyOnA9PTU0JiYocD1ZfHxJIT0xPzkwOjI5KX0seikuV3E9KHouc2V0QWN0aXZlPWZ1bmN0aW9uKEkpe2lCKDE4LDgsNCx0aGlzLEkpJiZ0aGlzLmgoNCxJKX0sMCksZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5HLlBxKHRoaXMpfSkseikuVUE9ZnVuY3Rpb24oKXt1by5GLlVBLmNhbGwodGhpcyk7d2hpbGUoe30paWYodGhpcy5RZSYmdGhpcy5RZS5kZXRhY2goKSx0cnVlKWJyZWFrO3RoaXMuaXNWaXNpYmxlKCkmJnRoaXMuaXNFbmFibGVkKCkmJnRoaXMuRy5SOSh0aGlzLGZhbHNlKX0sZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LaX0pLCJmdW5jdGlvbiIpKXRocm93IEVycm9yKCJJbnZhbGlkIGNvbXBvbmVudCBjbGFzcyAiK3VvKTt3aGlsZSh0eXBlb2YgaEshPT0iZnVuY3Rpb24iKXt0aHJvdyBFcnJvcigiSW52YWxpZCByZW5kZXJlciBjbGFzcyAiK2hLKTtpZihbXSlicmVha312YXIgRVE9aUIoNSx1byksQ0U9KFBTKCgoUjEobG8sKCgoaUIoNTYsKFIxKFh0LDIsKFBTKDU2LDYsImdvb2ctY29udHJvbCIsKElhW0VRXT1oSyxmdW5jdGlvbigpe3JldHVybiBuZXcgdW8obnVsbCl9KSksNSksZEMpLFh0KSksWHQpLnByb3RvdHlwZS5oPWZ1bmN0aW9uKEksTCxZLGYscil7Zm9yKHI9MztyIT0zMzspcj09Mz8oWHQuRi5oLmNhbGwodGhpcyxJLEwsWSksZj1JLnYoKSxyPTUpOnI9PTk/KGYuZGlzYWJsZWQ9WSxyPTMzKTpyPT01JiYocj1mJiZMPT0xPzk6MzMpfSxYdCkucHJvdG90eXBlLmpvPWZ1bmN0aW9uKCl7fSxYdC5wcm90b3R5cGUuUjk9ZnVuY3Rpb24oKXt9LDIpLDM5LHVvKSxsby5wcm90b3R5cGUpLkg9ZnVuY3Rpb24oKXtkZWxldGUgKGxvLkYuSC5jYWxsKHRoaXMpLHRoaXMpLkhLLGRlbGV0ZSB0aGlzLk1pfSw1NiksNSwiZ29vZy1idXR0b24iLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBsbyhudWxsKX0pLFUpLnJlcXVlc3RJZGxlQ2FsbGJhY2s/ZnVuY3Rpb24oSSl7cmVxdWVzdElkbGVDYWxsYmFjayhmdW5jdGlvbigpe0koKX0se3RpbWVvdXQ6NH0pfTpVLnNldEltbWVkaWF0ZT9mdW5jdGlvbihJKXtzZXRJbW1lZGlhdGUoSSl9OmZ1bmN0aW9uKEkpe3NldFRpbWVvdXQoSSwwKX0sYTEsSFM9e3Bhc3NpdmU6dHJ1ZSxjYXB0dXJlOnRydWV9LG5FPWdQKFsiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9qcy9iZy8iLCIiXSwzKSxBcD1TdHJpbmcuZnJvbUNoYXJDb2RlKDEwNSwxMTAsMTE2LDEwMSwxMDMsNjcsMTA0LDEwMSw5OSwxMDcsNjYsMTIxLDExMiw5NywxMTUsMTE1KSxvMT17fSxVdz1bXSxQaz1bXSwkOD1bXSxyYT1bXSxkUD0oZy5wcm90b3R5cGUuV0s9dm9pZCAwLChnLnByb3RvdHlwZS5aej0hKGcucHJvdG90eXBlLlhtPSJ0b1N0cmluZyIsMSksZy5wcm90b3R5cGUpLnVnPXZvaWQgMCxbXSkscUI9W10sTWY9W10saXg9W10sdUI9W10sTzg9ZnVuY3Rpb24oSSxMKXtyZXR1cm4oTD1mTygiYWQiLDksImVycm9yIikpJiZJLmV2YWwoTC5jcmVhdGVTY3JpcHQoIjEiKSk9PT0xP2Z1bmN0aW9uKFkpe3JldHVybiBMLmNyZWF0ZVNjcmlwdChZKX06ZnVuY3Rpb24oWSl7cmV0dXJuIiIrWX19KFUpLEpwPWZ1bmN0aW9uKEkpe3JldHVybihJPWZPKCJhZCIsMzMsImVycm9yIikpP2Z1bmN0aW9uKEwpe3JldHVybiBJLmNyZWF0ZVNjcmlwdFVSTChMKX06ZnVuY3Rpb24oTCl7cmV0dXJuIEx9fSgpLGVhPWZ1bmN0aW9uKEkpe3JldHVybihJPWZPKCJhZCIsMjUsImVycm9yIikpP2Z1bmN0aW9uKEwpe3JldHVybiBJLmNyZWF0ZUhUTUwoTCl9OmZ1bmN0aW9uKEwpe3JldHVybiBMfX0oKSxwRT0oKHo9KCgoKHk4LGZ1bmN0aW9uKCl7fSkoWTgpLGdDLEZqLHV4LGtWLGZ1bmN0aW9uKCl7fSkodmspLGphLEpwLGZ1bmN0aW9uKCl7fSkoZWEpLGcpLnByb3RvdHlwZSx6LlRYPWZ1bmN0aW9uKEksTCxZLGYscixwKXtyZXR1cm4gVi5jYWxsKHRoaXMsNyxJLEwsWSxmLHIscCl9LHoucGk9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYKXtyZXR1cm4gRmYuY2FsbCh0aGlzLEksZixZLHIsOCxMLHUscCxYKX0seikubUQ9MCxvMSkuY29uc3RydWN0b3IsVmM9KCh6LkcxPWZ1bmN0aW9uKCl7cmV0dXJuIFhmLmNhbGwodGhpcyx0cnVlLDE2KX0sZy5wcm90b3R5cGUuQj0oei51PSh3aW5kb3cucGVyZm9ybWFuY2V8fHt9KS5ub3c/ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5QaSt3aW5kb3cucGVyZm9ybWFuY2Uubm93KCl9OmZ1bmN0aW9uKCl7cmV0dXJuK25ldyBEYXRlfSx6Lm5pPWZ1bmN0aW9uKCl7cmV0dXJuIHdQLmNhbGwodGhpcywwLDEwKX0sImNyZWF0ZSIpLGcpLnByb3RvdHlwZS56eD0wLHouVlc9KHouSTk9ZnVuY3Rpb24oSSxMLFksZixyKXtpZih0cnVlKXJldHVybiBxLmNhbGwodGhpcyw1NixJLEwsWSxmLHIpfSxmdW5jdGlvbihJLEwsWSxmLHIpe3JldHVybiB3Qy5jYWxsKHRoaXMsMTQsSSxMLFksZixyKX0pLHZvaWQgMCksemM9KCgoKHo9Zy5wcm90b3R5cGUsei5qPWZ1bmN0aW9uKEksTCl7cmV0dXJuIFZjPWZ1bmN0aW9uKCl7cmV0dXJuIEw9PUk/LTM1Oi0xN30sST17fSxMPXt9LGZ1bmN0aW9uKFksZixyLHAsdSxYLGMsUyx5LEYsRyxBLFEsRCxXLGIsYSx3LHYsRSxtLFlLLEdsLGNTLG4sc3csbEIsaCxXUyxILGZFLFAsRDQsZTAsdCxwTyxPLHFfLFIsbkgsSV8semwsQixMSCl7Qj0oUj0zMywzMSksTz11bmRlZmluZWQ7e25IPWZhbHNlO3doaWxlKHRydWUhPSFbXSl0cnl7aWYoUj09NDApYnJlYWs7ZWxzZSBpZihSPT00NylCPTIyLHRLKDI3Mix0aGlzLDMwMDAxLDUwOSksUj03MjtlbHNlIGlmKFI9PTEzKU8hPT11bmRlZmluZWQ/KFI9TyxPPXVuZGVmaW5lZCk6Uj00MDtlbHNlIGlmKFI9PTk5KVI9UD09dUI/NDI6OTA7ZWxzZSBpZihSPT00NSlSPVA9PWl4PzUxOjk5O2Vsc2UgaWYoUj09NTQpemw9SGsoNTA5LDI5NyxZWzFdLHRoaXMsMzAwMDEpLE89NjQsUj03MjtlbHNlIGlmKFI9PTI0KUI9MjIsUD1ZWzBdLFI9NDU7ZWxzZSBpZihSPT0yNilSPW4/MjozMTtlbHNlIGlmKFI9PTg3KUI9OSx2PWwodGhpcywzODEpfHx7fSxEPXYudHwwLFI9ODM7ZWxzZXtpZihSPT02NClyZXR1cm4gemw7aWYoUj09OTApUj1QPT0kOD83MDozODtlbHNlIGlmKFI9PTIyKVI9Yi5sZW5ndGg+MUU2PzQ5Ojg5O2Vsc2UgaWYoUj09MzkpUj1ZWzRdPzc3OjMyO2Vsc2UgaWYoUj09NilSPU8hPT11bmRlZmluZWQ/NzI6MjU7ZWxzZSBpZihSPT03NClRKyssUj0yODtlbHNlIGlmKFI9PTE1KUI9MTMsdT1sKHRoaXMsMzU3KSx1Lmxlbmd0aD4wJiZKSygyNjIsdGhpcyxkKDIsdS5sZW5ndGgpLmNvbmNhdCh1KSwxNDcpLEpLKDI2Mix0aGlzLGQoMSx0aGlzLmkrMT4+MSksMjQ0KSxtdSgyNjIsdGhpcyxkKDEsdGhpc1tQa10ubGVuZ3RoKSkscE89dGhpcy5rYT9rKHRoaXMsNDIxKTpsKHRoaXMsMzUwKSxwTy5sZW5ndGg+MCYmbXUoMTIsdGhpcyxkKDIscE8ubGVuZ3RoKS5jb25jYXQocE8pLDIyNykscD1sKHRoaXMsMTIpLHAubGVuZ3RoPjQmJkpLKDI2Mix0aGlzLGQoMixwLmxlbmd0aCkuY29uY2F0KHApLDIyNiksSD0wLEgtPShrKHRoaXMsMjYyKS5sZW5ndGh8MCkrNSxiPWsodGhpcywxOTUpLEgrPShlMD1sKHRoaXMsMzUzKSwoZTB8MjA0NyktIC0xKyh+ZTBeMjA0NykpLGIubGVuZ3RoPjQmJihILT0oYi5sZW5ndGh8MCkrMyksSD4wJiZtdSgyNjIsdGhpcyxkKDIsSCkuY29uY2F0KFk4KEgpKSwxNTApLFI9OTY7ZWxzZSBpZihSPT00MilEPTAsdj17fSxSPTg3O2Vsc2UgaWYoUj09MzApQj0yMixuTyhMSCwxNywzNTcsdGhpcyksTz00MCxSPTcyO2Vsc2UgaWYoUj09NzkpUj1QPT1xQj8zNjo3MjtlbHNlIGlmKFI9PTUxKXc9WVsxXSxSPTIzO2Vsc2UgaWYoUj09MzEpbj0iIixRPTAsUj04MjtlbHNle2lmKFI9PTg1fHxSPT01NSlyZXR1cm4gemw7aWYoUj09OTUpSGsoNTA5LDI5NyxZWzFdLHRoaXMsWVsyXSksUj03MjtlbHNlIGlmKFI9PTMzKWxCPUwsTD1JLFI9MjQ7ZWxzZSBpZihSPT04MylCPTIyLEdsPVskOCxZLHRoaXMuRzEoKV0sbT1bUGssWV0sUj0zOTtlbHNlIGlmKFI9PTIpbj0iJCIrbixSPTQ0O2Vsc2UgaWYoUj09NylSPVA9PVV3Pzk1OjI5O2Vsc2UgaWYoUj09NjcpZj1XW1FdW3RoaXMuWG1dKDE2KSxmLmxlbmd0aD09MSYmKGY9IjAiK2YpLG4rPWYsUj03NDtlbHNlIGlmKFI9PTcyKUI9MzEsTD1sQixSPTEzO2Vsc2UgaWYoUj09MTgpemw9e0R6OkdsLE1lOm0sdGltZW91dDpELGZpOmZhbHNlLGU1OjB9LE89NTUsUj03MjtlbHNlIGlmKFI9PTk2KVI9Yi5sZW5ndGg+ND8yMjo5ODtlbHNlIGlmKFI9PTM4KVI9UD09UGs/OTQ6NztlbHNlIGlmKFI9PTQ0KUE9bixsKHRoaXMsMjYyKS5sZW5ndGg9ci5zaGlmdCgpLGwodGhpcyw0ODgpLmxlbmd0aD1yLnNoaWZ0KCksQyh0aGlzLDE5NSkubGVuZ3RoPXIuc2hpZnQoKSxrKHRoaXMsMTIpLmxlbmd0aD1yLnNoaWZ0KCksbCh0aGlzLDIzNikubGVuZ3RoPXIuc2hpZnQoKSxrKHRoaXMsMzUwKS5sZW5ndGg9ci5zaGlmdCgpLGwodGhpcyw0NjQpWzBdPXIuc2hpZnQoKSxDKHRoaXMsNDIxKS5sZW5ndGg9ci5zaGlmdCgpLHpsPUEsTz04NSxSPTcyO2Vsc2UgaWYoUj09ODgpUj04NjtlbHNlIGlmKFI9PTI4KVI9UTxXLmxlbmd0aD82Nzo0NDtlbHNlIGlmKFI9PTIzKUI9MjQsdGhpcy50cj1BSyg3LDUsMCwyNTUsYXRvYih3KSksdGhpcy5QPXRoaXMudHIubGVuZ3RoPDwzLHgoNDgsdGhpcyxbMCwwLDBdKSxSPTQ3O2Vsc2UgaWYoUj09MjEpQj03MyxjUygpLFI9NTM7ZWxzZSBpZihSPT00OSliPWIuc2xpY2UoMCwxRTYpLEpLKDI2Mix0aGlzLFtdLDEwMiksSksoMjYyLHRoaXMsW10sMTM1KSxSPTg5O2Vsc2UgaWYoUj09MylFLmxlbmd0aD0wLFI9NzI7ZWxzZSBpZihSPT02NSl0aGlzLlQucHVzaChtKSx0aGlzLlQucHVzaChHbCksTz00MCxSPTcyO2Vsc2UgaWYoUj09ODkpbXUoMjYyLHRoaXMsZCgyLGIubGVuZ3RoKS5jb25jYXQoYiksNSksUj05ODtlbHNlIGlmKFI9PTU3KWNTPXkudmFsdWUsUj0yMTtlbHNlIGlmKFI9PTI1KUI9MjIsVz1ZOCgyKS5jb25jYXQobCh0aGlzLDI2MikpLFdbMV09KGE9V1swXSwxNTktKGEmMTU5KSt+KGEmMTU5KS1+YSksV1szXT0oZkU9V1sxXSxEND1zd1swXSwtKGZFfDApKyhENHwwKSsyKihmRSZ+RDQpKSxXWzRdPShHPVdbMV0sYz1zd1sxXSwoR3wwKS0oY3wwKSstMi0yKihHfH5jKSksbj10aGlzLmJSKFcpLFI9MjY7ZWxzZSBpZihSPT0zNil7aWYoRT1sKHRoaXMsMTYxKSxYPXR5cGVvZiBTeW1ib2whPSJ1bmRlZmluZWQiJiZTeW1ib2wuaXRlcmF0b3ImJkVbU3ltYm9sLml0ZXJhdG9yXSl0PVguY2FsbChFKTtlbHNlIGlmKHR5cGVvZiBFLmxlbmd0aD09Im51bWJlciIpdD17bmV4dDpBQygzOSwyNCwwLEUpfTtlbHNlIHRocm93IEVycm9yKFN0cmluZyhFKSsiIGlzIG5vdCBhbiBpdGVyYWJsZSBvciBBcnJheUxpa2UiKTtZSz10LHk9WUsubmV4dCgpLFI9ODh9ZWxzZSBpZihSPT05NClyPVlbMV1bMV0sc3c9ZCgyLChDKHRoaXMsMjYyKS5sZW5ndGh8MCkrMiksV1M9dGhpcy5VLHRoaXMuVT10aGlzLFI9MTU7ZWxzZSBpZihSPT02OClSPUY/MTg6NjU7ZWxzZSBpZihSPT05OClCPTIyLHRoaXMuVT1XUyxSPTY7ZWxzZSBpZihSPT04NilSPXkuZG9uZT8zOjU3O2Vsc2UgaWYoUj09ODIpUj0yODtlbHNlIGlmKFI9PTMyKXRoaXMuVC5wdXNoKG0pLHRoaXMuVC5wdXNoKEdsKSxPPTQwLFI9NzI7ZWxzZSBpZihSPT03Nyl7Zm9yKGggaW4gRj1mYWxzZSx2KWlmKGghPT0idCImJk9iamVjdC5oYXNPd24odixoKSl7Rj10cnVlO2JyZWFrfVI9Njh9ZWxzZSBpZihSPT0xMClCPTIyLFI9NTM7ZWxzZSBpZihSPT03MClTPVlbMV0sU1sxXS5wdXNoKGsodGhpcywyNjIpLmxlbmd0aCxsKHRoaXMsNDg4KS5sZW5ndGgsayh0aGlzLDE5NSkubGVuZ3RoLGwodGhpcywxMikubGVuZ3RoLEModGhpcywyMzYpLmxlbmd0aCxrKHRoaXMsMzUwKS5sZW5ndGgsayh0aGlzLDQ2NClbMF0sbCh0aGlzLDQyMSkubGVuZ3RoKSxNKDI5Nyx0aGlzLFNbMl0pLHRoaXMuU1s0MTRdJiZIayg1MDksMjk3LGwodGhpcyw0MTQpLHRoaXMsMzAwMDEpLFI9NzI7ZWxzZSBpZihSPT0yOSlSPVA9PU1mPzU0Ojc5O2Vsc2UgaWYoUj09NTMpeT1ZSy5uZXh0KCksUj04NjtlbHNlIGlmKFI9PTU4KXRocm93IElfO319fWNhdGNoKGpTKXtpZihCPT0oSV89alMsMzEpKXRocm93IGpTO0I9PTk/KE89NTgsUj04Myk6Qj09NzM/KHFfPWpTLFI9MTApOkI9PTI0PyhMSD1qUyxSPTMwKTpCPT0xMz8oTz01OCxSPTk4KTpCPT0yMiYmKE89NTgsUj03Mil9fX19KCkseikua0k9ZnVuY3Rpb24oSSl7cmV0dXJuIGlCLmNhbGwodGhpcywzNixJKX0sei5iUj1mdW5jdGlvbihJKXtyZXR1cm4gWi5jYWxsKHRoaXMsMjAsSSl9LHouQ2k9ZnVuY3Rpb24oKXtyZXR1cm4gd1AuY2FsbCh0aGlzLDAsMjkpfSx6KS5vbD0wLHopLk9pPTAsLy4vKTt6LnoxPWZ1bmN0aW9uKCl7cmV0dXJuIHljLmNhbGwodGhpcyw5OSwzOCl9O3ZhciB4VixLSD0oZy5wcm90b3R5cGVbcmFdPVswLDAsMSwxLDAsMSwxXSxpeCkucG9wLmJpbmQoZy5wcm90b3R5cGVbJDhdKTsoYTE9KHhWPXdQKDAsKHpjW2cucHJvdG90eXBlLlhtXT1LSCw1OSksZy5wcm90b3R5cGUuQix7Z2V0OktIfSksZy5wcm90b3R5cGUuaVI9dm9pZCAwLFUudHJheXJpZGV8fChVLnRyYXlyaWRlPXt9KSksYTEpLm0+NDB8fChhMS5tPTQxLGExLmFkPUd5LGExLmE9UVMpLGExLmxydl89ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyl7cmV0dXJuW2Z1bmN0aW9uKHkpe3JldHVybiBnUChmYWxzZSw0OCxTLHkpfSwoUz1uZXcgZyhJLFgsdSxwLGMscixmLEwpLGZ1bmN0aW9uKHkpe1MuejEoeSl9KV19O30pLmNhbGwodGhpcyk7J10uam9pbignXG4nKSkpO30pLmNhbGwodGhpcyk7"}},"time_used":11,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":9,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/youtubei/v1/log_event?alt=json","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://www.youtube.com/embed/4ekOcDG2D8E","date":"2026-07-27T13:20:36.479Z","timestamp":1785158436479,"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: 1785158436451\r\nContent-Type: application/json\r\nX-Goog-Visitor-Id: CgtveHRRTUhwUHlObyigtp3TBjIoCgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgEmLfAgrcAjIwLllUPWdINVVla1c3ZDF5SlhIZHlBV1A5RDNudXVmbHRJUDVVM0wtT0pQSVRkZlZvNFFGZFVwR0lsTzFNcmt2UW82azZrbDBqcV9wT1pBbTBZNlN0QkdQWktyV0NYLUllOFQxenhVSlc2YWJtWXVWVTUzSWwxVkVxNHZVczV2dkxmYmdaR0h6MWVBTGt4bmdpWDhiVXNkUk1yMnZhS0xUWkowSUJocTF5LTJFTThOOTBpSjBjeVd6R25oVUd6Tnh1WnpIdzlIWEZ1SXdLSXRsWktSM0pJMEFXYnktZU1CLWFlZEd4RlVWbnFzZUdmQTFIbHFibnFDNUV5bXNWejU5WDRsSE13aDQ0T1lKUmphaVhFRWhFZXRhdDJxc0hMaDh2MjNXOXpIbUtPRUUyWmhUM0NBc1hVQ1owTGRIcHZvaE02QlpxNkcwMzBmanlLOU41bU16VWE4ZV9Gdw%3D%3D\r\nX-Goog-Event-Time: 1785158436451\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=1785158433293\u0026flash=0\u0026frm=2\u0026u_tz\u0026u_his=2\u0026u_h=1024\u0026u_w=1280\u0026u_ah=1024\u0026u_aw=1280\u0026u_cd=24\u0026bc=31\u0026bih=-12245933\u0026biw=-12245933\u0026brdim=0%2C0%2C0%2C0%2C1280%2C0%2C1280%2C1024%2C560%2C315\u0026vis=1\u0026wgl=true\u0026ca_type=image\r\nContent-Length: 12973\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/4ekOcDG2D8E\r\nCookie: __Secure-YNID=20.YT=gH5UekW7d1yJXHdyAWP9D3nuufltIP5U3L-OJPITdfVo4QFdUpGIlO1MrkvQo6k6kl0jq_pOZAm0Y6StBGPZKrWCX-Ie8T1zxUJW6abmYuVU53Il1VEq4vUs5vvLfbgZGHz1eALkxngiX8bUsdRMr2vaKLTZJ0IBhq1y-2EM8N90iJ0cyWzGnhUGzNxuZzHw9HXFuIwKItlZKR3JI0AWby-eMB-aedGxFUVnqseGfA1HlqbnqC5EymsVz59X4lHMwh44OYJRjaiXEEhEetat2qsHLh8v23W9zHmKOEE2ZhT3CAsXUCZ0LdHpvohM6BZq6G030fjyK9N5mMzUa8e_Fw; YSC=n_kiEdK62Us; VISITOR_INFO1_LIVE=oxtQMHpPyNo; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgEg%3D%3D; __Secure-ROLLOUT_TOKEN=CKOus_iU9NnYzgEQ5fqIsvnylQMY5fqIsvnylQM%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":12973,"data":"{\"context\":{\"client\":{\"hl\":\"en\",\"gl\":\"NO\",\"clientName\":56,\"clientVersion\":\"2.20260724.01.00\",\"configInfo\":{\"appInstallData\":\"CKC2ndMGEPb30RwQwY_QHBDa984cELjkzhwQx43SHBD8ss4cEMn2gBMQvYqwBRDv3tEcEPny0RwQ4OrRHBCL988cEIHNzhwQmY2xBRDevM4cEParsAUQ4LfRHBCvkdEcEL6E0RwQle_RHBCDh7giEK3e0RwQzN-uBRCOkNEcEImwzhwQABDp-NEcEK7WzxwQndCwBRC9tq4FEInk0RwQ8bTQHBC9mbAFEMr7gBMQiJDRHBCG4YATELyk0BwQuPDRHBC3-IATEIeszhwQn8-AExCKh7giEJ2GuCIQpKnRHBDEjNAcEOv70RwQ683QHBD06dEcKmxDQU1TU3hWQS1acS1ETGlVRXBRQ25BNzVGWGFJRktqVkQ5UURBTHdHX3cza0JyWUdzd1gzdmVrTE1xQ3NCQU9RcmdQN0pyYmtCdVNGRjlETUJzU1NCY3M5eFNmWjFRWGRMT1ZHLWxJZEJ3PT0wAA%3D%3D\"},\"userAgent\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\",\"browserName\":\"Firefox\",\"browserVersion\":\"134.0\",\"osName\":\"Windows\",\"osVersion\":\"10.0\",\"platform\":\"DESKTOP\",\"windowWidthPoints\":560,\"windowHeightPoints\":315},\"thirdParty\":{\"embedUrl\":\"https://uniz-coinzltd.com/\"}},\"events\":[{\"eventTimeMs\":1785158433305,\"latencyActionTicked\":{\"tickName\":\"mm_is\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433308,\"latencyActionTicked\":{\"tickName\":\"mm_ie\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433313,\"latencyActionTicked\":{\"tickName\":\"ep_init_cus\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433313,\"latencyActionTicked\":{\"tickName\":\"ep_init_eps\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433314,\"latencyActionTicked\":{\"tickName\":\"ep_init_epe\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433314,\"latencyActionTicked\":{\"tickName\":\"ep_init_cue\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433516,\"latencyActionTicked\":{\"tickName\":\"pe\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433517,\"latencyActionTicked\":{\"tickName\":\"ep_init_wes\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158432957,\"latencyActionTicked\":{\"tickName\":\"srt\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158432775,\"latencyActionBaselined\":{\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158432852,\"latencyActionTicked\":{\"tickName\":\"nreqs\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158432957,\"latencyActionTicked\":{\"tickName\":\"nress\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158432967,\"latencyActionTicked\":{\"tickName\":\"nrese\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158432793,\"latencyActionTicked\":{\"tickName\":\"ndnss\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158432795,\"latencyActionTicked\":{\"tickName\":\"ndnse\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158432795,\"latencyActionTicked\":{\"tickName\":\"ntcps\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158432852,\"latencyActionTicked\":{\"tickName\":\"ntcpe\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158432809,\"latencyActionTicked\":{\"tickName\":\"nstcps\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158432852,\"latencyActionTicked\":{\"tickName\":\"ntcpe\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433113,\"latencyActionTicked\":{\"tickName\":\"wffs\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433201,\"latencyActionTicked\":{\"tickName\":\"wffe\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433102,\"latencyActionTicked\":{\"tickName\":\"rsf_pj\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433199,\"latencyActionTicked\":{\"tickName\":\"rse_pj\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433102,\"latencyActionTicked\":{\"tickName\":\"rsf_pc\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433177,\"latencyActionTicked\":{\"tickName\":\"rse_pc\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433102,\"latencyActionTicked\":{\"tickName\":\"rsf_ecj\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433190,\"latencyActionTicked\":{\"tickName\":\"rse_ecj\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433102,\"latencyActionTicked\":{\"tickName\":\"rsf_ecc\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433177,\"latencyActionTicked\":{\"tickName\":\"rse_ecc\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433522,\"latencyActionInfo\":{\"isNavigation\":true,\"actionType\":\"LATENCY_ACTION_VIDEO_PREVIEW\",\"httpProtocol\":\"h2\",\"transportProtocol\":\"tcp\",\"isVisible\":true,\"loadType\":\"cold\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433292,\"latencyActionTicked\":{\"tickName\":\"rses_dpj\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433527,\"latencyActionTicked\":{\"tickName\":\"ep_init_wee\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433529,\"latencyActionInfo\":{\"serverTimeMs\":73,\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785158433563,\"screenCreated\":{\"csn\":\"rQxj1Lf6p-o9CXbH\",\"pageVe\":{\"veType\":16623,\"youtubeData\":{\"servletData\":{\"serializedServletEventId\":\"IFtnap7gNOXSq7YPj8HYKA\"}}}},\"context\":{\"lastActivityMs\":\"19\"}},{\"eventTimeMs\":1785158433564,\"latencyActionInfo\":{\"clientScreenNonce\":\"rQxj1Lf6p-o9CXbH\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"20\"}},{\"eventTimeMs\":1785158433564,\"screenCreated\":{\"csn\":\"hnlzpCkKIk3N8h_j\",\"pageVe\":{\"veType\":32594},\"implicitGesture\":{\"parentCsn\":\"rQxj1Lf6p-o9CXbH\",\"gesturedVe\":{\"veType\":16623},\"gestureType\":\"INTERACTION_LOGGING_GESTURE_TYPE_AUTOMATED\"}},\"context\":{\"lastActivityMs\":\"20\"}},{\"eventTimeMs\":1785158433565,\"visualElementHidden\":{\"csn\":\"rQxj1Lf6p-o9CXbH\",\"ve\":{\"veType\":16623},\"eventType\":16},\"context\":{\"lastActivityMs\":\"20\"}},{\"eventTimeMs\":1785158433565,\"latencyActionInfo\":{\"clientScreenNonce\":\"hnlzpCkKIk3N8h_j\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"20\"}},{\"eventTimeMs\":1785158433565,\"visualElementAttached\":{\"csn\":\"hnlzpCkKIk3N8h_j\",\"parentVe\":{\"veType\":32594},\"childVes\":[{\"trackingParams\":\"CAAQru4BIhMIu-eJsvnylQMVo6j0Bx3SbDTZygEEGItqJA==\"}]},\"context\":{\"lastActivityMs\":\"20\"}},{\"eventTimeMs\":1785158433568,\"latencyActionTicked\":{\"tickName\":\"qoes\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"24\"}},{\"eventTimeMs\":1785158433568,\"latencyActionTicked\":{\"tickName\":\"fs\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"24\"}},{\"eventTimeMs\":1785158433602,\"latencyActionInfo\":{\"clientPlaybackNonce\":\"mpambChpa2rAeoBm\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"57\"}},{\"eventTimeMs\":1785158433604,\"latencyActionTicked\":{\"tickName\":\"ep_init_pr\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"60\"}},{\"eventTimeMs\":1785158433707,\"latencyActionTicked\":{\"tickName\":\"ep_init_ijs\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"162\"}},{\"eventTimeMs\":1785158433708,\"latencyActionTicked\":{\"tickName\":\"ep_init_ije\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"164\"}},{\"eventTimeMs\":1785158433710,\"latencyActionTicked\":{\"tickName\":\"ep_init_rs\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"165\"}},{\"eventTimeMs\":1785158433715,\"latencyActionTicked\":{\"tickName\":\"ep_init_re\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"170\"}},{\"eventTimeMs\":1785158433738,\"visualElementAttached\":{\"csn\":\"hnlzpCkKIk3N8h_j\",\"parentVe\":{\"veType\":32594},\"childVes\":[{\"veType\":28572,\"veCounter\":2,\"elementIndex\":0}]},\"context\":{\"lastActivityMs\":\"193\"}},{\"eventTimeMs\":1785158433738,\"visualElementShown\":{\"csn\":\"hnlzpCkKIk3N8h_j\",\"ve\":{\"veType\":28572,\"veCounter\":2,\"elementIndex\":0},\"eventType\":1},\"context\":{\"lastActivityMs\":\"193\"}},{\"eventTimeMs\":1785158433784,\"latencyActionTicked\":{\"tickName\":\"ftr\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"239\"}},{\"eventTimeMs\":1785158434028,\"latencyActionTicked\":{\"tickName\":\"pot_ist\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"483\"}},{\"eventTimeMs\":1785158434094,\"visualElementAttached\":{\"csn\":\"hnlzpCkKIk3N8h_j\",\"parentVe\":{\"veType\":32594},\"childVes\":[{\"veType\":23851,\"veCounter\":3,\"elementIndex\":0}]},\"context\":{\"lastActivityMs\":\"548\"}},{\"eventTimeMs\":1785158434094,\"visualElementShown\":{\"csn\":\"hnlzpCkKIk3N8h_j\",\"ve\":{\"veType\":23851,\"veCounter\":3,\"elementIndex\":0},\"eventType\":1},\"context\":{\"lastActivityMs\":\"549\"}},{\"eventTimeMs\":1785158434094,\"visualElementAttached\":{\"csn\":\"hnlzpCkKIk3N8h_j\",\"parentVe\":{\"veType\":32594},\"childVes\":[{\"veType\":36925,\"veCounter\":4,\"elementIndex\":0}]},\"context\":{\"lastActivityMs\":\"549\"}},{\"eventTimeMs\":1785158434094,\"visualElementShown\":{\"csn\":\"hnlzpCkKIk3N8h_j\",\"ve\":{\"veType\":36925,\"veCounter\":4,\"elementIndex\":0},\"eventType\":1},\"context\":{\"lastActivityMs\":\"549\"}},{\"eventTimeMs\":1785158434094,\"foregroundHeartbeatScreenAssociated\":{\"clientDocumentNonce\":\"FFijFNDUL_XVl2Gu\",\"clientScreenNonce\":\"rQxj1Lf6p-o9CXbH\"},\"context\":{\"lastActivityMs\":\"549\"}},{\"eventTimeMs\":1785158434094,\"foregroundHeartbeatScreenAssociated\":{\"clientDocumentNonce\":\"FFijFNDUL_XVl2Gu\",\"clientScreenNonce\":\"hnlzpCkKIk3N8h_j\"},\"context\":{\"lastActivityMs\":\"549\"}},{\"eventTimeMs\":1785158434094,\"latencyActionTicked\":{\"tickName\":\"ol\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"549\"}},{\"eventTimeMs\":1785158434094,\"latencyActionTicked\":{\"tickName\":\"ol\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"550\"}},{\"eventTimeMs\":1785158434094,\"latencyActionTicked\":{\"tickName\":\"ftl\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"550\"}},{\"eventTimeMs\":1785158434339,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChUvY2xpZW50X3N0cmVhbXovYmcvZWMSEAoOCghib3RndWFyZBICNTMaAmVuGgJtayIRCgMKAW8KBgoEYUdJZhICCAEiEQoDCgF0CgYKBGFHSWYSAggBIhEKAwoBaAoGCgRhR0lmEgIIDw==\"},\"context\":{\"lastActivityMs\":\"795\"}},{\"eventTimeMs\":1785158434342,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChUvY2xpZW50X3N0cmVhbXovYmcvZWwSEAoOCghib3RndWFyZBICNTMaAmVuGgJtayIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAgEBAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAAAAJkAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAmQCIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAACZAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAAAA8D8iGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAAQCIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAADRAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAAAAHEAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAmQCIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAAABAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAAAAJkAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAmQCIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAwFhAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAAAAJkAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAIQCIYCgMKAXQKBgoEYUdJZhIJEQAAAAAAgHFA\"},\"context\":{\"lastActivityMs\":\"797\"}},{\"eventTimeMs\":1785158434448,\"latencyActionTicked\":{\"tickName\":\"pot_if\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"903\"}},{\"eventTimeMs\":1785158434448,\"latencyActionTicked\":{\"tickName\":\"pot_cms\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"904\"}},{\"eventTimeMs\":1785158434450,\"latencyActionTicked\":{\"tickName\":\"pot_cmf\",\"clientActionNonce\":\"mvpfYPROi3Xxec6t\"},\"context\":{\"lastActivityMs\":\"906\"}},{\"eventTimeMs\":1785158435342,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChYvY2xpZW50X3N0cmVhbXovYmcvZnJzEhAKDgoIYm90Z3VhcmQSAjUzGgJtayITCgYKBGFHSWYSCREAAAAAAPCbQA==\"},\"context\":{\"lastActivityMs\":\"1797\"}},{\"eventTimeMs\":1785158435342,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChUvY2xpZW50X3N0cmVhbXovYmcvZWMSEAoOCghib3RndWFyZBICNTMaAmVuGgJtayIRCgMKAW4KBgoEYUdJZhICCAEiEQoDCgFtCgYKBGFHSWYSAggB\"},\"context\":{\"lastActivityMs\":\"1798\"}},{\"eventTimeMs\":1785158435343,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChUvY2xpZW50X3N0cmVhbXovYmcvZWwSEAoOCghib3RndWFyZBICNTMaAmVuGgJtayIYCgMKAW4KBgoEYUdJZhIJEQAAAAAAADZAIhgKAwoBaQoGCgRhR0lmEgkRAAAAAAAAAAAiGAoDCgFvCgYKBGFHSWYSCREAAAAAADB6QCIYCgMKAWMKBgoEYUdJZhIJEQAAAAAAAAAAIhgKAwoBQwoGCgRhR0lmEgkRAAAAAAAAAEAiGAoDCgF4CgYKBGFHSWYSCREAAAAAAAAAACIYCgMKAW0KBgoEYUdJZhIJEQAAAAAAAABA\"},\"context\":{\"lastActivityMs\":\"1798\"}}],\"serializedClientEventId\":{\"serializedEventId\":\"IFtnap7gNOXSq7YPj8HYKA\",\"clientCounter\":\"10787\"}}"}},"response":{"raw":"HTTP/3 200 \r\ncontent-type: application/json; charset=UTF-8\r\nvary: Origin, X-Origin, Referer\r\ncontent-encoding: br\r\ndate: Mon, 27 Jul 2026 13:20:36 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-08-17T23:29:23.142994Z","times_seen":285507,"resource_available":false,"data":"ewogICJyZXNwb25zZUNvbnRleHQiOiB7fQp9Cg=="}},"time_used":29,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":29,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"wss","addr":"wss://websocket-visitors.smartsupp.com/socket/?EIO=3\u0026transport=websocket","fqdn":"websocket-visitors.smartsupp.com","domain":"smartsupp.com","tld":"com"},"ip":{"addr":"52.58.76.194","port":443,"asn":16509,"as":"AMAZON-02","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"websocket","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:46.825Z","timestamp":1785158446825,"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://uniz-coinzltd.com\r\nSec-WebSocket-Extensions: permessage-deflate\r\nSec-WebSocket-Key: /zWzAJicv4ZQTMHTrELEMQ==\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: Upgrade\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: websocket\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\nUpgrade: websocket\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 101 Switching Protocols\r\nDate: Mon, 27 Jul 2026 13:20:46 GMT\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Accept: 1HYU25vmrxYnFvlt14x49Fu7eCU=\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-08-17T23:37:29.17424Z","times_seen":17945477,"resource_available":true,"data":""}},"time_used":228,"timings":{"blocked":0,"dns":83,"connect":99,"send":0,"wait":22,"receive":0,"ssl":24},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/custom.css","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.499Z","timestamp":1785158432499,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/custom.css HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\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\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: text/css\r\nserver-timing: cfExtPri\r\npriority: u=2,i=?0\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=%2FzZuDCa3hawGqy55xbMDnxAcenR%2B%2FglYJ5VjYHOFAWm3bX%2BpStYiB6ucB7uqXtZVk%2FpWiJWb1tc4CdetqraPL5FBtgzh2WHMEGtNtYJCc4SX8TvPc%2FPeASgVnDQiER6JD4hVRg%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b2c6956b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 3655\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]}],"data":{"size":19820,"size_decoded":4470,"mime_type":"text/css","magic":"ASCII text","md5":"b8a1efd8050af65f6f4a13e15e031b9c","sha1":"21f5638d5b2b2fb2a09d1e47f3f73c5bb8de2bd1","sha256":"96e11cebbff4b68308267c816655842113bf150687c3d6da36795574299c0f84","sha512":"5e9f8336af49cdcfaf812c54fa85b3ccb7b67577639d709fc27921d81c6d3ec2bf41519e2834162edf9a957e3b4a7dcba4914e1f76977e2346f4274a30b46937","ssdeep":"192:85tQIhmwWWSepKOd7Qw7vuIUAFt/6Tp57g9ABfIKZlHNfHxlqq:OVfKOd8IUAFt/6Tp5c9EnlHNfHxlqq","tlshash":"cb92112a7b453c8ef916d0faef255fa80b0f50126e0e5f7cb1a8393c82c9195957278d","first_seen":"2024-09-19T20:45:30.936047Z","last_seen":"2026-07-27T13:21:39.085139Z","times_seen":10,"resource_available":false,"data":"QGNoYXJzZXQgInV0Zi04IjsKLyogQ1NTIERvY3VtZW50ICovCmJvZHkgewoJZm9udC1mYW1pbHk6ICdQbGF5Jywgc2Fucy1zZXJpZjsKCWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZDogIzAyMTMxYzsKCWZvbnQtc2l6ZTogMTRweDsKCWxpbmUtaGVpZ2h0OiAyNHB4OwoJcGFkZGluZzogMDsKCW1hcmdpbjogMAp9CnAgewoJdGV4dC1hbGlnbjoganVzdGlmeTsKCW1hcmdpbjogMCAwIDIwcHg7Cn0KYSB7Cgljb2xvcjogI2ZiYmMxNDsKCW91dGxpbmU6IG5vbmU7Cgl0ZXh0LWRlY29yYXRpb246IG5vbmUKfQphOmhvdmVyLCBhOmFjdGl2ZSwgYTpmb2N1cyB7Cgljb2xvcjogI2ZmZjsKCXRleHQtZGVjb3JhdGlvbjogbm9uZTsKCW91dGxpbmU6IG5vbmUKfQppbWcgewoJbWF4LXdpZHRoOiAxMDAlCn0KbGFiZWwgewoJZm9udC13ZWlnaHQ6IDQwMAp9CmlucHV0W3R5cGU9InRleHQiXSwgaW5wdXRbdHlwZT0icGFzc3dvcmQiXSwgaW5wdXRbdHlwZT0iZW1haWwiXSB7Cgljb2xvcjogI2ZmZjsKCXdpZHRoOiAxMDAlOwoJaGVpZ2h0OiA0MHB4OwoJYmFja2dyb3VuZDogIzA2MjUzNTsKCWJvcmRlcjogMXB4IHNvbGlkICMwYTRhNmM7CglwYWRkaW5nOiAwIDE1cHg7Cglib3JkZXItcmFkaXVzOiA0cHg7Cglmb250LXNpemU6IDE1cHg7Cn0KdGV4dGFyZWEgewoJY29sb3I6ICNmZmY7Cgl3aWR0aDogMTAwJTsKCWJvcmRlcjogMXB4IHNvbGlkICMwYTRhNmM7CgliYWNrZ3JvdW5kOiAjMDYyNTM1OwoJcGFkZGluZzogMTBweDsKCWJvcmRlci1yYWRpdXM6IDRweDsKCXJlc2l6ZTogbm9uZTsKCWZvbnQtc2l6ZTogMTVweDsKfQppbnB1dFt0eXBlPSJ0ZXh0Il06Zm9jdXMsIGlucHV0W3R5cGU9InBhc3N3b3JkIl06Zm9jdXMsIGlucHV0W3R5cGU9ImVtYWlsIl06Zm9jdXMsIC5mb3JtLWNvbnRhaW5lciB0ZXh0YXJlYTpmb2N1cyB7Cglib3JkZXI6IDFweCBzb2xpZCAjZjdiMDE2Cn0KaW5wdXRbdHlwZT0ic3VibWl0Il0sIGlucHV0W3R5cGU9ImJ1dHRvbiJdIHsKCWJhY2tncm91bmQ6ICNmN2IwMTY7Cglib3JkZXI6IG5vbmU7Cgljb2xvcjogI2ZmZjsKCWZvbnQtc2l6ZTogMTZweDsKCXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CglsaW5lLWhlaWdodDogNDBweDsKCWJvcmRlci1yYWRpdXM6IDUwcHg7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CglwYWRkaW5nOiAwIDQwcHg7Cn0KaW5wdXRbdHlwZT0ic3VibWl0Il06aG92ZXIsIGlucHV0W3R5cGU9ImJ1dHRvbiJdOmhvdmVyIHsKCWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZDogIzE3N2RiNgp9CnNlbGVjdCB7Cgljb2xvcjogI2ZmZjsKCWZvbnQtc2l6ZTogMTNweDsKCWJvcmRlcjogMXB4IHNvbGlkICMwYTRhNmM7Cglib3JkZXItcmFkaXVzOiA0cHg7Cgl3aWR0aDogYXV0bzsKCWFwcGVhcmFuY2U6IG5vbmU7CgktbW96LWFwcGVhcmFuY2U6IG5vbmU7Cgktd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7CgliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL3NlbGVjdF9hcnJvdy5wbmcpIG5vLXJlcGVhdCByaWdodCAjMDYyNTM1OwoJcGFkZGluZzogNXB4IDIwcHggNXB4IDEwcHg7Cn0KdWwgewoJbGlzdC1zdHlsZTogbm9uZTsKCXBhZGRpbmc6IDA7CgltYXJnaW46IDAKfQoud3JhcHBlciwgLmhlYWRlcndyYXAsIC5pbnZlc3RtZW50d3JhcCwgLndlbGNvbWV3cmFwLCAuc3RhcnRlZHdyYXAsIC5sYXN0dGVuc3RhdCwgLmZlYXR1cmVzd3JhcCwgLnJlZmVycmFsd3JhcCwgLnBheW1lbnRpY29ucywgLmZvb3RlcndyYXAsIC5pbnNpZGVfd3JhcCwgLmxvZ2lucGFnZSB7Cgl3aWR0aDogMTAwJTsKCWZsb2F0OiBsZWZ0Owp9Ci5jb250ZW50LCAuaW5zaWRlX2lubmVyewoJbWF4LXdpZHRoOiAxMTcwcHg7CgltYXJnaW46IDAgYXV0bzsKCXdpZHRoOiAxMDAlCn0KLmhlYWRlcndyYXAgewoJYmFja2dyb3VuZDogdXJsKGltYWdlcy9tYWluc2xpZGVyYmcuanBnKSBuby1yZXBlYXQgdG9wIGNlbnRlcjsKCW1pbi1oZWlnaHQ6IDkyMHB4Owp9Ci5sb2dvd3JhcCB7Cgl3aWR0aDogMTAwJTsKCWZsb2F0OiBsZWZ0OwoJYmFja2dyb3VuZDogIzA5MjgzOCB1cmwoaW1hZ2VzL2xvZ29iZWhpbmQucG5nKSBuby1yZXBlYXQgbGVmdCBib3R0b207Cglib3JkZXItcmFkaXVzOiAwIDAgMzRweCAzNHB4OwoJcGFkZGluZzogMTBweCAzMHB4IDIycHg7Cn0KLmxvZ28gewoJd2lkdGg6IDMxJTsKCWZsb2F0OiBsZWZ0Owp9Ci5uYXZ3cmFwIHsKCXdpZHRoOiA2OSU7CglmbG9hdDogbGVmdDsKCXBhZGRpbmc6IDEwcHggMDsKfQoubmF2d3JhcCB1bCB7CglmbG9hdDogbGVmdDsKCXdpZHRoOiAxMDAlOwoJdGV4dC1hbGlnbjogcmlnaHQ7Cn0KLm5hdndyYXAgdWwgbGkgewoJZGlzcGxheTogaW5saW5lLWJsb2NrOwoJcGFkZGluZzogMCAxMHB4OwoJbGluZS1oZWlnaHQ6IDM0cHg7Cn0KLm5hdndyYXAgdWwgbGkgYSB7Cglmb250LXdlaWdodDogNzAwOwoJZm9udC1zaXplOiAxM3B4OwoJY29sb3I6ICNmZmY7Cgl0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwoJZGlzcGxheTogYmxvY2s7Cn0KLm5hdndyYXAgdWwgbGkgYTpob3ZlciB7Cgljb2xvcjogI2VhYTgxYwp9Ci5uYXZ3cmFwIHVsIGxpLmxvZ2luIHsKCWJhY2tncm91bmQ6ICMxNzdkYjY7Cglib3JkZXItcmFkaXVzOiA0MHB4OwoJcGFkZGluZzogMCAyNXB4Owp9Ci5uYXZ3cmFwIHVsIGxpLmxvZ2luOmhvdmVyIHsKCWJhY2tncm91bmQ6ICNlYWE4MWMKfQoubmF2d3JhcCB1bCBsaS5sb2dpbjpob3ZlciBhLCAubmF2d3JhcCB1bCBsaS5zaWdudXA6aG92ZXIgYSB7Cgljb2xvcjogI2ZmZgp9Ci5uYXZ3cmFwIHVsIGxpLnNpZ251cCB7CgliYWNrZ3JvdW5kOiAjZmZmOwoJYm9yZGVyLXJhZGl1czogNDBweDsKCXBhZGRpbmc6IDAgMjVweDsKfQoubmF2d3JhcCB1bCBsaS5zaWdudXA6aG92ZXIgewoJYmFja2dyb3VuZDogIzE3N2RiNjsKCWNvbG9yOiAjZmZmCn0KLm5hdndyYXAgdWwgbGkuc2lnbnVwIGEgewoJY29sb3I6ICMxNzdkYjYKfQouYmFubmVyd3JhcCB7Cgl3aWR0aDogMTAwJTsKCWZsb2F0OiBsZWZ0OwoJcGFkZGluZzogMTIwcHggMCAwIDA7Cn0KLmJhbm5lcmxlZnQgewoJd2lkdGg6IDUwJTsKCWZsb2F0OiBsZWZ0Owp9Ci5iYW5uZXJyaWdodCB7CglmbG9hdDogbGVmdDsKCXdpZHRoOiA1MCU7Cn0KLmJhbm5lcnJpZ2h0IGgxIHsKCWZvbnQtc2l6ZTogNTZweDsKCWxpbmUtaGVpZ2h0OiA2NHB4OwoJdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKCW1hcmdpbjogMCAwIDMwcHg7Cglmb250LXdlaWdodDogNDAwCn0KLmJhbm5lcnJpZ2h0IGgxIHNwYW4gewoJY29sb3I6ICMxODg1YzE7Cglmb250LXdlaWdodDogNzAwCn0KLmJhbm5lcnJpZ2h0IHAgewoJZm9udC1zaXplOiAyNHB4OwoJbGluZS1oZWlnaHQ6IDI4cHg7CgltYXJnaW46IDAgMCAzMHB4Owp9Ci5iYW5uZXJyaWdodCBhIHsKCWJhY2tncm91bmQ6ICMxNzdkYjY7Cgl3aWR0aDogMjEwcHg7CgloZWlnaHQ6IDUwcHg7Cglib3JkZXItcmFkaXVzOiA1MHB4OwoJdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKCWZvbnQtc2l6ZTogMTZweDsKCWZvbnQtd2VpZ2h0OiA3MDA7Cgljb2xvcjogI2ZmZjsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCXRleHQtYWxpZ246IGNlbnRlcjsKCWxpbmUtaGVpZ2h0OiA1MHB4Owp9Ci5iYW5uZXJyaWdodCBhOmhvdmVyIHsKCWJhY2tncm91bmQ6ICNlYWE4MWM7Cgljb2xvcjogI2ZmZjsKfQoucmVnaXN0ZXJlZCB7Cgl3aWR0aDogMTAwJTsKCWZsb2F0OiBsZWZ0OwoJcGFkZGluZzogMzBweCAwIDAgMDsKfQoucmVnaXN0ZXJlZCAubGVmdCB7Cgl3aWR0aDogODAlOwoJZmxvYXQ6IGxlZnQ7Cn0KLnJlZ2lzdGVyZWQgLmxlZnQgaDQgewoJZm9udC13ZWlnaHQ6IDQwMDsKCXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7Cglmb250LXNpemU6IDE4cHg7CgltYXJnaW46IDEwcHggMCAxNXB4OwoJY29sb3I6ICMxNzdkYjY7Cn0KLnJlZ2lzdGVyZWQgLmxlZnQgaDQgc3BhbiB7Cgljb2xvcjogI2VhYTgxYwp9Ci5yZWdpc3RlcmVkIC5sZWZ0IHAgewoJbWFyZ2luOiAwOwoJZm9udC1zaXplOiAxNnB4OwoJbGluZS1oZWlnaHQ6IDIwcHg7Cgl0ZXh0LWFsaWduOiBsZWZ0Cn0KLnJlZ2lzdGVyZWQgLnJpZ2h0IHsKCXdpZHRoOiAyMCU7CglmbG9hdDogcmlnaHQ7Cgl0ZXh0LWFsaWduOiByaWdodDsKfQouaW52ZXN0bWVudHdyYXAgewoJYmFja2dyb3VuZDogIzAyMTMxYzsKCXBhZGRpbmc6IDAgMCA0MHB4Owp9Ci5zdGF0d3JhcCB7CgliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL3N0YXRtYWluYmcucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsKCXdpZHRoOiAxMDAlOwoJZmxvYXQ6IGxlZnQ7CglwYWRkaW5nOiAzMHB4IDAgNDVweDsKCW1hcmdpbjogLTE2MHB4IDAgMCAwOwp9Ci5zdGF0Ym94IHsKCXRleHQtYWxpZ246IGNlbnRlcjsKCXdpZHRoOiAyNSU7CglmbG9hdDogbGVmdDsKCW1hcmdpbjogLTcwcHggMCAwIDA7Cn0KLnN0YXRib3ggLmljb24gewoJZGlzcGxheTogaW5saW5lLWJsb2NrOwoJbWFyZ2luOiAwIDAgNTBweDsKCWJhY2tncm91bmQ6IHVybChpbWFnZXMvc3RhdGJnLnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7Cgl3aWR0aDogMTI0cHg7CgloZWlnaHQ6IDEyNHB4OwoJdGV4dC1hbGlnbjogY2VudGVyOwp9Ci5zdGF0Ym94IGgzIHsKCWNvbG9yOiAjZjI5ZDA5OwoJZm9udC13ZWlnaHQ6IDcwMDsKCWZvbnQtc2l6ZTogMzBweDsKCW1hcmdpbjogMCAwIDEwcHg7Cn0KLnN0YXRib3ggcCB7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7Cglmb250LXNpemU6IDE4cHg7CgltYXJnaW46IDA7Cn0KLnBsYW5zd3JhcCB7Cgl3aWR0aDogMTAwJTsKCWZsb2F0OiBsZWZ0OwoJcGFkZGluZzogNTBweCAwIDAgMDsKfQoucGxhbnN3cmFwIGgyLCAuc3RhcnRlZHdyYXAgaDIsIC5mZWF0dXJlc3dyYXAgaDIgewoJdGV4dC1hbGlnbjogY2VudGVyOwoJdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKCWZvbnQtc2l6ZTogMzZweDsKCWZvbnQtd2VpZ2h0OiA0MDA7CgltYXJnaW46IDAgMCA0MHB4Owp9Ci5wbGFuc3dyYXAgaDIgc3BhbiwgLnN0YXJ0ZWR3cmFwIGgyIHNwYW4sIC5mZWF0dXJlc3dyYXAgaDIgc3BhbiB7Cgljb2xvcjogIzE3N2RiNjsKCWZvbnQtd2VpZ2h0OiA3MDAKfQoucGxhbmxpc3RpbmdzIHsKCXdpZHRoOiA2NSU7CglmbG9hdDogbGVmdDsKfQouY2Fsc3dyYXAgewoJd2lkdGg6IDMzJTsKCWZsb2F0OiByaWdodDsKCWJhY2tncm91bmQ6ICMwNDE5MjQgdXJsKGltYWdlcy9jYWxjdWxhdG9yYmcucG5nKSBuby1yZXBlYXQgYm90dG9tIGNlbnRlcjsKCWJveC1zaGFkb3c6IDAgMCA1cHggIzAwMDAwMDk2OwoJYm9yZGVyLXJhZGl1czogMTVweDsKCXBhZGRpbmc6IDQ4cHggNTVweDsKCXRleHQtYWxpZ246IGNlbnRlcjsKfQouY2Fsc3dyYXAgLmljb24gewoJcGFkZGluZzogMCAwIDIwcHg7Cn0KLmNhbHN3cmFwIGgzIHsKCW1hcmdpbjogMCAwIDIwcHg7Cglmb250LXNpemU6IDMwcHg7Cgl0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwoJZm9udC13ZWlnaHQ6IDQwMDsKfQouY2Fsc3dyYXAgaDMgc3BhbiB7Cgljb2xvcjogIzE4OTJkNzsKCWZvbnQtd2VpZ2h0OiA4MDA7Cn0KLmNhbGlucHV0cyB7Cgl3aWR0aDogMTAwJTsKCWZsb2F0OiBsZWZ0OwoJcGFkZGluZzogMCAwIDEwcHg7Cn0KLmNhbGlucHV0cyBsYWJlbCB7Cglmb250LXNpemU6IDE2cHg7CgltYXJnaW46IDAgMCAxMHB4Owp9Ci5jYWxpbnB1dHMgaW5wdXQgewoJYmFja2dyb3VuZDogIzAyMGMxMjsKCWJvcmRlcjogbm9uZTsKCXdpZHRoOiAxMDAlOwoJaGVpZ2h0OiA1MnB4OwoJYm9yZGVyLXJhZGl1czogNDBweDsKCXBhZGRpbmc6IDAgMjVweDsKCWZvbnQtc2l6ZTogMThweDsKCWNvbG9yOiAjZmZmOwp9Ci5jYWxyZXN1bHQgewoJd2lkdGg6IDEwMCU7CglmbG9hdDogbGVmdDsKCW1hcmdpbjogMCAwIDEwcHg7CgliYWNrZ3JvdW5kOiAjMTc3ZGI2ZTY7Cglib3JkZXItcmFkaXVzOiAxNXB4OwoJcGFkZGluZzogMjBweDsKfQouY2FscmVzdWx0IGg0IHsKCW1hcmdpbjogMCAwIDE1cHg7Cglmb250LXNpemU6IDMwcHg7Cglmb250LXdlaWdodDogNzAwOwp9Ci5jYWxyZXN1bHQgcCB7Cgl0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwoJdGV4dC1hbGlnbjogY2VudGVyOwoJbWFyZ2luOiAwOwp9Ci5jYWxzd3JhcCAuYWN0aW9uIHsKCXdpZHRoOiAxMDAlOwoJZmxvYXQ6IGxlZnQ7CglwYWRkaW5nOiAxMHB4IDAgMCAwOwp9Ci5jYWxzd3JhcCAuYWN0aW9uIGEgewoJYmFja2dyb3VuZDogI2Y3YjAxNjsKCWNvbG9yOiAjZmZmOwoJaGVpZ2h0OiA1MHB4OwoJbGluZS1oZWlnaHQ6IDUwcHg7Cgl3aWR0aDogMTAwJTsKCWJvcmRlci1yYWRpdXM6IDQwcHg7Cn0KLmNhbHN3cmFwIC5hY3Rpb24gYTpob3ZlciB7CgliYWNrZ3JvdW5kOiAjMTc3ZGI2OwoJY29sb3I6ICNmZmYKfQoucGxhbmJveCB7CgliYWNrZ3JvdW5kOiAjMDkyODM4OwoJYm94LXNoYWRvdzogMCAwIDVweCAjMDAwMDAwOTY7CgltYXJnaW46IDAgMCAxNXB4OwoJcGFkZGluZzogMjBweDsKCWJvcmRlci1yYWRpdXM6IDE1cHg7Cgl3aWR0aDogMTAwJTsKCWZsb2F0OiBsZWZ0OwoJcG9zaXRpb246cmVsYXRpdmUKfQoucGxhbmxlZnQgewoJd2lkdGg6IDQwJTsKCWZsb2F0OiBsZWZ0Owp9Ci5wbGFubGVmdCAuaWNvbiB7CglmbG9hdDogbGVmdDsKCXdpZHRoOiAzMCU7Cn0KLnBsYW5sZWZ0IC5wbGFubmFtZSB7CglmbG9hdDogbGVmdDsKCXdpZHRoOiA3MCU7Cn0KLnBsYW5sZWZ0IC5wbGFubmFtZSBoNCB7Cglmb250LXdlaWdodDogNzAwOwoJZm9udC1zaXplOiAzMHB4OwoJdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKCW1hcmdpbjogMCAwIDVweDsKfQoucGxhbmxlZnQgLnBsYW5uYW1lIGg1IHsKCWZvbnQtc2l6ZTogMThweDsKCWNvbG9yOiAjMTc3ZGI2OwoJdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKCWZvbnQtd2VpZ2h0OiA3MDA7CgltYXJnaW46IDAgMCA1cHg7Cn0KLnBsYW5sZWZ0IC5wbGFubmFtZSBwIHsKCW1hcmdpbjogMDsKCWNvbG9yOiAjZmVhZTIyOwoJcGFkZGluZzogMCAwIDAgMjRweDsKCWZvbnQtc2l6ZTogMTZweDsKCWJhY2tncm91bmQ6IHVybChpbWFnZXMveWVsbG93dGljay5wbmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjsKfQoucGxhbnJpZ2h0IHsKCXdpZHRoOiA2MCU7CglmbG9hdDogbGVmdDsKCWJhY2tncm91bmQ6ICMwNDE5MjQ7CglwYWRkaW5nOiAxMHB4IDE1cHg7Cglib3JkZXItcmFkaXVzOiAxMHB4Owp9Ci5wbGFucmlnaHQgdWwgewp9Ci5wbGFucmlnaHQgdWwgbGkgewoJd2lkdGg6IDUwJTsKCWZsb2F0OiBsZWZ0OwoJbGluZS1oZWlnaHQ6IDMycHg7CglwYWRkaW5nOiAwIDAgMCAyNnB4OwoJYmFja2dyb3VuZDogdXJsKGltYWdlcy9ibHVldGljay5wbmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjsKfQoud2VsY29tZXdyYXAgewoJcGFkZGluZzogNDBweCAwOwoJYmFja2dyb3VuZDogdXJsKGltYWdlcy93ZWxjb21lYmcuanBnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsKfQoud2VsY29jbWVsZWZ0IHsKCXdpZHRoOiA2MCU7CglmbG9hdDogbGVmdDsKfQoud2VsY29tZXJpZ2h0IHsKCXdpZHRoOiA0MCU7CglmbG9hdDogbGVmdDsKCXRleHQtYWxpZ246IHJpZ2h0Owp9Ci53ZWxjb2NtZWxlZnQgaDEsIGgzLnNlY3Rpb25oZWFkLCAuZGVwb3NpdF90ZXh0LC5yZWZoZWFkZXIgewoJZm9udC1zaXplOiAzNHB4OwoJY29sb3I6ICMwYjhhZDE7CgltYXJnaW46IDAgMCAyMHB4OwoJZm9udC13ZWlnaHQ6IDQwMDsKfQoud2VsY29jbWVsZWZ0IGgzIHsKCWZvbnQtc2l6ZTogMThweDsKCW1hcmdpbjogMCAwIDE1cHg7Cglmb250LXdlaWdodDogNDAwOwoJY29sb3I6ICNlZGE3MGY7Cn0KLndlbGNvY21lbGVmdCBwIHsKCWZvbnQtc2l6ZTogMTZweDsKCW1hcmdpbjogMCAwIDE1cHg7CglsaW5lLWhlaWdodDogMjRweDsKfQouc3RhcnRlZHdyYXAgewoJcGFkZGluZzogNTBweCAwOwp9Ci5zdGFydGVkYm94Lm9kZCB7CglmbG9hdDogbGVmdDsKfQouc3RhcnRlZGJveC5ldmVuIHsKCWZsb2F0OiByaWdodAp9Ci5zdGFydGVkYm94IHsKCXdpZHRoOiA0OCU7CgliYWNrZ3JvdW5kOiAjMDkyODM4IHVybChpbWFnZXMvZmVhdHVyZWRib3hiZy5wbmcpIG5vLXJlcGVhdCByaWdodCBib3R0b207Cglib3JkZXItcmFkaXVzOiAxNXB4OwoJcGFkZGluZzogNjBweCAyNXB4IDI1cHggMjVweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCW1hcmdpbjogNDVweCAwIDAgMDsKCW1pbi1oZWlnaHQ6IDI5MHB4Owp9Ci5zdGFydGVkYm94IC5pY29uIHsKCXdpZHRoOiA3NnB4OwoJaGVpZ2h0OiA3NnB4OwoJdGV4dC1hbGlnbjogY2VudGVyOwoJbGluZS1oZWlnaHQ6IDc2cHg7CgliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2ZlYXR1cmVkbnVtYmcucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsKCWZvbnQtc2l6ZTogMzBweDsKCWZvbnQtd2VpZ2h0OiA3MDA7Cgljb2xvcjogIzEzOGVkMzsKCW1hcmdpbjogLTkwcHggYXV0byAwIGF1dG87Cn0KLnN0YXJ0ZWRib3ggLmxlZnQgewoJd2lkdGg6IDc1JTsKCWZsb2F0OiBsZWZ0OwoJcGFkZGluZzogMCAzMHB4IDAgMDsKfQouc3RhcnRlZGJveCBoMyB7Cgljb2xvcjogI2ZmYjgzMDsKCWZvbnQtc2l6ZTogMjRweDsKCW1hcmdpbjogNXB4IDAgMTVweDsKfQouc3RhcnRlZGJveCAubGVmdCBwIHsKCW1hcmdpbjogMDsKfQouc3RhcnRlZGJveCAucmlnaHQgewoJd2lkdGg6IDI1JTsKCWZsb2F0OiByaWdodDsKfQoubGFzdHRlbnN0YXQgewoJcGFkZGluZzogNTBweCAwOwoJYmFja2dyb3VuZDogdXJsKGltYWdlcy9sYXN0MTBiZy5wbmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlciAjMDkyODM4Owp9Ci5sYXN0dGVuYm94IHsKCXdpZHRoOiA0OCU7Cn0KLmxhc3R0ZW5ib3gubGVmdCB7CglmbG9hdDogbGVmdDsKfQoubGFzdHRlbmJveC5yaWdodCB7CglmbG9hdDogcmlnaHQ7Cn0KLmxhc3R0ZW5ib3ggLmhlYWRlciB7Cgl3aWR0aDogMTAwJTsKCWZsb2F0OiBsZWZ0OwoJYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmN2FhMGQ7CglwYWRkaW5nOiAwIDAgMTVweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoubGFzdHRlbmJveCAuaGVhZGVyIGg0IHsKCWZsb2F0OiBsZWZ0OwoJZm9udC1zaXplOiAzNnB4OwoJZm9udC13ZWlnaHQ6IDQwMDsKCW1hcmdpbjogMCAwIDVweDsKCXdpZHRoOiAxMDAlOwp9Ci5sYXN0dGVuYm94IC5oZWFkZXIgcCB7CglmbG9hdDogbGVmdDsKCWZvbnQtc2l6ZTogMThweDsKCWNvbG9yOiAjM2E4YWU0OwoJbWFyZ2luOiAwOwoJd2lkdGg6IDEwMCU7Cn0KLmxhc3R0ZW5ib3ggLmhlYWRlciBzcGFuLmljb24gewoJcG9zaXRpb246IGFic29sdXRlOwoJZGlzcGxheTogYmxvY2s7CglyaWdodDogMDsKCXRvcDogMDsKfQoubGFzdHRlbmJveCAubGlzdGluZ3MgewoJcGFkZGluZzogMzBweCAwIDAgMDsKCXdpZHRoOiAxMDAlOwoJZmxvYXQ6IGxlZnQ7Cn0KLmxhc3R0ZW5ib3ggLmxpc3RpbmdzIHVsIHsKCXdpZHRoOiAxMDAlOwoJZmxvYXQ6IGxlZnQ7CglwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAyNXB4OwoJYmFja2dyb3VuZDogIzAwMGUxMzsKCWJvcmRlci1yYWRpdXM6IDUwcHg7CgltYXJnaW46IDAgMCAxMHB4Owp9Ci5sYXN0dGVuYm94IC5saXN0aW5ncyB1bCBsaSB7CglmbG9hdDogbGVmdDsKCXBhZGRpbmc6IDAgMjBweCAwIDA7Cn0KLmxhc3R0ZW5ib3ggLmxpc3RpbmdzIHVsIGxpOmxhc3QtY2hpbGQgewoJcGFkZGluZzogMDsKCWZsb2F0OiByaWdodDsKfQoubGFzdHRlbmJveCAubGlzdGluZ3MgdWwgbGkgc3BhbiB7CgliYWNrZ3JvdW5kOiAjZmZmOwoJYm9yZGVyLXJhZGl1czogNTBweDsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCXBhZGRpbmc6IDAgMTBweDsKfQouZmVhdHVyZXN3cmFwIHsKCWJhY2tncm91bmQ6ICMwMjEzMWM7CglwYWRkaW5nOiA1MHB4IDA7Cn0KLmZlYXR1cmVzYm94IHsKCXdpZHRoOiAzMy4zMyU7CglmbG9hdDogbGVmdDsKCW1hcmdpbjogMCAwIDMwcHg7Cn0KLmZlYXR1cmVzYm94IC5sZWZ0IHsKCXdpZHRoOiAyMCU7CglmbG9hdDogbGVmdDsKfQouZmVhdHVyZXNib3ggLnJpZ2h0IHsKCXdpZHRoOiA4MCU7CglmbG9hdDogbGVmdDsKfQouZmVhdHVyZXNib3ggLnJpZ2h0IGg0IHsKCWNvbG9yOiAjZjdiMDE2OwoJZm9udC1zaXplOiAxOXB4OwoJZm9udC13ZWlnaHQ6IDQwMDsKCW1hcmdpbjogMCAwIDhweDsKfQouZmVhdHVyZXNib3ggLnJpZ2h0IHAgewoJbWFyZ2luOiAwOwoJdGV4dC1hbGlnbjogbGVmdDsKfQoucmVmZXJyYWx3cmFwIHsKCXRleHQtYWxpZ246IGNlbnRlcjsKCWJhY2tncm91bmQ6IHVybChpbWFnZXMvcmVmZXJyYWxiZy5qcGcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOwoJcGFkZGluZzogMCAwIDQwcHggMDsKfQoucmVmZXJyYWx3cmFwIGgzIHsKCWZvbnQtc2l6ZTogMzZweDsKCWZvbnQtd2VpZ2h0OiA0MDA7CgltYXJnaW46IDAgMCAyMHB4Owp9Ci5yZWZlcnJhbHdyYXAgaDMgc3BhbiB7Cgljb2xvcjogIzE0YTdmYTsKfQoucmVmZXJyYWx3cmFwIHAgewoJbWFyZ2luOiAwOwoJZm9udC1zaXplOiAxOHB4OwoJdGV4dC1hbGlnbjogY2VudGVyOwp9Ci5yZWZlcnJhbHdyYXAgYSB7CgliYWNrZ3JvdW5kOiAjZjdiMDE2OwoJY29sb3I6ICNmZmY7CgloZWlnaHQ6IDQwcHg7CglsaW5lLWhlaWdodDogNDBweDsKCWJvcmRlci1yYWRpdXM6IDQwcHg7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CglwYWRkaW5nOiAwIDMwcHg7Cglmb250LXdlaWdodDogNjAwOwoJdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKCWZvbnQtc2l6ZTogMTVweDsKCW1hcmdpbjogMzVweCAwIDAgMDsKfQoucmVmZXJyYWx3cmFwIGE6aG92ZXIgewoJYmFja2dyb3VuZDogIzE3N2RiNjsKCWNvbG9yOiAjZmZmCn0KLnJlZmVycmFsd3JhcCAuaWNvbiB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CgltYXJnaW46IC02MHB4IDAgMCAwOwoJcGFkZGluZzogMCAwIDI1cHg7Cn0KLnBheW1lbnRpY29ucyB7CglwYWRkaW5nOiA0MHB4IDA7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7CgliYWNrZ3JvdW5kOiAjMDIxMzFjOwp9Ci5wYXltZW50aWNvbnMgaDQgewoJZm9udC1zaXplOiAyNHB4OwoJbWFyZ2luOiAwIDAgMTVweDsKfQoucGF5bWVudGljb25zIHAgewoJbWFyZ2luOiAwOwoJdGV4dC1hbGlnbjogY2VudGVyOwp9Ci5mb290ZXJ3cmFwIHsKCWJhY2tncm91bmQ6ICMwMTBiMTA7CglwYWRkaW5nOiAyNXB4IDA7Cn0KLmNvcHlyaWdodCwgLmZvb3RlcmxpbmtzIHsKCWZsb2F0OiBsZWZ0OwoJd2lkdGg6IDUwJTsKfQouZm9vdGVybGlua3MgewoJdGV4dC1hbGlnbjogcmlnaHQKfQouZm9vdGVybGlua3MgdWwgbGkgewoJZGlzcGxheTogaW5saW5lLWJsb2NrOwoJbWFyZ2luOiAwIDAgMCAyMHB4Owp9Ci5mb290ZXJsaW5rcyB1bCBsaSBhIHsKCWNvbG9yOiAjMTg5MmQ3Owp9Ci5mb290ZXJsaW5rcyB1bCBsaSBhOmhvdmVyIHsKCWNvbG9yOiAjZmZmCn0KQG1lZGlhIChtYXgtd2lkdGg6IDExNzBweCkgewouaW5zaWRlX3dyYXAud3JhcHBlciwgLmhlYWRlcndyYXAsIC5pbnZlc3RtZW50d3JhcCwgLndlbGNvbWV3cmFwLCAuc3RhcnRlZHdyYXAsIC5sYXN0dGVuc3RhdCwgLmZlYXR1cmVzd3JhcCwgLnJlZmVycmFsd3JhcCwgLnBheW1lbnRpY29ucywgLmZvb3RlcndyYXAgewoJd2lkdGg6IDExNzBweDsKfQouY29udGVudCB7CgltYXJnaW46IDAgIWltcG9ydGFudDsKfQp9Ci5pbnNpZGVfd3JhcCwgLmxvZ2lucGFnZSB7CglwYWRkaW5nOiA1MHB4IDAgODBweDsKfQouZmFxIC5wYW5lbC1kZWZhdWx0IHsKCWJvcmRlcjogbm9uZTsKfQouZmFxIC5wYW5lbC1kZWZhdWx0ID4gLnBhbmVsLWhlYWRpbmcgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMDkyODM4OwoJcGFkZGluZzogNXB4OwoJYm9yZGVyOiBub25lOwoJYm94LXNoYWRvdzogMCAwIDVweCAjMDAwMDAwOTYgIWltcG9ydGFudDsKfQouZmFxIC5wYW5lbC10aXRsZSB7Cglmb250LXNpemU6IDE1cHg7Cgl0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwoJYmFja2dyb3VuZDogdXJsKGltYWdlcy9mYXEucG5nKSBuby1yZXBlYXQgbGVmdCAxNXB4IGNlbnRlcgp9Ci5mYXEgLnBhbmVsLXRpdGxlID4gLnNtYWxsLCAuZmFxIC5wYW5lbC10aXRsZSA+IC5zbWFsbCA+IGEsIC5mYXEgLnBhbmVsLXRpdGxlID4gYSwgLnBhbmVsLXRpdGxlID4gc21hbGwsIC5mYXEgLnBhbmVsLXRpdGxlID4gc21hbGwgPiBhIHsKCWNvbG9yOiAjZmVhZTIyOwoJcGFkZGluZzogMTVweCAxNXB4IDE1cHggNjBweDsKCWRpc3BsYXk6IGJsb2NrOwoJYm9yZGVyOiBub25lOwp9Ci5mYXEgLnBhbmVsLWRlZmF1bHQgPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHsKCWJvcmRlci10b3AtY29sb3I6ICNmZWFlMjI7Cn0KLmZhcSAucGFuZWwgewoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KLm5ld3NfYmxvY2sgewoJd2lkdGg6IDEwMCU7CglmbG9hdDogbGVmdDsKCXBhZGRpbmc6IDMwcHg7CgliYWNrZ3JvdW5kOiAjMDkyODM4IHVybChpbWFnZXMvZmVhdHVyZWRib3hiZy5wbmcpIG5vLXJlcGVhdCByaWdodCBib3R0b207Cglib3JkZXItcmFkaXVzOiAxNXB4OwoJbWFyZ2luOiAwIDAgMzBweDsKfQoubmV3c190aXRsZSB7Cgljb2xvcjogI2ZmYjgzMDsKCWZvbnQtc2l6ZTogMjRweDsKCW1hcmdpbjogMCAwIDVweDsKfQoubmV3c190aXRsZSBzcGFuIHsKCWZvbnQtc2l6ZTogMTFweDsKCWJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNzNhNWJmNGY7Cgljb2xvcjogIzczYTViZjsKCWZsb2F0OiByaWdodDsKfQoubmV3c19pbmZvcyB7CglwYWRkaW5nOiAxNXB4IDA7CglsaW5lLWhlaWdodDogMjZweDsKfQoubmV3c2ljb24gewoJd2lkdGg6IDEyOHB4OwoJaGVpZ2h0OiAxMjhweDsKCWZsb2F0OiBsZWZ0OwoJcGFkZGluZzogMCAyMHB4IDAgMDsKfQouYWZmYm94IHsKCXdpZHRoOiA0OCU7CgliYWNrZ3JvdW5kOiAjMDkyODM4IHVybChpbWFnZXMvZmVhdHVyZWRib3hiZy5wbmcpIG5vLXJlcGVhdCByaWdodCBib3R0b207Cglib3JkZXItcmFkaXVzOiAxNXB4OwoJcGFkZGluZzogMjVweDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCW1hcmdpbjogMCAwIDI1cHg7Cn0KLmFmZmJveC5sZWZ0IHsKCWZsb2F0OiBsZWZ0Owp9Ci5hZmZib3gucmlnaHQgewoJZmxvYXQ6IHJpZ2h0Owp9Ci5hZmZsZWZ0IHsKCXdpZHRoOiA3NSU7CglmbG9hdDogbGVmdDsKCXBhZGRpbmc6IDAgMzBweCAwIDA7Cn0KLmFmZmxlZnQgcCB7CgltYXJnaW46IDA7CgltaW4taGVpZ2h0OiAxOTVweDsKfQouYWZmYm94IGgzIHsKCWNvbG9yOiAjZmZiODMwOwoJZm9udC1zaXplOiAyNHB4OwoJbWFyZ2luOiA1cHggMCAxNXB4Owp9Ci5hZmZyaWdodCB7Cgl3aWR0aDogMjUlOwoJZmxvYXQ6IHJpZ2h0Owp9Ci5zdXBwb3J0bGVmdCB7Cgl3aWR0aDogNDglOwoJZmxvYXQ6IGxlZnQ7Cn0KLnN1cHBvcnRsZWZ0IHN0cm9uZyB7Cgljb2xvcjogI2Y3YjAxNjsKCWZvbnQtc2l6ZTogMTlweDsKCWZvbnQtd2VpZ2h0OiA0MDA7CgltYXJnaW46IDAgMCAyMHB4OwoJZGlzcGxheTogYmxvY2s7Cn0KLnN1cHBvcnRsZWZ0IGgyIHsKCWJhY2tncm91bmQ6ICMxNzdkYjZlNjsKCWJvcmRlci1yYWRpdXM6IDUwcHg7CglwYWRkaW5nOiAxNXB4IDI1cHg7Cglmb250LXNpemU6IDE4cHg7Cglmb250LXdlaWdodDogNjAwOwp9Ci5zdXBwb3J0bGVmdCBoMiBhIHsKCWNvbG9yOiAjZmZmOwoJZmxvYXQ6IHJpZ2h0Cn0KLnN1cHBvcnRsZWZ0IHAgewoJbWFyZ2luOiAwIDAgMzlweDsKfQouc3VwcG9ydHJpZ2h0IHsKCXdpZHRoOiA0OCU7CglmbG9hdDogcmlnaHQKfQouZm9ybS1ibG9jayB7CglwYWRkaW5nOiAwIDAgMTBweDsKfQouZm9ybS1ibG9jayB0ZXh0YXJlYSB7CgltYXgtaGVpZ2h0OiAxMDBweDsKfQouZm9ybS1ibG9jayAuc2JtdCB7CgltYXJnaW46IDIwcHggMCAwIDA7Cn0KLnJ1bGVzIHsKCWJhY2tncm91bmQ6ICMwOTI4Mzg7Cglib3gtc2hhZG93OiAwIDAgNXB4ICMwMDAwMDA5NjsKCW1hcmdpbjogMCAwIDE1cHg7CglwYWRkaW5nOiAyMHB4OwoJYm9yZGVyLXJhZGl1czogMTVweDsKCXdpZHRoOiAxMDAlOwoJZmxvYXQ6IGxlZnQ7Cn0KaDMuc2VjdGlvbmhlYWQsIC5kZXBvc2l0X3RleHQsLnJlZmhlYWRlciB7Cgljb2xvcjogI2VkYTcwZjsKfQouZGVwb3NpdF90ZXh0IHsKCWNvbG9yOiAjZmZmOwoJd2lkdGg6IDEwMCU7CglmbG9hdDogbGVmdDsKfQouZGVwb3NpdF90ZXh0IHNwYW4gewoJY29sb3I6ICNlZGE3MGY7Cn0KLmhlYWRlcndyYXAuaW5zaWRlaGVhZGVycyB7CgltaW4taGVpZ2h0OiBhdXRvOwoJYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsKfQouaGVhZGVyd3JhcC5pbnNpZGVoZWFkZXJzIC5iYW5uZXJ3cmFwIHsKCXBhZGRpbmc6IDQwcHggMDsKfQouaGVhZGVyd3JhcC5pbnNpZGVoZWFkZXJzIC5iYW5uZXJ3cmFwIGgxIHsKCXRleHQtYWxpZ246IHJpZ2h0OwoJbWFyZ2luOiAwOwoJZm9udC1zaXplOiAzMnB4OwoJbGluZS1oZWlnaHQ6IDM2cHg7Cn0KLmxvZ2lud3JhcHBlcnMgewoJbWFyZ2luOiAwIGF1dG87CgltYXgtd2lkdGg6IDUwMHB4OwoJYmFja2dyb3VuZDogIzA5MjgzODsKCWJveC1zaGFkb3c6IDAgMCA1cHggIzAwMDAwMDk2OwoJcGFkZGluZzogMjVweDsKCWJvcmRlci1yYWRpdXM6IDE1cHg7CglvdmVyZmxvdzogaGlkZGVuOwp9Ci5sb2dpbndyYXBwZXJzIHRhYmxlIHRkIHsKCXBhZGRpbmc6IDhweCAwOwp9Ci5sb2dpbndyYXBwZXJzIC5sb2dvIHsKCXdpZHRoOiAxMDAlOwoJdGV4dC1hbGlnbjogY2VudGVyOwp9Ci5sb2dpbndyYXBwZXJzIGgzIHsKCXRleHQtYWxpZ246IGNlbnRlcjsKCXdpZHRoOiAxMDAlOwoJZmxvYXQ6IGxlZnQ7Cgl0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwoJZm9udC1zaXplOiAyMnB4OwoJbWFyZ2luOiA1MHB4IDA7Cn0KLmxvZ2lud3JhcHBlcnMgcCB7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7Cgl3aWR0aDogMTAwJTsKCWZsb2F0OiBsZWZ0Owp9Ci5hZnRlcmxvZ2luaGVhZGVyYmxvY2sgewoJYmFja2dyb3VuZDogIzA5MjgzODsKCWZsb2F0OiBsZWZ0OwoJbWFyZ2luOiAwIDEwcHggMCAwOwoJcGFkZGluZzogNHB4IDIwcHg7Cglib3JkZXItcmFkaXVzOiA0MHB4OwoJZm9udC13ZWlnaHQ6IDUwMDsKCWZvbnQtc2l6ZTogMTNweDsKCWxpbmUtaGVpZ2h0OiAzMnB4Owp9Ci5hZnRlcmxvZ2luaGVhZGVyYmxvY2sgLmljb24gewoJZmxvYXQ6IGxlZnQ7CgltYXJnaW46IDAgMTBweCAwIDA7Cn0KLmFmdGVybG9naW5oZWFkZXJibG9jayBzcGFuIHsKCWNvbG9yOiAjZmJiYzE0OwoJZm9udC13ZWlnaHQ6IDYwMDsKfQoubWVtYmVyc2lkZWJhciB7Cgl3aWR0aDogMzMlOwoJZmxvYXQ6IHJpZ2h0OwoJYmFja2dyb3VuZDogIzA0MTkyNCB1cmwoaW1hZ2VzL2NhbGN1bGF0b3JiZy5wbmcpIG5vLXJlcGVhdCBib3R0b20gY2VudGVyOwoJYm94LXNoYWRvdzogMCAwIDVweCAjMDAwMDAwOTY7Cglib3JkZXItcmFkaXVzOiAxNXB4OwoJcGFkZGluZzogMjBweCA0MHB4OwoJdGV4dC1hbGlnbjogY2VudGVyOwp9Ci5teWFjY291bnRfd3JhcCB7Cgl3aWR0aDogNjUlOwoJZmxvYXQ6IGxlZnQ7Cn0KLndlbGNvbWUgewoJd2lkdGg6IDEwMCU7CglmbG9hdDogbGVmdDsKCWJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMGE0YTZjOwoJcGFkZGluZzogMCAwIDEwcHg7CgltYXJnaW46IDAgMCAxNXB4Owp9Ci53ZWxjb21lIC5pY29uIHsKCXdpZHRoOiA2NHB4OwoJaGVpZ2h0OiA2NHB4OwoJZGlzcGxheTogaW5saW5lLWJsb2NrOwoJbWFyZ2luOiAwIDAgMTBweDsKfQoud2VsY29tZSBoMiB7Cglmb250LXNpemU6IDIwcHg7Cgl0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwoJbWFyZ2luOiAwOwp9Ci53ZWxjb21lIGgyIHNwYW4gewoJY29sb3I6ICNmOWJlMzE7Cglmb250LXdlaWdodDogNjAwCn0KLm5hdmJhciB7Cgl3aWR0aDogMTAwJTsKCWZsb2F0OiBsZWZ0OwoJbWFyZ2luOiAwOwp9Ci5uYXZpZ2F0aW9uIHsKCWJhY2tncm91bmQ6ICMwMjEzMWM5OTsKCWJvcmRlci1yYWRpdXM6IDE1cHg7CglwYWRkaW5nOiAxMHB4Owp9Ci5uYXZpZ2F0aW9uIGxpIHsKCWxpbmUtaGVpZ2h0OiAzMHB4OwoJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwYjU1N2E3MDsKfQoubmF2aWdhdGlvbiBsaTpsYXN0LWNoaWxkIHsKCWJvcmRlcjogbm9uZQp9Ci5uYXZpZ2F0aW9uIGxpIGEgewoJZGlzcGxheTogYmxvY2s7Cgl0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwoJY29sb3I6ICNmZmY7Cglmb250LXdlaWdodDogNTAwOwoJZm9udC1zaXplOiAxNXB4Owp9Ci5uYXZpZ2F0aW9uIGxpIGE6aG92ZXIgewoJY29sb3I6ICNmOWJlMzE7Cn0KLm5hdmlnYXRpb24gbGkgc3BhbiB7CglkaXNwbGF5OiBub25lCn0KLnJlZmNvcHkgewoJYmFja2dyb3VuZDogI2Y5YmUzMTsKCWJvcmRlci1yYWRpdXM6IDE1cHg7CglwYWRkaW5nOiAyMHB4IDE1cHg7CgltYXJnaW46IDAgMCA0MHB4OwoJd2lkdGg6IDEwMCU7CglmbG9hdDogbGVmdDsKfQoucmVmY29weSBidXR0b24jY29weUJ1dHRvbiB7CgliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2NvcHkucG5nKSBuby1yZXBlYXQgbGVmdCBjZW50ZXI7Cglib3JkZXI6IG5vbmU7Cgl3aWR0aDogNDRweDsKCWhlaWdodDogNDRweDsKCWZsb2F0OiBsZWZ0Owp9Ci5yZWZjb3B5ICNjb3B5VGFyZ2V0IHsKCWhlaWdodDogNDRweDsKCWJhY2tncm91bmQ6ICMwMjEzMWM7Cgljb2xvcjogI2Y5YmUyZDsKCWJvcmRlcjogbm9uZTsKCXBhZGRpbmc6IDAgMjBweDsKCWZsb2F0OiBsZWZ0OwoJd2lkdGg6IDUyMHB4OwoJYm9yZGVyLXJhZGl1czogNTBweDsKfQoucmVmY29weSAuZ2V0YmFuIHsKCWJhY2tncm91bmQ6IHJnYigyMywgMTI1LCAxODIpOwoJYm9yZGVyLXJhZGl1czogNDBweDsKCWxpbmUtaGVpZ2h0OiA0NHB4OwoJZmxvYXQ6IHJpZ2h0Owp9Ci5yZWZjb3B5IC5nZXRiYW4gYSB7Cglmb250LXdlaWdodDogNTAwOwoJY29sb3I6ICNmZmY7Cglmb250LXNpemU6IDEycHg7CglwYWRkaW5nOiAwIDM1cHg7CglkaXNwbGF5OiBibG9jazsKCXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7Cn0KLnJlZmNvcHkgLmdldGJhbjpob3ZlciB7CgliYWNrZ3JvdW5kOiAjMDIxMzFjOwp9Ci5hY2Nib3gubGVmdCB7CglmbG9hdDogbGVmdDsKfQouYWNjYm94LnJpZ2h0IHsKCWZsb2F0OiByaWdodDsKfQouYWNjYm94IHsKCXdpZHRoOiA0OCU7CgliYWNrZ3JvdW5kOiAjMDkyODM4IHVybChpbWFnZXMvZmVhdHVyZWRib3hiZy5wbmcpIG5vLXJlcGVhdCByaWdodCBib3R0b207Cglib3JkZXItcmFkaXVzOiAxNXB4OwoJcGFkZGluZzogMjVweDsKCXRleHQtYWxpZ246IGNlbnRlcjsKCWJveC1zaGFkb3c6IDAgMCA1cHggIzAwMDAwMDk2Owp9Ci5hY2Nib3ggLmljb24gewoJd2lkdGg6IDg0cHg7CgloZWlnaHQ6IDg0cHg7CgltYXJnaW46IDAgYXV0byAyMHB4Owp9Ci5hY2Nib3ggaDMgewoJdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKCW1hcmdpbjogMCAwIDI1cHg7Cglmb250LXNpemU6IDIwcHg7CglsaW5lLWhlaWdodDogMzJweDsKCXBhZGRpbmc6IDAgMCAxNXB4OwoJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwYTRhNmM7Cn0KLmFjY2JveCBoMyBzcGFuIHsKCWRpc3BsYXk6IGJsb2NrOwoJY29sb3I6ICNmOWJlMzE7Cglmb250LXdlaWdodDogNjAwOwoJZm9udC1zaXplOiAyNHB4Owp9Ci5hY2Nib3ggdWwgewoJd2lkdGg6IDEwMCU7CglmbG9hdDogbGVmdDsKCWJhY2tncm91bmQ6ICMwMjEzMWM5OTsKCWJvcmRlci1yYWRpdXM6IDE1cHg7CglwYWRkaW5nOiAxMHB4IDI1cHg7CgltYXJnaW46IDAgMCAyNXB4Owp9Ci5hY2Nib3ggdWwgbGkgewoJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwYjU1N2E3MDsKCWxpbmUtaGVpZ2h0OiAzMHB4OwoJdGV4dC1hbGlnbjogbGVmdDsKfQouYWNjYm94IHVsIGxpOmxhc3QtY2hpbGQgewoJYm9yZGVyOiBub25lCn0KLmFjY2JveCB1bCBsaSBzcGFuIHsKCWZsb2F0OiByaWdodDsKCWNvbG9yOiAjZjliZTMxOwoJZm9udC13ZWlnaHQ6IDYwMDsKfQouYWNjX2J1dHRvbiB7Cgl3aWR0aDogMTAwJTsKCWZsb2F0OiBsZWZ0Owp9Ci5hY2NfYnV0dG9uIGEgewoJYmFja2dyb3VuZDogI2Y3YjAxNjsKCWNvbG9yOiAjZmZmOwoJaGVpZ2h0OiA1MHB4OwoJbGluZS1oZWlnaHQ6IDUwcHg7Cgl3aWR0aDogMTAwJTsKCWJvcmRlci1yYWRpdXM6IDQwcHg7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cglmb250LXNpemU6IDE2cHg7Cglmb250LXdlaWdodDogNjAwOwoJdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKfQouYWNjX2J1dHRvbiBhOmhvdmVyIHsKCWJhY2tncm91bmQ6ICMxNzdkYjY7Cgljb2xvcjogI2ZmZgp9Ci5teV9hY2NvbnQgewoJd2lkdGg6IDEwMCU7CglmbG9hdDogbGVmdDsKCW1hcmdpbjogMCAwIDIwcHg7CgliYWNrZ3JvdW5kOiAjMDMxOTI0OwoJcGFkZGluZzogMTVweDsKCWJvcmRlci1yYWRpdXM6IDE1cHg7Cglib3gtc2hhZG93OiAwIDAgNXB4ICMwMDAwMDA5NjsKfQoubXlfYWNjb250IHRhYmxlIHRkIHsKCWJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMGE0YTZjOwoJcGFkZGluZzogN3B4IDA7Cgl0ZXh0LWFsaWduOiBsZWZ0Owp9Ci5teV9hY2NvbnQgdGFibGUgdGQuaW5oZWFkZXIgewoJY29sb3I6ICNmOWJlMzE7Cglmb250LXdlaWdodDogNjAwOwoJZm9udC1zaXplOiAxNXB4OwoJdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKfQouYWxlcnQgewoJdGV4dC1hbGlnbjogY2VudGVyCn0KLnJlZnBhZ2UgewoJd2lkdGg6IDEwMCU7CglmbG9hdDogbGVmdDsKCXBhZGRpbmc6IDAgMCA0NXB4Owp9Ci5yZWZwYWdlIC5hY2Nib3ggaDMgewoJYm9yZGVyOiBub25lOwoJcGFkZGluZzogMDsKCW1hcmdpbjogMDsKfQouYWZmLWJhbm5lcnMgLm5hdi10YWJzIHsKCWJvcmRlcjogbm9uZTsKCXBhZGRpbmc6IDAgMCAzNXB4Owp9Ci5hZmYtYmFubmVycyAubmF2LXRhYnMgPiBsaSB7CgliYWNrZ3JvdW5kOiAjZmZmOwoJYm9yZGVyLXJhZGl1czogNTBweDsKCW1hcmdpbjogMCAxMHB4IDAgMDsKfQouYWZmLWJhbm5lcnMgLm5hdi10YWJzID4gbGkgPiBhIHsKCW1hcmdpbi1yaWdodDogMDsKCWJvcmRlcjogbm9uZTsKCWZvbnQtd2VpZ2h0OiA2MDA7CglwYWRkaW5nOiA4cHggMjVweDsKfQouYWZmLWJhbm5lcnMgLm5hdi10YWJzID4gbGkgYTpob3ZlciB7CgliYWNrZ3JvdW5kOiNmYmJjMTQ7Cglib3JkZXI6IG5vbmU7Cglib3JkZXItcmFkaXVzOiA1MHB4Owp9Ci5hZmYtYmFubmVycyAubmF2LXRhYnMgPiBsaS5hY3RpdmUgPiBhLCAuYWZmLWJhbm5lcnMgLm5hdi10YWJzID4gbGkuYWN0aXZlID4gYTpmb2N1cywgLmFmZi1iYW5uZXJzIC5uYXYtdGFicyA+IGxpLmFjdGl2ZSA+IGE6aG92ZXIgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZjliZTMxOwoJYm9yZGVyOiBub25lOwoJYm9yZGVyLXJhZGl1czogNTBweDsKfQoucmVmaGVhZGVyIHsKCWZvbnQtc2l6ZTogMjJweDsKCXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7Cgljb2xvcjogI2VkYTcwZjsKCW1hcmdpbjogMTBweCAwIDE1cHg7Cn0KI2FtdHRvc3BkIHsKCWJhY2tncm91bmQ6ICNmOWJlMzE7Cgljb2xvcjogI2ZmZjsKCWZvbnQtd2VpZ2h0OiA2MDA7Cglib3JkZXItY29sb3I6ICNmOWJlMzE7Cn0KLmFjY3BhZ2UgLnBsYW5ib3ggLnJhZGlvIHsKCWJvcmRlci1yYWRpdXM6IDE1cHg7CgljdXJzb3I6IHBvaW50ZXI7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl0b3A6IDA7CglsZWZ0OiAwOwoJd2lkdGg6IDEwMCU7Cglib3JkZXI6IDJweCBzb2xpZCAjMGM1NzdkOwoJaGVpZ2h0OiAxMDAlOwoJbWFyZ2luOiAwOwoJdGV4dC1pbmRlbnQ6IC05OTllbTsKfQouYWNjcGFnZSAucGxhbmJveCBpbnB1dFt0eXBlPXJhZGlvXSB7CglkaXNwbGF5OiBub25lCn0KLmFjY3BhZ2UgLnBsYW5ib3ggaW5wdXRbdHlwZT0icmFkaW8iXTpjaGVja2VkICsgLnJhZGlvIHsKCWJvcmRlci1jb2xvcjogI2Y5YmUzMTsKfQo="}},"time_used":15,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":15,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js","fqdn":"maxcdn.bootstrapcdn.com","domain":"bootstrapcdn.com","tld":"com"},"ip":{"addr":"104.18.10.207","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.506Z","timestamp":1785158432506,"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":"bootstrapcdn.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 01 Jul 2026 06:33:56 GMT","end":"Tue, 29 Sep 2026 07:33:46 GMT"},"fingerprint":{"sha1":"95:C5:B1:CC:FD:2D:A2:1D:9E:F8:29:11:70:8F:C2:32:DB:0A:16:D8","sha256":"67:23:C0:55:AC:EE:9D:BF:1F:32:F6:C6:31:3A:5A:3F:85:B5:50:88:71:96:38:D1:BB:37:21:B0:0C:CF:B9:EA"}}},"request":{"raw":"GET /bootstrap/3.3.7/js/bootstrap.min.js HTTP/1.1\r\nHost: maxcdn.bootstrapcdn.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://uniz-coinzltd.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\npriority: u=3,i=?0\r\nserver: cloudflare\r\ncdn-pullzone: 252412\r\ncdn-uid: b1941f61-b576-4f40-80de-5677acb38f74\r\ncdn-requestcountrycode: DE\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=31919000\r\ncontent-encoding: br\r\netag: \"5869c96cc8f19086aee625d670d741f9\"\r\nlast-modified: Mon, 25 Jan 2021 22:04:00 GMT\r\ncdn-cachedat: 05/12/2025 11:50:50\r\ncdn-proxyver: 1.27\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 1047\r\ntiming-allow-origin: *\r\ncross-origin-resource-policy: cross-origin\r\nx-content-type-options: nosniff\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: b1b9160e81bab8e089937fec86a3f9ec\r\ncdn-cache: HIT\r\nage: 3837932\r\ncf-cache-status: HIT\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\ncf-ray: a21bf12b3d0223eb-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":37045,"size_decoded":11302,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (32033)","md5":"5869c96cc8f19086aee625d670d741f9","sha1":"430a443d74830fe9be26efca431f448c1b3740f9","sha256":"53964478a7c634e8dad34ecc303dd8048d00dce4993906de1bacf67f663486ef","sha512":"8b3b64a1bb2f9e329f02d4cd7479065630184ebaed942ee61a9ff9e1ce34c28c0eecb854458977815cf3704a8697fa8a5d096d2761f032b74b70d51da3e37f45","ssdeep":"768:o2rGy27UwlNqMl95qNmCFejhqs8snmi+CSFXfbx8Gf3Zq7Q:Jg73zhq0GvbJ3ZKQ","tlshash":"b6f28606b23031a147efb1e1525b020e7239696ee906907c78b99af53db9c48717bf3d","first_seen":"2023-03-07T01:02:54Z","last_seen":"2026-08-17T23:37:25.88479Z","times_seen":98090,"resource_available":true,"data":"LyohCiAqIEJvb3RzdHJhcCB2My4zLjcgKGh0dHA6Ly9nZXRib290c3RyYXAuY29tKQogKiBDb3B5cmlnaHQgMjAxMS0yMDE2IFR3aXR0ZXIsIEluYy4KICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlCiAqLwppZigidW5kZWZpbmVkIj09dHlwZW9mIGpRdWVyeSl0aHJvdyBuZXcgRXJyb3IoIkJvb3RzdHJhcCdzIEphdmFTY3JpcHQgcmVxdWlyZXMgalF1ZXJ5Iik7K2Z1bmN0aW9uKGEpeyJ1c2Ugc3RyaWN0Ijt2YXIgYj1hLmZuLmpxdWVyeS5zcGxpdCgiICIpWzBdLnNwbGl0KCIuIik7aWYoYlswXTwyJiZiWzFdPDl8fDE9PWJbMF0mJjk9PWJbMV0mJmJbMl08MXx8YlswXT4zKXRocm93IG5ldyBFcnJvcigiQm9vdHN0cmFwJ3MgSmF2YVNjcmlwdCByZXF1aXJlcyBqUXVlcnkgdmVyc2lvbiAxLjkuMSBvciBoaWdoZXIsIGJ1dCBsb3dlciB0aGFuIHZlcnNpb24gNCIpfShqUXVlcnkpLCtmdW5jdGlvbihhKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gYigpe3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJvb3RzdHJhcCIpLGI9e1dlYmtpdFRyYW5zaXRpb246IndlYmtpdFRyYW5zaXRpb25FbmQiLE1velRyYW5zaXRpb246InRyYW5zaXRpb25lbmQiLE9UcmFuc2l0aW9uOiJvVHJhbnNpdGlvbkVuZCBvdHJhbnNpdGlvbmVuZCIsdHJhbnNpdGlvbjoidHJhbnNpdGlvbmVuZCJ9O2Zvcih2YXIgYyBpbiBiKWlmKHZvaWQgMCE9PWEuc3R5bGVbY10pcmV0dXJue2VuZDpiW2NdfTtyZXR1cm4hMX1hLmZuLmVtdWxhdGVUcmFuc2l0aW9uRW5kPWZ1bmN0aW9uKGIpe3ZhciBjPSExLGQ9dGhpczthKHRoaXMpLm9uZSgiYnNUcmFuc2l0aW9uRW5kIixmdW5jdGlvbigpe2M9ITB9KTt2YXIgZT1mdW5jdGlvbigpe2N8fGEoZCkudHJpZ2dlcihhLnN1cHBvcnQudHJhbnNpdGlvbi5lbmQpfTtyZXR1cm4gc2V0VGltZW91dChlLGIpLHRoaXN9LGEoZnVuY3Rpb24oKXthLnN1cHBvcnQudHJhbnNpdGlvbj1iKCksYS5zdXBwb3J0LnRyYW5zaXRpb24mJihhLmV2ZW50LnNwZWNpYWwuYnNUcmFuc2l0aW9uRW5kPXtiaW5kVHlwZTphLnN1cHBvcnQudHJhbnNpdGlvbi5lbmQsZGVsZWdhdGVUeXBlOmEuc3VwcG9ydC50cmFuc2l0aW9uLmVuZCxoYW5kbGU6ZnVuY3Rpb24oYil7aWYoYShiLnRhcmdldCkuaXModGhpcykpcmV0dXJuIGIuaGFuZGxlT2JqLmhhbmRsZXIuYXBwbHkodGhpcyxhcmd1bWVudHMpfX0pfSl9KGpRdWVyeSksK2Z1bmN0aW9uKGEpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBiKGIpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgYz1hKHRoaXMpLGU9Yy5kYXRhKCJicy5hbGVydCIpO2V8fGMuZGF0YSgiYnMuYWxlcnQiLGU9bmV3IGQodGhpcykpLCJzdHJpbmciPT10eXBlb2YgYiYmZVtiXS5jYWxsKGMpfSl9dmFyIGM9J1tkYXRhLWRpc21pc3M9ImFsZXJ0Il0nLGQ9ZnVuY3Rpb24oYil7YShiKS5vbigiY2xpY2siLGMsdGhpcy5jbG9zZSl9O2QuVkVSU0lPTj0iMy4zLjciLGQuVFJBTlNJVElPTl9EVVJBVElPTj0xNTAsZC5wcm90b3R5cGUuY2xvc2U9ZnVuY3Rpb24oYil7ZnVuY3Rpb24gYygpe2cuZGV0YWNoKCkudHJpZ2dlcigiY2xvc2VkLmJzLmFsZXJ0IikucmVtb3ZlKCl9dmFyIGU9YSh0aGlzKSxmPWUuYXR0cigiZGF0YS10YXJnZXQiKTtmfHwoZj1lLmF0dHIoImhyZWYiKSxmPWYmJmYucmVwbGFjZSgvLiooPz0jW15cc10qJCkvLCIiKSk7dmFyIGc9YSgiIyI9PT1mP1tdOmYpO2ImJmIucHJldmVudERlZmF1bHQoKSxnLmxlbmd0aHx8KGc9ZS5jbG9zZXN0KCIuYWxlcnQiKSksZy50cmlnZ2VyKGI9YS5FdmVudCgiY2xvc2UuYnMuYWxlcnQiKSksYi5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8KGcucmVtb3ZlQ2xhc3MoImluIiksYS5zdXBwb3J0LnRyYW5zaXRpb24mJmcuaGFzQ2xhc3MoImZhZGUiKT9nLm9uZSgiYnNUcmFuc2l0aW9uRW5kIixjKS5lbXVsYXRlVHJhbnNpdGlvbkVuZChkLlRSQU5TSVRJT05fRFVSQVRJT04pOmMoKSl9O3ZhciBlPWEuZm4uYWxlcnQ7YS5mbi5hbGVydD1iLGEuZm4uYWxlcnQuQ29uc3RydWN0b3I9ZCxhLmZuLmFsZXJ0Lm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gYS5mbi5hbGVydD1lLHRoaXN9LGEoZG9jdW1lbnQpLm9uKCJjbGljay5icy5hbGVydC5kYXRhLWFwaSIsYyxkLnByb3RvdHlwZS5jbG9zZSl9KGpRdWVyeSksK2Z1bmN0aW9uKGEpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBiKGIpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZD1hKHRoaXMpLGU9ZC5kYXRhKCJicy5idXR0b24iKSxmPSJvYmplY3QiPT10eXBlb2YgYiYmYjtlfHxkLmRhdGEoImJzLmJ1dHRvbiIsZT1uZXcgYyh0aGlzLGYpKSwidG9nZ2xlIj09Yj9lLnRvZ2dsZSgpOmImJmUuc2V0U3RhdGUoYil9KX12YXIgYz1mdW5jdGlvbihiLGQpe3RoaXMuJGVsZW1lbnQ9YShiKSx0aGlzLm9wdGlvbnM9YS5leHRlbmQoe30sYy5ERUZBVUxUUyxkKSx0aGlzLmlzTG9hZGluZz0hMX07Yy5WRVJTSU9OPSIzLjMuNyIsYy5ERUZBVUxUUz17bG9hZGluZ1RleHQ6ImxvYWRpbmcuLi4ifSxjLnByb3RvdHlwZS5zZXRTdGF0ZT1mdW5jdGlvbihiKXt2YXIgYz0iZGlzYWJsZWQiLGQ9dGhpcy4kZWxlbWVudCxlPWQuaXMoImlucHV0Iik/InZhbCI6Imh0bWwiLGY9ZC5kYXRhKCk7Yis9IlRleHQiLG51bGw9PWYucmVzZXRUZXh0JiZkLmRhdGEoInJlc2V0VGV4dCIsZFtlXSgpKSxzZXRUaW1lb3V0KGEucHJveHkoZnVuY3Rpb24oKXtkW2VdKG51bGw9PWZbYl0/dGhpcy5vcHRpb25zW2JdOmZbYl0pLCJsb2FkaW5nVGV4dCI9PWI/KHRoaXMuaXNMb2FkaW5nPSEwLGQuYWRkQ2xhc3MoYykuYXR0cihjLGMpLnByb3AoYywhMCkpOnRoaXMuaXNMb2FkaW5nJiYodGhpcy5pc0xvYWRpbmc9ITEsZC5yZW1vdmVDbGFzcyhjKS5yZW1vdmVBdHRyKGMpLnByb3AoYywhMSkpfSx0aGlzKSwwKX0sYy5wcm90b3R5cGUudG9nZ2xlPWZ1bmN0aW9uKCl7dmFyIGE9ITAsYj10aGlzLiRlbGVtZW50LmNsb3Nlc3QoJ1tkYXRhLXRvZ2dsZT0iYnV0dG9ucyJdJyk7aWYoYi5sZW5ndGgpe3ZhciBjPXRoaXMuJGVsZW1lbnQuZmluZCgiaW5wdXQiKTsicmFkaW8iPT1jLnByb3AoInR5cGUiKT8oYy5wcm9wKCJjaGVja2VkIikmJihhPSExKSxiLmZpbmQoIi5hY3RpdmUiKS5yZW1vdmVDbGFzcygiYWN0aXZlIiksdGhpcy4kZWxlbWVudC5hZGRDbGFzcygiYWN0aXZlIikpOiJjaGVja2JveCI9PWMucHJvcCgidHlwZSIpJiYoYy5wcm9wKCJjaGVja2VkIikhPT10aGlzLiRlbGVtZW50Lmhhc0NsYXNzKCJhY3RpdmUiKSYmKGE9ITEpLHRoaXMuJGVsZW1lbnQudG9nZ2xlQ2xhc3MoImFjdGl2ZSIpKSxjLnByb3AoImNoZWNrZWQiLHRoaXMuJGVsZW1lbnQuaGFzQ2xhc3MoImFjdGl2ZSIpKSxhJiZjLnRyaWdnZXIoImNoYW5nZSIpfWVsc2UgdGhpcy4kZWxlbWVudC5hdHRyKCJhcmlhLXByZXNzZWQiLCF0aGlzLiRlbGVtZW50Lmhhc0NsYXNzKCJhY3RpdmUiKSksdGhpcy4kZWxlbWVudC50b2dnbGVDbGFzcygiYWN0aXZlIil9O3ZhciBkPWEuZm4uYnV0dG9uO2EuZm4uYnV0dG9uPWIsYS5mbi5idXR0b24uQ29uc3RydWN0b3I9YyxhLmZuLmJ1dHRvbi5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGEuZm4uYnV0dG9uPWQsdGhpc30sYShkb2N1bWVudCkub24oImNsaWNrLmJzLmJ1dHRvbi5kYXRhLWFwaSIsJ1tkYXRhLXRvZ2dsZV49ImJ1dHRvbiJdJyxmdW5jdGlvbihjKXt2YXIgZD1hKGMudGFyZ2V0KS5jbG9zZXN0KCIuYnRuIik7Yi5jYWxsKGQsInRvZ2dsZSIpLGEoYy50YXJnZXQpLmlzKCdpbnB1dFt0eXBlPSJyYWRpbyJdLCBpbnB1dFt0eXBlPSJjaGVja2JveCJdJyl8fChjLnByZXZlbnREZWZhdWx0KCksZC5pcygiaW5wdXQsYnV0dG9uIik/ZC50cmlnZ2VyKCJmb2N1cyIpOmQuZmluZCgiaW5wdXQ6dmlzaWJsZSxidXR0b246dmlzaWJsZSIpLmZpcnN0KCkudHJpZ2dlcigiZm9jdXMiKSl9KS5vbigiZm9jdXMuYnMuYnV0dG9uLmRhdGEtYXBpIGJsdXIuYnMuYnV0dG9uLmRhdGEtYXBpIiwnW2RhdGEtdG9nZ2xlXj0iYnV0dG9uIl0nLGZ1bmN0aW9uKGIpe2EoYi50YXJnZXQpLmNsb3Nlc3QoIi5idG4iKS50b2dnbGVDbGFzcygiZm9jdXMiLC9eZm9jdXMoaW4pPyQvLnRlc3QoYi50eXBlKSl9KX0oalF1ZXJ5KSwrZnVuY3Rpb24oYSl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGIoYil7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBkPWEodGhpcyksZT1kLmRhdGEoImJzLmNhcm91c2VsIiksZj1hLmV4dGVuZCh7fSxjLkRFRkFVTFRTLGQuZGF0YSgpLCJvYmplY3QiPT10eXBlb2YgYiYmYiksZz0ic3RyaW5nIj09dHlwZW9mIGI/YjpmLnNsaWRlO2V8fGQuZGF0YSgiYnMuY2Fyb3VzZWwiLGU9bmV3IGModGhpcyxmKSksIm51bWJlciI9PXR5cGVvZiBiP2UudG8oYik6Zz9lW2ddKCk6Zi5pbnRlcnZhbCYmZS5wYXVzZSgpLmN5Y2xlKCl9KX12YXIgYz1mdW5jdGlvbihiLGMpe3RoaXMuJGVsZW1lbnQ9YShiKSx0aGlzLiRpbmRpY2F0b3JzPXRoaXMuJGVsZW1lbnQuZmluZCgiLmNhcm91c2VsLWluZGljYXRvcnMiKSx0aGlzLm9wdGlvbnM9Yyx0aGlzLnBhdXNlZD1udWxsLHRoaXMuc2xpZGluZz1udWxsLHRoaXMuaW50ZXJ2YWw9bnVsbCx0aGlzLiRhY3RpdmU9bnVsbCx0aGlzLiRpdGVtcz1udWxsLHRoaXMub3B0aW9ucy5rZXlib2FyZCYmdGhpcy4kZWxlbWVudC5vbigia2V5ZG93bi5icy5jYXJvdXNlbCIsYS5wcm94eSh0aGlzLmtleWRvd24sdGhpcykpLCJob3ZlciI9PXRoaXMub3B0aW9ucy5wYXVzZSYmISgib250b3VjaHN0YXJ0ImluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkmJnRoaXMuJGVsZW1lbnQub24oIm1vdXNlZW50ZXIuYnMuY2Fyb3VzZWwiLGEucHJveHkodGhpcy5wYXVzZSx0aGlzKSkub24oIm1vdXNlbGVhdmUuYnMuY2Fyb3VzZWwiLGEucHJveHkodGhpcy5jeWNsZSx0aGlzKSl9O2MuVkVSU0lPTj0iMy4zLjciLGMuVFJBTlNJVElPTl9EVVJBVElPTj02MDAsYy5ERUZBVUxUUz17aW50ZXJ2YWw6NWUzLHBhdXNlOiJob3ZlciIsd3JhcDohMCxrZXlib2FyZDohMH0sYy5wcm90b3R5cGUua2V5ZG93bj1mdW5jdGlvbihhKXtpZighL2lucHV0fHRleHRhcmVhL2kudGVzdChhLnRhcmdldC50YWdOYW1lKSl7c3dpdGNoKGEud2hpY2gpe2Nhc2UgMzc6dGhpcy5wcmV2KCk7YnJlYWs7Y2FzZSAzOTp0aGlzLm5leHQoKTticmVhaztkZWZhdWx0OnJldHVybn1hLnByZXZlbnREZWZhdWx0KCl9fSxjLnByb3RvdHlwZS5jeWNsZT1mdW5jdGlvbihiKXtyZXR1cm4gYnx8KHRoaXMucGF1c2VkPSExKSx0aGlzLmludGVydmFsJiZjbGVhckludGVydmFsKHRoaXMuaW50ZXJ2YWwpLHRoaXMub3B0aW9ucy5pbnRlcnZhbCYmIXRoaXMucGF1c2VkJiYodGhpcy5pbnRlcnZhbD1zZXRJbnRlcnZhbChhLnByb3h5KHRoaXMubmV4dCx0aGlzKSx0aGlzLm9wdGlvbnMuaW50ZXJ2YWwpKSx0aGlzfSxjLnByb3RvdHlwZS5nZXRJdGVtSW5kZXg9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuJGl0ZW1zPWEucGFyZW50KCkuY2hpbGRyZW4oIi5pdGVtIiksdGhpcy4kaXRlbXMuaW5kZXgoYXx8dGhpcy4kYWN0aXZlKX0sYy5wcm90b3R5cGUuZ2V0SXRlbUZvckRpcmVjdGlvbj1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuZ2V0SXRlbUluZGV4KGIpLGQ9InByZXYiPT1hJiYwPT09Y3x8Im5leHQiPT1hJiZjPT10aGlzLiRpdGVtcy5sZW5ndGgtMTtpZihkJiYhdGhpcy5vcHRpb25zLndyYXApcmV0dXJuIGI7dmFyIGU9InByZXYiPT1hPy0xOjEsZj0oYytlKSV0aGlzLiRpdGVtcy5sZW5ndGg7cmV0dXJuIHRoaXMuJGl0ZW1zLmVxKGYpfSxjLnByb3RvdHlwZS50bz1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9dGhpcy5nZXRJdGVtSW5kZXgodGhpcy4kYWN0aXZlPXRoaXMuJGVsZW1lbnQuZmluZCgiLml0ZW0uYWN0aXZlIikpO2lmKCEoYT50aGlzLiRpdGVtcy5sZW5ndGgtMXx8YTwwKSlyZXR1cm4gdGhpcy5zbGlkaW5nP3RoaXMuJGVsZW1lbnQub25lKCJzbGlkLmJzLmNhcm91c2VsIixmdW5jdGlvbigpe2IudG8oYSl9KTpjPT1hP3RoaXMucGF1c2UoKS5jeWNsZSgpOnRoaXMuc2xpZGUoYT5jPyJuZXh0IjoicHJldiIsdGhpcy4kaXRlbXMuZXEoYSkpfSxjLnByb3RvdHlwZS5wYXVzZT1mdW5jdGlvbihiKXtyZXR1cm4gYnx8KHRoaXMucGF1c2VkPSEwKSx0aGlzLiRlbGVtZW50LmZpbmQoIi5uZXh0LCAucHJldiIpLmxlbmd0aCYmYS5zdXBwb3J0LnRyYW5zaXRpb24mJih0aGlzLiRlbGVtZW50LnRyaWdnZXIoYS5zdXBwb3J0LnRyYW5zaXRpb24uZW5kKSx0aGlzLmN5Y2xlKCEwKSksdGhpcy5pbnRlcnZhbD1jbGVhckludGVydmFsKHRoaXMuaW50ZXJ2YWwpLHRoaXN9LGMucHJvdG90eXBlLm5leHQ9ZnVuY3Rpb24oKXtpZighdGhpcy5zbGlkaW5nKXJldHVybiB0aGlzLnNsaWRlKCJuZXh0Iil9LGMucHJvdG90eXBlLnByZXY9ZnVuY3Rpb24oKXtpZighdGhpcy5zbGlkaW5nKXJldHVybiB0aGlzLnNsaWRlKCJwcmV2Iil9LGMucHJvdG90eXBlLnNsaWRlPWZ1bmN0aW9uKGIsZCl7dmFyIGU9dGhpcy4kZWxlbWVudC5maW5kKCIuaXRlbS5hY3RpdmUiKSxmPWR8fHRoaXMuZ2V0SXRlbUZvckRpcmVjdGlvbihiLGUpLGc9dGhpcy5pbnRlcnZhbCxoPSJuZXh0Ij09Yj8ibGVmdCI6InJpZ2h0IixpPXRoaXM7aWYoZi5oYXNDbGFzcygiYWN0aXZlIikpcmV0dXJuIHRoaXMuc2xpZGluZz0hMTt2YXIgaj1mWzBdLGs9YS5FdmVudCgic2xpZGUuYnMuY2Fyb3VzZWwiLHtyZWxhdGVkVGFyZ2V0OmosZGlyZWN0aW9uOmh9KTtpZih0aGlzLiRlbGVtZW50LnRyaWdnZXIoayksIWsuaXNEZWZhdWx0UHJldmVudGVkKCkpe2lmKHRoaXMuc2xpZGluZz0hMCxnJiZ0aGlzLnBhdXNlKCksdGhpcy4kaW5kaWNhdG9ycy5sZW5ndGgpe3RoaXMuJGluZGljYXRvcnMuZmluZCgiLmFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKTt2YXIgbD1hKHRoaXMuJGluZGljYXRvcnMuY2hpbGRyZW4oKVt0aGlzLmdldEl0ZW1JbmRleChmKV0pO2wmJmwuYWRkQ2xhc3MoImFjdGl2ZSIpfXZhciBtPWEuRXZlbnQoInNsaWQuYnMuY2Fyb3VzZWwiLHtyZWxhdGVkVGFyZ2V0OmosZGlyZWN0aW9uOmh9KTtyZXR1cm4gYS5zdXBwb3J0LnRyYW5zaXRpb24mJnRoaXMuJGVsZW1lbnQuaGFzQ2xhc3MoInNsaWRlIik/KGYuYWRkQ2xhc3MoYiksZlswXS5vZmZzZXRXaWR0aCxlLmFkZENsYXNzKGgpLGYuYWRkQ2xhc3MoaCksZS5vbmUoImJzVHJhbnNpdGlvbkVuZCIsZnVuY3Rpb24oKXtmLnJlbW92ZUNsYXNzKFtiLGhdLmpvaW4oIiAiKSkuYWRkQ2xhc3MoImFjdGl2ZSIpLGUucmVtb3ZlQ2xhc3MoWyJhY3RpdmUiLGhdLmpvaW4oIiAiKSksaS5zbGlkaW5nPSExLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtpLiRlbGVtZW50LnRyaWdnZXIobSl9LDApfSkuZW11bGF0ZVRyYW5zaXRpb25FbmQoYy5UUkFOU0lUSU9OX0RVUkFUSU9OKSk6KGUucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpLGYuYWRkQ2xhc3MoImFjdGl2ZSIpLHRoaXMuc2xpZGluZz0hMSx0aGlzLiRlbGVtZW50LnRyaWdnZXIobSkpLGcmJnRoaXMuY3ljbGUoKSx0aGlzfX07dmFyIGQ9YS5mbi5jYXJvdXNlbDthLmZuLmNhcm91c2VsPWIsYS5mbi5jYXJvdXNlbC5Db25zdHJ1Y3Rvcj1jLGEuZm4uY2Fyb3VzZWwubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBhLmZuLmNhcm91c2VsPWQsdGhpc307dmFyIGU9ZnVuY3Rpb24oYyl7dmFyIGQsZT1hKHRoaXMpLGY9YShlLmF0dHIoImRhdGEtdGFyZ2V0Iil8fChkPWUuYXR0cigiaHJlZiIpKSYmZC5yZXBsYWNlKC8uKig/PSNbXlxzXSskKS8sIiIpKTtpZihmLmhhc0NsYXNzKCJjYXJvdXNlbCIpKXt2YXIgZz1hLmV4dGVuZCh7fSxmLmRhdGEoKSxlLmRhdGEoKSksaD1lLmF0dHIoImRhdGEtc2xpZGUtdG8iKTtoJiYoZy5pbnRlcnZhbD0hMSksYi5jYWxsKGYsZyksaCYmZi5kYXRhKCJicy5jYXJvdXNlbCIpLnRvKGgpLGMucHJldmVudERlZmF1bHQoKX19O2EoZG9jdW1lbnQpLm9uKCJjbGljay5icy5jYXJvdXNlbC5kYXRhLWFwaSIsIltkYXRhLXNsaWRlXSIsZSkub24oImNsaWNrLmJzLmNhcm91c2VsLmRhdGEtYXBpIiwiW2RhdGEtc2xpZGUtdG9dIixlKSxhKHdpbmRvdykub24oImxvYWQiLGZ1bmN0aW9uKCl7YSgnW2RhdGEtcmlkZT0iY2Fyb3VzZWwiXScpLmVhY2goZnVuY3Rpb24oKXt2YXIgYz1hKHRoaXMpO2IuY2FsbChjLGMuZGF0YSgpKX0pfSl9KGpRdWVyeSksK2Z1bmN0aW9uKGEpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBiKGIpe3ZhciBjLGQ9Yi5hdHRyKCJkYXRhLXRhcmdldCIpfHwoYz1iLmF0dHIoImhyZWYiKSkmJmMucmVwbGFjZSgvLiooPz0jW15cc10rJCkvLCIiKTtyZXR1cm4gYShkKX1mdW5jdGlvbiBjKGIpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgYz1hKHRoaXMpLGU9Yy5kYXRhKCJicy5jb2xsYXBzZSIpLGY9YS5leHRlbmQoe30sZC5ERUZBVUxUUyxjLmRhdGEoKSwib2JqZWN0Ij09dHlwZW9mIGImJmIpOyFlJiZmLnRvZ2dsZSYmL3Nob3d8aGlkZS8udGVzdChiKSYmKGYudG9nZ2xlPSExKSxlfHxjLmRhdGEoImJzLmNvbGxhcHNlIixlPW5ldyBkKHRoaXMsZikpLCJzdHJpbmciPT10eXBlb2YgYiYmZVtiXSgpfSl9dmFyIGQ9ZnVuY3Rpb24oYixjKXt0aGlzLiRlbGVtZW50PWEoYiksdGhpcy5vcHRpb25zPWEuZXh0ZW5kKHt9LGQuREVGQVVMVFMsYyksdGhpcy4kdHJpZ2dlcj1hKCdbZGF0YS10b2dnbGU9ImNvbGxhcHNlIl1baHJlZj0iIycrYi5pZCsnIl0sW2RhdGEtdG9nZ2xlPSJjb2xsYXBzZSJdW2RhdGEtdGFyZ2V0PSIjJytiLmlkKyciXScpLHRoaXMudHJhbnNpdGlvbmluZz1udWxsLHRoaXMub3B0aW9ucy5wYXJlbnQ/dGhpcy4kcGFyZW50PXRoaXMuZ2V0UGFyZW50KCk6dGhpcy5hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3ModGhpcy4kZWxlbWVudCx0aGlzLiR0cmlnZ2VyKSx0aGlzLm9wdGlvbnMudG9nZ2xlJiZ0aGlzLnRvZ2dsZSgpfTtkLlZFUlNJT049IjMuMy43IixkLlRSQU5TSVRJT05fRFVSQVRJT049MzUwLGQuREVGQVVMVFM9e3RvZ2dsZTohMH0sZC5wcm90b3R5cGUuZGltZW5zaW9uPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy4kZWxlbWVudC5oYXNDbGFzcygid2lkdGgiKTtyZXR1cm4gYT8id2lkdGgiOiJoZWlnaHQifSxkLnByb3RvdHlwZS5zaG93PWZ1bmN0aW9uKCl7aWYoIXRoaXMudHJhbnNpdGlvbmluZyYmIXRoaXMuJGVsZW1lbnQuaGFzQ2xhc3MoImluIikpe3ZhciBiLGU9dGhpcy4kcGFyZW50JiZ0aGlzLiRwYXJlbnQuY2hpbGRyZW4oIi5wYW5lbCIpLmNoaWxkcmVuKCIuaW4sIC5jb2xsYXBzaW5nIik7aWYoIShlJiZlLmxlbmd0aCYmKGI9ZS5kYXRhKCJicy5jb2xsYXBzZSIpLGImJmIudHJhbnNpdGlvbmluZykpKXt2YXIgZj1hLkV2ZW50KCJzaG93LmJzLmNvbGxhcHNlIik7aWYodGhpcy4kZWxlbWVudC50cmlnZ2VyKGYpLCFmLmlzRGVmYXVsdFByZXZlbnRlZCgpKXtlJiZlLmxlbmd0aCYmKGMuY2FsbChlLCJoaWRlIiksYnx8ZS5kYXRhKCJicy5jb2xsYXBzZSIsbnVsbCkpO3ZhciBnPXRoaXMuZGltZW5zaW9uKCk7dGhpcy4kZWxlbWVudC5yZW1vdmVDbGFzcygiY29sbGFwc2UiKS5hZGRDbGFzcygiY29sbGFwc2luZyIpW2ddKDApLmF0dHIoImFyaWEtZXhwYW5kZWQiLCEwKSx0aGlzLiR0cmlnZ2VyLnJlbW92ZUNsYXNzKCJjb2xsYXBzZWQiKS5hdHRyKCJhcmlhLWV4cGFuZGVkIiwhMCksdGhpcy50cmFuc2l0aW9uaW5nPTE7dmFyIGg9ZnVuY3Rpb24oKXt0aGlzLiRlbGVtZW50LnJlbW92ZUNsYXNzKCJjb2xsYXBzaW5nIikuYWRkQ2xhc3MoImNvbGxhcHNlIGluIilbZ10oIiIpLHRoaXMudHJhbnNpdGlvbmluZz0wLHRoaXMuJGVsZW1lbnQudHJpZ2dlcigic2hvd24uYnMuY29sbGFwc2UiKX07aWYoIWEuc3VwcG9ydC50cmFuc2l0aW9uKXJldHVybiBoLmNhbGwodGhpcyk7dmFyIGk9YS5jYW1lbENhc2UoWyJzY3JvbGwiLGddLmpvaW4oIi0iKSk7dGhpcy4kZWxlbWVudC5vbmUoImJzVHJhbnNpdGlvbkVuZCIsYS5wcm94eShoLHRoaXMpKS5lbXVsYXRlVHJhbnNpdGlvbkVuZChkLlRSQU5TSVRJT05fRFVSQVRJT04pW2ddKHRoaXMuJGVsZW1lbnRbMF1baV0pfX19fSxkLnByb3RvdHlwZS5oaWRlPWZ1bmN0aW9uKCl7aWYoIXRoaXMudHJhbnNpdGlvbmluZyYmdGhpcy4kZWxlbWVudC5oYXNDbGFzcygiaW4iKSl7dmFyIGI9YS5FdmVudCgiaGlkZS5icy5jb2xsYXBzZSIpO2lmKHRoaXMuJGVsZW1lbnQudHJpZ2dlcihiKSwhYi5pc0RlZmF1bHRQcmV2ZW50ZWQoKSl7dmFyIGM9dGhpcy5kaW1lbnNpb24oKTt0aGlzLiRlbGVtZW50W2NdKHRoaXMuJGVsZW1lbnRbY10oKSlbMF0ub2Zmc2V0SGVpZ2h0LHRoaXMuJGVsZW1lbnQuYWRkQ2xhc3MoImNvbGxhcHNpbmciKS5yZW1vdmVDbGFzcygiY29sbGFwc2UgaW4iKS5hdHRyKCJhcmlhLWV4cGFuZGVkIiwhMSksdGhpcy4kdHJpZ2dlci5hZGRDbGFzcygiY29sbGFwc2VkIikuYXR0cigiYXJpYS1leHBhbmRlZCIsITEpLHRoaXMudHJhbnNpdGlvbmluZz0xO3ZhciBlPWZ1bmN0aW9uKCl7dGhpcy50cmFuc2l0aW9uaW5nPTAsdGhpcy4kZWxlbWVudC5yZW1vdmVDbGFzcygiY29sbGFwc2luZyIpLmFkZENsYXNzKCJjb2xsYXBzZSIpLnRyaWdnZXIoImhpZGRlbi5icy5jb2xsYXBzZSIpfTtyZXR1cm4gYS5zdXBwb3J0LnRyYW5zaXRpb24/dm9pZCB0aGlzLiRlbGVtZW50W2NdKDApLm9uZSgiYnNUcmFuc2l0aW9uRW5kIixhLnByb3h5KGUsdGhpcykpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKGQuVFJBTlNJVElPTl9EVVJBVElPTik6ZS5jYWxsKHRoaXMpfX19LGQucHJvdG90eXBlLnRvZ2dsZT1mdW5jdGlvbigpe3RoaXNbdGhpcy4kZWxlbWVudC5oYXNDbGFzcygiaW4iKT8iaGlkZSI6InNob3ciXSgpfSxkLnByb3RvdHlwZS5nZXRQYXJlbnQ9ZnVuY3Rpb24oKXtyZXR1cm4gYSh0aGlzLm9wdGlvbnMucGFyZW50KS5maW5kKCdbZGF0YS10b2dnbGU9ImNvbGxhcHNlIl1bZGF0YS1wYXJlbnQ9IicrdGhpcy5vcHRpb25zLnBhcmVudCsnIl0nKS5lYWNoKGEucHJveHkoZnVuY3Rpb24oYyxkKXt2YXIgZT1hKGQpO3RoaXMuYWRkQXJpYUFuZENvbGxhcHNlZENsYXNzKGIoZSksZSl9LHRoaXMpKS5lbmQoKX0sZC5wcm90b3R5cGUuYWRkQXJpYUFuZENvbGxhcHNlZENsYXNzPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5oYXNDbGFzcygiaW4iKTthLmF0dHIoImFyaWEtZXhwYW5kZWQiLGMpLGIudG9nZ2xlQ2xhc3MoImNvbGxhcHNlZCIsIWMpLmF0dHIoImFyaWEtZXhwYW5kZWQiLGMpfTt2YXIgZT1hLmZuLmNvbGxhcHNlO2EuZm4uY29sbGFwc2U9YyxhLmZuLmNvbGxhcHNlLkNvbnN0cnVjdG9yPWQsYS5mbi5jb2xsYXBzZS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGEuZm4uY29sbGFwc2U9ZSx0aGlzfSxhKGRvY3VtZW50KS5vbigiY2xpY2suYnMuY29sbGFwc2UuZGF0YS1hcGkiLCdbZGF0YS10b2dnbGU9ImNvbGxhcHNlIl0nLGZ1bmN0aW9uKGQpe3ZhciBlPWEodGhpcyk7ZS5hdHRyKCJkYXRhLXRhcmdldCIpfHxkLnByZXZlbnREZWZhdWx0KCk7dmFyIGY9YihlKSxnPWYuZGF0YSgiYnMuY29sbGFwc2UiKSxoPWc/InRvZ2dsZSI6ZS5kYXRhKCk7Yy5jYWxsKGYsaCl9KX0oalF1ZXJ5KSwrZnVuY3Rpb24oYSl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGIoYil7dmFyIGM9Yi5hdHRyKCJkYXRhLXRhcmdldCIpO2N8fChjPWIuYXR0cigiaHJlZiIpLGM9YyYmLyNbQS1aYS16XS8udGVzdChjKSYmYy5yZXBsYWNlKC8uKig/PSNbXlxzXSokKS8sIiIpKTt2YXIgZD1jJiZhKGMpO3JldHVybiBkJiZkLmxlbmd0aD9kOmIucGFyZW50KCl9ZnVuY3Rpb24gYyhjKXtjJiYzPT09Yy53aGljaHx8KGEoZSkucmVtb3ZlKCksYShmKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGQ9YSh0aGlzKSxlPWIoZCksZj17cmVsYXRlZFRhcmdldDp0aGlzfTtlLmhhc0NsYXNzKCJvcGVuIikmJihjJiYiY2xpY2siPT1jLnR5cGUmJi9pbnB1dHx0ZXh0YXJlYS9pLnRlc3QoYy50YXJnZXQudGFnTmFtZSkmJmEuY29udGFpbnMoZVswXSxjLnRhcmdldCl8fChlLnRyaWdnZXIoYz1hLkV2ZW50KCJoaWRlLmJzLmRyb3Bkb3duIixmKSksYy5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8KGQuYXR0cigiYXJpYS1leHBhbmRlZCIsImZhbHNlIiksZS5yZW1vdmVDbGFzcygib3BlbiIpLnRyaWdnZXIoYS5FdmVudCgiaGlkZGVuLmJzLmRyb3Bkb3duIixmKSkpKSl9KSl9ZnVuY3Rpb24gZChiKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGM9YSh0aGlzKSxkPWMuZGF0YSgiYnMuZHJvcGRvd24iKTtkfHxjLmRhdGEoImJzLmRyb3Bkb3duIixkPW5ldyBnKHRoaXMpKSwic3RyaW5nIj09dHlwZW9mIGImJmRbYl0uY2FsbChjKX0pfXZhciBlPSIuZHJvcGRvd24tYmFja2Ryb3AiLGY9J1tkYXRhLXRvZ2dsZT0iZHJvcGRvd24iXScsZz1mdW5jdGlvbihiKXthKGIpLm9uKCJjbGljay5icy5kcm9wZG93biIsdGhpcy50b2dnbGUpfTtnLlZFUlNJT049IjMuMy43IixnLnByb3RvdHlwZS50b2dnbGU9ZnVuY3Rpb24oZCl7dmFyIGU9YSh0aGlzKTtpZighZS5pcygiLmRpc2FibGVkLCA6ZGlzYWJsZWQiKSl7dmFyIGY9YihlKSxnPWYuaGFzQ2xhc3MoIm9wZW4iKTtpZihjKCksIWcpeyJvbnRvdWNoc3RhcnQiaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiYhZi5jbG9zZXN0KCIubmF2YmFyLW5hdiIpLmxlbmd0aCYmYShkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuYWRkQ2xhc3MoImRyb3Bkb3duLWJhY2tkcm9wIikuaW5zZXJ0QWZ0ZXIoYSh0aGlzKSkub24oImNsaWNrIixjKTt2YXIgaD17cmVsYXRlZFRhcmdldDp0aGlzfTtpZihmLnRyaWdnZXIoZD1hLkV2ZW50KCJzaG93LmJzLmRyb3Bkb3duIixoKSksZC5pc0RlZmF1bHRQcmV2ZW50ZWQoKSlyZXR1cm47ZS50cmlnZ2VyKCJmb2N1cyIpLmF0dHIoImFyaWEtZXhwYW5kZWQiLCJ0cnVlIiksZi50b2dnbGVDbGFzcygib3BlbiIpLnRyaWdnZXIoYS5FdmVudCgic2hvd24uYnMuZHJvcGRvd24iLGgpKX1yZXR1cm4hMX19LGcucHJvdG90eXBlLmtleWRvd249ZnVuY3Rpb24oYyl7aWYoLygzOHw0MHwyN3wzMikvLnRlc3QoYy53aGljaCkmJiEvaW5wdXR8dGV4dGFyZWEvaS50ZXN0KGMudGFyZ2V0LnRhZ05hbWUpKXt2YXIgZD1hKHRoaXMpO2lmKGMucHJldmVudERlZmF1bHQoKSxjLnN0b3BQcm9wYWdhdGlvbigpLCFkLmlzKCIuZGlzYWJsZWQsIDpkaXNhYmxlZCIpKXt2YXIgZT1iKGQpLGc9ZS5oYXNDbGFzcygib3BlbiIpO2lmKCFnJiYyNyE9Yy53aGljaHx8ZyYmMjc9PWMud2hpY2gpcmV0dXJuIDI3PT1jLndoaWNoJiZlLmZpbmQoZikudHJpZ2dlcigiZm9jdXMiKSxkLnRyaWdnZXIoImNsaWNrIik7dmFyIGg9IiBsaTpub3QoLmRpc2FibGVkKTp2aXNpYmxlIGEiLGk9ZS5maW5kKCIuZHJvcGRvd24tbWVudSIraCk7aWYoaS5sZW5ndGgpe3ZhciBqPWkuaW5kZXgoYy50YXJnZXQpOzM4PT1jLndoaWNoJiZqPjAmJmotLSw0MD09Yy53aGljaCYmajxpLmxlbmd0aC0xJiZqKyssfmp8fChqPTApLGkuZXEoaikudHJpZ2dlcigiZm9jdXMiKX19fX07dmFyIGg9YS5mbi5kcm9wZG93bjthLmZuLmRyb3Bkb3duPWQsYS5mbi5kcm9wZG93bi5Db25zdHJ1Y3Rvcj1nLGEuZm4uZHJvcGRvd24ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBhLmZuLmRyb3Bkb3duPWgsdGhpc30sYShkb2N1bWVudCkub24oImNsaWNrLmJzLmRyb3Bkb3duLmRhdGEtYXBpIixjKS5vbigiY2xpY2suYnMuZHJvcGRvd24uZGF0YS1hcGkiLCIuZHJvcGRvd24gZm9ybSIsZnVuY3Rpb24oYSl7YS5zdG9wUHJvcGFnYXRpb24oKX0pLm9uKCJjbGljay5icy5kcm9wZG93bi5kYXRhLWFwaSIsZixnLnByb3RvdHlwZS50b2dnbGUpLm9uKCJrZXlkb3duLmJzLmRyb3Bkb3duLmRhdGEtYXBpIixmLGcucHJvdG90eXBlLmtleWRvd24pLm9uKCJrZXlkb3duLmJzLmRyb3Bkb3duLmRhdGEtYXBpIiwiLmRyb3Bkb3duLW1lbnUiLGcucHJvdG90eXBlLmtleWRvd24pfShqUXVlcnkpLCtmdW5jdGlvbihhKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gYihiLGQpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT1hKHRoaXMpLGY9ZS5kYXRhKCJicy5tb2RhbCIpLGc9YS5leHRlbmQoe30sYy5ERUZBVUxUUyxlLmRhdGEoKSwib2JqZWN0Ij09dHlwZW9mIGImJmIpO2Z8fGUuZGF0YSgiYnMubW9kYWwiLGY9bmV3IGModGhpcyxnKSksInN0cmluZyI9PXR5cGVvZiBiP2ZbYl0oZCk6Zy5zaG93JiZmLnNob3coZCl9KX12YXIgYz1mdW5jdGlvbihiLGMpe3RoaXMub3B0aW9ucz1jLHRoaXMuJGJvZHk9YShkb2N1bWVudC5ib2R5KSx0aGlzLiRlbGVtZW50PWEoYiksdGhpcy4kZGlhbG9nPXRoaXMuJGVsZW1lbnQuZmluZCgiLm1vZGFsLWRpYWxvZyIpLHRoaXMuJGJhY2tkcm9wPW51bGwsdGhpcy5pc1Nob3duPW51bGwsdGhpcy5vcmlnaW5hbEJvZHlQYWQ9bnVsbCx0aGlzLnNjcm9sbGJhcldpZHRoPTAsdGhpcy5pZ25vcmVCYWNrZHJvcENsaWNrPSExLHRoaXMub3B0aW9ucy5yZW1vdGUmJnRoaXMuJGVsZW1lbnQuZmluZCgiLm1vZGFsLWNvbnRlbnQiKS5sb2FkKHRoaXMub3B0aW9ucy5yZW1vdGUsYS5wcm94eShmdW5jdGlvbigpe3RoaXMuJGVsZW1lbnQudHJpZ2dlcigibG9hZGVkLmJzLm1vZGFsIil9LHRoaXMpKX07Yy5WRVJTSU9OPSIzLjMuNyIsYy5UUkFOU0lUSU9OX0RVUkFUSU9OPTMwMCxjLkJBQ0tEUk9QX1RSQU5TSVRJT05fRFVSQVRJT049MTUwLGMuREVGQVVMVFM9e2JhY2tkcm9wOiEwLGtleWJvYXJkOiEwLHNob3c6ITB9LGMucHJvdG90eXBlLnRvZ2dsZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5pc1Nob3duP3RoaXMuaGlkZSgpOnRoaXMuc2hvdyhhKX0sYy5wcm90b3R5cGUuc2hvdz1mdW5jdGlvbihiKXt2YXIgZD10aGlzLGU9YS5FdmVudCgic2hvdy5icy5tb2RhbCIse3JlbGF0ZWRUYXJnZXQ6Yn0pO3RoaXMuJGVsZW1lbnQudHJpZ2dlcihlKSx0aGlzLmlzU2hvd258fGUuaXNEZWZhdWx0UHJldmVudGVkKCl8fCh0aGlzLmlzU2hvd249ITAsdGhpcy5jaGVja1Njcm9sbGJhcigpLHRoaXMuc2V0U2Nyb2xsYmFyKCksdGhpcy4kYm9keS5hZGRDbGFzcygibW9kYWwtb3BlbiIpLHRoaXMuZXNjYXBlKCksdGhpcy5yZXNpemUoKSx0aGlzLiRlbGVtZW50Lm9uKCJjbGljay5kaXNtaXNzLmJzLm1vZGFsIiwnW2RhdGEtZGlzbWlzcz0ibW9kYWwiXScsYS5wcm94eSh0aGlzLmhpZGUsdGhpcykpLHRoaXMuJGRpYWxvZy5vbigibW91c2Vkb3duLmRpc21pc3MuYnMubW9kYWwiLGZ1bmN0aW9uKCl7ZC4kZWxlbWVudC5vbmUoIm1vdXNldXAuZGlzbWlzcy5icy5tb2RhbCIsZnVuY3Rpb24oYil7YShiLnRhcmdldCkuaXMoZC4kZWxlbWVudCkmJihkLmlnbm9yZUJhY2tkcm9wQ2xpY2s9ITApfSl9KSx0aGlzLmJhY2tkcm9wKGZ1bmN0aW9uKCl7dmFyIGU9YS5zdXBwb3J0LnRyYW5zaXRpb24mJmQuJGVsZW1lbnQuaGFzQ2xhc3MoImZhZGUiKTtkLiRlbGVtZW50LnBhcmVudCgpLmxlbmd0aHx8ZC4kZWxlbWVudC5hcHBlbmRUbyhkLiRib2R5KSxkLiRlbGVtZW50LnNob3coKS5zY3JvbGxUb3AoMCksZC5hZGp1c3REaWFsb2coKSxlJiZkLiRlbGVtZW50WzBdLm9mZnNldFdpZHRoLGQuJGVsZW1lbnQuYWRkQ2xhc3MoImluIiksZC5lbmZvcmNlRm9jdXMoKTt2YXIgZj1hLkV2ZW50KCJzaG93bi5icy5tb2RhbCIse3JlbGF0ZWRUYXJnZXQ6Yn0pO2U/ZC4kZGlhbG9nLm9uZSgiYnNUcmFuc2l0aW9uRW5kIixmdW5jdGlvbigpe2QuJGVsZW1lbnQudHJpZ2dlcigiZm9jdXMiKS50cmlnZ2VyKGYpfSkuZW11bGF0ZVRyYW5zaXRpb25FbmQoYy5UUkFOU0lUSU9OX0RVUkFUSU9OKTpkLiRlbGVtZW50LnRyaWdnZXIoImZvY3VzIikudHJpZ2dlcihmKX0pKX0sYy5wcm90b3R5cGUuaGlkZT1mdW5jdGlvbihiKXtiJiZiLnByZXZlbnREZWZhdWx0KCksYj1hLkV2ZW50KCJoaWRlLmJzLm1vZGFsIiksdGhpcy4kZWxlbWVudC50cmlnZ2VyKGIpLHRoaXMuaXNTaG93biYmIWIuaXNEZWZhdWx0UHJldmVudGVkKCkmJih0aGlzLmlzU2hvd249ITEsdGhpcy5lc2NhcGUoKSx0aGlzLnJlc2l6ZSgpLGEoZG9jdW1lbnQpLm9mZigiZm9jdXNpbi5icy5tb2RhbCIpLHRoaXMuJGVsZW1lbnQucmVtb3ZlQ2xhc3MoImluIikub2ZmKCJjbGljay5kaXNtaXNzLmJzLm1vZGFsIikub2ZmKCJtb3VzZXVwLmRpc21pc3MuYnMubW9kYWwiKSx0aGlzLiRkaWFsb2cub2ZmKCJtb3VzZWRvd24uZGlzbWlzcy5icy5tb2RhbCIpLGEuc3VwcG9ydC50cmFuc2l0aW9uJiZ0aGlzLiRlbGVtZW50Lmhhc0NsYXNzKCJmYWRlIik/dGhpcy4kZWxlbWVudC5vbmUoImJzVHJhbnNpdGlvbkVuZCIsYS5wcm94eSh0aGlzLmhpZGVNb2RhbCx0aGlzKSkuZW11bGF0ZVRyYW5zaXRpb25FbmQoYy5UUkFOU0lUSU9OX0RVUkFUSU9OKTp0aGlzLmhpZGVNb2RhbCgpKX0sYy5wcm90b3R5cGUuZW5mb3JjZUZvY3VzPWZ1bmN0aW9uKCl7YShkb2N1bWVudCkub2ZmKCJmb2N1c2luLmJzLm1vZGFsIikub24oImZvY3VzaW4uYnMubW9kYWwiLGEucHJveHkoZnVuY3Rpb24oYSl7ZG9jdW1lbnQ9PT1hLnRhcmdldHx8dGhpcy4kZWxlbWVudFswXT09PWEudGFyZ2V0fHx0aGlzLiRlbGVtZW50LmhhcyhhLnRhcmdldCkubGVuZ3RofHx0aGlzLiRlbGVtZW50LnRyaWdnZXIoImZvY3VzIil9LHRoaXMpKX0sYy5wcm90b3R5cGUuZXNjYXBlPWZ1bmN0aW9uKCl7dGhpcy5pc1Nob3duJiZ0aGlzLm9wdGlvbnMua2V5Ym9hcmQ/dGhpcy4kZWxlbWVudC5vbigia2V5ZG93bi5kaXNtaXNzLmJzLm1vZGFsIixhLnByb3h5KGZ1bmN0aW9uKGEpezI3PT1hLndoaWNoJiZ0aGlzLmhpZGUoKX0sdGhpcykpOnRoaXMuaXNTaG93bnx8dGhpcy4kZWxlbWVudC5vZmYoImtleWRvd24uZGlzbWlzcy5icy5tb2RhbCIpfSxjLnByb3RvdHlwZS5yZXNpemU9ZnVuY3Rpb24oKXt0aGlzLmlzU2hvd24/YSh3aW5kb3cpLm9uKCJyZXNpemUuYnMubW9kYWwiLGEucHJveHkodGhpcy5oYW5kbGVVcGRhdGUsdGhpcykpOmEod2luZG93KS5vZmYoInJlc2l6ZS5icy5tb2RhbCIpfSxjLnByb3RvdHlwZS5oaWRlTW9kYWw9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuJGVsZW1lbnQuaGlkZSgpLHRoaXMuYmFja2Ryb3AoZnVuY3Rpb24oKXthLiRib2R5LnJlbW92ZUNsYXNzKCJtb2RhbC1vcGVuIiksYS5yZXNldEFkanVzdG1lbnRzKCksYS5yZXNldFNjcm9sbGJhcigpLGEuJGVsZW1lbnQudHJpZ2dlcigiaGlkZGVuLmJzLm1vZGFsIil9KX0sYy5wcm90b3R5cGUucmVtb3ZlQmFja2Ryb3A9ZnVuY3Rpb24oKXt0aGlzLiRiYWNrZHJvcCYmdGhpcy4kYmFja2Ryb3AucmVtb3ZlKCksdGhpcy4kYmFja2Ryb3A9bnVsbH0sYy5wcm90b3R5cGUuYmFja2Ryb3A9ZnVuY3Rpb24oYil7dmFyIGQ9dGhpcyxlPXRoaXMuJGVsZW1lbnQuaGFzQ2xhc3MoImZhZGUiKT8iZmFkZSI6IiI7aWYodGhpcy5pc1Nob3duJiZ0aGlzLm9wdGlvbnMuYmFja2Ryb3Ape3ZhciBmPWEuc3VwcG9ydC50cmFuc2l0aW9uJiZlO2lmKHRoaXMuJGJhY2tkcm9wPWEoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikpLmFkZENsYXNzKCJtb2RhbC1iYWNrZHJvcCAiK2UpLmFwcGVuZFRvKHRoaXMuJGJvZHkpLHRoaXMuJGVsZW1lbnQub24oImNsaWNrLmRpc21pc3MuYnMubW9kYWwiLGEucHJveHkoZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuaWdub3JlQmFja2Ryb3BDbGljaz92b2lkKHRoaXMuaWdub3JlQmFja2Ryb3BDbGljaz0hMSk6dm9pZChhLnRhcmdldD09PWEuY3VycmVudFRhcmdldCYmKCJzdGF0aWMiPT10aGlzLm9wdGlvbnMuYmFja2Ryb3A/dGhpcy4kZWxlbWVudFswXS5mb2N1cygpOnRoaXMuaGlkZSgpKSl9LHRoaXMpKSxmJiZ0aGlzLiRiYWNrZHJvcFswXS5vZmZzZXRXaWR0aCx0aGlzLiRiYWNrZHJvcC5hZGRDbGFzcygiaW4iKSwhYilyZXR1cm47Zj90aGlzLiRiYWNrZHJvcC5vbmUoImJzVHJhbnNpdGlvbkVuZCIsYikuZW11bGF0ZVRyYW5zaXRpb25FbmQoYy5CQUNLRFJPUF9UUkFOU0lUSU9OX0RVUkFUSU9OKTpiKCl9ZWxzZSBpZighdGhpcy5pc1Nob3duJiZ0aGlzLiRiYWNrZHJvcCl7dGhpcy4kYmFja2Ryb3AucmVtb3ZlQ2xhc3MoImluIik7dmFyIGc9ZnVuY3Rpb24oKXtkLnJlbW92ZUJhY2tkcm9wKCksYiYmYigpfTthLnN1cHBvcnQudHJhbnNpdGlvbiYmdGhpcy4kZWxlbWVudC5oYXNDbGFzcygiZmFkZSIpP3RoaXMuJGJhY2tkcm9wLm9uZSgiYnNUcmFuc2l0aW9uRW5kIixnKS5lbXVsYXRlVHJhbnNpdGlvbkVuZChjLkJBQ0tEUk9QX1RSQU5TSVRJT05fRFVSQVRJT04pOmcoKX1lbHNlIGImJmIoKX0sYy5wcm90b3R5cGUuaGFuZGxlVXBkYXRlPWZ1bmN0aW9uKCl7dGhpcy5hZGp1c3REaWFsb2coKX0sYy5wcm90b3R5cGUuYWRqdXN0RGlhbG9nPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy4kZWxlbWVudFswXS5zY3JvbGxIZWlnaHQ+ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodDt0aGlzLiRlbGVtZW50LmNzcyh7cGFkZGluZ0xlZnQ6IXRoaXMuYm9keUlzT3ZlcmZsb3dpbmcmJmE/dGhpcy5zY3JvbGxiYXJXaWR0aDoiIixwYWRkaW5nUmlnaHQ6dGhpcy5ib2R5SXNPdmVyZmxvd2luZyYmIWE/dGhpcy5zY3JvbGxiYXJXaWR0aDoiIn0pfSxjLnByb3RvdHlwZS5yZXNldEFkanVzdG1lbnRzPWZ1bmN0aW9uKCl7dGhpcy4kZWxlbWVudC5jc3Moe3BhZGRpbmdMZWZ0OiIiLHBhZGRpbmdSaWdodDoiIn0pfSxjLnByb3RvdHlwZS5jaGVja1Njcm9sbGJhcj1mdW5jdGlvbigpe3ZhciBhPXdpbmRvdy5pbm5lcldpZHRoO2lmKCFhKXt2YXIgYj1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7YT1iLnJpZ2h0LU1hdGguYWJzKGIubGVmdCl9dGhpcy5ib2R5SXNPdmVyZmxvd2luZz1kb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoPGEsdGhpcy5zY3JvbGxiYXJXaWR0aD10aGlzLm1lYXN1cmVTY3JvbGxiYXIoKX0sYy5wcm90b3R5cGUuc2V0U2Nyb2xsYmFyPWZ1bmN0aW9uKCl7dmFyIGE9cGFyc2VJbnQodGhpcy4kYm9keS5jc3MoInBhZGRpbmctcmlnaHQiKXx8MCwxMCk7dGhpcy5vcmlnaW5hbEJvZHlQYWQ9ZG9jdW1lbnQuYm9keS5zdHlsZS5wYWRkaW5nUmlnaHR8fCIiLHRoaXMuYm9keUlzT3ZlcmZsb3dpbmcmJnRoaXMuJGJvZHkuY3NzKCJwYWRkaW5nLXJpZ2h0IixhK3RoaXMuc2Nyb2xsYmFyV2lkdGgpfSxjLnByb3RvdHlwZS5yZXNldFNjcm9sbGJhcj1mdW5jdGlvbigpe3RoaXMuJGJvZHkuY3NzKCJwYWRkaW5nLXJpZ2h0Iix0aGlzLm9yaWdpbmFsQm9keVBhZCl9LGMucHJvdG90eXBlLm1lYXN1cmVTY3JvbGxiYXI9ZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTthLmNsYXNzTmFtZT0ibW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUiLHRoaXMuJGJvZHkuYXBwZW5kKGEpO3ZhciBiPWEub2Zmc2V0V2lkdGgtYS5jbGllbnRXaWR0aDtyZXR1cm4gdGhpcy4kYm9keVswXS5yZW1vdmVDaGlsZChhKSxifTt2YXIgZD1hLmZuLm1vZGFsO2EuZm4ubW9kYWw9YixhLmZuLm1vZGFsLkNvbnN0cnVjdG9yPWMsYS5mbi5tb2RhbC5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGEuZm4ubW9kYWw9ZCx0aGlzfSxhKGRvY3VtZW50KS5vbigiY2xpY2suYnMubW9kYWwuZGF0YS1hcGkiLCdbZGF0YS10b2dnbGU9Im1vZGFsIl0nLGZ1bmN0aW9uKGMpe3ZhciBkPWEodGhpcyksZT1kLmF0dHIoImhyZWYiKSxmPWEoZC5hdHRyKCJkYXRhLXRhcmdldCIpfHxlJiZlLnJlcGxhY2UoLy4qKD89I1teXHNdKyQpLywiIikpLGc9Zi5kYXRhKCJicy5tb2RhbCIpPyJ0b2dnbGUiOmEuZXh0ZW5kKHtyZW1vdGU6IS8jLy50ZXN0KGUpJiZlfSxmLmRhdGEoKSxkLmRhdGEoKSk7ZC5pcygiYSIpJiZjLnByZXZlbnREZWZhdWx0KCksZi5vbmUoInNob3cuYnMubW9kYWwiLGZ1bmN0aW9uKGEpe2EuaXNEZWZhdWx0UHJldmVudGVkKCl8fGYub25lKCJoaWRkZW4uYnMubW9kYWwiLGZ1bmN0aW9uKCl7ZC5pcygiOnZpc2libGUiKSYmZC50cmlnZ2VyKCJmb2N1cyIpfSl9KSxiLmNhbGwoZixnLHRoaXMpfSl9KGpRdWVyeSksK2Z1bmN0aW9uKGEpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBiKGIpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZD1hKHRoaXMpLGU9ZC5kYXRhKCJicy50b29sdGlwIiksZj0ib2JqZWN0Ij09dHlwZW9mIGImJmI7IWUmJi9kZXN0cm95fGhpZGUvLnRlc3QoYil8fChlfHxkLmRhdGEoImJzLnRvb2x0aXAiLGU9bmV3IGModGhpcyxmKSksInN0cmluZyI9PXR5cGVvZiBiJiZlW2JdKCkpfSl9dmFyIGM9ZnVuY3Rpb24oYSxiKXt0aGlzLnR5cGU9bnVsbCx0aGlzLm9wdGlvbnM9bnVsbCx0aGlzLmVuYWJsZWQ9bnVsbCx0aGlzLnRpbWVvdXQ9bnVsbCx0aGlzLmhvdmVyU3RhdGU9bnVsbCx0aGlzLiRlbGVtZW50PW51bGwsdGhpcy5pblN0YXRlPW51bGwsdGhpcy5pbml0KCJ0b29sdGlwIixhLGIpfTtjLlZFUlNJT049IjMuMy43IixjLlRSQU5TSVRJT05fRFVSQVRJT049MTUwLGMuREVGQVVMVFM9e2FuaW1hdGlvbjohMCxwbGFjZW1lbnQ6InRvcCIsc2VsZWN0b3I6ITEsdGVtcGxhdGU6JzxkaXYgY2xhc3M9InRvb2x0aXAiIHJvbGU9InRvb2x0aXAiPjxkaXYgY2xhc3M9InRvb2x0aXAtYXJyb3ciPjwvZGl2PjxkaXYgY2xhc3M9InRvb2x0aXAtaW5uZXIiPjwvZGl2PjwvZGl2PicsdHJpZ2dlcjoiaG92ZXIgZm9jdXMiLHRpdGxlOiIiLGRlbGF5OjAsaHRtbDohMSxjb250YWluZXI6ITEsdmlld3BvcnQ6e3NlbGVjdG9yOiJib2R5IixwYWRkaW5nOjB9fSxjLnByb3RvdHlwZS5pbml0PWZ1bmN0aW9uKGIsYyxkKXtpZih0aGlzLmVuYWJsZWQ9ITAsdGhpcy50eXBlPWIsdGhpcy4kZWxlbWVudD1hKGMpLHRoaXMub3B0aW9ucz10aGlzLmdldE9wdGlvbnMoZCksdGhpcy4kdmlld3BvcnQ9dGhpcy5vcHRpb25zLnZpZXdwb3J0JiZhKGEuaXNGdW5jdGlvbih0aGlzLm9wdGlvbnMudmlld3BvcnQpP3RoaXMub3B0aW9ucy52aWV3cG9ydC5jYWxsKHRoaXMsdGhpcy4kZWxlbWVudCk6dGhpcy5vcHRpb25zLnZpZXdwb3J0LnNlbGVjdG9yfHx0aGlzLm9wdGlvbnMudmlld3BvcnQpLHRoaXMuaW5TdGF0ZT17Y2xpY2s6ITEsaG92ZXI6ITEsZm9jdXM6ITF9LHRoaXMuJGVsZW1lbnRbMF1pbnN0YW5jZW9mIGRvY3VtZW50LmNvbnN0cnVjdG9yJiYhdGhpcy5vcHRpb25zLnNlbGVjdG9yKXRocm93IG5ldyBFcnJvcigiYHNlbGVjdG9yYCBvcHRpb24gbXVzdCBiZSBzcGVjaWZpZWQgd2hlbiBpbml0aWFsaXppbmcgIit0aGlzLnR5cGUrIiBvbiB0aGUgd2luZG93LmRvY3VtZW50IG9iamVjdCEiKTtmb3IodmFyIGU9dGhpcy5vcHRpb25zLnRyaWdnZXIuc3BsaXQoIiAiKSxmPWUubGVuZ3RoO2YtLTspe3ZhciBnPWVbZl07aWYoImNsaWNrIj09Zyl0aGlzLiRlbGVtZW50Lm9uKCJjbGljay4iK3RoaXMudHlwZSx0aGlzLm9wdGlvbnMuc2VsZWN0b3IsYS5wcm94eSh0aGlzLnRvZ2dsZSx0aGlzKSk7ZWxzZSBpZigibWFudWFsIiE9Zyl7dmFyIGg9ImhvdmVyIj09Zz8ibW91c2VlbnRlciI6ImZvY3VzaW4iLGk9ImhvdmVyIj09Zz8ibW91c2VsZWF2ZSI6ImZvY3Vzb3V0Ijt0aGlzLiRlbGVtZW50Lm9uKGgrIi4iK3RoaXMudHlwZSx0aGlzLm9wdGlvbnMuc2VsZWN0b3IsYS5wcm94eSh0aGlzLmVudGVyLHRoaXMpKSx0aGlzLiRlbGVtZW50Lm9uKGkrIi4iK3RoaXMudHlwZSx0aGlzLm9wdGlvbnMuc2VsZWN0b3IsYS5wcm94eSh0aGlzLmxlYXZlLHRoaXMpKX19dGhpcy5vcHRpb25zLnNlbGVjdG9yP3RoaXMuX29wdGlvbnM9YS5leHRlbmQoe30sdGhpcy5vcHRpb25zLHt0cmlnZ2VyOiJtYW51YWwiLHNlbGVjdG9yOiIifSk6dGhpcy5maXhUaXRsZSgpfSxjLnByb3RvdHlwZS5nZXREZWZhdWx0cz1mdW5jdGlvbigpe3JldHVybiBjLkRFRkFVTFRTfSxjLnByb3RvdHlwZS5nZXRPcHRpb25zPWZ1bmN0aW9uKGIpe3JldHVybiBiPWEuZXh0ZW5kKHt9LHRoaXMuZ2V0RGVmYXVsdHMoKSx0aGlzLiRlbGVtZW50LmRhdGEoKSxiKSxiLmRlbGF5JiYibnVtYmVyIj09dHlwZW9mIGIuZGVsYXkmJihiLmRlbGF5PXtzaG93OmIuZGVsYXksaGlkZTpiLmRlbGF5fSksYn0sYy5wcm90b3R5cGUuZ2V0RGVsZWdhdGVPcHRpb25zPWZ1bmN0aW9uKCl7dmFyIGI9e30sYz10aGlzLmdldERlZmF1bHRzKCk7cmV0dXJuIHRoaXMuX29wdGlvbnMmJmEuZWFjaCh0aGlzLl9vcHRpb25zLGZ1bmN0aW9uKGEsZCl7Y1thXSE9ZCYmKGJbYV09ZCl9KSxifSxjLnByb3RvdHlwZS5lbnRlcj1mdW5jdGlvbihiKXt2YXIgYz1iIGluc3RhbmNlb2YgdGhpcy5jb25zdHJ1Y3Rvcj9iOmEoYi5jdXJyZW50VGFyZ2V0KS5kYXRhKCJicy4iK3RoaXMudHlwZSk7cmV0dXJuIGN8fChjPW5ldyB0aGlzLmNvbnN0cnVjdG9yKGIuY3VycmVudFRhcmdldCx0aGlzLmdldERlbGVnYXRlT3B0aW9ucygpKSxhKGIuY3VycmVudFRhcmdldCkuZGF0YSgiYnMuIit0aGlzLnR5cGUsYykpLGIgaW5zdGFuY2VvZiBhLkV2ZW50JiYoYy5pblN0YXRlWyJmb2N1c2luIj09Yi50eXBlPyJmb2N1cyI6ImhvdmVyIl09ITApLGMudGlwKCkuaGFzQ2xhc3MoImluIil8fCJpbiI9PWMuaG92ZXJTdGF0ZT92b2lkKGMuaG92ZXJTdGF0ZT0iaW4iKTooY2xlYXJUaW1lb3V0KGMudGltZW91dCksYy5ob3ZlclN0YXRlPSJpbiIsYy5vcHRpb25zLmRlbGF5JiZjLm9wdGlvbnMuZGVsYXkuc2hvdz92b2lkKGMudGltZW91dD1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ImluIj09Yy5ob3ZlclN0YXRlJiZjLnNob3coKX0sYy5vcHRpb25zLmRlbGF5LnNob3cpKTpjLnNob3coKSl9LGMucHJvdG90eXBlLmlzSW5TdGF0ZVRydWU9ZnVuY3Rpb24oKXtmb3IodmFyIGEgaW4gdGhpcy5pblN0YXRlKWlmKHRoaXMuaW5TdGF0ZVthXSlyZXR1cm4hMDtyZXR1cm4hMX0sYy5wcm90b3R5cGUubGVhdmU9ZnVuY3Rpb24oYil7dmFyIGM9YiBpbnN0YW5jZW9mIHRoaXMuY29uc3RydWN0b3I/YjphKGIuY3VycmVudFRhcmdldCkuZGF0YSgiYnMuIit0aGlzLnR5cGUpO2lmKGN8fChjPW5ldyB0aGlzLmNvbnN0cnVjdG9yKGIuY3VycmVudFRhcmdldCx0aGlzLmdldERlbGVnYXRlT3B0aW9ucygpKSxhKGIuY3VycmVudFRhcmdldCkuZGF0YSgiYnMuIit0aGlzLnR5cGUsYykpLGIgaW5zdGFuY2VvZiBhLkV2ZW50JiYoYy5pblN0YXRlWyJmb2N1c291dCI9PWIudHlwZT8iZm9jdXMiOiJob3ZlciJdPSExKSwhYy5pc0luU3RhdGVUcnVlKCkpcmV0dXJuIGNsZWFyVGltZW91dChjLnRpbWVvdXQpLGMuaG92ZXJTdGF0ZT0ib3V0IixjLm9wdGlvbnMuZGVsYXkmJmMub3B0aW9ucy5kZWxheS5oaWRlP3ZvaWQoYy50aW1lb3V0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXsib3V0Ij09Yy5ob3ZlclN0YXRlJiZjLmhpZGUoKX0sYy5vcHRpb25zLmRlbGF5LmhpZGUpKTpjLmhpZGUoKX0sYy5wcm90b3R5cGUuc2hvdz1mdW5jdGlvbigpe3ZhciBiPWEuRXZlbnQoInNob3cuYnMuIit0aGlzLnR5cGUpO2lmKHRoaXMuaGFzQ29udGVudCgpJiZ0aGlzLmVuYWJsZWQpe3RoaXMuJGVsZW1lbnQudHJpZ2dlcihiKTt2YXIgZD1hLmNvbnRhaW5zKHRoaXMuJGVsZW1lbnRbMF0ub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsdGhpcy4kZWxlbWVudFswXSk7aWYoYi5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8IWQpcmV0dXJuO3ZhciBlPXRoaXMsZj10aGlzLnRpcCgpLGc9dGhpcy5nZXRVSUQodGhpcy50eXBlKTt0aGlzLnNldENvbnRlbnQoKSxmLmF0dHIoImlkIixnKSx0aGlzLiRlbGVtZW50LmF0dHIoImFyaWEtZGVzY3JpYmVkYnkiLGcpLHRoaXMub3B0aW9ucy5hbmltYXRpb24mJmYuYWRkQ2xhc3MoImZhZGUiKTt2YXIgaD0iZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5vcHRpb25zLnBsYWNlbWVudD90aGlzLm9wdGlvbnMucGxhY2VtZW50LmNhbGwodGhpcyxmWzBdLHRoaXMuJGVsZW1lbnRbMF0pOnRoaXMub3B0aW9ucy5wbGFjZW1lbnQsaT0vXHM/YXV0bz9ccz8vaSxqPWkudGVzdChoKTtqJiYoaD1oLnJlcGxhY2UoaSwiIil8fCJ0b3AiKSxmLmRldGFjaCgpLmNzcyh7dG9wOjAsbGVmdDowLGRpc3BsYXk6ImJsb2NrIn0pLmFkZENsYXNzKGgpLmRhdGEoImJzLiIrdGhpcy50eXBlLHRoaXMpLHRoaXMub3B0aW9ucy5jb250YWluZXI/Zi5hcHBlbmRUbyh0aGlzLm9wdGlvbnMuY29udGFpbmVyKTpmLmluc2VydEFmdGVyKHRoaXMuJGVsZW1lbnQpLHRoaXMuJGVsZW1lbnQudHJpZ2dlcigiaW5zZXJ0ZWQuYnMuIit0aGlzLnR5cGUpO3ZhciBrPXRoaXMuZ2V0UG9zaXRpb24oKSxsPWZbMF0ub2Zmc2V0V2lkdGgsbT1mWzBdLm9mZnNldEhlaWdodDtpZihqKXt2YXIgbj1oLG89dGhpcy5nZXRQb3NpdGlvbih0aGlzLiR2aWV3cG9ydCk7aD0iYm90dG9tIj09aCYmay5ib3R0b20rbT5vLmJvdHRvbT8idG9wIjoidG9wIj09aCYmay50b3AtbTxvLnRvcD8iYm90dG9tIjoicmlnaHQiPT1oJiZrLnJpZ2h0K2w+by53aWR0aD8ibGVmdCI6ImxlZnQiPT1oJiZrLmxlZnQtbDxvLmxlZnQ/InJpZ2h0IjpoLGYucmVtb3ZlQ2xhc3MobikuYWRkQ2xhc3MoaCl9dmFyIHA9dGhpcy5nZXRDYWxjdWxhdGVkT2Zmc2V0KGgsayxsLG0pO3RoaXMuYXBwbHlQbGFjZW1lbnQocCxoKTt2YXIgcT1mdW5jdGlvbigpe3ZhciBhPWUuaG92ZXJTdGF0ZTtlLiRlbGVtZW50LnRyaWdnZXIoInNob3duLmJzLiIrZS50eXBlKSxlLmhvdmVyU3RhdGU9bnVsbCwib3V0Ij09YSYmZS5sZWF2ZShlKX07YS5zdXBwb3J0LnRyYW5zaXRpb24mJnRoaXMuJHRpcC5oYXNDbGFzcygiZmFkZSIpP2Yub25lKCJic1RyYW5zaXRpb25FbmQiLHEpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKGMuVFJBTlNJVElPTl9EVVJBVElPTik6cSgpfX0sYy5wcm90b3R5cGUuYXBwbHlQbGFjZW1lbnQ9ZnVuY3Rpb24oYixjKXt2YXIgZD10aGlzLnRpcCgpLGU9ZFswXS5vZmZzZXRXaWR0aCxmPWRbMF0ub2Zmc2V0SGVpZ2h0LGc9cGFyc2VJbnQoZC5jc3MoIm1hcmdpbi10b3AiKSwxMCksaD1wYXJzZUludChkLmNzcygibWFyZ2luLWxlZnQiKSwxMCk7aXNOYU4oZykmJihnPTApLGlzTmFOKGgpJiYoaD0wKSxiLnRvcCs9ZyxiLmxlZnQrPWgsYS5vZmZzZXQuc2V0T2Zmc2V0KGRbMF0sYS5leHRlbmQoe3VzaW5nOmZ1bmN0aW9uKGEpe2QuY3NzKHt0b3A6TWF0aC5yb3VuZChhLnRvcCksbGVmdDpNYXRoLnJvdW5kKGEubGVmdCl9KX19LGIpLDApLGQuYWRkQ2xhc3MoImluIik7dmFyIGk9ZFswXS5vZmZzZXRXaWR0aCxqPWRbMF0ub2Zmc2V0SGVpZ2h0OyJ0b3AiPT1jJiZqIT1mJiYoYi50b3A9Yi50b3ArZi1qKTt2YXIgaz10aGlzLmdldFZpZXdwb3J0QWRqdXN0ZWREZWx0YShjLGIsaSxqKTtrLmxlZnQ/Yi5sZWZ0Kz1rLmxlZnQ6Yi50b3ArPWsudG9wO3ZhciBsPS90b3B8Ym90dG9tLy50ZXN0KGMpLG09bD8yKmsubGVmdC1lK2k6MiprLnRvcC1mK2osbj1sPyJvZmZzZXRXaWR0aCI6Im9mZnNldEhlaWdodCI7ZC5vZmZzZXQoYiksdGhpcy5yZXBsYWNlQXJyb3cobSxkWzBdW25dLGwpfSxjLnByb3RvdHlwZS5yZXBsYWNlQXJyb3c9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuYXJyb3coKS5jc3MoYz8ibGVmdCI6InRvcCIsNTAqKDEtYS9iKSsiJSIpLmNzcyhjPyJ0b3AiOiJsZWZ0IiwiIil9LGMucHJvdG90eXBlLnNldENvbnRlbnQ9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLnRpcCgpLGI9dGhpcy5nZXRUaXRsZSgpO2EuZmluZCgiLnRvb2x0aXAtaW5uZXIiKVt0aGlzLm9wdGlvbnMuaHRtbD8iaHRtbCI6InRleHQiXShiKSxhLnJlbW92ZUNsYXNzKCJmYWRlIGluIHRvcCBib3R0b20gbGVmdCByaWdodCIpfSxjLnByb3RvdHlwZS5oaWRlPWZ1bmN0aW9uKGIpe2Z1bmN0aW9uIGQoKXsiaW4iIT1lLmhvdmVyU3RhdGUmJmYuZGV0YWNoKCksZS4kZWxlbWVudCYmZS4kZWxlbWVudC5yZW1vdmVBdHRyKCJhcmlhLWRlc2NyaWJlZGJ5IikudHJpZ2dlcigiaGlkZGVuLmJzLiIrZS50eXBlKSxiJiZiKCl9dmFyIGU9dGhpcyxmPWEodGhpcy4kdGlwKSxnPWEuRXZlbnQoImhpZGUuYnMuIit0aGlzLnR5cGUpO2lmKHRoaXMuJGVsZW1lbnQudHJpZ2dlcihnKSwhZy5pc0RlZmF1bHRQcmV2ZW50ZWQoKSlyZXR1cm4gZi5yZW1vdmVDbGFzcygiaW4iKSxhLnN1cHBvcnQudHJhbnNpdGlvbiYmZi5oYXNDbGFzcygiZmFkZSIpP2Yub25lKCJic1RyYW5zaXRpb25FbmQiLGQpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKGMuVFJBTlNJVElPTl9EVVJBVElPTik6ZCgpLHRoaXMuaG92ZXJTdGF0ZT1udWxsLHRoaXN9LGMucHJvdG90eXBlLmZpeFRpdGxlPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy4kZWxlbWVudDsoYS5hdHRyKCJ0aXRsZSIpfHwic3RyaW5nIiE9dHlwZW9mIGEuYXR0cigiZGF0YS1vcmlnaW5hbC10aXRsZSIpKSYmYS5hdHRyKCJkYXRhLW9yaWdpbmFsLXRpdGxlIixhLmF0dHIoInRpdGxlIil8fCIiKS5hdHRyKCJ0aXRsZSIsIiIpfSxjLnByb3RvdHlwZS5oYXNDb250ZW50PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0VGl0bGUoKX0sYy5wcm90b3R5cGUuZ2V0UG9zaXRpb249ZnVuY3Rpb24oYil7Yj1ifHx0aGlzLiRlbGVtZW50O3ZhciBjPWJbMF0sZD0iQk9EWSI9PWMudGFnTmFtZSxlPWMuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7bnVsbD09ZS53aWR0aCYmKGU9YS5leHRlbmQoe30sZSx7d2lkdGg6ZS5yaWdodC1lLmxlZnQsaGVpZ2h0OmUuYm90dG9tLWUudG9wfSkpO3ZhciBmPXdpbmRvdy5TVkdFbGVtZW50JiZjIGluc3RhbmNlb2Ygd2luZG93LlNWR0VsZW1lbnQsZz1kP3t0b3A6MCxsZWZ0OjB9OmY/bnVsbDpiLm9mZnNldCgpLGg9e3Njcm9sbDpkP2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3B8fGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wOmIuc2Nyb2xsVG9wKCl9LGk9ZD97d2lkdGg6YSh3aW5kb3cpLndpZHRoKCksaGVpZ2h0OmEod2luZG93KS5oZWlnaHQoKX06bnVsbDtyZXR1cm4gYS5leHRlbmQoe30sZSxoLGksZyl9LGMucHJvdG90eXBlLmdldENhbGN1bGF0ZWRPZmZzZXQ9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuImJvdHRvbSI9PWE/e3RvcDpiLnRvcCtiLmhlaWdodCxsZWZ0OmIubGVmdCtiLndpZHRoLzItYy8yfToidG9wIj09YT97dG9wOmIudG9wLWQsbGVmdDpiLmxlZnQrYi53aWR0aC8yLWMvMn06ImxlZnQiPT1hP3t0b3A6Yi50b3ArYi5oZWlnaHQvMi1kLzIsbGVmdDpiLmxlZnQtY306e3RvcDpiLnRvcCtiLmhlaWdodC8yLWQvMixsZWZ0OmIubGVmdCtiLndpZHRofX0sYy5wcm90b3R5cGUuZ2V0Vmlld3BvcnRBZGp1c3RlZERlbHRhPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPXt0b3A6MCxsZWZ0OjB9O2lmKCF0aGlzLiR2aWV3cG9ydClyZXR1cm4gZTt2YXIgZj10aGlzLm9wdGlvbnMudmlld3BvcnQmJnRoaXMub3B0aW9ucy52aWV3cG9ydC5wYWRkaW5nfHwwLGc9dGhpcy5nZXRQb3NpdGlvbih0aGlzLiR2aWV3cG9ydCk7aWYoL3JpZ2h0fGxlZnQvLnRlc3QoYSkpe3ZhciBoPWIudG9wLWYtZy5zY3JvbGwsaT1iLnRvcCtmLWcuc2Nyb2xsK2Q7aDxnLnRvcD9lLnRvcD1nLnRvcC1oOmk+Zy50b3ArZy5oZWlnaHQmJihlLnRvcD1nLnRvcCtnLmhlaWdodC1pKX1lbHNle3ZhciBqPWIubGVmdC1mLGs9Yi5sZWZ0K2YrYztqPGcubGVmdD9lLmxlZnQ9Zy5sZWZ0LWo6az5nLnJpZ2h0JiYoZS5sZWZ0PWcubGVmdCtnLndpZHRoLWspfXJldHVybiBlfSxjLnByb3RvdHlwZS5nZXRUaXRsZT1mdW5jdGlvbigpe3ZhciBhLGI9dGhpcy4kZWxlbWVudCxjPXRoaXMub3B0aW9ucztyZXR1cm4gYT1iLmF0dHIoImRhdGEtb3JpZ2luYWwtdGl0bGUiKXx8KCJmdW5jdGlvbiI9PXR5cGVvZiBjLnRpdGxlP2MudGl0bGUuY2FsbChiWzBdKTpjLnRpdGxlKX0sYy5wcm90b3R5cGUuZ2V0VUlEPWZ1bmN0aW9uKGEpe2RvIGErPX5+KDFlNipNYXRoLnJhbmRvbSgpKTt3aGlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZChhKSk7cmV0dXJuIGF9LGMucHJvdG90eXBlLnRpcD1mdW5jdGlvbigpe2lmKCF0aGlzLiR0aXAmJih0aGlzLiR0aXA9YSh0aGlzLm9wdGlvbnMudGVtcGxhdGUpLDEhPXRoaXMuJHRpcC5sZW5ndGgpKXRocm93IG5ldyBFcnJvcih0aGlzLnR5cGUrIiBgdGVtcGxhdGVgIG9wdGlvbiBtdXN0IGNvbnNpc3Qgb2YgZXhhY3RseSAxIHRvcC1sZXZlbCBlbGVtZW50ISIpO3JldHVybiB0aGlzLiR0aXB9LGMucHJvdG90eXBlLmFycm93PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJGFycm93PXRoaXMuJGFycm93fHx0aGlzLnRpcCgpLmZpbmQoIi50b29sdGlwLWFycm93Iil9LGMucHJvdG90eXBlLmVuYWJsZT1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hMH0sYy5wcm90b3R5cGUuZGlzYWJsZT1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hMX0sYy5wcm90b3R5cGUudG9nZ2xlRW5hYmxlZD1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hdGhpcy5lbmFibGVkfSxjLnByb3RvdHlwZS50b2dnbGU9ZnVuY3Rpb24oYil7dmFyIGM9dGhpcztiJiYoYz1hKGIuY3VycmVudFRhcmdldCkuZGF0YSgiYnMuIit0aGlzLnR5cGUpLGN8fChjPW5ldyB0aGlzLmNvbnN0cnVjdG9yKGIuY3VycmVudFRhcmdldCx0aGlzLmdldERlbGVnYXRlT3B0aW9ucygpKSxhKGIuY3VycmVudFRhcmdldCkuZGF0YSgiYnMuIit0aGlzLnR5cGUsYykpKSxiPyhjLmluU3RhdGUuY2xpY2s9IWMuaW5TdGF0ZS5jbGljayxjLmlzSW5TdGF0ZVRydWUoKT9jLmVudGVyKGMpOmMubGVhdmUoYykpOmMudGlwKCkuaGFzQ2xhc3MoImluIik/Yy5sZWF2ZShjKTpjLmVudGVyKGMpfSxjLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dmFyIGE9dGhpcztjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0KSx0aGlzLmhpZGUoZnVuY3Rpb24oKXthLiRlbGVtZW50Lm9mZigiLiIrYS50eXBlKS5yZW1vdmVEYXRhKCJicy4iK2EudHlwZSksYS4kdGlwJiZhLiR0aXAuZGV0YWNoKCksYS4kdGlwPW51bGwsYS4kYXJyb3c9bnVsbCxhLiR2aWV3cG9ydD1udWxsLGEuJGVsZW1lbnQ9bnVsbH0pfTt2YXIgZD1hLmZuLnRvb2x0aXA7YS5mbi50b29sdGlwPWIsYS5mbi50b29sdGlwLkNvbnN0cnVjdG9yPWMsYS5mbi50b29sdGlwLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gYS5mbi50b29sdGlwPWQsdGhpc319KGpRdWVyeSksK2Z1bmN0aW9uKGEpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBiKGIpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZD1hKHRoaXMpLGU9ZC5kYXRhKCJicy5wb3BvdmVyIiksZj0ib2JqZWN0Ij09dHlwZW9mIGImJmI7IWUmJi9kZXN0cm95fGhpZGUvLnRlc3QoYil8fChlfHxkLmRhdGEoImJzLnBvcG92ZXIiLGU9bmV3IGModGhpcyxmKSksInN0cmluZyI9PXR5cGVvZiBiJiZlW2JdKCkpfSl9dmFyIGM9ZnVuY3Rpb24oYSxiKXt0aGlzLmluaXQoInBvcG92ZXIiLGEsYil9O2lmKCFhLmZuLnRvb2x0aXApdGhyb3cgbmV3IEVycm9yKCJQb3BvdmVyIHJlcXVpcmVzIHRvb2x0aXAuanMiKTtjLlZFUlNJT049IjMuMy43IixjLkRFRkFVTFRTPWEuZXh0ZW5kKHt9LGEuZm4udG9vbHRpcC5Db25zdHJ1Y3Rvci5ERUZBVUxUUyx7cGxhY2VtZW50OiJyaWdodCIsdHJpZ2dlcjoiY2xpY2siLGNvbnRlbnQ6IiIsdGVtcGxhdGU6JzxkaXYgY2xhc3M9InBvcG92ZXIiIHJvbGU9InRvb2x0aXAiPjxkaXYgY2xhc3M9ImFycm93Ij48L2Rpdj48aDMgY2xhc3M9InBvcG92ZXItdGl0bGUiPjwvaDM+PGRpdiBjbGFzcz0icG9wb3Zlci1jb250ZW50Ij48L2Rpdj48L2Rpdj4nfSksYy5wcm90b3R5cGU9YS5leHRlbmQoe30sYS5mbi50b29sdGlwLkNvbnN0cnVjdG9yLnByb3RvdHlwZSksYy5wcm90b3R5cGUuY29uc3RydWN0b3I9YyxjLnByb3RvdHlwZS5nZXREZWZhdWx0cz1mdW5jdGlvbigpe3JldHVybiBjLkRFRkFVTFRTfSxjLnByb3RvdHlwZS5zZXRDb250ZW50PWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy50aXAoKSxiPXRoaXMuZ2V0VGl0bGUoKSxjPXRoaXMuZ2V0Q29udGVudCgpO2EuZmluZCgiLnBvcG92ZXItdGl0bGUiKVt0aGlzLm9wdGlvbnMuaHRtbD8iaHRtbCI6InRleHQiXShiKSxhLmZpbmQoIi5wb3BvdmVyLWNvbnRlbnQiKS5jaGlsZHJlbigpLmRldGFjaCgpLmVuZCgpW3RoaXMub3B0aW9ucy5odG1sPyJzdHJpbmciPT10eXBlb2YgYz8iaHRtbCI6ImFwcGVuZCI6InRleHQiXShjKSxhLnJlbW92ZUNsYXNzKCJmYWRlIHRvcCBib3R0b20gbGVmdCByaWdodCBpbiIpLGEuZmluZCgiLnBvcG92ZXItdGl0bGUiKS5odG1sKCl8fGEuZmluZCgiLnBvcG92ZXItdGl0bGUiKS5oaWRlKCl9LGMucHJvdG90eXBlLmhhc0NvbnRlbnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXRUaXRsZSgpfHx0aGlzLmdldENvbnRlbnQoKX0sYy5wcm90b3R5cGUuZ2V0Q29udGVudD1mdW5jdGlvbigpe3ZhciBhPXRoaXMuJGVsZW1lbnQsYj10aGlzLm9wdGlvbnM7cmV0dXJuIGEuYXR0cigiZGF0YS1jb250ZW50Iil8fCgiZnVuY3Rpb24iPT10eXBlb2YgYi5jb250ZW50P2IuY29udGVudC5jYWxsKGFbMF0pOmIuY29udGVudCl9LGMucHJvdG90eXBlLmFycm93PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJGFycm93PXRoaXMuJGFycm93fHx0aGlzLnRpcCgpLmZpbmQoIi5hcnJvdyIpfTt2YXIgZD1hLmZuLnBvcG92ZXI7YS5mbi5wb3BvdmVyPWIsYS5mbi5wb3BvdmVyLkNvbnN0cnVjdG9yPWMsYS5mbi5wb3BvdmVyLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gYS5mbi5wb3BvdmVyPWQsdGhpc319KGpRdWVyeSksK2Z1bmN0aW9uKGEpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBiKGMsZCl7dGhpcy4kYm9keT1hKGRvY3VtZW50LmJvZHkpLHRoaXMuJHNjcm9sbEVsZW1lbnQ9YShhKGMpLmlzKGRvY3VtZW50LmJvZHkpP3dpbmRvdzpjKSx0aGlzLm9wdGlvbnM9YS5leHRlbmQoe30sYi5ERUZBVUxUUyxkKSx0aGlzLnNlbGVjdG9yPSh0aGlzLm9wdGlvbnMudGFyZ2V0fHwiIikrIiAubmF2IGxpID4gYSIsdGhpcy5vZmZzZXRzPVtdLHRoaXMudGFyZ2V0cz1bXSx0aGlzLmFjdGl2ZVRhcmdldD1udWxsLHRoaXMuc2Nyb2xsSGVpZ2h0PTAsdGhpcy4kc2Nyb2xsRWxlbWVudC5vbigic2Nyb2xsLmJzLnNjcm9sbHNweSIsYS5wcm94eSh0aGlzLnByb2Nlc3MsdGhpcykpLHRoaXMucmVmcmVzaCgpLHRoaXMucHJvY2VzcygpfWZ1bmN0aW9uIGMoYyl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBkPWEodGhpcyksZT1kLmRhdGEoImJzLnNjcm9sbHNweSIpLGY9Im9iamVjdCI9PXR5cGVvZiBjJiZjO2V8fGQuZGF0YSgiYnMuc2Nyb2xsc3B5IixlPW5ldyBiKHRoaXMsZikpLCJzdHJpbmciPT10eXBlb2YgYyYmZVtjXSgpfSl9Yi5WRVJTSU9OPSIzLjMuNyIsYi5ERUZBVUxUUz17b2Zmc2V0OjEwfSxiLnByb3RvdHlwZS5nZXRTY3JvbGxIZWlnaHQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kc2Nyb2xsRWxlbWVudFswXS5zY3JvbGxIZWlnaHR8fE1hdGgubWF4KHRoaXMuJGJvZHlbMF0uc2Nyb2xsSGVpZ2h0LGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxIZWlnaHQpfSxiLnByb3RvdHlwZS5yZWZyZXNoPWZ1bmN0aW9uKCl7dmFyIGI9dGhpcyxjPSJvZmZzZXQiLGQ9MDt0aGlzLm9mZnNldHM9W10sdGhpcy50YXJnZXRzPVtdLHRoaXMuc2Nyb2xsSGVpZ2h0PXRoaXMuZ2V0U2Nyb2xsSGVpZ2h0KCksYS5pc1dpbmRvdyh0aGlzLiRzY3JvbGxFbGVtZW50WzBdKXx8KGM9InBvc2l0aW9uIixkPXRoaXMuJHNjcm9sbEVsZW1lbnQuc2Nyb2xsVG9wKCkpLHRoaXMuJGJvZHkuZmluZCh0aGlzLnNlbGVjdG9yKS5tYXAoZnVuY3Rpb24oKXt2YXIgYj1hKHRoaXMpLGU9Yi5kYXRhKCJ0YXJnZXQiKXx8Yi5hdHRyKCJocmVmIiksZj0vXiMuLy50ZXN0KGUpJiZhKGUpO3JldHVybiBmJiZmLmxlbmd0aCYmZi5pcygiOnZpc2libGUiKSYmW1tmW2NdKCkudG9wK2QsZV1dfHxudWxsfSkuc29ydChmdW5jdGlvbihhLGIpe3JldHVybiBhWzBdLWJbMF19KS5lYWNoKGZ1bmN0aW9uKCl7Yi5vZmZzZXRzLnB1c2godGhpc1swXSksYi50YXJnZXRzLnB1c2godGhpc1sxXSl9KX0sYi5wcm90b3R5cGUucHJvY2Vzcz1mdW5jdGlvbigpe3ZhciBhLGI9dGhpcy4kc2Nyb2xsRWxlbWVudC5zY3JvbGxUb3AoKSt0aGlzLm9wdGlvbnMub2Zmc2V0LGM9dGhpcy5nZXRTY3JvbGxIZWlnaHQoKSxkPXRoaXMub3B0aW9ucy5vZmZzZXQrYy10aGlzLiRzY3JvbGxFbGVtZW50LmhlaWdodCgpLGU9dGhpcy5vZmZzZXRzLGY9dGhpcy50YXJnZXRzLGc9dGhpcy5hY3RpdmVUYXJnZXQ7aWYodGhpcy5zY3JvbGxIZWlnaHQhPWMmJnRoaXMucmVmcmVzaCgpLGI+PWQpcmV0dXJuIGchPShhPWZbZi5sZW5ndGgtMV0pJiZ0aGlzLmFjdGl2YXRlKGEpO2lmKGcmJmI8ZVswXSlyZXR1cm4gdGhpcy5hY3RpdmVUYXJnZXQ9bnVsbCx0aGlzLmNsZWFyKCk7Zm9yKGE9ZS5sZW5ndGg7YS0tOylnIT1mW2FdJiZiPj1lW2FdJiYodm9pZCAwPT09ZVthKzFdfHxiPGVbYSsxXSkmJnRoaXMuYWN0aXZhdGUoZlthXSl9LGIucHJvdG90eXBlLmFjdGl2YXRlPWZ1bmN0aW9uKGIpewp0aGlzLmFjdGl2ZVRhcmdldD1iLHRoaXMuY2xlYXIoKTt2YXIgYz10aGlzLnNlbGVjdG9yKydbZGF0YS10YXJnZXQ9IicrYisnIl0sJyt0aGlzLnNlbGVjdG9yKydbaHJlZj0iJytiKyciXScsZD1hKGMpLnBhcmVudHMoImxpIikuYWRkQ2xhc3MoImFjdGl2ZSIpO2QucGFyZW50KCIuZHJvcGRvd24tbWVudSIpLmxlbmd0aCYmKGQ9ZC5jbG9zZXN0KCJsaS5kcm9wZG93biIpLmFkZENsYXNzKCJhY3RpdmUiKSksZC50cmlnZ2VyKCJhY3RpdmF0ZS5icy5zY3JvbGxzcHkiKX0sYi5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXthKHRoaXMuc2VsZWN0b3IpLnBhcmVudHNVbnRpbCh0aGlzLm9wdGlvbnMudGFyZ2V0LCIuYWN0aXZlIikucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpfTt2YXIgZD1hLmZuLnNjcm9sbHNweTthLmZuLnNjcm9sbHNweT1jLGEuZm4uc2Nyb2xsc3B5LkNvbnN0cnVjdG9yPWIsYS5mbi5zY3JvbGxzcHkubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBhLmZuLnNjcm9sbHNweT1kLHRoaXN9LGEod2luZG93KS5vbigibG9hZC5icy5zY3JvbGxzcHkuZGF0YS1hcGkiLGZ1bmN0aW9uKCl7YSgnW2RhdGEtc3B5PSJzY3JvbGwiXScpLmVhY2goZnVuY3Rpb24oKXt2YXIgYj1hKHRoaXMpO2MuY2FsbChiLGIuZGF0YSgpKX0pfSl9KGpRdWVyeSksK2Z1bmN0aW9uKGEpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBiKGIpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZD1hKHRoaXMpLGU9ZC5kYXRhKCJicy50YWIiKTtlfHxkLmRhdGEoImJzLnRhYiIsZT1uZXcgYyh0aGlzKSksInN0cmluZyI9PXR5cGVvZiBiJiZlW2JdKCl9KX12YXIgYz1mdW5jdGlvbihiKXt0aGlzLmVsZW1lbnQ9YShiKX07Yy5WRVJTSU9OPSIzLjMuNyIsYy5UUkFOU0lUSU9OX0RVUkFUSU9OPTE1MCxjLnByb3RvdHlwZS5zaG93PWZ1bmN0aW9uKCl7dmFyIGI9dGhpcy5lbGVtZW50LGM9Yi5jbG9zZXN0KCJ1bDpub3QoLmRyb3Bkb3duLW1lbnUpIiksZD1iLmRhdGEoInRhcmdldCIpO2lmKGR8fChkPWIuYXR0cigiaHJlZiIpLGQ9ZCYmZC5yZXBsYWNlKC8uKig/PSNbXlxzXSokKS8sIiIpKSwhYi5wYXJlbnQoImxpIikuaGFzQ2xhc3MoImFjdGl2ZSIpKXt2YXIgZT1jLmZpbmQoIi5hY3RpdmU6bGFzdCBhIiksZj1hLkV2ZW50KCJoaWRlLmJzLnRhYiIse3JlbGF0ZWRUYXJnZXQ6YlswXX0pLGc9YS5FdmVudCgic2hvdy5icy50YWIiLHtyZWxhdGVkVGFyZ2V0OmVbMF19KTtpZihlLnRyaWdnZXIoZiksYi50cmlnZ2VyKGcpLCFnLmlzRGVmYXVsdFByZXZlbnRlZCgpJiYhZi5pc0RlZmF1bHRQcmV2ZW50ZWQoKSl7dmFyIGg9YShkKTt0aGlzLmFjdGl2YXRlKGIuY2xvc2VzdCgibGkiKSxjKSx0aGlzLmFjdGl2YXRlKGgsaC5wYXJlbnQoKSxmdW5jdGlvbigpe2UudHJpZ2dlcih7dHlwZToiaGlkZGVuLmJzLnRhYiIscmVsYXRlZFRhcmdldDpiWzBdfSksYi50cmlnZ2VyKHt0eXBlOiJzaG93bi5icy50YWIiLHJlbGF0ZWRUYXJnZXQ6ZVswXX0pfSl9fX0sYy5wcm90b3R5cGUuYWN0aXZhdGU9ZnVuY3Rpb24oYixkLGUpe2Z1bmN0aW9uIGYoKXtnLnJlbW92ZUNsYXNzKCJhY3RpdmUiKS5maW5kKCI+IC5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKS5lbmQoKS5maW5kKCdbZGF0YS10b2dnbGU9InRhYiJdJykuYXR0cigiYXJpYS1leHBhbmRlZCIsITEpLGIuYWRkQ2xhc3MoImFjdGl2ZSIpLmZpbmQoJ1tkYXRhLXRvZ2dsZT0idGFiIl0nKS5hdHRyKCJhcmlhLWV4cGFuZGVkIiwhMCksaD8oYlswXS5vZmZzZXRXaWR0aCxiLmFkZENsYXNzKCJpbiIpKTpiLnJlbW92ZUNsYXNzKCJmYWRlIiksYi5wYXJlbnQoIi5kcm9wZG93bi1tZW51IikubGVuZ3RoJiZiLmNsb3Nlc3QoImxpLmRyb3Bkb3duIikuYWRkQ2xhc3MoImFjdGl2ZSIpLmVuZCgpLmZpbmQoJ1tkYXRhLXRvZ2dsZT0idGFiIl0nKS5hdHRyKCJhcmlhLWV4cGFuZGVkIiwhMCksZSYmZSgpfXZhciBnPWQuZmluZCgiPiAuYWN0aXZlIiksaD1lJiZhLnN1cHBvcnQudHJhbnNpdGlvbiYmKGcubGVuZ3RoJiZnLmhhc0NsYXNzKCJmYWRlIil8fCEhZC5maW5kKCI+IC5mYWRlIikubGVuZ3RoKTtnLmxlbmd0aCYmaD9nLm9uZSgiYnNUcmFuc2l0aW9uRW5kIixmKS5lbXVsYXRlVHJhbnNpdGlvbkVuZChjLlRSQU5TSVRJT05fRFVSQVRJT04pOmYoKSxnLnJlbW92ZUNsYXNzKCJpbiIpfTt2YXIgZD1hLmZuLnRhYjthLmZuLnRhYj1iLGEuZm4udGFiLkNvbnN0cnVjdG9yPWMsYS5mbi50YWIubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBhLmZuLnRhYj1kLHRoaXN9O3ZhciBlPWZ1bmN0aW9uKGMpe2MucHJldmVudERlZmF1bHQoKSxiLmNhbGwoYSh0aGlzKSwic2hvdyIpfTthKGRvY3VtZW50KS5vbigiY2xpY2suYnMudGFiLmRhdGEtYXBpIiwnW2RhdGEtdG9nZ2xlPSJ0YWIiXScsZSkub24oImNsaWNrLmJzLnRhYi5kYXRhLWFwaSIsJ1tkYXRhLXRvZ2dsZT0icGlsbCJdJyxlKX0oalF1ZXJ5KSwrZnVuY3Rpb24oYSl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGIoYil7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBkPWEodGhpcyksZT1kLmRhdGEoImJzLmFmZml4IiksZj0ib2JqZWN0Ij09dHlwZW9mIGImJmI7ZXx8ZC5kYXRhKCJicy5hZmZpeCIsZT1uZXcgYyh0aGlzLGYpKSwic3RyaW5nIj09dHlwZW9mIGImJmVbYl0oKX0pfXZhciBjPWZ1bmN0aW9uKGIsZCl7dGhpcy5vcHRpb25zPWEuZXh0ZW5kKHt9LGMuREVGQVVMVFMsZCksdGhpcy4kdGFyZ2V0PWEodGhpcy5vcHRpb25zLnRhcmdldCkub24oInNjcm9sbC5icy5hZmZpeC5kYXRhLWFwaSIsYS5wcm94eSh0aGlzLmNoZWNrUG9zaXRpb24sdGhpcykpLm9uKCJjbGljay5icy5hZmZpeC5kYXRhLWFwaSIsYS5wcm94eSh0aGlzLmNoZWNrUG9zaXRpb25XaXRoRXZlbnRMb29wLHRoaXMpKSx0aGlzLiRlbGVtZW50PWEoYiksdGhpcy5hZmZpeGVkPW51bGwsdGhpcy51bnBpbj1udWxsLHRoaXMucGlubmVkT2Zmc2V0PW51bGwsdGhpcy5jaGVja1Bvc2l0aW9uKCl9O2MuVkVSU0lPTj0iMy4zLjciLGMuUkVTRVQ9ImFmZml4IGFmZml4LXRvcCBhZmZpeC1ib3R0b20iLGMuREVGQVVMVFM9e29mZnNldDowLHRhcmdldDp3aW5kb3d9LGMucHJvdG90eXBlLmdldFN0YXRlPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPXRoaXMuJHRhcmdldC5zY3JvbGxUb3AoKSxmPXRoaXMuJGVsZW1lbnQub2Zmc2V0KCksZz10aGlzLiR0YXJnZXQuaGVpZ2h0KCk7aWYobnVsbCE9YyYmInRvcCI9PXRoaXMuYWZmaXhlZClyZXR1cm4gZTxjJiYidG9wIjtpZigiYm90dG9tIj09dGhpcy5hZmZpeGVkKXJldHVybiBudWxsIT1jPyEoZSt0aGlzLnVucGluPD1mLnRvcCkmJiJib3R0b20iOiEoZStnPD1hLWQpJiYiYm90dG9tIjt2YXIgaD1udWxsPT10aGlzLmFmZml4ZWQsaT1oP2U6Zi50b3Asaj1oP2c6YjtyZXR1cm4gbnVsbCE9YyYmZTw9Yz8idG9wIjpudWxsIT1kJiZpK2o+PWEtZCYmImJvdHRvbSJ9LGMucHJvdG90eXBlLmdldFBpbm5lZE9mZnNldD1mdW5jdGlvbigpe2lmKHRoaXMucGlubmVkT2Zmc2V0KXJldHVybiB0aGlzLnBpbm5lZE9mZnNldDt0aGlzLiRlbGVtZW50LnJlbW92ZUNsYXNzKGMuUkVTRVQpLmFkZENsYXNzKCJhZmZpeCIpO3ZhciBhPXRoaXMuJHRhcmdldC5zY3JvbGxUb3AoKSxiPXRoaXMuJGVsZW1lbnQub2Zmc2V0KCk7cmV0dXJuIHRoaXMucGlubmVkT2Zmc2V0PWIudG9wLWF9LGMucHJvdG90eXBlLmNoZWNrUG9zaXRpb25XaXRoRXZlbnRMb29wPWZ1bmN0aW9uKCl7c2V0VGltZW91dChhLnByb3h5KHRoaXMuY2hlY2tQb3NpdGlvbix0aGlzKSwxKX0sYy5wcm90b3R5cGUuY2hlY2tQb3NpdGlvbj1mdW5jdGlvbigpe2lmKHRoaXMuJGVsZW1lbnQuaXMoIjp2aXNpYmxlIikpe3ZhciBiPXRoaXMuJGVsZW1lbnQuaGVpZ2h0KCksZD10aGlzLm9wdGlvbnMub2Zmc2V0LGU9ZC50b3AsZj1kLmJvdHRvbSxnPU1hdGgubWF4KGEoZG9jdW1lbnQpLmhlaWdodCgpLGEoZG9jdW1lbnQuYm9keSkuaGVpZ2h0KCkpOyJvYmplY3QiIT10eXBlb2YgZCYmKGY9ZT1kKSwiZnVuY3Rpb24iPT10eXBlb2YgZSYmKGU9ZC50b3AodGhpcy4kZWxlbWVudCkpLCJmdW5jdGlvbiI9PXR5cGVvZiBmJiYoZj1kLmJvdHRvbSh0aGlzLiRlbGVtZW50KSk7dmFyIGg9dGhpcy5nZXRTdGF0ZShnLGIsZSxmKTtpZih0aGlzLmFmZml4ZWQhPWgpe251bGwhPXRoaXMudW5waW4mJnRoaXMuJGVsZW1lbnQuY3NzKCJ0b3AiLCIiKTt2YXIgaT0iYWZmaXgiKyhoPyItIitoOiIiKSxqPWEuRXZlbnQoaSsiLmJzLmFmZml4Iik7aWYodGhpcy4kZWxlbWVudC50cmlnZ2VyKGopLGouaXNEZWZhdWx0UHJldmVudGVkKCkpcmV0dXJuO3RoaXMuYWZmaXhlZD1oLHRoaXMudW5waW49ImJvdHRvbSI9PWg/dGhpcy5nZXRQaW5uZWRPZmZzZXQoKTpudWxsLHRoaXMuJGVsZW1lbnQucmVtb3ZlQ2xhc3MoYy5SRVNFVCkuYWRkQ2xhc3MoaSkudHJpZ2dlcihpLnJlcGxhY2UoImFmZml4IiwiYWZmaXhlZCIpKyIuYnMuYWZmaXgiKX0iYm90dG9tIj09aCYmdGhpcy4kZWxlbWVudC5vZmZzZXQoe3RvcDpnLWItZn0pfX07dmFyIGQ9YS5mbi5hZmZpeDthLmZuLmFmZml4PWIsYS5mbi5hZmZpeC5Db25zdHJ1Y3Rvcj1jLGEuZm4uYWZmaXgubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBhLmZuLmFmZml4PWQsdGhpc30sYSh3aW5kb3cpLm9uKCJsb2FkIixmdW5jdGlvbigpe2EoJ1tkYXRhLXNweT0iYWZmaXgiXScpLmVhY2goZnVuY3Rpb24oKXt2YXIgYz1hKHRoaXMpLGQ9Yy5kYXRhKCk7ZC5vZmZzZXQ9ZC5vZmZzZXR8fHt9LG51bGwhPWQub2Zmc2V0Qm90dG9tJiYoZC5vZmZzZXQuYm90dG9tPWQub2Zmc2V0Qm90dG9tKSxudWxsIT1kLm9mZnNldFRvcCYmKGQub2Zmc2V0LnRvcD1kLm9mZnNldFRvcCksYi5jYWxsKGMsZCl9KX0pfShqUXVlcnkpOw=="}},"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":"api.coingecko.com/api/v3/coins/markets?vs_currency=usd\u0026ids=bitcoin,ethereum,eos,ripple,litecoin\u0026locale=en","fqdn":"api.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"172.66.172.219","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.757Z","timestamp":1785158432757,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"api.coingecko.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Fri, 03 Jul 2026 17:14:13 GMT","end":"Thu, 01 Oct 2026 18:14:10 GMT"},"fingerprint":{"sha1":"FD:68:29:08:59:93:ED:F1:73:C5:56:C8:B7:8C:EA:2D:F8:7E:E5:67","sha256":"28:11:40:A6:0A:FB:70:11:FF:CD:E4:7F:13:40:3F:0F:D5:5F:68:21:26:DF:61:5A:45:A5:EB:B3:33:B2:A9:0B"}}},"request":{"raw":"GET /api/v3/coins/markets?vs_currency=usd\u0026ids=bitcoin,ethereum,eos,ripple,litecoin\u0026locale=en HTTP/1.1\r\nHost: api.coingecko.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://uniz-coinzltd.com/\r\nOrigin: https://uniz-coinzltd.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: application/json; charset=utf-8\r\nserver: cloudflare\r\naccess-control-allow-origin: *\r\naccess-control-allow-methods: POST, PUT, DELETE, GET, OPTIONS\r\naccess-control-expose-headers: link, per-page, total\r\naccess-control-max-age: 7200\r\nx-frame-options: SAMEORIGIN\r\nx-xss-protection: 0\r\nx-content-type-options: nosniff\r\nx-permitted-cross-domain-policies: none\r\nreferrer-policy: strict-origin-when-cross-origin\r\nx-data-source: 1.0\r\ntotal: 5\r\nper-page: 100\r\ncache-control: max-age=30, public, must-revalidate, s-maxage=60\r\naccess-control-request-method: *\r\naccess-control-allow-headers: Origin, X-Requested-With, Content-Type, Accept, Authorization\r\nvary: Accept-Encoding, Origin\r\ncontent-encoding: gzip\r\netag: W/\"c584ba03ad2108b097d608c9b64fe066\"\r\nx-request-id: 4799e5a2-8134-4f1e-b64e-7366f32e9432\r\nx-runtime: 0.006088\r\ncontent-security-policy-report-only: script-src https://accounts.google.com/gsi/client; frame-src https://accounts.google.com/gsi/; connect-src https://accounts.google.com/gsi/;\r\nstrict-transport-security: max-age=600\r\ncf-cache-status: EXPIRED\r\npriority: u=4,i=?0\r\ncf-ray: a21bf12cdda4a0f0-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":3967,"size_decoded":2488,"mime_type":"application/json; charset=utf-8","magic":"JSON text data","md5":"999d8e2b9d1488ac33702a7cc3978aca","sha1":"8095c2060c554116bf1eec8a18ac105d59da85c7","sha256":"d6513439087f4a105588dc9c416031e054e2f4ae62f5735ab56234a30df208b9","sha512":"a638f421670c3b63c064146d9606ad561751b739d36598cae0bb816ca7ad958a80106d7203b863e5a9eda6053f43ae3bdda45398565c0bb2ea7982e475f8e6c3","ssdeep":"","tlshash":"008121920d38d8e3c1a16559684b36241d2efeca8cd9dc125feecdce48a47af410ed5a","first_seen":"2026-07-27T13:21:25.846742Z","last_seen":"2026-07-27T13:21:39.13728Z","times_seen":2,"resource_available":false,"data":"W3siaWQiOiJiaXRjb2luIiwic3ltYm9sIjoiYnRjIiwibmFtZSI6IkJpdGNvaW4iLCJpbWFnZSI6Imh0dHBzOi8vY29pbi1pbWFnZXMuY29pbmdlY2tvLmNvbS9jb2lucy9pbWFnZXMvMS9sYXJnZS9iaXRjb2luLnBuZz8xNjk2NTAxNDAwIiwiY3VycmVudF9wcmljZSI6NjQ5NDksIm1hcmtldF9jYXAiOjEzMDMwMDkwMzczNjAsIm1hcmtldF9jYXBfcmFuayI6MSwiZnVsbHlfZGlsdXRlZF92YWx1YXRpb24iOjEzMDMwMDkwMzczNjAsInRvdGFsX3ZvbHVtZSI6MjE0NjU5MDMxNDQsImhpZ2hfMjRoIjo2NTUzOSwibG93XzI0aCI6NjQ0MTcsInByaWNlX2NoYW5nZV8yNGgiOjUwMC41NywicHJpY2VfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoIjowLjc3NjY5LCJtYXJrZXRfY2FwX2NoYW5nZV8yNGgiOjEwMDUzODc2MTMwLCJtYXJrZXRfY2FwX2NoYW5nZV9wZXJjZW50YWdlXzI0aCI6MC43Nzc1OSwiY2lyY3VsYXRpbmdfc3VwcGx5IjoyMDA2MTk1Ni4wLCJ0b3RhbF9zdXBwbHkiOjIwMDYxOTU2LjAsIm1heF9zdXBwbHkiOjIxMDAwMDAwLjAsImF0aCI6MTI2MDgwLCJhdGhfY2hhbmdlX3BlcmNlbnRhZ2UiOi00OC40ODU2NCwiYXRoX2RhdGUiOiIyMDI1LTEwLTA2VDE4OjU3OjQyLjU1OFoiLCJhdGwiOjY3LjgxLCJhdGxfY2hhbmdlX3BlcmNlbnRhZ2UiOjk1NjgyLjY0MjUzLCJhdGxfZGF0ZSI6IjIwMTMtMDctMDZUMDA6MDA6MDAuMDAwWiIsInJvaSI6bnVsbCwibGFzdF91cGRhdGVkIjoiMjAyNi0wNy0yN1QxMzoyMDoyNC4xOTJaIn0seyJpZCI6ImV0aGVyZXVtIiwic3ltYm9sIjoiZXRoIiwibmFtZSI6IkV0aGVyZXVtIiwiaW1hZ2UiOiJodHRwczovL2NvaW4taW1hZ2VzLmNvaW5nZWNrby5jb20vY29pbnMvaW1hZ2VzLzI3OS9sYXJnZS9ldGhlcmV1bS5wbmc/MTY5NjUwMTYyOCIsImN1cnJlbnRfcHJpY2UiOjE5NTMuNzMsIm1hcmtldF9jYXAiOjIzNTc4MTY5ODY5NSwibWFya2V0X2NhcF9yYW5rIjoyLCJmdWxseV9kaWx1dGVkX3ZhbHVhdGlvbiI6MjM1NzgxNzU1MjI1LCJ0b3RhbF92b2x1bWUiOjk3NTUyODAwOTcsImhpZ2hfMjRoIjoxOTY5LjY5LCJsb3dfMjRoIjoxODgzLjg0LCJwcmljZV9jaGFuZ2VfMjRoIjo2Ny4zNiwicHJpY2VfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoIjozLjU3MDg1LCJtYXJrZXRfY2FwX2NoYW5nZV8yNGgiOjgxODM5NjUxMTMsIm1hcmtldF9jYXBfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoIjozLjU5NTgsImNpcmN1bGF0aW5nX3N1cHBseSI6MTIwNjgyNjM1Ljg1MzEwMzcsInRvdGFsX3N1cHBseSI6MTIwNjgyNjY0Ljc4NzM2NjMsIm1heF9zdXBwbHkiOm51bGwsImF0aCI6NDk0Ni4wNSwiYXRoX2NoYW5nZV9wZXJjZW50YWdlIjotNjAuNDk5MDgsImF0aF9kYXRlIjoiMjAyNS0wOC0yNFQxOToyMTowMy4zMzNaIiwiYXRsIjowLjQzMjk3OSwiYXRsX2NoYW5nZV9wZXJjZW50YWdlIjo0NTExMzAuOTQzNzEsImF0bF9kYXRlIjoiMjAxNS0xMC0yMFQwMDowMDowMC4wMDBaIiwicm9pIjp7InRpbWVzIjozOS4yMjA3MjQ3MTk0NDc0OTYsImN1cnJlbmN5IjoiYnRjIiwicGVyY2VudGFnZSI6MzkyMi4wNzI0NzE5NDQ3NDk0fSwibGFzdF91cGRhdGVkIjoiMjAyNi0wNy0yN1QxMzoyMDoyNC4yNDRaIn0seyJpZCI6InJpcHBsZSIsInN5bWJvbCI6InhycCIsIm5hbWUiOiJYUlAiLCJpbWFnZSI6Imh0dHBzOi8vY29pbi1pbWFnZXMuY29pbmdlY2tvLmNvbS9jb2lucy9pbWFnZXMvNDQvbGFyZ2UveHJwLXN5bWJvbC13aGl0ZS0xMjgucG5nPzE2OTY1MDE0NDIiLCJjdXJyZW50X3ByaWNlIjoxLjEsIm1hcmtldF9jYXAiOjY4OTM5MzA1NzQ5LCJtYXJrZXRfY2FwX3JhbmsiOjYsImZ1bGx5X2RpbHV0ZWRfdmFsdWF0aW9uIjoxMTAyMjgzNjQ3NTcsInRvdGFsX3ZvbHVtZSI6NzE5Nzg1ODkzLCJoaWdoXzI0aCI6MS4xMSwibG93XzI0aCI6MS4wOTYsInByaWNlX2NoYW5nZV8yNGgiOjAuMDA2NTY4ODcsInByaWNlX2NoYW5nZV9wZXJjZW50YWdlXzI0aCI6MC41OTk0MiwibWFya2V0X2NhcF9jaGFuZ2VfMjRoIjozODQyOTE5MjMsIm1hcmtldF9jYXBfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoIjowLjU2MDU2LCJjaXJjdWxhdGluZ19zdXBwbHkiOjYyNTMzMjcxOTU1LjAsInRvdGFsX3N1cHBseSI6OTk5ODU2MzU3MDcuMCwibWF4X3N1cHBseSI6MTAwMDAwMDAwMDAwLjAsImF0aCI6My42NSwiYXRoX2NoYW5nZV9wZXJjZW50YWdlIjotNjkuNzY2MTEsImF0aF9kYXRlIjoiMjAyNS0wNy0xOFQwMzo0MDo1My44MDhaIiwiYXRsIjowLjAwMjY4NjIxLCJhdGxfY2hhbmdlX3BlcmNlbnRhZ2UiOjQwOTQwLjg0ODQ2LCJhdGxfZGF0ZSI6IjIwMTQtMDUtMjJUMDA6MDA6MDAuMDAwWiIsInJvaSI6bnVsbCwibGFzdF91cGRhdGVkIjoiMjAyNi0wNy0yN1QxMzoyMDoyMi4yNzRaIn0seyJpZCI6ImxpdGVjb2luIiwic3ltYm9sIjoibHRjIiwibmFtZSI6IkxpdGVjb2luIiwiaW1hZ2UiOiJodHRwczovL2NvaW4taW1hZ2VzLmNvaW5nZWNrby5jb20vY29pbnMvaW1hZ2VzLzIvbGFyZ2UvbGl0ZWNvaW4ucG5nPzE2OTY1MDE0MDAiLCJjdXJyZW50X3ByaWNlIjo0Ny4wMSwibWFya2V0X2NhcCI6MzYzOTg4MzkwMywibWFya2V0X2NhcF9yYW5rIjoyNywiZnVsbHlfZGlsdXRlZF92YWx1YXRpb24iOjM2NDAwMTY0MDksInRvdGFsX3ZvbHVtZSI6MjI4MjQ2MTA4LCJoaWdoXzI0aCI6NDguMTUsImxvd18yNGgiOjQ2LjY1LCJwcmljZV9jaGFuZ2VfMjRoIjotMC4xNzMxNjkwMTkwNTIwNDY3NCwicHJpY2VfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoIjotMC4zNjcwMywibWFya2V0X2NhcF9jaGFuZ2VfMjRoIjotMTY0MTMzODUuNTE4ODUyMjM0LCJtYXJrZXRfY2FwX2NoYW5nZV9wZXJjZW50YWdlXzI0aCI6LTAuNDQ4OTEsImNpcmN1bGF0aW5nX3N1cHBseSI6Nzc0MzAzNjYuNDc3MDUyMTQsInRvdGFsX3N1cHBseSI6Nzc0MzMxODUuMjM0MzYxMTcsIm1heF9zdXBwbHkiOjg0MDAwMDAwLjAsImF0aCI6NDEwLjI2LCJhdGhfY2hhbmdlX3BlcmNlbnRhZ2UiOi04OC41NTMyNSwiYXRoX2RhdGUiOiIyMDIxLTA1LTEwVDAzOjEzOjA3LjkwNFoiLCJhdGwiOjEuMTUsImF0bF9jaGFuZ2VfcGVyY2VudGFnZSI6Mzk4Ny43MTYxNSwiYXRsX2RhdGUiOiIyMDE1LTAxLTE0VDAwOjAwOjAwLjAwMFoiLCJyb2kiOm51bGwsImxhc3RfdXBkYXRlZCI6IjIwMjYtMDctMjdUMTM6MjA6MTUuNDMxWiJ9LHsiaWQiOiJlb3MiLCJzeW1ib2wiOiJlb3MiLCJuYW1lIjoiRU9TIiwiaW1hZ2UiOiJodHRwczovL2NvaW4taW1hZ2VzLmNvaW5nZWNrby5jb20vY29pbnMvaW1hZ2VzLzczOC9sYXJnZS9DR19FT1NfSWNvbi5wbmc/MTczMTcwNTIzMiIsImN1cnJlbnRfcHJpY2UiOjAuMDY0OTAyLCJtYXJrZXRfY2FwIjowLjAsIm1hcmtldF9jYXBfcmFuayI6bnVsbCwiZnVsbHlfZGlsdXRlZF92YWx1YXRpb24iOjEzNjI5NDY1MCwidG90YWxfdm9sdW1lIjozMTU1NiwiaGlnaF8yNGgiOjAuMDY1NDE5LCJsb3dfMjRoIjowLjA2MjEyNSwicHJpY2VfY2hhbmdlXzI0aCI6MC4wMDI2MjQ1MiwicHJpY2VfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoIjo0LjIxNDIyLCJtYXJrZXRfY2FwX2NoYW5nZV8yNGgiOjAuMCwibWFya2V0X2NhcF9jaGFuZ2VfcGVyY2VudGFnZV8yNGgiOjAuMCwiY2lyY3VsYXRpbmdfc3VwcGx5IjowLjAsInRvdGFsX3N1cHBseSI6MjEwMDAwMDAwMC4wLCJtYXhfc3VwcGx5IjoyMTAwMDAwMDAwLjAsImF0aCI6MjIuNzEsImF0aF9jaGFuZ2VfcGVyY2VudGFnZSI6LTk5LjcxMzI1LCJhdGhfZGF0ZSI6IjIwMTgtMDQtMjlUMDc6NTA6MzMuNTQwWiIsImF0bCI6MC4wNTgwMTMsImF0bF9jaGFuZ2VfcGVyY2VudGFnZSI6MTIuMjU2ODQsImF0bF9kYXRlIjoiMjAyNi0wNi0wNlQwNDo1NDozNC45OTRaIiwicm9pIjp7InRpbWVzIjotMC45MzQ0NDIyMDc3Mjk1MDAzLCJjdXJyZW5jeSI6InVzZCIsInBlcmNlbnRhZ2UiOi05My40NDQyMjA3NzI5NTAwMn0sImxhc3RfdXBkYXRlZCI6IjIwMjYtMDctMjdUMTM6MTg6MzUuMjI5WiJ9XQ=="}},"time_used":183,"timings":{"blocked":-1,"dns":3,"connect":10,"send":0,"wait":170,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/d71b99267b066b9b.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.141Z","timestamp":1785158433141,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/d71b99267b066b9b.js HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: *\r\nage: 2287049\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"d71b99267b066b9b.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com https://vitals.vercel-insights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\netag: W/\"8ab91e90961bd7e4d7c2d7514a37ecf6\"\r\nlast-modified: Mon, 25 May 2026 18:12:21 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/d71b99267b066b9b.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::z8pn9-1779843301298-e28dad7012c9\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=jJ2fDFmyUUT3z%2B7VR8rXQJh1lkceLrpftr7X6YWYXiQ%2FcN5amKFuQWYL5Tr0szdG5YTI0MZaXtFdok48ZOEDMykIariu9zd7Z90BPrs7bRA%2Bzv1epOkN%2F3TYggtq\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21bf12f283c56b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":27443,"size_decoded":11049,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (27443), with no line terminators","md5":"8ab91e90961bd7e4d7c2d7514a37ecf6","sha1":"d2e2405837d8cd1436dae22a0c5d7f4e15168995","sha256":"6e16504cbe3f76082798a523cf9cdce3bc9321fefc36485d02c9289e5a5f6b38","sha512":"da24ae4884840b4b996fdd087c41065e590b5cf33046f6aec00157142b53b9da067a83af2cc7744429b64c02bbfb1aef428787389939a1736cb4ad1f0458ee69","ssdeep":"384:AqniNMH/fZ8oNS1VFWHcE+Ff8IiUG6AUNmXVOmitisz8Xdjz8/K4QIwATf:YO58o0fG65mXVOOKKNInf","tlshash":"bec2c725b90705be2aee83e7e06cabd5d9385a02d5098b4ce3978f319704bf56187b0d","first_seen":"2026-04-30T18:36:20.827898Z","last_seen":"2026-08-17T21:34:38.549995Z","times_seen":2209,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDc1MTU3LDcyODQsZT0+eyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKCl7Zm9yKHZhciBlLHIsbz0wLHQ9IiIsbD1hcmd1bWVudHMubGVuZ3RoO288bDtvKyspKGU9YXJndW1lbnRzW29dKSYmKHI9ZnVuY3Rpb24gZShyKXt2YXIgbyx0LGw9IiI7aWYoInN0cmluZyI9PXR5cGVvZiByfHwibnVtYmVyIj09dHlwZW9mIHIpbCs9cjtlbHNlIGlmKCJvYmplY3QiPT10eXBlb2YgcilpZihBcnJheS5pc0FycmF5KHIpKXt2YXIgbj1yLmxlbmd0aDtmb3Iobz0wO288bjtvKyspcltvXSYmKHQ9ZShyW29dKSkmJihsJiYobCs9IiAiKSxsKz10KX1lbHNlIGZvcih0IGluIHIpclt0XSYmKGwmJihsKz0iICIpLGwrPXQpO3JldHVybiBsfShlKSkmJih0JiYodCs9IiAiKSx0Kz1yKTtyZXR1cm4gdH1lLnMoWyJjbHN4IiwoKT0+cl0sNzI4NCk7bGV0IG89KGU9bmV3IE1hcCxyPW51bGwsbyk9Pih7bmV4dFBhcnQ6ZSx2YWxpZGF0b3JzOnIsY2xhc3NHcm91cElkOm99KSx0PVtdLGw9KGUscixvKT0+e2lmKDA9PWUubGVuZ3RoLXIpcmV0dXJuIG8uY2xhc3NHcm91cElkO2xldCB0PWVbcl0sbj1vLm5leHRQYXJ0LmdldCh0KTtpZihuKXtsZXQgbz1sKGUscisxLG4pO2lmKG8pcmV0dXJuIG99bGV0IGE9by52YWxpZGF0b3JzO2lmKG51bGw9PT1hKXJldHVybjtsZXQgcz0wPT09cj9lLmpvaW4oIi0iKTplLnNsaWNlKHIpLmpvaW4oIi0iKSxpPWEubGVuZ3RoO2ZvcihsZXQgZT0wO2U8aTtlKyspe2xldCByPWFbZV07aWYoci52YWxpZGF0b3IocykpcmV0dXJuIHIuY2xhc3NHcm91cElkfX0sbj0oZSxyKT0+e2xldCB0PW8oKTtmb3IobGV0IG8gaW4gZSlhKGVbb10sdCxvLHIpO3JldHVybiB0fSxhPShlLHIsbyx0KT0+e2xldCBsPWUubGVuZ3RoO2ZvcihsZXQgbj0wO248bDtuKyspcyhlW25dLHIsbyx0KX0scz0oZSxyLG8sdCk9Pnsic3RyaW5nIj09dHlwZW9mIGU/aShlLHIsbyk6ImZ1bmN0aW9uIj09dHlwZW9mIGU/YyhlLHIsbyx0KTpkKGUscixvLHQpfSxpPShlLHIsbyk9PnsoIiI9PT1lP3I6bShyLGUpKS5jbGFzc0dyb3VwSWQ9b30sYz0oZSxyLG8sdCk9PntwKGUpP2EoZSh0KSxyLG8sdCk6KG51bGw9PT1yLnZhbGlkYXRvcnMmJihyLnZhbGlkYXRvcnM9W10pLHIudmFsaWRhdG9ycy5wdXNoKHtjbGFzc0dyb3VwSWQ6byx2YWxpZGF0b3I6ZX0pKX0sZD0oZSxyLG8sdCk9PntsZXQgbD1PYmplY3QuZW50cmllcyhlKSxuPWwubGVuZ3RoO2ZvcihsZXQgZT0wO2U8bjtlKyspe2xldFtuLHNdPWxbZV07YShzLG0ocixuKSxvLHQpfX0sbT0oZSxyKT0+e2xldCB0PWUsbD1yLnNwbGl0KCItIiksbj1sLmxlbmd0aDtmb3IobGV0IGU9MDtlPG47ZSsrKXtsZXQgcj1sW2VdLG49dC5uZXh0UGFydC5nZXQocik7bnx8KG49bygpLHQubmV4dFBhcnQuc2V0KHIsbikpLHQ9bn1yZXR1cm4gdH0scD1lPT4iaXNUaGVtZUdldHRlciJpbiBlJiYhMD09PWUuaXNUaGVtZUdldHRlcixiPVtdLHU9KGUscixvLHQsbCk9Pih7bW9kaWZpZXJzOmUsaGFzSW1wb3J0YW50TW9kaWZpZXI6cixiYXNlQ2xhc3NOYW1lOm8sbWF5YmVQb3N0Zml4TW9kaWZpZXJQb3NpdGlvbjp0LGlzRXh0ZXJuYWw6bH0pLGY9L1xzKy8sZz1lPT57bGV0IHI7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlO2xldCBvPSIiO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKWVbdF0mJihyPWcoZVt0XSkpJiYobyYmKG8rPSIgIiksbys9cik7cmV0dXJuIG99LGg9W10saz1lPT57bGV0IHI9cj0+cltlXXx8aDtyZXR1cm4gci5pc1RoZW1lR2V0dGVyPSEwLHJ9LHc9L15cWyg/Oihcd1tcdy1dKik6KT8oLispXF0kL2kseD0vXlwoKD86KFx3W1x3LV0qKTopPyguKylcKSQvaSx5PS9eXGQrKD86XC5cZCspP1wvXGQrKD86XC5cZCspPyQvLHY9L14oXGQrKFwuXGQrKT8pPyh4c3xzbXxtZHxsZ3x4bCkkLyx6PS9cZCsoJXxweHxyP2VtfFtzZGxdP3YoW2h3aWJdfG1pbnxtYXgpfHB0fHBjfGlufGNtfG1tfGNhcHxjaHxleHxyP2xofGNxKHd8aHxpfGJ8bWlufG1heCkpfFxiKGNhbGN8bWlufG1heHxjbGFtcClcKC4rXCl8XjAkLyxqPS9eKHJnYmE/fGhzbGE/fGh3Ynwob2spPyhsYWJ8bGNoKXxjb2xvci1taXgpXCguK1wpJC8sQz0vXihpbnNldF8pPy0/KChcZCspP1wuPyhcZCspW2Etel0rfDApXy0/KChcZCspP1wuPyhcZCspW2Etel0rfDApLyxHPS9eKHVybHxpbWFnZXxpbWFnZS1zZXR8Y3Jvc3MtZmFkZXxlbGVtZW50fChyZXBlYXRpbmctKT8obGluZWFyfHJhZGlhbHxjb25pYyktZ3JhZGllbnQpXCguK1wpJC8sTj1lPT55LnRlc3QoZSksST1lPT4hIWUmJiFOdW1iZXIuaXNOYU4oTnVtYmVyKGUpKSxVPWU9PiEhZSYmTnVtYmVyLmlzSW50ZWdlcihOdW1iZXIoZSkpLCQ9ZT0+ZS5lbmRzV2l0aCgiJSIpJiZJKGUuc2xpY2UoMCwtMSkpLE89ZT0+di50ZXN0KGUpLFM9KCk9PiEwLFc9ZT0+ei50ZXN0KGUpJiYhai50ZXN0KGUpLEY9KCk9PiExLFA9ZT0+Qy50ZXN0KGUpLFQ9ZT0+Ry50ZXN0KGUpLE09ZT0+IVIoZSkmJiFIKGUpLEE9ZT0+ZXIoZSxlbixGKSxSPWU9PncudGVzdChlKSxEPWU9PmVyKGUsZWEsVykscT1lPT5lcihlLGVzLEkpLEI9ZT0+ZXIoZSxlYyxTKSxFPWU9PmVyKGUsZWksRiksSz1lPT5lcihlLGV0LEYpLF89ZT0+ZXIoZSxlbCxUKSxMPWU9PmVyKGUsZWQsUCksSD1lPT54LnRlc3QoZSksSj1lPT5lbyhlLGVhKSxRPWU9PmVvKGUsZWkpLFY9ZT0+ZW8oZSxldCksWD1lPT5lbyhlLGVuKSxZPWU9PmVvKGUsZWwpLFo9ZT0+ZW8oZSxlZCwhMCksZWU9ZT0+ZW8oZSxlYywhMCksZXI9KGUscixvKT0+e2xldCB0PXcuZXhlYyhlKTtyZXR1cm4hIXQmJih0WzFdP3IodFsxXSk6byh0WzJdKSl9LGVvPShlLHIsbz0hMSk9PntsZXQgdD14LmV4ZWMoZSk7cmV0dXJuISF0JiYodFsxXT9yKHRbMV0pOm8pfSxldD1lPT4icG9zaXRpb24iPT09ZXx8InBlcmNlbnRhZ2UiPT09ZSxlbD1lPT4iaW1hZ2UiPT09ZXx8InVybCI9PT1lLGVuPWU9PiJsZW5ndGgiPT09ZXx8InNpemUiPT09ZXx8ImJnLXNpemUiPT09ZSxlYT1lPT4ibGVuZ3RoIj09PWUsZXM9ZT0+Im51bWJlciI9PT1lLGVpPWU9PiJmYW1pbHktbmFtZSI9PT1lLGVjPWU9PiJudW1iZXIiPT09ZXx8IndlaWdodCI9PT1lLGVkPWU9PiJzaGFkb3ciPT09ZSxlbT0oKGUsLi4ucik9PntsZXQgbyxhLHMsaSxjPWU9PntsZXQgcj1hKGUpO2lmKHIpcmV0dXJuIHI7bGV0IHQ9KChlLHIpPT57bGV0e3BhcnNlQ2xhc3NOYW1lOm8sZ2V0Q2xhc3NHcm91cElkOnQsZ2V0Q29uZmxpY3RpbmdDbGFzc0dyb3VwSWRzOmwsc29ydE1vZGlmaWVyczpufT1yLGE9W10scz1lLnRyaW0oKS5zcGxpdChmKSxpPSIiO2ZvcihsZXQgZT1zLmxlbmd0aC0xO2U+PTA7ZS09MSl7bGV0IHI9c1tlXSx7aXNFeHRlcm5hbDpjLG1vZGlmaWVyczpkLGhhc0ltcG9ydGFudE1vZGlmaWVyOm0sYmFzZUNsYXNzTmFtZTpwLG1heWJlUG9zdGZpeE1vZGlmaWVyUG9zaXRpb246Yn09byhyKTtpZihjKXtpPXIrKGkubGVuZ3RoPjA/IiAiK2k6aSk7Y29udGludWV9bGV0IHU9ISFiLGY9dCh1P3Auc3Vic3RyaW5nKDAsYik6cCk7aWYoIWYpe2lmKCF1fHwhKGY9dChwKSkpe2k9cisoaS5sZW5ndGg+MD8iICIraTppKTtjb250aW51ZX11PSExfWxldCBnPTA9PT1kLmxlbmd0aD8iIjoxPT09ZC5sZW5ndGg/ZFswXTpuKGQpLmpvaW4oIjoiKSxoPW0/ZysiISI6ZyxrPWgrZjtpZihhLmluZGV4T2Yoayk+LTEpY29udGludWU7YS5wdXNoKGspO2xldCB3PWwoZix1KTtmb3IobGV0IGU9MDtlPHcubGVuZ3RoOysrZSl7bGV0IHI9d1tlXTthLnB1c2goaCtyKX1pPXIrKGkubGVuZ3RoPjA/IiAiK2k6aSl9cmV0dXJuIGl9KShlLG8pO3JldHVybiBzKGUsdCksdH07cmV0dXJuIGk9ZD0+e3ZhciBtO2xldCBwO3JldHVybiBhPShvPXtjYWNoZTooZT0+e2lmKGU8MSlyZXR1cm57Z2V0OigpPT52b2lkIDAsc2V0OigpPT57fX07bGV0IHI9MCxvPU9iamVjdC5jcmVhdGUobnVsbCksdD1PYmplY3QuY3JlYXRlKG51bGwpLGw9KGwsbik9PntvW2xdPW4sKytyPmUmJihyPTAsdD1vLG89T2JqZWN0LmNyZWF0ZShudWxsKSl9O3JldHVybntnZXQoZSl7bGV0IHI9b1tlXTtyZXR1cm4gdm9pZCAwIT09cj9yOnZvaWQgMCE9PShyPXRbZV0pPyhsKGUscikscik6dm9pZCAwfSxzZXQoZSxyKXtlIGluIG8/b1tlXT1yOmwoZSxyKX19fSkoKG09ci5yZWR1Y2UoKGUscik9PnIoZSksZSgpKSkuY2FjaGVTaXplKSxwYXJzZUNsYXNzTmFtZTooZT0+e2xldHtwcmVmaXg6cixleHBlcmltZW50YWxQYXJzZUNsYXNzTmFtZTpvfT1lLHQ9ZT0+e2xldCByLG89W10sdD0wLGw9MCxuPTAsYT1lLmxlbmd0aDtmb3IobGV0IHM9MDtzPGE7cysrKXtsZXQgYT1lW3NdO2lmKDA9PT10JiYwPT09bCl7aWYoIjoiPT09YSl7by5wdXNoKGUuc2xpY2UobixzKSksbj1zKzE7Y29udGludWV9aWYoIi8iPT09YSl7cj1zO2NvbnRpbnVlfX0iWyI9PT1hP3QrKzoiXSI9PT1hP3QtLToiKCI9PT1hP2wrKzoiKSI9PT1hJiZsLS19bGV0IHM9MD09PW8ubGVuZ3RoP2U6ZS5zbGljZShuKSxpPXMsYz0hMTtyZXR1cm4gcy5lbmRzV2l0aCgiISIpPyhpPXMuc2xpY2UoMCwtMSksYz0hMCk6cy5zdGFydHNXaXRoKCIhIikmJihpPXMuc2xpY2UoMSksYz0hMCksdShvLGMsaSxyJiZyPm4/ci1uOnZvaWQgMCl9O2lmKHIpe2xldCBlPXIrIjoiLG89dDt0PXI9PnIuc3RhcnRzV2l0aChlKT9vKHIuc2xpY2UoZS5sZW5ndGgpKTp1KGIsITEscix2b2lkIDAsITApfWlmKG8pe2xldCBlPXQ7dD1yPT5vKHtjbGFzc05hbWU6cixwYXJzZUNsYXNzTmFtZTplfSl9cmV0dXJuIHR9KShtKSxzb3J0TW9kaWZpZXJzOihwPW5ldyBNYXAsbS5vcmRlclNlbnNpdGl2ZU1vZGlmaWVycy5mb3JFYWNoKChlLHIpPT57cC5zZXQoZSwxZTYrcil9KSxlPT57bGV0IHI9W10sbz1bXTtmb3IobGV0IHQ9MDt0PGUubGVuZ3RoO3QrKyl7bGV0IGw9ZVt0XSxuPSJbIj09PWxbMF0sYT1wLmhhcyhsKTtufHxhPyhvLmxlbmd0aD4wJiYoby5zb3J0KCksci5wdXNoKC4uLm8pLG89W10pLHIucHVzaChsKSk6by5wdXNoKGwpfXJldHVybiBvLmxlbmd0aD4wJiYoby5zb3J0KCksci5wdXNoKC4uLm8pKSxyfSksLi4uKGU9PntsZXQgcj0oZT0+e2xldHt0aGVtZTpyLGNsYXNzR3JvdXBzOm99PWU7cmV0dXJuIG4obyxyKX0pKGUpLHtjb25mbGljdGluZ0NsYXNzR3JvdXBzOm8sY29uZmxpY3RpbmdDbGFzc0dyb3VwTW9kaWZpZXJzOmF9PWU7cmV0dXJue2dldENsYXNzR3JvdXBJZDplPT57aWYoZS5zdGFydHNXaXRoKCJbIikmJmUuZW5kc1dpdGgoIl0iKSl7dmFyIG87bGV0IHIsdCxsO3JldHVybiAtMT09PShvPWUpLnNsaWNlKDEsLTEpLmluZGV4T2YoIjoiKT92b2lkIDA6KHQ9KHI9by5zbGljZSgxLC0xKSkuaW5kZXhPZigiOiIpLChsPXIuc2xpY2UoMCx0KSk/ImFyYml0cmFyeS4uIitsOnZvaWQgMCl9bGV0IHQ9ZS5zcGxpdCgiLSIpLG49KygiIj09PXRbMF0mJnQubGVuZ3RoPjEpO3JldHVybiBsKHQsbixyKX0sZ2V0Q29uZmxpY3RpbmdDbGFzc0dyb3VwSWRzOihlLHIpPT57aWYocil7bGV0IHI9YVtlXSxsPW9bZV07aWYocil7aWYobCl7bGV0IGU9QXJyYXkobC5sZW5ndGgrci5sZW5ndGgpO2ZvcihsZXQgcj0wO3I8bC5sZW5ndGg7cisrKWVbcl09bFtyXTtmb3IobGV0IG89MDtvPHIubGVuZ3RoO28rKyllW2wubGVuZ3RoK29dPXJbb107cmV0dXJuIGV9cmV0dXJuIHJ9cmV0dXJuIGx8fHR9cmV0dXJuIG9bZV18fHR9fX0pKG0pfSkuY2FjaGUuZ2V0LHM9by5jYWNoZS5zZXQsaT1jLGMoZCl9LCguLi5lKT0+aSgoKC4uLmUpPT57bGV0IHIsbyx0PTAsbD0iIjtmb3IoO3Q8ZS5sZW5ndGg7KShyPWVbdCsrXSkmJihvPWcocikpJiYobCYmKGwrPSIgIiksbCs9byk7cmV0dXJuIGx9KSguLi5lKSl9KSgoKT0+e2xldCBlPWsoImNvbG9yIikscj1rKCJmb250Iiksbz1rKCJ0ZXh0IiksdD1rKCJmb250LXdlaWdodCIpLGw9aygidHJhY2tpbmciKSxuPWsoImxlYWRpbmciKSxhPWsoImJyZWFrcG9pbnQiKSxzPWsoImNvbnRhaW5lciIpLGk9aygic3BhY2luZyIpLGM9aygicmFkaXVzIiksZD1rKCJzaGFkb3ciKSxtPWsoImluc2V0LXNoYWRvdyIpLHA9aygidGV4dC1zaGFkb3ciKSxiPWsoImRyb3Atc2hhZG93IiksdT1rKCJibHVyIiksZj1rKCJwZXJzcGVjdGl2ZSIpLGc9aygiYXNwZWN0IiksaD1rKCJlYXNlIiksdz1rKCJhbmltYXRlIikseD0oKT0+WyJhdXRvIiwiYXZvaWQiLCJhbGwiLCJhdm9pZC1wYWdlIiwicGFnZSIsImxlZnQiLCJyaWdodCIsImNvbHVtbiJdLHk9KCk9PlsiY2VudGVyIiwidG9wIiwiYm90dG9tIiwibGVmdCIsInJpZ2h0IiwidG9wLWxlZnQiLCJsZWZ0LXRvcCIsInRvcC1yaWdodCIsInJpZ2h0LXRvcCIsImJvdHRvbS1yaWdodCIsInJpZ2h0LWJvdHRvbSIsImJvdHRvbS1sZWZ0IiwibGVmdC1ib3R0b20iXSx2PSgpPT5bLi4ueSgpLEgsUl0sej0oKT0+WyJhdXRvIiwiaGlkZGVuIiwiY2xpcCIsInZpc2libGUiLCJzY3JvbGwiXSxqPSgpPT5bImF1dG8iLCJjb250YWluIiwibm9uZSJdLEM9KCk9PltILFIsaV0sRz0oKT0+W04sImZ1bGwiLCJhdXRvIiwuLi5DKCldLFc9KCk9PltVLCJub25lIiwic3ViZ3JpZCIsSCxSXSxGPSgpPT5bImF1dG8iLHtzcGFuOlsiZnVsbCIsVSxILFJdfSxVLEgsUl0sUD0oKT0+W1UsImF1dG8iLEgsUl0sVD0oKT0+WyJhdXRvIiwibWluIiwibWF4IiwiZnIiLEgsUl0sZXI9KCk9Plsic3RhcnQiLCJlbmQiLCJjZW50ZXIiLCJiZXR3ZWVuIiwiYXJvdW5kIiwiZXZlbmx5Iiwic3RyZXRjaCIsImJhc2VsaW5lIiwiY2VudGVyLXNhZmUiLCJlbmQtc2FmZSJdLGVvPSgpPT5bInN0YXJ0IiwiZW5kIiwiY2VudGVyIiwic3RyZXRjaCIsImNlbnRlci1zYWZlIiwiZW5kLXNhZmUiXSxldD0oKT0+WyJhdXRvIiwuLi5DKCldLGVsPSgpPT5bTiwiYXV0byIsImZ1bGwiLCJkdnciLCJkdmgiLCJsdnciLCJsdmgiLCJzdnciLCJzdmgiLCJtaW4iLCJtYXgiLCJmaXQiLC4uLkMoKV0sZW49KCk9PltOLCJzY3JlZW4iLCJmdWxsIiwiZHZ3IiwibHZ3Iiwic3Z3IiwibWluIiwibWF4IiwiZml0IiwuLi5DKCldLGVhPSgpPT5bTiwic2NyZWVuIiwiZnVsbCIsImxoIiwiZHZoIiwibHZoIiwic3ZoIiwibWluIiwibWF4IiwiZml0IiwuLi5DKCldLGVzPSgpPT5bZSxILFJdLGVpPSgpPT5bLi4ueSgpLFYsSyx7cG9zaXRpb246W0gsUl19XSxlYz0oKT0+WyJuby1yZXBlYXQiLHtyZXBlYXQ6WyIiLCJ4IiwieSIsInNwYWNlIiwicm91bmQiXX1dLGVkPSgpPT5bImF1dG8iLCJjb3ZlciIsImNvbnRhaW4iLFgsQSx7c2l6ZTpbSCxSXX1dLGVtPSgpPT5bJCxKLERdLGVwPSgpPT5bIiIsIm5vbmUiLCJmdWxsIixjLEgsUl0sZWI9KCk9PlsiIixJLEosRF0sZXU9KCk9Plsic29saWQiLCJkYXNoZWQiLCJkb3R0ZWQiLCJkb3VibGUiXSxlZj0oKT0+WyJub3JtYWwiLCJtdWx0aXBseSIsInNjcmVlbiIsIm92ZXJsYXkiLCJkYXJrZW4iLCJsaWdodGVuIiwiY29sb3ItZG9kZ2UiLCJjb2xvci1idXJuIiwiaGFyZC1saWdodCIsInNvZnQtbGlnaHQiLCJkaWZmZXJlbmNlIiwiZXhjbHVzaW9uIiwiaHVlIiwic2F0dXJhdGlvbiIsImNvbG9yIiwibHVtaW5vc2l0eSJdLGVnPSgpPT5bSSwkLFYsS10sZWg9KCk9PlsiIiwibm9uZSIsdSxILFJdLGVrPSgpPT5bIm5vbmUiLEksSCxSXSxldz0oKT0+WyJub25lIixJLEgsUl0sZXg9KCk9PltJLEgsUl0sZXk9KCk9PltOLCJmdWxsIiwuLi5DKCldO3JldHVybntjYWNoZVNpemU6NTAwLHRoZW1lOnthbmltYXRlOlsic3BpbiIsInBpbmciLCJwdWxzZSIsImJvdW5jZSJdLGFzcGVjdDpbInZpZGVvIl0sYmx1cjpbT10sYnJlYWtwb2ludDpbT10sY29sb3I6W1NdLGNvbnRhaW5lcjpbT10sImRyb3Atc2hhZG93IjpbT10sZWFzZTpbImluIiwib3V0IiwiaW4tb3V0Il0sZm9udDpbTV0sImZvbnQtd2VpZ2h0IjpbInRoaW4iLCJleHRyYWxpZ2h0IiwibGlnaHQiLCJub3JtYWwiLCJtZWRpdW0iLCJzZW1pYm9sZCIsImJvbGQiLCJleHRyYWJvbGQiLCJibGFjayJdLCJpbnNldC1zaGFkb3ciOltPXSxsZWFkaW5nOlsibm9uZSIsInRpZ2h0Iiwic251ZyIsIm5vcm1hbCIsInJlbGF4ZWQiLCJsb29zZSJdLHBlcnNwZWN0aXZlOlsiZHJhbWF0aWMiLCJuZWFyIiwibm9ybWFsIiwibWlkcmFuZ2UiLCJkaXN0YW50Iiwibm9uZSJdLHJhZGl1czpbT10sc2hhZG93OltPXSxzcGFjaW5nOlsicHgiLEldLHRleHQ6W09dLCJ0ZXh0LXNoYWRvdyI6W09dLHRyYWNraW5nOlsidGlnaHRlciIsInRpZ2h0Iiwibm9ybWFsIiwid2lkZSIsIndpZGVyIiwid2lkZXN0Il19LGNsYXNzR3JvdXBzOnthc3BlY3Q6W3thc3BlY3Q6WyJhdXRvIiwic3F1YXJlIixOLFIsSCxnXX1dLGNvbnRhaW5lcjpbImNvbnRhaW5lciJdLGNvbHVtbnM6W3tjb2x1bW5zOltJLFIsSCxzXX1dLCJicmVhay1hZnRlciI6W3siYnJlYWstYWZ0ZXIiOngoKX1dLCJicmVhay1iZWZvcmUiOlt7ImJyZWFrLWJlZm9yZSI6eCgpfV0sImJyZWFrLWluc2lkZSI6W3siYnJlYWstaW5zaWRlIjpbImF1dG8iLCJhdm9pZCIsImF2b2lkLXBhZ2UiLCJhdm9pZC1jb2x1bW4iXX1dLCJib3gtZGVjb3JhdGlvbiI6W3siYm94LWRlY29yYXRpb24iOlsic2xpY2UiLCJjbG9uZSJdfV0sYm94Olt7Ym94OlsiYm9yZGVyIiwiY29udGVudCJdfV0sZGlzcGxheTpbImJsb2NrIiwiaW5saW5lLWJsb2NrIiwiaW5saW5lIiwiZmxleCIsImlubGluZS1mbGV4IiwidGFibGUiLCJpbmxpbmUtdGFibGUiLCJ0YWJsZS1jYXB0aW9uIiwidGFibGUtY2VsbCIsInRhYmxlLWNvbHVtbiIsInRhYmxlLWNvbHVtbi1ncm91cCIsInRhYmxlLWZvb3Rlci1ncm91cCIsInRhYmxlLWhlYWRlci1ncm91cCIsInRhYmxlLXJvdy1ncm91cCIsInRhYmxlLXJvdyIsImZsb3ctcm9vdCIsImdyaWQiLCJpbmxpbmUtZ3JpZCIsImNvbnRlbnRzIiwibGlzdC1pdGVtIiwiaGlkZGVuIl0sc3I6WyJzci1vbmx5Iiwibm90LXNyLW9ubHkiXSxmbG9hdDpbe2Zsb2F0OlsicmlnaHQiLCJsZWZ0Iiwibm9uZSIsInN0YXJ0IiwiZW5kIl19XSxjbGVhcjpbe2NsZWFyOlsibGVmdCIsInJpZ2h0IiwiYm90aCIsIm5vbmUiLCJzdGFydCIsImVuZCJdfV0saXNvbGF0aW9uOlsiaXNvbGF0ZSIsImlzb2xhdGlvbi1hdXRvIl0sIm9iamVjdC1maXQiOlt7b2JqZWN0OlsiY29udGFpbiIsImNvdmVyIiwiZmlsbCIsIm5vbmUiLCJzY2FsZS1kb3duIl19XSwib2JqZWN0LXBvc2l0aW9uIjpbe29iamVjdDp2KCl9XSxvdmVyZmxvdzpbe292ZXJmbG93OnooKX1dLCJvdmVyZmxvdy14IjpbeyJvdmVyZmxvdy14Ijp6KCl9XSwib3ZlcmZsb3cteSI6W3sib3ZlcmZsb3cteSI6eigpfV0sb3ZlcnNjcm9sbDpbe292ZXJzY3JvbGw6aigpfV0sIm92ZXJzY3JvbGwteCI6W3sib3ZlcnNjcm9sbC14IjpqKCl9XSwib3ZlcnNjcm9sbC15IjpbeyJvdmVyc2Nyb2xsLXkiOmooKX1dLHBvc2l0aW9uOlsic3RhdGljIiwiZml4ZWQiLCJhYnNvbHV0ZSIsInJlbGF0aXZlIiwic3RpY2t5Il0saW5zZXQ6W3tpbnNldDpHKCl9XSwiaW5zZXQteCI6W3siaW5zZXQteCI6RygpfV0sImluc2V0LXkiOlt7Imluc2V0LXkiOkcoKX1dLHN0YXJ0Olt7Imluc2V0LXMiOkcoKSxzdGFydDpHKCl9XSxlbmQ6W3siaW5zZXQtZSI6RygpLGVuZDpHKCl9XSwiaW5zZXQtYnMiOlt7Imluc2V0LWJzIjpHKCl9XSwiaW5zZXQtYmUiOlt7Imluc2V0LWJlIjpHKCl9XSx0b3A6W3t0b3A6RygpfV0scmlnaHQ6W3tyaWdodDpHKCl9XSxib3R0b206W3tib3R0b206RygpfV0sbGVmdDpbe2xlZnQ6RygpfV0sdmlzaWJpbGl0eTpbInZpc2libGUiLCJpbnZpc2libGUiLCJjb2xsYXBzZSJdLHo6W3t6OltVLCJhdXRvIixILFJdfV0sYmFzaXM6W3tiYXNpczpbTiwiZnVsbCIsImF1dG8iLHMsLi4uQygpXX1dLCJmbGV4LWRpcmVjdGlvbiI6W3tmbGV4Olsicm93Iiwicm93LXJldmVyc2UiLCJjb2wiLCJjb2wtcmV2ZXJzZSJdfV0sImZsZXgtd3JhcCI6W3tmbGV4Olsibm93cmFwIiwid3JhcCIsIndyYXAtcmV2ZXJzZSJdfV0sZmxleDpbe2ZsZXg6W0ksTiwiYXV0byIsImluaXRpYWwiLCJub25lIixSXX1dLGdyb3c6W3tncm93OlsiIixJLEgsUl19XSxzaHJpbms6W3tzaHJpbms6WyIiLEksSCxSXX1dLG9yZGVyOlt7b3JkZXI6W1UsImZpcnN0IiwibGFzdCIsIm5vbmUiLEgsUl19XSwiZ3JpZC1jb2xzIjpbeyJncmlkLWNvbHMiOlcoKX1dLCJjb2wtc3RhcnQtZW5kIjpbe2NvbDpGKCl9XSwiY29sLXN0YXJ0IjpbeyJjb2wtc3RhcnQiOlAoKX1dLCJjb2wtZW5kIjpbeyJjb2wtZW5kIjpQKCl9XSwiZ3JpZC1yb3dzIjpbeyJncmlkLXJvd3MiOlcoKX1dLCJyb3ctc3RhcnQtZW5kIjpbe3JvdzpGKCl9XSwicm93LXN0YXJ0IjpbeyJyb3ctc3RhcnQiOlAoKX1dLCJyb3ctZW5kIjpbeyJyb3ctZW5kIjpQKCl9XSwiZ3JpZC1mbG93IjpbeyJncmlkLWZsb3ciOlsicm93IiwiY29sIiwiZGVuc2UiLCJyb3ctZGVuc2UiLCJjb2wtZGVuc2UiXX1dLCJhdXRvLWNvbHMiOlt7ImF1dG8tY29scyI6VCgpfV0sImF1dG8tcm93cyI6W3siYXV0by1yb3dzIjpUKCl9XSxnYXA6W3tnYXA6QygpfV0sImdhcC14IjpbeyJnYXAteCI6QygpfV0sImdhcC15IjpbeyJnYXAteSI6QygpfV0sImp1c3RpZnktY29udGVudCI6W3tqdXN0aWZ5OlsuLi5lcigpLCJub3JtYWwiXX1dLCJqdXN0aWZ5LWl0ZW1zIjpbeyJqdXN0aWZ5LWl0ZW1zIjpbLi4uZW8oKSwibm9ybWFsIl19XSwianVzdGlmeS1zZWxmIjpbeyJqdXN0aWZ5LXNlbGYiOlsiYXV0byIsLi4uZW8oKV19XSwiYWxpZ24tY29udGVudCI6W3tjb250ZW50Olsibm9ybWFsIiwuLi5lcigpXX1dLCJhbGlnbi1pdGVtcyI6W3tpdGVtczpbLi4uZW8oKSx7YmFzZWxpbmU6WyIiLCJsYXN0Il19XX1dLCJhbGlnbi1zZWxmIjpbe3NlbGY6WyJhdXRvIiwuLi5lbygpLHtiYXNlbGluZTpbIiIsImxhc3QiXX1dfV0sInBsYWNlLWNvbnRlbnQiOlt7InBsYWNlLWNvbnRlbnQiOmVyKCl9XSwicGxhY2UtaXRlbXMiOlt7InBsYWNlLWl0ZW1zIjpbLi4uZW8oKSwiYmFzZWxpbmUiXX1dLCJwbGFjZS1zZWxmIjpbeyJwbGFjZS1zZWxmIjpbImF1dG8iLC4uLmVvKCldfV0scDpbe3A6QygpfV0scHg6W3tweDpDKCl9XSxweTpbe3B5OkMoKX1dLHBzOlt7cHM6QygpfV0scGU6W3twZTpDKCl9XSxwYnM6W3twYnM6QygpfV0scGJlOlt7cGJlOkMoKX1dLHB0Olt7cHQ6QygpfV0scHI6W3twcjpDKCl9XSxwYjpbe3BiOkMoKX1dLHBsOlt7cGw6QygpfV0sbTpbe206ZXQoKX1dLG14Olt7bXg6ZXQoKX1dLG15Olt7bXk6ZXQoKX1dLG1zOlt7bXM6ZXQoKX1dLG1lOlt7bWU6ZXQoKX1dLG1iczpbe21iczpldCgpfV0sbWJlOlt7bWJlOmV0KCl9XSxtdDpbe210OmV0KCl9XSxtcjpbe21yOmV0KCl9XSxtYjpbe21iOmV0KCl9XSxtbDpbe21sOmV0KCl9XSwic3BhY2UteCI6W3sic3BhY2UteCI6QygpfV0sInNwYWNlLXgtcmV2ZXJzZSI6WyJzcGFjZS14LXJldmVyc2UiXSwic3BhY2UteSI6W3sic3BhY2UteSI6QygpfV0sInNwYWNlLXktcmV2ZXJzZSI6WyJzcGFjZS15LXJldmVyc2UiXSxzaXplOlt7c2l6ZTplbCgpfV0sImlubGluZS1zaXplIjpbe2lubGluZTpbImF1dG8iLC4uLmVuKCldfV0sIm1pbi1pbmxpbmUtc2l6ZSI6W3sibWluLWlubGluZSI6WyJhdXRvIiwuLi5lbigpXX1dLCJtYXgtaW5saW5lLXNpemUiOlt7Im1heC1pbmxpbmUiOlsibm9uZSIsLi4uZW4oKV19XSwiYmxvY2stc2l6ZSI6W3tibG9jazpbImF1dG8iLC4uLmVhKCldfV0sIm1pbi1ibG9jay1zaXplIjpbeyJtaW4tYmxvY2siOlsiYXV0byIsLi4uZWEoKV19XSwibWF4LWJsb2NrLXNpemUiOlt7Im1heC1ibG9jayI6WyJub25lIiwuLi5lYSgpXX1dLHc6W3t3OltzLCJzY3JlZW4iLC4uLmVsKCldfV0sIm1pbi13IjpbeyJtaW4tdyI6W3MsInNjcmVlbiIsIm5vbmUiLC4uLmVsKCldfV0sIm1heC13IjpbeyJtYXgtdyI6W3MsInNjcmVlbiIsIm5vbmUiLCJwcm9zZSIse3NjcmVlbjpbYV19LC4uLmVsKCldfV0saDpbe2g6WyJzY3JlZW4iLCJsaCIsLi4uZWwoKV19XSwibWluLWgiOlt7Im1pbi1oIjpbInNjcmVlbiIsImxoIiwibm9uZSIsLi4uZWwoKV19XSwibWF4LWgiOlt7Im1heC1oIjpbInNjcmVlbiIsImxoIiwuLi5lbCgpXX1dLCJmb250LXNpemUiOlt7dGV4dDpbImJhc2UiLG8sSixEXX1dLCJmb250LXNtb290aGluZyI6WyJhbnRpYWxpYXNlZCIsInN1YnBpeGVsLWFudGlhbGlhc2VkIl0sImZvbnQtc3R5bGUiOlsiaXRhbGljIiwibm90LWl0YWxpYyJdLCJmb250LXdlaWdodCI6W3tmb250Olt0LGVlLEJdfV0sImZvbnQtc3RyZXRjaCI6W3siZm9udC1zdHJldGNoIjpbInVsdHJhLWNvbmRlbnNlZCIsImV4dHJhLWNvbmRlbnNlZCIsImNvbmRlbnNlZCIsInNlbWktY29uZGVuc2VkIiwibm9ybWFsIiwic2VtaS1leHBhbmRlZCIsImV4cGFuZGVkIiwiZXh0cmEtZXhwYW5kZWQiLCJ1bHRyYS1leHBhbmRlZCIsJCxSXX1dLCJmb250LWZhbWlseSI6W3tmb250OltRLEUscl19XSwiZm9udC1mZWF0dXJlcyI6W3siZm9udC1mZWF0dXJlcyI6W1JdfV0sImZ2bi1ub3JtYWwiOlsibm9ybWFsLW51bXMiXSwiZnZuLW9yZGluYWwiOlsib3JkaW5hbCJdLCJmdm4tc2xhc2hlZC16ZXJvIjpbInNsYXNoZWQtemVybyJdLCJmdm4tZmlndXJlIjpbImxpbmluZy1udW1zIiwib2xkc3R5bGUtbnVtcyJdLCJmdm4tc3BhY2luZyI6WyJwcm9wb3J0aW9uYWwtbnVtcyIsInRhYnVsYXItbnVtcyJdLCJmdm4tZnJhY3Rpb24iOlsiZGlhZ29uYWwtZnJhY3Rpb25zIiwic3RhY2tlZC1mcmFjdGlvbnMiXSx0cmFja2luZzpbe3RyYWNraW5nOltsLEgsUl19XSwibGluZS1jbGFtcCI6W3sibGluZS1jbGFtcCI6W0ksIm5vbmUiLEgscV19XSxsZWFkaW5nOlt7bGVhZGluZzpbbiwuLi5DKCldfV0sImxpc3QtaW1hZ2UiOlt7Imxpc3QtaW1hZ2UiOlsibm9uZSIsSCxSXX1dLCJsaXN0LXN0eWxlLXBvc2l0aW9uIjpbe2xpc3Q6WyJpbnNpZGUiLCJvdXRzaWRlIl19XSwibGlzdC1zdHlsZS10eXBlIjpbe2xpc3Q6WyJkaXNjIiwiZGVjaW1hbCIsIm5vbmUiLEgsUl19XSwidGV4dC1hbGlnbm1lbnQiOlt7dGV4dDpbImxlZnQiLCJjZW50ZXIiLCJyaWdodCIsImp1c3RpZnkiLCJzdGFydCIsImVuZCJdfV0sInBsYWNlaG9sZGVyLWNvbG9yIjpbe3BsYWNlaG9sZGVyOmVzKCl9XSwidGV4dC1jb2xvciI6W3t0ZXh0OmVzKCl9XSwidGV4dC1kZWNvcmF0aW9uIjpbInVuZGVybGluZSIsIm92ZXJsaW5lIiwibGluZS10aHJvdWdoIiwibm8tdW5kZXJsaW5lIl0sInRleHQtZGVjb3JhdGlvbi1zdHlsZSI6W3tkZWNvcmF0aW9uOlsuLi5ldSgpLCJ3YXZ5Il19XSwidGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzcyI6W3tkZWNvcmF0aW9uOltJLCJmcm9tLWZvbnQiLCJhdXRvIixILERdfV0sInRleHQtZGVjb3JhdGlvbi1jb2xvciI6W3tkZWNvcmF0aW9uOmVzKCl9XSwidW5kZXJsaW5lLW9mZnNldCI6W3sidW5kZXJsaW5lLW9mZnNldCI6W0ksImF1dG8iLEgsUl19XSwidGV4dC10cmFuc2Zvcm0iOlsidXBwZXJjYXNlIiwibG93ZXJjYXNlIiwiY2FwaXRhbGl6ZSIsIm5vcm1hbC1jYXNlIl0sInRleHQtb3ZlcmZsb3ciOlsidHJ1bmNhdGUiLCJ0ZXh0LWVsbGlwc2lzIiwidGV4dC1jbGlwIl0sInRleHQtd3JhcCI6W3t0ZXh0Olsid3JhcCIsIm5vd3JhcCIsImJhbGFuY2UiLCJwcmV0dHkiXX1dLGluZGVudDpbe2luZGVudDpDKCl9XSwidmVydGljYWwtYWxpZ24iOlt7YWxpZ246WyJiYXNlbGluZSIsInRvcCIsIm1pZGRsZSIsImJvdHRvbSIsInRleHQtdG9wIiwidGV4dC1ib3R0b20iLCJzdWIiLCJzdXBlciIsSCxSXX1dLHdoaXRlc3BhY2U6W3t3aGl0ZXNwYWNlOlsibm9ybWFsIiwibm93cmFwIiwicHJlIiwicHJlLWxpbmUiLCJwcmUtd3JhcCIsImJyZWFrLXNwYWNlcyJdfV0sYnJlYWs6W3ticmVhazpbIm5vcm1hbCIsIndvcmRzIiwiYWxsIiwia2VlcCJdfV0sd3JhcDpbe3dyYXA6WyJicmVhay13b3JkIiwiYW55d2hlcmUiLCJub3JtYWwiXX1dLGh5cGhlbnM6W3toeXBoZW5zOlsibm9uZSIsIm1hbnVhbCIsImF1dG8iXX1dLGNvbnRlbnQ6W3tjb250ZW50Olsibm9uZSIsSCxSXX1dLCJiZy1hdHRhY2htZW50Ijpbe2JnOlsiZml4ZWQiLCJsb2NhbCIsInNjcm9sbCJdfV0sImJnLWNsaXAiOlt7ImJnLWNsaXAiOlsiYm9yZGVyIiwicGFkZGluZyIsImNvbnRlbnQiLCJ0ZXh0Il19XSwiYmctb3JpZ2luIjpbeyJiZy1vcmlnaW4iOlsiYm9yZGVyIiwicGFkZGluZyIsImNvbnRlbnQiXX1dLCJiZy1wb3NpdGlvbiI6W3tiZzplaSgpfV0sImJnLXJlcGVhdCI6W3tiZzplYygpfV0sImJnLXNpemUiOlt7Ymc6ZWQoKX1dLCJiZy1pbWFnZSI6W3tiZzpbIm5vbmUiLHtsaW5lYXI6W3t0bzpbInQiLCJ0ciIsInIiLCJiciIsImIiLCJibCIsImwiLCJ0bCJdfSxVLEgsUl0scmFkaWFsOlsiIixILFJdLGNvbmljOltVLEgsUl19LFksX119XSwiYmctY29sb3IiOlt7Ymc6ZXMoKX1dLCJncmFkaWVudC1mcm9tLXBvcyI6W3tmcm9tOmVtKCl9XSwiZ3JhZGllbnQtdmlhLXBvcyI6W3t2aWE6ZW0oKX1dLCJncmFkaWVudC10by1wb3MiOlt7dG86ZW0oKX1dLCJncmFkaWVudC1mcm9tIjpbe2Zyb206ZXMoKX1dLCJncmFkaWVudC12aWEiOlt7dmlhOmVzKCl9XSwiZ3JhZGllbnQtdG8iOlt7dG86ZXMoKX1dLHJvdW5kZWQ6W3tyb3VuZGVkOmVwKCl9XSwicm91bmRlZC1zIjpbeyJyb3VuZGVkLXMiOmVwKCl9XSwicm91bmRlZC1lIjpbeyJyb3VuZGVkLWUiOmVwKCl9XSwicm91bmRlZC10IjpbeyJyb3VuZGVkLXQiOmVwKCl9XSwicm91bmRlZC1yIjpbeyJyb3VuZGVkLXIiOmVwKCl9XSwicm91bmRlZC1iIjpbeyJyb3VuZGVkLWIiOmVwKCl9XSwicm91bmRlZC1sIjpbeyJyb3VuZGVkLWwiOmVwKCl9XSwicm91bmRlZC1zcyI6W3sicm91bmRlZC1zcyI6ZXAoKX1dLCJyb3VuZGVkLXNlIjpbeyJyb3VuZGVkLXNlIjplcCgpfV0sInJvdW5kZWQtZWUiOlt7InJvdW5kZWQtZWUiOmVwKCl9XSwicm91bmRlZC1lcyI6W3sicm91bmRlZC1lcyI6ZXAoKX1dLCJyb3VuZGVkLXRsIjpbeyJyb3VuZGVkLXRsIjplcCgpfV0sInJvdW5kZWQtdHIiOlt7InJvdW5kZWQtdHIiOmVwKCl9XSwicm91bmRlZC1iciI6W3sicm91bmRlZC1iciI6ZXAoKX1dLCJyb3VuZGVkLWJsIjpbeyJyb3VuZGVkLWJsIjplcCgpfV0sImJvcmRlci13Ijpbe2JvcmRlcjplYigpfV0sImJvcmRlci13LXgiOlt7ImJvcmRlci14IjplYigpfV0sImJvcmRlci13LXkiOlt7ImJvcmRlci15IjplYigpfV0sImJvcmRlci13LXMiOlt7ImJvcmRlci1zIjplYigpfV0sImJvcmRlci13LWUiOlt7ImJvcmRlci1lIjplYigpfV0sImJvcmRlci13LWJzIjpbeyJib3JkZXItYnMiOmViKCl9XSwiYm9yZGVyLXctYmUiOlt7ImJvcmRlci1iZSI6ZWIoKX1dLCJib3JkZXItdy10IjpbeyJib3JkZXItdCI6ZWIoKX1dLCJib3JkZXItdy1yIjpbeyJib3JkZXItciI6ZWIoKX1dLCJib3JkZXItdy1iIjpbeyJib3JkZXItYiI6ZWIoKX1dLCJib3JkZXItdy1sIjpbeyJib3JkZXItbCI6ZWIoKX1dLCJkaXZpZGUteCI6W3siZGl2aWRlLXgiOmViKCl9XSwiZGl2aWRlLXgtcmV2ZXJzZSI6WyJkaXZpZGUteC1yZXZlcnNlIl0sImRpdmlkZS15IjpbeyJkaXZpZGUteSI6ZWIoKX1dLCJkaXZpZGUteS1yZXZlcnNlIjpbImRpdmlkZS15LXJldmVyc2UiXSwiYm9yZGVyLXN0eWxlIjpbe2JvcmRlcjpbLi4uZXUoKSwiaGlkZGVuIiwibm9uZSJdfV0sImRpdmlkZS1zdHlsZSI6W3tkaXZpZGU6Wy4uLmV1KCksImhpZGRlbiIsIm5vbmUiXX1dLCJib3JkZXItY29sb3IiOlt7Ym9yZGVyOmVzKCl9XSwiYm9yZGVyLWNvbG9yLXgiOlt7ImJvcmRlci14IjplcygpfV0sImJvcmRlci1jb2xvci15IjpbeyJib3JkZXIteSI6ZXMoKX1dLCJib3JkZXItY29sb3ItcyI6W3siYm9yZGVyLXMiOmVzKCl9XSwiYm9yZGVyLWNvbG9yLWUiOlt7ImJvcmRlci1lIjplcygpfV0sImJvcmRlci1jb2xvci1icyI6W3siYm9yZGVyLWJzIjplcygpfV0sImJvcmRlci1jb2xvci1iZSI6W3siYm9yZGVyLWJlIjplcygpfV0sImJvcmRlci1jb2xvci10IjpbeyJib3JkZXItdCI6ZXMoKX1dLCJib3JkZXItY29sb3ItciI6W3siYm9yZGVyLXIiOmVzKCl9XSwiYm9yZGVyLWNvbG9yLWIiOlt7ImJvcmRlci1iIjplcygpfV0sImJvcmRlci1jb2xvci1sIjpbeyJib3JkZXItbCI6ZXMoKX1dLCJkaXZpZGUtY29sb3IiOlt7ZGl2aWRlOmVzKCl9XSwib3V0bGluZS1zdHlsZSI6W3tvdXRsaW5lOlsuLi5ldSgpLCJub25lIiwiaGlkZGVuIl19XSwib3V0bGluZS1vZmZzZXQiOlt7Im91dGxpbmUtb2Zmc2V0IjpbSSxILFJdfV0sIm91dGxpbmUtdyI6W3tvdXRsaW5lOlsiIixJLEosRF19XSwib3V0bGluZS1jb2xvciI6W3tvdXRsaW5lOmVzKCl9XSxzaGFkb3c6W3tzaGFkb3c6WyIiLCJub25lIixkLFosTF19XSwic2hhZG93LWNvbG9yIjpbe3NoYWRvdzplcygpfV0sImluc2V0LXNoYWRvdyI6W3siaW5zZXQtc2hhZG93IjpbIm5vbmUiLG0sWixMXX1dLCJpbnNldC1zaGFkb3ctY29sb3IiOlt7Imluc2V0LXNoYWRvdyI6ZXMoKX1dLCJyaW5nLXciOlt7cmluZzplYigpfV0sInJpbmctdy1pbnNldCI6WyJyaW5nLWluc2V0Il0sInJpbmctY29sb3IiOlt7cmluZzplcygpfV0sInJpbmctb2Zmc2V0LXciOlt7InJpbmctb2Zmc2V0IjpbSSxEXX1dLCJyaW5nLW9mZnNldC1jb2xvciI6W3sicmluZy1vZmZzZXQiOmVzKCl9XSwiaW5zZXQtcmluZy13IjpbeyJpbnNldC1yaW5nIjplYigpfV0sImluc2V0LXJpbmctY29sb3IiOlt7Imluc2V0LXJpbmciOmVzKCl9XSwidGV4dC1zaGFkb3ciOlt7InRleHQtc2hhZG93IjpbIm5vbmUiLHAsWixMXX1dLCJ0ZXh0LXNoYWRvdy1jb2xvciI6W3sidGV4dC1zaGFkb3ciOmVzKCl9XSxvcGFjaXR5Olt7b3BhY2l0eTpbSSxILFJdfV0sIm1peC1ibGVuZCI6W3sibWl4LWJsZW5kIjpbLi4uZWYoKSwicGx1cy1kYXJrZXIiLCJwbHVzLWxpZ2h0ZXIiXX1dLCJiZy1ibGVuZCI6W3siYmctYmxlbmQiOmVmKCl9XSwibWFzay1jbGlwIjpbeyJtYXNrLWNsaXAiOlsiYm9yZGVyIiwicGFkZGluZyIsImNvbnRlbnQiLCJmaWxsIiwic3Ryb2tlIiwidmlldyJdfSwibWFzay1uby1jbGlwIl0sIm1hc2stY29tcG9zaXRlIjpbe21hc2s6WyJhZGQiLCJzdWJ0cmFjdCIsImludGVyc2VjdCIsImV4Y2x1ZGUiXX1dLCJtYXNrLWltYWdlLWxpbmVhci1wb3MiOlt7Im1hc2stbGluZWFyIjpbSV19XSwibWFzay1pbWFnZS1saW5lYXItZnJvbS1wb3MiOlt7Im1hc2stbGluZWFyLWZyb20iOmVnKCl9XSwibWFzay1pbWFnZS1saW5lYXItdG8tcG9zIjpbeyJtYXNrLWxpbmVhci10byI6ZWcoKX1dLCJtYXNrLWltYWdlLWxpbmVhci1mcm9tLWNvbG9yIjpbeyJtYXNrLWxpbmVhci1mcm9tIjplcygpfV0sIm1hc2staW1hZ2UtbGluZWFyLXRvLWNvbG9yIjpbeyJtYXNrLWxpbmVhci10byI6ZXMoKX1dLCJtYXNrLWltYWdlLXQtZnJvbS1wb3MiOlt7Im1hc2stdC1mcm9tIjplZygpfV0sIm1hc2staW1hZ2UtdC10by1wb3MiOlt7Im1hc2stdC10byI6ZWcoKX1dLCJtYXNrLWltYWdlLXQtZnJvbS1jb2xvciI6W3sibWFzay10LWZyb20iOmVzKCl9XSwibWFzay1pbWFnZS10LXRvLWNvbG9yIjpbeyJtYXNrLXQtdG8iOmVzKCl9XSwibWFzay1pbWFnZS1yLWZyb20tcG9zIjpbeyJtYXNrLXItZnJvbSI6ZWcoKX1dLCJtYXNrLWltYWdlLXItdG8tcG9zIjpbeyJtYXNrLXItdG8iOmVnKCl9XSwibWFzay1pbWFnZS1yLWZyb20tY29sb3IiOlt7Im1hc2stci1mcm9tIjplcygpfV0sIm1hc2staW1hZ2Utci10by1jb2xvciI6W3sibWFzay1yLXRvIjplcygpfV0sIm1hc2staW1hZ2UtYi1mcm9tLXBvcyI6W3sibWFzay1iLWZyb20iOmVnKCl9XSwibWFzay1pbWFnZS1iLXRvLXBvcyI6W3sibWFzay1iLXRvIjplZygpfV0sIm1hc2staW1hZ2UtYi1mcm9tLWNvbG9yIjpbeyJtYXNrLWItZnJvbSI6ZXMoKX1dLCJtYXNrLWltYWdlLWItdG8tY29sb3IiOlt7Im1hc2stYi10byI6ZXMoKX1dLCJtYXNrLWltYWdlLWwtZnJvbS1wb3MiOlt7Im1hc2stbC1mcm9tIjplZygpfV0sIm1hc2staW1hZ2UtbC10by1wb3MiOlt7Im1hc2stbC10byI6ZWcoKX1dLCJtYXNrLWltYWdlLWwtZnJvbS1jb2xvciI6W3sibWFzay1sLWZyb20iOmVzKCl9XSwibWFzay1pbWFnZS1sLXRvLWNvbG9yIjpbeyJtYXNrLWwtdG8iOmVzKCl9XSwibWFzay1pbWFnZS14LWZyb20tcG9zIjpbeyJtYXNrLXgtZnJvbSI6ZWcoKX1dLCJtYXNrLWltYWdlLXgtdG8tcG9zIjpbeyJtYXNrLXgtdG8iOmVnKCl9XSwibWFzay1pbWFnZS14LWZyb20tY29sb3IiOlt7Im1hc2steC1mcm9tIjplcygpfV0sIm1hc2staW1hZ2UteC10by1jb2xvciI6W3sibWFzay14LXRvIjplcygpfV0sIm1hc2staW1hZ2UteS1mcm9tLXBvcyI6W3sibWFzay15LWZyb20iOmVnKCl9XSwibWFzay1pbWFnZS15LXRvLXBvcyI6W3sibWFzay15LXRvIjplZygpfV0sIm1hc2staW1hZ2UteS1mcm9tLWNvbG9yIjpbeyJtYXNrLXktZnJvbSI6ZXMoKX1dLCJtYXNrLWltYWdlLXktdG8tY29sb3IiOlt7Im1hc2steS10byI6ZXMoKX1dLCJtYXNrLWltYWdlLXJhZGlhbCI6W3sibWFzay1yYWRpYWwiOltILFJdfV0sIm1hc2staW1hZ2UtcmFkaWFsLWZyb20tcG9zIjpbeyJtYXNrLXJhZGlhbC1mcm9tIjplZygpfV0sIm1hc2staW1hZ2UtcmFkaWFsLXRvLXBvcyI6W3sibWFzay1yYWRpYWwtdG8iOmVnKCl9XSwibWFzay1pbWFnZS1yYWRpYWwtZnJvbS1jb2xvciI6W3sibWFzay1yYWRpYWwtZnJvbSI6ZXMoKX1dLCJtYXNrLWltYWdlLXJhZGlhbC10by1jb2xvciI6W3sibWFzay1yYWRpYWwtdG8iOmVzKCl9XSwibWFzay1pbWFnZS1yYWRpYWwtc2hhcGUiOlt7Im1hc2stcmFkaWFsIjpbImNpcmNsZSIsImVsbGlwc2UiXX1dLCJtYXNrLWltYWdlLXJhZGlhbC1zaXplIjpbeyJtYXNrLXJhZGlhbCI6W3tjbG9zZXN0Olsic2lkZSIsImNvcm5lciJdLGZhcnRoZXN0Olsic2lkZSIsImNvcm5lciJdfV19XSwibWFzay1pbWFnZS1yYWRpYWwtcG9zIjpbeyJtYXNrLXJhZGlhbC1hdCI6eSgpfV0sIm1hc2staW1hZ2UtY29uaWMtcG9zIjpbeyJtYXNrLWNvbmljIjpbSV19XSwibWFzay1pbWFnZS1jb25pYy1mcm9tLXBvcyI6W3sibWFzay1jb25pYy1mcm9tIjplZygpfV0sIm1hc2staW1hZ2UtY29uaWMtdG8tcG9zIjpbeyJtYXNrLWNvbmljLXRvIjplZygpfV0sIm1hc2staW1hZ2UtY29uaWMtZnJvbS1jb2xvciI6W3sibWFzay1jb25pYy1mcm9tIjplcygpfV0sIm1hc2staW1hZ2UtY29uaWMtdG8tY29sb3IiOlt7Im1hc2stY29uaWMtdG8iOmVzKCl9XSwibWFzay1tb2RlIjpbe21hc2s6WyJhbHBoYSIsImx1bWluYW5jZSIsIm1hdGNoIl19XSwibWFzay1vcmlnaW4iOlt7Im1hc2stb3JpZ2luIjpbImJvcmRlciIsInBhZGRpbmciLCJjb250ZW50IiwiZmlsbCIsInN0cm9rZSIsInZpZXciXX1dLCJtYXNrLXBvc2l0aW9uIjpbe21hc2s6ZWkoKX1dLCJtYXNrLXJlcGVhdCI6W3ttYXNrOmVjKCl9XSwibWFzay1zaXplIjpbe21hc2s6ZWQoKX1dLCJtYXNrLXR5cGUiOlt7Im1hc2stdHlwZSI6WyJhbHBoYSIsImx1bWluYW5jZSJdfV0sIm1hc2staW1hZ2UiOlt7bWFzazpbIm5vbmUiLEgsUl19XSxmaWx0ZXI6W3tmaWx0ZXI6WyIiLCJub25lIixILFJdfV0sYmx1cjpbe2JsdXI6ZWgoKX1dLGJyaWdodG5lc3M6W3ticmlnaHRuZXNzOltJLEgsUl19XSxjb250cmFzdDpbe2NvbnRyYXN0OltJLEgsUl19XSwiZHJvcC1zaGFkb3ciOlt7ImRyb3Atc2hhZG93IjpbIiIsIm5vbmUiLGIsWixMXX1dLCJkcm9wLXNoYWRvdy1jb2xvciI6W3siZHJvcC1zaGFkb3ciOmVzKCl9XSxncmF5c2NhbGU6W3tncmF5c2NhbGU6WyIiLEksSCxSXX1dLCJodWUtcm90YXRlIjpbeyJodWUtcm90YXRlIjpbSSxILFJdfV0saW52ZXJ0Olt7aW52ZXJ0OlsiIixJLEgsUl19XSxzYXR1cmF0ZTpbe3NhdHVyYXRlOltJLEgsUl19XSxzZXBpYTpbe3NlcGlhOlsiIixJLEgsUl19XSwiYmFja2Ryb3AtZmlsdGVyIjpbeyJiYWNrZHJvcC1maWx0ZXIiOlsiIiwibm9uZSIsSCxSXX1dLCJiYWNrZHJvcC1ibHVyIjpbeyJiYWNrZHJvcC1ibHVyIjplaCgpfV0sImJhY2tkcm9wLWJyaWdodG5lc3MiOlt7ImJhY2tkcm9wLWJyaWdodG5lc3MiOltJLEgsUl19XSwiYmFja2Ryb3AtY29udHJhc3QiOlt7ImJhY2tkcm9wLWNvbnRyYXN0IjpbSSxILFJdfV0sImJhY2tkcm9wLWdyYXlzY2FsZSI6W3siYmFja2Ryb3AtZ3JheXNjYWxlIjpbIiIsSSxILFJdfV0sImJhY2tkcm9wLWh1ZS1yb3RhdGUiOlt7ImJhY2tkcm9wLWh1ZS1yb3RhdGUiOltJLEgsUl19XSwiYmFja2Ryb3AtaW52ZXJ0IjpbeyJiYWNrZHJvcC1pbnZlcnQiOlsiIixJLEgsUl19XSwiYmFja2Ryb3Atb3BhY2l0eSI6W3siYmFja2Ryb3Atb3BhY2l0eSI6W0ksSCxSXX1dLCJiYWNrZHJvcC1zYXR1cmF0ZSI6W3siYmFja2Ryb3Atc2F0dXJhdGUiOltJLEgsUl19XSwiYmFja2Ryb3Atc2VwaWEiOlt7ImJhY2tkcm9wLXNlcGlhIjpbIiIsSSxILFJdfV0sImJvcmRlci1jb2xsYXBzZSI6W3tib3JkZXI6WyJjb2xsYXBzZSIsInNlcGFyYXRlIl19XSwiYm9yZGVyLXNwYWNpbmciOlt7ImJvcmRlci1zcGFjaW5nIjpDKCl9XSwiYm9yZGVyLXNwYWNpbmcteCI6W3siYm9yZGVyLXNwYWNpbmcteCI6QygpfV0sImJvcmRlci1zcGFjaW5nLXkiOlt7ImJvcmRlci1zcGFjaW5nLXkiOkMoKX1dLCJ0YWJsZS1sYXlvdXQiOlt7dGFibGU6WyJhdXRvIiwiZml4ZWQiXX1dLGNhcHRpb246W3tjYXB0aW9uOlsidG9wIiwiYm90dG9tIl19XSx0cmFuc2l0aW9uOlt7dHJhbnNpdGlvbjpbIiIsImFsbCIsImNvbG9ycyIsIm9wYWNpdHkiLCJzaGFkb3ciLCJ0cmFuc2Zvcm0iLCJub25lIixILFJdfV0sInRyYW5zaXRpb24tYmVoYXZpb3IiOlt7dHJhbnNpdGlvbjpbIm5vcm1hbCIsImRpc2NyZXRlIl19XSxkdXJhdGlvbjpbe2R1cmF0aW9uOltJLCJpbml0aWFsIixILFJdfV0sZWFzZTpbe2Vhc2U6WyJsaW5lYXIiLCJpbml0aWFsIixoLEgsUl19XSxkZWxheTpbe2RlbGF5OltJLEgsUl19XSxhbmltYXRlOlt7YW5pbWF0ZTpbIm5vbmUiLHcsSCxSXX1dLGJhY2tmYWNlOlt7YmFja2ZhY2U6WyJoaWRkZW4iLCJ2aXNpYmxlIl19XSxwZXJzcGVjdGl2ZTpbe3BlcnNwZWN0aXZlOltmLEgsUl19XSwicGVyc3BlY3RpdmUtb3JpZ2luIjpbeyJwZXJzcGVjdGl2ZS1vcmlnaW4iOnYoKX1dLHJvdGF0ZTpbe3JvdGF0ZTplaygpfV0sInJvdGF0ZS14IjpbeyJyb3RhdGUteCI6ZWsoKX1dLCJyb3RhdGUteSI6W3sicm90YXRlLXkiOmVrKCl9XSwicm90YXRlLXoiOlt7InJvdGF0ZS16IjplaygpfV0sc2NhbGU6W3tzY2FsZTpldygpfV0sInNjYWxlLXgiOlt7InNjYWxlLXgiOmV3KCl9XSwic2NhbGUteSI6W3sic2NhbGUteSI6ZXcoKX1dLCJzY2FsZS16IjpbeyJzY2FsZS16IjpldygpfV0sInNjYWxlLTNkIjpbInNjYWxlLTNkIl0sc2tldzpbe3NrZXc6ZXgoKX1dLCJza2V3LXgiOlt7InNrZXcteCI6ZXgoKX1dLCJza2V3LXkiOlt7InNrZXcteSI6ZXgoKX1dLHRyYW5zZm9ybTpbe3RyYW5zZm9ybTpbSCxSLCIiLCJub25lIiwiZ3B1IiwiY3B1Il19XSwidHJhbnNmb3JtLW9yaWdpbiI6W3tvcmlnaW46digpfV0sInRyYW5zZm9ybS1zdHlsZSI6W3t0cmFuc2Zvcm06WyIzZCIsImZsYXQiXX1dLHRyYW5zbGF0ZTpbe3RyYW5zbGF0ZTpleSgpfV0sInRyYW5zbGF0ZS14IjpbeyJ0cmFuc2xhdGUteCI6ZXkoKX1dLCJ0cmFuc2xhdGUteSI6W3sidHJhbnNsYXRlLXkiOmV5KCl9XSwidHJhbnNsYXRlLXoiOlt7InRyYW5zbGF0ZS16IjpleSgpfV0sInRyYW5zbGF0ZS1ub25lIjpbInRyYW5zbGF0ZS1ub25lIl0sYWNjZW50Olt7YWNjZW50OmVzKCl9XSxhcHBlYXJhbmNlOlt7YXBwZWFyYW5jZTpbIm5vbmUiLCJhdXRvIl19XSwiY2FyZXQtY29sb3IiOlt7Y2FyZXQ6ZXMoKX1dLCJjb2xvci1zY2hlbWUiOlt7c2NoZW1lOlsibm9ybWFsIiwiZGFyayIsImxpZ2h0IiwibGlnaHQtZGFyayIsIm9ubHktZGFyayIsIm9ubHktbGlnaHQiXX1dLGN1cnNvcjpbe2N1cnNvcjpbImF1dG8iLCJkZWZhdWx0IiwicG9pbnRlciIsIndhaXQiLCJ0ZXh0IiwibW92ZSIsImhlbHAiLCJub3QtYWxsb3dlZCIsIm5vbmUiLCJjb250ZXh0LW1lbnUiLCJwcm9ncmVzcyIsImNlbGwiLCJjcm9zc2hhaXIiLCJ2ZXJ0aWNhbC10ZXh0IiwiYWxpYXMiLCJjb3B5Iiwibm8tZHJvcCIsImdyYWIiLCJncmFiYmluZyIsImFsbC1zY3JvbGwiLCJjb2wtcmVzaXplIiwicm93LXJlc2l6ZSIsIm4tcmVzaXplIiwiZS1yZXNpemUiLCJzLXJlc2l6ZSIsInctcmVzaXplIiwibmUtcmVzaXplIiwibnctcmVzaXplIiwic2UtcmVzaXplIiwic3ctcmVzaXplIiwiZXctcmVzaXplIiwibnMtcmVzaXplIiwibmVzdy1yZXNpemUiLCJud3NlLXJlc2l6ZSIsInpvb20taW4iLCJ6b29tLW91dCIsSCxSXX1dLCJmaWVsZC1zaXppbmciOlt7ImZpZWxkLXNpemluZyI6WyJmaXhlZCIsImNvbnRlbnQiXX1dLCJwb2ludGVyLWV2ZW50cyI6W3sicG9pbnRlci1ldmVudHMiOlsiYXV0byIsIm5vbmUiXX1dLHJlc2l6ZTpbe3Jlc2l6ZTpbIm5vbmUiLCIiLCJ5IiwieCJdfV0sInNjcm9sbC1iZWhhdmlvciI6W3tzY3JvbGw6WyJhdXRvIiwic21vb3RoIl19XSwic2Nyb2xsLW0iOlt7InNjcm9sbC1tIjpDKCl9XSwic2Nyb2xsLW14IjpbeyJzY3JvbGwtbXgiOkMoKX1dLCJzY3JvbGwtbXkiOlt7InNjcm9sbC1teSI6QygpfV0sInNjcm9sbC1tcyI6W3sic2Nyb2xsLW1zIjpDKCl9XSwic2Nyb2xsLW1lIjpbeyJzY3JvbGwtbWUiOkMoKX1dLCJzY3JvbGwtbWJzIjpbeyJzY3JvbGwtbWJzIjpDKCl9XSwic2Nyb2xsLW1iZSI6W3sic2Nyb2xsLW1iZSI6QygpfV0sInNjcm9sbC1tdCI6W3sic2Nyb2xsLW10IjpDKCl9XSwic2Nyb2xsLW1yIjpbeyJzY3JvbGwtbXIiOkMoKX1dLCJzY3JvbGwtbWIiOlt7InNjcm9sbC1tYiI6QygpfV0sInNjcm9sbC1tbCI6W3sic2Nyb2xsLW1sIjpDKCl9XSwic2Nyb2xsLXAiOlt7InNjcm9sbC1wIjpDKCl9XSwic2Nyb2xsLXB4IjpbeyJzY3JvbGwtcHgiOkMoKX1dLCJzY3JvbGwtcHkiOlt7InNjcm9sbC1weSI6QygpfV0sInNjcm9sbC1wcyI6W3sic2Nyb2xsLXBzIjpDKCl9XSwic2Nyb2xsLXBlIjpbeyJzY3JvbGwtcGUiOkMoKX1dLCJzY3JvbGwtcGJzIjpbeyJzY3JvbGwtcGJzIjpDKCl9XSwic2Nyb2xsLXBiZSI6W3sic2Nyb2xsLXBiZSI6QygpfV0sInNjcm9sbC1wdCI6W3sic2Nyb2xsLXB0IjpDKCl9XSwic2Nyb2xsLXByIjpbeyJzY3JvbGwtcHIiOkMoKX1dLCJzY3JvbGwtcGIiOlt7InNjcm9sbC1wYiI6QygpfV0sInNjcm9sbC1wbCI6W3sic2Nyb2xsLXBsIjpDKCl9XSwic25hcC1hbGlnbiI6W3tzbmFwOlsic3RhcnQiLCJlbmQiLCJjZW50ZXIiLCJhbGlnbi1ub25lIl19XSwic25hcC1zdG9wIjpbe3NuYXA6WyJub3JtYWwiLCJhbHdheXMiXX1dLCJzbmFwLXR5cGUiOlt7c25hcDpbIm5vbmUiLCJ4IiwieSIsImJvdGgiXX1dLCJzbmFwLXN0cmljdG5lc3MiOlt7c25hcDpbIm1hbmRhdG9yeSIsInByb3hpbWl0eSJdfV0sdG91Y2g6W3t0b3VjaDpbImF1dG8iLCJub25lIiwibWFuaXB1bGF0aW9uIl19XSwidG91Y2gteCI6W3sidG91Y2gtcGFuIjpbIngiLCJsZWZ0IiwicmlnaHQiXX1dLCJ0b3VjaC15IjpbeyJ0b3VjaC1wYW4iOlsieSIsInVwIiwiZG93biJdfV0sInRvdWNoLXB6IjpbInRvdWNoLXBpbmNoLXpvb20iXSxzZWxlY3Q6W3tzZWxlY3Q6WyJub25lIiwidGV4dCIsImFsbCIsImF1dG8iXX1dLCJ3aWxsLWNoYW5nZSI6W3sid2lsbC1jaGFuZ2UiOlsiYXV0byIsInNjcm9sbCIsImNvbnRlbnRzIiwidHJhbnNmb3JtIixILFJdfV0sZmlsbDpbe2ZpbGw6WyJub25lIiwuLi5lcygpXX1dLCJzdHJva2UtdyI6W3tzdHJva2U6W0ksSixELHFdfV0sc3Ryb2tlOlt7c3Ryb2tlOlsibm9uZSIsLi4uZXMoKV19XSwiZm9yY2VkLWNvbG9yLWFkanVzdCI6W3siZm9yY2VkLWNvbG9yLWFkanVzdCI6WyJhdXRvIiwibm9uZSJdfV19LGNvbmZsaWN0aW5nQ2xhc3NHcm91cHM6e292ZXJmbG93Olsib3ZlcmZsb3cteCIsIm92ZXJmbG93LXkiXSxvdmVyc2Nyb2xsOlsib3ZlcnNjcm9sbC14Iiwib3ZlcnNjcm9sbC15Il0saW5zZXQ6WyJpbnNldC14IiwiaW5zZXQteSIsImluc2V0LWJzIiwiaW5zZXQtYmUiLCJzdGFydCIsImVuZCIsInRvcCIsInJpZ2h0IiwiYm90dG9tIiwibGVmdCJdLCJpbnNldC14IjpbInJpZ2h0IiwibGVmdCJdLCJpbnNldC15IjpbInRvcCIsImJvdHRvbSJdLGZsZXg6WyJiYXNpcyIsImdyb3ciLCJzaHJpbmsiXSxnYXA6WyJnYXAteCIsImdhcC15Il0scDpbInB4IiwicHkiLCJwcyIsInBlIiwicGJzIiwicGJlIiwicHQiLCJwciIsInBiIiwicGwiXSxweDpbInByIiwicGwiXSxweTpbInB0IiwicGIiXSxtOlsibXgiLCJteSIsIm1zIiwibWUiLCJtYnMiLCJtYmUiLCJtdCIsIm1yIiwibWIiLCJtbCJdLG14OlsibXIiLCJtbCJdLG15OlsibXQiLCJtYiJdLHNpemU6WyJ3IiwiaCJdLCJmb250LXNpemUiOlsibGVhZGluZyJdLCJmdm4tbm9ybWFsIjpbImZ2bi1vcmRpbmFsIiwiZnZuLXNsYXNoZWQtemVybyIsImZ2bi1maWd1cmUiLCJmdm4tc3BhY2luZyIsImZ2bi1mcmFjdGlvbiJdLCJmdm4tb3JkaW5hbCI6WyJmdm4tbm9ybWFsIl0sImZ2bi1zbGFzaGVkLXplcm8iOlsiZnZuLW5vcm1hbCJdLCJmdm4tZmlndXJlIjpbImZ2bi1ub3JtYWwiXSwiZnZuLXNwYWNpbmciOlsiZnZuLW5vcm1hbCJdLCJmdm4tZnJhY3Rpb24iOlsiZnZuLW5vcm1hbCJdLCJsaW5lLWNsYW1wIjpbImRpc3BsYXkiLCJvdmVyZmxvdyJdLHJvdW5kZWQ6WyJyb3VuZGVkLXMiLCJyb3VuZGVkLWUiLCJyb3VuZGVkLXQiLCJyb3VuZGVkLXIiLCJyb3VuZGVkLWIiLCJyb3VuZGVkLWwiLCJyb3VuZGVkLXNzIiwicm91bmRlZC1zZSIsInJvdW5kZWQtZWUiLCJyb3VuZGVkLWVzIiwicm91bmRlZC10bCIsInJvdW5kZWQtdHIiLCJyb3VuZGVkLWJyIiwicm91bmRlZC1ibCJdLCJyb3VuZGVkLXMiOlsicm91bmRlZC1zcyIsInJvdW5kZWQtZXMiXSwicm91bmRlZC1lIjpbInJvdW5kZWQtc2UiLCJyb3VuZGVkLWVlIl0sInJvdW5kZWQtdCI6WyJyb3VuZGVkLXRsIiwicm91bmRlZC10ciJdLCJyb3VuZGVkLXIiOlsicm91bmRlZC10ciIsInJvdW5kZWQtYnIiXSwicm91bmRlZC1iIjpbInJvdW5kZWQtYnIiLCJyb3VuZGVkLWJsIl0sInJvdW5kZWQtbCI6WyJyb3VuZGVkLXRsIiwicm91bmRlZC1ibCJdLCJib3JkZXItc3BhY2luZyI6WyJib3JkZXItc3BhY2luZy14IiwiYm9yZGVyLXNwYWNpbmcteSJdLCJib3JkZXItdyI6WyJib3JkZXItdy14IiwiYm9yZGVyLXcteSIsImJvcmRlci13LXMiLCJib3JkZXItdy1lIiwiYm9yZGVyLXctYnMiLCJib3JkZXItdy1iZSIsImJvcmRlci13LXQiLCJib3JkZXItdy1yIiwiYm9yZGVyLXctYiIsImJvcmRlci13LWwiXSwiYm9yZGVyLXcteCI6WyJib3JkZXItdy1yIiwiYm9yZGVyLXctbCJdLCJib3JkZXItdy15IjpbImJvcmRlci13LXQiLCJib3JkZXItdy1iIl0sImJvcmRlci1jb2xvciI6WyJib3JkZXItY29sb3IteCIsImJvcmRlci1jb2xvci15IiwiYm9yZGVyLWNvbG9yLXMiLCJib3JkZXItY29sb3ItZSIsImJvcmRlci1jb2xvci1icyIsImJvcmRlci1jb2xvci1iZSIsImJvcmRlci1jb2xvci10IiwiYm9yZGVyLWNvbG9yLXIiLCJib3JkZXItY29sb3ItYiIsImJvcmRlci1jb2xvci1sIl0sImJvcmRlci1jb2xvci14IjpbImJvcmRlci1jb2xvci1yIiwiYm9yZGVyLWNvbG9yLWwiXSwiYm9yZGVyLWNvbG9yLXkiOlsiYm9yZGVyLWNvbG9yLXQiLCJib3JkZXItY29sb3ItYiJdLHRyYW5zbGF0ZTpbInRyYW5zbGF0ZS14IiwidHJhbnNsYXRlLXkiLCJ0cmFuc2xhdGUtbm9uZSJdLCJ0cmFuc2xhdGUtbm9uZSI6WyJ0cmFuc2xhdGUiLCJ0cmFuc2xhdGUteCIsInRyYW5zbGF0ZS15IiwidHJhbnNsYXRlLXoiXSwic2Nyb2xsLW0iOlsic2Nyb2xsLW14Iiwic2Nyb2xsLW15Iiwic2Nyb2xsLW1zIiwic2Nyb2xsLW1lIiwic2Nyb2xsLW1icyIsInNjcm9sbC1tYmUiLCJzY3JvbGwtbXQiLCJzY3JvbGwtbXIiLCJzY3JvbGwtbWIiLCJzY3JvbGwtbWwiXSwic2Nyb2xsLW14IjpbInNjcm9sbC1tciIsInNjcm9sbC1tbCJdLCJzY3JvbGwtbXkiOlsic2Nyb2xsLW10Iiwic2Nyb2xsLW1iIl0sInNjcm9sbC1wIjpbInNjcm9sbC1weCIsInNjcm9sbC1weSIsInNjcm9sbC1wcyIsInNjcm9sbC1wZSIsInNjcm9sbC1wYnMiLCJzY3JvbGwtcGJlIiwic2Nyb2xsLXB0Iiwic2Nyb2xsLXByIiwic2Nyb2xsLXBiIiwic2Nyb2xsLXBsIl0sInNjcm9sbC1weCI6WyJzY3JvbGwtcHIiLCJzY3JvbGwtcGwiXSwic2Nyb2xsLXB5IjpbInNjcm9sbC1wdCIsInNjcm9sbC1wYiJdLHRvdWNoOlsidG91Y2gteCIsInRvdWNoLXkiLCJ0b3VjaC1weiJdLCJ0b3VjaC14IjpbInRvdWNoIl0sInRvdWNoLXkiOlsidG91Y2giXSwidG91Y2gtcHoiOlsidG91Y2giXX0sY29uZmxpY3RpbmdDbGFzc0dyb3VwTW9kaWZpZXJzOnsiZm9udC1zaXplIjpbImxlYWRpbmciXX0sb3JkZXJTZW5zaXRpdmVNb2RpZmllcnM6WyIqIiwiKioiLCJhZnRlciIsImJhY2tkcm9wIiwiYmVmb3JlIiwiZGV0YWlscy1jb250ZW50IiwiZmlsZSIsImZpcnN0LWxldHRlciIsImZpcnN0LWxpbmUiLCJtYXJrZXIiLCJwbGFjZWhvbGRlciIsInNlbGVjdGlvbiJdfX0pO2Z1bmN0aW9uIGVwKC4uLmUpe3JldHVybiBlbShyKGUpKX1mdW5jdGlvbiBlYihlLHIpe3JldHVybmAvY29pbi8ke2UudG9VcHBlckNhc2UoKX0vJHtlbmNvZGVVUklDb21wb25lbnQoci50cmltKCkucmVwbGFjZSgvXHMrL2csIi0iKSl9YH1sZXQgZXU9bmV3IFNldChbImNvaW5saWIuaW8iLCJ3d3cuY29pbmxpYi5pbyIsImNvaW5saWIudmVyY2VsLmFwcCJdKTtmdW5jdGlvbiBlZihlKXtpZighZXx8ZS5zdGFydHNXaXRoKCIvIil8fGUuc3RhcnRzV2l0aCgiIyIpKXJldHVybiExO2lmKC9eKG1haWx0b3x0ZWwpOi9pLnRlc3QoZSkpcmV0dXJuITA7dHJ5e2xldCByPW5ldyBVUkwoZSk7cmV0dXJuIWV1LmhhcyhyLmhvc3RuYW1lKX1jYXRjaHtyZXR1cm4hMX19bGV0IGVnPW5ldyBJbnRsLk51bWJlckZvcm1hdCgiZW4tVVMiLHtub3RhdGlvbjoiY29tcGFjdCIsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjJ9KTtmdW5jdGlvbiBlaChlKXtyZXR1cm4gZWcuZm9ybWF0KGUpfWZ1bmN0aW9uIGVrKGUscj0idXNkIil7cmV0dXJuIG5ldyBJbnRsLk51bWJlckZvcm1hdCgiZW4tVVMiLHtzdHlsZToiY3VycmVuY3kiLGN1cnJlbmN5OnIudG9VcHBlckNhc2UoKSxtaW5pbXVtRnJhY3Rpb25EaWdpdHM6MixtYXhpbXVtRnJhY3Rpb25EaWdpdHM6ZTwxPzY6ZTwxMDA/NDoyfSkuZm9ybWF0KGUpfWZ1bmN0aW9uIGV3KGUpe3JldHVybmAke2U+PTA/IisiOiIifSR7ZS50b0ZpeGVkKDIpfSVgfWZ1bmN0aW9uIGV4KGUpe3JldHVybiBuZXcgSW50bC5OdW1iZXJGb3JtYXQoImVuLVVTIikuZm9ybWF0KGUpfWUucyhbImNuIiwoKT0+ZXAsImNvaW5VcmwiLCgpPT5lYiwiZm9ybWF0Q29tcGFjdCIsKCk9PmVoLCJmb3JtYXROdW1iZXIiLCgpPT5leCwiZm9ybWF0UGVyY2VudGFnZSIsKCk9PmV3LCJmb3JtYXRQcmljZSIsKCk9PmVrLCJpc0V4dGVybmFsVXJsIiwoKT0+ZWZdLDc1MTU3KX1dKTs="}},"time_used":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.youtube.com/s/player/7a7969c2/www-player.css","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.youtube.com/embed/4ekOcDG2D8E","date":"2026-07-27T13:20:33.148Z","timestamp":1785158433148,"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/4ekOcDG2D8E\r\nCookie: __Secure-YNID=20.YT=gH5UekW7d1yJXHdyAWP9D3nuufltIP5U3L-OJPITdfVo4QFdUpGIlO1MrkvQo6k6kl0jq_pOZAm0Y6StBGPZKrWCX-Ie8T1zxUJW6abmYuVU53Il1VEq4vUs5vvLfbgZGHz1eALkxngiX8bUsdRMr2vaKLTZJ0IBhq1y-2EM8N90iJ0cyWzGnhUGzNxuZzHw9HXFuIwKItlZKR3JI0AWby-eMB-aedGxFUVnqseGfA1HlqbnqC5EymsVz59X4lHMwh44OYJRjaiXEEhEetat2qsHLh8v23W9zHmKOEE2ZhT3CAsXUCZ0LdHpvohM6BZq6G030fjyK9N5mMzUa8e_Fw; YSC=n_kiEdK62Us; VISITOR_INFO1_LIVE=oxtQMHpPyNo; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgEg%3D%3D; __Secure-ROLLOUT_TOKEN=CKOus_iU9NnYzgEQ5fqIsvnylQMY5fqIsvnylQM%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: 453105\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":525369,"size_decoded":58026,"mime_type":"text/css","magic":"Unicode text, UTF-8 text, with very long lines (65534), with no line terminators","md5":"839a152020ccf30ae48724d0b0c7b838","sha1":"dc9e04d667f3ebd589549aaa4cfc8a8e887505e1","sha256":"921b6856085a224b1ca2e5db139b1788c01d4dd1e70daca7006b6a7b381bdae1","sha512":"efc3700ca9d21022fb13b33c526a2f9f6c73c6c063957504b3b8ed58ef9512fa815c7f915f522af2f3fa73dd7cbfd6634566ad1dc6c86f11f4ed0a4b74f824ce","ssdeep":"6144:s8d5Fe/qoMOg7USBfUIoImM5Kia68Oi4u7:3YxMOg7USiIoIr5Kia6Tg","tlshash":"8eb4d972f0a1233cb2278d59a7d9d54d7339d983e2e12aeff11166dacbc77811326206","first_seen":"2026-07-14T08:36:18.809394Z","last_seen":"2026-07-28T16:17:31.518857Z","times_seen":5127,"resource_available":false,"data":"QGNoYXJzZXQgIlVURi04IjsuaHRtbDUtdmlkZW8tcGxheWVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3otaW5kZXg6MDtvdXRsaW5lOjA7Zm9udC1mYW1pbHk6WW91VHViZSBOb3RvLFJvYm90byxBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtjb2xvcjojZWVlO3RleHQtYWxpZ246bGVmdDtkaXJlY3Rpb246bHRyO2ZvbnQtc2l6ZToxMXB4O2xpbmUtaGVpZ2h0OjEuMzstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjpyZ2JhKDAsMCwwLDApO3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb259Lmh0bWw1LXZpZGVvLXBsYXllciwueXRwLWNvbnRleHRtZW51ey1tcy1oaWdoLWNvbnRyYXN0LWFkanVzdDpub25lO2ZvcmNlZC1jb2xvci1hZGp1c3Q6bm9uZX0uaHRtbDUtdmlkZW8tcGxheWVyLmFkLXNob3dpbmcsLmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlLC5odG1sNS12aWRlby1wbGF5ZXIudW5zdGFydGVkLW1vZGUsLmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC10cmFuc3BhcmVudCl7YmFja2dyb3VuZC1jb2xvcjojMDAwfS55dGQtdmlkZW8tbWFzdGhlYWQtYWQtcHJpbWFyeS12aWRlby1yZW5kZXJlciAuaHRtbDUtdmlkZW8tcGxheWVyLmFkLXNob3dpbmcsLnl0ZC12aWRlby1tYXN0aGVhZC1hZC1wcmltYXJ5LXZpZGVvLXJlbmRlcmVyIC5odG1sNS12aWRlby1wbGF5ZXIuZW5kZWQtbW9kZSwueXRkLXZpZGVvLW1hc3RoZWFkLWFkLXByaW1hcnktdmlkZW8tcmVuZGVyZXIgLmh0bWw1LXZpZGVvLXBsYXllci51bnN0YXJ0ZWQtbW9kZSwueXRkLXZpZGVvLW1hc3RoZWFkLWFkLXByaW1hcnktdmlkZW8tcmVuZGVyZXIgLmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC10cmFuc3BhcmVudCl7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ueXRwLWJpZy1tb2Rle2ZvbnQtc2l6ZToxN3B4fS55dHAtYXV0b2hpZGV7Y3Vyc29yOm5vbmV9Lmh0bWw1LXZpZGVvLXBsYXllciBhe2NvbG9yOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOmNvbG9yIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246Y29sb3IgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7b3V0bGluZTowfS5odG1sNS12aWRlby1wbGF5ZXIgYTpob3Zlcntjb2xvcjojZmZmOy13ZWJraXQtdHJhbnNpdGlvbjpjb2xvciAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmNvbG9yIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtcHJvYmFibHkta2V5Ym9hcmQtZm9jdXMgYTpmb2N1c3std2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAwIDAgMnB4IHJnYmEoMjcsMTI3LDIwNCwuOCk7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC44KX0uaHRtbDUtdmlkZW8tcGxheWVyIGgxLC5odG1sNS12aWRlby1wbGF5ZXIgaDJ7bWFyZ2luOjB9Lmh0bWw1LXZpZGVvLXBsYXllciBzdmd7cG9pbnRlci1ldmVudHM6bm9uZX0uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLXRvdWNoLW1vZGUpIDo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6MTBweDtiYWNrZ3JvdW5kLWNvbG9yOiM0MjQyNDJ9Lnl0cC1iaWctbW9kZTpub3QoLnl0cC10b3VjaC1tb2RlKSA6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjE1cHh9Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC10b3VjaC1tb2RlKSA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQtY29sb3I6IzQyNDI0Mn0uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLXRvdWNoLW1vZGUpIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojOGU4ZThlO2JvcmRlcjoxcHggc29saWQgIzQyNDI0Mjtib3JkZXItcmFkaXVzOjVweH0ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXRvdWNoLW1vZGUpIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7Ym9yZGVyLXJhZGl1czo4cHh9Lmh0bWw1LXZpZGVvLWNvbnRhaW5lcnt6LWluZGV4OjEwO3Bvc2l0aW9uOnJlbGF0aXZlfS55dHAtZW1iZWQtZXJyb3IgLmh0bWw1LXZpZGVvLWNvbnRhaW5lcntkaXNwbGF5Om5vbmV9Lmh0bWw1LW1haW4tdmlkZW97cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b3V0bGluZTowfS55dHAtZml0LWNvdmVyLXZpZGVvIC5odG1sNS1tYWluLXZpZGVvey1vLW9iamVjdC1maXQ6Y292ZXI7b2JqZWN0LWZpdDpjb3Zlcn0uaHRtbDUtbWFpbi12aWRlb1tkYXRhLW5vLWZ1bGxzY3JlZW49dHJ1ZV06Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi1idXR0b257ZGlzcGxheTpub25lfS5odG1sNS1tYWluLXZpZGVvOm5vdChbY29udHJvbHNdKTo6LXdlYmtpdC1tZWRpYS1jb250cm9scywuaHRtbDUtbWFpbi12aWRlbzpub3QoW2NvbnRyb2xzXSk6Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc3RhcnQtcGxheWJhY2stYnV0dG9ue2Rpc3BsYXk6bm9uZX0uaHRtbDUtbWFpbi12aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lbGluZXtkaXNwbGF5OmlubGluZX0udW5zdGFydGVkLW1vZGUgLmh0bWw1LW1haW4tdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc3RhcnQtcGxheWJhY2stYnV0dG9ue2Rpc3BsYXk6bm9uZX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjMyNXB4KXsuaHRtbDUtbWFpbi12aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy13aXJlbGVzcy1wbGF5YmFjay1waWNrZXItYnV0dG9ue2Rpc3BsYXk6bm9uZX19Lmh0bWw1LW1haW4tdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtY3VycmVudC10aW1lLWRpc3BsYXksLmh0bWw1LW1haW4tdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZS1yZW1haW5pbmctZGlzcGxheXtkaXNwbGF5Oi13ZWJraXQtZmxleH0ueXRwLXBsYXllci1jb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO3RvcDo0OHB4O2JvdHRvbTo2MXB4Oy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLHRvcCAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLHRvcCAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wbGF5ZXItY29udGVudHtib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDE0cHgpfS55dHAtZGVsaGktbW9kZXJuOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKTpub3QoLmFkLXNob3dpbmcpIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyAxNHB4KX0ueXRwLWRlbGhpLW1vZGVybjpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSk6bm90KC5hZC1zaG93aW5nKS55dHAtaGFzLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9ucyAueXRwLXBsYXllci1jb250ZW50e2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgOTRweCl9Lnl0cC1kZWxoaS1tb2Rlcm46bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpOm5vdCguYWQtc2hvd2luZykueXRwLWhhcy1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnMueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyA5NHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWRlbGhpLW1vZGVybjpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSk6bm90KC5hZC1zaG93aW5nKS55dHAtYmlnLW1vZGUgLnl0cC1wbGF5ZXItY29udGVudHtib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA5NnB4KSArIDE0cHgpfS55dHAtZGVsaGktbW9kZXJuOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKTpub3QoLmFkLXNob3dpbmcpLnl0cC1iaWctbW9kZS55dHAtaGFzLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9ucyAueXRwLXBsYXllci1jb250ZW50e2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgOTRweCl9Lnl0cC1kZWxoaS1tb2Rlcm46bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpOm5vdCguYWQtc2hvd2luZykueXRwLWJpZy1tb2RlLnl0cC1oYXMtZnVsbHNjcmVlbi1xdWljay1hY3Rpb25zLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLXBsYXllci1jb250ZW50e2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgOTRweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1zbWFsbC1tb2RlIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOjQ5cHh9Lnl0cC1lbWJlZCAueXRwLXBsYXllci1jb250ZW50e2JvdHRvbTo1M3B4fS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLXBsYXllci1jb250ZW50Om5vdCgueXRwLXVwbmV4dCl7dG9wOjYwcHh9Lnl0cC1iaWctbW9kZSAueXRwLXBsYXllci1jb250ZW50e3RvcDo2OXB4O2JvdHRvbTo3MHB4fS55dHAtYmlnLW1vZGUueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykgLnl0cC1wbGF5ZXItY29udGVudDpub3QoLnl0cC11cG5leHQpe3RvcDo4OXB4fS55dHAtcGxheWVyLWNvbnRlbnQueXRwLWl2LXBsYXllci1jb250ZW50LC55dHAtcGxheWVyLWNvbnRlbnQueXRwLXRpbWVseS1hY3Rpb25zLWNvbnRlbnR7bGVmdDoxMnB4O3JpZ2h0OjEycHh9Lnl0cC1icmFuZGluZy1zaG93biAueXRwLXBsYXllci1jb250ZW50Lnl0cC10aW1lbHktYWN0aW9ucy1jb250ZW50e3JpZ2h0OmNhbGMoMjJweCArIHZhcigtLWJyYW5kaW5nLWltYWdlLXdpZHRoKSl9Lnl0cC1iaWctbW9kZSAueXRwLXBsYXllci1jb250ZW50Lnl0cC1pdi1wbGF5ZXItY29udGVudCwueXRwLWJpZy1tb2RlIC55dHAtcGxheWVyLWNvbnRlbnQueXRwLXRpbWVseS1hY3Rpb25zLWNvbnRlbnR7bGVmdDoyNHB4O3JpZ2h0OjI0cHh9Lnl0cC1icmFuZGluZy1zaG93bi55dHAtYmlnLW1vZGUgLnl0cC1wbGF5ZXItY29udGVudC55dHAtdGltZWx5LWFjdGlvbnMtY29udGVudHtyaWdodDpjYWxjKDIycHggKyB2YXIoLS1icmFuZGluZy1pbWFnZS13aWR0aCkpfS55dHAtYXV0b2hpZGUgLnl0cC1wbGF5ZXItY29udGVudDpub3QoLmh0bWw1LWVuZHNjcmVlbiksLnl0cC1hdXRvaGlkZSAueXRwLXBsYXllci1jb250ZW50Om5vdCgueXRwLXVwbmV4dCksLnl0cC1oaWRlLWluZm8tYmFyIC55dHAtcGxheWVyLWNvbnRlbnR7dG9wOjA7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSx0b3AgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksdG9wIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYXV0b2hpZGUgLnl0cC15cGMtcGxheWVyLWNvbnRlbnQsLnl0cC1oaWRlLWNvbnRyb2xzIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOjB9Lnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hZC1vdmVybGF5LW9wZW4pIC55dHAtaXYtcGxheWVyLWNvbnRlbnQsLnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hZC1vdmVybGF5LW9wZW4pIC55dHAtdGltZWx5LWFjdGlvbnMtY29udGVudCwueXRwLWhpZGUtY29udHJvbHMgLnl0cC1pdi1wbGF5ZXItY29udGVudCwueXRwLWhpZGUtY29udHJvbHMgLnl0cC10aW1lbHktYWN0aW9ucy1jb250ZW50e2JvdHRvbToxMnB4fS55dHAtdGltZWx5LWFjdGlvbnMtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtyaWdodDowO3otaW5kZXg6MzU7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpOy13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTouMzNzO3RyYW5zaXRpb24tZGVsYXk6LjMzc30ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktYm90dG9tLXJpZ2h0IC55dHAtcGxheWVyLWNvbnRlbnQueXRwLXRpbWVseS1hY3Rpb25zLWNvbnRlbnQsLnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC1vdmVybGF5LWJvdHRvbS1yaWdodCAueXRwLXRpbWVseS1hY3Rpb25zLW92ZXJsYXl7cG9zaXRpb246cmVsYXRpdmU7aW5zZXQ6MH0ueXRwLWZpbmUtc2NydWJiaW5nLWVuYWJsZSAueXRwLXRpbWVseS1hY3Rpb25zLW92ZXJsYXl7ZGlzcGxheTpub25lfS55dHAtYWQtb3ZlcmxheS1vcGVuIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOjE1MXB4fS55dHAtc21hbGwtbW9kZS55dHAtYWQtb3ZlcmxheS1vcGVuIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOjEzOXB4fS55dHAtZW1iZWQueXRwLWFkLW92ZXJsYXktb3BlbiAueXRwLXBsYXllci1jb250ZW50e2JvdHRvbToxNDNweH0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hZC1vdmVybGF5LW9wZW4pIC55dHAtaXYtcGxheWVyLWNvbnRlbnQsLnl0cC1iaWctbW9kZS55dHAtYXV0b2hpZGU6bm90KC55dHAtYWQtb3ZlcmxheS1vcGVuKSAueXRwLXRpbWVseS1hY3Rpb25zLWNvbnRlbnQsLnl0cC1iaWctbW9kZS55dHAtaGlkZS1jb250cm9scyAueXRwLWl2LXBsYXllci1jb250ZW50LC55dHAtYmlnLW1vZGUueXRwLWhpZGUtY29udHJvbHMgLnl0cC10aW1lbHktYWN0aW9ucy1jb250ZW50e2JvdHRvbToyNHB4fS55dHAtYmlnLW1vZGUueXRwLWFkLW92ZXJsYXktb3BlbiAueXRwLXBsYXllci1jb250ZW50e2JvdHRvbToxNjBweH0ueXRwLWJ1dHRvbntib3JkZXI6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmc6MDtjb2xvcjppbmhlcml0O3RleHQtYWxpZ246aW5oZXJpdDtmb250LXNpemU6MTAwJTtmb250LWZhbWlseTppbmhlcml0O2N1cnNvcjpkZWZhdWx0O2xpbmUtaGVpZ2h0OmluaGVyaXR9Lnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24gc3Zne3BhZGRpbmc6dmFyKC0teXQtZGVsaGktcGlsbC10b3AtaGVpZ2h0LDEycHgpIDEycHh9Lnl0cC1iaWctbW9kZS55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uIHN2Z3t2ZXJ0aWNhbC1hbGlnbjp0b3A7cGFkZGluZzpjYWxjKCh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkgLSAyNHB4KS8yKX0ueXRwLXhzbWFsbC13aWR0aC1tb2RlLnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLnl0cC1sZWZ0LWNvbnRyb2xzIC55dHAtbXV0ZS1idXR0b24ueXRwLXN0YW5kYWxvbmUtbXV0ZS1idXR0b24gc3Zne3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7cGFkZGluZzo5cHh9Lnl0cC14c21hbGwtd2lkdGgtbW9kZS55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtcmlnaHQtY29udHJvbHMgLnl0cC1idXR0b246bm90KC55dHAtZXhwYW5kLXJpZ2h0LWJvdHRvbS1zZWN0aW9uLWJ1dHRvbikgc3Zne3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7cGFkZGluZzo3cHh9Lnl0cC14c21hbGwtd2lkdGgtbW9kZS55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtcmlnaHQtY29udHJvbHMgLnl0cC1leHBhbmQtcmlnaHQtYm90dG9tLXNlY3Rpb24tYnV0dG9uLnl0cC1idXR0b24gc3Zne3BhZGRpbmc6MH0ueXRwLWJ1dHRvbiwueXRwLWJ1dHRvbjpmb2N1c3tvdXRsaW5lOjB9Lnl0cC1idXR0b246Oi1tb3otZm9jdXMtaW5uZXJ7cGFkZGluZzowO2JvcmRlcjowfS5odG1sNS12aWRlby1wbGF5ZXIgLnl0cC1idXR0b25bYXJpYS1kaXNhYmxlZD10cnVlXSwuaHRtbDUtdmlkZW8tcGxheWVyIC55dHAtYnV0dG9uW2Rpc2FibGVkXXtvcGFjaXR5Oi41fS55dHAtYnV0dG9uOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSk6bm90KFtkaXNhYmxlZF0pOm5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pe2N1cnNvcjpwb2ludGVyfS55dHAtcHJvYmFibHkta2V5Ym9hcmQtZm9jdXMgLnl0cC1idXR0b246Zm9jdXN7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCByZ2JhKDI3LDEyNywyMDQsLjgpO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMnB4IHJnYmEoMjcsMTI3LDIwNCwuOCl9Lnl0cC1jaHJvbWUtYm90dG9tLC55dHAtY2hyb21lLXRvcHtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LXNoYWRvdzowIDAgMnB4IHJnYmEoMCwwLDAsLjUpfS55dHAtZG5pIC55dHAtY2hyb21lLWJvdHRvbXt0ZXh0LXNoYWRvdzpub25lfS55dHAtY2hyb21lLXRvcHtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtd3JhcDpub3dyYXA7ZmxleC13cmFwOm5vd3JhcDstd2Via2l0LWJveC1wYWNrOmVuZDstd2Via2l0LWp1c3RpZnktY29udGVudDpmbGV4LWVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7bGVmdDoxMnB4O3JpZ2h0OjEycHg7dG9wOjA7ei1pbmRleDo1OH0ueXRwLXNob3J0cy1tb2RlIC55dHAtY2hyb21lLXRvcHstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cmlnaHQ6MH0ueXRwLWd2biAueXRwLWNocm9tZS10b3AsLnl0cC1ndm4ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLXRvcHt0b3A6MjBweH0ueXRwLWNocm9tZS1ib3R0b217Ym90dG9tOjA7aGVpZ2h0OjQ4cHg7d2lkdGg6MTAwJTt6LWluZGV4OjU5O3BhZGRpbmctdG9wOjNweDt0ZXh0LWFsaWduOmxlZnQ7ZGlyZWN0aW9uOmx0cn0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1ib3R0b217aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsNzJweCl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtYm90dG9tLnl0cC12b2x1bWUtcG9wb3Zlci1zaG93aW5ne3otaW5kZXg6MTAwMH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1jaHJvbWUtYm90dG9te2hlaWdodDozNnB4fS55dHAtZW1iZWQgLnl0cC1jaHJvbWUtYm90dG9te2hlaWdodDo0MHB4fS55dHAtZW1iZWQueXRwLWVtYmVkLW1vYmlsZSAueXRwLWNocm9tZS1ib3R0b20sLnl0cC1lbWJlZC55dHAtZW1iZWQtbW9iaWxlIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLWNocm9tZS1jb250cm9scywueXRwLWVtYmVkLnl0cC1lbWJlZC1tb2JpbGUueXRwLXNtYWxsLW1vZGUgLnl0cC1jaHJvbWUtYm90dG9tLC55dHAtZW1iZWQueXRwLWVtYmVkLW1vYmlsZS55dHAtc21hbGwtbW9kZSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1jaHJvbWUtY29udHJvbHN7aGVpZ2h0OjQ4cHh9Lnl0cC1iaWctbW9kZSAueXRwLWNocm9tZS1ib3R0b217aGVpZ2h0OjU0cHg7cGFkZGluZy10b3A6NHB4fS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1jaHJvbWUtYm90dG9te2hlaWdodDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LDk2cHgpO3BhZGRpbmctdG9wOjB9Lnl0cC1jaHJvbWUtdG9wIC55dHAtYnV0dG9uLC55dHAtc21hbGwtbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbiwueXRwLXNtYWxsLW1vZGUgLnl0cC1yZXBsYXktYnV0dG9ue29wYWNpdHk6Ljk7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MzZweDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7b3ZlcmZsb3c6aGlkZGVufS55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLC55dHAtcmVwbGF5LWJ1dHRvbntvcGFjaXR5Oi45O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjQ4cHg7cGFkZGluZzowIDJweDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7b3ZlcmZsb3c6aGlkZGVufS55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC1tdXRlLWJ1dHRvbntwYWRkaW5nOjZweH0ueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtbmV4dC1idXR0b257cGFkZGluZzowfS55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC1taW5pcGxheWVyLWJ1dHRvbiwueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtcmVtb3RlLWJ1dHRvbntwYWRkaW5nOjAgNHB4fS55dHAtZW1iZWQgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24sLnl0cC1lbWJlZCAueXRwLXJlcGxheS1idXR0b257d2lkdGg6NDBweDtwYWRkaW5nOjB9Lnl0cC1lbWJlZCAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtbWluaXBsYXllci1idXR0b24sLnl0cC1lbWJlZCAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtbXV0ZS1idXR0b24sLnl0cC1lbWJlZCAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtbmV4dC1idXR0b24sLnl0cC1lbWJlZCAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtcmVtb3RlLWJ1dHRvbntwYWRkaW5nOjB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1yaWdodC1jb250cm9sc3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDttYXJnaW4tdG9wOnZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KTtoZWlnaHQ6dmFyKC0teXQtZGVsaGktcGlsbC1oZWlnaHQsNDhweCk7Ym9yZGVyLXJhZGl1czoyOHB4O3BhZGRpbmc6MCAxNnB4Oy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMgc3Zney13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xze3BhZGRpbmc6MH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC1leHBhbmQtcmlnaHQtYm90dG9tLXNlY3Rpb24tYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMtbGVmdCwueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMtcmlnaHR7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246ZW5kOy13ZWJraXQtYWxpZ24taXRlbXM6ZmxleC1lbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmR9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b257b3BhY2l0eTp1bnNldDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvblthcmlhLXByZXNzZWRdOmFmdGVye2Rpc3BsYXk6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLW11dGUtYnV0dG9ue292ZXJmbG93OnZpc2libGU7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OjEwMCV9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1tdXRlLWJ1dHRvbiAueXRwLXZvbHVtZS1pY29ue292ZXJmbG93OnZpc2libGU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJlcGxheS1idXR0b257b3BhY2l0eTp1bnNldH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWxlZnQtY29udHJvbHN7bWluLXdpZHRoOjA7ei1pbmRleDo1OX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xze3BhZGRpbmc6MCA0cHg7ei1pbmRleDo1OX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9ue3BhZGRpbmc6MH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9uOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6YmxvY2s7dG9wOjUwJTtsZWZ0OjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTtib3JkZXItcmFkaXVzOjQwcHg7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtwb2ludGVyLWV2ZW50czpub25lO3dpZHRoOjQ4cHg7aGVpZ2h0OmNhbGModmFyKC0teXQtZGVsaGktcGlsbC1oZWlnaHQsIDQ4cHgpIC0gOHB4KX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9uOmhvdmVyOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjEpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9uOmFjdGl2ZTpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdG9uYWwtaG92ZXIscmdiYSgyNTUsMjU1LDI1NSwuMikpOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbmV4dC1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiopey13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbmV4dC1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiopIHN2Z3std2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1uZXh0LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kil7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLXBpbGwtaGVpZ2h0LDQ4cHgpO2JvcmRlci1yYWRpdXM6MjhweDtwYWRkaW5nOjAgMTZweDtwYWRkaW5nOjAgNHB4IDAgMDttYXJnaW4tdG9wOnZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KTttYXJnaW4tbGVmdDo4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1uZXh0LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+KikueXRwLXBsYXlsaXN0LXVpe21hcmdpbi1sZWZ0OjA7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLW5leHQtYnV0dG9uOm5vdCgueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKTphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjRweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BvaW50ZXItZXZlbnRzOm5vbmU7Ym9yZGVyLXJhZGl1czoyOHB4O2luc2V0OjRweCA0cHggNHB4IDB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1uZXh0LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kik6aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYnV0dG9uLXNlY29uZGFyeSxyZ2JhKDI1NSwyNTUsMjU1LC4xKSk7LXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1uZXh0LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kik6YWN0aXZlOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRvbmFsLWhvdmVyLHJnYmEoMjU1LDI1NSwyNTUsLjIpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMgLnl0cC1idXR0b257aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpO3dpZHRoOnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1yaWdodC1jb250cm9scyAueXRwLWJ1dHRvbjpiZWZvcmV7aGVpZ2h0OmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsIDU2cHgpIC0gOHB4KTt3aWR0aDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCw1NnB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbmV4dC1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiope21hcmdpbi10b3A6Y2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSB2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkpLzIpO2hlaWdodDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCw1NnB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbmV4dC1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiopIHN2Z3twYWRkaW5nOmNhbGMoKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LCA1NnB4KSAtIDI0cHgpLzIpfS55dHAtZGVsaGktbW9kZXJuLXdpdGgtbHVtaW5vc2l0eS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbmV4dC1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiope2JhY2tncm91bmQ6cmdiYSg4MCw4MCw4MCwuNik7YmFja2dyb3VuZC1ibGVuZC1tb2RlOmx1bWlub3NpdHk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KX0ueXRwLWRlbGhpLW1vZGVybi13aXRoLWRpZmZlcmVuY2UueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLW5leHQtYnV0dG9uOm5vdCgueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKXtiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpkaWZmZXJlbmNlOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1leGNsdXNpb24ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLW5leHQtYnV0dG9uOm5vdCgueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKXtiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpleGNsdXNpb247LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KX0ueXRwLWVtYmVkLnl0cC1lbWJlZC1tb2JpbGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24sLnl0cC1lbWJlZC55dHAtZW1iZWQtbW9iaWxlLnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9ue3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHh9Lnl0cC1lbWJlZC1tb2JpbGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b246bm90KC55dHAteW91dHViZS1idXR0b24pIHN2ZywueXRwLWVtYmVkLW1vYmlsZS55dHAtc21hbGwtbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbjpub3QoLnl0cC15b3V0dWJlLWJ1dHRvbikgc3Zne3dpZHRoOjQwcHg7cGFkZGluZy1sZWZ0OjRweH0ueXRwLWNocm9tZS10b3AgLnl0cC1idXR0b257cGFkZGluZy10b3A6NnB4O2hlaWdodDo0MnB4O3ZlcnRpY2FsLWFsaWduOnRvcH0ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLXRvcCAueXRwLWJ1dHRvbntwYWRkaW5nLXRvcDo5cHg7aGVpZ2h0OjYzcHh9Lnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b257aGVpZ2h0OjEwMCV9Lnl0cC1iaWctbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbiwueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLXRvcCAueXRwLWJ1dHRvbnt3aWR0aDo1NHB4fS55dHAtcGxheS1idXR0b246bm90KC55dHAtcGxheS1idXR0b24tcGxheWxpc3QpOmJlZm9yZSwueXRwLXByZXYtYnV0dG9uOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NXB4O2JvdHRvbTowO2xlZnQ6LTEycHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wbGF5LWJ1dHRvbjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjRweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BvaW50ZXItZXZlbnRzOm5vbmU7Ym9yZGVyLXJhZGl1czoyOHB4O2JvcmRlci1yYWRpdXM6MjdweH0ueXRwLWJpZy1tb2RlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wbGF5LWJ1dHRvbjphZnRlcntib3JkZXItcmFkaXVzOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkvMil9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wbGF5LWJ1dHRvbjpob3ZlcjphZnRlciwueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1wbGF5LWJ1dHRvbjpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjEpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXBsYXktYnV0dG9uOmFjdGl2ZTphZnRlciwueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1wbGF5LWJ1dHRvbjphY3RpdmU6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdG9uYWwtaG92ZXIscmdiYSgyNTUsMjU1LDI1NSwuMikpOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtYmlnLW1vZGUtY29uc2lzdGVudC1waWxsLWhlaWdodC55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1sZWZ0LWNvbnRyb2xzIC55dHAtcGxheS1idXR0b257aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpO3dpZHRoOnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpO21hcmdpbi10b3A6Y2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSB2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkpLzIpO21hcmdpbi1ib3R0b206Y2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSB2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkpLzIpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJldi1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiopey13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJldi1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiopIHN2Z3std2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcmV2LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kil7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLXBpbGwtaGVpZ2h0LDQ4cHgpO2JvcmRlci1yYWRpdXM6MjhweDtwYWRkaW5nOjAgMTZweDtwYWRkaW5nOjAgMCAwIDRweDttYXJnaW4tdG9wOnZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KTttYXJnaW4tbGVmdDo4cHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJldi1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiopOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6NHB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7cG9pbnRlci1ldmVudHM6bm9uZTtib3JkZXItcmFkaXVzOjI4cHg7aW5zZXQ6NHB4IDAgNHB4IDRweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXByZXYtYnV0dG9uOm5vdCgueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKTpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjEpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXByZXYtYnV0dG9uOm5vdCgueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKTphY3RpdmU6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdG9uYWwtaG92ZXIscmdiYSgyNTUsMjU1LDI1NSwuMikpOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtYmlnLW1vZGUueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXByZXYtYnV0dG9uOm5vdCh5dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiope21hcmdpbi10b3A6Y2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSB2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkpLzIpO2hlaWdodDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCw1NnB4KX0ueXRwLWJpZy1tb2RlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wcmV2LWJ1dHRvbjpub3QoeXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKSBzdmd7cGFkZGluZzpjYWxjKCh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkgLSAyNHB4KS8yKX0ueXRwLWRlbGhpLW1vZGVybi13aXRoLWx1bWlub3NpdHkueXRwLWRlbGhpLW1vZGVybiAueXRwLXByZXYtYnV0dG9uOm5vdCgueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKXtiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpsdW1pbm9zaXR5Oy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1kaWZmZXJlbmNlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcmV2LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kil7YmFja2dyb3VuZDpyZ2JhKDgwLDgwLDgwLC42KTtiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6ZGlmZmVyZW5jZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpfS55dHAtZGVsaGktbW9kZXJuLXdpdGgtZXhjbHVzaW9uLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcmV2LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kil7YmFja2dyb3VuZDpyZ2JhKDgwLDgwLDgwLC42KTtiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6ZXhjbHVzaW9uOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1mdWxsc2NyZWVuLWJ1dHRvbjphZnRlcntjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NXB4O2JvdHRvbTowO2xlZnQ6MTAwJX0ueXRwLWJpZy1tb2RlIC55dHAtcGxheS1idXR0b246bm90KC55dHAtcGxheS1idXR0b24tcGxheWxpc3QpOmJlZm9yZSwueXRwLWJpZy1tb2RlIC55dHAtcHJldi1idXR0b246YmVmb3Jle3dpZHRoOjI0cHg7bGVmdDotMjRweH0ueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pOm5vdChbZGlzYWJsZWRdKTpob3ZlciwueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvblthcmlhLWV4cGFuZGVkPXRydWVdLC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZD10cnVlXSwueXRwLWNocm9tZS10b3AgLnl0cC1idXR0b246aG92ZXIsLnl0cC1yZXBsYXktYnV0dG9uOmhvdmVye29wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1zdmctZmlsbHtmaWxsOiNmZmZ9Lnl0cC1zdmctc2hhZG93e3N0cm9rZTojMDAwO3N0cm9rZS1vcGFjaXR5Oi4xNTtzdHJva2Utd2lkdGg6MnB4O2ZpbGw6bm9uZX0ueXRwLWRuaSAueXRwLXN2Zy1zaGFkb3d7ZGlzcGxheTpub25lfS55dHAtc3ZnLXNoYWRvdy1maWxse2ZpbGw6IzAwMDtmaWxsLW9wYWNpdHk6LjE1O3N0cm9rZTpub25lfS55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZF17cG9zaXRpb246cmVsYXRpdmV9Lnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b25bYXJpYS1wcmVzc2VkXTphZnRlcntjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MDtoZWlnaHQ6M3B4O2JvcmRlci1yYWRpdXM6M3B4O2xlZnQ6MjRweDtib3R0b206OXB4O2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1yZWQtaW5kaWNhdG9yLCNlMTAwMmQpOy13ZWJraXQtdHJhbnNpdGlvbjpsZWZ0IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLHdpZHRoIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246bGVmdCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSx3aWR0aCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWVtYmVkIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZF06YWZ0ZXJ7aGVpZ2h0OjJweDtib3JkZXItcmFkaXVzOjJweDtsZWZ0OjIwcHg7Ym90dG9tOjhweH0ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZF06YWZ0ZXJ7aGVpZ2h0OjNweDtib3JkZXItcmFkaXVzOjNweDtsZWZ0OjI3cHg7Ym90dG9tOjEwcHh9Lnl0cC1kbmkgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b25bYXJpYS1wcmVzc2VkXTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Lnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b25bYXJpYS1wcmVzc2VkPXRydWVdOmFmdGVye3dpZHRoOjI0cHg7bGVmdDoxMnB4Oy13ZWJraXQtdHJhbnNpdGlvbjpsZWZ0IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSx3aWR0aCAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpsZWZ0IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSx3aWR0aCAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZD10cnVlXTphZnRlciwueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZD10cnVlXTphZnRlcnt3aWR0aDoxOHB4O2xlZnQ6OXB4fS55dHAtZW1iZWQgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b25bYXJpYS1wcmVzc2VkPXRydWVdOmFmdGVye3dpZHRoOjIwcHg7bGVmdDoxMHB4fS55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b25bYXJpYS1wcmVzc2VkPXRydWVdOmFmdGVye3dpZHRoOjI3cHg7bGVmdDoxNHB4fS55dHAtZW1iZWQtbW9iaWxlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZD10cnVlXTphZnRlciwueXRwLWVtYmVkLW1vYmlsZS55dHAtc21hbGwtbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvblthcmlhLXByZXNzZWQ9dHJ1ZV06YWZ0ZXJ7bGVmdDoxNXB4fS55dHAtY29sb3Itd2hpdGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b25bYXJpYS1wcmVzc2VkXTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNkZGR9Lnl0cC1jb2xvci1wYXJ0eSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvblthcmlhLXByZXNzZWRdOmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOnl0cC1wYXJ0eS1iYWNrZ3JvdW5kLWNvbG9yIC4xcyBsaW5lYXIgaW5maW5pdGU7YW5pbWF0aW9uOnl0cC1wYXJ0eS1iYWNrZ3JvdW5kLWNvbG9yIC4xcyBsaW5lYXIgaW5maW5pdGV9Lnl0cC1jaHJvbWUtdG9wLWJ1dHRvbnN7d2hpdGUtc3BhY2U6bm93cmFwfS55dHAtY2hyb21lLXRvcC1idXR0b25zIC55dHAtYnV0dG9ue3RleHQtc2hhZG93OmluaGVyaXR9W2Rpcj1ydGxdIC55dHAtc2hvcnRzLW1vZGUgLnl0cC1jaHJvbWUtdG9wLWJ1dHRvbnN7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDt3aWR0aDo0OHB4fS55dHAtY29weWxpbmstYnV0dG9uOm5vdCgueXRwLWNvcHlsaW5rLWJ1dHRvbi12aXNpYmxlKSwueXRwLW92ZXJmbG93LWJ1dHRvbjpub3QoLnl0cC1vdmVyZmxvdy1idXR0b24tdmlzaWJsZSksLnl0cC1zaGFyZS1idXR0b246bm90KC55dHAtc2hhcmUtYnV0dG9uLXZpc2libGUpe2Rpc3BsYXk6bm9uZX0ueXRwLWV4cC1ib3R0b20tY29udHJvbC1mbGV4Ym94IC55dHAtY2hyb21lLWNvbnRyb2xze2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fS55dHAtY2hyb21lLWNvbnRyb2xze2hlaWdodDo0OHB4O2xpbmUtaGVpZ2h0OjQ4cHg7Zm9udC1zaXplOjEwOSU7dGV4dC1hbGlnbjpsZWZ0O2RpcmVjdGlvbjpsdHJ9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHN7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsNzJweCk7bGluZS1oZWlnaHQ6dmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCw3MnB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xze2hlaWdodDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LDk2cHgpO2xpbmUtaGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsOTZweCl9Lnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xze2hlaWdodDozNnB4O2xpbmUtaGVpZ2h0OjM2cHh9Lnl0cC1lbWJlZCAueXRwLWNocm9tZS1jb250cm9sc3toZWlnaHQ6NDBweDtsaW5lLWhlaWdodDo0MHB4fS55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHN7aGVpZ2h0OjU0cHg7bGluZS1oZWlnaHQ6NTRweH06bm90KC55dHAtZXhwLWJvdHRvbS1jb250cm9sLWZsZXhib3gpIC55dHAtbGVmdC1jb250cm9sc3tmbG9hdDpsZWZ0fS55dHAtbGVmdC1jb250cm9sc3toZWlnaHQ6MTAwJX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWxlZnQtY29udHJvbHMueXRwLWxlZnQtY29udHJvbHMtd2l0aC12b2x1bWV7b3ZlcmZsb3c6dmlzaWJsZX0ueXRwLWV4cC1ib3R0b20tY29udHJvbC1mbGV4Ym94IC55dHAtbGVmdC1jb250cm9sc3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1mbGV4OjE7LXdlYmtpdC1mbGV4OjE7ZmxleDoxO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc306bm90KC55dHAtZXhwLWJvdHRvbS1jb250cm9sLWZsZXhib3gpIC55dHAtcmlnaHQtY29udHJvbHN7ZmxvYXQ6cmlnaHR9Lnl0cC1yaWdodC1jb250cm9sc3toZWlnaHQ6MTAwJX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWxlZnQtY29udHJvbHMgLnl0cC1tdXRlLWJ1dHRvbi55dHAtc3RhbmRhbG9uZS1tdXRlLWJ1dHRvbnstd2Via2l0LWZsZXgtc2hyaW5rOjA7ZmxleC1zaHJpbms6MDttaW4td2lkdGg6MDttYXJnaW46dmFyKC0teXQtZGVsaGktcGlsbC10b3AtaGVpZ2h0LDEycHgpIDAgdmFyKC0teXQtZGVsaGktcGlsbC10b3AtaGVpZ2h0LDEycHgpIDEycHg7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLXBpbGwtaGVpZ2h0LDQ4cHgpO2JvcmRlci1yYWRpdXM6MjhweDtwYWRkaW5nOjAgMTZweDstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0tbGlnaHQscmdiYSgwLDAsMCwuMykpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWxlZnQtY29udHJvbHMgLnl0cC1tdXRlLWJ1dHRvbi55dHAtc3RhbmRhbG9uZS1tdXRlLWJ1dHRvbiBzdmd7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9uLC55dHAtZGVsaGktbW9kZXJuIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9uIC55dHAtYnV0dG9ue3BhZGRpbmc6MH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWxlZnQtY29udHJvbHMgLnl0cC1tdXRlLWJ1dHRvbi55dHAtc3RhbmRhbG9uZS1tdXRlLWJ1dHRvbjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjRweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BvaW50ZXItZXZlbnRzOm5vbmU7Ym9yZGVyLXJhZGl1czoyOHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJ1dHRvbi1zZWNvbmRhcnkscmdiYSgyNTUsMjU1LDI1NSwuMSkpOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9uOmFjdGl2ZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10b25hbC1ob3ZlcixyZ2JhKDI1NSwyNTUsMjU1LC4yKSk7LXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9ue3BhZGRpbmc6MCA0cHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9uIHN2Z3twYWRkaW5nOjEwcHggNnB4fS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1sZWZ0LWNvbnRyb2xzIC55dHAtbXV0ZS1idXR0b24gLnl0cC12b2x1bWUtaWNvbntwYWRkaW5nOjRweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9ue2hlaWdodDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCw1NnB4KTttYXJnaW46Y2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSB2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkpLzIpIDAgY2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSB2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkpLzIpIDEycHg7cGFkZGluZzowfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1yaWdodC1jb250cm9sc3toZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsNTZweCk7bWFyZ2luLXRvcDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLXRvcC1oZWlnaHQsMjBweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMtbGVmdHtoZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsNTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMtcmlnaHR7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1yaWdodC1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzLWxlZnQ6YWZ0ZXJ7aGVpZ2h0OjI4cHg7bWFyZ2luOjEwcHggMTRweH0ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1jaHJvbWUtYm90dG9te2hlaWdodDp2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LXhzbWFsbC13aWR0aC1tb2RlLDY0cHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1idXR0b257aGVpZ2h0OjMycHg7d2lkdGg6MzJweH0ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1jaHJvbWUtYm90dG9tIC55dHAtYnV0dG9uLnl0cC1saXZlLWJhZGdle3dpZHRoOmF1dG99Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLWJ1dHRvbjpub3QoLnl0cC1saXZlLWJhZGdlKTpiZWZvcmV7Ym9yZGVyLXJhZGl1czo1MCU7aGVpZ2h0OjMycHg7d2lkdGg6MzJweH0ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHN7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQteHNtYWxsLXdpZHRoLW1vZGUsNjRweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtbGVmdC1jb250cm9scyAueXRwLW5leHQtYnV0dG9uLC55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWxlZnQtY29udHJvbHMgLnl0cC1wcmV2LWJ1dHRvbntkaXNwbGF5Om5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9ue2hlaWdodDo0MHB4fS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLXJpZ2h0LWNvbnRyb2xze2hlaWdodDo0MHB4O2xpbmUtaGVpZ2h0OjQwcHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtcmlnaHQtY29udHJvbHMgLnl0cC1idXR0b257ZGlzcGxheTpub25lO21hcmdpbjo0cHggMnB4fS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMtbGVmdDphZnRlcntkaXNwbGF5Om5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtcmlnaHQtY29udHJvbHMgLnl0cC1idXR0b24ueXRwLXNldHRpbmdzLWJ1dHRvbntkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1yaWdodC1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtZXhwYW5kLXJpZ2h0LWJvdHRvbS1zZWN0aW9uLWJ1dHRvbntkaXNwbGF5OmlubGluZS1ibG9jazstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTstbXMtdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWNocm9tZS1ib3R0b20ueXRwLXhzbWFsbC13aWR0aC1yaWdodC1jb250cm9scy1leHBhbmRlZCAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWNocm9tZS1ib3R0b20ueXRwLXhzbWFsbC13aWR0aC1yaWdodC1jb250cm9scy1leHBhbmRlZCAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC1leHBhbmQtcmlnaHQtYm90dG9tLXNlY3Rpb24tYnV0dG9uey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTstbXMtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKDBkZWcpOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtY2hyb21lLWJvdHRvbS55dHAteHNtYWxsLXdpZHRoLXJpZ2h0LWNvbnRyb2xzLWV4cGFuZGVkIC55dHAtbGVmdC1jb250cm9scyAueXRwLXRpbWUtZGlzcGxheXt2aXNpYmlsaXR5OmhpZGRlbn0ueXRwLWV4cC1ib3R0b20tY29udHJvbC1mbGV4Ym94IC55dHAtdm9sdW1lLWFyZWF7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLWFyZWF7bWFyZ2luOnZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KSAwIHZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KSAxMnB4O2hlaWdodDp2YXIoLS15dC1kZWxoaS1waWxsLWhlaWdodCw0OHB4KTtib3JkZXItcmFkaXVzOjI4cHg7cGFkZGluZzowIDE2cHg7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLWxpZ2h0LHJnYmEoMCwwLDAsLjMpKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLWFyZWEgc3Zney13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMgLnl0cC12b2x1bWUtYXJlYXtwYWRkaW5nOjA7cG9zaXRpb246cmVsYXRpdmV9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLWFyZWEgLnl0cC12b2x1bWUtaWNvbntwYWRkaW5nOjB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLWFyZWEgLnl0cC12b2x1bWUtaWNvbiBzdmd7cGFkZGluZzp2YXIoLS15dC1kZWxoaS1waWxsLXRvcC1oZWlnaHQsMTJweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLWFyZWE6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDo0cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtwb2ludGVyLWV2ZW50czpub25lO2JvcmRlci1yYWRpdXM6MjhweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMgLnl0cC12b2x1bWUtYXJlYTpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjEpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMgLnl0cC1jaHJvbWUtYm90dG9tLnl0cC12b2x1bWUtc2xpZGVyLWFjdGl2ZSAueXRwLXZvbHVtZS1hcmVhe3BhZGRpbmctcmlnaHQ6MTZweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLXZvbHVtZS1hcmVhe21hcmdpbjp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLXRvcC1oZWlnaHQsMjBweCkgMCAwIDEycHg7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZS55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMgLnl0cC12b2x1bWUtYXJlYXttYXJnaW46dmFyKC0teXQtZGVsaGktcGlsbC10b3AtaGVpZ2h0LDEycHgpIDAgdmFyKC0teXQtZGVsaGktcGlsbC10b3AtaGVpZ2h0LDEycHgpIDhweDtoZWlnaHQ6NDBweH0ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLWFyZWEgLnl0cC1idXR0b257aGVpZ2h0OjQwcHg7d2lkdGg6NDBweDtwYWRkaW5nOjB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlLnl0cC1kZWxoaS1ob3Jpem9udGFsLXZvbHVtZS1jb250cm9scyAueXRwLXZvbHVtZS1hcmVhIHN2Z3t3aWR0aDoxOHB4O2hlaWdodDoxOHB4O3BhZGRpbmc6MTFweH0ueXRwLWF1dG9oaWRlLWZhZGUtdHJhbnNpdGlvbiwueXRwLWNocm9tZS1ib3R0b206bm90KC55dHAtZnJvc3RlZC1nbGFzcy1vcGFjaXR5LWFuaW1hdGlvbiksLnl0cC1jaHJvbWUtdG9wey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtYXV0b2hpZGUgLnl0cC1jaHJvbWUtYm90dG9tIC55dHAtYXV0b2hpZGUtZmFkZS10cmFuc2l0aW9uLC55dHAtYXV0b2hpZGUgLnl0cC1jaHJvbWUtYm90dG9tOm5vdCgueXRwLWZyb3N0ZWQtZ2xhc3Mtb3BhY2l0eS1hbmltYXRpb24pLC55dHAtYXV0b2hpZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtY29weWxpbmstYnV0dG9uLC55dHAtYXV0b2hpZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtc2hhcmUtYnV0dG9uLC55dHAtYXV0b2hpZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtd2F0Y2gtbGF0ZXItYnV0dG9uLC55dHAtYXV0b2hpZGUgLnl0cC1vdmVyZmxvdy1idXR0b24sLnl0cC1hdXRvaGlkZSAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLC55dHAtYXV0b2hpZGUgLnl0cC1zaG9ydHMtdGl0bGUtY2hhbm5lbCwueXRwLWF1dG9oaWRlIC55dHAtdGl0bGUsLnl0cC1hdXRvaGlkZSAueXRwLXRpdGxlLWNoYW5uZWwsLnl0cC1hdXRvaGlkZTpub3QoLnl0cC1jYXJkcy10ZWFzZXItc2hvd24pIC55dHAtY2FyZHMtYnV0dG9uLC55dHAtY2hyb21lLWJvdHRvbVthcmlhLWhpZGRlbj10cnVlXSwueXRwLWNocm9tZS10b3BbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWF1dG9oaWRlOm5vdCgueXRwLWF1dG9oaWRlLWFjdGl2ZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtc2hhcmUtYnV0dG9uLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKSAueXRwLWNocm9tZS10b3AgLnl0cC13YXRjaC1sYXRlci1idXR0b24sLnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hdXRvaGlkZS1hY3RpdmUpIC55dHAtb3ZlcmZsb3ctYnV0dG9uLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKSAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKSAueXRwLXNob3J0cy10aXRsZS1jaGFubmVsLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKSAueXRwLXRpdGxlLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKSAueXRwLXRpdGxlLWNoYW5uZWwsLnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hdXRvaGlkZS1hY3RpdmUpOm5vdCgueXRwLWNhcmRzLXRlYXNlci1zaG93bikgLnl0cC1jYXJkcy1idXR0b257ZGlzcGxheTpub25lfS55dHAtc2hvcnRzLW1vZGUgLnl0cC10aXRsZS1jaGFubmVse3BhZGRpbmctcmlnaHQ6OHB4fS55dHAtZ3JhZGllbnQtYm90dG9tLC55dHAtZ3JhZGllbnQtdG9we3dpZHRoOjEwMCU7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFBRUFBQURHQ0FZQUFBQVQrT3FGQUFBQWRrbEVRVlFvejQyUVFRN0FJQWdFRi9UL0Qra2JxL1JXQWxuUXl5YXpBNGFvQUI0RnNCU0EvYkZqdUYxRU9MN1ZicklyQnV1c21ydDRaWk9SZmI2ZWhiV2RuUkhFSWlJVGFFVUthNUVKcVVha1JTYUVZQkpTQ1kyZEVzdFFZN0F1eGFod1hGcnZabVdsMnJoNEpaMDd6OWRMdGVzZk5qNXEwRlUzQTVPYmJ3QUFBQUJKUlU1RXJrSmdnZz09KTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtwb2ludGVyLWV2ZW50czpub25lfS55dHAtZGVsaGktbW9kZXJuIC55dHAtZ3JhZGllbnQtdG9wLC55dHAtZGVsaGktbW9kZXJuOm5vdCgueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nKTpub3QoLnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlKSAueXRwLWdyYWRpZW50LWJvdHRvbXtkaXNwbGF5Om5vbmV9Lnl0cC1iaWctbW9kZSAueXRwLWdyYWRpZW50LWJvdHRvbSwueXRwLWJpZy1tb2RlIC55dHAtZ3JhZGllbnQtdG9we2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQUVBQUFFbUNBWUFBQUNqeS9xekFBQUFoa2xFUVZRNHk1MlJVUTZBTUF4Q0tkNy9KSjdSNmFlSkFkcjUwN1RqUVpxT0FFNENXQVJ3eDdKRTk0NHJjaC9rNnFPV1M3YnE1Ymg3MnpHRjgrTFRhNmdvSmVSUGdYRFlOeFdGZmtTMFFYQ0luTElOMUd4VFhBMGR0UzBvdFdKbnVYSlIxWTlXWVA5R0YxVUNZUlFZSFJTbFhNQVJiVk80dGgzc2Q3WTNPUDVkWTNCbitTa1BzR0oxK0hHR1Z0Y0FBQUFBU1VWT1JLNUNZSUk9KX0ueXRwLWF1dG9oaWRlIC55dHAtZ3JhZGllbnQtdG9wLC55dHAtYXV0b2hpZGU6bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpOm5vdCgueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUpIC55dHAtZ3JhZGllbnQtYm90dG9tLC55dHAtZ3JhZGllbnQtYm90dG9tW2FyaWEtaGlkZGVuPXRydWVdLC55dHAtZ3JhZGllbnQtdG9wW2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hdXRvaGlkZS1hY3RpdmUpIC55dHAtZ3JhZGllbnQtdG9wLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKTpub3QoLnl0cC1ncmlkLXNjcm9sbGluZyk6bm90KC55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZSkgLnl0cC1ncmFkaWVudC1ib3R0b217ZGlzcGxheTpub25lfS55dHAtZ3JhZGllbnQtdG9we2hlaWdodDo0OHB4O3BhZGRpbmctYm90dG9tOjUwcHg7dG9wOjA7ei1pbmRleDoyNTtiYWNrZ3JvdW5kLXBvc2l0aW9uOnRvcH0ueXRwLWVtYmVkLXBmbC55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLWdyYWRpZW50LXRvcHtoZWlnaHQ6NzBweDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLC43NSksdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsbGVmdCB0b3AsbGVmdCBib3R0b20sY29sb3Itc3RvcCgwLHJnYmEoMCwwLDAsLjc1KSksdG8odHJhbnNwYXJlbnQpKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgwLDAsMCwuNzUpIDAsdHJhbnNwYXJlbnQpO3BhZGRpbmctYm90dG9tOjB9Lnl0cC1zaG9ydHMtbW9kZS55dHAtYmlnLW1vZGUueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykgLnl0cC1ncmFkaWVudC10b3AsLnl0cC1zaG9ydHMtbW9kZS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLWdyYWRpZW50LXRvcHtoZWlnaHQ6NTAlOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmF1dG8gMjAwJTtiYWNrZ3JvdW5kLXNpemU6YXV0byAyMDAlfS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLWdyYWRpZW50LXRvcHtoZWlnaHQ6NDlweH0ueXRwLWJpZy1tb2RlIC55dHAtZ3JhZGllbnQtdG9we2hlaWdodDo2OXB4O3BhZGRpbmctYm90dG9tOjc3cHh9Lnl0cC1iaWctbW9kZS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLWdyYWRpZW50LXRvcHtoZWlnaHQ6ODlweDtwYWRkaW5nLWJvdHRvbTo1N3B4fS55dHAtZ3JhZGllbnQtYm90dG9te2hlaWdodDo2MXB4O3BhZGRpbmctdG9wOjM3cHg7Ym90dG9tOjA7ei1pbmRleDoyNDtiYWNrZ3JvdW5kLXBvc2l0aW9uOmJvdHRvbX0ueXRwLXNtYWxsLW1vZGUgLnl0cC1ncmFkaWVudC1ib3R0b217aGVpZ2h0OjQ5cHg7cGFkZGluZy10b3A6NDlweH0ueXRwLWVtYmVkIC55dHAtZ3JhZGllbnQtYm90dG9te2hlaWdodDo1M3B4O3BhZGRpbmctdG9wOjQ1cHh9Lnl0cC1iaWctbW9kZSAueXRwLWdyYWRpZW50LWJvdHRvbXtoZWlnaHQ6NzBweDtwYWRkaW5nLXRvcDo3NnB4fS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlIC55dHAtZ3JhZGllbnQtYm90dG9tLC55dHAtZGVsaGktbW9kZXJuOm5vdCgueXRwLWRpc2FibGUtYm90dG9tLWdyYWRpZW50KSAueXRwLWdyYWRpZW50LWJvdHRvbXstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1kaXNhYmxlLWJvdHRvbS1ncmFkaWVudC55dHAtZ3JpZC1zY3JvbGxpbmcgLnl0cC1ncmFkaWVudC1ib3R0b20sLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nOm5vdCgueXRwLWRpc2FibGUtYm90dG9tLWdyYWRpZW50KSAueXRwLWdyYWRpZW50LWJvdHRvbXtiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGZyb20ocmdiYSgwLDAsMCwwKSksY29sb3Itc3RvcChyZ2JhKDAsMCwwLDApKSx0byhyZ2JhKDAsMCwwLC44NSkpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLDApIDAscmdiYSgwLDAsMCwwKSBjYWxjKDcwJSAtIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSAtIHZhcigtLXl0cC1ncmlkLXNjcm9sbC1wZXJjZW50YWdlKSoxMDAlKSxyZ2JhKDAsMCwwLC44NSkgMTAwJSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHJnYmEoMCwwLDAsMCkgMCxyZ2JhKDAsMCwwLDApIGNhbGMoNzAlIC0gdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpIC0gdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUpLHJnYmEoMCwwLDAsLjg1KSAxMDAlKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZSAueXRwLWdyYWRpZW50LWJvdHRvbXtiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGZyb20ocmdiYSgwLDAsMCwwKSksY29sb3Itc3RvcChyZ2JhKDAsMCwwLDApKSx0byhyZ2JhKDAsMCwwLC44NSkpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLDApIDAscmdiYSgwLDAsMCwwKSBjYWxjKDIwJSArIHZhcigtLXl0cC1ncmlkLXNjcm9sbC1wZXJjZW50YWdlKSoxMDAlIC0gdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKSxyZ2JhKDAsMCwwLC44NSkgMTAwJSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHJnYmEoMCwwLDAsMCkgMCxyZ2JhKDAsMCwwLDApIGNhbGMoMjAlICsgdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUgLSB2YXIoLS15dHAtZ3JpZC1wZWVrLWhlaWdodCkpLHJnYmEoMCwwLDAsLjg1KSAxMDAlKX0ueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1jaHJvbWUtdG9we2hlaWdodDowfS55dHAtaGlkZS1pbmZvLWJhciAueXRwLWNocm9tZS10b3AgLnl0cC1vdmVyZmxvdy1idXR0b24sLnl0cC1oaWRlLWluZm8tYmFyIC55dHAtY2hyb21lLXRvcCAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLC55dHAtaGlkZS1pbmZvLWJhciAueXRwLWNocm9tZS10b3AgLnl0cC1zaGFyZS1idXR0b24sLnl0cC1oaWRlLWluZm8tYmFyIC55dHAtY2hyb21lLXRvcCAueXRwLXNob3J0cy10aXRsZS1jaGFubmVsLC55dHAtaGlkZS1pbmZvLWJhciAueXRwLWNocm9tZS10b3AgLnl0cC10aXRsZSwueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1jaHJvbWUtdG9wIC55dHAtdGl0bGUtY2hhbm5lbCwueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1jaHJvbWUtdG9wIC55dHAtd2F0Y2gtbGF0ZXItYnV0dG9uLC55dHAtaGlkZS1pbmZvLWJhciAueXRwLWdyYWRpZW50LXRvcCwueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1vdmVybGF5LXRvcC1yaWdodCAueXRwLW92ZXJmbG93LWJ1dHRvbiwueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1vdmVybGF5LXRvcC1yaWdodCAueXRwLXNoYXJlLWJ1dHRvbiwueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1vdmVybGF5LXRvcC1yaWdodCAueXRwLXdhdGNoLWxhdGVyLWJ1dHRvbntkaXNwbGF5Om5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUueXRwLWZ1bGwtYmxlZWQtcGxheWVyOm5vdCgueXRwLWdyaWQtc2Nyb2xsYWJsZSkgLnl0cC1ncmFkaWVudC1ib3R0b20sLnl0cC1kaXNhYmxlLWJvdHRvbS1ncmFkaWVudC55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtZnVsbC1ibGVlZC1wbGF5ZXIgLnl0cC1ncmFkaWVudC1ib3R0b217ZGlzcGxheTpub25lfS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsLWJsZWVkLXBsYXllci55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZTpub3QoLmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlKSAueXRwLWNocm9tZS1ib3R0b217Ym90dG9tOmNhbGMoNzAlIC0gdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUpO29wYWNpdHk6dmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtZnVsbC1ibGVlZC1wbGF5ZXIueXRwLWRlbGhpLW1vZGVybi55dHAtYXV0b2hpZGUueXRwLWdyaWQtc2Nyb2xsaW5nIC55dHAtY2hyb21lLWJvdHRvbSwueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1mdWxsLWJsZWVkLXBsYXllci55dHAtZGVsaGktbW9kZXJuOm5vdCgueXRwLWF1dG9oaWRlKSAueXRwLWNocm9tZS1ib3R0b217b3BhY2l0eTpjYWxjKDEgLSB2YXIoLS15dHAtZ3JpZC1zY3JvbGwtcGVyY2VudGFnZSkqMyl9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtZnVsbC1ibGVlZC1wbGF5ZXIueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1ib3R0b217Ym90dG9tOmNhbGModmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpICsgdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUpfS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLWZ1bGwtYmxlZWQtcGxheWVyLnl0cC1ncmlkLXNjcm9sbGluZyAueXRwLWNocm9tZS1ib3R0b217cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZTpub3QoLmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlKTpub3QoLnl0cC1ncmlkLXNjcm9sbGluZykgLnl0cC1jaHJvbWUtYm90dG9te2Rpc3BsYXk6bm9uZX0ueXRwLWhpZGUtY29udHJvbHMgLnl0cC1jaHJvbWUtYm90dG9tLC55dHAtaGlkZS1jb250cm9scyAueXRwLWdyYWRpZW50LWJvdHRvbXtkaXNwbGF5Om5vbmV9QG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSl7Lnl0cC1ncmFkaWVudC1ib3R0b20sLnl0cC1ncmFkaWVudC10b3B7YmFja2dyb3VuZDojMDAwO3BhZGRpbmctYm90dG9tOjA7cGFkZGluZy10b3A6MH19QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1wYXJ0eS1iYWNrZ3JvdW5kLWNvbG9yezAle2JhY2tncm91bmQtY29sb3I6I2YwMH0yMCV7YmFja2dyb3VuZC1jb2xvcjojMGYwfTQwJXtiYWNrZ3JvdW5kLWNvbG9yOiMwMGZ9NjAle2JhY2tncm91bmQtY29sb3I6I2YwZn04MCV7YmFja2dyb3VuZC1jb2xvcjojZmYwfXRve2JhY2tncm91bmQtY29sb3I6IzBmZn19QGtleWZyYW1lcyB5dHAtcGFydHktYmFja2dyb3VuZC1jb2xvcnswJXtiYWNrZ3JvdW5kLWNvbG9yOiNmMDB9MjAle2JhY2tncm91bmQtY29sb3I6IzBmMH00MCV7YmFja2dyb3VuZC1jb2xvcjojMDBmfTYwJXtiYWNrZ3JvdW5kLWNvbG9yOiNmMGZ9ODAle2JhY2tncm91bmQtY29sb3I6I2ZmMH10b3tiYWNrZ3JvdW5kLWNvbG9yOiMwZmZ9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtcGFydHktY29sb3J7MCV7Y29sb3I6I2YwMH0yMCV7Y29sb3I6IzBmMH00MCV7Y29sb3I6IzAwZn02MCV7Y29sb3I6I2YwZn04MCV7Y29sb3I6I2ZmMH10b3tjb2xvcjojMGZmfX1Aa2V5ZnJhbWVzIHl0cC1wYXJ0eS1jb2xvcnswJXtjb2xvcjojZjAwfTIwJXtjb2xvcjojMGYwfTQwJXtjb2xvcjojMDBmfTYwJXtjb2xvcjojZjBmfTgwJXtjb2xvcjojZmYwfXRve2NvbG9yOiMwZmZ9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtcGFydHktZmlsbHswJXtmaWxsOiNmMDB9MjAle2ZpbGw6IzBmMH00MCV7ZmlsbDojMDBmfTYwJXtmaWxsOiNmMGZ9ODAle2ZpbGw6I2ZmMH10b3tmaWxsOiMwZmZ9fUBrZXlmcmFtZXMgeXRwLXBhcnR5LWZpbGx7MCV7ZmlsbDojZjAwfTIwJXtmaWxsOiMwZjB9NDAle2ZpbGw6IzAwZn02MCV7ZmlsbDojZjBmfTgwJXtmaWxsOiNmZjB9dG97ZmlsbDojMGZmfX0ueXRwLW1lbnUtc2hvd24gLnZpZGVvLWFkc3tkaXNwbGF5Om5vbmV9Lnl0cC1hZC1kaXNwbGF5LW92ZXJyaWRlIC52aWRlby1hZHN7ZGlzcGxheTppbmhlcml0fS55dHAtc3dhdGNoLWJhY2tncm91bmQtY29sb3J7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLXN0YXRpYy1icmFuZC1yZWQsI2YwMyl9Lnl0cC1kbmkgLnl0cC1zd2F0Y2gtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Lnl0cC1jb2xvci13aGl0ZSAueXRwLXN3YXRjaC1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6I2RkZH0ueXRwLWNvbG9yLXdoaXRlIC55dHAtc3dhdGNoLWJhY2tncm91bmQtY29sb3Itc2Vjb25kYXJ5e2JhY2tncm91bmQtY29sb3I6I2FhYX0ueXRwLWNvbG9yLXBhcnR5IC55dHAtcGxheS1wcm9ncmVzcy55dHAtc3dhdGNoLWJhY2tncm91bmQtY29sb3IsLnl0cC1jb2xvci1wYXJ0eSAueXRwLXN3YXRjaC1iYWNrZ3JvdW5kLWNvbG9yLC55dHAtY29sb3ItcGFydHkgLnl0cC1zd2F0Y2gtYmFja2dyb3VuZC1jb2xvci1zZWNvbmRhcnl7LXdlYmtpdC1hbmltYXRpb246eXRwLXBhcnR5LWJhY2tncm91bmQtY29sb3IgLjFzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246eXRwLXBhcnR5LWJhY2tncm91bmQtY29sb3IgLjFzIGxpbmVhciBpbmZpbml0ZTtiYWNrZ3JvdW5kOm5vbmV9Lnl0cC1zd2F0Y2gtY29sb3J7Y29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1zdGF0aWMtYnJhbmQtcmVkLCNmMDMpfS55dHAtc3dhdGNoLWNvbG9yLXdoaXRle2NvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10ZXh0LXNlY29uZGFyeSl9Lnl0cC1wcmVtaXVtLWxhYmVse2ZvbnQtc2l6ZTo4My4zMzMzJTtjb2xvcjojY2NjfS55dHAtZG5pIC55dHAtc3dhdGNoLWNvbG9ye2NvbG9yOiNmZmZ9Lnl0cC1jb2xvci13aGl0ZSAueXRwLXN3YXRjaC1jb2xvcntjb2xvcjojZGRkfS55dHAtY29sb3ItcGFydHkgLnl0cC1zd2F0Y2gtY29sb3J7LXdlYmtpdC1hbmltYXRpb246eXRwLXBhcnR5LWNvbG9yIC4xNXMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbjp5dHAtcGFydHktY29sb3IgLjE1cyBsaW5lYXIgaW5maW5pdGV9QG1lZGlhIHByaW50ey5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtbXdlYi1wbGF5ZXIpICp7dmlzaWJpbGl0eTpoaWRkZW59Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1td2ViLXBsYXllcil7Ym9yZGVyOjFweCBzb2xpZCAjMDAwOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH06bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtY2hyb21lLXRvcCw6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheSw6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtbGFyZ2UtcGxheS1idXR0b257b3BhY2l0eToxIWltcG9ydGFudDtkaXNwbGF5OmJsb2NrIWltcG9ydGFudDt2aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50fTpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC1sYXJnZS1wbGF5LWJ1dHRvbiAqLDpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC10aXRsZSw6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtdGl0bGUgKntjb2xvcjojMDAwIWltcG9ydGFudDt2aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50fX0ueXRwLXBsYXllci1pbi1iYXItZGlzYWJsZS11aT46bm90KC5odG1sNS12aWRlby1jb250YWluZXIpe2Rpc3BsYXk6bm9uZTtwb2ludGVyLWV2ZW50czpub25lfS55dHAtY29tcG9zaXRlLXZpZGVvLW92ZXJsYXktcmVuZGVyZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OjA7dG9wOjA7Ym90dG9tOjA7ei1pbmRleDoxMH0ueXRwLWFkLW1vZHVsZXt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dHAtcGxheWVyLW1pbmltaXplZC55dHAtbWluaXBsYXllci1hbHRlcm5hdGUtdWkgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXR7aGVpZ2h0OmNhbGMoMTAwJSAtIDEycHgpO3RvcDowfS52aWRlby1hZC1zdGF0dXMtYmFye3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo2MXB4O3otaW5kZXg6ODUwO3dpZHRoOjEwMCU7YmFja2dyb3VuZC1jb2xvcjojMDAwO29wYWNpdHk6Ljc7ZGlzcGxheTpub25lfS55dHAtZW1iZWQgLnZpZGVvLWFkLXN0YXR1cy1iYXJ7Ym90dG9tOjUzcHh9Lnl0cC1iaWctbW9kZSAudmlkZW8tYWQtc3RhdHVzLWJhcntib3R0b206NzBweH0ueXRwLWhpZGUtY29udHJvbHMgLnZpZGVvLWFkLXN0YXR1cy1iYXJ7Ym90dG9tOjB9LmFkLXNob3dpbmcgLnZpZGVvLWFkLXN0YXR1cy1iYXJ7ZGlzcGxheTpibG9ja30uYWQtc2hvd2luZy55dHAtYXV0b2hpZGUgLnZpZGVvLWFkLXN0YXR1cy1iYXIsLmFkLXNob3dpbmcueXRwLWhpZGUtY29udHJvbHMgLnZpZGVvLWFkLXN0YXR1cy1iYXJ7Ym90dG9tOjB9LnZpZGVvLWFkLWxhYmVse2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJvdHRvbTo1cHh9LmFkLXNob3dpbmcgLmFkLXZpZGVve3Bvc2l0aW9uOmFic29sdXRlfS5hZC1zaG93aW5nIC5hZC12aWRlb3t0b3A6MH0uaHRtbDUtdmlkZW8tcGxheWVyIC52aWRlby1jbGljay10cmFja2luZywuaHRtbDUtdmlkZW8tcGxheWVyIC52aWRlby1zdHJlYW17ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlfS5odG1sNS12aWRlby1wbGF5ZXIgLmFkLWNvbnRhaW5lci1zaW5nbGUtbWVkaWEtZWxlbWVudC1hbm5vdGF0aW9uc3twb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4Ojg1MH0uaHRtbDUtdmlkZW8tcGxheWVyIC5hZC1jb250YWluZXItc2luZ2xlLW1lZGlhLWVsZW1lbnQtYW5ub3RhdGlvbnMtd29ya2Fyb3VuZHt6LWluZGV4Ojg1MH0uaHRtbDUtdmlkZW8tcGxheWVyIC5hZC1vdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo2MXB4O3dpZHRoOjEwMCU7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZW1iZWQuaHRtbDUtdmlkZW8tcGxheWVyIC5hZC1vdmVybGF5e2JvdHRvbTo1M3B4fS55dHAtYWQtb3ZlcmxheS1jbG9zZWQgLmFkLW92ZXJsYXksLnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1hZC1vdmVybGF5LWNsb3NlZCAuYWQtb3ZlcmxheXtkaXNwbGF5Om5vbmV9Lnl0cC1iaWctbW9kZSAuYWQtb3ZlcmxheXtib3R0b206NzBweH0ueXRwLWF1dG9oaWRlLnl0cC1hZC1vdmVybGF5LWNsb3NlZCAuYWQtb3ZlcmxheXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lmh0bWw1LXZpZGVvLXBsYXllciAuYWQtb3ZlcmxheSAudmlkZW8tY2xpY2stdHJhY2tpbmd7ZGlzcGxheTpub25lfS5odG1sNS12aWRlby1wbGF5ZXIgLmFkLW92ZXJsYXk+Om5vdCguaW1hLWNvbnRhaW5lcil7ei1pbmRleDo4NzB9Lmh0bWw1LXZpZGVvLXBsYXllciAuYWQtb3ZlcmxheT4uaW1hLWNvbnRhaW5lcnt6LWluZGV4OmF1dG8haW1wb3J0YW50fS5odG1sNS12aWRlby1wbGF5ZXIgLmFkLW92ZXJsYXk+LmltYS1jb250YWluZXI+Knt6LWluZGV4Ojg3MCFpbXBvcnRhbnQ7cG9zaXRpb246cmVsYXRpdmV9Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpIC5hZC1jb250YWluZXIsLmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCgueXRwLWFkLW92ZXJsYXktb3BlbikgLnZpZGVvLWFkc3tkaXNwbGF5Om5vbmV9Lml2LWVuZGNhcC1iYWNrZ3JvdW5ke3otaW5kZXg6ODIxfS5odG1sNS12aWRlby1wbGF5ZXIgLmF0dHJpYnV0aW9uLWJ1dHRvbnt0ZXh0LXNoYWRvdzpyZ2IoMCwwLDApIDAgMCA4cHgscmdiYSgwLDAsMCwuOSkgMCAwIDRweH0ueXRwLWFkLWJ1dHRvbi1pY29uLC55dHAtYWQtYnV0dG9uLXRleHQsLnl0cC1hZC1za2lwLWJ1dHRvbi1pY29uLC55dHAtYWQtc2tpcC1idXR0b24tdGV4dHtkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWFkLXNraXAtYnV0dG9uLXRleHQtY2VudGVyZWR7dmVydGljYWwtYWxpZ246bWlkZGxlfS55dHAtYWQtcGxheWVyLW92ZXJsYXktdXBkYXRlZC1mb2N1cy1zdHlsZS55dHAtYWQtcGxheWVyLW92ZXJsYXkgLnl0cC1hZC1idXR0b24sLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS11cGRhdGVkLWZvY3VzLXN0eWxlLnl0cC1hZC1wbGF5ZXItb3ZlcmxheSBidXR0b257b3V0bGluZTowfS55dHAtcHJvYmFibHkta2V5Ym9hcmQtZm9jdXMgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS11cGRhdGVkLWZvY3VzLXN0eWxlLnl0cC1hZC1wbGF5ZXItb3ZlcmxheSAueXRwLWFkLWJ1dHRvbjpmb2N1cywueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtYWQtcGxheWVyLW92ZXJsYXktdXBkYXRlZC1mb2N1cy1zdHlsZS55dHAtYWQtcGxheWVyLW92ZXJsYXkgYnV0dG9uOmZvY3Vzey13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC44KTtib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCByZ2JhKDI3LDEyNywyMDQsLjgpfS55dHAtYWQtYnV0dG9uLWljb257aGVpZ2h0OmluaGVyaXQ7d2lkdGg6aW5oZXJpdDtwb2ludGVyLWV2ZW50czphdXRvfS55dHAtYWQtYnV0dG9uLWxpbmt7cGFkZGluZzowO2JvcmRlcjpub25lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc2l6ZTppbmhlcml0O3RleHQtZGVjb3JhdGlvbjpub25lOy13ZWJraXQtYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZX0ueXRwLWFkLWJ1dHRvbi1saW5rOmFjdGl2ZSwueXRwLWFkLWJ1dHRvbi1saW5rOmhvdmVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmV9Lnl0cC1iaWctbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW5zdHJlYW0taW5mbywueXRwLWJpZy1tb2RlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktaW5zdHJlYW0taW5mbywueXRwLWJpZy1tb2RlIC55dHAtYWQtc3VydmV5LXBsYXllci1vdmVybGF5LWluc3RyZWFtLWluZm97bGVmdDoyNHB4O2JvdHRvbTo3MHB4fS55dHAtYXV0b2hpZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWluc3RyZWFtLWluZm8sLnl0cC1hdXRvaGlkZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWluc3RyZWFtLWluZm8sLnl0cC1hdXRvaGlkZSAueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZvLC55dHAtZW1iZWQueXRwLWF1dG9oaWRlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1pbnN0cmVhbS1pbmZvLC55dHAtZW1iZWQueXRwLWF1dG9oaWRlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktaW5zdHJlYW0taW5mbywueXRwLWVtYmVkLnl0cC1hdXRvaGlkZSAueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZvLC55dHAtZW1iZWQueXRwLWhpZGUtY29udHJvbHMgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWluc3RyZWFtLWluZm8sLnl0cC1lbWJlZC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXBsYXllci1vdmVybGF5LWluc3RyZWFtLWluZm8sLnl0cC1lbWJlZC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZvLC55dHAtZW1iZWQueXRwLWl2LWRyYXdlci1vcGVuIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1pbnN0cmVhbS1pbmZvLC55dHAtZW1iZWQueXRwLWl2LWRyYXdlci1vcGVuIC55dHAtYWQtcGxheWVyLW92ZXJsYXktaW5zdHJlYW0taW5mbywueXRwLWVtYmVkLnl0cC1pdi1kcmF3ZXItb3BlbiAueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZvLC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW5zdHJlYW0taW5mbywueXRwLWhpZGUtY29udHJvbHMgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZvLC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZvLC55dHAtaXYtZHJhd2VyLW9wZW4gLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWluc3RyZWFtLWluZm8sLnl0cC1pdi1kcmF3ZXItb3BlbiAueXRwLWFkLXBsYXllci1vdmVybGF5LWluc3RyZWFtLWluZm8sLnl0cC1pdi1kcmF3ZXItb3BlbiAueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZve2JvdHRvbTo2cHg7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW5zdHJlYW0taW5mbywueXRwLWFkLXBsYXllci1vdmVybGF5LWluc3RyZWFtLWluZm8sLnl0cC1hZC1zdXJ2ZXktcGxheWVyLW92ZXJsYXktaW5zdHJlYW0taW5mb3tib3R0b206NjFweDtjdXJzb3I6ZGVmYXVsdDtsZWZ0OjE4cHg7cG9pbnRlci1ldmVudHM6YXV0bztwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsLjc1KTt6LWluZGV4Ojg1MDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1lbWJlZCAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW5zdHJlYW0taW5mbywueXRwLWVtYmVkIC55dHAtYWQtcGxheWVyLW92ZXJsYXktaW5zdHJlYW0taW5mbywueXRwLWVtYmVkIC55dHAtYWQtc3VydmV5LXBsYXllci1vdmVybGF5LWluc3RyZWFtLWluZm97Ym90dG9tOjUzcHh9Lnl0cC1hZC1jbGlja2FibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1hZC1kaXNjbG9zdXJlLWJhbm5lcntib3JkZXItcmFkaXVzOjA7Ym90dG9tOmF1dG87Y3Vyc29yOnBvaW50ZXI7aGVpZ2h0OmF1dG87bGVmdDoxMnB4O3BvaW50ZXItZXZlbnRzOmF1dG87cG9zaXRpb246YWJzb2x1dGU7dG9wOjI0cHg7ei1pbmRleDo4NTB9Lnl0cC1iaWctbW9kZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWFkLWRpc2Nsb3N1cmUtYmFubmVye2xlZnQ6MjRweH0ueXRwLWFkLXBsYXllci1vdmVybGF5LWZseW91dC1jdGF7Ym90dG9tOjg2cHg7bGVmdDoxMnB4O3BvaW50ZXItZXZlbnRzOmF1dG87cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDo4NTB9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1mbHlvdXQtY3RhLXJvdW5kZWR7Ym9yZGVyLXJhZGl1czo4cHg7b3ZlcmZsb3c6aGlkZGVufS55dHAtZW1iZWQgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1mbHlvdXQtY3Rhe2JvdHRvbTo3OHB4fS55dHAtZmx5b3V0LWN0YXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO3RleHQtYWxpZ246bGVmdDtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1mbHlvdXQtY3RhLWxhcmdle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNik7cGFkZGluZzo4cHg7bWluLXdpZHRoOjIwMHB4fS55dHAtZmx5b3V0LWN0YTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS55dHAtZmx5b3V0LWN0YS1sYXJnZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpfS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtYm9keXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjkpO2JvcmRlci1yYWRpdXM6MnB4O21heC13aWR0aDo0MDBweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowO3dpZHRoOjEwMCU7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC10cmFuc2l0aW9uOndpZHRoIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIC41cyxtYXgtd2lkdGggLjJzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp3aWR0aCAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSAuNXMsbWF4LXdpZHRoIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtYm9keS1sYXJnZXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LXRyYW5zaXRpb246bm9uZTt0cmFuc2l0aW9uOm5vbmV9Lnl0cC1mbHlvdXQtY3RhOmhvdmVyIC55dHAtZmx5b3V0LWN0YS1ib2R5e2JhY2tncm91bmQtY29sb3I6cmdiKDI1NSwyNTUsMjU1KX0ueXRwLWZseW91dC1jdGE6aG92ZXIgLnl0cC1mbHlvdXQtY3RhLWJvZHktbGFyZ2V7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLXRleHQtY29udGFpbmVye21heC13aWR0aDoyNTBweDtwYWRkaW5nLWxlZnQ6NThweDtwYWRkaW5nLXJpZ2h0OjIwcHg7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtdGV4dC1jb250YWluZXItbGFyZ2V7cGFkZGluZy1yaWdodDoxMHB4fS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtaGVhZGxpbmUtY29udGFpbmVye2NvbG9yOiMzMzM7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToxNHB4O21hcmdpbi10b3A6MTBweH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWhlYWRsaW5lLWNvbnRhaW5lci1kYXJrLWJhY2tncm91bmR7Y29sb3I6I2RkZH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWRlc2NyaXB0aW9uLWNvbnRhaW5lcntjb2xvcjojNzY3Njc2O2ZvbnQtc2l6ZToxM3B4O21hcmdpbi10b3A6M3B4O21hcmdpbi1ib3R0b206MTBweH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWRlc2NyaXB0aW9uLWNvbnRhaW5lci1kYXJrLWJhY2tncm91bmR7Y29sb3I6I2RkZH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWRlc2NyaXB0aW9ue292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWhlYWRsaW5le2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6Mn0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWFjdGlvbi1idXR0b24tY29udGFpbmVye2RpcmVjdGlvbjpsdHI7bGluZS1oZWlnaHQ6NTZweDttYXgtd2lkdGg6MTUwcHg7cG9zaXRpb246c3RhdGljOy13ZWJraXQtYWxpZ24tc2VsZjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1hY3Rpb24tYnV0dG9uLWNvbnRhaW5lci1sYXJnZXtsaW5lLWhlaWdodDppbmhlcml0O21hcmdpbjo4cHg7bWluLXdpZHRoOjEwMCV9Lnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1hY3Rpb24tYnV0dG9ue2JhY2tncm91bmQ6IzE2N2FjNjtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1jb2xvcjojMTY3YWM2O2JvcmRlci1yYWRpdXM6MnB4Oy13ZWJraXQtYm94LXNoYWRvdzowIDFweCAwIHJnYmEoMCwwLDAsLjA1KTtib3gtc2hhZG93OjAgMXB4IDAgcmdiYSgwLDAsMCwuMDUpO2NvbG9yOiNmZmY7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6NTAwO2hlaWdodDoyOHB4O21hcmdpbjowIDhweCAwIDA7bWF4LXdpZHRoOjE0MHB4O292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjAgMTBweDt0ZXh0LWRlY29yYXRpb246bm9uZTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aGl0ZS1zcGFjZTpub3dyYXA7d2lkdGg6aW5oZXJpdH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWFjdGlvbi1idXR0b24tbGFyZ2V7bWluLXdpZHRoOjEwMCU7Y29sb3I6IzBmMGYwZn0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWFjdGlvbi1idXR0b246aG92ZXJ7YmFja2dyb3VuZDojMTI2ZGIzfS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtYWN0aW9uLWJ1dHRvbjphY3RpdmV7YmFja2dyb3VuZDojMDk1Yjk5Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAwIHJnYmEoMCwwLDAsLjUpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMCByZ2JhKDAsMCwwLC41KX0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWFjdGlvbi1idXR0b24ueXRwLWZseW91dC1jdGEtYWN0aW9uLWJ1dHRvbi1yb3VuZGVke2hlaWdodDozMnB4O2JvcmRlci1yYWRpdXM6MTZweDtwYWRkaW5nOjAgMTJweDtib3JkZXI6bm9uZTstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmU7Zm9udC1zaXplOjE0cHg7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7YmFja2dyb3VuZDojMDY1ZmQ0fS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtYWN0aW9uLWJ1dHRvbi55dHAtZmx5b3V0LWN0YS1hY3Rpb24tYnV0dG9uLXJvdW5kZWQtbGFyZ2V7YmFja2dyb3VuZC1jb2xvcjojM2VhNmZmfS55dHAtZmx5b3V0LWN0YSwueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWJvZHksLnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1ib2R5PmRpdntkaXJlY3Rpb246bHRyO2hlaWdodDphdXRvfS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtaWNvbi1jb250YWluZXJ7aGVpZ2h0OjEwMCU7bGVmdDo0cHg7b3ZlcmZsb3c6dmlzaWJsZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDo0OHB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTstbXMtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtaWNvbi1jb250YWluZXItbGFyZ2V7bGVmdDo4cHg7dG9wOi0yNnB4fS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtaWNvbi55dHAtZmx5b3V0LWN0YS1pY29uLXJvdW5kZWR7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1pY29ue2hlaWdodDo0OHB4O3dpZHRoOjQ4cHh9Lnl0cC1mbHlvdXQtY3RhLnl0cC1mbHlvdXQtY3RhLWluYWN0aXZley13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAlKX0ueXRwLWZseW91dC1jdGEueXRwLWZseW91dC1jdGEtaW5hY3RpdmUgLnl0cC1mbHlvdXQtY3RhLWljb24tY29udGFpbmVyey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwMCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwMCUpfS55dHAtZmx5b3V0LWN0YS55dHAtZmx5b3V0LWN0YS1pbmFjdGl2ZSAueXRwLWZseW91dC1jdGEtYm9keXttYXgtd2lkdGg6MDt3aWR0aDowfS55dHAtYmlnLW1vZGUgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1mbHlvdXQtY3Rhe2JvdHRvbTo5NXB4fS55dHAtc21hbGwtbW9kZSAueXRwLWZseW91dC1jdGEsLnl0cC1zbWFsbC1tb2RlIC55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtYm9keSwueXRwLXNtYWxsLW1vZGUgLnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1ib2R5PmRpdntoZWlnaHQ6YXV0bzttaW4taGVpZ2h0OjQwcHg7bWF4LXdpZHRoOjE5MHB4fS55dHAtc21hbGwtbW9kZSAueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWljb24tY29udGFpbmVye2hlaWdodDoxMDAlO3dpZHRoOjQwcHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtaWNvbntoZWlnaHQ6NDBweDt3aWR0aDo0MHB4fS55dHAtc21hbGwtbW9kZSAueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLXRleHQtY29udGFpbmVye21hcmdpbi1sZWZ0OjZweDtwYWRkaW5nOjRweCAyMHB4IDRweCA0MHB4fS55dHAtc21hbGwtbW9kZSAueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWhlYWRsaW5lLWNvbnRhaW5lcntmb250LXNpemU6MTJweDttYXJnaW4tdG9wOjJweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1kZXNjcmlwdGlvbi1jb250YWluZXJ7Zm9udC1zaXplOjExcHg7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1pY29uLWNvbnRhaW5lcntsZWZ0OjA7dG9wOjB9Lnl0cC1zbWFsbC1tb2RlIC55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtaWNvbi1jb250YWluZXItbGFyZ2V7bGVmdDo0cHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtYWN0aW9uLWJ1dHRvbi1jb250YWluZXJ7ZGlzcGxheTpub25lfS55dHAtYWQtZHVyYXRpb24tcmVtYWluaW5nLC55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbiAueXRwLWFkLWJ1dHRvbiwueXRwLWFkLWluZm8taWNvbi1idXR0b24sLnl0cC1hZC1zaW1wbGUtYWQtYmFkZ2UsLnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbntjb2xvcjojZmZmO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZToxMnB4O2xlZnQ6MDtsaW5lLWhlaWdodDoyOHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dHAtYWQtc2ltcGxlLWFkLWJhZGdle21hcmdpbi1sZWZ0OjVweDtvcGFjaXR5Oi43NX0ueXRwLWFkLXNpbXBsZS1hZC1iYWRnZS0tY2xlYW4tcGxheWVye21hcmdpbi1sZWZ0OjA7b3BhY2l0eToxO2NvbG9yOiNmZmY7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjt0ZXh0LXNoYWRvdzowIDAgMnB4IHJnYmEoMCwwLDAsLjUpO2xlZnQ6MDtsaW5lLWhlaWdodDoyOHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dHAtYWQtc2ltcGxlLWFkLWJhZGdlLS1zdXJ2ZXl7Zm9udC13ZWlnaHQ6NTAwfS55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAueXRwLWFkLXNpbXBsZS1hZC1iYWRnZXttYXJnaW4tbGVmdDowfS55dHAtYWQtZHVyYXRpb24tcmVtYWluaW5ne21hcmdpbi1sZWZ0OjNweDtvcGFjaXR5Oi43NX0ueXRwLWFkLWR1cmF0aW9uLXJlbWFpbmluZy0tY2xlYW4tcGxheWVye2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtZmxleDtkaXNwbGF5OmlubGluZS1mbGV4O21hcmdpbi1sZWZ0OjA7b3BhY2l0eToxO2NvbG9yOiNmZmY7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjt0ZXh0LXNoYWRvdzowIDAgMTZweCByZ2JhKDAsMCwwLC41KTtsZWZ0OjA7bGluZS1oZWlnaHQ6MjhweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWFkLWR1cmF0aW9uLXJlbWFpbmluZy0tY2xlYW4tcGxheWVyOmJlZm9yZXtjb250ZW50OiLigKIiO3BhZGRpbmctaW5saW5lOjRweH0ueXRwLWFkLWR1cmF0aW9uLXJlbWFpbmluZy0tbXdlYntmb250LXdlaWdodDo2MDA7bWFyZ2luLWxlZnQ6M3B4fS55dHAtYWQtZHVyYXRpb24tcmVtYWluaW5nLS1td2ViLWlvc3tsZXR0ZXItc3BhY2luZzotLjJweH0ueXRwLWFkLWluZm8taG92ZXItdGV4dC1idXR0b257ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjI4cHg7bGluZS1oZWlnaHQ6aW5oZXJpdDttYXJnaW46MCA1cHg7bWFyZ2luLXJpZ2h0OjA7cG9pbnRlci1ldmVudHM6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LXNoYWRvdzowIDAgMnB4IHJnYmEoMCwwLDAsLjUpO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWFkLWluZm8taG92ZXItdGV4dC1idXR0b24gLnl0cC1hZC1ob3Zlci10ZXh0LWNvbnRhaW5lcntiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O2JvdHRvbTozMHB4Oy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjojMzMzO2Rpc3BsYXk6bm9uZTtmb250LXNpemU6MTJweDtsZWZ0Oi0xOXB4O2xpbmUtaGVpZ2h0Om5vcm1hbDtvcGFjaXR5Oi45O3BhZGRpbmc6N3B4O3BvaW50ZXItZXZlbnRzOmF1dG87cG9zaXRpb246YWJzb2x1dGU7dGV4dC1zaGFkb3c6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lfS55dHAtYWQtaW5mby1ob3Zlci10ZXh0LXNob3J0e3doaXRlLXNwYWNlOm5vd3JhcH0uaHRtbDUtdmlkZW8tcGxheWVyIC55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbiAueXRwLWFkLWhvdmVyLXRleHQtY29udGFpbmVyIGF7Y29sb3I6IzE2N2FjNn0uaHRtbDUtdmlkZW8tcGxheWVyIC55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbiAueXRwLWFkLWhvdmVyLXRleHQtY29udGFpbmVyIGE6aG92ZXJ7Y29sb3I6IzE2N2FjNjt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbjpob3ZlciAueXRwLWFkLWhvdmVyLXRleHQtY29udGFpbmVyLC55dHAtYWQtb3ZlcmxheS1hZC1pbmZvLWJ1dHRvbi1jb250YWluZXI6aG92ZXIgLnl0cC1hZC1ob3Zlci10ZXh0LWNvbnRhaW5lcntkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWFkLWhvdmVyLXRleHQtY2FsbG91dHtib3JkZXItbGVmdDo1cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJpZ2h0OjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItdG9wOjVweCBzb2xpZCAjZmZmOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MDtsZWZ0OjIwcHg7b3ZlcmZsb3c6dmlzaWJsZTtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt0b3A6MTAwJTt3aWR0aDowfS55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbiAueXRwLWFkLWJ1dHRvbiwueXRwLWFkLWluZm8taWNvbi1idXR0b257LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDJweCAjMDAwKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDJweCAjMDAwKTtoZWlnaHQ6aW5oZXJpdDtvcGFjaXR5Oi43NTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTt3aWR0aDoxM3B4fS55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbiAueXRwLWFkLWhvdmVyLXRleHQtYnV0dG9uLS1jbGVhbi1wbGF5ZXJ7b3BhY2l0eToxOy13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCA3cHggcmdiYSgwLDAsMCwuOSkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgN3B4IHJnYmEoMCwwLDAsLjkpKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWFkLWluZm8taG92ZXItdGV4dC1idXR0b24gLnl0cC1hZC1idXR0b257LXdlYmtpdC1maWx0ZXI6dW5zZXQ7ZmlsdGVyOnVuc2V0fS55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbiAueXRwLWFkLWJ1dHRvbjpob3ZlciwueXRwLWFkLWluZm8taWNvbi1idXR0b246aG92ZXJ7b3BhY2l0eToxfS55dHAtYWQtY29uZmlybS1kaWFsb2ctYmFja2dyb3VuZCwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1iYWNrZ3JvdW5kLC55dHAtYWQtaW5mby1kaWFsb2ctYmFja2dyb3VuZHtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjgpO2Rpc3BsYXk6dGFibGU7aGVpZ2h0OjEwMCU7bGVmdDowO21hcmdpbjphdXRvO3BvaW50ZXItZXZlbnRzOmF1dG87cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJTt6LWluZGV4OjIyMDF9Lnl0cC1hZHMtdGlueS1tb2RlIC55dHAtYWQtY29uZmlybS1kaWFsb2ctYmFja2dyb3VuZCwueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctYmFja2dyb3VuZCwueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1pbmZvLWRpYWxvZy1iYWNrZ3JvdW5ke2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3cteTpzY3JvbGw7b3ZlcmZsb3cteDpoaWRkZW59Lnl0cC1hZC1jb25maXJtLWRpYWxvZy1jbG9zZS1vdmVybGF5LWJ1dHRvbiwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1jbG9zZS1idXR0b24sLnl0cC1hZC1pbmZvLWRpYWxvZy1jbG9zZS1idXR0b257aGVpZ2h0OjI0cHg7b3BhY2l0eTouNzU7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MTRweDt0b3A6MTRweDt3aWR0aDoyNHB4fS55dHAtYWQtY29uZmlybS1kaWFsb2ctY2xvc2Utb3ZlcmxheS1idXR0b246aG92ZXIsLnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctY2xvc2UtYnV0dG9uOmhvdmVyLC55dHAtYWQtaW5mby1kaWFsb2ctY2xvc2UtYnV0dG9uOmhvdmVye29wYWNpdHk6MX0ueXRwLWFkLWNvbmZpcm0tZGlhbG9nLWNvbnRhaW5lciwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1jb250YWluZXIsLnl0cC1hZC1pbmZvLWRpYWxvZy1jb250YWluZXJ7ZGlzcGxheTp0YWJsZS1jZWxsO3RleHQtYWxpZ246Y2VudGVyO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWFkLWNvbmZpcm0tZGlhbG9nLC55dHAtYWQtZmVlZGJhY2stZGlhbG9nLWZvcm0sLnl0cC1hZC1pbmZvLWRpYWxvZy1mb3Jte2JhY2tncm91bmQ6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCBibGFjaztjb2xvcjojNzY3Njc2O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3RleHQtc2hhZG93Om5vbmU7Zm9udC1zaXplOjE0cHg7bWluLXdpZHRoOjE4MHB4O21heC13aWR0aDo1MCU7cGFkZGluZzoxNHB4O3RleHQtYWxpZ246bGVmdH0ueXRwLWFkLWluZm8tZGlhbG9nLXJlbGF0aXZlLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjcyfS55dHAtYWQtaW5mby1kaWFsb2ctcmVsYXRpdmUtY29udGFpbmVyIC55dHAtYWQtaW5mby1kaWFsb2ctZm9ybXstd2Via2l0LWJveC1zaGFkb3c6MCAwIDE1cHggcmdiYSgwLDAsMCwuMTgpO2JveC1zaGFkb3c6MCAwIDE1cHggcmdiYSgwLDAsMCwuMTgpO2JvcmRlci1jb2xvcjojZTJlMmUyO21heC13aWR0aDpub25lfS55dHAtYWQtZmVlZGJhY2stZGlhbG9nLWZvcm0gYSwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1mb3JtIGE6aG92ZXIsLnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctdW5kby1tdXRlLWJ1dHRvbiwueXRwLWFkLWluZm8tZGlhbG9nLWZvcm0gYSwueXRwLWFkLWluZm8tZGlhbG9nLWZvcm0gYTpob3ZlciwueXRwLWFkLWluZm8tZGlhbG9nLW11dGUtYnV0dG9ue2NvbG9yOiMxNjdhYzY7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctdGl0bGUsLnl0cC1hZC1pbmZvLWRpYWxvZy10aXRsZXtjb2xvcjojMzMzO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nLWJvdHRvbTo4cHh9Lnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctdGl0bGUgYSwueXRwLWFkLWluZm8tZGlhbG9nLXRpdGxlIGF7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX11bC55dHAtYWQtaW5mby1kaWFsb2ctYWQtcmVhc29uc3twYWRkaW5nOjA7bWFyZ2luOjA7bWFyZ2luLWJvdHRvbTo4cHh9Lnl0cC1hZC1pbmZvLWRpYWxvZy1hZC1yZWFzb25zIGxpe2xpc3Qtc3R5bGU6ZGlzYztsaXN0LXN0eWxlLXBvc2l0aW9uOm91dHNpZGU7bWFyZ2luLWxlZnQ6MjBweH0ueXRwLWFkLWNvbmZpcm0tZGlhbG9nLW1lc3NhZ2VzLC55dHAtYWQtaW5mby1kaWFsb2ctZmVlZGJhY2stb3B0aW9uc3ttYXJnaW4tbGVmdDo4cHh9bGFiZWwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1yZWFzb24tbGFiZWx7ZGlzcGxheTpibG9jazttYXJnaW46OHB4IDB9Lnl0cC1hZC1jb25maXJtLWRpYWxvZy1jb25maXJtLWNvbnRhaW5lciwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1jb25maXJtLWNvbnRhaW5lciwueXRwLWFkLWluZm8tZGlhbG9nLWNvbmZpcm0tY29udGFpbmVye21hcmdpbi10b3A6OHB4O3RleHQtYWxpZ246cmlnaHR9Lnl0cC1hZC1jb25maXJtLWRpYWxvZy1jYW5jZWwtYnV0dG9uLC55dHAtYWQtY29uZmlybS1kaWFsb2ctY29uZmlybS1idXR0b24sLnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctY2FuY2VsLWJ1dHRvbiwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1jb25maXJtLWJ1dHRvbiwueXRwLWFkLWluZm8tZGlhbG9nLWNvbmZpcm0tYnV0dG9ue2JhY2tncm91bmQ6bm9uZTtib3JkZXI6bm9uZTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXdlaWdodDo1MDA7bWFyZ2luOjRweCAwIDAgMTJweDtwYWRkaW5nOjEwcHg7Y29sb3I6IzE2N2FjNjtjdXJzb3I6cG9pbnRlcjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9Lnl0cC1hZC1jb25maXJtLWRpYWxvZy1jYW5jZWwtYnV0dG9uOmhvdmVyLC55dHAtYWQtY29uZmlybS1kaWFsb2ctY29uZmlybS1idXR0b246aG92ZXIsLnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctY2FuY2VsLWJ1dHRvbjpob3ZlciwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1jb25maXJtLWJ1dHRvbjpob3ZlciwueXRwLWFkLWluZm8tZGlhbG9nLWNvbmZpcm0tYnV0dG9uOmhvdmVye2NvbG9yOiMxNjdhYzY7Y3Vyc29yOnBvaW50ZXI7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtYWQtaW5mby1kaWFsb2ctbXV0ZS1jb250YWluZXJ7bWFyZ2luLXRvcDo4cHh9Lnl0cC1hZC1pbmZvLWRpYWxvZy1tdXRlLWJ1dHRvbntmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZn0ueXRwLWFkLWluZm8tZGlhbG9nLW11dGUtYnV0dG9uIC55dHAtYWQtYnV0dG9uLWljb257aGVpZ2h0OjE2cHg7bWFyZ2luLXJpZ2h0OjVweDt3aWR0aDoxNnB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy11bmRvLW11dGUtYnV0dG9ue2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjUwMDttYXJnaW4tbGVmdDo1cHh9Lnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctdW5kby1tdXRlLWJ1dHRvbiAueXRwLWFkLWJ1dHRvbi10ZXh0e3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9Lnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbntsaW5lLWhlaWdodDppbmhlcml0O2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO21hcmdpbi1sZWZ0OjVweDt0ZXh0LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsLjc1KX0ueXRwLWFkLXZpc2l0LWFkdmVydGlzZXItYnV0dG9uOmJlZm9yZXtjb250ZW50OiIiO2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTJweDtyaWdodDotMnB4O3RvcDotN3B4O2JvdHRvbTotOHB4fS55dHAtYWQtdmlzaXQtYWR2ZXJ0aXNlci1idXR0b24gLnl0cC1hZC1idXR0b24tdGV4dHtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC43NSk7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjEycHg7bWFyZ2luOi00cHggM3B4IC0ycHggMDtwYWRkaW5nOjVweCAwO3RleHQtZGVjb3JhdGlvbjpub25lO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS55dHAtYWQtdmlzaXQtYWR2ZXJ0aXNlci1idXR0b246aG92ZXIgLnl0cC1hZC1idXR0b24tdGV4dHtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9Lnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbiAueXRwLWFkLWJ1dHRvbi1pY29ue2N1cnNvcjpwb2ludGVyOy13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAycHggIzAwMCk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAycHggIzAwMCk7aGVpZ2h0OjEwcHg7b3BhY2l0eTouNzU7d2lkdGg6MTBweDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDFweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVZKDFweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMXB4KX0ueXRwLWFkLXZpc2l0LWFkdmVydGlzZXItYnV0dG9uOmhvdmVyIC55dHAtYWQtYnV0dG9uLWljb257b3BhY2l0eToxfS55dHAtYmlnLW1vZGUgLnl0cC1hZC1wcmV2aWV3LWNvbnRhaW5lciwueXRwLWJpZy1tb2RlIC55dHAtYWQtc2tpcC1idXR0b24tY29udGFpbmVye2JvdHRvbTo5NXB4fS55dHAtYmlnLW1vZGUgLnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXJ7Ym90dG9tOjE1NnB4fS55dHAtZW1iZWQueXRwLWhpZGUtY29udHJvbHMgLnl0cC1hZC1wcmV2aWV3LWNvbnRhaW5lciwueXRwLWVtYmVkLnl0cC1oaWRlLWNvbnRyb2xzIC55dHAtYWQtc2tpcC1idXR0b24tY29udGFpbmVyLC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXByZXZpZXctY29udGFpbmVyLC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXNraXAtYnV0dG9uLWNvbnRhaW5lcntib3R0b206MjVweH0ueXRwLWhpZGUtY29udHJvbHMgLnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXJ7Ym90dG9tOjg2cHh9Lnl0cC1hZHMtdGlueS1tb2RlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktaW5zdHJlYW0tdXNlci1zZW50aW1lbnQgLnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXJ7Ym90dG9tOjcwcHh9Lnl0cC1zZXR0aW5ncy1zaG93biAueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LWNvbnRhaW5lciwueXRwLXNldHRpbmdzLXNob3duIC55dHAtYWQtcHJldmlldy1jb250YWluZXIsLnl0cC1zZXR0aW5ncy1zaG93biAueXRwLWFkLXNraXAtYnV0dG9uLWNvbnRhaW5lcntvcGFjaXR5Oi40O3BvaW50ZXItZXZlbnRzOm5vbmU7ei1pbmRleDo4NTB9Lnl0cC1zZXR0aW5ncy1zaG93biAueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LWNvbnRhaW5lciAueXRwLWFkLXRvZ2dsZS1idXR0b24tbGFiZWx7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLWFkLW1lc3NhZ2Utb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JvdHRvbTowO2xlZnQ6MDtwb2ludGVyLWV2ZW50czpub25lO3otaW5kZXg6ODUwfS55dHAtYWQtbWVzc2FnZS1zbG90LC55dHAtYWQtcHJldmlldy1zbG90LC55dHAtYWQtc2tpcC1hZC1zbG90e3RleHQtc2hhZG93OjAgMCA0cHggcmdiYSgwLDAsMCwuNzUpO3BvaW50ZXItZXZlbnRzOmF1dG87ei1pbmRleDo4NTB9Lnl0cC1hZC1tZXNzYWdlLWNvbnRhaW5lciwueXRwLWFkLXByZXZpZXctY29udGFpbmVyLC55dHAtYWQtc2tpcC1idXR0b24tY29udGFpbmVye2JvdHRvbTo4NnB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7ei1pbmRleDoxMDAwfS55dHAtZW1iZWQgLnl0cC1hZC1tZXNzYWdlLWNvbnRhaW5lciwueXRwLWVtYmVkIC55dHAtYWQtcHJldmlldy1jb250YWluZXIsLnl0cC1lbWJlZCAueXRwLWFkLXNraXAtYnV0dG9uLWNvbnRhaW5lcntib3R0b206NzhweH0ueXRwLWFkLW1lc3NhZ2UtY29udGFpbmVye2JvdHRvbTo4NnB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO2NvbG9yOiNmZmY7Y3Vyc29yOnBvaW50ZXI7b3BhY2l0eToxO3JpZ2h0OjA7ei1pbmRleDoxMDAwfS55dHAtZW1iZWQgLnl0cC1hZC1tZXNzYWdlLWNvbnRhaW5lcntib3R0b206NzhweH0ueXRwLWFkLW1lc3NhZ2UtY29udGFpbmVyLC55dHAtYWQtcHJldmlldy1jb250YWluZXJ7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC40cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNCk7Y3Vyc29yOmRlZmF1bHR9Lnl0cC1hZC1wcmV2aWV3LWNvbnRhaW5lci1kZXRhY2hlZHttYXJnaW4tcmlnaHQ6MTJweDtib3JkZXItcmFkaXVzOjRweDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC42KTtoZWlnaHQ6MzZweH0ueXRwLWFkLXByZXZpZXctY29udGFpbmVyLWRldGFjaGVkOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxMDAlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWFkLXNraXAtYnV0dG9uLWNvbnRhaW5lcnstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7Y3Vyc29yOnBvaW50ZXI7b3BhY2l0eTouNztwb2ludGVyLWV2ZW50czphdXRvfS55dHAtYWQtc2tpcC1idXR0b24tY29udGFpbmVyLWRldGFjaGVke21hcmdpbi1yaWdodDoxMnB4O29wYWNpdHk6MX0ueXRwLWFkLW1lc3NhZ2UtY29udGFpbmVyW2FyaWEtaGlkZGVuPXRydWVdLC55dHAtYWQtcHJldmlldy1jb250YWluZXJbYXJpYS1oaWRkZW49dHJ1ZV0sLnl0cC1hZC1za2lwLWJ1dHRvbi1jb250YWluZXJbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWFkLXByZXZpZXctdGV4dHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MTJweDtoZWlnaHQ6MzBweDtsZXR0ZXItc3BhY2luZzouMXB4O21pbi13aWR0aDo4MnB4O3BhZGRpbmc6MTFweCAxMHB4O3RleHQtYWxpZ246Y2VudGVyO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aGl0ZS1zcGFjZTpwcmU7d2lkdGg6YXV0b30ueXRwLWFkLXByZXZpZXctdGV4dC1tb2Rlcm57ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LjFweDtwYWRkaW5nOjAgOHB4O3RleHQtYWxpZ246Y2VudGVyO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aGl0ZS1zcGFjZTpwcmU7d2lkdGg6YXV0b30ueXRwLWFkLW1lc3NhZ2UtdGV4dHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MTZweDtoZWlnaHQ6NTJweDtsaW5lLWhlaWdodDo1MnB4O2xldHRlci1zcGFjaW5nOi4xcHg7bWluLXdpZHRoOjgwcHg7cGFkZGluZzowIDIwcHg7dGV4dC1hbGlnbjpjZW50ZXI7dmVydGljYWwtYWxpZ246bWlkZGxlO3doaXRlLXNwYWNlOnByZTt3aWR0aDphdXRvfS55dHAtYWQtcHJldmlldy1pbWFnZXtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0cC1hZC1wcmV2aWV3LWltYWdlPi55dHAtYWQtaW1hZ2V7ZGlzcGxheTpibG9jazt3aWR0aDo5MnB4O2hlaWdodDo1MnB4fS55dHAtYWQtcHJldmlldy1pbWFnZS1tb2Rlcm57ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlfS55dHAtYWQtcHJldmlldy1pbWFnZS1tb2Rlcm4+Lnl0cC1hZC1pbWFnZXtkaXNwbGF5OmJsb2NrO2hlaWdodDozNnB4O3dpZHRoOjY1cHh9LmNvdW50ZG93bi1uZXh0LXRvLXRodW1ibmFpbCAueXRwLWFkLXByZXZpZXctdGV4dHtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7aGVpZ2h0OmF1dG87bWluLXdpZHRoOjA7cGFkZGluZzowIDhweH0uY291bnRkb3duLW5leHQtdG8tdGh1bWJuYWlsIC55dHAtYWQtaW1hZ2V7aGVpZ2h0OjQxcHg7d2lkdGg6NzNweH0ubW9kZXJuLWNvdW50ZG93bi1uZXh0LXRvLXRodW1ibmFpbCAueXRwLWFkLXByZXZpZXctdGV4dC1tb2Rlcm57Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NDAwO2hlaWdodDphdXRvO21pbi13aWR0aDowO3BhZGRpbmc6MCA4cHh9Lm1vZGVybi1jb3VudGRvd24tbmV4dC10by10aHVtYm5haWwgLnl0cC1hZC1wcmV2aWV3LXRleHQtbW9kZXJuLXBvc3Ryb2xse3BhZGRpbmc6MCAxNHB4fS5tb2Rlcm4tY291bnRkb3duLW5leHQtdG8tdGh1bWJuYWlsIC55dHAtYWQtaW1hZ2V7aGVpZ2h0OjM2cHg7d2lkdGg6NjVweH0ueXRwLWFkLXNraXAtYnV0dG9ue2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNyk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC41KTtib3JkZXItcmlnaHQ6MDstd2Via2l0LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveDtjb2xvcjojZmZmO2RpcmVjdGlvbjpsdHI7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6bm9ybWFsO21pbi13aWR0aDowO3BhZGRpbmc6MTBweCA2cHggOHB4IDEwcHg7d2lkdGg6YXV0bzt0ZXh0LWFsaWduOmNlbnRlcjtjdXJzb3I6cG9pbnRlcn0ueXRwLWFkLXNraXAtYnV0dG9uOmhvdmVye2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOSk7Ym9yZGVyOjFweCBzb2xpZCByZ2IoMjU1LDI1NSwyNTUpO2JvcmRlci1yaWdodDowfS55dHAtYWQtc2tpcC1idXR0b24taWNvbntoZWlnaHQ6MzZweDt3aWR0aDozNnB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW46LTE0cHggLTZweCAtMTJweCAtNHB4fS55dHAtYWQtc2tpcC1idXR0b24tbW9kZXJue2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNik7LXdlYmtpdC1ib3gtc2l6aW5nOmNvbnRlbnQtYm94O2JveC1zaXppbmc6Y29udGVudC1ib3g7Y29sb3I6I2ZmZjtkaXJlY3Rpb246bHRyO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtoZWlnaHQ6MzZweDtsaW5lLWhlaWdodDpub3JtYWw7bWluLXdpZHRoOjA7cGFkZGluZzowIDZweCAwIDE2cHg7d2lkdGg6YXV0bzt0ZXh0LWFsaWduOmNlbnRlcjtib3JkZXItcmFkaXVzOjE4cHg7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1hZC1za2lwLWJ1dHRvbi1tb2Rlcm46aG92ZXJ7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxsZWZ0IGJvdHRvbSxmcm9tKHJnYmEoMjU1LDI1NSwyNTUsLjIpKSx0byhyZ2JhKDI1NSwyNTUsMjU1LC4yKSkpLC13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGZyb20ocmdiKDE1LDE1LDE1KSksdG8ocmdiKDE1LDE1LDE1KSkpO2JhY2tncm91bmQ6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmdiYSgyNTUsMjU1LDI1NSwuMikscmdiYSgyNTUsMjU1LDI1NSwuMikpLC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHJnYigxNSwxNSwxNSkscmdiKDE1LDE1LDE1KSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQocmdiYSgyNTUsMjU1LDI1NSwuMikscmdiYSgyNTUsMjU1LDI1NSwuMikpLGxpbmVhci1ncmFkaWVudChyZ2IoMTUsMTUsMTUpLHJnYigxNSwxNSwxNSkpfS55dHAtYWQtc2tpcC1idXR0b24tY29udGFpbmVyIC55dHAtYWQtc2tpcC1idXR0b24tbW9kZXJuOmZvY3Vze2JhY2tncm91bmQ6cmdiKDE1LDE1LDE1KTtvdXRsaW5lOm5vbmU7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmU7Ym94LXNoYWRvdzpub25lfS55dHAtYWQtc2tpcC1idXR0b24tY29udGFpbmVyIC55dHAtYWQtc2tpcC1idXR0b24tbW9kZXJuOmZvY3VzLXZpc2libGV7YmFja2dyb3VuZDojZmZmOy13ZWJraXQtYm94LXNoYWRvdzowIDAgMCAycHggIzBmMGYwZjtib3gtc2hhZG93OjAgMCAwIDJweCAjMGYwZjBmO2NvbG9yOiMwZjBmMGZ9Lnl0cC1hZC1za2lwLWJ1dHRvbi1pY29uLW1vZGVybntoZWlnaHQ6MzZweDt3aWR0aDozNnB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWFkLXNraXAtYnV0dG9uLWljb24tZGVsaGkgLnl0cC1hZC1za2lwLWJ1dHRvbi1pY29uLW1vZGVybiBzdmd7cGFkZGluZzo2cHh9Lnl0cC1hZC1za2lwLWJ1dHRvbi1pY29uLW13ZWItZGVsaGkgLnl0cC1hZC1za2lwLWJ1dHRvbi1pY29uLWRlbGhpIC55dHAtYWQtc2tpcC1idXR0b24taWNvbi1tb2Rlcm4gc3Zne2hlaWdodDoxNnB4O3dpZHRoOjE2cHg7cGFkZGluZzo0cHh9Lnl0cC1hZC1za2lwLWJ1dHRvbi1tb2Rlcm46Zm9jdXMtdmlzaWJsZSAueXRwLWFkLXNraXAtYnV0dG9uLWljb24tbW9kZXJuIHN2ZyBwYXRoe2ZpbGw6IzBmMGYwZn0uaHRtbDUtdmlkZW8tcGxheWVyIC55dHAtYWQtb3ZlcmxheS1zbG90e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo2MXB4O3dpZHRoOjEwMCU7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3otaW5kZXg6ODUwfS55dHAtZW1iZWQuaHRtbDUtdmlkZW8tcGxheWVyIC55dHAtYWQtb3ZlcmxheS1zbG90e2JvdHRvbTo1M3B4fS55dHAtYmlnLW1vZGUgLnl0cC1hZC1vdmVybGF5LXNsb3R7Ym90dG9tOjcwcHh9Lnl0cC1hdXRvaGlkZS55dHAtYWQtb3ZlcmxheS1jbG9zZWQgLnl0cC1hZC1vdmVybGF5LXNsb3R7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYWQtb3ZlcmxheS1jb250YWluZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9Lnl0cC1hZC1vdmVybGF5LWNvbnRhaW5lciAueXRwLWFkLWVuaGFuY2VkLW92ZXJsYXksLnl0cC1hZC1vdmVybGF5LWNvbnRhaW5lciAueXRwLWFkLW92ZXJsYXktaW1hZ2UgaW1nLC55dHAtYWQtb3ZlcmxheS1jb250YWluZXIgLnl0cC1hZC10ZXh0LW92ZXJsYXl7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0cC1hZC10ZXh0LW92ZXJsYXl7aGVpZ2h0OjYzcHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjYpO21pbi13aWR0aDozMjBweDttYXJnaW46YXV0bzttYXgtd2lkdGg6NDQwcHg7cGFkZGluZy1sZWZ0OjEwcHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpsZWZ0fS55dHAtYWQtdGV4dC1vdmVybGF5OmhvdmVye2JvcmRlcjoxcHggc29saWQgcmdiKDU4LDU4LDU4KX0ueXRwLWFkLW92ZXJsYXktdGl0bGV7Y3Vyc29yOnBvaW50ZXI7Y29sb3I6I2ZmZjtkaXNwbGF5OmJsb2NrO2ZvbnQ6NzAwIDE0cHggYXJpYWwsc2Fucy1zZXJpZjttYXJnaW46N3B4IDIycHggMCAwO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLWJvdHRvbTo0cHg7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt0ZXh0LXNoYWRvdzpyZ2IoMCwwLDApIDAgLTFweCAwO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLWFkLXRleHQtb3ZlcmxheTpob3ZlciAueXRwLWFkLW92ZXJsYXktdGl0bGV7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ueXRwLWFkLW92ZXJsYXktZGVzY3tjb2xvcjojZmZmO2ZvbnQ6MTJweCBhcmlhbCxzYW5zLXNlcmlmO21hcmdpbi1ib3R0b206MnB4O21hcmdpbi10b3A6LTNweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0cC1hZC1pbWFnZS1vdmVybGF5e21pbi13aWR0aDozMjBweDttYXJnaW46YXV0bztwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWFkLW92ZXJsYXktaW1hZ2V7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9ja30ueXRwLWFkLWltYWdlLW92ZXJsYXk6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ueXRwLWFkLW92ZXJsYXktbGlua3tjdXJzb3I6cG9pbnRlcjtib3R0b206OXB4O2NvbG9yOiNlYWRlOTA7Zm9udDoxMXB4IGFyaWFsLHNhbnMtc2VyaWY7cG9zaXRpb246c3RhdGljO3RleHQtZGVjb3JhdGlvbjpub25lO3RleHQtc2hhZG93OnJnYigwLDAsMCkgMCAtMXB4IDB9Lnl0cC1hZC1vdmVybGF5LWxpbmsueXRwLWFkLW92ZXJsYXktbGluay1pbmxpbmUtYmxvY2t7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lnl0cC1hZC1vdmVybGF5LWFkLWluZm8tYnV0dG9uLWNvbnRhaW5lcntjb2xvcjojZmZmO2N1cnNvcjpwb2ludGVyO2hlaWdodDoxNXB4O3BhZGRpbmc6NnB4IDFweCAxMHB4IDIwcHg7cG9pbnRlci1ldmVudHM6YXV0bztwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoyMXB4O3RvcDowO3dpZHRoOjE1cHh9Lnl0cC1hZC1vdmVybGF5LWFkLWluZm8tYnV0dG9uLWNvbnRhaW5lciAueXRwLWFkLWluZm8taG92ZXItdGV4dC1idXR0b257aGVpZ2h0OmluaGVyaXQ7d2lkdGg6aW5oZXJpdDttYXJnaW46MDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX0ueXRwLWFkLW92ZXJsYXktYWQtaW5mby1idXR0b24tY29udGFpbmVyIC55dHAtYWQtaG92ZXItdGV4dC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjYpO2NvbG9yOiNmZmY7Zm9udC13ZWlnaHQ6NTAwO29wYWNpdHk6MX0ueXRwLWFkLW92ZXJsYXktYWQtaW5mby1idXR0b24tY29udGFpbmVyIC55dHAtYWQtYnV0dG9ue2N1cnNvcjpwb2ludGVyO2ZpbGwtb3BhY2l0eTouODtoZWlnaHQ6aW5oZXJpdDtvcGFjaXR5Oi45O3dpZHRoOmluaGVyaXQ7LXdlYmtpdC1maWx0ZXI6bm9uZTtmaWx0ZXI6bm9uZTtsaW5lLWhlaWdodDpub3JtYWw7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTstbXMtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7dmVydGljYWwtYWxpZ246dG9wfS55dHAtYWQtb3ZlcmxheS1jbG9zZS1jb250YWluZXJ7Y3Vyc29yOnBvaW50ZXI7aGVpZ2h0OjE1cHg7bWFyZ2luOjA7cGFkZGluZzo2cHggNnB4IDEwcHggMXB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7d2lkdGg6MTVweH0ueXRwLWFkLW92ZXJsYXktY2xvc2UtYnV0dG9ue2JvcmRlcjowO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MDtmaWxsLW9wYWNpdHk6Ljg7ZmxvYXQ6cmlnaHQ7aGVpZ2h0OmluaGVyaXQ7b3BhY2l0eTouOTt3aWR0aDppbmhlcml0fS55dHAtYWQtdGV4dC1vdmVybGF5IC55dHAtYWQtb3ZlcmxheS1hZC1pbmZvLWJ1dHRvbi1jb250YWluZXIgLnl0cC1hZC1idXR0b24gc3ZnLC55dHAtYWQtdGV4dC1vdmVybGF5IC55dHAtYWQtb3ZlcmxheS1jbG9zZS1idXR0b24gc3Zne2JhY2tncm91bmQ6IzAwMDtmaWxsOiNmZmZ9Lnl0cC1hZC1pbWFnZS1vdmVybGF5IC55dHAtYWQtb3ZlcmxheS1hZC1pbmZvLWJ1dHRvbi1jb250YWluZXIgLnl0cC1hZC1idXR0b24gc3ZnLC55dHAtYWQtaW1hZ2Utb3ZlcmxheSAueXRwLWFkLW92ZXJsYXktY2xvc2UtYnV0dG9uIHN2Z3tiYWNrZ3JvdW5kOiNmZmY7ZmlsbDojNzU3NTc1fS55dHAtYWQtaW1hZ2Utb3ZlcmxheSAueXRwLWFkLW92ZXJsYXktY2xvc2UtYnV0dG9uIHBhdGh7ZmlsbDppbmhlcml0fS55dHAtYWQtb3ZlcmxheS1hZC1pbmZvLWJ1dHRvbi1jb250YWluZXI6aG92ZXIgLnl0cC1hZC1idXR0b24sLnl0cC1hZC1vdmVybGF5LWNsb3NlLWNvbnRhaW5lcjpob3ZlciAueXRwLWFkLW92ZXJsYXktY2xvc2UtYnV0dG9ue2ZpbGwtb3BhY2l0eToxfS55dHAtYWQtb3ZlcmxheS1hdHRyaWJ1dGlvbntib3R0b206OHB4O2NvbG9yOiM4ODg7Y3Vyc29yOnBvaW50ZXI7Zm9udDoxMXB4IGFyaWFsLHNhbnMtc2VyaWY7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MXB4O3BhZGRpbmc6NHB4Oy13ZWJraXQtdHJhbnNpdGlvbjpjb2xvciAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmNvbG9yIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYWQtb3ZlcmxheS1hdHRyaWJ1dGlvbjpob3Zlcntjb2xvcjojZmZmOy13ZWJraXQtdHJhbnNpdGlvbjpjb2xvciAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmNvbG9yIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtYWQtaW1hZ2Utb3ZlcmxheSAueXRwLWFkLW92ZXJsYXktYXR0cmlidXRpb257Y29sb3I6aW5oZXJpdDt0ZXh0LXNoYWRvdzpyZ2IoMCwwLDApIDAgMCA4cHgscmdiYSgwLDAsMCwuOSkgMCAwIDRweH0ueXRwLWFkLW92ZXJsYXktdGV4dC1pbWFnZXtmbG9hdDpsZWZ0fS55dHAtYWQtb3ZlcmxheS10ZXh0LWltYWdlIGltZ3std2Via2l0LWJveC1zaGFkb3c6MCAzcHggNXB4IHJnYmEoMCwwLDAsLjQ5ODAzOSk7Ym94LXNoYWRvdzowIDNweCA1cHggcmdiYSgwLDAsMCwuNDk4MDM5KTtoZWlnaHQ6NTdweDttYXJnaW46MnB4IDEwcHggMCAwO3dpZHRoOmF1dG87bWluLXdpZHRoOjU3cHh9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFse2JhY2tncm91bmQtc2l6ZTpjb3ZlcjstbW96LWJhY2tncm91bmQtc2l6ZTpjb3Zlcjstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kOndoaXRlO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlO3otaW5kZXg6NjR9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWJhY2tncm91bmQtY29udGFpbmVye3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ei1pbmRleDo2NTtib3JkZXI6bm9uZX0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYmFja2dyb3VuZHtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7LW1vei1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtib3JkZXI6bm9uZTtkaXNwbGF5OmJsb2NrfS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1zbG90e3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC45KTtib3R0b206MDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt6LWluZGV4OjY1fS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1jYXJkey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2Rpc3BsYXk6YmxvY2s7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTE0MHB4O3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3RvcDo1MCU7d2lkdGg6MjgwcHh9Lnl0cC1hZHMtdGlueS1tb2RlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1jYXJke21hcmdpbi1sZWZ0Oi05MHB4O3dpZHRoOjE4MHB4fS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1jYXJkLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWNhcmQtdW5pZmllZHttYXJnaW4tbGVmdDotMjE1cHg7d2lkdGg6NDMwcHg7cGFkZGluZzowIDE2cHg7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS55dHAtc21hbGwtbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtY2FyZC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1jYXJkLXVuaWZpZWR7bWFyZ2luLWxlZnQ6MDtsZWZ0OjA7dGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjI0NXB4O3BhZGRpbmc6MCAwIDAgMTZweDstd2Via2l0LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveH0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUtY29udGFpbmVye2N1cnNvcjpwb2ludGVyO3BvaW50ZXItZXZlbnRzOmF1dG99Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWhlYWRsaW5lLWNvbnRhaW5lci55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1oZWFkbGluZS1jb250YWluZXItdW5pZmllZHt3aWR0aDotd2Via2l0LWZpdC1jb250ZW50O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnQ7bWFyZ2luOjAgYXV0bztwYWRkaW5nOjI4cHggMCAxMHB4fS55dHAtc21hbGwtbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUtY29udGFpbmVyLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWhlYWRsaW5lLWNvbnRhaW5lci11bmlmaWVke3dpZHRoOi13ZWJraXQtZml0LWNvbnRlbnQ7d2lkdGg6LW1vei1maXQtY29udGVudDt3aWR0aDpmaXQtY29udGVudDttYXJnaW46MCBhdXRvIDAgMDtwYWRkaW5nOjEwcHggMH0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmV7Y29sb3I6IzMzMztkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MjBweDttYXgtaGVpZ2h0OjIuMmVtO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLXRvcDoxMHB4fS55dHAtc21hbGwtbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmV7Zm9udC1zaXplOjE2cHg7bWF4LWhlaWdodDoyLjJlbTtwYWRkaW5nLXRvcDo4cHh9Lnl0cC1hZHMtdGlueS1tb2RlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1oZWFkbGluZXtmb250LXNpemU6MTRweDtwYWRkaW5nLXRvcDo0cHh9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9uLWNvbnRhaW5lcntjdXJzb3I6cG9pbnRlcjtwb2ludGVyLWV2ZW50czphdXRvO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtZGVzY3JpcHRpb24tY29udGFpbmVyLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9uLWNvbnRhaW5lci11bmlmaWVke3doaXRlLXNwYWNlOm5vcm1hbDt3aWR0aDotd2Via2l0LWZpdC1jb250ZW50O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnQ7bWFyZ2luOjAgYXV0bztwYWRkaW5nOjZweCAwIDIycHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1kZXNjcmlwdGlvbi1jb250YWluZXIueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtZGVzY3JpcHRpb24tY29udGFpbmVyLXVuaWZpZWR7ZGlzcGxheTpub25lfS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1kZXNjcmlwdGlvbntjb2xvcjojNzY3Njc2O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjUwMDttYXgtaGVpZ2h0OjEuMWVtO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3dpZHRoOjEwMCU7cGFkZGluZy1ib3R0b206MTBweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9ue2ZvbnQtc2l6ZToxMnB4O3BhZGRpbmctYm90dG9tOjhweH0ueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9ue3BhZGRpbmctYm90dG9tOjB9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24tY29udGFpbmVye2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLWNvbnRhaW5lci55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLWNvbnRhaW5lci11bmlmaWVke3BhZGRpbmc6NnB4IDB9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b257cG9pbnRlci1ldmVudHM6YXV0bztiYWNrZ3JvdW5kLWNvbG9yOiMxNjdhYzY7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czoycHg7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOiNmZmY7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjIzcHg7aGVpZ2h0OjQ2cHg7bGluZS1oZWlnaHQ6NDZweDttaW4td2lkdGg6MTY0cHg7cGFkZGluZzowIDIwcHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9ue2ZvbnQtc2l6ZToxNXB4O2hlaWdodDozNnB4O2xpbmUtaGVpZ2h0OjM2cHg7cGFkZGluZzowIDE2cHg7bWluLXdpZHRoOjEyMHB4fS55dHAtYWRzLXRpbnktbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbntoZWlnaHQ6MjRweDtsaW5lLWhlaWdodDoyNHB4O21pbi13aWR0aDowfS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24tcm91bmRlZHtib3JkZXItcmFkaXVzOjI4cHg7aGVpZ2h0OjU2cHg7Zm9udC1zaXplOjIwcHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjI4cHg7cGFkZGluZzowIDI0cHg7YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0fS55dHAtc21hbGwtbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLXJvdW5kZWR7Zm9udC1zaXplOjE1cHg7aGVpZ2h0OjM2cHg7bGluZS1oZWlnaHQ6MzZweDtwYWRkaW5nOjAgMTZweDtib3JkZXItcmFkaXVzOjE4cHh9Lnl0cC1hZHMtdGlueS1tb2RlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24tcm91bmRlZHtoZWlnaHQ6MjRweDtsaW5lLWhlaWdodDoyNHB4O2JvcmRlci1yYWRpdXM6MTJweH0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW1hZ2UtY29udGFpbmVye2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6YmxvY2s7bWFyZ2luOmF1dG87bWF4LXdpZHRoOjEwMCU7Ym9yZGVyLXJhZGl1czo1MCU7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlcjpub25lO2hlaWdodDoxMjhweDt3aWR0aDoxMjhweH0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW1hZ2V7cG9pbnRlci1ldmVudHM6YXV0bzttYXgtd2lkdGg6MTAwJX0ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWltYWdlLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWltYWdlLXVuaWZpZWR7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1pbWFnZS1jb250YWluZXJ7aGVpZ2h0OjYwcHg7d2lkdGg6NjBweH0ueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWltYWdlLWNvbnRhaW5lcntoZWlnaHQ6NDBweDt3aWR0aDo0MHB4fS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1pbWFnZS1jb250YWluZXIueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW1hZ2UtY29udGFpbmVyLXVuaWZpZWR7aGVpZ2h0OjY0cHg7d2lkdGg6NjRweDtwb2ludGVyLWV2ZW50czphdXRvfS55dHAtc21hbGwtbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW1hZ2UtY29udGFpbmVyLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWltYWdlLWNvbnRhaW5lci11bmlmaWVke21hcmdpbi1sZWZ0Oi02cHg7cGFkZGluZzo2cHg7aGVpZ2h0OjM2cHg7d2lkdGg6MzZweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWltYWdlLWNvbnRhaW5lci55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1pbWFnZS1jb250YWluZXItdW5pZmllZHtoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1iYWNrZ3JvdW5kLWNvbnRhaW5lci55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1iYWNrZ3JvdW5kLWNvbnRhaW5lci11bmlmaWVkey13ZWJraXQtZmlsdGVyOmJsdXIoNzBweCk7ZmlsdGVyOmJsdXIoNzBweCl9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLXNsb3QueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtc2xvdC1kYXJrLWJhY2tncm91bmR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDUwLDUwLDUwLC44KX0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtc2xvdC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1zbG90LXVuaWZpZWR7aW5zZXQ6MDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLDApIDUwJSxyZ2JhKDAsMCwwLC44KSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxsZWZ0IGJvdHRvbSxjb2xvci1zdG9wKDUwJSxyZ2JhKDAsMCwwLDApKSx0byhyZ2JhKDAsMCwwLC44KSkpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDAsMCwwLDApIDUwJSxyZ2JhKDAsMCwwLC44KSk7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KX0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUtbGlnaHR7Y29sb3I6I2ZmZn0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUtdW5pZmllZHtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyOHB4O2ZvbnQtd2VpZ2h0OjkwMDtsaW5lLWhlaWdodDozNHB4O21heC1oZWlnaHQ6bm9uZTtvdmVyZmxvdzpoaWRkZW47cGFkZGluZy10b3A6MDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtbGluZS1jbGFtcDoyfS55dHAtc21hbGwtbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUtdW5pZmllZHtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0OjkwMDtsaW5lLWhlaWdodDoyNHB4O21heC1oZWlnaHQ6bm9uZTtwYWRkaW5nLXRvcDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtbGluZS1jbGFtcDoxfS55dHAtYWRzLXRpbnktbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUtdW5pZmllZHtmb250LXNpemU6MTZweDtwYWRkaW5nLXRvcDoxMnB4O3BhZGRpbmctYm90dG9tOjB9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9uLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9uLWxpZ2h0e2NvbG9yOiNmZmZ9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9uLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9uLXVuaWZpZWR7Y29sb3I6I2FhYTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MjBweDttYXgtaGVpZ2h0Om5vbmU7cGFkZGluZy1ib3R0b206MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtbGluZS1jbGFtcDoxOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbH0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLWRhcmt7YmFja2dyb3VuZC1jb2xvcjpyZ2IoNjIsMTY2LDI1NSk7Y29sb3I6cmdiKDE1LDE1LDE1KTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXdlaWdodDo1MDA7Zm9udC1zaXplOjIwcHh9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi1tb25vLWRhcmt7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2NvbG9yOnJnYigxNSwxNSwxNSk7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc2l6ZToyMHB4fS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24tbW9iaWxlLWNvbXBhbmlvbi1zaXple21pbi13aWR0aDowO2ZvbnQtc2l6ZToxNHB4O3BhZGRpbmc6MCAxNnB4fS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24tdW5pZmllZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYig2MiwxNjYsMjU1KTtib3JkZXItcmFkaXVzOjE4cHg7Y29sb3I6cmdiKDE1LDE1LDE1KTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7aGVpZ2h0OjM2cHg7bGluZS1oZWlnaHQ6MThweDttaW4td2lkdGg6MDttYXgtd2lkdGg6MjAwcHg7cGFkZGluZzowIDE2cHg7cG9zaXRpb246cmVsYXRpdmV9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVkOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0Oi02cHggMDtjdXJzb3I6cG9pbnRlcn0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLXVuaWZpZWQgLnl0cC1hZC1idXR0b24tdGV4dHtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtbGluZS1jbGFtcDoxOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVke2JhY2tncm91bmQtY29sb3I6cmdiKDYyLDE2NiwyNTUpO2JvcmRlci1yYWRpdXM6MThweDtjb2xvcjpyZ2IoMTUsMTUsMTUpO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtoZWlnaHQ6MzZweDtsaW5lLWhlaWdodDoxOHB4O21pbi13aWR0aDowO21heC13aWR0aDoxNTBweDtwYWRkaW5nOjAgMTZweH0ueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVke2hlaWdodDoyMnB4O2xpbmUtaGVpZ2h0OjEycHh9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVkLW1vbm97YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2JvcmRlci1yYWRpdXM6MThweDtjb2xvcjpyZ2IoMTUsMTUsMTUpO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtoZWlnaHQ6MzZweDtsaW5lLWhlaWdodDoxOHB4O21pbi13aWR0aDowO21heC13aWR0aDoyMDBweDtwYWRkaW5nOjAgMTZweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLXVuaWZpZWQtbW9ubzpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDotNnB4IDA7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVkLW1vbm8gLnl0cC1hZC1idXR0b24tdGV4dHtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtbGluZS1jbGFtcDoxOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVkLW1vbm97YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2JvcmRlci1yYWRpdXM6MThweDtjb2xvcjpyZ2IoMTUsMTUsMTUpO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtoZWlnaHQ6MzZweDtsaW5lLWhlaWdodDoxOHB4O21pbi13aWR0aDowO21heC13aWR0aDoxNTBweDtwYWRkaW5nOjAgMTZweH0ueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVkLW1vbm97aGVpZ2h0OjIycHg7bGluZS1oZWlnaHQ6MTJweH0ueXRwLWFkLXRpbWVkLXBpZS1jb3VudGRvd24tY29udGFpbmVye2JvdHRvbTo0cHg7ZGlzcGxheTpibG9jaztsZWZ0OjZweDtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjY1fS55dHAtYWQtdGltZWQtcGllLWNvdW50ZG93bi1jb250YWluZXIueXRwLWFkLXRpbWVkLXBpZS1jb3VudGRvd24tY29udGFpbmVyLXVwcGVyLXJpZ2h0e2JvdHRvbTphdXRvO2xlZnQ6YXV0bzt0b3A6NHB4O3JpZ2h0OjZweH1zdmcueXRwLWFkLXRpbWVkLXBpZS1jb3VudGRvd257YmFja2dyb3VuZDpub25lO2JvcmRlci1yYWRpdXM6NTAlO2hlaWdodDoyMHB4O29wYWNpdHk6LjQ7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC05MGRlZyk7LW1zLXRyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKTt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyk7d2lkdGg6MjBweH1jaXJjbGUueXRwLWFkLXRpbWVkLXBpZS1jb3VudGRvd24tYmFja2dyb3VuZHtmaWxsOm5vbmU7c3Ryb2tlOm5vbmV9Y2lyY2xlLnl0cC1hZC10aW1lZC1waWUtY291bnRkb3duLWlubmVye2ZpbGw6bm9uZTtzdHJva2U6IzAwMDtzdHJva2Utd2lkdGg6MTBweH1jaXJjbGUueXRwLWFkLXRpbWVkLXBpZS1jb3VudGRvd24tb3V0ZXJ7ZmlsbDpub25lO3N0cm9rZTojMDAwO3N0cm9rZS13aWR0aDoxfWNpcmNsZS55dHAtYWQtdGltZWQtcGllLWNvdW50ZG93bi1pbm5lci55dHAtYWQtdGltZWQtcGllLWNvdW50ZG93bi1pbm5lci1saWdodHtzdHJva2U6cmdiYSgyNTUsMjU1LDI1NSwuNzUpfWNpcmNsZS55dHAtYWQtdGltZWQtcGllLWNvdW50ZG93bi1vdXRlci55dHAtYWQtdGltZWQtcGllLWNvdW50ZG93bi1vdXRlci1saWdodHtzdHJva2U6cmdiYSgyNTUsMjU1LDI1NSwuNzUpfS55dHAtYWQtc3VydmV5e3dpZHRoOmF1dG87aGVpZ2h0OjEwMCU7YmFja2dyb3VuZC1jb2xvcjp3aGl0ZTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtwYWRkaW5nOjAgMzJweDttYXJnaW46MDtsaW5lLWhlaWdodDpub3JtYWw7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dHAtYWQtc3VydmV5LnJlbGF0aXZlLXBvc2l0aW9uaW5nLXN1cnZleXtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4Ojg1MH0ueXRwLWFkLXN1cnZleS1xdWVzdGlvbnN7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1mbGV4LWdyb3c6MTstd2Via2l0LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW46MCBhdXRvO2hlaWdodDoxMDAlfS55dHAtYWQtc3VydmV5LXF1ZXN0aW9ue2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtZmxleC1ncm93OjE7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO3BhZGRpbmctdG9wOjA7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWZ9Lnl0cC1hZC1zdXJ2ZXktcXVlc3Rpb24tYmFja2dyb3VuZHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7YmFja2dyb3VuZC1zaXplOmNvdmVyOy1tb3otYmFja2dyb3VuZC1zaXplOmNvdmVyOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtcG9zaXRpb246NTAlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cG9pbnRlci1ldmVudHM6bm9uZTt6LWluZGV4OjF9Lnl0cC1hZC1zdXJ2ZXktcXVlc3Rpb24tZm9yZWdyb3VuZHt6LWluZGV4OjJ9Lnl0cC1hZC1zdXJ2ZXktcXVlc3Rpb24tdGV4dHtjb2xvcjojMTMxMzEzO2ZvbnQtc2l6ZToyMHB4O3RleHQtYWxpZ246bGVmdDt3aWR0aDozMDJweDttYXJnaW4tcmlnaHQ6NDhweDtsaW5lLWhlaWdodDoyOHB4fS55dHAtYWQtc3VydmV5LWFuc3dlcnN7cmlnaHQ6MDt0b3A6MzVweDt3aWR0aDozMDhweH0ueXRwLWFkLXN1cnZleS1hbnN3ZXJ7aGVpZ2h0OjQ4cHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLC55dHAtYWQtc3VydmV5LW5vbmUtb2YtdGhlLWFib3Zley13ZWJraXQtZmxleC1ncm93OjE7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4O3dpZHRoOjEwMCV9Lnl0cC1hZC1zdXJ2ZXktbm9uZS1vZi10aGUtYWJvdmV7Zm9udC1zaXplOjEzLjdweDtoZWlnaHQ6MzVweDtwYWRkaW5nLXRvcDo0JX0ueXRwLWFkLXN1cnZleS1hbnN3ZXJzIC55dHAtYWQtc3VydmV5LW5vbmUtb2YtdGhlLWFib3Zle3BhZGRpbmctdG9wOjA7aGVpZ2h0OjQ4cHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b24gLnl0cC1hZC10b2dnbGUtYnV0dG9uLWljb257d2lkdGg6MjBweDtoZWlnaHQ6MjBweDstd2Via2l0LWZsZXg6MCAwIDIwcHg7LXdlYmtpdC1ib3gtZmxleDowO2ZsZXg6MCAwIDIwcHg7bWFyZ2luLXJpZ2h0OjEycHh9Lnl0cC1hZC10b2dnbGUtYnV0dG9uLWlucHV0e2Rpc3BsYXk6bm9uZX0ueXRwLWFkLXN1cnZleS1hbnN3ZXItYnV0dG9uLC55dHAtYWQtc3VydmV5LWFuc3dlci10b2dnbGUtYnV0dG9ue2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoycHg7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MjBweDtsaW5lLWhlaWdodDoyOHB4O292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt0ZXh0LWFsaWduOmxlZnQ7Ym9yZGVyOjA7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO3BhZGRpbmc6MDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLWJ1dHRvbjpob3ZlciwueXRwLWFkLXN1cnZleS1hbnN3ZXItdG9nZ2xlLWJ1dHRvbjpob3Zlcntmb250LXdlaWdodDo1MDB9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLWJ1dHRvbnttYXJnaW4tbGVmdDoyNHB4fS55dHAtYWQtc3VydmV5LWFuc3dlciAueXRwLWFkLXRvZ2dsZS1idXR0b24tdG9nZ2xlZHtmb250LXdlaWdodDo1MDB9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b24gLnl0cC1hZC10b2dnbGUtYnV0dG9uLXVudG9nZ2xlZC1pY29uIHN2ZyBwYXRoOmZpcnN0LW9mLXR5cGV7ZmlsbDojNjA2MDYwfS55dHAtYWQtc3VydmV5LWFuc3dlci10b2dnbGUtYnV0dG9uIC55dHAtYWQtdG9nZ2xlLWJ1dHRvbi10b2dnbGVkLWljb24gc3ZnIHBhdGg6bGFzdC1vZi10eXBle2ZpbGw6IzA0NWVkZH0ueXRwLWFkLXRvZ2dsZS1idXR0b24tbGFiZWx7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0Oy13ZWJraXQtanVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7LXdlYmtpdC1ib3gtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtoZWlnaHQ6MTAwJTtwb2ludGVyLWV2ZW50czphdXRvO2N1cnNvcjpwb2ludGVyfS55dHAtYWQtc3VydmV5LXBsYXllci1vdmVybGF5LXN1Ym1pdHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MTJweDtyaWdodDowO2hlaWdodDo1MnB4O3BvaW50ZXItZXZlbnRzOmF1dG99Lnl0cC1hZC1zdXJ2ZXktc3VibWl0LWJ1dHRvbntiYWNrZ3JvdW5kOiMxYjdmY2M7Ym9yZGVyOjA7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czoycHg7Y29sb3I6d2hpdGU7Zm9udC1zaXplOjEzLjdweDtoZWlnaHQ6MzVweDttYXJnaW4tcmlnaHQ6NnB4O3BhZGRpbmctbGVmdDoxMnB4O3BhZGRpbmctcmlnaHQ6NTZweH0ueXRwLWFkLXN1cnZleS1zdWJtaXQtYnV0dG9uLnl0cC1hZC1zdXJ2ZXktc3VibWl0LWJ1dHRvbi1yb3VuZGVke2JhY2tncm91bmQ6IzA2NWZkNDtib3JkZXItcmFkaXVzOjE4cHg7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO2hlaWdodDozNnB4O3BhZGRpbmctbGVmdDoxNnB4O3BhZGRpbmctcmlnaHQ6MTZweH0ueXRwLWFkLXBsYXllci1vdmVybGF5LC55dHAtYWQtc3VydmV5LXBsYXllci1vdmVybGF5LC55dHAtYWQtc3VydmV5LXF1ZXN0aW9uLXBsYXllci1vdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Ym90dG9tOjA7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1za2lwLW9yLXByZXZpZXcsLnl0cC1hZC1zdXJ2ZXktcGxheWVyLW92ZXJsYXktc2tpcC1vci1wcmV2aWV3e3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cmlnaHQ6MH0ueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWx7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3ZlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MTAwJTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtvcGFjaXR5OjE7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTt6LWluZGV4OjUwMDA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjVzIGVhc2U7dHJhbnNpdGlvbjpvcGFjaXR5IC41cyBlYXNlfS55dHAtYWQtc3VydmV5LWludGVyc3RpdGlhbFthcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGVhc2U7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBlYXNlfS55dHAtYWQtc3VydmV5LWludGVyc3RpdGlhbC1jb250ZW50c3toZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfS55dHAtYWQtc3VydmV5LWludGVyc3RpdGlhbCAueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWwtY29udGVudHN7aGVpZ2h0OmF1dG99Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLXRleHR7bWFyZ2luLWxlZnQ6MzJweDttYXJnaW4tdG9wOjI1cHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpsZWZ0O2ZvbnQtc2l6ZToyNHB4O2NvbG9yOiMxMzEzMTM7d2lkdGg6MjcycHh9Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWxvZ297YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1zaXplOjEwMCUgMTAwJTstbW96LWJhY2tncm91bmQtc2l6ZToxMDAlIDEwMCU7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlO2hlaWdodDoyNXB4O21hcmdpbi1sZWZ0OjMycHg7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTA1cHh9Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWxvZ28taW1hZ2V7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWFjdGlvbntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyLXJhZGl1czoycHg7Ym90dG9tOjA7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEwMCV9Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b257YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0O2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOiNmZmY7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjE0cHg7bWluLXdpZHRoOjE2MXB4O3BhZGRpbmc6MTBweDttYXJnaW4tbGVmdDozMnB4O21hcmdpbi10b3A6MjVweDtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWFsaWduOmNlbnRlcjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Ym9yZGVyOjB9Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi1yb3VuZGVke2JhY2tncm91bmQtY29sb3I6IzA2NWZkNDtib3JkZXItcmFkaXVzOjE4cHg7aGVpZ2h0OjM2cHg7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NTAwO21pbi13aWR0aDowO3BhZGRpbmctbGVmdDoxNnB4O3BhZGRpbmctcmlnaHQ6MTZweDt0ZXh0LXRyYW5zZm9ybTpub25lfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjU2cHgpey55dHAtYWQtc3VydmV5LWludGVyc3RpdGlhbC1sb2dve21hcmdpbi1sZWZ0OjQ4cHg7bWFyZ2luLXRvcDoxNXB4fS55dHAtYWQtc3VydmV5LWludGVyc3RpdGlhbC10ZXh0e2ZvbnQtc2l6ZToyMHB4O21hcmdpbi1sZWZ0OjQ4cHh9Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b257Zm9udC1zaXplOjE4cHg7bWFyZ2luLWxlZnQ6NDhweH0ueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi55dHAtYWQtc3VydmV5LWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLXJvdW5kZWR7Zm9udC1zaXplOjE0cHg7bWFyZ2luLWxlZnQ6NDhweH0ueXRwLWFkLXN1cnZleXtwYWRkaW5nOjAgMzJweDt3aWR0aDphdXRvfS55dHAtYWQtc3VydmV5LXF1ZXN0aW9uLXRleHR7Zm9udC1zaXplOjIwcHg7bWFyZ2luLXJpZ2h0OjMycHg7bGluZS1oZWlnaHQ6MjhweDt3aWR0aDphdXRvfS55dHAtYWQtc3VydmV5LWFuc3dlcnN7dG9wOjI0cHg7d2lkdGg6YXV0b30ueXRwLWFkLXN1cnZleS1hbnN3ZXJ7aGVpZ2h0OjQ4cHh9Lnl0cC1hZC1zdXJ2ZXktbm9uZS1vZi10aGUtYWJvdmUsLnl0cC1hZC1zdXJ2ZXktc3VibWl0LWJ1dHRvbntoZWlnaHQ6MjJweDtmb250LXNpemU6MTBweH0ueXRwLWFkLXN1cnZleS1hbnN3ZXItYnV0dG9uLC55dHAtYWQtc3VydmV5LWFuc3dlci10b2dnbGUtYnV0dG9ue2ZvbnQtc2l6ZToyMHB4O2xpbmUtaGVpZ2h0OjI4cHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b24gLnl0cC1hZC10b2dnbGUtYnV0dG9uLWljb257aGVpZ2h0OjIwcHg7d2lkdGg6MjBweDstd2Via2l0LWZsZXg6MCAwIDIwcHg7LXdlYmtpdC1ib3gtZmxleDowO2ZsZXg6MCAwIDIwcHg7bWFyZ2luLXJpZ2h0OjEycHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VycyAueXRwLWFkLXN1cnZleS1ub25lLW9mLXRoZS1hYm92ZXtoZWlnaHQ6NDhweH0ueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1zdWJtaXR7Ym90dG9tOjB9Lnl0cC1hZC1zdXJ2ZXktc3VibWl0LWJ1dHRvbnttYXJnaW4tcmlnaHQ6NHB4O3BhZGRpbmctbGVmdDoxMHB4O3BhZGRpbmctcmlnaHQ6NDBweH0ueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS11c2VyLXNlbnRpbWVudHtkaXNwbGF5Om5vbmV9W2Rpcj1ydGxdIC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXByZXZpZXctY29udGFpbmVye2JvdHRvbTo0MHB4fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjEyOTRweCkgYW5kIChtaW4taGVpZ2h0OjYzMHB4KXsueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbiwueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWwtbG9nbywueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWwtdGV4dHttYXJnaW4tbGVmdDo2NHB4fS55dHAtYWQtc3VydmV5e3dpZHRoOmF1dG87cGFkZGluZzowIDYwcHh9Lnl0cC1hZC1zdXJ2ZXktcXVlc3Rpb24tdGV4dHtmb250LXNpemU6MjRweDtsaW5lLWhlaWdodDozMnB4O21hcmdpbi1yaWdodDo0OHB4O3dpZHRoOjM1NHB4fS55dHAtYWQtc3VydmV5LWFuc3dlcnN7dG9wOjM4cHg7d2lkdGg6MzkwcHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2Vye2hlaWdodDo2MHB4fS55dHAtYWQtc3VydmV5LW5vbmUtb2YtdGhlLWFib3ZlLC55dHAtYWQtc3VydmV5LXN1Ym1pdC1idXR0b257aGVpZ2h0OjQ0cHg7Zm9udC1zaXplOjE4LjJweH0ueXRwLWFkLXN1cnZleS1hbnN3ZXItYnV0dG9uLC55dHAtYWQtc3VydmV5LWFuc3dlci10b2dnbGUtYnV0dG9ue2ZvbnQtc2l6ZToyNHB4O2xpbmUtaGVpZ2h0OjMycHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b24gLnl0cC1hZC10b2dnbGUtYnV0dG9uLWljb257aGVpZ2h0OjMycHg7d2lkdGg6MzJweDstd2Via2l0LWZsZXg6MCAwIDMycHg7LXdlYmtpdC1ib3gtZmxleDowO2ZsZXg6MCAwIDMycHg7bWFyZ2luLXJpZ2h0OjIwcHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VycyAueXRwLWFkLXN1cnZleS1ub25lLW9mLXRoZS1hYm92ZXtoZWlnaHQ6NjBweH0ueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1zdWJtaXR7Ym90dG9tOjI1cHh9Lnl0cC1hZC1zdXJ2ZXktc3VibWl0LWJ1dHRvbnttYXJnaW4tcmlnaHQ6OHB4O3BhZGRpbmctbGVmdDoxNnB4O3BhZGRpbmctcmlnaHQ6NzBweH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNzIwcHgpIGFuZCAobWluLWhlaWdodDo5ODBweCl7Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24sLnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWxvZ28sLnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLXRleHR7bWFyZ2luLWxlZnQ6OTZweH0ueXRwLWFkLXN1cnZleXt3aWR0aDoxMDAlO3BhZGRpbmc6MH0ueXRwLWFkLXN1cnZleS1xdWVzdGlvbi10ZXh0e2ZvbnQtc2l6ZTozMnB4O2xpbmUtaGVpZ2h0OjQzcHg7bWFyZ2luLXJpZ2h0OjgwcHg7d2lkdGg6NDUwcHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2Vyc3t0b3A6NTdweDt3aWR0aDo1MDBweH0ueXRwLWFkLXN1cnZleS1hbnN3ZXJ7aGVpZ2h0Ojc2cHh9Lnl0cC1hZC1zdXJ2ZXktbm9uZS1vZi10aGUtYWJvdmUsLnl0cC1hZC1zdXJ2ZXktc3VibWl0LWJ1dHRvbntoZWlnaHQ6NjdweDtmb250LXNpemU6MjcuNHB4fS55dHAtYWQtc3VydmV5LWFuc3dlci1idXR0b24sLnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b257Zm9udC1zaXplOjMycHg7bGluZS1oZWlnaHQ6NDNweH0ueXRwLWFkLXN1cnZleS1hbnN3ZXItdG9nZ2xlLWJ1dHRvbiAueXRwLWFkLXRvZ2dsZS1idXR0b24taWNvbntoZWlnaHQ6MzJweDt3aWR0aDozMnB4Oy13ZWJraXQtZmxleDowIDAgMzJweDstd2Via2l0LWJveC1mbGV4OjA7ZmxleDowIDAgMzJweDttYXJnaW4tcmlnaHQ6MjBweH0ueXRwLWFkLXN1cnZleS1hbnN3ZXJzIC55dHAtYWQtc3VydmV5LW5vbmUtb2YtdGhlLWFib3Zle2hlaWdodDo3NnB4fS55dHAtYWQtc3VydmV5LXBsYXllci1vdmVybGF5LXN1Ym1pdHtib3R0b206NDVweH0ueXRwLWFkLXN1cnZleS1zdWJtaXQtYnV0dG9ue21hcmdpbi1yaWdodDoxMnB4O3BhZGRpbmctbGVmdDoyMHB4O3BhZGRpbmctcmlnaHQ6MTEwcHh9fS55dHAtYWQtdG9nZ2xlLWJ1dHRvbi10b29sdGlwe2Rpc3BsYXk6bm9uZX0ueXRwLWFkLXRvZ2dsZS1idXR0b246aG92ZXIgLnl0cC1hZC10b2dnbGUtYnV0dG9uLXRvb2x0aXB7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXJbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowfS55dHAtYWQtaW5zdHJlYW0tdXNlci1zZW50aW1lbnQtY29udGFpbmVyey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC40cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuNHMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjcpO2JvdHRvbToxNDdweDtkaXNwbGF5OmlubGluZS1ibG9jaztwb2ludGVyLWV2ZW50czphdXRvO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7ei1pbmRleDo4NTB9Lnl0cC1lbWJlZCAueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LWNvbnRhaW5lcntib3R0b206MTM5cHh9Lnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXIueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LXNlbGVjdGVkey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC41cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTtiYWNrZ3JvdW5kOiM0NzgwZWV9Lnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1kaXNsaWtlLWJ1dHRvbiwueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LWxpa2UtYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LWNvbnRhaW5lciAueXRwLWFkLXRvZ2dsZS1idXR0b24taWNvbntkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MjJweDtvcGFjaXR5Oi44O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDoyMnB4fS55dHAtYWQtaW5zdHJlYW0tdXNlci1zZW50aW1lbnQtY29udGFpbmVyIC55dHAtYWQtdG9nZ2xlLWJ1dHRvbi1sYWJlbHtjdXJzb3I6cG9pbnRlcn0ueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LWxpa2UtYnV0dG9uIC55dHAtYWQtdG9nZ2xlLWJ1dHRvbi1sYWJlbHtwYWRkaW5nOjEycHggMTBweCAxMnB4IDIwcHh9Lnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1kaXNsaWtlLWJ1dHRvbiAueXRwLWFkLXRvZ2dsZS1idXR0b24tbGFiZWx7cGFkZGluZzoxMnB4IDIwcHggMTJweCAxMHB4fS55dHAtYWQtaW5zdHJlYW0tdXNlci1zZW50aW1lbnQtY29udGFpbmVyIC55dHAtYWQtdG9nZ2xlLWJ1dHRvbjpob3ZlciAueXRwLWFkLXRvZ2dsZS1idXR0b24taWNvbntvcGFjaXR5OjF9Lnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXIgLnl0cC1hZC10b2dnbGUtYnV0dG9uLnl0cC1hZC10b2dnbGUtYnV0dG9uLXRvZ2dsZWQgLnl0cC1hZC10b2dnbGUtYnV0dG9uLWljb257b3BhY2l0eToxfS55dHAtYWQtaW5zdHJlYW0tdXNlci1zZW50aW1lbnQtY29udGFpbmVyIC55dHAtYWQtdG9nZ2xlLWJ1dHRvbi10b29sdGlwe2JhY2tncm91bmQ6cmdiYSgzMSwzMSwzMSwuNSk7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7aGVpZ2h0OjE4cHg7bGV0dGVyLXNwYWNpbmc6MDttYXJnaW46OXB4IDA7cGFkZGluZzo4cHggMTZweDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXIgLnl0cC1hZC10b2dnbGUtYnV0dG9uOmhvdmVyIC55dHAtYWQtdG9nZ2xlLWJ1dHRvbi10b29sdGlwe2JvdHRvbTo0NnB4O3JpZ2h0OjIwcHh9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS10b3AtYmFyLWdyYWRpZW50c3tiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLC43NSkgNDAlLHJnYmEoMCwwLDAsMCkgOTklKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGNvbG9yLXN0b3AoNDAlLHJnYmEoMCwwLDAsLjc1KSksY29sb3Itc3RvcCg5OSUscmdiYSgwLDAsMCwwKSkpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDAsMCwwLC43NSkgNDAlLHJnYmEoMCwwLDAsMCkgOTklKTtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstbW96LWp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy13ZWJraXQtanVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47LXdlYmtpdC1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwKTtib3JkZXItYm90dG9tOm5vbmU7aGVpZ2h0OjQwcHg7d2lkdGg6MTAwJTtvcGFjaXR5Oi44O3RvcDowO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6ODUwfS55dHAtYWQtcGxheWVyLW92ZXJsYXktdG9wLWJhci1ncmFkaWVudHMgLnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbjpiZWZvcmV7Y29udGVudDpub25lfS55dHAtYWQtcGxheWVyLW92ZXJsYXktdG9wLWJhci1ncmFkaWVudHMgLnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbnttYXJnaW46YXV0byAxMXB4IGF1dG8gYXV0bztwb2ludGVyLWV2ZW50czphdXRvO3otaW5kZXg6ODUwfS55dHAtYWQtcGxheWVyLW92ZXJsYXktdG9wLWJhci1ncmFkaWVudHMgLnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbiAueXRwLWFkLWJ1dHRvbi10ZXh0e2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDpub3JtYWw7bWFyZ2luOmF1dG8gMDtwYWRkaW5nOjAgNHB4IDVweDt0ZXh0LXRyYW5zZm9ybTpjYXBpdGFsaXplO3RleHQtc2hhZG93OjFweCAxcHggMXB4IHJnYmEoMCwwLDAsLjc1KTtjb2xvcjojZmZmO3RleHQtZGVjb3JhdGlvbjpub25lfS55dHAtYWQtcGxheWVyLW92ZXJsYXktdG9wLWJhci1ncmFkaWVudHMgLnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbiAueXRwLWFkLWJ1dHRvbi1pY29ue2Rpc3BsYXk6bm9uZX0ueXRwLWFkLXBsYXllci1vdmVybGF5LXRvcC1iYXItZ3JhZGllbnRzIC55dHAtdmlkZW8tYWQtdG9wLWJhci10aXRsZXstd2Via2l0LWZsZXg6MTstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxO2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjt3aGl0ZS1zcGFjZTpub3dyYXA7Y29sb3I6I2ZmZjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RleHQtc2hhZG93OjFweCAxcHggMXB4IHJnYmEoMCwwLDAsLjc1KTt0ZXh0LWRlY29yYXRpb246bm9uZTtvdmVyZmxvdzpoaWRkZW47cG9pbnRlci1ldmVudHM6YXV0bztjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MTRweDttYXgtd2lkdGg6NTAlO2hlaWdodDoxNnB4O2xpbmUtaGVpZ2h0Om5vcm1hbDttYXJnaW46MTBweCA1cHggNXB4IDEwcHg7ei1pbmRleDo4NTA7b3BhY2l0eTouOX0ueXRwLWFkLWNsaWNrYWJsZS1lbGVtZW50OmhvdmVye2N1cnNvcjpwb2ludGVyfS55dHAtYWQtdW5kZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7dG9wOjEzMXB4O2xlZnQ6MDtoZWlnaHQ6Y2FsYygxMDAlIC0gMjYycHgpO3dpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVufS55dHAtYmlnLW1vZGUgLnl0cC1hZC11bmRlcmxheXtoZWlnaHQ6Y2FsYygxMDAlIC0gMjgwcHgpO3RvcDoxNDBweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC11bmRlcmxheXtoZWlnaHQ6Y2FsYygxMDAlIC0gMjIycHgpO3RvcDoxMTFweH0ueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1hZC11bmRlcmxheXtoZWlnaHQ6Y2FsYygxMDAlIC0gMTUwcHgpO3RvcDo3NXB4fS55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXVuZGVybGF5e2hlaWdodDpjYWxjKDEwMCUgLSAxMjJweCk7dG9wOjYxcHh9Lnl0cC1hZC11bmRlcmxheS1jb21wYW5pb257aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJX0ueXRwLWFkLXVuZGVybGF5LXNpZGUtY29udGFpbmVye2hlaWdodDoxMDAlO21heC1oZWlnaHQ6MTAwJTstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWp1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BhZGRpbmctdG9wOjEyNXB4O3BhZGRpbmctYm90dG9tOjEyNXB4fS55dHAtYWQtdW5kZXJsYXktbGVmdC1jb250YWluZXJ7bWFyZ2luLWxlZnQ6MiU7cGFkZGluZy1yaWdodDoyJX0ueXRwLWFkLXVuZGVybGF5LXJpZ2h0LWNvbnRhaW5lcnttYXJnaW4tbGVmdDo1Mi41JX0ueXRwLWFkLXVuZGVybGF5LWltYWdlLWNvbnRhaW5lcntib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjEpO2Rpc3BsYXk6YmxvY2s7bWluLWhlaWdodDo3MnB4O21pbi13aWR0aDo3MnB4O2JvcmRlci1yYWRpdXM6NTAlO21hcmdpbi1ib3R0b206MTZweDttYXgtd2lkdGg6MTQ0cHg7bWF4LWhlaWdodDoxNDRweDstd2Via2l0LWZsZXgtc2hyaW5rOjI7ZmxleC1zaHJpbms6MjtjdXJzb3I6cG9pbnRlcn0ueXRwLWFkLXVuZGVybGF5LWltYWdle3BvaW50ZXItZXZlbnRzOmF1dG87bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlO2JvcmRlci1yYWRpdXM6NTAlfS55dHAtYWQtdW5kZXJsYXktaGVhZGxpbmUtY29udGFpbmVye3dpZHRoOjEwMCU7LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjA7bWFyZ2luLWJvdHRvbTo0OHB4fS55dHAtYWQtdW5kZXJsYXktaGVhZGxpbmV7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2ZvbnQtc2l6ZToyLjV2dztmb250LXdlaWdodDo3MDA7dGV4dC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtbGluZS1jbGFtcDoyO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuO3dvcmQtd3JhcDpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YnJlYWstd29yZDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTYwMHB4KXsueXRwLWFkLXVuZGVybGF5LWhlYWRsaW5le2ZvbnQtc2l6ZTo0MHB4fX0ueXRwLWFkLXVuZGVybGF5LWRlc2NyaXB0aW9ue3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNzUpO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZToxNnB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3BhZGRpbmctYm90dG9tOjQwcHh9Lnl0cC1hZC11bmRlcmxheS1kZXNjcmlwdGlvbi1jb250YWluZXJ7LXdlYmtpdC1mbGV4LXNocmluazoxO2ZsZXgtc2hyaW5rOjF9Lnl0cC1hZC11bmRlcmxheS1hY3Rpb24tYnV0dG9uLWNvbnRhaW5lcntkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWFkLXVuZGVybGF5LWNsaWNrYWJsZXt6LWluZGV4Ojg1MH0ueXRwLWFkLXVuZGVybGF5LWFjdGlvbi1idXR0b257YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMwMzAzMDM7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpjZW50ZXI7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czoxOHB4O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxNHB4O3BhZGRpbmctbGVmdDoxMnB4O3BhZGRpbmctcmlnaHQ6MTJweDtoZWlnaHQ6MzZweH0ueXRwLWFkLXVuZGVybGF5LWFjdGlvbi1idXR0b24tbWVkaXVte2JvcmRlci1yYWRpdXM6MjRweDtmb250LXNpemU6MThweDtwYWRkaW5nLWxlZnQ6MTZweDtwYWRkaW5nLXJpZ2h0OjE2cHg7aGVpZ2h0OjQ4cHh9Lnl0cC1hZC11bmRlcmxheS1hY3Rpb24tYnV0dG9uLWxhcmdle2JvcmRlci1yYWRpdXM6MzJweDtmb250LXNpemU6MjJweDtwYWRkaW5nLWxlZnQ6MjRweDtwYWRkaW5nLXJpZ2h0OjI0cHg7aGVpZ2h0OjY0cHh9Lnl0cC1hZC11bmRlcmxheS1hY3Rpb24tYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2U5ZTllOX0ueXRwLWFkLXVuZGVybGF5LWFjdGlvbi1idXR0b24tYmx1ZXtiYWNrZ3JvdW5kLWNvbG9yOiMzZWE2ZmY7Y29sb3I6IzAzMDMwMztib3JkZXItcmFkaXVzOjJweH0ueXRwLWFkLXVuZGVybGF5LWFjdGlvbi1idXR0b24tYmx1ZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiM2NmI4ZmZ9Lnl0cC1wcm9iYWJseS1rZXlib2FyZC1mb2N1cyAueXRwLWFkLXVuZGVybGF5LWFjdGlvbi1idXR0b246Zm9jdXN7b3V0bGluZTpub25lO2JvcmRlcjoycHggc29saWQgI2ZmZjtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiNmZmZ9Lnl0cC1wcm9iYWJseS1rZXlib2FyZC1mb2N1cyAueXRwLWFkLXVuZGVybGF5LWFjdGlvbi1idXR0b24tYmx1ZTpmb2N1c3tvdXRsaW5lOm5vbmU7Ym9yZGVyOjJweCBzb2xpZCAjM2VhNmZmO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6IzNlYTZmZn0uaHRtbDUtdmlkZW8tY29udGFpbmVyLXRyYW5zaXRpb25pbmd7LXdlYmtpdC10cmFuc2l0aW9uOndpZHRoIDEuNXMsaGVpZ2h0IDEuNXMsbGVmdCAxLjVzLHRvcCAxLjVzO3RyYW5zaXRpb246d2lkdGggMS41cyxoZWlnaHQgMS41cyxsZWZ0IDEuNXMsdG9wIDEuNXN9Lnl0cC1hZC11bmRlcmxheS1hY3Rpb24tYnV0dG9uLXRyYW5zaXRpb257ei1pbmRleDotMX0uY29sb3ItY29udHJhc3QtZml4Lnl0cC1hZC1zdXJ2ZXl7YmFja2dyb3VuZC1jb2xvcjpibGFja30uY29sb3ItY29udHJhc3QtZml4IC55dHAtYWQtc3VydmV5LXF1ZXN0aW9uLWJhY2tncm91bmR7b3BhY2l0eTo2MCV9LmNvbG9yLWNvbnRyYXN0LWZpeCAueXRwLWFkLXN1cnZleS1hbnN3ZXItYnV0dG9uLC5jb2xvci1jb250cmFzdC1maXggLnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b24sLmNvbG9yLWNvbnRyYXN0LWZpeCAueXRwLWFkLXN1cnZleS1xdWVzdGlvbi10ZXh0e2NvbG9yOndoaXRlfS5jb2xvci1jb250cmFzdC1maXggLnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b24gLnl0cC1hZC10b2dnbGUtYnV0dG9uLXVudG9nZ2xlZC1pY29uIHN2ZyBwYXRoOmZpcnN0LW9mLXR5cGV7ZmlsbDp3aGl0ZX0ueXRwLWFkLWJhZGdle2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtZmxleDtkaXNwbGF5OmlubGluZS1mbGV4O2xlZnQ6MDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWFkLWJhZGdlOmFmdGVye2NvbnRlbnQ6IsK3IjtwYWRkaW5nLWlubGluZTo0cHh9Lnl0cC1hZC1iYWRnZV9fcG9kLWluZGV4OmJlZm9yZXtjb250ZW50OiLCtyI7cGFkZGluZy1pbmxpbmU6NHB4IDNweH0ueXRwLWFkLWJhZGdlLS1zdGFya3tjb2xvcjojZmZmO29wYWNpdHk6Ljc1O2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjI4cHh9Lnl0cC1hZC1iYWRnZS0tc3RhcmsgLnl0cC1hZC1iYWRnZV9fdGV4dHtmb250LXdlaWdodDo3MDB9Lnl0cC1hZC1iYWRnZS0tY2xlYW4tcGxheWVye2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtZmxleDtkaXNwbGF5OmlubGluZS1mbGV4O2xlZnQ6MDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWFkLWJhZGdlLS1zdGFyay1jbGVhbi1wbGF5ZXJ7Y29sb3I6I2ZmZjtvcGFjaXR5OjE7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MjhweDt0ZXh0LXNoYWRvdzowIDAgOHB4IHJnYmEoMCwwLDAsLjUpO2xldHRlci1zcGFjaW5nOi4zNXB4fS55dHAtYWQtYmFkZ2UtLXN0YXJrLWNsZWFuLXBsYXllciAueXRwLWFkLWJhZGdlX190ZXh0LS1jbGVhbi1wbGF5ZXJ7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjt0ZXh0LXNoYWRvdzowIDAgMTZweCByZ2JhKDAsMCwwLC41KX0ueXRwLWFkLWJhZGdlLS1zdGFyay1jbGVhbi1wbGF5ZXItaW9ze2xldHRlci1zcGFjaW5nOi4xcHh9Lnl0cC1hZC1ncmlkLWNhcmQtY29sbGVjdGlvbntkaXNwbGF5OmdyaWQ7Z2FwOjhweDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDEsbWlubWF4KDAsMWZyKSl9Lnl0cC1hZC1ncmlkLWNhcmQtdGV4dHttYXgtd2lkdGg6NTAwcHg7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3c7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMSk7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtZmxleDoxOy13ZWJraXQtZmxleC1ncm93OjE7ZmxleC1ncm93OjE7LXdlYmtpdC1hbGlnbi1zZWxmOnN0cmV0Y2g7YWxpZ24tc2VsZjpzdHJldGNoOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1hZC1ncmlkLWNhcmQtdGV4dF9fYnV0dG9ue21hcmdpbjoxMnB4IDE2cHggMTJweCAxMnB4fS55dHAtYWQtZ3JpZC1jYXJkLXRleHRfX21ldGFkYXRhey13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1mbGV4OjE7LXdlYmtpdC1mbGV4LWdyb3c6MTtmbGV4LWdyb3c6MTttYXJnaW4tbGVmdDoxNnB4O21hcmdpbi10b3A6MTJweDttYXJnaW4tYm90dG9tOjEycHg7bWluLXdpZHRoOjB9Lnl0cC1hZC1ncmlkLWNhcmQtdGV4dF9fbWV0YWRhdGFfX2hlYWRsaW5le2NvbG9yOiNmZmY7Zm9udC1mYW1pbHk6WW91VHViZSBOb3RvLFJvYm90byxhcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47bWF4LWhlaWdodDoxLjhyZW07LXdlYmtpdC1saW5lLWNsYW1wOjE7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9Lnl0cC1hZC1ncmlkLWNhcmQtdGV4dF9fbWV0YWRhdGFfX2Rlc2NyaXB0aW9ue2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fS55dHAtYWQtZ3JpZC1jYXJkLXRleHRfX21ldGFkYXRhX19kZXNjcmlwdGlvbiA6Zmlyc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjFweDt3aWR0aDotd2Via2l0LW1heC1jb250ZW50O3dpZHRoOi1tb3otbWF4LWNvbnRlbnQ7d2lkdGg6bWF4LWNvbnRlbnR9Lnl0cC1hZC1ncmlkLWNhcmQtdGV4dF9fbWV0YWRhdGFfX2Rlc2NyaXB0aW9uIDpub3QoOmZpcnN0LWNoaWxkKXstd2Via2l0LWJveC1mbGV4OjE7LXdlYmtpdC1mbGV4OjE7ZmxleDoxfS55dHAtYWQtZ3JpZC1jYXJkLXRleHRfX21ldGFkYXRhX19kZXNjcmlwdGlvbl9fbGluZXtjb2xvcjojZmZmO2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbn0ueXRwLWFkLXBvZC1pbmRleHtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdztkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWZsZXg7ZGlzcGxheTppbmxpbmUtZmxleDtsZWZ0OjA7cG9zaXRpb246cmVsYXRpdmV9Lnl0cC1hZC1wb2QtaW5kZXg6YmVmb3Jle2NvbnRlbnQ6IuKAoiI7cGFkZGluZy1pbmxpbmU6NHB4IDNweH0ueXRwLWFkLXBvZC1pbmRleC0tc3Rhcmt7Y29sb3I6I2ZmZjtvcGFjaXR5OjE7Zm9udC1zaXplOjEycHg7bGV0dGVyLXNwYWNpbmc6bm9ybWFsO2xpbmUtaGVpZ2h0OjI4cHg7dGV4dC1zaGFkb3c6MCAwIDE2cHggcmdiYSgwLDAsMCwuNSk7Zm9udC1mYW1pbHk6WW91VHViZSBOb3RvLFJvYm90byxhcmlhbCxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWFkLXBvZC1pbmRleC0tbXdlYntmb250LXdlaWdodDo2MDB9Lnl0cC1hZC1wb2QtaW5kZXgtLW13ZWItaW9ze2xldHRlci1zcGFjaW5nOi0uMnB4fS55dHAtYXV0b2hpZGUgLnl0cC1hZC1wb2QtaW5kZXgtLWF1dG9oaWRle2Rpc3BsYXk6bm9uZTt2aXNpYmlsaXR5OmhpZGRlbjtvcGFjaXR5OjB9Lnl0cC1hZC1idXR0b24tdm17ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7Zm9udC13ZWlnaHQ6NTAwO2JvcmRlcjpub25lOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BvaW50ZXItZXZlbnRzOmF1dG87Y3Vyc29yOnBvaW50ZXI7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtYWQtYnV0dG9uLXZtX190ZXh0e3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWFkLWJ1dHRvbi12bV9faWNvbnstd2Via2l0LWZsZXgtc2hyaW5rOjA7ZmxleC1zaHJpbms6MH0ueXRwLWFkLWJ1dHRvbi12bS0tc2l6ZS1jb21wYWN0e2hlaWdodDozMnB4O2xpbmUtaGVpZ2h0OjMycHg7Ym9yZGVyLXJhZGl1czoxNnB4O2ZvbnQtc2l6ZToxMnB4O3BhZGRpbmc6MCAxMnB4fS55dHAtYWQtYnV0dG9uLXZtLS1zaXplLWNvbXBhY3QgLnl0cC1hZC1idXR0b24tdm1fX2ljb257aGVpZ2h0OjE2cHg7d2lkdGg6MTZweH0ueXRwLWFkLWJ1dHRvbi12bS0tc2l6ZS1jb21wYWN0IC55dHAtYWQtYnV0dG9uLXZtX19pY29uLS10cmFpbGluZ3std2Via2l0LW1hcmdpbi1zdGFydDo0cHg7bWFyZ2luLWlubGluZS1zdGFydDo0cHg7LXdlYmtpdC1tYXJnaW4tZW5kOi00cHg7bWFyZ2luLWlubGluZS1lbmQ6LTRweH0ueXRwLWFkLWJ1dHRvbi12bS0tc2l6ZS1jb21wYWN0IC55dHAtYWQtYnV0dG9uLXZtX19pY29uLS1sZWFkaW5ney13ZWJraXQtbWFyZ2luLXN0YXJ0Oi00cHg7bWFyZ2luLWlubGluZS1zdGFydDotNHB4Oy13ZWJraXQtbWFyZ2luLWVuZDo0cHg7bWFyZ2luLWlubGluZS1lbmQ6NHB4fS55dHAtYWQtYnV0dG9uLXZtLS1zaXplLWRlZmF1bHR7aGVpZ2h0OjM2cHg7bGluZS1oZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjE4cHg7Zm9udC1zaXplOjE0cHg7cGFkZGluZzowIDE2cHh9Lnl0cC1hZC1idXR0b24tdm0tLXNpemUtZGVmYXVsdCAueXRwLWFkLWJ1dHRvbi12bV9faWNvbntoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dHAtYWQtYnV0dG9uLXZtLS1zaXplLWRlZmF1bHQgLnl0cC1hZC1idXR0b24tdm1fX2ljb24tLXRyYWlsaW5ney13ZWJraXQtbWFyZ2luLXN0YXJ0OjZweDttYXJnaW4taW5saW5lLXN0YXJ0OjZweDstd2Via2l0LW1hcmdpbi1lbmQ6LTZweDttYXJnaW4taW5saW5lLWVuZDotNnB4fS55dHAtYWQtYnV0dG9uLXZtLS1zaXplLWRlZmF1bHQgLnl0cC1hZC1idXR0b24tdm1fX2ljb24tLWxlYWRpbmd7LXdlYmtpdC1tYXJnaW4tc3RhcnQ6LTZweDttYXJnaW4taW5saW5lLXN0YXJ0Oi02cHg7LXdlYmtpdC1tYXJnaW4tZW5kOjZweDttYXJnaW4taW5saW5lLWVuZDo2cHh9Lnl0cC1hZC1idXR0b24tdm0tLXNpemUtbGFyZ2V7aGVpZ2h0OjQ4cHg7bGluZS1oZWlnaHQ6NDhweDtib3JkZXItcmFkaXVzOjI0cHg7Zm9udC1zaXplOjE4cHg7cGFkZGluZzowIDI0cHh9Lnl0cC1hZC1idXR0b24tdm0tLXNpemUtbGFyZ2UgLnl0cC1hZC1idXR0b24tdm1fX2ljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRwLWFkLWJ1dHRvbi12bS0tc2l6ZS1sYXJnZSAueXRwLWFkLWJ1dHRvbi12bV9faWNvbi0tdHJhaWxpbmd7LXdlYmtpdC1tYXJnaW4tc3RhcnQ6OHB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6OHB4Oy13ZWJraXQtbWFyZ2luLWVuZDotOHB4O21hcmdpbi1pbmxpbmUtZW5kOi04cHh9Lnl0cC1hZC1idXR0b24tdm0tLXNpemUtbGFyZ2UgLnl0cC1hZC1idXR0b24tdm1fX2ljb24tLWxlYWRpbmd7LXdlYmtpdC1tYXJnaW4tc3RhcnQ6LThweDttYXJnaW4taW5saW5lLXN0YXJ0Oi04cHg7LXdlYmtpdC1tYXJnaW4tZW5kOjhweDttYXJnaW4taW5saW5lLWVuZDo4cHh9Lnl0cC1hZC1idXR0b24tdm0tLXN0eWxlLXRyYW5zcGFyZW50e2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ueXRwLWFkLWJ1dHRvbi12bS0tc3R5bGUtdHJhbnNwYXJlbnQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4yKX0ueXRwLWFkLWJ1dHRvbi12bS0tc3R5bGUtZmlsbGVke2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0fS55dHAtYWQtYnV0dG9uLXZtLS1zdHlsZS1maWxsZWQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDU1NmJmfS55dHAtYWQtYnV0dG9uLXZtLS1zdHlsZS1maWxsZWQtd2hpdGV7Y29sb3I6IzBmMGYwZjtiYWNrZ3JvdW5kLWNvbG9yOiNmMWYxZjF9Lnl0cC1hZC1idXR0b24tdm0tLXN0eWxlLWZpbGxlZC13aGl0ZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNkOWQ5ZDl9Lnl0cC1hZC1idXR0b24tdm0tLXN0eWxlLWZpbGxlZC13aGl0ZTphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjojZDlkOWQ5fS55dHAtYWQtYnV0dG9uLXZtLS1zdHlsZS1maWxsZWQtZGFya3tiYWNrZ3JvdW5kLWNvbG9yOiMzZWE2ZmY7Y29sb3I6cmdiKDE1LDE1LDE1KX0ueXRwLWFkLWJ1dHRvbi12bS0tc3R5bGUtZmlsbGVkLWRhcms6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojNjViOGZmfS55dHAtYWQtYnV0dG9uLXZtLS1zdHlsZS1tb25vLWZpbGxlZHtjb2xvcjojZjFmMWYxO2JhY2tncm91bmQtY29sb3I6IzBmMGYwZn0ueXRwLWFkLWJ1dHRvbi12bS0tc3R5bGUtbW9uby1maWxsZWQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojM2YzZjNmfS55dHAtYWQtYnV0dG9uLXZtLS1zdHlsZS1tb25vLWZpbGxlZDphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjojM2YzZjNmfS55dHAtYWQtYnV0dG9uLXZtLS1pY29uLW9ubHl7cGFkZGluZzowfS55dHAtYWQtYnV0dG9uLXZtLS1pY29uLW9ubHkgLnl0cC1hZC1idXR0b24tdm1fX2ljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweDtwYWRkaW5nOjAgNnB4fS55dHAtYWQtZGlzY2xvc3VyZS1iYW5uZXJ7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpO2JvcmRlci1sZWZ0OjRweCBzb2xpZCAjZmJjMDJkO2JvcmRlci1yYWRpdXM6NHB4O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtZmxleDtkaXNwbGF5OmlubGluZS1mbGV4O2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO21heC13aWR0aDozMTJweDtwYWRkaW5nOjhweH0ueXRwLWFkLWRpc2Nsb3N1cmUtYmFubmVyX190ZXh0e2JhY2tncm91bmQ6bm9uZTtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpOy13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXgtZ3JvdzoxO2ZsZXgtZ3JvdzoxO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxZW07cGFkZGluZzo4cHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS55dHAtYWQtZGlzY2xvc3VyZS1iYW5uZXJfX2NoZXZyb257LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjA7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRwLWFkLW5vdGlmaWNhdGlvbi1jb250YWluZXJ7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC40KTtib3R0b206ODZweDtjb2xvcjojZmZmO2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxNnB4O2hlaWdodDo1MnB4O2xpbmUtaGVpZ2h0OjUycHg7bWluLXdpZHRoOjgwcHg7b3BhY2l0eToxO3BhZGRpbmc6MCAyMHB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dGV4dC1hbGlnbjpjZW50ZXI7dmVydGljYWwtYWxpZ246bWlkZGxlO3otaW5kZXg6NDV9Lnl0cC1lbWJlZCAueXRwLWFkLW5vdGlmaWNhdGlvbi1jb250YWluZXJ7Ym90dG9tOjc4cHh9Lnl0cC1hZC1ub3RpZmljYXRpb24tY29udGFpbmVyW2FyaWEtaGlkZGVuPXRydWVdey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO29wYWNpdHk6MH0ueXRwLWJpZy1tb2RlIC55dHAtYWQtbm90aWZpY2F0aW9uLWNvbnRhaW5lcntib3R0b206OTVweH0ueXRwLWhpZGUtY29udHJvbHMgLnl0cC1hZC1ub3RpZmljYXRpb24tY29udGFpbmVye2JvdHRvbToyNXB4fS55dHAtcHJldmlldy1hZHtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6NHB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNik7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjIycHg7Ym90dG9tOjk1cHg7ei1pbmRleDoxMDAwOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC40cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuNHMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtjdXJzb3I6ZGVmYXVsdDtwb2ludGVyLWV2ZW50czphdXRvfS55dHAtcHJldmlldy1hZFthcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtcHJldmlldy1hZF9fdGV4dHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXItc3BhY2luZzouMXB4O3BhZGRpbmc6MCA4cHg7dGV4dC1hbGlnbjpjZW50ZXI7dmVydGljYWwtYWxpZ246bWlkZGxlO3doaXRlLXNwYWNlOnByZTt3aWR0aDphdXRvfS55dHAtcHJldmlldy1hZF9fdGV4dC0tZm9udC0tc21hbGx7Zm9udC1zaXplOjEycHg7aGVpZ2h0OmF1dG87bWluLXdpZHRoOjB9Lnl0cC1wcmV2aWV3LWFkX190ZXh0LS1wYWRkaW5nLS13aWRle3BhZGRpbmc6MCAxNHB4fS55dHAtcHJldmlldy1hZF9faW1hZ2V7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjY1cHg7aGVpZ2h0OjM2cHg7LW8tb2JqZWN0LWZpdDpjb3ZlcjtvYmplY3QtZml0OmNvdmVyfS55dHAtYmlnLW1vZGUgLnl0cC1wcmV2aWV3LWFke3JpZ2h0OjQwcHg7Ym90dG9tOjEwNHB4fS55dHAtc21hbGwtbW9kZSAueXRwLXByZXZpZXctYWR7cmlnaHQ6MTJweDtib3R0b206NzVweH0ueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1wcmV2aWV3LWFke3JpZ2h0OjE2cHg7Ym90dG9tOjM5cHh9Lnl0cC1oaWRlLWNvbnRyb2xzIC55dHAtcHJldmlldy1hZHtib3R0b206MjVweH0ueXRwLWF1dG9oaWRlIC55dHAtYWQtZHVyYXRpb24tcmVtYWluaW5nLWF1dG9oaWRle2Rpc3BsYXk6bm9uZX0ueXRwLWRpc3BsYXktdW5kZXJsYXktdGV4dC1ncmlkLWNhcmRze2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9Lnl0cC1kaXNwbGF5LXVuZGVybGF5LXRleHQtZ3JpZC1jYXJkc19fY29udGVudF9jb250YWluZXJ7aGVpZ2h0OjEwMCU7bWF4LWhlaWdodDoxMDAlOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otanVzdGlmeS1jb250ZW50OmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cGFkZGluZy1sZWZ0OjY0cHg7cGFkZGluZy1yaWdodDo2NHB4O21hcmdpbi1sZWZ0OmNhbGMoNjAlICsgMTZweCl9Lnl0cC1kaXNwbGF5LXVuZGVybGF5LXRleHQtZ3JpZC1jYXJkc19fY29udGVudF9jb250YWluZXJfX2hlYWRlcntkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otanVzdGlmeS1jb250ZW50OnN0YXJ0Oy13ZWJraXQtanVzdGlmeS1jb250ZW50OnN0YXJ0Oy13ZWJraXQtYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OnN0YXJ0Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O3dpZHRoOjEwMCU7bWF4LXdpZHRoOjUwMHB4O21hcmdpbi1ib3R0b206MjRweH0ueXRwLWRpc3BsYXktdW5kZXJsYXktdGV4dC1ncmlkLWNhcmRzX19jb250ZW50X2NvbnRhaW5lcl9faGVhZGVyX19hZF9hdmF0YXJ7cG9pbnRlci1ldmVudHM6YXV0bztjdXJzb3I6cG9pbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDttYXJnaW4tcmlnaHQ6MTZweH0ueXRwLWRpc3BsYXktdW5kZXJsYXktdGV4dC1ncmlkLWNhcmRzX19jb250ZW50X2NvbnRhaW5lcl9faGVhZGVyX19oZWFkbGluZXtjb2xvcjojZmZmO2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MjBweDtmb250LXdlaWdodDo5MDA7bGluZS1oZWlnaHQ6MjRweDtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC1saW5lLWNsYW1wOjE7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9Lnl0cC1kaXNwbGF5LXVuZGVybGF5LXRleHQtZ3JpZC1jYXJkc19fY29udGVudF9jb250YWluZXJfX2FkX2J1dHRvbntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDttYXJnaW4tdG9wOjI0cHg7d2lkdGg6MTAwJTttYXgtd2lkdGg6NTAwcHg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0cC1kaXNwbGF5LXVuZGVybGF5LXRleHQtZ3JpZC1jYXJkc19fY29udGVudF9jb250YWluZXJfX2FkX2dyaWRfY2FyZF9jb2xsZWN0aW9ue3dpZHRoOjEwMCU7bWF4LXdpZHRoOjUwMHB4O292ZXJmbG93OmhpZGRlbiBhdXRvfS55dHAtZGlzcGxheS11bmRlcmxheS10ZXh0LWdyaWQtY2FyZHNfX2NvbnRlbnRfY29udGFpbmVyX19hZF9idXR0b24+YnV0dG9ue3dpZHRoOjEwMCU7bWF4LXdpZHRoOjUwMHB4Oy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dHAtZGlzcGxheS11bmRlcmxheS10ZXh0LWdyaWQtY2FyZHMgLnl0cC1hZC1hdmF0YXItLXNpemUtcmVzcG9uc2l2ZXt3aWR0aDo0OHB4O2hlaWdodDo0OHB4fS55dHAtaW1hZ2UtYmFja2dyb3VuZC0tZ3JhZGllbnQtdmVydGljYWx7aW5zZXQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLDApIDUwJSxyZ2JhKDAsMCwwLC44KSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxsZWZ0IGJvdHRvbSxjb2xvci1zdG9wKDUwJSxyZ2JhKDAsMCwwLDApKSx0byhyZ2JhKDAsMCwwLC44KSkpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDAsMCwwLDApIDUwJSxyZ2JhKDAsMCwwLC44KSk7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KX0ueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZHtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdztwYWRkaW5nOjEycHg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjk1KTtjdXJzb3I6cG9pbnRlcjttYXgtd2lkdGg6NDAwcHg7b3ZlcmZsb3c6aGlkZGVuO3BvaW50ZXItZXZlbnRzOmF1dG87LXdlYmtpdC10cmFuc2l0aW9uOndpZHRoIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIC41cyxtYXgtd2lkdGggLjJzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp3aWR0aCAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSAuNXMsbWF4LXdpZHRoIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2ZmZn0ueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZC0tbGFyZ2V7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNik7bWluLXdpZHRoOjIwMHB4fS55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkLS1sYXJnZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpfS55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkLS1pbmFjdGl2ZXstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjAwJSk7d2lkdGg6MDttYXgtd2lkdGg6MH0ueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9fYXZhdGFyX2FuZF90ZXh0X2NvbnRhaW5lci0tbGFyZ2V7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1hbGlnbi1zZWxmOnN0YXJ0O2FsaWduLXNlbGY6c3RhcnR9Lnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmRfX2FkX2F2YXRhci0tbGFyZ2V7LXdlYmtpdC1hbGlnbi1zZWxmOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcn0ueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9fdGV4dF9jb250YWluZXJ7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BhZGRpbmc6MCAyMHB4IDAgOHB4O21heC13aWR0aDoxOTJweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmRfX2hlYWRsaW5le2Rpc3BsYXk6LXdlYmtpdC1ib3g7Y29sb3I6IzBmMGYwZjtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoyMHB4O2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWw7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtbGluZS1jbGFtcDoyfS55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX19oZWFkbGluZS0tbGFyZ2V7Y29sb3I6I2RkZH0ueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9fZGVzY3JpcHRpb257Y29sb3I6IzYwNjA2MDtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxNnB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9fZGVzY3JpcHRpb24tLWxhcmdle2NvbG9yOiNkZGR9Lnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmQgLnl0cC1hZC1idXR0b24tdm17bWF4LXdpZHRoOjE0MHB4fS55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX19idXR0b24tLWxhcmdle21hcmdpbi10b3A6OHB4O21pbi13aWR0aDoxMDAlOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2NvbG9yOiMwZjBmMGY7YmFja2dyb3VuZC1jb2xvcjojM2VhNmZmfS55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX19idXR0b24tLWxhcmdlOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzY1YjhmZn0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmQsLnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJke29wYWNpdHk6Ljg2O3BhZGRpbmc6OHB4O21pbi1oZWlnaHQ6NDBweDttYXgtd2lkdGg6MTkwcHh9Lnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkLS1sYXJnZSwueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmQtLWxhcmdle21pbi13aWR0aDphdXRvfS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZC0taW5hY3RpdmUsLnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkLS1pbmFjdGl2ZXt3aWR0aDowO21heC13aWR0aDowfS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZCAueXRwLWFkLWJ1dHRvbi12bSwueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmQgLnl0cC1hZC1idXR0b24tdm17ZGlzcGxheTpub25lfS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9faGVhZGxpbmUsLnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX19oZWFkbGluZXtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxNnB4fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9fZGVzY3JpcHRpb24sLnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX19kZXNjcmlwdGlvbntmb250LXNpemU6MTBweDtsaW5lLWhlaWdodDoxNHB4fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9fZGVzY3JpcHRpb24tLWhpZGRlbi0taW4tLXNtYWxsLS1wbGF5ZXIsLnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX19kZXNjcmlwdGlvbi0taGlkZGVuLS1pbi0tc21hbGwtLXBsYXllcntkaXNwbGF5Om5vbmV9Lnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX190ZXh0X2NvbnRhaW5lciwueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmRfX3RleHRfY29udGFpbmVye3BhZGRpbmc6MCA0cHggMCA2cHg7bWF4LXdpZHRoOjE0NnB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkey13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bSxyZ2JhKDAsMCwwLC42KSk7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmRfX2hlYWRsaW5le2NvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10ZXh0LXByaW1hcnksI2ZmZil9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmRfX2Rlc2NyaXB0aW9ue2NvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10ZXh0LXNlY29uZGFyeSxyZ2JhKDI1NSwyNTUsMjU1LC43KSl9Lnl0cC1hZC1wZXJzaXN0ZW50LXByb2dyZXNzLWJhci1jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOi0zcHg7d2lkdGg6MTAwJTtoZWlnaHQ6M3B4O2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMik7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3otaW5kZXg6Mzh9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1wcm9ncmVzcy1iYXIgLnl0cC1hZC1wZXJzaXN0ZW50LXByb2dyZXNzLWJhci1jb250YWluZXIsLnl0cC1hdXRvaGlkZSAueXRwLWFkLXBlcnNpc3RlbnQtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcntvcGFjaXR5OjE7Ym90dG9tOjA7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtYWQtcGxheWVyLW92ZXJsYXktcHJvZ3Jlc3MtYmFyIC55dHAtYWQtcGVyc2lzdGVudC1wcm9ncmVzcy1iYXItY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6IzIyMjtoZWlnaHQ6NHB4fS55dHAtYWQtcGxheWVyLW92ZXJsYXktcHJvZ3Jlc3MtYmFyIC55dHAtYWQtcGVyc2lzdGVudC1wcm9ncmVzcy1iYXItY29udGFpbmVyLS1jbGVhbi1wbGF5ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjIyO2hlaWdodDozcHh9Lnl0cC1hZC1wZXJzaXN0ZW50LXByb2dyZXNzLWJhcntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7Ym90dG9tOjA7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZC1jb2xvcjojZmMwfS55dHAtcGxheWVyLW1pbmltaXplZC55dHAtbWluaXBsYXllci1hbHRlcm5hdGUtdWkgLnl0cC1hZC1wZXJzaXN0ZW50LXByb2dyZXNzLWJhci1jb250YWluZXJ7d2lkdGg6Y2FsYygxMDAlIC0gMjRweCk7bGVmdDoxMnB4O2JvdHRvbToxMnB4fS55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0e3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Ym90dG9tOjA7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVye2JvdHRvbTo2NXB4O2N1cnNvcjpkZWZhdWx0O2xlZnQ6MjJweDtwb2ludGVyLWV2ZW50czphdXRvO3Bvc2l0aW9uOmFic29sdXRlO3RleHQtc2hhZG93OjAgMCA0cHggcmdiYSgwLDAsMCwuNzUpO3otaW5kZXg6ODUwOy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246Ym90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXIgLnl0cC1hZC1kdXJhdGlvbi1yZW1haW5pbmd7bWFyZ2luLWxlZnQ6MH0ueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fcGxheWVyLWNhcmQtY29udGFpbmVye2JvdHRvbTo5NXB4O2xlZnQ6MjJweDtwb2ludGVyLWV2ZW50czphdXRvO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6ODUwO2JvcmRlci1yYWRpdXM6OHB4O292ZXJmbG93OmhpZGRlbjstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX3NraXAtb3ItcHJldmlldy1jb250YWluZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtyaWdodDowO3Bvc2l0aW9uOmFic29sdXRlfS55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1kaXNjbG9zdXJlLWJhbm5lci1jb250YWluZXJ7Ym9yZGVyLXJhZGl1czowO2JvdHRvbTphdXRvO2N1cnNvcjpkZWZhdWx0O2hlaWdodDphdXRvO2xlZnQ6MjJweDtwb2ludGVyLWV2ZW50czphdXRvO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0MnB4O3otaW5kZXg6ODUwfS55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0IC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1kaXNjbG9zdXJlLWJhbm5lci1jb250YWluZXJ7ei1pbmRleDoyN30ueXRwLWJpZy1tb2RlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lcntib3R0b206NzRweDtsZWZ0OjQwcHh9Lnl0cC1iaWctbW9kZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fcGxheWVyLWNhcmQtY29udGFpbmVye2xlZnQ6NDBweDtib3R0b206MTA0cHh9Lnl0cC1iaWctbW9kZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtZGlzY2xvc3VyZS1iYW5uZXItY29udGFpbmVye2xlZnQ6NDBweDt0b3A6NjRweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVye2xlZnQ6MTJweDtib3R0b206NDVweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX3BsYXllci1jYXJkLWNvbnRhaW5lcntsZWZ0OjEycHg7Ym90dG9tOjc1cHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1kaXNjbG9zdXJlLWJhbm5lci1jb250YWluZXJ7bGVmdDoxMnB4O3RvcDoxMnB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lcntib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDE0cHgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAuYWQtc2ltcGxlLWF0dHJpYnV0ZWQtc3RyaW5nLC55dHAtZGVsaGktbW9kZXJuIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAueXRwLWFkLXBvZC1pbmRleCwueXRwLWRlbGhpLW1vZGVybiAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXIgLnl0cC12aXNpdC1hZHZlcnRpc2VyLWxpbmtfX3RleHR7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAueXRwLWFkLWJ1dHRvbnstd2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMnB4ICMwMDApO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMnB4ICMwMDApfS55dHAtZGVsaGktbW9kZXJuIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19wbGF5ZXItY2FyZC1jb250YWluZXJ7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyA1MHB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVye2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgMTRweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19wbGF5ZXItY2FyZC1jb250YWluZXJ7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyA1MHB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVye2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgMTRweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAuYWQtc2ltcGxlLWF0dHJpYnV0ZWQtc3RyaW5nLC55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXIgLnl0cC1hZC1wb2QtaW5kZXgsLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAueXRwLXZpc2l0LWFkdmVydGlzZXItbGlua19fdGV4dHt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAueXRwLWFkLWJ1dHRvbnstd2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMnB4ICMwMDApO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMnB4ICMwMDApfS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fcGxheWVyLWNhcmQtY29udGFpbmVye2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgNTBweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1iaWctbW9kZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXJ7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAxNHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLWJpZy1tb2RlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19wbGF5ZXItY2FyZC1jb250YWluZXJ7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyA1MHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVye2xlZnQ6MTZweDtib3R0b206OXB4fS55dHAtcGxheWVyLW1pbmltaXplZC55dHAtbWVudS1zaG93biAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fcGxheWVyLWNhcmQtY29udGFpbmVye2xlZnQ6MTZweDtib3R0b206MzlweH0ueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWRpc2Nsb3N1cmUtYmFubmVyLWNvbnRhaW5lcntsZWZ0OjE2cHg7dG9wOjE2cHh9Lnl0cC1hdXRvaGlkZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXIsLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWF1dG9oaWRlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciwueXRwLWhpZGUtY29udHJvbHMgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVyLC55dHAtaXYtZHJhd2VyLW9wZW4gLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVye2JvdHRvbToxNXB4Oy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1hdXRvaGlkZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fcGxheWVyLWNhcmQtY29udGFpbmVyLC55dHAtZGVsaGktbW9kZXJuLnl0cC1hdXRvaGlkZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fcGxheWVyLWNhcmQtY29udGFpbmVye2JvdHRvbTo0NXB4Oy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWF1dG9oaWRlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19wbGF5ZXItY2FyZC1jb250YWluZXJ7Ym90dG9tOjNweHZhcigtLXl0LWRlbGhpLXBpbGwtaGVpZ2h0LDQ4cHgpMjRweDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtc21hbGwtbW9kZS55dHAtYXV0b2hpZGUgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVyLC55dHAtc21hbGwtbW9kZS55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXIsLnl0cC1zbWFsbC1tb2RlLnl0cC1pdi1kcmF3ZXItb3BlbiAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXJ7Ym90dG9tOjdweH0ueXRwLXNtYWxsLW1vZGUueXRwLWF1dG9oaWRlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19wbGF5ZXItY2FyZC1jb250YWluZXJ7Ym90dG9tOjM3cHh9Lnl0cC1hZC1hdmF0YXItLXNpemUteHhze3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHh9Lnl0cC1hZC1hdmF0YXItLXNpemUteHN7d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRwLWFkLWF2YXRhci0tc2l6ZS1ze3dpZHRoOjMycHg7aGVpZ2h0OjMycHh9Lnl0cC1hZC1hdmF0YXItLXNpemUtbXt3aWR0aDozNnB4O2hlaWdodDozNnB4fS55dHAtYWQtYXZhdGFyLS1zaXplLWx7d2lkdGg6NTZweDtoZWlnaHQ6NTZweH0ueXRwLWFkLWF2YXRhci0tc2l6ZS14bHt3aWR0aDo3MnB4O2hlaWdodDo3MnB4fS55dHAtYWQtYXZhdGFyLS1jaXJjdWxhcntib3JkZXItcmFkaXVzOjUwJX0ueXRwLWFkLWF2YXRhci0tcm91bmRlZC1jb3JuZXJ7Ym9yZGVyLXJhZGl1czoyMCV9Lnl0cC1hZC1kZXRhaWxzLWxpbmV7ZGlzcGxheTpibG9ja30ueXRwLWFkLWRldGFpbHMtbGluZV9fdGV4dC0tc3R5bGUtc3RhbmRhcmR7Y29sb3I6I2FhYTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MjBweDttYXgtaGVpZ2h0Om5vbmU7cGFkZGluZy1ib3R0b206MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtbGluZS1jbGFtcDoxOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbH0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXR7ei1pbmRleDo2NDtiYWNrZ3JvdW5kOndoaXRlO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlO2JhY2tncm91bmQtc2l6ZTpjb3ZlcjstbW96LWJhY2tncm91bmQtc2l6ZTpjb3Zlcjstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3Zlcn0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXRfX2JhY2tncm91bmQtaW1hZ2UtY29udGFpbmVye3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ei1pbmRleDo2NTtib3JkZXI6bm9uZX0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXQgLnl0cC1pbWFnZS1iYWNrZ3JvdW5kLWltYWdle2JhY2tncm91bmQtc2l6ZTpjb3ZlcjstbW96LWJhY2tncm91bmQtc2l6ZTpjb3Zlcjstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3Zlcjstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JvcmRlcjpub25lO2Rpc3BsYXk6YmxvY2t9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50e3otaW5kZXg6NjU7cG9pbnRlci1ldmVudHM6bm9uZTtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjB9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50X19sb2NrdXB7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7ZGlzcGxheTpibG9jaztsZWZ0OjUwJTtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt0b3A6NTAlO21hcmdpbi1sZWZ0Oi0yMTVweDt3aWR0aDo0MzBweDtwYWRkaW5nOjAgMTZweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50X19sb2NrdXBfX2FkLWF2YXRhci1jb250YWluZXJ7cG9pbnRlci1ldmVudHM6YXV0bztjdXJzb3I6cG9pbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleH0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXRfX2NvbnRlbnRfX2xvY2t1cF9faGVhZGxpbmUtY29udGFpbmVye3BvaW50ZXItZXZlbnRzOmF1dG87Y3Vyc29yOnBvaW50ZXI7d2lkdGg6LXdlYmtpdC1maXQtY29udGVudDt3aWR0aDotbW96LWZpdC1jb250ZW50O3dpZHRoOmZpdC1jb250ZW50O21hcmdpbjowIGF1dG99Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50X19sb2NrdXBfX2hlYWRsaW5le3BhZGRpbmc6MjhweCAwIDEwcHg7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MjhweDtmb250LXdlaWdodDo5MDA7bGluZS1oZWlnaHQ6MzRweDttYXgtaGVpZ2h0Om5vbmU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1saW5lLWNsYW1wOjJ9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50X19sb2NrdXBfX2RldGFpbHMtbGluZS1jb250YWluZXJ7cG9pbnRlci1ldmVudHM6YXV0bztjdXJzb3I6cG9pbnRlcjt3aGl0ZS1zcGFjZTpub3JtYWw7d2lkdGg6LXdlYmtpdC1maXQtY29udGVudDt3aWR0aDotbW96LWZpdC1jb250ZW50O3dpZHRoOmZpdC1jb250ZW50O21hcmdpbjowIGF1dG99Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50X19sb2NrdXBfX2FkLWJ1dHRvbi1jb250YWluZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7cGFkZGluZzo2cHggMDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXRfX2NvbnRlbnRfX2luc3RyZWFtLWluZm8tY29udGFpbmVye2JvdHRvbTo2cHg7Y3Vyc29yOmRlZmF1bHQ7bGVmdDoxOHB4O3BvaW50ZXItZXZlbnRzOmF1dG87cG9zaXRpb246YWJzb2x1dGU7dGV4dC1zaGFkb3c6MCAwIDRweCByZ2JhKDAsMCwwLC43NSk7ei1pbmRleDo4NTA7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtdmlkZW8taW50ZXJzdGl0aWFsLWJ1dHRvbmVkLWNlbnRlcmVkLWxheW91dCAueXRwLWFkLWJhZGdlOmFmdGVye3BhZGRpbmctcmlnaHQ6dW5zZXR9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0IC55dHAtYWQtYmFkZ2V7bWFyZ2luLWxlZnQ6NXB4fS55dHAtdmlkZW8taW50ZXJzdGl0aWFsLWJ1dHRvbmVkLWNlbnRlcmVkLWxheW91dCAueXRwLWFkLWRldGFpbHMtbGluZXtwYWRkaW5nOjZweCAwIDIycHh9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0IC55dHAtYWQtYnV0dG9uLXZtOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0Oi02cHggMDtjdXJzb3I6cG9pbnRlcn0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXRfX3RpbWVkLXBpZS1jb3VudGRvd24tY29udGFpbmVye2JvdHRvbTphdXRvO2xlZnQ6YXV0bzt0b3A6NHB4O3JpZ2h0OjZweDtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6NjV9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0IC55dHAtYWQtYXZhdGFyLS1zaXplLXJlc3BvbnNpdmV7d2lkdGg6NjRweDtoZWlnaHQ6NjRweH0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXQgLnl0cC1hZC1kZXRhaWxzLWxpbmVfX3RleHQtLXN0eWxlLXJlc3BvbnNpdmV7Y29sb3I6I2FhYTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MjBweDttYXgtaGVpZ2h0Om5vbmU7cGFkZGluZy1ib3R0b206MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtbGluZS1jbGFtcDoxOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbH0ueXRwLXNtYWxsLW1vZGUgLnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50X19sb2NrdXB7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7ZGlzcGxheTpibG9jazt0b3A6NTAlO3Bvc2l0aW9uOmFic29sdXRlO21hcmdpbi1sZWZ0OjA7bGVmdDowO3RleHQtYWxpZ246bGVmdDt3aWR0aDoyNDVweDtwYWRkaW5nOjAgMCAwIDE2cHg7LXdlYmtpdC1ib3gtc2l6aW5nOmNvbnRlbnQtYm94O2JveC1zaXppbmc6Y29udGVudC1ib3h9Lnl0cC1zbWFsbC1tb2RlIC55dHAtdmlkZW8taW50ZXJzdGl0aWFsLWJ1dHRvbmVkLWNlbnRlcmVkLWxheW91dF9fY29udGVudF9fbG9ja3VwX19hZC1hdmF0YXItY29udGFpbmVye3BvaW50ZXItZXZlbnRzOmF1dG87Y3Vyc29yOnBvaW50ZXI7bWFyZ2luOjAgYXV0byAwIC02cHg7cGFkZGluZzo2cHg7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6LXdlYmtpdC1tYXgtY29udGVudDt3aWR0aDotbW96LW1heC1jb250ZW50O3dpZHRoOm1heC1jb250ZW50fS55dHAtc21hbGwtbW9kZSAueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXRfX2NvbnRlbnRfX2xvY2t1cF9faGVhZGxpbmUtY29udGFpbmVye3BvaW50ZXItZXZlbnRzOmF1dG87Y3Vyc29yOnBvaW50ZXI7d2lkdGg6LXdlYmtpdC1maXQtY29udGVudDt3aWR0aDotbW96LWZpdC1jb250ZW50O3dpZHRoOmZpdC1jb250ZW50O21hcmdpbjowIGF1dG8gMCAwfS55dHAtc21hbGwtbW9kZSAueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXRfX2NvbnRlbnRfX2xvY2t1cF9faGVhZGxpbmV7cGFkZGluZzoxMHB4IDA7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MjBweDtmb250LXdlaWdodDo5MDA7bGluZS1oZWlnaHQ6MjRweDttYXgtaGVpZ2h0Om5vbmU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1saW5lLWNsYW1wOjF9Lnl0cC1zbWFsbC1tb2RlIC55dHAtdmlkZW8taW50ZXJzdGl0aWFsLWJ1dHRvbmVkLWNlbnRlcmVkLWxheW91dF9fY29udGVudF9fbG9ja3VwX19kZXRhaWxzLWxpbmUtY29udGFpbmVye2Rpc3BsYXk6bm9uZX0ueXRwLXNtYWxsLW1vZGUgLnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0IC55dHAtYWQtYXZhdGFyLS1zaXplLXJlc3BvbnNpdmV7d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLXNraXAtYWR7ei1pbmRleDo4NTB9Lnl0cC1za2lwLWFkLWJ1dHRvbntkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdztib3JkZXI6bm9uZTstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3RleHQtYWxpZ246Y2VudGVyO2hlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6MThweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpOy13ZWJraXQtYm94LXNpemluZzpjb250ZW50LWJveDtib3gtc2l6aW5nOmNvbnRlbnQtYm94O2NvbG9yOiNmZmY7ZGlyZWN0aW9uOmx0cjttaW4td2lkdGg6MDtwYWRkaW5nOjAgNnB4IDAgMTZweDt3aWR0aDphdXRvO3BvaW50ZXItZXZlbnRzOmF1dG87Y3Vyc29yOnBvaW50ZXI7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjIycHg7Ym90dG9tOjk1cHg7ei1pbmRleDoxMDAwOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLXNraXAtYWQtYnV0dG9uW2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1za2lwLWFkLWJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGZyb20ocmdiYSgyNTUsMjU1LDI1NSwuMikpLHRvKHJnYmEoMjU1LDI1NSwyNTUsLjIpKSksLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsbGVmdCB0b3AsbGVmdCBib3R0b20sZnJvbShyZ2IoMTUsMTUsMTUpKSx0byhyZ2IoMTUsMTUsMTUpKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwyNTUsMjU1LC4yKSxyZ2JhKDI1NSwyNTUsMjU1LC4yKSksLXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmdiKDE1LDE1LDE1KSxyZ2IoMTUsMTUsMTUpKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwyNTUsMjU1LC4yKSxyZ2JhKDI1NSwyNTUsMjU1LC4yKSksbGluZWFyLWdyYWRpZW50KHJnYigxNSwxNSwxNSkscmdiKDE1LDE1LDE1KSl9Lnl0cC1za2lwLWFkLWJ1dHRvbjpmb2N1c3tiYWNrZ3JvdW5kOnJnYigxNSwxNSwxNSk7b3V0bGluZTpub25lOy13ZWJraXQtYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZX0ueXRwLXNraXAtYWQtYnV0dG9uOmZvY3VzLXZpc2libGV7YmFja2dyb3VuZDojZmZmOy13ZWJraXQtYm94LXNoYWRvdzowIDAgMCAycHggIzBmMGYwZjtib3gtc2hhZG93OjAgMCAwIDJweCAjMGYwZjBmO2NvbG9yOiMwZjBmMGZ9Lnl0cC1za2lwLWFkLWJ1dHRvbjpmb2N1cy12aXNpYmxlIC55dHAtc2tpcC1hZC1idXR0b25fX2ljb24gc3ZnIHBhdGh7ZmlsbDojMGYwZjBmfS55dHAtc2tpcC1hZC1idXR0b25fX3RleHR7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0Om5vcm1hbDtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0cC1za2lwLWFkLWJ1dHRvbl9faWNvbntoZWlnaHQ6MzZweDt3aWR0aDozNnB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXNraXAtYWQtYnV0dG9ue2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgMTRweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLHJnYmEoMCwwLDAsLjYpKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXNraXAtYWQtYnV0dG9uOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTpibG9jaztsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXNraXAtYWQtYnV0dG9uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJ1dHRvbi1zZWNvbmRhcnkscmdiYSgyNTUsMjU1LDI1NSwuMSkpOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc2tpcC1hZC1idXR0b246YWN0aXZlOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRvbmFsLWhvdmVyLHJnYmEoMjU1LDI1NSwyNTUsLjIpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLnl0cC1za2lwLWFkLWJ1dHRvbntib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDE0cHggKyB2YXIoLS15dHAtZ3JpZC1wZWVrLWhlaWdodCkpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bSxyZ2JhKDAsMCwwLC42KSl9Lnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLnl0cC1za2lwLWFkLWJ1dHRvbiBzdmd7cGFkZGluZzo2cHh9Lnl0cC1iaWctbW9kZSAueXRwLXNraXAtYWQtYnV0dG9ue3JpZ2h0OjQwcHg7Ym90dG9tOjEwNHB4fS55dHAtYmlnLW1vZGUueXRwLWRlbGhpLW1vZGVybiAueXRwLXNraXAtYWQtYnV0dG9ue2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgMTRweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtc2tpcC1hZC1idXR0b257Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyAxNHB4KXZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KX0ueXRwLWJpZy1tb2RlLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtc2tpcC1hZC1idXR0b257Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAxNHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLXNtYWxsLW1vZGUgLnl0cC1za2lwLWFkLWJ1dHRvbntyaWdodDoxMnB4O2JvdHRvbTo3NXB4fS55dHAtcGxheWVyLW1pbmltaXplZC55dHAtbWVudS1zaG93biAueXRwLXNraXAtYWQtYnV0dG9ue3JpZ2h0OjE2cHg7Ym90dG9tOjM5cHh9c3ZnLnl0cC10aW1lZC1waWUtY291bnRkb3due2JhY2tncm91bmQ6bm9uZTtib3JkZXItcmFkaXVzOjUwJTtoZWlnaHQ6MjBweDtvcGFjaXR5Oi40Oy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtOTBkZWcpOy1tcy10cmFuc2Zvcm06cm90YXRlKC05MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtOTBkZWcpO3dpZHRoOjIwcHh9Y2lyY2xlLnl0cC10aW1lZC1waWUtY291bnRkb3duX19iYWNrZ3JvdW5ke3N0cm9rZTpub25lO2ZpbGw6bm9uZX1jaXJjbGUueXRwLXRpbWVkLXBpZS1jb3VudGRvd25fX2lubmVye2ZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTBweDtzdHJva2U6cmdiYSgyNTUsMjU1LDI1NSwuNzUpfWNpcmNsZS55dHAtdGltZWQtcGllLWNvdW50ZG93bl9fb3V0ZXJ7ZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZTpyZ2JhKDI1NSwyNTUsMjU1LC43NSl9Lnl0cC12aXNpdC1hZHZlcnRpc2VyLWxpbmt7Y29sb3I6I2ZmZjtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWZsZXg7ZGlzcGxheTppbmxpbmUtZmxleDttYXJnaW4tbGVmdDoxNnB4O3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtYm94LWFsaWduOmJhc2VsaW5lOy13ZWJraXQtYWxpZ24taXRlbXM6YmFzZWxpbmU7YWxpZ24taXRlbXM6YmFzZWxpbmV9Lnl0cC12aXNpdC1hZHZlcnRpc2VyLWxpbms6YmVmb3Jle2NvbnRlbnQ6IiI7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6LThweH0ueXRwLXZpc2l0LWFkdmVydGlzZXItbGluazpob3ZlciAueXRwLXZpc2l0LWFkdmVydGlzZXItbGlua19fdGV4dHtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9Lnl0cC12aXNpdC1hZHZlcnRpc2VyLWxpbmtfX3RleHR7Y29sb3I6I2ZmZjtjdXJzb3I6cG9pbnRlcjtmb250LWZhbWlseTpZb3VUdWJlIE5vdG8sUm9ib3RvLGFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE0cHg7b3BhY2l0eToxO3RleHQtZGVjb3JhdGlvbjpub25lO3RleHQtc2hhZG93OjAgMCAxNnB4IHJnYmEoMCwwLDAsLjUpO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS55dHAtaXYtdmlkZW8tY29udGVudHtwb3NpdGlvbjphYnNvbHV0ZX0ueXRwLWl2LXZpZGVvLWNvbnRlbnQgLnZpZGVvLWFubm90YXRpb25ze2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyMDt3aWR0aDoxMDAlfS5hbm5vdGF0aW9ue3Bvc2l0aW9uOmFic29sdXRlO2NvbG9yOiMwMDA7cGFkZGluZzo1cHg7dGV4dC1hbGlnbjpsZWZ0O3dvcmQtd3JhcDpicmVhay13b3JkO3otaW5kZXg6MDtjdXJzb3I6cG9pbnRlcjstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnZpZGVvLWxlZ2FjeS1hbm5vdGF0aW9ucyAuYW5ub3RhdGlvbntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMCk7Zm9udC1mYW1pbHk6c2Fucy1zZXJpZjt3aGl0ZS1zcGFjZTpwcmUtd3JhcH0uYW5ub3RhdGlvbi1jbG9zZS1idXR0b257LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtjdXJzb3I6cG9pbnRlcjtoZWlnaHQ6MTZweDtsZWZ0OjA7b3BhY2l0eTouODU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTZweH0uYW5ub3RhdGlvbi1jbG9zZS1idXR0b246aG92ZXJ7b3BhY2l0eToxfS5hbm5vdGF0aW9uLWxpbmstaWNvbnstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb250YWluO2JhY2tncm91bmQtc2l6ZTpjb250YWluO3Bvc2l0aW9uOmFic29sdXRlfS5hbm5vdGF0aW9uLXR5cGUtY3VzdG9te3BhZGRpbmc6MDtjdXJzb3I6ZGVmYXVsdH0uYW5ub3RhdGlvbi10eXBlLWN1c3RvbT5kaXZ7ZmxvYXQ6bGVmdDtwYWRkaW5nOjA7b3ZlcmZsb3c6aGlkZGVufS5pdi1jbGljay10YXJnZXR7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1hZC1vdmVybGF5LW9wZW4gLml2LWJyYW5kaW5nLC55dHAtYWQtb3ZlcmxheS1vcGVuIC5pdi1wcm9tb3tkaXNwbGF5Om5vbmV9Lml2LWJyYW5kaW5ne2JvdHRvbTowO3JpZ2h0OjA7ei1pbmRleDozMDtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7LXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5Oi4zM3M7dHJhbnNpdGlvbi1kZWxheTouMzNzfS55dHAtaXYtZHJhd2VyLW9wZW4gLml2LWJyYW5kaW5ne29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lml2LWJyYW5kaW5nIC5icmFuZGluZy1jb250ZXh0LWNvbnRhaW5lci1vdXRlcntib3R0b206MDtmbG9hdDpsZWZ0O3BhZGRpbmctcmlnaHQ6MTBweDtwb3NpdGlvbjphYnNvbHV0ZX0uaXYtYnJhbmRpbmcgLmJyYW5kaW5nLWNvbnRleHQtY29udGFpbmVyLWlubmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgyOCwyOCwyOCwuOSk7Ym90dG9tOjA7Y29sb3I6I2VlZTttYXgtd2lkdGg6MjQ2cHg7b3BhY2l0eTowO3JpZ2h0OjA7d2hpdGUtc3BhY2U6bm93cmFwO2JvcmRlci1yYWRpdXM6OHB4Oy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0uaXYtYnJhbmRpbmctYWN0aXZlIC5icmFuZGluZy1jb250ZXh0LWNvbnRhaW5lci1pbm5lcntvcGFjaXR5OjE7Ym9yZGVyLXJhZGl1czo4cHg7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lml2LWJyYW5kaW5nIC5icmFuZGluZy1pbWctY29udGFpbmVyIGltZ3tkaXNwbGF5OmJsb2NrO29wYWNpdHk6Ljc7cG9zaXRpb246cmVsYXRpdmV9Lml2LWJyYW5kaW5nIC5icmFuZGluZy1pbWctY29udGFpbmVye2Zsb2F0OnJpZ2h0fS5pdi1icmFuZGluZyBpbWcuaXYtY2xpY2stdGFyZ2V0OmhvdmVye29wYWNpdHk6MX0uaXYtYnJhbmRpbmcgLml2LWJyYW5kaW5nLWNvbnRleHQtbmFtZXttYXgtd2lkdGg6MjE1cHg7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztvdmVyZmxvdzpoaWRkZW47cGFkZGluZzoxMHB4IDEwcHggNXB4fS5pdi1icmFuZGluZyAuaXYtYnJhbmRpbmctY29udGV4dC1zdWJzY3JpYmV7cGFkZGluZzowIDEwcHggMTBweDtmb250LXNpemU6MTFweDtjb2xvcjojYWFhfS5pdi1icmFuZGluZyAuaXYtYnJhbmRpbmctY29udGV4dC1zdWJzY3JpYmUtY2FyZXR7ZGlzcGxheTpub25lfS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtb3ZlcmxheS1ib3R0b20tcmlnaHQgLml2LWJyYW5kaW5ne3Bvc2l0aW9uOnJlbGF0aXZlO2luc2V0OjB9Lml2LXByb21vLC5pdi1wcm9tbyAuaXYtcHJvbW8tYWN0aW9ucywuaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzLC5pdi1wcm9tbyAuaXYtcHJvbW8tY29udGVudHM+YSwuaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzPmRpdiwuaXYtcHJvbW8gLml2LXByb21vLWltZywuaXYtcHJvbW8gLml2LXByb21vLWltZyBpbWd7aGVpZ2h0OjQwcHh9Lml2LXByb21ve2JvdHRvbTo2MXB4O2xlZnQ6MDt6LWluZGV4OjMxO21heC13aWR0aDoxMDAlO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuOCk7Y29sb3I6I2NjYztmb250LXNpemU6MTFweDt3aGl0ZS1zcGFjZTpub3dyYXA7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZW1iZWQgLml2LXByb21ve2JvdHRvbTo1M3B4fS55dHAtYmlnLW1vZGUgLml2LXByb21ve2JvdHRvbTo3MHB4fS5odG1sNS12aWRlby1wbGF5ZXIuYWQtc2hvd2luZyAuaXYtcHJvbW97Ym90dG9tOjg2cHh9Lnl0cC1lbWJlZC5odG1sNS12aWRlby1wbGF5ZXIuYWQtc2hvd2luZyAuaXYtcHJvbW97Ym90dG9tOjc4cHh9Lmh0bWw1LXZpZGVvLXBsYXllci55dHAtYmlnLW1vZGUuYWQtc2hvd2luZyAuaXYtcHJvbW97Ym90dG9tOjk1cHh9Lml2LXByb21vOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuOSl9Lml2LXByb21vIC5pdi1wcm9tby1jb250ZW50cz5hLC5pdi1wcm9tbyAuaXYtcHJvbW8tY29udGVudHM+ZGl2LC5pdi1wcm9tbz5kaXZ7ZGlzcGxheTppbmxpbmUtYmxvY2s7ZmxvYXQ6bm9uZSFpbXBvcnRhbnQ7dmVydGljYWwtYWxpZ246bWlkZGxlOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0uaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzPmF7Y29sb3I6I2NjY30uaXYtcHJvbW8uaXYtcHJvbW8taW5hY3RpdmV7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfS5pdi1wcm9tbyAuaXYtcHJvbW8taW1ne2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZX0uaXYtcHJvbW8gLml2LXByb21vLWltZywuaXYtcHJvbW8gLml2LXByb21vLWltZyBpbWd7ei1pbmRleDoxO3dpZHRoOjQwcHh9Lml2LXByb21vIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tdHh0IHAsLml2LXByb21vIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tdHh0IHN0cm9uZywuaXYtcHJvbW8gLml2LXByb21vLWltZyAuaXYtcHJvbW8tcGxheWxpc3QtbGVuZ3RoLC5pdi1wcm9tbyAuaXYtcHJvbW8taW1nIC5pdi1wcm9tby12aWRlby1kdXJhdGlvbntvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30uaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby1iYWRnZS1saXZle21hcmdpbjo0cHggOHB4IDA7Ym9yZGVyOjFweCBzb2xpZCAjZmZmO2JhY2tncm91bmQtY29sb3I6I2U2MjExNztjb2xvcjojZmZmfS5pdi1wcm9tbyAuaXYtcHJvbW8taW1nIC5pdi1wcm9tby1wbGF5bGlzdC1sZW5ndGgsLml2LXByb21vIC5pdi1wcm9tby1pbWcgLml2LXByb21vLXZpZGVvLWR1cmF0aW9ue3Bvc2l0aW9uOmFic29sdXRlfS5pdi1wcm9tbyAuaXYtcHJvbW8taW1nIC5pdi1wcm9tby1wbGF5bGlzdC1sZW5ndGh7dG9wOjA7cmlnaHQ6MDtib3JkZXItbGVmdDoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMjUpO3dpZHRoOjMwcHg7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KTtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjUwMDt0ZXh0LWFsaWduOmNlbnRlcjtsaW5lLWhlaWdodDo0MHB4fS5pdi1wcm9tbyAuaXYtcHJvbW8taW1nIC5pdi1wcm9tby12aWRlby1kdXJhdGlvbntib3R0b206MnB4O3JpZ2h0OjJweDtwYWRkaW5nOjNweCAycHg7bWF4LXdpZHRoOjMycHg7YmFja2dyb3VuZC1jb2xvcjojMDAwO2NvbG9yOiNmZmY7Zm9udC1zaXplOjEwcHh9Lml2LXByb21vIC5pdi1wcm9tby1jb250ZW50c3twYWRkaW5nLXJpZ2h0OjMxcHg7d2lkdGg6MTAwJTttYXgtd2lkdGg6MzExcHg7LXdlYmtpdC10cmFuc2l0aW9uOm1heC13aWR0aCAuMnMgZWFzZS1vdXQscGFkZGluZy1yaWdodCAuMnMgZWFzZS1vdXQ7dHJhbnNpdGlvbjptYXgtd2lkdGggLjJzIGVhc2Utb3V0LHBhZGRpbmctcmlnaHQgLjJzIGVhc2Utb3V0fS5pdi1wcm9tbyAuaXYtcHJvbW8taW1nKy5pdi1wcm9tby1jb250ZW50c3twYWRkaW5nLWxlZnQ6NDBweDttYXgtd2lkdGg6MzUxcHh9Lml2LXByb21vIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tYnV0dG9uLWNvbnRhaW5lciwuaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHR7ZGlyZWN0aW9uOmx0cjttYXgtd2lkdGg6MTAwJTtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZH0uaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHQgcHttYXJnaW46M3B4IDhweCAtNHB4O2xpbmUtaGVpZ2h0OjE4cHh9Lml2LXByb21vIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tdHh0IHN0cm9uZ3tjb2xvcjojZmZmO2ZvbnQtc2l6ZToxMnB4fS5pdi1wcm9tby10eHQgcCBzcGFuLC5pdi1wcm9tby10eHQgcCBzdHJvbmd7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWF4LXdpZHRoOjI2NHB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5pdi1wcm9tby13aXRoLWJ1dHRvbiAuaXYtcHJvbW8tdHh0IHAgc3BhbiwuaXYtcHJvbW8td2l0aC1idXR0b24gLml2LXByb21vLXR4dCBwIHN0cm9uZ3ttYXgtd2lkdGg6MTg0cHh9Lml2LXByb21vLXR4dCBwOmZpcnN0LWNoaWxkIHNwYW4sLml2LXByb21vLXR4dCBwOmZpcnN0LWNoaWxkIHN0cm9uZ3ttYXJnaW4tYm90dG9tOi02cHh9Lml2LXByb21vIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tdHh0IC5pdi1wcm9tby1saW5re3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmctcmlnaHQ6MjBweDttYXgtd2lkdGg6MjQ0cHg7Y29sb3I6I2ZmZDEwMH0uaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHQgLml2LXByb21vLWxpbms6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtyaWdodDowO29wYWNpdHk6LjU7Y29udGVudDoiIn0uaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHQ6aG92ZXIgLml2LXByb21vLWxpbms6YWZ0ZXJ7b3BhY2l0eToxfS5pdi1wcm9tby1idXR0b24tY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjMxcHh9Lml2LWJ1dHRvbntkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MjhweDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O3BhZGRpbmc6MCAxMHB4O291dGxpbmU6MDtmb250LWZhbWlseTpZb3VUdWJlIE5vdG8sUm9ib3RvLGFyaWFsLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc2l6ZToxMXB4O3RleHQtZGVjb3JhdGlvbjpub25lO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO2xpbmUtaGVpZ2h0Om5vcm1hbDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Y3Vyc29yOnBvaW50ZXI7Km92ZXJmbG93OnZpc2libGU7Ym9yZGVyLXJhZGl1czoycHg7LXdlYmtpdC1ib3gtc2hhZG93OjAgMXB4IDAgcmdiYSgwLDAsMCwuMDUpO2JveC1zaGFkb3c6MCAxcHggMCByZ2JhKDAsMCwwLC4wNSk7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS5pdi1idXR0b246aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Lml2LWJ1dHRvbjpmb2N1cywuaXYtYnV0dG9uOmZvY3VzOmhvdmVyey13ZWJraXQtYm94LXNoYWRvdzowIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC40KTtib3gtc2hhZG93OjAgMCAwIDJweCByZ2JhKDI3LDEyNywyMDQsLjQpfS5uby1mb2N1cy1vdXRsaW5lIC55dC11aXgtYnV0dG9uOmZvY3VzLC5uby1mb2N1cy1vdXRsaW5lIC55dC11aXgtYnV0dG9uOmZvY3VzOmhvdmVyey13ZWJraXQtYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZX0uaXYtYnV0dG9uOjotbW96LWZvY3VzLWlubmVye2JvcmRlcjowO3BhZGRpbmc6MH0uaXYtYnV0dG9uW2Rpc2FibGVkXSwuaXYtYnV0dG9uW2Rpc2FibGVkXTphY3RpdmUsLml2LWJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsLml2LWJ1dHRvbltkaXNhYmxlZF06aG92ZXJ7b3BhY2l0eTouNTtjdXJzb3I6YXV0bzstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmV9Lml2LWJ1dHRvbiwuaXYtYnV0dG9uW2Rpc2FibGVkXSwuaXYtYnV0dG9uW2Rpc2FibGVkXTphY3RpdmUsLml2LWJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsLml2LWJ1dHRvbltkaXNhYmxlZF06aG92ZXJ7Ym9yZGVyLWNvbG9yOiMxNjdhYzY7YmFja2dyb3VuZDojMTY3YWM2O2NvbG9yOiNmZmZ9Lml2LWJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOiMxMjZkYjN9Lml2LWJ1dHRvbjphY3RpdmV7YmFja2dyb3VuZDojMDk1Yjk5Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAwIHJnYmEoMCwwLDAsLjUpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMCByZ2JhKDAsMCwwLC41KX0uaXYtYnV0dG9uIC5pdi1idXR0b24tY29udGVudHtkaXNwbGF5OmlubGluZTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc31hLml2LWJ1dHRvbjphZnRlcntjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtoZWlnaHQ6MTAwJX0uaXYtcHJvbW8tYnV0dG9ue3dpZHRoOjY0cHg7bWFyZ2luOjZweCA4cHh9Lml2LXByb21vIC5pdi1wcm9tby1hY3Rpb25zLC5pdi1wcm9tbyAuaXYtcHJvbW8tYWN0aW9ucyAuaXYtcHJvbW8tY2xvc2UsLml2LXByb21vIC5pdi1wcm9tby1hY3Rpb25zIC5pdi1wcm9tby1leHBhbmR7dG9wOjA7cmlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZX0uaXYtcHJvbW8gLml2LXByb21vLWFjdGlvbnN7d2lkdGg6MzFweH0uaXYtcHJvbW8gLml2LXByb21vLWFjdGlvbnMgLml2LXByb21vLWNsb3NlLC5pdi1wcm9tbyAuaXYtcHJvbW8tYWN0aW9ucyAuaXYtcHJvbW8tZXhwYW5ke2N1cnNvcjpwb2ludGVyOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlLW91dDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2Utb3V0fS5pdi1wcm9tbyAuaXYtcHJvbW8tYWN0aW9ucyAuaXYtcHJvbW8tY2xvc2U6YWZ0ZXIsLml2LXByb21vIC5pdi1wcm9tby1hY3Rpb25zIC5pdi1wcm9tby1leHBhbmQ6YWZ0ZXJ7ZGlzcGxheTpibG9jaztjb250ZW50OiIifS5pdi1wcm9tbyAuaXYtcHJvbW8tYWN0aW9ucyAuaXYtcHJvbW8tY2xvc2V7b3BhY2l0eToxfS5pdi1wcm9tbyAuaXYtcHJvbW8tYWN0aW9ucyAuaXYtcHJvbW8tY2xvc2U6YWZ0ZXJ7bWFyZ2luOjE2cHggMTBweCAxNXB4IDEycHg7b3BhY2l0eTouNX0uaXYtcHJvbW8gLml2LXByb21vLWFjdGlvbnMgLml2LXByb21vLWV4cGFuZDphZnRlcnttYXJnaW46MTZweCAxMnB4IDE1cHh9Lml2LXByb21vLml2LXByb21vLXZpZGVvIC5pdi1wcm9tby1pbWcsLml2LXByb21vLml2LXByb21vLXZpZGVvIC5pdi1wcm9tby1pbWcgaW1ne3dpZHRoOjcxcHh9Lml2LXByb21vLml2LXByb21vLXZpZGVvIC5pdi1wcm9tby1pbWcrLml2LXByb21vLWNvbnRlbnRze3BhZGRpbmctbGVmdDo3MXB4O21heC13aWR0aDozODJweH0uaXYtcHJvbW8uaXYtcHJvbW8td2l0aC1idXR0b24gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHR7cGFkZGluZy1yaWdodDo4MHB4fS5pdi1wcm9tby5pdi1wcm9tby1jb2xsYXBzZWQgLml2LXByb21vLWFjdGlvbnMgLml2LXByb21vLWNsb3NlLC5pdi1wcm9tby5pdi1wcm9tby1jb2xsYXBzZWQgLml2LXByb21vLWFjdGlvbnMgLml2LXByb21vLWV4cGFuZCwuaXYtcHJvbW8uaXYtcHJvbW8tY29sbGFwc2VkIC5pdi1wcm9tby1jb250ZW50c3std2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbjstd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6LjVzO3RyYW5zaXRpb24tZGVsYXk6LjVzfS5pdi1wcm9tby5pdi1wcm9tby1jb2xsYXBzZWQgLml2LXByb21vLWNvbnRlbnRze3BhZGRpbmctcmlnaHQ6MjhweDttYXgtd2lkdGg6MCFpbXBvcnRhbnR9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLWxhcmdlci11aXtsZWZ0OjE2cHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLWxhcmdlci11aSAuaXYtcHJvbW8tY29udGVudHMgLml2LXByb21vLXR4dHtwYWRkaW5nLWxlZnQ6NjBweH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtbGFyZ2VyLXVpIC5pdi1wcm9tby1idXR0b24tY29udGFpbmVye2xpbmUtaGVpZ2h0OjY0cHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLWxhcmdlci11aSwueXRwLWxhcmdlLXdpZHRoLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtbGFyZ2VyLXVpIC5pdi1wcm9tby1jb250ZW50cywueXRwLWxhcmdlLXdpZHRoLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtbGFyZ2VyLXVpIC5pdi1wcm9tby1jb250ZW50cz5hLC55dHAtbGFyZ2Utd2lkdGgtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1sYXJnZXItdWkgLml2LXByb21vLWNvbnRlbnRzPmRpdntoZWlnaHQ6NjRweH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtbGFyZ2VyLXVpIC5pdi1wcm9tby1idXR0b257bWluLXdpZHRoOjExMHB4O2hlaWdodDozNnB4fS55dHAtbGFyZ2Utd2lkdGgtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1sYXJnZXItdWkgLml2LXByb21vLWltZ3t0b3A6NnB4O2xlZnQ6NnB4fS55dHAtbGFyZ2Utd2lkdGgtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1sYXJnZXItdWkgLml2LXByb21vLWltZywueXRwLWxhcmdlLXdpZHRoLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtbGFyZ2VyLXVpIC5pdi1wcm9tby1pbWcgaW1ne2hlaWdodDo1MnB4O3dpZHRoOjUycHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLWxhcmdlci11aSAuaXYtcHJvbW8tY29udGVudHMgLml2LXByb21vLXR4dCBzdHJvbmd7Zm9udC1zaXplOjE2cHg7cGFkZGluZy10b3A6NHB4fS55dHAtbGFyZ2Utd2lkdGgtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1sYXJnZXItdWkgLml2LXByb21vLWJ1dHRvbntmb250LXNpemU6MTVweH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtbGFyZ2VyLXVpIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tdHh0IC5pdi1wcm9tby1saW5re2ZvbnQtc2l6ZToxNHB4O3BhZGRpbmctdG9wOjEycHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLWxhcmdlci11aSAuaXYtcHJvbW8tY29udGVudHMgLml2LXByb21vLXR4dHttaW4td2lkdGg6MjIwcHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLWxhcmdlci11aSAuaXYtcHJvbW8tcm91bmQtZXhwYW5kLWljb257dG9wOjM4cHg7bGVmdDo0MnB4fS55dHAtbGFyZ2Utd2lkdGgtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1sYXJnZXItdWkgLml2LXByb21vLWJ1dHRvbnttYXJnaW46MCAxMnB4IDAgMH0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbnt0ZXh0LWFsaWduOmxlZnQ7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtsZWZ0OjEycHh9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8taW1nKy5pdi1wcm9tby1jb250ZW50c3ttYXgtd2lkdGg6NDAwcHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC45KTtib3JkZXItcmFkaXVzOjJweDtwYWRkaW5nLWxlZnQ6MDtwYWRkaW5nLXJpZ2h0OjA7d2lkdGg6MTAwJTstd2Via2l0LXRyYW5zaXRpb246d2lkdGggLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjVzLG1heC13aWR0aCAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOndpZHRoIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIC41cyxtYXgtd2lkdGggLjJzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24uaXYtcHJvbW8tY29sbGFwc2VkIC5pdi1wcm9tby1pbWcrLml2LXByb21vLWNvbnRlbnRzey13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTouNXM7dHJhbnNpdGlvbi1kZWxheTouNXN9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ246aG92ZXIgLml2LXByb21vLWNvbnRlbnRze2JhY2tncm91bmQtY29sb3I6cmdiKDI1NSwyNTUsMjU1KX0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbi5pdi1wcm9tby1jb2xsYXBzZWQgLml2LXByb21vLWNvbnRlbnRze3BhZGRpbmctcmlnaHQ6MH0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tY29udGVudHMgLml2LXByb21vLXR4dHttYXgtd2lkdGg6MjUwcHg7cGFkZGluZy10b3A6MTBweDtwYWRkaW5nLWxlZnQ6NTJweH0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tY29udGVudHMgLml2LXByb21vLXR4dCBwe2xpbmUtaGVpZ2h0OjE2cHg7bWFyZ2luLXRvcDowfS5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduIC5pdi1wcm9tby1idXR0b24tY29udGFpbmVye2RpcmVjdGlvbjpsdHI7bWF4LXdpZHRoOjE1MHB4O2xpbmUtaGVpZ2h0OjU2cHg7cG9zaXRpb246c3RhdGljfS5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduIC5pdi1wcm9tby1idXR0b257bWF4LXdpZHRoOjE0MHB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3dpZHRoOmluaGVyaXQ7Zm9udC13ZWlnaHQ6NTAwO21hcmdpbjowIDhweCAwIDB9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWFjdGlvbnMsLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHQgLml2LXByb21vLWxpbms6YWZ0ZXJ7ZGlzcGxheTpub25lfS5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduLC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduIC5pdi1wcm9tby1jb250ZW50cywuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tY29udGVudHM+YSwuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tY29udGVudHM+ZGl2e2RpcmVjdGlvbjpsdHI7aGVpZ2h0OjU2cHh9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWltZ3toZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3RvcDo0cHg7bGVmdDo0cHg7b3ZlcmZsb3c6dmlzaWJsZTstd2Via2l0LXRyYW5zZm9ybTpub25lOy1tcy10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWltZyBpbWd7aGVpZ2h0OjQ4cHg7d2lkdGg6NDhweH0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbi5pdi1wcm9tby1jb2xsYXBzZWQgLml2LXByb21vLXJvdW5kLWV4cGFuZC1pY29ue29wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMTVzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjlzO3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjlzfS5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduIC5pdi1wcm9tby1yb3VuZC1leHBhbmQtaWNvbntwb3NpdGlvbjphYnNvbHV0ZTtwYWRkaW5nLWxlZnQ6MDt6LWluZGV4Ojg1MDtoZWlnaHQ6MThweDt3aWR0aDoxOHB4O2JvcmRlci1yYWRpdXM6NTAlO3RvcDozNHB4O2xlZnQ6MzhweDtiYWNrZ3JvdW5kLWNvbG9yOiM0Njg4ZjE7LXdlYmtpdC1ib3gtc2hhZG93OjAgMCAycHggMCByZ2JhKDAsMCwwLC4xMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMjQpO2JveC1zaGFkb3c6MCAwIDJweCAwIHJnYmEoMCwwLDAsLjEyKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4yNCk7b3BhY2l0eTowfS5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduIC5pdi1wcm9tby1yb3VuZC1leHBhbmQtaWNvbjphZnRlcntkaXNwbGF5OmJsb2NrO2NvbnRlbnQ6IiJ9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHQgc3Ryb25ne2ZvbnQtc2l6ZToxNHB4O3BhZGRpbmctdG9wOjJweDtjb2xvcjojMzMzfS5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tdHh0IC5pdi1wcm9tby1saW5re3BhZGRpbmc6OHB4IDIwcHggMCAwO2ZvbnQtc2l6ZToxM3B4O2NvbG9yOiM3Njc2NzZ9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24uaXYtcHJvbW8taW5hY3RpdmUgLml2LXByb21vLWNvbnRlbnRze3dpZHRoOjB9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24uaXYtcHJvbW8taW5hY3RpdmUsLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24uaXYtcHJvbW8taW5hY3RpdmUgLml2LXByb21vLWltZ3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAlKX0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbi5pdi1wcm9tby1pbmFjdGl2ZSAuaXYtcHJvbW8tcm91bmQtZXhwYW5kLWljb257ZGlzcGxheTpub25lfS55dHAtc21hbGwtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiwueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWNvbnRlbnRzLC55dHAtc21hbGwtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tY29udGVudHM+YSwueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWNvbnRlbnRzPmRpdntoZWlnaHQ6NDBweH0ueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWltZywueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWltZyBpbWd7aGVpZ2h0OjQwcHg7d2lkdGg6NDBweH0ueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHR7cGFkZGluZzo0cHggNHB4IDRweCA0MHB4fS55dHAtc21hbGwtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tY29udGVudHMgLml2LXByb21vLXR4dCBzdHJvbmd7cGFkZGluZy10b3A6MDtmb250LXNpemU6MTJweH0ueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHQgLml2LXByb21vLWxpbmt7cGFkZGluZy10b3A6NHB4O2ZvbnQtc2l6ZToxMXB4fS55dHAtc21hbGwtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tcm91bmQtZXhwYW5kLWljb257dG9wOjI2cHg7bGVmdDozMHB4fS55dHAtc21hbGwtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8taW1ne3RvcDowO2xlZnQ6MH0ueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWJ1dHRvbi1jb250YWluZXJ7ZGlzcGxheTpub25lfS55dHAtYXV0b2hpZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24uaXYtcHJvbW8tY29sbGFwc2VkIC5pdi1wcm9tby1pbWd7b3BhY2l0eTouODstd2Via2l0LXRyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSkgLjhzO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSkgLjhzfS5pdi1kcmF3ZXIsLml2LWRyYXdlci1jb250ZW50LC5pdi1kcmF3ZXItaGVhZGVye3Bvc2l0aW9uOmFic29sdXRlfS5pdi1kcmF3ZXJ7dG9wOjA7Ym90dG9tOjA7cmlnaHQ6MDt6LWluZGV4OjMzO3dpZHRoOjE3N3B4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMik7Y29sb3I6I2ZmZjtmb250LXNpemU6MTFweDtsaW5lLWhlaWdodDoxMnB4Oy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMzNzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjMzcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4zM3MgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0uaXYtZHJhd2VyLXNtYWxsLml2LWRyYXdlcnt3aWR0aDoxMzNweH0uaXYtZHJhd2VyLWJpZy5pdi1kcmF3ZXJ7Zm9udC1zaXplOjIwcHg7bGluZS1oZWlnaHQ6MjRweDt3aWR0aDoyOTVweH1bZGlyPWx0cl0gLml2LWRyYXdlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE3N3B4KTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTc3cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDE3N3B4KX1bZGlyPXJ0bF0gLml2LWRyYXdlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xNzdweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xNzdweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTE3N3B4KX0ueXRwLWF1dG9oaWRlLnl0cC1lbWJlZC1vdmVybGF5cy1hdXRvaGlkZSAuaXYtZHJhd2Vye29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hdXRvaGlkZS1hY3RpdmUpLnl0cC1lbWJlZC1vdmVybGF5cy1hdXRvaGlkZSAuaXYtZHJhd2Vye2Rpc3BsYXk6bm9uZX0uaXYtZHJhd2VyLWNvbnRlbnQgKnt0ZXh0LWFsaWduOmxlZnR9Lnl0cC1pdi1kcmF3ZXItb3BlbiAuaXYtZHJhd2Vyey13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMzNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjMzcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4zM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX0uaXYtZHJhd2VyLWhlYWRlcnt0b3A6MDtwYWRkaW5nOjE2cHggMzJweCAwIDE2cHg7d2lkdGg6MTc3cHg7aGVpZ2h0OjQxcHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtZHJhd2VyLWhlYWRlcntwYWRkaW5nOjlweCAyNHB4IDAgMTJweDtoZWlnaHQ6MjhweDt3aWR0aDoxMzNweH0uaXYtZHJhd2VyLWJpZyAuaXYtZHJhd2VyLWhlYWRlcntwYWRkaW5nOjIwcHggNDhweCAwIDMycHg7aGVpZ2h0OjY0cHg7d2lkdGg6Mjk1cHh9Lml2LWRyYXdlci1oZWFkZXItdGV4dHtmb250LXdlaWdodDo1MDA7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30uaHRtbDUtdmlkZW8tcGxheWVyIC5pdi1kcmF3ZXItaGVhZGVyey13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0uaXYtZHJhd2VyLWNvbnRlbnR7dG9wOjQxcHg7Ym90dG9tOjA7Ym9yZGVyLXRvcDoxcHggc29saWQgdHJhbnNwYXJlbnQ7cGFkZGluZzowIDE2cHg7d2lkdGg6MTQ1cHg7b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvO2RpcmVjdGlvbjpsdHI7dGV4dC1hbGlnbjpsZWZ0fS5pdi1kcmF3ZXItc21hbGwgLml2LWRyYXdlci1jb250ZW50e3BhZGRpbmc6MCAxMnB4O3RvcDoyOHB4O3dpZHRoOjEwOXB4fS5pdi1kcmF3ZXItYmlnIC5pdi1kcmF3ZXItY29udGVudHtwYWRkaW5nOjAgMzJweDt0b3A6NjRweDt3aWR0aDoyMzFweH0uaXYtZHJhd2VyLXNjcm9sbGVkIC5pdi1kcmF3ZXItY29udGVudHtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwuNCl9Lml2LWRyYXdlci1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhcntiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3dpZHRoOjE2cHh9Lml2LWRyYXdlci1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntib3JkZXI6NHB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6OHB4O2JhY2tncm91bmQtY2xpcDpjb250ZW50LWJveDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMTAyLDEwMiwxMDIsLjUpfS5pdi1kcmF3ZXItY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ueXRwLWF1dG9oaWRlIC5pdi1kcmF3ZXItY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0uaXYtZHJhd2VyLWNvbnRlbnQ6aG92ZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQtY29sb3I6IzY2NiFpbXBvcnRhbnR9Lml2LWRyYXdlci1jbG9zZS1idXR0b257cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtwYWRkaW5nOjE2cHg7b3BhY2l0eTouNzU7Y3Vyc29yOnBvaW50ZXJ9Lml2LWRyYXdlci1zbWFsbCAuaXYtZHJhd2VyLWNsb3NlLWJ1dHRvbntwYWRkaW5nOjhweH0uaXYtZHJhd2VyLWJpZyAuaXYtZHJhd2VyLWNsb3NlLWJ1dHRvbntwYWRkaW5nOjI0cHh9Lml2LWRyYXdlci1jbG9zZS1idXR0b246YWZ0ZXJ7ZGlzcGxheTpibG9jaztjb250ZW50OiIifS5pdi1kcmF3ZXItY2xvc2UtYnV0dG9uOmhvdmVye29wYWNpdHk6MX0uaXYtY2FyZCwuaXYtY2FyZCBhLml2LWNsaWNrLXRhcmdldCwuaXYtY2FyZCBhLml2LWNsaWNrLXRhcmdldDpmb2N1cywuaXYtY2FyZCBhLml2LWNsaWNrLXRhcmdldDpob3ZlcntkaXNwbGF5OmJsb2NrO2NvbG9yOiM3Njc2NzY7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Lml2LWNhcmR7bWFyZ2luLWJvdHRvbToxNnB4O3dpZHRoOjE0NXB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7cG9zaXRpb246cmVsYXRpdmU7d29yZC13cmFwOmJyZWFrLXdvcmQ7LXdlYmtpdC1ib3gtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLC4yKTtib3gtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLC4yKTstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyLXJhZGl1czo4cHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZHt3aWR0aDoxMDlweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZHt3aWR0aDoyMzFweH0uaXYtY2FyZDpob3ZlciAuaXYtY2FyZC1wcmltYXJ5LWxpbmt7Y29sb3I6IzE2N2FjNiFpbXBvcnRhbnR9Lml2LWNhcmQgaDIsLml2LWNhcmQtYWN0aW9ue2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS53ZWJraXQgLml2LWNhcmQgaDI6YWZ0ZXIsLndlYmtpdCAuaXYtY2FyZC1hY3Rpb246YWZ0ZXJ7Y29udGVudDoi4oCMIjtwb3NpdGlvbjpzdGF0aWM7dmlzaWJpbGl0eTpoaWRkZW59Lml2LWNhcmQgaDJ7bWFyZ2luOjAgMCA4cHg7LXdlYmtpdC1saW5lLWNsYW1wOjY7bWF4LWhlaWdodDo5MHB4O2NvbG9yOiMzMzM7Zm9udC1zaXplOjEzcHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE1cHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZCBoMntmb250LXNpemU6MTFweDtsaW5lLWhlaWdodDoxMnB4O21heC1oZWlnaHQ6NzJweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZCBoMntmb250LXNpemU6MjBweDtsaW5lLWhlaWdodDoyNHB4O21heC1oZWlnaHQ6MTQ0cHh9Lml2LWNhcmQgLml2LWNhcmQtYWN0aW9uLC5pdi1jYXJkIC5pdi1jYXJkLW1ldGEtaW5mbywuaXYtY2FyZCBwe21hcmdpbjotNnB4IDAgMnB4fS5pdi1jYXJkLW1ldGEtaW5mb3tsaXN0LXN0eWxlOm5vbmU7cGFkZGluZzowfS5pdi1jYXJkLWltYWdle3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlMmUyZTI7d2lkdGg6MTQ1cHg7aGVpZ2h0OjE0NXB4O2JhY2tncm91bmQ6I2YxZjFmMSBuby1yZXBlYXQgNTAlOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3Zlcjtjb2xvcjojZmZmfS5pdi1kcmF3ZXItc21hbGwgLml2LWNhcmQtaW1hZ2V7d2lkdGg6MTA5cHg7aGVpZ2h0OjEwOXB4fS5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLWltYWdle3dpZHRoOjIzMXB4O2hlaWdodDoyMzFweH0uaXYtY2FyZC1pbWFnZS10ZXh0e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO3BhZGRpbmc6MjBweCAxMHB4IDhweDt3aWR0aDoxMDAlO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLHRyYW5zcGFyZW50LHJnYmEoMCwwLDAsLjYpKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGNvbG9yLXN0b3AoMCx0cmFuc3BhcmVudCksdG8ocmdiYSgwLDAsMCwuNikpKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgxODBkZWcsdHJhbnNwYXJlbnQgMCxyZ2JhKDAsMCwwLC42KSk7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5pdi1kcmF3ZXItc21hbGwgLml2LWNhcmQtaW1hZ2UtdGV4dHtmb250LXNpemU6MTFweDtsaW5lLWhlaWdodDoxMnB4O3BhZGRpbmc6NnB4IDhweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZC1pbWFnZS10ZXh0e2ZvbnQtc2l6ZToxOHB4O2xpbmUtaGVpZ2h0OjIwcHg7cGFkZGluZzoxMnB4IDE2cHh9Lml2LWNhcmQtaW1hZ2UtdGV4dCAueXQtYmFkZ2V7bWFyZ2luLXJpZ2h0OjVweH0uaXYtY2FyZC1jb250ZW50e3BhZGRpbmc6OHB4IDEwcHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1jb250ZW50e3BhZGRpbmc6NnB4IDhweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZC1jb250ZW50e3BhZGRpbmc6MTJweCAxNnB4fS5pdi1jYXJkLWNvbnRlbnQ+OmZpcnN0LWNoaWxke21hcmdpbi10b3A6MH0uaXYtY2FyZC1jb250ZW50PjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uaXYtY2FyZC1hY3Rpb24sLml2LWNhcmQtbWVzc2FnZXtmb250LXdlaWdodDo1MDB9Lml2LWNhcmQtbWVzc2FnZXttYXJnaW4tYm90dG9tOjhweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTJlMmUyO3BhZGRpbmctYm90dG9tOjhweH0uaXYtY2FyZC1hY3Rpb257LXdlYmtpdC1saW5lLWNsYW1wOjQ7bWF4LWhlaWdodDo1MnB4O3doaXRlLXNwYWNlOm5vd3JhcH0uaXYtZHJhd2VyLXNtYWxsIC5pdi1jYXJkLWFjdGlvbntmb250LXNpemU6MTFweDtsaW5lLWhlaWdodDoxMnB4O21heC1oZWlnaHQ6NDhweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZC1hY3Rpb257Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MjBweDttYXgtaGVpZ2h0OjgwcHh9Lml2LWNhcmQtYWN0aW9uIHNwYW57d2hpdGUtc3BhY2U6bm9ybWFsfS5pdi1jYXJkLWFjdGlvbi1pY29ue3BhZGRpbmc6MCAwIDAgMzBweDttaW4taGVpZ2h0OjE0cHg7YmFja2dyb3VuZC1wb3NpdGlvbjowO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDstd2Via2l0LWJhY2tncm91bmQtc2l6ZToyNHB4IGF1dG87YmFja2dyb3VuZC1zaXplOjI0cHggYXV0b30uaXYtY2FyZC1saW5rLWljb257ZGlzcGxheTppbmxpbmUtYmxvY2t9Lml2LWNhcmQtZXBpc29kZSBoMiwuaXYtY2FyZC1tb3ZpZSBoMiwuaXYtY2FyZC1wbGF5bGlzdCBoMiwuaXYtY2FyZC12aWRlbyBoMnstd2Via2l0LWxpbmUtY2xhbXA6MzttYXgtaGVpZ2h0OjQ1cHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1lcGlzb2RlIGgyLC5pdi1kcmF3ZXItc21hbGwgLml2LWNhcmQtbW92aWUgaDIsLml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1wbGF5bGlzdCBoMiwuaXYtZHJhd2VyLXNtYWxsIC5pdi1jYXJkLXZpZGVvIGgye21heC1oZWlnaHQ6MzZweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZC1lcGlzb2RlIGgyLC5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLW1vdmllIGgyLC5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLXBsYXlsaXN0IGgyLC5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLXZpZGVvIGgye21heC1oZWlnaHQ6NzJweH0uaXYtY2FyZC1jaGFubmVsIGgyey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6MzBweH0uaXYtZHJhd2VyLXNtYWxsIC5pdi1jYXJkLWNoYW5uZWwgaDJ7bWF4LWhlaWdodDoyNHB4fS5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLWNoYW5uZWwgaDJ7bWF4LWhlaWdodDo0OHB4fS5pdi1jYXJkLWVwaXNvZGUgLml2LWNhcmQtaW1hZ2UsLml2LWNhcmQtbW92aWUgLml2LWNhcmQtaW1hZ2UsLml2LWNhcmQtcGxheWxpc3QgLml2LWNhcmQtaW1hZ2UsLml2LWNhcmQtdmlkZW8gLml2LWNhcmQtaW1hZ2V7YmFja2dyb3VuZC1jb2xvcjojMDAwfS5pdi1jYXJkLWVwaXNvZGUgLml2LWNhcmQtaW1hZ2UsLml2LWNhcmQtcGxheWxpc3QgLml2LWNhcmQtaW1hZ2UsLml2LWNhcmQtdmlkZW8gLml2LWNhcmQtaW1hZ2V7aGVpZ2h0OjgycHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1lcGlzb2RlIC5pdi1jYXJkLWltYWdlLC5pdi1kcmF3ZXItc21hbGwgLml2LWNhcmQtcGxheWxpc3QgLml2LWNhcmQtaW1hZ2UsLml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC12aWRlbyAuaXYtY2FyZC1pbWFnZXtoZWlnaHQ6NjFweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZC1lcGlzb2RlIC5pdi1jYXJkLWltYWdlLC5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLXBsYXlsaXN0IC5pdi1jYXJkLWltYWdlLC5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLXZpZGVvIC5pdi1jYXJkLWltYWdle2hlaWdodDoxMjlweH0uaXYtY2FyZC1tb3ZpZSAuaXYtY2FyZC1pbWFnZXtoZWlnaHQ6MjA5cHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1tb3ZpZSAuaXYtY2FyZC1pbWFnZXtoZWlnaHQ6MTU3cHh9Lml2LWRyYXdlci1iaWcgLml2LWNhcmQtbW92aWUgLml2LWNhcmQtaW1hZ2V7aGVpZ2h0OjMzNXB4fS5pdi1jYXJkLXZpZGVvLWR1cmF0aW9ue3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo1cHg7cmlnaHQ6NXB4O3BhZGRpbmc6MnB4IDRweDtiYWNrZ3JvdW5kLWNvbG9yOiMwMDB9Lml2LWNhcmQtcGxheWxpc3QgLml2LWNhcmQtaW1hZ2Utb3ZlcmxheXtkaXNwbGF5OnRhYmxlO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7d2lkdGg6NjNweDtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpO2NvbG9yOiNjZmNmY2Y7Zm9udC1zaXplOjIwcHg7dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xpbmUtaGVpZ2h0OjIxcHh9Lml2LWNhcmQtcGxheWxpc3QtdmlkZW8tY291bnR7ZGlzcGxheTp0YWJsZS1jZWxsO3RleHQtYWxpZ246Y2VudGVyO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uaXYtY2FyZC1wbGF5bGlzdC12aWRlby1jb3VudDphZnRlcntkaXNwbGF5OmJsb2NrO21hcmdpbjphdXRvO29wYWNpdHk6LjU7Y29udGVudDoiIn0uaXYtY2FyZC1wb2xse3Bvc2l0aW9uOnJlbGF0aXZlfS5pdi1jYXJkLXBvbGwgdWx7bWF4LXdpZHRoOjEyNXB4O2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDtwYWRkaW5nOjB9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1wb2xsIHVse21heC13aWR0aDo4OXB4fS5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLXBvbGwgdWx7bWF4LXdpZHRoOjIxMXB4fS5pdi1jYXJkLXBvbGwgZmllbGRzZXR7bWFyZ2luOjA7Ym9yZGVyOjA7cGFkZGluZzowfS5pdi1jYXJkLXBvbGwgbGFiZWx7ZGlzcGxheTpibG9jaztjdXJzb3I6cG9pbnRlcjtwYWRkaW5nLWJvdHRvbTo1cHg7bWluLWhlaWdodDoxNHB4O2JhY2tncm91bmQtcG9zaXRpb246bGVmdCAwIHRvcCA1cHg7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJeE55SWdhR1ZwWjJoMFBTSXhOeUkrUEdOcGNtTnNaU0JqZUQwaU9DNDFJaUJqZVQwaU9DNDFJaUJ5UFNJM0xqWWlJR1pwYkd3OUltNXZibVVpSUhOMGNtOXJaVDBpSXpBd01DSWdjM1J5YjJ0bExXOXdZV05wZEhrOUlpNDFOQ0lnYzNSeWIydGxMWGRwWkhSb1BTSXhMamdpTHo0OEwzTjJaejQ9KTtjb2xvcjpyZ2JhKDAsMCwwLC44Nyk7LXdlYmtpdC10cmFuc2l0aW9uOmNvbG9yIC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246Y29sb3IgLjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1wcm9iYWJseS1rZXlib2FyZC1mb2N1cyAuaXYtY2FyZC1wb2xsIGxhYmVsLml2LWNhcmQtcG9sbC1jaG9pY2UtZm9jdXNlZHstd2Via2l0LWJveC1zaGFkb3c6MCAwIDAgMnB4IHJnYmEoMjcsMTI3LDIwNCwuNCk7Ym94LXNoYWRvdzowIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC40KX0uaXYtY2FyZC1wb2xsLml2LWNhcmQtcG9sbC12b3RlZCBsYWJlbHtjb2xvcjpyZ2JhKDAsMCwwLC41NCl9Lml2LWNhcmQtcG9sbC5pdi1jYXJkLXBvbGwtdm90ZWQgbGFiZWwuaXYtY2FyZC1wb2xsLWNob2ljZS1jaGVja2Vke2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJeE55SWdhR1ZwWjJoMFBTSXhOeUkrUEdOcGNtTnNaU0JqZUQwaU9DNDFJaUJqZVQwaU9DNDFJaUJ5UFNJM0xqWWlJR1pwYkd3OUltNXZibVVpSUhOMGNtOXJaVDBpSXpFMk4yRmpOaUlnYzNSeWIydGxMWGRwWkhSb1BTSXhMamdpTHo0OFkybHlZMnhsSUdONFBTSTRMalVpSUdONVBTSTRMalVpSUhJOUlqUXVNak1pSUdacGJHdzlJaU14TmpkaFl6WWlMejQ4TDNOMlp6ND0pO2NvbG9yOnJnYmEoMCwwLDAsLjg3KX0uaXYtY2FyZC1wb2xsIGlucHV0W3R5cGU9Y2hlY2tib3hde29wYWNpdHk6MDt3aWR0aDoxN3B4O2hlaWdodDoxN3B4O21hcmdpbjo1cHggMCAwO2Zsb2F0OmxlZnR9Lml2LWNhcmQtcG9sbCAuaXYtY2FyZC1wb2xsLWNob2ljZS10ZXh0e2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWxlZnQ6MjVweDtwYWRkaW5nLXRvcDo4cHh9Lml2LWRyYXdlci1iaWcgLml2LWNhcmQtcG9sbCAuaXYtY2FyZC1wb2xsLWNob2ljZS10ZXh0e3BhZGRpbmctdG9wOjJweH0uaXYtY2FyZC1wb2xsIGxpK2xpe21hcmdpbi10b3A6OHB4fS5pdi1jYXJkLXBvbGwgLml2LWNhcmQtcG9sbC1yZXN1bHR7d2lkdGg6MTAwJTtoZWlnaHQ6NHB4O2JhY2tncm91bmQtY29sb3I6I2RmZGZkZjt2aXNpYmlsaXR5OmhpZGRlbn0uaXYtY2FyZC1wb2xsIC5pdi1jYXJkLXBvbGwtcmVzdWx0IC5pdi1jYXJkLXBvbGwtcmVzdWx0LWJhcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JhY2tncm91bmQtY29sb3I6IzE2N2FjNjstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnQ7LW1zLXRyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnQ7dHJhbnNmb3JtLW9yaWdpbjp0b3AgbGVmdDstd2Via2l0LXRyYW5zaXRpb246dHJhbnNmb3JtIC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS5pdi1jYXJkLXBvbGwuaXYtY2FyZC1wb2xsLWV4cGFuZGVkIC5pdi1jYXJkLXBvbGwtcmVzdWx0e3Zpc2liaWxpdHk6dmlzaWJsZX0uaXYtY2FyZC1wb2xsIC5pdi1jYXJkLXBvbGwtY2hvaWNlLXBlcmNlbnR7ZGlzcGxheTpub25lO2Zsb2F0OnJpZ2h0O21hcmdpbi1sZWZ0OjVweH0uaXYtY2FyZC1wb2xsLml2LWNhcmQtcG9sbC1leHBhbmRlZCAuaXYtY2FyZC1wb2xsLWNob2ljZS1wZXJjZW50e2Rpc3BsYXk6YmxvY2t9Lml2LWNhcmQtc2lnbi1pbnt2aXNpYmlsaXR5OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cGFkZGluZzo4cHggMTBweH0uaXYtY2FyZC1zaWduLWluIHB7bWFyZ2luOjAgMCA4cHh9Lml2LWNhcmQtc2lnbi1pbiBhe2NvbG9yOiNmZmZ9Lml2LWNhcmQtdW5hdmFpbGFibGU6aG92ZXIgLml2LWNhcmQtY29udGVudCwuaXYtY2FyZC11bmF2YWlsYWJsZTpob3ZlciAuaXYtY2xpY2stdGFyZ2V0e3Zpc2liaWxpdHk6aGlkZGVufS5pdi1jYXJkLXVuYXZhaWxhYmxlOmhvdmVyIC5pdi1jYXJkLXNpZ24taW57dmlzaWJpbGl0eTp2aXNpYmxlfS5pdi1hZC1pbmZvLWljb24tY29udGFpbmVyLC5pdi1jYXJkLXNwb25zb3JlZHtwb3NpdGlvbjpyZWxhdGl2ZX0uaXYtY2FyZC1zcG9uc29yZWR7bWFyZ2luOjAgMCA4cHg7Y29sb3I6Izk5OX0uaXYtYWQtaW5mby1jb250YWluZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6NnB4fS5pdi1hZC1pbmZvLWljb257ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmU7dG9wOjFweH0uaXYtYWQtaW5mb3tib3R0b206MjFweDtsZWZ0OjA7cmlnaHQ6MDtib3JkZXI6MXB4IHNvbGlkICMwMDA7cGFkZGluZzo3cHg7YmFja2dyb3VuZDojZmZmO2NvbG9yOiMwMDA7Zm9udC1zaXplOjEycHh9Lml2LWFkLWluZm8tY29udGFpbmVyIC5pdi1hZC1pbmZvIGEsLml2LWFkLWluZm8tY29udGFpbmVyIC5pdi1hZC1pbmZvIGE6aG92ZXJ7Y29sb3I6IzE2N2FjNn0uaXYtYWQtaW5mby1jb250YWluZXIgLml2LWFkLWluZm8gYTpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5pdi1hZC1pbmZvLWNhbGxvdXQsLml2LWFkLWluZm8taWNvbi1jb250YWluZXI6YWZ0ZXJ7bGVmdDowO2JvcmRlci1sZWZ0OjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6NXB4IHNvbGlkO3dpZHRoOjA7aGVpZ2h0OjB9Lml2LWFkLWluZm8tY2FsbG91dHtib3R0b206MTZweDtib3JkZXItdG9wLWNvbG9yOiMwMDB9Lml2LWFkLWluZm8taWNvbi1jb250YWluZXI6YWZ0ZXJ7Y29udGVudDoiIjtib3R0b206MTdweDtib3JkZXItdG9wLWNvbG9yOiNmZmZ9Lml2LWFkLWluZm8sLml2LWFkLWluZm8tY2FsbG91dCwuaXYtYWQtaW5mby1pY29uLWNvbnRhaW5lcjphZnRlcnt2aXNpYmlsaXR5OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zaXRpb246dmlzaWJpbGl0eSAwcyAuMXM7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIC4xc30uaXYtYWQtaW5mby1jb250YWluZXI6aG92ZXIgLml2LWFkLWluZm8sLml2LWFkLWluZm8tY29udGFpbmVyOmhvdmVyIC5pdi1hZC1pbmZvLWNhbGxvdXQsLml2LWFkLWluZm8tY29udGFpbmVyOmhvdmVyIC5pdi1hZC1pbmZvLWljb24tY29udGFpbmVyOmFmdGVye3Zpc2liaWxpdHk6dmlzaWJsZTstd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6MHM7dHJhbnNpdGlvbi1kZWxheTowc30uaXYtY2FyZC1wcm9kdWN0LWxpc3RpbmcgaDJ7LXdlYmtpdC1saW5lLWNsYW1wOjM7bWF4LWhlaWdodDo0NXB4O2NvbG9yOiM2NjZ9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1wcm9kdWN0LWxpc3RpbmcgaDJ7bWF4LWhlaWdodDozNnB4fS5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLXByb2R1Y3QtbGlzdGluZyBoMnttYXgtaGVpZ2h0OjcycHh9Lml2LWNhcmQtb2ZmZXItcHJpY2V7bWFyZ2luLWJvdHRvbToycHg7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0OjE1cHg7Y29sb3I6IzMzM30uaXYtY2FyZC1vZmZlci1tZXJjaGFudHtjb2xvcjojMDk3YTQxfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lcnt3aWR0aDozNjBweDtoZWlnaHQ6Y2FsYygxMDAlIC0gMzlweCk7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luOjAgYXV0bzt6LWluZGV4OjM3fS5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlKSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5e3dpZHRoOjEwMCV9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tb3ZlcmxheXstLXcydy1zdGFydC1iYWNrZ3JvdW5kLWNvbG9yOiMwMDA7LS13MnctZW5kLWJhY2tncm91bmQtY29sb3I6IzAwMDtoZWlnaHQ6MTAwJX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXJ7d2lkdGg6MTAwJX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWxpbmstY29udGFpbmVye21hcmdpbi10b3A6MTBweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtZmxleDoxOy13ZWJraXQtZmxleC1ncm93OjE7ZmxleC1ncm93OjF9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtaGVhZGVye2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjcpO2ZvbnQtc2l6ZToxNXB4O2xpbmUtaGVpZ2h0OjI0cHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtaGVhZGVyLWNvdW50ZG93bi1udW1iZXJ7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1hbHRlcm5hdGl2ZS1oZWFkZXItb25seSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1oZWFkZXJ7ZGlzcGxheTpub25lfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWFsdGVybmF0aXZlLWhlYWRlcntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC43KTtmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDoxOHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LW5vLWFsdGVybmF0aXZlLWhlYWRlciAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1hbHRlcm5hdGl2ZS1oZWFkZXJ7ZGlzcGxheTpub25lfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWFsdGVybmF0aXZlLWhlYWRlci1vbmx5IC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWFsdGVybmF0aXZlLWhlYWRlcntmb250LXNpemU6MTVweDtsaW5lLWhlaWdodDoyNHB4O21hcmdpbi10b3A6MH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC10aHVtYm5haWwsLnl0cC1hdXRvbmF2LXRodW1ibmFpbC1zbWFsbHtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1zaXplOmNvdmVyO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlcjoxcHggc29saWQgIzRjNGM0Yzstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdGh1bWJuYWlse3dpZHRoOjM2MHB4O2hlaWdodDoyMDJweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdGh1bWJuYWlsOmhvdmVyLC55dHAtYXV0b25hdi10aHVtYm5haWwtc21hbGw6aG92ZXJ7Ym9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjgpOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0ueXRwLWF1dG9uYXYtbGl2ZS1zdGFtcCwueXRwLWF1dG9uYXYtdGltZXN0YW1wLC55dHAtYXV0b25hdi11cGNvbWluZy1zdGFtcHtib3R0b206NHB4O3JpZ2h0OjRweDtwYWRkaW5nOjAgNHB4O2JvcmRlci1yYWRpdXM6MnB4O2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjE2cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC44KTtjb2xvcjojZmZmO3Bvc2l0aW9uOmFic29sdXRlO2xldHRlci1zcGFjaW5nOi41cHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWF1dG9uYXYtbGlzdC1vdmVybGF5e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbG9hdDpyaWdodDt3aWR0aDo0MCU7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC44KX0ueXRwLWF1dG9uYXYtbWl4LXRleHR7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE1cHg7bGluZS1oZWlnaHQ6MThweDtmb250LXdlaWdodDo1MDA7bWFyZ2luLXRvcDozMCV9Lnl0cC1hdXRvbmF2LW1peC1pY29ue3dpZHRoOjQyJTtoZWlnaHQ6MzAlO2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIaHRiRzV6T25oc2FXNXJQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUwzaHNhVzVySWlCMmFXVjNRbTk0UFNJd0lEQWdNellnTXpZaVBqeDFjMlVnZUd4cGJtczZhSEpsWmowaUkzbDBjQzF6ZG1jdGJXbDRJaUJ6ZEhKdmEyVTlJaU13TURBaUlITjBjbTlyWlMxdmNHRmphWFI1UFNJdU1UVWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQanh3WVhSb0lHbGtQU0o1ZEhBdGMzWm5MVzFwZUNJZ1ptbHNiRDBpSTJabVppSWdaRDBpVFRJMUxqWTFJREU0WXkwdU1ESWdNaTR6TVMwdU9EY2dOQzQwTVMweUxqSTFJRFl1TURac0xqa3VPVFJqTVM0Mk9TMHhMamdnTWk0M0xUUXVNamNnTWk0M0xUZHpMVEV1TURFdE5TNHlNUzB5TGpjdE4yd3RMamt1T1ROQk9TNDFOQ0E1TGpVMElEQWdNQ0F4SURJMUxqWTFJREU0YlMweE5TNHpJREJqTGpBeExUSXVNekl1T0RZdE5DNDBNaUF5TGpJMUxUWXVNRGRzTFM0NUxTNDVNME14TUNBeE1pNDNPU0E1SURFMUxqSTNJRGtnTVRoek1TQTFMaklnTWk0M0lEZHNMamt0TGprMFl5MHhMak01TFRFdU5qVXRNaTR5TkMwekxqYzFMVEl1TWpVdE5pNHdObTB5TGpjZ01HTXRMakEwTFRFdU56TXVORGt0TXk0d09TQXhMak0xTFRRdU1td3RMamt0TGprMFl5MHhMakV6SURFdU1qWXRNUzQ0SURJdU9Ua3RNUzQ0SURVdU1UUWdNQ0F4TGpZM0xqWTNJRE11TkNBeExqZ2dOQzQyTm13dU9TMHVPVE5qTFM0NE5pMHhMakV5TFRFdU16a3RNaTQwTnkweExqTTFMVE11TnpOdE9TMDFMakUwTFM0NUxqazBZeTQ0TlNBeExqRXhJREV1TXpnZ01pNDBOeUF4TGpNMUlEUXVNaTR3TXlBeExqSTJMUzQxSURJdU5qRXRNUzR6TlNBekxqY3piQzQ1TGprell6RXVNVEl0TVM0eU5pQXhMamd0TWk0NU9TQXhMamd0TkM0Mk5pQXdMVEl1TVRVdExqWTRMVE11T0RndE1TNDRMVFV1TVRSdExUVXVOVFVnTWk0NElETXVOaUF4TGpnM0xUTXVOaUF5TGpNemVpSXZQand2YzNablBnPT0pOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3ZlcjttYXJnaW46MCBhdXRvfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdmlkZW8taW5mb3ttYXJnaW4tdG9wOjEycHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1wcmVtaXVtLWJhZGdle21hcmdpbi1ib3R0b206NnB4O21hcmdpbi1sZWZ0Oi0ycHg7d2lkdGg6NzRweDtoZWlnaHQ6MTZweDtiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSTNNQ0lnYUdWcFoyaDBQU0l4TmlJZ1ptbHNiRDBpYm05dVpTSStQSEpsWTNRZ2QybGtkR2c5SWpjd0lpQm9aV2xuYUhROUlqRTJJaUJtYVd4c1BTSWpabVptSWlCdmNHRmphWFI1UFNJdU1TSWdjbmc5SWpJaUx6NDhjR0YwYUNCbWFXeHNQU0lqWVdGaElpQmtQU0pOTWpBdU16VWdPQzQ0TTFZeE1tZ3RNUzQwT0ZZekxqUTNhRE11TWpaakxqazFJREFnTVM0M01TNHlOU0F5TGpJM0xqYzBMalUyTGpVdU9EUWdNUzR4Tmk0NE5DQXhMamszSURBZ0xqZzBMUzR5TnlBeExqUTVMUzQ0TWlBeExqazFMUzQxTlM0ME55MHhMak15TGpjdE1pNHpMamQ2YlRBdE1TNHhPV2d4TGpjNFl5NDFNeUF3SUM0NU15MHVNVElnTVM0eUxTNHpOeTR5T1MwdU1qVXVOREl0TGpZdU5ESXRNUzR3T0NBd0xTNDBOaTB1TVRRdExqZ3lMUzQwTWkweExqRmhNUzQyTWlBeExqWXlJREFnTUNBd0xURXVNVFl0TGpRemFDMHhMamd5ZW0wNUxqTTNMUzQyT0dFekxqVWdNeTQxSURBZ01DQXdMUzQxT0MwdU1EVmpMUzQyTlNBd0xURXVNRGt1TWpVdE1TNHpNUzQzTlZZeE1rZ3lOaTQwVmpVdU5qWm9NUzR6Tm13dU1EUXVOMkV4TGpZZ01TNDJJREFnTUNBeElERXVORE10TGpneVl5NHlJREFnTGpNM0xqQXpMalV1TURoMk1TNHpOSHB0TXk0MU9DQTFMakUyWXkwdU9TQXdMVEV1TmpRdExqSTVMVEl1TWkwdU9EVmhNeTR4SURNdU1TQXdJREFnTVMwdU9EUXRNaTR5T0hZdExqRTNZekF0TGpZekxqRXlMVEV1TWk0ek55MHhMamRoTWk0M01pQXlMamN5SURBZ01DQXhJREl1TlMweExqVTRZeTQ0TnlBd0lERXVOVE11TWpnZ01pQXVPRE11TkRndU5UVXVOekVnTVM0ek15NDNNU0F5TGpNMGRpNDFOMGd6TVM0M1l5NHdOQzQxTWk0eU1pNDVOQzQxTWlBeExqSTBjeTQzTGpRMklERXVNVFl1TkRaakxqWTFJREFnTVM0eE9DMHVNallnTVM0MkxTNDNPV3d1TnpZdU56TmpMUzR5TlM0ek9DMHVOaTQyT0MweExqQXlMamc1TFM0ME1pNHlMUzQ1TGpNdE1TNDBNaTR6ZW0wdExqRTNMVFV1TkROakxTNDBJREF0TGpjdU1UTXRMamsxTGpRdExqSTBMakk0TFM0MExqWTJMUzQwTmlBeExqRTFhREl1TnpKMkxTNHhZVEV1TnpJZ01TNDNNaUF3SURBZ01DMHVNemt0TVM0d09TQXhMaklnTVM0eUlEQWdNQ0F3TFM0NU1pMHVNelp0TlM0eE5pMHhMakF6TGpBMExqWTJZVEl1TWpnZ01pNHlPQ0F3SURBZ01TQXhMamd6TFM0M09HTXVPRFVnTUNBeExqUXpMak16SURFdU56UXVPVGd1TkRZdExqWTFJREV1TVRFdExqazRJREV1T1RVdExqazRMamNnTUNBeExqSXhMaklnTVM0MU5TNDFPQzR6TlM0ek9TNDFNaTQ1Tmk0MU15QXhMamN4VmpFeWFDMHhMalF5VmpjdU9EZGpNQzB1TkMwdU1Ea3RMamN0TGpJM0xTNDRPQzB1TVRjdExqRTVMUzQwTmkwdU1qZ3RMamczTFM0eU9DMHVNeklnTUMwdU5Ua3VNRGt0TGpndU1qWXRMakl1TVRjdExqTTBMalF0TGpReUxqWTRWakV5YUMweExqUXlWamN1T0ROakxTNHdNaTB1TnpVdExqUXRNUzR4TWkweExqRTBMVEV1TVRJdExqVTNJREF0TGprNExqSXpMVEV1TWpJdU4xWXhNbWd0TVM0ME1sWTFMalkyZWswME9DNDVNU0F4TW1ndE1TNDBNMVkxTGpZMmFERXVORE42VFRRM0xqUWdOQzR3TVdNd0xTNHlNaTR3TmkwdU5DNHlMUzQxTkM0eE5DMHVNVFV1TXpRdExqSXlMall0TGpJeWN5NDBOaTR3Tnk0MkxqSXlZeTR4TkM0eE5DNHlMak15TGpJdU5UUnpMUzR3Tmk0MExTNHlMalUwTFM0ek5DNHlNUzB1Tmk0eU1TMHVORFl0TGpBM0xTNDJMUzR5WVM0M05TNDNOU0F3SURBZ01TMHVNaTB1TlRWdE5pNDVJRGN1TXpkaE1pNHlJREl1TWlBd0lEQWdNUzB4TGpjNExqYzBjUzB4TGpBeUlEQXRNUzQxTmkwdU5tTXRMak0xTFM0MExTNDFNeTB4TFM0MU15MHhMamMxVmpVdU5qWm9NUzQwTTNZMExqQTVZekFnTGpndU16TWdNUzR5SURFZ01TNHlMalk1SURBZ01TNHhOaTB1TWpRZ01TNDBMUzQzTkZZMUxqWTJhREV1TkRKV01USm9MVEV1TXpSNmJUUXVNVGN0TlM0M01pNHdOQzQyTm1FeUxqSTRJREl1TWpnZ01DQXdJREVnTVM0NE15MHVOemhqTGpnMUlEQWdNUzQwTXk0ek15QXhMamMwTGprNExqUTJMUzQyTlNBeExqRXhMUzQ1T0NBeExqazFMUzQ1T0M0M0lEQWdNUzR5TVM0eUlERXVOVFV1TlRndU16VXVNemt1TlRJdU9UWXVOVE1nTVM0M01WWXhNa2cyTkM0M1ZqY3VPRGRqTUMwdU5DMHVNRGt0TGpjdExqSTNMUzQ0T0MwdU1UY3RMakU1TFM0ME5pMHVNamd0TGpnM0xTNHlPQzB1TXpJZ01DMHVOVGt1TURrdExqZ3VNall0TGpJdU1UY3RMak0wTGpRdExqUXlMalk0VmpFeWFDMHhMalF5VmpjdU9ETmpMUzR3TWkwdU56VXRMalF0TVM0eE1pMHhMakUwTFRFdU1USXRMalUzSURBdExqazRMakl6TFRFdU1qSXVOMVl4TW1ndE1TNDBNbFkxTGpZMmFERXVNelI2SWk4K1BIQmhkR2dnWm1sc2JEMGljbVZrSWlCa1BTSk5NU0F5WVRFZ01TQXdJREFnTVNBeExURm9NVE4yTVRSSU1tRXhJREVnTUNBd0lERXRNUzB4ZWlJdlBqeHdZWFJvSUdacGJHdzlJaU5tWm1ZaUlHUTlJazAyTGpVeUlEbDJNMGcwTGpjMlZqTXVORGRJT0M0eFl5NDJOQ0F3SURFdU1pNHhNaUF4TGpZNUxqTTFjeTQ0Tmk0MU55QXhMakV5SURFZ0xqUXVPVEl1TkNBeExqUTNZekFnTGpnMExTNHpJREV1TlMwdU9EY2dNUzQ1T0hFdExqZzFOUzQzTWkweUxqTTNMamN5U0RZdU5USjZiVEF0TVM0ME0yZ3hMalUzWXk0ME5pQXdJQzQ0TWkwdU1TQXhMakEyTFM0ek15NHlOUzB1TWpJdU16Y3RMalV6TGpNM0xTNDVOSE10TGpFeUxTNDNOUzB1TXpjdE1XTXRMakkxTFM0eU55MHVOVGt0TGpRdE1TNHdNaTB1TkVnMkxqVXllaUl2UGp3dmMzWm5QZz09KTstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXJ9LmF1dG9uYXYtZW5kc2NyZWVue2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTstd2Via2l0LWp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC5hdXRvbmF2LWVuZHNjcmVlbnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHAtc3VnZ2VzdGlvbnMtY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWZsb3c6cm93IHdyYXA7ZmxleC1mbG93OnJvdyB3cmFwfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXRpdGxle2NvbG9yOiNmZmY7ZGlzcGxheTotd2Via2l0LWJveDtmb250LXNpemU6MThweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MjRweDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1saW5lLWNsYW1wOjI7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfS55dHAtYXV0b25hdi1hdXRob3ItYW5kLXZpZXcsLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtYXV0aG9yLC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRle21hcmdpbi10b3A6NHB4O2NvbG9yOiNhYWE7ZGlzcGxheTotd2Via2l0LWJveDtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoyMXB4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6MTtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1idXR0b24tY29udGFpbmVye3dpZHRoOjEwMCU7bWFyZ2luLXRvcDoxMnB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWJ1dHRvbnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOiNmZmY7Ym9yZGVyLXJhZGl1czoycHg7ZGlzcGxheTppbmxpbmUtZ3JpZDtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7d2lkdGg6MTc2cHg7aGVpZ2h0OjM2cHg7bGluZS1oZWlnaHQ6MzRweDt0ZXh0LWFsaWduOmNlbnRlcjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyOjB9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtYnV0dG9uLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtYnV0dG9uLXJvdW5kZWR7Ym9yZGVyLXJhZGl1czoxOHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWNhbmNlbC1idXR0b257YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC4xKTtmbG9hdDpsZWZ0fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXBsYXktYnV0dG9ue2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMyk7ZmxvYXQ6cmlnaHR9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVyOm5vdCgueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWlzLXByZW1pdW0pIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tcHJlbWl1bS1iYWRnZXtkaXNwbGF5Om5vbmV9LmNvdW50ZG93bi1ydW5uaW5nIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOjB9LmNvdW50ZG93bi1ydW5uaW5nIC55dHAtbWluaXBsYXllci1yZXBsYXktYnV0dG9uLC5jb3VudGRvd24tcnVubmluZyAueXRwLXByZXZpZXd7ZGlzcGxheTpub25lfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtc21hbGwtbW9kZSAueXRwLXN1Z2dlc3Rpb24tcGFuZWx7bWFyZ2luOjQwcHggYXV0byBhdXRvIDIwcHg7d2lkdGg6MzYwcHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLW92ZXJsYXl7bWFyZ2luOjQwcHggMjBweCBhdXRvIGF1dG99Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi10aHVtYm5haWwtc21hbGx7d2lkdGg6MzYwcHg7aGVpZ2h0OjIwMnB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtdGl0bGUtY2FyZHttYXJnaW4tdG9wOjEycHg7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MjRweH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLXNtYWxsLW1vZGUgLnl0cC1hdXRvbmF2LWF1dGhvci1jYXJkLC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtdmlldy1hbmQtZGF0ZS1jYXJke21hcmdpbi10b3A6NHB4O2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjIxcHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRlLWNhcmR7bWFyZ2luLXRvcDowfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtc3VnZ2VzdGlvbi1jYXJke3dpZHRoOjM2MHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC10aHVtYm5haWx7d2lkdGg6MzYwcHg7aGVpZ2h0OjIwMnB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtbWl4LXRleHR7Zm9udC1zaXplOjIyLjVweDtsaW5lLWhlaWdodDoyN3B4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tc21hbGwtbW9kZS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lcnt3aWR0aDozNzRweH0uY291bnRkb3duLXJ1bm5pbmcgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tbGluay1jb250YWluZXIsLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1saW5rLWNvbnRhaW5lcnttYXJnaW4tdG9wOjEzcHg7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtcGFjazpqdXN0aWZ5Oy13ZWJraXQtanVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LmNvdW50ZG93bi1ydW5uaW5nIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC10aHVtYm5haWwsLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdGh1bWJuYWlse3dpZHRoOjE4M3B4O2hlaWdodDoxMDRweDtib3JkZXItcmFkaXVzOjhweH0uY291bnRkb3duLXJ1bm5pbmcgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWhlYWRlciwuY291bnRkb3duLXJ1bm5pbmcgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXRpdGxlLC55dHAtYXV0b25hdi1jYW5jZWxsZWQtbWluaS1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWhlYWRlciwueXRwLWF1dG9uYXYtY2FuY2VsbGVkLW1pbmktbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC10aXRsZXtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoxOHB4O2ZvbnQtd2VpZ2h0OjUwMH0uY291bnRkb3duLXJ1bm5pbmcgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdmlkZW8taW5mbywueXRwLWF1dG9uYXYtY2FuY2VsbGVkLW1pbmktbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXZpZGVvLWluZm97bWFyZ2luLXRvcDowO3dpZHRoOjE4M3B4fS5jb3VudGRvd24tcnVubmluZyAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXNtYWxsLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1idXR0b24tY29udGFpbmVyLC55dHAtYXV0b25hdi1jYW5jZWxsZWQtbWluaS1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tYnV0dG9uLWNvbnRhaW5lcnttYXJnaW4tdG9wOjEzcHh9LmNvdW50ZG93bi1ydW5uaW5nIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1idXR0b24sLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtYnV0dG9ue3dpZHRoOjE4M3B4O2hlaWdodDozNHB4fS55dHAtYmlnLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVye2hlaWdodDpjYWxjKDEwMCUgLSA1OC41cHgpfS55dHAtYmlnLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1saW5rLWNvbnRhaW5lcnttYXJnaW4tdG9wOjE1cHh9Lnl0cC1iaWctbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1oZWFkZXJ7Zm9udC1zaXplOjIyLjVweDtsaW5lLWhlaWdodDozNnB4fS55dHAtYmlnLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtYWx0ZXJuYXRpdmUtaGVhZGVye2ZvbnQtc2l6ZToxOS41cHg7bGluZS1oZWlnaHQ6MjdweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWFsdGVybmF0aXZlLWhlYWRlci1vbmx5IC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWFsdGVybmF0aXZlLWhlYWRlcntmb250LXNpemU6MjIuNXB4O2xpbmUtaGVpZ2h0OjM2cHh9Lnl0cC1iaWctbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC10aHVtYm5haWx7d2lkdGg6NTQwcHg7aGVpZ2h0OjMwM3B4fS55dHAtYmlnLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1wcmVtaXVtLWJhZGdle21hcmdpbi1ib3R0b206OXB4O21hcmdpbi1sZWZ0Oi0zcHg7d2lkdGg6MTExcHg7aGVpZ2h0OjI0cHh9Lnl0cC1iaWctbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXZpZGVvLWluZm97bWFyZ2luLXRvcDoxOHB4fS55dHAtYmlnLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdGl0bGV7Zm9udC1zaXplOjI3cHg7bGluZS1oZWlnaHQ6MzZweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWF1dGhvciwueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRle21hcmdpbi10b3A6NnB4O2ZvbnQtc2l6ZToyMXB4O2xpbmUtaGVpZ2h0OjMxLjVweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRle21hcmdpbi10b3A6MH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tYnV0dG9uLWNvbnRhaW5lcnttYXJnaW4tdG9wOjE4cHh9Lnl0cC1iaWctbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1idXR0b257Zm9udC1zaXplOjIxcHg7d2lkdGg6MjY0cHg7aGVpZ2h0OjU0cHg7bGluZS1oZWlnaHQ6NTJweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWJ1dHRvbi5tb2Rlcm4tYnV0dG9uc3tib3JkZXItcmFkaXVzOjI3cHh9Lnl0cC1iaWctbW9kZSAueXRwLWF1dG9uYXYtbGl2ZS1zdGFtcCwueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi10aW1lc3RhbXAsLnl0cC1iaWctbW9kZSAueXRwLWF1dG9uYXYtdXBjb21pbmctc3RhbXB7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MjRweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lcnt3aWR0aDo1NDBweH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5e21hcmdpbjphdXRvO21hcmdpbi1yaWdodDozMHB4O2hlaWdodDo0NDRweH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5IC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lcnstd2Via2l0LWJveC1wYWNrOnN0YXJ0Oy13ZWJraXQtanVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1zdWdnZXN0aW9uLXBhbmVse21hcmdpbjphdXRvO21hcmdpbi1sZWZ0OjMwcHg7d2lkdGg6NDMycHg7aGVpZ2h0OjQ0NHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtc3VnZ2VzdGlvbi1jYXJkLXdpdGgtbWFyZ2lue21hcmdpbi1sZWZ0OjEycHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LXRodW1ibmFpbC1zbWFsbHttYXJnaW4tdG9wOjA7d2lkdGg6MjEwcHg7aGVpZ2h0OjExOHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1zdWdnZXN0aW9uLWNhcmR7bWFyZ2luLXRvcDoxMHB4O3dpZHRoOjIxMHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1zdWdnZXN0aW9uLWNhcmQ6bnRoLWxhc3QtY2hpbGQoLW4rMil7bWFyZ2luLXRvcDoyMHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi10aXRsZS1jYXJke21hcmdpbi10b3A6MTBweDtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoxNnB4O2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtYXV0aG9yLWNhcmR7bWFyZ2luLXRvcDo0cHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWF1dGhvci1jYXJkLC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRlLWNhcmR7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MThweH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtdmlldy1hbmQtZGF0ZSwueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtdmlldy1hbmQtZGF0ZS1jYXJke21hcmdpbi10b3A6MH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLXNtYWxsLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1tb3JlLXZpZGVvc3t2aXNpYmlsaXR5OmhpZGRlbn0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLXNtYWxsLW1vZGUgLnl0cC1zdWdnZXN0aW9ucy1jb250YWluZXIgLnl0cC1zdWdnZXN0aW9uLXNldDpub3QoOmZpcnN0LWNoaWxkKXtkaXNwbGF5Om5vbmV9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1zdWdnZXN0aW9uLXBhbmVsLC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtdGlueS1tb2RlIC55dHAtc3VnZ2VzdGlvbi1wYW5lbHtkaXNwbGF5Om5vbmV9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tb3ZlcmxheSwueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLXRpbnktbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5ey13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2hlaWdodDpjYWxjKDEwMCUgLSAzOXB4KX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLW1pbmktbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5IC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lciwueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLXRpbnktbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5IC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lcnstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtoZWlnaHQ6MTAwJX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLW1pbmktbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5LC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtdGlueS1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLW92ZXJsYXl7bWFyZ2luLXJpZ2h0OmF1dG99Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tb3ZlcmxheXttYXJnaW4tdG9wOjB9Lnl0cC1wbGF5ZXItbWluaW1pemVkLmNvdW50ZG93bi1ydW5uaW5nIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tbGluay1jb250YWluZXIsLnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1saW5rLWNvbnRhaW5lcnttYXJnaW4tdG9wOjMwcHh9Lnl0cC1wbGF5ZXItbWluaW1pemVkLmNvdW50ZG93bi1ydW5uaW5nIC55dHAtc3VnZ2VzdGlvbi1wYW5lbCwueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLXN1Z2dlc3Rpb24tcGFuZWx7ZGlzcGxheTpub25lfS55dHAtcGxheWVyLW1pbmltaXplZC5jb3VudGRvd24tcnVubmluZyAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1jb250YWluZXIsLnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVye3dpZHRoOjM3NHB4O2hlaWdodDoxMDAlOy13ZWJraXQtYm94LXBhY2s6c3RhcnQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ueXRwLXBsYXllci1taW5pbWl6ZWQuY291bnRkb3duLXJ1bm5pbmcgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtY29udGFpbmVyLC55dHAtcGxheWVyLW1pbmltaXplZC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWNvbnRhaW5lcnttYXJnaW4tdG9wOjE2cHh9Lnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1pcy1wcmVtaXVtIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWhlYWRlciwueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXNtYWxsLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1pcy1wcmVtaXVtIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWhlYWRlcntkaXNwbGF5Oi13ZWJraXQtYm94fS55dHAtYXV0b25hdi1jYW5jZWxsZWQtbWluaS1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4taXMtcHJlbWl1bSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1hbHRlcm5hdGl2ZS1oZWFkZXIsLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4taXMtcHJlbWl1bSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1hbHRlcm5hdGl2ZS1oZWFkZXJ7bWFyZ2luLXRvcDo1cHh9Lnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1pcy1wcmVtaXVtIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tbGluay1jb250YWluZXIsLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4taXMtcHJlbWl1bSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWxpbmstY29udGFpbmVye21hcmdpbi10b3A6OHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtbWluaS1tb2RlIC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRle2Rpc3BsYXk6LXdlYmtpdC1ib3h9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1idXR0b24tY29udGFpbmVye2Rpc3BsYXk6bm9uZX0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVye21hcmdpbjphdXRvO21hcmdpbi1yaWdodDo0NXB4O3dpZHRoOjU0MHB4O2hlaWdodDo2NjZweH0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtaGVhZGVye2ZvbnQtc2l6ZToyMi41cHg7bGluZS1oZWlnaHQ6MzZweH0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1zdWdnZXN0aW9uLXBhbmVse21hcmdpbjphdXRvO21hcmdpbi1sZWZ0OjQ1cHg7d2lkdGg6NjQ4cHg7aGVpZ2h0OjY2NnB4fS55dHAtYmlnLW1vZGUueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLXN1Z2dlc3Rpb24tY2FyZC13aXRoLW1hcmdpbnttYXJnaW4tbGVmdDoxOHB4fS55dHAtYmlnLW1vZGUueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtdGh1bWJuYWlsLXNtYWxse3dpZHRoOjMxNXB4O2hlaWdodDoxNzdweH0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LXN1Z2dlc3Rpb24tY2FyZHttYXJnaW4tdG9wOjE1cHg7d2lkdGg6MzE1cHh9Lnl0cC1iaWctbW9kZS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1zdWdnZXN0aW9uLWNhcmQ6bnRoLWxhc3QtY2hpbGQoLW4rMil7bWFyZ2luLXRvcDozMHB4fS55dHAtYmlnLW1vZGUueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtdGl0bGUtY2FyZHttYXJnaW4tdG9wOjE1cHg7Zm9udC1zaXplOjIxcHg7bGluZS1oZWlnaHQ6MjRweH0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWF1dGhvci1jYXJke21hcmdpbi10b3A6NnB4fS55dHAtYmlnLW1vZGUueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtYXV0aG9yLWNhcmQsLnl0cC1iaWctbW9kZS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRlLWNhcmR7Zm9udC1zaXplOjE5LjVweDtsaW5lLWhlaWdodDoyN3B4fS55dHAtYmlnLW1vZGUueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtdmlldy1hbmQtZGF0ZS1jYXJke21hcmdpbi10b3A6MH0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LW1peC10ZXh0e2ZvbnQtc2l6ZToyMi41cHg7bGluZS1oZWlnaHQ6MjdweH0ueXRwLWF1dG9uYXYtYXV0aG9yLWFuZC12aWV3e2Rpc3BsYXk6bm9uZX0ueXRwLWF1dG9uYXYtY2FuY2VsbGVkLW1pbmktbW9kZS55dHAtcGxheWVyLWNvbnRlbnQsLnl0cC1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtbWluaS1tb2RlLnl0cC1wbGF5ZXItY29udGVudHtib3R0b206MH0uY291bnRkb3duLXJ1bm5pbmcgLnl0cC1hdXRvbmF2LW92ZXJsYXl7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4Oi0xfS5jb3VudGRvd24tcnVubmluZyAueXRwLWF1dG9uYXYtdmlldy1hbmQtZGF0ZXtkaXNwbGF5Om5vbmV9Lnl0cC1hdXRvbmF2LXN1Z2dlc3Rpb24tY2FyZFtkYXRhLWlzLWxpc3Q9dHJ1ZV0gLnl0cC1hdXRvbmF2LXRpbWVzdGFtcCwueXRwLWF1dG9uYXYtc3VnZ2VzdGlvbi1jYXJkW2RhdGEtaXMtbGl2ZT10cnVlXSAueXRwLWF1dG9uYXYtdGltZXN0YW1wLC55dHAtYXV0b25hdi1zdWdnZXN0aW9uLWNhcmRbZGF0YS1pcy1taXg9dHJ1ZV0gLnl0cC1hdXRvbmF2LXRpbWVzdGFtcCwueXRwLWF1dG9uYXYtc3VnZ2VzdGlvbi1jYXJkW2RhdGEtaXMtdXBjb21pbmc9dHJ1ZV0gLnl0cC1hdXRvbmF2LXRpbWVzdGFtcHtkaXNwbGF5Om5vbmV9Lnl0cC1hdXRvbmF2LXN1Z2dlc3Rpb24tY2FyZFtkYXRhLWlzLWxpdmU9dHJ1ZV0gLnl0cC1hdXRvbmF2LWxpdmUtc3RhbXB7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZC1jb2xvcjojYzAwfS55dHAtYXV0b25hdi1zdWdnZXN0aW9uLWNhcmQ6bm90KFtkYXRhLWlzLWxpdmU9dHJ1ZV0pIC55dHAtYXV0b25hdi1saXZlLXN0YW1we2Rpc3BsYXk6bm9uZX0ueXRwLWF1dG9uYXYtc3VnZ2VzdGlvbi1jYXJkW2RhdGEtaXMtdXBjb21pbmc9dHJ1ZV0gLnl0cC1hdXRvbmF2LXVwY29taW5nLXN0YW1we3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuOCl9Lnl0cC1hdXRvbmF2LXN1Z2dlc3Rpb24tY2FyZDpub3QoW2RhdGEtaXMtdXBjb21pbmc9dHJ1ZV0pIC55dHAtYXV0b25hdi11cGNvbWluZy1zdGFtcHtkaXNwbGF5Om5vbmV9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtY29udGFpbmVyW2RhdGEtaXMtbGlzdD10cnVlXSAueXRwLWF1dG9uYXYtdGltZXN0YW1wLC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWNvbnRhaW5lcltkYXRhLWlzLWxpdmU9dHJ1ZV0gLnl0cC1hdXRvbmF2LXRpbWVzdGFtcCwueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXJbZGF0YS1pcy1taXg9dHJ1ZV0gLnl0cC1hdXRvbmF2LXRpbWVzdGFtcCwueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXJbZGF0YS1pcy11cGNvbWluZz10cnVlXSAueXRwLWF1dG9uYXYtdGltZXN0YW1we2Rpc3BsYXk6bm9uZX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXJbZGF0YS1pcy1saXZlPXRydWVdIC55dHAtYXV0b25hdi1saXZlLXN0YW1we3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQtY29sb3I6I2MwMH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXI6bm90KFtkYXRhLWlzLWxpdmU9dHJ1ZV0pIC55dHAtYXV0b25hdi1saXZlLXN0YW1we2Rpc3BsYXk6bm9uZX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXJbZGF0YS1pcy11cGNvbWluZz10cnVlXSAueXRwLWF1dG9uYXYtdXBjb21pbmctc3RhbXB7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC44KX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXI6bm90KFtkYXRhLWlzLXVwY29taW5nPXRydWVdKSAueXRwLWF1dG9uYXYtdXBjb21pbmctc3RhbXB7ZGlzcGxheTpub25lfS55dHAtYXV0b25hdi1zdWdnZXN0aW9uLWNhcmQ6bm90KFtkYXRhLWlzLW1peD10cnVlXSkgLnl0cC1hdXRvbmF2LWxpc3Qtb3ZlcmxheXtkaXNwbGF5Om5vbmV9Lmh0bWw1LXZpZGVvLXBsYXllci55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlLmVuZGVkLW1vZGV7YmFja2dyb3VuZC1jb2xvcjojMDAwfS55dHAtYWQtb3ZlcmxheS1vcGVuLmNvdW50ZG93bi1ydW5uaW5nIC55dHAtYWQtb3ZlcmxheS1jb250YWluZXJ7b3BhY2l0eTouM30ueXRwLWFkLW92ZXJsYXktb3BlbiAueXRwLXBsYXllci1jb250ZW50Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVye2hlaWdodDpjYWxjKDEwMCUgLSAxNDNweCl9Lnl0cC1iaWctbW9kZS55dHAtYWQtb3ZlcmxheS1vcGVuIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lcntoZWlnaHQ6Y2FsYygxMDAlIC0gMTYwcHgpfS55dHAtYXV0b25hdi1vdmVybGF5LWNhbmNlbGxlZC1zdGF0ZXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDotMX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1oZWFkZXItY2xvc2UtYnV0dG9ue2Rpc3BsYXk6bm9uZTt3aWR0aDozNnB4O2hlaWdodDozNnB4O2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TkNBeU5DSStQSEJoZEdnZ1ptbHNiRDBpSTJabVppSWdaRDBpVFRFNUlEWXVOREVnTVRjdU5Ua2dOU0F4TWlBeE1DNDFPU0EyTGpReElEVWdOU0EyTGpReElERXdMalU1SURFeUlEVWdNVGN1TlRrZ05pNDBNU0F4T1NBeE1pQXhNeTQwTVNBeE55NDFPU0F4T1NBeE9TQXhOeTQxT1NBeE15NDBNU0F4TW5vaUx6NDhMM04yWno0PSk7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6MjRweCAyNHB4O2JhY2tncm91bmQtc2l6ZToyNHB4O2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MH0ueXRwLWRlbGhpLW1vZGVybjpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSk6bm90KC5hZC1zaG93aW5nKSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC11cGRhdGVkIC55dHAtcGxheWVyLWNvbnRlbnR7cG9zaXRpb246dW5zZXR9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdXBkYXRlZCAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1jb250YWluZXJ7LXdlYmtpdC1hbGlnbi1zZWxmOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcjtoZWlnaHQ6MTAwJX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC11cGRhdGVkIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdG9wYmFyLWNvbnRhaW5lcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmp1c3RpZnk7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXVwZGF0ZWQgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtaGVhZGVyLWNsb3NlLWJ1dHRvbntkaXNwbGF5OmJsb2NrfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXVwZGF0ZWQgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVyIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tbGluay1jb250YWluZXJ7bWFyZ2luLXRvcDowOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXVwZGF0ZWQgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVyIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tbGluay1jb250YWluZXIgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi12aWRlby1pbmZve21hcmdpbi10b3A6MTJweDt3aWR0aDoxMDAlfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXVwZGF0ZWQgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVyIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tbGluay1jb250YWluZXIgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdGh1bWJuYWlsey13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1wb3NpdGlvbjo1MCV9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdXBkYXRlZCAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWJ1dHRvbi1jb250YWluZXJ7ZGlzcGxheTpub25lfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXVwZGF0ZWQgLnl0cC1hdXRvbmF2LWxpdmUtc3RhbXAsLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdXBkYXRlZCAueXRwLWF1dG9uYXYtdGltZXN0YW1wLC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXVwZGF0ZWQgLnl0cC1hdXRvbmF2LXVwY29taW5nLXN0YW1we2JvdHRvbTo4cHg7cmlnaHQ6OHB4O2JvcmRlci1yYWRpdXM6MTBweDtsaW5lLWhlaWdodDoxNnB4O2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzp1bnNldDtwYWRkaW5nOjAgOHB4fS55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uLWNvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHAtZGVsaGktbW9kZXJuLnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uLWNvbnRhaW5lcnt2ZXJ0aWNhbC1hbGlnbjp0b3B9Lnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b24sLnl0cC1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9ue2hlaWdodDoxNC40cHg7d2lkdGg6MzZweDtib3JkZXItcmFkaXVzOjE0LjRweDt0b3A6NTAlO3Bvc2l0aW9uOnJlbGF0aXZlO2N1cnNvcjpwb2ludGVyO2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJek1DSWdhR1ZwWjJoMFBTSXhNaUlnWm1sc2JEMGlibTl1WlNJK1BIQmhkR2dnWm1sc2JEMGlJMlptWmlJZ1ptbHNiQzF5ZFd4bFBTSmxkbVZ1YjJSa0lpQmtQU0pOTWpJdU55QXhNV015TGprMUlEQWdOUzR6TFRJdU1qRWdOUzR6TFRWekxUSXVNelV0TlMwMUxqTXROVWczTGpORE5DNHpOU0F4SURJZ015NHlNU0F5SURaek1pNHpOU0ExSURVdU15QTFlaUlnWTJ4cGNDMXlkV3hsUFNKbGRtVnViMlJrSWlCdmNHRmphWFI1UFNJdU5TSXZQanh3WVhSb0lHWnBiR3c5SWlNd01EQWlJR1pwYkd3dGIzQmhZMmwwZVQwaUxqTWlJR1pwYkd3dGNuVnNaVDBpWlhabGJtOWtaQ0lnWkQwaVRUY3VNeUF4UXpRdU16VWdNU0F5SURNdU1qRWdNaUEyY3pJdU16VWdOU0ExTGpNZ05XZ3hOUzQwUVRVdU1UWWdOUzR4TmlBd0lEQWdNQ0F5T0NBMmJDMHVNRE10TGpVMFFUVXVNVFlnTlM0eE5pQXdJREFnTUNBeU1pNDNJREY2YlRFMUxqUWdNVEZqTXk0ME5TQXdJRFl1TXkweUxqWWdOaTR6TFRaekxUSXVPRFV0TmkwMkxqTXROa2czTGpORE15NDROU0F3SURFZ01pNDJJREVnTm5NeUxqZzFJRFlnTmk0eklEWjZJaUJqYkdsd0xYSjFiR1U5SW1WMlpXNXZaR1FpSUc5d1lXTnBkSGs5SWk0MUlpOCtQQzl6ZG1jKyk7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1zaXplOmNvdmVyOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjA4cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246YWxsIC4wOHMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9ue2hlaWdodDoxOHB4O3dpZHRoOjMwcHg7YmFja2dyb3VuZC1pbWFnZTp1bnNldDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjMpO2JvcmRlci1yYWRpdXM6OXB4O21hcmdpbjowIDlweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktbW9kZXJuLWljb25zIC5kZWxoaS1mYXN0LWZvbGxvdy1hdXRvbmF2LXRvZ2dsZSAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvblthcmlhLWNoZWNrZWQ9dHJ1ZV17YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdGV4dC1wcmltYXJ5LCNmZmYpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLmRlbGhpLWZhc3QtZm9sbG93LWF1dG9uYXYtdG9nZ2xlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uW2FyaWEtY2hlY2tlZD1mYWxzZV17YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYnV0dG9uLXNlY29uZGFyeSxyZ2JhKDI1NSwyNTUsMjU1LC4xKSl9Lnl0cC1iaWctbW9kZS55dHAtZGVsaGktbW9kZXJuLnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b257bWFyZ2luOjAgY2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsIDU2cHgpIC0gMzBweCkvMil9Lnl0cC14c21hbGwtd2lkdGgtbW9kZS55dHAtZGVsaGktbW9kZXJuLWljb25zLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b257aGVpZ2h0OjEzLjVweDt3aWR0aDoyMi41cHg7Ym9yZGVyLXJhZGl1czo2Ljc1cHg7bWFyZ2luOjAgNXB4fS55dHAtc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvbiwueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9ue2hlaWdodDoxMC44cHg7d2lkdGg6MjdweDtib3JkZXItcmFkaXVzOjEwLjhweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9ue2hlaWdodDoxOHB4O3dpZHRoOjQ1cHg7Ym9yZGVyLXJhZGl1czoxOHB4fS55dHAtZW1iZWQgLnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b257aGVpZ2h0OjEycHg7d2lkdGg6MzBweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b25bYXJpYS1jaGVja2VkPXRydWVde2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJek1DSWdhR1ZwWjJoMFBTSXhNaUlnWm1sc2JEMGlibTl1WlNJK1BIQmhkR2dnWm1sc2JEMGlJMlptWmlJZ1ptbHNiQzF5ZFd4bFBTSmxkbVZ1YjJSa0lpQmtQU0pOTWpJdU55QXhNV015TGprMUlEQWdOUzR6TFRJdU1qRWdOUzR6TFRWekxUSXVNelV0TlMwMUxqTXROVWczTGpORE5DNHpOU0F4SURJZ015NHlNU0F5SURaek1pNHpOU0ExSURVdU15QTFlbTB0TWk0M0xTNDNOWFl0T0M0MWJEWXVOeUEwTGpJMmVpSWdZMnhwY0MxeWRXeGxQU0psZG1WdWIyUmtJaUJ2Y0dGamFYUjVQU0l1TlNJdlBqeHdZWFJvSUdacGJHdzlJaU13TURBaUlHWnBiR3d0YjNCaFkybDBlVDBpTGpNaUlHWnBiR3d0Y25Wc1pUMGlaWFpsYm05a1pDSWdaRDBpVFRjdU15QXhRelF1TXpVZ01TQXlJRE11TWpFZ01pQTJjekl1TXpVZ05TQTFMak1nTldneE5TNDBRVFV1TVRZZ05TNHhOaUF3SURBZ01DQXlPQ0EyYkMwdU1ETXRMalUwUVRVdU1UWWdOUzR4TmlBd0lEQWdNQ0F5TWk0M0lERjZiVEUxTGpRZ01URmpNeTQwTlNBd0lEWXVNeTB5TGpZZ05pNHpMVFp6TFRJdU9EVXROaTAyTGpNdE5rZzNMak5ETXk0NE5TQXdJREVnTWk0MklERWdObk15TGpnMUlEWWdOaTR6SURaNklpQmpiR2x3TFhKMWJHVTlJbVYyWlc1dlpHUWlJRzl3WVdOcGRIazlJaTQxSWk4K1BDOXpkbWMrKTstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDstd2Via2l0LXRyYW5zaXRpb246YWxsIC4wOHMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmFsbCAuMDhzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b246YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7aGVpZ2h0OjIwLjRweDt3aWR0aDoyMC40cHg7Ym9yZGVyLXJhZGl1czoyMC40cHg7bWFyZ2luLXRvcDotM3B4O2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlHWnBiR3c5SW01dmJtVWlJSFpwWlhkQ2IzZzlJakFnTUNBeE55QXhOeUkrUEhCaGRHZ2dabWxzYkQwaUl6Y3hOekUzTVNJZ1ptbHNiQzF5ZFd4bFBTSmxkbVZ1YjJSa0lpQmtQU0pOT0M0MUlERTJZVGN1TlNBM0xqVWdNQ0F4SURBZ01DMHhOU0EzTGpVZ055NDFJREFnTUNBd0lEQWdNVFVpSUdOc2FYQXRjblZzWlQwaVpYWmxibTlrWkNJdlBqeHdZWFJvSUdacGJHdzlJaU13TURBaUlHWnBiR3d0YjNCaFkybDBlVDBpTGpFMUlpQm1hV3hzTFhKMWJHVTlJbVYyWlc1dlpHUWlJR1E5SWsweE55QTRMalZoT0M0MUlEZ3VOU0F3SURFZ01TMHhOeUF3SURndU5TQTRMalVnTUNBd0lERWdNVGNnTUcwdE1TQXdZVGN1TlNBM0xqVWdNQ0F4SURFdE1UVWdNQ0EzTGpVZ055NDFJREFnTUNBeElERTFJREFpSUdOc2FYQXRjblZzWlQwaVpYWmxibTlrWkNJdlBqeHdZWFJvSUdacGJHdzlJaU5tWm1ZaUlHUTlJazAxTGpVZ01USm9NbFkxYUMweWVtMDBMVGQyTjJneVZqVjZJaTgrUEM5emRtYyspOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3Zlcjstd2Via2l0LXRyYW5zaXRpb246YWxsIC4wOHMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmFsbCAuMDhzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLW1vZGVybi1pY29ucyAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvbjphZnRlcntoZWlnaHQ6MTRweDt3aWR0aDoxNHB4O2JvcmRlci1yYWRpdXM6N3B4O21hcmdpbjoycHg7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0l6TmlJZ2FHVnBaMmgwUFNJek5pSWdabWxzYkQwaWJtOXVaU0lnZG1sbGQwSnZlRDBpTUNBd0lETTJJRE0ySWo0OGNHRjBhQ0JtYVd4c1BTSWpabVptSWlCa1BTSk5NVEl1TnpVZ05DNDFhQzB6WXkwdU5pQXdMVEV1TVRjdU1qTXRNUzQyTGpZMUxTNDBNaTQwTXkwdU5qVWdNUzB1TmpVZ01TNDJkakl5TGpWak1DQXVOVGt1TWpNZ01TNHhOaTQyTlNBeExqVTVMalF6TGpReUlERWdMalkySURFdU5pNDJObWd6WXk0MU9TQXdJREV1TVRZdExqSTBJREV1TlRrdExqWTJMalF5TFM0ME15NDJOaTB4SUM0Mk5pMHhMalU1VmpZdU56VmpNQzB1TmkwdU1qUXRNUzR4TnkwdU5qWXRNUzQyTFM0ME15MHVOREl0TVMwdU5qVXRNUzQxT1MwdU5qVnRNVE11TlNBd2FDMHpZeTB1TmlBd0xURXVNVGN1TWpNdE1TNDJMalkxTFM0ME1pNDBNeTB1TmpVZ01TMHVOalVnTVM0MmRqSXlMalZqTUNBdU5Ua3VNak1nTVM0eE5pNDJOU0F4TGpVNUxqUXpMalF5SURFZ0xqWTJJREV1Tmk0Mk5tZ3pZeTQxT1NBd0lERXVNVFl0TGpJMElERXVOVGt0TGpZMkxqUXlMUzQwTXk0Mk5pMHhJQzQyTmkweExqVTVWall1TnpWak1DMHVOaTB1TWpRdE1TNHhOeTB1TmpZdE1TNDJMUzQwTXkwdU5ESXRNUzB1TmpVdE1TNDFPUzB1TmpVaUx6NDhMM04yWno0PSk7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4zKTstd2Via2l0LWJhY2tncm91bmQtc2l6ZTo5cHggOXB4O2JhY2tncm91bmQtc2l6ZTo5cHg7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246NTAlOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246YWxsIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktbW9kZXJuLWljb25zIC5kZWxoaS1mYXN0LWZvbGxvdy1hdXRvbmF2LXRvZ2dsZSAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvbjphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXpOaUlnYUdWcFoyaDBQU0l6TmlJZ1ptbHNiRDBpYm05dVpTSWdkbWxsZDBKdmVEMGlNQ0F3SURNMklETTJJajQ4Y0dGMGFDQm1hV3hzUFNJak1EQXdJaUJrUFNKTk1USXVOelVnTkM0MWFDMHpZeTB1TmlBd0xURXVNVGN1TWpNdE1TNDJMalkxTFM0ME1pNDBNeTB1TmpVZ01TMHVOalVnTVM0MmRqSXlMalZqTUNBdU5Ua3VNak1nTVM0eE5pNDJOU0F4TGpVNUxqUXpMalF5SURFZ0xqWTJJREV1Tmk0Mk5tZ3pZeTQxT1NBd0lERXVNVFl0TGpJMElERXVOVGt0TGpZMkxqUXlMUzQwTXk0Mk5pMHhJQzQyTmkweExqVTVWall1TnpWak1DMHVOaTB1TWpRdE1TNHhOeTB1TmpZdE1TNDJMUzQwTXkwdU5ESXRNUzB1TmpVdE1TNDFPUzB1TmpWdE1UTXVOU0F3YUMwell5MHVOaUF3TFRFdU1UY3VNak10TVM0MkxqWTFMUzQwTWk0ME15MHVOalVnTVMwdU5qVWdNUzQyZGpJeUxqVmpNQ0F1TlRrdU1qTWdNUzR4Tmk0Mk5TQXhMalU1TGpRekxqUXlJREVnTGpZMklERXVOaTQyTm1nell5NDFPU0F3SURFdU1UWXRMakkwSURFdU5Ua3RMalkyTGpReUxTNDBNeTQyTmkweElDNDJOaTB4TGpVNVZqWXVOelZqTUMwdU5pMHVNalF0TVM0eE55MHVOall0TVM0MkxTNDBNeTB1TkRJdE1TMHVOalV0TVM0MU9TMHVOalVpTHo0OEwzTjJaejQ9KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10ZXh0LXByaW1hcnksI2ZmZil9Lnl0cC14c21hbGwtd2lkdGgtbW9kZS55dHAtZGVsaGktbW9kZXJuLWljb25zLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b246YWZ0ZXJ7aGVpZ2h0OjEwLjVweDt3aWR0aDoxMC41cHg7Ym9yZGVyLXJhZGl1czo1LjI1cHg7bWFyZ2luOjFweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b246YWZ0ZXJ7bGVmdDotMnB4O2hlaWdodDoxNS4zcHg7d2lkdGg6MTUuM3B4O2JvcmRlci1yYWRpdXM6MTUuM3B4O21hcmdpbi10b3A6LTIuMjVweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uOmFmdGVye2xlZnQ6MDtoZWlnaHQ6MjUuNXB4O3dpZHRoOjI1LjVweDtib3JkZXItcmFkaXVzOjI1LjVweDttYXJnaW4tdG9wOi0zLjc1cHh9Lnl0cC1lbWJlZCAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvbjphZnRlcntsZWZ0OjA7aGVpZ2h0OjE3cHg7d2lkdGg6MTdweDtib3JkZXItcmFkaXVzOjE3cHg7bWFyZ2luLXRvcDotMi41cHh9Lnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b25bYXJpYS1jaGVja2VkPXRydWVdOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlHWnBiR3c5SW01dmJtVWlJSFpwWlhkQ2IzZzlJakFnTUNBeE55QXhOeUkrUEhCaGRHZ2dabWxzYkQwaUl6QXdNQ0lnWm1sc2JDMXZjR0ZqYVhSNVBTSXVNVFVpSUdacGJHd3RjblZzWlQwaVpYWmxibTlrWkNJZ1pEMGlUVEUzSURndU5XRTRMalVnT0M0MUlEQWdNU0F4TFRFM0lEQWdPQzQxSURndU5TQXdJREFnTVNBeE55QXdiUzAxSURCTU5pNDFJRFYyTjNwdExURXVPRFlnTUV3M0xqVWdOaTQ0TW5ZekxqTTJlazA0TGpVZ01UWmhOeTQxSURjdU5TQXdJREVnTUNBd0xURTFJRGN1TlNBM0xqVWdNQ0F3SURBZ01DQXhOU0lnWTJ4cGNDMXlkV3hsUFNKbGRtVnViMlJrSWk4K1BIQmhkR2dnWm1sc2JEMGlJMlptWmlJZ1ptbHNiQzF5ZFd4bFBTSmxkbVZ1YjJSa0lpQmtQU0pOTVRZZ09DNDFZVGN1TlNBM0xqVWdNQ0F4SURFdE1UVWdNQ0EzTGpVZ055NDFJREFnTUNBeElERTFJREJ0TFRRZ01FdzJMalVnTVRKV05Yb2lJR05zYVhBdGNuVnNaVDBpWlhabGJtOWtaQ0l2UGp3dmMzWm5QZz09KTtsZWZ0OjFweDstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE1LjZweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE1LjZweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTUuNnB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uW2FyaWEtY2hlY2tlZD10cnVlXTphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXpOaUlnYUdWcFoyaDBQU0l6TmlJZ1ptbHNiRDBpYm05dVpTSWdkbWxsZDBKdmVEMGlNQ0F3SURNMklETTJJajQ4Y0dGMGFDQm1hV3hzUFNJak1EQXdJaUJrUFNKdE1UY2dPQzQyTFRZdU1URXRNeTQyTVdNdE1TNDFMUzQ0T0MwekxqTTVMakl0TXk0ek9TQXhMamswZGpJeUxqRXpZekFnTVM0M05DQXhMamc1SURJdU9ESWdNeTR6T1NBeExqazBUREUzSURJM0xqUjZiVEFnTUhZeE9DNDRURE16SURFNGVpSXZQand2YzNablBnPT0pO2JhY2tncm91bmQtY29sb3I6I2ZmZjstd2Via2l0LWJhY2tncm91bmQtc2l6ZTo5cHggOXB4O2JhY2tncm91bmQtc2l6ZTo5cHg7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTJweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDEycHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDEycHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLmRlbGhpLWZhc3QtZm9sbG93LWF1dG9uYXYtdG9nZ2xlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uW2FyaWEtY2hlY2tlZD10cnVlXTphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXpOaUlnYUdWcFoyaDBQU0l6TmlJZ1ptbHNiRDBpYm05dVpTSWdkbWxsZDBKdmVEMGlNQ0F3SURNMklETTJJajQ4Y0dGMGFDQm1hV3hzUFNJalptWm1JaUJrUFNKdE1UY2dPQzQyTFRZdU1URXRNeTQyTVdNdE1TNDFMUzQ0T0MwekxqTTVMakl0TXk0ek9TQXhMamswZGpJeUxqRXpZekFnTVM0M05DQXhMamc1SURJdU9ESWdNeTR6T1NBeExqazBUREUzSURJM0xqUjZiVEFnTUhZeE9DNDRURE16SURFNGVpSXZQand2YzNablBnPT0pO2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtc29saWQsIzBmMGYwZil9Lnl0cC1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uW2FyaWEtY2hlY2tlZD10cnVlXTphZnRlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDExLjdweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDExLjdweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTEuN3B4KX0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uW2FyaWEtY2hlY2tlZD10cnVlXTphZnRlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE5LjVweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE5LjVweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTkuNXB4KX0ueXRwLXhzbWFsbC13aWR0aC1tb2RlLnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMueXRwLWRlbGhpLW1vZGVybiAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvblthcmlhLWNoZWNrZWQ9dHJ1ZV06YWZ0ZXJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCg4cHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCg4cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDhweCl9Lnl0cC1lbWJlZCAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvblthcmlhLWNoZWNrZWQ9dHJ1ZV06YWZ0ZXJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgxM3B4KTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTNweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTNweCl9Lnl0cC1iZXplbHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTt0b3A6NTAlO3dpZHRoOjUycHg7aGVpZ2h0OjUycHg7ei1pbmRleDoxOTttYXJnaW4tbGVmdDotMjZweDttYXJnaW4tdG9wOi0yNnB4O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNSk7Ym9yZGVyLXJhZGl1czoyNnB4Oy13ZWJraXQtYW5pbWF0aW9uOnl0cC1iZXplbC1mYWRlb3V0IC41cyBsaW5lYXIgMSBub3JtYWwgZm9yd2FyZHM7YW5pbWF0aW9uOnl0cC1iZXplbC1mYWRlb3V0IC41cyBsaW5lYXIgMSBub3JtYWwgZm9yd2FyZHM7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWJlemVse2xlZnQ6NTAlO3RvcDo1MCU7d2lkdGg6NzhweDtoZWlnaHQ6NzhweDttYXJnaW4tbGVmdDotMzlweDttYXJnaW4tdG9wOi0zOXB4O2JvcmRlci1yYWRpdXM6MzlweDstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0scmdiYSgwLDAsMCwuNikpOy13ZWJraXQtYW5pbWF0aW9uOnl0cC1kZWxoaS1tb2Rlcm4tYmV6ZWwtZmFkZW91dCAxcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSAxIG5vcm1hbCBmb3J3YXJkczthbmltYXRpb246eXRwLWRlbGhpLW1vZGVybi1iZXplbC1mYWRlb3V0IDFzIGN1YmljLWJlemllciguMDUsMCwwLDEpIDEgbm9ybWFsIGZvcndhcmRzfS55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtYmV6ZWwtaWNvbiBzdmd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ueXRwLWJpZy1tb2RlIC55dHAtYmV6ZWx7d2lkdGg6NzhweDtoZWlnaHQ6NzhweDttYXJnaW4tbGVmdDotMzlweDttYXJnaW4tdG9wOi0zOXB4O2JvcmRlci1yYWRpdXM6MzlweH0ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1iZXplbHt3aWR0aDo2NHB4O2hlaWdodDo2NHB4O21hcmdpbi1sZWZ0Oi0zMnB4O21hcmdpbi10b3A6LTMycHg7Ym9yZGVyLXJhZGl1czozMnB4fS55dHAtYmV6ZWwtaWNvbnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O21hcmdpbjo2cHh9Lnl0cC1wbGF5ZXItY29udGVudCAueXRwLWJlemVsLWljb257d2lkdGg6NDhweDtoZWlnaHQ6NDhweDttYXJnaW46MnB4fS55dHAtYmlnLW1vZGUgLnl0cC1iZXplbC1pY29uLC55dHAtZGVsaGktbW9kZXJuIC55dHAtYmV6ZWwtaWNvbnt3aWR0aDo1NHB4O2hlaWdodDo1NHB4O21hcmdpbjoxMnB4fS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWJlemVsLWljb257d2lkdGg6NDhweDtoZWlnaHQ6NDhweDttYXJnaW46OHB4fS55dHAtYmV6ZWwtdGV4dC13cmFwcGVye3RleHQtYWxpZ246Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO3RvcDoxMCU7ei1pbmRleDoxOX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWJlemVsLXRleHQtd3JhcHBlcnstd2Via2l0LWFuaW1hdGlvbjp5dHAtZGVsaGktbW9kZXJuLWJlemVsLXRleHQtZmFkZW91dCAxcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSAxIG5vcm1hbCBmb3J3YXJkczthbmltYXRpb246eXRwLWRlbGhpLW1vZGVybi1iZXplbC10ZXh0LWZhZGVvdXQgMXMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSkgMSBub3JtYWwgZm9yd2FyZHN9Lnl0cC1iZXplbC10ZXh0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6MTBweCAyMHB4O2ZvbnQtc2l6ZToxNzUlO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNSk7cG9pbnRlci1ldmVudHM6bm9uZTtib3JkZXItcmFkaXVzOjNweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWJlemVsLXRleHR7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLHJnYmEoMCwwLDAsLjYpKX0ueXRwLWJlemVsLXRleHQtaGlkZSAueXRwLWJlemVsLXRleHR7ZGlzcGxheTpub25lfUAtd2Via2l0LWtleWZyYW1lcyB5dHAtYmV6ZWwtZmFkZW91dHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDIpO3RyYW5zZm9ybTpzY2FsZSgyKX19QGtleWZyYW1lcyB5dHAtYmV6ZWwtZmFkZW91dHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDIpO3RyYW5zZm9ybTpzY2FsZSgyKX19QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1kZWxoaS1tb2Rlcm4tYmV6ZWwtZmFkZW91dHswJXtvcGFjaXR5OjB9MjUlLDc1JXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS4zMyk7dHJhbnNmb3JtOnNjYWxlKDEuMzMpfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSl9fUBrZXlmcmFtZXMgeXRwLWRlbGhpLW1vZGVybi1iZXplbC1mYWRlb3V0ezAle29wYWNpdHk6MH0yNSUsNzUle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLjMzKTt0cmFuc2Zvcm06c2NhbGUoMS4zMyl9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX19QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1kZWxoaS1tb2Rlcm4tYmV6ZWwtdGV4dC1mYWRlb3V0ezAle29wYWNpdHk6MH0yNSUsNzUle29wYWNpdHk6MX10b3tvcGFjaXR5OjB9fUBrZXlmcmFtZXMgeXRwLWRlbGhpLW1vZGVybi1iZXplbC10ZXh0LWZhZGVvdXR7MCV7b3BhY2l0eTowfTI1JSw3NSV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19Lnl0cC1jaHJvbWUtdG9wIC55dHAtY2FyZHMtYnV0dG9uey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3BvaW50ZXItZXZlbnRzOmFsbDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjYyfS55dHAtY2hyb21lLXRvcCAueXRwLWNhcmRzLWJ1dHRvblthcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLXRvcCAueXRwLWNhcmRzLWJ1dHRvbiAueXRwLWNhcmRzLWJ1dHRvbi1pY29ue3dpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLHJnYmEoMCwwLDAsLjYpKTtib3JkZXItcmFkaXVzOjE4cHh9Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1iaWctbW9kZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtY2FyZHMtYnV0dG9ue21heC13aWR0aDo4MHB4O3dpZHRoOjM2cHh9Lnl0cC1zaG93LWNhcmRzLXRpdGxlIC55dHAtY2FyZHMtYnV0dG9ue21hcmdpbi1sZWZ0OjEwcHg7bWFyZ2luLXJpZ2h0OjEwcHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtc2hvdy1jYXJkcy10aXRsZSAueXRwLWNhcmRzLWJ1dHRvbnttYXJnaW4tbGVmdDowO21hcmdpbi1yaWdodDowfS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKS55dHAtc21hbGwtbW9kZSAueXRwLWNhcmRzLWJ1dHRvbntwYWRkaW5nLXRvcDoxNnB4fS55dHAtc2hvdy1jYXJkcy10aXRsZSAueXRwLWNhcmRzLWJ1dHRvbi10aXRsZXtkaXNwbGF5OmJsb2NrfS55dHAtY2FyZHMtYnV0dG9uLWljb24tc2hvcHBpbmcsLnl0cC1zbWFsbC1tb2RlIC55dHAtc2hvdy1jYXJkcy10aXRsZSAueXRwLWNhcmRzLWJ1dHRvbi10aXRsZXtkaXNwbGF5Om5vbmV9Lnl0cC1jYXJkcy1zaG9wcGluZy1hY3RpdmUgLnl0cC1jYXJkcy1idXR0b24taWNvbi1zaG9wcGluZ3tkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWNhcmRzLXNob3BwaW5nLWFjdGl2ZSAueXRwLWNhcmRzLWJ1dHRvbi1pY29uLWRlZmF1bHR7ZGlzcGxheTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtY2FyZHMtYnV0dG9uLC55dHAtY2hyb21lLXRvcCAueXRwLWNhcmRzLWJ1dHRvbnt3aWR0aDphdXRvO2hlaWdodDphdXRvfS55dHAtY2FyZHMtYnV0dG9uLWljb257bWFyZ2luOmF1dG87d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLWJpZy1tb2RlIC55dHAtY2FyZHMtYnV0dG9uLWljb257d2lkdGg6NTRweDtoZWlnaHQ6NTRweH0ueXRwLWNhcmRzLWJ1dHRvbi10aXRsZXtmb250LXdlaWdodDo1MDA7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE0cHg7ZGlzcGxheTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1jYXJkcy1idXR0b24tdGl0bGV7Zm9udC1zaXplOjIwcHh9Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1iaWctbW9kZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtY2FyZHMtYnV0dG9uLXRpdGxle3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7b3ZlcmZsb3c6aGlkZGVufS55dHAtY2FyZHMtYnV0dG9uIC55dHAtc3ZnLXNoYWRvd3std2Via2l0LXRyYW5zaXRpb246c3Ryb2tlLW9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpzdHJva2Utb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLWJ1dHRvbiAueXRwLXN2Zy1zaGFkb3d7c3Ryb2tlLW9wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246c3Ryb2tlLW9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjI1czt0cmFuc2l0aW9uOnN0cm9rZS1vcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIC4yNXN9Lnl0cC1jYXJkcy1idXR0b24gLnl0cC1zdmctc2hhZG93LWZpbGx7LXdlYmtpdC10cmFuc2l0aW9uOmZpbGwtb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmZpbGwtb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLWJ1dHRvbiAueXRwLXN2Zy1zaGFkb3ctZmlsbHtmaWxsLW9wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246ZmlsbC1vcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIC4yNXM7dHJhbnNpdGlvbjpmaWxsLW9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjI1c30ueXRwLWNhcmRzLXNob3BwaW5nLWFjdGl2ZS55dHAtY2FyZHMtdGVhc2VyLXNob3duIC55dHAtY2FyZHMtYnV0dG9uIC55dHAtc3ZnLWZpbGx7ZmlsbDojMjc5M2U2fS55dHAtY2FyZHMtc2hvcHBpbmctYWN0aXZlLnl0cC1jYXJkcy10ZWFzZXItc2hvd24gLnl0cC1jYXJkcy1idXR0b24gLnl0cC1zdmctc2hhZG93e3N0cm9rZTojZmZmO3N0cm9rZS1vcGFjaXR5OjF9Lnl0cC1jYXJkcy1zaG9wcGluZy1hY3RpdmUueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLWJ1dHRvbiAueXRwLXN2Zy1zaGFkb3ctZmlsbHtmaWxsOiNmZmY7ZmlsbC1vcGFjaXR5OjF9Lnl0cC1jYXJkcy10ZWFzZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjguNXB4O3JpZ2h0OjA7bWF4LXdpZHRoOjkwJTtvcGFjaXR5Oi43NTtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjYxOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtY2FyZHMtdGVhc2Vye3RvcDoxM3B4fS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKS55dHAtc21hbGwtbW9kZSAueXRwLWNhcmRzLXRlYXNlcnt0b3A6MTZweH0uaHRtbDUtdmlkZW8tcGxheWVyLmFkLXNob3dpbmc6bm90KC52aWRlb0FkVWlSZWRlc2lnbikgLnl0cC1jYXJkcy10ZWFzZXJ7dG9wOjQwcHh9Lnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXIsLnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLXRlYXNlcntvcGFjaXR5OjF9Lnl0cC1jYXJkcy10ZWFzZXItc2hvd24gLnl0cC1jYXJkcy10ZWFzZXJ7b3BhY2l0eTouOX0ueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLXRlYXNlcjpob3ZlcntvcGFjaXR5OjF9Lnl0cC1hdXRvaGlkZTpub3QoLnl0cC1jYXJkcy10ZWFzZXItc2hvd24pIC55dHAtY2FyZHMtdGVhc2VyLC55dHAtaXYtZHJhd2VyLW9wZW4gLnl0cC1jYXJkcy10ZWFzZXJ7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpIC4zM3M7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpIC4zM3N9Lnl0cC1pdi1kcmF3ZXItb3BlbiAueXRwLWNhcmRzLXRlYXNlcnstd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6MHM7dHJhbnNpdGlvbi1kZWxheTowc30ueXRwLWNhcmRzLXRlYXNlciAueXRwLWNhcmRzLXRlYXNlci1ib3gsLnl0cC1jYXJkcy10ZWFzZXIgLnl0cC1jYXJkcy10ZWFzZXItdGV4dHtoZWlnaHQ6MzFweH0ueXRwLWJpZy1tb2RlIC55dHAtY2FyZHMtdGVhc2VyIC55dHAtY2FyZHMtdGVhc2VyLWJveCwueXRwLWJpZy1tb2RlIC55dHAtY2FyZHMtdGVhc2VyIC55dHAtY2FyZHMtdGVhc2VyLXRleHR7aGVpZ2h0OjQ2cHh9Lnl0cC1jYXJkcy10ZWFzZXIgLnl0cC1jYXJkcy10ZWFzZXItYm94e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjE4cHg7Ym9yZGVyLXJhZGl1czoycHg7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2YxZjFmMTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjMzcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zM3MgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMzNzIGN1YmljLWJlemllciguNCwwLDEsMSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDApIHRyYW5zbGF0ZVgoMCk7LW1zLXRyYW5zZm9ybTpzY2FsZVgoMCkgdHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06c2NhbGVYKDApIHRyYW5zbGF0ZVgoMCk7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IDA7LW1zLXRyYW5zZm9ybS1vcmlnaW46cmlnaHQgMDt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IDB9Lnl0cC1iaWctbW9kZSAueXRwLWNhcmRzLXRlYXNlciAueXRwLWNhcmRzLXRlYXNlci1ib3h7cmlnaHQ6MjdweH0ueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLXRlYXNlciAueXRwLWNhcmRzLXRlYXNlci1ib3h7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4zM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSAuMjVzO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSAuMjVzLC13ZWJraXQtdHJhbnNmb3JtIC4zM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSAuMjVzOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgxKSB0cmFuc2xhdGVYKDE4cHgpOy1tcy10cmFuc2Zvcm06c2NhbGVYKDEpIHRyYW5zbGF0ZVgoMThweCk7dHJhbnNmb3JtOnNjYWxlWCgxKSB0cmFuc2xhdGVYKDE4cHgpfS55dHAtYmlnLW1vZGUueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLXRlYXNlciAueXRwLWNhcmRzLXRlYXNlci1ib3h7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpIHRyYW5zbGF0ZVgoMjdweCk7LW1zLXRyYW5zZm9ybTpzY2FsZVgoMSkgdHJhbnNsYXRlWCgyN3B4KTt0cmFuc2Zvcm06c2NhbGVYKDEpIHRyYW5zbGF0ZVgoMjdweCl9W2Rpcj1ydGxdIC55dHAtY2FyZHMtdGVhc2VyLXNob3duIC55dHAtY2FyZHMtdGVhc2VyIC55dHAtY2FyZHMtdGVhc2VyLWJveHstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSkgdHJhbnNsYXRlWCgtMThweCk7LW1zLXRyYW5zZm9ybTpzY2FsZVgoMSkgdHJhbnNsYXRlWCgtMThweCk7dHJhbnNmb3JtOnNjYWxlWCgxKSB0cmFuc2xhdGVYKC0xOHB4KX1bZGlyPXJ0bF0gLnl0cC1iaWctbW9kZS55dHAtY2FyZHMtdGVhc2VyLXNob3duIC55dHAtY2FyZHMtdGVhc2VyIC55dHAtY2FyZHMtdGVhc2VyLWJveHstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSkgdHJhbnNsYXRlWCgtMjdweCk7LW1zLXRyYW5zZm9ybTpzY2FsZVgoMSkgdHJhbnNsYXRlWCgtMjdweCk7dHJhbnNmb3JtOnNjYWxlWCgxKSB0cmFuc2xhdGVYKC0yN3B4KX0ueXRwLWNhcmRzLXRlYXNlciAueXRwLWNhcmRzLXRlYXNlci10ZXh0e3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmc6MCAzNnB4IDAgMTBweDttYXgtd2lkdGg6MDtvcGFjaXR5OjA7Y29sb3I6IzAwMDtmb250LXdlaWdodDo1MDA7Zm9udC1zaXplOjEwOS4wOTA5MDklO2xpbmUtaGVpZ2h0OjMxcHg7dGV4dC1zaGFkb3c6bm9uZTstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjE2NXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxtYXgtd2lkdGggMHMgZWFzZSAuMTY1czt0cmFuc2l0aW9uOm9wYWNpdHkgLjE2NXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxtYXgtd2lkdGggMHMgZWFzZSAuMTY1c30ueXRwLWJpZy1tb2RlIC55dHAtY2FyZHMtdGVhc2VyIC55dHAtY2FyZHMtdGVhc2VyLXRleHR7cGFkZGluZzowIDY2cHggMCAxMnB4O2xpbmUtaGVpZ2h0OjQ2cHh9Lnl0cC1jYXJkcy10ZWFzZXItc2hvd24gLnl0cC1jYXJkcy10ZWFzZXIgLnl0cC1jYXJkcy10ZWFzZXItdGV4dHttYXgtd2lkdGg6NDE1cHg7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xNjVzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjQxNXM7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNjVzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjQxNXN9Lnl0cC1iaWctbW9kZS55dHAtY2FyZHMtdGVhc2VyLXNob3duIC55dHAtY2FyZHMtdGVhc2VyIC55dHAtY2FyZHMtdGVhc2VyLXRleHR7bWF4LXdpZHRoOjYzNXB4fS55dHAtY2FyZHMtdGVhc2VyLWNoYW5uZWwtYXZhdGFye2Rpc3BsYXk6bm9uZX0ueXRwLWNhcmRzLXRlYXNlci1kaXNtaXNzaWJsZSAueXRwLWNhcmRzLXRlYXNlci10ZXh0e3dpZHRoOjMwcHg7bGVmdDpjYWxjKDEwMCUgLSAzMHB4KTstd2Via2l0LXRyYW5zaXRpb246d2lkdGggLjMzcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOndpZHRoIC4zM3MgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7b3BhY2l0eToxOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bSxyZ2JhKDAsMCwwLC42KSk7cGFkZGluZzowO2JvcmRlci1yYWRpdXM6MThweH0ueXRwLWJpZy1tb2RlLnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXItdGV4dHtib3JkZXItcmFkaXVzOjIycHh9Lnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXItY2hhbm5lbC1hdmF0YXJ7d2lkdGg6MjJweDtoZWlnaHQ6MjJweDttYXJnaW46NHB4O2JvcmRlci1yYWRpdXM6NTAlO2N1cnNvcjpwb2ludGVyO2Zsb2F0OmxlZnR9Lnl0cC1iaWctbW9kZS55dHAtY2FyZHMtdGVhc2VyLWRpc21pc3NpYmxlIC55dHAtY2FyZHMtdGVhc2VyLWNoYW5uZWwtYXZhdGFye21hcmdpbjoxMnB4fS55dHAtY2FyZHMtdGVhc2VyLWRpc21pc3NpYmxlLnl0cC1jYXJkcy10ZWFzZXItc2hvd24gLnl0cC1jYXJkcy10ZWFzZXIgLnl0cC1jYXJkcy10ZWFzZXItdGV4dHt3aWR0aDoxMDAlO2xlZnQ6MDstd2Via2l0LXRyYW5zaXRpb246d2lkdGggLjMzcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSAuMnMsbGVmdCAuMzNzIGN1YmljLWJlemllciguMDUsMCwwLDEpIC4yczt0cmFuc2l0aW9uOndpZHRoIC4zM3MgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSkgLjJzLGxlZnQgLjMzcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSAuMnN9Lnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXItaW5mby1pY29ue2hlaWdodDozMHB4O3dpZHRoOjMwcHg7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXI7ZmxvYXQ6bGVmdH0ueXRwLWNhcmRzLXRlYXNlci1kaXNtaXNzaWJsZSAueXRwLWNhcmRzLXRlYXNlci1jbG9zZS1idXR0b257aGVpZ2h0OjMwcHg7d2lkdGg6MjBweDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO3BhZGRpbmc6MDttYXJnaW46MCA1cHg7Y3Vyc29yOnBvaW50ZXI7ZmxvYXQ6cmlnaHR9Lnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXItY2xvc2UtYnV0dG9uIHBhdGh7ZmlsbDojNzE3MTcxfS55dHAtY2FyZHMtdGVhc2VyLWRpc21pc3NpYmxlIC55dHAtY2FyZHMtdGVhc2VyLWxhYmVse2Rpc3BsYXk6aW5saW5lLWJsb2NrO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2NvbG9yOiNmZmY7bGluZS1oZWlnaHQ6MzBweDttYXgtd2lkdGg6MzUwcHh9Lnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXItYm94e2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbTpub25lfS55dHAtYmlnLW1vZGUueXRwLWNhcmRzLXRlYXNlci1kaXNtaXNzaWJsZSAueXRwLWNhcmRzLXRlYXNlci1pbmZvLWljb257aGVpZ2h0OjQ1cHg7d2lkdGg6NDVweH0ueXRwLWJpZy1tb2RlLnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXItY2xvc2UtYnV0dG9ue2hlaWdodDo0NXB4O3dpZHRoOjMwcHg7bWFyZ2luOjAgNy41cHh9Lnl0cC1iaWctbW9kZS55dHAtY2FyZHMtdGVhc2VyLWRpc21pc3NpYmxlIC55dHAtY2FyZHMtdGVhc2VyLWxhYmVse2xpbmUtaGVpZ2h0OjQ1cHg7bWF4LXdpZHRoOjUyNXB4fS55dHAtYmlnLW1vZGUueXRwLWNhcmRzLXRlYXNlci1kaXNtaXNzaWJsZSAueXRwLWNhcmRzLXRlYXNlci10ZXh0e3BhZGRpbmc6MH0ueXRwLWVtYmVkLnl0cC1jYXJkcy10ZWFzZXItc2hvd24ueXRwLWNhcmRzLXRlYXNlci1kaXNtaXNzaWJsZSAueXRwLWNocm9tZS10b3AtYnV0dG9ucz46bm90KC55dHAtY2FyZHMtdGVhc2VyKXt2aXNpYmlsaXR5OmhpZGRlbn0ueXRwLXRpdGxlLWVuYWJsZS1jaGFubmVsLWxvZ28gLnl0cC10aXRsZXttaW4taGVpZ2h0OjUycHh9Lnl0cC1iaWctbW9kZS55dHAtdGl0bGUtZW5hYmxlLWNoYW5uZWwtbG9nbyAueXRwLXRpdGxle21pbi1oZWlnaHQ6NzVweH0ueXRwLXNob3J0cy1tb2RlLnl0cC10aXRsZS1lbmFibGUtY2hhbm5lbC1sb2dvIC55dHAtdGl0bGV7bWluLWhlaWdodDo0MnB4fTpub3QoLnl0cC1zaG9ydHMtbW9kZSkueXRwLXRpdGxlLWVuYWJsZS1jaGFubmVsLWxvZ28gLnl0cC10aXRsZS10ZXh0e3BhZGRpbmctbGVmdDo1MHB4fTpub3QoLnl0cC1zaG9ydHMtbW9kZSkueXRwLWJpZy1tb2RlLnl0cC10aXRsZS1lbmFibGUtY2hhbm5lbC1sb2dvIC55dHAtdGl0bGUtdGV4dHtwYWRkaW5nLWxlZnQ6NzVweH0ueXRwLXRpdGxlLWxpbmt7ZGlzcGxheTpibG9jazt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO292ZXJmbG93OmhpZGRlbn0ueXRwLXRpdGxlLWNoYW5uZWwtbG9nb3t3aWR0aDo0MHB4O2hlaWdodDo0MHB4Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0Oy13ZWJraXQtZmxleC1zaHJpbms6MDtmbGV4LXNocmluazowO21hcmdpbjo1cHg7LXdlYmtpdC1iYWNrZ3JvdW5kLW9yaWdpbjpjb250ZW50LWJveDtiYWNrZ3JvdW5kLW9yaWdpbjpjb250ZW50LWJveDtmbG9hdDpsZWZ0O2JvcmRlci1yYWRpdXM6NTAlfS55dHAtYmlnLW1vZGUgLnl0cC10aXRsZS1jaGFubmVsLWxvZ297d2lkdGg6NjBweDtoZWlnaHQ6NjBweH0ueXRwLWVtYmVkLW1vYmlsZSAueXRwLXRpdGxlLWNoYW5uZWwtbG9nbywueXRwLWVtYmVkLW1vYmlsZS55dHAtc21hbGwtbW9kZSAueXRwLXRpdGxlLWNoYW5uZWwtbG9nb3t3aWR0aDo0OHB4O2hlaWdodDo0OHB4O21hcmdpbjowfUAtd2Via2l0LWtleWZyYW1lcyB5dHAtdGl0bGUtY2hhbm5lbC1mYWRlLWluezAle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7bWF4LXdpZHRoOjEwJX0yNSV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDM1LDM1LDM1LC45KX03NSV7bWF4LXdpZHRoOjEwMCV9fUBrZXlmcmFtZXMgeXRwLXRpdGxlLWNoYW5uZWwtZmFkZS1pbnswJXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O21heC13aWR0aDoxMCV9MjUle2JhY2tncm91bmQtY29sb3I6cmdiYSgzNSwzNSwzNSwuOSl9NzUle21heC13aWR0aDoxMDAlfX1ALXdlYmtpdC1rZXlmcmFtZXMgeXRwLXRpdGxlLWNoYW5uZWwtZmFkZS1vdXR7MCV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDM1LDM1LDM1LC45KTt3aWR0aDo1MDBweH03NSV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDM1LDM1LDM1LC45KTt3aWR0aDo1MHB4fX1Aa2V5ZnJhbWVzIHl0cC10aXRsZS1jaGFubmVsLWZhZGUtb3V0ezAle2JhY2tncm91bmQtY29sb3I6cmdiYSgzNSwzNSwzNSwuOSk7d2lkdGg6NTAwcHh9NzUle2JhY2tncm91bmQtY29sb3I6cmdiYSgzNSwzNSwzNSwuOSk7d2lkdGg6NTBweH19QC13ZWJraXQta2V5ZnJhbWVzIHl0cC10aXRsZS1jaGFubmVsLWZhZGUtaW4tYmlnLW1vZGV7MCV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDttYXgtd2lkdGg6MTUlfTI1JXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMzUsMzUsMzUsLjkpfTc1JXttYXgtd2lkdGg6MTAwJX19QGtleWZyYW1lcyB5dHAtdGl0bGUtY2hhbm5lbC1mYWRlLWluLWJpZy1tb2RlezAle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7bWF4LXdpZHRoOjE1JX0yNSV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDM1LDM1LDM1LC45KX03NSV7bWF4LXdpZHRoOjEwMCV9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtdGl0bGUtY2hhbm5lbC1mYWRlLW91dC1iaWctbW9kZXswJXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMzUsMzUsMzUsLjkpO3dpZHRoOjUwMHB4fTc1JXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMzUsMzUsMzUsLjkpO3dpZHRoOjcwcHh9fUBrZXlmcmFtZXMgeXRwLXRpdGxlLWNoYW5uZWwtZmFkZS1vdXQtYmlnLW1vZGV7MCV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDM1LDM1LDM1LC45KTt3aWR0aDo1MDBweH03NSV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDM1LDM1LDM1LC45KTt3aWR0aDo3MHB4fX1ALXdlYmtpdC1rZXlmcmFtZXMgeXRwLXRpdGxlLWV4cGFuZGVkLWZhZGUtaW57MCV7b3BhY2l0eTowfTI1JXtvcGFjaXR5OjB9dG97b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIHl0cC10aXRsZS1leHBhbmRlZC1mYWRlLWluezAle29wYWNpdHk6MH0yNSV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19QC13ZWJraXQta2V5ZnJhbWVzIHl0cC10aXRsZS1leHBhbmRlZC1mYWRlLW91dHswJXtvcGFjaXR5OjF9MjUle29wYWNpdHk6MX10b3tvcGFjaXR5OjB9fUBrZXlmcmFtZXMgeXRwLXRpdGxlLWV4cGFuZGVkLWZhZGUtb3V0ezAle29wYWNpdHk6MX0yNSV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19Lnl0cC10aXRsZS1jaGFubmVse2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoyNXB4O2Rpc3BsYXk6bm9uZTtoZWlnaHQ6NTBweDttYXJnaW4tbGVmdDotNXB4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6N3B4O2xlZnQ6MDt3aWR0aDo1MHB4fS55dHAtYmlnLW1vZGUgLnl0cC10aXRsZS1jaGFubmVse3dpZHRoOjcwcHg7aGVpZ2h0OjcwcHg7bWFyZ2luLXRvcDoxMHB4fS55dHAtdGl0bGUtZW5hYmxlLWNoYW5uZWwtbG9nbyAueXRwLXRpdGxlLWNoYW5uZWx7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXh9Lnl0cC10aXRsZS1jaGFubmVsLnl0cC10aXRsZS1zaG93LWV4cGFuZGVkey13ZWJraXQtYW5pbWF0aW9uOnl0cC10aXRsZS1jaGFubmVsLWZhZGUtaW4gLjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2FuaW1hdGlvbjp5dHAtdGl0bGUtY2hhbm5lbC1mYWRlLWluIC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtdGl0bGUtY2hhbm5lbC55dHAtdGl0bGUtc2hvdy1leHBhbmRlZHstd2Via2l0LWFuaW1hdGlvbjp5dHAtdGl0bGUtY2hhbm5lbC1mYWRlLWluLWJpZy1tb2RlIC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTthbmltYXRpb246eXRwLXRpdGxlLWNoYW5uZWwtZmFkZS1pbi1iaWctbW9kZSAuNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lnl0cC10aXRsZS1jaGFubmVsLnl0cC10aXRsZS1leHBhbmRlZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMzUsMzUsMzUsLjkpO2JvcmRlci1yYWRpdXM6MjVweDttYXgtd2lkdGg6MTAwJTt6LWluZGV4OjE7d2lkdGg6YXV0b30ueXRwLWJpZy1tb2RlIC55dHAtdGl0bGUtY2hhbm5lbC55dHAtdGl0bGUtZXhwYW5kZWR7Ym9yZGVyLXJhZGl1czozNXB4fS55dHAtdGl0bGUtZXhwYW5kZWQtb3ZlcmxheXtkaXNwbGF5OmNvbnRlbnRzO21heC13aWR0aDoxMDAlO29wYWNpdHk6MDtwYWRkaW5nLXJpZ2h0OjhweDt3aWR0aDphdXRvfS55dHAtYmlnLW1vZGUgLnl0cC10aXRsZS1leHBhbmRlZC1vdmVybGF5e21heC13aWR0aDoxMDAlfS55dHAtdGl0bGUtZXhwYW5kZWQgLnl0cC10aXRsZS1leHBhbmRlZC1vdmVybGF5e29wYWNpdHk6MX0ueXRwLXRpdGxlLXNob3ctZXhwYW5kZWQgLnl0cC10aXRsZS1leHBhbmRlZC1vdmVybGF5e29wYWNpdHk6MTstd2Via2l0LWFuaW1hdGlvbjp5dHAtdGl0bGUtZXhwYW5kZWQtZmFkZS1pbiAuNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7YW5pbWF0aW9uOnl0cC10aXRsZS1leHBhbmRlZC1mYWRlLWluIC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtdGl0bGUtc2hvdy1leHBhbmRlZCAueXRwLXRpdGxlLWV4cGFuZGVkLW92ZXJsYXl7LXdlYmtpdC1hbmltYXRpb246eXRwLXRpdGxlLWV4cGFuZGVkLWZhZGUtaW4tYmlnLW1vZGUgLjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2FuaW1hdGlvbjp5dHAtdGl0bGUtZXhwYW5kZWQtZmFkZS1pbi1iaWctbW9kZSAuNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lnl0cC10aXRsZS1leHBhbmRlZC1oZWFkaW5ne21hcmdpbjo1cHg7LXdlYmtpdC1ib3gtZmxleDoxOy13ZWJraXQtZmxleDoxO2ZsZXg6MTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtYWxpZ24tc2VsZjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0cC10aXRsZS1leHBhbmRlZC10aXRsZXtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo0MDA7bWFyZ2luOjB9Lnl0cC1iaWctbW9kZSAueXRwLXRpdGxlLWV4cGFuZGVkLXRpdGxle2ZvbnQtc2l6ZToyMnB4fS55dHAtdGl0bGUtZXhwYW5kZWQtdGl0bGUgYXtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtdGl0bGUtZXhwYW5kZWQtc3VidGl0bGV7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbjowfS55dHAtYmlnLW1vZGUgLnl0cC10aXRsZS1leHBhbmRlZC1zdWJ0aXRsZXtmb250LXNpemU6MTZweH0ueXRwLWNocm9tZS10b3AgLnl0cC10aXRsZS1jaGFubmVsIC55dHAtc2J7LXdlYmtpdC1hbGlnbi1zZWxmOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcjttYXJnaW46NXB4O2hlaWdodDphdXRvO3dpZHRoOmF1dG87cGFkZGluZzowO3BhZGRpbmctbGVmdDoxNnB4O3RleHQtc2hhZG93Om5vbmU7bWFyZ2luLXJpZ2h0OjdweH0ueXRwLWNocm9tZS10b3AgLnl0cC10aXRsZS1jaGFubmVsIC55dHAtc2Itc3Vic2NyaWJlLGEueXRwLXNiLXN1YnNjcmliZXttYXJnaW4tbGVmdDo2NXB4fS55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtdGl0bGUtY2hhbm5lbCAueXRwLXNiLXN1YnNjcmliZSwueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLXRvcCAueXRwLXRpdGxlLWNoYW5uZWwgLnl0cC1zYi11bnN1YnNjcmliZXtmb250LXNpemU6MTZweDtwYWRkaW5nOjE0cHggMjBweDttYXJnaW4tcmlnaHQ6N3B4fS55dHAtdGl0bGUtZXhwYW5kZWQgLnl0cC10aXRsZS1iZWFjb24sLnl0cC10aXRsZS1leHBhbmRlZCAueXRwLXRpdGxlLXN1YnRleHQsLnl0cC10aXRsZS1leHBhbmRlZCAueXRwLXRpdGxlLXRleHR7ZGlzcGxheTpub25lfUAtd2Via2l0LWtleWZyYW1lcyB5dHAtdGl0bGUtYmVhY29uLXB1bHNlezAle2JhY2tncm91bmQ6YmxhY2s7d2lkdGg6NDBweDtoZWlnaHQ6NDBweDtsZWZ0OjVweDt0b3A6NXB4fTUwJXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3dpZHRoOjUwcHg7aGVpZ2h0OjUwcHg7bGVmdDowO3RvcDowfX1Aa2V5ZnJhbWVzIHl0cC10aXRsZS1iZWFjb24tcHVsc2V7MCV7YmFja2dyb3VuZDpibGFjazt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O2xlZnQ6NXB4O3RvcDo1cHh9NTAle2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7d2lkdGg6NTBweDtoZWlnaHQ6NTBweDtsZWZ0OjA7dG9wOjB9fS55dHAtdGl0bGUtYmVhY29ue2JvcmRlci1yYWRpdXM6MjVweDtkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDotMTstd2Via2l0LWFuaW1hdGlvbjp5dHAtdGl0bGUtYmVhY29uLXB1bHNlIDJzIDU7YW5pbWF0aW9uOnl0cC10aXRsZS1iZWFjb24tcHVsc2UgMnMgNX0udW5zdGFydGVkLW1vZGUgLnl0cC10aXRsZS1iZWFjb257ZGlzcGxheTpibG9ja30ueXRwLWJpZy1tb2RlIC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9uLnl0cC1jaGFwdGVyLWNvbnRhaW5lci1kaXNhYmxlZCwueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbi55dHAtY2hhcHRlci1jb250YWluZXItZGlzYWJsZWR7b3BhY2l0eTouOX0ueXRwLWJpZy1tb2RlIC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9uLC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9uLC55dHAtZW1iZWQtbW9iaWxlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9uLC55dHAtc21hbGwtbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3dpZHRoOi13ZWJraXQtZml0LWNvbnRlbnQ7d2lkdGg6LW1vei1maXQtY29udGVudDt3aWR0aDpmaXQtY29udGVudDttYXgtd2lkdGg6MTAwJX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbnstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0tbGlnaHQscmdiYSgwLDAsMCwuMykpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbiBzdmd7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9ue2hlaWdodDp2YXIoLS15dC1kZWxoaS1waWxsLWhlaWdodCw0OHB4KTtib3JkZXItcmFkaXVzOjI4cHg7cGFkZGluZzowIDE2cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaGFwdGVyLXRpdGxlLnl0cC1idXR0b24gc3Zne3BhZGRpbmc6MH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjRweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BvaW50ZXItZXZlbnRzOm5vbmU7Ym9yZGVyLXJhZGl1czoyOHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJ1dHRvbi1zZWNvbmRhcnkscmdiYSgyNTUsMjU1LDI1NSwuMSkpOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9uOmFjdGl2ZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10b25hbC1ob3ZlcixyZ2JhKDI1NSwyNTUsMjU1LC4yKSk7LXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbntoZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsNTZweCl9Lnl0cC1jaGFwdGVyLWNvbnRhaW5lci1kaXNhYmxlZCAueXRwLWNoYXB0ZXItdGl0bGUtY2hldnJvbiwueXRwLWVtYmVkIC55dHAtY2hhcHRlci10aXRsZS1jaGV2cm9uLC55dHAtcHJvZmlsZS1wYWdlIC55dHAtY2hhcHRlci10aXRsZS1jaGV2cm9ue2Rpc3BsYXk6bm9uZX0ueXRwLWNoYXB0ZXItdGl0bGUtY2hldnJvbnstd2Via2l0LWJveC1mbGV4OjA7LXdlYmtpdC1mbGV4OjAgMCAyMHB4O2ZsZXg6MCAwIDIwcHg7d2lkdGg6MjBweDtwb3NpdGlvbjpyZWxhdGl2ZTtib3R0b206MXB4fS55dHAtY2hhcHRlci10aXRsZS1jb250ZW50ey13ZWJraXQtYm94LWZsZXg6MDstd2Via2l0LWZsZXg6MCAxIGF1dG87ZmxleDowIDEgYXV0bzt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaGFwdGVyLXRpdGxlLWNvbnRlbnR7bGluZS1oZWlnaHQ6MjRweDtmb250LXdlaWdodDo1MDB9Lnl0cC1iaWctbW9kZSAueXRwLWNoYXB0ZXItdGl0bGUtY2hldnJvbnt3aWR0aDoyOHB4fS55dHAtY2hhcHRlci10aXRsZS1jaGV2cm9uIHN2Z3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0cC1jaGFwdGVyLXRpdGxlLXByZWZpeHtwYWRkaW5nLXJpZ2h0OjVweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNoYXB0ZXItdGl0bGUtcHJlZml4LC55dHAtbGl2ZSAueXRwLWNoYXB0ZXItdGl0bGV7ZGlzcGxheTpub25lfS55dHAtZW1iZWQgLnl0cC1jaGFwdGVyLWNvbnRhaW5lciAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbiwueXRwLWVtYmVkLnl0cC1zbWFsbC1tb2RlIC55dHAtY2hhcHRlci1jb250YWluZXIgLnl0cC1jaGFwdGVyLXRpdGxlLnl0cC1idXR0b257Y3Vyc29yOnRleHQ7d2lkdGg6MTAwJX0ueXRwLWNoYXB0ZXItY29udGFpbmVyIC55dHAtcHJvZmlsZS1wYWdlLnl0cC1jaGFwdGVyLXRpdGxlLnl0cC1idXR0b257Y3Vyc29yOnRleHR9Lnl0cC1leHAtYm90dG9tLWNvbnRyb2wtZmxleGJveCAueXRwLWNoYXB0ZXItY29udGFpbmVyey13ZWJraXQtYm94LWZsZXg6MDstd2Via2l0LWZsZXg6MCAxIDEwMCU7ZmxleDowIDEgMTAwJTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc306bm90KC55dHAtZXhwLWJvdHRvbS1jb250cm9sLWZsZXhib3gpIC55dHAtY2hhcHRlci1jb250YWluZXJ7ZmxvYXQ6bGVmdH0ueXRwLWNoYXB0ZXItY29udGFpbmVye2hlaWdodDoxMDAlO2ZvbnQtc2l6ZToxMDklO3ZlcnRpY2FsLWFsaWduOnRvcDttYXJnaW46MCA1cHggMCAwO3doaXRlLXNwYWNlOm5vd3JhcDtsaW5lLWhlaWdodDo0N3B4fS55dHAtZW1iZWQgLnl0cC1jaGFwdGVyLWNvbnRhaW5lcntsaW5lLWhlaWdodDozOXB4fS55dHAtYmlnLW1vZGUgLnl0cC1jaGFwdGVyLWNvbnRhaW5lcntsaW5lLWhlaWdodDo1M3B4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hhcHRlci1jb250YWluZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7cGFkZGluZy10b3A6dmFyKC0teXQtZGVsaGktcGlsbC10b3AtaGVpZ2h0LDEycHgpOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtZmxleDowOy13ZWJraXQtZmxleDowIDEwMCBhdXRvO2ZsZXg6MCAxMDAgYXV0b30ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1jaGFwdGVyLWNvbnRhaW5lcntwYWRkaW5nLXRvcDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLXRvcC1oZWlnaHQsMjBweCl9Lnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWNoYXB0ZXItY29udGFpbmVye2Rpc3BsYXk6bm9uZX0ueXRwLWNvbnRleHRtZW51e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt6LWluZGV4OjIzMDA7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmO3RleHQtYWxpZ246bGVmdDtkaXJlY3Rpb246bHRyO2ZvbnQtc2l6ZToxMXB4O2xpbmUtaGVpZ2h0OjEuMzstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkO3dpbGwtY2hhbmdlOndpZHRoLGhlaWdodDtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1wb3B1cC55dHAtZGVsaGktbW9kZXJuLWNvbnRleHRtZW51e2JvcmRlci1yYWRpdXM6MTJweDstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0scmdiYSgwLDAsMCwuNikpfS55dHAtY29udGV4dG1lbnUgLnl0cC1jb2xsYXBzZXtoZWlnaHQ6MjBweDtvcGFjaXR5Oi45O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjIwcHg7dG9wOjEycHg7d2lkdGg6MjBweH0ueXRwLWNvbnRleHRtZW51IC55dHAtY29sbGFwc2U6aG92ZXJ7b3BhY2l0eToxfS55dHAtZG5pLnl0cC1jb250ZXh0bWVudXt0ZXh0LXNoYWRvdzpub25lfS55dHAtYmlnLW1vZGUueXRwLWNvbnRleHRtZW51e2ZvbnQtc2l6ZToxN3B4fS55dHAtYXV0b2hpZGUueXRwLWVtYmVkLW92ZXJsYXlzLWF1dG9oaWRlLnl0cC1jb250ZXh0bWVudXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKS55dHAtZW1iZWQtb3ZlcmxheXMtYXV0b2hpZGUueXRwLWNvbnRleHRtZW51e2Rpc3BsYXk6bm9uZX0ueXRwLWNvbnRleHRtZW51IGEsLnl0cC1jb250ZXh0bWVudSBhOmZvY3VzLC55dHAtY29udGV4dG1lbnUgYTpob3Zlcntjb2xvcjppbmhlcml0O3RleHQtZGVjb3JhdGlvbjpub25lfS55dHAtY29weXRleHR7bWFyZ2luOjAgMTBweDttYXgtd2lkdGg6MjAwcHg7b3V0bGluZTpub25lO3RleHQtc2hhZG93Om5vbmU7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7LW1vei11c2VyLXNlbGVjdDp0ZXh0Oy1tcy11c2VyLXNlbGVjdDp0ZXh0Oy13ZWJraXQtdXNlci1zZWxlY3Q6dGV4dH0ueXRwLWNvcHl0ZXh0OjotbW96LXNlbGVjdGlvbntiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2NvbG9yOmJsYWNrfS55dHAtaHRtbDUtY2xpcGJvYXJke3RvcDowO2xlZnQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTstbW96LXVzZXItc2VsZWN0OnRleHQ7LW1zLXVzZXItc2VsZWN0OnRleHQ7LXdlYmtpdC11c2VyLXNlbGVjdDp0ZXh0fS55dHAtc2hvdy1jb3B5bGluay10aXRsZS55dHAtY29weWxpbmstYnV0dG9ue21hcmdpbi1sZWZ0OjEwcHg7bWFyZ2luLXJpZ2h0OjEwcHh9Lnl0cC1vdmVyZmxvdy1wYW5lbCAueXRwLXNob3ctY29weWxpbmstdGl0bGUueXRwLWNvcHlsaW5rLWJ1dHRvbnttYXJnaW4tbGVmdDoyMHB4O21hcmdpbi1yaWdodDoyMHB4fS55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtY29weWxpbmstYnV0dG9uLC55dHAtY2hyb21lLXRvcCAueXRwLWNvcHlsaW5rLWJ1dHRvbnt3aWR0aDphdXRvO2hlaWdodDphdXRvfS5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtYmlnLW1vZGUpIC55dHAtY2hyb21lLXRvcCAueXRwLWNvcHlsaW5rLWJ1dHRvbnttaW4td2lkdGg6NDhweDttYXgtd2lkdGg6ODBweH0ueXRwLWNvcHlsaW5rLWljb257bWFyZ2luOmF1dG87d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLWJpZy1tb2RlIC55dHAtY29weWxpbmstaWNvbnt3aWR0aDo1NHB4O2hlaWdodDo1NHB4fS55dHAtb3ZlcmZsb3ctcGFuZWwgLnl0cC1jb3B5bGluay1pY29ue3dpZHRoOjYwcHg7aGVpZ2h0OjYwcHg7bWFyZ2luLWJvdHRvbToxMHB4fS55dHAtY29weWxpbmstdGl0bGV7Zm9udC13ZWlnaHQ6NTAwO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc2l6ZToxNHB4O2Rpc3BsYXk6bm9uZX0ueXRwLWJpZy1tb2RlIC55dHAtY29weWxpbmstdGl0bGUsLnl0cC1vdmVyZmxvdy1wYW5lbCAueXRwLWNvcHlsaW5rLXRpdGxle2ZvbnQtc2l6ZToyMHB4fS55dHAtc2hvdy1jb3B5bGluay10aXRsZSAueXRwLWNvcHlsaW5rLXRpdGxle2Rpc3BsYXk6YmxvY2t9Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1iaWctbW9kZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtY29weWxpbmstdGl0bGV7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztvdmVyZmxvdzpoaWRkZW59Lnl0cC1jb3VudGRvd24tdGltZXJ7d2lkdGg6MzZweDtoZWlnaHQ6MzZweDstd2Via2l0LXRyYW5zaXRpb246YWxsIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246YWxsIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3otaW5kZXg6Mzk7dGV4dC1hbGlnbjpjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7cmlnaHQ6MDstd2Via2l0LWJveC1zaGFkb3c6MCAwIDEwcHggcmdiYSgwLDAsMCwuNik7Ym94LXNoYWRvdzowIDAgMTBweCByZ2JhKDAsMCwwLC42KTtib3JkZXItcmFkaXVzOjE4cHh9Lnl0cC1icmFuZGluZy1zaG93biAueXRwLWNvdW50ZG93bi10aW1lcntib3R0b206NTJweH0ueXRwLWNvdW50ZG93bi10aW1lci10aW1le2ZvbnQtc2l6ZToxOHB4O2NvbG9yOiNGRkY7bGluZS1oZWlnaHQ6MzZweDt3aWR0aDozNnB4O2ZvbnQtd2VpZ2h0OjUwMDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7dGV4dC1zaGFkb3c6MCAwIDRweCByZ2IoMCwwLDApfS55dHAtZnJlZS1wcmV2aWV3LWNvdW50ZG93bi10aW1lcntwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6NXB4O2xlZnQ6MjBweDtoZWlnaHQ6MjRweDtib3R0b206MjBweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7dGV4dC1hbGlnbjpsZWZ0O2JhY2tncm91bmQtY29sb3I6IzAwMDtib3JkZXItcmFkaXVzOjRweDtjb2xvcjojZmZmO3dpZHRoOmF1dG87ei1pbmRleDo4Mjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9Lnl0cC1mcmVlLXByZXZpZXctY291bnRkb3duLXRpbWVyLXNlcGFyYXRvcntwYWRkaW5nOjAgM3B4fS55dC11aS1lbGxpcHNpc3tiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDoxLjNlbTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWw7d29yZC13cmFwOmJyZWFrLXdvcmR9Lnl0LXVpLWVsbGlwc2lzLW5vd3JhcC1zaW5nbGUtbGluZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDoxLjNlbTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOmJyZWFrLXdvcmQ7bWF4LWhlaWdodDoxLjNlbX0ueXQtdWktZWxsaXBzaXM6YWZ0ZXIsLnl0LXVpLWVsbGlwc2lzOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOmluaGVyaXQ7cG9zaXRpb246YWJzb2x1dGV9Lnl0LXVpLWVsbGlwc2lzOmJlZm9yZXtjb250ZW50OiLigKYiO3JpZ2h0OjB9Lnl0LXVpLWVsbGlwc2lzOmFmdGVye2NvbnRlbnQ6IiI7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJX0ueXQtdWktZWxsaXBzaXMtMjpiZWZvcmV7dG9wOjEuM2VtfS55dC11aS1lbGxpcHNpcy0zOmJlZm9yZXt0b3A6Mi42ZW19Lnl0LXVpLWVsbGlwc2lzLTQ6YmVmb3Jle3RvcDozLjllbX0ueXQtdWktZWxsaXBzaXMtNjpiZWZvcmV7dG9wOjYuNWVtfS55dC11aS1lbGxpcHNpcy0xMDpiZWZvcmV7dG9wOjExLjdlbX0ueXQtdWktZWxsaXBzaXMtMnttYXgtaGVpZ2h0OjIuNmVtfS55dC11aS1lbGxpcHNpcy0ze21heC1oZWlnaHQ6My45ZW19Lnl0LXVpLWVsbGlwc2lzLTR7bWF4LWhlaWdodDo1LjJlbX0ueXQtdWktZWxsaXBzaXMtNnttYXgtaGVpZ2h0OjcuOGVtfS55dC11aS1lbGxpcHNpcy0xMHttYXgtaGVpZ2h0OjEzZW19LndlYmtpdCAueXQtdWktZWxsaXBzaXN7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWx9LndlYmtpdCAueXQtdWktZWxsaXBzaXMtMnstd2Via2l0LWxpbmUtY2xhbXA6Mn0ud2Via2l0IC55dC11aS1lbGxpcHNpcy0zey13ZWJraXQtbGluZS1jbGFtcDozfS53ZWJraXQgLnl0LXVpLWVsbGlwc2lzLTR7LXdlYmtpdC1saW5lLWNsYW1wOjR9LndlYmtpdCAueXQtdWktZWxsaXBzaXMtNnstd2Via2l0LWxpbmUtY2xhbXA6Nn0ud2Via2l0IC55dC11aS1lbGxpcHNpcy0xMHstd2Via2l0LWxpbmUtY2xhbXA6MTB9LndlYmtpdCAueXQtdWktZWxsaXBzaXM6YmVmb3Jle2NvbnRlbnQ6bm9ybWFsfS53ZWJraXQgLnl0LXVpLWVsbGlwc2lzOmFmdGVye2NvbnRlbnQ6IuKAjCI7cG9zaXRpb246c3RhdGljO3Zpc2liaWxpdHk6aGlkZGVufS55dC11aS1lbGxpcHNpc1tkaXI9cnRsXTpiZWZvcmV7bGVmdDowO3JpZ2h0OmF1dG99YS55dHAtY2UtbGlua3tkaXNwbGF5OmJsb2NrfWEueXRwLWNlLWxpbmssYS55dHAtY2UtbGluazpob3ZlcixhLnl0cC1jZS1saW5rOnZpc2l0ZWR7Y29sb3I6IzE2N2FjNn1hLnl0cC1jZS1saW5rOmhvdmVye3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9Lnl0cC1jZS1zaGFkb3d7b3BhY2l0eTowO291dGxpbmU6c29saWQgIzAwMDtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7ei1pbmRleDoxMn0ueXRwLWNlLXNoYWRvdzpub3QoW2FyaWEtaGlkZGVuPXRydWVdKXtvcGFjaXR5Oi4yNTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1jZS1lbGVtZW50e2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuNCk7LXdlYmtpdC1ib3gtc2hhZG93OjAgMCA0cHggcmdiYSgwLDAsMCwuNSk7Ym94LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsLjUpO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6YmxvY2s7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7bGluZS1oZWlnaHQ6MS4zZW07bWFyZ2luOi0xcHg7cG9zaXRpb246YWJzb2x1dGU7LXdlYmtpdC1mb250LXNtb290aGluZzphdXRvO3otaW5kZXg6MTI7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIGxpbmVhciAuMnMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIGxpbmVhciAuMnMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dmlzaWJpbGl0eTpoaWRkZW59Lnl0cC1jZS1oaWRlLWJ1dHRvbi1jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOjEycHg7cmlnaHQ6MTJweDt6LWluZGV4OjEzO29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246dmlzaWJpbGl0eSAwcyBsaW5lYXIgLjJzLG9wYWNpdHkgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSksYm9yZGVyLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246dmlzaWJpbGl0eSAwcyBsaW5lYXIgLjJzLG9wYWNpdHkgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSksYm9yZGVyLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3Zpc2liaWxpdHk6aGlkZGVufS55dHAtY2UtaGlkZS1idXR0b24tY29udGFpbmVyLnl0cC1jZS1oaWRlLWJ1dHRvbi1sb3dlcnttYXJnaW4tdG9wOjQ4cHh9Lnl0cC1iaWctbW9kZSAueXRwLWNlLWhpZGUtYnV0dG9uLWNvbnRhaW5lcnttYXJnaW4tdG9wOjcycHh9Lmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlIC55dHAtY2UtZWxlbWVudCwuaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGUgLnl0cC1jZS1oaWRlLWJ1dHRvbi1jb250YWluZXJ7ZGlzcGxheTpub25lfS55dHAtY2UtZWxlbWVudC55dHAtY2UtcGxhY2Vob2xkZXIgYS55dHAtY2UtY292ZXJpbmctb3ZlcmxheXtjdXJzb3I6ZGVmYXVsdH0ueXRwLWNlLWVsZW1lbnQueXRwLWNlLWVsZW1lbnQtc2hvdywueXRwLWNlLWhpZGUtYnV0dG9uLWNvbnRhaW5lci55dHAtY2UtZWxlbWVudC1zaG93e29wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246dmlzaWJpbGl0eSAwcyBsaW5lYXIgMHMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIGxpbmVhciAwcyxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLGJvcmRlci1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt2aXNpYmlsaXR5OnZpc2libGV9Lnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1lbGVtZW50LWhvdmVyLC55dHAtY2UtZWxlbWVudC55dHAtY2UtZm9yY2UtZXhwYW5ke2JvcmRlcjoxcHggc29saWQgI2ZmZjtvdXRsaW5lOm5vbmU7ei1pbmRleDoxMztvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOnZpc2liaWxpdHkgMHMgbGluZWFyIDBzLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSksYm9yZGVyLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dmlzaWJpbGl0eSAwcyBsaW5lYXIgMHMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSk7dmlzaWJpbGl0eTp2aXNpYmxlfS55dHAtY2UtZWxlbWVudC55dHAtY2UtZWxlbWVudC1zaG93OmZvY3VzLC55dHAtY2UtZWxlbWVudC55dHAtY2UtZWxlbWVudC1zaG93OmhvdmVye291dGxpbmU6bm9uZX0ueXRwLWNlLWVsZW1lbnQtc2hhZG93e2JhY2tncm91bmQtY29sb3I6IzAwMDtib3R0b206LTFweDtsZWZ0Oi0xcHg7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0Oi0xcHg7dG9wOi0xcHg7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3otaW5kZXg6MTJ9Lnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1lbGVtZW50LXNob3cueXRwLWNlLWVsZW1lbnQtc2hhZG93LXNob3cgLnl0cC1jZS1lbGVtZW50LXNoYWRvd3tvcGFjaXR5Oi4yNTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1jZS1jb3ZlcmluZy1pbWFnZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1zaXplOmNvdmVyO2JvdHRvbTotMnB4O2xlZnQ6LTFweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDotMXB4O3RvcDotMXB4fS55dHAtY2UtY292ZXJpbmctc2hhZG93LXRvcHtoZWlnaHQ6MzMlO29wYWNpdHk6Ljg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwjMDAwLHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGNvbG9yLXN0b3AoMCwjMDAwKSx0byh0cmFuc3BhcmVudCkpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjMDAwIDAsdHJhbnNwYXJlbnQpfS55dHAtY2UtY292ZXJpbmctb3ZlcmxheXtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO3otaW5kZXg6MTJ9Lmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlIC55dHAtY2Utc2hhZG93e2Rpc3BsYXk6bm9uZX0ueXRwLWNlLXBsYXlsaXN0LC55dHAtY2UtdmlkZW97b3ZlcmZsb3c6aGlkZGVufS55dHAtY2UtcGxheWxpc3QtdGl0bGUsLnl0cC1jZS12aWRlby10aXRsZXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2NvbG9yOiNmZmY7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE0cHg7bWFyZ2luOjZweCA4cHg7bWF4LWhlaWdodDoyOHB4O3RleHQtc2hhZG93OjAgMXB4IDAgcmdiYSgwLDAsMCwuNCl9Lnl0cC1jZS1wbGF5bGlzdC10aXRsZS55dHAtd2Via2l0LWVsbGlwc2lzLC55dHAtY2UtdmlkZW8tdGl0bGUueXRwLXdlYmtpdC1lbGxpcHNpc3tkaXNwbGF5Oi13ZWJraXQtYm94O292ZXJmbG93OmhpZGRlbjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1saW5lLWNsYW1wOjI7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWNlLXZpZGVvLWR1cmF0aW9ue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuOCk7Ym9yZGVyLXJhZGl1czoycHg7Ym90dG9tOjA7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuOCk7bWFyZ2luOjAgNHB4IDRweCAwO3BhZGRpbmc6NHB4IDZweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowfS55dHAtY2UtbGl2ZS12aWRlby1kdXJhdGlvbntiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNTUsMCwwKTtib3JkZXItcmFkaXVzOjJweDtib3R0b206MDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC44KTttYXJnaW46MCA0cHggNHB4IDA7cGFkZGluZzo0cHggNnB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjB9Lnl0cC1jZS1wbGF5bGlzdC1jb3VudHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjc1KTtib3R0b206MDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MH0ueXRwLWNlLXBsYXlsaXN0LWljb257bGVmdDo4cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweH0ueXRwLWNlLXBsYXlsaXN0LWNvdW50LXRleHR7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuOCk7aGVpZ2h0OjI0cHg7bGluZS1oZWlnaHQ6MjRweDttYXJnaW4tbGVmdDozMnB4fS55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIGxpbmVhciAuMnMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIGxpbmVhciAuMnMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dmlzaWJpbGl0eTpoaWRkZW59Lnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1jb250ZW50e2Rpc3BsYXk6dGFibGV9Lnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5e2Rpc3BsYXk6dGFibGUtY2VsbDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1lbGVtZW50LWhvdmVyIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXksLnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1mb3JjZS1leHBhbmQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheXt6LWluZGV4OjEzO29wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246dmlzaWJpbGl0eSAwcyBsaW5lYXIgMHMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIGxpbmVhciAwcyxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLGJvcmRlci1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt2aXNpYmlsaXR5OnZpc2libGV9Lnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1lbGVtZW50LWhvdmVyIC55dHAtY2UtZXhwYW5kaW5nLWltYWdlLC55dHAtY2UtZWxlbWVudC55dHAtY2UtZm9yY2UtZXhwYW5kIC55dHAtY2UtZXhwYW5kaW5nLWltYWdle3otaW5kZXg6MTN9Lnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1iYWNrZ3JvdW5ke2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItcmFkaXVzOjJweDstd2Via2l0LWJveC1zaGFkb3c6MCAwIDRweCAjMDAwO2JveC1zaGFkb3c6MCAwIDRweCAjMDAwO2hlaWdodDoxMDAlO2xlZnQ6MDttYXJnaW46LThweDtwYWRkaW5nOjhweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlfS55dHAtY2UtZXhwYW5kaW5nLWltYWdle2JhY2tncm91bmQtcG9zaXRpb246NTAlOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3ZlcjtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlfS55dHAtY2UtZXhwYW5kaW5nLWljb257YmFja2dyb3VuZC1jb2xvcjojMDAwO2JhY2tncm91bmQtcG9zaXRpb246NTAlO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDstd2Via2l0LWJhY2tncm91bmQtc2l6ZToyMHB4IDIwcHg7YmFja2dyb3VuZC1zaXplOjIwcHggMjBweDtib3JkZXItcmFkaXVzOjJweDtib3R0b206MnB4O2hlaWdodDoyNHB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjJweDt3aWR0aDoyNHB4Oy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWNlLWVsZW1lbnQueXRwLWNlLWVsZW1lbnQtaG92ZXIgLnl0cC1jZS1leHBhbmRpbmctaWNvbiwueXRwLWNlLWVsZW1lbnQueXRwLWNlLWZvcmNlLWV4cGFuZCAueXRwLWNlLWV4cGFuZGluZy1pY29ue29wYWNpdHk6MH0ueXRwLWNlLWVsZW1lbnQueXRwLWNlLXRvcC1sZWZ0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheXtsZWZ0OjA7cGFkZGluZy1sZWZ0OjEwMCU7dG9wOjB9Lnl0cC1jZS1lbGVtZW50Lnl0cC1jZS10b3AtcmlnaHQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5e3BhZGRpbmctcmlnaHQ6MTAwJTtyaWdodDowO3RvcDowfS55dHAtY2UtZWxlbWVudC55dHAtY2UtYm90dG9tLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5e2JvdHRvbTowO2xlZnQ6MDtwYWRkaW5nLWxlZnQ6MTAwJX0ueXRwLWNlLWVsZW1lbnQueXRwLWNlLWJvdHRvbS1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXl7Ym90dG9tOjA7cGFkZGluZy1yaWdodDoxMDAlO3JpZ2h0OjB9Lnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1jaGFubmVsLnl0cC1jZS1lbGVtZW50LXNob3csLnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1jaGFubmVsLnl0cC1jZS1lbGVtZW50LXNob3cueXRwLWNlLWVsZW1lbnQtaG92ZXIsLnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1jaGFubmVsLnl0cC1jZS1lbGVtZW50LXNob3cueXRwLWNlLWZvcmNlLWV4cGFuZCwueXRwLWNlLWVsZW1lbnQueXRwLWNlLW1lcmNoYW5kaXNlLnl0cC1jZS1lbGVtZW50LXNob3csLnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1tZXJjaGFuZGlzZS55dHAtY2UtZWxlbWVudC1zaG93Lnl0cC1jZS1lbGVtZW50LWhvdmVyLC55dHAtY2UtZWxlbWVudC55dHAtY2UtbWVyY2hhbmRpc2UueXRwLWNlLWVsZW1lbnQtc2hvdy55dHAtY2UtZm9yY2UtZXhwYW5kLC55dHAtY2UtZWxlbWVudC55dHAtY2Utd2Vic2l0ZS55dHAtY2UtZWxlbWVudC1zaG93LC55dHAtY2UtZWxlbWVudC55dHAtY2Utd2Vic2l0ZS55dHAtY2UtZWxlbWVudC1zaG93Lnl0cC1jZS1lbGVtZW50LWhvdmVyLC55dHAtY2UtZWxlbWVudC55dHAtY2Utd2Vic2l0ZS55dHAtY2UtZWxlbWVudC1zaG93Lnl0cC1jZS1mb3JjZS1leHBhbmR7Ym9yZGVyOjA7bWFyZ2luOjB9Lnl0cC1jZS1jaGFubmVsLXRpdGxle2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWNlLWNoYW5uZWwtc3Vic2NyaWJle2NvbG9yOiM3Njc2NzY7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLXRvcDo0cHg7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7LW1zLXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0Oy1tcy10cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0O3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnR9Lnl0cC1jZS1jaGFubmVsLXN1YnNjcmliZXJzLXRleHR7Y29sb3I6Izc2NzY3NjtkaXNwbGF5Om5vbmU7bWFyZ2luLWJvdHRvbToyNHB4O21hcmdpbi10b3A6NnB4fS55dHAtY2UtY2hhbm5lbC1tZXRhZGF0YXtjb2xvcjojNzY3Njc2fS55dHAtY2UtY2hhbm5lbC10aGlzIC55dHAtY2UtY2hhbm5lbC1tZXRhZGF0YXtib3JkZXItdG9wOjFweCBzb2xpZCAjZWJlYmViO2Rpc3BsYXk6bm9uZX0ueXRwLWNlLWNoYW5uZWwtdGhhdCAueXRwLWNlLWNoYW5uZWwtbWV0YWRhdGF7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MTRweDttYXJnaW4tdG9wOjRweDttYXgtaGVpZ2h0OjQycHh9Lnl0cC1jZS1jaGFubmVsLC55dHAtY2UtY2hhbm5lbCAueXRwLWNlLWVsZW1lbnQtc2hhZG93LC55dHAtY2UtY2hhbm5lbCAueXRwLWNlLWV4cGFuZGluZy1pbWFnZXtib3JkZXItcmFkaXVzOjUwJX0ueXRwLWNlLW1lcmNoYW5kaXNlLXRpdGxlLC55dHAtY2Utd2Vic2l0ZS10aXRsZXtjb2xvcjojMzMzO2ZvbnQtd2VpZ2h0OjUwMDttYXJnaW4tYm90dG9tOjJweH0ueXRwLWNlLW1lcmNoYW5kaXNlLW1ldGFkYXRhLC55dHAtY2UtbWVyY2hhbmRpc2UtcHJpY2UtY29udGFpbmVyLC55dHAtY2Utd2Vic2l0ZS1tZXRhZGF0YXtjb2xvcjojNzY3Njc2O21hcmdpbi10b3A6NHB4fS55dHAtY2UtbWVyY2hhbmRpc2UgLnl0cC1jZS1leHBhbmRpbmctaW1hZ2V7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1zaXplOmNvbnRhaW59Lnl0cC1jZS13ZWJzaXRlLWdvdG97ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC13ZWlnaHQ6NTAwO21hcmdpbi10b3A6NHB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDt3aWR0aDoxMDAlfS55dHAtY2UtbWVyY2hhbmRpc2UgLnl0cC1jZS1leHBhbmRpbmctaW1hZ2UsLnl0cC1jZS13ZWJzaXRlIC55dHAtY2UtZXhwYW5kaW5nLWltYWdle2JhY2tncm91bmQtY29sb3I6I2ZmZn0ueXRwLWNlLW1lcmNoYW5kaXNlLXByaWNle2Rpc3BsYXk6aW5saW5lLWJsb2NrO2NvbG9yOiM2NDY0NjQ7Zm9udC13ZWlnaHQ6ODAwO3doaXRlLXNwYWNlOm5vd3JhcDttYXJnaW4tcmlnaHQ6NnB4fS55dHAtY2UtbWVyY2hhbmRpc2UtYWRkaXRpb25hbC1mZWVze2Rpc3BsYXk6aW5saW5lLWJsb2NrO2NvbG9yOiM3Njc2NzY7bWFyZ2luLXRvcDoycHg7d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC1jZS1tZXJjaGFuZGlzZS1pbnZpZGVvLWN0YS1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjojMDAwO2JvcmRlcjoxcHggIzAwMDtvcGFjaXR5Oi44O3BhZGRpbmc6MTBweCAwO3dpZHRoOjEwMCU7Ym90dG9tOjA7cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXJ9Lnl0cC1jZS1tZXJjaGFuZGlzZS1pbnZpZGVvLWN0YXtjb2xvcjojZmZmO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLWNlLXNpemUtMzQ2IC55dHAtY2UtbWVyY2hhbmRpc2UtaW52aWRlby1jdGEtY29udGFpbmVyLC55dHAtY2Utc2l6ZS00MjYgLnl0cC1jZS1tZXJjaGFuZGlzZS1pbnZpZGVvLWN0YS1jb250YWluZXIsLnl0cC1jZS1zaXplLTQ3MCAueXRwLWNlLW1lcmNoYW5kaXNlLWludmlkZW8tY3RhLWNvbnRhaW5lcntwYWRkaW5nOjJweCAwfS55dHAtY2Utc2l6ZS01MDYgLnl0cC1jZS1tZXJjaGFuZGlzZS1pbnZpZGVvLWN0YS1jb250YWluZXIsLnl0cC1jZS1zaXplLTU3MCAueXRwLWNlLW1lcmNoYW5kaXNlLWludmlkZW8tY3RhLWNvbnRhaW5lciwueXRwLWNlLXNpemUtNjQwIC55dHAtY2UtbWVyY2hhbmRpc2UtaW52aWRlby1jdGEtY29udGFpbmVyLC55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1tZXJjaGFuZGlzZS1pbnZpZGVvLWN0YS1jb250YWluZXJ7cGFkZGluZzo1cHggMH0ueXRwLWNlLWxhcmdlLXJvdW5kIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYmFja2dyb3VuZCwueXRwLWNlLXBsYXlsaXN0Lnl0cC1jZS1sYXJnZS1yb3VuZCwueXRwLWNlLXZpZGVvLnl0cC1jZS1sYXJnZS1yb3VuZHtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1jZS1tZWRpdW0tcm91bmQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1iYWNrZ3JvdW5kLC55dHAtY2UtcGxheWxpc3QueXRwLWNlLW1lZGl1bS1yb3VuZCwueXRwLWNlLXZpZGVvLnl0cC1jZS1tZWRpdW0tcm91bmR7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0cC1jZS1wbGF5bGlzdC55dHAtY2Utc21hbGwtcm91bmQsLnl0cC1jZS1zbWFsbC1yb3VuZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJhY2tncm91bmQsLnl0cC1jZS12aWRlby55dHAtY2Utc21hbGwtcm91bmR7Ym9yZGVyLXJhZGl1czo0cHh9Lnl0cC1jZS1tZXJjaGFuZGlzZS1nb3Rve2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtd2VpZ2h0OjUwMDttYXJnaW4tdG9wOjRweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7d2lkdGg6MTAwJX0ueXRwLWNlLXNpemUtMzQ2e2ZvbnQtc2l6ZToxMnB4fS55dHAtY2Utc2l6ZS0zNDYgLnl0cC1jZS1jb3ZlcmluZy1pY29ue2JvdHRvbTo0cHg7cmlnaHQ6NHB4fS55dHAtY2Utc2l6ZS0zNDYgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWluLXdpZHRoOjExNXB4fS55dHAtY2Utc2l6ZS0zNDYgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmc+Om5vdCgueXRwLWNlLXN1YnNjcmliZS1jb250YWluZXIpe3dpZHRoOjExNXB4fS55dHAtY2Utc2l6ZS0zNDYueXRwLWNlLWJvdHRvbS1sZWZ0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmcsLnl0cC1jZS1zaXplLTM0Ni55dHAtY2UtdG9wLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttYXJnaW46MCAwIDAgOHB4fS55dHAtY2Utc2l6ZS0zNDYueXRwLWNlLWJvdHRvbS1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nLC55dHAtY2Utc2l6ZS0zNDYueXRwLWNlLXRvcC1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDhweCAwIDB9Lnl0cC1jZS1zaXplLTM0NiAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJhY2tncm91bmR7bWFyZ2luOi04cHg7cGFkZGluZzo4cHh9Lnl0cC1jZS1zaXplLTM0NiAueXRwLWNlLWV4cGFuZGluZy1pY29ue2JvdHRvbToycHg7cmlnaHQ6MnB4fS55dHAtY2Utc2l6ZS0zNDYueXRwLWNlLWNoYW5uZWwtdGhhdCAueXRwLWNlLWNoYW5uZWwtbWV0YWRhdGF7bWFyZ2luLXRvcDowfS55dHAtY2Utc2l6ZS00MjZ7Zm9udC1zaXplOjEycHh9Lnl0cC1jZS1zaXplLTQyNiAueXRwLWNlLWNvdmVyaW5nLWljb257Ym90dG9tOjRweDtyaWdodDo0cHh9Lnl0cC1jZS1zaXplLTQyNiAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttaW4td2lkdGg6MTE1cHh9Lnl0cC1jZS1zaXplLTQyNiAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZz46bm90KC55dHAtY2Utc3Vic2NyaWJlLWNvbnRhaW5lcil7d2lkdGg6MTE1cHh9Lnl0cC1jZS1zaXplLTQyNi55dHAtY2UtYm90dG9tLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZywueXRwLWNlLXNpemUtNDI2Lnl0cC1jZS10b3AtbGVmdC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDRweCAwIDEycHh9Lnl0cC1jZS1zaXplLTQyNi55dHAtY2UtYm90dG9tLXJpZ2h0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmcsLnl0cC1jZS1zaXplLTQyNi55dHAtY2UtdG9wLXJpZ2h0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWFyZ2luOjAgMTJweCAwIDRweH0ueXRwLWNlLXNpemUtNDI2IC55dHAtY2UtZXhwYW5kaW5nLWljb257Ym90dG9tOjRweDtyaWdodDo0cHh9Lnl0cC1jZS1zaXplLTQyNi55dHAtY2UtY2hhbm5lbC10aGF0IC55dHAtY2UtY2hhbm5lbC1tZXRhZGF0YXttYXJnaW4tdG9wOjB9Lnl0cC1jZS1zaXplLTM0NiAueXRwLWNlLXBsYXlsaXN0LXRpdGxlLC55dHAtY2Utc2l6ZS0zNDYgLnl0cC1jZS12aWRlby10aXRsZSwueXRwLWNlLXNpemUtNDI2IC55dHAtY2UtcGxheWxpc3QtdGl0bGUsLnl0cC1jZS1zaXplLTQyNiAueXRwLWNlLXZpZGVvLXRpdGxlLC55dHAtY2Utc2l6ZS00NzAgLnl0cC1jZS1tZXJjaGFuZGlzZS10aXRsZXtkaXNwbGF5OmlubGluZS1ibG9jaztvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7bWF4LXdpZHRoOjg1JX0ueXRwLWNlLXNpemUtNDcwe2ZvbnQtc2l6ZToxMnB4fS55dHAtY2Utc2l6ZS00NzAgLnl0cC1jZS1jaGFubmVsLXRpdGxlLC55dHAtY2Utc2l6ZS00NzAgLnl0cC1jZS1tZXJjaGFuZGlzZS10aXRsZSwueXRwLWNlLXNpemUtNDcwIC55dHAtY2Utd2Vic2l0ZS10aXRsZXtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxNHB4fS55dHAtY2Utc2l6ZS00NzAgLnl0cC1jZS1tZXJjaGFuZGlzZS1nb3RvLC55dHAtY2Utc2l6ZS00NzAgLnl0cC1jZS13ZWJzaXRlLWdvdG97Zm9udC1zaXplOjEycHh9Lnl0cC1jZS1zaXplLTQ3MCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttaW4td2lkdGg6MTM2cHh9Lnl0cC1jZS1zaXplLTQ3MCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZz46bm90KC55dHAtY2Utc3Vic2NyaWJlLWNvbnRhaW5lcil7d2lkdGg6MTM2cHh9Lnl0cC1jZS1zaXplLTQ3MC55dHAtY2UtYm90dG9tLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZywueXRwLWNlLXNpemUtNDcwLnl0cC1jZS10b3AtbGVmdC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDRweCAwIDEycHh9Lnl0cC1jZS1zaXplLTQ3MC55dHAtY2UtYm90dG9tLXJpZ2h0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmcsLnl0cC1jZS1zaXplLTQ3MC55dHAtY2UtdG9wLXJpZ2h0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWFyZ2luOjAgMTJweCAwIDRweH0ueXRwLWNlLXNpemUtNDcwIC55dHAtY2UtZXhwYW5kaW5nLWljb257Ym90dG9tOjRweDtyaWdodDo0cHh9Lnl0cC1jZS1zaXplLTUwNntmb250LXNpemU6MTJweH0ueXRwLWNlLXNpemUtNTA2IC55dHAtY2UtY2hhbm5lbC10aXRsZSwueXRwLWNlLXNpemUtNTA2IC55dHAtY2UtbWVyY2hhbmRpc2UtdGl0bGUsLnl0cC1jZS1zaXplLTUwNiAueXRwLWNlLXdlYnNpdGUtdGl0bGV7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MTRweH0ueXRwLWNlLXNpemUtNTA2IC55dHAtY2UtbWVyY2hhbmRpc2UtZ290bywueXRwLWNlLXNpemUtNTA2IC55dHAtY2Utd2Vic2l0ZS1nb3Rve2ZvbnQtc2l6ZToxMnB4fS55dHAtY2Utc2l6ZS01MDYgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWluLXdpZHRoOjEzNnB4fS55dHAtY2Utc2l6ZS01MDYgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmc+Om5vdCgueXRwLWNlLXN1YnNjcmliZS1jb250YWluZXIpe3dpZHRoOjEzNnB4fS55dHAtY2Utc2l6ZS01MDYueXRwLWNlLWJvdHRvbS1sZWZ0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmcsLnl0cC1jZS1zaXplLTUwNi55dHAtY2UtdG9wLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttYXJnaW46MCA0cHggMCAxMnB4fS55dHAtY2Utc2l6ZS01MDYueXRwLWNlLWJvdHRvbS1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nLC55dHAtY2Utc2l6ZS01MDYueXRwLWNlLXRvcC1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDEycHggMCA0cHh9Lnl0cC1jZS1zaXplLTUwNiAueXRwLWNlLWV4cGFuZGluZy1pY29ue2JvdHRvbTo0cHg7cmlnaHQ6NHB4fS55dHAtY2Utc2l6ZS01NzB7Zm9udC1zaXplOjEycHh9Lnl0cC1jZS1zaXplLTU3MCAueXRwLWNlLWNoYW5uZWwtdGl0bGUsLnl0cC1jZS1zaXplLTU3MCAueXRwLWNlLW1lcmNoYW5kaXNlLXRpdGxlLC55dHAtY2Utc2l6ZS01NzAgLnl0cC1jZS13ZWJzaXRlLXRpdGxle2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjE0cHh9Lnl0cC1jZS1zaXplLTU3MCAueXRwLWNlLW1lcmNoYW5kaXNlLWdvdG8sLnl0cC1jZS1zaXplLTU3MCAueXRwLWNlLXdlYnNpdGUtZ290b3tmb250LXNpemU6MTJweH0ueXRwLWNlLXNpemUtNTcwIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21pbi13aWR0aDoxMzZweH0ueXRwLWNlLXNpemUtNTcwIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nPjpub3QoLnl0cC1jZS1zdWJzY3JpYmUtY29udGFpbmVyKXt3aWR0aDoxMzZweH0ueXRwLWNlLXNpemUtNTcwLnl0cC1jZS1ib3R0b20tbGVmdC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nLC55dHAtY2Utc2l6ZS01NzAueXRwLWNlLXRvcC1sZWZ0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWFyZ2luOjAgNHB4IDAgMTJweH0ueXRwLWNlLXNpemUtNTcwLnl0cC1jZS1ib3R0b20tcmlnaHQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZywueXRwLWNlLXNpemUtNTcwLnl0cC1jZS10b3AtcmlnaHQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttYXJnaW46MCAxMnB4IDAgNHB4fS55dHAtY2Utc2l6ZS01NzAgLnl0cC1jZS1leHBhbmRpbmctaWNvbntib3R0b206NHB4O3JpZ2h0OjRweH0ueXRwLWNlLXNpemUtNjQwe2ZvbnQtc2l6ZToxMnB4fS55dHAtY2Utc2l6ZS02NDAgLnl0cC1jZS1wbGF5bGlzdC10aXRsZSwueXRwLWNlLXNpemUtNjQwIC55dHAtY2UtdmlkZW8tdGl0bGV7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MTVweDttYXgtaGVpZ2h0OjMwcHh9Lnl0cC1jZS1zaXplLTY0MCAueXRwLWNlLWNoYW5uZWwtdGl0bGUsLnl0cC1jZS1zaXplLTY0MCAueXRwLWNlLW1lcmNoYW5kaXNlLXRpdGxlLC55dHAtY2Utc2l6ZS02NDAgLnl0cC1jZS13ZWJzaXRlLXRpdGxle2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0OjE1cHh9Lnl0cC1jZS1zaXplLTY0MCAueXRwLWNlLW1lcmNoYW5kaXNlLWdvdG8sLnl0cC1jZS1zaXplLTY0MCAueXRwLWNlLXdlYnNpdGUtZ290b3tmb250LXNpemU6MTJweH0ueXRwLWNlLXNpemUtNjQwIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21pbi13aWR0aDoxMzZweH0ueXRwLWNlLXNpemUtNjQwIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nPjpub3QoLnl0cC1jZS1zdWJzY3JpYmUtY29udGFpbmVyKXt3aWR0aDoxMzZweH0ueXRwLWNlLXNpemUtNjQwLnl0cC1jZS1ib3R0b20tbGVmdC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nLC55dHAtY2Utc2l6ZS02NDAueXRwLWNlLXRvcC1sZWZ0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWFyZ2luOjAgOHB4IDAgMTZweH0ueXRwLWNlLXNpemUtNjQwLnl0cC1jZS1ib3R0b20tcmlnaHQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZywueXRwLWNlLXNpemUtNjQwLnl0cC1jZS10b3AtcmlnaHQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttYXJnaW46MCAxNnB4IDAgOHB4fS55dHAtY2Utc2l6ZS02NDAgLnl0cC1jZS1leHBhbmRpbmctaWNvbntib3R0b206OHB4O3JpZ2h0OjhweH0ueXRwLWNlLXNpemUtODUze2ZvbnQtc2l6ZToxNHB4fS55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1wbGF5bGlzdC10aXRsZSwueXRwLWNlLXNpemUtODUzIC55dHAtY2UtdmlkZW8tdGl0bGV7Zm9udC1zaXplOjE1cHg7bGluZS1oZWlnaHQ6MThweDttYXJnaW46MTBweCAxMnB4O21heC1oZWlnaHQ6MzZweH0ueXRwLWNlLXNpemUtODUzIC55dHAtY2UtdmlkZW8tZHVyYXRpb257bWFyZ2luOjAgNnB4IDZweCAwfS55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1jaGFubmVsLXRpdGxlLC55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1tZXJjaGFuZGlzZS10aXRsZSwueXRwLWNlLXNpemUtODUzIC55dHAtY2Utd2Vic2l0ZS10aXRsZXtmb250LXNpemU6MTVweDtsaW5lLWhlaWdodDoxOHB4fS55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1tZXJjaGFuZGlzZS1nb3RvLC55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS13ZWJzaXRlLWdvdG97Zm9udC1zaXplOjEycHh9Lnl0cC1jZS1zaXplLTg1My55dHAtY2UtY2hhbm5lbC10aGlzIC55dHAtY2UtY2hhbm5lbC1tZXRhZGF0YXtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxNHB4O21hcmdpbi10b3A6OHB4O3BhZGRpbmctdG9wOjhweDttYXgtaGVpZ2h0OjQycHg7ZGlzcGxheTpibG9ja30ueXRwLWNlLXNpemUtODUzLnl0cC1jZS1jaGFubmVsLXRoYXQgLnl0cC1jZS1jaGFubmVsLW1ldGFkYXRhe2ZvbnQtc2l6ZToxNXB4O2xpbmUtaGVpZ2h0OjE4cHg7bWFyZ2luLXRvcDo0cHg7bWF4LWhlaWdodDo1NHB4fS55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWluLXdpZHRoOjE3NnB4fS55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmc+Om5vdCgueXRwLWNlLXN1YnNjcmliZS1jb250YWluZXIpe3dpZHRoOjE3NnB4fS55dHAtY2Utc2l6ZS04NTMueXRwLWNlLWJvdHRvbS1sZWZ0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmcsLnl0cC1jZS1zaXplLTg1My55dHAtY2UtdG9wLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttYXJnaW46MCA4cHggMCAxNnB4fS55dHAtY2Utc2l6ZS04NTMueXRwLWNlLWJvdHRvbS1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nLC55dHAtY2Utc2l6ZS04NTMueXRwLWNlLXRvcC1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDE2cHggMCA4cHh9Lnl0cC1jZS1zaXplLTg1MyAueXRwLWNlLWV4cGFuZGluZy1pY29uey13ZWJraXQtYmFja2dyb3VuZC1zaXplOjI0cHggMjRweDtiYWNrZ3JvdW5kLXNpemU6MjRweCAyNHB4O2JvdHRvbTo4cHg7aGVpZ2h0OjMycHg7cmlnaHQ6OHB4O3dpZHRoOjMycHh9Lnl0cC1jZS1zaXplLTg1MyAueXRwLWNlLXBsYXlsaXN0LWljb257bGVmdDo4cHg7dG9wOjRweH0ueXRwLWNlLXNpemUtODUzIC55dHAtY2UtcGxheWxpc3QtY291bnQtdGV4dHtoZWlnaHQ6MzJweDtsaW5lLWhlaWdodDozMnB4O21hcmdpbi1sZWZ0OjQwcHh9Lnl0cC1jZS1zaXplLTEyODB7Zm9udC1zaXplOjE4cHh9Lnl0cC1jZS1zaXplLTEyODAgLnl0cC1jZS1wbGF5bGlzdC10aXRsZSwueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLXZpZGVvLXRpdGxle2ZvbnQtc2l6ZToyMXB4O2xpbmUtaGVpZ2h0OjI0cHg7bWFyZ2luOjE4cHggMjBweDttYXgtaGVpZ2h0OjQ4cHh9Lnl0cC1jZS1zaXplLTEyODAgLnl0cC1jZS12aWRlby1kdXJhdGlvbnttYXJnaW46MCAxMnB4IDEycHggMH0ueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLWNoYW5uZWwtdGl0bGUsLnl0cC1jZS1zaXplLTEyODAgLnl0cC1jZS1tZXJjaGFuZGlzZS10aXRsZSwueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLXdlYnNpdGUtdGl0bGV7Zm9udC1zaXplOjIxcHg7bGluZS1oZWlnaHQ6MjRweH0ueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLW1lcmNoYW5kaXNlLWdvdG8sLnl0cC1jZS1zaXplLTEyODAgLnl0cC1jZS1tZXJjaGFuZGlzZS1tZXRhZGF0YSwueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLW1lcmNoYW5kaXNlLXByaWNlLWNvbnRhaW5lciwueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLXdlYnNpdGUtZ290bywueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLXdlYnNpdGUtbWV0YWRhdGF7Zm9udC1zaXplOjE4cHg7bWFyZ2luLXRvcDo4cHh9Lnl0cC1jZS1zaXplLTEyODAgLnl0cC1jZS1jaGFubmVsLW1ldGFkYXRhe2ZvbnQtc2l6ZToxOHB4O2xpbmUtaGVpZ2h0OjIxcHg7bWF4LWhlaWdodDo2M3B4fS55dHAtY2Utc2l6ZS0xMjgwIC55dHAtY2UtY2hhbm5lbC1zdWJzY3JpYmV7aGVpZ2h0OjMycHg7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS4zKTstbXMtdHJhbnNmb3JtOnNjYWxlKDEuMyk7dHJhbnNmb3JtOnNjYWxlKDEuMyl9Lnl0cC1jZS1zaXplLTEyODAueXRwLWNlLWNoYW5uZWwtdGhhdCAueXRwLWNlLWNoYW5uZWwtc3Vic2NyaWJlcnMtdGV4dHtkaXNwbGF5OmJsb2NrfS55dHAtY2Utc2l6ZS0xMjgwLnl0cC1jZS1jaGFubmVsLXRoaXMgLnl0cC1jZS1jaGFubmVsLW1ldGFkYXRhe21hcmdpbi10b3A6MTJweDtwYWRkaW5nLXRvcDoxMnB4O2Rpc3BsYXk6YmxvY2t9Lnl0cC1jZS1zaXplLTEyODAgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWluLXdpZHRoOjI2NHB4fS55dHAtY2Utc2l6ZS0xMjgwIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nPjpub3QoLnl0cC1jZS1zdWJzY3JpYmUtY29udGFpbmVyKXt3aWR0aDoyNjRweH0ueXRwLWNlLXNpemUtMTI4MC55dHAtY2UtYm90dG9tLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZywueXRwLWNlLXNpemUtMTI4MC55dHAtY2UtdG9wLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttYXJnaW46MCAxNnB4IDAgMzJweH0ueXRwLWNlLXNpemUtMTI4MC55dHAtY2UtYm90dG9tLXJpZ2h0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmcsLnl0cC1jZS1zaXplLTEyODAueXRwLWNlLXRvcC1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDMycHggMCAxNnB4fS55dHAtY2Utc2l6ZS0xMjgwIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYmFja2dyb3VuZHttYXJnaW46LTE2cHg7cGFkZGluZzoxNnB4fS55dHAtY2Utc2l6ZS0xMjgwIC55dHAtY2UtZXhwYW5kaW5nLWljb257LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6MzJweCAzMnB4O2JhY2tncm91bmQtc2l6ZTozMnB4IDMycHg7Ym90dG9tOjEwcHg7aGVpZ2h0OjQwcHg7cmlnaHQ6MTBweDt3aWR0aDo0MHB4fS55dHAtY2Utc2l6ZS0xMjgwIC55dHAtY2UtcGxheWxpc3QtaWNvbntsZWZ0OjEwcHg7dG9wOjhweH0ueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLXBsYXlsaXN0LWNvdW50LXRleHR7aGVpZ2h0OjQwcHg7bGluZS1oZWlnaHQ6NDBweDttYXJnaW4tbGVmdDo0NnB4fS55dHAtY2Utc2l6ZS0xOTIwe2ZvbnQtc2l6ZToyOHB4fS55dHAtY2Utc2l6ZS0xOTIwIC55dHAtY2UtcGxheWxpc3QtdGl0bGUsLnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS12aWRlby10aXRsZXtmb250LXNpemU6MzJweDtsaW5lLWhlaWdodDozOHB4O21hcmdpbjoxOHB4IDIwcHg7bWF4LWhlaWdodDo3NnB4fS55dHAtY2Utc2l6ZS0xOTIwIC55dHAtY2UtdmlkZW8tZHVyYXRpb257bWFyZ2luOjAgMjBweCAyMHB4IDB9Lnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1jaGFubmVsLXRpdGxlLC55dHAtY2Utc2l6ZS0xOTIwIC55dHAtY2UtbWVyY2hhbmRpc2UtdGl0bGUsLnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS13ZWJzaXRlLXRpdGxle2ZvbnQtc2l6ZTozMnB4O2xpbmUtaGVpZ2h0OjM4cHh9Lnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1tZXJjaGFuZGlzZS1nb3RvLC55dHAtY2Utc2l6ZS0xOTIwIC55dHAtY2UtbWVyY2hhbmRpc2UtbWV0YWRhdGEsLnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1tZXJjaGFuZGlzZS1wcmljZS1jb250YWluZXIsLnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS13ZWJzaXRlLWdvdG8sLnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS13ZWJzaXRlLW1ldGFkYXRhe2ZvbnQtc2l6ZToyOHB4O21hcmdpbi10b3A6MTJweH0ueXRwLWNlLXNpemUtMTkyMCAueXRwLWNlLWNoYW5uZWwtbWV0YWRhdGF7Zm9udC1zaXplOjI4cHg7bGluZS1oZWlnaHQ6MzRweDttYXgtaGVpZ2h0OjEwMnB4fS55dHAtY2Utc2l6ZS0xOTIwIC55dHAtY2UtY2hhbm5lbC1zdWJzY3JpYmV7aGVpZ2h0OjgwcHg7bWFyZ2luLXRvcDotMTZweDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgyLjUpOy1tcy10cmFuc2Zvcm06c2NhbGUoMi41KTt0cmFuc2Zvcm06c2NhbGUoMi41KX0ueXRwLWNlLXNpemUtMTkyMC55dHAtY2UtY2hhbm5lbC10aGF0IC55dHAtY2UtY2hhbm5lbC1zdWJzY3JpYmVycy10ZXh0e2Rpc3BsYXk6YmxvY2t9Lnl0cC1jZS1zaXplLTE5MjAueXRwLWNlLWNoYW5uZWwtdGhpcyAueXRwLWNlLWNoYW5uZWwtbWV0YWRhdGF7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOjE4cHg7cGFkZGluZy10b3A6MThweH0ueXRwLWNlLXNpemUtMTkyMCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttaW4td2lkdGg6MzkycHh9Lnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmc+Om5vdCgueXRwLWNlLXN1YnNjcmliZS1jb250YWluZXIpe3dpZHRoOjM5MnB4fS55dHAtY2Utc2l6ZS0xOTIwLnl0cC1jZS1ib3R0b20tbGVmdC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nLC55dHAtY2Utc2l6ZS0xOTIwLnl0cC1jZS10b3AtbGVmdC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDI0cHggMCA0OHB4fS55dHAtY2Utc2l6ZS0xOTIwLnl0cC1jZS1ib3R0b20tcmlnaHQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZywueXRwLWNlLXNpemUtMTkyMC55dHAtY2UtdG9wLXJpZ2h0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWFyZ2luOjAgNDhweCAwIDI0cHh9Lnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1iYWNrZ3JvdW5ke21hcmdpbjotMjRweDtwYWRkaW5nOjI0cHh9Lnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1leHBhbmRpbmctaWNvbnstd2Via2l0LWJhY2tncm91bmQtc2l6ZTo1NnB4IDU2cHg7YmFja2dyb3VuZC1zaXplOjU2cHggNTZweDtib3R0b206MjBweDtoZWlnaHQ6NjJweDtyaWdodDoyMHB4O3dpZHRoOjYycHh9Lnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1wbGF5bGlzdC1pY29ue2xlZnQ6MTJweDt0b3A6MTJweH0ueXRwLWNlLXNpemUtMTkyMCAueXRwLWNlLXBsYXlsaXN0LWljb257aGVpZ2h0OjMycHg7d2lkdGg6MzJweH0ueXRwLWNlLXNpemUtMTkyMCAueXRwLWNlLXBsYXlsaXN0LWNvdW50LXRleHR7aGVpZ2h0OjU2cHg7bGluZS1oZWlnaHQ6NTZweDttYXJnaW4tbGVmdDo1NnB4fS55dHAtY2UtY2hhbm5lbC1zdWJzY3JpYmUueXRwLWNlLXN1YnNjcmliZS1idXR0b257aGVpZ2h0OmF1dG87bWFyZ2luLXRvcDowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpOy1tcy10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfS55dHAtY2Utc2l6ZS0zNDYgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1jZS1zaXplLTM0NiAueXRwLXNiLXVuc3Vic2NyaWJlLC55dHAtY2Utc2l6ZS00MjYgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1jZS1zaXplLTQyNiAueXRwLXNiLXVuc3Vic2NyaWJlLC55dHAtY2Utc2l6ZS00NzAgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1jZS1zaXplLTQ3MCAueXRwLXNiLXVuc3Vic2NyaWJlLC55dHAtY2Utc2l6ZS01MDYgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1jZS1zaXplLTUwNiAueXRwLXNiLXVuc3Vic2NyaWJle2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6OHB4fS55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3RvcDowO2xlZnQ6MDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7YmFja2dyb3VuZC1zaXplOmNvdmVyOy1tb3otYmFja2dyb3VuZC1zaXplOmNvdmVyOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyfS55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheS55dHAtZXhwLWNvbnRhaW4tdGh1bWJuYWlse2JhY2tncm91bmQtc2l6ZTpjb250YWluOy1tb3otYmFja2dyb3VuZC1zaXplOmNvbnRhaW47LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y29udGFpbn0ueXRwLWN1ZWQtdGh1bWJuYWlsLW92ZXJsYXlbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheS1pbWFnZXtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7LW1vei1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGV9Lnl0cC1jdWVkLXRodW1ibmFpbC1vdmVybGF5Lnl0cC1leHAtZnJhbWUwIC55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheS1pbWFnZXt6LWluZGV4OjEwfS55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheS55dHAtZXhwLWNvbnRhaW4tdGh1bWJuYWlsIC55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheS1pbWFnZXtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjstbW96LWJhY2tncm91bmQtc2l6ZTpjb250YWluOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW59LmVuZGVkLW1vZGUgLnl0cC1jdWVkLXRodW1ibmFpbC1vdmVybGF5Om5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pLC51bnN0YXJ0ZWQtbW9kZTpub3QoLnBsYXlpbmctbW9kZSkgLnl0cC1jdWVkLXRodW1ibmFpbC1vdmVybGF5Om5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pe2N1cnNvcjpwb2ludGVyfS55dHAtY2hhcHRlci1zZWVrLXRleHR7ZGlzcGxheTpub25lO3dpZHRoOjgwJTttYXJnaW4tbGVmdDoxMCU7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6NzAwO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWNoYXB0ZXItc2VlayAueXRwLWNoYXB0ZXItc2Vlay10ZXh0e3dpZHRoOjEwMCU7ZGlzcGxheTpibG9ja31ALXdlYmtpdC1rZXlmcmFtZXMgYXJyb3ctZmFkZS1vdXQtMXswJXtvcGFjaXR5OjB9MTcle29wYWNpdHk6Ljl9MzMle29wYWNpdHk6LjZ9NTAle29wYWNpdHk6LjN9Njcle29wYWNpdHk6LjN9ODMle29wYWNpdHk6LjN9dG97b3BhY2l0eTowfX1Aa2V5ZnJhbWVzIGFycm93LWZhZGUtb3V0LTF7MCV7b3BhY2l0eTowfTE3JXtvcGFjaXR5Oi45fTMzJXtvcGFjaXR5Oi42fTUwJXtvcGFjaXR5Oi4zfTY3JXtvcGFjaXR5Oi4zfTgzJXtvcGFjaXR5Oi4zfXRve29wYWNpdHk6MH19QC13ZWJraXQta2V5ZnJhbWVzIGFycm93LWZhZGUtb3V0LTJ7MCV7b3BhY2l0eTowfTE3JXtvcGFjaXR5Oi4zfTMzJXtvcGFjaXR5Oi45fTUwJXtvcGFjaXR5Oi42fTY3JXtvcGFjaXR5Oi4zfTgzJXtvcGFjaXR5Oi4zfXRve29wYWNpdHk6MH19QGtleWZyYW1lcyBhcnJvdy1mYWRlLW91dC0yezAle29wYWNpdHk6MH0xNyV7b3BhY2l0eTouM30zMyV7b3BhY2l0eTouOX01MCV7b3BhY2l0eTouNn02NyV7b3BhY2l0eTouM304MyV7b3BhY2l0eTouM310b3tvcGFjaXR5OjB9fUAtd2Via2l0LWtleWZyYW1lcyBhcnJvdy1mYWRlLW91dC0zezAle29wYWNpdHk6MH0xNyV7b3BhY2l0eTouM30zMyV7b3BhY2l0eTouM301MCV7b3BhY2l0eTouOX02NyV7b3BhY2l0eTouNn04MyV7b3BhY2l0eTouM310b3tvcGFjaXR5OjB9fUBrZXlmcmFtZXMgYXJyb3ctZmFkZS1vdXQtM3swJXtvcGFjaXR5OjB9MTcle29wYWNpdHk6LjN9MzMle29wYWNpdHk6LjN9NTAle29wYWNpdHk6Ljl9Njcle29wYWNpdHk6LjZ9ODMle29wYWNpdHk6LjN9dG97b3BhY2l0eTowfX0ueXRwLWRvdWJsZXRhcC11aS1sZWdhY3l7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO2NvbG9yOiNkZGQ7ei1pbmRleDoxOX0ueXRwLWRvdWJsZXRhcC1mYXN0LWZvcndhcmQtdmUsLnl0cC1kb3VibGV0YXAtcmV3aW5kLXZle29wYWNpdHk6MDtwb3NpdGlvbjphYnNvbHV0ZTtwb2ludGVyLWV2ZW50czpub25lfS55dHAtZG91YmxldGFwLW92ZXJsYXktYTExeXtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2JhY2tncm91bmQtY29sb3I6IzAwMDtvcGFjaXR5Oi4yO3otaW5kZXg6LTF9Lnl0cC1kb3VibGV0YXAtc3RhdGljLWNpcmNsZXtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpO3RvcDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7b3ZlcmZsb3c6aGlkZGVufS55dHAtZG91YmxldGFwLXJpcHBsZXtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjIxLDIyMSwyMjEsLjE1KTstd2Via2l0LWFuaW1hdGlvbjpncm93LWNpcmNsZSAuOXMgMTthbmltYXRpb246Z3Jvdy1jaXJjbGUgLjlzIDE7dmVydGljYWwtYWxpZ246bWlkZGxlfUAtd2Via2l0LWtleWZyYW1lcyBncm93LWNpcmNsZXswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwKTt0cmFuc2Zvcm06c2NhbGUoMCl9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgtMjUlKTt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgtMjUlKX19QGtleWZyYW1lcyBncm93LWNpcmNsZXswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwKTt0cmFuc2Zvcm06c2NhbGUoMCl9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgtMjUlKTt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgtMjUlKX19Lnl0cC1kb3VibGV0YXAtc2Vlay1pbmZvLWNvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6NTAlfS55dHAtZG91YmxldGFwLXVpLWxlZ2FjeS55dHAtdGltZS1zZWVraW5nIC55dHAtZG91YmxldGFwLW92ZXJsYXktYTExeXtkaXNwbGF5Om5vbmV9Lnl0cC1kb3VibGV0YXAtdWktbGVnYWN5Lnl0cC1jaGFwdGVyLXNlZWsgLnl0cC1kb3VibGV0YXAtc2Vlay1pbmZvLWNvbnRhaW5lcnt0ZXh0LWFsaWduOmNlbnRlcn0ueXRwLWRvdWJsZXRhcC11aS1sZWdhY3lbZGF0YS1zaWRlPWJhY2tdOm5vdCgueXRwLWNoYXB0ZXItc2VlaykgLnl0cC1kb3VibGV0YXAtc2Vlay1pbmZvLWNvbnRhaW5lcntsZWZ0OjEwJTt0ZXh0LWFsaWduOmxlZnR9Lnl0cC1kb3VibGV0YXAtdWktbGVnYWN5W2RhdGEtc2lkZT1mb3J3YXJkXTpub3QoLnl0cC1jaGFwdGVyLXNlZWspIC55dHAtZG91YmxldGFwLXNlZWstaW5mby1jb250YWluZXJ7bGVmdDo4MCU7dGV4dC1hbGlnbjpsZWZ0fS55dHAtZG91YmxldGFwLXRvb2x0aXB7cGFkZGluZy10b3A6OHB4O2NvbG9yOiNkZGR9Lnl0cC1kb3VibGV0YXAtdWktbGVnYWN5W2RhdGEtc2lkZT1iYWNrXSAueXRwLWRvdWJsZXRhcC10b29sdGlwe21hcmdpbi1sZWZ0OjhweH0ueXRwLWRvdWJsZXRhcC11aS1sZWdhY3lbZGF0YS1zaWRlPWZvcndhcmRdIC55dHAtZG91YmxldGFwLXRvb2x0aXB7bWFyZ2luLWxlZnQ6LTVweH0ueXRwLWRvdWJsZXRhcC10b29sdGlwLWxhYmVse3RleHQtYWxpZ246bGVmdDtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo1MDB9Lnl0cC1zZWVrLWljb24tdGV4dC1jb250YWluZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luLWxlZnQ6MTAlO3dpZHRoOjgwJX0ueXRwLXNlZWstaWNvbnttYXJnaW4tcmlnaHQ6NXB4fS55dHAtY2hhcHRlci1zZWVrLXRleHQtbGVnYWN5e2Rpc3BsYXk6bm9uZTtmb250LXNpemU6MThweDtmb250LXdlaWdodDo3MDA7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtY2hhcHRlci1zZWVrIC55dHAtY2hhcHRlci1zZWVrLXRleHQtbGVnYWN5e2Rpc3BsYXk6YmxvY2t9Lnl0cC1kb3VibGV0YXAtYXJyb3dzLWNvbnRhaW5lcnt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0cC1kb3VibGV0YXAtYmFzZS1hcnJvd3t3aWR0aDowO2hlaWdodDowO2JvcmRlcjoxMHB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6N3B4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206N3B4IHNvbGlkIHRyYW5zcGFyZW50O2Rpc3BsYXk6aW5saW5lLWJsb2NrOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjoxLjJzO2FuaW1hdGlvbi1kdXJhdGlvbjoxLjJzOy13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDppbmZpbml0ZTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlfS55dHAtZG91YmxldGFwLXVpLWxlZ2FjeVtkYXRhLXNpZGU9Zm9yd2FyZF0gLnl0cC1kb3VibGV0YXAtYmFzZS1hcnJvd3tib3JkZXItbGVmdDoxMXB4IHNvbGlkICNkZGR9Lnl0cC1kb3VibGV0YXAtdWktbGVnYWN5W2RhdGEtc2lkZT1iYWNrXSAueXRwLWRvdWJsZXRhcC1iYXNlLWFycm93e2JvcmRlci1yaWdodDoxMXB4IHNvbGlkICNkZGR9Lnl0cC1kb3VibGV0YXAtdWktbGVnYWN5W2RhdGEtc2lkZT1iYWNrXSAueXRwLWRvdWJsZXRhcC1iYXNlLWFycm93Om50aC1jaGlsZCgzKSwueXRwLWRvdWJsZXRhcC11aS1sZWdhY3lbZGF0YS1zaWRlPWZvcndhcmRdIC55dHAtZG91YmxldGFwLWJhc2UtYXJyb3c6Zmlyc3QtY2hpbGR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTphcnJvdy1mYWRlLW91dC0xO2FuaW1hdGlvbi1uYW1lOmFycm93LWZhZGUtb3V0LTF9Lnl0cC1kb3VibGV0YXAtdWktbGVnYWN5W2RhdGEtc2lkZT1iYWNrXSAueXRwLWRvdWJsZXRhcC1iYXNlLWFycm93Om50aC1jaGlsZCgyKSwueXRwLWRvdWJsZXRhcC11aS1sZWdhY3lbZGF0YS1zaWRlPWZvcndhcmRdIC55dHAtZG91YmxldGFwLWJhc2UtYXJyb3c6bnRoLWNoaWxkKDIpey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6YXJyb3ctZmFkZS1vdXQtMjthbmltYXRpb24tbmFtZTphcnJvdy1mYWRlLW91dC0yfS55dHAtZG91YmxldGFwLXVpLWxlZ2FjeVtkYXRhLXNpZGU9YmFja10gLnl0cC1kb3VibGV0YXAtYmFzZS1hcnJvdzpmaXJzdC1jaGlsZCwueXRwLWRvdWJsZXRhcC11aS1sZWdhY3lbZGF0YS1zaWRlPWZvcndhcmRdIC55dHAtZG91YmxldGFwLWJhc2UtYXJyb3c6bnRoLWNoaWxkKDMpey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6YXJyb3ctZmFkZS1vdXQtMzthbmltYXRpb24tbmFtZTphcnJvdy1mYWRlLW91dC0zfS55dHAtc2Vlay1vdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO3otaW5kZXg6MTA7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwb2ludGVyLWV2ZW50czpub25lO2RpcmVjdGlvbjpsdHJ9Lmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlIC55dHAtc2Vlay1vdmVybGF5e2Rpc3BsYXk6bm9uZX0ueXRwLXNlZWstb3ZlcmxheS1hbmltYXRpb257cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO29wYWNpdHk6MH0ueXRwLXNlZWstb3ZlcmxheS1hbmltYXRpb24ueXRwLXNlZWstb3ZlcmxheS1hbmltYXRpb24tYmFja3tsZWZ0OjQ4cHh9Lnl0cC1zZWVrLW92ZXJsYXktYW5pbWF0aW9uLnl0cC1zZWVrLW92ZXJsYXktYW5pbWF0aW9uLWZvcndhcmR7cmlnaHQ6NDhweH0ueXRwLXNlZWstb3ZlcmxheS1kdXJhdGlvbntjb2xvcjp3aGl0ZTtmb250LXNpemU6MjRweDtsaW5lLWhlaWdodDoyNHB4O2ZvbnQtd2VpZ2h0OjcwMDt0ZXh0LXNoYWRvdzowIDAgMXB4IHJnYmEoMCwwLDAsLjgpOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7LW1zLXRyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyfS55dHAtc2Vlay1vdmVybGF5LWFuaW1hdGlvbi1iYWNrIC55dHAtc2Vlay1vdmVybGF5LWFycm93e21hcmdpbi1yaWdodDoyMHB4fS55dHAtc2Vlay1vdmVybGF5LWFuaW1hdGlvbi1mb3J3YXJkIC55dHAtc2Vlay1vdmVybGF5LWFycm93e21hcmdpbi1sZWZ0OjIwcHh9Lnl0cC1zZWVrLW92ZXJsYXktYXJyb3cgc3Zne2Rpc3BsYXk6YmxvY2t9Lnl0cC1zZWVrLW92ZXJsYXktYXJyb3cgc3ZnIHBhdGh7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIC41cHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgLjVweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1zZWVrLW92ZXJsYXktYXJyb3ctcGVyc2lzdGVudHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9Lnl0cC1zZWVrLW92ZXJsYXktYXJyb3ctYWRkaXRpb25hbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zbGF0ZTowIC01MCV9Lnl0cC1zZWVrLW92ZXJsYXktYW5pbWF0aW9uLWJhY2sgLnl0cC1zZWVrLW92ZXJsYXktYXJyb3ctYWRkaXRpb25hbHtsZWZ0OjB9Lnl0cC1zZWVrLW92ZXJsYXktYW5pbWF0aW9uLWZvcndhcmQgLnl0cC1zZWVrLW92ZXJsYXktYXJyb3ctYWRkaXRpb25hbHtyaWdodDowfS55dHAtc2Vlay1vdmVybGF5LW1lc3NhZ2V7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3c7bWF4LXdpZHRoOmNhbGMoMTAwJSAtIDE4MHB4KX0ueXRwLXNlZWstb3ZlcmxheS1tZXNzYWdlLWljb246bm90KDplbXB0eSl7bWFyZ2luLXJpZ2h0OjVweH0ueXRwLXNlZWstb3ZlcmxheS1tZXNzYWdlLXRleHR7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6NzAwO3RleHQtc2hhZG93OjAgMCAxcHggcmdiYSgwLDAsMCwuOCk7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtbW9yZS12aWRlb3Mtdmlld3tvdmVyZmxvdzpoaWRkZW59Lnl0cC1tb3JlLXZpZGVvcy12aWV3IGEueXRwLXN1Z2dlc3Rpb24tbGluazpmb2N1czphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC44KTtib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCByZ2JhKDI3LDEyNywyMDQsLjgpfS55dHAtc2hvcnRzLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3LWNvbnRhaW5lcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDt3aWR0aDppbmhlcml0O2hlaWdodDppbmhlcml0Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0cC1tb3JlLXZpZGVvcy12aWV3Lnl0cC1zY3JvbGwtbWF4IC55dHAtbmV4dCwueXRwLW1vcmUtdmlkZW9zLXZpZXcueXRwLXNjcm9sbC1taW4gLnl0cC1wcmV2aW91cywueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLW5leHQsLnl0cC1wcm9iYWJseS1rZXlib2FyZC1mb2N1cyAueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1wcmV2aW91cywueXRwLXRvdWNoLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtbmV4dCwueXRwLXRvdWNoLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtcHJldmlvdXN7ZGlzcGxheTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3e2JvdHRvbTo3MHB4O21hcmdpbjoyNHB4fS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXJlbGF0ZWQtdGl0bGV7bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1ib3R0b206MTJweDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MjBweH0ueXRwLWJpZy1tb2RlIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXJlbGF0ZWQtdGl0bGV7bWFyZ2luLWJvdHRvbToyNHB4O2ZvbnQtc2l6ZToyOHB4O2xpbmUtaGVpZ2h0OjMycHh9Lnl0cC1tb3JlLXZpZGVvcy12aWV3W2FyaWEtaGlkZGVuPXRydWVdIGEueXRwLXN1Z2dlc3Rpb24tbGlua3tvcGFjaXR5OjB9Lnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtc3VnZ2VzdGlvbnN7b3ZlcmZsb3c6aGlkZGVuO3RleHQtYWxpZ246Y2VudGVyO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLXRvdWNoLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtc3VnZ2VzdGlvbnN7b3ZlcmZsb3cteDphdXRvfS55dHAtdG91Y2gtbW9kZSAueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1zdWdnZXN0aW9uczo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtc3VnZ2VzdGlvbnN7aGVpZ2h0OjE4MHB4fS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24taW1hZ2V7YmFja2dyb3VuZC1jb2xvcjojMDAwO2JhY2tncm91bmQtcG9zaXRpb246NTAlOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3Zlcjtib3JkZXItcmFkaXVzOjhweDtoZWlnaHQ6MTA4cHg7d2lkdGg6MTkycHh9Lnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtbmV4dCwueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1wcmV2aW91c3tiYWNrZ3JvdW5kOiMzMzM7Ym9yZGVyLXJhZGl1czo1MCU7LXdlYmtpdC1ib3gtc2hhZG93OjAgMXB4IDVweCByZ2JhKDAsMCwwLC4yKTtib3gtc2hhZG93OjAgMXB4IDVweCByZ2JhKDAsMCwwLC4yKTtoZWlnaHQ6MzJweDtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVZKDUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNTAlKTt3aWR0aDozMnB4fS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLW5leHQ6aG92ZXIsLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtcHJldmlvdXM6aG92ZXJ7LXdlYmtpdC1ib3gtc2hhZG93OjAgNHB4IDVweCByZ2JhKDAsMCwwLC4yKTtib3gtc2hhZG93OjAgNHB4IDVweCByZ2JhKDAsMCwwLC4yKX0ueXRwLWJpZy1tb2RlIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLW5leHQsLnl0cC1iaWctbW9kZSAueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1wcmV2aW91c3toZWlnaHQ6NjRweDt3aWR0aDo2NHB4fS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLW5leHR7cmlnaHQ6NHB4fS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXByZXZpb3Vze2xlZnQ6NHB4fS55dHAtbW9yZS12aWRlb3MtdmlldyBhLnl0cC1zdWdnZXN0aW9uLWxpbmt7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1yaWdodDo0cHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpsZWZ0O3RvcDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjphbGwgLjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tb3ZlcmxheXtib3R0b206MDtmb250LXNpemU6MTJweDtsZWZ0OjA7cGFkZGluZzo4cHg7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0ueXRwLXNob3J0cy1tb2RlIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tb3ZlcmxheXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtcGFjazplbmQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQoYm90dG9tLHJnYmEoMTIsMTIsMTIsLjgpLHRyYW5zcGFyZW50IDEwMHB4KTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgwZGVnLHJnYmEoMTIsMTIsMTIsLjgpIDAsdHJhbnNwYXJlbnQgMTAwcHgpfS5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtc2hvcnRzLW1vZGUpIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tb3ZlcmxheXtvcGFjaXR5OjA7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AscmdiYSgxMiwxMiwxMiwuOCksdHJhbnNwYXJlbnQgMTAwcHgpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDEyLDEyLDEyLC44KSAwLHRyYW5zcGFyZW50IDEwMHB4KTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tb3ZlcmxheXtmb250LXNpemU6MjBweH0uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLXNob3J0cy1tb2RlKSAueXRwLW1vcmUtdmlkZW9zLXZpZXcgYS55dHAtc3VnZ2VzdGlvbi1saW5rOmZvY3VzIC55dHAtc3VnZ2VzdGlvbi1vdmVybGF5LC5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtc2hvcnRzLW1vZGUpIC55dHAtbW9yZS12aWRlb3MtdmlldyBhLnl0cC1zdWdnZXN0aW9uLWxpbms6aG92ZXIgLnl0cC1zdWdnZXN0aW9uLW92ZXJsYXl7b3BhY2l0eToxfS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tbGluayAueXRwLXN1Z2dlc3Rpb24tZHVyYXRpb257YmFja2dyb3VuZDojMDAwO2JvcmRlci1yYWRpdXM6MnB4O2JvdHRvbTo0cHg7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE7b3BhY2l0eTouNzU7cGFkZGluZzoycHggNHB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjRweH0ueXRwLWJpZy1tb2RlIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tbGluayAueXRwLXN1Z2dlc3Rpb24tZHVyYXRpb257Zm9udC1zaXplOjE3cHh9Lnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtc3VnZ2VzdGlvbi1saW5rIC55dHAtc3VnZ2VzdGlvbi1kdXJhdGlvbltkYXRhLWlzLWxpdmU9dHJ1ZV17YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1icmFuZCxyZ2JhKDIyNSwwLDQ1LC45KSk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tbGluayAueXRwLXN1Z2dlc3Rpb24tZHVyYXRpb246ZW1wdHksLnl0cC1zaG9ydHMtbW9kZSAueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1zdWdnZXN0aW9uLWxpbmsgLnl0cC1zdWdnZXN0aW9uLWR1cmF0aW9ue2Rpc3BsYXk6bm9uZX0uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLXNob3J0cy1tb2RlKSAueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1zdWdnZXN0aW9uLXRpdGxlLC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tYXV0aG9ye292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtc2hvcnRzLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtc3VnZ2VzdGlvbi10aXRsZXtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6MjtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6cHJlLXdyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtc2hvcnRzLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtc3VnZ2VzdGlvbi1hdXRob3J7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MTZweH0ueXRwLXNob3J0cy1tb2RlIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tdGl0bGV7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MThweH0ueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1zdWdnZXN0aW9uLXRpdGxle2ZvbnQtd2VpZ2h0OjUwMH0uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLXNob3J0cy1tb2RlKSAueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1zdWdnZXN0aW9uLXRpdGxle21heC1oZWlnaHQ6MzBweH0ueXRwLWltcHJlc3Npb24tbGlua3tiYWNrZ3JvdW5kOnJnYmEoMjMsMjMsMjMsLjgpO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjJweDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czoycHg7Ym90dG9tOjVweDtoZWlnaHQ6NDdweDtwb3NpdGlvbjphYnNvbHV0ZX0ueXRwLWltcHJlc3Npb24tbGluay10ZXh0e2NvbG9yOndoaXRlO2Zsb2F0OmxlZnQ7Zm9udDo1MDAgMTZweC8xNnB4IFlvdVR1YmUgTm90byxSb2JvdG8sQXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7bWFyZ2luLWxlZnQ6MTJweDttYXJnaW4tdG9wOjE2cHh9Lnl0cC1pbXByZXNzaW9uLWxpbmstbG9nb3tmbG9hdDpyaWdodDtoZWlnaHQ6MTZweDttYXJnaW4tbGVmdDo5cHg7bWFyZ2luLXJpZ2h0OjEycHg7bWFyZ2luLXRvcDoxNnB4O3dpZHRoOjcycHh9Lnl0cC1tdXNpYy1pbXByZXNzaW9uLWxpbmsgLnl0cC1pbXByZXNzaW9uLWxpbmstbG9nb3ttYXJnaW4tdG9wOjE0cHg7bWFyZ2luLWxlZnQ6MDtoZWlnaHQ6MTlweH0ueXRwLW1vYmlsZS1hMTF5LWhpZGRlbi1zZWVrLWJ1dHRvbi1mb3J3YXJkLC55dHAtbW9iaWxlLWExMXktaGlkZGVuLXNlZWstYnV0dG9uLXJld2luZHt3aWR0aDoxcHg7aGVpZ2h0OjFweH0ueXRwLW11dGVkLWF1dG9wbGF5LWVuZHNjcmVlbi1vdmVybGF5LC55dHAtbXV0ZWQtYXV0b3BsYXktb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3RvcDowO2xlZnQ6MDt6LWluZGV4OjEwMDE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7YmFja2dyb3VuZC1zaXplOmNvdmVyOy1tb3otYmFja2dyb3VuZC1zaXplOmNvdmVyOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyfS55dHAtbXV0ZWQtYXV0b3BsYXktZW5kc2NyZWVuLW92ZXJsYXlbYXJpYS1oaWRkZW49dHJ1ZV0sLnl0cC1tdXRlZC1hdXRvcGxheS1vdmVybGF5W2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLW11dGVkLWF1dG9wbGF5LWJvdHRvbS1idXR0b25ze3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjExcHg7Ym90dG9tOjB9Lnl0cC1tdXRlZC1hdXRvcGxheS1ib3R0b20tYnV0dG9ucyAueXRwLWJ1dHRvbiwueXRwLW11dGVkLWF1dG9wbGF5LWJvdHRvbS1idXR0b25zIC55dHAtd2F0ZXJtYXJre2Rpc3BsYXk6aW5saW5lLWJsb2NrO292ZXJmbG93OmhpZGRlbjt6LWluZGV4OnVuc2V0O21hcmdpbjowIDRweH0ueXRwLW11dGVkLWF1dG9wbGF5LWJvdHRvbS1idXR0b25zIC55dHAtd2F0ZXJtYXJre3JpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmV9Lnl0cC13YXRlcm1hcmsueXRwLW11dGVkLWF1dG9wbGF5LXdhdGVybWFya3tvcGFjaXR5OjF9Lnl0cC13YXRlcm1hcmsueXRwLW11dGVkLWF1dG9wbGF5LXdhdGVybWFya1thcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtbXV0ZWQtYXV0b3BsYXktZXF1YWxpemVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOmF1dG87aGVpZ2h0OmF1dG87Ym90dG9tOjhweH0ueXRwLWVtYmVkLW1vYmlsZSAueXRwLW11dGVkLWF1dG9wbGF5LWVxdWFsaXplcntib3R0b206MTBweH0ueXRwLW11dGVkLWF1dG9wbGF5LWVxdWFsaXplci1pY29ue21hcmdpbjphdXRvO3RvcDozcHg7d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1tdXRlZC1hdXRvcGxheS1lcXVhbGl6ZXItaWNvbnt3aWR0aDoyMHB4O2hlaWdodDoyMHB4fS55dHAtbXV0ZWQtYXV0b3BsYXktZW5kLXBhbmVse3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDowO3JpZ2h0OjA7bWFyZ2luOjAgMTAlO2Rpc3BsYXk6bm9uZX0ueXRwLW11dGVkLWF1dG9wbGF5LXNob3ctZW5kLXBhbmVsLnl0cC1tdXRlZC1hdXRvcGxheS1lbmRzY3JlZW4tb3ZlcmxheXtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjQpfS55dHAtbXV0ZWQtYXV0b3BsYXktc2hvdy1lbmQtcGFuZWwgLnl0cC1tdXRlZC1hdXRvcGxheS1lbmQtcGFuZWx7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LXdyYXA6bm93cmFwO2ZsZXgtd3JhcDpub3dyYXA7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0cC1tdXRlZC1hdXRvcGxheS1lbmQtdGV4dHtwb3NpdGlvbjphYnNvbHV0ZTtmb250LXdlaWdodDo1MDA7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE0cHg7bWFyZ2luLXRvcDo0MHB4fS55dHAtc2hvcnRzLW1vZGUgLnl0cC1tdXRlZC1hdXRvcGxheS1lbmQtdGV4dHttYXJnaW4tdG9wOjkwcHh9QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1lcXVhbGl6ZXItYW5pbWF0aW9uezAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxKTt0cmFuc2Zvcm06c2NhbGVZKDEpfTUwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjUpO3RyYW5zZm9ybTpzY2FsZVkoLjUpfXRvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxKTt0cmFuc2Zvcm06c2NhbGVZKDEpfX1Aa2V5ZnJhbWVzIHl0cC1lcXVhbGl6ZXItYW5pbWF0aW9uezAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxKTt0cmFuc2Zvcm06c2NhbGVZKDEpfTUwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjUpO3RyYW5zZm9ybTpzY2FsZVkoLjUpfXRvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxKTt0cmFuc2Zvcm06c2NhbGVZKDEpfX0ueXRwLWVxdWFsaXplci1iYXItbGVmdCwueXRwLWVxdWFsaXplci1iYXItbWlkZGxlLC55dHAtZXF1YWxpemVyLWJhci1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDstbXMtdHJhbnNmb3JtLW9yaWdpbjo4cHggMTZweDt0cmFuc2Zvcm0tb3JpZ2luOjhweCAxNnB4Oy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjo4cHggMTZweDstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnl0cC1lcXVhbGl6ZXItYW5pbWF0aW9uO2FuaW1hdGlvbi1uYW1lOnl0cC1lcXVhbGl6ZXItYW5pbWF0aW9uOy13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDppbmZpbml0ZTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlfS55dHAtZXF1YWxpemVyLWJhci1sZWZ0ey13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOi41czthbmltYXRpb24tZHVyYXRpb246LjVzfS55dHAtZXF1YWxpemVyLWJhci1taWRkbGV7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246MS4zczthbmltYXRpb24tZHVyYXRpb246MS4zc30ueXRwLWVxdWFsaXplci1iYXItcmlnaHR7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246LjdzO2FuaW1hdGlvbi1kdXJhdGlvbjouN3N9Lnl0cC1wYXVzZS1vdmVybGF5e2JvcmRlci1yYWRpdXM6OHB4O2JvdHRvbTo0OXB4O2RpcmVjdGlvbjpsdHI7bGVmdDowO21hcmdpbjoxMnB4O3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6NDI7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IDFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IDFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1wYXVzZS1vdmVybGF5W2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1wYXVzZS1vdmVybGF5LWNvbnRyb2xzLWhpZGRlbiAueXRwLXBhdXNlLW92ZXJsYXl7Ym90dG9tOjB9Lnl0cC1leHBhbmQtcGF1c2Utb3ZlcmxheSAuYWQtb3ZlcmxheSwueXRwLWV4cGFuZC1wYXVzZS1vdmVybGF5IC5jYXB0aW9uLXdpbmRvd3tkaXNwbGF5Om5vbmV9Lnl0cC1zaG9ydHMtbW9kZSAueXRwLXBhdXNlLW92ZXJsYXktY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4O3dpZHRoOmluaGVyaXQ7aGVpZ2h0OmluaGVyaXQ7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRwLWV4cGFuZC1wYXVzZS1vdmVybGF5IC55dHAtcGF1c2Utb3ZlcmxheXtiYWNrZ3JvdW5kOnJnYmEoMjMsMjMsMjMsLjkpO3BhZGRpbmc6MTJweCAxNnB4IDE2cHg7cmlnaHQ6MH0ueXRwLWV4cGFuZC1wYXVzZS1vdmVybGF5Lnl0cC1zaG9ydHMtbW9kZSAueXRwLXBhdXNlLW92ZXJsYXl7Ym90dG9tOmF1dG99Lnl0cC1leHBhbmQtcGF1c2Utb3ZlcmxheS55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyIC55dHAtcGF1c2Utb3ZlcmxheXtvcGFjaXR5Oi4yfS55dHAtY2Utc2hvd24gLnl0cC1wYXVzZS1vdmVybGF5LC55dHAtaXYtZHJhd2VyLW9wZW4gLnl0cC1wYXVzZS1vdmVybGF5LC55dHAtbWVudS1zaG93biAueXRwLXBhdXNlLW92ZXJsYXksLnl0cC1zZXR0aW5ncy1zaG93biAueXRwLXBhdXNlLW92ZXJsYXl7ZGlzcGxheTpub25lfS5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtZXhwYW5kLXBhdXNlLW92ZXJsYXkpIC55dHAtcGF1c2Utb3ZlcmxheSAueXRwLWNvbGxhcHNlLC5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtZXhwYW5kLXBhdXNlLW92ZXJsYXkpIC55dHAtcGF1c2Utb3ZlcmxheSAueXRwLW5leHQsLmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1leHBhbmQtcGF1c2Utb3ZlcmxheSkgLnl0cC1wYXVzZS1vdmVybGF5IC55dHAtcHJldmlvdXMsLmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1leHBhbmQtcGF1c2Utb3ZlcmxheSkgLnl0cC1wYXVzZS1vdmVybGF5IC55dHAtcmVsYXRlZC10aXRsZSwuaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLWV4cGFuZC1wYXVzZS1vdmVybGF5KSAueXRwLXBhdXNlLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uc3tkaXNwbGF5Om5vbmV9Lnl0cC1leHBhbmQtcGF1c2Utb3ZlcmxheS55dHAtYmlnLW1vZGUgLnl0cC1wYXVzZS1vdmVybGF5e3BhZGRpbmc6MjRweCAzMnB4IDMycHh9Lnl0cC1wYXVzZS1vdmVybGF5IC55dHAtY29sbGFwc2V7aGVpZ2h0OjIwcHg7b3BhY2l0eTouOTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoyMHB4O3RvcDoxMnB4O3dpZHRoOjIwcHh9Lnl0cC1tb2JpbGUueXRwLWVtYmVkLW1vYmlsZSAueXRwLXBhdXNlLW92ZXJsYXkgLnl0cC1jb2xsYXBzZXtoZWlnaHQ6NDhweDtyaWdodDowO3RvcDowO3dpZHRoOjQ4cHh9Lnl0cC1tb2JpbGUueXRwLWVtYmVkLW1vYmlsZSAueXRwLXBhdXNlLW92ZXJsYXkgLnl0cC1jb2xsYXBzZS1pY29ue21hcmdpbjphdXRvO2hlaWdodDozNnB4O3dpZHRoOjM2cHh9Lnl0cC1iaWctbW9kZSAueXRwLXBhdXNlLW92ZXJsYXkgLnl0cC1jb2xsYXBzZXtoZWlnaHQ6MzJweDtyaWdodDozNnB4O3RvcDoyNHB4O3dpZHRoOjMycHh9Lnl0cC1wYXVzZS1vdmVybGF5IC55dHAtY29sbGFwc2U6aG92ZXJ7b3BhY2l0eToxfS55dHAtcGF1c2Utb3ZlcmxheSAueXRwLWV4cGFuZHtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjYpO2JvcmRlci1yYWRpdXM6NHB4O2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjMycHg7cGFkZGluZzowIDEwcHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtbW9iaWxlLnl0cC1lbWJlZC1tb2JpbGUgLnl0cC1wYXVzZS1vdmVybGF5IC55dHAtZXhwYW5ke2hlaWdodDo0OHB4fS55dHAtYmlnLW1vZGUgLnl0cC1wYXVzZS1vdmVybGF5IC55dHAtZXhwYW5ke2JvcmRlci1yYWRpdXM6NHB4O2ZvbnQtc2l6ZToyNHB4O3BhZGRpbmc6MTBweCAxNXB4fS55dHAtcGF1c2Utb3ZlcmxheSAueXRwLWV4cGFuZDpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjgpfS55dHAtcGF1c2Utb3ZlcmxheSAueXRwLWV4cGFuZCBzdmd7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjI0cHg7bWFyZ2luLWJvdHRvbToycHg7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjI0cHh9Lnl0cC1iaWctbW9kZSAueXRwLXBhdXNlLW92ZXJsYXkgLnl0cC1leHBhbmQgc3Zne3dpZHRoOjMycHg7aGVpZ2h0OjMycHh9Lnl0cC1leHBhbmQtcGF1c2Utb3ZlcmxheSAueXRwLWV4cGFuZHtkaXNwbGF5Om5vbmV9Lnl0cC1zaG9ydHMtbW9kZSAueXRwLXBhdXNlLW92ZXJsYXktYmFja2Ryb3B7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC42KTtvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt6LWluZGV4OjI0Oy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IDFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IDFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1zaG9ydHMtbW9kZSAueXRwLXBhdXNlLW92ZXJsYXktYmFja2Ryb3BbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheXtib3JkZXItcmFkaXVzOjJweDtib3R0b206OHB4O2xlZnQ6OHB4O3JpZ2h0OjhweDttYXJnaW46MDtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtwYWRkaW5nOjE2cHggMjRweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXl7cGFkZGluZzoxMnB4IDI0cHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5e2JvdHRvbTozMnB4O2xlZnQ6MjhweDtyaWdodDoyOHB4fS55dHAtcHJvYmFibHkta2V5Ym9hcmQtZm9jdXMgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1uZXh0LC55dHAtcHJvYmFibHkta2V5Ym9hcmQtZm9jdXMgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1wcmV2aW91cywueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheS55dHAtc2Nyb2xsLW1heCAueXRwLW5leHQsLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkueXRwLXNjcm9sbC1taW4gLnl0cC1wcmV2aW91cywueXRwLXRvdWNoLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1uZXh0LC55dHAtdG91Y2gtbW9kZSAueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXByZXZpb3Vze2Rpc3BsYXk6bm9uZX0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXJlbGF0ZWQtdGl0bGV7bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1ib3R0b206MDtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MTZweH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1yZWxhdGVkLXRpdGxle21hcmdpbi1sZWZ0OjhweH0ueXRwLWJpZy1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtcmVsYXRlZC10aXRsZXttYXJnaW4tYm90dG9tOjI0cHg7Zm9udC1zaXplOjI4cHg7bGluZS1oZWlnaHQ6MzJweH0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXN1Z2dlc3Rpb25ze2RpcmVjdGlvbjpsdHI7b3ZlcmZsb3c6aGlkZGVuO3RleHQtYWxpZ246Y2VudGVyO3doaXRlLXNwYWNlOm5vd3JhcDttYXJnaW4tdG9wOjhweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uc3ttYXJnaW4tdG9wOjZweH0ueXRwLXRvdWNoLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uc3tvdmVyZmxvdy14OmF1dG99Lnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uLWltYWdle2JhY2tncm91bmQtY29sb3I6IzAwMDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OjEwOHB4O3dpZHRoOjE5MnB4O2JvcmRlci1yYWRpdXM6OHB4fS55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtbmV4dCwueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXByZXZpb3Vze2JhY2tncm91bmQ6IzMzMztib3JkZXItcmFkaXVzOjUwJTstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggNXB4IHJnYmEoMCwwLDAsLjIpO2JveC1zaGFkb3c6MCAxcHggNXB4IHJnYmEoMCwwLDAsLjIpO2hlaWdodDozMnB4O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjMycHg7Ym90dG9tOjUwJX0ueXRwLWJpZy1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtbmV4dCwueXRwLWJpZy1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtcHJldmlvdXN7aGVpZ2h0OjY0cHg7d2lkdGg6NjRweH0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLW5leHR7cmlnaHQ6MjhweDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoNTAlKX0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1uZXh0e3JpZ2h0OjMycHh9W2Rpcj1ydGxdIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtbmV4dHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKX0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXByZXZpb3Vze2xlZnQ6MjhweDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKX0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1wcmV2aW91c3tsZWZ0OmFkZCgyNHB4LDhweCl9W2Rpcj1ydGxdIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtcHJldmlvdXN7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCg1MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCg1MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDUwJSl9Lnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgYS55dHAtc3VnZ2VzdGlvbi1saW5re2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtYWxpZ246bGVmdDt0b3A6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246YWxsIC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgYS55dHAtc3VnZ2VzdGlvbi1saW5re21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6OHB4fS55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtc3VnZ2VzdGlvbi1vdmVybGF5e2JvdHRvbTowO2ZvbnQtc2l6ZToxMnB4O2xlZnQ6MDtvcGFjaXR5OjA7cGFkZGluZzo4cHg7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDEyLDEyLDEyLC44KSx0cmFuc3BhcmVudCAxMDBweCk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHJnYmEoMTIsMTIsMTIsLjgpIDAsdHJhbnNwYXJlbnQgMTAwcHgpOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS55dHAtYmlnLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uLW92ZXJsYXl7Zm9udC1zaXplOjIwcHh9Lnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgYS55dHAtc3VnZ2VzdGlvbi1saW5rOmZvY3VzIC55dHAtc3VnZ2VzdGlvbi1vdmVybGF5LC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IGEueXRwLXN1Z2dlc3Rpb24tbGluazpob3ZlciAueXRwLXN1Z2dlc3Rpb24tb3ZlcmxheXtvcGFjaXR5OjF9Lnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uLWxpbmsgLnl0cC1zdWdnZXN0aW9uLWR1cmF0aW9ue2JhY2tncm91bmQ6IzAwMDtib3JkZXItcmFkaXVzOjJweDtib3R0b206NHB4O2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxO29wYWNpdHk6Ljk7cGFkZGluZzoycHggNHB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjRweH0ueXRwLWJpZy1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtc3VnZ2VzdGlvbi1saW5rIC55dHAtc3VnZ2VzdGlvbi1kdXJhdGlvbntmb250LXNpemU6MTdweH0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXN1Z2dlc3Rpb24tbGluayAueXRwLXN1Z2dlc3Rpb24tZHVyYXRpb25bZGF0YS1pcy1saXZlPXRydWVde2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1lcnJvci1pbmRpY2F0b3IsI2UxMDAyZCk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtc3VnZ2VzdGlvbi1kdXJhdGlvbjplbXB0eXtkaXNwbGF5Om5vbmV9Lnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uLWF1dGhvciwueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXN1Z2dlc3Rpb24tdGl0bGV7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uLXRpdGxle2ZvbnQtd2VpZ2h0OjUwMDttYXJnaW4tdG9wOjhweDtmb250LXNpemU6MTZweDtsaW5lLWhlaWdodDoxOHB4O21heC1oZWlnaHQ6MzBweH0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXN1Z2dlc3Rpb24tYXV0aG9ye29wYWNpdHk6Ljc7bWFyZ2luLXRvcDo0cHg7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MTZweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1uZXh0LC55dHAtc21hbGwtbW9kZSAueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXByZXZpb3Vze2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtcmVsYXRlZC10aXRsZXttYXJnaW4tYm90dG9tOjA7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MTRweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uLXRpdGxle21hcmdpbi10b3A6NnB4O2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjE0cHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtc3VnZ2VzdGlvbi1hdXRob3J7Zm9udC1zaXplOjEwcHg7bGluZS1oZWlnaHQ6MTJweH06bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtd2F0ZXJtYXJre3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjExMHB4O2hlaWdodDoyNnB4O2JvdHRvbTozOHB4O3otaW5kZXg6Mjg7b3BhY2l0eTouOTtwYWRkaW5nLXRvcDoxMXB4O3BhZGRpbmctYm90dG9tOjExcHh9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLXdhdGVybWFyazpub3QoLnl0cC1tdXRlZC1hdXRvcGxheS13YXRlcm1hcmspe3JpZ2h0OjE2cHh9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLXdhdGVybWFyay55dHAtd2F0ZXJtYXJrLXNtYWxse3dpZHRoOjg1cHg7aGVpZ2h0OjIwcHh9Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC13YXRlcm1hcmt7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtYmlnLW1vZGU6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtd2F0ZXJtYXJre2JvdHRvbTo1OXB4fS55dHAtaGlkZS1jb250cm9sczpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC13YXRlcm1hcmt7Ym90dG9tOjVweDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLW5hdGl2ZS1jb250cm9sczpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC13YXRlcm1hcmt7Ym90dG9tOjUwcHg7bGVmdDoxNnB4fTpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC13YXRlcm1hcms6bm90KC55dHAtbm8taG92ZXIpOm5vdCgueXRwLW11dGVkLWF1dG9wbGF5LXdhdGVybWFyayk6aG92ZXJ7b3BhY2l0eToxfTpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC1tdXRlZC1hdXRvcGxheS1vdmVybGF5IC55dHAtd2F0ZXJtYXJre3Bvc2l0aW9uOnJlbGF0aXZlO2JvdHRvbTowfS55dHAtYXV0b2hpZGU6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtd2F0ZXJtYXJrOm5vdCgueXRwLW11dGVkLWF1dG9wbGF5LXdhdGVybWFyayl7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtbXV0ZWQtYXV0b3BsYXkgLnl0cC13YXRlcm1hcms6bm90KC55dHAtbXV0ZWQtYXV0b3BsYXktd2F0ZXJtYXJrKXtkaXNwbGF5Om5vbmV9Om5vdCgueXRwLW13ZWItcGxheWVyKSAuaHRtbDUtZW5kc2NyZWVue2N1cnNvcjpkZWZhdWx0O292ZXJmbG93OmhpZGRlbjt6LWluZGV4OjM2fTpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC1lbmRzY3JlZW4tdGFrZW92ZXIuaHRtbDUtZW5kc2NyZWVue2Rpc3BsYXk6bm9uZX0ueXRwLXRpdGxlLWVuYWJsZS1jaGFubmVsLWxvZ286bm90KC55dHAtbXdlYi1wbGF5ZXIpIC5odG1sNS1lbmRzY3JlZW46bm90KC55dHAtc2hvcnRzLWJyYW5kZWQtdWkpe21hcmdpbi10b3A6MTZweH0ueXRwLWJpZy1tb2RlLnl0cC10aXRsZS1lbmFibGUtY2hhbm5lbC1sb2dvOm5vdCgueXRwLW13ZWItcGxheWVyKSAuaHRtbDUtZW5kc2NyZWVuOm5vdCgueXRwLXNob3J0cy1icmFuZGVkLXVpKXttYXJnaW4tdG9wOjMycHh9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLWVuZHNjcmVlbi1jb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6NTAlO3RvcDo1MCV9Lnl0cC1lbmRzY3JlZW4tdGFrZW92ZXI6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtZW5kc2NyZWVuLWNvbnRlbnR7ZGlzcGxheTpub25lfTpub3QoLnl0cC1td2ViLXBsYXllcikgLmh0bWw1LWVuZHNjcmVlbi55dHAtZW5kc2NyZWVuLXBhZ2luYXRle2xlZnQ6MzJweDtvdmVyZmxvdzp2aXNpYmxlO3JpZ2h0OjMycHh9Lnl0cC1iaWctbW9kZTpub3QoLnl0cC1td2ViLXBsYXllcikgLmh0bWw1LWVuZHNjcmVlbi55dHAtZW5kc2NyZWVuLXBhZ2luYXRle2xlZnQ6NDhweDtyaWdodDo0OHB4fTpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC1lbmRzY3JlZW4tbmV4dHtkaXNwbGF5Om5vbmU7aGVpZ2h0OjEwMCU7b3BhY2l0eTouOTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDotMzJweDt3aWR0aDozMnB4Oy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWJpZy1tb2RlOm5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLWVuZHNjcmVlbi1uZXh0e3JpZ2h0Oi00OHB4O3dpZHRoOjQ4cHh9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLWVuZHNjcmVlbi1wYWdpbmF0ZSAueXRwLWVuZHNjcmVlbi1uZXh0e2Rpc3BsYXk6YmxvY2t9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLWVuZHNjcmVlbi1uZXh0OmhvdmVye29wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLWVuZHNjcmVlbi1wcmV2aW91c3tkaXNwbGF5Om5vbmU7aGVpZ2h0OjEwMCU7bGVmdDotMzJweDtvcGFjaXR5Oi45O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjMycHg7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtYmlnLW1vZGU6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtZW5kc2NyZWVuLXByZXZpb3Vze2xlZnQ6LTQ4cHg7d2lkdGg6NDhweH06bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtZW5kc2NyZWVuLXBhZ2luYXRlIC55dHAtZW5kc2NyZWVuLXByZXZpb3Vze2Rpc3BsYXk6YmxvY2t9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLWVuZHNjcmVlbi1wcmV2aW91czpob3ZlcntvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtbXdlYi1wbGF5ZXIuaHRtbDUtZW5kc2NyZWVue3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Y3Vyc29yOmRlZmF1bHQ7b3ZlcmZsb3c6aGlkZGVuO3otaW5kZXg6MzZ9Lmh0bWw1LWVuZHNjcmVlbi5tb2Rlcm4tdmlkZW93YWxsLWVuZHNjcmVlbntjdXJzb3I6ZGVmYXVsdDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDozNjstd2Via2l0LWFsaWduLWNvbnRlbnQ6Y2VudGVyO2FsaWduLWNvbnRlbnQ6Y2VudGVyfS55dHAtbW9kZXJuLWVuZHNjcmVlbi1jb250ZW50e2ZvbnQtc2l6ZToxMXB4fS55dHAtbW9kZXJuLWVuZHNjcmVlbi1zaW5nbGUtaXRlbSAueXRwLW1vZGVybi1lbmRzY3JlZW4tY29udGVudCAueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGx7bWFyZ2luLWJvdHRvbTowOy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93O3BhZGRpbmctYm90dG9tOnVuc2V0O2hlaWdodDoxMDAlfS55dHAtbW9kZXJuLWVuZHNjcmVlbi1zaW5nbGUtaXRlbSAueXRwLW1vZGVybi1lbmRzY3JlZW4tY29udGVudCAueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwgLnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWltYWdle21hcmdpbi1yaWdodDoxMnB4fS55dHAtZW5kc2NyZWVuLXRha2VvdmVyIC55dHAtbW9kZXJuLWVuZHNjcmVlbi1jb250ZW50LC55dHAtZW5kc2NyZWVuLXRha2VvdmVyLmh0bWw1LWVuZHNjcmVlbntkaXNwbGF5Om5vbmV9Lnl0cC10aXRsZS1lbmFibGUtY2hhbm5lbC1sb2dvIC5odG1sNS1lbmRzY3JlZW46bm90KC55dHAtc2hvcnRzLWJyYW5kZWQtdWkpe21hcmdpbi10b3A6MTZweH0ueXRwLW1vZGVybi1lbmRzY3JlZW4tY29udGVudHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdChhdXRvLWZpbGwsbWlubWF4KDMxMHB4LDFmcikpO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoYXV0by1maWxsLG1pbm1heChjbGFtcCgyNTBweCwyNyUsNDUwcHgpLDFmcikpO2dyaWQtdGVtcGxhdGUtcm93czpyZXBlYXQoMSwxZnIpOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dyaWQtYXV0by1yb3dzOjA7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtY29sdW1uLWdhcDoxNnB4Oy1tb3otY29sdW1uLWdhcDoxNnB4O2NvbHVtbi1nYXA6MTZweDt3aWR0aDoxMDAlOy13ZWJraXQtYm94LWFsaWduOnN0cmV0Y2g7LXdlYmtpdC1hbGlnbi1pdGVtczpzdHJldGNoO2FsaWduLWl0ZW1zOnN0cmV0Y2g7cGFkZGluZzozMnB4Oy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDttYXgtaGVpZ2h0OjEwMCV9Lnl0cC1tb2Rlcm4tZW5kc2NyZWVuLXJvdy0wIC55dHAtbW9kZXJuLWVuZHNjcmVlbi1jb250ZW50e3BhZGRpbmctdG9wOjE2cHg7cGFkZGluZy1ib3R0b206MTZweH0ueXRwLW1vZGVybi1lbmRzY3JlZW4tbGltaXQtcm93cy0xIC55dHAtbW9kZXJuLWVuZHNjcmVlbi1jb250ZW50e2dyaWQtdGVtcGxhdGUtcm93czpyZXBlYXQoMSwxZnIpfS55dHAtbW9kZXJuLWVuZHNjcmVlbi1saW1pdC1yb3dzLTIgLnl0cC1tb2Rlcm4tZW5kc2NyZWVuLWNvbnRlbnR7Z3JpZC10ZW1wbGF0ZS1yb3dzOnJlcGVhdCgyLDFmcil9Lnl0cC1tb2Rlcm4tZW5kc2NyZWVuLWxpbWl0LXJvd3MtMyAueXRwLW1vZGVybi1lbmRzY3JlZW4tY29udGVudHtncmlkLXRlbXBsYXRlLXJvd3M6cmVwZWF0KDMsMWZyKX0ueXRwLWVuZHNjcmVlbi1wcmV2aW91czpob3ZlcntvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZHtvcGFjaXR5OjE7b3ZlcmZsb3c6dmlzaWJsZX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLnl0cC1mdWxsc2NyZWVuLWdyaWQtbWFpbi1jb250ZW50e29wYWNpdHk6MTtzY3JvbGxiYXItd2lkdGg6bm9uZTtvdmVyZmxvdzpzY3JvbGx9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlIC55dHAtZnVsbHNjcmVlbi1ncmlkLW1haW4tY29udGVudHtib3R0b206MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO3RvcDowfS55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZS55dHAtZ3JpZC1zY3JvbGxhYmxlIC55dHAtZnVsbHNjcmVlbi1ncmlke3RvcDpjYWxjKDMwJSArIHZhcigtLXl0cC1ncmlkLXNjcm9sbC1wZXJjZW50YWdlKSoxMDAlKTtib3R0b206MH0uaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGUgLnl0cC1mdWxsc2NyZWVuLWdyaWQtZXhwYW5kLWJ1dHRvbiwuaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nKTpub3QoLnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlKSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1leHBhbmQtYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1idXR0b25zLWNvbnRhaW5lcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0b3A6MDttYXJnaW4tdG9wOmNhbGModmFyKC0teXQtZGVsaGktcGlsbC1oZWlnaHQpLzIqLTEgKyB2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0KS8yKi0xKTstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O3otaW5kZXg6NzI7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLWJpZy1tb2RlIC55dHAtZnVsbHNjcmVlbi1ncmlkLWJ1dHRvbnMtY29udGFpbmVye21hcmdpbi10b3A6Y2FsYyh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCkvMiotMSArIHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQpLzIqLTEpfS55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b257b3BhY2l0eToxOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b24gc3Zney13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1leHBhbmQtYnV0dG9ue3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOnZhcigtLXl0LWRlbGhpLXBpbGwtaGVpZ2h0KTtoZWlnaHQ6dmFyKC0teXQtZGVsaGktcGlsbC1oZWlnaHQpO2JvcmRlci1yYWRpdXM6NTAlO292ZXJmbG93OnZpc2libGU7c2Nyb2xsYmFyLXdpZHRoOm5vbmU7ei1pbmRleDo3Mjtwb2ludGVyLWV2ZW50czphbGw7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1iaWctbW9kZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1leHBhbmQtYnV0dG9ue3dpZHRoOnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0KTtoZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQpfS55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b24gc3Zne3BhZGRpbmc6Y2FsYygodmFyKC0teXQtZGVsaGktcGlsbC1oZWlnaHQpIC0gdmFyKC0teXQtZGVsaGktaWNvbi1zaXplLCAyNHB4KSkvMik7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWljb24tc2l6ZSwyNHB4KTt3aWR0aDp2YXIoLS15dC1kZWxoaS1pY29uLXNpemUsMjRweCl9Lnl0cC1iaWctbW9kZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1leHBhbmQtYnV0dG9uIHN2Z3twYWRkaW5nOmNhbGMoKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0KSAtIHZhcigtLXl0LWRlbGhpLWljb24tc2l6ZSwgMjRweCkpLzIpfS55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b246YmVmb3Jle2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTt0b3A6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO3dpZHRoOmNhbGMoMTAwJSAtIDhweCk7aGVpZ2h0OmNhbGMoMTAwJSAtIDhweCk7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aW9uLWJ1dHRvbntkaXNwbGF5Om5vbmU7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aW9uLWJ1dHRvbntkaXNwbGF5OmJsb2NrO3BvaW50ZXItZXZlbnRzOmFsbH06bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b246aG92ZXI6YmVmb3JlLDpub3QoLnl0cC1ncmlkLXNjcm9sbGluZykgLnl0cC1mdWxsc2NyZWVuLWdyaWQtaG92ZXItb3ZlcmxheTpob3ZlciAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1leHBhbmQtYnV0dG9uOmJlZm9yZSw6bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLWhvdmVyLW92ZXJsYXk6aG92ZXIgLnl0cC1tb3JlLXZpZGVvcy1idXR0b246YWZ0ZXIsOm5vdCgueXRwLWdyaWQtc2Nyb2xsaW5nKSAueXRwLW1vcmUtdmlkZW9zLWJ1dHRvbjpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjEpKX06bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b246YWN0aXZlOmJlZm9yZSw6bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLWhvdmVyLW92ZXJsYXk6YWN0aXZlIC55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b246YmVmb3JlLDpub3QoLnl0cC1ncmlkLXNjcm9sbGluZykgLnl0cC1mdWxsc2NyZWVuLWdyaWQtaG92ZXItb3ZlcmxheTphY3RpdmUgLnl0cC1tb3JlLXZpZGVvcy1idXR0b246YWZ0ZXIsOm5vdCgueXRwLWdyaWQtc2Nyb2xsaW5nKSAueXRwLW1vcmUtdmlkZW9zLWJ1dHRvbjphY3RpdmU6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYnV0dG9uLXNlY29uZGFyeSxyZ2JhKDI1NSwyNTUsMjU1LC4yKSl9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tZ3JpZHtvcGFjaXR5OjE7b3ZlcmZsb3c6aGlkZGVuO3RvcDpjYWxjKDEwMCUgLSB2YXIoLS15dHAtZ3JpZC1wZWVrLWhlaWdodCkgLSB2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSAtIDZweCAtIHZhcigtLXl0cC1ncmlkLXNjcm9sbC1wZXJjZW50YWdlKSoxMDAlKX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1iaWctbW9kZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZHt0b3A6Y2FsYygxMDAlIC0gdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpIC0gdmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSA2cHggLSB2YXIoLS15dHAtZ3JpZC1zY3JvbGwtcGVyY2VudGFnZSkqMTAwJSl9Lnl0cC1ncmlkLXNjcm9sbGFibGUgLnl0cC1mdWxsc2NyZWVuLWdyaWQtaGVhZGVye2Rpc3BsYXk6bm9uZX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1ncmlkLXNjcm9sbGFibGUgLnl0cC1mdWxsc2NyZWVuLWdyaWR7ZGlzcGxheTpibG9jaztvdmVyZmxvdzp2aXNpYmxlO3RvcDpjYWxjKDEwMCUgLSB2YXIoLS15dHAtZ3JpZC1wZWVrLWhlaWdodCkgLSB2YXIoLS15dHAtZ3JpZC1zY3JvbGwtcGVyY2VudGFnZSkqMTAwJSl9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtZ3JpZC1zY3JvbGxhYmxlLnl0cC1iaWctbW9kZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZHt0b3A6Y2FsYygxMDAlIC0gdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpIC0gdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUpfS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLWdyaWQtc2Nyb2xsYWJsZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1tYWluLWNvbnRlbnR7b3BhY2l0eTouNX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1ncmlkLXNjcm9sbGFibGUueXRwLWdyaWQtc2Nyb2xsaW5nIC55dHAtZnVsbHNjcmVlbi1ncmlkLW1haW4tY29udGVudHtvcGFjaXR5OjF9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1ob3Zlci1vdmVybGF5e2Rpc3BsYXk6YmxvY2s7d2lkdGg6Y2FsYygxMDAlIC0gMjRweCk7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDoxMnB4O2JvcmRlci1yYWRpdXM6MTZweDt6LWluZGV4OjcyO3BvaW50ZXItZXZlbnRzOmFsbDtjdXJzb3I6cG9pbnRlcn0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmU6bm90KC5lbmRlZC1tb2RlKSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1tYWluLWNvbnRlbnQsLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1tYWluLWNvbnRlbnR7bWFyZ2luLXRvcDoxMnB4fS55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1ob3Zlci1vdmVybGF5LC55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLWdyaWQtc2Nyb2xsaW5nIC55dHAtZnVsbHNjcmVlbi1ncmlkLWhvdmVyLW92ZXJsYXl7ZGlzcGxheTpub25lfTpub3QoLnl0cC1ncmlkLXNjcm9sbGluZykgLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1ob3Zlci1vdmVybGF5OmhhcygueXRwLWZ1bGxzY3JlZW4tZ3JpZC1leHBhbmQtYnV0dG9uOmhvdmVyKSw6bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLnl0cC1mdWxsc2NyZWVuLWdyaWQtaG92ZXItb3ZlcmxheTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5KX06bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLnl0cC1mdWxsc2NyZWVuLWdyaWQtaG92ZXItb3ZlcmxheTphY3RpdmUsOm5vdCgueXRwLWdyaWQtc2Nyb2xsaW5nKSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtZnVsbHNjcmVlbi1ncmlkLWhvdmVyLW92ZXJsYXk6aGFzKC55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b246YWN0aXZlKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10b25hbC1ob3Zlcil9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlOm5vdCguZW5kZWQtbW9kZSkgLnl0cC1mdWxsc2NyZWVuLWdyaWQsLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tZ3JpZHtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLDApLHJnYmEoMCwwLDAsLjc1KSAxMDBweCxyZ2JhKDAsMCwwLC44NSkpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDAsMCwwLDApLHJnYmEoMCwwLDAsLjc1KSAxMDBweCxyZ2JhKDAsMCwwLC44NSkpfS55dHAtZ3JpZC1yZXBsYXktYnV0dG9ue3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7Ym9yZGVyLXJhZGl1czoxOHB4O21hcmdpbi1yaWdodDoxNnB4Oy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTtkaXNwbGF5Om5vbmV9Lnl0cC1mdWxsLWJsZWVkLXBsYXllciAueXRwLWdyaWQtcmVwbGF5LWJ1dHRvbnt3aWR0aDo2MHB4O2hlaWdodDo2MHB4O2JvcmRlci1yYWRpdXM6MzBweH0ueXRwLWdyaWQtcmVwbGF5LWJ1dHRvbiBzdmd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1zdGlsbHMtY29udGFpbmVye2Rpc3BsYXk6Z3JpZDtwYWRkaW5nOjAgMjRweDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDMsMWZyKTtwb2ludGVyLWV2ZW50czpub25lOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDoxNnB4Oy13ZWJraXQtYm94LWFsaWduOnN0cmV0Y2g7LXdlYmtpdC1hbGlnbi1pdGVtczpzdHJldGNoO2FsaWduLWl0ZW1zOnN0cmV0Y2h9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlIC55dHAtZnVsbHNjcmVlbi1ncmlkLXN0aWxscy1jb250YWluZXIsLnl0cC1ncmlkLXNjcm9sbGluZy55dHAtZ3JpZC1zY3JvbGxhYmxlIC55dHAtZnVsbHNjcmVlbi1ncmlkLXN0aWxscy1jb250YWluZXJ7cG9pbnRlci1ldmVudHM6YXV0b30ueXRwLWZ1bGxzY3JlZW4tZ3JpZHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MTAwJTt3aWR0aDoxMDAlO3otaW5kZXg6NzI7cG9pbnRlci1ldmVudHM6bm9uZTttYXgtaGVpZ2h0OjEwMCU7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O29wYWNpdHk6MDt2aXNpYmlsaXR5OnZpc2libGU7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcpOm5vdCgueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUpIC55dHAtZnVsbHNjcmVlbi1ncmlke2Rpc3BsYXk6bm9uZX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1hdXRvaGlkZTpub3QoLnl0cC1ncmlkLXNjcm9sbGluZykgLnl0cC1mdWxsc2NyZWVuLWdyaWR7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7b3BhY2l0eTowfS55dHAtbW9yZS12aWRlb3MtYnV0dG9ue3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4O3dpZHRoOi13ZWJraXQtZml0LWNvbnRlbnQ7d2lkdGg6LW1vei1maXQtY29udGVudDt3aWR0aDpmaXQtY29udGVudDstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvdzt6LWluZGV4OjcyO3BvaW50ZXItZXZlbnRzOmFsbDtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOnZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KSAxMnB4Oy13ZWJraXQtY29sdW1uLWdhcDo4cHg7LW1vei1jb2x1bW4tZ2FwOjhweDtjb2x1bW4tZ2FwOjhweDtib3JkZXItcmFkaXVzOjI4cHg7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLWxpZ2h0LHJnYmEoMCwwLDAsLjMpKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0cC1tb3JlLXZpZGVvcy1idXR0b24gc3Zney13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXRwLW1vcmUtdmlkZW9zLWJ1dHRvbnstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLW1vcmUtdmlkZW9zLWJ1dHRvbjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0cHg7bGVmdDo0cHg7d2lkdGg6Y2FsYygxMDAlIC0gOHB4KTtoZWlnaHQ6Y2FsYygxMDAlIC0gOHB4KTtib3JkZXItcmFkaXVzOjI4cHh9Lnl0cC1tb3JlLXZpZGVvcy1idXR0b24gLnl0cC1tb3JlLXZpZGVvcy1idXR0b24tdGh1bWJuYWlse3dpZHRoOjQwcHg7YXNwZWN0LXJhdGlvOjE2Lzk7Ym9yZGVyOjJweCBzb2xpZCB3aGl0ZTtib3JkZXItcmFkaXVzOjhweDstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCV9Lnl0cC1tb3JlLXZpZGVvcy1idXR0b24gLnl0cC1tb3JlLXZpZGVvcy1idXR0b24tdGl0bGV7Y29sb3I6dmFyKC0tT3ZlcmxheS1PdmVybGF5LVRleHQtUHJpbWFyeSwjZmZmKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDA7Zm9udC1mYW1pbHk6dmFyKC0tVHlwb2dyYXBoeS1Gb250LUZhbWlseSxSb2JvdG8pO2ZvbnQtc2l6ZToxNnB4O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoyMHB4O2xldHRlci1zcGFjaW5nOi4xNnB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9QG1lZGlhIChtaW4td2lkdGg6MjIwMHB4KXsueXRwLWZ1bGxzY3JlZW4tZ3JpZC1zdGlsbHMtY29udGFpbmVye2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNCwxZnIpfX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUuaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGUgLmh0bWw1LWVuZHNjcmVlbntkaXNwbGF5Om5vbmV9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlLmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlIC55dHAtZnVsbHNjcmVlbi1ncmlke3RvcDowO2JvdHRvbTp2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LDcycHgpfS55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZS5odG1sNS12aWRlby1wbGF5ZXIuZW5kZWQtbW9kZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1zdGlsbHMtY29udGFpbmVye3dpZHRoOjEwMCU7cGFkZGluZzowIDI0cHh9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlLmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlIC55dHAtZnVsbHNjcmVlbi1ncmlkLW1haW4tY29udGVudHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZS5odG1sNS12aWRlby1wbGF5ZXIuZW5kZWQtbW9kZTpub3QoLnl0cC1lbmFibGUtaG9yaXpvbnRhbC1lbmRzY3JlZW4tc2hlbGYpIC55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbDpudGgtY2hpbGQobis0KXtkaXNwbGF5Om5vbmV9QG1lZGlhIChtaW4td2lkdGg6MjIwMHB4KXsueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUuaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGU6bm90KC55dHAtZW5hYmxlLWhvcml6b250YWwtZW5kc2NyZWVuLXNoZWxmKSAueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGw6bnRoLWNoaWxkKDQpe2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUuaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGUueXRwLWVuYWJsZS1ob3Jpem9udGFsLWVuZHNjcmVlbi1zaGVsZiAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1zdGlsbHMtY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93O292ZXJmbG93LXg6YXV0bzstd2Via2l0LWJveC1wYWNrOnN0YXJ0Oy13ZWJraXQtanVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7c2Nyb2xsYmFyLXdpZHRoOm5vbmV9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlLmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlLnl0cC1lbmFibGUtaG9yaXpvbnRhbC1lbmRzY3JlZW4tc2hlbGYgLnl0cC1mdWxsc2NyZWVuLWdyaWQtbWFpbi1jb250ZW50ey13ZWJraXQtYm94LXBhY2s6c3RhcnQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUuaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGUueXRwLWVuYWJsZS1ob3Jpem9udGFsLWVuZHNjcmVlbi1zaGVsZiAueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGx7bWluLXdpZHRoOjMxJX0uaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy1idXR0b24ueXRwLWJ1dHRvbiwueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLmh0bWw1LWVuZHNjcmVlbiwueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXQsLnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlIC55dHAtY2FwdGlvbi13aW5kb3ctY29udGFpbmVyLC55dHAtZ3JpZC1zY3JvbGxpbmcgLmh0bWw1LWVuZHNjcmVlbiwueXRwLWdyaWQtc2Nyb2xsaW5nIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0LC55dHAtZ3JpZC1zY3JvbGxpbmcgLnl0cC1jYXB0aW9uLXdpbmRvdy1jb250YWluZXJ7ZGlzcGxheTpub25lfS55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmc6bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmc6bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtbW9yZS12aWRlb3MtYnV0dG9uLnl0cC1idXR0b24sLnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtZnVsbHNjcmVlbi1ncmlkLC55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLW1vcmUtdmlkZW9zLWJ1dHRvbi55dHAtYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLWVycm9ye3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt6LWluZGV4OjQ0O2xpbmUtaGVpZ2h0OjIyMCU7YmFja2dyb3VuZC1jb2xvcjpyZ2IoNDAsNDAsNDApfS55dHAtZW1iZWQtZXJyb3IgLnl0cC1lcnJvcntkaXNwbGF5OmJsb2NrfS55dHAtZXJyb3IucmVsYXRlZC1vbi1lcnJvci1vdmVybGF5LXZpc2libGV7bGluZS1oZWlnaHQ6MTYwJX0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1lcnJvci5yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXktdmlzaWJsZXtsaW5lLWhlaWdodDoyMjAlfS55dHAtZXJyb3IgLnl0cC1lcnJvci1jb250ZW50IGF7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ueXRwLWVycm9yIC55dHAtZXJyb3ItY29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTttYXgtd2lkdGg6ODUlOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXh9Lnl0cC1lbWJlZC1lcnJvciAueXRwLWVycm9yIC55dHAtZXJyb3ItY29udGVudHttYXJnaW46MCBhdXRvfS55dHAtZXJyb3IgLnl0cC1lcnJvci1pY29uLWNvbnRhaW5lcntoZWlnaHQ6NjRweDt3aWR0aDo2NHB4O21pbi13aWR0aDo2NHB4O21pbi1oZWlnaHQ6NjRweDtmbG9hdDpsZWZ0fS55dHAtZXJyb3IgLnl0cC1lcnJvci1pY29uLWNvbnRhaW5lciBzdmd7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlfS55dHAtZXJyb3IgLnl0cC1zbWFsbC1yZWRpcmVjdHtkaXNwbGF5OmlubGluZTtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo4cHg7cmlnaHQ6OHB4O29wYWNpdHk6Ljd9Lnl0cC1lcnJvciAueXRwLXNtYWxsLXJlZGlyZWN0Lm5vLWxpbmt7Y3Vyc29yOmRlZmF1bHR9Lnl0cC1lcnJvci1jb250ZW50LXdyYXAtc3VicmVhc29uOmVtcHR5e2Rpc3BsYXk6bm9uZX0ueXRwLWVycm9yLnJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheS12aXNpYmxlIC55dHAtc21hbGwtcmVkaXJlY3QsLnl0cC1mdWxsc2NyZWVuIC55dHAtZXJyb3IgLnl0cC1zbWFsbC1yZWRpcmVjdHtkaXNwbGF5Om5vbmV9Lnl0cC1lcnJvciAueXRwLXNtYWxsLXJlZGlyZWN0IGF7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJX0ueXRwLWVycm9yIC55dHAtZXJyb3ItY29udGVudCAueXRwLWVycm9yLWNvbnRlbnQtd3JhcHttYXJnaW4tdG9wOmF1dG87bWFyZ2luLWJvdHRvbTphdXRvO21hcmdpbi1sZWZ0OjE2cHg7aGVpZ2h0OjEwMCV9Lnl0cC1lcnJvciAueXRwLWVycm9yLWNvbnRlbnQgLnl0cC1lcnJvci1jb250ZW50LXdyYXAtcmVhc29ue2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1lcnJvciAueXRwLWVycm9yLWNvbnRlbnQgLnl0cC1lcnJvci1pY29uLWNvbnRhaW5lcntoZWlnaHQ6OTZweDt3aWR0aDo5NnB4O21pbi13aWR0aDo5NnB4O21pbi1oZWlnaHQ6OTZweH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1lcnJvciAueXRwLXNtYWxsLXJlZGlyZWN0e2hlaWdodDo2MHB4O3dpZHRoOjYwcHh9Lnl0cC1lcnJvciAueXRwLWVycm9yLWNvbnRlbnQgLnl0cC1lcnJvci1jb250ZW50LXdyYXAtcmVhc29ue2ZvbnQtc2l6ZToyMnB4fS55dHAtZXJyb3IucmVsYXRlZC1vbi1lcnJvci1vdmVybGF5LXZpc2libGUgLnl0cC1lcnJvci1jb250ZW50IC55dHAtZXJyb3ItY29udGVudC13cmFwLXJlYXNvbntmb250LXNpemU6MTZweH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1lcnJvci5yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXktdmlzaWJsZSAueXRwLWVycm9yLWNvbnRlbnQgLnl0cC1lcnJvci1jb250ZW50LXdyYXAtcmVhc29ue2ZvbnQtc2l6ZToyMnB4fS55dHAtZXJyb3IgLnl0cC1lcnJvci1jb250ZW50IC55dHAtZXJyb3ItY29udGVudC13cmFwLXN1YnJlYXNvbntmb250LXNpemU6MThweDtwYWRkaW5nLXRvcDoxMHB4fS55dHAtZXJyb3IucmVsYXRlZC1vbi1lcnJvci1vdmVybGF5LXZpc2libGUgLnl0cC1lcnJvci1jb250ZW50IC55dHAtZXJyb3ItY29udGVudC13cmFwLXN1YnJlYXNvbntmb250LXNpemU6MTRweDtwYWRkaW5nLXRvcDoycHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC55dHAtZXJyb3IgLnl0cC1lcnJvci1jb250ZW50IC55dHAtZXJyb3ItY29udGVudC13cmFwLXN1YnJlYXNvbntmb250LXNpemU6MThweDtwYWRkaW5nLXRvcDoxMHB4fS55dHAtc21hbGwtbW9kZSAueXRwLWVycm9yIC55dHAtZXJyb3ItY29udGVudHtsaW5lLWhlaWdodDoxNTAlfS55dHAtc21hbGwtbW9kZSAueXRwLWVycm9yIC55dHAtZXJyb3ItY29udGVudCAueXRwLWVycm9yLWljb24tY29udGFpbmVye2hlaWdodDozMnB4O3dpZHRoOjMycHg7bWluLXdpZHRoOjMycHg7bWluLWhlaWdodDozMnB4fS55dHAtdGlueS1tb2RlIC55dHAtZXJyb3ItaWNvbi1jb250YWluZXJ7ZGlzcGxheTpub25lfS55dHAtc21hbGwtbW9kZSAueXRwLWVycm9yIC55dHAtZXJyb3ItY29udGVudCAueXRwLWVycm9yLWNvbnRlbnQtd3JhcC1yZWFzb257Zm9udC1zaXplOjE0cHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtZXJyb3IgLnl0cC1lcnJvci1jb250ZW50IC55dHAtZXJyb3ItY29udGVudC13cmFwLXN1YnJlYXNvbntmb250LXNpemU6MTJweDtwYWRkaW5nLXRvcDo0cHh9Lnl0cC10aW55LW1vZGUgLnl0cC1lcnJvciAueXRwLWVycm9yLWNvbnRlbnQgLnl0cC1lcnJvci1jb250ZW50LXdyYXAtcmVhc29ue2ZvbnQtc2l6ZToxMnB4fS55dHAtdGlueS1tb2RlIC55dHAtZXJyb3IgLnl0cC1lcnJvci1jb250ZW50IC55dHAtZXJyb3ItY29udGVudC13cmFwLXN1YnJlYXNvbntmb250LXNpemU6MTBweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1lcnJvciAueXRwLXNtYWxsLXJlZGlyZWN0e2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0cC1iaWctbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWZ1bGxlcnNjcmVlbi1lZHUtYnV0dG9uLnl0cC1idXR0b257d2lkdGg6YXV0bztwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0ZXh0LWFsaWduOmNlbnRlcjstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtZnVsbGVyc2NyZWVuLWVkdS1idXR0b24ueXRwLWJ1dHRvblthcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZnVsbGVyc2NyZWVuLWVkdS1jaGV2cm9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjI0cHh9Lnl0cC1mdWxsZXJzY3JlZW4tZWR1LWJ1dHRvbjpub3QoLnl0cC1mdWxsZXJzY3JlZW4tZWR1LWJ1dHRvbi1zdWJ0bGUpIC55dHAtZnVsbGVyc2NyZWVuLWVkdS1jaGV2cm9ue2hlaWdodDo1MCV9Lnl0cC1mdWxsZXJzY3JlZW4tZWR1LXRleHR7aGVpZ2h0OjUwJTttYXJnaW4tdG9wOi04cHh9Lnl0cC1mdWxsZXJzY3JlZW4tZWR1LWJ1dHRvbi1zdWJ0bGUgLnl0cC1mdWxsZXJzY3JlZW4tZWR1LXRleHR7ZGlzcGxheTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1mdWxsc2NyZWVuLWJ1dHRvbjphZnRlcnt3aWR0aDoyNHB4fS55dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTAsLnl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMSwueXRwLWZ1bGxzY3JlZW4tYnV0dG9uLWNvcm5lci0yLC55dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTN7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTstbXMtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMC1hbmltYXRpb257NTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtMXB4LC0xcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTFweCwtMXB4KX19QGtleWZyYW1lcyB5dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTAtYW5pbWF0aW9uezUwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTFweCwtMXB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xcHgsLTFweCl9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTEtYW5pbWF0aW9uezUwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMXB4LC0xcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGUoMXB4LC0xcHgpfX1Aa2V5ZnJhbWVzIHl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMS1hbmltYXRpb257NTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgxcHgsLTFweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgxcHgsLTFweCl9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTItYW5pbWF0aW9uezUwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMXB4LDFweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgxcHgsMXB4KX19QGtleWZyYW1lcyB5dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTItYW5pbWF0aW9uezUwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMXB4LDFweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgxcHgsMXB4KX19QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMy1hbmltYXRpb257NTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtMXB4LDFweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtMXB4LDFweCl9fUBrZXlmcmFtZXMgeXRwLWZ1bGxzY3JlZW4tYnV0dG9uLWNvcm5lci0zLWFuaW1hdGlvbns1MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC0xcHgsMXB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xcHgsMXB4KX19Lnl0cC1mdWxsc2NyZWVuLWJ1dHRvbjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pOmhvdmVyIC55dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTB7LXdlYmtpdC1hbmltYXRpb246eXRwLWZ1bGxzY3JlZW4tYnV0dG9uLWNvcm5lci0wLWFuaW1hdGlvbiAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7YW5pbWF0aW9uOnl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMC1hbmltYXRpb24gLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS55dHAtZnVsbHNjcmVlbi1idXR0b246bm90KFthcmlhLWRpc2FibGVkPXRydWVdKTpob3ZlciAueXRwLWZ1bGxzY3JlZW4tYnV0dG9uLWNvcm5lci0xey13ZWJraXQtYW5pbWF0aW9uOnl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMS1hbmltYXRpb24gLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2FuaW1hdGlvbjp5dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTEtYW5pbWF0aW9uIC40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ueXRwLWZ1bGxzY3JlZW4tYnV0dG9uOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSk6aG92ZXIgLnl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMnstd2Via2l0LWFuaW1hdGlvbjp5dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTItYW5pbWF0aW9uIC40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTthbmltYXRpb246eXRwLWZ1bGxzY3JlZW4tYnV0dG9uLWNvcm5lci0yLWFuaW1hdGlvbiAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lnl0cC1mdWxsc2NyZWVuLWJ1dHRvbjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pOmhvdmVyIC55dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTN7LXdlYmtpdC1hbmltYXRpb246eXRwLWZ1bGxzY3JlZW4tYnV0dG9uLWNvcm5lci0zLWFuaW1hdGlvbiAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7YW5pbWF0aW9uOnl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMy1hbmltYXRpb24gLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS55dHAtZnVsbHNjcmVlbi1xdWljay1hY3Rpb25ze3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo4NnB4O3JpZ2h0OjI0cHg7ei1pbmRleDo1OX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9uc3tib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDMwcHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZSAueXRwLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9uc3tib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA5NnB4KSArIDMwcHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9uc3tib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDMwcHggKyB2YXIoLS15dHAtZ3JpZC1wZWVrLWhlaWdodCkpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLnl0cC1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnN7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAzMHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7cG9zaXRpb246YWJzb2x1dGU7bWF4LXdpZHRoOjMzJTt0b3A6MjRweDtsZWZ0OjI0cHg7ei1pbmRleDo1OX0ueXRwLW92ZXJsYXktdG9wLWxlZnQgLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhe21heC13aWR0aDo2MCV9Lnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbSAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7dG9wOnVuc2V0O2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgMzBweCl9Lnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbS55dHAtZmVhdHVyZWQtcHJvZHVjdC1zaG93biAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7Ym90dG9tOmNhbGMoMTQycHggKyB2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSl9Lnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbS55dHAtc2hvcHBpbmctcGlsbC1zaG93biAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7Ym90dG9tOmNhbGMoODZweCArIHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpKX0ueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGEtYm90dG9tLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyAzMHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGEtYm90dG9tLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtZmVhdHVyZWQtcHJvZHVjdC1zaG93biAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7Ym90dG9tOmNhbGMoMTQycHggKyB2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLXNob3BwaW5nLXBpbGwtc2hvd24gLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhe2JvdHRvbTpjYWxjKDg2cHggKyB2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbS55dHAtYmlnLW1vZGUgLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhe2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgMzBweCl9Lnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbS55dHAtYmlnLW1vZGUueXRwLWZlYXR1cmVkLXByb2R1Y3Qtc2hvd24gLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhe2JvdHRvbTpjYWxjKDE0MnB4ICsgdmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkpfS55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWJpZy1tb2RlLnl0cC1zaG9wcGluZy1waWxsLXNob3duIC55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YXtib3R0b206Y2FsYyg4NnB4ICsgdmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkpfS55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWJpZy1tb2RlLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAzMHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGEtYm90dG9tLnl0cC1iaWctbW9kZS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLWZlYXR1cmVkLXByb2R1Y3Qtc2hvd24gLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhe2JvdHRvbTpjYWxjKDE0MnB4ICsgdmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyB2YXIoLS15dHAtZ3JpZC1wZWVrLWhlaWdodCkpfS55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWJpZy1tb2RlLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtc2hvcHBpbmctcGlsbC1zaG93biAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7Ym90dG9tOmNhbGMoODZweCArIHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLWNocm9tZS10b3AtYnV0dG9uc3t3aWR0aDoxMDAlO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6ZW5kOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGEsLnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnN7cG9zaXRpb246cmVsYXRpdmU7aW5zZXQ6MDt6LWluZGV4OjU5Oy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtY2hyb21lLXRvcC1idXR0b25ze3Bvc2l0aW9uOnJlbGF0aXZlO2luc2V0OjA7ei1pbmRleDo1OH0qIC55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YSwqIC55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtZnVsbHNjcmVlbi1xdWljay1hY3Rpb25zLC55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20gLnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLC55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20gLnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnMsLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbS55dHAtYmlnLW1vZGUgLnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLC55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWJpZy1tb2RlIC55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtZnVsbHNjcmVlbi1xdWljay1hY3Rpb25ze3Bvc2l0aW9uOnJlbGF0aXZlO2luc2V0OjB9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLW92ZXJsYXlzLWNvbnRhaW5lcntvcGFjaXR5Om1heCgxIC0gMyAqIHZhcigtLXl0cC1ncmlkLXNjcm9sbC1wZXJjZW50YWdlKSwwKX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLnl0cC1vdmVybGF5cy1jb250YWluZXJ7b3BhY2l0eTowO2Rpc3BsYXk6bm9uZX0ueXRwLWF1dG9oaWRlIC55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YSwueXRwLWF1dG9oaWRlIC55dHAtZnVsbHNjcmVlbi1xdWljay1hY3Rpb25ze29wYWNpdHk6MH0ueXRwLWF1dG9oaWRlOm5vdCgueXRwLWF1dG9oaWRlLWFjdGl2ZSkgLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKSAueXRwLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9uc3toZWlnaHQ6MDttYXJnaW46MH0uYWQtc2hvd2luZyAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGEsLmFkLXNob3dpbmcgLnl0cC1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnMsLmVuZGVkLW1vZGUgLnl0cC1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnMsLnNlZWtpbmctbW9kZSAueXRwLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9ucywueXRwLW1lbnUtc2hvd24gLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLC55dHAtbWVudS1zaG93biAueXRwLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9ucywueXRwLXNldHRpbmdzLXNob3duIC55dHAtZnVsbHNjcmVlbi1xdWljay1hY3Rpb25zLC55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLC55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnN7ZGlzcGxheTpub25lfS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5e3otaW5kZXg6ODI7b3ZlcmZsb3c6aGlkZGVufS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LWJhY2tncm91bmR7YmFja2dyb3VuZDpuby1yZXBlYXQgNTAlL2NvdmVyO2JhY2tncm91bmQtY29sb3I6IzAwMDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3RvcDowO2xlZnQ6MDt6LWluZGV4OjgyfS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LWJhY2tncm91bmQtb3ZlcmxheXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjMpO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7dG9wOjA7bGVmdDowO3otaW5kZXg6ODJ9Lnl0cC1nYXRlZC1hY3Rpb25zLW92ZXJsYXktbWluaXBsYXllci1jbG9zZS1idXR0b257ZGlzcGxheTpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7d2lkdGg6NDBweDtoZWlnaHQ6NDBweDtwYWRkaW5nOjhweDt6LWluZGV4OjgyfS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS1taW5pcGxheWVyLWNsb3NlLWJ1dHRvbntkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS1iYXJ7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjAgNnB4O2xlZnQ6MjBweDtoZWlnaHQ6NTZweDtib3R0b206MjBweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7dGV4dC1hbGlnbjpsZWZ0O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNik7Ym9yZGVyLXJhZGl1czo4cHg7Y29sb3I6I2ZmZjt3aWR0aDozODBweDt6LWluZGV4OjgyfS55dHAtYmlnLW1vZGUgLnl0cC1nYXRlZC1hY3Rpb25zLW92ZXJsYXktYmFye3BhZGRpbmc6MCA5cHg7aGVpZ2h0Ojg0cHg7Ym90dG9tOjMwcHg7bGVmdDozMHB4fS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LWJ1dHRvbnN7bWFyZ2luOjEycHggNnB4fS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LWJ1dHRvbnttaW4td2lkdGg6ODBweDtoZWlnaHQ6MzJweDtwYWRkaW5nOjAgOHB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMSk7Ym9yZGVyLXJhZGl1czoyNHB4O2JvcmRlci13aWR0aDowO2N1cnNvcjpwb2ludGVyfS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LWJ1dHRvbi10aXRsZXtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7bWFyZ2luOjAgOHB4O2xpbmUtaGVpZ2h0OjMycHg7Zm9udC1zaXplOjExMCU7Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOiNmZmZ9Lnl0cC1iaWctbW9kZSAueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS1idXR0b25ze21hcmdpbjoxOHB4IDlweH0ueXRwLWJpZy1tb2RlIC55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LWJ1dHRvbnttaW4td2lkdGg6MTIwcHg7aGVpZ2h0OjQ4cHg7cGFkZGluZzowIDEycHg7Ym9yZGVyLXJhZGl1czozcHh9Lnl0cC1iaWctbW9kZSAueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS1idXR0b24tdGl0bGV7bWFyZ2luOjAgMTJweDtsaW5lLWhlaWdodDo0OHB4O2ZvbnQtc2l6ZToxMzAlO2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS10ZXh0LWNvbnRhaW5lcnstd2Via2l0LWJveC1mbGV4OjE7LXdlYmtpdC1mbGV4OjE7ZmxleDoxO21pbi13aWR0aDoxODBweDttYXJnaW46MCA2cHh9Lnl0cC1iaWctbW9kZSAueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS10ZXh0LWNvbnRhaW5lcnttaW4td2lkdGg6MjcwcHg7bWFyZ2luOjAgOXB4fS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LXN1YnRpdGxlLC55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LXRpdGxle3RleHQtdHJhbnNmb3JtOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LXRpdGxle2ZvbnQtc2l6ZToxNTAlO2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS1zdWJ0aXRsZXtmb250LXNpemU6MTEwJTtmb250LXdlaWdodDo0MDA7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNyl9Lnl0cC1oZWF0LW1hcC55dHAtZmluZS1zY3J1YmJpbmctZW5hYmxlOm5vdCguYWQtc2hvd2luZykgLnl0cC1oZWF0LW1hcC1jb250YWluZXIsLnl0cC1oZWF0LW1hcC55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyOm5vdCguYWQtc2hvd2luZykgLnl0cC1oZWF0LW1hcC1jb250YWluZXJ7ZGlzcGxheTpibG9jaztvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO2hlaWdodDo0MHB4O2JvdHRvbTo1cHg7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWhlYXQtbWFwLWNvbnRhaW5lcntwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDtkaXNwbGF5OmJsb2NrO21hcmdpbi1ib3R0b206MH0ueXRwLWRlbGhpLW1vZGVybi55dHAtaGVhdC1tYXAueXRwLWZpbmUtc2NydWJiaW5nLWVuYWJsZTpub3QoLmFkLXNob3dpbmcpIC55dHAtaGVhdC1tYXAtY29udGFpbmVyLC55dHAtZGVsaGktbW9kZXJuLnl0cC1oZWF0LW1hcC55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyOm5vdCguYWQtc2hvd2luZykgLnl0cC1oZWF0LW1hcC1jb250YWluZXJ7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpIC4xcyxtYXJnaW4tYm90dG9tIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSAuMXM7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSAuMXMsbWFyZ2luLWJvdHRvbSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSkgLjFzO21hcmdpbi1ib3R0b206OHB4fS55dHAtaGVhdC1tYXAueXRwLXByb2dyZXNzLWJhci1ob3Zlcjpub3QoLmFkLXNob3dpbmcpIC55dHAtdGltZWQtbWFya2Vycy1lbmFibGVkIC55dHAtaGVhdC1tYXAtY29udGFpbmVye2JvdHRvbTo3cHh9Lnl0cC1oZWF0LW1hcC55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyIC55dHAtaGVhdC1tYXAtY2hhcHRlciBzdmd7aGVpZ2h0OjQwcHh9Lnl0cC1iaWctbW9kZS55dHAtaGVhdC1tYXAueXRwLXByb2dyZXNzLWJhci1ob3ZlciAueXRwLWhlYXQtbWFwLWNoYXB0ZXIgc3Zne2hlaWdodDo2MHB4fS55dHAtaGVhdC1tYXAtY29udGFpbmVye29wYWNpdHk6MDtkaXNwbGF5Om5vbmU7d2lkdGg6MTAwJTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSk7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVuO2hlaWdodDowO2JvdHRvbTo1cHg7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWhlYXQtbWFwLnl0cC1iaWctbW9kZS55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyIC55dHAtaGVhdC1tYXAtY29udGFpbmVye2hlaWdodDo2MHB4O2JvdHRvbTo4cHg7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWhlYXQtbWFwLWNoYXB0ZXJ7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ueXRwLWhlYXQtbWFwLWNoYXB0ZXIueXRwLWhlYXRtYXAtaG92ZXJ7Ym90dG9tOjJweDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtaGVhdC1tYXAtY2hhcHRlci55dHAtaGVhdG1hcC1ob3Zlcnstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1iaWctbW9kZSAueXRwLWhlYXQtbWFwLWNoYXB0ZXIueXRwLWhlYXRtYXAtaG92ZXJ7Ym90dG9tOjNweH0ueXRwLWhlYXQtbWFwLXBsYXllZF9iYXIgLnl0cC1oZWF0LW1hcC1ob3ZlcntoZWlnaHQ6MTAwJTtmaWxsOnJnYmEoMjU1LDI1NSwyNTUsLjUpfS55dHAtaGVhdC1tYXAtaG92ZXIsLnl0cC1oZWF0LW1hcC1wbGF5e2hlaWdodDowfS55dHAtaGVhdC1tYXAtZWR1e2Rpc3BsYXk6bm9uZX0ueXRwLWZpbmUtc2NydWJiaW5nLWNvbnRhaW5lcnt3aWR0aDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO2hlaWdodDowfS55dHAtZmluZS1zY3J1YmJpbmctdGh1bWJuYWlse2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXg6MSAwIGF1dG87ZmxleDoxIDAgYXV0b30ueXRwLWZpbmUtc2NydWJiaW5nLWRyYWdnYWJsZSwueXRwLWZpbmUtc2NydWJiaW5nLXRodW1ibmFpbHN7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3c7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO21pbi13aWR0aDoxNjBweDtoZWlnaHQ6MTAwJX0ueXRwLWZpbmUtc2NydWJiaW5nLWN1cnNvcntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTtoZWlnaHQ6MTAwJTt3aWR0aDozcHg7YmFja2dyb3VuZDojZWVlfS55dHAtZmluZS1zY3J1YmJpbmctc2Vlay10aW1le3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbToxMTAlO2xlZnQ6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO2Rpc3BsYXk6bm9uZX0ueXRwLWZpbmUtc2NydWJiaW5nLWVuYWJsZSAueXRwLWZpbmUtc2NydWJiaW5nLWRpc21pc3MsLnl0cC1maW5lLXNjcnViYmluZy1lbmFibGUgLnl0cC1maW5lLXNjcnViYmluZy1wbGF5LC55dHAtZmluZS1zY3J1YmJpbmctZW5hYmxlIC55dHAtZmluZS1zY3J1YmJpbmctc2Vlay10aW1le2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fS55dHAtZmluZS1zY3J1YmJpbmctZW5hYmxlIC55dHAtY2hyb21lLWNvbnRyb2xze2Rpc3BsYXk6bm9uZX0ueXRwLWZpbmUtc2NydWJiaW5nLXBsYXl7ZGlzcGxheTpub25lO2hlaWdodDozNXB4O3dpZHRoOjM1cHg7Ym90dG9tOjExMCU7cG9zaXRpb246YWJzb2x1dGV9Lnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLnl0cC1maW5lLXNjcnViYmluZy1wbGF5e2JvdHRvbToxMjAlfS55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtZmluZS1zY3J1YmJpbmctcGxheSBzdmd7cGFkZGluZzo4cHh9Lnl0cC1maW5lLXNjcnViYmluZy1kaXNtaXNze3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbToxMTUlO3JpZ2h0OjEwcHg7aGVpZ2h0OjI1cHg7d2lkdGg6MjVweDtkaXNwbGF5Om5vbmV9Lnl0cC1maW5lLXNjcnViYmluZy1jaGFwdGVyLXRpdGxle2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4O3dpZHRoOjE2MHB4O2hlaWdodDo5MHB4O2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjcwMDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dvcmQtd3JhcDpicmVhay13b3JkOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0cC1maW5lLXNjcnViYmluZy1jaGFwdGVyLXRpdGxlLWNvbnRlbnR7cGFkZGluZzoxNXB4O292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWJpZy1tb2RlIC55dHAtZmluZS1zY3J1YmJpbmctY2hhcHRlci10aXRsZXt3aWR0aDoyNDBweDtoZWlnaHQ6MTM1cHh9Lnl0cC1maW5lLXNjcnViYmluZy1lZHV7ZGlzcGxheTpub25lfS55dHAtZmluZS1zY3J1YmJpbmctZW5hYmxlLmh0bWw1LXZpZGVvLXBsYXllciAueXRwLWFkLW92ZXJsYXktc2xvdHtib3R0b206MTA3cHh9Lnl0cC1iaWctbW9kZS55dHAtZmluZS1zY3J1YmJpbmctZW5hYmxlLmh0bWw1LXZpZGVvLXBsYXllciAueXRwLWFkLW92ZXJsYXktc2xvdHtib3R0b206MTUxcHh9Lnl0cC1pbmZvLXBhbmVsLWFjdGlvbi1pdGVte2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjE2cHggMCAwIDE2cHg7d2lkdGg6YXV0bztkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1hbGlnbi1pdGVtczpmbGV4LXN0YXJ0Oy13ZWJraXQtYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lnl0cC1iaWctbW9kZSAueXRwLWluZm8tcGFuZWwtYWN0aW9uLWl0ZW17bWFyZ2luOjI0cHggMCAwIDI0cHg7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYWxpZ24taXRlbXM6ZmxleC1zdGFydDstd2Via2l0LWJveC1hbGlnbjpzdGFydDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS55dHAtc21hbGwtbW9kZSAueXRwLWluZm8tcGFuZWwtYWN0aW9uLWl0ZW17bWFyZ2luOjhweCAxMnB4IDAgMCAwIDhweCAxMnB4IDA7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYWxpZ24taXRlbXM6ZmxleC1zdGFydDstd2Via2l0LWJveC1hbGlnbjpzdGFydDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS55dHAtaW5mby1wYW5lbC1hY3Rpb24taXRlbS1kaXNjbGFpbWVye2N1cnNvcjpub25lO2ZvbnQtc2l6ZToxNHB4O292ZXJmbG93OmF1dG87bWFyZ2luLWJvdHRvbToxNnB4fS55dHAtaW5mby1wYW5lbC1hY3Rpb24taXRlbS1idXR0b257d2lkdGg6MTAwJTtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHAtaW5mby1wYW5lbC1hY3Rpb24taXRlbS1pY29ue3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTstd2Via2l0LWZsZXgtc2hyaW5rOjA7ZmxleC1zaHJpbms6MH0ueXRwLWJpZy1tb2RlIC55dHAtaW5mby1wYW5lbC1hY3Rpb24taXRlbS1pY29ue3dpZHRoOjcycHg7aGVpZ2h0OjU0cHh9Lnl0cC1pbmZvLXBhbmVsLWFjdGlvbi1pdGVtLWxhYmVse21hcmdpbi1sZWZ0OjEycHg7Zm9udC1zaXplOjE0cHg7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTtvdmVyZmxvdzphdXRvfS55dHAtYmlnLW1vZGUgLnl0cC1pbmZvLXBhbmVsLWFjdGlvbi1pdGVtLWxhYmVsLC55dHAtc21hbGwtbW9kZSAueXRwLWluZm8tcGFuZWwtYWN0aW9uLWl0ZW0tbGFiZWx7bWFyZ2luLWxlZnQ6MTJweDtmb250LXNpemU6MTRweDtvdmVyZmxvdzphdXRvfS55dHAtaW5mby1wYW5lbC1kZXRhaWwtc2tyaW17cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4zKTt6LWluZGV4OjcxfS55dHAtaW5mby1wYW5lbC1kZXRhaWx7cG9zaXRpb246YWJzb2x1dGU7bGVmdDphdXRvO3JpZ2h0OjA7dG9wOjA7Ym90dG9tOjA7d2lkdGg6NjAlO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7b3ZlcmZsb3c6YXV0bztkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtYmlnLW1vZGUgLnl0cC1pbmZvLXBhbmVsLWRldGFpbCwueXRwLXNtYWxsLW1vZGUgLnl0cC1pbmZvLXBhbmVsLWRldGFpbHt3aWR0aDo2MCV9W2Rpcj1sdHJdIC55dHAtaW5mby1wYW5lbC1kZXRhaWxbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfVtkaXI9bHRyXSAueXRwLWVtYmVkLXBsYXlsaXN0IC55dHAtaW5mby1wYW5lbC1kZXRhaWxbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSl9W2Rpcj1ydGxdIC55dHAtaW5mby1wYW5lbC1kZXRhaWxbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfVtkaXI9cnRsXSAueXRwLWVtYmVkLXBsYXlsaXN0IC55dHAtaW5mby1wYW5lbC1kZXRhaWxbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9Lnl0cC1pbmZvLXBhbmVsLWRldGFpbC1oZWFkZXJ7bWFyZ2luOjE2cHg7bGluZS1oZWlnaHQ6MjRweDtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo3MDA7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHAtYmlnLW1vZGUgLnl0cC1pbmZvLXBhbmVsLWRldGFpbC1oZWFkZXJ7bWFyZ2luOjI0cHh9Lnl0cC1pbmZvLXBhbmVsLWRldGFpbC10aXRsZXttYXJnaW4tcmlnaHQ6MTRweDstd2Via2l0LWZsZXgtZ3JvdzoyOy13ZWJraXQtYm94LWZsZXg6MjtmbGV4LWdyb3c6Mn0ueXRwLWluZm8tcGFuZWwtZGV0YWlsLWNsb3Nle3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTstd2Via2l0LWZsZXgtc2hyaW5rOjA7ZmxleC1zaHJpbms6MH0ueXRwLWJpZy1tb2RlIC55dHAtaW5mby1wYW5lbC1kZXRhaWwtY2xvc2V7d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLWluZm8tcGFuZWwtZGV0YWlsLWNsb3NlIHBhdGh7ZmlsbDojYWFhfS55dHAtaW5mby1wYW5lbC1kZXRhaWwtY2xvc2U6aG92ZXIgcGF0aHtmaWxsOiNmZmZ9Lnl0cC1pbmZvLXBhbmVsLWRldGFpbC1ib2R5e2xpbmUtaGVpZ2h0OjI0cHg7bWluLWhlaWdodDo0OHB4O2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO21hcmdpbjowIDE2cHg7b3ZlcmZsb3c6YXV0b30ueXRwLWJpZy1tb2RlIC55dHAtaW5mby1wYW5lbC1kZXRhaWwtYm9keXttYXJnaW46MCAyNHB4fS55dHAtaW5mby1wYW5lbC1kZXRhaWwtaXRlbXN7bGVmdDowO3JpZ2h0OjA7cGFkZGluZzowIDE2cHggMTZweCAwfS55dHAtbXV0ZWQtYXV0b3BsYXkgLnl0cC1pbmZvLXBhbmVsLWRldGFpbC1za3JpbXt6LWluZGV4OjEwMDJ9Lmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlIC55dHAtaW5mby1wYW5lbC1wcmV2aWV3e2Rpc3BsYXk6bm9uZX0ueXRwLWluZm8tcGFuZWwtcHJldmlld3toZWlnaHQ6YXV0bztib3R0b206YXV0bztsZWZ0OjEycHg7cmlnaHQ6YXV0bztvdmVyZmxvdzpoaWRkZW47cG9pbnRlci1ldmVudHM6YXV0bztwb3NpdGlvbjphYnNvbHV0ZTtjdXJzb3I6cG9pbnRlcjt0ZXh0LXNoYWRvdzowIDAgMnB4IHJnYmEoMCwwLDAsLjUpO3otaW5kZXg6MjY7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpO2JvcmRlcjppbmhlcml0O2JvcmRlci1sZWZ0OjRweCBzb2xpZCAjM2VhNmZmO2JvcmRlci1yYWRpdXM6NHB4O3BhZGRpbmc6MDtmb250OmluaGVyaXQ7bWF4LXdpZHRoOm1pbig1MCUgLSA2NHB4LDI3MnB4KTtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWluZm8tcGFuZWwtcHJldmlld1thcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZW1iZWQgLnl0cC1pbmZvLXBhbmVsLXByZXZpZXd7dG9wOjYwcHh9Lnl0cC1lbWJlZC55dHAtc2hvcnRzLW1vZGUgLnl0cC1pbmZvLXBhbmVsLXByZXZpZXd7dG9wOjEyMnB4fS55dHAtYmlnLW1vZGUueXRwLWF1dG9oaWRlIC55dHAtaW5mby1wYW5lbC1wcmV2aWV3LC55dHAtYmlnLW1vZGUueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1pbmZvLXBhbmVsLXByZXZpZXcsLnl0cC1lbWJlZC55dHAtYXV0b2hpZGUgLnl0cC1pbmZvLXBhbmVsLXByZXZpZXcsLnl0cC1lbWJlZC55dHAtaGlkZS1pbmZvLWJhciAueXRwLWluZm8tcGFuZWwtcHJldmlld3t0b3A6MTJweH0ueXRwLW11dGVkLWF1dG9wbGF5IC55dHAtaW5mby1wYW5lbC1wcmV2aWV3e3otaW5kZXg6MTAwMjt0b3A6MTJweH0ueXRwLWxhcmdlci10YXAtYnV0dG9ucyAueXRwLWluZm8tcGFuZWwtcHJldmlld3t0b3A6ODFweH0ueXRwLWJpZy1tb2RlIC55dHAtaW5mby1wYW5lbC1wcmV2aWV3e3RvcDo4MXB4O2JvdHRvbTphdXRvO2xlZnQ6MjRweDtoZWlnaHQ6YXV0bztsaW5lLWhlaWdodDphdXRvfS55dHAtc21hbGwtbW9kZSAueXRwLWluZm8tcGFuZWwtcHJldmlld3ttaW4td2lkdGg6MTMwcHg7bWF4LXdpZHRoOm1pbig1MCUgLSA2NHB4LDIwOHB4KX0ueXRwLWl2LWRyYXdlci1vcGVuIC55dHAtaW5mby1wYW5lbC1wcmV2aWV3e2Rpc3BsYXk6bm9uZTstd2Via2l0LXRyYW5zaXRpb246ZGlzcGxheSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmRpc3BsYXkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1pbmZvLXBhbmVsLXByZXZpZXctY2hldnJvbnt3aWR0aDoyNHB4O2hlaWdodDoyNHB4O2xpbmUtaGVpZ2h0OjBweDtwb2ludGVyLWV2ZW50czpub25lO2NvbG9yOnJnYigyNTUsMjU1LDI1NSk7LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjB9Lnl0cC1pbmZvLXBhbmVsLXByZXZpZXctY2hldnJvbjplbXB0eSwueXRwLWluZm8tcGFuZWwtcHJldmlldy1pY29uOmVtcHR5e2hlaWdodDowO3dpZHRoOjB9Lnl0cC1pbmZvLXBhbmVsLXByZXZpZXctdGV4dHtiYWNrZ3JvdW5kOm5vbmU7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE2cHg7cG9pbnRlci1ldmVudHM6bm9uZTttYXJnaW46OHB4O2NvbG9yOnJnYigyNTUsMjU1LDI1NSk7b3BhY2l0eToxO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7LXdlYmtpdC1saW5lLWNsYW1wOjI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3doaXRlLXNwYWNlOm5vcm1hbDtkaXNwbGF5Oi13ZWJraXQtYm94O292ZXJmbG93OmhpZGRlbjstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWluZm8tcGFuZWwtcHJldmlldy10ZXh0W2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9I2lubGluZS1wcmV2aWV3LXBsYXllciAuY2FwdGlvbi13aW5kb3csI2lubGluZS1wcmV2aWV3LXBsYXllciAueXRwLWNhcHRpb24td2luZG93LWNvbnRhaW5lcntwb2ludGVyLWV2ZW50czpub25lfS55dHAtbW9kZXJuLWNhcHRpb24jaW5saW5lLXByZXZpZXctcGxheWVyIC55dHAtY2FwdGlvbi13aW5kb3ctY29udGFpbmVyLC55dHAtbW9kZXJuLWNhcHRpb24ueXRwLW13ZWItcGxheWVyIC55dHAtY2FwdGlvbi13aW5kb3ctY29udGFpbmVye3dpZHRoOmNhbGMoMTAwJSAtIDQ4cHgpfS55dHAtbW9kZXJuLWNhcHRpb24jaW5saW5lLXByZXZpZXctcGxheWVyIC5jYXB0aW9uLXdpbmRvdywueXRwLW1vZGVybi1jYXB0aW9uLnl0cC1td2ViLXBsYXllciAuY2FwdGlvbi13aW5kb3d7Ym9yZGVyOjhweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjRweDtmb250LXdlaWdodDo1MDB9Lnl0cC1tb2Rlcm4tY2FwdGlvbiNpbmxpbmUtcHJldmlldy1wbGF5ZXIgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b20sLnl0cC1tb2Rlcm4tY2FwdGlvbi55dHAtbXdlYi1wbGF5ZXIgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbToxNnB4fS55dHAtaW5wdXQtc2xpZGVyLXNlY3Rpb257ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0cC1pbnB1dC1zbGlkZXJ7LS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudDowOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtsZWZ0OjA7cmlnaHQ6MDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MjRweDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Oy13ZWJraXQtd3JpdGluZy1tb2RlOmhvcml6b250YWwtdGI7LW1zLXdyaXRpbmctbW9kZTpsci10Yjt3cml0aW5nLW1vZGU6aG9yaXpvbnRhbC10YjtkaXJlY3Rpb246bHRyfS55dHAtaW5wdXQtc2xpZGVyOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFja3tiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLHJpZ2h0IHRvcCxmcm9tKCNmZmYpLGNvbG9yLXN0b3AoI2ZmZiksY29sb3Itc3RvcCgjNjY2KSx0bygjNjY2KSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCNmZmYgMCwjZmZmIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjNjY2IHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjNjY2IDEwMCUpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCNmZmYgMCwjZmZmIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjNjY2IHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjNjY2IDEwMCUpO2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czoxMnB4fS55dHAtaW5wdXQtc2xpZGVyOjotbW96LXJhbmdlLXRyYWNre2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCNmZmYgMCwjZmZmIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSxyZ2JhKDI1NSwyNTUsMjU1LC4yKSB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCkscmdiYSgyNTUsMjU1LDI1NSwuMikgMTAwJSk7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1pbnB1dC1zbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXRodW1iey13ZWJraXQtYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kOiNmZmY7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjhweDttYXJnaW4tdG9wOi02cHh9Lnl0cC1pbnB1dC1zbGlkZXI6Oi1tb3otcmFuZ2UtdGh1bWJ7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQ6I2ZmZjt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2JvcmRlci1yYWRpdXM6OHB4fS55dHAtaW5wdXQtc2xpZGVyOjotbXMtdGh1bWJ7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQ6I2ZmZjt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2JvcmRlci1yYWRpdXM6OHB4fS55dHAtdmFyaXNwZWVkLWlucHV0LXNsaWRlcjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxyaWdodCB0b3AsZnJvbSgjZmZmKSxjb2xvci1zdG9wKCNmZmYpLGNvbG9yLXN0b3AoIzkwOTA5MCksdG8oIzkwOTA5MCkpO2JhY2tncm91bmQ6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwjZmZmIDAsI2ZmZiB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCAxMDAlKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwjZmZmIDAsI2ZmZiB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCAxMDAlKX1Ac3VwcG9ydHMgKCgtd2Via2l0LXdyaXRpbmctbW9kZTp2ZXJ0aWNhbC1ybCkgb3IgKHdyaXRpbmctbW9kZTp2ZXJ0aWNhbC1ybCkpey55dHAtdmVydGljYWwtc2xpZGVyIC55dHAtaW5wdXQtc2xpZGVyey13ZWJraXQtd3JpdGluZy1tb2RlOnZlcnRpY2FsLXJsOy1tcy13cml0aW5nLW1vZGU6YnQtcmw7d3JpdGluZy1tb2RlOnZlcnRpY2FsLXJsO2RpcmVjdGlvbjpydGw7aGVpZ2h0OmluaGVyaXQ7d2lkdGg6MjRweH0ueXRwLXZlcnRpY2FsLXNsaWRlciAueXRwLWlucHV0LXNsaWRlcjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IGJvdHRvbSxsZWZ0IHRvcCxmcm9tKCNmZmYpLGNvbG9yLXN0b3AoI2ZmZiksY29sb3Itc3RvcCgjNjY2KSx0bygjNjY2KSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChib3R0b20sI2ZmZiAwLCNmZmYgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLCM2NjYgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLCM2NjYgMTAwJSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gdG9wLCNmZmYgMCwjZmZmIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjNjY2IHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjNjY2IDEwMCUpO3dpZHRoOjRweH0ueXRwLXZlcnRpY2FsLXNsaWRlciAueXRwLWlucHV0LXNsaWRlcjo6LW1vei1yYW5nZS10cmFja3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byB0b3AsI2ZmZiAwLCNmZmYgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLHJnYmEoMjU1LDI1NSwyNTUsLjIpIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSxyZ2JhKDI1NSwyNTUsMjU1LC4yKSAxMDAlKTt3aWR0aDo0cHg7aGVpZ2h0OjEwMCV9Lnl0cC12ZXJ0aWNhbC1zbGlkZXIgLnl0cC1pbnB1dC1zbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXRodW1ie21hcmdpbi1yaWdodDotNnB4fS55dHAtdmVydGljYWwtc2xpZGVyIC55dHAtaW5wdXQtc2xpZGVyOjotbW96LXJhbmdlLXRodW1ie21hcmdpbi1yaWdodDowfX0ueXRwLWNocm9tZS1jb250cm9scyAueXRwLWp1bXAtYnV0dG9ue3dpZHRoOjQ2cHg7LXdlYmtpdC1ib3gtZmxleDowOy13ZWJraXQtZmxleDowIDAgYXV0bztmbGV4OjAgMCBhdXRvO3BhZGRpbmc6OXB4O2Rpc3BsYXk6bm9uZX0ueXRwLWNocm9tZS1jb250cm9scyAueXRwLWp1bXAtYnV0dG9uLnl0cC1qdW1wLWJ1dHRvbi1lbmFibGVke2Rpc3BsYXk6YmxvY2t9Lnl0cC1iaWctbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWp1bXAtYnV0dG9ue3BhZGRpbmctdG9wOjEycHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtanVtcC1idXR0b257cGFkZGluZy10b3A6N3B4fS55dHAtc21hbGwtbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWp1bXAtYnV0dG9uLnl0cC1qdW1wLWJ1dHRvbi1lbmFibGVkLC55dHAtdGlueS1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtanVtcC1idXR0b24ueXRwLWp1bXAtYnV0dG9uLWVuYWJsZWR7ZGlzcGxheTpub25lfS55dHAtanVtcC1idXR0b24tdGV4dHtmaWxsOiNmZmY7Zm9udC1zaXplOjlweDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7Zm9udC13ZWlnaHQ6OTAwfS55dHAtanVtcC1zcGluIC55dHAtY2lyY2xlLWFycm93ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6eXRwLWp1bXAtc3BpbjthbmltYXRpb24tbmFtZTp5dHAtanVtcC1zcGluOy13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOi4yNXM7YW5pbWF0aW9uLWR1cmF0aW9uOi4yNXM7LXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGU7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0O2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbi1vdXQ7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjstbXMtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXJ9Lnl0cC1qdW1wLXNwaW4uYmFja3dhcmRzIC55dHAtY2lyY2xlLWFycm93ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6eXRwLWp1bXAtc3Bpbi1iYWNrd2FyZHM7YW5pbWF0aW9uLW5hbWU6eXRwLWp1bXAtc3Bpbi1iYWNrd2FyZHN9QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1qdW1wLXNwaW57MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDF0dXJuKTt0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19QGtleWZyYW1lcyB5dHAtanVtcC1zcGluezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxdHVybik7dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtanVtcC1zcGluLWJhY2t3YXJkc3swJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMXR1cm4pO3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfX1Aa2V5ZnJhbWVzIHl0cC1qdW1wLXNwaW4tYmFja3dhcmRzezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxdHVybik7dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9fS55dHAtbGFyZ2UtcGxheS1idXR0b257cG9zaXRpb246YWJzb2x1dGU7bGVmdDo1MCU7dG9wOjUwJTt3aWR0aDo2OHB4O2hlaWdodDo0OHB4O21hcmdpbi1sZWZ0Oi0zNHB4O21hcmdpbi10b3A6LTI0cHg7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7ei1pbmRleDo2M30ueXRwLWxhcmdlLXBsYXktYnV0dG9uLnl0cC1zaG9ydHMtbW9kZXt3aWR0aDo2OHB4O2hlaWdodDo5MHB4fS55dHAtYmlnLW1vZGUgLnl0cC1sYXJnZS1wbGF5LWJ1dHRvbi55dHAtc2hvcnRzLW1vZGV7d2lkdGg6MTAycHg7aGVpZ2h0OjEzNXB4fS55dHAtZG5pIC55dHAtbGFyZ2UtcGxheS1idXR0b24sLnl0cC1kbmkueXRwLWJpZy1tb2RlIC55dHAtbGFyZ2UtcGxheS1idXR0b24sLnl0cC1kbmkueXRwLXNtYWxsLW1vZGUgLnl0cC1sYXJnZS1wbGF5LWJ1dHRvbnt3aWR0aDo3NXB4O2hlaWdodDo3NXB4O21hcmdpbi1sZWZ0Oi0zNy41cHg7bWFyZ2luLXRvcDotMzcuNXB4fS5ob3VzZS1icmFuZCAueXRwLWxhcmdlLXBsYXktYnV0dG9ue3dpZHRoOjYwcHg7aGVpZ2h0OjYwcHg7bWFyZ2luLWxlZnQ6LTMwcHg7bWFyZ2luLXRvcDotMzBweH0ueXRwLWxhcmdlLXBsYXktYnV0dG9uIHN2Z3toZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJX0ueXRwLWRuaSAueXRwLWN1ZWQtdGh1bWJuYWlsLW92ZXJsYXkgLnl0cC1kbmktbGFyZ2UtcGxheS1idXR0b24tYmd7LXdlYmtpdC10cmFuc2l0aW9uOmZpbGwgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksZmlsbC1vcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246ZmlsbCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxmaWxsLW9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7ZmlsbC1vcGFjaXR5Oi44fS55dHAtZG5pIC55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheTpob3ZlciAueXRwLWRuaS1sYXJnZS1wbGF5LWJ1dHRvbi1iZ3std2Via2l0LXRyYW5zaXRpb246ZmlsbCAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxmaWxsLW9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpmaWxsIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLGZpbGwtb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtmaWxsLW9wYWNpdHk6MX0ueXRwLWJpZy1tb2RlIC55dHAtbGFyZ2UtcGxheS1idXR0b257d2lkdGg6MTAycHg7aGVpZ2h0OjcycHg7bWFyZ2luLWxlZnQ6LTUxcHg7bWFyZ2luLXRvcDotMzZweH0uaG91c2UtYnJhbmQueXRwLWJpZy1tb2RlIC55dHAtbGFyZ2UtcGxheS1idXR0b257d2lkdGg6OTBweDtoZWlnaHQ6OTBweDttYXJnaW4tbGVmdDotNDVweDttYXJnaW4tdG9wOi00NXB4fS55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheVthcmlhLWhpZGRlbj10cnVlXSAueXRwLWxhcmdlLXBsYXktYnV0dG9uLC55dHAtbWVudS1zaG93biAueXRwLWxhcmdlLXBsYXktYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLW11dGVkLWF1dG9wbGF5LWVuZC1wYW5lbCAueXRwLWxhcmdlLXBsYXktYnV0dG9ue2Rpc3BsYXk6YmxvY2t9Lnl0cC1sYXJnZS1wbGF5LWJ1dHRvbi1iZ3std2Via2l0LXRyYW5zaXRpb246ZmlsbCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxmaWxsLW9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpmaWxsIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLGZpbGwtb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTtmaWxsOiMyMTIxMjE7ZmlsbC1vcGFjaXR5Oi44fS55dHAtbGFyZ2UtcGxheS1idXR0b24tcmVkLWJnIC55dHAtbGFyZ2UtcGxheS1idXR0b24tYmd7ZmlsbDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLXN0YXRpYy1icmFuZC1yZWQsI2YwMyk7ZmlsbC1vcGFjaXR5OjF9Lnl0cC1jdWVkLXRodW1ibmFpbC1vdmVybGF5OmhvdmVyIC55dHAtbGFyZ2UtcGxheS1idXR0b24tYmcsLnl0cC1sYXJnZS1wbGF5LWJ1dHRvbi55dHAtdG91Y2gtZGV2aWNlIC55dHAtbGFyZ2UtcGxheS1idXR0b24tYmcsLnl0cC1tdXRlZC1hdXRvcGxheS1lbmRzY3JlZW4tb3ZlcmxheTpob3ZlciAueXRwLWxhcmdlLXBsYXktYnV0dG9uLWJney13ZWJraXQtdHJhbnNpdGlvbjpmaWxsIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLGZpbGwtb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmZpbGwgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksZmlsbC1vcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO2ZpbGw6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1zdGF0aWMtYnJhbmQtcmVkLCNmMDMpO2ZpbGwtb3BhY2l0eToxfS55dHAtY29sb3ItcGFydHkgLnl0cC1jdWVkLXRodW1ibmFpbC1vdmVybGF5OmhvdmVyIC55dHAtbGFyZ2UtcGxheS1idXR0b24tYmcsLnl0cC1jb2xvci1wYXJ0eSAueXRwLWxhcmdlLXBsYXktYnV0dG9uLnl0cC10b3VjaC1kZXZpY2UgLnl0cC1sYXJnZS1wbGF5LWJ1dHRvbi1iZywueXRwLWNvbG9yLXBhcnR5IC55dHAtbXV0ZWQtYXV0b3BsYXktZW5kc2NyZWVuLW92ZXJsYXk6aG92ZXIgLnl0cC1sYXJnZS1wbGF5LWJ1dHRvbi1iZ3std2Via2l0LWFuaW1hdGlvbjp5dHAtcGFydHktZmlsbCAuMTVzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246eXRwLXBhcnR5LWZpbGwgLjE1cyBsaW5lYXIgaW5maW5pdGV9LmhvdXNlLWJyYW5kIC55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheTpob3ZlciAueXRwLWxhcmdlLXBsYXktYnV0dG9uLWJnLC5ob3VzZS1icmFuZCAueXRwLW11dGVkLWF1dG9wbGF5LWVuZHNjcmVlbi1vdmVybGF5OmhvdmVyIC55dHAtbGFyZ2UtcGxheS1idXR0b24tYmd7ZmlsbDojMDAwfS55dHAtbGlua2VkLWFjY291bnQtcG9wdXAtY29udGFpbmVye3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH0ueXRwLWxpbmtlZC1hY2NvdW50LXBvcHVwe3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6NzI7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6d2hpdGU7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjIwcHg7Y29sb3I6cmdiYSgxNywxNywxNywuOCk7Zm9udC1mYW1pbHk6WW91VHViZSBOb3RvLFJvYm90byxBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtkaXNwbGF5OmJsb2NrO3dpZHRoOjQwMHB4O292ZXJmbG93LXk6YXV0b31odG1sW2RhcmtdIC55dHAtbGlua2VkLWFjY291bnQtcG9wdXB7YmFja2dyb3VuZDpyZ2JhKDMzLDMzLDMzLC45NSk7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KX0ueXRwLWxpbmtlZC1hY2NvdW50LXBvcHVwLWJ1dHRvbnN7cGFkZGluZzo4cHggOHB4IDhweCAyNHB4O2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYigyMzgsMjM4LDIzOCk7LXdlYmtpdC1ib3gtcGFjazplbmQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fS55dHAtbGlua2VkLWFjY291bnQtcG9wdXAtYnV0dG9ue2ZvbnQtd2VpZ2h0OjUwMDtsZXR0ZXItc3BhY2luZzouMDA3cHg7bGluZS1oZWlnaHQ6MjBweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6IzA2NWZkNDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MTBweCAxNnB4fWh0bWxbZGFya10gLnl0cC1saW5rZWQtYWNjb3VudC1wb3B1cC1idXR0b257Y29sb3I6IzNlYTZmZn0ueXRwLWxpbmtlZC1hY2NvdW50LXBvcHVwLXRpdGxle2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0OjI4cHg7bWFyZ2luOjE2cHggMjRweDtjb2xvcjpyZ2IoMywzLDMpfWh0bWxbZGFya10gLnl0cC1saW5rZWQtYWNjb3VudC1wb3B1cC10aXRsZXtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpfS55dHAtbGlua2VkLWFjY291bnQtcG9wdXAtZGVzY3JpcHRpb257cGFkZGluZzowIDI0cHg7bWFyZ2luOjRweCAwIDI0cHh9Lnl0cC1tZHgtcHJpdmFjeS1wb3B1cC1jb25maXJte2ZvbnQtd2VpZ2h0OjUwMDtmb250LXNpemU6MTRweDttYXJnaW46MTJweCAwO3BhZGRpbmc6MTBweCAyMHB4O2JvcmRlci1yYWRpdXM6MnB4O2JhY2tncm91bmQ6IzY2Njt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9Lnl0cC1tZHgtcHJpdmFjeS1wb3B1cC1jYW5jZWx7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc2l6ZToxNHB4O21hcmdpbjoxMnB4IDA7cGFkZGluZzoxMHB4IDIwcHg7Ym9yZGVyLXJhZGl1czoycHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtbWR4LXBvcHVwLWRpYWxvZ3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt6LWluZGV4Ojc1O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7dGV4dC1hbGlnbjpjZW50ZXI7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1tZHgtcG9wdXAtZGlhbG9nLWlubmVyLWNvbnRlbnR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTttYXJnaW4tdG9wOi03MHB4O2xlZnQ6MDtyaWdodDowO3BhZGRpbmc6MCAyMCV9Lnl0cC1tZHgtcG9wdXAtdGl0bGV7Zm9udC1zaXplOjIwcHg7cGFkZGluZy1ib3R0b206MTZweH0ueXRwLW1keC1wb3B1cC1kZXNjcmlwdGlvbntmb250LXNpemU6MTRweH0ueXRwLW1keC1wcml2YWN5LXBvcHVwLWJ1dHRvbnN7bWFyZ2luLXRvcDoyMHB4O2hlaWdodDo0NHB4fS55dHAtYmlnLW1vZGUgLm1keC1wcml2YWN5LXBvcHVwLWJ1dHRvbnN7bWFyZ2luLXRvcDozMHB4O2hlaWdodDo2N3B4fS5odG1sNS12aWRlby1wbGF5ZXIueXRwLXBsYXllci1taW5pbWl6ZWQ6bm90KC5lbmRlZC1tb2RlKTpub3QoLmN1ZWQtbW9kZSk6bm90KC51bnN0YXJ0ZWQtbW9kZSl7b3ZlcmZsb3c6dmlzaWJsZX0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC15cGMtcGxheWVyLWNvbnRlbnR7ZGlzcGxheTpub25lfS55dHAtbWluaXBsYXllci11aXtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3otaW5kZXg6Njd9Lnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZXt6LWluZGV4OjY4fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2Utd2l0aC1jb250cm9sc3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0zMHB4KTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTMwcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0zMHB4KX0ueXRwLW1pbmlwbGF5ZXItc2NyaW17d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpOy13ZWJraXQtdHJhbnNpdGlvbjouMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgLjFzO3RyYW5zaXRpb246LjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpIC4xcztvcGFjaXR5OjA7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWp1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0cC1taW5pcGxheWVyLXNjcmltOmZvY3VzLXdpdGhpbntvcGFjaXR5OjF9Lmh0bWw1LXZpZGVvLXBsYXllci55dHAtcGxheWVyLW1pbmltaXplZC51bnN0YXJ0ZWQtbW9kZSAueXRwLW1pbmlwbGF5ZXItc2NyaW17b3BhY2l0eToxfS55dHAtbWluaXBsYXllci1zY3JpbTpob3ZlcntvcGFjaXR5OjF9Lnl0cC1taW5pcGxheWVyLWJ1dHRvbnN7ZGlzcGxheTpub25lfS55dHAtcGxheWVyLW1pbmltaXplZC5lbmRlZC1tb2RlIC55dHAtbWluaXBsYXllci1idXR0b25ze2Rpc3BsYXk6YmxvY2t9Lnl0cC1wbGF5ZXItbWluaW1pemVkLmFkLXNob3dpbmcgLnl0cC1taW5pcGxheWVyLWJ1dHRvbnN7ZGlzcGxheTpub25lfS55dHAtbWluaXBsYXllci1jbG9zZS1idXR0b257cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O3BhZGRpbmc6OHB4O3otaW5kZXg6Njd9Lnl0cC1taW5pcGxheWVyLWV4cGFuZC13YXRjaC1wYWdlLWJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O3BhZGRpbmc6OHB4O3otaW5kZXg6Njd9Lnl0cC1taW5pcGxheWVyLWV4cGFuZC13YXRjaC1wYWdlLWJ1dHRvbi55dHAtbWluaXBsYXllci1idXR0b24tYm90dG9tLXJpZ2h0e2JvdHRvbTo0cHg7cmlnaHQ6MH0ueXRwLW1pbmlwbGF5ZXItZXhwYW5kLXdhdGNoLXBhZ2UtYnV0dG9uLnl0cC1taW5pcGxheWVyLWJ1dHRvbi10b3AtbGVmdHt0b3A6MDtsZWZ0OjB9Lnl0cC1taW5pcGxheWVyLXJlcGxheS1idXR0b257cG9zaXRpb246YWJzb2x1dGU7bGVmdDo4cHg7Ym90dG9tOjhweDt3aWR0aDozMnB4O2hlaWdodDozMnB4O3otaW5kZXg6Njd9Lnl0cC1wbGF5ZXItbWluaW1pemVkLmFkLXNob3dpbmcgLnl0cC1taW5pcGxheWVyLXJlcGxheS1idXR0b257ZGlzcGxheTpub25lfS55dHAtbWluaXBsYXllci1jb250cm9sc3tkaXJlY3Rpb246bHRyO2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4O3dpZHRoOjI2NHB4Oy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1qdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjstd2Via2l0LWp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0ueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcnttaW4td2lkdGg6NjRweH0ueXRwLW1pbmlwbGF5ZXItdWkgLnl0cC1wbGF5LWJ1dHRvbnt3aWR0aDo3MnB4O2hlaWdodDo3MnB4fS55dHAtbWluaXBsYXllci11aSAueXRwLW5leHQtYnV0dG9uLC55dHAtbWluaXBsYXllci11aSAueXRwLXByZXYtYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjY0cHg7aGVpZ2h0OjY0cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1taW5pcGxheWVyLXVpIC55dHAtbmV4dC1idXR0b24sLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1taW5pcGxheWVyLXVpIC55dHAtcHJldi1idXR0b257d2lkdGg6MzJweDtoZWlnaHQ6MzJweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW1pbmlwbGF5ZXItdWkgLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXJ7bWluLXdpZHRoOjMycHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1taW5pcGxheWVyLXVpIC55dHAtcGxheS1idXR0b257d2lkdGg6NDJweDtoZWlnaHQ6NDJweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW1pbmlwbGF5ZXItdWkgLnl0cC1taW5pcGxheWVyLWNvbnRyb2xzIHN2Z3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dHAtbWluaXBsYXllci11aSAueXRwLXRpbWUtZGlzcGxheXtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjdweDtib3R0b206MH0ueXRwLW1pbmlwbGF5ZXItdWkgLnl0cC10aW1lLWRpc3BsYXkgLnl0cC1saXZlLWJhZGdle2Rpc3BsYXk6bm9uZTt3aWR0aDphdXRvO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ueXRwLW1pbmlwbGF5ZXItdWkgLnl0cC10aW1lLWRpc3BsYXkueXRwLWxpdmUgLnl0cC1saXZlLWJhZGdle2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHAtcGxheWVyLW1pbmltaXplZC5hZC1zaG93aW5nIC55dHAtbWluaXBsYXllci11aXtkaXNwbGF5OmJsb2NrfS55dHAtcGxheWVyLW1pbmltaXplZC5hZC1zaG93aW5nIC55dHAtbWluaXBsYXllci11aSAueXRwLW5leHQtYnV0dG9uLC55dHAtcGxheWVyLW1pbmltaXplZC5hZC1zaG93aW5nIC55dHAtbWluaXBsYXllci11aSAueXRwLXByZXYtYnV0dG9uLC55dHAtcGxheWVyLW1pbmltaXplZC5hZC1zaG93aW5nIC55dHAtbWluaXBsYXllci11aSAueXRwLXRpbWUtZGlzcGxheXtkaXNwbGF5Om5vbmV9Lnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtdG9vbHRpcC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLXRpdGxle3dpZHRoOjIwMCU7dGV4dC1hbGlnbjpjZW50ZXI7cmlnaHQ6NDhweH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1kcmFnIC55dHAtZXhwLWNoYXB0ZXItaG92ZXItZWZmZWN0LC55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXIgLnl0cC1leHAtY2hhcHRlci1ob3Zlci1jb250YWluZXI6aG92ZXIsLnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3ZlciAueXRwLWV4cC1jaGFwdGVyLWhvdmVyLWVmZmVjdHtib3R0b206MXB4Oy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxLjQpOy1tcy10cmFuc2Zvcm06c2NhbGVZKDEuNCk7dHJhbnNmb3JtOnNjYWxlWSgxLjQpOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyLC55dHAtc21hbGwtbW9kZS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOi0xcHg7ei1pbmRleDo2OH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC10aW1lLWRpc3BsYXl7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLXBsYXllci1taW5pbWl6ZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXJ7Ym90dG9tOjB9Lnl0cC1wbGF5ZXItbWluaW1pemVkIC52aWRlby1hZHMsLnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1tZW51LXNob3duIC52aWRlby1hZHN7ZGlzcGxheTpibG9ja30ueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1hZC1wbGF5ZXItb3ZlcmxheXtvdmVyZmxvdzpoaWRkZW59Lnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1tZW51LXNob3duIC55dHAtYWQtcGxheWVyLW92ZXJsYXktZmx5b3V0LWN0YSwueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1hZC1wcmV2aWV3LWNvbnRhaW5lciwueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1hZC1za2lwLWJ1dHRvbi1jb250YWluZXJ7Ym90dG9tOjMycHh9Lnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1tZW51LXNob3duIC55dHAtYWQtcGxheWVyLW92ZXJsYXktaW5zdHJlYW0taW5mb3tib3R0b206M3B4O2xlZnQ6NnB4fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsIC55dHAtdG9vbHRpcC10aXRsZXt0ZXh0LXRyYW5zZm9ybTpjYXBpdGFsaXplO2ZvbnQtc2l6ZToxMnB4fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3e21heC13aWR0aDpjYWxjKDEwMCUgLSAyNHB4KTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246cmV2ZXJzZTstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlOy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTstd2Via2l0LWp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS55dHAtcGxheWVyLW1pbmltaXplZCAuaHRtbDUtbWFpbi12aWRlbywueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1taW5pcGxheWVyLXNjcmlte2JvcmRlci1yYWRpdXM6MTJweCAxMnB4IDAgMH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLmh0bWw1LW1haW4tdmlkZW97Ym9yZGVyLXJhZGl1czowfS55dHAtcGxheWVyLW1pbmltaXplZC55dHAtcGxheWVyLWRvY3VtZW50LXBpY3R1cmUtaW4tcGljdHVyZSAueXRwLW1pbmlwbGF5ZXItY2xvc2UtYnV0dG9uLC55dHAtcGxheWVyLW1pbmltaXplZC55dHAtcGxheWVyLWRvY3VtZW50LXBpY3R1cmUtaW4tcGljdHVyZSAueXRwLW1pbmlwbGF5ZXItZXhwYW5kLXdhdGNoLXBhZ2UtYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLXBsYXllci1kb2N1bWVudC1waWN0dXJlLWluLXBpY3R1cmUgLmh0bWw1LW1haW4tdmlkZW8sLnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1wbGF5ZXItZG9jdW1lbnQtcGljdHVyZS1pbi1waWN0dXJlIC55dHAtbWluaXBsYXllci1zY3JpbSwueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLXBsYXllci1kb2N1bWVudC1waWN0dXJlLWluLXBpY3R1cmUuaHRtbDUtdmlkZW8tcGxheWVye2JvcmRlci1yYWRpdXM6MH0ueXRwLXRpdGxlLW5vdGlmaWNhdGlvbnN7LXdlYmtpdC1hbGlnbi1zZWxmOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcjttYXJnaW4tcmlnaHQ6NXB4O3RleHQtYWxpZ246Y2VudGVyfWJ1dHRvbi55dHAtYnV0dG9uLnl0cC10aXRsZS1ub3RpZmljYXRpb25ze21hcmdpbi1sZWZ0OjhweDt3aWR0aDo0OHB4fS55dHAtdGl0bGUtbm90aWZpY2F0aW9uczpub3QoLnl0cC1ub3RpZmljYXRpb25zLWVuYWJsZWQpIC55dHAtdGl0bGUtbm90aWZpY2F0aW9ucy1vbntkaXNwbGF5Om5vbmV9Lnl0cC10aXRsZS1ub3RpZmljYXRpb25zLnl0cC1ub3RpZmljYXRpb25zLWVuYWJsZWQgLnl0cC10aXRsZS1ub3RpZmljYXRpb25zLW9mZntkaXNwbGF5Om5vbmV9Lnl0cC1vZmZsaW5lLXNsYXRle3otaW5kZXg6MjE7b3ZlcmZsb3c6aGlkZGVufS55dHAtb2ZmbGluZS1zbGF0ZS1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6bm8tcmVwZWF0IDUwJS9jb3Zlcjtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3RvcDowO2xlZnQ6MDt6LWluZGV4OjIyfS55dHAtb2ZmbGluZS1zbGF0ZS55dHAtb2ZmbGluZS1zbGF0ZS1oaWRlLWJhY2tncm91bmQgLnl0cC1vZmZsaW5lLXNsYXRlLWJhY2tncm91bmR7ZGlzcGxheTpub25lfS5odG1sNS12aWRlby1wbGF5ZXIuZW5kZWQtbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUueXRwLW9mZmxpbmUtc2xhdGUtaGlkZS1iYWNrZ3JvdW5kIC55dHAtb2ZmbGluZS1zbGF0ZS1iYWNrZ3JvdW5ke2Rpc3BsYXk6YmxvY2t9Lnl0cC1vZmZsaW5lLXNsYXRlOm5vdCgueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlcikgLnl0cC1vZmZsaW5lLXNsYXRlLWJhci1mYWRlLnl0cC1vZmZsaW5lLXNsYXRlLWJhcntkaXNwbGF5Om5vbmV9Lnl0cC1vZmZsaW5lLXNsYXRlLWJhcntwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MCA2cHg7bGVmdDoxMnB4O2hlaWdodDo1NnB4O2JvdHRvbTo2MHB4Oy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDt0ZXh0LWFsaWduOmxlZnQ7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7Y29sb3I6I2ZmZjstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7ei1pbmRleDo0Njtib3JkZXItcmFkaXVzOjhweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW9mZmxpbmUtc2xhdGUtYmFye2JhY2tncm91bmQtY29sb3I6cmdiYSg0MCw0MCw0MCwuNik7Ym9yZGVyLXJhZGl1czoxMnB4fS55dHAtb2ZmbGluZS1zbGF0ZS1iYXIueXRwLW9mZmxpbmUtc2xhdGUtYmFyLWhpZGRlbntkaXNwbGF5Om5vbmV9Lnl0cC1lbWJlZCAueXRwLW9mZmxpbmUtc2xhdGUtYmFye2JvdHRvbTo1MnB4fS55dHAtYmlnLW1vZGUgLnl0cC1vZmZsaW5lLXNsYXRlLWJhcntwYWRkaW5nOjAgOXB4O2hlaWdodDo4NHB4O2JvdHRvbTo5MHB4O2xlZnQ6MThweH0ueXRwLWVtYmVkLnl0cC1iaWctbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUtYmFye2JvdHRvbTo5MHB4fS55dHAtYXV0b2hpZGUgLnl0cC1vZmZsaW5lLXNsYXRlLWJhciwueXRwLWhpZGUtY29udHJvbHMgLnl0cC1vZmZsaW5lLXNsYXRlLWJhcntib3R0b206MTJweDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYXV0b2hpZGUgLnl0cC1iaWctbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUtYmFyLC55dHAtaGlkZS1jb250cm9scyAueXRwLWJpZy1tb2RlIC55dHAtb2ZmbGluZS1zbGF0ZS1iYXJ7Ym90dG9tOjE4cHh9Lnl0cC1vZmZsaW5lLXNsYXRlLWljb257bWFyZ2luOjAgMTRweDt3aWR0aDoyNHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtb2ZmbGluZS1zbGF0ZS1pY29ue2Rpc3BsYXk6bm9uZX0ueXRwLWJpZy1tb2RlIC55dHAtb2ZmbGluZS1zbGF0ZS1pY29ue3dpZHRoOjM2cHh9Lnl0cC1vZmZsaW5lLXNsYXRlLWJ1dHRvbnN7bWFyZ2luOjEycHggNnB4fS55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b257bWluLXdpZHRoOjgwcHg7aGVpZ2h0OjMycHg7cGFkZGluZzowIDhweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjI1KTtib3JkZXItcmFkaXVzOjJweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW9mZmxpbmUtc2xhdGUtYnV0dG9ue2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItcmFkaXVzOjE4cHg7Y29sb3I6IzI4MjgyOH0ueXRwLW9mZmxpbmUtc2xhdGUtYnV0dG9uLWljb257ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlO2hlaWdodDoyNHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b24taWNvbntoZWlnaHQ6MThweDt3aWR0aDoxOHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b24taWNvbiBzdmd7ZmlsbDojMjgyODI4O2hlaWdodDoxOHB4O3dpZHRoOjE4cHh9Lnl0cC1vZmZsaW5lLXNsYXRlLWJ1dHRvbi10ZXh0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW46MCA4cHg7bGluZS1oZWlnaHQ6MzJweDtmb250LXNpemU6MTEwJTtmb250LXdlaWdodDo1MDB9Lnl0cC1yZW1pbmRlci1tZW51e2JhY2tncm91bmQ6cmdiYSgyOCwyOCwyOCwuOSk7Ym9yZGVyLXJhZGl1czoycHg7Ym90dG9tOjU1cHg7b3V0bGluZTpub25lO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LXNoYWRvdzowIDAgMnB4IHJnYmEoMCwwLDAsLjUpO3doaXRlLXNwYWNlOm5vd3JhcDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZX0ueXRwLXJlbWluZGVyLW1lbnVbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLXJlbWluZGVyLW1lbnUtY29udGVudHN7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOiNlZWU7ZGlzcGxheTp0YWJsZTtwYWRkaW5nOjhweCAwO3dpZHRoOjEwMCV9Lnl0cC1yZW1pbmRlci1tZW51LWl0ZW17Y3Vyc29yOmRlZmF1bHQ7ZGlzcGxheTp0YWJsZS1yb3c7aGVpZ2h0OjQwcHg7b3V0bGluZTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1yZW1pbmRlci1tZW51LWl0ZW17aGVpZ2h0OjQ5cHh9Lnl0cC1yZW1pbmRlci1tZW51LWl0ZW06bm90KFthcmlhLWRpc2FibGVkPXRydWVdKXtjdXJzb3I6cG9pbnRlcn0ueXRwLXJlbWluZGVyLW1lbnUtaXRlbTpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMSl9Lnl0cC1yZW1pbmRlci1tZW51LWl0ZW0taWNvbiwueXRwLXJlbWluZGVyLW1lbnUtaXRlbS1sYWJlbHtkaXNwbGF5OnRhYmxlLWNlbGw7cGFkZGluZzowIDE1cHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS55dHAtcmVtaW5kZXItbWVudS1pdGVtLWxhYmVse2ZvbnQtc2l6ZToxMTglO2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nLWxlZnQ6MDt0ZXh0LXRyYW5zZm9ybTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1yZW1pbmRlci1tZW51LWl0ZW0tbGFiZWx7cGFkZGluZzowIDE1cHggMCAwfS55dHAtcmVtaW5kZXItbWVudS1pdGVtLWljb257cGFkZGluZzowIDEwcHh9Lnl0cC1iaWctbW9kZSAueXRwLXJlbWluZGVyLW1lbnUtaXRlbS1pY29ue3BhZGRpbmc6MCAxNXB4fS55dHAtcmVtaW5kZXItbWVudS1pdGVtLWljb24gc3Zne2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRwLWJpZy1tb2RlIC55dHAtcmVtaW5kZXItbWVudS1pdGVtLWljb24gc3Zne2hlaWdodDozNnB4O3dpZHRoOjM2cHh9Lnl0cC1iaWctbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUtYnV0dG9uc3ttYXJnaW46MThweCA5cHh9Lnl0cC1iaWctbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUtYnV0dG9ue21pbi13aWR0aDoxMjBweDtoZWlnaHQ6NDhweDtwYWRkaW5nOjAgMTJweDtib3JkZXItcmFkaXVzOjNweH0ueXRwLWJpZy1tb2RlIC55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b24tdGV4dHttYXJnaW46MCAxMnB4O2xpbmUtaGVpZ2h0OjQ4cHg7Zm9udC1zaXplOjEzMCU7Zm9udC13ZWlnaHQ6NTAwfS55dHAtb2ZmbGluZS1zbGF0ZS1tZXNzYWdlc3std2Via2l0LWJveC1mbGV4OjE7LXdlYmtpdC1mbGV4OjE7ZmxleDoxO21pbi13aWR0aDoxODBweDttYXJnaW46MCA2cHh9Lnl0cC1iaWctbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUtbWVzc2FnZXN7bWluLXdpZHRoOjI3MHB4O21hcmdpbjowIDlweH0ueXRwLW9mZmxpbmUtc2xhdGUtbWFpbi10ZXh0LC55dHAtb2ZmbGluZS1zbGF0ZS1zdWJ0aXRsZS10ZXh0e3RleHQtdHJhbnNmb3JtOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtb2ZmbGluZS1zbGF0ZS1tYWluLXRleHR7Zm9udC1zaXplOjE0MCU7Zm9udC13ZWlnaHQ6NDAwfS55dHAtb2ZmbGluZS1zbGF0ZS1zdWJ0aXRsZS10ZXh0e2ZvbnQtc2l6ZToxMTAlO2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLW9mZmxpbmUtc2xhdGUtY2xvc2UtYnV0dG9uLC55dHAtb2ZmbGluZS1zbGF0ZS1vcGVuLWJ1dHRvbntkaXNwbGF5Om5vbmV9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLWJhcnstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtYWxpZ246c3RhcnQ7LXdlYmtpdC1hbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7dG9wOjA7Ym90dG9tOjA7bGVmdDphdXRvO3JpZ2h0OjA7cGFkZGluZzoyNXB4O3BhZGRpbmctdG9wOjQ4cHg7bWluLXdpZHRoOmF1dG87d2lkdGg6MzAwcHg7aGVpZ2h0OmF1dG87Ym9yZGVyLXJhZGl1czowOy13ZWJraXQtdHJhbnNpdGlvbjpyaWdodCAuMjVzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246cmlnaHQgLjI1cyBlYXNlLWluLW91dDt6LWluZGV4OjIzfS55dHAtYmlnLW1vZGUgLnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLWJhcntwYWRkaW5nLXRvcDo2OXB4fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtYmFyLC55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtY2xvc2UtYnV0dG9uLC55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlci55dHAtb2ZmbGluZS1zbGF0ZS1jb2xsYXBzZWQgLnl0cC1vZmZsaW5lLXNsYXRlLW9wZW4tYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlci55dHAtb2ZmbGluZS1zbGF0ZS1jb2xsYXBzZWQgLnl0cC1vZmZsaW5lLXNsYXRlLWJhcntyaWdodDotMTAwJX0ueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtaWNvbntkaXNwbGF5Om5vbmV9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLWNsb3NlLWJ1dHRvbiwueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtb3Blbi1idXR0b257cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6NTBweDtoZWlnaHQ6NTBweDt0b3A6NTAlO3JpZ2h0OjA7bWFyZ2luLXRvcDotMjVweDt6LWluZGV4OjIzfS55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyIC55dHAtb2ZmbGluZS1zbGF0ZS1jbG9zZS1idXR0b257ZGlzcGxheTpibG9ja30ueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtb3Blbi1idXR0b246YmVmb3Jle2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoyOHB4O2xlZnQ6MTVweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDt3aWR0aDoyMHB4fS55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyIC55dHAtb2ZmbGluZS1zbGF0ZS1vcGVuLWJ1dHRvbiBzdmd7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowfS55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyLnl0cC1vZmZsaW5lLXNsYXRlLWNvbGxhcHNlZCAueXRwLW9mZmxpbmUtc2xhdGUtY2xvc2UtYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlci55dHAtb2ZmbGluZS1zbGF0ZS1jb2xsYXBzZWQgLnl0cC1vZmZsaW5lLXNsYXRlLW9wZW4tYnV0dG9ue2Rpc3BsYXk6YmxvY2t9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLW1lc3NhZ2Vzey13ZWJraXQtYm94LWZsZXg6MDstd2Via2l0LWZsZXg6bm9uZTtmbGV4Om5vbmU7bWFyZ2luOjB9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLW1haW4tdGV4dHtmb250LXNpemU6MjBweDtmb250LXdlaWdodDo1MDA7aGVpZ2h0OmF1dG99Lnl0cC1iaWctbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtbWFpbi10ZXh0e21hcmdpbi10b3A6MH0ueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtc3VidGl0bGUtdGV4dHtjb2xvcjojYWFhO2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0OjEuM2VtO21hcmdpbjo1cHggMCAyMHB4O3doaXRlLXNwYWNlOm5vcm1hbH0ueXRwLWJpZy1tb2RlIC55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyIC55dHAtb2ZmbGluZS1zbGF0ZS1zdWJ0aXRsZS10ZXh0e21hcmdpbi1sZWZ0OjB9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLWRlc2NyaXB0aW9ue2Rpc3BsYXk6YmxvY2s7dGV4dC10cmFuc2Zvcm06bm9uZTtmb250LXNpemU6MTNweDttYXJnaW46MjBweCAwO21heC1oZWlnaHQ6MzAwcHg7b3ZlcmZsb3c6aGlkZGVufS55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyIC55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b25ze21hcmdpbi1sZWZ0OjA7bWFyZ2luLXJpZ2h0OjB9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLWJ1dHRvbnMgLnl0cC1yZW1pbmRlci1tZW51e2JvdHRvbTphdXRvfS55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyIC55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b257YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC4zKTtjb2xvcjojZmZmO2ZvbnQtc2l6ZToxNHB4O2hlaWdodDphdXRvO3BhZGRpbmc6NHB4IDhweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLWJ1dHRvbiBzdmd7ZmlsbDojZmZmfS55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyIC55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b24tdGV4dHtmb250LXNpemU6MTEwJTtsaW5lLWhlaWdodDozMnB4O21hcmdpbjowIDhweH0ueXRwLWNocm9tZS10b3AgLnl0cC1vdmVyZmxvdy1idXR0b257d2lkdGg6YXV0bztoZWlnaHQ6YXV0bzttaW4td2lkdGg6NDhweH0ueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykueXRwLXNtYWxsLW1vZGUgLnl0cC1vdmVyZmxvdy1idXR0b257cGFkZGluZy10b3A6MTZweH0ueXRwLW92ZXJmbG93LWljb257bWFyZ2luOmF1dG87d2lkdGg6MzZweDtoZWlnaHQ6MzZweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0cC1vdmVyZmxvdy1wYW5lbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt6LWluZGV4Ojc0O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7dGV4dC1hbGlnbjpjZW50ZXI7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1vdmVyZmxvdy1wYW5lbFthcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1hdXRvaGlkZS55dHAtZW1iZWQtb3ZlcmxheXMtYXV0b2hpZGUgLnl0cC1vdmVyZmxvdy1wYW5lbHtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKS55dHAtZW1iZWQtb3ZlcmxheXMtYXV0b2hpZGUgLnl0cC1vdmVyZmxvdy1wYW5lbHtkaXNwbGF5Om5vbmV9Lnl0cC1vdmVyZmxvdy1wYW5lbC1jb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDowO3JpZ2h0OjA7bWFyZ2luLXRvcDotNDhweH0ueXRwLW92ZXJmbG93LXBhbmVsLWNsb3Nle3Bvc2l0aW9uOmFic29sdXRlO3RvcDo2cHg7cmlnaHQ6MTJweDtwYWRkaW5nOjA7d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLW1vYmlsZS55dHAtZW1iZWQtbW9iaWxlIC55dHAtb3ZlcmZsb3ctcGFuZWwtY2xvc2V7d2lkdGg6NDhweDtoZWlnaHQ6NDhweH0ueXRwLW92ZXJmbG93LXBhbmVsLWNsb3NlIHBhdGh7ZmlsbDojYWFhfS55dHAtb3ZlcmZsb3ctcGFuZWwtY2xvc2U6aG92ZXIgcGF0aHtmaWxsOiNmZmZ9Lnl0cC1vdmVyZmxvdy1wYW5lbC1hY3Rpb24tYnV0dG9uc3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtd3JhcDpub3dyYXA7ZmxleC13cmFwOm5vd3JhcDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpzdGFydDstd2Via2l0LWFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDo4cHggMTJweCA3MnB4O3otaW5kZXg6NTk7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktdG9wLWxlZnR7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJX0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktdG9wLWxlZnQ+Kntwb2ludGVyLWV2ZW50czphdXRvO21hcmdpbi1ib3R0b206MTJweH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktdG9wLXJpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7cmlnaHQ6MH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktdG9wLXJpZ2h0Pip7cG9pbnRlci1ldmVudHM6YXV0bzttYXJnaW4tYm90dG9tOjEycHg7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6YXV0b30ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktdG9wLXJpZ2h0IC55dHAtY2hyb21lLXRvcC1idXR0b25ze21hcmdpbi1ib3R0b206MH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktdG9wLXJpZ2h0IC55dHAtY2hyb21lLXRvcC1idXR0b25zPip7bWFyZ2luLWJvdHRvbToxMnB4fS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtb3ZlcmxheS1ib3R0b20tbGVmdHtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2JvdHRvbTowfS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtb3ZlcmxheS1ib3R0b20tbGVmdD4qe3BvaW50ZXItZXZlbnRzOmF1dG87bWFyZ2luLXRvcDoxMnB4fS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtb3ZlcmxheS1ib3R0b20tcmlnaHR7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDtib3R0b206MH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktYm90dG9tLXJpZ2h0Pip7cG9pbnRlci1ldmVudHM6YXV0bzttYXJnaW4tdG9wOjEycHg7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6MH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktaW5saW5lLWNvbnRhaW5lcnt3aWR0aDotd2Via2l0LWZpdC1jb250ZW50O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnQ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7Z2FwOjEycHh9Lnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC1vdmVybGF5LWlubGluZS1jb250YWluZXI+Kntwb2ludGVyLWV2ZW50czphdXRvfS55dHAtb3ZlcmxheXMtY29udGFpbmVyey13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjFzO3RyYW5zaXRpb246Ym90dG9tIC4xczstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWZ1bGwtYmxlZWQtcGxheWVyLnl0cC1ncmlkLXNjcm9sbGluZyAueXRwLW92ZXJsYXlzLWNvbnRhaW5lcnstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIDBzO3RyYW5zaXRpb246Ym90dG9tIDBzfS55dHAtYmlnLW1vZGUgLnl0cC1vdmVybGF5cy1jb250YWluZXJ7aW5zZXQ6OHB4IDI0cHggNzhweH0ueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykgLnl0cC1vdmVybGF5cy1jb250YWluZXJ7dG9wOjYwcHh9Lnl0cC1iaWctbW9kZTpub3QoLnl0cC1kZWxoaS1tb2Rlcm4pIC55dHAtb3ZlcmxheXMtY29udGFpbmVye3RvcDo2OXB4O2JvdHRvbTo3OHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtb3ZlcmxheXMtY29udGFpbmVye2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgMjRweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtb3ZlcmxheXMtY29udGFpbmVye2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgMjRweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSArIDEwMCUqdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1vdmVybGF5cy1jb250YWluZXJ7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAyNHB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtb3ZlcmxheXMtY29udGFpbmVye2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgMjRweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSArIDEwMCUqdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKX0ueXRwLWF1dG9oaWRlOm5vdCgueXRwLWF1dG9oaWRlLWFjdGl2ZSkgLnl0cC1vdmVybGF5cy1jb250YWluZXIsLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWF1dG9oaWRlOm5vdCgueXRwLWF1dG9oaWRlLWFjdGl2ZSkgLnl0cC1vdmVybGF5cy1jb250YWluZXJ7Ym90dG9tOjI0cHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1vdmVybGF5cy1jb250YWluZXIsLnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtb3ZlcmxheXMtY29udGFpbmVye2JvdHRvbTozNnB4fS5odG1sNS12aWRlby1wbGF5ZXIuZW5kZWQtbW9kZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LC55dHAtZGVsaGktbW9kZXJuLnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtcGxheWxpc3QtbWVudS1idXR0b257ZGlzcGxheTpub25lfS55dHAtcGFpZC1jb250ZW50LW92ZXJsYXl7Ym9yZGVyLXJhZGl1czoycHg7Ym90dG9tOjUzcHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEwOS4wOTA5MDkwOTA5JTtoZWlnaHQ6MzBweDtsZWZ0OjI1cHg7bGluZS1oZWlnaHQ6MzBweDtvdmVyZmxvdzpoaWRkZW47cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LXNoYWRvdzowIDAgMnB4IHJnYmEoMCwwLDAsLjUpO3otaW5kZXg6Mjd9Lnl0cC1iaWctbW9kZSAueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LC55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXl7cG9zaXRpb246cmVsYXRpdmU7aW5zZXQ6MH0ueXRwLWV4cC1wcHAtdXBkYXRlIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXl7Ym9yZGVyLXJhZGl1czowO2JvdHRvbTphdXRvO2ZvbnQtd2VpZ2h0OjQwMDtoZWlnaHQ6YXV0bztwb2ludGVyLWV2ZW50czphdXRvO3RvcDoxNnB4O2xlZnQ6MTZweDtyaWdodDphdXRvfS55dHAtZXhwLXBwcC11cGRhdGUgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheS1saW5rey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KTtib3JkZXItbGVmdDo0cHggc29saWQgIzNlYTZmZjtib3JkZXItcmFkaXVzOjRweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDttYXgtd2lkdGg6MzEycHg7cGFkZGluZzo4cHggMCA4cHggOHB4Oy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZXhwLXBwcC11cGRhdGUgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheS1saW5rW2hyZWY9IiMiXXtwb2ludGVyLWV2ZW50czpub25lfS55dHAtZXhwLXBwcC11cGRhdGUgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheS1pY29ue2hlaWdodDoyNHB4O3dpZHRoOjI0cHg7LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjB9Lnl0cC1leHAtcHBwLXVwZGF0ZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LXRleHR7YmFja2dyb3VuZDpub25lOy13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXgtZ3JvdzoxO2ZsZXgtZ3JvdzoxO2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OmluaGVyaXQ7bGluZS1oZWlnaHQ6MWVtO3BhZGRpbmc6OHB4fS55dHAtZXhwLXBwcC11cGRhdGUgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheS1jaGV2cm9ue2hlaWdodDoyNHB4O3dpZHRoOjI0cHg7LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjB9Lnl0cC1leHAtcHBwLXVwZGF0ZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LWNoZXZyb246ZW1wdHksLnl0cC1leHAtcHBwLXVwZGF0ZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LWljb246ZW1wdHl7aGVpZ2h0OjA7d2lkdGg6MH0ueXRwLWV4cC1wcHAtdXBkYXRlLnl0cC1iaWctbW9kZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5e2JvdHRvbTphdXRvO2hlaWdodDphdXRvO2xlZnQ6MTZweDtsaW5lLWhlaWdodDppbmhlcml0fS55dHAtZXhwLXBwcC11cGRhdGUueXRwLWJpZy1tb2RlIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXksLnl0cC1leHAtcHBwLXVwZGF0ZS55dHAtZW1iZWQgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheXt0b3A6NjRweH0ueXRwLWV4cC1wcHAtdXBkYXRlLnl0cC1iaWctbW9kZS55dHAtYXV0b2hpZGUgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheSwueXRwLWV4cC1wcHAtdXBkYXRlLnl0cC1iaWctbW9kZS55dHAtaGlkZS1pbmZvLWJhciAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LC55dHAtZXhwLXBwcC11cGRhdGUueXRwLWVtYmVkLnl0cC1hdXRvaGlkZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LC55dHAtZXhwLXBwcC11cGRhdGUueXRwLWVtYmVkLnl0cC1oaWRlLWluZm8tYmFyIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXl7dG9wOjE2cHh9Lnl0cC1leHAtcHBwLXVwZGF0ZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LWluZGljYXRvcntkaXNwbGF5Om5vbmV9Lnl0cC1leHAtcHBwLXVwZGF0ZSAueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LC55dHAtZXhwLXBwcC11cGRhdGUueXRwLWJpZy1tb2RlIC55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXksLnl0cC1leHAtcHBwLXVwZGF0ZS55dHAtYmlnLW1vZGUueXRwLWRlbGhpLW1vZGVybiAueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLXBhaWQtY29udGVudC1vdmVybGF5e3Bvc2l0aW9uOnJlbGF0aXZlO2luc2V0OjB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWV4cC1wcHAtdXBkYXRlIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXktbGlua3std2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0scmdiYSgwLDAsMCwuNikpO3BhZGRpbmc6NXB4O2JvcmRlci1sZWZ0OnVuc2V0fS55dHAtZGVsaGktbW9kZXJuLnl0cC1leHAtcHBwLXVwZGF0ZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LWluZGljYXRvcntkaXNwbGF5OmJsb2NrO3dpZHRoOjRweDtoZWlnaHQ6MjBweDtib3JkZXItcmFkaXVzOjRweDtiYWNrZ3JvdW5kLWNvbG9yOiMzZWE2ZmY7bWFyZ2luOjAgOHB4fS55dHAtZW1iZWQgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheXtib3R0b206NDVweH0ueXRwLXBhaWQtY29udGVudC1vdmVybGF5LXRleHR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MzJweDtvcGFjaXR5OjE7cGFkZGluZzowIDE0cHg7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1iaWctbW9kZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5e2JvdHRvbTo2MnB4O2hlaWdodDo0MnB4O2xlZnQ6NDRweDtsaW5lLWhlaWdodDo0MnB4fS55dHAtYXV0b2hpZGUgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheSwueXRwLWl2LWRyYXdlci1vcGVuIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXl7Ym90dG9tOjZweDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYmlnLW1vZGUueXRwLWF1dG9oaWRlIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXksLnl0cC1iaWctbW9kZS55dHAtaXYtZHJhd2VyLW9wZW4gLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheXtib3R0b206MTJweH0ueXRwLXBhaWQtY29udGVudC1vdmVybGF5LXRleHRbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLW1lbnVpdGVte2Rpc3BsYXk6dGFibGUtcm93O2N1cnNvcjpkZWZhdWx0O291dGxpbmU6bm9uZX0ueXRwLW1lbnVpdGVtOm5vdCgueXRwLW1lbnVpdGVtLXdpdGgtZm9vdGVyKXtoZWlnaHQ6NDBweH0ueXRwLWJpZy1tb2RlIC55dHAtbWVudWl0ZW06bm90KC55dHAtbWVudWl0ZW0td2l0aC1mb290ZXIpe2hlaWdodDo0OXB4fS55dHAtbWVudWl0ZW06bm90KFthcmlhLWRpc2FibGVkPXRydWVdKXtjdXJzb3I6cG9pbnRlcn0ueXRwLW1lbnVpdGVtOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4xKX0ueXRwLW1lbnVpdGVtLWNvbnRlbnQsLnl0cC1tZW51aXRlbS1pY29uLC55dHAtbWVudWl0ZW0tbGFiZWwsLnl0cC1tZW51aXRlbS1zZWNvbmRhcnktaWNvbntkaXNwbGF5OnRhYmxlLWNlbGw7dmVydGljYWwtYWxpZ246bWlkZGxlO3BhZGRpbmc6MCAxNXB4fS55dHAtbWVudWl0ZW0tbGFiZWx7cGFkZGluZy1sZWZ0OjB9Lnl0cC1tZW51aXRlbS1pY29ue3BhZGRpbmc6MCAxMHB4fS55dHAtYmlnLW1vZGUgLnl0cC1tZW51aXRlbS1pY29ue3BhZGRpbmc6MCAxNXB4fS55dHAtbWVudWl0ZW0taWNvbiBzdmd7ZGlzcGxheTpibG9jazt3aWR0aDoyNHB4O2hlaWdodDoyNHB4fS55dHAtbWVudWl0ZW0tc2Vjb25kYXJ5LWljb24gc3Zne2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTZweDtoZWlnaHQ6MTZweH0ueXRwLWJpZy1tb2RlOm5vdCgueXRwLWRlbGhpLW1vZGVybikgLnl0cC1tZW51aXRlbS1pY29uIHN2Z3t3aWR0aDozNnB4O2hlaWdodDozNnB4fS55dHAtbWVudWl0ZW0tbGFiZWx7Zm9udC1zaXplOjExOCU7Zm9udC13ZWlnaHQ6NTAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtbWVudWl0ZW0tbGFiZWx7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6dW5zZXR9Lnl0cC1tZW51aXRlbS1sYWJlbC13cmFwcGVye2Rpc3BsYXk6dGFibGUtY2VsbDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0cC1tZW51aXRlbS1rZXlib2FyZC1zaG9ydGN1dHtmb250LXNpemU6MTE1JTtwYWRkaW5nLWxlZnQ6M3B4O2NvbG9yOiNjY2N9Lnl0cC1xdWFsaXR5LW1lbnUgLnl0cC1tZW51aXRlbXt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0cC1xdWFsaXR5LW1lbnUgLnl0cC1wYW5lbC1tZW51e21hcmdpbi1yaWdodDoxMHB4fS55dHAtcXVhbGl0eS1tZW51IC55dHAtbWVudWl0ZW0tbGFiZWwgc3Vwe2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjB9Lnl0cC1iaWctbW9kZSAueXRwLW1lbnVpdGVtLWNvbnRlbnQsLnl0cC1iaWctbW9kZSAueXRwLW1lbnVpdGVtLWxhYmVse3BhZGRpbmc6MCAxNXB4IDAgMH0ueXRwLW1lbnVpdGVtW3JvbGU9bWVudWl0ZW1yYWRpb10gLnl0cC1tZW51aXRlbS1jb250ZW50e2Rpc3BsYXk6bm9uZX0ueXRwLW1lbnVpdGVtW3JvbGU9bWVudWl0ZW1yYWRpb10gLnl0cC1tZW51aXRlbS1sYWJlbHtwYWRkaW5nLWxlZnQ6MzVweDtwYWRkaW5nLXJpZ2h0OjIwcHg7Ym9yZGVyLWJvdHRvbTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1tZW51aXRlbVtyb2xlPW1lbnVpdGVtcmFkaW9dIC55dHAtbWVudWl0ZW0tbGFiZWx7cGFkZGluZy1sZWZ0OjUycHg7cGFkZGluZy1yaWdodDozNXB4fS55dHAtbWVudWl0ZW1bcm9sZT1tZW51aXRlbXJhZGlvXVthcmlhLWNoZWNrZWQ9dHJ1ZV0gLnl0cC1tZW51aXRlbS1sYWJlbHtiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBeU5DQXlOQ0krUEhCaGRHZ2dabWxzYkQwaUkyWm1aaUlnWkQwaVRUa2dNVFl1TWlBMExqZ2dNVEpzTFRFdU5DQXhMalJNT1NBeE9TQXlNU0EzYkMweExqUXRNUzQwZWlJdlBqd3ZjM1puUGc9PSk7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246bGVmdCAxMHB4IGNlbnRlcjtiYWNrZ3JvdW5kLXNpemU6MThweCAxOHB4Oy1tb3otYmFja2dyb3VuZC1zaXplOjE4cHggMThweDstd2Via2l0LWJhY2tncm91bmQtc2l6ZToxOHB4IDE4cHh9Lnl0cC1iaWctbW9kZSAueXRwLW1lbnVpdGVtW3JvbGU9bWVudWl0ZW1yYWRpb11bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtbWVudWl0ZW0tbGFiZWx7YmFja2dyb3VuZC1wb3NpdGlvbjpsZWZ0IDE1cHggY2VudGVyO2JhY2tncm91bmQtc2l6ZToyN3B4IDI3cHg7LW1vei1iYWNrZ3JvdW5kLXNpemU6MjdweCAyN3B4Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOjI3cHggMjdweH0ueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtbWVudWl0ZW06Zm9jdXMgLnl0cC1tZW51aXRlbS1pY29uey13ZWJraXQtYm94LXNoYWRvdzppbnNldCAycHggMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KSxpbnNldCAwIC0ycHggMCByZ2JhKDI3LDEyNywyMDQsLjgpO2JveC1zaGFkb3c6aW5zZXQgMnB4IDJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCksaW5zZXQgMCAtMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KX0ueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtbWVudWl0ZW06Zm9jdXMgLnl0cC1tZW51aXRlbS1sYWJlbHstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAycHggMCByZ2JhKDI3LDEyNywyMDQsLjgpLGluc2V0IDAgLTJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCk7Ym94LXNoYWRvdzppbnNldCAwIDJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCksaW5zZXQgMCAtMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KX0ueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtbWVudWl0ZW06Zm9jdXMgLnl0cC1tZW51aXRlbS1sYWJlbDpmaXJzdC1jaGlsZHstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMnB4IDJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCksaW5zZXQgMCAtMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KTtib3gtc2hhZG93Omluc2V0IDJweCAycHggMCByZ2JhKDI3LDEyNywyMDQsLjgpLGluc2V0IDAgLTJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCl9Lnl0cC1wcm9iYWJseS1rZXlib2FyZC1mb2N1cyAueXRwLW1lbnVpdGVtOmZvY3VzIC55dHAtbWVudWl0ZW0tY29udGVudHstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgLTJweCAtMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KSxpbnNldCAwIDJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCk7Ym94LXNoYWRvdzppbnNldCAtMnB4IC0ycHggMCByZ2JhKDI3LDEyNywyMDQsLjgpLGluc2V0IDAgMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KX0ueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtbWVudWl0ZW1bcm9sZT1tZW51aXRlbXJhZGlvXTpmb2N1cyAueXRwLW1lbnVpdGVtLWxhYmVsey13ZWJraXQtYm94LXNoYWRvdzppbnNldCAycHggMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KSxpbnNldCAtMnB4IC0ycHggMCByZ2JhKDI3LDEyNywyMDQsLjgpO2JveC1zaGFkb3c6aW5zZXQgMnB4IDJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCksaW5zZXQgLTJweCAtMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KX0ueXRwLW1lbnVpdGVtLWNvbnRlbnR7Zm9udC1zaXplOjEwOSU7dGV4dC1hbGlnbjpyaWdodH0ueXRwLW1lbnVpdGVtLXN1YmxhYmVse2Zsb2F0OmxlZnR9Lnl0cC1tZW51LWxhYmVsLXNlY29uZGFyeSwueXRwLW1lbnVpdGVtLXN1YmxhYmVse2ZvbnQtc2l6ZTo5MSU7Y29sb3I6I2NjY30ueXRwLW1lbnVpdGVtW2FyaWEtaGFzcG9wdXA9dHJ1ZV0gLnl0cC1tZW51aXRlbS1jb250ZW50e2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IDlweCBjZW50ZXI7YmFja2dyb3VuZC1zaXplOjMycHggMzJweDstbW96LWJhY2tncm91bmQtc2l6ZTozMnB4IDMycHg7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6MzJweCAzMnB4O3BhZGRpbmctcmlnaHQ6MzhweH0ueXRwLW1lbnVpdGVtW2FyaWEtaGFzcG9wdXA9dHJ1ZV0gLnl0cC1tZW51aXRlbS1jb250ZW50e2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TWlBek1pSStQSEJoZEdnZ1ptbHNiRDBpSTJabVppSWdaRDBpYlRFeUxqVTVJREl3TGpNMElEUXVOVGd0TkM0MU9TMDBMalU0TFRRdU5UbE1NVFFnT1M0M05XdzJJRFl0TmlBMmVpSXZQand2YzNablBnPT0pfVtkaXI9cnRsXSAueXRwLW1lbnVpdGVtW2FyaWEtaGFzcG9wdXA9dHJ1ZV0gLnl0cC1tZW51aXRlbS1jb250ZW50e2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TWlBek1pSStQSEJoZEdnZ1ptbHNiRDBpSTJabVppSWdaRDBpYlRFNUxqUXhJREl3TGpBNUxUUXVOVGd0TkM0MU9TQTBMalU0TFRRdU5UbE1NVGdnT1M0MWJDMDJJRFlnTmlBMmVpSXZQand2YzNablBnPT0pfS55dHAtYmlnLW1vZGUgLnl0cC1tZW51aXRlbVthcmlhLWhhc3BvcHVwPXRydWVdIC55dHAtbWVudWl0ZW0tY29udGVudHtiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IDEzcHggY2VudGVyO2JhY2tncm91bmQtc2l6ZTo0OHB4IDQ4cHg7LW1vei1iYWNrZ3JvdW5kLXNpemU6NDhweCA0OHB4Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOjQ4cHggNDhweDtwYWRkaW5nLXJpZ2h0OjU3cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1tZW51aXRlbS1jb250ZW50e2ZvbnQtc2l6ZToxNHB4O2NvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10ZXh0LXNlY29uZGFyeSxyZ2JhKDI1NSwyNTUsMjU1LC43KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1tZW51aXRlbVthcmlhLWhhc3BvcHVwPXRydWVdIC55dHAtbWVudWl0ZW0tY29udGVudHtiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IDEycHggY2VudGVyO2JhY2tncm91bmQtc2l6ZToxOHB4IDE4cHg7LW1vei1iYWNrZ3JvdW5kLXNpemU6MThweCAxOHB4Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOjE4cHggMThweDtwYWRkaW5nLXJpZ2h0OjMycHg7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0l5TkNJZ2FHVnBaMmgwUFNJeU5DSWdkbWxsZDBKdmVEMGlNQ0F3SURJMElESTBJajQ4Y0dGMGFDQm1hV3hzUFNJalptWm1JaUJtYVd4c0xXOXdZV05wZEhrOUlpNDNJaUJrUFNKdE9TNDBJREU0TGpRdExqY3RMamNnTlM0MkxUVXVOaTAxTGpjdE5TNDNMamN0TGpjZ05pNDBJRFl1TkhvaUx6NDhMM04yWno0PSl9Lnl0cC1kZWxoaS1tb2Rlcm4gW2Rpcj1ydGxdIC55dHAtbWVudWl0ZW1bYXJpYS1oYXNwb3B1cD10cnVlXSAueXRwLW1lbnVpdGVtLWNvbnRlbnR7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0l5TkNJZ2FHVnBaMmgwUFNJeU5DSWdkbWxsZDBKdmVEMGlNQ0F3SURJMElESTBJajQ4Y0dGMGFDQm1hV3hzUFNJalptWm1JaUJtYVd4c0xXOXdZV05wZEhrOUlpNDNJaUJrUFNKTk1UUXVPVFlnTVRndU9UWWdPQ0F4TW13MkxqazJMVFl1T1RZdU56RXVOekZNT1M0ME1TQXhNbXcyTGpJMUlEWXVNalY2SWk4K1BDOXpkbWMrKX0ueXRwLW1lbnVpdGVtIHN1cHtsaW5lLWhlaWdodDowO2ZvbnQtc2l6ZTouOGVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLW1lbnVpdGVtLWxhYmVsLWNvdW50e2NvbG9yOiNjY2N9Lnl0cC1tZW51aXRlbXRpdGxle3BhZGRpbmc6MCAxNXB4O21heC13aWR0aDoyMDBweDt0ZXh0LWFsaWduOmNlbnRlcn0ueXRwLWJpZy1tb2RlIC55dHAtbWVudWl0ZW10aXRsZXtwYWRkaW5nOjAgMjJweDttYXgtd2lkdGg6MzAwcHh9Lnl0cC1tZW51aXRlbS1pbmxpbmUtc3VydmV5LXJlc3BvbnNle21hcmdpbi1sZWZ0Oi44ZW07ZGlzcGxheTppbmxpbmUtYmxvY2s7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1tZW51aXRlbS1pbmxpbmUtc3VydmV5LXJlc3BvbnNlOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMSl9Lnl0cC1tZW51aXRlbS1pbmxpbmUtc3VydmV5LXJlc3BvbnNlIHN2Z3toZWlnaHQ6MjBweDt3aWR0aDoyMHB4O21hcmdpbi1ib3R0b206LTRweH0ueXRwLW1lbnVpdGVtLWhpZ2hsaWdodGVke2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1zdWdnZXN0ZWQtYWN0aW9uKX0ueXRwLW1lbnVpdGVtLWhpZ2hsaWdodC10cmFuc2l0aW9uLWVuYWJsZWQueXRwLW1lbnVpdGVtOm5vdCgueXRwLW1lbnVpdGVtLWhpZ2hsaWdodGVkKXstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAzcyBsaW5lYXIgMXM7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIDNzIGxpbmVhciAxc30ueXRwLW1lbnVpdGVtLXdpdGgtZm9vdGVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtwYWRkaW5nLXRvcDoxNXB4fS55dHAtbWVudWl0ZW0tZm9vdGVye3BhZGRpbmctdG9wOjVweH0ueXRwLW1lbnVpdGVtLXNlY3Rpb24taGVhZGVyIC55dHAtbWVudWl0ZW0tbGFiZWx7Y29sb3I6I2VlZTtwYWRkaW5nOjhweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW1lbnVpdGVtLXNlY3Rpb24taGVhZGVyIC55dHAtbWVudWl0ZW0tbGFiZWx7cGFkZGluZzowfS55dHAtcGFuZWx7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7cmlnaHQ6MDtvdmVyZmxvdy15OmF1dG87b3ZlcmZsb3cteDpoaWRkZW59Lnl0cC1wYW5lbHttaW4td2lkdGg6MjUwcHh9Lnl0cC1wYW5lbC1oZWFkZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4yKTtsaW5lLWhlaWdodDppbmhlcml0O2ZvbnQtc2l6ZToxMDklO2NvbG9yOiNlZWU7cGFkZGluZzo4cHggMDtoZWlnaHQ6NDBweDt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0cC1wYW5lbC1mb290ZXJ7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMik7bGluZS1oZWlnaHQ6aW5oZXJpdDtmb250LXNpemU6MTE4JTtmb250LXdlaWdodDo1MDA7Y29sb3I6I2VlZTtwYWRkaW5nOjE2cHggMDttaW4taGVpZ2h0OjQwcHg7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjI1MHB4fS55dHAtcGFuZWwtZm9vdGVyLWNvbnRlbnR7bWFyZ2luOjAgMTBweH0ueXRwLXBhbmVsLWZvb3Rlci55dHAtcGFuZWwtaGlkZS1mb290ZXJ7ZGlzcGxheTpub25lfS5odG1sNS12aWRlby1wbGF5ZXIgLnl0cC1wYW5lbC1mb290ZXItY29udGVudC1saW5re2NvbG9yOiMxNjdhYzZ9Lnl0cC10b3VjaC1tb2RlIC55dHAtcGFuZWwtaGVhZGVye2hlaWdodDo0MHB4fS55dHAtYmlnLW1vZGUgLnl0cC1wYW5lbC1oZWFkZXJ7aGVpZ2h0OjQ5cHh9Lnl0cC1wYW5lbC1iYWNrLWJ1dHRvbi1jb250YWluZXJ7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6NDhweDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDo0OHB4fS55dHAtcGFuZWwtYmFjay1idXR0b257YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXpNaUF6TWlJK1BIQmhkR2dnWm1sc2JEMGlJMlptWmlJZ1pEMGliVEU1TGpReElESXdMakE1TFRRdU5UZ3ROQzQxT1NBMExqVTRMVFF1TlRsTU1UZ2dPUzQxYkMwMklEWWdOaUEyZWlJdlBqd3ZjM1puUGc9PSk7aGVpZ2h0OjMycHg7d2lkdGg6MzJweH0ueXRwLXBhbmVsLXRpdGxlOmhvdmVye2N1cnNvcjpwb2ludGVyfS55dHAtcGFuZWwtb3B0aW9uc3ttYXJnaW4tbGVmdDphdXRvfS55dHAtcGFuZWwtdGl0bGV7Zm9udC13ZWlnaHQ6NTAwfVtkaXI9cnRsXSAueXRwLXBhbmVsLXRpdGxle2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TWlBek1pSStQSEJoZEdnZ1ptbHNiRDBpSTJabVppSWdaRDBpYlRFeUxqVTVJREl3TGpNMElEUXVOVGd0TkM0MU9TMDBMalU0TFRRdU5UbE1NVFFnT1M0M05XdzJJRFl0TmlBMmVpSXZQand2YzNablBnPT0pfS55dHAtYmlnLW1vZGUgLnl0cC1wYW5lbC10aXRsZXtiYWNrZ3JvdW5kLXNpemU6NDhweCA0OHB4Oy1tb3otYmFja2dyb3VuZC1zaXplOjQ4cHggNDhweDstd2Via2l0LWJhY2tncm91bmQtc2l6ZTo0OHB4IDQ4cHg7cGFkZGluZzowIDE1cHggMCA1MnB4fS55dHAtYmlnLW1vZGUueXRwLWRlbGhpLW1vZGVybiAueXRwLXBhbmVsLXRpdGxle3BhZGRpbmc6MCAxNXB4IDAgMH0ueXRwLXBhbmVsLW9wdGlvbnN7aGVpZ2h0OjEwMCU7cGFkZGluZzowIDEwcHg7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ueXRwLWJpZy1tb2RlIC55dHAtcGFuZWwtb3B0aW9uc3twYWRkaW5nOjAgMTVweH0ueXRwLXBhbmVsLW1lbnV7cGFkZGluZzo4cHggMDtkaXNwbGF5OnRhYmxlO3dpZHRoOjEwMCU7Y29sb3I6I2VlZTstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbiwueXRwLWVtYmVkIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b257d2lkdGg6NDZweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXBsYXktYnV0dG9ue3dpZHRoOjU2cHg7aGVpZ2h0OjU2cHg7Ym9yZGVyLXJhZGl1czo1MCU7bWFyZ2luLXRvcDo4cHg7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLWxpZ2h0LHJnYmEoMCwwLDAsLjMpKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbiBzdmd7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b257cGFkZGluZzowfS55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b24gc3Zne3BhZGRpbmc6MTBweH0ueXRwLWRlbGhpLW1vZGVybi1pY29ucy55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbiBzdmd7cGFkZGluZzoxOHB4fS55dHAtZGVsaGktbW9kZXJuLWljb25zLnl0cC1iaWctbW9kZS55dHAtYmlnLW1vZGUtY29uc2lzdGVudC1waWxsLWhlaWdodCAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXBsYXktYnV0dG9uIHN2Z3twYWRkaW5nOjEwcHh9Lnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b257d2lkdGg6NTJweDtoZWlnaHQ6NTJweDttYXJnaW4tdG9wOjZweH0ueXRwLWRlbGhpLW1vZGVybi1pY29ucy55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbiBzdmd7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtwYWRkaW5nOjE0cHh9Lnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMueXRwLWJpZy1tb2RlLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXBsYXktYnV0dG9uIHN2Z3twYWRkaW5nOjEycHggMTBweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktbW9kZXJuLWNvbXBhY3QtY29udHJvbHMgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbnt3aWR0aDp2YXIoLS15dC1kZWxoaS1waWxsLWhlaWdodCw0OHB4KTtoZWlnaHQ6dmFyKC0teXQtZGVsaGktcGlsbC1oZWlnaHQsNDhweCk7Ym9yZGVyLXJhZGl1czo1MCU7bWFyZ2luLXRvcDp2YXIoLS15dC1kZWxoaS1waWxsLXRvcC1oZWlnaHQsMTJweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLWxpZ2h0LHJnYmEoMCwwLDAsLjMpKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLW1vZGVybi1jb21wYWN0LWNvbnRyb2xzIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b24gc3Zney13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktbW9kZXJuLWNvbXBhY3QtY29udHJvbHMgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbntwYWRkaW5nOjB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLW1vZGVybi1jb21wYWN0LWNvbnRyb2xzIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b24gc3Zne3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7cGFkZGluZzo4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLW1vZGVybi1jb21wYWN0LWNvbnRyb2xzLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbnt3aWR0aDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCw1NnB4KTtoZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsNTZweCk7Ym9yZGVyLXJhZGl1czo1MCU7bWFyZ2luLXRvcDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLXRvcC1oZWlnaHQsMjBweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLW1vZGVybi1jb21wYWN0LWNvbnRyb2xzLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbiBzdmd7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtwYWRkaW5nOjEycHh9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1sdW1pbm9zaXR5Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbntiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpsdW1pbm9zaXR5Oy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1kaWZmZXJlbmNlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbntiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpkaWZmZXJlbmNlOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1leGNsdXNpb24ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXBsYXktYnV0dG9ue2JhY2tncm91bmQ6cmdiYSg4MCw4MCw4MCwuNik7YmFja2dyb3VuZC1ibGVuZC1tb2RlOmV4Y2x1c2lvbjstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpfS55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbnt3aWR0aDo2OXB4fS55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b24tcGxheWxpc3R7d2lkdGg6NDBweH0ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b24tcGxheWxpc3R7d2lkdGg6NjBweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b24sLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXBsYXktYnV0dG9uLXBsYXlsaXN0e21hcmdpbi10b3A6MTJweDt3aWR0aDo3MnB4O2hlaWdodDo3MnB4fS55dHAtZW1iZWQueXRwLWVtYmVkLW1vYmlsZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtcHJldi1idXR0b24sLnl0cC1lbWJlZC55dHAtZW1iZWQtbW9iaWxlLnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC1uZXh0LWJ1dHRvbiwueXRwLWVtYmVkLnl0cC1lbWJlZC1tb2JpbGUueXRwLXNtYWxsLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24ueXRwLXByZXYtYnV0dG9uLC55dHAtZW1iZWQueXRwLWVtYmVkLnl0cC1lbWJlZC1tb2JpbGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24ueXRwLW5leHQtYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLW5leHQtYnV0dG9uLC55dHAtcGxheS1idXR0b24sLnl0cC1wcmV2LWJ1dHRvbnstd2Via2l0LWJveC1mbGV4OjA7LXdlYmtpdC1mbGV4OjAgMCBhdXRvO2ZsZXg6MCAwIGF1dG99Lnl0cC1wbGF5bGlzdC1tZW51e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MDtib3R0b206MDt3aWR0aDo0MDBweDttYXgtd2lkdGg6MTAwJTt6LWluZGV4OjczO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZW1iZWQtcGxheWxpc3QgLnl0cC1wbGF5bGlzdC1tZW51e2xlZnQ6YXV0bztyaWdodDowfS55dHAtYmlnLW1vZGUgLnl0cC1wbGF5bGlzdC1tZW51e3dpZHRoOjYwMHB4fVtkaXI9bHRyXSAueXRwLXBsYXlsaXN0LW1lbnVbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfVtkaXI9bHRyXSAueXRwLWVtYmVkLXBsYXlsaXN0IC55dHAtcGxheWxpc3QtbWVudVthcmlhLWhpZGRlbj10cnVlXXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKX1bZGlyPXJ0bF0gLnl0cC1wbGF5bGlzdC1tZW51W2FyaWEtaGlkZGVuPXRydWVdey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX1bZGlyPXJ0bF0gLnl0cC1lbWJlZC1wbGF5bGlzdCAueXRwLXBsYXlsaXN0LW1lbnVbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9Lnl0cC1wbGF5bGlzdC1tZW51LWhlYWRlcntwYWRkaW5nOjE1cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzQ0NH0ueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1oZWFkZXJ7cGFkZGluZzoyM3B4fS55dHAtcGxheWxpc3QtbWVudS10aXRsZXtoZWlnaHQ6MjBweDtsaW5lLWhlaWdodDoyMHB4O3BhZGRpbmctcmlnaHQ6MTVweDtmb250LXNpemU6MTM2JTtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS10aXRsZXtoZWlnaHQ6MzBweDtsaW5lLWhlaWdodDozMHB4O3BhZGRpbmctcmlnaHQ6MjNweDtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLXBsYXlsaXN0LW1lbnUtc3VidGl0bGV7Y29sb3I6I2I4YjhiODtsaW5lLWhlaWdodDoxN3B4O292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtYmlnLW1vZGUgLnl0cC1wbGF5bGlzdC1tZW51LXN1YnRpdGxle2xpbmUtaGVpZ2h0OjI2cHh9Lnl0cC1wbGF5bGlzdC1tZW51LWNsb3Nle3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxNXB4O3JpZ2h0OjE1cHg7d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1jbG9zZXt0b3A6MjNweDtyaWdodDoyM3B4O3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHh9Lnl0cC1wbGF5bGlzdC1tZW51LWNsb3NlIHBhdGh7ZmlsbDojYWFhfS55dHAtcGxheWxpc3QtbWVudS1jbG9zZTpob3ZlciBwYXRoe2ZpbGw6I2ZmZn0ueXRwLXBsYXlsaXN0LW1lbnUtaXRlbXN7cG9zaXRpb246YWJzb2x1dGU7dG9wOjY4cHg7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7b3ZlcmZsb3c6YXV0b30ueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1pdGVtc3t0b3A6MTAzcHh9Lnl0cC1jaHJvbWUtdG9wIC55dHAtcGxheWxpc3QtbWVudS1idXR0b24sLnl0cC1lbWJlZC1wbGF5bGlzdC55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtcGxheWxpc3QtbWVudS1idXR0b257d2lkdGg6YXV0bztoZWlnaHQ6YXV0b30ueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykueXRwLXNtYWxsLW1vZGUgLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbntwYWRkaW5nLXRvcDoxNnB4fS55dHAtcGxheWxpc3QtbWVudS1idXR0b24taWNvbnt3aWR0aDozNnB4O2hlaWdodDozNnB4fS55dHAtZW1iZWQtcGxheWxpc3QgLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbi1pY29ue21hcmdpbjphdXRvfS55dHAtYmlnLW1vZGUgLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbi1pY29ue3dpZHRoOjU0cHg7aGVpZ2h0OjU0cHh9Lnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbi10ZXh0e3BhZGRpbmctcmlnaHQ6NnB4O2xpbmUtaGVpZ2h0OjM2cHg7b3BhY2l0eToxfS55dHAtZW1iZWQtcGxheWxpc3Q6bm90KC55dHAtc21hbGwtbW9kZSkgLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbnttYXJnaW4tbGVmdDoxMHB4O21hcmdpbi1yaWdodDoxMHB4fS55dHAtZW1iZWQtcGxheWxpc3QgLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbi10ZXh0e3BhZGRpbmc6MDtsaW5lLWhlaWdodDppbmhlcml0O29wYWNpdHk6MTtmb250LXdlaWdodDo1MDA7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE0cHh9Lnl0cC1lbWJlZC1wbGF5bGlzdCAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLWljb24sLnl0cC1lbWJlZC1wbGF5bGlzdCAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLXRleHR7ZGlzcGxheTpibG9ja30ueXRwLWVtYmVkLXBsYXlsaXN0Lnl0cC1zbWFsbC1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1idXR0b24tdGV4dCwueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLXRpbnkgLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbi10ZXh0e2Rpc3BsYXk6Tm9uZX0ueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1idXR0b24tdGV4dHtsaW5lLWhlaWdodDo1NHB4fS55dHAtZW1iZWQtcGxheWxpc3QueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1idXR0b24tdGV4dHtsaW5lLWhlaWdodDppbmhlcml0O2ZvbnQtc2l6ZToyMHB4fS55dHAtcGxheWxpc3QtbWVudS1idXR0b24taWNvbiwueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLXRleHR7dmVydGljYWwtYWxpZ246bWlkZGxlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHAtcGxheWxpc3QtbWVudS1idXR0b257bWluLXdpZHRoOjQ4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1idXR0b257bWFyZ2luLXRvcDo5cHg7aGVpZ2h0OjU2cHg7d2lkdGg6NTZweDtwYWRkaW5nOjB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvdzttaW4td2lkdGg6MzZweDttaW4taGVpZ2h0OjM2cHg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW4tdG9wOjlweDtib3JkZXItcmFkaXVzOjI3cHg7bWF4LXdpZHRoOjQwMHB4Oy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bSxyZ2JhKDAsMCwwLC42KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbiAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLWljb257LXdlYmtpdC1ib3gtZmxleDowOy13ZWJraXQtZmxleDpub25lO2ZsZXg6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uIC55dHAtcGxheWxpc3QtbWVudS1idXR0b24tdGV4dCwueXRwLWRlbGhpLW1vZGVybiAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uIC55dHAtcGxheWxpc3QtbWVudS1idXR0b24tdGl0bGV7ZGlzcGxheTpub25lfS55dHAtZGVsaGktbW9kZXJuIC55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtcGxheWxpc3QtbWVudS1idXR0b257cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLXRvcDp1bnNldDt6LWluZGV4OjU4fS55dHAtaGlkZS1pbmZvLWJhciAueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLXNjcnViYmVyLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTRweDtsZWZ0Oi02LjVweDt6LWluZGV4OjQzfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc2NydWJiZXItY29udGFpbmVye3RvcDotM3B4O2xlZnQ6LTZweH0ueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXJ7dG9wOi05LjVweDtsZWZ0Oi0xMnB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtZGVjb3JhdGVkLXNjcnViYmVyLWNvbnRhaW5lcnt0b3A6LTlweDtsZWZ0Oi0xMnB4fS55dHAtYmlnLW1vZGUgLnl0cC1zY3J1YmJlci1jb250YWluZXJ7dG9wOi02cHg7bGVmdDotMTBweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1zY3J1YmJlci1jb250YWluZXJ7dG9wOi04cHg7bGVmdDotMTBweH0ueXRwLXNjcnViYmVyLWJ1dHRvbntoZWlnaHQ6MTNweDt3aWR0aDoxM3B4O2JvcmRlci1yYWRpdXM6Ni41cHg7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc2NydWJiZXItYnV0dG9ue2hlaWdodDoxMnB4O3dpZHRoOjEycHg7Ym9yZGVyLXJhZGl1czo2cHh9Lnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItY29udGFpbmVyIC55dHAtc2NydWJiZXItYnV0dG9ue3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0qIC55dHAtc2NydWJiZXItYnV0dG9uLnl0cC1oaWRlLXNjcnViYmVyLWJ1dHRvbiwueXRwLWRlbGhpLW1vZGVybiAueXRwLWRyYWcgLnl0cC1zY3J1YmJlci1idXR0b24ueXRwLWhpZGUtc2NydWJiZXItYnV0dG9uLC55dHAtZGVsaGktbW9kZXJuIC55dHAtc2NydWJiZXItYnV0dG9uLnl0cC1oaWRlLXNjcnViYmVyLWJ1dHRvbnstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwKTstbXMtdHJhbnNmb3JtOnNjYWxlKDApO3RyYW5zZm9ybTpzY2FsZSgwKX0ueXRwLWRyYWcgLnl0cC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1zY3J1YmJlci1idXR0b24ueXRwLXNjcnViYmVyLWJ1dHRvbi1ob3ZlciwueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLXNjcnViYmVyLWNvbnRhaW5lciAueXRwLXNjcnViYmVyLWJ1dHRvbi55dHAtc2NydWJiZXItYnV0dG9uLWhvdmVyey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEuNTQpOy1tcy10cmFuc2Zvcm06c2NhbGUoMS41NCk7dHJhbnNmb3JtOnNjYWxlKDEuNTQpfS55dHAtYmlnLW1vZGUgLnl0cC1zY3J1YmJlci1idXR0b257aGVpZ2h0OjIwcHg7d2lkdGg6MjBweDtib3JkZXItcmFkaXVzOjEwcHg7Ym90dG9tOjIwcHg7bGVmdDoxMHB4fS55dHAtZGVjb3JhdGVkLXNjcnViYmVyLWJ1dHRvbntkaXNwbGF5Om5vbmU7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItYnV0dG9ue2Rpc3BsYXk6YmxvY2t9LnlwYy1sb2FkZWQgLnl0cC1zY3J1YmJlci1idXR0b24ueXRwLXN3YXRjaC1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IzI3OTNlNn0uYWQtaW50ZXJydXB0aW5nIC55dHAtc2NydWJiZXItYnV0dG9uLnl0cC1zd2F0Y2gtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiNmYzB9Lnl0cC1wcm9iYWJseS1rZXlib2FyZC1mb2N1cyAueXRwLXByb2dyZXNzLWJhcjpmb2N1c3std2Via2l0LWJveC1zaGFkb3c6MCAwIDAgMnB4IHJnYmEoMjcsMTI3LDIwNCwuOCk7Ym94LXNoYWRvdzowIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC44KX0ueXRwLWRyYWcgLnl0cC1zY3J1YmJlci1idXR0b24sLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSkgLnl0cC1zY3J1YmJlci1idXR0b24sLnl0cC10b3VjaC1tb2RlIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtc2NydWJiZXItYnV0dG9uey13ZWJraXQtdHJhbnNmb3JtOm5vbmU7LW1zLXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWRyYWcgLnl0cC1zY3J1YmJlci1idXR0b24sLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSkgLnl0cC1zY3J1YmJlci1idXR0b24sLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b3VjaC1tb2RlIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtc2NydWJiZXItYnV0dG9uey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEuNjcpOy1tcy10cmFuc2Zvcm06c2NhbGUoMS42Nyk7dHJhbnNmb3JtOnNjYWxlKDEuNjcpOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRyYWcgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItY29udGFpbmVyIC55dHAtc2NydWJiZXItYnV0dG9uLC55dHAtZHJhZyAueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1zY3J1YmJlci1idXR0b24ueXRwLXNjcnViYmVyLWJ1dHRvbi1ob3ZlciwueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1zY3J1YmJlci1idXR0b24sLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSkgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItY29udGFpbmVyIC55dHAtc2NydWJiZXItYnV0dG9uLnl0cC1zY3J1YmJlci1idXR0b24taG92ZXJ7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS4xNjY2NjY2NjY3KTstbXMtdHJhbnNmb3JtOnNjYWxlKDEuMTY2NjY2NjY2Nyk7dHJhbnNmb3JtOnNjYWxlKDEuMTY2NjY2NjY2Nyk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtZHJhZyAueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1zY3J1YmJlci1idXR0b24sLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1kcmFnIC55dHAtZGVjb3JhdGVkLXNjcnViYmVyLWNvbnRhaW5lciAueXRwLXNjcnViYmVyLWJ1dHRvbi55dHAtc2NydWJiZXItYnV0dG9uLWhvdmVyLC55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3Zlcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtZGVjb3JhdGVkLXNjcnViYmVyLWNvbnRhaW5lciAueXRwLXNjcnViYmVyLWJ1dHRvbiwueXRwLWRlbGhpLW1vZGVybiAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1zY3J1YmJlci1idXR0b24ueXRwLXNjcnViYmVyLWJ1dHRvbi1ob3Zlcnstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLjE2NjY2NjY2NjcpOy1tcy10cmFuc2Zvcm06c2NhbGUoMS4xNjY2NjY2NjY3KTt0cmFuc2Zvcm06c2NhbGUoMS4xNjY2NjY2NjY3KTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1zY3J1YmJlci1wdWxsLWluZGljYXRvcntwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjQyO2JvdHRvbToxNi45cHg7bGVmdDo2LjVweDstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNDVkZWcpOy1tcy10cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKX0ueXRwLXNjcnViYmVyLXB1bGwtaW5kaWNhdG9yOmFmdGVyLC55dHAtc2NydWJiZXItcHVsbC1pbmRpY2F0b3I6YmVmb3Jle2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7Y29udGVudDoiIjt0b3A6MDtsZWZ0OjA7b3BhY2l0eTowO3dpZHRoOjYuNXB4O2hlaWdodDo2LjVweDtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjJweCAwIDAgMnB4O2JvcmRlci1jb2xvcjojZWFlYWVhfS55dHAtYmlnLW1vZGUgLnl0cC1zY3J1YmJlci1wdWxsLWluZGljYXRvcjphZnRlciwueXRwLWJpZy1tb2RlIC55dHAtc2NydWJiZXItcHVsbC1pbmRpY2F0b3I6YmVmb3Jle3dpZHRoOjEwcHg7aGVpZ2h0OjEwcHh9Lnl0cC1zY3J1YmJlci1wdWxsLWluZGljYXRvcjphZnRlcnstd2Via2l0LXRyYW5zaXRpb246YWxsIC4xczt0cmFuc2l0aW9uOmFsbCAuMXN9Lnl0cC1zY3J1YmJlci1wdWxsLWluZGljYXRvcjpiZWZvcmV7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuMnM7dHJhbnNpdGlvbjphbGwgLjJzfS55dHAtY2hhcHRlci1ob3Zlci1jb250YWluZXIsLnl0cC1jaGFwdGVycy1jb250YWluZXJ7ei1pbmRleDozMjtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjA7aGVpZ2h0OjEwMCV9Lnl0cC1jaGFwdGVycy1jb250YWluZXJ7d2lkdGg6MTAwJX0ueXRwLWNoYXB0ZXItaG92ZXItY29udGFpbmVye2Zsb2F0OmxlZnR9Lnl0cC1wcm9ncmVzcy1saXN0e3otaW5kZXg6Mzk7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC4yKTtoZWlnaHQ6MTAwJTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjYpOy1tcy10cmFuc2Zvcm06c2NhbGVZKC42KTt0cmFuc2Zvcm06c2NhbGVZKC42KTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7cG9zaXRpb246cmVsYXRpdmV9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcm9ncmVzcy1saXN0e292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOnJnYmEoNDAsNDAsNDAsLjYpOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjY2Nyk7LW1zLXRyYW5zZm9ybTpzY2FsZVkoLjY2Nyk7dHJhbnNmb3JtOnNjYWxlWSguNjY3KX0ueXRwLWRlbGhpLW1vZGVybi13aXRoLWx1bWlub3NpdHkueXRwLWRlbGhpLW1vZGVybiAueXRwLXByb2dyZXNzLWxpc3R7YmFja2dyb3VuZDpyZ2JhKDgwLDgwLDgwLC42KTtiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6bHVtaW5vc2l0eX0ueXRwLWRlbGhpLW1vZGVybi13aXRoLWRpZmZlcmVuY2UueXRwLWRlbGhpLW1vZGVybiAueXRwLXByb2dyZXNzLWxpc3R7YmFja2dyb3VuZDpyZ2JhKDgwLDgwLDgwLC42KTtiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6ZGlmZmVyZW5jZX0ueXRwLWRlbGhpLW1vZGVybi13aXRoLWV4Y2x1c2lvbi55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJvZ3Jlc3MtbGlzdHtiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpleGNsdXNpb259Lnl0cC1iaWctbW9kZSAueXRwLXByb2dyZXNzLWxpc3R7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtLjVweCkgc2NhbGVZKC42MjUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgtLjVweCkgc2NhbGVZKC42MjUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0uNXB4KSBzY2FsZVkoLjYyNSl9Lnl0cC1kcmFnIC55dHAtcHJvZ3Jlc3MtbGlzdCwueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLXByb2dyZXNzLWxpc3QsLnl0cC10b3VjaC1tb2RlIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtcHJvZ3Jlc3MtbGlzdHstd2Via2l0LXRyYW5zZm9ybTpub25lOy1tcy10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSkgLnl0cC1wcm9ncmVzcy1saXN0LC55dHAtZGVsaGktbW9kZXJuIC55dHAtdG91Y2gtbW9kZSAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLXByb2dyZXNzLWxpc3QsLnl0cC1kcmFnIC55dHAtcHJvZ3Jlc3MtbGlzdHstd2Via2l0LXRyYW5zZm9ybTpub25lOy1tcy10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kcmFnIC55dHAtZXhwLWNoYXB0ZXItaG92ZXItZWZmZWN0LC55dHAtZXhwLWNoYXB0ZXItaG92ZXItY29udGFpbmVyOmhvdmVyLC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3Zlcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtZXhwLWNoYXB0ZXItaG92ZXItZWZmZWN0LC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3Zlcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pLnl0cC10aW1lZC1tYXJrZXJzLWVuYWJsZWQgLnl0cC1wcm9ncmVzcy1saXN0ey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxLjgpOy1tcy10cmFuc2Zvcm06c2NhbGVZKDEuOCk7dHJhbnNmb3JtOnNjYWxlWSgxLjgpOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyIC55dHAtZHJhZyAueXRwLWV4cC1jaGFwdGVyLWhvdmVyLWVmZmVjdCwueXRwLWRlbGhpLW1vZGVybi55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtZXhwLWNoYXB0ZXItaG92ZXItZWZmZWN0LC55dHAtZGVsaGktbW9kZXJuLnl0cC1wcm9ncmVzcy1iYXItaG92ZXIgLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSkueXRwLXRpbWVkLW1hcmtlcnMtZW5hYmxlZCAueXRwLXByb2dyZXNzLWxpc3R7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVZKDEuNjY3KTstbXMtdHJhbnNmb3JtOnNjYWxlWSgxLjY2Nyk7dHJhbnNmb3JtOnNjYWxlWSgxLjY2Nyk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtZXhwLWNoYXB0ZXItaG92ZXItY29udGFpbmVyOmhvdmVyLC55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3Zlcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtZXhwLWNoYXB0ZXItaG92ZXItZWZmZWN0LC55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3Zlcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pLnl0cC10aW1lZC1tYXJrZXJzLWVuYWJsZWQgLnl0cC1wcm9ncmVzcy1saXN0ey13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSB1bnNldDt0cmFuc2l0aW9uOnRyYW5zZm9ybSB1bnNldCwtd2Via2l0LXRyYW5zZm9ybSB1bnNldH0ueXRwLXJlcGVhdGluZy1jaGFwdGVyey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxLjgpOy1tcy10cmFuc2Zvcm06c2NhbGVZKDEuOCk7dHJhbnNmb3JtOnNjYWxlWSgxLjgpfS55dHAtYm91bmQtdGltZS1sZWZ0LC55dHAtYm91bmQtdGltZS1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5Om5vbmU7dG9wOi0yOXB4O3otaW5kZXg6Mjk7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI4LDI4LDI4LC45KTt0ZXh0LWFsaWduOmNlbnRlcjtjb2xvcjojZTNlM2UzO3BhZGRpbmc6NXB4IDlweDtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGVhc2UtaW47dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBlYXNlLWlufS55dHAtYmlnLW1vZGUgLnl0cC1ib3VuZC10aW1lLWxlZnQsLnl0cC1iaWctbW9kZSAueXRwLWJvdW5kLXRpbWUtcmlnaHR7dG9wOi0zNnB4fS55dHAtYm91bmQtdGltZS1sZWZ0e2xlZnQ6MH0ueXRwLWJvdW5kLXRpbWUtcmlnaHR7cmlnaHQ6MH0ueXRwLWJvdW5kLXRpbWUtbGVmdDphZnRlciwueXRwLWJvdW5kLXRpbWUtcmlnaHQ6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7Y29udGVudDoiIjtib3R0b206LTVweDt3aWR0aDowO2hlaWdodDowO2JvcmRlci1zdHlsZTpzb2xpZH0ueXRwLWJvdW5kLXRpbWUtbGVmdDphZnRlcntsZWZ0OjA7Ym9yZGVyLXdpZHRoOjVweCA1cHggMCAwO2JvcmRlci1jb2xvcjpyZ2JhKDI4LDI4LDI4LC45KSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudH0ueXRwLWJvdW5kLXRpbWUtcmlnaHQ6YWZ0ZXJ7cmlnaHQ6MDtib3JkZXItd2lkdGg6MCA1cHggNXB4IDA7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50IHJnYmEoMjgsMjgsMjgsLjkpIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50fS55dHAtMTVtLXByb2dyZXNzLC55dHAtMW0tcHJvZ3Jlc3MsLnl0cC0zMG0tcHJvZ3Jlc3MsLnl0cC02MG0tcHJvZ3Jlc3MsLnl0cC1hZC1wcm9ncmVzcywueXRwLWNsaXAtZW5kLWV4Y2x1ZGUsLnl0cC1jbGlwLXN0YXJ0LWV4Y2x1ZGUsLnl0cC1ob3Zlci1wcm9ncmVzcywueXRwLWxvYWQtcHJvZ3Jlc3MsLnl0cC1wbGF5LXByb2dyZXNzLC55dHAtcHJvZ3Jlc3MtbGluZWFyLWxpdmUtYnVmZmVyLC55dHAtdGltZWQtbWFya2Vycy1jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO2JvdHRvbTowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOjAgMDstbXMtdHJhbnNmb3JtLW9yaWdpbjowIDA7dHJhbnNmb3JtLW9yaWdpbjowIDB9Lnl0cC10aW1lZC1tYXJrZXJzLWNvbnRhaW5lcnstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjYpOy1tcy10cmFuc2Zvcm06c2NhbGVZKC42KTt0cmFuc2Zvcm06c2NhbGVZKC42KTt0b3A6MXB4O3otaW5kZXg6NDB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lZC1tYXJrZXJzLWNvbnRhaW5lcnstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjY2Nyk7LW1zLXRyYW5zZm9ybTpzY2FsZVkoLjY2Nyk7dHJhbnNmb3JtOnNjYWxlWSguNjY3KX0ueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXIgLnl0cC10aW1lZC1tYXJrZXJzLWNvbnRhaW5lcnstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoMS44KTstbXMtdHJhbnNmb3JtOnNjYWxlWSgxLjgpO3RyYW5zZm9ybTpzY2FsZVkoMS44KTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dG9wOi0ycHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyIC55dHAtdGltZWQtbWFya2Vycy1jb250YWluZXJ7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVZKDEuNjY3KTstbXMtdHJhbnNmb3JtOnNjYWxlWSgxLjY2Nyk7dHJhbnNmb3JtOnNjYWxlWSgxLjY2Nyk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3ZlciAueXRwLXRpbWVkLW1hcmtlci55dHAtdGltZWQtbWFya2VyLWhvdmVyLC55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyIC55dHAtdGltZWQtbWFya2VyLnl0cC10aW1lZC1tYXJrZXItaG92ZXJ7d2lkdGg6OXB4O2hlaWdodDozcHg7Ym90dG9tOjFweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXIgLnl0cC10aW1lZC1tYXJrZXIueXRwLXRpbWVkLW1hcmtlci1ob3ZlciwueXRwLWRlbGhpLW1vZGVybiAueXRwLXByb2dyZXNzLWJhci1ob3ZlciAueXRwLXRpbWVkLW1hcmtlci55dHAtdGltZWQtbWFya2VyLWhvdmVye3dpZHRoOjEycHg7aGVpZ2h0OjQuOHB4O2JvdHRvbTouNnB4fS55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3ZlciAueXRwLXRpbWVkLW1hcmtlcnt3aWR0aDo1cHg7aGVpZ2h0OjEuNjdweDtib3R0b206MS41cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyIC55dHAtdGltZWQtbWFya2Vye3dpZHRoOjZweDtoZWlnaHQ6Mi40cHg7Ym90dG9tOjJweH0ueXRwLXByb2dyZXNzLWJhci1zdGFydHtib3JkZXItcmFkaXVzOjNweCAwIDAgM3B4fS55dHAtcHJvZ3Jlc3MtYmFyLWVuZHtib3JkZXItcmFkaXVzOjAgM3B4IDNweCAwfS55dHAtcHJvZ3Jlc3MtYmFyLXN0YXJ0Lnl0cC1wcm9ncmVzcy1iYXItZW5ke2JvcmRlci1yYWRpdXM6M3B4fS55dHAtdGltZWQtbWFya2Vye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO3dpZHRoOjNweDtoZWlnaHQ6M3B4O2JvdHRvbToxcHg7Ym9yZGVyLXJhZGl1czo1MCU7b3BhY2l0eToxfS55dHAtZGVsaGktbW9kZXJuIC55dHAtdGltZWQtbWFya2Vye2JvdHRvbToycHh9Lnl0cC1jbGlwLWVuZC1leGNsdWRlLC55dHAtY2xpcC1zdGFydC1leGNsdWRle2Rpc3BsYXk6bm9uZTt6LWluZGV4OjM3O2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1jbGlwLWVuZC1lbmFibGVkIC55dHAtY2xpcC1lbmQtZXhjbHVkZSwueXRwLWNsaXAtc3RhcnQtZW5hYmxlZCAueXRwLWNsaXAtc3RhcnQtZXhjbHVkZXtkaXNwbGF5OmJsb2NrfS55dHAtbG9vcC1yYW5nZS1lbmFibGVkIC55dHAtY2xpcC1lbmQsLnl0cC1sb29wLXJhbmdlLWVuYWJsZWQgLnl0cC1jbGlwLXN0YXJ0e3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0cC1jbGlwLWhvdmVyIC55dHAtY2xpcC1lbmQtZXhjbHVkZSwueXRwLWNsaXAtaG92ZXIgLnl0cC1jbGlwLXN0YXJ0LWV4Y2x1ZGV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC41KTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1wcm9ncmVzcy1saW5lYXItbGl2ZS1idWZmZXJ7ei1pbmRleDo0NTtiYWNrZ3JvdW5kOiNjMDA7b3BhY2l0eTowfS55dHAtZW5hYmxlLWxpdmUtYnVmZmVyIC55dHAtcHJvZ3Jlc3MtbGluZWFyLWxpdmUtYnVmZmVye29wYWNpdHk6LjZ9Lnl0cC1hZC1wcm9ncmVzc3t6LWluZGV4OjM2O2JhY2tncm91bmQ6I2ZjMH0ueXRwLWxvYWQtcHJvZ3Jlc3N7ei1pbmRleDozMztiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjQpfS55dHAtbG9hZC1wcm9ncmVzcy55dHAtZmFzdC1sb2Fke2JhY2tncm91bmQ6IzAwODM4Zn0ueXRwLXBsYXktcHJvZ3Jlc3N7ei1pbmRleDozNDtiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLHJpZ2h0IHRvcCxjb2xvci1zdG9wKDgwJSwjZjAzKSx0bygjZmYyNzkxKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCNmMDMgODAlLCNmZjI3OTEpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNmMDMgODAlLCNmZjI3OTEpfS55cGMtbG9hZGVkIC55dHAtcGxheS1wcm9ncmVzcy55dHAtc3dhdGNoLWJhY2tncm91bmQtY29sb3J7YmFja2dyb3VuZDojMjc5M2U2fS5hZC1pbnRlcnJ1cHRpbmcgLnl0cC1wbGF5LXByb2dyZXNzLnl0cC1zd2F0Y2gtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kOiNmYzB9Lnl0cC1ob3Zlci1wcm9ncmVzc3t6LWluZGV4OjM1O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMTI1KTtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1wcm9ncmVzcy1iYXItaG92ZXIgLnl0cC1ob3Zlci1wcm9ncmVzc3tvcGFjaXR5OjF9Lnl0cC1kZWxoaS1tb2Rlcm4uYWQtaW50ZXJydXB0aW5nIC55dHAtbG9hZC1wcm9ncmVzcywueXRwLWVuYWJsZS1saXZlLWJ1ZmZlciAueXRwLWhvdmVyLXByb2dyZXNzLC55dHAtZW5hYmxlLWxpdmUtYnVmZmVyIC55dHAtbG9hZC1wcm9ncmVzc3tvcGFjaXR5OjB9Lnl0cC1ob3Zlci1wcm9ncmVzcy1saWdodHtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjUpfS55dHAtMTVtLXByb2dyZXNzLC55dHAtMW0tcHJvZ3Jlc3MsLnl0cC0zMG0tcHJvZ3Jlc3MsLnl0cC02MG0tcHJvZ3Jlc3N7d2lkdGg6MXB4O2JhY2tncm91bmQ6IzAwMDt6LWluZGV4OjM2fS55dHAtMW0tcHJvZ3Jlc3N7aGVpZ2h0OjMwJX0ueXRwLTE1bS1wcm9ncmVzc3toZWlnaHQ6NTAlfS55dHAtMzBtLXByb2dyZXNze2hlaWdodDo1NSV9Lnl0cC02MG0tcHJvZ3Jlc3N7aGVpZ2h0OjYwJX0ueXRwLWNsaXAtZW5kLC55dHAtY2xpcC1zdGFydHtkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTRweDtoZWlnaHQ6MTRweDtib3R0b206LTQuNXB4O21hcmdpbi1sZWZ0Oi03cHg7ei1pbmRleDo0NDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjIxNDI4NTcxNDMpOy1tcy10cmFuc2Zvcm06c2NhbGVZKC4yMTQyODU3MTQzKTt0cmFuc2Zvcm06c2NhbGVZKC4yMTQyODU3MTQzKTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1iaWctbW9kZSAueXRwLWNsaXAtZW5kLC55dHAtYmlnLW1vZGUgLnl0cC1jbGlwLXN0YXJ0e3dpZHRoOjIxcHg7aGVpZ2h0OjIxcHg7Ym90dG9tOi02LjVweDttYXJnaW4tbGVmdDotMTAuNXB4Oy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSguMjM4MDk1MjM4KTstbXMtdHJhbnNmb3JtOnNjYWxlWSguMjM4MDk1MjM4KTt0cmFuc2Zvcm06c2NhbGVZKC4yMzgwOTUyMzgpfS55dHAtZHJhZyAueXRwLWNsaXAtZW5kLC55dHAtZHJhZyAueXRwLWNsaXAtc3RhcnQsLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSkgLnl0cC1jbGlwLWVuZCwueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLWNsaXAtc3RhcnQsLnl0cC10b3VjaC1tb2RlIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtY2xpcC1lbmQsLnl0cC10b3VjaC1tb2RlIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtY2xpcC1zdGFydHstd2Via2l0LXRyYW5zZm9ybTpub25lOy1tcy10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1jbGlwLWVuZCBzdmcsLnl0cC1jbGlwLXN0YXJ0IHN2Z3tkaXNwbGF5OmJsb2NrfS55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcntkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7Ym90dG9tOjQ3cHg7aGVpZ2h0OjVweH0ueXRwLWRlbGhpLW1vZGVybjpub3QoLnl0cC1wbGF5ZXItbWluaW1pemVkKSAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXJ7ei1pbmRleDo2MDtib3R0b206dmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCw3MnB4KTtoZWlnaHQ6NnB4fS55dHAteHNtYWxsLXdpZHRoLW1vZGUueXRwLWRlbGhpLW1vZGVybjpub3QoLnl0cC1wbGF5ZXItbWluaW1pemVkKSAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXJ7Ym90dG9tOnZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQteHNtYWxsLXdpZHRoLW1vZGUsNjRweCl9Lnl0cC1zbWFsbC1tb2RlIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcntib3R0b206MzZweDtoZWlnaHQ6NXB4fS55dHAtZW1iZWQgLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVye2JvdHRvbTozOXB4fS55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pe2N1cnNvcjpwb2ludGVyfS55dHAtYmlnLW1vZGUgLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVye2JvdHRvbTo1Mi41cHg7aGVpZ2h0OjhweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcntib3R0b206dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCw5NnB4KX0ueXRwLXByb2dyZXNzLWJhcntwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt6LWluZGV4OjMxO291dGxpbmU6bm9uZX0ueXRwLWhlYXQtbWFwLXBsYXllZF9iYXIueXRwLWhlYXQtbWFwLnl0cC1wcm9ncmVzcy1iYXItaG92ZXIgLnl0cC1wcm9ncmVzcy1iYXJ7b3BhY2l0eTowfS55dHAtbW9iaWxlIC55dHAtcHJvZ3Jlc3MtYmFye3BhZGRpbmctYm90dG9tOjEwcHh9Lnl0cC1wcm9ncmVzcy1iYXItcGFkZGluZ3twb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxNnB4O2JvdHRvbTowO3otaW5kZXg6Mjh9Lnl0cC1iaWctbW9kZSAueXRwLXByb2dyZXNzLWJhci1wYWRkaW5ne2hlaWdodDoyNHB4fS55dHAtY2hhcHRlci1ob3Zlci1jb250YWluZXI6aG92ZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLXByb2dyZXNzLWJhci1wYWRkaW5ne2hlaWdodDoyMnB4O2JvdHRvbTotNnB4fS55dHAtYmlnLW1vZGU6bm90KC55dHAtdG91Y2gtbW9kZSkgLnl0cC1jaGFwdGVyLWhvdmVyLWNvbnRhaW5lcjpob3Zlcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtcHJvZ3Jlc3MtYmFyLXBhZGRpbmd7aGVpZ2h0OjMzcHg7Ym90dG9tOi05cHh9Lnl0cC10b3VjaC1tb2RlIC55dHAtY2hhcHRlci1ob3Zlci1jb250YWluZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLXByb2dyZXNzLWJhci1wYWRkaW5ne2hlaWdodDo0MHB4O2JvdHRvbTotMTFweH1AcHJvcGVydHkgLS1zZWVrLXNjcnViYmVyLXdpZHRoe3N5bnRheDoiPGxlbmd0aD4iO2luaXRpYWwtdmFsdWU6MDtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS1zY3J1YmJlci1jb250YWluZXIteHtzeW50YXg6IjxsZW5ndGg+Ijtpbml0aWFsLXZhbHVlOjA7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tcHJvZ3Jlc3Mtd2lkdGh7c3ludGF4OiI8bGVuZ3RoPiI7aW5pdGlhbC12YWx1ZTowO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXByb2dyZXNzLWxlZnQtYnVmZmVye3N5bnRheDoiPGxlbmd0aD4iO2luaXRpYWwtdmFsdWU6MDtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS1wcm9ncmVzcy1yaWdodC1idWZmZXJ7c3ludGF4OiI8bGVuZ3RoPiI7aW5pdGlhbC12YWx1ZTowO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXVuaWZpZWQtc2Vlay1vZmZzZXQteHtzeW50YXg6IjxsZW5ndGg+Ijtpbml0aWFsLXZhbHVlOjA7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdW5pZmllZC1zZWVrLXNjcnViYmVyLXNjYWxle3N5bnRheDoiPG51bWJlcj4iO2luaXRpYWwtdmFsdWU6MTtpbmhlcml0czpmYWxzZX0ueXRwLXVuaWZpZWQtc2Vlay13cmFwcGVyey0tcHJvZ3Jlc3Mtd2lkdGg6MHB4Oy0tcHJvZ3Jlc3MtbGVmdC1idWZmZXI6MHB4Oy0tcHJvZ3Jlc3MtcmlnaHQtYnVmZmVyOjBweDstLXNlZWstc2NydWJiZXItd2lkdGg6MHB4Oy0tdW5pZmllZC1zZWVrLXNjcnViYmVyLXNjYWxlOjE7LS1zY3J1YmJlci1jb250YWluZXIteDowcHg7LS1oYWxmLXdpZHRoOmNhbGModmFyKC0tc2Vlay1zY3J1YmJlci13aWR0aCwgMHB4KSowLjUpOy0taGFsZi1oZWlnaHQ6bWluKHZhcigtLWhhbGYtd2lkdGgpLDIwcHgpOy0tdW5pZmllZC1zZWVrLW9mZnNldC14OmNhbGMobWF4KDBweCwKICAgICAgICAodmFyKC0taGFsZi13aWR0aCkgKiB2YXIoLS11bmlmaWVkLXNlZWstc2NydWJiZXItc2NhbGUpKSAtIHZhcigKICAgICAgICAgICAgLS1zY3J1YmJlci1jb250YWluZXIteAogICAgICAgICAgKSAtIHZhcigtLXByb2dyZXNzLWxlZnQtYnVmZmVyKSkgKyBtaW4oMHB4LAogICAgICAgIHZhcigtLXByb2dyZXNzLXdpZHRoKSArIHZhcigtLXByb2dyZXNzLXJpZ2h0LWJ1ZmZlcikgLSB2YXIoLS1zY3J1YmJlci1jb250YWluZXIteCkgLSAodmFyKC0taGFsZi13aWR0aCkgKiB2YXIoLS11bmlmaWVkLXNlZWstc2NydWJiZXItc2NhbGUpKSkpfS55dHAtdW5pZmllZC1zZWVrLWFjdGl2ZSAueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItYnV0dG9uLC55dHAtdW5pZmllZC1zZWVrLXdyYXBwZXJ7b3BhY2l0eTowfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpuby1wcmVmZXJlbmNlKXsueXRwLXVuaWZpZWQtc2Vlay1hY3RpdmUgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItY29udGFpbmVyIC55dHAtZGVjb3JhdGVkLXNjcnViYmVyLWJ1dHRvbiwueXRwLXVuaWZpZWQtc2Vlay13cmFwcGVyey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX19Lnl0cC11bmlmaWVkLXNlZWstY29udGVudHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MCAxNnB4O2hlaWdodDoxMDAlfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpuby1wcmVmZXJlbmNlKXsueXRwLXVuaWZpZWQtc2Vlay1hY3RpdmUgLnl0cC11bmlmaWVkLXNlZWstd3JhcHBlcnstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9fS55dHAtdW5pZmllZC1zZWVrLWFjdGl2ZSAueXRwLXVuaWZpZWQtc2Vlay13cmFwcGVye29wYWNpdHk6MTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjQ2O21hcmdpbjowO3dpZHRoOi13ZWJraXQtbWF4LWNvbnRlbnQ7d2lkdGg6LW1vei1tYXgtY29udGVudDt3aWR0aDptYXgtY29udGVudDtoZWlnaHQ6NDBweDtib3JkZXItcmFkaXVzOjIwcHg7b3ZlcmZsb3c6aGlkZGVuO3RvcDo1MCU7bGVmdDo1MCU7LXdlYmtpdC1jbGlwLXBhdGg6aW5zZXQoY2FsYyg1MCUgLSBtaW4odmFyKC0taGFsZi13aWR0aCksIHZhcigtLWhhbGYtaGVpZ2h0KSkpIGNhbGMoNTAlIC0gdmFyKC0taGFsZi13aWR0aCkpIHJvdW5kIG1pbih2YXIoLS1oYWxmLXdpZHRoKSx2YXIoLS1oYWxmLWhlaWdodCkpKTtjbGlwLXBhdGg6aW5zZXQoY2FsYyg1MCUgLSBtaW4odmFyKC0taGFsZi13aWR0aCksIHZhcigtLWhhbGYtaGVpZ2h0KSkpIGNhbGMoNTAlIC0gdmFyKC0taGFsZi13aWR0aCkpIHJvdW5kIG1pbih2YXIoLS1oYWxmLXdpZHRoKSx2YXIoLS1oYWxmLWhlaWdodCkpKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoY2FsYygtNTAlICsgdmFyKC0tdW5pZmllZC1zZWVrLW9mZnNldC14KSksLTUwJSkgc2NhbGUodmFyKC0tdW5pZmllZC1zZWVrLXNjcnViYmVyLXNjYWxlKSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGUoY2FsYygtNTAlICsgdmFyKC0tdW5pZmllZC1zZWVrLW9mZnNldC14KSksLTUwJSkgc2NhbGUodmFyKC0tdW5pZmllZC1zZWVrLXNjcnViYmVyLXNjYWxlKSk7dHJhbnNmb3JtOnRyYW5zbGF0ZShjYWxjKC01MCUgKyB2YXIoLS11bmlmaWVkLXNlZWstb2Zmc2V0LXgpKSwtNTAlKSBzY2FsZSh2YXIoLS11bmlmaWVkLXNlZWstc2NydWJiZXItc2NhbGUpKTtmb250LWZhbWlseTpZb3VUdWJlIE5vdG8sUm9ib3RvLGFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjI2cHg7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxyaWdodCB0b3AsY29sb3Itc3RvcCg4MCUsI2YwMyksdG8oI2ZmMjc5MSkpO2JhY2tncm91bmQ6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwjZjAzIDgwJSwjZmYyNzkxKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZjAzIDgwJSwjZmYyNzkxKX0ueXRwLXVuaWZpZWQtc2Vlay1hY3RpdmUgLnl0cC11bmlmaWVkLXNlZWstd3JhcHBlciAueXRwLXVuaWZpZWQtc2Vlay1pY29uLWxlZnQtd3JhcHBlcjpub3QoOmVtcHR5KT4ueXRwLXVuaWZpZWQtc2Vlay1pY29ue21hcmdpbi1yaWdodDo2cHg7bWFyZ2luLWxlZnQ6LTZweH0ueXRwLXVuaWZpZWQtc2Vlay1hY3RpdmUgLnl0cC11bmlmaWVkLXNlZWstd3JhcHBlciAueXRwLXVuaWZpZWQtc2Vlay1pY29uLXJpZ2h0LXdyYXBwZXI6bm90KDplbXB0eSk+Lnl0cC11bmlmaWVkLXNlZWstaWNvbnttYXJnaW4tbGVmdDo2cHg7bWFyZ2luLXJpZ2h0Oi02cHh9Lnl0cC11bmlmaWVkLXNlZWstYWN0aXZlIC55dHAtdW5pZmllZC1zZWVrLXdyYXBwZXIgLnl0cC11bmlmaWVkLXNlZWstaWNvbi1yaWdodC13cmFwcGVyOm5vdCg6ZW1wdHkpe2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7aGVpZ2h0OjEwMCU7d2lkdGg6MjRweH0ueXRwLXVuaWZpZWQtc2Vlay1hY3RpdmUgLnl0cC11bmlmaWVkLXNlZWstd3JhcHBlciAueXRwLXVuaWZpZWQtc2Vlay1pY29uLWxlZnQtd3JhcHBlcjplbXB0eSwueXRwLXVuaWZpZWQtc2Vlay1hY3RpdmUgLnl0cC11bmlmaWVkLXNlZWstd3JhcHBlciAueXRwLXVuaWZpZWQtc2Vlay1pY29uLXJpZ2h0LXdyYXBwZXI6ZW1wdHl7ZGlzcGxheTpub25lfS55dHAtdW5pZmllZC1zZWVrLXNocmlua2luZyAueXRwLXVuaWZpZWQtc2Vlay13cmFwcGVye29wYWNpdHk6MH1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246bm8tcHJlZmVyZW5jZSl7Lnl0cC11bmlmaWVkLXNlZWstc2hyaW5raW5nIC55dHAtdW5pZmllZC1zZWVrLXdyYXBwZXJ7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfX0ueXRwLXVuaWZpZWQtc2Vlay1zaHJpbmtpbmcgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItY29udGFpbmVyIC55dHAtZGVjb3JhdGVkLXNjcnViYmVyLWJ1dHRvbntvcGFjaXR5OjF9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOm5vLXByZWZlcmVuY2Upey55dHAtdW5pZmllZC1zZWVrLXNocmlua2luZyAueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItYnV0dG9uey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX19Lnl0cC1wcm9tb3Rvb2x0aXAtd3JhcHBlcnttYXJnaW46MDtwYWRkaW5nOjA7Ym9yZGVyOjA7ZGlzcGxheTpibG9jazt3aWR0aDozMDBweDtoZWlnaHQ6MTQwcHg7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMDAzfS55dHAtZnVsbHNjcmVlbiAueXRwLXByb21vdG9vbHRpcC13cmFwcGVye3dpZHRoOjQ1MHB4O2hlaWdodDoyMTBweH0ueXRwLXByb21vdG9vbHRpcC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0O2NvbG9yOiNmZmY7Zm9udC1zaXplOjExMCU7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjIwcHg7dGV4dC10cmFuc2Zvcm06bm9uZTtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1wcm9tb3Rvb2x0aXAtY29udGVudHtwYWRkaW5nOjE2cHggMTZweCA0cHh9Lnl0cC1mdWxsc2NyZWVuIC55dHAtcHJvbW90b29sdGlwLWNvbnRlbnR7cGFkZGluZzoyNHB4IDI0cHggNnB4fS55dHAtcHJvbW90b29sdGlwLXRpdGxle21hcmdpbi1ib3R0b206OHB4O2ZvbnQtc2l6ZToxMjAlO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxNnB4fS55dHAtZnVsbHNjcmVlbiAueXRwLXByb21vdG9vbHRpcC10aXRsZXttYXJnaW4tYm90dG9tOjEycHg7bGluZS1oZWlnaHQ6MjRweH0ueXRwLXByb21vdG9vbHRpcC1idXR0b25ze3BhZGRpbmc6OHB4IDRweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1wYWNrOmVuZDstd2Via2l0LWp1c3RpZnktY29udGVudDpmbGV4LWVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lnl0cC1mdWxsc2NyZWVuIC55dHAtcHJvbW90b29sdGlwLWJ1dHRvbnN7cGFkZGluZzoxMnB4IDZweH0ueXRwLXByb21vdG9vbHRpcC1hY2NlcHQtYnV0dG9uLC55dHAtcHJvbW90b29sdGlwLWRpc21pc3MtYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtc2l6ZToxMjAlO2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nOjEwcHggMTZweDtjdXJzb3I6cG9pbnRlcn0ueXRwLWZ1bGxzY3JlZW4gLnl0cC1wcm9tb3Rvb2x0aXAtYWNjZXB0LWJ1dHRvbiwueXRwLWZ1bGxzY3JlZW4gLnl0cC1wcm9tb3Rvb2x0aXAtZGlzbWlzcy1idXR0b257cGFkZGluZzoxNXB4IDI0cHh9Lnl0cC1wcm9tb3Rvb2x0aXAtcG9pbnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlci1zdHlsZTpzb2xpZDt0b3A6MTAwJTtib3JkZXItd2lkdGg6MTJweDtib3JkZXItY29sb3I6IzA2NWZkNCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudH0ueXRwLWZ1bGxzY3JlZW4gLnl0cC1wcm9tb3Rvb2x0aXAtcG9pbnRlcntib3JkZXItd2lkdGg6MThweH0ueXRwLXByb21vdG9vbHRpcC1kZXRhaWxzLWljb257d2lkdGg6MThweH0ueXRwLXByb21vdG9vbHRpcC1kZXRhaWxzLWljb24gc3Zne2hlaWdodDoyMnB4O3dpZHRoOjIycHg7bWFyZ2luOi03cHggLTVweH0ueXRwLWZ1bGxzY3JlZW4gLnl0cC1wcm9tb3Rvb2x0aXAtZGV0YWlscy1pY29ue3dpZHRoOjIycHh9Lnl0cC1mdWxsc2NyZWVuIC55dHAtcHJvbW90b29sdGlwLWRldGFpbHMtaWNvbiBzdmd7aGVpZ2h0OjMwcHg7d2lkdGg6MzBweDttYXJnaW46LTlweCAtN3B4fS55dHAtcmVtb3Rle2xlZnQ6MDtib3R0b206NjFweDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLWVtYmVkIC55dHAtcmVtb3Rle2JvdHRvbTo1M3B4fS55dHAtcmVtb3RlW2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1iaWctbW9kZSAueXRwLXJlbW90ZXtib3R0b206NzBweH0ueXRwLWhpZGUtY29udHJvbHMgLnl0cC1yZW1vdGV7Ym90dG9tOjEycHg7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtcmVtb3RlLWRpc3BsYXktc3RhdHVze3otaW5kZXg6MTU7cG9zaXRpb246YWJzb2x1dGU7bGVmdDoxMnB4O2JvdHRvbTo2MXB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNik7cGFkZGluZy1yaWdodDo1cHg7Ym9yZGVyLXJhZGl1czo1cHg7b3BhY2l0eTouODV9Lnl0cC1lbWJlZCAueXRwLXJlbW90ZS1kaXNwbGF5LXN0YXR1c3tib3R0b206NTNweH0ueXRwLWJpZy1tb2RlIC55dHAtcmVtb3RlLWRpc3BsYXktc3RhdHVze2JvdHRvbTo3MHB4fS55dHAtcmVtb3RlLWRpc3BsYXktc3RhdHVzLWljb257ZmxvYXQ6bGVmdDt3aWR0aDo0MHB4O2hlaWdodDo0MHB4fS55dHAtYmlnLW1vZGUgLnl0cC1yZW1vdGUtZGlzcGxheS1zdGF0dXMtaWNvbnt3aWR0aDo2MHB4O2hlaWdodDo2MHB4fS55dHAtcmVtb3RlLWRpc3BsYXktc3RhdHVzLXRleHR7dGV4dC1zaGFkb3c6MCAwIDJweCByZ2JhKDAsMCwwLC41KTtwYWRkaW5nLXRvcDoxMHB4O3BhZGRpbmctbGVmdDo1cHg7Zm9udC1zaXplOjEzMCU7Zm9udC13ZWlnaHQ6NTAwO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHAtYmlnLW1vZGUgLnl0cC1yZW1vdGUtZGlzcGxheS1zdGF0dXMtdGV4dHtwYWRkaW5nLXRvcDoxNXB4O2xlZnQ6MTA1cHh9Lnl0cC1iaWctbW9kZSAueXRwLXJlbW90ZS1kaXNwbGF5LXN0YXR1cy10ZXh0e3RvcDozMHB4fS55dHAtcmVwbGF5LWJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTtib3R0b206MDttYXJnaW4tbGVmdDotMjRweDt6LWluZGV4OjU5fS55dHAtZW1iZWQgLnl0cC1yZXBsYXktYnV0dG9ue2JvdHRvbTo0cHg7bWFyZ2luLWxlZnQ6LTIwcHh9Lnl0cC1iaWctbW9kZSAueXRwLXJlcGxheS1idXR0b257Ym90dG9tOjcuNXB4O21hcmdpbi1sZWZ0Oi0yN3B4fS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLXJlcGxheS1idXR0b257Ym90dG9tOjEwcHh9Lnl0cC1iaWctbW9kZS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLXJlcGxheS1idXR0b257Ym90dG9tOjI0LjVweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLXBsYXktYnV0dG9ue21hcmdpbi1sZWZ0OjhweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLWJ1dHRvbi55dHAtYXV0b25hdi10b2dnbGV7cGFkZGluZy1sZWZ0OjB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC12b2x1bWUtYXJlYXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS55dHAtZGVsaGktbW9kZXJuLnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC1jaHJvbWUtYm90dG9tIC55dHAtdm9sdW1lLWFyZWE6aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ueXRwLWRlbGhpLW1vZGVybi55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLXRpbWUtd3JhcHBlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BhZGRpbmc6MCA0cHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1jaGFwdGVyLXRpdGxlLnl0cC1idXR0b257YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ueXRwLWRlbGhpLW1vZGVybi55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xze2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1wbGF5LWJ1dHRvbjpob3ZlcjphZnRlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS55dHAtZGVsaGktbW9kZXJuLnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC1jaHJvbWUtYm90dG9tIC55dHAtdGltZS13cmFwcGVyOm5vdCgueXRwLW1pbmlwbGF5ZXItdWkgKik6aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ueXRwLWRlbGhpLW1vZGVybi55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbjpob3ZlcjphZnRlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS55dHAtZGVsaGktbW9kZXJuLnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC1jaHJvbWUtYm90dG9tIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMgLnl0cC1idXR0b246aG92ZXI6YmVmb3Jle2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1uZXh0LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kik6aG92ZXI6YWZ0ZXIsLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1wcmV2LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kik6aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b217cGFkZGluZzowOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAwIDAgcmdiYSgyMjcsMjI3LDIyNywuNSk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAwIDAgcmdiYSgyMjcsMjI3LDIyNywuNSk7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IGJvdHRvbSxsZWZ0IHRvcCxmcm9tKHJnYigxOSwxOSwxOSkpLHRvKHJnYig1Miw1Miw1MikpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSxyZ2IoMTksMTksMTkpLHJnYig1Miw1Miw1MikpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDBkZWcscmdiKDE5LDE5LDE5KSxyZ2IoNTIsNTIsNTIpKX0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXJ7aGVpZ2h0OjhweDtiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGNvbG9yLXN0b3AoNTAlLHJnYmEoMCwwLDAsMCkpLHRvKHJnYigxOSwxOSwxOSkpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLDApIDUwJSxyZ2IoMTksMTksMTkpKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgwLDAsMCwwKSA1MCUscmdiKDE5LDE5LDE5KSl9Lnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC1wcm9ncmVzcy1saXN0e2JhY2tncm91bmQ6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsbGVmdCB0b3AsbGVmdCBib3R0b20sZnJvbShyZ2IoNjgsNjgsNjgpKSx0byhyZ2IoOTUsOTUsOTUpKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AscmdiKDY4LDY4LDY4KSxyZ2IoOTUsOTUsOTUpKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiKDY4LDY4LDY4KSxyZ2IoOTUsOTUsOTUpKX0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLXBsYXktcHJvZ3Jlc3N7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IGJvdHRvbSxsZWZ0IHRvcCxmcm9tKHJnYigxOTQsMCwwKSksdG8ocmdiKDIzMCw2LDYpKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChib3R0b20scmdiKDE5NCwwLDApLHJnYigyMzAsNiw2KSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMGRlZyxyZ2IoMTk0LDAsMCkscmdiKDIzMCw2LDYpKX0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLXNjcnViYmVyLWJ1dHRvbntoZWlnaHQ6OHB4O3dpZHRoOjhweDtib3JkZXItcmFkaXVzOjhweDtib3JkZXI6NHB4IHNvbGlkIHJnYigyNTUsMjU1LDI1NSk7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IGJvdHRvbSxsZWZ0IHRvcCxmcm9tKHJnYigxMzcsMTM3LDEzNykpLHRvKHJnYigxODYsMTg2LDE4NikpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSxyZ2IoMTM3LDEzNywxMzcpLHJnYigxODYsMTg2LDE4NikpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDBkZWcscmdiKDEzNywxMzcsMTM3KSxyZ2IoMTg2LDE4NiwxODYpKTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC1jaHJvbWUtYm90dG9tIC55dHAtYnV0dG9uOm5vdCgueXRwLWNoYXB0ZXItdGl0bGUpe2JvcmRlci1yaWdodDoxcHggc29saWQgYmxhY2s7LXdlYmtpdC1ib3gtc2hhZG93OjFweCAwIHJnYmEoMjI3LDIyNywyMjcsLjIpO2JveC1zaGFkb3c6MXB4IDAgcmdiYSgyMjcsMjI3LDIyNywuMik7b3BhY2l0eTouOX0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1idXR0b24ueXRwLWF1dG9uYXYtdG9nZ2xle2JvcmRlci1sZWZ0OjFweCBzb2xpZCBibGFjaztwYWRkaW5nLWxlZnQ6NHB4Oy13ZWJraXQtYm94LXNoYWRvdzoxcHggMCByZ2JhKDIyNywyMjcsMjI3LC4yKSxpbnNldCAxcHggMCByZ2JhKDIyNywyMjcsMjI3LC4yKTtib3gtc2hhZG93OjFweCAwIHJnYmEoMjI3LDIyNywyMjcsLjIpLGluc2V0IDFweCAwIHJnYmEoMjI3LDIyNywyMjcsLjIpfS55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLXRpbWUtZGlzcGxheXtwYWRkaW5nLWxlZnQ6MTBweH0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1idXR0b246YWN0aXZlOmZvY3VzLC55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtc3VidGl0bGVzLWJ1dHRvblthcmlhLXByZXNzZWQ9dHJ1ZV17YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxsZWZ0IGJvdHRvbSxmcm9tKHJnYigxOSwxOSwxOSkpLHRvKHJnYig1Miw1Miw1MikpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2IoMTksMTksMTkpLHJnYig1Miw1Miw1MikpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2IoMTksMTksMTkpLHJnYig1Miw1Miw1MikpfS55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtdm9sdW1lLXBhbmVsLnl0cC12b2x1bWUtY29udHJvbC1ob3ZlcnttYXJnaW4tbGVmdDo4cHh9Lnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC12b2x1bWUtc2xpZGVyLWhhbmRsZTpiZWZvcmV7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IGJvdHRvbSxsZWZ0IHRvcCxmcm9tKHJnYigxOTQsMCwwKSksdG8ocmdiKDIzMCw2LDYpKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChib3R0b20scmdiKDE5NCwwLDApLHJnYigyMzAsNiw2KSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMGRlZyxyZ2IoMTk0LDAsMCkscmdiKDIzMCw2LDYpKTttYXJnaW4tbGVmdDotNnB4fS55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtYmV6ZWx7Ym9yZGVyLXJhZGl1czp1bnNldDtiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgYm90dG9tLGxlZnQgdG9wLGZyb20ocmdiKDE5LDE5LDE5KSksdG8ocmdiKDUyLDUyLDUyKSkpO2JhY2tncm91bmQ6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQoYm90dG9tLHJnYigxOSwxOSwxOSkscmdiKDUyLDUyLDUyKSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMGRlZyxyZ2IoMTksMTksMTkpLHJnYig1Miw1Miw1MikpOy13ZWJraXQtYW5pbWF0aW9uOmJlemVsLWZhZGUtaW4gMXMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSkgMSBub3JtYWwgZm9yd2FyZHM7YW5pbWF0aW9uOmJlemVsLWZhZGUtaW4gMXMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSkgMSBub3JtYWwgZm9yd2FyZHN9QC13ZWJraXQta2V5ZnJhbWVzIGJlemVsLWZhZGUtaW57MCV7b3BhY2l0eTowfTI1JSw3NSV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDIpO3RyYW5zZm9ybTpzY2FsZSgyKX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfX1Aa2V5ZnJhbWVzIGJlemVsLWZhZGUtaW57MCV7b3BhY2l0eTowfTI1JSw3NSV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDIpO3RyYW5zZm9ybTpzY2FsZSgyKX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfX0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLXRvb2x0aXAtYmcsLnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC10b29sdGlwLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKXtib3JkZXItcmFkaXVzOjB9Lnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC10b29sdGlwLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKXstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMXB4IDFweCByZ2JhKDIyNywyMjcsMjI3LC4yKTtib3gtc2hhZG93Omluc2V0IDFweCAxcHggcmdiYSgyMjcsMjI3LDIyNywuMik7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IGJvdHRvbSxsZWZ0IHRvcCxmcm9tKHJnYigxOSwxOSwxOSkpLHRvKHJnYig1Miw1Miw1MikpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSxyZ2IoMTksMTksMTkpLHJnYig1Miw1Miw1MikpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDBkZWcscmdiKDE5LDE5LDE5KSxyZ2IoNTIsNTIsNTIpKX0ueXRwLXNldHRpbmdzLWJ1dHRvbntwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLXNldHRpbmdzLWJ1dHRvbiBzdmd7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtc2V0dGluZ3MtYnV0dG9uW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gc3Zney13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgzMGRlZyk7LW1zLXRyYW5zZm9ybTpyb3RhdGUoMzBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMzBkZWcpfS55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZS1ncmV5OmFmdGVyLC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZTphZnRlciwueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtNGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtNWstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtOGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGQtcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGRyLXF1YWxpdHktYmFkZ2U6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtyaWdodDo1cHg7aGVpZ2h0OjlweDt3aWR0aDoxM3B4O2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1yZWQtaW5kaWNhdG9yLCNlMTAwMmQpO2JvcmRlci1yYWRpdXM6MXB4O2xpbmUtaGVpZ2h0Om5vcm1hbH0ueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2UtZ3JleTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM2NjZ9Lnl0cC1jb2xvci13aGl0ZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2UtZ3JleTphZnRlciwueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC00ay1xdWFsaXR5LWJhZGdlOmFmdGVyLC55dHAtY29sb3Itd2hpdGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTVrLXF1YWxpdHktYmFkZ2U6YWZ0ZXIsLnl0cC1jb2xvci13aGl0ZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtOGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC1oZC1xdWFsaXR5LWJhZGdlOmFmdGVyLC55dHAtY29sb3Itd2hpdGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkci1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2RkZH0ueXRwLWNvbG9yLXBhcnR5IC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZS1ncmV5OmFmdGVyLC55dHAtY29sb3ItcGFydHkgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTNkLWJhZGdlOmFmdGVyLC55dHAtY29sb3ItcGFydHkgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTRrLXF1YWxpdHktYmFkZ2U6YWZ0ZXIsLnl0cC1jb2xvci1wYXJ0eSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtNWstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWNvbG9yLXBhcnR5IC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC04ay1xdWFsaXR5LWJhZGdlOmFmdGVyLC55dHAtY29sb3ItcGFydHkgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkLXF1YWxpdHktYmFkZ2U6YWZ0ZXIsLnl0cC1jb2xvci1wYXJ0eSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGRyLXF1YWxpdHktYmFkZ2U6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246eXRwLXBhcnR5LWJhY2tncm91bmQtY29sb3IgLjFzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246eXRwLXBhcnR5LWJhY2tncm91bmQtY29sb3IgLjFzIGxpbmVhciBpbmZpbml0ZX0ueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGQtcXVhbGl0eS1iYWRnZTphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBeE15QTVJajQ4Y0dGMGFDQm1hV3hzTFc5d1lXTnBkSGs5SWk0Mk5EY2lJR1pwYkd3dGNuVnNaVDBpWlhabGJtOWtaQ0lnWkQwaVRUVWdOMmd4ZGpGSU5YcHROUzAwZGpGSU9GWXplazB6SURaV05XZ3lkakY2VFRJZ04yZ3hkakZJTW5wdE5TQXdhRE4yTVVnM2VtMHpMVEZvTVhZeGFDMHhlaUl2UGp4d1lYUm9JR1pwYkd3OUlpTm1abVlpSUdacGJHd3RjblZzWlQwaVpYWmxibTlrWkNJZ1pEMGlUVFVnTjFZMVNETjJNa2d5VmpKb01YWXlhREpXTW1neGRqVjZiVFl0TVdndE1YWXhTRGRXTW1nemRqRm9NWHB0TFRFdE1sWXpTRGgyTTJneWVpSXZQand2YzNablBnPT0pfS55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC1oZHItcXVhbGl0eS1iYWRnZTphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBeE5DQTJJajQ4Y0dGMGFDQm1hV3hzTFc5d1lXTnBkSGs5SWk0Mk5EY2lJR1E5SWsweklEVm9NWFl4U0RONmJUVXROSFl4U0RaV01YcE5NU0EwVmpOb01uWXhlazB3SURWb01YWXhTREI2YlRVZ01HZ3pkakZJTlhwdE15MHhhREYyTVVnNGVpSXZQanh3WVhSb0lHWnBiR3c5SWlObVptWWlJR1E5SWsweklEVldNMGd4ZGpKSU1GWXdhREYyTW1neVZqQm9NWFkxZW0wMkxURklPSFl4U0RWV01HZ3pkakZvTVhwTk9DQXlWakZJTm5ZemFESjZJaTgrUEhCaGRHZ2dabWxzYkMxdmNHRmphWFI1UFNJdU5qUTNJaUJrUFNKTk1UTWdNbWd4ZGpGb0xURjZiVEFnTTJneGRqRm9MVEY2YlMweUxUSm9Nbll4YUMweWVtMHRNU0F5YURGMk1XZ3RNWHB0TVMwMGFESjJNV2d0TW5vaUx6NDhjR0YwYUNCbWFXeHNQU0lqWm1abUlpQmtQU0pOTVRRZ00zWXlhQzB4VmpONmJTMHpMVE5vTW5ZeGFDMHlkakZvTW5ZeGFDMHlkakpvTFRGV01IcHRNaUF3YURGMk1tZ3RNWG9pTHo0OEwzTjJaejQ9KTtoZWlnaHQ6NnB4O3dpZHRoOjE0cHg7cmlnaHQ6M3B4O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6I2UxMDAyZDtib3JkZXItd2lkdGg6MXB4fS55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC00ay1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TXlBNUlqNDhjR0YwYUNCbWFXeHNMVzl3WVdOcGRIazlJaTQyTkRjaUlHWnBiR3d0Y25Wc1pUMGlaWFpsYm05a1pDSWdaRDBpVFRFd0lEUm9NWFl4YUMweGVtMHdJRE5vTVhZeGFDMHhlazA0SURWb01uWXhTRGg2VFRjZ04yZ3hkakZJTjNwTk5TQTJhREYyTVVnMWVrMDBJRGRvTVhZeFNEUjZUVElnTm1neWRqRklNbnB0TVMweWFERjJNVWd6ZWlJdlBqeHdZWFJvSUdacGJHdzlJaU5tWm1ZaUlHWnBiR3d0Y25Wc1pUMGlaWFpsYm05a1pDSWdaRDBpVFRFeElEVjJNbWd0TVZZMWVtMHRNU0F3U0RoMk1rZzNWakpvTVhZeWFESjZUVFFnTkVnemRqRm9NWHB0TUNBelZqWklNbFkwYURGV00yZ3hWakpvTVhZemFERjJNVWcxZGpGNmJUWXROV2d4ZGpKb0xURjZJaTgrUEM5emRtYyspfS55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC01ay1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TXlBNUlqNDhjR0YwYUNCbWFXeHNMVzl3WVdOcGRIazlJaTQyTkRjaUlHWnBiR3d0Y25Wc1pUMGlaWFpsYm05a1pDSWdaRDBpVFRFd0lEUm9NWFl4YUMweGVtMHdJRE5vTVhZeGFDMHhlazA0SURWb01uWXhTRGg2VFRjZ04yZ3hkakZJTjNwTk5TQTJhREYyTVVnMWVrMHlJRGRvTTNZeFNESjZiVEF0TW1nemRqRklNbm9pTHo0OGNHRjBhQ0JtYVd4c1BTSWpabVptSWlCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlHUTlJazB4TVNBMWRqSm9MVEZXTlhwdExURWdNRWc0ZGpKSU4xWXlhREYyTW1neWVtMHdMVE5vTVhZeWFDMHhlazB5SURab00zWXhTREp0TXkweWFERjJNVWcxYlRBdE1rZ3pWak5vTTFZeVNESjJNMmd6ZWlJdlBqd3ZjM1puUGc9PSl9Lnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLThrLXF1YWxpdHktYmFkZ2U6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXhNeUE1SWo0OGNHRjBhQ0JtYVd4c0xXOXdZV05wZEhrOUlpNDJORGNpSUdacGJHd3RjblZzWlQwaVpYWmxibTlrWkNJZ1pEMGlUVEV3SURSb01YWXhhQzB4ZW0wd0lETm9NWFl4YUMweGVrMDRJRFZvTW5ZeFNEaDZUVGNnTjJneGRqRklOM3BOTlNBMmFERjJNVWcxZWsweklEVm9Nbll4U0RONmJUQXRNbWd5ZGpGSU0zcHRNaUF4YURGMk1VZzFlazB5SURSb01YWXhTREo2YlRBZ01tZ3hkakZJTW5wdE1TQXhhREoyTVVnemVpSXZQanh3WVhSb0lHWnBiR3c5SWlObVptWWlJR1pwYkd3dGNuVnNaVDBpWlhabGJtOWtaQ0lnWkQwaVRURXhJRFYyTW1ndE1WWTFlbTB0TVNBd1NEaDJNa2czVmpKb01YWXlhREo2YlRBdE0yZ3hkakpvTFRGNlRUTWdObWd5ZGpGSU0yMHdMVFZvTW5ZeFNETjZiVElnTTJneGRqRklOWHBOTXlBMGFESjJNVWd6ZW0weUxURm9NWFl4U0RWNlRUSWdOV2d4ZGpGSU1ucHRNQzB5YURGMk1VZ3llaUl2UGp3dmMzWm5QZz09KX0ueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2UtZ3JleTphZnRlciwueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2U6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXhNeUE1SWo0OGNHRjBhQ0JtYVd4c1BTSWpabVptSWlCa1BTSk5NaUF5YURSMk5VZ3lWalpvTTFZMVNESldOR2d6VmpOSU1ucHROU0F3YUROMk1VZzRkak5vTW5ZeFNEZDZiVE1nTVdneGRqTm9MVEY2SWk4K1BIQmhkR2dnWm1sc2JDMXZjR0ZqYVhSNVBTSXVOalEzSWlCa1BTSk5NaUF6YUROMk1VZ3llbTAySURCb01uWXhTRGg2VFRJZ05XZ3pkakZJTW5wdE9DQXhhREYyTVdndE1YcE5NaUEzYURSMk1VZ3llbTAxSURCb00zWXhTRGQ2SWk4K1BDOXpkbWMrKX0ueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC1oZC1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TXlBNUlqNDhjR0YwYUNCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlHUTlJazAxSURkV05VZ3pkakpJTWxZeWFERjJNbWd5VmpKb01YWTFlbTAyTFRGb0xURjJNVWczVmpKb00zWXhhREY2YlMweExUSldNMGc0ZGpOb01ub2lMejQ4TDNOMlp6ND0pfS55dHAtY29sb3Itd2hpdGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkci1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TkNBMUlqNDhjR0YwYUNCa1BTSk5NeUExVmpOSU1YWXlTREJXTUdneGRqSm9NbFl3YURGMk5YcHROaTB4U0RoMk1VZzFWakJvTTNZeGFERjZUVGdnTWxZeFNEWjJNMmd5ZWsweE5DQXpkakpvTFRGV00zcHRMVEVnTUdndE1uWXlhQzB4VmpCb01YWXlhREo2YlRBdE1tZ3RNMVl3YURSMk1tZ3RNWG9pTHo0OEwzTjJaejQ9KX0ueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC00ay1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TXlBNUlqNDhjR0YwYUNCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlHUTlJazB4TVNBMWRqSm9MVEZXTlhwdExURWdNRWc0ZGpKSU4xWXlhREYyTW1neWVrMDBJRFJJTTNZeGFERjZiVEFnTTFZMlNESldOR2d4VmpOb01WWXlhREYyTTJneGRqRklOWFl4ZW0wMkxUVm9NWFl5YUMweGVpSXZQand2YzNablBnPT0pfS55dHAtY29sb3Itd2hpdGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTVrLXF1YWxpdHktYmFkZ2U6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXhNeUE1SWo0OGNHRjBhQ0JtYVd4c0xYSjFiR1U5SW1WMlpXNXZaR1FpSUdROUlrMHhNU0ExZGpKb0xURldOWHB0TFRFZ01FZzRkakpJTjFZeWFERjJNbWd5ZW0wd0xUTm9NWFl5YUMweGVrMHlJRFpvTTNZeFNESnRNeTB5YURGMk1VZzFiVEF0TWtnelZqTm9NMVl5U0RKMk0yZ3plaUl2UGp3dmMzWm5QZz09KX0ueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC04ay1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TXlBNUlqNDhjR0YwYUNCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlHUTlJazB4TVNBMWRqSm9MVEZXTlhwdExURWdNRWc0ZGpKSU4xWXlhREYyTW1neWVtMHdMVE5vTVhZeWFDMHhlazB6SURab01uWXhTRE50TUMwMWFESjJNVWd6ZW0weUlETm9NWFl4U0RWNlRUTWdOR2d5ZGpGSU0zcHRNaTB4YURGMk1VZzFlazB5SURWb01YWXhTREo2YlRBdE1tZ3hkakZJTW5vaUx6NDhMM04yWno0PSl9Lnl0cC1jb2xvci13aGl0ZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2UtZ3JleTphZnRlciwueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZTphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBeE15QTVJajQ4Y0dGMGFDQmtQU0pOTWlBeWFEUjJOVWd5Vmpab00xWTFTREpXTkdnelZqTklNbnB0TlNBd2FETjJNVWc0ZGpOb01uWXhTRGQ2YlRNZ01XZ3hkak5vTFRGNklpOCtQQzl6ZG1jKyl9Lnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2UtZ3JleTphZnRlciwueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZTphZnRlciwueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC00ay1xdWFsaXR5LWJhZGdlOmFmdGVyLC55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTVrLXF1YWxpdHktYmFkZ2U6YWZ0ZXIsLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtOGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC1oZC1xdWFsaXR5LWJhZGdlOmFmdGVyLC55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkci1xdWFsaXR5LWJhZGdlOmFmdGVye3RvcDoxNXB4O3JpZ2h0OjZweDtwYWRkaW5nOjJweDtmb250LWZhbWlseTpWZXJkYW5hLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEwcHg7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOiNmZmY7dGV4dC1zaGFkb3c6MCAycHggMCByZ2JhKDAsMCwwLC42KTtiYWNrZ3JvdW5kLWltYWdlOm5vbmU7Ym9yZGVyLXJhZGl1czoxLjVweDtoZWlnaHQ6YXV0bzt3aWR0aDphdXRvfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2UtZ3JleTphZnRlciwueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTNkLWJhZGdlOmFmdGVyLC55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtNGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTVrLXF1YWxpdHktYmFkZ2U6YWZ0ZXIsLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC04ay1xdWFsaXR5LWJhZGdlOmFmdGVyLC55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGQtcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkci1xdWFsaXR5LWJhZGdlOmFmdGVye3RvcDo0cHg7cmlnaHQ6NHB4fS55dHAtY29sb3Itd2hpdGUueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZS1ncmV5OmFmdGVyLC55dHAtY29sb3Itd2hpdGUueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtNGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtNWstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtOGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGQtcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGRyLXF1YWxpdHktYmFkZ2U6YWZ0ZXJ7Y29sb3I6IzAwMDt0ZXh0LXNoYWRvdzpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkLXF1YWxpdHktYmFkZ2U6YWZ0ZXJ7Y29udGVudDoiSEQifS55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkci1xdWFsaXR5LWJhZGdlOmFmdGVye2NvbnRlbnQ6IkhEUiI7Zm9udC1zaXplOjhweH0ueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC00ay1xdWFsaXR5LWJhZGdlOmFmdGVye2NvbnRlbnQ6IjRLIn0ueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC01ay1xdWFsaXR5LWJhZGdlOmFmdGVye2NvbnRlbnQ6IjVLIn0ueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC04ay1xdWFsaXR5LWJhZGdlOmFmdGVye2NvbnRlbnQ6IjhLIn0ueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZS1ncmV5OmFmdGVyLC55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTNkLWJhZGdlOmFmdGVye2NvbnRlbnQ6IjNEIn0ueXRwLWdlbmVyaWMtcG9wdXB7dG9wOjA7bGVmdDowO3BhZGRpbmc6NXB4IDlweDttYXgtd2lkdGg6MTQ0cHg7ei1pbmRleDo3Mn0ueXRwLWJpZy1tb2RlIC55dHAtZ2VuZXJpYy1wb3B1cHttYXgtd2lkdGg6MjE2cHh9Lmh0bWw1LXZpZGVvLXBsYXllciAueXRwLWdlbmVyaWMtcG9wdXAgYXt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS55dHAtcG9wdXB7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlci1yYWRpdXM6MnB4O2JhY2tncm91bmQ6cmdiYSgyOCwyOCwyOCwuOSk7dGV4dC1zaGFkb3c6MCAwIDJweCByZ2JhKDAsMCwwLC41KTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXBvcHVwey13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bSxyZ2JhKDAsMCwwLC42KSl9Lnl0cC1kbmkgLnl0cC1wb3B1cHt0ZXh0LXNoYWRvdzpub25lfS55dHAtcG9wdXBbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLXBvcHVwLWFuaW1hdGluZ3std2Via2l0LXRyYW5zaXRpb246YWxsIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjphbGwgLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtwb2ludGVyLWV2ZW50czpub25lfS55dHAtcG9wdXAtYW5pbWF0aW5nIC55dHAtcGFuZWx7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuMjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246YWxsIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lnl0cC1wYW5lbC1hbmltYXRlLWJhY2ssLnl0cC1wYW5lbC1hbmltYXRlLWZvcndhcmR7b3BhY2l0eTowfVtkaXI9bHRyXSAueXRwLXBhbmVsLWFuaW1hdGUtYmFja3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1bZGlyPWx0cl0gLnl0cC1wYW5lbC1hbmltYXRlLWZvcndhcmR7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSl9W2Rpcj1ydGxdIC55dHAtcGFuZWwtYW5pbWF0ZS1iYWNrey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpfVtkaXI9cnRsXSAueXRwLXBhbmVsLWFuaW1hdGUtZm9yd2FyZHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX0ueXRwLXNldHRpbmdzLW1lbnV7cmlnaHQ6MTJweDtib3R0b206NjFweDt6LWluZGV4OjcwO3dpbGwtY2hhbmdlOndpZHRoLGhlaWdodDtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zZXR0aW5ncy1tZW51e2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgNnB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLnl0cC1zZXR0aW5ncy1tZW51e2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgNnB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpICsgdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUpO29wYWNpdHk6Y2FsYygxIC0gdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjMpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1tZW51e29wYWNpdHk6Y2FsYygxIC0gdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjMpO2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgNnB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpICsgdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUpfS55dHAtZW1iZWQgLnl0cC1zZXR0aW5ncy1tZW51e2JvdHRvbTo1M3B4fS55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1tZW51e3JpZ2h0OjI0cHg7Ym90dG9tOjcwcHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtbWVudXtib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA5NnB4KSArIDZweCl9Lnl0cC1zZXR0aW5ncy1tZW51IC55dHAtbWVudWl0ZW0tY29udGVudHttYXgtd2lkdGg6MjUwcHg7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zZXR0aW5ncy1tZW51e3otaW5kZXg6MjMwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXNldHRpbmdzLW1lbnUgLnl0cC1wYW5lbC1tZW51e3BhZGRpbmc6OHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtc2V0dGluZ3MtbWVudSAueXRwLW1lbnVpdGVtOm5vdCgueXRwLW1lbnVpdGVtLXdpdGgtZm9vdGVyKXtoZWlnaHQ6NDhweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXNldHRpbmdzLW1lbnUgLnl0cC1tZW51aXRlbT46Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo4cHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zZXR0aW5ncy1tZW51IC55dHAtbWVudWl0ZW0+Omxhc3QtY2hpbGR7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6OHB4O2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjhweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXNldHRpbmdzLW1lbnUgLnl0cC1tZW51aXRlbS1pY29ue3BhZGRpbmctbGVmdDo4cHg7cGFkZGluZy1yaWdodDoyNHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtc2V0dGluZ3MtbWVudSAueXRwLW1lbnVpdGVtLWNvbnRlbnR7cGFkZGluZy1yaWdodDo4cHh9Lnl0cC1zcGVlZHNsaWRlci1jb21wb25lbnR7aGVpZ2h0Ojk1cHg7b3V0bGluZTpub25lfS55dHAtc3BlZWRzbGlkZXItY29tcG9uZW50IC55dHAtc2xpZGVye2hlaWdodDo0MHB4fS55dHAtc3BlZWRzbGlkZXItY29tcG9uZW50e3RleHQtYWxpZ246Y2VudGVyfS55dHAtc3BlZWRzbGlkZXItaW5kaWNhdG9yLWNvbnRhaW5lcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlfS55dHAtc3BlZWRzbGlkZXItY29tcG9uZW50IC55dHAtc2xpZGVyLWhhbmRsZTphZnRlciwueXRwLXNwZWVkc2xpZGVyLWNvbXBvbmVudCAueXRwLXNsaWRlci1oYW5kbGU6YmVmb3Jle2hlaWdodDo1cHh9Lnl0cC1zcGVlZHNsaWRlci10ZXh0e2ZvbnQtc2l6ZToxNTAlO3RleHQtYWxpZ246Y2VudGVyfS55dHAtc3BlZWRzbGlkZXItcHJlbWl1bS1iYWRnZXt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJeU5DSWdhR1ZwWjJoMFBTSXlOQ0lnZG1sbGQwSnZlRDBpTFRJZ0xUSWdNalFnTWpRaVBqeHdZWFJvSUdacGJHdzlJaU5qTURBaUlHUTlJazB3SURFdU5ETkRNQ0F1TmpRdU5qUWdNQ0F4TGpReklEQm9NVGN1TVRORE1Ua3VNelVnTUNBeU1DQXVOalFnTWpBZ01TNDBNM1l4Tnk0eE0yTXdJQzQzT1MwdU5qVWdNUzQwTkMweExqUTBJREV1TkRSSU1TNDBNME11TmpRZ01qQWdNQ0F4T1M0ek5TQXdJREU0TGpVMldtMHdJREFpTHo0OGNHRjBhQ0JtYVd4c1BTSWpabVptSWlCa1BTSk5OeTQ0T0NBeE1TNDBNblkwTGpJNVNEVXVNemRXTXk0MU1tZzBMamMxWXk0NU1pQXdJREV1TnpJdU1UY2dNaTQwTWk0MUxqWTVMak0wSURFdU1qSXVPREVnTVM0MklERXVORE11TXpjdU5qSXVOVFlnTVM0ek1pNDFOaUF5TGpFeElEQWdNUzR4T1MwdU5ERWdNaTR4TXkweExqSXlJREl1T0RJdExqZ3lMalk1TFRFdU9UVWdNUzR3TkMwekxqUWdNUzR3TkZwdE1DMHlMakEwYURJdU1qUmpMalkzSURBZ01TNHhPQzB1TVRVZ01TNDFNaTB1TkRjdU16VXRMak14TGpVekxTNDNOUzQxTXkweExqTTBjeTB1TVRndE1TNHdOeTB1TlRNdE1TNDBOV010TGpNMUxTNHpOaTB1T0RRdExqVTFMVEV1TkRZdExqVTJhQzB5TGpOYWJUQWdNQ0l2UGp3dmMzWm5QZz09KTstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7cG9zaXRpb246YWJzb2x1dGU7bWFyZ2luLXJpZ2h0OjhweDtyaWdodDoxMDAlfS55dHAtbWVudWl0ZW0tcHJlbWl1bS1iYWRnZXt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJeU5DSWdhR1ZwWjJoMFBTSXlOQ0lnZG1sbGQwSnZlRDBpTFRJZ0xUSWdNalFnTWpRaVBqeHdZWFJvSUdacGJHdzlJaU5qTURBaUlHUTlJazB3SURFdU5ETkRNQ0F1TmpRdU5qUWdNQ0F4TGpReklEQm9NVGN1TVRORE1Ua3VNelVnTUNBeU1DQXVOalFnTWpBZ01TNDBNM1l4Tnk0eE0yTXdJQzQzT1MwdU5qVWdNUzQwTkMweExqUTBJREV1TkRSSU1TNDBNME11TmpRZ01qQWdNQ0F4T1M0ek5TQXdJREU0TGpVMldtMHdJREFpTHo0OGNHRjBhQ0JtYVd4c1BTSWpabVptSWlCa1BTSk5OeTQ0T0NBeE1TNDBNblkwTGpJNVNEVXVNemRXTXk0MU1tZzBMamMxWXk0NU1pQXdJREV1TnpJdU1UY2dNaTQwTWk0MUxqWTVMak0wSURFdU1qSXVPREVnTVM0MklERXVORE11TXpjdU5qSXVOVFlnTVM0ek1pNDFOaUF5TGpFeElEQWdNUzR4T1MwdU5ERWdNaTR4TXkweExqSXlJREl1T0RJdExqZ3lMalk1TFRFdU9UVWdNUzR3TkMwekxqUWdNUzR3TkZwdE1DMHlMakEwYURJdU1qUmpMalkzSURBZ01TNHhPQzB1TVRVZ01TNDFNaTB1TkRjdU16VXRMak14TGpVekxTNDNOUzQxTXkweExqTTBjeTB1TVRndE1TNHdOeTB1TlRNdE1TNDBOV010TGpNMUxTNHpOaTB1T0RRdExqVTFMVEV1TkRZdExqVTJhQzB5TGpOYWJUQWdNQ0l2UGp3dmMzWm5QZz09KTstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7bWFyZ2luLWxlZnQ6OHB4fS55dHAtbWVudWl0ZW0tY29udGFpbmVyLXdpdGgtYmFkZ2V7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRwLXNwZWVkLXNsaWRlci1tZW51LWZvb3RlcntwYWRkaW5nOjE2cHh9Lnl0cC1zaG93LXNoYXJlLXRpdGxlLnl0cC1zaGFyZS1idXR0b257bWFyZ2luLWxlZnQ6MTBweDttYXJnaW4tcmlnaHQ6MTBweH0ueXRwLW92ZXJmbG93LXBhbmVsIC55dHAtc2hvdy1zaGFyZS10aXRsZS55dHAtc2hhcmUtYnV0dG9ue21hcmdpbi1sZWZ0OjIwcHg7bWFyZ2luLXJpZ2h0OjIwcHh9Lnl0cC1iaWctbW9kZTpub3QoLnl0cC1zaG9ydHMtbW9kZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtc2hhcmUtYnV0dG9uLDpub3QoLnl0cC1zaG9ydHMtbW9kZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtc2hhcmUtYnV0dG9ue3dpZHRoOmF1dG87aGVpZ2h0OmF1dG99Lnl0cC1zaG9ydHMtbW9kZSAueXRwLXNoYXJlLWJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO3BhZGRpbmctdG9wOjRweH0uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLWJpZy1tb2RlKSAueXRwLWNocm9tZS10b3AgLnl0cC1zaGFyZS1idXR0b257bWluLXdpZHRoOjQ4cHg7bWF4LXdpZHRoOjgwcHh9Lnl0cC1zaGFyZS1pY29ue21hcmdpbjphdXRvO3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHh9Lnl0cC1iaWctbW9kZSAueXRwLXNoYXJlLWljb257d2lkdGg6NTRweDtoZWlnaHQ6NTRweH0ueXRwLW92ZXJmbG93LXBhbmVsIC55dHAtc2hhcmUtaWNvbnt3aWR0aDo2MHB4O2hlaWdodDo2MHB4O21hcmdpbi1ib3R0b206MTBweH0ueXRwLXNoYXJlLXRpdGxle2ZvbnQtd2VpZ2h0OjUwMDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6MTRweDtkaXNwbGF5Om5vbmV9Lnl0cC1iaWctbW9kZSAueXRwLXNoYXJlLXRpdGxlLC55dHAtb3ZlcmZsb3ctcGFuZWwgLnl0cC1zaGFyZS10aXRsZXtmb250LXNpemU6MjBweH0ueXRwLXNob3ctc2hhcmUtdGl0bGUgLnl0cC1zaGFyZS10aXRsZXtkaXNwbGF5OmJsb2NrfS5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtYmlnLW1vZGUpIC55dHAtY2hyb21lLXRvcCAueXRwLXNoYXJlLXRpdGxle3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7b3ZlcmZsb3c6aGlkZGVufS55dHAtc2hhcmUtcGFuZWx7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ei1pbmRleDo3NTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjgpO3RleHQtYWxpZ246Y2VudGVyOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtc2hhcmUtcGFuZWxbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtc2hhcmUtcGFuZWwtaW5uZXItY29udGVudHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO21hcmdpbi10b3A6LTY1cHg7bGVmdDowO3JpZ2h0OjA7cGFkZGluZzowIDEwJX0ueXRwLWJpZy1tb2RlIC55dHAtc2hhcmUtcGFuZWwtaW5uZXItY29udGVudHttYXJnaW4tdG9wOi05OHB4fS55dHAtc2hhcmUtcGFuZWwtbG9hZGluZy1zcGlubmVye2Rpc3BsYXk6bm9uZTttYXJnaW46MjBweCBhdXRvIDA7d2lkdGg6MzJweDtoZWlnaHQ6MzJweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWJpZy1tb2RlIC55dHAtc2hhcmUtcGFuZWwtbG9hZGluZy1zcGlubmVye21hcmdpbi10b3A6MzBweH0ueXRwLXNoYXJlLXBhbmVsLnl0cC1zaGFyZS1wYW5lbC1sb2FkaW5nIC55dHAtc2hhcmUtcGFuZWwtbG9hZGluZy1zcGlubmVye2Rpc3BsYXk6YmxvY2t9Lnl0cC1zaGFyZS1wYW5lbC1jbG9zZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NnB4O3JpZ2h0OjEycHg7cGFkZGluZzo2cHg7d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLWJpZy1tb2RlIC55dHAtc2hhcmUtcGFuZWwtY2xvc2V7dG9wOjlweDtyaWdodDoyNHB4O3BhZGRpbmc6OXB4O3dpZHRoOjU0cHg7aGVpZ2h0OjU0cHh9Lnl0cC1zaGFyZS1wYW5lbC1jbG9zZSBwYXRoe2ZpbGw6I2FhYX0ueXRwLXNoYXJlLXBhbmVsLWNsb3NlOmhvdmVyIHBhdGh7ZmlsbDojZmZmfS55dHAtc2hhcmUtcGFuZWwtdGl0bGV7Zm9udC1zaXplOjE1NSU7bGluZS1oZWlnaHQ6MjBweH0ueXRwLWJpZy1tb2RlIC55dHAtc2hhcmUtcGFuZWwtdGl0bGV7bGluZS1oZWlnaHQ6MzBweH0ueXRwLXNoYXJlLXBhbmVsLWxpbmt7ZGlzcGxheTpibG9jaztoZWlnaHQ6MjhweDttYXJnaW4tdG9wOjE4cHg7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmb250LXNpemU6MjE4JTtmb250LXdlaWdodDo1MDA7bGV0dGVyLXNwYWNpbmc6MXB4O3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47b3V0bGluZTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1zaGFyZS1wYW5lbC1saW5re2hlaWdodDo0MnB4O21hcmdpbi10b3A6MjdweH0ueXRwLXNoYXJlLXBhbmVsLWluY2x1ZGUtcGxheWxpc3R7ZGlzcGxheTpub25lO2xpbmUtaGVpZ2h0OjE1cHg7bWFyZ2luLXRvcDoxMnB4O2ZvbnQtc2l6ZToxMTglO2NvbG9yOiM5OTl9Lnl0cC1iaWctbW9kZSAueXRwLXNoYXJlLXBhbmVsLWluY2x1ZGUtcGxheWxpc3R7bGluZS1oZWlnaHQ6MjIuNXB4O21hcmdpbi10b3A6MThweH0ueXRwLXNoYXJlLXBhbmVsLWluY2x1ZGUtcGxheWxpc3QgaW5wdXRbdHlwZT1jaGVja2JveF17bWFyZ2luOjAgOHB4IDAgMH0ueXRwLXNoYXJlLXBhbmVsLXNlcnZpY2UtYnV0dG9uc3ttYXJnaW4tdG9wOjIwcHg7aGVpZ2h0OjQ0cHh9Lnl0cC1iaWctbW9kZSAueXRwLXNoYXJlLXBhbmVsLXNlcnZpY2UtYnV0dG9uc3ttYXJnaW4tdG9wOjMwcHg7aGVpZ2h0OjY3cHh9Lnl0cC1zaGFyZS1wYW5lbC55dHAtc2hhcmUtcGFuZWwtZmFpbCAueXRwLXNoYXJlLXBhbmVsLXNlcnZpY2UtYnV0dG9ucywueXRwLXNoYXJlLXBhbmVsLnl0cC1zaGFyZS1wYW5lbC1sb2FkaW5nIC55dHAtc2hhcmUtcGFuZWwtc2VydmljZS1idXR0b25ze2Rpc3BsYXk6bm9uZX0ueXRwLXNoYXJlLXBhbmVsLXNlcnZpY2UtYnV0dG9ue3BhZGRpbmc6M3B4O3dpZHRoOjM4cHg7aGVpZ2h0OjM4cHg7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lnl0cC1iaWctbW9kZSAueXRwLXNoYXJlLXBhbmVsLXNlcnZpY2UtYnV0dG9ue3BhZGRpbmc6NXB4O3dpZHRoOjU3cHg7aGVpZ2h0OjU3cHh9Lnl0cC1zaGFyZS1wYW5lbC1lcnJvcntkaXNwbGF5Om5vbmU7bWFyZ2luLXRvcDoyMHB4O2ZvbnQtc2l6ZToxMDklfS55dHAtYmlnLW1vZGUgLnl0cC1zaGFyZS1wYW5lbC1lcnJvcnttYXJnaW4tdG9wOjMwcHh9Lnl0cC1zaGFyZS1wYW5lbC1mYWlsIC55dHAtc2hhcmUtcGFuZWwtZXJyb3J7ZGlzcGxheTpibG9ja30ueXRwLXNob3BwaW5nLXByb2R1Y3QtbWVudXt6LWluZGV4OjcyO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjt0ZXh0LWFsaWduOmxlZnQ7ZGlyZWN0aW9uOmx0cjtmb250LXNpemU6MTFweDtsaW5lLWhlaWdodDoxLjM7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDt3aWxsLWNoYW5nZTp3aWR0aCxoZWlnaHQ7Ym9yZGVyLXJhZGl1czoxMnB4fS55dHAtc2hvcHBpbmctcHJvZHVjdC1tZW51IC55dHAtbWVudWl0ZW0tY29udGVudHttYXgtd2lkdGg6MjUwcHg7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC1zaG9ydHMtdGl0bGUtY2hhbm5lbC1sb2dve3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjA7bWFyZ2luOjVweDstd2Via2l0LWJhY2tncm91bmQtb3JpZ2luOmNvbnRlbnQtYm94O2JhY2tncm91bmQtb3JpZ2luOmNvbnRlbnQtYm94O2Zsb2F0OmxlZnQ7LXdlYmtpdC1hbGlnbi1zZWxmOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcjtib3JkZXItcmFkaXVzOjUwJX0ueXRwLWJpZy1tb2RlIC55dHAtc2hvcnRzLXRpdGxlLWNoYW5uZWwtbG9nb3t3aWR0aDo1MHB4O2hlaWdodDo1MHB4fS55dHAtZW1iZWQtbW9iaWxlIC55dHAtc2hvcnRzLXRpdGxlLWNoYW5uZWwtbG9nbywueXRwLWVtYmVkLW1vYmlsZS55dHAtc21hbGwtbW9kZSAueXRwLXNob3J0cy10aXRsZS1jaGFubmVsLWxvZ297d2lkdGg6MjRweDtoZWlnaHQ6MjRweDttYXJnaW46MH0ueXRwLXNob3J0cy10aXRsZS1leHBhbmRlZC1oZWFkaW5ne21hcmdpbjozcHg7LXdlYmtpdC1ib3gtZmxleDppbml0aWFsOy13ZWJraXQtZmxleDppbml0aWFsO2ZsZXg6aW5pdGlhbDt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtYWxpZ24tc2VsZjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0cC1zaG9ydHMtdGl0bGUtZXhwYW5kZWQtdGl0bGV7Zm9udC1zaXplOjE2cHg7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbjowfS55dHAtYmlnLW1vZGUgLnl0cC1zaG9ydHMtdGl0bGUtZXhwYW5kZWQtdGl0bGV7Zm9udC1zaXplOjIycHh9Lnl0cC1zaG9ydHMtdGl0bGUtZXhwYW5kZWQtdGl0bGUgYXtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtc2hvcnRzLXRpdGxlLWV4cGFuZGVkLXRpdGxle3dvcmQtYnJlYWs6YnJlYWstd29yZDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MThweH0ueXRwLWJpZy1tb2RlIC55dHAtc2hvcnRzLXRpdGxlLWV4cGFuZGVkLXRpdGxle2ZvbnQtc2l6ZToxOHB4fS55dHAtc2hvcnRzLXRpdGxlLWNoYW5uZWx7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjA7ZGlzcGxheTpub25lO2hlaWdodDphdXRvO21hcmdpbi1sZWZ0OjA7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnN0YXRpYzt0b3A6N3B4O2xlZnQ6OHB4O3dpZHRoOmF1dG99Lnl0cC1iaWctbW9kZSAueXRwLXNob3J0cy10aXRsZS1jaGFubmVse21hcmdpbi10b3A6MTBweH0ueXRwLXRpdGxlLWVuYWJsZS1jaGFubmVsLWxvZ28gLnl0cC1zaG9ydHMtdGl0bGUtY2hhbm5lbHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleH0ueXRwLWNocm9tZS10b3AgLnl0cC1zaG9ydHMtdGl0bGUtY2hhbm5lbCAueXRwLXNiey13ZWJraXQtYWxpZ24tc2VsZjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXI7bWFyZ2luOjVweDtoZWlnaHQ6YXV0bzt3aWR0aDphdXRvO3BhZGRpbmc6MDtwYWRkaW5nLWxlZnQ6MDt0ZXh0LXNoYWRvdzpub25lOy13ZWJraXQtZmxleC1zaHJpbms6MDtmbGV4LXNocmluazowfS55dHAtY2hyb21lLXRvcCAueXRwLXNob3J0cy10aXRsZS1jaGFubmVsIC55dHAtc2Itc3Vic2NyaWJle21hcmdpbi1sZWZ0OjB9Lnl0cC1zaG9ydHMtbW9kZSBhLnl0cC1zYi1zdWJzY3JpYmV7bWFyZ2luLWxlZnQ6MH0ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLXRvcCAueXRwLXNob3J0cy10aXRsZS1jaGFubmVsIC55dHAtc2Itc3Vic2NyaWJlLC55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtc2hvcnRzLXRpdGxlLWNoYW5uZWwgLnl0cC1zYi11bnN1YnNjcmliZXtmb250LXNpemU6MTZweDtwYWRkaW5nOjE0cHggMjBweDttYXJnaW4tcmlnaHQ6MTBweH0ueXRwLWF1dG9oaWRlOm5vdCgueXRwLWF1dG9oaWRlLWFjdGl2ZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtc2hvcnRzLXRpdGxlLWNoYW5uZWx7bWFyZ2luLXRvcDo3cHh9Lnl0cC1za2lwLWludHJvLWJ1dHRvbntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjkwMTk2MDc4NDMpO2JvdHRvbTo1OHB4O2hlaWdodDo0OHB4O3BhZGRpbmctbGVmdDoxNnB4O3BhZGRpbmctcmlnaHQ6MTZweDtyaWdodDoxMHB4O3otaW5kZXg6MTB9Lnl0cC1lbWJlZCAueXRwLXNraXAtaW50cm8tYnV0dG9ue2JvdHRvbTo1MHB4O2hlaWdodDo0MHB4fS55dHAtc2tpcC1pbnRyby1idXR0b246aG92ZXJ7YmFja2dyb3VuZDojMDAwfS55dHAtYmlnLW1vZGUgLnl0cC1za2lwLWludHJvLWJ1dHRvbntib3R0b206NzlweDtyaWdodDo0MHB4fS55dHAtc2tpcC1pbnRyby1idXR0b24tdGV4dHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7bWF4LXdpZHRoOjIwMHB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7d2hpdGUtc3BhY2U6bm93cmFwfS55dHAtc2xpZGVyLXNlY3Rpb257ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTUwcHg7aGVpZ2h0OjEwMCU7Y3Vyc29yOnBvaW50ZXI7b3V0bGluZTowfS55dHAtc2xpZGVye2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbjtvdXRsaW5lOjB9Lnl0cC1zbGlkZXItaGFuZGxle3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDtib3JkZXItcmFkaXVzOjEwcHg7bWFyZ2luLXRvcDotMTBweDtiYWNrZ3JvdW5kOiNmZmY7b3V0bGluZTowfS55dHAtc2xpZGVyLWhhbmRsZTphZnRlciwueXRwLXNsaWRlci1oYW5kbGU6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTpibG9jazt0b3A6NTAlO2xlZnQ6MDtoZWlnaHQ6M3B4O21hcmdpbi10b3A6LTJweDt3aWR0aDoxNzBweDtvdXRsaW5lOjB9Lnl0cC1zbGlkZXItaGFuZGxlOmJlZm9yZXtsZWZ0Oi0xNjBweDtiYWNrZ3JvdW5kOiNmZmZ9Lnl0cC1zbGlkZXItaGFuZGxlOmFmdGVye2xlZnQ6MTBweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjIpfS55dHAtcHJvYmFibHkta2V5Ym9hcmQtZm9jdXMgLnl0cC1zbGlkZXItc2VjdGlvbjpmb2N1c3std2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAwIDAgMnB4IHJnYmEoMjcsMTI3LDIwNCwuOCk7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC44KX0ueXRwLW92ZXJsYXl7ei1pbmRleDoxMDtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO3RvcDowO2xlZnQ6MH0ueXRwLXNwZWVkbWFzdGVyLW92ZXJsYXl7dGV4dC1hbGlnbjpjZW50ZXI7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLXNwZWVkbWFzdGVyLXVzZXItZWR1ey13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXItcmFkaXVzOjE4cHg7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotd2Via2l0LWlubGluZS1mbGV4O2Rpc3BsYXk6aW5saW5lLWZsZXg7aGVpZ2h0OjMycHg7bWFyZ2luLXRvcDoyMHB4O3BhZGRpbmc6NnB4IDE2cHg7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNil9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zcGVlZG1hc3Rlci11c2VyLWVkdXstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0scmdiYSgwLDAsMCwuNikpfS55dHAtc3BlZWRtYXN0ZXItdXNlci1lZHUueXRwLXNwZWVkbWFzdGVyLWhhcy1pY29uey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0cC1zcGVlZG1hc3Rlci1pY29uLC55dHAtc3BlZWRtYXN0ZXItbGFiZWx7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotd2Via2l0LWlubGluZS1mbGV4O2Rpc3BsYXk6aW5saW5lLWZsZXh9Lnl0cC1zcGVlZG1hc3Rlci1pY29ue21hcmdpbi1sZWZ0OjRweH0ueXRwLXNwZWVkbWFzdGVyLWljb24gc3Zne2Rpc3BsYXk6YmxvY2s7d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRwLXdlYmdsLXNwaGVyaWNhbC1jb250cm9se3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0OHB4O2xlZnQ6MTJweDtvcGFjaXR5Oi42O2N1cnNvcjpwb2ludGVyO3dpZHRoOjUwcHg7aGVpZ2h0OjUwcHg7LXdlYmtpdC10cmFuc2l0aW9uOnRvcCAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0b3AgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3otaW5kZXg6NDM7b3V0bGluZTpub25lfS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLXdlYmdsLXNwaGVyaWNhbC1jb250cm9se3RvcDo2MHB4fS55dHAtYmlnLW1vZGUgLnl0cC13ZWJnbC1zcGhlcmljYWwtY29udHJvbHt0b3A6NjlweDt3aWR0aDo3NXB4O2hlaWdodDo3NXB4fS55dHAtYmlnLW1vZGUueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykgLnl0cC13ZWJnbC1zcGhlcmljYWwtY29udHJvbHt0b3A6NjBweH0ueXRwLXdlYmdsLXNwaGVyaWNhbC1jb250cm9sLnl0cC1kcmFnZ2luZywueXRwLXdlYmdsLXNwaGVyaWNhbC1jb250cm9sOmhvdmVye29wYWNpdHk6MX0ueXRwLWF1dG9oaWRlIC55dHAtd2ViZ2wtc3BoZXJpY2FsLWNvbnRyb2wsLnl0cC1oaWRlLWluZm8tYmFyIC55dHAtd2ViZ2wtc3BoZXJpY2FsLWNvbnRyb2x7dG9wOjEycHg7LXdlYmtpdC10cmFuc2l0aW9uOnRvcCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dG9wIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC13ZWJnbC1zcGhlcmljYWw6bm90KC55dHAtbWVudS1zaG93bikgLmh0bWw1LXZpZGVvLWNvbnRhaW5lcntjdXJzb3I6bW92ZTtjdXJzb3I6LXdlYmtpdC1ncmFiO2N1cnNvcjpncmFifS55dHAtd2ViZ2wtc3BoZXJpY2FsLnl0cC1kcmFnZ2luZzpub3QoLnl0cC1tZW51LXNob3duKSAuaHRtbDUtdmlkZW8tY29udGFpbmVye2N1cnNvcjptb3ZlO2N1cnNvcjotd2Via2l0LWdyYWJiaW5nO2N1cnNvcjpncmFiYmluZ30ueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtd2ViZ2wtc3BoZXJpY2FsLWNvbnRyb2w6Zm9jdXN7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCByZ2JhKDI3LDEyNywyMDQsLjgpO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMnB4IHJnYmEoMjcsMTI3LDIwNCwuOCl9LmVuZGVkLW1vZGUgLnl0cC13ZWJnbC1zcGhlcmljYWwtY29udHJvbCwueXRwLW1lbnUtc2hvd24gLnl0cC13ZWJnbC1zcGhlcmljYWwtY29udHJvbHtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOnRvcCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dG9wIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC13ZWJnbC1zcGhlcmljYWwtY29udHJvbHtwb3NpdGlvbjpyZWxhdGl2ZTtpbnNldDowfS55dHAtc3Bpbm5lcntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTt0b3A6NTAlO3dpZHRoOjY0cHg7bWFyZ2luLWxlZnQ6LTMycHg7ei1pbmRleDoxODtwb2ludGVyLWV2ZW50czpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1zcGlubmVye3dpZHRoOjEyOHB4O21hcmdpbi1sZWZ0Oi02NHB4fS55dHAtc3Bpbm5lci1tZXNzYWdle3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6NTAlO21hcmdpbi10b3A6NTAlO3dpZHRoOjMwMHB4O2ZvbnQtc2l6ZToxMjclO2xpbmUtaGVpZ2h0OjE4MiU7bWFyZ2luLWxlZnQ6LTE1MHB4O2Rpc3BsYXk6bm9uZTt0ZXh0LWFsaWduOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOmJsYWNrO29wYWNpdHk6LjV9Lnl0cC1zcGlubmVyLWNvbnRhaW5lcntwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7cGFkZGluZy1ib3R0b206MTAwJTt0b3A6NTAlO2xlZnQ6NTAlO21hcmdpbi10b3A6LTUwJTttYXJnaW4tbGVmdDotNTAlO2FuaW1hdGlvbjp5dHAtc3Bpbm5lci1saW5zcGluIDEuNTY4MjM1Mjk0MTE3NnMgbGluZWFyIGluZmluaXRlOy13ZWJraXQtYW5pbWF0aW9uOnl0cC1zcGlubmVyLWxpbnNwaW4gMS41NjgyMzUyOTQxMTc2cyBsaW5lYXIgaW5maW5pdGV9Lnl0cC1zcGlubmVyLXJvdGF0b3J7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTstd2Via2l0LWFuaW1hdGlvbjp5dHAtc3Bpbm5lci1lYXNlc3BpbiA1MzMybXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgaW5maW5pdGUgYm90aDthbmltYXRpb246eXRwLXNwaW5uZXItZWFzZXNwaW4gNTMzMm1zIGN1YmljLWJlemllciguNCwwLC4yLDEpIGluZmluaXRlIGJvdGh9Lnl0cC1zcGlubmVyLWxlZnQsLnl0cC1zcGlubmVyLXJpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO292ZXJmbG93OmhpZGRlbn0ueXRwLXNwaW5uZXItbGVmdHtyaWdodDo0OSV9Lnl0cC1zcGlubmVyLXJpZ2h0e2xlZnQ6NDklfS55dHAtc3Bpbm5lci1jaXJjbGV7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjIwMCU7aGVpZ2h0OjEwMCU7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjojZGRkICNkZGQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyLXdpZHRoOjZweH0ueXRwLWJpZy1tb2RlIC55dHAtc3Bpbm5lci1jaXJjbGV7Ym9yZGVyLXdpZHRoOjEycHh9Lnl0cC1zcGlubmVyLWxlZnQgLnl0cC1zcGlubmVyLWNpcmNsZXtsZWZ0OjA7cmlnaHQ6LTEwMCU7Ym9yZGVyLXJpZ2h0LWNvbG9yOnRyYW5zcGFyZW50Oy13ZWJraXQtYW5pbWF0aW9uOnl0cC1zcGlubmVyLWxlZnQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgaW5maW5pdGUgYm90aDthbmltYXRpb246eXRwLXNwaW5uZXItbGVmdC1zcGluIDEzMzNtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSBpbmZpbml0ZSBib3RofS55dHAtc3Bpbm5lci1yaWdodCAueXRwLXNwaW5uZXItY2lyY2xle2xlZnQ6LTEwMCU7cmlnaHQ6MDtib3JkZXItbGVmdC1jb2xvcjp0cmFuc3BhcmVudDstd2Via2l0LWFuaW1hdGlvbjp5dHAtcmlnaHQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgaW5maW5pdGUgYm90aDthbmltYXRpb246eXRwLXJpZ2h0LXNwaW4gMTMzM21zIGN1YmljLWJlemllciguNCwwLC4yLDEpIGluZmluaXRlIGJvdGh9QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1zcGlubmVyLWxpbnNwaW57dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19QGtleWZyYW1lcyB5dHAtc3Bpbm5lci1saW5zcGlue3Rvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxdHVybik7dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtc3Bpbm5lci1lYXNlc3BpbnsxMi41JXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMTM1ZGVnKX0yNSV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDI3MGRlZyl9MzcuNSV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDQwNWRlZyl9NTAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg1NDBkZWcpfTYyLjUley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg2NzVkZWcpfTc1JXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoODEwZGVnKX04Ny41JXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoOTQ1ZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoM3R1cm4pfX1Aa2V5ZnJhbWVzIHl0cC1zcGlubmVyLWVhc2VzcGluezEyLjUley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxMzVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMTM1ZGVnKX0yNSV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDI3MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpfTM3LjUley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg0MDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoNDA1ZGVnKX01MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDU0MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg1NDBkZWcpfTYyLjUley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg2NzVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoNjc1ZGVnKX03NSV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDgxMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg4MTBkZWcpfTg3LjUley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg5NDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoOTQ1ZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoM3R1cm4pO3RyYW5zZm9ybTpyb3RhdGUoM3R1cm4pfX1ALXdlYmtpdC1rZXlmcmFtZXMgeXRwLXNwaW5uZXItbGVmdC1zcGluezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxMzBkZWcpfTUwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTVkZWcpfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxMzBkZWcpfX1Aa2V5ZnJhbWVzIHl0cC1zcGlubmVyLWxlZnQtc3BpbnswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMTMwZGVnKTt0cmFuc2Zvcm06cm90YXRlKDEzMGRlZyl9NTAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDEzMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgxMzBkZWcpfX1ALXdlYmtpdC1rZXlmcmFtZXMgeXRwLXJpZ2h0LXNwaW57MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC0xMzBkZWcpfTUwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC0xMzBkZWcpfX1Aa2V5ZnJhbWVzIHl0cC1yaWdodC1zcGluezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtMTMwZGVnKTt0cmFuc2Zvcm06cm90YXRlKC0xMzBkZWcpfTUwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg1ZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTEzMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtMTMwZGVnKX19Lnl0cC1zZm57YmFja2dyb3VuZDpyZ2JhKDI4LDI4LDI4LC44KTtib3JkZXItcmFkaXVzOjRweDtjb2xvcjojZmZmO2xlZnQ6MTBweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDt6LWluZGV4OjY0O21pbi13aWR0aDoyNmVtfS55dHAtc2ZuLWNsb3Nle2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjVweDt0b3A6NXB4O3BhZGRpbmc6NXB4fS55dHAtc2ZuLWNvbnRlbnR7cGFkZGluZzo1cHh9Lnl0cC1zZm4tY29udGVudD5kaXY+ZGl2e2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nOjAgLjVlbTt0ZXh0LWFsaWduOnJpZ2h0O3dpZHRoOjEwZW19Lnl0cC1zZm4tY3Bue2ZvbnQtZmFtaWx5OkNvbnNvbGFzLE1vbmFjbyxtb25vc3BhY2U7Zm9udC1zaXplOjEycHh9Lnl0cC1ob3Jpem9uY2hhcnR7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luOjJweDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjpib3R0b219Lnl0cC1ob3Jpem9uY2hhcnQ+c3BhbntkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjphYnNvbHV0ZX0ueXRwLXN0b3J5Ym9hcmQtZnJhbWVwcmV2aWV3e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt6LWluZGV4OjE2O2JhY2tncm91bmQ6IzAwMDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1maW5lLXNjcnViYmluZy1lbmFibGUgLnl0cC1zdG9yeWJvYXJkLWZyYW1lcHJldmlld3tjdXJzb3I6cG9pbnRlcn0ueXRwLXN0b3J5Ym9hcmQtZnJhbWVwcmV2aWV3W2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1zdG9yeWJvYXJkLWZyYW1lcHJldmlldy1pbWd7b3BhY2l0eTouNH0ueXRwLXN0b3J5Ym9hcmQtZnJhbWVwcmV2aWV3LXRpbWVzdGFtcHtkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7Y29sb3I6I2RkZDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjMpO2JvcmRlci1yYWRpdXM6MThweDtsZWZ0OjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTtib3R0b206MzZweDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7cGFkZGluZzo0cHggMTBweH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1zdG9yeWJvYXJkLWZyYW1lcHJldmlldy1pbWd7b3BhY2l0eToxfS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXN0b3J5Ym9hcmQtZnJhbWVwcmV2aWV3LXRpbWVzdGFtcHtkaXNwbGF5OmluaXRpYWx9Lnl0cC1pbmxpbmUtcHJldmlldy1tb2RlIC55dHAtc3Rvcnlib2FyZC1mcmFtZXByZXZpZXctaW1ne29wYWNpdHk6MX0ueXRwLWlubGluZS1wcmV2aWV3LW1vZGUgLnl0cC1zdG9yeWJvYXJkLWZyYW1lcHJldmlldy10aW1lc3RhbXB7ZGlzcGxheTppbml0aWFsfS55dHAtc2J7ZGlzcGxheTppbmxpbmUtYmxvY2s7ZmxvYXQ6bm9uZX0ueXRwLXNiIC55dHAtc2ItdW5zdWJzY3JpYmUsLnl0cC1zYi55dHAtc2Itc3Vic2NyaWJlZCAueXRwLXNiLXN1YnNjcmliZXtkaXNwbGF5Om5vbmV9Lnl0cC1zYi55dHAtc2Itc3Vic2NyaWJlZCAueXRwLXNiLXVuc3Vic2NyaWJle2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fS55dHAtc2Itc3Vic2NyaWJlLC55dHAtc2ItdW5zdWJzY3JpYmV7Ym9yZGVyLXJhZGl1czoxOHB4O2JvcmRlcjpub25lO2RpcmVjdGlvbjpsdHI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO2xldHRlci1zcGFjaW5nOi4wMDdweDtsaW5lLWhlaWdodDoxNnB4O3BhZGRpbmc6MTBweCAxNnB4O3doaXRlLXNwYWNlOm5vd3JhcDstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lfS55dHAtc2hvcnRzLW1vZGUgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1zaG9ydHMtbW9kZSAueXRwLXNiLXVuc3Vic2NyaWJle2JvcmRlci1yYWRpdXM6M3B4O3BhZGRpbmc6M3B4IDZweDtmb250LXdlaWdodDo1MDB9Lnl0cC1zYi1zdWJzY3JpYmUsYS55dHAtc2Itc3Vic2NyaWJle2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjojMDMwMzAzfS55dHAtc2hvcnRzLW1vZGUgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1zaG9ydHMtbW9kZSBhLnl0cC1zYi1zdWJzY3JpYmV7YmFja2dyb3VuZC1jb2xvcjojZmZmfS55dHAtc2Itc3Vic2NyaWJlIC55dHAtc2ItY291bnR7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuOCl9Lnl0cC1zYi11bnN1YnNjcmliZXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjEpO2NvbG9yOiNmZmZ9Lnl0cC1zaG9ydHMtbW9kZSAueXRwLXNiLXVuc3Vic2NyaWJle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Y29sb3I6I2NjYzt0ZXh0LXRyYW5zZm9ybTpub25lfS55dHAtc2Itc3Vic2NyaWJlLnl0cC1zYi1kaXNhYmxlZCwueXRwLXNiLXVuc3Vic2NyaWJlLnl0cC1zYi1kaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDMsMTQ0LDEzOSk7Y3Vyc29yOmRlZmF1bHR9Lnl0cC1zYi1zdWJzY3JpYmU6Zm9jdXMsLnl0cC1zYi11bnN1YnNjcmliZTpmb2N1c3tvdXRsaW5lOm5vbmV9Lnl0cC1zYi55dHAtc2ItY2xhc3NpY3tiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2JvcmRlci1yYWRpdXM6MnB4O21hcmdpbjo0cHggMH0ueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi1zdWJzY3JpYmUueXRwLXNiLWRpc2FibGVkLC55dHAtc2ItY2xhc3NpYyAueXRwLXNiLXVuc3Vic2NyaWJlLnl0cC1zYi1kaXNhYmxlZHtvcGFjaXR5Oi41O2N1cnNvcjpkZWZhdWx0fS55dHAtc2ItdGV4dHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleH0ueXRwLXNiLWNvdW50e21hcmdpbi1sZWZ0OjRweH0ueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1zYi1jbGFzc2ljIC55dHAtc2ItdW5zdWJzY3JpYmV7Ym9yZGVyLXJhZGl1czoycHg7Zm9udC1zaXplOjEycHghaW1wb3J0YW50O2ZvbnQtd2VpZ2h0OjQwMDtwYWRkaW5nOjAhaW1wb3J0YW50O3RleHQtdHJhbnNmb3JtOm5vbmV9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2Itc3Vic2NyaWJle2JvcmRlcjoxcHggc29saWQgI2U2MjExN30ueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi11bnN1YnNjcmliZXtib3JkZXI6MXB4IHNvbGlkICNjY2N9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2ItY291bnQsLnl0cC1zYi1jbGFzc2ljIC55dHAtc2ItdGV4dHtwYWRkaW5nOjNweCA2cHh9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2ItY291bnR7bWFyZ2luOi0xcHg7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjJweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czoycHh9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2Itc3Vic2NyaWJlIC55dHAtc2ItY291bnR7Ym9yZGVyLWxlZnQ6MH0ueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi1zdWJzY3JpYmUgLnl0cC1zYi1jb3VudCwueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi11bnN1YnNjcmliZXtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNTAsMjUwLDI1MCl9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2Itc3Vic2NyaWJlIC55dHAtc2ItdGV4dHtjb2xvcjojZmVmZWZlO2JhY2tncm91bmQtY29sb3I6I2U2MjExN30ueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi1jb3VudCwueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi11bnN1YnNjcmliZSAueXRwLXNiLXRleHR7YmFja2dyb3VuZC1jb2xvcjojZmFmYWZhO2NvbG9yOiM3MzczNzN9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2ItaWNvbntoZWlnaHQ6MTJweDttYXJnaW4tcmlnaHQ6NnB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDoycHg7d2lkdGg6MTZweH0ueXRwLWJpZy1tb2RlIC55dHAtc2Itc3Vic2NyaWJlLC55dHAtYmlnLW1vZGUgLnl0cC1zYi11bnN1YnNjcmliZXtib3JkZXItcmFkaXVzOjIycHh9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2Itc3Vic2NyaWJlIC55dHAtc2ItaWNvbntiYWNrZ3JvdW5kOnVybChkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQU1DQVlBQUFCcjV6MkJBQUFBblVsRVFWUTRUMlA4Ly8rL0p3TUR3MXdHQmdaSkJ0TEFjd1lHaG1URy8vLy9QeU5ETTh5cTV5QUQvcE5tTWFwcW5BWThrNUpnRUZteGxJSE56aG12K1RnTmVNckp5Y0Fvd01rZ05ITTZBNGRmT0U1RGNCcnduSk9UNGYvdkh3eU1iQXdNWEduSkRQd1Q1bUExaEVnRGtoajRKNEFpQ2hNUTlzS01hUXdjL2hHa2U0SGlRQ1EyYWlsTlNDOUFCbmhCazdJRXNiWkMxVDFsWUdCSUF3QlMxVXhCRTkvMmlBQUFBQUJKUlU1RXJrSmdnZz09KX0ueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi11bnN1YnNjcmliZSAueXRwLXNiLWljb257YmFja2dyb3VuZDp1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUFNQ0FZQUFBQnI1ejJCQUFBQS9VbEVRVlE0VDZXU01Vb0VRUkJGNjA4aWFMcVo0QW5FMERPSVlHWXVHTmpkTTRqUmlMa1lqU0lzTEYwdGdwa2dFM2dBY2NEVUc1aDZBQ01OcDc1TW9NeXV5bzVzcDlYMWZ0WC9CVm53WWNGKytSY2dwYlJHY2lJaVkrLzlReWMrR0JCajNNeXk3RnBFUm1ZMkNTR2NEUWFvNmk2QTgwNlE1TEgzL3U1cjlha0pxcXBhS2N2eW8rY0xWUFVFd0tHSXZKblpmZ2podWUvYk4wQlZqMFRrd016eVBNK2ZVa3JMSk1jQXRrbStBTmh6enIzT210NEg3QUM0RkpFbEVia2d1UVZnZytSajI3YWhLSXIzM3hLYldpSEd1QTdnQnNCcTk5bk1ycHFtT2EzcnV2MHI3aDhwcEpSR0pDT0FlK2ZjN2J3N0dSemo0QW5tS2M3V1B3RldSRjBOYzlSUXh3QUFBQUJKUlU1RXJrSmdnZz09KX0uY2FwdGlvbi13aW5kb3d7cG9zaXRpb246YWJzb2x1dGU7bGluZS1oZWlnaHQ6bm9ybWFsO3otaW5kZXg6NDE7cG9pbnRlci1ldmVudHM6YXV0bztjdXJzb3I6bW92ZTtjdXJzb3I6LXdlYmtpdC1ncmFiO2N1cnNvcjpncmFiOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmV9Lnl0cC1jYXB0aW9uLXdpbmRvdy1jb250YWluZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtwb2ludGVyLWV2ZW50czpub25lfS55dHAtbmF0aXZlLWNvbnRyb2xzIC5jYXB0aW9uLXdpbmRvd3t6LWluZGV4OjIxNDc0ODM2NDd9LmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy10b3B7bWFyZ2luLXRvcDo0OHB4Oy13ZWJraXQtdHJhbnNpdGlvbjptYXJnaW4tYm90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxtYXJnaW4tdG9wIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm1hcmdpbi1ib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG1hcmdpbi10b3AgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LXRvcHttYXJnaW4tdG9wOjYwcHh9Lnl0cC1iaWctbW9kZSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LXRvcHttYXJnaW4tdG9wOjY5cHh9Lnl0cC1iaWctbW9kZS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LXRvcHttYXJnaW4tdG9wOjg5cHh9Lnl0cC1hdXRvaGlkZSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LXRvcCwueXRwLWhpZGUtaW5mby1iYXIgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy10b3B7bWFyZ2luLXRvcDowOy13ZWJraXQtdHJhbnNpdGlvbjptYXJnaW4tYm90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG1hcmdpbi10b3AgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjptYXJnaW4tYm90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG1hcmdpbi10b3AgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWF1dG9oaWRlLWFjdGl2ZSAuY2FwdGlvbi13aW5kb3d7cG9pbnRlci1ldmVudHM6bm9uZX15dGQtcmVlbC12aWRlby1yZW5kZXJlciAuc2hvcnQtdmlkZW8tY29udGFpbmVyIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctdG9we21hcmdpbi10b3A6NjlweH0uY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbXttYXJnaW4tYm90dG9tOjYxcHg7LXdlYmtpdC10cmFuc2l0aW9uOm1hcmdpbi1ib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG1hcmdpbi10b3AgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246bWFyZ2luLWJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksbWFyZ2luLXRvcCAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZpbmUtc2NydWJiaW5nLWVuYWJsZSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbSwueXRwLWZpbmUtc2NydWJiaW5nLWVuYWJsZSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbXttYXJnaW4tYm90dG9tOjExMHB4fS55dHAtZmluZS1zY3J1YmJpbmctZW5hYmxlLnl0cC1hZC1vdmVybGF5LW9wZW4gLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbToyMDBweH0ueXRwLWJpZy1tb2RlLnl0cC1maW5lLXNjcnViYmluZy1lbmFibGUgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbToxNTVweH0ueXRwLWVtYmVkIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206NTNweH0ueXRwLWJpZy1tb2RlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206NzBweH0ueXRwLWF1dG9oaWRlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9tLC55dHAtaGlkZS1jb250cm9scyAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbSwueXRwLW11dGVkLWF1dG9wbGF5IC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206MDstd2Via2l0LXRyYW5zaXRpb246bWFyZ2luLWJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxtYXJnaW4tdG9wIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246bWFyZ2luLWJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxtYXJnaW4tdG9wIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYXV0b2hpZGUueXRwLWRlbGhpLW1vZGVybiAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbSwueXRwLWF1dG9oaWRlLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9tLC55dHAtYXV0b2hpZGUueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b20sLnl0cC1hdXRvaGlkZS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtYmlnLW1vZGUgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b20sLnl0cC1oaWRlLWNvbnRyb2xzLnl0cC1kZWxoaS1tb2Rlcm4gLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b20sLnl0cC1oaWRlLWNvbnRyb2xzLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9tLC55dHAtaGlkZS1jb250cm9scy55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbSwueXRwLWhpZGUtY29udHJvbHMueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLWJpZy1tb2RlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9tLC55dHAtbXV0ZWQtYXV0b3BsYXkueXRwLWRlbGhpLW1vZGVybiAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbSwueXRwLW11dGVkLWF1dG9wbGF5Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9tLC55dHAtbXV0ZWQtYXV0b3BsYXkueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b20sLnl0cC1tdXRlZC1hdXRvcGxheS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtYmlnLW1vZGUgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbTowfS55dHAtbmF0aXZlLWNvbnRyb2xzIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206NDVweDstd2Via2l0LXRyYW5zaXRpb246bm9uZTt0cmFuc2l0aW9uOm5vbmV9Lnl0cC1hZC1vdmVybGF5LW9wZW4gLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbToxNTFweH0ueXRwLWVtYmVkLnl0cC1hZC1vdmVybGF5LW9wZW4gLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbToxNDNweH0ueXRwLWJpZy1tb2RlLnl0cC1hZC1vdmVybGF5LW9wZW4gLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbToxNjBweH0ueXRwLWRlbGhpLW1vZGVybiAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbXttYXJnaW4tYm90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyAxNHB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgMTRweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGEtYm90dG9tIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDE1NHB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWJpZy1tb2RlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA5NnB4KSArIDE1NHB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgMTRweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1iaWctbW9kZSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbXttYXJnaW4tYm90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAxNHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDE1NHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1iaWctbW9kZSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbXttYXJnaW4tYm90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAxNTRweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217ZGlzcGxheTpub25lO29wYWNpdHk6MH0uaHRtbDUtdmlkZW8tcGxheWVyIC5jYXB0aW9uLXdpbmRvdy55dHAtZHJhZ2dpbmcsLmh0bWw1LXZpZGVvLXBsYXllci55dHAtYWQtb3ZlcmxheS1vcGVuIC5jYXB0aW9uLXdpbmRvdy55dHAtZHJhZ2dpbmcsLmh0bWw1LXZpZGVvLXBsYXllci55dHAtZGVsaGktbW9kZXJuIC5jYXB0aW9uLXdpbmRvdy55dHAtZHJhZ2dpbmd7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MDstd2Via2l0LXRyYW5zaXRpb246bm9uZTt0cmFuc2l0aW9uOm5vbmU7Y3Vyc29yOm1vdmU7Y3Vyc29yOi13ZWJraXQtZ3JhYmJpbmc7Y3Vyc29yOmdyYWJiaW5nfS55dHAtY2FwdGlvbi13aW5kb3ctcm9sbHVwLnl0cC1yb2xsdXAtbW9kZXtvdmVyZmxvdzpoaWRkZW59LmNhcHRpb24td2luZG93IC55dHAtaWNvbiwuY2FwdGlvbi13aW5kb3cgc3Zne3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHg7dmVydGljYWwtYWxpZ246Ym90dG9tO2Rpc3BsYXk6aW5saW5lLWJsb2NrO21heC13aWR0aDoxZW07bWF4LWhlaWdodDoxZW19Lnl0cC1lbWJlZCAuY2FwdGlvbi13aW5kb3cgLnl0cC1pY29uLC55dHAtZW1iZWQgLmNhcHRpb24td2luZG93IHN2Z3t3aWR0aDo0MHB4O2hlaWdodDo0MHB4fS55dHAtYmlnLW1vZGUgLmNhcHRpb24td2luZG93IHN2Z3t3aWR0aDo1NHB4O2hlaWdodDo1NHB4fS55dHAtY2FwdGlvbi13aW5kb3ctcm9sbHVwLnl0cC1yb2xsdXAtbW9kZSAuY2FwdGlvbnMtdGV4dHstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjQzM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNDMzcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC40MzNzIGN1YmljLWJlemllcigwLDAsLjIsMSl9LmNhcHRpb24tZWRpdHtvcGFjaXR5OjA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO2JvdHRvbTowO2JhY2tncm91bmQ6cmdiYSg4LDgsOCwuNzUpO2JvcmRlcjpub25lO3BhZGRpbmc6MDtjdXJzb3I6cG9pbnRlcn0uY2FwdGlvbi1lZGl0IHN2Z3ttYXgtaGVpZ2h0OjYwJTttYXgtd2lkdGg6NjAlfS5jYXB0aW9uLWVkaXQ6Zm9jdXMsLmNhcHRpb24td2luZG93OmZvY3VzIC5jYXB0aW9uLWVkaXQsLnl0cC1jYXB0aW9uLXdpbmRvdy1yb2xsdXAgLmNhcHRpb24tZWRpdDpob3ZlciwueXRwLWNhcHRpb24td2luZG93LXJvbGx1cDpob3ZlciAuY2FwdGlvbi1lZGl0e29wYWNpdHk6MX0uaHRtbDUtdmlkZW8tcGxheWVyIC5jYXB0aW9uLXZpc3VhbC1saW5lIC55dHAtY2FwdGlvbi1zZWdtZW50OmZpcnN0LWNoaWxke3BhZGRpbmctbGVmdDouMjVlbTtwYWRkaW5nLXRvcDowfS5odG1sNS12aWRlby1wbGF5ZXIgLmNhcHRpb24tdmlzdWFsLWxpbmUgLnl0cC1jYXB0aW9uLXNlZ21lbnQ6bGFzdC1jaGlsZHtwYWRkaW5nLXJpZ2h0Oi4yNWVtO3BhZGRpbmctYm90dG9tOjB9Lmh0bWw1LXZpZGVvLXBsYXllciAueXRwLXZlcnRpY2FsLWNhcHRpb24gLmNhcHRpb24tdmlzdWFsLWxpbmUgLnl0cC1jYXB0aW9uLXNlZ21lbnQ6Zmlyc3QtY2hpbGR7cGFkZGluZy10b3A6LjI1ZW07cGFkZGluZy1sZWZ0OjB9Lmh0bWw1LXZpZGVvLXBsYXllciAueXRwLXZlcnRpY2FsLWNhcHRpb24gLmNhcHRpb24tdmlzdWFsLWxpbmUgLnl0cC1jYXB0aW9uLXNlZ21lbnQ6bGFzdC1jaGlsZHtwYWRkaW5nLWJvdHRvbTouMjVlbTtwYWRkaW5nLXJpZ2h0OjB9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9ue2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otanVzdGlmeS1jb250ZW50OmxlZnQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6bGVmdDstd2Via2l0LWJveC1wYWNrOmxlZnQ7anVzdGlmeS1jb250ZW50OmxlZnR9Lnl0cC1maW5lLXNjcnViYmluZy1lbmFibGUgLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdle2JvdHRvbTo2MHB4O2xlZnQ6NjBweH0ueXRwLWJpZy1tb2RlLnl0cC1maW5lLXNjcnViYmluZy1lbmFibGUgLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdle2JvdHRvbTo5MHB4O2xlZnQ6OTBweH0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2V7ei1pbmRleDo2MDtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MTZweDtsZWZ0OjE2cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC44KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjMpO2JvcmRlci1yYWRpdXM6MzRweDtoZWlnaHQ6MzRweDt3aWR0aDozNHB4O3BhZGRpbmc6N3B4O2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxiYWNrZ3JvdW5kLWNvbG9yIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLHRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpLHdpZHRoIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLGJhY2tncm91bmQtY29sb3IgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksd2lkdGggLjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpO29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDApOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXRpbWVseS1zaGVsZi1wcmVzZW50e2Rpc3BsYXk6bm9uZX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZnVsbHNjcmVlbi55dHAtdGltZWx5LXNoZWxmLXByZXNlbnR7ZGlzcGxheTp1bnNldH0uYWQtc2hvd2luZyAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZnVsbHNjcmVlbi55dHAtdGltZWx5LXNoZWxmLXByZXNlbnR7ZGlzcGxheTpub25lfXl0ZC13YXRjaC1mbGV4eVt0aGVhdGVyXSAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXRpbWVseS1zaGVsZi1wcmVzZW50e2Rpc3BsYXk6dW5zZXR9eXRkLXdhdGNoLWZsZXh5W3RoZWF0ZXJdIC5hZC1zaG93aW5nIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS55dHAtdGltZWx5LXNoZWxmLXByZXNlbnR7ZGlzcGxheTpub25lfS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtb3ZlcmxheS1ib3R0b20tbGVmdCAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2V7cG9zaXRpb246cmVsYXRpdmU7Ym90dG9tOjA7bGVmdDowfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZXstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0scmdiYSgwLDAsMCwuNikpO2JvcmRlcjpub25lO2hlaWdodDo0MHB4O3dpZHRoOjQwcHg7Ym9yZGVyLXJhZGl1czo0MHB4O3BhZGRpbmc6MTJweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2U6bm90KC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1leHBhbmRlZCl7cGFkZGluZzowIDhweH0uYWQtc2hvd2luZyAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2V7ZGlzcGxheTpub25lfS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZVthcmlhLWhpZGRlbj10cnVlXXstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSx0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx3aWR0aCAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLHRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpLHdpZHRoIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtvcGFjaXR5OjB9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlOmhvdmVyey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxiYWNrZ3JvdW5kLWNvbG9yIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLHRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpLHdpZHRoIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLGJhY2tncm91bmQtY29sb3IgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksd2lkdGggLjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2JhY2tncm91bmQtY29sb3I6cmdiYSgzMywzMywzMywuOTUpfS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS13aXRoLWNvbnRyb2xzey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTU5cHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTlweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTU5cHgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS13aXRoLWNvbnRyb2xzey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoY2FsYygodmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyA2cHgpKi0xKSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVZKGNhbGMoKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgNnB4KSotMSkpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKGNhbGMoKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgNnB4KSotMSkpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZSAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2Utd2l0aC1jb250cm9sc3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKGNhbGMoKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgNnB4KSotMSkpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWShjYWxjKCh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA5NnB4KSArIDZweCkqLTEpKTt0cmFuc2Zvcm06dHJhbnNsYXRlWShjYWxjKCh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA5NnB4KSArIDZweCkqLTEpKX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZnVsbHNjcmVlbi55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS13aXRoLWNvbnRyb2xzey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTgwcHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgtODBweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTgwcHgpfS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtb3ZlcmxheS1ib3R0b20tbGVmdCAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2Utd2l0aC1jb250cm9sc3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDApOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2U6aXMoLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWV4cGFuZGVkLC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1jb250ZW50LWZvcndhcmQpe3dpZHRoOmF1dG99Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWljb24tY29udGFpbmVye2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4fS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1pY29ue2hlaWdodDoxOHB4O3dpZHRoOjE4cHg7YmFja2dyb3VuZDp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0l6TmlJZ2FHVnBaMmgwUFNJek5pSWdabWxzYkQwaUkyWm1aaUlnZG1sbGQwSnZlRDBpTUNBd0lESTBJREkwSWo0OGNHRjBhQ0JtYVd4c1BTSnViMjVsSWlCa1BTSk5NQ0F3YURJMGRqSTBTREI2SWk4K1BIQmhkR2dnWkQwaVRURTRJRFpvTFRKak1DMHlMakl4TFRFdU56a3ROQzAwTFRSVE9DQXpMamM1SURnZ05rZzJZeTB4TGpFZ01DMHlJQzQ1TFRJZ01uWXhNbU13SURFdU1TNDVJRElnTWlBeWFERXlZekV1TVNBd0lESXRMamtnTWkweVZqaGpNQzB4TGpFdExqa3RNaTB5TFRKdExUWXRNbU14TGpFZ01DQXlJQzQ1SURJZ01tZ3ROR013TFRFdU1TNDVMVElnTWkweWJUWWdNVFpJTmxZNGFESjJNbU13SUM0MU5TNDBOU0F4SURFZ01YTXhMUzQwTlNBeExURldPR2cwZGpKak1DQXVOVFV1TkRVZ01TQXhJREZ6TVMwdU5EVWdNUzB4Vmpob01ub2lMejQ4TDNOMlp6ND0pOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1zaXplOmNvbnRhaW47LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWljb24ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtaWNvbi1jdXN0b20taWNvbiwueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtaWNvbi55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1pY29uLWN1c3RvbS1pY29ue2JhY2tncm91bmQtaW1hZ2U6bm9uZTt3aWR0aDoyMHB4O2hlaWdodDoyMHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1pY29ue2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLXRpdGxle2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojZmZmO21hcmdpbi1sZWZ0OjZweDttYXJnaW4tcmlnaHQ6NnB4O2N1cnNvcjpwb2ludGVyfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS10aXRsZXtmb250LXdlaWdodDo1MDB9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLXRpdGxlOmVtcHR5e2Rpc3BsYXk6bm9uZX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2V7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC42KTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDhweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KTtib3JkZXItcmFkaXVzOjhweDt3aWR0aDoyOThweDtoZWlnaHQ6NjRweDtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXI7LXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tY29udGFpbmVye2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYWxpZ24taXRlbXM6c3RyZXRjaDstd2Via2l0LWJveC1hbGlnbjpzdHJldGNoO2FsaWduLWl0ZW1zOnN0cmV0Y2g7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjI5MHB4O3BhZGRpbmc6NHB4fS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1kZXRhaWxze2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWp1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kO2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7Zm9udC1zaXplOjEycHg7LXdlYmtpdC1ib3gtZmxleDoxOy13ZWJraXQtZmxleDoxO2ZsZXg6MTtwYWRkaW5nOjAgOHB4O292ZXJmbG93OmhpZGRlbn0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tZGV0YWlscyAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tdGl0bGV7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC1zaXplOjE0cHh9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWRldGFpbHMgLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLXN1YnRpdGxle292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO29wYWNpdHk6Ljc7Zm9udC13ZWlnaHQ6NDAwfS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1kZXRhaWxzIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1tZXRhZGF0YS10ZXh0e29wYWNpdHk6Ljc7Zm9udC13ZWlnaHQ6NTAwfS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1pbWd7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czo0cHg7YmFja2dyb3VuZDojZmZmO2hlaWdodDo1NnB4O3dpZHRoOjU2cHg7b3ZlcmZsb3c6aGlkZGVufS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1pbWc+aW1ne3dpZHRoOmluaGVyaXQ7aGVpZ2h0OmluaGVyaXQ7LW8tb2JqZWN0LWZpdDpjb250YWluO29iamVjdC1maXQ6Y29udGFpbn06aXMoOmlzKC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1wcmV2aWV3LWNvbGxhcHNlZCwueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtcHJldmlldy1leHBhbmRlZCksLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWNvbnRlbnQtZm9yd2FyZC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1leHBhbmRlZCkgLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWljb257ZGlzcGxheTpub25lfTppcygueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtcHJldmlldy1jb2xsYXBzZWQsLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLXByZXZpZXctZXhwYW5kZWQpIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1leHBhbmRlZC1jb250ZW50LWNvbnRhaW5lcntkaXNwbGF5Om5vbmV9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWNvbnRlbnQtZm9yd2FyZC1jb250YWluZXJ7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tcHJvZHVjdC10aHVtYm5haWx7LXdlYmtpdC1tYXJnaW4tc3RhcnQ6MDttYXJnaW4taW5saW5lLXN0YXJ0OjA7b3BhY2l0eTowO3dpZHRoOjA7LXdlYmtpdC10cmFuc2l0aW9uOm1hcmdpbi1pbmxpbmUtc3RhcnQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LW1hcmdpbi1zdGFydCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LW1hcmdpbi1zdGFydCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjptYXJnaW4taW5saW5lLXN0YXJ0IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSxvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOm1hcmdpbi1pbmxpbmUtc3RhcnQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLC13ZWJraXQtbWFyZ2luLXN0YXJ0IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTstd2Via2l0LXRyYW5zaXRpb246d2lkdGggLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246d2lkdGggLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2JvcmRlci1yYWRpdXM6NHB4O2hlaWdodDoxOHB4fS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1wcm9kdWN0LXRodW1ibmFpbDpmaXJzdC1jaGlsZHstd2Via2l0LXRyYW5zaXRpb246bWFyZ2luLWlubGluZS1zdGFydCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLC13ZWJraXQtbWFyZ2luLXN0YXJ0IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLC13ZWJraXQtbWFyZ2luLXN0YXJ0IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOm1hcmdpbi1pbmxpbmUtc3RhcnQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246bWFyZ2luLWlubGluZS1zdGFydCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksLXdlYmtpdC1tYXJnaW4tc3RhcnQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1wcm9kdWN0LXRodW1ibmFpbHtoZWlnaHQ6MjRweH0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtcHJldmlldy1leHBhbmRlZCAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tcHJvZHVjdC10aHVtYm5haWx7LXdlYmtpdC1tYXJnaW4tc3RhcnQ6MnB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6MnB4O29wYWNpdHk6MTt3aWR0aDoxOHB4fS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1wcmV2aWV3LWV4cGFuZGVkIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1wcm9kdWN0LXRodW1ibmFpbDpmaXJzdC1jaGlsZHstd2Via2l0LW1hcmdpbi1zdGFydDowO21hcmdpbi1pbmxpbmUtc3RhcnQ6MH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtcHJldmlldy1leHBhbmRlZCAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tcHJvZHVjdC10aHVtYm5haWx7d2lkdGg6MjRweH06aXMoLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLXByZXZpZXctY29sbGFwc2VkLC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1jb250ZW50LWZvcndhcmQueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZXhwYW5kZWQpIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1wcm9kdWN0LXRodW1ibmFpbDpmaXJzdC1jaGlsZHstd2Via2l0LW1hcmdpbi1zdGFydDoycHg7bWFyZ2luLWlubGluZS1zdGFydDoycHg7b3BhY2l0eToxO3dpZHRoOjE4cHg7LXdlYmtpdC1tYXJnaW4tc3RhcnQ6MDttYXJnaW4taW5saW5lLXN0YXJ0OjB9Lnl0cC1kZWxoaS1tb2Rlcm4gOmlzKC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1wcmV2aWV3LWNvbGxhcHNlZCwueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtY29udGVudC1mb3J3YXJkLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWV4cGFuZGVkKSAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tcHJvZHVjdC10aHVtYm5haWw6Zmlyc3QtY2hpbGR7d2lkdGg6MjRweH0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tbW9yZS1wcm9kdWN0cy1pY29ue2Rpc3BsYXk6bm9uZTtoZWlnaHQ6MTJweDt3aWR0aDoycHg7Ym9yZGVyLXJhZGl1czowIDEycHggMTJweCAwO2JhY2tncm91bmQtY29sb3I6I2ZmZjtvcGFjaXR5Oi4zMjstd2Via2l0LW1hcmdpbi1zdGFydDoycHg7bWFyZ2luLWlubGluZS1zdGFydDoycHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLW1vcmUtcHJvZHVjdHMtaWNvbntoZWlnaHQ6MThweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWNvbnRlbnQtZm9yd2FyZC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1leHBhbmRlZCAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tbW9yZS1wcm9kdWN0cy1pY29ue2Rpc3BsYXk6dW5zZXR9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWRpc21pc3MtYnV0dG9uLWljb257aGVpZ2h0OjE4cHg7d2lkdGg6MThweDtiYWNrZ3JvdW5kOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXlOQ0lnYUdWcFoyaDBQU0l5TkNJZ1ptbHNiRDBpSTJabVppSWdkbWxsZDBKdmVEMGlNQ0F3SURJMElESTBJajQ4Y0dGMGFDQmtQU0pOTVRZdU1qUWdPUzR4TnlBeE15NDBNU0F4TW13eUxqZ3pJREl1T0RNdE1TNDBNU0F4TGpReFRERXlJREV6TGpReGJDMHlMamd6SURJdU9ETXRNUzQwTVMweExqUXhUREV3TGpVNUlERXlJRGN1TnpZZ09TNHhOMnd4TGpReExURXVOREZNTVRJZ01UQXVOVGxzTWk0NE15MHlMamd6ZWswMExqa3pJRFF1T1ROakxUTXVPVEVnTXk0NU1TMHpMamt4SURFd0xqSTBJREFnTVRRdU1UUWdNeTQ1TVNBekxqa3hJREV3TGpJMElETXVPVEVnTVRRdU1UUWdNQ0F6TGpreExUTXVPVEVnTXk0NU1TMHhNQzR5TkNBd0xURTBMakUwTFRNdU9TMHpMamt4TFRFd0xqSTBMVE11T1RFdE1UUXVNVFFnTUcweE15NDBNeTQzTVdNekxqVXhJRE11TlRFZ015NDFNU0E1TGpJeUlEQWdNVEl1TnpOekxUa3VNaklnTXk0MU1TMHhNaTQzTXlBd0xUTXVOVEV0T1M0eU1pQXdMVEV5TGpjell6TXVOVEl0TXk0MU1TQTVMakl5TFRNdU5URWdNVEl1TnpNZ01DSXZQand2YzNablBnPT0pOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1zaXplOmNvbnRhaW47b3BhY2l0eTouNjstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWRpc21pc3MtYnV0dG9uLWljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweDtiYWNrZ3JvdW5kOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBeU5DQXlOQ0krUEhCaGRHZ2dabWxzYkQwaUkyWm1aaUlnWkQwaVRURTVJRFl1TkRFZ01UY3VOVGtnTlNBeE1pQXhNQzQxT1NBMkxqUXhJRFVnTlNBMkxqUXhJREV3TGpVNUlERXlJRFVnTVRjdU5Ua2dOaTQwTVNBeE9TQXhNaUF4TXk0ME1TQXhOeTQxT1NBeE9TQXhPU0F4Tnk0MU9TQXhNeTQwTVNBeE1ub2lMejQ4TDNOMlp6ND0pO29wYWNpdHk6MX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZGlzbWlzcy1idXR0b24taWNvbjpob3ZlcntvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1leHBhbmRlZC1jb250ZW50LWNvbnRhaW5lcntkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtZmxleC1zaHJpbms6MDtmbGV4LXNocmluazowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO29wYWNpdHk6MX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZXhwYW5kZWQtY29udGVudC1jb250YWluZXJbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO29wYWNpdHk6MH0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2Utd2l0aC1vZmZsaW5lLXNsYXRle2JvdHRvbTozMnB4fS55dHAtZmVhdHVyZWQtcHJvZHVjdC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZXtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjYpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpO2JvcmRlci1yYWRpdXM6OHB4O3dpZHRoOjI4MHB4O2hlaWdodDo2NHB4O3BhZGRpbmc6MDtjdXJzb3I6cG9pbnRlcjstd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtZmVhdHVyZWQtcHJvZHVjdC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZXstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0scmdiYSgwLDAsMCwuNikpfS55dHAtZmVhdHVyZWQtcHJvZHVjdD4ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZXhwYW5kZWQtY29udGVudC1jb250YWluZXI+Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLXRpdGxle2Rpc3BsYXk6bm9uZX0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtY29udGFpbmVye2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYWxpZ24taXRlbXM6c3RyZXRjaDstd2Via2l0LWJveC1hbGlnbjpzdHJldGNoO2FsaWduLWl0ZW1zOnN0cmV0Y2g7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjI3MnB4O3BhZGRpbmc6NHB4fS55dHAtZmVhdHVyZWQtcHJvZHVjdC1jb250YWluZXI+Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWRpc21pc3MtYnV0dG9uLWljb257YmFja2dyb3VuZDp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXlOQ0F5TkNJK1BIQmhkR2dnWm1sc2JEMGlJMlptWmlJZ1pEMGlUVEU1SURZdU5ERWdNVGN1TlRrZ05TQXhNaUF4TUM0MU9TQTJMalF4SURVZ05TQTJMalF4SURFd0xqVTVJREV5SURVZ01UY3VOVGtnTmk0ME1TQXhPU0F4TWlBeE15NDBNU0F4Tnk0MU9TQXhPU0F4T1NBeE55NDFPU0F4TXk0ME1TQXhNbm9pTHo0OEwzTjJaejQ9KTtvcGFjaXR5Oi44O2hlaWdodDoxOHB4O3dpZHRoOjE4cHg7YXNwZWN0LXJhdGlvOjF9Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LXRodW1ibmFpbHtwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXItcmFkaXVzOjRweDtiYWNrZ3JvdW5kOiNmZmY7aGVpZ2h0OjU2cHg7d2lkdGg6NTZweDtvdmVyZmxvdzpoaWRkZW59Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LXRodW1ibmFpbD5pbWd7d2lkdGg6aW5oZXJpdDtoZWlnaHQ6aW5oZXJpdDstby1vYmplY3QtZml0OmNvbnRhaW47b2JqZWN0LWZpdDpjb250YWlufS55dHAtZmVhdHVyZWQtcHJvZHVjdC1vcGVuLWluLW5ld3twb3NpdGlvbjphYnNvbHV0ZTtib3R0b206NHB4O3JpZ2h0OjRweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjgpO2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlHWnBiR3c5SWlObVptWWlJSFpwWlhkQ2IzZzlJakFnTUNBME9DQTBPQ0krUEhCaGRHZ2dabWxzYkQwaWJtOXVaU0lnWkQwaVRUQWdNR2cwT0hZME9FZ3dlaUl2UGp4d1lYUm9JR1E5SWswek9DQXpPRWd4TUZZeE1HZ3hORlkyU0RFd1l5MHlMakl4SURBdE5DQXhMamM1TFRRZ05IWXlPR013SURJdU1qRWdNUzQzT1NBMElEUWdOR2d5T0dNeUxqSXhJREFnTkMweExqYzVJRFF0TkZZeU5HZ3ROSHBOTWpnZ05uWTBhRGN1TVRkTU1UVXVOVEVnTWprdU5qWnNNaTQ0TXlBeUxqZ3pURE00SURFeUxqZ3pWakl3YURSV05ub2lMejQ4TDNOMlp6ND0pO3dpZHRoOjEycHg7aGVpZ2h0OjEycHg7b3ZlcmZsb3c6aGlkZGVufS55dHAtZmVhdHVyZWQtcHJvZHVjdC1kZXRhaWxze2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWp1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kO2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7Zm9udC1zaXplOjEycHg7LXdlYmtpdC1ib3gtZmxleDoxOy13ZWJraXQtZmxleDoxO2ZsZXg6MTtwYWRkaW5nOjAgOHB4O292ZXJmbG93OmhpZGRlbn0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtdGl0bGV7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC1zaXplOjE0cHh9Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LWRldGFpbHMgLnl0cC1mZWF0dXJlZC1wcm9kdWN0LWNvdW50ZG93bntmb250LWZhbWlseTpZb3VUdWJlIFNhbnMsUm9ib3RvLHNhbnMtc2VyaWY7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtO2ZvbnQtd2VpZ2h0OjcwMH0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtYWZmaWxpYXRlLWRpc2NsYWltZXJ7Zm9udC13ZWlnaHQ6NTAwfS55dHAtZmVhdHVyZWQtcHJvZHVjdC1kZXRhaWxzIC55dHAtZmVhdHVyZWQtcHJvZHVjdC1hZmZpbGlhdGUtZGlzY2xhaW1lci13aGVuLXByb21vdGlvbi10ZXh0LWVuYWJsZWR7Zm9udC13ZWlnaHQ6NTAwO21hcmdpbi1yaWdodDo0cHg7b3BhY2l0eTouN30ueXRwLWZlYXR1cmVkLXByb2R1Y3QtaW5mby1pY29ue2JhY2tncm91bmQ6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlHWnBiR3c5SWlObVptWWlJSFpwWlhkQ2IzZzlJakFnTUNBME9DQTBPQ0krUEhCaGRHZ2dabWxzYkQwaWJtOXVaU0lnWkQwaVRUQWdNR2cwT0hZME9FZ3dlaUl2UGp4d1lYUm9JR1E5SWsweU1pQXpOR2cwVmpJeWFDMDBlbTB5TFRNd1F6RXlMamsxSURRZ05DQXhNaTQ1TlNBMElESTBjemd1T1RVZ01qQWdNakFnTWpBZ01qQXRPQzQ1TlNBeU1DMHlNRk16TlM0d05TQTBJREkwSURSdE1DQXpObU10T0M0NE1pQXdMVEUyTFRjdU1UZ3RNVFl0TVRaVE1UVXVNVGdnT0NBeU5DQTRjekUySURjdU1UZ2dNVFlnTVRZdE55NHhPQ0F4TmkweE5pQXhObTB0TWkweU1tZzBkaTAwYUMwMGVpSXZQand2YzNablBnPT0pO2hlaWdodDoxOHB4O3dpZHRoOjE4cHg7bWFyZ2luLXJpZ2h0OjhweDtvcGFjaXR5Oi44O2FzcGVjdC1yYXRpbzoxfS55dHAtZmVhdHVyZWQtcHJvZHVjdC1vdmVyZmxvdy1pY29ue2JhY2tncm91bmQ6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlpMDFJQzAxSURNMklETTJJajQ4Y0dGMGFDQm1hV3hzUFNJalptWm1JaUJrUFNKTk1USWdPR014TGpFZ01DQXlMUzQ1SURJdE1uTXRMamt0TWkweUxUSXRNaUF1T1MweUlESWdMamtnTWlBeUlESnRNQ0F5WXkweExqRWdNQzB5SUM0NUxUSWdNbk11T1NBeUlESWdNaUF5TFM0NUlESXRNaTB1T1MweUxUSXRNbTB3SURaakxURXVNU0F3TFRJZ0xqa3RNaUF5Y3k0NUlESWdNaUF5SURJdExqa2dNaTB5TFM0NUxUSXRNaTB5SWk4K1BDOXpkbWMrKTtoZWlnaHQ6MjBweDt3aWR0aDoyMHB4O29wYWNpdHk6Ljg7YXNwZWN0LXJhdGlvOjF9Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LWRldGFpbHMgLnl0cC1mZWF0dXJlZC1wcm9kdWN0LXZlbmRvcntvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtdmVuZG9yLXdoZW4tcHJvbW90aW9uLXRleHQtZW5hYmxlZHtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztvcGFjaXR5Oi43O2ZvbnQtd2VpZ2h0OjQwMH0ueXRwLWZlYXR1cmVkLXByb2R1Y3Qtd2hlbi1wcm9tb3Rpb24tdGV4dC1lbmFibGVke2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4fS55dHAtZmVhdHVyZWQtcHJvZHVjdC13aGVuLXByb21vdGlvbi10ZXh0LWVuYWJsZWQgLnl0cC1mZWF0dXJlZC1wcm9kdWN0LXRyZW5kaW5ne292ZXJmbG93OmhpZGRlbn0ueXRwLWZlYXR1cmVkLXByb2R1Y3Qtd2hlbi1wcm9tb3Rpb24tdGV4dC1lbmFibGVkIC55dHAtZmVhdHVyZWQtcHJvZHVjdC10cmVuZGluZy10ZXh0e29wYWNpdHk6Ljc7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LXRyZW5kaW5nPi55dHAtZmVhdHVyZWQtcHJvZHVjdC10cmVuZGluZy1pY29ue2JhY2tncm91bmQ6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdMVGsyTUNBNU5qQWdPVFl3SWo0OGNHRjBhQ0JtYVd4c1BTSWpabVptSWlCa1BTSnRNVEl6TFRJME1DMDBNeTAwTXlBeU9USXRNamt4SURFMk55QXhOamNnTWpReExUSTBNVWcyTlROMkxUWXdhREl5TjNZeU1qZG9MVFU1ZGkweE1qTk1OVE00TFRNeU1TQXpOekV0TkRnNGVpSXZQand2YzNablBnPT0pO2hlaWdodDoxMnB4O3dpZHRoOjEycHg7bWFyZ2luLXRvcDoycHg7bWFyZ2luLXJpZ2h0OjRweDtvcGFjaXR5Oi44O2FzcGVjdC1yYXRpbzoxfS55dHAtZmVhdHVyZWQtcHJvZHVjdC1kZXRhaWxzIC55dHAtZmVhdHVyZWQtcHJvZHVjdC10cmVuZGluZ3tkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleH0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtcHJpY2UtY29udGFpbmVye292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtZmVhdHVyZWQtcHJvZHVjdC1kZXRhaWxzIC55dHAtZmVhdHVyZWQtcHJvZHVjdC1wcmljZS1jb250YWluZXIgLnl0cC1mZWF0dXJlZC1wcm9kdWN0LXByaWNlLXdoZW4tcHJvbW90aW9uLXRleHQtZW5hYmxlZHtvcGFjaXR5Oi43O2ZvbnQtd2VpZ2h0OjQwMH0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtcHJpY2UtY29udGFpbmVyIC55dHAtZmVhdHVyZWQtcHJvZHVjdC1wcm9tb3Rpb24tdGV4dHtmb250LXdlaWdodDo1MDA7bWFyZ2luLWxlZnQ6NHB4fS55dHAtZmVhdHVyZWQtcHJvZHVjdC1kZXRhaWxzIC55dHAtZmVhdHVyZWQtcHJvZHVjdC1zYWxlcy1vcmlnaW5hbC1wcmljZXt0ZXh0LWRlY29yYXRpb246bGluZS10aHJvdWdoO21hcmdpbi1sZWZ0OjRweH0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtcHJpY2UtZHJvcC1yZWZlcmVuY2UtcHJpY2V7bWFyZ2luLWxlZnQ6NHB4fS55dHAtZmVhdHVyZWQtcHJvZHVjdC1zYWxlcy1vcmlnaW5hbC1wcmljZTplbXB0eXtkaXNwbGF5Om5vbmV9Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LXByb21vdGlvbi10ZXh0OmVtcHR5e2Rpc3BsYXk6bm9uZX0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtcHJpY2UtZHJvcC1yZWZlcmVuY2UtcHJpY2U6ZW1wdHl7ZGlzcGxheTpub25lfS55dHAtZmVhdHVyZWQtcHJvZHVjdC1hZmZpbGlhdGUtZGlzY2xhaW1lci13aGVuLXByb21vdGlvbi10ZXh0LWVuYWJsZWQ6ZW1wdHl7ZGlzcGxheTpub25lfS55dHAtZmVhdHVyZWQtcHJvZHVjdC1leGNsdXNpdmUtYmFkZ2UtY29udGFpbmVyLC55dHAtZmVhdHVyZWQtcHJvZHVjdC1leGNsdXNpdmUtY29udGFpbmVye2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1qdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDstd2Via2l0LWp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0Oy13ZWJraXQtYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LWV4Y2x1c2l2ZS1iYWRnZXtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQ6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsbGVmdCB0b3AscmlnaHQgdG9wLGZyb20oIzdmMGU3ZiksY29sb3Itc3RvcCgjZGIxZGRiKSx0bygjZWQ1NThmKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCM3ZjBlN2YsI2RiMWRkYiwjZWQ1NThmKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjN2YwZTdmLCNkYjFkZGIsI2VkNTU4Zik7Ym9yZGVyLXJhZGl1czo0cHg7cGFkZGluZzoycHggNHB4fS55dHAtZmVhdHVyZWQtcHJvZHVjdC1leGNsdXNpdmUtYmFkZ2UtdGV4dHtsaW5lLWhlaWdodDoxMDAlO2ZvbnQtd2VpZ2h0OjcwMH0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtZXhjbHVzaXZlLWNvdW50ZG93bnttYXJnaW4tbGVmdDo0cHg7bGluZS1oZWlnaHQ6MTAwJX0ueXRwLXRpbWUtZGlzcGxheXtmb250LXNpemU6MTA5JTtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjp0b3A7cGFkZGluZzowIDVweDt3aGl0ZS1zcGFjZTpub3dyYXA7bGluZS1oZWlnaHQ6NDdweH0ueXRwLWVtYmVkLnl0cC1lbWJlZC1tb2JpbGUgLnl0cC10aW1lLWRpc3BsYXksLnl0cC1lbWJlZC55dHAtZW1iZWQtbW9iaWxlLnl0cC1zbWFsbC1tb2RlIC55dHAtdGltZS1kaXNwbGF5e2xpbmUtaGVpZ2h0OjUxcHh9Lnl0cC1lbWJlZCAueXRwLXRpbWUtZGlzcGxheSwueXRwLXNtYWxsLW1vZGUgLnl0cC10aW1lLWRpc3BsYXl7bGluZS1oZWlnaHQ6MzlweH0ueXRwLWJpZy1tb2RlIC55dHAtdGltZS1kaXNwbGF5e2xpbmUtaGVpZ2h0OjUzcHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lLWRpc3BsYXk6bm90KC55dHAtbWluaXBsYXllci11aSAqKXtkaXNwbGF5OmlubGluZS1ibG9jazstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2N1cnNvcjpwb2ludGVyO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDp2YXIoLS15dC1kZWxoaS1waWxsLWhlaWdodCw0OHB4KTtmb250LXNpemU6MTRweDttaW4td2lkdGg6MDtwYWRkaW5nOnZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KSA4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLXRpbWUtZGlzcGxheXtsaW5lLWhlaWdodDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCw1NnB4KTtmb250LXNpemU6MTZweDtwYWRkaW5nOnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtdG9wLWhlaWdodCwyMHB4KSAxMnB4fS55dHAtdm9sdW1lLXNsaWRlci1hY3RpdmUgLnl0cC10aW1lLWRpc3BsYXktYWxsb3ctYXV0b2hpZGV7ZGlzcGxheTpub25lfS55dHAtZGVsaGktbW9kZXJuIC55dHAtdGltZS13cmFwcGVyOm5vdCgueXRwLW1pbmlwbGF5ZXItdWkgKil7bWluLXdpZHRoOjA7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLXBpbGwtaGVpZ2h0LDQ4cHgpO2JvcmRlci1yYWRpdXM6MjhweDtwYWRkaW5nOjAgMTZweDstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0tbGlnaHQscmdiYSgwLDAsMCwuMykpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRpbWUtd3JhcHBlcjpub3QoLnl0cC1taW5pcGxheWVyLXVpICopIHN2Z3std2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtdGltZS13cmFwcGVyOm5vdCgueXRwLW1pbmlwbGF5ZXItdWkgKil7aGVpZ2h0OjQwcHg7bGluZS1oZWlnaHQ6NDBweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRpbWUtd3JhcHBlcjpub3QoLnl0cC1taW5pcGxheWVyLXVpICopOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6NHB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7cG9pbnRlci1ldmVudHM6bm9uZTtib3JkZXItcmFkaXVzOjI4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lLXdyYXBwZXI6bm90KC55dHAtbWluaXBsYXllci11aSAqKTpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjEpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRpbWUtd3JhcHBlcjpub3QoLnl0cC1taW5pcGxheWVyLXVpICopOmFjdGl2ZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10b25hbC1ob3ZlcixyZ2JhKDI1NSwyNTUsMjU1LC4yKSk7LXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLXRpbWUtd3JhcHBlcntoZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsNTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1sdW1pbm9zaXR5Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lLXdyYXBwZXI6bm90KC55dHAtbWluaXBsYXllci11aSAqKXtiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpsdW1pbm9zaXR5Oy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1kaWZmZXJlbmNlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lLXdyYXBwZXI6bm90KC55dHAtbWluaXBsYXllci11aSAqKXtiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpkaWZmZXJlbmNlOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1leGNsdXNpb24ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRpbWUtd3JhcHBlcjpub3QoLnl0cC1taW5pcGxheWVyLXVpICope2JhY2tncm91bmQ6cmdiYSg4MCw4MCw4MCwuNik7YmFja2dyb3VuZC1ibGVuZC1tb2RlOmV4Y2x1c2lvbjstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpfS55dHAtdGltZS1jdXJyZW50LC55dHAtdGltZS1kdXJhdGlvbiwueXRwLXRpbWUtc2VwYXJhdG9ye2NvbG9yOiNkZGR9Lnl0cC10aW1lLXdyYXBwZXItZGVsaGl7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lLWN1cnJlbnR7Y29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRleHQtcHJpbWFyeSwjZmZmKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRpbWUtZHVyYXRpb24sLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lLXNlcGFyYXRvcntjb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdGV4dC1wcmltYXJ5LCNmZmYpO2ZvbnQtd2VpZ2h0OjQwMH0ueXRwLWxpdmUgLnl0cC10aW1lLWNvbnRlbnRze2Rpc3BsYXk6bm9uZX0qIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbGl2ZS1iYWRnZSwueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbGl2ZS1iYWRnZSwueXRwLXNtYWxsLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1saXZlLWJhZGdle2Rpc3BsYXk6bm9uZTt3aWR0aDphdXRvO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ueXRwLWJpZy1tb2RlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1saXZlLWJhZGdlLC55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbGl2ZS1iYWRnZSwueXRwLXNtYWxsLW1vZGUueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWxpdmUtYmFkZ2V7dGV4dC10cmFuc2Zvcm06bm9uZX0ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbGl2ZSAueXRwLWxpdmUtYmFkZ2UsLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1saXZlIC55dHAtbGl2ZS1iYWRnZXtkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWxpdmUtYmFkZ2U6YmVmb3Jle2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjZweDtoZWlnaHQ6NnB4O3ZlcnRpY2FsLWFsaWduOjQlO21hcmdpbi1yaWdodDo1cHg7YmFja2dyb3VuZDojNzU3NTc1O2NvbnRlbnQ6IiI7Ym9yZGVyLXJhZGl1czo2cHh9Lnl0cC1iaWctbW9kZSAueXRwLWxpdmUtYmFkZ2U6YmVmb3Jle3dpZHRoOjlweDtoZWlnaHQ6OXB4O2JvcmRlci1yYWRpdXM6OXB4fS5odG1sNS12aWRlby1wbGF5ZXIgLnl0cC1saXZlLWJhZGdlW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0sLmh0bWw1LXZpZGVvLXBsYXllciAueXRwLWxpdmUtYmFkZ2VbZGlzYWJsZWRde29wYWNpdHk6MX0ueXRwLWxpdmViYWRnZS1jb2xvciAueXRwLWxpdmUtYmFkZ2UueXRwLWxpdmUtYmFkZ2UtaXMtbGl2ZWhlYWQ6YmVmb3Jle2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtYnJhbmQscmdiYSgyMjUsMCw0NSwuOSkpfS55dHAtdGltZS1kaXNwbGF5Lnl0cC1jbGlwe292ZXJmbG93OmhpZGRlbjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleH0ueXRwLWNsaXAtd2F0Y2gtZnVsbC12aWRlby1idXR0b24sLnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9uLXNlcGFyYXRvciwueXRwLXRpbWUtY2xpcC1pY29ue2Rpc3BsYXk6bm9uZX0ueXRwLWNsaXAgLnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9uLC55dHAtY2xpcCAueXRwLWNsaXAtd2F0Y2gtZnVsbC12aWRlby1idXR0b24tc2VwYXJhdG9yLC55dHAtY2xpcCAueXRwLXRpbWUtY2xpcC1pY29ue2Rpc3BsYXk6aW5saW5lfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2xpcCAueXRwLWNsaXAtd2F0Y2gtZnVsbC12aWRlby1idXR0b24tc2VwYXJhdG9ye2Rpc3BsYXk6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNsaXAgLnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmctdG9wOjEycHg7bWFyZ2luLWxlZnQ6OHB4O2hlaWdodDp2YXIoLS15dC1kZWxoaS1waWxsLWhlaWdodCw0OHB4KTtib3JkZXItcmFkaXVzOjI4cHg7cGFkZGluZzowIDE2cHg7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLWxpZ2h0LHJnYmEoMCwwLDAsLjMpKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jbGlwIC55dHAtY2xpcC13YXRjaC1mdWxsLXZpZGVvLWJ1dHRvbiBzdmd7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1jbGlwIC55dHAtY2xpcC13YXRjaC1mdWxsLXZpZGVvLWJ1dHRvbntkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsNTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1sdW1pbm9zaXR5Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jbGlwIC55dHAtY2xpcC13YXRjaC1mdWxsLXZpZGVvLWJ1dHRvbntiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpsdW1pbm9zaXR5Oy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1kaWZmZXJlbmNlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jbGlwIC55dHAtY2xpcC13YXRjaC1mdWxsLXZpZGVvLWJ1dHRvbntiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpkaWZmZXJlbmNlOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1leGNsdXNpb24ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNsaXAgLnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9ue2JhY2tncm91bmQ6cmdiYSg4MCw4MCw4MCwuNik7YmFja2dyb3VuZC1ibGVuZC1tb2RlOmV4Y2x1c2lvbjstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpfS55dHAtdGltZS1jbGlwLWljb257bWFyZ2luLWxlZnQ6MTZweDttYXJnaW4tcmlnaHQ6NXB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtdGltZS1jbGlwLWljb257bWFyZ2luLWxlZnQ6MH0ueXRwLXRpbWUtY2xpcC1pY29uIHN2Z3t3aWR0aDoxNnB4O2hlaWdodDoxNnB4O21hcmdpbi1ib3R0b206LTNweDtmaWxsOiNkZGR9Lnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9uLXNlcGFyYXRvcnttYXJnaW4tbGVmdDo4cHg7bWFyZ2luLXJpZ2h0OjhweDtmb250LXdlaWdodDo3MDB9Lnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9ue2N1cnNvcjpwb2ludGVyO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLXNtYWxsLW1vZGUgLnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9uLC55dHAtc21hbGwtbW9kZSAueXRwLWNsaXAtd2F0Y2gtZnVsbC12aWRlby1idXR0b24tc2VwYXJhdG9ye2Rpc3BsYXk6bm9uZX0ueXRwLWVtYmVkIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbGl2ZSAueXRwLWxpdmUtYmFkZ2V7d2lkdGg6YXV0b30ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRpbWUtY29udGVudHN7b3ZlcmZsb3c6aGlkZGVufS55dHAtbm8tbGluayxzcGFuLnl0cC10aXRsZS1jaGFubmVsLW5hbWV7Y3Vyc29yOmRlZmF1bHQ7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLXRpdGxle292ZXJmbG93OmhpZGRlbjstd2Via2l0LWJveC1mbGV4OjE7LXdlYmtpdC1mbGV4OjE7ZmxleDoxO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fS55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20gLnl0cC10aXRsZSAueXRwLXRpdGxlLXRleHQsLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLXRvcCAueXRwLXRpdGxlIC55dHAtdGl0bGUtdGV4dCwueXRwLWhpZGUtZnVsbHNjcmVlbi10aXRsZSAueXRwLXRpdGxlIC55dHAtdGl0bGUtdGV4dHtkaXNwbGF5Om5vbmV9Lnl0cC10aXRsZS10ZXh0e3ZlcnRpY2FsLWFsaWduOnRvcDttYXgtd2lkdGg6MTAwJTtwYWRkaW5nLXRvcDoxMnB4O2ZvbnQtc2l6ZToxOHB4Oy13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXg6MTtmbGV4OjE7cGFkZGluZy1sZWZ0OjRweDtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWJpZy1tb2RlIC55dHAtdGl0bGUtdGV4dHtwYWRkaW5nLXRvcDoxOHB4O2ZvbnQtc2l6ZToyN3B4O3BhZGRpbmctbGVmdDo2cHh9Lnl0cC1lbWJlZDpub3QoLmFkLXNob3dpbmcpIC55dHAtdGl0bGUtdGV4dHtwYWRkaW5nLXRvcDoyMXB4fS55dHAtc2hvcnRzLW1vZGUueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykgLnl0cC10aXRsZS10ZXh0e2ZvbnQtc2l6ZToxNnB4O3doaXRlLXNwYWNlOm5vcm1hbDtwYWRkaW5nLXRvcDoxNHB4O3BhZGRpbmctcmlnaHQ6NTNweH0ueXRwLWJpZy1tb2RlLnl0cC1lbWJlZDpub3QoLmFkLXNob3dpbmcpIC55dHAtdGl0bGUtdGV4dHtwYWRkaW5nLXRvcDozNnB4fS55dHAtYmlnLW1vZGUueXRwLXNob3J0cy1tb2RlLnl0cC1lbWJlZDpub3QoLmFkLXNob3dpbmcpIC55dHAtdGl0bGUtdGV4dHtwYWRkaW5nLXRvcDoxN3B4O2ZvbnQtc2l6ZToyM3B4O3BhZGRpbmctcmlnaHQ6NjRweH0ueXRwLXRpdGxlLXRleHQtbGFyZ2VyLWxpbmUtaGVpZ2h0IC55dHAtdGl0bGUtdGV4dHtsaW5lLWhlaWdodDoxLjM1fS55dHAtc2hvcnRzLW1vZGUueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykgLnl0cC10aXRsZS1saW5re292ZXJmbG93OmhpZGRlbjtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtbGluZS1jbGFtcDozOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt2aXNpYmlsaXR5OnZpc2libGV9Lnl0cC10aXRsZS1zdWJ0ZXh0e2ZvbnQtc2l6ZToxNHB4O292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtdGl0bGUtY2hhbm5lbC1uYW1le21hcmdpbi10b3A6LjI1cmVtO2Rpc3BsYXk6YmxvY2s7Y29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRleHQtc2Vjb25kYXJ5KX0ueXRwLWJpZy1tb2RlIC55dHAtdGl0bGUtc3VidGV4dHtmb250LXNpemU6MjBweH0ueXRwLXRpdGxlLXN1YnRleHQgYTplbXB0eXtkaXNwbGF5Om5vbmV9Lnl0cC10aXRsZS1mdWxsZXJzY3JlZW4tbGlua3tjdXJzb3I6ZGVmYXVsdH0ueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveHtoZWlnaHQ6MTRweDt3aWR0aDozNnB4O2Zsb2F0OnJpZ2h0O3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjMpOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjA4cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246YWxsIC4wOHMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTstbXMtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX0ueXRwLWJpZy1tb2RlIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2hlaWdodDoyMXB4O3dpZHRoOjU0cHg7Ym9yZGVyLXJhZGl1czoyMXB4fS55dHAtbWVudWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1yZWQtaW5kaWNhdG9yLCNlMTAwMmQpfS55dHAtbWVudWl0ZW1bYXJpYS1kaXNhYmxlZD10cnVlXSAueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveHtvcGFjaXR5Oi4zfS55dHAtbWVudWl0ZW1bYXJpYS1kaXNhYmxlZD10cnVlXXtjb2xvcjojOTA5MDkwfS55dHAtbWVudWl0ZW1bYXJpYS1kaXNhYmxlZD10cnVlXSBwYXRoe2ZpbGw6IzkwOTA5MH0ueXRwLWNvbnRleHRtZW51IC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2JvcmRlci1yYWRpdXM6MDtoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dHAtY29udGV4dG1lbnUueXRwLWJpZy1tb2RlIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2hlaWdodDozNnB4O3dpZHRoOjM2cHh9Lnl0cC1jb250ZXh0bWVudSAueXRwLW1lbnVpdGVtIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2JhY2tncm91bmQ6bm9uZX0ueXRwLWNvbnRleHRtZW51IC55dHAtbWVudWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2JhY2tncm91bmQ6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TkNBeU5DSStQSEJoZEdnZ1ptbHNiRDBpSTJabVppSWdaRDBpVFRrZ01UWXVNaUEwTGpnZ01USnNMVEV1TkNBeExqUk1PU0F4T1NBeU1TQTNiQzB4TGpRdE1TNDBlaUl2UGp3dmMzWm5QZz09KX0ueXRwLWNvbnRleHRtZW51IC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94OmFmdGVye2NvbnRlbnQ6bm9uZX0ueXRwLWNvbnRleHRtZW51IC55dHAtbWVudWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94OmJlZm9yZXstd2Via2l0LXRyYW5zZm9ybTpub25lOy1tcy10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX0ueXRwLWJpZy1tb2RlIC55dHAtY29udGV4dG1lbnUgLnl0cC1tZW51aXRlbVthcmlhLWNoZWNrZWQ9dHJ1ZV0gLnl0cC1tZW51aXRlbS10b2dnbGUtY2hlY2tib3g6YmVmb3Jley13ZWJraXQtdHJhbnNmb3JtOm5vbmU7LW1zLXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lfS55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94OmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO2hlaWdodDoyMHB4O3dpZHRoOjIwcHg7Ym9yZGVyLXJhZGl1czoyMHB4O21hcmdpbi10b3A6LTNweDtiYWNrZ3JvdW5kLWNvbG9yOiNiZGJkYmQ7LXdlYmtpdC1ib3gtc2hhZG93OjAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjYpO2JveC1zaGFkb3c6MCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuNik7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuMDhzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjphbGwgLjA4cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYmlnLW1vZGUgLnl0cC1tZW51aXRlbS10b2dnbGUtY2hlY2tib3g6YWZ0ZXJ7bGVmdDowO2hlaWdodDozMHB4O3dpZHRoOjMwcHg7Ym9yZGVyLXJhZGl1czozMHB4O21hcmdpbi10b3A6ZGl2aWRlKHN1YigyMXB4LDMwcHgpLDIpfS55dHAtbWVudWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94OmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE2cHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgxNnB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxNnB4KX0ueXRwLWJpZy1tb2RlIC55dHAtbWVudWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94OmFmdGVyey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjRweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDI0cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDI0cHgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94LC55dHAtZGVsaGktbW9kZXJuLmJpZy1tb2RlIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2hlaWdodDoyNHB4O3dpZHRoOjQwcHg7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLWxpZ2h0LHJnYmEoMCwwLDAsLjMpKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW1lbnVpdGVtW2FyaWEtY2hlY2tlZD10cnVlXSAueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveCwueXRwLWRlbGhpLW1vZGVybi5iaWctbW9kZSAueXRwLW1lbnVpdGVtW2FyaWEtY2hlY2tlZD10cnVlXSAueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveHtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tcHJpbWFyeSxyZ2JhKDI1NSwyNTUsMjU1LC4zKSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1tZW51aXRlbVthcmlhLWRpc2FibGVkPXRydWVdIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94LC55dHAtZGVsaGktbW9kZXJuLmJpZy1tb2RlIC55dHAtbWVudWl0ZW1bYXJpYS1kaXNhYmxlZD10cnVlXSAueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveHtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1tZW51aXRlbS10b2dnbGUtY2hlY2tib3g6YWZ0ZXIsLnl0cC1kZWxoaS1tb2Rlcm4uYmlnLW1vZGUgLnl0cC1tZW51aXRlbS10b2dnbGUtY2hlY2tib3g6YWZ0ZXJ7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDttYXJnaW4tbGVmdDoycHg7bWFyZ2luLXRvcDoycHg7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmU7Ym94LXNoYWRvdzpub25lO2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRleHQtc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjcpKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW1lbnVpdGVtW2FyaWEtY2hlY2tlZD10cnVlXSAueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveDphZnRlciwueXRwLWRlbGhpLW1vZGVybi5iaWctbW9kZSAueXRwLW1lbnVpdGVtW2FyaWEtY2hlY2tlZD10cnVlXSAueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveDphZnRlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE2cHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgxNnB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxNnB4KX0ueXRwLXRvb2x0aXB7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMDAzO2ZvbnQtc2l6ZToxMTglO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxNXB4Oy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtwb2ludGVyLWV2ZW50czpub25lfS55dHAtdG9vbHRpcDpub3QoLnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbil7b3BhY2l0eTowfS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcDpub3QoLnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbil7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx0b3AgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx0b3AgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx0b3AgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtYmlnLW1vZGUgLnl0cC10b29sdGlwe2xpbmUtaGVpZ2h0OjIycHh9Lnl0cC10b29sdGlwOm5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pe29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpub25lOy1tcy10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC10b29sdGlwLnl0cC1wcmV2aWV3e3BhZGRpbmc6MnB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgyOCwyOCwyOCwuOSk7Ym9yZGVyLXJhZGl1czoycHh9Lnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlld3tib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlld3std2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0tbGlnaHQscmdiYSgwLDAsMCwuMykpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IHN2Z3std2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlldy55dHAtZnJvc3RlZC1nbGFzcy1mYWRlLXRyYW5zaXRpb257b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksdG9wIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksdG9wIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksdG9wIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3Lnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbjpub3QoW2FyaWEtaGlkZGVuPXRydWVdKXtvcGFjaXR5OjF9Lnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlldyAueXRwLXRvb2x0aXAtdGl0bGV7cGFkZGluZzowIDlweDt0ZXh0LWFsaWduOnN0YXJ0O292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IC55dHAtdG9vbHRpcC10aXRsZXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6NXB4IDlweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IC55dHAtdG9vbHRpcC1iZ3ttYXJnaW46NHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC55dHAtdGV4dC1kZXRhaWwueXRwLXByZXZpZXcgLnl0cC10b29sdGlwLXRpdGxlIC55dHAtdG9vbHRpcC1rZXlib2FyZC1zaG9ydGN1dHttYXJnaW4tbGVmdDo4cHh9Lnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlldyAueXRwLXRvb2x0aXAtdGV4dHtwYWRkaW5nOjAgOXB4O3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dHtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC55dHAtdGV4dC1kZXRhaWwueXRwLXByZXZpZXcgLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2Rpc3BsYXk6bm9uZX0ueXRwLXRvb2x0aXA6bm90KC55dHAtcHJldmlldykgLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2JvcmRlci1yYWRpdXM6NHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcDpub3QoLnl0cC1wcmV2aWV3KSAueXRwLXRvb2x0aXAtYm90dG9tLXRleHR7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0cC10b29sdGlwLWJnLC55dHAtdG9vbHRpcC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCl7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKXtwYWRkaW5nOjFweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXN0eWxlIC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dCwueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXN0eWxlIC55dHAtdG9vbHRpcC10aXRsZXtkaXNwbGF5Om5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwOm5vdCgueXRwLXByZXZpZXcpIC55dHAtdG9vbHRpcC1wcm9ncmVzcy1iYXItcGlsbHtkaXNwbGF5Om5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1zdHlsZSAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXBpbGx7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7cG9zaXRpb246cmVsYXRpdmU7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjt3aWR0aDotd2Via2l0LWZpdC1jb250ZW50O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnQ7bWF4LXdpZHRoOjEwMCU7cGFkZGluZzo4cHggMTZweDtib3JkZXItcmFkaXVzOjE4cHg7dG9wOjQ1cHg7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2xlZnQ6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC55dHAtdG9vbHRpcC1wcm9ncmVzcy1iYXItc3R5bGUgLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1waWxsIHN2Z3std2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1zdHlsZSAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXBpbGwgLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1waWxsLXRpdGxle21hcmdpbi1sZWZ0OjhweDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW59Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1zdHlsZSAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXBpbGwgLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1waWxsLXRpdGxlOmVtcHR5e2Rpc3BsYXk6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXN0eWxlOm5vdCgueXRwLXByZXZpZXcpIC55dHAtdG9vbHRpcC1wcm9ncmVzcy1iYXItcGlsbHt0b3A6LTE2cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1zdHlsZSAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXBpbGwueXRwLWZyb3N0ZWQtZ2xhc3MtZmFkZS10cmFuc2l0aW9ue3Bvc2l0aW9uOmFic29sdXRlO21hcmdpbi10b3A6MTBweDt0b3A6dW5zZXQ7bWF4LXdpZHRoOnVuc2V0O2hlaWdodDotd2Via2l0LWZpdC1jb250ZW50O2hlaWdodDotbW96LWZpdC1jb250ZW50O2hlaWdodDpmaXQtY29udGVudDtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx0b3AgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx0b3AgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx0b3AgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC55dHAtdG9vbHRpcC1wcm9ncmVzcy1iYXItc3R5bGU6bm90KC55dHAtcHJldmlldykgLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1waWxsLnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbntib3R0b206OHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC55dHAtdG9vbHRpcC1wcm9ncmVzcy1iYXItc3R5bGU6bm90KFthcmlhLWhpZGRlbj10cnVlXSkgLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1waWxsLnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbntvcGFjaXR5OjF9Lnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1waWxse2Rpc3BsYXk6bm9uZX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC10b29sdGlwLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1zdHlsZSAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXBpbGx7dG9wOjY3cHh9Lnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlldyAueXRwLXRvb2x0aXAtYmd7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czoxMnB4O2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MTJweH0ueXRwLXRvb2x0aXAtdGV4dC13cmFwcGVye2JvcmRlci1yYWRpdXM6M3B4fS55dHAtdG9vbHRpcC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLXRleHQtd3JhcHBlcntwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206NXB4O2xlZnQ6MDt3aWR0aDoxMDAlO3RleHQtYWxpZ246Y2VudGVyO3otaW5kZXg6MX0ueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IC55dHAtdG9vbHRpcC10ZXh0LXdyYXBwZXJ7bWFyZ2luOjRweCAwO292ZXJmbG93OmhpZGRlbjttYXgtaGVpZ2h0OjQ2cHh9Lnl0cC1iaWctbW9kZSAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IC55dHAtdG9vbHRpcC10ZXh0LXdyYXBwZXJ7bWFyZ2luOjZweCAwO21heC1oZWlnaHQ6NjlweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXA6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC10ZXh0LXdyYXBwZXIueXRwLWZyb3N0ZWQtZ2xhc3MtZmFkZS10cmFuc2l0aW9ue29wYWNpdHk6MDtib3JkZXItcmFkaXVzOjhweDstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0tbGlnaHQscmdiYSgwLDAsMCwuMykpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXA6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC10ZXh0LXdyYXBwZXIueXRwLWZyb3N0ZWQtZ2xhc3MtZmFkZS10cmFuc2l0aW9uIHN2Z3std2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwOm5vdCgueXRwLXRleHQtZGV0YWlsKSAueXRwLXRvb2x0aXAtdGV4dC13cmFwcGVyLnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbnstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHRvcCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHRvcCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHRvcCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwOm5vdCgueXRwLXRleHQtZGV0YWlsKTpub3QoW2FyaWEtaGlkZGVuPXRydWVdKSAueXRwLXRvb2x0aXAtdGV4dC13cmFwcGVyLnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbntvcGFjaXR5OjF9Lnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2Rpc3BsYXk6YmxvY2s7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI4LDI4LDI4LC45KTtib3JkZXItcmFkaXVzOjJweDtwYWRkaW5nOjVweCA5cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXA6bm90KC55dHAtZnJvc3RlZC1nbGFzcy1mYWRlLXRyYW5zaXRpb24pIC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dHtib3JkZXItcmFkaXVzOjhweDstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0tbGlnaHQscmdiYSgwLDAsMCwuMykpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXA6bm90KC55dHAtZnJvc3RlZC1nbGFzcy1mYWRlLXRyYW5zaXRpb24pIC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dCBzdmd7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfS55dHAtdG9vbHRpcC1vcGFxdWUgLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2JhY2tncm91bmQtY29sb3I6cmdiKDI4LDI4LDI4KX0ueXRwLXRvb2x0aXAueXRwLXByZXZpZXcgLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2Rpc3BsYXk6aW5saW5lO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS55dHAtdG9vbHRpcC1pbWFnZS1lbmFibGVkIC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dHtwYWRkaW5nLWxlZnQ6MzRweH0ueXRwLWJpZy1tb2RlIC55dHAtdG9vbHRpcC1pbWFnZS1lbmFibGVkIC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dHtwYWRkaW5nLWxlZnQ6NDVweH0ueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmc6MH0ueXRwLXRvb2x0aXAtYmd7YmFja2dyb3VuZC1jb2xvcjojMDAwO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Om5vbmV9Lnl0cC10b29sdGlwLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Lnl0cC10b29sdGlwLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKS55dHAtZnJvc3RlZC1nbGFzcy1mYWRlLXRyYW5zaXRpb246aXMoW2FyaWEtaGlkZGVuPXRydWVdKXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS55dHAtcHJvZ3Jlc3MtYmFyLXNuYXAgLnl0cC10b29sdGlwLWJne291dGxpbmU6MXB4IHNvbGlkICNmZmY7b3V0bGluZS1vZmZzZXQ6LTFweH0ueXRwLXRvb2x0aXAueXRwLXByZXZpZXcgLnl0cC10b29sdGlwLWJne2Rpc3BsYXk6YmxvY2t9Lnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlldyAueXRwLXRvb2x0aXAtYmd7ZmxvYXQ6bGVmdH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAtYmcueXRwLWZyb3N0ZWQtZ2xhc3MtZmFkZS10cmFuc2l0aW9ue29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHRvcCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHRvcCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHRvcCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwOm5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pIC55dHAtdG9vbHRpcC1iZy55dHAtZnJvc3RlZC1nbGFzcy1mYWRlLXRyYW5zaXRpb257b3BhY2l0eToxfS55dHAtdG9vbHRpcC1kdXJhdGlvbntkaXNwbGF5Om5vbmV9Lnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlldy55dHAtaGFzLWR1cmF0aW9uIC55dHAtdG9vbHRpcC1kdXJhdGlvbntkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjNweDtib3R0b206M3B4O2JhY2tncm91bmQtY29sb3I6cmdiYSgyOCwyOCwyOCwuOSk7cGFkZGluZzoycHggNHB4O2JvcmRlci1yYWRpdXM6MnB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC55dHAtdGV4dC1kZXRhaWwueXRwLXByZXZpZXcueXRwLWhhcy1kdXJhdGlvbiAueXRwLXRvb2x0aXAtZHVyYXRpb257YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KTtib3JkZXItcmFkaXVzOiNmZmZ9Lnl0cC10b29sdGlwLXRpdGxle2Rpc3BsYXk6bm9uZX0ueXRwLXRvb2x0aXAtdGl0bGUgc3Zne2Rpc3BsYXk6bm9uZX0ueXRwLWJpZy1tb2RlLnl0cC1maW5lLXNjcnViYmluZy1leHAgLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKSAueXRwLXRvb2x0aXAtZWR1e2ZvbnQtc2l6ZToxOHB4fS55dHAtYmlnLW1vZGUueXRwLWZpbmUtc2NydWJiaW5nLWV4cCAueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC1lZHUgc3Zne2hlaWdodDoxOHB4O3dpZHRoOjE4cHh9Lnl0cC1maW5lLXNjcnViYmluZy1leHAgLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKSAueXRwLXRvb2x0aXAtZWR1e2Rpc3BsYXk6YmxvY2s7dGV4dC1hbGlnbjpjZW50ZXI7d2lkdGg6MTAzJTtoZWlnaHQ6YXV0bztmb250LXNpemU6MTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsLjc1KX0ueXRwLXRvb2x0aXAtZWR1e2Rpc3BsYXk6bm9uZX0ueXRwLWZpbmUtc2NydWJiaW5nLWV4cCAueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC1lZHUgc3ZnLC55dHAtcHJvZ3Jlc3MtYmFyLWRlY29yYXRpb24gLnl0cC10b29sdGlwLXRpdGxlIHN2Z3tkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoxMnB4O2hlaWdodDoxMnB4O21hcmdpbi1yaWdodDozcHg7ZmlsbDp3aGl0ZTt0ZXh0LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsLjc1KX0ueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC10aXRsZXt3aWR0aDoyMDAlO3RleHQtYWxpZ246Y2VudGVyO3JpZ2h0OjgwcHg7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7aGVpZ2h0OjE2cHg7Ym9yZGVyOjA7dG9wOjQ1cHg7dGV4dC1zaGFkb3c6MCAwIDRweCByZ2JhKDAsMCwwLC43NSl9Lnl0cC1iaWctbW9kZSAueXRwLXRvb2x0aXAueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC10aXRsZXt3aWR0aDoyMDAlO3RleHQtYWxpZ246Y2VudGVyO3JpZ2h0OjEyMHB4O3RvcDo2MXB4O2hlaWdodDoyNHB4fS55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2JhY2tncm91bmQ6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6NDVweDt0ZXh0LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsLjc1KX0ueXRwLWJpZy1tb2RlIC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e3RvcDo2NXB4fS55dHAtdG9vbHRpcC1rZXlib2FyZC1zaG9ydGN1dHtkaXNwbGF5Om5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLWtleWJvYXJkLXNob3J0Y3V0e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4zMDE5NjA3ODQzKTttaW4td2lkdGg6MTFweDtib3JkZXItcmFkaXVzOjRweDttYXJnaW4tbGVmdDo0cHg7Y29sb3I6I2ZmZjtwYWRkaW5nOjAgMnB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC1rZXlib2FyZC1zaG9ydGN1dDplbXB0eXtkaXNwbGF5Om5vbmU7d2lkdGg6MH0ueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC10ZXh0LW5vLXRpdGxle3RvcDozM3B4fS55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLXRleHQtbm8tdGl0bGUueXRwLW1vZGVybi10b29sdGlwLXRleHR7dG9wOjI1cHh9Lnl0cC1iaWctbW9kZSAueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC10ZXh0LW5vLXRpdGxle3RvcDo0MXB4fS55dHAtdG9vbHRpcC55dHAtdGV4dC1kZXRhaWwgLnl0cC10b29sdGlwLXRpdGxle2Rpc3BsYXk6YmxvY2s7Y29sb3I6I2FhYTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9Lnl0cC10b29sdGlwLWltYWdle3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czoxMHB4O3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6bm9uZTt0b3A6MnB4O2xlZnQ6N3B4Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1zaXplOmNvbnRhaW59Lnl0cC1iaWctbW9kZSAueXRwLXRvb2x0aXAtaW1hZ2V7d2lkdGg6MjVweDtoZWlnaHQ6MjVweDtib3JkZXItcmFkaXVzOjEyLjVweDt0b3A6M3B4O2xlZnQ6MTBweH0ueXRwLXRvb2x0aXAtaW1hZ2UtZW5hYmxlZCAueXRwLXRvb2x0aXAtaW1hZ2V7ZGlzcGxheTppbmhlcml0fS55dHAtaW5saW5lLXByZXZpZXctbW9kZSAueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dCwueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKSAueXRwLXRvb2x0aXAtYm90dG9tLXRleHR7dG9wOi00cHh9Lnl0cC1pbmxpbmUtcHJldmlldy1tb2RlIC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLXRleHQtbm8tdGl0bGUsLnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLXRleHQtbm8tdGl0bGV7dG9wOi00cHh9Lnl0cC1pbmxpbmUtcHJldmlldy1tb2RlIC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLWVkdSwueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKSAueXRwLXRvb2x0aXAtZWR1e2Rpc3BsYXk6bm9uZX0ueXRwLXVubXV0ZS55dHAtcG9wdXB7cG9zaXRpb246YWJzb2x1dGU7dG9wOnN1Yig0OHB4LDEycHgpO2xlZnQ6MDt6LWluZGV4OjEwMDE7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2NvbG9yOiMwMDA7Zm9udC1zaXplOjEyNyU7Zm9udC13ZWlnaHQ6NTAwO2JhY2tncm91bmQ6bm9uZTtwYWRkaW5nOjEycHh9Lnl0cC1iaWctbW9kZSAueXRwLXVubXV0ZS55dHAtcG9wdXB7dG9wOnN1Yig0OHB4LDE4cHgpO3BhZGRpbmc6MThweH0ueXRwLWF1dG9oaWRlIC55dHAtdW5tdXRlLC55dHAtaGlkZS1pbmZvLWJhciAueXRwLXVubXV0ZXt0b3A6MH0ueXRwLXVubXV0ZS1pbm5lcntwYWRkaW5nLWxlZnQ6M3B4O3BhZGRpbmctcmlnaHQ6MTJweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNTUsMjU1LDI1NSk7Ym9yZGVyLXJhZGl1czoycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2YxZjFmMTt0ZXh0LXNoYWRvdzpub25lO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0cC1iaWctbW9kZSAueXRwLXVubXV0ZS1pbm5lcntwYWRkaW5nLWxlZnQ6NXB4O3BhZGRpbmctcmlnaHQ6MThweH0ueXRwLXVubXV0ZS1pY29ue3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRwLWVtYmVkIC55dHAtdW5tdXRlLWljb257d2lkdGg6NDBweDtoZWlnaHQ6NDBweH0ueXRwLXVubXV0ZS1pY29uIC55dHAtc3ZnLWZpbGx7ZmlsbDojMDAwfS55dHAtdW5tdXRlLXRleHR7bWF4LXdpZHRoOjIwMHB4O3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lnl0cC1iaWctbW9kZSAueXRwLXVubXV0ZS1pY29ue3dpZHRoOjU0cHg7aGVpZ2h0OjU0cHh9Lnl0cC11bm11dGUueXRwLXBvcHVwLnl0cC11bm11dGUtYW5pbWF0ZWQgLnl0cC11bm11dGUtaW5uZXJ7cG9zaXRpb246cmVsYXRpdmU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOm5vbmU7cGFkZGluZzowfS55dHAtdW5tdXRlLWFuaW1hdGVkIC55dHAtdW5tdXRlLWljb257cGFkZGluZy1sZWZ0OjJweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjEwO2JhY2tncm91bmQtY29sb3I6cmdiKDI1NSwyNTUsMjU1KTtib3JkZXItcmFkaXVzOjJweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZjFmMWYxfS55dHAtdW5tdXRlLWFuaW1hdGVkIC55dHAtdW5tdXRlLWJveHtkaXNwbGF5OmJsb2NrO2JhY2tncm91bmQtY29sb3I6cmdiKDI1NSwyNTUsMjU1KTtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7Ym90dG9tOjA7Ym9yZGVyLXJhZGl1czoycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2YxZjFmMX0ueXRwLXVubXV0ZS1hbmltYXRlZCAueXRwLXVubXV0ZS10ZXh0e3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTA7cGFkZGluZy10b3A6MXB4O3BhZGRpbmctcmlnaHQ6MTBweH0ueXRwLXVubXV0ZS1leHBhbmQgLnl0cC11bm11dGUtYm94e3dpZHRoOjA7LXdlYmtpdC1hbmltYXRpb246eXRwLXVubXV0ZS13aWR0aC1hbmltIC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIDMuNXMgZm9yd2FyZHM7YW5pbWF0aW9uOnl0cC11bm11dGUtd2lkdGgtYW5pbSAuNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSAzLjVzIGZvcndhcmRzfS55dHAtdW5tdXRlLWV4cGFuZCAueXRwLXVubXV0ZS10ZXh0e29wYWNpdHk6MDstd2Via2l0LWFuaW1hdGlvbjp5dHAtdW5tdXRlLWFscGhhLWFuaW0gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIDMuOHMgZm9yd2FyZHM7YW5pbWF0aW9uOnl0cC11bm11dGUtYWxwaGEtYW5pbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSkgMy44cyBmb3J3YXJkc30ueXRwLXVubXV0ZS1zaHJpbmsgLnl0cC11bm11dGUtYm94e3dpZHRoOjEwMCU7LXdlYmtpdC1hbmltYXRpb246eXRwLXVubXV0ZS13aWR0aC1hbmltIC41cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpIDUuNXMgcmV2ZXJzZSBmb3J3YXJkczthbmltYXRpb246eXRwLXVubXV0ZS13aWR0aC1hbmltIC41cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpIDUuNXMgcmV2ZXJzZSBmb3J3YXJkc30ueXRwLXVubXV0ZS1zaHJpbmsgLnl0cC11bm11dGUtdGV4dHtvcGFjaXR5OjE7LXdlYmtpdC1hbmltYXRpb246eXRwLXVubXV0ZS1hbHBoYS1hbmltIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSA1LjRzIHJldmVyc2UgZm9yd2FyZHM7YW5pbWF0aW9uOnl0cC11bm11dGUtYWxwaGEtYW5pbSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSkgNS40cyByZXZlcnNlIGZvcndhcmRzfUAtd2Via2l0LWtleWZyYW1lcyB5dHAtdW5tdXRlLXdpZHRoLWFuaW17MCV7d2lkdGg6MH10b3t3aWR0aDoxMDAlfX1Aa2V5ZnJhbWVzIHl0cC11bm11dGUtd2lkdGgtYW5pbXswJXt3aWR0aDowfXRve3dpZHRoOjEwMCV9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtdW5tdXRlLWFscGhhLWFuaW17MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19QGtleWZyYW1lcyB5dHAtdW5tdXRlLWFscGhhLWFuaW17MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19Lnl0cC11cG5leHR7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTpibG9jazt2ZXJ0aWNhbC1hbGlnbjp0b3A7b3BhY2l0eToxO292ZXJmbG93OmhpZGRlbjt3aWR0aDoxMDAlO2hlaWdodDoxMDAlOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjphbGwgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7ei1pbmRleDozOX0ueXRwLXVwbmV4dC10b3B7d2lkdGg6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvO2JvdHRvbTo1MCU7bWFyZ2luLWJvdHRvbTo0OHB4fS55dHAtc21hbGwtbW9kZSAueXRwLXVwbmV4dC10b3B7bWFyZ2luLWJvdHRvbToyNnB4fS55dHAtc21hbGwtbW9kZS55dHAtZW1iZWQgLnl0cC11cG5leHQtbW9iaWxlIC55dHAtdXBuZXh0LXRvcHttYXJnaW4tYm90dG9tOjB9Lnl0cC11cG5leHQtYm90dG9te3dpZHRoOjEwMCU7cG9zaXRpb246YWJzb2x1dGU7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzt0b3A6NTAlO21hcmdpbi10b3A6NDhweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC11cG5leHQtYm90dG9te21hcmdpbi10b3A6MjZweH0ueXRwLXNtYWxsLW1vZGUueXRwLWVtYmVkIC55dHAtdXBuZXh0LW1vYmlsZSAueXRwLXVwbmV4dC1ib3R0b217bWFyZ2luLXRvcDo0OHB4fS55dHAtdXBuZXh0LXRpdGxle2Rpc3BsYXk6YmxvY2s7cGFkZGluZzowIDEwcHggMnB4O21hcmdpbi1sZWZ0OjMycHg7bWFyZ2luLXJpZ2h0OjMycHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjIwMCU7Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtc21hbGwtbW9kZSAueXRwLXVwbmV4dC10aXRsZXtmb250LXNpemU6MTUwJX0ueXRwLXVwbmV4dC1hdXRob3J7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDoxLjNlbTtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowIDEwcHggMTBweDt0ZXh0LWFsaWduOmNlbnRlcjtjb2xvcjojZmZmO2ZvbnQtc2l6ZToxMzAlfS55dHAtdXBuZXh0LWhlYWRlcntkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxNDAlO3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmctYm90dG9tOjhweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC43KX0ueXRwLXNtYWxsLW1vZGUgLnl0cC11cG5leHQtaGVhZGVye3BhZGRpbmctYm90dG9tOjB9Lnl0cC11cG5leHQtY2FuY2Vse2Rpc3BsYXk6YmxvY2s7ZmxvYXQ6bm9uZTt0ZXh0LWFsaWduOmNlbnRlcn0ueXRwLXVwbmV4dC1jYW5jZWwtYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO2Zsb2F0Om5vbmU7cGFkZGluZzoxMHB4IDIwcHg7Zm9udC1zaXplOjE0MCU7Zm9udC13ZWlnaHQ6NTAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ueXRwLXVwbmV4dC1jYW5jZWwtYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMTUpO2JvcmRlci1yYWRpdXM6MnB4fS55dHAtdXBuZXh0LWF1dG9wbGF5LWljb257cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjUwJTt3aWR0aDo2NHB4O2hlaWdodDo2NHB4O21hcmdpbjotMzJweCAwIDAgLTMycHg7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmFsbCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLXNtYWxsLW1vZGUgLnl0cC11cG5leHQtYXV0b3BsYXktaWNvbnt3aWR0aDo1MHB4O2hlaWdodDo1MHB4O21hcmdpbjotMjVweCAwIDAgLTI1cHh9Lnl0cC1zbWFsbC1tb2RlLnl0cC1lbWJlZCAueXRwLXVwbmV4dC1tb2JpbGUgLnl0cC11cG5leHQtYXV0b3BsYXktaWNvbnttYXJnaW4tdG9wOjB9Lnl0cC1lbWJlZCAueXRwLWVuZHNjcmVlbi10YWtlb3Zlcn4ueXRwLXJlcGxheS1idXR0b257ZGlzcGxheTpub25lfS55dHAtdXBuZXh0LXBhdXNlZHtkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc2l6ZToxMjAlO2ZvbnQtc3R5bGU6aXRhbGljO29wYWNpdHk6MH0ueXRwLXVwbmV4dC1hdXRvcGxheS1wYXVzZWQgLnl0cC11cG5leHQtcGF1c2Vke29wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246YWxsIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246YWxsIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtdXBuZXh0IC55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheS1pbWFnZXtvcGFjaXR5Oi40fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXVwbmV4dCAueXRwLWN1ZWQtdGh1bWJuYWlsLW92ZXJsYXktaW1hZ2V7b3BhY2l0eTouNjR9Lnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtdXBuZXh0IC55dHAtdXBuZXh0LXRvcHt0b3A6MDttYXJnaW46MTJweCAwIDAgMTJweH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC11cG5leHQgLnl0cC11cG5leHQtYXV0aG9yLC55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXVwbmV4dCAueXRwLXVwbmV4dC1oZWFkZXIsLnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtdXBuZXh0IC55dHAtdXBuZXh0LXRpdGxle3RleHQtYWxpZ246bGVmdDttYXJnaW4tYm90dG9tOjRweH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC11cG5leHQgLnl0cC11cG5leHQtYXV0aG9yLC55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXVwbmV4dCAueXRwLXVwbmV4dC1oZWFkZXJ7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjcpO3BhZGRpbmc6MH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC11cG5leHQgLnl0cC11cG5leHQtdGl0bGV7Zm9udC1zaXplOjE1cHg7Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOiNmZmY7cGFkZGluZzowIDc1cHggMCAwfS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXVwbmV4dCAueXRwLXVwbmV4dC1hdXRvcGxheS1pY29ue3dpZHRoOjYycHg7aGVpZ2h0OjYycHg7bWFyZ2luOi0zMXB4IDAgMCAtMzFweH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC11cG5leHQgLnl0cC11cG5leHQtY2FuY2VsLWJ1dHRvbiwueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC11cG5leHQgLnl0cC11cG5leHQtcGF1c2Vke2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC43KX0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC11cG5leHQgLnl0cC11cG5leHQtY2FuY2VsLWJ1dHRvbntwYWRkaW5nOjhweDttYXJnaW4tdG9wOjhweH0ueXRwLWJpZy1tb2RlOm5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLXVwbmV4dC1hdXRvcGxheS1pY29ue3dpZHRoOjE0NnB4O2hlaWdodDoxNDZweDttYXJnaW46LTczcHggMCAwIC03M3B4fS55dHAtYmlnLW1vZGU6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtdXBuZXh0LWJvdHRvbXttYXJnaW4tdG9wOjc2cHh9Lnl0cC1iaWctbW9kZTpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC11cG5leHQtdG9we21hcmdpbi1ib3R0b206NzZweH0ueXRwLW13ZWItcGxheWVyLnl0cC1zbWFsbC1tb2RlIC55dHAtdXBuZXh0LXRvcHttYXJnaW4tYm90dG9tOjA7Ym90dG9tOjUwJX0ueXRwLW13ZWItcGxheWVyLnl0cC1zbWFsbC1tb2RlIC55dHAtdXBuZXh0LWF1dG9wbGF5LWljb257dG9wOjYwJX0ueXRwLW13ZWItcGxheWVyLnl0cC1zbWFsbC1tb2RlIC55dHAtdXBuZXh0LWJvdHRvbXttYXJnaW4tdG9wOjA7dG9wOjcwJX0ueXRwLXVzZXItaW5mby1wYW5lbHtiYWNrZ3JvdW5kOnJnYmEoMjgsMjgsMjgsLjgpO2NvbG9yOiNmZmY7cmlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoyOTJweDtoZWlnaHQ6NzRweDtib3R0b206MDt6LWluZGV4OjgwO21pbi13aWR0aDoyNmVtO2Rpc3BsYXk6dGFibGV9Lnl0cC11c2VyLWluZm8tcGFuZWwgLnl0cC1jb2xsYXBzZXtoZWlnaHQ6MjBweDtvcGFjaXR5Oi45O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjIwcHg7dG9wOjEycHg7d2lkdGg6MjBweH0ueXRwLXVzZXItaW5mby1wYW5lbCAueXRwLWNvbGxhcHNlOmhvdmVye29wYWNpdHk6MX0ueXRwLXVzZXItaW5mby1wYW5lbC1jb250ZW50e2Rpc3BsYXk6dGFibGUtY2VsbDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7cGFkZGluZzoxNHB4IDA7Zm9udC1zaXplOjE2cHh9Lnl0cC11c2VyLWluZm8tcGFuZWwtY29udGVudD5kaXY+ZGl2e2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nOjAgLjVlbTt0ZXh0LWFsaWduOnJpZ2h0O3dpZHRoOjEwZW19Lnl0cC11c2VyLWluZm8tcGFuZWwtaWNvbntkaXNwbGF5OnRhYmxlLWNlbGw7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjI0cHg7cGFkZGluZzowIDE0cHh9Lnl0cC11c2VyLWluZm8tcGFuZWwtbG9naW57Y29sb3I6IzNlYTZmZjtjdXJzb3I6cG9pbnRlcn0ueXRwLXVzZXItaW5mby1wYW5lbC1pbmZve21heC13aWR0aDoyMDBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0cC12aWRlby1tZW51LWl0ZW17ZGlzcGxheTpibG9jaztoZWlnaHQ6NDRweDtwYWRkaW5nOjEwcHh9Lnl0cC1iaWctbW9kZSAueXRwLXZpZGVvLW1lbnUtaXRlbXtoZWlnaHQ6NjZweDtwYWRkaW5nOjE1cHh9Lnl0cC12aWRlby1tZW51LWl0ZW1bYXJpYS1jaGVja2VkPXRydWVde2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMSl9Lnl0cC12aWRlby1tZW51LWl0ZW06aG92ZXIsLnl0cC12aWRlby1tZW51LWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMTUpfS55dHAtdmlkZW8tbWVudS1pdGVtLWluZGV4LC55dHAtdmlkZW8tbWVudS1pdGVtLW5vdy1wbGF5aW5ne3BhZGRpbmctcmlnaHQ6OXB4O21pbi13aWR0aDoxMHB4O2hlaWdodDo0NHB4O2xpbmUtaGVpZ2h0OjQ0cHg7ZmxvYXQ6bGVmdH0ueXRwLWJpZy1tb2RlIC55dHAtdmlkZW8tbWVudS1pdGVtLWluZGV4LC55dHAtYmlnLW1vZGUgLnl0cC12aWRlby1tZW51LWl0ZW0tbm93LXBsYXlpbmd7cGFkZGluZy1yaWdodDoxM3B4O2hlaWdodDo2NnB4O2xpbmUtaGVpZ2h0OjY2cHh9Lnl0cC12aWRlby1tZW51LWl0ZW0tbm93LXBsYXlpbmd7ZGlzcGxheTpub25lO2NvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tc3RhdGljLWJyYW5kLXJlZCwjZjAzKX0ueXRwLWNvbG9yLXdoaXRlIC55dHAtdmlkZW8tbWVudS1pdGVtLW5vdy1wbGF5aW5ne2NvbG9yOiNkZGR9Lnl0cC1jb2xvci1wYXJ0eSAueXRwLXZpZGVvLW1lbnUtaXRlbS1ub3ctcGxheWluZ3std2Via2l0LWFuaW1hdGlvbjp5dHAtcGFydHktY29sb3IgLjE1cyBsaW5lYXIgaW5maW5pdGU7YW5pbWF0aW9uOnl0cC1wYXJ0eS1jb2xvciAuMTVzIGxpbmVhciBpbmZpbml0ZX0ueXRwLXZpZGVvLW1lbnUtaXRlbVthcmlhLWNoZWNrZWQ9dHJ1ZV0gLnl0cC12aWRlby1tZW51LWl0ZW0tbm93LXBsYXlpbmd7ZGlzcGxheTppbmxpbmV9Lnl0cC12aWRlby1tZW51LWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtdmlkZW8tbWVudS1pdGVtLWluZGV4e2Rpc3BsYXk6bm9uZX0ueXRwLXZpZGVvLW1lbnUtaXRlbS10aXRsZXtwYWRkaW5nLWxlZnQ6OXB4O2ZvbnQtc2l6ZToxMjAlO21heC1oZWlnaHQ6Mi42ZW07b3ZlcmZsb3c6aGlkZGVufS55dHAtdmlkZW8tbWVudS1pdGVtLWF1dGhvcntwYWRkaW5nLWxlZnQ6OXB4O2NvbG9yOiNiOGI4Yjg7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC12aWRlby1tZW51LWl0ZW0tdGh1bWJuYWlse2Zsb2F0OmxlZnQ7d2lkdGg6NjRweDtoZWlnaHQ6MzZweDttYXJnaW46NHB4O2JvcmRlcjowIHNvbGlkIHZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tc3RhdGljLWJyYW5kLXJlZCwjZjAzKTtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTZweDstd2Via2l0LWJhY2tncm91bmQtc2l6ZTo2NHB4IDQ4cHg7YmFja2dyb3VuZC1zaXplOjY0cHggNDhweH0ueXRwLWNvbG9yLXdoaXRlIC55dHAtdmlkZW8tbWVudS1pdGVtLXRodW1ibmFpbHtib3JkZXItY29sb3I6I2RkZH0ueXRwLWNvbG9yLXBhcnR5IC55dHAtdmlkZW8tbWVudS1pdGVtLXRodW1ibmFpbHstd2Via2l0LWFuaW1hdGlvbjp5dHAtcGFydHktYmFja2dyb3VuZC1jb2xvciAuMXMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbjp5dHAtcGFydHktYmFja2dyb3VuZC1jb2xvciAuMXMgbGluZWFyIGluZmluaXRlfS55dHAtYmlnLW1vZGUgLnl0cC12aWRlby1tZW51LWl0ZW0tdGh1bWJuYWlse3dpZHRoOjk2cHg7aGVpZ2h0OjU0cHg7bWFyZ2luOjZweDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTlweDstd2Via2l0LWJhY2tncm91bmQtc2l6ZTo5NnB4IDcycHg7YmFja2dyb3VuZC1zaXplOjk2cHggNzJweH0ueXRwLXZpZGVvLW1lbnUtaXRlbVthcmlhLWNoZWNrZWQ9dHJ1ZV0gLnl0cC12aWRlby1tZW51LWl0ZW0tdGh1bWJuYWlse21hcmdpbjoycHg7Ym9yZGVyLXdpZHRoOjJweH0ueXRwLWJpZy1tb2RlIC55dHAtdmlkZW8tbWVudS1pdGVtW2FyaWEtY2hlY2tlZD10cnVlXSAueXRwLXZpZGVvLW1lbnUtaXRlbS10aHVtYm5haWx7bWFyZ2luOjRweH0ueXRwLXZpZGVvd2FsbC1zdGlsbHtwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmJsb2NrO2N1cnNvcjpwb2ludGVyO3ZlcnRpY2FsLWFsaWduOnRvcDtvcGFjaXR5OjA7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKC4xKTstbXMtdHJhbnNmb3JtOnNjYWxlKC4xKTt0cmFuc2Zvcm06c2NhbGUoLjEpfS55dHAtc2hvdy10aWxlcyAueXRwLXZpZGVvd2FsbC1zdGlsbHtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTstbXMtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtdmlkZW93YWxsLXN0aWxsLW1pbmkgLnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1hdXRob3IsLnl0cC12aWRlb3dhbGwtc3RpbGwtbWluaSAueXRwLXZpZGVvd2FsbC1zdGlsbC1pbmZvLWR1cmF0aW9uLC55dHAtdmlkZW93YWxsLXN0aWxsLW1pbmkgLnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1saXZle2Rpc3BsYXk6bm9uZX0ueXRwLXZpZGVvd2FsbC1zdGlsbFtkYXRhLWlzLWxpdmU9dHJ1ZV0gLnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1kdXJhdGlvbntkaXNwbGF5Om5vbmV9Lnl0cC12aWRlb3dhbGwtc3RpbGxbZGF0YS1pcy1saXZlPXRydWVdIC55dHAtdmlkZW93YWxsLXN0aWxsLWluZm8tbGl2ZXtkaXNwbGF5OmJsb2NrfS55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1taXgsLnl0cC12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLXJlZ3VsYXJ7ZGlzcGxheTpub25lO2hlaWdodDoyLjE1ZW07cGFkZGluZy1yaWdodDoxMHB4O2NvbG9yOiNmZmY7Zm9udC13ZWlnaHQ6NTAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpfS55dHAtdmlkZW93YWxsLXN0aWxsLW1pbmkgLnl0cC12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLW1peCwueXRwLXZpZGVvd2FsbC1zdGlsbC1taW5pIC55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1yZWd1bGFye2ZvbnQtc2l6ZToxMDAlfS55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1pY29ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGh0Ykc1ek9uaHNhVzVyUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMM2hzYVc1cklpQjJhV1YzUW05NFBTSXdJREFnTXpZZ016WWlQangxYzJVZ2VHeHBibXM2YUhKbFpqMGlJM2wwY0MxemRtY3RjR3hoZVd4cGMzUWlJSE4wY205clpUMGlJekF3TUNJZ2MzUnliMnRsTFc5d1lXTnBkSGs5SWk0eE5TSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpOCtQSEJoZEdnZ2FXUTlJbmwwY0MxemRtY3RjR3hoZVd4cGMzUWlJR1pwYkd3OUlpTm1abVlpSUdROUlrMHlNaTQxTXlBeU1TNDBNblkyTGpnMWJEVXVOall0TXk0ME1pMDFMalkyTFRNdU5ESjZiUzB4TVM0ek15QXdhRGt1TURaMk1pNHlPRWd4TVM0eWVtMHdMVGt1TVRSb01UTXVObll5TGpJNFNERXhMako2YlRBZ05DNDFOMmd4TXk0MmRqSXVNamhJTVRFdU1ub2lMejQ4TDNOMlp6ND0pO3dpZHRoOjIuMTVlbTtoZWlnaHQ6Mi4xNWVtfS55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1taXgtaWNvbntkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhodGJHNXpPbmhzYVc1clBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1TDNoc2FXNXJJaUIyYVdWM1FtOTRQU0l3SURBZ016WWdNellpUGp4MWMyVWdlR3hwYm1zNmFISmxaajBpSTNsMGNDMXpkbWN0YldsNElpQnpkSEp2YTJVOUlpTXdNREFpSUhOMGNtOXJaUzF2Y0dGamFYUjVQU0l1TVRVaUlITjBjbTlyWlMxM2FXUjBhRDBpTWlJdlBqeHdZWFJvSUdsa1BTSjVkSEF0YzNabkxXMXBlQ0lnWm1sc2JEMGlJMlptWmlJZ1pEMGlUVEkxTGpZMUlERTRZeTB1TURJZ01pNHpNUzB1T0RjZ05DNDBNUzB5TGpJMUlEWXVNRFpzTGprdU9UUmpNUzQyT1MweExqZ2dNaTQzTFRRdU1qY2dNaTQzTFRkekxURXVNREV0TlM0eU1TMHlMamN0TjJ3dExqa3VPVE5CT1M0MU5DQTVMalUwSURBZ01DQXhJREkxTGpZMUlERTRiUzB4TlM0eklEQmpMakF4TFRJdU16SXVPRFl0TkM0ME1pQXlMakkxTFRZdU1EZHNMUzQ1TFM0NU0wTXhNQ0F4TWk0M09TQTVJREUxTGpJM0lEa2dNVGh6TVNBMUxqSWdNaTQzSURkc0xqa3RMamswWXkweExqTTVMVEV1TmpVdE1pNHlOQzB6TGpjMUxUSXVNalV0Tmk0d05tMHlMamNnTUdNdExqQTBMVEV1TnpNdU5Ea3RNeTR3T1NBeExqTTFMVFF1TW13dExqa3RMamswWXkweExqRXpJREV1TWpZdE1TNDRJREl1T1RrdE1TNDRJRFV1TVRRZ01DQXhMalkzTGpZM0lETXVOQ0F4TGpnZ05DNDJObXd1T1MwdU9UTmpMUzQ0TmkweExqRXlMVEV1TXprdE1pNDBOeTB4TGpNMUxUTXVOek50T1MwMUxqRTBMUzQ1TGprMFl5NDROU0F4TGpFeElERXVNemdnTWk0ME55QXhMak0xSURRdU1pNHdNeUF4TGpJMkxTNDFJREl1TmpFdE1TNHpOU0F6TGpjemJDNDVMamt6WXpFdU1USXRNUzR5TmlBeExqZ3RNaTQ1T1NBeExqZ3ROQzQyTmlBd0xUSXVNVFV0TGpZNExUTXVPRGd0TVM0NExUVXVNVFJ0TFRVdU5UVWdNaTQ0SURNdU5pQXhMamczTFRNdU5pQXlMak16ZWlJdlBqd3ZjM1puUGc9PSk7d2lkdGg6Mi4xNWVtO2hlaWdodDoyLjE1ZW19Lnl0cC12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLWxlbmd0aHtmb250LXdlaWdodDo0MDB9Lnl0cC12aWRlb3dhbGwtc3RpbGwtbWluaSAueXRwLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwtbGVuZ3Roe2Rpc3BsYXk6bm9uZX0ueXRwLXZpZGVvd2FsbC1zdGlsbDpmb2N1cyAueXRwLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwtbWl4LC55dHAtdmlkZW93YWxsLXN0aWxsOmZvY3VzIC55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1yZWd1bGFyLC55dHAtdmlkZW93YWxsLXN0aWxsOmhvdmVyIC55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1taXgsLnl0cC12aWRlb3dhbGwtc3RpbGw6aG92ZXIgLnl0cC12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLXJlZ3VsYXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDApfS55dHAtdmlkZW93YWxsLXN0aWxsW2RhdGEtaXMtbGlzdD10cnVlXTpub3QoW2RhdGEtaXMtbWl4PXRydWVdKSAueXRwLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwtcmVndWxhcntkaXNwbGF5OmJsb2NrfS55dHAtdmlkZW93YWxsLXN0aWxsW2RhdGEtaXMtbWl4PXRydWVdIC55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1taXh7ZGlzcGxheTpibG9ja30ueXRwLXZpZGVvd2FsbC1zdGlsbC1pbWFnZXstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3Zlcjtib3R0b206MDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0ueXRwLXZpZGVvd2FsbC1zdGlsbC1yb3VuZC1sYXJnZSAueXRwLXZpZGVvd2FsbC1zdGlsbC1pbWFnZXtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC12aWRlb3dhbGwtc3RpbGwtcm91bmQtbWVkaXVtIC55dHAtdmlkZW93YWxsLXN0aWxsLWltYWdle2JvcmRlci1yYWRpdXM6OHB4fS55dHAtdmlkZW93YWxsLXN0aWxsLXJvdW5kLWxhcmdlIC55dHAtdmlkZW93YWxsLXN0aWxsLWltYWdle2JvcmRlci1yYWRpdXM6NHB4fS55dHAtdmlkZW93YWxsLXN0aWxsLWluZm8tYXV0aG9ye2Zsb2F0OmxlZnQ7bWFyZ2luLXRvcDoycHh9Lnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1jb250ZW50e2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLHJnYmEoMTIsMTIsMTIsLjgpLHRyYW5zcGFyZW50IDEwMHB4KTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgxMiwxMiwxMiwuOCkgMCx0cmFuc3BhcmVudCAxMDBweCk7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGVhc2U7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBlYXNlO2JvdHRvbTowO2NvbG9yOiNmZmY7bGVmdDowO29wYWNpdHk6MDtwYWRkaW5nOjEwcHg7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0ueXRwLXZpZGVvd2FsbC1zdGlsbC55dHAtdmlkZW93YWxsLXNob3ctdGV4dCAueXRwLXZpZGVvd2FsbC1zdGlsbC1pbmZvLWNvbnRlbnQsLnl0cC12aWRlb3dhbGwtc3RpbGw6Zm9jdXMgLnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1jb250ZW50LC55dHAtdmlkZW93YWxsLXN0aWxsOmhvdmVyIC55dHAtdmlkZW93YWxsLXN0aWxsLWluZm8tY29udGVudHtvcGFjaXR5OjF9Lnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1kdXJhdGlvbntiYWNrZ3JvdW5kOiMwMDA7Ym9yZGVyLXJhZGl1czoycHg7Ym90dG9tOjJweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MTtvcGFjaXR5Oi43NTtwYWRkaW5nOjJweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoycHh9Lnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1kdXJhdGlvbjplbXB0eXtkaXNwbGF5Om5vbmV9Lnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1saXZle2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtYnJhbmQscmdiYSgyMjUsMCw0NSwuOSkpO2JvcmRlci1yYWRpdXM6MnB4O2JvdHRvbToycHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE7b3BhY2l0eTouOTtwYWRkaW5nOjJweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoycHg7ZGlzcGxheTpub25lO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ueXRwLXZpZGVvd2FsbC1zdGlsbC1pbmZvLXRpdGxle2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOjExOCU7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjEuMjttYXgtaGVpZ2h0OjMwcHg7b3ZlcmZsb3c6aGlkZGVufS55dHAtYmlnLW1vZGUgLnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby10aXRsZXtmb250LXdlaWdodDo0MDA7bWF4LWhlaWdodDo0OHB4fS55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbHtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjg2KTtib3R0b206MDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MH0ueXRwLXZpZGVvd2FsbC1zdGlsbDpmb2N1cyAueXRwLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwsLnl0cC12aWRlb3dhbGwtc3RpbGw6aG92ZXIgLnl0cC12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVse2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuODYpfS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbHt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO2N1cnNvcjpwb2ludGVyO3ZlcnRpY2FsLWFsaWduOnRvcDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uO21hcmdpbi1ib3R0b206MTZweDstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7LXdlYmtpdC10cmFuc2l0aW9uOmJveC1zaGFkb3cgLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtYm94LXNoYWRvdyAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOi13ZWJraXQtYm94LXNoYWRvdyAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJveC1zaGFkb3cgLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3gtc2hhZG93IC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtYm94LXNoYWRvdyAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtmb250LXNpemU6MTFweH0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW5mb3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0cC1zaG93LXRpbGVzIC55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbHtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTstbXMtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbFtkYXRhLWlzLWxpdmU9dHJ1ZV0gLnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWluZm8tZHVyYXRpb257ZGlzcGxheTpub25lfS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwtbWl4LC55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwtcmVndWxhcntkaXNwbGF5Om5vbmU7aGVpZ2h0OjIuMTVlbTtwYWRkaW5nLXJpZ2h0OjEwcHg7Y29sb3I6I2ZmZjtmb250LXdlaWdodDo1MDA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwtaWNvbntkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhodGJHNXpPbmhzYVc1clBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1TDNoc2FXNXJJaUIyYVdWM1FtOTRQU0l3SURBZ016WWdNellpUGp4MWMyVWdlR3hwYm1zNmFISmxaajBpSTNsMGNDMXpkbWN0Y0d4aGVXeHBjM1FpSUhOMGNtOXJaVDBpSXpBd01DSWdjM1J5YjJ0bExXOXdZV05wZEhrOUlpNHhOU0lnYzNSeWIydGxMWGRwWkhSb1BTSXlJaTgrUEhCaGRHZ2dhV1E5SW5sMGNDMXpkbWN0Y0d4aGVXeHBjM1FpSUdacGJHdzlJaU5tWm1ZaUlHUTlJazB5TWk0MU15QXlNUzQwTW5ZMkxqZzFiRFV1TmpZdE15NDBNaTAxTGpZMkxUTXVOREo2YlMweE1TNHpNeUF3YURrdU1EWjJNaTR5T0VneE1TNHllbTB3TFRrdU1UUm9NVE11Tm5ZeUxqSTRTREV4TGpKNmJUQWdOQzQxTjJneE15NDJkakl1TWpoSU1URXVNbm9pTHo0OEwzTjJaejQ9KTt3aWR0aDoyLjE1ZW07aGVpZ2h0OjIuMTVlbX0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLW1peC1pY29ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGh0Ykc1ek9uaHNhVzVyUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMM2hzYVc1cklpQjJhV1YzUW05NFBTSXdJREFnTXpZZ016WWlQangxYzJVZ2VHeHBibXM2YUhKbFpqMGlJM2wwY0MxemRtY3RiV2w0SWlCemRISnZhMlU5SWlNd01EQWlJSE4wY205clpTMXZjR0ZqYVhSNVBTSXVNVFVpSUhOMGNtOXJaUzEzYVdSMGFEMGlNaUl2UGp4d1lYUm9JR2xrUFNKNWRIQXRjM1puTFcxcGVDSWdabWxzYkQwaUkyWm1aaUlnWkQwaVRUSTFMalkxSURFNFl5MHVNRElnTWk0ek1TMHVPRGNnTkM0ME1TMHlMakkxSURZdU1EWnNMamt1T1RSak1TNDJPUzB4TGpnZ01pNDNMVFF1TWpjZ01pNDNMVGR6TFRFdU1ERXROUzR5TVMweUxqY3ROMnd0TGprdU9UTkJPUzQxTkNBNUxqVTBJREFnTUNBeElESTFMalkxSURFNGJTMHhOUzR6SURCakxqQXhMVEl1TXpJdU9EWXROQzQwTWlBeUxqSTFMVFl1TURkc0xTNDVMUzQ1TTBNeE1DQXhNaTQzT1NBNUlERTFMakkzSURrZ01UaHpNU0ExTGpJZ01pNDNJRGRzTGprdExqazBZeTB4TGpNNUxURXVOalV0TWk0eU5DMHpMamMxTFRJdU1qVXROaTR3Tm0weUxqY2dNR010TGpBMExURXVOek11TkRrdE15NHdPU0F4TGpNMUxUUXVNbXd0TGprdExqazBZeTB4TGpFeklERXVNall0TVM0NElESXVPVGt0TVM0NElEVXVNVFFnTUNBeExqWTNMalkzSURNdU5DQXhMamdnTkM0Mk5td3VPUzB1T1ROakxTNDROaTB4TGpFeUxURXVNemt0TWk0ME55MHhMak0xTFRNdU56TnRPUzAxTGpFMExTNDVMamswWXk0NE5TQXhMakV4SURFdU16Z2dNaTQwTnlBeExqTTFJRFF1TWk0d015QXhMakkyTFM0MUlESXVOakV0TVM0ek5TQXpMamN6YkM0NUxqa3pZekV1TVRJdE1TNHlOaUF4TGpndE1pNDVPU0F4TGpndE5DNDJOaUF3TFRJdU1UVXRMalk0TFRNdU9EZ3RNUzQ0TFRVdU1UUnRMVFV1TlRVZ01pNDRJRE11TmlBeExqZzNMVE11TmlBeUxqTXplaUl2UGp3dmMzWm5QZz09KTt3aWR0aDoyLjE1ZW07aGVpZ2h0OjIuMTVlbX0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLWxlbmd0aHtmb250LXdlaWdodDo0MDB9Lnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsW2RhdGEtaXMtbGlzdD10cnVlXTpub3QoW2RhdGEtaXMtbWl4PXRydWVdKSAueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLXJlZ3VsYXJ7ZGlzcGxheTpibG9ja30ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGxbZGF0YS1pcy1taXg9dHJ1ZV0gLnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1taXh7ZGlzcGxheTpibG9ja30ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW1hZ2V7LXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO2JhY2tncm91bmQtcG9zaXRpb246NTAlO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7d2lkdGg6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXItcmFkaXVzOjhweH0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGw6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYnV0dG9uLXNlY29uZGFyeSk7LXdlYmtpdC1ib3gtc2hhZG93OjAgMCAwIDhweCB2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYnV0dG9uLXNlY29uZGFyeSk7Ym94LXNoYWRvdzowIDAgMCA4cHggdmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJ1dHRvbi1zZWNvbmRhcnkpO2JvcmRlci1yYWRpdXM6OHB4fS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbDphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdG9uYWwtaG92ZXIpOy13ZWJraXQtYm94LXNoYWRvdzowIDAgMCA4cHggdmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRvbmFsLWhvdmVyKTtib3gtc2hhZG93OjAgMCAwIDhweCB2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdG9uYWwtaG92ZXIpO2JvcmRlci1yYWRpdXM6OHB4fUBzdXBwb3J0cyAoYXNwZWN0LXJhdGlvOjEvMSl7Lnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWltYWdle2FzcGVjdC1yYXRpbzoxNi85fX1Ac3VwcG9ydHMgbm90IChhc3BlY3QtcmF0aW86MS8xKXsueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW1hZ2V7aGVpZ2h0OjA7cGFkZGluZy1ib3R0b206NTYuMjUlfX0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW5mb3ttYXJnaW4tdG9wOjhweH0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW5mby1hdXRob3I6bm90KDplbXB0eSl7bWFyZ2luLXRvcDo0cHg7Zm9udC1zaXplOjEzMCU7bWF4LWhlaWdodDoyMHB4O292ZXJmbG93OmhpZGRlbjtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC43KX0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtdmlldy1jb3VudC1hbmQtZGF0ZS1pbmZvOm5vdCg6ZW1wdHkpe2ZvbnQtc2l6ZToxMzAlO21heC1oZWlnaHQ6MjBweDtvdmVyZmxvdzpoaWRkZW47Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNyl9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlIC55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1pbmZvLWF1dGhvciwueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1pbmZvLWF1dGhvcnttYXgtaGVpZ2h0OnVuc2V0fS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1pbmZvLWNvbnRlbnR7Y29sb3I6I2ZmZjt3aWR0aDoxMDAlO29wYWNpdHk6MTtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWluZm8tZHVyYXRpb24sLnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWluZm8tbGl2ZXtib3JkZXItcmFkaXVzOjJweDtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206OHB4O3JpZ2h0OjhweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MTtvcGFjaXR5Oi43NTtwYWRkaW5nOjJweDtmb250LXNpemU6MTIwJX0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW5mby1kdXJhdGlvbntiYWNrZ3JvdW5kOiMwMDA7Zm9udC13ZWlnaHQ6NTAwO29wYWNpdHk6Ljc1fS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1pbmZvLWxpdmV7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1icmFuZCxyZ2JhKDIyNSwwLDQ1LC45KSk7b3BhY2l0eTouOTtkaXNwbGF5Om5vbmU7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbDpub3QoW2RhdGEtaXMtbGl2ZT10cnVlXSkgLnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWluZm8tbGl2ZXtkaXNwbGF5Om5vbmV9Lnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWluZm8tZHVyYXRpb246ZW1wdHl7ZGlzcGxheTpub25lfS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1pbmZvLXRpdGxlOm5vdCg6ZW1wdHkpe2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1saW5lLWNsYW1wOjI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2ZvbnQtc2l6ZToxNTAlO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxLjI7bWF4LWhlaWdodDo0MHB4O292ZXJmbG93OmhpZGRlbn0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWluZm8tdGl0bGUsLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW5mby10aXRsZXttYXgtaGVpZ2h0OnVuc2V0fS55dHAtdmFyaWFibGUtc3BlZWQtcGFuZWwtY29udGVudHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cGFkZGluZzoyNHB4IDE2cHggMTZweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1jb250ZW50IC55dHAtaW5wdXQtc2xpZGVyLXNlY3Rpb257LXdlYmtpdC1ib3gtZmxleDoxOy13ZWJraXQtZmxleC1ncm93OjE7ZmxleC1ncm93OjF9Lnl0cC1zcGVlZC1kaXNwbGF5LWNvbnRhaW5lcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW4tYm90dG9tOjI0cHh9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1kaXNwbGF5e3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6OTAwO2xpbmUtaGVpZ2h0OjIycHh9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1zbGlkZXItY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4O2dhcDoxNnB4O21hcmdpbi1ib3R0b206MjRweH0ueXRwLXZhcmlhYmxlLXNwZWVkLXBhbmVsLXNsaWRlci1jb250YWluZXIgLnl0cC1pbnB1dC1zbGlkZXJ7d2lkdGg6MTAwJX0ueXRwLXZhcmlhYmxlLXNwZWVkLXBhbmVsLWNoaXBze2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4O2dhcDo4cHg7LXdlYmtpdC1ib3gtYWxpZ246c3RhcnQ7LXdlYmtpdC1hbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1idXR0b257Ym9yZGVyOm5vbmU7Y3Vyc29yOnBvaW50ZXI7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE2cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4xKTtjb2xvcjojZmZmO2hlaWdodDozMnB4O3RleHQtYWxpZ246Y2VudGVyO2JvcmRlci1yYWRpdXM6MTZweDstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLXZhcmlhYmxlLXNwZWVkLXBhbmVsLWJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjIpfS55dHAtdmFyaWFibGUtc3BlZWQtcGFuZWwtYnV0dG9uOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjMpfS55dHAtdmFyaWFibGUtc3BlZWQtcGFuZWwtY2hpcHMgLnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1idXR0b257Zm9udC1zaXplOjEycHg7d2lkdGg6NTNweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo0cHh9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1zbGlkZXItY29udGFpbmVyIC55dHAtdmFyaWFibGUtc3BlZWQtcGFuZWwtYnV0dG9ue2ZvbnQtc2l6ZToyNHB4O3dpZHRoOjMycHh9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1jb250ZW50IC55dHAtc3BlZWRzbGlkZXItaW5kaWNhdG9yLWNvbnRhaW5lcntkaXNwbGF5Om5vbmV9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1wcmVzZXQtYnV0dG9uLXdyYXBwZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1wcmVzZXQtYnV0dG9uLWxhYmVsLXRleHR7Zm9udC1zaXplOjEwcHg7bGluZS1oZWlnaHQ6MTRweDttYXJnaW4tdG9wOjRweDtmb250LXdlaWdodDo0MDA7Y29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRleHQtc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjcpKX0ueXRwLXZhcmlhYmxlLXNwZWVkLXBhbmVsLXByZW1pdW0tdXBzZWxsLWljb257ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7d2lkdGg6MTRweDtoZWlnaHQ6MTRweDtiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXlOQ0lnYUdWcFoyaDBQU0l5TkNJZ2RtbGxkMEp2ZUQwaUxUSWdMVElnTWpRZ01qUWlQanh3WVhSb0lHWnBiR3c5SWlOak1EQWlJR1E5SWswd0lERXVORE5ETUNBdU5qUXVOalFnTUNBeExqUXpJREJvTVRjdU1UTkRNVGt1TXpVZ01DQXlNQ0F1TmpRZ01qQWdNUzQwTTNZeE55NHhNMk13SUM0M09TMHVOalVnTVM0ME5DMHhMalEwSURFdU5EUklNUzQwTTBNdU5qUWdNakFnTUNBeE9TNHpOU0F3SURFNExqVTJXbTB3SURBaUx6NDhjR0YwYUNCbWFXeHNQU0lqWm1abUlpQmtQU0pOTnk0NE9DQXhNUzQwTW5ZMExqSTVTRFV1TXpkV015NDFNbWcwTGpjMVl5NDVNaUF3SURFdU56SXVNVGNnTWk0ME1pNDFMalk1TGpNMElERXVNakl1T0RFZ01TNDJJREV1TkRNdU16Y3VOakl1TlRZZ01TNHpNaTQxTmlBeUxqRXhJREFnTVM0eE9TMHVOREVnTWk0eE15MHhMakl5SURJdU9ESXRMamd5TGpZNUxURXVPVFVnTVM0d05DMHpMalFnTVM0d05GcHRNQzB5TGpBMGFESXVNalJqTGpZM0lEQWdNUzR4T0MwdU1UVWdNUzQxTWkwdU5EY3VNelV0TGpNeExqVXpMUzQzTlM0MU15MHhMak0wY3kwdU1UZ3RNUzR3TnkwdU5UTXRNUzQwTldNdExqTTFMUzR6TmkwdU9EUXRMalUxTFRFdU5EWXRMalUyYUMweUxqTmFiVEFnTUNJdlBqd3ZjM1puUGc9PSk7Ym9yZGVyLXJhZGl1czozcHg7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1zaXplOmNvdmVyfS55dHAtdmFyaWFibGUtc3BlZWQtcGFuZWwtcHJlbWl1bS1iYWRnZXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxMDAlO21hcmdpbi1yaWdodDo4cHg7dG9wOjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtvcGFjaXR5OjA7dmlzaWJpbGl0eTpoaWRkZW47d2lkdGg6MjRweDtoZWlnaHQ6MjJweDtiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXlOQ0lnYUdWcFoyaDBQU0l5TkNJZ2RtbGxkMEp2ZUQwaUxUSWdMVElnTWpRZ01qUWlQanh3WVhSb0lHWnBiR3c5SWlOak1EQWlJR1E5SWswd0lERXVORE5ETUNBdU5qUXVOalFnTUNBeExqUXpJREJvTVRjdU1UTkRNVGt1TXpVZ01DQXlNQ0F1TmpRZ01qQWdNUzQwTTNZeE55NHhNMk13SUM0M09TMHVOalVnTVM0ME5DMHhMalEwSURFdU5EUklNUzQwTTBNdU5qUWdNakFnTUNBeE9TNHpOU0F3SURFNExqVTJXbTB3SURBaUx6NDhjR0YwYUNCbWFXeHNQU0lqWm1abUlpQmtQU0pOTnk0NE9DQXhNUzQwTW5ZMExqSTVTRFV1TXpkV015NDFNbWcwTGpjMVl5NDVNaUF3SURFdU56SXVNVGNnTWk0ME1pNDFMalk1TGpNMElERXVNakl1T0RFZ01TNDJJREV1TkRNdU16Y3VOakl1TlRZZ01TNHpNaTQxTmlBeUxqRXhJREFnTVM0eE9TMHVOREVnTWk0eE15MHhMakl5SURJdU9ESXRMamd5TGpZNUxURXVPVFVnTVM0d05DMHpMalFnTVM0d05GcHRNQzB5TGpBMGFESXVNalJqTGpZM0lEQWdNUzR4T0MwdU1UVWdNUzQxTWkwdU5EY3VNelV0TGpNeExqVXpMUzQzTlM0MU15MHhMak0wY3kwdU1UZ3RNUzR3TnkwdU5UTXRNUzQwTldNdExqTTFMUzR6TmkwdU9EUXRMalUxTFRFdU5EWXRMalUyYUMweUxqTmFiVEFnTUNJdlBqd3ZjM1puUGc9PSk7Ym9yZGVyLXJhZGl1czozcHg7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGxpbmVhcix2aXNpYmlsaXR5IDBzIGxpbmVhciAuMXM7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBsaW5lYXIsdmlzaWJpbGl0eSAwcyBsaW5lYXIgLjFzfS55dHAtdmFyaWFibGUtc3BlZWQtcGFuZWwtcHJlbWl1bS1iYWRnZS12aXNpYmxle29wYWNpdHk6MTt2aXNpYmlsaXR5OnZpc2libGU7LXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OjBzO3RyYW5zaXRpb24tZGVsYXk6MHN9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC12b2x1bWUtcG9wb3Zlcnt2aXNpYmlsaXR5OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXItcmFkaXVzOjIycHg7cGFkZGluZzoxMnB4IDEwcHg7bWFyZ2luLWJvdHRvbTowOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIgc3Zney13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXZvbHVtZS1wb3BvdmVyey13ZWJraXQtdHJhbnNpdGlvbjptYXJnaW4tYm90dG9tIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOm1hcmdpbi1ib3R0b20gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO2JvdHRvbTp2YXIoLS15dC1kZWxoaS1waWxsLWhlaWdodCw0OHB4KX1Ac3VwcG9ydHMgKCgtd2Via2l0LXdyaXRpbmctbW9kZTp2ZXJ0aWNhbC1ybCkgb3IgKHdyaXRpbmctbW9kZTp2ZXJ0aWNhbC1ybCkpey55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIgLnl0cC1pbnB1dC1zbGlkZXItc2VjdGlvbi55dHAtdmVydGljYWwtc2xpZGVyIC55dHAtaW5wdXQtc2xpZGVye2hlaWdodDo5NnB4fX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXZvbHVtZS1wb3BvdmVyIC55dHAtaW5wdXQtc2xpZGVyOjotd2Via2l0LXNsaWRlci10aHVtYnt3aWR0aDoxMnB4O2hlaWdodDoxMnB4Oy13ZWJraXQtYm94LXNoYWRvdzowIDFweCAxcHggcmdiYSgwLDAsMCwuOCk7Ym94LXNoYWRvdzowIDFweCAxcHggcmdiYSgwLDAsMCwuOCk7bWFyZ2luLXJpZ2h0Oi01cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC12b2x1bWUtcG9wb3ZlciAueXRwLWlucHV0LXNsaWRlcjo6LW1vei1yYW5nZS10aHVtYnt3aWR0aDoxMnB4O2hlaWdodDoxMnB4O2JveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIgLnl0cC1pbnB1dC1zbGlkZXI6Oi1tcy10aHVtYnt3aWR0aDoxMnB4O2hlaWdodDoxMnB4O2JveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIgLnl0cC1pbnB1dC1zbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre3dpZHRoOjJweDstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjgpO2JveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIgLnl0cC1pbnB1dC1zbGlkZXI6Oi1tb3otcmFuZ2UtdHJhY2t7d2lkdGg6MnB4O2JveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIgLnl0cC1pbnB1dC1zbGlkZXI6aG92ZXJ7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1kZWxoaS1tb2Rlcm46bm90KC5zZWVraW5nLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIueXRwLXZvbHVtZS1wb3BvdmVyLWhvdmVyaW5ne3Zpc2liaWxpdHk6dmlzaWJsZTttYXJnaW4tYm90dG9tOjhweDstd2Via2l0LXRyYW5zaXRpb246bWFyZ2luLWJvdHRvbSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjptYXJnaW4tYm90dG9tIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC12b2x1bWUtcG9wb3ZlcntsZWZ0Oi00cHh9Lnl0cC1iaWctbW9kZS55dHAtZGVsaGktbW9kZXJuOm5vdCguc2Vla2luZy1tb2RlKSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXN0YW5kYWxvbmUtbXV0ZS1idXR0b24gLnl0cC12b2x1bWUtcG9wb3ZlcntsZWZ0OjRweH0ueXRwLWJpZy1tb2RlLnl0cC1kZWxoaS1tb2Rlcm46bm90KC5zZWVraW5nLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXJ7Ym90dG9tOnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpfS55dHAtdm9sdW1lLXBhbmVse2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjA7aGVpZ2h0OjEwMCU7LXdlYmtpdC10cmFuc2l0aW9uOm1hcmdpbiAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSx3aWR0aCAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm1hcmdpbiAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSx3aWR0aCAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTtjdXJzb3I6cG9pbnRlcjtvdXRsaW5lOjB9Lnl0cC1kZWxoaS1ob3Jpem9udGFsLXZvbHVtZS1jb250cm9scy55dHAtdm9sdW1lLXBhbmVsey13ZWJraXQtdHJhbnNpdGlvbjptYXJnaW4gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHdpZHRoIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOm1hcmdpbiAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksd2lkdGggLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtdm9sdW1lLXNsaWRlci1hY3RpdmUgLnl0cC12b2x1bWUtcGFuZWx7d2lkdGg6NTJweDttYXJnaW4tcmlnaHQ6M3B4Oy13ZWJraXQtdHJhbnNpdGlvbjptYXJnaW4gLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSksd2lkdGggLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjptYXJnaW4gLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSksd2lkdGggLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1kZWxoaS1ob3Jpem9udGFsLXZvbHVtZS1jb250cm9scy55dHAtdm9sdW1lLXNsaWRlci1hY3RpdmUgLnl0cC12b2x1bWUtcGFuZWx7LXdlYmtpdC10cmFuc2l0aW9uOm1hcmdpbiAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksd2lkdGggLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246bWFyZ2luIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx3aWR0aCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1iaWctbW9kZSAueXRwLXZvbHVtZS1zbGlkZXItYWN0aXZlIC55dHAtdm9sdW1lLXBhbmVse3dpZHRoOjc4cHg7bWFyZ2luLXJpZ2h0OjVweH0ueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtdm9sdW1lLXBhbmVsOmZvY3Vzey13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC44KTtib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCByZ2JhKDI3LDEyNywyMDQsLjgpfS55dHAtYmlnLW1vZGUgLnl0cC12b2x1bWUtc2xpZGVye21pbi1oZWlnaHQ6NTRweH0ueXRwLXZvbHVtZS1zbGlkZXJ7aGVpZ2h0OjEwMCU7bWluLWhlaWdodDozNnB4O3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbn0ueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxle3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7d2lkdGg6MTJweDtoZWlnaHQ6MTJweDtib3JkZXItcmFkaXVzOjZweDttYXJnaW4tdG9wOi02cHg7YmFja2dyb3VuZDojZmZmfS55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMgLnl0cC12b2x1bWUtc2xpZGVyLWhhbmRsZXstd2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1iaWctbW9kZSAueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxle3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7Ym9yZGVyLXJhZGl1czo5cHg7bWFyZ2luLXRvcDotOXB4fS55dHAtYmlnLW1vZGUueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXNsaWRlci1oYW5kbGV7d2lkdGg6MTJweDtoZWlnaHQ6MTJweDttYXJnaW4tdG9wOi02cHg7Ym9yZGVyLXJhZGl1czo2cHg7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfS55dHAtdm9sdW1lLXNsaWRlci1oYW5kbGU6YWZ0ZXIsLnl0cC12b2x1bWUtc2xpZGVyLWhhbmRsZTpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmJsb2NrO3RvcDo1MCU7bGVmdDowO2hlaWdodDozcHg7bWFyZ2luLXRvcDotMnB4O3dpZHRoOjY0cHh9Lnl0cC1iaWctbW9kZS55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMgLnl0cC12b2x1bWUtc2xpZGVyLWhhbmRsZTphZnRlciwueXRwLWJpZy1tb2RlLnl0cC1kZWxoaS1ob3Jpem9udGFsLXZvbHVtZS1jb250cm9scyAueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxlOmJlZm9yZSwueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXNsaWRlci1oYW5kbGU6YWZ0ZXIsLnl0cC1kZWxoaS1ob3Jpem9udGFsLXZvbHVtZS1jb250cm9scyAueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxlOmJlZm9yZXtoZWlnaHQ6MnB4O21hcmdpbi10b3A6LTFweH0ueXRwLWJpZy1tb2RlIC55dHAtdm9sdW1lLXNsaWRlci1oYW5kbGU6YWZ0ZXIsLnl0cC1iaWctbW9kZSAueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxlOmJlZm9yZXtoZWlnaHQ6NHB4O21hcmdpbi10b3A6LTJweDt3aWR0aDo5NnB4fS55dHAtdm9sdW1lLXNsaWRlci1oYW5kbGU6YmVmb3Jle2xlZnQ6LTU4cHg7YmFja2dyb3VuZDojZmZmfS55dHAtYmlnLW1vZGUgLnl0cC12b2x1bWUtc2xpZGVyLWhhbmRsZTpiZWZvcmV7bGVmdDotODdweH0ueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxlOmFmdGVye2xlZnQ6NnB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMil9Lnl0cC1iaWctbW9kZSAueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxlOmFmdGVye2xlZnQ6OXB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMil9Lnl0cC13YXRjaC1vbi15b3V0dWJlLWJ1dHRvbntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MWVtfS55dHAtd2F0Y2gtb24teW91dHViZS1idXR0b257Ym9yZGVyLXJhZGl1czoyOHB4O2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMyk7Zm9udDo1MDAgMTZweC8xNnB4IFlvdVR1YmUgTm90byxSb2JvdG8sQXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtY29udGludWUtd2F0Y2hpbmctYnV0dG9uLnl0cC13YXRjaC1vbi15b3V0dWJlLWJ1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y29sb3I6IzBmMGYwZn0ueXRwLXdhdGNoLW9uLXlvdXR1YmUtYnV0dG9uOmhvdmVye2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMSl9Lnl0cC1jb250aW51ZS13YXRjaGluZy1idXR0b24ueXRwLXdhdGNoLW9uLXlvdXR1YmUtYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNTtjb2xvcjojMGYwZjBmfS55dHAtd2F0Y2gtb24teW91dHViZS1idXR0b246Zm9jdXN7Ym9yZGVyOjJweCBzb2xpZCB3aGl0ZX0ueXRwLWNvbnRpbnVlLXdhdGNoaW5nLWJ1dHRvbi55dHAtd2F0Y2gtb24teW91dHViZS1idXR0b246Zm9jdXN7Ym9yZGVyOjJweCBzb2xpZCB3aGl0ZTtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzBmMGYwZn0ueXRwLXdhdGNoLW9uLXlvdXR1YmUtYnV0dG9uOmFjdGl2ZXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSguOTQpOy1tcy10cmFuc2Zvcm06c2NhbGUoLjk0KTt0cmFuc2Zvcm06c2NhbGUoLjk0KTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9LndhdGNoLWFnYWluLW9uLXlvdXR1YmUtZW5kc2NyZWVue2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1ufS53YXRjaC1hZ2Fpbi1vbi15b3V0dWJlLWVuZHNjcmVlbnstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRwLXdhdGNoLWFnYWluLW9uLXlvdXR1YmUtZW5kc2NyZWVuLW1vcmUtdmlkZW9zLWNvbnRhaW5lcnt3aWR0aDoxMDAlfS55dHAtYmlnLW1vZGUgLnl0cC13YXRjaC1hZ2Fpbi1vbi15b3V0dWJlLWVuZHNjcmVlbi1tb3JlLXZpZGVvcy1jb250YWluZXIgLnl0cC1tb3JlLXZpZGVvcy12aWV3e2JvdHRvbTp1bnNldH0ueXRwLXdhdGNoLWFnYWluLW9uLXlvdXR1YmUtZW5kc2NyZWVuLW1vcmUtdmlkZW9zLWNvbnRhaW5lciAueXRwLW1vcmUtdmlkZW9zLXZpZXd7Ym9yZGVyLXJhZGl1czoycHg7ZGlyZWN0aW9uOmx0cjttYXJnaW46MTJweDtiYWNrZ3JvdW5kOnJnYmEoMjMsMjMsMjMsLjkpO3BhZGRpbmc6MTJweCAxNnB4IDE2cHg7cG9zaXRpb246cmVsYXRpdmV9Lnl0cC1zaG93LXdhdGNoLWxhdGVyLXRpdGxlLnl0cC13YXRjaC1sYXRlci1idXR0b257bWFyZ2luLWxlZnQ6MTBweDttYXJnaW4tcmlnaHQ6MTBweH0ueXRwLW92ZXJmbG93LXBhbmVsIC55dHAtc2hvdy13YXRjaC1sYXRlci10aXRsZS55dHAtd2F0Y2gtbGF0ZXItYnV0dG9ue21hcmdpbi1sZWZ0OjIwcHg7bWFyZ2luLXJpZ2h0OjIwcHh9Lnl0cC1iaWctbW9kZSAueXRwLWNocm9tZS10b3AgLnl0cC13YXRjaC1sYXRlci1idXR0b24sLnl0cC1jaHJvbWUtdG9wIC55dHAtd2F0Y2gtbGF0ZXItYnV0dG9ue3dpZHRoOmF1dG87aGVpZ2h0OmF1dG99Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1iaWctbW9kZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtd2F0Y2gtbGF0ZXItYnV0dG9ue21pbi13aWR0aDo0OHB4O21heC13aWR0aDo4MHB4fS55dHAtd2F0Y2gtbGF0ZXItaWNvbnttYXJnaW46YXV0bzt3aWR0aDozNnB4O2hlaWdodDozNnB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dHAtYmlnLW1vZGUgLnl0cC13YXRjaC1sYXRlci1pY29ue3dpZHRoOjU0cHg7aGVpZ2h0OjU0cHh9Lnl0cC1vdmVyZmxvdy1wYW5lbCAueXRwLXdhdGNoLWxhdGVyLWljb257d2lkdGg6NjBweDtoZWlnaHQ6NjBweDttYXJnaW4tYm90dG9tOjEwcHh9Lnl0cC13YXRjaC1sYXRlci10aXRsZXtmb250LXdlaWdodDo1MDA7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE0cHg7ZGlzcGxheTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC13YXRjaC1sYXRlci10aXRsZSwueXRwLW92ZXJmbG93LXBhbmVsIC55dHAtd2F0Y2gtbGF0ZXItdGl0bGV7Zm9udC1zaXplOjIwcHh9Lnl0cC1zaG93LXdhdGNoLWxhdGVyLXRpdGxlIC55dHAtd2F0Y2gtbGF0ZXItdGl0bGV7ZGlzcGxheTpibG9ja30uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLWJpZy1tb2RlKSAueXRwLWNocm9tZS10b3AgLnl0cC13YXRjaC1sYXRlci10aXRsZXt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO292ZXJmbG93OmhpZGRlbn0ueXRwLXdhdGNoLWxhdGVyLWljb24gLnl0cC1zcGlubmVyLWNvbnRhaW5lcnt3aWR0aDoyMHB4O3BhZGRpbmctYm90dG9tOjIwcHg7bWFyZ2luLXRvcDotMTBweDttYXJnaW4tbGVmdDotMTBweH0ueXRwLWJpZy1tb2RlIC55dHAtd2F0Y2gtbGF0ZXItaWNvbiAueXRwLXNwaW5uZXItY29udGFpbmVye3dpZHRoOjM1cHg7cGFkZGluZy1ib3R0b206MzVweDttYXJnaW4tdG9wOi0xNy41cHg7bWFyZ2luLWxlZnQ6LTE3LjVweH0ueXRwLXdhdGNoLWxhdGVyLWljb24gLnl0cC1zcGlubmVyLWNpcmNsZXtib3JkZXItd2lkdGg6M3B4fS55dHAtYmlnLW1vZGUgLnl0cC13YXRjaC1sYXRlci1pY29uIC55dHAtc3Bpbm5lci1jaXJjbGV7Ym9yZGVyLXdpZHRoOjVweH0ud2ViZ2x7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjExO3dpZHRoOjEwMCV9LmVuZGVkLW1vZGUgLndlYmdse2Rpc3BsYXk6bm9uZX0ueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAteW91dHViZS1idXR0b24sLnl0cC1kbmkueXRwLWVtYmVkIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC15b3V0dWJlLWJ1dHRvbiwueXRwLWVtYmVkIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC15b3V0dWJlLWJ1dHRvbiwueXRwLWVtYmVkLnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC15b3V0dWJlLWJ1dHRvbiwueXRwLXNtYWxsLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24ueXRwLXlvdXR1YmUtYnV0dG9ue3dpZHRoOjY3cHh9Lnl0cC1lbWJlZCAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAteW91dHViZS1idXR0b24ueXRwLXlvdXR1YmUtbXVzaWMtYnV0dG9ue3dpZHRoOjEyMHB4fS55dHAtZW1iZWQgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24ueXRwLXlvdXR1YmUtYnV0dG9uLnl0cC15b3V0dWJlLW11c2ljLWJ1dHRvbiBzdmd7bWFyZ2luLWxlZnQ6LTI1cHg7aGVpZ2h0OjI0cHh9Lnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24ueXRwLXlvdXR1YmUtYnV0dG9uLm5vLWxpbmssLnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC15b3V0dWJlLWJ1dHRvbi5uby1saW5re2N1cnNvcjpkZWZhdWx0O3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0cC1iaWctbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAteW91dHViZS1idXR0b24sLnl0cC1kbmkueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC15b3V0dWJlLWJ1dHRvbnt3aWR0aDoxMDBweH0ueXRwLWVtYmVkIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAteW91dHViZS1idXR0b24ueXRwLXlvdXR1YmUtbXVzaWMtYnV0dG9ue2hlaWdodDoyNXB4O21hcmdpbi1ib3R0b206N3B4fS55dHAtZHJhd2Vye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7d2lkdGg6MzUwcHg7dGV4dC1hbGlnbjpjZW50ZXI7b3ZlcmZsb3c6aGlkZGVuO3otaW5kZXg6NDc7LXdlYmtpdC10cmFuc2l0aW9uOndpZHRoIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOndpZHRoIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtZHJhd2Vye3dpZHRoOjQyNXB4fS55dHAtZHJhd2VyLWNsb3NlZHt3aWR0aDoyNXB4fS55dHAtYmlnLW1vZGUgLnl0cC1kcmF3ZXItY2xvc2Vke3dpZHRoOjM4cHh9Lnl0cC1kcmF3ZXItY29udGVudHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7d2lkdGg6MzUwcHg7aGVpZ2h0OjEwMCU7cGFkZGluZzo0OHB4IDI1cHggMjVweDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjgpOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtZHJhd2VyLWNvbnRlbnR7d2lkdGg6NDI1cHg7cGFkZGluZzo3MHB4IDE1cHggMTVweH0ueXRwLWRyYXdlci1jbG9zZWQgLnl0cC1kcmF3ZXItY29udGVudHtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1kcmF3ZXItY2xvc2UtYnV0dG9ue3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtwYWRkaW5nOjVweDtmaWxsOndoaXRlfS55dHAtYmlnLW1vZGUgLnl0cC1kcmF3ZXItY2xvc2UtYnV0dG9ue3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7cGFkZGluZzo3cHh9Lnl0cC1kcmF3ZXItY2xvc2VkIC55dHAtZHJhd2VyLWNsb3NlLWJ1dHRvbntkaXNwbGF5Om5vbmV9Lnl0cC1kcmF3ZXItb3Blbi1idXR0b257ZGlzcGxheTpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDowO3dpZHRoOjE1cHg7aGVpZ2h0OjMycHg7bWFyZ2luLXRvcDotMTZweDtwYWRkaW5nOjEwcHggNXB4O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNyl9Lnl0cC1iaWctbW9kZSAueXRwLWRyYXdlci1vcGVuLWJ1dHRvbnt3aWR0aDoyM3B4O2hlaWdodDo0OHB4O21hcmdpbi10b3A6LTI0cHg7cGFkZGluZzoxNXB4IDhweH0ueXRwLWRyYXdlci1jbG9zZWQgLnl0cC1kcmF3ZXItb3Blbi1idXR0b257ZGlzcGxheTpibG9ja30ueXRwLWRyYXdlci1vcGVuLWJ1dHRvbjphZnRlcntkaXNwbGF5OmlubGluZS1ibG9jaztib3JkZXI6NXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yaWdodC1jb2xvcjojYWFhO2JvcmRlci1sZWZ0Om5vbmU7Y29udGVudDoiIn0ueXRwLWJpZy1tb2RlIC55dHAtZHJhd2VyLW9wZW4tYnV0dG9uOmFmdGVye2JvcmRlci1ib3R0b20td2lkdGg6OHB4O2JvcmRlci1yaWdodC13aWR0aDo4cHg7Ym9yZGVyLXRvcC13aWR0aDo4cHh9Lmh0bWw1LXlwYy1tb2R1bGV7bGluZS1oZWlnaHQ6MS4yO3RleHQtYWxpZ246bGVmdH0uaHRtbDUteXBjLWFjdGlvbi1oZWFkaW5ne21hcmdpbi1ib3R0b206NXB4O2ZvbnQtc2l6ZToxOHB4O2NvbG9yOiM5OTl9Lnl0cC1zbWFsbC1tb2RlIC5odG1sNS15cGMtYWN0aW9uLWhlYWRpbmd7ZGlzcGxheTpub25lfS5odG1sNS15cGMtdGl0bGV7Zm9udC1zaXplOjIwcHh9Lmh0bWw1LXlwYy10aHVtYm5haWx7ZmxvYXQ6bGVmdH0uaHRtbDUteXBjLXRodW1ibmFpbCBpbWd7d2lkdGg6MTAwcHg7bWFyZ2luOjAgMTBweCAxMHB4IDB9Lmh0bWw1LXlwYy10aHVtYm5haWwgaW1nLmF2YXRhcntib3JkZXItcmFkaXVzOjUwJTtvdmVyZmxvdzpoaWRkZW59Lmh0bWw1LXlwYy10aHVtYm5haWwgaW1nLmxhbmRzY2FwZXt3aWR0aDoxNjBweH0ueXRwLXNtYWxsLW1vZGUgLmh0bWw1LXlwYy10aHVtYm5haWwgaW1ne3dpZHRoOjUwcHh9Lnl0cC1zbWFsbC1tb2RlIC5odG1sNS15cGMtdGh1bWJuYWlsIGltZy5sYW5kc2NhcGV7d2lkdGg6ODBweH0ueXRwLWJpZy1tb2RlIC5odG1sNS15cGMtdGh1bWJuYWlsIGltZ3t3aWR0aDoxNTBweDttYXJnaW46MCAxNXB4IDE4cHggMH0ueXRwLWJpZy1tb2RlIC5odG1sNS15cGMtdGh1bWJuYWlsIGltZy5sYW5kc2NhcGV7d2lkdGg6MjQwcHh9Lmh0bWw1LXlwYy1kZXNjcmlwdGlvbntmb250LXNpemU6MTRweH0ueXRwLXNtYWxsLW1vZGUgLmh0bWw1LXlwYy1kZXNjcmlwdGlvbnttYXJnaW4tdG9wOjEwcHh9Lnl0cC1iaWctbW9kZSAuaHRtbDUteXBjLWRlc2NyaXB0aW9ue21hcmdpbi10b3A6MzhweH0uaHRtbDUteXBjLXB1cmNoYXNle2ZvbnQtd2VpZ2h0OjUwMDtmb250LXNpemU6MTRweDttYXJnaW46MTJweCAwO3BhZGRpbmc6MTBweCAyMHB4O2JvcmRlci1yYWRpdXM6MnB4O2JhY2tncm91bmQ6IzI3OTNlNn0ueXRwLWJpZy1tb2RlIC5odG1sNS15cGMtcHVyY2hhc2V7bWFyZ2luOjE4cHggMDtwYWRkaW5nOjE1cHggMjBweDtib3JkZXItcmFkaXVzOjNweH0uaHRtbDUteXBjLXB1cmNoYXNlOmhvdmVye2JhY2tncm91bmQ6IzEyNmRiM30uaHRtbDUteXBjLXB1cmNoYXNlLmh0bWw1LXlwYy1yb3VuZGVke2JvcmRlci1yYWRpdXM6MThweH0uaHRtbDUteXBjLW92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7cGFkZGluZzo1cHg7bWFyZ2luLWxlZnQ6MTJweDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDo2Njtwb2ludGVyLWV2ZW50czpub25lO3RleHQtc2hhZG93OjAgMCAycHggcmdiYSgwLDAsMCwuNSl9Lnl0cC1iaWctbW9kZSAuaHRtbDUteXBjLW92ZXJsYXl7cGFkZGluZzo4cHg7bWFyZ2luLWxlZnQ6MjRweH0uaHRtbDUteXBjLWVuZHNjcmVlbntkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7cGFkZGluZzo1MXB4IDIxcHggMjFweDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjc1KTt6LWluZGV4OjM2fS55dHAtc21hbGwtbW9kZSAuaHRtbDUteXBjLWVuZHNjcmVlbntwYWRkaW5nLXRvcDoyMXB4fS55dHAteXBjLWNsaWNrd3JhcC1vdmVybGF5e3BhZGRpbmc6MjVweCAyMHB4IDA7ei1pbmRleDo2OX0ueXRwLXlwYy1jbGlja3dyYXAtaGVhZGVye2JvcmRlci1ib3R0b206MXB4IHNvbGlkICM4ODg7cGFkZGluZzowIDAgMTVweCA1cHg7Zm9udC1zaXplOjE4MiU7Zm9udC13ZWlnaHQ6NDAwfS55dHAteXBjLWNsaWNrd3JhcC1kZXNjcmlwdGlvbnttYXJnaW46MTVweCAwIDAgNXB4O2ZvbnQtc2l6ZToxMjclfS55dHAteXBjLWNsaWNrd3JhcC1jb25maXJte21hcmdpbjoyMHB4IDAgMCA1cHg7cGFkZGluZzo3cHggMTBweDtiYWNrZ3JvdW5kLWNvbG9yOiMzN2Q7Ym9yZGVyLXJhZGl1czoycHh9Lnl0cC15cGMtY2xpY2t3cmFwLWNvbmZpcm06aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjZjfS55dHAteXRvLXByZXJvbGwtbWVzc2FnZXtkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7cGFkZGluZzo1cHg7bWFyZ2luLWxlZnQ6MTJweDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDo2NTtwb2ludGVyLWV2ZW50czpub25lO3RleHQtc2hhZG93OjAgMCAycHggcmdiYSgwLDAsMCwuNSl9Lnl0cC15dG8tcHJlcm9sbCAueXRwLXl0by1wcmVyb2xsLW1lc3NhZ2V7ZGlzcGxheTpibG9ja31zZW50aW5lbHt9"}},"time_used":28,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":19,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/assets/shared-kb1yqHaA.js","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:43.324Z","timestamp":1785158443324,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"1857279285.rsc.cdn77.org","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 14:34:45 GMT","end":"Wed, 02 Sep 2026 14:34:44 GMT"},"fingerprint":{"sha1":"92:5D:A0:17:13:91:72:7B:B6:8C:6A:7D:A9:55:7F:C8:A9:47:11:99","sha256":"0E:FC:E3:4D:AD:32:B2:11:05:DC:E3:CD:CC:9E:10:DC:C5:2D:9E:1C:D7:C1:9C:00:92:15:43:C5:B7:0B:3A:D6"}}},"request":{"raw":"GET /assets/shared-kb1yqHaA.js HTTP/1.1\r\nHost: widget-v3.smartsuppcdn.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://uniz-coinzltd.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 13:20:43 GMT\r\ncontent-type: application/javascript\r\naccess-control-allow-origin: *\r\ncache-control: max-age=31536000, public, immutable\r\netag: W/\"6a670743-42705\"\r\nexpires: Tue, 27 Jul 2027 07:27:08 GMT\r\nlast-modified: Mon, 27 Jul 2026 07:22:43 GMT\r\nx-77-nzt: k6PzFHJO7aCMpp02ZZpbKp50f0u58Q+QowWdzAD7V0BT3OyuW8uBGNQD0NCWmLPtcHIXzjM\r\nx-77-nzt-ray: fdb54123304fbe6c2b5b676af1d48213\r\nage: 19\r\nx-77-cache: HIT\r\nx-77-age: 21183\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nserver: CDN77-Turbo\r\nx-77-pop: stockholmSE\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"CDN77","description":"CDN77 is a content delivery network (CDN).","website":"https://www.cdn77.com","common_platform_enumeration":"","icon":"CDN77.png","categories":["CDN"]}],"data":{"size":272133,"size_decoded":92601,"mime_type":"application/javascript","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (44710)","md5":"4a99d6fd0e84ed566d578d0ed5dea128","sha1":"c729468068793db7ca783d243b2ec065b6e2f202","sha256":"99501ff83cea2d37fb29f4ff7e0bfc1a93655e56db91bce74171fe29f0821884","sha512":"fcab2b13f37fe49c7a500be1285445ec1dfb120ed4f6d909925ea5616ee9f62d999fe83c1f8210dcc1742528ee3469e5671b34191317836ab4ed3b020ade8608","ssdeep":"6144:mLjnOEIL18ad2jJKaQF+tRkYcuBa+y+mFJW:iOEIZRd29Uqj4r+mF4","tlshash":"b3443ad53294b03543db51e6906f1106b33e5c58580d812cf269ede638baec8a2f7fb8","first_seen":"2026-07-27T07:28:16.16312Z","last_seen":"2026-07-29T06:17:50.104199Z","times_seen":1066,"resource_available":true,"data":"dmFyIGU9T2JqZWN0LmNyZWF0ZSx0PU9iamVjdC5kZWZpbmVQcm9wZXJ0eSxuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iscj1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyxpPU9iamVjdC5nZXRQcm90b3R5cGVPZixhPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksbz0oZSx0KT0+KCk9PihlJiYodD1lKGU9MCkpLHQpLHM9KGUsdCk9PigpPT4odHx8KGUoKHQ9e2V4cG9ydHM6e319KS5leHBvcnRzLHQpLGU9bnVsbCksdC5leHBvcnRzKSxjPShlLG4pPT57bGV0IHI9e307Zm9yKHZhciBpIGluIGUpdChyLGkse2dldDplW2ldLGVudW1lcmFibGU6ITB9KTtyZXR1cm4gbnx8dChyLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6YE1vZHVsZWB9KSxyfSxsPShlLGksbyxzKT0+e2lmKGkmJnR5cGVvZiBpPT1gb2JqZWN0YHx8dHlwZW9mIGk9PWBmdW5jdGlvbmApZm9yKHZhciBjPXIoaSksbD0wLHU9Yy5sZW5ndGgsZDtsPHU7bCsrKWQ9Y1tsXSwhYS5jYWxsKGUsZCkmJmQhPT1vJiZ0KGUsZCx7Z2V0OihlPT5pW2VdKS5iaW5kKG51bGwsZCksZW51bWVyYWJsZTohKHM9bihpLGQpKXx8cy5lbnVtZXJhYmxlfSk7cmV0dXJuIGV9LHU9KG4scixhKT0+KGE9bj09bnVsbD97fTplKGkobikpLGwocnx8IW58fCFuLl9fZXNNb2R1bGU/dChhLGBkZWZhdWx0YCx7dmFsdWU6bixlbnVtZXJhYmxlOiEwfSk6YSxuKSksZD1lPT5hLmNhbGwoZSxgbW9kdWxlLmV4cG9ydHNgKT9lW2Btb2R1bGUuZXhwb3J0c2BdOmwodCh7fSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZSksZj1BcnJheS5pc0FycmF5LHA9QXJyYXkucHJvdG90eXBlLmluZGV4T2YsbT1BcnJheS5wcm90b3R5cGUuaW5jbHVkZXMsaD1BcnJheS5mcm9tLGc9T2JqZWN0LmRlZmluZVByb3BlcnR5LF89T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcix2PU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzLHk9T2JqZWN0LnByb3RvdHlwZSxlZT1BcnJheS5wcm90b3R5cGUsYj1PYmplY3QuZ2V0UHJvdG90eXBlT2YsdGU9T2JqZWN0LmlzRXh0ZW5zaWJsZTtmdW5jdGlvbiBuZShlKXtyZXR1cm4gdHlwZW9mIGU9PWBmdW5jdGlvbmB9dmFyIHg9KCk9Pnt9O2Z1bmN0aW9uIHJlKGUpe3JldHVybiBlKCl9ZnVuY3Rpb24gaWUoZSl7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0KyspZVt0XSgpfWZ1bmN0aW9uIGFlKCl7dmFyIGUsdDtyZXR1cm57cHJvbWlzZTpuZXcgUHJvbWlzZSgobixyKT0+e2U9bix0PXJ9KSxyZXNvbHZlOmUscmVqZWN0OnR9fXZhciBvZT0xPDwyNCxzZT0xMDI0LGNlPTIwNDgsbGU9NDA5Nix1ZT04MTkyLGRlPTE2Mzg0LGZlPTMyNzY4LHBlPTE8PDI1LG1lPTY1NTM2LGhlPTE8PDE5LGdlPTE8PDIwLF9lPTE8PDI1LHZlPTY1NTM2LHllPTE8PDIxLGJlPTE8PDIyLHhlPTE8PDIzLFNlPVN5bWJvbChgJHN0YXRlYCksQ2U9U3ltYm9sKGBsZWdhY3kgcHJvcHNgKSx3ZT1TeW1ib2woYGApLFRlPW5ldyBjbGFzcyBleHRlbmRzIEVycm9ye25hbWU9YFN0YWxlUmVhY3Rpb25FcnJvcmA7bWVzc2FnZT0iVGhlIHJlYWN0aW9uIHRoYXQgY2FsbGVkIGBnZXRBYm9ydFNpZ25hbCgpYCB3YXMgcmUtcnVuIG9yIGRlc3Ryb3llZCJ9LEVlPSEhZ2xvYmFsVGhpcy5kb2N1bWVudD8uY29udGVudFR5cGUmJmdsb2JhbFRoaXMuZG9jdW1lbnQuY29udGVudFR5cGUuaW5jbHVkZXMoYHhtbGApO2Z1bmN0aW9uIERlKGUpe3Rocm93IEVycm9yKGBodHRwczovL3N2ZWx0ZS5kZXYvZS9saWZlY3ljbGVfb3V0c2lkZV9jb21wb25lbnRgKX1mdW5jdGlvbiBPZSgpe3Rocm93IEVycm9yKGBodHRwczovL3N2ZWx0ZS5kZXYvZS9hc3luY19kZXJpdmVkX29ycGhhbmApfWZ1bmN0aW9uIGtlKGUsdCxuKXt0aHJvdyBFcnJvcihgaHR0cHM6Ly9zdmVsdGUuZGV2L2UvZWFjaF9rZXlfZHVwbGljYXRlYCl9ZnVuY3Rpb24gQWUoZSl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL2VmZmVjdF9pbl90ZWFyZG93bmApfWZ1bmN0aW9uIGplKCl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL2VmZmVjdF9pbl91bm93bmVkX2Rlcml2ZWRgKX1mdW5jdGlvbiBNZShlKXt0aHJvdyBFcnJvcihgaHR0cHM6Ly9zdmVsdGUuZGV2L2UvZWZmZWN0X29ycGhhbmApfWZ1bmN0aW9uIE5lKCl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL2VmZmVjdF91cGRhdGVfZGVwdGhfZXhjZWVkZWRgKX1mdW5jdGlvbiBQZShlKXt0aHJvdyBFcnJvcihgaHR0cHM6Ly9zdmVsdGUuZGV2L2UvcHJvcHNfaW52YWxpZF92YWx1ZWApfWZ1bmN0aW9uIEZlKCl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL3NldF9jb250ZXh0X2FmdGVyX2luaXRgKX1mdW5jdGlvbiBJZSgpe3Rocm93IEVycm9yKGBodHRwczovL3N2ZWx0ZS5kZXYvZS9zdGF0ZV9kZXNjcmlwdG9yc19maXhlZGApfWZ1bmN0aW9uIExlKCl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL3N0YXRlX3Byb3RvdHlwZV9maXhlZGApfWZ1bmN0aW9uIFJlKCl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL3N0YXRlX3Vuc2FmZV9tdXRhdGlvbmApfWZ1bmN0aW9uIHplKCl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL3N2ZWx0ZV9ib3VuZGFyeV9yZXNldF9vbmVycm9yYCl9dmFyIEJlPXt9LFM9U3ltYm9sKCksVmU9YGh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWxgLEhlPWBodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z2AsVWU9YGh0dHA6Ly93d3cudzMub3JnLzE5OTgvTWF0aC9NYXRoTUxgO2Z1bmN0aW9uIFdlKCl7Y29uc29sZS53YXJuKGBodHRwczovL3N2ZWx0ZS5kZXYvZS9kZXJpdmVkX2luZXJ0YCl9ZnVuY3Rpb24gR2UoZSl7Y29uc29sZS53YXJuKGBodHRwczovL3N2ZWx0ZS5kZXYvZS9oeWRyYXRpb25fbWlzbWF0Y2hgKX1mdW5jdGlvbiBLZSgpe2NvbnNvbGUud2FybihgaHR0cHM6Ly9zdmVsdGUuZGV2L2Uvc2VsZWN0X211bHRpcGxlX2ludmFsaWRfdmFsdWVgKX1mdW5jdGlvbiBxZSgpe2NvbnNvbGUud2FybihgaHR0cHM6Ly9zdmVsdGUuZGV2L2Uvc3ZlbHRlX2JvdW5kYXJ5X3Jlc2V0X25vb3BgKX12YXIgQz0hMTtmdW5jdGlvbiBKZShlKXtDPWV9dmFyIHc7ZnVuY3Rpb24gVChlKXtpZihlPT09bnVsbCl0aHJvdyBHZSgpLEJlO3JldHVybiB3PWV9ZnVuY3Rpb24gWWUoKXtyZXR1cm4gVChCbih3KSl9ZnVuY3Rpb24gWGUoZSl7aWYoQyl7aWYoQm4odykhPT1udWxsKXRocm93IEdlKCksQmU7dz1lfX1mdW5jdGlvbiBaZShlPTEpe2lmKEMpe2Zvcih2YXIgdD1lLG49dzt0LS07KW49Qm4obik7dz1ufX1mdW5jdGlvbiBRZShlPSEwKXtmb3IodmFyIHQ9MCxuPXc7Oyl7aWYobi5ub2RlVHlwZT09PTgpe3ZhciByPW4uZGF0YTtpZihyPT09YF1gKXtpZih0PT09MClyZXR1cm4gbjstLXR9ZWxzZSAocj09PWBbYHx8cj09PWBbIWB8fHJbMF09PT1gW2AmJiFpc05hTihOdW1iZXIoci5zbGljZSgxKSkpKSYmKHQrPTEpfXZhciBpPUJuKG4pO2UmJm4ucmVtb3ZlKCksbj1pfX1mdW5jdGlvbiAkZShlKXtpZighZXx8ZS5ub2RlVHlwZSE9PTgpdGhyb3cgR2UoKSxCZTtyZXR1cm4gZS5kYXRhfWZ1bmN0aW9uIGV0KGUpe3JldHVybiBlPT09dGhpcy52fWZ1bmN0aW9uIHR0KGUsdCl7cmV0dXJuIGU9PWU/ZSE9PXR8fHR5cGVvZiBlPT1gb2JqZWN0YCYmISFlfHx0eXBlb2YgZT09YGZ1bmN0aW9uYDp0PT10fWZ1bmN0aW9uIG50KGUpe3JldHVybiF0dChlLHRoaXMudil9dmFyIHJ0PSExLGl0PSExO2Z1bmN0aW9uIGF0KCl7aXQ9ITB9dmFyIEU9bnVsbDtmdW5jdGlvbiBvdChlKXtFPWV9ZnVuY3Rpb24gc3QoZSl7cmV0dXJuIGZ0KGBnZXRDb250ZXh0YCkuZ2V0KGUpfWZ1bmN0aW9uIGN0KGUsdCl7bGV0IG49ZnQoYHNldENvbnRleHRgKTtpZihydCl7dmFyIHI9SS5mOyFGJiZyJjMyJiYhRS5pfHxGZSgpfXJldHVybiBuLnNldChlLHQpLHR9ZnVuY3Rpb24gbHQoZSx0PSExLG4pe0U9e3A6RSxpOiExLGM6bnVsbCxlOm51bGwsczplLHg6bnVsbCxyOkksbDppdCYmIXQ/e3M6bnVsbCx1Om51bGwsJDpbXX06bnVsbH19ZnVuY3Rpb24gdXQoZSl7dmFyIHQ9RSxuPXQuZTtpZihuIT09bnVsbCl7dC5lPW51bGw7Zm9yKHZhciByIG9mIG4pc3Iocil9cmV0dXJuIGUhPT12b2lkIDAmJih0Lng9ZSksdC5pPSEwLEU9dC5wLGU/P3t9fWZ1bmN0aW9uIGR0KCl7cmV0dXJuIWl0fHxFIT09bnVsbCYmRS5sPT09bnVsbH1mdW5jdGlvbiBmdChlKXtyZXR1cm4gRT09PW51bGwmJkRlKGUpLEUuYz8/PW5ldyBNYXAocHQoRSl8fHZvaWQgMCl9ZnVuY3Rpb24gcHQoZSl7bGV0IHQ9ZS5wO2Zvcig7dCE9PW51bGw7KXtsZXQgZT10LmM7aWYoZSE9PW51bGwpcmV0dXJuIGU7dD10LnB9cmV0dXJuIG51bGx9dmFyIG10PVtdO2Z1bmN0aW9uIGh0KCl7dmFyIGU9bXQ7bXQ9W10saWUoZSl9ZnVuY3Rpb24gZ3QoZSl7aWYobXQubGVuZ3RoPT09MCYmIXp0KXt2YXIgdD1tdDtxdWV1ZU1pY3JvdGFzaygoKT0+e3Q9PT1tdCYmaHQoKX0pfW10LnB1c2goZSl9ZnVuY3Rpb24gX3QoKXtmb3IoO210Lmxlbmd0aD4wOylodCgpfWZ1bmN0aW9uIHZ0KGUpe3ZhciB0PUk7aWYodD09PW51bGwpcmV0dXJuIEYuZnw9eGUsZTtpZighKHQuZiYzMjc2OCkmJiEodC5mJjQpKXRocm93IGU7eXQoZSx0KX1mdW5jdGlvbiB5dChlLHQpe2Zvcig7dCE9PW51bGw7KXtpZih0LmYmMTI4KXtpZighKHQuZiYzMjc2OCkpdGhyb3cgZTt0cnl7dC5iLmVycm9yKGUpO3JldHVybn1jYXRjaCh0KXtlPXR9fXQ9dC5wYXJlbnR9dGhyb3cgZX12YXIgYnQ9fihjZXxsZXxzZSk7ZnVuY3Rpb24gRChlLHQpe2UuZj1lLmYmYnR8dH1mdW5jdGlvbiB4dChlKXtlLmYmNTEyfHxlLmRlcHM9PT1udWxsP0QoZSxzZSk6RChlLGxlKX1mdW5jdGlvbiBTdChlKXtpZihlIT09bnVsbClmb3IobGV0IHQgb2YgZSkhKHQuZiYyKXx8ISh0LmYmNjU1MzYpfHwodC5mXj12ZSxTdCh0LmRlcHMpKX1mdW5jdGlvbiBDdChlLHQsbil7ZS5mJjIwNDg/dC5hZGQoZSk6ZS5mJjQwOTYmJm4uYWRkKGUpLFN0KGUuZGVwcyksRChlLHNlKX1mdW5jdGlvbiB3dChlLHQsbil7aWYoZT09bnVsbClyZXR1cm4gdCh2b2lkIDApLG4mJm4odm9pZCAwKSx4O2xldCByPSRyKCgpPT5lLnN1YnNjcmliZSh0LG4pKTtyZXR1cm4gci51bnN1YnNjcmliZT8oKT0+ci51bnN1YnNjcmliZSgpOnJ9dmFyIFR0PVtdO2Z1bmN0aW9uIEV0KGUsdCl7cmV0dXJue3N1YnNjcmliZTpPKGUsdCkuc3Vic2NyaWJlfX1mdW5jdGlvbiBPKGUsdD14KXtsZXQgbj1udWxsLHI9bmV3IFNldDtmdW5jdGlvbiBpKHQpe2lmKHR0KGUsdCkmJihlPXQsbikpe2xldCB0PSFUdC5sZW5ndGg7Zm9yKGxldCB0IG9mIHIpdFsxXSgpLFR0LnB1c2godCxlKTtpZih0KXtmb3IobGV0IGU9MDtlPFR0Lmxlbmd0aDtlKz0yKVR0W2VdWzBdKFR0W2UrMV0pO1R0Lmxlbmd0aD0wfX19ZnVuY3Rpb24gYSh0KXtpKHQoZSkpfWZ1bmN0aW9uIG8obyxzPXgpe2xldCBjPVtvLHNdO3JldHVybiByLmFkZChjKSxyLnNpemU9PT0xJiYobj10KGksYSl8fHgpLG8oZSksKCk9PntyLmRlbGV0ZShjKSxyLnNpemU9PT0wJiZuJiYobigpLG49bnVsbCl9fXJldHVybntzZXQ6aSx1cGRhdGU6YSxzdWJzY3JpYmU6b319ZnVuY3Rpb24gayhlLHQsbil7bGV0IHI9IUFycmF5LmlzQXJyYXkoZSksaT1yP1tlXTplO2lmKCFpLmV2ZXJ5KEJvb2xlYW4pKXRocm93IEVycm9yKGBkZXJpdmVkKCkgZXhwZWN0cyBzdG9yZXMgYXMgaW5wdXQsIGdvdCBhIGZhbHN5IHZhbHVlYCk7bGV0IGE9dC5sZW5ndGg8MjtyZXR1cm4gRXQobiwoZSxuKT0+e2xldCBvPSExLHM9W10sYz0wLGw9eCx1PSgpPT57aWYoYylyZXR1cm47bCgpO2xldCBpPXQocj9zWzBdOnMsZSxuKTthP2UoaSk6bD10eXBlb2YgaT09YGZ1bmN0aW9uYD9pOnh9LGQ9aS5tYXAoKGUsdCk9Pnd0KGUsZT0+e3NbdF09ZSxjJj1+KDE8PHQpLG8mJnUoKX0sKCk9PntjfD0xPDx0fSkpO3JldHVybiBvPSEwLHUoKSxmdW5jdGlvbigpe2llKGQpLGwoKSxvPSExfX0pfWZ1bmN0aW9uIEEoZSl7bGV0IHQ7cmV0dXJuIHd0KGUsZT0+dD1lKSgpLHR9dmFyIER0PSExLE90PSExLGt0PVN5bWJvbCgpO2Z1bmN0aW9uIEF0KGUsdCxuKXtsZXQgcj1uW3RdPz89e3N0b3JlOm51bGwsc291cmNlOnduKHZvaWQgMCksdW5zdWJzY3JpYmU6eH07aWYoci5zdG9yZSE9PWUmJiEoa3QgaW4gbikpaWYoci51bnN1YnNjcmliZSgpLHIuc3RvcmU9ZT8/bnVsbCxlPT1udWxsKXIuc291cmNlLnY9dm9pZCAwLHIudW5zdWJzY3JpYmU9eDtlbHNle3ZhciBpPSEwO3IudW5zdWJzY3JpYmU9d3QoZSxlPT57aT9yLnNvdXJjZS52PWU6VG4oci5zb3VyY2UsZSl9KSxpPSExfXJldHVybiBlJiZrdCBpbiBuP0EoZSk6UihyLnNvdXJjZSl9ZnVuY3Rpb24ganQoZSx0KXtyZXR1cm4gTnQoZSx0KSx0fWZ1bmN0aW9uIE10KCl7bGV0IGU9e307ZnVuY3Rpb24gdCgpe2FyKCgpPT57Zm9yKHZhciB0IGluIGUpZVt0XS51bnN1YnNjcmliZSgpO2coZSxrdCx7ZW51bWVyYWJsZTohMSx2YWx1ZTohMH0pfSl9cmV0dXJuW2UsdF19ZnVuY3Rpb24gTnQoZSx0KXtEdD0hMDt0cnl7ZS5zZXQodCl9ZmluYWxseXtEdD0hMX19ZnVuY3Rpb24gUHQoZSx0LG4pe3JldHVybiBOdChlLG4pLHR9ZnVuY3Rpb24gRnQoZSl7dmFyIHQ9T3Q7dHJ5e3JldHVybiBPdD0hMSxbZSgpLE90XX1maW5hbGx5e090PXR9fXZhciBJdD1uZXcgU2V0LGo9bnVsbCxMdD1udWxsLE09bnVsbCxSdD1udWxsLHp0PSExLEJ0PSExLFZ0PW51bGwsSHQ9bnVsbCxVdD0wLFd0PTEsR3Q9Y2xhc3MgZXtpZD1XdCsrO2N1cnJlbnQ9bmV3IE1hcDtwcmV2aW91cz1uZXcgTWFwOyNlPW5ldyBTZXQ7I3Q9bmV3IFNldDsjbj1uZXcgU2V0OyNyPW5ldyBNYXA7I2k9bmV3IE1hcDsjYT1udWxsOyNvPVtdOyNzPVtdOyNjPW5ldyBTZXQ7I2w9bmV3IFNldDsjdT1uZXcgTWFwOyNkPW5ldyBTZXQ7aXNfZm9yaz0hMTsjZj0hMTsjcD1uZXcgU2V0OyNtKCl7cmV0dXJuIHRoaXMuaXNfZm9ya3x8dGhpcy4jaS5zaXplPjB9I2goKXtmb3IobGV0IG4gb2YgdGhpcy4jcClmb3IobGV0IHIgb2Ygbi4jaS5rZXlzKCkpe2Zvcih2YXIgZT0hMSx0PXI7dC5wYXJlbnQhPT1udWxsOyl7aWYodGhpcy4jdS5oYXModCkpe2U9ITA7YnJlYWt9dD10LnBhcmVudH1pZighZSlyZXR1cm4hMH1yZXR1cm4hMX1za2lwX2VmZmVjdChlKXt0aGlzLiN1LmhhcyhlKXx8dGhpcy4jdS5zZXQoZSx7ZDpbXSxtOltdfSksdGhpcy4jZC5kZWxldGUoZSl9dW5za2lwX2VmZmVjdChlLHQ9ZT0+dGhpcy5zY2hlZHVsZShlKSl7dmFyIG49dGhpcy4jdS5nZXQoZSk7aWYobil7dGhpcy4jdS5kZWxldGUoZSk7Zm9yKHZhciByIG9mIG4uZClEKHIsY2UpLHQocik7Zm9yKHIgb2Ygbi5tKUQocixsZSksdChyKX10aGlzLiNkLmFkZChlKX0jZygpe2lmKFV0Kys+MWUzJiYoSXQuZGVsZXRlKHRoaXMpLHF0KCkpLCF0aGlzLiNtKCkpe2ZvcihsZXQgZSBvZiB0aGlzLiNjKXRoaXMuI2wuZGVsZXRlKGUpLEQoZSxjZSksdGhpcy5zY2hlZHVsZShlKTtmb3IobGV0IGUgb2YgdGhpcy4jbClEKGUsbGUpLHRoaXMuc2NoZWR1bGUoZSl9bGV0IHQ9dGhpcy4jbzt0aGlzLiNvPVtdLHRoaXMuYXBwbHkoKTt2YXIgbj1WdD1bXSxyPVtdLGk9SHQ9W107Zm9yKGxldCBlIG9mIHQpdHJ5e3RoaXMuI18oZSxuLHIpfWNhdGNoKHQpe3Rocm93IGVuKGUpLHR9aWYoaj1udWxsLGkubGVuZ3RoPjApe3ZhciBhPWUuZW5zdXJlKCk7Zm9yKGxldCBlIG9mIGkpYS5zY2hlZHVsZShlKX1pZihWdD1udWxsLEh0PW51bGwsdGhpcy4jbSgpfHx0aGlzLiNoKCkpe3RoaXMuI3YociksdGhpcy4jdihuKTtmb3IobGV0W2UsdF1vZiB0aGlzLiN1KSR0KGUsdCl9ZWxzZXt0aGlzLiNyLnNpemU9PT0wJiZJdC5kZWxldGUodGhpcyksdGhpcy4jYy5jbGVhcigpLHRoaXMuI2wuY2xlYXIoKTtmb3IobGV0IGUgb2YgdGhpcy4jZSllKHRoaXMpO3RoaXMuI2UuY2xlYXIoKSxMdD10aGlzLFl0KHIpLFl0KG4pLEx0PW51bGwsdGhpcy4jYT8ucmVzb2x2ZSgpfXZhciBvPWo7aWYodGhpcy4jby5sZW5ndGg+MCl7bGV0IGU9bz8/PXRoaXM7ZS4jby5wdXNoKC4uLnRoaXMuI28uZmlsdGVyKHQ9PiFlLiNvLmluY2x1ZGVzKHQpKSl9byE9PW51bGwmJihJdC5hZGQobyksby4jZygpKSxydCYmIUl0Lmhhcyh0aGlzKSYmdGhpcy4jeSgpfSNfKGUsdCxuKXtlLmZePXNlO2Zvcih2YXIgcj1lLmZpcnN0O3IhPT1udWxsOyl7dmFyIGk9ci5mLGE9KGkmOTYpIT0wO2lmKCEoYSYmaSYxMDI0fHxpJjgxOTJ8fHRoaXMuI3UuaGFzKHIpKSYmci5mbiE9PW51bGwpe2E/ci5mXj1zZTppJjQ/dC5wdXNoKHIpOnJ0JiZpJjE2Nzc3MjI0P24ucHVzaChyKTpXcihyKSYmKGkmMTYmJnRoaXMuI2wuYWRkKHIpLFlyKHIpKTt2YXIgbz1yLmZpcnN0O2lmKG8hPT1udWxsKXtyPW87Y29udGludWV9fWZvcig7ciE9PW51bGw7KXt2YXIgcz1yLm5leHQ7aWYocyE9PW51bGwpe3I9czticmVha31yPXIucGFyZW50fX19I3YoZSl7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0Kz0xKUN0KGVbdF0sdGhpcy4jYyx0aGlzLiNsKX1jYXB0dXJlKGUsdCxuPSExKXtlLnYhPT1TJiYhdGhpcy5wcmV2aW91cy5oYXMoZSkmJnRoaXMucHJldmlvdXMuc2V0KGUsZS52KSxlLmYmODM4ODYwOHx8KHRoaXMuY3VycmVudC5zZXQoZSxbdCxuXSksTT8uc2V0KGUsdCkpLHRoaXMuaXNfZm9ya3x8KGUudj10KX1hY3RpdmF0ZSgpe2o9dGhpc31kZWFjdGl2YXRlKCl7aj1udWxsLE09bnVsbH1mbHVzaCgpe3RyeXtCdD0hMCxqPXRoaXMsdGhpcy4jZygpfWZpbmFsbHl7VXQ9MCxSdD1udWxsLFZ0PW51bGwsSHQ9bnVsbCxCdD0hMSxqPW51bGwsTT1udWxsLGJuLmNsZWFyKCl9fWRpc2NhcmQoKXtmb3IobGV0IGUgb2YgdGhpcy4jdCllKHRoaXMpO3RoaXMuI3QuY2xlYXIoKSx0aGlzLiNuLmNsZWFyKCksSXQuZGVsZXRlKHRoaXMpfXJlZ2lzdGVyX2NyZWF0ZWRfZWZmZWN0KGUpe3RoaXMuI3MucHVzaChlKX0jeSgpe2ZvcihsZXQgbCBvZiBJdCl7dmFyIGU9bC5pZDx0aGlzLmlkLHQ9W107Zm9yKGxldFtyLFtpLGFdXW9mIHRoaXMuY3VycmVudCl7aWYobC5jdXJyZW50LmhhcyhyKSl7dmFyIG49bC5jdXJyZW50LmdldChyKVswXTtpZihlJiZpIT09bilsLmN1cnJlbnQuc2V0KHIsW2ksYV0pO2Vsc2UgY29udGludWV9dC5wdXNoKHIpfXZhciByPVsuLi5sLmN1cnJlbnQua2V5cygpXS5maWx0ZXIoZT0+IXRoaXMuY3VycmVudC5oYXMoZSkpO2lmKHIubGVuZ3RoPT09MCllJiZsLmRpc2NhcmQoKTtlbHNlIGlmKHQubGVuZ3RoPjApe2lmKGUpZm9yKGxldCBlIG9mIHRoaXMuI2QpbC51bnNraXBfZWZmZWN0KGUsZT0+e2UuZiY0MTk0MzIwP2wuc2NoZWR1bGUoZSk6bC4jdihbZV0pfSk7bC5hY3RpdmF0ZSgpO3ZhciBpPW5ldyBTZXQsYT1uZXcgTWFwO2Zvcih2YXIgbyBvZiB0KVh0KG8scixpLGEpO2E9bmV3IE1hcDt2YXIgcz1bLi4ubC5jdXJyZW50LmtleXMoKV0uZmlsdGVyKGU9PnRoaXMuY3VycmVudC5oYXMoZSk/dGhpcy5jdXJyZW50LmdldChlKVswXSE9PWU6ITApO2ZvcihsZXQgZSBvZiB0aGlzLiNzKSEoZS5mJjE1NTY0OCkmJlp0KGUscyxhKSYmKGUuZiY0MTk0MzIwPyhEKGUsY2UpLGwuc2NoZWR1bGUoZSkpOmwuI2MuYWRkKGUpKTtpZihsLiNvLmxlbmd0aD4wKXtsLmFwcGx5KCk7Zm9yKHZhciBjIG9mIGwuI28pbC4jXyhjLFtdLFtdKTtsLiNvPVtdfWwuZGVhY3RpdmF0ZSgpfX1mb3IobGV0IGUgb2YgSXQpZS4jcC5oYXModGhpcykmJihlLiNwLmRlbGV0ZSh0aGlzKSxlLiNwLnNpemU9PT0wJiYhZS4jbSgpJiYoZS5hY3RpdmF0ZSgpLGUuI2coKSkpfWluY3JlbWVudChlLHQpe2xldCBuPXRoaXMuI3IuZ2V0KHQpPz8wO2lmKHRoaXMuI3Iuc2V0KHQsbisxKSxlKXtsZXQgZT10aGlzLiNpLmdldCh0KT8/MDt0aGlzLiNpLnNldCh0LGUrMSl9fWRlY3JlbWVudChlLHQsbil7bGV0IHI9dGhpcy4jci5nZXQodCk/PzA7aWYocj09PTE/dGhpcy4jci5kZWxldGUodCk6dGhpcy4jci5zZXQodCxyLTEpLGUpe2xldCBlPXRoaXMuI2kuZ2V0KHQpPz8wO2U9PT0xP3RoaXMuI2kuZGVsZXRlKHQpOnRoaXMuI2kuc2V0KHQsZS0xKX10aGlzLiNmfHxufHwodGhpcy4jZj0hMCxndCgoKT0+e3RoaXMuI2Y9ITEsdGhpcy5mbHVzaCgpfSkpfXRyYW5zZmVyX2VmZmVjdHMoZSx0KXtmb3IobGV0IHQgb2YgZSl0aGlzLiNjLmFkZCh0KTtmb3IobGV0IGUgb2YgdCl0aGlzLiNsLmFkZChlKTtlLmNsZWFyKCksdC5jbGVhcigpfW9uY29tbWl0KGUpe3RoaXMuI2UuYWRkKGUpfW9uZGlzY2FyZChlKXt0aGlzLiN0LmFkZChlKX1vbl9mb3JrX2NvbW1pdChlKXt0aGlzLiNuLmFkZChlKX1ydW5fZm9ya19jb21taXRfY2FsbGJhY2tzKCl7Zm9yKGxldCBlIG9mIHRoaXMuI24pZSh0aGlzKTt0aGlzLiNuLmNsZWFyKCl9c2V0dGxlZCgpe3JldHVybih0aGlzLiNhPz89YWUoKSkucHJvbWlzZX1zdGF0aWMgZW5zdXJlKCl7aWYoaj09PW51bGwpe2xldCB0PWo9bmV3IGU7QnR8fChJdC5hZGQoaiksenR8fGd0KCgpPT57aj09PXQmJnQuZmx1c2goKX0pKX1yZXR1cm4gan1hcHBseSgpe2lmKCFydHx8IXRoaXMuaXNfZm9yayYmSXQuc2l6ZT09PTEpe009bnVsbDtyZXR1cm59TT1uZXcgTWFwO2ZvcihsZXRbZSxbdF1db2YgdGhpcy5jdXJyZW50KU0uc2V0KGUsdCk7Zm9yKGxldCBuIG9mIEl0KWlmKCEobj09PXRoaXN8fG4uaXNfZm9yaykpe3ZhciBlPSExLHQ9ITE7aWYobi5pZDx0aGlzLmlkKWZvcihsZXRbcixbLGldXW9mIG4uY3VycmVudClpfHwoZXx8PXRoaXMuY3VycmVudC5oYXMociksdHx8PSF0aGlzLmN1cnJlbnQuaGFzKHIpKTtpZihlJiZ0KXRoaXMuI3AuYWRkKG4pO2Vsc2UgZm9yKGxldFtlLHRdb2Ygbi5wcmV2aW91cylNLmhhcyhlKXx8TS5zZXQoZSx0KX19c2NoZWR1bGUoZSl7aWYoUnQ9ZSxlLmI/LmlzX3BlbmRpbmcmJmUuZiYxNjc3NzIyOCYmIShlLmYmMzI3NjgpKXtlLmIuZGVmZXJfZWZmZWN0KGUpO3JldHVybn1mb3IodmFyIHQ9ZTt0LnBhcmVudCE9PW51bGw7KXt0PXQucGFyZW50O3ZhciBuPXQuZjtpZihWdCE9PW51bGwmJnQ9PT1JJiYocnR8fChGPT09bnVsbHx8IShGLmYmMikpJiYhRHQpKXJldHVybjtpZihuJjk2KXtpZighKG4mMTAyNCkpcmV0dXJuO3QuZl49c2V9fXRoaXMuI28ucHVzaCh0KX19O2Z1bmN0aW9uIEt0KGUpe3ZhciB0PXp0O3p0PSEwO3RyeXt2YXIgbjtmb3IoZSYmKGohPT1udWxsJiYhai5pc19mb3JrJiZqLmZsdXNoKCksbj1lKCkpOzspe2lmKF90KCksaj09PW51bGwpcmV0dXJuIG47ai5mbHVzaCgpfX1maW5hbGx5e3p0PXR9fWZ1bmN0aW9uIHF0KCl7dHJ5e05lKCl9Y2F0Y2goZSl7eXQoZSxSdCl9fXZhciBKdD1udWxsO2Z1bmN0aW9uIFl0KGUpe3ZhciB0PWUubGVuZ3RoO2lmKHQhPT0wKXtmb3IodmFyIG49MDtuPHQ7KXt2YXIgcj1lW24rK107aWYoIShyLmYmMjQ1NzYpJiZXcihyKSYmKEp0PW5ldyBTZXQsWXIociksci5kZXBzPT09bnVsbCYmci5maXJzdD09PW51bGwmJnIubm9kZXM9PT1udWxsJiZyLnRlYXJkb3duPT09bnVsbCYmci5hYz09PW51bGwmJnhyKHIpLEp0Py5zaXplPjApKXtibi5jbGVhcigpO2ZvcihsZXQgZSBvZiBKdCl7aWYoZS5mJjI0NTc2KWNvbnRpbnVlO2xldCB0PVtlXSxuPWUucGFyZW50O2Zvcig7biE9PW51bGw7KUp0LmhhcyhuKSYmKEp0LmRlbGV0ZShuKSx0LnB1c2gobikpLG49bi5wYXJlbnQ7Zm9yKGxldCBlPXQubGVuZ3RoLTE7ZT49MDtlLS0pe2xldCBuPXRbZV07bi5mJjI0NTc2fHxZcihuKX19SnQuY2xlYXIoKX19SnQ9bnVsbH19ZnVuY3Rpb24gWHQoZSx0LG4scil7aWYoIW4uaGFzKGUpJiYobi5hZGQoZSksZS5yZWFjdGlvbnMhPT1udWxsKSlmb3IobGV0IGkgb2YgZS5yZWFjdGlvbnMpe2xldCBlPWkuZjtlJjI/WHQoaSx0LG4scik6ZSY0MTk0MzIwJiYhKGUmMjA0OCkmJlp0KGksdCxyKSYmKEQoaSxjZSksUXQoaSkpfX1mdW5jdGlvbiBadChlLHQsbil7bGV0IHI9bi5nZXQoZSk7aWYociE9PXZvaWQgMClyZXR1cm4gcjtpZihlLmRlcHMhPT1udWxsKWZvcihsZXQgciBvZiBlLmRlcHMpe2lmKG0uY2FsbCh0LHIpKXJldHVybiEwO2lmKHIuZiYyJiZadChyLHQsbikpcmV0dXJuIG4uc2V0KHIsITApLCEwfXJldHVybiBuLnNldChlLCExKSwhMX1mdW5jdGlvbiBRdChlKXtqLnNjaGVkdWxlKGUpfWZ1bmN0aW9uICR0KGUsdCl7aWYoIShlLmYmMzImJmUuZiYxMDI0KSl7ZS5mJjIwNDg/dC5kLnB1c2goZSk6ZS5mJjQwOTYmJnQubS5wdXNoKGUpLEQoZSxzZSk7Zm9yKHZhciBuPWUuZmlyc3Q7biE9PW51bGw7KSR0KG4sdCksbj1uLm5leHR9fWZ1bmN0aW9uIGVuKGUpe0QoZSxzZSk7Zm9yKHZhciB0PWUuZmlyc3Q7dCE9PW51bGw7KWVuKHQpLHQ9dC5uZXh0fWZ1bmN0aW9uIHRuKGUpe2xldCB0PTAsbj1TbigwKSxyO3JldHVybigpPT57aXIoKSYmKFIobiksZnIoKCk9Pih0PT09MCYmKHI9JHIoKCk9PmUoKCk9PmtuKG4pKSkpLHQrPTEsKCk9PntndCgoKT0+ey0tdCx0PT09MCYmKHI/LigpLHI9dm9pZCAwLGtuKG4pKX0pfSkpKX19dmFyIG5uPW1lfGhlO2Z1bmN0aW9uIHJuKGUsdCxuLHIpe25ldyBhbihlLHQsbixyKX12YXIgYW49Y2xhc3N7cGFyZW50O2lzX3BlbmRpbmc9ITE7dHJhbnNmb3JtX2Vycm9yOyNlOyN0PUM/dzpudWxsOyNuOyNyOyNpOyNhPW51bGw7I289bnVsbDsjcz1udWxsOyNjPW51bGw7I2w9MDsjdT0wOyNkPSExOyNmPW5ldyBTZXQ7I3A9bmV3IFNldDsjbT1udWxsOyNoPXRuKCgpPT4odGhpcy4jbT1Tbih0aGlzLiNsKSwoKT0+e3RoaXMuI209bnVsbH0pKTtjb25zdHJ1Y3RvcihlLHQsbixyKXt0aGlzLiNlPWUsdGhpcy4jbj10LHRoaXMuI3I9ZT0+e3ZhciB0PUk7dC5iPXRoaXMsdC5mfD0xMjgsbihlKX0sdGhpcy5wYXJlbnQ9SS5iLHRoaXMudHJhbnNmb3JtX2Vycm9yPXI/P3RoaXMucGFyZW50Py50cmFuc2Zvcm1fZXJyb3I/PyhlPT5lKSx0aGlzLiNpPW1yKCgpPT57aWYoQyl7bGV0IGU9dGhpcy4jdDtZZSgpO2xldCB0PWUuZGF0YT09PWBbIWA7aWYoZS5kYXRhLnN0YXJ0c1dpdGgoYFs/YCkpe2xldCB0PUpTT04ucGFyc2UoZS5kYXRhLnNsaWNlKDIpKTt0aGlzLiNfKHQpfWVsc2UgdD90aGlzLiN2KCk6dGhpcy4jZygpfWVsc2UgdGhpcy4jeSgpfSxubiksQyYmKHRoaXMuI2U9dyl9I2coKXt0cnl7dGhpcy4jYT1ncigoKT0+dGhpcy4jcih0aGlzLiNlKSl9Y2F0Y2goZSl7dGhpcy5lcnJvcihlKX19I18oZSl7bGV0IHQ9dGhpcy4jbi5mYWlsZWQ7dCYmKHRoaXMuI3M9Z3IoKCk9Pnt0KHRoaXMuI2UsKCk9PmUsKCk9PigpPT57fSl9KSl9I3YoKXtsZXQgZT10aGlzLiNuLnBlbmRpbmc7ZSYmKHRoaXMuaXNfcGVuZGluZz0hMCx0aGlzLiNvPWdyKCgpPT5lKHRoaXMuI2UpKSxndCgoKT0+e3ZhciBlPXRoaXMuI2M9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLHQ9em4oKTtlLmFwcGVuZCh0KSx0aGlzLiNhPXRoaXMuI3goKCk9PmdyKCgpPT50aGlzLiNyKHQpKSksdGhpcy4jdT09PTAmJih0aGlzLiNlLmJlZm9yZShlKSx0aGlzLiNjPW51bGwsU3IodGhpcy4jbywoKT0+e3RoaXMuI289bnVsbH0pLHRoaXMuI2IoaikpfSkpfSN5KCl7dHJ5e2lmKHRoaXMuaXNfcGVuZGluZz10aGlzLmhhc19wZW5kaW5nX3NuaXBwZXQoKSx0aGlzLiN1PTAsdGhpcy4jbD0wLHRoaXMuI2E9Z3IoKCk9Pnt0aGlzLiNyKHRoaXMuI2UpfSksdGhpcy4jdT4wKXt2YXIgZT10aGlzLiNjPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTtFcih0aGlzLiNhLGUpO2xldCB0PXRoaXMuI24ucGVuZGluZzt0aGlzLiNvPWdyKCgpPT50KHRoaXMuI2UpKX1lbHNlIHRoaXMuI2Ioail9Y2F0Y2goZSl7dGhpcy5lcnJvcihlKX19I2IoZSl7dGhpcy5pc19wZW5kaW5nPSExLGUudHJhbnNmZXJfZWZmZWN0cyh0aGlzLiNmLHRoaXMuI3ApfWRlZmVyX2VmZmVjdChlKXtDdChlLHRoaXMuI2YsdGhpcy4jcCl9aXNfcmVuZGVyZWQoKXtyZXR1cm4hdGhpcy5pc19wZW5kaW5nJiYoIXRoaXMucGFyZW50fHx0aGlzLnBhcmVudC5pc19yZW5kZXJlZCgpKX1oYXNfcGVuZGluZ19zbmlwcGV0KCl7cmV0dXJuISF0aGlzLiNuLnBlbmRpbmd9I3goZSl7dmFyIHQ9SSxuPUYscj1FO05yKHRoaXMuI2kpLE1yKHRoaXMuI2kpLG90KHRoaXMuI2kuY3R4KTt0cnl7cmV0dXJuIEd0LmVuc3VyZSgpLGUoKX1jYXRjaChlKXtyZXR1cm4gdnQoZSksbnVsbH1maW5hbGx5e05yKHQpLE1yKG4pLG90KHIpfX0jUyhlLHQpe2lmKCF0aGlzLmhhc19wZW5kaW5nX3NuaXBwZXQoKSl7dGhpcy5wYXJlbnQmJnRoaXMucGFyZW50LiNTKGUsdCk7cmV0dXJufXRoaXMuI3UrPWUsdGhpcy4jdT09PTAmJih0aGlzLiNiKHQpLHRoaXMuI28mJlNyKHRoaXMuI28sKCk9Pnt0aGlzLiNvPW51bGx9KSx0aGlzLiNjJiY9KHRoaXMuI2UuYmVmb3JlKHRoaXMuI2MpLG51bGwpKX11cGRhdGVfcGVuZGluZ19jb3VudChlLHQpe3RoaXMuI1MoZSx0KSx0aGlzLiNsKz1lLCEoIXRoaXMuI218fHRoaXMuI2QpJiYodGhpcy4jZD0hMCxndCgoKT0+e3RoaXMuI2Q9ITEsdGhpcy4jbSYmRW4odGhpcy4jbSx0aGlzLiNsKX0pKX1nZXRfZWZmZWN0X3BlbmRpbmcoKXtyZXR1cm4gdGhpcy4jaCgpLFIodGhpcy4jbSl9ZXJyb3IoZSl7aWYoIXRoaXMuI24ub25lcnJvciYmIXRoaXMuI24uZmFpbGVkKXRocm93IGU7aj8uaXNfZm9yaz8odGhpcy4jYSYmai5za2lwX2VmZmVjdCh0aGlzLiNhKSx0aGlzLiNvJiZqLnNraXBfZWZmZWN0KHRoaXMuI28pLHRoaXMuI3MmJmouc2tpcF9lZmZlY3QodGhpcy4jcyksai5vbl9mb3JrX2NvbW1pdCgoKT0+e3RoaXMuI0MoZSl9KSk6dGhpcy4jQyhlKX0jQyhlKXt0aGlzLiNhJiY9KFAodGhpcy4jYSksbnVsbCksdGhpcy4jbyYmPShQKHRoaXMuI28pLG51bGwpLHRoaXMuI3MmJj0oUCh0aGlzLiNzKSxudWxsKSxDJiYoVCh0aGlzLiN0KSxaZSgpLFQoUWUoKSkpO3ZhciB0PXRoaXMuI24ub25lcnJvcjtsZXQgbj10aGlzLiNuLmZhaWxlZDt2YXIgcj0hMSxpPSExO2xldCBhPSgpPT57aWYocil7cWUoKTtyZXR1cm59cj0hMCxpJiZ6ZSgpLHRoaXMuI3MhPT1udWxsJiZTcih0aGlzLiNzLCgpPT57dGhpcy4jcz1udWxsfSksdGhpcy4jeCgoKT0+e3RoaXMuI3koKX0pfSxvPWU9Pnt0cnl7aT0hMCx0Py4oZSxhKSxpPSExfWNhdGNoKGUpe3l0KGUsdGhpcy4jaSYmdGhpcy4jaS5wYXJlbnQpfW4mJih0aGlzLiNzPXRoaXMuI3goKCk9Pnt0cnl7cmV0dXJuIGdyKCgpPT57dmFyIHQ9STt0LmI9dGhpcyx0LmZ8PTEyOCxuKHRoaXMuI2UsKCk9PmUsKCk9PmEpfSl9Y2F0Y2goZSl7cmV0dXJuIHl0KGUsdGhpcy4jaS5wYXJlbnQpLG51bGx9fSkpfTtndCgoKT0+e3ZhciB0O3RyeXt0PXRoaXMudHJhbnNmb3JtX2Vycm9yKGUpfWNhdGNoKGUpe3l0KGUsdGhpcy4jaSYmdGhpcy4jaS5wYXJlbnQpO3JldHVybn10eXBlb2YgdD09YG9iamVjdGAmJnQmJnR5cGVvZiB0LnRoZW49PWBmdW5jdGlvbmA/dC50aGVuKG8sZT0+eXQoZSx0aGlzLiNpJiZ0aGlzLiNpLnBhcmVudCkpOm8odCl9KX19O2Z1bmN0aW9uIG9uKGUsdCxuLHIpe2xldCBpPWR0KCk/dW46cG47dmFyIGE9ZS5maWx0ZXIoZT0+IWUuc2V0dGxlZCk7aWYobi5sZW5ndGg9PT0wJiZhLmxlbmd0aD09PTApe3IodC5tYXAoaSkpO3JldHVybn12YXIgbz1JLHM9c24oKSxjPWEubGVuZ3RoPT09MT9hWzBdLnByb21pc2U6YS5sZW5ndGg+MT9Qcm9taXNlLmFsbChhLm1hcChlPT5lLnByb21pc2UpKTpudWxsO2Z1bmN0aW9uIGwoZSl7cygpO3RyeXtyKGUpfWNhdGNoKGUpe28uZiYxNjM4NHx8eXQoZSxvKX1jbigpfWlmKG4ubGVuZ3RoPT09MCl7Yy50aGVuKCgpPT5sKHQubWFwKGkpKSk7cmV0dXJufXZhciB1PWxuKCk7ZnVuY3Rpb24gZCgpe1Byb21pc2UuYWxsKG4ubWFwKGU9PmRuKGUpKSkudGhlbihlPT5sKFsuLi50Lm1hcChpKSwuLi5lXSkpLmNhdGNoKGU9Pnl0KGUsbykpLmZpbmFsbHkoKCk9PnUoKSl9Yz9jLnRoZW4oKCk9PntzKCksZCgpLGNuKCl9KTpkKCl9ZnVuY3Rpb24gc24oKXt2YXIgZT1JLHQ9RixuPUUscj1qO3JldHVybiBmdW5jdGlvbihpPSEwKXtOcihlKSxNcih0KSxvdChuKSxpJiYhKGUuZiYxNjM4NCkmJihyPy5hY3RpdmF0ZSgpLHI/LmFwcGx5KCkpfX1mdW5jdGlvbiBjbihlPSEwKXtOcihudWxsKSxNcihudWxsKSxvdChudWxsKSxlJiZqPy5kZWFjdGl2YXRlKCl9ZnVuY3Rpb24gbG4oKXt2YXIgZT1JLHQ9ZS5iLG49aixyPXQuaXNfcmVuZGVyZWQoKTtyZXR1cm4gdC51cGRhdGVfcGVuZGluZ19jb3VudCgxLG4pLG4uaW5jcmVtZW50KHIsZSksKGk9ITEpPT57dC51cGRhdGVfcGVuZGluZ19jb3VudCgtMSxuKSxuLmRlY3JlbWVudChyLGUsaSl9fWZ1bmN0aW9uIHVuKGUpe3ZhciB0PTJ8Y2U7cmV0dXJuIEkhPT1udWxsJiYoSS5mfD1oZSkse2N0eDpFLGRlcHM6bnVsbCxlZmZlY3RzOm51bGwsZXF1YWxzOmV0LGY6dCxmbjplLHJlYWN0aW9uczpudWxsLHJ2OjAsdjpTLHd2OjAscGFyZW50OkksYWM6bnVsbH19ZnVuY3Rpb24gZG4oZSx0LG4pe2xldCByPUk7cj09PW51bGwmJk9lKCk7dmFyIGk9dm9pZCAwLGE9U24oUyksbz0hRixzPW5ldyBNYXA7cmV0dXJuIGRyKCgpPT57dmFyIHQ9SSxuPWFlKCk7aT1uLnByb21pc2U7dHJ5e1Byb21pc2UucmVzb2x2ZShlKCkpLnRoZW4obi5yZXNvbHZlLG4ucmVqZWN0KS5maW5hbGx5KGNuKX1jYXRjaChlKXtuLnJlamVjdChlKSxjbigpfXZhciBjPWo7aWYobyl7aWYodC5mJjMyNzY4KXZhciBsPWxuKCk7aWYoci5iLmlzX3JlbmRlcmVkKCkpcy5nZXQoYyk/LnJlamVjdChUZSkscy5kZWxldGUoYyk7ZWxzZXtmb3IobGV0IGUgb2Ygcy52YWx1ZXMoKSllLnJlamVjdChUZSk7cy5jbGVhcigpfXMuc2V0KGMsbil9bGV0IHU9KGUsbj12b2lkIDApPT57aWYobCYmbChuPT09VGUpLCEobj09PVRlfHx0LmYmMTYzODQpKXtpZihjLmFjdGl2YXRlKCksbilhLmZ8PXhlLEVuKGEsbik7ZWxzZXthLmYmODM4ODYwOCYmKGEuZl49eGUpLEVuKGEsZSk7Zm9yKGxldFtlLHRdb2Ygcyl7aWYocy5kZWxldGUoZSksZT09PWMpYnJlYWs7dC5yZWplY3QoVGUpfX1jLmRlYWN0aXZhdGUoKX19O24ucHJvbWlzZS50aGVuKHUsZT0+dShudWxsLGV8fGB1bmtub3duYCkpfSksYXIoKCk9Pntmb3IobGV0IGUgb2Ygcy52YWx1ZXMoKSllLnJlamVjdChUZSl9KSxuZXcgUHJvbWlzZShlPT57ZnVuY3Rpb24gdChuKXtmdW5jdGlvbiByKCl7bj09PWk/ZShhKTp0KGkpfW4udGhlbihyLHIpfXQoaSl9KX1mdW5jdGlvbiBmbihlKXtsZXQgdD11bihlKTtyZXR1cm4gcnR8fEZyKHQpLHR9ZnVuY3Rpb24gcG4oZSl7bGV0IHQ9dW4oZSk7cmV0dXJuIHQuZXF1YWxzPW50LHR9ZnVuY3Rpb24gbW4oZSl7dmFyIHQ9ZS5lZmZlY3RzO2lmKHQhPT1udWxsKXtlLmVmZmVjdHM9bnVsbDtmb3IodmFyIG49MDtuPHQubGVuZ3RoO24rPTEpUCh0W25dKX19ZnVuY3Rpb24gaG4oZSl7dmFyIHQsbj1JLHI9ZS5wYXJlbnQ7aWYoIWtyJiZyIT09bnVsbCYmci5mJjI0NTc2KXJldHVybiBXZSgpLGUudjtOcihyKTt0cnl7ZS5mJj1+dmUsbW4oZSksdD1LcihlKX1maW5hbGx5e05yKG4pfXJldHVybiB0fWZ1bmN0aW9uIGduKGUpe3ZhciB0PWhuKGUpO2lmKCFlLmVxdWFscyh0KSYmKGUud3Y9VXIoKSwoIWo/LmlzX2Zvcmt8fGUuZGVwcz09PW51bGwpJiYoaj09PW51bGw/ZS52PXQ6ai5jYXB0dXJlKGUsdCwhMCksZS5kZXBzPT09bnVsbCkpKXtEKGUsc2UpO3JldHVybn1rcnx8KE09PT1udWxsP3h0KGUpOihpcigpfHxqPy5pc19mb3JrKSYmTS5zZXQoZSx0KSl9ZnVuY3Rpb24gX24oZSl7aWYoZS5lZmZlY3RzIT09bnVsbClmb3IobGV0IHQgb2YgZS5lZmZlY3RzKSh0LnRlYXJkb3dufHx0LmFjKSYmKHQudGVhcmRvd24/LigpLHQuYWM/LmFib3J0KFRlKSx0LnRlYXJkb3duPXgsdC5hYz1udWxsLEpyKHQsMCksdnIodCkpfWZ1bmN0aW9uIHZuKGUpe2lmKGUuZWZmZWN0cyE9PW51bGwpZm9yKGxldCB0IG9mIGUuZWZmZWN0cyl0LnRlYXJkb3duJiZZcih0KX12YXIgeW49bmV3IFNldCxibj1uZXcgTWFwLHhuPSExO2Z1bmN0aW9uIFNuKGUsdCl7cmV0dXJue2Y6MCx2OmUscmVhY3Rpb25zOm51bGwsZXF1YWxzOmV0LHJ2OjAsd3Y6MH19ZnVuY3Rpb24gQ24oZSx0KXtsZXQgbj1TbihlLHQpO3JldHVybiBGcihuKSxufWZ1bmN0aW9uIHduKGUsdD0hMSxuPSEwKXtsZXQgcj1TbihlKTtyZXR1cm4gdHx8KHIuZXF1YWxzPW50KSxpdCYmbiYmRSE9PW51bGwmJkUubCE9PW51bGwmJihFLmwucz8/PVtdKS5wdXNoKHIpLHJ9ZnVuY3Rpb24gVG4oZSx0LG49ITEpe3JldHVybiBGIT09bnVsbCYmKCFqcnx8Ri5mJjEzMTA3MikmJmR0KCkmJkYuZiY0MzI1Mzk0JiYoUHI9PT1udWxsfHwhbS5jYWxsKFByLGUpKSYmUmUoKSxFbihlLG4/am4odCk6dCxIdCl9ZnVuY3Rpb24gRW4oZSx0LG49bnVsbCl7aWYoIWUuZXF1YWxzKHQpKXtibi5zZXQoZSxrcj90OmUudik7dmFyIHI9R3QuZW5zdXJlKCk7aWYoci5jYXB0dXJlKGUsdCksZS5mJjIpe2xldCB0PWU7ZS5mJjIwNDgmJmhuKHQpLE09PT1udWxsJiZ4dCh0KX1lLnd2PVVyKCksQW4oZSxjZSxuKSxkdCgpJiZJIT09bnVsbCYmSS5mJjEwMjQmJiEoSS5mJjk2KSYmKExyPT09bnVsbD9ScihbZV0pOkxyLnB1c2goZSkpLCFyLmlzX2ZvcmsmJnluLnNpemU+MCYmIXhuJiZEbigpfXJldHVybiB0fWZ1bmN0aW9uIERuKCl7eG49ITE7Zm9yKGxldCBlIG9mIHluKWUuZiYxMDI0JiZEKGUsbGUpLFdyKGUpJiZZcihlKTt5bi5jbGVhcigpfWZ1bmN0aW9uIE9uKGUsdD0xKXt2YXIgbj1SKGUpLHI9dD09PTE/bisrOm4tLTtyZXR1cm4gVG4oZSxuKSxyfWZ1bmN0aW9uIGtuKGUpe1RuKGUsZS52KzEpfWZ1bmN0aW9uIEFuKGUsdCxuKXt2YXIgcj1lLnJlYWN0aW9ucztpZihyIT09bnVsbClmb3IodmFyIGk9ZHQoKSxhPXIubGVuZ3RoLG89MDtvPGE7bysrKXt2YXIgcz1yW29dLGM9cy5mO2lmKCEoIWkmJnM9PT1JKSl7dmFyIGw9KGMmY2UpPT09MDtpZihsJiZEKHMsdCksYyYyKXt2YXIgdT1zO00/LmRlbGV0ZSh1KSxjJjY1NTM2fHwoYyY1MTImJihJPT09bnVsbHx8IShJLmYmMjA5NzE1MikpJiYocy5mfD12ZSksQW4odSxsZSxuKSl9ZWxzZSBpZihsKXt2YXIgZD1zO2MmMTYmJkp0IT09bnVsbCYmSnQuYWRkKGQpLG49PT1udWxsP1F0KGQpOm4ucHVzaChkKX19fX1mdW5jdGlvbiBqbihlKXtpZih0eXBlb2YgZSE9YG9iamVjdGB8fCFlfHxTZSBpbiBlKXJldHVybiBlO2xldCB0PWIoZSk7aWYodCE9PXkmJnQhPT1lZSlyZXR1cm4gZTt2YXIgbj1uZXcgTWFwLHI9ZihlKSxpPUNuKDApLGE9bnVsbCxvPVZyLHM9ZT0+e2lmKFZyPT09bylyZXR1cm4gZSgpO3ZhciB0PUYsbj1WcjtNcihudWxsKSxIcihvKTt2YXIgcj1lKCk7cmV0dXJuIE1yKHQpLEhyKG4pLHJ9O3JldHVybiByJiZuLnNldChgbGVuZ3RoYCxDbihlLmxlbmd0aCxhKSksbmV3IFByb3h5KGUse2RlZmluZVByb3BlcnR5KGUsdCxyKXsoIShgdmFsdWVgaW4gcil8fHIuY29uZmlndXJhYmxlPT09ITF8fHIuZW51bWVyYWJsZT09PSExfHxyLndyaXRhYmxlPT09ITEpJiZJZSgpO3ZhciBpPW4uZ2V0KHQpO3JldHVybiBpPT09dm9pZCAwP3MoKCk9Pnt2YXIgZT1DbihyLnZhbHVlLGEpO3JldHVybiBuLnNldCh0LGUpLGV9KTpUbihpLHIudmFsdWUsITApLCEwfSxkZWxldGVQcm9wZXJ0eShlLHQpe3ZhciByPW4uZ2V0KHQpO2lmKHI9PT12b2lkIDApe2lmKHQgaW4gZSl7bGV0IGU9cygoKT0+Q24oUyxhKSk7bi5zZXQodCxlKSxrbihpKX19ZWxzZSBUbihyLFMpLGtuKGkpO3JldHVybiEwfSxnZXQodCxyLGkpe2lmKHI9PT1TZSlyZXR1cm4gZTt2YXIgbz1uLmdldChyKSxjPXIgaW4gdDtpZihvPT09dm9pZCAwJiYoIWN8fF8odCxyKT8ud3JpdGFibGUpJiYobz1zKCgpPT5DbihqbihjP3Rbcl06UyksYSkpLG4uc2V0KHIsbykpLG8hPT12b2lkIDApe3ZhciBsPVIobyk7cmV0dXJuIGw9PT1TP3ZvaWQgMDpsfXJldHVybiBSZWZsZWN0LmdldCh0LHIsaSl9LGdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLHQpe3ZhciByPVJlZmxlY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUsdCk7aWYociYmYHZhbHVlYGluIHIpe3ZhciBpPW4uZ2V0KHQpO2kmJihyLnZhbHVlPVIoaSkpfWVsc2UgaWYocj09PXZvaWQgMCl7dmFyIGE9bi5nZXQodCksbz1hPy52O2lmKGEhPT12b2lkIDAmJm8hPT1TKXJldHVybntlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx2YWx1ZTpvLHdyaXRhYmxlOiEwfX1yZXR1cm4gcn0saGFzKGUsdCl7aWYodD09PVNlKXJldHVybiEwO3ZhciByPW4uZ2V0KHQpLGk9ciE9PXZvaWQgMCYmci52IT09U3x8UmVmbGVjdC5oYXMoZSx0KTtyZXR1cm4ociE9PXZvaWQgMHx8SSE9PW51bGwmJighaXx8XyhlLHQpPy53cml0YWJsZSkpJiYocj09PXZvaWQgMCYmKHI9cygoKT0+Q24oaT9qbihlW3RdKTpTLGEpKSxuLnNldCh0LHIpKSxSKHIpPT09Uyk/ITE6aX0sc2V0KGUsdCxvLGMpe3ZhciBsPW4uZ2V0KHQpLHU9dCBpbiBlO2lmKHImJnQ9PT1gbGVuZ3RoYClmb3IodmFyIGQ9bztkPGwudjtkKz0xKXt2YXIgZj1uLmdldChkK2BgKTtmPT09dm9pZCAwP2QgaW4gZSYmKGY9cygoKT0+Q24oUyxhKSksbi5zZXQoZCtgYCxmKSk6VG4oZixTKX1pZihsPT09dm9pZCAwKSghdXx8XyhlLHQpPy53cml0YWJsZSkmJihsPXMoKCk9PkNuKHZvaWQgMCxhKSksVG4obCxqbihvKSksbi5zZXQodCxsKSk7ZWxzZXt1PWwudiE9PVM7dmFyIHA9cygoKT0+am4obykpO1RuKGwscCl9dmFyIG09UmVmbGVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSx0KTtpZihtPy5zZXQmJm0uc2V0LmNhbGwoYyxvKSwhdSl7aWYociYmdHlwZW9mIHQ9PWBzdHJpbmdgKXt2YXIgaD1uLmdldChgbGVuZ3RoYCksZz1OdW1iZXIodCk7TnVtYmVyLmlzSW50ZWdlcihnKSYmZz49aC52JiZUbihoLGcrMSl9a24oaSl9cmV0dXJuITB9LG93bktleXMoZSl7UihpKTt2YXIgdD1SZWZsZWN0Lm93bktleXMoZSkuZmlsdGVyKGU9Pnt2YXIgdD1uLmdldChlKTtyZXR1cm4gdD09PXZvaWQgMHx8dC52IT09U30pO2Zvcih2YXJbcixhXW9mIG4pYS52IT09UyYmIShyIGluIGUpJiZ0LnB1c2gocik7cmV0dXJuIHR9LHNldFByb3RvdHlwZU9mKCl7TGUoKX19KX1mdW5jdGlvbiBNbihlKXt0cnl7aWYodHlwZW9mIGU9PWBvYmplY3RgJiZlJiZTZSBpbiBlKXJldHVybiBlW1NlXX1jYXRjaHt9cmV0dXJuIGV9ZnVuY3Rpb24gTm4oZSx0KXtyZXR1cm4gT2JqZWN0LmlzKE1uKGUpLE1uKHQpKX12YXIgUG4sRm4sSW4sTG47ZnVuY3Rpb24gUm4oKXtpZihQbj09PXZvaWQgMCl7UG49d2luZG93LEZuPS9GaXJlZm94Ly50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpO3ZhciBlPUVsZW1lbnQucHJvdG90eXBlLHQ9Tm9kZS5wcm90b3R5cGUsbj1UZXh0LnByb3RvdHlwZTtJbj1fKHQsYGZpcnN0Q2hpbGRgKS5nZXQsTG49Xyh0LGBuZXh0U2libGluZ2ApLmdldCx0ZShlKSYmKGUuX19jbGljaz12b2lkIDAsZS5fX2NsYXNzTmFtZT12b2lkIDAsZS5fX2F0dHJpYnV0ZXM9bnVsbCxlLl9fc3R5bGU9dm9pZCAwLGUuX19lPXZvaWQgMCksdGUobikmJihuLl9fdD12b2lkIDApfX1mdW5jdGlvbiB6bihlPWBgKXtyZXR1cm4gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoZSl9ZnVuY3Rpb24gTihlKXtyZXR1cm4gSW4uY2FsbChlKX1mdW5jdGlvbiBCbihlKXtyZXR1cm4gTG4uY2FsbChlKX1mdW5jdGlvbiBWbihlLHQpe2lmKCFDKXJldHVybiBOKGUpO3ZhciBuPU4odyk7aWYobj09PW51bGwpbj13LmFwcGVuZENoaWxkKHpuKCkpO2Vsc2UgaWYodCYmbi5ub2RlVHlwZSE9PTMpe3ZhciByPXpuKCk7cmV0dXJuIG4/LmJlZm9yZShyKSxUKHIpLHJ9cmV0dXJuIHQmJkpuKG4pLFQobiksbn1mdW5jdGlvbiBIbihlLHQ9ITEpe2lmKCFDKXt2YXIgbj1OKGUpO3JldHVybiBuIGluc3RhbmNlb2YgQ29tbWVudCYmbi5kYXRhPT09YGA/Qm4obik6bn1pZih0KXtpZih3Py5ub2RlVHlwZSE9PTMpe3ZhciByPXpuKCk7cmV0dXJuIHc/LmJlZm9yZShyKSxUKHIpLHJ9Sm4odyl9cmV0dXJuIHd9ZnVuY3Rpb24gVW4oZSx0PTEsbj0hMSl7bGV0IHI9Qz93OmU7Zm9yKHZhciBpO3QtLTspaT1yLHI9Qm4ocik7aWYoIUMpcmV0dXJuIHI7aWYobil7aWYocj8ubm9kZVR5cGUhPT0zKXt2YXIgYT16bigpO3JldHVybiByPT09bnVsbD9pPy5hZnRlcihhKTpyLmJlZm9yZShhKSxUKGEpLGF9Sm4ocil9cmV0dXJuIFQocikscn1mdW5jdGlvbiBXbihlKXtlLnRleHRDb250ZW50PWBgfWZ1bmN0aW9uIEduKCl7cmV0dXJuIXJ0fHxKdCE9PW51bGw/ITE6KEkuZiZmZSkhPT0wfWZ1bmN0aW9uIEtuKGUsdCxuKXtsZXQgcj1uP3tpczpufTp2b2lkIDA7cmV0dXJuIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyh0Pz9gaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbGAsZSxyKX1mdW5jdGlvbiBxbihlPWBgKXtyZXR1cm4gZG9jdW1lbnQuY3JlYXRlQ29tbWVudChlKX1mdW5jdGlvbiBKbihlKXtpZihlLm5vZGVWYWx1ZS5sZW5ndGg8NjU1MzYpcmV0dXJuO2xldCB0PWUubmV4dFNpYmxpbmc7Zm9yKDt0IT09bnVsbCYmdC5ub2RlVHlwZT09PTM7KXQucmVtb3ZlKCksZS5ub2RlVmFsdWUrPXQubm9kZVZhbHVlLHQ9ZS5uZXh0U2libGluZ31mdW5jdGlvbiBZbihlLHQpe2lmKHQpe2xldCB0PWRvY3VtZW50LmJvZHk7ZS5hdXRvZm9jdXM9ITAsZ3QoKCk9Pntkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09dCYmZS5mb2N1cygpfSl9fWZ1bmN0aW9uIFhuKGUpe0MmJk4oZSkhPT1udWxsJiZXbihlKX12YXIgWm49ITE7ZnVuY3Rpb24gUW4oKXtabnx8KFpuPSEwLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoYHJlc2V0YCxlPT57UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e2lmKCFlLmRlZmF1bHRQcmV2ZW50ZWQpZm9yKGxldCB0IG9mIGUudGFyZ2V0LmVsZW1lbnRzKXQuX19vbl9yPy4oKX0pfSx7Y2FwdHVyZTohMH0pKX1mdW5jdGlvbiAkbihlKXt2YXIgdD1GLG49STtNcihudWxsKSxOcihudWxsKTt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e01yKHQpLE5yKG4pfX1mdW5jdGlvbiBlcihlLHQsbixyPW4pe2UuYWRkRXZlbnRMaXN0ZW5lcih0LCgpPT4kbihuKSk7bGV0IGk9ZS5fX29uX3I7aT9lLl9fb25fcj0oKT0+e2koKSxyKCEwKX06ZS5fX29uX3I9KCk9PnIoITApLFFuKCl9ZnVuY3Rpb24gdHIoZSl7ST09PW51bGwmJihGPT09bnVsbCYmTWUoZSksamUoKSksa3ImJkFlKGUpfWZ1bmN0aW9uIG5yKGUsdCl7dmFyIG49dC5sYXN0O249PT1udWxsP3QubGFzdD10LmZpcnN0PWU6KG4ubmV4dD1lLGUucHJldj1uLHQubGFzdD1lKX1mdW5jdGlvbiBycihlLHQpe3ZhciBuPUk7biE9PW51bGwmJm4uZiY4MTkyJiYoZXw9dWUpO3ZhciByPXtjdHg6RSxkZXBzOm51bGwsbm9kZXM6bnVsbCxmOmV8Y2V8NTEyLGZpcnN0Om51bGwsZm46dCxsYXN0Om51bGwsbmV4dDpudWxsLHBhcmVudDpuLGI6biYmbi5iLHByZXY6bnVsbCx0ZWFyZG93bjpudWxsLHd2OjAsYWM6bnVsbH07aj8ucmVnaXN0ZXJfY3JlYXRlZF9lZmZlY3Qocik7dmFyIGk9cjtpZihlJjQpVnQ9PT1udWxsP0d0LmVuc3VyZSgpLnNjaGVkdWxlKHIpOlZ0LnB1c2gocik7ZWxzZSBpZih0IT09bnVsbCl7dHJ5e1lyKHIpfWNhdGNoKGUpe3Rocm93IFAociksZX1pLmRlcHM9PT1udWxsJiZpLnRlYXJkb3duPT09bnVsbCYmaS5ub2Rlcz09PW51bGwmJmkuZmlyc3Q9PT1pLmxhc3QmJiEoaS5mJjUyNDI4OCkmJihpPWkuZmlyc3QsZSYxNiYmZSY2NTUzNiYmaSE9PW51bGwmJihpLmZ8PW1lKSl9aWYoaSE9PW51bGwmJihpLnBhcmVudD1uLG4hPT1udWxsJiZucihpLG4pLEYhPT1udWxsJiZGLmYmMiYmIShlJjY0KSkpe3ZhciBhPUY7KGEuZWZmZWN0cz8/PVtdKS5wdXNoKGkpfXJldHVybiByfWZ1bmN0aW9uIGlyKCl7cmV0dXJuIEYhPT1udWxsJiYhanJ9ZnVuY3Rpb24gYXIoZSl7bGV0IHQ9cnIoOCxudWxsKTtyZXR1cm4gRCh0LHNlKSx0LnRlYXJkb3duPWUsdH1mdW5jdGlvbiBvcihlKXt0cihgJGVmZmVjdGApO3ZhciB0PUkuZjtpZighRiYmdCYzMiYmISh0JjMyNzY4KSl7dmFyIG49RTsobi5lPz89W10pLnB1c2goZSl9ZWxzZSByZXR1cm4gc3IoZSl9ZnVuY3Rpb24gc3IoZSl7cmV0dXJuIHJyKDR8Z2UsZSl9ZnVuY3Rpb24gY3IoZSl7cmV0dXJuIHRyKGAkZWZmZWN0LnByZWApLHJyKDh8Z2UsZSl9ZnVuY3Rpb24gbHIoZSl7R3QuZW5zdXJlKCk7bGV0IHQ9cnIoNjR8aGUsZSk7cmV0dXJuKGU9e30pPT5uZXcgUHJvbWlzZShuPT57ZS5vdXRybz9Tcih0LCgpPT57UCh0KSxuKHZvaWQgMCl9KTooUCh0KSxuKHZvaWQgMCkpfSl9ZnVuY3Rpb24gdXIoZSl7cmV0dXJuIHJyKDQsZSl9ZnVuY3Rpb24gZHIoZSl7cmV0dXJuIHJyKGJlfGhlLGUpfWZ1bmN0aW9uIGZyKGUsdD0wKXtyZXR1cm4gcnIoOHx0LGUpfWZ1bmN0aW9uIHByKGUsdD1bXSxuPVtdLHI9W10pe29uKHIsdCxuLHQ9Pntycig4LCgpPT5lKC4uLnQubWFwKFIpKSl9KX1mdW5jdGlvbiBtcihlLHQ9MCl7cmV0dXJuIHJyKDE2fHQsZSl9ZnVuY3Rpb24gaHIoZSx0PTApe3JldHVybiBycihvZXx0LGUpfWZ1bmN0aW9uIGdyKGUpe3JldHVybiBycigzMnxoZSxlKX1mdW5jdGlvbiBfcihlKXt2YXIgdD1lLnRlYXJkb3duO2lmKHQhPT1udWxsKXtsZXQgZT1rcixuPUY7QXIoITApLE1yKG51bGwpO3RyeXt0LmNhbGwobnVsbCl9ZmluYWxseXtBcihlKSxNcihuKX19fWZ1bmN0aW9uIHZyKGUsdD0hMSl7dmFyIG49ZS5maXJzdDtmb3IoZS5maXJzdD1lLmxhc3Q9bnVsbDtuIT09bnVsbDspe2xldCBlPW4uYWM7ZSE9PW51bGwmJiRuKCgpPT57ZS5hYm9ydChUZSl9KTt2YXIgcj1uLm5leHQ7bi5mJjY0P24ucGFyZW50PW51bGw6UChuLHQpLG49cn19ZnVuY3Rpb24geXIoZSl7Zm9yKHZhciB0PWUuZmlyc3Q7dCE9PW51bGw7KXt2YXIgbj10Lm5leHQ7dC5mJjMyfHxQKHQpLHQ9bn19ZnVuY3Rpb24gUChlLHQ9ITApe3ZhciBuPSExOyh0fHxlLmYmMjYyMTQ0KSYmZS5ub2RlcyE9PW51bGwmJmUubm9kZXMuZW5kIT09bnVsbCYmKGJyKGUubm9kZXMuc3RhcnQsZS5ub2Rlcy5lbmQpLG49ITApLEQoZSxwZSksdnIoZSx0JiYhbiksSnIoZSwwKTt2YXIgcj1lLm5vZGVzJiZlLm5vZGVzLnQ7aWYociE9PW51bGwpZm9yKGxldCBlIG9mIHIpZS5zdG9wKCk7X3IoZSksZS5mXj1wZSxlLmZ8PWRlO3ZhciBpPWUucGFyZW50O2khPT1udWxsJiZpLmZpcnN0IT09bnVsbCYmeHIoZSksZS5uZXh0PWUucHJldj1lLnRlYXJkb3duPWUuY3R4PWUuZGVwcz1lLmZuPWUubm9kZXM9ZS5hYz1lLmI9bnVsbH1mdW5jdGlvbiBicihlLHQpe2Zvcig7ZSE9PW51bGw7KXt2YXIgbj1lPT09dD9udWxsOkJuKGUpO2UucmVtb3ZlKCksZT1ufX1mdW5jdGlvbiB4cihlKXt2YXIgdD1lLnBhcmVudCxuPWUucHJldixyPWUubmV4dDtuIT09bnVsbCYmKG4ubmV4dD1yKSxyIT09bnVsbCYmKHIucHJldj1uKSx0IT09bnVsbCYmKHQuZmlyc3Q9PT1lJiYodC5maXJzdD1yKSx0Lmxhc3Q9PT1lJiYodC5sYXN0PW4pKX1mdW5jdGlvbiBTcihlLHQsbj0hMCl7dmFyIHI9W107Q3IoZSxyLCEwKTt2YXIgaT0oKT0+e24mJlAoZSksdCYmdCgpfSxhPXIubGVuZ3RoO2lmKGE+MCl7dmFyIG89KCk9Pi0tYXx8aSgpO2Zvcih2YXIgcyBvZiByKXMub3V0KG8pfWVsc2UgaSgpfWZ1bmN0aW9uIENyKGUsdCxuKXtpZighKGUuZiY4MTkyKSl7ZS5mXj11ZTt2YXIgcj1lLm5vZGVzJiZlLm5vZGVzLnQ7aWYociE9PW51bGwpZm9yKGxldCBlIG9mIHIpKGUuaXNfZ2xvYmFsfHxuKSYmdC5wdXNoKGUpO2Zvcih2YXIgaT1lLmZpcnN0O2khPT1udWxsOyl7dmFyIGE9aS5uZXh0O2lmKCEoaS5mJjY0KSl7dmFyIG89KGkuZiY2NTUzNikhPTB8fChpLmYmMzIpIT0wJiYoZS5mJjE2KSE9MDtDcihpLHQsbz9uOiExKX1pPWF9fX1mdW5jdGlvbiB3cihlKXtUcihlLCEwKX1mdW5jdGlvbiBUcihlLHQpe2lmKGUuZiY4MTkyKXtlLmZePXVlLGUuZiYxMDI0fHwoRChlLGNlKSxHdC5lbnN1cmUoKS5zY2hlZHVsZShlKSk7Zm9yKHZhciBuPWUuZmlyc3Q7biE9PW51bGw7KXt2YXIgcj1uLm5leHQsaT0obi5mJjY1NTM2KSE9MHx8KG4uZiYzMikhPTA7VHIobixpP3Q6ITEpLG49cn12YXIgYT1lLm5vZGVzJiZlLm5vZGVzLnQ7aWYoYSE9PW51bGwpZm9yKGxldCBlIG9mIGEpKGUuaXNfZ2xvYmFsfHx0KSYmZS5pbigpfX1mdW5jdGlvbiBFcihlLHQpe2lmKGUubm9kZXMpZm9yKHZhciBuPWUubm9kZXMuc3RhcnQscj1lLm5vZGVzLmVuZDtuIT09bnVsbDspe3ZhciBpPW49PT1yP251bGw6Qm4obik7dC5hcHBlbmQobiksbj1pfX12YXIgRHI9bnVsbCxPcj0hMSxrcj0hMTtmdW5jdGlvbiBBcihlKXtrcj1lfXZhciBGPW51bGwsanI9ITE7ZnVuY3Rpb24gTXIoZSl7Rj1lfXZhciBJPW51bGw7ZnVuY3Rpb24gTnIoZSl7ST1lfXZhciBQcj1udWxsO2Z1bmN0aW9uIEZyKGUpe0YhPT1udWxsJiYoIXJ0fHxGLmYmMikmJihQcj09PW51bGw/UHI9W2VdOlByLnB1c2goZSkpfXZhciBMPW51bGwsSXI9MCxMcj1udWxsO2Z1bmN0aW9uIFJyKGUpe0xyPWV9dmFyIHpyPTEsQnI9MCxWcj1CcjtmdW5jdGlvbiBIcihlKXtWcj1lfWZ1bmN0aW9uIFVyKCl7cmV0dXJuKyt6cn1mdW5jdGlvbiBXcihlKXt2YXIgdD1lLmY7aWYodCYyMDQ4KXJldHVybiEwO2lmKHQmMiYmKGUuZiY9fnZlKSx0JjQwOTYpe2Zvcih2YXIgbj1lLmRlcHMscj1uLmxlbmd0aCxpPTA7aTxyO2krKyl7dmFyIGE9bltpXTtpZihXcihhKSYmZ24oYSksYS53dj5lLnd2KXJldHVybiEwfXQmNTEyJiZNPT09bnVsbCYmRChlLHNlKX1yZXR1cm4hMX1mdW5jdGlvbiBHcihlLHQsbj0hMCl7dmFyIHI9ZS5yZWFjdGlvbnM7aWYociE9PW51bGwmJiEoIXJ0JiZQciE9PW51bGwmJm0uY2FsbChQcixlKSkpZm9yKHZhciBpPTA7aTxyLmxlbmd0aDtpKyspe3ZhciBhPXJbaV07YS5mJjI/R3IoYSx0LCExKTp0PT09YSYmKG4/RChhLGNlKTphLmYmMTAyNCYmRChhLGxlKSxRdChhKSl9fWZ1bmN0aW9uIEtyKGUpe3ZhciB0PUwsbj1JcixyPUxyLGk9RixhPVByLG89RSxzPWpyLGM9VnIsbD1lLmY7TD1udWxsLElyPTAsTHI9bnVsbCxGPWwmOTY/bnVsbDplLFByPW51bGwsb3QoZS5jdHgpLGpyPSExLFZyPSsrQnIsZS5hYyE9PW51bGwmJigkbigoKT0+e2UuYWMuYWJvcnQoVGUpfSksZS5hYz1udWxsKTt0cnl7ZS5mfD15ZTt2YXIgdT1lLmZuLGQ9dSgpO2UuZnw9ZmU7dmFyIGY9ZS5kZXBzLHA9aj8uaXNfZm9yaztpZihMIT09bnVsbCl7dmFyIG07aWYocHx8SnIoZSxJciksZiE9PW51bGwmJklyPjApZm9yKGYubGVuZ3RoPUlyK0wubGVuZ3RoLG09MDttPEwubGVuZ3RoO20rKylmW0lyK21dPUxbbV07ZWxzZSBlLmRlcHM9Zj1MO2lmKGlyKCkmJmUuZiY1MTIpZm9yKG09SXI7bTxmLmxlbmd0aDttKyspKGZbbV0ucmVhY3Rpb25zPz89W10pLnB1c2goZSl9ZWxzZSAhcCYmZiE9PW51bGwmJklyPGYubGVuZ3RoJiYoSnIoZSxJciksZi5sZW5ndGg9SXIpO2lmKGR0KCkmJkxyIT09bnVsbCYmIWpyJiZmIT09bnVsbCYmIShlLmYmNjE0NikpZm9yKG09MDttPExyLmxlbmd0aDttKyspR3IoTHJbbV0sZSk7aWYoaSE9PW51bGwmJmkhPT1lKXtpZihCcisrLGkuZGVwcyE9PW51bGwpZm9yKGxldCBlPTA7ZTxuO2UrPTEpaS5kZXBzW2VdLnJ2PUJyO2lmKHQhPT1udWxsKWZvcihsZXQgZSBvZiB0KWUucnY9QnI7THIhPT1udWxsJiYocj09PW51bGw/cj1McjpyLnB1c2goLi4uTHIpKX1yZXR1cm4gZS5mJjgzODg2MDgmJihlLmZePXhlKSxkfWNhdGNoKGUpe3JldHVybiB2dChlKX1maW5hbGx5e2UuZl49eWUsTD10LElyPW4sTHI9cixGPWksUHI9YSxvdChvKSxqcj1zLFZyPWN9fWZ1bmN0aW9uIHFyKGUsdCl7bGV0IG49dC5yZWFjdGlvbnM7aWYobiE9PW51bGwpe3ZhciByPXAuY2FsbChuLGUpO2lmKHIhPT0tMSl7dmFyIGk9bi5sZW5ndGgtMTtpPT09MD9uPXQucmVhY3Rpb25zPW51bGw6KG5bcl09bltpXSxuLnBvcCgpKX19aWYobj09PW51bGwmJnQuZiYyJiYoTD09PW51bGx8fCFtLmNhbGwoTCx0KSkpe3ZhciBhPXQ7YS5mJjUxMiYmKGEuZl49NTEyLGEuZiY9fnZlKSxhLnYhPT1TJiZ4dChhKSxfbihhKSxKcihhLDApfX1mdW5jdGlvbiBKcihlLHQpe3ZhciBuPWUuZGVwcztpZihuIT09bnVsbClmb3IodmFyIHI9dDtyPG4ubGVuZ3RoO3IrKylxcihlLG5bcl0pfWZ1bmN0aW9uIFlyKGUpe3ZhciB0PWUuZjtpZighKHQmMTYzODQpKXtEKGUsc2UpO3ZhciBuPUkscj1PcjtJPWUsT3I9ITA7dHJ5e3QmMTY3NzcyMzI/eXIoZSk6dnIoZSksX3IoZSk7dmFyIGk9S3IoZSk7ZS50ZWFyZG93bj10eXBlb2YgaT09YGZ1bmN0aW9uYD9pOm51bGwsZS53dj16cn1maW5hbGx5e09yPXIsST1ufX19YXN5bmMgZnVuY3Rpb24gWHIoKXtpZihydClyZXR1cm4gbmV3IFByb21pc2UoZT0+e3JlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+ZSgpKSxzZXRUaW1lb3V0KCgpPT5lKCkpfSk7YXdhaXQgUHJvbWlzZS5yZXNvbHZlKCksS3QoKX1mdW5jdGlvbiBSKGUpe3ZhciB0PShlLmYmMikhPTA7aWYoRHI/LmFkZChlKSxGIT09bnVsbCYmIWpyJiYhKEkhPT1udWxsJiZJLmYmMTYzODQpJiYoUHI9PT1udWxsfHwhbS5jYWxsKFByLGUpKSl7dmFyIG49Ri5kZXBzO2lmKEYuZiYyMDk3MTUyKWUucnY8QnImJihlLnJ2PUJyLEw9PT1udWxsJiZuIT09bnVsbCYmbltJcl09PT1lP0lyKys6TD09PW51bGw/TD1bZV06TC5wdXNoKGUpKTtlbHNleyhGLmRlcHM/Pz1bXSkucHVzaChlKTt2YXIgcj1lLnJlYWN0aW9ucztyPT09bnVsbD9lLnJlYWN0aW9ucz1bRl06bS5jYWxsKHIsRil8fHIucHVzaChGKX19aWYoa3ImJmJuLmhhcyhlKSlyZXR1cm4gYm4uZ2V0KGUpO2lmKHQpe3ZhciBpPWU7aWYoa3Ipe3ZhciBhPWkudjtyZXR1cm4oIShpLmYmMTAyNCkmJmkucmVhY3Rpb25zIT09bnVsbHx8UXIoaSkpJiYoYT1obihpKSksYm4uc2V0KGksYSksYX12YXIgbz0oaS5mJjUxMik9PTAmJiFqciYmRiE9PW51bGwmJihPcnx8KEYuZiY1MTIpIT0wKSxzPShpLmYmZmUpPT09MDtXcihpKSYmKG8mJihpLmZ8PTUxMiksZ24oaSkpLG8mJiFzJiYodm4oaSksWnIoaSkpfWlmKE0/LmhhcyhlKSlyZXR1cm4gTS5nZXQoZSk7aWYoZS5mJjgzODg2MDgpdGhyb3cgZS52O3JldHVybiBlLnZ9ZnVuY3Rpb24gWnIoZSl7aWYoZS5mfD01MTIsZS5kZXBzIT09bnVsbClmb3IobGV0IHQgb2YgZS5kZXBzKSh0LnJlYWN0aW9ucz8/PVtdKS5wdXNoKGUpLHQuZiYyJiYhKHQuZiY1MTIpJiYodm4odCksWnIodCkpfWZ1bmN0aW9uIFFyKGUpe2lmKGUudj09PVMpcmV0dXJuITA7aWYoZS5kZXBzPT09bnVsbClyZXR1cm4hMTtmb3IobGV0IHQgb2YgZS5kZXBzKWlmKGJuLmhhcyh0KXx8dC5mJjImJlFyKHQpKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uICRyKGUpe3ZhciB0PWpyO3RyeXtyZXR1cm4ganI9ITAsZSgpfWZpbmFsbHl7anI9dH19ZnVuY3Rpb24gZWkoZSl7aWYoISh0eXBlb2YgZSE9YG9iamVjdGB8fCFlfHxlIGluc3RhbmNlb2YgRXZlbnRUYXJnZXQpKXtpZihTZSBpbiBlKXRpKGUpO2Vsc2UgaWYoIUFycmF5LmlzQXJyYXkoZSkpZm9yKGxldCB0IGluIGUpe2xldCBuPWVbdF07dHlwZW9mIG49PWBvYmplY3RgJiZuJiZTZSBpbiBuJiZ0aShuKX19fWZ1bmN0aW9uIHRpKGUsdD1uZXcgU2V0KXtpZih0eXBlb2YgZT09YG9iamVjdGAmJmUmJiEoZSBpbnN0YW5jZW9mIEV2ZW50VGFyZ2V0KSYmIXQuaGFzKGUpKXt0LmFkZChlKSxlIGluc3RhbmNlb2YgRGF0ZSYmZS5nZXRUaW1lKCk7Zm9yKGxldCBuIGluIGUpdHJ5e3RpKGVbbl0sdCl9Y2F0Y2h7fWxldCBuPWIoZSk7aWYobiE9PU9iamVjdC5wcm90b3R5cGUmJm4hPT1BcnJheS5wcm90b3R5cGUmJm4hPT1NYXAucHJvdG90eXBlJiZuIT09U2V0LnByb3RvdHlwZSYmbiE9PURhdGUucHJvdG90eXBlKXtsZXQgdD12KG4pO2ZvcihsZXQgbiBpbiB0KXtsZXQgcj10W25dLmdldDtpZihyKXRyeXtyLmNhbGwoZSl9Y2F0Y2h7fX19fX1mdW5jdGlvbiBuaShlKXtyZXR1cm4gZS5lbmRzV2l0aChgY2FwdHVyZWApJiZlIT09YGdvdHBvaW50ZXJjYXB0dXJlYCYmZSE9PWBsb3N0cG9pbnRlcmNhcHR1cmVgfXZhciByaT1bYGJlZm9yZWlucHV0YCxgY2xpY2tgLGBjaGFuZ2VgLGBkYmxjbGlja2AsYGNvbnRleHRtZW51YCxgZm9jdXNpbmAsYGZvY3Vzb3V0YCxgaW5wdXRgLGBrZXlkb3duYCxga2V5dXBgLGBtb3VzZWRvd25gLGBtb3VzZW1vdmVgLGBtb3VzZW91dGAsYG1vdXNlb3ZlcmAsYG1vdXNldXBgLGBwb2ludGVyZG93bmAsYHBvaW50ZXJtb3ZlYCxgcG9pbnRlcm91dGAsYHBvaW50ZXJvdmVyYCxgcG9pbnRlcnVwYCxgdG91Y2hlbmRgLGB0b3VjaG1vdmVgLGB0b3VjaHN0YXJ0YF07ZnVuY3Rpb24gaWkoZSl7cmV0dXJuIHJpLmluY2x1ZGVzKGUpfXZhciBhaT1gYWxsb3dmdWxsc2NyZWVuLmFzeW5jLmF1dG9mb2N1cy5hdXRvcGxheS5jaGVja2VkLmNvbnRyb2xzLmRlZmF1bHQuZGlzYWJsZWQuZm9ybW5vdmFsaWRhdGUuaW5kZXRlcm1pbmF0ZS5pbmVydC5pc21hcC5sb29wLm11bHRpcGxlLm11dGVkLm5vbW9kdWxlLm5vdmFsaWRhdGUub3Blbi5wbGF5c2lubGluZS5yZWFkb25seS5yZXF1aXJlZC5yZXZlcnNlZC5zZWFtbGVzcy5zZWxlY3RlZC53ZWJraXRkaXJlY3RvcnkuZGVmZXIuZGlzYWJsZXBpY3R1cmVpbnBpY3R1cmUuZGlzYWJsZXJlbW90ZXBsYXliYWNrYC5zcGxpdChgLmApLG9pPXtmb3Jtbm92YWxpZGF0ZTpgZm9ybU5vVmFsaWRhdGVgLGlzbWFwOmBpc01hcGAsbm9tb2R1bGU6YG5vTW9kdWxlYCxwbGF5c2lubGluZTpgcGxheXNJbmxpbmVgLHJlYWRvbmx5OmByZWFkT25seWAsZGVmYXVsdHZhbHVlOmBkZWZhdWx0VmFsdWVgLGRlZmF1bHRjaGVja2VkOmBkZWZhdWx0Q2hlY2tlZGAsc3Jjb2JqZWN0OmBzcmNPYmplY3RgLG5vdmFsaWRhdGU6YG5vVmFsaWRhdGVgLGFsbG93ZnVsbHNjcmVlbjpgYWxsb3dGdWxsc2NyZWVuYCxkaXNhYmxlcGljdHVyZWlucGljdHVyZTpgZGlzYWJsZVBpY3R1cmVJblBpY3R1cmVgLGRpc2FibGVyZW1vdGVwbGF5YmFjazpgZGlzYWJsZVJlbW90ZVBsYXliYWNrYH07ZnVuY3Rpb24gc2koZSl7cmV0dXJuIGU9ZS50b0xvd2VyQ2FzZSgpLG9pW2VdPz9lfVsuLi5haV07dmFyIGNpPVtgdG91Y2hzdGFydGAsYHRvdWNobW92ZWBdO2Z1bmN0aW9uIGxpKGUpe3JldHVybiBjaS5pbmNsdWRlcyhlKX12YXIgdWk9U3ltYm9sKGBldmVudHNgKSxkaT1uZXcgU2V0LGZpPW5ldyBTZXQ7ZnVuY3Rpb24gcGkoZSl7aWYoIUMpcmV0dXJuO2UucmVtb3ZlQXR0cmlidXRlKGBvbmxvYWRgKSxlLnJlbW92ZUF0dHJpYnV0ZShgb25lcnJvcmApO2xldCB0PWUuX19lO3QhPT12b2lkIDAmJihlLl9fZT12b2lkIDAscXVldWVNaWNyb3Rhc2soKCk9PntlLmlzQ29ubmVjdGVkJiZlLmRpc3BhdGNoRXZlbnQodCl9KSl9ZnVuY3Rpb24gbWkoZSx0LG4scj17fSl7ZnVuY3Rpb24gaShlKXtpZihyLmNhcHR1cmV8fHlpLmNhbGwodCxlKSwhZS5jYW5jZWxCdWJibGUpcmV0dXJuICRuKCgpPT5uPy5jYWxsKHRoaXMsZSkpfXJldHVybiBlLnN0YXJ0c1dpdGgoYHBvaW50ZXJgKXx8ZS5zdGFydHNXaXRoKGB0b3VjaGApfHxlPT09YHdoZWVsYD9ndCgoKT0+e3QuYWRkRXZlbnRMaXN0ZW5lcihlLGkscil9KTp0LmFkZEV2ZW50TGlzdGVuZXIoZSxpLHIpLGl9ZnVuY3Rpb24gaGkoZSx0LG4scixpKXt2YXIgYT17Y2FwdHVyZTpyLHBhc3NpdmU6aX0sbz1taShlLHQsbixhKTsodD09PWRvY3VtZW50LmJvZHl8fHQ9PT13aW5kb3d8fHQ9PT1kb2N1bWVudHx8dCBpbnN0YW5jZW9mIEhUTUxNZWRpYUVsZW1lbnQpJiZhcigoKT0+e3QucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLG8sYSl9KX1mdW5jdGlvbiBnaShlLHQsbil7KHRbdWldPz89e30pW2VdPW59ZnVuY3Rpb24gX2koZSl7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0KyspZGkuYWRkKGVbdF0pO2Zvcih2YXIgbiBvZiBmaSluKGUpfXZhciB2aT1udWxsO2Z1bmN0aW9uIHlpKGUpe3ZhciB0PXRoaXMsbj10Lm93bmVyRG9jdW1lbnQscj1lLnR5cGUsaT1lLmNvbXBvc2VkUGF0aD8uKCl8fFtdLGE9aVswXXx8ZS50YXJnZXQ7dmk9ZTt2YXIgbz0wLHM9dmk9PT1lJiZlW3VpXTtpZihzKXt2YXIgYz1pLmluZGV4T2Yocyk7aWYoYyE9PS0xJiYodD09PWRvY3VtZW50fHx0PT09d2luZG93KSl7ZVt1aV09dDtyZXR1cm59dmFyIGw9aS5pbmRleE9mKHQpO2lmKGw9PT0tMSlyZXR1cm47Yzw9bCYmKG89Yyl9aWYoYT1pW29dfHxlLnRhcmdldCxhIT09dCl7ZyhlLGBjdXJyZW50VGFyZ2V0YCx7Y29uZmlndXJhYmxlOiEwLGdldCgpe3JldHVybiBhfHxufX0pO3ZhciB1PUYsZD1JO01yKG51bGwpLE5yKG51bGwpO3RyeXtmb3IodmFyIGYscD1bXTthIT09bnVsbDspe3ZhciBtPWEuYXNzaWduZWRTbG90fHxhLnBhcmVudE5vZGV8fGEuaG9zdHx8bnVsbDt0cnl7dmFyIGg9YVt1aV0/LltyXTtoIT1udWxsJiYoIWEuZGlzYWJsZWR8fGUudGFyZ2V0PT09YSkmJmguY2FsbChhLGUpfWNhdGNoKGUpe2Y/cC5wdXNoKGUpOmY9ZX1pZihlLmNhbmNlbEJ1YmJsZXx8bT09PXR8fG09PT1udWxsKWJyZWFrO2E9bX1pZihmKXtmb3IobGV0IGUgb2YgcClxdWV1ZU1pY3JvdGFzaygoKT0+e3Rocm93IGV9KTt0aHJvdyBmfX1maW5hbGx5e2VbdWldPXQsZGVsZXRlIGUuY3VycmVudFRhcmdldCxNcih1KSxOcihkKX19fXZhciBiaT1nbG9iYWxUaGlzPy53aW5kb3c/LnRydXN0ZWRUeXBlcyYmZ2xvYmFsVGhpcy53aW5kb3cudHJ1c3RlZFR5cGVzLmNyZWF0ZVBvbGljeShgc3ZlbHRlLXRydXN0ZWQtaHRtbGAse2NyZWF0ZUhUTUw6ZT0+ZX0pO2Z1bmN0aW9uIHhpKGUpe3JldHVybiBiaT8uY3JlYXRlSFRNTChlKT8/ZX1mdW5jdGlvbiBTaShlKXt2YXIgdD1LbihgdGVtcGxhdGVgKTtyZXR1cm4gdC5pbm5lckhUTUw9eGkoZS5yZXBsYWNlQWxsKGA8IT5gLGA8IS0tLS0+YCkpLHQuY29udGVudH1mdW5jdGlvbiBDaShlLHQpe3ZhciBuPUk7bi5ub2Rlcz09PW51bGwmJihuLm5vZGVzPXtzdGFydDplLGVuZDp0LGE6bnVsbCx0Om51bGx9KX1mdW5jdGlvbiB3aShlLHQpe3ZhciBuPSh0JjEpIT0wLHI9KHQmMikhPTAsaSxhPSFlLnN0YXJ0c1dpdGgoYDwhPmApO3JldHVybigpPT57aWYoQylyZXR1cm4gQ2kodyxudWxsKSx3O2k9PT12b2lkIDAmJihpPVNpKGE/ZTpgPCE+YCtlKSxufHwoaT1OKGkpKSk7dmFyIHQ9cnx8Rm4/ZG9jdW1lbnQuaW1wb3J0Tm9kZShpLCEwKTppLmNsb25lTm9kZSghMCk7aWYobil7dmFyIG89Tih0KSxzPXQubGFzdENoaWxkO0NpKG8scyl9ZWxzZSBDaSh0LHQpO3JldHVybiB0fX1mdW5jdGlvbiBUaShlLHQsbj1gc3ZnYCl7dmFyIHI9IWUuc3RhcnRzV2l0aChgPCE+YCksaT0odCYxKSE9MCxhPWA8JHtufT4ke3I/ZTpgPCE+YCtlfTwvJHtufT5gLG87cmV0dXJuKCk9PntpZihDKXJldHVybiBDaSh3LG51bGwpLHc7aWYoIW8pe3ZhciBlPU4oU2koYSkpO2lmKGkpZm9yKG89ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpO04oZSk7KW8uYXBwZW5kQ2hpbGQoTihlKSk7ZWxzZSBvPU4oZSl9dmFyIHQ9by5jbG9uZU5vZGUoITApO2lmKGkpe3ZhciBuPU4odCkscj10Lmxhc3RDaGlsZDtDaShuLHIpfWVsc2UgQ2kodCx0KTtyZXR1cm4gdH19ZnVuY3Rpb24gRWkoZSx0KXtyZXR1cm4gVGkoZSx0LGBzdmdgKX1mdW5jdGlvbiBEaShlPWBgKXtpZighQyl7dmFyIHQ9em4oZStgYCk7cmV0dXJuIENpKHQsdCksdH12YXIgbj13O3JldHVybiBuLm5vZGVUeXBlPT09Mz9KbihuKToobi5iZWZvcmUobj16bigpKSxUKG4pKSxDaShuLG4pLG59ZnVuY3Rpb24gT2koKXtpZihDKXJldHVybiBDaSh3LG51bGwpLHc7dmFyIGU9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLHQ9ZG9jdW1lbnQuY3JlYXRlQ29tbWVudChgYCksbj16bigpO3JldHVybiBlLmFwcGVuZCh0LG4pLENpKHQsbiksZX1mdW5jdGlvbiBraShlLHQpe2lmKEMpe3ZhciBuPUk7KCEobi5mJjMyNzY4KXx8bi5ub2Rlcy5lbmQ9PT1udWxsKSYmKG4ubm9kZXMuZW5kPXcpLFllKCk7cmV0dXJufWUhPT1udWxsJiZlLmJlZm9yZSh0KX12YXIgQWk9ITA7ZnVuY3Rpb24gamkoZSx0KXt2YXIgbj10PT1udWxsP2BgOnR5cGVvZiB0PT1gb2JqZWN0YD9gJHt0fWA6dDtuIT09KGUuX190Pz89ZS5ub2RlVmFsdWUpJiYoZS5fX3Q9bixlLm5vZGVWYWx1ZT1gJHtufWApfWZ1bmN0aW9uIE1pKGUsdCl7cmV0dXJuIFBpKGUsdCl9dmFyIE5pPW5ldyBNYXA7ZnVuY3Rpb24gUGkoZSx7dGFyZ2V0OnQsYW5jaG9yOm4scHJvcHM6cj17fSxldmVudHM6aSxjb250ZXh0OmEsaW50cm86bz0hMCx0cmFuc2Zvcm1FcnJvcjpzfSl7Um4oKTt2YXIgYz12b2lkIDAsbD1scigoKT0+e3ZhciBsPW4/P3QuYXBwZW5kQ2hpbGQoem4oKSk7cm4obCx7cGVuZGluZzooKT0+e319LHQ9PntsdCh7fSk7dmFyIG49RTtpZihhJiYobi5jPWEpLGkmJihyLiQkZXZlbnRzPWkpLEMmJkNpKHQsbnVsbCksQWk9byxjPWUodCxyKXx8e30sQWk9ITAsQyYmKEkubm9kZXMuZW5kPXcsdz09PW51bGx8fHcubm9kZVR5cGUhPT04fHx3LmRhdGEhPT1gXWApKXRocm93IEdlKCksQmU7dXQoKX0scyk7dmFyIHU9bmV3IFNldCxkPWU9Pntmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIHI9ZVtuXTtpZighdS5oYXMocikpe3UuYWRkKHIpO3ZhciBpPWxpKHIpO2ZvcihsZXQgZSBvZlt0LGRvY3VtZW50XSl7dmFyIGE9TmkuZ2V0KGUpO2E9PT12b2lkIDAmJihhPW5ldyBNYXAsTmkuc2V0KGUsYSkpO3ZhciBvPWEuZ2V0KHIpO289PT12b2lkIDA/KGUuYWRkRXZlbnRMaXN0ZW5lcihyLHlpLHtwYXNzaXZlOml9KSxhLnNldChyLDEpKTphLnNldChyLG8rMSl9fX19O3JldHVybiBkKGgoZGkpKSxmaS5hZGQoZCksKCk9Pntmb3IodmFyIGUgb2YgdSlmb3IobGV0IG4gb2ZbdCxkb2N1bWVudF0pe3ZhciByPU5pLmdldChuKSxpPXIuZ2V0KGUpOy0taT09MD8obi5yZW1vdmVFdmVudExpc3RlbmVyKGUseWkpLHIuZGVsZXRlKGUpLHIuc2l6ZT09PTAmJk5pLmRlbGV0ZShuKSk6ci5zZXQoZSxpKX1maS5kZWxldGUoZCksbCE9PW4mJmwucGFyZW50Tm9kZT8ucmVtb3ZlQ2hpbGQobCl9fSk7cmV0dXJuIEZpLnNldChjLGwpLGN9dmFyIEZpPW5ldyBXZWFrTWFwO2Z1bmN0aW9uIElpKGUsdCl7bGV0IG49RmkuZ2V0KGUpO3JldHVybiBuPyhGaS5kZWxldGUoZSksbih0KSk6UHJvbWlzZS5yZXNvbHZlKCl9dmFyIExpPWNsYXNze2FuY2hvcjsjZT1uZXcgTWFwOyN0PW5ldyBNYXA7I249bmV3IE1hcDsjcj1uZXcgU2V0OyNpPSEwO2NvbnN0cnVjdG9yKGUsdD0hMCl7dGhpcy5hbmNob3I9ZSx0aGlzLiNpPXR9I2E9ZT0+e2lmKHRoaXMuI2UuaGFzKGUpKXt2YXIgdD10aGlzLiNlLmdldChlKSxuPXRoaXMuI3QuZ2V0KHQpO2lmKG4pd3IobiksdGhpcy4jci5kZWxldGUodCk7ZWxzZXt2YXIgcj10aGlzLiNuLmdldCh0KTtyJiYodGhpcy4jdC5zZXQodCxyLmVmZmVjdCksdGhpcy4jbi5kZWxldGUodCksci5mcmFnbWVudC5sYXN0Q2hpbGQucmVtb3ZlKCksdGhpcy5hbmNob3IuYmVmb3JlKHIuZnJhZ21lbnQpLG49ci5lZmZlY3QpfWZvcihsZXRbdCxuXW9mIHRoaXMuI2Upe2lmKHRoaXMuI2UuZGVsZXRlKHQpLHQ9PT1lKWJyZWFrO2xldCByPXRoaXMuI24uZ2V0KG4pO3ImJihQKHIuZWZmZWN0KSx0aGlzLiNuLmRlbGV0ZShuKSl9Zm9yKGxldFtlLHJdb2YgdGhpcy4jdCl7aWYoZT09PXR8fHRoaXMuI3IuaGFzKGUpKWNvbnRpbnVlO2xldCBpPSgpPT57aWYoQXJyYXkuZnJvbSh0aGlzLiNlLnZhbHVlcygpKS5pbmNsdWRlcyhlKSl7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpO0VyKHIsdCksdC5hcHBlbmQoem4oKSksdGhpcy4jbi5zZXQoZSx7ZWZmZWN0OnIsZnJhZ21lbnQ6dH0pfWVsc2UgUChyKTt0aGlzLiNyLmRlbGV0ZShlKSx0aGlzLiN0LmRlbGV0ZShlKX07dGhpcy4jaXx8IW4/KHRoaXMuI3IuYWRkKGUpLFNyKHIsaSwhMSkpOmkoKX19fTsjbz1lPT57dGhpcy4jZS5kZWxldGUoZSk7bGV0IHQ9QXJyYXkuZnJvbSh0aGlzLiNlLnZhbHVlcygpKTtmb3IobGV0W2Usbl1vZiB0aGlzLiNuKXQuaW5jbHVkZXMoZSl8fChQKG4uZWZmZWN0KSx0aGlzLiNuLmRlbGV0ZShlKSl9O2Vuc3VyZShlLHQpe3ZhciBuPWoscj1HbigpO2lmKHQmJiF0aGlzLiN0LmhhcyhlKSYmIXRoaXMuI24uaGFzKGUpKWlmKHIpe3ZhciBpPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxhPXpuKCk7aS5hcHBlbmQoYSksdGhpcy4jbi5zZXQoZSx7ZWZmZWN0OmdyKCgpPT50KGEpKSxmcmFnbWVudDppfSl9ZWxzZSB0aGlzLiN0LnNldChlLGdyKCgpPT50KHRoaXMuYW5jaG9yKSkpO2lmKHRoaXMuI2Uuc2V0KG4sZSkscil7Zm9yKGxldFt0LHJdb2YgdGhpcy4jdCl0PT09ZT9uLnVuc2tpcF9lZmZlY3Qocik6bi5za2lwX2VmZmVjdChyKTtmb3IobGV0W3Qscl1vZiB0aGlzLiNuKXQ9PT1lP24udW5za2lwX2VmZmVjdChyLmVmZmVjdCk6bi5za2lwX2VmZmVjdChyLmVmZmVjdCk7bi5vbmNvbW1pdCh0aGlzLiNhKSxuLm9uZGlzY2FyZCh0aGlzLiNvKX1lbHNlIEMmJih0aGlzLmFuY2hvcj13KSx0aGlzLiNhKG4pfX07ZnVuY3Rpb24gUmkoZSx0LG49ITEpe3ZhciByO0MmJihyPXcsWWUoKSk7dmFyIGk9bmV3IExpKGUpLGE9bj9tZTowO2Z1bmN0aW9uIG8oZSx0KXtpZihDKXt2YXIgbj0kZShyKTtpZihlIT09cGFyc2VJbnQobi5zdWJzdHJpbmcoMSkpKXt2YXIgYT1RZSgpO1QoYSksaS5hbmNob3I9YSxKZSghMSksaS5lbnN1cmUoZSx0KSxKZSghMCk7cmV0dXJufX1pLmVuc3VyZShlLHQpfW1yKCgpPT57dmFyIGU9ITE7dCgodCxuPTApPT57ZT0hMCxvKG4sdCl9KSxlfHxvKC0xLG51bGwpfSxhKX12YXIgemk9U3ltYm9sKGBOYU5gKTtmdW5jdGlvbiBCaShlLHQsbil7QyYmWWUoKTt2YXIgcj1uZXcgTGkoZSksaT0hZHQoKTttcigoKT0+e3ZhciBlPXQoKTtlIT09ZSYmKGU9emkpLGkmJnR5cGVvZiBlPT1gb2JqZWN0YCYmZSYmKGU9e30pLHIuZW5zdXJlKGUsbil9KX1mdW5jdGlvbiBWaShlLHQpe3JldHVybiB0fWZ1bmN0aW9uIEhpKGUsdCxuKXtmb3IodmFyIHI9W10saT10Lmxlbmd0aCxhLG89dC5sZW5ndGgscz0wO3M8aTtzKyspe2xldCBuPXRbc107U3IobiwoKT0+e2lmKGEpe2lmKGEucGVuZGluZy5kZWxldGUobiksYS5kb25lLmFkZChuKSxhLnBlbmRpbmcuc2l6ZT09PTApe3ZhciB0PWUub3V0cm9ncm91cHM7VWkoZSxoKGEuZG9uZSkpLHQuZGVsZXRlKGEpLHQuc2l6ZT09PTAmJihlLm91dHJvZ3JvdXBzPW51bGwpfX1lbHNlIC0tb30sITEpfWlmKG89PT0wKXt2YXIgYz1yLmxlbmd0aD09PTAmJm4hPT1udWxsO2lmKGMpe3ZhciBsPW4sdT1sLnBhcmVudE5vZGU7V24odSksdS5hcHBlbmQobCksZS5pdGVtcy5jbGVhcigpfVVpKGUsdCwhYyl9ZWxzZSBhPXtwZW5kaW5nOm5ldyBTZXQodCksZG9uZTpuZXcgU2V0fSwoZS5vdXRyb2dyb3Vwcz8/PW5ldyBTZXQpLmFkZChhKX1mdW5jdGlvbiBVaShlLHQsbj0hMCl7dmFyIHI7aWYoZS5wZW5kaW5nLnNpemU+MCl7cj1uZXcgU2V0O2ZvcihsZXQgdCBvZiBlLnBlbmRpbmcudmFsdWVzKCkpZm9yKGxldCBuIG9mIHQpci5hZGQoZS5pdGVtcy5nZXQobikuZSl9Zm9yKHZhciBpPTA7aTx0Lmxlbmd0aDtpKyspe3ZhciBhPXRbaV07cj8uaGFzKGEpPyhhLmZ8PV9lLEVyKGEsZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpKSk6UCh0W2ldLG4pfX12YXIgV2k7ZnVuY3Rpb24gR2koZSx0LG4scixpLGE9bnVsbCl7dmFyIG89ZSxzPW5ldyBNYXA7aWYodCY0KXt2YXIgYz1lO289Qz9UKE4oYykpOmMuYXBwZW5kQ2hpbGQoem4oKSl9QyYmWWUoKTt2YXIgbD1udWxsLHU9cG4oKCk9Pnt2YXIgZT1uKCk7cmV0dXJuIGYoZSk/ZTplPT1udWxsP1tdOmgoZSl9KSxkLHA9bmV3IE1hcCxtPSEwO2Z1bmN0aW9uIGcoZSl7di5lZmZlY3QuZiYxNjM4NHx8KHYucGVuZGluZy5kZWxldGUoZSksdi5mYWxsYmFjaz1sLHFpKHYsZCxvLHQsciksbCE9PW51bGwmJihkLmxlbmd0aD09PTA/bC5mJjMzNTU0NDMyPyhsLmZePV9lLFlpKGwsbnVsbCxvKSk6d3IobCk6U3IobCwoKT0+e2w9bnVsbH0pKSl9ZnVuY3Rpb24gXyhlKXt2LnBlbmRpbmcuZGVsZXRlKGUpfXZhciB2PXtlZmZlY3Q6bXIoKCk9PntkPVIodSk7dmFyIGU9ZC5sZW5ndGg7bGV0IGM9ITE7QyYmJGUobyk9PT1gWyFgIT0oZT09PTApJiYobz1RZSgpLFQobyksSmUoITEpLGM9ITApO2Zvcih2YXIgZj1uZXcgU2V0LGg9aix2PUduKCkseT0wO3k8ZTt5Kz0xKXtDJiZ3Lm5vZGVUeXBlPT09OCYmdy5kYXRhPT09YF1gJiYobz13LGM9ITAsSmUoITEpKTt2YXIgZWU9ZFt5XSxiPXIoZWUseSksdGU9bT9udWxsOnMuZ2V0KGIpO3RlPyh0ZS52JiZFbih0ZS52LGVlKSx0ZS5pJiZFbih0ZS5pLHkpLHYmJmgudW5za2lwX2VmZmVjdCh0ZS5lKSk6KHRlPUppKHMsbT9vOldpPz89em4oKSxlZSxiLHksaSx0LG4pLG18fCh0ZS5lLmZ8PV9lKSxzLnNldChiLHRlKSksZi5hZGQoYil9aWYoZT09PTAmJmEmJiFsJiYobT9sPWdyKCgpPT5hKG8pKToobD1ncigoKT0+YShXaT8/PXpuKCkpKSxsLmZ8PV9lKSksZT5mLnNpemUmJmtlKGBgLGBgLGBgKSxDJiZlPjAmJlQoUWUoKSksIW0paWYocC5zZXQoaCxmKSx2KXtmb3IobGV0W2UsdF1vZiBzKWYuaGFzKGUpfHxoLnNraXBfZWZmZWN0KHQuZSk7aC5vbmNvbW1pdChnKSxoLm9uZGlzY2FyZChfKX1lbHNlIGcoaCk7YyYmSmUoITApLFIodSl9KSxmbGFnczp0LGl0ZW1zOnMscGVuZGluZzpwLG91dHJvZ3JvdXBzOm51bGwsZmFsbGJhY2s6bH07bT0hMSxDJiYobz13KX1mdW5jdGlvbiBLaShlKXtmb3IoO2UhPT1udWxsJiYhKGUuZiYzMik7KWU9ZS5uZXh0O3JldHVybiBlfWZ1bmN0aW9uIHFpKGUsdCxuLHIsaSl7dmFyIGE9KHImOCkhPTAsbz10Lmxlbmd0aCxzPWUuaXRlbXMsYz1LaShlLmVmZmVjdC5maXJzdCksbCx1PW51bGwsZCxmPVtdLHA9W10sbSxnLF8sdjtpZihhKWZvcih2PTA7djxvO3YrPTEpbT10W3ZdLGc9aShtLHYpLF89cy5nZXQoZykuZSxfLmYmMzM1NTQ0MzJ8fChfLm5vZGVzPy5hPy5tZWFzdXJlKCksKGQ/Pz1uZXcgU2V0KS5hZGQoXykpO2Zvcih2PTA7djxvO3YrPTEpe2lmKG09dFt2XSxnPWkobSx2KSxfPXMuZ2V0KGcpLmUsZS5vdXRyb2dyb3VwcyE9PW51bGwpZm9yKGxldCB0IG9mIGUub3V0cm9ncm91cHMpdC5wZW5kaW5nLmRlbGV0ZShfKSx0LmRvbmUuZGVsZXRlKF8pO2lmKF8uZiY4MTkyJiYod3IoXyksYSYmKF8ubm9kZXM/LmE/LnVuZml4KCksKGQ/Pz1uZXcgU2V0KS5kZWxldGUoXykpKSxfLmYmMzM1NTQ0MzIpaWYoXy5mXj1fZSxfPT09YylZaShfLG51bGwsbik7ZWxzZXt2YXIgeT11P3UubmV4dDpjO189PT1lLmVmZmVjdC5sYXN0JiYoZS5lZmZlY3QubGFzdD1fLnByZXYpLF8ucHJldiYmKF8ucHJldi5uZXh0PV8ubmV4dCksXy5uZXh0JiYoXy5uZXh0LnByZXY9Xy5wcmV2KSxYaShlLHUsXyksWGkoZSxfLHkpLFlpKF8seSxuKSx1PV8sZj1bXSxwPVtdLGM9S2kodS5uZXh0KTtjb250aW51ZX1pZihfIT09Yyl7aWYobCE9PXZvaWQgMCYmbC5oYXMoXykpe2lmKGYubGVuZ3RoPHAubGVuZ3RoKXt2YXIgZWU9cFswXSxiO3U9ZWUucHJldjt2YXIgdGU9ZlswXSxuZT1mW2YubGVuZ3RoLTFdO2ZvcihiPTA7YjxmLmxlbmd0aDtiKz0xKVlpKGZbYl0sZWUsbik7Zm9yKGI9MDtiPHAubGVuZ3RoO2IrPTEpbC5kZWxldGUocFtiXSk7WGkoZSx0ZS5wcmV2LG5lLm5leHQpLFhpKGUsdSx0ZSksWGkoZSxuZSxlZSksYz1lZSx1PW5lLC0tdixmPVtdLHA9W119ZWxzZSBsLmRlbGV0ZShfKSxZaShfLGMsbiksWGkoZSxfLnByZXYsXy5uZXh0KSxYaShlLF8sdT09PW51bGw/ZS5lZmZlY3QuZmlyc3Q6dS5uZXh0KSxYaShlLHUsXyksdT1fO2NvbnRpbnVlfWZvcihmPVtdLHA9W107YyE9PW51bGwmJmMhPT1fOykobD8/PW5ldyBTZXQpLmFkZChjKSxwLnB1c2goYyksYz1LaShjLm5leHQpO2lmKGM9PT1udWxsKWNvbnRpbnVlfV8uZiYzMzU1NDQzMnx8Zi5wdXNoKF8pLHU9XyxjPUtpKF8ubmV4dCl9aWYoZS5vdXRyb2dyb3VwcyE9PW51bGwpe2ZvcihsZXQgdCBvZiBlLm91dHJvZ3JvdXBzKXQucGVuZGluZy5zaXplPT09MCYmKFVpKGUsaCh0LmRvbmUpKSxlLm91dHJvZ3JvdXBzPy5kZWxldGUodCkpO2Uub3V0cm9ncm91cHMuc2l6ZT09PTAmJihlLm91dHJvZ3JvdXBzPW51bGwpfWlmKGMhPT1udWxsfHxsIT09dm9pZCAwKXt2YXIgeD1bXTtpZihsIT09dm9pZCAwKWZvcihfIG9mIGwpXy5mJjgxOTJ8fHgucHVzaChfKTtmb3IoO2MhPT1udWxsOykhKGMuZiY4MTkyKSYmYyE9PWUuZmFsbGJhY2smJngucHVzaChjKSxjPUtpKGMubmV4dCk7dmFyIHJlPXgubGVuZ3RoO2lmKHJlPjApe3ZhciBpZT1yJjQmJm89PT0wP246bnVsbDtpZihhKXtmb3Iodj0wO3Y8cmU7dis9MSl4W3ZdLm5vZGVzPy5hPy5tZWFzdXJlKCk7Zm9yKHY9MDt2PHJlO3YrPTEpeFt2XS5ub2Rlcz8uYT8uZml4KCl9SGkoZSx4LGllKX19YSYmZ3QoKCk9PntpZihkIT09dm9pZCAwKWZvcihfIG9mIGQpXy5ub2Rlcz8uYT8uYXBwbHkoKX0pfWZ1bmN0aW9uIEppKGUsdCxuLHIsaSxhLG8scyl7dmFyIGM9byYxP28mMTY/U24obik6d24obiwhMSwhMSk6bnVsbCxsPW8mMj9TbihpKTpudWxsO3JldHVybnt2OmMsaTpsLGU6Z3IoKCk9PihhKHQsYz8/bixsPz9pLHMpLCgpPT57ZS5kZWxldGUocil9KSl9fWZ1bmN0aW9uIFlpKGUsdCxuKXtpZihlLm5vZGVzKWZvcih2YXIgcj1lLm5vZGVzLnN0YXJ0LGk9ZS5ub2Rlcy5lbmQsYT10JiYhKHQuZiYzMzU1NDQzMik/dC5ub2Rlcy5zdGFydDpuO3IhPT1udWxsOyl7dmFyIG89Qm4ocik7aWYoYS5iZWZvcmUocikscj09PWkpcmV0dXJuO3I9b319ZnVuY3Rpb24gWGkoZSx0LG4pe3Q9PT1udWxsP2UuZWZmZWN0LmZpcnN0PW46dC5uZXh0PW4sbj09PW51bGw/ZS5lZmZlY3QubGFzdD10Om4ucHJldj10fWZ1bmN0aW9uIFppKGUsdCxuPSExLHI9ITEsaT0hMSxhPSExKXt2YXIgbz1lLHM9YGA7aWYobil7dmFyIGM9ZTtDJiYobz1UKE4oYykpKX1wcigoKT0+e3ZhciBlPUk7aWYocz09PShzPXQoKT8/YGApKXtDJiZZZSgpO3JldHVybn1pZihuJiYhQyl7ZS5ub2Rlcz1udWxsLGMuaW5uZXJIVE1MPXMscyE9PWBgJiZDaShOKGMpLGMubGFzdENoaWxkKTtyZXR1cm59aWYoZS5ub2RlcyE9PW51bGwmJihicihlLm5vZGVzLnN0YXJ0LGUubm9kZXMuZW5kKSxlLm5vZGVzPW51bGwpLHMhPT1gYCl7aWYoQyl7Zm9yKHZhciBhPXcuZGF0YSxsPVllKCksdT1sO2whPT1udWxsJiYobC5ub2RlVHlwZSE9PTh8fGwuZGF0YSE9PWBgKTspdT1sLGw9Qm4obCk7aWYobD09PW51bGwpdGhyb3cgR2UoKSxCZTtDaSh3LHUpLG89VChsKTtyZXR1cm59dmFyIGQ9S24ocj9gc3ZnYDppP2BtYXRoYDpgdGVtcGxhdGVgLHI/SGU6aT9VZTp2b2lkIDApO2QuaW5uZXJIVE1MPXM7dmFyIGY9cnx8aT9kOmQuY29udGVudDtpZihDaShOKGYpLGYubGFzdENoaWxkKSxyfHxpKWZvcig7TihmKTspby5iZWZvcmUoTihmKSk7ZWxzZSBvLmJlZm9yZShmKX19KX1mdW5jdGlvbiBRaShlLHQsLi4ubil7dmFyIHI9bmV3IExpKGUpO21yKCgpPT57bGV0IGU9dCgpPz9udWxsO3IuZW5zdXJlKGUsZSYmKHQ9PmUodCwuLi5uKSkpfSxtZSl9ZnVuY3Rpb24gJGkoZSx0LG4pe3ZhciByO0MmJihyPXcsWWUoKSk7dmFyIGk9bmV3IExpKGUpO21yKCgpPT57dmFyIGU9dCgpPz9udWxsO2lmKEMmJiRlKHIpPT09YFtgIT0oZSE9PW51bGwpKXt2YXIgYT1RZSgpO1QoYSksaS5hbmNob3I9YSxKZSghMSksaS5lbnN1cmUoZSxlJiYodD0+bih0LGUpKSksSmUoITApO3JldHVybn1pLmVuc3VyZShlLGUmJih0PT5uKHQsZSkpKX0sbWUpfXZhciBlYT0oKT0+cGVyZm9ybWFuY2Uubm93KCksdGE9e3RpY2s6ZT0+cmVxdWVzdEFuaW1hdGlvbkZyYW1lKGUpLG5vdzooKT0+ZWEoKSx0YXNrczpuZXcgU2V0fTtmdW5jdGlvbiBuYSgpe2xldCBlPXRhLm5vdygpO3RhLnRhc2tzLmZvckVhY2godD0+e3QuYyhlKXx8KHRhLnRhc2tzLmRlbGV0ZSh0KSx0LmYoKSl9KSx0YS50YXNrcy5zaXplIT09MCYmdGEudGljayhuYSl9ZnVuY3Rpb24gcmEoZSl7bGV0IHQ7cmV0dXJuIHRhLnRhc2tzLnNpemU9PT0wJiZ0YS50aWNrKG5hKSx7cHJvbWlzZTpuZXcgUHJvbWlzZShuPT57dGEudGFza3MuYWRkKHQ9e2M6ZSxmOm59KX0pLGFib3J0KCl7dGEudGFza3MuZGVsZXRlKHQpfX19ZnVuY3Rpb24gaWEoZSx0KXskbigoKT0+e2UuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQodCkpfSl9ZnVuY3Rpb24gYWEoZSl7aWYoZT09PWBmbG9hdGApcmV0dXJuYGNzc0Zsb2F0YDtpZihlPT09YG9mZnNldGApcmV0dXJuYGNzc09mZnNldGA7aWYoZS5zdGFydHNXaXRoKGAtLWApKXJldHVybiBlO2xldCB0PWUuc3BsaXQoYC1gKTtyZXR1cm4gdC5sZW5ndGg9PT0xP3RbMF06dFswXSt0LnNsaWNlKDEpLm1hcChlPT5lWzBdLnRvVXBwZXJDYXNlKCkrZS5zbGljZSgxKSkuam9pbihgYCl9ZnVuY3Rpb24gb2EoZSl7bGV0IHQ9e30sbj1lLnNwbGl0KGA7YCk7Zm9yKGxldCBlIG9mIG4pe2xldFtuLHJdPWUuc3BsaXQoYDpgKTtpZighbnx8cj09PXZvaWQgMClicmVhaztsZXQgaT1hYShuLnRyaW0oKSk7dFtpXT1yLnRyaW0oKX1yZXR1cm4gdH12YXIgc2E9ZT0+ZTtmdW5jdGlvbiBjYShlLHQsbixyKXt2YXIgaT0oZSYxKSE9MCxhPShlJjIpIT0wLG89aSYmYSxzPShlJjQpIT0wLGM9bz9gYm90aGA6aT9gaW5gOmBvdXRgLGwsdT10LmluZXJ0LGQ9dC5zdHlsZS5vdmVyZmxvdyxmLHA7ZnVuY3Rpb24gbSgpe3JldHVybiAkbigoKT0+bD8/PW4oKSh0LHI/LigpPz97fSx7ZGlyZWN0aW9uOmN9KSl9dmFyIGg9e2lzX2dsb2JhbDpzLGluKCl7aWYodC5pbmVydD11LCFpKXtwPy5hYm9ydCgpLHA/LnJlc2V0Py4oKTtyZXR1cm59YXx8Zj8uYWJvcnQoKSxmPWxhKHQsbSgpLHAsMSwoKT0+e2lhKHQsYGludHJvc3RhcnRgKX0sKCk9PntpYSh0LGBpbnRyb2VuZGApLGY/LmFib3J0KCksZj1sPXZvaWQgMCx0LnN0eWxlLm92ZXJmbG93PWR9KX0sb3V0KGUpe2lmKCFhKXtlPy4oKSxsPXZvaWQgMDtyZXR1cm59dC5pbmVydD0hMCxwPWxhKHQsbSgpLGYsMCwoKT0+e2lhKHQsYG91dHJvc3RhcnRgKX0sKCk9PntpYSh0LGBvdXRyb2VuZGApLGU/LigpfSl9LHN0b3A6KCk9PntmPy5hYm9ydCgpLHA/LmFib3J0KCl9fSxnPUk7aWYoKGcubm9kZXMudD8/PVtdKS5wdXNoKGgpLGkmJkFpKXt2YXIgXz1zO2lmKCFfKXtmb3IodmFyIHY9Zy5wYXJlbnQ7diYmdi5mJjY1NTM2Oylmb3IoOyh2PXYucGFyZW50KSYmISh2LmYmMTYpOyk7Xz0hdnx8KHYuZiYzMjc2OCkhPTB9XyYmdXIoKCk9PnskcigoKT0+aC5pbigpKX0pfX1mdW5jdGlvbiBsYShlLHQsbixyLGksYSl7dmFyIG89cj09PTE7aWYobmUodCkpe3ZhciBzLGM9ITE7cmV0dXJuIGd0KCgpPT57Y3x8KHM9bGEoZSx0KHtkaXJlY3Rpb246bz9gaW5gOmBvdXRgfSksbixyLGksYSkpfSkse2Fib3J0OigpPT57Yz0hMCxzPy5hYm9ydCgpfSxkZWFjdGl2YXRlOigpPT5zLmRlYWN0aXZhdGUoKSxyZXNldDooKT0+cy5yZXNldCgpLHQ6KCk9PnMudCgpfX1pZihuPy5kZWFjdGl2YXRlKCksIXQ/LmR1cmF0aW9uJiYhdD8uZGVsYXkpcmV0dXJuIGkoKSxhKCkse2Fib3J0OngsZGVhY3RpdmF0ZTp4LHJlc2V0OngsdDooKT0+cn07bGV0e2RlbGF5Omw9MCxjc3M6dSx0aWNrOmQsZWFzaW5nOmY9c2F9PXQ7dmFyIHA9W107aWYobyYmbj09PXZvaWQgMCYmKGQmJmQoMCwxKSx1KSl7dmFyIG09b2EodSgwLDEpKTtwLnB1c2gobSxtKX12YXIgaD0oKT0+MS1yLGc9ZS5hbmltYXRlKHAse2R1cmF0aW9uOmwsZmlsbDpgZm9yd2FyZHNgfSk7cmV0dXJuIGcub25maW5pc2g9KCk9PntnLmNhbmNlbCgpLGkoKTt2YXIgbz1uPy50KCk/PzEtcjtuPy5hYm9ydCgpO3ZhciBzPXItbyxjPXQuZHVyYXRpb24qTWF0aC5hYnMocyksbD1bXTtpZihjPjApe3ZhciBwPSExO2lmKHUpZm9yKHZhciBtPU1hdGguY2VpbChjLygxZTMvNjApKSxfPTA7Xzw9bTtfKz0xKXt2YXIgdj1vK3MqZihfL20pLHk9b2EodSh2LDEtdikpO2wucHVzaCh5KSxwfHw9eS5vdmVyZmxvdz09PWBoaWRkZW5gfXAmJihlLnN0eWxlLm92ZXJmbG93PWBoaWRkZW5gKSxoPSgpPT57dmFyIGU9Zy5jdXJyZW50VGltZTtyZXR1cm4gbytzKmYoZS9jKX0sZCYmcmEoKCk9PntpZihnLnBsYXlTdGF0ZSE9PWBydW5uaW5nYClyZXR1cm4hMTt2YXIgZT1oKCk7cmV0dXJuIGQoZSwxLWUpLCEwfSl9Zz1lLmFuaW1hdGUobCx7ZHVyYXRpb246YyxmaWxsOmBmb3J3YXJkc2B9KSxnLm9uZmluaXNoPSgpPT57aD0oKT0+cixkPy4ociwxLXIpLGEoKX19LHthYm9ydDooKT0+e2cmJihnLmNhbmNlbCgpLGcuZWZmZWN0PW51bGwsZy5vbmZpbmlzaD14KX0sZGVhY3RpdmF0ZTooKT0+e2E9eH0scmVzZXQ6KCk9PntyPT09MCYmZD8uKDEsMCl9LHQ6KCk9PmgoKX19ZnVuY3Rpb24gdWEoZSx0LG4pe3VyKCgpPT57dmFyIHI9JHIoKCk9PnQoZSxuPy4oKSl8fHt9KTtpZihuJiZyPy51cGRhdGUpe3ZhciBpPSExLGE9e307ZnIoKCk9Pnt2YXIgZT1uKCk7ZWkoZSksaSYmdHQoYSxlKSYmKGE9ZSxyLnVwZGF0ZShlKSl9KSxpPSEwfWlmKHI/LmRlc3Ryb3kpcmV0dXJuKCk9PnIuZGVzdHJveSgpfSl9ZnVuY3Rpb24gZGEoZSx0KXt2YXIgbj12b2lkIDAscjtocigoKT0+e24hPT0obj10KCkpJiYociYmPShQKHIpLG51bGwpLG4mJihyPWdyKCgpPT57dXIoKCk9Pm4oZSkpfSkpKX0pfWZ1bmN0aW9uIGZhKGUpe3ZhciB0LG4scj1gYDtpZih0eXBlb2YgZT09YHN0cmluZ2B8fHR5cGVvZiBlPT1gbnVtYmVyYClyKz1lO2Vsc2UgaWYodHlwZW9mIGU9PWBvYmplY3RgKWlmKEFycmF5LmlzQXJyYXkoZSkpe3ZhciBpPWUubGVuZ3RoO2Zvcih0PTA7dDxpO3QrKyllW3RdJiYobj1mYShlW3RdKSkmJihyJiYocis9YCBgKSxyKz1uKX1lbHNlIGZvcihuIGluIGUpZVtuXSYmKHImJihyKz1gIGApLHIrPW4pO3JldHVybiByfWZ1bmN0aW9uIHBhKCl7Zm9yKHZhciBlLHQsbj0wLHI9YGAsaT1hcmd1bWVudHMubGVuZ3RoO248aTtuKyspKGU9YXJndW1lbnRzW25dKSYmKHQ9ZmEoZSkpJiYociYmKHIrPWAgYCkscis9dCk7cmV0dXJuIHJ9ZnVuY3Rpb24gbWEoZSl7cmV0dXJuIHR5cGVvZiBlPT1gb2JqZWN0YD9wYShlKTplPz9gYH12YXIgaGE9Wy4uLmAgCQpcclxmXHhBMFx277u/YF07ZnVuY3Rpb24gZ2EoZSx0LG4pe3ZhciByPWU9PW51bGw/YGA6YGArZTtpZih0JiYocj1yP3IrYCBgK3Q6dCksbil7Zm9yKHZhciBpIG9mIE9iamVjdC5rZXlzKG4pKWlmKG5baV0pcj1yP3IrYCBgK2k6aTtlbHNlIGlmKHIubGVuZ3RoKWZvcih2YXIgYT1pLmxlbmd0aCxvPTA7KG89ci5pbmRleE9mKGksbykpPj0wOyl7dmFyIHM9bythOyhvPT09MHx8aGEuaW5jbHVkZXMocltvLTFdKSkmJihzPT09ci5sZW5ndGh8fGhhLmluY2x1ZGVzKHJbc10pKT9yPShvPT09MD9gYDpyLnN1YnN0cmluZygwLG8pKStyLnN1YnN0cmluZyhzKzEpOm89c319cmV0dXJuIHI9PT1gYD9udWxsOnJ9ZnVuY3Rpb24gX2EoZSx0PSExKXt2YXIgbj10P2AgIWltcG9ydGFudDtgOmA7YCxyPWBgO2Zvcih2YXIgaSBvZiBPYmplY3Qua2V5cyhlKSl7dmFyIGE9ZVtpXTthIT1udWxsJiZhIT09YGAmJihyKz1gIGAraStgOiBgK2Erbil9cmV0dXJuIHJ9ZnVuY3Rpb24gdmEoZSl7cmV0dXJuIGVbMF0hPT1gLWB8fGVbMV0hPT1gLWA/ZS50b0xvd2VyQ2FzZSgpOmV9ZnVuY3Rpb24geWEoZSx0KXtpZih0KXt2YXIgbj1gYCxyLGk7aWYoQXJyYXkuaXNBcnJheSh0KT8ocj10WzBdLGk9dFsxXSk6cj10LGUpe2U9U3RyaW5nKGUpLnJlcGxhY2VBbGwoL1xzKlwvXCouKj9cKlwvXHMqL2csYGApLnRyaW0oKTt2YXIgYT0hMSxvPTAscz0hMSxjPVtdO3ImJmMucHVzaCguLi5PYmplY3Qua2V5cyhyKS5tYXAodmEpKSxpJiZjLnB1c2goLi4uT2JqZWN0LmtleXMoaSkubWFwKHZhKSk7dmFyIGw9MCx1PS0xO2xldCB0PWUubGVuZ3RoO2Zvcih2YXIgZD0wO2Q8dDtkKyspe3ZhciBmPWVbZF07aWYocz9mPT09YC9gJiZlW2QtMV09PT1gKmAmJihzPSExKTphP2E9PT1mJiYoYT0hMSk6Zj09PWAvYCYmZVtkKzFdPT09YCpgP3M9ITA6Zj09PWAiYHx8Zj09PWAnYD9hPWY6Zj09PWAoYD9vKys6Zj09PWApYCYmby0tLCFzJiZhPT09ITEmJm89PT0wKXtpZihmPT09YDpgJiZ1PT09LTEpdT1kO2Vsc2UgaWYoZj09PWA7YHx8ZD09PXQtMSl7aWYodSE9PS0xKXt2YXIgcD12YShlLnN1YnN0cmluZyhsLHUpLnRyaW0oKSk7aWYoIWMuaW5jbHVkZXMocCkpe2YhPT1gO2AmJmQrKzt2YXIgbT1lLnN1YnN0cmluZyhsLGQpLnRyaW0oKTtuKz1gIGArbStgO2B9fWw9ZCsxLHU9LTF9fX19cmV0dXJuIHImJihuKz1fYShyKSksaSYmKG4rPV9hKGksITApKSxuPW4udHJpbSgpLG49PT1gYD9udWxsOm59cmV0dXJuIGU9PW51bGw/bnVsbDpTdHJpbmcoZSl9ZnVuY3Rpb24gYmEoZSx0LG4scixpLGEpe3ZhciBvPWUuX19jbGFzc05hbWU7aWYoQ3x8byE9PW58fG89PT12b2lkIDApe3ZhciBzPWdhKG4scixhKTsoIUN8fHMhPT1lLmdldEF0dHJpYnV0ZShgY2xhc3NgKSkmJihzPT1udWxsP2UucmVtb3ZlQXR0cmlidXRlKGBjbGFzc2ApOnQ/ZS5jbGFzc05hbWU9czplLnNldEF0dHJpYnV0ZShgY2xhc3NgLHMpKSxlLl9fY2xhc3NOYW1lPW59ZWxzZSBpZihhJiZpIT09YSlmb3IodmFyIGMgaW4gYSl7dmFyIGw9ISFhW2NdOyhpPT1udWxsfHxsIT09ISFpW2NdKSYmZS5jbGFzc0xpc3QudG9nZ2xlKGMsbCl9cmV0dXJuIGF9ZnVuY3Rpb24geGEoZSx0PXt9LG4scil7Zm9yKHZhciBpIGluIG4pe3ZhciBhPW5baV07dFtpXSE9PWEmJihuW2ldPT1udWxsP2Uuc3R5bGUucmVtb3ZlUHJvcGVydHkoaSk6ZS5zdHlsZS5zZXRQcm9wZXJ0eShpLGEscikpfX1mdW5jdGlvbiBTYShlLHQsbixyKXt2YXIgaT1lLl9fc3R5bGU7aWYoQ3x8aSE9PXQpe3ZhciBhPXlhKHQscik7KCFDfHxhIT09ZS5nZXRBdHRyaWJ1dGUoYHN0eWxlYCkpJiYoYT09bnVsbD9lLnJlbW92ZUF0dHJpYnV0ZShgc3R5bGVgKTplLnN0eWxlLmNzc1RleHQ9YSksZS5fX3N0eWxlPXR9ZWxzZSByJiYoQXJyYXkuaXNBcnJheShyKT8oeGEoZSxuPy5bMF0sclswXSkseGEoZSxuPy5bMV0sclsxXSxgaW1wb3J0YW50YCkpOnhhKGUsbixyKSk7cmV0dXJuIHJ9ZnVuY3Rpb24gQ2EoZSx0LG49ITEpe2lmKGUubXVsdGlwbGUpe2lmKHQ9PW51bGwpcmV0dXJuO2lmKCFmKHQpKXJldHVybiBLZSgpO2Zvcih2YXIgciBvZiBlLm9wdGlvbnMpci5zZWxlY3RlZD10LmluY2x1ZGVzKEVhKHIpKTtyZXR1cm59Zm9yKHIgb2YgZS5vcHRpb25zKWlmKE5uKEVhKHIpLHQpKXtyLnNlbGVjdGVkPSEwO3JldHVybn0oIW58fHQhPT12b2lkIDApJiYoZS5zZWxlY3RlZEluZGV4PS0xKX1mdW5jdGlvbiB3YShlKXt2YXIgdD1uZXcgTXV0YXRpb25PYnNlcnZlcigoKT0+e0NhKGUsZS5fX3ZhbHVlKX0pO3Qub2JzZXJ2ZShlLHtjaGlsZExpc3Q6ITAsc3VidHJlZTohMCxhdHRyaWJ1dGVzOiEwLGF0dHJpYnV0ZUZpbHRlcjpbYHZhbHVlYF19KSxhcigoKT0+e3QuZGlzY29ubmVjdCgpfSl9ZnVuY3Rpb24gVGEoZSx0LG49dCl7dmFyIHI9bmV3IFdlYWtTZXQsaT0hMDtlcihlLGBjaGFuZ2VgLHQ9Pnt2YXIgaT10P2Bbc2VsZWN0ZWRdYDpgOmNoZWNrZWRgLGE7aWYoZS5tdWx0aXBsZSlhPVtdLm1hcC5jYWxsKGUucXVlcnlTZWxlY3RvckFsbChpKSxFYSk7ZWxzZXt2YXIgbz1lLnF1ZXJ5U2VsZWN0b3IoaSk/P2UucXVlcnlTZWxlY3Rvcihgb3B0aW9uOm5vdChbZGlzYWJsZWRdKWApO2E9byYmRWEobyl9bihhKSxlLl9fdmFsdWU9YSxqIT09bnVsbCYmci5hZGQoail9KSx1cigoKT0+e3ZhciBhPXQoKTtpZihlPT09ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCl7dmFyIG89cnQ/THQ6ajtpZihyLmhhcyhvKSlyZXR1cm59aWYoQ2EoZSxhLGkpLGkmJmE9PT12b2lkIDApe3ZhciBzPWUucXVlcnlTZWxlY3RvcihgOmNoZWNrZWRgKTtzIT09bnVsbCYmKGE9RWEocyksbihhKSl9ZS5fX3ZhbHVlPWEsaT0hMX0pLHdhKGUpfWZ1bmN0aW9uIEVhKGUpe3JldHVybmBfX3ZhbHVlYGluIGU/ZS5fX3ZhbHVlOmUudmFsdWV9dmFyIERhPVN5bWJvbChgY2xhc3NgKSxPYT1TeW1ib2woYHN0eWxlYCksa2E9U3ltYm9sKGBpcyBjdXN0b20gZWxlbWVudGApLEFhPVN5bWJvbChgaXMgaHRtbGApLGphPUVlP2BsaW5rYDpgTElOS2AsTWE9RWU/YGlucHV0YDpgSU5QVVRgLE5hPUVlP2BvcHRpb25gOmBPUFRJT05gLFBhPUVlP2BzZWxlY3RgOmBTRUxFQ1RgLEZhPUVlP2Bwcm9ncmVzc2A6YFBST0dSRVNTYDtmdW5jdGlvbiBJYShlKXtpZihDKXt2YXIgdD0hMSxuPSgpPT57aWYoIXQpe2lmKHQ9ITAsZS5oYXNBdHRyaWJ1dGUoYHZhbHVlYCkpe3ZhciBuPWUudmFsdWU7emEoZSxgdmFsdWVgLG51bGwpLGUudmFsdWU9bn1pZihlLmhhc0F0dHJpYnV0ZShgY2hlY2tlZGApKXt2YXIgcj1lLmNoZWNrZWQ7emEoZSxgY2hlY2tlZGAsbnVsbCksZS5jaGVja2VkPXJ9fX07ZS5fX29uX3I9bixndChuKSxRbigpfX1mdW5jdGlvbiBMYShlLHQpe3ZhciBuPUhhKGUpO24udmFsdWU9PT0obi52YWx1ZT10Pz92b2lkIDApfHxlLnZhbHVlPT09dCYmKHQhPT0wfHxlLm5vZGVOYW1lIT09RmEpfHwoZS52YWx1ZT10Pz9gYCl9ZnVuY3Rpb24gUmEoZSx0KXt0P2UuaGFzQXR0cmlidXRlKGBzZWxlY3RlZGApfHxlLnNldEF0dHJpYnV0ZShgc2VsZWN0ZWRgLGBgKTplLnJlbW92ZUF0dHJpYnV0ZShgc2VsZWN0ZWRgKX1mdW5jdGlvbiB6YShlLHQsbixyKXt2YXIgaT1IYShlKTtDJiYoaVt0XT1lLmdldEF0dHJpYnV0ZSh0KSx0PT09YHNyY2B8fHQ9PT1gc3Jjc2V0YHx8dD09PWBocmVmYCYmZS5ub2RlTmFtZT09PWphKXx8aVt0XSE9PShpW3RdPW4pJiYodD09PWBsb2FkaW5nYCYmKGVbd2VdPW4pLG49PW51bGw/ZS5yZW1vdmVBdHRyaWJ1dGUodCk6dHlwZW9mIG4hPWBzdHJpbmdgJiZXYShlKS5pbmNsdWRlcyh0KT9lW3RdPW46ZS5zZXRBdHRyaWJ1dGUodCxuKSl9ZnVuY3Rpb24gQmEoZSx0LG4scixpPSExLGE9ITEpe2lmKEMmJmkmJmUubm9kZU5hbWU9PT1NYSl7dmFyIG89ZTsoby50eXBlPT09YGNoZWNrYm94YD9gZGVmYXVsdENoZWNrZWRgOmBkZWZhdWx0VmFsdWVgKWluIG58fElhKG8pfXZhciBzPUhhKGUpLGM9c1trYV0sbD0hc1tBYV07bGV0IHU9QyYmYzt1JiZKZSghMSk7dmFyIGQ9dHx8e30sZj1lLm5vZGVOYW1lPT09TmE7Zm9yKHZhciBwIGluIHQpcCBpbiBufHwobltwXT1udWxsKTtuLmNsYXNzP24uY2xhc3M9bWEobi5jbGFzcyk6KHJ8fG5bRGFdKSYmKG4uY2xhc3M9bnVsbCksbltPYV0mJihuLnN0eWxlPz89bnVsbCk7dmFyIG09V2EoZSk7Zm9yKGxldCBpIGluIG4pe2xldCBvPW5baV07aWYoZiYmaT09PWB2YWx1ZWAmJm89PW51bGwpe2UudmFsdWU9ZS5fX3ZhbHVlPWBgLGRbaV09bztjb250aW51ZX1pZihpPT09YGNsYXNzYCl7YmEoZSxlLm5hbWVzcGFjZVVSST09PWBodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sYCxvLHIsdD8uW0RhXSxuW0RhXSksZFtpXT1vLGRbRGFdPW5bRGFdO2NvbnRpbnVlfWlmKGk9PT1gc3R5bGVgKXtTYShlLG8sdD8uW09hXSxuW09hXSksZFtpXT1vLGRbT2FdPW5bT2FdO2NvbnRpbnVlfXZhciBoPWRbaV07aWYoIShvPT09aCYmIShvPT09dm9pZCAwJiZlLmhhc0F0dHJpYnV0ZShpKSkpKXtkW2ldPW87dmFyIGc9aVswXStpWzFdO2lmKGchPT1gJCRgKWlmKGc9PT1gb25gKXtsZXQgdD17fSxuPWAkJGAraSxyPWkuc2xpY2UoMik7dmFyIF89aWkocik7aWYobmkocikmJihyPXIuc2xpY2UoMCwtNyksdC5jYXB0dXJlPSEwKSwhXyYmaCl7aWYobyE9bnVsbCljb250aW51ZTtlLnJlbW92ZUV2ZW50TGlzdGVuZXIocixkW25dLHQpLGRbbl09bnVsbH1pZihfKWdpKHIsZSxvKSxfaShbcl0pO2Vsc2UgaWYobyE9bnVsbCl7ZnVuY3Rpb24gYShlKXtkW2ldLmNhbGwodGhpcyxlKX1kW25dPW1pKHIsZSxhLHQpfX1lbHNlIGlmKGk9PT1gc3R5bGVgKXphKGUsaSxvKTtlbHNlIGlmKGk9PT1gYXV0b2ZvY3VzYClZbihlLCEhbyk7ZWxzZSBpZighYyYmKGk9PT1gX192YWx1ZWB8fGk9PT1gdmFsdWVgJiZvIT1udWxsKSllLnZhbHVlPWUuX192YWx1ZT1vO2Vsc2UgaWYoaT09PWBzZWxlY3RlZGAmJmYpUmEoZSxvKTtlbHNle3ZhciB2PWk7bHx8KHY9c2kodikpO3ZhciB5PXY9PT1gZGVmYXVsdFZhbHVlYHx8dj09PWBkZWZhdWx0Q2hlY2tlZGA7aWYobz09bnVsbCYmIWMmJiF5KWlmKHNbaV09bnVsbCx2PT09YHZhbHVlYHx8dj09PWBjaGVja2VkYCl7bGV0IG49ZSxyPXQ9PT12b2lkIDA7aWYodj09PWB2YWx1ZWApe2xldCBlPW4uZGVmYXVsdFZhbHVlO24ucmVtb3ZlQXR0cmlidXRlKHYpLG4uZGVmYXVsdFZhbHVlPWUsbi52YWx1ZT1uLl9fdmFsdWU9cj9lOm51bGx9ZWxzZXtsZXQgZT1uLmRlZmF1bHRDaGVja2VkO24ucmVtb3ZlQXR0cmlidXRlKHYpLG4uZGVmYXVsdENoZWNrZWQ9ZSxuLmNoZWNrZWQ9cj9lOiExfX1lbHNlIGUucmVtb3ZlQXR0cmlidXRlKGkpO2Vsc2UgeXx8bS5pbmNsdWRlcyh2KSYmKGN8fHR5cGVvZiBvIT1gc3RyaW5nYCk/KGVbdl09byx2IGluIHMmJihzW3ZdPVMpKTp0eXBlb2YgbyE9YGZ1bmN0aW9uYCYmemEoZSx2LG8sYSl9fX1yZXR1cm4gdSYmSmUoITApLGR9ZnVuY3Rpb24gVmEoZSx0LG49W10scj1bXSxpPVtdLGEsbz0hMSxzPSExKXtvbihpLG4scixuPT57dmFyIHI9dm9pZCAwLGk9e30sYz1lLm5vZGVOYW1lPT09UGEsbD0hMTtpZihocigoKT0+e3ZhciB1PXQoLi4ubi5tYXAoUikpLGQ9QmEoZSxyLHUsYSxvLHMpO2wmJmMmJmB2YWx1ZWBpbiB1JiZDYShlLHUudmFsdWUpO2ZvcihsZXQgZSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKGkpKXVbZV18fFAoaVtlXSk7Zm9yKGxldCB0IG9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModSkpe3ZhciBmPXVbdF07dC5kZXNjcmlwdGlvbj09PWBAYXR0YWNoYCYmKCFyfHxmIT09clt0XSkmJihpW3RdJiZQKGlbdF0pLGlbdF09Z3IoKCk9PmRhKGUsKCk9PmYpKSksZFt0XT1mfXI9ZH0pLGMpe3ZhciB1PWU7dXIoKCk9PntDYSh1LHIudmFsdWUsITApLHdhKHUpfSl9bD0hMH0pfWZ1bmN0aW9uIEhhKGUpe3JldHVybiBlLl9fYXR0cmlidXRlcz8/PXtba2FdOmUubm9kZU5hbWUuaW5jbHVkZXMoYC1gKSxbQWFdOmUubmFtZXNwYWNlVVJJPT09VmV9fXZhciBVYT1uZXcgTWFwO2Z1bmN0aW9uIFdhKGUpe3ZhciB0PWUuZ2V0QXR0cmlidXRlKGBpc2ApfHxlLm5vZGVOYW1lLG49VWEuZ2V0KHQpO2lmKG4pcmV0dXJuIG47VWEuc2V0KHQsbj1bXSk7Zm9yKHZhciByLGk9ZSxhPUVsZW1lbnQucHJvdG90eXBlO2EhPT1pOyl7Zm9yKHZhciBvIGluIHI9dihpKSxyKXJbb10uc2V0JiZuLnB1c2gobyk7aT1iKGkpfXJldHVybiBufXZhciBHYT1udWxsO2Z1bmN0aW9uIEthKCl7aWYoR2E9PT1udWxsKXt2YXIgZT1Lbihgc2VsZWN0YCk7ZS5pbm5lckhUTUw9eGkoYDxvcHRpb24+PHNwYW4+dDwvc3Bhbj48L29wdGlvbj5gKSxHYT1lLmZpcnN0Q2hpbGQ/LmZpcnN0Q2hpbGQ/Lm5vZGVUeXBlPT09MX1yZXR1cm4gR2F9ZnVuY3Rpb24gcWEoZSx0KXt2YXIgbj1DO0thKCl8fChKZSghMSksZS50ZXh0Q29udGVudD1gYCxlLmFwcGVuZChxbihgYCkpKTt0cnl7dCgpfWZpbmFsbHl7biYmKEM/WGUoZSk6KEplKCEwKSxUKGUpKSl9fWZ1bmN0aW9uIEphKGUsdCxuPXQpe3ZhciByPW5ldyBXZWFrU2V0O2VyKGUsYGlucHV0YCxhc3luYyBpPT57dmFyIGE9aT9lLmRlZmF1bHRWYWx1ZTplLnZhbHVlO2lmKGE9WGEoZSk/WmEoYSk6YSxuKGEpLGohPT1udWxsJiZyLmFkZChqKSxhd2FpdCBYcigpLGEhPT0oYT10KCkpKXt2YXIgbz1lLnNlbGVjdGlvblN0YXJ0LHM9ZS5zZWxlY3Rpb25FbmQsYz1lLnZhbHVlLmxlbmd0aDtpZihlLnZhbHVlPWE/P2BgLHMhPT1udWxsKXt2YXIgbD1lLnZhbHVlLmxlbmd0aDtvPT09cyYmcz09PWMmJmw+Yz8oZS5zZWxlY3Rpb25TdGFydD1sLGUuc2VsZWN0aW9uRW5kPWwpOihlLnNlbGVjdGlvblN0YXJ0PW8sZS5zZWxlY3Rpb25FbmQ9TWF0aC5taW4ocyxsKSl9fX0pLChDJiZlLmRlZmF1bHRWYWx1ZSE9PWUudmFsdWV8fCRyKHQpPT1udWxsJiZlLnZhbHVlKSYmKG4oWGEoZSk/WmEoZS52YWx1ZSk6ZS52YWx1ZSksaiE9PW51bGwmJnIuYWRkKGopKSxmcigoKT0+e3ZhciBuPXQoKTtpZihlPT09ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCl7dmFyIGk9cnQ/THQ6ajtpZihyLmhhcyhpKSlyZXR1cm59WGEoZSkmJm49PT1aYShlLnZhbHVlKXx8ZS50eXBlPT09YGRhdGVgJiYhbiYmIWUudmFsdWV8fG4hPT1lLnZhbHVlJiYoZS52YWx1ZT1uPz9gYCl9KX1mdW5jdGlvbiBZYShlLHQsbj10KXtlcihlLGBjaGFuZ2VgLHQ9PntuKHQ/ZS5kZWZhdWx0Q2hlY2tlZDplLmNoZWNrZWQpfSksKEMmJmUuZGVmYXVsdENoZWNrZWQhPT1lLmNoZWNrZWR8fCRyKHQpPT1udWxsKSYmbihlLmNoZWNrZWQpLGZyKCgpPT57ZS5jaGVja2VkPSEhdCgpfSl9ZnVuY3Rpb24gWGEoZSl7dmFyIHQ9ZS50eXBlO3JldHVybiB0PT09YG51bWJlcmB8fHQ9PT1gcmFuZ2VgfWZ1bmN0aW9uIFphKGUpe3JldHVybiBlPT09YGA/bnVsbDorZX1mdW5jdGlvbiBRYShlLHQpe3JldHVybiBlPT09dHx8ZT8uW1NlXT09PXR9ZnVuY3Rpb24gJGEoZT17fSx0LG4scil7dmFyIGk9RS5yLGE9STtyZXR1cm4gdXIoKCk9Pnt2YXIgbyxzO3JldHVybiBmcigoKT0+e289cyxzPXI/LigpfHxbXSwkcigoKT0+e2UhPT1uKC4uLnMpJiYodChlLC4uLnMpLG8mJlFhKG4oLi4ubyksZSkmJnQobnVsbCwuLi5vKSl9KX0pLCgpPT57bGV0IHI9YTtmb3IoO3IhPT1pJiZyLnBhcmVudCE9PW51bGwmJnIucGFyZW50LmYmMzM1NTQ0MzI7KXI9ci5wYXJlbnQ7bGV0IG89KCk9PntzJiZRYShuKC4uLnMpLGUpJiZ0KG51bGwsLi4ucyl9LGM9ci50ZWFyZG93bjtyLnRlYXJkb3duPSgpPT57bygpLGM/LigpfX19KSxlfWZ1bmN0aW9uIGVvKGU9ITEpe2xldCB0PUUsbj10LmwudTtpZighbilyZXR1cm47bGV0IHI9KCk9PmVpKHQucyk7aWYoZSl7bGV0IGU9MCxuPXt9LGk9dW4oKCk9PntsZXQgcj0hMSxpPXQucztmb3IobGV0IGUgaW4gaSlpW2VdIT09bltlXSYmKG5bZV09aVtlXSxyPSEwKTtyZXR1cm4gciYmZSsrLGV9KTtyPSgpPT5SKGkpfW4uYi5sZW5ndGgmJmNyKCgpPT57dG8odCxyKSxpZShuLmIpfSksb3IoKCk9PntsZXQgZT0kcigoKT0+bi5tLm1hcChyZSkpO3JldHVybigpPT57Zm9yKGxldCB0IG9mIGUpdHlwZW9mIHQ9PWBmdW5jdGlvbmAmJnQoKX19KSxuLmEubGVuZ3RoJiZvcigoKT0+e3RvKHQsciksaWUobi5hKX0pfWZ1bmN0aW9uIHRvKGUsdCl7aWYoZS5sLnMpZm9yKGxldCB0IG9mIGUubC5zKVIodCk7dCgpfXZhciBubz17Z2V0KGUsdCl7aWYoIWUuZXhjbHVkZS5pbmNsdWRlcyh0KSlyZXR1cm4gZS5wcm9wc1t0XX0sc2V0KGUsdCl7cmV0dXJuITF9LGdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLHQpe2lmKCFlLmV4Y2x1ZGUuaW5jbHVkZXModCkmJnQgaW4gZS5wcm9wcylyZXR1cm57ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsdmFsdWU6ZS5wcm9wc1t0XX19LGhhcyhlLHQpe3JldHVybiBlLmV4Y2x1ZGUuaW5jbHVkZXModCk/ITE6dCBpbiBlLnByb3BzfSxvd25LZXlzKGUpe3JldHVybiBSZWZsZWN0Lm93bktleXMoZS5wcm9wcykuZmlsdGVyKHQ9PiFlLmV4Y2x1ZGUuaW5jbHVkZXModCkpfX07ZnVuY3Rpb24gcm8oZSx0LG4pe3JldHVybiBuZXcgUHJveHkoe3Byb3BzOmUsZXhjbHVkZTp0fSxubyl9dmFyIGlvPXtnZXQoZSx0KXtsZXQgbj1lLnByb3BzLmxlbmd0aDtmb3IoO24tLTspe2xldCByPWUucHJvcHNbbl07aWYobmUocikmJihyPXIoKSksdHlwZW9mIHI9PWBvYmplY3RgJiZyJiZ0IGluIHIpcmV0dXJuIHJbdF19fSxzZXQoZSx0LG4pe2xldCByPWUucHJvcHMubGVuZ3RoO2Zvcig7ci0tOyl7bGV0IGk9ZS5wcm9wc1tyXTtuZShpKSYmKGk9aSgpKTtsZXQgYT1fKGksdCk7aWYoYSYmYS5zZXQpcmV0dXJuIGEuc2V0KG4pLCEwfXJldHVybiExfSxnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSx0KXtsZXQgbj1lLnByb3BzLmxlbmd0aDtmb3IoO24tLTspe2xldCByPWUucHJvcHNbbl07aWYobmUocikmJihyPXIoKSksdHlwZW9mIHI9PWBvYmplY3RgJiZyJiZ0IGluIHIpe2xldCBlPV8ocix0KTtyZXR1cm4gZSYmIWUuY29uZmlndXJhYmxlJiYoZS5jb25maWd1cmFibGU9ITApLGV9fX0saGFzKGUsdCl7aWYodD09PVNlfHx0PT09Q2UpcmV0dXJuITE7Zm9yKGxldCBuIG9mIGUucHJvcHMpaWYobmUobikmJihuPW4oKSksbiE9bnVsbCYmdCBpbiBuKXJldHVybiEwO3JldHVybiExfSxvd25LZXlzKGUpe2xldCB0PVtdO2ZvcihsZXQgbiBvZiBlLnByb3BzKWlmKG5lKG4pJiYobj1uKCkpLG4pe2ZvcihsZXQgZSBpbiBuKXQuaW5jbHVkZXMoZSl8fHQucHVzaChlKTtmb3IobGV0IGUgb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhuKSl0LmluY2x1ZGVzKGUpfHx0LnB1c2goZSl9cmV0dXJuIHR9fTtmdW5jdGlvbiBhbyguLi5lKXtyZXR1cm4gbmV3IFByb3h5KHtwcm9wczplfSxpbyl9ZnVuY3Rpb24gb28oZSx0LG4scil7dmFyIGk9IWl0fHwobiYyKSE9MCxhPShuJjgpIT0wLG89KG4mMTYpIT0wLHM9cixjPSEwLGw9KCk9PihjJiYoYz0hMSxzPW8/JHIocik6cikscyk7bGV0IHU7aWYoYSl7dmFyIGQ9U2UgaW4gZXx8Q2UgaW4gZTt1PV8oZSx0KT8uc2V0Pz8oZCYmdCBpbiBlP249PmVbdF09bjp2b2lkIDApfXZhciBmLHA9ITE7YT9bZixwXT1GdCgoKT0+ZVt0XSk6Zj1lW3RdLGY9PT12b2lkIDAmJnIhPT12b2lkIDAmJihmPWwoKSx1JiYoaSYmUGUodCksdShmKSkpO3ZhciBtPWk/KCk9Pnt2YXIgbj1lW3RdO3JldHVybiBuPT09dm9pZCAwP2woKTooYz0hMCxuKX06KCk9Pnt2YXIgbj1lW3RdO3JldHVybiBuIT09dm9pZCAwJiYocz12b2lkIDApLG49PT12b2lkIDA/czpufTtpZihpJiYhKG4mNCkpcmV0dXJuIG07aWYodSl7dmFyIGg9ZS4kJGxlZ2FjeTtyZXR1cm4oZnVuY3Rpb24oZSx0KXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD4wPygoIWl8fCF0fHxofHxwKSYmdSh0P20oKTplKSxlKTptKCl9KX12YXIgZz0hMSx2PShuJjE/dW46cG4pKCgpPT4oZz0hMSxtKCkpKTthJiZSKHYpO3ZhciB5PUk7cmV0dXJuKGZ1bmN0aW9uKGUsdCl7aWYoYXJndW1lbnRzLmxlbmd0aD4wKXtsZXQgbj10P1Iodik6aSYmYT9qbihlKTplO3JldHVybiBUbih2LG4pLGc9ITAscyE9PXZvaWQgMCYmKHM9biksZX1yZXR1cm4ga3ImJmd8fHkuZiYxNjM4ND92LnY6Uih2KX0pfWZ1bmN0aW9uIHNvKGUpe0U9PT1udWxsJiZEZShgb25Nb3VudGApLGl0JiZFLmwhPT1udWxsP2xvKEUpLm0ucHVzaChlKTpvcigoKT0+e2xldCB0PSRyKGUpO2lmKHR5cGVvZiB0PT1gZnVuY3Rpb25gKXJldHVybiB0fSl9ZnVuY3Rpb24gY28oZSl7RT09PW51bGwmJkRlKGBvbkRlc3Ryb3lgKSxzbygoKT0+KCk9PiRyKGUpKX1mdW5jdGlvbiBsbyhlKXt2YXIgdD1lLmw7cmV0dXJuIHQudT8/PXthOltdLGI6W10sbTpbXX19dmFyIHo9KCgpPT57bGV0IGU9bmV3IE1hcDtyZXR1cm4gT2JqZWN0LmZyZWV6ZSh7b246KHQsbik9PntsZXQgcj1lLmdldCh0KTtyP3IucHVzaChuKTplLnNldCh0LFtuXSl9LG9mZjoodCxuKT0+e2xldCByPWUuZ2V0KHQpO3ImJmUuc2V0KHQsci5maWx0ZXIoZT0+ZSE9PW4pKX0sZW1pdDoodCxuKT0+e2xldCByPWUuZ2V0KHQpO3ImJnIuZm9yRWFjaChlPT5lKG4pKX19KX0pKCksdW89YGRhdGEtc21hcnRzdXBwLWlkYCxmbz0oKT0+d2luZG93LnRvcD8/d2luZG93LnBhcmVudCxCPSgpPT53aW5kb3cucGFyZW50LHBvPSgpPT5CKCkuZG9jdW1lbnQsbW89ZT0+ZSYmZS5vd25lckRvY3VtZW50fHxkb2N1bWVudCxobz0oe3ZpZDplfSk9PntsZXQgdD1CKCkuc21hcnRzdXBwfHx7fTt0LnZpZD1lLEIoKS5zbWFydHN1cHA9dH0sZ289YGRlYnVnYCxfbz1lPT57dHJ5e2xldCB0PUIoKS5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShnbyk7aWYoIXQpcmV0dXJuITE7aWYodD09PWV8fHQ9PT1gKmApcmV0dXJuITA7bGV0IG49ZS5tYXRjaCgvXlx3KzovZyk7cmV0dXJuIG4/dD09PWAke25bMF19KmA6ITF9Y2F0Y2h7cmV0dXJuITF9fSx2bz0oKGUsdCk9PihuLC4uLnIpPT57X28oZSkmJmNvbnNvbGUuZGVidWcoYCVjJHtlfWAsYGNvbG9yOiAke3R9O2AsbiwuLi5yKX0pKGBzbWFydHN1cHA6d2lkZ2V0YCxgIzEyMzNkZmApLFY9KCgpPT57bGV0IGU9bnVsbCx0PVtdO3JldHVybiBPYmplY3QuZnJlZXplKHtpbml0Om49PntlPW4sdm8oYHdpZGdldCBvcHRpb25zYCxuKSx0LmZvckVhY2goZT0+ZShuKSl9LGdldE9wdGlvbnM6KCk9PntpZighZSl0aHJvdyBFcnJvcihgV2lkZ2V0IG9wdGlvbnMgbm90IGluaXRpYWxpemVkYCk7cmV0dXJuIGV9LGF3YWl0T3B0aW9uczphc3luYygpPT5lfHxuZXcgUHJvbWlzZShlPT57dC5wdXNoKGUpfSksdXBkYXRlT3B0aW9uczp0PT57ZT17Li4uZSwuLi50fX19KX0pKCkseW89ZT0+e2xldCB0PWUuZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoYGJvZHlgKVswXS5nZXRBdHRyaWJ1dGUodW8pO2lmKCF0KXRocm93IEVycm9yKGBNaXNzaW5nIGNoYXQgSUQgYXR0cmlidXRlIG9uIGJvZHkgZWxlbWVudC5gKTtpZighZS5wYXJlbnQuJHNtYXJ0c3VwcCl0aHJvdyBFcnJvcihgU29tZXRoaW5nIHdlbnQgd3JvbmcuIFNlZW1zIGxpa2UgbG9hZGVyLmpzIGRpZCBub3QgaW5pdGlhbGl6ZSB3aWRnZXQuYCk7aWYoIWUucGFyZW50LiRzbWFydHN1cHAuZ2V0V2lkZ2V0KXRocm93IEVycm9yKGBHZXQgd2lkZ2V0IGZ1bmN0aW9uIHdhcyBub3Qgc3VwcGxpZWQgYnkgbG9hZGVyLmpzLmApO3JldHVybiBlLnBhcmVudC4kc21hcnRzdXBwLmdldFdpZGdldCh0KX07ZnVuY3Rpb24gYm8oZSl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIG49YXJndW1lbnRzW3RdO2Zvcih2YXIgciBpbiBuKWVbcl09bltyXX1yZXR1cm4gZX12YXIgeG89e3JlYWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbMF09PT1gImAmJihlPWUuc2xpY2UoMSwtMSkpLGUucmVwbGFjZSgvKCVbXGRBLUZdezJ9KSsvZ2ksZGVjb2RlVVJJQ29tcG9uZW50KX0sd3JpdGU6ZnVuY3Rpb24oZSl7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChlKS5yZXBsYWNlKC8lKDJbMzQ2QkZdfDNbQUMtRl18NDB8NVtCREVdfDYwfDdbQkNEXSkvZyxkZWNvZGVVUklDb21wb25lbnQpfX07ZnVuY3Rpb24gU28oZSx0KXtmdW5jdGlvbiBuKG4scixpKXtpZighKHR5cGVvZiBkb2N1bWVudD5gdWApKXtpPWJvKHt9LHQsaSksdHlwZW9mIGkuZXhwaXJlcz09YG51bWJlcmAmJihpLmV4cGlyZXM9bmV3IERhdGUoRGF0ZS5ub3coKStpLmV4cGlyZXMqODY0ZTUpKSxpLmV4cGlyZXMmJj1pLmV4cGlyZXMudG9VVENTdHJpbmcoKSxuPWVuY29kZVVSSUNvbXBvbmVudChuKS5yZXBsYWNlKC8lKDJbMzQ2Ql18NUV8NjB8N0MpL2csZGVjb2RlVVJJQ29tcG9uZW50KS5yZXBsYWNlKC9bKCldL2csZXNjYXBlKTt2YXIgYT1gYDtmb3IodmFyIG8gaW4gaSlpW29dJiYoYSs9YDsgYCtvLGlbb10hPT0hMCYmKGErPWA9YCtpW29dLnNwbGl0KGA7YClbMF0pKTtyZXR1cm4gZG9jdW1lbnQuY29va2llPW4rYD1gK2Uud3JpdGUocixuKSthfX1mdW5jdGlvbiByKHQpe2lmKCEodHlwZW9mIGRvY3VtZW50PmB1YHx8YXJndW1lbnRzLmxlbmd0aCYmIXQpKXtmb3IodmFyIG49ZG9jdW1lbnQuY29va2llP2RvY3VtZW50LmNvb2tpZS5zcGxpdChgOyBgKTpbXSxyPXt9LGk9MDtpPG4ubGVuZ3RoO2krKyl7dmFyIGE9bltpXS5zcGxpdChgPWApLG89YS5zbGljZSgxKS5qb2luKGA9YCk7dHJ5e3ZhciBzPWRlY29kZVVSSUNvbXBvbmVudChhWzBdKTtpZihyW3NdPWUucmVhZChvLHMpLHQ9PT1zKWJyZWFrfWNhdGNoe319cmV0dXJuIHQ/clt0XTpyfX1yZXR1cm4gT2JqZWN0LmNyZWF0ZSh7c2V0Om4sZ2V0OnIscmVtb3ZlOmZ1bmN0aW9uKGUsdCl7bihlLGBgLGJvKHt9LHQse2V4cGlyZXM6LTF9KSl9LHdpdGhBdHRyaWJ1dGVzOmZ1bmN0aW9uKGUpe3JldHVybiBTbyh0aGlzLmNvbnZlcnRlcixibyh7fSx0aGlzLmF0dHJpYnV0ZXMsZSkpfSx3aXRoQ29udmVydGVyOmZ1bmN0aW9uKGUpe3JldHVybiBTbyhibyh7fSx0aGlzLmNvbnZlcnRlcixlKSx0aGlzLmF0dHJpYnV0ZXMpfX0se2F0dHJpYnV0ZXM6e3ZhbHVlOk9iamVjdC5mcmVlemUodCl9LGNvbnZlcnRlcjp7dmFsdWU6T2JqZWN0LmZyZWV6ZShlKX19KX12YXIgQ289U28oeG8se3BhdGg6YC9gfSksd289YHNzdXBwYCxUbz0oZT0xODIpPT4oe2V4cGlyZXM6ZSxkb21haW46Vi5nZXRPcHRpb25zKCkuY29va2llRG9tYWluLHBhdGg6Vi5nZXRPcHRpb25zKCkuY29va2llUGF0aHx8YC9gLHNhbWVTaXRlOmBzdHJpY3RgLHNlY3VyZTpCKCkubG9jYXRpb24ucHJvdG9jb2w9PT1gaHR0cHM6YH0pLEVvPWU9PmAke1YuZ2V0T3B0aW9ucygpLmNvb2tpZVByZWZpeHx8YGB9JHt3b30uJHtlfWAsRG89KHtuYW1lOmUsdmFsdWU6dCxleHBpcmF0aW9uSW5EYXlzOm49MTgyLG9wdGlvbnM6cn0pPT57Q28uc2V0KEVvKGUpLHQsey4uLlRvKG4pLC4uLnJ9KX0sT289ZT0+Q28uZ2V0KEVvKGUpKSxrbz1lPT57bGV0IHQ9RW8oZSk7aWYoQ28uZ2V0KHQpKXtsZXR7cGF0aDplLGRvbWFpbjpufT1UbygpO0NvLnJlbW92ZSh0LHtwYXRoOmUsZG9tYWluOm59KX19LEFvPWU9Pih0LC4uLm4pPT57ZShgW1NtYXJ0c3VwcF0gJHt0fWAsLi4ubil9LEg9QW8oY29uc29sZS53YXJuKSxqbz1Bbyhjb25zb2xlLmVycm9yKSxNbz0oKT0+e2xldHtrZXk6ZX09Vi5nZXRPcHRpb25zKCk7cmV0dXJuYCR7QigpLlNNQVJUU1VQUF9BVVRPQ1JFQVRFPT09ITE/YCR7eW8od2luZG93KS5pZH1fJHt3b31gOndvfV8ke2V9YH0sTm89ZT0+YCR7TW8oKX0ke2U/YF8ke2V9YDpgYH1gLFBvPWU9Pnt0cnl7bGV0IHQ9d2luZG93LmxvY2FsU3RvcmFnZS5nZXRJdGVtKE5vKGUpKT8/YHt9YDtyZXR1cm4gSlNPTi5wYXJzZSh0KX1jYXRjaHtyZXR1cm57fX19LEZvPShlLHQpPT57dHJ5e3dpbmRvdy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShObyh0KSxKU09OLnN0cmluZ2lmeShlKSl9Y2F0Y2goZSl7SChgU2V0IHRvIGxvY2FsIHN0b3JhZ2UgZmFpbGVkYCxlKX19LElvPShlLHQpPT57Rm8oey4uLlBvKCksW2VdOlN0cmluZyh0KX0pfSxMbz1lPT57bGV0IHQ9UG8oKTt0W2VdJiYoZGVsZXRlIHRbZV0sRm8odCkpfSxSbz0oKT0+e3dpbmRvdy5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShObygpKSx3aW5kb3cubG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oTm8oYGNhcmRzYCkpfSxVPWZ1bmN0aW9uKGUpe3JldHVybiBlLkFuYWx5dGljc0NvbnNlbnQ9YGFuYWx5dGljc0NvbnNlbnRgLGUuQXV0aEZvcm09YGF1dGhGb3JtYCxlLklzTWVzc2VuZ2VyRnJhbWVFeHBhbmRlZD1gaXNNZXNzZW5nZXJGcmFtZUV4cGFuZGVkYCxlLklzTWVzc2VuZ2VyRnJhbWVPcGVuZWQ9YG9wZW5lZGAsZS5NYXJrZXRpbmdDb25zZW50PWBtYXJrZXRpbmdDb25zZW50YCxlLk1lc3NhZ2U9YG1lc3NhZ2VgLGUuUG9wdXBDbG9zZWRBdD1gcG9wdXBDbG9zZWRBdGAsZS5SYXRpbmdUZXh0PWByYXRpbmdUZXh0YCxlLlNvdW5kc0VuYWJsZWQ9YGVuYWJsZVNvdW5kc2AsZS5WaXNpdG9ySWQ9YHZpZGAsZS5WaXNpdHM9YHZpc2l0c2AsZS5UaWNrZXRGb3JtPWB0aWNrZXRGb3JtYCxlLlNlc3Npb25JZD1gc2Vzc2lvbklkYCxlfSh7fSksem89ZT0+e2xldCB0PWBgO3JldHVybiBlPT09VS5WaXNpdG9ySWQmJlYuZ2V0T3B0aW9ucygpLmNvb2tpZURvbWFpbiYmKHQ9T28oZSkpLHR8fFBvKClbZV19LEJvPSh7bmFtZTplLHZhbHVlOnR9KT0+e2U9PT1VLlZpc2l0b3JJZCYmVi5nZXRPcHRpb25zKCkuY29va2llRG9tYWluJiZEbyh7bmFtZTplLHZhbHVlOnR9KSxJbyhlLHQpfSxWbz1lPT57TG8oZSl9O3oub24oYGFuYWx5dGljc0NvbnNlbnRDaGFuZ2VkYCxlPT57Qm8oe25hbWU6VS5BbmFseXRpY3NDb25zZW50LHZhbHVlOlN0cmluZyhlKX0pfSksei5vbihgbWFya2V0aW5nQ29uc2VudENoYW5nZWRgLGU9PntCbyh7bmFtZTpVLk1hcmtldGluZ0NvbnNlbnQsdmFsdWU6U3RyaW5nKGUpfSl9KTt2YXIgSG89KCk9PiEhVi5nZXRPcHRpb25zKCkuY29uc2VudE1vZGVFbmFibGVkLFVvPSgpPT57bGV0IGU9em8oVS5BbmFseXRpY3NDb25zZW50KT09PWB0cnVlYDtyZXR1cm4hKEhvKCkmJiFlKX0sV289KCk9PntsZXQgZT16byhVLk1hcmtldGluZ0NvbnNlbnQpPT09YHRydWVgO3JldHVybiEoSG8oKSYmIWUpfSxHbz1gbW9kdWxlcHJlbG9hZGAsS289ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbmV3IFVSTChlLHQpLmhyZWZ9LHFvPXt9LEpvPWZ1bmN0aW9uKGUsdCxuKXtsZXQgcj1Qcm9taXNlLnJlc29sdmUoKTtpZih0JiZ0Lmxlbmd0aD4wKXtsZXQgZT1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZShgbGlua2ApLGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgbWV0YVtwcm9wZXJ0eT1jc3Atbm9uY2VdYCksYT1pPy5ub25jZXx8aT8uZ2V0QXR0cmlidXRlKGBub25jZWApO2Z1bmN0aW9uIG8oZSl7cmV0dXJuIFByb21pc2UuYWxsKGUubWFwKGU9PlByb21pc2UucmVzb2x2ZShlKS50aGVuKGU9Pih7c3RhdHVzOmBmdWxmaWxsZWRgLHZhbHVlOmV9KSxlPT4oe3N0YXR1czpgcmVqZWN0ZWRgLHJlYXNvbjplfSkpKSl9cj1vKHQubWFwKHQ9PntpZih0PUtvKHQsbiksdCBpbiBxbylyZXR1cm47cW9bdF09ITA7bGV0IHI9dC5lbmRzV2l0aChgLmNzc2ApLGk9cj9gW3JlbD0ic3R5bGVzaGVldCJdYDpgYDtpZihuKWZvcihsZXQgbj1lLmxlbmd0aC0xO24+PTA7bi0tKXtsZXQgaT1lW25dO2lmKGkuaHJlZj09PXQmJighcnx8aS5yZWw9PT1gc3R5bGVzaGVldGApKXJldHVybn1lbHNlIGlmKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYGxpbmtbaHJlZj0iJHt0fSJdJHtpfWApKXJldHVybjtsZXQgbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGBsaW5rYCk7aWYoby5yZWw9cj9gc3R5bGVzaGVldGA6R28scnx8KG8uYXM9YHNjcmlwdGApLG8uY3Jvc3NPcmlnaW49YGAsby5ocmVmPXQsYSYmby5zZXRBdHRyaWJ1dGUoYG5vbmNlYCxhKSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKG8pLHIpcmV0dXJuIG5ldyBQcm9taXNlKChlLG4pPT57by5hZGRFdmVudExpc3RlbmVyKGBsb2FkYCxlKSxvLmFkZEV2ZW50TGlzdGVuZXIoYGVycm9yYCwoKT0+bihFcnJvcihgVW5hYmxlIHRvIHByZWxvYWQgQ1NTIGZvciAke3R9YCkpKX0pfSkpfWZ1bmN0aW9uIGkoZSl7bGV0IHQ9bmV3IEV2ZW50KGB2aXRlOnByZWxvYWRFcnJvcmAse2NhbmNlbGFibGU6ITB9KTtpZih0LnBheWxvYWQ9ZSx3aW5kb3cuZGlzcGF0Y2hFdmVudCh0KSwhdC5kZWZhdWx0UHJldmVudGVkKXRocm93IGV9cmV0dXJuIHIudGhlbih0PT57Zm9yKGxldCBlIG9mIHR8fFtdKWUuc3RhdHVzPT09YHJlamVjdGVkYCYmaShlLnJlYXNvbik7cmV0dXJuIGUoKS5jYXRjaChpKX0pfSxZbz0oKT0+ISFWLmdldE9wdGlvbnMoKS5jcm9zc0RvbWFpbkVuYWJsZWQsWG89KCk9PlYuZ2V0T3B0aW9ucygpLmFsbG93ZWREb21haW5zLmxlbmd0aD4wLFpvPWFzeW5jKCk9Pnt0cnl7bGV0IGU9YXdhaXQgbmV3KGF3YWl0KEpvKCgpPT5pbXBvcnQoYC4vdGh1bWJtYXJrLmVzbS1DUDRDVTB5TC5qc2ApLFtdLGltcG9ydC5tZXRhLnVybCkpKS5UaHVtYm1hcmsoKS5nZXQoKTtyZXR1cm4gdm8oYFZpc2l0b3IgZmluZ2VycHJpbnQgY3JlYXRlZGAsZS50aHVtYm1hcmspLGUudGh1bWJtYXJrfWNhdGNoKGUpe0goYEZhaWxlZCB0byBnZW5lcmF0ZSBmaW5nZXJwcmludDpgLGUpfX0sUW89YXN5bmMoKT0+e2lmKCEoIVlvKCl8fCFYbygpKSlyZXR1cm4gWm8oKX0sJG89KCk9PnpvKFUuVmlzaXRvcklkKXx8bnVsbCxlcz1lPT5Cbyh7bmFtZTpVLlZpc2l0b3JJZCx2YWx1ZTpTdHJpbmcoZSl9KSx0cz0oKT0+e2lmKFdvKCkpcmV0dXJuIHpvKFUuVmlzaXRzKT9OdW1iZXIoem8oVS5WaXNpdHMpKTowfSxucz1lPT57V28oKSYmQm8oe25hbWU6VS5WaXNpdHMsdmFsdWU6U3RyaW5nKGUpfSl9O3oub24oYG1hcmtldGluZ0NvbnNlbnRDaGFuZ2VkYCxlPT57ZXx8Vm8oVS5WaXNpdHMpfSk7dmFyIHJzPShlLHQsbik9PntsZXR7c2V0OnIsc3Vic2NyaWJlOml9PU8odCx0PT57bGV0IHI9em8oZSk7ciYmdChuP24ocik6cil9KSxhPXQ9PntCbyh7bmFtZTplLHZhbHVlOlN0cmluZyh0KX0pfTtyZXR1cm57c2V0OmU9PnthKGUpLHIoZSl9LHN1YnNjcmliZTppfX0saXM9KCk9PmBvbnRvdWNoc3RhcnRgaW4gd2luZG93fHxuYXZpZ2F0b3IubXNNYXhUb3VjaFBvaW50cz4wLGFzPSgpPT5bYGlQYWQgU2ltdWxhdG9yYCxgaVBob25lIFNpbXVsYXRvcmAsYGlQb2QgU2ltdWxhdG9yYCxgaVBhZGAsYGlQaG9uZWAsYGlQb2RgXS5pbmNsdWRlcyhuYXZpZ2F0b3IucGxhdGZvcm0pfHxuYXZpZ2F0b3IudXNlckFnZW50LmluY2x1ZGVzKGBNYWNgKSYmYG9udG91Y2hlbmRgaW4gZG9jdW1lbnQsb3M9TyhudWxsKSxzcz1rKFtvcyxPKHt3aWR0aDpCKCkuaW5uZXJXaWR0aCxoZWlnaHQ6QigpLmlubmVySGVpZ2h0fSldLChbZSx0XSk9PntsZXR7d2lkZ2V0QmxvY2tpbmdPcHRpb25zOm59PVYuZ2V0T3B0aW9ucygpO2lmKG4/LmVuZm9yY2VEZXNrdG9wTW9kZSlyZXR1cm4hMTtpZihlKXtsZXR7aXNNb2JpbGU6dCxpc1RhYmxldDpufT1lO2lmKG4pcmV0dXJuITE7aWYodClyZXR1cm4hMH1yZXR1cm4gdC53aWR0aDw0NTB8fHQuaGVpZ2h0PDUwMH0pLGNzPWsoW3NzXSwoW2VdKT0+e2xldHtmdWxsU2NyZWVuRW5hYmxlZDp0fT1WLmdldE9wdGlvbnMoKTtyZXR1cm4hIShlfHx0KX0pLGxzPWsoW29zXSwoW2VdKT0+ZT8hIWU/LmlzRGVza3RvcCYmIWFzKCk6IWlzKCkpLHVzPWsoW2xzLGNzXSwoW2UsdF0pPT5lJiYhdCk7ayhbb3NdLChbZV0pPT4hIWU/LmlzVGFibGV0KTt2YXIgZHM9KCgpPT57bGV0IGU9Tyh7fSkse3N1YnNjcmliZTp0LHVwZGF0ZTpufT1lO3JldHVybntzdWJzY3JpYmU6dCxhZGQ6ZT0+e24odD0+KHsuLi50LFtlLmlkXTplfSkpfSxyZW1vdmU6ZT0+e24odD0+e2xldHtbZV06biwuLi5yfT10O3JldHVybiByfSl9LGZpbmQ6dD0+QShlKVt0XXx8bnVsbH19KSgpLGZzPWsoW2RzXSwoW2VdKT0+T2JqZWN0LnZhbHVlcyhlKSkscHM9ZT0+KHQsbj0zZTMpPT57bGV0IHI9YGZtLSR7ZX0tJHt0fWAsaT1kcy5maW5kKHIpLGE9MTtpJiYoY2xlYXJUaW1lb3V0KGkudGltZW91dCksYT1pLnJlY3VycmVuY2UrMSk7bGV0IG87cmV0dXJuIG4+MCYmKG89d2luZG93LnNldFRpbWVvdXQoKCk9PnttcyhyKX0sbikpLGRzLmFkZCh7aWQ6cix0eXBlOmUsdGV4dDp0LHRpbWVvdXQ6byxyZWN1cnJlbmNlOmF9KSwoKT0+bXMocil9LG1zPWU9Pntkcy5yZW1vdmUoZSl9LGhzPXBzKGBzdWNjZXNzYCksZ3M9cHMoYGVycm9yYCksX3M9cHMoYHdhcm5pbmdgKSx2cz1mdW5jdGlvbihlKXtyZXR1cm4gZVtlLkdvb2Q9NV09YEdvb2RgLGVbZS5Ob3JtYWw9M109YE5vcm1hbGAsZVtlLkJhZD0xXT1gQmFkYCxlfSh7fSkseXM9e1t2cy5Hb29kXTp7dmFsdWU6dnMuR29vZCx0ZXh0OmBhZ2VudFJhdGluZy5nb29kLmZvcm1UZXh0YCxuYW1lOmBnb29kYH0sW3ZzLk5vcm1hbF06e3ZhbHVlOnZzLk5vcm1hbCx0ZXh0OmBhZ2VudFJhdGluZy5ub3JtYWwuZm9ybVRleHRgLG5hbWU6YG5ldXRyYWxgfSxbdnMuQmFkXTp7dmFsdWU6dnMuQmFkLHRleHQ6YGFnZW50UmF0aW5nLmJhZC5mb3JtVGV4dGAsbmFtZTpgYmFkYH19LGJzPU9iamVjdC52YWx1ZXMoeXMpLnNvcnQoKGUsdCk9PnQudmFsdWUtZS52YWx1ZSkseHM9YHJhdGVfZm9ybV9pZGAsU3M9e2lkOnhzLHR5cGU6YG1lc3NhZ2VgLHN1YlR5cGU6YHN5c3RlbWAsY2hhbm5lbDp7dHlwZTpgZGVmYXVsdGAsaWQ6bnVsbH0sY2hhdElkOmBgLHZpc2l0b3JJZDpgYCxncm91cElkOm51bGwsYWdlbnRJZDpudWxsLHRyaWdnZXI6bnVsbCxjcmVhdGVkQXQ6YGAsY29udGVudDp7dHlwZTpgcmF0ZV9mb3JtYCxkYXRhOnt9fSxhdHRhY2htZW50czpbXSxzdWJqZWN0Om51bGwsZm9yd2FyZGVkTWVzc2FnZUlkOm51bGwscGFydGljaXBhbnRzOltdLHJlcGx5VG9NZXNzYWdlSWQ6bnVsbCxkZWxldGVkQXQ6bnVsbCx3aWRnZXRPcHRpb25zOntkaXNhYmxlSW5wdXQ6ITEsZGlzYWJsZUF1dGhlbnRpY2F0aW9uOiExLGRpc2FibGVBdHRhY2htZW50czohMX19LENzPU8obnVsbCksd3M9cygoKGUsdCk9Pnt2YXIgbj0xZTMscj1uKjYwLGk9cio2MCxhPWkqMjQsbz1hKjcscz1hKjM2NS4yNTt0LmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt0fHw9e307dmFyIG49dHlwZW9mIGU7aWYobj09PWBzdHJpbmdgJiZlLmxlbmd0aD4wKXJldHVybiBjKGUpO2lmKG49PT1gbnVtYmVyYCYmaXNGaW5pdGUoZSkpcmV0dXJuIHQubG9uZz91KGUpOmwoZSk7dGhyb3cgRXJyb3IoYHZhbCBpcyBub3QgYSBub24tZW1wdHkgc3RyaW5nIG9yIGEgdmFsaWQgbnVtYmVyLiB2YWw9YCtKU09OLnN0cmluZ2lmeShlKSl9O2Z1bmN0aW9uIGMoZSl7aWYoZT1TdHJpbmcoZSksIShlLmxlbmd0aD4xMDApKXt2YXIgdD0vXigtPyg/OlxkKyk/XC4/XGQrKSAqKG1pbGxpc2Vjb25kcz98bXNlY3M/fG1zfHNlY29uZHM/fHNlY3M/fHN8bWludXRlcz98bWlucz98bXxob3Vycz98aHJzP3xofGRheXM/fGR8d2Vla3M/fHd8eWVhcnM/fHlycz98eSk/JC9pLmV4ZWMoZSk7aWYodCl7dmFyIGM9cGFyc2VGbG9hdCh0WzFdKTtzd2l0Y2goKHRbMl18fGBtc2ApLnRvTG93ZXJDYXNlKCkpe2Nhc2VgeWVhcnNgOmNhc2VgeWVhcmA6Y2FzZWB5cnNgOmNhc2VgeXJgOmNhc2VgeWA6cmV0dXJuIGMqcztjYXNlYHdlZWtzYDpjYXNlYHdlZWtgOmNhc2Vgd2A6cmV0dXJuIGMqbztjYXNlYGRheXNgOmNhc2VgZGF5YDpjYXNlYGRgOnJldHVybiBjKmE7Y2FzZWBob3Vyc2A6Y2FzZWBob3VyYDpjYXNlYGhyc2A6Y2FzZWBocmA6Y2FzZWBoYDpyZXR1cm4gYyppO2Nhc2VgbWludXRlc2A6Y2FzZWBtaW51dGVgOmNhc2VgbWluc2A6Y2FzZWBtaW5gOmNhc2VgbWA6cmV0dXJuIGMqcjtjYXNlYHNlY29uZHNgOmNhc2Vgc2Vjb25kYDpjYXNlYHNlY3NgOmNhc2Vgc2VjYDpjYXNlYHNgOnJldHVybiBjKm47Y2FzZWBtaWxsaXNlY29uZHNgOmNhc2VgbWlsbGlzZWNvbmRgOmNhc2VgbXNlY3NgOmNhc2VgbXNlY2A6Y2FzZWBtc2A6cmV0dXJuIGM7ZGVmYXVsdDpyZXR1cm59fX19ZnVuY3Rpb24gbChlKXt2YXIgdD1NYXRoLmFicyhlKTtyZXR1cm4gdD49YT9NYXRoLnJvdW5kKGUvYSkrYGRgOnQ+PWk/TWF0aC5yb3VuZChlL2kpK2BoYDp0Pj1yP01hdGgucm91bmQoZS9yKStgbWA6dD49bj9NYXRoLnJvdW5kKGUvbikrYHNgOmUrYG1zYH1mdW5jdGlvbiB1KGUpe3ZhciB0PU1hdGguYWJzKGUpO3JldHVybiB0Pj1hP2QoZSx0LGEsYGRheWApOnQ+PWk/ZChlLHQsaSxgaG91cmApOnQ+PXI/ZChlLHQscixgbWludXRlYCk6dD49bj9kKGUsdCxuLGBzZWNvbmRgKTplK2AgbXNgfWZ1bmN0aW9uIGQoZSx0LG4scil7dmFyIGk9dD49bioxLjU7cmV0dXJuIE1hdGgucm91bmQoZS9uKStgIGArcisoaT9gc2A6YGApfX0pKSxUcz1zKCgoZSx0KT0+e2Z1bmN0aW9uIG4oZSl7bi5kZWJ1Zz1uLG4uZGVmYXVsdD1uLG4uY29lcmNlPWMsbi5kaXNhYmxlPW8sbi5lbmFibGU9aSxuLmVuYWJsZWQ9cyxuLmh1bWFuaXplPXdzKCksbi5kZXN0cm95PWwsT2JqZWN0LmtleXMoZSkuZm9yRWFjaCh0PT57blt0XT1lW3RdfSksbi5uYW1lcz1bXSxuLnNraXBzPVtdLG4uZm9ybWF0dGVycz17fTtmdW5jdGlvbiB0KGUpe2xldCB0PTA7Zm9yKGxldCBuPTA7bjxlLmxlbmd0aDtuKyspdD0odDw8NSktdCtlLmNoYXJDb2RlQXQobiksdHw9MDtyZXR1cm4gbi5jb2xvcnNbTWF0aC5hYnModCklbi5jb2xvcnMubGVuZ3RoXX1uLnNlbGVjdENvbG9yPXQ7ZnVuY3Rpb24gbihlKXtsZXQgdCxpPW51bGwsYSxvO2Z1bmN0aW9uIHMoLi4uZSl7aWYoIXMuZW5hYmxlZClyZXR1cm47bGV0IHI9cyxpPU51bWJlcihuZXcgRGF0ZSk7ci5kaWZmPWktKHR8fGkpLHIucHJldj10LHIuY3Vycj1pLHQ9aSxlWzBdPW4uY29lcmNlKGVbMF0pLHR5cGVvZiBlWzBdIT1gc3RyaW5nYCYmZS51bnNoaWZ0KGAlT2ApO2xldCBhPTA7ZVswXT1lWzBdLnJlcGxhY2UoLyUoW2EtekEtWiVdKS9nLCh0LGkpPT57aWYodD09PWAlJWApcmV0dXJuYCVgO2ErKztsZXQgbz1uLmZvcm1hdHRlcnNbaV07aWYodHlwZW9mIG89PWBmdW5jdGlvbmApe2xldCBuPWVbYV07dD1vLmNhbGwocixuKSxlLnNwbGljZShhLDEpLGEtLX1yZXR1cm4gdH0pLG4uZm9ybWF0QXJncy5jYWxsKHIsZSksKHIubG9nfHxuLmxvZykuYXBwbHkocixlKX1yZXR1cm4gcy5uYW1lc3BhY2U9ZSxzLnVzZUNvbG9ycz1uLnVzZUNvbG9ycygpLHMuY29sb3I9bi5zZWxlY3RDb2xvcihlKSxzLmV4dGVuZD1yLHMuZGVzdHJveT1uLmRlc3Ryb3ksT2JqZWN0LmRlZmluZVByb3BlcnR5KHMsYGVuYWJsZWRgLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMSxnZXQ6KCk9Pmk9PT1udWxsPyhhIT09bi5uYW1lc3BhY2VzJiYoYT1uLm5hbWVzcGFjZXMsbz1uLmVuYWJsZWQoZSkpLG8pOmksc2V0OmU9PntpPWV9fSksdHlwZW9mIG4uaW5pdD09YGZ1bmN0aW9uYCYmbi5pbml0KHMpLHN9ZnVuY3Rpb24gcihlLHQpe2xldCByPW4odGhpcy5uYW1lc3BhY2UrKHQ9PT12b2lkIDA/YDpgOnQpK2UpO3JldHVybiByLmxvZz10aGlzLmxvZyxyfWZ1bmN0aW9uIGkoZSl7bi5zYXZlKGUpLG4ubmFtZXNwYWNlcz1lLG4ubmFtZXM9W10sbi5za2lwcz1bXTtsZXQgdD0odHlwZW9mIGU9PWBzdHJpbmdgP2U6YGApLnRyaW0oKS5yZXBsYWNlKC9ccysvZyxgLGApLnNwbGl0KGAsYCkuZmlsdGVyKEJvb2xlYW4pO2ZvcihsZXQgZSBvZiB0KWVbMF09PT1gLWA/bi5za2lwcy5wdXNoKGUuc2xpY2UoMSkpOm4ubmFtZXMucHVzaChlKX1mdW5jdGlvbiBhKGUsdCl7bGV0IG49MCxyPTAsaT0tMSxhPTA7Zm9yKDtuPGUubGVuZ3RoOylpZihyPHQubGVuZ3RoJiYodFtyXT09PWVbbl18fHRbcl09PT1gKmApKXRbcl09PT1gKmA/KGk9cixhPW4scisrKToobisrLHIrKyk7ZWxzZSBpZihpIT09LTEpcj1pKzEsYSsrLG49YTtlbHNlIHJldHVybiExO2Zvcig7cjx0Lmxlbmd0aCYmdFtyXT09PWAqYDspcisrO3JldHVybiByPT09dC5sZW5ndGh9ZnVuY3Rpb24gbygpe2xldCBlPVsuLi5uLm5hbWVzLC4uLm4uc2tpcHMubWFwKGU9PmAtYCtlKV0uam9pbihgLGApO3JldHVybiBuLmVuYWJsZShgYCksZX1mdW5jdGlvbiBzKGUpe2ZvcihsZXQgdCBvZiBuLnNraXBzKWlmKGEoZSx0KSlyZXR1cm4hMTtmb3IobGV0IHQgb2Ygbi5uYW1lcylpZihhKGUsdCkpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gZSBpbnN0YW5jZW9mIEVycm9yP2Uuc3RhY2t8fGUubWVzc2FnZTplfWZ1bmN0aW9uIGwoKXtjb25zb2xlLndhcm4oIkluc3RhbmNlIG1ldGhvZCBgZGVidWcuZGVzdHJveSgpYCBpcyBkZXByZWNhdGVkIGFuZCBubyBsb25nZXIgZG9lcyBhbnl0aGluZy4gSXQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gb2YgYGRlYnVnYC4iKX1yZXR1cm4gbi5lbmFibGUobi5sb2FkKCkpLG59dC5leHBvcnRzPW59KSksRXM9cygoKGUsdCk9PntlLmZvcm1hdEFyZ3M9cixlLnNhdmU9aSxlLmxvYWQ9YSxlLnVzZUNvbG9ycz1uLGUuc3RvcmFnZT1vKCksZS5kZXN0cm95PSgoKT0+e2xldCBlPSExO3JldHVybigpPT57ZXx8KGU9ITAsY29uc29sZS53YXJuKCJJbnN0YW5jZSBtZXRob2QgYGRlYnVnLmRlc3Ryb3koKWAgaXMgZGVwcmVjYXRlZCBhbmQgbm8gbG9uZ2VyIGRvZXMgYW55dGhpbmcuIEl0IHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIG9mIGBkZWJ1Z2AuIikpfX0pKCksZS5jb2xvcnM9YCMwMDAwQ0MuIzAwMDBGRi4jMDAzM0NDLiMwMDMzRkYuIzAwNjZDQy4jMDA2NkZGLiMwMDk5Q0MuIzAwOTlGRi4jMDBDQzAwLiMwMENDMzMuIzAwQ0M2Ni4jMDBDQzk5LiMwMENDQ0MuIzAwQ0NGRi4jMzMwMENDLiMzMzAwRkYuIzMzMzNDQy4jMzMzM0ZGLiMzMzY2Q0MuIzMzNjZGRi4jMzM5OUNDLiMzMzk5RkYuIzMzQ0MwMC4jMzNDQzMzLiMzM0NDNjYuIzMzQ0M5OS4jMzNDQ0NDLiMzM0NDRkYuIzY2MDBDQy4jNjYwMEZGLiM2NjMzQ0MuIzY2MzNGRi4jNjZDQzAwLiM2NkNDMzMuIzk5MDBDQy4jOTkwMEZGLiM5OTMzQ0MuIzk5MzNGRi4jOTlDQzAwLiM5OUNDMzMuI0NDMDAwMC4jQ0MwMDMzLiNDQzAwNjYuI0NDMDA5OS4jQ0MwMENDLiNDQzAwRkYuI0NDMzMwMC4jQ0MzMzMzLiNDQzMzNjYuI0NDMzM5OS4jQ0MzM0NDLiNDQzMzRkYuI0NDNjYwMC4jQ0M2NjMzLiNDQzk5MDAuI0NDOTkzMy4jQ0NDQzAwLiNDQ0NDMzMuI0ZGMDAwMC4jRkYwMDMzLiNGRjAwNjYuI0ZGMDA5OS4jRkYwMENDLiNGRjAwRkYuI0ZGMzMwMC4jRkYzMzMzLiNGRjMzNjYuI0ZGMzM5OS4jRkYzM0NDLiNGRjMzRkYuI0ZGNjYwMC4jRkY2NjMzLiNGRjk5MDAuI0ZGOTkzMy4jRkZDQzAwLiNGRkNDMzNgLnNwbGl0KGAuYCk7ZnVuY3Rpb24gbigpe2lmKHR5cGVvZiB3aW5kb3c8YHVgJiZ3aW5kb3cucHJvY2VzcyYmKHdpbmRvdy5wcm9jZXNzLnR5cGU9PT1gcmVuZGVyZXJgfHx3aW5kb3cucHJvY2Vzcy5fX253anMpKXJldHVybiEwO2lmKHR5cGVvZiBuYXZpZ2F0b3I8YHVgJiZuYXZpZ2F0b3IudXNlckFnZW50JiZuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhlZGdlfHRyaWRlbnQpXC8oXGQrKS8pKXJldHVybiExO2xldCBlO3JldHVybiB0eXBlb2YgZG9jdW1lbnQ8YHVgJiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZSYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLldlYmtpdEFwcGVhcmFuY2V8fHR5cGVvZiB3aW5kb3c8YHVgJiZ3aW5kb3cuY29uc29sZSYmKHdpbmRvdy5jb25zb2xlLmZpcmVidWd8fHdpbmRvdy5jb25zb2xlLmV4Y2VwdGlvbiYmd2luZG93LmNvbnNvbGUudGFibGUpfHx0eXBlb2YgbmF2aWdhdG9yPGB1YCYmbmF2aWdhdG9yLnVzZXJBZ2VudCYmKGU9bmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLm1hdGNoKC9maXJlZm94XC8oXGQrKS8pKSYmcGFyc2VJbnQoZVsxXSwxMCk+PTMxfHx0eXBlb2YgbmF2aWdhdG9yPGB1YCYmbmF2aWdhdG9yLnVzZXJBZ2VudCYmbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLm1hdGNoKC9hcHBsZXdlYmtpdFwvKFxkKykvKX1mdW5jdGlvbiByKGUpe2lmKGVbMF09KHRoaXMudXNlQ29sb3JzP2AlY2A6YGApK3RoaXMubmFtZXNwYWNlKyh0aGlzLnVzZUNvbG9ycz9gICVjYDpgIGApK2VbMF0rKHRoaXMudXNlQ29sb3JzP2AlYyBgOmAgYCkrYCtgK3QuZXhwb3J0cy5odW1hbml6ZSh0aGlzLmRpZmYpLCF0aGlzLnVzZUNvbG9ycylyZXR1cm47bGV0IG49YGNvbG9yOiBgK3RoaXMuY29sb3I7ZS5zcGxpY2UoMSwwLG4sYGNvbG9yOiBpbmhlcml0YCk7bGV0IHI9MCxpPTA7ZVswXS5yZXBsYWNlKC8lW2EtekEtWiVdL2csZT0+e2UhPT1gJSVgJiYocisrLGU9PT1gJWNgJiYoaT1yKSl9KSxlLnNwbGljZShpLDAsbil9ZS5sb2c9Y29uc29sZS5kZWJ1Z3x8Y29uc29sZS5sb2d8fCgoKT0+e30pO2Z1bmN0aW9uIGkodCl7dHJ5e3Q/ZS5zdG9yYWdlLnNldEl0ZW0oYGRlYnVnYCx0KTplLnN0b3JhZ2UucmVtb3ZlSXRlbShgZGVidWdgKX1jYXRjaHt9fWZ1bmN0aW9uIGEoKXtsZXQgdDt0cnl7dD1lLnN0b3JhZ2UuZ2V0SXRlbShgZGVidWdgKXx8ZS5zdG9yYWdlLmdldEl0ZW0oYERFQlVHYCl9Y2F0Y2h7fXJldHVybiF0JiZ0eXBlb2YgcHJvY2VzczxgdWAmJmBlbnZgaW4gcHJvY2VzcyYmKHQ9e30uREVCVUcpLHR9ZnVuY3Rpb24gbygpe3RyeXtyZXR1cm4gbG9jYWxTdG9yYWdlfWNhdGNoe319dC5leHBvcnRzPVRzKCkoZSk7dmFye2Zvcm1hdHRlcnM6c309dC5leHBvcnRzO3Muaj1mdW5jdGlvbihlKXt0cnl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KGUpfWNhdGNoKGUpe3JldHVybmBbVW5leHBlY3RlZEpTT05QYXJzZUVycm9yXTogYCtlLm1lc3NhZ2V9fX0pKSxEcz1zKChlPT57dmFyIHQ9ZSYmZS5fX2V4dGVuZHN8fChmdW5jdGlvbigpe3ZhciBlPWZ1bmN0aW9uKHQsbil7cmV0dXJuIGU9T2JqZWN0LnNldFByb3RvdHlwZU9mfHx7X19wcm90b19fOltdfWluc3RhbmNlb2YgQXJyYXkmJmZ1bmN0aW9uKGUsdCl7ZS5fX3Byb3RvX189dH18fGZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuIGluIHQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsbikmJihlW25dPXRbbl0pfSxlKHQsbil9O3JldHVybiBmdW5jdGlvbih0LG4pe2lmKHR5cGVvZiBuIT1gZnVuY3Rpb25gJiZuIT09bnVsbCl0aHJvdyBUeXBlRXJyb3IoYENsYXNzIGV4dGVuZHMgdmFsdWUgYCtTdHJpbmcobikrYCBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsYCk7ZSh0LG4pO2Z1bmN0aW9uIHIoKXt0aGlzLmNvbnN0cnVjdG9yPXR9dC5wcm90b3R5cGU9bj09PW51bGw/T2JqZWN0LmNyZWF0ZShuKTooci5wcm90b3R5cGU9bi5wcm90b3R5cGUsbmV3IHIpfX0pKCk7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYF9fZXNNb2R1bGVgLHt2YWx1ZTohMH0pLGUuY3JlYXRlRW1pdHRlcj1lLmNyZWF0ZUNhbGxiYWNrPWUuYm91bmQ9ZS5jcmVhdGVTb2NrZXRFcnJvcj1lLlNvY2tldEVycm9yPWUuZGVidWc9dm9pZCAwLGUuZGVidWc9bigpO2Z1bmN0aW9uIG4oKXt0cnl7cmV0dXJuIEVzKCkoYHNtYXJ0c3VwcDpjbGllbnRgKX1jYXRjaHtyZXR1cm4gZnVuY3Rpb24oKXt9fX12YXIgcj1mdW5jdGlvbihlKXt0KG4sZSk7ZnVuY3Rpb24gbih0LHIpe3ZhciBpPWUuY2FsbCh0aGlzLHQpfHx0aGlzO3JldHVybiBPYmplY3Quc2V0UHJvdG90eXBlT2YoaSxuLnByb3RvdHlwZSksaS5uYW1lPWkuY29uc3RydWN0b3IubmFtZSxpLmNvZGU9ci5jb2RlLGkudHlwZT1yLnR5cGUsaS5ldmVudD1yLmV2ZW50LHImJnIuc3RhY2smJihpLnN0YWNrPWAke2kuc3RhY2t9CkNhdXNlZCBCeTogJHtyLnN0YWNrfWApLGl9cmV0dXJuIG59KEVycm9yKTtlLlNvY2tldEVycm9yPXI7ZnVuY3Rpb24gaShlKXtyZXR1cm4gbmV3IHIoZS5tZXNzYWdlLGUpfWUuY3JlYXRlU29ja2V0RXJyb3I9aTtmdW5jdGlvbiBhKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIG49Wy4uLmFyZ3VtZW50c107ZVt0XS5hcHBseShlLG4pfX1lLmJvdW5kPWE7ZnVuY3Rpb24gbyhlLHQpe3JldHVybiBmdW5jdGlvbihuLHIpe24/dChpKG4pKTplKHIpfX1lLmNyZWF0ZUNhbGxiYWNrPW87ZnVuY3Rpb24gcyhlLHQpe3JldHVybiBmdW5jdGlvbihuKXtlLmVtaXQodCxuKX19ZS5jcmVhdGVFbWl0dGVyPXN9KSksT3M9cygoKGUsdCk9Pnt2YXIgbj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LHI9YH5gO2Z1bmN0aW9uIGkoKXt9T2JqZWN0LmNyZWF0ZSYmKGkucHJvdG90eXBlPU9iamVjdC5jcmVhdGUobnVsbCksbmV3IGkoKS5fX3Byb3RvX198fChyPSExKSk7ZnVuY3Rpb24gYShlLHQsbil7dGhpcy5mbj1lLHRoaXMuY29udGV4dD10LHRoaXMub25jZT1ufHwhMX1mdW5jdGlvbiBvKGUsdCxuLGksbyl7aWYodHlwZW9mIG4hPWBmdW5jdGlvbmApdGhyb3cgVHlwZUVycm9yKGBUaGUgbGlzdGVuZXIgbXVzdCBiZSBhIGZ1bmN0aW9uYCk7dmFyIHM9bmV3IGEobixpfHxlLG8pLGM9cj9yK3Q6dDtyZXR1cm4gZS5fZXZlbnRzW2NdP2UuX2V2ZW50c1tjXS5mbj9lLl9ldmVudHNbY109W2UuX2V2ZW50c1tjXSxzXTplLl9ldmVudHNbY10ucHVzaChzKTooZS5fZXZlbnRzW2NdPXMsZS5fZXZlbnRzQ291bnQrKyksZX1mdW5jdGlvbiBzKGUsdCl7LS1lLl9ldmVudHNDb3VudD09PTA/ZS5fZXZlbnRzPW5ldyBpOmRlbGV0ZSBlLl9ldmVudHNbdF19ZnVuY3Rpb24gYygpe3RoaXMuX2V2ZW50cz1uZXcgaSx0aGlzLl9ldmVudHNDb3VudD0wfWMucHJvdG90eXBlLmV2ZW50TmFtZXM9ZnVuY3Rpb24oKXt2YXIgZT1bXSx0LGk7aWYodGhpcy5fZXZlbnRzQ291bnQ9PT0wKXJldHVybiBlO2ZvcihpIGluIHQ9dGhpcy5fZXZlbnRzKW4uY2FsbCh0LGkpJiZlLnB1c2gocj9pLnNsaWNlKDEpOmkpO3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzP2UuY29uY2F0KE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCkpOmV9LGMucHJvdG90eXBlLmxpc3RlbmVycz1mdW5jdGlvbihlKXt2YXIgdD1yP3IrZTplLG49dGhpcy5fZXZlbnRzW3RdO2lmKCFuKXJldHVybltdO2lmKG4uZm4pcmV0dXJuW24uZm5dO2Zvcih2YXIgaT0wLGE9bi5sZW5ndGgsbz1BcnJheShhKTtpPGE7aSsrKW9baV09bltpXS5mbjtyZXR1cm4gb30sYy5wcm90b3R5cGUubGlzdGVuZXJDb3VudD1mdW5jdGlvbihlKXt2YXIgdD1yP3IrZTplLG49dGhpcy5fZXZlbnRzW3RdO3JldHVybiBuP24uZm4/MTpuLmxlbmd0aDowfSxjLnByb3RvdHlwZS5lbWl0PWZ1bmN0aW9uKGUsdCxuLGksYSxvKXt2YXIgcz1yP3IrZTplO2lmKCF0aGlzLl9ldmVudHNbc10pcmV0dXJuITE7dmFyIGM9dGhpcy5fZXZlbnRzW3NdLGw9YXJndW1lbnRzLmxlbmd0aCx1LGQ7aWYoYy5mbil7c3dpdGNoKGMub25jZSYmdGhpcy5yZW1vdmVMaXN0ZW5lcihlLGMuZm4sdm9pZCAwLCEwKSxsKXtjYXNlIDE6cmV0dXJuIGMuZm4uY2FsbChjLmNvbnRleHQpLCEwO2Nhc2UgMjpyZXR1cm4gYy5mbi5jYWxsKGMuY29udGV4dCx0KSwhMDtjYXNlIDM6cmV0dXJuIGMuZm4uY2FsbChjLmNvbnRleHQsdCxuKSwhMDtjYXNlIDQ6cmV0dXJuIGMuZm4uY2FsbChjLmNvbnRleHQsdCxuLGkpLCEwO2Nhc2UgNTpyZXR1cm4gYy5mbi5jYWxsKGMuY29udGV4dCx0LG4saSxhKSwhMDtjYXNlIDY6cmV0dXJuIGMuZm4uY2FsbChjLmNvbnRleHQsdCxuLGksYSxvKSwhMH1mb3IoZD0xLHU9QXJyYXkobC0xKTtkPGw7ZCsrKXVbZC0xXT1hcmd1bWVudHNbZF07Yy5mbi5hcHBseShjLmNvbnRleHQsdSl9ZWxzZXt2YXIgZj1jLmxlbmd0aCxwO2ZvcihkPTA7ZDxmO2QrKylzd2l0Y2goY1tkXS5vbmNlJiZ0aGlzLnJlbW92ZUxpc3RlbmVyKGUsY1tkXS5mbix2b2lkIDAsITApLGwpe2Nhc2UgMTpjW2RdLmZuLmNhbGwoY1tkXS5jb250ZXh0KTticmVhaztjYXNlIDI6Y1tkXS5mbi5jYWxsKGNbZF0uY29udGV4dCx0KTticmVhaztjYXNlIDM6Y1tkXS5mbi5jYWxsKGNbZF0uY29udGV4dCx0LG4pO2JyZWFrO2Nhc2UgNDpjW2RdLmZuLmNhbGwoY1tkXS5jb250ZXh0LHQsbixpKTticmVhaztkZWZhdWx0OmlmKCF1KWZvcihwPTEsdT1BcnJheShsLTEpO3A8bDtwKyspdVtwLTFdPWFyZ3VtZW50c1twXTtjW2RdLmZuLmFwcGx5KGNbZF0uY29udGV4dCx1KX19cmV0dXJuITB9LGMucHJvdG90eXBlLm9uPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gbyh0aGlzLGUsdCxuLCExKX0sYy5wcm90b3R5cGUub25jZT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIG8odGhpcyxlLHQsbiwhMCl9LGMucHJvdG90eXBlLnJlbW92ZUxpc3RlbmVyPWZ1bmN0aW9uKGUsdCxuLGkpe3ZhciBhPXI/citlOmU7aWYoIXRoaXMuX2V2ZW50c1thXSlyZXR1cm4gdGhpcztpZighdClyZXR1cm4gcyh0aGlzLGEpLHRoaXM7dmFyIG89dGhpcy5fZXZlbnRzW2FdO2lmKG8uZm4pby5mbj09PXQmJighaXx8by5vbmNlKSYmKCFufHxvLmNvbnRleHQ9PT1uKSYmcyh0aGlzLGEpO2Vsc2V7Zm9yKHZhciBjPTAsbD1bXSx1PW8ubGVuZ3RoO2M8dTtjKyspKG9bY10uZm4hPT10fHxpJiYhb1tjXS5vbmNlfHxuJiZvW2NdLmNvbnRleHQhPT1uKSYmbC5wdXNoKG9bY10pO2wubGVuZ3RoP3RoaXMuX2V2ZW50c1thXT1sLmxlbmd0aD09PTE/bFswXTpsOnModGhpcyxhKX1yZXR1cm4gdGhpc30sYy5wcm90b3R5cGUucmVtb3ZlQWxsTGlzdGVuZXJzPWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiBlPyh0PXI/citlOmUsdGhpcy5fZXZlbnRzW3RdJiZzKHRoaXMsdCkpOih0aGlzLl9ldmVudHM9bmV3IGksdGhpcy5fZXZlbnRzQ291bnQ9MCksdGhpc30sYy5wcm90b3R5cGUub2ZmPWMucHJvdG90eXBlLnJlbW92ZUxpc3RlbmVyLGMucHJvdG90eXBlLmFkZExpc3RlbmVyPWMucHJvdG90eXBlLm9uLGMucHJlZml4ZWQ9cixjLkV2ZW50RW1pdHRlcj1jLHQhPT12b2lkIDAmJih0LmV4cG9ydHM9Yyl9KSksa3M9cygoKGUsdCk9Pnt2YXIgbj0vXig/Oig/IVteOkBdKzpbXjpAXC9dKkApKGh0dHB8aHR0cHN8d3N8d3NzKTpcL1wvKT8oKD86KChbXjpAXSopKD86OihbXjpAXSopKT8pP0ApPygoPzpbYS1mMC05XXswLDR9Oil7Miw3fVthLWYwLTldezAsNH18W146XC8/I10qKSg/OjooXGQqKSk/KSgoKFwvKD86W14/I10oPyFbXj8jXC9dKlwuW14/I1wvLl0rKD86Wz8jXXwkKSkpKlwvPyk/KFtePyNcL10qKSkoPzpcPyhbXiNdKikpPyg/OiMoLiopKT8pLyxyPVtgc291cmNlYCxgcHJvdG9jb2xgLGBhdXRob3JpdHlgLGB1c2VySW5mb2AsYHVzZXJgLGBwYXNzd29yZGAsYGhvc3RgLGBwb3J0YCxgcmVsYXRpdmVgLGBwYXRoYCxgZGlyZWN0b3J5YCxgZmlsZWAsYHF1ZXJ5YCxgYW5jaG9yYF07dC5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0PWUsaT1lLmluZGV4T2YoYFtgKSxhPWUuaW5kZXhPZihgXWApO2khPS0xJiZhIT0tMSYmKGU9ZS5zdWJzdHJpbmcoMCxpKStlLnN1YnN0cmluZyhpLGEpLnJlcGxhY2UoLzovZyxgO2ApK2Uuc3Vic3RyaW5nKGEsZS5sZW5ndGgpKTtmb3IodmFyIG89bi5leGVjKGV8fGBgKSxzPXt9LGM9MTQ7Yy0tOylzW3JbY11dPW9bY118fGBgO3JldHVybiBpIT0tMSYmYSE9LTEmJihzLnNvdXJjZT10LHMuaG9zdD1zLmhvc3Quc3Vic3RyaW5nKDEscy5ob3N0Lmxlbmd0aC0xKS5yZXBsYWNlKC87L2csYDpgKSxzLmF1dGhvcml0eT1zLmF1dGhvcml0eS5yZXBsYWNlKGBbYCxgYCkucmVwbGFjZShgXWAsYGApLnJlcGxhY2UoLzsvZyxgOmApLHMuaXB2NnVyaT0hMCksc319KSksQXM9cygoKGUsdCk9PntmdW5jdGlvbiBuKGUpe24uZGVidWc9bixuLmRlZmF1bHQ9bixuLmNvZXJjZT1sLG4uZGlzYWJsZT1vLG4uZW5hYmxlPWEsbi5lbmFibGVkPXMsbi5odW1hbml6ZT13cygpLE9iamVjdC5rZXlzKGUpLmZvckVhY2godD0+e25bdF09ZVt0XX0pLG4uaW5zdGFuY2VzPVtdLG4ubmFtZXM9W10sbi5za2lwcz1bXSxuLmZvcm1hdHRlcnM9e307ZnVuY3Rpb24gdChlKXtsZXQgdD0wO2ZvcihsZXQgbj0wO248ZS5sZW5ndGg7bisrKXQ9KHQ8PDUpLXQrZS5jaGFyQ29kZUF0KG4pLHR8PTA7cmV0dXJuIG4uY29sb3JzW01hdGguYWJzKHQpJW4uY29sb3JzLmxlbmd0aF19bi5zZWxlY3RDb2xvcj10O2Z1bmN0aW9uIG4oZSl7bGV0IGE7ZnVuY3Rpb24gbyguLi5lKXtpZighby5lbmFibGVkKXJldHVybjtsZXQgdD1vLHI9TnVtYmVyKG5ldyBEYXRlKTt0LmRpZmY9ci0oYXx8ciksdC5wcmV2PWEsdC5jdXJyPXIsYT1yLGVbMF09bi5jb2VyY2UoZVswXSksdHlwZW9mIGVbMF0hPWBzdHJpbmdgJiZlLnVuc2hpZnQoYCVPYCk7bGV0IGk9MDtlWzBdPWVbMF0ucmVwbGFjZSgvJShbYS16QS1aJV0pL2csKHIsYSk9PntpZihyPT09YCUlYClyZXR1cm4gcjtpKys7bGV0IG89bi5mb3JtYXR0ZXJzW2FdO2lmKHR5cGVvZiBvPT1gZnVuY3Rpb25gKXtsZXQgbj1lW2ldO3I9by5jYWxsKHQsbiksZS5zcGxpY2UoaSwxKSxpLS19cmV0dXJuIHJ9KSxuLmZvcm1hdEFyZ3MuY2FsbCh0LGUpLCh0LmxvZ3x8bi5sb2cpLmFwcGx5KHQsZSl9cmV0dXJuIG8ubmFtZXNwYWNlPWUsby5lbmFibGVkPW4uZW5hYmxlZChlKSxvLnVzZUNvbG9ycz1uLnVzZUNvbG9ycygpLG8uY29sb3I9dChlKSxvLmRlc3Ryb3k9cixvLmV4dGVuZD1pLHR5cGVvZiBuLmluaXQ9PWBmdW5jdGlvbmAmJm4uaW5pdChvKSxuLmluc3RhbmNlcy5wdXNoKG8pLG99ZnVuY3Rpb24gcigpe2xldCBlPW4uaW5zdGFuY2VzLmluZGV4T2YodGhpcyk7cmV0dXJuIGU9PT0tMT8hMToobi5pbnN0YW5jZXMuc3BsaWNlKGUsMSksITApfWZ1bmN0aW9uIGkoZSx0KXtsZXQgcj1uKHRoaXMubmFtZXNwYWNlKyh0PT09dm9pZCAwP2A6YDp0KStlKTtyZXR1cm4gci5sb2c9dGhpcy5sb2cscn1mdW5jdGlvbiBhKGUpe24uc2F2ZShlKSxuLm5hbWVzPVtdLG4uc2tpcHM9W107bGV0IHQscj0odHlwZW9mIGU9PWBzdHJpbmdgP2U6YGApLnNwbGl0KC9bXHMsXSsvKSxpPXIubGVuZ3RoO2Zvcih0PTA7dDxpO3QrKylyW3RdJiYoZT1yW3RdLnJlcGxhY2UoL1wqL2csYC4qP2ApLGVbMF09PT1gLWA/bi5za2lwcy5wdXNoKFJlZ0V4cChgXmArZS5zdWJzdHIoMSkrYCRgKSk6bi5uYW1lcy5wdXNoKFJlZ0V4cChgXmArZStgJGApKSk7Zm9yKHQ9MDt0PG4uaW5zdGFuY2VzLmxlbmd0aDt0Kyspe2xldCBlPW4uaW5zdGFuY2VzW3RdO2UuZW5hYmxlZD1uLmVuYWJsZWQoZS5uYW1lc3BhY2UpfX1mdW5jdGlvbiBvKCl7bGV0IGU9Wy4uLm4ubmFtZXMubWFwKGMpLC4uLm4uc2tpcHMubWFwKGMpLm1hcChlPT5gLWArZSldLmpvaW4oYCxgKTtyZXR1cm4gbi5lbmFibGUoYGApLGV9ZnVuY3Rpb24gcyhlKXtpZihlW2UubGVuZ3RoLTFdPT09YCpgKXJldHVybiEwO2xldCB0LHI7Zm9yKHQ9MCxyPW4uc2tpcHMubGVuZ3RoO3Q8cjt0KyspaWYobi5za2lwc1t0XS50ZXN0KGUpKXJldHVybiExO2Zvcih0PTAscj1uLm5hbWVzLmxlbmd0aDt0PHI7dCsrKWlmKG4ubmFtZXNbdF0udGVzdChlKSlyZXR1cm4hMDtyZXR1cm4hMX1mdW5jdGlvbiBjKGUpe3JldHVybiBlLnRvU3RyaW5nKCkuc3Vic3RyaW5nKDIsZS50b1N0cmluZygpLmxlbmd0aC0yKS5yZXBsYWNlKC9cLlwqXD8kLyxgKmApfWZ1bmN0aW9uIGwoZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiBFcnJvcj9lLnN0YWNrfHxlLm1lc3NhZ2U6ZX1yZXR1cm4gbi5lbmFibGUobi5sb2FkKCkpLG59dC5leHBvcnRzPW59KSksanM9cygoKGUsdCk9PntlLmxvZz1pLGUuZm9ybWF0QXJncz1yLGUuc2F2ZT1hLGUubG9hZD1vLGUudXNlQ29sb3JzPW4sZS5zdG9yYWdlPXMoKSxlLmNvbG9ycz1gIzAwMDBDQy4jMDAwMEZGLiMwMDMzQ0MuIzAwMzNGRi4jMDA2NkNDLiMwMDY2RkYuIzAwOTlDQy4jMDA5OUZGLiMwMENDMDAuIzAwQ0MzMy4jMDBDQzY2LiMwMENDOTkuIzAwQ0NDQy4jMDBDQ0ZGLiMzMzAwQ0MuIzMzMDBGRi4jMzMzM0NDLiMzMzMzRkYuIzMzNjZDQy4jMzM2NkZGLiMzMzk5Q0MuIzMzOTlGRi4jMzNDQzAwLiMzM0NDMzMuIzMzQ0M2Ni4jMzNDQzk5LiMzM0NDQ0MuIzMzQ0NGRi4jNjYwMENDLiM2NjAwRkYuIzY2MzNDQy4jNjYzM0ZGLiM2NkNDMDAuIzY2Q0MzMy4jOTkwMENDLiM5OTAwRkYuIzk5MzNDQy4jOTkzM0ZGLiM5OUNDMDAuIzk5Q0MzMy4jQ0MwMDAwLiNDQzAwMzMuI0NDMDA2Ni4jQ0MwMDk5LiNDQzAwQ0MuI0NDMDBGRi4jQ0MzMzAwLiNDQzMzMzMuI0NDMzM2Ni4jQ0MzMzk5LiNDQzMzQ0MuI0NDMzNGRi4jQ0M2NjAwLiNDQzY2MzMuI0NDOTkwMC4jQ0M5OTMzLiNDQ0NDMDAuI0NDQ0MzMy4jRkYwMDAwLiNGRjAwMzMuI0ZGMDA2Ni4jRkYwMDk5LiNGRjAwQ0MuI0ZGMDBGRi4jRkYzMzAwLiNGRjMzMzMuI0ZGMzM2Ni4jRkYzMzk5LiNGRjMzQ0MuI0ZGMzNGRi4jRkY2NjAwLiNGRjY2MzMuI0ZGOTkwMC4jRkY5OTMzLiNGRkNDMDAuI0ZGQ0MzM2Auc3BsaXQoYC5gKTtmdW5jdGlvbiBuKCl7cmV0dXJuIHR5cGVvZiB3aW5kb3c8YHVgJiZ3aW5kb3cucHJvY2VzcyYmKHdpbmRvdy5wcm9jZXNzLnR5cGU9PT1gcmVuZGVyZXJgfHx3aW5kb3cucHJvY2Vzcy5fX253anMpPyEwOnR5cGVvZiBuYXZpZ2F0b3I8YHVgJiZuYXZpZ2F0b3IudXNlckFnZW50JiZuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhlZGdlfHRyaWRlbnQpXC8oXGQrKS8pPyExOnR5cGVvZiBkb2N1bWVudDxgdWAmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlJiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuV2Via2l0QXBwZWFyYW5jZXx8dHlwZW9mIHdpbmRvdzxgdWAmJndpbmRvdy5jb25zb2xlJiYod2luZG93LmNvbnNvbGUuZmlyZWJ1Z3x8d2luZG93LmNvbnNvbGUuZXhjZXB0aW9uJiZ3aW5kb3cuY29uc29sZS50YWJsZSl8fHR5cGVvZiBuYXZpZ2F0b3I8YHVgJiZuYXZpZ2F0b3IudXNlckFnZW50JiZuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkubWF0Y2goL2ZpcmVmb3hcLyhcZCspLykmJnBhcnNlSW50KFJlZ0V4cC4kMSwxMCk+PTMxfHx0eXBlb2YgbmF2aWdhdG9yPGB1YCYmbmF2aWdhdG9yLnVzZXJBZ2VudCYmbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLm1hdGNoKC9hcHBsZXdlYmtpdFwvKFxkKykvKX1mdW5jdGlvbiByKGUpe2lmKGVbMF09KHRoaXMudXNlQ29sb3JzP2AlY2A6YGApK3RoaXMubmFtZXNwYWNlKyh0aGlzLnVzZUNvbG9ycz9gICVjYDpgIGApK2VbMF0rKHRoaXMudXNlQ29sb3JzP2AlYyBgOmAgYCkrYCtgK3QuZXhwb3J0cy5odW1hbml6ZSh0aGlzLmRpZmYpLCF0aGlzLnVzZUNvbG9ycylyZXR1cm47bGV0IG49YGNvbG9yOiBgK3RoaXMuY29sb3I7ZS5zcGxpY2UoMSwwLG4sYGNvbG9yOiBpbmhlcml0YCk7bGV0IHI9MCxpPTA7ZVswXS5yZXBsYWNlKC8lW2EtekEtWiVdL2csZT0+e2UhPT1gJSVgJiYocisrLGU9PT1gJWNgJiYoaT1yKSl9KSxlLnNwbGljZShpLDAsbil9ZnVuY3Rpb24gaSguLi5lKXtyZXR1cm4gdHlwZW9mIGNvbnNvbGU9PWBvYmplY3RgJiZjb25zb2xlLmxvZyYmY29uc29sZS5sb2coLi4uZSl9ZnVuY3Rpb24gYSh0KXt0cnl7dD9lLnN0b3JhZ2Uuc2V0SXRlbShgZGVidWdgLHQpOmUuc3RvcmFnZS5yZW1vdmVJdGVtKGBkZWJ1Z2ApfWNhdGNoe319ZnVuY3Rpb24gbygpe2xldCB0O3RyeXt0PWUuc3RvcmFnZS5nZXRJdGVtKGBkZWJ1Z2ApfWNhdGNoe31yZXR1cm4hdCYmdHlwZW9mIHByb2Nlc3M8YHVgJiZgZW52YGluIHByb2Nlc3MmJih0PXt9LkRFQlVHKSx0fWZ1bmN0aW9uIHMoKXt0cnl7cmV0dXJuIGxvY2FsU3RvcmFnZX1jYXRjaHt9fXQuZXhwb3J0cz1BcygpKGUpO3Zhcntmb3JtYXR0ZXJzOmN9PXQuZXhwb3J0cztjLmo9ZnVuY3Rpb24oZSl7dHJ5e3JldHVybiBKU09OLnN0cmluZ2lmeShlKX1jYXRjaChlKXtyZXR1cm5gW1VuZXhwZWN0ZWRKU09OUGFyc2VFcnJvcl06IGArZS5tZXNzYWdlfX19KSksTXM9cygoKGUsdCk9Pnt2YXIgbj1rcygpLHI9anMoKShgc29ja2V0LmlvLWNsaWVudDp1cmxgKTt0LmV4cG9ydHM9aTtmdW5jdGlvbiBpKGUsdCl7dmFyIGk9ZTt0fHw9dHlwZW9mIGxvY2F0aW9uPGB1YCYmbG9jYXRpb24sZT8/PXQucHJvdG9jb2wrYC8vYCt0Lmhvc3QsdHlwZW9mIGU9PWBzdHJpbmdgJiYoZS5jaGFyQXQoMCk9PT1gL2AmJihlPWUuY2hhckF0KDEpPT09YC9gP3QucHJvdG9jb2wrZTp0Lmhvc3QrZSksL14oaHR0cHM/fHdzcz8pOlwvXC8vLnRlc3QoZSl8fChyKGBwcm90b2NvbC1sZXNzIHVybCAlc2AsZSksZT10PT09dm9pZCAwP2BodHRwczovL2ArZTp0LnByb3RvY29sK2AvL2ArZSkscihgcGFyc2UgJXNgLGUpLGk9bihlKSksaS5wb3J0fHwoL14oaHR0cHx3cykkLy50ZXN0KGkucHJvdG9jb2wpP2kucG9ydD1gODBgOi9eKGh0dHB8d3MpcyQvLnRlc3QoaS5wcm90b2NvbCkmJihpLnBvcnQ9YDQ0M2ApKSxpLnBhdGg9aS5wYXRofHxgL2A7dmFyIGE9aS5ob3N0LmluZGV4T2YoYDpgKT09PS0xP2kuaG9zdDpgW2AraS5ob3N0K2BdYDtyZXR1cm4gaS5pZD1pLnByb3RvY29sK2A6Ly9gK2ErYDpgK2kucG9ydCxpLmhyZWY9aS5wcm90b2NvbCtgOi8vYCthKyh0JiZ0LnBvcnQ9PT1pLnBvcnQ/YGA6YDpgK2kucG9ydCksaX19KSksTnM9cygoKGUsdCk9Pnt2YXIgbj0xZTMscj1uKjYwLGk9cio2MCxhPWkqMjQsbz1hKjM2NS4yNTt0LmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt0fHw9e307dmFyIG49dHlwZW9mIGU7aWYobj09PWBzdHJpbmdgJiZlLmxlbmd0aD4wKXJldHVybiBzKGUpO2lmKG49PT1gbnVtYmVyYCYmaXNOYU4oZSk9PT0hMSlyZXR1cm4gdC5sb25nP2woZSk6YyhlKTt0aHJvdyBFcnJvcihgdmFsIGlzIG5vdCBhIG5vbi1lbXB0eSBzdHJpbmcgb3IgYSB2YWxpZCBudW1iZXIuIHZhbD1gK0pTT04uc3RyaW5naWZ5KGUpKX07ZnVuY3Rpb24gcyhlKXtpZihlPVN0cmluZyhlKSwhKGUubGVuZ3RoPjEwMCkpe3ZhciB0PS9eKCg/OlxkKyk/XC4/XGQrKSAqKG1pbGxpc2Vjb25kcz98bXNlY3M/fG1zfHNlY29uZHM/fHNlY3M/fHN8bWludXRlcz98bWlucz98bXxob3Vycz98aHJzP3xofGRheXM/fGR8eWVhcnM/fHlycz98eSk/JC9pLmV4ZWMoZSk7aWYodCl7dmFyIHM9cGFyc2VGbG9hdCh0WzFdKTtzd2l0Y2goKHRbMl18fGBtc2ApLnRvTG93ZXJDYXNlKCkpe2Nhc2VgeWVhcnNgOmNhc2VgeWVhcmA6Y2FzZWB5cnNgOmNhc2VgeXJgOmNhc2VgeWA6cmV0dXJuIHMqbztjYXNlYGRheXNgOmNhc2VgZGF5YDpjYXNlYGRgOnJldHVybiBzKmE7Y2FzZWBob3Vyc2A6Y2FzZWBob3VyYDpjYXNlYGhyc2A6Y2FzZWBocmA6Y2FzZWBoYDpyZXR1cm4gcyppO2Nhc2VgbWludXRlc2A6Y2FzZWBtaW51dGVgOmNhc2VgbWluc2A6Y2FzZWBtaW5gOmNhc2VgbWA6cmV0dXJuIHMqcjtjYXNlYHNlY29uZHNgOmNhc2Vgc2Vjb25kYDpjYXNlYHNlY3NgOmNhc2Vgc2VjYDpjYXNlYHNgOnJldHVybiBzKm47Y2FzZWBtaWxsaXNlY29uZHNgOmNhc2VgbWlsbGlzZWNvbmRgOmNhc2VgbXNlY3NgOmNhc2VgbXNlY2A6Y2FzZWBtc2A6cmV0dXJuIHM7ZGVmYXVsdDpyZXR1cm59fX19ZnVuY3Rpb24gYyhlKXtyZXR1cm4gZT49YT9NYXRoLnJvdW5kKGUvYSkrYGRgOmU+PWk/TWF0aC5yb3VuZChlL2kpK2BoYDplPj1yP01hdGgucm91bmQoZS9yKStgbWA6ZT49bj9NYXRoLnJvdW5kKGUvbikrYHNgOmUrYG1zYH1mdW5jdGlvbiBsKGUpe3JldHVybiB1KGUsYSxgZGF5YCl8fHUoZSxpLGBob3VyYCl8fHUoZSxyLGBtaW51dGVgKXx8dShlLG4sYHNlY29uZGApfHxlK2AgbXNgfWZ1bmN0aW9uIHUoZSx0LG4pe2lmKCEoZTx0KSlyZXR1cm4gZTx0KjEuNT9NYXRoLmZsb29yKGUvdCkrYCBgK246TWF0aC5jZWlsKGUvdCkrYCBgK24rYHNgfX0pKSxQcz1zKCgoZSx0KT0+e2U9dC5leHBvcnRzPXIuZGVidWc9ci5kZWZhdWx0PXIsZS5jb2VyY2U9YyxlLmRpc2FibGU9byxlLmVuYWJsZT1hLGUuZW5hYmxlZD1zLGUuaHVtYW5pemU9TnMoKSxlLmluc3RhbmNlcz1bXSxlLm5hbWVzPVtdLGUuc2tpcHM9W10sZS5mb3JtYXR0ZXJzPXt9O2Z1bmN0aW9uIG4odCl7dmFyIG49MCxyO2ZvcihyIGluIHQpbj0objw8NSktbit0LmNoYXJDb2RlQXQociksbnw9MDtyZXR1cm4gZS5jb2xvcnNbTWF0aC5hYnMobiklZS5jb2xvcnMubGVuZ3RoXX1mdW5jdGlvbiByKHQpe3ZhciByO2Z1bmN0aW9uIGEoKXtpZihhLmVuYWJsZWQpe3ZhciB0PWEsbj0rbmV3IERhdGU7dC5kaWZmPW4tKHJ8fG4pLHQucHJldj1yLHQuY3Vycj1uLHI9bjtmb3IodmFyIGk9QXJyYXkoYXJndW1lbnRzLmxlbmd0aCksbz0wO288aS5sZW5ndGg7bysrKWlbb109YXJndW1lbnRzW29dO2lbMF09ZS5jb2VyY2UoaVswXSksdHlwZW9mIGlbMF0hPWBzdHJpbmdgJiZpLnVuc2hpZnQoYCVPYCk7dmFyIHM9MDtpWzBdPWlbMF0ucmVwbGFjZSgvJShbYS16QS1aJV0pL2csZnVuY3Rpb24obixyKXtpZihuPT09YCUlYClyZXR1cm4gbjtzKys7dmFyIGE9ZS5mb3JtYXR0ZXJzW3JdO2lmKHR5cGVvZiBhPT1gZnVuY3Rpb25gKXt2YXIgbz1pW3NdO249YS5jYWxsKHQsbyksaS5zcGxpY2UocywxKSxzLS19cmV0dXJuIG59KSxlLmZvcm1hdEFyZ3MuY2FsbCh0LGkpLChhLmxvZ3x8ZS5sb2d8fGNvbnNvbGUubG9nLmJpbmQoY29uc29sZSkpLmFwcGx5KHQsaSl9fXJldHVybiBhLm5hbWVzcGFjZT10LGEuZW5hYmxlZD1lLmVuYWJsZWQodCksYS51c2VDb2xvcnM9ZS51c2VDb2xvcnMoKSxhLmNvbG9yPW4odCksYS5kZXN0cm95PWksdHlwZW9mIGUuaW5pdD09YGZ1bmN0aW9uYCYmZS5pbml0KGEpLGUuaW5zdGFuY2VzLnB1c2goYSksYX1mdW5jdGlvbiBpKCl7dmFyIHQ9ZS5pbnN0YW5jZXMuaW5kZXhPZih0aGlzKTtyZXR1cm4gdD09PS0xPyExOihlLmluc3RhbmNlcy5zcGxpY2UodCwxKSwhMCl9ZnVuY3Rpb24gYSh0KXtlLnNhdmUodCksZS5uYW1lcz1bXSxlLnNraXBzPVtdO3ZhciBuLHI9KHR5cGVvZiB0PT1gc3RyaW5nYD90OmBgKS5zcGxpdCgvW1xzLF0rLyksaT1yLmxlbmd0aDtmb3Iobj0wO248aTtuKyspcltuXSYmKHQ9cltuXS5yZXBsYWNlKC9cKi9nLGAuKj9gKSx0WzBdPT09YC1gP2Uuc2tpcHMucHVzaChSZWdFeHAoYF5gK3Quc3Vic3RyKDEpK2AkYCkpOmUubmFtZXMucHVzaChSZWdFeHAoYF5gK3QrYCRgKSkpO2ZvcihuPTA7bjxlLmluc3RhbmNlcy5sZW5ndGg7bisrKXt2YXIgYT1lLmluc3RhbmNlc1tuXTthLmVuYWJsZWQ9ZS5lbmFibGVkKGEubmFtZXNwYWNlKX19ZnVuY3Rpb24gbygpe2UuZW5hYmxlKGBgKX1mdW5jdGlvbiBzKHQpe2lmKHRbdC5sZW5ndGgtMV09PT1gKmApcmV0dXJuITA7dmFyIG4scjtmb3Iobj0wLHI9ZS5za2lwcy5sZW5ndGg7bjxyO24rKylpZihlLnNraXBzW25dLnRlc3QodCkpcmV0dXJuITE7Zm9yKG49MCxyPWUubmFtZXMubGVuZ3RoO248cjtuKyspaWYoZS5uYW1lc1tuXS50ZXN0KHQpKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIGMoZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiBFcnJvcj9lLnN0YWNrfHxlLm1lc3NhZ2U6ZX19KSksRnM9cygoKGUsdCk9PntlPXQuZXhwb3J0cz1QcygpLGUubG9nPWksZS5mb3JtYXRBcmdzPXIsZS5zYXZlPWEsZS5sb2FkPW8sZS51c2VDb2xvcnM9bixlLnN0b3JhZ2U9dHlwZW9mIGNocm9tZTxgdWAmJmNocm9tZS5zdG9yYWdlIT09dm9pZCAwP2Nocm9tZS5zdG9yYWdlLmxvY2FsOnMoKSxlLmNvbG9ycz1gIzAwMDBDQy4jMDAwMEZGLiMwMDMzQ0MuIzAwMzNGRi4jMDA2NkNDLiMwMDY2RkYuIzAwOTlDQy4jMDA5OUZGLiMwMENDMDAuIzAwQ0MzMy4jMDBDQzY2LiMwMENDOTkuIzAwQ0NDQy4jMDBDQ0ZGLiMzMzAwQ0MuIzMzMDBGRi4jMzMzM0NDLiMzMzMzRkYuIzMzNjZDQy4jMzM2NkZGLiMzMzk5Q0MuIzMzOTlGRi4jMzNDQzAwLiMzM0NDMzMuIzMzQ0M2Ni4jMzNDQzk5LiMzM0NDQ0MuIzMzQ0NGRi4jNjYwMENDLiM2NjAwRkYuIzY2MzNDQy4jNjYzM0ZGLiM2NkNDMDAuIzY2Q0MzMy4jOTkwMENDLiM5OTAwRkYuIzk5MzNDQy4jOTkzM0ZGLiM5OUNDMDAuIzk5Q0MzMy4jQ0MwMDAwLiNDQzAwMzMuI0NDMDA2Ni4jQ0MwMDk5LiNDQzAwQ0MuI0NDMDBGRi4jQ0MzMzAwLiNDQzMzMzMuI0NDMzM2Ni4jQ0MzMzk5LiNDQzMzQ0MuI0NDMzNGRi4jQ0M2NjAwLiNDQzY2MzMuI0NDOTkwMC4jQ0M5OTMzLiNDQ0NDMDAuI0NDQ0MzMy4jRkYwMDAwLiNGRjAwMzMuI0ZGMDA2Ni4jRkYwMDk5LiNGRjAwQ0MuI0ZGMDBGRi4jRkYzMzAwLiNGRjMzMzMuI0ZGMzM2Ni4jRkYzMzk5LiNGRjMzQ0MuI0ZGMzNGRi4jRkY2NjAwLiNGRjY2MzMuI0ZGOTkwMC4jRkY5OTMzLiNGRkNDMDAuI0ZGQ0MzM2Auc3BsaXQoYC5gKTtmdW5jdGlvbiBuKCl7cmV0dXJuIHR5cGVvZiB3aW5kb3c8YHVgJiZ3aW5kb3cucHJvY2VzcyYmd2luZG93LnByb2Nlc3MudHlwZT09PWByZW5kZXJlcmA/ITA6dHlwZW9mIG5hdmlnYXRvcjxgdWAmJm5hdmlnYXRvci51c2VyQWdlbnQmJm5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKGVkZ2V8dHJpZGVudClcLyhcZCspLyk/ITE6dHlwZW9mIGRvY3VtZW50PGB1YCYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5XZWJraXRBcHBlYXJhbmNlfHx0eXBlb2Ygd2luZG93PGB1YCYmd2luZG93LmNvbnNvbGUmJih3aW5kb3cuY29uc29sZS5maXJlYnVnfHx3aW5kb3cuY29uc29sZS5leGNlcHRpb24mJndpbmRvdy5jb25zb2xlLnRhYmxlKXx8dHlwZW9mIG5hdmlnYXRvcjxgdWAmJm5hdmlnYXRvci51c2VyQWdlbnQmJm5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKS5tYXRjaCgvZmlyZWZveFwvKFxkKykvKSYmcGFyc2VJbnQoUmVnRXhwLiQxLDEwKT49MzF8fHR5cGVvZiBuYXZpZ2F0b3I8YHVgJiZuYXZpZ2F0b3IudXNlckFnZW50JiZuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkubWF0Y2goL2FwcGxld2Via2l0XC8oXGQrKS8pfWUuZm9ybWF0dGVycy5qPWZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSl9Y2F0Y2goZSl7cmV0dXJuYFtVbmV4cGVjdGVkSlNPTlBhcnNlRXJyb3JdOiBgK2UubWVzc2FnZX19O2Z1bmN0aW9uIHIodCl7dmFyIG49dGhpcy51c2VDb2xvcnM7aWYodFswXT0obj9gJWNgOmBgKSt0aGlzLm5hbWVzcGFjZSsobj9gICVjYDpgIGApK3RbMF0rKG4/YCVjIGA6YCBgKStgK2ArZS5odW1hbml6ZSh0aGlzLmRpZmYpLG4pe3ZhciByPWBjb2xvcjogYCt0aGlzLmNvbG9yO3Quc3BsaWNlKDEsMCxyLGBjb2xvcjogaW5oZXJpdGApO3ZhciBpPTAsYT0wO3RbMF0ucmVwbGFjZSgvJVthLXpBLVolXS9nLGZ1bmN0aW9uKGUpe2UhPT1gJSVgJiYoaSsrLGU9PT1gJWNgJiYoYT1pKSl9KSx0LnNwbGljZShhLDAscil9fWZ1bmN0aW9uIGkoKXtyZXR1cm4gdHlwZW9mIGNvbnNvbGU9PWBvYmplY3RgJiZjb25zb2xlLmxvZyYmRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5LmNhbGwoY29uc29sZS5sb2csY29uc29sZSxhcmd1bWVudHMpfWZ1bmN0aW9uIGEodCl7dHJ5e3Q9PW51bGw/ZS5zdG9yYWdlLnJlbW92ZUl0ZW0oYGRlYnVnYCk6ZS5zdG9yYWdlLmRlYnVnPXR9Y2F0Y2h7fX1mdW5jdGlvbiBvKCl7dmFyIHQ7dHJ5e3Q9ZS5zdG9yYWdlLmRlYnVnfWNhdGNoe31yZXR1cm4hdCYmdHlwZW9mIHByb2Nlc3M8YHVgJiZgZW52YGluIHByb2Nlc3MmJih0PXt9LkRFQlVHKSx0fWUuZW5hYmxlKG8oKSk7ZnVuY3Rpb24gcygpe3RyeXtyZXR1cm4gd2luZG93LmxvY2FsU3RvcmFnZX1jYXRjaHt9fX0pKSxJcz1zKCgoZSx0KT0+e3QhPT12b2lkIDAmJih0LmV4cG9ydHM9bik7ZnVuY3Rpb24gbihlKXtpZihlKXJldHVybiByKGUpfWZ1bmN0aW9uIHIoZSl7Zm9yKHZhciB0IGluIG4ucHJvdG90eXBlKWVbdF09bi5wcm90b3R5cGVbdF07cmV0dXJuIGV9bi5wcm90b3R5cGUub249bi5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLl9jYWxsYmFja3M9dGhpcy5fY2FsbGJhY2tzfHx7fSwodGhpcy5fY2FsbGJhY2tzW2AkYCtlXT10aGlzLl9jYWxsYmFja3NbYCRgK2VdfHxbXSkucHVzaCh0KSx0aGlzfSxuLnByb3RvdHlwZS5vbmNlPWZ1bmN0aW9uKGUsdCl7ZnVuY3Rpb24gbigpe3RoaXMub2ZmKGUsbiksdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9cmV0dXJuIG4uZm49dCx0aGlzLm9uKGUsbiksdGhpc30sbi5wcm90b3R5cGUub2ZmPW4ucHJvdG90eXBlLnJlbW92ZUxpc3RlbmVyPW4ucHJvdG90eXBlLnJlbW92ZUFsbExpc3RlbmVycz1uLnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGUsdCl7aWYodGhpcy5fY2FsbGJhY2tzPXRoaXMuX2NhbGxiYWNrc3x8e30sYXJndW1lbnRzLmxlbmd0aD09MClyZXR1cm4gdGhpcy5fY2FsbGJhY2tzPXt9LHRoaXM7dmFyIG49dGhpcy5fY2FsbGJhY2tzW2AkYCtlXTtpZighbilyZXR1cm4gdGhpcztpZihhcmd1bWVudHMubGVuZ3RoPT0xKXJldHVybiBkZWxldGUgdGhpcy5fY2FsbGJhY2tzW2AkYCtlXSx0aGlzO2Zvcih2YXIgcixpPTA7aTxuLmxlbmd0aDtpKyspaWYocj1uW2ldLHI9PT10fHxyLmZuPT09dCl7bi5zcGxpY2UoaSwxKTticmVha31yZXR1cm4gbi5sZW5ndGg9PT0wJiZkZWxldGUgdGhpcy5fY2FsbGJhY2tzW2AkYCtlXSx0aGlzfSxuLnByb3RvdHlwZS5lbWl0PWZ1bmN0aW9uKGUpe3RoaXMuX2NhbGxiYWNrcz10aGlzLl9jYWxsYmFja3N8fHt9O2Zvcih2YXIgdD1BcnJheShhcmd1bWVudHMubGVuZ3RoLTEpLG49dGhpcy5fY2FsbGJhY2tzW2AkYCtlXSxyPTE7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyl0W3ItMV09YXJndW1lbnRzW3JdO2lmKG4pe249bi5zbGljZSgwKTtmb3IodmFyIHI9MCxpPW4ubGVuZ3RoO3I8aTsrK3IpbltyXS5hcHBseSh0aGlzLHQpfXJldHVybiB0aGlzfSxuLnByb3RvdHlwZS5saXN0ZW5lcnM9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuX2NhbGxiYWNrcz10aGlzLl9jYWxsYmFja3N8fHt9LHRoaXMuX2NhbGxiYWNrc1tgJGArZV18fFtdfSxuLnByb3RvdHlwZS5oYXNMaXN0ZW5lcnM9ZnVuY3Rpb24oZSl7cmV0dXJuISF0aGlzLmxpc3RlbmVycyhlKS5sZW5ndGh9fSkpLExzPXMoKChlLHQpPT57dmFyIG49e30udG9TdHJpbmc7dC5leHBvcnRzPUFycmF5LmlzQXJyYXl8fGZ1bmN0aW9uKGUpe3JldHVybiBuLmNhbGwoZSk9PWBbb2JqZWN0IEFycmF5XWB9fSkpLFJzPXMoKChlLHQpPT57dC5leHBvcnRzPWE7dmFyIG49dHlwZW9mIEJ1ZmZlcj09YGZ1bmN0aW9uYCYmdHlwZW9mIEJ1ZmZlci5pc0J1ZmZlcj09YGZ1bmN0aW9uYCxyPXR5cGVvZiBBcnJheUJ1ZmZlcj09YGZ1bmN0aW9uYCxpPWZ1bmN0aW9uKGUpe3JldHVybiB0eXBlb2YgQXJyYXlCdWZmZXIuaXNWaWV3PT1gZnVuY3Rpb25gP0FycmF5QnVmZmVyLmlzVmlldyhlKTplLmJ1ZmZlciBpbnN0YW5jZW9mIEFycmF5QnVmZmVyfTtmdW5jdGlvbiBhKGUpe3JldHVybiBuJiZCdWZmZXIuaXNCdWZmZXIoZSl8fHImJihlIGluc3RhbmNlb2YgQXJyYXlCdWZmZXJ8fGkoZSkpfX0pKSx6cz1zKChlPT57dmFyIHQ9THMoKSxuPVJzKCkscj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLGk9dHlwZW9mIEJsb2I9PWBmdW5jdGlvbmB8fHR5cGVvZiBCbG9iPGB1YCYmci5jYWxsKEJsb2IpPT09YFtvYmplY3QgQmxvYkNvbnN0cnVjdG9yXWAsYT10eXBlb2YgRmlsZT09YGZ1bmN0aW9uYHx8dHlwZW9mIEZpbGU8YHVgJiZyLmNhbGwoRmlsZSk9PT1gW29iamVjdCBGaWxlQ29uc3RydWN0b3JdYDtlLmRlY29uc3RydWN0UGFja2V0PWZ1bmN0aW9uKGUpe3ZhciB0PVtdLG49ZS5kYXRhLHI9ZTtyZXR1cm4gci5kYXRhPW8obix0KSxyLmF0dGFjaG1lbnRzPXQubGVuZ3RoLHtwYWNrZXQ6cixidWZmZXJzOnR9fTtmdW5jdGlvbiBvKGUscil7aWYoIWUpcmV0dXJuIGU7aWYobihlKSl7dmFyIGk9e19wbGFjZWhvbGRlcjohMCxudW06ci5sZW5ndGh9O3JldHVybiByLnB1c2goZSksaX1lbHNlIGlmKHQoZSkpe2Zvcih2YXIgYT1BcnJheShlLmxlbmd0aCkscz0wO3M8ZS5sZW5ndGg7cysrKWFbc109byhlW3NdLHIpO3JldHVybiBhfWVsc2UgaWYodHlwZW9mIGU9PWBvYmplY3RgJiYhKGUgaW5zdGFuY2VvZiBEYXRlKSl7dmFyIGE9e307Zm9yKHZhciBjIGluIGUpYVtjXT1vKGVbY10scik7cmV0dXJuIGF9cmV0dXJuIGV9ZS5yZWNvbnN0cnVjdFBhY2tldD1mdW5jdGlvbihlLHQpe3JldHVybiBlLmRhdGE9cyhlLmRhdGEsdCksZS5hdHRhY2htZW50cz12b2lkIDAsZX07ZnVuY3Rpb24gcyhlLG4pe2lmKCFlKXJldHVybiBlO2lmKGUmJmUuX3BsYWNlaG9sZGVyPT09ITApe2lmKHR5cGVvZiBlLm51bT09YG51bWJlcmAmJmUubnVtPj0wJiZlLm51bTxuLmxlbmd0aClyZXR1cm4gbltlLm51bV07dGhyb3cgRXJyb3IoYGlsbGVnYWwgYXR0YWNobWVudHNgKX1lbHNlIGlmKHQoZSkpZm9yKHZhciByPTA7cjxlLmxlbmd0aDtyKyspZVtyXT1zKGVbcl0sbik7ZWxzZSBpZih0eXBlb2YgZT09YG9iamVjdGApZm9yKHZhciBpIGluIGUpZVtpXT1zKGVbaV0sbik7cmV0dXJuIGV9ZS5yZW1vdmVCbG9icz1mdW5jdGlvbihlLHIpe2Z1bmN0aW9uIG8oZSxsLHUpe2lmKCFlKXJldHVybiBlO2lmKGkmJmUgaW5zdGFuY2VvZiBCbG9ifHxhJiZlIGluc3RhbmNlb2YgRmlsZSl7cysrO3ZhciBkPW5ldyBGaWxlUmVhZGVyO2Qub25sb2FkPWZ1bmN0aW9uKCl7dT91W2xdPXRoaXMucmVzdWx0OmM9dGhpcy5yZXN1bHQsLS1zfHxyKGMpfSxkLnJlYWRBc0FycmF5QnVmZmVyKGUpfWVsc2UgaWYodChlKSlmb3IodmFyIGY9MDtmPGUubGVuZ3RoO2YrKylvKGVbZl0sZixlKTtlbHNlIGlmKHR5cGVvZiBlPT1gb2JqZWN0YCYmIW4oZSkpZm9yKHZhciBwIGluIGUpbyhlW3BdLHAsZSl9dmFyIHM9MCxjPWU7byhjKSxzfHxyKGMpfX0pKSxCcz1zKChlPT57dmFyIHQ9RnMoKShgc29ja2V0LmlvLXBhcnNlcmApLG49SXMoKSxyPXpzKCksaT1McygpLGE9UnMoKTtlLnByb3RvY29sPTQsZS50eXBlcz1bYENPTk5FQ1RgLGBESVNDT05ORUNUYCxgRVZFTlRgLGBBQ0tgLGBFUlJPUmAsYEJJTkFSWV9FVkVOVGAsYEJJTkFSWV9BQ0tgXSxlLkNPTk5FQ1Q9MCxlLkRJU0NPTk5FQ1Q9MSxlLkVWRU5UPTIsZS5BQ0s9MyxlLkVSUk9SPTQsZS5CSU5BUllfRVZFTlQ9NSxlLkJJTkFSWV9BQ0s9NixlLkVuY29kZXI9byxlLkRlY29kZXI9ZDtmdW5jdGlvbiBvKCl7fXZhciBzPWUuRVJST1IrYCJlbmNvZGUgZXJyb3IiYDtvLnByb3RvdHlwZS5lbmNvZGU9ZnVuY3Rpb24obixyKXt0KGBlbmNvZGluZyBwYWNrZXQgJWpgLG4pLGUuQklOQVJZX0VWRU5UPT09bi50eXBlfHxlLkJJTkFSWV9BQ0s9PT1uLnR5cGU/dShuLHIpOnIoW2MobildKX07ZnVuY3Rpb24gYyhuKXt2YXIgcj1gYCtuLnR5cGU7aWYoKGUuQklOQVJZX0VWRU5UPT09bi50eXBlfHxlLkJJTkFSWV9BQ0s9PT1uLnR5cGUpJiYocis9bi5hdHRhY2htZW50cytgLWApLG4ubnNwJiZuLm5zcCE9PWAvYCYmKHIrPW4ubnNwK2AsYCksbi5pZCE9bnVsbCYmKHIrPW4uaWQpLG4uZGF0YSE9bnVsbCl7dmFyIGk9bChuLmRhdGEpO2lmKGkhPT0hMSlyKz1pO2Vsc2UgcmV0dXJuIHN9cmV0dXJuIHQoYGVuY29kZWQgJWogYXMgJXNgLG4scikscn1mdW5jdGlvbiBsKGUpe3RyeXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSl9Y2F0Y2h7cmV0dXJuITF9fWZ1bmN0aW9uIHUoZSx0KXtmdW5jdGlvbiBuKGUpe3ZhciBuPXIuZGVjb25zdHJ1Y3RQYWNrZXQoZSksaT1jKG4ucGFja2V0KSxhPW4uYnVmZmVyczthLnVuc2hpZnQoaSksdChhKX1yLnJlbW92ZUJsb2JzKGUsbil9ZnVuY3Rpb24gZCgpe3RoaXMucmVjb25zdHJ1Y3Rvcj1udWxsfW4oZC5wcm90b3R5cGUpLGQucHJvdG90eXBlLmFkZD1mdW5jdGlvbih0KXt2YXIgbjtpZih0eXBlb2YgdD09YHN0cmluZ2Ape2lmKHRoaXMucmVjb25zdHJ1Y3Rvcil0aHJvdyBFcnJvcihgZ290IHBsYWludGV4dCBkYXRhIHdoZW4gcmVjb25zdHJ1Y3RpbmcgYSBwYWNrZXRgKTtuPWYodCksZS5CSU5BUllfRVZFTlQ9PT1uLnR5cGV8fGUuQklOQVJZX0FDSz09PW4udHlwZT8odGhpcy5yZWNvbnN0cnVjdG9yPW5ldyBtKG4pLHRoaXMucmVjb25zdHJ1Y3Rvci5yZWNvblBhY2suYXR0YWNobWVudHM9PT0wJiZ0aGlzLmVtaXQoYGRlY29kZWRgLG4pKTp0aGlzLmVtaXQoYGRlY29kZWRgLG4pfWVsc2UgaWYoYSh0KXx8dC5iYXNlNjQpaWYodGhpcy5yZWNvbnN0cnVjdG9yKW49dGhpcy5yZWNvbnN0cnVjdG9yLnRha2VCaW5hcnlEYXRhKHQpLG4mJih0aGlzLnJlY29uc3RydWN0b3I9bnVsbCx0aGlzLmVtaXQoYGRlY29kZWRgLG4pKTtlbHNlIHRocm93IEVycm9yKGBnb3QgYmluYXJ5IGRhdGEgd2hlbiBub3QgcmVjb25zdHJ1Y3RpbmcgYSBwYWNrZXRgKTtlbHNlIHRocm93IEVycm9yKGBVbmtub3duIHR5cGU6IGArdCl9O2Z1bmN0aW9uIGYobil7dmFyIHI9MCxhPXt0eXBlOk51bWJlcihuLmNoYXJBdCgwKSl9O2lmKGUudHlwZXNbYS50eXBlXT09bnVsbClyZXR1cm4gaChgdW5rbm93biBwYWNrZXQgdHlwZSBgK2EudHlwZSk7aWYoZS5CSU5BUllfRVZFTlQ9PT1hLnR5cGV8fGUuQklOQVJZX0FDSz09PWEudHlwZSl7Zm9yKHZhciBvPXIrMTtuLmNoYXJBdCgrK3IpIT09YC1gJiZyIT1uLmxlbmd0aDspO3ZhciBzPW4uc3Vic3RyaW5nKG8scik7aWYocyE9TnVtYmVyKHMpfHxuLmNoYXJBdChyKSE9PWAtYCl0aHJvdyBFcnJvcihgSWxsZWdhbCBhdHRhY2htZW50c2ApO2EuYXR0YWNobWVudHM9TnVtYmVyKHMpfWlmKG4uY2hhckF0KHIrMSk9PT1gL2Ape2Zvcih2YXIgbz1yKzE7KytyOyl7dmFyIGM9bi5jaGFyQXQocik7aWYoYz09PWAsYHx8cj09PW4ubGVuZ3RoKWJyZWFrfWEubnNwPW4uc3Vic3RyaW5nKG8scil9ZWxzZSBhLm5zcD1gL2A7dmFyIGw9bi5jaGFyQXQocisxKTtpZihsIT09YGAmJk51bWJlcihsKT09bCl7Zm9yKHZhciBvPXIrMTsrK3I7KXt2YXIgYz1uLmNoYXJBdChyKTtpZihjPT1udWxsfHxOdW1iZXIoYykhPWMpey0tcjticmVha31pZihyPT09bi5sZW5ndGgpYnJlYWt9YS5pZD1OdW1iZXIobi5zdWJzdHJpbmcobyxyKzEpKX1pZihuLmNoYXJBdCgrK3IpKXt2YXIgdT1wKG4uc3Vic3RyKHIpKTtpZih1IT09ITEmJihhLnR5cGU9PT1lLkVSUk9SfHxpKHUpKSlhLmRhdGE9dTtlbHNlIHJldHVybiBoKGBpbnZhbGlkIHBheWxvYWRgKX1yZXR1cm4gdChgZGVjb2RlZCAlcyBhcyAlamAsbixhKSxhfWZ1bmN0aW9uIHAoZSl7dHJ5e3JldHVybiBKU09OLnBhcnNlKGUpfWNhdGNoe3JldHVybiExfX1kLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dGhpcy5yZWNvbnN0cnVjdG9yJiZ0aGlzLnJlY29uc3RydWN0b3IuZmluaXNoZWRSZWNvbnN0cnVjdGlvbigpfTtmdW5jdGlvbiBtKGUpe3RoaXMucmVjb25QYWNrPWUsdGhpcy5idWZmZXJzPVtdfW0ucHJvdG90eXBlLnRha2VCaW5hcnlEYXRhPWZ1bmN0aW9uKGUpe2lmKHRoaXMuYnVmZmVycy5wdXNoKGUpLHRoaXMuYnVmZmVycy5sZW5ndGg9PT10aGlzLnJlY29uUGFjay5hdHRhY2htZW50cyl7dmFyIHQ9ci5yZWNvbnN0cnVjdFBhY2tldCh0aGlzLnJlY29uUGFjayx0aGlzLmJ1ZmZlcnMpO3JldHVybiB0aGlzLmZpbmlzaGVkUmVjb25zdHJ1Y3Rpb24oKSx0fXJldHVybiBudWxsfSxtLnByb3RvdHlwZS5maW5pc2hlZFJlY29uc3RydWN0aW9uPWZ1bmN0aW9uKCl7dGhpcy5yZWNvblBhY2s9bnVsbCx0aGlzLmJ1ZmZlcnM9W119O2Z1bmN0aW9uIGgodCl7cmV0dXJue3R5cGU6ZS5FUlJPUixkYXRhOmBwYXJzZXIgZXJyb3I6IGArdH19fSkpLFZzPXMoKChlLHQpPT57dHJ5e3QuZXhwb3J0cz10eXBlb2YgWE1MSHR0cFJlcXVlc3Q8YHVgJiZgd2l0aENyZWRlbnRpYWxzYGluIG5ldyBYTUxIdHRwUmVxdWVzdH1jYXRjaHt0LmV4cG9ydHM9ITF9fSkpLEhzPXMoKChlLHQpPT57dC5leHBvcnRzPShmdW5jdGlvbigpe3JldHVybiB0eXBlb2Ygc2VsZjxgdWA/c2VsZjp0eXBlb2Ygd2luZG93PGB1YD93aW5kb3c6RnVuY3Rpb24oYHJldHVybiB0aGlzYCkoKX0pKCl9KSksVXM9cygoKGUsdCk9Pnt2YXIgbj1WcygpLHI9SHMoKTt0LmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS54ZG9tYWluLGk9ZS54c2NoZW1lLGE9ZS5lbmFibGVzWERSO3RyeXtpZih0eXBlb2YgWE1MSHR0cFJlcXVlc3Q8YHVgJiYoIXR8fG4pKXJldHVybiBuZXcgWE1MSHR0cFJlcXVlc3R9Y2F0Y2h7fXRyeXtpZih0eXBlb2YgWERvbWFpblJlcXVlc3Q8YHVgJiYhaSYmYSlyZXR1cm4gbmV3IFhEb21haW5SZXF1ZXN0fWNhdGNoe31pZighdCl0cnl7cmV0dXJuIG5ldyByW1tgQWN0aXZlYCxgT2JqZWN0YF0uam9pbihgWGApXShgTWljcm9zb2Z0LlhNTEhUVFBgKX1jYXRjaHt9fX0pKSxXcz1zKCgoZSx0KT0+e3QuZXhwb3J0cz1PYmplY3Qua2V5c3x8ZnVuY3Rpb24oZSl7dmFyIHQ9W10sbj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2Zvcih2YXIgciBpbiBlKW4uY2FsbChlLHIpJiZ0LnB1c2gocik7cmV0dXJuIHR9fSkpLEdzPXMoKChlLHQpPT57dmFyIG49THMoKSxyPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcsaT10eXBlb2YgQmxvYj09YGZ1bmN0aW9uYHx8dHlwZW9mIEJsb2I8YHVgJiZyLmNhbGwoQmxvYik9PT1gW29iamVjdCBCbG9iQ29uc3RydWN0b3JdYCxhPXR5cGVvZiBGaWxlPT1gZnVuY3Rpb25gfHx0eXBlb2YgRmlsZTxgdWAmJnIuY2FsbChGaWxlKT09PWBbb2JqZWN0IEZpbGVDb25zdHJ1Y3Rvcl1gO3QuZXhwb3J0cz1vO2Z1bmN0aW9uIG8oZSl7aWYoIWV8fHR5cGVvZiBlIT1gb2JqZWN0YClyZXR1cm4hMTtpZihuKGUpKXtmb3IodmFyIHQ9MCxyPWUubGVuZ3RoO3Q8cjt0KyspaWYobyhlW3RdKSlyZXR1cm4hMDtyZXR1cm4hMX1pZih0eXBlb2YgQnVmZmVyPT1gZnVuY3Rpb25gJiZCdWZmZXIuaXNCdWZmZXImJkJ1ZmZlci5pc0J1ZmZlcihlKXx8dHlwZW9mIEFycmF5QnVmZmVyPT1gZnVuY3Rpb25gJiZlIGluc3RhbmNlb2YgQXJyYXlCdWZmZXJ8fGkmJmUgaW5zdGFuY2VvZiBCbG9ifHxhJiZlIGluc3RhbmNlb2YgRmlsZSlyZXR1cm4hMDtpZihlLnRvSlNPTiYmdHlwZW9mIGUudG9KU09OPT1gZnVuY3Rpb25gJiZhcmd1bWVudHMubGVuZ3RoPT09MSlyZXR1cm4gbyhlLnRvSlNPTigpLCEwKTtmb3IodmFyIHMgaW4gZSlpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxzKSYmbyhlW3NdKSlyZXR1cm4hMDtyZXR1cm4hMX19KSksS3M9cygoKGUsdCk9Pnt0LmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWUuYnl0ZUxlbmd0aDtpZih0fHw9MCxufHw9cixlLnNsaWNlKXJldHVybiBlLnNsaWNlKHQsbik7aWYodDwwJiYodCs9ciksbjwwJiYobis9ciksbj5yJiYobj1yKSx0Pj1yfHx0Pj1ufHxyPT09MClyZXR1cm4gbmV3IEFycmF5QnVmZmVyKDApO2Zvcih2YXIgaT1uZXcgVWludDhBcnJheShlKSxhPW5ldyBVaW50OEFycmF5KG4tdCksbz10LHM9MDtvPG47bysrLHMrKylhW3NdPWlbb107cmV0dXJuIGEuYnVmZmVyfX0pKSxxcz1zKCgoZSx0KT0+e3QuZXhwb3J0cz1uO2Z1bmN0aW9uIG4oZSx0LG4pe3ZhciBpPSExO3JldHVybiBufHw9cixhLmNvdW50PWUsZT09PTA/dCgpOmE7ZnVuY3Rpb24gYShlLHIpe2lmKGEuY291bnQ8PTApdGhyb3cgRXJyb3IoYGFmdGVyIGNhbGxlZCB0b28gbWFueSB0aW1lc2ApOy0tYS5jb3VudCxlPyhpPSEwLHQoZSksdD1uKTphLmNvdW50PT09MCYmIWkmJnQobnVsbCxyKX19ZnVuY3Rpb24gcigpe319KSksSnM9cygoKGUsdCk9Pnt2YXIgbj1TdHJpbmcuZnJvbUNoYXJDb2RlO2Z1bmN0aW9uIHIoZSl7Zm9yKHZhciB0PVtdLG49MCxyPWUubGVuZ3RoLGksYTtuPHI7KWk9ZS5jaGFyQ29kZUF0KG4rKyksaT49NTUyOTYmJmk8PTU2MzE5JiZuPHI/KGE9ZS5jaGFyQ29kZUF0KG4rKyksKGEmNjQ1MTIpPT01NjMyMD90LnB1c2goKChpJjEwMjMpPDwxMCkrKGEmMTAyMykrNjU1MzYpOih0LnB1c2goaSksbi0tKSk6dC5wdXNoKGkpO3JldHVybiB0fWZ1bmN0aW9uIGkoZSl7Zm9yKHZhciB0PWUubGVuZ3RoLHI9LTEsaSxhPWBgOysrcjx0OylpPWVbcl0saT42NTUzNSYmKGktPTY1NTM2LGErPW4oaT4+PjEwJjEwMjN8NTUyOTYpLGk9NTYzMjB8aSYxMDIzKSxhKz1uKGkpO3JldHVybiBhfWZ1bmN0aW9uIGEoZSx0KXtpZihlPj01NTI5NiYmZTw9NTczNDMpe2lmKHQpdGhyb3cgRXJyb3IoYExvbmUgc3Vycm9nYXRlIFUrYCtlLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpK2AgaXMgbm90IGEgc2NhbGFyIHZhbHVlYCk7cmV0dXJuITF9cmV0dXJuITB9ZnVuY3Rpb24gbyhlLHQpe3JldHVybiBuKGU+PnQmNjN8MTI4KX1mdW5jdGlvbiBzKGUsdCl7aWYoIShlJjQyOTQ5NjcxNjgpKXJldHVybiBuKGUpO3ZhciByPWBgO3JldHVybiBlJjQyOTQ5NjUyNDg/ZSY0Mjk0OTAxNzYwP2UmNDI5Mjg3MDE0NHx8KHI9bihlPj4xOCY3fDI0MCkscis9byhlLDEyKSxyKz1vKGUsNikpOihhKGUsdCl8fChlPTY1NTMzKSxyPW4oZT4+MTImMTV8MjI0KSxyKz1vKGUsNikpOnI9bihlPj42JjMxfDE5Mikscis9bihlJjYzfDEyOCkscn1mdW5jdGlvbiBjKGUsdCl7dHx8PXt9O2Zvcih2YXIgbj0hMSE9PXQuc3RyaWN0LGk9cihlKSxhPWkubGVuZ3RoLG89LTEsYyxsPWBgOysrbzxhOyljPWlbb10sbCs9cyhjLG4pO3JldHVybiBsfWZ1bmN0aW9uIGwoKXtpZihwPj1mKXRocm93IEVycm9yKGBJbnZhbGlkIGJ5dGUgaW5kZXhgKTt2YXIgZT1kW3BdJjI1NTtpZihwKyssKGUmMTkyKT09MTI4KXJldHVybiBlJjYzO3Rocm93IEVycm9yKGBJbnZhbGlkIGNvbnRpbnVhdGlvbiBieXRlYCl9ZnVuY3Rpb24gdShlKXt2YXIgdCxuLHIsaSxvO2lmKHA+Zil0aHJvdyBFcnJvcihgSW52YWxpZCBieXRlIGluZGV4YCk7aWYocD09ZilyZXR1cm4hMTtpZih0PWRbcF0mMjU1LHArKywhKHQmMTI4KSlyZXR1cm4gdDtpZigodCYyMjQpPT0xOTIpe2lmKG49bCgpLG89KHQmMzEpPDw2fG4sbz49MTI4KXJldHVybiBvO3Rocm93IEVycm9yKGBJbnZhbGlkIGNvbnRpbnVhdGlvbiBieXRlYCl9aWYoKHQmMjQwKT09MjI0KXtpZihuPWwoKSxyPWwoKSxvPSh0JjE1KTw8MTJ8bjw8NnxyLG8+PTIwNDgpcmV0dXJuIGEobyxlKT9vOjY1NTMzO3Rocm93IEVycm9yKGBJbnZhbGlkIGNvbnRpbnVhdGlvbiBieXRlYCl9aWYoKHQmMjQ4KT09MjQwJiYobj1sKCkscj1sKCksaT1sKCksbz0odCY3KTw8MTh8bjw8MTJ8cjw8NnxpLG8+PTY1NTM2JiZvPD0xMTE0MTExKSlyZXR1cm4gbzt0aHJvdyBFcnJvcihgSW52YWxpZCBVVEYtOCBkZXRlY3RlZGApfXZhciBkLGYscDtmdW5jdGlvbiBtKGUsdCl7dHx8PXt9O3ZhciBuPSExIT09dC5zdHJpY3Q7ZD1yKGUpLGY9ZC5sZW5ndGgscD0wO2Zvcih2YXIgYT1bXSxvOyhvPXUobikpIT09ITE7KWEucHVzaChvKTtyZXR1cm4gaShhKX10LmV4cG9ydHM9e3ZlcnNpb246YDIuMS4yYCxlbmNvZGU6YyxkZWNvZGU6bX19KSksWXM9cygoZT0+eyhmdW5jdGlvbih0KXtlLmVuY29kZT1mdW5jdGlvbihlKXt2YXIgbj1uZXcgVWludDhBcnJheShlKSxyLGk9bi5sZW5ndGgsYT1gYDtmb3Iocj0wO3I8aTtyKz0zKWErPXRbbltyXT4+Ml0sYSs9dFsobltyXSYzKTw8NHxuW3IrMV0+PjRdLGErPXRbKG5bcisxXSYxNSk8PDJ8bltyKzJdPj42XSxhKz10W25bcisyXSY2M107cmV0dXJuIGklMz09Mj9hPWEuc3Vic3RyaW5nKDAsYS5sZW5ndGgtMSkrYD1gOmklMz09MSYmKGE9YS5zdWJzdHJpbmcoMCxhLmxlbmd0aC0yKStgPT1gKSxhfSxlLmRlY29kZT1mdW5jdGlvbihlKXt2YXIgbj1lLmxlbmd0aCouNzUscj1lLmxlbmd0aCxpLGE9MCxvLHMsYyxsO2VbZS5sZW5ndGgtMV09PT1gPWAmJihuLS0sZVtlLmxlbmd0aC0yXT09PWA9YCYmbi0tKTt2YXIgdT1uZXcgQXJyYXlCdWZmZXIobiksZD1uZXcgVWludDhBcnJheSh1KTtmb3IoaT0wO2k8cjtpKz00KW89dC5pbmRleE9mKGVbaV0pLHM9dC5pbmRleE9mKGVbaSsxXSksYz10LmluZGV4T2YoZVtpKzJdKSxsPXQuaW5kZXhPZihlW2krM10pLGRbYSsrXT1vPDwyfHM+PjQsZFthKytdPShzJjE1KTw8NHxjPj4yLGRbYSsrXT0oYyYzKTw8NnxsJjYzO3JldHVybiB1fX0pKGBBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvYCl9KSksWHM9cygoKGUsdCk9Pnt2YXIgbj1uPT09dm9pZCAwP3R5cGVvZiBXZWJLaXRCbG9iQnVpbGRlcjxgdWA/V2ViS2l0QmxvYkJ1aWxkZXI6dHlwZW9mIE1TQmxvYkJ1aWxkZXI8YHVgP01TQmxvYkJ1aWxkZXI6dHlwZW9mIE1vekJsb2JCdWlsZGVyPGB1YD9Nb3pCbG9iQnVpbGRlcjohMTpuLHI9KGZ1bmN0aW9uKCl7dHJ5e3JldHVybiBuZXcgQmxvYihbYGhpYF0pLnNpemU9PT0yfWNhdGNoe3JldHVybiExfX0pKCksaT1yJiYoZnVuY3Rpb24oKXt0cnl7cmV0dXJuIG5ldyBCbG9iKFtuZXcgVWludDhBcnJheShbMSwyXSldKS5zaXplPT09Mn1jYXRjaHtyZXR1cm4hMX19KSgpLGE9biYmbi5wcm90b3R5cGUuYXBwZW5kJiZuLnByb3RvdHlwZS5nZXRCbG9iO2Z1bmN0aW9uIG8oZSl7cmV0dXJuIGUubWFwKGZ1bmN0aW9uKGUpe2lmKGUuYnVmZmVyIGluc3RhbmNlb2YgQXJyYXlCdWZmZXIpe3ZhciB0PWUuYnVmZmVyO2lmKGUuYnl0ZUxlbmd0aCE9PXQuYnl0ZUxlbmd0aCl7dmFyIG49bmV3IFVpbnQ4QXJyYXkoZS5ieXRlTGVuZ3RoKTtuLnNldChuZXcgVWludDhBcnJheSh0LGUuYnl0ZU9mZnNldCxlLmJ5dGVMZW5ndGgpKSx0PW4uYnVmZmVyfXJldHVybiB0fXJldHVybiBlfSl9ZnVuY3Rpb24gcyhlLHQpe3R8fD17fTt2YXIgcj1uZXcgbjtyZXR1cm4gbyhlKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3IuYXBwZW5kKGUpfSksdC50eXBlP3IuZ2V0QmxvYih0LnR5cGUpOnIuZ2V0QmxvYigpfWZ1bmN0aW9uIGMoZSx0KXtyZXR1cm4gbmV3IEJsb2IobyhlKSx0fHx7fSl9dHlwZW9mIEJsb2I8YHVgJiYocy5wcm90b3R5cGU9QmxvYi5wcm90b3R5cGUsYy5wcm90b3R5cGU9QmxvYi5wcm90b3R5cGUpLHQuZXhwb3J0cz0oZnVuY3Rpb24oKXtpZihyKXJldHVybiBpP0Jsb2I6YztpZihhKXJldHVybiBzfSkoKX0pKSxacz1zKChlPT57dmFyIHQ9V3MoKSxuPUdzKCkscj1LcygpLGk9cXMoKSxhPUpzKCksbzt0eXBlb2YgQXJyYXlCdWZmZXI8YHVgJiYobz1ZcygpKTt2YXIgcz10eXBlb2YgbmF2aWdhdG9yPGB1YCYmL0FuZHJvaWQvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGM9dHlwZW9mIG5hdmlnYXRvcjxgdWAmJi9QaGFudG9tSlMvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGw9c3x8YztlLnByb3RvY29sPTM7dmFyIHU9ZS5wYWNrZXRzPXtvcGVuOjAsY2xvc2U6MSxwaW5nOjIscG9uZzozLG1lc3NhZ2U6NCx1cGdyYWRlOjUsbm9vcDo2fSxkPXQodSksZj17dHlwZTpgZXJyb3JgLGRhdGE6YHBhcnNlciBlcnJvcmB9LHA9WHMoKTtlLmVuY29kZVBhY2tldD1mdW5jdGlvbihlLHQsbixyKXt0eXBlb2YgdD09YGZ1bmN0aW9uYCYmKHI9dCx0PSExKSx0eXBlb2Ygbj09YGZ1bmN0aW9uYCYmKHI9bixuPW51bGwpO3ZhciBpPWUuZGF0YT09PXZvaWQgMD92b2lkIDA6ZS5kYXRhLmJ1ZmZlcnx8ZS5kYXRhO2lmKHR5cGVvZiBBcnJheUJ1ZmZlcjxgdWAmJmkgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcilyZXR1cm4gaChlLHQscik7aWYocCE9PXZvaWQgMCYmaSBpbnN0YW5jZW9mIHApcmV0dXJuIF8oZSx0LHIpO2lmKGkmJmkuYmFzZTY0KXJldHVybiBtKGUscik7dmFyIG89dVtlLnR5cGVdO3JldHVybiBlLmRhdGEhPT12b2lkIDAmJihvKz1uP2EuZW5jb2RlKFN0cmluZyhlLmRhdGEpLHtzdHJpY3Q6ITF9KTpTdHJpbmcoZS5kYXRhKSkscihgYCtvKX07ZnVuY3Rpb24gbSh0LG4pe3JldHVybiBuKGBiYCtlLnBhY2tldHNbdC50eXBlXSt0LmRhdGEuZGF0YSl9ZnVuY3Rpb24gaCh0LG4scil7aWYoIW4pcmV0dXJuIGUuZW5jb2RlQmFzZTY0UGFja2V0KHQscik7dmFyIGk9dC5kYXRhLGE9bmV3IFVpbnQ4QXJyYXkoaSksbz1uZXcgVWludDhBcnJheSgxK2kuYnl0ZUxlbmd0aCk7b1swXT11W3QudHlwZV07Zm9yKHZhciBzPTA7czxhLmxlbmd0aDtzKyspb1tzKzFdPWFbc107cmV0dXJuIHIoby5idWZmZXIpfWZ1bmN0aW9uIGcodCxuLHIpe2lmKCFuKXJldHVybiBlLmVuY29kZUJhc2U2NFBhY2tldCh0LHIpO3ZhciBpPW5ldyBGaWxlUmVhZGVyO3JldHVybiBpLm9ubG9hZD1mdW5jdGlvbigpe2UuZW5jb2RlUGFja2V0KHt0eXBlOnQudHlwZSxkYXRhOmkucmVzdWx0fSxuLCEwLHIpfSxpLnJlYWRBc0FycmF5QnVmZmVyKHQuZGF0YSl9ZnVuY3Rpb24gXyh0LG4scil7aWYoIW4pcmV0dXJuIGUuZW5jb2RlQmFzZTY0UGFja2V0KHQscik7aWYobClyZXR1cm4gZyh0LG4scik7dmFyIGk9bmV3IFVpbnQ4QXJyYXkoMSk7cmV0dXJuIGlbMF09dVt0LnR5cGVdLHIobmV3IHAoW2kuYnVmZmVyLHQuZGF0YV0pKX1lLmVuY29kZUJhc2U2NFBhY2tldD1mdW5jdGlvbih0LG4pe3ZhciByPWBiYCtlLnBhY2tldHNbdC50eXBlXTtpZihwIT09dm9pZCAwJiZ0LmRhdGEgaW5zdGFuY2VvZiBwKXt2YXIgaT1uZXcgRmlsZVJlYWRlcjtyZXR1cm4gaS5vbmxvYWQ9ZnVuY3Rpb24oKXt2YXIgZT1pLnJlc3VsdC5zcGxpdChgLGApWzFdO24ocitlKX0saS5yZWFkQXNEYXRhVVJMKHQuZGF0YSl9dmFyIGE7dHJ5e2E9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLG5ldyBVaW50OEFycmF5KHQuZGF0YSkpfWNhdGNoe2Zvcih2YXIgbz1uZXcgVWludDhBcnJheSh0LmRhdGEpLHM9QXJyYXkoby5sZW5ndGgpLGM9MDtjPG8ubGVuZ3RoO2MrKylzW2NdPW9bY107YT1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwscyl9cmV0dXJuIHIrPWJ0b2EoYSksbihyKX0sZS5kZWNvZGVQYWNrZXQ9ZnVuY3Rpb24odCxuLGkpe2lmKHQ9PT12b2lkIDApcmV0dXJuIGY7aWYodHlwZW9mIHQ9PWBzdHJpbmdgKXtpZih0LmNoYXJBdCgwKT09PWBiYClyZXR1cm4gZS5kZWNvZGVCYXNlNjRQYWNrZXQodC5zdWJzdHIoMSksbik7aWYoaSYmKHQ9dih0KSx0PT09ITEpKXJldHVybiBmO3ZhciBhPXQuY2hhckF0KDApO3JldHVybiBOdW1iZXIoYSkhPWF8fCFkW2FdP2Y6dC5sZW5ndGg+MT97dHlwZTpkW2FdLGRhdGE6dC5zdWJzdHJpbmcoMSl9Ont0eXBlOmRbYV19fXZhciBhPW5ldyBVaW50OEFycmF5KHQpWzBdLG89cih0LDEpO3JldHVybiBwJiZuPT09YGJsb2JgJiYobz1uZXcgcChbb10pKSx7dHlwZTpkW2FdLGRhdGE6b319O2Z1bmN0aW9uIHYoZSl7dHJ5e2U9YS5kZWNvZGUoZSx7c3RyaWN0OiExfSl9Y2F0Y2h7cmV0dXJuITF9cmV0dXJuIGV9ZS5kZWNvZGVCYXNlNjRQYWNrZXQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj1kW2UuY2hhckF0KDApXTtpZighbylyZXR1cm57dHlwZTpuLGRhdGE6e2Jhc2U2NDohMCxkYXRhOmUuc3Vic3RyKDEpfX07dmFyIHI9by5kZWNvZGUoZS5zdWJzdHIoMSkpO3JldHVybiB0PT09YGJsb2JgJiZwJiYocj1uZXcgcChbcl0pKSx7dHlwZTpuLGRhdGE6cn19LGUuZW5jb2RlUGF5bG9hZD1mdW5jdGlvbih0LHIsaSl7dHlwZW9mIHI9PWBmdW5jdGlvbmAmJihpPXIscj1udWxsKTt2YXIgYT1uKHQpO2lmKHImJmEpcmV0dXJuIHAmJiFsP2UuZW5jb2RlUGF5bG9hZEFzQmxvYih0LGkpOmUuZW5jb2RlUGF5bG9hZEFzQXJyYXlCdWZmZXIodCxpKTtpZighdC5sZW5ndGgpcmV0dXJuIGkoYDA6YCk7ZnVuY3Rpb24gbyhlKXtyZXR1cm4gZS5sZW5ndGgrYDpgK2V9ZnVuY3Rpb24gcyh0LG4pe2UuZW5jb2RlUGFja2V0KHQsYT9yOiExLCExLGZ1bmN0aW9uKGUpe24obnVsbCxvKGUpKX0pfXkodCxzLGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGkodC5qb2luKGBgKSl9KX07ZnVuY3Rpb24geShlLHQsbil7Zm9yKHZhciByPUFycmF5KGUubGVuZ3RoKSxhPWkoZS5sZW5ndGgsbiksbz1mdW5jdGlvbihlLG4saSl7dChuLGZ1bmN0aW9uKHQsbil7cltlXT1uLGkodCxyKX0pfSxzPTA7czxlLmxlbmd0aDtzKyspbyhzLGVbc10sYSl9ZS5kZWNvZGVQYXlsb2FkPWZ1bmN0aW9uKHQsbixyKXtpZih0eXBlb2YgdCE9YHN0cmluZ2ApcmV0dXJuIGUuZGVjb2RlUGF5bG9hZEFzQmluYXJ5KHQsbixyKTt0eXBlb2Ygbj09YGZ1bmN0aW9uYCYmKHI9bixuPW51bGwpO3ZhciBpO2lmKHQ9PT1gYClyZXR1cm4gcihmLDAsMSk7Zm9yKHZhciBhPWBgLG8scyxjPTAsbD10Lmxlbmd0aDtjPGw7YysrKXt2YXIgdT10LmNoYXJBdChjKTtpZih1IT09YDpgKXthKz11O2NvbnRpbnVlfWlmKGE9PT1gYHx8YSE9KG89TnVtYmVyKGEpKXx8KHM9dC5zdWJzdHIoYysxLG8pLGEhPXMubGVuZ3RoKSlyZXR1cm4gcihmLDAsMSk7aWYocy5sZW5ndGgpe2lmKGk9ZS5kZWNvZGVQYWNrZXQocyxuLCExKSxmLnR5cGU9PT1pLnR5cGUmJmYuZGF0YT09PWkuZGF0YSlyZXR1cm4gcihmLDAsMSk7aWYoITE9PT1yKGksYytvLGwpKXJldHVybn1jKz1vLGE9YGB9aWYoYSE9PWBgKXJldHVybiByKGYsMCwxKX0sZS5lbmNvZGVQYXlsb2FkQXNBcnJheUJ1ZmZlcj1mdW5jdGlvbih0LG4pe2lmKCF0Lmxlbmd0aClyZXR1cm4gbihuZXcgQXJyYXlCdWZmZXIoMCkpO2Z1bmN0aW9uIHIodCxuKXtlLmVuY29kZVBhY2tldCh0LCEwLCEwLGZ1bmN0aW9uKGUpe3JldHVybiBuKG51bGwsZSl9KX15KHQscixmdW5jdGlvbihlLHQpe3ZhciByPXQucmVkdWNlKGZ1bmN0aW9uKGUsdCl7dmFyIG49dHlwZW9mIHQ9PWBzdHJpbmdgP3QubGVuZ3RoOnQuYnl0ZUxlbmd0aDtyZXR1cm4gZStuLnRvU3RyaW5nKCkubGVuZ3RoK24rMn0sMCksaT1uZXcgVWludDhBcnJheShyKSxhPTA7cmV0dXJuIHQuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD10eXBlb2YgZT09YHN0cmluZ2Asbj1lO2lmKHQpe2Zvcih2YXIgcj1uZXcgVWludDhBcnJheShlLmxlbmd0aCksbz0wO288ZS5sZW5ndGg7bysrKXJbb109ZS5jaGFyQ29kZUF0KG8pO249ci5idWZmZXJ9dD9pW2ErK109MDppW2ErK109MTtmb3IodmFyIHM9bi5ieXRlTGVuZ3RoLnRvU3RyaW5nKCksbz0wO288cy5sZW5ndGg7bysrKWlbYSsrXT1wYXJzZUludChzW29dKTtpW2ErK109MjU1O2Zvcih2YXIgcj1uZXcgVWludDhBcnJheShuKSxvPTA7bzxyLmxlbmd0aDtvKyspaVthKytdPXJbb119KSxuKGkuYnVmZmVyKX0pfSxlLmVuY29kZVBheWxvYWRBc0Jsb2I9ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiByKHQsbil7ZS5lbmNvZGVQYWNrZXQodCwhMCwhMCxmdW5jdGlvbihlKXt2YXIgdD1uZXcgVWludDhBcnJheSgxKTtpZih0WzBdPTEsdHlwZW9mIGU9PWBzdHJpbmdgKXtmb3IodmFyIHI9bmV3IFVpbnQ4QXJyYXkoZS5sZW5ndGgpLGk9MDtpPGUubGVuZ3RoO2krKylyW2ldPWUuY2hhckNvZGVBdChpKTtlPXIuYnVmZmVyLHRbMF09MH1mb3IodmFyIGE9KGUgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcj9lLmJ5dGVMZW5ndGg6ZS5zaXplKS50b1N0cmluZygpLG89bmV3IFVpbnQ4QXJyYXkoYS5sZW5ndGgrMSksaT0wO2k8YS5sZW5ndGg7aSsrKW9baV09cGFyc2VJbnQoYVtpXSk7b1thLmxlbmd0aF09MjU1LHAmJm4obnVsbCxuZXcgcChbdC5idWZmZXIsby5idWZmZXIsZV0pKX0pfXkodCxyLGZ1bmN0aW9uKGUsdCl7cmV0dXJuIG4obmV3IHAodCkpfSl9LGUuZGVjb2RlUGF5bG9hZEFzQmluYXJ5PWZ1bmN0aW9uKHQsbixpKXt0eXBlb2Ygbj09YGZ1bmN0aW9uYCYmKGk9bixuPW51bGwpO2Zvcih2YXIgYT10LG89W107YS5ieXRlTGVuZ3RoPjA7KXtmb3IodmFyIHM9bmV3IFVpbnQ4QXJyYXkoYSksYz1zWzBdPT09MCxsPWBgLHU9MTtzW3VdIT09MjU1O3UrKyl7aWYobC5sZW5ndGg+MzEwKXJldHVybiBpKGYsMCwxKTtsKz1zW3VdfWE9cihhLDIrbC5sZW5ndGgpLGw9cGFyc2VJbnQobCk7dmFyIGQ9cihhLDAsbCk7aWYoYyl0cnl7ZD1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsbmV3IFVpbnQ4QXJyYXkoZCkpfWNhdGNoe3ZhciBwPW5ldyBVaW50OEFycmF5KGQpO2Q9YGA7Zm9yKHZhciB1PTA7dTxwLmxlbmd0aDt1KyspZCs9U3RyaW5nLmZyb21DaGFyQ29kZShwW3VdKX1vLnB1c2goZCksYT1yKGEsbCl9dmFyIG09by5sZW5ndGg7by5mb3JFYWNoKGZ1bmN0aW9uKHQscil7aShlLmRlY29kZVBhY2tldCh0LG4sITApLHIsbSl9KX19KSksUXM9cygoKGUsdCk9Pnt2YXIgbj1acygpLHI9SXMoKTt0LmV4cG9ydHM9aTtmdW5jdGlvbiBpKGUpe3RoaXMucGF0aD1lLnBhdGgsdGhpcy5ob3N0bmFtZT1lLmhvc3RuYW1lLHRoaXMucG9ydD1lLnBvcnQsdGhpcy5zZWN1cmU9ZS5zZWN1cmUsdGhpcy5xdWVyeT1lLnF1ZXJ5LHRoaXMudGltZXN0YW1wUGFyYW09ZS50aW1lc3RhbXBQYXJhbSx0aGlzLnRpbWVzdGFtcFJlcXVlc3RzPWUudGltZXN0YW1wUmVxdWVzdHMsdGhpcy5yZWFkeVN0YXRlPWBgLHRoaXMuYWdlbnQ9ZS5hZ2VudHx8ITEsdGhpcy5zb2NrZXQ9ZS5zb2NrZXQsdGhpcy5lbmFibGVzWERSPWUuZW5hYmxlc1hEUix0aGlzLndpdGhDcmVkZW50aWFscz1lLndpdGhDcmVkZW50aWFscyx0aGlzLnBmeD1lLnBmeCx0aGlzLmtleT1lLmtleSx0aGlzLnBhc3NwaHJhc2U9ZS5wYXNzcGhyYXNlLHRoaXMuY2VydD1lLmNlcnQsdGhpcy5jYT1lLmNhLHRoaXMuY2lwaGVycz1lLmNpcGhlcnMsdGhpcy5yZWplY3RVbmF1dGhvcml6ZWQ9ZS5yZWplY3RVbmF1dGhvcml6ZWQsdGhpcy5mb3JjZU5vZGU9ZS5mb3JjZU5vZGUsdGhpcy5pc1JlYWN0TmF0aXZlPWUuaXNSZWFjdE5hdGl2ZSx0aGlzLmV4dHJhSGVhZGVycz1lLmV4dHJhSGVhZGVycyx0aGlzLmxvY2FsQWRkcmVzcz1lLmxvY2FsQWRkcmVzc31yKGkucHJvdG90eXBlKSxpLnByb3RvdHlwZS5vbkVycm9yPWZ1bmN0aW9uKGUsdCl7dmFyIG49RXJyb3IoZSk7cmV0dXJuIG4udHlwZT1gVHJhbnNwb3J0RXJyb3JgLG4uZGVzY3JpcHRpb249dCx0aGlzLmVtaXQoYGVycm9yYCxuKSx0aGlzfSxpLnByb3RvdHlwZS5vcGVuPWZ1bmN0aW9uKCl7cmV0dXJuKHRoaXMucmVhZHlTdGF0ZT09PWBjbG9zZWRgfHx0aGlzLnJlYWR5U3RhdGU9PT1gYCkmJih0aGlzLnJlYWR5U3RhdGU9YG9wZW5pbmdgLHRoaXMuZG9PcGVuKCkpLHRoaXN9LGkucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKCl7cmV0dXJuKHRoaXMucmVhZHlTdGF0ZT09PWBvcGVuaW5nYHx8dGhpcy5yZWFkeVN0YXRlPT09YG9wZW5gKSYmKHRoaXMuZG9DbG9zZSgpLHRoaXMub25DbG9zZSgpKSx0aGlzfSxpLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKGUpe2lmKHRoaXMucmVhZHlTdGF0ZT09PWBvcGVuYCl0aGlzLndyaXRlKGUpO2Vsc2UgdGhyb3cgRXJyb3IoYFRyYW5zcG9ydCBub3Qgb3BlbmApfSxpLnByb3RvdHlwZS5vbk9wZW49ZnVuY3Rpb24oKXt0aGlzLnJlYWR5U3RhdGU9YG9wZW5gLHRoaXMud3JpdGFibGU9ITAsdGhpcy5lbWl0KGBvcGVuYCl9LGkucHJvdG90eXBlLm9uRGF0YT1mdW5jdGlvbihlKXt2YXIgdD1uLmRlY29kZVBhY2tldChlLHRoaXMuc29ja2V0LmJpbmFyeVR5cGUpO3RoaXMub25QYWNrZXQodCl9LGkucHJvdG90eXBlLm9uUGFja2V0PWZ1bmN0aW9uKGUpe3RoaXMuZW1pdChgcGFja2V0YCxlKX0saS5wcm90b3R5cGUub25DbG9zZT1mdW5jdGlvbigpe3RoaXMucmVhZHlTdGF0ZT1gY2xvc2VkYCx0aGlzLmVtaXQoYGNsb3NlYCl9fSkpLCRzPXMoKGU9PntlLmVuY29kZT1mdW5jdGlvbihlKXt2YXIgdD1gYDtmb3IodmFyIG4gaW4gZSllLmhhc093blByb3BlcnR5KG4pJiYodC5sZW5ndGgmJih0Kz1gJmApLHQrPWVuY29kZVVSSUNvbXBvbmVudChuKStgPWArZW5jb2RlVVJJQ29tcG9uZW50KGVbbl0pKTtyZXR1cm4gdH0sZS5kZWNvZGU9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PXt9LG49ZS5zcGxpdChgJmApLHI9MCxpPW4ubGVuZ3RoO3I8aTtyKyspe3ZhciBhPW5bcl0uc3BsaXQoYD1gKTt0W2RlY29kZVVSSUNvbXBvbmVudChhWzBdKV09ZGVjb2RlVVJJQ29tcG9uZW50KGFbMV0pfXJldHVybiB0fX0pKSxlYz1zKCgoZSx0KT0+e3QuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuPWZ1bmN0aW9uKCl7fTtuLnByb3RvdHlwZT10LnByb3RvdHlwZSxlLnByb3RvdHlwZT1uZXcgbixlLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1lfX0pKSx0Yz1zKCgoZSx0KT0+e3ZhciBuPWAwMTIzNDU2Nzg5QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ei1fYC5zcGxpdChgYCkscj02NCxpPXt9LGE9MCxvPTAscztmdW5jdGlvbiBjKGUpe3ZhciB0PWBgO2RvIHQ9bltlJXJdK3QsZT1NYXRoLmZsb29yKGUvcik7d2hpbGUoZT4wKTtyZXR1cm4gdH1mdW5jdGlvbiBsKGUpe3ZhciB0PTA7Zm9yKG89MDtvPGUubGVuZ3RoO28rKyl0PXQqcitpW2UuY2hhckF0KG8pXTtyZXR1cm4gdH1mdW5jdGlvbiB1KCl7dmFyIGU9YygrbmV3IERhdGUpO3JldHVybiBlPT09cz9lK2AuYCtjKGErKyk6KGE9MCxzPWUpfWZvcig7bzxyO28rKylpW25bb11dPW87dS5lbmNvZGU9Yyx1LmRlY29kZT1sLHQuZXhwb3J0cz11fSkpLG5jPXMoKChlLHQpPT57dmFyIG49UXMoKSxyPSRzKCksaT1acygpLGE9ZWMoKSxvPXRjKCkscz1GcygpKGBlbmdpbmUuaW8tY2xpZW50OnBvbGxpbmdgKTt0LmV4cG9ydHM9bDt2YXIgYz0oZnVuY3Rpb24oKXtyZXR1cm4gbmV3KFVzKCkpKHt4ZG9tYWluOiExfSkucmVzcG9uc2VUeXBlIT1udWxsfSkoKTtmdW5jdGlvbiBsKGUpe3ZhciB0PWUmJmUuZm9yY2VCYXNlNjQ7KCFjfHx0KSYmKHRoaXMuc3VwcG9ydHNCaW5hcnk9ITEpLG4uY2FsbCh0aGlzLGUpfWEobCxuKSxsLnByb3RvdHlwZS5uYW1lPWBwb2xsaW5nYCxsLnByb3RvdHlwZS5kb09wZW49ZnVuY3Rpb24oKXt0aGlzLnBvbGwoKX0sbC5wcm90b3R5cGUucGF1c2U9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpczt0aGlzLnJlYWR5U3RhdGU9YHBhdXNpbmdgO2Z1bmN0aW9uIG4oKXtzKGBwYXVzZWRgKSx0LnJlYWR5U3RhdGU9YHBhdXNlZGAsZSgpfWlmKHRoaXMucG9sbGluZ3x8IXRoaXMud3JpdGFibGUpe3ZhciByPTA7dGhpcy5wb2xsaW5nJiYocyhgd2UgYXJlIGN1cnJlbnRseSBwb2xsaW5nIC0gd2FpdGluZyB0byBwYXVzZWApLHIrKyx0aGlzLm9uY2UoYHBvbGxDb21wbGV0ZWAsZnVuY3Rpb24oKXtzKGBwcmUtcGF1c2UgcG9sbGluZyBjb21wbGV0ZWApLC0tcnx8bigpfSkpLHRoaXMud3JpdGFibGV8fChzKGB3ZSBhcmUgY3VycmVudGx5IHdyaXRpbmcgLSB3YWl0aW5nIHRvIHBhdXNlYCkscisrLHRoaXMub25jZShgZHJhaW5gLGZ1bmN0aW9uKCl7cyhgcHJlLXBhdXNlIHdyaXRpbmcgY29tcGxldGVgKSwtLXJ8fG4oKX0pKX1lbHNlIG4oKX0sbC5wcm90b3R5cGUucG9sbD1mdW5jdGlvbigpe3MoYHBvbGxpbmdgKSx0aGlzLnBvbGxpbmc9ITAsdGhpcy5kb1BvbGwoKSx0aGlzLmVtaXQoYHBvbGxgKX0sbC5wcm90b3R5cGUub25EYXRhPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cyhgcG9sbGluZyBnb3QgZGF0YSAlc2AsZSksaS5kZWNvZGVQYXlsb2FkKGUsdGhpcy5zb2NrZXQuYmluYXJ5VHlwZSxmdW5jdGlvbihlLG4scil7aWYodC5yZWFkeVN0YXRlPT09YG9wZW5pbmdgJiZ0Lm9uT3BlbigpLGUudHlwZT09PWBjbG9zZWApcmV0dXJuIHQub25DbG9zZSgpLCExO3Qub25QYWNrZXQoZSl9KSx0aGlzLnJlYWR5U3RhdGUhPT1gY2xvc2VkYCYmKHRoaXMucG9sbGluZz0hMSx0aGlzLmVtaXQoYHBvbGxDb21wbGV0ZWApLHRoaXMucmVhZHlTdGF0ZT09PWBvcGVuYD90aGlzLnBvbGwoKTpzKGBpZ25vcmluZyBwb2xsIC0gdHJhbnNwb3J0IHN0YXRlICIlcyJgLHRoaXMucmVhZHlTdGF0ZSkpfSxsLnByb3RvdHlwZS5kb0Nsb3NlPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztmdW5jdGlvbiB0KCl7cyhgd3JpdGluZyBjbG9zZSBwYWNrZXRgKSxlLndyaXRlKFt7dHlwZTpgY2xvc2VgfV0pfXRoaXMucmVhZHlTdGF0ZT09PWBvcGVuYD8ocyhgdHJhbnNwb3J0IG9wZW4gLSBjbG9zaW5nYCksdCgpKToocyhgdHJhbnNwb3J0IG5vdCBvcGVuIC0gZGVmZXJyaW5nIGNsb3NlYCksdGhpcy5vbmNlKGBvcGVuYCx0KSl9LGwucHJvdG90eXBlLndyaXRlPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7dGhpcy53cml0YWJsZT0hMTt2YXIgbj1mdW5jdGlvbigpe3Qud3JpdGFibGU9ITAsdC5lbWl0KGBkcmFpbmApfTtpLmVuY29kZVBheWxvYWQoZSx0aGlzLnN1cHBvcnRzQmluYXJ5LGZ1bmN0aW9uKGUpe3QuZG9Xcml0ZShlLG4pfSl9LGwucHJvdG90eXBlLnVyaT1mdW5jdGlvbigpe3ZhciBlPXRoaXMucXVlcnl8fHt9LHQ9dGhpcy5zZWN1cmU/YGh0dHBzYDpgaHR0cGAsbj1gYDshMSE9PXRoaXMudGltZXN0YW1wUmVxdWVzdHMmJihlW3RoaXMudGltZXN0YW1wUGFyYW1dPW8oKSksIXRoaXMuc3VwcG9ydHNCaW5hcnkmJiFlLnNpZCYmKGUuYjY0PTEpLGU9ci5lbmNvZGUoZSksdGhpcy5wb3J0JiYodD09PWBodHRwc2AmJk51bWJlcih0aGlzLnBvcnQpIT09NDQzfHx0PT09YGh0dHBgJiZOdW1iZXIodGhpcy5wb3J0KSE9PTgwKSYmKG49YDpgK3RoaXMucG9ydCksZS5sZW5ndGgmJihlPWA/YCtlKTt2YXIgaT10aGlzLmhvc3RuYW1lLmluZGV4T2YoYDpgKSE9PS0xO3JldHVybiB0K2A6Ly9gKyhpP2BbYCt0aGlzLmhvc3RuYW1lK2BdYDp0aGlzLmhvc3RuYW1lKStuK3RoaXMucGF0aCtlfX0pKSxyYz1zKCgoZSx0KT0+e3ZhciBuPVVzKCkscj1uYygpLGk9SXMoKSxhPWVjKCksbz1GcygpKGBlbmdpbmUuaW8tY2xpZW50OnBvbGxpbmcteGhyYCkscz1IcygpO3QuZXhwb3J0cz1sLHQuZXhwb3J0cy5SZXF1ZXN0PXU7ZnVuY3Rpb24gYygpe31mdW5jdGlvbiBsKGUpe2lmKHIuY2FsbCh0aGlzLGUpLHRoaXMucmVxdWVzdFRpbWVvdXQ9ZS5yZXF1ZXN0VGltZW91dCx0aGlzLmV4dHJhSGVhZGVycz1lLmV4dHJhSGVhZGVycyx0eXBlb2YgbG9jYXRpb248YHVgKXt2YXIgdD1sb2NhdGlvbi5wcm90b2NvbD09PWBodHRwczpgLG49bG9jYXRpb24ucG9ydDtufHw9dD80NDM6ODAsdGhpcy54ZD10eXBlb2YgbG9jYXRpb248YHVgJiZlLmhvc3RuYW1lIT09bG9jYXRpb24uaG9zdG5hbWV8fG4hPT1lLnBvcnQsdGhpcy54cz1lLnNlY3VyZSE9PXR9fWEobCxyKSxsLnByb3RvdHlwZS5zdXBwb3J0c0JpbmFyeT0hMCxsLnByb3RvdHlwZS5yZXF1ZXN0PWZ1bmN0aW9uKGUpe3JldHVybiBlfHw9e30sZS51cmk9dGhpcy51cmkoKSxlLnhkPXRoaXMueGQsZS54cz10aGlzLnhzLGUuYWdlbnQ9dGhpcy5hZ2VudHx8ITEsZS5zdXBwb3J0c0JpbmFyeT10aGlzLnN1cHBvcnRzQmluYXJ5LGUuZW5hYmxlc1hEUj10aGlzLmVuYWJsZXNYRFIsZS53aXRoQ3JlZGVudGlhbHM9dGhpcy53aXRoQ3JlZGVudGlhbHMsZS5wZng9dGhpcy5wZngsZS5rZXk9dGhpcy5rZXksZS5wYXNzcGhyYXNlPXRoaXMucGFzc3BocmFzZSxlLmNlcnQ9dGhpcy5jZXJ0LGUuY2E9dGhpcy5jYSxlLmNpcGhlcnM9dGhpcy5jaXBoZXJzLGUucmVqZWN0VW5hdXRob3JpemVkPXRoaXMucmVqZWN0VW5hdXRob3JpemVkLGUucmVxdWVzdFRpbWVvdXQ9dGhpcy5yZXF1ZXN0VGltZW91dCxlLmV4dHJhSGVhZGVycz10aGlzLmV4dHJhSGVhZGVycyxuZXcgdShlKX0sbC5wcm90b3R5cGUuZG9Xcml0ZT1mdW5jdGlvbihlLHQpe3ZhciBuPXR5cGVvZiBlIT1gc3RyaW5nYCYmZSE9PXZvaWQgMCxyPXRoaXMucmVxdWVzdCh7bWV0aG9kOmBQT1NUYCxkYXRhOmUsaXNCaW5hcnk6bn0pLGk9dGhpcztyLm9uKGBzdWNjZXNzYCx0KSxyLm9uKGBlcnJvcmAsZnVuY3Rpb24oZSl7aS5vbkVycm9yKGB4aHIgcG9zdCBlcnJvcmAsZSl9KSx0aGlzLnNlbmRYaHI9cn0sbC5wcm90b3R5cGUuZG9Qb2xsPWZ1bmN0aW9uKCl7byhgeGhyIHBvbGxgKTt2YXIgZT10aGlzLnJlcXVlc3QoKSx0PXRoaXM7ZS5vbihgZGF0YWAsZnVuY3Rpb24oZSl7dC5vbkRhdGEoZSl9KSxlLm9uKGBlcnJvcmAsZnVuY3Rpb24oZSl7dC5vbkVycm9yKGB4aHIgcG9sbCBlcnJvcmAsZSl9KSx0aGlzLnBvbGxYaHI9ZX07ZnVuY3Rpb24gdShlKXt0aGlzLm1ldGhvZD1lLm1ldGhvZHx8YEdFVGAsdGhpcy51cmk9ZS51cmksdGhpcy54ZD0hIWUueGQsdGhpcy54cz0hIWUueHMsdGhpcy5hc3luYz0hMSE9PWUuYXN5bmMsdGhpcy5kYXRhPWUuZGF0YT09PXZvaWQgMD9udWxsOmUuZGF0YSx0aGlzLmFnZW50PWUuYWdlbnQsdGhpcy5pc0JpbmFyeT1lLmlzQmluYXJ5LHRoaXMuc3VwcG9ydHNCaW5hcnk9ZS5zdXBwb3J0c0JpbmFyeSx0aGlzLmVuYWJsZXNYRFI9ZS5lbmFibGVzWERSLHRoaXMud2l0aENyZWRlbnRpYWxzPWUud2l0aENyZWRlbnRpYWxzLHRoaXMucmVxdWVzdFRpbWVvdXQ9ZS5yZXF1ZXN0VGltZW91dCx0aGlzLnBmeD1lLnBmeCx0aGlzLmtleT1lLmtleSx0aGlzLnBhc3NwaHJhc2U9ZS5wYXNzcGhyYXNlLHRoaXMuY2VydD1lLmNlcnQsdGhpcy5jYT1lLmNhLHRoaXMuY2lwaGVycz1lLmNpcGhlcnMsdGhpcy5yZWplY3RVbmF1dGhvcml6ZWQ9ZS5yZWplY3RVbmF1dGhvcml6ZWQsdGhpcy5leHRyYUhlYWRlcnM9ZS5leHRyYUhlYWRlcnMsdGhpcy5jcmVhdGUoKX1pZihpKHUucHJvdG90eXBlKSx1LnByb3RvdHlwZS5jcmVhdGU9ZnVuY3Rpb24oKXt2YXIgZT17YWdlbnQ6dGhpcy5hZ2VudCx4ZG9tYWluOnRoaXMueGQseHNjaGVtZTp0aGlzLnhzLGVuYWJsZXNYRFI6dGhpcy5lbmFibGVzWERSfTtlLnBmeD10aGlzLnBmeCxlLmtleT10aGlzLmtleSxlLnBhc3NwaHJhc2U9dGhpcy5wYXNzcGhyYXNlLGUuY2VydD10aGlzLmNlcnQsZS5jYT10aGlzLmNhLGUuY2lwaGVycz10aGlzLmNpcGhlcnMsZS5yZWplY3RVbmF1dGhvcml6ZWQ9dGhpcy5yZWplY3RVbmF1dGhvcml6ZWQ7dmFyIHQ9dGhpcy54aHI9bmV3IG4oZSkscj10aGlzO3RyeXtvKGB4aHIgb3BlbiAlczogJXNgLHRoaXMubWV0aG9kLHRoaXMudXJpKSx0Lm9wZW4odGhpcy5tZXRob2QsdGhpcy51cmksdGhpcy5hc3luYyk7dHJ5e2lmKHRoaXMuZXh0cmFIZWFkZXJzKWZvcih2YXIgaSBpbiB0LnNldERpc2FibGVIZWFkZXJDaGVjayYmdC5zZXREaXNhYmxlSGVhZGVyQ2hlY2soITApLHRoaXMuZXh0cmFIZWFkZXJzKXRoaXMuZXh0cmFIZWFkZXJzLmhhc093blByb3BlcnR5KGkpJiZ0LnNldFJlcXVlc3RIZWFkZXIoaSx0aGlzLmV4dHJhSGVhZGVyc1tpXSl9Y2F0Y2h7fWlmKHRoaXMubWV0aG9kPT09YFBPU1RgKXRyeXt0aGlzLmlzQmluYXJ5P3Quc2V0UmVxdWVzdEhlYWRlcihgQ29udGVudC10eXBlYCxgYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtYCk6dC5zZXRSZXF1ZXN0SGVhZGVyKGBDb250ZW50LXR5cGVgLGB0ZXh0L3BsYWluO2NoYXJzZXQ9VVRGLThgKX1jYXRjaHt9dHJ5e3Quc2V0UmVxdWVzdEhlYWRlcihgQWNjZXB0YCxgKi8qYCl9Y2F0Y2h7fWB3aXRoQ3JlZGVudGlhbHNgaW4gdCYmKHQud2l0aENyZWRlbnRpYWxzPXRoaXMud2l0aENyZWRlbnRpYWxzKSx0aGlzLnJlcXVlc3RUaW1lb3V0JiYodC50aW1lb3V0PXRoaXMucmVxdWVzdFRpbWVvdXQpLHRoaXMuaGFzWERSKCk/KHQub25sb2FkPWZ1bmN0aW9uKCl7ci5vbkxvYWQoKX0sdC5vbmVycm9yPWZ1bmN0aW9uKCl7ci5vbkVycm9yKHQucmVzcG9uc2VUZXh0KX0pOnQub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7aWYodC5yZWFkeVN0YXRlPT09Mil0cnl7dmFyIGU9dC5nZXRSZXNwb25zZUhlYWRlcihgQ29udGVudC1UeXBlYCk7KHIuc3VwcG9ydHNCaW5hcnkmJmU9PT1gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtYHx8ZT09PWBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW07IGNoYXJzZXQ9VVRGLThgKSYmKHQucmVzcG9uc2VUeXBlPWBhcnJheWJ1ZmZlcmApfWNhdGNoe310LnJlYWR5U3RhdGU9PT00JiYodC5zdGF0dXM9PT0yMDB8fHQuc3RhdHVzPT09MTIyMz9yLm9uTG9hZCgpOnNldFRpbWVvdXQoZnVuY3Rpb24oKXtyLm9uRXJyb3IodHlwZW9mIHQuc3RhdHVzPT1gbnVtYmVyYD90LnN0YXR1czowKX0sMCkpfSxvKGB4aHIgZGF0YSAlc2AsdGhpcy5kYXRhKSx0LnNlbmQodGhpcy5kYXRhKX1jYXRjaChlKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5vbkVycm9yKGUpfSwwKTtyZXR1cm59dHlwZW9mIGRvY3VtZW50PGB1YCYmKHRoaXMuaW5kZXg9dS5yZXF1ZXN0c0NvdW50KyssdS5yZXF1ZXN0c1t0aGlzLmluZGV4XT10aGlzKX0sdS5wcm90b3R5cGUub25TdWNjZXNzPWZ1bmN0aW9uKCl7dGhpcy5lbWl0KGBzdWNjZXNzYCksdGhpcy5jbGVhbnVwKCl9LHUucHJvdG90eXBlLm9uRGF0YT1mdW5jdGlvbihlKXt0aGlzLmVtaXQoYGRhdGFgLGUpLHRoaXMub25TdWNjZXNzKCl9LHUucHJvdG90eXBlLm9uRXJyb3I9ZnVuY3Rpb24oZSl7dGhpcy5lbWl0KGBlcnJvcmAsZSksdGhpcy5jbGVhbnVwKCEwKX0sdS5wcm90b3R5cGUuY2xlYW51cD1mdW5jdGlvbihlKXtpZighKHRoaXMueGhyPT09dm9pZCAwfHx0aGlzLnhocj09PW51bGwpKXtpZih0aGlzLmhhc1hEUigpP3RoaXMueGhyLm9ubG9hZD10aGlzLnhoci5vbmVycm9yPWM6dGhpcy54aHIub25yZWFkeXN0YXRlY2hhbmdlPWMsZSl0cnl7dGhpcy54aHIuYWJvcnQoKX1jYXRjaHt9dHlwZW9mIGRvY3VtZW50PGB1YCYmZGVsZXRlIHUucmVxdWVzdHNbdGhpcy5pbmRleF0sdGhpcy54aHI9bnVsbH19LHUucHJvdG90eXBlLm9uTG9hZD1mdW5jdGlvbigpe3ZhciBlO3RyeXt2YXIgdDt0cnl7dD10aGlzLnhoci5nZXRSZXNwb25zZUhlYWRlcihgQ29udGVudC1UeXBlYCl9Y2F0Y2h7fWU9KHQ9PT1gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtYHx8dD09PWBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW07IGNoYXJzZXQ9VVRGLThgKSYmdGhpcy54aHIucmVzcG9uc2V8fHRoaXMueGhyLnJlc3BvbnNlVGV4dH1jYXRjaChlKXt0aGlzLm9uRXJyb3IoZSl9ZSE9bnVsbCYmdGhpcy5vbkRhdGEoZSl9LHUucHJvdG90eXBlLmhhc1hEUj1mdW5jdGlvbigpe3JldHVybiB0eXBlb2YgWERvbWFpblJlcXVlc3Q8YHVgJiYhdGhpcy54cyYmdGhpcy5lbmFibGVzWERSfSx1LnByb3RvdHlwZS5hYm9ydD1mdW5jdGlvbigpe3RoaXMuY2xlYW51cCgpfSx1LnJlcXVlc3RzQ291bnQ9MCx1LnJlcXVlc3RzPXt9LHR5cGVvZiBkb2N1bWVudDxgdWApe2lmKHR5cGVvZiBhdHRhY2hFdmVudD09YGZ1bmN0aW9uYClhdHRhY2hFdmVudChgb251bmxvYWRgLGYpO2Vsc2UgaWYodHlwZW9mIGFkZEV2ZW50TGlzdGVuZXI9PWBmdW5jdGlvbmApe3ZhciBkPWBvbnBhZ2VoaWRlYGluIHM/YHBhZ2VoaWRlYDpgdW5sb2FkYDthZGRFdmVudExpc3RlbmVyKGQsZiwhMSl9fWZ1bmN0aW9uIGYoKXtmb3IodmFyIGUgaW4gdS5yZXF1ZXN0cyl1LnJlcXVlc3RzLmhhc093blByb3BlcnR5KGUpJiZ1LnJlcXVlc3RzW2VdLmFib3J0KCl9fSkpLGljPXMoKChlLHQpPT57dmFyIG49bmMoKSxyPWVjKCksaT1IcygpO3QuZXhwb3J0cz1sO3ZhciBhPS9cbi9nLG89L1xcbi9nLHM7ZnVuY3Rpb24gYygpe31mdW5jdGlvbiBsKGUpe24uY2FsbCh0aGlzLGUpLHRoaXMucXVlcnk9dGhpcy5xdWVyeXx8e30sc3x8PWkuX19fZWlvPWkuX19fZWlvfHxbXSx0aGlzLmluZGV4PXMubGVuZ3RoO3ZhciB0PXRoaXM7cy5wdXNoKGZ1bmN0aW9uKGUpe3Qub25EYXRhKGUpfSksdGhpcy5xdWVyeS5qPXRoaXMuaW5kZXgsdHlwZW9mIGFkZEV2ZW50TGlzdGVuZXI9PWBmdW5jdGlvbmAmJmFkZEV2ZW50TGlzdGVuZXIoYGJlZm9yZXVubG9hZGAsZnVuY3Rpb24oKXt0LnNjcmlwdCYmKHQuc2NyaXB0Lm9uZXJyb3I9Yyl9LCExKX1yKGwsbiksbC5wcm90b3R5cGUuc3VwcG9ydHNCaW5hcnk9ITEsbC5wcm90b3R5cGUuZG9DbG9zZT1mdW5jdGlvbigpe3RoaXMuc2NyaXB0JiY9KHRoaXMuc2NyaXB0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy5zY3JpcHQpLG51bGwpLHRoaXMuZm9ybSYmKHRoaXMuZm9ybS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMuZm9ybSksdGhpcy5mb3JtPW51bGwsdGhpcy5pZnJhbWU9bnVsbCksbi5wcm90b3R5cGUuZG9DbG9zZS5jYWxsKHRoaXMpfSxsLnByb3RvdHlwZS5kb1BvbGw9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChgc2NyaXB0YCk7dGhpcy5zY3JpcHQmJj0odGhpcy5zY3JpcHQucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0aGlzLnNjcmlwdCksbnVsbCksdC5hc3luYz0hMCx0LnNyYz10aGlzLnVyaSgpLHQub25lcnJvcj1mdW5jdGlvbih0KXtlLm9uRXJyb3IoYGpzb25wIHBvbGwgZXJyb3JgLHQpfTt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZShgc2NyaXB0YClbMF07bj9uLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHQsbik6KGRvY3VtZW50LmhlYWR8fGRvY3VtZW50LmJvZHkpLmFwcGVuZENoaWxkKHQpLHRoaXMuc2NyaXB0PXQsdHlwZW9mIG5hdmlnYXRvcjxgdWAmJi9nZWNrby9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGBpZnJhbWVgKTtkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpLGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZSl9LDEwMCl9LGwucHJvdG90eXBlLmRvV3JpdGU9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzO2lmKCF0aGlzLmZvcm0pe3ZhciByPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoYGZvcm1gKSxpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoYHRleHRhcmVhYCkscz10aGlzLmlmcmFtZUlkPWBlaW9faWZyYW1lX2ArdGhpcy5pbmRleCxjO3IuY2xhc3NOYW1lPWBzb2NrZXRpb2Asci5zdHlsZS5wb3NpdGlvbj1gYWJzb2x1dGVgLHIuc3R5bGUudG9wPWAtMTAwMHB4YCxyLnN0eWxlLmxlZnQ9YC0xMDAwcHhgLHIudGFyZ2V0PXMsci5tZXRob2Q9YFBPU1RgLHIuc2V0QXR0cmlidXRlKGBhY2NlcHQtY2hhcnNldGAsYHV0Zi04YCksaS5uYW1lPWBkYCxyLmFwcGVuZENoaWxkKGkpLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQociksdGhpcy5mb3JtPXIsdGhpcy5hcmVhPWl9dGhpcy5mb3JtLmFjdGlvbj10aGlzLnVyaSgpO2Z1bmN0aW9uIGwoKXt1KCksdCgpfWZ1bmN0aW9uIHUoKXtpZihuLmlmcmFtZSl0cnl7bi5mb3JtLnJlbW92ZUNoaWxkKG4uaWZyYW1lKX1jYXRjaChlKXtuLm9uRXJyb3IoYGpzb25wIHBvbGxpbmcgaWZyYW1lIHJlbW92YWwgZXJyb3JgLGUpfXRyeXt2YXIgZT1gPGlmcmFtZSBzcmM9ImphdmFzY3JpcHQ6MCIgbmFtZT0iYCtuLmlmcmFtZUlkK2AiPmA7Yz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGUpfWNhdGNoe2M9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChgaWZyYW1lYCksYy5uYW1lPW4uaWZyYW1lSWQsYy5zcmM9YGphdmFzY3JpcHQ6MGB9Yy5pZD1uLmlmcmFtZUlkLG4uZm9ybS5hcHBlbmRDaGlsZChjKSxuLmlmcmFtZT1jfXUoKSxlPWUucmVwbGFjZShvLGBcXApgKSx0aGlzLmFyZWEudmFsdWU9ZS5yZXBsYWNlKGEsYFxcbmApO3RyeXt0aGlzLmZvcm0uc3VibWl0KCl9Y2F0Y2h7fXRoaXMuaWZyYW1lLmF0dGFjaEV2ZW50P3RoaXMuaWZyYW1lLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpe24uaWZyYW1lLnJlYWR5U3RhdGU9PT1gY29tcGxldGVgJiZsKCl9OnRoaXMuaWZyYW1lLm9ubG9hZD1sfX0pKSxhYz1zKCgoZSx0KT0+e3QuZXhwb3J0cz17fX0pKSxvYz1zKCgoZSx0KT0+e3ZhciBuPVFzKCkscj1acygpLGk9JHMoKSxhPWVjKCksbz10YygpLHM9RnMoKShgZW5naW5lLmlvLWNsaWVudDp3ZWJzb2NrZXRgKSxjLGw7aWYodHlwZW9mIFdlYlNvY2tldDxgdWA/Yz1XZWJTb2NrZXQ6dHlwZW9mIHNlbGY8YHVgJiYoYz1zZWxmLldlYlNvY2tldHx8c2VsZi5Nb3pXZWJTb2NrZXQpLHR5cGVvZiB3aW5kb3c+YHVgKXRyeXtsPWFjKCl9Y2F0Y2h7fXZhciB1PWN8fGw7dC5leHBvcnRzPWQ7ZnVuY3Rpb24gZChlKXtlJiZlLmZvcmNlQmFzZTY0JiYodGhpcy5zdXBwb3J0c0JpbmFyeT0hMSksdGhpcy5wZXJNZXNzYWdlRGVmbGF0ZT1lLnBlck1lc3NhZ2VEZWZsYXRlLHRoaXMudXNpbmdCcm93c2VyV2ViU29ja2V0PWMmJiFlLmZvcmNlTm9kZSx0aGlzLnByb3RvY29scz1lLnByb3RvY29scyx0aGlzLnVzaW5nQnJvd3NlcldlYlNvY2tldHx8KHU9bCksbi5jYWxsKHRoaXMsZSl9YShkLG4pLGQucHJvdG90eXBlLm5hbWU9YHdlYnNvY2tldGAsZC5wcm90b3R5cGUuc3VwcG9ydHNCaW5hcnk9ITAsZC5wcm90b3R5cGUuZG9PcGVuPWZ1bmN0aW9uKCl7aWYodGhpcy5jaGVjaygpKXt2YXIgZT10aGlzLnVyaSgpLHQ9dGhpcy5wcm90b2NvbHMsbj17fTt0aGlzLmlzUmVhY3ROYXRpdmV8fChuLmFnZW50PXRoaXMuYWdlbnQsbi5wZXJNZXNzYWdlRGVmbGF0ZT10aGlzLnBlck1lc3NhZ2VEZWZsYXRlLG4ucGZ4PXRoaXMucGZ4LG4ua2V5PXRoaXMua2V5LG4ucGFzc3BocmFzZT10aGlzLnBhc3NwaHJhc2Usbi5jZXJ0PXRoaXMuY2VydCxuLmNhPXRoaXMuY2Esbi5jaXBoZXJzPXRoaXMuY2lwaGVycyxuLnJlamVjdFVuYXV0aG9yaXplZD10aGlzLnJlamVjdFVuYXV0aG9yaXplZCksdGhpcy5leHRyYUhlYWRlcnMmJihuLmhlYWRlcnM9dGhpcy5leHRyYUhlYWRlcnMpLHRoaXMubG9jYWxBZGRyZXNzJiYobi5sb2NhbEFkZHJlc3M9dGhpcy5sb2NhbEFkZHJlc3MpO3RyeXt0aGlzLndzPXRoaXMudXNpbmdCcm93c2VyV2ViU29ja2V0JiYhdGhpcy5pc1JlYWN0TmF0aXZlP3Q/bmV3IHUoZSx0KTpuZXcgdShlKTpuZXcgdShlLHQsbil9Y2F0Y2goZSl7cmV0dXJuIHRoaXMuZW1pdChgZXJyb3JgLGUpfXRoaXMud3MuYmluYXJ5VHlwZT09PXZvaWQgMCYmKHRoaXMuc3VwcG9ydHNCaW5hcnk9ITEpLHRoaXMud3Muc3VwcG9ydHMmJnRoaXMud3Muc3VwcG9ydHMuYmluYXJ5Pyh0aGlzLnN1cHBvcnRzQmluYXJ5PSEwLHRoaXMud3MuYmluYXJ5VHlwZT1gbm9kZWJ1ZmZlcmApOnRoaXMud3MuYmluYXJ5VHlwZT1gYXJyYXlidWZmZXJgLHRoaXMuYWRkRXZlbnRMaXN0ZW5lcnMoKX19LGQucHJvdG90eXBlLmFkZEV2ZW50TGlzdGVuZXJzPWZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0aGlzLndzLm9ub3Blbj1mdW5jdGlvbigpe2Uub25PcGVuKCl9LHRoaXMud3Mub25jbG9zZT1mdW5jdGlvbigpe2Uub25DbG9zZSgpfSx0aGlzLndzLm9ubWVzc2FnZT1mdW5jdGlvbih0KXtlLm9uRGF0YSh0LmRhdGEpfSx0aGlzLndzLm9uZXJyb3I9ZnVuY3Rpb24odCl7ZS5vbkVycm9yKGB3ZWJzb2NrZXQgZXJyb3JgLHQpfX0sZC5wcm90b3R5cGUud3JpdGU9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpczt0aGlzLndyaXRhYmxlPSExO2Zvcih2YXIgbj1lLmxlbmd0aCxpPTAsYT1uO2k8YTtpKyspKGZ1bmN0aW9uKGUpe3IuZW5jb2RlUGFja2V0KGUsdC5zdXBwb3J0c0JpbmFyeSxmdW5jdGlvbihyKXtpZighdC51c2luZ0Jyb3dzZXJXZWJTb2NrZXQpe3ZhciBpPXt9O2Uub3B0aW9ucyYmKGkuY29tcHJlc3M9ZS5vcHRpb25zLmNvbXByZXNzKSx0LnBlck1lc3NhZ2VEZWZsYXRlJiYodHlwZW9mIHI9PWBzdHJpbmdgP0J1ZmZlci5ieXRlTGVuZ3RoKHIpOnIubGVuZ3RoKTx0LnBlck1lc3NhZ2VEZWZsYXRlLnRocmVzaG9sZCYmKGkuY29tcHJlc3M9ITEpfXRyeXt0LnVzaW5nQnJvd3NlcldlYlNvY2tldD90LndzLnNlbmQocik6dC53cy5zZW5kKHIsaSl9Y2F0Y2h7cyhgd2Vic29ja2V0IGNsb3NlZCBiZWZvcmUgb25jbG9zZSBldmVudGApfS0tbnx8bygpfSl9KShlW2ldKTtmdW5jdGlvbiBvKCl7dC5lbWl0KGBmbHVzaGApLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LndyaXRhYmxlPSEwLHQuZW1pdChgZHJhaW5gKX0sMCl9fSxkLnByb3RvdHlwZS5vbkNsb3NlPWZ1bmN0aW9uKCl7bi5wcm90b3R5cGUub25DbG9zZS5jYWxsKHRoaXMpfSxkLnByb3RvdHlwZS5kb0Nsb3NlPWZ1bmN0aW9uKCl7dGhpcy53cyE9PXZvaWQgMCYmdGhpcy53cy5jbG9zZSgpfSxkLnByb3RvdHlwZS51cmk9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLnF1ZXJ5fHx7fSx0PXRoaXMuc2VjdXJlP2B3c3NgOmB3c2Asbj1gYDt0aGlzLnBvcnQmJih0PT09YHdzc2AmJk51bWJlcih0aGlzLnBvcnQpIT09NDQzfHx0PT09YHdzYCYmTnVtYmVyKHRoaXMucG9ydCkhPT04MCkmJihuPWA6YCt0aGlzLnBvcnQpLHRoaXMudGltZXN0YW1wUmVxdWVzdHMmJihlW3RoaXMudGltZXN0YW1wUGFyYW1dPW8oKSksdGhpcy5zdXBwb3J0c0JpbmFyeXx8KGUuYjY0PTEpLGU9aS5lbmNvZGUoZSksZS5sZW5ndGgmJihlPWA/YCtlKTt2YXIgcj10aGlzLmhvc3RuYW1lLmluZGV4T2YoYDpgKSE9PS0xO3JldHVybiB0K2A6Ly9gKyhyP2BbYCt0aGlzLmhvc3RuYW1lK2BdYDp0aGlzLmhvc3RuYW1lKStuK3RoaXMucGF0aCtlfSxkLnByb3RvdHlwZS5jaGVjaz1mdW5jdGlvbigpe3JldHVybiEhdSYmIShgX19pbml0aWFsaXplYGluIHUmJnRoaXMubmFtZT09PWQucHJvdG90eXBlLm5hbWUpfX0pKSxzYz1zKChlPT57dmFyIHQ9VXMoKSxuPXJjKCkscj1pYygpLGk9b2MoKTtlLnBvbGxpbmc9YSxlLndlYnNvY2tldD1pO2Z1bmN0aW9uIGEoZSl7dmFyIGksYT0hMSxvPSExLHM9ITEhPT1lLmpzb25wO2lmKHR5cGVvZiBsb2NhdGlvbjxgdWApe3ZhciBjPWxvY2F0aW9uLnByb3RvY29sPT09YGh0dHBzOmAsbD1sb2NhdGlvbi5wb3J0O2x8fD1jPzQ0Mzo4MCxhPWUuaG9zdG5hbWUhPT1sb2NhdGlvbi5ob3N0bmFtZXx8bCE9PWUucG9ydCxvPWUuc2VjdXJlIT09Y31pZihlLnhkb21haW49YSxlLnhzY2hlbWU9byxpPW5ldyB0KGUpLGBvcGVuYGluIGkmJiFlLmZvcmNlSlNPTlApcmV0dXJuIG5ldyBuKGUpO2lmKCFzKXRocm93IEVycm9yKGBKU09OUCBkaXNhYmxlZGApO3JldHVybiBuZXcgcihlKX19KSksY2M9cygoKGUsdCk9Pnt2YXIgbj1bXS5pbmRleE9mO3QuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKG4pcmV0dXJuIGUuaW5kZXhPZih0KTtmb3IodmFyIHI9MDtyPGUubGVuZ3RoOysrcilpZihlW3JdPT09dClyZXR1cm4gcjtyZXR1cm4tMX19KSksbGM9cygoKGUsdCk9Pnt2YXIgbj0vXig/Oig/IVteOkBdKzpbXjpAXC9dKkApKGh0dHB8aHR0cHN8d3N8d3NzKTpcL1wvKT8oKD86KChbXjpAXSopKD86OihbXjpAXSopKT8pP0ApPygoPzpbYS1mMC05XXswLDR9Oil7Miw3fVthLWYwLTldezAsNH18W146XC8/I10qKSg/OjooXGQqKSk/KSgoKFwvKD86W14/I10oPyFbXj8jXC9dKlwuW14/I1wvLl0rKD86Wz8jXXwkKSkpKlwvPyk/KFtePyNcL10qKSkoPzpcPyhbXiNdKikpPyg/OiMoLiopKT8pLyxyPVtgc291cmNlYCxgcHJvdG9jb2xgLGBhdXRob3JpdHlgLGB1c2VySW5mb2AsYHVzZXJgLGBwYXNzd29yZGAsYGhvc3RgLGBwb3J0YCxgcmVsYXRpdmVgLGBwYXRoYCxgZGlyZWN0b3J5YCxgZmlsZWAsYHF1ZXJ5YCxgYW5jaG9yYF07dC5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0PWUsbz1lLmluZGV4T2YoYFtgKSxzPWUuaW5kZXhPZihgXWApO28hPS0xJiZzIT0tMSYmKGU9ZS5zdWJzdHJpbmcoMCxvKStlLnN1YnN0cmluZyhvLHMpLnJlcGxhY2UoLzovZyxgO2ApK2Uuc3Vic3RyaW5nKHMsZS5sZW5ndGgpKTtmb3IodmFyIGM9bi5leGVjKGV8fGBgKSxsPXt9LHU9MTQ7dS0tOylsW3JbdV1dPWNbdV18fGBgO3JldHVybiBvIT0tMSYmcyE9LTEmJihsLnNvdXJjZT10LGwuaG9zdD1sLmhvc3Quc3Vic3RyaW5nKDEsbC5ob3N0Lmxlbmd0aC0xKS5yZXBsYWNlKC87L2csYDpgKSxsLmF1dGhvcml0eT1sLmF1dGhvcml0eS5yZXBsYWNlKGBbYCxgYCkucmVwbGFjZShgXWAsYGApLnJlcGxhY2UoLzsvZyxgOmApLGwuaXB2NnVyaT0hMCksbC5wYXRoTmFtZXM9aShsLGwucGF0aCksbC5xdWVyeUtleT1hKGwsbC5xdWVyeSksbH07ZnVuY3Rpb24gaShlLHQpe3ZhciBuPXQucmVwbGFjZSgvXC97Miw5fS9nLGAvYCkuc3BsaXQoYC9gKTtyZXR1cm4odC5zdWJzdHIoMCwxKT09YC9gfHx0Lmxlbmd0aD09PTApJiZuLnNwbGljZSgwLDEpLHQuc3Vic3RyKHQubGVuZ3RoLTEsMSk9PWAvYCYmbi5zcGxpY2Uobi5sZW5ndGgtMSwxKSxufWZ1bmN0aW9uIGEoZSx0KXt2YXIgbj17fTtyZXR1cm4gdC5yZXBsYWNlKC8oPzpefCYpKFteJj1dKik9PyhbXiZdKikvZyxmdW5jdGlvbihlLHQscil7dCYmKG5bdF09cil9KSxufX0pKSx1Yz1zKCgoZSx0KT0+e3ZhciBuPXNjKCkscj1JcygpLGk9RnMoKShgZW5naW5lLmlvLWNsaWVudDpzb2NrZXRgKSxhPWNjKCksbz1acygpLHM9bGMoKSxjPSRzKCk7dC5leHBvcnRzPWw7ZnVuY3Rpb24gbChlLHQpe2lmKCEodGhpcyBpbnN0YW5jZW9mIGwpKXJldHVybiBuZXcgbChlLHQpO3R8fD17fSxlJiZ0eXBlb2YgZT09YG9iamVjdGAmJih0PWUsZT1udWxsKSxlPyhlPXMoZSksdC5ob3N0bmFtZT1lLmhvc3QsdC5zZWN1cmU9ZS5wcm90b2NvbD09PWBodHRwc2B8fGUucHJvdG9jb2w9PT1gd3NzYCx0LnBvcnQ9ZS5wb3J0LGUucXVlcnkmJih0LnF1ZXJ5PWUucXVlcnkpKTp0Lmhvc3QmJih0Lmhvc3RuYW1lPXModC5ob3N0KS5ob3N0KSx0aGlzLnNlY3VyZT10LnNlY3VyZT09bnVsbD90eXBlb2YgbG9jYXRpb248YHVgJiZsb2NhdGlvbi5wcm90b2NvbD09PWBodHRwczpgOnQuc2VjdXJlLHQuaG9zdG5hbWUmJiF0LnBvcnQmJih0LnBvcnQ9dGhpcy5zZWN1cmU/YDQ0M2A6YDgwYCksdGhpcy5hZ2VudD10LmFnZW50fHwhMSx0aGlzLmhvc3RuYW1lPXQuaG9zdG5hbWV8fCh0eXBlb2YgbG9jYXRpb248YHVgP2xvY2F0aW9uLmhvc3RuYW1lOmBsb2NhbGhvc3RgKSx0aGlzLnBvcnQ9dC5wb3J0fHwodHlwZW9mIGxvY2F0aW9uPGB1YCYmbG9jYXRpb24ucG9ydD9sb2NhdGlvbi5wb3J0OnRoaXMuc2VjdXJlPzQ0Mzo4MCksdGhpcy5xdWVyeT10LnF1ZXJ5fHx7fSx0eXBlb2YgdGhpcy5xdWVyeT09YHN0cmluZ2AmJih0aGlzLnF1ZXJ5PWMuZGVjb2RlKHRoaXMucXVlcnkpKSx0aGlzLnVwZ3JhZGU9ITEhPT10LnVwZ3JhZGUsdGhpcy5wYXRoPSh0LnBhdGh8fGAvZW5naW5lLmlvYCkucmVwbGFjZSgvXC8kLyxgYCkrYC9gLHRoaXMuZm9yY2VKU09OUD0hIXQuZm9yY2VKU09OUCx0aGlzLmpzb25wPSExIT09dC5qc29ucCx0aGlzLmZvcmNlQmFzZTY0PSEhdC5mb3JjZUJhc2U2NCx0aGlzLmVuYWJsZXNYRFI9ISF0LmVuYWJsZXNYRFIsdGhpcy53aXRoQ3JlZGVudGlhbHM9ITEhPT10LndpdGhDcmVkZW50aWFscyx0aGlzLnRpbWVzdGFtcFBhcmFtPXQudGltZXN0YW1wUGFyYW18fGB0YCx0aGlzLnRpbWVzdGFtcFJlcXVlc3RzPXQudGltZXN0YW1wUmVxdWVzdHMsdGhpcy50cmFuc3BvcnRzPXQudHJhbnNwb3J0c3x8W2Bwb2xsaW5nYCxgd2Vic29ja2V0YF0sdGhpcy50cmFuc3BvcnRPcHRpb25zPXQudHJhbnNwb3J0T3B0aW9uc3x8e30sdGhpcy5yZWFkeVN0YXRlPWBgLHRoaXMud3JpdGVCdWZmZXI9W10sdGhpcy5wcmV2QnVmZmVyTGVuPTAsdGhpcy5wb2xpY3lQb3J0PXQucG9saWN5UG9ydHx8ODQzLHRoaXMucmVtZW1iZXJVcGdyYWRlPXQucmVtZW1iZXJVcGdyYWRlfHwhMSx0aGlzLmJpbmFyeVR5cGU9bnVsbCx0aGlzLm9ubHlCaW5hcnlVcGdyYWRlcz10Lm9ubHlCaW5hcnlVcGdyYWRlcyx0aGlzLnBlck1lc3NhZ2VEZWZsYXRlPSExPT09dC5wZXJNZXNzYWdlRGVmbGF0ZT8hMTp0LnBlck1lc3NhZ2VEZWZsYXRlfHx7fSwhMD09PXRoaXMucGVyTWVzc2FnZURlZmxhdGUmJih0aGlzLnBlck1lc3NhZ2VEZWZsYXRlPXt9KSx0aGlzLnBlck1lc3NhZ2VEZWZsYXRlJiZ0aGlzLnBlck1lc3NhZ2VEZWZsYXRlLnRocmVzaG9sZD09bnVsbCYmKHRoaXMucGVyTWVzc2FnZURlZmxhdGUudGhyZXNob2xkPTEwMjQpLHRoaXMucGZ4PXQucGZ4fHxudWxsLHRoaXMua2V5PXQua2V5fHxudWxsLHRoaXMucGFzc3BocmFzZT10LnBhc3NwaHJhc2V8fG51bGwsdGhpcy5jZXJ0PXQuY2VydHx8bnVsbCx0aGlzLmNhPXQuY2F8fG51bGwsdGhpcy5jaXBoZXJzPXQuY2lwaGVyc3x8bnVsbCx0aGlzLnJlamVjdFVuYXV0aG9yaXplZD10LnJlamVjdFVuYXV0aG9yaXplZD09PXZvaWQgMD8hMDp0LnJlamVjdFVuYXV0aG9yaXplZCx0aGlzLmZvcmNlTm9kZT0hIXQuZm9yY2VOb2RlLHRoaXMuaXNSZWFjdE5hdGl2ZT10eXBlb2YgbmF2aWdhdG9yPGB1YCYmdHlwZW9mIG5hdmlnYXRvci5wcm9kdWN0PT1gc3RyaW5nYCYmbmF2aWdhdG9yLnByb2R1Y3QudG9Mb3dlckNhc2UoKT09PWByZWFjdG5hdGl2ZWAsKHR5cGVvZiBzZWxmPmB1YHx8dGhpcy5pc1JlYWN0TmF0aXZlKSYmKHQuZXh0cmFIZWFkZXJzJiZPYmplY3Qua2V5cyh0LmV4dHJhSGVhZGVycykubGVuZ3RoPjAmJih0aGlzLmV4dHJhSGVhZGVycz10LmV4dHJhSGVhZGVycyksdC5sb2NhbEFkZHJlc3MmJih0aGlzLmxvY2FsQWRkcmVzcz10LmxvY2FsQWRkcmVzcykpLHRoaXMuaWQ9bnVsbCx0aGlzLnVwZ3JhZGVzPW51bGwsdGhpcy5waW5nSW50ZXJ2YWw9bnVsbCx0aGlzLnBpbmdUaW1lb3V0PW51bGwsdGhpcy5waW5nSW50ZXJ2YWxUaW1lcj1udWxsLHRoaXMucGluZ1RpbWVvdXRUaW1lcj1udWxsLHRoaXMub3BlbigpfWwucHJpb3JXZWJzb2NrZXRTdWNjZXNzPSExLHIobC5wcm90b3R5cGUpLGwucHJvdG9jb2w9by5wcm90b2NvbCxsLlNvY2tldD1sLGwuVHJhbnNwb3J0PVFzKCksbC50cmFuc3BvcnRzPXNjKCksbC5wYXJzZXI9WnMoKSxsLnByb3RvdHlwZS5jcmVhdGVUcmFuc3BvcnQ9ZnVuY3Rpb24oZSl7aShgY3JlYXRpbmcgdHJhbnNwb3J0ICIlcyJgLGUpO3ZhciB0PXUodGhpcy5xdWVyeSk7dC5FSU89by5wcm90b2NvbCx0LnRyYW5zcG9ydD1lO3ZhciByPXRoaXMudHJhbnNwb3J0T3B0aW9uc1tlXXx8e307cmV0dXJuIHRoaXMuaWQmJih0LnNpZD10aGlzLmlkKSxuZXcgbltlXSh7cXVlcnk6dCxzb2NrZXQ6dGhpcyxhZ2VudDpyLmFnZW50fHx0aGlzLmFnZW50LGhvc3RuYW1lOnIuaG9zdG5hbWV8fHRoaXMuaG9zdG5hbWUscG9ydDpyLnBvcnR8fHRoaXMucG9ydCxzZWN1cmU6ci5zZWN1cmV8fHRoaXMuc2VjdXJlLHBhdGg6ci5wYXRofHx0aGlzLnBhdGgsZm9yY2VKU09OUDpyLmZvcmNlSlNPTlB8fHRoaXMuZm9yY2VKU09OUCxqc29ucDpyLmpzb25wfHx0aGlzLmpzb25wLGZvcmNlQmFzZTY0OnIuZm9yY2VCYXNlNjR8fHRoaXMuZm9yY2VCYXNlNjQsZW5hYmxlc1hEUjpyLmVuYWJsZXNYRFJ8fHRoaXMuZW5hYmxlc1hEUix3aXRoQ3JlZGVudGlhbHM6ci53aXRoQ3JlZGVudGlhbHN8fHRoaXMud2l0aENyZWRlbnRpYWxzLHRpbWVzdGFtcFJlcXVlc3RzOnIudGltZXN0YW1wUmVxdWVzdHN8fHRoaXMudGltZXN0YW1wUmVxdWVzdHMsdGltZXN0YW1wUGFyYW06ci50aW1lc3RhbXBQYXJhbXx8dGhpcy50aW1lc3RhbXBQYXJhbSxwb2xpY3lQb3J0OnIucG9saWN5UG9ydHx8dGhpcy5wb2xpY3lQb3J0LHBmeDpyLnBmeHx8dGhpcy5wZngsa2V5OnIua2V5fHx0aGlzLmtleSxwYXNzcGhyYXNlOnIucGFzc3BocmFzZXx8dGhpcy5wYXNzcGhyYXNlLGNlcnQ6ci5jZXJ0fHx0aGlzLmNlcnQsY2E6ci5jYXx8dGhpcy5jYSxjaXBoZXJzOnIuY2lwaGVyc3x8dGhpcy5jaXBoZXJzLHJlamVjdFVuYXV0aG9yaXplZDpyLnJlamVjdFVuYXV0aG9yaXplZHx8dGhpcy5yZWplY3RVbmF1dGhvcml6ZWQscGVyTWVzc2FnZURlZmxhdGU6ci5wZXJNZXNzYWdlRGVmbGF0ZXx8dGhpcy5wZXJNZXNzYWdlRGVmbGF0ZSxleHRyYUhlYWRlcnM6ci5leHRyYUhlYWRlcnN8fHRoaXMuZXh0cmFIZWFkZXJzLGZvcmNlTm9kZTpyLmZvcmNlTm9kZXx8dGhpcy5mb3JjZU5vZGUsbG9jYWxBZGRyZXNzOnIubG9jYWxBZGRyZXNzfHx0aGlzLmxvY2FsQWRkcmVzcyxyZXF1ZXN0VGltZW91dDpyLnJlcXVlc3RUaW1lb3V0fHx0aGlzLnJlcXVlc3RUaW1lb3V0LHByb3RvY29sczpyLnByb3RvY29sc3x8dm9pZCAwLGlzUmVhY3ROYXRpdmU6dGhpcy5pc1JlYWN0TmF0aXZlfSl9O2Z1bmN0aW9uIHUoZSl7dmFyIHQ9e307Zm9yKHZhciBuIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShuKSYmKHRbbl09ZVtuXSk7cmV0dXJuIHR9bC5wcm90b3R5cGUub3Blbj1mdW5jdGlvbigpe3ZhciBlO2lmKHRoaXMucmVtZW1iZXJVcGdyYWRlJiZsLnByaW9yV2Vic29ja2V0U3VjY2VzcyYmdGhpcy50cmFuc3BvcnRzLmluZGV4T2YoYHdlYnNvY2tldGApIT09LTEpZT1gd2Vic29ja2V0YDtlbHNlIGlmKHRoaXMudHJhbnNwb3J0cy5sZW5ndGg9PT0wKXt2YXIgdD10aGlzO3NldFRpbWVvdXQoZnVuY3Rpb24oKXt0LmVtaXQoYGVycm9yYCxgTm8gdHJhbnNwb3J0cyBhdmFpbGFibGVgKX0sMCk7cmV0dXJufWVsc2UgZT10aGlzLnRyYW5zcG9ydHNbMF07dGhpcy5yZWFkeVN0YXRlPWBvcGVuaW5nYDt0cnl7ZT10aGlzLmNyZWF0ZVRyYW5zcG9ydChlKX1jYXRjaHt0aGlzLnRyYW5zcG9ydHMuc2hpZnQoKSx0aGlzLm9wZW4oKTtyZXR1cm59ZS5vcGVuKCksdGhpcy5zZXRUcmFuc3BvcnQoZSl9LGwucHJvdG90eXBlLnNldFRyYW5zcG9ydD1mdW5jdGlvbihlKXtpKGBzZXR0aW5nIHRyYW5zcG9ydCAlc2AsZS5uYW1lKTt2YXIgdD10aGlzO3RoaXMudHJhbnNwb3J0JiYoaShgY2xlYXJpbmcgZXhpc3RpbmcgdHJhbnNwb3J0ICVzYCx0aGlzLnRyYW5zcG9ydC5uYW1lKSx0aGlzLnRyYW5zcG9ydC5yZW1vdmVBbGxMaXN0ZW5lcnMoKSksdGhpcy50cmFuc3BvcnQ9ZSxlLm9uKGBkcmFpbmAsZnVuY3Rpb24oKXt0Lm9uRHJhaW4oKX0pLm9uKGBwYWNrZXRgLGZ1bmN0aW9uKGUpe3Qub25QYWNrZXQoZSl9KS5vbihgZXJyb3JgLGZ1bmN0aW9uKGUpe3Qub25FcnJvcihlKX0pLm9uKGBjbG9zZWAsZnVuY3Rpb24oKXt0Lm9uQ2xvc2UoYHRyYW5zcG9ydCBjbG9zZWApfSl9LGwucHJvdG90eXBlLnByb2JlPWZ1bmN0aW9uKGUpe2koYHByb2JpbmcgdHJhbnNwb3J0ICIlcyJgLGUpO3ZhciB0PXRoaXMuY3JlYXRlVHJhbnNwb3J0KGUse3Byb2JlOjF9KSxuPSExLHI9dGhpcztsLnByaW9yV2Vic29ja2V0U3VjY2Vzcz0hMTtmdW5jdGlvbiBhKCl7aWYoci5vbmx5QmluYXJ5VXBncmFkZXMpe3ZhciBhPSF0aGlzLnN1cHBvcnRzQmluYXJ5JiZyLnRyYW5zcG9ydC5zdXBwb3J0c0JpbmFyeTtufHw9YX1ufHwoaShgcHJvYmUgdHJhbnNwb3J0ICIlcyIgb3BlbmVkYCxlKSx0LnNlbmQoW3t0eXBlOmBwaW5nYCxkYXRhOmBwcm9iZWB9XSksdC5vbmNlKGBwYWNrZXRgLGZ1bmN0aW9uKGEpe2lmKCFuKWlmKGEudHlwZT09PWBwb25nYCYmYS5kYXRhPT09YHByb2JlYCl7aWYoaShgcHJvYmUgdHJhbnNwb3J0ICIlcyIgcG9uZ2AsZSksci51cGdyYWRpbmc9ITAsci5lbWl0KGB1cGdyYWRpbmdgLHQpLCF0KXJldHVybjtsLnByaW9yV2Vic29ja2V0U3VjY2Vzcz10Lm5hbWU9PT1gd2Vic29ja2V0YCxpKGBwYXVzaW5nIGN1cnJlbnQgdHJhbnNwb3J0ICIlcyJgLHIudHJhbnNwb3J0Lm5hbWUpLHIudHJhbnNwb3J0LnBhdXNlKGZ1bmN0aW9uKCl7bnx8ci5yZWFkeVN0YXRlIT09YGNsb3NlZGAmJihpKGBjaGFuZ2luZyB0cmFuc3BvcnQgYW5kIHNlbmRpbmcgdXBncmFkZSBwYWNrZXRgKSxmKCksci5zZXRUcmFuc3BvcnQodCksdC5zZW5kKFt7dHlwZTpgdXBncmFkZWB9XSksci5lbWl0KGB1cGdyYWRlYCx0KSx0PW51bGwsci51cGdyYWRpbmc9ITEsci5mbHVzaCgpKX0pfWVsc2V7aShgcHJvYmUgdHJhbnNwb3J0ICIlcyIgZmFpbGVkYCxlKTt2YXIgbz1FcnJvcihgcHJvYmUgZXJyb3JgKTtvLnRyYW5zcG9ydD10Lm5hbWUsci5lbWl0KGB1cGdyYWRlRXJyb3JgLG8pfX0pKX1mdW5jdGlvbiBvKCl7bnx8KG49ITAsZigpLHQuY2xvc2UoKSx0PW51bGwpfWZ1bmN0aW9uIHMobil7dmFyIGE9RXJyb3IoYHByb2JlIGVycm9yOiBgK24pO2EudHJhbnNwb3J0PXQubmFtZSxvKCksaShgcHJvYmUgdHJhbnNwb3J0ICIlcyIgZmFpbGVkIGJlY2F1c2Ugb2YgZXJyb3I6ICVzYCxlLG4pLHIuZW1pdChgdXBncmFkZUVycm9yYCxhKX1mdW5jdGlvbiBjKCl7cyhgdHJhbnNwb3J0IGNsb3NlZGApfWZ1bmN0aW9uIHUoKXtzKGBzb2NrZXQgY2xvc2VkYCl9ZnVuY3Rpb24gZChlKXt0JiZlLm5hbWUhPT10Lm5hbWUmJihpKGAiJXMiIHdvcmtzIC0gYWJvcnRpbmcgIiVzImAsZS5uYW1lLHQubmFtZSksbygpKX1mdW5jdGlvbiBmKCl7dC5yZW1vdmVMaXN0ZW5lcihgb3BlbmAsYSksdC5yZW1vdmVMaXN0ZW5lcihgZXJyb3JgLHMpLHQucmVtb3ZlTGlzdGVuZXIoYGNsb3NlYCxjKSxyLnJlbW92ZUxpc3RlbmVyKGBjbG9zZWAsdSksci5yZW1vdmVMaXN0ZW5lcihgdXBncmFkaW5nYCxkKX10Lm9uY2UoYG9wZW5gLGEpLHQub25jZShgZXJyb3JgLHMpLHQub25jZShgY2xvc2VgLGMpLHRoaXMub25jZShgY2xvc2VgLHUpLHRoaXMub25jZShgdXBncmFkaW5nYCxkKSx0Lm9wZW4oKX0sbC5wcm90b3R5cGUub25PcGVuPWZ1bmN0aW9uKCl7aWYoaShgc29ja2V0IG9wZW5gKSx0aGlzLnJlYWR5U3RhdGU9YG9wZW5gLGwucHJpb3JXZWJzb2NrZXRTdWNjZXNzPXRoaXMudHJhbnNwb3J0Lm5hbWU9PT1gd2Vic29ja2V0YCx0aGlzLmVtaXQoYG9wZW5gKSx0aGlzLmZsdXNoKCksdGhpcy5yZWFkeVN0YXRlPT09YG9wZW5gJiZ0aGlzLnVwZ3JhZGUmJnRoaXMudHJhbnNwb3J0LnBhdXNlKXtpKGBzdGFydGluZyB1cGdyYWRlIHByb2Jlc2ApO2Zvcih2YXIgZT0wLHQ9dGhpcy51cGdyYWRlcy5sZW5ndGg7ZTx0O2UrKyl0aGlzLnByb2JlKHRoaXMudXBncmFkZXNbZV0pfX0sbC5wcm90b3R5cGUub25QYWNrZXQ9ZnVuY3Rpb24oZSl7aWYodGhpcy5yZWFkeVN0YXRlPT09YG9wZW5pbmdgfHx0aGlzLnJlYWR5U3RhdGU9PT1gb3BlbmB8fHRoaXMucmVhZHlTdGF0ZT09PWBjbG9zaW5nYClzd2l0Y2goaShgc29ja2V0IHJlY2VpdmU6IHR5cGUgIiVzIiwgZGF0YSAiJXMiYCxlLnR5cGUsZS5kYXRhKSx0aGlzLmVtaXQoYHBhY2tldGAsZSksdGhpcy5lbWl0KGBoZWFydGJlYXRgKSxlLnR5cGUpe2Nhc2Vgb3BlbmA6dGhpcy5vbkhhbmRzaGFrZShKU09OLnBhcnNlKGUuZGF0YSkpO2JyZWFrO2Nhc2VgcG9uZ2A6dGhpcy5zZXRQaW5nKCksdGhpcy5lbWl0KGBwb25nYCk7YnJlYWs7Y2FzZWBlcnJvcmA6dmFyIHQ9RXJyb3IoYHNlcnZlciBlcnJvcmApO3QuY29kZT1lLmRhdGEsdGhpcy5vbkVycm9yKHQpO2JyZWFrO2Nhc2VgbWVzc2FnZWA6dGhpcy5lbWl0KGBkYXRhYCxlLmRhdGEpLHRoaXMuZW1pdChgbWVzc2FnZWAsZS5kYXRhKTticmVha31lbHNlIGkoYHBhY2tldCByZWNlaXZlZCB3aXRoIHNvY2tldCByZWFkeVN0YXRlICIlcyJgLHRoaXMucmVhZHlTdGF0ZSl9LGwucHJvdG90eXBlLm9uSGFuZHNoYWtlPWZ1bmN0aW9uKGUpe3RoaXMuZW1pdChgaGFuZHNoYWtlYCxlKSx0aGlzLmlkPWUuc2lkLHRoaXMudHJhbnNwb3J0LnF1ZXJ5LnNpZD1lLnNpZCx0aGlzLnVwZ3JhZGVzPXRoaXMuZmlsdGVyVXBncmFkZXMoZS51cGdyYWRlcyksdGhpcy5waW5nSW50ZXJ2YWw9ZS5waW5nSW50ZXJ2YWwsdGhpcy5waW5nVGltZW91dD1lLnBpbmdUaW1lb3V0LHRoaXMub25PcGVuKCksdGhpcy5yZWFkeVN0YXRlIT09YGNsb3NlZGAmJih0aGlzLnNldFBpbmcoKSx0aGlzLnJlbW92ZUxpc3RlbmVyKGBoZWFydGJlYXRgLHRoaXMub25IZWFydGJlYXQpLHRoaXMub24oYGhlYXJ0YmVhdGAsdGhpcy5vbkhlYXJ0YmVhdCkpfSxsLnByb3RvdHlwZS5vbkhlYXJ0YmVhdD1mdW5jdGlvbihlKXtjbGVhclRpbWVvdXQodGhpcy5waW5nVGltZW91dFRpbWVyKTt2YXIgdD10aGlzO3QucGluZ1RpbWVvdXRUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dC5yZWFkeVN0YXRlIT09YGNsb3NlZGAmJnQub25DbG9zZShgcGluZyB0aW1lb3V0YCl9LGV8fHQucGluZ0ludGVydmFsK3QucGluZ1RpbWVvdXQpfSxsLnByb3RvdHlwZS5zZXRQaW5nPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztjbGVhclRpbWVvdXQoZS5waW5nSW50ZXJ2YWxUaW1lciksZS5waW5nSW50ZXJ2YWxUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aShgd3JpdGluZyBwaW5nIHBhY2tldCAtIGV4cGVjdGluZyBwb25nIHdpdGhpbiAlc21zYCxlLnBpbmdUaW1lb3V0KSxlLnBpbmcoKSxlLm9uSGVhcnRiZWF0KGUucGluZ1RpbWVvdXQpfSxlLnBpbmdJbnRlcnZhbCl9LGwucHJvdG90eXBlLnBpbmc9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3RoaXMuc2VuZFBhY2tldChgcGluZ2AsZnVuY3Rpb24oKXtlLmVtaXQoYHBpbmdgKX0pfSxsLnByb3RvdHlwZS5vbkRyYWluPWZ1bmN0aW9uKCl7dGhpcy53cml0ZUJ1ZmZlci5zcGxpY2UoMCx0aGlzLnByZXZCdWZmZXJMZW4pLHRoaXMucHJldkJ1ZmZlckxlbj0wLHRoaXMud3JpdGVCdWZmZXIubGVuZ3RoPT09MD90aGlzLmVtaXQoYGRyYWluYCk6dGhpcy5mbHVzaCgpfSxsLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe3RoaXMucmVhZHlTdGF0ZSE9PWBjbG9zZWRgJiZ0aGlzLnRyYW5zcG9ydC53cml0YWJsZSYmIXRoaXMudXBncmFkaW5nJiZ0aGlzLndyaXRlQnVmZmVyLmxlbmd0aCYmKGkoYGZsdXNoaW5nICVkIHBhY2tldHMgaW4gc29ja2V0YCx0aGlzLndyaXRlQnVmZmVyLmxlbmd0aCksdGhpcy50cmFuc3BvcnQuc2VuZCh0aGlzLndyaXRlQnVmZmVyKSx0aGlzLnByZXZCdWZmZXJMZW49dGhpcy53cml0ZUJ1ZmZlci5sZW5ndGgsdGhpcy5lbWl0KGBmbHVzaGApKX0sbC5wcm90b3R5cGUud3JpdGU9bC5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbihlLHQsbil7cmV0dXJuIHRoaXMuc2VuZFBhY2tldChgbWVzc2FnZWAsZSx0LG4pLHRoaXN9LGwucHJvdG90eXBlLnNlbmRQYWNrZXQ9ZnVuY3Rpb24oZSx0LG4scil7aWYodHlwZW9mIHQ9PWBmdW5jdGlvbmAmJihyPXQsdD12b2lkIDApLHR5cGVvZiBuPT1gZnVuY3Rpb25gJiYocj1uLG49bnVsbCksISh0aGlzLnJlYWR5U3RhdGU9PT1gY2xvc2luZ2B8fHRoaXMucmVhZHlTdGF0ZT09PWBjbG9zZWRgKSl7bnx8PXt9LG4uY29tcHJlc3M9ITEhPT1uLmNvbXByZXNzO3ZhciBpPXt0eXBlOmUsZGF0YTp0LG9wdGlvbnM6bn07dGhpcy5lbWl0KGBwYWNrZXRDcmVhdGVgLGkpLHRoaXMud3JpdGVCdWZmZXIucHVzaChpKSxyJiZ0aGlzLm9uY2UoYGZsdXNoYCxyKSx0aGlzLmZsdXNoKCl9fSxsLnByb3RvdHlwZS5jbG9zZT1mdW5jdGlvbigpe2lmKHRoaXMucmVhZHlTdGF0ZT09PWBvcGVuaW5nYHx8dGhpcy5yZWFkeVN0YXRlPT09YG9wZW5gKXt0aGlzLnJlYWR5U3RhdGU9YGNsb3NpbmdgO3ZhciBlPXRoaXM7dGhpcy53cml0ZUJ1ZmZlci5sZW5ndGg/dGhpcy5vbmNlKGBkcmFpbmAsZnVuY3Rpb24oKXt0aGlzLnVwZ3JhZGluZz9yKCk6dCgpfSk6dGhpcy51cGdyYWRpbmc/cigpOnQoKX1mdW5jdGlvbiB0KCl7ZS5vbkNsb3NlKGBmb3JjZWQgY2xvc2VgKSxpKGBzb2NrZXQgY2xvc2luZyAtIHRlbGxpbmcgdHJhbnNwb3J0IHRvIGNsb3NlYCksZS50cmFuc3BvcnQuY2xvc2UoKX1mdW5jdGlvbiBuKCl7ZS5yZW1vdmVMaXN0ZW5lcihgdXBncmFkZWAsbiksZS5yZW1vdmVMaXN0ZW5lcihgdXBncmFkZUVycm9yYCxuKSx0KCl9ZnVuY3Rpb24gcigpe2Uub25jZShgdXBncmFkZWAsbiksZS5vbmNlKGB1cGdyYWRlRXJyb3JgLG4pfXJldHVybiB0aGlzfSxsLnByb3RvdHlwZS5vbkVycm9yPWZ1bmN0aW9uKGUpe2koYHNvY2tldCBlcnJvciAlamAsZSksbC5wcmlvcldlYnNvY2tldFN1Y2Nlc3M9ITEsdGhpcy5lbWl0KGBlcnJvcmAsZSksdGhpcy5vbkNsb3NlKGB0cmFuc3BvcnQgZXJyb3JgLGUpfSxsLnByb3RvdHlwZS5vbkNsb3NlPWZ1bmN0aW9uKGUsdCl7aWYodGhpcy5yZWFkeVN0YXRlPT09YG9wZW5pbmdgfHx0aGlzLnJlYWR5U3RhdGU9PT1gb3BlbmB8fHRoaXMucmVhZHlTdGF0ZT09PWBjbG9zaW5nYCl7aShgc29ja2V0IGNsb3NlIHdpdGggcmVhc29uOiAiJXMiYCxlKTt2YXIgbj10aGlzO2NsZWFyVGltZW91dCh0aGlzLnBpbmdJbnRlcnZhbFRpbWVyKSxjbGVhclRpbWVvdXQodGhpcy5waW5nVGltZW91dFRpbWVyKSx0aGlzLnRyYW5zcG9ydC5yZW1vdmVBbGxMaXN0ZW5lcnMoYGNsb3NlYCksdGhpcy50cmFuc3BvcnQuY2xvc2UoKSx0aGlzLnRyYW5zcG9ydC5yZW1vdmVBbGxMaXN0ZW5lcnMoKSx0aGlzLnJlYWR5U3RhdGU9YGNsb3NlZGAsdGhpcy5pZD1udWxsLHRoaXMuZW1pdChgY2xvc2VgLGUsdCksbi53cml0ZUJ1ZmZlcj1bXSxuLnByZXZCdWZmZXJMZW49MH19LGwucHJvdG90eXBlLmZpbHRlclVwZ3JhZGVzPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1bXSxuPTAscj1lLmxlbmd0aDtuPHI7bisrKX5hKHRoaXMudHJhbnNwb3J0cyxlW25dKSYmdC5wdXNoKGVbbl0pO3JldHVybiB0fX0pKSxkYz1zKCgoZSx0KT0+e3QuZXhwb3J0cz11YygpLHQuZXhwb3J0cy5wYXJzZXI9WnMoKX0pKSxmYz1zKCgoZSx0KT0+e3QhPT12b2lkIDAmJih0LmV4cG9ydHM9bik7ZnVuY3Rpb24gbihlKXtpZihlKXJldHVybiByKGUpfWZ1bmN0aW9uIHIoZSl7Zm9yKHZhciB0IGluIG4ucHJvdG90eXBlKWVbdF09bi5wcm90b3R5cGVbdF07cmV0dXJuIGV9bi5wcm90b3R5cGUub249bi5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLl9jYWxsYmFja3M9dGhpcy5fY2FsbGJhY2tzfHx7fSwodGhpcy5fY2FsbGJhY2tzW2AkYCtlXT10aGlzLl9jYWxsYmFja3NbYCRgK2VdfHxbXSkucHVzaCh0KSx0aGlzfSxuLnByb3RvdHlwZS5vbmNlPWZ1bmN0aW9uKGUsdCl7ZnVuY3Rpb24gbigpe3RoaXMub2ZmKGUsbiksdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9cmV0dXJuIG4uZm49dCx0aGlzLm9uKGUsbiksdGhpc30sbi5wcm90b3R5cGUub2ZmPW4ucHJvdG90eXBlLnJlbW92ZUxpc3RlbmVyPW4ucHJvdG90eXBlLnJlbW92ZUFsbExpc3RlbmVycz1uLnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGUsdCl7aWYodGhpcy5fY2FsbGJhY2tzPXRoaXMuX2NhbGxiYWNrc3x8e30sYXJndW1lbnRzLmxlbmd0aD09MClyZXR1cm4gdGhpcy5fY2FsbGJhY2tzPXt9LHRoaXM7dmFyIG49dGhpcy5fY2FsbGJhY2tzW2AkYCtlXTtpZighbilyZXR1cm4gdGhpcztpZihhcmd1bWVudHMubGVuZ3RoPT0xKXJldHVybiBkZWxldGUgdGhpcy5fY2FsbGJhY2tzW2AkYCtlXSx0aGlzO2Zvcih2YXIgcixpPTA7aTxuLmxlbmd0aDtpKyspaWYocj1uW2ldLHI9PT10fHxyLmZuPT09dCl7bi5zcGxpY2UoaSwxKTticmVha31yZXR1cm4gdGhpc30sbi5wcm90b3R5cGUuZW1pdD1mdW5jdGlvbihlKXt0aGlzLl9jYWxsYmFja3M9dGhpcy5fY2FsbGJhY2tzfHx7fTt2YXIgdD1bXS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSxuPXRoaXMuX2NhbGxiYWNrc1tgJGArZV07aWYobil7bj1uLnNsaWNlKDApO2Zvcih2YXIgcj0wLGk9bi5sZW5ndGg7cjxpOysrciluW3JdLmFwcGx5KHRoaXMsdCl9cmV0dXJuIHRoaXN9LG4ucHJvdG90eXBlLmxpc3RlbmVycz1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5fY2FsbGJhY2tzPXRoaXMuX2NhbGxiYWNrc3x8e30sdGhpcy5fY2FsbGJhY2tzW2AkYCtlXXx8W119LG4ucHJvdG90eXBlLmhhc0xpc3RlbmVycz1mdW5jdGlvbihlKXtyZXR1cm4hIXRoaXMubGlzdGVuZXJzKGUpLmxlbmd0aH19KSkscGM9cygoKGUsdCk9Pnt0LmV4cG9ydHM9bjtmdW5jdGlvbiBuKGUsdCl7dmFyIG49W107dHx8PTA7Zm9yKHZhciByPXR8fDA7cjxlLmxlbmd0aDtyKyspbltyLXRdPWVbcl07cmV0dXJuIG59fSkpLG1jPXMoKChlLHQpPT57dC5leHBvcnRzPW47ZnVuY3Rpb24gbihlLHQsbil7cmV0dXJuIGUub24odCxuKSx7ZGVzdHJveTpmdW5jdGlvbigpe2UucmVtb3ZlTGlzdGVuZXIodCxuKX19fX0pKSxoYz1zKCgoZSx0KT0+e3ZhciBuPVtdLnNsaWNlO3QuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKHR5cGVvZiB0PT1gc3RyaW5nYCYmKHQ9ZVt0XSksdHlwZW9mIHQhPWBmdW5jdGlvbmApdGhyb3cgRXJyb3IoYGJpbmQoKSByZXF1aXJlcyBhIGZ1bmN0aW9uYCk7dmFyIHI9bi5jYWxsKGFyZ3VtZW50cywyKTtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gdC5hcHBseShlLHIuY29uY2F0KG4uY2FsbChhcmd1bWVudHMpKSl9fX0pKSxnYz1zKChlPT57ZS5lbmNvZGU9ZnVuY3Rpb24oZSl7dmFyIHQ9YGA7Zm9yKHZhciBuIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShuKSYmKHQubGVuZ3RoJiYodCs9YCZgKSx0Kz1lbmNvZGVVUklDb21wb25lbnQobikrYD1gK2VuY29kZVVSSUNvbXBvbmVudChlW25dKSk7cmV0dXJuIHR9LGUuZGVjb2RlPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD17fSxuPWUuc3BsaXQoYCZgKSxyPTAsaT1uLmxlbmd0aDtyPGk7cisrKXt2YXIgYT1uW3JdLnNwbGl0KGA9YCk7dFtkZWNvZGVVUklDb21wb25lbnQoYVswXSldPWRlY29kZVVSSUNvbXBvbmVudChhWzFdKX1yZXR1cm4gdH19KSksX2M9cygoKGUsdCk9Pnt2YXIgbj1CcygpLHI9ZmMoKSxpPXBjKCksYT1tYygpLG89aGMoKSxzPWpzKCkoYHNvY2tldC5pby1jbGllbnQ6c29ja2V0YCksYz1nYygpLGw9R3MoKTt0LmV4cG9ydHM9ZT1mO3ZhciB1PXtjb25uZWN0OjEsY29ubmVjdF9lcnJvcjoxLGNvbm5lY3RfdGltZW91dDoxLGNvbm5lY3Rpbmc6MSxkaXNjb25uZWN0OjEsZXJyb3I6MSxyZWNvbm5lY3Q6MSxyZWNvbm5lY3RfYXR0ZW1wdDoxLHJlY29ubmVjdF9mYWlsZWQ6MSxyZWNvbm5lY3RfZXJyb3I6MSxyZWNvbm5lY3Rpbmc6MSxwaW5nOjEscG9uZzoxfSxkPXIucHJvdG90eXBlLmVtaXQ7ZnVuY3Rpb24gZihlLHQsbil7dGhpcy5pbz1lLHRoaXMubnNwPXQsdGhpcy5qc29uPXRoaXMsdGhpcy5pZHM9MCx0aGlzLmFja3M9e30sdGhpcy5yZWNlaXZlQnVmZmVyPVtdLHRoaXMuc2VuZEJ1ZmZlcj1bXSx0aGlzLmNvbm5lY3RlZD0hMSx0aGlzLmRpc2Nvbm5lY3RlZD0hMCx0aGlzLmZsYWdzPXt9LG4mJm4ucXVlcnkmJih0aGlzLnF1ZXJ5PW4ucXVlcnkpLHRoaXMuaW8uYXV0b0Nvbm5lY3QmJnRoaXMub3BlbigpfXIoZi5wcm90b3R5cGUpLGYucHJvdG90eXBlLnN1YkV2ZW50cz1mdW5jdGlvbigpe2lmKCF0aGlzLnN1YnMpe3ZhciBlPXRoaXMuaW87dGhpcy5zdWJzPVthKGUsYG9wZW5gLG8odGhpcyxgb25vcGVuYCkpLGEoZSxgcGFja2V0YCxvKHRoaXMsYG9ucGFja2V0YCkpLGEoZSxgY2xvc2VgLG8odGhpcyxgb25jbG9zZWApKV19fSxmLnByb3RvdHlwZS5vcGVuPWYucHJvdG90eXBlLmNvbm5lY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb25uZWN0ZWQ/dGhpczoodGhpcy5zdWJFdmVudHMoKSx0aGlzLmlvLm9wZW4oKSx0aGlzLmlvLnJlYWR5U3RhdGU9PT1gb3BlbmAmJnRoaXMub25vcGVuKCksdGhpcy5lbWl0KGBjb25uZWN0aW5nYCksdGhpcyl9LGYucHJvdG90eXBlLnNlbmQ9ZnVuY3Rpb24oKXt2YXIgZT1pKGFyZ3VtZW50cyk7cmV0dXJuIGUudW5zaGlmdChgbWVzc2FnZWApLHRoaXMuZW1pdC5hcHBseSh0aGlzLGUpLHRoaXN9LGYucHJvdG90eXBlLmVtaXQ9ZnVuY3Rpb24oZSl7aWYodS5oYXNPd25Qcm9wZXJ0eShlKSlyZXR1cm4gZC5hcHBseSh0aGlzLGFyZ3VtZW50cyksdGhpczt2YXIgdD1pKGFyZ3VtZW50cykscj17dHlwZToodGhpcy5mbGFncy5iaW5hcnk9PT12b2lkIDA/bCh0KTp0aGlzLmZsYWdzLmJpbmFyeSk/bi5CSU5BUllfRVZFTlQ6bi5FVkVOVCxkYXRhOnR9O3JldHVybiByLm9wdGlvbnM9e30sci5vcHRpb25zLmNvbXByZXNzPSF0aGlzLmZsYWdzfHwhMSE9PXRoaXMuZmxhZ3MuY29tcHJlc3MsdHlwZW9mIHRbdC5sZW5ndGgtMV09PWBmdW5jdGlvbmAmJihzKGBlbWl0dGluZyBwYWNrZXQgd2l0aCBhY2sgaWQgJWRgLHRoaXMuaWRzKSx0aGlzLmFja3NbdGhpcy5pZHNdPXQucG9wKCksci5pZD10aGlzLmlkcysrKSx0aGlzLmNvbm5lY3RlZD90aGlzLnBhY2tldChyKTp0aGlzLnNlbmRCdWZmZXIucHVzaChyKSx0aGlzLmZsYWdzPXt9LHRoaXN9LGYucHJvdG90eXBlLnBhY2tldD1mdW5jdGlvbihlKXtlLm5zcD10aGlzLm5zcCx0aGlzLmlvLnBhY2tldChlKX0sZi5wcm90b3R5cGUub25vcGVuPWZ1bmN0aW9uKCl7aWYocyhgdHJhbnNwb3J0IGlzIG9wZW4gLSBjb25uZWN0aW5nYCksdGhpcy5uc3AhPT1gL2ApaWYodGhpcy5xdWVyeSl7dmFyIGU9dHlwZW9mIHRoaXMucXVlcnk9PWBvYmplY3RgP2MuZW5jb2RlKHRoaXMucXVlcnkpOnRoaXMucXVlcnk7cyhgc2VuZGluZyBjb25uZWN0IHBhY2tldCB3aXRoIHF1ZXJ5ICVzYCxlKSx0aGlzLnBhY2tldCh7dHlwZTpuLkNPTk5FQ1QscXVlcnk6ZX0pfWVsc2UgdGhpcy5wYWNrZXQoe3R5cGU6bi5DT05ORUNUfSl9LGYucHJvdG90eXBlLm9uY2xvc2U9ZnVuY3Rpb24oZSl7cyhgY2xvc2UgKCVzKWAsZSksdGhpcy5jb25uZWN0ZWQ9ITEsdGhpcy5kaXNjb25uZWN0ZWQ9ITAsZGVsZXRlIHRoaXMuaWQsdGhpcy5lbWl0KGBkaXNjb25uZWN0YCxlKX0sZi5wcm90b3R5cGUub25wYWNrZXQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5uc3A9PT10aGlzLm5zcCxyPWUudHlwZT09PW4uRVJST1ImJmUubnNwPT09YC9gO2lmKCEoIXQmJiFyKSlzd2l0Y2goZS50eXBlKXtjYXNlIG4uQ09OTkVDVDp0aGlzLm9uY29ubmVjdCgpO2JyZWFrO2Nhc2Ugbi5FVkVOVDp0aGlzLm9uZXZlbnQoZSk7YnJlYWs7Y2FzZSBuLkJJTkFSWV9FVkVOVDp0aGlzLm9uZXZlbnQoZSk7YnJlYWs7Y2FzZSBuLkFDSzp0aGlzLm9uYWNrKGUpO2JyZWFrO2Nhc2Ugbi5CSU5BUllfQUNLOnRoaXMub25hY2soZSk7YnJlYWs7Y2FzZSBuLkRJU0NPTk5FQ1Q6dGhpcy5vbmRpc2Nvbm5lY3QoKTticmVhaztjYXNlIG4uRVJST1I6dGhpcy5lbWl0KGBlcnJvcmAsZS5kYXRhKTticmVha319LGYucHJvdG90eXBlLm9uZXZlbnQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5kYXRhfHxbXTtzKGBlbWl0dGluZyBldmVudCAlamAsdCksZS5pZCE9bnVsbCYmKHMoYGF0dGFjaGluZyBhY2sgY2FsbGJhY2sgdG8gZXZlbnRgKSx0LnB1c2godGhpcy5hY2soZS5pZCkpKSx0aGlzLmNvbm5lY3RlZD9kLmFwcGx5KHRoaXMsdCk6dGhpcy5yZWNlaXZlQnVmZmVyLnB1c2godCl9LGYucHJvdG90eXBlLmFjaz1mdW5jdGlvbihlKXt2YXIgdD10aGlzLHI9ITE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoIXIpe3I9ITA7dmFyIGE9aShhcmd1bWVudHMpO3MoYHNlbmRpbmcgYWNrICVqYCxhKSx0LnBhY2tldCh7dHlwZTpsKGEpP24uQklOQVJZX0FDSzpuLkFDSyxpZDplLGRhdGE6YX0pfX19LGYucHJvdG90eXBlLm9uYWNrPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuYWNrc1tlLmlkXTt0eXBlb2YgdD09YGZ1bmN0aW9uYD8ocyhgY2FsbGluZyBhY2sgJXMgd2l0aCAlamAsZS5pZCxlLmRhdGEpLHQuYXBwbHkodGhpcyxlLmRhdGEpLGRlbGV0ZSB0aGlzLmFja3NbZS5pZF0pOnMoYGJhZCBhY2sgJXNgLGUuaWQpfSxmLnByb3RvdHlwZS5vbmNvbm5lY3Q9ZnVuY3Rpb24oKXt0aGlzLmNvbm5lY3RlZD0hMCx0aGlzLmRpc2Nvbm5lY3RlZD0hMSx0aGlzLmVtaXQoYGNvbm5lY3RgKSx0aGlzLmVtaXRCdWZmZXJlZCgpfSxmLnByb3RvdHlwZS5lbWl0QnVmZmVyZWQ9ZnVuY3Rpb24oKXt2YXIgZTtmb3IoZT0wO2U8dGhpcy5yZWNlaXZlQnVmZmVyLmxlbmd0aDtlKyspZC5hcHBseSh0aGlzLHRoaXMucmVjZWl2ZUJ1ZmZlcltlXSk7Zm9yKHRoaXMucmVjZWl2ZUJ1ZmZlcj1bXSxlPTA7ZTx0aGlzLnNlbmRCdWZmZXIubGVuZ3RoO2UrKyl0aGlzLnBhY2tldCh0aGlzLnNlbmRCdWZmZXJbZV0pO3RoaXMuc2VuZEJ1ZmZlcj1bXX0sZi5wcm90b3R5cGUub25kaXNjb25uZWN0PWZ1bmN0aW9uKCl7cyhgc2VydmVyIGRpc2Nvbm5lY3QgKCVzKWAsdGhpcy5uc3ApLHRoaXMuZGVzdHJveSgpLHRoaXMub25jbG9zZShgaW8gc2VydmVyIGRpc2Nvbm5lY3RgKX0sZi5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbigpe2lmKHRoaXMuc3Vicyl7Zm9yKHZhciBlPTA7ZTx0aGlzLnN1YnMubGVuZ3RoO2UrKyl0aGlzLnN1YnNbZV0uZGVzdHJveSgpO3RoaXMuc3Vicz1udWxsfXRoaXMuaW8uZGVzdHJveSh0aGlzKX0sZi5wcm90b3R5cGUuY2xvc2U9Zi5wcm90b3R5cGUuZGlzY29ubmVjdD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbm5lY3RlZCYmKHMoYHBlcmZvcm1pbmcgZGlzY29ubmVjdCAoJXMpYCx0aGlzLm5zcCksdGhpcy5wYWNrZXQoe3R5cGU6bi5ESVNDT05ORUNUfSkpLHRoaXMuZGVzdHJveSgpLHRoaXMuY29ubmVjdGVkJiZ0aGlzLm9uY2xvc2UoYGlvIGNsaWVudCBkaXNjb25uZWN0YCksdGhpc30sZi5wcm90b3R5cGUuY29tcHJlc3M9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZmxhZ3MuY29tcHJlc3M9ZSx0aGlzfSxmLnByb3RvdHlwZS5iaW5hcnk9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZmxhZ3MuYmluYXJ5PWUsdGhpc319KSksdmM9cygoKGUsdCk9Pnt0LmV4cG9ydHM9bjtmdW5jdGlvbiBuKGUpe2V8fD17fSx0aGlzLm1zPWUubWlufHwxMDAsdGhpcy5tYXg9ZS5tYXh8fDFlNCx0aGlzLmZhY3Rvcj1lLmZhY3Rvcnx8Mix0aGlzLmppdHRlcj1lLmppdHRlcj4wJiZlLmppdHRlcjw9MT9lLmppdHRlcjowLHRoaXMuYXR0ZW1wdHM9MH1uLnByb3RvdHlwZS5kdXJhdGlvbj1mdW5jdGlvbigpe3ZhciBlPXRoaXMubXMqdGhpcy5mYWN0b3IqKisgdGhpcy5hdHRlbXB0cysrO2lmKHRoaXMuaml0dGVyKXt2YXIgdD1NYXRoLnJhbmRvbSgpLG49TWF0aC5mbG9vcih0KnRoaXMuaml0dGVyKmUpO2U9TWF0aC5mbG9vcih0KjEwKSYxP2UrbjplLW59cmV0dXJuIE1hdGgubWluKGUsdGhpcy5tYXgpfDB9LG4ucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5hdHRlbXB0cz0wfSxuLnByb3RvdHlwZS5zZXRNaW49ZnVuY3Rpb24oZSl7dGhpcy5tcz1lfSxuLnByb3RvdHlwZS5zZXRNYXg9ZnVuY3Rpb24oZSl7dGhpcy5tYXg9ZX0sbi5wcm90b3R5cGUuc2V0Sml0dGVyPWZ1bmN0aW9uKGUpe3RoaXMuaml0dGVyPWV9fSkpLHljPXMoKChlLHQpPT57dmFyIG49ZGMoKSxyPV9jKCksaT1mYygpLGE9QnMoKSxvPW1jKCkscz1oYygpLGM9anMoKShgc29ja2V0LmlvLWNsaWVudDptYW5hZ2VyYCksbD1jYygpLHU9dmMoKSxkPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dC5leHBvcnRzPWY7ZnVuY3Rpb24gZihlLHQpe2lmKCEodGhpcyBpbnN0YW5jZW9mIGYpKXJldHVybiBuZXcgZihlLHQpO2UmJnR5cGVvZiBlPT1gb2JqZWN0YCYmKHQ9ZSxlPXZvaWQgMCksdHx8PXt9LHQucGF0aD10LnBhdGh8fGAvc29ja2V0LmlvYCx0aGlzLm5zcHM9e30sdGhpcy5zdWJzPVtdLHRoaXMub3B0cz10LHRoaXMucmVjb25uZWN0aW9uKHQucmVjb25uZWN0aW9uIT09ITEpLHRoaXMucmVjb25uZWN0aW9uQXR0ZW1wdHModC5yZWNvbm5lY3Rpb25BdHRlbXB0c3x8MS8wKSx0aGlzLnJlY29ubmVjdGlvbkRlbGF5KHQucmVjb25uZWN0aW9uRGVsYXl8fDFlMyksdGhpcy5yZWNvbm5lY3Rpb25EZWxheU1heCh0LnJlY29ubmVjdGlvbkRlbGF5TWF4fHw1ZTMpLHRoaXMucmFuZG9taXphdGlvbkZhY3Rvcih0LnJhbmRvbWl6YXRpb25GYWN0b3J8fC41KSx0aGlzLmJhY2tvZmY9bmV3IHUoe21pbjp0aGlzLnJlY29ubmVjdGlvbkRlbGF5KCksbWF4OnRoaXMucmVjb25uZWN0aW9uRGVsYXlNYXgoKSxqaXR0ZXI6dGhpcy5yYW5kb21pemF0aW9uRmFjdG9yKCl9KSx0aGlzLnRpbWVvdXQodC50aW1lb3V0PT1udWxsPzJlNDp0LnRpbWVvdXQpLHRoaXMucmVhZHlTdGF0ZT1gY2xvc2VkYCx0aGlzLnVyaT1lLHRoaXMuY29ubmVjdGluZz1bXSx0aGlzLmxhc3RQaW5nPW51bGwsdGhpcy5lbmNvZGluZz0hMSx0aGlzLnBhY2tldEJ1ZmZlcj1bXTt2YXIgbj10LnBhcnNlcnx8YTt0aGlzLmVuY29kZXI9bmV3IG4uRW5jb2Rlcix0aGlzLmRlY29kZXI9bmV3IG4uRGVjb2Rlcix0aGlzLmF1dG9Db25uZWN0PXQuYXV0b0Nvbm5lY3QhPT0hMSx0aGlzLmF1dG9Db25uZWN0JiZ0aGlzLm9wZW4oKX1mLnByb3RvdHlwZS5lbWl0QWxsPWZ1bmN0aW9uKCl7Zm9yKHZhciBlIGluIHRoaXMuZW1pdC5hcHBseSh0aGlzLGFyZ3VtZW50cyksdGhpcy5uc3BzKWQuY2FsbCh0aGlzLm5zcHMsZSkmJnRoaXMubnNwc1tlXS5lbWl0LmFwcGx5KHRoaXMubnNwc1tlXSxhcmd1bWVudHMpfSxmLnByb3RvdHlwZS51cGRhdGVTb2NrZXRJZHM9ZnVuY3Rpb24oKXtmb3IodmFyIGUgaW4gdGhpcy5uc3BzKWQuY2FsbCh0aGlzLm5zcHMsZSkmJih0aGlzLm5zcHNbZV0uaWQ9dGhpcy5nZW5lcmF0ZUlkKGUpKX0sZi5wcm90b3R5cGUuZ2VuZXJhdGVJZD1mdW5jdGlvbihlKXtyZXR1cm4oZT09PWAvYD9gYDplK2AjYCkrdGhpcy5lbmdpbmUuaWR9LGkoZi5wcm90b3R5cGUpLGYucHJvdG90eXBlLnJlY29ubmVjdGlvbj1mdW5jdGlvbihlKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD8odGhpcy5fcmVjb25uZWN0aW9uPSEhZSx0aGlzKTp0aGlzLl9yZWNvbm5lY3Rpb259LGYucHJvdG90eXBlLnJlY29ubmVjdGlvbkF0dGVtcHRzPWZ1bmN0aW9uKGUpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyh0aGlzLl9yZWNvbm5lY3Rpb25BdHRlbXB0cz1lLHRoaXMpOnRoaXMuX3JlY29ubmVjdGlvbkF0dGVtcHRzfSxmLnByb3RvdHlwZS5yZWNvbm5lY3Rpb25EZWxheT1mdW5jdGlvbihlKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD8odGhpcy5fcmVjb25uZWN0aW9uRGVsYXk9ZSx0aGlzLmJhY2tvZmYmJnRoaXMuYmFja29mZi5zZXRNaW4oZSksdGhpcyk6dGhpcy5fcmVjb25uZWN0aW9uRGVsYXl9LGYucHJvdG90eXBlLnJhbmRvbWl6YXRpb25GYWN0b3I9ZnVuY3Rpb24oZSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg/KHRoaXMuX3JhbmRvbWl6YXRpb25GYWN0b3I9ZSx0aGlzLmJhY2tvZmYmJnRoaXMuYmFja29mZi5zZXRKaXR0ZXIoZSksdGhpcyk6dGhpcy5fcmFuZG9taXphdGlvbkZhY3Rvcn0sZi5wcm90b3R5cGUucmVjb25uZWN0aW9uRGVsYXlNYXg9ZnVuY3Rpb24oZSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg/KHRoaXMuX3JlY29ubmVjdGlvbkRlbGF5TWF4PWUsdGhpcy5iYWNrb2ZmJiZ0aGlzLmJhY2tvZmYuc2V0TWF4KGUpLHRoaXMpOnRoaXMuX3JlY29ubmVjdGlvbkRlbGF5TWF4fSxmLnByb3RvdHlwZS50aW1lb3V0PWZ1bmN0aW9uKGUpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyh0aGlzLl90aW1lb3V0PWUsdGhpcyk6dGhpcy5fdGltZW91dH0sZi5wcm90b3R5cGUubWF5YmVSZWNvbm5lY3RPbk9wZW49ZnVuY3Rpb24oKXshdGhpcy5yZWNvbm5lY3RpbmcmJnRoaXMuX3JlY29ubmVjdGlvbiYmdGhpcy5iYWNrb2ZmLmF0dGVtcHRzPT09MCYmdGhpcy5yZWNvbm5lY3QoKX0sZi5wcm90b3R5cGUub3Blbj1mLnByb3RvdHlwZS5jb25uZWN0PWZ1bmN0aW9uKGUsdCl7aWYoYyhgcmVhZHlTdGF0ZSAlc2AsdGhpcy5yZWFkeVN0YXRlKSx+dGhpcy5yZWFkeVN0YXRlLmluZGV4T2YoYG9wZW5gKSlyZXR1cm4gdGhpcztjKGBvcGVuaW5nICVzYCx0aGlzLnVyaSksdGhpcy5lbmdpbmU9bih0aGlzLnVyaSx0aGlzLm9wdHMpO3ZhciByPXRoaXMuZW5naW5lLGk9dGhpczt0aGlzLnJlYWR5U3RhdGU9YG9wZW5pbmdgLHRoaXMuc2tpcFJlY29ubmVjdD0hMTt2YXIgYT1vKHIsYG9wZW5gLGZ1bmN0aW9uKCl7aS5vbm9wZW4oKSxlJiZlKCl9KSxzPW8ocixgZXJyb3JgLGZ1bmN0aW9uKHQpe2lmKGMoYGNvbm5lY3RfZXJyb3JgKSxpLmNsZWFudXAoKSxpLnJlYWR5U3RhdGU9YGNsb3NlZGAsaS5lbWl0QWxsKGBjb25uZWN0X2Vycm9yYCx0KSxlKXt2YXIgbj1FcnJvcihgQ29ubmVjdGlvbiBlcnJvcmApO24uZGF0YT10LGUobil9ZWxzZSBpLm1heWJlUmVjb25uZWN0T25PcGVuKCl9KTtpZighMSE9PXRoaXMuX3RpbWVvdXQpe3ZhciBsPXRoaXMuX3RpbWVvdXQ7YyhgY29ubmVjdCBhdHRlbXB0IHdpbGwgdGltZW91dCBhZnRlciAlZGAsbCk7dmFyIHU9c2V0VGltZW91dChmdW5jdGlvbigpe2MoYGNvbm5lY3QgYXR0ZW1wdCB0aW1lZCBvdXQgYWZ0ZXIgJWRgLGwpLGEuZGVzdHJveSgpLHIuY2xvc2UoKSxyLmVtaXQoYGVycm9yYCxgdGltZW91dGApLGkuZW1pdEFsbChgY29ubmVjdF90aW1lb3V0YCxsKX0sbCk7dGhpcy5zdWJzLnB1c2goe2Rlc3Ryb3k6ZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQodSl9fSl9cmV0dXJuIHRoaXMuc3Vicy5wdXNoKGEpLHRoaXMuc3Vicy5wdXNoKHMpLHRoaXN9LGYucHJvdG90eXBlLm9ub3Blbj1mdW5jdGlvbigpe2MoYG9wZW5gKSx0aGlzLmNsZWFudXAoKSx0aGlzLnJlYWR5U3RhdGU9YG9wZW5gLHRoaXMuZW1pdChgb3BlbmApO3ZhciBlPXRoaXMuZW5naW5lO3RoaXMuc3Vicy5wdXNoKG8oZSxgZGF0YWAscyh0aGlzLGBvbmRhdGFgKSkpLHRoaXMuc3Vicy5wdXNoKG8oZSxgcGluZ2Ascyh0aGlzLGBvbnBpbmdgKSkpLHRoaXMuc3Vicy5wdXNoKG8oZSxgcG9uZ2Ascyh0aGlzLGBvbnBvbmdgKSkpLHRoaXMuc3Vicy5wdXNoKG8oZSxgZXJyb3JgLHModGhpcyxgb25lcnJvcmApKSksdGhpcy5zdWJzLnB1c2gobyhlLGBjbG9zZWAscyh0aGlzLGBvbmNsb3NlYCkpKSx0aGlzLnN1YnMucHVzaChvKHRoaXMuZGVjb2RlcixgZGVjb2RlZGAscyh0aGlzLGBvbmRlY29kZWRgKSkpfSxmLnByb3RvdHlwZS5vbnBpbmc9ZnVuY3Rpb24oKXt0aGlzLmxhc3RQaW5nPW5ldyBEYXRlLHRoaXMuZW1pdEFsbChgcGluZ2ApfSxmLnByb3RvdHlwZS5vbnBvbmc9ZnVuY3Rpb24oKXt0aGlzLmVtaXRBbGwoYHBvbmdgLG5ldyBEYXRlLXRoaXMubGFzdFBpbmcpfSxmLnByb3RvdHlwZS5vbmRhdGE9ZnVuY3Rpb24oZSl7dGhpcy5kZWNvZGVyLmFkZChlKX0sZi5wcm90b3R5cGUub25kZWNvZGVkPWZ1bmN0aW9uKGUpe3RoaXMuZW1pdChgcGFja2V0YCxlKX0sZi5wcm90b3R5cGUub25lcnJvcj1mdW5jdGlvbihlKXtjKGBlcnJvcmAsZSksdGhpcy5lbWl0QWxsKGBlcnJvcmAsZSl9LGYucHJvdG90eXBlLnNvY2tldD1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXMubnNwc1tlXTtpZighbil7bj1uZXcgcih0aGlzLGUsdCksdGhpcy5uc3BzW2VdPW47dmFyIGk9dGhpcztuLm9uKGBjb25uZWN0aW5nYCxhKSxuLm9uKGBjb25uZWN0YCxmdW5jdGlvbigpe24uaWQ9aS5nZW5lcmF0ZUlkKGUpfSksdGhpcy5hdXRvQ29ubmVjdCYmYSgpfWZ1bmN0aW9uIGEoKXt+bChpLmNvbm5lY3Rpbmcsbil8fGkuY29ubmVjdGluZy5wdXNoKG4pfXJldHVybiBufSxmLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKGUpe3ZhciB0PWwodGhpcy5jb25uZWN0aW5nLGUpO350JiZ0aGlzLmNvbm5lY3Rpbmcuc3BsaWNlKHQsMSksIXRoaXMuY29ubmVjdGluZy5sZW5ndGgmJnRoaXMuY2xvc2UoKX0sZi5wcm90b3R5cGUucGFja2V0PWZ1bmN0aW9uKGUpe2MoYHdyaXRpbmcgcGFja2V0ICVqYCxlKTt2YXIgdD10aGlzO2UucXVlcnkmJmUudHlwZT09PTAmJihlLm5zcCs9YD9gK2UucXVlcnkpLHQuZW5jb2Rpbmc/dC5wYWNrZXRCdWZmZXIucHVzaChlKToodC5lbmNvZGluZz0hMCx0aGlzLmVuY29kZXIuZW5jb2RlKGUsZnVuY3Rpb24obil7Zm9yKHZhciByPTA7cjxuLmxlbmd0aDtyKyspdC5lbmdpbmUud3JpdGUobltyXSxlLm9wdGlvbnMpO3QuZW5jb2Rpbmc9ITEsdC5wcm9jZXNzUGFja2V0UXVldWUoKX0pKX0sZi5wcm90b3R5cGUucHJvY2Vzc1BhY2tldFF1ZXVlPWZ1bmN0aW9uKCl7aWYodGhpcy5wYWNrZXRCdWZmZXIubGVuZ3RoPjAmJiF0aGlzLmVuY29kaW5nKXt2YXIgZT10aGlzLnBhY2tldEJ1ZmZlci5zaGlmdCgpO3RoaXMucGFja2V0KGUpfX0sZi5wcm90b3R5cGUuY2xlYW51cD1mdW5jdGlvbigpe2MoYGNsZWFudXBgKTtmb3IodmFyIGU9dGhpcy5zdWJzLmxlbmd0aCx0PTA7dDxlO3QrKyl0aGlzLnN1YnMuc2hpZnQoKS5kZXN0cm95KCk7dGhpcy5wYWNrZXRCdWZmZXI9W10sdGhpcy5lbmNvZGluZz0hMSx0aGlzLmxhc3RQaW5nPW51bGwsdGhpcy5kZWNvZGVyLmRlc3Ryb3koKX0sZi5wcm90b3R5cGUuY2xvc2U9Zi5wcm90b3R5cGUuZGlzY29ubmVjdD1mdW5jdGlvbigpe2MoYGRpc2Nvbm5lY3RgKSx0aGlzLnNraXBSZWNvbm5lY3Q9ITAsdGhpcy5yZWNvbm5lY3Rpbmc9ITEsdGhpcy5yZWFkeVN0YXRlPT09YG9wZW5pbmdgJiZ0aGlzLmNsZWFudXAoKSx0aGlzLmJhY2tvZmYucmVzZXQoKSx0aGlzLnJlYWR5U3RhdGU9YGNsb3NlZGAsdGhpcy5lbmdpbmUmJnRoaXMuZW5naW5lLmNsb3NlKCl9LGYucHJvdG90eXBlLm9uY2xvc2U9ZnVuY3Rpb24oZSl7Yyhgb25jbG9zZWApLHRoaXMuY2xlYW51cCgpLHRoaXMuYmFja29mZi5yZXNldCgpLHRoaXMucmVhZHlTdGF0ZT1gY2xvc2VkYCx0aGlzLmVtaXQoYGNsb3NlYCxlKSx0aGlzLl9yZWNvbm5lY3Rpb24mJiF0aGlzLnNraXBSZWNvbm5lY3QmJnRoaXMucmVjb25uZWN0KCl9LGYucHJvdG90eXBlLnJlY29ubmVjdD1mdW5jdGlvbigpe2lmKHRoaXMucmVjb25uZWN0aW5nfHx0aGlzLnNraXBSZWNvbm5lY3QpcmV0dXJuIHRoaXM7dmFyIGU9dGhpcztpZih0aGlzLmJhY2tvZmYuYXR0ZW1wdHM+PXRoaXMuX3JlY29ubmVjdGlvbkF0dGVtcHRzKWMoYHJlY29ubmVjdCBmYWlsZWRgKSx0aGlzLmJhY2tvZmYucmVzZXQoKSx0aGlzLmVtaXRBbGwoYHJlY29ubmVjdF9mYWlsZWRgKSx0aGlzLnJlY29ubmVjdGluZz0hMTtlbHNle3ZhciB0PXRoaXMuYmFja29mZi5kdXJhdGlvbigpO2MoYHdpbGwgd2FpdCAlZG1zIGJlZm9yZSByZWNvbm5lY3QgYXR0ZW1wdGAsdCksdGhpcy5yZWNvbm5lY3Rpbmc9ITA7dmFyIG49c2V0VGltZW91dChmdW5jdGlvbigpe2Uuc2tpcFJlY29ubmVjdHx8KGMoYGF0dGVtcHRpbmcgcmVjb25uZWN0YCksZS5lbWl0QWxsKGByZWNvbm5lY3RfYXR0ZW1wdGAsZS5iYWNrb2ZmLmF0dGVtcHRzKSxlLmVtaXRBbGwoYHJlY29ubmVjdGluZ2AsZS5iYWNrb2ZmLmF0dGVtcHRzKSwhZS5za2lwUmVjb25uZWN0JiZlLm9wZW4oZnVuY3Rpb24odCl7dD8oYyhgcmVjb25uZWN0IGF0dGVtcHQgZXJyb3JgKSxlLnJlY29ubmVjdGluZz0hMSxlLnJlY29ubmVjdCgpLGUuZW1pdEFsbChgcmVjb25uZWN0X2Vycm9yYCx0LmRhdGEpKTooYyhgcmVjb25uZWN0IHN1Y2Nlc3NgKSxlLm9ucmVjb25uZWN0KCkpfSkpfSx0KTt0aGlzLnN1YnMucHVzaCh7ZGVzdHJveTpmdW5jdGlvbigpe2NsZWFyVGltZW91dChuKX19KX19LGYucHJvdG90eXBlLm9ucmVjb25uZWN0PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5iYWNrb2ZmLmF0dGVtcHRzO3RoaXMucmVjb25uZWN0aW5nPSExLHRoaXMuYmFja29mZi5yZXNldCgpLHRoaXMudXBkYXRlU29ja2V0SWRzKCksdGhpcy5lbWl0QWxsKGByZWNvbm5lY3RgLGUpfX0pKSxiYz1zKCgoZSx0KT0+e3ZhciBuPU1zKCkscj1CcygpLGk9eWMoKSxhPWpzKCkoYHNvY2tldC5pby1jbGllbnRgKTt0LmV4cG9ydHM9ZT1zO3ZhciBvPWUubWFuYWdlcnM9e307ZnVuY3Rpb24gcyhlLHQpe3R5cGVvZiBlPT1gb2JqZWN0YCYmKHQ9ZSxlPXZvaWQgMCksdHx8PXt9O3ZhciByPW4oZSkscz1yLnNvdXJjZSxjPXIuaWQsbD1yLnBhdGgsdT1vW2NdJiZsIGluIG9bY10ubnNwcyxkPXQuZm9yY2VOZXd8fHRbYGZvcmNlIG5ldyBjb25uZWN0aW9uYF18fCExPT09dC5tdWx0aXBsZXh8fHUsZjtyZXR1cm4gZD8oYShgaWdub3Jpbmcgc29ja2V0IGNhY2hlIGZvciAlc2AscyksZj1pKHMsdCkpOihvW2NdfHwoYShgbmV3IGlvIGluc3RhbmNlIGZvciAlc2Ascyksb1tjXT1pKHMsdCkpLGY9b1tjXSksci5xdWVyeSYmIXQucXVlcnkmJih0LnF1ZXJ5PXIucXVlcnkpLGYuc29ja2V0KHIucGF0aCx0KX1lLnByb3RvY29sPXIucHJvdG9jb2wsZS5jb25uZWN0PXMsZS5NYW5hZ2VyPXljKCksZS5Tb2NrZXQ9X2MoKX0pKSx4Yz1jKHtkZWZhdWx0OigpPT5TY30pO2Z1bmN0aW9uIFNjKGUsdCl7cmV0dXJuIHR8fD17fSxuZXcgUHJvbWlzZShmdW5jdGlvbihuLHIpe3ZhciBpPW5ldyBYTUxIdHRwUmVxdWVzdCxhPVtdLG89W10scz17fSxjPWZ1bmN0aW9uKCl7cmV0dXJue29rOihpLnN0YXR1cy8xMDB8MCk9PTIsc3RhdHVzVGV4dDppLnN0YXR1c1RleHQsc3RhdHVzOmkuc3RhdHVzLHVybDppLnJlc3BvbnNlVVJMLHRleHQ6ZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGkucmVzcG9uc2VUZXh0KX0sanNvbjpmdW5jdGlvbigpe3JldHVybiBQcm9taXNlLnJlc29sdmUoaS5yZXNwb25zZVRleHQpLnRoZW4oSlNPTi5wYXJzZSl9LGJsb2I6ZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG5ldyBCbG9iKFtpLnJlc3BvbnNlXSkpfSxjbG9uZTpjLGhlYWRlcnM6e2tleXM6ZnVuY3Rpb24oKXtyZXR1cm4gYX0sZW50cmllczpmdW5jdGlvbigpe3JldHVybiBvfSxnZXQ6ZnVuY3Rpb24oZSl7cmV0dXJuIHNbZS50b0xvd2VyQ2FzZSgpXX0saGFzOmZ1bmN0aW9uKGUpe3JldHVybiBlLnRvTG93ZXJDYXNlKClpbiBzfX19fTtmb3IodmFyIGwgaW4gaS5vcGVuKHQubWV0aG9kfHxgZ2V0YCxlLCEwKSxpLm9ubG9hZD1mdW5jdGlvbigpe2kuZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKCkucmVwbGFjZSgvXiguKj8pOlteXFNcbl0qKFtcc1xTXSo/KSQvZ20sZnVuY3Rpb24oZSx0LG4pe2EucHVzaCh0PXQudG9Mb3dlckNhc2UoKSksby5wdXNoKFt0LG5dKSxzW3RdPXNbdF0/c1t0XStgLGArbjpufSksbihjKCkpfSxpLm9uZXJyb3I9cixpLndpdGhDcmVkZW50aWFscz10LmNyZWRlbnRpYWxzPT1gaW5jbHVkZWAsdC5oZWFkZXJzKWkuc2V0UmVxdWVzdEhlYWRlcihsLHQuaGVhZGVyc1tsXSk7aS5zZW5kKHQuYm9keXx8bnVsbCl9KX12YXIgQ2M9bygoKCk9Pnt9KSksd2M9cygoKGUsdCk9Pnt0LmV4cG9ydHM9c2VsZi5mZXRjaHx8KHNlbGYuZmV0Y2g9KENjKCksZCh4YykpLmRlZmF1bHR8fChDYygpLGQoeGMpKSl9KSksVGM9cygoZT0+e3ZhciB0PWUmJmUuX19pbXBvcnREZWZhdWx0fHxmdW5jdGlvbihlKXtyZXR1cm4gZSYmZS5fX2VzTW9kdWxlP2U6e2RlZmF1bHQ6ZX19O09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGBfX2VzTW9kdWxlYCx7dmFsdWU6ITB9KSxlLmZldGNoQmFsYW5jZXJDb25maWc9dm9pZCAwO3ZhciBuPURzKCkscj10KHdjKCkpO2UuZmV0Y2hCYWxhbmNlckNvbmZpZz1mdW5jdGlvbihlKXtyZXR1cm4oMCxuLmRlYnVnKShgdXNpbmcgYmFsYW5jZXIgJHtlfSB0byBnZXQgd2Vic29ja2V0IHVybGApLCgwLHIuZGVmYXVsdCkoYCR7ZX1gKS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGU/LnVybCYmZT8udG9rZW4/KCgwLG4uZGVidWcpKGBiYWxhbmNlciByZXR1cm5zIHVybCAke2U/LnVybH0gYW5kIHRva2VuICR7ZT8udG9rZW59YCksZSk6KCgwLG4uZGVidWcpKGBiYWxhbmNlciByZXR1cm5zIGludmFsaWQgcmVzcG9uc2VgKSxudWxsKX0pLmNhdGNoKGZ1bmN0aW9uKGUpe3JldHVybigwLG4uZGVidWcpKGBmYWlsZWQgdG8gcmVzb2x2ZSB1cmw6ICR7ZS5tZXNzYWdlfWApLG51bGx9KX19KSksRWM9cygoZT0+e3ZhciB0PWUmJmUuX19leHRlbmRzfHwoZnVuY3Rpb24oKXt2YXIgZT1mdW5jdGlvbih0LG4pe3JldHVybiBlPU9iamVjdC5zZXRQcm90b3R5cGVPZnx8e19fcHJvdG9fXzpbXX1pbnN0YW5jZW9mIEFycmF5JiZmdW5jdGlvbihlLHQpe2UuX19wcm90b19fPXR9fHxmdW5jdGlvbihlLHQpe2Zvcih2YXIgbiBpbiB0KU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LG4pJiYoZVtuXT10W25dKX0sZSh0LG4pfTtyZXR1cm4gZnVuY3Rpb24odCxuKXtpZih0eXBlb2YgbiE9YGZ1bmN0aW9uYCYmbiE9PW51bGwpdGhyb3cgVHlwZUVycm9yKGBDbGFzcyBleHRlbmRzIHZhbHVlIGArU3RyaW5nKG4pK2AgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbGApO2UodCxuKTtmdW5jdGlvbiByKCl7dGhpcy5jb25zdHJ1Y3Rvcj10fXQucHJvdG90eXBlPW49PT1udWxsP09iamVjdC5jcmVhdGUobik6KHIucHJvdG90eXBlPW4ucHJvdG90eXBlLG5ldyByKX19KSgpLG49ZSYmZS5fX3NwcmVhZEFycmF5fHxmdW5jdGlvbihlLHQsbil7aWYobnx8YXJndW1lbnRzLmxlbmd0aD09PTIpZm9yKHZhciByPTAsaT10Lmxlbmd0aCxhO3I8aTtyKyspKGF8fCEociBpbiB0KSkmJihhfHw9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodCwwLHIpLGFbcl09dFtyXSk7cmV0dXJuIGUuY29uY2F0KGF8fEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKHQpKX0scj1lJiZlLl9faW1wb3J0RGVmYXVsdHx8ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJmUuX19lc01vZHVsZT9lOntkZWZhdWx0OmV9fTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5Tb2NrZXRNb2NrPXZvaWQgMDt2YXIgaT1EcygpO2UuU29ja2V0TW9jaz1mdW5jdGlvbihlKXt0KHIsZSk7ZnVuY3Rpb24gcih0KXt2YXIgbj1lLmNhbGwodGhpcyl8fHRoaXM7cmV0dXJuIG4ub3B0aW9ucz10LG4uaWQ9YG1vY2tgLG4uY29ubmVjdGVkPSExLG4uZGlzY29ubmVjdGVkPSEwLG4uYmluYXJ5VHlwZT1gYmxvYmAsbn1yZXR1cm4gci5wcm90b3R5cGUub3Blbj1mdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuKDAsaS5kZWJ1ZykoYFNvY2tldElPTW9jazogY29ubmVjdGApLHRoaXMub25jZShgdmlzaXRvci5jb25uZWN0YCxmdW5jdGlvbih0LG4pe24obnVsbCxlLm9wdGlvbnMuY29ubmVjdERhdGEpfSksdGhpcy5jb25uZWN0ZWQ9ITAsdGhpcy5kaXNjb25uZWN0ZWQ9ITEsdGhpcy5lbWl0KGBjb25uZWN0YCksdGhpc30sci5wcm90b3R5cGUuY2xvc2U9ZnVuY3Rpb24oKXtyZXR1cm4oMCxpLmRlYnVnKShgU29ja2V0SU9Nb2NrOiBkaXNjb25uZWN0YCksdGhpcy5jb25uZWN0ZWQ9ITEsdGhpcy5kaXNjb25uZWN0ZWQ9ITEsdGhpcy5lbWl0KGBkaXNjb25uZWN0YCxgaW8gY2xpZW50IGRpc2Nvbm5lY3RgKSx0aGlzfSxyLnByb3RvdHlwZS5lbWl0PWZ1bmN0aW9uKHQpe3ZhciByPVsuLi5hcmd1bWVudHNdLnNsaWNlKDEpO3JldHVybiBpLmRlYnVnLmFwcGx5KHZvaWQgMCxuKFtgU29ja2V0SU9Nb2NrOiBlbWl0YF0sciwhMSkpLCh0PT09YGNvbm5lY3RgfHx0PT09YGRpc2Nvbm5lY3RgfHx0PT09YHZpc2l0b3IuY29ubmVjdGApJiZlLnByb3RvdHlwZS5lbWl0LmFwcGx5KHRoaXMsbihbdF0sciwhMSkpLHRoaXN9LHIucHJvdG90eXBlLnNlbmQ9ZnVuY3Rpb24oKXt2YXIgZT1bLi4uYXJndW1lbnRzXTtyZXR1cm4gdGhpcy5lbWl0LmFwcGx5KHRoaXMsbihbZVswXV0sZS5zbGljZSgxKSwhMSkpfSxyLnByb3RvdHlwZS5jb21wcmVzcz1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxyLnByb3RvdHlwZS5jb25uZWN0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMub3BlbigpfSxyLnByb3RvdHlwZS5kaXNjb25uZWN0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY2xvc2UoKX0sci5wcm90b3R5cGUuaGFzTGlzdGVuZXJzPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmxpc3RlbmVyQ291bnQoZSk9PT0wfSxyLnByb3RvdHlwZS5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMuYWRkTGlzdGVuZXIoZSx0KSx0aGlzfSxyLnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMucmVtb3ZlTGlzdGVuZXIoZSx0KSx0aGlzfSxyfShyKE9zKCkpLmRlZmF1bHQpfSkpLERjPXMoKGU9Pnt2YXIgdD1lJiZlLl9fYXNzaWdufHxmdW5jdGlvbigpe3JldHVybiB0PU9iamVjdC5hc3NpZ258fGZ1bmN0aW9uKGUpe2Zvcih2YXIgdCxuPTEscj1hcmd1bWVudHMubGVuZ3RoO248cjtuKyspZm9yKHZhciBpIGluIHQ9YXJndW1lbnRzW25dLHQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsaSkmJihlW2ldPXRbaV0pO3JldHVybiBlfSx0LmFwcGx5KHRoaXMsYXJndW1lbnRzKX0sbj1lJiZlLl9fY3JlYXRlQmluZGluZ3x8KE9iamVjdC5jcmVhdGU/KGZ1bmN0aW9uKGUsdCxuLHIpe3I9PT12b2lkIDAmJihyPW4pO3ZhciBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxuKTsoIWl8fChgZ2V0YGluIGk/IXQuX19lc01vZHVsZTppLndyaXRhYmxlfHxpLmNvbmZpZ3VyYWJsZSkpJiYoaT17ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdFtuXX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxyLGkpfSk6KGZ1bmN0aW9uKGUsdCxuLHIpe3I9PT12b2lkIDAmJihyPW4pLGVbcl09dFtuXX0pKSxyPWUmJmUuX19leHBvcnRTdGFyfHxmdW5jdGlvbihlLHQpe2Zvcih2YXIgciBpbiBlKXIhPT1gZGVmYXVsdGAmJiFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxyKSYmbih0LGUscil9LGk9ZSYmZS5fX2F3YWl0ZXJ8fGZ1bmN0aW9uKGUsdCxuLHIpe2Z1bmN0aW9uIGkoZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiBuP2U6bmV3IG4oZnVuY3Rpb24odCl7dChlKX0pfXJldHVybiBuZXcobnx8PVByb21pc2UpKGZ1bmN0aW9uKG4sYSl7ZnVuY3Rpb24gbyhlKXt0cnl7YyhyLm5leHQoZSkpfWNhdGNoKGUpe2EoZSl9fWZ1bmN0aW9uIHMoZSl7dHJ5e2Moci50aHJvdyhlKSl9Y2F0Y2goZSl7YShlKX19ZnVuY3Rpb24gYyhlKXtlLmRvbmU/bihlLnZhbHVlKTppKGUudmFsdWUpLnRoZW4obyxzKX1jKChyPXIuYXBwbHkoZSx0fHxbXSkpLm5leHQoKSl9KX0sYT1lJiZlLl9fZ2VuZXJhdG9yfHxmdW5jdGlvbihlLHQpe3ZhciBuPXtsYWJlbDowLHNlbnQ6ZnVuY3Rpb24oKXtpZihhWzBdJjEpdGhyb3cgYVsxXTtyZXR1cm4gYVsxXX0sdHJ5czpbXSxvcHM6W119LHIsaSxhLG89T2JqZWN0LmNyZWF0ZSgodHlwZW9mIEl0ZXJhdG9yPT1gZnVuY3Rpb25gP0l0ZXJhdG9yOk9iamVjdCkucHJvdG90eXBlKTtyZXR1cm4gby5uZXh0PXMoMCksby50aHJvdz1zKDEpLG8ucmV0dXJuPXMoMiksdHlwZW9mIFN5bWJvbD09YGZ1bmN0aW9uYCYmKG9bU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSksbztmdW5jdGlvbiBzKGUpe3JldHVybiBmdW5jdGlvbih0KXtyZXR1cm4gYyhbZSx0XSl9fWZ1bmN0aW9uIGMocyl7aWYocil0aHJvdyBUeXBlRXJyb3IoYEdlbmVyYXRvciBpcyBhbHJlYWR5IGV4ZWN1dGluZy5gKTtmb3IoO28mJihvPTAsc1swXSYmKG49MCkpLG47KXRyeXtpZihyPTEsaSYmKGE9c1swXSYyP2kucmV0dXJuOnNbMF0/aS50aHJvd3x8KChhPWkucmV0dXJuKSYmYS5jYWxsKGkpLDApOmkubmV4dCkmJiEoYT1hLmNhbGwoaSxzWzFdKSkuZG9uZSlyZXR1cm4gYTtzd2l0Y2goaT0wLGEmJihzPVtzWzBdJjIsYS52YWx1ZV0pLHNbMF0pe2Nhc2UgMDpjYXNlIDE6YT1zO2JyZWFrO2Nhc2UgNDpyZXR1cm4gbi5sYWJlbCsrLHt2YWx1ZTpzWzFdLGRvbmU6ITF9O2Nhc2UgNTpuLmxhYmVsKyssaT1zWzFdLHM9WzBdO2NvbnRpbnVlO2Nhc2UgNzpzPW4ub3BzLnBvcCgpLG4udHJ5cy5wb3AoKTtjb250aW51ZTtkZWZhdWx0OmlmKChhPW4udHJ5cywhKGE9YS5sZW5ndGg+MCYmYVthLmxlbmd0aC0xXSkpJiYoc1swXT09PTZ8fHNbMF09PT0yKSl7bj0wO2NvbnRpbnVlfWlmKHNbMF09PT0zJiYoIWF8fHNbMV0+YVswXSYmc1sxXTxhWzNdKSl7bi5sYWJlbD1zWzFdO2JyZWFrfWlmKHNbMF09PT02JiZuLmxhYmVsPGFbMV0pe24ubGFiZWw9YVsxXSxhPXM7YnJlYWt9aWYoYSYmbi5sYWJlbDxhWzJdKXtuLmxhYmVsPWFbMl0sbi5vcHMucHVzaChzKTticmVha31hWzJdJiZuLm9wcy5wb3AoKSxuLnRyeXMucG9wKCk7Y29udGludWV9cz10LmNhbGwoZSxuKX1jYXRjaChlKXtzPVs2LGVdLGk9MH1maW5hbGx5e3I9YT0wfWlmKHNbMF0mNSl0aHJvdyBzWzFdO3JldHVybnt2YWx1ZTpzWzBdP3NbMV06dm9pZCAwLGRvbmU6ITB9fX0sbz1lJiZlLl9faW1wb3J0RGVmYXVsdHx8ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJmUuX19lc01vZHVsZT9lOntkZWZhdWx0OmV9fTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5Tb2NrZXRFcnJvcj12b2lkIDA7dmFyIHM9RHMoKSxjPW8oT3MoKSksbD1vKGJjKCkpLHU9VGMoKSxkPXt0cmFuc3BvcnRzOltgd2Vic29ja2V0YF0scGF0aDpgL3NvY2tldGAscmVjb25uZWN0aW9uOiEwLHJlY29ubmVjdGlvbkRlbGF5OjFlMyxyZWNvbm5lY3Rpb25EZWxheU1heDo1ZTMscmVjb25uZWN0aW9uQXR0ZW1wdHM6MS8wfTtlLmRlZmF1bHQ9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUpe3RoaXMub3B0aW9ucz1lLHRoaXMuaW5pdGlhbGl6ZWQ9ITEsdGhpcy5mb3JjZVJlY29ubmVjdD0hMSx0aGlzLmlkZW50aXR5PW51bGwsdGhpcy5jb25uZWN0aW9uPW51bGwsdGhpcy5jb25uZWN0Q2FsbGJhY2s9bnVsbCx0aGlzLmRpc2Nvbm5lY3RDYWxsYmFjaz1udWxsLHRoaXMuaW5pdERhdGE9bnVsbCx0aGlzLmludGVybmFsUmVjb25uZWN0aW9uPSExLHRoaXMuaW50ZXJuYWxSZWNvbm5lY3Rpbmc9ITEsdGhpcy5pbnRlcm5hbFJlY29ubmVjdGluZ0F0dGVtcHQ9MCx0aGlzLmVtaXR0ZXI9bmV3IGMuZGVmYXVsdCx0aGlzLnNlbmRCdWZmZXI9W10sdGhpcy5vcHRpb25zLm9wdGlvbnM9dCh0KHQoe30sZCksdGhpcy5vcHRpb25zLm9wdGlvbnMpLHthdXRvQ29ubmVjdDohMX0pfXJldHVybiBlLnByb3RvdHlwZS5pbml0Q29ubmVjdGlvbj1mdW5jdGlvbigpe3JldHVybiBpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBhKHRoaXMsZnVuY3Rpb24obil7c3dpdGNoKG4ubGFiZWwpe2Nhc2UgMDppZih0aGlzLmNvbm5lY3Rpb24pdGhyb3cgRXJyb3IoYENvbm5lY3Rpb24gYWxyZWFkeSBleGlzdHNgKTtyZXR1cm4gdGhpcy5vcHRpb25zLnNvY2tldD8oKDAscy5kZWJ1ZykoYHVzaW5nIHNvY2tldCAke3RoaXMub3B0aW9ucy5zb2NrZXQuaWR9YCksdGhpcy5pbnRlcm5hbFJlY29ubmVjdGlvbj0hMSx0aGlzLnNldENvbm5lY3Rpb24odGhpcy5vcHRpb25zLnNvY2tldCksWzMsNF0pOlszLDFdO2Nhc2UgMTpyZXR1cm4gdGhpcy5vcHRpb25zLmJhbGFuY2VyVXJsP1s0LCgwLHUuZmV0Y2hCYWxhbmNlckNvbmZpZykodGhpcy5vcHRpb25zLmJhbGFuY2VyVXJsKV06WzMsM107Y2FzZSAyOnJldHVybiBlPW4uc2VudCgpLCgwLHMuZGVidWcpKGBjcmVhdGluZyBzb2NrZXQgdG8gJHtlLnVybH0gd2l0aCB0b2tlbiAke2UudG9rZW59YCksdGhpcy5pbnRlcm5hbFJlY29ubmVjdGlvbj0hMCx0aGlzLnNldENvbm5lY3Rpb24oKDAsbC5kZWZhdWx0KShlLnVybCx0KHQoe30sdGhpcy5vcHRpb25zLm9wdGlvbnMpLHthdXRvQ29ubmVjdDohMSxyZWNvbm5lY3Rpb246ITEscXVlcnk6e3Rva2VuOmUudG9rZW59fSkpLCEwKSxbMyw0XTtjYXNlIDM6aWYodGhpcy5vcHRpb25zLnVybCkoMCxzLmRlYnVnKShgY3JlYXRpbmcgc29ja2V0IHRvICR7dGhpcy5vcHRpb25zLnVybH1gKSx0aGlzLmludGVybmFsUmVjb25uZWN0aW9uPSExLHRoaXMuc2V0Q29ubmVjdGlvbigoMCxsLmRlZmF1bHQpKHRoaXMub3B0aW9ucy51cmwsdCh0KHt9LHRoaXMub3B0aW9ucy5vcHRpb25zKSx7YXV0b0Nvbm5lY3Q6ITF9KSkpO2Vsc2UgdGhyb3cgRXJyb3IoYE1pc3NpbmcgcmVxdWlyZWQgcGFyYW1ldGVyIHVybGApO24ubGFiZWw9NDtjYXNlIDQ6cmV0dXJuWzJdfX0pfSl9LGUucHJvdG90eXBlLnNldENvbm5lY3Rpb249ZnVuY3Rpb24oZSxuKXt2YXIgcj10aGlzO249PT12b2lkIDAmJihuPSExKSx0aGlzLmNvbm5lY3Rpb249ZSx0aGlzLmZvcmNlUmVjb25uZWN0PSExLHRoaXMuaW50ZXJuYWxSZWNvbm5lY3Rpb249bixlLm9uKGBjb25uZWN0X2Vycm9yYCxmdW5jdGlvbihlKXtyLmludGVybmFsUmVjb25uZWN0aW9uJiYoci5jb25uZWN0Q2FsbGJhY2s9bnVsbCwoMCxzLmRlYnVnKShgY29ubmVjdGlvbiB3YXMgbm90IHJlY29ubmVjdGVkYCksci5lbWl0dGVyLmVtaXQoYHJlY29ubmVjdF9lcnJvcmAsZSksci5vcHRpb25zLm9wdGlvbnMucmVjb25uZWN0aW9uQXR0ZW1wdHM+ci5pbnRlcm5hbFJlY29ubmVjdGluZ0F0dGVtcHQrMT9yLnJlY29ubmVjdChyLmludGVybmFsUmVjb25uZWN0aW5nQXR0ZW1wdCsxKTpyLmVtaXR0ZXIuZW1pdChgcmVjb25uZWN0X2ZhaWxlZGAsci5pbnRlcm5hbFJlY29ubmVjdGluZ0F0dGVtcHQpKX0pLGUub24oYGNvbm5lY3RgLGZ1bmN0aW9uKCl7KDAscy5kZWJ1ZykoYHNvY2tldCB3YXMgY29ubmVjdGVkYCksci5pbml0aWFsaXplZD0hMSxyLmludGVybmFsUmVjb25uZWN0aW5nPygoMCxzLmRlYnVnKShgY29ubmVjdGlvbiBpcyByZWNvbm5lY3RlZGApLHIuZW1pdHRlci5lbWl0KGByZWNvbm5lY3RgKSxyLmludGVybmFsUmVjb25uZWN0aW5nPSExLHIuaW50ZXJuYWxSZWNvbm5lY3RpbmdBdHRlbXB0PTApOnIuZW1pdHRlci5lbWl0KGBjb25uZWN0YCksci5pbml0aWFsaXplKCkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4oMCxzLmRlYnVnKShgc29ja2V0IHdhcyBpbml0aWFsaXplZGApLHIub25Jbml0aWFsaXplZChlKSxyLmNvbm5lY3RDYWxsYmFjayYmPShyLmNvbm5lY3RDYWxsYmFjayhudWxsLGUpLG51bGwpLGV9KS5jYXRjaChmdW5jdGlvbihlKXsoMCxzLmRlYnVnKShgc29ja2V0IHdhcyBub3QgaW5pdGlhbGl6ZWQgYCx0KHt9LGUpKSxyLm9uSW5pdGlhbGl6ZUVycm9yKGUpLHIuY29ubmVjdENhbGxiYWNrJiY9KHIuY29ubmVjdENhbGxiYWNrKGUpLG51bGwpfSl9KSxlLm9uKGBkaXNjb25uZWN0YCxmdW5jdGlvbihlKXsoMCxzLmRlYnVnKShgc29ja2V0IHdhcyBkaXNjb25uZWN0ZWQgcmVhc29uPScke2V9J2ApLHIuaW5pdGlhbGl6ZWQ9ITEsKCFyLmludGVybmFsUmVjb25uZWN0aW5nfHxyLmludGVybmFsUmVjb25uZWN0aW5nQXR0ZW1wdD09PTEpJiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5lbWl0dGVyLmVtaXQoYGRpc2Nvbm5lY3RgLGUpLHIuZGlzY29ubmVjdENhbGxiYWNrJiY9KHIuZGlzY29ubmVjdENhbGxiYWNrKCksbnVsbCl9LDEwMCksci5vcHRpb25zLm9wdGlvbnMucmVjb25uZWN0aW9uJiZyLmludGVybmFsUmVjb25uZWN0aW9uJiYhci5pbnRlcm5hbFJlY29ubmVjdGluZyYmKHIuZm9yY2VSZWNvbm5lY3R8fGUhPT1gaW8gc2VydmVyIGRpc2Nvbm5lY3RgKSYmci5yZWNvbm5lY3QoKX0pLGUub24oYHJlY29ubmVjdGluZ2AsZnVuY3Rpb24oZSl7ci5lbWl0dGVyLmVtaXQoYHJlY29ubmVjdGluZ2AsZSl9KSxlLm9uKGByZWNvbm5lY3RgLGZ1bmN0aW9uKCl7ci5lbWl0dGVyLmVtaXQoYHJlY29ubmVjdGApfSksZS5vbihgcmVjb25uZWN0X2F0dGVtcHRgLGZ1bmN0aW9uKGUpe3IuZW1pdHRlci5lbWl0KGByZWNvbm5lY3RfYXR0ZW1wdGAsZSl9KSxlLm9uKGByZWNvbm5lY3RfZXJyb3JgLGZ1bmN0aW9uKGUpe3IuZW1pdHRlci5lbWl0KGByZWNvbm5lY3RfZXJyb3JgLGUpfSksZS5vbihgcmVjb25uZWN0X2ZhaWxlZGAsZnVuY3Rpb24oKXtyLmVtaXR0ZXIuZW1pdChgcmVjb25uZWN0X2ZhaWxlZGApfSksZS5vbihgZm9yY2VfcmVjb25uZWN0YCxmdW5jdGlvbigpeygwLHMuZGVidWcpKGByZWNlaXZlZCBldmVudCBmb3JjZV9yZWNvbm5lY3QsIHNldHRpbmcgZmxhZyBmb3JjZVJlY29ubmVjdCA9IHRydWVgKSxyLmZvcmNlUmVjb25uZWN0PSEwfSl9LGUucHJvdG90eXBlLmdldENvbm5lY3Rpb249ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb25uZWN0aW9ufSxlLnByb3RvdHlwZS5pc0Nvbm5lY3RlZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbm5lY3Rpb24/LmNvbm5lY3RlZHx8ITF9LGUucHJvdG90eXBlLmlzSW5pdGlhbGl6ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pbml0aWFsaXplZH0sZS5wcm90b3R5cGUuZ2V0SW5pdERhdGE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pbml0RGF0YX0sZS5wcm90b3R5cGUuY29ubmVjdD1mdW5jdGlvbigpe3JldHVybiBpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuIGEodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0aGlzLmNvbm5lY3Rpb24/WzMsMl06WzQsdGhpcy5pbml0Q29ubmVjdGlvbigpXTtjYXNlIDE6dC5zZW50KCksdC5sYWJlbD0yO2Nhc2UgMjpyZXR1cm5bMixuZXcgUHJvbWlzZShmdW5jdGlvbih0LG4pe2UuaW5pdGlhbGl6ZWQ/dChlLmluaXREYXRhKTooKDAscy5kZWJ1ZykoYHN0YXJ0aW5nIGNvbm5lY3RpbmdgKSxlLmNvbm5lY3RDYWxsYmFjaz0oMCxzLmNyZWF0ZUNhbGxiYWNrKSh0LG4pLGUuY29ubmVjdGlvbi5vcGVuKCkpfSldfX0pfSl9LGUucHJvdG90eXBlLmRpc2Nvbm5lY3Q9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbih0LG4peyFlLmNvbm5lY3Rpb258fGUuY29ubmVjdGlvbi5kaXNjb25uZWN0ZWQ/KGUuY29ubmVjdGlvbj1udWxsLHQoKSk6KCgwLHMuZGVidWcpKGBzdGFydGluZyBkaXNjb25uZWN0aW5nYCksZS5kaXNjb25uZWN0Q2FsbGJhY2s9KDAscy5jcmVhdGVDYWxsYmFjaykodCxuKSxlLmNvbm5lY3Rpb24uY2xvc2UoKSxlLmNvbm5lY3Rpb249bnVsbCl9KX0sZS5wcm90b3R5cGUucmVjb25uZWN0PWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cmV0dXJuIGU9PT12b2lkIDAmJihlPTEpLHRoaXMuaW50ZXJuYWxSZWNvbm5lY3Rpbmc9ITAsdGhpcy5pbnRlcm5hbFJlY29ubmVjdGluZ0F0dGVtcHQ9ZSx0aGlzLmRpc2Nvbm5lY3QoKS50aGVuKGZ1bmN0aW9uKCl7dmFyIG49TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKih0Lm9wdGlvbnMub3B0aW9ucy5yZWNvbm5lY3Rpb25EZWxheU1heC10Lm9wdGlvbnMub3B0aW9ucy5yZWNvbm5lY3Rpb25EZWxheSkrdC5vcHRpb25zLm9wdGlvbnMucmVjb25uZWN0aW9uRGVsYXkpO3JldHVybigwLHMuZGVidWcpKGBjb25uZWN0aW9uIHdpbGwgcmVjb25uZWN0IGluICR7bn1tc2ApLHQuZW1pdHRlci5lbWl0KGByZWNvbm5lY3RpbmdgLGUpLG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUpe3NldFRpbWVvdXQoZSxuKX0pfSkudGhlbihmdW5jdGlvbigpe3JldHVybigwLHMuZGVidWcpKGBjb25uZWN0aW9uIGlzIHN0YXJ0aW5nIHJlY29ubmVjdGApLHQuZW1pdHRlci5lbWl0KGByZWNvbm5lY3RfYXR0ZW1wdGAsZSksdC5jb25uZWN0KCl9KX0sZS5wcm90b3R5cGUuaW5pdGlhbGl6ZT1mdW5jdGlvbigpe3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihlKXtlKHt9KX0pfSxlLnByb3RvdHlwZS5vbkluaXRpYWxpemVkPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7dGhpcy5pbml0aWFsaXplZHx8KHRoaXMuaW5pdGlhbGl6ZWQ9ITAsdGhpcy5pbml0RGF0YT1lLCgwLHMuZGVidWcpKGBlbWl0IGluaXRpYWxpemVkYCksdGhpcy5lbWl0dGVyLmVtaXQoYGluaXRpYWxpemVkYCxlKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aWYodC5zZW5kQnVmZmVyLmxlbmd0aD4wKXsoMCxzLmRlYnVnKShgc2VuZGluZyBidWZmZXJlZCAke3Quc2VuZEJ1ZmZlci5sZW5ndGh9IGV2ZW50c2ApO2Zvcih2YXIgZT0wO2U8dC5zZW5kQnVmZmVyLmxlbmd0aDtlKyspe3ZhciBuPXQuc2VuZEJ1ZmZlcltlXTt0LmNvbm5lY3Rpb24uZW1pdChuLm5hbWUsbi5kYXRhLG4uY2FsbGJhY2spfXQuc2VuZEJ1ZmZlcj1bXX19LDEpKX0sZS5wcm90b3R5cGUub25Jbml0aWFsaXplRXJyb3I9ZnVuY3Rpb24oZSl7dGhpcy5kaXNjb25uZWN0KCksKDAscy5kZWJ1ZykoYGVtaXQgaW5pdGlhbGl6ZV9lcnJvcmAsdCh7fSxlKSksdGhpcy5lbWl0dGVyLmVtaXQoYGluaXRpYWxpemVfZXJyb3JgLGUpfSxlLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKGUsdCxuKXt0aGlzLmluaXRpYWxpemVkP3RoaXMuY29ubmVjdGlvbi5lbWl0KGUsdCxuKTp0aGlzLnNlbmRCdWZmZXIucHVzaCh7bmFtZTplLGRhdGE6dCxjYWxsYmFjazpufSl9LGUucHJvdG90eXBlLm9uPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMuZW1pdHRlci5vbihlLHQpLHRoaXN9LGUucHJvdG90eXBlLm9uY2U9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5lbWl0dGVyLm9uY2UoZSx0KSx0aGlzfSxlLnByb3RvdHlwZS5yZW1vdmVBbGxMaXN0ZW5lcnM9ZnVuY3Rpb24oKXtmb3IodmFyIGUsdD1bXSxuPTA7bjxhcmd1bWVudHMubGVuZ3RoO24rKyl0W25dPWFyZ3VtZW50c1tuXTtyZXR1cm4oZT10aGlzLmVtaXR0ZXIpLnJlbW92ZUFsbExpc3RlbmVycy5hcHBseShlLHQpLHRoaXN9LGV9KCk7dmFyIGY9RHMoKTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgU29ja2V0RXJyb3JgLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBmLlNvY2tldEVycm9yfX0pLHIoRWMoKSxlKX0pKSxPYz1zKChlPT57dmFyIHQ9ZSYmZS5fX2V4dGVuZHN8fChmdW5jdGlvbigpe3ZhciBlPWZ1bmN0aW9uKHQsbil7cmV0dXJuIGU9T2JqZWN0LnNldFByb3RvdHlwZU9mfHx7X19wcm90b19fOltdfWluc3RhbmNlb2YgQXJyYXkmJmZ1bmN0aW9uKGUsdCl7ZS5fX3Byb3RvX189dH18fGZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuIGluIHQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsbikmJihlW25dPXRbbl0pfSxlKHQsbil9O3JldHVybiBmdW5jdGlvbih0LG4pe2lmKHR5cGVvZiBuIT1gZnVuY3Rpb25gJiZuIT09bnVsbCl0aHJvdyBUeXBlRXJyb3IoYENsYXNzIGV4dGVuZHMgdmFsdWUgYCtTdHJpbmcobikrYCBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsYCk7ZSh0LG4pO2Z1bmN0aW9uIHIoKXt0aGlzLmNvbnN0cnVjdG9yPXR9dC5wcm90b3R5cGU9bj09PW51bGw/T2JqZWN0LmNyZWF0ZShuKTooci5wcm90b3R5cGU9bi5wcm90b3R5cGUsbmV3IHIpfX0pKCksbj1lJiZlLl9fYXNzaWdufHxmdW5jdGlvbigpe3JldHVybiBuPU9iamVjdC5hc3NpZ258fGZ1bmN0aW9uKGUpe2Zvcih2YXIgdCxuPTEscj1hcmd1bWVudHMubGVuZ3RoO248cjtuKyspZm9yKHZhciBpIGluIHQ9YXJndW1lbnRzW25dLHQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsaSkmJihlW2ldPXRbaV0pO3JldHVybiBlfSxuLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0scj1lJiZlLl9fYXdhaXRlcnx8ZnVuY3Rpb24oZSx0LG4scil7ZnVuY3Rpb24gaShlKXtyZXR1cm4gZSBpbnN0YW5jZW9mIG4/ZTpuZXcgbihmdW5jdGlvbih0KXt0KGUpfSl9cmV0dXJuIG5ldyhufHw9UHJvbWlzZSkoZnVuY3Rpb24obixhKXtmdW5jdGlvbiBvKGUpe3RyeXtjKHIubmV4dChlKSl9Y2F0Y2goZSl7YShlKX19ZnVuY3Rpb24gcyhlKXt0cnl7YyhyLnRocm93KGUpKX1jYXRjaChlKXthKGUpfX1mdW5jdGlvbiBjKGUpe2UuZG9uZT9uKGUudmFsdWUpOmkoZS52YWx1ZSkudGhlbihvLHMpfWMoKHI9ci5hcHBseShlLHR8fFtdKSkubmV4dCgpKX0pfSxpPWUmJmUuX19nZW5lcmF0b3J8fGZ1bmN0aW9uKGUsdCl7dmFyIG49e2xhYmVsOjAsc2VudDpmdW5jdGlvbigpe2lmKGFbMF0mMSl0aHJvdyBhWzFdO3JldHVybiBhWzFdfSx0cnlzOltdLG9wczpbXX0scixpLGEsbz1PYmplY3QuY3JlYXRlKCh0eXBlb2YgSXRlcmF0b3I9PWBmdW5jdGlvbmA/SXRlcmF0b3I6T2JqZWN0KS5wcm90b3R5cGUpO3JldHVybiBvLm5leHQ9cygwKSxvLnRocm93PXMoMSksby5yZXR1cm49cygyKSx0eXBlb2YgU3ltYm9sPT1gZnVuY3Rpb25gJiYob1tTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSxvO2Z1bmN0aW9uIHMoZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe3JldHVybiBjKFtlLHRdKX19ZnVuY3Rpb24gYyhzKXtpZihyKXRocm93IFR5cGVFcnJvcihgR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLmApO2Zvcig7byYmKG89MCxzWzBdJiYobj0wKSksbjspdHJ5e2lmKHI9MSxpJiYoYT1zWzBdJjI/aS5yZXR1cm46c1swXT9pLnRocm93fHwoKGE9aS5yZXR1cm4pJiZhLmNhbGwoaSksMCk6aS5uZXh0KSYmIShhPWEuY2FsbChpLHNbMV0pKS5kb25lKXJldHVybiBhO3N3aXRjaChpPTAsYSYmKHM9W3NbMF0mMixhLnZhbHVlXSksc1swXSl7Y2FzZSAwOmNhc2UgMTphPXM7YnJlYWs7Y2FzZSA0OnJldHVybiBuLmxhYmVsKysse3ZhbHVlOnNbMV0sZG9uZTohMX07Y2FzZSA1Om4ubGFiZWwrKyxpPXNbMV0scz1bMF07Y29udGludWU7Y2FzZSA3OnM9bi5vcHMucG9wKCksbi50cnlzLnBvcCgpO2NvbnRpbnVlO2RlZmF1bHQ6aWYoKGE9bi50cnlzLCEoYT1hLmxlbmd0aD4wJiZhW2EubGVuZ3RoLTFdKSkmJihzWzBdPT09Nnx8c1swXT09PTIpKXtuPTA7Y29udGludWV9aWYoc1swXT09PTMmJighYXx8c1sxXT5hWzBdJiZzWzFdPGFbM10pKXtuLmxhYmVsPXNbMV07YnJlYWt9aWYoc1swXT09PTYmJm4ubGFiZWw8YVsxXSl7bi5sYWJlbD1hWzFdLGE9czticmVha31pZihhJiZuLmxhYmVsPGFbMl0pe24ubGFiZWw9YVsyXSxuLm9wcy5wdXNoKHMpO2JyZWFrfWFbMl0mJm4ub3BzLnBvcCgpLG4udHJ5cy5wb3AoKTtjb250aW51ZX1zPXQuY2FsbChlLG4pfWNhdGNoKGUpe3M9WzYsZV0saT0wfWZpbmFsbHl7cj1hPTB9aWYoc1swXSY1KXRocm93IHNbMV07cmV0dXJue3ZhbHVlOnNbMF0/c1sxXTp2b2lkIDAsZG9uZTohMH19fSxhPWUmJmUuX19pbXBvcnREZWZhdWx0fHxmdW5jdGlvbihlKXtyZXR1cm4gZSYmZS5fX2VzTW9kdWxlP2U6e2RlZmF1bHQ6ZX19O09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGBfX2VzTW9kdWxlYCx7dmFsdWU6ITB9KSxlLldlYnNvY2tldFZpc2l0b3JDbGllbnQ9dm9pZCAwO3ZhciBvPWEoRGMoKSkscz1EcygpLGM9ZnVuY3Rpb24oZSl7dChhLGUpO2Z1bmN0aW9uIGEodCl7dmFyIG49ZS5jYWxsKHRoaXMsdC5jb25uZWN0aW9uKXx8dGhpcztyZXR1cm4gbi5zZXJ2ZXJWZXJzaW9uPW51bGwsbi51cGRhdGVkVmFsdWVzPXt9LG4uY29ubmVjdERhdGE9dC5kYXRhLG4uaWRlbnRpdHk9bnVsbCxufXJldHVybiBhLnByb3RvdHlwZS5zZXRDb25uZWN0aW9uPWZ1bmN0aW9uKHQpe2UucHJvdG90eXBlLnNldENvbm5lY3Rpb24uY2FsbCh0aGlzLHQpLHQub24oYHNlcnZlci5lcnJvcmAsKDAscy5ib3VuZCkodGhpcyxgb25TZXJ2ZXJFcnJvcmApKSx0Lm9uKGBhY2NvdW50LnVwZGF0ZWRgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBhY2NvdW50LnVwZGF0ZWRgKSksdC5vbihgYWdlbnQudXBkYXRlZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGFnZW50LnVwZGF0ZWRgKSksdC5vbihgYWdlbnQuc3RhdHVzX3VwZGF0ZWRgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBhZ2VudC5zdGF0dXNfdXBkYXRlZGApKSx0Lm9uKGBhZ2VudC5yZW1vdmVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgYWdlbnQucmVtb3ZlZGApKSx0Lm9uKGB2aXNpdG9yLnVwZGF0ZWRgLCgwLHMuYm91bmQpKHRoaXMsYG9uVmlzaXRvclVwZGF0ZWRgKSksdC5vbihgY2hhdC51cGRhdGVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC51cGRhdGVkYCkpLHQub24oYGNoYXQuYWdlbnRfam9pbmVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC5hZ2VudF9qb2luZWRgKSksdC5vbihgY2hhdC5hZ2VudF9hc3NpZ25lZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQuYWdlbnRfYXNzaWduZWRgKSksdC5vbihgY2hhdC5hZ2VudF91bmFzc2lnbmVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC5hZ2VudF91bmFzc2lnbmVkYCkpLHQub24oYGNoYXQuYWdlbnRfbGVmdGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQuYWdlbnRfbGVmdGApKSx0Lm9uKGBjaGF0Lm9wZW5lZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQub3BlbmVkYCkpLHQub24oYGNoYXQuc2VydmVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC5zZXJ2ZWRgKSksdC5vbihgY2hhdC5jbG9zZWRgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBjaGF0LmNsb3NlZGApKSx0Lm9uKGBjaGF0LnZpc2l0b3JfY2xvc2VkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC52aXNpdG9yX2Nsb3NlZGApKSx0Lm9uKGBjaGF0Lm1lc3NhZ2VfcmVjZWl2ZWRgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBjaGF0Lm1lc3NhZ2VfcmVjZWl2ZWRgKSksdC5vbihgY2hhdC5tZXNzYWdlX3VwZGF0ZWRgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBjaGF0Lm1lc3NhZ2VfdXBkYXRlZGApKSx0Lm9uKGBjaGF0Lm1lc3NhZ2VfZGVsZXRlZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQubWVzc2FnZV9kZWxldGVkYCkpLHQub24oYGNoYXQuYWdlbnRfdHlwaW5nYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC5hZ2VudF90eXBpbmdgKSksdC5vbihgY2hhdC5yYXRlZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQucmF0ZWRgKSksdC5vbihgY2hhdC5yYXRpbmdfY2FuY2VsbGVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC5yYXRpbmdfY2FuY2VsbGVkYCkpLHQub24oYGNoYXQucmF0aW5nX3N1Z2dlc3RlZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQucmF0aW5nX3N1Z2dlc3RlZGApKSx0Lm9uKGBjaGF0LmNvbnRhY3RfcmVhZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQuY29udGFjdF9yZWFkYCkpLHQub24oYGNoYXQuZGVsZXRlZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQuZGVsZXRlZGApKSx0Lm9uKGBjaGF0LnRpY2tldF9mb3JtX2ZpbmlzaGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQudGlja2V0X2Zvcm1fZmluaXNoYCkpLHQub24oYGNoYXQudHJhbnNjcmlwdF9wZGZgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBjaGF0LnRyYW5zY3JpcHRfcGRmYCkpLHQub24oYGNvbnRhY3QuYWNxdWlyZWRgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBjb250YWN0LmFjcXVpcmVkYCkpLHQub24oYGlkZW50aXR5LnN0YXR1c191cGRhdGVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgaWRlbnRpdHkuc3RhdHVzX3VwZGF0ZWRgKSl9LGEucHJvdG90eXBlLm9uPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMuZW1pdHRlci5vbihlLHQpLHRoaXN9LGEucHJvdG90eXBlLm9uY2U9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5lbWl0dGVyLm9uY2UoZSx0KSx0aGlzfSxhLnByb3RvdHlwZS5nZXRJZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmlkZW50aXR5P3RoaXMuaWRlbnRpdHkuaWQ6bnVsbH0sYS5wcm90b3R5cGUuZ2V0SWRlbnRpdHk9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pZGVudGl0eX0sYS5wcm90b3R5cGUuY29ubmVjdD1mdW5jdGlvbigpe3JldHVybiBlLnByb3RvdHlwZS5jb25uZWN0LmNhbGwodGhpcyl9LGEucHJvdG90eXBlLmRpc2Nvbm5lY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gcih0aGlzLGFyZ3VtZW50cyx2b2lkIDAsZnVuY3Rpb24odCl7dmFyIG49dGhpcztyZXR1cm4gdD09PXZvaWQgMCYmKHQ9ITEpLGkodGhpcyxmdW5jdGlvbihyKXtzd2l0Y2goci5sYWJlbCl7Y2FzZSAwOnJldHVybiB0P1s0LG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUsdCl7bi5zZW5kKGB2aXNpdG9yLmxvZ291dGAse30sKDAscy5jcmVhdGVDYWxsYmFjaykoZSx0KSl9KV06WzMsMl07Y2FzZSAxOnIuc2VudCgpLHIubGFiZWw9MjtjYXNlIDI6cmV0dXJuWzIsZS5wcm90b3R5cGUuZGlzY29ubmVjdC5jYWxsKHRoaXMpXX19KX0pfSxhLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0IGluIGU9PT12b2lkIDAmJihlPXt9KSx0aGlzLmNoZWNrU2VydmVyVmVyc2lvbigpLGUpdGhpcy5pZGVudGl0eVt0XT1lW3RdLHRoaXMudXBkYXRlZFZhbHVlc1t0XT1lW3RdO3RoaXMuc2F2ZVZpc2l0b3JWYWx1ZXMoKX0sYS5wcm90b3R5cGUuYXV0aGVudGljYXRlPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cmV0dXJuIHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24obixyKXt0LnNlbmQoYHZpc2l0b3IuYXV0aGVudGljYXRlYCx7dmFsdWVzOmV9LCgwLHMuY3JlYXRlQ2FsbGJhY2spKG4scikpfSl9LGEucHJvdG90eXBlLm5vdGlmeT1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXM7cmV0dXJuIHQ9PT12b2lkIDAmJih0PW51bGwpLHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24ocixpKXtuLnNlbmQoYHZpc2l0b3Iubm90aWZ5YCx7bmFtZTplLHZhbHVlOnR9LCgwLHMuY3JlYXRlQ2FsbGJhY2spKHIsaSkpfSl9LGEucHJvdG90eXBlLmNoYXRSZWFkPWZ1bmN0aW9uKCl7dGhpcy5jaGVja1NlcnZlclZlcnNpb24oKSx0aGlzLnNlbmQoYGNoYXQucmVhZGAsbnVsbCl9LGEucHJvdG90eXBlLmNoYXRUeXBpbmc9ZnVuY3Rpb24oZSx0KXt0PT09dm9pZCAwJiYodD1udWxsKSx0aGlzLmNoZWNrU2VydmVyVmVyc2lvbigpLHRoaXMuc2VuZChgY2hhdC50eXBpbmdgLHt0eXBpbmc6e2lzOmUsdGV4dDp0fX0pfSxhLnByb3RvdHlwZS5jaGF0TWVzc2FnZT1mdW5jdGlvbihlKXt2YXIgdD10aGlzO3JldHVybiB0aGlzLmNoZWNrU2VydmVyVmVyc2lvbigpLG5ldyBQcm9taXNlKGZ1bmN0aW9uKG4scil7dC5zZW5kKGBjaGF0Lm1lc3NhZ2VgLGUsKDAscy5jcmVhdGVDYWxsYmFjaykobixyKSl9KX0sYS5wcm90b3R5cGUuY2hhdENsb3NlPWZ1bmN0aW9uKGUpe2U9PT12b2lkIDAmJihlPW51bGwpLHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksdGhpcy5zZW5kKGBjaGF0LmNsb3NlYCx7dHlwZTplfSl9LGEucHJvdG90eXBlLmNoYXRVcGxvYWRJbml0PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztyZXR1cm4gdGhpcy5jaGVja1NlcnZlclZlcnNpb24oKSxuZXcgUHJvbWlzZShmdW5jdGlvbih0LG4pe2Uuc2VuZChgY2hhdC51cGxvYWRfaW5pdGAsbnVsbCwoMCxzLmNyZWF0ZUNhbGxiYWNrKSh0LG4pKX0pfSxhLnByb3RvdHlwZS5jaGF0VXBsb2FkRmluaXNoPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cmV0dXJuIHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24obixyKXt0LnNlbmQoYGNoYXQudXBsb2FkX2ZpbmlzaGAse3VwbG9hZFRva2VuOmV9LCgwLHMuY3JlYXRlQ2FsbGJhY2spKG4scikpfSl9LGEucHJvdG90eXBlLmNoYXRUcmFuc2NyaXB0PWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcztyZXR1cm4gdGhpcy5jaGVja1NlcnZlclZlcnNpb24oKSxuZXcgUHJvbWlzZShmdW5jdGlvbihyLGkpe24uc2VuZChgY2hhdC50cmFuc2NyaXB0YCx7ZW1haWw6ZSxsYW5nOnR9LCgwLHMuY3JlYXRlQ2FsbGJhY2spKHIsaSkpfSl9LGEucHJvdG90eXBlLmNoYXRUaWNrZXRGb3JtRmluaXNoPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cmV0dXJuIHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24obixyKXt0LnNlbmQoYGNoYXQudGlja2V0X2Zvcm1fZmluaXNoYCxlLCgwLHMuY3JlYXRlQ2FsbGJhY2spKG4scikpfSl9LGEucHJvdG90eXBlLmNoYXRSYXRlSW5pdD1mdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuIHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24odCxuKXtlLnNlbmQoYGNoYXQucmF0ZV9pbml0YCxudWxsLCgwLHMuY3JlYXRlQ2FsbGJhY2spKHQsbikpfSl9LGEucHJvdG90eXBlLmNoYXRSYXRlPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cmV0dXJuIHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24obixyKXt0LnNlbmQoYGNoYXQucmF0ZWAsZSwoMCxzLmNyZWF0ZUNhbGxiYWNrKShuLHIpKX0pfSxhLnByb3RvdHlwZS5jaGF0VHJhbnNjcmlwdFBkZj1mdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuIHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24odCxuKXtlLnNlbmQoYGNoYXQudHJhbnNjcmlwdF9wZGZgLG51bGwsKDAscy5jcmVhdGVDYWxsYmFjaykodCxuKSl9KX0sYS5wcm90b3R5cGUubGlua09wZW5lZD1mdW5jdGlvbihlKXt2YXIgdD10aGlzO3JldHVybiB0aGlzLmNoZWNrU2VydmVyVmVyc2lvbigpLG5ldyBQcm9taXNlKGZ1bmN0aW9uKG4scil7dC5zZW5kKGBjaGF0Lmxpbmtfb3BlbmVkYCxlLCgwLHMuY3JlYXRlQ2FsbGJhY2spKG4scikpfSl9LGEucHJvdG90eXBlLnZpc2l0b3JDb25uZWN0PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PW4oe3ZlcnNpb246YS5DTElFTlRfVkVSU0lPTn0sdGhpcy5jb25uZWN0RGF0YSk7Zm9yKHZhciByIGluIHRoaXMudXBkYXRlZFZhbHVlcyl0W3JdPXRoaXMudXBkYXRlZFZhbHVlc1tyXTtpZih0aGlzLnVwZGF0ZWRWYWx1ZXM9e30sdGhpcy5pZGVudGl0eSlmb3IodmFyIHIgaW4gdGhpcy5pZGVudGl0eSlbYGJhbm5lZEF0YCxgY2hhdElkYCxgc3RhdHVzYF0uaW5jbHVkZXMocil8fCh0W3JdPXRoaXMuaWRlbnRpdHlbcl0pO3JldHVybiB0aGlzLmVtaXR0ZXIuZW1pdChgaW5pdGlhbGl6ZWAsdCksbmV3IFByb21pc2UoZnVuY3Rpb24obixyKXtlLmNvbm5lY3Rpb24uZW1pdChgdmlzaXRvci5jb25uZWN0YCx0LCgwLHMuY3JlYXRlQ2FsbGJhY2spKG4scikpfSl9LGEucHJvdG90eXBlLnZpc2l0b3JEaXNjb25uZWN0PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24odCxuKXtlLmNvbm5lY3Rpb24uZW1pdChgdmlzaXRvci5kaXNjb25uZWN0YCx7fSwoMCxzLmNyZWF0ZUNhbGxiYWNrKSh0LG4pKX0pfSxhLnByb3RvdHlwZS5vblZpc2l0b3JVcGRhdGVkPWZ1bmN0aW9uKGUpe3ZhciB0PXt9O2Zvcih2YXIgbiBpbiBlLmNoYW5nZXMpYS5pZGVudGl0eVByb3BlcnRpZXMuaW5jbHVkZXMobikmJih0aGlzLmlkZW50aXR5JiYodGhpcy5pZGVudGl0eVtuXT1lLmNoYW5nZXNbbl0pLHRbbl09ZS5jaGFuZ2VzW25dKTtPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0KS5sZW5ndGg+MCYmdGhpcy5lbWl0dGVyLmVtaXQoYHZpc2l0b3IudXBkYXRlZGAsdCl9LGEucHJvdG90eXBlLm9uU2VydmVyRXJyb3I9ZnVuY3Rpb24oZSl7dmFyIHQ9KDAscy5jcmVhdGVTb2NrZXRFcnJvcikoZSk7dGhpcy5lbWl0dGVyLmVtaXQoYGVycm9yYCx0KX0sYS5wcm90b3R5cGUuaW5pdGlhbGl6ZT1mdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuIHRoaXMudmlzaXRvckNvbm5lY3QoKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBlLnNlcnZlclZlcnNpb249dC5zZXJ2ZXJWZXJzaW9uLGUuaWRlbnRpdHk9bihuKHt9LHQudmlzaXRvcikse3ZhcmlhYmxlczpuKHt9LHQudmlzaXRvci52YXJpYWJsZXMpfSksdH0pfSxhLnByb3RvdHlwZS5zYXZlVmlzaXRvclZhbHVlcz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5pbml0aWFsaXplZCYmc2V0VGltZW91dChmdW5jdGlvbigpe2lmKCEoIWUuaW5pdGlhbGl6ZWR8fE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGUudXBkYXRlZFZhbHVlcykubGVuZ3RoPT09MCkpe3ZhciB0PXt9O2Zvcih2YXIgbiBpbiBlLnVwZGF0ZWRWYWx1ZXMpdFtuXT1lLnVwZGF0ZWRWYWx1ZXNbbl07ZS5zZW5kKGB2aXNpdG9yLnVwZGF0ZWAse3ZhbHVlczp0fSksZS51cGRhdGVkVmFsdWVzPXt9fX0sMSl9LGEucHJvdG90eXBlLmNoZWNrU2VydmVyVmVyc2lvbj1mdW5jdGlvbigpe2lmKHRoaXMuc2VydmVyVmVyc2lvbj09PW51bGwpdGhyb3cgRXJyb3IoYENsaWVudCBub3QgeWV0IGNvbm5lY3RlZCB0byBzZXJ2ZXJgKX0sYS5DTElFTlRfVkVSU0lPTj02LGEuaWRlbnRpdHlQcm9wZXJ0aWVzPVtgaWRgLGBuYW1lYCxgZW1haWxgLGBwaG9uZWAsYGNoYXRJZGAsYHZhcmlhYmxlc2AsYGxhbmdgLGBncm91cGAsYGJhbm5lZEF0YCxgdHJpZ2dlcmFibGVgLGB2aXNpdHNgLGBnZHByQXBwcm92ZWRgXSxhfShvLmRlZmF1bHQpO2UuV2Vic29ja2V0VmlzaXRvckNsaWVudD1jLChmdW5jdGlvbihlKXsoZnVuY3Rpb24oZSl7ZS5XaWRnZXRPcGVuPWB3aWRnZXRfb3BlbmAsZS5XaWRnZXRTaG93PWB3aWRnZXRfc2hvd2AsZS5WaXNpdG9yQWN0aXZlPWB2aXNpdG9yX2FjdGl2ZWAsZS5WaXNpdG9ySW5hY3RpdmU9YHZpc2l0b3JfaW5hY3RpdmVgfSkoZS5FdmVudE5hbWV8fD17fSl9KShjfHwoZS5XZWJzb2NrZXRWaXNpdG9yQ2xpZW50PWM9e30pKX0pKSxrYz1zKChlPT57T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYF9fZXNNb2R1bGVgLHt2YWx1ZTohMH0pfSkpLEFjPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5SYXRpbmdUYXJnZXQ9dm9pZCAwO3ZhciB0OyhmdW5jdGlvbihlKXtlLkFnZW50PWBhZ2VudGAsZS5BaT1gYWlgfSkodHx8KGUuUmF0aW5nVGFyZ2V0PXQ9e30pKX0pKSxqYz1zKChlPT57T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYF9fZXNNb2R1bGVgLHt2YWx1ZTohMH0pLGUuTWVzc2FnZURlbGl2ZXJ5RmFpbFJlYXNvbj1lLk1lc3NhZ2VEZWxpdmVyeVN0YXR1cz1lLkFnZW50RGV2aWNlUGxhdGZvcm09ZS5BZ2VudERldmljZVR5cGU9ZS5WaXNpdG9yU3RhdHVzPWUuQ2hhdFJlYWRJbmZvVHlwZT1lLkNoYXRTdGF0dXM9ZS5BZ2VudFN0YXR1cz1lLkFjY291bnRTdGF0dXM9dm9pZCAwLGUuQWNjb3VudFN0YXR1cz17T25saW5lOmBvbmxpbmVgLE9mZmxpbmU6YG9mZmxpbmVgLE9mZmxpbmVXaXRoQUk6YG9mZmxpbmVXaXRoQWlgfSxlLkFnZW50U3RhdHVzPXtPbmxpbmU6YG9ubGluZWAsT2ZmbGluZTpgb2ZmbGluZWB9LGUuQ2hhdFN0YXR1cz17UGVuZGluZzpgcGVuZGluZ2AsT3Blbjpgb3BlbmAsQ2xvc2VkOmBjbG9zZWRgLFNlcnZlZDpgc2VydmVkYH0sZS5DaGF0UmVhZEluZm9UeXBlPXtBZ2VudDpgYWdlbnRgLENvbnRhY3Q6YGNvbnRhY3RgfSxlLlZpc2l0b3JTdGF0dXM9e0FjdGl2ZTpgYWN0aXZlYCxDbGlja2VkOmBjbGlja2VkYCxJZGxlOmBpZGxlYCxTZXJ2ZWQ6YHNlcnZlZGAsVW5zZXJ2ZWQ6YHVuc2VydmVkYCxUcmlnZ2VyZWQ6YHRyaWdnZXJlZGB9LGUuQWdlbnREZXZpY2VUeXBlPXtCcm93c2VyOmBicm93c2VyYCxNb2JpbGU6YG1vYmlsZWAsWG1wcDpgeG1wcGAsT3RoZXI6YG90aGVyYH0sZS5BZ2VudERldmljZVBsYXRmb3JtPXtJT1M6YGlvc2AsQU5EUk9JRDpgYW5kcm9pZGB9LGUuTWVzc2FnZURlbGl2ZXJ5U3RhdHVzPXtPazpgb2tgLFBlcm1hbmVudEZhaWw6YHBlcm1hbmVudF9mYWlsYCxUZW1wb3JhcnlGYWlsOmB0ZW1wb3JhcnlfZmFpbGAsQ29tcGxhaW5lZDpgY29tcGxhaW5lZGAsU2Vlbjpgc2VlbmB9LGUuTWVzc2FnZURlbGl2ZXJ5RmFpbFJlYXNvbj17RmFjZWJvb2syNGhXaW5kb3c6YGZhY2Vib29rLm91dHNpZGVfYWxsb3dlZF93aW5kb3dgLEluc3RhZ3JhbUV4Y2VlZGVkRmlsZVNpemU6YGluc3RhZ3JhbS5leGNlZWRlZF9maWxlX3NpemVgLEluc3RhZ3JhbVVua25vd246YGluc3RhZ3JhbS51bmtub3duYCxJbnN0YWdyYW1VbnN1cHBvcnRlZEZpbGVUeXBlOmBpbnN0YWdyYW0udW5zdXBwb3J0ZWRfZmlsZV90eXBlYCxXaGF0c2FwcFVuc3VwcG9ydGVkRmlsZTpgd2hhdHNhcHAudW5zdXBwb3J0ZWRfZmlsZV90eXBlYCxXaGF0c2FwcFVua25vd246YHdoYXRzYXBwLnVua25vd25gfX0pKSxNYz1zKChlPT57dmFyIHQ9ZSYmZS5fX2NyZWF0ZUJpbmRpbmd8fChPYmplY3QuY3JlYXRlPyhmdW5jdGlvbihlLHQsbixyKXtyPT09dm9pZCAwJiYocj1uKTt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsbik7KCFpfHwoYGdldGBpbiBpPyF0Ll9fZXNNb2R1bGU6aS53cml0YWJsZXx8aS5jb25maWd1cmFibGUpKSYmKGk9e2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRbbl19fSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUscixpKX0pOihmdW5jdGlvbihlLHQsbixyKXtyPT09dm9pZCAwJiYocj1uKSxlW3JdPXRbbl19KSksbj1lJiZlLl9fZXhwb3J0U3Rhcnx8ZnVuY3Rpb24oZSxuKXtmb3IodmFyIHIgaW4gZSlyIT09YGRlZmF1bHRgJiYhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4scikmJnQobixlLHIpfTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5Tb2NrZXRFcnJvcj1lLmRlZmF1bHQ9dm9pZCAwO3ZhciByPU9jKCk7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYGRlZmF1bHRgLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiByLldlYnNvY2tldFZpc2l0b3JDbGllbnR9fSksbihPYygpLGUpLG4oa2MoKSxlKSxuKEFjKCksZSk7dmFyIGk9RHMoKTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgU29ja2V0RXJyb3JgLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBpLlNvY2tldEVycm9yfX0pLG4oamMoKSxlKX0pKSxOYz1PKG51bGwpLFBjPU8oITEpLEZjPU8oW10pLEljPWU9PntGYy51cGRhdGUodD0+Wy4uLnQsZV0pfSxMYz0oKT0+e2xldCBlO3JldHVybiBGYy51cGRhdGUodD0+KGU9dC5wb3AoKSx0KSksZT8/bnVsbH0sUmM9KCk9PkEoRmMpLmxlbmd0aD09PTAsemM9ayhOYyxlPT5lIT09bnVsbCksQmM9KGUse3VzZVN0YWNrOnQ9ITF9PXt9KT0+e05jLnVwZGF0ZShuPT4odCYmbiYmSWMobiksUGMuc2V0KG4hPT1udWxsKSxlKSl9LFZjPSgpPT57bGV0IGU9bnVsbDtSYygpfHwoZT1MYygpKSxOYy5zZXQoZSl9LEhjPWZ1bmN0aW9uKGUpe3JldHVybiBlW2UuT3B0aW9ucz0wXT1gT3B0aW9uc2AsZVtlLkdkcHJBbmRQcml2YWN5PTFdPWBHZHByQW5kUHJpdmFjeWAsZVtlLkF1dGhGb3JtPTJdPWBBdXRoRm9ybWAsZVtlLkNsb3NlQ2hhdD0zXT1gQ2xvc2VDaGF0YCxlW2UuQ2hhdFJhdGluZz00XT1gQ2hhdFJhdGluZ2AsZVtlLlRpY2tldEZvcm09NV09YFRpY2tldEZvcm1gLGV9KHt9KSxVYz0xZTMsV2M9U3ltYm9sKGBjb250ZW50TGlzdEl0ZW1gKSxHYz1TeW1ib2woYGNvbnRlbnRNZXNzYWdlQXR0YWNobWVudGApLEtjPWAtcmVwbGllc2AscWM9LjM1LEpjPTVlMyxZYz1zKChlPT57T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYF9fZXNNb2R1bGVgLHt2YWx1ZTohMH0pfSkpLFhjPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5DYXJkQWN0aW9uVHlwZT1lLkNhcmRzTGF5b3V0PXZvaWQgMCxlLkNhcmRzTGF5b3V0PXtDYXJvdXNlbDpgY2Fyb3VzZWxgfSxlLkNhcmRBY3Rpb25UeXBlPXtPcGVuVXJsOmBvcGVuX3VybGB9fSkpLFpjPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSl9KSksUWM9cygoZT0+e09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGBfX2VzTW9kdWxlYCx7dmFsdWU6ITB9KSxlLlJhdGluZ1RhcmdldD1lLkdyb3VwVHlwZT1lLkNoYW5uZWxUeXBlPWUuTWVzc2FnZVN1YlR5cGU9ZS5NZXNzYWdlVHlwZT1lLkF0dGFjaG1lbnRJbnZhbGlkUmVhc29uPWUuQXR0YWNobWVudFR5cGU9ZS5NZXNzYWdlQWN0aW9uVHlwZT12b2lkIDAsZS5NZXNzYWdlQWN0aW9uVHlwZT17VGV4dDpgdGV4dGAsT3BlblVybDpgb3Blbl91cmxgfSxlLkF0dGFjaG1lbnRUeXBlPXtDYXJkczpgY2FyZHNgLEZpbGU6YGZpbGVgLEltYWdlOmBpbWFnZWAsTWVkaWE6YG1lZGlhYCxJbnZhbGlkOmBpbnZhbGlkYH0sZS5BdHRhY2htZW50SW52YWxpZFJlYXNvbj17SW52YWxpZFNpemU6YGludmFsaWRfc2l6ZWAsSW52YWxpZFR5cGU6YGludmFsaWRfdHlwZWB9LGUuTWVzc2FnZVR5cGU9e01lc3NhZ2U6YG1lc3NhZ2VgLE5vdGU6YG5vdGVgLEV2ZW50OmBldmVudGAsSGVscDpgaGVscGB9LGUuTWVzc2FnZVN1YlR5cGU9e0FnZW50OmBhZ2VudGAsQ29udGFjdDpgY29udGFjdGAsVHJpZ2dlcjpgdHJpZ2dlcmAsQm90OmBib3RgLFN5c3RlbTpgc3lzdGVtYCxBZ2VudEV4dGVybmFsOmBhZ2VudF9leHRlcm5hbGAsRm91bmRFbWFpbDpgZm91bmRfZW1haWxgLENoYXRSZXNvbHZlOmBjaGF0X3Jlc29sdmVgLEVtYWlsOmBlbWFpbGB9LGUuQ2hhbm5lbFR5cGU9e0RlZmF1bHQ6YGRlZmF1bHRgLEVtYWlsOmBlbWFpbGAsRW1haWxJbnRlZ3JhdGlvbjpgZW1haWxfaW50ZWdyYXRpb25gLEZhY2Vib29rTWVzc2VuZ2VyOmBmYWNlYm9va19tZXNzZW5nZXJgLEdtYWlsOmBnbWFpbGAsU21hcnRzdXBwOmBzbWFydHN1cHBgLEluc3RhZ3JhbTpgaW5zdGFncmFtYCxXaGF0c2FwcDpgd2hhdHNhcHBgfTt2YXIgdDsoZnVuY3Rpb24oZSl7ZS5haT1gYWlgLGUuY2hhdGJvdD1gY2hhdGJvdGAsZS5tZXNzYWdlPWBtZXNzYWdlYH0pKHR8fChlLkdyb3VwVHlwZT10PXt9KSk7dmFyIG47KGZ1bmN0aW9uKGUpe2UuQWdlbnQ9YGFnZW50YCxlLkFpPWBhaWB9KShufHwoZS5SYXRpbmdUYXJnZXQ9bj17fSkpfSkpLCRjPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5QYXJ0aWNpcGFudFR5cGU9dm9pZCAwO3ZhciB0OyhmdW5jdGlvbihlKXtlLmZyb209YGZyb21gLGUudG89YHRvYCxlLmNjPWBjY2AsZS5iY2M9YGJjY2B9KSh0fHwoZS5QYXJ0aWNpcGFudFR5cGU9dD17fSkpfSkpLGVsPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5NZXNzYWdlQ29udGVudFR5cGU9ZS5NZXNzYWdlQ29udGVudD12b2lkIDA7dmFyIHQ7KGZ1bmN0aW9uKGUpeyhmdW5jdGlvbihlKXtlLlR5cGU9e1RleHQ6YHRleHRgLFVwbG9hZDpgdXBsb2FkYCxSYXRlRm9ybTpgcmF0ZV9mb3JtYCxUaWNrZXRGb3JtOmB0aWNrZXRfZm9ybWAsRW1haWw6YGVtYWlsYH19KShlLk1lc3NhZ2V8fD17fSksKGZ1bmN0aW9uKGUpe2UuVHlwZT17QWdlbnRKb2luOmBhZ2VudF9qb2luYCxBZ2VudEFzc2lnbjpgYWdlbnRfYXNzaWduYCxBZ2VudFVuYXNzaWduOmBhZ2VudF91bmFzc2lnbmAsQWdlbnRMZWF2ZTpgYWdlbnRfbGVhdmVgLENoYXRDbG9zZTpgY2hhdF9jbG9zZWAsQ2hhdFZpc2l0b3JDbG9zZTpgY2hhdF92aXNpdG9yX2Nsb3NlYH19KShlLkV2ZW50fHw9e30pLChmdW5jdGlvbihlKXtlLlR5cGU9e1RleHQ6YHRleHRgLEZvdW5kRW1haWw6YGZvdW5kX2VtYWlsYH19KShlLkhlbHB8fD17fSl9KSh0fHwoZS5NZXNzYWdlQ29udGVudD10PXt9KSksZS5NZXNzYWdlQ29udGVudFR5cGU9ey4uLnQuTWVzc2FnZS5UeXBlLC4uLnQuRXZlbnQuVHlwZSwuLi50LkhlbHAuVHlwZX19KSksdGw9cygoZT0+e09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGBfX2VzTW9kdWxlYCx7dmFsdWU6ITB9KX0pKSxubD1zKChlPT57dmFyIHQ9ZSYmZS5fX2NyZWF0ZUJpbmRpbmd8fChPYmplY3QuY3JlYXRlPyhmdW5jdGlvbihlLHQsbixyKXtyPT09dm9pZCAwJiYocj1uKTt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsbik7KCFpfHwoYGdldGBpbiBpPyF0Ll9fZXNNb2R1bGU6aS53cml0YWJsZXx8aS5jb25maWd1cmFibGUpKSYmKGk9e2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRbbl19fSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUscixpKX0pOihmdW5jdGlvbihlLHQsbixyKXtyPT09dm9pZCAwJiYocj1uKSxlW3JdPXRbbl19KSksbj1lJiZlLl9fZXhwb3J0U3Rhcnx8ZnVuY3Rpb24oZSxuKXtmb3IodmFyIHIgaW4gZSlyIT09YGRlZmF1bHRgJiYhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4scikmJnQobixlLHIpfTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksbihZYygpLGUpLG4oWGMoKSxlKSxuKFpjKCksZSksbihRYygpLGUpLG4oJGMoKSxlKSxuKGVsKCksZSksbih0bCgpLGUpfSkpLHJsPShlLHQpPT57bGV0IG49e307Zm9yKGxldCByIG9mIHQpe2xldCB0PVN0cmluZyhyW2VdKTtuW3RdPXJ9cmV0dXJuIG59LGlsPSgoKT0+e2xldHtzdWJzY3JpYmU6ZSxzZXQ6dH09Tyh7fSk7cmV0dXJue3N1YnNjcmliZTplLHNldEdyb3VwczplPT57dChybChga2V5YCxlKSl9fX0pKCksYWw9ayhbaWxdLChbZV0pPT5PYmplY3QudmFsdWVzKGUpKSxvbD17YXV0aEZvcm1EcmF3ZXI6YGF1dGhGb3JtRHJhd2VyYCxhdXRoRm9ybVByaXZhY3lOb3RpY2U6YGF1dGhGb3JtUHJpdmFjeU5vdGljZWAsYXV0aEZvcm1Qcml2YWN5Tm90aWNlU3dpdGNoOmBhdXRoRm9ybVByaXZhY3lOb3RpY2VTd2l0Y2hgLGF1dGhGb3JtU3VibWl0QnV0dG9uOmBhdXRoRm9ybVN1Ym1pdEJ1dHRvbmAsYXZhdGFyQWdlbnQ6YGF2YXRhckFnZW50YCxhdmF0YXJCb3Q6YGF2YXRhckJvdGAsYXZhdGFyR3JvdXA6YGF2YXRhckdyb3VwYCxhdmF0YXJJbmZvOmBhdmF0YXJJbmZvYCxidXR0b25BdHRhY2htZW50OmBidXR0b25BdHRhY2htZW50YCxidXR0b25DbG9zZUNoYXQ6YGJ1dHRvbkNsb3NlQ2hhdGAsYnV0dG9uQ2xvc2VEcmF3ZXI6YGJ1dHRvbkNsb3NlRHJhd2VyYCxidXR0b25Db2xsYXBzZUNoYXQ6YGJ1dHRvbkNvbGxhcHNlQ2hhdGAsYnV0dG9uRW1vamk6YGJ1dHRvbkVtb2ppYCxidXR0b25FeHBhbmRDaGF0OmBidXR0b25FeHBhbmRDaGF0YCxidXR0b25NaW5pbWl6ZUNoYXQ6YGJ1dHRvbk1pbmltaXplQ2hhdGAsYnV0dG9uT3B0aW9uczpgYnV0dG9uT3B0aW9uc2AsYnV0dG9uU2VuZDpgYnV0dG9uU2VuZGAsY2hhdFJhdGluZ0RyYXdlcjpgY2hhdFJhdGluZ0RyYXdlcmAsY2hhdFJhdGluZ0Vtb2ppQnV0dG9uOmBjaGF0UmF0aW5nRW1vamlgLGNoYXRSYXRpbmdTZW5kQnV0dG9uOmBjaGF0UmF0aW5nU2VuZEJ1dHRvbmAsY2hhdFJhdGluZ1RleHRhcmVhOmBjaGF0UmF0aW5nVGV4dGFyZWFgLGNoYXRSYXRpbmdGZWVkYmFja0J1dHRvbjpgY2hhdFJhdGluZ0ZlZWRiYWNrQnV0dG9uYCxjaGF0UmF0aW5nQnV0dG9uQWk6YGNoYXRSYXRpbmdCdXR0b25BaWAsY2hhdFJhdGluZ0J1dHRvbkFnZW50OmBjaGF0UmF0aW5nQnV0dG9uQWdlbnRgLGNsb3NlQ2hhdENvbmZpcm1CdXR0b246YGNsb3NlQ2hhdENvbmZpcm1CdXR0b25gLGNsb3NlQ2hhdERlY2xpbmVCdXR0b246YGNsb3NlQ2hhdERlY2xpbmVCdXR0b25gLGNsb3NlQ2hhdERyYXdlcjpgY2xvc2VDaGF0RHJhd2VyYCxmbGFzaE1lc3NhZ2U6YGZsYXNoTWVzc2FnZWAsZ2RwckRyYXdlcjpgZ2RwckRyYXdlcmAsaGVhZGVyVGl0bGU6YGhlYWRlclRpdGxlYCxoZWFkZXJTdGF0dXM6YGhlYWRlclN0YXR1c2AsaGVhZGVyQmFkZ2U6YGhlYWRlckJhZGdlYCxpbmxpbmVFbW9qaVBpY2tlcjpgaW5saW5lRW1vamlQaWNrZXJgLG1lc3NhZ2VBdHRhY2htZW50OmBtZXNzYWdlQXR0YWNobWVudGAsbWVzc2FnZUFnZW50OmBtZXNzYWdlQWdlbnRgLG1lc3NhZ2VCb3Q6YG1lc3NhZ2VCb3RgLG1lc3NhZ2VCb3RSZXBseTpgbWVzc2FnZUJvdFJlcGx5YCxtZXNzYWdlQm90QmFjazpgbWVzc2FnZUJvdEJhY2tgLG1lc3NhZ2VDb250YWN0OmBtZXNzYWdlQ29udGFjdGAsbWVzc2FnZUZpbGU6YG1lc3NhZ2VGaWxlYCxtZXNzYWdlR3JvdXA6YG1lc3NhZ2VHcm91cGAsbWVzc2FnZUltYWdlOmBtZXNzYWdlSW1hZ2VgLG9wdGlvbnNBY2Nlc3NpYmlsaXR5OmBvcHRpb25zQWNjZXNzaWJpbGl0eWAsb3B0aW9uc0RyYXdlcjpgb3B0aW9uc0RyYXdlcmAsb3B0aW9uc0V4cGFuZENoYXQ6YG9wdGlvbnNFeHBhbmRDaGF0YCxvcHRpb25zUHJpdmFjeU5vdGljZTpgb3B0aW9uc1ByaXZhY3lOb3RpY2VgLG9wdGlvbnNTb3VuZHM6YG9wdGlvbnNTb3VuZHNgLG9wdGlvbnNUcmFuc2NyaXB0OmBvcHRpb25zVHJhbnNjcmlwdGAscG9wdXA6YHBvcHVwYCxwb3B1cE1lc3NhZ2U6YHBvcHVwTWVzc2FnZWAscG9wdXBCdXR0b246YHBvcHVwQnV0dG9uYCxwb3B1cEJ1dHRvbkNsb3NlOmBwb3B1cEJ1dHRvbkNsb3NlYCxwcm9kdWN0Q2FyZDpgcHJvZHVjdENhcmRgLHByb2R1Y3RDYXJkQXJyb3dMZWZ0OmBwcm9kdWN0Q2FyZEFycm93TGVmdGAscHJvZHVjdENhcmRBcnJvd1JpZ2h0OmBwcm9kdWN0Q2FyZEFycm93UmlnaHRgLHByb2R1Y3RDYXJkQnV0dG9uOmBwcm9kdWN0Q2FyZEJ1dHRvbmAscHJvZHVjdENhcmRDYXJvdXNlbDpgcHJvZHVjdENhcmRDYXJvdXNlbGAscHJvZHVjdENhcmREZXNjcmlwdGlvbjpgcHJvZHVjdENhcmREZXNjcmlwdGlvbmAscHJvZHVjdENhcmRJbWFnZTpgcHJvZHVjdENhcmRJbWFnZWAscHJvZHVjdENhcmRJbmZvOmBwcm9kdWN0Q2FyZEluZm9gLHByb2R1Y3RDYXJkVGl0bGU6YHByb2R1Y3RDYXJkVGl0bGVgLHN5c3RlbU1lc3NhZ2U6YHN5c3RlbU1lc3NhZ2VgLHRleHRhcmVhOmB0ZXh0YXJlYWAsdGV4dGFyZWFQcmV2aWV3RmlsZTpgdGV4dGFyZWFQcmV2aWV3RmlsZWAsdGV4dGFyZWFQcmV2aWV3SW1hZ2U6YHRleHRhcmVhUHJldmlld0ltYWdlYCx0cmFuc2NyaXB0SW5wdXQ6YHRyYW5zY3JpcHRJbnB1dGAsdHJhbnNjcmlwdFNlbmRCdXR0b246YHRyYW5zY3JpcHRTZW5kYCx0aWNrZXRGb3JtRHJhd2VyOmB0aWNrZXRGb3JtRHJhd2VyYCx0aWNrZXRGb3JtU3VibWl0QnV0dG9uOmB0aWNrZXRGb3JtU3VibWl0QnV0dG9uYCx3aWRnZXRCdXR0b246YHdpZGdldEJ1dHRvbmAsd2lkZ2V0QnV0dG9uRnJhbWU6YHdpZGdldEJ1dHRvbkZyYW1lYCx3aWRnZXRCdXR0b25UZXh0OmB3aWRnZXRCdXR0b250ZXh0YCx3aWRnZXRJbWFnZVByZXZpZXc6YHdpZGdldEltYWdlUHJldmlld2Asd2lkZ2V0TWVzc2VuZ2VyOmB3aWRnZXRNZXNzZW5nZXJgLHdpZGdldE1lc3NlbmdlckZyYW1lOmB3aWRnZXRNZXNzZW5nZXJGcmFtZWAsd2lkZ2V0T25saW5lQmFkZ2U6YHdpZGdldE9ubGluZUJhZGdlYCx3aWRnZXRQb3B1cEZyYW1lOmB3aWRnZXRQb3B1cEZyYW1lYCx3aWRnZXRUeXBpbmdGcmFtZTpgd2lkZ2V0VHlwaW5nRnJhbWVgLHdpZGdldFVucmVhZE1lc3NhZ2VzQmFkZ2U6YHdpZGdldFVucmVhZE1lc3NhZ2VzQmFkZ2VgLHdpZGdldEhlYWRlcjpgd2lkZ2V0SGVhZGVyYH0sc2w9YGh0dHBzOi8vd3d3LnNtYXJ0c3VwcC5jb21gLGNsPWAvcG93ZXJlZC1ieS1zbWFydHN1cHBgLGxsPVtgY3NgLGBlc2AsYGZyYCxgaHVgLGBpdGAsYGRlYCxgbmxgLGBwbGBdLHVsPWBodHRwczovL3d3dy5zbWFydHN1cHAuY29tL215LWRhdGEtYW5kLWdkcHJgLGRsPU8oITEpLGZsPXJzKFUuU2Vzc2lvbklkLGBgKSxwbD0oKT0+e2xldHtwcm90b2NvbDplLGhvc3Q6dH09Vi5nZXRPcHRpb25zKCk7cmV0dXJuYCR7ZT09PWBodHRwYD9gaHR0cGA6YGh0dHBzYH06Ly8ke3R9YH0sbWw9KCk9PntsZXR7bW9iaWxlU2RrOmUsdmlzaXRvcklkOnR9PVYuZ2V0T3B0aW9ucygpO2lmKGUmJnQpcmV0dXJuIHQ7dHJ5e3JldHVybiAkbygpfWNhdGNoKGUpe3JldHVybiBIKFN0cmluZyhlKSksbnVsbH19LGhsPShlLHQpPT57bGV0IG49Zm8oKS5sb2NhdGlvbi5ocmVmO3JldHVybiBlJiZ0JiYobj1gJHtufSR7bi5pbmNsdWRlcyhgP2ApP2AmYDpgP2B9c3MtYm90LXJ1bj0ke3R9YCksbn0sZ2w9KCk9PntKLmNsZWFyTWVzc2FnZXMoKSxtZCgpLEd1LmNsZWFyQXNzaWduZWRBZ2VudElkcygpLFJvKCksa28oVS5WaXNpdG9ySWQpfSxfbD1lPT57dHJ5e2VzKGUpfWNhdGNoKGUpe0goU3RyaW5nKGUpKX19LHZsPWFzeW5jKGU9ITEpPT57bGV0e2tleTp0LGxhbmc6bixpc1ByZXZpZXdNb2RlOnIscHJldmlld1dpdGhvdXRSZXNldDppLHNpdGVQbGF0Zm9ybTphLHRyaWdnZXJhYmxlOm8sX2NoYXRNYXhSZW9wZW5UaW1lOnMsYm90SWQ6Y309Vi5nZXRPcHRpb25zKCk7KHImJiFpfHxlKSYmZ2woKTtsZXQgbD1tbCgpLHU9QShsYik7cmV0dXJue2tleTp0LGlkOmwsY2xpZW50RmluZ2VycHJpbnQ6YXdhaXQgUW8oKSxpc1ByZXZpZXdNb2RlOnIsc2l0ZVBsYXRmb3JtOmEsdHJpZ2dlcmFibGU6byxfY2hhdE1heFJlb3BlblRpbWU6cyxuYW1lOnUubmFtZSxlbWFpbDp1LmVtYWlsLHBob25lOnUucGhvbmUsZ3JvdXA6dS5ncm91cCxsYW5nOnUubGFuZz8/bix2YXJpYWJsZXM6dS52YXJpYWJsZXMsd2lkZ2V0VmVyc2lvbjpgMy4wYCx2aXNpdHM6dHMoKSxpc1dpZGdldFZpc2libGU6QShSXyksaXNXaWRnZXRPcGVuOkEoWCkscGFnZVVybDpobChyLGMpLHBhZ2VUaXRsZTpmbygpLmRvY3VtZW50LnRpdGxlLGRvbWFpbjpmbygpLmxvY2F0aW9uLmhvc3RuYW1lfHxgdW5rbm93bmAscmVmZXJlcjpmbygpLmRvY3VtZW50LnJlZmVycmVyLGJ1bmRsZVZlcnNpb246YGUwN2MyMDhhMzhlNmY1MDg0YzhlYjQ2MGI5NThhNDJmNzc4YTU5NjVgfX0seWw9KGUsdCk9PntsZXR7aXNQcmV2aWV3TW9kZTpufT1WLmdldE9wdGlvbnMoKTshZSYmdCE9PUEoZmwpJiYhbiYmKGdsKCksQShYKSYmWC5zZXQoITEpKSxmbC5zZXQodCl9LGJsPSgoKT0+e2xldHtzdWJzY3JpYmU6ZSxzZXQ6dH09TygpO3JldHVybntzdWJzY3JpYmU6ZSxpbml0aWFsaXplOmU9PnQoZSl9fSkoKSx4bD1gRklMRWAsU2w9MmUzLENsPWU9PmUuc3BsaXQoYC9gKVswXT09PWBpbWFnZWAsd2w9ZT0+ISFlLm1hdGNoKC9edmlkZW9cLyg/Om1wNHx3ZWJtfG9nZyl7MX0kLyk7YXN5bmMgZnVuY3Rpb24gVGwoZSl7aWYoIUZpbGVSZWFkZXIpcmV0dXJuIGpvKGBGaWxlUmVhZGVyIG5vdCBzdXBwb3J0ZWRgKSxudWxsO2xldCB0PW5ldyBGaWxlUmVhZGVyO3JldHVybiBuZXcgUHJvbWlzZShuPT57dC5vbmxvYWQ9KCk9PntpZighdC5yZXN1bHQpe24obnVsbCk7cmV0dXJufW4odHlwZW9mIHQucmVzdWx0PT1gc3RyaW5nYCYmdC5yZXN1bHQuc3RhcnRzV2l0aChgZGF0YTppbWFnZWApP3QucmVzdWx0Om51bGwpfSx0Lm9uZXJyb3I9KCk9PntqbyhgRmFpbGVkIHRvIGxvYWQgaW1hZ2UgZGF0YWApLG4obnVsbCl9LHQucmVhZEFzRGF0YVVSTChlKX0pfWFzeW5jIGZ1bmN0aW9uIEVsKGUpe3JldHVybiBuZXcgUHJvbWlzZSh0PT57bGV0IG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChgaW1nYCk7bi5vbmxvYWQ9KCk9Pnt0KHt3aWR0aDpuLndpZHRoLGhlaWdodDpuLmhlaWdodH0pfSxuLm9uZXJyb3I9KCk9PntqbyhgRmFpbGVkIHRvIG9idGFpbiBpbWFnZSBkaW1lbnNpb25zYCksdChudWxsKX0sbi5zcmM9ZX0pfWZ1bmN0aW9uIERsKGUpe3JldHVybntob3Jpem9udGFsOmUud2lkdGg+ZS5oZWlnaHQsdmVydGljYWw6ZS5oZWlnaHQ+ZS53aWR0aH19dmFyIE9sPWBhci5hei5iZy5ici5icy5jYS5jbi5jcy5kYS5kZS5lbC5lbi5lcy5ldC5mYS5maS5maWwuZnIuaGUuaGkuaHIuaHUuaXMuaXQuamEua2EubHQubHYubWsubmwubm8ucGwucHQucm8ucnUuc2suc2wuc3Iuc3YudGgudHIudHcudWtgLnNwbGl0KGAuYCksa2w9cygoZT0+e3ZhciB0PWUmJmUuX19pbXBvcnREZWZhdWx0fHxmdW5jdGlvbihlKXtyZXR1cm4gZSYmZS5fX2VzTW9kdWxlP2U6e2RlZmF1bHQ6ZX19O09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGBfX2VzTW9kdWxlYCx7dmFsdWU6ITB9KSxlLkZldGNoQWRhcHRlcj12b2lkIDA7dmFyIG49dChhYygpKTtlLkZldGNoQWRhcHRlcj1jbGFzcyBle2NvbnN0cnVjdG9yKGUpe3RoaXMub3B0aW9ucz17fSx0aGlzLm9wdGlvbnM9ZX1hc3luYyByZXF1ZXN0KGUsdCxyLGksYSl7bGV0IG89ey4uLnRoaXMub3B0aW9ucywuLi5hfSxzPWk/YD9gK24uZGVmYXVsdC5zdHJpbmdpZnkoaSk6YGA7dHJ5e2xldCBuPWF3YWl0IGZldGNoKGAke28uYmFzZVVSTHx8YGB9JHt0fSR7c31gLHttZXRob2Q6ZSxib2R5OnI/SlNPTi5zdHJpbmdpZnkocik6bnVsbCwuLi5vfSk7cmV0dXJue3N0YXR1czpuLnN0YXR1cyxzdGF0dXNUZXh0Om4uc3RhdHVzVGV4dCxkYXRhOmF3YWl0IG4uanNvbigpLGhlYWRlcnM6Wy4uLm4uaGVhZGVycy5lbnRyaWVzKCldLnJlZHVjZSgoZSxbdCxuXSk9PihlW3RdPW4sZSkse30pfX1jYXRjaChlKXt0aHJvdyBlLmlzT3BlbkFwaUVycm9yPSEwLGV9fXdpdGhPcHRpb25zKHQpe3JldHVybiBuZXcgZSh0KX19fSkpLEFsPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5Qcm9qZWN0TmFtZT1lLkVycm9yQ29kZT12b2lkIDAsZS5FcnJvckNvZGU9e0JhZFJlcXVlc3Q6YGJhZF9yZXF1ZXN0YCxOb3RBbGxvd2VkOmBub3RfYWxsb3dlZGAsTm90Rm91bmQ6YG5vdF9mb3VuZGAsRm9yYmlkZGVuOmBmb3JiaWRkZW5gLFRvb01hbnlSZXF1ZXN0czpgdG9vX21hbnlfcmVxdWVzdHNgLFVuYXV0aG9yaXplZDpgdW5hdXRob3JpemVkYCxVbnByb2Nlc3NhYmxlOmB1bnByb2Nlc3NhYmxlYH0sZS5Qcm9qZWN0TmFtZT17V2lkZ2V0OmB3aWRnZXRgLENoYXRib3Q6YGNoYXRib3RgfX0pKSxqbD1zKChlPT57T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYF9fZXNNb2R1bGVgLHt2YWx1ZTohMH0pLGUuVHJhbnNsYXRpb25zQ2xpZW50UmF3PWUuVHJhbnNsYXRpb25zQ2xpZW50PXZvaWQgMCxlLlRyYW5zbGF0aW9uc0NsaWVudD1jbGFzc3tjb25zdHJ1Y3RvcihlKXt0aGlzLmFkYXB0ZXI9ZSx0aGlzLnJhdz1uZXcgdCh0aGlzLmFkYXB0ZXIpfWdldERlZmF1bHRzKGUsdCxyKXtyZXR1cm4gdGhpcy5hZGFwdGVyLnJlcXVlc3QoYGdldGAsYC8ke2V9L3RyYW5zbGF0aW9ucy9sYW5nLyR7dH0vZGVmYXVsdHNgLG51bGwsbnVsbCxyKS50aGVuKG4pfX07dmFyIHQ9Y2xhc3N7Y29uc3RydWN0b3IoZSl7dGhpcy5hZGFwdGVyPWV9Z2V0RGVmYXVsdHMoZSx0LG4pe3JldHVybiB0aGlzLmFkYXB0ZXIucmVxdWVzdChgZ2V0YCxgLyR7ZX0vdHJhbnNsYXRpb25zL2xhbmcvJHt0fS9kZWZhdWx0c2AsbnVsbCxudWxsLG4pfX07ZS5UcmFuc2xhdGlvbnNDbGllbnRSYXc9dDtmdW5jdGlvbiBuKGUpe3JldHVybiBlLmRhdGF9fSkpLE1sPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5TbWFydHN1cHBUcmFuc2xhdGlvbnNDbGllbnRBcGk9dm9pZCAwO3ZhciB0PWpsKCksbj1jbGFzcyBle2NvbnN0cnVjdG9yKGUpe3RoaXMuYWRhcHRlcj1lLHRoaXMudHJhbnNsYXRpb25zPW5ldyB0LlRyYW5zbGF0aW9uc0NsaWVudChlKX13aXRoT3B0aW9ucyh0KXtyZXR1cm4gbmV3IGUodGhpcy5hZGFwdGVyLndpdGhPcHRpb25zKHQpKX19O2UuU21hcnRzdXBwVHJhbnNsYXRpb25zQ2xpZW50QXBpPW4sZS5kZWZhdWx0PW59KSksTmw9cygoZT0+e3ZhciB0PWUmJmUuX19jcmVhdGVCaW5kaW5nfHwoT2JqZWN0LmNyZWF0ZT8oZnVuY3Rpb24oZSx0LG4scil7cj09PXZvaWQgMCYmKHI9bik7dmFyIGk9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LG4pOyghaXx8KGBnZXRgaW4gaT8hdC5fX2VzTW9kdWxlOmkud3JpdGFibGV8fGkuY29uZmlndXJhYmxlKSkmJihpPXtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiB0W25dfX0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHIsaSl9KTooZnVuY3Rpb24oZSx0LG4scil7cj09PXZvaWQgMCYmKHI9biksZVtyXT10W25dfSkpLG49ZSYmZS5fX2V4cG9ydFN0YXJ8fGZ1bmN0aW9uKGUsbil7Zm9yKHZhciByIGluIGUpciE9PWBkZWZhdWx0YCYmIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLHIpJiZ0KG4sZSxyKX07T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYF9fZXNNb2R1bGVgLHt2YWx1ZTohMH0pLG4oQWwoKSxlKSxuKE1sKCksZSksbihqbCgpLGUpLGUuZGVmYXVsdD1NbCgpLlNtYXJ0c3VwcFRyYW5zbGF0aW9uc0NsaWVudEFwaX0pKSxQbD1rbCgpLEZsPU5sKCksSWw9ZT0+T2wuaW5jbHVkZXMoZSksTGw9ZT0+SWwoZSk/ZTpgZW5gLFJsPSgpPT57bGV0e2xhbmc6ZX09Vi5nZXRPcHRpb25zKCkse2xhbmc6dH09QShsYik7cmV0dXJuIExsKHQ/P2UpfTtmdW5jdGlvbiB6bCgpe3JldHVybiBuZXcgRmwuVHJhbnNsYXRpb25zQ2xpZW50KG5ldyBQbC5GZXRjaEFkYXB0ZXIoe2Jhc2VVUkw6YCR7Vi5nZXRPcHRpb25zKCkudHJhbnNsYXRpb25zQmFzZVVybH0vYXBpL3YxYH0pKX12YXIgQmw9YXN5bmMgZT0+emwoKS5nZXREZWZhdWx0cyhGbC5Qcm9qZWN0TmFtZS5XaWRnZXQsZSksVmw9KGUsdCk9PntsZXR7dHJhbnNsYXRlczpufT1WLmdldE9wdGlvbnMoKTtyZXR1cm57Li4uZSwuLi5uW3RdJiZuW3RdfX0sSGw9TyhgZW5gKSxVbD1PKHt9KSxXbD1hc3luYyBlPT57dHJ5e2xldCB0PVZsKGF3YWl0IEJsKGUpLGUpO1VsLnVwZGF0ZShuPT4oey4uLm4sW2VdOnR9KSl9Y2F0Y2h7am8oYEZldGNoIHRyYW5zbGF0aW9ucyBvZiAnJHtlfScgbGFuZ3VhZ2UgZmFpbGVkLmApfX0sR2w9YXN5bmMgZT0+e0EoVWwpW2VdfHxhd2FpdCBXbChlKSxIbC5zZXQoZSl9LEtsPWFzeW5jKCk9PntsZXQgZT1SbCgpO0hsLnNldChlKSxhd2FpdCBXbChlKX0scWw9ZT0+e2xldCB0PUEoSGwpLG49ey4uLkEoVWwpW3RdLC4uLmV9O1VsLnVwZGF0ZShlPT4oey4uLmUsW3RdOm59KSl9LEpsPShlLHQsbik9PntsZXQgcj1BKFVsKSxpPWB8JHt0fXxgO2lmKE9iamVjdC5rZXlzKHIpLmxlbmd0aD09PTApcmV0dXJuIGk7bGV0IGE9cltlXT8uW3RdfHxpO3JldHVybiBPYmplY3Qua2V5cyhuKS5tYXAoZT0+e2xldCB0PVJlZ0V4cChgeyR7ZX19YCxgZ2ApO2E9YS5yZXBsYWNlKHQsbltlXSl9KSxhfSxXPWsoW0hsLFVsXSwoW2VdKT0+KHQsbj17fSk9PkpsKGUsdCxuKSksWWw9KCgpPT57bGV0IGU9TyhbXSkse3N1YnNjcmliZTp0LHVwZGF0ZTpufT1lLHI9KCk9PkEoZSkubWFwKGU9PmUuZmlsZSksaT0odCxuKT0+KG58fEEoZSkpLmZpbmQoZT0+ZS5maWxlLm5hbWU9PT10KXx8bnVsbCxhPWU9Pih7ZmlsZTplLHByZXZpZXc6e30scHJldmlld1N0YXRlOmBub25lYCx1cGxvYWRTdGF0dXM6YG5vbmVgfSksbz1lPT57bGV0IHQ9QXJyYXkuaXNBcnJheShlKT9lOltlXTtuKGU9PmUubGVuZ3RoK3QubGVuZ3RoPjU/KGdzKGAke0EoVykoYGZpbGVVcGxvYWQudG9vTWFueUZpbGVzYCl9IDVgKSxlKTpbLi4uZSwuLi50Lm1hcChhKV0pLG0odCl9LHM9ZT0+e24odD0+dC5maWx0ZXIodD0+dC5maWxlIT09ZSkpfSxjPSgpPT5BKGUpLmxlbmd0aCxsPSgpPT5jKCk+PTUsdT0oKT0+ZS5zZXQoW10pLGQ9KCk9PntlLnVwZGF0ZShlPT4oZS5mb3JFYWNoKGU9PmUudXBsb2FkU3RhdHVzPWBpbi1wcm9ncmVzc2ApLGUpKX0sZj10PT57ZS51cGRhdGUoZT0+e2xldCBuPWkodCxlKTtyZXR1cm4gbiYmKG4udXBsb2FkU3RhdHVzPWBkb25lYCksZX0pfSxwPWU9PmkoZS5uYW1lKT8ucHJldmlld1N0YXRlIT09YG5vbmVgLG09ZT0+e2UuZm9yRWFjaChlPT52b2lkIGgoZSkpfSxoPWFzeW5jIHQ9PntpZihwKHQpKXJldHVybjtsZXQgbj1hd2FpdCBUbCh0KSxyPW4/YXdhaXQgRWwobik6bnVsbCxhPXI/RGwocik6bnVsbDtlLnVwZGF0ZShlPT57bGV0IG89aSh0Lm5hbWUsZSk7cmV0dXJuIG8/KG8ucHJldmlld1N0YXRlPWByZWFkeWAsby5wcmV2aWV3PXtkYXRhOm4sZGltZW5zaW9uczpyLG9yaWVudGF0aW9uOmF9LFsuLi5lXSk6ZX0pfTtyZXR1cm57c3Vic2NyaWJlOnQsZ2V0RmlsZXM6cixmaW5kOmksYWRkOm8scmVtb3ZlOnMsY291bnQ6Yyxpc0xpbWl0UmVhY2hlZDpsLGNsZWFyOnUsc2V0VXBsb2FkaW5nU3RhdHVzOmQsc2V0RmlsZVVwbG9hZGVkOmZ9fSkoKSxYbD0oKCk9PntsZXQgZT1bXTtyZXR1cm4gT2JqZWN0LmZyZWV6ZSh7cHVzaDp0PT57ZS5wdXNoKHQpfSxleGVjdXRlQWxsOigpPT57Zm9yKDtlLmxlbmd0aD4wOyl7bGV0IHQ9ZS5zaGlmdCgpO3QmJnQoKX19fSl9KSgpLFpsPSgpPT57bGV0e3dpZGdldFYzVXJsOmV9PVYuZ2V0T3B0aW9ucygpO3JldHVybmAke2V9L2Fzc2V0cy9pbWFnZXMvZGVmYXVsdC1haS1pZGVudGl0eS5wbmdgfSxRbD1lPT4oey4uLmUsYXZhdGFyVXJsOmUuYXZhdGFyVXJsfHxabCgpfSksJGw9KCgpPT57bGV0e3VwZGF0ZTplLHN1YnNjcmliZTp0LHNldDpufT1PKHt9KTtyZXR1cm57c3Vic2NyaWJlOnQsc2V0SWRlbnRpdGllczplPT57bihybChgaWRgLGUubWFwKFFsKSkpfSxhZGRJZGVudGl0eTp0PT57ZShlPT4oey4uLmUsW3QuaWRdOnR9KSl9LHVwZGF0ZUlkZW50aXR5Oih0LG4pPT57ZShlPT5lW3RdP3suLi5lLFt0XTp7Li4uZVt0XSwuLi5ufX06ZSl9fX0pKCksRz1ubCgpLEs9dShNYygpLDEpLGV1PWU9Pnt2byhgaW5pdCBkYXRhYCxlKSxkbC5zZXQoITApLHlsKGUuY2hhdCxlLnNlc3Npb25JZCk7bGV0IHQ9ZS52aXNpdG9yLmlkO19sKHQpLG5zKGUudmlzaXRvci52aXNpdHMpLE11LnNldFZpc2l0b3JEYXRhKGUudmlzaXRvciksaG8oe3ZpZDp0fSksYmwuaW5pdGlhbGl6ZShlLmZpbGVVcGxvYWQpLG9zLnNldChlLmJyb3dzZXIpLEJ1LnNldEFnZW50cyhlLmFjY291bnQuYWdlbnRzKSwkbC5zZXRJZGVudGl0aWVzKGUuYWNjb3VudC5ib3RJZGVudGl0aWVzKSxlLmNoYXQ/LnZpcnR1YWxBZ2VudCE9PXZvaWQgMCYmQnUuc2V0VmlydHVhbEFnZW50KGUuY2hhdD8udmlydHVhbEFnZW50KSxpbC5zZXRHcm91cHMoZS5hY2NvdW50Lmdyb3VwcyksaGQoZS5hY2NvdW50LnN0YXR1cyksZS5jaGF0JiYocXAoKSYmaWQuc2V0KGUuY2hhdC5yYXRpbmdTdWdnZXN0ZWRUYXJnZXR8fG51bGwpLGVkLnNldChlLmNoYXQuc3RhdHVzKSxkZChlLmNoYXQuaXNDbG9zZWQpLHJkLnNldChlLmNoYXQudW5yZWFkSW5mby5sYXN0UmVhZEF0KSxKLnNldE1lc3NhZ2VzKGUuY2hhdC5tZXNzYWdlcy5maWx0ZXIoZT0+IVpmKGUpKSksR3Uuc2V0QXNzaWduZWRBZ2VudElkcyhlLmNoYXQuYXNzaWduZWRJZHM/P1tdKSxlLmNoYXQud2lkZ2V0T3B0aW9ucyYmWHUudXBkYXRlR2VuZXJhbE9wdGlvbnMoZS5jaGF0LndpZGdldE9wdGlvbnMpKSxDXy5zZXQoITApLHouZW1pdChgd2lkZ2V0SW5pdGAsITApLFhsLmV4ZWN1dGVBbGwoKX0sdHU9ZT0+e2NvbnNvbGUuZXJyb3IoZSl9LG51PSgpPT57ZGwuc2V0KCExKX0scnU9KHtjaGF0SWQ6ZX0pPT57TXAuc2V0KCExKSxhZC5zZXQoZSksZWQuc2V0KEsuQ2hhdFN0YXR1cy5PcGVuKSxYdS5zZXRNZXNzYWdlT3B0aW9ucyh7ZGlzYWJsZUF0dGFjaG1lbnRzOiExfSl9LGl1PSgpPT57ZWQuc2V0KEsuQ2hhdFN0YXR1cy5TZXJ2ZWQpLGRkKCExKX0sYXU9KHttZXNzYWdlOmV9KT0+e2xldHtjbG9zZVR5cGU6dCxhZ2VudElkOm59PWUuY29udGVudC5kYXRhOyh0PT09YGFnZW50X2Nsb3NlYHx8dD09PWBib3RfY2xvc2VgKSYmKEd1LnNldEFzc2lnbmVkQWdlbnRJZHMoW10pLGVkLnNldChLLkNoYXRTdGF0dXMuQ2xvc2VkKSxKLmFkZE1lc3NhZ2UoZSksei5lbWl0KGBjaGF0Q2xvc2VkYCxlKSx0PT09YGFnZW50X2Nsb3NlYCYmUW0obj9BKFZ1KG4pKT8uZnVsbG5hbWU6dm9pZCAwKSl9LG91PSh7bWVzc2FnZTplfSk9PntxcCgpJiZZcCh4cyksZGQoITAse2J5VmlzaXRvcjohMH0pLEouYWRkTWVzc2FnZShlKSx6LmVtaXQoYGNoYXRWaXNpdG9yQ2xvc2VkYCxlKSxabSgpfSxzdT0oe2NoYW5nZXM6ZX0pPT57ZS53aWRnZXRPcHRpb25zJiZYdS51cGRhdGVHZW5lcmFsT3B0aW9ucyhlLndpZGdldE9wdGlvbnMpLGUuaXNDbG9zZWQhPT12b2lkIDAmJmRkKGUuaXNDbG9zZWQpLGUudmlydHVhbEFnZW50IT09dm9pZCAwJiZCdS5zZXRWaXJ0dWFsQWdlbnQoZS52aXJ0dWFsQWdlbnQpfSxjdT1hc3luYyh7bWVzc2FnZTplfSk9PntpZihaZihlKSlyZXR1cm47bGV0IHQ9QSh6XykmJllmKGUpOyFBKFgpJiZRZihlKSYmIXQ/QXAoZSk6YXdhaXQgSi5hZGRNZXNzYWdlKGUpLF9kKCksZS53aWRnZXRPcHRpb25zJiZYdS5zZXRNZXNzYWdlT3B0aW9ucyhlLndpZGdldE9wdGlvbnMpLHQmJlVfKCksei5lbWl0KGBtZXNzYWdlUmVjZWl2ZWRgLGUpfSxsdT1lPT57Y3UoZSl9LHV1PSh7bWVzc2FnZUlkOmUsZGVsZXRlZEF0OnR9KT0+e0EoSilbZV0/LnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLkNoYXRSZXNvbHZlP0ouZGVsZXRlTWVzc2FnZShlKTpKLm1hcmtNZXNzYWdlQXNEZWxldGVkKGUsdCl9LGR1PSh7bWVzc2FnZTplfSk9PntKLnJlcGxhY2VNZXNzYWdlKGUpLGUud2lkZ2V0T3B0aW9ucyYmZS5pZD09PUEoQnApJiZYdS5zZXRNZXNzYWdlT3B0aW9ucyhlLndpZGdldE9wdGlvbnMpfSxmdT0oe21lc3NhZ2U6ZSxhZ2VudDp0fSk9PntHdS5hZGRBc3NpZ25lZEFnZW50SWQoZS5jb250ZW50LmRhdGEuYWdlbnRJZCksSi5hZGRNZXNzYWdlKGUpLHouZW1pdChgYWdlbnRKb2luZWRgLHQpfSxwdT0oe21lc3NhZ2U6ZX0pPT57R3UucmVtb3ZlQXNzaWduZWRBZ2VudElkKGUuY29udGVudC5kYXRhLmFnZW50SWQpLEouYWRkTWVzc2FnZShlKX0sbXU9KHttZXNzYWdlOmV9KT0+e0d1LmFkZEFzc2lnbmVkQWdlbnRJZChlLmNvbnRlbnQuZGF0YS5hc3NpZ25lZCksSi5hZGRNZXNzYWdlKGUpfSxodT0oe21lc3NhZ2U6ZX0pPT57R3UucmVtb3ZlQXNzaWduZWRBZ2VudElkKGUuY29udGVudC5kYXRhLnVuYXNzaWduZWQpLEouYWRkTWVzc2FnZShlKX0sZ3U9ZT0+eyFlLnR5cGluZy5pcyYmQShNcCl8fG5kLnNldChlLnR5cGluZy5pcyl9LF91PWU9PntyZC5zZXQoZS5sYXN0UmVhZEF0KX0sdnU9KHttZXNzYWdlOmUscmF0aW5nOnR9KT0+e0oudXBkYXRlTWVzc2FnZVJhdGluZyhlKSx6LmVtaXQoYGNoYXRSYXRlZGAsdCl9LHl1PWU9Pnt6LmVtaXQoYHRyYW5zY3JpcHRQZGZgLGUpfSxidT0oe2lkOmUsY2hhbmdlczp0fSk9PntCdS51cGRhdGVBZ2VudChlLHQpfSx4dT0oe2lkOmUsc3RhdHVzOnR9KT0+e0J1LnVwZGF0ZUFnZW50KGUse3N0YXR1czp0fSl9LFN1PSh7c3RhdHVzOmV9KT0+e2hkKGUpfSxDdT1lPT57TXUudXBkYXRlVmlzaXRvckRhdGEoZSl9LHd1PWU9Pnt6LmVtaXQoYGNvbnRhY3RBY3F1aXJlZGAsZSl9LFR1PWU9PnsocXAoKXx8SnAoKSkmJmlkLnNldChlLnJhdGluZ1N1Z2dlc3RlZFRhcmdldCl9LEV1PSgpPT57QShpZCkmJmlkLnNldChudWxsKX0sRHU9KHtpZDplLGlzQWN0aXZlOnR9KT0+eyRsLnVwZGF0ZUlkZW50aXR5KGUse2lzQWN0aXZlOnR9KX0sT3U9RGMoKSxrdT1hc3luYyBlPT57bGV0IHQ9YXdhaXQgVi5hd2FpdE9wdGlvbnMoKTtyZXR1cm4gbmV3IEsuV2Vic29ja2V0VmlzaXRvckNsaWVudCh7ZGF0YTplLGNvbm5lY3Rpb246e3VybDpwbCgpLHNvY2tldDp0Lm1vY2s/bmV3IE91LlNvY2tldE1vY2sodC5tb2NrKTp2b2lkIDAsYmFsYW5jZXJVcmw6dC5iYWxhbmNlclVybCxvcHRpb25zOntwYXRoOmAvc29ja2V0YCxhdXRvQ29ubmVjdDohMSxyZWNvbm5lY3Rpb246ITB9fX0pfSxBdT0oKT0+e2xldCBlPW51bGwsdD0oKT0+ISFlLG49KCk9PntpZighZSl0aHJvdyBFcnJvcihgVmlzaXRvciBjbGllbnQgaXMgbm90IGluaXRpYWxpemVkYCk7cmV0dXJuIGV9LHI9YXN5bmMgdD0+e2U9YXdhaXQga3UoYXdhaXQgdmwodCkpLGUmJihqdShlKSxhd2FpdCBlLmNvbm5lY3QoKS5jYXRjaChlPT57am8oYEZhaWxlZCBjb25uZWN0IHRvIHNlcnZlci5gLGUpfSkpfTtyZXR1cm4gT2JqZWN0LmZyZWV6ZSh7Z2V0Q2xpZW50Om4saW5pdENsaWVudDpyLHJlbG9hZENsaWVudDphc3luYyh0LG4pPT57YXdhaXQgZT8uZGlzY29ubmVjdCgpLHQmJlYudXBkYXRlT3B0aW9ucyh7bW9jazp0fSksYXdhaXQgcihuKX0saXNJbml0aWFsaXplZDp0fSl9LGp1PWU9PntlLm9uKGBpbml0aWFsaXplZGAsZXUpLGUub24oYGVycm9yYCx0dSksZS5vbihgZGlzY29ubmVjdGAsbnUpLGUub24oYGNoYXQub3BlbmVkYCxydSksZS5vbihgY2hhdC5zZXJ2ZWRgLGl1KSxlLm9uKGBjaGF0LmNsb3NlZGAsYXUpLGUub24oYGNoYXQudmlzaXRvcl9jbG9zZWRgLG91KSxlLm9uKGBjaGF0LnVwZGF0ZWRgLHN1KSxlLm9uKGBjaGF0Lm1lc3NhZ2VfcmVjZWl2ZWRgLGx1KSxlLm9uKGBjaGF0Lm1lc3NhZ2VfdXBkYXRlZGAsZHUpLGUub24oYGNoYXQubWVzc2FnZV9kZWxldGVkYCx1dSksZS5vbihgY2hhdC5hZ2VudF9qb2luZWRgLGZ1KSxlLm9uKGBjaGF0LmFnZW50X2xlZnRgLHB1KSxlLm9uKGBjaGF0LmFnZW50X2Fzc2lnbmVkYCxtdSksZS5vbihgY2hhdC5hZ2VudF91bmFzc2lnbmVkYCxodSksZS5vbihgY2hhdC5hZ2VudF90eXBpbmdgLGd1KSxlLm9uKGBjaGF0LmNvbnRhY3RfcmVhZGAsX3UpLGUub24oYGNoYXQucmF0ZWRgLHZ1KSxlLm9uKGBjaGF0LnJhdGluZ19zdWdnZXN0ZWRgLFR1KSxlLm9uKGBjaGF0LnJhdGluZ19jYW5jZWxsZWRgLEV1KSxlLm9uKGBjaGF0LnRyYW5zY3JpcHRfcGRmYCx5dSksZS5vbihgYWdlbnQudXBkYXRlZGAsYnUpLGUub24oYGFnZW50LnN0YXR1c191cGRhdGVkYCx4dSksZS5vbihgYWNjb3VudC51cGRhdGVkYCxTdSksZS5vbihgdmlzaXRvci51cGRhdGVkYCxDdSksZS5vbihgY29udGFjdC5hY3F1aXJlZGAsd3UpLGUub24oYGlkZW50aXR5LnN0YXR1c191cGRhdGVkYCxEdSl9LHE9QXUoKSxNdT0oKCk9PntsZXQgZT1PKG51bGwpLHtzdWJzY3JpYmU6dCxzZXQ6bix1cGRhdGU6cn09ZSxpPWU9PntuKGUpfSxhPWU9PntyKHQ9PnQ/ey4uLnQsLi4uZX06bnVsbCl9LG89KGUsdCk9Pnt0cnl7cS5nZXRDbGllbnQoKS51cGRhdGUoe1tlXTp0fSl9Y2F0Y2godCl7am8oYFVwZGF0ZSBvZiB2aXNpdG9yIHByb3BlcnR5ICcke2V9JyBmYWlsZWQuYCxTdHJpbmcodCkpfX07cmV0dXJue3N1YnNjcmliZTp0LHNldFZpc2l0b3JEYXRhOmksdXBkYXRlVmlzaXRvckRhdGE6YSx1cGRhdGVWaXNpdG9yUHJvcGVydHk6KGUsdCk9PntpZighQShDXykpe3ViKGUsdCk7cmV0dXJufWEoe1tlXTp0fSksbyhlLHQpfSx1cGRhdGVWaXNpdG9yVmFyaWFibGVzOnQ9PntpZighQShDXykpe3ViKGB2YXJpYWJsZXNgLHQpO3JldHVybn1sZXQgbj1BKGUpO2lmKCFuKXJldHVybjtsZXQgcj1uLnZhcmlhYmxlczthKHt2YXJpYWJsZXM6ey4uLnIsLi4udH19KTtsZXQgaT17fTtPYmplY3Qua2V5cyh0KS5mb3JFYWNoKGU9Pnt0W2VdIT09cltlXSYmKGk9ey4uLmksW2VdOnRbZV19KX0pLE9iamVjdC5rZXlzKGkpLmxlbmd0aCE9PTAmJm8oYHZhcmlhYmxlc2AsaSl9LHVwZGF0ZVZpc2l0b3JDb250YWN0RGF0YTp0PT57aWYoIUEoQ18pKXt1YihgY29udGFjdERhdGFgLHtwcm9wZXJ0aWVzOnR9KTtyZXR1cm59bGV0IG49QShlKTtpZighbilyZXR1cm47bGV0IHI9bj8uY29udGFjdERhdGE/LnByb3BlcnRpZXM7YSh7dmFyaWFibGVzOnsuLi5yLC4uLnR9fSk7bGV0IGk9e307T2JqZWN0LmtleXModCkuZm9yRWFjaChlPT57KCFyfHx0W2VdIT09cltlXSkmJihpPXsuLi5pLFtlXTp0W2VdfSl9KSxPYmplY3Qua2V5cyhpKS5sZW5ndGghPT0wJiZvKGBjb250YWN0RGF0YWAse3Byb3BlcnRpZXM6dH0pfX19KSgpLE51PShlLHQpPT5lLmhhc093blByb3BlcnR5KHQpLFB1PWU9PnR5cGVvZiBlPT1gYm9vbGVhbmAsRnU9ZT0+dHlwZW9mIGU9PWBudW1iZXJgLEl1PWU9PnR5cGVvZiBlPT1gb2JqZWN0YCYmISFlJiYhQXJyYXkuaXNBcnJheShlKSxMdT1lPT50eXBlb2YgZT09YHN0cmluZ2B8fGUgaW5zdGFuY2VvZiBTdHJpbmcsUnU9ZT0+THUoZSl8fEZ1KGUpfHxQdShlKSx6dT1lPT57bGV0IHQ9e307cmV0dXJuIE9iamVjdC5rZXlzKGUpLmZvckVhY2gobj0+e2xldCByPWVbbl07UnUocik/dFtuXT1yOkl1KHIpJiZOdShyLGB2YWx1ZWApJiZSdShyLnZhbHVlKSYmKHRbbl09ci52YWx1ZSl9KSx0fSxCdT0oKCk9PntsZXR7dXBkYXRlOmUsc3Vic2NyaWJlOnQsc2V0Om59PU8oe30pO3JldHVybntzdWJzY3JpYmU6dCxzZXRBZ2VudHM6ZT0+e24ocmwoYGlkYCxlKSl9LGFkZEFnZW50OnQ9PntlKGU9Pih7Li4uZSxbdC5pZF06dH0pKX0sdXBkYXRlQWdlbnQ6KHQsbik9PntlKGU9PmVbdF0/ey4uLmUsW3RdOnsuLi5lW3RdLC4uLm59fTplKX0sc2V0VmlydHVhbEFnZW50OnQ9PntsZXR7ZGVzY3JpcHRpb246bixhdmF0YXI6cixuYW1lOml9PXQsYT17fTtuJiYoYS5kZXNjcmlwdGlvbj1uKSxyJiYoYS5hdmF0YXI9ciksaSYmKGEuZnVsbG5hbWU9aSksZShlPT4oT2JqZWN0LmtleXMoZSkuZm9yRWFjaCh0PT57ZVt0XT17Li4uZVt0XSwuLi5hfX0pLGUpKX19fSkoKSxWdT1lPT5rKFtCdV0sKFt0XSk9PnRbZV0/P251bGwpLEh1PWsoW2soW0J1XSwoW2VdKT0+T2JqZWN0LnZhbHVlcyhlKS5maWx0ZXIoZT0+IWUuZGlzYWJsZWQpKSxNdV0sKFtlLHRdKT0+e2xldCBuPXQ/Lmdyb3VwO3JldHVybiFufHxuPT09YGRlZmF1bHRgP2U6ZS5maWx0ZXIoZT0+ZS5ncm91cHMubGVuZ3RoPT09MHx8ZS5ncm91cHMuaW5jbHVkZXMobikpfSksVXU9ayhbSHVdLChbZV0pPT5lLmZpbHRlcihlPT5lLnN0YXR1cz09PUsuQWdlbnRTdGF0dXMuT25saW5lKSksV3U9ZT0+e2lmKGUpcmV0dXJuYCR7ZX0/c2l6ZT04MGA7bGV0e3dpZGdldFYzVXJsOnR9PVYuZ2V0T3B0aW9ucygpO3JldHVybmAke3R9L2Fzc2V0cy9pbWFnZXMvZGVmYXVsdC1hdmF0YXIucG5nYH0sR3U9KCgpPT57bGV0e3N1YnNjcmliZTplLHNldDp0LHVwZGF0ZTpufT1PKFtdKTtyZXR1cm57c3Vic2NyaWJlOmUsc2V0QXNzaWduZWRBZ2VudElkczplPT57dChlKX0sYWRkQXNzaWduZWRBZ2VudElkOmU9PntuKHQ9PlsuLi5uZXcgU2V0KFsuLi50LGVdKV0pfSxyZW1vdmVBc3NpZ25lZEFnZW50SWQ6ZT0+e24odD0+dC5maWx0ZXIodD0+dCE9PWUpKX0sY2xlYXJBc3NpZ25lZEFnZW50SWRzOigpPT57dChbXSl9fX0pKCksS3U9ayhbR3UsQnVdLChbZSx0XSk9PmUubWFwKGU9PnRbZV0pLmZpbHRlcihCb29sZWFuKSkscXU9ayhbS3VdLChbZV0pPT5lLmxlbmd0aD4wKSxKdT1rKFtLdV0sKFtlXSk9PmUuZmlsdGVyKGU9PiFlLmRpc2FibGVkKSksWXU9ayhbS3VdLChbZV0pPT5lLnNvbWUoZT0+ZS5zdGF0dXM9PT1LLkFnZW50U3RhdHVzLk9ubGluZSkpLFh1PSgoKT0+e2xldCBlPU8oe2Rpc2FibGVBdHRhY2htZW50czohMSxkaXNhYmxlQXV0aGVudGljYXRpb246ITEsZGlzYWJsZUlucHV0OiExfSksdD1PKHt9KTtyZXR1cm57c3Vic2NyaWJlOmsoW2UsdF0sKFtlLHRdKT0+KHsuLi5lLC4uLnR9KSkuc3Vic2NyaWJlLHVwZGF0ZUdlbmVyYWxPcHRpb25zOnQ9PntlLnVwZGF0ZShlPT4oey4uLmUsLi4udH0pKX0sc2V0TWVzc2FnZU9wdGlvbnM6ZT0+e3Quc2V0KGUpfX19KSgpLFp1PWsoW1h1XSwoW2VdKT0+ZS5kaXNhYmxlQXR0YWNobWVudHMpLFF1PWZ1bmN0aW9uKGUpe3JldHVybiBlW2UuT3Blbj0wXT1gT3BlbmAsZVtlLkNsb3NlZD0xXT1gQ2xvc2VkYCxlW2UuQ2xvc2VkQnlWaXNpdG9yPTJdPWBDbG9zZWRCeVZpc2l0b3JgLGV9KHt9KSwkdT1PKEsuQWNjb3VudFN0YXR1cy5PZmZsaW5lKSxlZD1PKG51bGwpLHRkPU8oUXUuT3BlbiksbmQ9TyghMSkscmQ9TyhudWxsKSxpZD1PKG51bGwpLGFkPU8oYGApLG9kPWsoW2VkXSwoW2VdKT0+ZT09PUsuQ2hhdFN0YXR1cy5QZW5kaW5nKTtrKFtlZF0sKFtlXSk9PmUhPT1udWxsKTt2YXIgc2Q9ayhbZWRdLChbZV0pPT5lPT09Sy5DaGF0U3RhdHVzLlNlcnZlZCksY2Q9ayhbZWRdLChbZV0pPT5lPT09Sy5DaGF0U3RhdHVzLk9wZW4pLGxkPWsoW2VkXSwoW2VdKT0+ZT09PUsuQ2hhdFN0YXR1cy5DbG9zZWQpLHVkPWsoW3NkLHRkXSwoW2UsdF0pPT5lJiZ0PT09UXUuT3BlbiksZGQ9KGUse2J5VmlzaXRvcjp0PSExfT17fSk9PntlP3RkLnNldCh0P1F1LkNsb3NlZEJ5VmlzaXRvcjpRdS5DbG9zZWQpOnRkLnNldChRdS5PcGVuKX0sZmQ9ayhbJHUsSnVdLChbZSx0XSk9PnQubGVuZ3RoPT09MD9lPT09Sy5BY2NvdW50U3RhdHVzLk9ubGluZTp0LnNvbWUoZT0+ZS5zdGF0dXM9PT1LLkFnZW50U3RhdHVzLk9ubGluZSkpLHBkPWsoW1h1XSwoW2VdKT0+ZS5kaXNhYmxlQXV0aGVudGljYXRpb24pLG1kPSgpPT57bmQuc2V0KCExKSxlZC5zZXQobnVsbCksZGQoITEpLHJkLnNldChudWxsKX0saGQ9ZT0+e2U9PT1LLkFjY291bnRTdGF0dXMuT2ZmbGluZVdpdGhBST8kdS5zZXQoSy5BY2NvdW50U3RhdHVzLk9ubGluZSk6JHUuc2V0KGUpfSxnZD0oKT0+e3JkLnNldChuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCkpLHEuZ2V0Q2xpZW50KCkuY2hhdFJlYWQoKX0sX2Q9KCk9PntsZXQgZT1wbygpLnZpc2liaWxpdHlTdGF0ZT09PWB2aXNpYmxlYDshQShMcCl8fCFBKFgpfHwhZXx8IUEoTl8pfHxnZCgpfSx2ZD1lPT4oey4uLlNzLGNoYXRJZDpBKGFkKSxjcmVhdGVkQXQ6bmV3IERhdGUoKS50b0lTT1N0cmluZygpLGNvbnRlbnQ6ey4uLlNzLmNvbnRlbnQsZGF0YTp7dGFyZ2V0OmV9fX0pLHlkPSgpPT57ZGQoITAse2J5VmlzaXRvcjohMH0pLHEuZ2V0Q2xpZW50KCkuY2hhdENsb3NlKCksVmMoKSxxcCgpfHxXXygpfSxiZD1hc3luYyBlPT57YXdhaXQgSi5hZGRNZXNzYWdlKHZkKGUpKX0seGQ9KCk9PntKLmRlbGV0ZU1lc3NhZ2UoeHMpfTtmdW5jdGlvbiBTZChlKXtyZXR1cm4gZS5sZW5ndGg9PT0wP251bGw6ZVtlLmxlbmd0aC0xXX12YXIgQ2Q9ZT0+ZS5zbGljZSgoZS5sYXN0SW5kZXhPZihgLmApLTE+Pj4wKSsyKS50b0xvd2VyQ2FzZSgpLHdkPWU9PntsZXQgdD1lLG49MCxyPVtgQmAsYEtCYCxgTUJgLGBHQmBdO2Zvcig7dD49MTAyNCYmbjxyLmxlbmd0aC0xOyl0Lz0xMDI0LG4rKztyZXR1cm57c2l6ZTpNYXRoLmZsb29yKHQpLHVuaXQ6cltuXX19LFRkPWU9PntsZXQgdD1TZChlLnNwbGl0KGAuYCkpO3JldHVybiB0P3QudG9VcHBlckNhc2UoKTp4bH0sRWQ9KGUsdCk9PmAke2V9P25hbWU9JHt0fWAsRGQ9YXN5bmMoZSx0KT0+e2xldCBuPXEuZ2V0Q2xpZW50KCkscj1bXTtmb3IobGV0e2ZpbGU6aX1vZiBlKXtsZXQgZT1hd2FpdCBuLmNoYXRVcGxvYWRJbml0KCksYT1uZXcgRm9ybURhdGE7YS5hcHBlbmQoYGZpbGVgLGksaS5uYW1lKTt0cnl7aWYoIShhd2FpdCBmZXRjaChlLnVybCx7bWV0aG9kOmBwb3N0YCxib2R5OmF9KSkub2spdGhyb3cgRXJyb3IoYFVwbG9hZCBmYWlsZWRgKTtyLnB1c2goZS50b2tlbil9Y2F0Y2h7am8oYEZpbGUgWyR7aS5uYW1lfV0gdXBsb2FkIGZhaWxlZGApLGdzKEEoVykoYGZpbGVVcGxvYWQuZmlsZXNXZXJlbnRQcm9jZXNzZWRgKSl9ZmluYWxseXt0KGkpfX1yZXR1cm4gcn0sT2Q9YXN5bmMgZT0+e2xldCB0PXEuZ2V0Q2xpZW50KCk7dHJ5e2F3YWl0IHQuY2hhdFVwbG9hZEZpbmlzaChlKX1jYXRjaHtqbyhgRmFpbGVkIHRvIGZpbmlzaCBmaWxlIHVwbG9hZCBmb3IgJHtlfWApfX0sa2Q9MWUzLEFkPTZlNCxqZD0zNmU1LE1kPTg2NGU1LE5kPTI2MjhlNixQZD0zMTUzNmU2LEZkPWU9Pk1hdGguZmxvb3IoZS9BZCkqQWQsSWQ9KGUsdCk9PkZkKG5ldyBEYXRlKGUpLmdldFRpbWUoKSk9PT1GZChuZXcgRGF0ZSh0KS5nZXRUaW1lKCkpLExkPShlLHQpPT57bGV0IG49bmV3IERhdGUoZSkscj1uZXcgRGF0ZSh0KTtyZXR1cm4gbi5nZXREYXRlKCk9PT1yLmdldERhdGUoKSYmbi5nZXRNb250aCgpPT09ci5nZXRNb250aCgpJiZuLmdldEZ1bGxZZWFyKCk9PT1yLmdldEZ1bGxZZWFyKCl9LFJkPShlLHQpPT5lLmdldFRpbWUoKS10LmdldFRpbWUoKSx6ZD1uZXcgSW50bC5EYXRlVGltZUZvcm1hdCh2b2lkIDAse2hvdXI6YG51bWVyaWNgLG1pbnV0ZTpgbnVtZXJpY2B9KSxCZD1uZXcgSW50bC5EYXRlVGltZUZvcm1hdCh2b2lkIDAse3llYXI6YG51bWVyaWNgLG1vbnRoOmBudW1lcmljYCxkYXk6YG51bWVyaWNgLGhvdXI6YG51bWVyaWNgLG1pbnV0ZTpgbnVtZXJpY2B9KSxWZD1lPT5MZChuZXcgRGF0ZSxlKT96ZDpCZCxIZD0oKT0+dHlwZW9mIEludGw8YHVgJiZgUmVsYXRpdmVUaW1lRm9ybWF0YGluIEludGwsVWQ9ZT0+SGQoKT9uZXcgSW50bC5SZWxhdGl2ZVRpbWVGb3JtYXQoZSx7bnVtZXJpYzpgYXV0b2B9KTpudWxsLFdkPVt7dW5pdDpgeWVhcmAsYW1vdW50OlBkfSx7dW5pdDpgbW9udGhgLGFtb3VudDpOZH0se3VuaXQ6YGRheWAsYW1vdW50Ok1kfSx7dW5pdDpgaG91cmAsYW1vdW50OmpkfSx7dW5pdDpgbWludXRlYCxhbW91bnQ6QWR9LHt1bml0OmBzZWNvbmRgLGFtb3VudDprZH1dLEdkPShlLHQpPT57bGV0IG49VWQodCk7aWYoIW4pcmV0dXJuIEgoYFJlbGF0aXZlIHRpbWUgZm9ybWF0IG5vdCBzdXBwb3J0ZWRgKSxgYDtmb3IobGV0e3VuaXQ6dCxhbW91bnQ6cn1vZiBXZCl7aWYodD09PWBzZWNvbmRgKXJldHVybiBuLmZvcm1hdCgwLGBzZWNvbmRgKTtpZihNYXRoLmFicyhlKT5yKXJldHVybiBuLmZvcm1hdChNYXRoLnJvdW5kKGUvciksdCl9cmV0dXJuYGB9LEtkPShlLHQ9MzAwKT0+e2xldCBuO3JldHVybiguLi5yKT0+e258fD0oZSguLi5yKSxzZXRUaW1lb3V0KCgpPT5uPW51bGwsdCkpfX0scWQ9L1tcMC1cdUQ3RkZcdUUwMDAtXHVGRkZGXXxbXHVEODAwLVx1REJGRl1bXHVEQzAwLVx1REZGRl18W1x1RDgwMC1cdURCRkZdKD8hW1x1REMwMC1cdURGRkZdKXwoPzpbXlx1RDgwMC1cdURCRkZdfF4pW1x1REMwMC1cdURGRkZdLyxKZD0vW1wwLVx4MUZceDdGLVx4OUZdLyxZZD0vWyEtIyUtXCosLVwvOjtcP0BcWy1cXV9ce1x9XHhBMVx4QTdceEFCXHhCNlx4QjdceEJCXHhCRlx1MDM3RVx1MDM4N1x1MDU1QS1cdTA1NUZcdTA1ODlcdTA1OEFcdTA1QkVcdTA1QzBcdTA1QzNcdTA1QzZcdTA1RjNcdTA1RjRcdTA2MDlcdTA2MEFcdTA2MENcdTA2MERcdTA2MUJcdTA2MUQtXHUwNjFGXHUwNjZBLVx1MDY2RFx1MDZENFx1MDcwMC1cdTA3MERcdTA3RjctXHUwN0Y5XHUwODMwLVx1MDgzRVx1MDg1RVx1MDk2NFx1MDk2NVx1MDk3MFx1MDlGRFx1MEE3Nlx1MEFGMFx1MEM3N1x1MEM4NFx1MERGNFx1MEU0Rlx1MEU1QVx1MEU1Qlx1MEYwNC1cdTBGMTJcdTBGMTRcdTBGM0EtXHUwRjNEXHUwRjg1XHUwRkQwLVx1MEZENFx1MEZEOVx1MEZEQVx1MTA0QS1cdTEwNEZcdTEwRkJcdTEzNjAtXHUxMzY4XHUxNDAwXHUxNjZFXHUxNjlCXHUxNjlDXHUxNkVCLVx1MTZFRFx1MTczNVx1MTczNlx1MTdENC1cdTE3RDZcdTE3RDgtXHUxN0RBXHUxODAwLVx1MTgwQVx1MTk0NFx1MTk0NVx1MUExRVx1MUExRlx1MUFBMC1cdTFBQTZcdTFBQTgtXHUxQUFEXHUxQjVBLVx1MUI2MFx1MUI3RFx1MUI3RVx1MUJGQy1cdTFCRkZcdTFDM0ItXHUxQzNGXHUxQzdFXHUxQzdGXHUxQ0MwLVx1MUNDN1x1MUNEM1x1MjAxMC1cdTIwMjdcdTIwMzAtXHUyMDQzXHUyMDQ1LVx1MjA1MVx1MjA1My1cdTIwNUVcdTIwN0RcdTIwN0VcdTIwOERcdTIwOEVcdTIzMDgtXHUyMzBCXHUyMzI5XHUyMzJBXHUyNzY4LVx1Mjc3NVx1MjdDNVx1MjdDNlx1MjdFNi1cdTI3RUZcdTI5ODMtXHUyOTk4XHUyOUQ4LVx1MjlEQlx1MjlGQ1x1MjlGRFx1MkNGOS1cdTJDRkNcdTJDRkVcdTJDRkZcdTJENzBcdTJFMDAtXHUyRTJFXHUyRTMwLVx1MkU0Rlx1MkU1Mi1cdTJFNURcdTMwMDEtXHUzMDAzXHUzMDA4LVx1MzAxMVx1MzAxNC1cdTMwMUZcdTMwMzBcdTMwM0RcdTMwQTBcdTMwRkJcdUE0RkVcdUE0RkZcdUE2MEQtXHVBNjBGXHVBNjczXHVBNjdFXHVBNkYyLVx1QTZGN1x1QTg3NC1cdUE4NzdcdUE4Q0VcdUE4Q0ZcdUE4RjgtXHVBOEZBXHVBOEZDXHVBOTJFXHVBOTJGXHVBOTVGXHVBOUMxLVx1QTlDRFx1QTlERVx1QTlERlx1QUE1Qy1cdUFBNUZcdUFBREVcdUFBREZcdUFBRjBcdUFBRjFcdUFCRUJcdUZEM0VcdUZEM0ZcdUZFMTAtXHVGRTE5XHVGRTMwLVx1RkU1Mlx1RkU1NC1cdUZFNjFcdUZFNjNcdUZFNjhcdUZFNkFcdUZFNkJcdUZGMDEtXHVGRjAzXHVGRjA1LVx1RkYwQVx1RkYwQy1cdUZGMEZcdUZGMUFcdUZGMUJcdUZGMUZcdUZGMjBcdUZGM0ItXHVGRjNEXHVGRjNGXHVGRjVCXHVGRjVEXHVGRjVGLVx1RkY2NV18XHVEODAwW1x1REQwMC1cdUREMDJcdURGOUZcdURGRDBdfFx1RDgwMVx1REQ2RnxcdUQ4MDJbXHVEQzU3XHVERDFGXHVERDNGXHVERTUwLVx1REU1OFx1REU3Rlx1REVGMC1cdURFRjZcdURGMzktXHVERjNGXHVERjk5LVx1REY5Q118XHVEODAzW1x1REVBRFx1REY1NS1cdURGNTlcdURGODYtXHVERjg5XXxcdUQ4MDRbXHVEQzQ3LVx1REM0RFx1RENCQlx1RENCQ1x1RENCRS1cdURDQzFcdURENDAtXHVERDQzXHVERDc0XHVERDc1XHVEREM1LVx1RERDOFx1RERDRFx1REREQlx1RERERC1cdUREREZcdURFMzgtXHVERTNEXHVERUE5XXxcdUQ4MDVbXHVEQzRCLVx1REM0Rlx1REM1QVx1REM1Qlx1REM1RFx1RENDNlx1RERDMS1cdURERDdcdURFNDEtXHVERTQzXHVERTYwLVx1REU2Q1x1REVCOVx1REYzQy1cdURGM0VdfFx1RDgwNltcdURDM0JcdURENDQtXHVERDQ2XHVEREUyXHVERTNGLVx1REU0Nlx1REU5QS1cdURFOUNcdURFOUUtXHVERUEyXHVERjAwLVx1REYwOV18XHVEODA3W1x1REM0MS1cdURDNDVcdURDNzBcdURDNzFcdURFRjdcdURFRjhcdURGNDMtXHVERjRGXHVERkZGXXxcdUQ4MDlbXHVEQzcwLVx1REM3NF18XHVEODBCW1x1REZGMVx1REZGMl18XHVEODFBW1x1REU2RVx1REU2Rlx1REVGNVx1REYzNy1cdURGM0JcdURGNDRdfFx1RDgxQltcdURFOTctXHVERTlBXHVERkUyXXxcdUQ4MkZcdURDOUZ8XHVEODM2W1x1REU4Ny1cdURFOEJdfFx1RDgzQVtcdURENUVcdURENUZdLyxYZD0vWyBceEEwXHUxNjgwXHUyMDAwLVx1MjAwQVx1MjAyOFx1MjAyOVx1MjAyRlx1MjA1Rlx1MzAwMF0vO2Z1bmN0aW9uIFpkKGUpe2xldCB0PXt9O2V8fD17fSx0LnNyY19Bbnk9cWQuc291cmNlLHQuc3JjX0NjPUpkLnNvdXJjZSx0LnNyY19aPVhkLnNvdXJjZSx0LnNyY19QPVlkLnNvdXJjZSx0LnNyY19aUENjPVt0LnNyY19aLHQuc3JjX1AsdC5zcmNfQ2NdLmpvaW4oYHxgKSx0LnNyY19aQ2M9W3Quc3JjX1osdC5zcmNfQ2NdLmpvaW4oYHxgKTtsZXQgbj1gWz48772cXWA7cmV0dXJuIHQuc3JjX3BzZXVkb19sZXR0ZXI9YCg/Oig/IWArbitgfGArdC5zcmNfWlBDYytgKWArdC5zcmNfQW55K2ApYCx0LnNyY19pcDQ9YCg/OigyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV1bMC05XT8pXFwuKXszfSgyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV1bMC05XT8pYCx0LnNyY19hdXRoPWAoPzooPzooPyFgK3Quc3JjX1pDYytgfFtAL1xcW1xcXSgpXSkuKStAKT9gLHQuc3JjX3BvcnQ9YCg/OjooPzo2KD86WzAtNF1cXGR7M318NSg/OlswLTRdXFxkezJ9fDUoPzpbMC0yXVxcZHwzWzAtNV0pKSl8WzEtNV0/XFxkezEsNH0pKT9gLHQuc3JjX2hvc3RfdGVybWluYXRvcj1gKD89JHxgK24rYHxgK3Quc3JjX1pQQ2MrYCkoPyFgKyhlW2AtLS1gXT9gLSg/IS0tKXxgOmAtfGApK2BffDpcXGR8XFwuLXxcXC4oPyEkfGArdC5zcmNfWlBDYytgKSlgLHQuc3JjX3BhdGg9YCg/OlsvPyNdKD86KD8hYCt0LnNyY19aQ2MrYHxbPjzvvZxdfFsoKVtcXF17fS4sIic/IVxcLTtdKS58XFxbKD86KD8hYCt0LnNyY19aQ2MrYHxcXF0pLikqXFxdfFxcKCg/Oig/IWArdC5zcmNfWkNjK2B8WyldKS4pKlxcKXxcXHsoPzooPyFgK3Quc3JjX1pDYytgfFt9XSkuKSpcXH18XFwiKD86KD8hYCt0LnNyY19aQ2MrYHxbIl0pLikrXFwifFxcJyg/Oig/IWArdC5zcmNfWkNjK2B8WyddKS4pK1xcJ3xcXCcoPz1gK3Quc3JjX3BzZXVkb19sZXR0ZXIrYHxbLV0pfFxcLnsyLH1bYS16QS1aMC05JS8mXXxcXC4oPyFgK3Quc3JjX1pDYytgfFsuXXwkKXxgKyhlW2AtLS1gXT9gXFwtKD8hLS0oPzpbXi1dfCQpKSg/Oi0qKXxgOmBcXC0rfGApK2AsKD8hYCt0LnNyY19aQ2MrYHwkKXw7KD8hYCt0LnNyY19aQ2MrYHwkKXxcXCErKD8hYCt0LnNyY19aQ2MrYHxbIV18JCl8XFw/KD8hYCt0LnNyY19aQ2MrYHxbP118JCkpK3xcXC8pP2AsdC5zcmNfZW1haWxfbmFtZT1gW1xcLTs6Jj1cXCtcXCQsXFwuYS16QS1aMC05X11bXFwtOzomPVxcK1xcJCxcXCJcXC5hLXpBLVowLTlfXSpgLHQuc3JjX3huPWB4bi0tW2EtejAtOVxcLV17MSw1OX1gLHQuc3JjX2RvbWFpbl9yb290PWAoPzpgK3Quc3JjX3huK2B8YCt0LnNyY19wc2V1ZG9fbGV0dGVyK2B7MSw2M30pYCx0LnNyY19kb21haW49YCg/OmArdC5zcmNfeG4rYHwoPzpgK3Quc3JjX3BzZXVkb19sZXR0ZXIrYCl8KD86YCt0LnNyY19wc2V1ZG9fbGV0dGVyK2AoPzotfGArdC5zcmNfcHNldWRvX2xldHRlcitgKXswLDYxfWArdC5zcmNfcHNldWRvX2xldHRlcitgKSlgLHQuc3JjX2hvc3Q9YCg/Oig/Oig/Oig/OmArdC5zcmNfZG9tYWluK2ApXFwuKSpgK3Quc3JjX2RvbWFpbitgKSlgLHQudHBsX2hvc3RfZnV6enk9YCg/OmArdC5zcmNfaXA0K2B8KD86KD86KD86YCt0LnNyY19kb21haW4rYClcXC4pKyg/OiVUTERTJSkpKWAsdC50cGxfaG9zdF9ub19pcF9mdXp6eT1gKD86KD86KD86YCt0LnNyY19kb21haW4rYClcXC4pKyg/OiVUTERTJSkpYCx0LnNyY19ob3N0X3N0cmljdD10LnNyY19ob3N0K3Quc3JjX2hvc3RfdGVybWluYXRvcix0LnRwbF9ob3N0X2Z1enp5X3N0cmljdD10LnRwbF9ob3N0X2Z1enp5K3Quc3JjX2hvc3RfdGVybWluYXRvcix0LnNyY19ob3N0X3BvcnRfc3RyaWN0PXQuc3JjX2hvc3QrdC5zcmNfcG9ydCt0LnNyY19ob3N0X3Rlcm1pbmF0b3IsdC50cGxfaG9zdF9wb3J0X2Z1enp5X3N0cmljdD10LnRwbF9ob3N0X2Z1enp5K3Quc3JjX3BvcnQrdC5zcmNfaG9zdF90ZXJtaW5hdG9yLHQudHBsX2hvc3RfcG9ydF9ub19pcF9mdXp6eV9zdHJpY3Q9dC50cGxfaG9zdF9ub19pcF9mdXp6eSt0LnNyY19wb3J0K3Quc3JjX2hvc3RfdGVybWluYXRvcix0LnRwbF9ob3N0X2Z1enp5X3Rlc3Q9YGxvY2FsaG9zdHx3d3dcXC58XFwuXFxkezEsM31cXC58KD86XFwuKD86JVRMRFMlKSg/OmArdC5zcmNfWlBDYytgfD58JCkpYCx0LnRwbF9lbWFpbF9mdXp6eT1gKF58YCtuK2B8InxcXCh8YCt0LnNyY19aQ2MrYCkoYCt0LnNyY19lbWFpbF9uYW1lK2BAYCt0LnRwbF9ob3N0X2Z1enp5X3N0cmljdCtgKWAsdC50cGxfbGlua19mdXp6eT0iKF58KD8hWy46L1xcLV9AXSkoPzpbJCs8PT5eYHzvvZxdfCIrdC5zcmNfWlBDYysiKSkoKD8hWyQrPD0+XmB8772cXSkiK3QudHBsX2hvc3RfcG9ydF9mdXp6eV9zdHJpY3QrdC5zcmNfcGF0aCtgKWAsdC50cGxfbGlua19ub19pcF9mdXp6eT0iKF58KD8hWy46L1xcLV9AXSkoPzpbJCs8PT5eYHzvvZxdfCIrdC5zcmNfWlBDYysiKSkoKD8hWyQrPD0+XmB8772cXSkiK3QudHBsX2hvc3RfcG9ydF9ub19pcF9mdXp6eV9zdHJpY3QrdC5zcmNfcGF0aCtgKWAsdH1mdW5jdGlvbiBRZChlKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpLmZvckVhY2goZnVuY3Rpb24odCl7dCYmT2JqZWN0LmtleXModCkuZm9yRWFjaChmdW5jdGlvbihuKXtlW25dPXRbbl19KX0pLGV9ZnVuY3Rpb24gJGQoZSl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKX1mdW5jdGlvbiBlZihlKXtyZXR1cm4gJGQoZSk9PT1gW29iamVjdCBTdHJpbmddYH1mdW5jdGlvbiB0ZihlKXtyZXR1cm4gJGQoZSk9PT1gW29iamVjdCBPYmplY3RdYH1mdW5jdGlvbiBuZihlKXtyZXR1cm4gJGQoZSk9PT1gW29iamVjdCBSZWdFeHBdYH1mdW5jdGlvbiByZihlKXtyZXR1cm4gJGQoZSk9PT1gW29iamVjdCBGdW5jdGlvbl1gfWZ1bmN0aW9uIGFmKGUpe3JldHVybiBlLnJlcGxhY2UoL1suPyorXiRbXF1cXCgpe318LV0vZyxgXFwkJmApfXZhciBvZj17ZnV6enlMaW5rOiEwLGZ1enp5RW1haWw6ITAsZnV6enlJUDohMX07ZnVuY3Rpb24gc2YoZSl7cmV0dXJuIE9iamVjdC5rZXlzKGV8fHt9KS5yZWR1Y2UoZnVuY3Rpb24oZSx0KXtyZXR1cm4gZXx8b2YuaGFzT3duUHJvcGVydHkodCl9LCExKX12YXIgY2Y9eyJodHRwOiI6e3ZhbGlkYXRlOmZ1bmN0aW9uKGUsdCxuKXtsZXQgcj1lLnNsaWNlKHQpO3JldHVybiBuLnJlLmh0dHB8fChuLnJlLmh0dHA9UmVnRXhwKGBeXFwvXFwvYCtuLnJlLnNyY19hdXRoK24ucmUuc3JjX2hvc3RfcG9ydF9zdHJpY3Qrbi5yZS5zcmNfcGF0aCxgaWApKSxuLnJlLmh0dHAudGVzdChyKT9yLm1hdGNoKG4ucmUuaHR0cClbMF0ubGVuZ3RoOjB9fSwiaHR0cHM6IjpgaHR0cDpgLCJmdHA6IjpgaHR0cDpgLCIvLyI6e3ZhbGlkYXRlOmZ1bmN0aW9uKGUsdCxuKXtsZXQgcj1lLnNsaWNlKHQpO3JldHVybiBuLnJlLm5vX2h0dHB8fChuLnJlLm5vX2h0dHA9UmVnRXhwKGBeYCtuLnJlLnNyY19hdXRoK2AoPzpsb2NhbGhvc3R8KD86KD86YCtuLnJlLnNyY19kb21haW4rYClcXC4pK2Arbi5yZS5zcmNfZG9tYWluX3Jvb3QrYClgK24ucmUuc3JjX3BvcnQrbi5yZS5zcmNfaG9zdF90ZXJtaW5hdG9yK24ucmUuc3JjX3BhdGgsYGlgKSksbi5yZS5ub19odHRwLnRlc3Qocik/dD49MyYmZVt0LTNdPT09YDpgfHx0Pj0zJiZlW3QtM109PT1gL2A/MDpyLm1hdGNoKG4ucmUubm9faHR0cClbMF0ubGVuZ3RoOjB9fSwibWFpbHRvOiI6e3ZhbGlkYXRlOmZ1bmN0aW9uKGUsdCxuKXtsZXQgcj1lLnNsaWNlKHQpO3JldHVybiBuLnJlLm1haWx0b3x8KG4ucmUubWFpbHRvPVJlZ0V4cChgXmArbi5yZS5zcmNfZW1haWxfbmFtZStgQGArbi5yZS5zcmNfaG9zdF9zdHJpY3QsYGlgKSksbi5yZS5tYWlsdG8udGVzdChyKT9yLm1hdGNoKG4ucmUubWFpbHRvKVswXS5sZW5ndGg6MH19fSxsZj1gYVtjZGVmZ2lsbW5vcXJzdHV3eHpdfGJbYWJkZWZnaGlqbW5vcnN0dnd5el18Y1thY2RmZ2hpa2xtbm9ydXZ3eHl6XXxkW2Vqa21vel18ZVtjZWdyc3R1XXxmW2lqa21vcl18Z1thYmRlZmdoaWxtbnBxcnN0dXd5XXxoW2ttbnJ0dV18aVtkZWxtbm9xcnN0XXxqW2Vtb3BdfGtbZWdoaW1ucHJ3eXpdfGxbYWJjaWtyc3R1dnldfG1bYWNkZWdoa2xtbm9wcXJzdHV2d3h5el18blthY2VmZ2lsb3BydXpdfG9tfHBbYWVmZ2hrbG1ucnN0d3ldfHFhfHJbZW9zdXddfHNbYWJjZGVnaGlqa2xtbm9ydHV2eHl6XXx0W2NkZmdoamtsbW5vcnR2d3pdfHVbYWdrc3l6XXx2W2FjZWdpbnVdfHdbZnNdfHlbZXRdfHpbYW13XWAsdWY9YGJpenxjb218ZWR1fGdvdnxuZXR8b3JnfHByb3x3ZWJ8eHh4fGFlcm98YXNpYXxjb29wfGluZm98bXVzZXVtfG5hbWV8c2hvcHzRgNGEYC5zcGxpdChgfGApO2Z1bmN0aW9uIGRmKGUpe2UuX19pbmRleF9fPS0xLGUuX190ZXh0X2NhY2hlX189YGB9ZnVuY3Rpb24gZmYoZSl7cmV0dXJuIGZ1bmN0aW9uKHQsbil7bGV0IHI9dC5zbGljZShuKTtyZXR1cm4gZS50ZXN0KHIpP3IubWF0Y2goZSlbMF0ubGVuZ3RoOjB9fWZ1bmN0aW9uIHBmKCl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7dC5ub3JtYWxpemUoZSl9fWZ1bmN0aW9uIG1mKGUpe2xldCB0PWUucmU9WmQoZS5fX29wdHNfXyksbj1lLl9fdGxkc19fLnNsaWNlKCk7ZS5vbkNvbXBpbGUoKSxlLl9fdGxkc19yZXBsYWNlZF9ffHxuLnB1c2gobGYpLG4ucHVzaCh0LnNyY194biksdC5zcmNfdGxkcz1uLmpvaW4oYHxgKTtmdW5jdGlvbiByKGUpe3JldHVybiBlLnJlcGxhY2UoYCVUTERTJWAsdC5zcmNfdGxkcyl9dC5lbWFpbF9mdXp6eT1SZWdFeHAocih0LnRwbF9lbWFpbF9mdXp6eSksYGlgKSx0LmxpbmtfZnV6enk9UmVnRXhwKHIodC50cGxfbGlua19mdXp6eSksYGlgKSx0Lmxpbmtfbm9faXBfZnV6enk9UmVnRXhwKHIodC50cGxfbGlua19ub19pcF9mdXp6eSksYGlgKSx0Lmhvc3RfZnV6enlfdGVzdD1SZWdFeHAocih0LnRwbF9ob3N0X2Z1enp5X3Rlc3QpLGBpYCk7bGV0IGk9W107ZS5fX2NvbXBpbGVkX189e307ZnVuY3Rpb24gYShlLHQpe3Rocm93IEVycm9yKGAoTGlua2lmeUl0KSBJbnZhbGlkIHNjaGVtYSAiYCtlK2AiOiBgK3QpfU9iamVjdC5rZXlzKGUuX19zY2hlbWFzX18pLmZvckVhY2goZnVuY3Rpb24odCl7bGV0IG49ZS5fX3NjaGVtYXNfX1t0XTtpZihuPT09bnVsbClyZXR1cm47bGV0IHI9e3ZhbGlkYXRlOm51bGwsbGluazpudWxsfTtpZihlLl9fY29tcGlsZWRfX1t0XT1yLHRmKG4pKXtuZihuLnZhbGlkYXRlKT9yLnZhbGlkYXRlPWZmKG4udmFsaWRhdGUpOnJmKG4udmFsaWRhdGUpP3IudmFsaWRhdGU9bi52YWxpZGF0ZTphKHQsbikscmYobi5ub3JtYWxpemUpP3Iubm9ybWFsaXplPW4ubm9ybWFsaXplOm4ubm9ybWFsaXplP2EodCxuKTpyLm5vcm1hbGl6ZT1wZigpO3JldHVybn1pZihlZihuKSl7aS5wdXNoKHQpO3JldHVybn1hKHQsbil9KSxpLmZvckVhY2goZnVuY3Rpb24odCl7ZS5fX2NvbXBpbGVkX19bZS5fX3NjaGVtYXNfX1t0XV0mJihlLl9fY29tcGlsZWRfX1t0XS52YWxpZGF0ZT1lLl9fY29tcGlsZWRfX1tlLl9fc2NoZW1hc19fW3RdXS52YWxpZGF0ZSxlLl9fY29tcGlsZWRfX1t0XS5ub3JtYWxpemU9ZS5fX2NvbXBpbGVkX19bZS5fX3NjaGVtYXNfX1t0XV0ubm9ybWFsaXplKX0pLGUuX19jb21waWxlZF9fW2BgXT17dmFsaWRhdGU6bnVsbCxub3JtYWxpemU6cGYoKX07bGV0IG89T2JqZWN0LmtleXMoZS5fX2NvbXBpbGVkX18pLmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4gdC5sZW5ndGg+MCYmZS5fX2NvbXBpbGVkX19bdF19KS5tYXAoYWYpLmpvaW4oYHxgKTtlLnJlLnNjaGVtYV90ZXN0PVJlZ0V4cChgKF58KD8hXykoPzpbPjzvvZxdfGArdC5zcmNfWlBDYytgKSkoYCtvK2ApYCxgaWApLGUucmUuc2NoZW1hX3NlYXJjaD1SZWdFeHAoYChefCg/IV8pKD86Wz48772cXXxgK3Quc3JjX1pQQ2MrYCkpKGArbytgKWAsYGlnYCksZS5yZS5zY2hlbWFfYXRfc3RhcnQ9UmVnRXhwKGBeYCtlLnJlLnNjaGVtYV9zZWFyY2guc291cmNlLGBpYCksZS5yZS5wcmV0ZXN0PVJlZ0V4cChgKGArZS5yZS5zY2hlbWFfdGVzdC5zb3VyY2UrYCl8KGArZS5yZS5ob3N0X2Z1enp5X3Rlc3Quc291cmNlK2ApfEBgLGBpYCksZGYoZSl9ZnVuY3Rpb24gaGYoZSx0KXtsZXQgbj1lLl9faW5kZXhfXyxyPWUuX19sYXN0X2luZGV4X18saT1lLl9fdGV4dF9jYWNoZV9fLnNsaWNlKG4scik7dGhpcy5zY2hlbWE9ZS5fX3NjaGVtYV9fLnRvTG93ZXJDYXNlKCksdGhpcy5pbmRleD1uK3QsdGhpcy5sYXN0SW5kZXg9cit0LHRoaXMucmF3PWksdGhpcy50ZXh0PWksdGhpcy51cmw9aX1mdW5jdGlvbiBnZihlLHQpe2xldCBuPW5ldyBoZihlLHQpO3JldHVybiBlLl9fY29tcGlsZWRfX1tuLnNjaGVtYV0ubm9ybWFsaXplKG4sZSksbn1mdW5jdGlvbiBfZihlLHQpe2lmKCEodGhpcyBpbnN0YW5jZW9mIF9mKSlyZXR1cm4gbmV3IF9mKGUsdCk7dHx8c2YoZSkmJih0PWUsZT17fSksdGhpcy5fX29wdHNfXz1RZCh7fSxvZix0KSx0aGlzLl9faW5kZXhfXz0tMSx0aGlzLl9fbGFzdF9pbmRleF9fPS0xLHRoaXMuX19zY2hlbWFfXz1gYCx0aGlzLl9fdGV4dF9jYWNoZV9fPWBgLHRoaXMuX19zY2hlbWFzX189UWQoe30sY2YsZSksdGhpcy5fX2NvbXBpbGVkX189e30sdGhpcy5fX3RsZHNfXz11Zix0aGlzLl9fdGxkc19yZXBsYWNlZF9fPSExLHRoaXMucmU9e30sbWYodGhpcyl9X2YucHJvdG90eXBlLmFkZD1mdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLl9fc2NoZW1hc19fW2VdPXQsbWYodGhpcyksdGhpc30sX2YucHJvdG90eXBlLnNldD1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5fX29wdHNfXz1RZCh0aGlzLl9fb3B0c19fLGUpLHRoaXN9LF9mLnByb3RvdHlwZS50ZXN0PWZ1bmN0aW9uKGUpe2lmKHRoaXMuX190ZXh0X2NhY2hlX189ZSx0aGlzLl9faW5kZXhfXz0tMSwhZS5sZW5ndGgpcmV0dXJuITE7bGV0IHQsbixyLGksYSxvLHMsYyxsO2lmKHRoaXMucmUuc2NoZW1hX3Rlc3QudGVzdChlKSl7Zm9yKHM9dGhpcy5yZS5zY2hlbWFfc2VhcmNoLHMubGFzdEluZGV4PTA7KHQ9cy5leGVjKGUpKSE9PW51bGw7KWlmKGk9dGhpcy50ZXN0U2NoZW1hQXQoZSx0WzJdLHMubGFzdEluZGV4KSxpKXt0aGlzLl9fc2NoZW1hX189dFsyXSx0aGlzLl9faW5kZXhfXz10LmluZGV4K3RbMV0ubGVuZ3RoLHRoaXMuX19sYXN0X2luZGV4X189dC5pbmRleCt0WzBdLmxlbmd0aCtpO2JyZWFrfX1yZXR1cm4gdGhpcy5fX29wdHNfXy5mdXp6eUxpbmsmJnRoaXMuX19jb21waWxlZF9fW2BodHRwOmBdJiYoYz1lLnNlYXJjaCh0aGlzLnJlLmhvc3RfZnV6enlfdGVzdCksYz49MCYmKHRoaXMuX19pbmRleF9fPDB8fGM8dGhpcy5fX2luZGV4X18pJiYobj1lLm1hdGNoKHRoaXMuX19vcHRzX18uZnV6enlJUD90aGlzLnJlLmxpbmtfZnV6enk6dGhpcy5yZS5saW5rX25vX2lwX2Z1enp5KSkhPT1udWxsJiYoYT1uLmluZGV4K25bMV0ubGVuZ3RoLCh0aGlzLl9faW5kZXhfXzwwfHxhPHRoaXMuX19pbmRleF9fKSYmKHRoaXMuX19zY2hlbWFfXz1gYCx0aGlzLl9faW5kZXhfXz1hLHRoaXMuX19sYXN0X2luZGV4X189bi5pbmRleCtuWzBdLmxlbmd0aCkpKSx0aGlzLl9fb3B0c19fLmZ1enp5RW1haWwmJnRoaXMuX19jb21waWxlZF9fW2BtYWlsdG86YF0mJihsPWUuaW5kZXhPZihgQGApLGw+PTAmJihyPWUubWF0Y2godGhpcy5yZS5lbWFpbF9mdXp6eSkpIT09bnVsbCYmKGE9ci5pbmRleCtyWzFdLmxlbmd0aCxvPXIuaW5kZXgrclswXS5sZW5ndGgsKHRoaXMuX19pbmRleF9fPDB8fGE8dGhpcy5fX2luZGV4X198fGE9PT10aGlzLl9faW5kZXhfXyYmbz50aGlzLl9fbGFzdF9pbmRleF9fKSYmKHRoaXMuX19zY2hlbWFfXz1gbWFpbHRvOmAsdGhpcy5fX2luZGV4X189YSx0aGlzLl9fbGFzdF9pbmRleF9fPW8pKSksdGhpcy5fX2luZGV4X18+PTB9LF9mLnByb3RvdHlwZS5wcmV0ZXN0PWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnJlLnByZXRlc3QudGVzdChlKX0sX2YucHJvdG90eXBlLnRlc3RTY2hlbWFBdD1mdW5jdGlvbihlLHQsbil7cmV0dXJuIHRoaXMuX19jb21waWxlZF9fW3QudG9Mb3dlckNhc2UoKV0/dGhpcy5fX2NvbXBpbGVkX19bdC50b0xvd2VyQ2FzZSgpXS52YWxpZGF0ZShlLG4sdGhpcyk6MH0sX2YucHJvdG90eXBlLm1hdGNoPWZ1bmN0aW9uKGUpe2xldCB0PVtdLG49MDt0aGlzLl9faW5kZXhfXz49MCYmdGhpcy5fX3RleHRfY2FjaGVfXz09PWUmJih0LnB1c2goZ2YodGhpcyxuKSksbj10aGlzLl9fbGFzdF9pbmRleF9fKTtsZXQgcj1uP2Uuc2xpY2Uobik6ZTtmb3IoO3RoaXMudGVzdChyKTspdC5wdXNoKGdmKHRoaXMsbikpLHI9ci5zbGljZSh0aGlzLl9fbGFzdF9pbmRleF9fKSxuKz10aGlzLl9fbGFzdF9pbmRleF9fO3JldHVybiB0Lmxlbmd0aD90Om51bGx9LF9mLnByb3RvdHlwZS5tYXRjaEF0U3RhcnQ9ZnVuY3Rpb24oZSl7aWYodGhpcy5fX3RleHRfY2FjaGVfXz1lLHRoaXMuX19pbmRleF9fPS0xLCFlLmxlbmd0aClyZXR1cm4gbnVsbDtsZXQgdD10aGlzLnJlLnNjaGVtYV9hdF9zdGFydC5leGVjKGUpO2lmKCF0KXJldHVybiBudWxsO2xldCBuPXRoaXMudGVzdFNjaGVtYUF0KGUsdFsyXSx0WzBdLmxlbmd0aCk7cmV0dXJuIG4/KHRoaXMuX19zY2hlbWFfXz10WzJdLHRoaXMuX19pbmRleF9fPXQuaW5kZXgrdFsxXS5sZW5ndGgsdGhpcy5fX2xhc3RfaW5kZXhfXz10LmluZGV4K3RbMF0ubGVuZ3RoK24sZ2YodGhpcywwKSk6bnVsbH0sX2YucHJvdG90eXBlLnRsZHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZT1BcnJheS5pc0FycmF5KGUpP2U6W2VdLHQ/KHRoaXMuX190bGRzX189dGhpcy5fX3RsZHNfXy5jb25jYXQoZSkuc29ydCgpLmZpbHRlcihmdW5jdGlvbihlLHQsbil7cmV0dXJuIGUhPT1uW3QtMV19KS5yZXZlcnNlKCksbWYodGhpcyksdGhpcyk6KHRoaXMuX190bGRzX189ZS5zbGljZSgpLHRoaXMuX190bGRzX3JlcGxhY2VkX189ITAsbWYodGhpcyksdGhpcyl9LF9mLnByb3RvdHlwZS5ub3JtYWxpemU9ZnVuY3Rpb24oZSl7ZS5zY2hlbWF8fChlLnVybD1gaHR0cDovL2ArZS51cmwpLGUuc2NoZW1hPT09YG1haWx0bzpgJiYhL15tYWlsdG86L2kudGVzdChlLnVybCkmJihlLnVybD1gbWFpbHRvOmArZS51cmwpfSxfZi5wcm90b3R5cGUub25Db21waWxlPWZ1bmN0aW9uKCl7fTt2YXIgdmY9SlNPTi5wYXJzZShgWyJhYWEiLCJhYXJwIiwiYWJiIiwiYWJib3R0IiwiYWJidmllIiwiYWJjIiwiYWJsZSIsImFib2dhZG8iLCJhYnVkaGFiaSIsImFjIiwiYWNhZGVteSIsImFjY2VudHVyZSIsImFjY291bnRhbnQiLCJhY2NvdW50YW50cyIsImFjbyIsImFjdG9yIiwiYWQiLCJhZHMiLCJhZHVsdCIsImFlIiwiYWVnIiwiYWVybyIsImFldG5hIiwiYWYiLCJhZmwiLCJhZnJpY2EiLCJhZyIsImFnYWtoYW4iLCJhZ2VuY3kiLCJhaSIsImFpZyIsImFpcmJ1cyIsImFpcmZvcmNlIiwiYWlydGVsIiwiYWtkbiIsImFsIiwiYWxpYmFiYSIsImFsaXBheSIsImFsbGZpbmFueiIsImFsbHN0YXRlIiwiYWxseSIsImFsc2FjZSIsImFsc3RvbSIsImFtIiwiYW1hem9uIiwiYW1lcmljYW5leHByZXNzIiwiYW1lcmljYW5mYW1pbHkiLCJhbWV4IiwiYW1mYW0iLCJhbWljYSIsImFtc3RlcmRhbSIsImFuYWx5dGljcyIsImFuZHJvaWQiLCJhbnF1YW4iLCJhbnoiLCJhbyIsImFvbCIsImFwYXJ0bWVudHMiLCJhcHAiLCJhcHBsZSIsImFxIiwiYXF1YXJlbGxlIiwiYXIiLCJhcmFiIiwiYXJhbWNvIiwiYXJjaGkiLCJhcm15IiwiYXJwYSIsImFydCIsImFydGUiLCJhcyIsImFzZGEiLCJhc2lhIiwiYXNzb2NpYXRlcyIsImF0IiwiYXRobGV0YSIsImF0dG9ybmV5IiwiYXUiLCJhdWN0aW9uIiwiYXVkaSIsImF1ZGlibGUiLCJhdWRpbyIsImF1c3Bvc3QiLCJhdXRob3IiLCJhdXRvIiwiYXV0b3MiLCJhdyIsImF3cyIsImF4IiwiYXhhIiwiYXoiLCJhenVyZSIsImJhIiwiYmFieSIsImJhaWR1IiwiYmFuYW1leCIsImJhbmQiLCJiYW5rIiwiYmFyIiwiYmFyY2Vsb25hIiwiYmFyY2xheWNhcmQiLCJiYXJjbGF5cyIsImJhcmVmb290IiwiYmFyZ2FpbnMiLCJiYXNlYmFsbCIsImJhc2tldGJhbGwiLCJiYXVoYXVzIiwiYmF5ZXJuIiwiYmIiLCJiYmMiLCJiYnQiLCJiYnZhIiwiYmNnIiwiYmNuIiwiYmQiLCJiZSIsImJlYXRzIiwiYmVhdXR5IiwiYmVlciIsImJlcmxpbiIsImJlc3QiLCJiZXN0YnV5IiwiYmV0IiwiYmYiLCJiZyIsImJoIiwiYmhhcnRpIiwiYmkiLCJiaWJsZSIsImJpZCIsImJpa2UiLCJiaW5nIiwiYmluZ28iLCJiaW8iLCJiaXoiLCJiaiIsImJsYWNrIiwiYmxhY2tmcmlkYXkiLCJibG9ja2J1c3RlciIsImJsb2ciLCJibG9vbWJlcmciLCJibHVlIiwiYm0iLCJibXMiLCJibXciLCJibiIsImJucHBhcmliYXMiLCJibyIsImJvYXRzIiwiYm9laHJpbmdlciIsImJvZmEiLCJib20iLCJib25kIiwiYm9vIiwiYm9vayIsImJvb2tpbmciLCJib3NjaCIsImJvc3RpayIsImJvc3RvbiIsImJvdCIsImJvdXRpcXVlIiwiYm94IiwiYnIiLCJicmFkZXNjbyIsImJyaWRnZXN0b25lIiwiYnJvYWR3YXkiLCJicm9rZXIiLCJicm90aGVyIiwiYnJ1c3NlbHMiLCJicyIsImJ0IiwiYnVpbGQiLCJidWlsZGVycyIsImJ1c2luZXNzIiwiYnV5IiwiYnV6eiIsImJ2IiwiYnciLCJieSIsImJ6IiwiYnpoIiwiY2EiLCJjYWIiLCJjYWZlIiwiY2FsIiwiY2FsbCIsImNhbHZpbmtsZWluIiwiY2FtIiwiY2FtZXJhIiwiY2FtcCIsImNhbm9uIiwiY2FwZXRvd24iLCJjYXBpdGFsIiwiY2FwaXRhbG9uZSIsImNhciIsImNhcmF2YW4iLCJjYXJkcyIsImNhcmUiLCJjYXJlZXIiLCJjYXJlZXJzIiwiY2FycyIsImNhc2EiLCJjYXNlIiwiY2FzaCIsImNhc2lubyIsImNhdCIsImNhdGVyaW5nIiwiY2F0aG9saWMiLCJjYmEiLCJjYm4iLCJjYnJlIiwiY2MiLCJjZCIsImNlbnRlciIsImNlbyIsImNlcm4iLCJjZiIsImNmYSIsImNmZCIsImNnIiwiY2giLCJjaGFuZWwiLCJjaGFubmVsIiwiY2hhcml0eSIsImNoYXNlIiwiY2hhdCIsImNoZWFwIiwiY2hpbnRhaSIsImNocmlzdG1hcyIsImNocm9tZSIsImNodXJjaCIsImNpIiwiY2lwcmlhbmkiLCJjaXJjbGUiLCJjaXNjbyIsImNpdGFkZWwiLCJjaXRpIiwiY2l0aWMiLCJjaXR5IiwiY2siLCJjbCIsImNsYWltcyIsImNsZWFuaW5nIiwiY2xpY2siLCJjbGluaWMiLCJjbGluaXF1ZSIsImNsb3RoaW5nIiwiY2xvdWQiLCJjbHViIiwiY2x1Ym1lZCIsImNtIiwiY24iLCJjbyIsImNvYWNoIiwiY29kZXMiLCJjb2ZmZWUiLCJjb2xsZWdlIiwiY29sb2duZSIsImNvbSIsImNvbW1iYW5rIiwiY29tbXVuaXR5IiwiY29tcGFueSIsImNvbXBhcmUiLCJjb21wdXRlciIsImNvbXNlYyIsImNvbmRvcyIsImNvbnN0cnVjdGlvbiIsImNvbnN1bHRpbmciLCJjb250YWN0IiwiY29udHJhY3RvcnMiLCJjb29raW5nIiwiY29vbCIsImNvb3AiLCJjb3JzaWNhIiwiY291bnRyeSIsImNvdXBvbiIsImNvdXBvbnMiLCJjb3Vyc2VzIiwiY3BhIiwiY3IiLCJjcmVkaXQiLCJjcmVkaXRjYXJkIiwiY3JlZGl0dW5pb24iLCJjcmlja2V0IiwiY3Jvd24iLCJjcnMiLCJjcnVpc2UiLCJjcnVpc2VzIiwiY3UiLCJjdWlzaW5lbGxhIiwiY3YiLCJjdyIsImN4IiwiY3kiLCJjeW1ydSIsImN5b3UiLCJjeiIsImRhZCIsImRhbmNlIiwiZGF0YSIsImRhdGUiLCJkYXRpbmciLCJkYXRzdW4iLCJkYXkiLCJkY2xrIiwiZGRzIiwiZGUiLCJkZWFsIiwiZGVhbGVyIiwiZGVhbHMiLCJkZWdyZWUiLCJkZWxpdmVyeSIsImRlbGwiLCJkZWxvaXR0ZSIsImRlbHRhIiwiZGVtb2NyYXQiLCJkZW50YWwiLCJkZW50aXN0IiwiZGVzaSIsImRlc2lnbiIsImRldiIsImRobCIsImRpYW1vbmRzIiwiZGlldCIsImRpZ2l0YWwiLCJkaXJlY3QiLCJkaXJlY3RvcnkiLCJkaXNjb3VudCIsImRpc2NvdmVyIiwiZGlzaCIsImRpeSIsImRqIiwiZGsiLCJkbSIsImRucCIsImRvIiwiZG9jcyIsImRvY3RvciIsImRvZyIsImRvbWFpbnMiLCJkb3QiLCJkb3dubG9hZCIsImRyaXZlIiwiZHR2IiwiZHViYWkiLCJkdXBvbnQiLCJkdXJiYW4iLCJkdmFnIiwiZHZyIiwiZHoiLCJlYXJ0aCIsImVhdCIsImVjIiwiZWNvIiwiZWRla2EiLCJlZHUiLCJlZHVjYXRpb24iLCJlZSIsImVnIiwiZW1haWwiLCJlbWVyY2siLCJlbmVyZ3kiLCJlbmdpbmVlciIsImVuZ2luZWVyaW5nIiwiZW50ZXJwcmlzZXMiLCJlcHNvbiIsImVxdWlwbWVudCIsImVyIiwiZXJpY3Nzb24iLCJlcm5pIiwiZXMiLCJlc3EiLCJlc3RhdGUiLCJldCIsImV1IiwiZXVyb3Zpc2lvbiIsImV1cyIsImV2ZW50cyIsImV4Y2hhbmdlIiwiZXhwZXJ0IiwiZXhwb3NlZCIsImV4cHJlc3MiLCJleHRyYXNwYWNlIiwiZmFnZSIsImZhaWwiLCJmYWlyd2luZHMiLCJmYWl0aCIsImZhbWlseSIsImZhbiIsImZhbnMiLCJmYXJtIiwiZmFybWVycyIsImZhc2hpb24iLCJmYXN0IiwiZmVkZXgiLCJmZWVkYmFjayIsImZlcnJhcmkiLCJmZXJyZXJvIiwiZmkiLCJmaWRlbGl0eSIsImZpZG8iLCJmaWxtIiwiZmluYWwiLCJmaW5hbmNlIiwiZmluYW5jaWFsIiwiZmlyZSIsImZpcmVzdG9uZSIsImZpcm1kYWxlIiwiZmlzaCIsImZpc2hpbmciLCJmaXQiLCJmaXRuZXNzIiwiZmoiLCJmayIsImZsaWNrciIsImZsaWdodHMiLCJmbGlyIiwiZmxvcmlzdCIsImZsb3dlcnMiLCJmbHkiLCJmbSIsImZvIiwiZm9vIiwiZm9vZCIsImZvb3RiYWxsIiwiZm9yZCIsImZvcmV4IiwiZm9yc2FsZSIsImZvcnVtIiwiZm91bmRhdGlvbiIsImZveCIsImZyIiwiZnJlZSIsImZyZXNlbml1cyIsImZybCIsImZyb2dhbnMiLCJmcm9udGllciIsImZ0ciIsImZ1aml0c3UiLCJmdW4iLCJmdW5kIiwiZnVybml0dXJlIiwiZnV0Ym9sIiwiZnlpIiwiZ2EiLCJnYWwiLCJnYWxsZXJ5IiwiZ2FsbG8iLCJnYWxsdXAiLCJnYW1lIiwiZ2FtZXMiLCJnYXAiLCJnYXJkZW4iLCJnYXkiLCJnYiIsImdiaXoiLCJnZCIsImdkbiIsImdlIiwiZ2VhIiwiZ2VudCIsImdlbnRpbmciLCJnZW9yZ2UiLCJnZiIsImdnIiwiZ2dlZSIsImdoIiwiZ2kiLCJnaWZ0IiwiZ2lmdHMiLCJnaXZlcyIsImdpdmluZyIsImdsIiwiZ2xhc3MiLCJnbGUiLCJnbG9iYWwiLCJnbG9ibyIsImdtIiwiZ21haWwiLCJnbWJoIiwiZ21vIiwiZ214IiwiZ24iLCJnb2RhZGR5IiwiZ29sZCIsImdvbGRwb2ludCIsImdvbGYiLCJnb28iLCJnb29keWVhciIsImdvb2ciLCJnb29nbGUiLCJnb3AiLCJnb3QiLCJnb3YiLCJncCIsImdxIiwiZ3IiLCJncmFpbmdlciIsImdyYXBoaWNzIiwiZ3JhdGlzIiwiZ3JlZW4iLCJncmlwZSIsImdyb2NlcnkiLCJncm91cCIsImdzIiwiZ3QiLCJndSIsImd1Y2NpIiwiZ3VnZSIsImd1aWRlIiwiZ3VpdGFycyIsImd1cnUiLCJndyIsImd5IiwiaGFpciIsImhhbWJ1cmciLCJoYW5nb3V0IiwiaGF1cyIsImhibyIsImhkZmMiLCJoZGZjYmFuayIsImhlYWx0aCIsImhlYWx0aGNhcmUiLCJoZWxwIiwiaGVsc2lua2kiLCJoZXJlIiwiaGVybWVzIiwiaGlwaG9wIiwiaGlzYW1pdHN1IiwiaGl0YWNoaSIsImhpdiIsImhrIiwiaGt0IiwiaG0iLCJobiIsImhvY2tleSIsImhvbGRpbmdzIiwiaG9saWRheSIsImhvbWVkZXBvdCIsImhvbWVnb29kcyIsImhvbWVzIiwiaG9tZXNlbnNlIiwiaG9uZGEiLCJob3JzZSIsImhvc3BpdGFsIiwiaG9zdCIsImhvc3RpbmciLCJob3QiLCJob3RlbHMiLCJob3RtYWlsIiwiaG91c2UiLCJob3ciLCJociIsImhzYmMiLCJodCIsImh1IiwiaHVnaGVzIiwiaHlhdHQiLCJoeXVuZGFpIiwiaWJtIiwiaWNiYyIsImljZSIsImljdSIsImlkIiwiaWUiLCJpZWVlIiwiaWZtIiwiaWthbm8iLCJpbCIsImltIiwiaW1hbWF0IiwiaW1kYiIsImltbW8iLCJpbW1vYmlsaWVuIiwiaW4iLCJpbmMiLCJpbmR1c3RyaWVzIiwiaW5maW5pdGkiLCJpbmZvIiwiaW5nIiwiaW5rIiwiaW5zdGl0dXRlIiwiaW5zdXJhbmNlIiwiaW5zdXJlIiwiaW50IiwiaW50ZXJuYXRpb25hbCIsImludHVpdCIsImludmVzdG1lbnRzIiwiaW8iLCJpcGlyYW5nYSIsImlxIiwiaXIiLCJpcmlzaCIsImlzIiwiaXNtYWlsaSIsImlzdCIsImlzdGFuYnVsIiwiaXQiLCJpdGF1IiwiaXR2IiwiamFndWFyIiwiamF2YSIsImpjYiIsImplIiwiamVlcCIsImpldHp0IiwiamV3ZWxyeSIsImppbyIsImpsbCIsImptIiwiam1wIiwiam5qIiwiam8iLCJqb2JzIiwiam9idXJnIiwiam90Iiwiam95IiwianAiLCJqcG1vcmdhbiIsImpwcnMiLCJqdWVnb3MiLCJqdW5pcGVyIiwia2F1ZmVuIiwia2RkaSIsImtlIiwia2Vycnlob3RlbHMiLCJrZXJyeXByb3BlcnRpZXMiLCJrZmgiLCJrZyIsImtoIiwia2kiLCJraWEiLCJraWRzIiwia2ltIiwia2luZGxlIiwia2l0Y2hlbiIsImtpd2kiLCJrbSIsImtuIiwia29lbG4iLCJrb21hdHN1Iiwia29zaGVyIiwia3AiLCJrcG1nIiwia3BuIiwia3IiLCJrcmQiLCJrcmVkIiwia3Vva2dyb3VwIiwia3ciLCJreSIsImt5b3RvIiwia3oiLCJsYSIsImxhY2FpeGEiLCJsYW1ib3JnaGluaSIsImxhbWVyIiwibGFuZCIsImxhbmRyb3ZlciIsImxhbnhlc3MiLCJsYXNhbGxlIiwibGF0IiwibGF0aW5vIiwibGF0cm9iZSIsImxhdyIsImxhd3llciIsImxiIiwibGMiLCJsZHMiLCJsZWFzZSIsImxlY2xlcmMiLCJsZWZyYWsiLCJsZWdhbCIsImxlZ28iLCJsZXh1cyIsImxnYnQiLCJsaSIsImxpZGwiLCJsaWZlIiwibGlmZWluc3VyYW5jZSIsImxpZmVzdHlsZSIsImxpZ2h0aW5nIiwibGlrZSIsImxpbGx5IiwibGltaXRlZCIsImxpbW8iLCJsaW5jb2xuIiwibGluayIsImxpdmUiLCJsaXZpbmciLCJsayIsImxsYyIsImxscCIsImxvYW4iLCJsb2FucyIsImxvY2tlciIsImxvY3VzIiwibG9sIiwibG9uZG9uIiwibG90dGUiLCJsb3R0byIsImxvdmUiLCJscGwiLCJscGxmaW5hbmNpYWwiLCJsciIsImxzIiwibHQiLCJsdGQiLCJsdGRhIiwibHUiLCJsdW5kYmVjayIsImx1eGUiLCJsdXh1cnkiLCJsdiIsImx5IiwibWEiLCJtYWRyaWQiLCJtYWlmIiwibWFpc29uIiwibWFrZXVwIiwibWFuIiwibWFuYWdlbWVudCIsIm1hbmdvIiwibWFwIiwibWFya2V0IiwibWFya2V0aW5nIiwibWFya2V0cyIsIm1hcnJpb3R0IiwibWFyc2hhbGxzIiwibWF0dGVsIiwibWJhIiwibWMiLCJtY2tpbnNleSIsIm1kIiwibWUiLCJtZWQiLCJtZWRpYSIsIm1lZXQiLCJtZWxib3VybmUiLCJtZW1lIiwibWVtb3JpYWwiLCJtZW4iLCJtZW51IiwibWVyY2ttc2QiLCJtZyIsIm1oIiwibWlhbWkiLCJtaWNyb3NvZnQiLCJtaWwiLCJtaW5pIiwibWludCIsIm1pdCIsIm1pdHN1YmlzaGkiLCJtayIsIm1sIiwibWxiIiwibWxzIiwibW0iLCJtbWEiLCJtbiIsIm1vIiwibW9iaSIsIm1vYmlsZSIsIm1vZGEiLCJtb2UiLCJtb2kiLCJtb20iLCJtb25hc2giLCJtb25leSIsIm1vbnN0ZXIiLCJtb3Jtb24iLCJtb3J0Z2FnZSIsIm1vc2NvdyIsIm1vdG8iLCJtb3RvcmN5Y2xlcyIsIm1vdiIsIm1vdmllIiwibXAiLCJtcSIsIm1yIiwibXMiLCJtc2QiLCJtdCIsIm10biIsIm10ciIsIm11IiwibXVzZXVtIiwibXVzaWMiLCJtdiIsIm13IiwibXgiLCJteSIsIm16IiwibmEiLCJuYWIiLCJuYWdveWEiLCJuYW1lIiwibmF2eSIsIm5iYSIsIm5jIiwibmUiLCJuZWMiLCJuZXQiLCJuZXRiYW5rIiwibmV0ZmxpeCIsIm5ldHdvcmsiLCJuZXVzdGFyIiwibmV3IiwibmV3cyIsIm5leHQiLCJuZXh0ZGlyZWN0IiwibmV4dXMiLCJuZiIsIm5mbCIsIm5nIiwibmdvIiwibmhrIiwibmkiLCJuaWNvIiwibmlrZSIsIm5pa29uIiwibmluamEiLCJuaXNzYW4iLCJuaXNzYXkiLCJubCIsIm5vIiwibm9raWEiLCJub3J0b24iLCJub3ciLCJub3dydXoiLCJub3d0diIsIm5wIiwibnIiLCJucmEiLCJucnciLCJudHQiLCJudSIsIm55YyIsIm56Iiwib2JpIiwib2JzZXJ2ZXIiLCJvZmZpY2UiLCJva2luYXdhIiwib2xheWFuIiwib2xheWFuZ3JvdXAiLCJvbGxvIiwib20iLCJvbWVnYSIsIm9uZSIsIm9uZyIsIm9ubCIsIm9ubGluZSIsIm9vbyIsIm9wZW4iLCJvcmFjbGUiLCJvcmFuZ2UiLCJvcmciLCJvcmdhbmljIiwib3JpZ2lucyIsIm9zYWthIiwib3RzdWthIiwib3R0Iiwib3ZoIiwicGEiLCJwYWdlIiwicGFuYXNvbmljIiwicGFyaXMiLCJwYXJzIiwicGFydG5lcnMiLCJwYXJ0cyIsInBhcnR5IiwicGF5IiwicGNjdyIsInBlIiwicGV0IiwicGYiLCJwZml6ZXIiLCJwZyIsInBoIiwicGhhcm1hY3kiLCJwaGQiLCJwaGlsaXBzIiwicGhvbmUiLCJwaG90byIsInBob3RvZ3JhcGh5IiwicGhvdG9zIiwicGh5c2lvIiwicGljcyIsInBpY3RldCIsInBpY3R1cmVzIiwicGlkIiwicGluIiwicGluZyIsInBpbmsiLCJwaW9uZWVyIiwicGl6emEiLCJwayIsInBsIiwicGxhY2UiLCJwbGF5IiwicGxheXN0YXRpb24iLCJwbHVtYmluZyIsInBsdXMiLCJwbSIsInBuIiwicG5jIiwicG9obCIsInBva2VyIiwicG9saXRpZSIsInBvcm4iLCJwb3N0IiwicHIiLCJwcmF4aSIsInByZXNzIiwicHJpbWUiLCJwcm8iLCJwcm9kIiwicHJvZHVjdGlvbnMiLCJwcm9mIiwicHJvZ3Jlc3NpdmUiLCJwcm9tbyIsInByb3BlcnRpZXMiLCJwcm9wZXJ0eSIsInByb3RlY3Rpb24iLCJwcnUiLCJwcnVkZW50aWFsIiwicHMiLCJwdCIsInB1YiIsInB3IiwicHdjIiwicHkiLCJxYSIsInFwb24iLCJxdWViZWMiLCJxdWVzdCIsInJhY2luZyIsInJhZGlvIiwicmUiLCJyZWFkIiwicmVhbGVzdGF0ZSIsInJlYWx0b3IiLCJyZWFsdHkiLCJyZWNpcGVzIiwicmVkIiwicmVkdW1icmVsbGEiLCJyZWhhYiIsInJlaXNlIiwicmVpc2VuIiwicmVpdCIsInJlbGlhbmNlIiwicmVuIiwicmVudCIsInJlbnRhbHMiLCJyZXBhaXIiLCJyZXBvcnQiLCJyZXB1YmxpY2FuIiwicmVzdCIsInJlc3RhdXJhbnQiLCJyZXZpZXciLCJyZXZpZXdzIiwicmV4cm90aCIsInJpY2giLCJyaWNoYXJkbGkiLCJyaWNvaCIsInJpbCIsInJpbyIsInJpcCIsInJvIiwicm9ja3MiLCJyb2RlbyIsInJvZ2VycyIsInJvb20iLCJycyIsInJzdnAiLCJydSIsInJ1Z2J5IiwicnVociIsInJ1biIsInJ3IiwicndlIiwicnl1a3l1Iiwic2EiLCJzYWFybGFuZCIsInNhZmUiLCJzYWZldHkiLCJzYWt1cmEiLCJzYWxlIiwic2Fsb24iLCJzYW1zY2x1YiIsInNhbXN1bmciLCJzYW5kdmlrIiwic2FuZHZpa2Nvcm9tYW50Iiwic2Fub2ZpIiwic2FwIiwic2FybCIsInNhcyIsInNhdmUiLCJzYXhvIiwic2IiLCJzYmkiLCJzYnMiLCJzYyIsInNjYiIsInNjaGFlZmZsZXIiLCJzY2htaWR0Iiwic2Nob2xhcnNoaXBzIiwic2Nob29sIiwic2NodWxlIiwic2Nod2FyeiIsInNjaWVuY2UiLCJzY290Iiwic2QiLCJzZSIsInNlYXJjaCIsInNlYXQiLCJzZWN1cmUiLCJzZWN1cml0eSIsInNlZWsiLCJzZWxlY3QiLCJzZW5lciIsInNlcnZpY2VzIiwic2V2ZW4iLCJzZXciLCJzZXgiLCJzZXh5Iiwic2ZyIiwic2ciLCJzaCIsInNoYW5ncmlsYSIsInNoYXJwIiwic2hlbGwiLCJzaGlhIiwic2hpa3NoYSIsInNob2VzIiwic2hvcCIsInNob3BwaW5nIiwic2hvdWppIiwic2hvdyIsInNpIiwic2lsayIsInNpbmEiLCJzaW5nbGVzIiwic2l0ZSIsInNqIiwic2siLCJza2kiLCJza2luIiwic2t5Iiwic2t5cGUiLCJzbCIsInNsaW5nIiwic20iLCJzbWFydCIsInNtaWxlIiwic24iLCJzbmNmIiwic28iLCJzb2NjZXIiLCJzb2NpYWwiLCJzb2Z0YmFuayIsInNvZnR3YXJlIiwic29odSIsInNvbGFyIiwic29sdXRpb25zIiwic29uZyIsInNvbnkiLCJzb3kiLCJzcGEiLCJzcGFjZSIsInNwb3J0Iiwic3BvdCIsInNyIiwic3JsIiwic3MiLCJzdCIsInN0YWRhIiwic3RhcGxlcyIsInN0YXIiLCJzdGF0ZWJhbmsiLCJzdGF0ZWZhcm0iLCJzdGMiLCJzdGNncm91cCIsInN0b2NraG9sbSIsInN0b3JhZ2UiLCJzdG9yZSIsInN0cmVhbSIsInN0dWRpbyIsInN0dWR5Iiwic3R5bGUiLCJzdSIsInN1Y2tzIiwic3VwcGxpZXMiLCJzdXBwbHkiLCJzdXBwb3J0Iiwic3VyZiIsInN1cmdlcnkiLCJzdXp1a2kiLCJzdiIsInN3YXRjaCIsInN3aXNzIiwic3giLCJzeSIsInN5ZG5leSIsInN5c3RlbXMiLCJzeiIsInRhYiIsInRhaXBlaSIsInRhbGsiLCJ0YW9iYW8iLCJ0YXJnZXQiLCJ0YXRhbW90b3JzIiwidGF0YXIiLCJ0YXR0b28iLCJ0YXgiLCJ0YXhpIiwidGMiLCJ0Y2kiLCJ0ZCIsInRkayIsInRlYW0iLCJ0ZWNoIiwidGVjaG5vbG9neSIsInRlbCIsInRlbWFzZWsiLCJ0ZW5uaXMiLCJ0ZXZhIiwidGYiLCJ0ZyIsInRoIiwidGhkIiwidGhlYXRlciIsInRoZWF0cmUiLCJ0aWFhIiwidGlja2V0cyIsInRpZW5kYSIsInRpcHMiLCJ0aXJlcyIsInRpcm9sIiwidGoiLCJ0am1heHgiLCJ0angiLCJ0ayIsInRrbWF4eCIsInRsIiwidG0iLCJ0bWFsbCIsInRuIiwidG8iLCJ0b2RheSIsInRva3lvIiwidG9vbHMiLCJ0b3AiLCJ0b3JheSIsInRvc2hpYmEiLCJ0b3RhbCIsInRvdXJzIiwidG93biIsInRveW90YSIsInRveXMiLCJ0ciIsInRyYWRlIiwidHJhZGluZyIsInRyYWluaW5nIiwidHJhdmVsIiwidHJhdmVsZXJzIiwidHJhdmVsZXJzaW5zdXJhbmNlIiwidHJ1c3QiLCJ0cnYiLCJ0dCIsInR1YmUiLCJ0dWkiLCJ0dW5lcyIsInR1c2h1IiwidHYiLCJ0dnMiLCJ0dyIsInR6IiwidWEiLCJ1YmFuayIsInVicyIsInVnIiwidWsiLCJ1bmljb20iLCJ1bml2ZXJzaXR5IiwidW5vIiwidW9sIiwidXBzIiwidXMiLCJ1eSIsInV6IiwidmEiLCJ2YWNhdGlvbnMiLCJ2YW5hIiwidmFuZ3VhcmQiLCJ2YyIsInZlIiwidmVnYXMiLCJ2ZW50dXJlcyIsInZlcmlzaWduIiwidmVybcO2Z2Vuc2JlcmF0ZXIiLCJ2ZXJtw7ZnZW5zYmVyYXR1bmciLCJ2ZXJzaWNoZXJ1bmciLCJ2ZXQiLCJ2ZyIsInZpIiwidmlhamVzIiwidmlkZW8iLCJ2aWciLCJ2aWtpbmciLCJ2aWxsYXMiLCJ2aW4iLCJ2aXAiLCJ2aXJnaW4iLCJ2aXNhIiwidmlzaW9uIiwidml2YSIsInZpdm8iLCJ2bGFhbmRlcmVuIiwidm4iLCJ2b2RrYSIsInZvbHZvIiwidm90ZSIsInZvdGluZyIsInZvdG8iLCJ2b3lhZ2UiLCJ2dSIsIndhbGVzIiwid2FsbWFydCIsIndhbHRlciIsIndhbmciLCJ3YW5nZ291Iiwid2F0Y2giLCJ3YXRjaGVzIiwid2VhdGhlciIsIndlYXRoZXJjaGFubmVsIiwid2ViY2FtIiwid2ViZXIiLCJ3ZWJzaXRlIiwid2VkIiwid2VkZGluZyIsIndlaWJvIiwid2VpciIsIndmIiwid2hvc3dobyIsIndpZW4iLCJ3aWtpIiwid2lsbGlhbWhpbGwiLCJ3aW4iLCJ3aW5kb3dzIiwid2luZSIsIndpbm5lcnMiLCJ3bWUiLCJ3b2x0ZXJza2x1d2VyIiwid29vZHNpZGUiLCJ3b3JrIiwid29ya3MiLCJ3b3JsZCIsIndvdyIsIndzIiwid3RjIiwid3RmIiwieGJveCIsInhlcm94IiwieGlodWFuIiwieGluIiwieHh4IiwieHl6IiwieWFjaHRzIiwieWFob28iLCJ5YW1heHVuIiwieWFuZGV4IiwieWUiLCJ5b2RvYmFzaGkiLCJ5b2dhIiwieW9rb2hhbWEiLCJ5b3UiLCJ5b3V0dWJlIiwieXQiLCJ5dW4iLCJ6YSIsInphcHBvcyIsInphcmEiLCJ6ZXJvIiwiemlwIiwiem0iLCJ6b25lIiwienVlcmljaCIsInp3IiwizrXOuyIsIs61z4UiLCLQsdCzIiwi0LHQtdC7Iiwi0LTQtdGC0LgiLCLQtdGOIiwi0LrQsNGC0L7Qu9C40LoiLCLQutC+0LwiLCLQvNC60LQiLCLQvNC+0L0iLCLQvNC+0YHQutCy0LAiLCLQvtC90LvQsNC50L0iLCLQvtGA0LMiLCLRgNGD0YEiLCLRgNGEIiwi0YHQsNC50YIiLCLRgdGA0LEiLCLRg9C60YAiLCLSm9Cw0LciLCLVsNWh1bUiLCLXmdep16jXkNecIiwi16fXldedIiwi2KfYqNmI2LjYqNmKIiwi2KfYsdin2YXZg9mIIiwi2KfZhNin2LHYr9mGIiwi2KfZhNio2K3YsdmK2YYiLCLYp9mE2KzYstin2KbYsSIsItin2YTYs9i52YjYr9mK2KkiLCLYp9mE2LnZhNmK2KfZhiIsItin2YTZhdi62LHYqCIsItin2YXYp9ix2KfYqiIsItin24zYsdin2YYiLCLYqNin2LHYqiIsItio2KfYstin2LEiLCLYqNmK2KrZgyIsItio2r7Yp9ix2KoiLCLYqtmI2YbYsyIsItiz2YjYr9in2YYiLCLYs9mI2LHZitipIiwi2LTYqNmD2KkiLCLYudix2KfZgiIsIti52LHYqCIsIti52YXYp9mGIiwi2YHZhNiz2LfZitmGIiwi2YLYt9ixIiwi2YPYp9ir2YjZhNmK2YMiLCLZg9mI2YUiLCLZhdi12LEiLCLZhdmE2YrYs9mK2KciLCLZhdmI2LHZitiq2KfZhtmK2KciLCLZhdmI2YLYuSIsItmH2YXYsdin2YciLCLZvtin2qnYs9iq2KfZhiIsItqA2KfYsdiqIiwi4KSV4KWJ4KSuIiwi4KSo4KWH4KSfIiwi4KSt4KS+4KSw4KSkIiwi4KSt4KS+4KSw4KSk4KSu4KWNIiwi4KSt4KS+4KSw4KWL4KSkIiwi4KS44KSC4KSX4KSg4KSoIiwi4Kas4Ka+4KaC4Kay4Ka+Iiwi4Kat4Ka+4Kaw4KakIiwi4Kat4Ka+4Kew4KakIiwi4Kit4Ki+4Kiw4KikIiwi4Kqt4Kq+4Kqw4KqkIiwi4Kyt4Ky+4Kyw4KykIiwi4K6H4K6o4K+N4K6k4K6/4K6v4K6+Iiwi4K6H4K6y4K6Z4K+N4K6V4K+IIiwi4K6a4K6/4K6Z4K+N4K6V4K6q4K+N4K6q4K+C4K6w4K+NIiwi4LCt4LC+4LCw4LCk4LGNIiwi4LKt4LK+4LKw4LKkIiwi4LSt4LS+4LSw4LSk4LSCIiwi4La94LaC4Laa4LePIiwi4LiE4Lit4LihIiwi4LmE4LiX4LiiIiwi4Lql4Lqy4LqnIiwi4YOS4YOUIiwi44G/44KT44GqIiwi44Ki44Oe44K+44OzIiwi44Kv44Op44Km44OJIiwi44Kw44O844Kw44OrIiwi44Kz44OgIiwi44K544OI44KiIiwi44K744O844OrIiwi44OV44Kh44OD44K344On44OzIiwi44Od44Kk44Oz44OIIiwi5LiW55WMIiwi5Lit5L+hIiwi5Lit5Zu9Iiwi5Lit5ZyLIiwi5Lit5paH572RIiwi5Lqa6ams6YCKIiwi5LyB5LiaIiwi5L2b5bGxIiwi5L+h5oGvIiwi5YGl5bq3Iiwi5YWr5Y2mIiwi5YWs5Y+4Iiwi5YWs55uKIiwi5Y+w5rm+Iiwi5Y+w54GjIiwi5ZWG5Z+OIiwi5ZWG5bqXIiwi5ZWG5qCHIiwi5ZiJ6YeMIiwi5ZiJ6YeM5aSn6YWS5bqXIiwi5Zyo57q/Iiwi5aSn5ou/Iiwi5aSp5Li75pWZIiwi5aix5LmQIiwi5a626Zu7Iiwi5bm/5LicIiwi5b6u5Y2aIiwi5oWI5ZaEIiwi5oiR54ix5L2gIiwi5omL5py6Iiwi5oub6IGYIiwi5pS/5YqhIiwi5pS/5bqcIiwi5paw5Yqg5Z2hIiwi5paw6Ze7Iiwi5pe25bCaIiwi5pu457GNIiwi5py65p6EIiwi5reh6ams6ZShIiwi5ri45oiPIiwi5r6z6ZaAIiwi54K555yLIiwi56e75YqoIiwi57uE57uH5py65p6EIiwi572R5Z2AIiwi572R5bqXIiwi572R56uZIiwi572R57ucIiwi6IGU6YCaIiwi6LC35q2MIiwi6LSt54mpIiwi6YCa6LKpIiwi6ZuG5ZuiIiwi6Zu76KiK55uI56eRIiwi6aOe5Yip5rWmIiwi6aOf5ZOBIiwi6aSQ5Y6FIiwi6aaZ5qC86YeM5ouJIiwi6aaZ5rivIiwi64u364S3Iiwi64u37Lu0Iiwi7IK87ISxIiwi7ZWc6rWtIl1gKSx5Zj0vXlstISMkJSYnKisvMC05PT9BLVpeX2EtemB7fH1+XShcLj9bLSEjJCUmJyorLzAtOT0/QS1aXl9hLXpge3x9fl0pKkBbYS16QS1aMC05XSgtKlwuP1thLXpBLVowLTldKSpcLlthLXpBLVpdKC0/W2EtekEtWjAtOV0pKyQvLGJmPS8oKD86d3d3Lik/W15ccy5dK1wuW15ccy9dK1wvW15ccy5dKykvLHhmPS9bJjw+IiddL2csU2Y9ZT0+e2xldCB0PXsiJiI6YCZhbXA7YCwiPCI6YCZsdDtgLCI+IjpgJmd0O2AsJyInOmAmcXVvdDtgLCInIjpgJiMzOTtgfSxuPVJlZ0V4cCh4Zi5zb3VyY2UpO3JldHVybiBlJiZuLnRlc3QoZSk/ZS5yZXBsYWNlKHhmLGU9PnRbZV0pOmV8fGBgfSxDZj1gb3ZlcmZsb3c6IGhpZGRlbjsgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94OyAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOyAtd2Via2l0LWxpbmUtY2xhbXA6IDE7IGxpbmUtY2xhbXA6IDE7IHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtgLHdmPW5ldyBfZigpLnRsZHModmYpLnNldCh7ZnV6enlJUDohMH0pLFRmPW5ldyBfZigpLnRsZHModmYpLEVmPShlLHQsbik9PntsZXQgcj1CKCkubG9jYXRpb24uaG9zdG5hbWU7cmV0dXJuYDxhIGhyZWY9IiR7ZX0iIHRhcmdldD0iJHtyLmxlbmd0aD4wJiZlLmluY2x1ZGVzKHIpP2BfcGFyZW50YDpgX2JsYW5rYH0iIHJlbD0ibm9yZWZlcnJlciBub29wZW5lciIgdGl0bGU9IiR7ZX0iIHN0eWxlPSIke24/LmNsYW1wJiYhbj8ucmVwbGFjZVRleHQ/Q2Y6YGB9Ij4ke3R9PC9hPmB9LERmPShlLHQpPT57aWYoZT09PWBgKXJldHVybiBlO2xldCBuPXdmLm1hdGNoKGUpO2lmKCFuKXJldHVybiBTZihlKTtsZXQgcj1gYCxpPTA7cmV0dXJuIG4uZm9yRWFjaChuPT57bGV0IGE9YGAsbz1gYCxzPU9mKGUsbiksYz10Py5jbGFtcCYmbi50ZXh0Lmxlbmd0aD4zMCYmIXM7bi5pbmRleD5pJiYoYT1lLnN1YnN0cmluZyhpLG4uaW5kZXgpKSxvPUVmKG4udXJsLG4udGV4dCx7Li4udCxjbGFtcDpjfSksaT1uLmxhc3RJbmRleCxzJiYoYT1hLnN1YnN0cmluZygwLGEubGVuZ3RoLTEpLGkrPTEpLGMmJiFrZihlLG4pJiYobz1gXG4ke299XG5gLGE9YS50cmltRW5kKCksZVtpXT8ubWF0Y2goL1xzLykmJihpKz0xKSkscis9U2YoYSkrb30pLGUubGVuZ3RoPmkmJihyKz1TZihlLnN1YnN0cmluZyhpKSkpLHJ9LE9mPShlLHQpPT5lW3QuaW5kZXgtMV09PT1gImAmJmVbdC5sYXN0SW5kZXhdPT09YCJgLGtmPShlLHQpPT4hISh0LmluZGV4PD0xJiZlLnN1YnN0cmluZyh0Lmxhc3RJbmRleCx0Lmxhc3RJbmRleCszKS5tYXRjaCgvW1xuXHJdKy8pfHxlLnN1YnN0cmluZyh0LmluZGV4LTMsdC5pbmRleCkubWF0Y2goL1tcblxyXSsvKSYmZS5zdWJzdHJpbmcodC5sYXN0SW5kZXgsdC5sYXN0SW5kZXgrMykubWF0Y2goL1tcblxyXSsvKXx8ZS5zdWJzdHJpbmcodC5pbmRleC0zLHQuaW5kZXgpLm1hdGNoKC9bXG5ccl0rLykmJnQubGFzdEluZGV4PmUubGVuZ3RoLTN8fHQuaW5kZXg8PTEmJnQubGFzdEluZGV4Pj1lLmxlbmd0aC0yKSxBZj1lPT5lLnJlcGxhY2UoL15odHRwcz86XC9cLy8sYGApLnJlcGxhY2UoL153d3dcLi8sYGApLnJlcGxhY2UoL1wvKyQvLGBgKS50b0xvd2VyQ2FzZSgpLGpmPWU9PntsZXQgdD1bYG1haWx0bzpgLGBmdHA6YCxgLy9gXSxuPVRmLm1hdGNoKGUpO2lmKCFuKXJldHVybiBudWxsO2xldCByPW5ldyBTZXQ7cmV0dXJuIG4uZmlsdGVyKGU9PntpZih0LmluY2x1ZGVzKGUuc2NoZW1hKSlyZXR1cm4hMTtsZXQgbj1BZihlLnVybCk7cmV0dXJuIHIuaGFzKG4pPyExOihyLmFkZChuKSwhMCl9KX0sTWY9KCk9PlBvKGBjYXJkc2ApLE5mPWU9PntGbyh7Li4uZX0sYGNhcmRzYCl9LFBmPWFzeW5jIGU9PntsZXQgdD1uZXcgSGVhZGVycyx7d2lkZ2V0QXBpVXJsOm59PVYuZ2V0T3B0aW9ucygpO3QuYXBwZW5kKGBDb250ZW50LVR5cGVgLGBhcHBsaWNhdGlvbi9qc29uYCk7bGV0IHI9SlNPTi5zdHJpbmdpZnkoe2xpbmtzOmV9KTt0cnl7bGV0IGU9YXdhaXQgZmV0Y2goYCR7bn0vbGlua3MvcHJldmlld2Ase21ldGhvZDpgUE9TVGAsaGVhZGVyczp0LGJvZHk6cn0pO3JldHVybiBlLm9rJiZlLmpzb24/YXdhaXQgZS5qc29uKCk6bnVsbH1jYXRjaHtyZXR1cm4gbnVsbH19LEZmPWU9PmUuZmluZChlPT5lLnR5cGU9PT1gb3Blbl91cmxgKT8udmFsdWV8fGBgLElmPWU9PntsZXQgdD1lLmZpbHRlcihlPT5lLnRpdGxlJiZlLmltYWdlJiYhUmYoRmYoZS5hY3Rpb25zKSkpO3JldHVybiB0Lmxlbmd0aCYmZS5sZW5ndGg+MT9lOnQubGVuZ3RoPT09MT90OltdfSxMZj1lPT57bGV0IHQ9bmV3IERhdGUoKS5nZXRUaW1lKCk7cmV0dXJuIE9iamVjdC5rZXlzKGUpLmZvckVhY2gobj0+eyghZVtuXS5leHBpcmF0aW9ufHxlW25dLmV4cGlyYXRpb24mJmVbbl0uZXhwaXJhdGlvbjx0KSYmZGVsZXRlIGVbbl19KSxlfSxSZj1lPT57bGV0e2FjY2VwdGVkRmlsZUV4dGVuc2lvbnM6dH09QShibCksbj1lLm1hdGNoKC8oXC4pKFteLl17Myw0fSkkL20pO3JldHVybiBuJiZuWzJdJiZ0LmluY2x1ZGVzKG5bMl0pfSx6Zj1hc3luYyBlPT57dHJ5e2F3YWl0IHEuZ2V0Q2xpZW50KCkubGlua09wZW5lZCh7dXJsOmV9KX1jYXRjaChlKXtqbyhgU2VuZGluZyBsaW5rIG9wZW5lZCBhbmFseXRpY3MgZXZlbnQgZmFpbGVkYCxTdHJpbmcoZSkpfX0sQmY9KGUsdCk9PntpZighdClyZXR1cm47bGV0IG49YXN5bmMgbj0+e2xldCByPW4udGFyZ2V0LmNsb3Nlc3QoYGFgKTtyJiZlLmNvbnRhaW5zKHIpJiZ0JiZhd2FpdCB6ZihyLmhyZWYpfSxyPWU9PnZvaWQgbihlKSxpPWU9PntlLmJ1dHRvbiE9PTImJm4oZSl9LGE9ZT0+dm9pZCBuKGUpO3JldHVybiBlLmFkZEV2ZW50TGlzdGVuZXIoYGNsaWNrYCxyKSxlLmFkZEV2ZW50TGlzdGVuZXIoYGF1eGNsaWNrYCxpKSxlLmFkZEV2ZW50TGlzdGVuZXIoYGNvbnRleHRtZW51YCxhKSx7ZGVzdHJveSgpe2UucmVtb3ZlRXZlbnRMaXN0ZW5lcihgY2xpY2tgLHIpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcihgYXV4Y2xpY2tgLGkpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcihgY29udGV4dG1lbnVgLGEpfX19LFZmPSExLEhmPU8oKSxVZj1PKCExKSxXZj1PKCExKSxHZj0oZSx0LG4pPT57bGV0IHI9e30saT1uZXcgRGF0ZSgpLmdldFRpbWUoKStNZDtlLmZvckVhY2goKGUsbik9PnJbZV09e2V4cGlyYXRpb246aSxjYXJkOnRbbl19KTtsZXQgYT17Li4ubiwuLi5yfTtIZi5zZXQoYSksTmYoYSl9LEtmPWFzeW5jKGUsdCxuPSExKT0+e2xldCByPVtdLGk9e3R5cGU6YGNhcmRzYCxsYXlvdXQ6YGNhcm91c2VsYCxpdGVtczpbXX07VmZ8fD0oSGYuc2V0KE1mKCkpLCEwKTtsZXQgYT1qZihlKTtpZighYSlyZXR1cm4gbnVsbDtsZXQgbz1MZihBKEhmKSkscz1bXTtpZihhLmZvckVhY2godD0+e09mKGUsdCl8fChvW3QudXJsXT9yLnB1c2gob1t0LnVybF0uY2FyZCk6cy5wdXNoKHQudXJsKSl9KSxzLmxlbmd0aD4wKXt0JiZVZi5zZXQoITApLG4mJldmLnNldCghMCk7bGV0IGU9YXdhaXQgUGYocyk7ZSYmKEdmKHMsZSxvKSxyPVsuLi5yLC4uLmVdKX1yZXR1cm4gaS5pdGVtcz1JZihyKSxVZi5zZXQoITEpLFdmLnNldCghMSksaS5pdGVtcy5sZW5ndGg+MD9pOm51bGx9LHFmPWZ1bmN0aW9uKGUpe3JldHVybiBlLkNvbnRhY3RNZXNzYWdlPWBjb250YWN0LW1lc3NhZ2VgLGUuQWdlbnRNZXNzYWdlPWBhZ2VudC1tZXNzYWdlYCxlLkJvdE1lc3NhZ2U9YGJvdC1tZXNzYWdlYCxlLkJvdFJlcGxpZXM9YGJvdC1yZXBsaWVzYCxlfSh7fSksSmY9YXN5bmMoe3RleHQ6ZSxxdWlja1JlcGx5OnR9KT0+e3RyeXtsZXQgbj1CKCkubG9jYXRpb24uaHJlZjtyZXR1cm4gYXdhaXQgcS5nZXRDbGllbnQoKS5jaGF0TWVzc2FnZSh7Y29udGVudDp7dHlwZTpHLk1lc3NhZ2VDb250ZW50VHlwZS5UZXh0LHRleHQ6ZX0scXVpY2tSZXBseTp0LHBhZ2VVcmw6bn0pPz9udWxsfWNhdGNoe3JldHVybiBudWxsfX0sWWY9ZT0+ZS5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5Cb3R8fGUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuVHJpZ2dlcixYZj1lPT5lLnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLlN5c3RlbSxaZj1lPT5lLnR5cGU9PT1HLk1lc3NhZ2VUeXBlLk5vdGUsUWY9ZT0+IWUuZGVsZXRlZEF0JiYhWmYoZSkmJihlLnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLkFnZW50fHxZZihlKSksJGY9ZT0+YGh0bWxgaW4gZSYmISFlLmh0bWwsZXA9ZT0+YHRleHRgaW4gZSYmISFlLnRleHQsdHA9KGUsdCk9Pm5ldyBEYXRlKGUuY3JlYXRlZEF0KS5nZXRUaW1lKCktbmV3IERhdGUodC5jcmVhdGVkQXQpLmdldFRpbWUoKSxucD0oZSx0KT0+dD09PXFmLkJvdFJlcGxpZXM/YCR7ZS5pZH0tcmVwbGllc2A6ZS5pZCxycD1lPT57bGV0IHQ9e2lzUmlnaHQ6ITEsaXNMZWZ0OiExfSxuPXtpc1ByaW1hcnk6ITEsaXNTZWNvbmRhcnk6ITF9O3N3aXRjaChlKXtjYXNlIHFmLkNvbnRhY3RNZXNzYWdlOnQuaXNSaWdodD0hMCxuLmlzUHJpbWFyeT0hMDticmVhaztkZWZhdWx0OnQuaXNMZWZ0PSEwLG4uaXNTZWNvbmRhcnk9ITB9cmV0dXJue2FsaWduOnQsdmFyaWFudDpufX0saXA9ZT0+ISFlLmFnZW50SWR8fGUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQm90JiZlLmNvbnRlbnQudHlwZSE9PUcuTWVzc2FnZUNvbnRlbnRUeXBlLlRpY2tldEZvcm0sYXA9KGUsdCk9PmUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuU3lzdGVtfHx0PT09cWYuQm90UmVwbGllc3x8ZS5jb250ZW50LnR5cGU9PT1HLk1lc3NhZ2VDb250ZW50VHlwZS5UaWNrZXRGb3JtLG9wPWU9PntsZXQgdD1bXSxuPW51bGwscj1udWxsO2ZvcihsZXQgaSBvZiBlKXtpZihpLmNvbnRlbnQudHlwZT09PUcuTWVzc2FnZUNvbnRlbnRUeXBlLlJhdGVGb3JtJiYoaS5jb250ZW50LmRhdGEudGFyZ2V0PT09Ry5SYXRpbmdUYXJnZXQuQWkmJiFKcCgpfHxpLmNvbnRlbnQuZGF0YS50YXJnZXQ9PT1HLlJhdGluZ1RhcmdldC5BZ2VudCYmIXFwKCkpKWNvbnRpbnVlO24mJiFocChpLG4pJiYodC5wdXNoKG4pLG49bnVsbCxyPW51bGwpLG58fD1zcChpKTtsZXQgZT1scChpLG4pO2lmKHIpe2xldCB0PV9wKHIpLG49ZHAocik7ZS5uZWlnaGJvcnMuaGFzVG9wPXQsbi5hbnkubmVpZ2hib3JzLmhhc0JvdHRvbT10LG4uYXR0YWNobWVudENvbnRleHQmJihuLmF0dGFjaG1lbnRDb250ZXh0LmV4dHJhU3BhY2VzLmhhc0JvdHRvbT15cChuLmF0dGFjaG1lbnRDb250ZXh0LmF0dGFjaG1lbnQpKX1sZXQgYT1mcChpKTtpZihhJiZ1cChhLGUsciksbi5tZXNzYWdlc0NvbnRleHQucHVzaChlKSxyPWUsKFlmKGkpfHxYZihpKSkmJlRwKGkpKXt0LnB1c2gobik7bGV0IGU9Y3AoaSk7ZS5tZXNzYWdlc0NvbnRleHQucHVzaChscChpLGUpKSx0LnB1c2goZSksbj1udWxsfX1yZXR1cm4gbiYmdC5wdXNoKG4pLHR9LHNwPWU9PntsZXQgdD1ncChlKSxuPWUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQm90fHxlLnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLlRyaWdnZXIse2FsaWduOnIsdmFyaWFudDppfT1ycCh0KTtyZXR1cm57dHlwZTp0LGlzQm90Om4saWQ6bnAoZSx0KSxkYXRlOmUuY3JlYXRlZEF0LGFnZW50SWQ6ZS5hZ2VudElkLGFsaWduOnIsdmFyaWFudDppLG1lc3NhZ2VzQ29udGV4dDpbXSxzaG93QXZhdGFyOmlwKGUpLHVzZUZ1bGxXaWR0aDphcChlLHQpfX0sY3A9ZT0+e2xldCB0PXFmLkJvdFJlcGxpZXMse2FsaWduOm4sdmFyaWFudDpyfT1ycCh0KTtyZXR1cm57dHlwZTpxZi5Cb3RSZXBsaWVzLGlzQm90OiEwLGlkOm5wKGUsdCksZGF0ZTplLmNyZWF0ZWRBdCxhZ2VudElkOmUuYWdlbnRJZCxhbGlnbjpuLHZhcmlhbnQ6cixtZXNzYWdlc0NvbnRleHQ6W10sc2hvd0F2YXRhcjohMSx1c2VGdWxsV2lkdGg6YXAoZSx0KX19LGxwPShlLHQpPT4oe2dyb3VwOnQsbWVzc2FnZTplLG5laWdoYm9yczp7aGFzVG9wOiExLGhhc0JvdHRvbTohMX0sYXR0YWNobWVudHNDb250ZXh0OltdfSksdXA9KGUsdCxuKT0+e2xldCByPW51bGw7Zm9yKGxldCBpIG9mIGUpe2xldCBlPXZwKGkpLGE9e2hhc1RvcDohMSxoYXNCb3R0b206ITF9LG89eXAoaSkscz17aGFzVG9wOm8saGFzQm90dG9tOiExfTtpZihyKXtsZXQgdD12cChyLmF0dGFjaG1lbnQpLG49eXAoci5hdHRhY2htZW50KTtyLm5laWdoYm9ycy5oYXNCb3R0b209dCYmZSxhLmhhc1RvcD10JiZlLHIuZXh0cmFTcGFjZXMuaGFzQm90dG9tPSFvJiZufWVsc2UgaWYodC5uZWlnaGJvcnMuaGFzQm90dG9tPWUsYS5oYXNUb3A9ZSxwcCh0Lm1lc3NhZ2UpKWlmKGEuaGFzVG9wPSExLHQubmVpZ2hib3JzLmhhc1RvcD0hMSx0Lm5laWdoYm9ycy5oYXNCb3R0b209ITEsbil7bGV0IHQ9X3Aobikscj1kcChuKTthLmhhc1RvcD10JiZlLHIuYW55Lm5laWdoYm9ycy5oYXNCb3R0b209dCYmZTtsZXQgaT1yLmF0dGFjaG1lbnRDb250ZXh0O2kmJihpLmV4dHJhU3BhY2VzLmhhc0JvdHRvbT0hbyYmeXAoaS5hdHRhY2htZW50KSl9ZWxzZSBzLmhhc1RvcD0hMTtsZXQgYz17YXR0YWNobWVudDppLG5laWdoYm9yczphLGV4dHJhU3BhY2VzOnMsbWVzc2FnZUNvbnRleHQ6dH07dC5hdHRhY2htZW50c0NvbnRleHQucHVzaChjKSxyPXsuLi5jfX19LGRwPWU9PntsZXQgdD1TZChlLmF0dGFjaG1lbnRzQ29udGV4dCl8fHZvaWQgMDtyZXR1cm57YXR0YWNobWVudENvbnRleHQ6dCxhbnk6dHx8ZX19LGZwPWU9PmU/ZS5jb250ZW50Py50eXBlPT09Ry5NZXNzYWdlQ29udGVudFR5cGUuVXBsb2FkP1tlLmNvbnRlbnQuZGF0YV06ZS5hdHRhY2htZW50czpbXSxwcD1lPT4hZS5jb250ZW50LnRleHQsbXA9ZT0+e3RyeXtsZXQgdD1CKCkubG9jYXRpb24uaG9zdG5hbWUsbj1uZXcgRE9NUGFyc2VyKCkucGFyc2VGcm9tU3RyaW5nKGUsYHRleHQvaHRtbGApO3JldHVybiBuLnF1ZXJ5U2VsZWN0b3JBbGwoYGFbaHJlZl1gKS5mb3JFYWNoKGU9PntsZXQgbj1lLmdldEF0dHJpYnV0ZShgaHJlZmApfHxgYDtuPW4ucmVwbGFjZSgvXmh0dHBzPzpcL1wvIj9odHRwcz86XC9cLy8sYGh0dHBzOi8vYCksbj1uLnJlcGxhY2UoL14iK3wiKyQvZyxgYCksZS5zZXRBdHRyaWJ1dGUoYGhyZWZgLG4pO2xldCByPXQubGVuZ3RoPjAmJm4uaW5jbHVkZXModCk7ZS5oYXNBdHRyaWJ1dGUoYHRhcmdldGApfHxlLnNldEF0dHJpYnV0ZShgdGFyZ2V0YCxyP2BfcGFyZW50YDpgX2JsYW5rYCksZS5oYXNBdHRyaWJ1dGUoYHJlbGApfHxlLnNldEF0dHJpYnV0ZShgcmVsYCxgbm9vcGVuZXIgbm9yZWZlcnJlcmApfSksbi5ib2R5LmlubmVySFRNTH1jYXRjaHtyZXR1cm4gZX19LGhwPShlLHQpPT57bGV0IG49Z3AoZSkscj1uPT09cWYuQWdlbnRNZXNzYWdlJiZlLmFnZW50SWQ9PT10LmFnZW50SWQsaT1uPT09cWYuQ29udGFjdE1lc3NhZ2UsYT1lLnN1YlR5cGUhPT1HLk1lc3NhZ2VTdWJUeXBlLkJvdHx8KGUuY29udGVudC5xdWlja1JlcGxpZXN8fFtdKS5sZW5ndGg9PT0wO3JldHVybiB0LnR5cGU9PT1uJiYocnx8aSkmJmEmJklkKHQuZGF0ZSxlLmNyZWF0ZWRBdCl9LGdwPWU9Pntzd2l0Y2goZS5zdWJUeXBlKXtjYXNlIEcuTWVzc2FnZVN1YlR5cGUuQWdlbnQ6cmV0dXJuIHFmLkFnZW50TWVzc2FnZTtjYXNlIEcuTWVzc2FnZVN1YlR5cGUuQ29udGFjdDpyZXR1cm4gcWYuQ29udGFjdE1lc3NhZ2U7Y2FzZSBHLk1lc3NhZ2VTdWJUeXBlLkJvdDpyZXR1cm4gcWYuQm90TWVzc2FnZX1yZXR1cm4gbnVsbH0sX3A9ZT0+e2xldCB0PWUuYXR0YWNobWVudHNDb250ZXh0Lmxlbmd0aDtyZXR1cm4hKHQ+MCYmZS5hdHRhY2htZW50c0NvbnRleHRbdC0xXS5hdHRhY2htZW50LnR5cGU9PT1HLkF0dGFjaG1lbnRUeXBlLkZpbGUpfSx2cD1lPT5lLnR5cGUhPT1HLkF0dGFjaG1lbnRUeXBlLkZpbGUmJmUudHlwZSE9PUcuQXR0YWNobWVudFR5cGUuQ2FyZHMseXA9ZT0+ISFlJiYoZS50eXBlPT09Ry5BdHRhY2htZW50VHlwZS5GaWxlfHxlLnR5cGU9PT1HLkF0dGFjaG1lbnRUeXBlLkNhcmRzKSxicD0oKT0+e2xldCBlPWdfKCk7ZS52b2x1bWU9cWMsZS5hZGRFdmVudExpc3RlbmVyKGBjYW5wbGF5dGhyb3VnaGAsKCk9PntlLnBsYXkoKS5jYXRjaChlPT5IKGBDb3VsZCBub3QgcGxheSBtZXNzYWdlIHNvdW5kLmAsZSkpfSl9LHhwPUtkKGJwLEpjKSxTcD1lPT5lLmZpbHRlcihlPT5lLnR5cGU9PT1HLk1lc3NhZ2VUeXBlLk1lc3NhZ2UmJihlLnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLkFnZW50fHxlLnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLkNvbnRhY3QpKSxDcD0oZSx0PSEwKT0+e2xldCBuPWUucmVkdWNlKChlLHQpPT4oZS5wdXNoKHQpLHQuY29udGVudC50eXBlPT09Ry5NZXNzYWdlQ29udGVudFR5cGUuQ2hhdENsb3NlfHx0LmNvbnRlbnQudHlwZT09PUcuTWVzc2FnZUNvbnRlbnRUeXBlLkNoYXRWaXNpdG9yQ2xvc2U/W106ZSksW10pO3JldHVybiB0P24uZmlsdGVyKGU9PmUudHlwZT09PUcuTWVzc2FnZVR5cGUuTWVzc2FnZSYmZS5zdWJUeXBlIT09Ry5NZXNzYWdlU3ViVHlwZS5TeXN0ZW0pOm59LHdwPWU9PntsZXQgdD17fTtyZXR1cm4gZS5mb3JFYWNoKGU9PntlLnRyaWdnZXImJih0W2UudHJpZ2dlci5pZF09e3NlbnQ6ITB9KX0pLHR9LFRwPWU9PiEhKGUuY29udGVudC5xdWlja1JlcGxpZXMmJmUuY29udGVudC5xdWlja1JlcGxpZXMubGVuZ3RoPjApLEVwPWFzeW5jKGUsdD0hMSk9PntsZXQgbj1RZihlKSxyPSF0JiZuO2lmKGBodG1sYGluIGUuY29udGVudCYmZS5jb250ZW50Lmh0bWwmJihlLmNvbnRlbnQuaHRtbD1tcChlLmNvbnRlbnQuaHRtbCkpLGUuY29udGVudD8udGV4dCYmVi5nZXRPcHRpb25zKCkudXJsQ2FyZHNFbmFibGVkJiZlLmF0dGFjaG1lbnRzLmxlbmd0aD09PTApe2xldCB0PWF3YWl0IEtmKGUuY29udGVudC50ZXh0LGUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQ29udGFjdCxyKTt0JiZ0Lml0ZW1zLmxlbmd0aD4wJiZlLmF0dGFjaG1lbnRzLnB1c2godCl9cmV0dXJuIG5kLnNldCghMSksZX0sRHA9YXN5bmMgZT0+KFYuZ2V0T3B0aW9ucygpLnVybENhcmRzRW5hYmxlZCYmYXdhaXQgUHJvbWlzZS5hbGwoZS5tYXAoYXN5bmMgZT0+YXdhaXQgRXAoZSkpKSxlKSxPcD1lPT5lLmZpbmRJbmRleChlPT5lLm1lc3NhZ2UuY2hhbm5lbC50eXBlPT09YGVtYWlsYCk+LTEsa3A9ZT0+ZS5maW5kKGU9PmUubWVzc2FnZT8udHJpZ2dlcj8uaWRlbnRpdHlJZCk/Lm1lc3NhZ2U/LnRyaWdnZXI/LmlkZW50aXR5SWQsSj0oKCk9PntsZXQgZT1PKHt9KSx7c3Vic2NyaWJlOnQsdXBkYXRlOm4sc2V0OnJ9PWUsaT1hc3luYyBlPT57cihybChgaWRgLGF3YWl0IERwKGUpKSl9LGE9YXN5bmMgZT0+e2xldCB0PWF3YWl0IEVwKGUpO1lmKGUpJiZNcC5zZXQoITEpLG4obj0+KHsuLi5uLFtlLmlkXTp0fSkpLGpwKHQpfSxvPWFzeW5jIGU9PntpZighQShScCkuc29tZSh0PT50LmlkPT09ZS5pZCkpcmV0dXJuO2xldCB0PUEoQnApPT09ZS5pZD9hd2FpdCBFcChlLCEwKTplO24obj0+KHsuLi5uLFtlLmlkXTp0fSkpfTtyZXR1cm57c3Vic2NyaWJlOnQsc2V0TWVzc2FnZXM6aSxhZGRNZXNzYWdlOmEsZGVsZXRlTWVzc2FnZTplPT57bih0PT57bGV0e1tlXTpuLC4uLnJ9PXQ7cmV0dXJuIHJ9KX0sbWFya01lc3NhZ2VBc0RlbGV0ZWQ6KHQscik9PntsZXQgaT1BKGUpW3RdO2kmJm4oZT0+KHsuLi5lLFtpLmlkXTp7Li4uaSxkZWxldGVkQXQ6cj8/bmV3IERhdGUoKS50b0lTT1N0cmluZygpfX0pKX0scmVwbGFjZU1lc3NhZ2U6byx1cGRhdGVNZXNzYWdlUmF0aW5nOmU9PntBKGlkKT09PWUuY29udGVudC5kYXRhPy50YXJnZXQmJnhkKCksbih0PT4hZXx8ZS5jb250ZW50LnR5cGUhPT1HLk1lc3NhZ2VDb250ZW50VHlwZS5SYXRlRm9ybT97Li4udH06KHRbZS5pZF18fFlwKGUuaWQpLHsuLi50LFtlLmlkXTplfSkpfSxzZW5kTWVzc2FnZTphc3luYyhlLHQpPT57S3Auc2V0KGUpO2xldCBuPWF3YWl0IEpmKHt0ZXh0OmV9KTtuJiYoS3Auc2V0KG51bGwpLGF3YWl0IGEobiksei5lbWl0KGBtZXNzYWdlU2VudGAsbiksd2goQSgkdSkpKSxhd2FpdCBQcm9taXNlLmFsbCh0Lm1hcChlPT5PZChlKSkpfSxzZW5kQm90UmVwbHk6YXN5bmMoZSx0LG4pPT57bGV0IHI9YXdhaXQgSmYoe3RleHQ6dCxxdWlja1JlcGx5OntyZXBseVRvOmUscGF5bG9hZDpufX0pO24uaXNHb0JhY2tCdXR0b258fEptKHQpLHImJmF3YWl0IG8ocil9LGNsZWFyTWVzc2FnZXM6KCk9PntyKHt9KX19fSkoKSxBcD1lPT57QShSXyl8fElfKCksUV8oKSxzZXRUaW1lb3V0KCgpPT57Si5hZGRNZXNzYWdlKGUpLCRfKCl9LDE2MDApfSxqcD1lPT57ZSYmQShEXykmJkEoUl8pJiYhKEEoa18pJiZBKFgpKSYmX18oZSkmJnhwKCl9LE1wPU8oITEpLE5wPWsoW0pdLChbZV0pPT57bGV0IHQ9T2JqZWN0LnZhbHVlcyhlKS5maWx0ZXIoUWYpO3JldHVybiB0P1NkKHQuc29ydCgoZSx0KT0+bmV3IERhdGUoZS5jcmVhdGVkQXQpLmdldFRpbWUoKS1uZXcgRGF0ZSh0LmNyZWF0ZWRBdCkuZ2V0VGltZSgpKSk6bnVsbH0pLFBwPWsoW0oscmRdLChbZSx0XSk9PntsZXQgbj1PYmplY3QudmFsdWVzKGUpLmZpbHRlcihRZik7cmV0dXJuIHQ/bi5maWx0ZXIoZT0+bmV3IERhdGUoZS5jcmVhdGVkQXQpPm5ldyBEYXRlKHQpKTpufSksRnA9ayhbUHBdLChbZV0pPT5TZChlKSksSXA9ayhbUHBdLChbZV0pPT5lLmxlbmd0aCksTHA9ayhbSXBdLChbZV0pPT5lPjApLFJwPWsoW0pdLChbZV0pPT5PYmplY3QudmFsdWVzKGUpLnNvcnQodHApKSx6cD1rKFtScF0sKFtlXSk9Pm9wKGUpKSxCcD1rKFtScF0sKFtlXSk9PlNkKGUpPy5pZD8/bnVsbCksVnA9ayhbSl0sKFtlXSk9PlNkKE9iamVjdC52YWx1ZXMoZSkuZmlsdGVyKGU9PnR5cGVvZiBlLndpZGdldE9wdGlvbnM/LmRpc2FibGVJbnB1dD09YGJvb2xlYW5gKSk/LndpZGdldE9wdGlvbnM/LmRpc2FibGVJbnB1dD8/ITEpLEhwPWsoW0pdLChbZV0pPT5PYmplY3QudmFsdWVzKGUpLmZpbHRlcihlPT5lLnN1YlR5cGU9PT1gY29udGFjdGB8fGUuc3ViVHlwZT09PWBhZ2VudGApLmxlbmd0aD4wKSxVcD1rKFtKXSwoW2VdKT0+T2JqZWN0LnZhbHVlcyhlKS5maWx0ZXIoZT0+ZS5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5Db250YWN0KS5sZW5ndGg+MCksV3A9ayhbSixDc10sKFtlLHRdLG4pPT57aWYodCl7bGV0IHI9ZVt0XTtyJiZyLmNvbnRlbnQudHlwZT09PUcuTWVzc2FnZUNvbnRlbnRUeXBlLlJhdGVGb3JtJiZuKHttZXNzYWdlSWQ6ci5pZCx2YWx1ZTpyLmNvbnRlbnQuZGF0YT8udmFsdWUsdGV4dDpyLmNvbnRlbnQuZGF0YT8udGV4dCx0YXJnZXQ6ci5jb250ZW50LmRhdGE/LnRhcmdldH0pfWVsc2UgbihudWxsKX0pLEdwPWsoW1JwXSwoW2VdKT0+ZS5zbGljZSgpLnJldmVyc2UoKS5maW5kKGU9PmUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQ29udGFjdCl8fG51bGwpLEtwPU8obnVsbCkscXA9KCk9PiEhVi5nZXRPcHRpb25zKCkucmF0aW5nRW5hYmxlZCxKcD0oKT0+ISFWLmdldE9wdGlvbnMoKS5haVJhdGluZ0VuYWJsZWQsWXA9ZT0+e0NzLnNldChlKSxCYyhIYy5DaGF0UmF0aW5nKX0sWHA9YXN5bmMoe21lc3NhZ2VJZDplLHJhdGluZzp7dGV4dDp0LHZhbHVlOm59LG9uU3VjY2VzczpyfSk9PntsZXQgaT1BKEopW2VdLGE9ZT09PWByYXRlX2Zvcm1faWRgP3ZvaWQgMDplO3RyeXthd2FpdCBxLmdldENsaWVudCgpLmNoYXRSYXRlKHttZXNzYWdlSWQ6YSx2YWx1ZTpuLHRleHQ6dD8/dm9pZCAwfSksciYmcigpfWNhdGNoKGUpe2kmJmF3YWl0IEoucmVwbGFjZU1lc3NhZ2UoaSksam8oYENoYXQgcmF0aW5nIGZhaWxlZC5gLFN0cmluZyhlKSksZ3MoQShXKShgZm9ybS5zdWJtaXQuZXJyb3JgKSl9fSxacD1lPT57bGV0e3dpZGdldFYzVXJsOnR9PVYuZ2V0T3B0aW9ucygpO3JldHVybmAke3R9L2Fzc2V0cy9pbWFnZXMvcmF0aW5nLyR7ZX0uc3ZnYH0sUXA9LyhHLShbQS1aLDAtOV0qKSkvZywkcD1bXSxlbT0hMSx0bSxubT0hMSxybSxpbT1lPT5lLm1hdGNoKFFwKSxhbT0oKT0+e2xldHtnb29nbGVBbmFseXRpY3NFbmFibGVkOmV9PVYuZ2V0T3B0aW9ucygpO3RtPXdpbmRvdy50b3B8fHdpbmRvdyxlJiYodG0uZ3RhZyYmKHJtPXRtLmd0YWcsbm09ITApLHoub24oYGFuYWx5dGljc0NvbnNlbnRDaGFuZ2VkYCxvbSksIWVtJiZVbygpJiZzbSgpKX0sb209ZT0+eyFlbSYmZSYmc20oKX0sc209KCk9PntsZXR7Z2FLZXk6ZSxnYU9wdGlvbnM6dCxnb29nbGVBbmFseXRpY3NNYW51YWw6bixnb29nbGVBbmFseXRpY3NNZWFzdXJlbWVudElkczpyfT1WLmdldE9wdGlvbnMoKSxpPXR8fHtjb29raWVEb21haW46YGF1dG9gfTtpZihlKWltKGUpJiYkcC5wdXNoKHtrZXk6ZSxvcHRpb25zOml9KTtlbHNlIGlmKG4mJnIpci5mb3JFYWNoKGU9PntpbShlKSYmJHAucHVzaCh7a2V5OmUsb3B0aW9uczppfSl9KTtlbHNlIHRyeXskcC5wdXNoKC4uLmNtKCkpfWNhdGNoKGUpe3ZvKGBFcnJvciBkdXJpbmcgZ2V0dGluZyBHQSB0b3AgdHJhY2tlcnNgLGUgaW5zdGFuY2VvZiBFcnJvcj9lLm1lc3NhZ2U6ZSl9JHAubGVuZ3RoPjAmJiFubSYmbG0oKSwkcC5sZW5ndGg9PT0wP3ZvKGBObyBHQSB0byBzZXR1cGApOihkbSgpLGVtPSEwLHZvKGBHQSBpbml0aWFsaXplZGApKX0sY209KCk9PntsZXQgZT1bXTtyZXR1cm4gdG0uZ29vZ2xlX3RhZ19tYW5hZ2VyJiZPYmplY3Qua2V5cyh0bS5nb29nbGVfdGFnX21hbmFnZXIpLmZvckVhY2godD0+e2ltKHQpJiZlLnB1c2goe2tleTp0LG9wdGlvbnM6e2Nvb2tpZURvbWFpbjpgYXV0b2B9fSl9KSxlfSxsbT0oKT0+e2xldCBlPXRtLmRvY3VtZW50LHtoZWFkOnR9PWUsbj1lLmNyZWF0ZUVsZW1lbnQoYHNjcmlwdGApO24uaWQ9YGd0YWdgLG4udHlwZT1gdGV4dC9qYXZhc2NyaXB0YCxuLmFzeW5jPSEwLG4uc3JjPWBodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndGFnL2pzYCx0Lmluc2VydEJlZm9yZShuLHQuZmlyc3RDaGlsZCksdG0uZGF0YUxheWVyPXRtLmRhdGFMYXllcnx8W10sdG0uZ3RhZz1mdW5jdGlvbigpe3RtLmRhdGFMYXllci5wdXNoKGFyZ3VtZW50cyl9LHJtPXRtLmd0YWcscm0oYGpzYCxuZXcgRGF0ZSl9LHVtPSgpPT57bGV0IGU9W107aWYobm0pe2xldCB0PWNtKCk7JHAuZm9yRWFjaChuPT57dC5maW5kKCh7a2V5OmV9KT0+ZT09PW4ua2V5KXx8ZS5wdXNoKG4pfSl9ZWxzZSBlPVsuLi4kcF07cmV0dXJuIGV9LGRtPSgpPT57dW0oKS5mb3JFYWNoKGU9PntsZXR7a2V5OnQsb3B0aW9uczpufT1lLHI9e307bj8ocj17Y29va2llX2RvbWFpbjpuLmNvb2tpZURvbWFpbn0sbi5uYW1lJiYoci5uYW1lPW4ubmFtZSkpOnI9e2Nvb2tpZV9kb21haW46dG0/LmxvY2F0aW9uLmhvc3RuYW1lfHxgYH0sci5zZW5kX3BhZ2Vfdmlldz0hMSxybShgY29uZmlnYCx0LHIpfSl9LGZtPShlLHQpPT57bGV0e2dvb2dsZUFuYWx5dGljc0VuYWJsZWQ6bn09Vi5nZXRPcHRpb25zKCk7aWYoISghbnx8IXRtLmd0YWd8fCFVbygpfHx0bS5kb2N1bWVudC5oaWRkZW4pKXRyeXskcC5mb3JFYWNoKG49Pnt0LnNlbmRfdG89bi5rZXkscm0oYGV2ZW50YCxlLHQpLHZvKGBTbWFydHN1cHA6IEdBIGV2ZW50ICR7ZX0gLSAke0pTT04uc3RyaW5naWZ5KHQpfWApfSl9Y2F0Y2goZSl7dm8oYFNtYXJ0c3VwcDogR0EgZXJyb3I6YCxlIGluc3RhbmNlb2YgRXJyb3I/ZS5tZXNzYWdlOmUpfX0scG09YFZpc2l0b3Jfc3RhcnRlZF9jb252ZXJzYXRpb25gLG1tPWBWaXNpdG9yX2Nsb3NlZF9jb252ZXJzYXRpb25gLGhtPWBUcmlnZ2VyX21lc3NhZ2Vfc2VudGAsZ209YFRyaWdnZXJfbWVzc2FnZV92aWV3ZWRgLF9tPWBUcmlnZ2VyX3Zpc2l0b3JfcmVhY3Rpb25gLHZtPWBBdXRvX21lc3NhZ2Vfc2VudGAseW09YEF1dG9fbWVzc2FnZV92aWV3ZWRgLGJtPWBBdXRvX21lc3NhZ2VfdmlzaXRvcl9yZWFjdGlvbmAseG09YENoYXRib3Rfc2VudGAsU209YENoYXRib3Rfdmlld2VkYCxDbT1gQ2hhdGJvdF9pbnRlcmFjdGlvbmAsd209YENoYXRib3RfYnV0dG9uX2ludGVyYWN0aW9uYCxUbT1gQ2hhdGJvdF92aXNpdG9yX3JlYWN0aW9uYCxFbT1gQWlfY2hhdGJvdF9zZW50YCxEbT1gQWlfY2hhdGJvdF9pbnRlcmFjdGlvbmAsT209YEFpX2NoYXRib3RfdmlzaXRvcl9yZWFjdGlvbmAsa209YEFnZW50X3NlcnZlZF9jb252ZXJzYXRpb25gLEFtPWBBZ2VudF9jbG9zZWRfY29udmVyc2F0aW9uYCxqbT1gQ29udGFjdF9hY3F1aXJlZGAsTW09YEF1dGhfZm9ybV9maWxsZWRgLE5tPWBPZmZsaW5lX21lc3NhZ2Vfc2VudGAsUG09YEZlZWRiYWNrX3NlbnRgLEZtPWBGZWVkYmFja190ZXh0X3NlbnRgLEltPWBVcmxfY2FyZF9vcGVuZWRgLExtPWBDaGF0Ym94X29wZW5lZGAsUm09e2V2ZW50X2NhdGVnb3J5OmBTbWFydHN1cHBfdjNgLG5vbl9pbnRlcmFjdGlvbjohMH0sWT0oZSx0KT0+e2ZtKGUsey4uLlJtLC4uLnR9KX0sem09KGU9YGApPT5ZKGhtLHtldmVudF9sYWJlbDplfSksQm09ZT0+WShnbSx7ZXZlbnRfbGFiZWw6ZX0pLFZtPShlPWBgKT0+WShfbSx7ZXZlbnRfbGFiZWw6ZX0pLEhtPShlPWBgKT0+WSh2bSx7ZXZlbnRfbGFiZWw6ZX0pLFVtPWU9PlkoeW0se2V2ZW50X2xhYmVsOmV9KSxXbT0oZT1gYCk9PlkoYm0se2V2ZW50X2xhYmVsOmV9KSxHbT0oZT1gYCk9PlkoeG0se2V2ZW50X2xhYmVsOmV9KSxLbT1lPT5ZKFNtLHtldmVudF9sYWJlbDplfSkscW09KGU9YGApPT5ZKENtLHtldmVudF9sYWJlbDplfSksSm09KGU9YGApPT5ZKHdtLHtldmVudF9sYWJlbDplfSksWW09KGU9YGApPT5ZKFRtLHtldmVudF9sYWJlbDplfSksWG09KCk9PlkocG0pLFptPSgpPT5ZKG1tKSxRbT1lPT5ZKEFtLHtldmVudF9sYWJlbDplfSksJG09ZT0+WShrbSx7ZXZlbnRfbGFiZWw6ZX0pLGVoPSgpPT5ZKE1tKSx0aD0oKT0+WShObSksbmg9KGUsdCk9PntsZXQgbj17ZXZlbnRfbGFiZWw6dHx8dnNbZV18fGBgLHZhbHVlOmV9O1kodD9GbTpQbSxuKX0scmg9ZT0+WShqbSx7ZXZlbnRfbGFiZWw6ZX0pLGloPWU9PlkoSW0se2V2ZW50X2xhYmVsOmV9KSxhaD0oZT1gYCk9PlkoRW0se2V2ZW50X2xhYmVsOmV9KSxvaD0oZT1gYCk9PlkoRG0se2V2ZW50X2xhYmVsOmV9KSxzaD0oZT1gYCk9PlkoT20se2V2ZW50X2xhYmVsOmV9KSxjaD0oKT0+WShMbSksbGg9ITEsdWg9e30sZGg9KCk9PntsaD0hMX0sZmg9KCk9Pnt1aD13cChBKFJwKSl9LHBoPShlLHQpPT5saD8hMTpDcChlKS5sZW5ndGg9PT0xJiZ0PT09Ry5NZXNzYWdlU3ViVHlwZS5Db250YWN0PyhsaD0hMCwhMCk6ITEsbWg9KGUsdCk9PntsZXQgbj1lLnRyaWdnZXI/LmlkfHxgYDtyZXR1cm4gdC5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5Db250YWN0JiZlLnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLlRyaWdnZXImJiF1aFtuXT8udmlzaXRvclJlc3BvbmRlZD8odWhbbl0udmlzaXRvclJlc3BvbmRlZD0hMCwhMCk6ITF9LGhoPShlLHQpPT57bGV0IG49ZS50cmlnZ2VyPy5pZHx8YGA7cmV0dXJuIHQuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQ29udGFjdCYmISh0LmNvbnRlbnQucXVpY2tSZXBsaWVzfHx0LmNvbnRlbnQucXVpY2tSZXBseSkmJmUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQm90JiYhdWhbbl0/LnZpc2l0b3JSZXNwb25kZWQmJm4/KHVoW25dLnZpc2l0b3JSZXNwb25kZWQ9ITAsITApOiExfSxnaD0oZSx0KT0+e2xldCBuPWUudHJpZ2dlcj8uaWR8fGBgO3JldHVybiB0LnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLkNvbnRhY3QmJmUudHJpZ2dlcj8uZ3JvdXBUeXBlPT09Ry5Hcm91cFR5cGUuY2hhdGJvdCYmIXVoW25dPy5yZWFjdGVkPyh1aFtuXS5yZWFjdGVkPSEwLCEwKTohMX0sX2g9ZT0+e2xldCB0PWUudHJpZ2dlcj8uaWR8fGBgO3JldHVybiBlLnRyaWdnZXI/Lmdyb3VwVHlwZT09PUcuR3JvdXBUeXBlLmFpJiYhdWhbdF0/LnJlYWN0ZWQ/KHVoW3RdLnJlYWN0ZWQ9ITAsITApOiExfSx2aD0oZSx0LG49ITEpPT57aWYoZS5sZW5ndGg+MCYmIW4pe2xldCB0PWUuc2xpY2UoLTIpLmZpbHRlcihlPT5lLnRyaWdnZXIpO3JldHVybiB0P3RbdC5sZW5ndGgtMV0udHJpZ2dlcj8ubmFtZTpgYH1lbHNlIHJldHVybiB0LnRyaWdnZXI/dC50cmlnZ2VyLm5hbWU6YGB9LHloPWU9PntsZXQgdD1BKFJwKTt4aCh0LGUpLFNoKHQsZSkscGgodCxlLnN1YlR5cGUpJiZYbSgpfSxiaD1lPT57bGV0IHQ9ZSxuPUEoUnApLmZpbHRlcihlPT5lLnRyaWdnZXIpO24mJm4ubGVuZ3RoPjAmJih0PW5bbi5sZW5ndGgtMV0udHJpZ2dlcj8ubmFtZT8/ZSkscmgodCl9LHhoPShlLHQpPT57bGV0IG49dC50cmlnZ2VyPy5pZHx8YGA7dC5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5Cb3QmJiF1aFtuXT8uc2VudCYmKHQudHJpZ2dlcj8uZ3JvdXBUeXBlPT09Ry5Hcm91cFR5cGUuY2hhdGJvdCYmKEdtKHZoKGUsdCwhMCkpLHVoW25dPXtzZW50OiEwfSksdC50cmlnZ2VyPy5ncm91cFR5cGU9PT1HLkdyb3VwVHlwZS5tZXNzYWdlJiYoSG0odmgoZSx0LCEwKSksdWhbbl09e3NlbnQ6ITB9KSx0LnRyaWdnZXI/Lmdyb3VwVHlwZT09PUcuR3JvdXBUeXBlLmFpJiYoYWgodmgoZSx0LCEwKSksdWhbbl09e3NlbnQ6ITB9KSk7bGV0IHI9ZS5sZW5ndGg+MT9lW2UubGVuZ3RoLTJdOnZvaWQgMDtyJiYoaGgocix0KT8oci50cmlnZ2VyPy5ncm91cFR5cGU9PT1HLkdyb3VwVHlwZS5jaGF0Ym90JiZZbSh2aChlLHQpKSxyLnRyaWdnZXI/Lmdyb3VwVHlwZT09PUcuR3JvdXBUeXBlLm1lc3NhZ2UmJldtKHZoKGUsdCkpLHIudHJpZ2dlcj8uZ3JvdXBUeXBlPT09Ry5Hcm91cFR5cGUuYWkmJnNoKHZoKGUsdCkpKTpnaChyLHQpP3FtKHZoKGUsdCkpOl9oKHQpJiZvaCh2aChlLHQpKSl9LFNoPShlLHQpPT57dC5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5UcmlnZ2VyJiYoem0odD8udHJpZ2dlcj8ubmFtZSksdWhbdC50cmlnZ2VyPy5pZHx8YGBdPXtzZW50OiEwfSk7bGV0IG49ZS5sZW5ndGg+MT9lW2UubGVuZ3RoLTJdOnZvaWQgMDtuJiZtaChuLHQpJiZWbSh2aChlLHQpKX0sQ2g9KCk9PntsZXQgZT1BKFBwKS5maWx0ZXIoZT0+ZS50cmlnZ2VyKSx0PWVbZS5sZW5ndGgtMV07dCYmdC50cmlnZ2VyJiYodC5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5Cb3QmJnQuY29udGVudC5xdWlja1JlcGxpZXM/S20odC50cmlnZ2VyLm5hbWUpOnQuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQm90P1VtKHQudHJpZ2dlci5uYW1lKTp0LnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLlRyaWdnZXImJkJtKHQudHJpZ2dlci5uYW1lKSl9LHdoPWU9PntlPT09Sy5BY2NvdW50U3RhdHVzLk9mZmxpbmUmJnRoKCl9O3oub24oYG1lc3NhZ2VSZWNlaXZlZGAseWgpLHoub24oYGFnZW50Sm9pbmVkYCxlPT57JG0oZS5mdWxsbmFtZSl9KSx6Lm9uKGBjaGF0UmF0ZWRgLGU9PntuaChlLnZhbHVlLGUudGV4dCl9KSx6Lm9uKGBjaGF0Q2xvc2VkYCwoKT0+e2RoKCl9KSx6Lm9uKGBjaGF0VmlzaXRvckNsb3NlZGAsKCk9PntkaCgpfSksei5vbihgY29udGFjdEFjcXVpcmVkYCwoe2FjcXVpcmVkQnk6ZX0pPT57YmgoZSl9KSxYbC5wdXNoKGZoKTt2YXIgVGg9e0Fycm93RG93bjpgQXJyb3dEb3duYCxBcnJvd1VwOmBBcnJvd1VwYCxFbnRlcjpgRW50ZXJgLEVzY2FwZTpgRXNjYXBlYCxUYWI6YFRhYmB9LEVoPTJlMyxEaD0yZTMsT2g9ZT0+ZS5maWx0ZXIoZT0+IWUuaXNIaWRkZW4pLnJlZHVjZSgoZSx0KT0+KGVbdC5uYW1lXT10LnZhbHVlLGUpLHt9KSxraD1lPT5lLnJlZHVjZSgoZSx0KT0+KGVbdC5uYW1lXT10LnZhbGlkYXRvcnMsZSkse30pLEFoPShlLHQsbik9PntlLnVwZGF0ZShlPT4oey4uLmUsW3RdOm59KSl9LGpoPShlLHQpPT57bGV0IG49e307Zm9yKGxldCByIGluIGUpbltyXT10O3JldHVybiBufSxNaD0oKT0+TWF0aC5yYW5kb20oKS50b1N0cmluZygzNiksTmg9ZT0+e2lmKCFlKXJldHVybiExO2xldCB0PWUuc3BsaXQoYEBgKTtpZih0Lmxlbmd0aCE9PTIpcmV0dXJuITE7bGV0IG49dFswXSxyPXRbMV07cmV0dXJuIG4ubGVuZ3RoPjY0fHxyLmxlbmd0aD4yNTV8fHIuc3BsaXQoYC5gKS5zb21lKGU9PmUubGVuZ3RoPjYzKT8hMTp5Zi50ZXN0KGUpfSxQaD1udWxsLEZoPWU9PntsZXQgdD1lLmluaXRpYWxWYWx1ZXN8fHt9LHt2YWxpZGF0b3JzOm4sb25DaGFuZ2U6cixvblN1Ym1pdDppfT1lLGE9KCk9Pih7Li4udH0pLG89amgodCxQaCkscz1PKGEoKSksYz1PKG8pLGw9TyhqaCh0LCExKSksdT1PKCExKSxkPWsoYyxlPT5PYmplY3QudmFsdWVzKGUpLmV2ZXJ5KGU9PmU9PT1QaCkpLGY9KCk9PntPYmplY3QuZW50cmllcyhBKHMpKS5mb3JFYWNoKChbZSx0XSk9PntlZShlLHQpfSl9LHA9ZT0+e2xldCB0PWUudGFyZ2V0O3QmJl8odC5uYW1lfHx0LmlkLHQudmFsdWUpfSxtPWFzeW5jIGU9PntpZihlJiZlLnByZXZlbnREZWZhdWx0JiZlLnByZXZlbnREZWZhdWx0KCksdS5zZXQoITApLGYoKSwhQShkKSl7dS5zZXQoITEpO3JldHVybn1jLnNldChvKSxhd2FpdCBpKEEocykpLHUuc2V0KCExKX0saD0oZSx7c2hvdWxkVmFsaWRhdGU6dD0hMX09e30pPT57cy51cGRhdGUodD0+KHsuLi50LC4uLmV9KSksdCYmZigpfSxnPShlLHQpPT57XyhlLHQpfSxfPShlLHQpPT57dihlLHQpLGVlKGUsdCksciYmcihlLHQpfSx2PShlLHQpPT57QWgocyxlLHQpfSx5PShlLHQpPT57QWgobCxlLHQpfSxlZT0oZSx0KT0+e3koZSx0KTtsZXQgcj1uW2VdO2lmKHIpZm9yKGxldCBuIG9mIHIpe2xldHt0eXBlOnIsaXNWYWxpZDppfT1uKHQpO2lmKEFoKGMsZSxpP1BoOnIpLCFpKXJldHVybn19O3JldHVybntmb3JtOnMsZXJyb3JzOmMsaXNWYWxpZDpkLGlzU3VibWl0dGluZzp1LGhhbmRsZUNoYW5nZTpwLGhhbmRsZVN1Ym1pdDptLHNldEZpZWxkVmFsdWU6ZyxzZXRWYWx1ZXM6aH19LEloPWZ1bmN0aW9uKGUpe3JldHVybiBlLlRleHQ9YHRleHRgLGUuQ2hlY2tib3g9YGNoZWNrYm94YCxlLlNlbGVjdD1gc2VsZWN0YCxlfSh7fSksTGg9KCk9PmU9PntsZXQgdD0hMDtyZXR1cm4gZT8/KHQ9ITEpLEx1KGUpJiYodD1lLnRyaW0oKS5sZW5ndGg+MCkse3R5cGU6YHJlcXVpcmVkYCxpc1ZhbGlkOnR9fSxSaD0oKT0+ZT0+KHt0eXBlOmBjaGVja2VkYCxpc1ZhbGlkOkx1KGUpP2U9PT1gdHJ1ZWA6ZT09PSEwfSksemg9KCk9PmU9Pih7dHlwZTpgZW1haWxgLGlzVmFsaWQ6TmgoU3RyaW5nKGUpKX0pLEJoPSgpPT5lPT4oe3R5cGU6YHBob25lYCxpc1ZhbGlkOi9eWytdKlsoXXswLDF9WzAtOV17MSw0fVspXXswLDF9Wy1zLi8wLTldKiQvLnRlc3QoU3RyaW5nKGUpKX0pLFZoPU8odm9pZCAwKSxIaD1lPT57bGV0e2VtYWlsQ29udHJvbDp0fT1WLmdldE9wdGlvbnMoKSxuPSEhZT8uZW1haWw7cmV0dXJuIHQmJiFufSxVaD1lPT57bGV0e25hbWVDb250cm9sOnR9PVYuZ2V0T3B0aW9ucygpLG49ISFlPy5uYW1lO3JldHVybiB0JiYhbn0sV2g9ZT0+e2xldHtudW1iZXJDb250cm9sOnR9PVYuZ2V0T3B0aW9ucygpLG49ISFlPy5waG9uZTtyZXR1cm4hIXQmJiFufSxHaD0oKT0+e2xldHtncm91cFNlbGVjdEVuYWJsZWQ6ZX09Vi5nZXRPcHRpb25zKCksdD1BKGFsKTtyZXR1cm4hIWUmJnQubGVuZ3RoPjB9LEtoPSgpPT57bGV0e3ByaXZhY3lOb3RpY2VFbmFibGVkOmUscHJpdmFjeU5vdGljZUNoZWNrUmVxdWlyZWQ6dH09Vi5nZXRPcHRpb25zKCksbj1jZygpO3JldHVybiEhZSYmdCYmIW59LHFoPWU9PntsZXR7cHJpdmFjeU5vdGljZUVuYWJsZWQ6dH09Vi5nZXRPcHRpb25zKCksbj0hIWU/LnZhcmlhYmxlcz8ucGVyc29uYWxEYXRhUHJvY2Vzc2luZ0NvbnNlbnQ7cmV0dXJuISF0JiYhbn0sSmg9KCk9Pih7dHlwZTpJaC5UZXh0LHN1YlR5cGU6YGVtYWlsYCxuYW1lOmBlbWFpbGAsbGFiZWw6YGF1dGhGb3JtLmxhYmVsLmVtYWlsYCxwbGFjZWhvbGRlcjpgYXV0aEZvcm0ueW91ckVtYWlsYCx2YWx1ZTpgYCx2YWxpZGF0b3JzOltMaCgpLHpoKCldLG1heExlbmd0aDoyNTV9KSxZaD0oKT0+KHt0eXBlOkloLlRleHQsc3ViVHlwZTpgdGV4dGAsbmFtZTpgbmFtZWAsbGFiZWw6YGF1dGhGb3JtLmxhYmVsLm5hbWVgLHBsYWNlaG9sZGVyOmBhdXRoRm9ybS55b3VyTmFtZWAsdmFsdWU6YGAsdmFsaWRhdG9yczpbTGgoKV0sbWF4TGVuZ3RoOjI1NX0pLFhoPSgpPT4oe3R5cGU6SWguVGV4dCxzdWJUeXBlOmB0ZWxgLG5hbWU6YHBob25lYCxsYWJlbDpgYXV0aEZvcm0ubGFiZWwucGhvbmVgLHBsYWNlaG9sZGVyOmBhdXRoRm9ybS55b3VyUGhvbmVgLHZhbHVlOmBgLHZhbGlkYXRvcnM6W0xoKCksQmgoKV0sbWF4TGVuZ3RoOjMyfSksWmg9ZT0+e2xldCB0PUEoYWwpO3JldHVybnt0eXBlOkloLlNlbGVjdCxuYW1lOmBncm91cGAsbGFiZWw6YGF1dGhGb3JtLmxhYmVsLmdyb3VwYCxwbGFjZWhvbGRlcjpgYXV0aEZvcm0uZ3JvdXBgLHZhbHVlOmU/Lmdyb3VwPz9gYCx2YWxpZGF0b3JzOltMaCgpXSxvcHRpb25zOnQubWFwKGU9Pih7dGV4dDplLm5hbWUsdmFsdWU6ZS5rZXl9KSl9fSxRaD0oKT0+KHt0eXBlOkloLkNoZWNrYm94LG5hbWU6YHBlcnNvbmFsRGF0YVByb2Nlc3NpbmdDb25zZW50YCxsYWJlbDpgYXV0aEZvcm0uYWNjZXB0VGVybXNgLHZhbHVlOiExLHZhbGlkYXRvcnM6W1JoKCldfSksJGg9KCk9Pih7dHlwZTpJaC5DaGVja2JveCxuYW1lOmBwZXJzb25hbERhdGFQcm9jZXNzaW5nQ29uc2VudGAsbGFiZWw6YHRvcEJhci5nZHByVGl0bGVgLHZhbHVlOiExLHZhbGlkYXRvcnM6W10saXNIaWRkZW46ITB9KSxlZz1lPT4oe3Nob3dFbWFpbDpIaChlKSxzaG93TmFtZTpVaChlKSxzaG93UGhvbmU6V2goZSksc2hvd0dyb3VwczpHaCgpLHNob3dDb25zZW50OktoKCl9KSx0Zz1lPT4oe3Nob3dFbWFpbDohIWUuZW1haWxDb250cm9sLHNob3dOYW1lOiEhZS5uYW1lQ29udHJvbCxzaG93UGhvbmU6ISFlLm51bWJlckNvbnRyb2wsc2hvd0dyb3VwczohIWUuZ3JvdXBTZWxlY3RFbmFibGVkLHNob3dDb25zZW50OiEhZS5wcml2YWN5Tm90aWNlRW5hYmxlZCYmZS5wcml2YWN5Tm90aWNlQ2hlY2tSZXF1aXJlZH0pLG5nPWU9Pk9iamVjdC52YWx1ZXMoZWcoZSkpLnNvbWUoZT0+ZSkscmc9KGUsdCk9PntsZXQgbj1bXSx7c2hvd0VtYWlsOnIsc2hvd05hbWU6aSxzaG93UGhvbmU6YSxzaG93R3JvdXBzOm8sc2hvd0NvbnNlbnQ6c309dD90Zyh0KTplZyhlKTtyZXR1cm4gaSYmbi5wdXNoKFloKCkpLHImJm4ucHVzaChKaCgpKSxhJiZuLnB1c2goWGgoKSksbyYmbi5wdXNoKFpoKGUpKSxzP24ucHVzaChRaCgpKTpuLmxlbmd0aD4wJiYodD90Py5wcml2YWN5Tm90aWNlRW5hYmxlZDpxaChlKSkmJm4ucHVzaCgkaCgpKSxufSxpZz0oKT0+e2xldCBlPXpvKFUuQXV0aEZvcm0pO2lmKCFlKXJldHVybiBudWxsO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShlKX1jYXRjaHtyZXR1cm4gbnVsbH19LGFnPShlLHQpPT57bGV0IG49aWcoKSxyPXtbZV06dH0saT1uP3suLi5uLC4uLnJ9OnI7Qm8oe25hbWU6VS5BdXRoRm9ybSx2YWx1ZTpKU09OLnN0cmluZ2lmeShpKX0pfSxvZz0oKT0+e0xvKFUuQXV0aEZvcm0pfSxzZz0oKT0+ISFBKE11KT8udmFyaWFibGVzPy5hdXRoZW50aWNhdGVkLGNnPSgpPT5BKE11KT8uZ2RwckFwcHJvdmVkfHwhMSxsZz0oKT0+e2xldHtpc1ByZXZpZXdNb2RlOmV9PVYuZ2V0T3B0aW9ucygpO2lmKGV8fEEocGQpfHxzZygpfHwhbmcoQShNdSkpKXJldHVybiExO2xldHtyZXF1aXJlTG9naW46dH09Vi5nZXRPcHRpb25zKCksbj1BKCR1KT09PUsuQWNjb3VudFN0YXR1cy5PZmZsaW5lLHI9QShVdSkubGVuZ3RoPjA7cmV0dXJuISF0fHxufHwhbiYmIXJ9LHVnPWFzeW5jIGU9PntsZXR7cHJpdmFjeU5vdGljZUNoZWNrUmVxdWlyZWQ6dH09Vi5nZXRPcHRpb25zKCksbj1BKE11KSxyPW4/Lm5hbWU/P2UubmFtZSxpPW4/LmVtYWlsPz9lLmVtYWlsLGE9bj8ucGhvbmU/P2UucGhvbmUsbz1lLmdyb3VwPz9uPy5ncm91cCxzPWUucGVyc29uYWxEYXRhUHJvY2Vzc2luZ0NvbnNlbnQsYz17Li4uciYme25hbWU6cn0sLi4uaSYme2VtYWlsOml9LC4uLmEmJntwaG9uZTphfSwuLi5vJiZ7Z3JvdXA6b30sLi4ucyYmdCYme3BlcnNvbmFsRGF0YVByb2Nlc3NpbmdDb25zZW50OnN9fTthd2FpdCBxLmdldENsaWVudCgpLmF1dGhlbnRpY2F0ZShjKSxlaCgpLGF3YWl0IHVfKCksVmMoKX0sZGc9YGh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vQGVtb2ppLW1hcnQvZGF0YWAsZmc9UmVnRXhwKGA6KFthLXpBLVowLTlfLV0rKTpgLGBnYCkscGc9bnVsbCxtZz1udWxsLGhnPW51bGwsZ2c9TyhbXSksX2c9YXN5bmMoKT0+cGd8fGhnfHwoaGc9ZmV0Y2goZGcpLnRoZW4oZT0+ZS5qc29uKCkpLnRoZW4oZT0+KHBnPWUsZSkpLmNhdGNoKGU9Pnt0aHJvdyB2byhgRmFpbGVkIHRvIGxvYWQgZW1vamkgZGF0YWAsZSksaGc9bnVsbCxlfSksaGcpLHZnPWU9Pk9iamVjdC52YWx1ZXMoZS5lbW9qaXMpLm1hcChlPT4oe2lkOmUuaWQsbmFtZTplLm5hbWUsbmF0aXZlOmUuc2tpbnNbMF0/Lm5hdGl2ZT8/YGAsa2V5d29yZHM6ZS5rZXl3b3Jkcz8/W119KSkseWc9e3N1YnNjcmliZTpnZy5zdWJzY3JpYmUsYXN5bmMgbG9hZFJhd0RhdGEoKXtyZXR1cm4gX2coKX0sYXN5bmMgbG9hZERhdGEoKXtyZXR1cm4gbWd8fChtZz12Zyhhd2FpdCBfZygpKSxnZy5zZXQobWcpLG1nKX0sZ2V0QnlJZChlKXtsZXQgdD1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuIG1nPy5maW5kKGU9PmUuaWQudG9Mb3dlckNhc2UoKT09PXQpfSxpc0xvYWRlZCgpe3JldHVybiBtZyE9PW51bGx9fSxiZz1lPT55Zy5pc0xvYWRlZCgpP2UucmVwbGFjZShmZywoZSx0KT0+e2xldCBuPXlnLmdldEJ5SWQodCk7cmV0dXJuIG4/bi5uYXRpdmU6ZX0pOmUseGc9MjAsU2c9eyI6KSI6YPCfmYJgLCI6LSkiOmDwn5mCYCwiOkQiOmDwn5iAYCwiOi1EIjpg8J+YgGAsIjspIjpg8J+YiWAsIjstKSI6YPCfmIlgLCI8MyI6YOKdpO+4j2AsIjooIjpg8J+YnmAsIjotKCI6YPCfmJ5gLCI6UCI6YPCfmJtgLCI6LVAiOmDwn5ibYCwiOi1vIjpg8J+YrmAsIjpPIjpg8J+YrmAsIjovIjpg8J+YlWAsIjotLyI6YPCfmJVgfSxDZz1lPT57bGV0IHQ9YCgke2U/YCR8YDpgYH0gKWA7cmV0dXJuIG5ldyBSZWdFeHAoT2JqZWN0LmtleXMoU2cpLm1hcChlPT5gJHtlLnJlcGxhY2UoL1suKis/XiR7fSgpfFtcXVxcXS9nLGBcXCQmYCl9JHt0fWApLmpvaW4oYHxgKSxgZ2lgKX0sd2c9KGUsdD0hMSk9PntsZXQgbj1DZyh0KTtyZXR1cm4gZS5yZXBsYWNlKG4sZT0+e2xldCB0PU9iamVjdC5rZXlzKFNnKS5maW5kKHQ9PmUudG9VcHBlckNhc2UoKS5pbmNsdWRlcyh0KSk7aWYoIXQpcmV0dXJuIGU7bGV0IG49ZS5lbmRzV2l0aChgIGApP2AgYDpgYDtyZXR1cm5gJHtTZ1t0XX0ke259YH0pfSxUZz0oZSx0LG49eGcpPT57aWYoIWV8fGUubGVuZ3RoPDIpcmV0dXJuW107bGV0IHI9ZS50b0xvd2VyQ2FzZSgpLGk9W10sYT1bXSxvPVtdLHM9W107Zm9yKGxldCBlIG9mIHQpe2xldCB0PWUuaWQudG9Mb3dlckNhc2UoKSxuPWUubmFtZS50b0xvd2VyQ2FzZSgpO2lmKHQuc3RhcnRzV2l0aChyKSl7aS5wdXNoKGUpO2NvbnRpbnVlfWlmKHQuaW5jbHVkZXMocikpe2EucHVzaChlKTtjb250aW51ZX1pZihuLmluY2x1ZGVzKHIpKXtvLnB1c2goZSk7Y29udGludWV9ZS5rZXl3b3Jkcy5zb21lKGU9PmUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhyKSkmJnMucHVzaChlKX1yZXR1cm5bLi4uaSwuLi5hLC4uLm8sLi4uc10uc2xpY2UoMCxuKX0sRWc9KGUsdCk9PntsZXQgbj1lLnNsaWNlKDAsdCkscj1uLmxhc3RJbmRleE9mKGA6YCk7aWYocj09PS0xKXJldHVybiBudWxsO2xldCBpPW4uc2xpY2UocisxKTtyZXR1cm4gUmVnRXhwKGBeW2EtekEtWjAtOV8tXSokYCkudGVzdChpKSYmaS5sZW5ndGg+PTI/aTpudWxsfSxEZz0oZSx0LG4pPT57bGV0IHI9ZS5zbGljZSgwLHQpLGk9ZS5zbGljZSh0KSxhPXIubGFzdEluZGV4T2YoYDpgKTtpZihhPT09LTEpcmV0dXJue25ld1RleHQ6ZSxuZXdDdXJzb3JQb3NpdGlvbjp0fTtsZXQgbz1lLnNsaWNlKDAsYSkscz1pLmxlbmd0aD09PTA/bitgIGA6bjtyZXR1cm57bmV3VGV4dDpvK3MraSxuZXdDdXJzb3JQb3NpdGlvbjphK3MubGVuZ3RofX0sT2c9KGUsdD0zMDApPT57bGV0IG47cmV0dXJuKC4uLnIpPT57Y2xlYXJUaW1lb3V0KG4pLG49c2V0VGltZW91dCgoKT0+ZSguLi5yKSx0KX19LGtnPTNlMyxBZz1bYHNtYXJ0c3VwcC5kZXZgLGBzbWFydHN1cHBjaGF0LmxvY2BdLGpnPWZ1bmN0aW9uKGUpe3JldHVybiBlLkRlZmF1bHQ9YGJsYWNrYmVycnkyLm1wM2AsZX0oe30pLE1nPWZ1bmN0aW9uKGUpe3JldHVybiBlLkNvbm5lY3Rpbmc9YGNvbm5lY3RpbmdgLGUuQ29ubmVjdGVkPWBjb25uZWN0ZWRgLGUuRGlzY29ubmVjdGVkPWBkaXNjb25uZWN0ZWRgLGV9KHt9KSxOZz1mdW5jdGlvbihlKXtyZXR1cm4gZS5JbWFnZT1gaW1hZ2VgLGUuVmlkZW89YHZpZGVvYCxlfSh7fSksUGc9TyghMSksRmc9TyghMSksSWc9TyghMSk7QigpLmFkZEV2ZW50TGlzdGVuZXIoYG9mZmxpbmVgLCgpPT5QZy5zZXQoITApKSxCKCkuYWRkRXZlbnRMaXN0ZW5lcihgb25saW5lYCwoKT0+UGcuc2V0KCExKSk7dmFyIExnPWsoW2RsLFBnLElnXSwoW2UsdCxuXSk9Pm4/TWcuQ29ubmVjdGVkOiFlfHx0P01nLkRpc2Nvbm5lY3RlZDpNZy5Db25uZWN0ZWQsTWcuQ29ubmVjdGluZyksUmcsemc9T2coZT0+e2UmJiFSZyYmKFJnPV9zKEEoVykoYGVycm9yLm5vSW50ZXJuZXRgKSwwKSksIWUmJlJnJiYoUmcoKSxSZz12b2lkIDApfSxrZyk7TGcuc3Vic2NyaWJlKGU9PntlPT09TWcuRGlzY29ubmVjdGVkJiYoRmcuc2V0KCEwKSx6ZyghMCkpLGU9PT1NZy5Db25uZWN0ZWQmJihGZy5zZXQoITEpLHpnKCExKSl9KTt2YXIgQmc9KGUsdCxuKT0+ZT09PU1nLkRpc2Nvbm5lY3RlZHx8IXR8fG4sVmc9KCk9PkJnKEEoTGcpLEEoSHApLEEoWHUpLmRpc2FibGVBdHRhY2htZW50cyksSGc9TyghMSksVWc9ZT0+e2lmKEEoSGcpKXtIKGBUaGVyZSBpcyBhbHJlYWR5IGZpbGUgdXBsb2FkIGluIHByb2dyZXNzYCk7cmV0dXJufWlmKGUubGVuZ3RoPT09MClyZXR1cm47bGV0IHQ9V2coZSk7dC5sZW5ndGg+MCYmWWwuYWRkKHQpfSxXZz1lPT5lLmxlbmd0aD41PyhncyhgJHtBKFcpKGBmaWxlVXBsb2FkLnRvb01hbnlGaWxlc2ApfSA1YCksW10pOmUuZmlsdGVyKGU9PkdnKGUpKSxHZz1lPT57bGV0e2FjY2VwdGVkRmlsZUV4dGVuc2lvbnM6dCxhY2NlcHRlZEZpbGVUeXBlczpuLG1heEZpbGVTaXplOnJ9PUEoYmwpO2lmKCFlKXJldHVybiExO2xldCBpPXQuaW5jbHVkZXMoQ2QoZS5uYW1lKSksYT1uLnNvbWUodD0+dD09PWUudHlwZSk7aWYoVmcoKSlyZXR1cm4gSChgRmlsZSB1cGxvYWQgaXMgZGlzYWJsZWRgKSwhMTtpZighQShIcCkpcmV0dXJuIGdzKEEoVykoYHdhcm5pbmdCYXIudXBsb2FkRmlsZU5vdEZpcnN0YCkpLCExO2lmKGUuc2l6ZT5yKXtsZXQgZT13ZChyKTtyZXR1cm4gZ3MoYCR7QShXKShgZmlsZVVwbG9hZC5maWxlVG9vQmlnYCl9ICR7ZS5zaXplfSAke2UudW5pdH1gKSwhMX1yZXR1cm4gaXx8YT8hMDooZ3MoQShXKShgZmlsZVVwbG9hZC5iYWRGaWxlVHlwZWApKSwhMSl9LEtnPSgpPT5ZbC5jb3VudCgpPT09MD9bXTooWWwuc2V0VXBsb2FkaW5nU3RhdHVzKCksRGQoQShZbCksZT0+WWwuc2V0RmlsZVVwbG9hZGVkKGUubmFtZSkpKSxxZz0xMCxKZz0xZTQsWWc9M2U0LFhnPTIwLFpnPWU9PntpZihlLmxlbmd0aD4wJiZlLmxlbmd0aCVxZz09PTApe2xldCB0PWUuc2xpY2UoLXFnKSxuPW5ldyBEYXRlKGVbZS5sZW5ndGgtMV0uY3JlYXRlZEF0KS5nZXRUaW1lKCk7aWYobmV3IERhdGUoKS5nZXRUaW1lKCktbj5ZZ3x8IXQuZXZlcnkoZT0+ZS5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5Db250YWN0KSlyZXR1cm4hMTtpZihuLW5ldyBEYXRlKHRbMF0uY3JlYXRlZEF0KS5nZXRUaW1lKCk8SmcpcmV0dXJuITB9cmV0dXJuITF9LFFnPWU9PntsZXQgdD1qZihlKTtyZXR1cm4gdD90Lmxlbmd0aD5YZzohMX0sJGc9TygpLGVfPU8oITEpLHRfPU8oKSxuXz0yMDAscl89TyghMSksaV89ayhbJGddLChbZV0pPT5lPT09dm9pZCAwP3pvKFUuTWVzc2FnZSk/P2BgOmUpLGFfPWsoW2lfXSwoW2VdKT0+ZS50cmltKCkubGVuZ3RoPT09MCksb189ZT0+eyRnLnNldChiZyh3ZyhlKSkpfSxzXz0oZSx0KT0+e2xldCBuPUEoaV8pPz9gYCxyPWAke24uc2xpY2UoMCx0KX0ke2V9JHtuLnNsaWNlKHQpfWA7JGcuc2V0KHIpfSxjXz0oKT0+e0EoZV8pfHwocS5nZXRDbGllbnQoKS5jaGF0VHlwaW5nKCEwKSxlXy5zZXQoITApKX0sbF89KCk9PntBKGVfKSYmKHEuZ2V0Q2xpZW50KCkuY2hhdFR5cGluZyghMSksZV8uc2V0KCExKSl9LHVfPWFzeW5jKGU9W10pPT57aWYoQShhXykmJmUubGVuZ3RoPT09MClyZXR1cm47bGV0IHQ9Ymcod2coQShpXyksITApKS50cmltKCk7YXdhaXQgSi5zZW5kTWVzc2FnZSh0LGUpLG9fKGBgKSxsXygpLHJfLnNldCghMCksZ2QoKX0sZF89T2coYXN5bmMoKT0+e2xldCBlPVlsLmNvdW50KCk+MDtpZihBKGFfKSYmIWUpcmV0dXJuO2lmKCFBKFgpJiZsZygpJiZVXygpLGZfKCkmJiFlKXtfcyhBKFcpKGB3YXJuaW5nQmFyLnNhbWVNZXNzYWdlVHdpY2VgKSk7cmV0dXJufWlmKFpnKEEoUnApKSl7X3MoQShXKShgd2FybmluZ0Jhci5zcGFtUHJvdGVjdGlvbmApKTtyZXR1cm59aWYoQShIZykpe2pvKEEoVykoYGNoYXQuZmlsZVVwbG9hZC5lcnJvci5zdGlsbFVwbG9hZGluZ2ApKTtyZXR1cm59aWYoQShVZikpe19zKEEoVykoYGNhcmQuc2VuZGluZ0luUHJvZ3Jlc3NgKSk7cmV0dXJufWlmKFFnKEEoaV8pKSl7X3MoQShXKShgY2FyZC5saW5rc0xpbWl0UmVhY2hlZGApKTtyZXR1cm59aWYobGcoKSl7QmMoSGMuQXV0aEZvcm0pO3JldHVybn1sZXQgdD1bXTtlJiYoSGcuc2V0KCEwKSx0PWF3YWl0IEtnKCksWWwuY2xlYXIoKSxIZy5zZXQoITEpKSxhd2FpdCB1Xyh0KX0sbl8pLGZfPSgpPT57bGV0IGU9QShHcCksdD1BKEtwKSxuPUEoaV8pLnRyaW0oKTtyZXR1cm4gZSYmbj09PWUuY29udGVudC50ZXh0fHx0JiZuPT09dH0scF89ZT0+e2xldCB0PSgpPT57X2QoKX07c28oKCk9PihlLmFkZEV2ZW50TGlzdGVuZXIoYHZpc2liaWxpdHljaGFuZ2VgLHQpLCgpPT5lLnJlbW92ZUV2ZW50TGlzdGVuZXIoYHZpc2liaWxpdHljaGFuZ2VgLHQpKSl9LG1fPWU9PntsZXQgdD0oKT0+e0EoWCkmJldfKCEwKX07c28oKCk9PihlLmFkZEV2ZW50TGlzdGVuZXIoYHBvcHN0YXRlYCx0KSwoKT0+ZS5yZW1vdmVFdmVudExpc3RlbmVyKGBwb3BzdGF0ZWAsdCkpKX0saF89KCk9PntsZXQgZT1CKCkuX3NtYXJ0c3VwcHx8e307ZS5hcHBWZXJzaW9uPWAwLjAuMWAsZS5jb21taXRIYXNoPWBlMDdjMjA4YTM4ZTZmNTA4NGM4ZWI0NjBiOTU4YTQyZjc3OGE1OTY1YCxlLmNvbW1pdEluZm89YGUwN2MyMDhhMzhlNmY1MDg0YzhlYjQ2MGI5NThhNDJmNzc4YTU5NjUgLSBNZXJnZSBwdWxsIHJlcXVlc3QgIzQ1NyBmcm9tIHNtYXJ0c3VwcC9kZXZlbG9wIC0gMjAyNi0wNy0yNyAwOToxOTozMiArMDIwMGAsQigpLl9zbWFydHN1cHA9ZX0sZ189KGU9amcuRGVmYXVsdCk9PntsZXR7d2lkZ2V0VjNVcmw6dH09Vi5nZXRPcHRpb25zKCksbj1uZXcgQXVkaW8oYCR7dH0vYXNzZXRzL3NvdW5kcy8ke2V9YCk7cmV0dXJuIG4uY3Jvc3NPcmlnaW49YGFub255bW91c2Asbi5sb2FkKCksbn0sX189ZT0+ZS5zdWJUeXBlIT09Ry5NZXNzYWdlU3ViVHlwZS5Db250YWN0JiYhW0cuTWVzc2FnZUNvbnRlbnRUeXBlLlJhdGVGb3JtLEcuTWVzc2FnZUNvbnRlbnRUeXBlLkFnZW50Sm9pbixHLk1lc3NhZ2VDb250ZW50VHlwZS5BZ2VudExlYXZlLEcuTWVzc2FnZUNvbnRlbnRUeXBlLkFnZW50QXNzaWduLEcuTWVzc2FnZUNvbnRlbnRUeXBlLkFnZW50VW5hc3NpZ25dLmluY2x1ZGVzKGUuY29udGVudC50eXBlKSx2Xz1lPT57cS5pc0luaXRpYWxpemVkKCkmJnEuZ2V0Q2xpZW50KCkubm90aWZ5KGUpfSx5Xz0oKT0+e1YuZ2V0T3B0aW9ucygpLmlzUHJldmlld01vZGV8fHZfKEsuV2Vic29ja2V0VmlzaXRvckNsaWVudC5FdmVudE5hbWUuV2lkZ2V0T3Blbil9LGJfPSgpPT52XyhLLldlYnNvY2tldFZpc2l0b3JDbGllbnQuRXZlbnROYW1lLldpZGdldFNob3cpLHhfPSgpPT5kb2N1bWVudC52aXNpYmlsaXR5U3RhdGU9PT1gdmlzaWJsZWAsU189KCk9PntpZihBKHNzKSl7VF8uc2V0KCEwKTtsZXQgZT1CKCk7ZS5oaXN0b3J5LnB1c2hTdGF0ZShudWxsLGBgLGUubG9jYXRpb24uaHJlZil9fSxDXz1PKCExKSx3Xz1PKCExKSxUXz1PKCExKSxFXz1lPT4hIUFnLmZpbmQodD0+ZS5pbmNsdWRlcyh0KSksRF89TyghMCk7Vi5hd2FpdE9wdGlvbnMoKS50aGVuKGU9PntsZXQgdD16byhVLlNvdW5kc0VuYWJsZWQpO3Q/RF8uc2V0KHQ9PT1gdHJ1ZWApOnR5cGVvZiBlLmVuYWJsZVNvdW5kcz09YGJvb2xlYW5gJiZEXy5zZXQoZS5lbmFibGVTb3VuZHMpLHdfLnNldChFXyhlLmJvb3RzdHJhcFVybCkpfSk7dmFyIE9fPWU9PntEXy5zZXQoZSksQm8oe25hbWU6VS5Tb3VuZHNFbmFibGVkLHZhbHVlOmUudG9TdHJpbmcoKX0pLGUmJmJwKCl9LGtfPU8oeF8oKSksQV89T2coKCk9PmtfLnNldCh4XygpKSw1MDApO0IoKS5hZGRFdmVudExpc3RlbmVyKGB2aXNpYmlsaXR5Y2hhbmdlYCwoKT0+e0FfKCl9KTt2YXIgal89TygwKSxNXz0oKT0+al8udXBkYXRlKGU9PmUrMSksTl89TyghMCksUF89KGUsdCk9Pih2byhgd2lkZ2V0IHZpc2libGU6ICR7U3RyaW5nKHQpfSA9PiByZWFzb246ICR7ZX1gKSx0JiZ0IT09QShSXykmJmJfKCksdCksRl89TygpLElfPSgpPT5GXy5zZXQoITApLExfPSgpPT5GXy5zZXQoITEpLFJfPWsoW011LHNzLEZfLGVkLG9kLGsoWyR1LFJwLGFfLG9kXSwoW2UsdCxuLHJdKT0+e2xldHtoaWRlT2ZmbGluZUNoYXQ6aSxpc1ByZXZpZXdNb2RlOmF9PVYuZ2V0T3B0aW9ucygpO3JldHVybiBlPT09Sy5BY2NvdW50U3RhdHVzLk9mZmxpbmUmJiEhaSYmU3AodCkubGVuZ3RoPT09MCYmbiYmIXImJiFhfSldLChbZSx0LG4scixpLGFdKT0+e2xldHtoaWRlTW9iaWxlV2lkZ2V0Om8saGlkZVdpZGdldDpzfT1WLmdldE9wdGlvbnMoKTtyZXR1cm4gZT8uYmFubmVkQXQ/UF8oYHZpc2l0b3IgaXMgYmFubmVkYCwhMSk6dCYmbz9QXyhgb3B0aW9uICdoaWRlTW9iaWxlV2lkZ2V0JyBpcyB0cnVlYCwhMSk6dHlwZW9mIG49PWBib29sZWFuYD9QXyhgc2V0IGJ5IEFQSSBjb21tYW5kYCxuKTpyJiYhaT9QXyhgY2hhdCBzdGF0dXMgaXMgbm90IHBlbmRpbmdgLCEwKTphP1BfKGBvcHRpb24gJ2hpZGVPZmZsaW5lQ2hhdCcgaXMgdHJ1ZWAsITEpOlBfKGBvcHRpb24gJ2hpZGVXaWRnZXQnIGlzICR7U3RyaW5nKHMpfWAsIXMpfSksel89ayhbc3NdLChbZV0pPT57bGV0e29wZW5PblRyaWdnZXI6dH09Vi5nZXRPcHRpb25zKCk7cmV0dXJuIHQmJiFlfSksQl89W10sVl89ZT0+KEJfLnB1c2goZSksKCk9PntsZXQgdD1CXy5pbmRleE9mKGUpO3QhPT0tMSYmQl8uc3BsaWNlKHQsMSl9KSxIXz0oKT0+Ql8ubGVuZ3RoPT09MD8hMTooQl8ucG9wKCkoKSwhMCksWD1ycyhVLklzTWVzc2VuZ2VyRnJhbWVPcGVuZWQsITEsZT0+IUEoc3MpJiZlPT09YHRydWVgKSxVXz0oZT0hMSk9PntsZXR7d2lkZ2V0QmxvY2tpbmdPcHRpb25zOnR9PVYuZ2V0T3B0aW9ucygpO3Q/LmRpc2FibGVPcGVuTWVzc2VuZ2VyJiYhZXx8KGNoKCksU18oKSxYLnNldCghMCksZXYoKSxDaCgpLHlfKCkpfSxXXz1lPT57aWYoQShzcykmJkEoVF8pJiYhZSlyZXR1cm4gVF8uc2V0KCExKSxCKCkuaGlzdG9yeS5iYWNrKCk7ei5lbWl0KGBtZXNzZW5nZXJDbG9zZWAsITApLFguc2V0KCExKX0sR189ZT0+e2lmKCFlKXJldHVybjtsZXR7d2lkZ2V0QmxvY2tpbmdPcHRpb25zOnR9PVYuZ2V0T3B0aW9ucygpLG49ZT0+e2lmKGUua2V5PT09VGguRXNjYXBlKXtpZihIXygpfHx0Py5kaXNhYmxlQ2xvc2VCdXR0b24pcmV0dXJuO1dfKCl9fSxyPWUub3duZXJEb2N1bWVudDtyZXR1cm4gci5hZGRFdmVudExpc3RlbmVyKGBrZXlkb3duYCxuLCEwKSx7ZGVzdHJveSgpe3IucmVtb3ZlRXZlbnRMaXN0ZW5lcihga2V5ZG93bmAsbiwhMCl9fX0sS189ayhbQ18sUl8sWF0sKFtlLHQsbl0pPT5lJiZ0JiZuKTtmdW5jdGlvbiBxXygpe2xldCBlPU8oITEpLHtzdWJzY3JpYmU6dH09ZSxuPW51bGw7cmV0dXJue3N1YnNjcmliZTp0LGhhbmRsZURyYWdPdmVyOih0LHI9ITApPT57ciYmdC5wcmV2ZW50RGVmYXVsdCgpLEEoZSl8fGUuc2V0KCEwKSxuJiZjbGVhclRpbWVvdXQobiksbj13aW5kb3cuc2V0VGltZW91dCgoKT0+e2Uuc2V0KCExKX0sMjAwKX0saGFuZGxlRHJvcDp0PT57dC5wcmV2ZW50RGVmYXVsdCgpLG4mJmNsZWFyVGltZW91dChuKSxlLnNldCghMSk7bGV0IHI9dC5kYXRhVHJhbnNmZXI/LmZpbGVzP1suLi50LmRhdGFUcmFuc2Zlci5maWxlc106W107cmV0dXJuIHIubGVuZ3RoPT09MCYmX3MoYERyb3BwZWQgaXRlbShzKSBhcmUgbm90IHByb2Nlc3NhYmxlIGZpbGVzYCkse2Ryb3BwZWRGaWxlczpyfX19fXZhciBKXz1xXygpLFlfPWsoW0NfLFJfLFhdLChbZSx0LG5dKT0+ZSYmdCYmIW4pLFhfPU8oITEpLFpfPU8oITEpLFFfPSgpPT57WF8uc2V0KCEwKSxaXy5zZXQoITEpfSwkXz0oKT0+e1pfLnNldCghMCksWF8uc2V0KCExKX0sZXY9KGU9ITEpPT57Wl8uc2V0KCExKSxlJiZCbyh7bmFtZTpVLlBvcHVwQ2xvc2VkQXQsdmFsdWU6bmV3IERhdGUoKS50b0lTT1N0cmluZygpfSl9LHR2PWsoW3NzXSwoW2VdKT0+e2xldHttb2JpbGVQb3B1cHNFbmFibGVkOnR9PVYuZ2V0T3B0aW9ucygpO3JldHVybiBlPyEhdDohMH0pLG52PWsoW05wXSwoW2VdKT0+e2xldCB0PXpvKFUuUG9wdXBDbG9zZWRBdCk/P251bGw7cmV0dXJuIXR8fCFlPyEwOm5ldyBEYXRlKGUuY3JlYXRlZEF0KS5nZXRUaW1lKCk+bmV3IERhdGUodCkuZ2V0VGltZSgpfSkscnY9ayhbQ18sUl8sWF8sWCx0dl0sKFtlLHQsbixyLGldKT0+ZSYmdCYmbiYmIXImJmkpLGl2PWsoW0NfLFJfLFpfLFgsTnAsbnYsdHYsV2ZdLChbZSx0LG4scixpLGEsbyxzXSk9PmUmJnQmJm4mJmkmJmEmJiFyJiZvJiYhcyksYXY9e3doaXRlOmAjZmZmZmZmYCxzbGF0ZTEwMDpgI2YxZjVmOWAsc2xhdGUyMDA6YCNlMmU4ZjBgLHNsYXRlMzAwOmAjY2JkNWUxYCxzbGF0ZTkwMDpgIzBmMTcyYWAsYmx1ZTcwMDpgIzFkNGVkOGAsc21hcnRzdXBwQmx1ZTpgIzEyMzNkZmB9O2Z1bmN0aW9uIFooZSx0KXtzdihlKSYmKGU9YDEwMCVgKTtsZXQgbj1jdihlKTtyZXR1cm4gZT10PT09MzYwP2U6TWF0aC5taW4odCxNYXRoLm1heCgwLHBhcnNlRmxvYXQoZSkpKSxuJiYoZT1wYXJzZUludChTdHJpbmcoZSp0KSwxMCkvMTAwKSxNYXRoLmFicyhlLXQpPDFlLTY/MTooZT10PT09MzYwPyhlPDA/ZSV0K3Q6ZSV0KS9wYXJzZUZsb2F0KFN0cmluZyh0KSk6ZSV0L3BhcnNlRmxvYXQoU3RyaW5nKHQpKSxlKX1mdW5jdGlvbiBvdihlKXtyZXR1cm4gTWF0aC5taW4oMSxNYXRoLm1heCgwLGUpKX1mdW5jdGlvbiBzdihlKXtyZXR1cm4gdHlwZW9mIGU9PWBzdHJpbmdgJiZlLmluZGV4T2YoYC5gKSE9PS0xJiZwYXJzZUZsb2F0KGUpPT09MX1mdW5jdGlvbiBjdihlKXtyZXR1cm4gdHlwZW9mIGU9PWBzdHJpbmdgJiZlLmluZGV4T2YoYCVgKSE9PS0xfWZ1bmN0aW9uIGx2KGUpe3JldHVybiBlPXBhcnNlRmxvYXQoZSksKGlzTmFOKGUpfHxlPDB8fGU+MSkmJihlPTEpLGV9ZnVuY3Rpb24gdXYoZSl7cmV0dXJuIE51bWJlcihlKTw9MT9gJHtOdW1iZXIoZSkqMTAwfSVgOmV9ZnVuY3Rpb24gZHYoZSl7cmV0dXJuIGUubGVuZ3RoPT09MT9gMGArZTpTdHJpbmcoZSl9ZnVuY3Rpb24gZnYoZSx0LG4pe3JldHVybntyOlooZSwyNTUpKjI1NSxnOloodCwyNTUpKjI1NSxiOloobiwyNTUpKjI1NX19ZnVuY3Rpb24gcHYoZSx0LG4pe2U9WihlLDI1NSksdD1aKHQsMjU1KSxuPVoobiwyNTUpO2xldCByPU1hdGgubWF4KGUsdCxuKSxpPU1hdGgubWluKGUsdCxuKSxhPTAsbz0wLHM9KHIraSkvMjtpZihyPT09aSlvPTAsYT0wO2Vsc2V7bGV0IGM9ci1pO3N3aXRjaChvPXM+LjU/Yy8oMi1yLWkpOmMvKHIraSkscil7Y2FzZSBlOmE9KHQtbikvYysodDxuPzY6MCk7YnJlYWs7Y2FzZSB0OmE9KG4tZSkvYysyO2JyZWFrO2Nhc2UgbjphPShlLXQpL2MrNDticmVhaztkZWZhdWx0OmJyZWFrfWEvPTZ9cmV0dXJue2g6YSxzOm8sbDpzfX1mdW5jdGlvbiBtdihlLHQsbil7cmV0dXJuIG48MCYmKG4rPTEpLG4+MSYmLS1uLG48MS82P2UrKHQtZSkqKDYqbik6bjwxLzI/dDpuPDIvMz9lKyh0LWUpKigyLzMtbikqNjplfWZ1bmN0aW9uIGh2KGUsdCxuKXtsZXQgcixpLGE7aWYoZT1aKGUsMzYwKSx0PVoodCwxMDApLG49WihuLDEwMCksdD09PTApaT1uLGE9bixyPW47ZWxzZXtsZXQgbz1uPC41P24qKDErdCk6bit0LW4qdCxzPTIqbi1vO3I9bXYocyxvLGUrMS8zKSxpPW12KHMsbyxlKSxhPW12KHMsbyxlLTEvMyl9cmV0dXJue3I6cioyNTUsZzppKjI1NSxiOmEqMjU1fX1mdW5jdGlvbiBndihlLHQsbil7ZT1aKGUsMjU1KSx0PVoodCwyNTUpLG49WihuLDI1NSk7bGV0IHI9TWF0aC5tYXgoZSx0LG4pLGk9TWF0aC5taW4oZSx0LG4pLGE9MCxvPXIscz1yLWksYz1yPT09MD8wOnMvcjtpZihyPT09aSlhPTA7ZWxzZXtzd2l0Y2gocil7Y2FzZSBlOmE9KHQtbikvcysodDxuPzY6MCk7YnJlYWs7Y2FzZSB0OmE9KG4tZSkvcysyO2JyZWFrO2Nhc2UgbjphPShlLXQpL3MrNDticmVhaztkZWZhdWx0OmJyZWFrfWEvPTZ9cmV0dXJue2g6YSxzOmMsdjpvfX1mdW5jdGlvbiBfdihlLHQsbil7ZT1aKGUsMzYwKSo2LHQ9Wih0LDEwMCksbj1aKG4sMTAwKTtsZXQgcj1NYXRoLmZsb29yKGUpLGk9ZS1yLGE9biooMS10KSxvPW4qKDEtaSp0KSxzPW4qKDEtKDEtaSkqdCksYz1yJTYsbD1bbixvLGEsYSxzLG5dW2NdLHU9W3MsbixuLG8sYSxhXVtjXSxkPVthLGEscyxuLG4sb11bY107cmV0dXJue3I6bCoyNTUsZzp1KjI1NSxiOmQqMjU1fX1mdW5jdGlvbiB2dihlLHQsbixyKXtsZXQgaT1bZHYoTWF0aC5yb3VuZChlKS50b1N0cmluZygxNikpLGR2KE1hdGgucm91bmQodCkudG9TdHJpbmcoMTYpKSxkdihNYXRoLnJvdW5kKG4pLnRvU3RyaW5nKDE2KSldO3JldHVybiByJiZpWzBdLnN0YXJ0c1dpdGgoaVswXS5jaGFyQXQoMSkpJiZpWzFdLnN0YXJ0c1dpdGgoaVsxXS5jaGFyQXQoMSkpJiZpWzJdLnN0YXJ0c1dpdGgoaVsyXS5jaGFyQXQoMSkpP2lbMF0uY2hhckF0KDApK2lbMV0uY2hhckF0KDApK2lbMl0uY2hhckF0KDApOmkuam9pbihgYCl9ZnVuY3Rpb24geXYoZSx0LG4scixpKXtsZXQgYT1bZHYoTWF0aC5yb3VuZChlKS50b1N0cmluZygxNikpLGR2KE1hdGgucm91bmQodCkudG9TdHJpbmcoMTYpKSxkdihNYXRoLnJvdW5kKG4pLnRvU3RyaW5nKDE2KSksZHYoU3YocikpXTtyZXR1cm4gaSYmYVswXS5zdGFydHNXaXRoKGFbMF0uY2hhckF0KDEpKSYmYVsxXS5zdGFydHNXaXRoKGFbMV0uY2hhckF0KDEpKSYmYVsyXS5zdGFydHNXaXRoKGFbMl0uY2hhckF0KDEpKSYmYVszXS5zdGFydHNXaXRoKGFbM10uY2hhckF0KDEpKT9hWzBdLmNoYXJBdCgwKSthWzFdLmNoYXJBdCgwKSthWzJdLmNoYXJBdCgwKSthWzNdLmNoYXJBdCgwKTphLmpvaW4oYGApfWZ1bmN0aW9uIGJ2KGUsdCxuLHIpe2xldCBpPWUvMTAwLGE9dC8xMDAsbz1uLzEwMCxzPXIvMTAwO3JldHVybntyOjI1NSooMS1pKSooMS1zKSxnOjI1NSooMS1hKSooMS1zKSxiOjI1NSooMS1vKSooMS1zKX19ZnVuY3Rpb24geHYoZSx0LG4pe2xldCByPTEtZS8yNTUsaT0xLXQvMjU1LGE9MS1uLzI1NSxvPU1hdGgubWluKHIsaSxhKTtyZXR1cm4gbz09PTE/KHI9MCxpPTAsYT0wKToocj0oci1vKS8oMS1vKSoxMDAsaT0oaS1vKS8oMS1vKSoxMDAsYT0oYS1vKS8oMS1vKSoxMDApLG8qPTEwMCx7YzpNYXRoLnJvdW5kKHIpLG06TWF0aC5yb3VuZChpKSx5Ok1hdGgucm91bmQoYSksazpNYXRoLnJvdW5kKG8pfX1mdW5jdGlvbiBTdihlKXtyZXR1cm4gTWF0aC5yb3VuZChwYXJzZUZsb2F0KGUpKjI1NSkudG9TdHJpbmcoMTYpfWZ1bmN0aW9uIEN2KGUpe3JldHVybiB3dihlKS8yNTV9ZnVuY3Rpb24gd3YoZSl7cmV0dXJuIHBhcnNlSW50KGUsMTYpfWZ1bmN0aW9uIFR2KGUpe3JldHVybntyOmU+PjE2LGc6KGUmNjUyODApPj44LGI6ZSYyNTV9fXZhciBFdj17YWxpY2VibHVlOmAjZjBmOGZmYCxhbnRpcXVld2hpdGU6YCNmYWViZDdgLGFxdWE6YCMwMGZmZmZgLGFxdWFtYXJpbmU6YCM3ZmZmZDRgLGF6dXJlOmAjZjBmZmZmYCxiZWlnZTpgI2Y1ZjVkY2AsYmlzcXVlOmAjZmZlNGM0YCxibGFjazpgIzAwMDAwMGAsYmxhbmNoZWRhbG1vbmQ6YCNmZmViY2RgLGJsdWU6YCMwMDAwZmZgLGJsdWV2aW9sZXQ6YCM4YTJiZTJgLGJyb3duOmAjYTUyYTJhYCxidXJseXdvb2Q6YCNkZWI4ODdgLGNhZGV0Ymx1ZTpgIzVmOWVhMGAsY2hhcnRyZXVzZTpgIzdmZmYwMGAsY2hvY29sYXRlOmAjZDI2OTFlYCxjb3JhbDpgI2ZmN2Y1MGAsY29ybmZsb3dlcmJsdWU6YCM2NDk1ZWRgLGNvcm5zaWxrOmAjZmZmOGRjYCxjcmltc29uOmAjZGMxNDNjYCxjeWFuOmAjMDBmZmZmYCxkYXJrYmx1ZTpgIzAwMDA4YmAsZGFya2N5YW46YCMwMDhiOGJgLGRhcmtnb2xkZW5yb2Q6YCNiODg2MGJgLGRhcmtncmF5OmAjYTlhOWE5YCxkYXJrZ3JlZW46YCMwMDY0MDBgLGRhcmtncmV5OmAjYTlhOWE5YCxkYXJra2hha2k6YCNiZGI3NmJgLGRhcmttYWdlbnRhOmAjOGIwMDhiYCxkYXJrb2xpdmVncmVlbjpgIzU1NmIyZmAsZGFya29yYW5nZTpgI2ZmOGMwMGAsZGFya29yY2hpZDpgIzk5MzJjY2AsZGFya3JlZDpgIzhiMDAwMGAsZGFya3NhbG1vbjpgI2U5OTY3YWAsZGFya3NlYWdyZWVuOmAjOGZiYzhmYCxkYXJrc2xhdGVibHVlOmAjNDgzZDhiYCxkYXJrc2xhdGVncmF5OmAjMmY0ZjRmYCxkYXJrc2xhdGVncmV5OmAjMmY0ZjRmYCxkYXJrdHVycXVvaXNlOmAjMDBjZWQxYCxkYXJrdmlvbGV0OmAjOTQwMGQzYCxkZWVwcGluazpgI2ZmMTQ5M2AsZGVlcHNreWJsdWU6YCMwMGJmZmZgLGRpbWdyYXk6YCM2OTY5NjlgLGRpbWdyZXk6YCM2OTY5NjlgLGRvZGdlcmJsdWU6YCMxZTkwZmZgLGZpcmVicmljazpgI2IyMjIyMmAsZmxvcmFsd2hpdGU6YCNmZmZhZjBgLGZvcmVzdGdyZWVuOmAjMjI4YjIyYCxmdWNoc2lhOmAjZmYwMGZmYCxnYWluc2Jvcm86YCNkY2RjZGNgLGdob3N0d2hpdGU6YCNmOGY4ZmZgLGdvbGRlbnJvZDpgI2RhYTUyMGAsZ29sZDpgI2ZmZDcwMGAsZ3JheTpgIzgwODA4MGAsZ3JlZW46YCMwMDgwMDBgLGdyZWVueWVsbG93OmAjYWRmZjJmYCxncmV5OmAjODA4MDgwYCxob25leWRldzpgI2YwZmZmMGAsaG90cGluazpgI2ZmNjliNGAsaW5kaWFucmVkOmAjY2Q1YzVjYCxpbmRpZ286YCM0YjAwODJgLGl2b3J5OmAjZmZmZmYwYCxraGFraTpgI2YwZTY4Y2AsbGF2ZW5kZXJibHVzaDpgI2ZmZjBmNWAsbGF2ZW5kZXI6YCNlNmU2ZmFgLGxhd25ncmVlbjpgIzdjZmMwMGAsbGVtb25jaGlmZm9uOmAjZmZmYWNkYCxsaWdodGJsdWU6YCNhZGQ4ZTZgLGxpZ2h0Y29yYWw6YCNmMDgwODBgLGxpZ2h0Y3lhbjpgI2UwZmZmZmAsbGlnaHRnb2xkZW5yb2R5ZWxsb3c6YCNmYWZhZDJgLGxpZ2h0Z3JheTpgI2QzZDNkM2AsbGlnaHRncmVlbjpgIzkwZWU5MGAsbGlnaHRncmV5OmAjZDNkM2QzYCxsaWdodHBpbms6YCNmZmI2YzFgLGxpZ2h0c2FsbW9uOmAjZmZhMDdhYCxsaWdodHNlYWdyZWVuOmAjMjBiMmFhYCxsaWdodHNreWJsdWU6YCM4N2NlZmFgLGxpZ2h0c2xhdGVncmF5OmAjNzc4ODk5YCxsaWdodHNsYXRlZ3JleTpgIzc3ODg5OWAsbGlnaHRzdGVlbGJsdWU6YCNiMGM0ZGVgLGxpZ2h0eWVsbG93OmAjZmZmZmUwYCxsaW1lOmAjMDBmZjAwYCxsaW1lZ3JlZW46YCMzMmNkMzJgLGxpbmVuOmAjZmFmMGU2YCxtYWdlbnRhOmAjZmYwMGZmYCxtYXJvb246YCM4MDAwMDBgLG1lZGl1bWFxdWFtYXJpbmU6YCM2NmNkYWFgLG1lZGl1bWJsdWU6YCMwMDAwY2RgLG1lZGl1bW9yY2hpZDpgI2JhNTVkM2AsbWVkaXVtcHVycGxlOmAjOTM3MGRiYCxtZWRpdW1zZWFncmVlbjpgIzNjYjM3MWAsbWVkaXVtc2xhdGVibHVlOmAjN2I2OGVlYCxtZWRpdW1zcHJpbmdncmVlbjpgIzAwZmE5YWAsbWVkaXVtdHVycXVvaXNlOmAjNDhkMWNjYCxtZWRpdW12aW9sZXRyZWQ6YCNjNzE1ODVgLG1pZG5pZ2h0Ymx1ZTpgIzE5MTk3MGAsbWludGNyZWFtOmAjZjVmZmZhYCxtaXN0eXJvc2U6YCNmZmU0ZTFgLG1vY2Nhc2luOmAjZmZlNGI1YCxuYXZham93aGl0ZTpgI2ZmZGVhZGAsbmF2eTpgIzAwMDA4MGAsb2xkbGFjZTpgI2ZkZjVlNmAsb2xpdmU6YCM4MDgwMDBgLG9saXZlZHJhYjpgIzZiOGUyM2Asb3JhbmdlOmAjZmZhNTAwYCxvcmFuZ2VyZWQ6YCNmZjQ1MDBgLG9yY2hpZDpgI2RhNzBkNmAscGFsZWdvbGRlbnJvZDpgI2VlZThhYWAscGFsZWdyZWVuOmAjOThmYjk4YCxwYWxldHVycXVvaXNlOmAjYWZlZWVlYCxwYWxldmlvbGV0cmVkOmAjZGI3MDkzYCxwYXBheWF3aGlwOmAjZmZlZmQ1YCxwZWFjaHB1ZmY6YCNmZmRhYjlgLHBlcnU6YCNjZDg1M2ZgLHBpbms6YCNmZmMwY2JgLHBsdW06YCNkZGEwZGRgLHBvd2RlcmJsdWU6YCNiMGUwZTZgLHB1cnBsZTpgIzgwMDA4MGAscmViZWNjYXB1cnBsZTpgIzY2MzM5OWAscmVkOmAjZmYwMDAwYCxyb3N5YnJvd246YCNiYzhmOGZgLHJveWFsYmx1ZTpgIzQxNjllMWAsc2FkZGxlYnJvd246YCM4YjQ1MTNgLHNhbG1vbjpgI2ZhODA3MmAsc2FuZHlicm93bjpgI2Y0YTQ2MGAsc2VhZ3JlZW46YCMyZThiNTdgLHNlYXNoZWxsOmAjZmZmNWVlYCxzaWVubmE6YCNhMDUyMmRgLHNpbHZlcjpgI2MwYzBjMGAsc2t5Ymx1ZTpgIzg3Y2VlYmAsc2xhdGVibHVlOmAjNmE1YWNkYCxzbGF0ZWdyYXk6YCM3MDgwOTBgLHNsYXRlZ3JleTpgIzcwODA5MGAsc25vdzpgI2ZmZmFmYWAsc3ByaW5nZ3JlZW46YCMwMGZmN2ZgLHN0ZWVsYmx1ZTpgIzQ2ODJiNGAsdGFuOmAjZDJiNDhjYCx0ZWFsOmAjMDA4MDgwYCx0aGlzdGxlOmAjZDhiZmQ4YCx0b21hdG86YCNmZjYzNDdgLHR1cnF1b2lzZTpgIzQwZTBkMGAsdmlvbGV0OmAjZWU4MmVlYCx3aGVhdDpgI2Y1ZGViM2Asd2hpdGU6YCNmZmZmZmZgLHdoaXRlc21va2U6YCNmNWY1ZjVgLHllbGxvdzpgI2ZmZmYwMGAseWVsbG93Z3JlZW46YCM5YWNkMzJgfTtmdW5jdGlvbiBEdihlKXtsZXQgdD17cjowLGc6MCxiOjB9LG49MSxyPW51bGwsaT1udWxsLGE9bnVsbCxvPSExLHM9ITE7cmV0dXJuIHR5cGVvZiBlPT1gc3RyaW5nYCYmKGU9TXYoZSkpLHR5cGVvZiBlPT1gb2JqZWN0YCYmKE52KGUucikmJk52KGUuZykmJk52KGUuYik/KHQ9ZnYoZS5yLGUuZyxlLmIpLG89ITAscz1TdHJpbmcoZS5yKS5zdWJzdHIoLTEpPT09YCVgP2BwcmdiYDpgcmdiYCk6TnYoZS5oKSYmTnYoZS5zKSYmTnYoZS52KT8ocj11dihlLnMpLGk9dXYoZS52KSx0PV92KGUuaCxyLGkpLG89ITAscz1gaHN2YCk6TnYoZS5oKSYmTnYoZS5zKSYmTnYoZS5sKT8ocj11dihlLnMpLGE9dXYoZS5sKSx0PWh2KGUuaCxyLGEpLG89ITAscz1gaHNsYCk6TnYoZS5jKSYmTnYoZS5tKSYmTnYoZS55KSYmTnYoZS5rKSYmKHQ9YnYoZS5jLGUubSxlLnksZS5rKSxvPSEwLHM9YGNteWtgKSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxgYWApJiYobj1lLmEpKSxuPWx2KG4pLHtvazpvLGZvcm1hdDplLmZvcm1hdHx8cyxyOk1hdGgubWluKDI1NSxNYXRoLm1heCh0LnIsMCkpLGc6TWF0aC5taW4oMjU1LE1hdGgubWF4KHQuZywwKSksYjpNYXRoLm1pbigyNTUsTWF0aC5tYXgodC5iLDApKSxhOm59fXZhciBPdj1gKD86Wy1cXCtdP1xcZCpcXC5cXGQrJT8pfCg/OlstXFwrXT9cXGQrJT8pYCxrdj1gW1xcc3xcXChdKyhgK092K2ApWyx8XFxzXSsoKD86Wy1cXCtdP1xcZCpcXC5cXGQrJT8pfCg/OlstXFwrXT9cXGQrJT8pKVssfFxcc10rKCg/OlstXFwrXT9cXGQqXFwuXFxkKyU/KXwoPzpbLVxcK10/XFxkKyU/KSlcXHMqXFwpP2AsQXY9YFtcXHN8XFwoXSsoYCtPditgKVssfFxcc10rKCg/OlstXFwrXT9cXGQqXFwuXFxkKyU/KXwoPzpbLVxcK10/XFxkKyU/KSlbLHxcXHNdKygoPzpbLVxcK10/XFxkKlxcLlxcZCslPyl8KD86Wy1cXCtdP1xcZCslPykpWyx8XFxzXSsoKD86Wy1cXCtdP1xcZCpcXC5cXGQrJT8pfCg/OlstXFwrXT9cXGQrJT8pKVxccypcXCk/YCxqdj17Q1NTX1VOSVQ6bmV3IFJlZ0V4cChPdikscmdiOlJlZ0V4cChgcmdiYCtrdikscmdiYTpSZWdFeHAoYHJnYmFgK0F2KSxoc2w6UmVnRXhwKGBoc2xgK2t2KSxoc2xhOlJlZ0V4cChgaHNsYWArQXYpLGhzdjpSZWdFeHAoYGhzdmAra3YpLGhzdmE6UmVnRXhwKGBoc3ZhYCtBdiksY215azpSZWdFeHAoYGNteWtgK0F2KSxoZXgzOi9eIz8oWzAtOWEtZkEtRl17MX0pKFswLTlhLWZBLUZdezF9KShbMC05YS1mQS1GXXsxfSkkLyxoZXg2Oi9eIz8oWzAtOWEtZkEtRl17Mn0pKFswLTlhLWZBLUZdezJ9KShbMC05YS1mQS1GXXsyfSkkLyxoZXg0Oi9eIz8oWzAtOWEtZkEtRl17MX0pKFswLTlhLWZBLUZdezF9KShbMC05YS1mQS1GXXsxfSkoWzAtOWEtZkEtRl17MX0pJC8saGV4ODovXiM/KFswLTlhLWZBLUZdezJ9KShbMC05YS1mQS1GXXsyfSkoWzAtOWEtZkEtRl17Mn0pKFswLTlhLWZBLUZdezJ9KSQvfTtmdW5jdGlvbiBNdihlKXtpZihlPWUudHJpbSgpLnRvTG93ZXJDYXNlKCksZS5sZW5ndGg9PT0wKXJldHVybiExO2xldCB0PSExO2lmKEV2W2VdKWU9RXZbZV0sdD0hMDtlbHNlIGlmKGU9PT1gdHJhbnNwYXJlbnRgKXJldHVybntyOjAsZzowLGI6MCxhOjAsZm9ybWF0OmBuYW1lYH07bGV0IG49anYucmdiLmV4ZWMoZSk7cmV0dXJuIG4/e3I6blsxXSxnOm5bMl0sYjpuWzNdfToobj1qdi5yZ2JhLmV4ZWMoZSksbj97cjpuWzFdLGc6blsyXSxiOm5bM10sYTpuWzRdfToobj1qdi5oc2wuZXhlYyhlKSxuP3toOm5bMV0sczpuWzJdLGw6blszXX06KG49anYuaHNsYS5leGVjKGUpLG4/e2g6blsxXSxzOm5bMl0sbDpuWzNdLGE6bls0XX06KG49anYuaHN2LmV4ZWMoZSksbj97aDpuWzFdLHM6blsyXSx2Om5bM119OihuPWp2LmhzdmEuZXhlYyhlKSxuP3toOm5bMV0sczpuWzJdLHY6blszXSxhOm5bNF19OihuPWp2LmNteWsuZXhlYyhlKSxuP3tjOm5bMV0sbTpuWzJdLHk6blszXSxrOm5bNF19OihuPWp2LmhleDguZXhlYyhlKSxuP3tyOnd2KG5bMV0pLGc6d3YoblsyXSksYjp3dihuWzNdKSxhOkN2KG5bNF0pLGZvcm1hdDp0P2BuYW1lYDpgaGV4OGB9OihuPWp2LmhleDYuZXhlYyhlKSxuP3tyOnd2KG5bMV0pLGc6d3YoblsyXSksYjp3dihuWzNdKSxmb3JtYXQ6dD9gbmFtZWA6YGhleGB9OihuPWp2LmhleDQuZXhlYyhlKSxuP3tyOnd2KG5bMV0rblsxXSksZzp3dihuWzJdK25bMl0pLGI6d3YoblszXStuWzNdKSxhOkN2KG5bNF0rbls0XSksZm9ybWF0OnQ/YG5hbWVgOmBoZXg4YH06KG49anYuaGV4My5leGVjKGUpLG4/e3I6d3YoblsxXStuWzFdKSxnOnd2KG5bMl0rblsyXSksYjp3dihuWzNdK25bM10pLGZvcm1hdDp0P2BuYW1lYDpgaGV4YH06ITEpKSkpKSkpKSkpfWZ1bmN0aW9uIE52KGUpe3JldHVybiB0eXBlb2YgZT09YG51bWJlcmA/IU51bWJlci5pc05hTihlKTpqdi5DU1NfVU5JVC50ZXN0KGUpfXZhciBQdj1jbGFzcyBle2NvbnN0cnVjdG9yKHQ9YGAsbj17fSl7aWYodCBpbnN0YW5jZW9mIGUpcmV0dXJuIHQ7dHlwZW9mIHQ9PWBudW1iZXJgJiYodD1Udih0KSksdGhpcy5vcmlnaW5hbElucHV0PXQ7bGV0IHI9RHYodCk7dGhpcy5vcmlnaW5hbElucHV0PXQsdGhpcy5yPXIucix0aGlzLmc9ci5nLHRoaXMuYj1yLmIsdGhpcy5hPXIuYSx0aGlzLnJvdW5kQT1NYXRoLnJvdW5kKDEwMCp0aGlzLmEpLzEwMCx0aGlzLmZvcm1hdD1uLmZvcm1hdD8/ci5mb3JtYXQsdGhpcy5ncmFkaWVudFR5cGU9bi5ncmFkaWVudFR5cGUsdGhpcy5yPDEmJih0aGlzLnI9TWF0aC5yb3VuZCh0aGlzLnIpKSx0aGlzLmc8MSYmKHRoaXMuZz1NYXRoLnJvdW5kKHRoaXMuZykpLHRoaXMuYjwxJiYodGhpcy5iPU1hdGgucm91bmQodGhpcy5iKSksdGhpcy5pc1ZhbGlkPXIub2t9aXNEYXJrKCl7cmV0dXJuIHRoaXMuZ2V0QnJpZ2h0bmVzcygpPDEyOH1pc0xpZ2h0KCl7cmV0dXJuIXRoaXMuaXNEYXJrKCl9Z2V0QnJpZ2h0bmVzcygpe2xldCBlPXRoaXMudG9SZ2IoKTtyZXR1cm4oZS5yKjI5OStlLmcqNTg3K2UuYioxMTQpLzFlM31nZXRMdW1pbmFuY2UoKXtsZXQgZT10aGlzLnRvUmdiKCksdCxuLHIsaT1lLnIvMjU1LGE9ZS5nLzI1NSxvPWUuYi8yNTU7cmV0dXJuIHQ9aTw9LjAzOTI4P2kvMTIuOTI6KChpKy4wNTUpLzEuMDU1KSoqMi40LG49YTw9LjAzOTI4P2EvMTIuOTI6KChhKy4wNTUpLzEuMDU1KSoqMi40LHI9bzw9LjAzOTI4P28vMTIuOTI6KChvKy4wNTUpLzEuMDU1KSoqMi40LC4yMTI2KnQrLjcxNTIqbisuMDcyMipyfWdldEFscGhhKCl7cmV0dXJuIHRoaXMuYX1zZXRBbHBoYShlKXtyZXR1cm4gdGhpcy5hPWx2KGUpLHRoaXMucm91bmRBPU1hdGgucm91bmQoMTAwKnRoaXMuYSkvMTAwLHRoaXN9aXNNb25vY2hyb21lKCl7bGV0e3M6ZX09dGhpcy50b0hzbCgpO3JldHVybiBlPT09MH10b0hzdigpe2xldCBlPWd2KHRoaXMucix0aGlzLmcsdGhpcy5iKTtyZXR1cm57aDplLmgqMzYwLHM6ZS5zLHY6ZS52LGE6dGhpcy5hfX10b0hzdlN0cmluZygpe2xldCBlPWd2KHRoaXMucix0aGlzLmcsdGhpcy5iKSx0PU1hdGgucm91bmQoZS5oKjM2MCksbj1NYXRoLnJvdW5kKGUucyoxMDApLHI9TWF0aC5yb3VuZChlLnYqMTAwKTtyZXR1cm4gdGhpcy5hPT09MT9gaHN2KCR7dH0sICR7bn0lLCAke3J9JSlgOmBoc3ZhKCR7dH0sICR7bn0lLCAke3J9JSwgJHt0aGlzLnJvdW5kQX0pYH10b0hzbCgpe2xldCBlPXB2KHRoaXMucix0aGlzLmcsdGhpcy5iKTtyZXR1cm57aDplLmgqMzYwLHM6ZS5zLGw6ZS5sLGE6dGhpcy5hfX10b0hzbFN0cmluZygpe2xldCBlPXB2KHRoaXMucix0aGlzLmcsdGhpcy5iKSx0PU1hdGgucm91bmQoZS5oKjM2MCksbj1NYXRoLnJvdW5kKGUucyoxMDApLHI9TWF0aC5yb3VuZChlLmwqMTAwKTtyZXR1cm4gdGhpcy5hPT09MT9gaHNsKCR7dH0sICR7bn0lLCAke3J9JSlgOmBoc2xhKCR7dH0sICR7bn0lLCAke3J9JSwgJHt0aGlzLnJvdW5kQX0pYH10b0hleChlPSExKXtyZXR1cm4gdnYodGhpcy5yLHRoaXMuZyx0aGlzLmIsZSl9dG9IZXhTdHJpbmcoZT0hMSl7cmV0dXJuYCNgK3RoaXMudG9IZXgoZSl9dG9IZXg4KGU9ITEpe3JldHVybiB5dih0aGlzLnIsdGhpcy5nLHRoaXMuYix0aGlzLmEsZSl9dG9IZXg4U3RyaW5nKGU9ITEpe3JldHVybmAjYCt0aGlzLnRvSGV4OChlKX10b0hleFNob3J0U3RyaW5nKGU9ITEpe3JldHVybiB0aGlzLmE9PT0xP3RoaXMudG9IZXhTdHJpbmcoZSk6dGhpcy50b0hleDhTdHJpbmcoZSl9dG9SZ2IoKXtyZXR1cm57cjpNYXRoLnJvdW5kKHRoaXMuciksZzpNYXRoLnJvdW5kKHRoaXMuZyksYjpNYXRoLnJvdW5kKHRoaXMuYiksYTp0aGlzLmF9fXRvUmdiU3RyaW5nKCl7bGV0IGU9TWF0aC5yb3VuZCh0aGlzLnIpLHQ9TWF0aC5yb3VuZCh0aGlzLmcpLG49TWF0aC5yb3VuZCh0aGlzLmIpO3JldHVybiB0aGlzLmE9PT0xP2ByZ2IoJHtlfSwgJHt0fSwgJHtufSlgOmByZ2JhKCR7ZX0sICR7dH0sICR7bn0sICR7dGhpcy5yb3VuZEF9KWB9dG9QZXJjZW50YWdlUmdiKCl7bGV0IGU9ZT0+YCR7TWF0aC5yb3VuZChaKGUsMjU1KSoxMDApfSVgO3JldHVybntyOmUodGhpcy5yKSxnOmUodGhpcy5nKSxiOmUodGhpcy5iKSxhOnRoaXMuYX19dG9QZXJjZW50YWdlUmdiU3RyaW5nKCl7bGV0IGU9ZT0+TWF0aC5yb3VuZChaKGUsMjU1KSoxMDApO3JldHVybiB0aGlzLmE9PT0xP2ByZ2IoJHtlKHRoaXMucil9JSwgJHtlKHRoaXMuZyl9JSwgJHtlKHRoaXMuYil9JSlgOmByZ2JhKCR7ZSh0aGlzLnIpfSUsICR7ZSh0aGlzLmcpfSUsICR7ZSh0aGlzLmIpfSUsICR7dGhpcy5yb3VuZEF9KWB9dG9DbXlrKCl7cmV0dXJuey4uLnh2KHRoaXMucix0aGlzLmcsdGhpcy5iKX19dG9DbXlrU3RyaW5nKCl7bGV0e2M6ZSxtOnQseTpuLGs6cn09eHYodGhpcy5yLHRoaXMuZyx0aGlzLmIpO3JldHVybmBjbXlrKCR7ZX0sICR7dH0sICR7bn0sICR7cn0pYH10b05hbWUoKXtpZih0aGlzLmE9PT0wKXJldHVybmB0cmFuc3BhcmVudGA7aWYodGhpcy5hPDEpcmV0dXJuITE7bGV0IGU9YCNgK3Z2KHRoaXMucix0aGlzLmcsdGhpcy5iLCExKTtmb3IobGV0W3Qsbl1vZiBPYmplY3QuZW50cmllcyhFdikpaWYoZT09PW4pcmV0dXJuIHQ7cmV0dXJuITF9dG9TdHJpbmcoZSl7bGV0IHQ9ISFlO2U/Pz10aGlzLmZvcm1hdDtsZXQgbj0hMSxyPXRoaXMuYTwxJiZ0aGlzLmE+PTA7cmV0dXJuIXQmJnImJihlLnN0YXJ0c1dpdGgoYGhleGApfHxlPT09YG5hbWVgKT9lPT09YG5hbWVgJiZ0aGlzLmE9PT0wP3RoaXMudG9OYW1lKCk6dGhpcy50b1JnYlN0cmluZygpOihlPT09YHJnYmAmJihuPXRoaXMudG9SZ2JTdHJpbmcoKSksZT09PWBwcmdiYCYmKG49dGhpcy50b1BlcmNlbnRhZ2VSZ2JTdHJpbmcoKSksKGU9PT1gaGV4YHx8ZT09PWBoZXg2YCkmJihuPXRoaXMudG9IZXhTdHJpbmcoKSksZT09PWBoZXgzYCYmKG49dGhpcy50b0hleFN0cmluZyghMCkpLGU9PT1gaGV4NGAmJihuPXRoaXMudG9IZXg4U3RyaW5nKCEwKSksZT09PWBoZXg4YCYmKG49dGhpcy50b0hleDhTdHJpbmcoKSksZT09PWBuYW1lYCYmKG49dGhpcy50b05hbWUoKSksZT09PWBoc2xgJiYobj10aGlzLnRvSHNsU3RyaW5nKCkpLGU9PT1gaHN2YCYmKG49dGhpcy50b0hzdlN0cmluZygpKSxlPT09YGNteWtgJiYobj10aGlzLnRvQ215a1N0cmluZygpKSxufHx0aGlzLnRvSGV4U3RyaW5nKCkpfXRvTnVtYmVyKCl7cmV0dXJuKE1hdGgucm91bmQodGhpcy5yKTw8MTYpKyhNYXRoLnJvdW5kKHRoaXMuZyk8PDgpK01hdGgucm91bmQodGhpcy5iKX1jbG9uZSgpe3JldHVybiBuZXcgZSh0aGlzLnRvU3RyaW5nKCkpfWxpZ2h0ZW4odD0xMCl7bGV0IG49dGhpcy50b0hzbCgpO3JldHVybiBuLmwrPXQvMTAwLG4ubD1vdihuLmwpLG5ldyBlKG4pfWJyaWdodGVuKHQ9MTApe2xldCBuPXRoaXMudG9SZ2IoKTtyZXR1cm4gbi5yPU1hdGgubWF4KDAsTWF0aC5taW4oMjU1LG4uci1NYXRoLnJvdW5kKDI1NSotKHQvMTAwKSkpKSxuLmc9TWF0aC5tYXgoMCxNYXRoLm1pbigyNTUsbi5nLU1hdGgucm91bmQoMjU1Ki0odC8xMDApKSkpLG4uYj1NYXRoLm1heCgwLE1hdGgubWluKDI1NSxuLmItTWF0aC5yb3VuZCgyNTUqLSh0LzEwMCkpKSksbmV3IGUobil9ZGFya2VuKHQ9MTApe2xldCBuPXRoaXMudG9Ic2woKTtyZXR1cm4gbi5sLT10LzEwMCxuLmw9b3Yobi5sKSxuZXcgZShuKX10aW50KGU9MTApe3JldHVybiB0aGlzLm1peChgd2hpdGVgLGUpfXNoYWRlKGU9MTApe3JldHVybiB0aGlzLm1peChgYmxhY2tgLGUpfWRlc2F0dXJhdGUodD0xMCl7bGV0IG49dGhpcy50b0hzbCgpO3JldHVybiBuLnMtPXQvMTAwLG4ucz1vdihuLnMpLG5ldyBlKG4pfXNhdHVyYXRlKHQ9MTApe2xldCBuPXRoaXMudG9Ic2woKTtyZXR1cm4gbi5zKz10LzEwMCxuLnM9b3Yobi5zKSxuZXcgZShuKX1ncmV5c2NhbGUoKXtyZXR1cm4gdGhpcy5kZXNhdHVyYXRlKDEwMCl9c3Bpbih0KXtsZXQgbj10aGlzLnRvSHNsKCkscj0obi5oK3QpJTM2MDtyZXR1cm4gbi5oPXI8MD8zNjArcjpyLG5ldyBlKG4pfW1peCh0LG49NTApe2xldCByPXRoaXMudG9SZ2IoKSxpPW5ldyBlKHQpLnRvUmdiKCksYT1uLzEwMDtyZXR1cm4gbmV3IGUoe3I6KGkuci1yLnIpKmErci5yLGc6KGkuZy1yLmcpKmErci5nLGI6KGkuYi1yLmIpKmErci5iLGE6KGkuYS1yLmEpKmErci5hfSl9YW5hbG9nb3VzKHQ9NixuPTMwKXtsZXQgcj10aGlzLnRvSHNsKCksaT0zNjAvbixhPVt0aGlzXTtmb3Ioci5oPShyLmgtKGkqdD4+MSkrNzIwKSUzNjA7LS10OylyLmg9KHIuaCtpKSUzNjAsYS5wdXNoKG5ldyBlKHIpKTtyZXR1cm4gYX1jb21wbGVtZW50KCl7bGV0IHQ9dGhpcy50b0hzbCgpO3JldHVybiB0Lmg9KHQuaCsxODApJTM2MCxuZXcgZSh0KX1tb25vY2hyb21hdGljKHQ9Nil7bGV0IG49dGhpcy50b0hzdigpLHtoOnJ9PW4se3M6aX09bix7djphfT1uLG89W10scz0xL3Q7Zm9yKDt0LS07KW8ucHVzaChuZXcgZSh7aDpyLHM6aSx2OmF9KSksYT0oYStzKSUxO3JldHVybiBvfXNwbGl0Y29tcGxlbWVudCgpe2xldCB0PXRoaXMudG9Ic2woKSx7aDpufT10O3JldHVyblt0aGlzLG5ldyBlKHtoOihuKzcyKSUzNjAsczp0LnMsbDp0Lmx9KSxuZXcgZSh7aDoobisyMTYpJTM2MCxzOnQucyxsOnQubH0pXX1vbkJhY2tncm91bmQodCl7bGV0IG49dGhpcy50b1JnYigpLHI9bmV3IGUodCkudG9SZ2IoKSxpPW4uYStyLmEqKDEtbi5hKTtyZXR1cm4gbmV3IGUoe3I6KG4ucipuLmErci5yKnIuYSooMS1uLmEpKS9pLGc6KG4uZypuLmErci5nKnIuYSooMS1uLmEpKS9pLGI6KG4uYipuLmErci5iKnIuYSooMS1uLmEpKS9pLGE6aX0pfXRyaWFkKCl7cmV0dXJuIHRoaXMucG9seWFkKDMpfXRldHJhZCgpe3JldHVybiB0aGlzLnBvbHlhZCg0KX1wb2x5YWQodCl7bGV0IG49dGhpcy50b0hzbCgpLHtoOnJ9PW4saT1bdGhpc10sYT0zNjAvdDtmb3IobGV0IG89MTtvPHQ7bysrKWkucHVzaChuZXcgZSh7aDoocitvKmEpJTM2MCxzOm4ucyxsOm4ubH0pKTtyZXR1cm4gaX1lcXVhbHModCl7bGV0IG49bmV3IGUodCk7cmV0dXJuIHRoaXMuZm9ybWF0PT09YGNteWtgfHxuLmZvcm1hdD09PWBjbXlrYD90aGlzLnRvQ215a1N0cmluZygpPT09bi50b0NteWtTdHJpbmcoKTp0aGlzLnRvUmdiU3RyaW5nKCk9PT1uLnRvUmdiU3RyaW5nKCl9fTtmdW5jdGlvbiBGdihlLHQpe2xldCBuPW5ldyBQdihlKSxyPW5ldyBQdih0KTtyZXR1cm4oTWF0aC5tYXgobi5nZXRMdW1pbmFuY2UoKSxyLmdldEx1bWluYW5jZSgpKSsuMDUpLyhNYXRoLm1pbihuLmdldEx1bWluYW5jZSgpLHIuZ2V0THVtaW5hbmNlKCkpKy4wNSl9dmFyIEl2PS4yOTksTHY9LjU4NyxSdj0uMTE0LHp2PTE4MCxCdj0tMjAsVnY9LS4yNSxIdj0uMixVdj0tNSxXdj0uMDMsR3Y9LjUsS3Y9NSxxdj0oZSx0KT0+bmV3IFB2KGUpLmRhcmtlbih0KS50b0hleFN0cmluZygpLEp2PWU9PntsZXQgdD1uZXcgUHYoZSkudG9SZ2IoKTtyZXR1cm5gJHt0LnJ9LCAke3QuZ30sICR7dC5ifWB9LFl2PWU9Pi9eI1swLTlBLUZdezZ9JC9pLnRlc3QoZSksWHY9ZT0+e2xldHtyOnQsZzpuLGI6cn09bmV3IFB2KGUpLnRvUmdiKCk7cmV0dXJuIE1hdGguc3FydCh0KnQqSXYrbipuKkx2K3IqcipSdik+enZ9LFp2PWU9PntsZXQgdD1uZXcgUHYoZSkse3M6bixsOnJ9PXQudG9Ic2woKTtyZXR1cm4gdC5zcGluKEJ2KS5kZXNhdHVyYXRlKG4qVnYpLmxpZ2h0ZW4ocipIdikudG9IZXhTdHJpbmcoKX0sUXY9KGUsdD1Hdik9PntsZXQgbj1uZXcgUHYoZSkse3M6cixsOml9PW4udG9Ic2woKTtyZXR1cm4gbi5zcGluKFV2KS5zYXR1cmF0ZShyKld2KS5kYXJrZW4oaSp0KS50b0hleFN0cmluZygpfSwkdj1lPT57bGV0e2NvbG9yOnQsY29sb3IyOm4sY29sb3JHcmFkaWVudDpyfT1lO3JldHVybiByP24/e2Zyb206dCx0bzpufTpYdih0KT97ZnJvbTp0LHRvOlF2KHQpfTp7ZnJvbTpadih0KSx0bzp0fTp7ZnJvbTp0LHRvOnR9fSxleT1lPT5YdihlKT9hdi5zbGF0ZTkwMDphdi53aGl0ZSx0eT1lPT5YdihlKT8uMTouMixueT1lPT57aWYoWHYoZSkpe2xldCB0PW5ldyBQdihlKS5nZXRMdW1pbmFuY2UoKTtyZXR1cm4gdD4uOD9xdihlLCgxMCp0KSoqdCk6ZX1yZXR1cm4gZX0scnk9KGUsdCk9PntsZXQgbj10Py5iYWNrZ3JvdW5kQ29sb3I/P2Uscj0wLGk9bmV3IFB2KGUpLGE9RnYobixpKSxvPXQ/LmZvcmNlTGlnaHRCZz8/bmV3IFB2KG4pLmlzTGlnaHQoKTtmb3IoO2E8My43NSYmcjwyMDspaT1vP2kuZGFya2VuKDUpOmkubGlnaHRlbig1KSxhPUZ2KG4saSkscisrO3JldHVybiBpLnRvSGV4U3RyaW5nKCl9LGl5PShlLHQpPT57bGV0IG49cnkoZSx7YmFja2dyb3VuZENvbG9yOmF2LndoaXRlfSkscj1yeShlKSxpPW5ldyBQdihlKS5pc0xpZ2h0KCksYT1uZXcgUHYodCkuaXNMaWdodCgpO3JldHVybiBpJiZhP3I9cnkodCk6IWkmJiFhP3I9cnkoZSk6aSYmIWE/cj1yeSh0LHtmb3JjZUxpZ2h0Qmc6ITB9KTohaSYmYSYmKHI9cnkoZSx7Zm9yY2VMaWdodEJnOiExfSkpLHtwcmltYXJ5Om4sc2Vjb25kYXJ5OnJ9fSxRPShlLHQsbik9PntlLmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSh0LG4pfSxheT0oZSx0KT0+e2xldHtjb2xvcjpufT10LHI9JHYodCksaT1yLmZyb209PT1gI2ZmZmZmZmAmJnIuZnJvbT09PXIudG8/e2Zyb206YXYuc2xhdGUzMDAsdG86YXYuc2xhdGUzMDB9OnIsYT1leShuKTtRKGUsYC0tY29sb3ItcHJpbWFyeWAsbiksUShlLGAtLWNvbG9yLXByaW1hcnktY29udGVudGAsYSksUShlLGAtLWNvbG9yLXByaW1hcnktY29udGVudC1yZ2JgLEp2KGEpKSxRKGUsYC0tY29sb3ItcHJpbWFyeS1ncmFkaWVudC1mcm9tYCxyLmZyb20pLFEoZSxgLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LXRvYCxyLnRvKSxRKGUsYC0tY29sb3ItcHJpbWFyeS1ncmFkaWVudC1idXR0b24tZnJvbWAsaS5mcm9tKSxRKGUsYC0tY29sb3ItcHJpbWFyeS1ncmFkaWVudC1idXR0b24tdG9gLGkudG8pLFEoZSxgLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LWhvdmVyLWZyb21gLHF2KHIuZnJvbSxLdikpLFEoZSxgLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LWhvdmVyLXRvYCxxdihyLnRvLEt2KSk7bGV0IG89bnkobik7UShlLGAtLWNvbG9yLXByaW1hcnktYnV0dG9uYCxvKSxRKGUsYC0tY29sb3ItcHJpbWFyeS1idXR0b24taG92ZXJgLHF2KG8sMTApKSxRKGUsYC0tY29sb3ItcHJpbWFyeS1idXR0b24tY29udGVudGAsYSksUShlLGAtLW9wYWNpdHktcHJpbWFyeS1jb250ZW50YCxTdHJpbmcodHkobikpKTtsZXQgcz1peShyLmZyb20sci50byk7UShlLGAtLWNvbG9yLXByaW1hcnktZm9jdXNgLHMucHJpbWFyeSksUShlLGAtLWNvbG9yLXNlY29uZGFyeS1mb2N1c2Ascy5zZWNvbmRhcnkpfSxveT0oKCk9PntsZXR7c3Vic2NyaWJlOmUsc2V0OnR9PU8oe2NvbG9yOmF2LnNtYXJ0c3VwcEJsdWUsY29sb3IyOm51bGwsY29sb3JHcmFkaWVudDohMH0pO3JldHVybntzdWJzY3JpYmU6ZSxzZXRUaGVtZUNvbG9yOmU9PntsZXR7Y29sb3I6bixjb2xvcjI6cixjb2xvckdyYWRpZW50Oml9PWU7aWYoIVl2KG4pKXtIKGBQcm92aWRlZCBjb2xvciAnJHtufScgaXMgbm90IHZhbGlkLiBEZWZhdWx0IGNvbG9yIHdpbGwgYmUgdXNlZCBpbnN0ZWFkLmApO3JldHVybn1lbHNlIGlmKGkmJnImJiFZdihyKSl7SChgUHJvdmlkZWQgY29sb3IgJyR7cn0nIGlzIG5vdCB2YWxpZC4gRGVmYXVsdCBjb2xvciB3aWxsIGJlIHVzZWQgaW5zdGVhZC5gKTtyZXR1cm59dCh7Y29sb3I6bixjb2xvcjI6cixjb2xvckdyYWRpZW50Oml9KX19fSkoKSxzeT0yNCxjeT0xMixseT03Mix1eT0zODAsZHk9NjcyLGZ5PTU2MCxweT04NDAsbXk9ZT0+YCR7ZX1weGAsaHk9ZT0+e2lmKGUpcmV0dXJuIEx1KGUpP3BhcnNlSW50KGUsMTApOmV9LGd5PShlLHQpPT57bGV0e3dpZGdldEJsb2NraW5nT3B0aW9uczpufT1WLmdldE9wdGlvbnMoKTtyZXR1cm4gZXx8bj8uaGVhZGxlc3NNb2RlP3t3aWR0aDpgMTAwJWAsaGVpZ2h0OmAxMDAlYH06dD97d2lkdGg6ZnksaGVpZ2h0OnB5fTp7d2lkdGg6dXksaGVpZ2h0OmR5fX0sX3k9ZT0+e2xldHt3aWRnZXRCbG9ja2luZ09wdGlvbnM6dH09Vi5nZXRPcHRpb25zKCk7ZS5zdHlsZS5ib3JkZXJSYWRpdXM9bXkoMjApLHQ/LmhlYWRsZXNzTW9kZT9lLnN0eWxlLmJveFNoYWRvdz1gbm9uZWA6dD8ubGltaXRTaGFkb3c/ZS5zdHlsZS5ib3hTaGFkb3c9YHJnYmEoMCwgMCwgMCwgMC4yNSkgMHB4IDVweCAxMnB4YDplLnN0eWxlLmJveFNoYWRvdz1gcmdiYSgwLCAwLCAwLCAwLjE2KSAwcHggNXB4IDQwcHhgfSx2eT0oKT0+e2xldHtvZmZzZXRZOmV9PVYuZ2V0T3B0aW9ucygpO3JldHVybiBoeShlKT8/c3l9LHl5PSgpPT57bGV0e29mZnNldFg6ZX09Vi5nZXRPcHRpb25zKCk7cmV0dXJuIGh5KGUpPz9jeX0sYnk9ZT0+e2xldHt3aWRnZXRCbG9ja2luZ09wdGlvbnM6dH09Vi5nZXRPcHRpb25zKCk7cmV0dXJuIGV8fHQ/LmhlYWRsZXNzTW9kZT8wOnN5fSx4eT1lPT57bGV0e3dpZGdldEJsb2NraW5nT3B0aW9uczp0fT1WLmdldE9wdGlvbnMoKTtyZXR1cm4gZXx8dD8uaGVhZGxlc3NNb2RlPzA6Y3l9LFN5PSgpPT57bGV0e3Bvc2l0aW9uOmV9PVYuZ2V0T3B0aW9ucygpO3JldHVybiBlPT09YGZpeGVkYH0sQ3k9ZT0+e1N5KCkmJihlLnN0eWxlLnBvc2l0aW9uPWBmaXhlZGApfSx3eT0oZSx0KT0+e1N5KCkmJihlLnN0eWxlLmJvdHRvbT1teSh0KSl9LFR5PShlLHQpPT57aWYoU3koKSl7bGV0e29yaWVudGF0aW9uOm59PVYuZ2V0T3B0aW9ucygpO249PT1gcmlnaHRgPyhlLnN0eWxlLmxlZnQ9YGluaXRpYWxgLGUuc3R5bGUucmlnaHQ9bXkodCkpOihlLnN0eWxlLmxlZnQ9bXkodCksZS5zdHlsZS5yaWdodD1gaW5pdGlhbGApfX0sRXk9ZT0+e2xldHt6SW5kZXg6dH09Vi5nZXRPcHRpb25zKCk7ZS5zdHlsZS56SW5kZXg9U3RyaW5nKHQ/P2BhdXRvYCl9LER5PWU9PntsZXQgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGBpZnJhbWVgKTtyZXR1cm4gdC5zdHlsZS5wb3NpdGlvbj1gYWJzb2x1dGVgLHQuc3R5bGUud2lkdGg9YDEwMCVgLHQuc3R5bGUuaGVpZ2h0PWAxMDAlYCx0LnN0eWxlLmJvcmRlcj1gbm9uZWAsdC5zdHlsZS5kaXNwbGF5PWBibG9ja2AsdC5zdHlsZS50ZXh0QWxpZ249YGxlZnRgLHQuc3R5bGUubWFyZ2luPWAwYCx0LnN0eWxlLnBhZGRpbmc9YDBgLHQuc3R5bGUudG9wPWAwYCx0LnN0eWxlLmxlZnQ9YDBgLHQuc3R5bGUub3BhY2l0eT1gMWAsZSYmZSh0KSx0LmdldEF0dHJpYnV0ZShgc3R5bGVgKT8/YGB9LE95PWU9PntDeShlKSx3eShlLHZ5KCkpLFR5KGUseXkoKSksRXkoZSl9LGt5PShlLHQpPT57Q3koZSksd3koZSxieSh0KSksVHkoZSx4eSh0KSksRXkoZSksdHx8X3koZSl9LEF5PWU9PntDeShlKSx3eShlLHZ5KCkrbHkpLFR5KGUseXkoKSksRXkoZSl9LGp5PWU9PntlLnN0eWxlLnBvc2l0aW9uPWBmaXhlZGAsZS5zdHlsZS53aWR0aD1gMTAwJWAsZS5zdHlsZS5oZWlnaHQ9YDEwMCVgLHd5KGUsMCksVHkoZSwwKSxFeShlKX0sTXk9ZT0+e095KGUpfSxOeT0oZSx0KT0+e2t5KGUsdCl9LFB5PWU9PntBeShlKX0sRnk9ZT0+e0F5KGUpfSxJeT1lPT57ankoZSl9LEx5PU8oMzAwKSxSeT1PKDE2Niksenk9TyghMSksQnk9Tyh2b2lkIDApLFZ5PWsoW3NzLEJ5XSwoW2UsdF0pPT57bGV0e2J1dHRvblN0eWxlOm59PVYuZ2V0T3B0aW9ucygpO3JldHVybiB0P3Q9PT1gYnViYmxlYDplfHxuPT09YGJ1YmJsZWB9KSxIeT1rKFtWeSxMeV0sKFtlLHRdKT0+ZT81Njp0KSxVeT1PKHZvaWQgMCksV3k9ayhbY3MsVXldLChbZSx0XSk9PmU/ITA6KHQ/P1YuZ2V0T3B0aW9ucygpLmhlYWRlclN0eWxlKT09PWBjb21wYWN0YCksR3k9ayhbV3ldLChbZV0pPT5lPzc2OjExNCksS3k9TygpLHF5PWsoW0t5XSwoW2VdKT0+ZT09PXZvaWQgMD96byhVLklzTWVzc2VuZ2VyRnJhbWVFeHBhbmRlZCk9PT1gdHJ1ZWA6ZSksSnk9ZT0+e0JvKHtuYW1lOlUuSXNNZXNzZW5nZXJGcmFtZUV4cGFuZGVkLHZhbHVlOmUudG9TdHJpbmcoKX0pLEt5LnNldChlKX0sJD1mdW5jdGlvbihlKXtyZXR1cm4gZS5OYW1lPWBuYW1lYCxlLkdyb3VwPWBncm91cGAsZS5FbWFpbD1gZW1haWxgLGUuUGhvbmU9YHBob25lYCxlLlZhcmlhYmxlcz1gdmFyaWFibGVzYCxlLkNvbnRhY3REYXRhPWBjb250YWN0RGF0YWAsZS5MYW5ndWFnZT1gbGFuZ3VhZ2VgLGUuQ2hhdENsb3NlPWBjaGF0OmNsb3NlYCxlLkNoYXRPcGVuPWBjaGF0Om9wZW5gLGUuQ2hhdFNob3c9YGNoYXQ6c2hvd2AsZS5DaGF0SGlkZT1gY2hhdDpoaWRlYCxlLlRoZW1lQ29sb3I9YHRoZW1lOmNvbG9yYCxlLkNoYXRNZXNzYWdlPWBjaGF0Om1lc3NhZ2VgLGUuQ2hhdFNlbmQ9YGNoYXQ6c2VuZGAsZS5IdG1sQXBwbHk9YGh0bWw6YXBwbHlgLGUuT249YG9uYCxlLkFuYWx5dGljc0NvbnNlbnQ9YGFuYWx5dGljc0NvbnNlbnRgLGUuTWFya2V0aW5nQ29uc2VudD1gbWFya2V0aW5nQ29uc2VudGAsZS5PcGVuUmF0ZUZvcm09YG9wZW5SYXRlRm9ybWAsZS5PcGVuQXV0aEZvcm09YG9wZW5BdXRoRm9ybWAsZS5XaWRnZXRTdGF0dXM9YHdpZGdldFN0YXR1c2AsZS5UcmFuc2xhdGlvbnM9YHRyYW5zbGF0aW9uc2AsZS5BdXRoRm9ybUZpZWxkcz1gYXV0aEZvcm1GaWVsZHNgLGUuQnV0dG9uU3R5bGU9YGJ1dHRvblN0eWxlYCxlLkhlYWRlclN0eWxlPWBoZWFkZXJTdHlsZWAsZS5QcmV2aWV3VHJhbnNsYXRlPWBwcmV2aWV3VHJhbnNsYXRlYCxlLkRpc2FibGVDb25uZWN0aW9uU3RhdHVzPWBkaXNhYmxlQ29ubmVjdGlvblN0YXR1c2AsZS5SZWxvYWRXaXRoTW9ja0RhdGE9YHJlbG9hZFdpdGhNb2NrRGF0YWAsZS5SZWxvYWQ9YHJlbG9hZGAsZS5Cb3RJZGVudGl0eVVwZGF0ZT1gYm90SWRlbnRpdHk6dXBkYXRlYCxlfSh7fSksWXk9ZnVuY3Rpb24oZSl7cmV0dXJuIGUuTWVzc2FnZVNlbnQ9YG1lc3NhZ2Vfc2VudGAsZS5NZXNzYWdlUmVjZWl2ZWQ9YG1lc3NhZ2VfcmVjZWl2ZWRgLGUuTWVzc2VuZ2VyQ2xvc2U9YG1lc3Nlbmdlcl9jbG9zZWAsZS5XaWRnZXRJbml0PWB3aWRnZXRfaW5pdGAsZX0oe30pLFh5PWU9Pnt6Lm9uKGBtZXNzYWdlU2VudGAsZSl9LFp5PWU9Pnt6Lm9uKGBtZXNzYWdlUmVjZWl2ZWRgLGUpfSxReT1lPT57ei5vbihgbWVzc2VuZ2VyQ2xvc2VgLGUpfSwkeT1lPT57ei5vbihgd2lkZ2V0SW5pdGAsZSl9LGViPXtbWXkuTWVzc2FnZVNlbnRdOlh5LFtZeS5NZXNzYWdlUmVjZWl2ZWRdOlp5LFtZeS5NZXNzZW5nZXJDbG9zZV06UXksW1l5LldpZGdldEluaXRdOiR5fSx0Yj0oZSx0KT0+e2xldCBuPWViW2VdO24mJm4odCl9LG5iPWBodHRwczovL2RvY3Muc21hcnRzdXBwLmNvbS9jaGF0LWJveC9gLHJiPWAke25ifWxvY2FsaXphdGlvbi8jc3VwcG9ydGVkLWxhbmd1YWdlc2AsaWI9YCR7bmJ9dmlzaXRvci1pZGVudGlmaWNhdGlvbi8jY3VzdG9tLXZpc2l0b3ItZGF0YWAsYWI9YCR7bmJ9dmlzaXRvci1pZGVudGlmaWNhdGlvbi8jY3VzdG9tLWNvbnRhY3QtZGF0YWAsb2I9YCR7bmJ9amF2YXNjcmlwdC1hcGkvZXZlbnRzL2Asc2I9YGh0dHBzOi8vd3d3LnNtYXJ0c3VwcC5jb20vaGVscC9jb29raWUtY29uc2VudC8jd2hlcmUtdG8tZW5hYmxlLWNvb2tpZS1jb25zZW50LWluLXNtYXJ0c3VwcGAsY2I9YGh0dHBzOi8vd3d3LnNtYXJ0c3VwcC5jb20vcHJpY2luZ2AsbGI9Tyh7fSksdWI9KGUsdCk9PntsYi51cGRhdGUobj0+KHsuLi5uLFtlXTp0fSkpfSxkYj1lPT5PYmplY3QudmFsdWVzKCQpLnNvbWUodD0+dD09PWUpLGZiPShlLHQpPT5MdSh0KT8hMDooSChgUGFyYW1ldGVyIG9mICcke2V9JyBBUEkgY29tbWFuZCBtdXN0IGJlIHR5cGUgc3RyaW5nLiBTZWUgJHtuYn0gZm9yIG1vcmUgaW5mb3JtYXRpb24uYCksITEpLHBiPShlLHQpPT5QdSh0KT8hMDooSChgUGFyYW1ldGVyIG9mICcke2V9JyBBUEkgY29tbWFuZCBtdXN0IGJlIHR5cGUgYm9vbGVhbi4gU2VlICR7bmJ9IGZvciBtb3JlIGluZm9ybWF0aW9uLmApLCExKSxtYj0oZSx0KT0+dHlwZW9mIHQ9PWBmdW5jdGlvbmA/ITA6KEgoYFBhcmFtZXRlciBvZiAnJHtlfScgQVBJIGNvbW1hbmQgbXVzdCBiZSB0eXBlIGZ1bmN0aW9uLiBTZWUgJHtuYn0gZm9yIG1vcmUgaW5mb3JtYXRpb24uYCksITEpLGhiPShlLHQpPT5JdSh0KT8hMDooSChgUGFyYW1ldGVyIG9mICcke2V9JyBBUEkgY29tbWFuZCBtdXN0IGJlIHR5cGUgb2JqZWN0LiBTZWUgJHtpYn0gZm9yIG1vcmUgaW5mb3JtYXRpb24uYCksITEpLGdiPShlLHQpPT5JdSh0KT8hMDooSChgUGFyYW1ldGVyIG9mICcke2V9JyBBUEkgY29tbWFuZCBtdXN0IGJlIHR5cGUgb2JqZWN0LiBTZWUgJHthYn0gZm9yIG1vcmUgaW5mb3JtYXRpb24uYCksITEpLF9iPShlLHQpPT5JdSh0KT8hMDooSChgUGFyYW1ldGVyIG9mICcke2V9JyBBUEkgY29tbWFuZCBtdXN0IGJlIHR5cGUgb2JqZWN0LmApLCExKSx2Yj0oZSx0KT0+IUl1KHQpfHwhKGBpZGBpbiB0KXx8IUx1KHQuaWQpPyhIKGBQYXJhbWV0ZXIgb2YgJyR7ZX0nIEFQSSBjb21tYW5kIG11c3QgYmUgdHlwZSBvYmplY3QgYW5kIGhhcyBhIHZhbGlkICdpZCcgcHJvcGVydHkuYCksITEpOmBuYW1lYGluIHQmJiFMdSh0Lm5hbWUpPyhIKGBQYXJhbWV0ZXIgb2YgJyR7ZX0nIEFQSSBjb21tYW5kIG11c3QgaGF2ZSBhIHZhbGlkICduYW1lJyBwcm9wZXJ0eS5gKSwhMSk6YGF2YXRhclVybGBpbiB0JiYhTHUodC5hdmF0YXJVcmwpPyhIKGBQYXJhbWV0ZXIgb2YgJyR7ZX0nIEFQSSBjb21tYW5kIG11c3QgaGF2ZSBhIHZhbGlkICdhdmF0YXJVcmwnIHByb3BlcnR5LmApLCExKTohMCx5Yj0oZSx0KT0+e2xldCBuPU9iamVjdC52YWx1ZXMoWXkpO3JldHVybiBuLmluY2x1ZGVzKHQpPyEwOihIKGBVbmtub3duIGV2ZW50OiAnJHt0fScuIEF2YWlsYWJsZSBldmVudCBuYW1lcyBhcmU6ICR7bi5qb2luKGAsIGApfS4gU2VlICR7b2J9IGZvciBtb3JlIGluZm9ybWF0aW9uLmApLCExKX0sYmI9ZT0+e0goYFVua25vd24gQVBJIGNvbW1hbmQ6ICcke2V9Jy4gU2VlICR7bmJ9IHRvIGNoZWNrIGF2YWlsYWJsZSBBUEkgY29tbWFuZHMuYCl9LHhiPSgpPT4hIVYuZ2V0T3B0aW9ucygpLmZlYXR1cmVzPy5hcGksU2I9KCk9PiEhVi5nZXRPcHRpb25zKCkuZmVhdHVyZXM/Lmdyb3VwcyxDYj0oKT0+Vi5nZXRPcHRpb25zKCkuaXNQcmV2aWV3TW9kZSx3Yj0oKT0+IXhiKCkmJiFDYigpPyhIKGBDaGF0IGJveCBBUEkgZmVhdHVyZSBpcyBub3QgZW5hYmxlZC4gU2VlICR7Y2J9IHRvIHVwZ3JhZGUgeW91ciBwYWNrYWdlLmApLCExKTohMCxUYj0oKT0+IXhiKCl8fCFTYigpPyhIKGBDaGF0IGJveCBHcm91cHMgZmVhdHVyZSBpcyBub3QgZW5hYmxlZC4gU2VlICR7Y2J9IHRvIHVwZ3JhZGUgeW91ciBwYWNrYWdlLmApLCExKTohMCxFYj0oKT0+e0hvKCl8fEgoYEVuYWJsZSBtYW5hZ2luZyBjb29raWUgY29uc2VudCBpbiB3aWRnZXQgc2V0dGluZ3MgdG8gYWxsb3cgdGhpcyBjb21tYW5kLiBTZWUgJHtzYn0gZm9yIG1vcmUgaW5mb3JtYXRpb24uYCl9LERiPSgpPT57bGV0IGU9KCk9PntVXyghMCksSV8oKX07aWYoIUEoQ18pKXtYbC5wdXNoKGUpO3JldHVybn1lKCl9LE9iPSgpPT57aWYod2IoKSl7aWYoIUEoQ18pKXtYbC5wdXNoKFdfKTtyZXR1cm59V18oKX19LGtiPSgpPT57d2IoKSYmSV8oKX0sQWI9KCk9Pnt3YigpJiZMXygpfSxqYj0oZSx0KT0+e2lmKHdiKCkmJmU9PT0kLkxhbmd1YWdlJiZmYihlLHQpKXtpZighSWwodCkpe0goYFByb3ZpZGVkIGxhbmd1YWdlICcke3R9JyBpcyBub3Qgc3VwcG9ydGVkLiBTZWUgJHtyYn0gdG8gY2hlY2sgc3VwcG9ydGVkIGxhbmd1YWdlcy5gKTtyZXR1cm59aWYoIUEoQ18pKXt1YihgbGFuZ2AsdCk7cmV0dXJufUdsKHQpfX0sTWI9KGUsdCk9PntsZXQgbixyPW51bGwsaT0hMDtpZih3YigpKXtpZih0eXBlb2YgdD09YHN0cmluZ2AmJmZiKGUsdCkpbj10O2Vsc2UgaWYoaGIoZSx0KSl7aWYobj10LmNvbG9yLHI9dC5jb2xvcjIsaT10LmNvbG9yR3JhZGllbnQsIXBiKGUsaSkpcmV0dXJufWVsc2UgcmV0dXJuO2lmKCFZdihuKSl7SChgUHJvdmlkZWQgY29sb3IgJyR7bn0nIGlzIG5vdCB2YWxpZC4gUGxlYXNlIHVzZSBoZXggY29sb3IgY29kZS5gKTtyZXR1cm59ZWxzZSBpZihpJiZyJiYhWXYocikpe0goYFByb3ZpZGVkIGNvbG9yICcke3J9JyBpcyBub3QgdmFsaWQuIERlZmF1bHQgY29sb3Igd2lsbCBiZSB1c2VkIGluc3RlYWQuYCk7cmV0dXJufW95LnNldFRoZW1lQ29sb3Ioe2NvbG9yOm4sY29sb3IyOnIsY29sb3JHcmFkaWVudDppfSl9fSxOYj0oZSx0KT0+e3diKCkmJmZiKGUsdCkmJm9fKHQpfSxQYj0oZSx0KT0+e3diKCkmJmZiKGUsdCkmJihvXyh0KSxkXygpKX0sRmI9KGUsdCxuKT0+e2ZiKGUsdCkmJnliKGUsdCkmJm1iKGUsbikmJnRiKHQsbil9LEliPShlLHQpPT57aGIoZSx0KSYmTXUudXBkYXRlVmlzaXRvclZhcmlhYmxlcyh6dSh0KSl9LExiPShlLHQpPT57ZSE9PSQuTmFtZSYmZSE9PSQuRW1haWwmJmUhPT0kLlBob25lJiZlIT09JC5Hcm91cHx8ZmIoZSx0KSYmTXUudXBkYXRlVmlzaXRvclByb3BlcnR5KGUsdCl9LFJiPShlLHQpPT57aWYoIVRiKCl8fCFmYihlLHQpKXJldHVybjtsZXQgbj1BKGlsKVt0XTtpZihBKENfKSYmIW4pe0goYEdyb3VwIHdpdGgga2V5ICcke3R9JyBkb2VzIG5vdCBleGlzdC4gUGxlYXNlIHByb3ZpZGUgY29ycmVjdCBncm91cCBrZXkgZnJvbSB5b3VyIGdyb3VwIHNldHRpbmdzLmApO3JldHVybn1MYihlLHQpfSx6Yj0oZSx0KT0+e2diKGUsdCkmJk11LnVwZGF0ZVZpc2l0b3JDb250YWN0RGF0YSh0KX0sQmI9KGUsdCk9PntwYihlLHQpJiYoRWIoKSx6LmVtaXQoYGFuYWx5dGljc0NvbnNlbnRDaGFuZ2VkYCwhIXQpKX0sVmI9KGUsdCk9PntwYihlLHQpJiYoRWIoKSx6LmVtaXQoYG1hcmtldGluZ0NvbnNlbnRDaGFuZ2VkYCwhIXQpKX0sSGI9KCk9PntZcChBKEJwKXx8YGApfSxVYj0oKT0+e0JjKEhjLkF1dGhGb3JtKX0sV2I9KGUsdCk9PntmYihlLHQpJiYodCE9PUsuQWNjb3VudFN0YXR1cy5PbmxpbmUmJnQhPT1LLkFjY291bnRTdGF0dXMuT2ZmbGluZXx8JHUuc2V0KHQpKX0sR2I9KGUsdCk9PntoYihlLHQpJiZxbCh0KX0sS2I9KGUsdCk9PntoYihlLHQpJiYoQShWaCl8fFZoLnNldChWLmdldE9wdGlvbnMoKSksVmgudXBkYXRlKGU9Pih7Li4uZSwuLi50fSkpKX0scWI9KGUsdCk9PntmYihlLHQpJiZCeS5zZXQodCl9LEpiPShlLHQpPT57aWYoZT09PSQuSGVhZGVyU3R5bGUmJmZiKGUsdCkpe2lmKHQhPT1gY29tcGFjdGAmJnQhPT1gc3RhbmRhcmRgKXtIKGBQcm92aWRlZCBoZWFkZXIgc3R5bGUgJyR7dH0nIGlzIG5vdCB2YWxpZC4gVXNlICdjb21wYWN0JyBvciAnc3RhbmRhcmQnLmApO3JldHVybn1VeS5zZXQodCl9fSxZYj0oKT0+e2xldCBlPSgpPT57fTtlPUhsLnN1YnNjcmliZSgoKT0+e0EoUnApLmZvckVhY2goZT0+e2xldCB0PWUuY29udGVudD8uZGF0YXx8YGA7dHlwZW9mIHQ9PWBzdHJpbmdgJiZ0Lm1hdGNoKC93aWRnZXRQcmV2aWV3XC4uKi8pJiYoZS5jb250ZW50LnRleHQ9QShXKSh0KSxKLnJlcGxhY2VNZXNzYWdlKGUpKX0pLGUoKX0pfSxYYj0oZSx0KT0+e3BiKGUsdCkmJklnLnNldCh0KX0sWmI9KGUsdCk9PntfYihlLHQpJiZxLnJlbG9hZENsaWVudCh0KX0sUWI9KGUsdCk9PntwYihlLHQpJiZxLnJlbG9hZENsaWVudCh2b2lkIDAsdCl9LCRiPShlLHQpPT57aWYoIXZiKGUsdCkpcmV0dXJuO2xldHtpZDpuLC4uLnJ9PXQ7JGwudXBkYXRlSWRlbnRpdHkobixyKX0sZXg9e3ZlcnNpb246YGUwN2MyMDhhMzhlNmY1MDg0YzhlYjQ2MGI5NThhNDJmNzc4YTU5NjVgLGV4ZWN1dGU6ZT0+e2xldCB0PWVbMF07aWYodHlwZW9mIHQ9PWBmdW5jdGlvbmApe3J4KHQpO3JldHVybn1pZighZGIodCkpe2JiKFN0cmluZyh0KSk7cmV0dXJufW54KHQsZVsxXSwuLi5lLnNsaWNlKDIpKX0sZXhlYzpmdW5jdGlvbiguLi5lKXt0aGlzLmV4ZWN1dGUoZSl9fSx0eD17WyQuQ2hhdE9wZW5dOkRiLFskLkNoYXRDbG9zZV06T2IsWyQuQ2hhdFNob3ddOmtiLFskLkNoYXRIaWRlXTpBYixbJC5DaGF0TWVzc2FnZV06TmIsWyQuQ2hhdFNlbmRdOlBiLFskLkxhbmd1YWdlXTpqYixbJC5UaGVtZUNvbG9yXTpNYixbJC5IZWFkZXJTdHlsZV06SmIsWyQuT25dOkZiLFskLlZhcmlhYmxlc106SWIsWyQuQ29udGFjdERhdGFdOnpiLFskLk5hbWVdOkxiLFskLkdyb3VwXTpSYixbJC5FbWFpbF06TGIsWyQuUGhvbmVdOkxiLFskLkFuYWx5dGljc0NvbnNlbnRdOkJiLFskLk1hcmtldGluZ0NvbnNlbnRdOlZiLFskLkh0bWxBcHBseV06bnVsbCxbJC5PcGVuUmF0ZUZvcm1dOkhiLFskLk9wZW5BdXRoRm9ybV06VWIsWyQuV2lkZ2V0U3RhdHVzXTpXYixbJC5UcmFuc2xhdGlvbnNdOkdiLFskLkF1dGhGb3JtRmllbGRzXTpLYixbJC5CdXR0b25TdHlsZV06cWIsWyQuUHJldmlld1RyYW5zbGF0ZV06WWIsWyQuRGlzYWJsZUNvbm5lY3Rpb25TdGF0dXNdOlhiLFskLlJlbG9hZFdpdGhNb2NrRGF0YV06WmIsWyQuUmVsb2FkXTpRYixbJC5Cb3RJZGVudGl0eVVwZGF0ZV06JGJ9LG54PShlLHQsLi4ubik9PntsZXQgcj10eFtlXTtpZihyPT09dm9pZCAwKXtiYihlKTtyZXR1cm59ciE9PW51bGwmJihyKGUsdCwuLi5uKSx2byhg8J+nmeKAjeKZgu+4j1tBUEldICR7ZX0ke3Q/YDpgOmBgfWAsdD8/YGApKX0scng9ZT0+e0EoQ18pP2UoKTpYbC5wdXNoKGUpfTt0eXBlb2Ygd2luZG93PGB1YCYmKCh3aW5kb3cuX19zdmVsdGU/Pz17fSkudj8/PW5ldyBTZXQpLmFkZChgNWApO3ZhciBpeD1lPT5lO2Z1bmN0aW9uIGF4KGUpe2xldCB0PWUtMTtyZXR1cm4gdCp0KnQrMX1mdW5jdGlvbiBveChlKXtsZXQgdD10eXBlb2YgZT09YHN0cmluZ2AmJmUubWF0Y2goL15ccyooLT9bXGQuXSspKFteXHNdKilccyokLyk7cmV0dXJuIHQ/W3BhcnNlRmxvYXQodFsxXSksdFsyXXx8YHB4YF06W2UsYHB4YF19ZnVuY3Rpb24gc3goZSx7ZGVsYXk6dD0wLGR1cmF0aW9uOm49NDAwLGVhc2luZzpyPWl4fT17fSl7bGV0IGk9K2dldENvbXB1dGVkU3R5bGUoZSkub3BhY2l0eTtyZXR1cm57ZGVsYXk6dCxkdXJhdGlvbjpuLGVhc2luZzpyLGNzczplPT5gb3BhY2l0eTogJHtlKml9YH19ZnVuY3Rpb24gY3goZSx7ZGVsYXk6dD0wLGR1cmF0aW9uOm49NDAwLGVhc2luZzpyPWF4LHg6aT0wLHk6YT0wLG9wYWNpdHk6bz0wfT17fSl7bGV0IHM9Z2V0Q29tcHV0ZWRTdHlsZShlKSxjPStzLm9wYWNpdHksbD1zLnRyYW5zZm9ybT09PWBub25lYD9gYDpzLnRyYW5zZm9ybSx1PWMqKDEtbyksW2QsZl09b3goaSksW3AsbV09b3goYSk7cmV0dXJue2RlbGF5OnQsZHVyYXRpb246bixlYXNpbmc6cixjc3M6KGUsdCk9PmAKCQkJdHJhbnNmb3JtOiAke2x9IHRyYW5zbGF0ZSgkeygxLWUpKmR9JHtmfSwgJHsoMS1lKSpwfSR7bX0pOwoJCQlvcGFjaXR5OiAke2MtdSp0fWB9fWZ1bmN0aW9uIGx4KGUse2RlbGF5OnQ9MCxkdXJhdGlvbjpuPTQwMCxlYXNpbmc6cj1heCxheGlzOmk9YHlgfT17fSl7bGV0IGE9Z2V0Q29tcHV0ZWRTdHlsZShlKSxvPSthLm9wYWNpdHkscz1pPT09YHlgP2BoZWlnaHRgOmB3aWR0aGAsYz1wYXJzZUZsb2F0KGFbc10pLGw9aT09PWB5YD9bYHRvcGAsYGJvdHRvbWBdOltgbGVmdGAsYHJpZ2h0YF0sdT1sLm1hcChlPT5gJHtlWzBdLnRvVXBwZXJDYXNlKCl9JHtlLnNsaWNlKDEpfWApLGQ9cGFyc2VGbG9hdChhW2BwYWRkaW5nJHt1WzBdfWBdKSxmPXBhcnNlRmxvYXQoYVtgcGFkZGluZyR7dVsxXX1gXSkscD1wYXJzZUZsb2F0KGFbYG1hcmdpbiR7dVswXX1gXSksbT1wYXJzZUZsb2F0KGFbYG1hcmdpbiR7dVsxXX1gXSksaD1wYXJzZUZsb2F0KGFbYGJvcmRlciR7dVswXX1XaWR0aGBdKSxnPXBhcnNlRmxvYXQoYVtgYm9yZGVyJHt1WzFdfVdpZHRoYF0pO3JldHVybntkZWxheTp0LGR1cmF0aW9uOm4sZWFzaW5nOnIsY3NzOmU9PmBvdmVyZmxvdzogaGlkZGVuO29wYWNpdHk6ICR7TWF0aC5taW4oZSoyMCwxKSpvfTske3N9OiAke2UqY31weDtwYWRkaW5nLSR7bFswXX06ICR7ZSpkfXB4O3BhZGRpbmctJHtsWzFdfTogJHtlKmZ9cHg7bWFyZ2luLSR7bFswXX06ICR7ZSpwfXB4O21hcmdpbi0ke2xbMV19OiAke2UqbX1weDtib3JkZXItJHtsWzBdfS13aWR0aDogJHtlKmh9cHg7Ym9yZGVyLSR7bFsxXX0td2lkdGg6ICR7ZSpnfXB4O21pbi0ke3N9OiAwYH19ZnVuY3Rpb24gdXgoZSx7ZGVsYXk6dD0wLGR1cmF0aW9uOm49NDAwLGVhc2luZzpyPWF4LHN0YXJ0Omk9MCxvcGFjaXR5OmE9MH09e30pe2xldCBvPWdldENvbXB1dGVkU3R5bGUoZSkscz0rby5vcGFjaXR5LGM9by50cmFuc2Zvcm09PT1gbm9uZWA/YGA6by50cmFuc2Zvcm0sbD0xLWksdT1zKigxLWEpO3JldHVybntkZWxheTp0LGR1cmF0aW9uOm4sZWFzaW5nOnIsY3NzOihlLHQpPT5gCgkJCXRyYW5zZm9ybTogJHtjfSBzY2FsZSgkezEtbCp0fSk7CgkJCW9wYWNpdHk6ICR7cy11KnR9CgkJYH19YXQoKTt2YXIgZHg9d2koYDxkaXY+PC9kaXY+YCk7ZnVuY3Rpb24gZngoZSx0KXtsdCh0LCEwKTtsZXQgbj1vbyh0LGBoZWlnaHRgLDMsMjApLHI9b28odCxgd2lkdGhgLDMsYDEwMCVgKSxpPW9vKHQsYGNvbG9yU2NoZW1lYCwzLGBncmF5YCksYT1vbyh0LGByb3VuZGVkU3R5bGVgLDMsYHJvdW5kZWQtZnVsbGApLG89Zm4oKCk9PmAke2EoKX0gYW5pbWF0ZS1wdWxzZWApO3ZhciBzPWR4KCk7bGV0IGM7cHIoZT0+e2JhKHMsMSxtYShbUihvKSxpKCk9PT1gZ3JheWAmJmBiZy1ncmF5LTIwMGAsaSgpPT09YGRhcmtHcmF5YCYmYGJnLWdyYXktMzAwYF0pKSxjPVNhKHMsYGAsYyxlKX0sWygpPT4oe2hlaWdodDpteShuKCkpLHdpZHRoOkZ1KHIoKSk/bXkocigpKTpyKCl9KV0pLGtpKGUscyksdXQoKX1mdW5jdGlvbiBweChlLHQpe2xldCBuPW9vKHQsYHNpemVgLDMsMjApO2Z4KGUse2NvbG9yU2NoZW1lOmBkYXJrR3JheWAsZ2V0IHdpZHRoKCl7cmV0dXJuIG4oKX0sZ2V0IGhlaWdodCgpe3JldHVybiBuKCl9fSl9dmFyIG14PUVpKGA8c3ZnPjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTE4IDZMNiAxOE02IDZsMTIgMTIiPjwvcGF0aD48L3N2Zz5gKTtmdW5jdGlvbiBoeChlLHQpe2xldCBuPXJvKHQsW2AkJHNsb3RzYCxgJCRldmVudHNgLGAkJGxlZ2FjeWBdKTt2YXIgcj1teCgpO1ZhKHIsKCk9Pih7dmlld0JveDpgMCAwIDI0IDI0YCx3aWR0aDpgMS4yZW1gLGhlaWdodDpgMS4yZW1gLC4uLm59KSksa2koZSxyKX12YXIgZ3g9d2koYDxidXR0b24gdHlwZT0iYnV0dG9uIiB0YWJpbmRleD0iMCI+PGRpdj48IT48L2Rpdj48L2J1dHRvbj5gKTtmdW5jdGlvbiBfeChlLHQpe2x0KHQsITApO2xldCBuPW9vKHQsYGljb25PcmllbnRhdGlvbmAsMyxgcmlnaHRgKSxyPW9vKHQsYGljb25BbmltYXRpb25gLDMsYG5vbmVgKSxpPW9vKHQsYGljb25TY2FsZWAsMywhMSksYT1vbyh0LGBzaXplYCwzLGBtZGApLG89b28odCxgdmFyaWFudGAsMyxgZ2hvc3RgKSxzPW9vKHQsYGZvY3VzYCwzLGBwcmltYXJ5YCksYz1mbigoKT0+bigpPT09YHJpZ2h0YD8xOi0xKSxsPWZuKCgpPT5pKCk/MS40OjEuMiksdT1mbigoKT0+dC5pY29uKSxkPWU9PntlLnN0b3BQcm9wYWdhdGlvbigpLHQub25DbGljayYmdC5vbkNsaWNrKGUpfTt2YXIgZj1neCgpLHA9Vm4oZik7JGkoVm4ocCksKCk9PlIodSksKGUsdCk9Pnt0KGUse3dpZHRoOmAxZW1gLGhlaWdodDpgMWVtYH0pfSksWGUocCksWGUoZikscHIoZT0+e2JhKGYsMSxlLGBzdmVsdGUteXdvZm1sYCksZi5kaXNhYmxlZD10LmRpc2FibGVkLHphKGYsYGRhdGEtdGVzdGlkYCx0LnRlc3RJZCksemEoZixgYXJpYS1sYWJlbGAsdC5pY29uRGVzY3JpcHRpb24pLHphKGYsYGFyaWEtZGlzYWJsZWRgLHQuZGlzYWJsZWQpLGJhKHAsMSxtYShbYHctZnVsbCBoLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXJgLHIoKT09PWBzcGluYCYmYGFuaW1hdGUtc3BpbmBdKSksU2EocCxgdHJhbnNmb3JtOiBzY2FsZSgke1IobCl9KSBzY2FsZVgoJHtSKGMpfSk7YCl9LFsoKT0+bWEoW2BidG4gYnRuLSR7bygpfSBidG4tJHthKCl9YCwhIXQuZGlzYWJsZWQmJmBidG4tZGlzYWJsZWRgLGlzKCk/YGN1cnNvci1hdXRvYDpgY3Vyc29yLXBvaW50ZXJgLHMoKT09PWBwcmltYXJ5YCYmYGJ1dHRvbi1mb2N1c2AscygpPT09YHNlY29uZGFyeWAmJmBidXR0b24tZm9jdXMtc2Vjb25kYXJ5YF0pXSksZ2koYGNsaWNrYCxmLGQpLGtpKGUsZiksdXQoKX1faShbYGNsaWNrYF0pO2V4cG9ydHtkXyBhcyAkLGp0IGFzICRpLFNsIGFzICRuLGFvIGFzICRyLCRmIGFzICR0LCRfIGFzIEEsZ2kgYXMgQWksc2QgYXMgQW4sc3MgYXMgQXIsVGggYXMgQXQsS18gYXMgQixWbiBhcyBCaSxVdSBhcyBCbixqbyBhcyBCcixIcCBhcyBCdCxGeSBhcyBDLElpIGFzIENpLF9kIGFzIENuLGJzIGFzIENyLHpoIGFzIEN0LG95IGFzIEQsRWkgYXMgRGksbmQgYXMgRG4sX3MgYXMgRHIsTWggYXMgRHQsbXkgYXMgRSx3aSBhcyBFaSxlZCBhcyBFbixocyBhcyBFcixGaCBhcyBFdCxKXyBhcyBGLCRyIGFzIEZpLEt1IGFzIEZuLHpvIGFzIEZyLFpwIGFzIEZ0LE9fIGFzIEcsVG4gYXMgR2ksJGwgYXMgR24scG8gYXMgR3IsenAgYXMgR3QsTl8gYXMgSCxVbiBhcyBIaSxMdSBhcyBIbix5byBhcyBIcixNcCBhcyBIdCxYIGFzIEkscHIgYXMgSWksWXUgYXMgSW4sVm8gYXMgSXIsWXAgYXMgSXQsbV8gYXMgSixwbiBhcyBKaSxIbCBhcyBKbix6IGFzIEpyLFJwIGFzIEp0LGdfIGFzIEssQ24gYXMgS2ksWWwgYXMgS24sQiBhcyBLcixKIGFzIEt0LEdfIGFzIEwsb3IgYXMgTGkscXUgYXMgTG4sQm8gYXMgTHIsWHAgYXMgTHQscnYgYXMgTSxwaSBhcyBNaSxpZCBhcyBNbixhcyBhcyBNcixFaCBhcyBNdCxZXyBhcyBOLFIgYXMgTmksWnUgYXMgTm4saXMgYXMgTnIsaWggYXMgTnQsYXkgYXMgTyxEaSBhcyBPaSxsZCBhcyBPbixscyBhcyBPcixraCBhcyBPdCxXXyBhcyBQLFhyIGFzIFBpLEd1IGFzIFBuLEpvIGFzIFByLGFtIGFzIFB0LGlfIGFzIFEsUHQgYXMgUWksd2wgYXMgUW4scm8gYXMgUXIsT3AgYXMgUXQsVV8gYXMgUixjciBhcyBSaSxXdSBhcyBSbixVIGFzIFJyLFdwIGFzIFJ0LFB5IGFzIFMsamkgYXMgU2ksZ2QgYXMgU24seXMgYXMgU3IsYWcgYXMgU3QsZ3kgYXMgVCxPaSBhcyBUaSx1ZCBhcyBUbixmcyBhcyBUcixJaCBhcyBUdCxqXyBhcyBVLGpuIGFzIFVpLE11IGFzIFVuLFYgYXMgVXIsQnAgYXMgVXQsTV8gYXMgVixIbiBhcyBWaSxWdSBhcyBWbixIIGFzIFZyLFZwIGFzIFZ0LERfIGFzIFcsd24gYXMgV2kscSBhcyBXbix2byBhcyBXcixGcCBhcyBXdCxzXyBhcyBYLE10IGFzIFhpLFJsIGFzIFhuLHNvIGFzIFhyLElwIGFzIFh0LHBfIGFzIFksZm4gYXMgWWksVyBhcyBZbixjbyBhcyBZcixQcCBhcyBZdCxhXyBhcyBaLEF0IGFzIFppLENsIGFzIFpuLG9vIGFzIFpyLGtwIGFzIFp0LFJ5IGFzIF8sR2kgYXMgX2ksVGQgYXMgX24sTmMgYXMgX3IsdWcgYXMgX3Qsc3ggYXMgYSxsdCBhcyBhYSxWYSBhcyBhaSxCZiBhcyBhbixsbCBhcyBhcixVZyBhcyBhdCxOeSBhcyBiLFJpIGFzIGJpLHlkIGFzIGJuLENzIGFzIGJyLGlnIGFzIGJ0LGx4IGFzIGMsWGUgYXMgY2EsVGEgYXMgY2ksU2YgYXMgY24sUWMgYXMgY3IsVmcgYXMgY3QsSHkgYXMgZCxtYSBhcyBkaSxHZCBhcyBkbixXYyBhcyBkcixOZyBhcyBkdCxrIGFzIGVhLGVvIGFzIGVpLGVwIGFzIGVuLGJsIGFzIGVyLG9fIGFzIGV0LHp5IGFzIGYsdWEgYXMgZmksVmQgYXMgZm4sR2MgYXMgZnIsT2cgYXMgZnQsR3kgYXMgZyxaaSBhcyBnaSx3ZCBhcyBnbixCYyBhcyBncix5ZyBhcyBndCxWeSBhcyBoLFFpIGFzIGhpLEVkIGFzIGhuLHpjIGFzIGhyLFRnIGFzIGh0LGZ4IGFzIGksdXQgYXMgaWEscWEgYXMgaWksRmYgYXMgaW4sc2wgYXMgaXIsdF8gYXMgaXQsaXYgYXMgaixoaSBhcyBqaSxmZCBhcyBqbix1cyBhcyBqcixEaCBhcyBqdCxldiBhcyBrLF9pIGFzIGtpLGNkIGFzIGtuLGNzIGFzIGtyLE9oIGFzIGt0LGV4IGFzIGwseCBhcyBsYSxTYSBhcyBsaSxiZiBhcyBsbixVYyBhcyBscixMZyBhcyBsdCxxeSBhcyBtLCRpIGFzIG1pLHpkIGFzIG1uLFZjIGFzIG1yLERnIGFzIG10LGh4IGFzIG4sTyBhcyBuYSxZYSBhcyBuaSxxZiBhcyBubix1bCBhcyBucixjXyBhcyBudCxjeCBhcyBvLGN0IGFzIG9hLHphIGFzIG9pLHpmIGFzIG9uLG9sIGFzIG9yLEhnIGFzIG90LFd5IGFzIHAsY2EgYXMgcGksSGQgYXMgcG4sSGMgYXMgcHIsRWcgYXMgcHQsaF8gYXMgcSxPbiBhcyBxaSxLbCBhcyBxbixtbyBhcyBxcixOcCBhcyBxdCxweCBhcyByLHN0IGFzIHJhLEphIGFzIHJpLFVmIGFzIHJuLGNsIGFzIHJyLGxfIGFzIHJ0LHV4IGFzIHMsWmUgYXMgc2EsTGEgYXMgc2ksRGYgYXMgc24sbmwgYXMgc3IsQmcgYXMgc3QsX3ggYXMgdCxBIGFzIHRhLCRhIGFzIHRpLFRwIGFzIHRuLGRsIGFzIHRyLHJfIGFzIHR0LEx5IGFzIHUsdSBhcyB1YSxiYSBhcyB1aSxSZCBhcyB1bixLYyBhcyB1cixGZyBhcyB1dCxKeSBhcyB2LFZpIGFzIHZpLFNkIGFzIHZuLFBjIGFzIHZyLHJnIGFzIHZ0LER5IGFzIHcsa2kgYXMgd2ksJHUgYXMgd24sZ3MgYXMgd3IsTGggYXMgd3QsSXkgYXMgeCxNaSBhcyB4aSx4ZCBhcyB4bix4cyBhcyB4cixvZyBhcyB4dCxNeSBhcyB5LEJpIGFzIHlpLGJkIGFzIHluLE1jIGFzIHlyLFZoIGFzIHl0LFZfIGFzIHosWG4gYXMgemksSHUgYXMgem4sTG8gYXMgenIsVXAgYXMgenR9OwovLyMgc291cmNlTWFwcGluZ1VSTD1zaGFyZWQta2IxeXFIYUEuanMubWFw"}},"time_used":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":"coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.914Z","timestamp":1785158432914,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://uniz-coinzltd.com/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: *\r\nage: 351323\r\ncache-control: public, max-age=3600, stale-while-revalidate=86400\r\ncontent-disposition: inline\r\npriority: u=4,i=?0\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors *\r\ncontent-type: text/html; charset=utf-8\r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nvary: rsc, next-router-state-tree, next-router-prefetch, next-router-segment-prefetch, accept-encoding\r\nx-content-type-options: nosniff\r\nx-frame-options: SAMEORIGIN\r\nx-matched-path: /widget\r\nx-nextjs-prerender: 1\r\nx-nextjs-stale-time: 300\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::9tcll-1785158432933-70baf40eb055\r\nx-xss-protection: 1; mode=block\r\ncf-cache-status: DYNAMIC\r\nserver-timing: cfCacheStatus;desc=\"DYNAMIC\", cfEdge;dur=7,cfOrigin;dur=21, cfExtPri\r\ncontent-encoding: zstd\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=WnmoGTBnPJBGz23bCZjCoZ3o%2FBhrEiSD%2FFfJvI6NELPmL9VWoCjoJdEktTUxCnoGCYeg3ZAWHvB7hRpYNHaG9ybSBsnmKOvrsMGKYAXC%2FJlfiH6yp3ls3NlARf4z\"}]}\r\ncf-ray: a21bf12db81256b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare Browser Insights","description":"Cloudflare Browser Insights is a tool that measures the performance of websites from the perspective of users.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["Analytics","RUM"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"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":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":264025,"size_decoded":33854,"mime_type":"text/html; charset=utf-8","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (62918)","md5":"0b66e1b457bb677d8f58fbbe7d1dc0d3","sha1":"21d7b46ede1a80096ad8c0b24ac09e2b9d13baf6","sha256":"2d3fd1241a3c0c323de2b5fea043ea12d3cdf4aa2b288e3911976bb0ec53482c","sha512":"23db906319bb67d11230275571b08ff1a73b3c64c7aa9040d8797999624a297c817a1fad43c8a195e1eb6292fd7799ad2ba1fa36539482afc36f680433297406","ssdeep":"6144:cuwdzaVM7XPgFm+eQQ6L/c7kXl528IyIn:lMQ41k9Sn","tlshash":"7744b464f228ea7ebd3778ac92bce84c320571a1d9f847dde911b2119fc3bf25929114","first_seen":"2026-07-23T13:38:20.379492Z","last_seen":"2026-07-29T06:14:00.404739Z","times_seen":959,"resource_available":false,"data":"PCFET0NUWVBFIGh0bWw+PCEtLVMxSjJHRV9qQzlkRTl5aGE5aEFfdC0tPjxodG1sIGxhbmc9ImVuIj48aGVhZD48bWV0YSBjaGFyU2V0PSJ1dGYtOCIvPjxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSwgdmlld3BvcnQtZml0PWNvdmVyIi8+PGxpbmsgcmVsPSJwcmVsb2FkIiBocmVmPSIvX25leHQvc3RhdGljL21lZGlhLzgzYWZlMjc4YjZhNmJiM2Mtcy5wLjNhNmJhMDM2LndvZmYyIiBhcz0iZm9udCIgY3Jvc3NvcmlnaW49IiIgdHlwZT0iZm9udC93b2ZmMiIvPjxzdHlsZSBkYXRhLXByZWNlZGVuY2U9Im5leHQiIGRhdGEtaHJlZj0iL19uZXh0L3N0YXRpYy9jaHVua3MvMDcyNWZjNGRiODE0ZjAzNS5jc3MgL19uZXh0L3N0YXRpYy9jaHVua3MvYjM0ZWJiOGFlZmYyMTg2ZS5jc3MiPkBmb250LWZhY2V7Zm9udC1mYW1pbHk6SW50ZXI7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6MTAwIDkwMDtmb250LWRpc3BsYXk6b3B0aW9uYWw7c3JjOnVybCgvX25leHQvc3RhdGljL21lZGlhLzJjNTVhMGU2MDEyMDU3N2Etcy4yYTQ4NTM0YS53b2ZmMilmb3JtYXQoIndvZmYyIik7dW5pY29kZS1yYW5nZTpVKzQ2MC01MkYsVSsxQzgwLTFDOEEsVSsyMEI0LFUrMkRFMC0yREZGLFUrQTY0MC1BNjlGLFUrRkUyRS1GRTJGfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6SW50ZXI7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6MTAwIDkwMDtmb250LWRpc3BsYXk6b3B0aW9uYWw7c3JjOnVybCgvX25leHQvc3RhdGljL21lZGlhLzljNzJhYTBmNDBlNGVlZjgtcy4xOGE0OGNiYy53b2ZmMilmb3JtYXQoIndvZmYyIik7dW5pY29kZS1yYW5nZTpVKzMwMSxVKzQwMC00NUYsVSs0OTAtNDkxLFUrNEIwLTRCMSxVKzIxMTZ9QGZvbnQtZmFjZXtmb250LWZhbWlseTpJbnRlcjtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDoxMDAgOTAwO2ZvbnQtZGlzcGxheTpvcHRpb25hbDtzcmM6dXJsKC9fbmV4dC9zdGF0aWMvbWVkaWEvYWQ2NmY5YWZkODk0N2Y4Ni1zLjdhNDBlYjczLndvZmYyKWZvcm1hdCgid29mZjIiKTt1bmljb2RlLXJhbmdlOlUrMUY/P31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OkludGVyO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjEwMCA5MDA7Zm9udC1kaXNwbGF5Om9wdGlvbmFsO3NyYzp1cmwoL19uZXh0L3N0YXRpYy9tZWRpYS81NDc2ZjY4ZDYwNDYwOTMwLXMuYzk5NWUzNTIud29mZjIpZm9ybWF0KCJ3b2ZmMiIpO3VuaWNvZGUtcmFuZ2U6VSszNzAtMzc3LFUrMzdBLTM3RixVKzM4NC0zOEEsVSszOEMsVSszOEUtM0ExLFUrM0EzLTNGRn1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OkludGVyO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjEwMCA5MDA7Zm9udC1kaXNwbGF5Om9wdGlvbmFsO3NyYzp1cmwoL19uZXh0L3N0YXRpYy9tZWRpYS8yYmJlOGQyNjcxNjEzZjFmLXMuNzZkY2IwYjIud29mZjIpZm9ybWF0KCJ3b2ZmMiIpO3VuaWNvZGUtcmFuZ2U6VSsxMDItMTAzLFUrMTEwLTExMSxVKzEyOC0xMjksVSsxNjgtMTY5LFUrMUEwLTFBMSxVKzFBRi0xQjAsVSszMDAtMzAxLFUrMzAzLTMwNCxVKzMwOC0zMDksVSszMjMsVSszMjksVSsxRUEwLTFFRjksVSsyMEFCfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6SW50ZXI7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6MTAwIDkwMDtmb250LWRpc3BsYXk6b3B0aW9uYWw7c3JjOnVybCgvX25leHQvc3RhdGljL21lZGlhLzFiZmZhZGFhYmY4OTNhMWUtcy43Y2Q4MTk2My53b2ZmMilmb3JtYXQoIndvZmYyIik7dW5pY29kZS1yYW5nZTpVKzEwMC0yQkEsVSsyQkQtMkM1LFUrMkM3LTJDQyxVKzJDRS0yRDcsVSsyREQtMkZGLFUrMzA0LFUrMzA4LFUrMzI5LFUrMUQwMC0xREJGLFUrMUUwMC0xRTlGLFUrMUVGMi0xRUZGLFUrMjAyMCxVKzIwQTAtMjBBQixVKzIwQUQtMjBDMCxVKzIxMTMsVSsyQzYwLTJDN0YsVStBNzIwLUE3RkZ9QGZvbnQtZmFjZXtmb250LWZhbWlseTpJbnRlcjtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDoxMDAgOTAwO2ZvbnQtZGlzcGxheTpvcHRpb25hbDtzcmM6dXJsKC9fbmV4dC9zdGF0aWMvbWVkaWEvODNhZmUyNzhiNmE2YmIzYy1zLnAuM2E2YmEwMzYud29mZjIpZm9ybWF0KCJ3b2ZmMiIpO3VuaWNvZGUtcmFuZ2U6VSs/PyxVKzEzMSxVKzE1Mi0xNTMsVSsyQkItMkJDLFUrMkM2LFUrMkRBLFUrMkRDLFUrMzA0LFUrMzA4LFUrMzI5LFUrMjAwMC0yMDZGLFUrMjBBQyxVKzIxMjIsVSsyMTkxLFUrMjE5MyxVKzIyMTIsVSsyMjE1LFUrRkVGRixVK0ZGRkR9QGZvbnQtZmFjZXtmb250LWZhbWlseTpJbnRlciBGYWxsYmFjaztzcmM6bG9jYWwoQXJpYWwpO2FzY2VudC1vdmVycmlkZTo5MC40NCU7ZGVzY2VudC1vdmVycmlkZToyMi41MiU7bGluZS1nYXAtb3ZlcnJpZGU6MC4wJTtzaXplLWFkanVzdDoxMDcuMTIlfS5pbnRlcl8xZWM0ZGQ5Zi1tb2R1bGVfX1VNUGFLR19fY2xhc3NOYW1le2ZvbnQtZmFtaWx5OkludGVyLEludGVyIEZhbGxiYWNrO2ZvbnQtc3R5bGU6bm9ybWFsfS5pbnRlcl8xZWM0ZGQ5Zi1tb2R1bGVfX1VNUGFLR19fdmFyaWFibGV7LS1mb250LWludGVyOiJJbnRlciIsIkludGVyIEZhbGxiYWNrIn0KQGxheWVyIHByb3BlcnRpZXN7QHN1cHBvcnRzICgoKC13ZWJraXQtaHlwaGVuczpub25lKSkgYW5kIChub3QgKG1hcmdpbi10cmltOmlubGluZSkpKSBvciAoKC1tb3otb3JpZW50OmlubGluZSkgYW5kIChub3QgKGNvbG9yOnJnYihmcm9tIHJlZCByIGcgYikpKSl7Kiw6YmVmb3JlLDphZnRlciw6OmJhY2tkcm9wey0tdHctdHJhbnNsYXRlLXg6MDstLXR3LXRyYW5zbGF0ZS15OjA7LS10dy10cmFuc2xhdGUtejowOy0tdHctcm90YXRlLXg6aW5pdGlhbDstLXR3LXJvdGF0ZS15OmluaXRpYWw7LS10dy1yb3RhdGUtejppbml0aWFsOy0tdHctc2tldy14OmluaXRpYWw7LS10dy1za2V3LXk6aW5pdGlhbDstLXR3LXNwYWNlLXktcmV2ZXJzZTowOy0tdHctc3BhY2UteC1yZXZlcnNlOjA7LS10dy1kaXZpZGUteS1yZXZlcnNlOjA7LS10dy1ib3JkZXItc3R5bGU6c29saWQ7LS10dy1ncmFkaWVudC1wb3NpdGlvbjppbml0aWFsOy0tdHctZ3JhZGllbnQtZnJvbTojMDAwMDstLXR3LWdyYWRpZW50LXZpYTojMDAwMDstLXR3LWdyYWRpZW50LXRvOiMwMDAwOy0tdHctZ3JhZGllbnQtc3RvcHM6aW5pdGlhbDstLXR3LWdyYWRpZW50LXZpYS1zdG9wczppbml0aWFsOy0tdHctZ3JhZGllbnQtZnJvbS1wb3NpdGlvbjowJTstLXR3LWdyYWRpZW50LXZpYS1wb3NpdGlvbjo1MCU7LS10dy1ncmFkaWVudC10by1wb3NpdGlvbjoxMDAlOy0tdHctbGVhZGluZzppbml0aWFsOy0tdHctZm9udC13ZWlnaHQ6aW5pdGlhbDstLXR3LXRyYWNraW5nOmluaXRpYWw7LS10dy1vcmRpbmFsOmluaXRpYWw7LS10dy1zbGFzaGVkLXplcm86aW5pdGlhbDstLXR3LW51bWVyaWMtZmlndXJlOmluaXRpYWw7LS10dy1udW1lcmljLXNwYWNpbmc6aW5pdGlhbDstLXR3LW51bWVyaWMtZnJhY3Rpb246aW5pdGlhbDstLXR3LXNoYWRvdzowIDAgIzAwMDA7LS10dy1zaGFkb3ctY29sb3I6aW5pdGlhbDstLXR3LXNoYWRvdy1hbHBoYToxMDAlOy0tdHctaW5zZXQtc2hhZG93OjAgMCAjMDAwMDstLXR3LWluc2V0LXNoYWRvdy1jb2xvcjppbml0aWFsOy0tdHctaW5zZXQtc2hhZG93LWFscGhhOjEwMCU7LS10dy1yaW5nLWNvbG9yOmluaXRpYWw7LS10dy1yaW5nLXNoYWRvdzowIDAgIzAwMDA7LS10dy1pbnNldC1yaW5nLWNvbG9yOmluaXRpYWw7LS10dy1pbnNldC1yaW5nLXNoYWRvdzowIDAgIzAwMDA7LS10dy1yaW5nLWluc2V0OmluaXRpYWw7LS10dy1yaW5nLW9mZnNldC13aWR0aDowcHg7LS10dy1yaW5nLW9mZnNldC1jb2xvcjojZmZmOy0tdHctcmluZy1vZmZzZXQtc2hhZG93OjAgMCAjMDAwMDstLXR3LW91dGxpbmUtc3R5bGU6c29saWQ7LS10dy1ibHVyOmluaXRpYWw7LS10dy1icmlnaHRuZXNzOmluaXRpYWw7LS10dy1jb250cmFzdDppbml0aWFsOy0tdHctZ3JheXNjYWxlOmluaXRpYWw7LS10dy1odWUtcm90YXRlOmluaXRpYWw7LS10dy1pbnZlcnQ6aW5pdGlhbDstLXR3LW9wYWNpdHk6aW5pdGlhbDstLXR3LXNhdHVyYXRlOmluaXRpYWw7LS10dy1zZXBpYTppbml0aWFsOy0tdHctZHJvcC1zaGFkb3c6aW5pdGlhbDstLXR3LWRyb3Atc2hhZG93LWNvbG9yOmluaXRpYWw7LS10dy1kcm9wLXNoYWRvdy1hbHBoYToxMDAlOy0tdHctZHJvcC1zaGFkb3ctc2l6ZTppbml0aWFsOy0tdHctYmFja2Ryb3AtYmx1cjppbml0aWFsOy0tdHctYmFja2Ryb3AtYnJpZ2h0bmVzczppbml0aWFsOy0tdHctYmFja2Ryb3AtY29udHJhc3Q6aW5pdGlhbDstLXR3LWJhY2tkcm9wLWdyYXlzY2FsZTppbml0aWFsOy0tdHctYmFja2Ryb3AtaHVlLXJvdGF0ZTppbml0aWFsOy0tdHctYmFja2Ryb3AtaW52ZXJ0OmluaXRpYWw7LS10dy1iYWNrZHJvcC1vcGFjaXR5OmluaXRpYWw7LS10dy1iYWNrZHJvcC1zYXR1cmF0ZTppbml0aWFsOy0tdHctYmFja2Ryb3Atc2VwaWE6aW5pdGlhbDstLXR3LWR1cmF0aW9uOmluaXRpYWw7LS10dy1lYXNlOmluaXRpYWw7LS10dy1jb250ZW50OiIiOy0tdHctYW5pbWF0aW9uLWRlbGF5OjBzOy0tdHctYW5pbWF0aW9uLWRpcmVjdGlvbjpub3JtYWw7LS10dy1hbmltYXRpb24tZHVyYXRpb246aW5pdGlhbDstLXR3LWFuaW1hdGlvbi1maWxsLW1vZGU6bm9uZTstLXR3LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MTstLXR3LWVudGVyLWJsdXI6MDstLXR3LWVudGVyLW9wYWNpdHk6MTstLXR3LWVudGVyLXJvdGF0ZTowOy0tdHctZW50ZXItc2NhbGU6MTstLXR3LWVudGVyLXRyYW5zbGF0ZS14OjA7LS10dy1lbnRlci10cmFuc2xhdGUteTowOy0tdHctZXhpdC1ibHVyOjA7LS10dy1leGl0LW9wYWNpdHk6MTstLXR3LWV4aXQtcm90YXRlOjA7LS10dy1leGl0LXNjYWxlOjE7LS10dy1leGl0LXRyYW5zbGF0ZS14OjA7LS10dy1leGl0LXRyYW5zbGF0ZS15OjB9fX1AbGF5ZXIgdGhlbWV7OnJvb3QsOmhvc3R7LS1jb2xvci1yZWQtNTAwOiNmYjJjMzY7LS1jb2xvci1vcmFuZ2UtNTAwOiNmZTZlMDA7LS1jb2xvci1ncmVlbi00MDA6IzA1ZGY3MjstLWNvbG9yLWdyZWVuLTYwMDojMDBhNTQ0Oy0tY29sb3ItYmxhY2s6IzAwMDstLWNvbG9yLXdoaXRlOiNmZmY7LS1zcGFjaW5nOi4yNXJlbTstLWNvbnRhaW5lci14czoyMHJlbTstLWNvbnRhaW5lci1zbToyNHJlbTstLWNvbnRhaW5lci1tZDoyOHJlbTstLWNvbnRhaW5lci1sZzozMnJlbTstLWNvbnRhaW5lci14bDozNnJlbTstLWNvbnRhaW5lci0yeGw6NDJyZW07LS1jb250YWluZXItM3hsOjQ4cmVtOy0tY29udGFpbmVyLTR4bDo1NnJlbTstLWNvbnRhaW5lci03eGw6ODByZW07LS10ZXh0LXhzOi43NXJlbTstLXRleHQteHMtLWxpbmUtaGVpZ2h0OmNhbGMoMS8uNzUpOy0tdGV4dC1zbTouODc1cmVtOy0tdGV4dC1zbS0tbGluZS1oZWlnaHQ6Y2FsYygxLjI1Ly44NzUpOy0tdGV4dC1iYXNlOjFyZW07LS10ZXh0LWJhc2UtLWxpbmUtaGVpZ2h0OmNhbGMoMS41LzEpOy0tdGV4dC1sZzoxLjEyNXJlbTstLXRleHQtbGctLWxpbmUtaGVpZ2h0OmNhbGMoMS43NS8xLjEyNSk7LS10ZXh0LXhsOjEuMjVyZW07LS10ZXh0LXhsLS1saW5lLWhlaWdodDpjYWxjKDEuNzUvMS4yNSk7LS10ZXh0LTJ4bDoxLjVyZW07LS10ZXh0LTJ4bC0tbGluZS1oZWlnaHQ6Y2FsYygyLzEuNSk7LS10ZXh0LTN4bDoxLjg3NXJlbTstLXRleHQtM3hsLS1saW5lLWhlaWdodDpjYWxjKDIuMjUvMS44NzUpOy0tdGV4dC00eGw6Mi4yNXJlbTstLXRleHQtNHhsLS1saW5lLWhlaWdodDpjYWxjKDIuNS8yLjI1KTstLXRleHQtNnhsOjMuNzVyZW07LS10ZXh0LTZ4bC0tbGluZS1oZWlnaHQ6MTstLWZvbnQtd2VpZ2h0LW5vcm1hbDo0MDA7LS1mb250LXdlaWdodC1tZWRpdW06NTAwOy0tZm9udC13ZWlnaHQtc2VtaWJvbGQ6NjAwOy0tZm9udC13ZWlnaHQtYm9sZDo3MDA7LS10cmFja2luZy10aWdodDotLjAyNWVtOy0tdHJhY2tpbmctd2lkZTouMDI1ZW07LS10cmFja2luZy13aWRlc3Q6LjFlbTstLWxlYWRpbmctdGlnaHQ6MS4yNTstLWxlYWRpbmctc251ZzoxLjM3NTstLWxlYWRpbmctcmVsYXhlZDoxLjYyNTstLXJhZGl1cy1tZDpjYWxjKHZhcigtLXJhZGl1cykqLjgpOy0tZWFzZS1pbi1vdXQ6Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7LS1hbmltYXRlLXNwaW46c3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7LS1hbmltYXRlLXB1bHNlOnB1bHNlIDJzIGN1YmljLWJlemllciguNCwwLC42LDEpaW5maW5pdGU7LS1ibHVyLXhzOjRweDstLWJsdXItc206OHB4Oy0tZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7LS1kZWZhdWx0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpOy0tZGVmYXVsdC1mb250LWZhbWlseTp2YXIoLS1mb250LWludGVyKSwiSW50ZXIiLHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sc2Fucy1zZXJpZjstLWRlZmF1bHQtbW9uby1mb250LWZhbWlseTp2YXIoLS1mb250LWludGVyKSwiSW50ZXIiLHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sc2Fucy1zZXJpZn1Ac3VwcG9ydHMgKGNvbG9yOmxhYigwJSAwIDApKXs6cm9vdCw6aG9zdHstLWNvbG9yLXJlZC01MDA6bGFiKDU1LjQ4MTQlIDc1LjA3MzIgNDguODUyOCk7LS1jb2xvci1vcmFuZ2UtNTAwOmxhYig2NC4yNzIlIDU3LjE3ODggOTAuMzU4Myk7LS1jb2xvci1ncmVlbi00MDA6bGFiKDc4LjUwMyUgLTY0LjkyNjUgMzkuNzQ5Mik7LS1jb2xvci1ncmVlbi02MDA6bGFiKDU5LjA5NzglIC01OC42NjIxIDQxLjI1NzkpfX19QGxheWVyIGJhc2V7Kiw6YWZ0ZXIsOmJlZm9yZSw6OmJhY2tkcm9we2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6MCBzb2xpZDttYXJnaW46MDtwYWRkaW5nOjB9OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOjAgc29saWQ7bWFyZ2luOjA7cGFkZGluZzowfWh0bWwsOmhvc3R7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCU7dGFiLXNpemU6NDtsaW5lLWhlaWdodDoxLjU7Zm9udC1mYW1pbHk6dmFyKC0tZGVmYXVsdC1mb250LWZhbWlseSx1aS1zYW5zLXNlcmlmLHN5c3RlbS11aSxzYW5zLXNlcmlmLCJBcHBsZSBDb2xvciBFbW9qaSIsIlNlZ29lIFVJIEVtb2ppIiwiU2Vnb2UgVUkgU3ltYm9sIiwiTm90byBDb2xvciBFbW9qaSIpO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczp2YXIoLS1kZWZhdWx0LWZvbnQtZmVhdHVyZS1zZXR0aW5ncyxub3JtYWwpO2ZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOnZhcigtLWRlZmF1bHQtZm9udC12YXJpYXRpb24tc2V0dGluZ3Msbm9ybWFsKTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnR9aHJ7aGVpZ2h0OjA7Y29sb3I6aW5oZXJpdDtib3JkZXItdG9wLXdpZHRoOjFweH1hYmJyOndoZXJlKFt0aXRsZV0pey13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWR9aDEsaDIsaDMsaDQsaDUsaDZ7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdH1he2NvbG9yOmluaGVyaXQ7LXdlYmtpdC10ZXh0LWRlY29yYXRpb246aW5oZXJpdDstd2Via2l0LXRleHQtZGVjb3JhdGlvbjppbmhlcml0Oy13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7LXdlYmtpdC10ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LWRlY29yYXRpb246aW5oZXJpdH1iLHN0cm9uZ3tmb250LXdlaWdodDpib2xkZXJ9Y29kZSxrYmQsc2FtcCxwcmV7Zm9udC1mYW1pbHk6dmFyKC0tZGVmYXVsdC1tb25vLWZvbnQtZmFtaWx5LHVpLW1vbm9zcGFjZSxTRk1vbm8tUmVndWxhcixNZW5sbyxNb25hY28sQ29uc29sYXMsIkxpYmVyYXRpb24gTW9ubyIsIkNvdXJpZXIgTmV3Iixtb25vc3BhY2UpO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczp2YXIoLS1kZWZhdWx0LW1vbm8tZm9udC1mZWF0dXJlLXNldHRpbmdzLG5vcm1hbCk7Zm9udC12YXJpYXRpb24tc2V0dGluZ3M6dmFyKC0tZGVmYXVsdC1tb25vLWZvbnQtdmFyaWF0aW9uLXNldHRpbmdzLG5vcm1hbCk7Zm9udC1zaXplOjFlbX1zbWFsbHtmb250LXNpemU6ODAlfXN1YixzdXB7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7Zm9udC1zaXplOjc1JTtsaW5lLWhlaWdodDowO3Bvc2l0aW9uOnJlbGF0aXZlfXN1Yntib3R0b206LS4yNWVtfXN1cHt0b3A6LS41ZW19dGFibGV7dGV4dC1pbmRlbnQ6MDtib3JkZXItY29sb3I6aW5oZXJpdDtib3JkZXItY29sbGFwc2U6Y29sbGFwc2V9Oi1tb3otZm9jdXNyaW5ne291dGxpbmU6YXV0b31wcm9ncmVzc3t2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX1zdW1tYXJ5e2Rpc3BsYXk6bGlzdC1pdGVtfW9sLHVsLG1lbnV7bGlzdC1zdHlsZTpub25lfWltZyxzdmcsdmlkZW8sY2FudmFzLGF1ZGlvLGlmcmFtZSxlbWJlZCxvYmplY3R7dmVydGljYWwtYWxpZ246bWlkZGxlO2Rpc3BsYXk6YmxvY2t9aW1nLHZpZGVve21heC13aWR0aDoxMDAlO2hlaWdodDphdXRvfWJ1dHRvbixpbnB1dCxzZWxlY3Qsb3B0Z3JvdXAsdGV4dGFyZWF7Zm9udDppbmhlcml0O2ZvbnQtZmVhdHVyZS1zZXR0aW5nczppbmhlcml0O2ZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOmluaGVyaXQ7bGV0dGVyLXNwYWNpbmc6aW5oZXJpdDtjb2xvcjppbmhlcml0O29wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwO2JvcmRlci1yYWRpdXM6MH06OmZpbGUtc2VsZWN0b3ItYnV0dG9ue2ZvbnQ6aW5oZXJpdDtmb250LWZlYXR1cmUtc2V0dGluZ3M6aW5oZXJpdDtmb250LXZhcmlhdGlvbi1zZXR0aW5nczppbmhlcml0O2xldHRlci1zcGFjaW5nOmluaGVyaXQ7Y29sb3I6aW5oZXJpdDtvcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjojMDAwMDtib3JkZXItcmFkaXVzOjB9OndoZXJlKHNlbGVjdDppcyhbbXVsdGlwbGVdLFtzaXplXSkpIG9wdGdyb3Vwe2ZvbnQtd2VpZ2h0OmJvbGRlcn06d2hlcmUoc2VsZWN0OmlzKFttdWx0aXBsZV0sW3NpemVdKSkgb3B0Z3JvdXAgb3B0aW9ue3BhZGRpbmctaW5saW5lLXN0YXJ0OjIwcHh9OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbnttYXJnaW4taW5saW5lLWVuZDo0cHh9OjpwbGFjZWhvbGRlcntvcGFjaXR5OjF9QHN1cHBvcnRzIChub3QgKCgtd2Via2l0LWFwcGVhcmFuY2U6LWFwcGxlLXBheS1idXR0b24pKSkgb3IgKGNvbnRhaW4taW50cmluc2ljLXNpemU6MXB4KXs6OnBsYWNlaG9sZGVye2NvbG9yOmN1cnJlbnRDb2xvcn1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7OjpwbGFjZWhvbGRlcntjb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsY3VycmVudGNvbG9yIDUwJSx0cmFuc3BhcmVudCl9fX10ZXh0YXJlYXtyZXNpemU6dmVydGljYWx9Ojotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uey13ZWJraXQtYXBwZWFyYW5jZTpub25lfTo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVle21pbi1oZWlnaHQ6MWxoO3RleHQtYWxpZ246aW5oZXJpdH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdHtkaXNwbGF5OmlubGluZS1mbGV4fTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVye3BhZGRpbmc6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtbW9udGgtZmllbGR7cGFkZGluZy1ibG9jazowfTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLWZpZWxke3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1zZWNvbmQtZmllbGR7cGFkZGluZy1ibG9jazowfTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbGxpc2Vjb25kLWZpZWxke3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tZXJpZGllbS1maWVsZHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3J7bGluZS1oZWlnaHQ6MX06LW1vei11aS1pbnZhbGlke2JveC1zaGFkb3c6bm9uZX1idXR0b24saW5wdXQ6d2hlcmUoW3R5cGU9YnV0dG9uXSxbdHlwZT1yZXNldF0sW3R5cGU9c3VibWl0XSl7YXBwZWFyYW5jZTpidXR0b259OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbnthcHBlYXJhbmNlOmJ1dHRvbn06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b257aGVpZ2h0OmF1dG99Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9ue2hlaWdodDphdXRvfVtoaWRkZW5dOndoZXJlKDpub3QoW2hpZGRlbj11bnRpbC1mb3VuZF0pKXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fSp7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlcik7b3V0bGluZS1jb2xvcjp2YXIoLS1yaW5nKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7KntvdXRsaW5lLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1yaW5nKTUwJSx0cmFuc3BhcmVudCl9fWJvZHl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1iYWNrZ3JvdW5kKTtjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKTtmb250LWZhbWlseTp2YXIoLS1mb250LWludGVyKSx1aS1zYW5zLXNlcmlmLHN5c3RlbS11aSwtYXBwbGUtc3lzdGVtLHNhbnMtc2VyaWZ9Y29kZSxwcmUsa2Jke2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtaW50ZXIpLCJJbnRlciIsdWktc2Fucy1zZXJpZixzeXN0ZW0tdWksLWFwcGxlLXN5c3RlbSxzYW5zLXNlcmlmfX1AbGF5ZXIgY29tcG9uZW50cztAbGF5ZXIgdXRpbGl0aWVzey5cQGNvbnRhaW5lclwvY2FyZC1oZWFkZXJ7Y29udGFpbmVyOmNhcmQtaGVhZGVyL2lubGluZS1zaXplfS5wb2ludGVyLWV2ZW50cy1ub25le3BvaW50ZXItZXZlbnRzOm5vbmV9LmNvbGxhcHNle3Zpc2liaWxpdHk6Y29sbGFwc2V9LnZpc2libGV7dmlzaWJpbGl0eTp2aXNpYmxlfS5zci1vbmx5e2NsaXAtcGF0aDppbnNldCg1MCUpO3doaXRlLXNwYWNlOm5vd3JhcDtib3JkZXItd2lkdGg6MDt3aWR0aDoxcHg7aGVpZ2h0OjFweDttYXJnaW46LTFweDtwYWRkaW5nOjA7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVufS5hYnNvbHV0ZXtwb3NpdGlvbjphYnNvbHV0ZX0uZml4ZWR7cG9zaXRpb246Zml4ZWR9LnJlbGF0aXZle3Bvc2l0aW9uOnJlbGF0aXZlfS5zdGF0aWN7cG9zaXRpb246c3RhdGljfS5zdGlja3l7cG9zaXRpb246c3RpY2t5fS5pbnNldC0we2luc2V0OmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmluc2V0LXgtMHtpbnNldC1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uaW5zZXQteC00e2luc2V0LWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5pbnNldC15LTB7aW5zZXQtYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uc3RhcnR7aW5zZXQtaW5saW5lLXN0YXJ0OnZhcigtLXNwYWNpbmcpfS5lbmR7aW5zZXQtaW5saW5lLWVuZDp2YXIoLS1zcGFjaW5nKX0uLXRvcC0ye3RvcDpjYWxjKHZhcigtLXNwYWNpbmcpKi0yKX0udG9wLTB7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMCl9LnRvcC0wXC41e3RvcDpjYWxjKHZhcigtLXNwYWNpbmcpKi41KX0udG9wLTFcLzJ7dG9wOjUwJX0udG9wLTFcLzN7dG9wOjMzLjMzMzMlfS50b3AtMnt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0udG9wLTN7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMyl9LnRvcC0xNHt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNCl9LnRvcC0xMDB7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMTAwKX0udG9wLTEwMDB7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMTAwMCl9LnRvcC1mdWxse3RvcDoxMDAlfS4tcmlnaHQtMntyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKi0yKX0ucmlnaHQtMHtyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5yaWdodC0ye3JpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9LnJpZ2h0LTJcLjV7cmlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5yaWdodC0ze3JpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMyl9LmJvdHRvbS0we2JvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5ib3R0b20tMjB7Ym90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMjApfS5sZWZ0LTB7bGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5sZWZ0LTBcLjV7bGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKi41KX0ubGVmdC0xXC8ye2xlZnQ6NTAlfS5sZWZ0LTJcLjV7bGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjIuNSl9LmxlZnQtM3tsZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMyl9LmxlZnQtNHtsZWZ0OmNhbGModmFyKC0tc3BhY2luZykqNCl9LmxlZnQtMTB7bGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKX0uaXNvbGF0ZXtpc29sYXRpb246aXNvbGF0ZX0uei0xMHt6LWluZGV4OjEwfS56LTIwe3otaW5kZXg6MjB9LnotMzB7ei1pbmRleDozMH0uei00MHt6LWluZGV4OjQwfS56LTUwe3otaW5kZXg6NTB9Lm9yZGVyLWZpcnN0e29yZGVyOi05OTk5fS5vcmRlci1sYXN0e29yZGVyOjk5OTl9LmNvbC1zdGFydC0ye2dyaWQtY29sdW1uLXN0YXJ0OjJ9LnJvdy1zcGFuLTJ7Z3JpZC1yb3c6c3BhbiAyL3NwYW4gMn0ucm93LXN0YXJ0LTF7Z3JpZC1yb3ctc3RhcnQ6MX0uY29udGFpbmVye3dpZHRoOjEwMCV9QG1lZGlhIChtaW4td2lkdGg6NDByZW0pey5jb250YWluZXJ7bWF4LXdpZHRoOjQwcmVtfX1AbWVkaWEgKG1pbi13aWR0aDo0OHJlbSl7LmNvbnRhaW5lcnttYXgtd2lkdGg6NDhyZW19fUBtZWRpYSAobWluLXdpZHRoOjY0cmVtKXsuY29udGFpbmVye21heC13aWR0aDo2NHJlbX19QG1lZGlhIChtaW4td2lkdGg6ODByZW0pey5jb250YWluZXJ7bWF4LXdpZHRoOjgwcmVtfX1AbWVkaWEgKG1pbi13aWR0aDo5NnJlbSl7LmNvbnRhaW5lcnttYXgtd2lkdGg6OTZyZW19fS4tbXgtMXttYXJnaW4taW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqLTEpfS4tbXgtNHttYXJnaW4taW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqLTQpfS5teC0xe21hcmdpbi1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ubXgtNHttYXJnaW4taW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqNCl9Lm14LWF1dG97bWFyZ2luLWlubGluZTphdXRvfS5teS0xe21hcmdpbi1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5teS0ye21hcmdpbi1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5wcm9zZXtjb2xvcjp2YXIoLS10dy1wcm9zZS1ib2R5KTttYXgtd2lkdGg6NjVjaH0ucHJvc2UgOndoZXJlKHApOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjI1ZW07bWFyZ2luLWJvdHRvbToxLjI1ZW19LnByb3NlIDp3aGVyZShbY2xhc3N+PWxlYWRdKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWxlYWQpO21hcmdpbi10b3A6MS4yZW07bWFyZ2luLWJvdHRvbToxLjJlbTtmb250LXNpemU6MS4yNWVtO2xpbmUtaGVpZ2h0OjEuNn0ucHJvc2UgOndoZXJlKGEpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6dmFyKC0tdHctcHJvc2UtbGlua3MpO2ZvbnQtd2VpZ2h0OjUwMDt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5wcm9zZSA6d2hlcmUoc3Ryb25nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWJvbGQpO2ZvbnQtd2VpZ2h0OjYwMH0ucHJvc2UgOndoZXJlKGEgc3Ryb25nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUoYmxvY2txdW90ZSBzdHJvbmcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlIDp3aGVyZSh0aGVhZCB0aCBzdHJvbmcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdH0ucHJvc2UgOndoZXJlKG9sKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4yNWVtO21hcmdpbi1ib3R0b206MS4yNWVtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjEuNjI1ZW07bGlzdC1zdHlsZS10eXBlOmRlY2ltYWx9LnByb3NlIDp3aGVyZShvbFt0eXBlPUFdKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2xpc3Qtc3R5bGUtdHlwZTp1cHBlci1hbHBoYX0ucHJvc2UgOndoZXJlKG9sW3R5cGU9YV0pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bGlzdC1zdHlsZS10eXBlOmxvd2VyLWFscGhhfS5wcm9zZSA6d2hlcmUob2xbdHlwZT1BIHNdKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2xpc3Qtc3R5bGUtdHlwZTp1cHBlci1hbHBoYX0ucHJvc2UgOndoZXJlKG9sW3R5cGU9YSBzXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtsaXN0LXN0eWxlLXR5cGU6bG93ZXItYWxwaGF9LnByb3NlIDp3aGVyZShvbFt0eXBlPUldKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2xpc3Qtc3R5bGUtdHlwZTp1cHBlci1yb21hbn0ucHJvc2UgOndoZXJlKG9sW3R5cGU9aV0pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bGlzdC1zdHlsZS10eXBlOmxvd2VyLXJvbWFufS5wcm9zZSA6d2hlcmUob2xbdHlwZT1JIHNdKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2xpc3Qtc3R5bGUtdHlwZTp1cHBlci1yb21hbn0ucHJvc2UgOndoZXJlKG9sW3R5cGU9aSBzXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtsaXN0LXN0eWxlLXR5cGU6bG93ZXItcm9tYW59LnByb3NlIDp3aGVyZShvbFt0eXBlPSIxIl0pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bGlzdC1zdHlsZS10eXBlOmRlY2ltYWx9LnByb3NlIDp3aGVyZSh1bCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMjVlbTttYXJnaW4tYm90dG9tOjEuMjVlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjYyNWVtO2xpc3Qtc3R5bGUtdHlwZTpkaXNjfS5wcm9zZSA6d2hlcmUob2w+bGkpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6Om1hcmtlcntjb2xvcjp2YXIoLS10dy1wcm9zZS1jb3VudGVycyk7Zm9udC13ZWlnaHQ6NDAwfS5wcm9zZSA6d2hlcmUodWw+bGkpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6Om1hcmtlcntjb2xvcjp2YXIoLS10dy1wcm9zZS1idWxsZXRzKX0ucHJvc2UgOndoZXJlKGR0KTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWhlYWRpbmdzKTttYXJnaW4tdG9wOjEuMjVlbTtmb250LXdlaWdodDo2MDB9LnByb3NlIDp3aGVyZShocik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtib3JkZXItY29sb3I6dmFyKC0tdHctcHJvc2UtaHIpO2JvcmRlci10b3Atd2lkdGg6MXB4O21hcmdpbi10b3A6M2VtO21hcmdpbi1ib3R0b206M2VtfS5wcm9zZSA6d2hlcmUoYmxvY2txdW90ZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1xdW90ZXMpO2JvcmRlci1pbmxpbmUtc3RhcnQtd2lkdGg6LjI1cmVtO2JvcmRlci1pbmxpbmUtc3RhcnQtY29sb3I6dmFyKC0tdHctcHJvc2UtcXVvdGUtYm9yZGVycyk7cXVvdGVzOiLigJwiIuKAnSIi4oCYIiLigJkiO21hcmdpbi10b3A6MS42ZW07bWFyZ2luLWJvdHRvbToxLjZlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW07Zm9udC1zdHlsZTppdGFsaWM7Zm9udC13ZWlnaHQ6NTAwfS5wcm9zZSA6d2hlcmUoYmxvY2txdW90ZSBwOmZpcnN0LW9mLXR5cGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6YmVmb3Jle2NvbnRlbnQ6b3Blbi1xdW90ZX0ucHJvc2UgOndoZXJlKGJsb2NrcXVvdGUgcDpsYXN0LW9mLXR5cGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6YWZ0ZXJ7Y29udGVudDpjbG9zZS1xdW90ZX0ucHJvc2UgOndoZXJlKGgxKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWhlYWRpbmdzKTttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTouODg4ODg5ZW07Zm9udC1zaXplOjIuMjVlbTtmb250LXdlaWdodDo4MDA7bGluZS1oZWlnaHQ6MS4xMTExMX0ucHJvc2UgOndoZXJlKGgxIHN0cm9uZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjppbmhlcml0O2ZvbnQtd2VpZ2h0OjkwMH0ucHJvc2UgOndoZXJlKGgyKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWhlYWRpbmdzKTttYXJnaW4tdG9wOjJlbTttYXJnaW4tYm90dG9tOjFlbTtmb250LXNpemU6MS41ZW07Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjEuMzMzMzN9LnByb3NlIDp3aGVyZShoMiBzdHJvbmcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdDtmb250LXdlaWdodDo4MDB9LnByb3NlIDp3aGVyZShoMyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1oZWFkaW5ncyk7bWFyZ2luLXRvcDoxLjZlbTttYXJnaW4tYm90dG9tOi42ZW07Zm9udC1zaXplOjEuMjVlbTtmb250LXdlaWdodDo2MDA7bGluZS1oZWlnaHQ6MS42fS5wcm9zZSA6d2hlcmUoaDMgc3Ryb25nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOmluaGVyaXQ7Zm9udC13ZWlnaHQ6NzAwfS5wcm9zZSA6d2hlcmUoaDQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6dmFyKC0tdHctcHJvc2UtaGVhZGluZ3MpO21hcmdpbi10b3A6MS41ZW07bWFyZ2luLWJvdHRvbTouNWVtO2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxLjV9LnByb3NlIDp3aGVyZShoNCBzdHJvbmcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdDtmb250LXdlaWdodDo3MDB9LnByb3NlIDp3aGVyZShpbWcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoyZW07bWFyZ2luLWJvdHRvbToyZW19LnByb3NlIDp3aGVyZShwaWN0dXJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MmVtO21hcmdpbi1ib3R0b206MmVtO2Rpc3BsYXk6YmxvY2t9LnByb3NlIDp3aGVyZSh2aWRlbyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjJlbTttYXJnaW4tYm90dG9tOjJlbX0ucHJvc2UgOndoZXJlKGtiZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1rYmQpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHZhcigtLXR3LXByb3NlLWtiZC1zaGFkb3dzKSwwIDNweCAwIHZhcigtLXR3LXByb3NlLWtiZC1zaGFkb3dzKTtwYWRkaW5nLXRvcDouMTg3NWVtO3BhZGRpbmctaW5saW5lLWVuZDouMzc1ZW07cGFkZGluZy1ib3R0b206LjE4NzVlbTtib3JkZXItcmFkaXVzOi4zMTI1cmVtO3BhZGRpbmctaW5saW5lLXN0YXJ0Oi4zNzVlbTtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTouODc1ZW07Zm9udC13ZWlnaHQ6NTAwfS5wcm9zZSA6d2hlcmUoY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1jb2RlKTtmb250LXNpemU6Ljg3NWVtO2ZvbnQtd2VpZ2h0OjYwMH0ucHJvc2UgOndoZXJlKGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6YmVmb3JlLC5wcm9zZSA6d2hlcmUoY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKTphZnRlcntjb250ZW50OiJgIn0ucHJvc2UgOndoZXJlKGEgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKGgxIGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdH0ucHJvc2UgOndoZXJlKGgyIGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdDtmb250LXNpemU6Ljg3NWVtfS5wcm9zZSA6d2hlcmUoaDMgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjppbmhlcml0O2ZvbnQtc2l6ZTouOWVtfS5wcm9zZSA6d2hlcmUoaDQgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKGJsb2NrcXVvdGUgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKHRoZWFkIHRoIGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdH0ucHJvc2UgOndoZXJlKHByZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1wcmUtY29kZSk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10dy1wcm9zZS1wcmUtYmcpO3BhZGRpbmctdG9wOi44NTcxNDNlbTtwYWRkaW5nLWlubGluZS1lbmQ6MS4xNDI4NmVtO3BhZGRpbmctYm90dG9tOi44NTcxNDNlbTtib3JkZXItcmFkaXVzOi4zNzVyZW07bWFyZ2luLXRvcDoxLjcxNDI5ZW07bWFyZ2luLWJvdHRvbToxLjcxNDI5ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6MS4xNDI4NmVtO2ZvbnQtc2l6ZTouODc1ZW07Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjEuNzE0Mjk7b3ZlcmZsb3cteDphdXRvfS5wcm9zZSA6d2hlcmUocHJlIGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Zm9udC13ZWlnaHQ6aW5oZXJpdDtjb2xvcjppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtZmFtaWx5OmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwO2JvcmRlci13aWR0aDowO2JvcmRlci1yYWRpdXM6MDtwYWRkaW5nOjB9LnByb3NlIDp3aGVyZShwcmUgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKTpiZWZvcmUsLnByb3NlIDp3aGVyZShwcmUgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKTphZnRlcntjb250ZW50Om5vbmV9LnByb3NlIDp3aGVyZSh0YWJsZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXt0YWJsZS1sYXlvdXQ6YXV0bzt3aWR0aDoxMDAlO21hcmdpbi10b3A6MmVtO21hcmdpbi1ib3R0b206MmVtO2ZvbnQtc2l6ZTouODc1ZW07bGluZS1oZWlnaHQ6MS43MTQyOX0ucHJvc2UgOndoZXJlKHRoZWFkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2JvcmRlci1ib3R0b20td2lkdGg6MXB4O2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tdHctcHJvc2UtdGgtYm9yZGVycyl9LnByb3NlIDp3aGVyZSh0aGVhZCB0aCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1oZWFkaW5ncyk7dmVydGljYWwtYWxpZ246Ym90dG9tO3BhZGRpbmctaW5saW5lLWVuZDouNTcxNDI5ZW07cGFkZGluZy1ib3R0b206LjU3MTQyOWVtO3BhZGRpbmctaW5saW5lLXN0YXJ0Oi41NzE0MjllbTtmb250LXdlaWdodDo2MDB9LnByb3NlIDp3aGVyZSh0Ym9keSB0cik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtib3JkZXItYm90dG9tLXdpZHRoOjFweDtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLXR3LXByb3NlLXRkLWJvcmRlcnMpfS5wcm9zZSA6d2hlcmUodGJvZHkgdHI6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtib3JkZXItYm90dG9tLXdpZHRoOjB9LnByb3NlIDp3aGVyZSh0Ym9keSB0ZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX0ucHJvc2UgOndoZXJlKHRmb290KTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2JvcmRlci10b3Atd2lkdGg6MXB4O2JvcmRlci10b3AtY29sb3I6dmFyKC0tdHctcHJvc2UtdGgtYm9yZGVycyl9LnByb3NlIDp3aGVyZSh0Zm9vdCB0ZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXt2ZXJ0aWNhbC1hbGlnbjp0b3B9LnByb3NlIDp3aGVyZSh0aCx0ZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXt0ZXh0LWFsaWduOnN0YXJ0fS5wcm9zZSA6d2hlcmUoZmlndXJlPiopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ucHJvc2UgOndoZXJlKGZpZ2NhcHRpb24pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6dmFyKC0tdHctcHJvc2UtY2FwdGlvbnMpO21hcmdpbi10b3A6Ljg1NzE0M2VtO2ZvbnQtc2l6ZTouODc1ZW07bGluZS1oZWlnaHQ6MS40Mjg1N30ucHJvc2V7LS10dy1wcm9zZS1ib2R5OiMzNjQxNTM7LS10dy1wcm9zZS1oZWFkaW5nczojMTAxODI4Oy0tdHctcHJvc2UtbGVhZDojNGE1NTY1Oy0tdHctcHJvc2UtbGlua3M6IzEwMTgyODstLXR3LXByb3NlLWJvbGQ6IzEwMTgyODstLXR3LXByb3NlLWNvdW50ZXJzOiM2YTcyODI7LS10dy1wcm9zZS1idWxsZXRzOiNkMWQ1ZGM7LS10dy1wcm9zZS1ocjojZTVlN2ViOy0tdHctcHJvc2UtcXVvdGVzOiMxMDE4Mjg7LS10dy1wcm9zZS1xdW90ZS1ib3JkZXJzOiNlNWU3ZWI7LS10dy1wcm9zZS1jYXB0aW9uczojNmE3MjgyOy0tdHctcHJvc2Uta2JkOiMxMDE4Mjg7LS10dy1wcm9zZS1rYmQtc2hhZG93czojMTAxODI4MWE7LS10dy1wcm9zZS1jb2RlOiMxMDE4Mjg7LS10dy1wcm9zZS1wcmUtY29kZTojZTVlN2ViOy0tdHctcHJvc2UtcHJlLWJnOiMxZTI5Mzk7LS10dy1wcm9zZS10aC1ib3JkZXJzOiNkMWQ1ZGM7LS10dy1wcm9zZS10ZC1ib3JkZXJzOiNlNWU3ZWI7LS10dy1wcm9zZS1pbnZlcnQtYm9keTojZDFkNWRjOy0tdHctcHJvc2UtaW52ZXJ0LWhlYWRpbmdzOiNmZmY7LS10dy1wcm9zZS1pbnZlcnQtbGVhZDojOTlhMWFmOy0tdHctcHJvc2UtaW52ZXJ0LWxpbmtzOiNmZmY7LS10dy1wcm9zZS1pbnZlcnQtYm9sZDojZmZmOy0tdHctcHJvc2UtaW52ZXJ0LWNvdW50ZXJzOiM5OWExYWY7LS10dy1wcm9zZS1pbnZlcnQtYnVsbGV0czojNGE1NTY1Oy0tdHctcHJvc2UtaW52ZXJ0LWhyOiMzNjQxNTM7LS10dy1wcm9zZS1pbnZlcnQtcXVvdGVzOiNmM2Y0ZjY7LS10dy1wcm9zZS1pbnZlcnQtcXVvdGUtYm9yZGVyczojMzY0MTUzOy0tdHctcHJvc2UtaW52ZXJ0LWNhcHRpb25zOiM5OWExYWY7LS10dy1wcm9zZS1pbnZlcnQta2JkOiNmZmY7LS10dy1wcm9zZS1pbnZlcnQta2JkLXNoYWRvd3M6I2ZmZmZmZjFhOy0tdHctcHJvc2UtaW52ZXJ0LWNvZGU6I2ZmZjstLXR3LXByb3NlLWludmVydC1wcmUtY29kZTojZDFkNWRjOy0tdHctcHJvc2UtaW52ZXJ0LXByZS1iZzojMDAwMDAwODA7LS10dy1wcm9zZS1pbnZlcnQtdGgtYm9yZGVyczojNGE1NTY1Oy0tdHctcHJvc2UtaW52ZXJ0LXRkLWJvcmRlcnM6IzM2NDE1Mztmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxLjc1fUBzdXBwb3J0cyAoY29sb3I6bGFiKDAlIDAgMCkpey5wcm9zZXstLXR3LXByb3NlLWJvZHk6bGFiKDI3LjExMzQlIC0uOTU2NDAxIC0xMi4zMjI0KTstLXR3LXByb3NlLWhlYWRpbmdzOmxhYig4LjExODk3JSAuODExMjc5IC0xMi4yNTQpOy0tdHctcHJvc2UtbGVhZDpsYWIoMzUuNjMzNyUgLTEuNTg2OTcgLTEwLjg0MjUpOy0tdHctcHJvc2UtbGlua3M6bGFiKDguMTE4OTclIC44MTEyNzkgLTEyLjI1NCk7LS10dy1wcm9zZS1ib2xkOmxhYig4LjExODk3JSAuODExMjc5IC0xMi4yNTQpOy0tdHctcHJvc2UtY291bnRlcnM6bGFiKDQ3Ljc4NDElIC0uMzkzMTgyIC0xMC4wMjY4KTstLXR3LXByb3NlLWJ1bGxldHM6bGFiKDg1LjEyMzYlIC0uNjEyMjU5IC0zLjcxMzgpOy0tdHctcHJvc2UtaHI6bGFiKDkxLjYyMjklIC0uMTU5MTE1IC0yLjI2NzkxKTstLXR3LXByb3NlLXF1b3RlczpsYWIoOC4xMTg5NyUgLjgxMTI3OSAtMTIuMjU0KTstLXR3LXByb3NlLXF1b3RlLWJvcmRlcnM6bGFiKDkxLjYyMjklIC0uMTU5MTE1IC0yLjI2NzkxKTstLXR3LXByb3NlLWNhcHRpb25zOmxhYig0Ny43ODQxJSAtLjM5MzE4MiAtMTAuMDI2OCk7LS10dy1wcm9zZS1rYmQ6bGFiKDguMTE4OTclIC44MTEyNzkgLTEyLjI1NCk7LS10dy1wcm9zZS1rYmQtc2hhZG93czpsYWIoOC4xMTg5NyUgLjgxMTI3OSAtMTIuMjU0Ly4xKTstLXR3LXByb3NlLWNvZGU6bGFiKDguMTE4OTclIC44MTEyNzkgLTEyLjI1NCk7LS10dy1wcm9zZS1wcmUtY29kZTpsYWIoOTEuNjIyOSUgLS4xNTkxMTUgLTIuMjY3OTEpOy0tdHctcHJvc2UtcHJlLWJnOmxhYigxNi4xMDUxJSAtMS4xODIzOSAtMTEuNzUzMyk7LS10dy1wcm9zZS10aC1ib3JkZXJzOmxhYig4NS4xMjM2JSAtLjYxMjI1OSAtMy43MTM4KTstLXR3LXByb3NlLXRkLWJvcmRlcnM6bGFiKDkxLjYyMjklIC0uMTU5MTE1IC0yLjI2NzkxKTstLXR3LXByb3NlLWludmVydC1ib2R5OmxhYig4NS4xMjM2JSAtLjYxMjI1OSAtMy43MTM4KTstLXR3LXByb3NlLWludmVydC1sZWFkOmxhYig2NS45MjY5JSAtLjgzMjcwNyAtOC4xNzQ3Myk7LS10dy1wcm9zZS1pbnZlcnQtY291bnRlcnM6bGFiKDY1LjkyNjklIC0uODMyNzA3IC04LjE3NDczKTstLXR3LXByb3NlLWludmVydC1idWxsZXRzOmxhYigzNS42MzM3JSAtMS41ODY5NyAtMTAuODQyNSk7LS10dy1wcm9zZS1pbnZlcnQtaHI6bGFiKDI3LjExMzQlIC0uOTU2NDAxIC0xMi4zMjI0KTstLXR3LXByb3NlLWludmVydC1xdW90ZXM6bGFiKDk2LjE1OTYlIC0uMDgyMzQzOCAtMS4xMzU3NSk7LS10dy1wcm9zZS1pbnZlcnQtcXVvdGUtYm9yZGVyczpsYWIoMjcuMTEzNCUgLS45NTY0MDEgLTEyLjMyMjQpOy0tdHctcHJvc2UtaW52ZXJ0LWNhcHRpb25zOmxhYig2NS45MjY5JSAtLjgzMjcwNyAtOC4xNzQ3Myk7LS10dy1wcm9zZS1pbnZlcnQtcHJlLWNvZGU6bGFiKDg1LjEyMzYlIC0uNjEyMjU5IC0zLjcxMzgpOy0tdHctcHJvc2UtaW52ZXJ0LXRoLWJvcmRlcnM6bGFiKDM1LjYzMzclIC0xLjU4Njk3IC0xMC44NDI1KTstLXR3LXByb3NlLWludmVydC10ZC1ib3JkZXJzOmxhYigyNy4xMTM0JSAtLjk1NjQwMSAtMTIuMzIyNCl9fS5wcm9zZSA6d2hlcmUocGljdHVyZT5pbWcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ucHJvc2UgOndoZXJlKGxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6LjVlbTttYXJnaW4tYm90dG9tOi41ZW19LnByb3NlIDp3aGVyZShvbD5saSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKHVsPmxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0Oi4zNzVlbX0ucHJvc2UgOndoZXJlKC5wcm9zZT51bD5saSBwKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6Ljc1ZW07bWFyZ2luLWJvdHRvbTouNzVlbX0ucHJvc2UgOndoZXJlKC5wcm9zZT51bD5saT5wOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4yNWVtfS5wcm9zZSA6d2hlcmUoLnByb3NlPnVsPmxpPnA6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjEuMjVlbX0ucHJvc2UgOndoZXJlKC5wcm9zZT5vbD5saT5wOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4yNWVtfS5wcm9zZSA6d2hlcmUoLnByb3NlPm9sPmxpPnA6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjEuMjVlbX0ucHJvc2UgOndoZXJlKHVsIHVsLHVsIG9sLG9sIHVsLG9sIG9sKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6Ljc1ZW07bWFyZ2luLWJvdHRvbTouNzVlbX0ucHJvc2UgOndoZXJlKGRsKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4yNWVtO21hcmdpbi1ib3R0b206MS4yNWVtfS5wcm9zZSA6d2hlcmUoZGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouNWVtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjEuNjI1ZW19LnByb3NlIDp3aGVyZShocisqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUoaDIrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKGgzKyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlIDp3aGVyZShoNCsqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MH0ucHJvc2UgOndoZXJlKHRoZWFkIHRoOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9LnByb3NlIDp3aGVyZSh0aGVhZCB0aDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLWVuZDowfS5wcm9zZSA6d2hlcmUodGJvZHkgdGQsdGZvb3QgdGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy10b3A6LjU3MTQyOWVtO3BhZGRpbmctaW5saW5lLWVuZDouNTcxNDI5ZW07cGFkZGluZy1ib3R0b206LjU3MTQyOWVtO3BhZGRpbmctaW5saW5lLXN0YXJ0Oi41NzE0MjllbX0ucHJvc2UgOndoZXJlKHRib2R5IHRkOmZpcnN0LWNoaWxkLHRmb290IHRkOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9LnByb3NlIDp3aGVyZSh0Ym9keSB0ZDpsYXN0LWNoaWxkLHRmb290IHRkOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtZW5kOjB9LnByb3NlIDp3aGVyZShmaWd1cmUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoyZW07bWFyZ2luLWJvdHRvbToyZW19LnByb3NlIDp3aGVyZSgucHJvc2U+OmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MH0ucHJvc2UgOndoZXJlKC5wcm9zZT46bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjB9LnByb3NlLWxne2ZvbnQtc2l6ZToxLjEyNXJlbTtsaW5lLWhlaWdodDoxLjc3Nzc4fS5wcm9zZS1sZyA6d2hlcmUocCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMzMzMzNlbTttYXJnaW4tYm90dG9tOjEuMzMzMzNlbX0ucHJvc2UtbGcgOndoZXJlKFtjbGFzc349bGVhZF0pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjA5MDkxZW07bWFyZ2luLWJvdHRvbToxLjA5MDkxZW07Zm9udC1zaXplOjEuMjIyMjJlbTtsaW5lLWhlaWdodDoxLjQ1NDU1fS5wcm9zZS1sZyA6d2hlcmUoYmxvY2txdW90ZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNjY2NjdlbTttYXJnaW4tYm90dG9tOjEuNjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW19LnByb3NlLWxnIDp3aGVyZShoMSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTouODMzMzMzZW07Zm9udC1zaXplOjIuNjY2NjdlbTtsaW5lLWhlaWdodDoxfS5wcm9zZS1sZyA6d2hlcmUoaDIpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjg2NjY3ZW07bWFyZ2luLWJvdHRvbToxLjA2NjY3ZW07Zm9udC1zaXplOjEuNjY2NjdlbTtsaW5lLWhlaWdodDoxLjMzMzMzfS5wcm9zZS1sZyA6d2hlcmUoaDMpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjY2NjY3ZW07bWFyZ2luLWJvdHRvbTouNjY2NjY3ZW07Zm9udC1zaXplOjEuMzMzMzNlbTtsaW5lLWhlaWdodDoxLjV9LnByb3NlLWxnIDp3aGVyZShoNCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNzc3NzhlbTttYXJnaW4tYm90dG9tOi40NDQ0NDRlbTtsaW5lLWhlaWdodDoxLjU1NTU2fS5wcm9zZS1sZyA6d2hlcmUoaW1nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1sZyA6d2hlcmUocGljdHVyZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNzc3NzhlbTttYXJnaW4tYm90dG9tOjEuNzc3NzhlbX0ucHJvc2UtbGcgOndoZXJlKHBpY3R1cmU+aW1nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOjB9LnByb3NlLWxnIDp3aGVyZSh2aWRlbyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNzc3NzhlbTttYXJnaW4tYm90dG9tOjEuNzc3NzhlbX0ucHJvc2UtbGcgOndoZXJlKGtiZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLXRvcDouMjIyMjIyZW07cGFkZGluZy1pbmxpbmUtZW5kOi40NDQ0NDRlbTtwYWRkaW5nLWJvdHRvbTouMjIyMjIyZW07Ym9yZGVyLXJhZGl1czouMzEyNXJlbTtwYWRkaW5nLWlubGluZS1zdGFydDouNDQ0NDQ0ZW07Zm9udC1zaXplOi44ODg4ODllbX0ucHJvc2UtbGcgOndoZXJlKGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Zm9udC1zaXplOi44ODg4ODllbX0ucHJvc2UtbGcgOndoZXJlKGgyIGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Zm9udC1zaXplOi44NjY2NjdlbX0ucHJvc2UtbGcgOndoZXJlKGgzIGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Zm9udC1zaXplOi44NzVlbX0ucHJvc2UtbGcgOndoZXJlKHByZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLXRvcDoxZW07cGFkZGluZy1pbmxpbmUtZW5kOjEuNWVtO3BhZGRpbmctYm90dG9tOjFlbTtib3JkZXItcmFkaXVzOi4zNzVyZW07bWFyZ2luLXRvcDoyZW07bWFyZ2luLWJvdHRvbToyZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6MS41ZW07Zm9udC1zaXplOi44ODg4ODllbTtsaW5lLWhlaWdodDoxLjc1fS5wcm9zZS1sZyA6d2hlcmUob2wpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLWxnIDp3aGVyZSh1bCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMzMzMzNlbTttYXJnaW4tYm90dG9tOjEuMzMzMzNlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjU1NTU2ZW19LnByb3NlLWxnIDp3aGVyZShsaSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi42NjY2NjdlbTttYXJnaW4tYm90dG9tOi42NjY2NjdlbX0ucHJvc2UtbGcgOndoZXJlKG9sPmxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1sZyA6d2hlcmUodWw+bGkpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjQ0NDQ0NGVtfS5wcm9zZS1sZyA6d2hlcmUoLnByb3NlLWxnPnVsPmxpIHApOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouODg4ODg5ZW07bWFyZ2luLWJvdHRvbTouODg4ODg5ZW19LnByb3NlLWxnIDp3aGVyZSgucHJvc2UtbGc+dWw+bGk+cDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMzMzMzNlbX0ucHJvc2UtbGcgOndoZXJlKC5wcm9zZS1sZz51bD5saT5wOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLWJvdHRvbToxLjMzMzMzZW19LnByb3NlLWxnIDp3aGVyZSgucHJvc2UtbGc+b2w+bGk+cDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMzMzMzNlbX0ucHJvc2UtbGcgOndoZXJlKC5wcm9zZS1sZz5vbD5saT5wOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLWJvdHRvbToxLjMzMzMzZW19LnByb3NlLWxnIDp3aGVyZSh1bCB1bCx1bCBvbCxvbCB1bCxvbCBvbCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi44ODg4ODllbTttYXJnaW4tYm90dG9tOi44ODg4ODllbX0ucHJvc2UtbGcgOndoZXJlKGRsKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4zMzMzM2VtO21hcmdpbi1ib3R0b206MS4zMzMzM2VtfS5wcm9zZS1sZyA6d2hlcmUoZHQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjMzMzMzZW19LnByb3NlLWxnIDp3aGVyZShkZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi42NjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjU1NTU2ZW19LnByb3NlLWxnIDp3aGVyZShocik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjMuMTExMTFlbTttYXJnaW4tYm90dG9tOjMuMTExMTFlbX0ucHJvc2UtbGcgOndoZXJlKGhyKyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLWxnIDp3aGVyZShoMisqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1sZyA6d2hlcmUoaDMrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UtbGcgOndoZXJlKGg0KyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowfS5wcm9zZS1sZyA6d2hlcmUodGFibGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Zm9udC1zaXplOi44ODg4ODllbTtsaW5lLWhlaWdodDoxLjV9LnByb3NlLWxnIDp3aGVyZSh0aGVhZCB0aCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1lbmQ6Ljc1ZW07cGFkZGluZy1ib3R0b206Ljc1ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6Ljc1ZW19LnByb3NlLWxnIDp3aGVyZSh0aGVhZCB0aDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1zdGFydDowfS5wcm9zZS1sZyA6d2hlcmUodGhlYWQgdGg6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1lbmQ6MH0ucHJvc2UtbGcgOndoZXJlKHRib2R5IHRkLHRmb290IHRkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctdG9wOi43NWVtO3BhZGRpbmctaW5saW5lLWVuZDouNzVlbTtwYWRkaW5nLWJvdHRvbTouNzVlbTtwYWRkaW5nLWlubGluZS1zdGFydDouNzVlbX0ucHJvc2UtbGcgOndoZXJlKHRib2R5IHRkOmZpcnN0LWNoaWxkLHRmb290IHRkOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9LnByb3NlLWxnIDp3aGVyZSh0Ym9keSB0ZDpsYXN0LWNoaWxkLHRmb290IHRkOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtZW5kOjB9LnByb3NlLWxnIDp3aGVyZShmaWd1cmUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjc3Nzc4ZW07bWFyZ2luLWJvdHRvbToxLjc3Nzc4ZW19LnByb3NlLWxnIDp3aGVyZShmaWd1cmU+Kik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowfS5wcm9zZS1sZyA6d2hlcmUoZmlnY2FwdGlvbik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjFlbTtmb250LXNpemU6Ljg4ODg4OWVtO2xpbmUtaGVpZ2h0OjEuNX0ucHJvc2UtbGcgOndoZXJlKC5wcm9zZS1sZz46Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowfS5wcm9zZS1sZyA6d2hlcmUoLnByb3NlLWxnPjpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi1ib3R0b206MH0ucHJvc2Utc217Zm9udC1zaXplOi44NzVyZW07bGluZS1oZWlnaHQ6MS43MTQyOX0ucHJvc2Utc20gOndoZXJlKHApOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjE0Mjg2ZW07bWFyZ2luLWJvdHRvbToxLjE0Mjg2ZW19LnByb3NlLXNtIDp3aGVyZShbY2xhc3N+PWxlYWRdKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6Ljg4ODg4OWVtO21hcmdpbi1ib3R0b206Ljg4ODg4OWVtO2ZvbnQtc2l6ZToxLjI4NTcxZW07bGluZS1oZWlnaHQ6MS41NTU1Nn0ucHJvc2Utc20gOndoZXJlKGJsb2NrcXVvdGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjMzMzMzZW07bWFyZ2luLWJvdHRvbToxLjMzMzMzZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6MS4xMTExMWVtfS5wcm9zZS1zbSA6d2hlcmUoaDEpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206LjhlbTtmb250LXNpemU6Mi4xNDI4NmVtO2xpbmUtaGVpZ2h0OjEuMn0ucHJvc2Utc20gOndoZXJlKGgyKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS42ZW07bWFyZ2luLWJvdHRvbTouOGVtO2ZvbnQtc2l6ZToxLjQyODU3ZW07bGluZS1oZWlnaHQ6MS40fS5wcm9zZS1zbSA6d2hlcmUoaDMpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjU1NTU2ZW07bWFyZ2luLWJvdHRvbTouNDQ0NDQ0ZW07Zm9udC1zaXplOjEuMjg1NzFlbTtsaW5lLWhlaWdodDoxLjU1NTU2fS5wcm9zZS1zbSA6d2hlcmUoaDQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjQyODU3ZW07bWFyZ2luLWJvdHRvbTouNTcxNDI5ZW07bGluZS1oZWlnaHQ6MS40Mjg1N30ucHJvc2Utc20gOndoZXJlKGltZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2Utc20gOndoZXJlKHBpY3R1cmUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjcxNDI5ZW07bWFyZ2luLWJvdHRvbToxLjcxNDI5ZW19LnByb3NlLXNtIDp3aGVyZShwaWN0dXJlPmltZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowfS5wcm9zZS1zbSA6d2hlcmUodmlkZW8pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjcxNDI5ZW07bWFyZ2luLWJvdHRvbToxLjcxNDI5ZW19LnByb3NlLXNtIDp3aGVyZShrYmQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy10b3A6LjE0Mjg1N2VtO3BhZGRpbmctaW5saW5lLWVuZDouMzU3MTQzZW07cGFkZGluZy1ib3R0b206LjE0Mjg1N2VtO2JvcmRlci1yYWRpdXM6LjMxMjVyZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjM1NzE0M2VtO2ZvbnQtc2l6ZTouODU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2ZvbnQtc2l6ZTouODU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShoMiBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2ZvbnQtc2l6ZTouOWVtfS5wcm9zZS1zbSA6d2hlcmUoaDMgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXNpemU6Ljg4ODg4OWVtfS5wcm9zZS1zbSA6d2hlcmUocHJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctdG9wOi42NjY2NjdlbTtwYWRkaW5nLWlubGluZS1lbmQ6MWVtO3BhZGRpbmctYm90dG9tOi42NjY2NjdlbTtib3JkZXItcmFkaXVzOi4yNXJlbTttYXJnaW4tdG9wOjEuNjY2NjdlbTttYXJnaW4tYm90dG9tOjEuNjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW07Zm9udC1zaXplOi44NTcxNDNlbTtsaW5lLWhlaWdodDoxLjY2NjY3fS5wcm9zZS1zbSA6d2hlcmUob2wpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLXNtIDp3aGVyZSh1bCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMTQyODZlbTttYXJnaW4tYm90dG9tOjEuMTQyODZlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShsaSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi4yODU3MTRlbTttYXJnaW4tYm90dG9tOi4yODU3MTRlbX0ucHJvc2Utc20gOndoZXJlKG9sPmxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1zbSA6d2hlcmUodWw+bGkpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjQyODU3MWVtfS5wcm9zZS1zbSA6d2hlcmUoLnByb3NlLXNtPnVsPmxpIHApOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouNTcxNDI5ZW07bWFyZ2luLWJvdHRvbTouNTcxNDI5ZW19LnByb3NlLXNtIDp3aGVyZSgucHJvc2Utc20+dWw+bGk+cDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMTQyODZlbX0ucHJvc2Utc20gOndoZXJlKC5wcm9zZS1zbT51bD5saT5wOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLWJvdHRvbToxLjE0Mjg2ZW19LnByb3NlLXNtIDp3aGVyZSgucHJvc2Utc20+b2w+bGk+cDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMTQyODZlbX0ucHJvc2Utc20gOndoZXJlKC5wcm9zZS1zbT5vbD5saT5wOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLWJvdHRvbToxLjE0Mjg2ZW19LnByb3NlLXNtIDp3aGVyZSh1bCB1bCx1bCBvbCxvbCB1bCxvbCBvbCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi41NzE0MjllbTttYXJnaW4tYm90dG9tOi41NzE0MjllbX0ucHJvc2Utc20gOndoZXJlKGRsKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4xNDI4NmVtO21hcmdpbi1ib3R0b206MS4xNDI4NmVtfS5wcm9zZS1zbSA6d2hlcmUoZHQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjE0Mjg2ZW19LnByb3NlLXNtIDp3aGVyZShkZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi4yODU3MTRlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShocik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjIuODU3MTRlbTttYXJnaW4tYm90dG9tOjIuODU3MTRlbX0ucHJvc2Utc20gOndoZXJlKGhyKyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLXNtIDp3aGVyZShoMisqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1zbSA6d2hlcmUoaDMrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2Utc20gOndoZXJlKGg0KyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowfS5wcm9zZS1zbSA6d2hlcmUodGFibGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Zm9udC1zaXplOi44NTcxNDNlbTtsaW5lLWhlaWdodDoxLjV9LnByb3NlLXNtIDp3aGVyZSh0aGVhZCB0aCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1lbmQ6MWVtO3BhZGRpbmctYm90dG9tOi42NjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW19LnByb3NlLXNtIDp3aGVyZSh0aGVhZCB0aDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1zdGFydDowfS5wcm9zZS1zbSA6d2hlcmUodGhlYWQgdGg6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1lbmQ6MH0ucHJvc2Utc20gOndoZXJlKHRib2R5IHRkLHRmb290IHRkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctdG9wOi42NjY2NjdlbTtwYWRkaW5nLWlubGluZS1lbmQ6MWVtO3BhZGRpbmctYm90dG9tOi42NjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW19LnByb3NlLXNtIDp3aGVyZSh0Ym9keSB0ZDpmaXJzdC1jaGlsZCx0Zm9vdCB0ZDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1zdGFydDowfS5wcm9zZS1zbSA6d2hlcmUodGJvZHkgdGQ6bGFzdC1jaGlsZCx0Zm9vdCB0ZDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLWVuZDowfS5wcm9zZS1zbSA6d2hlcmUoZmlndXJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS43MTQyOWVtO21hcmdpbi1ib3R0b206MS43MTQyOWVtfS5wcm9zZS1zbSA6d2hlcmUoZmlndXJlPiopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ucHJvc2Utc20gOndoZXJlKGZpZ2NhcHRpb24pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouNjY2NjY3ZW07Zm9udC1zaXplOi44NTcxNDNlbTtsaW5lLWhlaWdodDoxLjMzMzMzfS5wcm9zZS1zbSA6d2hlcmUoLnByb3NlLXNtPjpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjB9LnByb3NlLXNtIDp3aGVyZSgucHJvc2Utc20+Omxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLWJvdHRvbTowfS4tbXQtMXttYXJnaW4tdG9wOmNhbGModmFyKC0tc3BhY2luZykqLTEpfS5tdC0wXC41e21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9Lm10LTF7bWFyZ2luLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tdC0ye21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ubXQtM3ttYXJnaW4tdG9wOmNhbGModmFyKC0tc3BhY2luZykqMyl9Lm10LTR7bWFyZ2luLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5tdC02e21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0ubXQtOHttYXJnaW4tdG9wOmNhbGModmFyKC0tc3BhY2luZykqOCl9Lm10LTEwe21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9Lm10LTEye21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMil9Lm10LWF1dG97bWFyZ2luLXRvcDphdXRvfS5tci0xe21hcmdpbi1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tci0ye21hcmdpbi1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5tci04e21hcmdpbi1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjgpfS4tbWItNHttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqLTQpfS5tYi0xe21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ubWItMVwuNXttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMS41KX0ubWItMnttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMil9Lm1iLTN7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5tYi00e21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0ubWItNnttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqNil9Lm1iLTh7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjgpfS5tYi0xMHttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMTApfS5tbC0xe21hcmdpbi1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMSl9Lm1sLTJ7bWFyZ2luLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ubWwtYXV0b3ttYXJnaW4tbGVmdDphdXRvfS5saW5lLWNsYW1wLTJ7LXdlYmtpdC1saW5lLWNsYW1wOjI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVufS5uby1zY3JvbGxiYXJ7LW1zLW92ZXJmbG93LXN0eWxlOm5vbmU7c2Nyb2xsYmFyLXdpZHRoOm5vbmV9Lm5vLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS5ibG9ja3tkaXNwbGF5OmJsb2NrfS5mbGV4e2Rpc3BsYXk6ZmxleH0uZ3JpZHtkaXNwbGF5OmdyaWR9LmhpZGRlbntkaXNwbGF5Om5vbmV9LmlubGluZXtkaXNwbGF5OmlubGluZX0uaW5saW5lLWJsb2Nre2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5pbmxpbmUtZmxleHtkaXNwbGF5OmlubGluZS1mbGV4fS5saXN0LWl0ZW17ZGlzcGxheTpsaXN0LWl0ZW19LnRhYmxle2Rpc3BsYXk6dGFibGV9LnRhYmxlLWNhcHRpb257ZGlzcGxheTp0YWJsZS1jYXB0aW9ufS50YWJsZS1jZWxse2Rpc3BsYXk6dGFibGUtY2VsbH0udGFibGUtcm93e2Rpc3BsYXk6dGFibGUtcm93fS5maWVsZC1zaXppbmctY29udGVudHtmaWVsZC1zaXppbmc6Y29udGVudH0uYXNwZWN0LVxbMTZcLzlcXXthc3BlY3QtcmF0aW86MTYvOX0uYXNwZWN0LVxbNjEwXC8yMDhcXXthc3BlY3QtcmF0aW86NjEwLzIwOH0uYXNwZWN0LXNxdWFyZXthc3BlY3QtcmF0aW86MX0uc2l6ZS0zXC41e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMy41KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpfS5zaXplLTR7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0uc2l6ZS01e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNSk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNSl9LnNpemUtNnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5zaXplLTd7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo3KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo3KX0uc2l6ZS04e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqOCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqOCl9LnNpemUtOXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjkpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjkpfS5zaXplLTEwe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMTApO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKX0uc2l6ZS0xNHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjE0KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNCl9LnNpemUtZnVsbHt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS5oLTJ7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9LmgtMlwuNXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5oLTN7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMyl9LmgtM1wuNXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpfS5oLTR7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9LmgtNXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX0uaC02e2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5oLTd7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNyl9LmgtOHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0uaC04XCF7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqOCkhaW1wb3J0YW50fS5oLTl7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqOSl9LmgtMTB7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMTApfS5oLTEye2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEyKX0uaC0xNHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNCl9LmgtMTZ7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMTYpfS5oLTIwe2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjIwKX0uaC0yNHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyNCl9LmgtNDB7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNDApfS5oLTY0e2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjY0KX0uaC04MHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4MCl9LmgtXFs4MHB4XF17aGVpZ2h0OjgwcHh9LmgtXFszMDBweFxde2hlaWdodDozMDBweH0uaC1cWzM2MHB4XF17aGVpZ2h0OjM2MHB4fS5oLVxbNDQwcHhcXXtoZWlnaHQ6NDQwcHh9LmgtXFtjYWxjXCgxMDBcJS0xcHhcKVxde2hlaWdodDpjYWxjKDEwMCUgLSAxcHgpfS5oLWF1dG97aGVpZ2h0OmF1dG99LmgtZnVsbHtoZWlnaHQ6MTAwJX0uaC1weHtoZWlnaHQ6MXB4fS5oLXNjcmVlbntoZWlnaHQ6MTAwdmh9Lm1heC1oLVwoLS1hdmFpbGFibGUtaGVpZ2h0XCl7bWF4LWhlaWdodDp2YXIoLS1hdmFpbGFibGUtaGVpZ2h0KX0ubWF4LWgtNjR7bWF4LWhlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjY0KX0ubWF4LWgtNzJ7bWF4LWhlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjcyKX0ubWluLWgtMTZ7bWluLWhlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjE2KX0ubWluLWgtXFs2MHZoXF17bWluLWhlaWdodDo2MHZofS5taW4taC1zY3JlZW57bWluLWhlaWdodDoxMDB2aH0udy1cKC0tYW5jaG9yLXdpZHRoXCl7d2lkdGg6dmFyKC0tYW5jaG9yLXdpZHRoKX0udy0xe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMSl9LnctMnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS53LTN7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0udy0zXC41e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMy41KX0udy00e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNCl9LnctNXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjUpfS53LTZ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0udy03e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNyl9LnctOHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjgpfS53LTl7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo5KX0udy0xMHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKX0udy0xMnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjEyKX0udy0xNHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjE0KX0udy0xNnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjE2KX0udy0yMHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjIwKX0udy0yNHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjI0KX0udy0yOHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjI4KX0udy0zMnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjMyKX0udy00MHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQwKX0udy00NHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQ0KX0udy00OHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQ4KX0udy01Mnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjUyKX0udy01Nnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjU2KX0udy03Mnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjcyKX0udy1cWzEyMHB4XF17d2lkdGg6MTIwcHh9LnctXFsxNDBweFxde3dpZHRoOjE0MHB4fS53LVxbY2FsY1woXCgxMDBcJS0ycmVtXClcLzNcKVxde3dpZHRoOmNhbGMoMzMuMzMzMyUgLSAuNjY2NjY3cmVtKX0udy1hdXRve3dpZHRoOmF1dG99LnctZml0e3dpZHRoOmZpdC1jb250ZW50fS53LWZ1bGx7d2lkdGg6MTAwJX0udy1weHt3aWR0aDoxcHh9Lm1heC13LTB7bWF4LXdpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lm1heC13LTJ4bHttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLTJ4bCl9Lm1heC13LTN4bHttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLTN4bCl9Lm1heC13LTR4bHttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLTR4bCl9Lm1heC13LTd4bHttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLTd4bCl9Lm1heC13LTQ4e21heC13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQ4KX0ubWF4LXctXFsyMDBweFxde21heC13aWR0aDoyMDBweH0ubWF4LXctXFtjYWxjXCgxMDBcJS0ycmVtXClcXXttYXgtd2lkdGg6Y2FsYygxMDAlIC0gMnJlbSl9Lm1heC13LVxbY2FsY1woMTAwdnctMnJlbVwpXF17bWF4LXdpZHRoOmNhbGMoMTAwdncgLSAycmVtKX0ubWF4LXctbGd7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci1sZyl9Lm1heC13LW1ke21heC13aWR0aDp2YXIoLS1jb250YWluZXItbWQpfS5tYXgtdy1ub25le21heC13aWR0aDpub25lfS5tYXgtdy1zbXttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLXNtKX0ubWF4LXcteGx7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci14bCl9Lm1heC13LXhze21heC13aWR0aDp2YXIoLS1jb250YWluZXIteHMpfS5taW4tdy0we21pbi13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5taW4tdy0zMnttaW4td2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozMil9Lm1pbi13LTY0e21pbi13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjY0KX0ubWluLXctXFsycmVtXF17bWluLXdpZHRoOjJyZW19Lm1pbi13LVxbOTZweFxde21pbi13aWR0aDo5NnB4fS5taW4tdy1cWzE1MHB4XF17bWluLXdpZHRoOjE1MHB4fS5mbGV4LTF7ZmxleDoxfS5zaHJpbmstMHtmbGV4LXNocmluazowfS50YWJsZS1maXhlZHt0YWJsZS1sYXlvdXQ6Zml4ZWR9LmNhcHRpb24tYm90dG9te2NhcHRpb24tc2lkZTpib3R0b219Lm9yaWdpbi1cKC0tdHJhbnNmb3JtLW9yaWdpblwpe3RyYW5zZm9ybS1vcmlnaW46dmFyKC0tdHJhbnNmb3JtLW9yaWdpbil9Li10cmFuc2xhdGUteC0xXC8yey0tdHctdHJhbnNsYXRlLXg6Y2FsYyhjYWxjKDEvMioxMDAlKSotMSk7dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0udHJhbnNsYXRlLXgtXFszcHhcXXstLXR3LXRyYW5zbGF0ZS14OjNweDt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS50cmFuc2xhdGUteC1cWzE4cHhcXXstLXR3LXRyYW5zbGF0ZS14OjE4cHg7dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0uLXRyYW5zbGF0ZS15LTFcLzJ7LS10dy10cmFuc2xhdGUteTpjYWxjKGNhbGMoMS8yKjEwMCUpKi0xKTt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS50cmFuc2xhdGUteS0wey0tdHctdHJhbnNsYXRlLXk6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKTt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS5yb3RhdGUtMTgwe3JvdGF0ZToxODBkZWd9LnRyYW5zZm9ybXt0cmFuc2Zvcm06dmFyKC0tdHctcm90YXRlLXgsKXZhcigtLXR3LXJvdGF0ZS15LCl2YXIoLS10dy1yb3RhdGUteiwpdmFyKC0tdHctc2tldy14LCl2YXIoLS10dy1za2V3LXksKX0udHJhbnNmb3JtLWdwdXt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKXZhcigtLXR3LXJvdGF0ZS14LCl2YXIoLS10dy1yb3RhdGUteSwpdmFyKC0tdHctcm90YXRlLXosKXZhcigtLXR3LXNrZXcteCwpdmFyKC0tdHctc2tldy15LCl9LmFuaW1hdGUtcHVsc2V7YW5pbWF0aW9uOnZhcigtLWFuaW1hdGUtcHVsc2UpfS5hbmltYXRlLXNwaW57YW5pbWF0aW9uOnZhcigtLWFuaW1hdGUtc3Bpbil9LmN1cnNvci1jcm9zc2hhaXJ7Y3Vyc29yOmNyb3NzaGFpcn0uY3Vyc29yLWRlZmF1bHR7Y3Vyc29yOmRlZmF1bHR9LmN1cnNvci1ub3QtYWxsb3dlZHtjdXJzb3I6bm90LWFsbG93ZWR9LmN1cnNvci1wb2ludGVye2N1cnNvcjpwb2ludGVyfS5jdXJzb3ItdGV4dHtjdXJzb3I6dGV4dH0ucmVzaXple3Jlc2l6ZTpib3RofS5yZXNpemUtbm9uZXtyZXNpemU6bm9uZX0uc2Nyb2xsLXB5LTF7c2Nyb2xsLXBhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ubGlzdC1kaXNje2xpc3Qtc3R5bGUtdHlwZTpkaXNjfS5saXN0LW5vbmV7bGlzdC1zdHlsZS10eXBlOm5vbmV9LmF1dG8tY29scy1mcntncmlkLWF1dG8tY29sdW1uczptaW5tYXgoMCwxZnIpfS5ncmlkLWZsb3ctY29se2dyaWQtYXV0by1mbG93OmNvbHVtbn0uYXV0by1yb3dzLW1pbntncmlkLWF1dG8tcm93czptaW4tY29udGVudH0uZ3JpZC1jb2xzLTF7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgxLG1pbm1heCgwLDFmcikpfS5ncmlkLWNvbHMtMntncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDIsbWlubWF4KDAsMWZyKSl9LmZsZXgtY29se2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZmxleC1jb2wtcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZX0uZmxleC1yb3d7ZmxleC1kaXJlY3Rpb246cm93fS5mbGV4LXdyYXB7ZmxleC13cmFwOndyYXB9LmNvbnRlbnQtc3RhcnR7YWxpZ24tY29udGVudDpmbGV4LXN0YXJ0fS5pdGVtcy1iYXNlbGluZXthbGlnbi1pdGVtczpiYXNlbGluZX0uaXRlbXMtY2VudGVye2FsaWduLWl0ZW1zOmNlbnRlcn0uaXRlbXMtZW5ke2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5pdGVtcy1zdGFydHthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5pdGVtcy1zdHJldGNoe2FsaWduLWl0ZW1zOnN0cmV0Y2h9Lmp1c3RpZnktYXJvdW5ke2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmR9Lmp1c3RpZnktYmV0d2VlbntqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0uanVzdGlmeS1jZW50ZXJ7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uanVzdGlmeS1lbmR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS5qdXN0aWZ5LXN0YXJ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5nYXAtMFwuNXtnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9LmdhcC0xe2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5nYXAtMVwuNXtnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxLjUpfS5nYXAtMntnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0uZ2FwLTJcLjV7Z2FwOmNhbGModmFyKC0tc3BhY2luZykqMi41KX0uZ2FwLTN7Z2FwOmNhbGModmFyKC0tc3BhY2luZykqMyl9LmdhcC00e2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5nYXAtNntnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0uZ2FwLTh7Z2FwOmNhbGModmFyKC0tc3BhY2luZykqOCl9LmdhcC1cWzJweFxde2dhcDoycHh9OndoZXJlKC5zcGFjZS15LTBcLjU+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSouNSkqdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSk7bWFyZ2luLWJsb2NrLWVuZDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqLjUpKmNhbGMoMSAtIHZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpKX06d2hlcmUoLnNwYWNlLXktMT46bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tYmxvY2stc3RhcnQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEpKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEpKmNhbGMoMSAtIHZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpKX06d2hlcmUoLnNwYWNlLXktMVwuNT46bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tYmxvY2stc3RhcnQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSkqdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSk7bWFyZ2luLWJsb2NrLWVuZDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqMS41KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTI+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSoyKSp2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKTttYXJnaW4tYmxvY2stZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSoyKSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTM+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSozKSp2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKTttYXJnaW4tYmxvY2stZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSozKSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTQ+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo0KSp2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKTttYXJnaW4tYmxvY2stZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo0KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTY+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo2KSp2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKTttYXJnaW4tYmxvY2stZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo2KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTg+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo4KSp2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKTttYXJnaW4tYmxvY2stZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo4KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTEwPjpub3QoOmxhc3QtY2hpbGQpKXstLXR3LXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi1ibG9jay1zdGFydDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqMTApKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEwKSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9LmdhcC14LTR7Y29sdW1uLWdhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5nYXAteC04e2NvbHVtbi1nYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX06d2hlcmUoLi1zcGFjZS14LTI+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteC1yZXZlcnNlOjA7bWFyZ2luLWlubGluZS1zdGFydDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqLTIpKnZhcigtLXR3LXNwYWNlLXgtcmV2ZXJzZSkpO21hcmdpbi1pbmxpbmUtZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSotMikqY2FsYygxIC0gdmFyKC0tdHctc3BhY2UteC1yZXZlcnNlKSkpfS5nYXAteS0xXC41e3Jvdy1nYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxLjUpfS5nYXAteS01e3Jvdy1nYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX06d2hlcmUoLmRpdmlkZS15Pjpub3QoOmxhc3QtY2hpbGQpKXstLXR3LWRpdmlkZS15LXJldmVyc2U6MDtib3JkZXItYm90dG9tLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXRvcC1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci10b3Atd2lkdGg6Y2FsYygxcHgqdmFyKC0tdHctZGl2aWRlLXktcmV2ZXJzZSkpO2JvcmRlci1ib3R0b20td2lkdGg6Y2FsYygxcHgqY2FsYygxIC0gdmFyKC0tdHctZGl2aWRlLXktcmV2ZXJzZSkpKX06d2hlcmUoLmRpdmlkZS1ib3JkZXI+Om5vdCg6bGFzdC1jaGlsZCkpe2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXIpfS5zZWxmLXN0YXJ0e2FsaWduLXNlbGY6ZmxleC1zdGFydH0uanVzdGlmeS1zZWxmLWVuZHtqdXN0aWZ5LXNlbGY6ZmxleC1lbmR9LnRydW5jYXRle3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbn0ub3ZlcmZsb3ctYXV0b3tvdmVyZmxvdzphdXRvfS5vdmVyZmxvdy1oaWRkZW57b3ZlcmZsb3c6aGlkZGVufS5vdmVyZmxvdy14LWF1dG97b3ZlcmZsb3cteDphdXRvfS5vdmVyZmxvdy14LWhpZGRlbntvdmVyZmxvdy14OmhpZGRlbn0ub3ZlcmZsb3cteC1zY3JvbGx7b3ZlcmZsb3cteDpzY3JvbGx9Lm92ZXJmbG93LXktYXV0b3tvdmVyZmxvdy15OmF1dG99LnJvdW5kZWR7Ym9yZGVyLXJhZGl1czouMjVyZW19LnJvdW5kZWQtMnhse2JvcmRlci1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuOCl9LnJvdW5kZWQtNHhse2JvcmRlci1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjIuNil9LnJvdW5kZWQtXFtjYWxjXCh2YXJcKC0tcmFkaXVzXCktM3B4XClcXXtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSAtIDNweCl9LnJvdW5kZWQtXFttaW5cKHZhclwoLS1yYWRpdXMtbWRcKVwsMTBweFwpXF17Ym9yZGVyLXJhZGl1czptaW4odmFyKC0tcmFkaXVzLW1kKSwxMHB4KX0ucm91bmRlZC1cW21pblwodmFyXCgtLXJhZGl1cy1tZFwpXCwxMnB4XClcXXtib3JkZXItcmFkaXVzOm1pbih2YXIoLS1yYWRpdXMtbWQpLDEycHgpfS5yb3VuZGVkLWZ1bGx7Ym9yZGVyLXJhZGl1czozLjQwMjgyZTM4cHh9LnJvdW5kZWQtbGd7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMpfS5yb3VuZGVkLWxnXCF7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMpIWltcG9ydGFudH0ucm91bmRlZC1tZHtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSouOCl9LnJvdW5kZWQtbm9uZXtib3JkZXItcmFkaXVzOjB9LnJvdW5kZWQtc217Ym9yZGVyLXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqLjYpfS5yb3VuZGVkLXhse2JvcmRlci1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuNCl9LnJvdW5kZWQteGxcIXtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpIWltcG9ydGFudH0ucm91bmRlZC10LTJ4bHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjgpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjgpfS5yb3VuZGVkLXQteGx7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqMS40KTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqMS40KX0ucm91bmRlZC1iLXhse2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuNCl9LmJvcmRlcntib3JkZXItc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItd2lkdGg6MXB4fS5ib3JkZXItMHtib3JkZXItc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItd2lkdGg6MH0uYm9yZGVyLTJ7Ym9yZGVyLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXdpZHRoOjJweH0uYm9yZGVyLXR7Ym9yZGVyLXRvcC1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci10b3Atd2lkdGg6MXB4fS5ib3JkZXItcntib3JkZXItcmlnaHQtc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItcmlnaHQtd2lkdGg6MXB4fS5ib3JkZXItYntib3JkZXItYm90dG9tLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLWJvdHRvbS13aWR0aDoxcHh9LmJvcmRlci1iLTJ7Ym9yZGVyLWJvdHRvbS1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1ib3R0b20td2lkdGg6MnB4fS5ib3JkZXItZGFzaGVkey0tdHctYm9yZGVyLXN0eWxlOmRhc2hlZDtib3JkZXItc3R5bGU6ZGFzaGVkfS5ib3JkZXItYm9yZGVye2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXIpfS5ib3JkZXItZGFuZ2VyXC8zMHtib3JkZXItY29sb3I6dmFyKC0tZGFuZ2VyKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJvcmRlci1kYW5nZXJcLzMwe2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGFuZ2VyKTMwJSx0cmFuc3BhcmVudCl9fS5ib3JkZXItZGVzdHJ1Y3RpdmVcLzMwe2JvcmRlci1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ib3JkZXItZGVzdHJ1Y3RpdmVcLzMwe2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMzAlLHRyYW5zcGFyZW50KX19LmJvcmRlci1pbnB1dCwuYm9yZGVyLWlucHV0XC8zMHtib3JkZXItY29sb3I6dmFyKC0taW5wdXQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYm9yZGVyLWlucHV0XC8zMHtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWlucHV0KTMwJSx0cmFuc3BhcmVudCl9fS5ib3JkZXItcHJpbWFyeXtib3JkZXItY29sb3I6dmFyKC0tcHJpbWFyeSl9LmJvcmRlci1yZWQtNTAwXC80MHtib3JkZXItY29sb3I6I2ZiMmMzNjY2fUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYm9yZGVyLXJlZC01MDBcLzQwe2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tY29sb3ItcmVkLTUwMCk0MCUsdHJhbnNwYXJlbnQpfX0uYm9yZGVyLXN1Y2Nlc3NcLzMwe2JvcmRlci1jb2xvcjp2YXIoLS1zdWNjZXNzKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJvcmRlci1zdWNjZXNzXC8zMHtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXN1Y2Nlc3MpMzAlLHRyYW5zcGFyZW50KX19LmJvcmRlci10cmFuc3BhcmVudHtib3JkZXItY29sb3I6IzAwMDB9LmJnLVxbXCMyMjlFRDlcXXtiYWNrZ3JvdW5kLWNvbG9yOiMyMjllZDl9LmJnLWJhY2tncm91bmQsLmJnLWJhY2tncm91bmRcLzgwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tYmFja2dyb3VuZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1iYWNrZ3JvdW5kXC84MHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1iYWNrZ3JvdW5kKTgwJSx0cmFuc3BhcmVudCl9fS5iZy1ibGFja1wvMTB7YmFja2dyb3VuZC1jb2xvcjojMDAwMDAwMWF9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1ibGFja1wvMTB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tY29sb3ItYmxhY2spMTAlLHRyYW5zcGFyZW50KX19LmJnLWJsYWNrXC81MHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwMDA4MH1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLWJsYWNrXC81MHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1jb2xvci1ibGFjayk1MCUsdHJhbnNwYXJlbnQpfX0uYmctYm9yZGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tYm9yZGVyKX0uYmctY2FyZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNhcmQpfS5iZy1kYW5nZXIsLmJnLWRhbmdlclwvNXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRhbmdlcil9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1kYW5nZXJcLzV7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGFuZ2VyKTUlLHRyYW5zcGFyZW50KX19LmJnLWRlc3RydWN0aXZlLC5iZy1kZXN0cnVjdGl2ZVwvNXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLWRlc3RydWN0aXZlXC81e2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTUlLHRyYW5zcGFyZW50KX19LmJnLWRlc3RydWN0aXZlXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLWRlc3RydWN0aXZlXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSkxMCUsdHJhbnNwYXJlbnQpfX0uYmctaW5wdXRcLzMwe2JhY2tncm91bmQtY29sb3I6dmFyKC0taW5wdXQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctaW5wdXRcLzMwe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWlucHV0KTMwJSx0cmFuc3BhcmVudCl9fS5iZy1tdXRlZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX0uYmctbXV0ZWQtZm9yZWdyb3VuZFwvMjV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLW11dGVkLWZvcmVncm91bmRcLzI1e2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLW11dGVkLWZvcmVncm91bmQpMjUlLHRyYW5zcGFyZW50KX19LmJnLW11dGVkXC8zMHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLW11dGVkXC8zMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZCkzMCUsdHJhbnNwYXJlbnQpfX0uYmctbXV0ZWRcLzQwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctbXV0ZWRcLzQwe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLW11dGVkKTQwJSx0cmFuc3BhcmVudCl9fS5iZy1tdXRlZFwvNTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1tdXRlZFwvNTB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tbXV0ZWQpNTAlLHRyYW5zcGFyZW50KX19LmJnLXBvcG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wb3BvdmVyKX0uYmctcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXByaW1hcnkpfS5iZy1wcmltYXJ5LWZvcmVncm91bmRcLzIwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tcHJpbWFyeS1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXByaW1hcnktZm9yZWdyb3VuZFwvMjB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcHJpbWFyeS1mb3JlZ3JvdW5kKTIwJSx0cmFuc3BhcmVudCl9fS5iZy1wcmltYXJ5XC81e2JhY2tncm91bmQtY29sb3I6dmFyKC0tcHJpbWFyeSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1wcmltYXJ5XC81e2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXByaW1hcnkpNSUsdHJhbnNwYXJlbnQpfX0uYmctcHJpbWFyeVwvMTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wcmltYXJ5KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXByaW1hcnlcLzEwe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXByaW1hcnkpMTAlLHRyYW5zcGFyZW50KX19LmJnLXByaW1hcnlcLzE1e2JhY2tncm91bmQtY29sb3I6dmFyKC0tcHJpbWFyeSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1wcmltYXJ5XC8xNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1wcmltYXJ5KTE1JSx0cmFuc3BhcmVudCl9fS5iZy1zZWNvbmRhcnl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zZWNvbmRhcnkpfS5iZy1zdWNjZXNzLC5iZy1zdWNjZXNzXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXN1Y2Nlc3MpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctc3VjY2Vzc1wvMTB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tc3VjY2VzcykxMCUsdHJhbnNwYXJlbnQpfX0uYmctc3VjY2Vzc1wvMTV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zdWNjZXNzKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXN1Y2Nlc3NcLzE1e2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXN1Y2Nlc3MpMTUlLHRyYW5zcGFyZW50KX19LmJnLXN1cmZhY2UsLmJnLXN1cmZhY2VcLzkwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tc3VyZmFjZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1zdXJmYWNlXC85MHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1zdXJmYWNlKTkwJSx0cmFuc3BhcmVudCl9fS5iZy10cmFuc3BhcmVudHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5iZy13YXJuaW5nXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXdhcm5pbmcpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctd2FybmluZ1wvMTB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0td2FybmluZykxMCUsdHJhbnNwYXJlbnQpfX0uYmctd2hpdGV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci13aGl0ZSl9LmJnLXdoaXRlXC8xNXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYyNn1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXdoaXRlXC8xNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1jb2xvci13aGl0ZSkxNSUsdHJhbnNwYXJlbnQpfX0uYmctZ3JhZGllbnQtdG8tYnJ7LS10dy1ncmFkaWVudC1wb3NpdGlvbjp0byBib3R0b20gcmlnaHQgaW4gb2tsYWI7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodmFyKC0tdHctZ3JhZGllbnQtc3RvcHMpKX0uZnJvbS1cW1wjMzhBRkUzXF17LS10dy1ncmFkaWVudC1mcm9tOiMzOGFmZTM7LS10dy1ncmFkaWVudC1zdG9wczp2YXIoLS10dy1ncmFkaWVudC12aWEtc3RvcHMsdmFyKC0tdHctZ3JhZGllbnQtcG9zaXRpb24pLHZhcigtLXR3LWdyYWRpZW50LWZyb20pdmFyKC0tdHctZ3JhZGllbnQtZnJvbS1wb3NpdGlvbiksdmFyKC0tdHctZ3JhZGllbnQtdG8pdmFyKC0tdHctZ3JhZGllbnQtdG8tcG9zaXRpb24pKX0uZnJvbS1cW1wjMjI5RUQ5XF17LS10dy1ncmFkaWVudC1mcm9tOiMyMjllZDk7LS10dy1ncmFkaWVudC1zdG9wczp2YXIoLS10dy1ncmFkaWVudC12aWEtc3RvcHMsdmFyKC0tdHctZ3JhZGllbnQtcG9zaXRpb24pLHZhcigtLXR3LWdyYWRpZW50LWZyb20pdmFyKC0tdHctZ3JhZGllbnQtZnJvbS1wb3NpdGlvbiksdmFyKC0tdHctZ3JhZGllbnQtdG8pdmFyKC0tdHctZ3JhZGllbnQtdG8tcG9zaXRpb24pKX0udG8tXFtcIzFGOTdDQVxdey0tdHctZ3JhZGllbnQtdG86IzFmOTdjYTstLXR3LWdyYWRpZW50LXN0b3BzOnZhcigtLXR3LWdyYWRpZW50LXZpYS1zdG9wcyx2YXIoLS10dy1ncmFkaWVudC1wb3NpdGlvbiksdmFyKC0tdHctZ3JhZGllbnQtZnJvbSl2YXIoLS10dy1ncmFkaWVudC1mcm9tLXBvc2l0aW9uKSx2YXIoLS10dy1ncmFkaWVudC10byl2YXIoLS10dy1ncmFkaWVudC10by1wb3NpdGlvbikpfS50by1cW1wjMWE3ZmIwXF17LS10dy1ncmFkaWVudC10bzojMWE3ZmIwOy0tdHctZ3JhZGllbnQtc3RvcHM6dmFyKC0tdHctZ3JhZGllbnQtdmlhLXN0b3BzLHZhcigtLXR3LWdyYWRpZW50LXBvc2l0aW9uKSx2YXIoLS10dy1ncmFkaWVudC1mcm9tKXZhcigtLXR3LWdyYWRpZW50LWZyb20tcG9zaXRpb24pLHZhcigtLXR3LWdyYWRpZW50LXRvKXZhcigtLXR3LWdyYWRpZW50LXRvLXBvc2l0aW9uKSl9LmJnLWNsaXAtcGFkZGluZ3tiYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3h9Lm9iamVjdC1jb3ZlcntvYmplY3QtZml0OmNvdmVyfS5wLTB7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5wLTBcLjV7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKi41KX0ucC0xe3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ucC0ye3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucC0ze3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0ucC00e3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0ucC01e3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX0ucC02e3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0ucC0xMntwYWRkaW5nOmNhbGModmFyKC0tc3BhY2luZykqMTIpfS5wLVxbM3B4XF17cGFkZGluZzozcHh9LnB4LTF7cGFkZGluZy1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ucHgtMVwuNXtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9LnB4LTJ7cGFkZGluZy1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucHgtMlwuNXtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjIuNSl9LnB4LTN7cGFkZGluZy1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0ucHgtNHtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5weC01e3BhZGRpbmctaW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqNSl9LnB5LTBcLjV7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKi41KX0ucHktMXtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMSl9LnB5LTFcLjV7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9LnB5LTJ7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5weS0yXC41e3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5weS0ze3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0ucHktM1wuNXtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMy41KX0ucHktNHtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqNCl9LnB5LTZ7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5weS04e3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0ucHktMTB7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKX0ucHktMTJ7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEyKX0ucHktMTZ7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjE2KX0ucHQtMntwYWRkaW5nLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5wdC0ze3BhZGRpbmctdG9wOmNhbGModmFyKC0tc3BhY2luZykqMyl9LnB0LTR7cGFkZGluZy10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0ucHQtNntwYWRkaW5nLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5wci0ye3BhZGRpbmctcmlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucHItNHtwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9LnByLTh7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjgpfS5wci0xMntwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMTIpfS5wYi0we3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMCl9LnBiLTF7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ucGItMntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5wYi02e3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqNil9LnBiLTh7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0ucGItMTB7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9LnBiLTE2e3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMTYpfS5wbC0xXC41e3BhZGRpbmctbGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9LnBsLTJ7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMil9LnBsLTV7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqNSl9LnBsLTh7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqOCl9LnBsLTl7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqOSl9LnRleHQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyfS50ZXh0LWxlZnR7dGV4dC1hbGlnbjpsZWZ0fS50ZXh0LXJpZ2h0e3RleHQtYWxpZ246cmlnaHR9LmFsaWduLW1pZGRsZXt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmZvbnQtbW9ub3tmb250LWZhbWlseTp2YXIoLS1mb250LWludGVyKSwiSW50ZXIiLHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sc2Fucy1zZXJpZn0udGV4dC0yeGx7Zm9udC1zaXplOnZhcigtLXRleHQtMnhsKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtMnhsLS1saW5lLWhlaWdodCkpfS50ZXh0LTN4bHtmb250LXNpemU6dmFyKC0tdGV4dC0zeGwpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC0zeGwtLWxpbmUtaGVpZ2h0KSl9LnRleHQtNHhse2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LTR4bCk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LTR4bC0tbGluZS1oZWlnaHQpKX0udGV4dC02eGx7Zm9udC1zaXplOnZhcigtLXRleHQtNnhsKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtNnhsLS1saW5lLWhlaWdodCkpfS50ZXh0LWJhc2V7Zm9udC1zaXplOnZhcigtLXRleHQtYmFzZSk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LWJhc2UtLWxpbmUtaGVpZ2h0KSl9LnRleHQtbGd7Zm9udC1zaXplOnZhcigtLXRleHQtbGcpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC1sZy0tbGluZS1oZWlnaHQpKX0udGV4dC1zbXtmb250LXNpemU6dmFyKC0tdGV4dC1zbSk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LXNtLS1saW5lLWhlaWdodCkpfS50ZXh0LXhse2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LXhsKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQteGwtLWxpbmUtaGVpZ2h0KSl9LnRleHQteHN7Zm9udC1zaXplOnZhcigtLXRleHQteHMpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC14cy0tbGluZS1oZWlnaHQpKX0udGV4dC1cWzBcLjhyZW1cXXtmb250LXNpemU6LjhyZW19LnRleHQtXFsxMHB4XF17Zm9udC1zaXplOjEwcHh9LnRleHQtXFsxMXB4XF17Zm9udC1zaXplOjExcHh9LmxlYWRpbmctbm9uZXstLXR3LWxlYWRpbmc6MTtsaW5lLWhlaWdodDoxfS5sZWFkaW5nLXJlbGF4ZWR7LS10dy1sZWFkaW5nOnZhcigtLWxlYWRpbmctcmVsYXhlZCk7bGluZS1oZWlnaHQ6dmFyKC0tbGVhZGluZy1yZWxheGVkKX0ubGVhZGluZy1zbnVney0tdHctbGVhZGluZzp2YXIoLS1sZWFkaW5nLXNudWcpO2xpbmUtaGVpZ2h0OnZhcigtLWxlYWRpbmctc251Zyl9LmxlYWRpbmctdGlnaHR7LS10dy1sZWFkaW5nOnZhcigtLWxlYWRpbmctdGlnaHQpO2xpbmUtaGVpZ2h0OnZhcigtLWxlYWRpbmctdGlnaHQpfS5mb250LWJvbGR7LS10dy1mb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1ib2xkKTtmb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1ib2xkKX0uZm9udC1tZWRpdW17LS10dy1mb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO2ZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSl9LmZvbnQtbm9ybWFsey0tdHctZm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtbm9ybWFsKTtmb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpfS5mb250LXNlbWlib2xkey0tdHctZm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO2ZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKX0udHJhY2tpbmctdGlnaHR7LS10dy10cmFja2luZzp2YXIoLS10cmFja2luZy10aWdodCk7bGV0dGVyLXNwYWNpbmc6dmFyKC0tdHJhY2tpbmctdGlnaHQpfS50cmFja2luZy13aWRley0tdHctdHJhY2tpbmc6dmFyKC0tdHJhY2tpbmctd2lkZSk7bGV0dGVyLXNwYWNpbmc6dmFyKC0tdHJhY2tpbmctd2lkZSl9LnRyYWNraW5nLXdpZGVzdHstLXR3LXRyYWNraW5nOnZhcigtLXRyYWNraW5nLXdpZGVzdCk7bGV0dGVyLXNwYWNpbmc6dmFyKC0tdHJhY2tpbmctd2lkZXN0KX0uYnJlYWstYWxse3dvcmQtYnJlYWs6YnJlYWstYWxsfS53aGl0ZXNwYWNlLW5vcm1hbHt3aGl0ZS1zcGFjZTpub3JtYWx9LndoaXRlc3BhY2Utbm93cmFwe3doaXRlLXNwYWNlOm5vd3JhcH0ud2hpdGVzcGFjZS1wcmUtbGluZXt3aGl0ZS1zcGFjZTpwcmUtbGluZX0ud2hpdGVzcGFjZS1wcmUtd3JhcHt3aGl0ZS1zcGFjZTpwcmUtd3JhcH0udGV4dC1cW1wjMjJDNTVFXF17Y29sb3I6IzIyYzU1ZX0udGV4dC1cW1wjMjI5RUQ5XF17Y29sb3I6IzIyOWVkOX0udGV4dC1cW1wjMTg3OUE4XF17Y29sb3I6IzE4NzlhOH0udGV4dC1cW1wjRUY0NDQ0XF17Y29sb3I6I2VmNDQ0NH0udGV4dC1jYXJkLWZvcmVncm91bmR7Y29sb3I6dmFyKC0tY2FyZC1mb3JlZ3JvdW5kKX0udGV4dC1kYW5nZXJ7Y29sb3I6dmFyKC0tZGFuZ2VyKX0udGV4dC1kZXN0cnVjdGl2ZXtjb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9LnRleHQtZm9yZWdyb3VuZCwudGV4dC1mb3JlZ3JvdW5kXC82MHtjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LnRleHQtZm9yZWdyb3VuZFwvNjB7Y29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWZvcmVncm91bmQpNjAlLHRyYW5zcGFyZW50KX19LnRleHQtZm9yZWdyb3VuZFwvODB7Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey50ZXh0LWZvcmVncm91bmRcLzgwe2NvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1mb3JlZ3JvdW5kKTgwJSx0cmFuc3BhcmVudCl9fS50ZXh0LWdyZWVuLTYwMHtjb2xvcjp2YXIoLS1jb2xvci1ncmVlbi02MDApfS50ZXh0LW11dGVkLWZvcmVncm91bmQsLnRleHQtbXV0ZWQtZm9yZWdyb3VuZFwvNjB7Y29sb3I6dmFyKC0tbXV0ZWQtZm9yZWdyb3VuZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey50ZXh0LW11dGVkLWZvcmVncm91bmRcLzYwe2NvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKTYwJSx0cmFuc3BhcmVudCl9fS50ZXh0LW9yYW5nZS01MDB7Y29sb3I6dmFyKC0tY29sb3Itb3JhbmdlLTUwMCl9LnRleHQtcG9wb3Zlci1mb3JlZ3JvdW5ke2NvbG9yOnZhcigtLXBvcG92ZXItZm9yZWdyb3VuZCl9LnRleHQtcHJpbWFyeXtjb2xvcjp2YXIoLS1wcmltYXJ5KX0udGV4dC1wcmltYXJ5LWZvcmVncm91bmR7Y29sb3I6dmFyKC0tcHJpbWFyeS1mb3JlZ3JvdW5kKX0udGV4dC1yZWQtNTAwe2NvbG9yOnZhcigtLWNvbG9yLXJlZC01MDApfS50ZXh0LXNlY29uZGFyeS1mb3JlZ3JvdW5ke2NvbG9yOnZhcigtLXNlY29uZGFyeS1mb3JlZ3JvdW5kKX0udGV4dC1zdWNjZXNze2NvbG9yOnZhcigtLXN1Y2Nlc3MpfS50ZXh0LXdhcm5pbmd7Y29sb3I6dmFyKC0td2FybmluZyl9LnRleHQtd2hpdGV7Y29sb3I6dmFyKC0tY29sb3Itd2hpdGUpfS50ZXh0LXdoaXRlXC84NXtjb2xvcjojZmZmZmZmZDl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey50ZXh0LXdoaXRlXC84NXtjb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tY29sb3Itd2hpdGUpODUlLHRyYW5zcGFyZW50KX19LnRleHQtd2hpdGVcLzkwe2NvbG9yOiNmZmZmZmZlNn1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LnRleHQtd2hpdGVcLzkwe2NvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1jb2xvci13aGl0ZSk5MCUsdHJhbnNwYXJlbnQpfX0udGV4dC13aGl0ZVwvOTV7Y29sb3I6I2ZmZmZmZmYyfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsudGV4dC13aGl0ZVwvOTV7Y29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWNvbG9yLXdoaXRlKTk1JSx0cmFuc3BhcmVudCl9fS5jYXBpdGFsaXple3RleHQtdHJhbnNmb3JtOmNhcGl0YWxpemV9LnVwcGVyY2FzZXt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9Lml0YWxpY3tmb250LXN0eWxlOml0YWxpY30udGFidWxhci1udW1zey0tdHctbnVtZXJpYy1zcGFjaW5nOnRhYnVsYXItbnVtcztmb250LXZhcmlhbnQtbnVtZXJpYzp2YXIoLS10dy1vcmRpbmFsLCl2YXIoLS10dy1zbGFzaGVkLXplcm8sKXZhcigtLXR3LW51bWVyaWMtZmlndXJlLCl2YXIoLS10dy1udW1lcmljLXNwYWNpbmcsKXZhcigtLXR3LW51bWVyaWMtZnJhY3Rpb24sKX0udW5kZXJsaW5le3RleHQtZGVjb3JhdGlvbi1saW5lOnVuZGVybGluZX0udW5kZXJsaW5lLW9mZnNldC0ye3RleHQtdW5kZXJsaW5lLW9mZnNldDoycHh9LnVuZGVybGluZS1vZmZzZXQtNHt0ZXh0LXVuZGVybGluZS1vZmZzZXQ6NHB4fS5hbnRpYWxpYXNlZHstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZX0ub3BhY2l0eS0we29wYWNpdHk6MH0ub3BhY2l0eS0zMHtvcGFjaXR5Oi4zfS5vcGFjaXR5LTQwe29wYWNpdHk6LjR9Lm9wYWNpdHktNTB7b3BhY2l0eTouNX0ub3BhY2l0eS03MHtvcGFjaXR5Oi43fS5iZy1ibGVuZC1jb2xvcntiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6Y29sb3J9LnNoYWRvd3stLXR3LXNoYWRvdzowIDFweCAzcHggMCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSwwIDFweCAycHggLTFweCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnNoYWRvdy1sZ3stLXR3LXNoYWRvdzowIDEwcHggMTVweCAtM3B4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpLDAgNHB4IDZweCAtNHB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uc2hhZG93LW1key0tdHctc2hhZG93OjAgNHB4IDZweCAtMXB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpLDAgMnB4IDRweCAtMnB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uc2hhZG93LW5vbmV7LS10dy1zaGFkb3c6MCAwICMwMDAwO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uc2hhZG93LW5vbmVcIXstLXR3LXNoYWRvdzowIDAgIzAwMDAhaW1wb3J0YW50O2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KSFpbXBvcnRhbnR9LnNoYWRvdy1zbXstLXR3LXNoYWRvdzowIDFweCAzcHggMCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSwwIDFweCAycHggLTFweCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnNoYWRvdy14c3stLXR3LXNoYWRvdzowIDFweCAycHggMCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDBkKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctMHstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMHB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctMXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMXB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctMnstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMnB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctYmFja2dyb3VuZHstLXR3LXJpbmctY29sb3I6dmFyKC0tYmFja2dyb3VuZCl9LnJpbmctZm9yZWdyb3VuZFwvMTB7LS10dy1yaW5nLWNvbG9yOnZhcigtLWZvcmVncm91bmQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsucmluZy1mb3JlZ3JvdW5kXC8xMHstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWZvcmVncm91bmQpMTAlLHRyYW5zcGFyZW50KX19LnJpbmctcHJpbWFyeVwvMzB7LS10dy1yaW5nLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsucmluZy1wcmltYXJ5XC8zMHstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXByaW1hcnkpMzAlLHRyYW5zcGFyZW50KX19Lm91dGxpbmUtaGlkZGVuey0tdHctb3V0bGluZS1zdHlsZTpub25lO291dGxpbmUtc3R5bGU6bm9uZX1AbWVkaWEgKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsub3V0bGluZS1oaWRkZW57b3V0bGluZS1vZmZzZXQ6MnB4O291dGxpbmU6MnB4IHNvbGlkICMwMDAwfX0ub3V0bGluZXtvdXRsaW5lLXN0eWxlOnZhcigtLXR3LW91dGxpbmUtc3R5bGUpO291dGxpbmUtd2lkdGg6MXB4fS5maWx0ZXJ7ZmlsdGVyOnZhcigtLXR3LWJsdXIsKXZhcigtLXR3LWJyaWdodG5lc3MsKXZhcigtLXR3LWNvbnRyYXN0LCl2YXIoLS10dy1ncmF5c2NhbGUsKXZhcigtLXR3LWh1ZS1yb3RhdGUsKXZhcigtLXR3LWludmVydCwpdmFyKC0tdHctc2F0dXJhdGUsKXZhcigtLXR3LXNlcGlhLCl2YXIoLS10dy1kcm9wLXNoYWRvdywpfS5iYWNrZHJvcC1ibHVyLXNtey0tdHctYmFja2Ryb3AtYmx1cjpibHVyKHZhcigtLWJsdXItc20pKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS10dy1iYWNrZHJvcC1ibHVyLCl2YXIoLS10dy1iYWNrZHJvcC1icmlnaHRuZXNzLCl2YXIoLS10dy1iYWNrZHJvcC1jb250cmFzdCwpdmFyKC0tdHctYmFja2Ryb3AtZ3JheXNjYWxlLCl2YXIoLS10dy1iYWNrZHJvcC1odWUtcm90YXRlLCl2YXIoLS10dy1iYWNrZHJvcC1pbnZlcnQsKXZhcigtLXR3LWJhY2tkcm9wLW9wYWNpdHksKXZhcigtLXR3LWJhY2tkcm9wLXNhdHVyYXRlLCl2YXIoLS10dy1iYWNrZHJvcC1zZXBpYSwpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS10dy1iYWNrZHJvcC1ibHVyLCl2YXIoLS10dy1iYWNrZHJvcC1icmlnaHRuZXNzLCl2YXIoLS10dy1iYWNrZHJvcC1jb250cmFzdCwpdmFyKC0tdHctYmFja2Ryb3AtZ3JheXNjYWxlLCl2YXIoLS10dy1iYWNrZHJvcC1odWUtcm90YXRlLCl2YXIoLS10dy1iYWNrZHJvcC1pbnZlcnQsKXZhcigtLXR3LWJhY2tkcm9wLW9wYWNpdHksKXZhcigtLXR3LWJhY2tkcm9wLXNhdHVyYXRlLCl2YXIoLS10dy1iYWNrZHJvcC1zZXBpYSwpfS50cmFuc2l0aW9ue3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3IsYmFja2dyb3VuZC1jb2xvcixib3JkZXItY29sb3Isb3V0bGluZS1jb2xvcix0ZXh0LWRlY29yYXRpb24tY29sb3IsZmlsbCxzdHJva2UsLS10dy1ncmFkaWVudC1mcm9tLC0tdHctZ3JhZGllbnQtdmlhLC0tdHctZ3JhZGllbnQtdG8sb3BhY2l0eSxib3gtc2hhZG93LHRyYW5zZm9ybSx0cmFuc2xhdGUsc2NhbGUscm90YXRlLGZpbHRlciwtd2Via2l0LWJhY2tkcm9wLWZpbHRlcixiYWNrZHJvcC1maWx0ZXIsZGlzcGxheSxjb250ZW50LXZpc2liaWxpdHksb3ZlcmxheSxwb2ludGVyLWV2ZW50czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS10dy1lYXNlLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pKTt0cmFuc2l0aW9uLWR1cmF0aW9uOnZhcigtLXR3LWR1cmF0aW9uLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbikpfS50cmFuc2l0aW9uLWFsbHt0cmFuc2l0aW9uLXByb3BlcnR5OmFsbDt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS10dy1lYXNlLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pKTt0cmFuc2l0aW9uLWR1cmF0aW9uOnZhcigtLXR3LWR1cmF0aW9uLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbikpfS50cmFuc2l0aW9uLWNvbG9yc3t0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3IsYm9yZGVyLWNvbG9yLG91dGxpbmUtY29sb3IsdGV4dC1kZWNvcmF0aW9uLWNvbG9yLGZpbGwsc3Ryb2tlLC0tdHctZ3JhZGllbnQtZnJvbSwtLXR3LWdyYWRpZW50LXZpYSwtLXR3LWdyYWRpZW50LXRvO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLXR3LWVhc2UsdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbikpO3RyYW5zaXRpb24tZHVyYXRpb246dmFyKC0tdHctZHVyYXRpb24sdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uKSl9LnRyYW5zaXRpb24tb3BhY2l0eXt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHk7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tdHctZWFzZSx2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKSk7dHJhbnNpdGlvbi1kdXJhdGlvbjp2YXIoLS10dy1kdXJhdGlvbix2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24pKX0udHJhbnNpdGlvbi1zaGFkb3d7dHJhbnNpdGlvbi1wcm9wZXJ0eTpib3gtc2hhZG93O3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLXR3LWVhc2UsdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbikpO3RyYW5zaXRpb24tZHVyYXRpb246dmFyKC0tdHctZHVyYXRpb24sdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uKSl9LnRyYW5zaXRpb24tdHJhbnNmb3Jte3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLHRyYW5zbGF0ZSxzY2FsZSxyb3RhdGU7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tdHctZWFzZSx2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKSk7dHJhbnNpdGlvbi1kdXJhdGlvbjp2YXIoLS10dy1kdXJhdGlvbix2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24pKX0uZHVyYXRpb24tMTAwey0tdHctZHVyYXRpb246LjFzO3RyYW5zaXRpb24tZHVyYXRpb246LjFzfS5kdXJhdGlvbi0xNTB7LS10dy1kdXJhdGlvbjouMTVzO3RyYW5zaXRpb24tZHVyYXRpb246LjE1c30uZHVyYXRpb24tMjAwey0tdHctZHVyYXRpb246LjJzO3RyYW5zaXRpb24tZHVyYXRpb246LjJzfS5lYXNlLWluLW91dHstLXR3LWVhc2U6dmFyKC0tZWFzZS1pbi1vdXQpO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLWVhc2UtaW4tb3V0KX0uXFt3aWxsLWNoYW5nZVw6dHJhbnNmb3JtXF17d2lsbC1jaGFuZ2U6dHJhbnNmb3JtfS5vdXRsaW5lLW5vbmV7LS10dy1vdXRsaW5lLXN0eWxlOm5vbmU7b3V0bGluZS1zdHlsZTpub25lfS5zZWxlY3Qtbm9uZXstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0ucGF1c2Vke2FuaW1hdGlvbi1wbGF5LXN0YXRlOnBhdXNlZH0ucnVubmluZ3thbmltYXRpb24tcGxheS1zdGF0ZTpydW5uaW5nfS5ncm91cC1vcGVuXDpyb3RhdGUtMTgwOmlzKDp3aGVyZSguZ3JvdXApOmlzKFtvcGVuXSw6cG9wb3Zlci1vcGVuLDpvcGVuKSAqKXtyb3RhdGU6MTgwZGVnfUBtZWRpYSAoaG92ZXI6aG92ZXIpey5ncm91cC1ob3Zlclw6dHJhbnNsYXRlLXgtMFwuNTppcyg6d2hlcmUoLmdyb3VwKTpob3ZlciAqKXstLXR3LXRyYW5zbGF0ZS14OmNhbGModmFyKC0tc3BhY2luZykqLjUpO3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9Lmdyb3VwLWhvdmVyXDpiZy1tdXRlZDppcyg6d2hlcmUoLmdyb3VwKTpob3ZlciAqKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX0uZ3JvdXAtaG92ZXJcOnRleHQtcHJpbWFyeTppcyg6d2hlcmUoLmdyb3VwKTpob3ZlciAqKXtjb2xvcjp2YXIoLS1wcmltYXJ5KX0uZ3JvdXAtaG92ZXJcOnRleHQtd2hpdGU6aXMoOndoZXJlKC5ncm91cCk6aG92ZXIgKil7Y29sb3I6dmFyKC0tY29sb3Itd2hpdGUpfS5ncm91cC1ob3Zlclw6b3BhY2l0eS0xMDA6aXMoOndoZXJlKC5ncm91cCk6aG92ZXIgKil7b3BhY2l0eToxfS5ncm91cC1ob3Zlclw6c2hhZG93LW1kOmlzKDp3aGVyZSguZ3JvdXApOmhvdmVyICopey0tdHctc2hhZG93OjAgNHB4IDZweCAtMXB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpLDAgMnB4IDRweCAtMnB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX19Lmdyb3VwLWZvY3VzXC9kcm9wZG93bi1tZW51LWl0ZW1cOnRleHQtYWNjZW50LWZvcmVncm91bmQ6aXMoOndoZXJlKC5ncm91cFwvZHJvcGRvd24tbWVudS1pdGVtKTpmb2N1cyAqKXtjb2xvcjp2YXIoLS1hY2NlbnQtZm9yZWdyb3VuZCl9Lmdyb3VwLWhhcy1kYXRhLVxbc2l6ZVw9bGdcXVwvYXZhdGFyLWdyb3VwXDpzaXplLTEwOmlzKDp3aGVyZSguZ3JvdXBcL2F2YXRhci1ncm91cCk6aGFzKFtkYXRhLXNpemU9bGddKSAqKXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9Lmdyb3VwLWhhcy1kYXRhLVxbc2l6ZVw9c21cXVwvYXZhdGFyLWdyb3VwXDpzaXplLTY6aXMoOndoZXJlKC5ncm91cFwvYXZhdGFyLWdyb3VwKTpoYXMoW2RhdGEtc2l6ZT1zbV0pICope3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNik7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNil9Lmdyb3VwLWhhcy1kYXRhLVxbc2xvdFw9Y29tbWFuZC1zaG9ydGN1dFxdXC9jb21tYW5kLWl0ZW1cOmhpZGRlbjppcyg6d2hlcmUoLmdyb3VwXC9jb21tYW5kLWl0ZW0pOmhhcyhbZGF0YS1zbG90PWNvbW1hbmQtc2hvcnRjdXRdKSAqKXtkaXNwbGF5Om5vbmV9Lmdyb3VwLWhhcy1cW1w+aW5wdXRcXVwvaW5wdXQtZ3JvdXBcOnB0LTI6aXMoOndoZXJlKC5ncm91cFwvaW5wdXQtZ3JvdXApOmhhcyg+aW5wdXQpICope3BhZGRpbmctdG9wOmNhbGModmFyKC0tc3BhY2luZykqMil9Lmdyb3VwLWhhcy1cW1w+aW5wdXRcXVwvaW5wdXQtZ3JvdXBcOnBiLTI6aXMoOndoZXJlKC5ncm91cFwvaW5wdXQtZ3JvdXApOmhhcyg+aW5wdXQpICope3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMil9Lmdyb3VwLWRhdGEtXFtjaGVja2VkXD10cnVlXF1cL2NvbW1hbmQtaXRlbVw6b3BhY2l0eS0xMDA6aXMoOndoZXJlKC5ncm91cFwvY29tbWFuZC1pdGVtKVtkYXRhLWNoZWNrZWQ9dHJ1ZV0gKil7b3BhY2l0eToxfS5ncm91cC1kYXRhLVxbZGlzYWJsZWRcPXRydWVcXVw6cG9pbnRlci1ldmVudHMtbm9uZTppcyg6d2hlcmUoLmdyb3VwKVtkYXRhLWRpc2FibGVkPXRydWVdICope3BvaW50ZXItZXZlbnRzOm5vbmV9Lmdyb3VwLWRhdGEtXFtkaXNhYmxlZFw9dHJ1ZVxdXDpvcGFjaXR5LTUwOmlzKDp3aGVyZSguZ3JvdXApW2RhdGEtZGlzYWJsZWQ9dHJ1ZV0gKiksLmdyb3VwLWRhdGEtXFtkaXNhYmxlZFw9dHJ1ZVxdXC9pbnB1dC1ncm91cFw6b3BhY2l0eS01MDppcyg6d2hlcmUoLmdyb3VwXC9pbnB1dC1ncm91cClbZGF0YS1kaXNhYmxlZD10cnVlXSAqKXtvcGFjaXR5Oi41fS5ncm91cC1kYXRhLVxbc2l6ZVw9ZGVmYXVsdFxdXC9hdmF0YXJcOnNpemUtMlwuNTppcyg6d2hlcmUoLmdyb3VwXC9hdmF0YXIpW2RhdGEtc2l6ZT1kZWZhdWx0XSAqKXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjIuNSk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMi41KX0uZ3JvdXAtZGF0YS1cW3NpemVcPWxnXF1cL2F2YXRhclw6c2l6ZS0zOmlzKDp3aGVyZSguZ3JvdXBcL2F2YXRhcilbZGF0YS1zaXplPWxnXSAqKXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5ncm91cC1kYXRhLVxbc2l6ZVw9c21cXVwvYXZhdGFyXDpzaXplLTI6aXMoOndoZXJlKC5ncm91cFwvYXZhdGFyKVtkYXRhLXNpemU9c21dICope3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMik7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9Lmdyb3VwLWRhdGEtXFtzaXplXD1zbVxdXC9hdmF0YXJcOnRleHQteHM6aXMoOndoZXJlKC5ncm91cFwvYXZhdGFyKVtkYXRhLXNpemU9c21dICope2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LXhzKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQteHMtLWxpbmUtaGVpZ2h0KSl9Lmdyb3VwLWRhdGEtXFtzaXplXD1zbVxdXC9jYXJkXDpwLTM6aXMoOndoZXJlKC5ncm91cFwvY2FyZClbZGF0YS1zaXplPXNtXSAqKXtwYWRkaW5nOmNhbGModmFyKC0tc3BhY2luZykqMyl9Lmdyb3VwLWRhdGEtXFtzaXplXD1zbVxdXC9jYXJkXDpweC0zOmlzKDp3aGVyZSguZ3JvdXBcL2NhcmQpW2RhdGEtc2l6ZT1zbV0gKil7cGFkZGluZy1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uZ3JvdXAtZGF0YS1cW3NpemVcPXNtXF1cL2NhcmRcOnRleHQtc206aXMoOndoZXJlKC5ncm91cFwvY2FyZClbZGF0YS1zaXplPXNtXSAqKXtmb250LXNpemU6dmFyKC0tdGV4dC1zbSk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LXNtLS1saW5lLWhlaWdodCkpfS5ncm91cC1kYXRhLVxbdmFyaWFudFw9bGluZVxdXC90YWJzLWxpc3RcOmJnLXRyYW5zcGFyZW50OmlzKDp3aGVyZSguZ3JvdXBcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWxpbmVdICope2JhY2tncm91bmQtY29sb3I6IzAwMDB9Lmdyb3VwLWRhdGEtc2VsZWN0ZWRcL2NvbW1hbmQtaXRlbVw6dGV4dC1mb3JlZ3JvdW5kOmlzKDp3aGVyZSguZ3JvdXBcL2NvbW1hbmQtaXRlbSk6d2hlcmUoW2RhdGEtc2VsZWN0ZWQ9dHJ1ZV0pICope2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5ncm91cC1kYXRhLWhvcml6b250YWxcL3RhYnNcOmgtODppcyg6d2hlcmUoLmdyb3VwXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj1ob3Jpem9udGFsXSkgKil7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqOCl9Lmdyb3VwLWRhdGEtdmVydGljYWxcL3RhYnNcOmgtZml0OmlzKDp3aGVyZSguZ3JvdXBcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPXZlcnRpY2FsXSkgKil7aGVpZ2h0OmZpdC1jb250ZW50fS5ncm91cC1kYXRhLXZlcnRpY2FsXC90YWJzXDp3LWZ1bGw6aXMoOndoZXJlKC5ncm91cFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249dmVydGljYWxdKSAqKXt3aWR0aDoxMDAlfS5ncm91cC1kYXRhLXZlcnRpY2FsXC90YWJzXDpmbGV4LWNvbDppcyg6d2hlcmUoLmdyb3VwXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pICope2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZ3JvdXAtZGF0YS12ZXJ0aWNhbFwvdGFic1w6anVzdGlmeS1zdGFydDppcyg6d2hlcmUoLmdyb3VwXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pICope2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5wZWVyLWRpc2FibGVkXDpjdXJzb3Itbm90LWFsbG93ZWQ6aXMoOndoZXJlKC5wZWVyKTpkaXNhYmxlZH4qKXtjdXJzb3I6bm90LWFsbG93ZWR9LnBlZXItZGlzYWJsZWRcOm9wYWNpdHktNTA6aXMoOndoZXJlKC5wZWVyKTpkaXNhYmxlZH4qKXtvcGFjaXR5Oi41fS5maWxlXDppbmxpbmUtZmxleDo6ZmlsZS1zZWxlY3Rvci1idXR0b257ZGlzcGxheTppbmxpbmUtZmxleH0uZmlsZVw6aC02OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0uZmlsZVw6Ym9yZGVyLTA6OmZpbGUtc2VsZWN0b3ItYnV0dG9ue2JvcmRlci1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci13aWR0aDowfS5maWxlXDpiZy10cmFuc3BhcmVudDo6ZmlsZS1zZWxlY3Rvci1idXR0b257YmFja2dyb3VuZC1jb2xvcjojMDAwMH0uZmlsZVw6dGV4dC1zbTo6ZmlsZS1zZWxlY3Rvci1idXR0b257Zm9udC1zaXplOnZhcigtLXRleHQtc20pO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC1zbS0tbGluZS1oZWlnaHQpKX0uZmlsZVw6Zm9udC1tZWRpdW06OmZpbGUtc2VsZWN0b3ItYnV0dG9uey0tdHctZm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtmb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pfS5maWxlXDp0ZXh0LWZvcmVncm91bmQ6OmZpbGUtc2VsZWN0b3ItYnV0dG9ue2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5wbGFjZWhvbGRlclw6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kOjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX0uYWZ0ZXJcOmFic29sdXRlOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7cG9zaXRpb246YWJzb2x1dGV9LmFmdGVyXDppbnNldC0wOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7aW5zZXQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uYWZ0ZXJcOnJvdW5kZWQtZnVsbDphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2JvcmRlci1yYWRpdXM6My40MDI4MmUzOHB4fS5hZnRlclw6Ym9yZGVyOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7Ym9yZGVyLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXdpZHRoOjFweH0uYWZ0ZXJcOmJvcmRlci1ib3JkZXI6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyKX0uYWZ0ZXJcOmJnLWZvcmVncm91bmQ6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWZvcmVncm91bmQpfS5hZnRlclw6b3BhY2l0eS0wOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7b3BhY2l0eTowfS5hZnRlclw6bWl4LWJsZW5kLWRhcmtlbjphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO21peC1ibGVuZC1tb2RlOmRhcmtlbn0uYWZ0ZXJcOnRyYW5zaXRpb24tb3BhY2l0eTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eTt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS10dy1lYXNlLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pKTt0cmFuc2l0aW9uLWR1cmF0aW9uOnZhcigtLXR3LWR1cmF0aW9uLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbikpfS5ncm91cC1kYXRhLWhvcml6b250YWxcL3RhYnNcOmFmdGVyXDppbnNldC14LTA6aXMoOndoZXJlKC5ncm91cFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249aG9yaXpvbnRhbF0pICopOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7aW5zZXQtaW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmdyb3VwLWRhdGEtaG9yaXpvbnRhbFwvdGFic1w6YWZ0ZXJcOmJvdHRvbS1cWy01cHhcXTppcyg6d2hlcmUoLmdyb3VwXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj1ob3Jpem9udGFsXSkgKik6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtib3R0b206LTVweH0uZ3JvdXAtZGF0YS1ob3Jpem9udGFsXC90YWJzXDphZnRlclw6aC0wXC41OmlzKDp3aGVyZSguZ3JvdXBcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPWhvcml6b250YWxdKSAqKTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKi41KX0uZ3JvdXAtZGF0YS12ZXJ0aWNhbFwvdGFic1w6YWZ0ZXJcOmluc2V0LXktMDppcyg6d2hlcmUoLmdyb3VwXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pICopOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7aW5zZXQtYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZ3JvdXAtZGF0YS12ZXJ0aWNhbFwvdGFic1w6YWZ0ZXJcOi1yaWdodC0xOmlzKDp3aGVyZSguZ3JvdXBcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPXZlcnRpY2FsXSkgKik6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKi0xKX0uZ3JvdXAtZGF0YS12ZXJ0aWNhbFwvdGFic1w6YWZ0ZXJcOnctMFwuNTppcyg6d2hlcmUoLmdyb3VwXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pICopOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9LmZvY3VzLXdpdGhpblw6Ym9yZGVyLXJpbmc6Zm9jdXMtd2l0aGlue2JvcmRlci1jb2xvcjp2YXIoLS1yaW5nKX0uZm9jdXMtd2l0aGluXDpyaW5nLTM6Zm9jdXMtd2l0aGluey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uZm9jdXMtd2l0aGluXDpyaW5nLXJpbmdcLzUwOmZvY3VzLXdpdGhpbnstLXR3LXJpbmctY29sb3I6dmFyKC0tcmluZyl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5mb2N1cy13aXRoaW5cOnJpbmctcmluZ1wvNTA6Zm9jdXMtd2l0aGluey0tdHctcmluZy1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcmluZyk1MCUsdHJhbnNwYXJlbnQpfX1AbWVkaWEgKGhvdmVyOmhvdmVyKXsuaG92ZXJcOmJvcmRlci1tdXRlZC1mb3JlZ3JvdW5kXC8zMDpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tbXV0ZWQtZm9yZWdyb3VuZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3Zlclw6Ym9yZGVyLW11dGVkLWZvcmVncm91bmRcLzMwOmhvdmVye2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tbXV0ZWQtZm9yZWdyb3VuZCkzMCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcOmJvcmRlci1wcmltYXJ5XC80MDpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tcHJpbWFyeSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3Zlclw6Ym9yZGVyLXByaW1hcnlcLzQwOmhvdmVye2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcHJpbWFyeSk0MCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcOmJvcmRlci1yaW5nOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1yaW5nKX0uaG92ZXJcOmJnLWFjY2VudDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWFjY2VudCl9LmhvdmVyXDpiZy1kZXN0cnVjdGl2ZVwvMjA6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3Zlclw6YmctZGVzdHJ1Y3RpdmVcLzIwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTIwJSx0cmFuc3BhcmVudCl9fS5ob3Zlclw6YmctbXV0ZWQ6aG92ZXIsLmhvdmVyXDpiZy1tdXRlZFwvNDA6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3Zlclw6YmctbXV0ZWRcLzQwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLW11dGVkKTQwJSx0cmFuc3BhcmVudCl9fS5ob3Zlclw6YmctbXV0ZWRcLzUwOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaG92ZXJcOmJnLW11dGVkXC81MDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZCk1MCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcOmJnLW11dGVkXC84MDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmhvdmVyXDpiZy1tdXRlZFwvODA6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tbXV0ZWQpODAlLHRyYW5zcGFyZW50KX19LmhvdmVyXDpiZy1wcmltYXJ5XC8yMDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaG92ZXJcOmJnLXByaW1hcnlcLzIwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXByaW1hcnkpMjAlLHRyYW5zcGFyZW50KX19LmhvdmVyXDpiZy1zZWNvbmRhcnlcLzgwOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tc2Vjb25kYXJ5KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmhvdmVyXDpiZy1zZWNvbmRhcnlcLzgwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXNlY29uZGFyeSk4MCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcOnRleHQtZm9yZWdyb3VuZDpob3Zlcntjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX0uaG92ZXJcOnRleHQtbXV0ZWQtZm9yZWdyb3VuZDpob3Zlcntjb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX0uaG92ZXJcOnRleHQtcHJpbWFyeTpob3Zlcntjb2xvcjp2YXIoLS1wcmltYXJ5KX0uaG92ZXJcOnVuZGVybGluZTpob3Zlcnt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmV9LmhvdmVyXDpzaGFkb3ctbGc6aG92ZXJ7LS10dy1zaGFkb3c6MCAxMHB4IDE1cHggLTNweCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSwwIDRweCA2cHggLTRweCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LmhvdmVyXDpzaGFkb3ctbWQ6aG92ZXJ7LS10dy1zaGFkb3c6MCA0cHggNnB4IC0xcHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSksMCAycHggNHB4IC0ycHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSk7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfX0uZm9jdXNcOmJnLWFjY2VudDpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWFjY2VudCl9LmZvY3VzXDp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kOmZvY3Vze2NvbG9yOnZhcigtLWFjY2VudC1mb3JlZ3JvdW5kKX0uZm9jdXNcOm91dGxpbmUtbm9uZTpmb2N1c3stLXR3LW91dGxpbmUtc3R5bGU6bm9uZTtvdXRsaW5lLXN0eWxlOm5vbmV9OmlzKC5mb2N1c1w6XCpcKlw6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZDpmb2N1cyAqKSw6aXMoLm5vdC1kYXRhLVxbdmFyaWFudFw9ZGVzdHJ1Y3RpdmVcXVw6Zm9jdXNcOlwqXCpcOnRleHQtYWNjZW50LWZvcmVncm91bmQ6bm90KFtkYXRhLXZhcmlhbnQ9ZGVzdHJ1Y3RpdmVdKTpmb2N1cyAqKXtjb2xvcjp2YXIoLS1hY2NlbnQtZm9yZWdyb3VuZCl9LmZvY3VzLXZpc2libGVcOmJvcmRlci1kZXN0cnVjdGl2ZVwvNDA6Zm9jdXMtdmlzaWJsZXtib3JkZXItY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZm9jdXMtdmlzaWJsZVw6Ym9yZGVyLWRlc3RydWN0aXZlXC80MDpmb2N1cy12aXNpYmxle2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpNDAlLHRyYW5zcGFyZW50KX19LmZvY3VzLXZpc2libGVcOmJvcmRlci1yaW5nOmZvY3VzLXZpc2libGV7Ym9yZGVyLWNvbG9yOnZhcigtLXJpbmcpfS5mb2N1cy12aXNpYmxlXDpyaW5nLTA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMHB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LmZvY3VzLXZpc2libGVcOnJpbmctMjpmb2N1cy12aXNpYmxley0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygycHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uZm9jdXMtdmlzaWJsZVw6cmluZy0zOmZvY3VzLXZpc2libGUsLmZvY3VzLXZpc2libGVcOnJpbmctXFszcHhcXTpmb2N1cy12aXNpYmxley0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uZm9jdXMtdmlzaWJsZVw6cmluZy1kZXN0cnVjdGl2ZVwvMjA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZm9jdXMtdmlzaWJsZVw6cmluZy1kZXN0cnVjdGl2ZVwvMjA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTIwJSx0cmFuc3BhcmVudCl9fS5mb2N1cy12aXNpYmxlXDpyaW5nLXJpbmdcLzUwOmZvY3VzLXZpc2libGV7LS10dy1yaW5nLWNvbG9yOnZhcigtLXJpbmcpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZm9jdXMtdmlzaWJsZVw6cmluZy1yaW5nXC81MDpmb2N1cy12aXNpYmxley0tdHctcmluZy1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcmluZyk1MCUsdHJhbnNwYXJlbnQpfX0uZm9jdXMtdmlzaWJsZVw6b3V0bGluZS0xOmZvY3VzLXZpc2libGV7b3V0bGluZS1zdHlsZTp2YXIoLS10dy1vdXRsaW5lLXN0eWxlKTtvdXRsaW5lLXdpZHRoOjFweH0uZm9jdXMtdmlzaWJsZVw6b3V0bGluZS0yOmZvY3VzLXZpc2libGV7b3V0bGluZS1zdHlsZTp2YXIoLS10dy1vdXRsaW5lLXN0eWxlKTtvdXRsaW5lLXdpZHRoOjJweH0uZm9jdXMtdmlzaWJsZVw6b3V0bGluZS1vZmZzZXQtMjpmb2N1cy12aXNpYmxle291dGxpbmUtb2Zmc2V0OjJweH0uZm9jdXMtdmlzaWJsZVw6b3V0bGluZS1wcmltYXJ5OmZvY3VzLXZpc2libGV7b3V0bGluZS1jb2xvcjp2YXIoLS1wcmltYXJ5KX0uZm9jdXMtdmlzaWJsZVw6b3V0bGluZS1yaW5nOmZvY3VzLXZpc2libGV7b3V0bGluZS1jb2xvcjp2YXIoLS1yaW5nKX0uYWN0aXZlXDp0cmFuc2xhdGUteS1weDphY3RpdmV7LS10dy10cmFuc2xhdGUteToxcHg7dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0uZGlzYWJsZWRcOnBvaW50ZXItZXZlbnRzLW5vbmU6ZGlzYWJsZWR7cG9pbnRlci1ldmVudHM6bm9uZX0uZGlzYWJsZWRcOmN1cnNvci1ub3QtYWxsb3dlZDpkaXNhYmxlZHtjdXJzb3I6bm90LWFsbG93ZWR9LmRpc2FibGVkXDpiZy1pbnB1dFwvNTA6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1pbnB1dCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kaXNhYmxlZFw6YmctaW5wdXRcLzUwOmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWlucHV0KTUwJSx0cmFuc3BhcmVudCl9fS5kaXNhYmxlZFw6YmctdHJhbnNwYXJlbnQ6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjojMDAwMH0uZGlzYWJsZWRcOm9wYWNpdHktNTA6ZGlzYWJsZWR7b3BhY2l0eTouNX06d2hlcmUoW2RhdGEtc2xvdD1idXR0b24tZ3JvdXBdKSAuaW4tZGF0YS1cW3Nsb3RcPWJ1dHRvbi1ncm91cFxdXDpyb3VuZGVkLWxne2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzKX06d2hlcmUoW2RhdGEtc2xvdD1jb21ib2JveC1jb250ZW50XSkgLmluLWRhdGEtXFtzbG90XD1jb21ib2JveC1jb250ZW50XF1cOmZvY3VzLXdpdGhpblw6Ym9yZGVyLWluaGVyaXQ6Zm9jdXMtd2l0aGlue2JvcmRlci1jb2xvcjppbmhlcml0fTp3aGVyZShbZGF0YS1zbG90PWNvbWJvYm94LWNvbnRlbnRdKSAuaW4tZGF0YS1cW3Nsb3RcPWNvbWJvYm94LWNvbnRlbnRcXVw6Zm9jdXMtd2l0aGluXDpyaW5nLTA6Zm9jdXMtd2l0aGluey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygwcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX06d2hlcmUoW2RhdGEtc2xvdD1kaWFsb2ctY29udGVudF0pIC5pbi1kYXRhLVxbc2xvdFw9ZGlhbG9nLWNvbnRlbnRcXVw6cm91bmRlZC1sZ1whe2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzKSFpbXBvcnRhbnR9Lmhhcy1kaXNhYmxlZFw6YmctaW5wdXRcLzUwOmhhcyg6ZGlzYWJsZWQpe2JhY2tncm91bmQtY29sb3I6dmFyKC0taW5wdXQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaGFzLWRpc2FibGVkXDpiZy1pbnB1dFwvNTA6aGFzKDpkaXNhYmxlZCl7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0taW5wdXQpNTAlLHRyYW5zcGFyZW50KX19Lmhhcy1kaXNhYmxlZFw6b3BhY2l0eS01MDpoYXMoOmRpc2FibGVkKXtvcGFjaXR5Oi41fS5oYXMtZGF0YS1cW2ljb25cPWlubGluZS1lbmRcXVw6cHItMVwuNTpoYXMoW2RhdGEtaWNvbj1pbmxpbmUtZW5kXSl7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9Lmhhcy1kYXRhLVxbaWNvblw9aW5saW5lLWVuZFxdXDpwci0yOmhhcyhbZGF0YS1pY29uPWlubGluZS1lbmRdKXtwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9Lmhhcy1kYXRhLVxbaWNvblw9aW5saW5lLWVuZFxdXDpwci0zOmhhcyhbZGF0YS1pY29uPWlubGluZS1lbmRdKXtwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMyl9Lmhhcy1kYXRhLVxbaWNvblw9aW5saW5lLXN0YXJ0XF1cOnBsLTFcLjU6aGFzKFtkYXRhLWljb249aW5saW5lLXN0YXJ0XSl7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMS41KX0uaGFzLWRhdGEtXFtpY29uXD1pbmxpbmUtc3RhcnRcXVw6cGwtMjpoYXMoW2RhdGEtaWNvbj1pbmxpbmUtc3RhcnRdKXtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0uaGFzLWRhdGEtXFtpY29uXD1pbmxpbmUtc3RhcnRcXVw6cGwtMzpoYXMoW2RhdGEtaWNvbj1pbmxpbmUtc3RhcnRdKXtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uaGFzLWRhdGEtXFtzbG90XD1jYXJkLWFjdGlvblxdXDpncmlkLWNvbHMtXFsxZnJfYXV0b1xdOmhhcyhbZGF0YS1zbG90PWNhcmQtYWN0aW9uXSl7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciBhdXRvfS5oYXMtZGF0YS1cW3Nsb3RcPWNhcmQtZGVzY3JpcHRpb25cXVw6Z3JpZC1yb3dzLVxbYXV0b19hdXRvXF06aGFzKFtkYXRhLXNsb3Q9Y2FyZC1kZXNjcmlwdGlvbl0pe2dyaWQtdGVtcGxhdGUtcm93czphdXRvIGF1dG99Lmhhcy1kYXRhLVxbc2xvdFw9Y2FyZC1mb290ZXJcXVw6cGItMDpoYXMoW2RhdGEtc2xvdD1jYXJkLWZvb3Rlcl0pe3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmhhcy1cW1xbZGF0YS1zbG90XD1pbnB1dC1ncm91cC1jb250cm9sXF1cOmZvY3VzLXZpc2libGVcXVw6Ym9yZGVyLXJpbmc6aGFzKFtkYXRhLXNsb3Q9aW5wdXQtZ3JvdXAtY29udHJvbF06Zm9jdXMtdmlzaWJsZSl7Ym9yZGVyLWNvbG9yOnZhcigtLXJpbmcpfS5oYXMtXFtcW2RhdGEtc2xvdFw9aW5wdXQtZ3JvdXAtY29udHJvbFxdXDpmb2N1cy12aXNpYmxlXF1cOnJpbmctMzpoYXMoW2RhdGEtc2xvdD1pbnB1dC1ncm91cC1jb250cm9sXTpmb2N1cy12aXNpYmxlKXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoM3B4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9Lmhhcy1cW1xbZGF0YS1zbG90XD1pbnB1dC1ncm91cC1jb250cm9sXF1cOmZvY3VzLXZpc2libGVcXVw6cmluZy1yaW5nXC81MDpoYXMoW2RhdGEtc2xvdD1pbnB1dC1ncm91cC1jb250cm9sXTpmb2N1cy12aXNpYmxlKXstLXR3LXJpbmctY29sb3I6dmFyKC0tcmluZyl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5oYXMtXFtcW2RhdGEtc2xvdFw9aW5wdXQtZ3JvdXAtY29udHJvbFxdXDpmb2N1cy12aXNpYmxlXF1cOnJpbmctcmluZ1wvNTA6aGFzKFtkYXRhLXNsb3Q9aW5wdXQtZ3JvdXAtY29udHJvbF06Zm9jdXMtdmlzaWJsZSl7LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1yaW5nKTUwJSx0cmFuc3BhcmVudCl9fS5oYXMtXFtcW2RhdGEtc2xvdFxdXFthcmlhLWludmFsaWRcPXRydWVcXVxdXDpib3JkZXItZGVzdHJ1Y3RpdmU6aGFzKFtkYXRhLXNsb3RdW2FyaWEtaW52YWxpZD10cnVlXSl7Ym9yZGVyLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX0uaGFzLVxbXFtkYXRhLXNsb3RcXVxbYXJpYS1pbnZhbGlkXD10cnVlXF1cXVw6cmluZy0zOmhhcyhbZGF0YS1zbG90XVthcmlhLWludmFsaWQ9dHJ1ZV0pey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uaGFzLVxbXFtkYXRhLXNsb3RcXVxbYXJpYS1pbnZhbGlkXD10cnVlXF1cXVw6cmluZy1kZXN0cnVjdGl2ZVwvMjA6aGFzKFtkYXRhLXNsb3RdW2FyaWEtaW52YWxpZD10cnVlXSl7LS10dy1yaW5nLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7Lmhhcy1cW1xbZGF0YS1zbG90XF1cW2FyaWEtaW52YWxpZFw9dHJ1ZVxdXF1cOnJpbmctZGVzdHJ1Y3RpdmVcLzIwOmhhcyhbZGF0YS1zbG90XVthcmlhLWludmFsaWQ9dHJ1ZV0pey0tdHctcmluZy1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMjAlLHRyYW5zcGFyZW50KX19Lmhhcy1cW1w+XFtkYXRhLWFsaWduXD1ibG9jay1lbmRcXVxdXDpoLWF1dG86aGFzKD5bZGF0YS1hbGlnbj1ibG9jay1lbmRdKXtoZWlnaHQ6YXV0b30uaGFzLVxbXD5cW2RhdGEtYWxpZ25cPWJsb2NrLWVuZFxdXF1cOmZsZXgtY29sOmhhcyg+W2RhdGEtYWxpZ249YmxvY2stZW5kXSl7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5oYXMtXFtcPlxbZGF0YS1hbGlnblw9YmxvY2stc3RhcnRcXVxdXDpoLWF1dG86aGFzKD5bZGF0YS1hbGlnbj1ibG9jay1zdGFydF0pe2hlaWdodDphdXRvfS5oYXMtXFtcPlxbZGF0YS1hbGlnblw9YmxvY2stc3RhcnRcXVxdXDpmbGV4LWNvbDpoYXMoPltkYXRhLWFsaWduPWJsb2NrLXN0YXJ0XSl7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5oYXMtXFtcPmJ1dHRvblxdXDptci1cWy0wXC4zcmVtXF06aGFzKD5idXR0b24pe21hcmdpbi1yaWdodDotLjNyZW19Lmhhcy1cW1w+YnV0dG9uXF1cOm1sLVxbLTBcLjNyZW1cXTpoYXMoPmJ1dHRvbil7bWFyZ2luLWxlZnQ6LS4zcmVtfS5oYXMtXFtcPmltZ1w6Zmlyc3QtY2hpbGRcXVw6cHQtMDpoYXMoPmltZzpmaXJzdC1jaGlsZCl7cGFkZGluZy10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uaGFzLVxbXD5rYmRcXVw6bXItXFstMFwuMTVyZW1cXTpoYXMoPmtiZCl7bWFyZ2luLXJpZ2h0Oi0uMTVyZW19Lmhhcy1cW1w+a2JkXF1cOm1sLVxbLTBcLjE1cmVtXF06aGFzKD5rYmQpe21hcmdpbi1sZWZ0Oi0uMTVyZW19Lmhhcy1cW1w+c3ZnXF1cOnAtMDpoYXMoPnN2Zyl7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5oYXMtXFtcPnRleHRhcmVhXF1cOmgtYXV0bzpoYXMoPnRleHRhcmVhKXtoZWlnaHQ6YXV0b30uYXJpYS1kaXNhYmxlZFw6cG9pbnRlci1ldmVudHMtbm9uZVthcmlhLWRpc2FibGVkPXRydWVde3BvaW50ZXItZXZlbnRzOm5vbmV9LmFyaWEtZGlzYWJsZWRcOm9wYWNpdHktNTBbYXJpYS1kaXNhYmxlZD10cnVlXXtvcGFjaXR5Oi41fS5hcmlhLWV4cGFuZGVkXDpiZy1tdXRlZFthcmlhLWV4cGFuZGVkPXRydWVde2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfS5hcmlhLWV4cGFuZGVkXDpiZy1zZWNvbmRhcnlbYXJpYS1leHBhbmRlZD10cnVlXXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXNlY29uZGFyeSl9LmFyaWEtZXhwYW5kZWRcOnRleHQtZm9yZWdyb3VuZFthcmlhLWV4cGFuZGVkPXRydWVde2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5hcmlhLWV4cGFuZGVkXDp0ZXh0LXNlY29uZGFyeS1mb3JlZ3JvdW5kW2FyaWEtZXhwYW5kZWQ9dHJ1ZV17Y29sb3I6dmFyKC0tc2Vjb25kYXJ5LWZvcmVncm91bmQpfS5hcmlhLWludmFsaWRcOmJvcmRlci1kZXN0cnVjdGl2ZVthcmlhLWludmFsaWQ9dHJ1ZV17Ym9yZGVyLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX0uYXJpYS1pbnZhbGlkXDpyaW5nLTBbYXJpYS1pbnZhbGlkPXRydWVdey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygwcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uYXJpYS1pbnZhbGlkXDpyaW5nLTNbYXJpYS1pbnZhbGlkPXRydWVdey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uYXJpYS1pbnZhbGlkXDpyaW5nLWRlc3RydWN0aXZlXC8yMFthcmlhLWludmFsaWQ9dHJ1ZV17LS10dy1yaW5nLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmFyaWEtaW52YWxpZFw6cmluZy1kZXN0cnVjdGl2ZVwvMjBbYXJpYS1pbnZhbGlkPXRydWVdey0tdHctcmluZy1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMjAlLHRyYW5zcGFyZW50KX19LmRhdGEtZW5kaW5nLXN0eWxlXDpvcGFjaXR5LTBbZGF0YS1lbmRpbmctc3R5bGVde29wYWNpdHk6MH0uZGF0YS1pbnNldFw6cGwtN1tkYXRhLWluc2V0XXtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo3KX0uZGF0YS1wb3B1cC1vcGVuXDpiZy1hY2NlbnRbZGF0YS1wb3B1cC1vcGVuXXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWFjY2VudCl9LmRhdGEtcG9wdXAtb3Blblw6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZFtkYXRhLXBvcHVwLW9wZW5de2NvbG9yOnZhcigtLWFjY2VudC1mb3JlZ3JvdW5kKX0uZGF0YS1zdGFydGluZy1zdHlsZVw6b3BhY2l0eS0wW2RhdGEtc3RhcnRpbmctc3R5bGVde29wYWNpdHk6MH0uZGF0YS1cW2Rpc2FibGVkXD10cnVlXF1cOnBvaW50ZXItZXZlbnRzLW5vbmVbZGF0YS1kaXNhYmxlZD10cnVlXXtwb2ludGVyLWV2ZW50czpub25lfS5kYXRhLVxbZGlzYWJsZWRcPXRydWVcXVw6b3BhY2l0eS01MFtkYXRhLWRpc2FibGVkPXRydWVde29wYWNpdHk6LjV9LmRhdGEtXFtzaWRlXD1ib3R0b21cXVw6aW5zZXQteC0wW2RhdGEtc2lkZT1ib3R0b21de2luc2V0LWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5kYXRhLVxbc2lkZVw9Ym90dG9tXF1cOmJvdHRvbS0wW2RhdGEtc2lkZT1ib3R0b21de2JvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5kYXRhLVxbc2lkZVw9Ym90dG9tXF1cOmgtYXV0b1tkYXRhLXNpZGU9Ym90dG9tXXtoZWlnaHQ6YXV0b30uZGF0YS1cW3NpZGVcPWJvdHRvbVxdXDpib3JkZXItdFtkYXRhLXNpZGU9Ym90dG9tXXtib3JkZXItdG9wLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXRvcC13aWR0aDoxcHh9LmRhdGEtXFtzaWRlXD1ib3R0b21cXVw6c2xpZGUtaW4tZnJvbS10b3AtMltkYXRhLXNpZGU9Ym90dG9tXXstLXR3LWVudGVyLXRyYW5zbGF0ZS15OmNhbGMoMip2YXIoLS1zcGFjaW5nKSotMSl9LmRhdGEtXFtzaWRlXD1ib3R0b21cXVw6ZGF0YS1lbmRpbmctc3R5bGVcOnRyYW5zbGF0ZS15LVxbMlwuNXJlbVxdW2RhdGEtc2lkZT1ib3R0b21dW2RhdGEtZW5kaW5nLXN0eWxlXSwuZGF0YS1cW3NpZGVcPWJvdHRvbVxdXDpkYXRhLXN0YXJ0aW5nLXN0eWxlXDp0cmFuc2xhdGUteS1cWzJcLjVyZW1cXVtkYXRhLXNpZGU9Ym90dG9tXVtkYXRhLXN0YXJ0aW5nLXN0eWxlXXstLXR3LXRyYW5zbGF0ZS15OjIuNXJlbTt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS5kYXRhLVxbc2lkZVw9aW5saW5lLWVuZFxdXDpzbGlkZS1pbi1mcm9tLWxlZnQtMltkYXRhLXNpZGU9aW5saW5lLWVuZF17LS10dy1lbnRlci10cmFuc2xhdGUteDpjYWxjKDIqdmFyKC0tc3BhY2luZykqLTEpfS5kYXRhLVxbc2lkZVw9aW5saW5lLXN0YXJ0XF1cOnNsaWRlLWluLWZyb20tcmlnaHQtMltkYXRhLXNpZGU9aW5saW5lLXN0YXJ0XXstLXR3LWVudGVyLXRyYW5zbGF0ZS14OmNhbGMoMip2YXIoLS1zcGFjaW5nKSl9LmRhdGEtXFtzaWRlXD1sZWZ0XF1cOmluc2V0LXktMFtkYXRhLXNpZGU9bGVmdF17aW5zZXQtYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZGF0YS1cW3NpZGVcPWxlZnRcXVw6bGVmdC0wW2RhdGEtc2lkZT1sZWZ0XXtsZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMCl9LmRhdGEtXFtzaWRlXD1sZWZ0XF1cOmgtZnVsbFtkYXRhLXNpZGU9bGVmdF17aGVpZ2h0OjEwMCV9LmRhdGEtXFtzaWRlXD1sZWZ0XF1cOnctM1wvNFtkYXRhLXNpZGU9bGVmdF17d2lkdGg6NzUlfS5kYXRhLVxbc2lkZVw9bGVmdFxdXDpib3JkZXItcltkYXRhLXNpZGU9bGVmdF17Ym9yZGVyLXJpZ2h0LXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXJpZ2h0LXdpZHRoOjFweH0uZGF0YS1cW3NpZGVcPWxlZnRcXVw6c2xpZGUtaW4tZnJvbS1yaWdodC0yW2RhdGEtc2lkZT1sZWZ0XXstLXR3LWVudGVyLXRyYW5zbGF0ZS14OmNhbGMoMip2YXIoLS1zcGFjaW5nKSl9LmRhdGEtXFtzaWRlXD1sZWZ0XF1cOmRhdGEtZW5kaW5nLXN0eWxlXDp0cmFuc2xhdGUteC1cWy0yXC41cmVtXF1bZGF0YS1zaWRlPWxlZnRdW2RhdGEtZW5kaW5nLXN0eWxlXSwuZGF0YS1cW3NpZGVcPWxlZnRcXVw6ZGF0YS1zdGFydGluZy1zdHlsZVw6dHJhbnNsYXRlLXgtXFstMlwuNXJlbVxdW2RhdGEtc2lkZT1sZWZ0XVtkYXRhLXN0YXJ0aW5nLXN0eWxlXXstLXR3LXRyYW5zbGF0ZS14Oi0yLjVyZW07dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0uZGF0YS1cW3NpZGVcPXJpZ2h0XF1cOmluc2V0LXktMFtkYXRhLXNpZGU9cmlnaHRde2luc2V0LWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMCl9LmRhdGEtXFtzaWRlXD1yaWdodFxdXDpyaWdodC0wW2RhdGEtc2lkZT1yaWdodF17cmlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZGF0YS1cW3NpZGVcPXJpZ2h0XF1cOmgtZnVsbFtkYXRhLXNpZGU9cmlnaHRde2hlaWdodDoxMDAlfS5kYXRhLVxbc2lkZVw9cmlnaHRcXVw6dy0zXC80W2RhdGEtc2lkZT1yaWdodF17d2lkdGg6NzUlfS5kYXRhLVxbc2lkZVw9cmlnaHRcXVw6Ym9yZGVyLWxbZGF0YS1zaWRlPXJpZ2h0XXtib3JkZXItbGVmdC1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1sZWZ0LXdpZHRoOjFweH0uZGF0YS1cW3NpZGVcPXJpZ2h0XF1cOnNsaWRlLWluLWZyb20tbGVmdC0yW2RhdGEtc2lkZT1yaWdodF17LS10dy1lbnRlci10cmFuc2xhdGUteDpjYWxjKDIqdmFyKC0tc3BhY2luZykqLTEpfS5kYXRhLVxbc2lkZVw9cmlnaHRcXVw6ZGF0YS1lbmRpbmctc3R5bGVcOnRyYW5zbGF0ZS14LVxbMlwuNXJlbVxdW2RhdGEtc2lkZT1yaWdodF1bZGF0YS1lbmRpbmctc3R5bGVdLC5kYXRhLVxbc2lkZVw9cmlnaHRcXVw6ZGF0YS1zdGFydGluZy1zdHlsZVw6dHJhbnNsYXRlLXgtXFsyXC41cmVtXF1bZGF0YS1zaWRlPXJpZ2h0XVtkYXRhLXN0YXJ0aW5nLXN0eWxlXXstLXR3LXRyYW5zbGF0ZS14OjIuNXJlbTt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS5kYXRhLVxbc2lkZVw9dG9wXF1cOmluc2V0LXgtMFtkYXRhLXNpZGU9dG9wXXtpbnNldC1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZGF0YS1cW3NpZGVcPXRvcFxdXDp0b3AtMFtkYXRhLXNpZGU9dG9wXXt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZGF0YS1cW3NpZGVcPXRvcFxdXDpoLWF1dG9bZGF0YS1zaWRlPXRvcF17aGVpZ2h0OmF1dG99LmRhdGEtXFtzaWRlXD10b3BcXVw6Ym9yZGVyLWJbZGF0YS1zaWRlPXRvcF17Ym9yZGVyLWJvdHRvbS1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1ib3R0b20td2lkdGg6MXB4fS5kYXRhLVxbc2lkZVw9dG9wXF1cOnNsaWRlLWluLWZyb20tYm90dG9tLTJbZGF0YS1zaWRlPXRvcF17LS10dy1lbnRlci10cmFuc2xhdGUteTpjYWxjKDIqdmFyKC0tc3BhY2luZykpfS5kYXRhLVxbc2lkZVw9dG9wXF1cOmRhdGEtZW5kaW5nLXN0eWxlXDp0cmFuc2xhdGUteS1cWy0yXC41cmVtXF1bZGF0YS1zaWRlPXRvcF1bZGF0YS1lbmRpbmctc3R5bGVdLC5kYXRhLVxbc2lkZVw9dG9wXF1cOmRhdGEtc3RhcnRpbmctc3R5bGVcOnRyYW5zbGF0ZS15LVxbLTJcLjVyZW1cXVtkYXRhLXNpZGU9dG9wXVtkYXRhLXN0YXJ0aW5nLXN0eWxlXXstLXR3LXRyYW5zbGF0ZS15Oi0yLjVyZW07dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0uZGF0YS1cW3NpemVcPWxnXF1cOnNpemUtMTBbZGF0YS1zaXplPWxnXXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9LmRhdGEtXFtzaXplXD1zbVxdXDpzaXplLTZbZGF0YS1zaXplPXNtXXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5kYXRhLVxbc2l6ZVw9c21cXVw6Z2FwLTNbZGF0YS1zaXplPXNtXXtnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uZGF0YS1cW3NpemVcPXNtXF1cOnB5LTNbZGF0YS1zaXplPXNtXXtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMyl9LmRhdGEtXFtzaXplXD1zbVxdXDpoYXMtZGF0YS1cW3Nsb3RcPWNhcmQtZm9vdGVyXF1cOnBiLTBbZGF0YS1zaXplPXNtXTpoYXMoW2RhdGEtc2xvdD1jYXJkLWZvb3Rlcl0pe3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMCl9OmlzKC5cKlw6ZGF0YS1cW3Nsb3RcPWF2YXRhclxdXDpyaW5nLTI+KilbZGF0YS1zbG90PWF2YXRhcl17LS10dy1yaW5nLXNoYWRvdzp2YXIoLS10dy1yaW5nLWluc2V0LCkwIDAgMCBjYWxjKDJweCArIHZhcigtLXR3LXJpbmctb2Zmc2V0LXdpZHRoKSl2YXIoLS10dy1yaW5nLWNvbG9yLGN1cnJlbnRjb2xvcik7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfTppcyguXCpcOmRhdGEtXFtzbG90XD1hdmF0YXJcXVw6cmluZy1iYWNrZ3JvdW5kPiopW2RhdGEtc2xvdD1hdmF0YXJdey0tdHctcmluZy1jb2xvcjp2YXIoLS1iYWNrZ3JvdW5kKX06aXMoLlwqXDpkYXRhLVxbc2xvdFw9aW5wdXQtZ3JvdXAtYWRkb25cXVw6cGwtMlwhPiopW2RhdGEtc2xvdD1pbnB1dC1ncm91cC1hZGRvbl17cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMikhaW1wb3J0YW50fS5kYXRhLVxbc3RhdGVcPXNlbGVjdGVkXF1cOmJnLW11dGVkW2RhdGEtc3RhdGU9c2VsZWN0ZWRde2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfS5kYXRhLVxbdmFyaWFudFw9ZGVzdHJ1Y3RpdmVcXVw6dGV4dC1kZXN0cnVjdGl2ZVtkYXRhLXZhcmlhbnQ9ZGVzdHJ1Y3RpdmVde2NvbG9yOnZhcigtLWRlc3RydWN0aXZlKX0uZGF0YS1cW3ZhcmlhbnRcPWRlc3RydWN0aXZlXF1cOmZvY3VzXDpiZy1kZXN0cnVjdGl2ZVwvMTBbZGF0YS12YXJpYW50PWRlc3RydWN0aXZlXTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhdGEtXFt2YXJpYW50XD1kZXN0cnVjdGl2ZVxdXDpmb2N1c1w6YmctZGVzdHJ1Y3RpdmVcLzEwW2RhdGEtdmFyaWFudD1kZXN0cnVjdGl2ZV06Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMTAlLHRyYW5zcGFyZW50KX19LmRhdGEtXFt2YXJpYW50XD1kZXN0cnVjdGl2ZVxdXDpmb2N1c1w6dGV4dC1kZXN0cnVjdGl2ZVtkYXRhLXZhcmlhbnQ9ZGVzdHJ1Y3RpdmVdOmZvY3Vze2NvbG9yOnZhcigtLWRlc3RydWN0aXZlKX0uZGF0YS1cW3ZhcmlhbnRcPWxpbmVcXVw6cm91bmRlZC1ub25lW2RhdGEtdmFyaWFudD1saW5lXXtib3JkZXItcmFkaXVzOjB9QHN1cHBvcnRzICgoLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0tdHcpKSBvciAoYmFja2Ryb3AtZmlsdGVyOnZhcigtLXR3KSkpey5zdXBwb3J0cy1iYWNrZHJvcC1maWx0ZXJcOmJhY2tkcm9wLWJsdXIteHN7LS10dy1iYWNrZHJvcC1ibHVyOmJsdXIodmFyKC0tYmx1ci14cykpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXR3LWJhY2tkcm9wLWJsdXIsKXZhcigtLXR3LWJhY2tkcm9wLWJyaWdodG5lc3MsKXZhcigtLXR3LWJhY2tkcm9wLWNvbnRyYXN0LCl2YXIoLS10dy1iYWNrZHJvcC1ncmF5c2NhbGUsKXZhcigtLXR3LWJhY2tkcm9wLWh1ZS1yb3RhdGUsKXZhcigtLXR3LWJhY2tkcm9wLWludmVydCwpdmFyKC0tdHctYmFja2Ryb3Atb3BhY2l0eSwpdmFyKC0tdHctYmFja2Ryb3Atc2F0dXJhdGUsKXZhcigtLXR3LWJhY2tkcm9wLXNlcGlhLCk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXR3LWJhY2tkcm9wLWJsdXIsKXZhcigtLXR3LWJhY2tkcm9wLWJyaWdodG5lc3MsKXZhcigtLXR3LWJhY2tkcm9wLWNvbnRyYXN0LCl2YXIoLS10dy1iYWNrZHJvcC1ncmF5c2NhbGUsKXZhcigtLXR3LWJhY2tkcm9wLWh1ZS1yb3RhdGUsKXZhcigtLXR3LWJhY2tkcm9wLWludmVydCwpdmFyKC0tdHctYmFja2Ryb3Atb3BhY2l0eSwpdmFyKC0tdHctYmFja2Ryb3Atc2F0dXJhdGUsKXZhcigtLXR3LWJhY2tkcm9wLXNlcGlhLCl9fUBtZWRpYSAobWluLXdpZHRoOjQwcmVtKXsuc21cOmJsb2Nre2Rpc3BsYXk6YmxvY2t9LnNtXDpoaWRkZW57ZGlzcGxheTpub25lfS5zbVw6aW5saW5le2Rpc3BsYXk6aW5saW5lfS5zbVw6aW5saW5lLWZsZXh7ZGlzcGxheTppbmxpbmUtZmxleH0uc21cOmgtMjR7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMjQpfS5zbVw6dy00MHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQwKX0uc21cOnctYXV0b3t3aWR0aDphdXRvfS5zbVw6bWF4LXctc217bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci1zbSl9LnNtXDpmbGV4LW5vbmV7ZmxleDpub25lfS5zbVw6Z3JpZC1jb2xzLTJ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgyLG1pbm1heCgwLDFmcikpfS5zbVw6Z3JpZC1jb2xzLTN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgzLG1pbm1heCgwLDFmcikpfS5zbVw6ZmxleC1yb3d7ZmxleC1kaXJlY3Rpb246cm93fS5zbVw6aXRlbXMtY2VudGVye2FsaWduLWl0ZW1zOmNlbnRlcn0uc21cOmp1c3RpZnktYmV0d2VlbntqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0uc21cOmp1c3RpZnktZW5ke2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0uc21cOnAtNXtwYWRkaW5nOmNhbGModmFyKC0tc3BhY2luZykqNSl9LnNtXDpwLTZ7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5zbVw6cC04e3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0uc21cOnRleHQtcmlnaHR7dGV4dC1hbGlnbjpyaWdodH0uc21cOnRleHQtM3hse2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LTN4bCk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LTN4bC0tbGluZS1oZWlnaHQpKX0uc21cOnRleHQtYmFzZXtmb250LXNpemU6dmFyKC0tdGV4dC1iYXNlKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtYmFzZS0tbGluZS1oZWlnaHQpKX0uc21cOnRleHQteGx7Zm9udC1zaXplOnZhcigtLXRleHQteGwpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC14bC0tbGluZS1oZWlnaHQpKX0uZGF0YS1cW3NpZGVcPWxlZnRcXVw6c21cOm1heC13LXNtW2RhdGEtc2lkZT1sZWZ0XSwuZGF0YS1cW3NpZGVcPXJpZ2h0XF1cOnNtXDptYXgtdy1zbVtkYXRhLXNpZGU9cmlnaHRde21heC13aWR0aDp2YXIoLS1jb250YWluZXItc20pfX1AbWVkaWEgKG1pbi13aWR0aDo0OHJlbSl7Lm1kXDppbnNldC14LWF1dG97aW5zZXQtaW5saW5lOmF1dG99Lm1kXDpyaWdodC00e3JpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9Lm1kXDpib3R0b20tNHtib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0ubWRcOmxlZnQtYXV0b3tsZWZ0OmF1dG99Lm1kXDpibG9ja3tkaXNwbGF5OmJsb2NrfS5tZFw6ZmxleHtkaXNwbGF5OmZsZXh9Lm1kXDpoaWRkZW57ZGlzcGxheTpub25lfS5tZFw6dGFibGUtY2VsbHtkaXNwbGF5OnRhYmxlLWNlbGx9Lm1kXDptaW4tdy0we21pbi13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5tZFw6Z3JpZC1jb2xzLTF7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgxLG1pbm1heCgwLDFmcikpfS5tZFw6Z3JpZC1jb2xzLTJ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgyLG1pbm1heCgwLDFmcikpfS5tZFw6Z3JpZC1jb2xzLTN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgzLG1pbm1heCgwLDFmcikpfS5tZFw6Z3JpZC1jb2xzLTR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg0LG1pbm1heCgwLDFmcikpfS5tZFw6ZmxleC1jb2x7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZFw6aXRlbXMtY2VudGVye2FsaWduLWl0ZW1zOmNlbnRlcn0ubWRcOmdhcC0xe2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tZFw6cGItMHtwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5tZFw6dGV4dC1zbXtmb250LXNpemU6dmFyKC0tdGV4dC1zbSk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LXNtLS1saW5lLWhlaWdodCkpfS5tZFw6d2hpdGVzcGFjZS1ub3dyYXB7d2hpdGUtc3BhY2U6bm93cmFwfX1AbWVkaWEgKG1pbi13aWR0aDo2NHJlbSl7LmxnXDpzdGlja3l7cG9zaXRpb246c3RpY2t5fS5sZ1w6dG9wLTR7dG9wOmNhbGModmFyKC0tc3BhY2luZykqNCl9LmxnXDpibG9ja3tkaXNwbGF5OmJsb2NrfS5sZ1w6aGlkZGVue2Rpc3BsYXk6bm9uZX0ubGdcOnRhYmxlLWNlbGx7ZGlzcGxheTp0YWJsZS1jZWxsfS5sZ1w6dy03Mnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjcyKX0ubGdcOmdyaWQtY29scy0ye2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKX0ubGdcOmdyaWQtY29scy0ze2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMyxtaW5tYXgoMCwxZnIpKX0ubGdcOmdyaWQtY29scy00e2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNCxtaW5tYXgoMCwxZnIpKX0ubGdcOmdyaWQtY29scy01e2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNSxtaW5tYXgoMCwxZnIpKX0ubGdcOmdyaWQtY29scy1cWzFmcl8zNDBweFxde2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMzQwcHh9LmxnXDpmbGV4LXJvd3tmbGV4LWRpcmVjdGlvbjpyb3d9LmxnXDpzZWxmLXN0YXJ0e2FsaWduLXNlbGY6ZmxleC1zdGFydH19QG1lZGlhIChtaW4td2lkdGg6ODByZW0pey54bFw6dy04MHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjgwKX19LmRhcmtcOmJsb2NrOmlzKC5kYXJrICope2Rpc3BsYXk6YmxvY2t9LmRhcmtcOmhpZGRlbjppcyguZGFyayAqKXtkaXNwbGF5Om5vbmV9LmRhcmtcOmJvcmRlci1pbnB1dDppcyguZGFyayAqKXtib3JkZXItY29sb3I6dmFyKC0taW5wdXQpfS5kYXJrXDpiZy1kZXN0cnVjdGl2ZVwvMjA6aXMoLmRhcmsgKil7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXDpiZy1kZXN0cnVjdGl2ZVwvMjA6aXMoLmRhcmsgKil7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMjAlLHRyYW5zcGFyZW50KX19LmRhcmtcOmJnLWlucHV0XC8zMDppcyguZGFyayAqKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWlucHV0KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcOmJnLWlucHV0XC8zMDppcyguZGFyayAqKXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCkzMCUsdHJhbnNwYXJlbnQpfX0uZGFya1w6YmctdHJhbnNwYXJlbnQ6aXMoLmRhcmsgKil7YmFja2dyb3VuZC1jb2xvcjojMDAwMH0uZGFya1w6dGV4dC1ncmVlbi00MDA6aXMoLmRhcmsgKil7Y29sb3I6dmFyKC0tY29sb3ItZ3JlZW4tNDAwKX0uZGFya1w6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kOmlzKC5kYXJrICope2NvbG9yOnZhcigtLW11dGVkLWZvcmVncm91bmQpfS5kYXJrXDpwcm9zZS1pbnZlcnQ6aXMoLmRhcmsgKil7LS10dy1wcm9zZS1ib2R5OnZhcigtLXR3LXByb3NlLWludmVydC1ib2R5KTstLXR3LXByb3NlLWhlYWRpbmdzOnZhcigtLXR3LXByb3NlLWludmVydC1oZWFkaW5ncyk7LS10dy1wcm9zZS1sZWFkOnZhcigtLXR3LXByb3NlLWludmVydC1sZWFkKTstLXR3LXByb3NlLWxpbmtzOnZhcigtLXR3LXByb3NlLWludmVydC1saW5rcyk7LS10dy1wcm9zZS1ib2xkOnZhcigtLXR3LXByb3NlLWludmVydC1ib2xkKTstLXR3LXByb3NlLWNvdW50ZXJzOnZhcigtLXR3LXByb3NlLWludmVydC1jb3VudGVycyk7LS10dy1wcm9zZS1idWxsZXRzOnZhcigtLXR3LXByb3NlLWludmVydC1idWxsZXRzKTstLXR3LXByb3NlLWhyOnZhcigtLXR3LXByb3NlLWludmVydC1ocik7LS10dy1wcm9zZS1xdW90ZXM6dmFyKC0tdHctcHJvc2UtaW52ZXJ0LXF1b3Rlcyk7LS10dy1wcm9zZS1xdW90ZS1ib3JkZXJzOnZhcigtLXR3LXByb3NlLWludmVydC1xdW90ZS1ib3JkZXJzKTstLXR3LXByb3NlLWNhcHRpb25zOnZhcigtLXR3LXByb3NlLWludmVydC1jYXB0aW9ucyk7LS10dy1wcm9zZS1rYmQ6dmFyKC0tdHctcHJvc2UtaW52ZXJ0LWtiZCk7LS10dy1wcm9zZS1rYmQtc2hhZG93czp2YXIoLS10dy1wcm9zZS1pbnZlcnQta2JkLXNoYWRvd3MpOy0tdHctcHJvc2UtY29kZTp2YXIoLS10dy1wcm9zZS1pbnZlcnQtY29kZSk7LS10dy1wcm9zZS1wcmUtY29kZTp2YXIoLS10dy1wcm9zZS1pbnZlcnQtcHJlLWNvZGUpOy0tdHctcHJvc2UtcHJlLWJnOnZhcigtLXR3LXByb3NlLWludmVydC1wcmUtYmcpOy0tdHctcHJvc2UtdGgtYm9yZGVyczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtdGgtYm9yZGVycyk7LS10dy1wcm9zZS10ZC1ib3JkZXJzOnZhcigtLXR3LXByb3NlLWludmVydC10ZC1ib3JkZXJzKX0uZGFya1w6YWZ0ZXJcOm1peC1ibGVuZC1saWdodGVuOmlzKC5kYXJrICopOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7bWl4LWJsZW5kLW1vZGU6bGlnaHRlbn1AbWVkaWEgKGhvdmVyOmhvdmVyKXsuZGFya1w6aG92ZXJcOmJnLWRlc3RydWN0aXZlXC8zMDppcyguZGFyayAqKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcOmhvdmVyXDpiZy1kZXN0cnVjdGl2ZVwvMzA6aXMoLmRhcmsgKik6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMzAlLHRyYW5zcGFyZW50KX19LmRhcmtcOmhvdmVyXDpiZy1pbnB1dFwvNTA6aXMoLmRhcmsgKik6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1pbnB1dCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXDpob3Zlclw6YmctaW5wdXRcLzUwOmlzKC5kYXJrICopOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWlucHV0KTUwJSx0cmFuc3BhcmVudCl9fS5kYXJrXDpob3Zlclw6YmctbXV0ZWRcLzUwOmlzKC5kYXJrICopOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1w6aG92ZXJcOmJnLW11dGVkXC81MDppcyguZGFyayAqKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZCk1MCUsdHJhbnNwYXJlbnQpfX0uZGFya1w6aG92ZXJcOnRleHQtZm9yZWdyb3VuZDppcyguZGFyayAqKTpob3Zlcntjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX19LmRhcmtcOmZvY3VzLXZpc2libGVcOnJpbmctZGVzdHJ1Y3RpdmVcLzQwOmlzKC5kYXJrICopOmZvY3VzLXZpc2libGV7LS10dy1yaW5nLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcOmZvY3VzLXZpc2libGVcOnJpbmctZGVzdHJ1Y3RpdmVcLzQwOmlzKC5kYXJrICopOmZvY3VzLXZpc2libGV7LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSk0MCUsdHJhbnNwYXJlbnQpfX0uZGFya1w6ZGlzYWJsZWRcOmJnLWlucHV0XC84MDppcyguZGFyayAqKTpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWlucHV0KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcOmRpc2FibGVkXDpiZy1pbnB1dFwvODA6aXMoLmRhcmsgKik6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0taW5wdXQpODAlLHRyYW5zcGFyZW50KX19LmRhcmtcOmRpc2FibGVkXDpiZy10cmFuc3BhcmVudDppcyguZGFyayAqKTpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5kYXJrXDpoYXMtZGlzYWJsZWRcOmJnLWlucHV0XC84MDppcyguZGFyayAqKTpoYXMoOmRpc2FibGVkKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWlucHV0KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcOmhhcy1kaXNhYmxlZFw6YmctaW5wdXRcLzgwOmlzKC5kYXJrICopOmhhcyg6ZGlzYWJsZWQpe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWlucHV0KTgwJSx0cmFuc3BhcmVudCl9fS5kYXJrXDpoYXMtXFtcW2RhdGEtc2xvdFxdXFthcmlhLWludmFsaWRcPXRydWVcXVxdXDpyaW5nLWRlc3RydWN0aXZlXC80MDppcyguZGFyayAqKTpoYXMoW2RhdGEtc2xvdF1bYXJpYS1pbnZhbGlkPXRydWVdKXstLXR3LXJpbmctY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1w6aGFzLVxbXFtkYXRhLXNsb3RcXVxbYXJpYS1pbnZhbGlkXD10cnVlXF1cXVw6cmluZy1kZXN0cnVjdGl2ZVwvNDA6aXMoLmRhcmsgKik6aGFzKFtkYXRhLXNsb3RdW2FyaWEtaW52YWxpZD10cnVlXSl7LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSk0MCUsdHJhbnNwYXJlbnQpfX0uZGFya1w6YXJpYS1pbnZhbGlkXDpib3JkZXItZGVzdHJ1Y3RpdmVcLzUwOmlzKC5kYXJrICopW2FyaWEtaW52YWxpZD10cnVlXXtib3JkZXItY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1w6YXJpYS1pbnZhbGlkXDpib3JkZXItZGVzdHJ1Y3RpdmVcLzUwOmlzKC5kYXJrICopW2FyaWEtaW52YWxpZD10cnVlXXtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTUwJSx0cmFuc3BhcmVudCl9fS5kYXJrXDphcmlhLWludmFsaWRcOnJpbmctZGVzdHJ1Y3RpdmVcLzQwOmlzKC5kYXJrICopW2FyaWEtaW52YWxpZD10cnVlXXstLXR3LXJpbmctY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1w6YXJpYS1pbnZhbGlkXDpyaW5nLWRlc3RydWN0aXZlXC80MDppcyguZGFyayAqKVthcmlhLWludmFsaWQ9dHJ1ZV17LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSk0MCUsdHJhbnNwYXJlbnQpfX0uZGFya1w6ZGF0YS1cW3ZhcmlhbnRcPWRlc3RydWN0aXZlXF1cOmZvY3VzXDpiZy1kZXN0cnVjdGl2ZVwvMjA6aXMoLmRhcmsgKilbZGF0YS12YXJpYW50PWRlc3RydWN0aXZlXTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcOmRhdGEtXFt2YXJpYW50XD1kZXN0cnVjdGl2ZVxdXDpmb2N1c1w6YmctZGVzdHJ1Y3RpdmVcLzIwOmlzKC5kYXJrICopW2RhdGEtdmFyaWFudD1kZXN0cnVjdGl2ZV06Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMjAlLHRyYW5zcGFyZW50KX19LmRhdGEtb3Blblw6YW5pbWF0ZS1pbjp3aGVyZShbZGF0YS1zdGF0ZT1vcGVuXSksLmRhdGEtb3Blblw6YW5pbWF0ZS1pbjp3aGVyZShbZGF0YS1vcGVuXTpub3QoW2RhdGEtb3Blbj1mYWxzZV0pKXthbmltYXRpb246ZW50ZXIgdmFyKC0tdHctYW5pbWF0aW9uLWR1cmF0aW9uLHZhcigtLXR3LWR1cmF0aW9uLC4xNXMpKXZhcigtLXR3LWVhc2UsZWFzZSl2YXIoLS10dy1hbmltYXRpb24tZGVsYXksMHMpdmFyKC0tdHctYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwxKXZhcigtLXR3LWFuaW1hdGlvbi1kaXJlY3Rpb24sbm9ybWFsKXZhcigtLXR3LWFuaW1hdGlvbi1maWxsLW1vZGUsbm9uZSl9LmRhdGEtb3Blblw6YmctYWNjZW50OndoZXJlKFtkYXRhLXN0YXRlPW9wZW5dKSwuZGF0YS1vcGVuXDpiZy1hY2NlbnQ6d2hlcmUoW2RhdGEtb3Blbl06bm90KFtkYXRhLW9wZW49ZmFsc2VdKSl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1hY2NlbnQpfS5kYXRhLW9wZW5cOnRleHQtYWNjZW50LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtc3RhdGU9b3Blbl0pLC5kYXRhLW9wZW5cOnRleHQtYWNjZW50LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtb3Blbl06bm90KFtkYXRhLW9wZW49ZmFsc2VdKSl7Y29sb3I6dmFyKC0tYWNjZW50LWZvcmVncm91bmQpfS5kYXRhLW9wZW5cOmZhZGUtaW4tMDp3aGVyZShbZGF0YS1zdGF0ZT1vcGVuXSksLmRhdGEtb3Blblw6ZmFkZS1pbi0wOndoZXJlKFtkYXRhLW9wZW5dOm5vdChbZGF0YS1vcGVuPWZhbHNlXSkpey0tdHctZW50ZXItb3BhY2l0eTowfS5kYXRhLW9wZW5cOnpvb20taW4tOTU6d2hlcmUoW2RhdGEtc3RhdGU9b3Blbl0pLC5kYXRhLW9wZW5cOnpvb20taW4tOTU6d2hlcmUoW2RhdGEtb3Blbl06bm90KFtkYXRhLW9wZW49ZmFsc2VdKSl7LS10dy1lbnRlci1zY2FsZTouOTV9LmRhdGEtY2xvc2VkXDphbmltYXRlLW91dDp3aGVyZShbZGF0YS1zdGF0ZT1jbG9zZWRdKSwuZGF0YS1jbG9zZWRcOmFuaW1hdGUtb3V0OndoZXJlKFtkYXRhLWNsb3NlZF06bm90KFtkYXRhLWNsb3NlZD1mYWxzZV0pKXthbmltYXRpb246ZXhpdCB2YXIoLS10dy1hbmltYXRpb24tZHVyYXRpb24sdmFyKC0tdHctZHVyYXRpb24sLjE1cykpdmFyKC0tdHctZWFzZSxlYXNlKXZhcigtLXR3LWFuaW1hdGlvbi1kZWxheSwwcyl2YXIoLS10dy1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50LDEpdmFyKC0tdHctYW5pbWF0aW9uLWRpcmVjdGlvbixub3JtYWwpdmFyKC0tdHctYW5pbWF0aW9uLWZpbGwtbW9kZSxub25lKX0uZGF0YS1jbG9zZWRcOm92ZXJmbG93LWhpZGRlbjp3aGVyZShbZGF0YS1zdGF0ZT1jbG9zZWRdKSwuZGF0YS1jbG9zZWRcOm92ZXJmbG93LWhpZGRlbjp3aGVyZShbZGF0YS1jbG9zZWRdOm5vdChbZGF0YS1jbG9zZWQ9ZmFsc2VdKSl7b3ZlcmZsb3c6aGlkZGVufS5kYXRhLWNsb3NlZFw6ZmFkZS1vdXQtMDp3aGVyZShbZGF0YS1zdGF0ZT1jbG9zZWRdKSwuZGF0YS1jbG9zZWRcOmZhZGUtb3V0LTA6d2hlcmUoW2RhdGEtY2xvc2VkXTpub3QoW2RhdGEtY2xvc2VkPWZhbHNlXSkpey0tdHctZXhpdC1vcGFjaXR5OjB9LmRhdGEtY2xvc2VkXDp6b29tLW91dC05NTp3aGVyZShbZGF0YS1zdGF0ZT1jbG9zZWRdKSwuZGF0YS1jbG9zZWRcOnpvb20tb3V0LTk1OndoZXJlKFtkYXRhLWNsb3NlZF06bm90KFtkYXRhLWNsb3NlZD1mYWxzZV0pKXstLXR3LWV4aXQtc2NhbGU6Ljk1fS5kYXRhLXNlbGVjdGVkXDpiZy1tdXRlZDp3aGVyZShbZGF0YS1zZWxlY3RlZD10cnVlXSl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZCl9LmRhdGEtc2VsZWN0ZWRcOnRleHQtZm9yZWdyb3VuZDp3aGVyZShbZGF0YS1zZWxlY3RlZD10cnVlXSl7Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9LmRhdGEtZGlzYWJsZWRcOnBvaW50ZXItZXZlbnRzLW5vbmU6d2hlcmUoW2RhdGEtZGlzYWJsZWQ9dHJ1ZV0pLC5kYXRhLWRpc2FibGVkXDpwb2ludGVyLWV2ZW50cy1ub25lOndoZXJlKFtkYXRhLWRpc2FibGVkXTpub3QoW2RhdGEtZGlzYWJsZWQ9ZmFsc2VdKSl7cG9pbnRlci1ldmVudHM6bm9uZX0uZGF0YS1kaXNhYmxlZFw6b3BhY2l0eS01MDp3aGVyZShbZGF0YS1kaXNhYmxlZD10cnVlXSksLmRhdGEtZGlzYWJsZWRcOm9wYWNpdHktNTA6d2hlcmUoW2RhdGEtZGlzYWJsZWRdOm5vdChbZGF0YS1kaXNhYmxlZD1mYWxzZV0pKXtvcGFjaXR5Oi41fS5kYXRhLWFjdGl2ZVw6YmctYmFja2dyb3VuZDp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGF0YS1hY3RpdmVcOmJnLWJhY2tncm91bmQ6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2JhY2tncm91bmQtY29sb3I6dmFyKC0tYmFja2dyb3VuZCl9LmRhdGEtYWN0aXZlXDp0ZXh0LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmRhdGEtYWN0aXZlXDp0ZXh0LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5ncm91cC1kYXRhLVxbdmFyaWFudFw9ZGVmYXVsdFxdXC90YWJzLWxpc3RcOmRhdGEtYWN0aXZlXDpzaGFkb3ctc206aXMoOndoZXJlKC5ncm91cFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9ZGVmYXVsdF0gKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmdyb3VwLWRhdGEtXFt2YXJpYW50XD1kZWZhdWx0XF1cL3RhYnMtbGlzdFw6ZGF0YS1hY3RpdmVcOnNoYWRvdy1zbTppcyg6d2hlcmUoLmdyb3VwXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1kZWZhdWx0XSAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7LS10dy1zaGFkb3c6MCAxcHggM3B4IDAgdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSksMCAxcHggMnB4IC0xcHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSk7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfS5ncm91cC1kYXRhLVxbdmFyaWFudFw9bGluZVxdXC90YWJzLWxpc3RcOmRhdGEtYWN0aXZlXDpiZy10cmFuc3BhcmVudDppcyg6d2hlcmUoLmdyb3VwXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZ3JvdXAtZGF0YS1cW3ZhcmlhbnRcPWxpbmVcXVwvdGFicy1saXN0XDpkYXRhLWFjdGl2ZVw6YmctdHJhbnNwYXJlbnQ6aXMoOndoZXJlKC5ncm91cFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9bGluZV0gKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2JhY2tncm91bmQtY29sb3I6IzAwMDB9Lmdyb3VwLWRhdGEtXFt2YXJpYW50XD1saW5lXF1cL3RhYnMtbGlzdFw6ZGF0YS1hY3RpdmVcOnNoYWRvdy1ub25lOmlzKDp3aGVyZSguZ3JvdXBcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWxpbmVdICopOndoZXJlKFtkYXRhLXN0YXRlPWFjdGl2ZV0pLC5ncm91cC1kYXRhLVxbdmFyaWFudFw9bGluZVxdXC90YWJzLWxpc3RcOmRhdGEtYWN0aXZlXDpzaGFkb3ctbm9uZTppcyg6d2hlcmUoLmdyb3VwXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7LS10dy1zaGFkb3c6MCAwICMwMDAwO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX06aXMoLmdyb3VwLWRhdGEtXFt2YXJpYW50XD1saW5lXF1cL3RhYnMtbGlzdFw6ZGF0YS1hY3RpdmVcOmFmdGVyXDpvcGFjaXR5LTEwMDppcyg6d2hlcmUoLmdyb3VwXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZ3JvdXAtZGF0YS1cW3ZhcmlhbnRcPWxpbmVcXVwvdGFicy1saXN0XDpkYXRhLWFjdGl2ZVw6YWZ0ZXJcOm9wYWNpdHktMTAwOmlzKDp3aGVyZSguZ3JvdXBcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWxpbmVdICopOndoZXJlKFtkYXRhLWFjdGl2ZV06bm90KFtkYXRhLWFjdGl2ZT1mYWxzZV0pKSk6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtvcGFjaXR5OjF9LmRhcmtcOmRhdGEtYWN0aXZlXDpib3JkZXItaW5wdXQ6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmRhcmtcOmRhdGEtYWN0aXZlXDpib3JkZXItaW5wdXQ6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2JvcmRlci1jb2xvcjp2YXIoLS1pbnB1dCl9LmRhcmtcOmRhdGEtYWN0aXZlXDpiZy1pbnB1dFwvMzA6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmRhcmtcOmRhdGEtYWN0aXZlXDpiZy1pbnB1dFwvMzA6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2JhY2tncm91bmQtY29sb3I6dmFyKC0taW5wdXQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1w6ZGF0YS1hY3RpdmVcOmJnLWlucHV0XC8zMDppcyguZGFyayAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGFya1w6ZGF0YS1hY3RpdmVcOmJnLWlucHV0XC8zMDppcyguZGFyayAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0taW5wdXQpMzAlLHRyYW5zcGFyZW50KX19LmRhcmtcOmRhdGEtYWN0aXZlXDp0ZXh0LWZvcmVncm91bmQ6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmRhcmtcOmRhdGEtYWN0aXZlXDp0ZXh0LWZvcmVncm91bmQ6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5kYXJrXDpncm91cC1kYXRhLVxbdmFyaWFudFw9bGluZVxdXC90YWJzLWxpc3RcOmRhdGEtYWN0aXZlXDpib3JkZXItdHJhbnNwYXJlbnQ6aXMoLmRhcmsgKik6aXMoOndoZXJlKC5ncm91cFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9bGluZV0gKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmRhcmtcOmdyb3VwLWRhdGEtXFt2YXJpYW50XD1saW5lXF1cL3RhYnMtbGlzdFw6ZGF0YS1hY3RpdmVcOmJvcmRlci10cmFuc3BhcmVudDppcyguZGFyayAqKTppcyg6d2hlcmUoLmdyb3VwXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7Ym9yZGVyLWNvbG9yOiMwMDAwfS5kYXJrXDpncm91cC1kYXRhLVxbdmFyaWFudFw9bGluZVxdXC90YWJzLWxpc3RcOmRhdGEtYWN0aXZlXDpiZy10cmFuc3BhcmVudDppcyguZGFyayAqKTppcyg6d2hlcmUoLmdyb3VwXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGFya1w6Z3JvdXAtZGF0YS1cW3ZhcmlhbnRcPWxpbmVcXVwvdGFicy1saXN0XDpkYXRhLWFjdGl2ZVw6YmctdHJhbnNwYXJlbnQ6aXMoLmRhcmsgKik6aXMoOndoZXJlKC5ncm91cFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9bGluZV0gKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2JhY2tncm91bmQtY29sb3I6IzAwMDB9LmRhdGEtaG9yaXpvbnRhbFw6aC1weDp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj1ob3Jpem9udGFsXSl7aGVpZ2h0OjFweH0uZGF0YS1ob3Jpem9udGFsXDp3LWZ1bGw6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249aG9yaXpvbnRhbF0pe3dpZHRoOjEwMCV9LmRhdGEtaG9yaXpvbnRhbFw6ZmxleC1jb2w6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249aG9yaXpvbnRhbF0pe2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZGF0YS12ZXJ0aWNhbFw6dy1weDp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pe3dpZHRoOjFweH0uZGF0YS12ZXJ0aWNhbFw6c2VsZi1zdHJldGNoOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPXZlcnRpY2FsXSl7YWxpZ24tc2VsZjpzdHJldGNofS5cW1wmX2FcXVw6dGV4dC1wcmltYXJ5IGF7Y29sb3I6dmFyKC0tcHJpbWFyeSl9LlxbXCZfaDNcXVw6bXQtNiBoM3ttYXJnaW4tdG9wOmNhbGModmFyKC0tc3BhY2luZykqNil9LlxbXCZfaDNcXVw6bWItMiBoM3ttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMil9LlxbXCZfaDNcXVw6dGV4dC1mb3JlZ3JvdW5kIGgze2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5cW1wmX3N2Z1xdXDpwb2ludGVyLWV2ZW50cy1ub25lIHN2Z3twb2ludGVyLWV2ZW50czpub25lfS5cW1wmX3N2Z1xdXDpzaHJpbmstMCBzdmd7ZmxleC1zaHJpbms6MH0uXFtcJl9zdmdcOm5vdFwoXFtjbGFzc1wqXD1cJ3NpemUtXCdcXVwpXF1cOnNpemUtMyBzdmc6bm90KFtjbGFzcyo9c2l6ZS1dKXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5cW1wmX3N2Z1w6bm90XChcW2NsYXNzXCpcPVwnc2l6ZS1cJ1xdXClcXVw6c2l6ZS0zXC41IHN2Zzpub3QoW2NsYXNzKj1zaXplLV0pe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMy41KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpfS5cW1wmX3N2Z1w6bm90XChcW2NsYXNzXCpcPVwnc2l6ZS1cJ1xdXClcXVw6c2l6ZS00IHN2Zzpub3QoW2NsYXNzKj1zaXplLV0pe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9LlxbXCZfdHJcXVw6Ym9yZGVyLWIgdHJ7Ym9yZGVyLWJvdHRvbS1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1ib3R0b20td2lkdGg6MXB4fS5cW1wmX3RyXDpsYXN0LWNoaWxkXF1cOmJvcmRlci0wIHRyOmxhc3QtY2hpbGR7Ym9yZGVyLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXdpZHRoOjB9LlxbXCZcOlw6LXdlYmtpdC1kZXRhaWxzLW1hcmtlclxdXDpoaWRkZW46Oi13ZWJraXQtZGV0YWlscy1tYXJrZXJ7ZGlzcGxheTpub25lfS5cW1wmXDpcOi13ZWJraXQtc2Nyb2xsYmFyXF1cOmhpZGRlbjo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS5cW1wmXDpoYXNcKFxbcm9sZVw9Y2hlY2tib3hcXVwpXF1cOnByLTA6aGFzKFtyb2xlPWNoZWNrYm94XSl7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5cW1wuYm9yZGVyLWJcXVw6cGItMi5ib3JkZXItYntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5cW1wuYm9yZGVyLWJcXVw6cGItNC5ib3JkZXItYntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5ncm91cC1kYXRhLVxbc2l6ZVw9c21cXVwvY2FyZFw6XFtcLmJvcmRlci1iXF1cOnBiLTM6aXMoOndoZXJlKC5ncm91cFwvY2FyZClbZGF0YS1zaXplPXNtXSAqKS5ib3JkZXItYntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5cW1wuYm9yZGVyLXRcXVw6cHQtMi5ib3JkZXItdHtwYWRkaW5nLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfTppcyguXCpcKlw6XFtcW2NtZGstZ3JvdXAtaGVhZGluZ1xdXF1cOnB4LTIgKilbY21kay1ncm91cC1oZWFkaW5nXXtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfTppcyguXCpcKlw6XFtcW2NtZGstZ3JvdXAtaGVhZGluZ1xdXF1cOnB5LTFcLjUgKilbY21kay1ncm91cC1oZWFkaW5nXXtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMS41KX06aXMoLlwqXCpcOlxbXFtjbWRrLWdyb3VwLWhlYWRpbmdcXVxdXDp0ZXh0LXhzICopW2NtZGstZ3JvdXAtaGVhZGluZ117Zm9udC1zaXplOnZhcigtLXRleHQteHMpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC14cy0tbGluZS1oZWlnaHQpKX06aXMoLlwqXCpcOlxbXFtjbWRrLWdyb3VwLWhlYWRpbmdcXVxdXDpmb250LW1lZGl1bSAqKVtjbWRrLWdyb3VwLWhlYWRpbmddey0tdHctZm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtmb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pfTppcyguXCpcKlw6XFtcW2NtZGstZ3JvdXAtaGVhZGluZ1xdXF1cOnRleHQtbXV0ZWQtZm9yZWdyb3VuZCAqKVtjbWRrLWdyb3VwLWhlYWRpbmdde2NvbG9yOnZhcigtLW11dGVkLWZvcmVncm91bmQpfTppcyguXCpcOlxbYVxdXDp1bmRlcmxpbmU+Kik6aXMoYSl7dGV4dC1kZWNvcmF0aW9uLWxpbmU6dW5kZXJsaW5lfTppcyguXCpcOlxbYVxdXDp1bmRlcmxpbmUtb2Zmc2V0LTM+Kik6aXMoYSl7dGV4dC11bmRlcmxpbmUtb2Zmc2V0OjNweH1AbWVkaWEgKGhvdmVyOmhvdmVyKXsuXFthXF1cOmhvdmVyXDpiZy1kZXN0cnVjdGl2ZVwvMjA6aXMoYSk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5cW2FcXVw6aG92ZXJcOmJnLWRlc3RydWN0aXZlXC8yMDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSkyMCUsdHJhbnNwYXJlbnQpfX0uXFthXF1cOmhvdmVyXDpiZy1tdXRlZDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX0uXFthXF1cOmhvdmVyXDpiZy1wcmltYXJ5XC84MDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuXFthXF1cOmhvdmVyXDpiZy1wcmltYXJ5XC84MDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1wcmltYXJ5KTgwJSx0cmFuc3BhcmVudCl9fS5cW2FcXVw6aG92ZXJcOmJnLXNlY29uZGFyeVwvODA6aXMoYSk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zZWNvbmRhcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuXFthXF1cOmhvdmVyXDpiZy1zZWNvbmRhcnlcLzgwOmlzKGEpOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXNlY29uZGFyeSk4MCUsdHJhbnNwYXJlbnQpfX0uXFthXF1cOmhvdmVyXDp0ZXh0LW11dGVkLWZvcmVncm91bmQ6aXMoYSk6aG92ZXJ7Y29sb3I6dmFyKC0tbXV0ZWQtZm9yZWdyb3VuZCl9OmlzKC5cKlw6XFthXF1cOmhvdmVyXDp0ZXh0LWZvcmVncm91bmQ+Kik6aXMoYSk6aG92ZXJ7Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9fTppcyguXCpcOlxbaW1nXDpmaXJzdC1jaGlsZFxdXDpyb3VuZGVkLXQteGw+Kik6aXMoaW1nOmZpcnN0LWNoaWxkKXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpfTppcyguXCpcOlxbaW1nXDpsYXN0LWNoaWxkXF1cOnJvdW5kZWQtYi14bD4qKTppcyhpbWc6bGFzdC1jaGlsZCl7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuNCk7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqMS40KX06aXMoLmRhdGEtXFt2YXJpYW50XD1kZXN0cnVjdGl2ZVxdXDpcKlw6XFtzdmdcXVw6dGV4dC1kZXN0cnVjdGl2ZVtkYXRhLXZhcmlhbnQ9ZGVzdHJ1Y3RpdmVdPiopOmlzKHN2Zyl7Y29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfTppcyguZGF0YS1zZWxlY3RlZFw6XCpcOlxbc3ZnXF1cOnRleHQtZm9yZWdyb3VuZDp3aGVyZShbZGF0YS1zZWxlY3RlZD10cnVlXSk+Kik6aXMoc3ZnKXtjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX0uaGFzLVxbXD5cW2RhdGEtYWxpZ25cPWJsb2NrLWVuZFxdXF1cOlxbXCZcPmlucHV0XF1cOnB0LTM6aGFzKD5bZGF0YS1hbGlnbj1ibG9jay1lbmRdKT5pbnB1dHtwYWRkaW5nLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5oYXMtXFtcPlxbZGF0YS1hbGlnblw9YmxvY2stc3RhcnRcXVxdXDpcW1wmXD5pbnB1dFxdXDpwYi0zOmhhcyg+W2RhdGEtYWxpZ249YmxvY2stc3RhcnRdKT5pbnB1dHtwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5oYXMtXFtcPlxbZGF0YS1hbGlnblw9aW5saW5lLWVuZFxdXF1cOlxbXCZcPmlucHV0XF1cOnByLTFcLjU6aGFzKD5bZGF0YS1hbGlnbj1pbmxpbmUtZW5kXSk+aW5wdXR7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9Lmhhcy1cW1w+XFtkYXRhLWFsaWduXD1pbmxpbmUtc3RhcnRcXVxdXDpcW1wmXD5pbnB1dFxdXDpwbC0xXC41Omhhcyg+W2RhdGEtYWxpZ249aW5saW5lLXN0YXJ0XSk+aW5wdXR7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMS41KX0uXFtcJlw+a2JkXF1cOnJvdW5kZWQtXFtjYWxjXCh2YXJcKC0tcmFkaXVzXCktNXB4XClcXT5rYmR7Ym9yZGVyLXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykgLSA1cHgpfS5cW1wmXD5zdmdcXVw6cG9pbnRlci1ldmVudHMtbm9uZT5zdmd7cG9pbnRlci1ldmVudHM6bm9uZX0uXFtcJlw+c3ZnXF1cOnNpemUtM1whPnN2Z3t3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpIWltcG9ydGFudDtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKSFpbXBvcnRhbnR9LlxbXCZcPnN2Z1xdXDpzaXplLTQ+c3Zne3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9Lmdyb3VwLWhhcy1kYXRhLVxbc2l6ZVw9bGdcXVwvYXZhdGFyLWdyb3VwXDpcW1wmXD5zdmdcXVw6c2l6ZS01OmlzKDp3aGVyZSguZ3JvdXBcL2F2YXRhci1ncm91cCk6aGFzKFtkYXRhLXNpemU9bGddKSAqKT5zdmd7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX0uZ3JvdXAtaGFzLWRhdGEtXFtzaXplXD1zbVxdXC9hdmF0YXItZ3JvdXBcOlxbXCZcPnN2Z1xdXDpzaXplLTM6aXMoOndoZXJlKC5ncm91cFwvYXZhdGFyLWdyb3VwKTpoYXMoW2RhdGEtc2l6ZT1zbV0pICopPnN2Z3t3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5ncm91cC1kYXRhLVxbc2l6ZVw9ZGVmYXVsdFxdXC9hdmF0YXJcOlxbXCZcPnN2Z1xdXDpzaXplLTI6aXMoOndoZXJlKC5ncm91cFwvYXZhdGFyKVtkYXRhLXNpemU9ZGVmYXVsdF0gKik+c3ZnLC5ncm91cC1kYXRhLVxbc2l6ZVw9bGdcXVwvYXZhdGFyXDpcW1wmXD5zdmdcXVw6c2l6ZS0yOmlzKDp3aGVyZSguZ3JvdXBcL2F2YXRhcilbZGF0YS1zaXplPWxnXSAqKT5zdmd7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0uZ3JvdXAtZGF0YS1cW3NpemVcPXNtXF1cL2F2YXRhclw6XFtcJlw+c3ZnXF1cOmhpZGRlbjppcyg6d2hlcmUoLmdyb3VwXC9hdmF0YXIpW2RhdGEtc2l6ZT1zbV0gKik+c3Zne2Rpc3BsYXk6bm9uZX0uXFtcJlw+c3ZnXDpub3RcKFxbY2xhc3NcKlw9XCdzaXplLVwnXF1cKVxdXDpzaXplLTNcLjU+c3ZnOm5vdChbY2xhc3MqPXNpemUtXSl7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMuNSl9LlxbXCZcPnN2Z1w6bm90XChcW2NsYXNzXCpcPVwnc2l6ZS1cJ1xdXClcXVw6c2l6ZS00PnN2Zzpub3QoW2NsYXNzKj1zaXplLV0pe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9LlxbXCZcPnRyXF1cOmxhc3RcOmJvcmRlci1iLTA+dHI6bGFzdC1jaGlsZHtib3JkZXItYm90dG9tLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLWJvdHRvbS13aWR0aDowfX1AcHJvcGVydHkgLS10dy1hbmltYXRpb24tZGVsYXl7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjBzfUBwcm9wZXJ0eSAtLXR3LWFuaW1hdGlvbi1kaXJlY3Rpb257c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOm5vcm1hbH1AcHJvcGVydHkgLS10dy1hbmltYXRpb24tZHVyYXRpb257c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1hbmltYXRpb24tZmlsbC1tb2Rle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTpub25lfUBwcm9wZXJ0eSAtLXR3LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnR7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjF9QHByb3BlcnR5IC0tdHctZW50ZXItYmx1cntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1lbnRlci1vcGFjaXR5e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZToxfUBwcm9wZXJ0eSAtLXR3LWVudGVyLXJvdGF0ZXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1lbnRlci1zY2FsZXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MX1AcHJvcGVydHkgLS10dy1lbnRlci10cmFuc2xhdGUteHtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1lbnRlci10cmFuc2xhdGUteXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1leGl0LWJsdXJ7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctZXhpdC1vcGFjaXR5e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZToxfUBwcm9wZXJ0eSAtLXR3LWV4aXQtcm90YXRle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LWV4aXQtc2NhbGV7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjF9QHByb3BlcnR5IC0tdHctZXhpdC10cmFuc2xhdGUteHtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1leGl0LXRyYW5zbGF0ZS15e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfTpyb290ey0tYmFja2dyb3VuZDojZmZmOy0tZm9yZWdyb3VuZDojMTExODI3Oy0tY2FyZDojZjlmYWZiOy0tY2FyZC1mb3JlZ3JvdW5kOiMxMTE4Mjc7LS1wb3BvdmVyOiNmZmY7LS1wb3BvdmVyLWZvcmVncm91bmQ6IzExMTgyNzstLXByaW1hcnk6IzAwNzBlYzstLXByaW1hcnktZm9yZWdyb3VuZDojZmZmOy0tc2Vjb25kYXJ5OiNmM2Y0ZjY7LS1zZWNvbmRhcnktZm9yZWdyb3VuZDojMTExODI3Oy0tbXV0ZWQ6I2YzZjRmNjstLW11dGVkLWZvcmVncm91bmQ6IzZiNzI4MDstLWFjY2VudDojZjNmNGY2Oy0tYWNjZW50LWZvcmVncm91bmQ6IzExMTgyNzstLWRlc3RydWN0aXZlOiNlZjQ0NDQ7LS1ib3JkZXI6I2U1ZTdlYjstLWlucHV0OiNlNWU3ZWI7LS1yaW5nOiMwMDc0ZjU7LS1yYWRpdXM6LjVyZW07LS1zdWNjZXNzOiMyMmM1NWU7LS1kYW5nZXI6I2VmNDQ0NDstLXdhcm5pbmc6I2Y1OWUwYjstLWluZm86IzNiODJmNjstLXN1cmZhY2U6I2Y5ZmFmYjstLXN1cmZhY2UtMjojZjNmNGY2Oy0tY2hhcnQtMTojMDA3NGY1Oy0tY2hhcnQtMjojMDBiOGE5Oy0tY2hhcnQtMzojMjJjNTVlOy0tY2hhcnQtNDojZjU5ZTBiOy0tY2hhcnQtNTojZWY0NDQ0Oy0tc2lkZWJhcjojZjlmYWZiOy0tc2lkZWJhci1mb3JlZ3JvdW5kOiMxMTE4Mjc7LS1zaWRlYmFyLXByaW1hcnk6IzAwNzRmNTstLXNpZGViYXItcHJpbWFyeS1mb3JlZ3JvdW5kOiNmZmY7LS1zaWRlYmFyLWFjY2VudDojZjNmNGY2Oy0tc2lkZWJhci1hY2NlbnQtZm9yZWdyb3VuZDojMTExODI3Oy0tc2lkZWJhci1ib3JkZXI6I2U1ZTdlYjstLXNpZGViYXItcmluZzojMDA3NGY1fS5kYXJrey0tYmFja2dyb3VuZDojMGIwZjE5Oy0tZm9yZWdyb3VuZDojZjlmYWZiOy0tY2FyZDojMTExODI3Oy0tY2FyZC1mb3JlZ3JvdW5kOiNmOWZhZmI7LS1wb3BvdmVyOiMxMTE4Mjc7LS1wb3BvdmVyLWZvcmVncm91bmQ6I2Y5ZmFmYjstLXByaW1hcnk6IzAwNzBlYzstLXByaW1hcnktZm9yZWdyb3VuZDojZmZmOy0tc2Vjb25kYXJ5OiMxZjI5Mzc7LS1zZWNvbmRhcnktZm9yZWdyb3VuZDojZjlmYWZiOy0tbXV0ZWQ6IzFmMjkzNzstLW11dGVkLWZvcmVncm91bmQ6IzljYTNhZjstLWFjY2VudDojMWYyOTM3Oy0tYWNjZW50LWZvcmVncm91bmQ6I2Y5ZmFmYjstLWRlc3RydWN0aXZlOiNlZjQ0NDQ7LS1ib3JkZXI6IzM3NDE1MTstLWlucHV0OiMzNzQxNTE7LS1yaW5nOiMwMDc0ZjU7LS1zdWNjZXNzOiMyMmM1NWU7LS1kYW5nZXI6I2VmNDQ0NDstLXdhcm5pbmc6I2Y1OWUwYjstLWluZm86IzNiODJmNjstLXN1cmZhY2U6IzExMTgyNzstLXN1cmZhY2UtMjojMWYyOTM3Oy0tY2hhcnQtMTojM2Q5YWZmOy0tY2hhcnQtMjojMzNjOWJkOy0tY2hhcnQtMzojMjJjNTVlOy0tY2hhcnQtNDojZjU5ZTBiOy0tY2hhcnQtNTojZWY0NDQ0Oy0tc2lkZWJhcjojMTExODI3Oy0tc2lkZWJhci1mb3JlZ3JvdW5kOiNmOWZhZmI7LS1zaWRlYmFyLXByaW1hcnk6IzNkOWFmZjstLXNpZGViYXItcHJpbWFyeS1mb3JlZ3JvdW5kOiNmZmY7LS1zaWRlYmFyLWFjY2VudDojMWYyOTM3Oy0tc2lkZWJhci1hY2NlbnQtZm9yZWdyb3VuZDojZjlmYWZiOy0tc2lkZWJhci1ib3JkZXI6IzM3NDE1MTstLXNpZGViYXItcmluZzojMDA3NGY1fUBrZXlmcmFtZXMgdGV4dC1zaGltbWVyezAle2JhY2tncm91bmQtcG9zaXRpb246MjAwJX10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOi0yMDAlfX0udGV4dC1zaGltbWVye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHZhcigtLW11dGVkLWZvcmVncm91bmQpNDAlLHZhcigtLWZvcmVncm91bmQpNTAlLHZhcigtLW11dGVkLWZvcmVncm91bmQpNjAlKTtjb2xvcjojMDAwMDtiYWNrZ3JvdW5kLXNpemU6MjAwJTstd2Via2l0LWJhY2tncm91bmQtY2xpcDp0ZXh0O2JhY2tncm91bmQtY2xpcDp0ZXh0O2FuaW1hdGlvbjoycyBsaW5lYXIgaW5maW5pdGUgdGV4dC1zaGltbWVyfWh0bWwuY2MtY29uc2VudGVkIC5jb29raWUtbm90aWNle2Rpc3BsYXk6bm9uZX1AcHJvcGVydHkgLS10dy10cmFuc2xhdGUteHtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy10cmFuc2xhdGUteXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy10cmFuc2xhdGUtentzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1yb3RhdGUteHtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXJvdGF0ZS15e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctcm90YXRlLXp7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1za2V3LXh7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1za2V3LXl7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1zcGFjZS15LXJldmVyc2V7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctc3BhY2UteC1yZXZlcnNle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LWRpdmlkZS15LXJldmVyc2V7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctYm9yZGVyLXN0eWxle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTpzb2xpZH1AcHJvcGVydHkgLS10dy1ncmFkaWVudC1wb3NpdGlvbntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LWZyb217c3ludGF4OiI8Y29sb3I+Ijtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOiMwMDAwfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LXZpYXtzeW50YXg6Ijxjb2xvcj4iO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6IzAwMDB9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtdG97c3ludGF4OiI8Y29sb3I+Ijtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOiMwMDAwfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LXN0b3Bze3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtdmlhLXN0b3Bze3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtZnJvbS1wb3NpdGlvbntzeW50YXg6IjxsZW5ndGgtcGVyY2VudGFnZT4iO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MCV9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtdmlhLXBvc2l0aW9ue3N5bnRheDoiPGxlbmd0aC1wZXJjZW50YWdlPiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTo1MCV9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtdG8tcG9zaXRpb257c3ludGF4OiI8bGVuZ3RoLXBlcmNlbnRhZ2U+Ijtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjEwMCV9QHByb3BlcnR5IC0tdHctbGVhZGluZ3tzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWZvbnQtd2VpZ2h0e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctdHJhY2tpbmd7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1vcmRpbmFse3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2xhc2hlZC16ZXJve3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctbnVtZXJpYy1maWd1cmV7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1udW1lcmljLXNwYWNpbmd7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1udW1lcmljLWZyYWN0aW9ue3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2hhZG93e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowIDAgIzAwMDB9QHByb3BlcnR5IC0tdHctc2hhZG93LWNvbG9ye3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2hhZG93LWFscGhhe3N5bnRheDoiPHBlcmNlbnRhZ2U+Ijtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjEwMCV9QHByb3BlcnR5IC0tdHctaW5zZXQtc2hhZG93e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowIDAgIzAwMDB9QHByb3BlcnR5IC0tdHctaW5zZXQtc2hhZG93LWNvbG9ye3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctaW5zZXQtc2hhZG93LWFscGhhe3N5bnRheDoiPHBlcmNlbnRhZ2U+Ijtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjEwMCV9QHByb3BlcnR5IC0tdHctcmluZy1jb2xvcntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXJpbmctc2hhZG93e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowIDAgIzAwMDB9QHByb3BlcnR5IC0tdHctaW5zZXQtcmluZy1jb2xvcntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWluc2V0LXJpbmctc2hhZG93e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowIDAgIzAwMDB9QHByb3BlcnR5IC0tdHctcmluZy1pbnNldHtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXJpbmctb2Zmc2V0LXdpZHRoe3N5bnRheDoiPGxlbmd0aD4iO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1yaW5nLW9mZnNldC1jb2xvcntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6I2ZmZn1AcHJvcGVydHkgLS10dy1yaW5nLW9mZnNldC1zaGFkb3d7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjAgMCAjMDAwMH1AcHJvcGVydHkgLS10dy1vdXRsaW5lLXN0eWxle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTpzb2xpZH1AcHJvcGVydHkgLS10dy1ibHVye3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYnJpZ2h0bmVzc3tzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWNvbnRyYXN0e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctZ3JheXNjYWxle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctaHVlLXJvdGF0ZXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWludmVydHtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LW9wYWNpdHl7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1zYXR1cmF0ZXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXNlcGlhe3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctZHJvcC1zaGFkb3d7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1kcm9wLXNoYWRvdy1jb2xvcntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWRyb3Atc2hhZG93LWFscGhhe3N5bnRheDoiPHBlcmNlbnRhZ2U+Ijtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjEwMCV9QHByb3BlcnR5IC0tdHctZHJvcC1zaGFkb3ctc2l6ZXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWJhY2tkcm9wLWJsdXJ7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1iYWNrZHJvcC1icmlnaHRuZXNze3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtY29udHJhc3R7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1iYWNrZHJvcC1ncmF5c2NhbGV7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1iYWNrZHJvcC1odWUtcm90YXRle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtaW52ZXJ0e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3Atb3BhY2l0eXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWJhY2tkcm9wLXNhdHVyYXRle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3Atc2VwaWF7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1kdXJhdGlvbntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWVhc2V7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1jb250ZW50e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZToiIn1Aa2V5ZnJhbWVzIHNwaW57dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX1Aa2V5ZnJhbWVzIHB1bHNlezUwJXtvcGFjaXR5Oi41fX1Aa2V5ZnJhbWVzIGVudGVyezAle29wYWNpdHk6dmFyKC0tdHctZW50ZXItb3BhY2l0eSwxKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QodmFyKC0tdHctZW50ZXItdHJhbnNsYXRlLXgsMCksdmFyKC0tdHctZW50ZXItdHJhbnNsYXRlLXksMCksMClzY2FsZTNkKHZhcigtLXR3LWVudGVyLXNjYWxlLDEpLHZhcigtLXR3LWVudGVyLXNjYWxlLDEpLHZhcigtLXR3LWVudGVyLXNjYWxlLDEpKXJvdGF0ZSh2YXIoLS10dy1lbnRlci1yb3RhdGUsMCkpO2ZpbHRlcjpibHVyKHZhcigtLXR3LWVudGVyLWJsdXIsMCkpfX1Aa2V5ZnJhbWVzIGV4aXR7dG97b3BhY2l0eTp2YXIoLS10dy1leGl0LW9wYWNpdHksMSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKHZhcigtLXR3LWV4aXQtdHJhbnNsYXRlLXgsMCksdmFyKC0tdHctZXhpdC10cmFuc2xhdGUteSwwKSwwKXNjYWxlM2QodmFyKC0tdHctZXhpdC1zY2FsZSwxKSx2YXIoLS10dy1leGl0LXNjYWxlLDEpLHZhcigtLXR3LWV4aXQtc2NhbGUsMSkpcm90YXRlKHZhcigtLXR3LWV4aXQtcm90YXRlLDApKTtmaWx0ZXI6Ymx1cih2YXIoLS10dy1leGl0LWJsdXIsMCkpfX0KPC9zdHlsZT48bGluayByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiIGZldGNoUHJpb3JpdHk9ImxvdyIgaHJlZj0iL19uZXh0L3N0YXRpYy9jaHVua3MvODFhMjk4ZGRjNzQ3MTA3MC5qcyIvPjxzY3JpcHQgc3JjPSIvX25leHQvc3RhdGljL2NodW5rcy85ZGYzYjY3YjYwNjFlYTllLmpzIiBhc3luYz0iIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL19uZXh0L3N0YXRpYy9jaHVua3MvNDgwY2RlMDhiOGJmZDVjZS5qcyIgYXN5bmM9IiI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9fbmV4dC9zdGF0aWMvY2h1bmtzLzQ5MTE0MTBlNTE1M2YwZDcuanMiIGFzeW5jPSIiPjwvc2NyaXB0PjxzY3JpcHQgc3JjPSIvX25leHQvc3RhdGljL2NodW5rcy80ODE1YTc1ODY1N2Q0YmFlLmpzIiBhc3luYz0iIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL19uZXh0L3N0YXRpYy9jaHVua3MvdHVyYm9wYWNrLTE4YTlkZTUxMmExOTMzYWQuanMiIGFzeW5jPSIiPjwvc2NyaXB0PjxzY3JpcHQgc3JjPSIvX25leHQvc3RhdGljL2NodW5rcy9jMGE2YWU1MTVmNGQyNDVkLmpzIiBhc3luYz0iIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL19uZXh0L3N0YXRpYy9jaHVua3MvMzMwNzRkM2ZmNWQwY2QyZC5qcyIgYXN5bmM9IiI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9fbmV4dC9zdGF0aWMvY2h1bmtzLzk1MjYyMzg2ZDhkNGI2ZGQuanMiIGFzeW5jPSIiPjwvc2NyaXB0PjxzY3JpcHQgc3JjPSIvX25leHQvc3RhdGljL2NodW5rcy84MDBlODM2MTQ2ZDZlN2ViLmpzIiBhc3luYz0iIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL19uZXh0L3N0YXRpYy9jaHVua3MvZDcxYjk5MjY3YjA2NmI5Yi5qcyIgYXN5bmM9IiI+PC9zY3JpcHQ+PGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tIiBjcm9zc29yaWdpbj0iIi8+PG1ldGEgbmFtZT0ibmV4dC1zaXplLWFkanVzdCIgY29udGVudD0iIi8+PHRpdGxlPkNvaW5saWIgV2lkZ2V0IHwgQ29pbmxpYjwvdGl0bGU+PG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRyYWNrIHJlYWwtdGltZSBjcnlwdG9jdXJyZW5jeSBwcmljZXMsIG1hcmtldCBjYXAsIGNoYXJ0cywgYW5kIHBvcnRmb2xpby4gRXhwbG9yZSB0aG91c2FuZHMgb2YgY29pbnMgYW5kIGV4Y2hhbmdlcyB3aXRoIENvaW5saWIuIi8+PG1ldGEgbmFtZT0ia2V5d29yZHMiIGNvbnRlbnQ9ImNyeXB0b2N1cnJlbmN5LGNyeXB0byBwcmljZXMsYml0Y29pbixtYXJrZXQgY2FwLGNyeXB0byBjaGFydHMscG9ydGZvbGlvIHRyYWNrZXIiLz48bWV0YSBuYW1lPSJyb2JvdHMiIGNvbnRlbnQ9Im5vaW5kZXgiLz48bWV0YSBwcm9wZXJ0eT0ib2c6dGl0bGUiIGNvbnRlbnQ9IkNvaW5saWIg4oCUIENyeXB0b2N1cnJlbmN5IFByaWNlcywgQ2hhcnRzICZhbXA7IE1hcmtldCBEYXRhIi8+PG1ldGEgcHJvcGVydHk9Im9nOmRlc2NyaXB0aW9uIiBjb250ZW50PSJUcmFjayByZWFsLXRpbWUgY3J5cHRvY3VycmVuY3kgcHJpY2VzLCBtYXJrZXQgY2FwLCBjaGFydHMsIGFuZCBwb3J0Zm9saW8uIEV4cGxvcmUgdGhvdXNhbmRzIG9mIGNvaW5zIGFuZCBleGNoYW5nZXMgd2l0aCBDb2lubGliLiIvPjxtZXRhIHByb3BlcnR5PSJvZzp1cmwiIGNvbnRlbnQ9Imh0dHBzOi8vY29pbmxpYi5pbyIvPjxtZXRhIHByb3BlcnR5PSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9IkNvaW5saWIiLz48bWV0YSBwcm9wZXJ0eT0ib2c6aW1hZ2UiIGNvbnRlbnQ9Imh0dHBzOi8vY29pbmxpYi5pby9vZy9kZWZhdWx0LnBuZyIvPjxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTp3aWR0aCIgY29udGVudD0iMTIwMCIvPjxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTpoZWlnaHQiIGNvbnRlbnQ9IjYzMCIvPjxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTphbHQiIGNvbnRlbnQ9IkNvaW5saWIg4oCUIENyeXB0b2N1cnJlbmN5IFByaWNlcywgQ2hhcnRzICZhbXA7IE1hcmtldCBEYXRhIi8+PG1ldGEgcHJvcGVydHk9Im9nOnR5cGUiIGNvbnRlbnQ9IndlYnNpdGUiLz48bWV0YSBuYW1lPSJ0d2l0dGVyOmNhcmQiIGNvbnRlbnQ9InN1bW1hcnlfbGFyZ2VfaW1hZ2UiLz48bWV0YSBuYW1lPSJ0d2l0dGVyOnRpdGxlIiBjb250ZW50PSJDb2lubGliIOKAlCBDcnlwdG9jdXJyZW5jeSBQcmljZXMsIENoYXJ0cyAmYW1wOyBNYXJrZXQgRGF0YSIvPjxtZXRhIG5hbWU9InR3aXR0ZXI6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRyYWNrIHJlYWwtdGltZSBjcnlwdG9jdXJyZW5jeSBwcmljZXMsIG1hcmtldCBjYXAsIGNoYXJ0cywgYW5kIHBvcnRmb2xpby4gRXhwbG9yZSB0aG91c2FuZHMgb2YgY29pbnMgYW5kIGV4Y2hhbmdlcyB3aXRoIENvaW5saWIuIi8+PG1ldGEgbmFtZT0idHdpdHRlcjppbWFnZSIgY29udGVudD0iaHR0cHM6Ly9jb2lubGliLmlvL29nL2RlZmF1bHQucG5nIi8+PGxpbmsgcmVsPSJpY29uIiBocmVmPSIvZmF2aWNvbi5pY28/ZmF2aWNvbi4zOTBlMTEwOS5pY28iIHNpemVzPSI0OHg0OCIgdHlwZT0iaW1hZ2UveC1pY29uIi8+PGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSIvbG9nb3MvYXBwbGUtdG91Y2gtaWNvbi5wbmciLz48c2NyaXB0PnRyeXtpZihsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnY29pbmxpYi1jb29raWUtY29uc2VudCcpKXtkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnY2MtY29uc2VudGVkJyl9fWNhdGNoKGUpe308L3NjcmlwdD48c2NyaXB0IHNyYz0iL19uZXh0L3N0YXRpYy9jaHVua3MvYTZkYWQ5N2Q5NjM0YTcyZC5qcyIgbm9Nb2R1bGU9IiI+PC9zY3JpcHQ+PC9oZWFkPjxib2R5IGNsYXNzPSJpbnRlcl8xZWM0ZGQ5Zi1tb2R1bGVfX1VNUGFLR19fdmFyaWFibGUgYW50aWFsaWFzZWQiPjxkaXYgaGlkZGVuPSIiPjwhLS0kLS0+PCEtLS8kLS0+PC9kaXY+PHNjcmlwdD4oKGEsYixjLGQsZSxmLGcsaCk9PntsZXQgaT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsaj1bImxpZ2h0IiwiZGFyayJdO2Z1bmN0aW9uIGsoYil7dmFyIGM7KEFycmF5LmlzQXJyYXkoYSk/YTpbYV0pLmZvckVhY2goYT0+e2xldCBjPSJjbGFzcyI9PT1hLGQ9YyYmZj9lLm1hcChhPT5mW2FdfHxhKTplO2M/KGkuY2xhc3NMaXN0LnJlbW92ZSguLi5kKSxpLmNsYXNzTGlzdC5hZGQoZiYmZltiXT9mW2JdOmIpKTppLnNldEF0dHJpYnV0ZShhLGIpfSksYz1iLGgmJmouaW5jbHVkZXMoYykmJihpLnN0eWxlLmNvbG9yU2NoZW1lPWMpfWlmKGQpayhkKTtlbHNlIHRyeXtsZXQgYT1sb2NhbFN0b3JhZ2UuZ2V0SXRlbShiKXx8YyxkPWcmJiJzeXN0ZW0iPT09YT93aW5kb3cubWF0Y2hNZWRpYSgiKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIpLm1hdGNoZXM/ImRhcmsiOiJsaWdodCI6YTtrKGQpfWNhdGNoKGEpe319KSgiY2xhc3MiLCJ0aGVtZSIsImRhcmsiLG51bGwsWyJsaWdodCIsImRhcmsiXSxudWxsLHRydWUsdHJ1ZSk8L3NjcmlwdD48c3R5bGU+aHRtbCwgYm9keSB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgb3ZlcmZsb3c6IGhpZGRlbjsgfTwvc3R5bGU+PCEtLSQhLS0+PHRlbXBsYXRlIGRhdGEtZGdzdD0iQkFJTE9VVF9UT19DTElFTlRfU0lERV9SRU5ERVJJTkciPjwvdGVtcGxhdGU+PCEtLS8kLS0+PCEtLSQtLT48IS0tLyQtLT48c2NyaXB0PihmdW5jdGlvbigpe2Z1bmN0aW9uIGxvYWQoKXt3aW5kb3cuZGF0YUxheWVyPXdpbmRvdy5kYXRhTGF5ZXJ8fFtdO3dpbmRvdy5ndGFnPWZ1bmN0aW9uKCl7ZGF0YUxheWVyLnB1c2goYXJndW1lbnRzKX07Z3RhZygnanMnLG5ldyBEYXRlKCkpO2d0YWcoJ2NvbmZpZycsJ0ctVjg0WFA4V0dYWScpO3ZhciBzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO3Muc3JjPSdodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndGFnL2pzP2lkPUctVjg0WFA4V0dYWSc7cy5hc3luYz10cnVlO2RvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQocyl9ZnVuY3Rpb24gc2NoZWR1bGUoKXtpZigncmVxdWVzdElkbGVDYWxsYmFjaydpbiB3aW5kb3cpe3JlcXVlc3RJZGxlQ2FsbGJhY2sobG9hZCx7dGltZW91dDozMDAwfSl9ZWxzZXtzZXRUaW1lb3V0KGxvYWQsMTUwMCl9fWlmKGRvY3VtZW50LnJlYWR5U3RhdGU9PT0nY29tcGxldGUnKXtzY2hlZHVsZSgpfWVsc2V7YWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsc2NoZWR1bGUse29uY2U6dHJ1ZX0pfX0pKCk7PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9fbmV4dC9zdGF0aWMvY2h1bmtzLzgxYTI5OGRkYzc0NzEwNzAuanMiIGlkPSJfUl8iIGFzeW5jPSIiPjwvc2NyaXB0PjxzY3JpcHQ+KHNlbGYuX19uZXh0X2Y9c2VsZi5fX25leHRfZnx8W10pLnB1c2goWzBdKTwvc2NyaXB0PjxzY3JpcHQ+c2VsZi5fX25leHRfZi5wdXNoKFsxLCIxOlwiJFNyZWFjdC5mcmFnbWVudFwiXG5hOklbMTYxNTMsW10sXCJkZWZhdWx0XCJdXG46SExbXCIvX25leHQvc3RhdGljL21lZGlhLzgzYWZlMjc4YjZhNmJiM2Mtcy5wLjNhNmJhMDM2LndvZmYyXCIsXCJmb250XCIse1wiY3Jvc3NPcmlnaW5cIjpcIlwiLFwidHlwZVwiOlwiZm9udC93b2ZmMlwifV1cbjI6VDg4NCwiXSk8L3NjcmlwdD48c2NyaXB0PnNlbGYuX19uZXh0X2YucHVzaChbMSwiQGZvbnQtZmFjZXtmb250LWZhbWlseTpJbnRlcjtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDoxMDAgOTAwO2ZvbnQtZGlzcGxheTpvcHRpb25hbDtzcmM6dXJsKC9fbmV4dC9zdGF0aWMvbWVkaWEvMmM1NWEwZTYwMTIwNTc3YS1zLjJhNDg1MzRhLndvZmYyKWZvcm1hdChcIndvZmYyXCIpO3VuaWNvZGUtcmFuZ2U6VSs0NjAtNTJGLFUrMUM4MC0xQzhBLFUrMjBCNCxVKzJERTAtMkRGRixVK0E2NDAtQTY5RixVK0ZFMkUtRkUyRn1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OkludGVyO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjEwMCA5MDA7Zm9udC1kaXNwbGF5Om9wdGlvbmFsO3NyYzp1cmwoL19uZXh0L3N0YXRpYy9tZWRpYS85YzcyYWEwZjQwZTRlZWY4LXMuMThhNDhjYmMud29mZjIpZm9ybWF0KFwid29mZjJcIik7dW5pY29kZS1yYW5nZTpVKzMwMSxVKzQwMC00NUYsVSs0OTAtNDkxLFUrNEIwLTRCMSxVKzIxMTZ9QGZvbnQtZmFjZXtmb250LWZhbWlseTpJbnRlcjtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDoxMDAgOTAwO2ZvbnQtZGlzcGxheTpvcHRpb25hbDtzcmM6dXJsKC9fbmV4dC9zdGF0aWMvbWVkaWEvYWQ2NmY5YWZkODk0N2Y4Ni1zLjdhNDBlYjczLndvZmYyKWZvcm1hdChcIndvZmYyXCIpO3VuaWNvZGUtcmFuZ2U6VSsxRj8/fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6SW50ZXI7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6MTAwIDkwMDtmb250LWRpc3BsYXk6b3B0aW9uYWw7c3JjOnVybCgvX25leHQvc3RhdGljL21lZGlhLzU0NzZmNjhkNjA0NjA5MzAtcy5jOTk1ZTM1Mi53b2ZmMilmb3JtYXQoXCJ3b2ZmMlwiKTt1bmljb2RlLXJhbmdlOlUrMzcwLTM3NyxVKzM3QS0zN0YsVSszODQtMzhBLFUrMzhDLFUrMzhFLTNBMSxVKzNBMy0zRkZ9QGZvbnQtZmFjZXtmb250LWZhbWlseTpJbnRlcjtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDoxMDAgOTAwO2ZvbnQtZGlzcGxheTpvcHRpb25hbDtzcmM6dXJsKC9fbmV4dC9zdGF0aWMvbWVkaWEvMmJiZThkMjY3MTYxM2YxZi1zLjc2ZGNiMGIyLndvZmYyKWZvcm1hdChcIndvZmYyXCIpO3VuaWNvZGUtcmFuZ2U6VSsxMDItMTAzLFUrMTEwLTExMSxVKzEyOC0xMjksVSsxNjgtMTY5LFUrMUEwLTFBMSxVKzFBRi0xQjAsVSszMDAtMzAxLFUrMzAzLTMwNCxVKzMwOC0zMDksVSszMjMsVSszMjksVSsxRUEwLTFFRjksVSsyMEFCfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6SW50ZXI7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6MTAwIDkwMDtmb250LWRpc3BsYXk6b3B0aW9uYWw7c3JjOnVybCgvX25leHQvc3RhdGljL21lZGlhLzFiZmZhZGFhYmY4OTNhMWUtcy43Y2Q4MTk2My53b2ZmMilmb3JtYXQoXCJ3b2ZmMlwiKTt1bmljb2RlLXJhbmdlOlUrMTAwLTJCQSxVKzJCRC0yQzUsVSsyQzctMkNDLFUrMkNFLTJENyxVKzJERC0yRkYsVSszMDQsVSszMDgsVSszMjksVSsxRDAwLTFEQkYsVSsxRTAwLTFFOUYsVSsxRUYyLTFFRkYsVSsyMDIwLFUrMjBBMC0yMEFCLFUrMjBBRC0yMEMwLFUrMjExMyxVKzJDNjAtMkM3RixVK0E3MjAtQTdGRn1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OkludGVyO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjEwMCA5MDA7Zm9udC1kaXNwbGF5Om9wdGlvbmFsO3NyYzp1cmwoL19uZXh0L3N0YXRpYy9tZWRpYS84M2FmZTI3OGI2YTZiYjNjLXMucC4zYTZiYTAzNi53b2ZmMilmb3JtYXQoXCJ3b2ZmMlwiKTt1bmljb2RlLXJhbmdlOlUrPz8sVSsxMzEsVSsxNTItMTUzLFUrMkJCLTJCQyxVKzJDNixVKzJEQSxVKzJEQyxVKzMwNCxVKzMwOCxVKzMyOSxVKzIwMDAtMjA2RixVKzIwQUMsVSsyMTIyLFUrMjE5MSxVKzIxOTMsVSsyMjEyLFUrMjIxNSxVK0ZFRkYsVStGRkZEfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6SW50ZXIgRmFsbGJhY2s7c3JjOmxvY2FsKEFyaWFsKTthc2NlbnQtb3ZlcnJpZGU6OTAuNDQlO2Rlc2NlbnQtb3ZlcnJpZGU6MjIuNTIlO2xpbmUtZ2FwLW92ZXJyaWRlOjAuMCU7c2l6ZS1hZGp1c3Q6MTA3LjEyJX0uaW50ZXJfMWVjNGRkOWYtbW9kdWxlX19VTVBhS0dfX2NsYXNzTmFtZXtmb250LWZhbWlseTpJbnRlcixJbnRlciBGYWxsYmFjaztmb250LXN0eWxlOm5vcm1hbH0uaW50ZXJfMWVjNGRkOWYtbW9kdWxlX19VTVBhS0dfX3ZhcmlhYmxley0tZm9udC1pbnRlcjpcIkludGVyXCIsXCJJbnRlciBGYWxsYmFja1wifVxuIl0pPC9zY3JpcHQ+PHNjcmlwdD5zZWxmLl9fbmV4dF9mLnB1c2goWzEsIjM6VDFkNmU4LCJdKTwvc2NyaXB0PjxzY3JpcHQ+c2VsZi5fX25leHRfZi5wdXNoKFsxLCJAbGF5ZXIgcHJvcGVydGllc3tAc3VwcG9ydHMgKCgoLXdlYmtpdC1oeXBoZW5zOm5vbmUpKSBhbmQgKG5vdCAobWFyZ2luLXRyaW06aW5saW5lKSkpIG9yICgoLW1vei1vcmllbnQ6aW5saW5lKSBhbmQgKG5vdCAoY29sb3I6cmdiKGZyb20gcmVkIHIgZyBiKSkpKXsqLDpiZWZvcmUsOmFmdGVyLDo6YmFja2Ryb3B7LS10dy10cmFuc2xhdGUteDowOy0tdHctdHJhbnNsYXRlLXk6MDstLXR3LXRyYW5zbGF0ZS16OjA7LS10dy1yb3RhdGUteDppbml0aWFsOy0tdHctcm90YXRlLXk6aW5pdGlhbDstLXR3LXJvdGF0ZS16OmluaXRpYWw7LS10dy1za2V3LXg6aW5pdGlhbDstLXR3LXNrZXcteTppbml0aWFsOy0tdHctc3BhY2UteS1yZXZlcnNlOjA7LS10dy1zcGFjZS14LXJldmVyc2U6MDstLXR3LWRpdmlkZS15LXJldmVyc2U6MDstLXR3LWJvcmRlci1zdHlsZTpzb2xpZDstLXR3LWdyYWRpZW50LXBvc2l0aW9uOmluaXRpYWw7LS10dy1ncmFkaWVudC1mcm9tOiMwMDAwOy0tdHctZ3JhZGllbnQtdmlhOiMwMDAwOy0tdHctZ3JhZGllbnQtdG86IzAwMDA7LS10dy1ncmFkaWVudC1zdG9wczppbml0aWFsOy0tdHctZ3JhZGllbnQtdmlhLXN0b3BzOmluaXRpYWw7LS10dy1ncmFkaWVudC1mcm9tLXBvc2l0aW9uOjAlOy0tdHctZ3JhZGllbnQtdmlhLXBvc2l0aW9uOjUwJTstLXR3LWdyYWRpZW50LXRvLXBvc2l0aW9uOjEwMCU7LS10dy1sZWFkaW5nOmluaXRpYWw7LS10dy1mb250LXdlaWdodDppbml0aWFsOy0tdHctdHJhY2tpbmc6aW5pdGlhbDstLXR3LW9yZGluYWw6aW5pdGlhbDstLXR3LXNsYXNoZWQtemVybzppbml0aWFsOy0tdHctbnVtZXJpYy1maWd1cmU6aW5pdGlhbDstLXR3LW51bWVyaWMtc3BhY2luZzppbml0aWFsOy0tdHctbnVtZXJpYy1mcmFjdGlvbjppbml0aWFsOy0tdHctc2hhZG93OjAgMCAjMDAwMDstLXR3LXNoYWRvdy1jb2xvcjppbml0aWFsOy0tdHctc2hhZG93LWFscGhhOjEwMCU7LS10dy1pbnNldC1zaGFkb3c6MCAwICMwMDAwOy0tdHctaW5zZXQtc2hhZG93LWNvbG9yOmluaXRpYWw7LS10dy1pbnNldC1zaGFkb3ctYWxwaGE6MTAwJTstLXR3LXJpbmctY29sb3I6aW5pdGlhbDstLXR3LXJpbmctc2hhZG93OjAgMCAjMDAwMDstLXR3LWluc2V0LXJpbmctY29sb3I6aW5pdGlhbDstLXR3LWluc2V0LXJpbmctc2hhZG93OjAgMCAjMDAwMDstLXR3LXJpbmctaW5zZXQ6aW5pdGlhbDstLXR3LXJpbmctb2Zmc2V0LXdpZHRoOjBweDstLXR3LXJpbmctb2Zmc2V0LWNvbG9yOiNmZmY7LS10dy1yaW5nLW9mZnNldC1zaGFkb3c6MCAwICMwMDAwOy0tdHctb3V0bGluZS1zdHlsZTpzb2xpZDstLXR3LWJsdXI6aW5pdGlhbDstLXR3LWJyaWdodG5lc3M6aW5pdGlhbDstLXR3LWNvbnRyYXN0OmluaXRpYWw7LS10dy1ncmF5c2NhbGU6aW5pdGlhbDstLXR3LWh1ZS1yb3RhdGU6aW5pdGlhbDstLXR3LWludmVydDppbml0aWFsOy0tdHctb3BhY2l0eTppbml0aWFsOy0tdHctc2F0dXJhdGU6aW5pdGlhbDstLXR3LXNlcGlhOmluaXRpYWw7LS10dy1kcm9wLXNoYWRvdzppbml0aWFsOy0tdHctZHJvcC1zaGFkb3ctY29sb3I6aW5pdGlhbDstLXR3LWRyb3Atc2hhZG93LWFscGhhOjEwMCU7LS10dy1kcm9wLXNoYWRvdy1zaXplOmluaXRpYWw7LS10dy1iYWNrZHJvcC1ibHVyOmluaXRpYWw7LS10dy1iYWNrZHJvcC1icmlnaHRuZXNzOmluaXRpYWw7LS10dy1iYWNrZHJvcC1jb250cmFzdDppbml0aWFsOy0tdHctYmFja2Ryb3AtZ3JheXNjYWxlOmluaXRpYWw7LS10dy1iYWNrZHJvcC1odWUtcm90YXRlOmluaXRpYWw7LS10dy1iYWNrZHJvcC1pbnZlcnQ6aW5pdGlhbDstLXR3LWJhY2tkcm9wLW9wYWNpdHk6aW5pdGlhbDstLXR3LWJhY2tkcm9wLXNhdHVyYXRlOmluaXRpYWw7LS10dy1iYWNrZHJvcC1zZXBpYTppbml0aWFsOy0tdHctZHVyYXRpb246aW5pdGlhbDstLXR3LWVhc2U6aW5pdGlhbDstLXR3LWNvbnRlbnQ6XCJcIjstLXR3LWFuaW1hdGlvbi1kZWxheTowczstLXR3LWFuaW1hdGlvbi1kaXJlY3Rpb246bm9ybWFsOy0tdHctYW5pbWF0aW9uLWR1cmF0aW9uOmluaXRpYWw7LS10dy1hbmltYXRpb24tZmlsbC1tb2RlOm5vbmU7LS10dy1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OjE7LS10dy1lbnRlci1ibHVyOjA7LS10dy1lbnRlci1vcGFjaXR5OjE7LS10dy1lbnRlci1yb3RhdGU6MDstLXR3LWVudGVyLXNjYWxlOjE7LS10dy1lbnRlci10cmFuc2xhdGUteDowOy0tdHctZW50ZXItdHJhbnNsYXRlLXk6MDstLXR3LWV4aXQtYmx1cjowOy0tdHctZXhpdC1vcGFjaXR5OjE7LS10dy1leGl0LXJvdGF0ZTowOy0tdHctZXhpdC1zY2FsZToxOy0tdHctZXhpdC10cmFuc2xhdGUteDowOy0tdHctZXhpdC10cmFuc2xhdGUteTowfX19QGxheWVyIHRoZW1lezpyb290LDpob3N0ey0tY29sb3ItcmVkLTUwMDojZmIyYzM2Oy0tY29sb3Itb3JhbmdlLTUwMDojZmU2ZTAwOy0tY29sb3ItZ3JlZW4tNDAwOiMwNWRmNzI7LS1jb2xvci1ncmVlbi02MDA6IzAwYTU0NDstLWNvbG9yLWJsYWNrOiMwMDA7LS1jb2xvci13aGl0ZTojZmZmOy0tc3BhY2luZzouMjVyZW07LS1jb250YWluZXIteHM6MjByZW07LS1jb250YWluZXItc206MjRyZW07LS1jb250YWluZXItbWQ6MjhyZW07LS1jb250YWluZXItbGc6MzJyZW07LS1jb250YWluZXIteGw6MzZyZW07LS1jb250YWluZXItMnhsOjQycmVtOy0tY29udGFpbmVyLTN4bDo0OHJlbTstLWNvbnRhaW5lci00eGw6NTZyZW07LS1jb250YWluZXItN3hsOjgwcmVtOy0tdGV4dC14czouNzVyZW07LS10ZXh0LXhzLS1saW5lLWhlaWdodDpjYWxjKDEvLjc1KTstLXRleHQtc206Ljg3NXJlbTstLXRleHQtc20tLWxpbmUtaGVpZ2h0OmNhbGMoMS4yNS8uODc1KTstLXRleHQtYmFzZToxcmVtOy0tdGV4dC1iYXNlLS1saW5lLWhlaWdodDpjYWxjKDEuNS8xKTstLXRleHQtbGc6MS4xMjVyZW07LS10ZXh0LWxnLS1saW5lLWhlaWdodDpjYWxjKDEuNzUvMS4xMjUpOy0tdGV4dC14bDoxLjI1cmVtOy0tdGV4dC14bC0tbGluZS1oZWlnaHQ6Y2FsYygxLjc1LzEuMjUpOy0tdGV4dC0yeGw6MS41cmVtOy0tdGV4dC0yeGwtLWxpbmUtaGVpZ2h0OmNhbGMoMi8xLjUpOy0tdGV4dC0zeGw6MS44NzVyZW07LS10ZXh0LTN4bC0tbGluZS1oZWlnaHQ6Y2FsYygyLjI1LzEuODc1KTstLXRleHQtNHhsOjIuMjVyZW07LS10ZXh0LTR4bC0tbGluZS1oZWlnaHQ6Y2FsYygyLjUvMi4yNSk7LS10ZXh0LTZ4bDozLjc1cmVtOy0tdGV4dC02eGwtLWxpbmUtaGVpZ2h0OjE7LS1mb250LXdlaWdodC1ub3JtYWw6NDAwOy0tZm9udC13ZWlnaHQtbWVkaXVtOjUwMDstLWZvbnQtd2VpZ2h0LXNlbWlib2xkOjYwMDstLWZvbnQtd2VpZ2h0LWJvbGQ6NzAwOy0tdHJhY2tpbmctdGlnaHQ6LS4wMjVlbTstLXRyYWNraW5nLXdpZGU6LjAyNWVtOy0tdHJhY2tpbmctd2lkZXN0Oi4xZW07LS1sZWFkaW5nLXRpZ2h0OjEuMjU7LS1sZWFkaW5nLXNudWc6MS4zNzU7LS1sZWFkaW5nLXJlbGF4ZWQ6MS42MjU7LS1yYWRpdXMtbWQ6Y2FsYyh2YXIoLS1yYWRpdXMpKi44KTstLWVhc2UtaW4tb3V0OmN1YmljLWJlemllciguNCwwLC4yLDEpOy0tYW5pbWF0ZS1zcGluOnNwaW4gMXMgbGluZWFyIGluZmluaXRlOy0tYW5pbWF0ZS1wdWxzZTpwdWxzZSAycyBjdWJpYy1iZXppZXIoLjQsMCwuNiwxKWluZmluaXRlOy0tYmx1ci14czo0cHg7LS1ibHVyLXNtOjhweDstLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbjouMTVzOy0tZGVmYXVsdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTstLWRlZmF1bHQtZm9udC1mYW1pbHk6dmFyKC0tZm9udC1pbnRlciksXCJJbnRlclwiLHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sc2Fucy1zZXJpZjstLWRlZmF1bHQtbW9uby1mb250LWZhbWlseTp2YXIoLS1mb250LWludGVyKSxcIkludGVyXCIsdWktc2Fucy1zZXJpZixzeXN0ZW0tdWksLWFwcGxlLXN5c3RlbSxzYW5zLXNlcmlmfUBzdXBwb3J0cyAoY29sb3I6bGFiKDAlIDAgMCkpezpyb290LDpob3N0ey0tY29sb3ItcmVkLTUwMDpsYWIoNTUuNDgxNCUgNzUuMDczMiA0OC44NTI4KTstLWNvbG9yLW9yYW5nZS01MDA6bGFiKDY0LjI3MiUgNTcuMTc4OCA5MC4zNTgzKTstLWNvbG9yLWdyZWVuLTQwMDpsYWIoNzguNTAzJSAtNjQuOTI2NSAzOS43NDkyKTstLWNvbG9yLWdyZWVuLTYwMDpsYWIoNTkuMDk3OCUgLTU4LjY2MjEgNDEuMjU3OSl9fX1AbGF5ZXIgYmFzZXsqLDphZnRlciw6YmVmb3JlLDo6YmFja2Ryb3B7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjowIHNvbGlkO21hcmdpbjowO3BhZGRpbmc6MH06OmZpbGUtc2VsZWN0b3ItYnV0dG9ue2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6MCBzb2xpZDttYXJnaW46MDtwYWRkaW5nOjB9aHRtbCw6aG9zdHstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTt0YWItc2l6ZTo0O2xpbmUtaGVpZ2h0OjEuNTtmb250LWZhbWlseTp2YXIoLS1kZWZhdWx0LWZvbnQtZmFtaWx5LHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLHNhbnMtc2VyaWYsXCJBcHBsZSBDb2xvciBFbW9qaVwiLFwiU2Vnb2UgVUkgRW1vamlcIixcIlNlZ29lIFVJIFN5bWJvbFwiLFwiTm90byBDb2xvciBFbW9qaVwiKTtmb250LWZlYXR1cmUtc2V0dGluZ3M6dmFyKC0tZGVmYXVsdC1mb250LWZlYXR1cmUtc2V0dGluZ3Msbm9ybWFsKTtmb250LXZhcmlhdGlvbi1zZXR0aW5nczp2YXIoLS1kZWZhdWx0LWZvbnQtdmFyaWF0aW9uLXNldHRpbmdzLG5vcm1hbCk7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fWhye2hlaWdodDowO2NvbG9yOmluaGVyaXQ7Ym9yZGVyLXRvcC13aWR0aDoxcHh9YWJicjp3aGVyZShbdGl0bGVdKXstd2Via2l0LXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUgZG90dGVkO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUgZG90dGVkfWgxLGgyLGgzLGg0LGg1LGg2e2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtd2VpZ2h0OmluaGVyaXR9YXtjb2xvcjppbmhlcml0Oy13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7LXdlYmtpdC10ZXh0LWRlY29yYXRpb246aW5oZXJpdDstd2Via2l0LXRleHQtZGVjb3JhdGlvbjppbmhlcml0Oy13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXR9YixzdHJvbmd7Zm9udC13ZWlnaHQ6Ym9sZGVyfWNvZGUsa2JkLHNhbXAscHJle2ZvbnQtZmFtaWx5OnZhcigtLWRlZmF1bHQtbW9uby1mb250LWZhbWlseSx1aS1tb25vc3BhY2UsU0ZNb25vLVJlZ3VsYXIsTWVubG8sTW9uYWNvLENvbnNvbGFzLFwiTGliZXJhdGlvbiBNb25vXCIsXCJDb3VyaWVyIE5ld1wiLG1vbm9zcGFjZSk7Zm9udC1mZWF0dXJlLXNldHRpbmdzOnZhcigtLWRlZmF1bHQtbW9uby1mb250LWZlYXR1cmUtc2V0dGluZ3Msbm9ybWFsKTtmb250LXZhcmlhdGlvbi1zZXR0aW5nczp2YXIoLS1kZWZhdWx0LW1vbm8tZm9udC12YXJpYXRpb24tc2V0dGluZ3Msbm9ybWFsKTtmb250LXNpemU6MWVtfXNtYWxse2ZvbnQtc2l6ZTo4MCV9c3ViLHN1cHt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTtmb250LXNpemU6NzUlO2xpbmUtaGVpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmV9c3Vie2JvdHRvbTotLjI1ZW19c3Vwe3RvcDotLjVlbX10YWJsZXt0ZXh0LWluZGVudDowO2JvcmRlci1jb2xvcjppbmhlcml0O2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZX06LW1vei1mb2N1c3Jpbmd7b3V0bGluZTphdXRvfXByb2dyZXNze3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfXN1bW1hcnl7ZGlzcGxheTpsaXN0LWl0ZW19b2wsdWwsbWVudXtsaXN0LXN0eWxlOm5vbmV9aW1nLHN2Zyx2aWRlbyxjYW52YXMsYXVkaW8saWZyYW1lLGVtYmVkLG9iamVjdHt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7ZGlzcGxheTpibG9ja31pbWcsdmlkZW97bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG99YnV0dG9uLGlucHV0LHNlbGVjdCxvcHRncm91cCx0ZXh0YXJlYXtmb250OmluaGVyaXQ7Zm9udC1mZWF0dXJlLXNldHRpbmdzOmluaGVyaXQ7Zm9udC12YXJpYXRpb24tc2V0dGluZ3M6aW5oZXJpdDtsZXR0ZXItc3BhY2luZzppbmhlcml0O2NvbG9yOmluaGVyaXQ7b3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6IzAwMDA7Ym9yZGVyLXJhZGl1czowfTo6ZmlsZS1zZWxlY3Rvci1idXR0b257Zm9udDppbmhlcml0O2ZvbnQtZmVhdHVyZS1zZXR0aW5nczppbmhlcml0O2ZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOmluaGVyaXQ7bGV0dGVyLXNwYWNpbmc6aW5oZXJpdDtjb2xvcjppbmhlcml0O29wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwO2JvcmRlci1yYWRpdXM6MH06d2hlcmUoc2VsZWN0OmlzKFttdWx0aXBsZV0sW3NpemVdKSkgb3B0Z3JvdXB7Zm9udC13ZWlnaHQ6Ym9sZGVyfTp3aGVyZShzZWxlY3Q6aXMoW211bHRpcGxlXSxbc2l6ZV0pKSBvcHRncm91cCBvcHRpb257cGFkZGluZy1pbmxpbmUtc3RhcnQ6MjBweH06OmZpbGUtc2VsZWN0b3ItYnV0dG9ue21hcmdpbi1pbmxpbmUtZW5kOjRweH06OnBsYWNlaG9sZGVye29wYWNpdHk6MX1Ac3VwcG9ydHMgKG5vdCAoKC13ZWJraXQtYXBwZWFyYW5jZTotYXBwbGUtcGF5LWJ1dHRvbikpKSBvciAoY29udGFpbi1pbnRyaW5zaWMtc2l6ZToxcHgpezo6cGxhY2Vob2xkZXJ7Y29sb3I6Y3VycmVudENvbG9yfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXs6OnBsYWNlaG9sZGVye2NvbG9yOmNvbG9yLW1peChpbiBva2xhYixjdXJyZW50Y29sb3IgNTAlLHRyYW5zcGFyZW50KX19fXRleHRhcmVhe3Jlc2l6ZTp2ZXJ0aWNhbH06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9Ojotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWV7bWluLWhlaWdodDoxbGg7dGV4dC1hbGlnbjppbmhlcml0fTo6LXdlYmtpdC1kYXRldGltZS1lZGl0e2Rpc3BsYXk6aW5saW5lLWZsZXh9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtZmllbGRzLXdyYXBwZXJ7cGFkZGluZzowfTo6LXdlYmtpdC1kYXRldGltZS1lZGl0e3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxke3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxke3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxke3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1taW51dGUtZmllbGR7cGFkZGluZy1ibG9jazowfTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXNlY29uZC1maWVsZHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWlsbGlzZWNvbmQtZmllbGR7cGFkZGluZy1ibG9jazowfTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1lcmlkaWVtLWZpZWxke3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvcntsaW5lLWhlaWdodDoxfTotbW96LXVpLWludmFsaWR7Ym94LXNoYWRvdzpub25lfWJ1dHRvbixpbnB1dDp3aGVyZShbdHlwZT1idXR0b25dLFt0eXBlPXJlc2V0XSxbdHlwZT1zdWJtaXRdKXthcHBlYXJhbmNlOmJ1dHRvbn06OmZpbGUtc2VsZWN0b3ItYnV0dG9ue2FwcGVhcmFuY2U6YnV0dG9ufTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b306Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b257aGVpZ2h0OmF1dG99W2hpZGRlbl06d2hlcmUoOm5vdChbaGlkZGVuPXVudGlsLWZvdW5kXSkpe2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9Kntib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyKTtvdXRsaW5lLWNvbG9yOnZhcigtLXJpbmcpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsqe291dGxpbmUtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXJpbmcpNTAlLHRyYW5zcGFyZW50KX19Ym9keXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWJhY2tncm91bmQpO2NvbG9yOnZhcigtLWZvcmVncm91bmQpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtaW50ZXIpLHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sc2Fucy1zZXJpZn1jb2RlLHByZSxrYmR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1pbnRlciksXCJJbnRlclwiLHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sc2Fucy1zZXJpZn19QGxheWVyIGNvbXBvbmVudHM7QGxheWVyIHV0aWxpdGllc3suXFxAY29udGFpbmVyXFwvY2FyZC1oZWFkZXJ7Y29udGFpbmVyOmNhcmQtaGVhZGVyL2lubGluZS1zaXplfS5wb2ludGVyLWV2ZW50cy1ub25le3BvaW50ZXItZXZlbnRzOm5vbmV9LmNvbGxhcHNle3Zpc2liaWxpdHk6Y29sbGFwc2V9LnZpc2libGV7dmlzaWJpbGl0eTp2aXNpYmxlfS5zci1vbmx5e2NsaXAtcGF0aDppbnNldCg1MCUpO3doaXRlLXNwYWNlOm5vd3JhcDtib3JkZXItd2lkdGg6MDt3aWR0aDoxcHg7aGVpZ2h0OjFweDttYXJnaW46LTFweDtwYWRkaW5nOjA7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVufS5hYnNvbHV0ZXtwb3NpdGlvbjphYnNvbHV0ZX0uZml4ZWR7cG9zaXRpb246Zml4ZWR9LnJlbGF0aXZle3Bvc2l0aW9uOnJlbGF0aXZlfS5zdGF0aWN7cG9zaXRpb246c3RhdGljfS5zdGlja3l7cG9zaXRpb246c3RpY2t5fS5pbnNldC0we2luc2V0OmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmluc2V0LXgtMHtpbnNldC1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uaW5zZXQteC00e2luc2V0LWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5pbnNldC15LTB7aW5zZXQtYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uc3RhcnR7aW5zZXQtaW5saW5lLXN0YXJ0OnZhcigtLXNwYWNpbmcpfS5lbmR7aW5zZXQtaW5saW5lLWVuZDp2YXIoLS1zcGFjaW5nKX0uLXRvcC0ye3RvcDpjYWxjKHZhcigtLXNwYWNpbmcpKi0yKX0udG9wLTB7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMCl9LnRvcC0wXFwuNXt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9LnRvcC0xXFwvMnt0b3A6NTAlfS50b3AtMVxcLzN7dG9wOjMzLjMzMzMlfS50b3AtMnt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0udG9wLTN7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMyl9LnRvcC0xNHt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNCl9LnRvcC0xMDB7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMTAwKX0udG9wLTEwMDB7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMTAwMCl9LnRvcC1mdWxse3RvcDoxMDAlfS4tcmlnaHQtMntyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKi0yKX0ucmlnaHQtMHtyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5yaWdodC0ye3JpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9LnJpZ2h0LTJcXC41e3JpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMi41KX0ucmlnaHQtM3tyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5ib3R0b20tMHtib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uYm90dG9tLTIwe2JvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjIwKX0ubGVmdC0we2xlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0ubGVmdC0wXFwuNXtsZWZ0OmNhbGModmFyKC0tc3BhY2luZykqLjUpfS5sZWZ0LTFcXC8ye2xlZnQ6NTAlfS5sZWZ0LTJcXC41e2xlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5sZWZ0LTN7bGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5sZWZ0LTR7bGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5sZWZ0LTEwe2xlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9Lmlzb2xhdGV7aXNvbGF0aW9uOmlzb2xhdGV9LnotMTB7ei1pbmRleDoxMH0uei0yMHt6LWluZGV4OjIwfS56LTMwe3otaW5kZXg6MzB9LnotNDB7ei1pbmRleDo0MH0uei01MHt6LWluZGV4OjUwfS5vcmRlci1maXJzdHtvcmRlcjotOTk5OX0ub3JkZXItbGFzdHtvcmRlcjo5OTk5fS5jb2wtc3RhcnQtMntncmlkLWNvbHVtbi1zdGFydDoyfS5yb3ctc3Bhbi0ye2dyaWQtcm93OnNwYW4gMi9zcGFuIDJ9LnJvdy1zdGFydC0xe2dyaWQtcm93LXN0YXJ0OjF9LmNvbnRhaW5lcnt3aWR0aDoxMDAlfUBtZWRpYSAobWluLXdpZHRoOjQwcmVtKXsuY29udGFpbmVye21heC13aWR0aDo0MHJlbX19QG1lZGlhIChtaW4td2lkdGg6NDhyZW0pey5jb250YWluZXJ7bWF4LXdpZHRoOjQ4cmVtfX1AbWVkaWEgKG1pbi13aWR0aDo2NHJlbSl7LmNvbnRhaW5lcnttYXgtd2lkdGg6NjRyZW19fUBtZWRpYSAobWluLXdpZHRoOjgwcmVtKXsuY29udGFpbmVye21heC13aWR0aDo4MHJlbX19QG1lZGlhIChtaW4td2lkdGg6OTZyZW0pey5jb250YWluZXJ7bWF4LXdpZHRoOjk2cmVtfX0uLW14LTF7bWFyZ2luLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKi0xKX0uLW14LTR7bWFyZ2luLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKi00KX0ubXgtMXttYXJnaW4taW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqMSl9Lm14LTR7bWFyZ2luLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5teC1hdXRve21hcmdpbi1pbmxpbmU6YXV0b30ubXktMXttYXJnaW4tYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ubXktMnttYXJnaW4tYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucHJvc2V7Y29sb3I6dmFyKC0tdHctcHJvc2UtYm9keSk7bWF4LXdpZHRoOjY1Y2h9LnByb3NlIDp3aGVyZShwKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4yNWVtO21hcmdpbi1ib3R0b206MS4yNWVtfS5wcm9zZSA6d2hlcmUoW2NsYXNzfj1sZWFkXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1sZWFkKTttYXJnaW4tdG9wOjEuMmVtO21hcmdpbi1ib3R0b206MS4yZW07Zm9udC1zaXplOjEuMjVlbTtsaW5lLWhlaWdodDoxLjZ9LnByb3NlIDp3aGVyZShhKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWxpbmtzKTtmb250LXdlaWdodDo1MDA7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ucHJvc2UgOndoZXJlKHN0cm9uZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1ib2xkKTtmb250LXdlaWdodDo2MDB9LnByb3NlIDp3aGVyZShhIHN0cm9uZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKGJsb2NrcXVvdGUgc3Ryb25nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUodGhlYWQgdGggc3Ryb25nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOmluaGVyaXR9LnByb3NlIDp3aGVyZShvbCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMjVlbTttYXJnaW4tYm90dG9tOjEuMjVlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjYyNWVtO2xpc3Qtc3R5bGUtdHlwZTpkZWNpbWFsfS5wcm9zZSA6d2hlcmUob2xbdHlwZT1BXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtsaXN0LXN0eWxlLXR5cGU6dXBwZXItYWxwaGF9LnByb3NlIDp3aGVyZShvbFt0eXBlPWFdKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2xpc3Qtc3R5bGUtdHlwZTpsb3dlci1hbHBoYX0ucHJvc2UgOndoZXJlKG9sW3R5cGU9QSBzXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtsaXN0LXN0eWxlLXR5cGU6dXBwZXItYWxwaGF9LnByb3NlIDp3aGVyZShvbFt0eXBlPWEgc10pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bGlzdC1zdHlsZS10eXBlOmxvd2VyLWFscGhhfS5wcm9zZSA6d2hlcmUob2xbdHlwZT1JXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtsaXN0LXN0eWxlLXR5cGU6dXBwZXItcm9tYW59LnByb3NlIDp3aGVyZShvbFt0eXBlPWldKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2xpc3Qtc3R5bGUtdHlwZTpsb3dlci1yb21hbn0ucHJvc2UgOndoZXJlKG9sW3R5cGU9SSBzXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtsaXN0LXN0eWxlLXR5cGU6dXBwZXItcm9tYW59LnByb3NlIDp3aGVyZShvbFt0eXBlPWkgc10pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bGlzdC1zdHlsZS10eXBlOmxvd2VyLXJvbWFufS5wcm9zZSA6d2hlcmUob2xbdHlwZT1cIjFcIl0pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bGlzdC1zdHlsZS10eXBlOmRlY2ltYWx9LnByb3NlIDp3aGVyZSh1bCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMjVlbTttYXJnaW4tYm90dG9tOjEuMjVlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjYyNWVtO2xpc3Qtc3R5bGUtdHlwZTpkaXNjfS5wcm9zZSA6d2hlcmUob2xcdTAwM2VsaSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKTo6bWFya2Vye2NvbG9yOnZhcigtLXR3LXByb3NlLWNvdW50ZXJzKTtmb250LXdlaWdodDo0MDB9LnByb3NlIDp3aGVyZSh1bFx1MDAzZWxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpOjptYXJrZXJ7Y29sb3I6dmFyKC0tdHctcHJvc2UtYnVsbGV0cyl9LnByb3NlIDp3aGVyZShkdCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1oZWFkaW5ncyk7bWFyZ2luLXRvcDoxLjI1ZW07Zm9udC13ZWlnaHQ6NjAwfS5wcm9zZSA6d2hlcmUoaHIpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Ym9yZGVyLWNvbG9yOnZhcigtLXR3LXByb3NlLWhyKTtib3JkZXItdG9wLXdpZHRoOjFweDttYXJnaW4tdG9wOjNlbTttYXJnaW4tYm90dG9tOjNlbX0ucHJvc2UgOndoZXJlKGJsb2NrcXVvdGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6dmFyKC0tdHctcHJvc2UtcXVvdGVzKTtib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOi4yNXJlbTtib3JkZXItaW5saW5lLXN0YXJ0LWNvbG9yOnZhcigtLXR3LXByb3NlLXF1b3RlLWJvcmRlcnMpO3F1b3RlczpcIuKAnFwiXCLigJ1cIlwi4oCYXCJcIuKAmVwiO21hcmdpbi10b3A6MS42ZW07bWFyZ2luLWJvdHRvbToxLjZlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW07Zm9udC1zdHlsZTppdGFsaWM7Zm9udC13ZWlnaHQ6NTAwfS5wcm9zZSA6d2hlcmUoYmxvY2txdW90ZSBwOmZpcnN0LW9mLXR5cGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6YmVmb3Jle2NvbnRlbnQ6b3Blbi1xdW90ZX0ucHJvc2UgOndoZXJlKGJsb2NrcXVvdGUgcDpsYXN0LW9mLXR5cGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6YWZ0ZXJ7Y29udGVudDpjbG9zZS1xdW90ZX0ucHJvc2UgOndoZXJlKGgxKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWhlYWRpbmdzKTttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTouODg4ODg5ZW07Zm9udC1zaXplOjIuMjVlbTtmb250LXdlaWdodDo4MDA7bGluZS1oZWlnaHQ6MS4xMTExMX0ucHJvc2UgOndoZXJlKGgxIHN0cm9uZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjppbmhlcml0O2ZvbnQtd2VpZ2h0OjkwMH0ucHJvc2UgOndoZXJlKGgyKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWhlYWRpbmdzKTttYXJnaW4tdG9wOjJlbTttYXJnaW4tYm90dG9tOjFlbTtmb250LXNpemU6MS41ZW07Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjEuMzMzMzN9LnByb3NlIDp3aGVyZShoMiBzdHJvbmcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdDtmb250LXdlaWdodDo4MDB9LnByb3NlIDp3aGVyZShoMyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1oZWFkaW5ncyk7bWFyZ2luLXRvcDoxLjZlbTttYXJnaW4tYm90dG9tOi42ZW07Zm9udC1zaXplOjEuMjVlbTtmb250LXdlaWdodDo2MDA7bGluZS1oZWlnaHQ6MS42fS5wcm9zZSA6d2hlcmUoaDMgc3Ryb25nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOmluaGVyaXQ7Zm9udC13ZWlnaHQ6NzAwfS5wcm9zZSA6d2hlcmUoaDQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6dmFyKC0tdHctcHJvc2UtaGVhZGluZ3MpO21hcmdpbi10b3A6MS41ZW07bWFyZ2luLWJvdHRvbTouNWVtO2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxLjV9LnByb3NlIDp3aGVyZShoNCBzdHJvbmcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdDtmb250LXdlaWdodDo3MDB9LnByb3NlIDp3aGVyZShpbWcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoyZW07bWFyZ2luLWJvdHRvbToyZW19LnByb3NlIDp3aGVyZShwaWN0dXJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MmVtO21hcmdpbi1ib3R0b206MmVtO2Rpc3BsYXk6YmxvY2t9LnByb3NlIDp3aGVyZSh2aWRlbyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjJlbTttYXJnaW4tYm90dG9tOjJlbX0ucHJvc2UgOndoZXJlKGtiZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1rYmQpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHZhcigtLXR3LXByb3NlLWtiZC1zaGFkb3dzKSwwIDNweCAwIHZhcigtLXR3LXByb3NlLWtiZC1zaGFkb3dzKTtwYWRkaW5nLXRvcDouMTg3NWVtO3BhZGRpbmctaW5saW5lLWVuZDouMzc1ZW07cGFkZGluZy1ib3R0b206LjE4NzVlbTtib3JkZXItcmFkaXVzOi4zMTI1cmVtO3BhZGRpbmctaW5saW5lLXN0YXJ0Oi4zNzVlbTtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTouODc1ZW07Zm9udC13ZWlnaHQ6NTAwfS5wcm9zZSA6d2hlcmUoY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1jb2RlKTtmb250LXNpemU6Ljg3NWVtO2ZvbnQtd2VpZ2h0OjYwMH0ucHJvc2UgOndoZXJlKGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6YmVmb3JlLC5wcm9zZSA6d2hlcmUoY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKTphZnRlcntjb250ZW50OlwiYFwifS5wcm9zZSA6d2hlcmUoYSBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUoaDEgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjppbmhlcml0fS5wcm9zZSA6d2hlcmUoaDIgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjppbmhlcml0O2ZvbnQtc2l6ZTouODc1ZW19LnByb3NlIDp3aGVyZShoMyBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOmluaGVyaXQ7Zm9udC1zaXplOi45ZW19LnByb3NlIDp3aGVyZShoNCBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUoYmxvY2txdW90ZSBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUodGhlYWQgdGggY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjppbmhlcml0fS5wcm9zZSA6d2hlcmUocHJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLXByZS1jb2RlKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR3LXByb3NlLXByZS1iZyk7cGFkZGluZy10b3A6Ljg1NzE0M2VtO3BhZGRpbmctaW5saW5lLWVuZDoxLjE0Mjg2ZW07cGFkZGluZy1ib3R0b206Ljg1NzE0M2VtO2JvcmRlci1yYWRpdXM6LjM3NXJlbTttYXJnaW4tdG9wOjEuNzE0MjllbTttYXJnaW4tYm90dG9tOjEuNzE0MjllbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjE0Mjg2ZW07Zm9udC1zaXplOi44NzVlbTtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MS43MTQyOTtvdmVyZmxvdy14OmF1dG99LnByb3NlIDp3aGVyZShwcmUgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXdlaWdodDppbmhlcml0O2NvbG9yOmluaGVyaXQ7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC1mYW1pbHk6aW5oZXJpdDtsaW5lLWhlaWdodDppbmhlcml0O2JhY2tncm91bmQtY29sb3I6IzAwMDA7Ym9yZGVyLXdpZHRoOjA7Ym9yZGVyLXJhZGl1czowO3BhZGRpbmc6MH0ucHJvc2UgOndoZXJlKHByZSBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpOmJlZm9yZSwucHJvc2UgOndoZXJlKHByZSBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpOmFmdGVye2NvbnRlbnQ6bm9uZX0ucHJvc2UgOndoZXJlKHRhYmxlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3RhYmxlLWxheW91dDphdXRvO3dpZHRoOjEwMCU7bWFyZ2luLXRvcDoyZW07bWFyZ2luLWJvdHRvbToyZW07Zm9udC1zaXplOi44NzVlbTtsaW5lLWhlaWdodDoxLjcxNDI5fS5wcm9zZSA6d2hlcmUodGhlYWQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Ym9yZGVyLWJvdHRvbS13aWR0aDoxcHg7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS10dy1wcm9zZS10aC1ib3JkZXJzKX0ucHJvc2UgOndoZXJlKHRoZWFkIHRoKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWhlYWRpbmdzKTt2ZXJ0aWNhbC1hbGlnbjpib3R0b207cGFkZGluZy1pbmxpbmUtZW5kOi41NzE0MjllbTtwYWRkaW5nLWJvdHRvbTouNTcxNDI5ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjU3MTQyOWVtO2ZvbnQtd2VpZ2h0OjYwMH0ucHJvc2UgOndoZXJlKHRib2R5IHRyKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2JvcmRlci1ib3R0b20td2lkdGg6MXB4O2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tdHctcHJvc2UtdGQtYm9yZGVycyl9LnByb3NlIDp3aGVyZSh0Ym9keSB0cjpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2JvcmRlci1ib3R0b20td2lkdGg6MH0ucHJvc2UgOndoZXJlKHRib2R5IHRkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS5wcm9zZSA6d2hlcmUodGZvb3QpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Ym9yZGVyLXRvcC13aWR0aDoxcHg7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS10dy1wcm9zZS10aC1ib3JkZXJzKX0ucHJvc2UgOndoZXJlKHRmb290IHRkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3ZlcnRpY2FsLWFsaWduOnRvcH0ucHJvc2UgOndoZXJlKHRoLHRkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3RleHQtYWxpZ246c3RhcnR9LnByb3NlIDp3aGVyZShmaWd1cmVcdTAwM2UqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOjB9LnByb3NlIDp3aGVyZShmaWdjYXB0aW9uKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWNhcHRpb25zKTttYXJnaW4tdG9wOi44NTcxNDNlbTtmb250LXNpemU6Ljg3NWVtO2xpbmUtaGVpZ2h0OjEuNDI4NTd9LnByb3Nley0tdHctcHJvc2UtYm9keTojMzY0MTUzOy0tdHctcHJvc2UtaGVhZGluZ3M6IzEwMTgyODstLXR3LXByb3NlLWxlYWQ6IzRhNTU2NTstLXR3LXByb3NlLWxpbmtzOiMxMDE4Mjg7LS10dy1wcm9zZS1ib2xkOiMxMDE4Mjg7LS10dy1wcm9zZS1jb3VudGVyczojNmE3MjgyOy0tdHctcHJvc2UtYnVsbGV0czojZDFkNWRjOy0tdHctcHJvc2UtaHI6I2U1ZTdlYjstLXR3LXByb3NlLXF1b3RlczojMTAxODI4Oy0tdHctcHJvc2UtcXVvdGUtYm9yZGVyczojZTVlN2ViOy0tdHctcHJvc2UtY2FwdGlvbnM6IzZhNzI4MjstLXR3LXByb3NlLWtiZDojMTAxODI4Oy0tdHctcHJvc2Uta2JkLXNoYWRvd3M6IzEwMTgyODFhOy0tdHctcHJvc2UtY29kZTojMTAxODI4Oy0tdHctcHJvc2UtcHJlLWNvZGU6I2U1ZTdlYjstLXR3LXByb3NlLXByZS1iZzojMWUyOTM5Oy0tdHctcHJvc2UtdGgtYm9yZGVyczojZDFkNWRjOy0tdHctcHJvc2UtdGQtYm9yZGVyczojZTVlN2ViOy0tdHctcHJvc2UtaW52ZXJ0LWJvZHk6I2QxZDVkYzstLXR3LXByb3NlLWludmVydC1oZWFkaW5nczojZmZmOy0tdHctcHJvc2UtaW52ZXJ0LWxlYWQ6Izk5YTFhZjstLXR3LXByb3NlLWludmVydC1saW5rczojZmZmOy0tdHctcHJvc2UtaW52ZXJ0LWJvbGQ6I2ZmZjstLXR3LXByb3NlLWludmVydC1jb3VudGVyczojOTlhMWFmOy0tdHctcHJvc2UtaW52ZXJ0LWJ1bGxldHM6IzRhNTU2NTstLXR3LXByb3NlLWludmVydC1ocjojMzY0MTUzOy0tdHctcHJvc2UtaW52ZXJ0LXF1b3RlczojZjNmNGY2Oy0tdHctcHJvc2UtaW52ZXJ0LXF1b3RlLWJvcmRlcnM6IzM2NDE1MzstLXR3LXByb3NlLWludmVydC1jYXB0aW9uczojOTlhMWFmOy0tdHctcHJvc2UtaW52ZXJ0LWtiZDojZmZmOy0tdHctcHJvc2UtaW52ZXJ0LWtiZC1zaGFkb3dzOiNmZmZmZmYxYTstLXR3LXByb3NlLWludmVydC1jb2RlOiNmZmY7LS10dy1wcm9zZS1pbnZlcnQtcHJlLWNvZGU6I2QxZDVkYzstLXR3LXByb3NlLWludmVydC1wcmUtYmc6IzAwMDAwMDgwOy0tdHctcHJvc2UtaW52ZXJ0LXRoLWJvcmRlcnM6IzRhNTU2NTstLXR3LXByb3NlLWludmVydC10ZC1ib3JkZXJzOiMzNjQxNTM7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MS43NX1Ac3VwcG9ydHMgKGNvbG9yOmxhYigwJSAwIDApKXsucHJvc2V7LS10dy1wcm9zZS1ib2R5OmxhYigyNy4xMTM0JSAtLjk1NjQwMSAtMTIuMzIyNCk7LS10dy1wcm9zZS1oZWFkaW5nczpsYWIoOC4xMTg5NyUgLjgxMTI3OSAtMTIuMjU0KTstLXR3LXByb3NlLWxlYWQ6bGFiKDM1LjYzMzclIC0xLjU4Njk3IC0xMC44NDI1KTstLXR3LXByb3NlLWxpbmtzOmxhYig4LjExODk3JSAuODExMjc5IC0xMi4yNTQpOy0tdHctcHJvc2UtYm9sZDpsYWIoOC4xMTg5NyUgLjgxMTI3OSAtMTIuMjU0KTstLXR3LXByb3NlLWNvdW50ZXJzOmxhYig0Ny43ODQxJSAtLjM5MzE4MiAtMTAuMDI2OCk7LS10dy1wcm9zZS1idWxsZXRzOmxhYig4NS4xMjM2JSAtLjYxMjI1OSAtMy43MTM4KTstLXR3LXByb3NlLWhyOmxhYig5MS42MjI5JSAtLjE1OTExNSAtMi4yNjc5MSk7LS10dy1wcm9zZS1xdW90ZXM6bGFiKDguMTE4OTclIC44MTEyNzkgLTEyLjI1NCk7LS10dy1wcm9zZS1xdW90ZS1ib3JkZXJzOmxhYig5MS42MjI5JSAtLjE1OTExNSAtMi4yNjc5MSk7LS10dy1wcm9zZS1jYXB0aW9uczpsYWIoNDcuNzg0MSUgLS4zOTMxODIgLTEwLjAyNjgpOy0tdHctcHJvc2Uta2JkOmxhYig4LjExODk3JSAuODExMjc5IC0xMi4yNTQpOy0tdHctcHJvc2Uta2JkLXNoYWRvd3M6bGFiKDguMTE4OTclIC44MTEyNzkgLTEyLjI1NC8uMSk7LS10dy1wcm9zZS1jb2RlOmxhYig4LjExODk3JSAuODExMjc5IC0xMi4yNTQpOy0tdHctcHJvc2UtcHJlLWNvZGU6bGFiKDkxLjYyMjklIC0uMTU5MTE1IC0yLjI2NzkxKTstLXR3LXByb3NlLXByZS1iZzpsYWIoMTYuMTA1MSUgLTEuMTgyMzkgLTExLjc1MzMpOy0tdHctcHJvc2UtdGgtYm9yZGVyczpsYWIoODUuMTIzNiUgLS42MTIyNTkgLTMuNzEzOCk7LS10dy1wcm9zZS10ZC1ib3JkZXJzOmxhYig5MS42MjI5JSAtLjE1OTExNSAtMi4yNjc5MSk7LS10dy1wcm9zZS1pbnZlcnQtYm9keTpsYWIoODUuMTIzNiUgLS42MTIyNTkgLTMuNzEzOCk7LS10dy1wcm9zZS1pbnZlcnQtbGVhZDpsYWIoNjUuOTI2OSUgLS44MzI3MDcgLTguMTc0NzMpOy0tdHctcHJvc2UtaW52ZXJ0LWNvdW50ZXJzOmxhYig2NS45MjY5JSAtLjgzMjcwNyAtOC4xNzQ3Myk7LS10dy1wcm9zZS1pbnZlcnQtYnVsbGV0czpsYWIoMzUuNjMzNyUgLTEuNTg2OTcgLTEwLjg0MjUpOy0tdHctcHJvc2UtaW52ZXJ0LWhyOmxhYigyNy4xMTM0JSAtLjk1NjQwMSAtMTIuMzIyNCk7LS10dy1wcm9zZS1pbnZlcnQtcXVvdGVzOmxhYig5Ni4xNTk2JSAtLjA4MjM0MzggLTEuMTM1NzUpOy0tdHctcHJvc2UtaW52ZXJ0LXF1b3RlLWJvcmRlcnM6bGFiKDI3LjExMzQlIC0uOTU2NDAxIC0xMi4zMjI0KTstLXR3LXByb3NlLWludmVydC1jYXB0aW9uczpsYWIoNjUuOTI2OSUgLS44MzI3MDcgLTguMTc0NzMpOy0tdHctcHJvc2UtaW52ZXJ0LXByZS1jb2RlOmxhYig4NS4xMjM2JSAtLjYxMjI1OSAtMy43MTM4KTstLXR3LXByb3NlLWludmVydC10aC1ib3JkZXJzOmxhYigzNS42MzM3JSAtMS41ODY5NyAtMTAuODQyNSk7LS10dy1wcm9zZS1pbnZlcnQtdGQtYm9yZGVyczpsYWIoMjcuMTEzNCUgLS45NTY0MDEgLTEyLjMyMjQpfX0ucHJvc2UgOndoZXJlKHBpY3R1cmVcdTAwM2VpbWcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ucHJvc2UgOndoZXJlKGxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6LjVlbTttYXJnaW4tYm90dG9tOi41ZW19LnByb3NlIDp3aGVyZShvbFx1MDAzZWxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUodWxcdTAwM2VsaSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1zdGFydDouMzc1ZW19LnByb3NlIDp3aGVyZSgucHJvc2VcdTAwM2V1bFx1MDAzZWxpIHApOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouNzVlbTttYXJnaW4tYm90dG9tOi43NWVtfS5wcm9zZSA6d2hlcmUoLnByb3NlXHUwMDNldWxcdTAwM2VsaVx1MDAzZXA6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjI1ZW19LnByb3NlIDp3aGVyZSgucHJvc2VcdTAwM2V1bFx1MDAzZWxpXHUwMDNlcDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi1ib3R0b206MS4yNWVtfS5wcm9zZSA6d2hlcmUoLnByb3NlXHUwMDNlb2xcdTAwM2VsaVx1MDAzZXA6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjI1ZW19LnByb3NlIDp3aGVyZSgucHJvc2VcdTAwM2VvbFx1MDAzZWxpXHUwMDNlcDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi1ib3R0b206MS4yNWVtfS5wcm9zZSA6d2hlcmUodWwgdWwsdWwgb2wsb2wgdWwsb2wgb2wpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouNzVlbTttYXJnaW4tYm90dG9tOi43NWVtfS5wcm9zZSA6d2hlcmUoZGwpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjI1ZW07bWFyZ2luLWJvdHRvbToxLjI1ZW19LnByb3NlIDp3aGVyZShkZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi41ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6MS42MjVlbX0ucHJvc2UgOndoZXJlKGhyKyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlIDp3aGVyZShoMisqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUoaDMrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKGg0KyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowfS5wcm9zZSA6d2hlcmUodGhlYWQgdGg6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MH0ucHJvc2UgOndoZXJlKHRoZWFkIHRoOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtZW5kOjB9LnByb3NlIDp3aGVyZSh0Ym9keSB0ZCx0Zm9vdCB0ZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLXRvcDouNTcxNDI5ZW07cGFkZGluZy1pbmxpbmUtZW5kOi41NzE0MjllbTtwYWRkaW5nLWJvdHRvbTouNTcxNDI5ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjU3MTQyOWVtfS5wcm9zZSA6d2hlcmUodGJvZHkgdGQ6Zmlyc3QtY2hpbGQsdGZvb3QgdGQ6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MH0ucHJvc2UgOndoZXJlKHRib2R5IHRkOmxhc3QtY2hpbGQsdGZvb3QgdGQ6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1lbmQ6MH0ucHJvc2UgOndoZXJlKGZpZ3VyZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjJlbTttYXJnaW4tYm90dG9tOjJlbX0ucHJvc2UgOndoZXJlKC5wcm9zZVx1MDAzZTpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjB9LnByb3NlIDp3aGVyZSgucHJvc2VcdTAwM2U6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjB9LnByb3NlLWxne2ZvbnQtc2l6ZToxLjEyNXJlbTtsaW5lLWhlaWdodDoxLjc3Nzc4fS5wcm9zZS1sZyA6d2hlcmUocCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMzMzMzNlbTttYXJnaW4tYm90dG9tOjEuMzMzMzNlbX0ucHJvc2UtbGcgOndoZXJlKFtjbGFzc349bGVhZF0pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjA5MDkxZW07bWFyZ2luLWJvdHRvbToxLjA5MDkxZW07Zm9udC1zaXplOjEuMjIyMjJlbTtsaW5lLWhlaWdodDoxLjQ1NDU1fS5wcm9zZS1sZyA6d2hlcmUoYmxvY2txdW90ZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNjY2NjdlbTttYXJnaW4tYm90dG9tOjEuNjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW19LnByb3NlLWxnIDp3aGVyZShoMSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTouODMzMzMzZW07Zm9udC1zaXplOjIuNjY2NjdlbTtsaW5lLWhlaWdodDoxfS5wcm9zZS1sZyA6d2hlcmUoaDIpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjg2NjY3ZW07bWFyZ2luLWJvdHRvbToxLjA2NjY3ZW07Zm9udC1zaXplOjEuNjY2NjdlbTtsaW5lLWhlaWdodDoxLjMzMzMzfS5wcm9zZS1sZyA6d2hlcmUoaDMpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjY2NjY3ZW07bWFyZ2luLWJvdHRvbTouNjY2NjY3ZW07Zm9udC1zaXplOjEuMzMzMzNlbTtsaW5lLWhlaWdodDoxLjV9LnByb3NlLWxnIDp3aGVyZShoNCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNzc3NzhlbTttYXJnaW4tYm90dG9tOi40NDQ0NDRlbTtsaW5lLWhlaWdodDoxLjU1NTU2fS5wcm9zZS1sZyA6d2hlcmUoaW1nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1sZyA6d2hlcmUocGljdHVyZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNzc3NzhlbTttYXJnaW4tYm90dG9tOjEuNzc3NzhlbX0ucHJvc2UtbGcgOndoZXJlKHBpY3R1cmVcdTAwM2VpbWcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ucHJvc2UtbGcgOndoZXJlKHZpZGVvKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS43Nzc3OGVtO21hcmdpbi1ib3R0b206MS43Nzc3OGVtfS5wcm9zZS1sZyA6d2hlcmUoa2JkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctdG9wOi4yMjIyMjJlbTtwYWRkaW5nLWlubGluZS1lbmQ6LjQ0NDQ0NGVtO3BhZGRpbmctYm90dG9tOi4yMjIyMjJlbTtib3JkZXItcmFkaXVzOi4zMTI1cmVtO3BhZGRpbmctaW5saW5lLXN0YXJ0Oi40NDQ0NDRlbTtmb250LXNpemU6Ljg4ODg4OWVtfS5wcm9zZS1sZyA6d2hlcmUoY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXNpemU6Ljg4ODg4OWVtfS5wcm9zZS1sZyA6d2hlcmUoaDIgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXNpemU6Ljg2NjY2N2VtfS5wcm9zZS1sZyA6d2hlcmUoaDMgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXNpemU6Ljg3NWVtfS5wcm9zZS1sZyA6d2hlcmUocHJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctdG9wOjFlbTtwYWRkaW5nLWlubGluZS1lbmQ6MS41ZW07cGFkZGluZy1ib3R0b206MWVtO2JvcmRlci1yYWRpdXM6LjM3NXJlbTttYXJnaW4tdG9wOjJlbTttYXJnaW4tYm90dG9tOjJlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjVlbTtmb250LXNpemU6Ljg4ODg4OWVtO2xpbmUtaGVpZ2h0OjEuNzV9LnByb3NlLWxnIDp3aGVyZShvbCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UtbGcgOndoZXJlKHVsKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4zMzMzM2VtO21hcmdpbi1ib3R0b206MS4zMzMzM2VtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjEuNTU1NTZlbX0ucHJvc2UtbGcgOndoZXJlKGxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6LjY2NjY2N2VtO21hcmdpbi1ib3R0b206LjY2NjY2N2VtfS5wcm9zZS1sZyA6d2hlcmUob2xcdTAwM2VsaSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UtbGcgOndoZXJlKHVsXHUwMDNlbGkpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjQ0NDQ0NGVtfS5wcm9zZS1sZyA6d2hlcmUoLnByb3NlLWxnXHUwMDNldWxcdTAwM2VsaSBwKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6Ljg4ODg4OWVtO21hcmdpbi1ib3R0b206Ljg4ODg4OWVtfS5wcm9zZS1sZyA6d2hlcmUoLnByb3NlLWxnXHUwMDNldWxcdTAwM2VsaVx1MDAzZXA6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjMzMzMzZW19LnByb3NlLWxnIDp3aGVyZSgucHJvc2UtbGdcdTAwM2V1bFx1MDAzZWxpXHUwMDNlcDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi1ib3R0b206MS4zMzMzM2VtfS5wcm9zZS1sZyA6d2hlcmUoLnByb3NlLWxnXHUwMDNlb2xcdTAwM2VsaVx1MDAzZXA6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjMzMzMzZW19LnByb3NlLWxnIDp3aGVyZSgucHJvc2UtbGdcdTAwM2VvbFx1MDAzZWxpXHUwMDNlcDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi1ib3R0b206MS4zMzMzM2VtfS5wcm9zZS1sZyA6d2hlcmUodWwgdWwsdWwgb2wsb2wgdWwsb2wgb2wpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouODg4ODg5ZW07bWFyZ2luLWJvdHRvbTouODg4ODg5ZW19LnByb3NlLWxnIDp3aGVyZShkbCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMzMzMzNlbTttYXJnaW4tYm90dG9tOjEuMzMzMzNlbX0ucHJvc2UtbGcgOndoZXJlKGR0KTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4zMzMzM2VtfS5wcm9zZS1sZyA6d2hlcmUoZGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouNjY2NjY3ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6MS41NTU1NmVtfS5wcm9zZS1sZyA6d2hlcmUoaHIpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDozLjExMTExZW07bWFyZ2luLWJvdHRvbTozLjExMTExZW19LnByb3NlLWxnIDp3aGVyZShocisqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1sZyA6d2hlcmUoaDIrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UtbGcgOndoZXJlKGgzKyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLWxnIDp3aGVyZShoNCsqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MH0ucHJvc2UtbGcgOndoZXJlKHRhYmxlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2ZvbnQtc2l6ZTouODg4ODg5ZW07bGluZS1oZWlnaHQ6MS41fS5wcm9zZS1sZyA6d2hlcmUodGhlYWQgdGgpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtZW5kOi43NWVtO3BhZGRpbmctYm90dG9tOi43NWVtO3BhZGRpbmctaW5saW5lLXN0YXJ0Oi43NWVtfS5wcm9zZS1sZyA6d2hlcmUodGhlYWQgdGg6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MH0ucHJvc2UtbGcgOndoZXJlKHRoZWFkIHRoOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtZW5kOjB9LnByb3NlLWxnIDp3aGVyZSh0Ym9keSB0ZCx0Zm9vdCB0ZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLXRvcDouNzVlbTtwYWRkaW5nLWlubGluZS1lbmQ6Ljc1ZW07cGFkZGluZy1ib3R0b206Ljc1ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6Ljc1ZW19LnByb3NlLWxnIDp3aGVyZSh0Ym9keSB0ZDpmaXJzdC1jaGlsZCx0Zm9vdCB0ZDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1zdGFydDowfS5wcm9zZS1sZyA6d2hlcmUodGJvZHkgdGQ6bGFzdC1jaGlsZCx0Zm9vdCB0ZDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLWVuZDowfS5wcm9zZS1sZyA6d2hlcmUoZmlndXJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS43Nzc3OGVtO21hcmdpbi1ib3R0b206MS43Nzc3OGVtfS5wcm9zZS1sZyA6d2hlcmUoZmlndXJlXHUwMDNlKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowfS5wcm9zZS1sZyA6d2hlcmUoZmlnY2FwdGlvbik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjFlbTtmb250LXNpemU6Ljg4ODg4OWVtO2xpbmUtaGVpZ2h0OjEuNX0ucHJvc2UtbGcgOndoZXJlKC5wcm9zZS1sZ1x1MDAzZTpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjB9LnByb3NlLWxnIDp3aGVyZSgucHJvc2UtbGdcdTAwM2U6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjB9LnByb3NlLXNte2ZvbnQtc2l6ZTouODc1cmVtO2xpbmUtaGVpZ2h0OjEuNzE0Mjl9LnByb3NlLXNtIDp3aGVyZShwKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4xNDI4NmVtO21hcmdpbi1ib3R0b206MS4xNDI4NmVtfS5wcm9zZS1zbSA6d2hlcmUoW2NsYXNzfj1sZWFkXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi44ODg4ODllbTttYXJnaW4tYm90dG9tOi44ODg4ODllbTtmb250LXNpemU6MS4yODU3MWVtO2xpbmUtaGVpZ2h0OjEuNTU1NTZ9LnByb3NlLXNtIDp3aGVyZShibG9ja3F1b3RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4zMzMzM2VtO21hcmdpbi1ib3R0b206MS4zMzMzM2VtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjEuMTExMTFlbX0ucHJvc2Utc20gOndoZXJlKGgxKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOi44ZW07Zm9udC1zaXplOjIuMTQyODZlbTtsaW5lLWhlaWdodDoxLjJ9LnByb3NlLXNtIDp3aGVyZShoMik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNmVtO21hcmdpbi1ib3R0b206LjhlbTtmb250LXNpemU6MS40Mjg1N2VtO2xpbmUtaGVpZ2h0OjEuNH0ucHJvc2Utc20gOndoZXJlKGgzKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS41NTU1NmVtO21hcmdpbi1ib3R0b206LjQ0NDQ0NGVtO2ZvbnQtc2l6ZToxLjI4NTcxZW07bGluZS1oZWlnaHQ6MS41NTU1Nn0ucHJvc2Utc20gOndoZXJlKGg0KTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS40Mjg1N2VtO21hcmdpbi1ib3R0b206LjU3MTQyOWVtO2xpbmUtaGVpZ2h0OjEuNDI4NTd9LnByb3NlLXNtIDp3aGVyZShpbWcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLXNtIDp3aGVyZShwaWN0dXJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS43MTQyOWVtO21hcmdpbi1ib3R0b206MS43MTQyOWVtfS5wcm9zZS1zbSA6d2hlcmUocGljdHVyZVx1MDAzZWltZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowfS5wcm9zZS1zbSA6d2hlcmUodmlkZW8pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjcxNDI5ZW07bWFyZ2luLWJvdHRvbToxLjcxNDI5ZW19LnByb3NlLXNtIDp3aGVyZShrYmQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy10b3A6LjE0Mjg1N2VtO3BhZGRpbmctaW5saW5lLWVuZDouMzU3MTQzZW07cGFkZGluZy1ib3R0b206LjE0Mjg1N2VtO2JvcmRlci1yYWRpdXM6LjMxMjVyZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjM1NzE0M2VtO2ZvbnQtc2l6ZTouODU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2ZvbnQtc2l6ZTouODU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShoMiBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2ZvbnQtc2l6ZTouOWVtfS5wcm9zZS1zbSA6d2hlcmUoaDMgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXNpemU6Ljg4ODg4OWVtfS5wcm9zZS1zbSA6d2hlcmUocHJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctdG9wOi42NjY2NjdlbTtwYWRkaW5nLWlubGluZS1lbmQ6MWVtO3BhZGRpbmctYm90dG9tOi42NjY2NjdlbTtib3JkZXItcmFkaXVzOi4yNXJlbTttYXJnaW4tdG9wOjEuNjY2NjdlbTttYXJnaW4tYm90dG9tOjEuNjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW07Zm9udC1zaXplOi44NTcxNDNlbTtsaW5lLWhlaWdodDoxLjY2NjY3fS5wcm9zZS1zbSA6d2hlcmUob2wpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLXNtIDp3aGVyZSh1bCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMTQyODZlbTttYXJnaW4tYm90dG9tOjEuMTQyODZlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShsaSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi4yODU3MTRlbTttYXJnaW4tYm90dG9tOi4yODU3MTRlbX0ucHJvc2Utc20gOndoZXJlKG9sXHUwMDNlbGkpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLXNtIDp3aGVyZSh1bFx1MDAzZWxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0Oi40Mjg1NzFlbX0ucHJvc2Utc20gOndoZXJlKC5wcm9zZS1zbVx1MDAzZXVsXHUwMDNlbGkgcCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi41NzE0MjllbTttYXJnaW4tYm90dG9tOi41NzE0MjllbX0ucHJvc2Utc20gOndoZXJlKC5wcm9zZS1zbVx1MDAzZXVsXHUwMDNlbGlcdTAwM2VwOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4xNDI4NmVtfS5wcm9zZS1zbSA6d2hlcmUoLnByb3NlLXNtXHUwMDNldWxcdTAwM2VsaVx1MDAzZXA6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjEuMTQyODZlbX0ucHJvc2Utc20gOndoZXJlKC5wcm9zZS1zbVx1MDAzZW9sXHUwMDNlbGlcdTAwM2VwOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4xNDI4NmVtfS5wcm9zZS1zbSA6d2hlcmUoLnByb3NlLXNtXHUwMDNlb2xcdTAwM2VsaVx1MDAzZXA6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjEuMTQyODZlbX0ucHJvc2Utc20gOndoZXJlKHVsIHVsLHVsIG9sLG9sIHVsLG9sIG9sKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6LjU3MTQyOWVtO21hcmdpbi1ib3R0b206LjU3MTQyOWVtfS5wcm9zZS1zbSA6d2hlcmUoZGwpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjE0Mjg2ZW07bWFyZ2luLWJvdHRvbToxLjE0Mjg2ZW19LnByb3NlLXNtIDp3aGVyZShkdCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMTQyODZlbX0ucHJvc2Utc20gOndoZXJlKGRkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6LjI4NTcxNGVtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjEuNTcxNDNlbX0ucHJvc2Utc20gOndoZXJlKGhyKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6Mi44NTcxNGVtO21hcmdpbi1ib3R0b206Mi44NTcxNGVtfS5wcm9zZS1zbSA6d2hlcmUoaHIrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2Utc20gOndoZXJlKGgyKyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLXNtIDp3aGVyZShoMysqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1zbSA6d2hlcmUoaDQrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjB9LnByb3NlLXNtIDp3aGVyZSh0YWJsZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXNpemU6Ljg1NzE0M2VtO2xpbmUtaGVpZ2h0OjEuNX0ucHJvc2Utc20gOndoZXJlKHRoZWFkIHRoKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLWVuZDoxZW07cGFkZGluZy1ib3R0b206LjY2NjY2N2VtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjFlbX0ucHJvc2Utc20gOndoZXJlKHRoZWFkIHRoOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9LnByb3NlLXNtIDp3aGVyZSh0aGVhZCB0aDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLWVuZDowfS5wcm9zZS1zbSA6d2hlcmUodGJvZHkgdGQsdGZvb3QgdGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy10b3A6LjY2NjY2N2VtO3BhZGRpbmctaW5saW5lLWVuZDoxZW07cGFkZGluZy1ib3R0b206LjY2NjY2N2VtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjFlbX0ucHJvc2Utc20gOndoZXJlKHRib2R5IHRkOmZpcnN0LWNoaWxkLHRmb290IHRkOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9LnByb3NlLXNtIDp3aGVyZSh0Ym9keSB0ZDpsYXN0LWNoaWxkLHRmb290IHRkOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtZW5kOjB9LnByb3NlLXNtIDp3aGVyZShmaWd1cmUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjcxNDI5ZW07bWFyZ2luLWJvdHRvbToxLjcxNDI5ZW19LnByb3NlLXNtIDp3aGVyZShmaWd1cmVcdTAwM2UqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOjB9LnByb3NlLXNtIDp3aGVyZShmaWdjYXB0aW9uKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6LjY2NjY2N2VtO2ZvbnQtc2l6ZTouODU3MTQzZW07bGluZS1oZWlnaHQ6MS4zMzMzM30ucHJvc2Utc20gOndoZXJlKC5wcm9zZS1zbVx1MDAzZTpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjB9LnByb3NlLXNtIDp3aGVyZSgucHJvc2Utc21cdTAwM2U6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjB9Li1tdC0xe21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSotMSl9Lm10LTBcXC41e21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9Lm10LTF7bWFyZ2luLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tdC0ye21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ubXQtM3ttYXJnaW4tdG9wOmNhbGModmFyKC0tc3BhY2luZykqMyl9Lm10LTR7bWFyZ2luLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5tdC02e21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0ubXQtOHttYXJnaW4tdG9wOmNhbGModmFyKC0tc3BhY2luZykqOCl9Lm10LTEwe21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9Lm10LTEye21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMil9Lm10LWF1dG97bWFyZ2luLXRvcDphdXRvfS5tci0xe21hcmdpbi1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tci0ye21hcmdpbi1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5tci04e21hcmdpbi1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjgpfS4tbWItNHttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqLTQpfS5tYi0xe21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ubWItMVxcLjV7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9Lm1iLTJ7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5tYi0ze21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0ubWItNHttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqNCl9Lm1iLTZ7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5tYi04e21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0ubWItMTB7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKX0ubWwtMXttYXJnaW4tbGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tbC0ye21hcmdpbi1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMil9Lm1sLWF1dG97bWFyZ2luLWxlZnQ6YXV0b30ubGluZS1jbGFtcC0yey13ZWJraXQtbGluZS1jbGFtcDoyOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtkaXNwbGF5Oi13ZWJraXQtYm94O292ZXJmbG93OmhpZGRlbn0ubm8tc2Nyb2xsYmFyey1tcy1vdmVyZmxvdy1zdHlsZTpub25lO3Njcm9sbGJhci13aWR0aDpub25lfS5uby1zY3JvbGxiYXI6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0uYmxvY2t7ZGlzcGxheTpibG9ja30uZmxleHtkaXNwbGF5OmZsZXh9LmdyaWR7ZGlzcGxheTpncmlkfS5oaWRkZW57ZGlzcGxheTpub25lfS5pbmxpbmV7ZGlzcGxheTppbmxpbmV9LmlubGluZS1ibG9ja3tkaXNwbGF5OmlubGluZS1ibG9ja30uaW5saW5lLWZsZXh7ZGlzcGxheTppbmxpbmUtZmxleH0ubGlzdC1pdGVte2Rpc3BsYXk6bGlzdC1pdGVtfS50YWJsZXtkaXNwbGF5OnRhYmxlfS50YWJsZS1jYXB0aW9ue2Rpc3BsYXk6dGFibGUtY2FwdGlvbn0udGFibGUtY2VsbHtkaXNwbGF5OnRhYmxlLWNlbGx9LnRhYmxlLXJvd3tkaXNwbGF5OnRhYmxlLXJvd30uZmllbGQtc2l6aW5nLWNvbnRlbnR7ZmllbGQtc2l6aW5nOmNvbnRlbnR9LmFzcGVjdC1cXFsxNlxcLzlcXF17YXNwZWN0LXJhdGlvOjE2Lzl9LmFzcGVjdC1cXFs2MTBcXC8yMDhcXF17YXNwZWN0LXJhdGlvOjYxMC8yMDh9LmFzcGVjdC1zcXVhcmV7YXNwZWN0LXJhdGlvOjF9LnNpemUtM1xcLjV7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMuNSl9LnNpemUtNHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5zaXplLTV7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX0uc2l6ZS02e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNik7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNil9LnNpemUtN3t3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjcpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjcpfS5zaXplLTh7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0uc2l6ZS05e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqOSk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqOSl9LnNpemUtMTB7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMTApfS5zaXplLTE0e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMTQpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjE0KX0uc2l6ZS1mdWxse3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LmgtMntoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0uaC0yXFwuNXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5oLTN7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMyl9LmgtM1xcLjV7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMy41KX0uaC00e2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5oLTV7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNSl9LmgtNntoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0uaC03e2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjcpfS5oLTh7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqOCl9LmgtOFxcIXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KSFpbXBvcnRhbnR9LmgtOXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo5KX0uaC0xMHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9LmgtMTJ7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMTIpfS5oLTE0e2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjE0KX0uaC0xNntoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNil9LmgtMjB7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMjApfS5oLTI0e2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjI0KX0uaC00MHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0MCl9LmgtNjR7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNjQpfS5oLTgwe2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjgwKX0uaC1cXFs4MHB4XFxde2hlaWdodDo4MHB4fS5oLVxcWzMwMHB4XFxde2hlaWdodDozMDBweH0uaC1cXFszNjBweFxcXXtoZWlnaHQ6MzYwcHh9LmgtXFxbNDQwcHhcXF17aGVpZ2h0OjQ0MHB4fS5oLVxcW2NhbGNcXCgxMDBcXCUtMXB4XFwpXFxde2hlaWdodDpjYWxjKDEwMCUgLSAxcHgpfS5oLWF1dG97aGVpZ2h0OmF1dG99LmgtZnVsbHtoZWlnaHQ6MTAwJX0uaC1weHtoZWlnaHQ6MXB4fS5oLXNjcmVlbntoZWlnaHQ6MTAwdmh9Lm1heC1oLVxcKC0tYXZhaWxhYmxlLWhlaWdodFxcKXttYXgtaGVpZ2h0OnZhcigtLWF2YWlsYWJsZS1oZWlnaHQpfS5tYXgtaC02NHttYXgtaGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNjQpfS5tYXgtaC03MnttYXgtaGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNzIpfS5taW4taC0xNnttaW4taGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMTYpfS5taW4taC1cXFs2MHZoXFxde21pbi1oZWlnaHQ6NjB2aH0ubWluLWgtc2NyZWVue21pbi1oZWlnaHQ6MTAwdmh9LnctXFwoLS1hbmNob3Itd2lkdGhcXCl7d2lkdGg6dmFyKC0tYW5jaG9yLXdpZHRoKX0udy0xe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMSl9LnctMnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS53LTN7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0udy0zXFwuNXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjMuNSl9LnctNHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS53LTV7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX0udy02e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNil9LnctN3t3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjcpfS53LTh7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0udy05e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqOSl9LnctMTB7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9LnctMTJ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMil9LnctMTR7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNCl9LnctMTZ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNil9LnctMjB7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyMCl9LnctMjR7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyNCl9LnctMjh7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyOCl9LnctMzJ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozMil9LnctNDB7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0MCl9LnctNDR7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0NCl9LnctNDh7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0OCl9LnctNTJ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1Mil9LnctNTZ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1Nil9LnctNzJ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo3Mil9LnctXFxbMTIwcHhcXF17d2lkdGg6MTIwcHh9LnctXFxbMTQwcHhcXF17d2lkdGg6MTQwcHh9LnctXFxbY2FsY1xcKFxcKDEwMFxcJS0ycmVtXFwpXFwvM1xcKVxcXXt3aWR0aDpjYWxjKDMzLjMzMzMlIC0gLjY2NjY2N3JlbSl9LnctYXV0b3t3aWR0aDphdXRvfS53LWZpdHt3aWR0aDpmaXQtY29udGVudH0udy1mdWxse3dpZHRoOjEwMCV9LnctcHh7d2lkdGg6MXB4fS5tYXgtdy0we21heC13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5tYXgtdy0yeGx7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci0yeGwpfS5tYXgtdy0zeGx7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci0zeGwpfS5tYXgtdy00eGx7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci00eGwpfS5tYXgtdy03eGx7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci03eGwpfS5tYXgtdy00OHttYXgtd2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0OCl9Lm1heC13LVxcWzIwMHB4XFxde21heC13aWR0aDoyMDBweH0ubWF4LXctXFxbY2FsY1xcKDEwMFxcJS0ycmVtXFwpXFxde21heC13aWR0aDpjYWxjKDEwMCUgLSAycmVtKX0ubWF4LXctXFxbY2FsY1xcKDEwMHZ3LTJyZW1cXClcXF17bWF4LXdpZHRoOmNhbGMoMTAwdncgLSAycmVtKX0ubWF4LXctbGd7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci1sZyl9Lm1heC13LW1ke21heC13aWR0aDp2YXIoLS1jb250YWluZXItbWQpfS5tYXgtdy1ub25le21heC13aWR0aDpub25lfS5tYXgtdy1zbXttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLXNtKX0ubWF4LXcteGx7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci14bCl9Lm1heC13LXhze21heC13aWR0aDp2YXIoLS1jb250YWluZXIteHMpfS5taW4tdy0we21pbi13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5taW4tdy0zMnttaW4td2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozMil9Lm1pbi13LTY0e21pbi13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjY0KX0ubWluLXctXFxbMnJlbVxcXXttaW4td2lkdGg6MnJlbX0ubWluLXctXFxbOTZweFxcXXttaW4td2lkdGg6OTZweH0ubWluLXctXFxbMTUwcHhcXF17bWluLXdpZHRoOjE1MHB4fS5mbGV4LTF7ZmxleDoxfS5zaHJpbmstMHtmbGV4LXNocmluazowfS50YWJsZS1maXhlZHt0YWJsZS1sYXlvdXQ6Zml4ZWR9LmNhcHRpb24tYm90dG9te2NhcHRpb24tc2lkZTpib3R0b219Lm9yaWdpbi1cXCgtLXRyYW5zZm9ybS1vcmlnaW5cXCl7dHJhbnNmb3JtLW9yaWdpbjp2YXIoLS10cmFuc2Zvcm0tb3JpZ2luKX0uLXRyYW5zbGF0ZS14LTFcXC8yey0tdHctdHJhbnNsYXRlLXg6Y2FsYyhjYWxjKDEvMioxMDAlKSotMSk7dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0udHJhbnNsYXRlLXgtXFxbM3B4XFxdey0tdHctdHJhbnNsYXRlLXg6M3B4O3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9LnRyYW5zbGF0ZS14LVxcWzE4cHhcXF17LS10dy10cmFuc2xhdGUteDoxOHB4O3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9Li10cmFuc2xhdGUteS0xXFwvMnstLXR3LXRyYW5zbGF0ZS15OmNhbGMoY2FsYygxLzIqMTAwJSkqLTEpO3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9LnRyYW5zbGF0ZS15LTB7LS10dy10cmFuc2xhdGUteTpjYWxjKHZhcigtLXNwYWNpbmcpKjApO3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9LnJvdGF0ZS0xODB7cm90YXRlOjE4MGRlZ30udHJhbnNmb3Jte3RyYW5zZm9ybTp2YXIoLS10dy1yb3RhdGUteCwpdmFyKC0tdHctcm90YXRlLXksKXZhcigtLXR3LXJvdGF0ZS16LCl2YXIoLS10dy1za2V3LXgsKXZhcigtLXR3LXNrZXcteSwpfS50cmFuc2Zvcm0tZ3B1e3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApdmFyKC0tdHctcm90YXRlLXgsKXZhcigtLXR3LXJvdGF0ZS15LCl2YXIoLS10dy1yb3RhdGUteiwpdmFyKC0tdHctc2tldy14LCl2YXIoLS10dy1za2V3LXksKX0uYW5pbWF0ZS1wdWxzZXthbmltYXRpb246dmFyKC0tYW5pbWF0ZS1wdWxzZSl9LmFuaW1hdGUtc3BpbnthbmltYXRpb246dmFyKC0tYW5pbWF0ZS1zcGluKX0uY3Vyc29yLWNyb3NzaGFpcntjdXJzb3I6Y3Jvc3NoYWlyfS5jdXJzb3ItZGVmYXVsdHtjdXJzb3I6ZGVmYXVsdH0uY3Vyc29yLW5vdC1hbGxvd2Vke2N1cnNvcjpub3QtYWxsb3dlZH0uY3Vyc29yLXBvaW50ZXJ7Y3Vyc29yOnBvaW50ZXJ9LmN1cnNvci10ZXh0e2N1cnNvcjp0ZXh0fS5yZXNpemV7cmVzaXplOmJvdGh9LnJlc2l6ZS1ub25le3Jlc2l6ZTpub25lfS5zY3JvbGwtcHktMXtzY3JvbGwtcGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5saXN0LWRpc2N7bGlzdC1zdHlsZS10eXBlOmRpc2N9Lmxpc3Qtbm9uZXtsaXN0LXN0eWxlLXR5cGU6bm9uZX0uYXV0by1jb2xzLWZye2dyaWQtYXV0by1jb2x1bW5zOm1pbm1heCgwLDFmcil9LmdyaWQtZmxvdy1jb2x7Z3JpZC1hdXRvLWZsb3c6Y29sdW1ufS5hdXRvLXJvd3MtbWlue2dyaWQtYXV0by1yb3dzOm1pbi1jb250ZW50fS5ncmlkLWNvbHMtMXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDEsbWlubWF4KDAsMWZyKSl9LmdyaWQtY29scy0ye2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKX0uZmxleC1jb2x7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5mbGV4LWNvbC1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlfS5mbGV4LXJvd3tmbGV4LWRpcmVjdGlvbjpyb3d9LmZsZXgtd3JhcHtmbGV4LXdyYXA6d3JhcH0uY29udGVudC1zdGFydHthbGlnbi1jb250ZW50OmZsZXgtc3RhcnR9Lml0ZW1zLWJhc2VsaW5le2FsaWduLWl0ZW1zOmJhc2VsaW5lfS5pdGVtcy1jZW50ZXJ7YWxpZ24taXRlbXM6Y2VudGVyfS5pdGVtcy1lbmR7YWxpZ24taXRlbXM6ZmxleC1lbmR9Lml0ZW1zLXN0YXJ0e2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lml0ZW1zLXN0cmV0Y2h7YWxpZ24taXRlbXM6c3RyZXRjaH0uanVzdGlmeS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH0uanVzdGlmeS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5qdXN0aWZ5LWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5qdXN0aWZ5LWVuZHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lmp1c3RpZnktc3RhcnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9LmdhcC0wXFwuNXtnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9LmdhcC0xe2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5nYXAtMVxcLjV7Z2FwOmNhbGModmFyKC0tc3BhY2luZykqMS41KX0uZ2FwLTJ7Z2FwOmNhbGModmFyKC0tc3BhY2luZykqMil9LmdhcC0yXFwuNXtnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5nYXAtM3tnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uZ2FwLTR7Z2FwOmNhbGModmFyKC0tc3BhY2luZykqNCl9LmdhcC02e2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5nYXAtOHtnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0uZ2FwLVxcWzJweFxcXXtnYXA6MnB4fTp3aGVyZSguc3BhY2UteS0wXFwuNVx1MDAzZTpub3QoOmxhc3QtY2hpbGQpKXstLXR3LXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi1ibG9jay1zdGFydDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqLjUpKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKi41KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTFcdTAwM2U6bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tYmxvY2stc3RhcnQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEpKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEpKmNhbGMoMSAtIHZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpKX06d2hlcmUoLnNwYWNlLXktMVxcLjVcdTAwM2U6bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tYmxvY2stc3RhcnQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSkqdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSk7bWFyZ2luLWJsb2NrLWVuZDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqMS41KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTJcdTAwM2U6bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tYmxvY2stc3RhcnQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjIpKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjIpKmNhbGMoMSAtIHZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpKX06d2hlcmUoLnNwYWNlLXktM1x1MDAzZTpub3QoOmxhc3QtY2hpbGQpKXstLXR3LXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi1ibG9jay1zdGFydDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqMykqdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSk7bWFyZ2luLWJsb2NrLWVuZDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqMykqY2FsYygxIC0gdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSkpfTp3aGVyZSguc3BhY2UteS00XHUwMDNlOm5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo0KSp2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKTttYXJnaW4tYmxvY2stZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo0KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTZcdTAwM2U6bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tYmxvY2stc3RhcnQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjYpKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjYpKmNhbGMoMSAtIHZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpKX06d2hlcmUoLnNwYWNlLXktOFx1MDAzZTpub3QoOmxhc3QtY2hpbGQpKXstLXR3LXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi1ibG9jay1zdGFydDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqOCkqdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSk7bWFyZ2luLWJsb2NrLWVuZDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqOCkqY2FsYygxIC0gdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSkpfTp3aGVyZSguc3BhY2UteS0xMFx1MDAzZTpub3QoOmxhc3QtY2hpbGQpKXstLXR3LXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi1ibG9jay1zdGFydDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqMTApKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEwKSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9LmdhcC14LTR7Y29sdW1uLWdhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5nYXAteC04e2NvbHVtbi1nYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX06d2hlcmUoLi1zcGFjZS14LTJcdTAwM2U6bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS14LXJldmVyc2U6MDttYXJnaW4taW5saW5lLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSotMikqdmFyKC0tdHctc3BhY2UteC1yZXZlcnNlKSk7bWFyZ2luLWlubGluZS1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKi0yKSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS14LXJldmVyc2UpKSl9LmdhcC15LTFcXC41e3Jvdy1nYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxLjUpfS5nYXAteS01e3Jvdy1nYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX06d2hlcmUoLmRpdmlkZS15XHUwMDNlOm5vdCg6bGFzdC1jaGlsZCkpey0tdHctZGl2aWRlLXktcmV2ZXJzZTowO2JvcmRlci1ib3R0b20tc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItdG9wLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXRvcC13aWR0aDpjYWxjKDFweCp2YXIoLS10dy1kaXZpZGUteS1yZXZlcnNlKSk7Ym9yZGVyLWJvdHRvbS13aWR0aDpjYWxjKDFweCpjYWxjKDEgLSB2YXIoLS10dy1kaXZpZGUteS1yZXZlcnNlKSkpfTp3aGVyZSguZGl2aWRlLWJvcmRlclx1MDAzZTpub3QoOmxhc3QtY2hpbGQpKXtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyKX0uc2VsZi1zdGFydHthbGlnbi1zZWxmOmZsZXgtc3RhcnR9Lmp1c3RpZnktc2VsZi1lbmR7anVzdGlmeS1zZWxmOmZsZXgtZW5kfS50cnVuY2F0ZXt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW59Lm92ZXJmbG93LWF1dG97b3ZlcmZsb3c6YXV0b30ub3ZlcmZsb3ctaGlkZGVue292ZXJmbG93OmhpZGRlbn0ub3ZlcmZsb3cteC1hdXRve292ZXJmbG93LXg6YXV0b30ub3ZlcmZsb3cteC1oaWRkZW57b3ZlcmZsb3cteDpoaWRkZW59Lm92ZXJmbG93LXgtc2Nyb2xse292ZXJmbG93LXg6c2Nyb2xsfS5vdmVyZmxvdy15LWF1dG97b3ZlcmZsb3cteTphdXRvfS5yb3VuZGVke2JvcmRlci1yYWRpdXM6LjI1cmVtfS5yb3VuZGVkLTJ4bHtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjgpfS5yb3VuZGVkLTR4bHtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoyLjYpfS5yb3VuZGVkLVxcW2NhbGNcXCh2YXJcXCgtLXJhZGl1c1xcKS0zcHhcXClcXF17Ym9yZGVyLXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykgLSAzcHgpfS5yb3VuZGVkLVxcW21pblxcKHZhclxcKC0tcmFkaXVzLW1kXFwpXFwsMTBweFxcKVxcXXtib3JkZXItcmFkaXVzOm1pbih2YXIoLS1yYWRpdXMtbWQpLDEwcHgpfS5yb3VuZGVkLVxcW21pblxcKHZhclxcKC0tcmFkaXVzLW1kXFwpXFwsMTJweFxcKVxcXXtib3JkZXItcmFkaXVzOm1pbih2YXIoLS1yYWRpdXMtbWQpLDEycHgpfS5yb3VuZGVkLWZ1bGx7Ym9yZGVyLXJhZGl1czozLjQwMjgyZTM4cHh9LnJvdW5kZWQtbGd7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMpfS5yb3VuZGVkLWxnXFwhe2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzKSFpbXBvcnRhbnR9LnJvdW5kZWQtbWR7Ym9yZGVyLXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqLjgpfS5yb3VuZGVkLW5vbmV7Ym9yZGVyLXJhZGl1czowfS5yb3VuZGVkLXNte2JvcmRlci1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKi42KX0ucm91bmRlZC14bHtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpfS5yb3VuZGVkLXhsXFwhe2JvcmRlci1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuNCkhaW1wb3J0YW50fS5yb3VuZGVkLXQtMnhse2JvcmRlci10b3AtbGVmdC1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuOCk7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuOCl9LnJvdW5kZWQtdC14bHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpfS5yb3VuZGVkLWIteGx7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuNCk7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqMS40KX0uYm9yZGVye2JvcmRlci1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci13aWR0aDoxcHh9LmJvcmRlci0we2JvcmRlci1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci13aWR0aDowfS5ib3JkZXItMntib3JkZXItc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItd2lkdGg6MnB4fS5ib3JkZXItdHtib3JkZXItdG9wLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXRvcC13aWR0aDoxcHh9LmJvcmRlci1ye2JvcmRlci1yaWdodC1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1yaWdodC13aWR0aDoxcHh9LmJvcmRlci1ie2JvcmRlci1ib3R0b20tc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItYm90dG9tLXdpZHRoOjFweH0uYm9yZGVyLWItMntib3JkZXItYm90dG9tLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLWJvdHRvbS13aWR0aDoycHh9LmJvcmRlci1kYXNoZWR7LS10dy1ib3JkZXItc3R5bGU6ZGFzaGVkO2JvcmRlci1zdHlsZTpkYXNoZWR9LmJvcmRlci1ib3JkZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlcil9LmJvcmRlci1kYW5nZXJcXC8zMHtib3JkZXItY29sb3I6dmFyKC0tZGFuZ2VyKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJvcmRlci1kYW5nZXJcXC8zMHtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRhbmdlcikzMCUsdHJhbnNwYXJlbnQpfX0uYm9yZGVyLWRlc3RydWN0aXZlXFwvMzB7Ym9yZGVyLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJvcmRlci1kZXN0cnVjdGl2ZVxcLzMwe2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMzAlLHRyYW5zcGFyZW50KX19LmJvcmRlci1pbnB1dCwuYm9yZGVyLWlucHV0XFwvMzB7Ym9yZGVyLWNvbG9yOnZhcigtLWlucHV0KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJvcmRlci1pbnB1dFxcLzMwe2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0taW5wdXQpMzAlLHRyYW5zcGFyZW50KX19LmJvcmRlci1wcmltYXJ5e2JvcmRlci1jb2xvcjp2YXIoLS1wcmltYXJ5KX0uYm9yZGVyLXJlZC01MDBcXC80MHtib3JkZXItY29sb3I6I2ZiMmMzNjY2fUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYm9yZGVyLXJlZC01MDBcXC80MHtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWNvbG9yLXJlZC01MDApNDAlLHRyYW5zcGFyZW50KX19LmJvcmRlci1zdWNjZXNzXFwvMzB7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYm9yZGVyLXN1Y2Nlc3NcXC8zMHtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXN1Y2Nlc3MpMzAlLHRyYW5zcGFyZW50KX19LmJvcmRlci10cmFuc3BhcmVudHtib3JkZXItY29sb3I6IzAwMDB9LmJnLVxcW1xcIzIyOUVEOVxcXXtiYWNrZ3JvdW5kLWNvbG9yOiMyMjllZDl9LmJnLWJhY2tncm91bmQsLmJnLWJhY2tncm91bmRcXC84MHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWJhY2tncm91bmQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctYmFja2dyb3VuZFxcLzgwe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWJhY2tncm91bmQpODAlLHRyYW5zcGFyZW50KX19LmJnLWJsYWNrXFwvMTB7YmFja2dyb3VuZC1jb2xvcjojMDAwMDAwMWF9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1ibGFja1xcLzEwe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWNvbG9yLWJsYWNrKTEwJSx0cmFuc3BhcmVudCl9fS5iZy1ibGFja1xcLzUwe2JhY2tncm91bmQtY29sb3I6IzAwMDAwMDgwfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctYmxhY2tcXC81MHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1jb2xvci1ibGFjayk1MCUsdHJhbnNwYXJlbnQpfX0uYmctYm9yZGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tYm9yZGVyKX0uYmctY2FyZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNhcmQpfS5iZy1kYW5nZXIsLmJnLWRhbmdlclxcLzV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1kYW5nZXIpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctZGFuZ2VyXFwvNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kYW5nZXIpNSUsdHJhbnNwYXJlbnQpfX0uYmctZGVzdHJ1Y3RpdmUsLmJnLWRlc3RydWN0aXZlXFwvNXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLWRlc3RydWN0aXZlXFwvNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSk1JSx0cmFuc3BhcmVudCl9fS5iZy1kZXN0cnVjdGl2ZVxcLzEwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctZGVzdHJ1Y3RpdmVcXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSkxMCUsdHJhbnNwYXJlbnQpfX0uYmctaW5wdXRcXC8zMHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWlucHV0KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLWlucHV0XFwvMzB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0taW5wdXQpMzAlLHRyYW5zcGFyZW50KX19LmJnLW11dGVke2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfS5iZy1tdXRlZC1mb3JlZ3JvdW5kXFwvMjV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLW11dGVkLWZvcmVncm91bmRcXC8yNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKTI1JSx0cmFuc3BhcmVudCl9fS5iZy1tdXRlZFxcLzMwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctbXV0ZWRcXC8zMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZCkzMCUsdHJhbnNwYXJlbnQpfX0uYmctbXV0ZWRcXC80MHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLW11dGVkXFwvNDB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tbXV0ZWQpNDAlLHRyYW5zcGFyZW50KX19LmJnLW11dGVkXFwvNTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1tdXRlZFxcLzUwe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLW11dGVkKTUwJSx0cmFuc3BhcmVudCl9fS5iZy1wb3BvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tcG9wb3Zlcil9LmJnLXByaW1hcnl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wcmltYXJ5KX0uYmctcHJpbWFyeS1mb3JlZ3JvdW5kXFwvMjB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wcmltYXJ5LWZvcmVncm91bmQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctcHJpbWFyeS1mb3JlZ3JvdW5kXFwvMjB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcHJpbWFyeS1mb3JlZ3JvdW5kKTIwJSx0cmFuc3BhcmVudCl9fS5iZy1wcmltYXJ5XFwvNXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctcHJpbWFyeVxcLzV7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcHJpbWFyeSk1JSx0cmFuc3BhcmVudCl9fS5iZy1wcmltYXJ5XFwvMTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wcmltYXJ5KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXByaW1hcnlcXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1wcmltYXJ5KTEwJSx0cmFuc3BhcmVudCl9fS5iZy1wcmltYXJ5XFwvMTV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wcmltYXJ5KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXByaW1hcnlcXC8xNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1wcmltYXJ5KTE1JSx0cmFuc3BhcmVudCl9fS5iZy1zZWNvbmRhcnl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zZWNvbmRhcnkpfS5iZy1zdWNjZXNzLC5iZy1zdWNjZXNzXFwvMTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zdWNjZXNzKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXN1Y2Nlc3NcXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1zdWNjZXNzKTEwJSx0cmFuc3BhcmVudCl9fS5iZy1zdWNjZXNzXFwvMTV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zdWNjZXNzKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXN1Y2Nlc3NcXC8xNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1zdWNjZXNzKTE1JSx0cmFuc3BhcmVudCl9fS5iZy1zdXJmYWNlLC5iZy1zdXJmYWNlXFwvOTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zdXJmYWNlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXN1cmZhY2VcXC85MHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1zdXJmYWNlKTkwJSx0cmFuc3BhcmVudCl9fS5iZy10cmFuc3BhcmVudHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5iZy13YXJuaW5nXFwvMTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS13YXJuaW5nKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXdhcm5pbmdcXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS13YXJuaW5nKTEwJSx0cmFuc3BhcmVudCl9fS5iZy13aGl0ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXdoaXRlKX0uYmctd2hpdGVcXC8xNXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYyNn1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXdoaXRlXFwvMTV7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tY29sb3Itd2hpdGUpMTUlLHRyYW5zcGFyZW50KX19LmJnLWdyYWRpZW50LXRvLWJyey0tdHctZ3JhZGllbnQtcG9zaXRpb246dG8gYm90dG9tIHJpZ2h0IGluIG9rbGFiO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHZhcigtLXR3LWdyYWRpZW50LXN0b3BzKSl9LmZyb20tXFxbXFwjMzhBRkUzXFxdey0tdHctZ3JhZGllbnQtZnJvbTojMzhhZmUzOy0tdHctZ3JhZGllbnQtc3RvcHM6dmFyKC0tdHctZ3JhZGllbnQtdmlhLXN0b3BzLHZhcigtLXR3LWdyYWRpZW50LXBvc2l0aW9uKSx2YXIoLS10dy1ncmFkaWVudC1mcm9tKXZhcigtLXR3LWdyYWRpZW50LWZyb20tcG9zaXRpb24pLHZhcigtLXR3LWdyYWRpZW50LXRvKXZhcigtLXR3LWdyYWRpZW50LXRvLXBvc2l0aW9uKSl9LmZyb20tXFxbXFwjMjI5RUQ5XFxdey0tdHctZ3JhZGllbnQtZnJvbTojMjI5ZWQ5Oy0tdHctZ3JhZGllbnQtc3RvcHM6dmFyKC0tdHctZ3JhZGllbnQtdmlhLXN0b3BzLHZhcigtLXR3LWdyYWRpZW50LXBvc2l0aW9uKSx2YXIoLS10dy1ncmFkaWVudC1mcm9tKXZhcigtLXR3LWdyYWRpZW50LWZyb20tcG9zaXRpb24pLHZhcigtLXR3LWdyYWRpZW50LXRvKXZhcigtLXR3LWdyYWRpZW50LXRvLXBvc2l0aW9uKSl9LnRvLVxcW1xcIzFGOTdDQVxcXXstLXR3LWdyYWRpZW50LXRvOiMxZjk3Y2E7LS10dy1ncmFkaWVudC1zdG9wczp2YXIoLS10dy1ncmFkaWVudC12aWEtc3RvcHMsdmFyKC0tdHctZ3JhZGllbnQtcG9zaXRpb24pLHZhcigtLXR3LWdyYWRpZW50LWZyb20pdmFyKC0tdHctZ3JhZGllbnQtZnJvbS1wb3NpdGlvbiksdmFyKC0tdHctZ3JhZGllbnQtdG8pdmFyKC0tdHctZ3JhZGllbnQtdG8tcG9zaXRpb24pKX0udG8tXFxbXFwjMWE3ZmIwXFxdey0tdHctZ3JhZGllbnQtdG86IzFhN2ZiMDstLXR3LWdyYWRpZW50LXN0b3BzOnZhcigtLXR3LWdyYWRpZW50LXZpYS1zdG9wcyx2YXIoLS10dy1ncmFkaWVudC1wb3NpdGlvbiksdmFyKC0tdHctZ3JhZGllbnQtZnJvbSl2YXIoLS10dy1ncmFkaWVudC1mcm9tLXBvc2l0aW9uKSx2YXIoLS10dy1ncmFkaWVudC10byl2YXIoLS10dy1ncmFkaWVudC10by1wb3NpdGlvbikpfS5iZy1jbGlwLXBhZGRpbmd7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94fS5vYmplY3QtY292ZXJ7b2JqZWN0LWZpdDpjb3Zlcn0ucC0we3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0ucC0wXFwuNXtwYWRkaW5nOmNhbGModmFyKC0tc3BhY2luZykqLjUpfS5wLTF7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5wLTJ7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5wLTN7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5wLTR7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5wLTV7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjUpfS5wLTZ7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5wLTEye3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMil9LnAtXFxbM3B4XFxde3BhZGRpbmc6M3B4fS5weC0xe3BhZGRpbmctaW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqMSl9LnB4LTFcXC41e3BhZGRpbmctaW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqMS41KX0ucHgtMntwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5weC0yXFwuNXtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjIuNSl9LnB4LTN7cGFkZGluZy1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0ucHgtNHtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5weC01e3BhZGRpbmctaW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqNSl9LnB5LTBcXC41e3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9LnB5LTF7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5weS0xXFwuNXtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMS41KX0ucHktMntwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMil9LnB5LTJcXC41e3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5weS0ze3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0ucHktM1xcLjV7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjMuNSl9LnB5LTR7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5weS02e3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0ucHktOHtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqOCl9LnB5LTEwe3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9LnB5LTEye3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMil9LnB5LTE2e3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNil9LnB0LTJ7cGFkZGluZy10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucHQtM3twYWRkaW5nLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5wdC00e3BhZGRpbmctdG9wOmNhbGModmFyKC0tc3BhY2luZykqNCl9LnB0LTZ7cGFkZGluZy10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0ucHItMntwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9LnByLTR7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5wci04e3BhZGRpbmctcmlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0ucHItMTJ7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEyKX0ucGItMHtwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5wYi0xe3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMSl9LnBiLTJ7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucGItNntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5wYi04e3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqOCl9LnBiLTEwe3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMTApfS5wYi0xNntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjE2KX0ucGwtMVxcLjV7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMS41KX0ucGwtMntwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucGwtNXtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX0ucGwtOHtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0ucGwtOXtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo5KX0udGV4dC1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LnRleHQtbGVmdHt0ZXh0LWFsaWduOmxlZnR9LnRleHQtcmlnaHR7dGV4dC1hbGlnbjpyaWdodH0uYWxpZ24tbWlkZGxle3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uZm9udC1tb25ve2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtaW50ZXIpLFwiSW50ZXJcIix1aS1zYW5zLXNlcmlmLHN5c3RlbS11aSwtYXBwbGUtc3lzdGVtLHNhbnMtc2VyaWZ9LnRleHQtMnhse2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LTJ4bCk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LTJ4bC0tbGluZS1oZWlnaHQpKX0udGV4dC0zeGx7Zm9udC1zaXplOnZhcigtLXRleHQtM3hsKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtM3hsLS1saW5lLWhlaWdodCkpfS50ZXh0LTR4bHtmb250LXNpemU6dmFyKC0tdGV4dC00eGwpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC00eGwtLWxpbmUtaGVpZ2h0KSl9LnRleHQtNnhse2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LTZ4bCk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LTZ4bC0tbGluZS1oZWlnaHQpKX0udGV4dC1iYXNle2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LWJhc2UpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC1iYXNlLS1saW5lLWhlaWdodCkpfS50ZXh0LWxne2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LWxnKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtbGctLWxpbmUtaGVpZ2h0KSl9LnRleHQtc217Zm9udC1zaXplOnZhcigtLXRleHQtc20pO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC1zbS0tbGluZS1oZWlnaHQpKX0udGV4dC14bHtmb250LXNpemU6dmFyKC0tdGV4dC14bCk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LXhsLS1saW5lLWhlaWdodCkpfS50ZXh0LXhze2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LXhzKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQteHMtLWxpbmUtaGVpZ2h0KSl9LnRleHQtXFxbMFxcLjhyZW1cXF17Zm9udC1zaXplOi44cmVtfS50ZXh0LVxcWzEwcHhcXF17Zm9udC1zaXplOjEwcHh9LnRleHQtXFxbMTFweFxcXXtmb250LXNpemU6MTFweH0ubGVhZGluZy1ub25ley0tdHctbGVhZGluZzoxO2xpbmUtaGVpZ2h0OjF9LmxlYWRpbmctcmVsYXhlZHstLXR3LWxlYWRpbmc6dmFyKC0tbGVhZGluZy1yZWxheGVkKTtsaW5lLWhlaWdodDp2YXIoLS1sZWFkaW5nLXJlbGF4ZWQpfS5sZWFkaW5nLXNudWd7LS10dy1sZWFkaW5nOnZhcigtLWxlYWRpbmctc251Zyk7bGluZS1oZWlnaHQ6dmFyKC0tbGVhZGluZy1zbnVnKX0ubGVhZGluZy10aWdodHstLXR3LWxlYWRpbmc6dmFyKC0tbGVhZGluZy10aWdodCk7bGluZS1oZWlnaHQ6dmFyKC0tbGVhZGluZy10aWdodCl9LmZvbnQtYm9sZHstLXR3LWZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO2ZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpfS5mb250LW1lZGl1bXstLXR3LWZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7Zm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKX0uZm9udC1ub3JtYWx7LS10dy1mb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpO2ZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LW5vcm1hbCl9LmZvbnQtc2VtaWJvbGR7LS10dy1mb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7Zm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpfS50cmFja2luZy10aWdodHstLXR3LXRyYWNraW5nOnZhcigtLXRyYWNraW5nLXRpZ2h0KTtsZXR0ZXItc3BhY2luZzp2YXIoLS10cmFja2luZy10aWdodCl9LnRyYWNraW5nLXdpZGV7LS10dy10cmFja2luZzp2YXIoLS10cmFja2luZy13aWRlKTtsZXR0ZXItc3BhY2luZzp2YXIoLS10cmFja2luZy13aWRlKX0udHJhY2tpbmctd2lkZXN0ey0tdHctdHJhY2tpbmc6dmFyKC0tdHJhY2tpbmctd2lkZXN0KTtsZXR0ZXItc3BhY2luZzp2YXIoLS10cmFja2luZy13aWRlc3QpfS5icmVhay1hbGx7d29yZC1icmVhazpicmVhay1hbGx9LndoaXRlc3BhY2Utbm9ybWFse3doaXRlLXNwYWNlOm5vcm1hbH0ud2hpdGVzcGFjZS1ub3dyYXB7d2hpdGUtc3BhY2U6bm93cmFwfS53aGl0ZXNwYWNlLXByZS1saW5le3doaXRlLXNwYWNlOnByZS1saW5lfS53aGl0ZXNwYWNlLXByZS13cmFwe3doaXRlLXNwYWNlOnByZS13cmFwfS50ZXh0LVxcW1xcIzIyQzU1RVxcXXtjb2xvcjojMjJjNTVlfS50ZXh0LVxcW1xcIzIyOUVEOVxcXXtjb2xvcjojMjI5ZWQ5fS50ZXh0LVxcW1xcIzE4NzlBOFxcXXtjb2xvcjojMTg3OWE4fS50ZXh0LVxcW1xcI0VGNDQ0NFxcXXtjb2xvcjojZWY0NDQ0fS50ZXh0LWNhcmQtZm9yZWdyb3VuZHtjb2xvcjp2YXIoLS1jYXJkLWZvcmVncm91bmQpfS50ZXh0LWRhbmdlcntjb2xvcjp2YXIoLS1kYW5nZXIpfS50ZXh0LWRlc3RydWN0aXZle2NvbG9yOnZhcigtLWRlc3RydWN0aXZlKX0udGV4dC1mb3JlZ3JvdW5kLC50ZXh0LWZvcmVncm91bmRcXC82MHtjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LnRleHQtZm9yZWdyb3VuZFxcLzYwe2NvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1mb3JlZ3JvdW5kKTYwJSx0cmFuc3BhcmVudCl9fS50ZXh0LWZvcmVncm91bmRcXC84MHtjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LnRleHQtZm9yZWdyb3VuZFxcLzgwe2NvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1mb3JlZ3JvdW5kKTgwJSx0cmFuc3BhcmVudCl9fS50ZXh0LWdyZWVuLTYwMHtjb2xvcjp2YXIoLS1jb2xvci1ncmVlbi02MDApfS50ZXh0LW11dGVkLWZvcmVncm91bmQsLnRleHQtbXV0ZWQtZm9yZWdyb3VuZFxcLzYwe2NvbG9yOnZhcigtLW11dGVkLWZvcmVncm91bmQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsudGV4dC1tdXRlZC1mb3JlZ3JvdW5kXFwvNjB7Y29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLW11dGVkLWZvcmVncm91bmQpNjAlLHRyYW5zcGFyZW50KX19LnRleHQtb3JhbmdlLTUwMHtjb2xvcjp2YXIoLS1jb2xvci1vcmFuZ2UtNTAwKX0udGV4dC1wb3BvdmVyLWZvcmVncm91bmR7Y29sb3I6dmFyKC0tcG9wb3Zlci1mb3JlZ3JvdW5kKX0udGV4dC1wcmltYXJ5e2NvbG9yOnZhcigtLXByaW1hcnkpfS50ZXh0LXByaW1hcnktZm9yZWdyb3VuZHtjb2xvcjp2YXIoLS1wcmltYXJ5LWZvcmVncm91bmQpfS50ZXh0LXJlZC01MDB7Y29sb3I6dmFyKC0tY29sb3ItcmVkLTUwMCl9LnRleHQtc2Vjb25kYXJ5LWZvcmVncm91bmR7Y29sb3I6dmFyKC0tc2Vjb25kYXJ5LWZvcmVncm91bmQpfS50ZXh0LXN1Y2Nlc3N7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LnRleHQtd2FybmluZ3tjb2xvcjp2YXIoLS13YXJuaW5nKX0udGV4dC13aGl0ZXtjb2xvcjp2YXIoLS1jb2xvci13aGl0ZSl9LnRleHQtd2hpdGVcXC84NXtjb2xvcjojZmZmZmZmZDl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey50ZXh0LXdoaXRlXFwvODV7Y29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWNvbG9yLXdoaXRlKTg1JSx0cmFuc3BhcmVudCl9fS50ZXh0LXdoaXRlXFwvOTB7Y29sb3I6I2ZmZmZmZmU2fUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsudGV4dC13aGl0ZVxcLzkwe2NvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1jb2xvci13aGl0ZSk5MCUsdHJhbnNwYXJlbnQpfX0udGV4dC13aGl0ZVxcLzk1e2NvbG9yOiNmZmZmZmZmMn1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LnRleHQtd2hpdGVcXC85NXtjb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tY29sb3Itd2hpdGUpOTUlLHRyYW5zcGFyZW50KX19LmNhcGl0YWxpemV7dGV4dC10cmFuc2Zvcm06Y2FwaXRhbGl6ZX0udXBwZXJjYXNle3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0uaXRhbGlje2ZvbnQtc3R5bGU6aXRhbGljfS50YWJ1bGFyLW51bXN7LS10dy1udW1lcmljLXNwYWNpbmc6dGFidWxhci1udW1zO2ZvbnQtdmFyaWFudC1udW1lcmljOnZhcigtLXR3LW9yZGluYWwsKXZhcigtLXR3LXNsYXNoZWQtemVybywpdmFyKC0tdHctbnVtZXJpYy1maWd1cmUsKXZhcigtLXR3LW51bWVyaWMtc3BhY2luZywpdmFyKC0tdHctbnVtZXJpYy1mcmFjdGlvbiwpfS51bmRlcmxpbmV7dGV4dC1kZWNvcmF0aW9uLWxpbmU6dW5kZXJsaW5lfS51bmRlcmxpbmUtb2Zmc2V0LTJ7dGV4dC11bmRlcmxpbmUtb2Zmc2V0OjJweH0udW5kZXJsaW5lLW9mZnNldC00e3RleHQtdW5kZXJsaW5lLW9mZnNldDo0cHh9LmFudGlhbGlhc2Vkey13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6Z3JheXNjYWxlfS5vcGFjaXR5LTB7b3BhY2l0eTowfS5vcGFjaXR5LTMwe29wYWNpdHk6LjN9Lm9wYWNpdHktNDB7b3BhY2l0eTouNH0ub3BhY2l0eS01MHtvcGFjaXR5Oi41fS5vcGFjaXR5LTcwe29wYWNpdHk6Ljd9LmJnLWJsZW5kLWNvbG9ye2JhY2tncm91bmQtYmxlbmQtbW9kZTpjb2xvcn0uc2hhZG93ey0tdHctc2hhZG93OjAgMXB4IDNweCAwIHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpLDAgMXB4IDJweCAtMXB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uc2hhZG93LWxney0tdHctc2hhZG93OjAgMTBweCAxNXB4IC0zcHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSksMCA0cHggNnB4IC00cHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSk7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfS5zaGFkb3ctbWR7LS10dy1zaGFkb3c6MCA0cHggNnB4IC0xcHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSksMCAycHggNHB4IC0ycHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSk7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfS5zaGFkb3ctbm9uZXstLXR3LXNoYWRvdzowIDAgIzAwMDA7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfS5zaGFkb3ctbm9uZVxcIXstLXR3LXNoYWRvdzowIDAgIzAwMDAhaW1wb3J0YW50O2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KSFpbXBvcnRhbnR9LnNoYWRvdy1zbXstLXR3LXNoYWRvdzowIDFweCAzcHggMCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSwwIDFweCAycHggLTFweCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnNoYWRvdy14c3stLXR3LXNoYWRvdzowIDFweCAycHggMCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDBkKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctMHstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMHB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctMXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMXB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctMnstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMnB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctYmFja2dyb3VuZHstLXR3LXJpbmctY29sb3I6dmFyKC0tYmFja2dyb3VuZCl9LnJpbmctZm9yZWdyb3VuZFxcLzEwey0tdHctcmluZy1jb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LnJpbmctZm9yZWdyb3VuZFxcLzEwey0tdHctcmluZy1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZm9yZWdyb3VuZCkxMCUsdHJhbnNwYXJlbnQpfX0ucmluZy1wcmltYXJ5XFwvMzB7LS10dy1yaW5nLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsucmluZy1wcmltYXJ5XFwvMzB7LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1wcmltYXJ5KTMwJSx0cmFuc3BhcmVudCl9fS5vdXRsaW5lLWhpZGRlbnstLXR3LW91dGxpbmUtc3R5bGU6bm9uZTtvdXRsaW5lLXN0eWxlOm5vbmV9QG1lZGlhIChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lm91dGxpbmUtaGlkZGVue291dGxpbmUtb2Zmc2V0OjJweDtvdXRsaW5lOjJweCBzb2xpZCAjMDAwMH19Lm91dGxpbmV7b3V0bGluZS1zdHlsZTp2YXIoLS10dy1vdXRsaW5lLXN0eWxlKTtvdXRsaW5lLXdpZHRoOjFweH0uZmlsdGVye2ZpbHRlcjp2YXIoLS10dy1ibHVyLCl2YXIoLS10dy1icmlnaHRuZXNzLCl2YXIoLS10dy1jb250cmFzdCwpdmFyKC0tdHctZ3JheXNjYWxlLCl2YXIoLS10dy1odWUtcm90YXRlLCl2YXIoLS10dy1pbnZlcnQsKXZhcigtLXR3LXNhdHVyYXRlLCl2YXIoLS10dy1zZXBpYSwpdmFyKC0tdHctZHJvcC1zaGFkb3csKX0uYmFja2Ryb3AtYmx1ci1zbXstLXR3LWJhY2tkcm9wLWJsdXI6Ymx1cih2YXIoLS1ibHVyLXNtKSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0tdHctYmFja2Ryb3AtYmx1ciwpdmFyKC0tdHctYmFja2Ryb3AtYnJpZ2h0bmVzcywpdmFyKC0tdHctYmFja2Ryb3AtY29udHJhc3QsKXZhcigtLXR3LWJhY2tkcm9wLWdyYXlzY2FsZSwpdmFyKC0tdHctYmFja2Ryb3AtaHVlLXJvdGF0ZSwpdmFyKC0tdHctYmFja2Ryb3AtaW52ZXJ0LCl2YXIoLS10dy1iYWNrZHJvcC1vcGFjaXR5LCl2YXIoLS10dy1iYWNrZHJvcC1zYXR1cmF0ZSwpdmFyKC0tdHctYmFja2Ryb3Atc2VwaWEsKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0tdHctYmFja2Ryb3AtYmx1ciwpdmFyKC0tdHctYmFja2Ryb3AtYnJpZ2h0bmVzcywpdmFyKC0tdHctYmFja2Ryb3AtY29udHJhc3QsKXZhcigtLXR3LWJhY2tkcm9wLWdyYXlzY2FsZSwpdmFyKC0tdHctYmFja2Ryb3AtaHVlLXJvdGF0ZSwpdmFyKC0tdHctYmFja2Ryb3AtaW52ZXJ0LCl2YXIoLS10dy1iYWNrZHJvcC1vcGFjaXR5LCl2YXIoLS10dy1iYWNrZHJvcC1zYXR1cmF0ZSwpdmFyKC0tdHctYmFja2Ryb3Atc2VwaWEsKX0udHJhbnNpdGlvbnt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3IsYm9yZGVyLWNvbG9yLG91dGxpbmUtY29sb3IsdGV4dC1kZWNvcmF0aW9uLWNvbG9yLGZpbGwsc3Ryb2tlLC0tdHctZ3JhZGllbnQtZnJvbSwtLXR3LWdyYWRpZW50LXZpYSwtLXR3LWdyYWRpZW50LXRvLG9wYWNpdHksYm94LXNoYWRvdyx0cmFuc2Zvcm0sdHJhbnNsYXRlLHNjYWxlLHJvdGF0ZSxmaWx0ZXIsLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXIsYmFja2Ryb3AtZmlsdGVyLGRpc3BsYXksY29udGVudC12aXNpYmlsaXR5LG92ZXJsYXkscG9pbnRlci1ldmVudHM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tdHctZWFzZSx2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKSk7dHJhbnNpdGlvbi1kdXJhdGlvbjp2YXIoLS10dy1kdXJhdGlvbix2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24pKX0udHJhbnNpdGlvbi1hbGx7dHJhbnNpdGlvbi1wcm9wZXJ0eTphbGw7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tdHctZWFzZSx2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKSk7dHJhbnNpdGlvbi1kdXJhdGlvbjp2YXIoLS10dy1kdXJhdGlvbix2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24pKX0udHJhbnNpdGlvbi1jb2xvcnN7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yLGJvcmRlci1jb2xvcixvdXRsaW5lLWNvbG9yLHRleHQtZGVjb3JhdGlvbi1jb2xvcixmaWxsLHN0cm9rZSwtLXR3LWdyYWRpZW50LWZyb20sLS10dy1ncmFkaWVudC12aWEsLS10dy1ncmFkaWVudC10bzt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS10dy1lYXNlLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pKTt0cmFuc2l0aW9uLWR1cmF0aW9uOnZhcigtLXR3LWR1cmF0aW9uLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbikpfS50cmFuc2l0aW9uLW9wYWNpdHl7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5O3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLXR3LWVhc2UsdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbikpO3RyYW5zaXRpb24tZHVyYXRpb246dmFyKC0tdHctZHVyYXRpb24sdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uKSl9LnRyYW5zaXRpb24tc2hhZG93e3RyYW5zaXRpb24tcHJvcGVydHk6Ym94LXNoYWRvdzt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS10dy1lYXNlLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pKTt0cmFuc2l0aW9uLWR1cmF0aW9uOnZhcigtLXR3LWR1cmF0aW9uLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbikpfS50cmFuc2l0aW9uLXRyYW5zZm9ybXt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSx0cmFuc2xhdGUsc2NhbGUscm90YXRlO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLXR3LWVhc2UsdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbikpO3RyYW5zaXRpb24tZHVyYXRpb246dmFyKC0tdHctZHVyYXRpb24sdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uKSl9LmR1cmF0aW9uLTEwMHstLXR3LWR1cmF0aW9uOi4xczt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xc30uZHVyYXRpb24tMTUwey0tdHctZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXN9LmR1cmF0aW9uLTIwMHstLXR3LWR1cmF0aW9uOi4yczt0cmFuc2l0aW9uLWR1cmF0aW9uOi4yc30uZWFzZS1pbi1vdXR7LS10dy1lYXNlOnZhcigtLWVhc2UtaW4tb3V0KTt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS1lYXNlLWluLW91dCl9LlxcW3dpbGwtY2hhbmdlXFw6dHJhbnNmb3JtXFxde3dpbGwtY2hhbmdlOnRyYW5zZm9ybX0ub3V0bGluZS1ub25ley0tdHctb3V0bGluZS1zdHlsZTpub25lO291dGxpbmUtc3R5bGU6bm9uZX0uc2VsZWN0LW5vbmV7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9LnBhdXNlZHthbmltYXRpb24tcGxheS1zdGF0ZTpwYXVzZWR9LnJ1bm5pbmd7YW5pbWF0aW9uLXBsYXktc3RhdGU6cnVubmluZ30uZ3JvdXAtb3BlblxcOnJvdGF0ZS0xODA6aXMoOndoZXJlKC5ncm91cCk6aXMoW29wZW5dLDpwb3BvdmVyLW9wZW4sOm9wZW4pICope3JvdGF0ZToxODBkZWd9QG1lZGlhIChob3Zlcjpob3Zlcil7Lmdyb3VwLWhvdmVyXFw6dHJhbnNsYXRlLXgtMFxcLjU6aXMoOndoZXJlKC5ncm91cCk6aG92ZXIgKil7LS10dy10cmFuc2xhdGUteDpjYWxjKHZhcigtLXNwYWNpbmcpKi41KTt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS5ncm91cC1ob3ZlclxcOmJnLW11dGVkOmlzKDp3aGVyZSguZ3JvdXApOmhvdmVyICope2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfS5ncm91cC1ob3ZlclxcOnRleHQtcHJpbWFyeTppcyg6d2hlcmUoLmdyb3VwKTpob3ZlciAqKXtjb2xvcjp2YXIoLS1wcmltYXJ5KX0uZ3JvdXAtaG92ZXJcXDp0ZXh0LXdoaXRlOmlzKDp3aGVyZSguZ3JvdXApOmhvdmVyICope2NvbG9yOnZhcigtLWNvbG9yLXdoaXRlKX0uZ3JvdXAtaG92ZXJcXDpvcGFjaXR5LTEwMDppcyg6d2hlcmUoLmdyb3VwKTpob3ZlciAqKXtvcGFjaXR5OjF9Lmdyb3VwLWhvdmVyXFw6c2hhZG93LW1kOmlzKDp3aGVyZSguZ3JvdXApOmhvdmVyICopey0tdHctc2hhZG93OjAgNHB4IDZweCAtMXB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpLDAgMnB4IDRweCAtMnB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX19Lmdyb3VwLWZvY3VzXFwvZHJvcGRvd24tbWVudS1pdGVtXFw6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZDppcyg6d2hlcmUoLmdyb3VwXFwvZHJvcGRvd24tbWVudS1pdGVtKTpmb2N1cyAqKXtjb2xvcjp2YXIoLS1hY2NlbnQtZm9yZWdyb3VuZCl9Lmdyb3VwLWhhcy1kYXRhLVxcW3NpemVcXD1sZ1xcXVxcL2F2YXRhci1ncm91cFxcOnNpemUtMTA6aXMoOndoZXJlKC5ncm91cFxcL2F2YXRhci1ncm91cCk6aGFzKFtkYXRhLXNpemU9bGddKSAqKXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9Lmdyb3VwLWhhcy1kYXRhLVxcW3NpemVcXD1zbVxcXVxcL2F2YXRhci1ncm91cFxcOnNpemUtNjppcyg6d2hlcmUoLmdyb3VwXFwvYXZhdGFyLWdyb3VwKTpoYXMoW2RhdGEtc2l6ZT1zbV0pICope3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNik7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNil9Lmdyb3VwLWhhcy1kYXRhLVxcW3Nsb3RcXD1jb21tYW5kLXNob3J0Y3V0XFxdXFwvY29tbWFuZC1pdGVtXFw6aGlkZGVuOmlzKDp3aGVyZSguZ3JvdXBcXC9jb21tYW5kLWl0ZW0pOmhhcyhbZGF0YS1zbG90PWNvbW1hbmQtc2hvcnRjdXRdKSAqKXtkaXNwbGF5Om5vbmV9Lmdyb3VwLWhhcy1cXFtcXFx1MDAzZWlucHV0XFxdXFwvaW5wdXQtZ3JvdXBcXDpwdC0yOmlzKDp3aGVyZSguZ3JvdXBcXC9pbnB1dC1ncm91cCk6aGFzKFx1MDAzZWlucHV0KSAqKXtwYWRkaW5nLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5ncm91cC1oYXMtXFxbXFxcdTAwM2VpbnB1dFxcXVxcL2lucHV0LWdyb3VwXFw6cGItMjppcyg6d2hlcmUoLmdyb3VwXFwvaW5wdXQtZ3JvdXApOmhhcyhcdTAwM2VpbnB1dCkgKil7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0uZ3JvdXAtZGF0YS1cXFtjaGVja2VkXFw9dHJ1ZVxcXVxcL2NvbW1hbmQtaXRlbVxcOm9wYWNpdHktMTAwOmlzKDp3aGVyZSguZ3JvdXBcXC9jb21tYW5kLWl0ZW0pW2RhdGEtY2hlY2tlZD10cnVlXSAqKXtvcGFjaXR5OjF9Lmdyb3VwLWRhdGEtXFxbZGlzYWJsZWRcXD10cnVlXFxdXFw6cG9pbnRlci1ldmVudHMtbm9uZTppcyg6d2hlcmUoLmdyb3VwKVtkYXRhLWRpc2FibGVkPXRydWVdICope3BvaW50ZXItZXZlbnRzOm5vbmV9Lmdyb3VwLWRhdGEtXFxbZGlzYWJsZWRcXD10cnVlXFxdXFw6b3BhY2l0eS01MDppcyg6d2hlcmUoLmdyb3VwKVtkYXRhLWRpc2FibGVkPXRydWVdICopLC5ncm91cC1kYXRhLVxcW2Rpc2FibGVkXFw9dHJ1ZVxcXVxcL2lucHV0LWdyb3VwXFw6b3BhY2l0eS01MDppcyg6d2hlcmUoLmdyb3VwXFwvaW5wdXQtZ3JvdXApW2RhdGEtZGlzYWJsZWQ9dHJ1ZV0gKil7b3BhY2l0eTouNX0uZ3JvdXAtZGF0YS1cXFtzaXplXFw9ZGVmYXVsdFxcXVxcL2F2YXRhclxcOnNpemUtMlxcLjU6aXMoOndoZXJlKC5ncm91cFxcL2F2YXRhcilbZGF0YS1zaXplPWRlZmF1bHRdICope3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMi41KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5ncm91cC1kYXRhLVxcW3NpemVcXD1sZ1xcXVxcL2F2YXRhclxcOnNpemUtMzppcyg6d2hlcmUoLmdyb3VwXFwvYXZhdGFyKVtkYXRhLXNpemU9bGddICope3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMyk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMyl9Lmdyb3VwLWRhdGEtXFxbc2l6ZVxcPXNtXFxdXFwvYXZhdGFyXFw6c2l6ZS0yOmlzKDp3aGVyZSguZ3JvdXBcXC9hdmF0YXIpW2RhdGEtc2l6ZT1zbV0gKil7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0uZ3JvdXAtZGF0YS1cXFtzaXplXFw9c21cXF1cXC9hdmF0YXJcXDp0ZXh0LXhzOmlzKDp3aGVyZSguZ3JvdXBcXC9hdmF0YXIpW2RhdGEtc2l6ZT1zbV0gKil7Zm9udC1zaXplOnZhcigtLXRleHQteHMpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC14cy0tbGluZS1oZWlnaHQpKX0uZ3JvdXAtZGF0YS1cXFtzaXplXFw9c21cXF1cXC9jYXJkXFw6cC0zOmlzKDp3aGVyZSguZ3JvdXBcXC9jYXJkKVtkYXRhLXNpemU9c21dICope3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uZ3JvdXAtZGF0YS1cXFtzaXplXFw9c21cXF1cXC9jYXJkXFw6cHgtMzppcyg6d2hlcmUoLmdyb3VwXFwvY2FyZClbZGF0YS1zaXplPXNtXSAqKXtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5ncm91cC1kYXRhLVxcW3NpemVcXD1zbVxcXVxcL2NhcmRcXDp0ZXh0LXNtOmlzKDp3aGVyZSguZ3JvdXBcXC9jYXJkKVtkYXRhLXNpemU9c21dICope2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LXNtKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtc20tLWxpbmUtaGVpZ2h0KSl9Lmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpiZy10cmFuc3BhcmVudDppcyg6d2hlcmUoLmdyb3VwXFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9bGluZV0gKil7YmFja2dyb3VuZC1jb2xvcjojMDAwMH0uZ3JvdXAtZGF0YS1zZWxlY3RlZFxcL2NvbW1hbmQtaXRlbVxcOnRleHQtZm9yZWdyb3VuZDppcyg6d2hlcmUoLmdyb3VwXFwvY29tbWFuZC1pdGVtKTp3aGVyZShbZGF0YS1zZWxlY3RlZD10cnVlXSkgKil7Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9Lmdyb3VwLWRhdGEtaG9yaXpvbnRhbFxcL3RhYnNcXDpoLTg6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPWhvcml6b250YWxdKSAqKXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0uZ3JvdXAtZGF0YS12ZXJ0aWNhbFxcL3RhYnNcXDpoLWZpdDppcyg6d2hlcmUoLmdyb3VwXFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249dmVydGljYWxdKSAqKXtoZWlnaHQ6Zml0LWNvbnRlbnR9Lmdyb3VwLWRhdGEtdmVydGljYWxcXC90YWJzXFw6dy1mdWxsOmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pICope3dpZHRoOjEwMCV9Lmdyb3VwLWRhdGEtdmVydGljYWxcXC90YWJzXFw6ZmxleC1jb2w6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPXZlcnRpY2FsXSkgKil7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5ncm91cC1kYXRhLXZlcnRpY2FsXFwvdGFic1xcOmp1c3RpZnktc3RhcnQ6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPXZlcnRpY2FsXSkgKil7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9LnBlZXItZGlzYWJsZWRcXDpjdXJzb3Itbm90LWFsbG93ZWQ6aXMoOndoZXJlKC5wZWVyKTpkaXNhYmxlZH4qKXtjdXJzb3I6bm90LWFsbG93ZWR9LnBlZXItZGlzYWJsZWRcXDpvcGFjaXR5LTUwOmlzKDp3aGVyZSgucGVlcik6ZGlzYWJsZWR+Kil7b3BhY2l0eTouNX0uZmlsZVxcOmlubGluZS1mbGV4OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntkaXNwbGF5OmlubGluZS1mbGV4fS5maWxlXFw6aC02OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0uZmlsZVxcOmJvcmRlci0wOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntib3JkZXItc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItd2lkdGg6MH0uZmlsZVxcOmJnLXRyYW5zcGFyZW50OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5maWxlXFw6dGV4dC1zbTo6ZmlsZS1zZWxlY3Rvci1idXR0b257Zm9udC1zaXplOnZhcigtLXRleHQtc20pO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC1zbS0tbGluZS1oZWlnaHQpKX0uZmlsZVxcOmZvbnQtbWVkaXVtOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbnstLXR3LWZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7Zm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKX0uZmlsZVxcOnRleHQtZm9yZWdyb3VuZDo6ZmlsZS1zZWxlY3Rvci1idXR0b257Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9LnBsYWNlaG9sZGVyXFw6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kOjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX0uYWZ0ZXJcXDphYnNvbHV0ZTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO3Bvc2l0aW9uOmFic29sdXRlfS5hZnRlclxcOmluc2V0LTA6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtpbnNldDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5hZnRlclxcOnJvdW5kZWQtZnVsbDphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2JvcmRlci1yYWRpdXM6My40MDI4MmUzOHB4fS5hZnRlclxcOmJvcmRlcjphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2JvcmRlci1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci13aWR0aDoxcHh9LmFmdGVyXFw6Ym9yZGVyLWJvcmRlcjphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXIpfS5hZnRlclxcOmJnLWZvcmVncm91bmQ6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWZvcmVncm91bmQpfS5hZnRlclxcOm9wYWNpdHktMDphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO29wYWNpdHk6MH0uYWZ0ZXJcXDptaXgtYmxlbmQtZGFya2VuOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7bWl4LWJsZW5kLW1vZGU6ZGFya2VufS5hZnRlclxcOnRyYW5zaXRpb24tb3BhY2l0eTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eTt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS10dy1lYXNlLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pKTt0cmFuc2l0aW9uLWR1cmF0aW9uOnZhcigtLXR3LWR1cmF0aW9uLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbikpfS5ncm91cC1kYXRhLWhvcml6b250YWxcXC90YWJzXFw6YWZ0ZXJcXDppbnNldC14LTA6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPWhvcml6b250YWxdKSAqKTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2luc2V0LWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5ncm91cC1kYXRhLWhvcml6b250YWxcXC90YWJzXFw6YWZ0ZXJcXDpib3R0b20tXFxbLTVweFxcXTppcyg6d2hlcmUoLmdyb3VwXFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249aG9yaXpvbnRhbF0pICopOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7Ym90dG9tOi01cHh9Lmdyb3VwLWRhdGEtaG9yaXpvbnRhbFxcL3RhYnNcXDphZnRlclxcOmgtMFxcLjU6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPWhvcml6b250YWxdKSAqKTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKi41KX0uZ3JvdXAtZGF0YS12ZXJ0aWNhbFxcL3RhYnNcXDphZnRlclxcOmluc2V0LXktMDppcyg6d2hlcmUoLmdyb3VwXFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249dmVydGljYWxdKSAqKTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2luc2V0LWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmdyb3VwLWRhdGEtdmVydGljYWxcXC90YWJzXFw6YWZ0ZXJcXDotcmlnaHQtMTppcyg6d2hlcmUoLmdyb3VwXFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249dmVydGljYWxdKSAqKTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO3JpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqLTEpfS5ncm91cC1kYXRhLXZlcnRpY2FsXFwvdGFic1xcOmFmdGVyXFw6dy0wXFwuNTppcyg6d2hlcmUoLmdyb3VwXFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249dmVydGljYWxdKSAqKTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqLjUpfS5mb2N1cy13aXRoaW5cXDpib3JkZXItcmluZzpmb2N1cy13aXRoaW57Ym9yZGVyLWNvbG9yOnZhcigtLXJpbmcpfS5mb2N1cy13aXRoaW5cXDpyaW5nLTM6Zm9jdXMtd2l0aGluey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uZm9jdXMtd2l0aGluXFw6cmluZy1yaW5nXFwvNTA6Zm9jdXMtd2l0aGluey0tdHctcmluZy1jb2xvcjp2YXIoLS1yaW5nKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmZvY3VzLXdpdGhpblxcOnJpbmctcmluZ1xcLzUwOmZvY3VzLXdpdGhpbnstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXJpbmcpNTAlLHRyYW5zcGFyZW50KX19QG1lZGlhIChob3Zlcjpob3Zlcil7LmhvdmVyXFw6Ym9yZGVyLW11dGVkLWZvcmVncm91bmRcXC8zMDpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tbXV0ZWQtZm9yZWdyb3VuZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3ZlclxcOmJvcmRlci1tdXRlZC1mb3JlZ3JvdW5kXFwvMzA6aG92ZXJ7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKTMwJSx0cmFuc3BhcmVudCl9fS5ob3ZlclxcOmJvcmRlci1wcmltYXJ5XFwvNDA6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaG92ZXJcXDpib3JkZXItcHJpbWFyeVxcLzQwOmhvdmVye2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcHJpbWFyeSk0MCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcXDpib3JkZXItcmluZzpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tcmluZyl9LmhvdmVyXFw6YmctYWNjZW50OmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tYWNjZW50KX0uaG92ZXJcXDpiZy1kZXN0cnVjdGl2ZVxcLzIwOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaG92ZXJcXDpiZy1kZXN0cnVjdGl2ZVxcLzIwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTIwJSx0cmFuc3BhcmVudCl9fS5ob3ZlclxcOmJnLW11dGVkOmhvdmVyLC5ob3ZlclxcOmJnLW11dGVkXFwvNDA6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3ZlclxcOmJnLW11dGVkXFwvNDA6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tbXV0ZWQpNDAlLHRyYW5zcGFyZW50KX19LmhvdmVyXFw6YmctbXV0ZWRcXC81MDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmhvdmVyXFw6YmctbXV0ZWRcXC81MDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZCk1MCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcXDpiZy1tdXRlZFxcLzgwOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaG92ZXJcXDpiZy1tdXRlZFxcLzgwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLW11dGVkKTgwJSx0cmFuc3BhcmVudCl9fS5ob3ZlclxcOmJnLXByaW1hcnlcXC8yMDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaG92ZXJcXDpiZy1wcmltYXJ5XFwvMjA6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcHJpbWFyeSkyMCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcXDpiZy1zZWNvbmRhcnlcXC84MDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXNlY29uZGFyeSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3ZlclxcOmJnLXNlY29uZGFyeVxcLzgwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXNlY29uZGFyeSk4MCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcXDp0ZXh0LWZvcmVncm91bmQ6aG92ZXJ7Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9LmhvdmVyXFw6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kOmhvdmVye2NvbG9yOnZhcigtLW11dGVkLWZvcmVncm91bmQpfS5ob3ZlclxcOnRleHQtcHJpbWFyeTpob3Zlcntjb2xvcjp2YXIoLS1wcmltYXJ5KX0uaG92ZXJcXDp1bmRlcmxpbmU6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uLWxpbmU6dW5kZXJsaW5lfS5ob3ZlclxcOnNoYWRvdy1sZzpob3ZlcnstLXR3LXNoYWRvdzowIDEwcHggMTVweCAtM3B4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpLDAgNHB4IDZweCAtNHB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uaG92ZXJcXDpzaGFkb3ctbWQ6aG92ZXJ7LS10dy1zaGFkb3c6MCA0cHggNnB4IC0xcHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSksMCAycHggNHB4IC0ycHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSk7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfX0uZm9jdXNcXDpiZy1hY2NlbnQ6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1hY2NlbnQpfS5mb2N1c1xcOnRleHQtYWNjZW50LWZvcmVncm91bmQ6Zm9jdXN7Y29sb3I6dmFyKC0tYWNjZW50LWZvcmVncm91bmQpfS5mb2N1c1xcOm91dGxpbmUtbm9uZTpmb2N1c3stLXR3LW91dGxpbmUtc3R5bGU6bm9uZTtvdXRsaW5lLXN0eWxlOm5vbmV9OmlzKC5mb2N1c1xcOlxcKlxcKlxcOnRleHQtYWNjZW50LWZvcmVncm91bmQ6Zm9jdXMgKiksOmlzKC5ub3QtZGF0YS1cXFt2YXJpYW50XFw9ZGVzdHJ1Y3RpdmVcXF1cXDpmb2N1c1xcOlxcKlxcKlxcOnRleHQtYWNjZW50LWZvcmVncm91bmQ6bm90KFtkYXRhLXZhcmlhbnQ9ZGVzdHJ1Y3RpdmVdKTpmb2N1cyAqKXtjb2xvcjp2YXIoLS1hY2NlbnQtZm9yZWdyb3VuZCl9LmZvY3VzLXZpc2libGVcXDpib3JkZXItZGVzdHJ1Y3RpdmVcXC80MDpmb2N1cy12aXNpYmxle2JvcmRlci1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5mb2N1cy12aXNpYmxlXFw6Ym9yZGVyLWRlc3RydWN0aXZlXFwvNDA6Zm9jdXMtdmlzaWJsZXtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTQwJSx0cmFuc3BhcmVudCl9fS5mb2N1cy12aXNpYmxlXFw6Ym9yZGVyLXJpbmc6Zm9jdXMtdmlzaWJsZXtib3JkZXItY29sb3I6dmFyKC0tcmluZyl9LmZvY3VzLXZpc2libGVcXDpyaW5nLTA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMHB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LmZvY3VzLXZpc2libGVcXDpyaW5nLTI6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMnB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LmZvY3VzLXZpc2libGVcXDpyaW5nLTM6Zm9jdXMtdmlzaWJsZSwuZm9jdXMtdmlzaWJsZVxcOnJpbmctXFxbM3B4XFxdOmZvY3VzLXZpc2libGV7LS10dy1yaW5nLXNoYWRvdzp2YXIoLS10dy1yaW5nLWluc2V0LCkwIDAgMCBjYWxjKDNweCArIHZhcigtLXR3LXJpbmctb2Zmc2V0LXdpZHRoKSl2YXIoLS10dy1yaW5nLWNvbG9yLGN1cnJlbnRjb2xvcik7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfS5mb2N1cy12aXNpYmxlXFw6cmluZy1kZXN0cnVjdGl2ZVxcLzIwOmZvY3VzLXZpc2libGV7LS10dy1yaW5nLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmZvY3VzLXZpc2libGVcXDpyaW5nLWRlc3RydWN0aXZlXFwvMjA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTIwJSx0cmFuc3BhcmVudCl9fS5mb2N1cy12aXNpYmxlXFw6cmluZy1yaW5nXFwvNTA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6dmFyKC0tcmluZyl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5mb2N1cy12aXNpYmxlXFw6cmluZy1yaW5nXFwvNTA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXJpbmcpNTAlLHRyYW5zcGFyZW50KX19LmZvY3VzLXZpc2libGVcXDpvdXRsaW5lLTE6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLXN0eWxlOnZhcigtLXR3LW91dGxpbmUtc3R5bGUpO291dGxpbmUtd2lkdGg6MXB4fS5mb2N1cy12aXNpYmxlXFw6b3V0bGluZS0yOmZvY3VzLXZpc2libGV7b3V0bGluZS1zdHlsZTp2YXIoLS10dy1vdXRsaW5lLXN0eWxlKTtvdXRsaW5lLXdpZHRoOjJweH0uZm9jdXMtdmlzaWJsZVxcOm91dGxpbmUtb2Zmc2V0LTI6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLW9mZnNldDoycHh9LmZvY3VzLXZpc2libGVcXDpvdXRsaW5lLXByaW1hcnk6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLWNvbG9yOnZhcigtLXByaW1hcnkpfS5mb2N1cy12aXNpYmxlXFw6b3V0bGluZS1yaW5nOmZvY3VzLXZpc2libGV7b3V0bGluZS1jb2xvcjp2YXIoLS1yaW5nKX0uYWN0aXZlXFw6dHJhbnNsYXRlLXktcHg6YWN0aXZley0tdHctdHJhbnNsYXRlLXk6MXB4O3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9LmRpc2FibGVkXFw6cG9pbnRlci1ldmVudHMtbm9uZTpkaXNhYmxlZHtwb2ludGVyLWV2ZW50czpub25lfS5kaXNhYmxlZFxcOmN1cnNvci1ub3QtYWxsb3dlZDpkaXNhYmxlZHtjdXJzb3I6bm90LWFsbG93ZWR9LmRpc2FibGVkXFw6YmctaW5wdXRcXC81MDpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWlucHV0KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRpc2FibGVkXFw6YmctaW5wdXRcXC81MDpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCk1MCUsdHJhbnNwYXJlbnQpfX0uZGlzYWJsZWRcXDpiZy10cmFuc3BhcmVudDpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5kaXNhYmxlZFxcOm9wYWNpdHktNTA6ZGlzYWJsZWR7b3BhY2l0eTouNX06d2hlcmUoW2RhdGEtc2xvdD1idXR0b24tZ3JvdXBdKSAuaW4tZGF0YS1cXFtzbG90XFw9YnV0dG9uLWdyb3VwXFxdXFw6cm91bmRlZC1sZ3tib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cyl9OndoZXJlKFtkYXRhLXNsb3Q9Y29tYm9ib3gtY29udGVudF0pIC5pbi1kYXRhLVxcW3Nsb3RcXD1jb21ib2JveC1jb250ZW50XFxdXFw6Zm9jdXMtd2l0aGluXFw6Ym9yZGVyLWluaGVyaXQ6Zm9jdXMtd2l0aGlue2JvcmRlci1jb2xvcjppbmhlcml0fTp3aGVyZShbZGF0YS1zbG90PWNvbWJvYm94LWNvbnRlbnRdKSAuaW4tZGF0YS1cXFtzbG90XFw9Y29tYm9ib3gtY29udGVudFxcXVxcOmZvY3VzLXdpdGhpblxcOnJpbmctMDpmb2N1cy13aXRoaW57LS10dy1yaW5nLXNoYWRvdzp2YXIoLS10dy1yaW5nLWluc2V0LCkwIDAgMCBjYWxjKDBweCArIHZhcigtLXR3LXJpbmctb2Zmc2V0LXdpZHRoKSl2YXIoLS10dy1yaW5nLWNvbG9yLGN1cnJlbnRjb2xvcik7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfTp3aGVyZShbZGF0YS1zbG90PWRpYWxvZy1jb250ZW50XSkgLmluLWRhdGEtXFxbc2xvdFxcPWRpYWxvZy1jb250ZW50XFxdXFw6cm91bmRlZC1sZ1xcIXtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cykhaW1wb3J0YW50fS5oYXMtZGlzYWJsZWRcXDpiZy1pbnB1dFxcLzUwOmhhcyg6ZGlzYWJsZWQpe2JhY2tncm91bmQtY29sb3I6dmFyKC0taW5wdXQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaGFzLWRpc2FibGVkXFw6YmctaW5wdXRcXC81MDpoYXMoOmRpc2FibGVkKXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCk1MCUsdHJhbnNwYXJlbnQpfX0uaGFzLWRpc2FibGVkXFw6b3BhY2l0eS01MDpoYXMoOmRpc2FibGVkKXtvcGFjaXR5Oi41fS5oYXMtZGF0YS1cXFtpY29uXFw9aW5saW5lLWVuZFxcXVxcOnByLTFcXC41OmhhcyhbZGF0YS1pY29uPWlubGluZS1lbmRdKXtwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMS41KX0uaGFzLWRhdGEtXFxbaWNvblxcPWlubGluZS1lbmRcXF1cXDpwci0yOmhhcyhbZGF0YS1pY29uPWlubGluZS1lbmRdKXtwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9Lmhhcy1kYXRhLVxcW2ljb25cXD1pbmxpbmUtZW5kXFxdXFw6cHItMzpoYXMoW2RhdGEtaWNvbj1pbmxpbmUtZW5kXSl7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5oYXMtZGF0YS1cXFtpY29uXFw9aW5saW5lLXN0YXJ0XFxdXFw6cGwtMVxcLjU6aGFzKFtkYXRhLWljb249aW5saW5lLXN0YXJ0XSl7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMS41KX0uaGFzLWRhdGEtXFxbaWNvblxcPWlubGluZS1zdGFydFxcXVxcOnBsLTI6aGFzKFtkYXRhLWljb249aW5saW5lLXN0YXJ0XSl7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMil9Lmhhcy1kYXRhLVxcW2ljb25cXD1pbmxpbmUtc3RhcnRcXF1cXDpwbC0zOmhhcyhbZGF0YS1pY29uPWlubGluZS1zdGFydF0pe3BhZGRpbmctbGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5oYXMtZGF0YS1cXFtzbG90XFw9Y2FyZC1hY3Rpb25cXF1cXDpncmlkLWNvbHMtXFxbMWZyX2F1dG9cXF06aGFzKFtkYXRhLXNsb3Q9Y2FyZC1hY3Rpb25dKXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIGF1dG99Lmhhcy1kYXRhLVxcW3Nsb3RcXD1jYXJkLWRlc2NyaXB0aW9uXFxdXFw6Z3JpZC1yb3dzLVxcW2F1dG9fYXV0b1xcXTpoYXMoW2RhdGEtc2xvdD1jYXJkLWRlc2NyaXB0aW9uXSl7Z3JpZC10ZW1wbGF0ZS1yb3dzOmF1dG8gYXV0b30uaGFzLWRhdGEtXFxbc2xvdFxcPWNhcmQtZm9vdGVyXFxdXFw6cGItMDpoYXMoW2RhdGEtc2xvdD1jYXJkLWZvb3Rlcl0pe3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmhhcy1cXFtcXFtkYXRhLXNsb3RcXD1pbnB1dC1ncm91cC1jb250cm9sXFxdXFw6Zm9jdXMtdmlzaWJsZVxcXVxcOmJvcmRlci1yaW5nOmhhcyhbZGF0YS1zbG90PWlucHV0LWdyb3VwLWNvbnRyb2xdOmZvY3VzLXZpc2libGUpe2JvcmRlci1jb2xvcjp2YXIoLS1yaW5nKX0uaGFzLVxcW1xcW2RhdGEtc2xvdFxcPWlucHV0LWdyb3VwLWNvbnRyb2xcXF1cXDpmb2N1cy12aXNpYmxlXFxdXFw6cmluZy0zOmhhcyhbZGF0YS1zbG90PWlucHV0LWdyb3VwLWNvbnRyb2xdOmZvY3VzLXZpc2libGUpey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uaGFzLVxcW1xcW2RhdGEtc2xvdFxcPWlucHV0LWdyb3VwLWNvbnRyb2xcXF1cXDpmb2N1cy12aXNpYmxlXFxdXFw6cmluZy1yaW5nXFwvNTA6aGFzKFtkYXRhLXNsb3Q9aW5wdXQtZ3JvdXAtY29udHJvbF06Zm9jdXMtdmlzaWJsZSl7LS10dy1yaW5nLWNvbG9yOnZhcigtLXJpbmcpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaGFzLVxcW1xcW2RhdGEtc2xvdFxcPWlucHV0LWdyb3VwLWNvbnRyb2xcXF1cXDpmb2N1cy12aXNpYmxlXFxdXFw6cmluZy1yaW5nXFwvNTA6aGFzKFtkYXRhLXNsb3Q9aW5wdXQtZ3JvdXAtY29udHJvbF06Zm9jdXMtdmlzaWJsZSl7LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1yaW5nKTUwJSx0cmFuc3BhcmVudCl9fS5oYXMtXFxbXFxbZGF0YS1zbG90XFxdXFxbYXJpYS1pbnZhbGlkXFw9dHJ1ZVxcXVxcXVxcOmJvcmRlci1kZXN0cnVjdGl2ZTpoYXMoW2RhdGEtc2xvdF1bYXJpYS1pbnZhbGlkPXRydWVdKXtib3JkZXItY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfS5oYXMtXFxbXFxbZGF0YS1zbG90XFxdXFxbYXJpYS1pbnZhbGlkXFw9dHJ1ZVxcXVxcXVxcOnJpbmctMzpoYXMoW2RhdGEtc2xvdF1bYXJpYS1pbnZhbGlkPXRydWVdKXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoM3B4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9Lmhhcy1cXFtcXFtkYXRhLXNsb3RcXF1cXFthcmlhLWludmFsaWRcXD10cnVlXFxdXFxdXFw6cmluZy1kZXN0cnVjdGl2ZVxcLzIwOmhhcyhbZGF0YS1zbG90XVthcmlhLWludmFsaWQ9dHJ1ZV0pey0tdHctcmluZy1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5oYXMtXFxbXFxbZGF0YS1zbG90XFxdXFxbYXJpYS1pbnZhbGlkXFw9dHJ1ZVxcXVxcXVxcOnJpbmctZGVzdHJ1Y3RpdmVcXC8yMDpoYXMoW2RhdGEtc2xvdF1bYXJpYS1pbnZhbGlkPXRydWVdKXstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTIwJSx0cmFuc3BhcmVudCl9fS5oYXMtXFxbXFxcdTAwM2VcXFtkYXRhLWFsaWduXFw9YmxvY2stZW5kXFxdXFxdXFw6aC1hdXRvOmhhcyhcdTAwM2VbZGF0YS1hbGlnbj1ibG9jay1lbmRdKXtoZWlnaHQ6YXV0b30uaGFzLVxcW1xcXHUwMDNlXFxbZGF0YS1hbGlnblxcPWJsb2NrLWVuZFxcXVxcXVxcOmZsZXgtY29sOmhhcyhcdTAwM2VbZGF0YS1hbGlnbj1ibG9jay1lbmRdKXtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lmhhcy1cXFtcXFx1MDAzZVxcW2RhdGEtYWxpZ25cXD1ibG9jay1zdGFydFxcXVxcXVxcOmgtYXV0bzpoYXMoXHUwMDNlW2RhdGEtYWxpZ249YmxvY2stc3RhcnRdKXtoZWlnaHQ6YXV0b30uaGFzLVxcW1xcXHUwMDNlXFxbZGF0YS1hbGlnblxcPWJsb2NrLXN0YXJ0XFxdXFxdXFw6ZmxleC1jb2w6aGFzKFx1MDAzZVtkYXRhLWFsaWduPWJsb2NrLXN0YXJ0XSl7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5oYXMtXFxbXFxcdTAwM2VidXR0b25cXF1cXDptci1cXFstMFxcLjNyZW1cXF06aGFzKFx1MDAzZWJ1dHRvbil7bWFyZ2luLXJpZ2h0Oi0uM3JlbX0uaGFzLVxcW1xcXHUwMDNlYnV0dG9uXFxdXFw6bWwtXFxbLTBcXC4zcmVtXFxdOmhhcyhcdTAwM2VidXR0b24pe21hcmdpbi1sZWZ0Oi0uM3JlbX0uaGFzLVxcW1xcXHUwMDNlaW1nXFw6Zmlyc3QtY2hpbGRcXF1cXDpwdC0wOmhhcyhcdTAwM2VpbWc6Zmlyc3QtY2hpbGQpe3BhZGRpbmctdG9wOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmhhcy1cXFtcXFx1MDAzZWtiZFxcXVxcOm1yLVxcWy0wXFwuMTVyZW1cXF06aGFzKFx1MDAzZWtiZCl7bWFyZ2luLXJpZ2h0Oi0uMTVyZW19Lmhhcy1cXFtcXFx1MDAzZWtiZFxcXVxcOm1sLVxcWy0wXFwuMTVyZW1cXF06aGFzKFx1MDAzZWtiZCl7bWFyZ2luLWxlZnQ6LS4xNXJlbX0uaGFzLVxcW1xcXHUwMDNlc3ZnXFxdXFw6cC0wOmhhcyhcdTAwM2Vzdmcpe3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uaGFzLVxcW1xcXHUwMDNldGV4dGFyZWFcXF1cXDpoLWF1dG86aGFzKFx1MDAzZXRleHRhcmVhKXtoZWlnaHQ6YXV0b30uYXJpYS1kaXNhYmxlZFxcOnBvaW50ZXItZXZlbnRzLW5vbmVbYXJpYS1kaXNhYmxlZD10cnVlXXtwb2ludGVyLWV2ZW50czpub25lfS5hcmlhLWRpc2FibGVkXFw6b3BhY2l0eS01MFthcmlhLWRpc2FibGVkPXRydWVde29wYWNpdHk6LjV9LmFyaWEtZXhwYW5kZWRcXDpiZy1tdXRlZFthcmlhLWV4cGFuZGVkPXRydWVde2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfS5hcmlhLWV4cGFuZGVkXFw6Ymctc2Vjb25kYXJ5W2FyaWEtZXhwYW5kZWQ9dHJ1ZV17YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zZWNvbmRhcnkpfS5hcmlhLWV4cGFuZGVkXFw6dGV4dC1mb3JlZ3JvdW5kW2FyaWEtZXhwYW5kZWQ9dHJ1ZV17Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9LmFyaWEtZXhwYW5kZWRcXDp0ZXh0LXNlY29uZGFyeS1mb3JlZ3JvdW5kW2FyaWEtZXhwYW5kZWQ9dHJ1ZV17Y29sb3I6dmFyKC0tc2Vjb25kYXJ5LWZvcmVncm91bmQpfS5hcmlhLWludmFsaWRcXDpib3JkZXItZGVzdHJ1Y3RpdmVbYXJpYS1pbnZhbGlkPXRydWVde2JvcmRlci1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9LmFyaWEtaW52YWxpZFxcOnJpbmctMFthcmlhLWludmFsaWQ9dHJ1ZV17LS10dy1yaW5nLXNoYWRvdzp2YXIoLS10dy1yaW5nLWluc2V0LCkwIDAgMCBjYWxjKDBweCArIHZhcigtLXR3LXJpbmctb2Zmc2V0LXdpZHRoKSl2YXIoLS10dy1yaW5nLWNvbG9yLGN1cnJlbnRjb2xvcik7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfS5hcmlhLWludmFsaWRcXDpyaW5nLTNbYXJpYS1pbnZhbGlkPXRydWVdey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uYXJpYS1pbnZhbGlkXFw6cmluZy1kZXN0cnVjdGl2ZVxcLzIwW2FyaWEtaW52YWxpZD10cnVlXXstLXR3LXJpbmctY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYXJpYS1pbnZhbGlkXFw6cmluZy1kZXN0cnVjdGl2ZVxcLzIwW2FyaWEtaW52YWxpZD10cnVlXXstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTIwJSx0cmFuc3BhcmVudCl9fS5kYXRhLWVuZGluZy1zdHlsZVxcOm9wYWNpdHktMFtkYXRhLWVuZGluZy1zdHlsZV17b3BhY2l0eTowfS5kYXRhLWluc2V0XFw6cGwtN1tkYXRhLWluc2V0XXtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo3KX0uZGF0YS1wb3B1cC1vcGVuXFw6YmctYWNjZW50W2RhdGEtcG9wdXAtb3Blbl17YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1hY2NlbnQpfS5kYXRhLXBvcHVwLW9wZW5cXDp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kW2RhdGEtcG9wdXAtb3Blbl17Y29sb3I6dmFyKC0tYWNjZW50LWZvcmVncm91bmQpfS5kYXRhLXN0YXJ0aW5nLXN0eWxlXFw6b3BhY2l0eS0wW2RhdGEtc3RhcnRpbmctc3R5bGVde29wYWNpdHk6MH0uZGF0YS1cXFtkaXNhYmxlZFxcPXRydWVcXF1cXDpwb2ludGVyLWV2ZW50cy1ub25lW2RhdGEtZGlzYWJsZWQ9dHJ1ZV17cG9pbnRlci1ldmVudHM6bm9uZX0uZGF0YS1cXFtkaXNhYmxlZFxcPXRydWVcXF1cXDpvcGFjaXR5LTUwW2RhdGEtZGlzYWJsZWQ9dHJ1ZV17b3BhY2l0eTouNX0uZGF0YS1cXFtzaWRlXFw9Ym90dG9tXFxdXFw6aW5zZXQteC0wW2RhdGEtc2lkZT1ib3R0b21de2luc2V0LWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5kYXRhLVxcW3NpZGVcXD1ib3R0b21cXF1cXDpib3R0b20tMFtkYXRhLXNpZGU9Ym90dG9tXXtib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZGF0YS1cXFtzaWRlXFw9Ym90dG9tXFxdXFw6aC1hdXRvW2RhdGEtc2lkZT1ib3R0b21de2hlaWdodDphdXRvfS5kYXRhLVxcW3NpZGVcXD1ib3R0b21cXF1cXDpib3JkZXItdFtkYXRhLXNpZGU9Ym90dG9tXXtib3JkZXItdG9wLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXRvcC13aWR0aDoxcHh9LmRhdGEtXFxbc2lkZVxcPWJvdHRvbVxcXVxcOnNsaWRlLWluLWZyb20tdG9wLTJbZGF0YS1zaWRlPWJvdHRvbV17LS10dy1lbnRlci10cmFuc2xhdGUteTpjYWxjKDIqdmFyKC0tc3BhY2luZykqLTEpfS5kYXRhLVxcW3NpZGVcXD1ib3R0b21cXF1cXDpkYXRhLWVuZGluZy1zdHlsZVxcOnRyYW5zbGF0ZS15LVxcWzJcXC41cmVtXFxdW2RhdGEtc2lkZT1ib3R0b21dW2RhdGEtZW5kaW5nLXN0eWxlXSwuZGF0YS1cXFtzaWRlXFw9Ym90dG9tXFxdXFw6ZGF0YS1zdGFydGluZy1zdHlsZVxcOnRyYW5zbGF0ZS15LVxcWzJcXC41cmVtXFxdW2RhdGEtc2lkZT1ib3R0b21dW2RhdGEtc3RhcnRpbmctc3R5bGVdey0tdHctdHJhbnNsYXRlLXk6Mi41cmVtO3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9LmRhdGEtXFxbc2lkZVxcPWlubGluZS1lbmRcXF1cXDpzbGlkZS1pbi1mcm9tLWxlZnQtMltkYXRhLXNpZGU9aW5saW5lLWVuZF17LS10dy1lbnRlci10cmFuc2xhdGUteDpjYWxjKDIqdmFyKC0tc3BhY2luZykqLTEpfS5kYXRhLVxcW3NpZGVcXD1pbmxpbmUtc3RhcnRcXF1cXDpzbGlkZS1pbi1mcm9tLXJpZ2h0LTJbZGF0YS1zaWRlPWlubGluZS1zdGFydF17LS10dy1lbnRlci10cmFuc2xhdGUteDpjYWxjKDIqdmFyKC0tc3BhY2luZykpfS5kYXRhLVxcW3NpZGVcXD1sZWZ0XFxdXFw6aW5zZXQteS0wW2RhdGEtc2lkZT1sZWZ0XXtpbnNldC1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5kYXRhLVxcW3NpZGVcXD1sZWZ0XFxdXFw6bGVmdC0wW2RhdGEtc2lkZT1sZWZ0XXtsZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMCl9LmRhdGEtXFxbc2lkZVxcPWxlZnRcXF1cXDpoLWZ1bGxbZGF0YS1zaWRlPWxlZnRde2hlaWdodDoxMDAlfS5kYXRhLVxcW3NpZGVcXD1sZWZ0XFxdXFw6dy0zXFwvNFtkYXRhLXNpZGU9bGVmdF17d2lkdGg6NzUlfS5kYXRhLVxcW3NpZGVcXD1sZWZ0XFxdXFw6Ym9yZGVyLXJbZGF0YS1zaWRlPWxlZnRde2JvcmRlci1yaWdodC1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1yaWdodC13aWR0aDoxcHh9LmRhdGEtXFxbc2lkZVxcPWxlZnRcXF1cXDpzbGlkZS1pbi1mcm9tLXJpZ2h0LTJbZGF0YS1zaWRlPWxlZnRdey0tdHctZW50ZXItdHJhbnNsYXRlLXg6Y2FsYygyKnZhcigtLXNwYWNpbmcpKX0uZGF0YS1cXFtzaWRlXFw9bGVmdFxcXVxcOmRhdGEtZW5kaW5nLXN0eWxlXFw6dHJhbnNsYXRlLXgtXFxbLTJcXC41cmVtXFxdW2RhdGEtc2lkZT1sZWZ0XVtkYXRhLWVuZGluZy1zdHlsZV0sLmRhdGEtXFxbc2lkZVxcPWxlZnRcXF1cXDpkYXRhLXN0YXJ0aW5nLXN0eWxlXFw6dHJhbnNsYXRlLXgtXFxbLTJcXC41cmVtXFxdW2RhdGEtc2lkZT1sZWZ0XVtkYXRhLXN0YXJ0aW5nLXN0eWxlXXstLXR3LXRyYW5zbGF0ZS14Oi0yLjVyZW07dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0uZGF0YS1cXFtzaWRlXFw9cmlnaHRcXF1cXDppbnNldC15LTBbZGF0YS1zaWRlPXJpZ2h0XXtpbnNldC1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5kYXRhLVxcW3NpZGVcXD1yaWdodFxcXVxcOnJpZ2h0LTBbZGF0YS1zaWRlPXJpZ2h0XXtyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5kYXRhLVxcW3NpZGVcXD1yaWdodFxcXVxcOmgtZnVsbFtkYXRhLXNpZGU9cmlnaHRde2hlaWdodDoxMDAlfS5kYXRhLVxcW3NpZGVcXD1yaWdodFxcXVxcOnctM1xcLzRbZGF0YS1zaWRlPXJpZ2h0XXt3aWR0aDo3NSV9LmRhdGEtXFxbc2lkZVxcPXJpZ2h0XFxdXFw6Ym9yZGVyLWxbZGF0YS1zaWRlPXJpZ2h0XXtib3JkZXItbGVmdC1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1sZWZ0LXdpZHRoOjFweH0uZGF0YS1cXFtzaWRlXFw9cmlnaHRcXF1cXDpzbGlkZS1pbi1mcm9tLWxlZnQtMltkYXRhLXNpZGU9cmlnaHRdey0tdHctZW50ZXItdHJhbnNsYXRlLXg6Y2FsYygyKnZhcigtLXNwYWNpbmcpKi0xKX0uZGF0YS1cXFtzaWRlXFw9cmlnaHRcXF1cXDpkYXRhLWVuZGluZy1zdHlsZVxcOnRyYW5zbGF0ZS14LVxcWzJcXC41cmVtXFxdW2RhdGEtc2lkZT1yaWdodF1bZGF0YS1lbmRpbmctc3R5bGVdLC5kYXRhLVxcW3NpZGVcXD1yaWdodFxcXVxcOmRhdGEtc3RhcnRpbmctc3R5bGVcXDp0cmFuc2xhdGUteC1cXFsyXFwuNXJlbVxcXVtkYXRhLXNpZGU9cmlnaHRdW2RhdGEtc3RhcnRpbmctc3R5bGVdey0tdHctdHJhbnNsYXRlLXg6Mi41cmVtO3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9LmRhdGEtXFxbc2lkZVxcPXRvcFxcXVxcOmluc2V0LXgtMFtkYXRhLXNpZGU9dG9wXXtpbnNldC1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZGF0YS1cXFtzaWRlXFw9dG9wXFxdXFw6dG9wLTBbZGF0YS1zaWRlPXRvcF17dG9wOmNhbGModmFyKC0tc3BhY2luZykqMCl9LmRhdGEtXFxbc2lkZVxcPXRvcFxcXVxcOmgtYXV0b1tkYXRhLXNpZGU9dG9wXXtoZWlnaHQ6YXV0b30uZGF0YS1cXFtzaWRlXFw9dG9wXFxdXFw6Ym9yZGVyLWJbZGF0YS1zaWRlPXRvcF17Ym9yZGVyLWJvdHRvbS1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1ib3R0b20td2lkdGg6MXB4fS5kYXRhLVxcW3NpZGVcXD10b3BcXF1cXDpzbGlkZS1pbi1mcm9tLWJvdHRvbS0yW2RhdGEtc2lkZT10b3Bdey0tdHctZW50ZXItdHJhbnNsYXRlLXk6Y2FsYygyKnZhcigtLXNwYWNpbmcpKX0uZGF0YS1cXFtzaWRlXFw9dG9wXFxdXFw6ZGF0YS1lbmRpbmctc3R5bGVcXDp0cmFuc2xhdGUteS1cXFstMlxcLjVyZW1cXF1bZGF0YS1zaWRlPXRvcF1bZGF0YS1lbmRpbmctc3R5bGVdLC5kYXRhLVxcW3NpZGVcXD10b3BcXF1cXDpkYXRhLXN0YXJ0aW5nLXN0eWxlXFw6dHJhbnNsYXRlLXktXFxbLTJcXC41cmVtXFxdW2RhdGEtc2lkZT10b3BdW2RhdGEtc3RhcnRpbmctc3R5bGVdey0tdHctdHJhbnNsYXRlLXk6LTIuNXJlbTt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS5kYXRhLVxcW3NpemVcXD1sZ1xcXVxcOnNpemUtMTBbZGF0YS1zaXplPWxnXXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9LmRhdGEtXFxbc2l6ZVxcPXNtXFxdXFw6c2l6ZS02W2RhdGEtc2l6ZT1zbV17d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0uZGF0YS1cXFtzaXplXFw9c21cXF1cXDpnYXAtM1tkYXRhLXNpemU9c21de2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5kYXRhLVxcW3NpemVcXD1zbVxcXVxcOnB5LTNbZGF0YS1zaXplPXNtXXtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMyl9LmRhdGEtXFxbc2l6ZVxcPXNtXFxdXFw6aGFzLWRhdGEtXFxbc2xvdFxcPWNhcmQtZm9vdGVyXFxdXFw6cGItMFtkYXRhLXNpemU9c21dOmhhcyhbZGF0YS1zbG90PWNhcmQtZm9vdGVyXSl7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX06aXMoLlxcKlxcOmRhdGEtXFxbc2xvdFxcPWF2YXRhclxcXVxcOnJpbmctMlx1MDAzZSopW2RhdGEtc2xvdD1hdmF0YXJdey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygycHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX06aXMoLlxcKlxcOmRhdGEtXFxbc2xvdFxcPWF2YXRhclxcXVxcOnJpbmctYmFja2dyb3VuZFx1MDAzZSopW2RhdGEtc2xvdD1hdmF0YXJdey0tdHctcmluZy1jb2xvcjp2YXIoLS1iYWNrZ3JvdW5kKX06aXMoLlxcKlxcOmRhdGEtXFxbc2xvdFxcPWlucHV0LWdyb3VwLWFkZG9uXFxdXFw6cGwtMlxcIVx1MDAzZSopW2RhdGEtc2xvdD1pbnB1dC1ncm91cC1hZGRvbl17cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMikhaW1wb3J0YW50fS5kYXRhLVxcW3N0YXRlXFw9c2VsZWN0ZWRcXF1cXDpiZy1tdXRlZFtkYXRhLXN0YXRlPXNlbGVjdGVkXXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX0uZGF0YS1cXFt2YXJpYW50XFw9ZGVzdHJ1Y3RpdmVcXF1cXDp0ZXh0LWRlc3RydWN0aXZlW2RhdGEtdmFyaWFudD1kZXN0cnVjdGl2ZV17Y29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfS5kYXRhLVxcW3ZhcmlhbnRcXD1kZXN0cnVjdGl2ZVxcXVxcOmZvY3VzXFw6YmctZGVzdHJ1Y3RpdmVcXC8xMFtkYXRhLXZhcmlhbnQ9ZGVzdHJ1Y3RpdmVdOmZvY3Vze2JhY2tncm91bmQtY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGF0YS1cXFt2YXJpYW50XFw9ZGVzdHJ1Y3RpdmVcXF1cXDpmb2N1c1xcOmJnLWRlc3RydWN0aXZlXFwvMTBbZGF0YS12YXJpYW50PWRlc3RydWN0aXZlXTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSkxMCUsdHJhbnNwYXJlbnQpfX0uZGF0YS1cXFt2YXJpYW50XFw9ZGVzdHJ1Y3RpdmVcXF1cXDpmb2N1c1xcOnRleHQtZGVzdHJ1Y3RpdmVbZGF0YS12YXJpYW50PWRlc3RydWN0aXZlXTpmb2N1c3tjb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9LmRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXDpyb3VuZGVkLW5vbmVbZGF0YS12YXJpYW50PWxpbmVde2JvcmRlci1yYWRpdXM6MH1Ac3VwcG9ydHMgKCgtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS10dykpIG9yIChiYWNrZHJvcC1maWx0ZXI6dmFyKC0tdHcpKSl7LnN1cHBvcnRzLWJhY2tkcm9wLWZpbHRlclxcOmJhY2tkcm9wLWJsdXIteHN7LS10dy1iYWNrZHJvcC1ibHVyOmJsdXIodmFyKC0tYmx1ci14cykpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXR3LWJhY2tkcm9wLWJsdXIsKXZhcigtLXR3LWJhY2tkcm9wLWJyaWdodG5lc3MsKXZhcigtLXR3LWJhY2tkcm9wLWNvbnRyYXN0LCl2YXIoLS10dy1iYWNrZHJvcC1ncmF5c2NhbGUsKXZhcigtLXR3LWJhY2tkcm9wLWh1ZS1yb3RhdGUsKXZhcigtLXR3LWJhY2tkcm9wLWludmVydCwpdmFyKC0tdHctYmFja2Ryb3Atb3BhY2l0eSwpdmFyKC0tdHctYmFja2Ryb3Atc2F0dXJhdGUsKXZhcigtLXR3LWJhY2tkcm9wLXNlcGlhLCk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXR3LWJhY2tkcm9wLWJsdXIsKXZhcigtLXR3LWJhY2tkcm9wLWJyaWdodG5lc3MsKXZhcigtLXR3LWJhY2tkcm9wLWNvbnRyYXN0LCl2YXIoLS10dy1iYWNrZHJvcC1ncmF5c2NhbGUsKXZhcigtLXR3LWJhY2tkcm9wLWh1ZS1yb3RhdGUsKXZhcigtLXR3LWJhY2tkcm9wLWludmVydCwpdmFyKC0tdHctYmFja2Ryb3Atb3BhY2l0eSwpdmFyKC0tdHctYmFja2Ryb3Atc2F0dXJhdGUsKXZhcigtLXR3LWJhY2tkcm9wLXNlcGlhLCl9fUBtZWRpYSAobWluLXdpZHRoOjQwcmVtKXsuc21cXDpibG9ja3tkaXNwbGF5OmJsb2NrfS5zbVxcOmhpZGRlbntkaXNwbGF5Om5vbmV9LnNtXFw6aW5saW5le2Rpc3BsYXk6aW5saW5lfS5zbVxcOmlubGluZS1mbGV4e2Rpc3BsYXk6aW5saW5lLWZsZXh9LnNtXFw6aC0yNHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyNCl9LnNtXFw6dy00MHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQwKX0uc21cXDp3LWF1dG97d2lkdGg6YXV0b30uc21cXDptYXgtdy1zbXttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLXNtKX0uc21cXDpmbGV4LW5vbmV7ZmxleDpub25lfS5zbVxcOmdyaWQtY29scy0ye2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKX0uc21cXDpncmlkLWNvbHMtM3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDMsbWlubWF4KDAsMWZyKSl9LnNtXFw6ZmxleC1yb3d7ZmxleC1kaXJlY3Rpb246cm93fS5zbVxcOml0ZW1zLWNlbnRlcnthbGlnbi1pdGVtczpjZW50ZXJ9LnNtXFw6anVzdGlmeS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5zbVxcOmp1c3RpZnktZW5ke2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0uc21cXDpwLTV7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjUpfS5zbVxcOnAtNntwYWRkaW5nOmNhbGModmFyKC0tc3BhY2luZykqNil9LnNtXFw6cC04e3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0uc21cXDp0ZXh0LXJpZ2h0e3RleHQtYWxpZ246cmlnaHR9LnNtXFw6dGV4dC0zeGx7Zm9udC1zaXplOnZhcigtLXRleHQtM3hsKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtM3hsLS1saW5lLWhlaWdodCkpfS5zbVxcOnRleHQtYmFzZXtmb250LXNpemU6dmFyKC0tdGV4dC1iYXNlKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtYmFzZS0tbGluZS1oZWlnaHQpKX0uc21cXDp0ZXh0LXhse2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LXhsKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQteGwtLWxpbmUtaGVpZ2h0KSl9LmRhdGEtXFxbc2lkZVxcPWxlZnRcXF1cXDpzbVxcOm1heC13LXNtW2RhdGEtc2lkZT1sZWZ0XSwuZGF0YS1cXFtzaWRlXFw9cmlnaHRcXF1cXDpzbVxcOm1heC13LXNtW2RhdGEtc2lkZT1yaWdodF17bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci1zbSl9fUBtZWRpYSAobWluLXdpZHRoOjQ4cmVtKXsubWRcXDppbnNldC14LWF1dG97aW5zZXQtaW5saW5lOmF1dG99Lm1kXFw6cmlnaHQtNHtyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5tZFxcOmJvdHRvbS00e2JvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5tZFxcOmxlZnQtYXV0b3tsZWZ0OmF1dG99Lm1kXFw6YmxvY2t7ZGlzcGxheTpibG9ja30ubWRcXDpmbGV4e2Rpc3BsYXk6ZmxleH0ubWRcXDpoaWRkZW57ZGlzcGxheTpub25lfS5tZFxcOnRhYmxlLWNlbGx7ZGlzcGxheTp0YWJsZS1jZWxsfS5tZFxcOm1pbi13LTB7bWluLXdpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lm1kXFw6Z3JpZC1jb2xzLTF7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgxLG1pbm1heCgwLDFmcikpfS5tZFxcOmdyaWQtY29scy0ye2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKX0ubWRcXDpncmlkLWNvbHMtM3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDMsbWlubWF4KDAsMWZyKSl9Lm1kXFw6Z3JpZC1jb2xzLTR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg0LG1pbm1heCgwLDFmcikpfS5tZFxcOmZsZXgtY29se2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ubWRcXDppdGVtcy1jZW50ZXJ7YWxpZ24taXRlbXM6Y2VudGVyfS5tZFxcOmdhcC0xe2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tZFxcOnBiLTB7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0ubWRcXDp0ZXh0LXNte2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LXNtKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtc20tLWxpbmUtaGVpZ2h0KSl9Lm1kXFw6d2hpdGVzcGFjZS1ub3dyYXB7d2hpdGUtc3BhY2U6bm93cmFwfX1AbWVkaWEgKG1pbi13aWR0aDo2NHJlbSl7LmxnXFw6c3RpY2t5e3Bvc2l0aW9uOnN0aWNreX0ubGdcXDp0b3AtNHt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0ubGdcXDpibG9ja3tkaXNwbGF5OmJsb2NrfS5sZ1xcOmhpZGRlbntkaXNwbGF5Om5vbmV9LmxnXFw6dGFibGUtY2VsbHtkaXNwbGF5OnRhYmxlLWNlbGx9LmxnXFw6dy03Mnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjcyKX0ubGdcXDpncmlkLWNvbHMtMntncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDIsbWlubWF4KDAsMWZyKSl9LmxnXFw6Z3JpZC1jb2xzLTN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgzLG1pbm1heCgwLDFmcikpfS5sZ1xcOmdyaWQtY29scy00e2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNCxtaW5tYXgoMCwxZnIpKX0ubGdcXDpncmlkLWNvbHMtNXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDUsbWlubWF4KDAsMWZyKSl9LmxnXFw6Z3JpZC1jb2xzLVxcWzFmcl8zNDBweFxcXXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIDM0MHB4fS5sZ1xcOmZsZXgtcm93e2ZsZXgtZGlyZWN0aW9uOnJvd30ubGdcXDpzZWxmLXN0YXJ0e2FsaWduLXNlbGY6ZmxleC1zdGFydH19QG1lZGlhIChtaW4td2lkdGg6ODByZW0pey54bFxcOnctODB7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4MCl9fS5kYXJrXFw6YmxvY2s6aXMoLmRhcmsgKil7ZGlzcGxheTpibG9ja30uZGFya1xcOmhpZGRlbjppcyguZGFyayAqKXtkaXNwbGF5Om5vbmV9LmRhcmtcXDpib3JkZXItaW5wdXQ6aXMoLmRhcmsgKil7Ym9yZGVyLWNvbG9yOnZhcigtLWlucHV0KX0uZGFya1xcOmJnLWRlc3RydWN0aXZlXFwvMjA6aXMoLmRhcmsgKil7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6YmctZGVzdHJ1Y3RpdmVcXC8yMDppcyguZGFyayAqKXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSkyMCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmJnLWlucHV0XFwvMzA6aXMoLmRhcmsgKil7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1pbnB1dCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6YmctaW5wdXRcXC8zMDppcyguZGFyayAqKXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCkzMCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmJnLXRyYW5zcGFyZW50OmlzKC5kYXJrICope2JhY2tncm91bmQtY29sb3I6IzAwMDB9LmRhcmtcXDp0ZXh0LWdyZWVuLTQwMDppcyguZGFyayAqKXtjb2xvcjp2YXIoLS1jb2xvci1ncmVlbi00MDApfS5kYXJrXFw6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kOmlzKC5kYXJrICope2NvbG9yOnZhcigtLW11dGVkLWZvcmVncm91bmQpfS5kYXJrXFw6cHJvc2UtaW52ZXJ0OmlzKC5kYXJrICopey0tdHctcHJvc2UtYm9keTp2YXIoLS10dy1wcm9zZS1pbnZlcnQtYm9keSk7LS10dy1wcm9zZS1oZWFkaW5nczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtaGVhZGluZ3MpOy0tdHctcHJvc2UtbGVhZDp2YXIoLS10dy1wcm9zZS1pbnZlcnQtbGVhZCk7LS10dy1wcm9zZS1saW5rczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtbGlua3MpOy0tdHctcHJvc2UtYm9sZDp2YXIoLS10dy1wcm9zZS1pbnZlcnQtYm9sZCk7LS10dy1wcm9zZS1jb3VudGVyczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtY291bnRlcnMpOy0tdHctcHJvc2UtYnVsbGV0czp2YXIoLS10dy1wcm9zZS1pbnZlcnQtYnVsbGV0cyk7LS10dy1wcm9zZS1ocjp2YXIoLS10dy1wcm9zZS1pbnZlcnQtaHIpOy0tdHctcHJvc2UtcXVvdGVzOnZhcigtLXR3LXByb3NlLWludmVydC1xdW90ZXMpOy0tdHctcHJvc2UtcXVvdGUtYm9yZGVyczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtcXVvdGUtYm9yZGVycyk7LS10dy1wcm9zZS1jYXB0aW9uczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtY2FwdGlvbnMpOy0tdHctcHJvc2Uta2JkOnZhcigtLXR3LXByb3NlLWludmVydC1rYmQpOy0tdHctcHJvc2Uta2JkLXNoYWRvd3M6dmFyKC0tdHctcHJvc2UtaW52ZXJ0LWtiZC1zaGFkb3dzKTstLXR3LXByb3NlLWNvZGU6dmFyKC0tdHctcHJvc2UtaW52ZXJ0LWNvZGUpOy0tdHctcHJvc2UtcHJlLWNvZGU6dmFyKC0tdHctcHJvc2UtaW52ZXJ0LXByZS1jb2RlKTstLXR3LXByb3NlLXByZS1iZzp2YXIoLS10dy1wcm9zZS1pbnZlcnQtcHJlLWJnKTstLXR3LXByb3NlLXRoLWJvcmRlcnM6dmFyKC0tdHctcHJvc2UtaW52ZXJ0LXRoLWJvcmRlcnMpOy0tdHctcHJvc2UtdGQtYm9yZGVyczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtdGQtYm9yZGVycyl9LmRhcmtcXDphZnRlclxcOm1peC1ibGVuZC1saWdodGVuOmlzKC5kYXJrICopOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7bWl4LWJsZW5kLW1vZGU6bGlnaHRlbn1AbWVkaWEgKGhvdmVyOmhvdmVyKXsuZGFya1xcOmhvdmVyXFw6YmctZGVzdHJ1Y3RpdmVcXC8zMDppcyguZGFyayAqKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcXDpob3ZlclxcOmJnLWRlc3RydWN0aXZlXFwvMzA6aXMoLmRhcmsgKik6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMzAlLHRyYW5zcGFyZW50KX19LmRhcmtcXDpob3ZlclxcOmJnLWlucHV0XFwvNTA6aXMoLmRhcmsgKik6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1pbnB1dCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6aG92ZXJcXDpiZy1pbnB1dFxcLzUwOmlzKC5kYXJrICopOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWlucHV0KTUwJSx0cmFuc3BhcmVudCl9fS5kYXJrXFw6aG92ZXJcXDpiZy1tdXRlZFxcLzUwOmlzKC5kYXJrICopOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1xcOmhvdmVyXFw6YmctbXV0ZWRcXC81MDppcyguZGFyayAqKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZCk1MCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmhvdmVyXFw6dGV4dC1mb3JlZ3JvdW5kOmlzKC5kYXJrICopOmhvdmVye2NvbG9yOnZhcigtLWZvcmVncm91bmQpfX0uZGFya1xcOmZvY3VzLXZpc2libGVcXDpyaW5nLWRlc3RydWN0aXZlXFwvNDA6aXMoLmRhcmsgKik6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1xcOmZvY3VzLXZpc2libGVcXDpyaW5nLWRlc3RydWN0aXZlXFwvNDA6aXMoLmRhcmsgKik6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTQwJSx0cmFuc3BhcmVudCl9fS5kYXJrXFw6ZGlzYWJsZWRcXDpiZy1pbnB1dFxcLzgwOmlzKC5kYXJrICopOmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6dmFyKC0taW5wdXQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1xcOmRpc2FibGVkXFw6YmctaW5wdXRcXC84MDppcyguZGFyayAqKTpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCk4MCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmRpc2FibGVkXFw6YmctdHJhbnNwYXJlbnQ6aXMoLmRhcmsgKik6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjojMDAwMH0uZGFya1xcOmhhcy1kaXNhYmxlZFxcOmJnLWlucHV0XFwvODA6aXMoLmRhcmsgKik6aGFzKDpkaXNhYmxlZCl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1pbnB1dCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6aGFzLWRpc2FibGVkXFw6YmctaW5wdXRcXC84MDppcyguZGFyayAqKTpoYXMoOmRpc2FibGVkKXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCk4MCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmhhcy1cXFtcXFtkYXRhLXNsb3RcXF1cXFthcmlhLWludmFsaWRcXD10cnVlXFxdXFxdXFw6cmluZy1kZXN0cnVjdGl2ZVxcLzQwOmlzKC5kYXJrICopOmhhcyhbZGF0YS1zbG90XVthcmlhLWludmFsaWQ9dHJ1ZV0pey0tdHctcmluZy1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6aGFzLVxcW1xcW2RhdGEtc2xvdFxcXVxcW2FyaWEtaW52YWxpZFxcPXRydWVcXF1cXF1cXDpyaW5nLWRlc3RydWN0aXZlXFwvNDA6aXMoLmRhcmsgKik6aGFzKFtkYXRhLXNsb3RdW2FyaWEtaW52YWxpZD10cnVlXSl7LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSk0MCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmFyaWEtaW52YWxpZFxcOmJvcmRlci1kZXN0cnVjdGl2ZVxcLzUwOmlzKC5kYXJrICopW2FyaWEtaW52YWxpZD10cnVlXXtib3JkZXItY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1xcOmFyaWEtaW52YWxpZFxcOmJvcmRlci1kZXN0cnVjdGl2ZVxcLzUwOmlzKC5kYXJrICopW2FyaWEtaW52YWxpZD10cnVlXXtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTUwJSx0cmFuc3BhcmVudCl9fS5kYXJrXFw6YXJpYS1pbnZhbGlkXFw6cmluZy1kZXN0cnVjdGl2ZVxcLzQwOmlzKC5kYXJrICopW2FyaWEtaW52YWxpZD10cnVlXXstLXR3LXJpbmctY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1xcOmFyaWEtaW52YWxpZFxcOnJpbmctZGVzdHJ1Y3RpdmVcXC80MDppcyguZGFyayAqKVthcmlhLWludmFsaWQ9dHJ1ZV17LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSk0MCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmRhdGEtXFxbdmFyaWFudFxcPWRlc3RydWN0aXZlXFxdXFw6Zm9jdXNcXDpiZy1kZXN0cnVjdGl2ZVxcLzIwOmlzKC5kYXJrICopW2RhdGEtdmFyaWFudD1kZXN0cnVjdGl2ZV06Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6ZGF0YS1cXFt2YXJpYW50XFw9ZGVzdHJ1Y3RpdmVcXF1cXDpmb2N1c1xcOmJnLWRlc3RydWN0aXZlXFwvMjA6aXMoLmRhcmsgKilbZGF0YS12YXJpYW50PWRlc3RydWN0aXZlXTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSkyMCUsdHJhbnNwYXJlbnQpfX0uZGF0YS1vcGVuXFw6YW5pbWF0ZS1pbjp3aGVyZShbZGF0YS1zdGF0ZT1vcGVuXSksLmRhdGEtb3BlblxcOmFuaW1hdGUtaW46d2hlcmUoW2RhdGEtb3Blbl06bm90KFtkYXRhLW9wZW49ZmFsc2VdKSl7YW5pbWF0aW9uOmVudGVyIHZhcigtLXR3LWFuaW1hdGlvbi1kdXJhdGlvbix2YXIoLS10dy1kdXJhdGlvbiwuMTVzKSl2YXIoLS10dy1lYXNlLGVhc2UpdmFyKC0tdHctYW5pbWF0aW9uLWRlbGF5LDBzKXZhcigtLXR3LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsMSl2YXIoLS10dy1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCl2YXIoLS10dy1hbmltYXRpb24tZmlsbC1tb2RlLG5vbmUpfS5kYXRhLW9wZW5cXDpiZy1hY2NlbnQ6d2hlcmUoW2RhdGEtc3RhdGU9b3Blbl0pLC5kYXRhLW9wZW5cXDpiZy1hY2NlbnQ6d2hlcmUoW2RhdGEtb3Blbl06bm90KFtkYXRhLW9wZW49ZmFsc2VdKSl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1hY2NlbnQpfS5kYXRhLW9wZW5cXDp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kOndoZXJlKFtkYXRhLXN0YXRlPW9wZW5dKSwuZGF0YS1vcGVuXFw6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZDp3aGVyZShbZGF0YS1vcGVuXTpub3QoW2RhdGEtb3Blbj1mYWxzZV0pKXtjb2xvcjp2YXIoLS1hY2NlbnQtZm9yZWdyb3VuZCl9LmRhdGEtb3BlblxcOmZhZGUtaW4tMDp3aGVyZShbZGF0YS1zdGF0ZT1vcGVuXSksLmRhdGEtb3BlblxcOmZhZGUtaW4tMDp3aGVyZShbZGF0YS1vcGVuXTpub3QoW2RhdGEtb3Blbj1mYWxzZV0pKXstLXR3LWVudGVyLW9wYWNpdHk6MH0uZGF0YS1vcGVuXFw6em9vbS1pbi05NTp3aGVyZShbZGF0YS1zdGF0ZT1vcGVuXSksLmRhdGEtb3BlblxcOnpvb20taW4tOTU6d2hlcmUoW2RhdGEtb3Blbl06bm90KFtkYXRhLW9wZW49ZmFsc2VdKSl7LS10dy1lbnRlci1zY2FsZTouOTV9LmRhdGEtY2xvc2VkXFw6YW5pbWF0ZS1vdXQ6d2hlcmUoW2RhdGEtc3RhdGU9Y2xvc2VkXSksLmRhdGEtY2xvc2VkXFw6YW5pbWF0ZS1vdXQ6d2hlcmUoW2RhdGEtY2xvc2VkXTpub3QoW2RhdGEtY2xvc2VkPWZhbHNlXSkpe2FuaW1hdGlvbjpleGl0IHZhcigtLXR3LWFuaW1hdGlvbi1kdXJhdGlvbix2YXIoLS10dy1kdXJhdGlvbiwuMTVzKSl2YXIoLS10dy1lYXNlLGVhc2UpdmFyKC0tdHctYW5pbWF0aW9uLWRlbGF5LDBzKXZhcigtLXR3LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsMSl2YXIoLS10dy1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCl2YXIoLS10dy1hbmltYXRpb24tZmlsbC1tb2RlLG5vbmUpfS5kYXRhLWNsb3NlZFxcOm92ZXJmbG93LWhpZGRlbjp3aGVyZShbZGF0YS1zdGF0ZT1jbG9zZWRdKSwuZGF0YS1jbG9zZWRcXDpvdmVyZmxvdy1oaWRkZW46d2hlcmUoW2RhdGEtY2xvc2VkXTpub3QoW2RhdGEtY2xvc2VkPWZhbHNlXSkpe292ZXJmbG93OmhpZGRlbn0uZGF0YS1jbG9zZWRcXDpmYWRlLW91dC0wOndoZXJlKFtkYXRhLXN0YXRlPWNsb3NlZF0pLC5kYXRhLWNsb3NlZFxcOmZhZGUtb3V0LTA6d2hlcmUoW2RhdGEtY2xvc2VkXTpub3QoW2RhdGEtY2xvc2VkPWZhbHNlXSkpey0tdHctZXhpdC1vcGFjaXR5OjB9LmRhdGEtY2xvc2VkXFw6em9vbS1vdXQtOTU6d2hlcmUoW2RhdGEtc3RhdGU9Y2xvc2VkXSksLmRhdGEtY2xvc2VkXFw6em9vbS1vdXQtOTU6d2hlcmUoW2RhdGEtY2xvc2VkXTpub3QoW2RhdGEtY2xvc2VkPWZhbHNlXSkpey0tdHctZXhpdC1zY2FsZTouOTV9LmRhdGEtc2VsZWN0ZWRcXDpiZy1tdXRlZDp3aGVyZShbZGF0YS1zZWxlY3RlZD10cnVlXSl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZCl9LmRhdGEtc2VsZWN0ZWRcXDp0ZXh0LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtc2VsZWN0ZWQ9dHJ1ZV0pe2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5kYXRhLWRpc2FibGVkXFw6cG9pbnRlci1ldmVudHMtbm9uZTp3aGVyZShbZGF0YS1kaXNhYmxlZD10cnVlXSksLmRhdGEtZGlzYWJsZWRcXDpwb2ludGVyLWV2ZW50cy1ub25lOndoZXJlKFtkYXRhLWRpc2FibGVkXTpub3QoW2RhdGEtZGlzYWJsZWQ9ZmFsc2VdKSl7cG9pbnRlci1ldmVudHM6bm9uZX0uZGF0YS1kaXNhYmxlZFxcOm9wYWNpdHktNTA6d2hlcmUoW2RhdGEtZGlzYWJsZWQ9dHJ1ZV0pLC5kYXRhLWRpc2FibGVkXFw6b3BhY2l0eS01MDp3aGVyZShbZGF0YS1kaXNhYmxlZF06bm90KFtkYXRhLWRpc2FibGVkPWZhbHNlXSkpe29wYWNpdHk6LjV9LmRhdGEtYWN0aXZlXFw6YmctYmFja2dyb3VuZDp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGF0YS1hY3RpdmVcXDpiZy1iYWNrZ3JvdW5kOndoZXJlKFtkYXRhLWFjdGl2ZV06bm90KFtkYXRhLWFjdGl2ZT1mYWxzZV0pKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWJhY2tncm91bmQpfS5kYXRhLWFjdGl2ZVxcOnRleHQtZm9yZWdyb3VuZDp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGF0YS1hY3RpdmVcXDp0ZXh0LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5ncm91cC1kYXRhLVxcW3ZhcmlhbnRcXD1kZWZhdWx0XFxdXFwvdGFicy1saXN0XFw6ZGF0YS1hY3RpdmVcXDpzaGFkb3ctc206aXMoOndoZXJlKC5ncm91cFxcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWRlZmF1bHRdICopOndoZXJlKFtkYXRhLXN0YXRlPWFjdGl2ZV0pLC5ncm91cC1kYXRhLVxcW3ZhcmlhbnRcXD1kZWZhdWx0XFxdXFwvdGFicy1saXN0XFw6ZGF0YS1hY3RpdmVcXDpzaGFkb3ctc206aXMoOndoZXJlKC5ncm91cFxcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWRlZmF1bHRdICopOndoZXJlKFtkYXRhLWFjdGl2ZV06bm90KFtkYXRhLWFjdGl2ZT1mYWxzZV0pKXstLXR3LXNoYWRvdzowIDFweCAzcHggMCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSwwIDFweCAycHggLTFweCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9Lmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpkYXRhLWFjdGl2ZVxcOmJnLXRyYW5zcGFyZW50OmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZ3JvdXAtZGF0YS1cXFt2YXJpYW50XFw9bGluZVxcXVxcL3RhYnMtbGlzdFxcOmRhdGEtYWN0aXZlXFw6YmctdHJhbnNwYXJlbnQ6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWxpbmVdICopOndoZXJlKFtkYXRhLWFjdGl2ZV06bm90KFtkYXRhLWFjdGl2ZT1mYWxzZV0pKXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5ncm91cC1kYXRhLVxcW3ZhcmlhbnRcXD1saW5lXFxdXFwvdGFicy1saXN0XFw6ZGF0YS1hY3RpdmVcXDpzaGFkb3ctbm9uZTppcyg6d2hlcmUoLmdyb3VwXFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9bGluZV0gKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpkYXRhLWFjdGl2ZVxcOnNoYWRvdy1ub25lOmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7LS10dy1zaGFkb3c6MCAwICMwMDAwO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX06aXMoLmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpkYXRhLWFjdGl2ZVxcOmFmdGVyXFw6b3BhY2l0eS0xMDA6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWxpbmVdICopOndoZXJlKFtkYXRhLXN0YXRlPWFjdGl2ZV0pLC5ncm91cC1kYXRhLVxcW3ZhcmlhbnRcXD1saW5lXFxdXFwvdGFicy1saXN0XFw6ZGF0YS1hY3RpdmVcXDphZnRlclxcOm9wYWNpdHktMTAwOmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSkpOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7b3BhY2l0eToxfS5kYXJrXFw6ZGF0YS1hY3RpdmVcXDpib3JkZXItaW5wdXQ6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmRhcmtcXDpkYXRhLWFjdGl2ZVxcOmJvcmRlci1pbnB1dDppcyguZGFyayAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7Ym9yZGVyLWNvbG9yOnZhcigtLWlucHV0KX0uZGFya1xcOmRhdGEtYWN0aXZlXFw6YmctaW5wdXRcXC8zMDppcyguZGFyayAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGFya1xcOmRhdGEtYWN0aXZlXFw6YmctaW5wdXRcXC8zMDppcyguZGFyayAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1pbnB1dCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6ZGF0YS1hY3RpdmVcXDpiZy1pbnB1dFxcLzMwOmlzKC5kYXJrICopOndoZXJlKFtkYXRhLXN0YXRlPWFjdGl2ZV0pLC5kYXJrXFw6ZGF0YS1hY3RpdmVcXDpiZy1pbnB1dFxcLzMwOmlzKC5kYXJrICopOndoZXJlKFtkYXRhLWFjdGl2ZV06bm90KFtkYXRhLWFjdGl2ZT1mYWxzZV0pKXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCkzMCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmRhdGEtYWN0aXZlXFw6dGV4dC1mb3JlZ3JvdW5kOmlzKC5kYXJrICopOndoZXJlKFtkYXRhLXN0YXRlPWFjdGl2ZV0pLC5kYXJrXFw6ZGF0YS1hY3RpdmVcXDp0ZXh0LWZvcmVncm91bmQ6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5kYXJrXFw6Z3JvdXAtZGF0YS1cXFt2YXJpYW50XFw9bGluZVxcXVxcL3RhYnMtbGlzdFxcOmRhdGEtYWN0aXZlXFw6Ym9yZGVyLXRyYW5zcGFyZW50OmlzKC5kYXJrICopOmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGFya1xcOmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpkYXRhLWFjdGl2ZVxcOmJvcmRlci10cmFuc3BhcmVudDppcyguZGFyayAqKTppcyg6d2hlcmUoLmdyb3VwXFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9bGluZV0gKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2JvcmRlci1jb2xvcjojMDAwMH0uZGFya1xcOmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpkYXRhLWFjdGl2ZVxcOmJnLXRyYW5zcGFyZW50OmlzKC5kYXJrICopOmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGFya1xcOmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpkYXRhLWFjdGl2ZVxcOmJnLXRyYW5zcGFyZW50OmlzKC5kYXJrICopOmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7YmFja2dyb3VuZC1jb2xvcjojMDAwMH0uZGF0YS1ob3Jpem9udGFsXFw6aC1weDp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj1ob3Jpem9udGFsXSl7aGVpZ2h0OjFweH0uZGF0YS1ob3Jpem9udGFsXFw6dy1mdWxsOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPWhvcml6b250YWxdKXt3aWR0aDoxMDAlfS5kYXRhLWhvcml6b250YWxcXDpmbGV4LWNvbDp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj1ob3Jpem9udGFsXSl7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5kYXRhLXZlcnRpY2FsXFw6dy1weDp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pe3dpZHRoOjFweH0uZGF0YS12ZXJ0aWNhbFxcOnNlbGYtc3RyZXRjaDp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pe2FsaWduLXNlbGY6c3RyZXRjaH0uXFxbXFxcdTAwMjZfYVxcXVxcOnRleHQtcHJpbWFyeSBhe2NvbG9yOnZhcigtLXByaW1hcnkpfS5cXFtcXFx1MDAyNl9oM1xcXVxcOm10LTYgaDN7bWFyZ2luLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5cXFtcXFx1MDAyNl9oM1xcXVxcOm1iLTIgaDN7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5cXFtcXFx1MDAyNl9oM1xcXVxcOnRleHQtZm9yZWdyb3VuZCBoM3tjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX0uXFxbXFxcdTAwMjZfc3ZnXFxdXFw6cG9pbnRlci1ldmVudHMtbm9uZSBzdmd7cG9pbnRlci1ldmVudHM6bm9uZX0uXFxbXFxcdTAwMjZfc3ZnXFxdXFw6c2hyaW5rLTAgc3Zne2ZsZXgtc2hyaW5rOjB9LlxcW1xcXHUwMDI2X3N2Z1xcOm5vdFxcKFxcW2NsYXNzXFwqXFw9XFwnc2l6ZS1cXCdcXF1cXClcXF1cXDpzaXplLTMgc3ZnOm5vdChbY2xhc3MqPXNpemUtXSl7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uXFxbXFxcdTAwMjZfc3ZnXFw6bm90XFwoXFxbY2xhc3NcXCpcXD1cXCdzaXplLVxcJ1xcXVxcKVxcXVxcOnNpemUtM1xcLjUgc3ZnOm5vdChbY2xhc3MqPXNpemUtXSl7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMuNSl9LlxcW1xcXHUwMDI2X3N2Z1xcOm5vdFxcKFxcW2NsYXNzXFwqXFw9XFwnc2l6ZS1cXCdcXF1cXClcXF1cXDpzaXplLTQgc3ZnOm5vdChbY2xhc3MqPXNpemUtXSl7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0uXFxbXFxcdTAwMjZfdHJcXF1cXDpib3JkZXItYiB0cntib3JkZXItYm90dG9tLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLWJvdHRvbS13aWR0aDoxcHh9LlxcW1xcXHUwMDI2X3RyXFw6bGFzdC1jaGlsZFxcXVxcOmJvcmRlci0wIHRyOmxhc3QtY2hpbGR7Ym9yZGVyLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXdpZHRoOjB9LlxcW1xcXHUwMDI2XFw6XFw6LXdlYmtpdC1kZXRhaWxzLW1hcmtlclxcXVxcOmhpZGRlbjo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlcntkaXNwbGF5Om5vbmV9LlxcW1xcXHUwMDI2XFw6XFw6LXdlYmtpdC1zY3JvbGxiYXJcXF1cXDpoaWRkZW46Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0uXFxbXFxcdTAwMjZcXDpoYXNcXChcXFtyb2xlXFw9Y2hlY2tib3hcXF1cXClcXF1cXDpwci0wOmhhcyhbcm9sZT1jaGVja2JveF0pe3BhZGRpbmctcmlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uXFxbXFwuYm9yZGVyLWJcXF1cXDpwYi0yLmJvcmRlci1ie3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMil9LlxcW1xcLmJvcmRlci1iXFxdXFw6cGItNC5ib3JkZXItYntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5ncm91cC1kYXRhLVxcW3NpemVcXD1zbVxcXVxcL2NhcmRcXDpcXFtcXC5ib3JkZXItYlxcXVxcOnBiLTM6aXMoOndoZXJlKC5ncm91cFxcL2NhcmQpW2RhdGEtc2l6ZT1zbV0gKikuYm9yZGVyLWJ7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uXFxbXFwuYm9yZGVyLXRcXF1cXDpwdC0yLmJvcmRlci10e3BhZGRpbmctdG9wOmNhbGModmFyKC0tc3BhY2luZykqMil9OmlzKC5cXCpcXCpcXDpcXFtcXFtjbWRrLWdyb3VwLWhlYWRpbmdcXF1cXF1cXDpweC0yICopW2NtZGstZ3JvdXAtaGVhZGluZ117cGFkZGluZy1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX06aXMoLlxcKlxcKlxcOlxcW1xcW2NtZGstZ3JvdXAtaGVhZGluZ1xcXVxcXVxcOnB5LTFcXC41ICopW2NtZGstZ3JvdXAtaGVhZGluZ117cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9OmlzKC5cXCpcXCpcXDpcXFtcXFtjbWRrLWdyb3VwLWhlYWRpbmdcXF1cXF1cXDp0ZXh0LXhzICopW2NtZGstZ3JvdXAtaGVhZGluZ117Zm9udC1zaXplOnZhcigtLXRleHQteHMpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC14cy0tbGluZS1oZWlnaHQpKX06aXMoLlxcKlxcKlxcOlxcW1xcW2NtZGstZ3JvdXAtaGVhZGluZ1xcXVxcXVxcOmZvbnQtbWVkaXVtICopW2NtZGstZ3JvdXAtaGVhZGluZ117LS10dy1mb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO2ZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSl9OmlzKC5cXCpcXCpcXDpcXFtcXFtjbWRrLWdyb3VwLWhlYWRpbmdcXF1cXF1cXDp0ZXh0LW11dGVkLWZvcmVncm91bmQgKilbY21kay1ncm91cC1oZWFkaW5nXXtjb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX06aXMoLlxcKlxcOlxcW2FcXF1cXDp1bmRlcmxpbmVcdTAwM2UqKTppcyhhKXt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmV9OmlzKC5cXCpcXDpcXFthXFxdXFw6dW5kZXJsaW5lLW9mZnNldC0zXHUwMDNlKik6aXMoYSl7dGV4dC11bmRlcmxpbmUtb2Zmc2V0OjNweH1AbWVkaWEgKGhvdmVyOmhvdmVyKXsuXFxbYVxcXVxcOmhvdmVyXFw6YmctZGVzdHJ1Y3RpdmVcXC8yMDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LlxcW2FcXF1cXDpob3ZlclxcOmJnLWRlc3RydWN0aXZlXFwvMjA6aXMoYSk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMjAlLHRyYW5zcGFyZW50KX19LlxcW2FcXF1cXDpob3ZlclxcOmJnLW11dGVkOmlzKGEpOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfS5cXFthXFxdXFw6aG92ZXJcXDpiZy1wcmltYXJ5XFwvODA6aXMoYSk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wcmltYXJ5KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LlxcW2FcXF1cXDpob3ZlclxcOmJnLXByaW1hcnlcXC84MDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1wcmltYXJ5KTgwJSx0cmFuc3BhcmVudCl9fS5cXFthXFxdXFw6aG92ZXJcXDpiZy1zZWNvbmRhcnlcXC84MDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXNlY29uZGFyeSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5cXFthXFxdXFw6aG92ZXJcXDpiZy1zZWNvbmRhcnlcXC84MDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1zZWNvbmRhcnkpODAlLHRyYW5zcGFyZW50KX19LlxcW2FcXF1cXDpob3ZlclxcOnRleHQtbXV0ZWQtZm9yZWdyb3VuZDppcyhhKTpob3Zlcntjb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX06aXMoLlxcKlxcOlxcW2FcXF1cXDpob3ZlclxcOnRleHQtZm9yZWdyb3VuZFx1MDAzZSopOmlzKGEpOmhvdmVye2NvbG9yOnZhcigtLWZvcmVncm91bmQpfX06aXMoLlxcKlxcOlxcW2ltZ1xcOmZpcnN0LWNoaWxkXFxdXFw6cm91bmRlZC10LXhsXHUwMDNlKik6aXMoaW1nOmZpcnN0LWNoaWxkKXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpfTppcyguXFwqXFw6XFxbaW1nXFw6bGFzdC1jaGlsZFxcXVxcOnJvdW5kZWQtYi14bFx1MDAzZSopOmlzKGltZzpsYXN0LWNoaWxkKXtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqMS40KTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpfTppcyguZGF0YS1cXFt2YXJpYW50XFw9ZGVzdHJ1Y3RpdmVcXF1cXDpcXCpcXDpcXFtzdmdcXF1cXDp0ZXh0LWRlc3RydWN0aXZlW2RhdGEtdmFyaWFudD1kZXN0cnVjdGl2ZV1cdTAwM2UqKTppcyhzdmcpe2NvbG9yOnZhcigtLWRlc3RydWN0aXZlKX06aXMoLmRhdGEtc2VsZWN0ZWRcXDpcXCpcXDpcXFtzdmdcXF1cXDp0ZXh0LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtc2VsZWN0ZWQ9dHJ1ZV0pXHUwMDNlKik6aXMoc3ZnKXtjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX0uaGFzLVxcW1xcXHUwMDNlXFxbZGF0YS1hbGlnblxcPWJsb2NrLWVuZFxcXVxcXVxcOlxcW1xcXHUwMDI2XFxcdTAwM2VpbnB1dFxcXVxcOnB0LTM6aGFzKFx1MDAzZVtkYXRhLWFsaWduPWJsb2NrLWVuZF0pXHUwMDNlaW5wdXR7cGFkZGluZy10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uaGFzLVxcW1xcXHUwMDNlXFxbZGF0YS1hbGlnblxcPWJsb2NrLXN0YXJ0XFxdXFxdXFw6XFxbXFxcdTAwMjZcXFx1MDAzZWlucHV0XFxdXFw6cGItMzpoYXMoXHUwMDNlW2RhdGEtYWxpZ249YmxvY2stc3RhcnRdKVx1MDAzZWlucHV0e3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMyl9Lmhhcy1cXFtcXFx1MDAzZVxcW2RhdGEtYWxpZ25cXD1pbmxpbmUtZW5kXFxdXFxdXFw6XFxbXFxcdTAwMjZcXFx1MDAzZWlucHV0XFxdXFw6cHItMVxcLjU6aGFzKFx1MDAzZVtkYXRhLWFsaWduPWlubGluZS1lbmRdKVx1MDAzZWlucHV0e3BhZGRpbmctcmlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxLjUpfS5oYXMtXFxbXFxcdTAwM2VcXFtkYXRhLWFsaWduXFw9aW5saW5lLXN0YXJ0XFxdXFxdXFw6XFxbXFxcdTAwMjZcXFx1MDAzZWlucHV0XFxdXFw6cGwtMVxcLjU6aGFzKFx1MDAzZVtkYXRhLWFsaWduPWlubGluZS1zdGFydF0pXHUwMDNlaW5wdXR7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMS41KX0uXFxbXFxcdTAwMjZcXFx1MDAzZWtiZFxcXVxcOnJvdW5kZWQtXFxbY2FsY1xcKHZhclxcKC0tcmFkaXVzXFwpLTVweFxcKVxcXVx1MDAzZWtiZHtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSAtIDVweCl9LlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXF1cXDpwb2ludGVyLWV2ZW50cy1ub25lXHUwMDNlc3Zne3BvaW50ZXItZXZlbnRzOm5vbmV9LlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXF1cXDpzaXplLTNcXCFcdTAwM2Vzdmd7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKSFpbXBvcnRhbnQ7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMykhaW1wb3J0YW50fS5cXFtcXFx1MDAyNlxcXHUwMDNlc3ZnXFxdXFw6c2l6ZS00XHUwMDNlc3Zne3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9Lmdyb3VwLWhhcy1kYXRhLVxcW3NpemVcXD1sZ1xcXVxcL2F2YXRhci1ncm91cFxcOlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXF1cXDpzaXplLTU6aXMoOndoZXJlKC5ncm91cFxcL2F2YXRhci1ncm91cCk6aGFzKFtkYXRhLXNpemU9bGddKSAqKVx1MDAzZXN2Z3t3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjUpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjUpfS5ncm91cC1oYXMtZGF0YS1cXFtzaXplXFw9c21cXF1cXC9hdmF0YXItZ3JvdXBcXDpcXFtcXFx1MDAyNlxcXHUwMDNlc3ZnXFxdXFw6c2l6ZS0zOmlzKDp3aGVyZSguZ3JvdXBcXC9hdmF0YXItZ3JvdXApOmhhcyhbZGF0YS1zaXplPXNtXSkgKilcdTAwM2Vzdmd7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uZ3JvdXAtZGF0YS1cXFtzaXplXFw9ZGVmYXVsdFxcXVxcL2F2YXRhclxcOlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXF1cXDpzaXplLTI6aXMoOndoZXJlKC5ncm91cFxcL2F2YXRhcilbZGF0YS1zaXplPWRlZmF1bHRdICopXHUwMDNlc3ZnLC5ncm91cC1kYXRhLVxcW3NpemVcXD1sZ1xcXVxcL2F2YXRhclxcOlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXF1cXDpzaXplLTI6aXMoOndoZXJlKC5ncm91cFxcL2F2YXRhcilbZGF0YS1zaXplPWxnXSAqKVx1MDAzZXN2Z3t3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5ncm91cC1kYXRhLVxcW3NpemVcXD1zbVxcXVxcL2F2YXRhclxcOlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXF1cXDpoaWRkZW46aXMoOndoZXJlKC5ncm91cFxcL2F2YXRhcilbZGF0YS1zaXplPXNtXSAqKVx1MDAzZXN2Z3tkaXNwbGF5Om5vbmV9LlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXDpub3RcXChcXFtjbGFzc1xcKlxcPVxcJ3NpemUtXFwnXFxdXFwpXFxdXFw6c2l6ZS0zXFwuNVx1MDAzZXN2Zzpub3QoW2NsYXNzKj1zaXplLV0pe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMy41KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpfS5cXFtcXFx1MDAyNlxcXHUwMDNlc3ZnXFw6bm90XFwoXFxbY2xhc3NcXCpcXD1cXCdzaXplLVxcJ1xcXVxcKVxcXVxcOnNpemUtNFx1MDAzZXN2Zzpub3QoW2NsYXNzKj1zaXplLV0pe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9LlxcW1xcXHUwMDI2XFxcdTAwM2V0clxcXVxcOmxhc3RcXDpib3JkZXItYi0wXHUwMDNldHI6bGFzdC1jaGlsZHtib3JkZXItYm90dG9tLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLWJvdHRvbS13aWR0aDowfX1AcHJvcGVydHkgLS10dy1hbmltYXRpb24tZGVsYXl7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MHN9QHByb3BlcnR5IC0tdHctYW5pbWF0aW9uLWRpcmVjdGlvbntzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTpub3JtYWx9QHByb3BlcnR5IC0tdHctYW5pbWF0aW9uLWR1cmF0aW9ue3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1hbmltYXRpb24tZmlsbC1tb2Rle3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOm5vbmV9QHByb3BlcnR5IC0tdHctYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudHtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZToxfUBwcm9wZXJ0eSAtLXR3LWVudGVyLWJsdXJ7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1lbnRlci1vcGFjaXR5e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjF9QHByb3BlcnR5IC0tdHctZW50ZXItcm90YXRle3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctZW50ZXItc2NhbGV7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MX1AcHJvcGVydHkgLS10dy1lbnRlci10cmFuc2xhdGUteHtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LWVudGVyLXRyYW5zbGF0ZS15e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctZXhpdC1ibHVye3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctZXhpdC1vcGFjaXR5e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjF9QHByb3BlcnR5IC0tdHctZXhpdC1yb3RhdGV7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1leGl0LXNjYWxle3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjF9QHByb3BlcnR5IC0tdHctZXhpdC10cmFuc2xhdGUteHtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LWV4aXQtdHJhbnNsYXRlLXl7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH06cm9vdHstLWJhY2tncm91bmQ6I2ZmZjstLWZvcmVncm91bmQ6IzExMTgyNzstLWNhcmQ6I2Y5ZmFmYjstLWNhcmQtZm9yZWdyb3VuZDojMTExODI3Oy0tcG9wb3ZlcjojZmZmOy0tcG9wb3Zlci1mb3JlZ3JvdW5kOiMxMTE4Mjc7LS1wcmltYXJ5OiMwMDcwZWM7LS1wcmltYXJ5LWZvcmVncm91bmQ6I2ZmZjstLXNlY29uZGFyeTojZjNmNGY2Oy0tc2Vjb25kYXJ5LWZvcmVncm91bmQ6IzExMTgyNzstLW11dGVkOiNmM2Y0ZjY7LS1tdXRlZC1mb3JlZ3JvdW5kOiM2YjcyODA7LS1hY2NlbnQ6I2YzZjRmNjstLWFjY2VudC1mb3JlZ3JvdW5kOiMxMTE4Mjc7LS1kZXN0cnVjdGl2ZTojZWY0NDQ0Oy0tYm9yZGVyOiNlNWU3ZWI7LS1pbnB1dDojZTVlN2ViOy0tcmluZzojMDA3NGY1Oy0tcmFkaXVzOi41cmVtOy0tc3VjY2VzczojMjJjNTVlOy0tZGFuZ2VyOiNlZjQ0NDQ7LS13YXJuaW5nOiNmNTllMGI7LS1pbmZvOiMzYjgyZjY7LS1zdXJmYWNlOiNmOWZhZmI7LS1zdXJmYWNlLTI6I2YzZjRmNjstLWNoYXJ0LTE6IzAwNzRmNTstLWNoYXJ0LTI6IzAwYjhhOTstLWNoYXJ0LTM6IzIyYzU1ZTstLWNoYXJ0LTQ6I2Y1OWUwYjstLWNoYXJ0LTU6I2VmNDQ0NDstLXNpZGViYXI6I2Y5ZmFmYjstLXNpZGViYXItZm9yZWdyb3VuZDojMTExODI3Oy0tc2lkZWJhci1wcmltYXJ5OiMwMDc0ZjU7LS1zaWRlYmFyLXByaW1hcnktZm9yZWdyb3VuZDojZmZmOy0tc2lkZWJhci1hY2NlbnQ6I2YzZjRmNjstLXNpZGViYXItYWNjZW50LWZvcmVncm91bmQ6IzExMTgyNzstLXNpZGViYXItYm9yZGVyOiNlNWU3ZWI7LS1zaWRlYmFyLXJpbmc6IzAwNzRmNX0uZGFya3stLWJhY2tncm91bmQ6IzBiMGYxOTstLWZvcmVncm91bmQ6I2Y5ZmFmYjstLWNhcmQ6IzExMTgyNzstLWNhcmQtZm9yZWdyb3VuZDojZjlmYWZiOy0tcG9wb3ZlcjojMTExODI3Oy0tcG9wb3Zlci1mb3JlZ3JvdW5kOiNmOWZhZmI7LS1wcmltYXJ5OiMwMDcwZWM7LS1wcmltYXJ5LWZvcmVncm91bmQ6I2ZmZjstLXNlY29uZGFyeTojMWYyOTM3Oy0tc2Vjb25kYXJ5LWZvcmVncm91bmQ6I2Y5ZmFmYjstLW11dGVkOiMxZjI5Mzc7LS1tdXRlZC1mb3JlZ3JvdW5kOiM5Y2EzYWY7LS1hY2NlbnQ6IzFmMjkzNzstLWFjY2VudC1mb3JlZ3JvdW5kOiNmOWZhZmI7LS1kZXN0cnVjdGl2ZTojZWY0NDQ0Oy0tYm9yZGVyOiMzNzQxNTE7LS1pbnB1dDojMzc0MTUxOy0tcmluZzojMDA3NGY1Oy0tc3VjY2VzczojMjJjNTVlOy0tZGFuZ2VyOiNlZjQ0NDQ7LS13YXJuaW5nOiNmNTllMGI7LS1pbmZvOiMzYjgyZjY7LS1zdXJmYWNlOiMxMTE4Mjc7LS1zdXJmYWNlLTI6IzFmMjkzNzstLWNoYXJ0LTE6IzNkOWFmZjstLWNoYXJ0LTI6IzMzYzliZDstLWNoYXJ0LTM6IzIyYzU1ZTstLWNoYXJ0LTQ6I2Y1OWUwYjstLWNoYXJ0LTU6I2VmNDQ0NDstLXNpZGViYXI6IzExMTgyNzstLXNpZGViYXItZm9yZWdyb3VuZDojZjlmYWZiOy0tc2lkZWJhci1wcmltYXJ5OiMzZDlhZmY7LS1zaWRlYmFyLXByaW1hcnktZm9yZWdyb3VuZDojZmZmOy0tc2lkZWJhci1hY2NlbnQ6IzFmMjkzNzstLXNpZGViYXItYWNjZW50LWZvcmVncm91bmQ6I2Y5ZmFmYjstLXNpZGViYXItYm9yZGVyOiMzNzQxNTE7LS1zaWRlYmFyLXJpbmc6IzAwNzRmNX1Aa2V5ZnJhbWVzIHRleHQtc2hpbW1lcnswJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjIwMCV9dG97YmFja2dyb3VuZC1wb3NpdGlvbjotMjAwJX19LnRleHQtc2hpbW1lcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKTQwJSx2YXIoLS1mb3JlZ3JvdW5kKTUwJSx2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKTYwJSk7Y29sb3I6IzAwMDA7YmFja2dyb3VuZC1zaXplOjIwMCU7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDtiYWNrZ3JvdW5kLWNsaXA6dGV4dDthbmltYXRpb246MnMgbGluZWFyIGluZmluaXRlIHRleHQtc2hpbW1lcn1odG1sLmNjLWNvbnNlbnRlZCAuY29va2llLW5vdGljZXtkaXNwbGF5Om5vbmV9QHByb3BlcnR5IC0tdHctdHJhbnNsYXRlLXh7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy10cmFuc2xhdGUteXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LXRyYW5zbGF0ZS16e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctcm90YXRlLXh7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXJvdGF0ZS15e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1yb3RhdGUtentzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2tldy14e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1za2V3LXl7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXNwYWNlLXktcmV2ZXJzZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LXNwYWNlLXgtcmV2ZXJzZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LWRpdmlkZS15LXJldmVyc2V7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1ib3JkZXItc3R5bGV7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6c29saWR9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtcG9zaXRpb257c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LWZyb217c3ludGF4OlwiXHUwMDNjY29sb3JcdTAwM2VcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOiMwMDAwfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LXZpYXtzeW50YXg6XCJcdTAwM2Njb2xvclx1MDAzZVwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6IzAwMDB9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtdG97c3ludGF4OlwiXHUwMDNjY29sb3JcdTAwM2VcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOiMwMDAwfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LXN0b3Bze3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1ncmFkaWVudC12aWEtc3RvcHN7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LWZyb20tcG9zaXRpb257c3ludGF4OlwiXHUwMDNjbGVuZ3RoLXBlcmNlbnRhZ2VcdTAwM2VcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjAlfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LXZpYS1wb3NpdGlvbntzeW50YXg6XCJcdTAwM2NsZW5ndGgtcGVyY2VudGFnZVx1MDAzZVwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6NTAlfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LXRvLXBvc2l0aW9ue3N5bnRheDpcIlx1MDAzY2xlbmd0aC1wZXJjZW50YWdlXHUwMDNlXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZToxMDAlfUBwcm9wZXJ0eSAtLXR3LWxlYWRpbmd7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWZvbnQtd2VpZ2h0e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy10cmFja2luZ3tzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctb3JkaW5hbHtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2xhc2hlZC16ZXJve3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1udW1lcmljLWZpZ3VyZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctbnVtZXJpYy1zcGFjaW5ne3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1udW1lcmljLWZyYWN0aW9ue3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1zaGFkb3d7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MCAwICMwMDAwfUBwcm9wZXJ0eSAtLXR3LXNoYWRvdy1jb2xvcntzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2hhZG93LWFscGhhe3N5bnRheDpcIlx1MDAzY3BlcmNlbnRhZ2VcdTAwM2VcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjEwMCV9QHByb3BlcnR5IC0tdHctaW5zZXQtc2hhZG93e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjAgMCAjMDAwMH1AcHJvcGVydHkgLS10dy1pbnNldC1zaGFkb3ctY29sb3J7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWluc2V0LXNoYWRvdy1hbHBoYXtzeW50YXg6XCJcdTAwM2NwZXJjZW50YWdlXHUwMDNlXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZToxMDAlfUBwcm9wZXJ0eSAtLXR3LXJpbmctY29sb3J7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXJpbmctc2hhZG93e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjAgMCAjMDAwMH1AcHJvcGVydHkgLS10dy1pbnNldC1yaW5nLWNvbG9ye3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1pbnNldC1yaW5nLXNoYWRvd3tzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowIDAgIzAwMDB9QHByb3BlcnR5IC0tdHctcmluZy1pbnNldHtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctcmluZy1vZmZzZXQtd2lkdGh7c3ludGF4OlwiXHUwMDNjbGVuZ3RoXHUwMDNlXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LXJpbmctb2Zmc2V0LWNvbG9ye3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOiNmZmZ9QHByb3BlcnR5IC0tdHctcmluZy1vZmZzZXQtc2hhZG93e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjAgMCAjMDAwMH1AcHJvcGVydHkgLS10dy1vdXRsaW5lLXN0eWxle3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOnNvbGlkfUBwcm9wZXJ0eSAtLXR3LWJsdXJ7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWJyaWdodG5lc3N7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWNvbnRyYXN0e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1ncmF5c2NhbGV7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWh1ZS1yb3RhdGV7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWludmVydHtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctb3BhY2l0eXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2F0dXJhdGV7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXNlcGlhe3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1kcm9wLXNoYWRvd3tzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctZHJvcC1zaGFkb3ctY29sb3J7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWRyb3Atc2hhZG93LWFscGhhe3N5bnRheDpcIlx1MDAzY3BlcmNlbnRhZ2VcdTAwM2VcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjEwMCV9QHByb3BlcnR5IC0tdHctZHJvcC1zaGFkb3ctc2l6ZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtYmx1cntzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtYnJpZ2h0bmVzc3tzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtY29udHJhc3R7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWJhY2tkcm9wLWdyYXlzY2FsZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtaHVlLXJvdGF0ZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtaW52ZXJ0e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1iYWNrZHJvcC1vcGFjaXR5e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1iYWNrZHJvcC1zYXR1cmF0ZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3Atc2VwaWF7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWR1cmF0aW9ue3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1lYXNle3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1jb250ZW50e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOlwiXCJ9QGtleWZyYW1lcyBzcGlue3Rve3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19QGtleWZyYW1lcyBwdWxzZXs1MCV7b3BhY2l0eTouNX19QGtleWZyYW1lcyBlbnRlcnswJXtvcGFjaXR5OnZhcigtLXR3LWVudGVyLW9wYWNpdHksMSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKHZhcigtLXR3LWVudGVyLXRyYW5zbGF0ZS14LDApLHZhcigtLXR3LWVudGVyLXRyYW5zbGF0ZS15LDApLDApc2NhbGUzZCh2YXIoLS10dy1lbnRlci1zY2FsZSwxKSx2YXIoLS10dy1lbnRlci1zY2FsZSwxKSx2YXIoLS10dy1lbnRlci1zY2FsZSwxKSlyb3RhdGUodmFyKC0tdHctZW50ZXItcm90YXRlLDApKTtmaWx0ZXI6Ymx1cih2YXIoLS10dy1lbnRlci1ibHVyLDApKX19QGtleWZyYW1lcyBleGl0e3Rve29wYWNpdHk6dmFyKC0tdHctZXhpdC1vcGFjaXR5LDEpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCh2YXIoLS10dy1leGl0LXRyYW5zbGF0ZS14LDApLHZhcigtLXR3LWV4aXQtdHJhbnNsYXRlLXksMCksMClzY2FsZTNkKHZhcigtLXR3LWV4aXQtc2NhbGUsMSksdmFyKC0tdHctZXhpdC1zY2FsZSwxKSx2YXIoLS10dy1leGl0LXNjYWxlLDEpKXJvdGF0ZSh2YXIoLS10dy1leGl0LXJvdGF0ZSwwKSk7ZmlsdGVyOmJsdXIodmFyKC0tdHctZXhpdC1ibHVyLDApKX19XG4iXSk8L3NjcmlwdD48c2NyaXB0PnNlbGYuX19uZXh0X2YucHVzaChbMSwiMDp7XCJQXCI6bnVsbCxcImJcIjpcIlMxSjJHRS1qQzlkRTl5aGE5aEFfdFwiLFwiY1wiOltcIlwiLFwid2lkZ2V0XCJdLFwicVwiOlwiXCIsXCJpXCI6ZmFsc2UsXCJmXCI6W1tbXCJcIix7XCJjaGlsZHJlblwiOltcIihlbWJlZClcIix7XCJjaGlsZHJlblwiOltcIndpZGdldFwiLHtcImNoaWxkcmVuXCI6W1wiX19QQUdFX19cIix7fV19XX1dfSxcIiR1bmRlZmluZWRcIixcIiR1bmRlZmluZWRcIix0cnVlXSxbW1wiJFwiLFwiJDFcIixcImNcIix7XCJjaGlsZHJlblwiOltbW1wiJFwiLFwic3R5bGVcIixcIjBcIix7XCJub25jZVwiOlwiJHVuZGVmaW5lZFwiLFwicHJlY2VkZW5jZVwiOlwibmV4dFwiLFwiaHJlZlwiOlwiL19uZXh0L3N0YXRpYy9jaHVua3MvMDcyNWZjNGRiODE0ZjAzNS5jc3NcIixcImNoaWxkcmVuXCI6XCIkMlwifV0sW1wiJFwiLFwic3R5bGVcIixcIjFcIix7XCJub25jZVwiOlwiJHVuZGVmaW5lZFwiLFwicHJlY2VkZW5jZVwiOlwibmV4dFwiLFwiaHJlZlwiOlwiL19uZXh0L3N0YXRpYy9jaHVua3MvYjM0ZWJiOGFlZmYyMTg2ZS5jc3NcIixcImNoaWxkcmVuXCI6XCIkM1wifV0sXCIkTDRcIl0sXCIkTDVcIl19XSx7XCJjaGlsZHJlblwiOltcIiRMNlwiLHtcImNoaWxkcmVuXCI6W1wiJEw3XCIse1wiY2hpbGRyZW5cIjpbXCIkTDhcIix7fSxudWxsLGZhbHNlLGZhbHNlXX0sbnVsbCxmYWxzZSxmYWxzZV19LG51bGwsZmFsc2UsZmFsc2VdfSxudWxsLGZhbHNlLGZhbHNlXSxcIiRMOVwiLGZhbHNlXV0sXCJtXCI6XCIkdW5kZWZpbmVkXCIsXCJHXCI6W1wiJGFcIixbXV0sXCJTXCI6dHJ1ZX1cbiJdKTwvc2NyaXB0PjxzY3JpcHQ+c2VsZi5fX25leHRfZi5wdXNoKFsxLCJiOklbODM2NjEsW1wiL19uZXh0L3N0YXRpYy9jaHVua3MvYzBhNmFlNTE1ZjRkMjQ1ZC5qc1wiXSxcIlRoZW1lUHJvdmlkZXJcIl1cbmM6SVszMDk3LFtcIi9fbmV4dC9zdGF0aWMvY2h1bmtzLzMzMDc0ZDNmZjVkMGNkMmQuanNcIixcIi9fbmV4dC9zdGF0aWMvY2h1bmtzLzk1MjYyMzg2ZDhkNGI2ZGQuanNcIl0sXCJkZWZhdWx0XCJdXG5kOklbOTkyOTksW1wiL19uZXh0L3N0YXRpYy9jaHVua3MvMzMwNzRkM2ZmNWQwY2QyZC5qc1wiLFwiL19uZXh0L3N0YXRpYy9jaHVua3MvOTUyNjIzODZkOGQ0YjZkZC5qc1wiXSxcImRlZmF1bHRcIl1cbmU6XCIkU3JlYWN0LnN1c3BlbnNlXCJcbmY6SVs3OTI5NCxbXCIvX25leHQvc3RhdGljL2NodW5rcy9jMGE2YWU1MTVmNGQyNDVkLmpzXCIsXCIvX25leHQvc3RhdGljL2NodW5rcy84MDBlODM2MTQ2ZDZlN2ViLmpzXCIsXCIvX25leHQvc3RhdGljL2NodW5rcy9kNzFiOTkyNjdiMDY2YjliLmpzXCJdLFwiV2lkZ2V0Q2xpZW50XCJdXG4xMDpJWzM2MzQ1LFtcIi9fbmV4dC9zdGF0aWMvY2h1bmtzLzMzMDc0ZDNmZjVkMGNkMmQuanNcIixcIi9fbmV4dC9zdGF0aWMvY2h1bmtzLzk1MjYyMzg2ZDhkNGI2ZGQuanNcIl0sXCJPdXRsZXRCb3VuZGFyeVwiXVxuMTI6SVszNjM0NSxbXCIvX25leHQvc3RhdGljL2NodW5rcy8zMzA3NGQzZmY1ZDBjZDJkLmpzXCIsXCIvX25leHQvc3RhdGljL2NodW5rcy85NTI2MjM4NmQ4ZDRiNmRkLmpzXCJdLFwiVmlld3BvcnRCb3VuZGFyeVwiXVxuMTQ6SVszNjM0NSxbXCIvX25leHQvc3RhdGljL2NodW5rcy8zMzA3NGQzZmY1ZDBjZDJkLmpzXCIsXCIvX25leHQvc3RhdGljL2NodW5rcy85NTI2MjM4NmQ4ZDRiNmRkLmpzXCJdLFwiTWV0YWRhdGFCb3VuZGFyeVwiXVxuNDpbXCIkXCIsXCJzY3JpcHRcIixcInNjcmlwdC0wXCIse1wic3JjXCI6XCIvX25leHQvc3RhdGljL2NodW5rcy9jMGE2YWU1MTVmNGQyNDVkLmpzXCIsXCJhc3luY1wiOnRydWUsXCJub25jZVwiOlwiJHVuZGVmaW5lZFwifV1cbiJdKTwvc2NyaXB0PjxzY3JpcHQ+c2VsZi5fX25leHRfZi5wdXNoKFsxLCI1OltcIiRcIixcImh0bWxcIixudWxsLHtcImxhbmdcIjpcImVuXCIsXCJzdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmdcIjp0cnVlLFwiY2hpbGRyZW5cIjpbW1wiJFwiLFwiaGVhZFwiLG51bGwse1wiY2hpbGRyZW5cIjpbW1wiJFwiLFwic2NyaXB0XCIsbnVsbCx7XCJkYW5nZXJvdXNseVNldElubmVySFRNTFwiOntcIl9faHRtbFwiOlwidHJ5e2lmKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdjb2lubGliLWNvb2tpZS1jb25zZW50Jykpe2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QuYWRkKCdjYy1jb25zZW50ZWQnKX19Y2F0Y2goZSl7fVwifX1dLFtcIiRcIixcImxpbmtcIixudWxsLHtcInJlbFwiOlwicHJlY29ubmVjdFwiLFwiaHJlZlwiOlwiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbVwiLFwiY3Jvc3NPcmlnaW5cIjpcIlwifV1dfV0sW1wiJFwiLFwiYm9keVwiLG51bGwse1wiY2xhc3NOYW1lXCI6XCJpbnRlcl8xZWM0ZGQ5Zi1tb2R1bGVfX1VNUGFLR19fdmFyaWFibGUgYW50aWFsaWFzZWRcIixcImNoaWxkcmVuXCI6W1tcIiRcIixcIiRMYlwiLG51bGwse1wiY2hpbGRyZW5cIjpbXCIkXCIsXCIkTGNcIixudWxsLHtcInBhcmFsbGVsUm91dGVyS2V5XCI6XCJjaGlsZHJlblwiLFwiZXJyb3JcIjpcIiR1bmRlZmluZWRcIixcImVycm9yU3R5bGVzXCI6XCIkdW5kZWZpbmVkXCIsXCJlcnJvclNjcmlwdHNcIjpcIiR1bmRlZmluZWRcIixcInRlbXBsYXRlXCI6W1wiJFwiLFwiJExkXCIsbnVsbCx7fV0sXCJ0ZW1wbGF0ZVN0eWxlc1wiOlwiJHVuZGVmaW5lZFwiLFwidGVtcGxhdGVTY3JpcHRzXCI6XCIkdW5kZWZpbmVkXCIsXCJub3RGb3VuZFwiOltbW1wiJFwiLFwidGl0bGVcIixudWxsLHtcImNoaWxkcmVuXCI6XCI0MDQ6IFRoaXMgcGFnZSBjb3VsZCBub3QgYmUgZm91bmQuXCJ9XSxbXCIkXCIsXCJkaXZcIixudWxsLHtcInN0eWxlXCI6e1wiZm9udEZhbWlseVwiOlwic3lzdGVtLXVpLFxcXCJTZWdvZSBVSVxcXCIsUm9ib3RvLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmLFxcXCJBcHBsZSBDb2xvciBFbW9qaVxcXCIsXFxcIlNlZ29lIFVJIEVtb2ppXFxcIlwiLFwiaGVpZ2h0XCI6XCIxMDB2aFwiLFwidGV4dEFsaWduXCI6XCJjZW50ZXJcIixcImRpc3BsYXlcIjpcImZsZXhcIixcImZsZXhEaXJlY3Rpb25cIjpcImNvbHVtblwiLFwiYWxpZ25JdGVtc1wiOlwiY2VudGVyXCIsXCJqdXN0aWZ5Q29udGVudFwiOlwiY2VudGVyXCJ9LFwiY2hpbGRyZW5cIjpbXCIkXCIsXCJkaXZcIixudWxsLHtcImNoaWxkcmVuXCI6W1tcIiRcIixcInN0eWxlXCIsbnVsbCx7XCJkYW5nZXJvdXNseVNldElubmVySFRNTFwiOntcIl9faHRtbFwiOlwiYm9keXtjb2xvcjojMDAwO2JhY2tncm91bmQ6I2ZmZjttYXJnaW46MH0ubmV4dC1lcnJvci1oMXtib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjMpfUBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ZGFyayl7Ym9keXtjb2xvcjojZmZmO2JhY2tncm91bmQ6IzAwMH0ubmV4dC1lcnJvci1oMXtib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjMpfX1cIn19XSxbXCIkXCIsXCJoMVwiLG51bGwse1wiY2xhc3NOYW1lXCI6XCJuZXh0LWVycm9yLWgxXCIsXCJzdHlsZVwiOntcImRpc3BsYXlcIjpcImlubGluZS1ibG9ja1wiLFwibWFyZ2luXCI6XCIwIDIwcHggMCAwXCIsXCJwYWRkaW5nXCI6XCIwIDIzcHggMCAwXCIsXCJmb250U2l6ZVwiOjI0LFwiZm9udFdlaWdodFwiOjUwMCxcInZlcnRpY2FsQWxpZ25cIjpcInRvcFwiLFwibGluZUhlaWdodFwiOlwiNDlweFwifSxcImNoaWxkcmVuXCI6NDA0fV0sW1wiJFwiLFwiZGl2XCIsbnVsbCx7XCJzdHlsZVwiOntcImRpc3BsYXlcIjpcImlubGluZS1ibG9ja1wifSxcImNoaWxkcmVuXCI6W1wiJFwiLFwiaDJcIixudWxsLHtcInN0eWxlXCI6e1wiZm9udFNpemVcIjoxNCxcImZvbnRXZWlnaHRcIjo0MDAsXCJsaW5lSGVpZ2h0XCI6XCI0OXB4XCIsXCJtYXJnaW5cIjowfSxcImNoaWxkcmVuXCI6XCJUaGlzIHBhZ2UgY291bGQgbm90IGJlIGZvdW5kLlwifV19XV19XX1dXSxbXV0sXCJmb3JiaWRkZW5cIjpcIiR1bmRlZmluZWRcIixcInVuYXV0aG9yaXplZFwiOlwiJHVuZGVmaW5lZFwifV19XSxbXCIkXCIsXCJzY3JpcHRcIixudWxsLHtcImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MXCI6e1wiX19odG1sXCI6XCIoZnVuY3Rpb24oKXtmdW5jdGlvbiBsb2FkKCl7d2luZG93LmRhdGFMYXllcj13aW5kb3cuZGF0YUxheWVyfHxbXTt3aW5kb3cuZ3RhZz1mdW5jdGlvbigpe2RhdGFMYXllci5wdXNoKGFyZ3VtZW50cyl9O2d0YWcoJ2pzJyxuZXcgRGF0ZSgpKTtndGFnKCdjb25maWcnLCdHLVY4NFhQOFdHWFknKTt2YXIgcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtzLnNyYz0naHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vZ3RhZy9qcz9pZD1HLVY4NFhQOFdHWFknO3MuYXN5bmM9dHJ1ZTtkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHMpfWZ1bmN0aW9uIHNjaGVkdWxlKCl7aWYoJ3JlcXVlc3RJZGxlQ2FsbGJhY2snaW4gd2luZG93KXtyZXF1ZXN0SWRsZUNhbGxiYWNrKGxvYWQse3RpbWVvdXQ6MzAwMH0pfWVsc2V7c2V0VGltZW91dChsb2FkLDE1MDApfX1pZihkb2N1bWVudC5yZWFkeVN0YXRlPT09J2NvbXBsZXRlJyl7c2NoZWR1bGUoKX1lbHNle2FkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLHNjaGVkdWxlLHtvbmNlOnRydWV9KX19KSgpO1wifX1dXX1dXX1dXG4iXSk8L3NjcmlwdD48c2NyaXB0PnNlbGYuX19uZXh0X2YucHVzaChbMSwiNjpbXCIkXCIsXCIkMVwiLFwiY1wiLHtcImNoaWxkcmVuXCI6W251bGwsW1tcIiRcIixcInN0eWxlXCIsbnVsbCx7XCJjaGlsZHJlblwiOlwiaHRtbCwgYm9keSB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgb3ZlcmZsb3c6IGhpZGRlbjsgfVwifV0sW1wiJFwiLFwiJExjXCIsbnVsbCx7XCJwYXJhbGxlbFJvdXRlcktleVwiOlwiY2hpbGRyZW5cIixcImVycm9yXCI6XCIkdW5kZWZpbmVkXCIsXCJlcnJvclN0eWxlc1wiOlwiJHVuZGVmaW5lZFwiLFwiZXJyb3JTY3JpcHRzXCI6XCIkdW5kZWZpbmVkXCIsXCJ0ZW1wbGF0ZVwiOltcIiRcIixcIiRMZFwiLG51bGwse31dLFwidGVtcGxhdGVTdHlsZXNcIjpcIiR1bmRlZmluZWRcIixcInRlbXBsYXRlU2NyaXB0c1wiOlwiJHVuZGVmaW5lZFwiLFwibm90Rm91bmRcIjpbW1tcIiRcIixcInRpdGxlXCIsbnVsbCx7XCJjaGlsZHJlblwiOlwiNDA0OiBUaGlzIHBhZ2UgY291bGQgbm90IGJlIGZvdW5kLlwifV0sW1wiJFwiLFwiZGl2XCIsbnVsbCx7XCJzdHlsZVwiOlwiJDU6cHJvcHM6Y2hpbGRyZW46MTpwcm9wczpjaGlsZHJlbjowOnByb3BzOmNoaWxkcmVuOnByb3BzOm5vdEZvdW5kOjA6MTpwcm9wczpzdHlsZVwiLFwiY2hpbGRyZW5cIjpbXCIkXCIsXCJkaXZcIixudWxsLHtcImNoaWxkcmVuXCI6W1tcIiRcIixcInN0eWxlXCIsbnVsbCx7XCJkYW5nZXJvdXNseVNldElubmVySFRNTFwiOntcIl9faHRtbFwiOlwiYm9keXtjb2xvcjojMDAwO2JhY2tncm91bmQ6I2ZmZjttYXJnaW46MH0ubmV4dC1lcnJvci1oMXtib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjMpfUBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ZGFyayl7Ym9keXtjb2xvcjojZmZmO2JhY2tncm91bmQ6IzAwMH0ubmV4dC1lcnJvci1oMXtib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjMpfX1cIn19XSxbXCIkXCIsXCJoMVwiLG51bGwse1wiY2xhc3NOYW1lXCI6XCJuZXh0LWVycm9yLWgxXCIsXCJzdHlsZVwiOlwiJDU6cHJvcHM6Y2hpbGRyZW46MTpwcm9wczpjaGlsZHJlbjowOnByb3BzOmNoaWxkcmVuOnByb3BzOm5vdEZvdW5kOjA6MTpwcm9wczpjaGlsZHJlbjpwcm9wczpjaGlsZHJlbjoxOnByb3BzOnN0eWxlXCIsXCJjaGlsZHJlblwiOjQwNH1dLFtcIiRcIixcImRpdlwiLG51bGwse1wic3R5bGVcIjpcIiQ1OnByb3BzOmNoaWxkcmVuOjE6cHJvcHM6Y2hpbGRyZW46MDpwcm9wczpjaGlsZHJlbjpwcm9wczpub3RGb3VuZDowOjE6cHJvcHM6Y2hpbGRyZW46cHJvcHM6Y2hpbGRyZW46Mjpwcm9wczpzdHlsZVwiLFwiY2hpbGRyZW5cIjpbXCIkXCIsXCJoMlwiLG51bGwse1wic3R5bGVcIjpcIiQ1OnByb3BzOmNoaWxkcmVuOjE6cHJvcHM6Y2hpbGRyZW46MDpwcm9wczpjaGlsZHJlbjpwcm9wczpub3RGb3VuZDowOjE6cHJvcHM6Y2hpbGRyZW46cHJvcHM6Y2hpbGRyZW46Mjpwcm9wczpjaGlsZHJlbjpwcm9wczpzdHlsZVwiLFwiY2hpbGRyZW5cIjpcIlRoaXMgcGFnZSBjb3VsZCBub3QgYmUgZm91bmQuXCJ9XX1dXX1dfV1dLFtdXSxcImZvcmJpZGRlblwiOlwiJHVuZGVmaW5lZFwiLFwidW5hdXRob3JpemVkXCI6XCIkdW5kZWZpbmVkXCJ9XV1dfV1cbiJdKTwvc2NyaXB0PjxzY3JpcHQ+c2VsZi5fX25leHRfZi5wdXNoKFsxLCI3OltcIiRcIixcIiQxXCIsXCJjXCIse1wiY2hpbGRyZW5cIjpbbnVsbCxbXCIkXCIsXCIkTGNcIixudWxsLHtcInBhcmFsbGVsUm91dGVyS2V5XCI6XCJjaGlsZHJlblwiLFwiZXJyb3JcIjpcIiR1bmRlZmluZWRcIixcImVycm9yU3R5bGVzXCI6XCIkdW5kZWZpbmVkXCIsXCJlcnJvclNjcmlwdHNcIjpcIiR1bmRlZmluZWRcIixcInRlbXBsYXRlXCI6W1wiJFwiLFwiJExkXCIsbnVsbCx7fV0sXCJ0ZW1wbGF0ZVN0eWxlc1wiOlwiJHVuZGVmaW5lZFwiLFwidGVtcGxhdGVTY3JpcHRzXCI6XCIkdW5kZWZpbmVkXCIsXCJub3RGb3VuZFwiOlwiJHVuZGVmaW5lZFwiLFwiZm9yYmlkZGVuXCI6XCIkdW5kZWZpbmVkXCIsXCJ1bmF1dGhvcml6ZWRcIjpcIiR1bmRlZmluZWRcIn1dXX1dXG44OltcIiRcIixcIiQxXCIsXCJjXCIse1wiY2hpbGRyZW5cIjpbW1wiJFwiLFwiJGVcIixudWxsLHtcImNoaWxkcmVuXCI6W1wiJFwiLFwiJExmXCIsbnVsbCx7fV19XSxbW1wiJFwiLFwic2NyaXB0XCIsXCJzY3JpcHQtMFwiLHtcInNyY1wiOlwiL19uZXh0L3N0YXRpYy9jaHVua3MvODAwZTgzNjE0NmQ2ZTdlYi5qc1wiLFwiYXN5bmNcIjp0cnVlLFwibm9uY2VcIjpcIiR1bmRlZmluZWRcIn1dLFtcIiRcIixcInNjcmlwdFwiLFwic2NyaXB0LTFcIix7XCJzcmNcIjpcIi9fbmV4dC9zdGF0aWMvY2h1bmtzL2Q3MWI5OTI2N2IwNjZiOWIuanNcIixcImFzeW5jXCI6dHJ1ZSxcIm5vbmNlXCI6XCIkdW5kZWZpbmVkXCJ9XV0sW1wiJFwiLFwiJEwxMFwiLG51bGwse1wiY2hpbGRyZW5cIjpbXCIkXCIsXCIkZVwiLG51bGwse1wibmFtZVwiOlwiTmV4dC5NZXRhZGF0YU91dGxldFwiLFwiY2hpbGRyZW5cIjpcIiRAMTFcIn1dfV1dfV1cbjk6W1wiJFwiLFwiJDFcIixcImhcIix7XCJjaGlsZHJlblwiOltudWxsLFtcIiRcIixcIiRMMTJcIixudWxsLHtcImNoaWxkcmVuXCI6XCIkTDEzXCJ9XSxbXCIkXCIsXCJkaXZcIixudWxsLHtcImhpZGRlblwiOnRydWUsXCJjaGlsZHJlblwiOltcIiRcIixcIiRMMTRcIixudWxsLHtcImNoaWxkcmVuXCI6W1wiJFwiLFwiJGVcIixudWxsLHtcIm5hbWVcIjpcIk5leHQuTWV0YWRhdGFcIixcImNoaWxkcmVuXCI6XCIkTDE1XCJ9XX1dfV0sW1wiJFwiLFwibWV0YVwiLG51bGwse1wibmFtZVwiOlwibmV4dC1zaXplLWFkanVzdFwiLFwiY29udGVudFwiOlwiXCJ9XV19XVxuIl0pPC9zY3JpcHQ+PHNjcmlwdD5zZWxmLl9fbmV4dF9mLnB1c2goWzEsIjEzOltbXCIkXCIsXCJtZXRhXCIsXCIwXCIse1wiY2hhclNldFwiOlwidXRmLThcIn1dLFtcIiRcIixcIm1ldGFcIixcIjFcIix7XCJuYW1lXCI6XCJ2aWV3cG9ydFwiLFwiY29udGVudFwiOlwid2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIHZpZXdwb3J0LWZpdD1jb3ZlclwifV1dXG4iXSk8L3NjcmlwdD48c2NyaXB0PnNlbGYuX19uZXh0X2YucHVzaChbMSwiMTY6SVsyMDQxNCxbXCIvX25leHQvc3RhdGljL2NodW5rcy8zMzA3NGQzZmY1ZDBjZDJkLmpzXCIsXCIvX25leHQvc3RhdGljL2NodW5rcy85NTI2MjM4NmQ4ZDRiNmRkLmpzXCJdLFwiSWNvbk1hcmtcIl1cbjExOm51bGxcbiJdKTwvc2NyaXB0PjxzY3JpcHQ+c2VsZi5fX25leHRfZi5wdXNoKFsxLCIxNTpbW1wiJFwiLFwidGl0bGVcIixcIjBcIix7XCJjaGlsZHJlblwiOlwiQ29pbmxpYiBXaWRnZXQgfCBDb2lubGliXCJ9XSxbXCIkXCIsXCJtZXRhXCIsXCIxXCIse1wibmFtZVwiOlwiZGVzY3JpcHRpb25cIixcImNvbnRlbnRcIjpcIlRyYWNrIHJlYWwtdGltZSBjcnlwdG9jdXJyZW5jeSBwcmljZXMsIG1hcmtldCBjYXAsIGNoYXJ0cywgYW5kIHBvcnRmb2xpby4gRXhwbG9yZSB0aG91c2FuZHMgb2YgY29pbnMgYW5kIGV4Y2hhbmdlcyB3aXRoIENvaW5saWIuXCJ9XSxbXCIkXCIsXCJtZXRhXCIsXCIyXCIse1wibmFtZVwiOlwia2V5d29yZHNcIixcImNvbnRlbnRcIjpcImNyeXB0b2N1cnJlbmN5LGNyeXB0byBwcmljZXMsYml0Y29pbixtYXJrZXQgY2FwLGNyeXB0byBjaGFydHMscG9ydGZvbGlvIHRyYWNrZXJcIn1dLFtcIiRcIixcIm1ldGFcIixcIjNcIix7XCJuYW1lXCI6XCJyb2JvdHNcIixcImNvbnRlbnRcIjpcIm5vaW5kZXhcIn1dLFtcIiRcIixcIm1ldGFcIixcIjRcIix7XCJwcm9wZXJ0eVwiOlwib2c6dGl0bGVcIixcImNvbnRlbnRcIjpcIkNvaW5saWIg4oCUIENyeXB0b2N1cnJlbmN5IFByaWNlcywgQ2hhcnRzIFx1MDAyNiBNYXJrZXQgRGF0YVwifV0sW1wiJFwiLFwibWV0YVwiLFwiNVwiLHtcInByb3BlcnR5XCI6XCJvZzpkZXNjcmlwdGlvblwiLFwiY29udGVudFwiOlwiVHJhY2sgcmVhbC10aW1lIGNyeXB0b2N1cnJlbmN5IHByaWNlcywgbWFya2V0IGNhcCwgY2hhcnRzLCBhbmQgcG9ydGZvbGlvLiBFeHBsb3JlIHRob3VzYW5kcyBvZiBjb2lucyBhbmQgZXhjaGFuZ2VzIHdpdGggQ29pbmxpYi5cIn1dLFtcIiRcIixcIm1ldGFcIixcIjZcIix7XCJwcm9wZXJ0eVwiOlwib2c6dXJsXCIsXCJjb250ZW50XCI6XCJodHRwczovL2NvaW5saWIuaW9cIn1dLFtcIiRcIixcIm1ldGFcIixcIjdcIix7XCJwcm9wZXJ0eVwiOlwib2c6c2l0ZV9uYW1lXCIsXCJjb250ZW50XCI6XCJDb2lubGliXCJ9XSxbXCIkXCIsXCJtZXRhXCIsXCI4XCIse1wicHJvcGVydHlcIjpcIm9nOmltYWdlXCIsXCJjb250ZW50XCI6XCJodHRwczovL2NvaW5saWIuaW8vb2cvZGVmYXVsdC5wbmdcIn1dLFtcIiRcIixcIm1ldGFcIixcIjlcIix7XCJwcm9wZXJ0eVwiOlwib2c6aW1hZ2U6d2lkdGhcIixcImNvbnRlbnRcIjpcIjEyMDBcIn1dLFtcIiRcIixcIm1ldGFcIixcIjEwXCIse1wicHJvcGVydHlcIjpcIm9nOmltYWdlOmhlaWdodFwiLFwiY29udGVudFwiOlwiNjMwXCJ9XSxbXCIkXCIsXCJtZXRhXCIsXCIxMVwiLHtcInByb3BlcnR5XCI6XCJvZzppbWFnZTphbHRcIixcImNvbnRlbnRcIjpcIkNvaW5saWIg4oCUIENyeXB0b2N1cnJlbmN5IFByaWNlcywgQ2hhcnRzIFx1MDAyNiBNYXJrZXQgRGF0YVwifV0sW1wiJFwiLFwibWV0YVwiLFwiMTJcIix7XCJwcm9wZXJ0eVwiOlwib2c6dHlwZVwiLFwiY29udGVudFwiOlwid2Vic2l0ZVwifV0sW1wiJFwiLFwibWV0YVwiLFwiMTNcIix7XCJuYW1lXCI6XCJ0d2l0dGVyOmNhcmRcIixcImNvbnRlbnRcIjpcInN1bW1hcnlfbGFyZ2VfaW1hZ2VcIn1dLFtcIiRcIixcIm1ldGFcIixcIjE0XCIse1wibmFtZVwiOlwidHdpdHRlcjp0aXRsZVwiLFwiY29udGVudFwiOlwiQ29pbmxpYiDigJQgQ3J5cHRvY3VycmVuY3kgUHJpY2VzLCBDaGFydHMgXHUwMDI2IE1hcmtldCBEYXRhXCJ9XSxbXCIkXCIsXCJtZXRhXCIsXCIxNVwiLHtcIm5hbWVcIjpcInR3aXR0ZXI6ZGVzY3JpcHRpb25cIixcImNvbnRlbnRcIjpcIlRyYWNrIHJlYWwtdGltZSBjcnlwdG9jdXJyZW5jeSBwcmljZXMsIG1hcmtldCBjYXAsIGNoYXJ0cywgYW5kIHBvcnRmb2xpby4gRXhwbG9yZSB0aG91c2FuZHMgb2YgY29pbnMgYW5kIGV4Y2hhbmdlcyB3aXRoIENvaW5saWIuXCJ9XSxbXCIkXCIsXCJtZXRhXCIsXCIxNlwiLHtcIm5hbWVcIjpcInR3aXR0ZXI6aW1hZ2VcIixcImNvbnRlbnRcIjpcImh0dHBzOi8vY29pbmxpYi5pby9vZy9kZWZhdWx0LnBuZ1wifV0sW1wiJFwiLFwibGlua1wiLFwiMTdcIix7XCJyZWxcIjpcImljb25cIixcImhyZWZcIjpcIi9mYXZpY29uLmljbz9mYXZpY29uLjM5MGUxMTA5Lmljb1wiLFwic2l6ZXNcIjpcIjQ4eDQ4XCIsXCJ0eXBlXCI6XCJpbWFnZS94LWljb25cIn1dLFtcIiRcIixcImxpbmtcIixcIjE4XCIse1wicmVsXCI6XCJhcHBsZS10b3VjaC1pY29uXCIsXCJocmVmXCI6XCIvbG9nb3MvYXBwbGUtdG91Y2gtaWNvbi5wbmdcIn1dLFtcIiRcIixcIiRMMTZcIixcIjE5XCIse31dXVxuIl0pPC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSJtb2R1bGUiIHNyYz0iaHR0cHM6Ly9zdGF0aWMuY2xvdWRmbGFyZWluc2lnaHRzLmNvbS9iZWFjb24ubWluLmpzL3Y0NTEzMjI2Y2RhZTM0NzQ2YjRkZWRmMGI0ZGZhMDk5ZTE3ODE3OTE1MDk0OTYiIGludGVncml0eT0ic2hhNTEyLVpFOXBaYVVYTkQ2NnYzODBRVXRjaC81c0U5dFBGaDJ6ZzQ1cFIyUEIwQ1ZrQ3RPUkV2MkFKS2tTaWRJU1dreXNFdVEwRUg4ZmFVVTVkdTc4Yng4N1VRPT0iIGRhdGEtY2YtYmVhY29uPSd7InZlcnNpb24iOiIyMDI0LjExLjAiLCJ0b2tlbiI6IjdkZjcwOGZjZmFhMDRhNjRhYjNiNWU4NmUzMTBkZjVhIiwiciI6MX0nIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiPjwvc2NyaXB0Pgo8L2JvZHk+PC9odG1sPg=="}},"time_used":49,"timings":{"blocked":3,"dns":4,"connect":0,"send":0,"wait":36,"receive":6,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/4911410e5153f0d7.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.125Z","timestamp":1785158433125,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/4911410e5153f0d7.js HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: *\r\nage: 3845949\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"4911410e5153f0d7.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\netag: W/\"e09a94d1ed13e73c8c05e86ecc9b73b5\"\r\nlast-modified: Sat, 13 Jun 2026 00:50:11 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/4911410e5153f0d7.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::5pnv4-1781312483646-99b0a50f7685\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=g%2FSW6LTYXrwXhwb0YXX6jUntzgqxxh%2B6xdnkWJryYM8zQRpLsdJGbxk6zLcHOnJIAkmhgUO2WxgFtOsqDqsBVwr5h8PPTO%2For%2BehNj2s%2Bd2NBP9yk6juu8naStHy\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21bf12f083556b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":224417,"size_decoded":73405,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (65536), with no line terminators","md5":"e09a94d1ed13e73c8c05e86ecc9b73b5","sha1":"5d3e0e86e66f40d854564417d18b9a8cfb50938f","sha256":"bdeee3ad5435b26f62f6a8ce700f78618b18b355f3d3cd21ec3949a59777eaf5","sha512":"7d4e4220b8c82da8621e7f0ae1bfdb323ed094215712b54bfd28ed06e06e0aa9aded8bc0f07eb71ea08e821f75d433c38522d2054e9756e34814622cf8957899","ssdeep":"3072:LZhLWlPznn2U1BR0Bef8xgVrkRMKTopmN6Cstv9it+QK:LZhLWxznn2U1sWK04xstv9it+QK","tlshash":"66240be83995f6626ab302a710af1803733c252b280d4d60a711fdddb57845eb17bf9e","first_seen":"2026-02-04T14:24:19.892015Z","last_seen":"2026-08-17T21:34:38.570387Z","times_seen":2113,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDc4NzUsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KG4sImdldEFzc2V0UHJlZml4Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbH19KTtsZXQgcj1lLnIoNDEwNjIpO2Z1bmN0aW9uIGwoKXtsZXQgZT1kb2N1bWVudC5jdXJyZW50U2NyaXB0O2lmKCEoZSBpbnN0YW5jZW9mIEhUTUxTY3JpcHRFbGVtZW50KSl0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHIuSW52YXJpYW50RXJyb3IoYEV4cGVjdGVkIGRvY3VtZW50LmN1cnJlbnRTY3JpcHQgdG8gYmUgYSA8c2NyaXB0PiBlbGVtZW50LiBSZWNlaXZlZCAke2V9IGluc3RlYWQuYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3ODMiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7bGV0e3BhdGhuYW1lOnR9PW5ldyBVUkwoZS5zcmMpLG49dC5pbmRleE9mKCIvX25leHQvIik7aWYoLTE9PT1uKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgci5JbnZhcmlhbnRFcnJvcihgRXhwZWN0ZWQgZG9jdW1lbnQuY3VycmVudFNjcmlwdCBzcmMgdG8gY29udGFpbiAnL19uZXh0LycuIFJlY2VpdmVkICR7ZS5zcmN9IGluc3RlYWQuYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3ODQiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7cmV0dXJuIHQuc2xpY2UoMCxuKX0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSwxNTUzNiwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwic2V0QXR0cmlidXRlc0Zyb21Qcm9wcyIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG99fSk7bGV0IHI9e2FjY2VwdENoYXJzZXQ6ImFjY2VwdC1jaGFyc2V0IixjbGFzc05hbWU6ImNsYXNzIixodG1sRm9yOiJmb3IiLGh0dHBFcXVpdjoiaHR0cC1lcXVpdiIsbm9Nb2R1bGU6Im5vTW9kdWxlIn0sbD1bIm9uTG9hZCIsIm9uUmVhZHkiLCJkYW5nZXJvdXNseVNldElubmVySFRNTCIsImNoaWxkcmVuIiwib25FcnJvciIsInN0cmF0ZWd5Iiwic3R5bGVzaGVldHMiXTtmdW5jdGlvbiBhKGUpe3JldHVyblsiYXN5bmMiLCJkZWZlciIsIm5vTW9kdWxlIl0uaW5jbHVkZXMoZSl9ZnVuY3Rpb24gbyhlLHQpe2ZvcihsZXRbbixvXW9mIE9iamVjdC5lbnRyaWVzKHQpKXtpZighdC5oYXNPd25Qcm9wZXJ0eShuKXx8bC5pbmNsdWRlcyhuKXx8dm9pZCAwPT09byljb250aW51ZTtsZXQgaT1yW25dfHxuLnRvTG93ZXJDYXNlKCk7IlNDUklQVCI9PT1lLnRhZ05hbWUmJmEoaSk/ZVtpXT0hIW86ZS5zZXRBdHRyaWJ1dGUoaSxTdHJpbmcobykpLCghMT09PW98fCJTQ1JJUFQiPT09ZS50YWdOYW1lJiZhKGkpJiYoIW98fCJmYWxzZSI9PT1vKSkmJihlLnNldEF0dHJpYnV0ZShpLCIiKSxlLnJlbW92ZUF0dHJpYnV0ZShpKSl9fSgiZnVuY3Rpb24iPT10eXBlb2Ygbi5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIG4uZGVmYXVsdCYmbnVsbCE9PW4uZGVmYXVsdCkmJnZvaWQgMD09PW4uZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KG4uZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihuLmRlZmF1bHQsbiksdC5leHBvcnRzPW4uZGVmYXVsdCl9LDQ4NzA2LChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJhcHBCb290c3RyYXAiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCByPWUucig3ODc1KSxsPWUucigxNTUzNik7ZnVuY3Rpb24gYShlKXt2YXIgdCxuO2xldCBhPSgwLHIuZ2V0QXNzZXRQcmVmaXgpKCk7dD1zZWxmLl9fbmV4dF9zLG49KCk9PntlKGEpfSx0JiZ0Lmxlbmd0aD90LnJlZHVjZSgoZSxbdCxuXSk9PmUudGhlbigoKT0+bmV3IFByb21pc2UoKGUscik9PntsZXQgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtuJiYoMCxsLnNldEF0dHJpYnV0ZXNGcm9tUHJvcHMpKGEsbiksdD8oYS5zcmM9dCxhLm9ubG9hZD0oKT0+ZSgpLGEub25lcnJvcj1yKTpuJiYoYS5pbm5lckhUTUw9bi5jaGlsZHJlbixzZXRUaW1lb3V0KGUpKSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGEpfSkpLFByb21pc2UucmVzb2x2ZSgpKS5jYXRjaChlPT57Y29uc29sZS5lcnJvcihlKX0pLnRoZW4oKCk9PntuKCl9KTpuKCl9d2luZG93Lm5leHQ9e3ZlcnNpb246IjE2LjEuNiIsYXBwRGlyOiEwfSwoImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSw4NTQ3OSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgcj17Z2V0T2JqZWN0Q2xhc3NMYWJlbDpmdW5jdGlvbigpe3JldHVybiBhfSxpc1BsYWluT2JqZWN0OmZ1bmN0aW9uKCl7cmV0dXJuIG99fTtmb3IodmFyIGwgaW4gcilPYmplY3QuZGVmaW5lUHJvcGVydHkobixsLHtlbnVtZXJhYmxlOiEwLGdldDpyW2xdfSk7ZnVuY3Rpb24gYShlKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpfWZ1bmN0aW9uIG8oZSl7aWYoIltvYmplY3QgT2JqZWN0XSIhPT1hKGUpKXJldHVybiExO2xldCB0PU9iamVjdC5nZXRQcm90b3R5cGVPZihlKTtyZXR1cm4gbnVsbD09PXR8fHQuaGFzT3duUHJvcGVydHkoImlzUHJvdG90eXBlT2YiKX19LDgwOTQwLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciByPXtkZWZhdWx0OmZ1bmN0aW9uKCl7cmV0dXJuIG99LGdldFByb3BlckVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIGl9fTtmb3IodmFyIGwgaW4gcilPYmplY3QuZGVmaW5lUHJvcGVydHkobixsLHtlbnVtZXJhYmxlOiEwLGdldDpyW2xdfSk7bGV0IGE9ZS5yKDg1NDc5KTtmdW5jdGlvbiBvKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJiJuYW1lImluIGUmJiJtZXNzYWdlImluIGV9ZnVuY3Rpb24gaShlKXtsZXQgdDtyZXR1cm4gbyhlKT9lOk9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigoMCxhLmlzUGxhaW5PYmplY3QpKGUpPyh0PW5ldyBXZWFrU2V0LEpTT04uc3RyaW5naWZ5KGUsKGUsbik9PntpZigib2JqZWN0Ij09dHlwZW9mIG4mJm51bGwhPT1uKXtpZih0LmhhcyhuKSlyZXR1cm4iW0NpcmN1bGFyXSI7dC5hZGQobil9cmV0dXJuIG59KSk6ZSsiIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkUzOTQiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9fSwxNzc0OCwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwicmVwb3J0R2xvYmFsRXJyb3IiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiByfX0pO2xldCByPSJmdW5jdGlvbiI9PXR5cGVvZiByZXBvcnRFcnJvcj9yZXBvcnRFcnJvcjplPT57Z2xvYmFsVGhpcy5jb25zb2xlLmVycm9yKGUpfTsoImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSwzMjc5MywoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgcj17aXNSZWNvdmVyYWJsZUVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIGN9LG9uUmVjb3ZlcmFibGVFcnJvcjpmdW5jdGlvbigpe3JldHVybiBmfX07Zm9yKHZhciBsIGluIHIpT2JqZWN0LmRlZmluZVByb3BlcnR5KG4sbCx7ZW51bWVyYWJsZTohMCxnZXQ6cltsXX0pO2xldCBhPWUucig4MTI1OCksbz1lLnIoODQwODIpLGk9YS5fKGUucig4MDk0MCkpLHU9ZS5yKDE3NzQ4KSxzPW5ldyBXZWFrU2V0O2Z1bmN0aW9uIGMoZSl7cmV0dXJuIHMuaGFzKGUpfWxldCBmPWU9PntsZXQgdD0oMCxpLmRlZmF1bHQpKGUpJiYiY2F1c2UiaW4gZT9lLmNhdXNlOmU7KDAsby5pc0JhaWxvdXRUb0NTUkVycm9yKSh0KXx8KDAsdS5yZXBvcnRHbG9iYWxFcnJvcikodCl9OygiZnVuY3Rpb24iPT10eXBlb2Ygbi5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIG4uZGVmYXVsdCYmbnVsbCE9PW4uZGVmYXVsdCkmJnZvaWQgMD09PW4uZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KG4uZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihuLmRlZmF1bHQsbiksdC5leHBvcnRzPW4uZGVmYXVsdCl9LDkyMzg2LChlLHQsbik9PnsidXNlIHN0cmljdCI7dC5leHBvcnRzPXt9fSw2MDg3NywoZSx0LG4pPT57InRyaW1TdGFydCJpbiBTdHJpbmcucHJvdG90eXBlfHwoU3RyaW5nLnByb3RvdHlwZS50cmltU3RhcnQ9U3RyaW5nLnByb3RvdHlwZS50cmltTGVmdCksInRyaW1FbmQiaW4gU3RyaW5nLnByb3RvdHlwZXx8KFN0cmluZy5wcm90b3R5cGUudHJpbUVuZD1TdHJpbmcucHJvdG90eXBlLnRyaW1SaWdodCksImRlc2NyaXB0aW9uImluIFN5bWJvbC5wcm90b3R5cGV8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eShTeW1ib2wucHJvdG90eXBlLCJkZXNjcmlwdGlvbiIse2NvbmZpZ3VyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXt2YXIgZT0vXCgoLiopXCkvLmV4ZWModGhpcy50b1N0cmluZygpKTtyZXR1cm4gZT9lWzFdOnZvaWQgMH19KSxBcnJheS5wcm90b3R5cGUuZmxhdHx8KEFycmF5LnByb3RvdHlwZS5mbGF0PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ9dGhpcy5jb25jYXQuYXBwbHkoW10sdGhpcyksZT4xJiZ0LnNvbWUoQXJyYXkuaXNBcnJheSk/dC5mbGF0KGUtMSk6dH0sQXJyYXkucHJvdG90eXBlLmZsYXRNYXA9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5tYXAoZSx0KS5mbGF0KCl9KSxQcm9taXNlLnByb3RvdHlwZS5maW5hbGx5fHwoUHJvbWlzZS5wcm90b3R5cGUuZmluYWxseT1mdW5jdGlvbihlKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZSlyZXR1cm4gdGhpcy50aGVuKGUsZSk7dmFyIHQ9dGhpcy5jb25zdHJ1Y3Rvcnx8UHJvbWlzZTtyZXR1cm4gdGhpcy50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiB0LnJlc29sdmUoZSgpKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIG59KX0sZnVuY3Rpb24obil7cmV0dXJuIHQucmVzb2x2ZShlKCkpLnRoZW4oZnVuY3Rpb24oKXt0aHJvdyBufSl9KX0pLE9iamVjdC5mcm9tRW50cmllc3x8KE9iamVjdC5mcm9tRW50cmllcz1mdW5jdGlvbihlKXtyZXR1cm4gQXJyYXkuZnJvbShlKS5yZWR1Y2UoZnVuY3Rpb24oZSx0KXtyZXR1cm4gZVt0WzBdXT10WzFdLGV9LHt9KX0pLEFycmF5LnByb3RvdHlwZS5hdHx8KEFycmF5LnByb3RvdHlwZS5hdD1mdW5jdGlvbihlKXt2YXIgdD1NYXRoLnRydW5jKGUpfHwwO2lmKHQ8MCYmKHQrPXRoaXMubGVuZ3RoKSwhKHQ8MHx8dD49dGhpcy5sZW5ndGgpKXJldHVybiB0aGlzW3RdfSksT2JqZWN0Lmhhc093bnx8KE9iamVjdC5oYXNPd249ZnVuY3Rpb24oZSx0KXtpZihudWxsPT1lKXRocm93IFR5cGVFcnJvcigiQ2Fubm90IGNvbnZlcnQgdW5kZWZpbmVkIG9yIG51bGwgdG8gb2JqZWN0Iik7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChPYmplY3QoZSksdCl9KSwiY2FuUGFyc2UiaW4gVVJMfHwoVVJMLmNhblBhcnNlPWZ1bmN0aW9uKGUsdCl7dHJ5e3JldHVybiBuZXcgVVJMKGUsdCksITB9Y2F0Y2goZSl7cmV0dXJuITF9fSl9LDc5MTIzLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLGUucig2MDg3NyksKCJmdW5jdGlvbiI9PXR5cGVvZiBuLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygbi5kZWZhdWx0JiZudWxsIT09bi5kZWZhdWx0KSYmdm9pZCAwPT09bi5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKG4uZGVmYXVsdCxuKSx0LmV4cG9ydHM9bi5kZWZhdWx0KX0sNDAxNDAsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUsdCl7dmFyIG49ZS5sZW5ndGg7Zm9yKGUucHVzaCh0KTswPG47KXt2YXIgcj1uLTE+Pj4xLGw9ZVtyXTtpZigwPG8obCx0KSllW3JdPXQsZVtuXT1sLG49cjtlbHNlIGJyZWFrfX1mdW5jdGlvbiBsKGUpe3JldHVybiAwPT09ZS5sZW5ndGg/bnVsbDplWzBdfWZ1bmN0aW9uIGEoZSl7aWYoMD09PWUubGVuZ3RoKXJldHVybiBudWxsO3ZhciB0PWVbMF0sbj1lLnBvcCgpO2lmKG4hPT10KXtlWzBdPW47Zm9yKHZhciByPTAsbD1lLmxlbmd0aCxhPWw+Pj4xO3I8YTspe3ZhciBpPTIqKHIrMSktMSx1PWVbaV0scz1pKzEsYz1lW3NdO2lmKDA+byh1LG4pKXM8bCYmMD5vKGMsdSk/KGVbcl09YyxlW3NdPW4scj1zKTooZVtyXT11LGVbaV09bixyPWkpO2Vsc2UgaWYoczxsJiYwPm8oYyxuKSllW3JdPWMsZVtzXT1uLHI9cztlbHNlIGJyZWFrfX1yZXR1cm4gdH1mdW5jdGlvbiBvKGUsdCl7dmFyIG49ZS5zb3J0SW5kZXgtdC5zb3J0SW5kZXg7cmV0dXJuIDAhPT1uP246ZS5pZC10LmlkfWlmKG4udW5zdGFibGVfbm93PXZvaWQgMCwib2JqZWN0Ij09dHlwZW9mIHBlcmZvcm1hbmNlJiYiZnVuY3Rpb24iPT10eXBlb2YgcGVyZm9ybWFuY2Uubm93KXt2YXIgaSx1PXBlcmZvcm1hbmNlO24udW5zdGFibGVfbm93PWZ1bmN0aW9uKCl7cmV0dXJuIHUubm93KCl9fWVsc2V7dmFyIHM9RGF0ZSxjPXMubm93KCk7bi51bnN0YWJsZV9ub3c9ZnVuY3Rpb24oKXtyZXR1cm4gcy5ub3coKS1jfX12YXIgZj1bXSxkPVtdLHA9MSxtPW51bGwsaD0zLGc9ITEsdj0hMSx5PSExLGI9ITEsdz0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0Om51bGwsaz0iZnVuY3Rpb24iPT10eXBlb2YgY2xlYXJUaW1lb3V0P2NsZWFyVGltZW91dDpudWxsLFM9InUiPnR5cGVvZiBzZXRJbW1lZGlhdGU/c2V0SW1tZWRpYXRlOm51bGw7ZnVuY3Rpb24gRShlKXtmb3IodmFyIHQ9bChkKTtudWxsIT09dDspe2lmKG51bGw9PT10LmNhbGxiYWNrKWEoZCk7ZWxzZSBpZih0LnN0YXJ0VGltZTw9ZSlhKGQpLHQuc29ydEluZGV4PXQuZXhwaXJhdGlvblRpbWUscihmLHQpO2Vsc2UgYnJlYWs7dD1sKGQpfX1mdW5jdGlvbiB4KGUpe2lmKHk9ITEsRShlKSwhdilpZihudWxsIT09bChmKSl2PSEwLF98fChfPSEwLGkoKSk7ZWxzZXt2YXIgdD1sKGQpO251bGwhPT10JiZSKHgsdC5zdGFydFRpbWUtZSl9fXZhciBfPSExLFA9LTEsTj01LEM9LTE7ZnVuY3Rpb24gVCgpe3JldHVybiEhYnx8IShuLnVuc3RhYmxlX25vdygpLUM8Til9ZnVuY3Rpb24gTygpe2lmKGI9ITEsXyl7dmFyIGU9bi51bnN0YWJsZV9ub3coKTtDPWU7dmFyIHQ9ITA7dHJ5e2U6e3Y9ITEseSYmKHk9ITEsayhQKSxQPS0xKSxnPSEwO3ZhciByPWg7dHJ5e3Q6e2ZvcihFKGUpLG09bChmKTtudWxsIT09bSYmIShtLmV4cGlyYXRpb25UaW1lPmUmJlQoKSk7KXt2YXIgbz1tLmNhbGxiYWNrO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBvKXttLmNhbGxiYWNrPW51bGwsaD1tLnByaW9yaXR5TGV2ZWw7dmFyIHU9byhtLmV4cGlyYXRpb25UaW1lPD1lKTtpZihlPW4udW5zdGFibGVfbm93KCksImZ1bmN0aW9uIj09dHlwZW9mIHUpe20uY2FsbGJhY2s9dSxFKGUpLHQ9ITA7YnJlYWsgdH1tPT09bChmKSYmYShmKSxFKGUpfWVsc2UgYShmKTttPWwoZil9aWYobnVsbCE9PW0pdD0hMDtlbHNle3ZhciBzPWwoZCk7bnVsbCE9PXMmJlIoeCxzLnN0YXJ0VGltZS1lKSx0PSExfX1icmVhayBlfWZpbmFsbHl7bT1udWxsLGg9cixnPSExfX19ZmluYWxseXt0P2koKTpfPSExfX19aWYoImZ1bmN0aW9uIj09dHlwZW9mIFMpaT1mdW5jdGlvbigpe1MoTyl9O2Vsc2UgaWYoInUiPnR5cGVvZiBNZXNzYWdlQ2hhbm5lbCl7dmFyIHo9bmV3IE1lc3NhZ2VDaGFubmVsLEw9ei5wb3J0Mjt6LnBvcnQxLm9ubWVzc2FnZT1PLGk9ZnVuY3Rpb24oKXtMLnBvc3RNZXNzYWdlKG51bGwpfX1lbHNlIGk9ZnVuY3Rpb24oKXt3KE8sMCl9O2Z1bmN0aW9uIFIoZSx0KXtQPXcoZnVuY3Rpb24oKXtlKG4udW5zdGFibGVfbm93KCkpfSx0KX1uLnVuc3RhYmxlX0lkbGVQcmlvcml0eT01LG4udW5zdGFibGVfSW1tZWRpYXRlUHJpb3JpdHk9MSxuLnVuc3RhYmxlX0xvd1ByaW9yaXR5PTQsbi51bnN0YWJsZV9Ob3JtYWxQcmlvcml0eT0zLG4udW5zdGFibGVfUHJvZmlsaW5nPW51bGwsbi51bnN0YWJsZV9Vc2VyQmxvY2tpbmdQcmlvcml0eT0yLG4udW5zdGFibGVfY2FuY2VsQ2FsbGJhY2s9ZnVuY3Rpb24oZSl7ZS5jYWxsYmFjaz1udWxsfSxuLnVuc3RhYmxlX2ZvcmNlRnJhbWVSYXRlPWZ1bmN0aW9uKGUpezA+ZXx8MTI1PGU/Y29uc29sZS5lcnJvcigiZm9yY2VGcmFtZVJhdGUgdGFrZXMgYSBwb3NpdGl2ZSBpbnQgYmV0d2VlbiAwIGFuZCAxMjUsIGZvcmNpbmcgZnJhbWUgcmF0ZXMgaGlnaGVyIHRoYW4gMTI1IGZwcyBpcyBub3Qgc3VwcG9ydGVkIik6Tj0wPGU/TWF0aC5mbG9vcigxZTMvZSk6NX0sbi51bnN0YWJsZV9nZXRDdXJyZW50UHJpb3JpdHlMZXZlbD1mdW5jdGlvbigpe3JldHVybiBofSxuLnVuc3RhYmxlX25leHQ9ZnVuY3Rpb24oZSl7c3dpdGNoKGgpe2Nhc2UgMTpjYXNlIDI6Y2FzZSAzOnZhciB0PTM7YnJlYWs7ZGVmYXVsdDp0PWh9dmFyIG49aDtoPXQ7dHJ5e3JldHVybiBlKCl9ZmluYWxseXtoPW59fSxuLnVuc3RhYmxlX3JlcXVlc3RQYWludD1mdW5jdGlvbigpe2I9ITB9LG4udW5zdGFibGVfcnVuV2l0aFByaW9yaXR5PWZ1bmN0aW9uKGUsdCl7c3dpdGNoKGUpe2Nhc2UgMTpjYXNlIDI6Y2FzZSAzOmNhc2UgNDpjYXNlIDU6YnJlYWs7ZGVmYXVsdDplPTN9dmFyIG49aDtoPWU7dHJ5e3JldHVybiB0KCl9ZmluYWxseXtoPW59fSxuLnVuc3RhYmxlX3NjaGVkdWxlQ2FsbGJhY2s9ZnVuY3Rpb24oZSx0LGEpe3ZhciBvPW4udW5zdGFibGVfbm93KCk7c3dpdGNoKGE9Im9iamVjdCI9PXR5cGVvZiBhJiZudWxsIT09YSYmIm51bWJlciI9PXR5cGVvZihhPWEuZGVsYXkpJiYwPGE/bythOm8sZSl7Y2FzZSAxOnZhciB1PS0xO2JyZWFrO2Nhc2UgMjp1PTI1MDticmVhaztjYXNlIDU6dT0weDNmZmZmZmZmO2JyZWFrO2Nhc2UgNDp1PTFlNDticmVhaztkZWZhdWx0OnU9NWUzfXJldHVybiB1PWErdSxlPXtpZDpwKyssY2FsbGJhY2s6dCxwcmlvcml0eUxldmVsOmUsc3RhcnRUaW1lOmEsZXhwaXJhdGlvblRpbWU6dSxzb3J0SW5kZXg6LTF9LGE+bz8oZS5zb3J0SW5kZXg9YSxyKGQsZSksbnVsbD09PWwoZikmJmU9PT1sKGQpJiYoeT8oayhQKSxQPS0xKTp5PSEwLFIoeCxhLW8pKSk6KGUuc29ydEluZGV4PXUscihmLGUpLHZ8fGd8fCh2PSEwLF98fChfPSEwLGkoKSkpKSxlfSxuLnVuc3RhYmxlX3Nob3VsZFlpZWxkPVQsbi51bnN0YWJsZV93cmFwQ2FsbGJhY2s9ZnVuY3Rpb24oZSl7dmFyIHQ9aDtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgbj1oO2g9dDt0cnl7cmV0dXJuIGUuYXBwbHkodGhpcyxhcmd1bWVudHMpfWZpbmFsbHl7aD1ufX19fSwyNjQ0MywoZSx0LG4pPT57InVzZSBzdHJpY3QiO3QuZXhwb3J0cz1lLnIoNDAxNDApfSw4MjQyNCwoZSx0LG4pPT57InVzZSBzdHJpY3QiO3ZhciByLGw9ZS5pKDgyNjM3KSxhPWUucigyNjQ0Myksbz1lLnIoNzUyMDEpLGk9ZS5yKDI5MDgwKTtmdW5jdGlvbiB1KGUpe3ZhciB0PSJodHRwczovL3JlYWN0LmRldi9lcnJvcnMvIitlO2lmKDE8YXJndW1lbnRzLmxlbmd0aCl7dCs9Ij9hcmdzW109IitlbmNvZGVVUklDb21wb25lbnQoYXJndW1lbnRzWzFdKTtmb3IodmFyIG49MjtuPGFyZ3VtZW50cy5sZW5ndGg7bisrKXQrPSImYXJnc1tdPSIrZW5jb2RlVVJJQ29tcG9uZW50KGFyZ3VtZW50c1tuXSl9cmV0dXJuIk1pbmlmaWVkIFJlYWN0IGVycm9yICMiK2UrIjsgdmlzaXQgIit0KyIgZm9yIHRoZSBmdWxsIG1lc3NhZ2Ugb3IgdXNlIHRoZSBub24tbWluaWZpZWQgZGV2IGVudmlyb25tZW50IGZvciBmdWxsIGVycm9ycyBhbmQgYWRkaXRpb25hbCBoZWxwZnVsIHdhcm5pbmdzLiJ9ZnVuY3Rpb24gcyhlKXtyZXR1cm4hKCFlfHwxIT09ZS5ub2RlVHlwZSYmOSE9PWUubm9kZVR5cGUmJjExIT09ZS5ub2RlVHlwZSl9ZnVuY3Rpb24gYyhlKXt2YXIgdD1lLG49ZTtpZihlLmFsdGVybmF0ZSlmb3IoO3QucmV0dXJuOyl0PXQucmV0dXJuO2Vsc2V7ZT10O2RvIDAhPSg0MDk4Jih0PWUpLmZsYWdzKSYmKG49dC5yZXR1cm4pLGU9dC5yZXR1cm47d2hpbGUoZSl9cmV0dXJuIDM9PT10LnRhZz9uOm51bGx9ZnVuY3Rpb24gZihlKXtpZigxMz09PWUudGFnKXt2YXIgdD1lLm1lbW9pemVkU3RhdGU7aWYobnVsbD09PXQmJm51bGwhPT0oZT1lLmFsdGVybmF0ZSkmJih0PWUubWVtb2l6ZWRTdGF0ZSksbnVsbCE9PXQpcmV0dXJuIHQuZGVoeWRyYXRlZH1yZXR1cm4gbnVsbH1mdW5jdGlvbiBkKGUpe2lmKDMxPT09ZS50YWcpe3ZhciB0PWUubWVtb2l6ZWRTdGF0ZTtpZihudWxsPT09dCYmbnVsbCE9PShlPWUuYWx0ZXJuYXRlKSYmKHQ9ZS5tZW1vaXplZFN0YXRlKSxudWxsIT09dClyZXR1cm4gdC5kZWh5ZHJhdGVkfXJldHVybiBudWxsfWZ1bmN0aW9uIHAoZSl7aWYoYyhlKSE9PWUpdGhyb3cgRXJyb3IodSgxODgpKX1mdW5jdGlvbiBtKGUsdCxuLHIsbCxhKXtmb3IoO251bGwhPT1lOyl7aWYoNT09PWUudGFnJiZuKGUscixsLGEpfHwoMjIhPT1lLnRhZ3x8bnVsbD09PWUubWVtb2l6ZWRTdGF0ZSkmJih0fHw1IT09ZS50YWcpJiZtKGUuY2hpbGQsdCxuLHIsbCxhKSlyZXR1cm4hMDtlPWUuc2libGluZ31yZXR1cm4hMX1mdW5jdGlvbiBoKGUpe2ZvcihlPWUucmV0dXJuO251bGwhPT1lOyl7aWYoMz09PWUudGFnfHw1PT09ZS50YWcpcmV0dXJuIGU7ZT1lLnJldHVybn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBnKGUpe3N3aXRjaChlLnRhZyl7Y2FzZSA1OnJldHVybiBlLnN0YXRlTm9kZTtjYXNlIDM6cmV0dXJuIGUuc3RhdGVOb2RlLmNvbnRhaW5lckluZm87ZGVmYXVsdDp0aHJvdyBFcnJvcih1KDU1OSkpfX12YXIgdj1udWxsLHk9bnVsbDtmdW5jdGlvbiBiKGUpe3JldHVybiB2PWUsITB9ZnVuY3Rpb24gdyhlLHQsbil7cmV0dXJuIGU9PT1ufHxlPT09dCYmKHY9ZSwhMCl9ZnVuY3Rpb24gayhlLHQsbil7cmV0dXJuIGU9PT1uPyh5PWUsITEpOmU9PT10JiYobnVsbCE9PXkmJih2PWUpLCEwKX1mdW5jdGlvbiBTKGUpe2lmKG51bGw9PT1lKXJldHVybiBudWxsO2RvIGU9bnVsbD09PWU/bnVsbDplLnJldHVybjt3aGlsZShlJiY1IT09ZS50YWcmJjI3IT09ZS50YWcmJjMhPT1lLnRhZylyZXR1cm4gZXx8bnVsbH1mdW5jdGlvbiBFKGUsdCxuKXtmb3IodmFyIHI9MCxsPWU7bDtsPW4obCkpcisrO2w9MDtmb3IodmFyIGE9dDthO2E9bihhKSlsKys7Zm9yKDswPHItbDspZT1uKGUpLHItLTtmb3IoOzA8bC1yOyl0PW4odCksbC0tO2Zvcig7ci0tOyl7aWYoZT09PXR8fG51bGwhPT10JiZlPT09dC5hbHRlcm5hdGUpcmV0dXJuIGU7ZT1uKGUpLHQ9bih0KX1yZXR1cm4gbnVsbH12YXIgeD1PYmplY3QuYXNzaWduLF89U3ltYm9sLmZvcigicmVhY3QuZWxlbWVudCIpLFA9U3ltYm9sLmZvcigicmVhY3QudHJhbnNpdGlvbmFsLmVsZW1lbnQiKSxOPVN5bWJvbC5mb3IoInJlYWN0LnBvcnRhbCIpLEM9U3ltYm9sLmZvcigicmVhY3QuZnJhZ21lbnQiKSxUPVN5bWJvbC5mb3IoInJlYWN0LnN0cmljdF9tb2RlIiksTz1TeW1ib2wuZm9yKCJyZWFjdC5wcm9maWxlciIpLHo9U3ltYm9sLmZvcigicmVhY3QuY29uc3VtZXIiKSxMPVN5bWJvbC5mb3IoInJlYWN0LmNvbnRleHQiKSxSPVN5bWJvbC5mb3IoInJlYWN0LmZvcndhcmRfcmVmIiksTT1TeW1ib2wuZm9yKCJyZWFjdC5zdXNwZW5zZSIpLEk9U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2VfbGlzdCIpLEQ9U3ltYm9sLmZvcigicmVhY3QubWVtbyIpLEY9U3ltYm9sLmZvcigicmVhY3QubGF6eSIpO1N5bWJvbC5mb3IoInJlYWN0LnNjb3BlIik7dmFyIEE9U3ltYm9sLmZvcigicmVhY3QuYWN0aXZpdHkiKSxqPVN5bWJvbC5mb3IoInJlYWN0LmxlZ2FjeV9oaWRkZW4iKTtTeW1ib2wuZm9yKCJyZWFjdC50cmFjaW5nX21hcmtlciIpO3ZhciBVPVN5bWJvbC5mb3IoInJlYWN0Lm1lbW9fY2FjaGVfc2VudGluZWwiKSxCPVN5bWJvbC5mb3IoInJlYWN0LnZpZXdfdHJhbnNpdGlvbiIpLFY9U3ltYm9sLml0ZXJhdG9yO2Z1bmN0aW9uIEgoZSl7cmV0dXJuIG51bGw9PT1lfHwib2JqZWN0IiE9dHlwZW9mIGU/bnVsbDoiZnVuY3Rpb24iPT10eXBlb2YoZT1WJiZlW1ZdfHxlWyJAQGl0ZXJhdG9yIl0pP2U6bnVsbH12YXIgJD1TeW1ib2wuZm9yKCJyZWFjdC5jbGllbnQucmVmZXJlbmNlIiksUT1BcnJheS5pc0FycmF5LFc9by5fX0NMSUVOVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9XQVJOX1VTRVJTX1RIRVlfQ0FOTk9UX1VQR1JBREUscT1pLl9fRE9NX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1dBUk5fVVNFUlNfVEhFWV9DQU5OT1RfVVBHUkFERSxLPXtwZW5kaW5nOiExLGRhdGE6bnVsbCxtZXRob2Q6bnVsbCxhY3Rpb246bnVsbH0sWD1bXSxHPS0xO2Z1bmN0aW9uIFkoZSl7cmV0dXJue2N1cnJlbnQ6ZX19ZnVuY3Rpb24gSihlKXswPkd8fChlLmN1cnJlbnQ9WFtHXSxYW0ddPW51bGwsRy0tKX1mdW5jdGlvbiBaKGUsdCl7WFsrK0ddPWUuY3VycmVudCxlLmN1cnJlbnQ9dH12YXIgZWU9WShudWxsKSxldD1ZKG51bGwpLGVuPVkobnVsbCksZXI9WShudWxsKTtmdW5jdGlvbiBlbChlLHQpe3N3aXRjaChaKGVuLHQpLFooZXQsZSksWihlZSxudWxsKSx0Lm5vZGVUeXBlKXtjYXNlIDk6Y2FzZSAxMTplPShlPXQuZG9jdW1lbnRFbGVtZW50KSYmKGU9ZS5uYW1lc3BhY2VVUkkpP2NzKGUpOjA7YnJlYWs7ZGVmYXVsdDppZihlPXQudGFnTmFtZSx0PXQubmFtZXNwYWNlVVJJKWU9Y2ModD1jcyh0KSxlKTtlbHNlIHN3aXRjaChlKXtjYXNlInN2ZyI6ZT0xO2JyZWFrO2Nhc2UibWF0aCI6ZT0yO2JyZWFrO2RlZmF1bHQ6ZT0wfX1KKGVlKSxaKGVlLGUpfWZ1bmN0aW9uIGVhKCl7SihlZSksSihldCksSihlbil9ZnVuY3Rpb24gZW8oZSl7dmFyIHQ9ZS5tZW1vaXplZFN0YXRlO251bGwhPT10JiYoZnYuX2N1cnJlbnRWYWx1ZT10Lm1lbW9pemVkU3RhdGUsWihlcixlKSk7dmFyIG49Y2ModD1lZS5jdXJyZW50LGUudHlwZSk7dCE9PW4mJihaKGV0LGUpLFooZWUsbikpfWZ1bmN0aW9uIGVpKGUpe2V0LmN1cnJlbnQ9PT1lJiYoSihlZSksSihldCkpLGVyLmN1cnJlbnQ9PT1lJiYoSihlciksZnYuX2N1cnJlbnRWYWx1ZT1LKX1mdW5jdGlvbiBldShlKXtpZih2b2lkIDA9PT10WCl0cnl7dGhyb3cgRXJyb3IoKX1jYXRjaChlKXt2YXIgdD1lLnN0YWNrLnRyaW0oKS5tYXRjaCgvXG4oICooYXQgKT8pLyk7dFg9dCYmdFsxXXx8IiIsdEc9LTE8ZS5zdGFjay5pbmRleE9mKCJcbiAgICBhdCIpPyIgKDxhbm9ueW1vdXM+KSI6LTE8ZS5zdGFjay5pbmRleE9mKCJAIik/IkB1bmtub3duOjA6MCI6IiJ9cmV0dXJuIlxuIit0WCtlK3RHfXZhciBlcz0hMTtmdW5jdGlvbiBlYyhlLHQpe2lmKCFlfHxlcylyZXR1cm4iIjtlcz0hMDt2YXIgbj1FcnJvci5wcmVwYXJlU3RhY2tUcmFjZTtFcnJvci5wcmVwYXJlU3RhY2tUcmFjZT12b2lkIDA7dHJ5e3ZhciByPXtEZXRlcm1pbmVDb21wb25lbnRGcmFtZVJvb3Q6ZnVuY3Rpb24oKXt0cnl7aWYodCl7dmFyIG49ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigpfTtpZihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5wcm90b3R5cGUsInByb3BzIix7c2V0OmZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoKX19KSwib2JqZWN0Ij09dHlwZW9mIFJlZmxlY3QmJlJlZmxlY3QuY29uc3RydWN0KXt0cnl7UmVmbGVjdC5jb25zdHJ1Y3QobixbXSl9Y2F0Y2goZSl7dmFyIHI9ZX1SZWZsZWN0LmNvbnN0cnVjdChlLFtdLG4pfWVsc2V7dHJ5e24uY2FsbCgpfWNhdGNoKGUpe3I9ZX1lLmNhbGwobi5wcm90b3R5cGUpfX1lbHNle3RyeXt0aHJvdyBFcnJvcigpfWNhdGNoKGUpe3I9ZX0obj1lKCkpJiYiZnVuY3Rpb24iPT10eXBlb2Ygbi5jYXRjaCYmbi5jYXRjaChmdW5jdGlvbigpe30pfX1jYXRjaChlKXtpZihlJiZyJiYic3RyaW5nIj09dHlwZW9mIGUuc3RhY2spcmV0dXJuW2Uuc3RhY2ssci5zdGFja119cmV0dXJuW251bGwsbnVsbF19fTtyLkRldGVybWluZUNvbXBvbmVudEZyYW1lUm9vdC5kaXNwbGF5TmFtZT0iRGV0ZXJtaW5lQ29tcG9uZW50RnJhbWVSb290Ijt2YXIgbD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHIuRGV0ZXJtaW5lQ29tcG9uZW50RnJhbWVSb290LCJuYW1lIik7bCYmbC5jb25maWd1cmFibGUmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLkRldGVybWluZUNvbXBvbmVudEZyYW1lUm9vdCwibmFtZSIse3ZhbHVlOiJEZXRlcm1pbmVDb21wb25lbnRGcmFtZVJvb3QifSk7dmFyIGE9ci5EZXRlcm1pbmVDb21wb25lbnRGcmFtZVJvb3QoKSxvPWFbMF0saT1hWzFdO2lmKG8mJmkpe3ZhciB1PW8uc3BsaXQoIlxuIikscz1pLnNwbGl0KCJcbiIpO2ZvcihsPXI9MDtyPHUubGVuZ3RoJiYhdVtyXS5pbmNsdWRlcygiRGV0ZXJtaW5lQ29tcG9uZW50RnJhbWVSb290Iik7KXIrKztmb3IoO2w8cy5sZW5ndGgmJiFzW2xdLmluY2x1ZGVzKCJEZXRlcm1pbmVDb21wb25lbnRGcmFtZVJvb3QiKTspbCsrO2lmKHI9PT11Lmxlbmd0aHx8bD09PXMubGVuZ3RoKWZvcihyPXUubGVuZ3RoLTEsbD1zLmxlbmd0aC0xOzE8PXImJjA8PWwmJnVbcl0hPT1zW2xdOylsLS07Zm9yKDsxPD1yJiYwPD1sO3ItLSxsLS0paWYodVtyXSE9PXNbbF0pe2lmKDEhPT1yfHwxIT09bClkbyBpZihyLS0sbC0tLDA+bHx8dVtyXSE9PXNbbF0pe3ZhciBjPSJcbiIrdVtyXS5yZXBsYWNlKCIgYXQgbmV3ICIsIiBhdCAiKTtyZXR1cm4gZS5kaXNwbGF5TmFtZSYmYy5pbmNsdWRlcygiPGFub255bW91cz4iKSYmKGM9Yy5yZXBsYWNlKCI8YW5vbnltb3VzPiIsZS5kaXNwbGF5TmFtZSkpLGN9d2hpbGUoMTw9ciYmMDw9bClicmVha319fWZpbmFsbHl7ZXM9ITEsRXJyb3IucHJlcGFyZVN0YWNrVHJhY2U9bn1yZXR1cm4obj1lP2UuZGlzcGxheU5hbWV8fGUubmFtZToiIik/ZXUobik6IiJ9ZnVuY3Rpb24gZWYoZSl7dHJ5e3ZhciB0PSIiLG49bnVsbDtkbyB0Kz1mdW5jdGlvbihlLHQpe3N3aXRjaChlLnRhZyl7Y2FzZSAyNjpjYXNlIDI3OmNhc2UgNTpyZXR1cm4gZXUoZS50eXBlKTtjYXNlIDE2OnJldHVybiBldSgiTGF6eSIpO2Nhc2UgMTM6cmV0dXJuIGUuY2hpbGQhPT10JiZudWxsIT09dD9ldSgiU3VzcGVuc2UgRmFsbGJhY2siKTpldSgiU3VzcGVuc2UiKTtjYXNlIDE5OnJldHVybiBldSgiU3VzcGVuc2VMaXN0Iik7Y2FzZSAwOmNhc2UgMTU6cmV0dXJuIGVjKGUudHlwZSwhMSk7Y2FzZSAxMTpyZXR1cm4gZWMoZS50eXBlLnJlbmRlciwhMSk7Y2FzZSAxOnJldHVybiBlYyhlLnR5cGUsITApO2Nhc2UgMzE6cmV0dXJuIGV1KCJBY3Rpdml0eSIpO2Nhc2UgMzA6cmV0dXJuIGV1KCJWaWV3VHJhbnNpdGlvbiIpO2RlZmF1bHQ6cmV0dXJuIiJ9fShlLG4pLG49ZSxlPWUucmV0dXJuO3doaWxlKGUpcmV0dXJuIHR9Y2F0Y2goZSl7cmV0dXJuIlxuRXJyb3IgZ2VuZXJhdGluZyBzdGFjazogIitlLm1lc3NhZ2UrIlxuIitlLnN0YWNrfX12YXIgZWQ9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxlcD1hLnVuc3RhYmxlX3NjaGVkdWxlQ2FsbGJhY2ssZW09YS51bnN0YWJsZV9jYW5jZWxDYWxsYmFjayxlaD1hLnVuc3RhYmxlX3Nob3VsZFlpZWxkLGVnPWEudW5zdGFibGVfcmVxdWVzdFBhaW50LGV2PWEudW5zdGFibGVfbm93LGV5PWEudW5zdGFibGVfZ2V0Q3VycmVudFByaW9yaXR5TGV2ZWwsZWI9YS51bnN0YWJsZV9JbW1lZGlhdGVQcmlvcml0eSxldz1hLnVuc3RhYmxlX1VzZXJCbG9ja2luZ1ByaW9yaXR5LGVrPWEudW5zdGFibGVfTm9ybWFsUHJpb3JpdHksZVM9YS51bnN0YWJsZV9Mb3dQcmlvcml0eSxlRT1hLnVuc3RhYmxlX0lkbGVQcmlvcml0eSxleD0oYS5sb2csYS51bnN0YWJsZV9zZXREaXNhYmxlWWllbGRWYWx1ZSxudWxsKSxlXz1udWxsLGVQPU1hdGguY2x6MzI/TWF0aC5jbHozMjpmdW5jdGlvbihlKXtyZXR1cm4gMD09KGU+Pj49MCk/MzI6MzEtKGVOKGUpL2VDfDApfDB9LGVOPU1hdGgubG9nLGVDPU1hdGguTE4yLGVUPTI1NixlTz0yNjIxNDQsZXo9NDE5NDMwNDtmdW5jdGlvbiBlTChlKXt2YXIgdD00MiZlO2lmKDAhPT10KXJldHVybiB0O3N3aXRjaChlJi1lKXtjYXNlIDE6cmV0dXJuIDE7Y2FzZSAyOnJldHVybiAyO2Nhc2UgNDpyZXR1cm4gNDtjYXNlIDg6cmV0dXJuIDg7Y2FzZSAxNjpyZXR1cm4gMTY7Y2FzZSAzMjpyZXR1cm4gMzI7Y2FzZSA2NDpyZXR1cm4gNjQ7Y2FzZSAxMjg6cmV0dXJuIDEyODtjYXNlIDI1NjpjYXNlIDUxMjpjYXNlIDEwMjQ6Y2FzZSAyMDQ4OmNhc2UgNDA5NjpjYXNlIDgxOTI6Y2FzZSAxNjM4NDpjYXNlIDMyNzY4OmNhc2UgNjU1MzY6Y2FzZSAxMzEwNzI6cmV0dXJuIDI2MTg4OCZlO2Nhc2UgMjYyMTQ0OmNhc2UgNTI0Mjg4OmNhc2UgMTA0ODU3NjpjYXNlIDIwOTcxNTI6cmV0dXJuIDM5MzIxNjAmZTtjYXNlIDQxOTQzMDQ6Y2FzZSA4Mzg4NjA4OmNhc2UgMHgxMDAwMDAwOmNhc2UgMHgyMDAwMDAwOnJldHVybiAweDNjMDAwMDAmZTtjYXNlIDB4NDAwMDAwMDpyZXR1cm4gMHg0MDAwMDAwO2Nhc2UgMHg4MDAwMDAwOnJldHVybiAweDgwMDAwMDA7Y2FzZSAweDEwMDAwMDAwOnJldHVybiAweDEwMDAwMDAwO2Nhc2UgMHgyMDAwMDAwMDpyZXR1cm4gMHgyMDAwMDAwMDtjYXNlIDB4NDAwMDAwMDA6cmV0dXJuIDA7ZGVmYXVsdDpyZXR1cm4gZX19ZnVuY3Rpb24gZVIoZSx0LG4pe3ZhciByPWUucGVuZGluZ0xhbmVzO2lmKDA9PT1yKXJldHVybiAwO3ZhciBsPTAsYT1lLnN1c3BlbmRlZExhbmVzLG89ZS5waW5nZWRMYW5lcztlPWUud2FybUxhbmVzO3ZhciBpPTB4N2ZmZmZmZiZyO3JldHVybiAwIT09aT8wIT0ocj1pJn5hKT9sPWVMKHIpOjAhPShvJj1pKT9sPWVMKG8pOm58fDAhPShuPWkmfmUpJiYobD1lTChuKSk6MCE9KGk9ciZ+YSk/bD1lTChpKTowIT09bz9sPWVMKG8pOm58fDAhPShuPXImfmUpJiYobD1lTChuKSksMD09PWw/MDowIT09dCYmdCE9PWwmJjA9PSh0JmEpJiYoKGE9bCYtbCk+PShuPXQmLXQpfHwzMj09PWEmJjAhPSg0MTk0MDQ4Jm4pKT90Omx9ZnVuY3Rpb24gZU0oZSx0KXtyZXR1cm4gMD09KGUucGVuZGluZ0xhbmVzJn4oZS5zdXNwZW5kZWRMYW5lcyZ+ZS5waW5nZWRMYW5lcykmdCl9ZnVuY3Rpb24gZUkoKXt2YXIgZT1lejtyZXR1cm4gMD09KDB4M2MwMDAwMCYoZXo8PD0xKSkmJihlej00MTk0MzA0KSxlfWZ1bmN0aW9uIGVEKGUpe2Zvcih2YXIgdD1bXSxuPTA7MzE+bjtuKyspdC5wdXNoKGUpO3JldHVybiB0fWZ1bmN0aW9uIGVGKGUsdCl7ZS5wZW5kaW5nTGFuZXN8PXQsMHgxMDAwMDAwMCE9PXQmJihlLnN1c3BlbmRlZExhbmVzPTAsZS5waW5nZWRMYW5lcz0wLGUud2FybUxhbmVzPTApfWZ1bmN0aW9uIGVBKGUsdCxuKXtlLnBlbmRpbmdMYW5lc3w9dCxlLnN1c3BlbmRlZExhbmVzJj1+dDt2YXIgcj0zMS1lUCh0KTtlLmVudGFuZ2xlZExhbmVzfD10LGUuZW50YW5nbGVtZW50c1tyXT0weDQwMDAwMDAwfGUuZW50YW5nbGVtZW50c1tyXXwyNjE5MzAmbn1mdW5jdGlvbiBlaihlLHQpe3ZhciBuPWUuZW50YW5nbGVkTGFuZXN8PXQ7Zm9yKGU9ZS5lbnRhbmdsZW1lbnRzO247KXt2YXIgcj0zMS1lUChuKSxsPTE8PHI7bCZ0fGVbcl0mdCYmKGVbcl18PXQpLG4mPX5sfX1mdW5jdGlvbiBlVShlLHQpe3ZhciBuPXQmLXQ7cmV0dXJuIDAhPSgobj0wIT0oNDImbik/MTplQihuKSkmKGUuc3VzcGVuZGVkTGFuZXN8dCkpPzA6bn1mdW5jdGlvbiBlQihlKXtzd2l0Y2goZSl7Y2FzZSAyOmU9MTticmVhaztjYXNlIDg6ZT00O2JyZWFrO2Nhc2UgMzI6ZT0xNjticmVhaztjYXNlIDI1NjpjYXNlIDUxMjpjYXNlIDEwMjQ6Y2FzZSAyMDQ4OmNhc2UgNDA5NjpjYXNlIDgxOTI6Y2FzZSAxNjM4NDpjYXNlIDMyNzY4OmNhc2UgNjU1MzY6Y2FzZSAxMzEwNzI6Y2FzZSAyNjIxNDQ6Y2FzZSA1MjQyODg6Y2FzZSAxMDQ4NTc2OmNhc2UgMjA5NzE1MjpjYXNlIDQxOTQzMDQ6Y2FzZSA4Mzg4NjA4OmNhc2UgMHgxMDAwMDAwOmNhc2UgMHgyMDAwMDAwOmU9MTI4O2JyZWFrO2Nhc2UgMHgxMDAwMDAwMDplPTB4ODAwMDAwMDticmVhaztkZWZhdWx0OmU9MH1yZXR1cm4gZX1mdW5jdGlvbiBlVihlKXtyZXR1cm4gMjwoZSY9LWUpPzg8ZT8wIT0oMHg3ZmZmZmZmJmUpPzMyOjB4MTAwMDAwMDA6ODoyfWZ1bmN0aW9uIGVIKCl7dmFyIGU9cS5wO3JldHVybiAwIT09ZT9lOnZvaWQgMD09PShlPXdpbmRvdy5ldmVudCk/MzI6ZkwoZS50eXBlKX1mdW5jdGlvbiBlJChlLHQpe3ZhciBuPXEucDt0cnl7cmV0dXJuIHEucD1lLHQoKX1maW5hbGx5e3EucD1ufX12YXIgZVE9TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc2xpY2UoMiksZVc9Il9fcmVhY3RGaWJlciQiK2VRLGVxPSJfX3JlYWN0UHJvcHMkIitlUSxlSz0iX19yZWFjdENvbnRhaW5lciQiK2VRLGVYPSJfX3JlYWN0RXZlbnRzJCIrZVEsZUc9Il9fcmVhY3RMaXN0ZW5lcnMkIitlUSxlWT0iX19yZWFjdEhhbmRsZXMkIitlUSxlSj0iX19yZWFjdFJlc291cmNlcyQiK2VRLGVaPSJfX3JlYWN0TWFya2VyJCIrZVE7ZnVuY3Rpb24gZTAoZSl7ZGVsZXRlIGVbZVddLGRlbGV0ZSBlW2VxXSxkZWxldGUgZVtlWF0sZGVsZXRlIGVbZUddLGRlbGV0ZSBlW2VZXX1mdW5jdGlvbiBlMShlKXt2YXIgdDtpZih0PWVbZVddKXJldHVybiB0O2Zvcih2YXIgbj1lLnBhcmVudE5vZGU7bjspe2lmKHQ9bltlS118fG5bZVddKXtpZihuPXQuYWx0ZXJuYXRlLG51bGwhPT10LmNoaWxkfHxudWxsIT09biYmbnVsbCE9PW4uY2hpbGQpZm9yKGU9Y0soZSk7bnVsbCE9PWU7KXtpZihuPWVbZVddKXJldHVybiBuO2U9Y0soZSl9cmV0dXJuIHR9bj0oZT1uKS5wYXJlbnROb2RlfXJldHVybiBudWxsfWZ1bmN0aW9uIGUyKGUpe2lmKGU9ZVtlV118fGVbZUtdKXt2YXIgdD1lLnRhZztpZig1PT09dHx8Nj09PXR8fDEzPT09dHx8MzE9PT10fHwyNj09PXR8fDI3PT09dHx8Mz09PXQpcmV0dXJuIGV9cmV0dXJuIG51bGx9ZnVuY3Rpb24gZTMoZSl7dmFyIHQ9ZS50YWc7aWYoNT09PXR8fDI2PT09dHx8Mjc9PT10fHw2PT09dClyZXR1cm4gZS5zdGF0ZU5vZGU7dGhyb3cgRXJyb3IodSgzMykpfWZ1bmN0aW9uIGU0KGUpe3ZhciB0PWVbZUpdO3JldHVybiB0fHwodD1lW2VKXT17aG9pc3RhYmxlU3R5bGVzOm5ldyBNYXAsaG9pc3RhYmxlU2NyaXB0czpuZXcgTWFwfSksdH1mdW5jdGlvbiBlOChlKXtlW2VaXT0hMH12YXIgZTU9bmV3IFNldCxlNj17fTtmdW5jdGlvbiBlOShlLHQpe2U3KGUsdCksZTcoZSsiQ2FwdHVyZSIsdCl9ZnVuY3Rpb24gZTcoZSx0KXtmb3IoZTZbZV09dCxlPTA7ZTx0Lmxlbmd0aDtlKyspZTUuYWRkKHRbZV0pfXZhciB0ZT1SZWdFeHAoIl5bOkEtWl9hLXpcXHUwMEMwLVxcdTAwRDZcXHUwMEQ4LVxcdTAwRjZcXHUwMEY4LVxcdTAyRkZcXHUwMzcwLVxcdTAzN0RcXHUwMzdGLVxcdTFGRkZcXHUyMDBDLVxcdTIwMERcXHUyMDcwLVxcdTIxOEZcXHUyQzAwLVxcdTJGRUZcXHUzMDAxLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRkRdWzpBLVpfYS16XFx1MDBDMC1cXHUwMEQ2XFx1MDBEOC1cXHUwMEY2XFx1MDBGOC1cXHUwMkZGXFx1MDM3MC1cXHUwMzdEXFx1MDM3Ri1cXHUxRkZGXFx1MjAwQy1cXHUyMDBEXFx1MjA3MC1cXHUyMThGXFx1MkMwMC1cXHUyRkVGXFx1MzAwMS1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkZEXFwtLjAtOVxcdTAwQjdcXHUwMzAwLVxcdTAzNkZcXHUyMDNGLVxcdTIwNDBdKiQiKSx0dD17fSx0bj17fSx0cj0hMTtmdW5jdGlvbiB0bCgpe3ZhciBlPXRyO3JldHVybiB0cj0hMSxlfWZ1bmN0aW9uIHRhKGUsdCxuKXtpZihlZC5jYWxsKHRuLHQpfHwhZWQuY2FsbCh0dCx0KSYmKHRlLnRlc3QodCk/dG5bdF09ITA6KHR0W3RdPSEwLCExKSkpaWYobnVsbD09PW4pZS5yZW1vdmVBdHRyaWJ1dGUodCk7ZWxzZXtzd2l0Y2godHlwZW9mIG4pe2Nhc2UidW5kZWZpbmVkIjpjYXNlImZ1bmN0aW9uIjpjYXNlInN5bWJvbCI6ZS5yZW1vdmVBdHRyaWJ1dGUodCk7cmV0dXJuO2Nhc2UiYm9vbGVhbiI6dmFyIHI9dC50b0xvd2VyQ2FzZSgpLnNsaWNlKDAsNSk7aWYoImRhdGEtIiE9PXImJiJhcmlhLSIhPT1yKXJldHVybiB2b2lkIGUucmVtb3ZlQXR0cmlidXRlKHQpfWUuc2V0QXR0cmlidXRlKHQsIiIrbil9fWZ1bmN0aW9uIHRvKGUsdCxuKXtpZihudWxsPT09billLnJlbW92ZUF0dHJpYnV0ZSh0KTtlbHNle3N3aXRjaCh0eXBlb2Ygbil7Y2FzZSJ1bmRlZmluZWQiOmNhc2UiZnVuY3Rpb24iOmNhc2Uic3ltYm9sIjpjYXNlImJvb2xlYW4iOmUucmVtb3ZlQXR0cmlidXRlKHQpO3JldHVybn1lLnNldEF0dHJpYnV0ZSh0LCIiK24pfX1mdW5jdGlvbiB0aShlLHQsbixyKXtpZihudWxsPT09cillLnJlbW92ZUF0dHJpYnV0ZShuKTtlbHNle3N3aXRjaCh0eXBlb2Ygcil7Y2FzZSJ1bmRlZmluZWQiOmNhc2UiZnVuY3Rpb24iOmNhc2Uic3ltYm9sIjpjYXNlImJvb2xlYW4iOmUucmVtb3ZlQXR0cmlidXRlKG4pO3JldHVybn1lLnNldEF0dHJpYnV0ZU5TKHQsbiwiIityKX19ZnVuY3Rpb24gdHUoZSl7c3dpdGNoKHR5cGVvZiBlKXtjYXNlImJpZ2ludCI6Y2FzZSJib29sZWFuIjpjYXNlIm51bWJlciI6Y2FzZSJzdHJpbmciOmNhc2UidW5kZWZpbmVkIjpjYXNlIm9iamVjdCI6cmV0dXJuIGU7ZGVmYXVsdDpyZXR1cm4iIn19ZnVuY3Rpb24gdHMoZSl7dmFyIHQ9ZS50eXBlO3JldHVybihlPWUubm9kZU5hbWUpJiYiaW5wdXQiPT09ZS50b0xvd2VyQ2FzZSgpJiYoImNoZWNrYm94Ij09PXR8fCJyYWRpbyI9PT10KX1mdW5jdGlvbiB0YyhlKXtpZighZS5fdmFsdWVUcmFja2VyKXt2YXIgdD10cyhlKT8iY2hlY2tlZCI6InZhbHVlIjtlLl92YWx1ZVRyYWNrZXI9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUsdCk7aWYoIWUuaGFzT3duUHJvcGVydHkodCkmJnZvaWQgMCE9PXImJiJmdW5jdGlvbiI9PXR5cGVvZiByLmdldCYmImZ1bmN0aW9uIj09dHlwZW9mIHIuc2V0KXt2YXIgbD1yLmdldCxhPXIuc2V0O3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGwuY2FsbCh0aGlzKX0sc2V0OmZ1bmN0aW9uKGUpe249IiIrZSxhLmNhbGwodGhpcyxlKX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHtlbnVtZXJhYmxlOnIuZW51bWVyYWJsZX0pLHtnZXRWYWx1ZTpmdW5jdGlvbigpe3JldHVybiBufSxzZXRWYWx1ZTpmdW5jdGlvbihlKXtuPSIiK2V9LHN0b3BUcmFja2luZzpmdW5jdGlvbigpe2UuX3ZhbHVlVHJhY2tlcj1udWxsLGRlbGV0ZSBlW3RdfX19fShlLHQsIiIrZVt0XSl9fWZ1bmN0aW9uIHRmKGUpe2lmKCFlKXJldHVybiExO3ZhciB0PWUuX3ZhbHVlVHJhY2tlcjtpZighdClyZXR1cm4hMDt2YXIgbj10LmdldFZhbHVlKCkscj0iIjtyZXR1cm4gZSYmKHI9dHMoZSk/ZS5jaGVja2VkPyJ0cnVlIjoiZmFsc2UiOmUudmFsdWUpLChlPXIpIT09biYmKHQuc2V0VmFsdWUoZSksITApfWZ1bmN0aW9uIHRkKGUpe2lmKHZvaWQgMD09PShlPWV8fCgidSI+dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50OnZvaWQgMCkpKXJldHVybiBudWxsO3RyeXtyZXR1cm4gZS5hY3RpdmVFbGVtZW50fHxlLmJvZHl9Y2F0Y2godCl7cmV0dXJuIGUuYm9keX19dmFyIHRwPS9bXG4iXFxdL2c7ZnVuY3Rpb24gdG0oZSl7cmV0dXJuIGUucmVwbGFjZSh0cCxmdW5jdGlvbihlKXtyZXR1cm4iXFwiK2UuY2hhckNvZGVBdCgwKS50b1N0cmluZygxNikrIiAifSl9ZnVuY3Rpb24gdGgoZSx0LG4scixsLGEsbyxpKXtlLm5hbWU9IiIsbnVsbCE9byYmImZ1bmN0aW9uIiE9dHlwZW9mIG8mJiJzeW1ib2wiIT10eXBlb2YgbyYmImJvb2xlYW4iIT10eXBlb2Ygbz9lLnR5cGU9bzplLnJlbW92ZUF0dHJpYnV0ZSgidHlwZSIpLG51bGwhPXQ/Im51bWJlciI9PT1vPygwPT09dCYmIiI9PT1lLnZhbHVlfHxlLnZhbHVlIT10KSYmKGUudmFsdWU9IiIrdHUodCkpOmUudmFsdWUhPT0iIit0dSh0KSYmKGUudmFsdWU9IiIrdHUodCkpOiJzdWJtaXQiIT09byYmInJlc2V0IiE9PW98fGUucmVtb3ZlQXR0cmlidXRlKCJ2YWx1ZSIpLG51bGwhPXQ/dHYoZSxvLHR1KHQpKTpudWxsIT1uP3R2KGUsbyx0dShuKSk6bnVsbCE9ciYmZS5yZW1vdmVBdHRyaWJ1dGUoInZhbHVlIiksbnVsbD09bCYmbnVsbCE9YSYmKGUuZGVmYXVsdENoZWNrZWQ9ISFhKSxudWxsIT1sJiYoZS5jaGVja2VkPWwmJiJmdW5jdGlvbiIhPXR5cGVvZiBsJiYic3ltYm9sIiE9dHlwZW9mIGwpLG51bGwhPWkmJiJmdW5jdGlvbiIhPXR5cGVvZiBpJiYic3ltYm9sIiE9dHlwZW9mIGkmJiJib29sZWFuIiE9dHlwZW9mIGk/ZS5uYW1lPSIiK3R1KGkpOmUucmVtb3ZlQXR0cmlidXRlKCJuYW1lIil9ZnVuY3Rpb24gdGcoZSx0LG4scixsLGEsbyxpKXtpZihudWxsIT1hJiYiZnVuY3Rpb24iIT10eXBlb2YgYSYmInN5bWJvbCIhPXR5cGVvZiBhJiYiYm9vbGVhbiIhPXR5cGVvZiBhJiYoZS50eXBlPWEpLG51bGwhPXR8fG51bGwhPW4pe2lmKCgic3VibWl0Ij09PWF8fCJyZXNldCI9PT1hKSYmbnVsbD09dClyZXR1cm4gdm9pZCB0YyhlKTtuPW51bGwhPW4/IiIrdHUobik6IiIsdD1udWxsIT10PyIiK3R1KHQpOm4saXx8dD09PWUudmFsdWV8fChlLnZhbHVlPXQpLGUuZGVmYXVsdFZhbHVlPXR9cj0iZnVuY3Rpb24iIT10eXBlb2Yocj1udWxsIT1yP3I6bCkmJiJzeW1ib2wiIT10eXBlb2YgciYmISFyLGUuY2hlY2tlZD1pP2UuY2hlY2tlZDohIXIsZS5kZWZhdWx0Q2hlY2tlZD0hIXIsbnVsbCE9byYmImZ1bmN0aW9uIiE9dHlwZW9mIG8mJiJzeW1ib2wiIT10eXBlb2YgbyYmImJvb2xlYW4iIT10eXBlb2YgbyYmKGUubmFtZT1vKSx0YyhlKX1mdW5jdGlvbiB0dihlLHQsbil7Im51bWJlciI9PT10JiZ0ZChlLm93bmVyRG9jdW1lbnQpPT09ZXx8ZS5kZWZhdWx0VmFsdWU9PT0iIitufHwoZS5kZWZhdWx0VmFsdWU9IiIrbil9ZnVuY3Rpb24gdHkoZSx0LG4scil7aWYoZT1lLm9wdGlvbnMsdCl7dD17fTtmb3IodmFyIGw9MDtsPG4ubGVuZ3RoO2wrKyl0WyIkIituW2xdXT0hMDtmb3Iobj0wO248ZS5sZW5ndGg7bisrKWw9dC5oYXNPd25Qcm9wZXJ0eSgiJCIrZVtuXS52YWx1ZSksZVtuXS5zZWxlY3RlZCE9PWwmJihlW25dLnNlbGVjdGVkPWwpLGwmJnImJihlW25dLmRlZmF1bHRTZWxlY3RlZD0hMCl9ZWxzZXtmb3IobD0wLG49IiIrdHUobiksdD1udWxsO2w8ZS5sZW5ndGg7bCsrKXtpZihlW2xdLnZhbHVlPT09bil7ZVtsXS5zZWxlY3RlZD0hMCxyJiYoZVtsXS5kZWZhdWx0U2VsZWN0ZWQ9ITApO3JldHVybn1udWxsIT09dHx8ZVtsXS5kaXNhYmxlZHx8KHQ9ZVtsXSl9bnVsbCE9PXQmJih0LnNlbGVjdGVkPSEwKX19ZnVuY3Rpb24gdGIoZSx0LG4pe2lmKG51bGwhPXQmJigodD0iIit0dSh0KSkhPT1lLnZhbHVlJiYoZS52YWx1ZT10KSxudWxsPT1uKSl7ZS5kZWZhdWx0VmFsdWUhPT10JiYoZS5kZWZhdWx0VmFsdWU9dCk7cmV0dXJufWUuZGVmYXVsdFZhbHVlPW51bGwhPW4/IiIrdHUobik6IiJ9ZnVuY3Rpb24gdHcoZSx0LG4scil7aWYobnVsbD09dCl7aWYobnVsbCE9cil7aWYobnVsbCE9bil0aHJvdyBFcnJvcih1KDkyKSk7aWYoUShyKSl7aWYoMTxyLmxlbmd0aCl0aHJvdyBFcnJvcih1KDkzKSk7cj1yWzBdfW49cn1udWxsPT1uJiYobj0iIiksdD1ufWUuZGVmYXVsdFZhbHVlPW49dHUodCksKHI9ZS50ZXh0Q29udGVudCk9PT1uJiYiIiE9PXImJm51bGwhPT1yJiYoZS52YWx1ZT1yKSx0YyhlKX1mdW5jdGlvbiB0ayhlLHQpe2lmKHQpe3ZhciBuPWUuZmlyc3RDaGlsZDtpZihuJiZuPT09ZS5sYXN0Q2hpbGQmJjM9PT1uLm5vZGVUeXBlKXtuLm5vZGVWYWx1ZT10O3JldHVybn19ZS50ZXh0Q29udGVudD10fXZhciB0Uz1uZXcgU2V0KCJhbmltYXRpb25JdGVyYXRpb25Db3VudCBhc3BlY3RSYXRpbyBib3JkZXJJbWFnZU91dHNldCBib3JkZXJJbWFnZVNsaWNlIGJvcmRlckltYWdlV2lkdGggYm94RmxleCBib3hGbGV4R3JvdXAgYm94T3JkaW5hbEdyb3VwIGNvbHVtbkNvdW50IGNvbHVtbnMgZmxleCBmbGV4R3JvdyBmbGV4UG9zaXRpdmUgZmxleFNocmluayBmbGV4TmVnYXRpdmUgZmxleE9yZGVyIGdyaWRBcmVhIGdyaWRSb3cgZ3JpZFJvd0VuZCBncmlkUm93U3BhbiBncmlkUm93U3RhcnQgZ3JpZENvbHVtbiBncmlkQ29sdW1uRW5kIGdyaWRDb2x1bW5TcGFuIGdyaWRDb2x1bW5TdGFydCBmb250V2VpZ2h0IGxpbmVDbGFtcCBsaW5lSGVpZ2h0IG9wYWNpdHkgb3JkZXIgb3JwaGFucyBzY2FsZSB0YWJTaXplIHdpZG93cyB6SW5kZXggem9vbSBmaWxsT3BhY2l0eSBmbG9vZE9wYWNpdHkgc3RvcE9wYWNpdHkgc3Ryb2tlRGFzaGFycmF5IHN0cm9rZURhc2hvZmZzZXQgc3Ryb2tlTWl0ZXJsaW1pdCBzdHJva2VPcGFjaXR5IHN0cm9rZVdpZHRoIE1vekFuaW1hdGlvbkl0ZXJhdGlvbkNvdW50IE1vekJveEZsZXggTW96Qm94RmxleEdyb3VwIE1vekxpbmVDbGFtcCBtc0FuaW1hdGlvbkl0ZXJhdGlvbkNvdW50IG1zRmxleCBtc1pvb20gbXNGbGV4R3JvdyBtc0ZsZXhOZWdhdGl2ZSBtc0ZsZXhPcmRlciBtc0ZsZXhQb3NpdGl2ZSBtc0ZsZXhTaHJpbmsgbXNHcmlkQ29sdW1uIG1zR3JpZENvbHVtblNwYW4gbXNHcmlkUm93IG1zR3JpZFJvd1NwYW4gV2Via2l0QW5pbWF0aW9uSXRlcmF0aW9uQ291bnQgV2Via2l0Qm94RmxleCBXZWJLaXRCb3hGbGV4R3JvdXAgV2Via2l0Qm94T3JkaW5hbEdyb3VwIFdlYmtpdENvbHVtbkNvdW50IFdlYmtpdENvbHVtbnMgV2Via2l0RmxleCBXZWJraXRGbGV4R3JvdyBXZWJraXRGbGV4UG9zaXRpdmUgV2Via2l0RmxleFNocmluayBXZWJraXRMaW5lQ2xhbXAiLnNwbGl0KCIgIikpO2Z1bmN0aW9uIHRFKGUsdCxuKXt2YXIgcj0wPT09dC5pbmRleE9mKCItLSIpO251bGw9PW58fCJib29sZWFuIj09dHlwZW9mIG58fCIiPT09bj9yP2Uuc2V0UHJvcGVydHkodCwiIik6ImZsb2F0Ij09PXQ/ZS5jc3NGbG9hdD0iIjplW3RdPSIiOnI/ZS5zZXRQcm9wZXJ0eSh0LG4pOiJudW1iZXIiIT10eXBlb2Ygbnx8MD09PW58fHRTLmhhcyh0KT8iZmxvYXQiPT09dD9lLmNzc0Zsb2F0PW46ZVt0XT0oIiIrbikudHJpbSgpOmVbdF09bisicHgifWZ1bmN0aW9uIHR4KGUsdCxuKXtpZihudWxsIT10JiYib2JqZWN0IiE9dHlwZW9mIHQpdGhyb3cgRXJyb3IodSg2MikpO2lmKGU9ZS5zdHlsZSxudWxsIT1uKXtmb3IodmFyIHIgaW4gbikhbi5oYXNPd25Qcm9wZXJ0eShyKXx8bnVsbCE9dCYmdC5oYXNPd25Qcm9wZXJ0eShyKXx8KDA9PT1yLmluZGV4T2YoIi0tIik/ZS5zZXRQcm9wZXJ0eShyLCIiKToiZmxvYXQiPT09cj9lLmNzc0Zsb2F0PSIiOmVbcl09IiIsdHI9ITApO2Zvcih2YXIgbCBpbiB0KXI9dFtsXSx0Lmhhc093blByb3BlcnR5KGwpJiZuW2xdIT09ciYmKHRFKGUsbCxyKSx0cj0hMCl9ZWxzZSBmb3IodmFyIGEgaW4gdCl0Lmhhc093blByb3BlcnR5KGEpJiZ0RShlLGEsdFthXSl9ZnVuY3Rpb24gdF8oZSl7aWYoLTE9PT1lLmluZGV4T2YoIi0iKSlyZXR1cm4hMTtzd2l0Y2goZSl7Y2FzZSJhbm5vdGF0aW9uLXhtbCI6Y2FzZSJjb2xvci1wcm9maWxlIjpjYXNlImZvbnQtZmFjZSI6Y2FzZSJmb250LWZhY2Utc3JjIjpjYXNlImZvbnQtZmFjZS11cmkiOmNhc2UiZm9udC1mYWNlLWZvcm1hdCI6Y2FzZSJmb250LWZhY2UtbmFtZSI6Y2FzZSJtaXNzaW5nLWdseXBoIjpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX12YXIgdFA9bmV3IE1hcChbWyJhY2NlcHRDaGFyc2V0IiwiYWNjZXB0LWNoYXJzZXQiXSxbImh0bWxGb3IiLCJmb3IiXSxbImh0dHBFcXVpdiIsImh0dHAtZXF1aXYiXSxbImNyb3NzT3JpZ2luIiwiY3Jvc3NvcmlnaW4iXSxbImFjY2VudEhlaWdodCIsImFjY2VudC1oZWlnaHQiXSxbImFsaWdubWVudEJhc2VsaW5lIiwiYWxpZ25tZW50LWJhc2VsaW5lIl0sWyJhcmFiaWNGb3JtIiwiYXJhYmljLWZvcm0iXSxbImJhc2VsaW5lU2hpZnQiLCJiYXNlbGluZS1zaGlmdCJdLFsiY2FwSGVpZ2h0IiwiY2FwLWhlaWdodCJdLFsiY2xpcFBhdGgiLCJjbGlwLXBhdGgiXSxbImNsaXBSdWxlIiwiY2xpcC1ydWxlIl0sWyJjb2xvckludGVycG9sYXRpb24iLCJjb2xvci1pbnRlcnBvbGF0aW9uIl0sWyJjb2xvckludGVycG9sYXRpb25GaWx0ZXJzIiwiY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzIl0sWyJjb2xvclByb2ZpbGUiLCJjb2xvci1wcm9maWxlIl0sWyJjb2xvclJlbmRlcmluZyIsImNvbG9yLXJlbmRlcmluZyJdLFsiZG9taW5hbnRCYXNlbGluZSIsImRvbWluYW50LWJhc2VsaW5lIl0sWyJlbmFibGVCYWNrZ3JvdW5kIiwiZW5hYmxlLWJhY2tncm91bmQiXSxbImZpbGxPcGFjaXR5IiwiZmlsbC1vcGFjaXR5Il0sWyJmaWxsUnVsZSIsImZpbGwtcnVsZSJdLFsiZmxvb2RDb2xvciIsImZsb29kLWNvbG9yIl0sWyJmbG9vZE9wYWNpdHkiLCJmbG9vZC1vcGFjaXR5Il0sWyJmb250RmFtaWx5IiwiZm9udC1mYW1pbHkiXSxbImZvbnRTaXplIiwiZm9udC1zaXplIl0sWyJmb250U2l6ZUFkanVzdCIsImZvbnQtc2l6ZS1hZGp1c3QiXSxbImZvbnRTdHJldGNoIiwiZm9udC1zdHJldGNoIl0sWyJmb250U3R5bGUiLCJmb250LXN0eWxlIl0sWyJmb250VmFyaWFudCIsImZvbnQtdmFyaWFudCJdLFsiZm9udFdlaWdodCIsImZvbnQtd2VpZ2h0Il0sWyJnbHlwaE5hbWUiLCJnbHlwaC1uYW1lIl0sWyJnbHlwaE9yaWVudGF0aW9uSG9yaXpvbnRhbCIsImdseXBoLW9yaWVudGF0aW9uLWhvcml6b250YWwiXSxbImdseXBoT3JpZW50YXRpb25WZXJ0aWNhbCIsImdseXBoLW9yaWVudGF0aW9uLXZlcnRpY2FsIl0sWyJob3JpekFkdlgiLCJob3Jpei1hZHYteCJdLFsiaG9yaXpPcmlnaW5YIiwiaG9yaXotb3JpZ2luLXgiXSxbImltYWdlUmVuZGVyaW5nIiwiaW1hZ2UtcmVuZGVyaW5nIl0sWyJsZXR0ZXJTcGFjaW5nIiwibGV0dGVyLXNwYWNpbmciXSxbImxpZ2h0aW5nQ29sb3IiLCJsaWdodGluZy1jb2xvciJdLFsibWFya2VyRW5kIiwibWFya2VyLWVuZCJdLFsibWFya2VyTWlkIiwibWFya2VyLW1pZCJdLFsibWFya2VyU3RhcnQiLCJtYXJrZXItc3RhcnQiXSxbIm92ZXJsaW5lUG9zaXRpb24iLCJvdmVybGluZS1wb3NpdGlvbiJdLFsib3ZlcmxpbmVUaGlja25lc3MiLCJvdmVybGluZS10aGlja25lc3MiXSxbInBhaW50T3JkZXIiLCJwYWludC1vcmRlciJdLFsicGFub3NlLTEiLCJwYW5vc2UtMSJdLFsicG9pbnRlckV2ZW50cyIsInBvaW50ZXItZXZlbnRzIl0sWyJyZW5kZXJpbmdJbnRlbnQiLCJyZW5kZXJpbmctaW50ZW50Il0sWyJzaGFwZVJlbmRlcmluZyIsInNoYXBlLXJlbmRlcmluZyJdLFsic3RvcENvbG9yIiwic3RvcC1jb2xvciJdLFsic3RvcE9wYWNpdHkiLCJzdG9wLW9wYWNpdHkiXSxbInN0cmlrZXRocm91Z2hQb3NpdGlvbiIsInN0cmlrZXRocm91Z2gtcG9zaXRpb24iXSxbInN0cmlrZXRocm91Z2hUaGlja25lc3MiLCJzdHJpa2V0aHJvdWdoLXRoaWNrbmVzcyJdLFsic3Ryb2tlRGFzaGFycmF5Iiwic3Ryb2tlLWRhc2hhcnJheSJdLFsic3Ryb2tlRGFzaG9mZnNldCIsInN0cm9rZS1kYXNob2Zmc2V0Il0sWyJzdHJva2VMaW5lY2FwIiwic3Ryb2tlLWxpbmVjYXAiXSxbInN0cm9rZUxpbmVqb2luIiwic3Ryb2tlLWxpbmVqb2luIl0sWyJzdHJva2VNaXRlcmxpbWl0Iiwic3Ryb2tlLW1pdGVybGltaXQiXSxbInN0cm9rZU9wYWNpdHkiLCJzdHJva2Utb3BhY2l0eSJdLFsic3Ryb2tlV2lkdGgiLCJzdHJva2Utd2lkdGgiXSxbInRleHRBbmNob3IiLCJ0ZXh0LWFuY2hvciJdLFsidGV4dERlY29yYXRpb24iLCJ0ZXh0LWRlY29yYXRpb24iXSxbInRleHRSZW5kZXJpbmciLCJ0ZXh0LXJlbmRlcmluZyJdLFsidHJhbnNmb3JtT3JpZ2luIiwidHJhbnNmb3JtLW9yaWdpbiJdLFsidW5kZXJsaW5lUG9zaXRpb24iLCJ1bmRlcmxpbmUtcG9zaXRpb24iXSxbInVuZGVybGluZVRoaWNrbmVzcyIsInVuZGVybGluZS10aGlja25lc3MiXSxbInVuaWNvZGVCaWRpIiwidW5pY29kZS1iaWRpIl0sWyJ1bmljb2RlUmFuZ2UiLCJ1bmljb2RlLXJhbmdlIl0sWyJ1bml0c1BlckVtIiwidW5pdHMtcGVyLWVtIl0sWyJ2QWxwaGFiZXRpYyIsInYtYWxwaGFiZXRpYyJdLFsidkhhbmdpbmciLCJ2LWhhbmdpbmciXSxbInZJZGVvZ3JhcGhpYyIsInYtaWRlb2dyYXBoaWMiXSxbInZNYXRoZW1hdGljYWwiLCJ2LW1hdGhlbWF0aWNhbCJdLFsidmVjdG9yRWZmZWN0IiwidmVjdG9yLWVmZmVjdCJdLFsidmVydEFkdlkiLCJ2ZXJ0LWFkdi15Il0sWyJ2ZXJ0T3JpZ2luWCIsInZlcnQtb3JpZ2luLXgiXSxbInZlcnRPcmlnaW5ZIiwidmVydC1vcmlnaW4teSJdLFsid29yZFNwYWNpbmciLCJ3b3JkLXNwYWNpbmciXSxbIndyaXRpbmdNb2RlIiwid3JpdGluZy1tb2RlIl0sWyJ4bWxuc1hsaW5rIiwieG1sbnM6eGxpbmsiXSxbInhIZWlnaHQiLCJ4LWhlaWdodCJdXSksdE49L15bXHUwMDAwLVx1MDAxRiBdKmpbXHJcblx0XSphW1xyXG5cdF0qdltcclxuXHRdKmFbXHJcblx0XSpzW1xyXG5cdF0qY1tcclxuXHRdKnJbXHJcblx0XSppW1xyXG5cdF0qcFtcclxuXHRdKnRbXHJcblx0XSo6L2k7ZnVuY3Rpb24gdEMoZSl7cmV0dXJuIHROLnRlc3QoIiIrZSk/ImphdmFzY3JpcHQ6dGhyb3cgbmV3IEVycm9yKCdSZWFjdCBoYXMgYmxvY2tlZCBhIGphdmFzY3JpcHQ6IFVSTCBhcyBhIHNlY3VyaXR5IHByZWNhdXRpb24uJykiOmV9ZnVuY3Rpb24gdFQoKXt9dmFyIHRPPW51bGw7ZnVuY3Rpb24gdHooZSl7cmV0dXJuKGU9ZS50YXJnZXR8fGUuc3JjRWxlbWVudHx8d2luZG93KS5jb3JyZXNwb25kaW5nVXNlRWxlbWVudCYmKGU9ZS5jb3JyZXNwb25kaW5nVXNlRWxlbWVudCksMz09PWUubm9kZVR5cGU/ZS5wYXJlbnROb2RlOmV9dmFyIHRMPW51bGwsdFI9bnVsbDtmdW5jdGlvbiB0TShlKXt2YXIgdD1lMihlKTtpZih0JiYoZT10LnN0YXRlTm9kZSkpe3ZhciBuPWVbZXFdfHxudWxsO3N3aXRjaChlPXQuc3RhdGVOb2RlLHQudHlwZSl7Y2FzZSJpbnB1dCI6aWYodGgoZSxuLnZhbHVlLG4uZGVmYXVsdFZhbHVlLG4uZGVmYXVsdFZhbHVlLG4uY2hlY2tlZCxuLmRlZmF1bHRDaGVja2VkLG4udHlwZSxuLm5hbWUpLHQ9bi5uYW1lLCJyYWRpbyI9PT1uLnR5cGUmJm51bGwhPXQpe2ZvcihuPWU7bi5wYXJlbnROb2RlOyluPW4ucGFyZW50Tm9kZTtmb3Iobj1uLnF1ZXJ5U2VsZWN0b3JBbGwoJ2lucHV0W25hbWU9IicrdG0oIiIrdCkrJyJdW3R5cGU9InJhZGlvIl0nKSx0PTA7dDxuLmxlbmd0aDt0Kyspe3ZhciByPW5bdF07aWYociE9PWUmJnIuZm9ybT09PWUuZm9ybSl7dmFyIGw9cltlcV18fG51bGw7aWYoIWwpdGhyb3cgRXJyb3IodSg5MCkpO3RoKHIsbC52YWx1ZSxsLmRlZmF1bHRWYWx1ZSxsLmRlZmF1bHRWYWx1ZSxsLmNoZWNrZWQsbC5kZWZhdWx0Q2hlY2tlZCxsLnR5cGUsbC5uYW1lKX19Zm9yKHQ9MDt0PG4ubGVuZ3RoO3QrKykocj1uW3RdKS5mb3JtPT09ZS5mb3JtJiZ0ZihyKX1icmVhaztjYXNlInRleHRhcmVhIjp0YihlLG4udmFsdWUsbi5kZWZhdWx0VmFsdWUpO2JyZWFrO2Nhc2Uic2VsZWN0IjpudWxsIT0odD1uLnZhbHVlKSYmdHkoZSwhIW4ubXVsdGlwbGUsdCwhMSl9fX12YXIgdEk9ITE7ZnVuY3Rpb24gdEQoZSx0LG4pe2lmKHRJKXJldHVybiBlKHQsbik7dEk9ITA7dHJ5e3JldHVybiBlKHQpfWZpbmFsbHl7aWYodEk9ITEsKG51bGwhPT10THx8bnVsbCE9PXRSKSYmKHN0KCksdEwmJih0PXRMLGU9dFIsdFI9dEw9bnVsbCx0TSh0KSxlKSkpZm9yKHQ9MDt0PGUubGVuZ3RoO3QrKyl0TShlW3RdKX19ZnVuY3Rpb24gdEYoZSx0KXt2YXIgbj1lLnN0YXRlTm9kZTtpZihudWxsPT09bilyZXR1cm4gbnVsbDt2YXIgcj1uW2VxXXx8bnVsbDtpZihudWxsPT09cilyZXR1cm4gbnVsbDtzd2l0Y2gobj1yW3RdLHQpe2Nhc2Uib25DbGljayI6Y2FzZSJvbkNsaWNrQ2FwdHVyZSI6Y2FzZSJvbkRvdWJsZUNsaWNrIjpjYXNlIm9uRG91YmxlQ2xpY2tDYXB0dXJlIjpjYXNlIm9uTW91c2VEb3duIjpjYXNlIm9uTW91c2VEb3duQ2FwdHVyZSI6Y2FzZSJvbk1vdXNlTW92ZSI6Y2FzZSJvbk1vdXNlTW92ZUNhcHR1cmUiOmNhc2Uib25Nb3VzZVVwIjpjYXNlIm9uTW91c2VVcENhcHR1cmUiOmNhc2Uib25Nb3VzZUVudGVyIjoocj0hci5kaXNhYmxlZCl8fChyPSJidXR0b24iIT09KGU9ZS50eXBlKSYmImlucHV0IiE9PWUmJiJzZWxlY3QiIT09ZSYmInRleHRhcmVhIiE9PWUpLGU9IXI7YnJlYWs7ZGVmYXVsdDplPSExfWlmKGUpcmV0dXJuIG51bGw7aWYobiYmImZ1bmN0aW9uIiE9dHlwZW9mIG4pdGhyb3cgRXJyb3IodSgyMzEsdCx0eXBlb2YgbikpO3JldHVybiBufXZhciB0QT0idSI+dHlwZW9mIHdpbmRvdyYmdm9pZCAwIT09d2luZG93LmRvY3VtZW50JiZ2b2lkIDAhPT13aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCx0aj0hMTtpZih0QSl0cnl7dmFyIHRVPXt9O09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0VSwicGFzc2l2ZSIse2dldDpmdW5jdGlvbigpe3RqPSEwfX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0Iix0VSx0VSksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRlc3QiLHRVLHRVKX1jYXRjaChlKXt0aj0hMX12YXIgdEI9bnVsbCx0Vj1udWxsLHRIPW51bGw7ZnVuY3Rpb24gdCQoKXtpZih0SClyZXR1cm4gdEg7dmFyIGUsdCxuPXRWLHI9bi5sZW5ndGgsbD0idmFsdWUiaW4gdEI/dEIudmFsdWU6dEIudGV4dENvbnRlbnQsYT1sLmxlbmd0aDtmb3IoZT0wO2U8ciYmbltlXT09PWxbZV07ZSsrKTt2YXIgbz1yLWU7Zm9yKHQ9MTt0PD1vJiZuW3ItdF09PT1sW2EtdF07dCsrKTtyZXR1cm4gdEg9bC5zbGljZShlLDE8dD8xLXQ6dm9pZCAwKX1mdW5jdGlvbiB0UShlKXt2YXIgdD1lLmtleUNvZGU7cmV0dXJuImNoYXJDb2RlImluIGU/MD09PShlPWUuY2hhckNvZGUpJiYxMz09PXQmJihlPTEzKTplPXQsMTA9PT1lJiYoZT0xMyksMzI8PWV8fDEzPT09ZT9lOjB9ZnVuY3Rpb24gdFcoKXtyZXR1cm4hMH1mdW5jdGlvbiB0cSgpe3JldHVybiExfWZ1bmN0aW9uIHRLKGUpe2Z1bmN0aW9uIHQodCxuLHIsbCxhKXtmb3IodmFyIG8gaW4gdGhpcy5fcmVhY3ROYW1lPXQsdGhpcy5fdGFyZ2V0SW5zdD1yLHRoaXMudHlwZT1uLHRoaXMubmF0aXZlRXZlbnQ9bCx0aGlzLnRhcmdldD1hLHRoaXMuY3VycmVudFRhcmdldD1udWxsLGUpZS5oYXNPd25Qcm9wZXJ0eShvKSYmKHQ9ZVtvXSx0aGlzW29dPXQ/dChsKTpsW29dKTtyZXR1cm4gdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9KG51bGwhPWwuZGVmYXVsdFByZXZlbnRlZD9sLmRlZmF1bHRQcmV2ZW50ZWQ6ITE9PT1sLnJldHVyblZhbHVlKT90Vzp0cSx0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPXRxLHRoaXN9cmV0dXJuIHgodC5wcm90b3R5cGUse3ByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPSEwO3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUucHJldmVudERlZmF1bHQ/ZS5wcmV2ZW50RGVmYXVsdCgpOiJ1bmtub3duIiE9dHlwZW9mIGUucmV0dXJuVmFsdWUmJihlLnJldHVyblZhbHVlPSExKSx0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD10Vyl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUuc3RvcFByb3BhZ2F0aW9uP2Uuc3RvcFByb3BhZ2F0aW9uKCk6InVua25vd24iIT10eXBlb2YgZS5jYW5jZWxCdWJibGUmJihlLmNhbmNlbEJ1YmJsZT0hMCksdGhpcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZD10Vyl9LHBlcnNpc3Q6ZnVuY3Rpb24oKXt9LGlzUGVyc2lzdGVudDp0V30pLHR9dmFyIHRYLHRHLHRZLHRKLHRaLHQwPXtldmVudFBoYXNlOjAsYnViYmxlczowLGNhbmNlbGFibGU6MCx0aW1lU3RhbXA6ZnVuY3Rpb24oZSl7cmV0dXJuIGUudGltZVN0YW1wfHxEYXRlLm5vdygpfSxkZWZhdWx0UHJldmVudGVkOjAsaXNUcnVzdGVkOjB9LHQxPXRLKHQwKSx0Mj14KHt9LHQwLHt2aWV3OjAsZGV0YWlsOjB9KSx0Mz10Syh0MiksdDQ9eCh7fSx0Mix7c2NyZWVuWDowLHNjcmVlblk6MCxjbGllbnRYOjAsY2xpZW50WTowLHBhZ2VYOjAscGFnZVk6MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxhbHRLZXk6MCxtZXRhS2V5OjAsZ2V0TW9kaWZpZXJTdGF0ZTpuYSxidXR0b246MCxidXR0b25zOjAscmVsYXRlZFRhcmdldDpmdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwPT09ZS5yZWxhdGVkVGFyZ2V0P2UuZnJvbUVsZW1lbnQ9PT1lLnNyY0VsZW1lbnQ/ZS50b0VsZW1lbnQ6ZS5mcm9tRWxlbWVudDplLnJlbGF0ZWRUYXJnZXR9LG1vdmVtZW50WDpmdW5jdGlvbihlKXtyZXR1cm4ibW92ZW1lbnRYImluIGU/ZS5tb3ZlbWVudFg6KGUhPT10WiYmKHRaJiYibW91c2Vtb3ZlIj09PWUudHlwZT8odFk9ZS5zY3JlZW5YLXRaLnNjcmVlblgsdEo9ZS5zY3JlZW5ZLXRaLnNjcmVlblkpOnRKPXRZPTAsdFo9ZSksdFkpfSxtb3ZlbWVudFk6ZnVuY3Rpb24oZSl7cmV0dXJuIm1vdmVtZW50WSJpbiBlP2UubW92ZW1lbnRZOnRKfX0pLHQ4PXRLKHQ0KSx0NT10Syh4KHt9LHQ0LHtkYXRhVHJhbnNmZXI6MH0pKSx0Nj10Syh4KHt9LHQyLHtyZWxhdGVkVGFyZ2V0OjB9KSksdDk9dEsoeCh7fSx0MCx7YW5pbWF0aW9uTmFtZTowLGVsYXBzZWRUaW1lOjAscHNldWRvRWxlbWVudDowfSkpLHQ3PXRLKHgoe30sdDAse2NsaXBib2FyZERhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuImNsaXBib2FyZERhdGEiaW4gZT9lLmNsaXBib2FyZERhdGE6d2luZG93LmNsaXBib2FyZERhdGF9fSkpLG5lPXRLKHgoe30sdDAse2RhdGE6MH0pKSxudD17RXNjOiJFc2NhcGUiLFNwYWNlYmFyOiIgIixMZWZ0OiJBcnJvd0xlZnQiLFVwOiJBcnJvd1VwIixSaWdodDoiQXJyb3dSaWdodCIsRG93bjoiQXJyb3dEb3duIixEZWw6IkRlbGV0ZSIsV2luOiJPUyIsTWVudToiQ29udGV4dE1lbnUiLEFwcHM6IkNvbnRleHRNZW51IixTY3JvbGw6IlNjcm9sbExvY2siLE1velByaW50YWJsZUtleToiVW5pZGVudGlmaWVkIn0sbm49ezg6IkJhY2tzcGFjZSIsOToiVGFiIiwxMjoiQ2xlYXIiLDEzOiJFbnRlciIsMTY6IlNoaWZ0IiwxNzoiQ29udHJvbCIsMTg6IkFsdCIsMTk6IlBhdXNlIiwyMDoiQ2Fwc0xvY2siLDI3OiJFc2NhcGUiLDMyOiIgIiwzMzoiUGFnZVVwIiwzNDoiUGFnZURvd24iLDM1OiJFbmQiLDM2OiJIb21lIiwzNzoiQXJyb3dMZWZ0IiwzODoiQXJyb3dVcCIsMzk6IkFycm93UmlnaHQiLDQwOiJBcnJvd0Rvd24iLDQ1OiJJbnNlcnQiLDQ2OiJEZWxldGUiLDExMjoiRjEiLDExMzoiRjIiLDExNDoiRjMiLDExNToiRjQiLDExNjoiRjUiLDExNzoiRjYiLDExODoiRjciLDExOToiRjgiLDEyMDoiRjkiLDEyMToiRjEwIiwxMjI6IkYxMSIsMTIzOiJGMTIiLDE0NDoiTnVtTG9jayIsMTQ1OiJTY3JvbGxMb2NrIiwyMjQ6Ik1ldGEifSxucj17QWx0OiJhbHRLZXkiLENvbnRyb2w6ImN0cmxLZXkiLE1ldGE6Im1ldGFLZXkiLFNoaWZ0OiJzaGlmdEtleSJ9O2Z1bmN0aW9uIG5sKGUpe3ZhciB0PXRoaXMubmF0aXZlRXZlbnQ7cmV0dXJuIHQuZ2V0TW9kaWZpZXJTdGF0ZT90LmdldE1vZGlmaWVyU3RhdGUoZSk6ISEoZT1ucltlXSkmJiEhdFtlXX1mdW5jdGlvbiBuYSgpe3JldHVybiBubH12YXIgbm89dEsoeCh7fSx0Mix7a2V5OmZ1bmN0aW9uKGUpe2lmKGUua2V5KXt2YXIgdD1udFtlLmtleV18fGUua2V5O2lmKCJVbmlkZW50aWZpZWQiIT09dClyZXR1cm4gdH1yZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlPzEzPT09KGU9dFEoZSkpPyJFbnRlciI6U3RyaW5nLmZyb21DaGFyQ29kZShlKToia2V5ZG93biI9PT1lLnR5cGV8fCJrZXl1cCI9PT1lLnR5cGU/bm5bZS5rZXlDb2RlXXx8IlVuaWRlbnRpZmllZCI6IiJ9LGNvZGU6MCxsb2NhdGlvbjowLGN0cmxLZXk6MCxzaGlmdEtleTowLGFsdEtleTowLG1ldGFLZXk6MCxyZXBlYXQ6MCxsb2NhbGU6MCxnZXRNb2RpZmllclN0YXRlOm5hLGNoYXJDb2RlOmZ1bmN0aW9uKGUpe3JldHVybiJrZXlwcmVzcyI9PT1lLnR5cGU/dFEoZSk6MH0sa2V5Q29kZTpmdW5jdGlvbihlKXtyZXR1cm4ia2V5ZG93biI9PT1lLnR5cGV8fCJrZXl1cCI9PT1lLnR5cGU/ZS5rZXlDb2RlOjB9LHdoaWNoOmZ1bmN0aW9uKGUpe3JldHVybiJrZXlwcmVzcyI9PT1lLnR5cGU/dFEoZSk6ImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP2Uua2V5Q29kZTowfX0pKSxuaT10Syh4KHt9LHQ0LHtwb2ludGVySWQ6MCx3aWR0aDowLGhlaWdodDowLHByZXNzdXJlOjAsdGFuZ2VudGlhbFByZXNzdXJlOjAsdGlsdFg6MCx0aWx0WTowLHR3aXN0OjAscG9pbnRlclR5cGU6MCxpc1ByaW1hcnk6MH0pKSxudT10Syh4KHt9LHQyLHt0b3VjaGVzOjAsdGFyZ2V0VG91Y2hlczowLGNoYW5nZWRUb3VjaGVzOjAsYWx0S2V5OjAsbWV0YUtleTowLGN0cmxLZXk6MCxzaGlmdEtleTowLGdldE1vZGlmaWVyU3RhdGU6bmF9KSksbnM9dEsoeCh7fSx0MCx7cHJvcGVydHlOYW1lOjAsZWxhcHNlZFRpbWU6MCxwc2V1ZG9FbGVtZW50OjB9KSksbmM9dEsoeCh7fSx0NCx7ZGVsdGFYOmZ1bmN0aW9uKGUpe3JldHVybiJkZWx0YVgiaW4gZT9lLmRlbHRhWDoid2hlZWxEZWx0YVgiaW4gZT8tZS53aGVlbERlbHRhWDowfSxkZWx0YVk6ZnVuY3Rpb24oZSl7cmV0dXJuImRlbHRhWSJpbiBlP2UuZGVsdGFZOiJ3aGVlbERlbHRhWSJpbiBlPy1lLndoZWVsRGVsdGFZOiJ3aGVlbERlbHRhImluIGU/LWUud2hlZWxEZWx0YTowfSxkZWx0YVo6MCxkZWx0YU1vZGU6MH0pKSxuZj10Syh4KHt9LHQwLHtuZXdTdGF0ZTowLG9sZFN0YXRlOjB9KSksbmQ9WzksMTMsMjcsMzJdLG5wPXRBJiYiQ29tcG9zaXRpb25FdmVudCJpbiB3aW5kb3csbm09bnVsbDt0QSYmImRvY3VtZW50TW9kZSJpbiBkb2N1bWVudCYmKG5tPWRvY3VtZW50LmRvY3VtZW50TW9kZSk7dmFyIG5oPXRBJiYiVGV4dEV2ZW50ImluIHdpbmRvdyYmIW5tLG5nPXRBJiYoIW5wfHxubSYmODxubSYmMTE+PW5tKSxudj0hMTtmdW5jdGlvbiBueShlLHQpe3N3aXRjaChlKXtjYXNlImtleXVwIjpyZXR1cm4gLTEhPT1uZC5pbmRleE9mKHQua2V5Q29kZSk7Y2FzZSJrZXlkb3duIjpyZXR1cm4gMjI5IT09dC5rZXlDb2RlO2Nhc2Uia2V5cHJlc3MiOmNhc2UibW91c2Vkb3duIjpjYXNlImZvY3Vzb3V0IjpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiExfX1mdW5jdGlvbiBuYihlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mKGU9ZS5kZXRhaWwpJiYiZGF0YSJpbiBlP2UuZGF0YTpudWxsfXZhciBudz0hMSxuaz17Y29sb3I6ITAsZGF0ZTohMCxkYXRldGltZTohMCwiZGF0ZXRpbWUtbG9jYWwiOiEwLGVtYWlsOiEwLG1vbnRoOiEwLG51bWJlcjohMCxwYXNzd29yZDohMCxyYW5nZTohMCxzZWFyY2g6ITAsdGVsOiEwLHRleHQ6ITAsdGltZTohMCx1cmw6ITAsd2VlazohMH07ZnVuY3Rpb24gblMoZSl7dmFyIHQ9ZSYmZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiJpbnB1dCI9PT10PyEhbmtbZS50eXBlXToidGV4dGFyZWEiPT09dH1mdW5jdGlvbiBuRShlLHQsbixyKXt0TD90Uj90Ui5wdXNoKHIpOnRSPVtyXTp0TD1yLDA8KHQ9czgodCwib25DaGFuZ2UiKSkubGVuZ3RoJiYobj1uZXcgdDEoIm9uQ2hhbmdlIiwiY2hhbmdlIixudWxsLG4sciksZS5wdXNoKHtldmVudDpuLGxpc3RlbmVyczp0fSkpfXZhciBueD1udWxsLG5fPW51bGw7ZnVuY3Rpb24gblAoZSl7c1koZSwwKX1mdW5jdGlvbiBuTihlKXtpZih0ZihlMyhlKSkpcmV0dXJuIGV9ZnVuY3Rpb24gbkMoZSx0KXtpZigiY2hhbmdlIj09PWUpcmV0dXJuIHR9dmFyIG5UPSExO2lmKHRBKXtpZih0QSl7dmFyIG5PPSJvbmlucHV0ImluIGRvY3VtZW50O2lmKCFuTyl7dmFyIG56PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO256LnNldEF0dHJpYnV0ZSgib25pbnB1dCIsInJldHVybjsiKSxuTz0iZnVuY3Rpb24iPT10eXBlb2Ygbnoub25pbnB1dH1yPW5PfWVsc2Ugcj0hMTtuVD1yJiYoIWRvY3VtZW50LmRvY3VtZW50TW9kZXx8OTxkb2N1bWVudC5kb2N1bWVudE1vZGUpfWZ1bmN0aW9uIG5MKCl7bngmJihueC5kZXRhY2hFdmVudCgib25wcm9wZXJ0eWNoYW5nZSIsblIpLG5fPW54PW51bGwpfWZ1bmN0aW9uIG5SKGUpe2lmKCJ2YWx1ZSI9PT1lLnByb3BlcnR5TmFtZSYmbk4obl8pKXt2YXIgdD1bXTtuRSh0LG5fLGUsdHooZSkpLHREKG5QLHQpfX1mdW5jdGlvbiBuTShlLHQsbil7ImZvY3VzaW4iPT09ZT8obkwoKSxueD10LG5fPW4sbnguYXR0YWNoRXZlbnQoIm9ucHJvcGVydHljaGFuZ2UiLG5SKSk6ImZvY3Vzb3V0Ij09PWUmJm5MKCl9ZnVuY3Rpb24gbkkoZSl7aWYoInNlbGVjdGlvbmNoYW5nZSI9PT1lfHwia2V5dXAiPT09ZXx8ImtleWRvd24iPT09ZSlyZXR1cm4gbk4obl8pfWZ1bmN0aW9uIG5EKGUsdCl7aWYoImNsaWNrIj09PWUpcmV0dXJuIG5OKHQpfWZ1bmN0aW9uIG5GKGUsdCl7aWYoImlucHV0Ij09PWV8fCJjaGFuZ2UiPT09ZSlyZXR1cm4gbk4odCl9dmFyIG5BPSJmdW5jdGlvbiI9PXR5cGVvZiBPYmplY3QuaXM/T2JqZWN0LmlzOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9PT10JiYoMCE9PWV8fDEvZT09MS90KXx8ZSE9ZSYmdCE9dH07ZnVuY3Rpb24gbmooZSx0KXtpZihuQShlLHQpKXJldHVybiEwO2lmKCJvYmplY3QiIT10eXBlb2YgZXx8bnVsbD09PWV8fCJvYmplY3QiIT10eXBlb2YgdHx8bnVsbD09PXQpcmV0dXJuITE7dmFyIG49T2JqZWN0LmtleXMoZSkscj1PYmplY3Qua2V5cyh0KTtpZihuLmxlbmd0aCE9PXIubGVuZ3RoKXJldHVybiExO2ZvcihyPTA7cjxuLmxlbmd0aDtyKyspe3ZhciBsPW5bcl07aWYoIWVkLmNhbGwodCxsKXx8IW5BKGVbbF0sdFtsXSkpcmV0dXJuITF9cmV0dXJuITB9ZnVuY3Rpb24gblUoZSl7Zm9yKDtlJiZlLmZpcnN0Q2hpbGQ7KWU9ZS5maXJzdENoaWxkO3JldHVybiBlfWZ1bmN0aW9uIG5CKGUsdCl7dmFyIG4scj1uVShlKTtmb3IoZT0wO3I7KXtpZigzPT09ci5ub2RlVHlwZSl7aWYobj1lK3IudGV4dENvbnRlbnQubGVuZ3RoLGU8PXQmJm4+PXQpcmV0dXJue25vZGU6cixvZmZzZXQ6dC1lfTtlPW59ZTp7Zm9yKDtyOyl7aWYoci5uZXh0U2libGluZyl7cj1yLm5leHRTaWJsaW5nO2JyZWFrIGV9cj1yLnBhcmVudE5vZGV9cj12b2lkIDB9cj1uVShyKX19ZnVuY3Rpb24gblYoZSl7ZT1udWxsIT1lJiZudWxsIT1lLm93bmVyRG9jdW1lbnQmJm51bGwhPWUub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldz9lLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXc6d2luZG93O2Zvcih2YXIgdD10ZChlLmRvY3VtZW50KTt0IGluc3RhbmNlb2YgZS5IVE1MSUZyYW1lRWxlbWVudDspe3RyeXt2YXIgbj0ic3RyaW5nIj09dHlwZW9mIHQuY29udGVudFdpbmRvdy5sb2NhdGlvbi5ocmVmfWNhdGNoKGUpe249ITF9aWYobillPXQuY29udGVudFdpbmRvdztlbHNlIGJyZWFrO3Q9dGQoZS5kb2N1bWVudCl9cmV0dXJuIHR9ZnVuY3Rpb24gbkgoZSl7dmFyIHQ9ZSYmZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiB0JiYoImlucHV0Ij09PXQmJigidGV4dCI9PT1lLnR5cGV8fCJzZWFyY2giPT09ZS50eXBlfHwidGVsIj09PWUudHlwZXx8InVybCI9PT1lLnR5cGV8fCJwYXNzd29yZCI9PT1lLnR5cGUpfHwidGV4dGFyZWEiPT09dHx8InRydWUiPT09ZS5jb250ZW50RWRpdGFibGUpfXZhciBuJD10QSYmImRvY3VtZW50TW9kZSJpbiBkb2N1bWVudCYmMTE+PWRvY3VtZW50LmRvY3VtZW50TW9kZSxuUT1udWxsLG5XPW51bGwsbnE9bnVsbCxuSz0hMTtmdW5jdGlvbiBuWChlLHQsbil7dmFyIHI9bi53aW5kb3c9PT1uP24uZG9jdW1lbnQ6OT09PW4ubm9kZVR5cGU/bjpuLm93bmVyRG9jdW1lbnQ7bkt8fG51bGw9PW5RfHxuUSE9PXRkKHIpfHwocj0ic2VsZWN0aW9uU3RhcnQiaW4ocj1uUSkmJm5IKHIpP3tzdGFydDpyLnNlbGVjdGlvblN0YXJ0LGVuZDpyLnNlbGVjdGlvbkVuZH06e2FuY2hvck5vZGU6KHI9KHIub3duZXJEb2N1bWVudCYmci5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3fHx3aW5kb3cpLmdldFNlbGVjdGlvbigpKS5hbmNob3JOb2RlLGFuY2hvck9mZnNldDpyLmFuY2hvck9mZnNldCxmb2N1c05vZGU6ci5mb2N1c05vZGUsZm9jdXNPZmZzZXQ6ci5mb2N1c09mZnNldH0sbnEmJm5qKG5xLHIpfHwobnE9ciwwPChyPXM4KG5XLCJvblNlbGVjdCIpKS5sZW5ndGgmJih0PW5ldyB0MSgib25TZWxlY3QiLCJzZWxlY3QiLG51bGwsdCxuKSxlLnB1c2goe2V2ZW50OnQsbGlzdGVuZXJzOnJ9KSx0LnRhcmdldD1uUSkpKX1mdW5jdGlvbiBuRyhlLHQpe3ZhciBuPXt9O3JldHVybiBuW2UudG9Mb3dlckNhc2UoKV09dC50b0xvd2VyQ2FzZSgpLG5bIldlYmtpdCIrZV09IndlYmtpdCIrdCxuWyJNb3oiK2VdPSJtb3oiK3Qsbn12YXIgblk9e2FuaW1hdGlvbmVuZDpuRygiQW5pbWF0aW9uIiwiQW5pbWF0aW9uRW5kIiksYW5pbWF0aW9uaXRlcmF0aW9uOm5HKCJBbmltYXRpb24iLCJBbmltYXRpb25JdGVyYXRpb24iKSxhbmltYXRpb25zdGFydDpuRygiQW5pbWF0aW9uIiwiQW5pbWF0aW9uU3RhcnQiKSx0cmFuc2l0aW9ucnVuOm5HKCJUcmFuc2l0aW9uIiwiVHJhbnNpdGlvblJ1biIpLHRyYW5zaXRpb25zdGFydDpuRygiVHJhbnNpdGlvbiIsIlRyYW5zaXRpb25TdGFydCIpLHRyYW5zaXRpb25jYW5jZWw6bkcoIlRyYW5zaXRpb24iLCJUcmFuc2l0aW9uQ2FuY2VsIiksdHJhbnNpdGlvbmVuZDpuRygiVHJhbnNpdGlvbiIsIlRyYW5zaXRpb25FbmQiKX0sbko9e30sblo9e307ZnVuY3Rpb24gbjAoZSl7aWYobkpbZV0pcmV0dXJuIG5KW2VdO2lmKCFuWVtlXSlyZXR1cm4gZTt2YXIgdCxuPW5ZW2VdO2Zvcih0IGluIG4paWYobi5oYXNPd25Qcm9wZXJ0eSh0KSYmdCBpbiBuWilyZXR1cm4gbkpbZV09blt0XTtyZXR1cm4gZX10QSYmKG5aPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLnN0eWxlLCJBbmltYXRpb25FdmVudCJpbiB3aW5kb3d8fChkZWxldGUgblkuYW5pbWF0aW9uZW5kLmFuaW1hdGlvbixkZWxldGUgblkuYW5pbWF0aW9uaXRlcmF0aW9uLmFuaW1hdGlvbixkZWxldGUgblkuYW5pbWF0aW9uc3RhcnQuYW5pbWF0aW9uKSwiVHJhbnNpdGlvbkV2ZW50ImluIHdpbmRvd3x8ZGVsZXRlIG5ZLnRyYW5zaXRpb25lbmQudHJhbnNpdGlvbik7dmFyIG4xPW4wKCJhbmltYXRpb25lbmQiKSxuMj1uMCgiYW5pbWF0aW9uaXRlcmF0aW9uIiksbjM9bjAoImFuaW1hdGlvbnN0YXJ0IiksbjQ9bjAoInRyYW5zaXRpb25ydW4iKSxuOD1uMCgidHJhbnNpdGlvbnN0YXJ0IiksbjU9bjAoInRyYW5zaXRpb25jYW5jZWwiKSxuNj1uMCgidHJhbnNpdGlvbmVuZCIpLG45PW5ldyBNYXAsbjc9ImFib3J0IGF1eENsaWNrIGJlZm9yZVRvZ2dsZSBjYW5jZWwgY2FuUGxheSBjYW5QbGF5VGhyb3VnaCBjbGljayBjbG9zZSBjb250ZXh0TWVudSBjb3B5IGN1dCBkcmFnIGRyYWdFbmQgZHJhZ0VudGVyIGRyYWdFeGl0IGRyYWdMZWF2ZSBkcmFnT3ZlciBkcmFnU3RhcnQgZHJvcCBkdXJhdGlvbkNoYW5nZSBlbXB0aWVkIGVuY3J5cHRlZCBlbmRlZCBlcnJvciBnb3RQb2ludGVyQ2FwdHVyZSBpbnB1dCBpbnZhbGlkIGtleURvd24ga2V5UHJlc3Mga2V5VXAgbG9hZCBsb2FkZWREYXRhIGxvYWRlZE1ldGFkYXRhIGxvYWRTdGFydCBsb3N0UG9pbnRlckNhcHR1cmUgbW91c2VEb3duIG1vdXNlTW92ZSBtb3VzZU91dCBtb3VzZU92ZXIgbW91c2VVcCBwYXN0ZSBwYXVzZSBwbGF5IHBsYXlpbmcgcG9pbnRlckNhbmNlbCBwb2ludGVyRG93biBwb2ludGVyTW92ZSBwb2ludGVyT3V0IHBvaW50ZXJPdmVyIHBvaW50ZXJVcCBwcm9ncmVzcyByYXRlQ2hhbmdlIHJlc2V0IHJlc2l6ZSBzZWVrZWQgc2Vla2luZyBzdGFsbGVkIHN1Ym1pdCBzdXNwZW5kIHRpbWVVcGRhdGUgdG91Y2hDYW5jZWwgdG91Y2hFbmQgdG91Y2hTdGFydCB2b2x1bWVDaGFuZ2Ugc2Nyb2xsIHRvZ2dsZSB0b3VjaE1vdmUgd2FpdGluZyB3aGVlbCIuc3BsaXQoIiAiKTtmdW5jdGlvbiByZShlLHQpe245LnNldChlLHQpLGU5KHQsW2VdKX1uNy5wdXNoKCJzY3JvbGxFbmQiKTt2YXIgcnQ9MDtmdW5jdGlvbiBybihlLHQpe3JldHVybiBudWxsIT1lLm5hbWUmJiJhdXRvIiE9PWUubmFtZT9lLm5hbWU6bnVsbCE9PXQuYXV0b05hbWU/dC5hdXRvTmFtZTp0LmF1dG9OYW1lPWU9Il8iKyhlPXVxLmlkZW50aWZpZXJQcmVmaXgpKyJ0XyIrKHJ0KyspLnRvU3RyaW5nKDMyKSsiXyJ9ZnVuY3Rpb24gcnIoZSl7aWYobnVsbD09ZXx8InN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlO3ZhciB0PW51bGwsbj11MTtpZihudWxsIT09bilmb3IodmFyIHI9MDtyPG4ubGVuZ3RoO3IrKyl7dmFyIGw9ZVtuW3JdXTtpZihudWxsIT1sKXtpZigibm9uZSI9PT1sKXJldHVybiJub25lIjt0PW51bGw9PXQ/bDp0KyIgIitsfX1yZXR1cm4gbnVsbD09dD9lLmRlZmF1bHQ6dH1mdW5jdGlvbiBybChlLHQpe3JldHVybiBlPXJyKGUpLG51bGw9PSh0PXJyKHQpKT8iYXV0byI9PT1lP251bGw6ZToiYXV0byI9PT10P251bGw6dH12YXIgcmE9ImZ1bmN0aW9uIj09dHlwZW9mIHJlcG9ydEVycm9yP3JlcG9ydEVycm9yOmZ1bmN0aW9uKGUpe2lmKCJvYmplY3QiPT10eXBlb2Ygd2luZG93JiYiZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93LkVycm9yRXZlbnQpe3ZhciB0PW5ldyB3aW5kb3cuRXJyb3JFdmVudCgiZXJyb3IiLHtidWJibGVzOiEwLGNhbmNlbGFibGU6ITAsbWVzc2FnZToib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiYic3RyaW5nIj09dHlwZW9mIGUubWVzc2FnZT9TdHJpbmcoZS5tZXNzYWdlKTpTdHJpbmcoZSksZXJyb3I6ZX0pO2lmKCF3aW5kb3cuZGlzcGF0Y2hFdmVudCh0KSlyZXR1cm59ZWxzZSBpZigib2JqZWN0Ij09dHlwZW9mIGwuZGVmYXVsdCYmImZ1bmN0aW9uIj09dHlwZW9mIGwuZGVmYXVsdC5lbWl0KXJldHVybiB2b2lkIGwuZGVmYXVsdC5lbWl0KCJ1bmNhdWdodEV4Y2VwdGlvbiIsZSk7Y29uc29sZS5lcnJvcihlKX0scm89W10scmk9MCxydT0wO2Z1bmN0aW9uIHJzKCl7Zm9yKHZhciBlPXJpLHQ9cnU9cmk9MDt0PGU7KXt2YXIgbj1yb1t0XTtyb1t0KytdPW51bGw7dmFyIHI9cm9bdF07cm9bdCsrXT1udWxsO3ZhciBsPXJvW3RdO3JvW3QrK109bnVsbDt2YXIgYT1yb1t0XTtpZihyb1t0KytdPW51bGwsbnVsbCE9PXImJm51bGwhPT1sKXt2YXIgbz1yLnBlbmRpbmc7bnVsbD09PW8/bC5uZXh0PWw6KGwubmV4dD1vLm5leHQsby5uZXh0PWwpLHIucGVuZGluZz1sfTAhPT1hJiZycChuLGwsYSl9fWZ1bmN0aW9uIHJjKGUsdCxuLHIpe3JvW3JpKytdPWUscm9bcmkrK109dCxyb1tyaSsrXT1uLHJvW3JpKytdPXIscnV8PXIsZS5sYW5lc3w9cixudWxsIT09KGU9ZS5hbHRlcm5hdGUpJiYoZS5sYW5lc3w9cil9ZnVuY3Rpb24gcmYoZSx0LG4scil7cmV0dXJuIHJjKGUsdCxuLHIpLHJtKGUpfWZ1bmN0aW9uIHJkKGUsdCl7cmV0dXJuIHJjKGUsbnVsbCxudWxsLHQpLHJtKGUpfWZ1bmN0aW9uIHJwKGUsdCxuKXtlLmxhbmVzfD1uO3ZhciByPWUuYWx0ZXJuYXRlO251bGwhPT1yJiYoci5sYW5lc3w9bik7Zm9yKHZhciBsPSExLGE9ZS5yZXR1cm47bnVsbCE9PWE7KWEuY2hpbGRMYW5lc3w9bixudWxsIT09KHI9YS5hbHRlcm5hdGUpJiYoci5jaGlsZExhbmVzfD1uKSwyMj09PWEudGFnJiYobnVsbD09PShlPWEuc3RhdGVOb2RlKXx8MSZlLl92aXNpYmlsaXR5fHwobD0hMCkpLGU9YSxhPWEucmV0dXJuO3JldHVybiAzPT09ZS50YWc/KGE9ZS5zdGF0ZU5vZGUsbCYmbnVsbCE9PXQmJihsPTMxLWVQKG4pLG51bGw9PT0ocj0oZT1hLmhpZGRlblVwZGF0ZXMpW2xdKT9lW2xdPVt0XTpyLnB1c2godCksdC5sYW5lPTB4MjAwMDAwMDB8biksYSk6bnVsbH1mdW5jdGlvbiBybShlKXtpZig1MDx1Mil0aHJvdyB1Mj0wLHUzPW51bGwsRXJyb3IodSgxODUpKTtmb3IodmFyIHQ9ZS5yZXR1cm47bnVsbCE9PXQ7KXQ9KGU9dCkucmV0dXJuO3JldHVybiAzPT09ZS50YWc/ZS5zdGF0ZU5vZGU6bnVsbH12YXIgcmg9e307ZnVuY3Rpb24gcmcoZSx0LG4scil7dGhpcy50YWc9ZSx0aGlzLmtleT1uLHRoaXMuc2libGluZz10aGlzLmNoaWxkPXRoaXMucmV0dXJuPXRoaXMuc3RhdGVOb2RlPXRoaXMudHlwZT10aGlzLmVsZW1lbnRUeXBlPW51bGwsdGhpcy5pbmRleD0wLHRoaXMucmVmQ2xlYW51cD10aGlzLnJlZj1udWxsLHRoaXMucGVuZGluZ1Byb3BzPXQsdGhpcy5kZXBlbmRlbmNpZXM9dGhpcy5tZW1vaXplZFN0YXRlPXRoaXMudXBkYXRlUXVldWU9dGhpcy5tZW1vaXplZFByb3BzPW51bGwsdGhpcy5tb2RlPXIsdGhpcy5zdWJ0cmVlRmxhZ3M9dGhpcy5mbGFncz0wLHRoaXMuZGVsZXRpb25zPW51bGwsdGhpcy5jaGlsZExhbmVzPXRoaXMubGFuZXM9MCx0aGlzLmFsdGVybmF0ZT1udWxsfWZ1bmN0aW9uIHJ2KGUsdCxuLHIpe3JldHVybiBuZXcgcmcoZSx0LG4scil9ZnVuY3Rpb24gcnkoZSl7cmV0dXJuISghKGU9ZS5wcm90b3R5cGUpfHwhZS5pc1JlYWN0Q29tcG9uZW50KX1mdW5jdGlvbiByYihlLHQpe3ZhciBuPWUuYWx0ZXJuYXRlO3JldHVybiBudWxsPT09bj8oKG49cnYoZS50YWcsdCxlLmtleSxlLm1vZGUpKS5lbGVtZW50VHlwZT1lLmVsZW1lbnRUeXBlLG4udHlwZT1lLnR5cGUsbi5zdGF0ZU5vZGU9ZS5zdGF0ZU5vZGUsbi5hbHRlcm5hdGU9ZSxlLmFsdGVybmF0ZT1uKToobi5wZW5kaW5nUHJvcHM9dCxuLnR5cGU9ZS50eXBlLG4uZmxhZ3M9MCxuLnN1YnRyZWVGbGFncz0wLG4uZGVsZXRpb25zPW51bGwpLG4uZmxhZ3M9MHg3ZTAwMDAwJmUuZmxhZ3Msbi5jaGlsZExhbmVzPWUuY2hpbGRMYW5lcyxuLmxhbmVzPWUubGFuZXMsbi5jaGlsZD1lLmNoaWxkLG4ubWVtb2l6ZWRQcm9wcz1lLm1lbW9pemVkUHJvcHMsbi5tZW1vaXplZFN0YXRlPWUubWVtb2l6ZWRTdGF0ZSxuLnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsdD1lLmRlcGVuZGVuY2llcyxuLmRlcGVuZGVuY2llcz1udWxsPT09dD9udWxsOntsYW5lczp0LmxhbmVzLGZpcnN0Q29udGV4dDp0LmZpcnN0Q29udGV4dH0sbi5zaWJsaW5nPWUuc2libGluZyxuLmluZGV4PWUuaW5kZXgsbi5yZWY9ZS5yZWYsbi5yZWZDbGVhbnVwPWUucmVmQ2xlYW51cCxufWZ1bmN0aW9uIHJ3KGUsdCl7ZS5mbGFncyY9MHg3ZTAwMDAyO3ZhciBuPWUuYWx0ZXJuYXRlO3JldHVybiBudWxsPT09bj8oZS5jaGlsZExhbmVzPTAsZS5sYW5lcz10LGUuY2hpbGQ9bnVsbCxlLnN1YnRyZWVGbGFncz0wLGUubWVtb2l6ZWRQcm9wcz1udWxsLGUubWVtb2l6ZWRTdGF0ZT1udWxsLGUudXBkYXRlUXVldWU9bnVsbCxlLmRlcGVuZGVuY2llcz1udWxsLGUuc3RhdGVOb2RlPW51bGwpOihlLmNoaWxkTGFuZXM9bi5jaGlsZExhbmVzLGUubGFuZXM9bi5sYW5lcyxlLmNoaWxkPW4uY2hpbGQsZS5zdWJ0cmVlRmxhZ3M9MCxlLmRlbGV0aW9ucz1udWxsLGUubWVtb2l6ZWRQcm9wcz1uLm1lbW9pemVkUHJvcHMsZS5tZW1vaXplZFN0YXRlPW4ubWVtb2l6ZWRTdGF0ZSxlLnVwZGF0ZVF1ZXVlPW4udXBkYXRlUXVldWUsZS50eXBlPW4udHlwZSxlLmRlcGVuZGVuY2llcz1udWxsPT09KHQ9bi5kZXBlbmRlbmNpZXMpP251bGw6e2xhbmVzOnQubGFuZXMsZmlyc3RDb250ZXh0OnQuZmlyc3RDb250ZXh0fSksZX1mdW5jdGlvbiByayhlLHQsbixyLGwsYSl7dmFyIG89MDtpZihyPWUsImZ1bmN0aW9uIj09dHlwZW9mIGUpcnkoZSkmJihvPTEpO2Vsc2UgaWYoInN0cmluZyI9PXR5cGVvZiBlKW89IWZ1bmN0aW9uKGUsdCxuKXtpZigxPT09bnx8bnVsbCE9dC5pdGVtUHJvcClyZXR1cm4hMTtzd2l0Y2goZSl7Y2FzZSJtZXRhIjpjYXNlInRpdGxlIjpyZXR1cm4hMDtjYXNlInN0eWxlIjppZigic3RyaW5nIiE9dHlwZW9mIHQucHJlY2VkZW5jZXx8InN0cmluZyIhPXR5cGVvZiB0LmhyZWZ8fCIiPT09dC5ocmVmKWJyZWFrO3JldHVybiEwO2Nhc2UibGluayI6aWYoInN0cmluZyIhPXR5cGVvZiB0LnJlbHx8InN0cmluZyIhPXR5cGVvZiB0LmhyZWZ8fCIiPT09dC5ocmVmfHx0Lm9uTG9hZHx8dC5vbkVycm9yKWJyZWFrO2lmKCJzdHlsZXNoZWV0Ij09PXQucmVsKXJldHVybiBlPXQuZGlzYWJsZWQsInN0cmluZyI9PXR5cGVvZiB0LnByZWNlZGVuY2UmJm51bGw9PWU7cmV0dXJuITA7Y2FzZSJzY3JpcHQiOmlmKHQuYXN5bmMmJiJmdW5jdGlvbiIhPXR5cGVvZiB0LmFzeW5jJiYic3ltYm9sIiE9dHlwZW9mIHQuYXN5bmMmJiF0Lm9uTG9hZCYmIXQub25FcnJvciYmdC5zcmMmJiJzdHJpbmciPT10eXBlb2YgdC5zcmMpcmV0dXJuITB9cmV0dXJuITF9KGUsbixlZS5jdXJyZW50KT8iaHRtbCI9PT1lfHwiaGVhZCI9PT1lfHwiYm9keSI9PT1lPzI3OjU6MjY7ZWxzZSBlOnN3aXRjaChlKXtjYXNlIEE6cmV0dXJuKGU9cnYoMzEsbix0LGwpKS5lbGVtZW50VHlwZT1BLGUubGFuZXM9YSxlO2Nhc2UgQzpyZXR1cm4gclMobi5jaGlsZHJlbixsLGEsdCk7Y2FzZSBUOm89OCxsfD0yNDticmVhaztjYXNlIE86cmV0dXJuKGU9cnYoMTIsbix0LDJ8bCkpLmVsZW1lbnRUeXBlPU8sZS5sYW5lcz1hLGU7Y2FzZSBNOnJldHVybihlPXJ2KDEzLG4sdCxsKSkuZWxlbWVudFR5cGU9TSxlLmxhbmVzPWEsZTtjYXNlIEk6cmV0dXJuKGU9cnYoMTksbix0LGwpKS5lbGVtZW50VHlwZT1JLGUubGFuZXM9YSxlO2Nhc2UgajpjYXNlIEI6cmV0dXJuKGU9cnYoMzAsbix0LGU9MzJ8bCkpLmVsZW1lbnRUeXBlPUIsZS5sYW5lcz1hLGUuc3RhdGVOb2RlPXthdXRvTmFtZTpudWxsLHBhaXJlZDpudWxsLGNsb25lczpudWxsLHJlZjpudWxsfSxlO2RlZmF1bHQ6aWYoIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSlzd2l0Y2goZS4kJHR5cGVvZil7Y2FzZSBMOm89MTA7YnJlYWsgZTtjYXNlIHo6bz05O2JyZWFrIGU7Y2FzZSBSOm89MTE7YnJlYWsgZTtjYXNlIEQ6bz0xNDticmVhayBlO2Nhc2UgRjpvPTE2LHI9bnVsbDticmVhayBlfW89Mjksbj1FcnJvcih1KDEzMCxudWxsPT09ZT8ibnVsbCI6dHlwZW9mIGUsIiIpKSxyPW51bGx9cmV0dXJuKHQ9cnYobyxuLHQsbCkpLmVsZW1lbnRUeXBlPWUsdC50eXBlPXIsdC5sYW5lcz1hLHR9ZnVuY3Rpb24gclMoZSx0LG4scil7cmV0dXJuKGU9cnYoNyxlLHIsdCkpLmxhbmVzPW4sZX1mdW5jdGlvbiByRShlLHQsbil7cmV0dXJuKGU9cnYoNixlLG51bGwsdCkpLmxhbmVzPW4sZX1mdW5jdGlvbiByeChlKXt2YXIgdD1ydigxOCxudWxsLG51bGwsMCk7cmV0dXJuIHQuc3RhdGVOb2RlPWUsdH1mdW5jdGlvbiByXyhlLHQsbil7cmV0dXJuKHQ9cnYoNCxudWxsIT09ZS5jaGlsZHJlbj9lLmNoaWxkcmVuOltdLGUua2V5LHQpKS5sYW5lcz1uLHQuc3RhdGVOb2RlPXtjb250YWluZXJJbmZvOmUuY29udGFpbmVySW5mbyxwZW5kaW5nQ2hpbGRyZW46bnVsbCxpbXBsZW1lbnRhdGlvbjplLmltcGxlbWVudGF0aW9ufSx0fXZhciByUD1uZXcgV2Vha01hcDtmdW5jdGlvbiByTihlLHQpe2lmKCJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUpe3ZhciBuPXJQLmdldChlKTtyZXR1cm4gdm9pZCAwIT09bj9uOih0PXt2YWx1ZTplLHNvdXJjZTp0LHN0YWNrOmVmKHQpfSxyUC5zZXQoZSx0KSx0KX1yZXR1cm57dmFsdWU6ZSxzb3VyY2U6dCxzdGFjazplZih0KX19dmFyIHJDPVtdLHJUPTAsck89bnVsbCxyej0wLHJMPVtdLHJSPTAsck09bnVsbCxyST0xLHJEPSIiO2Z1bmN0aW9uIHJGKGUsdCl7ckNbclQrK109cnosckNbclQrK109ck8sck89ZSxyej10fWZ1bmN0aW9uIHJBKGUsdCxuKXtyTFtyUisrXT1ySSxyTFtyUisrXT1yRCxyTFtyUisrXT1yTSxyTT1lO3ZhciByPXJJO2U9ckQ7dmFyIGw9MzItZVAociktMTtyJj1+KDE8PGwpLG4rPTE7dmFyIGE9MzItZVAodCkrbDtpZigzMDxhKXt2YXIgbz1sLWwlNTthPShyJigxPDxvKS0xKS50b1N0cmluZygzMikscj4+PW8sbC09byxyST0xPDwzMi1lUCh0KStsfG48PGx8cixyRD1hK2V9ZWxzZSByST0xPDxhfG48PGx8cixyRD1lfWZ1bmN0aW9uIHJqKGUpe251bGwhPT1lLnJldHVybiYmKHJGKGUsMSksckEoZSwxLDApKX1mdW5jdGlvbiByVShlKXtmb3IoO2U9PT1yTzspck89ckNbLS1yVF0sckNbclRdPW51bGwscno9ckNbLS1yVF0sckNbclRdPW51bGw7Zm9yKDtlPT09ck07KXJNPXJMWy0tclJdLHJMW3JSXT1udWxsLHJEPXJMWy0tclJdLHJMW3JSXT1udWxsLHJJPXJMWy0tclJdLHJMW3JSXT1udWxsfWZ1bmN0aW9uIHJCKGUsdCl7ckxbclIrK109ckksckxbclIrK109ckQsckxbclIrK109ck0sckk9dC5pZCxyRD10Lm92ZXJmbG93LHJNPWV9dmFyIHJWPW51bGwsckg9bnVsbCxyJD0hMSxyUT1udWxsLHJXPSExLHJxPUVycm9yKHUoNTE5KSk7ZnVuY3Rpb24gcksoZSl7dmFyIHQ9RXJyb3IodSg0MTgsMTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0mJmFyZ3VtZW50c1sxXT8idGV4dCI6IkhUTUwiLCIiKSk7dGhyb3cgcjAock4odCxlKSkscnF9ZnVuY3Rpb24gclgoZSl7dmFyIHQ9ZS5zdGF0ZU5vZGUsbj1lLnR5cGUscj1lLm1lbW9pemVkUHJvcHM7c3dpdGNoKHRbZVddPWUsdFtlcV09cixuKXtjYXNlImRpYWxvZyI6c0ooImNhbmNlbCIsdCksc0ooImNsb3NlIix0KTticmVhaztjYXNlImlmcmFtZSI6Y2FzZSJvYmplY3QiOmNhc2UiZW1iZWQiOnNKKCJsb2FkIix0KTticmVhaztjYXNlInZpZGVvIjpjYXNlImF1ZGlvIjpmb3Iobj0wO248c1gubGVuZ3RoO24rKylzSihzWFtuXSx0KTticmVhaztjYXNlInNvdXJjZSI6c0ooImVycm9yIix0KTticmVhaztjYXNlImltZyI6Y2FzZSJpbWFnZSI6Y2FzZSJsaW5rIjpzSigiZXJyb3IiLHQpLHNKKCJsb2FkIix0KTticmVhaztjYXNlImRldGFpbHMiOnNKKCJ0b2dnbGUiLHQpO2JyZWFrO2Nhc2UiaW5wdXQiOnNKKCJpbnZhbGlkIix0KSx0Zyh0LHIudmFsdWUsci5kZWZhdWx0VmFsdWUsci5jaGVja2VkLHIuZGVmYXVsdENoZWNrZWQsci50eXBlLHIubmFtZSwhMCk7YnJlYWs7Y2FzZSJzZWxlY3QiOnNKKCJpbnZhbGlkIix0KTticmVhaztjYXNlInRleHRhcmVhIjpzSigiaW52YWxpZCIsdCksdHcodCxyLnZhbHVlLHIuZGVmYXVsdFZhbHVlLHIuY2hpbGRyZW4pfSJzdHJpbmciIT10eXBlb2Yobj1yLmNoaWxkcmVuKSYmIm51bWJlciIhPXR5cGVvZiBuJiYiYmlnaW50IiE9dHlwZW9mIG58fHQudGV4dENvbnRlbnQ9PT0iIitufHwhMD09PXIuc3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nfHxjdCh0LnRleHRDb250ZW50LG4pPyhudWxsIT1yLnBvcG92ZXImJihzSigiYmVmb3JldG9nZ2xlIix0KSxzSigidG9nZ2xlIix0KSksbnVsbCE9ci5vblNjcm9sbCYmc0ooInNjcm9sbCIsdCksbnVsbCE9ci5vblNjcm9sbEVuZCYmc0ooInNjcm9sbGVuZCIsdCksbnVsbCE9ci5vbkNsaWNrJiYodC5vbmNsaWNrPXRUKSx0PSEwKTp0PSExLHR8fHJLKGUsITApfWZ1bmN0aW9uIHJHKGUpe2ZvcihyVj1lLnJldHVybjtyVjspc3dpdGNoKHJWLnRhZyl7Y2FzZSA1OmNhc2UgMzE6Y2FzZSAxMzpyVz0hMTtyZXR1cm47Y2FzZSAyNzpjYXNlIDM6clc9ITA7cmV0dXJuO2RlZmF1bHQ6clY9clYucmV0dXJufX1mdW5jdGlvbiByWShlKXtpZihlIT09clYpcmV0dXJuITE7aWYoIXIkKXJldHVybiByRyhlKSxyJD0hMCwhMTt2YXIgdCxuPWUudGFnO2lmKCh0PTMhPT1uJiYyNyE9PW4pJiYoKHQ9NT09PW4pJiYodD0iZm9ybSI9PT0odD1lLnR5cGUpfHwiYnV0dG9uIj09PXR8fGNmKGUudHlwZSxlLm1lbW9pemVkUHJvcHMpKSx0PSF0KSx0JiZySCYmcksoZSksckcoZSksMTM9PT1uKXtpZighKGU9bnVsbCE9PShlPWUubWVtb2l6ZWRTdGF0ZSk/ZS5kZWh5ZHJhdGVkOm51bGwpKXRocm93IEVycm9yKHUoMzE3KSk7ckg9Y3EoZSl9ZWxzZSBpZigzMT09PW4pe2lmKCEoZT1udWxsIT09KGU9ZS5tZW1vaXplZFN0YXRlKT9lLmRlaHlkcmF0ZWQ6bnVsbCkpdGhyb3cgRXJyb3IodSgzMTcpKTtySD1jcShlKX1lbHNlIDI3PT09bj8obj1ySCxjeShlLnR5cGUpPyhlPWNXLGNXPW51bGwsckg9ZSk6ckg9bik6ckg9clY/Y1EoZS5zdGF0ZU5vZGUubmV4dFNpYmxpbmcpOm51bGw7cmV0dXJuITB9ZnVuY3Rpb24gckooKXtySD1yVj1udWxsLHIkPSExfWZ1bmN0aW9uIHJaKCl7dmFyIGU9clE7cmV0dXJuIG51bGwhPT1lJiYobnVsbD09PXVqP3VqPWU6dWoucHVzaC5hcHBseSh1aixlKSxyUT1udWxsKSxlfWZ1bmN0aW9uIHIwKGUpe251bGw9PT1yUT9yUT1bZV06clEucHVzaChlKX12YXIgcjE9WShudWxsKSxyMj1udWxsLHIzPW51bGw7ZnVuY3Rpb24gcjQoZSx0LG4pe1oocjEsdC5fY3VycmVudFZhbHVlKSx0Ll9jdXJyZW50VmFsdWU9bn1mdW5jdGlvbiByOChlKXtlLl9jdXJyZW50VmFsdWU9cjEuY3VycmVudCxKKHIxKX1mdW5jdGlvbiByNShlLHQsbil7Zm9yKDtudWxsIT09ZTspe3ZhciByPWUuYWx0ZXJuYXRlO2lmKChlLmNoaWxkTGFuZXMmdCkhPT10PyhlLmNoaWxkTGFuZXN8PXQsbnVsbCE9PXImJihyLmNoaWxkTGFuZXN8PXQpKTpudWxsIT09ciYmKHIuY2hpbGRMYW5lcyZ0KSE9PXQmJihyLmNoaWxkTGFuZXN8PXQpLGU9PT1uKWJyZWFrO2U9ZS5yZXR1cm59fWZ1bmN0aW9uIHI2KGUsdCxuLHIpe3ZhciBsPWUuY2hpbGQ7Zm9yKG51bGwhPT1sJiYobC5yZXR1cm49ZSk7bnVsbCE9PWw7KXt2YXIgYT1sLmRlcGVuZGVuY2llcztpZihudWxsIT09YSl7dmFyIG89bC5jaGlsZDthPWEuZmlyc3RDb250ZXh0O2U6Zm9yKDtudWxsIT09YTspe3ZhciBpPWE7YT1sO2Zvcih2YXIgcz0wO3M8dC5sZW5ndGg7cysrKWlmKGkuY29udGV4dD09PXRbc10pe2EubGFuZXN8PW4sbnVsbCE9PShpPWEuYWx0ZXJuYXRlKSYmKGkubGFuZXN8PW4pLHI1KGEucmV0dXJuLG4sZSkscnx8KG89bnVsbCk7YnJlYWsgZX1hPWkubmV4dH19ZWxzZSBpZigxOD09PWwudGFnKXtpZihudWxsPT09KG89bC5yZXR1cm4pKXRocm93IEVycm9yKHUoMzQxKSk7by5sYW5lc3w9bixudWxsIT09KGE9by5hbHRlcm5hdGUpJiYoYS5sYW5lc3w9bikscjUobyxuLGUpLG89bnVsbH1lbHNlIG89bC5jaGlsZDtpZihudWxsIT09bylvLnJldHVybj1sO2Vsc2UgZm9yKG89bDtudWxsIT09bzspe2lmKG89PT1lKXtvPW51bGw7YnJlYWt9aWYobnVsbCE9PShsPW8uc2libGluZykpe2wucmV0dXJuPW8ucmV0dXJuLG89bDticmVha31vPW8ucmV0dXJufWw9b319ZnVuY3Rpb24gcjkoZSx0LG4scil7ZT1udWxsO2Zvcih2YXIgbD10LGE9ITE7bnVsbCE9PWw7KXtpZighYSl7aWYoMCE9KDUyNDI4OCZsLmZsYWdzKSlhPSEwO2Vsc2UgaWYoMCE9KDI2MjE0NCZsLmZsYWdzKSlicmVha31pZigxMD09PWwudGFnKXt2YXIgbz1sLmFsdGVybmF0ZTtpZihudWxsPT09byl0aHJvdyBFcnJvcih1KDM4NykpO2lmKG51bGwhPT0obz1vLm1lbW9pemVkUHJvcHMpKXt2YXIgaT1sLnR5cGU7bkEobC5wZW5kaW5nUHJvcHMudmFsdWUsby52YWx1ZSl8fChudWxsIT09ZT9lLnB1c2goaSk6ZT1baV0pfX1lbHNlIGlmKGw9PT1lci5jdXJyZW50KXtpZihudWxsPT09KG89bC5hbHRlcm5hdGUpKXRocm93IEVycm9yKHUoMzg3KSk7by5tZW1vaXplZFN0YXRlLm1lbW9pemVkU3RhdGUhPT1sLm1lbW9pemVkU3RhdGUubWVtb2l6ZWRTdGF0ZSYmKG51bGwhPT1lP2UucHVzaChmdik6ZT1bZnZdKX1sPWwucmV0dXJufW51bGwhPT1lJiZyNih0LGUsbixyKSx0LmZsYWdzfD0yNjIxNDR9ZnVuY3Rpb24gcjcoZSl7Zm9yKGU9ZS5maXJzdENvbnRleHQ7bnVsbCE9PWU7KXtpZighbkEoZS5jb250ZXh0Ll9jdXJyZW50VmFsdWUsZS5tZW1vaXplZFZhbHVlKSlyZXR1cm4hMDtlPWUubmV4dH1yZXR1cm4hMX1mdW5jdGlvbiBsZShlKXtyMj1lLHIzPW51bGwsbnVsbCE9PShlPWUuZGVwZW5kZW5jaWVzKSYmKGUuZmlyc3RDb250ZXh0PW51bGwpfWZ1bmN0aW9uIGx0KGUpe3JldHVybiBscihyMixlKX1mdW5jdGlvbiBsbihlLHQpe3JldHVybiBudWxsPT09cjImJmxlKGUpLGxyKGUsdCl9ZnVuY3Rpb24gbHIoZSx0KXt2YXIgbj10Ll9jdXJyZW50VmFsdWU7aWYodD17Y29udGV4dDp0LG1lbW9pemVkVmFsdWU6bixuZXh0Om51bGx9LG51bGw9PT1yMyl7aWYobnVsbD09PWUpdGhyb3cgRXJyb3IodSgzMDgpKTtyMz10LGUuZGVwZW5kZW5jaWVzPXtsYW5lczowLGZpcnN0Q29udGV4dDp0fSxlLmZsYWdzfD01MjQyODh9ZWxzZSByMz1yMy5uZXh0PXQ7cmV0dXJuIG59dmFyIGxsPSJ1Ij50eXBlb2YgQWJvcnRDb250cm9sbGVyP0Fib3J0Q29udHJvbGxlcjpmdW5jdGlvbigpe3ZhciBlPVtdLHQ9dGhpcy5zaWduYWw9e2Fib3J0ZWQ6ITEsYWRkRXZlbnRMaXN0ZW5lcjpmdW5jdGlvbih0LG4pe2UucHVzaChuKX19O3RoaXMuYWJvcnQ9ZnVuY3Rpb24oKXt0LmFib3J0ZWQ9ITAsZS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3JldHVybiBlKCl9KX19LGxhPWEudW5zdGFibGVfc2NoZWR1bGVDYWxsYmFjayxsbz1hLnVuc3RhYmxlX05vcm1hbFByaW9yaXR5LGxpPXskJHR5cGVvZjpMLENvbnN1bWVyOm51bGwsUHJvdmlkZXI6bnVsbCxfY3VycmVudFZhbHVlOm51bGwsX2N1cnJlbnRWYWx1ZTI6bnVsbCxfdGhyZWFkQ291bnQ6MH07ZnVuY3Rpb24gbHUoKXtyZXR1cm57Y29udHJvbGxlcjpuZXcgbGwsZGF0YTpuZXcgTWFwLHJlZkNvdW50OjB9fWZ1bmN0aW9uIGxzKGUpe2UucmVmQ291bnQtLSwwPT09ZS5yZWZDb3VudCYmbGEobG8sZnVuY3Rpb24oKXtlLmNvbnRyb2xsZXIuYWJvcnQoKX0pfWZ1bmN0aW9uIGxjKGUsdCl7aWYoMCE9KDQxOTQwNDgmZS5wZW5kaW5nTGFuZXMpKXt2YXIgbj1lLnRyYW5zaXRpb25UeXBlcztmb3IobnVsbD09PW4mJihuPWUudHJhbnNpdGlvblR5cGVzPVtdKSxlPTA7ZTx0Lmxlbmd0aDtlKyspe3ZhciByPXRbZV07LTE9PT1uLmluZGV4T2YocikmJm4ucHVzaChyKX19fXZhciBsZj1udWxsLGxkPW51bGwsbHA9MCxsbT0wLGxoPW51bGw7ZnVuY3Rpb24gbGcoKXtpZigwPT0tLWxwJiYobGY9bnVsbCxudWxsIT09bGQpKXtudWxsIT09bGgmJihsaC5zdGF0dXM9ImZ1bGZpbGxlZCIpO3ZhciBlPWxkO2xkPW51bGwsbG09MCxsaD1udWxsO2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKSgwLGVbdF0pKCl9fXZhciBsdj1XLlM7Vy5TPWZ1bmN0aW9uKGUsdCl7aWYodVY9ZXYoKSwib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10JiYiZnVuY3Rpb24iPT10eXBlb2YgdC50aGVuJiZmdW5jdGlvbihlLHQpe2lmKG51bGw9PT1sZCl7dmFyIG49bGQ9W107bHA9MCxsbT1zJCgpLGxoPXtzdGF0dXM6InBlbmRpbmciLHZhbHVlOnZvaWQgMCx0aGVuOmZ1bmN0aW9uKGUpe24ucHVzaChlKX19fWxwKyssdC50aGVuKGxnLGxnKX0oMCx0KSxudWxsIT09bGYpZm9yKHZhciBuPXN6O251bGwhPT1uOylsYyhuLGxmKSxuPW4ubmV4dDtpZihudWxsIT09KG49ZS50eXBlcykpe2Zvcih2YXIgcj1zejtudWxsIT09cjspbGMocixuKSxyPXIubmV4dDtpZigwIT09bG0pe251bGw9PT0ocj1sZikmJihyPWxmPVtdKTtmb3IodmFyIGw9MDtsPG4ubGVuZ3RoO2wrKyl7dmFyIGE9bltsXTstMT09PXIuaW5kZXhPZihhKSYmci5wdXNoKGEpfX19bnVsbCE9PWx2JiZsdihlLHQpfTt2YXIgbHk9WShudWxsKTtmdW5jdGlvbiBsYigpe3ZhciBlPWx5LmN1cnJlbnQ7cmV0dXJuIG51bGwhPT1lP2U6dUUucG9vbGVkQ2FjaGV9ZnVuY3Rpb24gbHcoZSx0KXtudWxsPT09dD9aKGx5LGx5LmN1cnJlbnQpOloobHksdC5wb29sKX1mdW5jdGlvbiBsaygpe3ZhciBlPWxiKCk7cmV0dXJuIG51bGw9PT1lP251bGw6e3BhcmVudDpsaS5fY3VycmVudFZhbHVlLHBvb2w6ZX19dmFyIGxTPUVycm9yKHUoNDYwKSksbEU9RXJyb3IodSg0NzQpKSxseD1FcnJvcih1KDU0MikpLGxfPXt0aGVuOmZ1bmN0aW9uKCl7fX07ZnVuY3Rpb24gbFAoZSl7cmV0dXJuImZ1bGZpbGxlZCI9PT0oZT1lLnN0YXR1cyl8fCJyZWplY3RlZCI9PT1lfWZ1bmN0aW9uIGxOKGUsdCxuKXtzd2l0Y2godm9pZCAwPT09KG49ZVtuXSk/ZS5wdXNoKHQpOm4hPT10JiYodC50aGVuKHRULHRUKSx0PW4pLHQuc3RhdHVzKXtjYXNlImZ1bGZpbGxlZCI6cmV0dXJuIHQudmFsdWU7Y2FzZSJyZWplY3RlZCI6dGhyb3cgbHooZT10LnJlYXNvbiksZTtkZWZhdWx0OmlmKCJzdHJpbmciPT10eXBlb2YgdC5zdGF0dXMpdC50aGVuKHRULHRUKTtlbHNle2lmKG51bGwhPT0oZT11RSkmJjEwMDxlLnNoZWxsU3VzcGVuZENvdW50ZXIpdGhyb3cgRXJyb3IodSg0ODIpKTsoZT10KS5zdGF0dXM9InBlbmRpbmciLGUudGhlbihmdW5jdGlvbihlKXtpZigicGVuZGluZyI9PT10LnN0YXR1cyl7dmFyIG49dDtuLnN0YXR1cz0iZnVsZmlsbGVkIixuLnZhbHVlPWV9fSxmdW5jdGlvbihlKXtpZigicGVuZGluZyI9PT10LnN0YXR1cyl7dmFyIG49dDtuLnN0YXR1cz0icmVqZWN0ZWQiLG4ucmVhc29uPWV9fSl9c3dpdGNoKHQuc3RhdHVzKXtjYXNlImZ1bGZpbGxlZCI6cmV0dXJuIHQudmFsdWU7Y2FzZSJyZWplY3RlZCI6dGhyb3cgbHooZT10LnJlYXNvbiksZX10aHJvdyBsVD10LGxTfX1mdW5jdGlvbiBsQyhlKXt0cnl7cmV0dXJuKDAsZS5faW5pdCkoZS5fcGF5bG9hZCl9Y2F0Y2goZSl7aWYobnVsbCE9PWUmJiJvYmplY3QiPT10eXBlb2YgZSYmImZ1bmN0aW9uIj09dHlwZW9mIGUudGhlbil0aHJvdyBsVD1lLGxTO3Rocm93IGV9fXZhciBsVD1udWxsO2Z1bmN0aW9uIGxPKCl7aWYobnVsbD09PWxUKXRocm93IEVycm9yKHUoNDU5KSk7dmFyIGU9bFQ7cmV0dXJuIGxUPW51bGwsZX1mdW5jdGlvbiBseihlKXtpZihlPT09bFN8fGU9PT1seCl0aHJvdyBFcnJvcih1KDQ4MykpfXZhciBsTD1udWxsLGxSPTA7ZnVuY3Rpb24gbE0oZSl7dmFyIHQ9bFI7cmV0dXJuIGxSKz0xLG51bGw9PT1sTCYmKGxMPVtdKSxsTihsTCxlLHQpfWZ1bmN0aW9uIGxJKGUsdCl7ZS5yZWY9dm9pZCAwIT09KHQ9dC5wcm9wcy5yZWYpP3Q6bnVsbH1mdW5jdGlvbiBsRChlLHQpe2lmKHQuJCR0eXBlb2Y9PT1fKXRocm93IEVycm9yKHUoNTI1KSk7dGhyb3cgRXJyb3IodSgzMSwiW29iamVjdCBPYmplY3RdIj09PShlPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KSk/Im9iamVjdCB3aXRoIGtleXMgeyIrT2JqZWN0LmtleXModCkuam9pbigiLCAiKSsifSI6ZSkpfWZ1bmN0aW9uIGxGKGUpe2Z1bmN0aW9uIHQodCxuKXtpZihlKXt2YXIgcj10LmRlbGV0aW9ucztudWxsPT09cj8odC5kZWxldGlvbnM9W25dLHQuZmxhZ3N8PTE2KTpyLnB1c2gobil9fWZ1bmN0aW9uIG4obixyKXtpZighZSlyZXR1cm4gbnVsbDtmb3IoO251bGwhPT1yOyl0KG4scikscj1yLnNpYmxpbmc7cmV0dXJuIG51bGx9ZnVuY3Rpb24gcihlKXtmb3IodmFyIHQ9bmV3IE1hcDtudWxsIT09ZTspbnVsbD09PWUua2V5P3Quc2V0KGUuaW5kZXgsZSk6dC5zZXQoZS5rZXksZSksZT1lLnNpYmxpbmc7cmV0dXJuIHR9ZnVuY3Rpb24gbChlLHQpe3JldHVybihlPXJiKGUsdCkpLmluZGV4PTAsZS5zaWJsaW5nPW51bGwsZX1mdW5jdGlvbiBhKHQsbixyKXtyZXR1cm4odC5pbmRleD1yLGUpP251bGwhPT0ocj10LmFsdGVybmF0ZSk/KHI9ci5pbmRleCk8bj8odC5mbGFnc3w9MHg4MDAwMDAyLG4pOnI6KHQuZmxhZ3N8PTB4ODAwMDAwMixuKToodC5mbGFnc3w9MTA0ODU3NixuKX1mdW5jdGlvbiBvKHQpe3JldHVybiBlJiZudWxsPT09dC5hbHRlcm5hdGUmJih0LmZsYWdzfD0weDgwMDAwMDIpLHR9ZnVuY3Rpb24gaShlLHQsbixyKXtyZXR1cm4gbnVsbD09PXR8fDYhPT10LnRhZz8odD1yRShuLGUubW9kZSxyKSkucmV0dXJuPWU6KHQ9bCh0LG4pKS5yZXR1cm49ZSx0fWZ1bmN0aW9uIHMoZSx0LG4scil7dmFyIGE9bi50eXBlO3JldHVybiBhPT09Qz8obEkoZT1mKGUsdCxuLnByb3BzLmNoaWxkcmVuLHIsbi5rZXkpLG4pLGUpOihudWxsIT09dCYmKHQuZWxlbWVudFR5cGU9PT1hfHwib2JqZWN0Ij09dHlwZW9mIGEmJm51bGwhPT1hJiZhLiQkdHlwZW9mPT09RiYmbEMoYSk9PT10LnR5cGUpP2xJKHQ9bCh0LG4ucHJvcHMpLG4pOmxJKHQ9cmsobi50eXBlLG4ua2V5LG4ucHJvcHMsbnVsbCxlLm1vZGUsciksbiksdC5yZXR1cm49ZSx0KX1mdW5jdGlvbiBjKGUsdCxuLHIpe3JldHVybiBudWxsPT09dHx8NCE9PXQudGFnfHx0LnN0YXRlTm9kZS5jb250YWluZXJJbmZvIT09bi5jb250YWluZXJJbmZvfHx0LnN0YXRlTm9kZS5pbXBsZW1lbnRhdGlvbiE9PW4uaW1wbGVtZW50YXRpb24/KHQ9cl8obixlLm1vZGUscikpLnJldHVybj1lOih0PWwodCxuLmNoaWxkcmVufHxbXSkpLnJldHVybj1lLHR9ZnVuY3Rpb24gZihlLHQsbixyLGEpe3JldHVybiBudWxsPT09dHx8NyE9PXQudGFnPyh0PXJTKG4sZS5tb2RlLHIsYSkpLnJldHVybj1lOih0PWwodCxuKSkucmV0dXJuPWUsdH1mdW5jdGlvbiBkKGUsdCxuKXtpZigic3RyaW5nIj09dHlwZW9mIHQmJiIiIT09dHx8Im51bWJlciI9PXR5cGVvZiB0fHwiYmlnaW50Ij09dHlwZW9mIHQpcmV0dXJuKHQ9ckUoIiIrdCxlLm1vZGUsbikpLnJldHVybj1lLHQ7aWYoIm9iamVjdCI9PXR5cGVvZiB0JiZudWxsIT09dCl7c3dpdGNoKHQuJCR0eXBlb2Ype2Nhc2UgUDpyZXR1cm4gbEkobj1yayh0LnR5cGUsdC5rZXksdC5wcm9wcyxudWxsLGUubW9kZSxuKSx0KSxuLnJldHVybj1lLG47Y2FzZSBOOnJldHVybih0PXJfKHQsZS5tb2RlLG4pKS5yZXR1cm49ZSx0O2Nhc2UgRjpyZXR1cm4gZChlLHQ9bEModCksbil9aWYoUSh0KXx8SCh0KSlyZXR1cm4odD1yUyh0LGUubW9kZSxuLG51bGwpKS5yZXR1cm49ZSx0O2lmKCJmdW5jdGlvbiI9PXR5cGVvZiB0LnRoZW4pcmV0dXJuIGQoZSxsTSh0KSxuKTtpZih0LiQkdHlwZW9mPT09TClyZXR1cm4gZChlLGxuKGUsdCksbik7bEQoZSx0KX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBwKGUsdCxuLHIpe3ZhciBsPW51bGwhPT10P3Qua2V5Om51bGw7aWYoInN0cmluZyI9PXR5cGVvZiBuJiYiIiE9PW58fCJudW1iZXIiPT10eXBlb2Ygbnx8ImJpZ2ludCI9PXR5cGVvZiBuKXJldHVybiBudWxsIT09bD9udWxsOmkoZSx0LCIiK24scik7aWYoIm9iamVjdCI9PXR5cGVvZiBuJiZudWxsIT09bil7c3dpdGNoKG4uJCR0eXBlb2Ype2Nhc2UgUDpyZXR1cm4gbi5rZXk9PT1sP3MoZSx0LG4scik6bnVsbDtjYXNlIE46cmV0dXJuIG4ua2V5PT09bD9jKGUsdCxuLHIpOm51bGw7Y2FzZSBGOnJldHVybiBwKGUsdCxuPWxDKG4pLHIpfWlmKFEobil8fEgobikpcmV0dXJuIG51bGwhPT1sP251bGw6ZihlLHQsbixyLG51bGwpO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBuLnRoZW4pcmV0dXJuIHAoZSx0LGxNKG4pLHIpO2lmKG4uJCR0eXBlb2Y9PT1MKXJldHVybiBwKGUsdCxsbihlLG4pLHIpO2xEKGUsbil9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbShlLHQsbixyLGwpe2lmKCJzdHJpbmciPT10eXBlb2YgciYmIiIhPT1yfHwibnVtYmVyIj09dHlwZW9mIHJ8fCJiaWdpbnQiPT10eXBlb2YgcilyZXR1cm4gaSh0LGU9ZS5nZXQobil8fG51bGwsIiIrcixsKTtpZigib2JqZWN0Ij09dHlwZW9mIHImJm51bGwhPT1yKXtzd2l0Y2goci4kJHR5cGVvZil7Y2FzZSBQOnJldHVybiBzKHQsZT1lLmdldChudWxsPT09ci5rZXk/bjpyLmtleSl8fG51bGwscixsKTtjYXNlIE46cmV0dXJuIGModCxlPWUuZ2V0KG51bGw9PT1yLmtleT9uOnIua2V5KXx8bnVsbCxyLGwpO2Nhc2UgRjpyZXR1cm4gbShlLHQsbixyPWxDKHIpLGwpfWlmKFEocil8fEgocikpcmV0dXJuIGYodCxlPWUuZ2V0KG4pfHxudWxsLHIsbCxudWxsKTtpZigiZnVuY3Rpb24iPT10eXBlb2Ygci50aGVuKXJldHVybiBtKGUsdCxuLGxNKHIpLGwpO2lmKHIuJCR0eXBlb2Y9PT1MKXJldHVybiBtKGUsdCxuLGxuKHQsciksbCk7bEQodCxyKX1yZXR1cm4gbnVsbH1yZXR1cm4gZnVuY3Rpb24oaSxzLGMsZil7dHJ5e2xSPTA7dmFyIGg9ZnVuY3Rpb24gaShzLGMsZixoKXtpZigib2JqZWN0Ij09dHlwZW9mIGYmJm51bGwhPT1mJiZmLnR5cGU9PT1DJiZudWxsPT09Zi5rZXkmJnZvaWQgMD09PWYucHJvcHMucmVmJiYoZj1mLnByb3BzLmNoaWxkcmVuKSwib2JqZWN0Ij09dHlwZW9mIGYmJm51bGwhPT1mKXtzd2l0Y2goZi4kJHR5cGVvZil7Y2FzZSBQOmU6e2Zvcih2YXIgZz1mLmtleTtudWxsIT09Yzspe2lmKGMua2V5PT09Zyl7aWYoKGc9Zi50eXBlKT09PUMpe2lmKDc9PT1jLnRhZyl7bihzLGMuc2libGluZyksbEkoaD1sKGMsZi5wcm9wcy5jaGlsZHJlbiksZiksaC5yZXR1cm49cyxzPWg7YnJlYWsgZX19ZWxzZSBpZihjLmVsZW1lbnRUeXBlPT09Z3x8Im9iamVjdCI9PXR5cGVvZiBnJiZudWxsIT09ZyYmZy4kJHR5cGVvZj09PUYmJmxDKGcpPT09Yy50eXBlKXtuKHMsYy5zaWJsaW5nKSxsSShoPWwoYyxmLnByb3BzKSxmKSxoLnJldHVybj1zLHM9aDticmVhayBlfW4ocyxjKTticmVha310KHMsYyksYz1jLnNpYmxpbmd9Zi50eXBlPT09Qz9sSShoPXJTKGYucHJvcHMuY2hpbGRyZW4scy5tb2RlLGgsZi5rZXkpLGYpOmxJKGg9cmsoZi50eXBlLGYua2V5LGYucHJvcHMsbnVsbCxzLm1vZGUsaCksZiksaC5yZXR1cm49cyxzPWh9cmV0dXJuIG8ocyk7Y2FzZSBOOmU6e2ZvcihnPWYua2V5O251bGwhPT1jOyl7aWYoYy5rZXk9PT1nKWlmKDQ9PT1jLnRhZyYmYy5zdGF0ZU5vZGUuY29udGFpbmVySW5mbz09PWYuY29udGFpbmVySW5mbyYmYy5zdGF0ZU5vZGUuaW1wbGVtZW50YXRpb249PT1mLmltcGxlbWVudGF0aW9uKXtuKHMsYy5zaWJsaW5nKSwoaD1sKGMsZi5jaGlsZHJlbnx8W10pKS5yZXR1cm49cyxzPWg7YnJlYWsgZX1lbHNle24ocyxjKTticmVha310KHMsYyksYz1jLnNpYmxpbmd9KGg9cl8oZixzLm1vZGUsaCkpLnJldHVybj1zLHM9aH1yZXR1cm4gbyhzKTtjYXNlIEY6cmV0dXJuIGkocyxjLGY9bEMoZiksaCl9aWYoUShmKSlyZXR1cm4gZnVuY3Rpb24obCxvLGksdSl7Zm9yKHZhciBzPW51bGwsYz1udWxsLGY9byxoPW89MCxnPW51bGw7bnVsbCE9PWYmJmg8aS5sZW5ndGg7aCsrKXtmLmluZGV4Pmg/KGc9ZixmPW51bGwpOmc9Zi5zaWJsaW5nO3ZhciB2PXAobCxmLGlbaF0sdSk7aWYobnVsbD09PXYpe251bGw9PT1mJiYoZj1nKTticmVha31lJiZmJiZudWxsPT09di5hbHRlcm5hdGUmJnQobCxmKSxvPWEodixvLGgpLG51bGw9PT1jP3M9djpjLnNpYmxpbmc9dixjPXYsZj1nfWlmKGg9PT1pLmxlbmd0aClyZXR1cm4gbihsLGYpLHIkJiZyRihsLGgpLHM7aWYobnVsbD09PWYpe2Zvcig7aDxpLmxlbmd0aDtoKyspbnVsbCE9PShmPWQobCxpW2hdLHUpKSYmKG89YShmLG8saCksbnVsbD09PWM/cz1mOmMuc2libGluZz1mLGM9Zik7cmV0dXJuIHIkJiZyRihsLGgpLHN9Zm9yKGY9cihmKTtoPGkubGVuZ3RoO2grKyludWxsIT09KGc9bShmLGwsaCxpW2hdLHUpKSYmKGUmJm51bGwhPT0odj1nLmFsdGVybmF0ZSkmJmYuZGVsZXRlKG51bGw9PT12LmtleT9oOnYua2V5KSxvPWEoZyxvLGgpLG51bGw9PT1jP3M9ZzpjLnNpYmxpbmc9ZyxjPWcpO3JldHVybiBlJiZmLmZvckVhY2goZnVuY3Rpb24oZSl7cmV0dXJuIHQobCxlKX0pLHIkJiZyRihsLGgpLHN9KHMsYyxmLGgpO2lmKEgoZikpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZihnPUgoZikpKXRocm93IEVycm9yKHUoMTUwKSk7cmV0dXJuIGZ1bmN0aW9uKGwsbyxpLHMpe2lmKG51bGw9PWkpdGhyb3cgRXJyb3IodSgxNTEpKTtmb3IodmFyIGM9bnVsbCxmPW51bGwsaD1vLGc9bz0wLHY9bnVsbCx5PWkubmV4dCgpO251bGwhPT1oJiYheS5kb25lO2crKyx5PWkubmV4dCgpKXtoLmluZGV4Pmc/KHY9aCxoPW51bGwpOnY9aC5zaWJsaW5nO3ZhciBiPXAobCxoLHkudmFsdWUscyk7aWYobnVsbD09PWIpe251bGw9PT1oJiYoaD12KTticmVha31lJiZoJiZudWxsPT09Yi5hbHRlcm5hdGUmJnQobCxoKSxvPWEoYixvLGcpLG51bGw9PT1mP2M9YjpmLnNpYmxpbmc9YixmPWIsaD12fWlmKHkuZG9uZSlyZXR1cm4gbihsLGgpLHIkJiZyRihsLGcpLGM7aWYobnVsbD09PWgpe2Zvcig7IXkuZG9uZTtnKysseT1pLm5leHQoKSludWxsIT09KHk9ZChsLHkudmFsdWUscykpJiYobz1hKHksbyxnKSxudWxsPT09Zj9jPXk6Zi5zaWJsaW5nPXksZj15KTtyZXR1cm4gciQmJnJGKGwsZyksY31mb3IoaD1yKGgpOyF5LmRvbmU7ZysrLHk9aS5uZXh0KCkpbnVsbCE9PSh5PW0oaCxsLGcseS52YWx1ZSxzKSkmJihlJiZudWxsIT09KHY9eS5hbHRlcm5hdGUpJiZoLmRlbGV0ZShudWxsPT09di5rZXk/Zzp2LmtleSksbz1hKHksbyxnKSxudWxsPT09Zj9jPXk6Zi5zaWJsaW5nPXksZj15KTtyZXR1cm4gZSYmaC5mb3JFYWNoKGZ1bmN0aW9uKGUpe3JldHVybiB0KGwsZSl9KSxyJCYmckYobCxnKSxjfShzLGMsZj1nLmNhbGwoZiksaCl9aWYoImZ1bmN0aW9uIj09dHlwZW9mIGYudGhlbilyZXR1cm4gaShzLGMsbE0oZiksaCk7aWYoZi4kJHR5cGVvZj09PUwpcmV0dXJuIGkocyxjLGxuKHMsZiksaCk7bEQocyxmKX1yZXR1cm4ic3RyaW5nIj09dHlwZW9mIGYmJiIiIT09Znx8Im51bWJlciI9PXR5cGVvZiBmfHwiYmlnaW50Ij09dHlwZW9mIGY/KGY9IiIrZixudWxsIT09YyYmNj09PWMudGFnPyhuKHMsYy5zaWJsaW5nKSwoaD1sKGMsZikpLnJldHVybj1zKToobihzLGMpLChoPXJFKGYscy5tb2RlLGgpKS5yZXR1cm49cyksbyhzPWgpKTpuKHMsYyl9KGkscyxjLGYpO3JldHVybiBsTD1udWxsLGh9Y2F0Y2goZSl7aWYoZT09PWxTfHxlPT09bHgpdGhyb3cgZTt2YXIgZz1ydigyOSxlLG51bGwsaS5tb2RlKTtyZXR1cm4gZy5sYW5lcz1mLGcucmV0dXJuPWksZ31maW5hbGx5e319fXZhciBsQT1sRighMCksbGo9bEYoITEpLGxVPSExO2Z1bmN0aW9uIGxCKGUpe2UudXBkYXRlUXVldWU9e2Jhc2VTdGF0ZTplLm1lbW9pemVkU3RhdGUsZmlyc3RCYXNlVXBkYXRlOm51bGwsbGFzdEJhc2VVcGRhdGU6bnVsbCxzaGFyZWQ6e3BlbmRpbmc6bnVsbCxsYW5lczowLGhpZGRlbkNhbGxiYWNrczpudWxsfSxjYWxsYmFja3M6bnVsbH19ZnVuY3Rpb24gbFYoZSx0KXtlPWUudXBkYXRlUXVldWUsdC51cGRhdGVRdWV1ZT09PWUmJih0LnVwZGF0ZVF1ZXVlPXtiYXNlU3RhdGU6ZS5iYXNlU3RhdGUsZmlyc3RCYXNlVXBkYXRlOmUuZmlyc3RCYXNlVXBkYXRlLGxhc3RCYXNlVXBkYXRlOmUubGFzdEJhc2VVcGRhdGUsc2hhcmVkOmUuc2hhcmVkLGNhbGxiYWNrczpudWxsfSl9ZnVuY3Rpb24gbEgoZSl7cmV0dXJue2xhbmU6ZSx0YWc6MCxwYXlsb2FkOm51bGwsY2FsbGJhY2s6bnVsbCxuZXh0Om51bGx9fWZ1bmN0aW9uIGwkKGUsdCxuKXt2YXIgcj1lLnVwZGF0ZVF1ZXVlO2lmKG51bGw9PT1yKXJldHVybiBudWxsO2lmKHI9ci5zaGFyZWQsMCE9KDImdVMpKXt2YXIgbD1yLnBlbmRpbmc7cmV0dXJuIG51bGw9PT1sP3QubmV4dD10Oih0Lm5leHQ9bC5uZXh0LGwubmV4dD10KSxyLnBlbmRpbmc9dCx0PXJtKGUpLHJwKGUsbnVsbCxuKSx0fXJldHVybiByYyhlLHIsdCxuKSxybShlKX1mdW5jdGlvbiBsUShlLHQsbil7aWYobnVsbCE9PSh0PXQudXBkYXRlUXVldWUpJiYodD10LnNoYXJlZCwwIT0oNDE5NDA0OCZuKSkpe3ZhciByPXQubGFuZXM7ciY9ZS5wZW5kaW5nTGFuZXMsbnw9cix0LmxhbmVzPW4sZWooZSxuKX19ZnVuY3Rpb24gbFcoZSx0KXt2YXIgbj1lLnVwZGF0ZVF1ZXVlLHI9ZS5hbHRlcm5hdGU7aWYobnVsbCE9PXImJm49PT0ocj1yLnVwZGF0ZVF1ZXVlKSl7dmFyIGw9bnVsbCxhPW51bGw7aWYobnVsbCE9PShuPW4uZmlyc3RCYXNlVXBkYXRlKSl7ZG97dmFyIG89e2xhbmU6bi5sYW5lLHRhZzpuLnRhZyxwYXlsb2FkOm4ucGF5bG9hZCxjYWxsYmFjazpudWxsLG5leHQ6bnVsbH07bnVsbD09PWE/bD1hPW86YT1hLm5leHQ9byxuPW4ubmV4dH13aGlsZShudWxsIT09biludWxsPT09YT9sPWE9dDphPWEubmV4dD10fWVsc2UgbD1hPXQ7bj17YmFzZVN0YXRlOnIuYmFzZVN0YXRlLGZpcnN0QmFzZVVwZGF0ZTpsLGxhc3RCYXNlVXBkYXRlOmEsc2hhcmVkOnIuc2hhcmVkLGNhbGxiYWNrczpyLmNhbGxiYWNrc30sZS51cGRhdGVRdWV1ZT1uO3JldHVybn1udWxsPT09KGU9bi5sYXN0QmFzZVVwZGF0ZSk/bi5maXJzdEJhc2VVcGRhdGU9dDplLm5leHQ9dCxuLmxhc3RCYXNlVXBkYXRlPXR9dmFyIGxxPSExO2Z1bmN0aW9uIGxLKCl7aWYobHEpe3ZhciBlPWxoO2lmKG51bGwhPT1lKXRocm93IGV9fWZ1bmN0aW9uIGxYKGUsdCxuLHIpe2xxPSExO3ZhciBsPWUudXBkYXRlUXVldWU7bFU9ITE7dmFyIGE9bC5maXJzdEJhc2VVcGRhdGUsbz1sLmxhc3RCYXNlVXBkYXRlLGk9bC5zaGFyZWQucGVuZGluZztpZihudWxsIT09aSl7bC5zaGFyZWQucGVuZGluZz1udWxsO3ZhciB1PWkscz11Lm5leHQ7dS5uZXh0PW51bGwsbnVsbD09PW8/YT1zOm8ubmV4dD1zLG89dTt2YXIgYz1lLmFsdGVybmF0ZTtudWxsIT09YyYmKGk9KGM9Yy51cGRhdGVRdWV1ZSkubGFzdEJhc2VVcGRhdGUpIT09byYmKG51bGw9PT1pP2MuZmlyc3RCYXNlVXBkYXRlPXM6aS5uZXh0PXMsYy5sYXN0QmFzZVVwZGF0ZT11KX1pZihudWxsIT09YSl7dmFyIGY9bC5iYXNlU3RhdGU7Zm9yKG89MCxjPXM9dT1udWxsLGk9YTs7KXt2YXIgZD0tMHgyMDAwMDAwMSZpLmxhbmUscD1kIT09aS5sYW5lO2lmKHA/KHVfJmQpPT09ZDoociZkKT09PWQpezAhPT1kJiZkPT09bG0mJihscT0hMCksbnVsbCE9PWMmJihjPWMubmV4dD17bGFuZTowLHRhZzppLnRhZyxwYXlsb2FkOmkucGF5bG9hZCxjYWxsYmFjazpudWxsLG5leHQ6bnVsbH0pO2U6e3ZhciBtPWUsaD1pO3N3aXRjaChkPXQsaC50YWcpe2Nhc2UgMTppZigiZnVuY3Rpb24iPT10eXBlb2YobT1oLnBheWxvYWQpKXtmPW0uY2FsbChuLGYsZCk7YnJlYWsgZX1mPW07YnJlYWsgZTtjYXNlIDM6bS5mbGFncz0tNjU1MzcmbS5mbGFnc3wxMjg7Y2FzZSAwOmlmKG51bGw9PShkPSJmdW5jdGlvbiI9PXR5cGVvZihtPWgucGF5bG9hZCk/bS5jYWxsKG4sZixkKTptKSlicmVhayBlO2Y9eCh7fSxmLGQpO2JyZWFrIGU7Y2FzZSAyOmxVPSEwfX1udWxsIT09KGQ9aS5jYWxsYmFjaykmJihlLmZsYWdzfD02NCxwJiYoZS5mbGFnc3w9ODE5MiksbnVsbD09PShwPWwuY2FsbGJhY2tzKT9sLmNhbGxiYWNrcz1bZF06cC5wdXNoKGQpKX1lbHNlIHA9e2xhbmU6ZCx0YWc6aS50YWcscGF5bG9hZDppLnBheWxvYWQsY2FsbGJhY2s6aS5jYWxsYmFjayxuZXh0Om51bGx9LG51bGw9PT1jPyhzPWM9cCx1PWYpOmM9Yy5uZXh0PXAsb3w9ZDtpZihudWxsPT09KGk9aS5uZXh0KSlpZihudWxsPT09KGk9bC5zaGFyZWQucGVuZGluZykpYnJlYWs7ZWxzZSBpPShwPWkpLm5leHQscC5uZXh0PW51bGwsbC5sYXN0QmFzZVVwZGF0ZT1wLGwuc2hhcmVkLnBlbmRpbmc9bnVsbH1udWxsPT09YyYmKHU9ZiksbC5iYXNlU3RhdGU9dSxsLmZpcnN0QmFzZVVwZGF0ZT1zLGwubGFzdEJhc2VVcGRhdGU9YyxudWxsPT09YSYmKGwuc2hhcmVkLmxhbmVzPTApLHVSfD1vLGUubGFuZXM9byxlLm1lbW9pemVkU3RhdGU9Zn19ZnVuY3Rpb24gbEcoZSx0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZSl0aHJvdyBFcnJvcih1KDE5MSxlKSk7ZS5jYWxsKHQpfWZ1bmN0aW9uIGxZKGUsdCl7dmFyIG49ZS5jYWxsYmFja3M7aWYobnVsbCE9PW4pZm9yKGUuY2FsbGJhY2tzPW51bGwsZT0wO2U8bi5sZW5ndGg7ZSsrKWxHKG5bZV0sdCl9dmFyIGxKPVkobnVsbCksbFo9WSgwKTtmdW5jdGlvbiBsMChlLHQpe1oobFosZT11eiksWihsSix0KSx1ej1lfHQuYmFzZUxhbmVzfWZ1bmN0aW9uIGwxKCl7WihsWix1eiksWihsSixsSi5jdXJyZW50KX1mdW5jdGlvbiBsMigpe3V6PWxaLmN1cnJlbnQsSihsSiksSihsWil9dmFyIGwzPVkobnVsbCksbDQ9bnVsbDtmdW5jdGlvbiBsOChlKXt2YXIgdD1lLmFsdGVybmF0ZTtaKGFlLDEmYWUuY3VycmVudCksWihsMyxlKSxudWxsPT09bDQmJihudWxsPT09dHx8bnVsbCE9PWxKLmN1cnJlbnQ/bDQ9ZTpudWxsIT09dC5tZW1vaXplZFN0YXRlJiYobDQ9ZSkpfWZ1bmN0aW9uIGw1KGUpe1ooYWUsYWUuY3VycmVudCksWihsMyxlKSxudWxsPT09bDQmJihsND1lKX1mdW5jdGlvbiBsNihlKXsyMj09PWUudGFnPyhaKGFlLGFlLmN1cnJlbnQpLFoobDMsZSksbnVsbD09PWw0JiYobDQ9ZSkpOmw5KCl9ZnVuY3Rpb24gbDkoKXtaKGFlLGFlLmN1cnJlbnQpLFoobDMsbDMuY3VycmVudCl9ZnVuY3Rpb24gbDcoZSl7SihsMyksbDQ9PT1lJiYobDQ9bnVsbCksSihhZSl9dmFyIGFlPVkoMCk7ZnVuY3Rpb24gYXQoZSx0KXtaKGwzLGwzLmN1cnJlbnQpLFooYWUsdCl9ZnVuY3Rpb24gYW4oZSl7SihhZSksSihsMyksbDQ9PT1lJiYobDQ9bnVsbCl9ZnVuY3Rpb24gYXIoZSl7Zm9yKHZhciB0PWU7bnVsbCE9PXQ7KXtpZigxMz09PXQudGFnKXt2YXIgbj10Lm1lbW9pemVkU3RhdGU7aWYobnVsbCE9PW4mJihudWxsPT09KG49bi5kZWh5ZHJhdGVkKXx8Y0gobil8fGMkKG4pKSlyZXR1cm4gdH1lbHNlIGlmKDE5PT09dC50YWcmJiJpbmRlcGVuZGVudCIhPT10Lm1lbW9pemVkUHJvcHMucmV2ZWFsT3JkZXIpe2lmKDAhPSgxMjgmdC5mbGFncykpcmV0dXJuIHR9ZWxzZSBpZihudWxsIT09dC5jaGlsZCl7dC5jaGlsZC5yZXR1cm49dCx0PXQuY2hpbGQ7Y29udGludWV9aWYodD09PWUpYnJlYWs7Zm9yKDtudWxsPT09dC5zaWJsaW5nOyl7aWYobnVsbD09PXQucmV0dXJufHx0LnJldHVybj09PWUpcmV0dXJuIG51bGw7dD10LnJldHVybn10LnNpYmxpbmcucmV0dXJuPXQucmV0dXJuLHQ9dC5zaWJsaW5nfXJldHVybiBudWxsfXZhciBhbD0wLGFhPW51bGwsYW89bnVsbCxhaT1udWxsLGF1PSExLGFzPSExLGFjPSExLGFmPTAsYWQ9MCxhcD1udWxsLGFtPTA7ZnVuY3Rpb24gYWgoKXt0aHJvdyBFcnJvcih1KDMyMSkpfWZ1bmN0aW9uIGFnKGUsdCl7aWYobnVsbD09PXQpcmV0dXJuITE7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aCYmbjxlLmxlbmd0aDtuKyspaWYoIW5BKGVbbl0sdFtuXSkpcmV0dXJuITE7cmV0dXJuITB9ZnVuY3Rpb24gYXYoZSx0LG4scixsLGEpe3JldHVybiBhbD1hLGFhPXQsdC5tZW1vaXplZFN0YXRlPW51bGwsdC51cGRhdGVRdWV1ZT1udWxsLHQubGFuZXM9MCxXLkg9bnVsbD09PWV8fG51bGw9PT1lLm1lbW9pemVkU3RhdGU/b0U6b3gsYWM9ITEsYT1uKHIsbCksYWM9ITEsYXMmJihhPWFiKHQsbixyLGwpKSxheShlKSxhfWZ1bmN0aW9uIGF5KGUpe1cuSD1vUzt2YXIgdD1udWxsIT09YW8mJm51bGwhPT1hby5uZXh0O2lmKGFsPTAsYWk9YW89YWE9bnVsbCxhdT0hMSxhZD0wLGFwPW51bGwsdCl0aHJvdyBFcnJvcih1KDMwMCkpO251bGw9PT1lfHxvVXx8bnVsbCE9PShlPWUuZGVwZW5kZW5jaWVzKSYmcjcoZSkmJihvVT0hMCl9ZnVuY3Rpb24gYWIoZSx0LG4scil7YWE9ZTt2YXIgbD0wO2Rve2lmKGFzJiYoYXA9bnVsbCksYWQ9MCxhcz0hMSwyNTw9bCl0aHJvdyBFcnJvcih1KDMwMSkpO2lmKGwrPTEsYWk9YW89bnVsbCxudWxsIT1lLnVwZGF0ZVF1ZXVlKXt2YXIgYT1lLnVwZGF0ZVF1ZXVlO2EubGFzdEVmZmVjdD1udWxsLGEuZXZlbnRzPW51bGwsYS5zdG9yZXM9bnVsbCxudWxsIT1hLm1lbW9DYWNoZSYmKGEubWVtb0NhY2hlLmluZGV4PTApfVcuSD1vXyxhPXQobixyKX13aGlsZShhcylyZXR1cm4gYX1mdW5jdGlvbiBhdygpe3ZhciBlPVcuSCx0PWUudXNlU3RhdGUoKVswXTtyZXR1cm4gdD0iZnVuY3Rpb24iPT10eXBlb2YgdC50aGVuP2FOKHQpOnQsZT1lLnVzZVN0YXRlKClbMF0sKG51bGwhPT1hbz9hby5tZW1vaXplZFN0YXRlOm51bGwpIT09ZSYmKGFhLmZsYWdzfD0xMDI0KSx0fWZ1bmN0aW9uIGFrKCl7dmFyIGU9MCE9PWFmO3JldHVybiBhZj0wLGV9ZnVuY3Rpb24gYVMoZSx0LG4pe3QudXBkYXRlUXVldWU9ZS51cGRhdGVRdWV1ZSx0LmZsYWdzJj0tMjA1MyxlLmxhbmVzJj1+bn1mdW5jdGlvbiBhRShlKXtpZihhdSl7Zm9yKGU9ZS5tZW1vaXplZFN0YXRlO251bGwhPT1lOyl7dmFyIHQ9ZS5xdWV1ZTtudWxsIT09dCYmKHQucGVuZGluZz1udWxsKSxlPWUubmV4dH1hdT0hMX1hbD0wLGFpPWFvPWFhPW51bGwsYXM9ITEsYWQ9YWY9MCxhcD1udWxsfWZ1bmN0aW9uIGF4KCl7dmFyIGU9e21lbW9pemVkU3RhdGU6bnVsbCxiYXNlU3RhdGU6bnVsbCxiYXNlUXVldWU6bnVsbCxxdWV1ZTpudWxsLG5leHQ6bnVsbH07cmV0dXJuIG51bGw9PT1haT9hYS5tZW1vaXplZFN0YXRlPWFpPWU6YWk9YWkubmV4dD1lLGFpfWZ1bmN0aW9uIGFfKCl7aWYobnVsbD09PWFvKXt2YXIgZT1hYS5hbHRlcm5hdGU7ZT1udWxsIT09ZT9lLm1lbW9pemVkU3RhdGU6bnVsbH1lbHNlIGU9YW8ubmV4dDt2YXIgdD1udWxsPT09YWk/YWEubWVtb2l6ZWRTdGF0ZTphaS5uZXh0O2lmKG51bGwhPT10KWFpPXQsYW89ZTtlbHNle2lmKG51bGw9PT1lKXtpZihudWxsPT09YWEuYWx0ZXJuYXRlKXRocm93IEVycm9yKHUoNDY3KSk7dGhyb3cgRXJyb3IodSgzMTApKX1lPXttZW1vaXplZFN0YXRlOihhbz1lKS5tZW1vaXplZFN0YXRlLGJhc2VTdGF0ZTphby5iYXNlU3RhdGUsYmFzZVF1ZXVlOmFvLmJhc2VRdWV1ZSxxdWV1ZTphby5xdWV1ZSxuZXh0Om51bGx9LG51bGw9PT1haT9hYS5tZW1vaXplZFN0YXRlPWFpPWU6YWk9YWkubmV4dD1lfXJldHVybiBhaX1mdW5jdGlvbiBhUCgpe3JldHVybntsYXN0RWZmZWN0Om51bGwsZXZlbnRzOm51bGwsc3RvcmVzOm51bGwsbWVtb0NhY2hlOm51bGx9fWZ1bmN0aW9uIGFOKGUpe3ZhciB0PWFkO3JldHVybiBhZCs9MSxudWxsPT09YXAmJihhcD1bXSksZT1sTihhcCxlLHQpLHQ9YWEsbnVsbD09PShudWxsPT09YWk/dC5tZW1vaXplZFN0YXRlOmFpLm5leHQpJiYoVy5IPW51bGw9PT0odD10LmFsdGVybmF0ZSl8fG51bGw9PT10Lm1lbW9pemVkU3RhdGU/b0U6b3gpLGV9ZnVuY3Rpb24gYUMoZSl7aWYobnVsbCE9PWUmJiJvYmplY3QiPT10eXBlb2YgZSl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGUudGhlbilyZXR1cm4gYU4oZSk7aWYoZS4kJHR5cGVvZj09PUwpcmV0dXJuIGx0KGUpfXRocm93IEVycm9yKHUoNDM4LFN0cmluZyhlKSkpfWZ1bmN0aW9uIGFUKGUpe3ZhciB0PW51bGwsbj1hYS51cGRhdGVRdWV1ZTtpZihudWxsIT09biYmKHQ9bi5tZW1vQ2FjaGUpLG51bGw9PXQpe3ZhciByPWFhLmFsdGVybmF0ZTtudWxsIT09ciYmbnVsbCE9PShyPXIudXBkYXRlUXVldWUpJiZudWxsIT0ocj1yLm1lbW9DYWNoZSkmJih0PXtkYXRhOnIuZGF0YS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIGUuc2xpY2UoKX0pLGluZGV4OjB9KX1pZihudWxsPT10JiYodD17ZGF0YTpbXSxpbmRleDowfSksbnVsbD09PW4mJihuPWFQKCksYWEudXBkYXRlUXVldWU9biksbi5tZW1vQ2FjaGU9dCx2b2lkIDA9PT0obj10LmRhdGFbdC5pbmRleF0pKWZvcihuPXQuZGF0YVt0LmluZGV4XT1BcnJheShlKSxyPTA7cjxlO3IrKyluW3JdPVU7cmV0dXJuIHQuaW5kZXgrKyxufWZ1bmN0aW9uIGFPKGUsdCl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHQ/dChlKTp0fWZ1bmN0aW9uIGF6KGUpe3JldHVybiBhTChhXygpLGFvLGUpfWZ1bmN0aW9uIGFMKGUsdCxuKXt2YXIgcj1lLnF1ZXVlO2lmKG51bGw9PT1yKXRocm93IEVycm9yKHUoMzExKSk7ci5sYXN0UmVuZGVyZWRSZWR1Y2VyPW47dmFyIGw9ZS5iYXNlUXVldWUsYT1yLnBlbmRpbmc7aWYobnVsbCE9PWEpe2lmKG51bGwhPT1sKXt2YXIgbz1sLm5leHQ7bC5uZXh0PWEubmV4dCxhLm5leHQ9b310LmJhc2VRdWV1ZT1sPWEsci5wZW5kaW5nPW51bGx9aWYoYT1lLmJhc2VTdGF0ZSxudWxsPT09bCllLm1lbW9pemVkU3RhdGU9YTtlbHNle3Q9bC5uZXh0O3ZhciBpPW89bnVsbCxzPW51bGwsYz10LGY9ITE7ZG97dmFyIGQ9LTB4MjAwMDAwMDEmYy5sYW5lO2lmKGQhPT1jLmxhbmU/KHVfJmQpPT09ZDooYWwmZCk9PT1kKXt2YXIgcD1jLnJldmVydExhbmU7aWYoMD09PXApbnVsbCE9PXMmJihzPXMubmV4dD17bGFuZTowLHJldmVydExhbmU6MCxnZXN0dXJlOm51bGwsYWN0aW9uOmMuYWN0aW9uLGhhc0VhZ2VyU3RhdGU6Yy5oYXNFYWdlclN0YXRlLGVhZ2VyU3RhdGU6Yy5lYWdlclN0YXRlLG5leHQ6bnVsbH0pLGQ9PT1sbSYmKGY9ITApO2Vsc2UgaWYoKGFsJnApPT09cCl7Yz1jLm5leHQscD09PWxtJiYoZj0hMCk7Y29udGludWV9ZWxzZSBkPXtsYW5lOjAscmV2ZXJ0TGFuZTpjLnJldmVydExhbmUsZ2VzdHVyZTpudWxsLGFjdGlvbjpjLmFjdGlvbixoYXNFYWdlclN0YXRlOmMuaGFzRWFnZXJTdGF0ZSxlYWdlclN0YXRlOmMuZWFnZXJTdGF0ZSxuZXh0Om51bGx9LG51bGw9PT1zPyhpPXM9ZCxvPWEpOnM9cy5uZXh0PWQsYWEubGFuZXN8PXAsdVJ8PXA7ZD1jLmFjdGlvbixhYyYmbihhLGQpLGE9Yy5oYXNFYWdlclN0YXRlP2MuZWFnZXJTdGF0ZTpuKGEsZCl9ZWxzZSBwPXtsYW5lOmQscmV2ZXJ0TGFuZTpjLnJldmVydExhbmUsZ2VzdHVyZTpjLmdlc3R1cmUsYWN0aW9uOmMuYWN0aW9uLGhhc0VhZ2VyU3RhdGU6Yy5oYXNFYWdlclN0YXRlLGVhZ2VyU3RhdGU6Yy5lYWdlclN0YXRlLG5leHQ6bnVsbH0sbnVsbD09PXM/KGk9cz1wLG89YSk6cz1zLm5leHQ9cCxhYS5sYW5lc3w9ZCx1Unw9ZDtjPWMubmV4dH13aGlsZShudWxsIT09YyYmYyE9PXQpaWYobnVsbD09PXM/bz1hOnMubmV4dD1pLCFuQShhLGUubWVtb2l6ZWRTdGF0ZSkmJihvVT0hMCxmJiZudWxsIT09KG49bGgpKSl0aHJvdyBuO2UubWVtb2l6ZWRTdGF0ZT1hLGUuYmFzZVN0YXRlPW8sZS5iYXNlUXVldWU9cyxyLmxhc3RSZW5kZXJlZFN0YXRlPWF9cmV0dXJuIG51bGw9PT1sJiYoci5sYW5lcz0wKSxbZS5tZW1vaXplZFN0YXRlLHIuZGlzcGF0Y2hdfWZ1bmN0aW9uIGFSKGUpe3ZhciB0PWFfKCksbj10LnF1ZXVlO2lmKG51bGw9PT1uKXRocm93IEVycm9yKHUoMzExKSk7bi5sYXN0UmVuZGVyZWRSZWR1Y2VyPWU7dmFyIHI9bi5kaXNwYXRjaCxsPW4ucGVuZGluZyxhPXQubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09bCl7bi5wZW5kaW5nPW51bGw7dmFyIG89bD1sLm5leHQ7ZG8gYT1lKGEsby5hY3Rpb24pLG89by5uZXh0O3doaWxlKG8hPT1sKW5BKGEsdC5tZW1vaXplZFN0YXRlKXx8KG9VPSEwKSx0Lm1lbW9pemVkU3RhdGU9YSxudWxsPT09dC5iYXNlUXVldWUmJih0LmJhc2VTdGF0ZT1hKSxuLmxhc3RSZW5kZXJlZFN0YXRlPWF9cmV0dXJuW2Escl19ZnVuY3Rpb24gYU0oZSx0LG4pe3ZhciByPWFhLGw9YV8oKSxhPXIkO2lmKGEpe2lmKHZvaWQgMD09PW4pdGhyb3cgRXJyb3IodSg0MDcpKTtuPW4oKX1lbHNlIG49dCgpO3ZhciBvPSFuQSgoYW98fGwpLm1lbW9pemVkU3RhdGUsbik7aWYobyYmKGwubWVtb2l6ZWRTdGF0ZT1uLG9VPSEwKSxsPWwucXVldWUsYTgoYUYuYmluZChudWxsLHIsbCxlKSxbZV0pLGwuZ2V0U25hcHNob3QhPT10fHxvfHxudWxsIT09YWkmJjEmYWkubWVtb2l6ZWRTdGF0ZS50YWcpe2lmKHIuZmxhZ3N8PTIwNDgsYTAoOSx7ZGVzdHJveTp2b2lkIDB9LGFELmJpbmQobnVsbCxyLGwsbix0KSxudWxsKSxudWxsPT09dUUpdGhyb3cgRXJyb3IodSgzNDkpKTthfHwwIT0oMTI3JmFsKXx8YUkocix0LG4pfXJldHVybiBufWZ1bmN0aW9uIGFJKGUsdCxuKXtlLmZsYWdzfD0xNjM4NCxlPXtnZXRTbmFwc2hvdDp0LHZhbHVlOm59LG51bGw9PT0odD1hYS51cGRhdGVRdWV1ZSk/KHQ9YVAoKSxhYS51cGRhdGVRdWV1ZT10LHQuc3RvcmVzPVtlXSk6bnVsbD09PShuPXQuc3RvcmVzKT90LnN0b3Jlcz1bZV06bi5wdXNoKGUpfWZ1bmN0aW9uIGFEKGUsdCxuLHIpe3QudmFsdWU9bix0LmdldFNuYXBzaG90PXIsYUEodCkmJmFqKGUpfWZ1bmN0aW9uIGFGKGUsdCxuKXtyZXR1cm4gbihmdW5jdGlvbigpe2FBKHQpJiZhaihlKX0pfWZ1bmN0aW9uIGFBKGUpe3ZhciB0PWUuZ2V0U25hcHNob3Q7ZT1lLnZhbHVlO3RyeXt2YXIgbj10KCk7cmV0dXJuIW5BKGUsbil9Y2F0Y2goZSl7cmV0dXJuITB9fWZ1bmN0aW9uIGFqKGUpe3ZhciB0PXJkKGUsMik7bnVsbCE9PXQmJnU2KHQsZSwyKX1mdW5jdGlvbiBhVShlKXt2YXIgdD1heCgpO3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBlJiYoZT1lKCkpLHQubWVtb2l6ZWRTdGF0ZT10LmJhc2VTdGF0ZT1lLHQucXVldWU9e3BlbmRpbmc6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjphTyxsYXN0UmVuZGVyZWRTdGF0ZTplfSx0fWZ1bmN0aW9uIGFCKGUsdCxuLHIpe3JldHVybiBlLmJhc2VTdGF0ZT1uLGFMKGUsYW8sImZ1bmN0aW9uIj09dHlwZW9mIHI/cjphTyl9ZnVuY3Rpb24gYVYoZSx0LG4scixsKXtpZihvYihlKSl0aHJvdyBFcnJvcih1KDQ4NSkpO2lmKG51bGwhPT0oZT10LmFjdGlvbikpe3ZhciBhPXtwYXlsb2FkOmwsYWN0aW9uOmUsbmV4dDpudWxsLGlzVHJhbnNpdGlvbjohMCxzdGF0dXM6InBlbmRpbmciLHZhbHVlOm51bGwscmVhc29uOm51bGwsbGlzdGVuZXJzOltdLHRoZW46ZnVuY3Rpb24oZSl7YS5saXN0ZW5lcnMucHVzaChlKX19O251bGwhPT1XLlQ/bighMCk6YS5pc1RyYW5zaXRpb249ITEscihhKSxudWxsPT09KG49dC5wZW5kaW5nKT8oYS5uZXh0PXQucGVuZGluZz1hLGFIKHQsYSkpOihhLm5leHQ9bi5uZXh0LHQucGVuZGluZz1uLm5leHQ9YSl9fWZ1bmN0aW9uIGFIKGUsdCl7dmFyIG49dC5hY3Rpb24scj10LnBheWxvYWQsbD1lLnN0YXRlO2lmKHQuaXNUcmFuc2l0aW9uKXt2YXIgYT1XLlQsbz17fTtvLnR5cGVzPW51bGwhPT1hP2EudHlwZXM6bnVsbCxXLlQ9bzt0cnl7dmFyIGk9bihsLHIpLHU9Vy5TO251bGwhPT11JiZ1KG8saSksYSQoZSx0LGkpfWNhdGNoKG4pe2FXKGUsdCxuKX1maW5hbGx5e251bGwhPT1hJiZudWxsIT09by50eXBlcyYmKGEudHlwZXM9by50eXBlcyksVy5UPWF9fWVsc2UgdHJ5e2E9bihsLHIpLGEkKGUsdCxhKX1jYXRjaChuKXthVyhlLHQsbil9fWZ1bmN0aW9uIGEkKGUsdCxuKXtudWxsIT09biYmIm9iamVjdCI9PXR5cGVvZiBuJiYiZnVuY3Rpb24iPT10eXBlb2Ygbi50aGVuP24udGhlbihmdW5jdGlvbihuKXthUShlLHQsbil9LGZ1bmN0aW9uKG4pe3JldHVybiBhVyhlLHQsbil9KTphUShlLHQsbil9ZnVuY3Rpb24gYVEoZSx0LG4pe3Quc3RhdHVzPSJmdWxmaWxsZWQiLHQudmFsdWU9bixhcSh0KSxlLnN0YXRlPW4sbnVsbCE9PSh0PWUucGVuZGluZykmJigobj10Lm5leHQpPT09dD9lLnBlbmRpbmc9bnVsbDoobj1uLm5leHQsdC5uZXh0PW4sYUgoZSxuKSkpfWZ1bmN0aW9uIGFXKGUsdCxuKXt2YXIgcj1lLnBlbmRpbmc7aWYoZS5wZW5kaW5nPW51bGwsbnVsbCE9PXIpe3I9ci5uZXh0O2RvIHQuc3RhdHVzPSJyZWplY3RlZCIsdC5yZWFzb249bixhcSh0KSx0PXQubmV4dDt3aGlsZSh0IT09cil9ZS5hY3Rpb249bnVsbH1mdW5jdGlvbiBhcShlKXtlPWUubGlzdGVuZXJzO2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKSgwLGVbdF0pKCl9ZnVuY3Rpb24gYUsoZSx0KXtyZXR1cm4gdH1mdW5jdGlvbiBhWChlLHQpe2lmKHIkKXt2YXIgbj11RS5mb3JtU3RhdGU7aWYobnVsbCE9PW4pe2U6e3ZhciByPWFhO2lmKHIkKXtpZihySCl7dDp7Zm9yKHZhciBsPXJILGE9clc7OCE9PWwubm9kZVR5cGU7KWlmKCFhfHxudWxsPT09KGw9Y1EobC5uZXh0U2libGluZykpKXtsPW51bGw7YnJlYWsgdH1sPSJGISI9PT0oYT1sLmRhdGEpfHwiRiI9PT1hP2w6bnVsbH1pZihsKXtySD1jUShsLm5leHRTaWJsaW5nKSxyPSJGISI9PT1sLmRhdGE7YnJlYWsgZX19cksocil9cj0hMX1yJiYodD1uWzBdKX19cmV0dXJuKG49YXgoKSkubWVtb2l6ZWRTdGF0ZT1uLmJhc2VTdGF0ZT10LHI9e3BlbmRpbmc6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjphSyxsYXN0UmVuZGVyZWRTdGF0ZTp0fSxuLnF1ZXVlPXIsbj1vZy5iaW5kKG51bGwsYWEsciksci5kaXNwYXRjaD1uLHI9YVUoITEpLGE9b3kuYmluZChudWxsLGFhLCExLHIucXVldWUpLHI9YXgoKSxsPXtzdGF0ZTp0LGRpc3BhdGNoOm51bGwsYWN0aW9uOmUscGVuZGluZzpudWxsfSxyLnF1ZXVlPWwsbj1hVi5iaW5kKG51bGwsYWEsbCxhLG4pLGwuZGlzcGF0Y2g9bixyLm1lbW9pemVkU3RhdGU9ZSxbdCxuLCExXX1mdW5jdGlvbiBhRyhlKXtyZXR1cm4gYVkoYV8oKSxhbyxlKX1mdW5jdGlvbiBhWShlLHQsbil7aWYodD1hTChlLHQsYUspWzBdLGU9YXooYU8pWzBdLCJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0LnRoZW4pdHJ5e3ZhciByPWFOKHQpfWNhdGNoKGUpe2lmKGU9PT1sUyl0aHJvdyBseDt0aHJvdyBlfWVsc2Ugcj10O3ZhciBsPSh0PWFfKCkpLnF1ZXVlLGE9bC5kaXNwYXRjaDtyZXR1cm4gbiE9PXQubWVtb2l6ZWRTdGF0ZSYmKGFhLmZsYWdzfD0yMDQ4LGEwKDkse2Rlc3Ryb3k6dm9pZCAwfSxhSi5iaW5kKG51bGwsbCxuKSxudWxsKSksW3IsYSxlXX1mdW5jdGlvbiBhSihlLHQpe2UuYWN0aW9uPXR9ZnVuY3Rpb24gYVooZSl7dmFyIHQ9YV8oKSxuPWFvO2lmKG51bGwhPT1uKXJldHVybiBhWSh0LG4sZSk7YV8oKSx0PXQubWVtb2l6ZWRTdGF0ZTt2YXIgcj0obj1hXygpKS5xdWV1ZS5kaXNwYXRjaDtyZXR1cm4gbi5tZW1vaXplZFN0YXRlPWUsW3QsciwhMV19ZnVuY3Rpb24gYTAoZSx0LG4scil7cmV0dXJuIGU9e3RhZzplLGNyZWF0ZTpuLGRlcHM6cixpbnN0OnQsbmV4dDpudWxsfSxudWxsPT09KHQ9YWEudXBkYXRlUXVldWUpJiYodD1hUCgpLGFhLnVwZGF0ZVF1ZXVlPXQpLG51bGw9PT0obj10Lmxhc3RFZmZlY3QpP3QubGFzdEVmZmVjdD1lLm5leHQ9ZToocj1uLm5leHQsbi5uZXh0PWUsZS5uZXh0PXIsdC5sYXN0RWZmZWN0PWUpLGV9ZnVuY3Rpb24gYTEoKXtyZXR1cm4gYV8oKS5tZW1vaXplZFN0YXRlfWZ1bmN0aW9uIGEyKGUsdCxuLHIpe3ZhciBsPWF4KCk7YWEuZmxhZ3N8PWUsbC5tZW1vaXplZFN0YXRlPWEwKDF8dCx7ZGVzdHJveTp2b2lkIDB9LG4sdm9pZCAwPT09cj9udWxsOnIpfWZ1bmN0aW9uIGEzKGUsdCxuLHIpe3ZhciBsPWFfKCk7cj12b2lkIDA9PT1yP251bGw6cjt2YXIgYT1sLm1lbW9pemVkU3RhdGUuaW5zdDtudWxsIT09YW8mJm51bGwhPT1yJiZhZyhyLGFvLm1lbW9pemVkU3RhdGUuZGVwcyk/bC5tZW1vaXplZFN0YXRlPWEwKHQsYSxuLHIpOihhYS5mbGFnc3w9ZSxsLm1lbW9pemVkU3RhdGU9YTAoMXx0LGEsbixyKSl9ZnVuY3Rpb24gYTQoZSx0KXthMig4MzkwNjU2LDgsZSx0KX1mdW5jdGlvbiBhOChlLHQpe2EzKDIwNDgsOCxlLHQpfWZ1bmN0aW9uIGE1KGUpe3ZhciB0PWFfKCkubWVtb2l6ZWRTdGF0ZSxuPXtyZWY6dCxuZXh0SW1wbDplfTthYS5mbGFnc3w9NDt2YXIgcj1hYS51cGRhdGVRdWV1ZTtpZihudWxsPT09cilyPWFQKCksYWEudXBkYXRlUXVldWU9cixyLmV2ZW50cz1bbl07ZWxzZXt2YXIgbD1yLmV2ZW50cztudWxsPT09bD9yLmV2ZW50cz1bbl06bC5wdXNoKG4pfXJldHVybiBmdW5jdGlvbigpe2lmKDAhPSgyJnVTKSl0aHJvdyBFcnJvcih1KDQ0MCkpO3JldHVybiB0LmltcGwuYXBwbHkodm9pZCAwLGFyZ3VtZW50cyl9fWZ1bmN0aW9uIGE2KGUsdCl7cmV0dXJuIGEzKDQsMixlLHQpfWZ1bmN0aW9uIGE5KGUsdCl7cmV0dXJuIGEzKDQsNCxlLHQpfWZ1bmN0aW9uIGE3KGUsdCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQpe3ZhciBuPXQoZT1lKCkpO3JldHVybiBmdW5jdGlvbigpeyJmdW5jdGlvbiI9PXR5cGVvZiBuP24oKTp0KG51bGwpfX1pZihudWxsIT10KXJldHVybiB0LmN1cnJlbnQ9ZT1lKCksZnVuY3Rpb24oKXt0LmN1cnJlbnQ9bnVsbH19ZnVuY3Rpb24gb2UoZSx0LG4pe249bnVsbCE9bj9uLmNvbmNhdChbZV0pOm51bGwsYTMoNCw0LGE3LmJpbmQobnVsbCx0LGUpLG4pfWZ1bmN0aW9uIG90KCl7fWZ1bmN0aW9uIG9uKGUsdCl7dmFyIG49YV8oKTt0PXZvaWQgMD09PXQ/bnVsbDp0O3ZhciByPW4ubWVtb2l6ZWRTdGF0ZTtyZXR1cm4gbnVsbCE9PXQmJmFnKHQsclsxXSk/clswXToobi5tZW1vaXplZFN0YXRlPVtlLHRdLGUpfWZ1bmN0aW9uIG9yKGUsdCl7dmFyIG49YV8oKTt0PXZvaWQgMD09PXQ/bnVsbDp0O3ZhciByPW4ubWVtb2l6ZWRTdGF0ZTtyZXR1cm4gbnVsbCE9PXQmJmFnKHQsclsxXSk/clswXToobi5tZW1vaXplZFN0YXRlPVtyPWUoKSx0XSxyKX1mdW5jdGlvbiBvbChlLHQsbil7cmV0dXJuIHZvaWQgMD09PW58fDAhPSgweDQwMDAwMDAwJmFsKSYmMD09KDI2MTkzMCZ1Xyk/ZS5tZW1vaXplZFN0YXRlPXQ6KGUubWVtb2l6ZWRTdGF0ZT1uLGU9dTgoKSxhYS5sYW5lc3w9ZSx1Unw9ZSxuKX1mdW5jdGlvbiBvYShlLHQsbixyKXtyZXR1cm4gbkEobix0KT9uOm51bGwhPT1sSi5jdXJyZW50PyhuQShlPW9sKGUsbixyKSx0KXx8KG9VPSEwKSxlKTowPT0oNDImYWwpfHwwIT0oMHg0MDAwMDAwMCZhbCkmJjA9PSgyNjE5MzAmdV8pPyhvVT0hMCxlLm1lbW9pemVkU3RhdGU9bik6KGU9dTgoKSxhYS5sYW5lc3w9ZSx1Unw9ZSx0KX1mdW5jdGlvbiBvbyhlLHQsbixyLGwpe3ZhciBhPXEucDtxLnA9MCE9PWEmJjg+YT9hOjg7dmFyIG89Vy5ULGk9e307aS50eXBlcz1udWxsIT09bz9vLnR5cGVzOm51bGwsVy5UPWksb3koZSwhMSx0LG4pO3RyeXt2YXIgdT1sKCkscz1XLlM7aWYobnVsbCE9PXMmJnMoaSx1KSxudWxsIT09dSYmIm9iamVjdCI9PXR5cGVvZiB1JiYiZnVuY3Rpb24iPT10eXBlb2YgdS50aGVuKXt2YXIgYyxmLGQ9KGM9W10sZj17c3RhdHVzOiJwZW5kaW5nIix2YWx1ZTpudWxsLHJlYXNvbjpudWxsLHRoZW46ZnVuY3Rpb24oZSl7Yy5wdXNoKGUpfX0sdS50aGVuKGZ1bmN0aW9uKCl7Zi5zdGF0dXM9ImZ1bGZpbGxlZCIsZi52YWx1ZT1yO2Zvcih2YXIgZT0wO2U8Yy5sZW5ndGg7ZSsrKSgwLGNbZV0pKHIpfSxmdW5jdGlvbihlKXtmb3IoZi5zdGF0dXM9InJlamVjdGVkIixmLnJlYXNvbj1lLGU9MDtlPGMubGVuZ3RoO2UrKykoMCxjW2VdKSh2b2lkIDApfSksZik7b3YoZSx0LGQsdTQoZSkpfWVsc2Ugb3YoZSx0LHIsdTQoZSkpfWNhdGNoKG4pe292KGUsdCx7dGhlbjpmdW5jdGlvbigpe30sc3RhdHVzOiJyZWplY3RlZCIscmVhc29uOm59LHU0KCkpfWZpbmFsbHl7cS5wPWEsbnVsbCE9PW8mJm51bGwhPT1pLnR5cGVzJiYoby50eXBlcz1pLnR5cGVzKSxXLlQ9b319ZnVuY3Rpb24gb2koKXt9ZnVuY3Rpb24gb3UoZSx0LG4scil7aWYoNSE9PWUudGFnKXRocm93IEVycm9yKHUoNDc2KSk7dmFyIGw9b3MoZSkucXVldWU7b28oZSxsLHQsSyxudWxsPT09bj9vaTpmdW5jdGlvbigpe3JldHVybiBvYyhlKSxuKHIpfSl9ZnVuY3Rpb24gb3MoZSl7dmFyIHQ9ZS5tZW1vaXplZFN0YXRlO2lmKG51bGwhPT10KXJldHVybiB0O3ZhciBuPXt9O3JldHVybih0PXttZW1vaXplZFN0YXRlOkssYmFzZVN0YXRlOkssYmFzZVF1ZXVlOm51bGwscXVldWU6e3BlbmRpbmc6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjphTyxsYXN0UmVuZGVyZWRTdGF0ZTpLfSxuZXh0Om51bGx9KS5uZXh0PXttZW1vaXplZFN0YXRlOm4sYmFzZVN0YXRlOm4sYmFzZVF1ZXVlOm51bGwscXVldWU6e3BlbmRpbmc6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjphTyxsYXN0UmVuZGVyZWRTdGF0ZTpufSxuZXh0Om51bGx9LGUubWVtb2l6ZWRTdGF0ZT10LG51bGwhPT0oZT1lLmFsdGVybmF0ZSkmJihlLm1lbW9pemVkU3RhdGU9dCksdH1mdW5jdGlvbiBvYyhlKXt2YXIgdD1vcyhlKTtudWxsPT09dC5uZXh0JiYodD1lLmFsdGVybmF0ZS5tZW1vaXplZFN0YXRlKSxvdihlLHQubmV4dC5xdWV1ZSx7fSx1NCgpKX1mdW5jdGlvbiBvZigpe3JldHVybiBsdChmdil9ZnVuY3Rpb24gb2QoKXtyZXR1cm4gYV8oKS5tZW1vaXplZFN0YXRlfWZ1bmN0aW9uIG9wKCl7cmV0dXJuIGFfKCkubWVtb2l6ZWRTdGF0ZX1mdW5jdGlvbiBvbShlKXtmb3IodmFyIHQ9ZS5yZXR1cm47bnVsbCE9PXQ7KXtzd2l0Y2godC50YWcpe2Nhc2UgMjQ6Y2FzZSAzOnZhciBuPXU0KCkscj1sJCh0LGU9bEgobiksbik7bnVsbCE9PXImJih1NihyLHQsbiksbFEocix0LG4pKSx0PXtjYWNoZTpsdSgpfSxlLnBheWxvYWQ9dDtyZXR1cm59dD10LnJldHVybn19ZnVuY3Rpb24gb2goZSx0LG4pe3ZhciByPXU0KCk7bj17bGFuZTpyLHJldmVydExhbmU6MCxnZXN0dXJlOm51bGwsYWN0aW9uOm4saGFzRWFnZXJTdGF0ZTohMSxlYWdlclN0YXRlOm51bGwsbmV4dDpudWxsfSxvYihlKT9vdyh0LG4pOm51bGwhPT0obj1yZihlLHQsbixyKSkmJih1NihuLGUsciksb2sobix0LHIpKX1mdW5jdGlvbiBvZyhlLHQsbil7b3YoZSx0LG4sdTQoKSl9ZnVuY3Rpb24gb3YoZSx0LG4scil7dmFyIGw9e2xhbmU6cixyZXZlcnRMYW5lOjAsZ2VzdHVyZTpudWxsLGFjdGlvbjpuLGhhc0VhZ2VyU3RhdGU6ITEsZWFnZXJTdGF0ZTpudWxsLG5leHQ6bnVsbH07aWYob2IoZSkpb3codCxsKTtlbHNle3ZhciBhPWUuYWx0ZXJuYXRlO2lmKDA9PT1lLmxhbmVzJiYobnVsbD09PWF8fDA9PT1hLmxhbmVzKSYmbnVsbCE9PShhPXQubGFzdFJlbmRlcmVkUmVkdWNlcikpdHJ5e3ZhciBvPXQubGFzdFJlbmRlcmVkU3RhdGUsaT1hKG8sbik7aWYobC5oYXNFYWdlclN0YXRlPSEwLGwuZWFnZXJTdGF0ZT1pLG5BKGksbykpcmV0dXJuIHJjKGUsdCxsLDApLG51bGw9PT11RSYmcnMoKSwhMX1jYXRjaChlKXt9ZmluYWxseXt9aWYobnVsbCE9PShuPXJmKGUsdCxsLHIpKSlyZXR1cm4gdTYobixlLHIpLG9rKG4sdCxyKSwhMH1yZXR1cm4hMX1mdW5jdGlvbiBveShlLHQsbixyKXtpZihyPXtsYW5lOjIscmV2ZXJ0TGFuZTpzJCgpLGdlc3R1cmU6bnVsbCxhY3Rpb246cixoYXNFYWdlclN0YXRlOiExLGVhZ2VyU3RhdGU6bnVsbCxuZXh0Om51bGx9LG9iKGUpKXtpZih0KXRocm93IEVycm9yKHUoNDc5KSl9ZWxzZSBudWxsIT09KHQ9cmYoZSxuLHIsMikpJiZ1Nih0LGUsMil9ZnVuY3Rpb24gb2IoZSl7dmFyIHQ9ZS5hbHRlcm5hdGU7cmV0dXJuIGU9PT1hYXx8bnVsbCE9PXQmJnQ9PT1hYX1mdW5jdGlvbiBvdyhlLHQpe2FzPWF1PSEwO3ZhciBuPWUucGVuZGluZztudWxsPT09bj90Lm5leHQ9dDoodC5uZXh0PW4ubmV4dCxuLm5leHQ9dCksZS5wZW5kaW5nPXR9ZnVuY3Rpb24gb2soZSx0LG4pe2lmKDAhPSg0MTk0MDQ4Jm4pKXt2YXIgcj10LmxhbmVzO3ImPWUucGVuZGluZ0xhbmVzLHQubGFuZXM9bnw9cixlaihlLG4pfX12YXIgb1M9e3JlYWRDb250ZXh0Omx0LHVzZTphQyx1c2VDYWxsYmFjazphaCx1c2VDb250ZXh0OmFoLHVzZUVmZmVjdDphaCx1c2VJbXBlcmF0aXZlSGFuZGxlOmFoLHVzZUxheW91dEVmZmVjdDphaCx1c2VJbnNlcnRpb25FZmZlY3Q6YWgsdXNlTWVtbzphaCx1c2VSZWR1Y2VyOmFoLHVzZVJlZjphaCx1c2VTdGF0ZTphaCx1c2VEZWJ1Z1ZhbHVlOmFoLHVzZURlZmVycmVkVmFsdWU6YWgsdXNlVHJhbnNpdGlvbjphaCx1c2VTeW5jRXh0ZXJuYWxTdG9yZTphaCx1c2VJZDphaCx1c2VIb3N0VHJhbnNpdGlvblN0YXR1czphaCx1c2VGb3JtU3RhdGU6YWgsdXNlQWN0aW9uU3RhdGU6YWgsdXNlT3B0aW1pc3RpYzphaCx1c2VNZW1vQ2FjaGU6YWgsdXNlQ2FjaGVSZWZyZXNoOmFofTtvUy51c2VFZmZlY3RFdmVudD1haDt2YXIgb0U9e3JlYWRDb250ZXh0Omx0LHVzZTphQyx1c2VDYWxsYmFjazpmdW5jdGlvbihlLHQpe3JldHVybiBheCgpLm1lbW9pemVkU3RhdGU9W2Usdm9pZCAwPT09dD9udWxsOnRdLGV9LHVzZUNvbnRleHQ6bHQsdXNlRWZmZWN0OmE0LHVzZUltcGVyYXRpdmVIYW5kbGU6ZnVuY3Rpb24oZSx0LG4pe249bnVsbCE9bj9uLmNvbmNhdChbZV0pOm51bGwsYTIoNDE5NDMwOCw0LGE3LmJpbmQobnVsbCx0LGUpLG4pfSx1c2VMYXlvdXRFZmZlY3Q6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gYTIoNDE5NDMwOCw0LGUsdCl9LHVzZUluc2VydGlvbkVmZmVjdDpmdW5jdGlvbihlLHQpe2EyKDQsMixlLHQpfSx1c2VNZW1vOmZ1bmN0aW9uKGUsdCl7dmFyIG49YXgoKTt0PXZvaWQgMD09PXQ/bnVsbDp0O3ZhciByPWUoKTtyZXR1cm4gbi5tZW1vaXplZFN0YXRlPVtyLHRdLHJ9LHVzZVJlZHVjZXI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWF4KCk7aWYodm9pZCAwIT09bil2YXIgbD1uKHQpO2Vsc2UgbD10O3JldHVybiByLm1lbW9pemVkU3RhdGU9ci5iYXNlU3RhdGU9bCxyLnF1ZXVlPWU9e3BlbmRpbmc6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjplLGxhc3RSZW5kZXJlZFN0YXRlOmx9LGU9ZS5kaXNwYXRjaD1vaC5iaW5kKG51bGwsYWEsZSksW3IubWVtb2l6ZWRTdGF0ZSxlXX0sdXNlUmVmOmZ1bmN0aW9uKGUpe3JldHVybiBheCgpLm1lbW9pemVkU3RhdGU9e2N1cnJlbnQ6ZX19LHVzZVN0YXRlOmZ1bmN0aW9uKGUpe3ZhciB0PShlPWFVKGUpKS5xdWV1ZSxuPW9nLmJpbmQobnVsbCxhYSx0KTtyZXR1cm4gdC5kaXNwYXRjaD1uLFtlLm1lbW9pemVkU3RhdGUsbl19LHVzZURlYnVnVmFsdWU6b3QsdXNlRGVmZXJyZWRWYWx1ZTpmdW5jdGlvbihlLHQpe3JldHVybiBvbChheCgpLGUsdCl9LHVzZVRyYW5zaXRpb246ZnVuY3Rpb24oKXt2YXIgZT1hVSghMSk7cmV0dXJuIGU9b28uYmluZChudWxsLGFhLGUucXVldWUsITAsITEpLGF4KCkubWVtb2l6ZWRTdGF0ZT1lLFshMSxlXX0sdXNlU3luY0V4dGVybmFsU3RvcmU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWFhLGw9YXgoKTtpZihyJCl7aWYodm9pZCAwPT09bil0aHJvdyBFcnJvcih1KDQwNykpO249bigpfWVsc2V7aWYobj10KCksbnVsbD09PXVFKXRocm93IEVycm9yKHUoMzQ5KSk7MCE9KDEyNyZ1Xyl8fGFJKHIsdCxuKX1sLm1lbW9pemVkU3RhdGU9bjt2YXIgYT17dmFsdWU6bixnZXRTbmFwc2hvdDp0fTtyZXR1cm4gbC5xdWV1ZT1hLGE0KGFGLmJpbmQobnVsbCxyLGEsZSksW2VdKSxyLmZsYWdzfD0yMDQ4LGEwKDkse2Rlc3Ryb3k6dm9pZCAwfSxhRC5iaW5kKG51bGwscixhLG4sdCksbnVsbCksbn0sdXNlSWQ6ZnVuY3Rpb24oKXt2YXIgZT1heCgpLHQ9dUUuaWRlbnRpZmllclByZWZpeDtpZihyJCl7dmFyIG49ckQscj1ySTt0PSJfIit0KyJSXyIrKG49KHImfigxPDwzMi1lUChyKS0xKSkudG9TdHJpbmcoMzIpK24pLDA8KG49YWYrKykmJih0Kz0iSCIrbi50b1N0cmluZygzMikpLHQrPSJfIn1lbHNlIHQ9Il8iK3QrInJfIisobj1hbSsrKS50b1N0cmluZygzMikrIl8iO3JldHVybiBlLm1lbW9pemVkU3RhdGU9dH0sdXNlSG9zdFRyYW5zaXRpb25TdGF0dXM6b2YsdXNlRm9ybVN0YXRlOmFYLHVzZUFjdGlvblN0YXRlOmFYLHVzZU9wdGltaXN0aWM6ZnVuY3Rpb24oZSl7dmFyIHQ9YXgoKTt0Lm1lbW9pemVkU3RhdGU9dC5iYXNlU3RhdGU9ZTt2YXIgbj17cGVuZGluZzpudWxsLGxhbmVzOjAsZGlzcGF0Y2g6bnVsbCxsYXN0UmVuZGVyZWRSZWR1Y2VyOm51bGwsbGFzdFJlbmRlcmVkU3RhdGU6bnVsbH07cmV0dXJuIHQucXVldWU9bix0PW95LmJpbmQobnVsbCxhYSwhMCxuKSxuLmRpc3BhdGNoPXQsW2UsdF19LHVzZU1lbW9DYWNoZTphVCx1c2VDYWNoZVJlZnJlc2g6ZnVuY3Rpb24oKXtyZXR1cm4gYXgoKS5tZW1vaXplZFN0YXRlPW9tLmJpbmQobnVsbCxhYSl9LHVzZUVmZmVjdEV2ZW50OmZ1bmN0aW9uKGUpe3ZhciB0PWF4KCksbj17aW1wbDplfTtyZXR1cm4gdC5tZW1vaXplZFN0YXRlPW4sZnVuY3Rpb24oKXtpZigwIT0oMiZ1UykpdGhyb3cgRXJyb3IodSg0NDApKTtyZXR1cm4gbi5pbXBsLmFwcGx5KHZvaWQgMCxhcmd1bWVudHMpfX19LG94PXtyZWFkQ29udGV4dDpsdCx1c2U6YUMsdXNlQ2FsbGJhY2s6b24sdXNlQ29udGV4dDpsdCx1c2VFZmZlY3Q6YTgsdXNlSW1wZXJhdGl2ZUhhbmRsZTpvZSx1c2VJbnNlcnRpb25FZmZlY3Q6YTYsdXNlTGF5b3V0RWZmZWN0OmE5LHVzZU1lbW86b3IsdXNlUmVkdWNlcjpheix1c2VSZWY6YTEsdXNlU3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gYXooYU8pfSx1c2VEZWJ1Z1ZhbHVlOm90LHVzZURlZmVycmVkVmFsdWU6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gb2EoYV8oKSxhby5tZW1vaXplZFN0YXRlLGUsdCl9LHVzZVRyYW5zaXRpb246ZnVuY3Rpb24oKXt2YXIgZT1heihhTylbMF0sdD1hXygpLm1lbW9pemVkU3RhdGU7cmV0dXJuWyJib29sZWFuIj09dHlwZW9mIGU/ZTphTihlKSx0XX0sdXNlU3luY0V4dGVybmFsU3RvcmU6YU0sdXNlSWQ6b2QsdXNlSG9zdFRyYW5zaXRpb25TdGF0dXM6b2YsdXNlRm9ybVN0YXRlOmFHLHVzZUFjdGlvblN0YXRlOmFHLHVzZU9wdGltaXN0aWM6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gYUIoYV8oKSxhbyxlLHQpfSx1c2VNZW1vQ2FjaGU6YVQsdXNlQ2FjaGVSZWZyZXNoOm9wfTtveC51c2VFZmZlY3RFdmVudD1hNTt2YXIgb189e3JlYWRDb250ZXh0Omx0LHVzZTphQyx1c2VDYWxsYmFjazpvbix1c2VDb250ZXh0Omx0LHVzZUVmZmVjdDphOCx1c2VJbXBlcmF0aXZlSGFuZGxlOm9lLHVzZUluc2VydGlvbkVmZmVjdDphNix1c2VMYXlvdXRFZmZlY3Q6YTksdXNlTWVtbzpvcix1c2VSZWR1Y2VyOmFSLHVzZVJlZjphMSx1c2VTdGF0ZTpmdW5jdGlvbigpe3JldHVybiBhUihhTyl9LHVzZURlYnVnVmFsdWU6b3QsdXNlRGVmZXJyZWRWYWx1ZTpmdW5jdGlvbihlLHQpe3ZhciBuPWFfKCk7cmV0dXJuIG51bGw9PT1hbz9vbChuLGUsdCk6b2Eobixhby5tZW1vaXplZFN0YXRlLGUsdCl9LHVzZVRyYW5zaXRpb246ZnVuY3Rpb24oKXt2YXIgZT1hUihhTylbMF0sdD1hXygpLm1lbW9pemVkU3RhdGU7cmV0dXJuWyJib29sZWFuIj09dHlwZW9mIGU/ZTphTihlKSx0XX0sdXNlU3luY0V4dGVybmFsU3RvcmU6YU0sdXNlSWQ6b2QsdXNlSG9zdFRyYW5zaXRpb25TdGF0dXM6b2YsdXNlRm9ybVN0YXRlOmFaLHVzZUFjdGlvblN0YXRlOmFaLHVzZU9wdGltaXN0aWM6ZnVuY3Rpb24oZSx0KXt2YXIgbj1hXygpO3JldHVybiBudWxsIT09YW8/YUIobixhbyxlLHQpOihuLmJhc2VTdGF0ZT1lLFtlLG4ucXVldWUuZGlzcGF0Y2hdKX0sdXNlTWVtb0NhY2hlOmFULHVzZUNhY2hlUmVmcmVzaDpvcH07ZnVuY3Rpb24gb1AoZSx0LG4scil7bj1udWxsPT0obj1uKHIsdD1lLm1lbW9pemVkU3RhdGUpKT90Ongoe30sdCxuKSxlLm1lbW9pemVkU3RhdGU9biwwPT09ZS5sYW5lcyYmKGUudXBkYXRlUXVldWUuYmFzZVN0YXRlPW4pfW9fLnVzZUVmZmVjdEV2ZW50PWE1O3ZhciBvTj17ZW5xdWV1ZVNldFN0YXRlOmZ1bmN0aW9uKGUsdCxuKXtlPWUuX3JlYWN0SW50ZXJuYWxzO3ZhciByPXU0KCksbD1sSChyKTtsLnBheWxvYWQ9dCxudWxsIT1uJiYobC5jYWxsYmFjaz1uKSxudWxsIT09KHQ9bCQoZSxsLHIpKSYmKHU2KHQsZSxyKSxsUSh0LGUscikpfSxlbnF1ZXVlUmVwbGFjZVN0YXRlOmZ1bmN0aW9uKGUsdCxuKXtlPWUuX3JlYWN0SW50ZXJuYWxzO3ZhciByPXU0KCksbD1sSChyKTtsLnRhZz0xLGwucGF5bG9hZD10LG51bGwhPW4mJihsLmNhbGxiYWNrPW4pLG51bGwhPT0odD1sJChlLGwscikpJiYodTYodCxlLHIpLGxRKHQsZSxyKSl9LGVucXVldWVGb3JjZVVwZGF0ZTpmdW5jdGlvbihlLHQpe2U9ZS5fcmVhY3RJbnRlcm5hbHM7dmFyIG49dTQoKSxyPWxIKG4pO3IudGFnPTIsbnVsbCE9dCYmKHIuY2FsbGJhY2s9dCksbnVsbCE9PSh0PWwkKGUscixuKSkmJih1Nih0LGUsbiksbFEodCxlLG4pKX19O2Z1bmN0aW9uIG9DKGUsdCxuLHIsbCxhLG8pe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZihlPWUuc3RhdGVOb2RlKS5zaG91bGRDb21wb25lbnRVcGRhdGU/ZS5zaG91bGRDb21wb25lbnRVcGRhdGUocixhLG8pOiF0LnByb3RvdHlwZXx8IXQucHJvdG90eXBlLmlzUHVyZVJlYWN0Q29tcG9uZW50fHwhbmoobixyKXx8IW5qKGwsYSl9ZnVuY3Rpb24gb1QoZSx0LG4scil7ZT10LnN0YXRlLCJmdW5jdGlvbiI9PXR5cGVvZiB0LmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJnQuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyhuLHIpLCJmdW5jdGlvbiI9PXR5cGVvZiB0LlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzJiZ0LlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzKG4sciksdC5zdGF0ZSE9PWUmJm9OLmVucXVldWVSZXBsYWNlU3RhdGUodCx0LnN0YXRlLG51bGwpfWZ1bmN0aW9uIG9PKGUsdCl7dmFyIG49dDtpZigicmVmImluIHQpZm9yKHZhciByIGluIG49e30sdCkicmVmIiE9PXImJihuW3JdPXRbcl0pO2lmKGU9ZS5kZWZhdWx0UHJvcHMpZm9yKHZhciBsIGluIG49PT10JiYobj14KHt9LG4pKSxlKXZvaWQgMD09PW5bbF0mJihuW2xdPWVbbF0pO3JldHVybiBufWZ1bmN0aW9uIG96KGUpe3JhKGUpfWZ1bmN0aW9uIG9MKGUpe2NvbnNvbGUuZXJyb3IoZSl9ZnVuY3Rpb24gb1IoZSl7cmEoZSl9ZnVuY3Rpb24gb00oZSx0KXt0cnl7KDAsZS5vblVuY2F1Z2h0RXJyb3IpKHQudmFsdWUse2NvbXBvbmVudFN0YWNrOnQuc3RhY2t9KX1jYXRjaChlKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dGhyb3cgZX0pfX1mdW5jdGlvbiBvSShlLHQsbil7dHJ5eygwLGUub25DYXVnaHRFcnJvcikobi52YWx1ZSx7Y29tcG9uZW50U3RhY2s6bi5zdGFjayxlcnJvckJvdW5kYXJ5OjE9PT10LnRhZz90LnN0YXRlTm9kZTpudWxsfSl9Y2F0Y2goZSl7c2V0VGltZW91dChmdW5jdGlvbigpe3Rocm93IGV9KX19ZnVuY3Rpb24gb0QoZSx0LG4pe3JldHVybihuPWxIKG4pKS50YWc9MyxuLnBheWxvYWQ9e2VsZW1lbnQ6bnVsbH0sbi5jYWxsYmFjaz1mdW5jdGlvbigpe29NKGUsdCl9LG59ZnVuY3Rpb24gb0YoZSl7cmV0dXJuKGU9bEgoZSkpLnRhZz0zLGV9ZnVuY3Rpb24gb0EoZSx0LG4scil7dmFyIGw9bi50eXBlLmdldERlcml2ZWRTdGF0ZUZyb21FcnJvcjtpZigiZnVuY3Rpb24iPT10eXBlb2YgbCl7dmFyIGE9ci52YWx1ZTtlLnBheWxvYWQ9ZnVuY3Rpb24oKXtyZXR1cm4gbChhKX0sZS5jYWxsYmFjaz1mdW5jdGlvbigpe29JKHQsbixyKX19dmFyIG89bi5zdGF0ZU5vZGU7bnVsbCE9PW8mJiJmdW5jdGlvbiI9PXR5cGVvZiBvLmNvbXBvbmVudERpZENhdGNoJiYoZS5jYWxsYmFjaz1mdW5jdGlvbigpe29JKHQsbixyKSwiZnVuY3Rpb24iIT10eXBlb2YgbCYmKG51bGw9PT11UT91UT1uZXcgU2V0KFt0aGlzXSk6dVEuYWRkKHRoaXMpKTt2YXIgZT1yLnN0YWNrO3RoaXMuY29tcG9uZW50RGlkQ2F0Y2goci52YWx1ZSx7Y29tcG9uZW50U3RhY2s6bnVsbCE9PWU/ZToiIn0pfSl9dmFyIG9qPUVycm9yKHUoNDYxKSksb1U9ITE7ZnVuY3Rpb24gb0IoZSx0LG4scil7dC5jaGlsZD1udWxsPT09ZT9saih0LG51bGwsbixyKTpsQSh0LGUuY2hpbGQsbixyKX1mdW5jdGlvbiBvVihlLHQsbixyLGwpe249bi5yZW5kZXI7dmFyIGE9dC5yZWY7aWYoInJlZiJpbiByKXt2YXIgbz17fTtmb3IodmFyIGkgaW4gcikicmVmIiE9PWkmJihvW2ldPXJbaV0pfWVsc2Ugbz1yO3JldHVybihsZSh0KSxyPWF2KGUsdCxuLG8sYSxsKSxpPWFrKCksbnVsbD09PWV8fG9VKT8ociQmJmkmJnJqKHQpLHQuZmxhZ3N8PTEsb0IoZSx0LHIsbCksdC5jaGlsZCk6KGFTKGUsdCxsKSxpbChlLHQsbCkpfWZ1bmN0aW9uIG9IKGUsdCxuLHIsbCl7aWYobnVsbD09PWUpe3ZhciBhPW4udHlwZTtyZXR1cm4iZnVuY3Rpb24iIT10eXBlb2YgYXx8cnkoYSl8fHZvaWQgMCE9PWEuZGVmYXVsdFByb3BzfHxudWxsIT09bi5jb21wYXJlPygoZT1yayhuLnR5cGUsbnVsbCxyLHQsdC5tb2RlLGwpKS5yZWY9dC5yZWYsZS5yZXR1cm49dCx0LmNoaWxkPWUpOih0LnRhZz0xNSx0LnR5cGU9YSxvJChlLHQsYSxyLGwpKX1pZihhPWUuY2hpbGQsIWlhKGUsbCkpe3ZhciBvPWEubWVtb2l6ZWRQcm9wcztpZigobj1udWxsIT09KG49bi5jb21wYXJlKT9uOm5qKShvLHIpJiZlLnJlZj09PXQucmVmKXJldHVybiBpbChlLHQsbCl9cmV0dXJuIHQuZmxhZ3N8PTEsKGU9cmIoYSxyKSkucmVmPXQucmVmLGUucmV0dXJuPXQsdC5jaGlsZD1lfWZ1bmN0aW9uIG8kKGUsdCxuLHIsbCl7aWYobnVsbCE9PWUpe3ZhciBhPWUubWVtb2l6ZWRQcm9wcztpZihuaihhLHIpJiZlLnJlZj09PXQucmVmKWlmKG9VPSExLHQucGVuZGluZ1Byb3BzPXI9YSwhaWEoZSxsKSlyZXR1cm4gdC5sYW5lcz1lLmxhbmVzLGlsKGUsdCxsKTtlbHNlIDAhPSgxMzEwNzImZS5mbGFncykmJihvVT0hMCl9cmV0dXJuIG9ZKGUsdCxuLHIsbCl9ZnVuY3Rpb24gb1EoZSx0LG4scil7dmFyIGw9ci5jaGlsZHJlbixhPW51bGwhPT1lP2UubWVtb2l6ZWRTdGF0ZTpudWxsO2lmKG51bGw9PT1lJiZudWxsPT09dC5zdGF0ZU5vZGUmJih0LnN0YXRlTm9kZT17X3Zpc2liaWxpdHk6MSxfcGVuZGluZ01hcmtlcnM6bnVsbCxfcmV0cnlDYWNoZTpudWxsLF90cmFuc2l0aW9uczpudWxsfSksImhpZGRlbiI9PT1yLm1vZGUpe2lmKDAhPSgxMjgmdC5mbGFncykpe2lmKGE9bnVsbCE9PWE/YS5iYXNlTGFuZXN8bjpuLG51bGwhPT1lKXtmb3IobD0wLHI9dC5jaGlsZD1lLmNoaWxkO251bGwhPT1yOylsPWx8ci5sYW5lc3xyLmNoaWxkTGFuZXMscj1yLnNpYmxpbmc7cj1sJn5hfWVsc2Ugcj0wLHQuY2hpbGQ9bnVsbDtyZXR1cm4gb3EoZSx0LGEsbixyKX1pZigwPT0oMHgyMDAwMDAwMCZuKSlyZXR1cm4gcj10LmxhbmVzPTB4MjAwMDAwMDAsb3EoZSx0LG51bGwhPT1hP2EuYmFzZUxhbmVzfG46bixuLHIpO3QubWVtb2l6ZWRTdGF0ZT17YmFzZUxhbmVzOjAsY2FjaGVQb29sOm51bGx9LG51bGwhPT1lJiZsdyh0LG51bGwhPT1hP2EuY2FjaGVQb29sOm51bGwpLG51bGwhPT1hP2wwKHQsYSk6bDEoKSxsNih0KX1lbHNlIG51bGwhPT1hPyhsdyh0LGEuY2FjaGVQb29sKSxsMCh0LGEpLGw5KCksdC5tZW1vaXplZFN0YXRlPW51bGwpOihudWxsIT09ZSYmbHcodCxudWxsKSxsMSgpLGw5KCkpO3JldHVybiBvQihlLHQsbCxuKSx0LmNoaWxkfWZ1bmN0aW9uIG9XKGUsdCl7cmV0dXJuIG51bGwhPT1lJiYyMj09PWUudGFnfHxudWxsIT09dC5zdGF0ZU5vZGV8fCh0LnN0YXRlTm9kZT17X3Zpc2liaWxpdHk6MSxfcGVuZGluZ01hcmtlcnM6bnVsbCxfcmV0cnlDYWNoZTpudWxsLF90cmFuc2l0aW9uczpudWxsfSksdC5zaWJsaW5nfWZ1bmN0aW9uIG9xKGUsdCxuLHIsbCl7dmFyIGE9bGIoKTtyZXR1cm4gdC5tZW1vaXplZFN0YXRlPXtiYXNlTGFuZXM6bixjYWNoZVBvb2w6YT1udWxsPT09YT9udWxsOntwYXJlbnQ6bGkuX2N1cnJlbnRWYWx1ZSxwb29sOmF9fSxudWxsIT09ZSYmbHcodCxudWxsKSxsMSgpLGw2KHQpLG51bGwhPT1lJiZyOShlLHQsciwhMCksdC5jaGlsZExhbmVzPWwsbnVsbH1mdW5jdGlvbiBvSyhlLHQpe3JldHVybih0PW81KHttb2RlOnQubW9kZSxjaGlsZHJlbjp0LmNoaWxkcmVufSxlLm1vZGUpKS5yZWY9ZS5yZWYsZS5jaGlsZD10LHQucmV0dXJuPWUsdH1mdW5jdGlvbiBvWChlLHQsbil7cmV0dXJuIGxBKHQsZS5jaGlsZCxudWxsLG4pLGU9b0sodCx0LnBlbmRpbmdQcm9wcyksZS5mbGFnc3w9MixsNyh0KSx0Lm1lbW9pemVkU3RhdGU9bnVsbCxlfWZ1bmN0aW9uIG9HKGUsdCl7dmFyIG49dC5yZWY7aWYobnVsbD09PW4pbnVsbCE9PWUmJm51bGwhPT1lLnJlZiYmKHQuZmxhZ3N8PTQxOTQ4MTYpO2Vsc2V7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIG4mJiJvYmplY3QiIT10eXBlb2Ygbil0aHJvdyBFcnJvcih1KDI4NCkpOyhudWxsPT09ZXx8ZS5yZWYhPT1uKSYmKHQuZmxhZ3N8PTQxOTQ4MTYpfX1mdW5jdGlvbiBvWShlLHQsbixyLGwpe3JldHVybihsZSh0KSxuPWF2KGUsdCxuLHIsdm9pZCAwLGwpLHI9YWsoKSxudWxsPT09ZXx8b1UpPyhyJCYmciYmcmoodCksdC5mbGFnc3w9MSxvQihlLHQsbixsKSx0LmNoaWxkKTooYVMoZSx0LGwpLGlsKGUsdCxsKSl9ZnVuY3Rpb24gb0ooZSx0LG4scixsLGEpe3JldHVybihsZSh0KSx0LnVwZGF0ZVF1ZXVlPW51bGwsbj1hYih0LHIsbixsKSxheShlKSxyPWFrKCksbnVsbD09PWV8fG9VKT8ociQmJnImJnJqKHQpLHQuZmxhZ3N8PTEsb0IoZSx0LG4sYSksdC5jaGlsZCk6KGFTKGUsdCxhKSxpbChlLHQsYSkpfWZ1bmN0aW9uIG9aKGUsdCxuLHIsbCl7aWYobGUodCksbnVsbD09PXQuc3RhdGVOb2RlKXt2YXIgYT1yaCxvPW4uY29udGV4dFR5cGU7Im9iamVjdCI9PXR5cGVvZiBvJiZudWxsIT09byYmKGE9bHQobykpLHQubWVtb2l6ZWRTdGF0ZT1udWxsIT09KGE9bmV3IG4ocixhKSkuc3RhdGUmJnZvaWQgMCE9PWEuc3RhdGU/YS5zdGF0ZTpudWxsLGEudXBkYXRlcj1vTix0LnN0YXRlTm9kZT1hLGEuX3JlYWN0SW50ZXJuYWxzPXQsKGE9dC5zdGF0ZU5vZGUpLnByb3BzPXIsYS5zdGF0ZT10Lm1lbW9pemVkU3RhdGUsYS5yZWZzPXt9LGxCKHQpLG89bi5jb250ZXh0VHlwZSxhLmNvbnRleHQ9Im9iamVjdCI9PXR5cGVvZiBvJiZudWxsIT09bz9sdChvKTpyaCxhLnN0YXRlPXQubWVtb2l6ZWRTdGF0ZSwiZnVuY3Rpb24iPT10eXBlb2Yobz1uLmdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcykmJihvUCh0LG4sbyxyKSxhLnN0YXRlPXQubWVtb2l6ZWRTdGF0ZSksImZ1bmN0aW9uIj09dHlwZW9mIG4uZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzfHwiZnVuY3Rpb24iPT10eXBlb2YgYS5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGEuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCYmImZ1bmN0aW9uIiE9dHlwZW9mIGEuY29tcG9uZW50V2lsbE1vdW50fHwobz1hLnN0YXRlLCJmdW5jdGlvbiI9PXR5cGVvZiBhLmNvbXBvbmVudFdpbGxNb3VudCYmYS5jb21wb25lbnRXaWxsTW91bnQoKSwiZnVuY3Rpb24iPT10eXBlb2YgYS5VTlNBRkVfY29tcG9uZW50V2lsbE1vdW50JiZhLlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQoKSxvIT09YS5zdGF0ZSYmb04uZW5xdWV1ZVJlcGxhY2VTdGF0ZShhLGEuc3RhdGUsbnVsbCksbFgodCxyLGEsbCksbEsoKSxhLnN0YXRlPXQubWVtb2l6ZWRTdGF0ZSksImZ1bmN0aW9uIj09dHlwZW9mIGEuY29tcG9uZW50RGlkTW91bnQmJih0LmZsYWdzfD00MTk0MzA4KSxyPSEwfWVsc2UgaWYobnVsbD09PWUpe2E9dC5zdGF0ZU5vZGU7dmFyIGk9dC5tZW1vaXplZFByb3BzLHU9b08obixpKTthLnByb3BzPXU7dmFyIHM9YS5jb250ZXh0LGM9bi5jb250ZXh0VHlwZTtvPXJoLCJvYmplY3QiPT10eXBlb2YgYyYmbnVsbCE9PWMmJihvPWx0KGMpKTt2YXIgZj1uLmdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcztjPSJmdW5jdGlvbiI9PXR5cGVvZiBmfHwiZnVuY3Rpb24iPT10eXBlb2YgYS5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZSxpPXQucGVuZGluZ1Byb3BzIT09aSxjfHwiZnVuY3Rpb24iIT10eXBlb2YgYS5VTlNBRkVfY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyYmImZ1bmN0aW9uIiE9dHlwZW9mIGEuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wc3x8KGl8fHMhPT1vKSYmb1QodCxhLHIsbyksbFU9ITE7dmFyIGQ9dC5tZW1vaXplZFN0YXRlO2Euc3RhdGU9ZCxsWCh0LHIsYSxsKSxsSygpLHM9dC5tZW1vaXplZFN0YXRlLGl8fGQhPT1zfHxsVT8oImZ1bmN0aW9uIj09dHlwZW9mIGYmJihvUCh0LG4sZixyKSxzPXQubWVtb2l6ZWRTdGF0ZSksKHU9bFV8fG9DKHQsbix1LHIsZCxzLG8pKT8oY3x8ImZ1bmN0aW9uIiE9dHlwZW9mIGEuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCYmImZ1bmN0aW9uIiE9dHlwZW9mIGEuY29tcG9uZW50V2lsbE1vdW50fHwoImZ1bmN0aW9uIj09dHlwZW9mIGEuY29tcG9uZW50V2lsbE1vdW50JiZhLmNvbXBvbmVudFdpbGxNb3VudCgpLCJmdW5jdGlvbiI9PXR5cGVvZiBhLlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQmJmEuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCgpKSwiZnVuY3Rpb24iPT10eXBlb2YgYS5jb21wb25lbnREaWRNb3VudCYmKHQuZmxhZ3N8PTQxOTQzMDgpKTooImZ1bmN0aW9uIj09dHlwZW9mIGEuY29tcG9uZW50RGlkTW91bnQmJih0LmZsYWdzfD00MTk0MzA4KSx0Lm1lbW9pemVkUHJvcHM9cix0Lm1lbW9pemVkU3RhdGU9cyksYS5wcm9wcz1yLGEuc3RhdGU9cyxhLmNvbnRleHQ9byxyPXUpOigiZnVuY3Rpb24iPT10eXBlb2YgYS5jb21wb25lbnREaWRNb3VudCYmKHQuZmxhZ3N8PTQxOTQzMDgpLHI9ITEpfWVsc2V7YT10LnN0YXRlTm9kZSxsVihlLHQpLGM9b08obixvPXQubWVtb2l6ZWRQcm9wcyksYS5wcm9wcz1jLGY9dC5wZW5kaW5nUHJvcHMsZD1hLmNvbnRleHQscz1uLmNvbnRleHRUeXBlLHU9cmgsIm9iamVjdCI9PXR5cGVvZiBzJiZudWxsIT09cyYmKHU9bHQocykpLChzPSJmdW5jdGlvbiI9PXR5cGVvZihpPW4uZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKXx8ImZ1bmN0aW9uIj09dHlwZW9mIGEuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUpfHwiZnVuY3Rpb24iIT10eXBlb2YgYS5VTlNBRkVfY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyYmImZ1bmN0aW9uIiE9dHlwZW9mIGEuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wc3x8KG8hPT1mfHxkIT09dSkmJm9UKHQsYSxyLHUpLGxVPSExLGQ9dC5tZW1vaXplZFN0YXRlLGEuc3RhdGU9ZCxsWCh0LHIsYSxsKSxsSygpO3ZhciBwPXQubWVtb2l6ZWRTdGF0ZTtvIT09Znx8ZCE9PXB8fGxVfHxudWxsIT09ZSYmbnVsbCE9PWUuZGVwZW5kZW5jaWVzJiZyNyhlLmRlcGVuZGVuY2llcyk/KCJmdW5jdGlvbiI9PXR5cGVvZiBpJiYob1AodCxuLGkscikscD10Lm1lbW9pemVkU3RhdGUpLChjPWxVfHxvQyh0LG4sYyxyLGQscCx1KXx8bnVsbCE9PWUmJm51bGwhPT1lLmRlcGVuZGVuY2llcyYmcjcoZS5kZXBlbmRlbmNpZXMpKT8oc3x8ImZ1bmN0aW9uIiE9dHlwZW9mIGEuVU5TQUZFX2NvbXBvbmVudFdpbGxVcGRhdGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBhLmNvbXBvbmVudFdpbGxVcGRhdGV8fCgiZnVuY3Rpb24iPT10eXBlb2YgYS5jb21wb25lbnRXaWxsVXBkYXRlJiZhLmNvbXBvbmVudFdpbGxVcGRhdGUocixwLHUpLCJmdW5jdGlvbiI9PXR5cGVvZiBhLlVOU0FGRV9jb21wb25lbnRXaWxsVXBkYXRlJiZhLlVOU0FGRV9jb21wb25lbnRXaWxsVXBkYXRlKHIscCx1KSksImZ1bmN0aW9uIj09dHlwZW9mIGEuY29tcG9uZW50RGlkVXBkYXRlJiYodC5mbGFnc3w9NCksImZ1bmN0aW9uIj09dHlwZW9mIGEuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUmJih0LmZsYWdzfD0xMDI0KSk6KCJmdW5jdGlvbiIhPXR5cGVvZiBhLmNvbXBvbmVudERpZFVwZGF0ZXx8bz09PWUubWVtb2l6ZWRQcm9wcyYmZD09PWUubWVtb2l6ZWRTdGF0ZXx8KHQuZmxhZ3N8PTQpLCJmdW5jdGlvbiIhPXR5cGVvZiBhLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlfHxvPT09ZS5tZW1vaXplZFByb3BzJiZkPT09ZS5tZW1vaXplZFN0YXRlfHwodC5mbGFnc3w9MTAyNCksdC5tZW1vaXplZFByb3BzPXIsdC5tZW1vaXplZFN0YXRlPXApLGEucHJvcHM9cixhLnN0YXRlPXAsYS5jb250ZXh0PXUscj1jKTooImZ1bmN0aW9uIiE9dHlwZW9mIGEuY29tcG9uZW50RGlkVXBkYXRlfHxvPT09ZS5tZW1vaXplZFByb3BzJiZkPT09ZS5tZW1vaXplZFN0YXRlfHwodC5mbGFnc3w9NCksImZ1bmN0aW9uIiE9dHlwZW9mIGEuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGV8fG89PT1lLm1lbW9pemVkUHJvcHMmJmQ9PT1lLm1lbW9pemVkU3RhdGV8fCh0LmZsYWdzfD0xMDI0KSxyPSExKX1yZXR1cm4gYT1yLG9HKGUsdCkscj0wIT0oMTI4JnQuZmxhZ3MpLGF8fHI/KGE9dC5zdGF0ZU5vZGUsbj1yJiYiZnVuY3Rpb24iIT10eXBlb2Ygbi5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3I/bnVsbDphLnJlbmRlcigpLHQuZmxhZ3N8PTEsbnVsbCE9PWUmJnI/KHQuY2hpbGQ9bEEodCxlLmNoaWxkLG51bGwsbCksdC5jaGlsZD1sQSh0LG51bGwsbixsKSk6b0IoZSx0LG4sbCksdC5tZW1vaXplZFN0YXRlPWEuc3RhdGUsZT10LmNoaWxkKTplPWlsKGUsdCxsKSxlfWZ1bmN0aW9uIG8wKGUsdCxuLHIpe3JldHVybiBySigpLHQuZmxhZ3N8PTI1NixvQihlLHQsbixyKSx0LmNoaWxkfXZhciBvMT17ZGVoeWRyYXRlZDpudWxsLHRyZWVDb250ZXh0Om51bGwscmV0cnlMYW5lOjAsaHlkcmF0aW9uRXJyb3JzOm51bGx9O2Z1bmN0aW9uIG8yKGUpe3JldHVybntiYXNlTGFuZXM6ZSxjYWNoZVBvb2w6bGsoKX19ZnVuY3Rpb24gbzMoZSx0LG4pe3JldHVybiBlPW51bGwhPT1lP2UuY2hpbGRMYW5lcyZ+bjowLHQmJihlfD11RCksZX1mdW5jdGlvbiBvNChlLHQsbil7dmFyIHIsbD10LnBlbmRpbmdQcm9wcyxhPSExLG89MCE9KDEyOCZ0LmZsYWdzKTtpZigocj1vKXx8KHI9KG51bGw9PT1lfHxudWxsIT09ZS5tZW1vaXplZFN0YXRlKSYmMCE9KDImYWUuY3VycmVudCkpLHImJihhPSEwLHQuZmxhZ3MmPS0xMjkpLHI9MCE9KDMyJnQuZmxhZ3MpLHQuZmxhZ3MmPS0zMyxudWxsPT09ZSl7aWYociQpe2lmKGE/bDgodCk6bDkoKSwoZT1ySCk/bnVsbCE9PShlPW51bGwhPT0oZT1jVihlLHJXKSkmJiImIiE9PWUuZGF0YT9lOm51bGwpJiYodC5tZW1vaXplZFN0YXRlPXtkZWh5ZHJhdGVkOmUsdHJlZUNvbnRleHQ6bnVsbCE9PXJNP3tpZDpySSxvdmVyZmxvdzpyRH06bnVsbCxyZXRyeUxhbmU6MHgyMDAwMDAwMCxoeWRyYXRpb25FcnJvcnM6bnVsbH0sKG49cngoZSkpLnJldHVybj10LHQuY2hpbGQ9bixyVj10LHJIPW51bGwpOmU9bnVsbCxudWxsPT09ZSl0aHJvdyBySyh0KTtyZXR1cm4gYyQoZSk/dC5sYW5lcz0zMjp0LmxhbmVzPTB4MjAwMDAwMDAsbnVsbH12YXIgaT1sLmNoaWxkcmVuO3JldHVybihsPWwuZmFsbGJhY2ssYSk/KGw5KCksaT1vNSh7bW9kZToiaGlkZGVuIixjaGlsZHJlbjppfSxhPXQubW9kZSksbD1yUyhsLGEsbixudWxsKSxpLnJldHVybj10LGwucmV0dXJuPXQsaS5zaWJsaW5nPWwsdC5jaGlsZD1pLChsPXQuY2hpbGQpLm1lbW9pemVkU3RhdGU9bzIobiksbC5jaGlsZExhbmVzPW8zKGUscixuKSx0Lm1lbW9pemVkU3RhdGU9bzEsb1cobnVsbCxsKSk6KGw4KHQpLG84KHQsaSkpfXZhciBzPWUubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09cyYmbnVsbCE9PShpPXMuZGVoeWRyYXRlZCkpe2lmKG8pMjU2JnQuZmxhZ3M/KGw4KHQpLHQuZmxhZ3MmPS0yNTcsdD1vNihlLHQsbikpOm51bGwhPT10Lm1lbW9pemVkU3RhdGU/KGw5KCksdC5jaGlsZD1lLmNoaWxkLHQuZmxhZ3N8PTEyOCx0PW51bGwpOihsOSgpLGk9bC5mYWxsYmFjayxhPXQubW9kZSxsPW81KHttb2RlOiJ2aXNpYmxlIixjaGlsZHJlbjpsLmNoaWxkcmVufSxhKSxpPXJTKGksYSxuLG51bGwpLGkuZmxhZ3N8PTIsbC5yZXR1cm49dCxpLnJldHVybj10LGwuc2libGluZz1pLHQuY2hpbGQ9bCxsQSh0LGUuY2hpbGQsbnVsbCxuKSwobD10LmNoaWxkKS5tZW1vaXplZFN0YXRlPW8yKG4pLGwuY2hpbGRMYW5lcz1vMyhlLHIsbiksdC5tZW1vaXplZFN0YXRlPW8xLHQ9b1cobnVsbCxsKSk7ZWxzZSBpZihsOCh0KSxjJChpKSl7aWYocj1pLm5leHRTaWJsaW5nJiZpLm5leHRTaWJsaW5nLmRhdGFzZXQpdmFyIGM9ci5kZ3N0O3I9YywobD1FcnJvcih1KDQxOSkpKS5zdGFjaz0iIixsLmRpZ2VzdD1yLHIwKHt2YWx1ZTpsLHNvdXJjZTpudWxsLHN0YWNrOm51bGx9KSx0PW82KGUsdCxuKX1lbHNlIGlmKG9VfHxyOShlLHQsbiwhMSkscj0wIT0obiZlLmNoaWxkTGFuZXMpLG9VfHxyKXtpZihudWxsIT09KHI9dUUpJiYwIT09KGw9ZVUocixuKSkmJmwhPT1zLnJldHJ5TGFuZSl0aHJvdyBzLnJldHJ5TGFuZT1sLHJkKGUsbCksdTYocixlLGwpLG9qO2NIKGkpfHxzdSgpLHQ9bzYoZSx0LG4pfWVsc2UgY0goaSk/KHQuZmxhZ3N8PTE5Mix0LmNoaWxkPWUuY2hpbGQsdD1udWxsKTooZT1zLnRyZWVDb250ZXh0LHJIPWNRKGkubmV4dFNpYmxpbmcpLHJWPXQsciQ9ITAsclE9bnVsbCxyVz0hMSxudWxsIT09ZSYmckIodCxlKSx0PW84KHQsbC5jaGlsZHJlbiksdC5mbGFnc3w9NDA5Nik7cmV0dXJuIHR9cmV0dXJuIGE/KGw5KCksaT1sLmZhbGxiYWNrLGE9dC5tb2RlLGM9KHM9ZS5jaGlsZCkuc2libGluZywobD1yYihzLHttb2RlOiJoaWRkZW4iLGNoaWxkcmVuOmwuY2hpbGRyZW59KSkuc3VidHJlZUZsYWdzPTB4N2UwMDAwMCZzLnN1YnRyZWVGbGFncyxudWxsIT09Yz9pPXJiKGMsaSk6KGk9clMoaSxhLG4sbnVsbCksaS5mbGFnc3w9MiksaS5yZXR1cm49dCxsLnJldHVybj10LGwuc2libGluZz1pLHQuY2hpbGQ9bCxvVyhudWxsLGwpLGw9dC5jaGlsZCxudWxsPT09KGk9ZS5jaGlsZC5tZW1vaXplZFN0YXRlKT9pPW8yKG4pOihudWxsIT09KGE9aS5jYWNoZVBvb2wpPyhzPWxpLl9jdXJyZW50VmFsdWUsYT1hLnBhcmVudCE9PXM/e3BhcmVudDpzLHBvb2w6c306YSk6YT1saygpLGk9e2Jhc2VMYW5lczppLmJhc2VMYW5lc3xuLGNhY2hlUG9vbDphfSksbC5tZW1vaXplZFN0YXRlPWksbC5jaGlsZExhbmVzPW8zKGUscixuKSx0Lm1lbW9pemVkU3RhdGU9bzEsb1coZS5jaGlsZCxsKSk6KGw4KHQpLGU9KG49ZS5jaGlsZCkuc2libGluZywobj1yYihuLHttb2RlOiJ2aXNpYmxlIixjaGlsZHJlbjpsLmNoaWxkcmVufSkpLnJldHVybj10LG4uc2libGluZz1udWxsLG51bGwhPT1lJiYobnVsbD09PShyPXQuZGVsZXRpb25zKT8odC5kZWxldGlvbnM9W2VdLHQuZmxhZ3N8PTE2KTpyLnB1c2goZSkpLHQuY2hpbGQ9bix0Lm1lbW9pemVkU3RhdGU9bnVsbCxuKX1mdW5jdGlvbiBvOChlLHQpe3JldHVybih0PW81KHttb2RlOiJ2aXNpYmxlIixjaGlsZHJlbjp0fSxlLm1vZGUpKS5yZXR1cm49ZSxlLmNoaWxkPXR9ZnVuY3Rpb24gbzUoZSx0KXtyZXR1cm4oZT1ydigyMixlLG51bGwsdCkpLmxhbmVzPTAsZX1mdW5jdGlvbiBvNihlLHQsbil7cmV0dXJuIGxBKHQsZS5jaGlsZCxudWxsLG4pLGU9bzgodCx0LnBlbmRpbmdQcm9wcy5jaGlsZHJlbiksZS5mbGFnc3w9Mix0Lm1lbW9pemVkU3RhdGU9bnVsbCxlfWZ1bmN0aW9uIG85KGUsdCxuKXtlLmxhbmVzfD10O3ZhciByPWUuYWx0ZXJuYXRlO251bGwhPT1yJiYoci5sYW5lc3w9dCkscjUoZS5yZXR1cm4sdCxuKX1mdW5jdGlvbiBvNyhlKXtmb3IodmFyIHQ9bnVsbDtudWxsIT09ZTspe3ZhciBuPWUuYWx0ZXJuYXRlO251bGwhPT1uJiZudWxsPT09YXIobikmJih0PWUpLGU9ZS5zaWJsaW5nfXJldHVybiB0fWZ1bmN0aW9uIGllKGUsdCxuLHIsbCxhKXt2YXIgbz1lLm1lbW9pemVkU3RhdGU7bnVsbD09PW8/ZS5tZW1vaXplZFN0YXRlPXtpc0JhY2t3YXJkczp0LHJlbmRlcmluZzpudWxsLHJlbmRlcmluZ1N0YXJ0VGltZTowLGxhc3Q6cix0YWlsOm4sdGFpbE1vZGU6bCx0cmVlRm9ya0NvdW50OmF9OihvLmlzQmFja3dhcmRzPXQsby5yZW5kZXJpbmc9bnVsbCxvLnJlbmRlcmluZ1N0YXJ0VGltZT0wLG8ubGFzdD1yLG8udGFpbD1uLG8udGFpbE1vZGU9bCxvLnRyZWVGb3JrQ291bnQ9YSl9ZnVuY3Rpb24gaXQoZSl7dmFyIHQ9ZS5jaGlsZDtmb3IoZS5jaGlsZD1udWxsO251bGwhPT10Oyl7dmFyIG49dC5zaWJsaW5nO3Quc2libGluZz1lLmNoaWxkLGUuY2hpbGQ9dCx0PW59fWZ1bmN0aW9uIGlyKGUsdCxuKXt2YXIgcj10LnBlbmRpbmdQcm9wcyxsPXIucmV2ZWFsT3JkZXIsYT1yLnRhaWw7cj1yLmNoaWxkcmVuO3ZhciBvPWFlLmN1cnJlbnQ7aWYoMTI4JnQuZmxhZ3MpcmV0dXJuIGF0KHQsbyksbnVsbDt2YXIgaT0wIT0oMiZvKTtpZihpPyhvPTEmb3wyLHQuZmxhZ3N8PTEyOCk6byY9MSxhdCh0LG8pLCJiYWNrd2FyZHMiPT09bCYmbnVsbCE9PWU/KGl0KGUpLG9CKGUsdCxyLG4pLGl0KGUpKTpvQihlLHQscixuKSxyPXIkP3J6OjAsIWkmJm51bGwhPT1lJiYwIT0oMTI4JmUuZmxhZ3MpKWU6Zm9yKGU9dC5jaGlsZDtudWxsIT09ZTspe2lmKDEzPT09ZS50YWcpbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSYmbzkoZSxuLHQpO2Vsc2UgaWYoMTk9PT1lLnRhZylvOShlLG4sdCk7ZWxzZSBpZihudWxsIT09ZS5jaGlsZCl7ZS5jaGlsZC5yZXR1cm49ZSxlPWUuY2hpbGQ7Y29udGludWV9aWYoZT09PXQpYnJlYWs7Zm9yKDtudWxsPT09ZS5zaWJsaW5nOyl7aWYobnVsbD09PWUucmV0dXJufHxlLnJldHVybj09PXQpYnJlYWsgZTtlPWUucmV0dXJufWUuc2libGluZy5yZXR1cm49ZS5yZXR1cm4sZT1lLnNpYmxpbmd9c3dpdGNoKGwpe2Nhc2UiYmFja3dhcmRzIjpudWxsPT09KG49bzcodC5jaGlsZCkpPyhsPXQuY2hpbGQsdC5jaGlsZD1udWxsKToobD1uLnNpYmxpbmcsbi5zaWJsaW5nPW51bGwsaXQodCkpLGllKHQsITAsbCxudWxsLGEscik7YnJlYWs7Y2FzZSJ1bnN0YWJsZV9sZWdhY3ktYmFja3dhcmRzIjpmb3Iobj1udWxsLGw9dC5jaGlsZCx0LmNoaWxkPW51bGw7bnVsbCE9PWw7KXtpZihudWxsIT09KGU9bC5hbHRlcm5hdGUpJiZudWxsPT09YXIoZSkpe3QuY2hpbGQ9bDticmVha31lPWwuc2libGluZyxsLnNpYmxpbmc9bixuPWwsbD1lfWllKHQsITAsbixudWxsLGEscik7YnJlYWs7Y2FzZSJ0b2dldGhlciI6aWUodCwhMSxudWxsLG51bGwsdm9pZCAwLHIpO2JyZWFrO2Nhc2UiaW5kZXBlbmRlbnQiOnQubWVtb2l6ZWRTdGF0ZT1udWxsO2JyZWFrO2RlZmF1bHQ6bnVsbD09PShuPW83KHQuY2hpbGQpKT8obD10LmNoaWxkLHQuY2hpbGQ9bnVsbCk6KGw9bi5zaWJsaW5nLG4uc2libGluZz1udWxsKSxpZSh0LCExLGwsbixhLHIpfXJldHVybiB0LmNoaWxkfWZ1bmN0aW9uIGlsKGUsdCxuKXtpZihudWxsIT09ZSYmKHQuZGVwZW5kZW5jaWVzPWUuZGVwZW5kZW5jaWVzKSx1Unw9dC5sYW5lcywwPT0obiZ0LmNoaWxkTGFuZXMpKXtpZihudWxsPT09ZSlyZXR1cm4gbnVsbDtlbHNlIGlmKHI5KGUsdCxuLCExKSwwPT0obiZ0LmNoaWxkTGFuZXMpKXJldHVybiBudWxsfWlmKG51bGwhPT1lJiZ0LmNoaWxkIT09ZS5jaGlsZCl0aHJvdyBFcnJvcih1KDE1MykpO2lmKG51bGwhPT10LmNoaWxkKXtmb3Iobj1yYihlPXQuY2hpbGQsZS5wZW5kaW5nUHJvcHMpLHQuY2hpbGQ9bixuLnJldHVybj10O251bGwhPT1lLnNpYmxpbmc7KWU9ZS5zaWJsaW5nLChuPW4uc2libGluZz1yYihlLGUucGVuZGluZ1Byb3BzKSkucmV0dXJuPXQ7bi5zaWJsaW5nPW51bGx9cmV0dXJuIHQuY2hpbGR9ZnVuY3Rpb24gaWEoZSx0KXtyZXR1cm4gMCE9KGUubGFuZXMmdCl8fCEhKG51bGwhPT0oZT1lLmRlcGVuZGVuY2llcykmJnI3KGUpKX1mdW5jdGlvbiBpbyhlLHQsbil7aWYobnVsbCE9PWUpaWYoZS5tZW1vaXplZFByb3BzIT09dC5wZW5kaW5nUHJvcHMpb1U9ITA7ZWxzZXtpZighaWEoZSxuKSYmMD09KDEyOCZ0LmZsYWdzKSlyZXR1cm4gb1U9ITEsZnVuY3Rpb24oZSx0LG4pe3N3aXRjaCh0LnRhZyl7Y2FzZSAzOmVsKHQsdC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbykscjQodCxsaSxlLm1lbW9pemVkU3RhdGUuY2FjaGUpLHJKKCk7YnJlYWs7Y2FzZSAyNzpjYXNlIDU6ZW8odCk7YnJlYWs7Y2FzZSA0OmVsKHQsdC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyk7YnJlYWs7Y2FzZSAxMDpyNCh0LHQudHlwZSx0Lm1lbW9pemVkUHJvcHMudmFsdWUpO2JyZWFrO2Nhc2UgMzE6aWYobnVsbCE9PXQubWVtb2l6ZWRTdGF0ZSlyZXR1cm4gdC5mbGFnc3w9MTI4LGw1KHQpLG51bGw7YnJlYWs7Y2FzZSAxMzp2YXIgcj10Lm1lbW9pemVkU3RhdGU7aWYobnVsbCE9PXIpe2lmKG51bGwhPT1yLmRlaHlkcmF0ZWQpcmV0dXJuIGw4KHQpLHQuZmxhZ3N8PTEyOCxudWxsO2lmKDAhPShuJnQuY2hpbGQuY2hpbGRMYW5lcykpcmV0dXJuIG80KGUsdCxuKTtyZXR1cm4gbDgodCksbnVsbCE9PShlPWlsKGUsdCxuKSk/ZS5zaWJsaW5nOm51bGx9bDgodCk7YnJlYWs7Y2FzZSAxOTppZigxMjgmdC5mbGFncylyZXR1cm4gaXIoZSx0LG4pO3ZhciBsPTAhPSgxMjgmZS5mbGFncyk7aWYoKHI9MCE9KG4mdC5jaGlsZExhbmVzKSl8fChyOShlLHQsbiwhMSkscj0wIT0obiZ0LmNoaWxkTGFuZXMpKSxsKXtpZihyKXJldHVybiBpcihlLHQsbik7dC5mbGFnc3w9MTI4fWlmKG51bGwhPT0obD10Lm1lbW9pemVkU3RhdGUpJiYobC5yZW5kZXJpbmc9bnVsbCxsLnRhaWw9bnVsbCxsLmxhc3RFZmZlY3Q9bnVsbCksYXQodCxhZS5jdXJyZW50KSwhcilyZXR1cm4gbnVsbDticmVhaztjYXNlIDIyOnJldHVybiB0LmxhbmVzPTAsb1EoZSx0LG4sdC5wZW5kaW5nUHJvcHMpO2Nhc2UgMjQ6cjQodCxsaSxlLm1lbW9pemVkU3RhdGUuY2FjaGUpfXJldHVybiBpbChlLHQsbil9KGUsdCxuKTtvVT0wIT0oMTMxMDcyJmUuZmxhZ3MpfWVsc2Ugb1U9ITEsciQmJjAhPSgxMDQ4NTc2JnQuZmxhZ3MpJiZyQSh0LHJ6LHQuaW5kZXgpO3N3aXRjaCh0LmxhbmVzPTAsdC50YWcpe2Nhc2UgMTY6ZTp7dmFyIHI9dC5wZW5kaW5nUHJvcHM7aWYoZT1sQyh0LmVsZW1lbnRUeXBlKSx0LnR5cGU9ZSwiZnVuY3Rpb24iPT10eXBlb2YgZSlyeShlKT8ocj1vTyhlLHIpLHQudGFnPTEsdD1vWihudWxsLHQsZSxyLG4pKToodC50YWc9MCx0PW9ZKG51bGwsdCxlLHIsbikpO2Vsc2V7aWYobnVsbCE9ZSl7dmFyIGw9ZS4kJHR5cGVvZjtpZihsPT09Uil7dC50YWc9MTEsdD1vVihudWxsLHQsZSxyLG4pO2JyZWFrIGV9aWYobD09PUQpe3QudGFnPTE0LHQ9b0gobnVsbCx0LGUscixuKTticmVhayBlfX10aHJvdyBFcnJvcih1KDMwNix0PWZ1bmN0aW9uIGUodCl7aWYobnVsbD09dClyZXR1cm4gbnVsbDtpZigiZnVuY3Rpb24iPT10eXBlb2YgdClyZXR1cm4gdC4kJHR5cGVvZj09PSQ/bnVsbDp0LmRpc3BsYXlOYW1lfHx0Lm5hbWV8fG51bGw7aWYoInN0cmluZyI9PXR5cGVvZiB0KXJldHVybiB0O3N3aXRjaCh0KXtjYXNlIEM6cmV0dXJuIkZyYWdtZW50IjtjYXNlIE86cmV0dXJuIlByb2ZpbGVyIjtjYXNlIFQ6cmV0dXJuIlN0cmljdE1vZGUiO2Nhc2UgTTpyZXR1cm4iU3VzcGVuc2UiO2Nhc2UgSTpyZXR1cm4iU3VzcGVuc2VMaXN0IjtjYXNlIEE6cmV0dXJuIkFjdGl2aXR5IjtjYXNlIEI6cmV0dXJuIlZpZXdUcmFuc2l0aW9uIn1pZigib2JqZWN0Ij09dHlwZW9mIHQpc3dpdGNoKHQuJCR0eXBlb2Ype2Nhc2UgTjpyZXR1cm4iUG9ydGFsIjtjYXNlIEw6cmV0dXJuIHQuZGlzcGxheU5hbWV8fCJDb250ZXh0IjtjYXNlIHo6cmV0dXJuKHQuX2NvbnRleHQuZGlzcGxheU5hbWV8fCJDb250ZXh0IikrIi5Db25zdW1lciI7Y2FzZSBSOnZhciBuPXQucmVuZGVyO3JldHVybih0PXQuZGlzcGxheU5hbWUpfHwodD0iIiE9PSh0PW4uZGlzcGxheU5hbWV8fG4ubmFtZXx8IiIpPyJGb3J3YXJkUmVmKCIrdCsiKSI6IkZvcndhcmRSZWYiKSx0O2Nhc2UgRDpyZXR1cm4gbnVsbCE9PShuPXQuZGlzcGxheU5hbWV8fG51bGwpP246ZSh0LnR5cGUpfHwiTWVtbyI7Y2FzZSBGOm49dC5fcGF5bG9hZCx0PXQuX2luaXQ7dHJ5e3JldHVybiBlKHQobikpfWNhdGNoKGUpe319cmV0dXJuIG51bGx9KGUpfHxlLCIiKSl9fXJldHVybiB0O2Nhc2UgMDpyZXR1cm4gb1koZSx0LHQudHlwZSx0LnBlbmRpbmdQcm9wcyxuKTtjYXNlIDE6cmV0dXJuIGw9b08ocj10LnR5cGUsdC5wZW5kaW5nUHJvcHMpLG9aKGUsdCxyLGwsbik7Y2FzZSAzOmU6e2lmKGVsKHQsdC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyksbnVsbD09PWUpdGhyb3cgRXJyb3IodSgzODcpKTtyPXQucGVuZGluZ1Byb3BzO3ZhciBhPXQubWVtb2l6ZWRTdGF0ZTtsPWEuZWxlbWVudCxsVihlLHQpLGxYKHQscixudWxsLG4pO3ZhciBvPXQubWVtb2l6ZWRTdGF0ZTtpZihyNCh0LGxpLHI9by5jYWNoZSksciE9PWEuY2FjaGUmJnI2KHQsW2xpXSxuLCEwKSxsSygpLHI9by5lbGVtZW50LGEuaXNEZWh5ZHJhdGVkKWlmKGE9e2VsZW1lbnQ6cixpc0RlaHlkcmF0ZWQ6ITEsY2FjaGU6by5jYWNoZX0sdC51cGRhdGVRdWV1ZS5iYXNlU3RhdGU9YSx0Lm1lbW9pemVkU3RhdGU9YSwyNTYmdC5mbGFncyl7dD1vMChlLHQscixuKTticmVhayBlfWVsc2UgaWYociE9PWwpe3IwKGw9ck4oRXJyb3IodSg0MjQpKSx0KSksdD1vMChlLHQscixuKTticmVhayBlfWVsc2UgZm9yKHJIPWNRKChlPTk9PT0oZT10LnN0YXRlTm9kZS5jb250YWluZXJJbmZvKS5ub2RlVHlwZT9lLmJvZHk6IkhUTUwiPT09ZS5ub2RlTmFtZT9lLm93bmVyRG9jdW1lbnQuYm9keTplKS5maXJzdENoaWxkKSxyVj10LHIkPSEwLHJRPW51bGwsclc9ITAsbj1saih0LG51bGwscixuKSx0LmNoaWxkPW47bjspbi5mbGFncz0tMyZuLmZsYWdzfDQwOTYsbj1uLnNpYmxpbmc7ZWxzZXtpZihySigpLHI9PT1sKXt0PWlsKGUsdCxuKTticmVhayBlfW9CKGUsdCxyLG4pfXQ9dC5jaGlsZH1yZXR1cm4gdDtjYXNlIDI2OnJldHVybiBvRyhlLHQpLG51bGw9PT1lPyhuPWMzKHQudHlwZSxudWxsLHQucGVuZGluZ1Byb3BzLG51bGwpKT90Lm1lbW9pemVkU3RhdGU9bjpyJHx8KG49dC50eXBlLGU9dC5wZW5kaW5nUHJvcHMsKHI9Y3UoZW4uY3VycmVudCkuY3JlYXRlRWxlbWVudChuKSlbZVddPXQscltlcV09ZSxjbChyLG4sZSksZTgociksdC5zdGF0ZU5vZGU9cik6dC5tZW1vaXplZFN0YXRlPWMzKHQudHlwZSxlLm1lbW9pemVkUHJvcHMsdC5wZW5kaW5nUHJvcHMsZS5tZW1vaXplZFN0YXRlKSxudWxsO2Nhc2UgMjc6cmV0dXJuIGVvKHQpLG51bGw9PT1lJiZyJCYmKHI9dC5zdGF0ZU5vZGU9Y1godC50eXBlLHQucGVuZGluZ1Byb3BzLGVuLmN1cnJlbnQpLHJWPXQsclc9ITAsbD1ySCxjeSh0LnR5cGUpPyhjVz1sLHJIPWNRKHIuZmlyc3RDaGlsZCkpOnJIPWwpLG9CKGUsdCx0LnBlbmRpbmdQcm9wcy5jaGlsZHJlbixuKSxvRyhlLHQpLG51bGw9PT1lJiYodC5mbGFnc3w9NDE5NDMwNCksdC5jaGlsZDtjYXNlIDU6cmV0dXJuIG51bGw9PT1lJiZyJCYmKChsPXI9ckgpJiYobnVsbCE9PShyPWZ1bmN0aW9uKGUsdCxuLHIpe2Zvcig7MT09PWUubm9kZVR5cGU7KXtpZihlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkhPT10LnRvTG93ZXJDYXNlKCkpe2lmKCFyJiYoIklOUFVUIiE9PWUubm9kZU5hbWV8fCJoaWRkZW4iIT09ZS50eXBlKSlicmVha31lbHNlIGlmKHIpe2lmKCFlW2VaXSlzd2l0Y2godCl7Y2FzZSJtZXRhIjppZighZS5oYXNBdHRyaWJ1dGUoIml0ZW1wcm9wIikpYnJlYWs7cmV0dXJuIGU7Y2FzZSJsaW5rIjppZigic3R5bGVzaGVldCI9PT0obD1lLmdldEF0dHJpYnV0ZSgicmVsIikpJiZlLmhhc0F0dHJpYnV0ZSgiZGF0YS1wcmVjZWRlbmNlIil8fGwhPT1uLnJlbHx8ZS5nZXRBdHRyaWJ1dGUoImhyZWYiKSE9PShudWxsPT1uLmhyZWZ8fCIiPT09bi5ocmVmP251bGw6bi5ocmVmKXx8ZS5nZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIikhPT0obnVsbD09bi5jcm9zc09yaWdpbj9udWxsOm4uY3Jvc3NPcmlnaW4pfHxlLmdldEF0dHJpYnV0ZSgidGl0bGUiKSE9PShudWxsPT1uLnRpdGxlP251bGw6bi50aXRsZSkpYnJlYWs7cmV0dXJuIGU7Y2FzZSJzdHlsZSI6aWYoZS5oYXNBdHRyaWJ1dGUoImRhdGEtcHJlY2VkZW5jZSIpKWJyZWFrO3JldHVybiBlO2Nhc2Uic2NyaXB0IjppZigoKGw9ZS5nZXRBdHRyaWJ1dGUoInNyYyIpKSE9PShudWxsPT1uLnNyYz9udWxsOm4uc3JjKXx8ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSE9PShudWxsPT1uLnR5cGU/bnVsbDpuLnR5cGUpfHxlLmdldEF0dHJpYnV0ZSgiY3Jvc3NvcmlnaW4iKSE9PShudWxsPT1uLmNyb3NzT3JpZ2luP251bGw6bi5jcm9zc09yaWdpbikpJiZsJiZlLmhhc0F0dHJpYnV0ZSgiYXN5bmMiKSYmIWUuaGFzQXR0cmlidXRlKCJpdGVtcHJvcCIpKWJyZWFrO3JldHVybiBlO2RlZmF1bHQ6cmV0dXJuIGV9fWVsc2V7aWYoImlucHV0IiE9PXR8fCJoaWRkZW4iIT09ZS50eXBlKXJldHVybiBlO3ZhciBsPW51bGw9PW4ubmFtZT9udWxsOiIiK24ubmFtZTtpZigiaGlkZGVuIj09PW4udHlwZSYmZS5nZXRBdHRyaWJ1dGUoIm5hbWUiKT09PWwpcmV0dXJuIGV9aWYobnVsbD09PShlPWNRKGUubmV4dFNpYmxpbmcpKSlicmVha31yZXR1cm4gbnVsbH0ocix0LnR5cGUsdC5wZW5kaW5nUHJvcHMsclcpKT8odC5zdGF0ZU5vZGU9cixyVj10LHJIPWNRKHIuZmlyc3RDaGlsZCksclc9ITEsbD0hMCk6bD0hMSksbHx8cksodCkpLGVvKHQpLGw9dC50eXBlLGE9dC5wZW5kaW5nUHJvcHMsbz1udWxsIT09ZT9lLm1lbW9pemVkUHJvcHM6bnVsbCxyPWEuY2hpbGRyZW4sY2YobCxhKT9yPW51bGw6bnVsbCE9PW8mJmNmKGwsbykmJih0LmZsYWdzfD0zMiksbnVsbCE9PXQubWVtb2l6ZWRTdGF0ZSYmKGZ2Ll9jdXJyZW50VmFsdWU9bD1hdihlLHQsYXcsbnVsbCxudWxsLG4pKSxvRyhlLHQpLG9CKGUsdCxyLG4pLHQuY2hpbGQ7Y2FzZSA2OnJldHVybiBudWxsPT09ZSYmciQmJigoZT1uPXJIKSYmKG51bGwhPT0obj1mdW5jdGlvbihlLHQsbil7aWYoIiI9PT10KXJldHVybiBudWxsO2Zvcig7MyE9PWUubm9kZVR5cGU7KWlmKCgxIT09ZS5ub2RlVHlwZXx8IklOUFVUIiE9PWUubm9kZU5hbWV8fCJoaWRkZW4iIT09ZS50eXBlKSYmIW58fG51bGw9PT0oZT1jUShlLm5leHRTaWJsaW5nKSkpcmV0dXJuIG51bGw7cmV0dXJuIGV9KG4sdC5wZW5kaW5nUHJvcHMsclcpKT8odC5zdGF0ZU5vZGU9bixyVj10LHJIPW51bGwsZT0hMCk6ZT0hMSksZXx8cksodCkpLG51bGw7Y2FzZSAxMzpyZXR1cm4gbzQoZSx0LG4pO2Nhc2UgNDpyZXR1cm4gZWwodCx0LnN0YXRlTm9kZS5jb250YWluZXJJbmZvKSxyPXQucGVuZGluZ1Byb3BzLG51bGw9PT1lP3QuY2hpbGQ9bEEodCxudWxsLHIsbik6b0IoZSx0LHIsbiksdC5jaGlsZDtjYXNlIDExOnJldHVybiBvVihlLHQsdC50eXBlLHQucGVuZGluZ1Byb3BzLG4pO2Nhc2UgNzpyZXR1cm4gcj10LnBlbmRpbmdQcm9wcyxvRyhlLHQpLG9CKGUsdCxyLG4pLHQuY2hpbGQ7Y2FzZSA4OmNhc2UgMTI6cmV0dXJuIG9CKGUsdCx0LnBlbmRpbmdQcm9wcy5jaGlsZHJlbixuKSx0LmNoaWxkO2Nhc2UgMTA6cmV0dXJuIHI9dC5wZW5kaW5nUHJvcHMscjQodCx0LnR5cGUsci52YWx1ZSksb0IoZSx0LHIuY2hpbGRyZW4sbiksdC5jaGlsZDtjYXNlIDk6cmV0dXJuIGw9dC50eXBlLl9jb250ZXh0LHI9dC5wZW5kaW5nUHJvcHMuY2hpbGRyZW4sbGUodCkscj1yKGw9bHQobCkpLHQuZmxhZ3N8PTEsb0IoZSx0LHIsbiksdC5jaGlsZDtjYXNlIDE0OnJldHVybiBvSChlLHQsdC50eXBlLHQucGVuZGluZ1Byb3BzLG4pO2Nhc2UgMTU6cmV0dXJuIG8kKGUsdCx0LnR5cGUsdC5wZW5kaW5nUHJvcHMsbik7Y2FzZSAxOTpyZXR1cm4gaXIoZSx0LG4pO2Nhc2UgMzE6dmFyIGk9ZSxzPXQsYz1uLGY9cy5wZW5kaW5nUHJvcHMsZD0wIT0oMTI4JnMuZmxhZ3MpO2lmKHMuZmxhZ3MmPS0xMjksbnVsbD09PWkpe2lmKHIkKXtpZigiaGlkZGVuIj09PWYubW9kZSlyZXR1cm4gaT1vSyhzLGYpLHMubGFuZXM9MHgyMDAwMDAwMCxvVyhudWxsLGkpO2lmKGw1KHMpLChpPXJIKT9udWxsIT09KGk9bnVsbCE9PShpPWNWKGksclcpKSYmIiYiPT09aS5kYXRhP2k6bnVsbCkmJihzLm1lbW9pemVkU3RhdGU9e2RlaHlkcmF0ZWQ6aSx0cmVlQ29udGV4dDpudWxsIT09ck0/e2lkOnJJLG92ZXJmbG93OnJEfTpudWxsLHJldHJ5TGFuZToweDIwMDAwMDAwLGh5ZHJhdGlvbkVycm9yczpudWxsfSwoYz1yeChpKSkucmV0dXJuPXMscy5jaGlsZD1jLHJWPXMsckg9bnVsbCk6aT1udWxsLG51bGw9PT1pKXRocm93IHJLKHMpO3JldHVybiBzLmxhbmVzPTB4MjAwMDAwMDAsbnVsbH1yZXR1cm4gb0socyxmKX12YXIgcD1pLm1lbW9pemVkU3RhdGU7aWYobnVsbCE9PXApe3ZhciBtPXAuZGVoeWRyYXRlZDtpZihsNShzKSxkKWlmKDI1NiZzLmZsYWdzKXMuZmxhZ3MmPS0yNTcscz1vWChpLHMsYyk7ZWxzZSBpZihudWxsIT09cy5tZW1vaXplZFN0YXRlKXMuY2hpbGQ9aS5jaGlsZCxzLmZsYWdzfD0xMjgscz1udWxsO2Vsc2UgdGhyb3cgRXJyb3IodSg1NTgpKTtlbHNlIGlmKG9VfHxyOShpLHMsYywhMSksZD0wIT0oYyZpLmNoaWxkTGFuZXMpLG9VfHxkKXtpZihudWxsIT09KGY9dUUpJiYwIT09KG09ZVUoZixjKSkmJm0hPT1wLnJldHJ5TGFuZSl0aHJvdyBwLnJldHJ5TGFuZT1tLHJkKGksbSksdTYoZixpLG0pLG9qO3N1KCkscz1vWChpLHMsYyl9ZWxzZSBpPXAudHJlZUNvbnRleHQsckg9Y1EobS5uZXh0U2libGluZyksclY9cyxyJD0hMCxyUT1udWxsLHJXPSExLG51bGwhPT1pJiZyQihzLGkpLHM9b0socyxmKSxzLmZsYWdzfD00MDk2O3JldHVybiBzfXJldHVybihpPXJiKGkuY2hpbGQse21vZGU6Zi5tb2RlLGNoaWxkcmVuOmYuY2hpbGRyZW59KSkucmVmPXMucmVmLHMuY2hpbGQ9aSxpLnJldHVybj1zLGk7Y2FzZSAyMjpyZXR1cm4gb1EoZSx0LG4sdC5wZW5kaW5nUHJvcHMpO2Nhc2UgMjQ6cmV0dXJuIGxlKHQpLHI9bHQobGkpLG51bGw9PT1lPyhudWxsPT09KGw9bGIoKSkmJihsPXVFLGE9bHUoKSxsLnBvb2xlZENhY2hlPWEsYS5yZWZDb3VudCsrLG51bGwhPT1hJiYobC5wb29sZWRDYWNoZUxhbmVzfD1uKSxsPWEpLHQubWVtb2l6ZWRTdGF0ZT17cGFyZW50OnIsY2FjaGU6bH0sbEIodCkscjQodCxsaSxsKSk6KDAhPShlLmxhbmVzJm4pJiYobFYoZSx0KSxsWCh0LG51bGwsbnVsbCxuKSxsSygpKSxsPWUubWVtb2l6ZWRTdGF0ZSxhPXQubWVtb2l6ZWRTdGF0ZSxsLnBhcmVudCE9PXI/KGw9e3BhcmVudDpyLGNhY2hlOnJ9LHQubWVtb2l6ZWRTdGF0ZT1sLDA9PT10LmxhbmVzJiYodC5tZW1vaXplZFN0YXRlPXQudXBkYXRlUXVldWUuYmFzZVN0YXRlPWwpLHI0KHQsbGkscikpOihyNCh0LGxpLHI9YS5jYWNoZSksciE9PWwuY2FjaGUmJnI2KHQsW2xpXSxuLCEwKSkpLG9CKGUsdCx0LnBlbmRpbmdQcm9wcy5jaGlsZHJlbixuKSx0LmNoaWxkO2Nhc2UgMzA6cmV0dXJuIG51bGwhPShyPXQucGVuZGluZ1Byb3BzKS5uYW1lJiYiYXV0byIhPT1yLm5hbWU/dC5mbGFnc3w9bnVsbD09PWU/MHgxMjAyMDAwOjB4MTIwMDAwMDpyJCYmcmoodCksbnVsbCE9PWUmJmUubWVtb2l6ZWRQcm9wcy5uYW1lIT09ci5uYW1lP3QuZmxhZ3N8PTQxOTQ4MTY6b0coZSx0KSxvQihlLHQsci5jaGlsZHJlbixuKSx0LmNoaWxkO2Nhc2UgMjk6dGhyb3cgdC5wZW5kaW5nUHJvcHN9dGhyb3cgRXJyb3IodSgxNTYsdC50YWcpKX1mdW5jdGlvbiBpaShlKXtlLmZsYWdzfD00fWZ1bmN0aW9uIGl1KGUsdCxuLHIsbCl7dmFyIGE7aWYoKGE9MCE9KDMyJmUubW9kZSkpJiYoYT1udWxsPT09bj9mbyh0LHIpOmZvKHQscikmJihyLnNyYyE9PW4uc3JjfHxyLnNyY1NldCE9PW4uc3JjU2V0KSksYSl7aWYoZS5mbGFnc3w9MHgxMDAwMDAwLCgweDEzZmZmZjQwJmwpPT09bClpZihlLnN0YXRlTm9kZS5jb21wbGV0ZSllLmZsYWdzfD04MTkyO2Vsc2UgaWYoc2EoKSllLmZsYWdzfD04MTkyO2Vsc2UgdGhyb3cgbFQ9bF8sbEV9ZWxzZSBlLmZsYWdzJj0tMHgxMDAwMDAxfWZ1bmN0aW9uIGlzKGUsdCl7aWYoInN0eWxlc2hlZXQiIT09dC50eXBlfHwwIT0oNCZ0LnN0YXRlLmxvYWRpbmcpKWUuZmxhZ3MmPS0weDEwMDAwMDE7ZWxzZSBpZihlLmZsYWdzfD0weDEwMDAwMDAsIWZpKHQpKWlmKHNhKCkpZS5mbGFnc3w9ODE5MjtlbHNlIHRocm93IGxUPWxfLGxFfWZ1bmN0aW9uIGljKGUsdCl7bnVsbCE9PXQmJihlLmZsYWdzfD00KSwxNjM4NCZlLmZsYWdzJiYodD0yMiE9PWUudGFnP2VJKCk6MHgyMDAwMDAwMCxlLmxhbmVzfD10LHVGfD10KX1mdW5jdGlvbiBpZChlLHQpe2lmKCFyJClzd2l0Y2goZS50YWlsTW9kZSl7Y2FzZSJ2aXNpYmxlIjpicmVhaztjYXNlImNvbGxhcHNlZCI6Zm9yKHZhciBuPWUudGFpbCxyPW51bGw7bnVsbCE9PW47KW51bGwhPT1uLmFsdGVybmF0ZSYmKHI9biksbj1uLnNpYmxpbmc7bnVsbD09PXI/dHx8bnVsbD09PWUudGFpbD9lLnRhaWw9bnVsbDplLnRhaWwuc2libGluZz1udWxsOnIuc2libGluZz1udWxsO2JyZWFrO2RlZmF1bHQ6Zm9yKG49bnVsbCx0PWUudGFpbDtudWxsIT09dDspbnVsbCE9PXQuYWx0ZXJuYXRlJiYobj10KSx0PXQuc2libGluZztudWxsPT09bj9lLnRhaWw9bnVsbDpuLnNpYmxpbmc9bnVsbH19ZnVuY3Rpb24gaXAoZSl7dmFyIHQ9bnVsbCE9PWUuYWx0ZXJuYXRlJiZlLmFsdGVybmF0ZS5jaGlsZD09PWUuY2hpbGQsbj0wLHI9MDtpZih0KWZvcih2YXIgbD1lLmNoaWxkO251bGwhPT1sOylufD1sLmxhbmVzfGwuY2hpbGRMYW5lcyxyfD0weDdlMDAwMDAmbC5zdWJ0cmVlRmxhZ3Mscnw9MHg3ZTAwMDAwJmwuZmxhZ3MsbC5yZXR1cm49ZSxsPWwuc2libGluZztlbHNlIGZvcihsPWUuY2hpbGQ7bnVsbCE9PWw7KW58PWwubGFuZXN8bC5jaGlsZExhbmVzLHJ8PWwuc3VidHJlZUZsYWdzLHJ8PWwuZmxhZ3MsbC5yZXR1cm49ZSxsPWwuc2libGluZztyZXR1cm4gZS5zdWJ0cmVlRmxhZ3N8PXIsZS5jaGlsZExhbmVzPW4sdH1mdW5jdGlvbiBpbShlLHQpe3N3aXRjaChyVSh0KSx0LnRhZyl7Y2FzZSAzOnI4KGxpKSxlYSgpO2JyZWFrO2Nhc2UgMjY6Y2FzZSAyNzpjYXNlIDU6ZWkodCk7YnJlYWs7Y2FzZSA0OmVhKCk7YnJlYWs7Y2FzZSAzMTpudWxsIT09dC5tZW1vaXplZFN0YXRlJiZsNyh0KTticmVhaztjYXNlIDEzOmw3KHQpO2JyZWFrO2Nhc2UgMTk6YW4odCk7YnJlYWs7Y2FzZSAxMDpyOCh0LnR5cGUpO2JyZWFrO2Nhc2UgMjI6Y2FzZSAyMzpsNyh0KSxsMigpLG51bGwhPT1lJiZKKGx5KTticmVhaztjYXNlIDI0OnI4KGxpKX19ZnVuY3Rpb24gaWgoZSx0KXt0cnl7dmFyIG49dC51cGRhdGVRdWV1ZSxyPW51bGwhPT1uP24ubGFzdEVmZmVjdDpudWxsO2lmKG51bGwhPT1yKXt2YXIgbD1yLm5leHQ7bj1sO2Rve2lmKChuLnRhZyZlKT09PWUpe3I9dm9pZCAwO3ZhciBhPW4uY3JlYXRlO24uaW5zdC5kZXN0cm95PXI9YSgpfW49bi5uZXh0fXdoaWxlKG4hPT1sKX19Y2F0Y2goZSl7c18odCx0LnJldHVybixlKX19ZnVuY3Rpb24gaWcoZSx0LG4pe3RyeXt2YXIgcj10LnVwZGF0ZVF1ZXVlLGw9bnVsbCE9PXI/ci5sYXN0RWZmZWN0Om51bGw7aWYobnVsbCE9PWwpe3ZhciBhPWwubmV4dDtyPWE7ZG97aWYoKHIudGFnJmUpPT09ZSl7dmFyIG89ci5pbnN0LGk9by5kZXN0cm95O2lmKHZvaWQgMCE9PWkpe28uZGVzdHJveT12b2lkIDAsbD10O3RyeXtpKCl9Y2F0Y2goZSl7c18obCxuLGUpfX19cj1yLm5leHR9d2hpbGUociE9PWEpfX1jYXRjaChlKXtzXyh0LHQucmV0dXJuLGUpfX1mdW5jdGlvbiBpdihlKXt2YXIgdD1lLnVwZGF0ZVF1ZXVlO2lmKG51bGwhPT10KXt2YXIgbj1lLnN0YXRlTm9kZTt0cnl7bFkodCxuKX1jYXRjaCh0KXtzXyhlLGUucmV0dXJuLHQpfX19ZnVuY3Rpb24gaXkoZSx0LG4pe24ucHJvcHM9b08oZS50eXBlLGUubWVtb2l6ZWRQcm9wcyksbi5zdGF0ZT1lLm1lbW9pemVkU3RhdGU7dHJ5e24uY29tcG9uZW50V2lsbFVubW91bnQoKX1jYXRjaChuKXtzXyhlLHQsbil9fWZ1bmN0aW9uIGliKGUsdCl7dHJ5e3ZhciBuPWUucmVmO2lmKG51bGwhPT1uKXtzd2l0Y2goZS50YWcpe2Nhc2UgMjY6Y2FzZSAyNzpjYXNlIDU6dmFyIHI9ZS5zdGF0ZU5vZGU7YnJlYWs7Y2FzZSAzMDp2YXIgbD1lLnN0YXRlTm9kZSxhPXJuKGUubWVtb2l6ZWRQcm9wcyxsKTsobnVsbD09PWwucmVmfHxsLnJlZi5uYW1lIT09YSkmJihsLnJlZj1jQyhhKSkscj1sLnJlZjticmVhaztjYXNlIDc6bnVsbD09PWUuc3RhdGVOb2RlJiYoZS5zdGF0ZU5vZGU9bmV3IGNUKGUpKSxyPWUuc3RhdGVOb2RlO2JyZWFrO2RlZmF1bHQ6cj1lLnN0YXRlTm9kZX0iZnVuY3Rpb24iPT10eXBlb2Ygbj9lLnJlZkNsZWFudXA9bihyKTpuLmN1cnJlbnQ9cn19Y2F0Y2gobil7c18oZSx0LG4pfX1mdW5jdGlvbiBpdyhlLHQpe3ZhciBuPWUucmVmLHI9ZS5yZWZDbGVhbnVwO2lmKG51bGwhPT1uKWlmKCJmdW5jdGlvbiI9PXR5cGVvZiByKXRyeXtyKCl9Y2F0Y2gobil7c18oZSx0LG4pfWZpbmFsbHl7ZS5yZWZDbGVhbnVwPW51bGwsbnVsbCE9KGU9ZS5hbHRlcm5hdGUpJiYoZS5yZWZDbGVhbnVwPW51bGwpfWVsc2UgaWYoImZ1bmN0aW9uIj09dHlwZW9mIG4pdHJ5e24obnVsbCl9Y2F0Y2gobil7c18oZSx0LG4pfWVsc2Ugbi5jdXJyZW50PW51bGx9ZnVuY3Rpb24gaWsoZSl7dmFyIHQ9ZS50eXBlLG49ZS5tZW1vaXplZFByb3BzLHI9ZS5zdGF0ZU5vZGU7dHJ5e3N3aXRjaCh0KXtjYXNlImJ1dHRvbiI6Y2FzZSJpbnB1dCI6Y2FzZSJzZWxlY3QiOmNhc2UidGV4dGFyZWEiOm4uYXV0b0ZvY3VzJiZyLmZvY3VzKCk7YnJlYWs7Y2FzZSJpbWciOm4uc3JjP3Iuc3JjPW4uc3JjOm4uc3JjU2V0JiYoci5zcmNzZXQ9bi5zcmNTZXQpfX1jYXRjaCh0KXtzXyhlLGUucmV0dXJuLHQpfX1mdW5jdGlvbiBpUyhlLHQsbil7dHJ5e3ZhciByPWUuc3RhdGVOb2RlOyhmdW5jdGlvbihlLHQsbixyKXtzd2l0Y2godCl7Y2FzZSJkaXYiOmNhc2Uic3BhbiI6Y2FzZSJzdmciOmNhc2UicGF0aCI6Y2FzZSJhIjpjYXNlImciOmNhc2UicCI6Y2FzZSJsaSI6YnJlYWs7Y2FzZSJpbnB1dCI6dmFyIGw9bnVsbCxhPW51bGwsbz1udWxsLGk9bnVsbCxzPW51bGwsYz1udWxsLGY9bnVsbDtmb3IobSBpbiBuKXt2YXIgZD1uW21dO2lmKG4uaGFzT3duUHJvcGVydHkobSkmJm51bGwhPWQpc3dpdGNoKG0pe2Nhc2UiY2hlY2tlZCI6Y2FzZSJ2YWx1ZSI6YnJlYWs7Y2FzZSJkZWZhdWx0VmFsdWUiOnM9ZDtkZWZhdWx0OnIuaGFzT3duUHJvcGVydHkobSl8fGNuKGUsdCxtLG51bGwscixkKX19Zm9yKHZhciBwIGluIHIpe3ZhciBtPXJbcF07aWYoZD1uW3BdLHIuaGFzT3duUHJvcGVydHkocCkmJihudWxsIT1tfHxudWxsIT1kKSlzd2l0Y2gocCl7Y2FzZSJ0eXBlIjptIT09ZCYmKHRyPSEwKSxhPW07YnJlYWs7Y2FzZSJuYW1lIjptIT09ZCYmKHRyPSEwKSxsPW07YnJlYWs7Y2FzZSJjaGVja2VkIjptIT09ZCYmKHRyPSEwKSxjPW07YnJlYWs7Y2FzZSJkZWZhdWx0Q2hlY2tlZCI6bSE9PWQmJih0cj0hMCksZj1tO2JyZWFrO2Nhc2UidmFsdWUiOm0hPT1kJiYodHI9ITApLG89bTticmVhaztjYXNlImRlZmF1bHRWYWx1ZSI6bSE9PWQmJih0cj0hMCksaT1tO2JyZWFrO2Nhc2UiY2hpbGRyZW4iOmNhc2UiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwiOmlmKG51bGwhPW0pdGhyb3cgRXJyb3IodSgxMzcsdCkpO2JyZWFrO2RlZmF1bHQ6bSE9PWQmJmNuKGUsdCxwLG0scixkKX19dGgoZSxvLGkscyxjLGYsYSxsKTtyZXR1cm47Y2FzZSJzZWxlY3QiOmZvcihhIGluIG09bz1pPXA9bnVsbCxuKWlmKHM9blthXSxuLmhhc093blByb3BlcnR5KGEpJiZudWxsIT1zKXN3aXRjaChhKXtjYXNlInZhbHVlIjpicmVhaztjYXNlIm11bHRpcGxlIjptPXM7ZGVmYXVsdDpyLmhhc093blByb3BlcnR5KGEpfHxjbihlLHQsYSxudWxsLHIscyl9Zm9yKGwgaW4gcilpZihhPXJbbF0scz1uW2xdLHIuaGFzT3duUHJvcGVydHkobCkmJihudWxsIT1hfHxudWxsIT1zKSlzd2l0Y2gobCl7Y2FzZSJ2YWx1ZSI6YSE9PXMmJih0cj0hMCkscD1hO2JyZWFrO2Nhc2UiZGVmYXVsdFZhbHVlIjphIT09cyYmKHRyPSEwKSxpPWE7YnJlYWs7Y2FzZSJtdWx0aXBsZSI6YSE9PXMmJih0cj0hMCksbz1hO2RlZmF1bHQ6YSE9PXMmJmNuKGUsdCxsLGEscixzKX10PWksbj1vLHI9bSxudWxsIT1wP3R5KGUsISFuLHAsITEpOiEhciE9ISFuJiYobnVsbCE9dD90eShlLCEhbix0LCEwKTp0eShlLCEhbixuP1tdOiIiLCExKSk7cmV0dXJuO2Nhc2UidGV4dGFyZWEiOmZvcihpIGluIG09cD1udWxsLG4paWYobD1uW2ldLG4uaGFzT3duUHJvcGVydHkoaSkmJm51bGwhPWwmJiFyLmhhc093blByb3BlcnR5KGkpKXN3aXRjaChpKXtjYXNlInZhbHVlIjpjYXNlImNoaWxkcmVuIjpicmVhaztkZWZhdWx0OmNuKGUsdCxpLG51bGwscixsKX1mb3IobyBpbiByKWlmKGw9cltvXSxhPW5bb10sci5oYXNPd25Qcm9wZXJ0eShvKSYmKG51bGwhPWx8fG51bGwhPWEpKXN3aXRjaChvKXtjYXNlInZhbHVlIjpsIT09YSYmKHRyPSEwKSxwPWw7YnJlYWs7Y2FzZSJkZWZhdWx0VmFsdWUiOmwhPT1hJiYodHI9ITApLG09bDticmVhaztjYXNlImNoaWxkcmVuIjpicmVhaztjYXNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIjppZihudWxsIT1sKXRocm93IEVycm9yKHUoOTEpKTticmVhaztkZWZhdWx0OmwhPT1hJiZjbihlLHQsbyxsLHIsYSl9dGIoZSxwLG0pO3JldHVybjtjYXNlIm9wdGlvbiI6Zm9yKHZhciBoIGluIG4pcD1uW2hdLG4uaGFzT3duUHJvcGVydHkoaCkmJm51bGwhPXAmJiFyLmhhc093blByb3BlcnR5KGgpJiYoInNlbGVjdGVkIj09PWg/ZS5zZWxlY3RlZD0hMTpjbihlLHQsaCxudWxsLHIscCkpO2ZvcihzIGluIHIpcD1yW3NdLG09bltzXSxyLmhhc093blByb3BlcnR5KHMpJiZwIT09bSYmKG51bGwhPXB8fG51bGwhPW0pJiYoInNlbGVjdGVkIj09PXM/KHAhPT1tJiYodHI9ITApLGUuc2VsZWN0ZWQ9cCYmImZ1bmN0aW9uIiE9dHlwZW9mIHAmJiJzeW1ib2wiIT10eXBlb2YgcCk6Y24oZSx0LHMscCxyLG0pKTtyZXR1cm47Y2FzZSJpbWciOmNhc2UibGluayI6Y2FzZSJhcmVhIjpjYXNlImJhc2UiOmNhc2UiYnIiOmNhc2UiY29sIjpjYXNlImVtYmVkIjpjYXNlImhyIjpjYXNlImtleWdlbiI6Y2FzZSJtZXRhIjpjYXNlInBhcmFtIjpjYXNlInNvdXJjZSI6Y2FzZSJ0cmFjayI6Y2FzZSJ3YnIiOmNhc2UibWVudWl0ZW0iOmZvcih2YXIgZyBpbiBuKXA9bltnXSxuLmhhc093blByb3BlcnR5KGcpJiZudWxsIT1wJiYhci5oYXNPd25Qcm9wZXJ0eShnKSYmY24oZSx0LGcsbnVsbCxyLHApO2ZvcihjIGluIHIpaWYocD1yW2NdLG09bltjXSxyLmhhc093blByb3BlcnR5KGMpJiZwIT09bSYmKG51bGwhPXB8fG51bGwhPW0pKXN3aXRjaChjKXtjYXNlImNoaWxkcmVuIjpjYXNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIjppZihudWxsIT1wKXRocm93IEVycm9yKHUoMTM3LHQpKTticmVhaztkZWZhdWx0OmNuKGUsdCxjLHAscixtKX1yZXR1cm47ZGVmYXVsdDppZih0Xyh0KSl7Zm9yKHZhciB2IGluIG4pcD1uW3ZdLG4uaGFzT3duUHJvcGVydHkodikmJnZvaWQgMCE9PXAmJiFyLmhhc093blByb3BlcnR5KHYpJiZjcihlLHQsdix2b2lkIDAscixwKTtmb3IoZiBpbiByKXA9cltmXSxtPW5bZl0sci5oYXNPd25Qcm9wZXJ0eShmKSYmcCE9PW0mJih2b2lkIDAhPT1wfHx2b2lkIDAhPT1tKSYmY3IoZSx0LGYscCxyLG0pO3JldHVybn19Zm9yKHZhciB5IGluIG4pcD1uW3ldLG4uaGFzT3duUHJvcGVydHkoeSkmJm51bGwhPXAmJiFyLmhhc093blByb3BlcnR5KHkpJiZjbihlLHQseSxudWxsLHIscCk7Zm9yKGQgaW4gcilwPXJbZF0sbT1uW2RdLHIuaGFzT3duUHJvcGVydHkoZCkmJnAhPT1tJiYobnVsbCE9cHx8bnVsbCE9bSkmJmNuKGUsdCxkLHAscixtKX0pKHIsZS50eXBlLG4sdCkscltlcV09dH1jYXRjaCh0KXtzXyhlLGUucmV0dXJuLHQpfX1mdW5jdGlvbiBpRShlLHQpe2lmKDU9PT1lLnRhZyYmbnVsbD09PWUuYWx0ZXJuYXRlJiZudWxsIT09dClmb3IodmFyIG49MDtuPHQubGVuZ3RoO24rKyljVShlLnN0YXRlTm9kZSx0W25dKX1mdW5jdGlvbiBpeChlKXtmb3IodmFyIHQ9ZS5yZXR1cm47bnVsbCE9PXQ7KXtpZihpUCh0KSl7dmFyIG49ZS5zdGF0ZU5vZGUscj10LnN0YXRlTm9kZS5fZXZlbnRMaXN0ZW5lcnM7aWYobnVsbCE9PXIpZm9yKHZhciBsPTA7bDxyLmxlbmd0aDtsKyspe3ZhciBhPXJbbF07bi5yZW1vdmVFdmVudExpc3RlbmVyKGEudHlwZSxhLmxpc3RlbmVyLGEub3B0aW9uc09yVXNlQ2FwdHVyZSl9fWlmKGlfKHQpKWJyZWFrO3Q9dC5yZXR1cm59fWZ1bmN0aW9uIGlfKGUpe3JldHVybiA1PT09ZS50YWd8fDM9PT1lLnRhZ3x8MjY9PT1lLnRhZ3x8Mjc9PT1lLnRhZyYmY3koZS50eXBlKXx8ND09PWUudGFnfWZ1bmN0aW9uIGlQKGUpe3JldHVybiBlJiY3PT09ZS50YWcmJm51bGwhPT1lLnN0YXRlTm9kZX1mdW5jdGlvbiBpTihlKXtlOmZvcig7Oyl7Zm9yKDtudWxsPT09ZS5zaWJsaW5nOyl7aWYobnVsbD09PWUucmV0dXJufHxpXyhlLnJldHVybikpcmV0dXJuIG51bGw7ZT1lLnJldHVybn1mb3IoZS5zaWJsaW5nLnJldHVybj1lLnJldHVybixlPWUuc2libGluZzs1IT09ZS50YWcmJjYhPT1lLnRhZyYmMTghPT1lLnRhZzspe2lmKDI3PT09ZS50YWcmJmN5KGUudHlwZSl8fDImZS5mbGFnc3x8bnVsbD09PWUuY2hpbGR8fDQ9PT1lLnRhZyljb250aW51ZSBlO2UuY2hpbGQucmV0dXJuPWUsZT1lLmNoaWxkfWlmKCEoMiZlLmZsYWdzKSlyZXR1cm4gZS5zdGF0ZU5vZGV9fWZ1bmN0aW9uIGlDKGUsdCxuLHIpe3ZhciBsPWUudGFnO2lmKDU9PT1sfHw2PT09bClsPWUuc3RhdGVOb2RlLHQ/bi5pbnNlcnRCZWZvcmUobCx0KTpuLmFwcGVuZENoaWxkKGwpLGlFKGUsciksdHI9ITA7ZWxzZSBpZig0IT09bCYmKDI3PT09bCYmY3koZS50eXBlKSYmKG49ZS5zdGF0ZU5vZGUpLG51bGwhPT0oZT1lLmNoaWxkKSkpZm9yKGlDKGUsdCxuLHIpLGU9ZS5zaWJsaW5nO251bGwhPT1lOylpQyhlLHQsbixyKSxlPWUuc2libGluZ31mdW5jdGlvbiBpVChlKXt2YXIgdD1lLnN0YXRlTm9kZSxuPWUubWVtb2l6ZWRQcm9wczt0cnl7Zm9yKHZhciByPWUudHlwZSxsPXQuYXR0cmlidXRlcztsLmxlbmd0aDspdC5yZW1vdmVBdHRyaWJ1dGVOb2RlKGxbMF0pO2NsKHQscixuKSx0W2VXXT1lLHRbZXFdPW59Y2F0Y2godCl7c18oZSxlLnJldHVybix0KX19dmFyIGlPPSExLGl6PW51bGw7ZnVuY3Rpb24gaUwoZSl7KDMwPT09ZS50YWd8fDAhPSgweDIwMDAwMDAmZS5zdWJ0cmVlRmxhZ3MpKSYmKGlPPSEwKX12YXIgaVI9bnVsbDtmdW5jdGlvbiBpTSgpe3ZhciBlPWlSO3JldHVybiBpUj1udWxsLGV9dmFyIGlJPTA7ZnVuY3Rpb24gaUQoZSx0LG4scixsKXtyZXR1cm4gaUk9MCxmdW5jdGlvbiBlKHQsbixyLGwsYSl7Zm9yKHZhciBvPSExO251bGwhPT10Oyl7aWYoNT09PXQudGFnKXt2YXIgaT10LnN0YXRlTm9kZTtpZihudWxsIT09bCl7dmFyIHU9Y3goaSk7bC5wdXNoKHUpLHUudmlldyYmKG89ITApfWVsc2Ugb3x8Y3goaSkudmlldyYmKG89ITApO2lPPSEwLGNrKGksMD09PWlJP246bisiXyIraUksciksaUkrK31lbHNlKDIyIT09dC50YWd8fG51bGw9PT10Lm1lbW9pemVkU3RhdGUpJiYoMzA9PT10LnRhZyYmYXx8ZSh0LmNoaWxkLG4scixsLGEpJiYobz0hMCkpO3Q9dC5zaWJsaW5nfXJldHVybiBvfShlLmNoaWxkLHQsbixyLGwpfWZ1bmN0aW9uIGlGKGUsdCl7Zm9yKDtudWxsIT09ZTspNT09PWUudGFnP2NTKGUuc3RhdGVOb2RlLGUubWVtb2l6ZWRQcm9wcyk6KDIyIT09ZS50YWd8fG51bGw9PT1lLm1lbW9pemVkU3RhdGUpJiYoMzA9PT1lLnRhZyYmdHx8aUYoZS5jaGlsZCx0KSksZT1lLnNpYmxpbmd9ZnVuY3Rpb24gaUEoZSl7aWYoMCE9KDB4MTIwMDAwMCZlLnN1YnRyZWVGbGFncykpZm9yKGU9ZS5jaGlsZDtudWxsIT09ZTspe2lmKCgyMiE9PWUudGFnfHxudWxsPT09ZS5tZW1vaXplZFN0YXRlKSYmKGlBKGUpLDMwPT09ZS50YWcmJjAhPSgweDEyMDAwMDAmZS5mbGFncykmJmUuc3RhdGVOb2RlLnBhaXJlZCkpe3ZhciB0PWUubWVtb2l6ZWRQcm9wcztpZihudWxsPT10Lm5hbWV8fCJhdXRvIj09PXQubmFtZSl0aHJvdyBFcnJvcih1KDU0NCkpO3ZhciBuPXQubmFtZTsibm9uZSIhPT0odD1ybCh0LmRlZmF1bHQsdC5zaGFyZSkpJiYoaUQoZSxuLHQsbnVsbCwhMSl8fGlGKGUuY2hpbGQsITEpKX1lPWUuc2libGluZ319ZnVuY3Rpb24gaWooZSx0KXtpZigzMD09PWUudGFnKXt2YXIgbj1lLnN0YXRlTm9kZSxyPWUubWVtb2l6ZWRQcm9wcyxsPXJuKHIsbiksYT1ybChyLmRlZmF1bHQsbi5wYWlyZWQ/ci5zaGFyZTpyLmVudGVyKTsibm9uZSIhPT1hP2lEKGUsbCxhLG51bGwsITEpPyhpQShlKSxuLnBhaXJlZHx8dHx8dTUoZSxyLm9uRW50ZXIpKTppRihlLmNoaWxkLCExKTppQShlKX1lbHNlIGlmKDAhPSgweDIwMDAwMDAmZS5zdWJ0cmVlRmxhZ3MpKWZvcihlPWUuY2hpbGQ7bnVsbCE9PWU7KWlqKGUsdCksZT1lLnNpYmxpbmc7ZWxzZSBpQShlKX1mdW5jdGlvbiBpVShlKXtpZihudWxsIT09aXomJjAhPT1pei5zaXplKXt2YXIgdD1pejtpZigwIT0oMHgxMjAwMDAwJmUuc3VidHJlZUZsYWdzKSlmb3IoZT1lLmNoaWxkO251bGwhPT1lOyl7aWYoMjIhPT1lLnRhZ3x8bnVsbD09PWUubWVtb2l6ZWRTdGF0ZSl7aWYoMzA9PT1lLnRhZyYmMCE9KDB4MTIwMDAwMCZlLmZsYWdzKSl7dmFyIG49ZS5tZW1vaXplZFByb3BzLHI9bi5uYW1lO2lmKG51bGwhPXImJiJhdXRvIiE9PXIpe3ZhciBsPXQuZ2V0KHIpO2lmKHZvaWQgMCE9PWwpe3ZhciBhPXJsKG4uZGVmYXVsdCxuLnNoYXJlKTtpZigibm9uZSIhPT1hJiYoaUQoZSxyLGEsbnVsbCwhMSk/KGwucGFpcmVkPWE9ZS5zdGF0ZU5vZGUsYS5wYWlyZWQ9bCx1NShlLG4ub25TaGFyZSkpOmlGKGUuY2hpbGQsITEpKSx0LmRlbGV0ZShyKSwwPT09dC5zaXplKWJyZWFrfX19aVUoZSl9ZT1lLnNpYmxpbmd9fX1mdW5jdGlvbiBpQihlKXtpZigzMD09PWUudGFnKXt2YXIgdD1lLm1lbW9pemVkUHJvcHMsbj1ybih0LGUuc3RhdGVOb2RlKSxyPW51bGwhPT1pej9pei5nZXQobik6dm9pZCAwLGw9cmwodC5kZWZhdWx0LHZvaWQgMCE9PXI/dC5zaGFyZTp0LmV4aXQpOyJub25lIiE9PWwmJihpRChlLG4sbCxudWxsLCExKT92b2lkIDAhPT1yPyhyLnBhaXJlZD1sPWUuc3RhdGVOb2RlLGwucGFpcmVkPXIsaXouZGVsZXRlKG4pLHU1KGUsdC5vblNoYXJlKSk6dTUoZSx0Lm9uRXhpdCk6aUYoZS5jaGlsZCwhMSkpLG51bGwhPT1peiYmaVUoZSl9ZWxzZSBpZigwIT0oMHgyMDAwMDAwJmUuc3VidHJlZUZsYWdzKSlmb3IoZT1lLmNoaWxkO251bGwhPT1lOylpQihlKSxlPWUuc2libGluZztlbHNlIG51bGwhPT1peiYmaVUoZSl9ZnVuY3Rpb24gaVYoZSl7aWYoMCE9KDB4MTIwMDAwMCZlLnN1YnRyZWVGbGFncykpZm9yKGU9ZS5jaGlsZDtudWxsIT09ZTspe2lmKDIyIT09ZS50YWd8fG51bGw9PT1lLm1lbW9pemVkU3RhdGUpe2lmKDMwPT09ZS50YWcmJjAhPSgweDEyMDAwMDAmZS5mbGFncykpe3ZhciB0PWUuc3RhdGVOb2RlO251bGwhPT10LnBhaXJlZCYmKHQucGFpcmVkPW51bGwsaUYoZS5jaGlsZCwhMSkpfWlWKGUpfWU9ZS5zaWJsaW5nfX1mdW5jdGlvbiBpSChlKXtpZigzMD09PWUudGFnKWUuc3RhdGVOb2RlLnBhaXJlZD1udWxsLGlGKGUuY2hpbGQsITEpLGlWKGUpO2Vsc2UgaWYoMCE9KDB4MjAwMDAwMCZlLnN1YnRyZWVGbGFncykpZm9yKGU9ZS5jaGlsZDtudWxsIT09ZTspaUgoZSksZT1lLnNpYmxpbmc7ZWxzZSBpVihlKX1mdW5jdGlvbiBpJChlLHQsbixyLGwsYSxvKXtmb3IodmFyIGk9ITE7bnVsbCE9PXQ7KXtpZig1PT09dC50YWcpe3ZhciB1PXQuc3RhdGVOb2RlO2lmKG51bGwhPT1hJiZpSTxhLmxlbmd0aCl7dmFyIHMsYz1hW2lJXSxmPWN4KHUpO2lmKChjLnZpZXd8fGYudmlldykmJihpPSEwKSxzPTA9PSg0JmUuZmxhZ3MpKWlmKGYuY2xpcClzPSEwO2Vsc2V7cz1jLnJlY3Q7dmFyIGQ9Zi5yZWN0O3M9cy55IT09ZC55fHxzLnghPT1kLnh8fHMuaGVpZ2h0IT09ZC5oZWlnaHR8fHMud2lkdGghPT1kLndpZHRofXMmJihlLmZsYWdzfD00KSxmLmFicz9mPSFjLmFiczooYz1jLnJlY3QsZj1mLnJlY3QsZj1jLmhlaWdodCE9PWYuaGVpZ2h0fHxjLndpZHRoIT09Zi53aWR0aCksZiYmKGUuZmxhZ3N8PTMyKX1lbHNlIGUuZmxhZ3N8PTMyOzAhPSg0JmUuZmxhZ3MpJiZjayh1LDA9PT1pST9uOm4rIl8iK2lJLGwpLGkmJjAhPSg0JmUuZmxhZ3MpfHwobnVsbD09PWlSJiYoaVI9W10pLGlSLnB1c2godSxyLHQubWVtb2l6ZWRQcm9wcykpLGlJKyt9ZWxzZSgyMiE9PXQudGFnfHxudWxsPT09dC5tZW1vaXplZFN0YXRlKSYmKDMwPT09dC50YWcmJm8/ZS5mbGFnc3w9MzImdC5mbGFnczppJChlLHQuY2hpbGQsbixyLGwsYSxvKSYmKGk9ITApKTt0PXQuc2libGluZ31yZXR1cm4gaX12YXIgaVE9ITEsaVc9ITEsaXE9ITEsaUs9ITEsaVg9ImZ1bmN0aW9uIj09dHlwZW9mIFdlYWtTZXQ/V2Vha1NldDpTZXQsaUc9bnVsbCxpWT0hMSxpSj0hMSxpWj0hMSxpMD0hMTtmdW5jdGlvbiBpMShlKXtmb3IoO251bGwhPT1pRzspe3ZhciB0PWlHLG49ZSxyPXQuYWx0ZXJuYXRlLGw9dC5mbGFncztzd2l0Y2godC50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6aWYoMCE9KDQmbCkmJm51bGwhPT0ocj1udWxsIT09KHI9dC51cGRhdGVRdWV1ZSk/ci5ldmVudHM6bnVsbCkpZm9yKG49MDtuPHIubGVuZ3RoO24rKykobD1yW25dKS5yZWYuaW1wbD1sLm5leHRJbXBsO2JyZWFrO2Nhc2UgMTppZigwIT0oMTAyNCZsKSYmbnVsbCE9PXIpe249dm9pZCAwLGw9ci5tZW1vaXplZFByb3BzLHI9ci5tZW1vaXplZFN0YXRlO3ZhciBhPXQuc3RhdGVOb2RlO3RyeXt2YXIgbz1vTyh0LnR5cGUsbCk7bj1hLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlKG8sciksYS5fX3JlYWN0SW50ZXJuYWxTbmFwc2hvdEJlZm9yZVVwZGF0ZT1ufWNhdGNoKGUpe3NfKHQsdC5yZXR1cm4sZSl9fWJyZWFrO2Nhc2UgMzppZigwIT0oMTAyNCZsKSl7aWYoOT09PShuPShyPXQuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pLm5vZGVUeXBlKSljQihyKTtlbHNlIGlmKDE9PT1uKXN3aXRjaChyLm5vZGVOYW1lKXtjYXNlIkhFQUQiOmNhc2UiSFRNTCI6Y2FzZSJCT0RZIjpjQihyKTticmVhaztkZWZhdWx0OnIudGV4dENvbnRlbnQ9IiJ9fWJyZWFrO2Nhc2UgNTpjYXNlIDI2OmNhc2UgMjc6Y2FzZSA2OmNhc2UgNDpjYXNlIDE3OmJyZWFrO2Nhc2UgMzA6biYmbnVsbCE9PXImJihuPXJuKHIubWVtb2l6ZWRQcm9wcyxyLnN0YXRlTm9kZSksIm5vbmUiIT09KGw9cmwoKGw9dC5tZW1vaXplZFByb3BzKS5kZWZhdWx0LGwudXBkYXRlKSkmJmlEKHIsbixsLHIubWVtb2l6ZWRTdGF0ZT1bXSwhMCkpO2JyZWFrO2RlZmF1bHQ6aWYoMCE9KDEwMjQmbCkpdGhyb3cgRXJyb3IodSgxNjMpKX1pZihudWxsIT09KHI9dC5zaWJsaW5nKSl7ci5yZXR1cm49dC5yZXR1cm4saUc9cjticmVha31pRz10LnJldHVybn19ZnVuY3Rpb24gaTIoZSx0LG4pe3ZhciByPW4uZmxhZ3M7c3dpdGNoKG4udGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OnVpKGUsbiksNCZyJiZpaCg1LG4pO2JyZWFrO2Nhc2UgMTppZih1aShlLG4pLDQmcilpZihlPW4uc3RhdGVOb2RlLG51bGw9PT10KXRyeXtlLmNvbXBvbmVudERpZE1vdW50KCl9Y2F0Y2goZSl7c18obixuLnJldHVybixlKX1lbHNle3ZhciBsPW9PKG4udHlwZSx0Lm1lbW9pemVkUHJvcHMpO3Q9dC5tZW1vaXplZFN0YXRlO3RyeXtlLmNvbXBvbmVudERpZFVwZGF0ZShsLHQsZS5fX3JlYWN0SW50ZXJuYWxTbmFwc2hvdEJlZm9yZVVwZGF0ZSl9Y2F0Y2goZSl7c18obixuLnJldHVybixlKX19NjQmciYmaXYobiksNTEyJnImJmliKG4sbi5yZXR1cm4pO2JyZWFrO2Nhc2UgMzppZih1aShlLG4pLDY0JnImJm51bGwhPT0oZT1uLnVwZGF0ZVF1ZXVlKSl7aWYodD1udWxsLG51bGwhPT1uLmNoaWxkKXN3aXRjaChuLmNoaWxkLnRhZyl7Y2FzZSAyNzpjYXNlIDU6Y2FzZSAxOnQ9bi5jaGlsZC5zdGF0ZU5vZGV9dHJ5e2xZKGUsdCl9Y2F0Y2goZSl7c18obixuLnJldHVybixlKX19YnJlYWs7Y2FzZSAyNzpudWxsPT09dCYmNCZyJiZpVChuKTtjYXNlIDI2OmNhc2UgNTp1aShlLG4pLG51bGw9PT10JiY0JnImJmlrKG4pLDUxMiZyJiZpYihuLG4ucmV0dXJuKTticmVhaztjYXNlIDEyOnVpKGUsbik7YnJlYWs7Y2FzZSAzMTp1aShlLG4pLDQmciYmaTkoZSxuKTticmVhaztjYXNlIDEzOnVpKGUsbiksNCZyJiZpNyhlLG4pLDY0JnImJm51bGwhPT0oZT1uLm1lbW9pemVkU3RhdGUpJiZudWxsIT09KGU9ZS5kZWh5ZHJhdGVkKSYmZnVuY3Rpb24oZSx0KXt2YXIgbj1lLm93bmVyRG9jdW1lbnQ7aWYoIiR+Ij09PWUuZGF0YSllLl9yZWFjdFJldHJ5PXQ7ZWxzZSBpZigiJD8iIT09ZS5kYXRhfHwibG9hZGluZyIhPT1uLnJlYWR5U3RhdGUpdCgpO2Vsc2V7dmFyIHI9ZnVuY3Rpb24oKXt0KCksbi5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixyKX07bi5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixyKSxlLl9yZWFjdFJldHJ5PXJ9fShlLG49c1QuYmluZChudWxsLG4pKTticmVhaztjYXNlIDIyOmlmKCEocj1udWxsIT09bi5tZW1vaXplZFN0YXRlfHxpUSkpe3Q9bnVsbCE9PXQmJm51bGwhPT10Lm1lbW9pemVkU3RhdGV8fGlXLGw9aVE7dmFyIGE9aVc7aVE9ciwoaVc9dCkmJiFhP2Z1bmN0aW9uIGUodCxuLHIpe2ZvcihyPXImJjAhPSg4NzcyJm4uc3VidHJlZUZsYWdzKSxuPW4uY2hpbGQ7bnVsbCE9PW47KXt2YXIgbD1uLmFsdGVybmF0ZSxhPXQsbz1uLGk9by5mbGFncztzd2l0Y2goby50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6ZShhLG8sciksaWgoNCxvKTticmVhaztjYXNlIDE6aWYoZShhLG8sciksImZ1bmN0aW9uIj09dHlwZW9mKGE9KGw9bykuc3RhdGVOb2RlKS5jb21wb25lbnREaWRNb3VudCl0cnl7YS5jb21wb25lbnREaWRNb3VudCgpfWNhdGNoKGUpe3NfKGwsbC5yZXR1cm4sZSl9aWYobnVsbCE9PShhPShsPW8pLnVwZGF0ZVF1ZXVlKSl7dmFyIHU9bC5zdGF0ZU5vZGU7dHJ5e3ZhciBzPWEuc2hhcmVkLmhpZGRlbkNhbGxiYWNrcztpZihudWxsIT09cylmb3IoYS5zaGFyZWQuaGlkZGVuQ2FsbGJhY2tzPW51bGwsYT0wO2E8cy5sZW5ndGg7YSsrKWxHKHNbYV0sdSl9Y2F0Y2goZSl7c18obCxsLnJldHVybixlKX19ciYmNjQmaSYmaXYobyksaWIobyxvLnJldHVybik7YnJlYWs7Y2FzZSAyNzppVChvKTtjYXNlIDI2OmNhc2UgNTppZig1PT09by50YWcpe3U9bztmb3IodmFyIGM9dS5yZXR1cm47bnVsbCE9PWMmJihpUChjKSYmY1UodS5zdGF0ZU5vZGUsYy5zdGF0ZU5vZGUpLCFpXyhjKSk7KWM9Yy5yZXR1cm59ZShhLG8sciksciYmbnVsbD09PWwmJjQmaSYmaWsobyksaWIobyxvLnJldHVybik7YnJlYWs7Y2FzZSAxMjplKGEsbyxyKTticmVhaztjYXNlIDMxOmUoYSxvLHIpLHImJjQmaSYmaTkoYSxvKTticmVhaztjYXNlIDEzOmUoYSxvLHIpLHImJjQmaSYmaTcoYSxvKTticmVhaztjYXNlIDIyOm51bGw9PT1vLm1lbW9pemVkU3RhdGUmJmUoYSxvLHIpLGliKG8sby5yZXR1cm4pO2JyZWFrO2Nhc2UgMzA6ZShhLG8sciksaWIobyxvLnJldHVybik7YnJlYWs7Y2FzZSA3OmliKG8sby5yZXR1cm4pO2RlZmF1bHQ6ZShhLG8scil9bj1uLnNpYmxpbmd9fShlLG4sMCE9KDg3NzImbi5zdWJ0cmVlRmxhZ3MpKTp1aShlLG4pLGlRPWwsaVc9YX1icmVhaztjYXNlIDMwOnVpKGUsbiksNTEyJnImJmliKG4sbi5yZXR1cm4pO2JyZWFrO2Nhc2UgNzo1MTImciYmaWIobixuLnJldHVybik7ZGVmYXVsdDp1aShlLG4pfX1mdW5jdGlvbiBpMyhlLHQpe2ZvcihlPWUuY2hpbGQ7bnVsbCE9PWU7KShmdW5jdGlvbiBlKHQsbil7c3dpdGNoKHQudGFnKXtjYXNlIDU6Y2FzZSAyNjp0cnl7dmFyIHI9dC5zdGF0ZU5vZGU7aWYobil7dmFyIGw9ci5zdHlsZTsiZnVuY3Rpb24iPT10eXBlb2YgbC5zZXRQcm9wZXJ0eT9sLnNldFByb3BlcnR5KCJkaXNwbGF5Iiwibm9uZSIsImltcG9ydGFudCIpOmwuZGlzcGxheT0ibm9uZSJ9ZWxzZXt2YXIgYT10LnN0YXRlTm9kZSxvPXQubWVtb2l6ZWRQcm9wcy5zdHlsZSxpPW51bGwhPW8mJm8uaGFzT3duUHJvcGVydHkoImRpc3BsYXkiKT9vLmRpc3BsYXk6bnVsbDthLnN0eWxlLmRpc3BsYXk9bnVsbD09aXx8ImJvb2xlYW4iPT10eXBlb2YgaT8iIjooIiIraSkudHJpbSgpfX1jYXRjaChlKXtzXyh0LHQucmV0dXJuLGUpfSFmdW5jdGlvbiB0KG4scil7aWYoMHg0MDAwMDAwJm4uc3VidHJlZUZsYWdzKWZvcihuPW4uY2hpbGQ7bnVsbCE9PW47KXtlOnt2YXIgbD1uO3N3aXRjaChsLnRhZyl7Y2FzZSA0OmUobCxyKTticmVhayBlO2Nhc2UgMjI6bnVsbD09PWwubWVtb2l6ZWRTdGF0ZSYmdChsLHIpO2JyZWFrIGU7ZGVmYXVsdDp0KGwscil9fW49bi5zaWJsaW5nfX0odCxuKTticmVhaztjYXNlIDY6dHJ5e3Quc3RhdGVOb2RlLm5vZGVWYWx1ZT1uPyIiOnQubWVtb2l6ZWRQcm9wcyx0cj0hMH1jYXRjaChlKXtzXyh0LHQucmV0dXJuLGUpfWJyZWFrO2Nhc2UgMTg6dHJ5e3ZhciB1PXQuc3RhdGVOb2RlO24/Y3codSwhMCk6Y3codC5zdGF0ZU5vZGUsITEpfWNhdGNoKGUpe3NfKHQsdC5yZXR1cm4sZSl9YnJlYWs7Y2FzZSAyMjpjYXNlIDIzOm51bGw9PT10Lm1lbW9pemVkU3RhdGUmJmkzKHQsbik7YnJlYWs7ZGVmYXVsdDppMyh0LG4pfX0pKGUsdCksZT1lLnNpYmxpbmd9dmFyIGk0PW51bGwsaTg9ITE7ZnVuY3Rpb24gaTUoZSx0LG4pe2ZvcihuPW4uY2hpbGQ7bnVsbCE9PW47KWk2KGUsdCxuKSxuPW4uc2libGluZ31mdW5jdGlvbiBpNihlLHQsbil7aWYoZV8mJiJmdW5jdGlvbiI9PXR5cGVvZiBlXy5vbkNvbW1pdEZpYmVyVW5tb3VudCl0cnl7ZV8ub25Db21taXRGaWJlclVubW91bnQoZXgsbil9Y2F0Y2goZSl7fXN3aXRjaChuLnRhZyl7Y2FzZSAyNjppV3x8aXcobix0KSxpNShlLHQsbiksbi5tZW1vaXplZFN0YXRlP24ubWVtb2l6ZWRTdGF0ZS5jb3VudC0tOm4uc3RhdGVOb2RlJiYobj1uLnN0YXRlTm9kZSkucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChuKTticmVhaztjYXNlIDI3OmlXfHxpdyhuLHQpO3ZhciByPWk0LGw9aTg7Y3kobi50eXBlKSYmKGk0PW4uc3RhdGVOb2RlLGk4PSExKSxpNShlLHQsbiksY0cobi5zdGF0ZU5vZGUpLGk0PXIsaTg9bDticmVhaztjYXNlIDU6aVd8fGl3KG4sdCksNT09PW4udGFnJiZpeChuKTtjYXNlIDY6aWYocj1pNCxsPWk4LGk0PW51bGwsaTUoZSx0LG4pLGk0PXIsaTg9bCxudWxsIT09aTQpaWYoaTgpdHJ5eyg5PT09aTQubm9kZVR5cGU/aTQuYm9keToiSFRNTCI9PT1pNC5ub2RlTmFtZT9pNC5vd25lckRvY3VtZW50LmJvZHk6aTQpLnJlbW92ZUNoaWxkKG4uc3RhdGVOb2RlKSx0cj0hMH1jYXRjaChlKXtzXyhuLHQsZSl9ZWxzZSB0cnl7aTQucmVtb3ZlQ2hpbGQobi5zdGF0ZU5vZGUpLHRyPSEwfWNhdGNoKGUpe3NfKG4sdCxlKX1icmVhaztjYXNlIDE4Om51bGwhPT1pNCYmKGk4PyhjYig5PT09KGU9aTQpLm5vZGVUeXBlP2UuYm9keToiSFRNTCI9PT1lLm5vZGVOYW1lP2Uub3duZXJEb2N1bWVudC5ib2R5OmUsbi5zdGF0ZU5vZGUpLGZHKGUpKTpjYihpNCxuLnN0YXRlTm9kZSkpO2JyZWFrO2Nhc2UgNDpyPWk0LGw9aTgsaTQ9bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyxpOD0hMCxpNShlLHQsbiksaTQ9cixpOD1sO2JyZWFrO2Nhc2UgMDpjYXNlIDExOmNhc2UgMTQ6Y2FzZSAxNTppZygyLG4sdCksaVd8fGlnKDQsbix0KSxpNShlLHQsbik7YnJlYWs7Y2FzZSAxOmlXfHwoaXcobix0KSwiZnVuY3Rpb24iPT10eXBlb2Yocj1uLnN0YXRlTm9kZSkuY29tcG9uZW50V2lsbFVubW91bnQmJml5KG4sdCxyKSksaTUoZSx0LG4pO2JyZWFrO2Nhc2UgMjE6ZGVmYXVsdDppNShlLHQsbik7YnJlYWs7Y2FzZSAyMjppVz0ocj1pVyl8fG51bGwhPT1uLm1lbW9pemVkU3RhdGUsaTUoZSx0LG4pLGlXPXI7YnJlYWs7Y2FzZSAzMDppdyhuLHQpLGk1KGUsdCxuKTticmVhaztjYXNlIDc6aVd8fGl3KG4sdCksaTUoZSx0LG4pfX1mdW5jdGlvbiBpOShlLHQpe2lmKG51bGw9PT10Lm1lbW9pemVkU3RhdGUmJm51bGwhPT0oZT10LmFsdGVybmF0ZSkmJm51bGwhPT0oZT1lLm1lbW9pemVkU3RhdGUpKXtlPWUuZGVoeWRyYXRlZDt0cnl7ZkcoZSl9Y2F0Y2goZSl7c18odCx0LnJldHVybixlKX19fWZ1bmN0aW9uIGk3KGUsdCl7aWYobnVsbD09PXQubWVtb2l6ZWRTdGF0ZSYmbnVsbCE9PShlPXQuYWx0ZXJuYXRlKSYmbnVsbCE9PShlPWUubWVtb2l6ZWRTdGF0ZSkmJm51bGwhPT0oZT1lLmRlaHlkcmF0ZWQpKXRyeXtmRyhlKX1jYXRjaChlKXtzXyh0LHQucmV0dXJuLGUpfX1mdW5jdGlvbiB1ZShlLHQpe3ZhciBuPWZ1bmN0aW9uKGUpe3N3aXRjaChlLnRhZyl7Y2FzZSAzMTpjYXNlIDEzOmNhc2UgMTk6dmFyIHQ9ZS5zdGF0ZU5vZGU7cmV0dXJuIG51bGw9PT10JiYodD1lLnN0YXRlTm9kZT1uZXcgaVgpLHQ7Y2FzZSAyMjpyZXR1cm4gbnVsbD09PSh0PShlPWUuc3RhdGVOb2RlKS5fcmV0cnlDYWNoZSkmJih0PWUuX3JldHJ5Q2FjaGU9bmV3IGlYKSx0O2RlZmF1bHQ6dGhyb3cgRXJyb3IodSg0MzUsZS50YWcpKX19KGUpO3QuZm9yRWFjaChmdW5jdGlvbih0KXtpZighbi5oYXModCkpe24uYWRkKHQpO3ZhciByPXNPLmJpbmQobnVsbCxlLHQpO3QudGhlbihyLHIpfX0pfWZ1bmN0aW9uIHV0KGUsdCxuKXt2YXIgcj10LmRlbGV0aW9ucztpZihudWxsIT09cilmb3IodmFyIGw9MDtsPHIubGVuZ3RoO2wrKyl7dmFyIGE9cltsXSxvPWUsaT10LHM9aTtlOmZvcig7bnVsbCE9PXM7KXtzd2l0Y2gocy50YWcpe2Nhc2UgMjc6aWYoY3kocy50eXBlKSl7aTQ9cy5zdGF0ZU5vZGUsaTg9ITE7YnJlYWsgZX1icmVhaztjYXNlIDU6aTQ9cy5zdGF0ZU5vZGUsaTg9ITE7YnJlYWsgZTtjYXNlIDM6Y2FzZSA0Omk0PXMuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8saTg9ITA7YnJlYWsgZX1zPXMucmV0dXJufWlmKG51bGw9PT1pNCl0aHJvdyBFcnJvcih1KDE2MCkpO2k2KG8saSxhKSxpND1udWxsLGk4PSExLG51bGwhPT0obz1hLmFsdGVybmF0ZSkmJihvLnJldHVybj1udWxsKSxhLnJldHVybj1udWxsfWlmKDEzODg2JnQuc3VidHJlZUZsYWdzKWZvcih0PXQuY2hpbGQ7bnVsbCE9PXQ7KXVyKHQsZSxuKSx0PXQuc2libGluZ312YXIgdW49bnVsbDtmdW5jdGlvbiB1cihlLHQsbil7dmFyIHI9ZS5hbHRlcm5hdGUsbD1lLmZsYWdzO3N3aXRjaChlLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNDpjYXNlIDE1OnV0KHQsZSxuKSx1bChlKSw0JmwmJihpZygzLGUsZS5yZXR1cm4pLGloKDMsZSksaWcoNSxlLGUucmV0dXJuKSk7YnJlYWs7Y2FzZSAxOnV0KHQsZSxuKSx1bChlKSw1MTImbCYmKGlXfHxudWxsPT09cnx8aXcocixyLnJldHVybikpLDY0JmwmJmlRJiZudWxsIT09KGU9ZS51cGRhdGVRdWV1ZSkmJm51bGwhPT0ocj1lLmNhbGxiYWNrcykmJih0PWUuc2hhcmVkLmhpZGRlbkNhbGxiYWNrcyxlLnNoYXJlZC5oaWRkZW5DYWxsYmFja3M9bnVsbD09PXQ/cjp0LmNvbmNhdChyKSk7YnJlYWs7Y2FzZSAyNjp2YXIgYT11bjtpZih1dCh0LGUsbiksdWwoZSksNTEyJmwmJihpV3x8bnVsbD09PXJ8fGl3KHIsci5yZXR1cm4pKSw0JmwpaWYobj1udWxsIT09cj9yLm1lbW9pemVkU3RhdGU6bnVsbCx0PWUubWVtb2l6ZWRTdGF0ZSxudWxsPT09cilpZihudWxsPT09dClpZihudWxsPT09ZS5zdGF0ZU5vZGUpe2U6e3I9ZS50eXBlLHQ9ZS5tZW1vaXplZFByb3BzLG49YS5vd25lckRvY3VtZW50fHxhO3Q6c3dpdGNoKHIpe2Nhc2UidGl0bGUiOighKGw9bi5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGl0bGUiKVswXSl8fGxbZVpdfHxsW2VXXXx8Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj09PWwubmFtZXNwYWNlVVJJfHxsLmhhc0F0dHJpYnV0ZSgiaXRlbXByb3AiKSkmJihsPW4uY3JlYXRlRWxlbWVudChyKSxuLmhlYWQuaW5zZXJ0QmVmb3JlKGwsbi5xdWVyeVNlbGVjdG9yKCJoZWFkID4gdGl0bGUiKSkpLGNsKGwscix0KSxsW2VXXT1lLGU4KGwpLHI9bDticmVhayBlO2Nhc2UibGluayI6aWYoYT1mbCgibGluayIsImhyZWYiLG4pLmdldChyKyh0LmhyZWZ8fCIiKSkpe2Zvcih2YXIgbz0wO288YS5sZW5ndGg7bysrKWlmKChsPWFbb10pLmdldEF0dHJpYnV0ZSgiaHJlZiIpPT09KG51bGw9PXQuaHJlZnx8IiI9PT10LmhyZWY/bnVsbDp0LmhyZWYpJiZsLmdldEF0dHJpYnV0ZSgicmVsIik9PT0obnVsbD09dC5yZWw/bnVsbDp0LnJlbCkmJmwuZ2V0QXR0cmlidXRlKCJ0aXRsZSIpPT09KG51bGw9PXQudGl0bGU/bnVsbDp0LnRpdGxlKSYmbC5nZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIik9PT0obnVsbD09dC5jcm9zc09yaWdpbj9udWxsOnQuY3Jvc3NPcmlnaW4pKXthLnNwbGljZShvLDEpO2JyZWFrIHR9fWNsKGw9bi5jcmVhdGVFbGVtZW50KHIpLHIsdCksbi5oZWFkLmFwcGVuZENoaWxkKGwpO2JyZWFrO2Nhc2UibWV0YSI6aWYoYT1mbCgibWV0YSIsImNvbnRlbnQiLG4pLmdldChyKyh0LmNvbnRlbnR8fCIiKSkpe2ZvcihvPTA7bzxhLmxlbmd0aDtvKyspaWYoKGw9YVtvXSkuZ2V0QXR0cmlidXRlKCJjb250ZW50Iik9PT0obnVsbD09dC5jb250ZW50P251bGw6IiIrdC5jb250ZW50KSYmbC5nZXRBdHRyaWJ1dGUoIm5hbWUiKT09PShudWxsPT10Lm5hbWU/bnVsbDp0Lm5hbWUpJiZsLmdldEF0dHJpYnV0ZSgicHJvcGVydHkiKT09PShudWxsPT10LnByb3BlcnR5P251bGw6dC5wcm9wZXJ0eSkmJmwuZ2V0QXR0cmlidXRlKCJodHRwLWVxdWl2Iik9PT0obnVsbD09dC5odHRwRXF1aXY/bnVsbDp0Lmh0dHBFcXVpdikmJmwuZ2V0QXR0cmlidXRlKCJjaGFyc2V0Iik9PT0obnVsbD09dC5jaGFyU2V0P251bGw6dC5jaGFyU2V0KSl7YS5zcGxpY2UobywxKTticmVhayB0fX1jbChsPW4uY3JlYXRlRWxlbWVudChyKSxyLHQpLG4uaGVhZC5hcHBlbmRDaGlsZChsKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKHUoNDY4LHIpKX1sW2VXXT1lLGU4KGwpLHI9bH1lLnN0YXRlTm9kZT1yfWVsc2UgZmEoYSxlLnR5cGUsZS5zdGF0ZU5vZGUpO2Vsc2UgZS5zdGF0ZU5vZGU9YzcoYSx0LGUubWVtb2l6ZWRQcm9wcyk7ZWxzZSBuIT09dD8obnVsbD09PW4/bnVsbCE9PXIuc3RhdGVOb2RlJiYocj1yLnN0YXRlTm9kZSkucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChyKTpuLmNvdW50LS0sbnVsbD09PXQ/ZmEoYSxlLnR5cGUsZS5zdGF0ZU5vZGUpOmM3KGEsdCxlLm1lbW9pemVkUHJvcHMpKTpudWxsPT09dCYmbnVsbCE9PWUuc3RhdGVOb2RlJiZpUyhlLGUubWVtb2l6ZWRQcm9wcyxyLm1lbW9pemVkUHJvcHMpO2JyZWFrO2Nhc2UgMjc6dXQodCxlLG4pLHVsKGUpLDUxMiZsJiYoaVd8fG51bGw9PT1yfHxpdyhyLHIucmV0dXJuKSksbnVsbCE9PXImJjQmbCYmaVMoZSxlLm1lbW9pemVkUHJvcHMsci5tZW1vaXplZFByb3BzKTticmVhaztjYXNlIDU6aWYoYT1pcSxpcT0hMSx1dCh0LGUsbiksaXE9YSx1bChlKSw1MTImbCYmKGlXfHxudWxsPT09cnx8aXcocixyLnJldHVybikpLDMyJmUuZmxhZ3Mpe3Q9ZS5zdGF0ZU5vZGU7dHJ5e3RrKHQsIiIpLHRyPSEwfWNhdGNoKHQpe3NfKGUsZS5yZXR1cm4sdCl9fTQmbCYmbnVsbCE9ZS5zdGF0ZU5vZGUmJih0PWUubWVtb2l6ZWRQcm9wcyxpUyhlLHQsbnVsbCE9PXI/ci5tZW1vaXplZFByb3BzOnQpKSwxMDI0JmwmJihpSz0hMCk7YnJlYWs7Y2FzZSA2OmlmKHV0KHQsZSxuKSx1bChlKSw0Jmwpe2lmKG51bGw9PT1lLnN0YXRlTm9kZSl0aHJvdyBFcnJvcih1KDE2MikpO3I9ZS5tZW1vaXplZFByb3BzLHQ9ZS5zdGF0ZU5vZGU7dHJ5e3Qubm9kZVZhbHVlPXIsdHI9ITB9Y2F0Y2godCl7c18oZSxlLnJldHVybix0KX19YnJlYWs7Y2FzZSAzOmlmKHRyPSExLGZyPW51bGwsYT11bix1bj1jWih0LmNvbnRhaW5lckluZm8pLHV0KHQsZSxuKSx1bj1hLHVsKGUpLDQmbCYmbnVsbCE9PXImJnIubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpdHJ5e2ZHKHQuY29udGFpbmVySW5mbyl9Y2F0Y2godCl7c18oZSxlLnJldHVybix0KX1pSyYmKGlLPSExLGZ1bmN0aW9uIGUodCl7aWYoMTAyNCZ0LnN1YnRyZWVGbGFncylmb3IodD10LmNoaWxkO251bGwhPT10Oyl7dmFyIG49dDtlKG4pLDU9PT1uLnRhZyYmMTAyNCZuLmZsYWdzJiZuLnN0YXRlTm9kZS5yZXNldCgpLHQ9dC5zaWJsaW5nfX0oZSkpLHRyPSExO2JyZWFrO2Nhc2UgNDpyPWlxLGlxPWlRLGw9dGwoKSxhPXVuLHVuPWNaKGUuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pLHV0KHQsZSxuKSx1bChlKSx1bj1hLHRyJiZpSiYmKGlaPSEwKSx0cj1sLGlxPXI7YnJlYWs7Y2FzZSAxMjp1dCh0LGUsbiksdWwoZSk7YnJlYWs7Y2FzZSAzMTpjYXNlIDE5OnV0KHQsZSxuKSx1bChlKSw0JmwmJm51bGwhPT0ocj1lLnVwZGF0ZVF1ZXVlKSYmKGUudXBkYXRlUXVldWU9bnVsbCx1ZShlLHIpKTticmVhaztjYXNlIDEzOnV0KHQsZSxuKSx1bChlKSw4MTkyJmUuY2hpbGQuZmxhZ3MmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUhPShudWxsIT09ciYmbnVsbCE9PXIubWVtb2l6ZWRTdGF0ZSkmJih1Qj1ldigpKSw0JmwmJm51bGwhPT0ocj1lLnVwZGF0ZVF1ZXVlKSYmKGUudXBkYXRlUXVldWU9bnVsbCx1ZShlLHIpKTticmVhaztjYXNlIDIyOmE9bnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSxvPW51bGwhPT1yJiZudWxsIT09ci5tZW1vaXplZFN0YXRlO3ZhciBpPWlRLHM9aVcsYz1pcTtpUT1pfHxhLGlxPWN8fGEsaVc9c3x8byx1dCh0LGUsbiksaVc9cyxpcT1jLGlRPWksdWwoZSksODE5MiZsJiYoKHQ9ZS5zdGF0ZU5vZGUpLl92aXNpYmlsaXR5PWE/LTImdC5fdmlzaWJpbGl0eToxfHQuX3Zpc2liaWxpdHksYSYmKG51bGw9PT1yfHxvfHxpUXx8aVd8fGZ1bmN0aW9uIGUodCl7Zm9yKHQ9dC5jaGlsZDtudWxsIT09dDspe3ZhciBuPXQ7c3dpdGNoKG4udGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE0OmNhc2UgMTU6aWcoNCxuLG4ucmV0dXJuKSxlKG4pO2JyZWFrO2Nhc2UgMTppdyhuLG4ucmV0dXJuKTt2YXIgcj1uLnN0YXRlTm9kZTsiZnVuY3Rpb24iPT10eXBlb2Ygci5jb21wb25lbnRXaWxsVW5tb3VudCYmaXkobixuLnJldHVybixyKSxlKG4pO2JyZWFrO2Nhc2UgMjc6Y0cobi5zdGF0ZU5vZGUpO2Nhc2UgMjY6Y2FzZSA1Oml3KG4sbi5yZXR1cm4pLDU9PT1uLnRhZyYmaXgobiksZShuKTticmVhaztjYXNlIDIyOm51bGw9PT1uLm1lbW9pemVkU3RhdGUmJmUobik7YnJlYWs7Y2FzZSAzMDppdyhuLG4ucmV0dXJuKSxlKG4pO2JyZWFrO2Nhc2UgNzppdyhuLG4ucmV0dXJuKTtkZWZhdWx0OmUobil9dD10LnNpYmxpbmd9fShlKSksIWEmJmlxfHxpMyhlLGEpKSw0JmwmJm51bGwhPT0ocj1lLnVwZGF0ZVF1ZXVlKSYmbnVsbCE9PSh0PXIucmV0cnlRdWV1ZSkmJihyLnJldHJ5UXVldWU9bnVsbCx1ZShlLHQpKTticmVhaztjYXNlIDMwOjUxMiZsJiYoaVd8fG51bGw9PT1yfHxpdyhyLHIucmV0dXJuKSksbD10bCgpLGE9aUosbz0oMHgxM2ZmZmYwMCZuKT09PW4saT1lLm1lbW9pemVkUHJvcHMsaUo9byYmIm5vbmUiIT09cmwoaS5kZWZhdWx0LGkudXBkYXRlKSx1dCh0LGUsbiksdWwoZSksbyYmbnVsbCE9PXImJnRyJiYoZS5mbGFnc3w9NCksaUo9YSx0cj1sO2JyZWFrO2Nhc2UgMjE6YnJlYWs7Y2FzZSA3OnImJm51bGwhPT1yLnN0YXRlTm9kZSYmKHIuc3RhdGVOb2RlLl9mcmFnbWVudEZpYmVyPWUpO2RlZmF1bHQ6dXQodCxlLG4pLHVsKGUpfX1mdW5jdGlvbiB1bChlKXt2YXIgdD1lLmZsYWdzO2lmKDImdCl7dHJ5e2Zvcih2YXIgbixyPW51bGwsbD1lLnJldHVybjtudWxsIT09bDspe2lmKGlQKGwpKXt2YXIgYT1sLnN0YXRlTm9kZTtudWxsPT09cj9yPVthXTpyLnB1c2goYSl9aWYoaV8obCkpe249bDticmVha31sPWwucmV0dXJufWlmKG51bGw9PW4pdGhyb3cgRXJyb3IodSgxNjApKTtzd2l0Y2gobi50YWcpe2Nhc2UgMjc6dmFyIG89bi5zdGF0ZU5vZGUsaT1pTihlKTtpQyhlLGksbyxyKTticmVhaztjYXNlIDU6dmFyIHM9bi5zdGF0ZU5vZGU7MzImbi5mbGFncyYmKHRrKHMsIiIpLG4uZmxhZ3MmPS0zMyk7dmFyIGM9aU4oZSk7aUMoZSxjLHMscik7YnJlYWs7Y2FzZSAzOmNhc2UgNDp2YXIgZj1uLnN0YXRlTm9kZS5jb250YWluZXJJbmZvLGQ9aU4oZSk7IWZ1bmN0aW9uIGUodCxuLHIsbCl7dmFyIGE9dC50YWc7aWYoNT09PWF8fDY9PT1hKWE9dC5zdGF0ZU5vZGUsbj8oOT09PXIubm9kZVR5cGU/ci5ib2R5OiJIVE1MIj09PXIubm9kZU5hbWU/ci5vd25lckRvY3VtZW50LmJvZHk6cikuaW5zZXJ0QmVmb3JlKGEsbik6KChuPTk9PT1yLm5vZGVUeXBlP3IuYm9keToiSFRNTCI9PT1yLm5vZGVOYW1lP3Iub3duZXJEb2N1bWVudC5ib2R5OnIpLmFwcGVuZENoaWxkKGEpLG51bGwhPShyPXIuX3JlYWN0Um9vdENvbnRhaW5lcil8fG51bGwhPT1uLm9uY2xpY2t8fChuLm9uY2xpY2s9dFQpKSxpRSh0LGwpLHRyPSEwO2Vsc2UgaWYoNCE9PWEmJigyNz09PWEmJmN5KHQudHlwZSkmJihyPXQuc3RhdGVOb2RlLG49bnVsbCksbnVsbCE9PSh0PXQuY2hpbGQpKSlmb3IoZSh0LG4scixsKSx0PXQuc2libGluZztudWxsIT09dDspZSh0LG4scixsKSx0PXQuc2libGluZ30oZSxkLGYscik7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcih1KDE2MSkpfX1jYXRjaCh0KXtzXyhlLGUucmV0dXJuLHQpfWUuZmxhZ3MmPS0zfTQwOTYmdCYmKGUuZmxhZ3MmPS00MDk3KX1mdW5jdGlvbiB1YShlLHQpe2lmKDkyNzAmdC5zdWJ0cmVlRmxhZ3MpZm9yKHQ9dC5jaGlsZDtudWxsIT09dDspdW8odCxlKSx0PXQuc2libGluZztlbHNlIWZ1bmN0aW9uIGUodCxuKXtmb3IodD10LmNoaWxkO251bGwhPT10Oyl7aWYoMzA9PT10LnRhZyl7dmFyIHI9dC5tZW1vaXplZFByb3BzLGw9dC5zdGF0ZU5vZGUsYT1ybihyLGwpLG89cmwoci5kZWZhdWx0LHIudXBkYXRlKTtpZihuKXZhciBpPW51bGw9PT0obD1sLmNsb25lcyk/bnVsbDpsLm1hcChjXyk7ZWxzZSBpPXQubWVtb2l6ZWRTdGF0ZSx0Lm1lbW9pemVkU3RhdGU9bnVsbDtsPXQ7dmFyIHU9dC5jaGlsZDtpST0wLGE9aSQobCx1LGEsYSxvLGksITEpLDAhPSg0JnQuZmxhZ3MpJiZhJiYobnx8dTUodCxyLm9uVXBkYXRlKSl9ZWxzZSAwIT0oMHgyMDAwMDAwJnQuc3VidHJlZUZsYWdzKSYmZSh0LG4pO3Q9dC5zaWJsaW5nfX0odCwhMSl9ZnVuY3Rpb24gdW8oZSx0KXt2YXIgbj1lLmFsdGVybmF0ZTtpZihudWxsPT09bilpaihlLCExKTtlbHNlIHN3aXRjaChlLnRhZyl7Y2FzZSAzOmlmKGkwPWlZPSExLGlNKCksdWEodCxlKSwhaVkmJiFpWil7aWYobnVsbCE9PShlPWlSKSlmb3IodmFyIHI9MDtyPGUubGVuZ3RoO3IrPTMpe249ZVtyXTt2YXIgbD1lW3IrMV07Y1MobixlW3IrMl0pLG51bGwhPT0obj1uLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSYmbi5hbmltYXRlKHtvcGFjaXR5OlswLDBdLHBvaW50ZXJFdmVudHM6WyJub25lIiwibm9uZSJdfSx7ZHVyYXRpb246MCxmaWxsOiJmb3J3YXJkcyIscHNldWRvRWxlbWVudDoiOjp2aWV3LXRyYW5zaXRpb24tZ3JvdXAoIitsKyIpIn0pfW51bGwhPT0oZT05PT09KGU9dC5jb250YWluZXJJbmZvKS5ub2RlVHlwZT9lLmRvY3VtZW50RWxlbWVudDplLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSYmIiI9PT1lLnN0eWxlLnZpZXdUcmFuc2l0aW9uTmFtZSYmKGUuc3R5bGUudmlld1RyYW5zaXRpb25OYW1lPSJub25lIixlLmFuaW1hdGUoe29wYWNpdHk6WzAsMF0scG9pbnRlckV2ZW50czpbIm5vbmUiLCJub25lIl19LHtkdXJhdGlvbjowLGZpbGw6ImZvcndhcmRzIixwc2V1ZG9FbGVtZW50OiI6OnZpZXctdHJhbnNpdGlvbi1ncm91cChyb290KSJ9KSxlLmFuaW1hdGUoe3dpZHRoOlswLDBdLGhlaWdodDpbMCwwXX0se2R1cmF0aW9uOjAsZmlsbDoiZm9yd2FyZHMiLHBzZXVkb0VsZW1lbnQ6Ijo6dmlldy10cmFuc2l0aW9uIn0pKSxpMD0hMH1pUj1udWxsO2JyZWFrO2Nhc2UgNTpkZWZhdWx0OnVhKHQsZSk7YnJlYWs7Y2FzZSA0OnI9aVksaVk9ITEsdWEodCxlKSxpWSYmKGlaPSEwKSxpWT1yO2JyZWFrO2Nhc2UgMjI6bnVsbD09PWUubWVtb2l6ZWRTdGF0ZSYmKG51bGwhPT1uLm1lbW9pemVkU3RhdGU/aWooZSwhMSk6dWEodCxlKSk7YnJlYWs7Y2FzZSAzMDpyPWlZLGw9aU0oKSxpWT0hMSx1YSh0LGUpLGlZJiYoZS5mbGFnc3w9NCk7dmFyIGE9ZS5tZW1vaXplZFByb3BzLG89ZS5zdGF0ZU5vZGU7dD1ybihhLG8pLG89cm4obi5tZW1vaXplZFByb3BzLG8pO3ZhciBpPXJsKGEuZGVmYXVsdCxhLnVwZGF0ZSk7Im5vbmUiPT09aT90PSExOihhPW4ubWVtb2l6ZWRTdGF0ZSxuLm1lbW9pemVkU3RhdGU9bnVsbCxuPWUuY2hpbGQsaUk9MCx0PWkkKGUsbix0LG8saSxhLCEwKSxpSSE9PShudWxsPT09YT8wOmEubGVuZ3RoKSYmKGUuZmxhZ3N8PTMyKSksMCE9KDQmZS5mbGFncykmJnQ/KHU1KGUsZS5tZW1vaXplZFByb3BzLm9uVXBkYXRlKSxpUj1sKTpudWxsIT09bCYmKGwucHVzaC5hcHBseShsLGlSKSxpUj1sKSxpWT0wIT0oMzImZS5mbGFncyl8fHJ9fWZ1bmN0aW9uIHVpKGUsdCl7aWYoODc3MiZ0LnN1YnRyZWVGbGFncylmb3IodD10LmNoaWxkO251bGwhPT10OylpMihlLHQuYWx0ZXJuYXRlLHQpLHQ9dC5zaWJsaW5nfWZ1bmN0aW9uIHV1KGUsdCl7dmFyIG49bnVsbDtudWxsIT09ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZS5jYWNoZVBvb2wmJihuPWUubWVtb2l6ZWRTdGF0ZS5jYWNoZVBvb2wucG9vbCksZT1udWxsLG51bGwhPT10Lm1lbW9pemVkU3RhdGUmJm51bGwhPT10Lm1lbW9pemVkU3RhdGUuY2FjaGVQb29sJiYoZT10Lm1lbW9pemVkU3RhdGUuY2FjaGVQb29sLnBvb2wpLGUhPT1uJiYobnVsbCE9ZSYmZS5yZWZDb3VudCsrLG51bGwhPW4mJmxzKG4pKX1mdW5jdGlvbiB1cyhlLHQpe2U9bnVsbCxudWxsIT09dC5hbHRlcm5hdGUmJihlPXQuYWx0ZXJuYXRlLm1lbW9pemVkU3RhdGUuY2FjaGUpLCh0PXQubWVtb2l6ZWRTdGF0ZS5jYWNoZSkhPT1lJiYodC5yZWZDb3VudCsrLG51bGwhPWUmJmxzKGUpKX1mdW5jdGlvbiB1YyhlLHQsbixyKXt2YXIgbD0oMHgxM2ZmZmYwMCZuKT09PW47aWYodC5zdWJ0cmVlRmxhZ3MmKGw/MTAyNjI6MTAyNTYpKWZvcih0PXQuY2hpbGQ7bnVsbCE9PXQ7KXVmKGUsdCxuLHIpLHQ9dC5zaWJsaW5nO2Vsc2UgbCYmZnVuY3Rpb24gZSh0KXtmb3IodD10LmNoaWxkO251bGwhPT10OykzMD09PXQudGFnP2lGKHQuY2hpbGQsITEpOjAhPSgweDIwMDAwMDAmdC5zdWJ0cmVlRmxhZ3MpJiZlKHQpLHQ9dC5zaWJsaW5nfSh0KX1mdW5jdGlvbiB1ZihlLHQsbixyKXt2YXIgbD0oMHgxM2ZmZmYwMCZuKT09PW47bCYmbnVsbD09PXQuYWx0ZXJuYXRlJiZudWxsIT09dC5yZXR1cm4mJm51bGwhPT10LnJldHVybi5hbHRlcm5hdGUmJmlIKHQpO3ZhciBhPXQuZmxhZ3M7c3dpdGNoKHQudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OnVjKGUsdCxuLHIpLDIwNDgmYSYmaWgoOSx0KTticmVhaztjYXNlIDE6Y2FzZSAzMTpjYXNlIDEzOmRlZmF1bHQ6dWMoZSx0LG4scik7YnJlYWs7Y2FzZSAzOnVjKGUsdCxuLHIpLGwmJmkwJiYoInJvb3QiPT09KGU9OT09PShlPWUuY29udGFpbmVySW5mbykubm9kZVR5cGU/ZS5ib2R5OiJIVE1MIj09PWUubm9kZU5hbWU/ZS5vd25lckRvY3VtZW50LmJvZHk6ZSkuc3R5bGUudmlld1RyYW5zaXRpb25OYW1lJiYoZS5zdHlsZS52aWV3VHJhbnNpdGlvbk5hbWU9IiIpLG51bGwhPT0oZT1lLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSYmIm5vbmUiPT09ZS5zdHlsZS52aWV3VHJhbnNpdGlvbk5hbWUmJihlLnN0eWxlLnZpZXdUcmFuc2l0aW9uTmFtZT0iIikpLDIwNDgmYSYmKGE9bnVsbCxudWxsIT09dC5hbHRlcm5hdGUmJihhPXQuYWx0ZXJuYXRlLm1lbW9pemVkU3RhdGUuY2FjaGUpLCh0PXQubWVtb2l6ZWRTdGF0ZS5jYWNoZSkhPT1hJiYodC5yZWZDb3VudCsrLG51bGwhPWEmJmxzKGEpKSk7YnJlYWs7Y2FzZSAxMjppZigyMDQ4JmEpe3VjKGUsdCxuLHIpLGE9dC5zdGF0ZU5vZGU7dHJ5e3ZhciBvPXQubWVtb2l6ZWRQcm9wcyxpPW8uaWQsdT1vLm9uUG9zdENvbW1pdDsiZnVuY3Rpb24iPT10eXBlb2YgdSYmdShpLG51bGw9PT10LmFsdGVybmF0ZT8ibW91bnQiOiJ1cGRhdGUiLGEucGFzc2l2ZUVmZmVjdER1cmF0aW9uLC0wKX1jYXRjaChlKXtzXyh0LHQucmV0dXJuLGUpfX1lbHNlIHVjKGUsdCxuLHIpO2JyZWFrO2Nhc2UgMjM6YnJlYWs7Y2FzZSAyMjpvPXQuc3RhdGVOb2RlLGk9dC5hbHRlcm5hdGUsbnVsbCE9PXQubWVtb2l6ZWRTdGF0ZT8obCYmbnVsbCE9PWkmJm51bGw9PT1pLm1lbW9pemVkU3RhdGUmJmlIKGkpLDImby5fdmlzaWJpbGl0eT91YyhlLHQsbixyKTp1ZChlLHQpKToobCYmbnVsbCE9PWkmJm51bGwhPT1pLm1lbW9pemVkU3RhdGUmJmlIKHQpLDImby5fdmlzaWJpbGl0eT91YyhlLHQsbixyKTooby5fdmlzaWJpbGl0eXw9MixmdW5jdGlvbiBlKHQsbixyLGwsYSl7Zm9yKGE9YSYmMCE9KDEwMjU2Jm4uc3VidHJlZUZsYWdzKSxuPW4uY2hpbGQ7bnVsbCE9PW47KXt2YXIgbz1uLGk9by5mbGFncztzd2l0Y2goby50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6ZSh0LG8scixsLGEpLGloKDgsbyk7YnJlYWs7Y2FzZSAyMzpicmVhaztjYXNlIDIyOnZhciB1PW8uc3RhdGVOb2RlO251bGwhPT1vLm1lbW9pemVkU3RhdGU/MiZ1Ll92aXNpYmlsaXR5P2UodCxvLHIsbCxhKTp1ZCh0LG8pOih1Ll92aXNpYmlsaXR5fD0yLGUodCxvLHIsbCxhKSksYSYmMjA0OCZpJiZ1dShvLmFsdGVybmF0ZSxvKTticmVhaztjYXNlIDI0OmUodCxvLHIsbCxhKSxhJiYyMDQ4JmkmJnVzKG8uYWx0ZXJuYXRlLG8pO2JyZWFrO2RlZmF1bHQ6ZSh0LG8scixsLGEpfW49bi5zaWJsaW5nfX0oZSx0LG4sciwwIT0oMTAyNTYmdC5zdWJ0cmVlRmxhZ3MpKSkpLDIwNDgmYSYmdXUoaSx0KTticmVhaztjYXNlIDI0OnVjKGUsdCxuLHIpLDIwNDgmYSYmdXModC5hbHRlcm5hdGUsdCk7YnJlYWs7Y2FzZSAzMDpsJiZudWxsIT09KGE9dC5hbHRlcm5hdGUpJiYoaUYoYS5jaGlsZCwhMCksaUYodC5jaGlsZCwhMCkpLHVjKGUsdCxuLHIpfX1mdW5jdGlvbiB1ZChlLHQpe2lmKDEwMjU2JnQuc3VidHJlZUZsYWdzKWZvcih0PXQuY2hpbGQ7bnVsbCE9PXQ7KXt2YXIgbj10LHI9bi5mbGFncztzd2l0Y2gobi50YWcpe2Nhc2UgMjI6dWQoZSxuKSwyMDQ4JnImJnV1KG4uYWx0ZXJuYXRlLG4pO2JyZWFrO2Nhc2UgMjQ6dWQoZSxuKSwyMDQ4JnImJnVzKG4uYWx0ZXJuYXRlLG4pO2JyZWFrO2RlZmF1bHQ6dWQoZSxuKX10PXQuc2libGluZ319dmFyIHVwPTgxOTI7ZnVuY3Rpb24gdW0oZSx0LG4pe2lmKGUuc3VidHJlZUZsYWdzJnVwKWZvcihlPWUuY2hpbGQ7bnVsbCE9PWU7KXVoKGUsdCxuKSxlPWUuc2libGluZ31mdW5jdGlvbiB1aChlLHQsbil7c3dpdGNoKGUudGFnKXtjYXNlIDI2OnVtKGUsdCxuKSxlLmZsYWdzJnVwJiYobnVsbCE9PWUubWVtb2l6ZWRTdGF0ZT9mdW5jdGlvbihlLHQsbixyKXtpZigic3R5bGVzaGVldCI9PT1uLnR5cGUmJigic3RyaW5nIiE9dHlwZW9mIHIubWVkaWF8fCExIT09bWF0Y2hNZWRpYShyLm1lZGlhKS5tYXRjaGVzKSYmMD09KDQmbi5zdGF0ZS5sb2FkaW5nKSl7aWYobnVsbD09PW4uaW5zdGFuY2Upe3ZhciBsPWM0KHIuaHJlZiksYT10LnF1ZXJ5U2VsZWN0b3IoYzgobCkpO2lmKGEpe251bGwhPT0odD1hLl9wKSYmIm9iamVjdCI9PXR5cGVvZiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgdC50aGVuJiYoZS5jb3VudCsrLGU9ZmQuYmluZChlKSx0LnRoZW4oZSxlKSksbi5zdGF0ZS5sb2FkaW5nfD00LG4uaW5zdGFuY2U9YSxlOChhKTtyZXR1cm59YT10Lm93bmVyRG9jdW1lbnR8fHQscj1jNShyKSwobD1jWS5nZXQobCkpJiZmdChyLGwpLGU4KGE9YS5jcmVhdGVFbGVtZW50KCJsaW5rIikpO3ZhciBvPWE7by5fcD1uZXcgUHJvbWlzZShmdW5jdGlvbihlLHQpe28ub25sb2FkPWUsby5vbmVycm9yPXR9KSxjbChhLCJsaW5rIixyKSxuLmluc3RhbmNlPWF9bnVsbD09PWUuc3R5bGVzaGVldHMmJihlLnN0eWxlc2hlZXRzPW5ldyBNYXApLGUuc3R5bGVzaGVldHMuc2V0KG4sdCksKHQ9bi5zdGF0ZS5wcmVsb2FkKSYmMD09KDMmbi5zdGF0ZS5sb2FkaW5nKSYmKGUuY291bnQrKyxuPWZkLmJpbmQoZSksdC5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuKSx0LmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIixuKSl9fShuLHVuLGUubWVtb2l6ZWRTdGF0ZSxlLm1lbW9pemVkUHJvcHMpOihlPWUuc3RhdGVOb2RlLCgweDEzZmZmZjQwJnQpPT09dCYmZnMobixlKSkpO2JyZWFrO2Nhc2UgNTp1bShlLHQsbiksZS5mbGFncyZ1cCYmKGU9ZS5zdGF0ZU5vZGUsKDB4MTNmZmZmNDAmdCk9PT10JiZmcyhuLGUpKTticmVhaztjYXNlIDM6Y2FzZSA0OnZhciByPXVuO3VuPWNaKGUuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pLHVtKGUsdCxuKSx1bj1yO2JyZWFrO2Nhc2UgMjI6bnVsbD09PWUubWVtb2l6ZWRTdGF0ZSYmKG51bGwhPT0ocj1lLmFsdGVybmF0ZSkmJm51bGwhPT1yLm1lbW9pemVkU3RhdGU/KHI9dXAsdXA9MHgxMDAwMDAwLHVtKGUsdCxuKSx1cD1yKTp1bShlLHQsbikpO2JyZWFrO2Nhc2UgMzA6aWYoMCE9KGUuZmxhZ3MmdXApJiZudWxsIT0ocj1lLm1lbW9pemVkUHJvcHMubmFtZSkmJiJhdXRvIiE9PXIpe3ZhciBsPWUuc3RhdGVOb2RlO2wucGFpcmVkPW51bGwsbnVsbD09PWl6JiYoaXo9bmV3IE1hcCksaXouc2V0KHIsbCl9dW0oZSx0LG4pO2JyZWFrO2RlZmF1bHQ6dW0oZSx0LG4pfX1mdW5jdGlvbiB1ZyhlKXt2YXIgdD1lLmFsdGVybmF0ZTtpZihudWxsIT09dCYmbnVsbCE9PShlPXQuY2hpbGQpKXt0LmNoaWxkPW51bGw7ZG8gdD1lLnNpYmxpbmcsZS5zaWJsaW5nPW51bGwsZT10O3doaWxlKG51bGwhPT1lKX19ZnVuY3Rpb24gdXYoZSl7dmFyIHQ9ZS5kZWxldGlvbnM7aWYoMCE9KDE2JmUuZmxhZ3MpKXtpZihudWxsIT09dClmb3IodmFyIG49MDtuPHQubGVuZ3RoO24rKyl7dmFyIHI9dFtuXTtpRz1yLHViKHIsZSl9dWcoZSl9aWYoMTAyNTYmZS5zdWJ0cmVlRmxhZ3MpZm9yKGU9ZS5jaGlsZDtudWxsIT09ZTspdXkoZSksZT1lLnNpYmxpbmd9ZnVuY3Rpb24gdXkoZSl7c3dpdGNoKGUudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OnV2KGUpLDIwNDgmZS5mbGFncyYmaWcoOSxlLGUucmV0dXJuKTticmVhaztjYXNlIDM6Y2FzZSAxMjpkZWZhdWx0OnV2KGUpO2JyZWFrO2Nhc2UgMjI6dmFyIHQ9ZS5zdGF0ZU5vZGU7bnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSYmMiZ0Ll92aXNpYmlsaXR5JiYobnVsbD09PWUucmV0dXJufHwxMyE9PWUucmV0dXJuLnRhZyk/KHQuX3Zpc2liaWxpdHkmPS0zLGZ1bmN0aW9uIGUodCl7dmFyIG49dC5kZWxldGlvbnM7aWYoMCE9KDE2JnQuZmxhZ3MpKXtpZihudWxsIT09bilmb3IodmFyIHI9MDtyPG4ubGVuZ3RoO3IrKyl7dmFyIGw9bltyXTtpRz1sLHViKGwsdCl9dWcodCl9Zm9yKHQ9dC5jaGlsZDtudWxsIT09dDspe3N3aXRjaCgobj10KS50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6aWcoOCxuLG4ucmV0dXJuKSxlKG4pO2JyZWFrO2Nhc2UgMjI6MiYocj1uLnN0YXRlTm9kZSkuX3Zpc2liaWxpdHkmJihyLl92aXNpYmlsaXR5Jj0tMyxlKG4pKTticmVhaztkZWZhdWx0OmUobil9dD10LnNpYmxpbmd9fShlKSk6dXYoZSl9fWZ1bmN0aW9uIHViKGUsdCl7Zm9yKDtudWxsIT09aUc7KXt2YXIgbj1pRztzd2l0Y2gobi50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6aWcoOCxuLHQpO2JyZWFrO2Nhc2UgMjM6Y2FzZSAyMjppZihudWxsIT09bi5tZW1vaXplZFN0YXRlJiZudWxsIT09bi5tZW1vaXplZFN0YXRlLmNhY2hlUG9vbCl7dmFyIHI9bi5tZW1vaXplZFN0YXRlLmNhY2hlUG9vbC5wb29sO251bGwhPXImJnIucmVmQ291bnQrK31icmVhaztjYXNlIDI0OmxzKG4ubWVtb2l6ZWRTdGF0ZS5jYWNoZSl9aWYobnVsbCE9PShyPW4uY2hpbGQpKXIucmV0dXJuPW4saUc9cjtlbHNlIGZvcihuPWU7bnVsbCE9PWlHOyl7dmFyIGw9KHI9aUcpLnNpYmxpbmcsYT1yLnJldHVybjtpZighZnVuY3Rpb24gZSh0KXt2YXIgbj10LmFsdGVybmF0ZTtudWxsIT09biYmKHQuYWx0ZXJuYXRlPW51bGwsZShuKSksdC5jaGlsZD1udWxsLHQuZGVsZXRpb25zPW51bGwsdC5zaWJsaW5nPW51bGwsNT09PXQudGFnJiZudWxsIT09KG49dC5zdGF0ZU5vZGUpJiZlMChuKSx0LnN0YXRlTm9kZT1udWxsLHQucmV0dXJuPW51bGwsdC5kZXBlbmRlbmNpZXM9bnVsbCx0Lm1lbW9pemVkUHJvcHM9bnVsbCx0Lm1lbW9pemVkU3RhdGU9bnVsbCx0LnBlbmRpbmdQcm9wcz1udWxsLHQuc3RhdGVOb2RlPW51bGwsdC51cGRhdGVRdWV1ZT1udWxsfShyKSxyPT09bil7aUc9bnVsbDticmVha31pZihudWxsIT09bCl7bC5yZXR1cm49YSxpRz1sO2JyZWFrfWlHPWF9fX12YXIgdXc9e2dldENhY2hlRm9yVHlwZTpmdW5jdGlvbihlKXt2YXIgdD1sdChsaSksbj10LmRhdGEuZ2V0KGUpO3JldHVybiB2b2lkIDA9PT1uJiYobj1lKCksdC5kYXRhLnNldChlLG4pKSxufSxjYWNoZVNpZ25hbDpmdW5jdGlvbigpe3JldHVybiBsdChsaSkuY29udHJvbGxlci5zaWduYWx9fSx1az0iZnVuY3Rpb24iPT10eXBlb2YgV2Vha01hcD9XZWFrTWFwOk1hcCx1Uz0wLHVFPW51bGwsdXg9bnVsbCx1Xz0wLHVQPTAsdU49bnVsbCx1Qz0hMSx1VD0hMSx1Tz0hMSx1ej0wLHVMPTAsdVI9MCx1TT0wLHVJPTAsdUQ9MCx1Rj0wLHVBPW51bGwsdWo9bnVsbCx1VT0hMSx1Qj0wLHVWPTAsdUg9MS8wLHUkPW51bGwsdVE9bnVsbCx1Vz0wLHVxPW51bGwsdUs9bnVsbCx1WD0wLHVHPTAsdVk9bnVsbCx1Sj1udWxsLHVaPW51bGwsdTA9bnVsbCx1MT1udWxsLHUyPTAsdTM9bnVsbDtmdW5jdGlvbiB1NCgpe3JldHVybiAwIT0oMiZ1UykmJjAhPT11Xz91XyYtdV86bnVsbCE9PVcuVD9zJCgpOmVIKCl9ZnVuY3Rpb24gdTgoKXtpZigwPT09dUQpaWYoMD09KDB4MjAwMDAwMDAmdV8pfHxyJCl7dmFyIGU9ZU87MD09KDM5MzIxNjAmKGVPPDw9MSkpJiYoZU89MjYyMTQ0KSx1RD1lfWVsc2UgdUQ9MHgyMDAwMDAwMDtyZXR1cm4gbnVsbCE9PShlPWwzLmN1cnJlbnQpJiYoZS5mbGFnc3w9MzIpLHVEfWZ1bmN0aW9uIHU1KGUsdCl7aWYobnVsbCE9dCl7dmFyIG49ZS5zdGF0ZU5vZGUscj1uLnJlZjtudWxsPT09ciYmKHI9bi5yZWY9Y0Mocm4oZS5tZW1vaXplZFByb3BzLG4pKSksbnVsbD09PXUwJiYodTA9W10pLHUwLnB1c2godC5iaW5kKG51bGwscikpfX1mdW5jdGlvbiB1NihlLHQsbil7KGU9PT11RSYmKDI9PT11UHx8OT09PXVQKXx8bnVsbCE9PWUuY2FuY2VsUGVuZGluZ0NvbW1pdCkmJihzcihlLDApLHNlKGUsdV8sdUQsITEpKSxlRihlLG4pLCgwPT0oMiZ1Uyl8fGUhPT11RSkmJihlPT09dUUmJigwPT0oMiZ1UykmJih1TXw9biksND09PXVMJiZzZShlLHVfLHVELCExKSksc0YoZSkpfWZ1bmN0aW9uIHU5KGUsdCxuKXtpZigwIT0oNiZ1UykpdGhyb3cgRXJyb3IodSgzMjcpKTtmb3IodmFyIHI9IW4mJjA9PSgxMjcmdCkmJjA9PSh0JmUuZXhwaXJlZExhbmVzKXx8ZU0oZSx0KSxsPXI/ZnVuY3Rpb24oZSx0KXt2YXIgbj11Uzt1U3w9Mjt2YXIgcj1zbygpLGw9c2koKTt1RSE9PWV8fHVfIT09dD8odSQ9bnVsbCx1SD1ldigpKzUwMCxzcihlLHQpKTp1VD1lTShlLHQpO2U6Zm9yKDs7KXRyeXtpZigwIT09dVAmJm51bGwhPT11eCl7dD11eDt2YXIgYT11Tjt0OnN3aXRjaCh1UCl7Y2FzZSAxOnVQPTAsdU49bnVsbCxzZChlLHQsYSwxKTticmVhaztjYXNlIDI6Y2FzZSA5OmlmKGxQKGEpKXt1UD0wLHVOPW51bGwsc2YodCk7YnJlYWt9dD1mdW5jdGlvbigpezIhPT11UCYmOSE9PXVQfHx1RSE9PWV8fCh1UD03KSxzRihlKX0sYS50aGVuKHQsdCk7YnJlYWsgZTtjYXNlIDM6dVA9NzticmVhayBlO2Nhc2UgNDp1UD01O2JyZWFrIGU7Y2FzZSA3OmxQKGEpPyh1UD0wLHVOPW51bGwsc2YodCkpOih1UD0wLHVOPW51bGwsc2QoZSx0LGEsNykpO2JyZWFrO2Nhc2UgNTp2YXIgbz1udWxsO3N3aXRjaCh1eC50YWcpe2Nhc2UgMjY6bz11eC5tZW1vaXplZFN0YXRlO2Nhc2UgNTpjYXNlIDI3OnZhciBpPXV4O2lmKG8/Zmkobyk6aS5zdGF0ZU5vZGUuY29tcGxldGUpe3VQPTAsdU49bnVsbDt2YXIgcz1pLnNpYmxpbmc7aWYobnVsbCE9PXMpdXg9cztlbHNle3ZhciBjPWkucmV0dXJuO251bGwhPT1jPyh1eD1jLHNwKGMpKTp1eD1udWxsfWJyZWFrIHR9fXVQPTAsdU49bnVsbCxzZChlLHQsYSw1KTticmVhaztjYXNlIDY6dVA9MCx1Tj1udWxsLHNkKGUsdCxhLDYpO2JyZWFrO2Nhc2UgODpzbigpLHVMPTY7YnJlYWsgZTtkZWZhdWx0OnRocm93IEVycm9yKHUoNDYyKSl9fWZvcig7bnVsbCE9PXV4JiYhZWgoKTspc2ModXgpO2JyZWFrfWNhdGNoKHQpe3NsKGUsdCl9cmV0dXJuKHIzPXIyPW51bGwsVy5IPXIsVy5BPWwsdVM9bixudWxsIT09dXgpPzA6KHVFPW51bGwsdV89MCxycygpLHVMKX0oZSx0KTpzcyhlLHQsITApLGE9cjs7KXtpZigwPT09bCl1VCYmIXImJnNlKGUsdCwwLCExKTtlbHNle2lmKG49ZS5jdXJyZW50LmFsdGVybmF0ZSxhJiYhZnVuY3Rpb24oZSl7Zm9yKHZhciB0PWU7Oyl7dmFyIG49dC50YWc7aWYoKDA9PT1ufHwxMT09PW58fDE1PT09bikmJjE2Mzg0JnQuZmxhZ3MmJm51bGwhPT0obj10LnVwZGF0ZVF1ZXVlKSYmbnVsbCE9PShuPW4uc3RvcmVzKSlmb3IodmFyIHI9MDtyPG4ubGVuZ3RoO3IrKyl7dmFyIGw9bltyXSxhPWwuZ2V0U25hcHNob3Q7bD1sLnZhbHVlO3RyeXtpZighbkEoYSgpLGwpKXJldHVybiExfWNhdGNoKGUpe3JldHVybiExfX1pZihuPXQuY2hpbGQsMTYzODQmdC5zdWJ0cmVlRmxhZ3MmJm51bGwhPT1uKW4ucmV0dXJuPXQsdD1uO2Vsc2V7aWYodD09PWUpYnJlYWs7Zm9yKDtudWxsPT09dC5zaWJsaW5nOyl7aWYobnVsbD09PXQucmV0dXJufHx0LnJldHVybj09PWUpcmV0dXJuITA7dD10LnJldHVybn10LnNpYmxpbmcucmV0dXJuPXQucmV0dXJuLHQ9dC5zaWJsaW5nfX1yZXR1cm4hMH0obikpe2w9c3MoZSx0LCExKSxhPSExO2NvbnRpbnVlfWlmKDI9PT1sKXtpZihhPXQsZS5lcnJvclJlY292ZXJ5RGlzYWJsZWRMYW5lcyZhKXZhciBvPTA7ZWxzZSBvPTAhPShvPS0weDIwMDAwMDAxJmUucGVuZGluZ0xhbmVzKT9vOjB4MjAwMDAwMDAmbz8weDIwMDAwMDAwOjA7aWYoMCE9PW8pe3Q9bztlOntsPXVBO3ZhciBpPWUuY3VycmVudC5tZW1vaXplZFN0YXRlLmlzRGVoeWRyYXRlZDtpZihpJiYoc3IoZSxvKS5mbGFnc3w9MjU2KSwyIT09KG89c3MoZSxvLCExKSkpe2lmKHVPJiYhaSl7ZS5lcnJvclJlY292ZXJ5RGlzYWJsZWRMYW5lc3w9YSx1TXw9YSxsPTQ7YnJlYWsgZX1hPXVqLHVqPWwsbnVsbCE9PWEmJihudWxsPT09dWo/dWo9YTp1ai5wdXNoLmFwcGx5KHVqLGEpKX1sPW99aWYoYT0hMSwyIT09bCljb250aW51ZX19aWYoMT09PWwpe3NyKGUsMCksc2UoZSx0LDAsITApO2JyZWFrfWU6e3N3aXRjaChyPWUsYT1sKXtjYXNlIDA6Y2FzZSAxOnRocm93IEVycm9yKHUoMzQ1KSk7Y2FzZSA0OmlmKCg0MTk0MDQ4JnQpIT09dCYmKDB4M2MwMDAwMCZ0KSE9PXQpYnJlYWs7Y2FzZSA2OnNlKHIsdCx1RCwhdUMpO2JyZWFrIGU7Y2FzZSAyOnVqPW51bGw7YnJlYWs7Y2FzZSAzOmNhc2UgNTpicmVhaztkZWZhdWx0OnRocm93IEVycm9yKHUoMzI5KSl9aWYoKDB4M2MwMDAwMCZ0KT09PXQmJjEwPChsPXVCKzMwMC1ldigpKSl7aWYoc2Uocix0LHVELCF1QyksMCE9PWVSKHIsMCwhMCkpYnJlYWsgZTt1WD10LHIudGltZW91dEhhbmRsZT1jcCh1Ny5iaW5kKG51bGwscixuLHVqLHUkLHVVLHQsdUQsdU0sdUYsdUMsYSwiVGhyb3R0bGVkIiwtMCwwKSxsKTticmVhayBlfXU3KHIsbix1aix1JCx1VSx0LHVELHVNLHVGLHVDLGEsbnVsbCwtMCwwKX19YnJlYWt9c0YoZSl9ZnVuY3Rpb24gdTcoZSx0LG4scixsLGEsbyxpLHUscyxjLGYsZCxwKXtlLnRpbWVvdXRIYW5kbGU9LTE7dmFyIG0saCxnPXQuc3VidHJlZUZsYWdzLHY9KDB4MTNmZmZmMDAmYSk9PT1hO2lmKGY9bnVsbCwodnx8ODE5MiZnfHwweDEwMDIwMDA9PSgweDEwMDIwMDAmZykpJiYoaXo9bnVsbCx1aCh0LGEsZj17c3R5bGVzaGVldHM6bnVsbCxjb3VudDowLGltZ0NvdW50OjAsaW1nQnl0ZXM6MCxzdXNwZW5zZXlJbWFnZXM6W10sd2FpdGluZ0ZvckltYWdlczohMCx3YWl0aW5nRm9yVmlld1RyYW5zaXRpb246ITEsdW5zdXNwZW5kOnRUfSksdiYmKGc9ZixudWxsIT0odj0oOT09PSh2PWUuY29udGFpbmVySW5mbykubm9kZVR5cGU/djp2Lm93bmVyRG9jdW1lbnQpLl9fcmVhY3RWaWV3VHJhbnNpdGlvbikmJihnLmNvdW50KyssZy53YWl0aW5nRm9yVmlld1RyYW5zaXRpb249ITAsZz1mZC5iaW5kKGcpLHYuZmluaXNoZWQudGhlbihnLGcpKSksbnVsbCE9PShtPWYsaD1nPSgweDNjMDAwMDAmYSk9PT1hP3VCLWV2KCk6KDQxOTQwNDgmYSk9PT1hP3VWLWV2KCk6MCxtLnN0eWxlc2hlZXRzJiYwPT09bS5jb3VudCYmZmgobSxtLnN0eWxlc2hlZXRzKSxnPTA8bS5jb3VudHx8MDxtLmltZ0NvdW50P2Z1bmN0aW9uKGUpe3ZhciB0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXtpZihtLnN0eWxlc2hlZXRzJiZmaChtLG0uc3R5bGVzaGVldHMpLG0udW5zdXNwZW5kKXt2YXIgZT1tLnVuc3VzcGVuZDttLnVuc3VzcGVuZD1udWxsLGUoKX19LDZlNCtoKTswPG0uaW1nQnl0ZXMmJjA9PT1mYyYmKGZjPTYyNTAwKmZ1bmN0aW9uKCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUpe2Zvcih2YXIgZT0wLHQ9MCxuPXBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoInJlc291cmNlIikscj0wO3I8bi5sZW5ndGg7cisrKXt2YXIgbD1uW3JdLGE9bC50cmFuc2ZlclNpemUsbz1sLmluaXRpYXRvclR5cGUsaT1sLmR1cmF0aW9uO2lmKGEmJmkmJmNhKG8pKXtmb3Iobz0wLGk9bC5yZXNwb25zZUVuZCxyKz0xO3I8bi5sZW5ndGg7cisrKXt2YXIgdT1uW3JdLHM9dS5zdGFydFRpbWU7aWYocz5pKWJyZWFrO3ZhciBjPXUudHJhbnNmZXJTaXplLGY9dS5pbml0aWF0b3JUeXBlO2MmJmNhKGYpJiYobys9YyooKHU9dS5yZXNwb25zZUVuZCk8aT8xOihpLXMpLyh1LXMpKSl9aWYoLS1yLHQrPTgqKGErbykvKGwuZHVyYXRpb24vMWUzKSwxMDwrK2UpYnJlYWt9fWlmKDA8ZSlyZXR1cm4gdC9lLzFlNn1yZXR1cm4gbmF2aWdhdG9yLmNvbm5lY3Rpb24mJiJudW1iZXIiPT10eXBlb2YoZT1uYXZpZ2F0b3IuY29ubmVjdGlvbi5kb3dubGluayk/ZTo1fSgpKTt2YXIgbj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aWYobS53YWl0aW5nRm9ySW1hZ2VzPSExLDA9PT1tLmNvdW50JiYobS5zdHlsZXNoZWV0cyYmZmgobSxtLnN0eWxlc2hlZXRzKSxtLnVuc3VzcGVuZCkpe3ZhciBlPW0udW5zdXNwZW5kO20udW5zdXNwZW5kPW51bGwsZSgpfX0sKG0uaW1nQnl0ZXM+ZmM/NTA6ODAwKStoKTtyZXR1cm4gbS51bnN1c3BlbmQ9ZSxmdW5jdGlvbigpe20udW5zdXNwZW5kPW51bGwsY2xlYXJUaW1lb3V0KHQpLGNsZWFyVGltZW91dChuKX19Om51bGwpKSl7dVg9YSxlLmNhbmNlbFBlbmRpbmdDb21taXQ9ZyhzaC5iaW5kKG51bGwsZSx0LGEsbixyLGwsbyxpLHUsYyxmLG51bGwsZCxwKSksc2UoZSxhLG8sIXMpO3JldHVybn1zaChlLHQsYSxuLHIsbCxvLGksdSxjLGYpfWZ1bmN0aW9uIHNlKGUsdCxuLHIpe3QmPX51SSx0Jj1+dU0sZS5zdXNwZW5kZWRMYW5lc3w9dCxlLnBpbmdlZExhbmVzJj1+dCxyJiYoZS53YXJtTGFuZXN8PXQpLHI9ZS5leHBpcmF0aW9uVGltZXM7Zm9yKHZhciBsPXQ7MDxsOyl7dmFyIGE9MzEtZVAobCksbz0xPDxhO3JbYV09LTEsbCY9fm99MCE9PW4mJmVBKGUsbix0KX1mdW5jdGlvbiBzdCgpe3JldHVybiAwIT0oNiZ1Uyl8fChzQSgwLCExKSwhMSl9ZnVuY3Rpb24gc24oKXtpZihudWxsIT09dXgpe2lmKDA9PT11UCl2YXIgZT11eC5yZXR1cm47ZWxzZSBlPXV4LHIzPXIyPW51bGwsYUUoZSksbEw9bnVsbCxsUj0wLGU9dXg7Zm9yKDtudWxsIT09ZTspaW0oZS5hbHRlcm5hdGUsZSksZT1lLnJldHVybjt1eD1udWxsfX1mdW5jdGlvbiBzcihlLHQpe3ZhciBuPWUudGltZW91dEhhbmRsZTstMSE9PW4mJihlLnRpbWVvdXRIYW5kbGU9LTEsY20obikpLG51bGwhPT0obj1lLmNhbmNlbFBlbmRpbmdDb21taXQpJiYoZS5jYW5jZWxQZW5kaW5nQ29tbWl0PW51bGwsbigpKSx1WD0wLHNuKCksdUU9ZSx1eD1uPXJiKGUuY3VycmVudCxudWxsKSx1Xz10LHVQPTAsdU49bnVsbCx1Qz0hMSx1VD1lTShlLHQpLHVPPSExLHVGPXVEPXVJPXVNPXVSPXVMPTAsdWo9dUE9bnVsbCx1VT0hMSwwIT0oOCZ0KSYmKHR8PTMyJnQpO3ZhciByPWUuZW50YW5nbGVkTGFuZXM7aWYoMCE9PXIpZm9yKGU9ZS5lbnRhbmdsZW1lbnRzLHImPXQ7MDxyOyl7dmFyIGw9MzEtZVAociksYT0xPDxsO3R8PWVbbF0sciY9fmF9cmV0dXJuIHV6PXQscnMoKSxufWZ1bmN0aW9uIHNsKGUsdCl7YWE9bnVsbCxXLkg9b1MsdD09PWxTfHx0PT09bHg/KHQ9bE8oKSx1UD0zKTp0PT09bEU/KHQ9bE8oKSx1UD00KTp1UD10PT09b2o/ODpudWxsIT09dCYmIm9iamVjdCI9PXR5cGVvZiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgdC50aGVuPzY6MSx1Tj10LG51bGw9PT11eCYmKHVMPTEsb00oZSxyTih0LGUuY3VycmVudCkpKX1mdW5jdGlvbiBzYSgpe3ZhciBlPWwzLmN1cnJlbnQ7cmV0dXJuIG51bGw9PT1lfHwoKDQxOTQwNDgmdV8pPT09dV8/bnVsbD09PWw0OigoMHgzYzAwMDAwJnVfKT09PXVffHwwIT0oMHgyMDAwMDAwMCZ1XykpJiZlPT09bDQpfWZ1bmN0aW9uIHNvKCl7dmFyIGU9Vy5IO3JldHVybiBXLkg9b1MsbnVsbD09PWU/b1M6ZX1mdW5jdGlvbiBzaSgpe3ZhciBlPVcuQTtyZXR1cm4gVy5BPXV3LGV9ZnVuY3Rpb24gc3UoKXt1TD00LHVDfHwoNDE5NDA0OCZ1XykhPT11XyYmbnVsbCE9PWwzLmN1cnJlbnR8fCh1VD0hMCksMD09KDB4N2ZmZmZmZiZ1UikmJjA9PSgweDdmZmZmZmYmdU0pfHxudWxsPT09dUV8fHNlKHVFLHVfLHVELCExKX1mdW5jdGlvbiBzcyhlLHQsbil7dmFyIHI9dVM7dVN8PTI7dmFyIGw9c28oKSxhPXNpKCk7KHVFIT09ZXx8dV8hPT10KSYmKHUkPW51bGwsc3IoZSx0KSksdD0hMTt2YXIgbz11TDtlOmZvcig7Oyl0cnl7aWYoMCE9PXVQJiZudWxsIT09dXgpe3ZhciBpPXV4LHU9dU47c3dpdGNoKHVQKXtjYXNlIDg6c24oKSxvPTY7YnJlYWsgZTtjYXNlIDM6Y2FzZSAyOmNhc2UgOTpjYXNlIDY6bnVsbD09PWwzLmN1cnJlbnQmJih0PSEwKTt2YXIgcz11UDtpZih1UD0wLHVOPW51bGwsc2QoZSxpLHUscyksbiYmdVQpe289MDticmVhayBlfWJyZWFrO2RlZmF1bHQ6cz11UCx1UD0wLHVOPW51bGwsc2QoZSxpLHUscyl9fShmdW5jdGlvbigpe2Zvcig7bnVsbCE9PXV4OylzYyh1eCl9KSgpLG89dUw7YnJlYWt9Y2F0Y2godCl7c2woZSx0KX1yZXR1cm4gdCYmZS5zaGVsbFN1c3BlbmRDb3VudGVyKysscjM9cjI9bnVsbCx1Uz1yLFcuSD1sLFcuQT1hLG51bGw9PT11eCYmKHVFPW51bGwsdV89MCxycygpKSxvfWZ1bmN0aW9uIHNjKGUpe3ZhciB0PWlvKGUuYWx0ZXJuYXRlLGUsdXopO2UubWVtb2l6ZWRQcm9wcz1lLnBlbmRpbmdQcm9wcyxudWxsPT09dD9zcChlKTp1eD10fWZ1bmN0aW9uIHNmKGUpe3ZhciB0PWUsbj10LmFsdGVybmF0ZTtzd2l0Y2godC50YWcpe2Nhc2UgMTU6Y2FzZSAwOnQ9b0oobix0LHQucGVuZGluZ1Byb3BzLHQudHlwZSx2b2lkIDAsdV8pO2JyZWFrO2Nhc2UgMTE6dD1vSihuLHQsdC5wZW5kaW5nUHJvcHMsdC50eXBlLnJlbmRlcix0LnJlZix1Xyk7YnJlYWs7Y2FzZSA1OmFFKHQpO2RlZmF1bHQ6aW0obix0KSx0PWlvKG4sdD11eD1ydyh0LHV6KSx1eil9ZS5tZW1vaXplZFByb3BzPWUucGVuZGluZ1Byb3BzLG51bGw9PT10P3NwKGUpOnV4PXR9ZnVuY3Rpb24gc2QoZSx0LG4scil7cjM9cjI9bnVsbCxhRSh0KSxsTD1udWxsLGxSPTA7dmFyIGw9dC5yZXR1cm47dHJ5e2lmKGZ1bmN0aW9uKGUsdCxuLHIsbCl7aWYobi5mbGFnc3w9MzI3NjgsbnVsbCE9PXImJiJvYmplY3QiPT10eXBlb2YgciYmImZ1bmN0aW9uIj09dHlwZW9mIHIudGhlbil7aWYobnVsbCE9PSh0PW4uYWx0ZXJuYXRlKSYmcjkodCxuLGwsITApLG51bGwhPT0obj1sMy5jdXJyZW50KSl7c3dpdGNoKG4udGFnKXtjYXNlIDMxOmNhc2UgMTM6Y2FzZSAxOTpyZXR1cm4gbnVsbD09PWw0P3N1KCk6bnVsbD09PW4uYWx0ZXJuYXRlJiYwPT09dUwmJih1TD0zKSxuLmZsYWdzJj0tMjU3LG4uZmxhZ3N8PTY1NTM2LG4ubGFuZXM9bCxyPT09bF8/bi5mbGFnc3w9MTYzODQ6KG51bGw9PT0odD1uLnVwZGF0ZVF1ZXVlKT9uLnVwZGF0ZVF1ZXVlPW5ldyBTZXQoW3JdKTp0LmFkZChyKSxzUChlLHIsbCkpLCExO2Nhc2UgMjI6cmV0dXJuIG4uZmxhZ3N8PTY1NTM2LHI9PT1sXz9uLmZsYWdzfD0xNjM4NDoobnVsbD09PSh0PW4udXBkYXRlUXVldWUpPyh0PXt0cmFuc2l0aW9uczpudWxsLG1hcmtlckluc3RhbmNlczpudWxsLHJldHJ5UXVldWU6bmV3IFNldChbcl0pfSxuLnVwZGF0ZVF1ZXVlPXQpOm51bGw9PT0obj10LnJldHJ5UXVldWUpP3QucmV0cnlRdWV1ZT1uZXcgU2V0KFtyXSk6bi5hZGQociksc1AoZSxyLGwpKSwhMX10aHJvdyBFcnJvcih1KDQzNSxuLnRhZykpfXJldHVybiBzUChlLHIsbCksc3UoKSwhMX1pZihyJClyZXR1cm4gbnVsbCE9PSh0PWwzLmN1cnJlbnQpPygwPT0oNjU1MzYmdC5mbGFncykmJih0LmZsYWdzfD0yNTYpLHQuZmxhZ3N8PTY1NTM2LHQubGFuZXM9bCxyIT09cnEmJnIwKHJOKGU9RXJyb3IodSg0MjIpLHtjYXVzZTpyfSksbikpKToociE9PXJxJiZyMChyTih0PUVycm9yKHUoNDIzKSx7Y2F1c2U6cn0pLG4pKSxlPWUuY3VycmVudC5hbHRlcm5hdGUsZS5mbGFnc3w9NjU1MzYsbCY9LWwsZS5sYW5lc3w9bCxyPXJOKHIsbiksbD1vRChlLnN0YXRlTm9kZSxyLGwpLGxXKGUsbCksNCE9PXVMJiYodUw9MikpLCExO3ZhciBhPUVycm9yKHUoNTIwKSx7Y2F1c2U6cn0pO2lmKGE9ck4oYSxuKSxudWxsPT09dUE/dUE9W2FdOnVBLnB1c2goYSksNCE9PXVMJiYodUw9MiksbnVsbD09PXQpcmV0dXJuITA7cj1yTihyLG4pLG49dDtkb3tzd2l0Y2gobi50YWcpe2Nhc2UgMzpyZXR1cm4gbi5mbGFnc3w9NjU1MzYsZT1sJi1sLG4ubGFuZXN8PWUsZT1vRChuLnN0YXRlTm9kZSxyLGUpLGxXKG4sZSksITE7Y2FzZSAxOmlmKHQ9bi50eXBlLGE9bi5zdGF0ZU5vZGUsMD09KDEyOCZuLmZsYWdzKSYmKCJmdW5jdGlvbiI9PXR5cGVvZiB0LmdldERlcml2ZWRTdGF0ZUZyb21FcnJvcnx8bnVsbCE9PWEmJiJmdW5jdGlvbiI9PXR5cGVvZiBhLmNvbXBvbmVudERpZENhdGNoJiYobnVsbD09PXVRfHwhdVEuaGFzKGEpKSkpcmV0dXJuIG4uZmxhZ3N8PTY1NTM2LGwmPS1sLG4ubGFuZXN8PWwsb0EobD1vRihsKSxlLG4sciksbFcobixsKSwhMTticmVhaztjYXNlIDIyOmlmKG51bGwhPT1uLm1lbW9pemVkU3RhdGUpcmV0dXJuIG4uZmxhZ3N8PTY1NTM2LCExfW49bi5yZXR1cm59d2hpbGUobnVsbCE9PW4pcmV0dXJuITF9KGUsbCx0LG4sdV8pKXt1TD0xLG9NKGUsck4obixlLmN1cnJlbnQpKSx1eD1udWxsO3JldHVybn19Y2F0Y2godCl7aWYobnVsbCE9PWwpdGhyb3cgdXg9bCx0O3VMPTEsb00oZSxyTihuLGUuY3VycmVudCkpLHV4PW51bGw7cmV0dXJufTMyNzY4JnQuZmxhZ3M/KHIkfHwxPT09cj9lPSEwOnVUfHwwIT0oMHgyMDAwMDAwMCZ1Xyk/ZT0hMToodUM9ZT0hMCwoMj09PXJ8fDk9PT1yfHwzPT09cnx8Nj09PXIpJiZudWxsIT09KHI9bDMuY3VycmVudCkmJjEzPT09ci50YWcmJihyLmZsYWdzfD0xNjM4NCkpLHNtKHQsZSkpOnNwKHQpfWZ1bmN0aW9uIHNwKGUpe3ZhciB0PWU7ZG97aWYoMCE9KDMyNzY4JnQuZmxhZ3MpKXJldHVybiB2b2lkIHNtKHQsdUMpO2U9dC5yZXR1cm47dmFyIG49ZnVuY3Rpb24oZSx0LG4pe3ZhciByPXQucGVuZGluZ1Byb3BzO3N3aXRjaChyVSh0KSx0LnRhZyl7Y2FzZSAxNjpjYXNlIDE1OmNhc2UgMDpjYXNlIDExOmNhc2UgNzpjYXNlIDg6Y2FzZSAxMjpjYXNlIDk6Y2FzZSAxNDpjYXNlIDE6cmV0dXJuIGlwKHQpLG51bGw7Y2FzZSAzOnJldHVybiBuPXQuc3RhdGVOb2RlLHI9bnVsbCxudWxsIT09ZSYmKHI9ZS5tZW1vaXplZFN0YXRlLmNhY2hlKSx0Lm1lbW9pemVkU3RhdGUuY2FjaGUhPT1yJiYodC5mbGFnc3w9MjA0OCkscjgobGkpLGVhKCksbi5wZW5kaW5nQ29udGV4dCYmKG4uY29udGV4dD1uLnBlbmRpbmdDb250ZXh0LG4ucGVuZGluZ0NvbnRleHQ9bnVsbCksKG51bGw9PT1lfHxudWxsPT09ZS5jaGlsZCkmJihyWSh0KT9paSh0KTpudWxsPT09ZXx8ZS5tZW1vaXplZFN0YXRlLmlzRGVoeWRyYXRlZCYmMD09KDI1NiZ0LmZsYWdzKXx8KHQuZmxhZ3N8PTEwMjQsclooKSkpLGlwKHQpLG51bGw7Y2FzZSAyNjp2YXIgbD10LnR5cGUsYT10Lm1lbW9pemVkU3RhdGU7cmV0dXJuIG51bGw9PT1lPyhpaSh0KSxudWxsIT09YT8oaXAodCksaXModCxhKSk6KGlwKHQpLGl1KHQsbCxudWxsLHIsbikpKTphP2EhPT1lLm1lbW9pemVkU3RhdGU/KGlpKHQpLGlwKHQpLGlzKHQsYSkpOihpcCh0KSx0LmZsYWdzJj0tMHgxMDAwMDAxKTooKGU9ZS5tZW1vaXplZFByb3BzKSE9PXImJmlpKHQpLGlwKHQpLGl1KHQsbCxlLHIsbikpLG51bGw7Y2FzZSAyNzppZihlaSh0KSxuPWVuLmN1cnJlbnQsbD10LnR5cGUsbnVsbCE9PWUmJm51bGwhPXQuc3RhdGVOb2RlKWUubWVtb2l6ZWRQcm9wcyE9PXImJmlpKHQpO2Vsc2V7aWYoIXIpe2lmKG51bGw9PT10LnN0YXRlTm9kZSl0aHJvdyBFcnJvcih1KDE2NikpO3JldHVybiBpcCh0KSx0LnN1YnRyZWVGbGFncyY9LTB4MjAwMDAwMSxudWxsfWU9ZWUuY3VycmVudCxyWSh0KT9yWCh0LGUpOih0LnN0YXRlTm9kZT1lPWNYKGwscixuKSxpaSh0KSl9cmV0dXJuIGlwKHQpLHQuc3VidHJlZUZsYWdzJj0tMHgyMDAwMDAxLG51bGw7Y2FzZSA1OmlmKGVpKHQpLGw9dC50eXBlLG51bGwhPT1lJiZudWxsIT10LnN0YXRlTm9kZSllLm1lbW9pemVkUHJvcHMhPT1yJiZpaSh0KTtlbHNle2lmKCFyKXtpZihudWxsPT09dC5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IodSgxNjYpKTtyZXR1cm4gaXAodCksdC5zdWJ0cmVlRmxhZ3MmPS0weDIwMDAwMDEsbnVsbH1pZihhPWVlLmN1cnJlbnQsclkodCkpclgodCxhKTtlbHNle3ZhciBvPWN1KGVuLmN1cnJlbnQpO3N3aXRjaChhKXtjYXNlIDE6YT1vLmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGwpO2JyZWFrO2Nhc2UgMjphPW8uY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIixsKTticmVhaztkZWZhdWx0OnN3aXRjaChsKXtjYXNlInN2ZyI6YT1vLmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGwpO2JyZWFrO2Nhc2UibWF0aCI6YT1vLmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCIsbCk7YnJlYWs7Y2FzZSJzY3JpcHQiOihhPW8uY3JlYXRlRWxlbWVudCgiZGl2IikpLmlubmVySFRNTD0iPHNjcmlwdD48L3NjcmlwdD4iLGE9YS5yZW1vdmVDaGlsZChhLmZpcnN0Q2hpbGQpO2JyZWFrO2Nhc2Uic2VsZWN0IjphPSJzdHJpbmciPT10eXBlb2Ygci5pcz9vLmNyZWF0ZUVsZW1lbnQoInNlbGVjdCIse2lzOnIuaXN9KTpvLmNyZWF0ZUVsZW1lbnQoInNlbGVjdCIpLHIubXVsdGlwbGU/YS5tdWx0aXBsZT0hMDpyLnNpemUmJihhLnNpemU9ci5zaXplKTticmVhaztkZWZhdWx0OmE9InN0cmluZyI9PXR5cGVvZiByLmlzP28uY3JlYXRlRWxlbWVudChsLHtpczpyLmlzfSk6by5jcmVhdGVFbGVtZW50KGwpfX1hW2VXXT10LGFbZXFdPXI7ZTpmb3Iobz10LmNoaWxkO251bGwhPT1vOyl7aWYoNT09PW8udGFnfHw2PT09by50YWcpYS5hcHBlbmRDaGlsZChvLnN0YXRlTm9kZSk7ZWxzZSBpZig0IT09by50YWcmJjI3IT09by50YWcmJm51bGwhPT1vLmNoaWxkKXtvLmNoaWxkLnJldHVybj1vLG89by5jaGlsZDtjb250aW51ZX1pZihvPT09dClicmVhaztmb3IoO251bGw9PT1vLnNpYmxpbmc7KXtpZihudWxsPT09by5yZXR1cm58fG8ucmV0dXJuPT09dClicmVhayBlO289by5yZXR1cm59by5zaWJsaW5nLnJldHVybj1vLnJldHVybixvPW8uc2libGluZ31zd2l0Y2godC5zdGF0ZU5vZGU9YSxjbChhLGwsciksbCl7Y2FzZSJidXR0b24iOmNhc2UiaW5wdXQiOmNhc2Uic2VsZWN0IjpjYXNlInRleHRhcmVhIjpyPSEhci5hdXRvRm9jdXM7YnJlYWs7Y2FzZSJpbWciOnI9ITA7YnJlYWs7ZGVmYXVsdDpyPSExfXImJmlpKHQpfX1yZXR1cm4gaXAodCksdC5zdWJ0cmVlRmxhZ3MmPS0weDIwMDAwMDEsaXUodCx0LnR5cGUsbnVsbD09PWU/bnVsbDplLm1lbW9pemVkUHJvcHMsdC5wZW5kaW5nUHJvcHMsbiksbnVsbDtjYXNlIDY6aWYoZSYmbnVsbCE9dC5zdGF0ZU5vZGUpZS5tZW1vaXplZFByb3BzIT09ciYmaWkodCk7ZWxzZXtpZigic3RyaW5nIiE9dHlwZW9mIHImJm51bGw9PT10LnN0YXRlTm9kZSl0aHJvdyBFcnJvcih1KDE2NikpO2lmKGU9ZW4uY3VycmVudCxyWSh0KSl7aWYoZT10LnN0YXRlTm9kZSxuPXQubWVtb2l6ZWRQcm9wcyxyPW51bGwsbnVsbCE9PShsPXJWKSlzd2l0Y2gobC50YWcpe2Nhc2UgMjc6Y2FzZSA1OnI9bC5tZW1vaXplZFByb3BzfWVbZVddPXQsKGU9ISEoZS5ub2RlVmFsdWU9PT1ufHxudWxsIT09ciYmITA9PT1yLnN1cHByZXNzSHlkcmF0aW9uV2FybmluZ3x8Y3QoZS5ub2RlVmFsdWUsbikpKXx8cksodCwhMCl9ZWxzZShlPWN1KGUpLmNyZWF0ZVRleHROb2RlKHIpKVtlV109dCx0LnN0YXRlTm9kZT1lfXJldHVybiBpcCh0KSxudWxsO2Nhc2UgMzE6aWYobj10Lm1lbW9pemVkU3RhdGUsbnVsbD09PWV8fG51bGwhPT1lLm1lbW9pemVkU3RhdGUpe2lmKHI9clkodCksbnVsbCE9PW4pe2lmKG51bGw9PT1lKXtpZighcil0aHJvdyBFcnJvcih1KDMxOCkpO2lmKCEoZT1udWxsIT09KGU9dC5tZW1vaXplZFN0YXRlKT9lLmRlaHlkcmF0ZWQ6bnVsbCkpdGhyb3cgRXJyb3IodSg1NTcpKTtlW2VXXT10fWVsc2UgckooKSwwPT0oMTI4JnQuZmxhZ3MpJiYodC5tZW1vaXplZFN0YXRlPW51bGwpLHQuZmxhZ3N8PTQ7aXAodCksZT0hMX1lbHNlIG49clooKSxudWxsIT09ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSYmKGUubWVtb2l6ZWRTdGF0ZS5oeWRyYXRpb25FcnJvcnM9biksZT0hMDtpZighZSl7aWYoMjU2JnQuZmxhZ3MpcmV0dXJuIGw3KHQpLHQ7cmV0dXJuIGw3KHQpLG51bGx9aWYoMCE9KDEyOCZ0LmZsYWdzKSl0aHJvdyBFcnJvcih1KDU1OCkpfXJldHVybiBpcCh0KSxudWxsO2Nhc2UgMTM6aWYocj10Lm1lbW9pemVkU3RhdGUsbnVsbD09PWV8fG51bGwhPT1lLm1lbW9pemVkU3RhdGUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUuZGVoeWRyYXRlZCl7aWYobD1yWSh0KSxudWxsIT09ciYmbnVsbCE9PXIuZGVoeWRyYXRlZCl7aWYobnVsbD09PWUpe2lmKCFsKXRocm93IEVycm9yKHUoMzE4KSk7aWYoIShsPW51bGwhPT0obD10Lm1lbW9pemVkU3RhdGUpP2wuZGVoeWRyYXRlZDpudWxsKSl0aHJvdyBFcnJvcih1KDMxNykpO2xbZVddPXR9ZWxzZSBySigpLDA9PSgxMjgmdC5mbGFncykmJih0Lm1lbW9pemVkU3RhdGU9bnVsbCksdC5mbGFnc3w9NDtpcCh0KSxsPSExfWVsc2UgbD1yWigpLG51bGwhPT1lJiZudWxsIT09ZS5tZW1vaXplZFN0YXRlJiYoZS5tZW1vaXplZFN0YXRlLmh5ZHJhdGlvbkVycm9ycz1sKSxsPSEwO2lmKCFsKXtpZigyNTYmdC5mbGFncylyZXR1cm4gbDcodCksdDtyZXR1cm4gbDcodCksbnVsbH19aWYobDcodCksMCE9KDEyOCZ0LmZsYWdzKSlyZXR1cm4gdC5sYW5lcz1uLHQ7cmV0dXJuIG49bnVsbCE9PXIsZT1udWxsIT09ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSxuJiYocj10LmNoaWxkLGw9bnVsbCxudWxsIT09ci5hbHRlcm5hdGUmJm51bGwhPT1yLmFsdGVybmF0ZS5tZW1vaXplZFN0YXRlJiZudWxsIT09ci5hbHRlcm5hdGUubWVtb2l6ZWRTdGF0ZS5jYWNoZVBvb2wmJihsPXIuYWx0ZXJuYXRlLm1lbW9pemVkU3RhdGUuY2FjaGVQb29sLnBvb2wpLGE9bnVsbCxudWxsIT09ci5tZW1vaXplZFN0YXRlJiZudWxsIT09ci5tZW1vaXplZFN0YXRlLmNhY2hlUG9vbCYmKGE9ci5tZW1vaXplZFN0YXRlLmNhY2hlUG9vbC5wb29sKSxhIT09bCYmKHIuZmxhZ3N8PTIwNDgpKSxuIT09ZSYmbiYmKHQuY2hpbGQuZmxhZ3N8PTgxOTIpLGljKHQsdC51cGRhdGVRdWV1ZSksaXAodCksbnVsbDtjYXNlIDQ6cmV0dXJuIGVhKCksbnVsbD09PWUmJnMxKHQuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pLHQuZmxhZ3N8PTB4NDAwMDAwMCxpcCh0KSxudWxsO2Nhc2UgMTA6cmV0dXJuIHI4KHQudHlwZSksaXAodCksbnVsbDtjYXNlIDE5OmlmKGFuKHQpLG51bGw9PT0ocj10Lm1lbW9pemVkU3RhdGUpKXJldHVybiBpcCh0KSxudWxsO2lmKGw9MCE9KDEyOCZ0LmZsYWdzKSxudWxsPT09KGE9ci5yZW5kZXJpbmcpKWlmKGwpaWQociwhMSk7ZWxzZXtpZigwIT09dUx8fG51bGwhPT1lJiYwIT0oMTI4JmUuZmxhZ3MpKWZvcihlPXQuY2hpbGQ7bnVsbCE9PWU7KXtpZihudWxsIT09KGE9YXIoZSkpKXtmb3IodC5mbGFnc3w9MTI4LGlkKHIsITEpLHQudXBkYXRlUXVldWU9ZT1hLnVwZGF0ZVF1ZXVlLGljKHQsZSksdC5zdWJ0cmVlRmxhZ3M9MCxlPW4sbj10LmNoaWxkO251bGwhPT1uOylydyhuLGUpLG49bi5zaWJsaW5nO3JldHVybiBhdCh0LDEmYWUuY3VycmVudHwyKSxyJCYmckYodCxyLnRyZWVGb3JrQ291bnQpLHQuY2hpbGR9ZT1lLnNpYmxpbmd9bnVsbCE9PXIudGFpbCYmZXYoKT51SCYmKHQuZmxhZ3N8PTEyOCxsPSEwLGlkKHIsITEpLHQubGFuZXM9NDE5NDMwNCl9ZWxzZXtpZighbClpZihudWxsIT09KGU9YXIoYSkpKXtpZih0LmZsYWdzfD0xMjgsbD0hMCx0LnVwZGF0ZVF1ZXVlPWU9ZS51cGRhdGVRdWV1ZSxpYyh0LGUpLGlkKHIsITApLG51bGw9PT1yLnRhaWwmJiJjb2xsYXBzZWQiIT09ci50YWlsTW9kZSYmInZpc2libGUiIT09ci50YWlsTW9kZSYmIWEuYWx0ZXJuYXRlJiYhciQpcmV0dXJuIGlwKHQpLG51bGx9ZWxzZSAyKmV2KCktci5yZW5kZXJpbmdTdGFydFRpbWU+dUgmJjB4MjAwMDAwMDAhPT1uJiYodC5mbGFnc3w9MTI4LGw9ITAsaWQociwhMSksdC5sYW5lcz00MTk0MzA0KTtyLmlzQmFja3dhcmRzPyhhLnNpYmxpbmc9dC5jaGlsZCx0LmNoaWxkPWEpOihudWxsIT09KGU9ci5sYXN0KT9lLnNpYmxpbmc9YTp0LmNoaWxkPWEsci5sYXN0PWEpfWlmKG51bGwhPT1yLnRhaWwpe2U9ci50YWlsO2U6e2ZvcihuPWU7bnVsbCE9PW47KXtpZihudWxsIT09bi5hbHRlcm5hdGUpe249ITE7YnJlYWsgZX1uPW4uc2libGluZ31uPSEwfXJldHVybiByLnJlbmRlcmluZz1lLHIudGFpbD1lLnNpYmxpbmcsci5yZW5kZXJpbmdTdGFydFRpbWU9ZXYoKSxlLnNpYmxpbmc9bnVsbCxhPWFlLmN1cnJlbnQsYT1sPzEmYXwyOjEmYSwidmlzaWJsZSI9PT1yLnRhaWxNb2RlfHwiY29sbGFwc2VkIj09PXIudGFpbE1vZGV8fCFufHxyJD9hdCh0LGEpOihuPWEsWihsMyx0KSxaKGFlLG4pLG51bGw9PT1sNCYmKGw0PXQpKSxyJCYmckYodCxyLnRyZWVGb3JrQ291bnQpLGV9cmV0dXJuIGlwKHQpLG51bGw7Y2FzZSAyMjpjYXNlIDIzOnJldHVybiBsNyh0KSxsMigpLHI9bnVsbCE9PXQubWVtb2l6ZWRTdGF0ZSxudWxsIT09ZT9udWxsIT09ZS5tZW1vaXplZFN0YXRlIT09ciYmKHQuZmxhZ3N8PTgxOTIpOnImJih0LmZsYWdzfD04MTkyKSxyPzAhPSgweDIwMDAwMDAwJm4pJiYwPT0oMTI4JnQuZmxhZ3MpJiYoaXAodCksNiZ0LnN1YnRyZWVGbGFncyYmKHQuZmxhZ3N8PTgxOTIpKTppcCh0KSxudWxsIT09KG49dC51cGRhdGVRdWV1ZSkmJmljKHQsbi5yZXRyeVF1ZXVlKSxuPW51bGwsbnVsbCE9PWUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUuY2FjaGVQb29sJiYobj1lLm1lbW9pemVkU3RhdGUuY2FjaGVQb29sLnBvb2wpLHI9bnVsbCxudWxsIT09dC5tZW1vaXplZFN0YXRlJiZudWxsIT09dC5tZW1vaXplZFN0YXRlLmNhY2hlUG9vbCYmKHI9dC5tZW1vaXplZFN0YXRlLmNhY2hlUG9vbC5wb29sKSxyIT09biYmKHQuZmxhZ3N8PTIwNDgpLG51bGwhPT1lJiZKKGx5KSxudWxsO2Nhc2UgMjQ6cmV0dXJuIG49bnVsbCxudWxsIT09ZSYmKG49ZS5tZW1vaXplZFN0YXRlLmNhY2hlKSx0Lm1lbW9pemVkU3RhdGUuY2FjaGUhPT1uJiYodC5mbGFnc3w9MjA0OCkscjgobGkpLGlwKHQpLG51bGw7Y2FzZSAyNTpyZXR1cm4gbnVsbDtjYXNlIDMwOnJldHVybiB0LmZsYWdzfD0weDIwMDAwMDAsaXAodCksbnVsbH10aHJvdyBFcnJvcih1KDE1Nix0LnRhZykpfSh0LmFsdGVybmF0ZSx0LHV6KTtpZihudWxsIT09bil7dXg9bjtyZXR1cm59aWYobnVsbCE9PSh0PXQuc2libGluZykpe3V4PXQ7cmV0dXJufXV4PXQ9ZX13aGlsZShudWxsIT09dCkwPT09dUwmJih1TD01KX1mdW5jdGlvbiBzbShlLHQpe2Rve3ZhciBuPWZ1bmN0aW9uKGUsdCl7c3dpdGNoKHJVKHQpLHQudGFnKXtjYXNlIDE6cmV0dXJuIDY1NTM2JihlPXQuZmxhZ3MpPyh0LmZsYWdzPS02NTUzNyZlfDEyOCx0KTpudWxsO2Nhc2UgMzpyZXR1cm4gcjgobGkpLGVhKCksMCE9KDY1NTM2JihlPXQuZmxhZ3MpKSYmMD09KDEyOCZlKT8odC5mbGFncz0tNjU1MzcmZXwxMjgsdCk6bnVsbDtjYXNlIDI2OmNhc2UgMjc6Y2FzZSA1OnJldHVybiBlaSh0KSxudWxsO2Nhc2UgMzE6aWYobnVsbCE9PXQubWVtb2l6ZWRTdGF0ZSl7aWYobDcodCksbnVsbD09PXQuYWx0ZXJuYXRlKXRocm93IEVycm9yKHUoMzQwKSk7ckooKX1yZXR1cm4gNjU1MzYmKGU9dC5mbGFncyk/KHQuZmxhZ3M9LTY1NTM3JmV8MTI4LHQpOm51bGw7Y2FzZSAxMzppZihsNyh0KSxudWxsIT09KGU9dC5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PWUuZGVoeWRyYXRlZCl7aWYobnVsbD09PXQuYWx0ZXJuYXRlKXRocm93IEVycm9yKHUoMzQwKSk7ckooKX1yZXR1cm4gNjU1MzYmKGU9dC5mbGFncyk/KHQuZmxhZ3M9LTY1NTM3JmV8MTI4LHQpOm51bGw7Y2FzZSAxOTpyZXR1cm4gYW4odCksNjU1MzYmKGU9dC5mbGFncyk/KHQuZmxhZ3M9LTY1NTM3JmV8MTI4LG51bGwhPT0oZT10Lm1lbW9pemVkU3RhdGUpJiYoZS5yZW5kZXJpbmc9bnVsbCxlLnRhaWw9bnVsbCksdC5mbGFnc3w9NCx0KTpudWxsO2Nhc2UgNDpyZXR1cm4gZWEoKSxudWxsO2Nhc2UgMTA6cmV0dXJuIHI4KHQudHlwZSksbnVsbDtjYXNlIDIyOmNhc2UgMjM6cmV0dXJuIGw3KHQpLGwyKCksbnVsbCE9PWUmJkoobHkpLDY1NTM2JihlPXQuZmxhZ3MpPyh0LmZsYWdzPS02NTUzNyZlfDEyOCx0KTpudWxsO2Nhc2UgMjQ6cmV0dXJuIHI4KGxpKSxudWxsO2RlZmF1bHQ6cmV0dXJuIG51bGx9fShlLmFsdGVybmF0ZSxlKTtpZihudWxsIT09bil7bi5mbGFncyY9MzI3NjcsdXg9bjtyZXR1cm59aWYobnVsbCE9PShuPWUucmV0dXJuKSYmKG4uZmxhZ3N8PTMyNzY4LG4uc3VidHJlZUZsYWdzPTAsbi5kZWxldGlvbnM9bnVsbCksIXQmJm51bGwhPT0oZT1lLnNpYmxpbmcpKXt1eD1lO3JldHVybn11eD1lPW59d2hpbGUobnVsbCE9PWUpdUw9Nix1eD1udWxsfWZ1bmN0aW9uIHNoKGUsdCxuLHIsbCxhLG8saSxzLGMsZil7ZS5jYW5jZWxQZW5kaW5nQ29tbWl0PW51bGw7ZG8gc1MoKTt3aGlsZSgwIT09dVcpaWYoMCE9KDYmdVMpKXRocm93IEVycm9yKHUoMzI3KSk7aWYobnVsbCE9PXQpe3ZhciBkO2lmKHQ9PT1lLmN1cnJlbnQpdGhyb3cgRXJyb3IodSgxNzcpKTtpZighZnVuY3Rpb24oZSx0LG4scixsLGEpe3ZhciBvPWUucGVuZGluZ0xhbmVzO2UucGVuZGluZ0xhbmVzPW4sZS5zdXNwZW5kZWRMYW5lcz0wLGUucGluZ2VkTGFuZXM9MCxlLndhcm1MYW5lcz0wLGUuZXhwaXJlZExhbmVzJj1uLGUuZW50YW5nbGVkTGFuZXMmPW4sZS5lcnJvclJlY292ZXJ5RGlzYWJsZWRMYW5lcyY9bixlLnNoZWxsU3VzcGVuZENvdW50ZXI9MDt2YXIgaT1lLmVudGFuZ2xlbWVudHMsdT1lLmV4cGlyYXRpb25UaW1lcyxzPWUuaGlkZGVuVXBkYXRlcztmb3Iobj1vJn5uOzA8bjspe3ZhciBjPTMxLWVQKG4pLGY9MTw8YztpW2NdPTAsdVtjXT0tMTt2YXIgZD1zW2NdO2lmKG51bGwhPT1kKWZvcihzW2NdPW51bGwsYz0wO2M8ZC5sZW5ndGg7YysrKXt2YXIgcD1kW2NdO251bGwhPT1wJiYocC5sYW5lJj0tMHgyMDAwMDAwMSl9biY9fmZ9MCE9PXImJmVBKGUsciwwKSwwIT09YSYmMD09PWwmJjAhPT1lLnRhZyYmKGUuc3VzcGVuZGVkTGFuZXN8PWEmfihvJn50KSl9KGUsbixhPXQubGFuZXN8dC5jaGlsZExhbmVzfHJ1LG8saSxzKSxlPT09dUUmJih1eD11RT1udWxsLHVfPTApLHVLPXQsdXE9ZSx1WD1uLHVHPWEsdVk9bCx1Sj1yLHUwPW51bGwsKDB4MTNmZmZmMDAmbik9PT1uPyhkPWUudHJhbnNpdGlvblR5cGVzLGUudHJhbnNpdGlvblR5cGVzPW51bGwsdTE9ZCxyPTEwMjYyKToodTE9bnVsbCxyPTEwMjU2KSwwIT0odC5zdWJ0cmVlRmxhZ3Mmcil8fDAhPSh0LmZsYWdzJnIpPyhlLmNhbGxiYWNrTm9kZT1udWxsLGUuY2FsbGJhY2tQcmlvcml0eT0wLGVwKGVrLGZ1bmN0aW9uKCl7cmV0dXJuIHNFKCksbnVsbH0pKTooZS5jYWxsYmFja05vZGU9bnVsbCxlLmNhbGxiYWNrUHJpb3JpdHk9MCksaU89ITEscj0wIT0oMTM4NzgmdC5mbGFncyksMCE9KDEzODc4JnQuc3VidHJlZUZsYWdzKXx8cil7cj1XLlQsVy5UPW51bGwsbD1xLnAscS5wPTIsbz11Uyx1U3w9NDt0cnl7IWZ1bmN0aW9uKGUsdCxuKXtpZihlPWUuY29udGFpbmVySW5mbyxjbz1mXyxuSChlPW5WKGUpKSl7aWYoInNlbGVjdGlvblN0YXJ0ImluIGUpdmFyIHI9e3N0YXJ0OmUuc2VsZWN0aW9uU3RhcnQsZW5kOmUuc2VsZWN0aW9uRW5kfTtlbHNlIGU6e3ZhciBsPShyPShyPWUub3duZXJEb2N1bWVudCkmJnIuZGVmYXVsdFZpZXd8fHdpbmRvdykuZ2V0U2VsZWN0aW9uJiZyLmdldFNlbGVjdGlvbigpO2lmKGwmJjAhPT1sLnJhbmdlQ291bnQpe3I9bC5hbmNob3JOb2RlO3ZhciBhLG89bC5hbmNob3JPZmZzZXQsaT1sLmZvY3VzTm9kZTtsPWwuZm9jdXNPZmZzZXQ7dHJ5e3Iubm9kZVR5cGUsaS5ub2RlVHlwZX1jYXRjaChlKXtyPW51bGw7YnJlYWsgZX12YXIgdT0wLHM9LTEsYz0tMSxmPTAsZD0wLHA9ZSxtPW51bGw7dDpmb3IoOzspe2Zvcig7cCE9PXJ8fDAhPT1vJiYzIT09cC5ub2RlVHlwZXx8KHM9dStvKSxwIT09aXx8MCE9PWwmJjMhPT1wLm5vZGVUeXBlfHwoYz11K2wpLDM9PT1wLm5vZGVUeXBlJiYodSs9cC5ub2RlVmFsdWUubGVuZ3RoKSxudWxsIT09KGE9cC5maXJzdENoaWxkKTspbT1wLHA9YTtmb3IoOzspe2lmKHA9PT1lKWJyZWFrIHQ7aWYobT09PXImJisrZj09PW8mJihzPXUpLG09PT1pJiYrK2Q9PT1sJiYoYz11KSxudWxsIT09KGE9cC5uZXh0U2libGluZykpYnJlYWs7bT0ocD1tKS5wYXJlbnROb2RlfXA9YX1yPS0xPT09c3x8LTE9PT1jP251bGw6e3N0YXJ0OnMsZW5kOmN9fWVsc2Ugcj1udWxsfXI9cnx8e3N0YXJ0OjAsZW5kOjB9fWVsc2Ugcj1udWxsO2ZvcihjaT17Zm9jdXNlZEVsZW06ZSxzZWxlY3Rpb25SYW5nZTpyfSxmXz0hMSxuPSgweDEzZmZmZjAwJm4pPT09bixpRz10LHQ9bj85MjcwOjEwMjg7bnVsbCE9PWlHOyl7aWYoZT1pRyxuJiZudWxsIT09KHI9ZS5kZWxldGlvbnMpKWZvcihvPTA7bzxyLmxlbmd0aDtvKyspbiYmaUIocltvXSk7aWYobnVsbD09PWUuYWx0ZXJuYXRlJiYwIT0oMiZlLmZsYWdzKSluJiZpTChlKSxpMShuKTtlbHNle2lmKDIyPT09ZS50YWcpe2lmKHI9ZS5hbHRlcm5hdGUsbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSl7bnVsbCE9PXImJm51bGw9PT1yLm1lbW9pemVkU3RhdGUmJm4mJmlCKHIpLGkxKG4pO2NvbnRpbnVlfWVsc2UgaWYobnVsbCE9PXImJm51bGwhPT1yLm1lbW9pemVkU3RhdGUpe24mJmlMKGUpLGkxKG4pO2NvbnRpbnVlfX1yPWUuY2hpbGQsMCE9KGUuc3VidHJlZUZsYWdzJnQpJiZudWxsIT09cj8oci5yZXR1cm49ZSxpRz1yKToobiYmZnVuY3Rpb24gZSh0KXtmb3IodD10LmNoaWxkO251bGwhPT10Oyl7aWYoMzA9PT10LnRhZyl7dmFyIG49dC5tZW1vaXplZFByb3BzLHI9cm4obix0LnN0YXRlTm9kZSk7bj1ybChuLmRlZmF1bHQsbi51cGRhdGUpLHQuZmxhZ3MmPS01LCJub25lIiE9PW4mJmlEKHQscixuLHQubWVtb2l6ZWRTdGF0ZT1bXSwhMSl9ZWxzZSAwIT0oMHgyMDAwMDAwJnQuc3VidHJlZUZsYWdzKSYmZSh0KTt0PXQuc2libGluZ319KGUpLGkxKG4pKX19aXo9bnVsbH0oZSx0LG4pfWZpbmFsbHl7dVM9byxxLnA9bCxXLlQ9cn19dVc9MSwodD1pTyk/dVo9ZnVuY3Rpb24oZSx0LG4scixsLGEsbyxpLHUpe3ZhciBzPTk9PT10Lm5vZGVUeXBlP3Q6dC5vd25lckRvY3VtZW50O3RyeXt2YXIgYz1zLnN0YXJ0Vmlld1RyYW5zaXRpb24oe3VwZGF0ZTpmdW5jdGlvbigpe3ZhciB0PXMuZGVmYXVsdFZpZXcsbj10Lm5hdmlnYXRpb24mJnQubmF2aWdhdGlvbi50cmFuc2l0aW9uLG89cy5mb250cy5zdGF0dXM7cigpO3ZhciBpPVtdO2lmKCJsb2FkZWQiPT09byYmKHMuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCwibG9hZGluZyI9PT1zLmZvbnRzLnN0YXR1cyYmaS5wdXNoKHMuZm9udHMucmVhZHkpKSxvPWkubGVuZ3RoLG51bGwhPT1lKWZvcih2YXIgdT1lLnN1c3BlbnNleUltYWdlcyxjPTAsZj0wO2Y8dS5sZW5ndGg7ZisrKXt2YXIgZD11W2ZdO2lmKCFkLmNvbXBsZXRlKXt2YXIgcD1kLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2lmKDA8cC5ib3R0b20mJjA8cC5yaWdodCYmcC50b3A8dC5pbm5lckhlaWdodCYmcC5sZWZ0PHQuaW5uZXJXaWR0aCl7aWYoKGMrPWZ1KGQpKT5mYyl7aS5sZW5ndGg9bzticmVha31kPW5ldyBQcm9taXNlKGNQLmJpbmQoZCkpLGkucHVzaChkKX19fXJldHVybiAwPGkubGVuZ3RoPyh0PVByb21pc2UucmFjZShbUHJvbWlzZS5hbGwoaSksbmV3IFByb21pc2UoZnVuY3Rpb24oZSl7cmV0dXJuIHNldFRpbWVvdXQoZSw1MDApfSldKS50aGVuKGwsbCksKG4/UHJvbWlzZS5hbGxTZXR0bGVkKFtuLmZpbmlzaGVkLHRdKTp0KS50aGVuKGEsYSkpOihsKCksbik/bi5maW5pc2hlZC50aGVuKGEsYSk6dm9pZCBhKCl9LHR5cGVzOm59KTtzLl9fcmVhY3RWaWV3VHJhbnNpdGlvbj1jO3ZhciBmPVtdO3JldHVybiBjLnJlYWR5LnRoZW4oZnVuY3Rpb24oKXtmb3IodmFyIGU9cy5kb2N1bWVudEVsZW1lbnQuZ2V0QW5pbWF0aW9ucyh7c3VidHJlZTohMH0pLHQ9MDt0PGUubGVuZ3RoO3QrKyl7dmFyIG49ZVt0XSxyPW4uZWZmZWN0LGw9ci5wc2V1ZG9FbGVtZW50O2lmKG51bGwhPWwmJmwuc3RhcnRzV2l0aCgiOjp2aWV3LXRyYW5zaXRpb24iKSl7Zi5wdXNoKG4pLG49ci5nZXRLZXlmcmFtZXMoKTtmb3IodmFyIGE9bD12b2lkIDAsaT0hMCx1PTA7dTxuLmxlbmd0aDt1Kyspe3ZhciBjPW5bdV0sZD1jLndpZHRoO2lmKHZvaWQgMD09PWwpbD1kO2Vsc2UgaWYobCE9PWQpe2k9ITE7YnJlYWt9aWYoZD1jLmhlaWdodCx2b2lkIDA9PT1hKWE9ZDtlbHNlIGlmKGEhPT1kKXtpPSExO2JyZWFrfWRlbGV0ZSBjLndpZHRoLGRlbGV0ZSBjLmhlaWdodCwibm9uZSI9PT1jLnRyYW5zZm9ybSYmZGVsZXRlIGMudHJhbnNmb3JtfWkmJnZvaWQgMCE9PWwmJnZvaWQgMCE9PWEmJihyLnNldEtleWZyYW1lcyhuKSwoaT1nZXRDb21wdXRlZFN0eWxlKHIudGFyZ2V0LHIucHNldWRvRWxlbWVudCkpLndpZHRoIT09bHx8aS5oZWlnaHQhPT1hKSYmKChpPW5bMF0pLndpZHRoPWwsaS5oZWlnaHQ9YSwoaT1uW24ubGVuZ3RoLTFdKS53aWR0aD1sLGkuaGVpZ2h0PWEsci5zZXRLZXlmcmFtZXMobikpfX1vKCl9LGZ1bmN0aW9uKGUpe3MuX19yZWFjdFZpZXdUcmFuc2l0aW9uPT09YyYmKHMuX19yZWFjdFZpZXdUcmFuc2l0aW9uPW51bGwpO3RyeXsib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiYiSW52YWxpZFN0YXRlRXJyb3IiPT09ZS5uYW1lJiYoIlZpZXcgdHJhbnNpdGlvbiB3YXMgc2tpcHBlZCBiZWNhdXNlIGRvY3VtZW50IHZpc2liaWxpdHkgc3RhdGUgaXMgaGlkZGVuLiI9PT1lLm1lc3NhZ2V8fCJTa2lwcGluZyB2aWV3IHRyYW5zaXRpb24gYmVjYXVzZSBkb2N1bWVudCB2aXNpYmlsaXR5IHN0YXRlIGhhcyBiZWNvbWUgaGlkZGVuLiI9PT1lLm1lc3NhZ2V8fCJTa2lwcGluZyB2aWV3IHRyYW5zaXRpb24gYmVjYXVzZSB2aWV3cG9ydCBzaXplIGNoYW5nZWQuIj09PWUubWVzc2FnZXx8IlRyYW5zaXRpb24gd2FzIGFib3J0ZWQgYmVjYXVzZSBvZiBpbnZhbGlkIHN0YXRlIj09PWUubWVzc2FnZSkmJihlPW51bGwpLG51bGwhPT1lJiZ1KGUpfWZpbmFsbHl7cigpLGwoKSxvKCl9fSksYy5maW5pc2hlZC5maW5hbGx5KGZ1bmN0aW9uKCl7Zm9yKHZhciBlPTA7ZTxmLmxlbmd0aDtlKyspZltlXS5jYW5jZWwoKTtzLl9fcmVhY3RWaWV3VHJhbnNpdGlvbj09PWMmJihzLl9fcmVhY3RWaWV3VHJhbnNpdGlvbj1udWxsKSxpKCl9KSxjfWNhdGNoKGUpe3JldHVybiByKCksbCgpLG8oKSxudWxsfX0oZixlLmNvbnRhaW5lckluZm8sdTEsc3ksc2Isc3Ysc3csc0Usc2csbnVsbCxudWxsKTooc3koKSxzYigpLHN3KCkpfX1mdW5jdGlvbiBzZyhlKXswIT09dVcmJigwLHVxLm9uUmVjb3ZlcmFibGVFcnJvcikoZSx7Y29tcG9uZW50U3RhY2s6bnVsbH0pfWZ1bmN0aW9uIHN2KCl7Mz09PXVXJiYodVc9MCx1byh1Syx1cSksdVc9NCl9ZnVuY3Rpb24gc3koKXtpZigxPT09dVcpe3VXPTA7dmFyIGU9dXEsdD11SyxuPXVYLHI9MCE9KDEzODc4JnQuZmxhZ3MpO2lmKDAhPSgxMzg3OCZ0LnN1YnRyZWVGbGFncyl8fHIpe3I9Vy5ULFcuVD1udWxsO3ZhciBsPXEucDtxLnA9Mjt2YXIgYT11Uzt1U3w9NDt0cnl7aUo9aVo9ITEsdXIodCxlLG4pLG49Y2k7dmFyIG89blYoZS5jb250YWluZXJJbmZvKSxpPW4uZm9jdXNlZEVsZW0sdT1uLnNlbGVjdGlvblJhbmdlO2lmKG8hPT1pJiZpJiZpLm93bmVyRG9jdW1lbnQmJmZ1bmN0aW9uIGUodCxuKXtyZXR1cm4hIXQmJiEhbiYmKHQ9PT1ufHwoIXR8fDMhPT10Lm5vZGVUeXBlKSYmKG4mJjM9PT1uLm5vZGVUeXBlP2UodCxuLnBhcmVudE5vZGUpOiJjb250YWlucyJpbiB0P3QuY29udGFpbnMobik6ISF0LmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uJiYhISgxNiZ0LmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKG4pKSkpfShpLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LGkpKXtpZihudWxsIT09dSYmbkgoaSkpe3ZhciBzPXUuc3RhcnQsYz11LmVuZDtpZih2b2lkIDA9PT1jJiYoYz1zKSwic2VsZWN0aW9uU3RhcnQiaW4gaSlpLnNlbGVjdGlvblN0YXJ0PXMsaS5zZWxlY3Rpb25FbmQ9TWF0aC5taW4oYyxpLnZhbHVlLmxlbmd0aCk7ZWxzZXt2YXIgZj1pLm93bmVyRG9jdW1lbnR8fGRvY3VtZW50LGQ9ZiYmZi5kZWZhdWx0Vmlld3x8d2luZG93O2lmKGQuZ2V0U2VsZWN0aW9uKXt2YXIgcD1kLmdldFNlbGVjdGlvbigpLG09aS50ZXh0Q29udGVudC5sZW5ndGgsaD1NYXRoLm1pbih1LnN0YXJ0LG0pLGc9dm9pZCAwPT09dS5lbmQ/aDpNYXRoLm1pbih1LmVuZCxtKTshcC5leHRlbmQmJmg+ZyYmKG89ZyxnPWgsaD1vKTt2YXIgdj1uQihpLGgpLHk9bkIoaSxnKTtpZih2JiZ5JiYoMSE9PXAucmFuZ2VDb3VudHx8cC5hbmNob3JOb2RlIT09di5ub2RlfHxwLmFuY2hvck9mZnNldCE9PXYub2Zmc2V0fHxwLmZvY3VzTm9kZSE9PXkubm9kZXx8cC5mb2N1c09mZnNldCE9PXkub2Zmc2V0KSl7dmFyIGI9Zi5jcmVhdGVSYW5nZSgpO2Iuc2V0U3RhcnQodi5ub2RlLHYub2Zmc2V0KSxwLnJlbW92ZUFsbFJhbmdlcygpLGg+Zz8ocC5hZGRSYW5nZShiKSxwLmV4dGVuZCh5Lm5vZGUseS5vZmZzZXQpKTooYi5zZXRFbmQoeS5ub2RlLHkub2Zmc2V0KSxwLmFkZFJhbmdlKGIpKX19fX1mb3IoZj1bXSxwPWk7cD1wLnBhcmVudE5vZGU7KTE9PT1wLm5vZGVUeXBlJiZmLnB1c2goe2VsZW1lbnQ6cCxsZWZ0OnAuc2Nyb2xsTGVmdCx0b3A6cC5zY3JvbGxUb3B9KTtmb3IoImZ1bmN0aW9uIj09dHlwZW9mIGkuZm9jdXMmJmkuZm9jdXMoKSxpPTA7aTxmLmxlbmd0aDtpKyspe3ZhciB3PWZbaV07dy5lbGVtZW50LnNjcm9sbExlZnQ9dy5sZWZ0LHcuZWxlbWVudC5zY3JvbGxUb3A9dy50b3B9fWZfPSEhY28sY2k9Y289bnVsbH1maW5hbGx5e3VTPWEscS5wPWwsVy5UPXJ9fWUuY3VycmVudD10LHVXPTJ9fWZ1bmN0aW9uIHNiKCl7aWYoMj09PXVXKXt1Vz0wO3ZhciBlPXVxLHQ9dUssbj0wIT0oODc3MiZ0LmZsYWdzKTtpZigwIT0oODc3MiZ0LnN1YnRyZWVGbGFncyl8fG4pe249Vy5ULFcuVD1udWxsO3ZhciByPXEucDtxLnA9Mjt2YXIgbD11Uzt1U3w9NDt0cnl7aTIoZSx0LmFsdGVybmF0ZSx0KX1maW5hbGx5e3VTPWwscS5wPXIsVy5UPW59fXVXPTN9fWZ1bmN0aW9uIHN3KCl7aWYoND09PXVXfHwzPT09dVcpe3VXPTAsdVo9bnVsbCxlZygpO3ZhciBlPXVxLHQ9dUssbj11WCxyPXVKLGw9KDB4MTNmZmZmMDAmbik9PT1uPzEwMjYyOjEwMjU2O2lmKDAhPSh0LnN1YnRyZWVGbGFncyZsKXx8MCE9KHQuZmxhZ3MmbCk/dVc9NToodVc9MCx1Sz11cT1udWxsLHNrKGUsZS5wZW5kaW5nTGFuZXMpKSwwPT09KGw9ZS5wZW5kaW5nTGFuZXMpJiYodVE9bnVsbCksZVYobiksdD10LnN0YXRlTm9kZSxlXyYmImZ1bmN0aW9uIj09dHlwZW9mIGVfLm9uQ29tbWl0RmliZXJSb290KXRyeXtlXy5vbkNvbW1pdEZpYmVyUm9vdChleCx0LHZvaWQgMCwxMjg9PSgxMjgmdC5jdXJyZW50LmZsYWdzKSl9Y2F0Y2goZSl7fWlmKG51bGwhPT1yKXt0PVcuVCxsPXEucCxxLnA9MixXLlQ9bnVsbDt0cnl7Zm9yKHZhciBhPWUub25SZWNvdmVyYWJsZUVycm9yLG89MDtvPHIubGVuZ3RoO28rKyl7dmFyIGk9cltvXTthKGkudmFsdWUse2NvbXBvbmVudFN0YWNrOmkuc3RhY2t9KX19ZmluYWxseXtXLlQ9dCxxLnA9bH19aWYocj11MCxhPXUxLHUxPW51bGwsbnVsbCE9PXIpZm9yKHUwPW51bGwsbnVsbD09PWEmJihhPVtdKSxpPTA7aTxyLmxlbmd0aDtpKyspKDAscltpXSkoYSk7MCE9KDMmdVgpJiZzUygpLHNGKGUpLGw9ZS5wZW5kaW5nTGFuZXMsMCE9KDI2MTkzMCZuKSYmMCE9KDQyJmwpP2U9PT11Mz91MisrOih1Mj0wLHUzPWUpOnUyPTAsc0EoMCwhMSl9fWZ1bmN0aW9uIHNrKGUsdCl7MD09KGUucG9vbGVkQ2FjaGVMYW5lcyY9dCkmJm51bGwhPSh0PWUucG9vbGVkQ2FjaGUpJiYoZS5wb29sZWRDYWNoZT1udWxsLGxzKHQpKX1mdW5jdGlvbiBzUygpe3JldHVybiBudWxsIT09dVomJih1Wi5za2lwVHJhbnNpdGlvbigpLHVaPW51bGwpLHN5KCksc2IoKSxzdygpLHNFKCl9ZnVuY3Rpb24gc0UoKXtpZig1IT09dVcpcmV0dXJuITE7dmFyIGU9dXEsdD11Rzt1Rz0wO3ZhciBuPWVWKHVYKSxyPVcuVCxsPXEucDt0cnl7cS5wPTMyPm4/MzI6bixXLlQ9bnVsbCxuPXVZLHVZPW51bGw7dmFyIGE9dXEsbz11WDtpZih1Vz0wLHVLPXVxPW51bGwsdVg9MCwwIT0oNiZ1UykpdGhyb3cgRXJyb3IodSgzMzEpKTt2YXIgaT11UztpZih1U3w9NCx1eShhLmN1cnJlbnQpLHVmKGEsYS5jdXJyZW50LG8sbiksdVM9aSxzQSgwLCExKSxlXyYmImZ1bmN0aW9uIj09dHlwZW9mIGVfLm9uUG9zdENvbW1pdEZpYmVyUm9vdCl0cnl7ZV8ub25Qb3N0Q29tbWl0RmliZXJSb290KGV4LGEpfWNhdGNoKGUpe31yZXR1cm4hMH1maW5hbGx5e3EucD1sLFcuVD1yLHNrKGUsdCl9fWZ1bmN0aW9uIHN4KGUsdCxuKXt0PXJOKG4sdCksdD1vRChlLnN0YXRlTm9kZSx0LDIpLG51bGwhPT0oZT1sJChlLHQsMikpJiYoZUYoZSwyKSxzRihlKSl9ZnVuY3Rpb24gc18oZSx0LG4pe2lmKDM9PT1lLnRhZylzeChlLGUsbik7ZWxzZSBmb3IoO251bGwhPT10Oyl7aWYoMz09PXQudGFnKXtzeCh0LGUsbik7YnJlYWt9aWYoMT09PXQudGFnKXt2YXIgcj10LnN0YXRlTm9kZTtpZigiZnVuY3Rpb24iPT10eXBlb2YgdC50eXBlLmdldERlcml2ZWRTdGF0ZUZyb21FcnJvcnx8ImZ1bmN0aW9uIj09dHlwZW9mIHIuY29tcG9uZW50RGlkQ2F0Y2gmJihudWxsPT09dVF8fCF1US5oYXMocikpKXtlPXJOKG4sZSksbnVsbCE9PShyPWwkKHQsbj1vRigyKSwyKSkmJihvQShuLHIsdCxlKSxlRihyLDIpLHNGKHIpKTticmVha319dD10LnJldHVybn19ZnVuY3Rpb24gc1AoZSx0LG4pe3ZhciByPWUucGluZ0NhY2hlO2lmKG51bGw9PT1yKXtyPWUucGluZ0NhY2hlPW5ldyB1azt2YXIgbD1uZXcgU2V0O3Iuc2V0KHQsbCl9ZWxzZSB2b2lkIDA9PT0obD1yLmdldCh0KSkmJihsPW5ldyBTZXQsci5zZXQodCxsKSk7bC5oYXMobil8fCh1Tz0hMCxsLmFkZChuKSxlPXNOLmJpbmQobnVsbCxlLHQsbiksdC50aGVuKGUsZSkpfWZ1bmN0aW9uIHNOKGUsdCxuKXt2YXIgcj1lLnBpbmdDYWNoZTtudWxsIT09ciYmci5kZWxldGUodCksZS5waW5nZWRMYW5lc3w9ZS5zdXNwZW5kZWRMYW5lcyZuLGUud2FybUxhbmVzJj1+bix1RT09PWUmJih1XyZuKT09PW4mJig0PT09dUx8fDM9PT11TCYmKDB4M2MwMDAwMCZ1Xyk9PT11XyYmMzAwPmV2KCktdUI/MD09KDImdVMpJiZzcihlLDApOnVJfD1uLHVGPT09dV8mJih1Rj0wKSksc0YoZSl9ZnVuY3Rpb24gc0MoZSx0KXswPT09dCYmKHQ9ZUkoKSksbnVsbCE9PShlPXJkKGUsdCkpJiYoZUYoZSx0KSxzRihlKSl9ZnVuY3Rpb24gc1QoZSl7dmFyIHQ9ZS5tZW1vaXplZFN0YXRlLG49MDtudWxsIT09dCYmKG49dC5yZXRyeUxhbmUpLHNDKGUsbil9ZnVuY3Rpb24gc08oZSx0KXt2YXIgbj0wO3N3aXRjaChlLnRhZyl7Y2FzZSAzMTpjYXNlIDEzOnZhciByPWUuc3RhdGVOb2RlLGw9ZS5tZW1vaXplZFN0YXRlO251bGwhPT1sJiYobj1sLnJldHJ5TGFuZSk7YnJlYWs7Y2FzZSAxOTpyPWUuc3RhdGVOb2RlO2JyZWFrO2Nhc2UgMjI6cj1lLnN0YXRlTm9kZS5fcmV0cnlDYWNoZTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKHUoMzE0KSl9bnVsbCE9PXImJnIuZGVsZXRlKHQpLHNDKGUsbil9dmFyIHN6PW51bGwsc0w9bnVsbCxzUj0hMSxzTT0hMSxzST0hMSxzRD0wO2Z1bmN0aW9uIHNGKGUpe2UhPT1zTCYmbnVsbD09PWUubmV4dCYmKG51bGw9PT1zTD9zej1zTD1lOnNMPXNMLm5leHQ9ZSksc009ITAsc1J8fChzUj0hMCxjZyhmdW5jdGlvbigpezAhPSg2JnVTKT9lcChlYixzaik6c1UoKX0pKX1mdW5jdGlvbiBzQShlLHQpe2lmKCFzSSYmc00pe3NJPSEwO2RvIGZvcih2YXIgbj0hMSxyPXN6O251bGwhPT1yOyl7aWYoIXQpaWYoMCE9PWUpe3ZhciBsPXIucGVuZGluZ0xhbmVzO2lmKDA9PT1sKXZhciBhPTA7ZWxzZXt2YXIgbz1yLnN1c3BlbmRlZExhbmVzLGk9ci5waW5nZWRMYW5lczthPTB4YzAwMDA5NSYoYT0oMTw8MzEtZVAoNDJ8ZSkrMSktMSYobCZ+KG8mfmkpKSk/MHhjMDAwMDk1JmF8MTphPzJ8YTowfTAhPT1hJiYobj0hMCxzSChyLGEpKX1lbHNlIGE9dV8sMD09KDMmKGE9ZVIocixyPT09dUU/YTowLG51bGwhPT1yLmNhbmNlbFBlbmRpbmdDb21taXR8fC0xIT09ci50aW1lb3V0SGFuZGxlKSkpfHxlTShyLGEpfHwobj0hMCxzSChyLGEpKTtyPXIubmV4dH13aGlsZShuKXNJPSExfX1mdW5jdGlvbiBzaigpe3NVKCl9ZnVuY3Rpb24gc1UoKXtzTT1zUj0hMTt2YXIgZSx0PTA7MD09PXNEfHwoKGU9d2luZG93LmV2ZW50KSYmInBvcHN0YXRlIj09PWUudHlwZT9lPT09Y2R8fChjZD1lLDApOihjZD1udWxsLDEpKXx8KHQ9c0QpO2Zvcih2YXIgbj1ldigpLHI9bnVsbCxsPXN6O251bGwhPT1sOyl7dmFyIGE9bC5uZXh0LG89c0IobCxuKTswPT09bz8obC5uZXh0PW51bGwsbnVsbD09PXI/c3o9YTpyLm5leHQ9YSxudWxsPT09YSYmKHNMPXIpKToocj1sLCgwIT09dHx8MCE9KDMmbykpJiYoc009ITApKSxsPWF9MCE9PXVXJiY1IT09dVd8fHNBKHQsITEpLDAhPT1zRCYmKHNEPTApfWZ1bmN0aW9uIHNCKGUsdCl7Zm9yKHZhciBuPWUuc3VzcGVuZGVkTGFuZXMscj1lLnBpbmdlZExhbmVzLGw9ZS5leHBpcmF0aW9uVGltZXMsYT0tMHgzYzAwMDAxJmUucGVuZGluZ0xhbmVzOzA8YTspe3ZhciBvPTMxLWVQKGEpLGk9MTw8byx1PWxbb107LTE9PT11PygwPT0oaSZuKXx8MCE9KGkmcikpJiYobFtvXT1mdW5jdGlvbihlLHQpe3N3aXRjaChlKXtjYXNlIDE6Y2FzZSAyOmNhc2UgNDpjYXNlIDg6Y2FzZSA2NDpyZXR1cm4gdCsyNTA7Y2FzZSAxNjpjYXNlIDMyOmNhc2UgMTI4OmNhc2UgMjU2OmNhc2UgNTEyOmNhc2UgMTAyNDpjYXNlIDIwNDg6Y2FzZSA0MDk2OmNhc2UgODE5MjpjYXNlIDE2Mzg0OmNhc2UgMzI3Njg6Y2FzZSA2NTUzNjpjYXNlIDEzMTA3MjpjYXNlIDI2MjE0NDpjYXNlIDUyNDI4ODpjYXNlIDEwNDg1NzY6Y2FzZSAyMDk3MTUyOnJldHVybiB0KzVlMztkZWZhdWx0OnJldHVybiAtMX19KGksdCkpOnU8PXQmJihlLmV4cGlyZWRMYW5lc3w9aSksYSY9fml9aWYodD11RSxuPXVfLG49ZVIoZSxlPT09dD9uOjAsbnVsbCE9PWUuY2FuY2VsUGVuZGluZ0NvbW1pdHx8LTEhPT1lLnRpbWVvdXRIYW5kbGUpLHI9ZS5jYWxsYmFja05vZGUsMD09PW58fGU9PT10JiYoMj09PXVQfHw5PT09dVApfHxudWxsIT09ZS5jYW5jZWxQZW5kaW5nQ29tbWl0KXJldHVybiBudWxsIT09ciYmbnVsbCE9PXImJmVtKHIpLGUuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTA7aWYoMD09KDMmbil8fGVNKGUsbikpe2lmKCh0PW4mLW4pPT09ZS5jYWxsYmFja1ByaW9yaXR5KXJldHVybiB0O3N3aXRjaChudWxsIT09ciYmZW0ociksZVYobikpe2Nhc2UgMjpjYXNlIDg6bj1ldzticmVhaztjYXNlIDMyOmRlZmF1bHQ6bj1lazticmVhaztjYXNlIDB4MTAwMDAwMDA6bj1lRX1yZXR1cm4gbj1lcChuLHI9c1YuYmluZChudWxsLGUpKSxlLmNhbGxiYWNrUHJpb3JpdHk9dCxlLmNhbGxiYWNrTm9kZT1uLHR9cmV0dXJuIG51bGwhPT1yJiZudWxsIT09ciYmZW0ociksZS5jYWxsYmFja1ByaW9yaXR5PTIsZS5jYWxsYmFja05vZGU9bnVsbCwyfWZ1bmN0aW9uIHNWKGUsdCl7aWYoMCE9PXVXJiY1IT09dVcpcmV0dXJuIGUuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTAsbnVsbDt2YXIgbj1lLmNhbGxiYWNrTm9kZTtpZihzUygpJiZlLmNhbGxiYWNrTm9kZSE9PW4pcmV0dXJuIG51bGw7dmFyIHI9dV87cmV0dXJuIDA9PT0ocj1lUihlLGU9PT11RT9yOjAsbnVsbCE9PWUuY2FuY2VsUGVuZGluZ0NvbW1pdHx8LTEhPT1lLnRpbWVvdXRIYW5kbGUpKT9udWxsOih1OShlLHIsdCksc0IoZSxldigpKSxudWxsIT1lLmNhbGxiYWNrTm9kZSYmZS5jYWxsYmFja05vZGU9PT1uP3NWLmJpbmQobnVsbCxlKTpudWxsKX1mdW5jdGlvbiBzSChlLHQpe2lmKHNTKCkpcmV0dXJuIG51bGw7dTkoZSx0LCEwKX1mdW5jdGlvbiBzJCgpe2lmKDA9PT1zRCl7dmFyIGU9bG07MD09PWUmJihlPWVULDA9PSgyNjE4ODgmKGVUPDw9MSkpJiYoZVQ9MjU2KSksc0Q9ZX1yZXR1cm4gc0R9ZnVuY3Rpb24gc1EoZSl7cmV0dXJuIG51bGw9PWV8fCJzeW1ib2wiPT10eXBlb2YgZXx8ImJvb2xlYW4iPT10eXBlb2YgZT9udWxsOiJmdW5jdGlvbiI9PXR5cGVvZiBlP2U6dEMoIiIrZSl9ZnVuY3Rpb24gc1coZSx0KXt2YXIgbj10Lm93bmVyRG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTtyZXR1cm4gbi5uYW1lPXQubmFtZSxuLnZhbHVlPXQudmFsdWUsZS5pZCYmbi5zZXRBdHRyaWJ1dGUoImZvcm0iLGUuaWQpLHQucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobix0KSxlPW5ldyBGb3JtRGF0YShlKSxuLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobiksZX1mb3IodmFyIHNxPTA7c3E8bjcubGVuZ3RoO3NxKyspe3ZhciBzSz1uN1tzcV07cmUoc0sudG9Mb3dlckNhc2UoKSwib24iKyhzS1swXS50b1VwcGVyQ2FzZSgpK3NLLnNsaWNlKDEpKSl9cmUobjEsIm9uQW5pbWF0aW9uRW5kIikscmUobjIsIm9uQW5pbWF0aW9uSXRlcmF0aW9uIikscmUobjMsIm9uQW5pbWF0aW9uU3RhcnQiKSxyZSgiZGJsY2xpY2siLCJvbkRvdWJsZUNsaWNrIikscmUoImZvY3VzaW4iLCJvbkZvY3VzIikscmUoImZvY3Vzb3V0Iiwib25CbHVyIikscmUobjQsIm9uVHJhbnNpdGlvblJ1biIpLHJlKG44LCJvblRyYW5zaXRpb25TdGFydCIpLHJlKG41LCJvblRyYW5zaXRpb25DYW5jZWwiKSxyZShuNiwib25UcmFuc2l0aW9uRW5kIiksZTcoIm9uTW91c2VFbnRlciIsWyJtb3VzZW91dCIsIm1vdXNlb3ZlciJdKSxlNygib25Nb3VzZUxlYXZlIixbIm1vdXNlb3V0IiwibW91c2VvdmVyIl0pLGU3KCJvblBvaW50ZXJFbnRlciIsWyJwb2ludGVyb3V0IiwicG9pbnRlcm92ZXIiXSksZTcoIm9uUG9pbnRlckxlYXZlIixbInBvaW50ZXJvdXQiLCJwb2ludGVyb3ZlciJdKSxlOSgib25DaGFuZ2UiLCJjaGFuZ2UgY2xpY2sgZm9jdXNpbiBmb2N1c291dCBpbnB1dCBrZXlkb3duIGtleXVwIHNlbGVjdGlvbmNoYW5nZSIuc3BsaXQoIiAiKSksZTkoIm9uU2VsZWN0IiwiZm9jdXNvdXQgY29udGV4dG1lbnUgZHJhZ2VuZCBmb2N1c2luIGtleWRvd24ga2V5dXAgbW91c2Vkb3duIG1vdXNldXAgc2VsZWN0aW9uY2hhbmdlIi5zcGxpdCgiICIpKSxlOSgib25CZWZvcmVJbnB1dCIsWyJjb21wb3NpdGlvbmVuZCIsImtleXByZXNzIiwidGV4dElucHV0IiwicGFzdGUiXSksZTkoIm9uQ29tcG9zaXRpb25FbmQiLCJjb21wb3NpdGlvbmVuZCBmb2N1c291dCBrZXlkb3duIGtleXByZXNzIGtleXVwIG1vdXNlZG93biIuc3BsaXQoIiAiKSksZTkoIm9uQ29tcG9zaXRpb25TdGFydCIsImNvbXBvc2l0aW9uc3RhcnQgZm9jdXNvdXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBtb3VzZWRvd24iLnNwbGl0KCIgIikpLGU5KCJvbkNvbXBvc2l0aW9uVXBkYXRlIiwiY29tcG9zaXRpb251cGRhdGUgZm9jdXNvdXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBtb3VzZWRvd24iLnNwbGl0KCIgIikpO3ZhciBzWD0iYWJvcnQgY2FucGxheSBjYW5wbGF5dGhyb3VnaCBkdXJhdGlvbmNoYW5nZSBlbXB0aWVkIGVuY3J5cHRlZCBlbmRlZCBlcnJvciBsb2FkZWRkYXRhIGxvYWRlZG1ldGFkYXRhIGxvYWRzdGFydCBwYXVzZSBwbGF5IHBsYXlpbmcgcHJvZ3Jlc3MgcmF0ZWNoYW5nZSByZXNpemUgc2Vla2VkIHNlZWtpbmcgc3RhbGxlZCBzdXNwZW5kIHRpbWV1cGRhdGUgdm9sdW1lY2hhbmdlIHdhaXRpbmciLnNwbGl0KCIgIiksc0c9bmV3IFNldCgiYmVmb3JldG9nZ2xlIGNhbmNlbCBjbG9zZSBpbnZhbGlkIGxvYWQgc2Nyb2xsIHNjcm9sbGVuZCB0b2dnbGUiLnNwbGl0KCIgIikuY29uY2F0KHNYKSk7ZnVuY3Rpb24gc1koZSx0KXt0PTAhPSg0JnQpO2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgcj1lW25dLGw9ci5ldmVudDtyPXIubGlzdGVuZXJzO2U6e3ZhciBhPXZvaWQgMDtpZih0KWZvcih2YXIgbz1yLmxlbmd0aC0xOzA8PW87by0tKXt2YXIgaT1yW29dLHU9aS5pbnN0YW5jZSxzPWkuY3VycmVudFRhcmdldDtpZihpPWkubGlzdGVuZXIsdSE9PWEmJmwuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSlicmVhayBlO2E9aSxsLmN1cnJlbnRUYXJnZXQ9czt0cnl7YShsKX1jYXRjaChlKXtyYShlKX1sLmN1cnJlbnRUYXJnZXQ9bnVsbCxhPXV9ZWxzZSBmb3Iobz0wO288ci5sZW5ndGg7bysrKXtpZih1PShpPXJbb10pLmluc3RhbmNlLHM9aS5jdXJyZW50VGFyZ2V0LGk9aS5saXN0ZW5lcix1IT09YSYmbC5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpKWJyZWFrIGU7YT1pLGwuY3VycmVudFRhcmdldD1zO3RyeXthKGwpfWNhdGNoKGUpe3JhKGUpfWwuY3VycmVudFRhcmdldD1udWxsLGE9dX19fX1mdW5jdGlvbiBzSihlLHQpe3ZhciBuPXRbZVhdO3ZvaWQgMD09PW4mJihuPXRbZVhdPW5ldyBTZXQpO3ZhciByPWUrIl9fYnViYmxlIjtuLmhhcyhyKXx8KHMyKHQsZSwyLCExKSxuLmFkZChyKSl9ZnVuY3Rpb24gc1ooZSx0LG4pe3ZhciByPTA7dCYmKHJ8PTQpLHMyKG4sZSxyLHQpfXZhciBzMD0iX3JlYWN0TGlzdGVuaW5nIitNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKTtmdW5jdGlvbiBzMShlKXtpZighZVtzMF0pe2VbczBdPSEwLGU1LmZvckVhY2goZnVuY3Rpb24odCl7InNlbGVjdGlvbmNoYW5nZSIhPT10JiYoc0cuaGFzKHQpfHxzWih0LCExLGUpLHNaKHQsITAsZSkpfSk7dmFyIHQ9OT09PWUubm9kZVR5cGU/ZTplLm93bmVyRG9jdW1lbnQ7bnVsbD09PXR8fHRbczBdfHwodFtzMF09ITAsc1ooInNlbGVjdGlvbmNoYW5nZSIsITEsdCkpfX1mdW5jdGlvbiBzMihlLHQsbixyKXtzd2l0Y2goZkwodCkpe2Nhc2UgMjp2YXIgbD1mUDticmVhaztjYXNlIDg6bD1mTjticmVhaztkZWZhdWx0Omw9ZkN9bj1sLmJpbmQobnVsbCx0LG4sZSksbD12b2lkIDAsdGomJigidG91Y2hzdGFydCI9PT10fHwidG91Y2htb3ZlIj09PXR8fCJ3aGVlbCI9PT10KSYmKGw9ITApLHI/dm9pZCAwIT09bD9lLmFkZEV2ZW50TGlzdGVuZXIodCxuLHtjYXB0dXJlOiEwLHBhc3NpdmU6bH0pOmUuYWRkRXZlbnRMaXN0ZW5lcih0LG4sITApOnZvaWQgMCE9PWw/ZS5hZGRFdmVudExpc3RlbmVyKHQsbix7cGFzc2l2ZTpsfSk6ZS5hZGRFdmVudExpc3RlbmVyKHQsbiwhMSl9ZnVuY3Rpb24gczMoZSx0LG4scixsKXt2YXIgYT1yO2lmKDA9PSgxJnQpJiYwPT0oMiZ0KSYmbnVsbCE9PXIpZTpmb3IoOzspe2lmKG51bGw9PT1yKXJldHVybjt2YXIgbz1yLnRhZztpZigzPT09b3x8ND09PW8pe3ZhciBpPXIuc3RhdGVOb2RlLmNvbnRhaW5lckluZm87aWYoaT09PWwpYnJlYWs7aWYoND09PW8pZm9yKG89ci5yZXR1cm47bnVsbCE9PW87KXt2YXIgdT1vLnRhZztpZigoMz09PXV8fDQ9PT11KSYmby5zdGF0ZU5vZGUuY29udGFpbmVySW5mbz09PWwpcmV0dXJuO289by5yZXR1cm59Zm9yKDtudWxsIT09aTspe2lmKG51bGw9PT0obz1lMShpKSkpcmV0dXJuO2lmKDU9PT0odT1vLnRhZyl8fDY9PT11fHwyNj09PXV8fDI3PT09dSl7cj1hPW87Y29udGludWUgZX1pPWkucGFyZW50Tm9kZX19cj1yLnJldHVybn10RChmdW5jdGlvbigpe3ZhciByPWEsbD10eihuKSxvPVtdO2U6e3ZhciBpPW45LmdldChlKTtpZih2b2lkIDAhPT1pKXt2YXIgdT10MSxzPWU7c3dpdGNoKGUpe2Nhc2Uia2V5cHJlc3MiOmlmKDA9PT10UShuKSlicmVhayBlO2Nhc2Uia2V5ZG93biI6Y2FzZSJrZXl1cCI6dT1ubzticmVhaztjYXNlImZvY3VzaW4iOnM9ImZvY3VzIix1PXQ2O2JyZWFrO2Nhc2UiZm9jdXNvdXQiOnM9ImJsdXIiLHU9dDY7YnJlYWs7Y2FzZSJiZWZvcmVibHVyIjpjYXNlImFmdGVyYmx1ciI6dT10NjticmVhaztjYXNlImNsaWNrIjppZigyPT09bi5idXR0b24pYnJlYWsgZTtjYXNlImF1eGNsaWNrIjpjYXNlImRibGNsaWNrIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJtb3VzZW1vdmUiOmNhc2UibW91c2V1cCI6Y2FzZSJtb3VzZW91dCI6Y2FzZSJtb3VzZW92ZXIiOmNhc2UiY29udGV4dG1lbnUiOnU9dDg7YnJlYWs7Y2FzZSJkcmFnIjpjYXNlImRyYWdlbmQiOmNhc2UiZHJhZ2VudGVyIjpjYXNlImRyYWdleGl0IjpjYXNlImRyYWdsZWF2ZSI6Y2FzZSJkcmFnb3ZlciI6Y2FzZSJkcmFnc3RhcnQiOmNhc2UiZHJvcCI6dT10NTticmVhaztjYXNlInRvdWNoY2FuY2VsIjpjYXNlInRvdWNoZW5kIjpjYXNlInRvdWNobW92ZSI6Y2FzZSJ0b3VjaHN0YXJ0Ijp1PW51O2JyZWFrO2Nhc2UgbjE6Y2FzZSBuMjpjYXNlIG4zOnU9dDk7YnJlYWs7Y2FzZSBuNjp1PW5zO2JyZWFrO2Nhc2Uic2Nyb2xsIjpjYXNlInNjcm9sbGVuZCI6dT10MzticmVhaztjYXNlIndoZWVsIjp1PW5jO2JyZWFrO2Nhc2UiY29weSI6Y2FzZSJjdXQiOmNhc2UicGFzdGUiOnU9dDc7YnJlYWs7Y2FzZSJnb3Rwb2ludGVyY2FwdHVyZSI6Y2FzZSJsb3N0cG9pbnRlcmNhcHR1cmUiOmNhc2UicG9pbnRlcmNhbmNlbCI6Y2FzZSJwb2ludGVyZG93biI6Y2FzZSJwb2ludGVybW92ZSI6Y2FzZSJwb2ludGVyb3V0IjpjYXNlInBvaW50ZXJvdmVyIjpjYXNlInBvaW50ZXJ1cCI6dT1uaTticmVhaztjYXNlInRvZ2dsZSI6Y2FzZSJiZWZvcmV0b2dnbGUiOnU9bmZ9dmFyIGY9MCE9KDQmdCksZD0hZiYmKCJzY3JvbGwiPT09ZXx8InNjcm9sbGVuZCI9PT1lKSxwPWY/bnVsbCE9PWk/aSsiQ2FwdHVyZSI6bnVsbDppO2Y9W107Zm9yKHZhciBtLGg9cjtudWxsIT09aDspe3ZhciBnPWg7aWYobT1nLnN0YXRlTm9kZSw1IT09KGc9Zy50YWcpJiYyNiE9PWcmJjI3IT09Z3x8bnVsbD09PW18fG51bGw9PT1wfHxudWxsIT0oZz10RihoLHApKSYmZi5wdXNoKHM0KGgsZyxtKSksZClicmVhaztoPWgucmV0dXJufTA8Zi5sZW5ndGgmJihpPW5ldyB1KGkscyxudWxsLG4sbCksby5wdXNoKHtldmVudDppLGxpc3RlbmVyczpmfSkpfX1pZigwPT0oNyZ0KSl7dT0ibW91c2VvdmVyIj09PWV8fCJwb2ludGVyb3ZlciI9PT1lLGk9Im1vdXNlb3V0Ij09PWV8fCJwb2ludGVyb3V0Ij09PWUsISh1JiZuIT09dE8mJihzPW4ucmVsYXRlZFRhcmdldHx8bi5mcm9tRWxlbWVudCkmJihlMShzKXx8c1tlS10pKSYmKGl8fHUpJiYocz1sLndpbmRvdz09PWw/bDoodT1sLm93bmVyRG9jdW1lbnQpP3UuZGVmYXVsdFZpZXd8fHUucGFyZW50V2luZG93OndpbmRvdyxpPyh1PW4ucmVsYXRlZFRhcmdldHx8bi50b0VsZW1lbnQsaT1yLG51bGwhPT0odT11P2UxKHUpOm51bGwpJiYoZD1jKHUpLGY9dS50YWcsdSE9PWR8fDUhPT1mJiYyNyE9PWYmJjYhPT1mKSYmKHU9bnVsbCkpOihpPW51bGwsdT1yKSxpIT09dSYmKGY9dDgsZz0ib25Nb3VzZUxlYXZlIixwPSJvbk1vdXNlRW50ZXIiLGg9Im1vdXNlIiwoInBvaW50ZXJvdXQiPT09ZXx8InBvaW50ZXJvdmVyIj09PWUpJiYoZj1uaSxnPSJvblBvaW50ZXJMZWF2ZSIscD0ib25Qb2ludGVyRW50ZXIiLGg9InBvaW50ZXIiKSxkPW51bGw9PWk/czplMyhpKSxtPW51bGw9PXU/czplMyh1KSwocz1uZXcgZihnLGgrImxlYXZlIixpLG4sbCkpLnRhcmdldD1kLHMucmVsYXRlZFRhcmdldD1tLGc9bnVsbCxlMShsKT09PXImJigoZj1uZXcgZihwLGgrImVudGVyIix1LG4sbCkpLnRhcmdldD1tLGYucmVsYXRlZFRhcmdldD1kLGc9ZiksZD1nLGY9aSYmdT9FKGksdSxzNSk6bnVsbCxudWxsIT09aSYmczYobyxzLGksZiwhMSksbnVsbCE9PXUmJm51bGwhPT1kJiZzNihvLGQsdSxmLCEwKSkpO2U6e2lmKCJzZWxlY3QiPT09KHU9KGk9cj9lMyhyKTp3aW5kb3cpLm5vZGVOYW1lJiZpLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpfHwiaW5wdXQiPT09dSYmImZpbGUiPT09aS50eXBlKXZhciB2LHk9bkM7ZWxzZSBpZihuUyhpKSlpZihuVCl5PW5GO2Vsc2V7eT1uSTt2YXIgYj1uTX1lbHNlKHU9aS5ub2RlTmFtZSkmJiJpbnB1dCI9PT11LnRvTG93ZXJDYXNlKCkmJigiY2hlY2tib3giPT09aS50eXBlfHwicmFkaW8iPT09aS50eXBlKT95PW5EOnImJnRfKHIuZWxlbWVudFR5cGUpJiYoeT1uQyk7aWYoeSYmKHk9eShlLHIpKSl7bkUobyx5LG4sbCk7YnJlYWsgZX1iJiZiKGUsaSxyKSwiZm9jdXNvdXQiPT09ZSYmciYmIm51bWJlciI9PT1pLnR5cGUmJm51bGwhPXIubWVtb2l6ZWRQcm9wcy52YWx1ZSYmdHYoaSwibnVtYmVyIixpLnZhbHVlKX1zd2l0Y2goYj1yP2UzKHIpOndpbmRvdyxlKXtjYXNlImZvY3VzaW4iOihuUyhiKXx8InRydWUiPT09Yi5jb250ZW50RWRpdGFibGUpJiYoblE9YixuVz1yLG5xPW51bGwpO2JyZWFrO2Nhc2UiZm9jdXNvdXQiOm5xPW5XPW5RPW51bGw7YnJlYWs7Y2FzZSJtb3VzZWRvd24iOm5LPSEwO2JyZWFrO2Nhc2UiY29udGV4dG1lbnUiOmNhc2UibW91c2V1cCI6Y2FzZSJkcmFnZW5kIjpuSz0hMSxuWChvLG4sbCk7YnJlYWs7Y2FzZSJzZWxlY3Rpb25jaGFuZ2UiOmlmKG4kKWJyZWFrO2Nhc2Uia2V5ZG93biI6Y2FzZSJrZXl1cCI6blgobyxuLGwpfWlmKG5wKXQ6e3N3aXRjaChlKXtjYXNlImNvbXBvc2l0aW9uc3RhcnQiOnZhciB3PSJvbkNvbXBvc2l0aW9uU3RhcnQiO2JyZWFrIHQ7Y2FzZSJjb21wb3NpdGlvbmVuZCI6dz0ib25Db21wb3NpdGlvbkVuZCI7YnJlYWsgdDtjYXNlImNvbXBvc2l0aW9udXBkYXRlIjp3PSJvbkNvbXBvc2l0aW9uVXBkYXRlIjticmVhayB0fXc9dm9pZCAwfWVsc2Ugbnc/bnkoZSxuKSYmKHc9Im9uQ29tcG9zaXRpb25FbmQiKToia2V5ZG93biI9PT1lJiYyMjk9PT1uLmtleUNvZGUmJih3PSJvbkNvbXBvc2l0aW9uU3RhcnQiKTt3JiYobmcmJiJrbyIhPT1uLmxvY2FsZSYmKG53fHwib25Db21wb3NpdGlvblN0YXJ0IiE9PXc/Im9uQ29tcG9zaXRpb25FbmQiPT09dyYmbncmJih2PXQkKCkpOih0Vj0idmFsdWUiaW4odEI9bCk/dEIudmFsdWU6dEIudGV4dENvbnRlbnQsbnc9ITApKSwwPChiPXM4KHIsdykpLmxlbmd0aCYmKHc9bmV3IG5lKHcsZSxudWxsLG4sbCksby5wdXNoKHtldmVudDp3LGxpc3RlbmVyczpifSksdj93LmRhdGE9djpudWxsIT09KHY9bmIobikpJiYody5kYXRhPXYpKSksKHY9bmg/ZnVuY3Rpb24oZSx0KXtzd2l0Y2goZSl7Y2FzZSJjb21wb3NpdGlvbmVuZCI6cmV0dXJuIG5iKHQpO2Nhc2Uia2V5cHJlc3MiOmlmKDMyIT09dC53aGljaClyZXR1cm4gbnVsbDtyZXR1cm4gbnY9ITAsIiAiO2Nhc2UidGV4dElucHV0IjpyZXR1cm4iICI9PT0oZT10LmRhdGEpJiZudj9udWxsOmU7ZGVmYXVsdDpyZXR1cm4gbnVsbH19KGUsbik6ZnVuY3Rpb24oZSx0KXtpZihudylyZXR1cm4iY29tcG9zaXRpb25lbmQiPT09ZXx8IW5wJiZueShlLHQpPyhlPXQkKCksdEg9dFY9dEI9bnVsbCxudz0hMSxlKTpudWxsO3N3aXRjaChlKXtjYXNlInBhc3RlIjpkZWZhdWx0OnJldHVybiBudWxsO2Nhc2Uia2V5cHJlc3MiOmlmKCEodC5jdHJsS2V5fHx0LmFsdEtleXx8dC5tZXRhS2V5KXx8dC5jdHJsS2V5JiZ0LmFsdEtleSl7aWYodC5jaGFyJiYxPHQuY2hhci5sZW5ndGgpcmV0dXJuIHQuY2hhcjtpZih0LndoaWNoKXJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKHQud2hpY2gpfXJldHVybiBudWxsO2Nhc2UiY29tcG9zaXRpb25lbmQiOnJldHVybiBuZyYmImtvIiE9PXQubG9jYWxlP251bGw6dC5kYXRhfX0oZSxuKSkmJjA8KHc9czgociwib25CZWZvcmVJbnB1dCIpKS5sZW5ndGgmJihiPW5ldyBuZSgib25CZWZvcmVJbnB1dCIsImJlZm9yZWlucHV0IixudWxsLG4sbCksby5wdXNoKHtldmVudDpiLGxpc3RlbmVyczp3fSksYi5kYXRhPXYpO3ZhciBrPWU7aWYoInN1Ym1pdCI9PT1rJiZyJiZyLnN0YXRlTm9kZT09PWwpe3ZhciBTPXNRKChsW2VxXXx8bnVsbCkuYWN0aW9uKSx4PW4uc3VibWl0dGVyO3gmJm51bGwhPT0oaz0oaz14W2VxXXx8bnVsbCk/c1Eoay5mb3JtQWN0aW9uKTp4LmdldEF0dHJpYnV0ZSgiZm9ybUFjdGlvbiIpKSYmKFM9ayx4PW51bGwpO3ZhciBfPW5ldyB0MSgiYWN0aW9uIiwiYWN0aW9uIixudWxsLG4sbCk7by5wdXNoKHtldmVudDpfLGxpc3RlbmVyczpbe2luc3RhbmNlOm51bGwsbGlzdGVuZXI6ZnVuY3Rpb24oKXtpZihuLmRlZmF1bHRQcmV2ZW50ZWQpe2lmKDAhPT1zRCl7dmFyIGU9eD9zVyhsLHgpOm5ldyBGb3JtRGF0YShsKTtvdShyLHtwZW5kaW5nOiEwLGRhdGE6ZSxtZXRob2Q6bC5tZXRob2QsYWN0aW9uOlN9LG51bGwsZSl9fWVsc2UiZnVuY3Rpb24iPT10eXBlb2YgUyYmKF8ucHJldmVudERlZmF1bHQoKSxvdShyLHtwZW5kaW5nOiEwLGRhdGE6ZT14P3NXKGwseCk6bmV3IEZvcm1EYXRhKGwpLG1ldGhvZDpsLm1ldGhvZCxhY3Rpb246U30sUyxlKSl9LGN1cnJlbnRUYXJnZXQ6bH1dfSl9fXNZKG8sdCl9KX1mdW5jdGlvbiBzNChlLHQsbil7cmV0dXJue2luc3RhbmNlOmUsbGlzdGVuZXI6dCxjdXJyZW50VGFyZ2V0Om59fWZ1bmN0aW9uIHM4KGUsdCl7Zm9yKHZhciBuPXQrIkNhcHR1cmUiLHI9W107bnVsbCE9PWU7KXt2YXIgbD1lLGE9bC5zdGF0ZU5vZGU7aWYoNSE9PShsPWwudGFnKSYmMjYhPT1sJiYyNyE9PWx8fG51bGw9PT1hfHwobnVsbCE9KGw9dEYoZSxuKSkmJnIudW5zaGlmdChzNChlLGwsYSkpLG51bGwhPShsPXRGKGUsdCkpJiZyLnB1c2goczQoZSxsLGEpKSksMz09PWUudGFnKXJldHVybiByO2U9ZS5yZXR1cm59cmV0dXJuW119ZnVuY3Rpb24gczUoZSl7aWYobnVsbD09PWUpcmV0dXJuIG51bGw7ZG8gZT1lLnJldHVybjt3aGlsZShlJiY1IT09ZS50YWcmJjI3IT09ZS50YWcpcmV0dXJuIGV8fG51bGx9ZnVuY3Rpb24gczYoZSx0LG4scixsKXtmb3IodmFyIGE9dC5fcmVhY3ROYW1lLG89W107bnVsbCE9PW4mJm4hPT1yOyl7dmFyIGk9bix1PWkuYWx0ZXJuYXRlLHM9aS5zdGF0ZU5vZGU7aWYoaT1pLnRhZyxudWxsIT09dSYmdT09PXIpYnJlYWs7NSE9PWkmJjI2IT09aSYmMjchPT1pfHxudWxsPT09c3x8KHU9cyxsP251bGwhPShzPXRGKG4sYSkpJiZvLnVuc2hpZnQoczQobixzLHUpKTpsfHxudWxsIT0ocz10RihuLGEpKSYmby5wdXNoKHM0KG4scyx1KSkpLG49bi5yZXR1cm59MCE9PW8ubGVuZ3RoJiZlLnB1c2goe2V2ZW50OnQsbGlzdGVuZXJzOm99KX12YXIgczk9L1xyXG4/L2csczc9L1x1MDAwMHxcdUZGRkQvZztmdW5jdGlvbiBjZShlKXtyZXR1cm4oInN0cmluZyI9PXR5cGVvZiBlP2U6IiIrZSkucmVwbGFjZShzOSwiXG4iKS5yZXBsYWNlKHM3LCIiKX1mdW5jdGlvbiBjdChlLHQpe3JldHVybiB0PWNlKHQpLGNlKGUpPT09dH1mdW5jdGlvbiBjbihlLHQsbixyLGwsYSl7c3dpdGNoKG4pe2Nhc2UiY2hpbGRyZW4iOmlmKCJzdHJpbmciPT10eXBlb2YgcikiYm9keSI9PT10fHwidGV4dGFyZWEiPT09dCYmIiI9PT1yfHx0ayhlLHIpO2Vsc2V7aWYoIm51bWJlciIhPXR5cGVvZiByJiYiYmlnaW50IiE9dHlwZW9mIHIpcmV0dXJuOyJib2R5IiE9PXQmJnRrKGUsIiIrcil9YnJlYWs7Y2FzZSJjbGFzc05hbWUiOnRvKGUsImNsYXNzIixyKTticmVhaztjYXNlInRhYkluZGV4Ijp0byhlLCJ0YWJpbmRleCIscik7YnJlYWs7Y2FzZSJkaXIiOmNhc2Uicm9sZSI6Y2FzZSJ2aWV3Qm94IjpjYXNlIndpZHRoIjpjYXNlImhlaWdodCI6dG8oZSxuLHIpO2JyZWFrO2Nhc2Uic3R5bGUiOnR4KGUscixhKTtyZXR1cm47Y2FzZSJkYXRhIjppZigib2JqZWN0IiE9PXQpe3RvKGUsImRhdGEiLHIpO2JyZWFrfWNhc2Uic3JjIjpjYXNlImhyZWYiOmlmKCIiPT09ciYmKCJhIiE9PXR8fCJocmVmIiE9PW4pfHxudWxsPT1yfHwiZnVuY3Rpb24iPT10eXBlb2Ygcnx8InN5bWJvbCI9PXR5cGVvZiByfHwiYm9vbGVhbiI9PXR5cGVvZiByKXtlLnJlbW92ZUF0dHJpYnV0ZShuKTticmVha31yPXRDKCIiK3IpLGUuc2V0QXR0cmlidXRlKG4scik7YnJlYWs7Y2FzZSJhY3Rpb24iOmNhc2UiZm9ybUFjdGlvbiI6aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe2Uuc2V0QXR0cmlidXRlKG4sImphdmFzY3JpcHQ6dGhyb3cgbmV3IEVycm9yKCdBIFJlYWN0IGZvcm0gd2FzIHVuZXhwZWN0ZWRseSBzdWJtaXR0ZWQuIElmIHlvdSBjYWxsZWQgZm9ybS5zdWJtaXQoKSBtYW51YWxseSwgY29uc2lkZXIgdXNpbmcgZm9ybS5yZXF1ZXN0U3VibWl0KCkgaW5zdGVhZC4gSWYgeW91XFwncmUgdHJ5aW5nIHRvIHVzZSBldmVudC5zdG9wUHJvcGFnYXRpb24oKSBpbiBhIHN1Ym1pdCBldmVudCBoYW5kbGVyLCBjb25zaWRlciBhbHNvIGNhbGxpbmcgZXZlbnQucHJldmVudERlZmF1bHQoKS4nKSIpO2JyZWFrfWlmKCJmdW5jdGlvbiI9PXR5cGVvZiBhJiYoImZvcm1BY3Rpb24iPT09bj8oImlucHV0IiE9PXQmJmNuKGUsdCwibmFtZSIsbC5uYW1lLGwsbnVsbCksY24oZSx0LCJmb3JtRW5jVHlwZSIsbC5mb3JtRW5jVHlwZSxsLG51bGwpLGNuKGUsdCwiZm9ybU1ldGhvZCIsbC5mb3JtTWV0aG9kLGwsbnVsbCksY24oZSx0LCJmb3JtVGFyZ2V0IixsLmZvcm1UYXJnZXQsbCxudWxsKSk6KGNuKGUsdCwiZW5jVHlwZSIsbC5lbmNUeXBlLGwsbnVsbCksY24oZSx0LCJtZXRob2QiLGwubWV0aG9kLGwsbnVsbCksY24oZSx0LCJ0YXJnZXQiLGwudGFyZ2V0LGwsbnVsbCkpKSxudWxsPT1yfHwic3ltYm9sIj09dHlwZW9mIHJ8fCJib29sZWFuIj09dHlwZW9mIHIpe2UucmVtb3ZlQXR0cmlidXRlKG4pO2JyZWFrfXI9dEMoIiIrciksZS5zZXRBdHRyaWJ1dGUobixyKTticmVhaztjYXNlIm9uQ2xpY2siOm51bGwhPXImJihlLm9uY2xpY2s9dFQpO3JldHVybjtjYXNlIm9uU2Nyb2xsIjpudWxsIT1yJiZzSigic2Nyb2xsIixlKTtyZXR1cm47Y2FzZSJvblNjcm9sbEVuZCI6bnVsbCE9ciYmc0ooInNjcm9sbGVuZCIsZSk7cmV0dXJuO2Nhc2UiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwiOmlmKG51bGwhPXIpe2lmKCJvYmplY3QiIT10eXBlb2Ygcnx8ISgiX19odG1sImluIHIpKXRocm93IEVycm9yKHUoNjEpKTtpZihudWxsIT0obj1yLl9faHRtbCkpe2lmKG51bGwhPWwuY2hpbGRyZW4pdGhyb3cgRXJyb3IodSg2MCkpO2UuaW5uZXJIVE1MPW59fWJyZWFrO2Nhc2UibXVsdGlwbGUiOmUubXVsdGlwbGU9ciYmImZ1bmN0aW9uIiE9dHlwZW9mIHImJiJzeW1ib2wiIT10eXBlb2YgcjticmVhaztjYXNlIm11dGVkIjplLm11dGVkPXImJiJmdW5jdGlvbiIhPXR5cGVvZiByJiYic3ltYm9sIiE9dHlwZW9mIHI7YnJlYWs7Y2FzZSJzdXBwcmVzc0NvbnRlbnRFZGl0YWJsZVdhcm5pbmciOmNhc2Uic3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nIjpjYXNlImRlZmF1bHRWYWx1ZSI6Y2FzZSJkZWZhdWx0Q2hlY2tlZCI6Y2FzZSJpbm5lckhUTUwiOmNhc2UicmVmIjpjYXNlImF1dG9Gb2N1cyI6YnJlYWs7Y2FzZSJ4bGlua0hyZWYiOmlmKG51bGw9PXJ8fCJmdW5jdGlvbiI9PXR5cGVvZiByfHwiYm9vbGVhbiI9PXR5cGVvZiByfHwic3ltYm9sIj09dHlwZW9mIHIpe2UucmVtb3ZlQXR0cmlidXRlKCJ4bGluazpocmVmIik7YnJlYWt9bj10QygiIityKSxlLnNldEF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiwieGxpbms6aHJlZiIsbik7YnJlYWs7Y2FzZSJjb250ZW50RWRpdGFibGUiOmNhc2Uic3BlbGxDaGVjayI6Y2FzZSJkcmFnZ2FibGUiOmNhc2UidmFsdWUiOmNhc2UiYXV0b1JldmVyc2UiOmNhc2UiZXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZCI6Y2FzZSJmb2N1c2FibGUiOmNhc2UicHJlc2VydmVBbHBoYSI6bnVsbCE9ciYmImZ1bmN0aW9uIiE9dHlwZW9mIHImJiJzeW1ib2wiIT10eXBlb2Ygcj9lLnNldEF0dHJpYnV0ZShuLCIiK3IpOmUucmVtb3ZlQXR0cmlidXRlKG4pO2JyZWFrO2Nhc2UiaW5lcnQiOmNhc2UiYWxsb3dGdWxsU2NyZWVuIjpjYXNlImFzeW5jIjpjYXNlImF1dG9QbGF5IjpjYXNlImNvbnRyb2xzIjpjYXNlImRlZmF1bHQiOmNhc2UiZGVmZXIiOmNhc2UiZGlzYWJsZWQiOmNhc2UiZGlzYWJsZVBpY3R1cmVJblBpY3R1cmUiOmNhc2UiZGlzYWJsZVJlbW90ZVBsYXliYWNrIjpjYXNlImZvcm1Ob1ZhbGlkYXRlIjpjYXNlImhpZGRlbiI6Y2FzZSJsb29wIjpjYXNlIm5vTW9kdWxlIjpjYXNlIm5vVmFsaWRhdGUiOmNhc2Uib3BlbiI6Y2FzZSJwbGF5c0lubGluZSI6Y2FzZSJyZWFkT25seSI6Y2FzZSJyZXF1aXJlZCI6Y2FzZSJyZXZlcnNlZCI6Y2FzZSJzY29wZWQiOmNhc2Uic2VhbWxlc3MiOmNhc2UiaXRlbVNjb3BlIjpyJiYiZnVuY3Rpb24iIT10eXBlb2YgciYmInN5bWJvbCIhPXR5cGVvZiByP2Uuc2V0QXR0cmlidXRlKG4sIiIpOmUucmVtb3ZlQXR0cmlidXRlKG4pO2JyZWFrO2Nhc2UiY2FwdHVyZSI6Y2FzZSJkb3dubG9hZCI6ITA9PT1yP2Uuc2V0QXR0cmlidXRlKG4sIiIpOiExIT09ciYmbnVsbCE9ciYmImZ1bmN0aW9uIiE9dHlwZW9mIHImJiJzeW1ib2wiIT10eXBlb2Ygcj9lLnNldEF0dHJpYnV0ZShuLHIpOmUucmVtb3ZlQXR0cmlidXRlKG4pO2JyZWFrO2Nhc2UiY29scyI6Y2FzZSJyb3dzIjpjYXNlInNpemUiOmNhc2Uic3BhbiI6bnVsbCE9ciYmImZ1bmN0aW9uIiE9dHlwZW9mIHImJiJzeW1ib2wiIT10eXBlb2YgciYmIWlzTmFOKHIpJiYxPD1yP2Uuc2V0QXR0cmlidXRlKG4scik6ZS5yZW1vdmVBdHRyaWJ1dGUobik7YnJlYWs7Y2FzZSJyb3dTcGFuIjpjYXNlInN0YXJ0IjpudWxsPT1yfHwiZnVuY3Rpb24iPT10eXBlb2Ygcnx8InN5bWJvbCI9PXR5cGVvZiByfHxpc05hTihyKT9lLnJlbW92ZUF0dHJpYnV0ZShuKTplLnNldEF0dHJpYnV0ZShuLHIpO2JyZWFrO2Nhc2UicG9wb3ZlciI6c0ooImJlZm9yZXRvZ2dsZSIsZSksc0ooInRvZ2dsZSIsZSksdGEoZSwicG9wb3ZlciIscik7YnJlYWs7Y2FzZSJ4bGlua0FjdHVhdGUiOnRpKGUsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCJ4bGluazphY3R1YXRlIixyKTticmVhaztjYXNlInhsaW5rQXJjcm9sZSI6dGkoZSwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsInhsaW5rOmFyY3JvbGUiLHIpO2JyZWFrO2Nhc2UieGxpbmtSb2xlIjp0aShlLCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiwieGxpbms6cm9sZSIscik7YnJlYWs7Y2FzZSJ4bGlua1Nob3ciOnRpKGUsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCJ4bGluazpzaG93IixyKTticmVhaztjYXNlInhsaW5rVGl0bGUiOnRpKGUsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCJ4bGluazp0aXRsZSIscik7YnJlYWs7Y2FzZSJ4bGlua1R5cGUiOnRpKGUsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCJ4bGluazp0eXBlIixyKTticmVhaztjYXNlInhtbEJhc2UiOnRpKGUsImh0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZSIsInhtbDpiYXNlIixyKTticmVhaztjYXNlInhtbExhbmciOnRpKGUsImh0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZSIsInhtbDpsYW5nIixyKTticmVhaztjYXNlInhtbFNwYWNlIjp0aShlLCJodHRwOi8vd3d3LnczLm9yZy9YTUwvMTk5OC9uYW1lc3BhY2UiLCJ4bWw6c3BhY2UiLHIpO2JyZWFrO2Nhc2UiaXMiOnRhKGUsImlzIixyKTticmVhaztjYXNlImlubmVyVGV4dCI6Y2FzZSJ0ZXh0Q29udGVudCI6cmV0dXJuO2RlZmF1bHQ6aWYoMjxuLmxlbmd0aCYmKCJvIj09PW5bMF18fCJPIj09PW5bMF0pJiYoIm4iPT09blsxXXx8Ik4iPT09blsxXSkpcmV0dXJuO3RhKGUsbj10UC5nZXQobil8fG4scil9dHI9ITB9ZnVuY3Rpb24gY3IoZSx0LG4scixsLGEpe3N3aXRjaChuKXtjYXNlInN0eWxlIjp0eChlLHIsYSk7cmV0dXJuO2Nhc2UiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwiOmlmKG51bGwhPXIpe2lmKCJvYmplY3QiIT10eXBlb2Ygcnx8ISgiX19odG1sImluIHIpKXRocm93IEVycm9yKHUoNjEpKTtpZihudWxsIT0obj1yLl9faHRtbCkpe2lmKG51bGwhPWwuY2hpbGRyZW4pdGhyb3cgRXJyb3IodSg2MCkpO2UuaW5uZXJIVE1MPW59fWJyZWFrO2Nhc2UiY2hpbGRyZW4iOmlmKCJzdHJpbmciPT10eXBlb2Ygcil0ayhlLHIpO2Vsc2V7aWYoIm51bWJlciIhPXR5cGVvZiByJiYiYmlnaW50IiE9dHlwZW9mIHIpcmV0dXJuO3RrKGUsIiIrcil9YnJlYWs7Y2FzZSJvblNjcm9sbCI6bnVsbCE9ciYmc0ooInNjcm9sbCIsZSk7cmV0dXJuO2Nhc2Uib25TY3JvbGxFbmQiOm51bGwhPXImJnNKKCJzY3JvbGxlbmQiLGUpO3JldHVybjtjYXNlIm9uQ2xpY2siOm51bGwhPXImJihlLm9uY2xpY2s9dFQpO3JldHVybjtjYXNlInN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyI6Y2FzZSJzdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmciOmNhc2UiaW5uZXJIVE1MIjpjYXNlInJlZiI6Y2FzZSJpbm5lclRleHQiOmNhc2UidGV4dENvbnRlbnQiOnJldHVybjtkZWZhdWx0OmlmKCFlNi5oYXNPd25Qcm9wZXJ0eShuKSllOntpZigibyI9PT1uWzBdJiYibiI9PT1uWzFdJiYobD1uLmVuZHNXaXRoKCJDYXB0dXJlIiksdD1uLnNsaWNlKDIsbD9uLmxlbmd0aC03OnZvaWQgMCksImZ1bmN0aW9uIj09dHlwZW9mKGE9bnVsbCE9KGE9ZVtlcV18fG51bGwpP2Fbbl06bnVsbCkmJmUucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LGEsbCksImZ1bmN0aW9uIj09dHlwZW9mIHIpKXsiZnVuY3Rpb24iIT10eXBlb2YgYSYmbnVsbCE9PWEmJihuIGluIGU/ZVtuXT1udWxsOmUuaGFzQXR0cmlidXRlKG4pJiZlLnJlbW92ZUF0dHJpYnV0ZShuKSksZS5hZGRFdmVudExpc3RlbmVyKHQscixsKTticmVhayBlfXRyPSEwLG4gaW4gZT9lW25dPXI6ITA9PT1yP2Uuc2V0QXR0cmlidXRlKG4sIiIpOnRhKGUsbixyKX1yZXR1cm59dHI9ITB9ZnVuY3Rpb24gY2woZSx0LG4pe3N3aXRjaCh0KXtjYXNlImRpdiI6Y2FzZSJzcGFuIjpjYXNlInN2ZyI6Y2FzZSJwYXRoIjpjYXNlImEiOmNhc2UiZyI6Y2FzZSJwIjpjYXNlImxpIjpicmVhaztjYXNlImltZyI6c0ooImVycm9yIixlKSxzSigibG9hZCIsZSk7dmFyIHIsbD0hMSxhPSExO2ZvcihyIGluIG4paWYobi5oYXNPd25Qcm9wZXJ0eShyKSl7dmFyIG89bltyXTtpZihudWxsIT1vKXN3aXRjaChyKXtjYXNlInNyYyI6bD0hMDticmVhaztjYXNlInNyY1NldCI6YT0hMDticmVhaztjYXNlImNoaWxkcmVuIjpjYXNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIjp0aHJvdyBFcnJvcih1KDEzNyx0KSk7ZGVmYXVsdDpjbihlLHQscixvLG4sbnVsbCl9fWEmJmNuKGUsdCwic3JjU2V0IixuLnNyY1NldCxuLG51bGwpLGwmJmNuKGUsdCwic3JjIixuLnNyYyxuLG51bGwpO3JldHVybjtjYXNlImlucHV0IjpzSigiaW52YWxpZCIsZSk7dmFyIGk9cj1vPWE9bnVsbCxzPW51bGwsYz1udWxsO2ZvcihsIGluIG4paWYobi5oYXNPd25Qcm9wZXJ0eShsKSl7dmFyIGY9bltsXTtpZihudWxsIT1mKXN3aXRjaChsKXtjYXNlIm5hbWUiOmE9ZjticmVhaztjYXNlInR5cGUiOm89ZjticmVhaztjYXNlImNoZWNrZWQiOnM9ZjticmVhaztjYXNlImRlZmF1bHRDaGVja2VkIjpjPWY7YnJlYWs7Y2FzZSJ2YWx1ZSI6cj1mO2JyZWFrO2Nhc2UiZGVmYXVsdFZhbHVlIjppPWY7YnJlYWs7Y2FzZSJjaGlsZHJlbiI6Y2FzZSJkYW5nZXJvdXNseVNldElubmVySFRNTCI6aWYobnVsbCE9Zil0aHJvdyBFcnJvcih1KDEzNyx0KSk7YnJlYWs7ZGVmYXVsdDpjbihlLHQsbCxmLG4sbnVsbCl9fXRnKGUscixpLHMsYyxvLGEsITEpO3JldHVybjtjYXNlInNlbGVjdCI6Zm9yKGEgaW4gc0ooImludmFsaWQiLGUpLGw9bz1yPW51bGwsbilpZihuLmhhc093blByb3BlcnR5KGEpJiZudWxsIT0oaT1uW2FdKSlzd2l0Y2goYSl7Y2FzZSJ2YWx1ZSI6cj1pO2JyZWFrO2Nhc2UiZGVmYXVsdFZhbHVlIjpvPWk7YnJlYWs7Y2FzZSJtdWx0aXBsZSI6bD1pO2RlZmF1bHQ6Y24oZSx0LGEsaSxuLG51bGwpfXQ9cixuPW8sZS5tdWx0aXBsZT0hIWwsbnVsbCE9dD90eShlLCEhbCx0LCExKTpudWxsIT1uJiZ0eShlLCEhbCxuLCEwKTtyZXR1cm47Y2FzZSJ0ZXh0YXJlYSI6Zm9yKG8gaW4gc0ooImludmFsaWQiLGUpLHI9YT1sPW51bGwsbilpZihuLmhhc093blByb3BlcnR5KG8pJiZudWxsIT0oaT1uW29dKSlzd2l0Y2gobyl7Y2FzZSJ2YWx1ZSI6bD1pO2JyZWFrO2Nhc2UiZGVmYXVsdFZhbHVlIjphPWk7YnJlYWs7Y2FzZSJjaGlsZHJlbiI6cj1pO2JyZWFrO2Nhc2UiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwiOmlmKG51bGwhPWkpdGhyb3cgRXJyb3IodSg5MSkpO2JyZWFrO2RlZmF1bHQ6Y24oZSx0LG8saSxuLG51bGwpfXR3KGUsbCxhLHIpO3JldHVybjtjYXNlIm9wdGlvbiI6Zm9yKHMgaW4gbiluLmhhc093blByb3BlcnR5KHMpJiZudWxsIT0obD1uW3NdKSYmKCJzZWxlY3RlZCI9PT1zP2Uuc2VsZWN0ZWQ9bCYmImZ1bmN0aW9uIiE9dHlwZW9mIGwmJiJzeW1ib2wiIT10eXBlb2YgbDpjbihlLHQscyxsLG4sbnVsbCkpO3JldHVybjtjYXNlImRpYWxvZyI6c0ooImJlZm9yZXRvZ2dsZSIsZSksc0ooInRvZ2dsZSIsZSksc0ooImNhbmNlbCIsZSksc0ooImNsb3NlIixlKTticmVhaztjYXNlImlmcmFtZSI6Y2FzZSJvYmplY3QiOnNKKCJsb2FkIixlKTticmVhaztjYXNlInZpZGVvIjpjYXNlImF1ZGlvIjpmb3IobD0wO2w8c1gubGVuZ3RoO2wrKylzSihzWFtsXSxlKTticmVhaztjYXNlImltYWdlIjpzSigiZXJyb3IiLGUpLHNKKCJsb2FkIixlKTticmVhaztjYXNlImRldGFpbHMiOnNKKCJ0b2dnbGUiLGUpO2JyZWFrO2Nhc2UiZW1iZWQiOmNhc2Uic291cmNlIjpjYXNlImxpbmsiOnNKKCJlcnJvciIsZSksc0ooImxvYWQiLGUpO2Nhc2UiYXJlYSI6Y2FzZSJiYXNlIjpjYXNlImJyIjpjYXNlImNvbCI6Y2FzZSJociI6Y2FzZSJrZXlnZW4iOmNhc2UibWV0YSI6Y2FzZSJwYXJhbSI6Y2FzZSJ0cmFjayI6Y2FzZSJ3YnIiOmNhc2UibWVudWl0ZW0iOmZvcihjIGluIG4paWYobi5oYXNPd25Qcm9wZXJ0eShjKSYmbnVsbCE9KGw9bltjXSkpc3dpdGNoKGMpe2Nhc2UiY2hpbGRyZW4iOmNhc2UiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwiOnRocm93IEVycm9yKHUoMTM3LHQpKTtkZWZhdWx0OmNuKGUsdCxjLGwsbixudWxsKX1yZXR1cm47ZGVmYXVsdDppZih0Xyh0KSl7Zm9yKGYgaW4gbiluLmhhc093blByb3BlcnR5KGYpJiZ2b2lkIDAhPT0obD1uW2ZdKSYmY3IoZSx0LGYsbCxuLHZvaWQgMCk7cmV0dXJufX1mb3IoaSBpbiBuKW4uaGFzT3duUHJvcGVydHkoaSkmJm51bGwhPShsPW5baV0pJiZjbihlLHQsaSxsLG4sbnVsbCl9ZnVuY3Rpb24gY2EoZSl7c3dpdGNoKGUpe2Nhc2UiY3NzIjpjYXNlInNjcmlwdCI6Y2FzZSJmb250IjpjYXNlImltZyI6Y2FzZSJpbWFnZSI6Y2FzZSJpbnB1dCI6Y2FzZSJsaW5rIjpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiExfX12YXIgY289bnVsbCxjaT1udWxsO2Z1bmN0aW9uIGN1KGUpe3JldHVybiA5PT09ZS5ub2RlVHlwZT9lOmUub3duZXJEb2N1bWVudH1mdW5jdGlvbiBjcyhlKXtzd2l0Y2goZSl7Y2FzZSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI6cmV0dXJuIDE7Y2FzZSJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIjpyZXR1cm4gMjtkZWZhdWx0OnJldHVybiAwfX1mdW5jdGlvbiBjYyhlLHQpe2lmKDA9PT1lKXN3aXRjaCh0KXtjYXNlInN2ZyI6cmV0dXJuIDE7Y2FzZSJtYXRoIjpyZXR1cm4gMjtkZWZhdWx0OnJldHVybiAwfXJldHVybiAxPT09ZSYmImZvcmVpZ25PYmplY3QiPT09dD8wOmV9ZnVuY3Rpb24gY2YoZSx0KXtyZXR1cm4idGV4dGFyZWEiPT09ZXx8Im5vc2NyaXB0Ij09PWV8fCJzdHJpbmciPT10eXBlb2YgdC5jaGlsZHJlbnx8Im51bWJlciI9PXR5cGVvZiB0LmNoaWxkcmVufHwiYmlnaW50Ij09dHlwZW9mIHQuY2hpbGRyZW58fCJvYmplY3QiPT10eXBlb2YgdC5kYW5nZXJvdXNseVNldElubmVySFRNTCYmbnVsbCE9PXQuZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwmJm51bGwhPXQuZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwuX19odG1sfXZhciBjZD1udWxsLGNwPSJmdW5jdGlvbiI9PXR5cGVvZiBzZXRUaW1lb3V0P3NldFRpbWVvdXQ6dm9pZCAwLGNtPSJmdW5jdGlvbiI9PXR5cGVvZiBjbGVhclRpbWVvdXQ/Y2xlYXJUaW1lb3V0OnZvaWQgMCxjaD0iZnVuY3Rpb24iPT10eXBlb2YgUHJvbWlzZT9Qcm9taXNlOnZvaWQgMCxjZz0iZnVuY3Rpb24iPT10eXBlb2YgcXVldWVNaWNyb3Rhc2s/cXVldWVNaWNyb3Rhc2s6dm9pZCAwIT09Y2g/ZnVuY3Rpb24oZSl7cmV0dXJuIGNoLnJlc29sdmUobnVsbCkudGhlbihlKS5jYXRjaChjdil9OmNwO2Z1bmN0aW9uIGN2KGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyBlfSl9ZnVuY3Rpb24gY3koZSl7cmV0dXJuImhlYWQiPT09ZX1mdW5jdGlvbiBjYihlLHQpe3ZhciBuPXQscj0wO2Rve3ZhciBsPW4ubmV4dFNpYmxpbmc7aWYoZS5yZW1vdmVDaGlsZChuKSxsJiY4PT09bC5ub2RlVHlwZSlpZigiLyQiPT09KG49bC5kYXRhKXx8Ii8mIj09PW4pe2lmKDA9PT1yKXtlLnJlbW92ZUNoaWxkKGwpLGZHKHQpO3JldHVybn1yLS19ZWxzZSBpZigiJCI9PT1ufHwiJD8iPT09bnx8IiR+Ij09PW58fCIkISI9PT1ufHwiJiI9PT1uKXIrKztlbHNlIGlmKCJodG1sIj09PW4pY0coZS5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCk7ZWxzZSBpZigiaGVhZCI9PT1uKXtjRyhuPWUub3duZXJEb2N1bWVudC5oZWFkKTtmb3IodmFyIGE9bi5maXJzdENoaWxkO2E7KXt2YXIgbz1hLm5leHRTaWJsaW5nLGk9YS5ub2RlTmFtZTthW2VaXXx8IlNDUklQVCI9PT1pfHwiU1RZTEUiPT09aXx8IkxJTksiPT09aSYmInN0eWxlc2hlZXQiPT09YS5yZWwudG9Mb3dlckNhc2UoKXx8bi5yZW1vdmVDaGlsZChhKSxhPW99fWVsc2UiYm9keSI9PT1uJiZjRyhlLm93bmVyRG9jdW1lbnQuYm9keSk7bj1sfXdoaWxlKG4pZkcodCl9ZnVuY3Rpb24gY3coZSx0KXt2YXIgbj1lO2U9MDtkb3t2YXIgcj1uLm5leHRTaWJsaW5nO2lmKDE9PT1uLm5vZGVUeXBlP3Q/KG4uX3N0YXNoZWREaXNwbGF5PW4uc3R5bGUuZGlzcGxheSxuLnN0eWxlLmRpc3BsYXk9Im5vbmUiKToobi5zdHlsZS5kaXNwbGF5PW4uX3N0YXNoZWREaXNwbGF5fHwiIiwiIj09PW4uZ2V0QXR0cmlidXRlKCJzdHlsZSIpJiZuLnJlbW92ZUF0dHJpYnV0ZSgic3R5bGUiKSk6Mz09PW4ubm9kZVR5cGUmJih0PyhuLl9zdGFzaGVkVGV4dD1uLm5vZGVWYWx1ZSxuLm5vZGVWYWx1ZT0iIik6bi5ub2RlVmFsdWU9bi5fc3Rhc2hlZFRleHR8fCIiKSxyJiY4PT09ci5ub2RlVHlwZSlpZigiLyQiPT09KG49ci5kYXRhKSlpZigwPT09ZSlicmVhaztlbHNlIGUtLTtlbHNlIiQiIT09biYmIiQ/IiE9PW4mJiIkfiIhPT1uJiYiJCEiIT09bnx8ZSsrO249cn13aGlsZShuKX1mdW5jdGlvbiBjayhlLHQsbil7aWYodD1DU1MuZXNjYXBlKHQpIT09dD8ici0iK2J0b2EodCkucmVwbGFjZSgvPS9nLCIiKTp0LGUuc3R5bGUudmlld1RyYW5zaXRpb25OYW1lPXQsbnVsbCE9biYmKGUuc3R5bGUudmlld1RyYW5zaXRpb25DbGFzcz1uKSwiaW5saW5lIj09PShuPWdldENvbXB1dGVkU3R5bGUoZSkpLmRpc3BsYXkpe2lmKDE9PT0odD1lLmdldENsaWVudFJlY3RzKCkpLmxlbmd0aCl2YXIgcj0xO2Vsc2UgZm9yKHZhciBsPXI9MDtsPHQubGVuZ3RoO2wrKyl7dmFyIGE9dFtsXTswPGEud2lkdGgmJjA8YS5oZWlnaHQmJnIrK30xPT09ciYmKChlPWUuc3R5bGUpLmRpc3BsYXk9MT09PXQubGVuZ3RoPyJpbmxpbmUtYmxvY2siOiJibG9jayIsZS5tYXJnaW5Ub3A9Ii0iK24ucGFkZGluZ1RvcCxlLm1hcmdpbkJvdHRvbT0iLSIrbi5wYWRkaW5nQm90dG9tKX19ZnVuY3Rpb24gY1MoZSx0KXtlPWUuc3R5bGU7dmFyIG49bnVsbCE9KHQ9dC5zdHlsZSk/dC5oYXNPd25Qcm9wZXJ0eSgidmlld1RyYW5zaXRpb25OYW1lIik/dC52aWV3VHJhbnNpdGlvbk5hbWU6dC5oYXNPd25Qcm9wZXJ0eSgidmlldy10cmFuc2l0aW9uLW5hbWUiKT90WyJ2aWV3LXRyYW5zaXRpb24tbmFtZSJdOm51bGw6bnVsbDtlLnZpZXdUcmFuc2l0aW9uTmFtZT1udWxsPT1ufHwiYm9vbGVhbiI9PXR5cGVvZiBuPyIiOigiIituKS50cmltKCksbj1udWxsIT10P3QuaGFzT3duUHJvcGVydHkoInZpZXdUcmFuc2l0aW9uQ2xhc3MiKT90LnZpZXdUcmFuc2l0aW9uQ2xhc3M6dC5oYXNPd25Qcm9wZXJ0eSgidmlldy10cmFuc2l0aW9uLWNsYXNzIik/dFsidmlldy10cmFuc2l0aW9uLWNsYXNzIl06bnVsbDpudWxsLGUudmlld1RyYW5zaXRpb25DbGFzcz1udWxsPT1ufHwiYm9vbGVhbiI9PXR5cGVvZiBuPyIiOigiIituKS50cmltKCksImlubGluZS1ibG9jayI9PT1lLmRpc3BsYXkmJihudWxsPT10P2UuZGlzcGxheT1lLm1hcmdpbj0iIjoobj10LmRpc3BsYXksZS5kaXNwbGF5PW51bGw9PW58fCJib29sZWFuIj09dHlwZW9mIG4/IiI6bixudWxsIT0obj10Lm1hcmdpbik/ZS5tYXJnaW49bjoobj10Lmhhc093blByb3BlcnR5KCJtYXJnaW5Ub3AiKT90Lm1hcmdpblRvcDp0WyJtYXJnaW4tdG9wIl0sZS5tYXJnaW5Ub3A9bnVsbD09bnx8ImJvb2xlYW4iPT10eXBlb2Ygbj8iIjpuLHQ9dC5oYXNPd25Qcm9wZXJ0eSgibWFyZ2luQm90dG9tIik/dC5tYXJnaW5Cb3R0b206dFsibWFyZ2luLWJvdHRvbSJdLGUubWFyZ2luQm90dG9tPW51bGw9PXR8fCJib29sZWFuIj09dHlwZW9mIHQ/IiI6dCkpKX1mdW5jdGlvbiBjRShlLHQsbil7cmV0dXJuIG49bi5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3LHtyZWN0OmUsYWJzOiJhYnNvbHV0ZSI9PT10LnBvc2l0aW9ufHwiZml4ZWQiPT09dC5wb3NpdGlvbixjbGlwOiJub25lIiE9PXQuY2xpcFBhdGh8fCJ2aXNpYmxlIiE9PXQub3ZlcmZsb3d8fCJub25lIiE9PXQuZmlsdGVyfHwibm9uZSIhPT10Lm1hc2t8fCJub25lIiE9PXQubWFza3x8IjBweCIhPT10LmJvcmRlclJhZGl1cyx2aWV3OjA8PWUuYm90dG9tJiYwPD1lLnJpZ2h0JiZlLnRvcDw9bi5pbm5lckhlaWdodCYmZS5sZWZ0PD1uLmlubmVyV2lkdGh9fWZ1bmN0aW9uIGN4KGUpe3JldHVybiBjRShlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGdldENvbXB1dGVkU3R5bGUoZSksZSl9ZnVuY3Rpb24gY18oZSl7dmFyIHQ9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtyZXR1cm4gY0UodD1uZXcgRE9NUmVjdCh0LngrMmU0LHQueSsyZTQsdC53aWR0aCx0LmhlaWdodCksZ2V0Q29tcHV0ZWRTdHlsZShlKSxlKX1mdW5jdGlvbiBjUChlKXt0aGlzLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLGUpLHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGUpfWZ1bmN0aW9uIGNOKGUsdCl7dGhpcy5fc2NvcGU9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHRoaXMuX3NlbGVjdG9yPSI6OnZpZXctdHJhbnNpdGlvbi0iK2UrIigiK3QrIikifWZ1bmN0aW9uIGNDKGUpe3JldHVybntuYW1lOmUsZ3JvdXA6bmV3IGNOKCJncm91cCIsZSksaW1hZ2VQYWlyOm5ldyBjTigiaW1hZ2UtcGFpciIsZSksb2xkOm5ldyBjTigib2xkIixlKSxuZXc6bmV3IGNOKCJuZXciLGUpfX1mdW5jdGlvbiBjVChlKXt0aGlzLl9mcmFnbWVudEZpYmVyPWUsdGhpcy5fb2JzZXJ2ZXJzPXRoaXMuX2V2ZW50TGlzdGVuZXJzPW51bGx9ZnVuY3Rpb24gY08oZSx0LG4scil7cmV0dXJuIGcoZSkuYWRkRXZlbnRMaXN0ZW5lcih0LG4sciksITF9ZnVuY3Rpb24gY3ooZSx0LG4scil7cmV0dXJuIGcoZSkucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LG4sciksITF9ZnVuY3Rpb24gY0woZSl7cmV0dXJuIG51bGw9PWU/IjAiOiJib29sZWFuIj09dHlwZW9mIGU/ImM9IisoZT8iMSI6IjAiKToiYz0iKyhlLmNhcHR1cmU/IjEiOiIwIikrIiZvPSIrKGUub25jZT8iMSI6IjAiKSsiJnA9IisoZS5wYXNzaXZlPyIxIjoiMCIpfWZ1bmN0aW9uIGNSKGUsdCxuLHIpe2Zvcih2YXIgbD0wO2w8ZS5sZW5ndGg7bCsrKXt2YXIgYT1lW2xdO2lmKGEudHlwZT09PXQmJmEubGlzdGVuZXI9PT1uJiZjTChhLm9wdGlvbnNPclVzZUNhcHR1cmUpPT09Y0wocikpcmV0dXJuIGx9cmV0dXJuIC0xfWZ1bmN0aW9uIGNNKGUsdCl7dmFyIG49ZT1nKGUpLHI9dDtmdW5jdGlvbiBsKCl7YT0hMH12YXIgYT0hMTt0cnl7bi5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsbCksKG4uZm9jdXN8fEhUTUxFbGVtZW50LnByb3RvdHlwZS5mb2N1cykuY2FsbChuLHIpfWZpbmFsbHl7bi5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1cyIsbCl9cmV0dXJuIGF9ZnVuY3Rpb24gY0koZSx0KXtyZXR1cm4gdC5wdXNoKGUpLCExfWZ1bmN0aW9uIGNEKGUpe3JldHVybihlPWcoZSkpPT09ZS5vd25lckRvY3VtZW50LmFjdGl2ZUVsZW1lbnQmJihlLmJsdXIoKSwhMCl9ZnVuY3Rpb24gY0YoZSx0KXtyZXR1cm4gZT1nKGUpLHQub2JzZXJ2ZShlKSwhMX1mdW5jdGlvbiBjQShlLHQpe3JldHVybiBlPWcoZSksdC51bm9ic2VydmUoZSksITF9ZnVuY3Rpb24gY2ooZSx0KXtyZXR1cm4gZT1nKGUpLHQucHVzaC5hcHBseSh0LGUuZ2V0Q2xpZW50UmVjdHMoKSksITF9ZnVuY3Rpb24gY1UoZSx0KXt2YXIgbj10Ll9ldmVudExpc3RlbmVycztpZihudWxsIT09bilmb3IodmFyIHI9MDtyPG4ubGVuZ3RoO3IrKyl7dmFyIGw9bltyXTtlLmFkZEV2ZW50TGlzdGVuZXIobC50eXBlLGwubGlzdGVuZXIsbC5vcHRpb25zT3JVc2VDYXB0dXJlKX1udWxsIT09dC5fb2JzZXJ2ZXJzJiZ0Ll9vYnNlcnZlcnMuZm9yRWFjaChmdW5jdGlvbih0KXt0Lm9ic2VydmUoZSl9KX1mdW5jdGlvbiBjQihlKXt2YXIgdD1lLmZpcnN0Q2hpbGQ7Zm9yKHQmJjEwPT09dC5ub2RlVHlwZSYmKHQ9dC5uZXh0U2libGluZyk7dDspe3ZhciBuPXQ7c3dpdGNoKHQ9dC5uZXh0U2libGluZyxuLm5vZGVOYW1lKXtjYXNlIkhUTUwiOmNhc2UiSEVBRCI6Y2FzZSJCT0RZIjpjQihuKSxlMChuKTtjb250aW51ZTtjYXNlIlNDUklQVCI6Y2FzZSJTVFlMRSI6Y29udGludWU7Y2FzZSJMSU5LIjppZigic3R5bGVzaGVldCI9PT1uLnJlbC50b0xvd2VyQ2FzZSgpKWNvbnRpbnVlfWUucmVtb3ZlQ2hpbGQobil9fWZ1bmN0aW9uIGNWKGUsdCl7Zm9yKDs4IT09ZS5ub2RlVHlwZTspaWYoKDEhPT1lLm5vZGVUeXBlfHwiSU5QVVQiIT09ZS5ub2RlTmFtZXx8ImhpZGRlbiIhPT1lLnR5cGUpJiYhdHx8bnVsbD09PShlPWNRKGUubmV4dFNpYmxpbmcpKSlyZXR1cm4gbnVsbDtyZXR1cm4gZX1mdW5jdGlvbiBjSChlKXtyZXR1cm4iJD8iPT09ZS5kYXRhfHwiJH4iPT09ZS5kYXRhfWZ1bmN0aW9uIGMkKGUpe3JldHVybiIkISI9PT1lLmRhdGF8fCIkPyI9PT1lLmRhdGEmJiJsb2FkaW5nIiE9PWUub3duZXJEb2N1bWVudC5yZWFkeVN0YXRlfWZ1bmN0aW9uIGNRKGUpe2Zvcig7bnVsbCE9ZTtlPWUubmV4dFNpYmxpbmcpe3ZhciB0PWUubm9kZVR5cGU7aWYoMT09PXR8fDM9PT10KWJyZWFrO2lmKDg9PT10KXtpZigiJCI9PT0odD1lLmRhdGEpfHwiJCEiPT09dHx8IiQ/Ij09PXR8fCIkfiI9PT10fHwiJiI9PT10fHwiRiEiPT09dHx8IkYiPT09dClicmVhaztpZigiLyQiPT09dHx8Ii8mIj09PXQpcmV0dXJuIG51bGx9fXJldHVybiBlfWNOLnByb3RvdHlwZS5hbmltYXRlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuKHQ9Im51bWJlciI9PXR5cGVvZiB0P3tkdXJhdGlvbjp0fTp4KHt9LHQpKS5wc2V1ZG9FbGVtZW50PXRoaXMuX3NlbGVjdG9yLHRoaXMuX3Njb3BlLmFuaW1hdGUoZSx0KX0sY04ucHJvdG90eXBlLmdldEFuaW1hdGlvbnM9ZnVuY3Rpb24oKXtmb3IodmFyIGU9dGhpcy5fc2NvcGUsdD10aGlzLl9zZWxlY3RvcixuPWUuZ2V0QW5pbWF0aW9ucyh7c3VidHJlZTohMH0pLHI9W10sbD0wO2w8bi5sZW5ndGg7bCsrKXt2YXIgYT1uW2xdLmVmZmVjdDtudWxsIT09YSYmYS50YXJnZXQ9PT1lJiZhLnBzZXVkb0VsZW1lbnQ9PT10JiZyLnB1c2gobltsXSl9cmV0dXJuIHJ9LGNOLnByb3RvdHlwZS5nZXRDb21wdXRlZFN0eWxlPWZ1bmN0aW9uKCl7cmV0dXJuIGdldENvbXB1dGVkU3R5bGUodGhpcy5fc2NvcGUsdGhpcy5fc2VsZWN0b3IpfSxjVC5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihlLHQsbil7bnVsbD09PXRoaXMuX2V2ZW50TGlzdGVuZXJzJiYodGhpcy5fZXZlbnRMaXN0ZW5lcnM9W10pO3ZhciByPXRoaXMuX2V2ZW50TGlzdGVuZXJzOy0xPT09Y1IocixlLHQsbikmJihyLnB1c2goe3R5cGU6ZSxsaXN0ZW5lcjp0LG9wdGlvbnNPclVzZUNhcHR1cmU6bn0pLG0odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMSxjTyxlLHQsbikpLHRoaXMuX2V2ZW50TGlzdGVuZXJzPXJ9LGNULnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj10aGlzLl9ldmVudExpc3RlbmVycztudWxsIT1yJiYwPHIubGVuZ3RoJiYobSh0aGlzLl9mcmFnbWVudEZpYmVyLmNoaWxkLCExLGN6LGUsdCxuKSxlPWNSKHIsZSx0LG4pLG51bGwhPT10aGlzLl9ldmVudExpc3RlbmVycyYmdGhpcy5fZXZlbnRMaXN0ZW5lcnMuc3BsaWNlKGUsMSkpfSxjVC5wcm90b3R5cGUuZGlzcGF0Y2hFdmVudD1mdW5jdGlvbihlKXt2YXIgdD1oKHRoaXMuX2ZyYWdtZW50RmliZXIpO2lmKG51bGw9PT10KXJldHVybiEwO3Q9Zyh0KTt2YXIgbj10aGlzLl9ldmVudExpc3RlbmVycztpZihudWxsIT09biYmMDxuLmxlbmd0aHx8IWUuYnViYmxlcyl7dmFyIHI9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiIpO2lmKG4pZm9yKHZhciBsPTA7bDxuLmxlbmd0aDtsKyspe3ZhciBhPW5bbF07ci5hZGRFdmVudExpc3RlbmVyKGEudHlwZSxhLmxpc3RlbmVyLGEub3B0aW9uc09yVXNlQ2FwdHVyZSl9aWYodC5hcHBlbmRDaGlsZChyKSxlPXIuZGlzcGF0Y2hFdmVudChlKSxuKWZvcihsPTA7bDxuLmxlbmd0aDtsKyspYT1uW2xdLHIucmVtb3ZlRXZlbnRMaXN0ZW5lcihhLnR5cGUsYS5saXN0ZW5lcixhLm9wdGlvbnNPclVzZUNhcHR1cmUpO3JldHVybiB0LnJlbW92ZUNoaWxkKHIpLGV9cmV0dXJuIHQuZGlzcGF0Y2hFdmVudChlKX0sY1QucHJvdG90eXBlLmZvY3VzPWZ1bmN0aW9uKGUpe20odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMCxjTSxlLHZvaWQgMCx2b2lkIDApfSxjVC5wcm90b3R5cGUuZm9jdXNMYXN0PWZ1bmN0aW9uKGUpe3ZhciB0PVtdO20odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMCxjSSx0LHZvaWQgMCx2b2lkIDApO2Zvcih2YXIgbj10Lmxlbmd0aC0xOzA8PW4mJiFjTSh0W25dLGUpO24tLSk7fSxjVC5wcm90b3R5cGUuYmx1cj1mdW5jdGlvbigpe20odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMSxjRCx2b2lkIDAsdm9pZCAwLHZvaWQgMCl9LGNULnByb3RvdHlwZS5vYnNlcnZlVXNpbmc9ZnVuY3Rpb24oZSl7bnVsbD09PXRoaXMuX29ic2VydmVycyYmKHRoaXMuX29ic2VydmVycz1uZXcgU2V0KSx0aGlzLl9vYnNlcnZlcnMuYWRkKGUpLG0odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMSxjRixlLHZvaWQgMCx2b2lkIDApfSxjVC5wcm90b3R5cGUudW5vYnNlcnZlVXNpbmc9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5fb2JzZXJ2ZXJzO251bGwhPT10JiZ0LmhhcyhlKSYmKHQuZGVsZXRlKGUpLG0odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMSxjQSxlLHZvaWQgMCx2b2lkIDApKX0sY1QucHJvdG90eXBlLmdldENsaWVudFJlY3RzPWZ1bmN0aW9uKCl7dmFyIGU9W107cmV0dXJuIG0odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMSxjaixlLHZvaWQgMCx2b2lkIDApLGV9LGNULnByb3RvdHlwZS5nZXRSb290Tm9kZT1mdW5jdGlvbihlKXt2YXIgdD1oKHRoaXMuX2ZyYWdtZW50RmliZXIpO3JldHVybiBudWxsPT09dD90aGlzOmcodCkuZ2V0Um9vdE5vZGUoZSl9LGNULnByb3RvdHlwZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbj1mdW5jdGlvbihlKXt2YXIgdD1oKHRoaXMuX2ZyYWdtZW50RmliZXIpO2lmKG51bGw9PT10KXJldHVybiBOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0RJU0NPTk5FQ1RFRDt2YXIgbj1bXTttKHRoaXMuX2ZyYWdtZW50RmliZXIuY2hpbGQsITEsY0ksbix2b2lkIDAsdm9pZCAwKTt2YXIgcj1nKHQpO2lmKDA9PT1uLmxlbmd0aCl7bj10aGlzLl9mcmFnbWVudEZpYmVyO3ZhciBsPXIuY29tcGFyZURvY3VtZW50UG9zaXRpb24oZSk7cmV0dXJuIHQ9bCxyPT09ZT90PU5vZGUuRE9DVU1FTlRfUE9TSVRJT05fQ09OVEFJTlM6bCZOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0NPTlRBSU5FRF9CWSYmKG0obi5zaWJsaW5nLCExLGIpLG49dix2PW51bGwsdD1udWxsPT09bj9Ob2RlLkRPQ1VNRU5UX1BPU0lUSU9OX1BSRUNFRElORzowPT09KGU9ZyhuKS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihlKSl8fGUmTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9GT0xMT1dJTkc/Tm9kZS5ET0NVTUVOVF9QT1NJVElPTl9GT0xMT1dJTkc6Tm9kZS5ET0NVTUVOVF9QT1NJVElPTl9QUkVDRURJTkcpLHR8Tm9kZS5ET0NVTUVOVF9QT1NJVElPTl9JTVBMRU1FTlRBVElPTl9TUEVDSUZJQ310PWcoblswXSksbD1nKG5bbi5sZW5ndGgtMV0pO2Zvcih2YXIgYT1nKG5bMF0pLG89ITEsaT10aGlzLl9mcmFnbWVudEZpYmVyLnJldHVybjtudWxsIT09aSYmKDQ9PT1pLnRhZyYmKG89ITApLDMhPT1pLnRhZyYmNSE9PWkudGFnKTspaT1pLnJldHVybjtpZihudWxsPT0oYT1vP2EucGFyZW50RWxlbWVudDpyKSlyZXR1cm4gTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9ESVNDT05ORUNURUQ7cj1hLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHQpJk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fQ09OVEFJTkVEX0JZLGE9YS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihsKSZOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0NPTlRBSU5FRF9CWSxvPXQuY29tcGFyZURvY3VtZW50UG9zaXRpb24oZSk7dmFyIHU9bC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihlKTtyZXR1cm4gaT1vJk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fQ09OVEFJTkVEX0JZfHx1Jk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fQ09OVEFJTkVEX0JZLHU9ciYmYSYmbyZOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0ZPTExPV0lORyYmdSZOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX1BSRUNFRElORywodD1yJiZ0PT09ZXx8YSYmbD09PWV8fGl8fHU/Tm9kZS5ET0NVTUVOVF9QT1NJVElPTl9DT05UQUlORURfQlk6KHJ8fHQhPT1lKSYmKGF8fGwhPT1lKT9vOk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fSU1QTEVNRU5UQVRJT05fU1BFQ0lGSUMpJk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fRElTQ09OTkVDVEVEfHx0Jk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fSU1QTEVNRU5UQVRJT05fU1BFQ0lGSUN8fGZ1bmN0aW9uKGUsdCxuLHIsbCl7dmFyIGE9ZTEobCk7aWYoZSZOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0NPTlRBSU5FRF9CWSl7aWYobj0hIWEpZTp7Zm9yKDtudWxsIT09YTspe2lmKDc9PT1hLnRhZyYmKGE9PT10fHxhLmFsdGVybmF0ZT09PXQpKXtuPSEwO2JyZWFrIGV9YT1hLnJldHVybn1uPSExfXJldHVybiBufWlmKGUmTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9DT05UQUlOUyl7aWYobnVsbD09PWEpcmV0dXJuIGE9bC5vd25lckRvY3VtZW50LGw9PT1hfHxsPT09YS5ib2R5O2U6e2ZvcihhPXQsdD1oKHQpO251bGwhPT1hOyl7aWYoKDU9PT1hLnRhZ3x8Mz09PWEudGFnKSYmKGE9PT10fHxhLmFsdGVybmF0ZT09PXQpKXthPSEwO2JyZWFrIGV9YT1hLnJldHVybn1hPSExfXJldHVybiBhfXJldHVybiBlJk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fUFJFQ0VESU5HPygodD0hIWEpJiYhKHQ9YT09PW4pJiYobnVsbD09PSh0PUUobixhLFMpKT90PSExOihtKHQsITAsdyxhLG4pLGE9dix2PW51bGwsdD1udWxsIT09YSkpLHQpOiEhKGUmTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9GT0xMT1dJTkcpJiYoKHQ9ISFhKSYmISh0PWE9PT1yKSYmKG51bGw9PT0odD1FKHIsYSxTKSk/dD0hMToobSh0LCEwLGssYSxyKSxhPXYseT12PW51bGwsdD1udWxsIT09YSkpLHQpfSh0LHRoaXMuX2ZyYWdtZW50RmliZXIsblswXSxuW24ubGVuZ3RoLTFdLGUpP3Q6Tm9kZS5ET0NVTUVOVF9QT1NJVElPTl9JTVBMRU1FTlRBVElPTl9TUEVDSUZJQ30sY1QucHJvdG90eXBlLnNjcm9sbEludG9WaWV3PWZ1bmN0aW9uKGUpe2lmKCJvYmplY3QiPT10eXBlb2YgZSl0aHJvdyBFcnJvcih1KDU2NikpO3ZhciB0PVtdO20odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMSxjSSx0LHZvaWQgMCx2b2lkIDApO3ZhciBuPSExIT09ZTtpZigwPT09dC5sZW5ndGgpe3Q9dGhpcy5fZnJhZ21lbnRGaWJlcjt2YXIgcj1bbnVsbCxudWxsXSxsPWgodCk7bnVsbCE9PWwmJmZ1bmN0aW9uIGUodCxuLHIpe2Zvcih2YXIgbD0zPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1szXSYmYXJndW1lbnRzWzNdO251bGwhPT1yOyl7aWYocj09PW4paWYobD0hMCwhci5zaWJsaW5nKXJldHVybiEwO2Vsc2Ugcj1yLnNpYmxpbmc7aWYoNT09PXIudGFnKXtpZihsKXJldHVybiB0WzFdPXIsITA7dFswXT1yfWVsc2UgaWYoKDIyIT09ci50YWd8fG51bGw9PT1yLm1lbW9pemVkU3RhdGUpJiZlKHQsbixyLmNoaWxkLGwpKXJldHVybiEwO3I9ci5zaWJsaW5nfXJldHVybiExfShyLHQsbC5jaGlsZCksbnVsbCE9PShuPW4/clsxXXx8clswXXx8aCh0aGlzLl9mcmFnbWVudEZpYmVyKTpyWzBdfHxyWzFdKSYmZyhuKS5zY3JvbGxJbnRvVmlldyhlKX1lbHNlIGZvcihyPW4/dC5sZW5ndGgtMTowO3IhPT0obj8tMTp0Lmxlbmd0aCk7KWcodFtyXSkuc2Nyb2xsSW50b1ZpZXcoZSkscis9bj8tMToxfTt2YXIgY1c9bnVsbDtmdW5jdGlvbiBjcShlKXtlPWUubmV4dFNpYmxpbmc7Zm9yKHZhciB0PTA7ZTspe2lmKDg9PT1lLm5vZGVUeXBlKXt2YXIgbj1lLmRhdGE7aWYoIi8kIj09PW58fCIvJiI9PT1uKXtpZigwPT09dClyZXR1cm4gY1EoZS5uZXh0U2libGluZyk7dC0tfWVsc2UiJCIhPT1uJiYiJCEiIT09biYmIiQ/IiE9PW4mJiIkfiIhPT1uJiYiJiIhPT1ufHx0Kyt9ZT1lLm5leHRTaWJsaW5nfXJldHVybiBudWxsfWZ1bmN0aW9uIGNLKGUpe2U9ZS5wcmV2aW91c1NpYmxpbmc7Zm9yKHZhciB0PTA7ZTspe2lmKDg9PT1lLm5vZGVUeXBlKXt2YXIgbj1lLmRhdGE7aWYoIiQiPT09bnx8IiQhIj09PW58fCIkPyI9PT1ufHwiJH4iPT09bnx8IiYiPT09bil7aWYoMD09PXQpcmV0dXJuIGU7dC0tfWVsc2UiLyQiIT09biYmIi8mIiE9PW58fHQrK31lPWUucHJldmlvdXNTaWJsaW5nfXJldHVybiBudWxsfWZ1bmN0aW9uIGNYKGUsdCxuKXtzd2l0Y2godD1jdShuKSxlKXtjYXNlImh0bWwiOmlmKCEoZT10LmRvY3VtZW50RWxlbWVudCkpdGhyb3cgRXJyb3IodSg0NTIpKTtyZXR1cm4gZTtjYXNlImhlYWQiOmlmKCEoZT10LmhlYWQpKXRocm93IEVycm9yKHUoNDUzKSk7cmV0dXJuIGU7Y2FzZSJib2R5IjppZighKGU9dC5ib2R5KSl0aHJvdyBFcnJvcih1KDQ1NCkpO3JldHVybiBlO2RlZmF1bHQ6dGhyb3cgRXJyb3IodSg0NTEpKX19ZnVuY3Rpb24gY0coZSl7Zm9yKHZhciB0PWUuYXR0cmlidXRlczt0Lmxlbmd0aDspZS5yZW1vdmVBdHRyaWJ1dGVOb2RlKHRbMF0pO2UwKGUpfXZhciBjWT1uZXcgTWFwLGNKPW5ldyBTZXQ7ZnVuY3Rpb24gY1ooZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGUuZ2V0Um9vdE5vZGU/ZS5nZXRSb290Tm9kZSgpOjk9PT1lLm5vZGVUeXBlP2U6ZS5vd25lckRvY3VtZW50fXZhciBjMD1xLmQ7cS5kPXtmOmZ1bmN0aW9uKCl7dmFyIGU9YzAuZigpLHQ9c3QoKTtyZXR1cm4gZXx8dH0scjpmdW5jdGlvbihlKXt2YXIgdD1lMihlKTtudWxsIT09dCYmNT09PXQudGFnJiYiZm9ybSI9PT10LnR5cGU/b2ModCk6YzAucihlKX0sRDpmdW5jdGlvbihlKXtjMC5EKGUpLGMyKCJkbnMtcHJlZmV0Y2giLGUsbnVsbCl9LEM6ZnVuY3Rpb24oZSx0KXtjMC5DKGUsdCksYzIoInByZWNvbm5lY3QiLGUsdCl9LEw6ZnVuY3Rpb24oZSx0LG4pe2lmKGMwLkwoZSx0LG4pLGMxJiZlJiZ0KXt2YXIgcj0nbGlua1tyZWw9InByZWxvYWQiXVthcz0iJyt0bSh0KSsnIl0nOyJpbWFnZSI9PT10JiZuJiZuLmltYWdlU3JjU2V0PyhyKz0nW2ltYWdlc3Jjc2V0PSInK3RtKG4uaW1hZ2VTcmNTZXQpKyciXScsInN0cmluZyI9PXR5cGVvZiBuLmltYWdlU2l6ZXMmJihyKz0nW2ltYWdlc2l6ZXM9IicrdG0obi5pbWFnZVNpemVzKSsnIl0nKSk6cis9J1tocmVmPSInK3RtKGUpKyciXSc7dmFyIGw9cjtzd2l0Y2godCl7Y2FzZSJzdHlsZSI6bD1jNChlKTticmVhaztjYXNlInNjcmlwdCI6bD1jNihlKX1jWS5oYXMobCl8fChlPXgoe3JlbDoicHJlbG9hZCIsaHJlZjoiaW1hZ2UiPT09dCYmbiYmbi5pbWFnZVNyY1NldD92b2lkIDA6ZSxhczp0fSxuKSxjWS5zZXQobCxlKSxudWxsIT09YzEucXVlcnlTZWxlY3RvcihyKXx8InN0eWxlIj09PXQmJmMxLnF1ZXJ5U2VsZWN0b3IoYzgobCkpfHwic2NyaXB0Ij09PXQmJmMxLnF1ZXJ5U2VsZWN0b3IoYzkobCkpfHwoY2wodD1jMS5jcmVhdGVFbGVtZW50KCJsaW5rIiksImxpbmsiLGUpLGU4KHQpLGMxLmhlYWQuYXBwZW5kQ2hpbGQodCkpKX19LG06ZnVuY3Rpb24oZSx0KXtpZihjMC5tKGUsdCksYzEmJmUpe3ZhciBuPXQmJiJzdHJpbmciPT10eXBlb2YgdC5hcz90LmFzOiJzY3JpcHQiLHI9J2xpbmtbcmVsPSJtb2R1bGVwcmVsb2FkIl1bYXM9IicrdG0obikrJyJdW2hyZWY9IicrdG0oZSkrJyJdJyxsPXI7c3dpdGNoKG4pe2Nhc2UiYXVkaW93b3JrbGV0IjpjYXNlInBhaW50d29ya2xldCI6Y2FzZSJzZXJ2aWNld29ya2VyIjpjYXNlInNoYXJlZHdvcmtlciI6Y2FzZSJ3b3JrZXIiOmNhc2Uic2NyaXB0IjpsPWM2KGUpfWlmKCFjWS5oYXMobCkmJihlPXgoe3JlbDoibW9kdWxlcHJlbG9hZCIsaHJlZjplfSx0KSxjWS5zZXQobCxlKSxudWxsPT09YzEucXVlcnlTZWxlY3RvcihyKSkpe3N3aXRjaChuKXtjYXNlImF1ZGlvd29ya2xldCI6Y2FzZSJwYWludHdvcmtsZXQiOmNhc2Uic2VydmljZXdvcmtlciI6Y2FzZSJzaGFyZWR3b3JrZXIiOmNhc2Uid29ya2VyIjpjYXNlInNjcmlwdCI6aWYoYzEucXVlcnlTZWxlY3RvcihjOShsKSkpcmV0dXJufWNsKG49YzEuY3JlYXRlRWxlbWVudCgibGluayIpLCJsaW5rIixlKSxlOChuKSxjMS5oZWFkLmFwcGVuZENoaWxkKG4pfX19LFg6ZnVuY3Rpb24oZSx0KXtpZihjMC5YKGUsdCksYzEmJmUpe3ZhciBuPWU0KGMxKS5ob2lzdGFibGVTY3JpcHRzLHI9YzYoZSksbD1uLmdldChyKTtsfHwoKGw9YzEucXVlcnlTZWxlY3RvcihjOShyKSkpfHwoZT14KHtzcmM6ZSxhc3luYzohMH0sdCksKHQ9Y1kuZ2V0KHIpKSYmZm4oZSx0KSxlOChsPWMxLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpKSxjbChsLCJsaW5rIixlKSxjMS5oZWFkLmFwcGVuZENoaWxkKGwpKSxsPXt0eXBlOiJzY3JpcHQiLGluc3RhbmNlOmwsY291bnQ6MSxzdGF0ZTpudWxsfSxuLnNldChyLGwpKX19LFM6ZnVuY3Rpb24oZSx0LG4pe2lmKGMwLlMoZSx0LG4pLGMxJiZlKXt2YXIgcj1lNChjMSkuaG9pc3RhYmxlU3R5bGVzLGw9YzQoZSk7dD10fHwiZGVmYXVsdCI7dmFyIGE9ci5nZXQobCk7aWYoIWEpe3ZhciBvPXtsb2FkaW5nOjAscHJlbG9hZDpudWxsfTtpZihhPWMxLnF1ZXJ5U2VsZWN0b3IoYzgobCkpKW8ubG9hZGluZz01O2Vsc2V7ZT14KHtyZWw6InN0eWxlc2hlZXQiLGhyZWY6ZSwiZGF0YS1wcmVjZWRlbmNlIjp0fSxuKSwobj1jWS5nZXQobCkpJiZmdChlLG4pO3ZhciBpPWE9YzEuY3JlYXRlRWxlbWVudCgibGluayIpO2U4KGkpLGNsKGksImxpbmsiLGUpLGkuX3A9bmV3IFByb21pc2UoZnVuY3Rpb24oZSx0KXtpLm9ubG9hZD1lLGkub25lcnJvcj10fSksaS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixmdW5jdGlvbigpe28ubG9hZGluZ3w9MX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGZ1bmN0aW9uKCl7by5sb2FkaW5nfD0yfSksby5sb2FkaW5nfD00LGZlKGEsdCxjMSl9YT17dHlwZToic3R5bGVzaGVldCIsaW5zdGFuY2U6YSxjb3VudDoxLHN0YXRlOm99LHIuc2V0KGwsYSl9fX0sTTpmdW5jdGlvbihlLHQpe2lmKGMwLk0oZSx0KSxjMSYmZSl7dmFyIG49ZTQoYzEpLmhvaXN0YWJsZVNjcmlwdHMscj1jNihlKSxsPW4uZ2V0KHIpO2x8fCgobD1jMS5xdWVyeVNlbGVjdG9yKGM5KHIpKSl8fChlPXgoe3NyYzplLGFzeW5jOiEwLHR5cGU6Im1vZHVsZSJ9LHQpLCh0PWNZLmdldChyKSkmJmZuKGUsdCksZTgobD1jMS5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSksY2wobCwibGluayIsZSksYzEuaGVhZC5hcHBlbmRDaGlsZChsKSksbD17dHlwZToic2NyaXB0IixpbnN0YW5jZTpsLGNvdW50OjEsc3RhdGU6bnVsbH0sbi5zZXQocixsKSl9fX07dmFyIGMxPSJ1Ijx0eXBlb2YgZG9jdW1lbnQ/bnVsbDpkb2N1bWVudDtmdW5jdGlvbiBjMihlLHQsbil7aWYoYzEmJiJzdHJpbmciPT10eXBlb2YgdCYmdCl7dmFyIHI9dG0odCk7cj0nbGlua1tyZWw9IicrZSsnIl1baHJlZj0iJytyKyciXScsInN0cmluZyI9PXR5cGVvZiBuJiYocis9J1tjcm9zc29yaWdpbj0iJytuKyciXScpLGNKLmhhcyhyKXx8KGNKLmFkZChyKSxlPXtyZWw6ZSxjcm9zc09yaWdpbjpuLGhyZWY6dH0sbnVsbD09PWMxLnF1ZXJ5U2VsZWN0b3IocikmJihjbCh0PWMxLmNyZWF0ZUVsZW1lbnQoImxpbmsiKSwibGluayIsZSksZTgodCksYzEuaGVhZC5hcHBlbmRDaGlsZCh0KSkpfX1mdW5jdGlvbiBjMyhlLHQsbixyKXt2YXIgbD0obD1lbi5jdXJyZW50KT9jWihsKTpudWxsO2lmKCFsKXRocm93IEVycm9yKHUoNDQ2KSk7c3dpdGNoKGUpe2Nhc2UibWV0YSI6Y2FzZSJ0aXRsZSI6cmV0dXJuIG51bGw7Y2FzZSJzdHlsZSI6cmV0dXJuInN0cmluZyI9PXR5cGVvZiBuLnByZWNlZGVuY2UmJiJzdHJpbmciPT10eXBlb2Ygbi5ocmVmPyh0PWM0KG4uaHJlZiksKHI9KG49ZTQobCkuaG9pc3RhYmxlU3R5bGVzKS5nZXQodCkpfHwocj17dHlwZToic3R5bGUiLGluc3RhbmNlOm51bGwsY291bnQ6MCxzdGF0ZTpudWxsfSxuLnNldCh0LHIpKSxyKTp7dHlwZToidm9pZCIsaW5zdGFuY2U6bnVsbCxjb3VudDowLHN0YXRlOm51bGx9O2Nhc2UibGluayI6aWYoInN0eWxlc2hlZXQiPT09bi5yZWwmJiJzdHJpbmciPT10eXBlb2Ygbi5ocmVmJiYic3RyaW5nIj09dHlwZW9mIG4ucHJlY2VkZW5jZSl7ZT1jNChuLmhyZWYpO3ZhciBhLG8saSxzLGM9ZTQobCkuaG9pc3RhYmxlU3R5bGVzLGY9Yy5nZXQoZSk7aWYoZnx8KGw9bC5vd25lckRvY3VtZW50fHxsLGY9e3R5cGU6InN0eWxlc2hlZXQiLGluc3RhbmNlOm51bGwsY291bnQ6MCxzdGF0ZTp7bG9hZGluZzowLHByZWxvYWQ6bnVsbH19LGMuc2V0KGUsZiksKGM9bC5xdWVyeVNlbGVjdG9yKGM4KGUpKSkmJiFjLl9wJiYoZi5pbnN0YW5jZT1jLGYuc3RhdGUubG9hZGluZz01KSxjWS5oYXMoZSl8fChuPXtyZWw6InByZWxvYWQiLGFzOiJzdHlsZSIsaHJlZjpuLmhyZWYsY3Jvc3NPcmlnaW46bi5jcm9zc09yaWdpbixpbnRlZ3JpdHk6bi5pbnRlZ3JpdHksbWVkaWE6bi5tZWRpYSxocmVmTGFuZzpuLmhyZWZMYW5nLHJlZmVycmVyUG9saWN5Om4ucmVmZXJyZXJQb2xpY3l9LGNZLnNldChlLG4pLGN8fChhPWwsbz1lLGk9bixzPWYuc3RhdGUsYS5xdWVyeVNlbGVjdG9yKCdsaW5rW3JlbD0icHJlbG9hZCJdW2FzPSJzdHlsZSJdWycrbysiXSIpP3MubG9hZGluZz0xOihzLnByZWxvYWQ9bz1hLmNyZWF0ZUVsZW1lbnQoImxpbmsiKSxvLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLGZ1bmN0aW9uKCl7cmV0dXJuIHMubG9hZGluZ3w9MX0pLG8uYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGZ1bmN0aW9uKCl7cmV0dXJuIHMubG9hZGluZ3w9Mn0pLGNsKG8sImxpbmsiLGkpLGU4KG8pLGEuaGVhZC5hcHBlbmRDaGlsZChvKSkpKSksdCYmbnVsbD09PXIpdGhyb3cgRXJyb3IodSg1MjgsIiIpKTtyZXR1cm4gZn1pZih0JiZudWxsIT09cil0aHJvdyBFcnJvcih1KDUyOSwiIikpO3JldHVybiBudWxsO2Nhc2Uic2NyaXB0IjpyZXR1cm4gdD1uLmFzeW5jLCJzdHJpbmciPT10eXBlb2Yobj1uLnNyYykmJnQmJiJmdW5jdGlvbiIhPXR5cGVvZiB0JiYic3ltYm9sIiE9dHlwZW9mIHQ/KHQ9YzYobiksKHI9KG49ZTQobCkuaG9pc3RhYmxlU2NyaXB0cykuZ2V0KHQpKXx8KHI9e3R5cGU6InNjcmlwdCIsaW5zdGFuY2U6bnVsbCxjb3VudDowLHN0YXRlOm51bGx9LG4uc2V0KHQscikpLHIpOnt0eXBlOiJ2b2lkIixpbnN0YW5jZTpudWxsLGNvdW50OjAsc3RhdGU6bnVsbH07ZGVmYXVsdDp0aHJvdyBFcnJvcih1KDQ0NCxlKSl9fWZ1bmN0aW9uIGM0KGUpe3JldHVybidocmVmPSInK3RtKGUpKyciJ31mdW5jdGlvbiBjOChlKXtyZXR1cm4nbGlua1tyZWw9InN0eWxlc2hlZXQiXVsnK2UrIl0ifWZ1bmN0aW9uIGM1KGUpe3JldHVybiB4KHt9LGUseyJkYXRhLXByZWNlZGVuY2UiOmUucHJlY2VkZW5jZSxwcmVjZWRlbmNlOm51bGx9KX1mdW5jdGlvbiBjNihlKXtyZXR1cm4nW3NyYz0iJyt0bShlKSsnIl0nfWZ1bmN0aW9uIGM5KGUpe3JldHVybiJzY3JpcHRbYXN5bmNdIitlfWZ1bmN0aW9uIGM3KGUsdCxuKXtpZih0LmNvdW50KyssbnVsbD09PXQuaW5zdGFuY2Upc3dpdGNoKHQudHlwZSl7Y2FzZSJzdHlsZSI6dmFyIHI9ZS5xdWVyeVNlbGVjdG9yKCdzdHlsZVtkYXRhLWhyZWZ+PSInK3RtKG4uaHJlZikrJyJdJyk7aWYocilyZXR1cm4gdC5pbnN0YW5jZT1yLGU4KHIpLHI7dmFyIGw9eCh7fSxuLHsiZGF0YS1ocmVmIjpuLmhyZWYsImRhdGEtcHJlY2VkZW5jZSI6bi5wcmVjZWRlbmNlLGhyZWY6bnVsbCxwcmVjZWRlbmNlOm51bGx9KTtyZXR1cm4gZTgocj0oZS5vd25lckRvY3VtZW50fHxlKS5jcmVhdGVFbGVtZW50KCJzdHlsZSIpKSxjbChyLCJzdHlsZSIsbCksZmUocixuLnByZWNlZGVuY2UsZSksdC5pbnN0YW5jZT1yO2Nhc2Uic3R5bGVzaGVldCI6bD1jNChuLmhyZWYpO3ZhciBhPWUucXVlcnlTZWxlY3RvcihjOChsKSk7aWYoYSlyZXR1cm4gdC5zdGF0ZS5sb2FkaW5nfD00LHQuaW5zdGFuY2U9YSxlOChhKSxhO3I9YzUobiksKGw9Y1kuZ2V0KGwpKSYmZnQocixsKSxlOChhPShlLm93bmVyRG9jdW1lbnR8fGUpLmNyZWF0ZUVsZW1lbnQoImxpbmsiKSk7dmFyIG89YTtyZXR1cm4gby5fcD1uZXcgUHJvbWlzZShmdW5jdGlvbihlLHQpe28ub25sb2FkPWUsby5vbmVycm9yPXR9KSxjbChhLCJsaW5rIixyKSx0LnN0YXRlLmxvYWRpbmd8PTQsZmUoYSxuLnByZWNlZGVuY2UsZSksdC5pbnN0YW5jZT1hO2Nhc2Uic2NyaXB0IjppZihhPWM2KG4uc3JjKSxsPWUucXVlcnlTZWxlY3RvcihjOShhKSkpcmV0dXJuIHQuaW5zdGFuY2U9bCxlOChsKSxsO3JldHVybiByPW4sKGw9Y1kuZ2V0KGEpKSYmZm4ocj14KHt9LG4pLGwpLGU4KGw9KGU9ZS5vd25lckRvY3VtZW50fHxlKS5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSksY2wobCwibGluayIsciksZS5oZWFkLmFwcGVuZENoaWxkKGwpLHQuaW5zdGFuY2U9bDtjYXNlInZvaWQiOnJldHVybiBudWxsO2RlZmF1bHQ6dGhyb3cgRXJyb3IodSg0NDMsdC50eXBlKSl9cmV0dXJuInN0eWxlc2hlZXQiPT09dC50eXBlJiYwPT0oNCZ0LnN0YXRlLmxvYWRpbmcpJiYocj10Lmluc3RhbmNlLHQuc3RhdGUubG9hZGluZ3w9NCxmZShyLG4ucHJlY2VkZW5jZSxlKSksdC5pbnN0YW5jZX1mdW5jdGlvbiBmZShlLHQsbil7Zm9yKHZhciByPW4ucXVlcnlTZWxlY3RvckFsbCgnbGlua1tyZWw9InN0eWxlc2hlZXQiXVtkYXRhLXByZWNlZGVuY2VdLHN0eWxlW2RhdGEtcHJlY2VkZW5jZV0nKSxsPXIubGVuZ3RoP3Jbci5sZW5ndGgtMV06bnVsbCxhPWwsbz0wO288ci5sZW5ndGg7bysrKXt2YXIgaT1yW29dO2lmKGkuZGF0YXNldC5wcmVjZWRlbmNlPT09dClhPWk7ZWxzZSBpZihhIT09bClicmVha31hP2EucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSxhLm5leHRTaWJsaW5nKToodD05PT09bi5ub2RlVHlwZT9uLmhlYWQ6bikuaW5zZXJ0QmVmb3JlKGUsdC5maXJzdENoaWxkKX1mdW5jdGlvbiBmdChlLHQpe251bGw9PWUuY3Jvc3NPcmlnaW4mJihlLmNyb3NzT3JpZ2luPXQuY3Jvc3NPcmlnaW4pLG51bGw9PWUucmVmZXJyZXJQb2xpY3kmJihlLnJlZmVycmVyUG9saWN5PXQucmVmZXJyZXJQb2xpY3kpLG51bGw9PWUudGl0bGUmJihlLnRpdGxlPXQudGl0bGUpfWZ1bmN0aW9uIGZuKGUsdCl7bnVsbD09ZS5jcm9zc09yaWdpbiYmKGUuY3Jvc3NPcmlnaW49dC5jcm9zc09yaWdpbiksbnVsbD09ZS5yZWZlcnJlclBvbGljeSYmKGUucmVmZXJyZXJQb2xpY3k9dC5yZWZlcnJlclBvbGljeSksbnVsbD09ZS5pbnRlZ3JpdHkmJihlLmludGVncml0eT10LmludGVncml0eSl9dmFyIGZyPW51bGw7ZnVuY3Rpb24gZmwoZSx0LG4pe2lmKG51bGw9PT1mcil7dmFyIHI9bmV3IE1hcCxsPWZyPW5ldyBNYXA7bC5zZXQobixyKX1lbHNlKHI9KGw9ZnIpLmdldChuKSl8fChyPW5ldyBNYXAsbC5zZXQobixyKSk7aWYoci5oYXMoZSkpcmV0dXJuIHI7Zm9yKHIuc2V0KGUsbnVsbCksbj1uLmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpLGw9MDtsPG4ubGVuZ3RoO2wrKyl7dmFyIGE9bltsXTtpZighKGFbZVpdfHxhW2VXXXx8ImxpbmsiPT09ZSYmInN0eWxlc2hlZXQiPT09YS5nZXRBdHRyaWJ1dGUoInJlbCIpKSYmImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiE9PWEubmFtZXNwYWNlVVJJKXt2YXIgbz1hLmdldEF0dHJpYnV0ZSh0KXx8IiI7bz1lK287dmFyIGk9ci5nZXQobyk7aT9pLnB1c2goYSk6ci5zZXQobyxbYV0pfX1yZXR1cm4gcn1mdW5jdGlvbiBmYShlLHQsbil7KGU9ZS5vd25lckRvY3VtZW50fHxlKS5oZWFkLmluc2VydEJlZm9yZShuLCJ0aXRsZSI9PT10P2UucXVlcnlTZWxlY3RvcigiaGVhZCA+IHRpdGxlIik6bnVsbCl9ZnVuY3Rpb24gZm8oZSx0KXtyZXR1cm4iaW1nIj09PWUmJm51bGwhPXQuc3JjJiYiIiE9PXQuc3JjJiZudWxsPT10Lm9uTG9hZCYmImxhenkiIT09dC5sb2FkaW5nfWZ1bmN0aW9uIGZpKGUpe3JldHVybiJzdHlsZXNoZWV0IiE9PWUudHlwZXx8MCE9KDMmZS5zdGF0ZS5sb2FkaW5nKX1mdW5jdGlvbiBmdShlKXtyZXR1cm4oZS53aWR0aHx8MTAwKSooZS5oZWlnaHR8fDEwMCkqKCJudW1iZXIiPT10eXBlb2YgZGV2aWNlUGl4ZWxSYXRpbz9kZXZpY2VQaXhlbFJhdGlvOjEpKi4yNX1mdW5jdGlvbiBmcyhlLHQpeyJmdW5jdGlvbiI9PXR5cGVvZiB0LmRlY29kZSYmKGUuaW1nQ291bnQrKyx0LmNvbXBsZXRlfHwoZS5pbWdCeXRlcys9ZnUodCksZS5zdXNwZW5zZXlJbWFnZXMucHVzaCh0KSksZT1mcC5iaW5kKGUpLHQuZGVjb2RlKCkudGhlbihlLGUpKX12YXIgZmM9MDtmdW5jdGlvbiBmZihlKXtpZigwPT09ZS5jb3VudCYmKDA9PT1lLmltZ0NvdW50fHwhZS53YWl0aW5nRm9ySW1hZ2VzKSl7aWYoZS5zdHlsZXNoZWV0cylmaChlLGUuc3R5bGVzaGVldHMpO2Vsc2UgaWYoZS51bnN1c3BlbmQpe3ZhciB0PWUudW5zdXNwZW5kO2UudW5zdXNwZW5kPW51bGwsdCgpfX19ZnVuY3Rpb24gZmQoKXt0aGlzLmNvdW50LS0sZmYodGhpcyl9ZnVuY3Rpb24gZnAoKXt0aGlzLmltZ0NvdW50LS0sZmYodGhpcyl9dmFyIGZtPW51bGw7ZnVuY3Rpb24gZmgoZSx0KXtlLnN0eWxlc2hlZXRzPW51bGwsbnVsbCE9PWUudW5zdXNwZW5kJiYoZS5jb3VudCsrLGZtPW5ldyBNYXAsdC5mb3JFYWNoKGZnLGUpLGZtPW51bGwsZmQuY2FsbChlKSl9ZnVuY3Rpb24gZmcoZSx0KXtpZighKDQmdC5zdGF0ZS5sb2FkaW5nKSl7dmFyIG49Zm0uZ2V0KGUpO2lmKG4pdmFyIHI9bi5nZXQobnVsbCk7ZWxzZXtuPW5ldyBNYXAsZm0uc2V0KGUsbik7Zm9yKHZhciBsPWUucXVlcnlTZWxlY3RvckFsbCgibGlua1tkYXRhLXByZWNlZGVuY2VdLHN0eWxlW2RhdGEtcHJlY2VkZW5jZV0iKSxhPTA7YTxsLmxlbmd0aDthKyspe3ZhciBvPWxbYV07KCJMSU5LIj09PW8ubm9kZU5hbWV8fCJub3QgYWxsIiE9PW8uZ2V0QXR0cmlidXRlKCJtZWRpYSIpKSYmKG4uc2V0KG8uZGF0YXNldC5wcmVjZWRlbmNlLG8pLHI9byl9ciYmbi5zZXQobnVsbCxyKX1vPShsPXQuaW5zdGFuY2UpLmdldEF0dHJpYnV0ZSgiZGF0YS1wcmVjZWRlbmNlIiksKGE9bi5nZXQobyl8fHIpPT09ciYmbi5zZXQobnVsbCxsKSxuLnNldChvLGwpLHRoaXMuY291bnQrKyxyPWZkLmJpbmQodGhpcyksbC5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixyKSxsLmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIixyKSxhP2EucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobCxhLm5leHRTaWJsaW5nKTooZT05PT09ZS5ub2RlVHlwZT9lLmhlYWQ6ZSkuaW5zZXJ0QmVmb3JlKGwsZS5maXJzdENoaWxkKSx0LnN0YXRlLmxvYWRpbmd8PTR9fXZhciBmdj17JCR0eXBlb2Y6TCxQcm92aWRlcjpudWxsLENvbnN1bWVyOm51bGwsX2N1cnJlbnRWYWx1ZTpLLF9jdXJyZW50VmFsdWUyOkssX3RocmVhZENvdW50OjB9O2Z1bmN0aW9uIGZ5KGUsdCxuLHIsbCxhLG8saSx1KXt0aGlzLnRhZz0xLHRoaXMuY29udGFpbmVySW5mbz1lLHRoaXMucGluZ0NhY2hlPXRoaXMuY3VycmVudD10aGlzLnBlbmRpbmdDaGlsZHJlbj1udWxsLHRoaXMudGltZW91dEhhbmRsZT0tMSx0aGlzLmNhbGxiYWNrTm9kZT10aGlzLm5leHQ9dGhpcy5wZW5kaW5nQ29udGV4dD10aGlzLmNvbnRleHQ9dGhpcy5jYW5jZWxQZW5kaW5nQ29tbWl0PW51bGwsdGhpcy5jYWxsYmFja1ByaW9yaXR5PTAsdGhpcy5leHBpcmF0aW9uVGltZXM9ZUQoLTEpLHRoaXMuZW50YW5nbGVkTGFuZXM9dGhpcy5zaGVsbFN1c3BlbmRDb3VudGVyPXRoaXMuZXJyb3JSZWNvdmVyeURpc2FibGVkTGFuZXM9dGhpcy5leHBpcmVkTGFuZXM9dGhpcy53YXJtTGFuZXM9dGhpcy5waW5nZWRMYW5lcz10aGlzLnN1c3BlbmRlZExhbmVzPXRoaXMucGVuZGluZ0xhbmVzPTAsdGhpcy5lbnRhbmdsZW1lbnRzPWVEKDApLHRoaXMuaGlkZGVuVXBkYXRlcz1lRChudWxsKSx0aGlzLmlkZW50aWZpZXJQcmVmaXg9cix0aGlzLm9uVW5jYXVnaHRFcnJvcj1sLHRoaXMub25DYXVnaHRFcnJvcj1hLHRoaXMub25SZWNvdmVyYWJsZUVycm9yPW8sdGhpcy5wb29sZWRDYWNoZT1udWxsLHRoaXMucG9vbGVkQ2FjaGVMYW5lcz0wLHRoaXMuZm9ybVN0YXRlPXUsdGhpcy50cmFuc2l0aW9uVHlwZXM9bnVsbCx0aGlzLmluY29tcGxldGVUcmFuc2l0aW9ucz1uZXcgTWFwfWZ1bmN0aW9uIGZiKGUsdCxuLHIsbCxhLG8saSx1LHMsYyxmKXtyZXR1cm4gZT1uZXcgZnkoZSx0LG4sbyx1LHMsYyxmLGkpLHQ9MSwhMD09PWEmJih0fD0yNCksYT1ydigzLG51bGwsbnVsbCx0KSxlLmN1cnJlbnQ9YSxhLnN0YXRlTm9kZT1lLHQ9bHUoKSx0LnJlZkNvdW50KyssZS5wb29sZWRDYWNoZT10LHQucmVmQ291bnQrKyxhLm1lbW9pemVkU3RhdGU9e2VsZW1lbnQ6cixpc0RlaHlkcmF0ZWQ6bixjYWNoZTp0fSxsQihhKSxlfWZ1bmN0aW9uIGZ3KGUsdCxuLHIsbCxhKXtsPWw/cmg6cmgsbnVsbD09PXIuY29udGV4dD9yLmNvbnRleHQ9bDpyLnBlbmRpbmdDb250ZXh0PWwsKHI9bEgodCkpLnBheWxvYWQ9e2VsZW1lbnQ6bn0sbnVsbCE9PShhPXZvaWQgMD09PWE/bnVsbDphKSYmKHIuY2FsbGJhY2s9YSksbnVsbCE9PShuPWwkKGUscix0KSkmJih1NihuLGUsdCksbFEobixlLHQpKX1mdW5jdGlvbiBmayhlLHQpe2lmKG51bGwhPT0oZT1lLm1lbW9pemVkU3RhdGUpJiZudWxsIT09ZS5kZWh5ZHJhdGVkKXt2YXIgbj1lLnJldHJ5TGFuZTtlLnJldHJ5TGFuZT0wIT09biYmbjx0P246dH19ZnVuY3Rpb24gZlMoZSx0KXtmayhlLHQpLChlPWUuYWx0ZXJuYXRlKSYmZmsoZSx0KX1mdW5jdGlvbiBmRShlKXtpZigxMz09PWUudGFnfHwzMT09PWUudGFnKXt2YXIgdD1yZChlLDB4NDAwMDAwMCk7bnVsbCE9PXQmJnU2KHQsZSwweDQwMDAwMDApLGZTKGUsMHg0MDAwMDAwKX19ZnVuY3Rpb24gZngoZSl7aWYoMTM9PT1lLnRhZ3x8MzE9PT1lLnRhZyl7dmFyIHQ9dTQoKSxuPXJkKGUsdD1lQih0KSk7bnVsbCE9PW4mJnU2KG4sZSx0KSxmUyhlLHQpfX12YXIgZl89ITA7ZnVuY3Rpb24gZlAoZSx0LG4scil7dmFyIGw9Vy5UO1cuVD1udWxsO3ZhciBhPXEucDt0cnl7cS5wPTIsZkMoZSx0LG4scil9ZmluYWxseXtxLnA9YSxXLlQ9bH19ZnVuY3Rpb24gZk4oZSx0LG4scil7dmFyIGw9Vy5UO1cuVD1udWxsO3ZhciBhPXEucDt0cnl7cS5wPTgsZkMoZSx0LG4scil9ZmluYWxseXtxLnA9YSxXLlQ9bH19ZnVuY3Rpb24gZkMoZSx0LG4scil7aWYoZl8pe3ZhciBsPWZUKHIpO2lmKG51bGw9PT1sKXMzKGUsdCxyLGZPLG4pLGZCKGUscik7ZWxzZSBpZihmdW5jdGlvbihlLHQsbixyLGwpe3N3aXRjaCh0KXtjYXNlImZvY3VzaW4iOnJldHVybiBmTT1mVihmTSxlLHQsbixyLGwpLCEwO2Nhc2UiZHJhZ2VudGVyIjpyZXR1cm4gZkk9ZlYoZkksZSx0LG4scixsKSwhMDtjYXNlIm1vdXNlb3ZlciI6cmV0dXJuIGZEPWZWKGZELGUsdCxuLHIsbCksITA7Y2FzZSJwb2ludGVyb3ZlciI6dmFyIGE9bC5wb2ludGVySWQ7cmV0dXJuIGZGLnNldChhLGZWKGZGLmdldChhKXx8bnVsbCxlLHQsbixyLGwpKSwhMDtjYXNlImdvdHBvaW50ZXJjYXB0dXJlIjpyZXR1cm4gYT1sLnBvaW50ZXJJZCxmQS5zZXQoYSxmVihmQS5nZXQoYSl8fG51bGwsZSx0LG4scixsKSksITB9cmV0dXJuITF9KGwsZSx0LG4scikpci5zdG9wUHJvcGFnYXRpb24oKTtlbHNlIGlmKGZCKGUsciksNCZ0JiYtMTxmVS5pbmRleE9mKGUpKXtmb3IoO251bGwhPT1sOyl7dmFyIGE9ZTIobCk7aWYobnVsbCE9PWEpc3dpdGNoKGEudGFnKXtjYXNlIDM6aWYoKGE9YS5zdGF0ZU5vZGUpLmN1cnJlbnQubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpe3ZhciBvPWVMKGEucGVuZGluZ0xhbmVzKTtpZigwIT09byl7dmFyIGk9YTtmb3IoaS5wZW5kaW5nTGFuZXN8PTIsaS5lbnRhbmdsZWRMYW5lc3w9MjtvOyl7dmFyIHU9MTw8MzEtZVAobyk7aS5lbnRhbmdsZW1lbnRzWzFdfD11LG8mPX51fXNGKGEpLDA9PSg2JnVTKSYmKHVIPWV2KCkrNTAwLHNBKDAsITEpKX19YnJlYWs7Y2FzZSAzMTpjYXNlIDEzOm51bGwhPT0oaT1yZChhLDIpKSYmdTYoaSxhLDIpLHN0KCksZlMoYSwyKX1pZihudWxsPT09KGE9ZlQocikpJiZzMyhlLHQscixmTyxuKSxhPT09bClicmVhaztsPWF9bnVsbCE9PWwmJnIuc3RvcFByb3BhZ2F0aW9uKCl9ZWxzZSBzMyhlLHQscixudWxsLG4pfX1mdW5jdGlvbiBmVChlKXtyZXR1cm4gZnooZT10eihlKSl9dmFyIGZPPW51bGw7ZnVuY3Rpb24gZnooZSl7aWYoZk89bnVsbCxudWxsIT09KGU9ZTEoZSkpKXt2YXIgdD1jKGUpO2lmKG51bGw9PT10KWU9bnVsbDtlbHNle3ZhciBuPXQudGFnO2lmKDEzPT09bil7aWYobnVsbCE9PShlPWYodCkpKXJldHVybiBlO2U9bnVsbH1lbHNlIGlmKDMxPT09bil7aWYobnVsbCE9PShlPWQodCkpKXJldHVybiBlO2U9bnVsbH1lbHNlIGlmKDM9PT1uKXtpZih0LnN0YXRlTm9kZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkKXJldHVybiAzPT09dC50YWc/dC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzpudWxsO2U9bnVsbH1lbHNlIHQhPT1lJiYoZT1udWxsKX19cmV0dXJuIGZPPWUsbnVsbH1mdW5jdGlvbiBmTChlKXtzd2l0Y2goZSl7Y2FzZSJiZWZvcmV0b2dnbGUiOmNhc2UiY2FuY2VsIjpjYXNlImNsaWNrIjpjYXNlImNsb3NlIjpjYXNlImNvbnRleHRtZW51IjpjYXNlImNvcHkiOmNhc2UiY3V0IjpjYXNlImF1eGNsaWNrIjpjYXNlImRibGNsaWNrIjpjYXNlImRyYWdlbmQiOmNhc2UiZHJhZ3N0YXJ0IjpjYXNlImRyb3AiOmNhc2UiZm9jdXNpbiI6Y2FzZSJmb2N1c291dCI6Y2FzZSJpbnB1dCI6Y2FzZSJpbnZhbGlkIjpjYXNlImtleWRvd24iOmNhc2Uia2V5cHJlc3MiOmNhc2Uia2V5dXAiOmNhc2UibW91c2Vkb3duIjpjYXNlIm1vdXNldXAiOmNhc2UicGFzdGUiOmNhc2UicGF1c2UiOmNhc2UicGxheSI6Y2FzZSJwb2ludGVyY2FuY2VsIjpjYXNlInBvaW50ZXJkb3duIjpjYXNlInBvaW50ZXJ1cCI6Y2FzZSJyYXRlY2hhbmdlIjpjYXNlInJlc2V0IjpjYXNlInNlZWtlZCI6Y2FzZSJzdWJtaXQiOmNhc2UidG9nZ2xlIjpjYXNlInRvdWNoY2FuY2VsIjpjYXNlInRvdWNoZW5kIjpjYXNlInRvdWNoc3RhcnQiOmNhc2Uidm9sdW1lY2hhbmdlIjpjYXNlImNoYW5nZSI6Y2FzZSJzZWxlY3Rpb25jaGFuZ2UiOmNhc2UidGV4dElucHV0IjpjYXNlImNvbXBvc2l0aW9uc3RhcnQiOmNhc2UiY29tcG9zaXRpb25lbmQiOmNhc2UiY29tcG9zaXRpb251cGRhdGUiOmNhc2UiYmVmb3JlYmx1ciI6Y2FzZSJhZnRlcmJsdXIiOmNhc2UiYmVmb3JlaW5wdXQiOmNhc2UiYmx1ciI6Y2FzZSJmdWxsc2NyZWVuY2hhbmdlIjpjYXNlImZvY3VzIjpjYXNlImhhc2hjaGFuZ2UiOmNhc2UicG9wc3RhdGUiOmNhc2Uic2VsZWN0IjpjYXNlInNlbGVjdHN0YXJ0IjpyZXR1cm4gMjtjYXNlImRyYWciOmNhc2UiZHJhZ2VudGVyIjpjYXNlImRyYWdleGl0IjpjYXNlImRyYWdsZWF2ZSI6Y2FzZSJkcmFnb3ZlciI6Y2FzZSJtb3VzZW1vdmUiOmNhc2UibW91c2VvdXQiOmNhc2UibW91c2VvdmVyIjpjYXNlInBvaW50ZXJtb3ZlIjpjYXNlInBvaW50ZXJvdXQiOmNhc2UicG9pbnRlcm92ZXIiOmNhc2UicmVzaXplIjpjYXNlInNjcm9sbCI6Y2FzZSJ0b3VjaG1vdmUiOmNhc2Uid2hlZWwiOmNhc2UibW91c2VlbnRlciI6Y2FzZSJtb3VzZWxlYXZlIjpjYXNlInBvaW50ZXJlbnRlciI6Y2FzZSJwb2ludGVybGVhdmUiOnJldHVybiA4O2Nhc2UibWVzc2FnZSI6c3dpdGNoKGV5KCkpe2Nhc2UgZWI6cmV0dXJuIDI7Y2FzZSBldzpyZXR1cm4gODtjYXNlIGVrOmNhc2UgZVM6cmV0dXJuIDMyO2Nhc2UgZUU6cmV0dXJuIDB4MTAwMDAwMDA7ZGVmYXVsdDpyZXR1cm4gMzJ9ZGVmYXVsdDpyZXR1cm4gMzJ9fXZhciBmUj0hMSxmTT1udWxsLGZJPW51bGwsZkQ9bnVsbCxmRj1uZXcgTWFwLGZBPW5ldyBNYXAsZmo9W10sZlU9Im1vdXNlZG93biBtb3VzZXVwIHRvdWNoY2FuY2VsIHRvdWNoZW5kIHRvdWNoc3RhcnQgYXV4Y2xpY2sgZGJsY2xpY2sgcG9pbnRlcmNhbmNlbCBwb2ludGVyZG93biBwb2ludGVydXAgZHJhZ2VuZCBkcmFnc3RhcnQgZHJvcCBjb21wb3NpdGlvbmVuZCBjb21wb3NpdGlvbnN0YXJ0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgaW5wdXQgdGV4dElucHV0IGNvcHkgY3V0IHBhc3RlIGNsaWNrIGNoYW5nZSBjb250ZXh0bWVudSByZXNldCIuc3BsaXQoIiAiKTtmdW5jdGlvbiBmQihlLHQpe3N3aXRjaChlKXtjYXNlImZvY3VzaW4iOmNhc2UiZm9jdXNvdXQiOmZNPW51bGw7YnJlYWs7Y2FzZSJkcmFnZW50ZXIiOmNhc2UiZHJhZ2xlYXZlIjpmST1udWxsO2JyZWFrO2Nhc2UibW91c2VvdmVyIjpjYXNlIm1vdXNlb3V0IjpmRD1udWxsO2JyZWFrO2Nhc2UicG9pbnRlcm92ZXIiOmNhc2UicG9pbnRlcm91dCI6ZkYuZGVsZXRlKHQucG9pbnRlcklkKTticmVhaztjYXNlImdvdHBvaW50ZXJjYXB0dXJlIjpjYXNlImxvc3Rwb2ludGVyY2FwdHVyZSI6ZkEuZGVsZXRlKHQucG9pbnRlcklkKX19ZnVuY3Rpb24gZlYoZSx0LG4scixsLGEpe3JldHVybiBudWxsPT09ZXx8ZS5uYXRpdmVFdmVudCE9PWE/KGU9e2Jsb2NrZWRPbjp0LGRvbUV2ZW50TmFtZTpuLGV2ZW50U3lzdGVtRmxhZ3M6cixuYXRpdmVFdmVudDphLHRhcmdldENvbnRhaW5lcnM6W2xdfSxudWxsIT09dCYmbnVsbCE9PSh0PWUyKHQpKSYmZkUodCkpOihlLmV2ZW50U3lzdGVtRmxhZ3N8PXIsdD1lLnRhcmdldENvbnRhaW5lcnMsbnVsbCE9PWwmJi0xPT09dC5pbmRleE9mKGwpJiZ0LnB1c2gobCkpLGV9ZnVuY3Rpb24gZkgoZSl7dmFyIHQ9ZTEoZS50YXJnZXQpO2lmKG51bGwhPT10KXt2YXIgbj1jKHQpO2lmKG51bGwhPT1uKXtpZigxMz09PSh0PW4udGFnKSl7aWYobnVsbCE9PSh0PWYobikpKXtlLmJsb2NrZWRPbj10LGUkKGUucHJpb3JpdHksZnVuY3Rpb24oKXtmeChuKX0pO3JldHVybn19ZWxzZSBpZigzMT09PXQpe2lmKG51bGwhPT0odD1kKG4pKSl7ZS5ibG9ja2VkT249dCxlJChlLnByaW9yaXR5LGZ1bmN0aW9uKCl7Zngobil9KTtyZXR1cm59fWVsc2UgaWYoMz09PXQmJm4uc3RhdGVOb2RlLmN1cnJlbnQubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpe2UuYmxvY2tlZE9uPTM9PT1uLnRhZz9uLnN0YXRlTm9kZS5jb250YWluZXJJbmZvOm51bGw7cmV0dXJufX19ZS5ibG9ja2VkT249bnVsbH1mdW5jdGlvbiBmJChlKXtpZihudWxsIT09ZS5ibG9ja2VkT24pcmV0dXJuITE7Zm9yKHZhciB0PWUudGFyZ2V0Q29udGFpbmVyczswPHQubGVuZ3RoOyl7dmFyIG49ZlQoZS5uYXRpdmVFdmVudCk7aWYobnVsbCE9PW4pcmV0dXJuIG51bGwhPT0odD1lMihuKSkmJmZFKHQpLGUuYmxvY2tlZE9uPW4sITE7dmFyIHI9bmV3KG49ZS5uYXRpdmVFdmVudCkuY29uc3RydWN0b3Iobi50eXBlLG4pO3RPPXIsbi50YXJnZXQuZGlzcGF0Y2hFdmVudChyKSx0Tz1udWxsLHQuc2hpZnQoKX1yZXR1cm4hMH1mdW5jdGlvbiBmUShlLHQsbil7ZiQoZSkmJm4uZGVsZXRlKHQpfWZ1bmN0aW9uIGZXKCl7ZlI9ITEsbnVsbCE9PWZNJiZmJChmTSkmJihmTT1udWxsKSxudWxsIT09ZkkmJmYkKGZJKSYmKGZJPW51bGwpLG51bGwhPT1mRCYmZiQoZkQpJiYoZkQ9bnVsbCksZkYuZm9yRWFjaChmUSksZkEuZm9yRWFjaChmUSl9ZnVuY3Rpb24gZnEoZSx0KXtlLmJsb2NrZWRPbj09PXQmJihlLmJsb2NrZWRPbj1udWxsLGZSfHwoZlI9ITAsYS51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrKGEudW5zdGFibGVfTm9ybWFsUHJpb3JpdHksZlcpKSl9dmFyIGZLPW51bGw7ZnVuY3Rpb24gZlgoZSl7ZkshPT1lJiYoZks9ZSxhLnVuc3RhYmxlX3NjaGVkdWxlQ2FsbGJhY2soYS51bnN0YWJsZV9Ob3JtYWxQcmlvcml0eSxmdW5jdGlvbigpe2ZLPT09ZSYmKGZLPW51bGwpO2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCs9Myl7dmFyIG49ZVt0XSxyPWVbdCsxXSxsPWVbdCsyXTtpZigiZnVuY3Rpb24iIT10eXBlb2YgcilpZihudWxsPT09Znoocnx8bikpY29udGludWU7ZWxzZSBicmVhazt2YXIgYT1lMihuKTtudWxsIT09YSYmKGUuc3BsaWNlKHQsMyksdC09MyxvdShhLHtwZW5kaW5nOiEwLGRhdGE6bCxtZXRob2Q6bi5tZXRob2QsYWN0aW9uOnJ9LHIsbCkpfX0pKX1mdW5jdGlvbiBmRyhlKXtmdW5jdGlvbiB0KHQpe3JldHVybiBmcSh0LGUpfW51bGwhPT1mTSYmZnEoZk0sZSksbnVsbCE9PWZJJiZmcShmSSxlKSxudWxsIT09ZkQmJmZxKGZELGUpLGZGLmZvckVhY2godCksZkEuZm9yRWFjaCh0KTtmb3IodmFyIG49MDtuPGZqLmxlbmd0aDtuKyspe3ZhciByPWZqW25dO3IuYmxvY2tlZE9uPT09ZSYmKHIuYmxvY2tlZE9uPW51bGwpfWZvcig7MDxmai5sZW5ndGgmJm51bGw9PT0obj1malswXSkuYmxvY2tlZE9uOylmSChuKSxudWxsPT09bi5ibG9ja2VkT24mJmZqLnNoaWZ0KCk7aWYobnVsbCE9KG49KGUub3duZXJEb2N1bWVudHx8ZSkuJCRyZWFjdEZvcm1SZXBsYXkpKWZvcihyPTA7cjxuLmxlbmd0aDtyKz0zKXt2YXIgbD1uW3JdLGE9bltyKzFdLG89bFtlcV18fG51bGw7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGEpb3x8Zlgobik7ZWxzZSBpZihvKXt2YXIgaT1udWxsO2lmKGEmJmEuaGFzQXR0cmlidXRlKCJmb3JtQWN0aW9uIikpe2lmKGw9YSxvPWFbZXFdfHxudWxsKWk9by5mb3JtQWN0aW9uO2Vsc2UgaWYobnVsbCE9PWZ6KGwpKWNvbnRpbnVlfWVsc2UgaT1vLmFjdGlvbjsiZnVuY3Rpb24iPT10eXBlb2YgaT9uW3IrMV09aToobi5zcGxpY2UociwzKSxyLT0zKSxmWChuKX19fWZ1bmN0aW9uIGZZKCl7ZnVuY3Rpb24gZShlKXtlLmNhbkludGVyY2VwdCYmInJlYWN0LXRyYW5zaXRpb24iPT09ZS5pbmZvJiZlLmludGVyY2VwdCh7aGFuZGxlcjpmdW5jdGlvbigpe3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihlKXtyZXR1cm4gbD1lfSl9LGZvY3VzUmVzZXQ6Im1hbnVhbCIsc2Nyb2xsOiJtYW51YWwifSl9ZnVuY3Rpb24gdCgpe251bGwhPT1sJiYobCgpLGw9bnVsbCkscnx8c2V0VGltZW91dChuLDIwKX1mdW5jdGlvbiBuKCl7aWYoIXImJiFuYXZpZ2F0aW9uLnRyYW5zaXRpb24pe3ZhciBlPW5hdmlnYXRpb24uY3VycmVudEVudHJ5O2UmJm51bGwhPWUudXJsJiZuYXZpZ2F0aW9uLm5hdmlnYXRlKGUudXJsLHtzdGF0ZTplLmdldFN0YXRlKCksaW5mbzoicmVhY3QtdHJhbnNpdGlvbiIsaGlzdG9yeToicmVwbGFjZSJ9KX19aWYoIm9iamVjdCI9PXR5cGVvZiBuYXZpZ2F0aW9uKXt2YXIgcj0hMSxsPW51bGw7cmV0dXJuIG5hdmlnYXRpb24uYWRkRXZlbnRMaXN0ZW5lcigibmF2aWdhdGUiLGUpLG5hdmlnYXRpb24uYWRkRXZlbnRMaXN0ZW5lcigibmF2aWdhdGVzdWNjZXNzIix0KSxuYXZpZ2F0aW9uLmFkZEV2ZW50TGlzdGVuZXIoIm5hdmlnYXRlZXJyb3IiLHQpLHNldFRpbWVvdXQobiwxMDApLGZ1bmN0aW9uKCl7cj0hMCxuYXZpZ2F0aW9uLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm5hdmlnYXRlIixlKSxuYXZpZ2F0aW9uLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm5hdmlnYXRlc3VjY2VzcyIsdCksbmF2aWdhdGlvbi5yZW1vdmVFdmVudExpc3RlbmVyKCJuYXZpZ2F0ZWVycm9yIix0KSxudWxsIT09bCYmKGwoKSxsPW51bGwpfX19ZnVuY3Rpb24gZkooZSl7dGhpcy5faW50ZXJuYWxSb290PWV9ZnVuY3Rpb24gZlooZSl7dGhpcy5faW50ZXJuYWxSb290PWV9ZloucHJvdG90eXBlLnJlbmRlcj1mSi5wcm90b3R5cGUucmVuZGVyPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuX2ludGVybmFsUm9vdDtpZihudWxsPT09dCl0aHJvdyBFcnJvcih1KDQwOSkpO2Z3KHQuY3VycmVudCx1NCgpLGUsdCxudWxsLG51bGwpfSxmWi5wcm90b3R5cGUudW5tb3VudD1mSi5wcm90b3R5cGUudW5tb3VudD1mdW5jdGlvbigpe3ZhciBlPXRoaXMuX2ludGVybmFsUm9vdDtpZihudWxsIT09ZSl7dGhpcy5faW50ZXJuYWxSb290PW51bGw7dmFyIHQ9ZS5jb250YWluZXJJbmZvO2Z3KGUuY3VycmVudCwyLG51bGwsZSxudWxsLG51bGwpLHN0KCksdFtlS109bnVsbH19LGZaLnByb3RvdHlwZS51bnN0YWJsZV9zY2hlZHVsZUh5ZHJhdGlvbj1mdW5jdGlvbihlKXtpZihlKXt2YXIgdD1lSCgpO2U9e2Jsb2NrZWRPbjpudWxsLHRhcmdldDplLHByaW9yaXR5OnR9O2Zvcih2YXIgbj0wO248ZmoubGVuZ3RoJiYwIT09dCYmdDxmaltuXS5wcmlvcml0eTtuKyspO2ZqLnNwbGljZShuLDAsZSksMD09PW4mJmZIKGUpfX07dmFyIGYwPW8udmVyc2lvbjtpZigiMTkuMy4wLWNhbmFyeS1mOTNiOWZkNC0yMDI1MTIxNyIhPT1mMCl0aHJvdyBFcnJvcih1KDUyNyxmMCwiMTkuMy4wLWNhbmFyeS1mOTNiOWZkNC0yMDI1MTIxNyIpKTtpZihxLmZpbmRET01Ob2RlPWZ1bmN0aW9uKGUpe3ZhciB0PWUuX3JlYWN0SW50ZXJuYWxzO2lmKHZvaWQgMD09PXQpe2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBlLnJlbmRlcil0aHJvdyBFcnJvcih1KDE4OCkpO3Rocm93IEVycm9yKHUoMjY4LGU9T2JqZWN0LmtleXMoZSkuam9pbigiLCIpKSl9cmV0dXJuIG51bGw9PT0oZT1udWxsIT09KGU9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5hbHRlcm5hdGU7aWYoIXQpe2lmKG51bGw9PT0odD1jKGUpKSl0aHJvdyBFcnJvcih1KDE4OCkpO3JldHVybiB0IT09ZT9udWxsOmV9Zm9yKHZhciBuPWUscj10Ozspe3ZhciBsPW4ucmV0dXJuO2lmKG51bGw9PT1sKWJyZWFrO3ZhciBhPWwuYWx0ZXJuYXRlO2lmKG51bGw9PT1hKXtpZihudWxsIT09KHI9bC5yZXR1cm4pKXtuPXI7Y29udGludWV9YnJlYWt9aWYobC5jaGlsZD09PWEuY2hpbGQpe2ZvcihhPWwuY2hpbGQ7YTspe2lmKGE9PT1uKXJldHVybiBwKGwpLGU7aWYoYT09PXIpcmV0dXJuIHAobCksdDthPWEuc2libGluZ310aHJvdyBFcnJvcih1KDE4OCkpfWlmKG4ucmV0dXJuIT09ci5yZXR1cm4pbj1sLHI9YTtlbHNle2Zvcih2YXIgbz0hMSxpPWwuY2hpbGQ7aTspe2lmKGk9PT1uKXtvPSEwLG49bCxyPWE7YnJlYWt9aWYoaT09PXIpe289ITAscj1sLG49YTticmVha31pPWkuc2libGluZ31pZighbyl7Zm9yKGk9YS5jaGlsZDtpOyl7aWYoaT09PW4pe289ITAsbj1hLHI9bDticmVha31pZihpPT09cil7bz0hMCxyPWEsbj1sO2JyZWFrfWk9aS5zaWJsaW5nfWlmKCFvKXRocm93IEVycm9yKHUoMTg5KSl9fWlmKG4uYWx0ZXJuYXRlIT09cil0aHJvdyBFcnJvcih1KDE5MCkpfWlmKDMhPT1uLnRhZyl0aHJvdyBFcnJvcih1KDE4OCkpO3JldHVybiBuLnN0YXRlTm9kZS5jdXJyZW50PT09bj9lOnR9KHQpKT9mdW5jdGlvbiBlKHQpe3ZhciBuPXQudGFnO2lmKDU9PT1ufHwyNj09PW58fDI3PT09bnx8Nj09PW4pcmV0dXJuIHQ7Zm9yKHQ9dC5jaGlsZDtudWxsIT09dDspe2lmKG51bGwhPT0obj1lKHQpKSlyZXR1cm4gbjt0PXQuc2libGluZ31yZXR1cm4gbnVsbH0oZSk6bnVsbCk/bnVsbDplLnN0YXRlTm9kZX0sInUiPnR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18pe3ZhciBmMT1fX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX187aWYoIWYxLmlzRGlzYWJsZWQmJmYxLnN1cHBvcnRzRmliZXIpdHJ5e2V4PWYxLmluamVjdCh7YnVuZGxlVHlwZTowLHZlcnNpb246IjE5LjMuMC1jYW5hcnktZjkzYjlmZDQtMjAyNTEyMTciLHJlbmRlcmVyUGFja2FnZU5hbWU6InJlYWN0LWRvbSIsY3VycmVudERpc3BhdGNoZXJSZWY6VyxyZWNvbmNpbGVyVmVyc2lvbjoiMTkuMy4wLWNhbmFyeS1mOTNiOWZkNC0yMDI1MTIxNyJ9KSxlXz1mMX1jYXRjaChlKXt9fW4uY3JlYXRlUm9vdD1mdW5jdGlvbihlLHQpe2lmKCFzKGUpKXRocm93IEVycm9yKHUoMjk5KSk7dmFyIG49ITEscj0iIixsPW96LGE9b0wsbz1vUjtyZXR1cm4gbnVsbCE9dCYmKCEwPT09dC51bnN0YWJsZV9zdHJpY3RNb2RlJiYobj0hMCksdm9pZCAwIT09dC5pZGVudGlmaWVyUHJlZml4JiYocj10LmlkZW50aWZpZXJQcmVmaXgpLHZvaWQgMCE9PXQub25VbmNhdWdodEVycm9yJiYobD10Lm9uVW5jYXVnaHRFcnJvciksdm9pZCAwIT09dC5vbkNhdWdodEVycm9yJiYoYT10Lm9uQ2F1Z2h0RXJyb3IpLHZvaWQgMCE9PXQub25SZWNvdmVyYWJsZUVycm9yJiYobz10Lm9uUmVjb3ZlcmFibGVFcnJvcikpLHQ9ZmIoZSwxLCExLG51bGwsbnVsbCxuLHIsbnVsbCxsLGEsbyxmWSksZVtlS109dC5jdXJyZW50LHMxKGUpLG5ldyBmSih0KX0sbi5oeWRyYXRlUm9vdD1mdW5jdGlvbihlLHQsbil7aWYoIXMoZSkpdGhyb3cgRXJyb3IodSgyOTkpKTt2YXIgcixsPSExLGE9IiIsbz1veixpPW9MLGM9b1IsZj1udWxsO3JldHVybiBudWxsIT1uJiYoITA9PT1uLnVuc3RhYmxlX3N0cmljdE1vZGUmJihsPSEwKSx2b2lkIDAhPT1uLmlkZW50aWZpZXJQcmVmaXgmJihhPW4uaWRlbnRpZmllclByZWZpeCksdm9pZCAwIT09bi5vblVuY2F1Z2h0RXJyb3ImJihvPW4ub25VbmNhdWdodEVycm9yKSx2b2lkIDAhPT1uLm9uQ2F1Z2h0RXJyb3ImJihpPW4ub25DYXVnaHRFcnJvciksdm9pZCAwIT09bi5vblJlY292ZXJhYmxlRXJyb3ImJihjPW4ub25SZWNvdmVyYWJsZUVycm9yKSx2b2lkIDAhPT1uLmZvcm1TdGF0ZSYmKGY9bi5mb3JtU3RhdGUpKSwodD1mYihlLDEsITAsdCxudWxsIT1uP246bnVsbCxsLGEsZixvLGksYyxmWSkpLmNvbnRleHQ9KHI9bnVsbCxyaCksbj10LmN1cnJlbnQsKGE9bEgobD1lQihsPXU0KCkpKSkuY2FsbGJhY2s9bnVsbCxsJChuLGEsbCksbj1sLHQuY3VycmVudC5sYW5lcz1uLGVGKHQsbiksc0YodCksZVtlS109dC5jdXJyZW50LHMxKGUpLG5ldyBmWih0KX0sbi52ZXJzaW9uPSIxOS4zLjAtY2FuYXJ5LWY5M2I5ZmQ0LTIwMjUxMjE3In0sODI5NDAsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjshZnVuY3Rpb24gZSgpe2lmKCJ1Ij50eXBlb2YgX19SRUFDVF9ERVZUT09MU19HTE9CQUxfSE9PS19fJiYiZnVuY3Rpb24iPT10eXBlb2YgX19SRUFDVF9ERVZUT09MU19HTE9CQUxfSE9PS19fLmNoZWNrRENFKXRyeXtfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18uY2hlY2tEQ0UoZSl9Y2F0Y2goZSl7Y29uc29sZS5lcnJvcihlKX19KCksdC5leHBvcnRzPWUucig4MjQyNCl9LDgyOTM5LChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciByPXtvbkNhdWdodEVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIGR9LG9uVW5jYXVnaHRFcnJvcjpmdW5jdGlvbigpe3JldHVybiBwfX07Zm9yKHZhciBsIGluIHIpT2JqZWN0LmRlZmluZVByb3BlcnR5KG4sbCx7ZW51bWVyYWJsZTohMCxnZXQ6cltsXX0pO2xldCBhPWUucig4MTI1OCksbz1lLnIoNDk4NDMpLGk9ZS5yKDg0MDgyKSx1PWUucigxNzc0OCkscz1lLnIoNzQ4NDcpLGM9YS5fKGUucigxNjE1MykpLGY9e2RlY29yYXRlRGV2RXJyb3I6ZT0+ZSxoYW5kbGVDbGllbnRFcnJvcjooKT0+e30sb3JpZ2luQ29uc29sZUVycm9yOmNvbnNvbGUuZXJyb3IuYmluZChjb25zb2xlKX07ZnVuY3Rpb24gZChlLHQpe2xldCBuLHI9dC5lcnJvckJvdW5kYXJ5Py5jb25zdHJ1Y3RvcjtpZihuPW58fHI9PT1zLkVycm9yQm91bmRhcnlIYW5kbGVyJiZ0LmVycm9yQm91bmRhcnkucHJvcHMuZXJyb3JDb21wb25lbnQ9PT1jLmRlZmF1bHQpcmV0dXJuIHAoZSk7KDAsaS5pc0JhaWxvdXRUb0NTUkVycm9yKShlKXx8KDAsby5pc05leHRSb3V0ZXJFcnJvcikoZSl8fGYub3JpZ2luQ29uc29sZUVycm9yKGUpfWZ1bmN0aW9uIHAoZSl7KDAsaS5pc0JhaWxvdXRUb0NTUkVycm9yKShlKXx8KDAsby5pc05leHRSb3V0ZXJFcnJvcikoZSl8fCgwLHUucmVwb3J0R2xvYmFsRXJyb3IpKGUpfSgiZnVuY3Rpb24iPT10eXBlb2Ygbi5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIG4uZGVmYXVsdCYmbnVsbCE9PW4uZGVmYXVsdCkmJnZvaWQgMD09PW4uZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KG4uZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihuLmRlZmF1bHQsbiksdC5leHBvcnRzPW4uZGVmYXVsdCl9LDY0NTQ3LChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJBcHBSb3V0ZXJBbm5vdW5jZXIiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBvfX0pO2xldCByPWUucig3NTIwMSksbD1lLnIoMjkwODApLGE9Im5leHQtcm91dGUtYW5ub3VuY2VyIjtmdW5jdGlvbiBvKHt0cmVlOmV9KXtsZXRbdCxuXT0oMCxyLnVzZVN0YXRlKShudWxsKTsoMCxyLnVzZUVmZmVjdCkoKCk9PihuKGZ1bmN0aW9uKCl7bGV0IGU9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoYSlbMF07aWYoZT8uc2hhZG93Um9vdD8uY2hpbGROb2Rlc1swXSlyZXR1cm4gZS5zaGFkb3dSb290LmNoaWxkTm9kZXNbMF07e2xldCBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoYSk7ZS5zdHlsZS5jc3NUZXh0PSJwb3NpdGlvbjphYnNvbHV0ZSI7bGV0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIHQuYXJpYUxpdmU9ImFzc2VydGl2ZSIsdC5pZD0iX19uZXh0LXJvdXRlLWFubm91bmNlcl9fIix0LnJvbGU9ImFsZXJ0Iix0LnN0eWxlLmNzc1RleHQ9InBvc2l0aW9uOmFic29sdXRlO2JvcmRlcjowO2hlaWdodDoxcHg7bWFyZ2luOi0xcHg7cGFkZGluZzowO3dpZHRoOjFweDtjbGlwOnJlY3QoMCAwIDAgMCk7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsIixlLmF0dGFjaFNoYWRvdyh7bW9kZToib3BlbiJ9KS5hcHBlbmRDaGlsZCh0KSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpLHR9fSgpKSwoKT0+e2xldCBlPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKGEpWzBdO2U/LmlzQ29ubmVjdGVkJiZkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGUpfSksW10pO2xldFtvLGldPSgwLHIudXNlU3RhdGUpKCIiKSx1PSgwLHIudXNlUmVmKSh2b2lkIDApO3JldHVybigwLHIudXNlRWZmZWN0KSgoKT0+e2xldCBlPSIiO2lmKGRvY3VtZW50LnRpdGxlKWU9ZG9jdW1lbnQudGl0bGU7ZWxzZXtsZXQgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJoMSIpO3QmJihlPXQuaW5uZXJUZXh0fHx0LnRleHRDb250ZW50fHwiIil9dm9pZCAwIT09dS5jdXJyZW50JiZ1LmN1cnJlbnQhPT1lJiZpKGUpLHUuY3VycmVudD1lfSxbZV0pLHQ/KDAsbC5jcmVhdGVQb3J0YWwpKG8sdCk6bnVsbH0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSw3OTIxMywoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiZmluZEhlYWRJbkNhY2hlIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gYX19KTtsZXQgcj1lLnIoMjc0NTQpLGw9ZS5yKDU3Nzc4KTtmdW5jdGlvbiBhKGUsdCl7cmV0dXJuIGZ1bmN0aW9uIGUodCxuLGEsbyl7aWYoMD09PU9iamVjdC5rZXlzKG4pLmxlbmd0aClyZXR1cm5bdCxhLG9dO2xldCBpPU9iamVjdC5rZXlzKG4pLmZpbHRlcihlPT4iY2hpbGRyZW4iIT09ZSk7Zm9yKGxldCBvIG9mKCJjaGlsZHJlbiJpbiBuJiZpLnVuc2hpZnQoImNoaWxkcmVuIiksaSkpe2xldFtpLHVdPW5bb107aWYoaT09PXIuREVGQVVMVF9TRUdNRU5UX0tFWSljb250aW51ZTtsZXQgcz10LnBhcmFsbGVsUm91dGVzLmdldChvKTtpZighcyljb250aW51ZTtsZXQgYz0oMCxsLmNyZWF0ZVJvdXRlckNhY2hlS2V5KShpKSxmPSgwLGwuY3JlYXRlUm91dGVyQ2FjaGVLZXkpKGksITApLGQ9cy5nZXQoYyk7aWYoIWQpY29udGludWU7bGV0IHA9ZShkLHUsYSsiLyIrYyxhKyIvIitmKTtpZihwKXJldHVybiBwfXJldHVybiBudWxsfShlLHQsIiIsIiIpfSgiZnVuY3Rpb24iPT10eXBlb2Ygbi5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIG4uZGVmYXVsdCYmbnVsbCE9PW4uZGVmYXVsdCkmJnZvaWQgMD09PW4uZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KG4uZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihuLmRlZmF1bHQsbiksdC5leHBvcnRzPW4uZGVmYXVsdCl9LDI2NzA2LChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciByPXtHcmFjZWZ1bERlZ3JhZGVCb3VuZGFyeTpmdW5jdGlvbigpe3JldHVybiBpfSxkZWZhdWx0OmZ1bmN0aW9uKCl7cmV0dXJuIHV9fTtmb3IodmFyIGwgaW4gcilPYmplY3QuZGVmaW5lUHJvcGVydHkobixsLHtlbnVtZXJhYmxlOiEwLGdldDpyW2xdfSk7bGV0IGE9ZS5yKDk4MTM0KSxvPWUucig3NTIwMSk7Y2xhc3MgaSBleHRlbmRzIG8uQ29tcG9uZW50e2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpLHRoaXMuc3RhdGU9e2hhc0Vycm9yOiExfSx0aGlzLnJvb3RIdG1sPSIiLHRoaXMuaHRtbEF0dHJpYnV0ZXM9e30sdGhpcy5odG1sUmVmPSgwLG8uY3JlYXRlUmVmKSgpfXN0YXRpYyBnZXREZXJpdmVkU3RhdGVGcm9tRXJyb3IoZSl7cmV0dXJue2hhc0Vycm9yOiEwfX1jb21wb25lbnREaWRNb3VudCgpe2xldCBlPXRoaXMuaHRtbFJlZi5jdXJyZW50O3RoaXMuc3RhdGUuaGFzRXJyb3ImJmUmJk9iamVjdC5lbnRyaWVzKHRoaXMuaHRtbEF0dHJpYnV0ZXMpLmZvckVhY2goKFt0LG5dKT0+e2Uuc2V0QXR0cmlidXRlKHQsbil9KX1yZW5kZXIoKXtsZXR7aGFzRXJyb3I6ZX09dGhpcy5zdGF0ZTtyZXR1cm4oInUiPnR5cGVvZiB3aW5kb3cmJiF0aGlzLnJvb3RIdG1sJiYodGhpcy5yb290SHRtbD1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuaW5uZXJIVE1MLHRoaXMuaHRtbEF0dHJpYnV0ZXM9ZnVuY3Rpb24oZSl7bGV0IHQ9e307Zm9yKGxldCBuPTA7bjxlLmF0dHJpYnV0ZXMubGVuZ3RoO24rKyl7bGV0IHI9ZS5hdHRyaWJ1dGVzW25dO3Rbci5uYW1lXT1yLnZhbHVlfXJldHVybiB0fShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpKSxlKT8oMCxhLmpzeCkoImh0bWwiLHtyZWY6dGhpcy5odG1sUmVmLHN1cHByZXNzSHlkcmF0aW9uV2FybmluZzohMCxkYW5nZXJvdXNseVNldElubmVySFRNTDp7X19odG1sOnRoaXMucm9vdEh0bWx9fSk6dGhpcy5wcm9wcy5jaGlsZHJlbn19bGV0IHU9aTsoImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSwzMzcwMiwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiZGVmYXVsdCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHN9fSk7bGV0IHI9ZS5yKDgxMjU4KSxsPWUucig5ODEzNCk7ZS5yKDc1MjAxKTtsZXQgYT1yLl8oZS5yKDI2NzA2KSksbz1lLnIoNzQ4NDcpLGk9ZS5yKDM0NjUpLHU9InUiPnR5cGVvZiB3aW5kb3cmJigwLGkuaXNCb3QpKHdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50KTtmdW5jdGlvbiBzKHtjaGlsZHJlbjplLGVycm9yQ29tcG9uZW50OnQsZXJyb3JTdHlsZXM6bixlcnJvclNjcmlwdHM6cn0pe3JldHVybiB1PygwLGwuanN4KShhLmRlZmF1bHQse2NoaWxkcmVuOmV9KTooMCxsLmpzeCkoby5FcnJvckJvdW5kYXJ5LHtlcnJvckNvbXBvbmVudDp0LGVycm9yU3R5bGVzOm4sZXJyb3JTY3JpcHRzOnIsY2hpbGRyZW46ZX0pfSgiZnVuY3Rpb24iPT10eXBlb2Ygbi5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIG4uZGVmYXVsdCYmbnVsbCE9PW4uZGVmYXVsdCkmJnZvaWQgMD09PW4uZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KG4uZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihuLmRlZmF1bHQsbiksdC5leHBvcnRzPW4uZGVmYXVsdCl9LDYxMTU2LChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJkZWZhdWx0Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gUn19KTtsZXQgcj1lLnIoODEyNTgpLGw9ZS5yKDQ0MDY2KSxhPWUucig5ODEzNCksbz1sLl8oZS5yKDc1MjAxKSksaT1lLnIoMTY4NzIpLHU9ZS5yKDU5NDMwKSxzPWUucig4NTU5NCksYz1lLnIoMzE4OTkpLGY9ZS5yKDk0ODc5KSxkPWUucig2NDU0NykscD1lLnIoNTcyNDcpLG09ZS5yKDc5MjEzKSxoPWUucig1MDA5NiksZz1lLnIoMjQwNDIpLHY9ZS5yKDM4OTMzKSx5PWUucigxODE2NyksYj1lLnIoODMzOTgpLHc9ZS5yKDg0Mzk1KSxrPWUucig0MTcyMSksUz1lLnIoOTA4NjIpLEU9ZS5yKDk4MjgzKSx4PXIuXyhlLnIoMzM3MDIpKSxfPXIuXyhlLnIoMTYxNTMpKSxQPWUucigzNjM0NSksTj1lLnIoODg3NzQpLEM9e307ZnVuY3Rpb24gVCh7YXBwUm91dGVyU3RhdGU6ZX0pe3JldHVybigwLG8udXNlSW5zZXJ0aW9uRWZmZWN0KSgoKT0+e2xldHt0cmVlOnQscHVzaFJlZjpuLGNhbm9uaWNhbFVybDpyLHJlbmRlcmVkU2VhcmNoOmx9PWUsYT17Li4ubi5wcmVzZXJ2ZUN1c3RvbUhpc3RvcnlTdGF0ZT93aW5kb3cuaGlzdG9yeS5zdGF0ZTp7fSxfX05BOiEwLF9fUFJJVkFURV9ORVhUSlNfSU5URVJOQUxTX1RSRUU6e3RyZWU6dCxyZW5kZXJlZFNlYXJjaDpsfX07bi5wZW5kaW5nUHVzaCYmKDAscy5jcmVhdGVIcmVmRnJvbVVybCkobmV3IFVSTCh3aW5kb3cubG9jYXRpb24uaHJlZikpIT09cj8obi5wZW5kaW5nUHVzaD0hMSx3aW5kb3cuaGlzdG9yeS5wdXNoU3RhdGUoYSwiIixyKSk6d2luZG93Lmhpc3RvcnkucmVwbGFjZVN0YXRlKGEsIiIscil9LFtlXSksKDAsby51c2VFZmZlY3QpKCgpPT57KDAsRS5waW5nVmlzaWJsZUxpbmtzKShlLm5leHRVcmwsZS50cmVlKX0sW2UubmV4dFVybCxlLnRyZWVdKSxudWxsfWZ1bmN0aW9uIE8oZSl7bnVsbD09ZSYmKGU9e30pO2xldCB0PXdpbmRvdy5oaXN0b3J5LnN0YXRlLG49dD8uX19OQTtuJiYoZS5fX05BPW4pO2xldCByPXQ/Ll9fUFJJVkFURV9ORVhUSlNfSU5URVJOQUxTX1RSRUU7cmV0dXJuIHImJihlLl9fUFJJVkFURV9ORVhUSlNfSU5URVJOQUxTX1RSRUU9ciksZX1mdW5jdGlvbiB6KHtoZWFkQ2FjaGVOb2RlOmV9KXtsZXQgdD1udWxsIT09ZT9lLmhlYWQ6bnVsbCxuPW51bGwhPT1lP2UucHJlZmV0Y2hIZWFkOm51bGwscj1udWxsIT09bj9uOnQ7cmV0dXJuKDAsby51c2VEZWZlcnJlZFZhbHVlKSh0LHIpfWZ1bmN0aW9uIEwoe2FjdGlvblF1ZXVlOmUsZ2xvYmFsRXJyb3I6dCx3ZWJTb2NrZXQ6bixzdGF0aWNJbmRpY2F0b3JTdGF0ZTpyfSl7bGV0IGwscz0oMCxmLnVzZUFjdGlvblF1ZXVlKShlKSx7Y2Fub25pY2FsVXJsOmJ9PXMse3NlYXJjaFBhcmFtczpFLHBhdGhuYW1lOl99PSgwLG8udXNlTWVtbykoKCk9PntsZXQgZT1uZXcgVVJMKGIsInUiPHR5cGVvZiB3aW5kb3c/Imh0dHA6Ly9uIjp3aW5kb3cubG9jYXRpb24uaHJlZik7cmV0dXJue3NlYXJjaFBhcmFtczplLnNlYXJjaFBhcmFtcyxwYXRobmFtZTooMCx2Lmhhc0Jhc2VQYXRoKShlLnBhdGhuYW1lKT8oMCxnLnJlbW92ZUJhc2VQYXRoKShlLnBhdGhuYW1lKTplLnBhdGhuYW1lfX0sW2JdKTsoMCxvLnVzZUVmZmVjdCkoKCk9PntmdW5jdGlvbiBlKGUpe2UucGVyc2lzdGVkJiZ3aW5kb3cuaGlzdG9yeS5zdGF0ZT8uX19QUklWQVRFX05FWFRKU19JTlRFUk5BTFNfVFJFRSYmKEMucGVuZGluZ01wYVBhdGg9dm9pZCAwLCgwLGYuZGlzcGF0Y2hBcHBSb3V0ZXJBY3Rpb24pKHt0eXBlOnUuQUNUSU9OX1JFU1RPUkUsdXJsOm5ldyBVUkwod2luZG93LmxvY2F0aW9uLmhyZWYpLGhpc3RvcnlTdGF0ZTp3aW5kb3cuaGlzdG9yeS5zdGF0ZS5fX1BSSVZBVEVfTkVYVEpTX0lOVEVSTkFMU19UUkVFfSkpfXJldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicGFnZXNob3ciLGUpLCgpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBhZ2VzaG93IixlKX19LFtdKSwoMCxvLnVzZUVmZmVjdCkoKCk9PntmdW5jdGlvbiBlKGUpe2xldCB0PSJyZWFzb24iaW4gZT9lLnJlYXNvbjplLmVycm9yO2lmKCgwLFMuaXNSZWRpcmVjdEVycm9yKSh0KSl7ZS5wcmV2ZW50RGVmYXVsdCgpO2xldCBuPSgwLGsuZ2V0VVJMRnJvbVJlZGlyZWN0RXJyb3IpKHQpOygwLGsuZ2V0UmVkaXJlY3RUeXBlRnJvbUVycm9yKSh0KT09PVMuUmVkaXJlY3RUeXBlLnB1c2g/dy5wdWJsaWNBcHBSb3V0ZXJJbnN0YW5jZS5wdXNoKG4se30pOncucHVibGljQXBwUm91dGVySW5zdGFuY2UucmVwbGFjZShuLHt9KX19cmV0dXJuIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsZSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInVuaGFuZGxlZHJlamVjdGlvbiIsZSksKCk9Pnt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGUpLHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJ1bmhhbmRsZWRyZWplY3Rpb24iLGUpfX0sW10pO2xldHtwdXNoUmVmOk59PXM7aWYoTi5tcGFOYXZpZ2F0aW9uKXtpZihDLnBlbmRpbmdNcGFQYXRoIT09Yil7bGV0IGU9d2luZG93LmxvY2F0aW9uO04ucGVuZGluZ1B1c2g/ZS5hc3NpZ24oYik6ZS5yZXBsYWNlKGIpLEMucGVuZGluZ01wYVBhdGg9Yn10aHJvdyBoLnVucmVzb2x2ZWRUaGVuYWJsZX0oMCxvLnVzZUVmZmVjdCkoKCk9PntsZXQgZT13aW5kb3cuaGlzdG9yeS5wdXNoU3RhdGUuYmluZCh3aW5kb3cuaGlzdG9yeSksdD13aW5kb3cuaGlzdG9yeS5yZXBsYWNlU3RhdGUuYmluZCh3aW5kb3cuaGlzdG9yeSksbj1lPT57bGV0IHQ9d2luZG93LmxvY2F0aW9uLmhyZWYsbj13aW5kb3cuaGlzdG9yeS5zdGF0ZT8uX19QUklWQVRFX05FWFRKU19JTlRFUk5BTFNfVFJFRTsoMCxvLnN0YXJ0VHJhbnNpdGlvbikoKCk9PnsoMCxmLmRpc3BhdGNoQXBwUm91dGVyQWN0aW9uKSh7dHlwZTp1LkFDVElPTl9SRVNUT1JFLHVybDpuZXcgVVJMKGU/P3QsdCksaGlzdG9yeVN0YXRlOm59KX0pfTt3aW5kb3cuaGlzdG9yeS5wdXNoU3RhdGU9ZnVuY3Rpb24odCxyLGwpe3JldHVybiB0Py5fX05BfHx0Py5fTnx8KHQ9Tyh0KSxsJiZuKGwpKSxlKHQscixsKX0sd2luZG93Lmhpc3RvcnkucmVwbGFjZVN0YXRlPWZ1bmN0aW9uKGUscixsKXtyZXR1cm4gZT8uX19OQXx8ZT8uX058fChlPU8oZSksbCYmbihsKSksdChlLHIsbCl9O2xldCByPWU9PntpZihlLnN0YXRlKXtpZighZS5zdGF0ZS5fX05BKXJldHVybiB2b2lkIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTsoMCxvLnN0YXJ0VHJhbnNpdGlvbikoKCk9PnsoMCx3LmRpc3BhdGNoVHJhdmVyc2VBY3Rpb24pKHdpbmRvdy5sb2NhdGlvbi5ocmVmLGUuc3RhdGUuX19QUklWQVRFX05FWFRKU19JTlRFUk5BTFNfVFJFRSl9KX19O3JldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicG9wc3RhdGUiLHIpLCgpPT57d2luZG93Lmhpc3RvcnkucHVzaFN0YXRlPWUsd2luZG93Lmhpc3RvcnkucmVwbGFjZVN0YXRlPXQsd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvcHN0YXRlIixyKX19LFtdKTtsZXR7Y2FjaGU6TCx0cmVlOlIsbmV4dFVybDpNLGZvY3VzQW5kU2Nyb2xsUmVmOkkscHJldmlvdXNOZXh0VXJsOkZ9PXMsQT0oMCxvLnVzZU1lbW8pKCgpPT4oMCxtLmZpbmRIZWFkSW5DYWNoZSkoTCxSWzFdKSxbTCxSXSksaj0oMCxvLnVzZU1lbW8pKCgpPT4oMCx5LmdldFNlbGVjdGVkUGFyYW1zKShSKSxbUl0pLFU9KDAsby51c2VNZW1vKSgoKT0+KHtwYXJlbnRUcmVlOlIscGFyZW50Q2FjaGVOb2RlOkwscGFyZW50U2VnbWVudFBhdGg6bnVsbCxwYXJlbnRQYXJhbXM6e30sZGVidWdOYW1lQ29udGV4dDoiLyIsdXJsOmIsaXNBY3RpdmU6ITB9KSxbUixMLGJdKSxCPSgwLG8udXNlTWVtbykoKCk9Pih7dHJlZTpSLGZvY3VzQW5kU2Nyb2xsUmVmOkksbmV4dFVybDpNLHByZXZpb3VzTmV4dFVybDpGfSksW1IsSSxNLEZdKTtpZihudWxsIT09QSl7bGV0W2UsdCxuXT1BO2w9KDAsYS5qc3gpKHose2hlYWRDYWNoZU5vZGU6ZX0sInUiPHR5cGVvZiB3aW5kb3c/bjp0KX1lbHNlIGw9bnVsbDtsZXQgVj0oMCxhLmpzeHMpKHAuUmVkaXJlY3RCb3VuZGFyeSx7Y2hpbGRyZW46W2wsKDAsYS5qc3gpKFAuUm9vdExheW91dEJvdW5kYXJ5LHtjaGlsZHJlbjpMLnJzY30pLCgwLGEuanN4KShkLkFwcFJvdXRlckFubm91bmNlcix7dHJlZTpSfSldfSk7cmV0dXJuIFY9KDAsYS5qc3gpKHguZGVmYXVsdCx7ZXJyb3JDb21wb25lbnQ6dFswXSxlcnJvclN0eWxlczp0WzFdLGNoaWxkcmVuOlZ9KSwoMCxhLmpzeHMpKGEuRnJhZ21lbnQse2NoaWxkcmVuOlsoMCxhLmpzeCkoVCx7YXBwUm91dGVyU3RhdGU6c30pLCgwLGEuanN4KShELHt9KSwoMCxhLmpzeCkoYy5OYXZpZ2F0aW9uUHJvbWlzZXNDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTpudWxsLGNoaWxkcmVuOigwLGEuanN4KShjLlBhdGhQYXJhbXNDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTpqLGNoaWxkcmVuOigwLGEuanN4KShjLlBhdGhuYW1lQ29udGV4dC5Qcm92aWRlcix7dmFsdWU6XyxjaGlsZHJlbjooMCxhLmpzeCkoYy5TZWFyY2hQYXJhbXNDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTpFLGNoaWxkcmVuOigwLGEuanN4KShpLkdsb2JhbExheW91dFJvdXRlckNvbnRleHQuUHJvdmlkZXIse3ZhbHVlOkIsY2hpbGRyZW46KDAsYS5qc3gpKGkuQXBwUm91dGVyQ29udGV4dC5Qcm92aWRlcix7dmFsdWU6dy5wdWJsaWNBcHBSb3V0ZXJJbnN0YW5jZSxjaGlsZHJlbjooMCxhLmpzeCkoaS5MYXlvdXRSb3V0ZXJDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTpVLGNoaWxkcmVuOlZ9KX0pfSl9KX0pfSl9KV19KX1mdW5jdGlvbiBSKHthY3Rpb25RdWV1ZTplLGdsb2JhbEVycm9yU3RhdGU6dCx3ZWJTb2NrZXQ6bixzdGF0aWNJbmRpY2F0b3JTdGF0ZTpyfSl7KDAsYi51c2VOYXZGYWlsdXJlSGFuZGxlcikoKTtsZXQgbD0oMCxhLmpzeCkoTCx7YWN0aW9uUXVldWU6ZSxnbG9iYWxFcnJvcjp0LHdlYlNvY2tldDpuLHN0YXRpY0luZGljYXRvclN0YXRlOnJ9KTtyZXR1cm4oMCxhLmpzeCkoeC5kZWZhdWx0LHtlcnJvckNvbXBvbmVudDpfLmRlZmF1bHQsY2hpbGRyZW46bH0pfWxldCBNPW5ldyBTZXQsST1uZXcgU2V0O2Z1bmN0aW9uIEQoKXtsZXRbLGVdPW8uZGVmYXVsdC51c2VTdGF0ZSgwKSx0PU0uc2l6ZTsoMCxvLnVzZUVmZmVjdCkoKCk9PntsZXQgbj0oKT0+ZShlPT5lKzEpO3JldHVybiBJLmFkZChuKSx0IT09TS5zaXplJiZuKCksKCk9PntJLmRlbGV0ZShuKX19LFt0LGVdKTtsZXQgbj0oMCxOLmdldERlcGxveW1lbnRJZFF1ZXJ5T3JFbXB0eVN0cmluZykoKTtyZXR1cm5bLi4uTV0ubWFwKChlLHQpPT4oMCxhLmpzeCkoImxpbmsiLHtyZWw6InN0eWxlc2hlZXQiLGhyZWY6YCR7ZX0ke259YCxwcmVjZWRlbmNlOiJuZXh0In0sdCkpfWdsb2JhbFRoaXMuX05fRV9TVFlMRV9MT0FEPWZ1bmN0aW9uKGUpe2xldCB0PU0uc2l6ZTtyZXR1cm4gTS5hZGQoZSksTS5zaXplIT09dCYmSS5mb3JFYWNoKGU9PmUoKSksUHJvbWlzZS5yZXNvbHZlKCl9LCgiZnVuY3Rpb24iPT10eXBlb2Ygbi5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIG4uZGVmYXVsdCYmbnVsbCE9PW4uZGVmYXVsdCkmJnZvaWQgMD09PW4uZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KG4uZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihuLmRlZmF1bHQsbiksdC5leHBvcnRzPW4uZGVmYXVsdCl9LDM4NzkyLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJjcmVhdGVJbml0aWFsUm91dGVyU3RhdGUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBpfX0pO2xldCByPWUucig4NTU5NCksbD1lLnIoMTgxNjcpLGE9ZS5yKDY3NjI4KSxvPWUucigxODkzOSk7ZnVuY3Rpb24gaSh7bmF2aWdhdGVkQXQ6ZSxpbml0aWFsRmxpZ2h0RGF0YTp0LGluaXRpYWxDYW5vbmljYWxVcmxQYXJ0czpuLGluaXRpYWxSZW5kZXJlZFNlYXJjaDppLGxvY2F0aW9uOnV9KXtsZXQgcz1uLmpvaW4oIi8iKSx7dHJlZTpjLHNlZWREYXRhOmYsaGVhZDpkfT0oMCxhLmdldEZsaWdodERhdGFQYXJ0c0Zyb21QYXRoKSh0WzBdKSxwPXU/KDAsci5jcmVhdGVIcmVmRnJvbVVybCkodSk6cztyZXR1cm57dHJlZTpjLGNhY2hlOigwLG8uY3JlYXRlSW5pdGlhbENhY2hlTm9kZUZvckh5ZHJhdGlvbikoZSxjLGYsZCkscHVzaFJlZjp7cGVuZGluZ1B1c2g6ITEsbXBhTmF2aWdhdGlvbjohMSxwcmVzZXJ2ZUN1c3RvbUhpc3RvcnlTdGF0ZTohMH0sZm9jdXNBbmRTY3JvbGxSZWY6e2FwcGx5OiExLG9ubHlIYXNoQ2hhbmdlOiExLGhhc2hGcmFnbWVudDpudWxsLHNlZ21lbnRQYXRoczpbXX0sY2Fub25pY2FsVXJsOnAscmVuZGVyZWRTZWFyY2g6aSxuZXh0VXJsOigoMCxsLmV4dHJhY3RQYXRoRnJvbUZsaWdodFJvdXRlclN0YXRlKShjKXx8dT8ucGF0aG5hbWUpPz9udWxsLHByZXZpb3VzTmV4dFVybDpudWxsLGRlYnVnSW5mbzpudWxsfX0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSw5MzM1MSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO2xldCByLGwsYSxvO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiaHlkcmF0ZSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIEF9fSk7bGV0IGk9ZS5yKDgxMjU4KSx1PWUucig5ODEzNCk7ZS5yKDc5MTIzKTtsZXQgcz1pLl8oZS5yKDgyOTQwKSksYz1pLl8oZS5yKDc1MjAxKSksZj1lLnIoNzUwNDUpLGQ9ZS5yKDQ0OTM0KSxwPWUucigzMjc5MyksbT1lLnIoODI5MzkpLGg9ZS5yKDMwOTMxKSxnPWUucig4OTU5NCksdj1lLnIoODQzOTUpLHk9aS5fKGUucig2MTE1NikpLGI9ZS5yKDM4NzkyKTtlLnIoMTY4NzIpO2xldCB3PWUucig2MTcwNiksaz1lLnIoNjc2MjgpLFM9Zi5jcmVhdGVGcm9tUmVhZGFibGVTdHJlYW0sRT1mLmNyZWF0ZUZyb21GZXRjaCx4PWRvY3VtZW50LF89bmV3IFRleHRFbmNvZGVyLFA9ITEsTj0hMSxDPW51bGw7ZnVuY3Rpb24gVChlKXtpZigwPT09ZVswXSlhPVtdO2Vsc2UgaWYoMT09PWVbMF0pe2lmKCFhKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiVW5leHBlY3RlZCBzZXJ2ZXIgZGF0YTogbWlzc2luZyBib290c3RyYXAgc2NyaXB0LiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMTgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7bz9vLmVucXVldWUoXy5lbmNvZGUoZVsxXSkpOmEucHVzaChlWzFdKX1lbHNlIGlmKDI9PT1lWzBdKUM9ZVsxXTtlbHNlIGlmKDM9PT1lWzBdKXtpZighYSl0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIlVuZXhwZWN0ZWQgc2VydmVyIGRhdGE6IG1pc3NpbmcgYm9vdHN0cmFwIHNjcmlwdC4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTE4IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO2xldCBuPWF0b2IoZVsxXSkscj1uZXcgVWludDhBcnJheShuLmxlbmd0aCk7Zm9yKHZhciB0PTA7dDxuLmxlbmd0aDt0Kyspclt0XT1uLmNoYXJDb2RlQXQodCk7bz9vLmVucXVldWUocik6YS5wdXNoKHIpfX1sZXQgTz1mdW5jdGlvbigpe28mJiFOJiYoby5jbG9zZSgpLE49ITAsYT12b2lkIDApLFA9ITB9OyJsb2FkaW5nIj09PWRvY3VtZW50LnJlYWR5U3RhdGU/ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsTywhMSk6c2V0VGltZW91dChPKTtsZXQgej1zZWxmLl9fbmV4dF9mPXNlbGYuX19uZXh0X2Z8fFtdO3ouZm9yRWFjaChUKSx6Lmxlbmd0aD0wLHoucHVzaD1UO2xldCBMPW5ldyBSZWFkYWJsZVN0cmVhbSh7c3RhcnQoZSl7YSYmKGEuZm9yRWFjaCh0PT57ZS5lbnF1ZXVlKCJzdHJpbmciPT10eXBlb2YgdD9fLmVuY29kZSh0KTp0KX0pLFAmJiFOKSYmKG51bGw9PT1lLmRlc2lyZWRTaXplfHxlLmRlc2lyZWRTaXplPDA/ZS5lcnJvcihPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIlRoZSBjb25uZWN0aW9uIHRvIHRoZSBwYWdlIHdhcyB1bmV4cGVjdGVkbHkgY2xvc2VkLCBwb3NzaWJseSBkdWUgdG8gdGhlIHN0b3AgYnV0dG9uIGJlaW5nIGNsaWNrZWQsIGxvc3Mgb2YgV2ktRmksIG9yIGFuIHVuc3RhYmxlIGludGVybmV0IGNvbm5lY3Rpb24uIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkUxMTciLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSkpOmUuY2xvc2UoKSxOPSEwLGE9dm9pZCAwKSxvPWV9fSksUj13aW5kb3cuX19ORVhUX0NMSUVOVF9SRVNVTUU7ZnVuY3Rpb24gTSh7aW5pdGlhbFJTQ1BheWxvYWQ6ZSxhY3Rpb25RdWV1ZTp0LHdlYlNvY2tldDpuLHN0YXRpY0luZGljYXRvclN0YXRlOnJ9KXtyZXR1cm4oMCx1LmpzeCkoeS5kZWZhdWx0LHthY3Rpb25RdWV1ZTp0LGdsb2JhbEVycm9yU3RhdGU6ZS5HLHdlYlNvY2tldDpuLHN0YXRpY0luZGljYXRvclN0YXRlOnJ9KX1sPVI/UHJvbWlzZS5yZXNvbHZlKEUoUix7Y2FsbFNlcnZlcjpoLmNhbGxTZXJ2ZXIsZmluZFNvdXJjZU1hcFVSTDpnLmZpbmRTb3VyY2VNYXBVUkwsZGVidWdDaGFubmVsOnJ9KSkudGhlbihhc3luYyBlPT4oMCxrLmNyZWF0ZUluaXRpYWxSU0NQYXlsb2FkRnJvbUZhbGxiYWNrUHJlcmVuZGVyKShhd2FpdCBSLGUpKTpTKEwse2NhbGxTZXJ2ZXI6aC5jYWxsU2VydmVyLGZpbmRTb3VyY2VNYXBVUkw6Zy5maW5kU291cmNlTWFwVVJMLGRlYnVnQ2hhbm5lbDpyLHN0YXJ0VGltZTowfSk7bGV0IEk9Yy5kZWZhdWx0LlN0cmljdE1vZGU7ZnVuY3Rpb24gRCh7Y2hpbGRyZW46ZX0pe3JldHVybiBlfWxldCBGPXtvbkRlZmF1bHRUcmFuc2l0aW9uSW5kaWNhdG9yOmZ1bmN0aW9uKCl7cmV0dXJuKCk9Pnt9fSxvblJlY292ZXJhYmxlRXJyb3I6cC5vblJlY292ZXJhYmxlRXJyb3Isb25DYXVnaHRFcnJvcjptLm9uQ2F1Z2h0RXJyb3Isb25VbmNhdWdodEVycm9yOm0ub25VbmNhdWdodEVycm9yfTthc3luYyBmdW5jdGlvbiBBKGUsdCl7bGV0IG4scixhPWF3YWl0IGw7KDAsdy5zZXRBcHBCdWlsZElkKShhLmIpO2xldCBvPURhdGUubm93KCksaT0oMCx2LmNyZWF0ZU11dGFibGVBY3Rpb25RdWV1ZSkoKDAsYi5jcmVhdGVJbml0aWFsUm91dGVyU3RhdGUpKHtuYXZpZ2F0ZWRBdDpvLGluaXRpYWxGbGlnaHREYXRhOmEuZixpbml0aWFsQ2Fub25pY2FsVXJsUGFydHM6YS5jLGluaXRpYWxSZW5kZXJlZFNlYXJjaDphLnEsbG9jYXRpb246d2luZG93LmxvY2F0aW9ufSksZSksZj0oMCx1LmpzeCkoSSx7Y2hpbGRyZW46KDAsdS5qc3gpKGQuSGVhZE1hbmFnZXJDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTp7YXBwRGlyOiEwfSxjaGlsZHJlbjooMCx1LmpzeCkoRCx7Y2hpbGRyZW46KDAsdS5qc3gpKE0se2luaXRpYWxSU0NQYXlsb2FkOmEsYWN0aW9uUXVldWU6aSx3ZWJTb2NrZXQ6cixzdGF0aWNJbmRpY2F0b3JTdGF0ZTpufSl9KX0pfSk7Il9fbmV4dF9lcnJvcl9fIj09PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5pZD9zLmRlZmF1bHQuY3JlYXRlUm9vdCh4LEYpLnJlbmRlcihmKTpjLmRlZmF1bHQuc3RhcnRUcmFuc2l0aW9uKCgpPT57cy5kZWZhdWx0Lmh5ZHJhdGVSb290KHgsZix7Li4uRixmb3JtU3RhdGU6Q30pfSl9KCJmdW5jdGlvbiI9PXR5cGVvZiBuLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygbi5kZWZhdWx0JiZudWxsIT09bi5kZWZhdWx0KSYmdm9pZCAwPT09bi5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKG4uZGVmYXVsdCxuKSx0LmV4cG9ydHM9bi5kZWZhdWx0KX0sOTYzMzUsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7bGV0IHI9ZS5yKDQ4NzA2KTtlLnIoMzI3OTMpLHdpbmRvdy5uZXh0LnR1cmJvcGFjaz0hMCxzZWxmLl9fd2VicGFja19oYXNoX189IiI7bGV0IGw9ZS5yKDkyMzg2KTsoMCxyLmFwcEJvb3RzdHJhcCkodD0+e2xldHtoeWRyYXRlOm59PWUucig5MzM1MSk7bihsLHQpfSksKCJmdW5jdGlvbiI9PXR5cGVvZiBuLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygbi5kZWZhdWx0JiZudWxsIT09bi5kZWZhdWx0KSYmdm9pZCAwPT09bi5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKG4uZGVmYXVsdCxuKSx0LmV4cG9ydHM9bi5kZWZhdWx0KX1dKTs="}},"time_used":12,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":11,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.googleapis.com/element/log?format=json\u0026hasfast=true\u0026authuser=0","fqdn":"translate.googleapis.com","domain":"translate.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:43.481Z","timestamp":1785158443481,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"upload.video.google.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:27 GMT","end":"Mon, 21 Sep 2026 08:39:26 GMT"},"fingerprint":{"sha1":"50:37:CF:61:33:A1:EE:47:D9:3D:A6:5E:07:BA:4C:FF:F7:25:9F:76","sha256":"7D:4D:21:06:63:E2:5E:F0:8C:59:8E:EB:B7:94:2B:81:70:11:D3:F4:C0:A0:81:A6:1B:E7:27:FD:56:10:1A:11"}}},"request":{"raw":"POST /element/log?format=json\u0026hasfast=true\u0026authuser=0 HTTP/1.1\r\nHost: translate.googleapis.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://uniz-coinzltd.com/\r\nX-Goog-AuthUser: 0\r\nContent-Encoding: gzip\r\nContent-Type: application/binary\r\nContent-Length: 291\r\nOrigin: https://uniz-coinzltd.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":"POST","post_data":{"size":428,"data":"\u001f\b\u0000\u0000\u0000\u0000\u0000\u0000\u0003ÝTËnÃ \u0010ü\u0017ÎvÃb°qn%N¿ 7,\u0014[\t\u000bQCzð×\u0017¬$µÓGzlºB+\u0018\u0018`\u0012\u0012{ìû_'ùó4z^7\u0004\u001c\u0017 é2`¥T\u0002¼DJ(8\u0003ÆiÑ\"¿¡nHþÓT#ëjô\u0007\u000erg)4t|\u0017®F@sQ¬L\u0005Ïªb±N(DÊV¸|zjÅ(\u000fDY£÷ûÃr±8Z3¤\u001bgìÐûöaã^Î%\bÈTqLÄBôÙjo\u001d%wÙ\u0016ÇÈ\"x\u000b9Îè\u0015fs|_Ì/ÌðÇ\u0019Ê)à$\bf\u003cüÀxbÿªí¡×¾[îõ¶kz§ÛÆ»ÆXãîÍÐµñ\n×»R¹¬1mÐON¿¯\u0012D/8\u0000\r\u0026ÀÕ;?°ª\u0004\u0000\u0000"}},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: https://uniz-coinzltd.com\r\ncross-origin-resource-policy: cross-origin\r\naccess-control-allow-credentials: true\r\naccess-control-allow-headers: X-Playlog-Web\r\ncontent-type: text/plain; charset=UTF-8\r\ncontent-encoding: gzip\r\ndate: Mon, 27 Jul 2026 13:20:43 GMT\r\nserver: Playlog\r\ncontent-length: 131\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":131,"size_decoded":578,"mime_type":"text/plain; charset=UTF-8","magic":"JSON text data","md5":"ca0b7e866005f6774d284b9f438ebfd2","sha1":"53644f5ee3640189bdb223473ba6a2d46606c556","sha256":"502e9680cfa78fa8be779cbf4f1947c8eaa3d43bf8c7464800ec772b2ddea358","sha512":"939c4526c623db033ad40bfdc6c8848a1dcd0ca797f17fbbd89fbec1b49dededc16e89084b3759e62fa0ffc8fe896980b10a1ff8daee22736a70b08f1ee13e2f","ssdeep":"","tlshash":"58c08c50330469e1080e82c8c0026858228c903b46708cf10bbd68125d3234a1004854","first_seen":"2023-04-05T03:14:56Z","last_seen":"2026-08-17T23:37:29.173639Z","times_seen":589304,"resource_available":false,"data":"WyItMSIsbnVsbCxbW1siQU5EUk9JRF9CQUNLVVAiLDBdLFsiQkFUVEVSWV9TVEFUUyIsMF0sWyJTTUFSVF9TRVRVUCIsMF0sWyJUUk9OIiwwXV0sLTMzMzQ3Mzc1OTQwMjQ5NzEyMjVdLFtdLHsiMTc1MjM3Mzc1IjpbMTAwMDBdfV0="}},"time_used":33,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":33,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/bluetick.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.830Z","timestamp":1785158432830,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/bluetick.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/styles/custom.css\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=4,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:32 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23159\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=r%2F5eb%2FjiJN85oUTL8TNN10rJPqAjNdRweReGMgeCIU20iVcJI7lErr0D%2F1O9%2F46rEJZuXImB5le9PRg2g1Tvlt5MZv5c8HGSAZGV0je67ds%2FcVGZNpZGQgKkHQ3hTb7Qvp9VgQ%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12d4ca156b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 1310\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":1310,"size_decoded":2076,"mime_type":"image/png","magic":"PNG image data, 16 x 16, 8-bit/color RGBA, non-interlaced","md5":"f5e2c4f1935547000f87ae391ccdf0b2","sha1":"d9ee0983cb500537ef4e69289859492e282e8e59","sha256":"7ea215d9dbaf839afe28316b81ee4ab7355de89cbd2d1c29c8c1f081d930c8b7","sha512":"bddf9edd7f0883d26703be870011d3c0f576c8c2bc7811dea11b0edbbed3b4bd77bfd38be2dbac77f9dbcfac074b1a94205261d45aa32ead66abed0ba26ac6a3","ssdeep":"","tlshash":"44217249fa76a804d91edaca28ead032690302c0c5c8e356fdcac6421c741f149aa9db","first_seen":"2024-09-19T20:45:31.01359Z","last_seen":"2026-07-27T13:21:39.078255Z","times_seen":16,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RDVERTQxQ0Q4NUQ0MTFFOUI4MTk5QkM1RDUyNDg3RDMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RDVERTQxQ0U4NUQ0MTFFOUI4MTk5QkM1RDUyNDg3RDMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpENURFNDFDQjg1RDQxMUU5QjgxOTlCQzVENTI0ODdEMyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpENURFNDFDQzg1RDQxMUU5QjgxOTlCQzVENTI0ODdEMyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PuKOsNEAAAGSSURBVHjadNPNK0RRGMfxubcrE43sJPKylA2jUZTR2FPIPzBRWJKd2ZmFlNVkw5qdjSJlobHwzt6KGlYWk5FRUzO+j35Xt+k69Wmme5/nnHOf8xynLXMcCQwXKcxgDN16/owLHOIcVT/BCyR3IosEHpHDCxxNlNSzG6yjEJzAkvdQxpomKKGi9w04wiDmFWu/BU/bzip5G/f6Xwvs7hufKOIDq9hA2v/mhGa15K+6ZH/UNPGDYocx7qlgD1KOhI8OTKAFO4q1z5xxVe28thi2stVnDpOB3ZV0KmO2gy5V2y/YtAJshSbMYgTXOFVMRUfb7YWsaBMOoA+t6MctDvBWH+xq9R4dlY0TvGMKo7gLSbbYXst19S3WJDE1zRN2cabO28drINlR7G/tPAXl1CRFFcom2fznRKwucX3msqvevlFnDaFZq9QPR+/iir2yHbi6GNbbUayosdq1zajE9CylLmxUTtU/BbsYC2rPLR1hXkflqMhJbfsSGb+owWO0SdLWnurORSX619kmXNLv33X+EWAAEY1obToEcGAAAAAASUVORK5CYII="}},"time_used":34,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":34,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/media/83afe278b6a6bb3c-s.p.3a6ba036.woff2","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.119Z","timestamp":1785158433119,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/media/83afe278b6a6bb3c-s.p.3a6ba036.woff2 HTTP/1.1\r\nHost: coinlib.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\nage: 3839015\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"83afe278b6a6bb3c-s.p.3a6ba036.woff2\"\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: font/woff2\r\ndate: Mon, 27 Jul 2026 13:20:33 GMT\r\netag: \"65850a373e258f1c897a2b3d75eb74de\"\r\nlast-modified: Sat, 13 Jun 2026 02:56:57 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/media/83afe278b6a6bb3c-s.p.3a6ba036.woff2\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::6llhh-1781319417508-42ed70ceb10a\r\nx-xss-protection: 1; mode=block\r\nserver-timing: cfExtPri\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=SHmmNSl5ujw5RiEVeWO53C6sc8kWRnOO9C6KVpJ7ZEiqfnopAP1sRNe45B9Tj1Z%2F4Z69fWieKnSmgtrDgcXMQFXefUkRnAIsQEF8olfPJnsLqZ9QHV88GXFR%2Flwm\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\npriority: u=2,i=?0\r\ncf-ray: a21bf12f083056b7-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 48432\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"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":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":48432,"size_decoded":50501,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 48432, version 1.0","md5":"65850a373e258f1c897a2b3d75eb74de","sha1":"1dc044f4824fd5af6bfed67fee48be70fa069f3f","sha256":"c940764593d0fe5d596be327ca7558855e018039fb78509aa21921fd3644c3e4","sha512":"df2683f3dd9724de589451a47bc608c9925d54b874ad97b733dd465ef41f9db75e9e31604762415c2fc1433d050e45fdefc6ecd7ecadf58d1243d9ca5f4bf74b","ssdeep":"768:3IkDHBYoX5Pi4JxTGz9CDR0s1ROSsA8mF77YNt7wFhVq9oN2WfpdqWjBA:tNYoX53xTl/R8W77YNtUFrWoUWvdA","tlshash":"56230251f5f8624a7fc3003fbc317bd862909fe5996ee5d91288f30225611dd29ee017","first_seen":"2025-05-30T12:57:00.85385Z","last_seen":"2026-08-17T23:31:52.322391Z","times_seen":92082,"resource_available":false,"data":"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"}},"time_used":14,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":5,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/1.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"52.84.50.71","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.396Z","timestamp":1785158433396,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/1.png HTTP/1.1\r\nHost: s2.coinmarketcap.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncontent-type: image/png\r\ncontent-length: 2691\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 19 Oct 2021 05:32:33 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 03:09:15 GMT\r\ncache-control: max-age=86400\r\netag: \"2edf1ef8b333c40979976d1a49bc234c\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 36679\r\nvia: 1.1 bb489e045ccdb24c55a720f2ea03e7f0.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: OSL50-P3\r\nx-amz-cf-id: lt2JVi8UjaBquxWnE07npbZUMJZus513E7u7pzBQe9UQlORxbAXy7g==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":2691,"size_decoded":3217,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"2edf1ef8b333c40979976d1a49bc234c","sha1":"d75ac12795b4a9575c874e1b190712cd62a87afc","sha256":"50a1901684f223bf26594dd3415b1e50f184820a16daa810cc5452911e9117a9","sha512":"f697a1fa0786316fc01003f72621920932e2657e4acf5a471e35d02717c42c9db5a12df311895a776a563dcae9b8fc0b6721833529a054b9dbfff4c52fc564d3","ssdeep":"","tlshash":"2b515ee60252267980d32438616db1e178beabb2c3021ded6c1444954acc4b62555cfa","first_seen":"2023-05-01T18:49:36Z","last_seen":"2026-08-17T21:34:38.571887Z","times_seen":25972,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAADAFBMVEVHcEz/fwD2kxr/AAD2khr0dQD3kxr//wD/qgD2kxr2khr2khr1khr2khr6lhr1khr2khn6lRn4kxr1khb2khn3kxr3kBi/fwD3kxr4khn3kxn3kRjzkBf4khr/VQD6lRn6lhr7lxv6lRr9mBv4lRn2khn6lhrMmQD5lRn4kxr3kxr3kxn3kxn2khn3kxn5lBn4lBn3kxn3lBr4lBkAZwD6lhr1khj5lRr4lBn5kRj3lBn3kxr2khr3kxn4lBn3khn1kRqqVQD8lhr3kxr3kxr2kBr0jxr7lhr3khn7lhr4lBn5lRr3kxr1kRv7lRr2kxn5lBn3khrykRj2kRj3lBn4khr2khn6lxr4lBj5lBrykhn2khn3kxr//////v33lBz///73lR33lB33kxv/nRz3lR7/mRv//fv//fz/nhz//vz2jAr3jQz//v73khj3lBv/mxv3jhD3kRX3kxn3kBT4lBr7lRr3jAz3jQ7//Pn3kRb/nxz/mBv+lxv5lBr3jxH//fr3jg/2iwr2jQz4njH80p/3khf+mRv/nBz3kBP/+/f816v//Pj5lRv7lhv/+vX5s137zpb4liH3jAr5qEf806H6t2b/+/b81ab6t2f82K34nS/7zJH4oTj4nC33iwn7wn3/mxz6w3/937r2jAz96M75tWH7zpj97Nf958z2iQX82rH7yo33lR/4myv+8N/4mCT6lRr6u2/+6tP3jg7969T4ojn5sFf+7tr++PD6v3j4ozz+9u36uWr2igb+69T82rD6uWz+8+b2iwj+7tz6vXL5pD72jQ75slr4pUD+797/+PD5sFj3liD96dD94sL4nzT+79z95sv//Pr3jxD5tmP+8+X948P93LX3myr7yo/5rlL94sP4qUj94L34pUH5tF/7wn/+7dj7xYX81KP/+fL5qkr6uGn81qj2hQD97Nj///37x4n6xYT95cf3mSf96tL7zZb2hwD+8eH5q03/mhv5rlT6wHn3lyP95cj8z5r7yYz+9Oj4oTf3hwD83LSsdU1lAAAAXHRSTlMABP4B/gL7AQP9/Pv++vX89476GJDqFgT9KI4pLWIDbfz9/v532NMFQY/W1fhe912nqa3sAeeHhu0V97m6zo2oawO/xGthYMLH6++F/Bzq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"}},"time_used":21,"timings":{"blocked":-1,"dns":3,"connect":11,"send":0,"wait":7,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/1839.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"52.84.50.71","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=full_v2\u0026theme=light\u0026cnt=6\u0026pref_coin_id=1505\u0026graph=yes","date":"2026-07-27T13:20:33.404Z","timestamp":1785158433404,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/1839.png HTTP/1.1\r\nHost: s2.coinmarketcap.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncontent-type: image/png\r\ncontent-length: 1387\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Thu, 17 Feb 2022 08:19:34 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 02:10:47 GMT\r\netag: \"aef8727bea8367cd9fd252c025b45887\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 40187\r\nvia: 1.1 bb489e045ccdb24c55a720f2ea03e7f0.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: OSL50-P3\r\nx-amz-cf-id: h8zuyOoq_kcdwEkJihYopnEr6nfjAZiBacimmuzyWji4qbBcVEBtHg==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":1387,"size_decoded":1883,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"aef8727bea8367cd9fd252c025b45887","sha1":"c2ab9d909455bff35181dfd92bcc7baba930867f","sha256":"ce5a07d36768bcb5524044a9e92a606ae6effe1cb0913dfa418703461db62fe3","sha512":"5f97e368e23aa5e501e57917aea9426704ac3c4068b34d803f44944663bab45131170fec2872fb868a5faceb6856ce4d9f8870053aba7e8d08455989a731984d","ssdeep":"","tlshash":"5321085f5b644577dda94dbede05a54b29e30d208d978bc2c404ec1534598a643608ad","first_seen":"2023-05-06T05:54:57Z","last_seen":"2026-08-17T23:48:38.537234Z","times_seen":16157,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAFMklEQVR4XtVbvW4TQRhMSWwipYYngCeACsp0pEsJFZTp8gapaXgD6F0gETsIWaRIARIopAAJJAcJCgq4s5M4/zE3l6y1nv253fXe2R5plOR2787f7PfN7u05c3MVIGksLiYbNx92W/XnaavWSFv1TrpZT7Kfg5xXv3fQhj7oi3P4OjOD7ub8ahZUexjguGzW271W/THfZ+qAkYsauMJaI3mzsMz3nThG0rky1jr8OSpHPuJ57fKHq4q1zkRKI9moP5nMqJtYoRBwZ/UDTAdLnzmma9RNLMkb8rRXbjadjF4OfINZIccRhFkaeebYmZCWNMV1390enOy9GAgc7j5T+kRkwnE5oUy3vzxLh8ELXPR/Kv1i0Xt2KCPte1t3OWYtyhLCqxzSyKl//GNdO+omQIQSysKtFGKO/tm/LY5tBEff1wenf17z4REcZ17B1w0llu4cr4I0wuizyelw9ndr2P+iv8fNI4iXDQWLpDRC8KApoMuzZND/uqb0Fzz59ZJPGSJiJphLQdM5mP3dpxxDlhm3lH7M3vs7fNpg/8OS0m8cctw5ktbCMnd0YT9LT8Dk3giIj4EHH5eGAeqEwXm64ygvAcws3O5CrRdc79UpnW1kkzvv7Th9KPYHV9c/+ramzCZBpdGst0eC93V+Dpyxv31POQfEqNrq3OYPmDFsOMxKjs+xsducXx0K4LuPZxKgyOQEdSbpMpI28XwFGMkCpbGALMB5d0c76vAHpCwWQrp6xqgeflpRju9v38/vgTWCrqRgsFwK3gK0JDPkhiKyAEdZgNxHNjnAZJJM2eQEdCJwFgULkLT9H3psAmCki6ALiAXTQe4fQ4D8Iel6Z1dptPEoq3MZsgAuDz3IBlxDnMOCmiB/BlkA/G6abm3Mp8Or11VqowsPPq/kN/cVIBTyvXFfmKLOW1yJ2IPmfyZMSfxelQCnWfD8ObzZrDWC1v+oVz4mWJUAMmGcOl8pZvZwFLLVjZrFqo+Pgy4mGAq+lyCmxBATTPFgpDlYSNm0TNOb7qEmBFhc8bVBni4DBRiMLQCgWweAwiRDgdWhyeSQgTLCBQgsARkmAQSLngEYLsGwsC7naJiXQEfTYKVNAJiR6ckOu0BFwPKYzxM7TPKxOALABAOmwSIBBE5+vxpxZ90mCUO+D2Yb+V5yWxQBMA2GLIRcBQBkk/QVgCG3xRAgXwiFLIV9BABE27QJsL9540H0h6FZEmD4xogbimgTAMTUJe/giOOhAug2RWMIEG0/AGbHfUAx9Ym/fQXAIkg3KyDL4m6IRNoSY9dn+grAxKwAU9XBWwB5Syz/YiN3sNAkgIBp9TaOANgms8FXAOVlqW8WgEUwZQPXLyC/KpOJrXAbcC0+p5CY/xkh06HLEtfkD7JJ6kwOPO9+ka6kQucPLuy9rT3i+HNwRx/a0pv7utIEk2Cu5LiHCHkwkmnKBtGOOjaVBcgbLQyku2+tq6zgDTGyQa5z+fhVIKOvwuQvUMjXEYA/hGx6qiwIHgjxAhMFxN9cJsgG8XJVgM8PMjkDFec3YdxSMJEF0IHPiUeH0RfwfVnqykkK4Dz6AiEPSS607RWaFlDj0vtrcgJlloJskjA53cvVOPRIfR3KKgfQ9C2QWPROexP4wrNCjmMslJkJsRlt5BlphEVS6dy0fA0uBsqaHWIw2O19cV0OHf4AE2M26qWlvQ2TF6LWyXd2J410EiKUXeshwEZDyJsmZzbr7akY8SJc/2NlWwkglFng2Lfk+8wM4M4YuW7T4d/nsz7oW5Wj/wdXGukMTSgLegAAAABJRU5ErkJggg=="}},"time_used":8,"timings":{"blocked":1,"dns":0,"connect":0,"send":0,"wait":7,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/images/branding/googlelogo/1x/googlelogo_color_68x28dp.png","fqdn":"www.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.649Z","timestamp":1785158433649,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /images/branding/googlelogo/1x/googlelogo_color_68x28dp.png HTTP/1.1\r\nHost: www.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 1597\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:10:18 GMT\r\nexpires: Thu, 22 Jul 2027 13:10:18 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Fri, 30 Jun 2023 18:58:00 GMT\r\ncontent-type: image/png\r\nvary: Origin\r\nage: 432615\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":1597,"size_decoded":2271,"mime_type":"image/png","magic":"PNG image data, 68 x 28, 8-bit/color RGBA, non-interlaced","md5":"c4a931d597decd2553aac6634b766cf2","sha1":"6ec84fb4a2745b4b71520241be77db1fd1013830","sha256":"f56402b127698db4b4dc611a97a6f081d04c4691c60522c5912d189e37c94a9e","sha512":"4932e0f7f38085a7c52539bdd5c7f470740e560a4471bea30d12ef9e3efe77f6bbfac28d26c62a245c43d98ebf74c824b2b414843080a27edf1563a5f874ac84","ssdeep":"","tlshash":"7c310afff39e8cec419e764069ba5965a362cd68233e928f14499592e4d007710f5f41","first_seen":"2023-04-05T08:27:37Z","last_seen":"2026-08-17T20:02:35.876266Z","times_seen":20274,"resource_available":false,"data":"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"}},"time_used":17,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":17,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/i/productlogos/translate/v14/24px.svg","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":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.513Z","timestamp":1785158433513,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/i/productlogos/translate/v14/24px.svg HTTP/1.1\r\nHost: fonts.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\ncontent-encoding: gzip\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"apps-themes\"\r\nreport-to: {\"group\":\"apps-themes\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/apps-themes\"}]}\r\ncontent-length: 3340\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 10:10:10 GMT\r\nexpires: Fri, 23 Jul 2027 10:10:10 GMT\r\ncache-control: public, max-age=31536000\r\nage: 357024\r\nlast-modified: Wed, 20 Apr 2022 14:24:23 GMT\r\ncontent-type: image/svg+xml\r\nvary: Accept-Encoding\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":6225,"size_decoded":4178,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"2bd5c073a88b83ed74db88282a56ddfb","sha1":"d0ebfc376f8c6a44a8d4cd216817dcd7d0c33650","sha256":"ab5c23a05e39deed14d9d8262b0dce9f024f86105a27196cad37d14a3f516e09","sha512":"5c6c4a92e93fc0f6a675658cc84f6187fdebd3eee94efd07e24658736cba598f3bc7156b19834b13fb44c1d43fcb7df9fcca7f0a453037e30da76ba8f4b23b89","ssdeep":"96:+R2K3Z4n7tyVwip82hezk6227gLFoXhu1XuE20ot+pVY3YptWDzOzgXK3Zx:ql3KnxyGGMzb7noR20NTww33","tlshash":"c1d1e6f19309d815cd6a83d8cd9b8002aa1f25ddd50ac6cc7639fb3bd1a50eb1d2d7a4","first_seen":"2023-04-06T21:34:37Z","last_seen":"2026-08-17T21:53:38.013365Z","times_seen":80059,"resource_available":false,"data":"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCI+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjxkZWZzPjxwYXRoIGQ9Ik0yMS41IDVoLTkuMTdMMTEgMUgyLjVDMS42OCAxIDEgMS42OCAxIDIuNXYxNWMwIC44My42OCAxLjUgMS41IDEuNWg5LjE3TDEzIDIzaDguNWMuODIgMCAxLjUtLjY4IDEuNS0xLjV2LTE1YzAtLjgzLS42OC0xLjUtMS41LTEuNXoiIGlkPSJhIi8+PC9kZWZzPjxjbGlwUGF0aCBpZD0iYiI+PHVzZSBvdmVyZmxvdz0idmlzaWJsZSIgeGxpbms6aHJlZj0iI2EiLz48L2NsaXBQYXRoPjxnIGNsaXAtcGF0aD0idXJsKCNiKSI+PGltYWdlIGhlaWdodD0iMzEiIG9wYWNpdHk9Ii4yIiBvdmVyZmxvdz0idmlzaWJsZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMyAxKSIgd2lkdGg9IjI5IiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUIwQUFBQWZDQVlBQUFBYlc4WUVBQUFBQ1hCSVdYTUFBQXNTQUFBTEVnSFMzWDc4QUFBQSBHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFCUUJKUkVGVWVOcThWOHR1MjBZVXZYZG0rTENrIFJLaU13STFURkVYaFZaSmQxZ1c2Nnhla3Y5RFBxUHN2WGRVL1VhRHJvSnNrS3krQ0luQ2NHcEt0RnkyU00vZjJERVhaaWEwb2R0S1cgQWtGSjh6aHp6bjNTMFljdnBzKzc5RU1EYmozWWZndjRFTStYVE4vZkVPYjNaZzNBWG1xN2o2NEQ1L2UveC9FZnpaTW5YNWp4K0xGWiBMTHlwNnlORE96c2tZYjZSdWJGZHBiZHZLVWwySmMrZDlQdlA1ZG16VXlINlRWb1lYUU9xK0g1Zzl2YitjT05zTzltYUxwSXl5WlBVIGtaTkFwcG1oOVZwZzVrU1h3Q1NWSjUvVmkvcjhUbDczeTJGOWVQaWRKM29hZ2ErQjR2a1VnRis2RVcxbmR6MTFndk5kRGRMMWJETnIgeUtrQ1dPMTZ0aHlVR1dJSWVhZTJaR3ZuMW9mNXhGRXhvR0Y1ZUhnTTRBTlpzVzAzMlRmMDVNamVXK3htTktlZWRlV0FnOXRteXdQTSA2ckdZek9BUEJTZlE1U3MwTmY0cEFtUnJTbUJQMWVoSXhRNkRweEYxYVhhU0g1WDBiRGNBUjFhT3hMUlB0UGRyWnJ3bmQ1NVN4M2d6IElNTzcyT3dCcTlrbW94MFJTa0hIUk54clJKV0ZEYlFYS3BSMXhONGVPZngwTnFuTWRGSHVsWS9ydy8xUkFFNWNyRXZ2ZmZHQ3ZYL0UgVlVvT0MzTW0yNGVhTzZUeU5aamVCNUUrc0RMTXQydENxWkVXOGxjZ1BTVTJ4MEloS2xBWW9UUDR4VVR1ZVVNdkh2Skszb3VROGZmSCBIUDYySnBHZWcvVlNZY2lxTkFEYkhReHZZNWV0ZHI2NXloTlhsRzJCNXhqemdXZkhKb1NlWjVPbGJ1YXErY3pReVlTdnhhbDcwMWRKIFNXb2lnUk5xWEl0ak9SaHNDK3g3NE5mRHRQUTZhR1BrZ0FVbEdST3BUS0JRUjRnYkIxeDZmanozL0RLOEdzb0hqL1NWRzZwSkFDaSsgTmhRZEFwc1FKRlBDZWxpWUtJbWdlRUpteWxjM1h6dzV5cDl4bklNWU1rWnQ5SGpWaEsvR2VIdHFaSTUrS1VWSlh0U1ZRY3djWURQbyBGSTkzamhXK0RXU2p6WnJHdHMwTlFTd09aVEZvTWFNQmFseTZDVEZaRzJLWFV0M1oxYVF6QzM2cktyRkowY2dVYjZhWlJudVJ3anRJIGxvN0VxM0NMV1N5YTRlSjdhK1ROMmV1ZHZDbGJrMTdJdEZlcG9RTHJweVF5eGtaVGpCWUlpd3FuWHdGLzFtWGVyUWl2dHUrSG9ocDcgdGY3Y1dKbkNUZ0JsZUNRM2JCRWFQaWFDVFJYa05xQkx1OTU1bzJrditOeklJb2dEa0dsQUVmdXdMNTFEWWg5ejNzZEsxeTFBTHlYMiBGeEpMSzNGajMzOU5Zbk8xNlA0ZkVsOEo5SFVTYXl0eFRIRlJZcXJobko2MEFaVTJsTnBETk9VTGFaSDFGcUJYSlM0TGhOOEVDZW9zIE1nYkxXVXgzQUsreHY0K1pLTjZBQ3h4bFp3MHhEemRaS2o3WjZFMUFMeVErOTFXTmNsd2dJVTZ3d1JsaTd4VGt6akE4QlFDU0J4ZkwgK01VaGxuR01ETVlsZnNQdVdzZFNGNEdaYTIyNmlvMU1XNG56UHZrUWJXZ0RuSWxHWUhTQ1RVK1FiT0k5Qk50VFRCN2h4bUVJaCtGVCBLREpHWm9pVnBrQTZLbU5SajkwRTBkdVBObWFOeEoyOVFWaDBSeFdzT01OUmgwSnlESWs3TEJLMWl3NjJCVjFjTEthWHBZMm4rSFdzIEdrWmlkT1pFeXNwM2ZESzRLM1R2SzkwRWlzR2Y2YkQvazZDVHFEcEJadDZFb1RXY1NYUVU1bWhYMUZ2Tm0vWFJpeVFpYXcwWEttRGkgRVhMOWtkVjZGTU11OWt2cHlVRG9CM1NJQjV1WXhwMitmU3I5UDdOYTdJT2lwc1VweFo1QnFJU05UdzFyRnk2YkdyS29JakFiUzl1dSBFS29UMk5vd3FpV0o3Y3FNMEtEOWxUOFgydCtsS3ozUzJsNFovZTR2OXB0WHpjRnluOVpkOG5sSEhjalhhTlpzYUN2S3FsVzZkV1AyIElicjdzZEUyZTY4SDlzeStUdk41SjZud3lkTFV2dHVXZm1vTHVnSDRaZzM0SnpiYkh3Ty93YXZHKzY4VmRKUFhpaHVDL3pjdlVKKzAgMFcydWZ3UVlBR0hLSzJDRk1JcnpBQUFBQUVsRlRrU3VRbUNDIi8+PHJhZGlhbEdyYWRpZW50IGN4PSI3LjM5NCIgY3k9IjUuNDM3IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgaWQ9ImMiIHI9IjIzLjQxNiI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjRUVFIi8+PHN0b3Agb2Zmc2V0PSIuNDMyIiBzdG9wLWNvbG9yPSIjRTZFNkU2Ii8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjRTFFMUUxIi8+PC9yYWRpYWxHcmFkaWVudD48cGF0aCBkPSJNMTMgMjNoOC41Yy44MiAwIDEuNS0uNjggMS41LTEuNXYtMTVjMC0uODMtLjY4LTEuNS0xLjUtMS41SDdsNiAxOHoiIGZpbGw9InVybCgjYykiLz48L2c+PHBhdGggY2xpcC1wYXRoPSJ1cmwoI2IpIiBkPSJNMTggMTF2LTFoLTF2MWgtMy43NXYxaDUuMzJjLS4yLjQ5LS42IDEuMy0xLjMyIDIuMTQtLjUxLS42LS44Ni0xLjE4LTEuMS0xLjY0aC0xLjExYy4zNi44NC45IDEuNjYgMS41MiAyLjM4bC0yLjYgMi41OC43MS43MSAyLjU4LTIuNTggMi41OCAyLjU4LjcxLS43MS0yLjYtMi41OGMuNzQtLjg2IDEuMzMtMS44NSAxLjY4LTIuODhIMjF2LTFoLTN6IiBmaWxsPSIjNjA3RDhCIi8+PGxpbmVhckdyYWRpZW50IGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBpZD0iZCIgeDE9IjEyLjMzMyIgeDI9IjIzIiB5MT0iMTQiIHkyPSIxNCI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjMjEyMTIxIiBzdG9wLW9wYWNpdHk9Ii4xIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMjEyMTIxIiBzdG9wLW9wYWNpdHk9Ii4wMiIvPjwvbGluZWFyR3JhZGllbnQ+PHBhdGggY2xpcC1wYXRoPSJ1cmwoI2IpIiBkPSJNMTIuMzMgNUwyMyAxNS42N1YyM0gxMyIgZmlsbD0idXJsKCNkKSIvPjxnIGNsaXAtcGF0aD0idXJsKCNiKSI+PGltYWdlIGhlaWdodD0iOCIgb3BhY2l0eT0iLjEiIG92ZXJmbG93PSJ2aXNpYmxlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMC41IDE3LjUpIiB3aWR0aD0iOSIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFBb0FBQUFKQ0FZQUFBQUxwcjBUQUFBQUNYQklXWE1BQUFzU0FBQUxFZ0hTM1g3OEFBQUEgR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU9GSlJFRlVlTnAwVUQxTEEwRVVuTGU3SnNKaCBDaUZwTFZOWWFTMzQxMUw3Wi9JblVwZ21xUklSTEd4RU9FVlFzb1JjYm5lY3U2QUdUQjRNNzJ2ZXZqZHIrRFBEZitOdnMzODU4cTdhIEZwNG9ET1pCSjVkSk1DVkR6SjJUK0xZWXBlQXlUajM5VU1OWGhBMDBIQUJYS3k4OWJZNlVscXJGb01IbTVRSzBhL21iWFl4U3l5Wm0gZUNCVGU1S3I2OCtOR3ErS3Y0UXpvU004cTNaUDhpbWpYamRFdi82WXNuZCtxNmE3VU40WEZzS1lsaWZiVUpYdmozZnR5dEFxTTF2SiB6NlVnR3ZnaUliTjkwZzhSVmRkRktaL3B6cVgrWTVORHRkb25IVEk3MXZnV1lBRHpXbWR4LzRmcG1RQUFBQUJKUlU1RXJrSmdnZz09Ii8+PHBhdGggZD0iTTE3IDE5bC00IDQtMS4zMy00IiBmaWxsPSIjM0Y1MUI1Ii8+PC9nPjxwYXRoIGNsaXAtcGF0aD0idXJsKCNiKSIgZD0iTTIxLjUgNUg3bC4wNC4xMkgyMS41Yy44MiAwIDEuNS42NyAxLjUgMS41VjYuNWMwLS44My0uNjgtMS41LTEuNS0xLjV6IiBmaWxsPSIjMjEyMTIxIiBmaWxsLW9wYWNpdHk9Ii4wMiIvPjxwYXRoIGNsaXAtcGF0aD0idXJsKCNiKSIgZD0iTTIxLjUgMjIuODhIMTNMMTEuNzEgMTloLS4wNEwxMyAyM2g4LjVjLjgyIDAgMS41LS42OCAxLjUtMS41di0uMTJjMCAuODItLjY4IDEuNS0xLjUgMS41eiIgZmlsbD0iIzIxMjEyMSIgZmlsbC1vcGFjaXR5PSIuMSIvPjxwYXRoIGNsaXAtcGF0aD0idXJsKCNiKSIgZD0iTTEyLjk3IDIyLjkxTDEzIDIzbDQtNGgtLjEyIiBmaWxsPSIjMUEyMzdFIiBmaWxsLW9wYWNpdHk9Ii4yIi8+PHBhdGggY2xpcC1wYXRoPSJ1cmwoI2IpIiBkPSJNMTEuNjcgMTkuMTJoNS4yMUwxNyAxOWgtNS4zMyIgZmlsbD0iIzFBMjM3RSIgZmlsbC1vcGFjaXR5PSIuMSIvPjxnIGNsaXAtcGF0aD0idXJsKCNiKSI+PGltYWdlIGhlaWdodD0iMjIiIG9wYWNpdHk9Ii4yIiBvdmVyZmxvdz0idmlzaWJsZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLS41IC0uNSkiIHdpZHRoPSIyMCIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCVUFBQUFYQ0FZQUFBRGszd1NkQUFBQUNYQklXWE1BQUFzU0FBQUxFZ0hTM1g3OEFBQUEgR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQVVwSlJFRlVlTnFzbGJGT3d6QVFRTy9zUUNSYyBzcUFPbFJnck1qQ1ZyK0VyK0laK0F4L1dUQ3dWZXlWUWw5SU9RWTJQYzJxaE5Gd2NHc2RTckhOc1A1MmZwVFBDZVVQNFg2UFFaQTJaIFBpNDFscVhScENZS3RBNXRzRkJWRmRvOXBlbmg4MjFaU1dzUzExMlgxaEJkUFhHNDRCU3lRTWFFb0hjSjZRSkx1K0x4cmd1S1FEUUIgVUF1T24zbmZMQVRscWMwcHNtdnV2eVFWaWJmQVJ5YVhvUVBlaDZIazlNdzR1TDJidjN4czMxK1A3VVdxNVJkN0xzdk44YWtnNXpCUCBLVFBTSWdXWE4zT0NRbzZBUmtwaUNOUWQzNm1hZWdWNkRHZ2pXMWxCSkZSV01CUWFWREFVR2xRd0F2U3ZnaGhvcDRJWWFLZUNrYURuIENtS2hvb0pZcUtoQXRhbzU5VlYxb2Qzdzk5QlU0RXNmY1FWWHJ1QnVQQk12Z0pJdjFzZG1QU1ZBM0hPaEx2eS9iQ0MwcURrOHJqUDkgVHRXQjM2Z1Z2MUhydmplcTc5MlNqb2tSRi9aN0Z6OENEQUM4RW1XREtWR0RMZ0FBQUFCSlJVNUVya0pnZ2c9PSIvPjxwYXRoIGQ9Ik0xMSAxSDIuNUMxLjY4IDEgMSAxLjY4IDEgMi41djE1YzAgLjgzLjY4IDEuNSAxLjUgMS41SDE3TDExIDF6IiBmaWxsPSIjNDI4NUY0Ii8+PC9nPjxwYXRoIGNsaXAtcGF0aD0idXJsKCNiKSIgZD0iTTIuNSAxQzEuNjggMSAxIDEuNjggMSAyLjV2LjEyYzAtLjgyLjY4LTEuNSAxLjUtMS41SDExVjFIMi41eiIgZmlsbD0iI0ZGRiIgZmlsbC1vcGFjaXR5PSIuMDIiLz48cGF0aCBjbGlwLXBhdGg9InVybCgjYikiIGQ9Ik0xMSAxdi4xMmw1LjkyIDE3Ljc1SDIuNWMtLjgyIDAtMS41LS42Ny0xLjUtMS41di4xMmMwIC44NC42OCAxLjUxIDEuNSAxLjUxSDE3TDExIDF6IiBmaWxsPSIjMjEyMTIxIiBmaWxsLW9wYWNpdHk9Ii4xIi8+PGcgY2xpcC1wYXRoPSJ1cmwoI2IpIj48cGF0aCBkPSJNNy41IDEwdjEuMmgxLjk4Yy0uMDguNTItLjYgMS41MS0xLjk4IDEuNTEtMS4yIDAtMi4xNy0uOTktMi4xNy0yLjIxUzYuMyA4LjI5IDcuNSA4LjI5Yy42OCAwIDEuMTMuMjkgMS4zOS41NGwuOTUtLjkyQzkuMjQgNy4zNSA4LjQ0IDcgNy41IDcgNS41NyA3IDQgOC41NyA0IDEwLjVTNS41NyAxNCA3LjUgMTRjMi4wMiAwIDMuMzYtMS40MiAzLjM2LTMuNDIgMC0uMjMtLjAyLS40MS0uMDYtLjU4SDcuNXoiIGZpbGw9IiNFRUUiLz48cGF0aCBkPSJNNCA3aDd2N0g0eiIgZmlsbD0ibm9uZSIvPjwvZz48cmFkaWFsR3JhZGllbnQgY3g9IjEuNDU3IiBjeT0iMS40MiIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGlkPSJlIiByPSIyOS43OTIiPjxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIuMSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIi8+PC9yYWRpYWxHcmFkaWVudD48cGF0aCBkPSJNMjEuNSA1aC05LjE3TDExIDFIMi41QzEuNjggMSAxIDEuNjggMSAyLjV2MTVjMCAuODMuNjggMS41IDEuNSAxLjVoOS4xN0wxMyAyM2g4LjVjLjgyIDAgMS41LS42OCAxLjUtMS41di0xNWMwLS44My0uNjgtMS41LTEuNS0xLjV6IiBmaWxsPSJ1cmwoI2UpIi8+PC9zdmc+"}},"time_used":16,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.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/4ekOcDG2D8E","date":"2026-07-27T13:20:34.099Z","timestamp":1785158434099,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /youtube/img/icons/mweb/youtube_fill/logo/v2/67px.svg HTTP/1.1\r\nHost: www.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.youtube.com/\r\nOrigin: https://www.youtube.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\ncontent-encoding: br\r\naccess-control-allow-origin: https://www.youtube.com\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"youtube\"\r\nreport-to: {\"group\":\"youtube\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/youtube\"}]}\r\ncontent-length: 272\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Mon, 27 Jul 2026 10:01:48 GMT\r\nexpires: Tue, 27 Jul 2027 10:01:48 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Wed, 06 Sep 2023 03:18:00 GMT\r\ncontent-type: image/svg+xml\r\nvary: Accept-Encoding, Origin\r\nage: 11926\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":478,"size_decoded":996,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"1e78ea4caa31c35bac97a41e5930ffe8","sha1":"dbf99131b9b5087e664b9fdc7097c97655474517","sha256":"6fa88a20839537ae66da730e5bd183035265176d972bc8df075b89da0c6186ea","sha512":"cf798ef67c90f90f23635beb202095a2c76052d491c224aa14535bb9b16f28fa9a850b8db887f158afd01d634aecb9e2b05a27efdfd225d3583e6297bdd78b43","ssdeep":"","tlshash":"2ef09e6d577829d8930f87c0be5974127d9f23e85194b3b541d4f9326138ee2d141cd9","first_seen":"2025-05-26T15:52:21.952281Z","last_seen":"2026-08-17T23:29:23.129608Z","times_seen":50007,"resource_available":false,"data":"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NyA2MCIgZmlsbD0iIj48cGF0aCBkPSJNNjMgMTQuODdhNy44ODUgNy44ODUgMCAwMC01LjU2LTUuNTZDNTIuNTQgOCAzMi44OCA4IDMyLjg4IDhTMTMuMjMgOCA4LjMyIDkuMzFjLTIuNy43Mi00LjgzIDIuODUtNS41NiA1LjU2QzEuNDUgMTkuNzcgMS40NSAzMCAxLjQ1IDMwczAgMTAuMjMgMS4zMSAxNS4xM2MuNzIgMi43IDIuODUgNC44MyA1LjU2IDUuNTZDMTMuMjMgNTIgMzIuODggNTIgMzIuODggNTJzMTkuNjYgMCAyNC41Ni0xLjMxYzIuNy0uNzIgNC44My0yLjg1IDUuNTYtNS41NkM2NC4zMSA0MC4yMyA2NC4zMSAzMCA2NC4zMSAzMHMwLTEwLjIzLTEuMzEtMTUuMTN6Ij48L3BhdGg+PHBhdGggZmlsbD0iI0ZGRiIgY2xhc3M9ImxvZ28tYXJyb3ciIGQ9Ik0yNi42IDM5LjQzTDQyLjkzIDMwIDI2LjYgMjAuNTd6Ij48L3BhdGg+PC9zdmc+Cg=="}},"time_used":17,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":17,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/generate_204?2KO6xw","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.youtube.com/embed/4ekOcDG2D8E","date":"2026-07-27T13:20:34.219Z","timestamp":1785158434219,"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?2KO6xw 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/4ekOcDG2D8E\r\nCookie: __Secure-YNID=20.YT=gH5UekW7d1yJXHdyAWP9D3nuufltIP5U3L-OJPITdfVo4QFdUpGIlO1MrkvQo6k6kl0jq_pOZAm0Y6StBGPZKrWCX-Ie8T1zxUJW6abmYuVU53Il1VEq4vUs5vvLfbgZGHz1eALkxngiX8bUsdRMr2vaKLTZJ0IBhq1y-2EM8N90iJ0cyWzGnhUGzNxuZzHw9HXFuIwKItlZKR3JI0AWby-eMB-aedGxFUVnqseGfA1HlqbnqC5EymsVz59X4lHMwh44OYJRjaiXEEhEetat2qsHLh8v23W9zHmKOEE2ZhT3CAsXUCZ0LdHpvohM6BZq6G030fjyK9N5mMzUa8e_Fw; YSC=n_kiEdK62Us; VISITOR_INFO1_LIVE=oxtQMHpPyNo; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgEg%3D%3D; __Secure-ROLLOUT_TOKEN=CKOus_iU9NnYzgEQ5fqIsvnylQMY5fqIsvnylQM%3D\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=6, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 204 \r\ncontent-length: 0\r\ncross-origin-resource-policy: cross-origin\r\ndate: Mon, 27 Jul 2026 13:20:34 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-08-17T23:37:29.17424Z","times_seen":17945477,"resource_available":true,"data":""}},"time_used":9,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":9,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://www.youtube.com/embed/4ekOcDG2D8E","date":"2026-07-27T13:20:33.161Z","timestamp":1785158433161,"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: 385406\r\nlast-modified: Thu, 29 May 2025 23:30:55 GMT\r\ncontent-type: font/woff2\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":40128,"size_decoded":40941,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 40128, version 1.0","md5":"9a01b69183a9604ab3a439e388b30501","sha1":"8ed1d59003d0dbe6360481017b44665153665fbe","sha256":"20b535fa80c8189e3b87d1803038389960203a886d502bc2ef1857affc2f38d2","sha512":"0e6795255b6eea00b5403fd7e3b904d52776d49ac63a31c2778361262883697943aedcb29feee85694ba6f19eaa34dddb9a5bfe7118f4a25b4757e92c331feca","ssdeep":"768:Vce3jkow68wmT4IBX0tXdlSirS61gSjcz0GPwHbP+w2jec56O:VcI/iEEEtXdFJj+0GPwHbP+w5rO","tlshash":"3703023a5e3ccf1a84157a703950f6d9a8481e548e9d143b4f1ac7bf085dde2209b6d4","first_seen":"2025-01-08T22:59:02.845106Z","last_seen":"2026-08-17T23:29:23.068589Z","times_seen":968097,"resource_available":false,"data":"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"}},"time_used":32,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":16,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js","fqdn":"ajax.googleapis.com","domain":"ajax.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.74","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.503Z","timestamp":1785158432503,"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 /ajax/libs/jquery/3.3.1/jquery.min.js HTTP/1.1\r\nHost: ajax.googleapis.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\naccept-ranges: bytes\r\ncontent-encoding: gzip\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/hosted-libraries-pushers\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"hosted-libraries-pushers\"\r\nreport-to: {\"group\":\"hosted-libraries-pushers\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/hosted-libraries-pushers\"}]}\r\ntiming-allow-origin: *\r\ncontent-length: 30399\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Tue, 21 Jul 2026 23:01:07 GMT\r\nexpires: Wed, 21 Jul 2027 23:01:07 GMT\r\ncache-control: public, max-age=31536000, stale-while-revalidate=2592000\r\nage: 483565\r\nlast-modified: Tue, 03 Mar 2020 19:15:00 GMT\r\ncontent-type: text/javascript; charset=UTF-8\r\nvary: Accept-Encoding\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":86927,"size_decoded":31383,"mime_type":"text/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (65451)","md5":"a09e13ee94d51c524b7e2a728c7d4039","sha1":"0dc32db4aa9c5f03f3b38c47d883dbd4fed13aae","sha256":"160a426ff2894252cd7cebbdd6d6b7da8fcd319c65b70468f10b6690c45d02ef","sha512":"f8da8f95b6ed33542a88af19028e18ae3d9ce25350a06bfc3fbf433ed2b38fefa5e639cddfdac703fc6caa7f3313d974b92a3168276b3a016ceb28f27db0714a","ssdeep":"1536:jLiBdiaWLOczCmZx6+VWuGzQNOzdn6x2RZd9SEnk9HB96c9Yo/NWLbVj3kC6t3:5kn6x2xe9NK6nC69","tlshash":"748319dd72c6b06247ab71ba00bf550bf2361999684d4410f129e4eabc74b4e823bf7d","first_seen":"2023-03-07T01:02:02Z","last_seen":"2026-08-17T21:53:39.944829Z","times_seen":143194,"resource_available":true,"data":"LyohIGpRdWVyeSB2My4zLjEgfCAoYykgSlMgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzIHwganF1ZXJ5Lm9yZy9saWNlbnNlICovCiFmdW5jdGlvbihlLHQpeyJ1c2Ugc3RyaWN0Ijsib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmIm9iamVjdCI9PXR5cGVvZiBtb2R1bGUuZXhwb3J0cz9tb2R1bGUuZXhwb3J0cz1lLmRvY3VtZW50P3QoZSwhMCk6ZnVuY3Rpb24oZSl7aWYoIWUuZG9jdW1lbnQpdGhyb3cgbmV3IEVycm9yKCJqUXVlcnkgcmVxdWlyZXMgYSB3aW5kb3cgd2l0aCBhIGRvY3VtZW50Iik7cmV0dXJuIHQoZSl9OnQoZSl9KCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzp0aGlzLGZ1bmN0aW9uKGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPVtdLHI9ZS5kb2N1bWVudCxpPU9iamVjdC5nZXRQcm90b3R5cGVPZixvPW4uc2xpY2UsYT1uLmNvbmNhdCxzPW4ucHVzaCx1PW4uaW5kZXhPZixsPXt9LGM9bC50b1N0cmluZyxmPWwuaGFzT3duUHJvcGVydHkscD1mLnRvU3RyaW5nLGQ9cC5jYWxsKE9iamVjdCksaD17fSxnPWZ1bmN0aW9uIGUodCl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHQmJiJudW1iZXIiIT10eXBlb2YgdC5ub2RlVHlwZX0seT1mdW5jdGlvbiBlKHQpe3JldHVybiBudWxsIT10JiZ0PT09dC53aW5kb3d9LHY9e3R5cGU6ITAsc3JjOiEwLG5vTW9kdWxlOiEwfTtmdW5jdGlvbiBtKGUsdCxuKXt2YXIgaSxvPSh0PXR8fHIpLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO2lmKG8udGV4dD1lLG4pZm9yKGkgaW4gdiluW2ldJiYob1tpXT1uW2ldKTt0LmhlYWQuYXBwZW5kQ2hpbGQobykucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChvKX1mdW5jdGlvbiB4KGUpe3JldHVybiBudWxsPT1lP2UrIiI6Im9iamVjdCI9PXR5cGVvZiBlfHwiZnVuY3Rpb24iPT10eXBlb2YgZT9sW2MuY2FsbChlKV18fCJvYmplY3QiOnR5cGVvZiBlfXZhciBiPSIzLjMuMSIsdz1mdW5jdGlvbihlLHQpe3JldHVybiBuZXcgdy5mbi5pbml0KGUsdCl9LFQ9L15bXHNcdUZFRkZceEEwXSt8W1xzXHVGRUZGXHhBMF0rJC9nO3cuZm49dy5wcm90b3R5cGU9e2pxdWVyeToiMy4zLjEiLGNvbnN0cnVjdG9yOncsbGVuZ3RoOjAsdG9BcnJheTpmdW5jdGlvbigpe3JldHVybiBvLmNhbGwodGhpcyl9LGdldDpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZT9vLmNhbGwodGhpcyk6ZTwwP3RoaXNbZSt0aGlzLmxlbmd0aF06dGhpc1tlXX0scHVzaFN0YWNrOmZ1bmN0aW9uKGUpe3ZhciB0PXcubWVyZ2UodGhpcy5jb25zdHJ1Y3RvcigpLGUpO3JldHVybiB0LnByZXZPYmplY3Q9dGhpcyx0fSxlYWNoOmZ1bmN0aW9uKGUpe3JldHVybiB3LmVhY2godGhpcyxlKX0sbWFwOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnB1c2hTdGFjayh3Lm1hcCh0aGlzLGZ1bmN0aW9uKHQsbil7cmV0dXJuIGUuY2FsbCh0LG4sdCl9KSl9LHNsaWNlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKG8uYXBwbHkodGhpcyxhcmd1bWVudHMpKX0sZmlyc3Q6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcSgwKX0sbGFzdDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVxKC0xKX0sZXE6ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5sZW5ndGgsbj0rZSsoZTwwP3Q6MCk7cmV0dXJuIHRoaXMucHVzaFN0YWNrKG4+PTAmJm48dD9bdGhpc1tuXV06W10pfSxlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wcmV2T2JqZWN0fHx0aGlzLmNvbnN0cnVjdG9yKCl9LHB1c2g6cyxzb3J0Om4uc29ydCxzcGxpY2U6bi5zcGxpY2V9LHcuZXh0ZW5kPXcuZm4uZXh0ZW5kPWZ1bmN0aW9uKCl7dmFyIGUsdCxuLHIsaSxvLGE9YXJndW1lbnRzWzBdfHx7fSxzPTEsdT1hcmd1bWVudHMubGVuZ3RoLGw9ITE7Zm9yKCJib29sZWFuIj09dHlwZW9mIGEmJihsPWEsYT1hcmd1bWVudHNbc118fHt9LHMrKyksIm9iamVjdCI9PXR5cGVvZiBhfHxnKGEpfHwoYT17fSkscz09PXUmJihhPXRoaXMscy0tKTtzPHU7cysrKWlmKG51bGwhPShlPWFyZ3VtZW50c1tzXSkpZm9yKHQgaW4gZSluPWFbdF0sYSE9PShyPWVbdF0pJiYobCYmciYmKHcuaXNQbGFpbk9iamVjdChyKXx8KGk9QXJyYXkuaXNBcnJheShyKSkpPyhpPyhpPSExLG89biYmQXJyYXkuaXNBcnJheShuKT9uOltdKTpvPW4mJncuaXNQbGFpbk9iamVjdChuKT9uOnt9LGFbdF09dy5leHRlbmQobCxvLHIpKTp2b2lkIDAhPT1yJiYoYVt0XT1yKSk7cmV0dXJuIGF9LHcuZXh0ZW5kKHtleHBhbmRvOiJqUXVlcnkiKygiMy4zLjEiK01hdGgucmFuZG9tKCkpLnJlcGxhY2UoL1xEL2csIiIpLGlzUmVhZHk6ITAsZXJyb3I6ZnVuY3Rpb24oZSl7dGhyb3cgbmV3IEVycm9yKGUpfSxub29wOmZ1bmN0aW9uKCl7fSxpc1BsYWluT2JqZWN0OmZ1bmN0aW9uKGUpe3ZhciB0LG47cmV0dXJuISghZXx8IltvYmplY3QgT2JqZWN0XSIhPT1jLmNhbGwoZSkpJiYoISh0PWkoZSkpfHwiZnVuY3Rpb24iPT10eXBlb2Yobj1mLmNhbGwodCwiY29uc3RydWN0b3IiKSYmdC5jb25zdHJ1Y3RvcikmJnAuY2FsbChuKT09PWQpfSxpc0VtcHR5T2JqZWN0OmZ1bmN0aW9uKGUpe3ZhciB0O2Zvcih0IGluIGUpcmV0dXJuITE7cmV0dXJuITB9LGdsb2JhbEV2YWw6ZnVuY3Rpb24oZSl7bShlKX0sZWFjaDpmdW5jdGlvbihlLHQpe3ZhciBuLHI9MDtpZihDKGUpKXtmb3Iobj1lLmxlbmd0aDtyPG47cisrKWlmKCExPT09dC5jYWxsKGVbcl0scixlW3JdKSlicmVha31lbHNlIGZvcihyIGluIGUpaWYoITE9PT10LmNhbGwoZVtyXSxyLGVbcl0pKWJyZWFrO3JldHVybiBlfSx0cmltOmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOihlKyIiKS5yZXBsYWNlKFQsIiIpfSxtYWtlQXJyYXk6ZnVuY3Rpb24oZSx0KXt2YXIgbj10fHxbXTtyZXR1cm4gbnVsbCE9ZSYmKEMoT2JqZWN0KGUpKT93Lm1lcmdlKG4sInN0cmluZyI9PXR5cGVvZiBlP1tlXTplKTpzLmNhbGwobixlKSksbn0saW5BcnJheTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIG51bGw9PXQ/LTE6dS5jYWxsKHQsZSxuKX0sbWVyZ2U6ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49K3QubGVuZ3RoLHI9MCxpPWUubGVuZ3RoO3I8bjtyKyspZVtpKytdPXRbcl07cmV0dXJuIGUubGVuZ3RoPWksZX0sZ3JlcDpmdW5jdGlvbihlLHQsbil7Zm9yKHZhciByLGk9W10sbz0wLGE9ZS5sZW5ndGgscz0hbjtvPGE7bysrKShyPSF0KGVbb10sbykpIT09cyYmaS5wdXNoKGVbb10pO3JldHVybiBpfSxtYXA6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbz0wLHM9W107aWYoQyhlKSlmb3Iocj1lLmxlbmd0aDtvPHI7bysrKW51bGwhPShpPXQoZVtvXSxvLG4pKSYmcy5wdXNoKGkpO2Vsc2UgZm9yKG8gaW4gZSludWxsIT0oaT10KGVbb10sbyxuKSkmJnMucHVzaChpKTtyZXR1cm4gYS5hcHBseShbXSxzKX0sZ3VpZDoxLHN1cHBvcnQ6aH0pLCJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJih3LmZuW1N5bWJvbC5pdGVyYXRvcl09bltTeW1ib2wuaXRlcmF0b3JdKSx3LmVhY2goIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJlZ0V4cCBPYmplY3QgRXJyb3IgU3ltYm9sIi5zcGxpdCgiICIpLGZ1bmN0aW9uKGUsdCl7bFsiW29iamVjdCAiK3QrIl0iXT10LnRvTG93ZXJDYXNlKCl9KTtmdW5jdGlvbiBDKGUpe3ZhciB0PSEhZSYmImxlbmd0aCJpbiBlJiZlLmxlbmd0aCxuPXgoZSk7cmV0dXJuIWcoZSkmJiF5KGUpJiYoImFycmF5Ij09PW58fDA9PT10fHwibnVtYmVyIj09dHlwZW9mIHQmJnQ+MCYmdC0xIGluIGUpfXZhciBFPWZ1bmN0aW9uKGUpe3ZhciB0LG4scixpLG8sYSxzLHUsbCxjLGYscCxkLGgsZyx5LHYsbSx4LGI9InNpenpsZSIrMSpuZXcgRGF0ZSx3PWUuZG9jdW1lbnQsVD0wLEM9MCxFPWFlKCksaz1hZSgpLFM9YWUoKSxEPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9PT10JiYoZj0hMCksMH0sTj17fS5oYXNPd25Qcm9wZXJ0eSxBPVtdLGo9QS5wb3AscT1BLnB1c2gsTD1BLnB1c2gsSD1BLnNsaWNlLE89ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49MCxyPWUubGVuZ3RoO248cjtuKyspaWYoZVtuXT09PXQpcmV0dXJuIG47cmV0dXJuLTF9LFA9ImNoZWNrZWR8c2VsZWN0ZWR8YXN5bmN8YXV0b2ZvY3VzfGF1dG9wbGF5fGNvbnRyb2xzfGRlZmVyfGRpc2FibGVkfGhpZGRlbnxpc21hcHxsb29wfG11bHRpcGxlfG9wZW58cmVhZG9ubHl8cmVxdWlyZWR8c2NvcGVkIixNPSJbXFx4MjBcXHRcXHJcXG5cXGZdIixSPSIoPzpcXFxcLnxbXFx3LV18W15cMC1cXHhhMF0pKyIsST0iXFxbIitNKyIqKCIrUisiKSg/OiIrTSsiKihbKl4kfCF+XT89KSIrTSsiKig/OicoKD86XFxcXC58W15cXFxcJ10pKiknfFwiKCg/OlxcXFwufFteXFxcXFwiXSkqKVwifCgiK1IrIikpfCkiK00rIipcXF0iLFc9IjooIitSKyIpKD86XFwoKCgnKCg/OlxcXFwufFteXFxcXCddKSopJ3xcIigoPzpcXFxcLnxbXlxcXFxcIl0pKilcIil8KCg/OlxcXFwufFteXFxcXCgpW1xcXV18IitJKyIpKil8LiopXFwpfCkiLCQ9bmV3IFJlZ0V4cChNKyIrIiwiZyIpLEI9bmV3IFJlZ0V4cCgiXiIrTSsiK3woKD86XnxbXlxcXFxdKSg/OlxcXFwuKSopIitNKyIrJCIsImciKSxGPW5ldyBSZWdFeHAoIl4iK00rIiosIitNKyIqIiksXz1uZXcgUmVnRXhwKCJeIitNKyIqKFs+K35dfCIrTSsiKSIrTSsiKiIpLHo9bmV3IFJlZ0V4cCgiPSIrTSsiKihbXlxcXSdcIl0qPykiK00rIipcXF0iLCJnIiksWD1uZXcgUmVnRXhwKFcpLFU9bmV3IFJlZ0V4cCgiXiIrUisiJCIpLFY9e0lEOm5ldyBSZWdFeHAoIl4jKCIrUisiKSIpLENMQVNTOm5ldyBSZWdFeHAoIl5cXC4oIitSKyIpIiksVEFHOm5ldyBSZWdFeHAoIl4oIitSKyJ8WypdKSIpLEFUVFI6bmV3IFJlZ0V4cCgiXiIrSSksUFNFVURPOm5ldyBSZWdFeHAoIl4iK1cpLENISUxEOm5ldyBSZWdFeHAoIl46KG9ubHl8Zmlyc3R8bGFzdHxudGh8bnRoLWxhc3QpLShjaGlsZHxvZi10eXBlKSg/OlxcKCIrTSsiKihldmVufG9kZHwoKFsrLV18KShcXGQqKW58KSIrTSsiKig/OihbKy1dfCkiK00rIiooXFxkKyl8KSkiK00rIipcXCl8KSIsImkiKSxib29sOm5ldyBSZWdFeHAoIl4oPzoiK1ArIikkIiwiaSIpLG5lZWRzQ29udGV4dDpuZXcgUmVnRXhwKCJeIitNKyIqWz4rfl18OihldmVufG9kZHxlcXxndHxsdHxudGh8Zmlyc3R8bGFzdCkoPzpcXCgiK00rIiooKD86LVxcZCk/XFxkKikiK00rIipcXCl8KSg/PVteLV18JCkiLCJpIil9LEc9L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uKSQvaSxZPS9eaFxkJC9pLFE9L15bXntdK1x7XHMqXFtuYXRpdmUgXHcvLEo9L14oPzojKFtcdy1dKyl8KFx3Kyl8XC4oW1x3LV0rKSkkLyxLPS9bK35dLyxaPW5ldyBSZWdFeHAoIlxcXFwoW1xcZGEtZl17MSw2fSIrTSsiP3woIitNKyIpfC4pIiwiaWciKSxlZT1mdW5jdGlvbihlLHQsbil7dmFyIHI9IjB4Iit0LTY1NTM2O3JldHVybiByIT09cnx8bj90OnI8MD9TdHJpbmcuZnJvbUNoYXJDb2RlKHIrNjU1MzYpOlN0cmluZy5mcm9tQ2hhckNvZGUocj4+MTB8NTUyOTYsMTAyMyZyfDU2MzIwKX0sdGU9LyhbXDAtXHgxZlx4N2ZdfF4tP1xkKXxeLSR8W15cMC1ceDFmXHg3Zi1cdUZGRkZcdy1dL2csbmU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdD8iXDAiPT09ZT8iXHVmZmZkIjplLnNsaWNlKDAsLTEpKyJcXCIrZS5jaGFyQ29kZUF0KGUubGVuZ3RoLTEpLnRvU3RyaW5nKDE2KSsiICI6IlxcIitlfSxyZT1mdW5jdGlvbigpe3AoKX0saWU9bWUoZnVuY3Rpb24oZSl7cmV0dXJuITA9PT1lLmRpc2FibGVkJiYoImZvcm0iaW4gZXx8ImxhYmVsImluIGUpfSx7ZGlyOiJwYXJlbnROb2RlIixuZXh0OiJsZWdlbmQifSk7dHJ5e0wuYXBwbHkoQT1ILmNhbGwody5jaGlsZE5vZGVzKSx3LmNoaWxkTm9kZXMpLEFbdy5jaGlsZE5vZGVzLmxlbmd0aF0ubm9kZVR5cGV9Y2F0Y2goZSl7TD17YXBwbHk6QS5sZW5ndGg/ZnVuY3Rpb24oZSx0KXtxLmFwcGx5KGUsSC5jYWxsKHQpKX06ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLmxlbmd0aCxyPTA7d2hpbGUoZVtuKytdPXRbcisrXSk7ZS5sZW5ndGg9bi0xfX19ZnVuY3Rpb24gb2UoZSx0LHIsaSl7dmFyIG8scyxsLGMsZixoLHYsbT10JiZ0Lm93bmVyRG9jdW1lbnQsVD10P3Qubm9kZVR5cGU6OTtpZihyPXJ8fFtdLCJzdHJpbmciIT10eXBlb2YgZXx8IWV8fDEhPT1UJiY5IT09VCYmMTEhPT1UKXJldHVybiByO2lmKCFpJiYoKHQ/dC5vd25lckRvY3VtZW50fHx0OncpIT09ZCYmcCh0KSx0PXR8fGQsZykpe2lmKDExIT09VCYmKGY9Si5leGVjKGUpKSlpZihvPWZbMV0pe2lmKDk9PT1UKXtpZighKGw9dC5nZXRFbGVtZW50QnlJZChvKSkpcmV0dXJuIHI7aWYobC5pZD09PW8pcmV0dXJuIHIucHVzaChsKSxyfWVsc2UgaWYobSYmKGw9bS5nZXRFbGVtZW50QnlJZChvKSkmJngodCxsKSYmbC5pZD09PW8pcmV0dXJuIHIucHVzaChsKSxyfWVsc2V7aWYoZlsyXSlyZXR1cm4gTC5hcHBseShyLHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoZSkpLHI7aWYoKG89ZlszXSkmJm4uZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmdC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKXJldHVybiBMLmFwcGx5KHIsdC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKG8pKSxyfWlmKG4ucXNhJiYhU1tlKyIgIl0mJigheXx8IXkudGVzdChlKSkpe2lmKDEhPT1UKW09dCx2PWU7ZWxzZSBpZigib2JqZWN0IiE9PXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSl7KGM9dC5nZXRBdHRyaWJ1dGUoImlkIikpP2M9Yy5yZXBsYWNlKHRlLG5lKTp0LnNldEF0dHJpYnV0ZSgiaWQiLGM9Yikscz0oaD1hKGUpKS5sZW5ndGg7d2hpbGUocy0tKWhbc109IiMiK2MrIiAiK3ZlKGhbc10pO3Y9aC5qb2luKCIsIiksbT1LLnRlc3QoZSkmJmdlKHQucGFyZW50Tm9kZSl8fHR9aWYodil0cnl7cmV0dXJuIEwuYXBwbHkocixtLnF1ZXJ5U2VsZWN0b3JBbGwodikpLHJ9Y2F0Y2goZSl7fWZpbmFsbHl7Yz09PWImJnQucmVtb3ZlQXR0cmlidXRlKCJpZCIpfX19cmV0dXJuIHUoZS5yZXBsYWNlKEIsIiQxIiksdCxyLGkpfWZ1bmN0aW9uIGFlKCl7dmFyIGU9W107ZnVuY3Rpb24gdChuLGkpe3JldHVybiBlLnB1c2gobisiICIpPnIuY2FjaGVMZW5ndGgmJmRlbGV0ZSB0W2Uuc2hpZnQoKV0sdFtuKyIgIl09aX1yZXR1cm4gdH1mdW5jdGlvbiBzZShlKXtyZXR1cm4gZVtiXT0hMCxlfWZ1bmN0aW9uIHVlKGUpe3ZhciB0PWQuY3JlYXRlRWxlbWVudCgiZmllbGRzZXQiKTt0cnl7cmV0dXJuISFlKHQpfWNhdGNoKGUpe3JldHVybiExfWZpbmFsbHl7dC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCksdD1udWxsfX1mdW5jdGlvbiBsZShlLHQpe3ZhciBuPWUuc3BsaXQoInwiKSxpPW4ubGVuZ3RoO3doaWxlKGktLSlyLmF0dHJIYW5kbGVbbltpXV09dH1mdW5jdGlvbiBjZShlLHQpe3ZhciBuPXQmJmUscj1uJiYxPT09ZS5ub2RlVHlwZSYmMT09PXQubm9kZVR5cGUmJmUuc291cmNlSW5kZXgtdC5zb3VyY2VJbmRleDtpZihyKXJldHVybiByO2lmKG4pd2hpbGUobj1uLm5leHRTaWJsaW5nKWlmKG49PT10KXJldHVybi0xO3JldHVybiBlPzE6LTF9ZnVuY3Rpb24gZmUoZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe3JldHVybiJpbnB1dCI9PT10Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkmJnQudHlwZT09PWV9fWZ1bmN0aW9uIHBlKGUpe3JldHVybiBmdW5jdGlvbih0KXt2YXIgbj10Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuKCJpbnB1dCI9PT1ufHwiYnV0dG9uIj09PW4pJiZ0LnR5cGU9PT1lfX1mdW5jdGlvbiBkZShlKXtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuImZvcm0iaW4gdD90LnBhcmVudE5vZGUmJiExPT09dC5kaXNhYmxlZD8ibGFiZWwiaW4gdD8ibGFiZWwiaW4gdC5wYXJlbnROb2RlP3QucGFyZW50Tm9kZS5kaXNhYmxlZD09PWU6dC5kaXNhYmxlZD09PWU6dC5pc0Rpc2FibGVkPT09ZXx8dC5pc0Rpc2FibGVkIT09IWUmJmllKHQpPT09ZTp0LmRpc2FibGVkPT09ZToibGFiZWwiaW4gdCYmdC5kaXNhYmxlZD09PWV9fWZ1bmN0aW9uIGhlKGUpe3JldHVybiBzZShmdW5jdGlvbih0KXtyZXR1cm4gdD0rdCxzZShmdW5jdGlvbihuLHIpe3ZhciBpLG89ZShbXSxuLmxlbmd0aCx0KSxhPW8ubGVuZ3RoO3doaWxlKGEtLSluW2k9b1thXV0mJihuW2ldPSEocltpXT1uW2ldKSl9KX0pfWZ1bmN0aW9uIGdlKGUpe3JldHVybiBlJiYidW5kZWZpbmVkIiE9dHlwZW9mIGUuZ2V0RWxlbWVudHNCeVRhZ05hbWUmJmV9bj1vZS5zdXBwb3J0PXt9LG89b2UuaXNYTUw9ZnVuY3Rpb24oZSl7dmFyIHQ9ZSYmKGUub3duZXJEb2N1bWVudHx8ZSkuZG9jdW1lbnRFbGVtZW50O3JldHVybiEhdCYmIkhUTUwiIT09dC5ub2RlTmFtZX0scD1vZS5zZXREb2N1bWVudD1mdW5jdGlvbihlKXt2YXIgdCxpLGE9ZT9lLm93bmVyRG9jdW1lbnR8fGU6dztyZXR1cm4gYSE9PWQmJjk9PT1hLm5vZGVUeXBlJiZhLmRvY3VtZW50RWxlbWVudD8oZD1hLGg9ZC5kb2N1bWVudEVsZW1lbnQsZz0hbyhkKSx3IT09ZCYmKGk9ZC5kZWZhdWx0VmlldykmJmkudG9wIT09aSYmKGkuYWRkRXZlbnRMaXN0ZW5lcj9pLmFkZEV2ZW50TGlzdGVuZXIoInVubG9hZCIscmUsITEpOmkuYXR0YWNoRXZlbnQmJmkuYXR0YWNoRXZlbnQoIm9udW5sb2FkIixyZSkpLG4uYXR0cmlidXRlcz11ZShmdW5jdGlvbihlKXtyZXR1cm4gZS5jbGFzc05hbWU9ImkiLCFlLmdldEF0dHJpYnV0ZSgiY2xhc3NOYW1lIil9KSxuLmdldEVsZW1lbnRzQnlUYWdOYW1lPXVlKGZ1bmN0aW9uKGUpe3JldHVybiBlLmFwcGVuZENoaWxkKGQuY3JlYXRlQ29tbWVudCgiIikpLCFlLmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIikubGVuZ3RofSksbi5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lPVEudGVzdChkLmdldEVsZW1lbnRzQnlDbGFzc05hbWUpLG4uZ2V0QnlJZD11ZShmdW5jdGlvbihlKXtyZXR1cm4gaC5hcHBlbmRDaGlsZChlKS5pZD1iLCFkLmdldEVsZW1lbnRzQnlOYW1lfHwhZC5nZXRFbGVtZW50c0J5TmFtZShiKS5sZW5ndGh9KSxuLmdldEJ5SWQ/KHIuZmlsdGVyLklEPWZ1bmN0aW9uKGUpe3ZhciB0PWUucmVwbGFjZShaLGVlKTtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJpZCIpPT09dH19LHIuZmluZC5JRD1mdW5jdGlvbihlLHQpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgdC5nZXRFbGVtZW50QnlJZCYmZyl7dmFyIG49dC5nZXRFbGVtZW50QnlJZChlKTtyZXR1cm4gbj9bbl06W119fSk6KHIuZmlsdGVyLklEPWZ1bmN0aW9uKGUpe3ZhciB0PWUucmVwbGFjZShaLGVlKTtyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIG49InVuZGVmaW5lZCIhPXR5cGVvZiBlLmdldEF0dHJpYnV0ZU5vZGUmJmUuZ2V0QXR0cmlidXRlTm9kZSgiaWQiKTtyZXR1cm4gbiYmbi52YWx1ZT09PXR9fSxyLmZpbmQuSUQ9ZnVuY3Rpb24oZSx0KXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHQuZ2V0RWxlbWVudEJ5SWQmJmcpe3ZhciBuLHIsaSxvPXQuZ2V0RWxlbWVudEJ5SWQoZSk7aWYobyl7aWYoKG49by5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpKSYmbi52YWx1ZT09PWUpcmV0dXJuW29dO2k9dC5nZXRFbGVtZW50c0J5TmFtZShlKSxyPTA7d2hpbGUobz1pW3IrK10paWYoKG49by5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpKSYmbi52YWx1ZT09PWUpcmV0dXJuW29dfXJldHVybltdfX0pLHIuZmluZC5UQUc9bi5nZXRFbGVtZW50c0J5VGFnTmFtZT9mdW5jdGlvbihlLHQpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgdC5nZXRFbGVtZW50c0J5VGFnTmFtZT90LmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpOm4ucXNhP3QucXVlcnlTZWxlY3RvckFsbChlKTp2b2lkIDB9OmZ1bmN0aW9uKGUsdCl7dmFyIG4scj1bXSxpPTAsbz10LmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpO2lmKCIqIj09PWUpe3doaWxlKG49b1tpKytdKTE9PT1uLm5vZGVUeXBlJiZyLnB1c2gobik7cmV0dXJuIHJ9cmV0dXJuIG99LHIuZmluZC5DTEFTUz1uLmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJmZ1bmN0aW9uKGUsdCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJmcpcmV0dXJuIHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShlKX0sdj1bXSx5PVtdLChuLnFzYT1RLnRlc3QoZC5xdWVyeVNlbGVjdG9yQWxsKSkmJih1ZShmdW5jdGlvbihlKXtoLmFwcGVuZENoaWxkKGUpLmlubmVySFRNTD0iPGEgaWQ9JyIrYisiJz48L2E+PHNlbGVjdCBpZD0nIitiKyItXHJcXCcgbXNhbGxvd2NhcHR1cmU9Jyc+PG9wdGlvbiBzZWxlY3RlZD0nJz48L29wdGlvbj48L3NlbGVjdD4iLGUucXVlcnlTZWxlY3RvckFsbCgiW21zYWxsb3djYXB0dXJlXj0nJ10iKS5sZW5ndGgmJnkucHVzaCgiWypeJF09IitNKyIqKD86Jyd8XCJcIikiKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIltzZWxlY3RlZF0iKS5sZW5ndGh8fHkucHVzaCgiXFxbIitNKyIqKD86dmFsdWV8IitQKyIpIiksZS5xdWVyeVNlbGVjdG9yQWxsKCJbaWR+PSIrYisiLV0iKS5sZW5ndGh8fHkucHVzaCgifj0iKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIjpjaGVja2VkIikubGVuZ3RofHx5LnB1c2goIjpjaGVja2VkIiksZS5xdWVyeVNlbGVjdG9yQWxsKCJhIyIrYisiKyoiKS5sZW5ndGh8fHkucHVzaCgiLiMuK1srfl0iKX0pLHVlKGZ1bmN0aW9uKGUpe2UuaW5uZXJIVE1MPSI8YSBocmVmPScnIGRpc2FibGVkPSdkaXNhYmxlZCc+PC9hPjxzZWxlY3QgZGlzYWJsZWQ9J2Rpc2FibGVkJz48b3B0aW9uLz48L3NlbGVjdD4iO3ZhciB0PWQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTt0LnNldEF0dHJpYnV0ZSgidHlwZSIsImhpZGRlbiIpLGUuYXBwZW5kQ2hpbGQodCkuc2V0QXR0cmlidXRlKCJuYW1lIiwiRCIpLGUucXVlcnlTZWxlY3RvckFsbCgiW25hbWU9ZF0iKS5sZW5ndGgmJnkucHVzaCgibmFtZSIrTSsiKlsqXiR8IX5dPz0iKSwyIT09ZS5xdWVyeVNlbGVjdG9yQWxsKCI6ZW5hYmxlZCIpLmxlbmd0aCYmeS5wdXNoKCI6ZW5hYmxlZCIsIjpkaXNhYmxlZCIpLGguYXBwZW5kQ2hpbGQoZSkuZGlzYWJsZWQ9ITAsMiE9PWUucXVlcnlTZWxlY3RvckFsbCgiOmRpc2FibGVkIikubGVuZ3RoJiZ5LnB1c2goIjplbmFibGVkIiwiOmRpc2FibGVkIiksZS5xdWVyeVNlbGVjdG9yQWxsKCIqLDp4IikseS5wdXNoKCIsLio6Iil9KSksKG4ubWF0Y2hlc1NlbGVjdG9yPVEudGVzdChtPWgubWF0Y2hlc3x8aC53ZWJraXRNYXRjaGVzU2VsZWN0b3J8fGgubW96TWF0Y2hlc1NlbGVjdG9yfHxoLm9NYXRjaGVzU2VsZWN0b3J8fGgubXNNYXRjaGVzU2VsZWN0b3IpKSYmdWUoZnVuY3Rpb24oZSl7bi5kaXNjb25uZWN0ZWRNYXRjaD1tLmNhbGwoZSwiKiIpLG0uY2FsbChlLCJbcyE9JyddOngiKSx2LnB1c2goIiE9IixXKX0pLHk9eS5sZW5ndGgmJm5ldyBSZWdFeHAoeS5qb2luKCJ8IikpLHY9di5sZW5ndGgmJm5ldyBSZWdFeHAodi5qb2luKCJ8IikpLHQ9US50ZXN0KGguY29tcGFyZURvY3VtZW50UG9zaXRpb24pLHg9dHx8US50ZXN0KGguY29udGFpbnMpP2Z1bmN0aW9uKGUsdCl7dmFyIG49OT09PWUubm9kZVR5cGU/ZS5kb2N1bWVudEVsZW1lbnQ6ZSxyPXQmJnQucGFyZW50Tm9kZTtyZXR1cm4gZT09PXJ8fCEoIXJ8fDEhPT1yLm5vZGVUeXBlfHwhKG4uY29udGFpbnM/bi5jb250YWlucyhyKTplLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uJiYxNiZlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHIpKSl9OmZ1bmN0aW9uKGUsdCl7aWYodCl3aGlsZSh0PXQucGFyZW50Tm9kZSlpZih0PT09ZSlyZXR1cm4hMDtyZXR1cm4hMX0sRD10P2Z1bmN0aW9uKGUsdCl7aWYoZT09PXQpcmV0dXJuIGY9ITAsMDt2YXIgcj0hZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbi0hdC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjtyZXR1cm4gcnx8KDEmKHI9KGUub3duZXJEb2N1bWVudHx8ZSk9PT0odC5vd25lckRvY3VtZW50fHx0KT9lLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHQpOjEpfHwhbi5zb3J0RGV0YWNoZWQmJnQuY29tcGFyZURvY3VtZW50UG9zaXRpb24oZSk9PT1yP2U9PT1kfHxlLm93bmVyRG9jdW1lbnQ9PT13JiZ4KHcsZSk/LTE6dD09PWR8fHQub3duZXJEb2N1bWVudD09PXcmJngodyx0KT8xOmM/TyhjLGUpLU8oYyx0KTowOjQmcj8tMToxKX06ZnVuY3Rpb24oZSx0KXtpZihlPT09dClyZXR1cm4gZj0hMCwwO3ZhciBuLHI9MCxpPWUucGFyZW50Tm9kZSxvPXQucGFyZW50Tm9kZSxhPVtlXSxzPVt0XTtpZighaXx8IW8pcmV0dXJuIGU9PT1kPy0xOnQ9PT1kPzE6aT8tMTpvPzE6Yz9PKGMsZSktTyhjLHQpOjA7aWYoaT09PW8pcmV0dXJuIGNlKGUsdCk7bj1lO3doaWxlKG49bi5wYXJlbnROb2RlKWEudW5zaGlmdChuKTtuPXQ7d2hpbGUobj1uLnBhcmVudE5vZGUpcy51bnNoaWZ0KG4pO3doaWxlKGFbcl09PT1zW3JdKXIrKztyZXR1cm4gcj9jZShhW3JdLHNbcl0pOmFbcl09PT13Py0xOnNbcl09PT13PzE6MH0sZCk6ZH0sb2UubWF0Y2hlcz1mdW5jdGlvbihlLHQpe3JldHVybiBvZShlLG51bGwsbnVsbCx0KX0sb2UubWF0Y2hlc1NlbGVjdG9yPWZ1bmN0aW9uKGUsdCl7aWYoKGUub3duZXJEb2N1bWVudHx8ZSkhPT1kJiZwKGUpLHQ9dC5yZXBsYWNlKHosIj0nJDEnXSIpLG4ubWF0Y2hlc1NlbGVjdG9yJiZnJiYhU1t0KyIgIl0mJighdnx8IXYudGVzdCh0KSkmJigheXx8IXkudGVzdCh0KSkpdHJ5e3ZhciByPW0uY2FsbChlLHQpO2lmKHJ8fG4uZGlzY29ubmVjdGVkTWF0Y2h8fGUuZG9jdW1lbnQmJjExIT09ZS5kb2N1bWVudC5ub2RlVHlwZSlyZXR1cm4gcn1jYXRjaChlKXt9cmV0dXJuIG9lKHQsZCxudWxsLFtlXSkubGVuZ3RoPjB9LG9lLmNvbnRhaW5zPWZ1bmN0aW9uKGUsdCl7cmV0dXJuKGUub3duZXJEb2N1bWVudHx8ZSkhPT1kJiZwKGUpLHgoZSx0KX0sb2UuYXR0cj1mdW5jdGlvbihlLHQpeyhlLm93bmVyRG9jdW1lbnR8fGUpIT09ZCYmcChlKTt2YXIgaT1yLmF0dHJIYW5kbGVbdC50b0xvd2VyQ2FzZSgpXSxvPWkmJk4uY2FsbChyLmF0dHJIYW5kbGUsdC50b0xvd2VyQ2FzZSgpKT9pKGUsdCwhZyk6dm9pZCAwO3JldHVybiB2b2lkIDAhPT1vP286bi5hdHRyaWJ1dGVzfHwhZz9lLmdldEF0dHJpYnV0ZSh0KToobz1lLmdldEF0dHJpYnV0ZU5vZGUodCkpJiZvLnNwZWNpZmllZD9vLnZhbHVlOm51bGx9LG9lLmVzY2FwZT1mdW5jdGlvbihlKXtyZXR1cm4oZSsiIikucmVwbGFjZSh0ZSxuZSl9LG9lLmVycm9yPWZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcigiU3ludGF4IGVycm9yLCB1bnJlY29nbml6ZWQgZXhwcmVzc2lvbjogIitlKX0sb2UudW5pcXVlU29ydD1mdW5jdGlvbihlKXt2YXIgdCxyPVtdLGk9MCxvPTA7aWYoZj0hbi5kZXRlY3REdXBsaWNhdGVzLGM9IW4uc29ydFN0YWJsZSYmZS5zbGljZSgwKSxlLnNvcnQoRCksZil7d2hpbGUodD1lW28rK10pdD09PWVbb10mJihpPXIucHVzaChvKSk7d2hpbGUoaS0tKWUuc3BsaWNlKHJbaV0sMSl9cmV0dXJuIGM9bnVsbCxlfSxpPW9lLmdldFRleHQ9ZnVuY3Rpb24oZSl7dmFyIHQsbj0iIixyPTAsbz1lLm5vZGVUeXBlO2lmKG8pe2lmKDE9PT1vfHw5PT09b3x8MTE9PT1vKXtpZigic3RyaW5nIj09dHlwZW9mIGUudGV4dENvbnRlbnQpcmV0dXJuIGUudGV4dENvbnRlbnQ7Zm9yKGU9ZS5maXJzdENoaWxkO2U7ZT1lLm5leHRTaWJsaW5nKW4rPWkoZSl9ZWxzZSBpZigzPT09b3x8ND09PW8pcmV0dXJuIGUubm9kZVZhbHVlfWVsc2Ugd2hpbGUodD1lW3IrK10pbis9aSh0KTtyZXR1cm4gbn0sKHI9b2Uuc2VsZWN0b3JzPXtjYWNoZUxlbmd0aDo1MCxjcmVhdGVQc2V1ZG86c2UsbWF0Y2g6VixhdHRySGFuZGxlOnt9LGZpbmQ6e30scmVsYXRpdmU6eyI+Ijp7ZGlyOiJwYXJlbnROb2RlIixmaXJzdDohMH0sIiAiOntkaXI6InBhcmVudE5vZGUifSwiKyI6e2RpcjoicHJldmlvdXNTaWJsaW5nIixmaXJzdDohMH0sIn4iOntkaXI6InByZXZpb3VzU2libGluZyJ9fSxwcmVGaWx0ZXI6e0FUVFI6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV09ZVsxXS5yZXBsYWNlKFosZWUpLGVbM109KGVbM118fGVbNF18fGVbNV18fCIiKS5yZXBsYWNlKFosZWUpLCJ+PSI9PT1lWzJdJiYoZVszXT0iICIrZVszXSsiICIpLGUuc2xpY2UoMCw0KX0sQ0hJTEQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV09ZVsxXS50b0xvd2VyQ2FzZSgpLCJudGgiPT09ZVsxXS5zbGljZSgwLDMpPyhlWzNdfHxvZS5lcnJvcihlWzBdKSxlWzRdPSsoZVs0XT9lWzVdKyhlWzZdfHwxKToyKigiZXZlbiI9PT1lWzNdfHwib2RkIj09PWVbM10pKSxlWzVdPSsoZVs3XStlWzhdfHwib2RkIj09PWVbM10pKTplWzNdJiZvZS5lcnJvcihlWzBdKSxlfSxQU0VVRE86ZnVuY3Rpb24oZSl7dmFyIHQsbj0hZVs2XSYmZVsyXTtyZXR1cm4gVi5DSElMRC50ZXN0KGVbMF0pP251bGw6KGVbM10/ZVsyXT1lWzRdfHxlWzVdfHwiIjpuJiZYLnRlc3QobikmJih0PWEobiwhMCkpJiYodD1uLmluZGV4T2YoIikiLG4ubGVuZ3RoLXQpLW4ubGVuZ3RoKSYmKGVbMF09ZVswXS5zbGljZSgwLHQpLGVbMl09bi5zbGljZSgwLHQpKSxlLnNsaWNlKDAsMykpfX0sZmlsdGVyOntUQUc6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yZXBsYWNlKFosZWUpLnRvTG93ZXJDYXNlKCk7cmV0dXJuIioiPT09ZT9mdW5jdGlvbigpe3JldHVybiEwfTpmdW5jdGlvbihlKXtyZXR1cm4gZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09dH19LENMQVNTOmZ1bmN0aW9uKGUpe3ZhciB0PUVbZSsiICJdO3JldHVybiB0fHwodD1uZXcgUmVnRXhwKCIoXnwiK00rIikiK2UrIigiK00rInwkKSIpKSYmRShlLGZ1bmN0aW9uKGUpe3JldHVybiB0LnRlc3QoInN0cmluZyI9PXR5cGVvZiBlLmNsYXNzTmFtZSYmZS5jbGFzc05hbWV8fCJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRBdHRyaWJ1dGUmJmUuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIil9KX0sQVRUUjpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGZ1bmN0aW9uKHIpe3ZhciBpPW9lLmF0dHIocixlKTtyZXR1cm4gbnVsbD09aT8iIT0iPT09dDohdHx8KGkrPSIiLCI9Ij09PXQ/aT09PW46IiE9Ij09PXQ/aSE9PW46Il49Ij09PXQ/biYmMD09PWkuaW5kZXhPZihuKToiKj0iPT09dD9uJiZpLmluZGV4T2Yobik+LTE6IiQ9Ij09PXQ/biYmaS5zbGljZSgtbi5sZW5ndGgpPT09bjoifj0iPT09dD8oIiAiK2kucmVwbGFjZSgkLCIgIikrIiAiKS5pbmRleE9mKG4pPi0xOiJ8PSI9PT10JiYoaT09PW58fGkuc2xpY2UoMCxuLmxlbmd0aCsxKT09PW4rIi0iKSl9fSxDSElMRDpmdW5jdGlvbihlLHQsbixyLGkpe3ZhciBvPSJudGgiIT09ZS5zbGljZSgwLDMpLGE9Imxhc3QiIT09ZS5zbGljZSgtNCkscz0ib2YtdHlwZSI9PT10O3JldHVybiAxPT09ciYmMD09PWk/ZnVuY3Rpb24oZSl7cmV0dXJuISFlLnBhcmVudE5vZGV9OmZ1bmN0aW9uKHQsbix1KXt2YXIgbCxjLGYscCxkLGgsZz1vIT09YT8ibmV4dFNpYmxpbmciOiJwcmV2aW91c1NpYmxpbmciLHk9dC5wYXJlbnROb2RlLHY9cyYmdC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLG09IXUmJiFzLHg9ITE7aWYoeSl7aWYobyl7d2hpbGUoZyl7cD10O3doaWxlKHA9cFtnXSlpZihzP3Aubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXY6MT09PXAubm9kZVR5cGUpcmV0dXJuITE7aD1nPSJvbmx5Ij09PWUmJiFoJiYibmV4dFNpYmxpbmcifXJldHVybiEwfWlmKGg9W2E/eS5maXJzdENoaWxkOnkubGFzdENoaWxkXSxhJiZtKXt4PShkPShsPShjPShmPShwPXkpW2JdfHwocFtiXT17fSkpW3AudW5pcXVlSURdfHwoZltwLnVuaXF1ZUlEXT17fSkpW2VdfHxbXSlbMF09PT1UJiZsWzFdKSYmbFsyXSxwPWQmJnkuY2hpbGROb2Rlc1tkXTt3aGlsZShwPSsrZCYmcCYmcFtnXXx8KHg9ZD0wKXx8aC5wb3AoKSlpZigxPT09cC5ub2RlVHlwZSYmKyt4JiZwPT09dCl7Y1tlXT1bVCxkLHhdO2JyZWFrfX1lbHNlIGlmKG0mJih4PWQ9KGw9KGM9KGY9KHA9dClbYl18fChwW2JdPXt9KSlbcC51bmlxdWVJRF18fChmW3AudW5pcXVlSURdPXt9KSlbZV18fFtdKVswXT09PVQmJmxbMV0pLCExPT09eCl3aGlsZShwPSsrZCYmcCYmcFtnXXx8KHg9ZD0wKXx8aC5wb3AoKSlpZigocz9wLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT12OjE9PT1wLm5vZGVUeXBlKSYmKyt4JiYobSYmKChjPShmPXBbYl18fChwW2JdPXt9KSlbcC51bmlxdWVJRF18fChmW3AudW5pcXVlSURdPXt9KSlbZV09W1QseF0pLHA9PT10KSlicmVhaztyZXR1cm4oeC09aSk9PT1yfHx4JXI9PTAmJngvcj49MH19fSxQU0VVRE86ZnVuY3Rpb24oZSx0KXt2YXIgbixpPXIucHNldWRvc1tlXXx8ci5zZXRGaWx0ZXJzW2UudG9Mb3dlckNhc2UoKV18fG9lLmVycm9yKCJ1bnN1cHBvcnRlZCBwc2V1ZG86ICIrZSk7cmV0dXJuIGlbYl0/aSh0KTppLmxlbmd0aD4xPyhuPVtlLGUsIiIsdF0sci5zZXRGaWx0ZXJzLmhhc093blByb3BlcnR5KGUudG9Mb3dlckNhc2UoKSk/c2UoZnVuY3Rpb24oZSxuKXt2YXIgcixvPWkoZSx0KSxhPW8ubGVuZ3RoO3doaWxlKGEtLSllW3I9TyhlLG9bYV0pXT0hKG5bcl09b1thXSl9KTpmdW5jdGlvbihlKXtyZXR1cm4gaShlLDAsbil9KTppfX0scHNldWRvczp7bm90OnNlKGZ1bmN0aW9uKGUpe3ZhciB0PVtdLG49W10scj1zKGUucmVwbGFjZShCLCIkMSIpKTtyZXR1cm4gcltiXT9zZShmdW5jdGlvbihlLHQsbixpKXt2YXIgbyxhPXIoZSxudWxsLGksW10pLHM9ZS5sZW5ndGg7d2hpbGUocy0tKShvPWFbc10pJiYoZVtzXT0hKHRbc109bykpfSk6ZnVuY3Rpb24oZSxpLG8pe3JldHVybiB0WzBdPWUscih0LG51bGwsbyxuKSx0WzBdPW51bGwsIW4ucG9wKCl9fSksaGFzOnNlKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0KXtyZXR1cm4gb2UoZSx0KS5sZW5ndGg+MH19KSxjb250YWluczpzZShmdW5jdGlvbihlKXtyZXR1cm4gZT1lLnJlcGxhY2UoWixlZSksZnVuY3Rpb24odCl7cmV0dXJuKHQudGV4dENvbnRlbnR8fHQuaW5uZXJUZXh0fHxpKHQpKS5pbmRleE9mKGUpPi0xfX0pLGxhbmc6c2UoZnVuY3Rpb24oZSl7cmV0dXJuIFUudGVzdChlfHwiIil8fG9lLmVycm9yKCJ1bnN1cHBvcnRlZCBsYW5nOiAiK2UpLGU9ZS5yZXBsYWNlKFosZWUpLnRvTG93ZXJDYXNlKCksZnVuY3Rpb24odCl7dmFyIG47ZG97aWYobj1nP3QubGFuZzp0LmdldEF0dHJpYnV0ZSgieG1sOmxhbmciKXx8dC5nZXRBdHRyaWJ1dGUoImxhbmciKSlyZXR1cm4obj1uLnRvTG93ZXJDYXNlKCkpPT09ZXx8MD09PW4uaW5kZXhPZihlKyItIil9d2hpbGUoKHQ9dC5wYXJlbnROb2RlKSYmMT09PXQubm9kZVR5cGUpO3JldHVybiExfX0pLHRhcmdldDpmdW5jdGlvbih0KXt2YXIgbj1lLmxvY2F0aW9uJiZlLmxvY2F0aW9uLmhhc2g7cmV0dXJuIG4mJm4uc2xpY2UoMSk9PT10LmlkfSxyb290OmZ1bmN0aW9uKGUpe3JldHVybiBlPT09aH0sZm9jdXM6ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1kLmFjdGl2ZUVsZW1lbnQmJighZC5oYXNGb2N1c3x8ZC5oYXNGb2N1cygpKSYmISEoZS50eXBlfHxlLmhyZWZ8fH5lLnRhYkluZGV4KX0sZW5hYmxlZDpkZSghMSksZGlzYWJsZWQ6ZGUoITApLGNoZWNrZWQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiJpbnB1dCI9PT10JiYhIWUuY2hlY2tlZHx8Im9wdGlvbiI9PT10JiYhIWUuc2VsZWN0ZWR9LHNlbGVjdGVkOmZ1bmN0aW9uKGUpe3JldHVybiBlLnBhcmVudE5vZGUmJmUucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4LCEwPT09ZS5zZWxlY3RlZH0sZW1wdHk6ZnVuY3Rpb24oZSl7Zm9yKGU9ZS5maXJzdENoaWxkO2U7ZT1lLm5leHRTaWJsaW5nKWlmKGUubm9kZVR5cGU8NilyZXR1cm4hMTtyZXR1cm4hMH0scGFyZW50OmZ1bmN0aW9uKGUpe3JldHVybiFyLnBzZXVkb3MuZW1wdHkoZSl9LGhlYWRlcjpmdW5jdGlvbihlKXtyZXR1cm4gWS50ZXN0KGUubm9kZU5hbWUpfSxpbnB1dDpmdW5jdGlvbihlKXtyZXR1cm4gRy50ZXN0KGUubm9kZU5hbWUpfSxidXR0b246ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiJpbnB1dCI9PT10JiYiYnV0dG9uIj09PWUudHlwZXx8ImJ1dHRvbiI9PT10fSx0ZXh0OmZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiJpbnB1dCI9PT1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkmJiJ0ZXh0Ij09PWUudHlwZSYmKG51bGw9PSh0PWUuZ2V0QXR0cmlidXRlKCJ0eXBlIikpfHwidGV4dCI9PT10LnRvTG93ZXJDYXNlKCkpfSxmaXJzdDpoZShmdW5jdGlvbigpe3JldHVyblswXX0pLGxhc3Q6aGUoZnVuY3Rpb24oZSx0KXtyZXR1cm5bdC0xXX0pLGVxOmhlKGZ1bmN0aW9uKGUsdCxuKXtyZXR1cm5bbjwwP24rdDpuXX0pLGV2ZW46aGUoZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49MDtuPHQ7bis9MillLnB1c2gobik7cmV0dXJuIGV9KSxvZGQ6aGUoZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49MTtuPHQ7bis9MillLnB1c2gobik7cmV0dXJuIGV9KSxsdDpoZShmdW5jdGlvbihlLHQsbil7Zm9yKHZhciByPW48MD9uK3Q6bjstLXI+PTA7KWUucHVzaChyKTtyZXR1cm4gZX0pLGd0OmhlKGZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHI9bjwwP24rdDpuOysrcjx0OyllLnB1c2gocik7cmV0dXJuIGV9KX19KS5wc2V1ZG9zLm50aD1yLnBzZXVkb3MuZXE7Zm9yKHQgaW57cmFkaW86ITAsY2hlY2tib3g6ITAsZmlsZTohMCxwYXNzd29yZDohMCxpbWFnZTohMH0pci5wc2V1ZG9zW3RdPWZlKHQpO2Zvcih0IGlue3N1Ym1pdDohMCxyZXNldDohMH0pci5wc2V1ZG9zW3RdPXBlKHQpO2Z1bmN0aW9uIHllKCl7fXllLnByb3RvdHlwZT1yLmZpbHRlcnM9ci5wc2V1ZG9zLHIuc2V0RmlsdGVycz1uZXcgeWUsYT1vZS50b2tlbml6ZT1mdW5jdGlvbihlLHQpe3ZhciBuLGksbyxhLHMsdSxsLGM9a1tlKyIgIl07aWYoYylyZXR1cm4gdD8wOmMuc2xpY2UoMCk7cz1lLHU9W10sbD1yLnByZUZpbHRlcjt3aGlsZShzKXtuJiYhKGk9Ri5leGVjKHMpKXx8KGkmJihzPXMuc2xpY2UoaVswXS5sZW5ndGgpfHxzKSx1LnB1c2gobz1bXSkpLG49ITEsKGk9Xy5leGVjKHMpKSYmKG49aS5zaGlmdCgpLG8ucHVzaCh7dmFsdWU6bix0eXBlOmlbMF0ucmVwbGFjZShCLCIgIil9KSxzPXMuc2xpY2Uobi5sZW5ndGgpKTtmb3IoYSBpbiByLmZpbHRlcikhKGk9VlthXS5leGVjKHMpKXx8bFthXSYmIShpPWxbYV0oaSkpfHwobj1pLnNoaWZ0KCksby5wdXNoKHt2YWx1ZTpuLHR5cGU6YSxtYXRjaGVzOml9KSxzPXMuc2xpY2Uobi5sZW5ndGgpKTtpZighbilicmVha31yZXR1cm4gdD9zLmxlbmd0aDpzP29lLmVycm9yKGUpOmsoZSx1KS5zbGljZSgwKX07ZnVuY3Rpb24gdmUoZSl7Zm9yKHZhciB0PTAsbj1lLmxlbmd0aCxyPSIiO3Q8bjt0Kyspcis9ZVt0XS52YWx1ZTtyZXR1cm4gcn1mdW5jdGlvbiBtZShlLHQsbil7dmFyIHI9dC5kaXIsaT10Lm5leHQsbz1pfHxyLGE9biYmInBhcmVudE5vZGUiPT09byxzPUMrKztyZXR1cm4gdC5maXJzdD9mdW5jdGlvbih0LG4saSl7d2hpbGUodD10W3JdKWlmKDE9PT10Lm5vZGVUeXBlfHxhKXJldHVybiBlKHQsbixpKTtyZXR1cm4hMX06ZnVuY3Rpb24odCxuLHUpe3ZhciBsLGMsZixwPVtULHNdO2lmKHUpe3doaWxlKHQ9dFtyXSlpZigoMT09PXQubm9kZVR5cGV8fGEpJiZlKHQsbix1KSlyZXR1cm4hMH1lbHNlIHdoaWxlKHQ9dFtyXSlpZigxPT09dC5ub2RlVHlwZXx8YSlpZihmPXRbYl18fCh0W2JdPXt9KSxjPWZbdC51bmlxdWVJRF18fChmW3QudW5pcXVlSURdPXt9KSxpJiZpPT09dC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKXQ9dFtyXXx8dDtlbHNle2lmKChsPWNbb10pJiZsWzBdPT09VCYmbFsxXT09PXMpcmV0dXJuIHBbMl09bFsyXTtpZihjW29dPXAscFsyXT1lKHQsbix1KSlyZXR1cm4hMH1yZXR1cm4hMX19ZnVuY3Rpb24geGUoZSl7cmV0dXJuIGUubGVuZ3RoPjE/ZnVuY3Rpb24odCxuLHIpe3ZhciBpPWUubGVuZ3RoO3doaWxlKGktLSlpZighZVtpXSh0LG4scikpcmV0dXJuITE7cmV0dXJuITB9OmVbMF19ZnVuY3Rpb24gYmUoZSx0LG4pe2Zvcih2YXIgcj0wLGk9dC5sZW5ndGg7cjxpO3IrKylvZShlLHRbcl0sbik7cmV0dXJuIG59ZnVuY3Rpb24gd2UoZSx0LG4scixpKXtmb3IodmFyIG8sYT1bXSxzPTAsdT1lLmxlbmd0aCxsPW51bGwhPXQ7czx1O3MrKykobz1lW3NdKSYmKG4mJiFuKG8scixpKXx8KGEucHVzaChvKSxsJiZ0LnB1c2gocykpKTtyZXR1cm4gYX1mdW5jdGlvbiBUZShlLHQsbixyLGksbyl7cmV0dXJuIHImJiFyW2JdJiYocj1UZShyKSksaSYmIWlbYl0mJihpPVRlKGksbykpLHNlKGZ1bmN0aW9uKG8sYSxzLHUpe3ZhciBsLGMsZixwPVtdLGQ9W10saD1hLmxlbmd0aCxnPW98fGJlKHR8fCIqIixzLm5vZGVUeXBlP1tzXTpzLFtdKSx5PSFlfHwhbyYmdD9nOndlKGcscCxlLHMsdSksdj1uP2l8fChvP2U6aHx8cik/W106YTp5O2lmKG4mJm4oeSx2LHMsdSkscil7bD13ZSh2LGQpLHIobCxbXSxzLHUpLGM9bC5sZW5ndGg7d2hpbGUoYy0tKShmPWxbY10pJiYodltkW2NdXT0hKHlbZFtjXV09ZikpfWlmKG8pe2lmKGl8fGUpe2lmKGkpe2w9W10sYz12Lmxlbmd0aDt3aGlsZShjLS0pKGY9dltjXSkmJmwucHVzaCh5W2NdPWYpO2kobnVsbCx2PVtdLGwsdSl9Yz12Lmxlbmd0aDt3aGlsZShjLS0pKGY9dltjXSkmJihsPWk/TyhvLGYpOnBbY10pPi0xJiYob1tsXT0hKGFbbF09ZikpfX1lbHNlIHY9d2Uodj09PWE/di5zcGxpY2UoaCx2Lmxlbmd0aCk6diksaT9pKG51bGwsYSx2LHUpOkwuYXBwbHkoYSx2KX0pfWZ1bmN0aW9uIENlKGUpe2Zvcih2YXIgdCxuLGksbz1lLmxlbmd0aCxhPXIucmVsYXRpdmVbZVswXS50eXBlXSxzPWF8fHIucmVsYXRpdmVbIiAiXSx1PWE/MTowLGM9bWUoZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT10fSxzLCEwKSxmPW1lKGZ1bmN0aW9uKGUpe3JldHVybiBPKHQsZSk+LTF9LHMsITApLHA9W2Z1bmN0aW9uKGUsbixyKXt2YXIgaT0hYSYmKHJ8fG4hPT1sKXx8KCh0PW4pLm5vZGVUeXBlP2MoZSxuLHIpOmYoZSxuLHIpKTtyZXR1cm4gdD1udWxsLGl9XTt1PG87dSsrKWlmKG49ci5yZWxhdGl2ZVtlW3VdLnR5cGVdKXA9W21lKHhlKHApLG4pXTtlbHNle2lmKChuPXIuZmlsdGVyW2VbdV0udHlwZV0uYXBwbHkobnVsbCxlW3VdLm1hdGNoZXMpKVtiXSl7Zm9yKGk9Kyt1O2k8bztpKyspaWYoci5yZWxhdGl2ZVtlW2ldLnR5cGVdKWJyZWFrO3JldHVybiBUZSh1PjEmJnhlKHApLHU+MSYmdmUoZS5zbGljZSgwLHUtMSkuY29uY2F0KHt2YWx1ZToiICI9PT1lW3UtMl0udHlwZT8iKiI6IiJ9KSkucmVwbGFjZShCLCIkMSIpLG4sdTxpJiZDZShlLnNsaWNlKHUsaSkpLGk8byYmQ2UoZT1lLnNsaWNlKGkpKSxpPG8mJnZlKGUpKX1wLnB1c2gobil9cmV0dXJuIHhlKHApfWZ1bmN0aW9uIEVlKGUsdCl7dmFyIG49dC5sZW5ndGg+MCxpPWUubGVuZ3RoPjAsbz1mdW5jdGlvbihvLGEscyx1LGMpe3ZhciBmLGgseSx2PTAsbT0iMCIseD1vJiZbXSxiPVtdLHc9bCxDPW98fGkmJnIuZmluZC5UQUcoIioiLGMpLEU9VCs9bnVsbD09dz8xOk1hdGgucmFuZG9tKCl8fC4xLGs9Qy5sZW5ndGg7Zm9yKGMmJihsPWE9PT1kfHxhfHxjKTttIT09ayYmbnVsbCE9KGY9Q1ttXSk7bSsrKXtpZihpJiZmKXtoPTAsYXx8Zi5vd25lckRvY3VtZW50PT09ZHx8KHAoZikscz0hZyk7d2hpbGUoeT1lW2grK10paWYoeShmLGF8fGQscykpe3UucHVzaChmKTticmVha31jJiYoVD1FKX1uJiYoKGY9IXkmJmYpJiZ2LS0sbyYmeC5wdXNoKGYpKX1pZih2Kz1tLG4mJm0hPT12KXtoPTA7d2hpbGUoeT10W2grK10peSh4LGIsYSxzKTtpZihvKXtpZih2PjApd2hpbGUobS0tKXhbbV18fGJbbV18fChiW21dPWouY2FsbCh1KSk7Yj13ZShiKX1MLmFwcGx5KHUsYiksYyYmIW8mJmIubGVuZ3RoPjAmJnYrdC5sZW5ndGg+MSYmb2UudW5pcXVlU29ydCh1KX1yZXR1cm4gYyYmKFQ9RSxsPXcpLHh9O3JldHVybiBuP3NlKG8pOm99cmV0dXJuIHM9b2UuY29tcGlsZT1mdW5jdGlvbihlLHQpe3ZhciBuLHI9W10saT1bXSxvPVNbZSsiICJdO2lmKCFvKXt0fHwodD1hKGUpKSxuPXQubGVuZ3RoO3doaWxlKG4tLSkobz1DZSh0W25dKSlbYl0/ci5wdXNoKG8pOmkucHVzaChvKTsobz1TKGUsRWUoaSxyKSkpLnNlbGVjdG9yPWV9cmV0dXJuIG99LHU9b2Uuc2VsZWN0PWZ1bmN0aW9uKGUsdCxuLGkpe3ZhciBvLHUsbCxjLGYscD0iZnVuY3Rpb24iPT10eXBlb2YgZSYmZSxkPSFpJiZhKGU9cC5zZWxlY3Rvcnx8ZSk7aWYobj1ufHxbXSwxPT09ZC5sZW5ndGgpe2lmKCh1PWRbMF09ZFswXS5zbGljZSgwKSkubGVuZ3RoPjImJiJJRCI9PT0obD11WzBdKS50eXBlJiY5PT09dC5ub2RlVHlwZSYmZyYmci5yZWxhdGl2ZVt1WzFdLnR5cGVdKXtpZighKHQ9KHIuZmluZC5JRChsLm1hdGNoZXNbMF0ucmVwbGFjZShaLGVlKSx0KXx8W10pWzBdKSlyZXR1cm4gbjtwJiYodD10LnBhcmVudE5vZGUpLGU9ZS5zbGljZSh1LnNoaWZ0KCkudmFsdWUubGVuZ3RoKX1vPVYubmVlZHNDb250ZXh0LnRlc3QoZSk/MDp1Lmxlbmd0aDt3aGlsZShvLS0pe2lmKGw9dVtvXSxyLnJlbGF0aXZlW2M9bC50eXBlXSlicmVhaztpZigoZj1yLmZpbmRbY10pJiYoaT1mKGwubWF0Y2hlc1swXS5yZXBsYWNlKFosZWUpLEsudGVzdCh1WzBdLnR5cGUpJiZnZSh0LnBhcmVudE5vZGUpfHx0KSkpe2lmKHUuc3BsaWNlKG8sMSksIShlPWkubGVuZ3RoJiZ2ZSh1KSkpcmV0dXJuIEwuYXBwbHkobixpKSxuO2JyZWFrfX19cmV0dXJuKHB8fHMoZSxkKSkoaSx0LCFnLG4sIXR8fEsudGVzdChlKSYmZ2UodC5wYXJlbnROb2RlKXx8dCksbn0sbi5zb3J0U3RhYmxlPWIuc3BsaXQoIiIpLnNvcnQoRCkuam9pbigiIik9PT1iLG4uZGV0ZWN0RHVwbGljYXRlcz0hIWYscCgpLG4uc29ydERldGFjaGVkPXVlKGZ1bmN0aW9uKGUpe3JldHVybiAxJmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24oZC5jcmVhdGVFbGVtZW50KCJmaWVsZHNldCIpKX0pLHVlKGZ1bmN0aW9uKGUpe3JldHVybiBlLmlubmVySFRNTD0iPGEgaHJlZj0nIyc+PC9hPiIsIiMiPT09ZS5maXJzdENoaWxkLmdldEF0dHJpYnV0ZSgiaHJlZiIpfSl8fGxlKCJ0eXBlfGhyZWZ8aGVpZ2h0fHdpZHRoIixmdW5jdGlvbihlLHQsbil7aWYoIW4pcmV0dXJuIGUuZ2V0QXR0cmlidXRlKHQsInR5cGUiPT09dC50b0xvd2VyQ2FzZSgpPzE6Mil9KSxuLmF0dHJpYnV0ZXMmJnVlKGZ1bmN0aW9uKGUpe3JldHVybiBlLmlubmVySFRNTD0iPGlucHV0Lz4iLGUuZmlyc3RDaGlsZC5zZXRBdHRyaWJ1dGUoInZhbHVlIiwiIiksIiI9PT1lLmZpcnN0Q2hpbGQuZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpfSl8fGxlKCJ2YWx1ZSIsZnVuY3Rpb24oZSx0LG4pe2lmKCFuJiYiaW5wdXQiPT09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKXJldHVybiBlLmRlZmF1bHRWYWx1ZX0pLHVlKGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lLmdldEF0dHJpYnV0ZSgiZGlzYWJsZWQiKX0pfHxsZShQLGZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtpZighbilyZXR1cm4hMD09PWVbdF0/dC50b0xvd2VyQ2FzZSgpOihyPWUuZ2V0QXR0cmlidXRlTm9kZSh0KSkmJnIuc3BlY2lmaWVkP3IudmFsdWU6bnVsbH0pLG9lfShlKTt3LmZpbmQ9RSx3LmV4cHI9RS5zZWxlY3RvcnMsdy5leHByWyI6Il09dy5leHByLnBzZXVkb3Msdy51bmlxdWVTb3J0PXcudW5pcXVlPUUudW5pcXVlU29ydCx3LnRleHQ9RS5nZXRUZXh0LHcuaXNYTUxEb2M9RS5pc1hNTCx3LmNvbnRhaW5zPUUuY29udGFpbnMsdy5lc2NhcGVTZWxlY3Rvcj1FLmVzY2FwZTt2YXIgaz1mdW5jdGlvbihlLHQsbil7dmFyIHI9W10saT12b2lkIDAhPT1uO3doaWxlKChlPWVbdF0pJiY5IT09ZS5ub2RlVHlwZSlpZigxPT09ZS5ub2RlVHlwZSl7aWYoaSYmdyhlKS5pcyhuKSlicmVhaztyLnB1c2goZSl9cmV0dXJuIHJ9LFM9ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49W107ZTtlPWUubmV4dFNpYmxpbmcpMT09PWUubm9kZVR5cGUmJmUhPT10JiZuLnB1c2goZSk7cmV0dXJuIG59LEQ9dy5leHByLm1hdGNoLm5lZWRzQ29udGV4dDtmdW5jdGlvbiBOKGUsdCl7cmV0dXJuIGUubm9kZU5hbWUmJmUubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXQudG9Mb3dlckNhc2UoKX12YXIgQT0vXjwoW2Etel1bXlwvXDA+Olx4MjBcdFxyXG5cZl0qKVtceDIwXHRcclxuXGZdKlwvPz4oPzo8XC9cMT58KSQvaTtmdW5jdGlvbiBqKGUsdCxuKXtyZXR1cm4gZyh0KT93LmdyZXAoZSxmdW5jdGlvbihlLHIpe3JldHVybiEhdC5jYWxsKGUscixlKSE9PW59KTp0Lm5vZGVUeXBlP3cuZ3JlcChlLGZ1bmN0aW9uKGUpe3JldHVybiBlPT09dCE9PW59KToic3RyaW5nIiE9dHlwZW9mIHQ/dy5ncmVwKGUsZnVuY3Rpb24oZSl7cmV0dXJuIHUuY2FsbCh0LGUpPi0xIT09bn0pOncuZmlsdGVyKHQsZSxuKX13LmZpbHRlcj1mdW5jdGlvbihlLHQsbil7dmFyIHI9dFswXTtyZXR1cm4gbiYmKGU9Ijpub3QoIitlKyIpIiksMT09PXQubGVuZ3RoJiYxPT09ci5ub2RlVHlwZT93LmZpbmQubWF0Y2hlc1NlbGVjdG9yKHIsZSk/W3JdOltdOncuZmluZC5tYXRjaGVzKGUsdy5ncmVwKHQsZnVuY3Rpb24oZSl7cmV0dXJuIDE9PT1lLm5vZGVUeXBlfSkpfSx3LmZuLmV4dGVuZCh7ZmluZDpmdW5jdGlvbihlKXt2YXIgdCxuLHI9dGhpcy5sZW5ndGgsaT10aGlzO2lmKCJzdHJpbmciIT10eXBlb2YgZSlyZXR1cm4gdGhpcy5wdXNoU3RhY2sodyhlKS5maWx0ZXIoZnVuY3Rpb24oKXtmb3IodD0wO3Q8cjt0KyspaWYody5jb250YWlucyhpW3RdLHRoaXMpKXJldHVybiEwfSkpO2ZvcihuPXRoaXMucHVzaFN0YWNrKFtdKSx0PTA7dDxyO3QrKyl3LmZpbmQoZSxpW3RdLG4pO3JldHVybiByPjE/dy51bmlxdWVTb3J0KG4pOm59LGZpbHRlcjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soaih0aGlzLGV8fFtdLCExKSl9LG5vdDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soaih0aGlzLGV8fFtdLCEwKSl9LGlzOmZ1bmN0aW9uKGUpe3JldHVybiEhaih0aGlzLCJzdHJpbmciPT10eXBlb2YgZSYmRC50ZXN0KGUpP3coZSk6ZXx8W10sITEpLmxlbmd0aH19KTt2YXIgcSxMPS9eKD86XHMqKDxbXHdcV10rPilbXj5dKnwjKFtcdy1dKykpJC87KHcuZm4uaW5pdD1mdW5jdGlvbihlLHQsbil7dmFyIGksbztpZighZSlyZXR1cm4gdGhpcztpZihuPW58fHEsInN0cmluZyI9PXR5cGVvZiBlKXtpZighKGk9IjwiPT09ZVswXSYmIj4iPT09ZVtlLmxlbmd0aC0xXSYmZS5sZW5ndGg+PTM/W251bGwsZSxudWxsXTpMLmV4ZWMoZSkpfHwhaVsxXSYmdClyZXR1cm4hdHx8dC5qcXVlcnk/KHR8fG4pLmZpbmQoZSk6dGhpcy5jb25zdHJ1Y3Rvcih0KS5maW5kKGUpO2lmKGlbMV0pe2lmKHQ9dCBpbnN0YW5jZW9mIHc/dFswXTp0LHcubWVyZ2UodGhpcyx3LnBhcnNlSFRNTChpWzFdLHQmJnQubm9kZVR5cGU/dC5vd25lckRvY3VtZW50fHx0OnIsITApKSxBLnRlc3QoaVsxXSkmJncuaXNQbGFpbk9iamVjdCh0KSlmb3IoaSBpbiB0KWcodGhpc1tpXSk/dGhpc1tpXSh0W2ldKTp0aGlzLmF0dHIoaSx0W2ldKTtyZXR1cm4gdGhpc31yZXR1cm4obz1yLmdldEVsZW1lbnRCeUlkKGlbMl0pKSYmKHRoaXNbMF09byx0aGlzLmxlbmd0aD0xKSx0aGlzfXJldHVybiBlLm5vZGVUeXBlPyh0aGlzWzBdPWUsdGhpcy5sZW5ndGg9MSx0aGlzKTpnKGUpP3ZvaWQgMCE9PW4ucmVhZHk/bi5yZWFkeShlKTplKHcpOncubWFrZUFycmF5KGUsdGhpcyl9KS5wcm90b3R5cGU9dy5mbixxPXcocik7dmFyIEg9L14oPzpwYXJlbnRzfHByZXYoPzpVbnRpbHxBbGwpKS8sTz17Y2hpbGRyZW46ITAsY29udGVudHM6ITAsbmV4dDohMCxwcmV2OiEwfTt3LmZuLmV4dGVuZCh7aGFzOmZ1bmN0aW9uKGUpe3ZhciB0PXcoZSx0aGlzKSxuPXQubGVuZ3RoO3JldHVybiB0aGlzLmZpbHRlcihmdW5jdGlvbigpe2Zvcih2YXIgZT0wO2U8bjtlKyspaWYody5jb250YWlucyh0aGlzLHRbZV0pKXJldHVybiEwfSl9LGNsb3Nlc3Q6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPTAsaT10aGlzLmxlbmd0aCxvPVtdLGE9InN0cmluZyIhPXR5cGVvZiBlJiZ3KGUpO2lmKCFELnRlc3QoZSkpZm9yKDtyPGk7cisrKWZvcihuPXRoaXNbcl07biYmbiE9PXQ7bj1uLnBhcmVudE5vZGUpaWYobi5ub2RlVHlwZTwxMSYmKGE/YS5pbmRleChuKT4tMToxPT09bi5ub2RlVHlwZSYmdy5maW5kLm1hdGNoZXNTZWxlY3RvcihuLGUpKSl7by5wdXNoKG4pO2JyZWFrfXJldHVybiB0aGlzLnB1c2hTdGFjayhvLmxlbmd0aD4xP3cudW5pcXVlU29ydChvKTpvKX0saW5kZXg6ZnVuY3Rpb24oZSl7cmV0dXJuIGU/InN0cmluZyI9PXR5cGVvZiBlP3UuY2FsbCh3KGUpLHRoaXNbMF0pOnUuY2FsbCh0aGlzLGUuanF1ZXJ5P2VbMF06ZSk6dGhpc1swXSYmdGhpc1swXS5wYXJlbnROb2RlP3RoaXMuZmlyc3QoKS5wcmV2QWxsKCkubGVuZ3RoOi0xfSxhZGQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5wdXNoU3RhY2sody51bmlxdWVTb3J0KHcubWVyZ2UodGhpcy5nZXQoKSx3KGUsdCkpKSl9LGFkZEJhY2s6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuYWRkKG51bGw9PWU/dGhpcy5wcmV2T2JqZWN0OnRoaXMucHJldk9iamVjdC5maWx0ZXIoZSkpfX0pO2Z1bmN0aW9uIFAoZSx0KXt3aGlsZSgoZT1lW3RdKSYmMSE9PWUubm9kZVR5cGUpO3JldHVybiBlfXcuZWFjaCh7cGFyZW50OmZ1bmN0aW9uKGUpe3ZhciB0PWUucGFyZW50Tm9kZTtyZXR1cm4gdCYmMTEhPT10Lm5vZGVUeXBlP3Q6bnVsbH0scGFyZW50czpmdW5jdGlvbihlKXtyZXR1cm4gayhlLCJwYXJlbnROb2RlIil9LHBhcmVudHNVbnRpbDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGsoZSwicGFyZW50Tm9kZSIsbil9LG5leHQ6ZnVuY3Rpb24oZSl7cmV0dXJuIFAoZSwibmV4dFNpYmxpbmciKX0scHJldjpmdW5jdGlvbihlKXtyZXR1cm4gUChlLCJwcmV2aW91c1NpYmxpbmciKX0sbmV4dEFsbDpmdW5jdGlvbihlKXtyZXR1cm4gayhlLCJuZXh0U2libGluZyIpfSxwcmV2QWxsOmZ1bmN0aW9uKGUpe3JldHVybiBrKGUsInByZXZpb3VzU2libGluZyIpfSxuZXh0VW50aWw6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBrKGUsIm5leHRTaWJsaW5nIixuKX0scHJldlVudGlsOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gayhlLCJwcmV2aW91c1NpYmxpbmciLG4pfSxzaWJsaW5nczpmdW5jdGlvbihlKXtyZXR1cm4gUygoZS5wYXJlbnROb2RlfHx7fSkuZmlyc3RDaGlsZCxlKX0sY2hpbGRyZW46ZnVuY3Rpb24oZSl7cmV0dXJuIFMoZS5maXJzdENoaWxkKX0sY29udGVudHM6ZnVuY3Rpb24oZSl7cmV0dXJuIE4oZSwiaWZyYW1lIik/ZS5jb250ZW50RG9jdW1lbnQ6KE4oZSwidGVtcGxhdGUiKSYmKGU9ZS5jb250ZW50fHxlKSx3Lm1lcmdlKFtdLGUuY2hpbGROb2RlcykpfX0sZnVuY3Rpb24oZSx0KXt3LmZuW2VdPWZ1bmN0aW9uKG4scil7dmFyIGk9dy5tYXAodGhpcyx0LG4pO3JldHVybiJVbnRpbCIhPT1lLnNsaWNlKC01KSYmKHI9biksciYmInN0cmluZyI9PXR5cGVvZiByJiYoaT13LmZpbHRlcihyLGkpKSx0aGlzLmxlbmd0aD4xJiYoT1tlXXx8dy51bmlxdWVTb3J0KGkpLEgudGVzdChlKSYmaS5yZXZlcnNlKCkpLHRoaXMucHVzaFN0YWNrKGkpfX0pO3ZhciBNPS9bXlx4MjBcdFxyXG5cZl0rL2c7ZnVuY3Rpb24gUihlKXt2YXIgdD17fTtyZXR1cm4gdy5lYWNoKGUubWF0Y2goTSl8fFtdLGZ1bmN0aW9uKGUsbil7dFtuXT0hMH0pLHR9dy5DYWxsYmFja3M9ZnVuY3Rpb24oZSl7ZT0ic3RyaW5nIj09dHlwZW9mIGU/UihlKTp3LmV4dGVuZCh7fSxlKTt2YXIgdCxuLHIsaSxvPVtdLGE9W10scz0tMSx1PWZ1bmN0aW9uKCl7Zm9yKGk9aXx8ZS5vbmNlLHI9dD0hMDthLmxlbmd0aDtzPS0xKXtuPWEuc2hpZnQoKTt3aGlsZSgrK3M8by5sZW5ndGgpITE9PT1vW3NdLmFwcGx5KG5bMF0sblsxXSkmJmUuc3RvcE9uRmFsc2UmJihzPW8ubGVuZ3RoLG49ITEpfWUubWVtb3J5fHwobj0hMSksdD0hMSxpJiYobz1uP1tdOiIiKX0sbD17YWRkOmZ1bmN0aW9uKCl7cmV0dXJuIG8mJihuJiYhdCYmKHM9by5sZW5ndGgtMSxhLnB1c2gobikpLGZ1bmN0aW9uIHQobil7dy5lYWNoKG4sZnVuY3Rpb24obixyKXtnKHIpP2UudW5pcXVlJiZsLmhhcyhyKXx8by5wdXNoKHIpOnImJnIubGVuZ3RoJiYic3RyaW5nIiE9PXgocikmJnQocil9KX0oYXJndW1lbnRzKSxuJiYhdCYmdSgpKSx0aGlzfSxyZW1vdmU6ZnVuY3Rpb24oKXtyZXR1cm4gdy5lYWNoKGFyZ3VtZW50cyxmdW5jdGlvbihlLHQpe3ZhciBuO3doaWxlKChuPXcuaW5BcnJheSh0LG8sbikpPi0xKW8uc3BsaWNlKG4sMSksbjw9cyYmcy0tfSksdGhpc30saGFzOmZ1bmN0aW9uKGUpe3JldHVybiBlP3cuaW5BcnJheShlLG8pPi0xOm8ubGVuZ3RoPjB9LGVtcHR5OmZ1bmN0aW9uKCl7cmV0dXJuIG8mJihvPVtdKSx0aGlzfSxkaXNhYmxlOmZ1bmN0aW9uKCl7cmV0dXJuIGk9YT1bXSxvPW49IiIsdGhpc30sZGlzYWJsZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hb30sbG9jazpmdW5jdGlvbigpe3JldHVybiBpPWE9W10sbnx8dHx8KG89bj0iIiksdGhpc30sbG9ja2VkOmZ1bmN0aW9uKCl7cmV0dXJuISFpfSxmaXJlV2l0aDpmdW5jdGlvbihlLG4pe3JldHVybiBpfHwobj1bZSwobj1ufHxbXSkuc2xpY2U/bi5zbGljZSgpOm5dLGEucHVzaChuKSx0fHx1KCkpLHRoaXN9LGZpcmU6ZnVuY3Rpb24oKXtyZXR1cm4gbC5maXJlV2l0aCh0aGlzLGFyZ3VtZW50cyksdGhpc30sZmlyZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hIXJ9fTtyZXR1cm4gbH07ZnVuY3Rpb24gSShlKXtyZXR1cm4gZX1mdW5jdGlvbiBXKGUpe3Rocm93IGV9ZnVuY3Rpb24gJChlLHQsbixyKXt2YXIgaTt0cnl7ZSYmZyhpPWUucHJvbWlzZSk/aS5jYWxsKGUpLmRvbmUodCkuZmFpbChuKTplJiZnKGk9ZS50aGVuKT9pLmNhbGwoZSx0LG4pOnQuYXBwbHkodm9pZCAwLFtlXS5zbGljZShyKSl9Y2F0Y2goZSl7bi5hcHBseSh2b2lkIDAsW2VdKX19dy5leHRlbmQoe0RlZmVycmVkOmZ1bmN0aW9uKHQpe3ZhciBuPVtbIm5vdGlmeSIsInByb2dyZXNzIix3LkNhbGxiYWNrcygibWVtb3J5Iiksdy5DYWxsYmFja3MoIm1lbW9yeSIpLDJdLFsicmVzb2x2ZSIsImRvbmUiLHcuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLHcuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLDAsInJlc29sdmVkIl0sWyJyZWplY3QiLCJmYWlsIix3LkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSx3LkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSwxLCJyZWplY3RlZCJdXSxyPSJwZW5kaW5nIixpPXtzdGF0ZTpmdW5jdGlvbigpe3JldHVybiByfSxhbHdheXM6ZnVuY3Rpb24oKXtyZXR1cm4gby5kb25lKGFyZ3VtZW50cykuZmFpbChhcmd1bWVudHMpLHRoaXN9LCJjYXRjaCI6ZnVuY3Rpb24oZSl7cmV0dXJuIGkudGhlbihudWxsLGUpfSxwaXBlOmZ1bmN0aW9uKCl7dmFyIGU9YXJndW1lbnRzO3JldHVybiB3LkRlZmVycmVkKGZ1bmN0aW9uKHQpe3cuZWFjaChuLGZ1bmN0aW9uKG4scil7dmFyIGk9ZyhlW3JbNF1dKSYmZVtyWzRdXTtvW3JbMV1dKGZ1bmN0aW9uKCl7dmFyIGU9aSYmaS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7ZSYmZyhlLnByb21pc2UpP2UucHJvbWlzZSgpLnByb2dyZXNzKHQubm90aWZ5KS5kb25lKHQucmVzb2x2ZSkuZmFpbCh0LnJlamVjdCk6dFtyWzBdKyJXaXRoIl0odGhpcyxpP1tlXTphcmd1bWVudHMpfSl9KSxlPW51bGx9KS5wcm9taXNlKCl9LHRoZW46ZnVuY3Rpb24odCxyLGkpe3ZhciBvPTA7ZnVuY3Rpb24gYSh0LG4scixpKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgcz10aGlzLHU9YXJndW1lbnRzLGw9ZnVuY3Rpb24oKXt2YXIgZSxsO2lmKCEodDxvKSl7aWYoKGU9ci5hcHBseShzLHUpKT09PW4ucHJvbWlzZSgpKXRocm93IG5ldyBUeXBlRXJyb3IoIlRoZW5hYmxlIHNlbGYtcmVzb2x1dGlvbiIpO2w9ZSYmKCJvYmplY3QiPT10eXBlb2YgZXx8ImZ1bmN0aW9uIj09dHlwZW9mIGUpJiZlLnRoZW4sZyhsKT9pP2wuY2FsbChlLGEobyxuLEksaSksYShvLG4sVyxpKSk6KG8rKyxsLmNhbGwoZSxhKG8sbixJLGkpLGEobyxuLFcsaSksYShvLG4sSSxuLm5vdGlmeVdpdGgpKSk6KHIhPT1JJiYocz12b2lkIDAsdT1bZV0pLChpfHxuLnJlc29sdmVXaXRoKShzLHUpKX19LGM9aT9sOmZ1bmN0aW9uKCl7dHJ5e2woKX1jYXRjaChlKXt3LkRlZmVycmVkLmV4Y2VwdGlvbkhvb2smJncuRGVmZXJyZWQuZXhjZXB0aW9uSG9vayhlLGMuc3RhY2tUcmFjZSksdCsxPj1vJiYociE9PVcmJihzPXZvaWQgMCx1PVtlXSksbi5yZWplY3RXaXRoKHMsdSkpfX07dD9jKCk6KHcuRGVmZXJyZWQuZ2V0U3RhY2tIb29rJiYoYy5zdGFja1RyYWNlPXcuRGVmZXJyZWQuZ2V0U3RhY2tIb29rKCkpLGUuc2V0VGltZW91dChjKSl9fXJldHVybiB3LkRlZmVycmVkKGZ1bmN0aW9uKGUpe25bMF1bM10uYWRkKGEoMCxlLGcoaSk/aTpJLGUubm90aWZ5V2l0aCkpLG5bMV1bM10uYWRkKGEoMCxlLGcodCk/dDpJKSksblsyXVszXS5hZGQoYSgwLGUsZyhyKT9yOlcpKX0pLnByb21pc2UoKX0scHJvbWlzZTpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbCE9ZT93LmV4dGVuZChlLGkpOml9fSxvPXt9O3JldHVybiB3LmVhY2gobixmdW5jdGlvbihlLHQpe3ZhciBhPXRbMl0scz10WzVdO2lbdFsxXV09YS5hZGQscyYmYS5hZGQoZnVuY3Rpb24oKXtyPXN9LG5bMy1lXVsyXS5kaXNhYmxlLG5bMy1lXVszXS5kaXNhYmxlLG5bMF1bMl0ubG9jayxuWzBdWzNdLmxvY2spLGEuYWRkKHRbM10uZmlyZSksb1t0WzBdXT1mdW5jdGlvbigpe3JldHVybiBvW3RbMF0rIldpdGgiXSh0aGlzPT09bz92b2lkIDA6dGhpcyxhcmd1bWVudHMpLHRoaXN9LG9bdFswXSsiV2l0aCJdPWEuZmlyZVdpdGh9KSxpLnByb21pc2UobyksdCYmdC5jYWxsKG8sbyksb30sd2hlbjpmdW5jdGlvbihlKXt2YXIgdD1hcmd1bWVudHMubGVuZ3RoLG49dCxyPUFycmF5KG4pLGk9by5jYWxsKGFyZ3VtZW50cyksYT13LkRlZmVycmVkKCkscz1mdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24obil7cltlXT10aGlzLGlbZV09YXJndW1lbnRzLmxlbmd0aD4xP28uY2FsbChhcmd1bWVudHMpOm4sLS10fHxhLnJlc29sdmVXaXRoKHIsaSl9fTtpZih0PD0xJiYoJChlLGEuZG9uZShzKG4pKS5yZXNvbHZlLGEucmVqZWN0LCF0KSwicGVuZGluZyI9PT1hLnN0YXRlKCl8fGcoaVtuXSYmaVtuXS50aGVuKSkpcmV0dXJuIGEudGhlbigpO3doaWxlKG4tLSkkKGlbbl0scyhuKSxhLnJlamVjdCk7cmV0dXJuIGEucHJvbWlzZSgpfX0pO3ZhciBCPS9eKEV2YWx8SW50ZXJuYWx8UmFuZ2V8UmVmZXJlbmNlfFN5bnRheHxUeXBlfFVSSSlFcnJvciQvO3cuRGVmZXJyZWQuZXhjZXB0aW9uSG9vaz1mdW5jdGlvbih0LG4pe2UuY29uc29sZSYmZS5jb25zb2xlLndhcm4mJnQmJkIudGVzdCh0Lm5hbWUpJiZlLmNvbnNvbGUud2FybigialF1ZXJ5LkRlZmVycmVkIGV4Y2VwdGlvbjogIit0Lm1lc3NhZ2UsdC5zdGFjayxuKX0sdy5yZWFkeUV4Y2VwdGlvbj1mdW5jdGlvbih0KXtlLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyB0fSl9O3ZhciBGPXcuRGVmZXJyZWQoKTt3LmZuLnJlYWR5PWZ1bmN0aW9uKGUpe3JldHVybiBGLnRoZW4oZSlbImNhdGNoIl0oZnVuY3Rpb24oZSl7dy5yZWFkeUV4Y2VwdGlvbihlKX0pLHRoaXN9LHcuZXh0ZW5kKHtpc1JlYWR5OiExLHJlYWR5V2FpdDoxLHJlYWR5OmZ1bmN0aW9uKGUpeyghMD09PWU/LS13LnJlYWR5V2FpdDp3LmlzUmVhZHkpfHwody5pc1JlYWR5PSEwLCEwIT09ZSYmLS13LnJlYWR5V2FpdD4wfHxGLnJlc29sdmVXaXRoKHIsW3ddKSl9fSksdy5yZWFkeS50aGVuPUYudGhlbjtmdW5jdGlvbiBfKCl7ci5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixfKSxlLnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvYWQiLF8pLHcucmVhZHkoKX0iY29tcGxldGUiPT09ci5yZWFkeVN0YXRlfHwibG9hZGluZyIhPT1yLnJlYWR5U3RhdGUmJiFyLmRvY3VtZW50RWxlbWVudC5kb1Njcm9sbD9lLnNldFRpbWVvdXQody5yZWFkeSk6KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsXyksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixfKSk7dmFyIHo9ZnVuY3Rpb24oZSx0LG4scixpLG8sYSl7dmFyIHM9MCx1PWUubGVuZ3RoLGw9bnVsbD09bjtpZigib2JqZWN0Ij09PXgobikpe2k9ITA7Zm9yKHMgaW4gbil6KGUsdCxzLG5bc10sITAsbyxhKX1lbHNlIGlmKHZvaWQgMCE9PXImJihpPSEwLGcocil8fChhPSEwKSxsJiYoYT8odC5jYWxsKGUsciksdD1udWxsKToobD10LHQ9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBsLmNhbGwodyhlKSxuKX0pKSx0KSlmb3IoO3M8dTtzKyspdChlW3NdLG4sYT9yOnIuY2FsbChlW3NdLHMsdChlW3NdLG4pKSk7cmV0dXJuIGk/ZTpsP3QuY2FsbChlKTp1P3QoZVswXSxuKTpvfSxYPS9eLW1zLS8sVT0vLShbYS16XSkvZztmdW5jdGlvbiBWKGUsdCl7cmV0dXJuIHQudG9VcHBlckNhc2UoKX1mdW5jdGlvbiBHKGUpe3JldHVybiBlLnJlcGxhY2UoWCwibXMtIikucmVwbGFjZShVLFYpfXZhciBZPWZ1bmN0aW9uKGUpe3JldHVybiAxPT09ZS5ub2RlVHlwZXx8OT09PWUubm9kZVR5cGV8fCErZS5ub2RlVHlwZX07ZnVuY3Rpb24gUSgpe3RoaXMuZXhwYW5kbz13LmV4cGFuZG8rUS51aWQrK31RLnVpZD0xLFEucHJvdG90eXBlPXtjYWNoZTpmdW5jdGlvbihlKXt2YXIgdD1lW3RoaXMuZXhwYW5kb107cmV0dXJuIHR8fCh0PXt9LFkoZSkmJihlLm5vZGVUeXBlP2VbdGhpcy5leHBhbmRvXT10Ok9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHRoaXMuZXhwYW5kbyx7dmFsdWU6dCxjb25maWd1cmFibGU6ITB9KSkpLHR9LHNldDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaT10aGlzLmNhY2hlKGUpO2lmKCJzdHJpbmciPT10eXBlb2YgdClpW0codCldPW47ZWxzZSBmb3IociBpbiB0KWlbRyhyKV09dFtyXTtyZXR1cm4gaX0sZ2V0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PXQ/dGhpcy5jYWNoZShlKTplW3RoaXMuZXhwYW5kb10mJmVbdGhpcy5leHBhbmRvXVtHKHQpXX0sYWNjZXNzOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdm9pZCAwPT09dHx8dCYmInN0cmluZyI9PXR5cGVvZiB0JiZ2b2lkIDA9PT1uP3RoaXMuZ2V0KGUsdCk6KHRoaXMuc2V0KGUsdCxuKSx2b2lkIDAhPT1uP246dCl9LHJlbW92ZTpmdW5jdGlvbihlLHQpe3ZhciBuLHI9ZVt0aGlzLmV4cGFuZG9dO2lmKHZvaWQgMCE9PXIpe2lmKHZvaWQgMCE9PXQpe249KHQ9QXJyYXkuaXNBcnJheSh0KT90Lm1hcChHKToodD1HKHQpKWluIHI/W3RdOnQubWF0Y2goTSl8fFtdKS5sZW5ndGg7d2hpbGUobi0tKWRlbGV0ZSByW3Rbbl1dfSh2b2lkIDA9PT10fHx3LmlzRW1wdHlPYmplY3QocikpJiYoZS5ub2RlVHlwZT9lW3RoaXMuZXhwYW5kb109dm9pZCAwOmRlbGV0ZSBlW3RoaXMuZXhwYW5kb10pfX0saGFzRGF0YTpmdW5jdGlvbihlKXt2YXIgdD1lW3RoaXMuZXhwYW5kb107cmV0dXJuIHZvaWQgMCE9PXQmJiF3LmlzRW1wdHlPYmplY3QodCl9fTt2YXIgSj1uZXcgUSxLPW5ldyBRLFo9L14oPzpce1tcd1xXXSpcfXxcW1tcd1xXXSpcXSkkLyxlZT0vW0EtWl0vZztmdW5jdGlvbiB0ZShlKXtyZXR1cm4idHJ1ZSI9PT1lfHwiZmFsc2UiIT09ZSYmKCJudWxsIj09PWU/bnVsbDplPT09K2UrIiI/K2U6Wi50ZXN0KGUpP0pTT04ucGFyc2UoZSk6ZSl9ZnVuY3Rpb24gbmUoZSx0LG4pe3ZhciByO2lmKHZvaWQgMD09PW4mJjE9PT1lLm5vZGVUeXBlKWlmKHI9ImRhdGEtIit0LnJlcGxhY2UoZWUsIi0kJiIpLnRvTG93ZXJDYXNlKCksInN0cmluZyI9PXR5cGVvZihuPWUuZ2V0QXR0cmlidXRlKHIpKSl7dHJ5e249dGUobil9Y2F0Y2goZSl7fUsuc2V0KGUsdCxuKX1lbHNlIG49dm9pZCAwO3JldHVybiBufXcuZXh0ZW5kKHtoYXNEYXRhOmZ1bmN0aW9uKGUpe3JldHVybiBLLmhhc0RhdGEoZSl8fEouaGFzRGF0YShlKX0sZGF0YTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIEsuYWNjZXNzKGUsdCxuKX0scmVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe0sucmVtb3ZlKGUsdCl9LF9kYXRhOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gSi5hY2Nlc3MoZSx0LG4pfSxfcmVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe0oucmVtb3ZlKGUsdCl9fSksdy5mbi5leHRlbmQoe2RhdGE6ZnVuY3Rpb24oZSx0KXt2YXIgbixyLGksbz10aGlzWzBdLGE9byYmby5hdHRyaWJ1dGVzO2lmKHZvaWQgMD09PWUpe2lmKHRoaXMubGVuZ3RoJiYoaT1LLmdldChvKSwxPT09by5ub2RlVHlwZSYmIUouZ2V0KG8sImhhc0RhdGFBdHRycyIpKSl7bj1hLmxlbmd0aDt3aGlsZShuLS0pYVtuXSYmMD09PShyPWFbbl0ubmFtZSkuaW5kZXhPZigiZGF0YS0iKSYmKHI9RyhyLnNsaWNlKDUpKSxuZShvLHIsaVtyXSkpO0ouc2V0KG8sImhhc0RhdGFBdHRycyIsITApfXJldHVybiBpfXJldHVybiJvYmplY3QiPT10eXBlb2YgZT90aGlzLmVhY2goZnVuY3Rpb24oKXtLLnNldCh0aGlzLGUpfSk6eih0aGlzLGZ1bmN0aW9uKHQpe3ZhciBuO2lmKG8mJnZvaWQgMD09PXQpe2lmKHZvaWQgMCE9PShuPUsuZ2V0KG8sZSkpKXJldHVybiBuO2lmKHZvaWQgMCE9PShuPW5lKG8sZSkpKXJldHVybiBufWVsc2UgdGhpcy5lYWNoKGZ1bmN0aW9uKCl7Sy5zZXQodGhpcyxlLHQpfSl9LG51bGwsdCxhcmd1bWVudHMubGVuZ3RoPjEsbnVsbCwhMCl9LHJlbW92ZURhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe0sucmVtb3ZlKHRoaXMsZSl9KX19KSx3LmV4dGVuZCh7cXVldWU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByO2lmKGUpcmV0dXJuIHQ9KHR8fCJmeCIpKyJxdWV1ZSIscj1KLmdldChlLHQpLG4mJighcnx8QXJyYXkuaXNBcnJheShuKT9yPUouYWNjZXNzKGUsdCx3Lm1ha2VBcnJheShuKSk6ci5wdXNoKG4pKSxyfHxbXX0sZGVxdWV1ZTpmdW5jdGlvbihlLHQpe3Q9dHx8ImZ4Ijt2YXIgbj13LnF1ZXVlKGUsdCkscj1uLmxlbmd0aCxpPW4uc2hpZnQoKSxvPXcuX3F1ZXVlSG9va3MoZSx0KSxhPWZ1bmN0aW9uKCl7dy5kZXF1ZXVlKGUsdCl9OyJpbnByb2dyZXNzIj09PWkmJihpPW4uc2hpZnQoKSxyLS0pLGkmJigiZngiPT09dCYmbi51bnNoaWZ0KCJpbnByb2dyZXNzIiksZGVsZXRlIG8uc3RvcCxpLmNhbGwoZSxhLG8pKSwhciYmbyYmby5lbXB0eS5maXJlKCl9LF9xdWV1ZUhvb2tzOmZ1bmN0aW9uKGUsdCl7dmFyIG49dCsicXVldWVIb29rcyI7cmV0dXJuIEouZ2V0KGUsbil8fEouYWNjZXNzKGUsbix7ZW1wdHk6dy5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IikuYWRkKGZ1bmN0aW9uKCl7Si5yZW1vdmUoZSxbdCsicXVldWUiLG5dKX0pfSl9fSksdy5mbi5leHRlbmQoe3F1ZXVlOmZ1bmN0aW9uKGUsdCl7dmFyIG49MjtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIGUmJih0PWUsZT0iZngiLG4tLSksYXJndW1lbnRzLmxlbmd0aDxuP3cucXVldWUodGhpc1swXSxlKTp2b2lkIDA9PT10P3RoaXM6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIG49dy5xdWV1ZSh0aGlzLGUsdCk7dy5fcXVldWVIb29rcyh0aGlzLGUpLCJmeCI9PT1lJiYiaW5wcm9ncmVzcyIhPT1uWzBdJiZ3LmRlcXVldWUodGhpcyxlKX0pfSxkZXF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt3LmRlcXVldWUodGhpcyxlKX0pfSxjbGVhclF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnF1ZXVlKGV8fCJmeCIsW10pfSxwcm9taXNlOmZ1bmN0aW9uKGUsdCl7dmFyIG4scj0xLGk9dy5EZWZlcnJlZCgpLG89dGhpcyxhPXRoaXMubGVuZ3RoLHM9ZnVuY3Rpb24oKXstLXJ8fGkucmVzb2x2ZVdpdGgobyxbb10pfTsic3RyaW5nIiE9dHlwZW9mIGUmJih0PWUsZT12b2lkIDApLGU9ZXx8ImZ4Ijt3aGlsZShhLS0pKG49Si5nZXQob1thXSxlKyJxdWV1ZUhvb2tzIikpJiZuLmVtcHR5JiYocisrLG4uZW1wdHkuYWRkKHMpKTtyZXR1cm4gcygpLGkucHJvbWlzZSh0KX19KTt2YXIgcmU9L1srLV0/KD86XGQqXC58KVxkKyg/OltlRV1bKy1dP1xkK3wpLy5zb3VyY2UsaWU9bmV3IFJlZ0V4cCgiXig/OihbKy1dKT18KSgiK3JlKyIpKFthLXolXSopJCIsImkiKSxvZT1bIlRvcCIsIlJpZ2h0IiwiQm90dG9tIiwiTGVmdCJdLGFlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIm5vbmUiPT09KGU9dHx8ZSkuc3R5bGUuZGlzcGxheXx8IiI9PT1lLnN0eWxlLmRpc3BsYXkmJncuY29udGFpbnMoZS5vd25lckRvY3VtZW50LGUpJiYibm9uZSI9PT13LmNzcyhlLCJkaXNwbGF5Iil9LHNlPWZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpLG8sYT17fTtmb3IobyBpbiB0KWFbb109ZS5zdHlsZVtvXSxlLnN0eWxlW29dPXRbb107aT1uLmFwcGx5KGUscnx8W10pO2ZvcihvIGluIHQpZS5zdHlsZVtvXT1hW29dO3JldHVybiBpfTtmdW5jdGlvbiB1ZShlLHQsbixyKXt2YXIgaSxvLGE9MjAscz1yP2Z1bmN0aW9uKCl7cmV0dXJuIHIuY3VyKCl9OmZ1bmN0aW9uKCl7cmV0dXJuIHcuY3NzKGUsdCwiIil9LHU9cygpLGw9biYmblszXXx8KHcuY3NzTnVtYmVyW3RdPyIiOiJweCIpLGM9KHcuY3NzTnVtYmVyW3RdfHwicHgiIT09bCYmK3UpJiZpZS5leGVjKHcuY3NzKGUsdCkpO2lmKGMmJmNbM10hPT1sKXt1Lz0yLGw9bHx8Y1szXSxjPSt1fHwxO3doaWxlKGEtLSl3LnN0eWxlKGUsdCxjK2wpLCgxLW8pKigxLShvPXMoKS91fHwuNSkpPD0wJiYoYT0wKSxjLz1vO2MqPTIsdy5zdHlsZShlLHQsYytsKSxuPW58fFtdfXJldHVybiBuJiYoYz0rY3x8K3V8fDAsaT1uWzFdP2MrKG5bMV0rMSkqblsyXTorblsyXSxyJiYoci51bml0PWwsci5zdGFydD1jLHIuZW5kPWkpKSxpfXZhciBsZT17fTtmdW5jdGlvbiBjZShlKXt2YXIgdCxuPWUub3duZXJEb2N1bWVudCxyPWUubm9kZU5hbWUsaT1sZVtyXTtyZXR1cm4gaXx8KHQ9bi5ib2R5LmFwcGVuZENoaWxkKG4uY3JlYXRlRWxlbWVudChyKSksaT13LmNzcyh0LCJkaXNwbGF5IiksdC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHQpLCJub25lIj09PWkmJihpPSJibG9jayIpLGxlW3JdPWksaSl9ZnVuY3Rpb24gZmUoZSx0KXtmb3IodmFyIG4scixpPVtdLG89MCxhPWUubGVuZ3RoO288YTtvKyspKHI9ZVtvXSkuc3R5bGUmJihuPXIuc3R5bGUuZGlzcGxheSx0Pygibm9uZSI9PT1uJiYoaVtvXT1KLmdldChyLCJkaXNwbGF5Iil8fG51bGwsaVtvXXx8KHIuc3R5bGUuZGlzcGxheT0iIikpLCIiPT09ci5zdHlsZS5kaXNwbGF5JiZhZShyKSYmKGlbb109Y2UocikpKToibm9uZSIhPT1uJiYoaVtvXT0ibm9uZSIsSi5zZXQociwiZGlzcGxheSIsbikpKTtmb3Iobz0wO288YTtvKyspbnVsbCE9aVtvXSYmKGVbb10uc3R5bGUuZGlzcGxheT1pW29dKTtyZXR1cm4gZX13LmZuLmV4dGVuZCh7c2hvdzpmdW5jdGlvbigpe3JldHVybiBmZSh0aGlzLCEwKX0saGlkZTpmdW5jdGlvbigpe3JldHVybiBmZSh0aGlzKX0sdG9nZ2xlOmZ1bmN0aW9uKGUpe3JldHVybiJib29sZWFuIj09dHlwZW9mIGU/ZT90aGlzLnNob3coKTp0aGlzLmhpZGUoKTp0aGlzLmVhY2goZnVuY3Rpb24oKXthZSh0aGlzKT93KHRoaXMpLnNob3coKTp3KHRoaXMpLmhpZGUoKX0pfX0pO3ZhciBwZT0vXig/OmNoZWNrYm94fHJhZGlvKSQvaSxkZT0vPChbYS16XVteXC9cMD5ceDIwXHRcclxuXGZdKykvaSxoZT0vXiR8Xm1vZHVsZSR8XC8oPzpqYXZhfGVjbWEpc2NyaXB0L2ksZ2U9e29wdGlvbjpbMSwiPHNlbGVjdCBtdWx0aXBsZT0nbXVsdGlwbGUnPiIsIjwvc2VsZWN0PiJdLHRoZWFkOlsxLCI8dGFibGU+IiwiPC90YWJsZT4iXSxjb2w6WzIsIjx0YWJsZT48Y29sZ3JvdXA+IiwiPC9jb2xncm91cD48L3RhYmxlPiJdLHRyOlsyLCI8dGFibGU+PHRib2R5PiIsIjwvdGJvZHk+PC90YWJsZT4iXSx0ZDpbMywiPHRhYmxlPjx0Ym9keT48dHI+IiwiPC90cj48L3Rib2R5PjwvdGFibGU+Il0sX2RlZmF1bHQ6WzAsIiIsIiJdfTtnZS5vcHRncm91cD1nZS5vcHRpb24sZ2UudGJvZHk9Z2UudGZvb3Q9Z2UuY29sZ3JvdXA9Z2UuY2FwdGlvbj1nZS50aGVhZCxnZS50aD1nZS50ZDtmdW5jdGlvbiB5ZShlLHQpe3ZhciBuO3JldHVybiBuPSJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRFbGVtZW50c0J5VGFnTmFtZT9lLmdldEVsZW1lbnRzQnlUYWdOYW1lKHR8fCIqIik6InVuZGVmaW5lZCIhPXR5cGVvZiBlLnF1ZXJ5U2VsZWN0b3JBbGw/ZS5xdWVyeVNlbGVjdG9yQWxsKHR8fCIqIik6W10sdm9pZCAwPT09dHx8dCYmTihlLHQpP3cubWVyZ2UoW2VdLG4pOm59ZnVuY3Rpb24gdmUoZSx0KXtmb3IodmFyIG49MCxyPWUubGVuZ3RoO248cjtuKyspSi5zZXQoZVtuXSwiZ2xvYmFsRXZhbCIsIXR8fEouZ2V0KHRbbl0sImdsb2JhbEV2YWwiKSl9dmFyIG1lPS88fCYjP1x3KzsvO2Z1bmN0aW9uIHhlKGUsdCxuLHIsaSl7Zm9yKHZhciBvLGEscyx1LGwsYyxmPXQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLHA9W10sZD0wLGg9ZS5sZW5ndGg7ZDxoO2QrKylpZigobz1lW2RdKXx8MD09PW8paWYoIm9iamVjdCI9PT14KG8pKXcubWVyZ2UocCxvLm5vZGVUeXBlP1tvXTpvKTtlbHNlIGlmKG1lLnRlc3Qobykpe2E9YXx8Zi5hcHBlbmRDaGlsZCh0LmNyZWF0ZUVsZW1lbnQoImRpdiIpKSxzPShkZS5leGVjKG8pfHxbIiIsIiJdKVsxXS50b0xvd2VyQ2FzZSgpLHU9Z2Vbc118fGdlLl9kZWZhdWx0LGEuaW5uZXJIVE1MPXVbMV0rdy5odG1sUHJlZmlsdGVyKG8pK3VbMl0sYz11WzBdO3doaWxlKGMtLSlhPWEubGFzdENoaWxkO3cubWVyZ2UocCxhLmNoaWxkTm9kZXMpLChhPWYuZmlyc3RDaGlsZCkudGV4dENvbnRlbnQ9IiJ9ZWxzZSBwLnB1c2godC5jcmVhdGVUZXh0Tm9kZShvKSk7Zi50ZXh0Q29udGVudD0iIixkPTA7d2hpbGUobz1wW2QrK10paWYociYmdy5pbkFycmF5KG8scik+LTEpaSYmaS5wdXNoKG8pO2Vsc2UgaWYobD13LmNvbnRhaW5zKG8ub3duZXJEb2N1bWVudCxvKSxhPXllKGYuYXBwZW5kQ2hpbGQobyksInNjcmlwdCIpLGwmJnZlKGEpLG4pe2M9MDt3aGlsZShvPWFbYysrXSloZS50ZXN0KG8udHlwZXx8IiIpJiZuLnB1c2gobyl9cmV0dXJuIGZ9IWZ1bmN0aW9uKCl7dmFyIGU9ci5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCkuYXBwZW5kQ2hpbGQoci5jcmVhdGVFbGVtZW50KCJkaXYiKSksdD1yLmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7dC5zZXRBdHRyaWJ1dGUoInR5cGUiLCJyYWRpbyIpLHQuc2V0QXR0cmlidXRlKCJjaGVja2VkIiwiY2hlY2tlZCIpLHQuc2V0QXR0cmlidXRlKCJuYW1lIiwidCIpLGUuYXBwZW5kQ2hpbGQodCksaC5jaGVja0Nsb25lPWUuY2xvbmVOb2RlKCEwKS5jbG9uZU5vZGUoITApLmxhc3RDaGlsZC5jaGVja2VkLGUuaW5uZXJIVE1MPSI8dGV4dGFyZWE+eDwvdGV4dGFyZWE+IixoLm5vQ2xvbmVDaGVja2VkPSEhZS5jbG9uZU5vZGUoITApLmxhc3RDaGlsZC5kZWZhdWx0VmFsdWV9KCk7dmFyIGJlPXIuZG9jdW1lbnRFbGVtZW50LHdlPS9ea2V5LyxUZT0vXig/Om1vdXNlfHBvaW50ZXJ8Y29udGV4dG1lbnV8ZHJhZ3xkcm9wKXxjbGljay8sQ2U9L14oW14uXSopKD86XC4oLispfCkvO2Z1bmN0aW9uIEVlKCl7cmV0dXJuITB9ZnVuY3Rpb24ga2UoKXtyZXR1cm4hMX1mdW5jdGlvbiBTZSgpe3RyeXtyZXR1cm4gci5hY3RpdmVFbGVtZW50fWNhdGNoKGUpe319ZnVuY3Rpb24gRGUoZSx0LG4scixpLG8pe3ZhciBhLHM7aWYoIm9iamVjdCI9PXR5cGVvZiB0KXsic3RyaW5nIiE9dHlwZW9mIG4mJihyPXJ8fG4sbj12b2lkIDApO2ZvcihzIGluIHQpRGUoZSxzLG4scix0W3NdLG8pO3JldHVybiBlfWlmKG51bGw9PXImJm51bGw9PWk/KGk9bixyPW49dm9pZCAwKTpudWxsPT1pJiYoInN0cmluZyI9PXR5cGVvZiBuPyhpPXIscj12b2lkIDApOihpPXIscj1uLG49dm9pZCAwKSksITE9PT1pKWk9a2U7ZWxzZSBpZighaSlyZXR1cm4gZTtyZXR1cm4gMT09PW8mJihhPWksKGk9ZnVuY3Rpb24oZSl7cmV0dXJuIHcoKS5vZmYoZSksYS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9KS5ndWlkPWEuZ3VpZHx8KGEuZ3VpZD13Lmd1aWQrKykpLGUuZWFjaChmdW5jdGlvbigpe3cuZXZlbnQuYWRkKHRoaXMsdCxpLHIsbil9KX13LmV2ZW50PXtnbG9iYWw6e30sYWRkOmZ1bmN0aW9uKGUsdCxuLHIsaSl7dmFyIG8sYSxzLHUsbCxjLGYscCxkLGgsZyx5PUouZ2V0KGUpO2lmKHkpe24uaGFuZGxlciYmKG49KG89bikuaGFuZGxlcixpPW8uc2VsZWN0b3IpLGkmJncuZmluZC5tYXRjaGVzU2VsZWN0b3IoYmUsaSksbi5ndWlkfHwobi5ndWlkPXcuZ3VpZCsrKSwodT15LmV2ZW50cyl8fCh1PXkuZXZlbnRzPXt9KSwoYT15LmhhbmRsZSl8fChhPXkuaGFuZGxlPWZ1bmN0aW9uKHQpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgdyYmdy5ldmVudC50cmlnZ2VyZWQhPT10LnR5cGU/dy5ldmVudC5kaXNwYXRjaC5hcHBseShlLGFyZ3VtZW50cyk6dm9pZCAwfSksbD0odD0odHx8IiIpLm1hdGNoKE0pfHxbIiJdKS5sZW5ndGg7d2hpbGUobC0tKWQ9Zz0ocz1DZS5leGVjKHRbbF0pfHxbXSlbMV0saD0oc1syXXx8IiIpLnNwbGl0KCIuIikuc29ydCgpLGQmJihmPXcuZXZlbnQuc3BlY2lhbFtkXXx8e30sZD0oaT9mLmRlbGVnYXRlVHlwZTpmLmJpbmRUeXBlKXx8ZCxmPXcuZXZlbnQuc3BlY2lhbFtkXXx8e30sYz13LmV4dGVuZCh7dHlwZTpkLG9yaWdUeXBlOmcsZGF0YTpyLGhhbmRsZXI6bixndWlkOm4uZ3VpZCxzZWxlY3RvcjppLG5lZWRzQ29udGV4dDppJiZ3LmV4cHIubWF0Y2gubmVlZHNDb250ZXh0LnRlc3QoaSksbmFtZXNwYWNlOmguam9pbigiLiIpfSxvKSwocD11W2RdKXx8KChwPXVbZF09W10pLmRlbGVnYXRlQ291bnQ9MCxmLnNldHVwJiYhMSE9PWYuc2V0dXAuY2FsbChlLHIsaCxhKXx8ZS5hZGRFdmVudExpc3RlbmVyJiZlLmFkZEV2ZW50TGlzdGVuZXIoZCxhKSksZi5hZGQmJihmLmFkZC5jYWxsKGUsYyksYy5oYW5kbGVyLmd1aWR8fChjLmhhbmRsZXIuZ3VpZD1uLmd1aWQpKSxpP3Auc3BsaWNlKHAuZGVsZWdhdGVDb3VudCsrLDAsYyk6cC5wdXNoKGMpLHcuZXZlbnQuZ2xvYmFsW2RdPSEwKX19LHJlbW92ZTpmdW5jdGlvbihlLHQsbixyLGkpe3ZhciBvLGEscyx1LGwsYyxmLHAsZCxoLGcseT1KLmhhc0RhdGEoZSkmJkouZ2V0KGUpO2lmKHkmJih1PXkuZXZlbnRzKSl7bD0odD0odHx8IiIpLm1hdGNoKE0pfHxbIiJdKS5sZW5ndGg7d2hpbGUobC0tKWlmKHM9Q2UuZXhlYyh0W2xdKXx8W10sZD1nPXNbMV0saD0oc1syXXx8IiIpLnNwbGl0KCIuIikuc29ydCgpLGQpe2Y9dy5ldmVudC5zcGVjaWFsW2RdfHx7fSxwPXVbZD0ocj9mLmRlbGVnYXRlVHlwZTpmLmJpbmRUeXBlKXx8ZF18fFtdLHM9c1syXSYmbmV3IFJlZ0V4cCgiKF58XFwuKSIraC5qb2luKCJcXC4oPzouKlxcLnwpIikrIihcXC58JCkiKSxhPW89cC5sZW5ndGg7d2hpbGUoby0tKWM9cFtvXSwhaSYmZyE9PWMub3JpZ1R5cGV8fG4mJm4uZ3VpZCE9PWMuZ3VpZHx8cyYmIXMudGVzdChjLm5hbWVzcGFjZSl8fHImJnIhPT1jLnNlbGVjdG9yJiYoIioqIiE9PXJ8fCFjLnNlbGVjdG9yKXx8KHAuc3BsaWNlKG8sMSksYy5zZWxlY3RvciYmcC5kZWxlZ2F0ZUNvdW50LS0sZi5yZW1vdmUmJmYucmVtb3ZlLmNhbGwoZSxjKSk7YSYmIXAubGVuZ3RoJiYoZi50ZWFyZG93biYmITEhPT1mLnRlYXJkb3duLmNhbGwoZSxoLHkuaGFuZGxlKXx8dy5yZW1vdmVFdmVudChlLGQseS5oYW5kbGUpLGRlbGV0ZSB1W2RdKX1lbHNlIGZvcihkIGluIHUpdy5ldmVudC5yZW1vdmUoZSxkK3RbbF0sbixyLCEwKTt3LmlzRW1wdHlPYmplY3QodSkmJkoucmVtb3ZlKGUsImhhbmRsZSBldmVudHMiKX19LGRpc3BhdGNoOmZ1bmN0aW9uKGUpe3ZhciB0PXcuZXZlbnQuZml4KGUpLG4scixpLG8sYSxzLHU9bmV3IEFycmF5KGFyZ3VtZW50cy5sZW5ndGgpLGw9KEouZ2V0KHRoaXMsImV2ZW50cyIpfHx7fSlbdC50eXBlXXx8W10sYz13LmV2ZW50LnNwZWNpYWxbdC50eXBlXXx8e307Zm9yKHVbMF09dCxuPTE7bjxhcmd1bWVudHMubGVuZ3RoO24rKyl1W25dPWFyZ3VtZW50c1tuXTtpZih0LmRlbGVnYXRlVGFyZ2V0PXRoaXMsIWMucHJlRGlzcGF0Y2h8fCExIT09Yy5wcmVEaXNwYXRjaC5jYWxsKHRoaXMsdCkpe3M9dy5ldmVudC5oYW5kbGVycy5jYWxsKHRoaXMsdCxsKSxuPTA7d2hpbGUoKG89c1tuKytdKSYmIXQuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSl7dC5jdXJyZW50VGFyZ2V0PW8uZWxlbSxyPTA7d2hpbGUoKGE9by5oYW5kbGVyc1tyKytdKSYmIXQuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQoKSl0LnJuYW1lc3BhY2UmJiF0LnJuYW1lc3BhY2UudGVzdChhLm5hbWVzcGFjZSl8fCh0LmhhbmRsZU9iaj1hLHQuZGF0YT1hLmRhdGEsdm9pZCAwIT09KGk9KCh3LmV2ZW50LnNwZWNpYWxbYS5vcmlnVHlwZV18fHt9KS5oYW5kbGV8fGEuaGFuZGxlcikuYXBwbHkoby5lbGVtLHUpKSYmITE9PT0odC5yZXN1bHQ9aSkmJih0LnByZXZlbnREZWZhdWx0KCksdC5zdG9wUHJvcGFnYXRpb24oKSkpfXJldHVybiBjLnBvc3REaXNwYXRjaCYmYy5wb3N0RGlzcGF0Y2guY2FsbCh0aGlzLHQpLHQucmVzdWx0fX0saGFuZGxlcnM6ZnVuY3Rpb24oZSx0KXt2YXIgbixyLGksbyxhLHM9W10sdT10LmRlbGVnYXRlQ291bnQsbD1lLnRhcmdldDtpZih1JiZsLm5vZGVUeXBlJiYhKCJjbGljayI9PT1lLnR5cGUmJmUuYnV0dG9uPj0xKSlmb3IoO2whPT10aGlzO2w9bC5wYXJlbnROb2RlfHx0aGlzKWlmKDE9PT1sLm5vZGVUeXBlJiYoImNsaWNrIiE9PWUudHlwZXx8ITAhPT1sLmRpc2FibGVkKSl7Zm9yKG89W10sYT17fSxuPTA7bjx1O24rKyl2b2lkIDA9PT1hW2k9KHI9dFtuXSkuc2VsZWN0b3IrIiAiXSYmKGFbaV09ci5uZWVkc0NvbnRleHQ/dyhpLHRoaXMpLmluZGV4KGwpPi0xOncuZmluZChpLHRoaXMsbnVsbCxbbF0pLmxlbmd0aCksYVtpXSYmby5wdXNoKHIpO28ubGVuZ3RoJiZzLnB1c2goe2VsZW06bCxoYW5kbGVyczpvfSl9cmV0dXJuIGw9dGhpcyx1PHQubGVuZ3RoJiZzLnB1c2goe2VsZW06bCxoYW5kbGVyczp0LnNsaWNlKHUpfSksc30sYWRkUHJvcDpmdW5jdGlvbihlLHQpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh3LkV2ZW50LnByb3RvdHlwZSxlLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCxnZXQ6Zyh0KT9mdW5jdGlvbigpe2lmKHRoaXMub3JpZ2luYWxFdmVudClyZXR1cm4gdCh0aGlzLm9yaWdpbmFsRXZlbnQpfTpmdW5jdGlvbigpe2lmKHRoaXMub3JpZ2luYWxFdmVudClyZXR1cm4gdGhpcy5vcmlnaW5hbEV2ZW50W2VdfSxzZXQ6ZnVuY3Rpb24odCl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsZSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6dH0pfX0pfSxmaXg6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbdy5leHBhbmRvXT9lOm5ldyB3LkV2ZW50KGUpfSxzcGVjaWFsOntsb2FkOntub0J1YmJsZTohMH0sZm9jdXM6e3RyaWdnZXI6ZnVuY3Rpb24oKXtpZih0aGlzIT09U2UoKSYmdGhpcy5mb2N1cylyZXR1cm4gdGhpcy5mb2N1cygpLCExfSxkZWxlZ2F0ZVR5cGU6ImZvY3VzaW4ifSxibHVyOnt0cmlnZ2VyOmZ1bmN0aW9uKCl7aWYodGhpcz09PVNlKCkmJnRoaXMuYmx1cilyZXR1cm4gdGhpcy5ibHVyKCksITF9LGRlbGVnYXRlVHlwZToiZm9jdXNvdXQifSxjbGljazp7dHJpZ2dlcjpmdW5jdGlvbigpe2lmKCJjaGVja2JveCI9PT10aGlzLnR5cGUmJnRoaXMuY2xpY2smJk4odGhpcywiaW5wdXQiKSlyZXR1cm4gdGhpcy5jbGljaygpLCExfSxfZGVmYXVsdDpmdW5jdGlvbihlKXtyZXR1cm4gTihlLnRhcmdldCwiYSIpfX0sYmVmb3JldW5sb2FkOntwb3N0RGlzcGF0Y2g6ZnVuY3Rpb24oZSl7dm9pZCAwIT09ZS5yZXN1bHQmJmUub3JpZ2luYWxFdmVudCYmKGUub3JpZ2luYWxFdmVudC5yZXR1cm5WYWx1ZT1lLnJlc3VsdCl9fX19LHcucmVtb3ZlRXZlbnQ9ZnVuY3Rpb24oZSx0LG4pe2UucmVtb3ZlRXZlbnRMaXN0ZW5lciYmZS5yZW1vdmVFdmVudExpc3RlbmVyKHQsbil9LHcuRXZlbnQ9ZnVuY3Rpb24oZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiB3LkV2ZW50KSlyZXR1cm4gbmV3IHcuRXZlbnQoZSx0KTtlJiZlLnR5cGU/KHRoaXMub3JpZ2luYWxFdmVudD1lLHRoaXMudHlwZT1lLnR5cGUsdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9ZS5kZWZhdWx0UHJldmVudGVkfHx2b2lkIDA9PT1lLmRlZmF1bHRQcmV2ZW50ZWQmJiExPT09ZS5yZXR1cm5WYWx1ZT9FZTprZSx0aGlzLnRhcmdldD1lLnRhcmdldCYmMz09PWUudGFyZ2V0Lm5vZGVUeXBlP2UudGFyZ2V0LnBhcmVudE5vZGU6ZS50YXJnZXQsdGhpcy5jdXJyZW50VGFyZ2V0PWUuY3VycmVudFRhcmdldCx0aGlzLnJlbGF0ZWRUYXJnZXQ9ZS5yZWxhdGVkVGFyZ2V0KTp0aGlzLnR5cGU9ZSx0JiZ3LmV4dGVuZCh0aGlzLHQpLHRoaXMudGltZVN0YW1wPWUmJmUudGltZVN0YW1wfHxEYXRlLm5vdygpLHRoaXNbdy5leHBhbmRvXT0hMH0sdy5FdmVudC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOncuRXZlbnQsaXNEZWZhdWx0UHJldmVudGVkOmtlLGlzUHJvcGFnYXRpb25TdG9wcGVkOmtlLGlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkOmtlLGlzU2ltdWxhdGVkOiExLHByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vcmlnaW5hbEV2ZW50O3RoaXMuaXNEZWZhdWx0UHJldmVudGVkPUVlLGUmJiF0aGlzLmlzU2ltdWxhdGVkJiZlLnByZXZlbnREZWZhdWx0KCl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3JpZ2luYWxFdmVudDt0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPUVlLGUmJiF0aGlzLmlzU2ltdWxhdGVkJiZlLnN0b3BQcm9wYWdhdGlvbigpfSxzdG9wSW1tZWRpYXRlUHJvcGFnYXRpb246ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm9yaWdpbmFsRXZlbnQ7dGhpcy5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZD1FZSxlJiYhdGhpcy5pc1NpbXVsYXRlZCYmZS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSx0aGlzLnN0b3BQcm9wYWdhdGlvbigpfX0sdy5lYWNoKHthbHRLZXk6ITAsYnViYmxlczohMCxjYW5jZWxhYmxlOiEwLGNoYW5nZWRUb3VjaGVzOiEwLGN0cmxLZXk6ITAsZGV0YWlsOiEwLGV2ZW50UGhhc2U6ITAsbWV0YUtleTohMCxwYWdlWDohMCxwYWdlWTohMCxzaGlmdEtleTohMCx2aWV3OiEwLCJjaGFyIjohMCxjaGFyQ29kZTohMCxrZXk6ITAsa2V5Q29kZTohMCxidXR0b246ITAsYnV0dG9uczohMCxjbGllbnRYOiEwLGNsaWVudFk6ITAsb2Zmc2V0WDohMCxvZmZzZXRZOiEwLHBvaW50ZXJJZDohMCxwb2ludGVyVHlwZTohMCxzY3JlZW5YOiEwLHNjcmVlblk6ITAsdGFyZ2V0VG91Y2hlczohMCx0b0VsZW1lbnQ6ITAsdG91Y2hlczohMCx3aGljaDpmdW5jdGlvbihlKXt2YXIgdD1lLmJ1dHRvbjtyZXR1cm4gbnVsbD09ZS53aGljaCYmd2UudGVzdChlLnR5cGUpP251bGwhPWUuY2hhckNvZGU/ZS5jaGFyQ29kZTplLmtleUNvZGU6IWUud2hpY2gmJnZvaWQgMCE9PXQmJlRlLnRlc3QoZS50eXBlKT8xJnQ/MToyJnQ/Mzo0JnQ/MjowOmUud2hpY2h9fSx3LmV2ZW50LmFkZFByb3ApLHcuZWFjaCh7bW91c2VlbnRlcjoibW91c2VvdmVyIixtb3VzZWxlYXZlOiJtb3VzZW91dCIscG9pbnRlcmVudGVyOiJwb2ludGVyb3ZlciIscG9pbnRlcmxlYXZlOiJwb2ludGVyb3V0In0sZnVuY3Rpb24oZSx0KXt3LmV2ZW50LnNwZWNpYWxbZV09e2RlbGVnYXRlVHlwZTp0LGJpbmRUeXBlOnQsaGFuZGxlOmZ1bmN0aW9uKGUpe3ZhciBuLHI9dGhpcyxpPWUucmVsYXRlZFRhcmdldCxvPWUuaGFuZGxlT2JqO3JldHVybiBpJiYoaT09PXJ8fHcuY29udGFpbnMocixpKSl8fChlLnR5cGU9by5vcmlnVHlwZSxuPW8uaGFuZGxlci5hcHBseSh0aGlzLGFyZ3VtZW50cyksZS50eXBlPXQpLG59fX0pLHcuZm4uZXh0ZW5kKHtvbjpmdW5jdGlvbihlLHQsbixyKXtyZXR1cm4gRGUodGhpcyxlLHQsbixyKX0sb25lOmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiBEZSh0aGlzLGUsdCxuLHIsMSl9LG9mZjpmdW5jdGlvbihlLHQsbil7dmFyIHIsaTtpZihlJiZlLnByZXZlbnREZWZhdWx0JiZlLmhhbmRsZU9iailyZXR1cm4gcj1lLmhhbmRsZU9iaix3KGUuZGVsZWdhdGVUYXJnZXQpLm9mZihyLm5hbWVzcGFjZT9yLm9yaWdUeXBlKyIuIityLm5hbWVzcGFjZTpyLm9yaWdUeXBlLHIuc2VsZWN0b3Isci5oYW5kbGVyKSx0aGlzO2lmKCJvYmplY3QiPT10eXBlb2YgZSl7Zm9yKGkgaW4gZSl0aGlzLm9mZihpLHQsZVtpXSk7cmV0dXJuIHRoaXN9cmV0dXJuITEhPT10JiYiZnVuY3Rpb24iIT10eXBlb2YgdHx8KG49dCx0PXZvaWQgMCksITE9PT1uJiYobj1rZSksdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dy5ldmVudC5yZW1vdmUodGhpcyxlLG4sdCl9KX19KTt2YXIgTmU9LzwoPyFhcmVhfGJyfGNvbHxlbWJlZHxocnxpbWd8aW5wdXR8bGlua3xtZXRhfHBhcmFtKSgoW2Etel1bXlwvXDA+XHgyMFx0XHJcblxmXSopW14+XSopXC8+L2dpLEFlPS88c2NyaXB0fDxzdHlsZXw8bGluay9pLGplPS9jaGVja2VkXHMqKD86W149XXw9XHMqLmNoZWNrZWQuKS9pLHFlPS9eXHMqPCEoPzpcW0NEQVRBXFt8LS0pfCg/OlxdXF18LS0pPlxzKiQvZztmdW5jdGlvbiBMZShlLHQpe3JldHVybiBOKGUsInRhYmxlIikmJk4oMTEhPT10Lm5vZGVUeXBlP3Q6dC5maXJzdENoaWxkLCJ0ciIpP3coZSkuY2hpbGRyZW4oInRib2R5IilbMF18fGU6ZX1mdW5jdGlvbiBIZShlKXtyZXR1cm4gZS50eXBlPShudWxsIT09ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSkrIi8iK2UudHlwZSxlfWZ1bmN0aW9uIE9lKGUpe3JldHVybiJ0cnVlLyI9PT0oZS50eXBlfHwiIikuc2xpY2UoMCw1KT9lLnR5cGU9ZS50eXBlLnNsaWNlKDUpOmUucmVtb3ZlQXR0cmlidXRlKCJ0eXBlIiksZX1mdW5jdGlvbiBQZShlLHQpe3ZhciBuLHIsaSxvLGEscyx1LGw7aWYoMT09PXQubm9kZVR5cGUpe2lmKEouaGFzRGF0YShlKSYmKG89Si5hY2Nlc3MoZSksYT1KLnNldCh0LG8pLGw9by5ldmVudHMpKXtkZWxldGUgYS5oYW5kbGUsYS5ldmVudHM9e307Zm9yKGkgaW4gbClmb3Iobj0wLHI9bFtpXS5sZW5ndGg7bjxyO24rKyl3LmV2ZW50LmFkZCh0LGksbFtpXVtuXSl9Sy5oYXNEYXRhKGUpJiYocz1LLmFjY2VzcyhlKSx1PXcuZXh0ZW5kKHt9LHMpLEsuc2V0KHQsdSkpfX1mdW5jdGlvbiBNZShlLHQpe3ZhciBuPXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKTsiaW5wdXQiPT09biYmcGUudGVzdChlLnR5cGUpP3QuY2hlY2tlZD1lLmNoZWNrZWQ6ImlucHV0IiE9PW4mJiJ0ZXh0YXJlYSIhPT1ufHwodC5kZWZhdWx0VmFsdWU9ZS5kZWZhdWx0VmFsdWUpfWZ1bmN0aW9uIFJlKGUsdCxuLHIpe3Q9YS5hcHBseShbXSx0KTt2YXIgaSxvLHMsdSxsLGMsZj0wLHA9ZS5sZW5ndGgsZD1wLTEseT10WzBdLHY9Zyh5KTtpZih2fHxwPjEmJiJzdHJpbmciPT10eXBlb2YgeSYmIWguY2hlY2tDbG9uZSYmamUudGVzdCh5KSlyZXR1cm4gZS5lYWNoKGZ1bmN0aW9uKGkpe3ZhciBvPWUuZXEoaSk7diYmKHRbMF09eS5jYWxsKHRoaXMsaSxvLmh0bWwoKSkpLFJlKG8sdCxuLHIpfSk7aWYocCYmKGk9eGUodCxlWzBdLm93bmVyRG9jdW1lbnQsITEsZSxyKSxvPWkuZmlyc3RDaGlsZCwxPT09aS5jaGlsZE5vZGVzLmxlbmd0aCYmKGk9byksb3x8cikpe2Zvcih1PShzPXcubWFwKHllKGksInNjcmlwdCIpLEhlKSkubGVuZ3RoO2Y8cDtmKyspbD1pLGYhPT1kJiYobD13LmNsb25lKGwsITAsITApLHUmJncubWVyZ2Uocyx5ZShsLCJzY3JpcHQiKSkpLG4uY2FsbChlW2ZdLGwsZik7aWYodSlmb3IoYz1zW3MubGVuZ3RoLTFdLm93bmVyRG9jdW1lbnQsdy5tYXAocyxPZSksZj0wO2Y8dTtmKyspbD1zW2ZdLGhlLnRlc3QobC50eXBlfHwiIikmJiFKLmFjY2VzcyhsLCJnbG9iYWxFdmFsIikmJncuY29udGFpbnMoYyxsKSYmKGwuc3JjJiYibW9kdWxlIiE9PShsLnR5cGV8fCIiKS50b0xvd2VyQ2FzZSgpP3cuX2V2YWxVcmwmJncuX2V2YWxVcmwobC5zcmMpOm0obC50ZXh0Q29udGVudC5yZXBsYWNlKHFlLCIiKSxjLGwpKX1yZXR1cm4gZX1mdW5jdGlvbiBJZShlLHQsbil7Zm9yKHZhciByLGk9dD93LmZpbHRlcih0LGUpOmUsbz0wO251bGwhPShyPWlbb10pO28rKylufHwxIT09ci5ub2RlVHlwZXx8dy5jbGVhbkRhdGEoeWUocikpLHIucGFyZW50Tm9kZSYmKG4mJncuY29udGFpbnMoci5vd25lckRvY3VtZW50LHIpJiZ2ZSh5ZShyLCJzY3JpcHQiKSksci5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHIpKTtyZXR1cm4gZX13LmV4dGVuZCh7aHRtbFByZWZpbHRlcjpmdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKE5lLCI8JDE+PC8kMj4iKX0sY2xvbmU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhLHM9ZS5jbG9uZU5vZGUoITApLHU9dy5jb250YWlucyhlLm93bmVyRG9jdW1lbnQsZSk7aWYoIShoLm5vQ2xvbmVDaGVja2VkfHwxIT09ZS5ub2RlVHlwZSYmMTEhPT1lLm5vZGVUeXBlfHx3LmlzWE1MRG9jKGUpKSlmb3IoYT15ZShzKSxyPTAsaT0obz15ZShlKSkubGVuZ3RoO3I8aTtyKyspTWUob1tyXSxhW3JdKTtpZih0KWlmKG4pZm9yKG89b3x8eWUoZSksYT1hfHx5ZShzKSxyPTAsaT1vLmxlbmd0aDtyPGk7cisrKVBlKG9bcl0sYVtyXSk7ZWxzZSBQZShlLHMpO3JldHVybihhPXllKHMsInNjcmlwdCIpKS5sZW5ndGg+MCYmdmUoYSwhdSYmeWUoZSwic2NyaXB0IikpLHN9LGNsZWFuRGF0YTpmdW5jdGlvbihlKXtmb3IodmFyIHQsbixyLGk9dy5ldmVudC5zcGVjaWFsLG89MDt2b2lkIDAhPT0obj1lW29dKTtvKyspaWYoWShuKSl7aWYodD1uW0ouZXhwYW5kb10pe2lmKHQuZXZlbnRzKWZvcihyIGluIHQuZXZlbnRzKWlbcl0/dy5ldmVudC5yZW1vdmUobixyKTp3LnJlbW92ZUV2ZW50KG4scix0LmhhbmRsZSk7bltKLmV4cGFuZG9dPXZvaWQgMH1uW0suZXhwYW5kb10mJihuW0suZXhwYW5kb109dm9pZCAwKX19fSksdy5mbi5leHRlbmQoe2RldGFjaDpmdW5jdGlvbihlKXtyZXR1cm4gSWUodGhpcyxlLCEwKX0scmVtb3ZlOmZ1bmN0aW9uKGUpe3JldHVybiBJZSh0aGlzLGUpfSx0ZXh0OmZ1bmN0aW9uKGUpe3JldHVybiB6KHRoaXMsZnVuY3Rpb24oZSl7cmV0dXJuIHZvaWQgMD09PWU/dy50ZXh0KHRoaXMpOnRoaXMuZW1wdHkoKS5lYWNoKGZ1bmN0aW9uKCl7MSE9PXRoaXMubm9kZVR5cGUmJjExIT09dGhpcy5ub2RlVHlwZSYmOSE9PXRoaXMubm9kZVR5cGV8fCh0aGlzLnRleHRDb250ZW50PWUpfSl9LG51bGwsZSxhcmd1bWVudHMubGVuZ3RoKX0sYXBwZW5kOmZ1bmN0aW9uKCl7cmV0dXJuIFJlKHRoaXMsYXJndW1lbnRzLGZ1bmN0aW9uKGUpezEhPT10aGlzLm5vZGVUeXBlJiYxMSE9PXRoaXMubm9kZVR5cGUmJjkhPT10aGlzLm5vZGVUeXBlfHxMZSh0aGlzLGUpLmFwcGVuZENoaWxkKGUpfSl9LHByZXBlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gUmUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7aWYoMT09PXRoaXMubm9kZVR5cGV8fDExPT09dGhpcy5ub2RlVHlwZXx8OT09PXRoaXMubm9kZVR5cGUpe3ZhciB0PUxlKHRoaXMsZSk7dC5pbnNlcnRCZWZvcmUoZSx0LmZpcnN0Q2hpbGQpfX0pfSxiZWZvcmU6ZnVuY3Rpb24oKXtyZXR1cm4gUmUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7dGhpcy5wYXJlbnROb2RlJiZ0aGlzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGUsdGhpcyl9KX0sYWZ0ZXI6ZnVuY3Rpb24oKXtyZXR1cm4gUmUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7dGhpcy5wYXJlbnROb2RlJiZ0aGlzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGUsdGhpcy5uZXh0U2libGluZyl9KX0sZW1wdHk6ZnVuY3Rpb24oKXtmb3IodmFyIGUsdD0wO251bGwhPShlPXRoaXNbdF0pO3QrKykxPT09ZS5ub2RlVHlwZSYmKHcuY2xlYW5EYXRhKHllKGUsITEpKSxlLnRleHRDb250ZW50PSIiKTtyZXR1cm4gdGhpc30sY2xvbmU6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZT1udWxsIT1lJiZlLHQ9bnVsbD09dD9lOnQsdGhpcy5tYXAoZnVuY3Rpb24oKXtyZXR1cm4gdy5jbG9uZSh0aGlzLGUsdCl9KX0saHRtbDpmdW5jdGlvbihlKXtyZXR1cm4geih0aGlzLGZ1bmN0aW9uKGUpe3ZhciB0PXRoaXNbMF18fHt9LG49MCxyPXRoaXMubGVuZ3RoO2lmKHZvaWQgMD09PWUmJjE9PT10Lm5vZGVUeXBlKXJldHVybiB0LmlubmVySFRNTDtpZigic3RyaW5nIj09dHlwZW9mIGUmJiFBZS50ZXN0KGUpJiYhZ2VbKGRlLmV4ZWMoZSl8fFsiIiwiIl0pWzFdLnRvTG93ZXJDYXNlKCldKXtlPXcuaHRtbFByZWZpbHRlcihlKTt0cnl7Zm9yKDtuPHI7bisrKTE9PT0odD10aGlzW25dfHx7fSkubm9kZVR5cGUmJih3LmNsZWFuRGF0YSh5ZSh0LCExKSksdC5pbm5lckhUTUw9ZSk7dD0wfWNhdGNoKGUpe319dCYmdGhpcy5lbXB0eSgpLmFwcGVuZChlKX0sbnVsbCxlLGFyZ3VtZW50cy5sZW5ndGgpfSxyZXBsYWNlV2l0aDpmdW5jdGlvbigpe3ZhciBlPVtdO3JldHVybiBSZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbih0KXt2YXIgbj10aGlzLnBhcmVudE5vZGU7dy5pbkFycmF5KHRoaXMsZSk8MCYmKHcuY2xlYW5EYXRhKHllKHRoaXMpKSxuJiZuLnJlcGxhY2VDaGlsZCh0LHRoaXMpKX0sZSl9fSksdy5lYWNoKHthcHBlbmRUbzoiYXBwZW5kIixwcmVwZW5kVG86InByZXBlbmQiLGluc2VydEJlZm9yZToiYmVmb3JlIixpbnNlcnRBZnRlcjoiYWZ0ZXIiLHJlcGxhY2VBbGw6InJlcGxhY2VXaXRoIn0sZnVuY3Rpb24oZSx0KXt3LmZuW2VdPWZ1bmN0aW9uKGUpe2Zvcih2YXIgbixyPVtdLGk9dyhlKSxvPWkubGVuZ3RoLTEsYT0wO2E8PW87YSsrKW49YT09PW8/dGhpczp0aGlzLmNsb25lKCEwKSx3KGlbYV0pW3RdKG4pLHMuYXBwbHkocixuLmdldCgpKTtyZXR1cm4gdGhpcy5wdXNoU3RhY2socil9fSk7dmFyIFdlPW5ldyBSZWdFeHAoIl4oIityZSsiKSg/IXB4KVthLXolXSskIiwiaSIpLCRlPWZ1bmN0aW9uKHQpe3ZhciBuPXQub3duZXJEb2N1bWVudC5kZWZhdWx0VmlldztyZXR1cm4gbiYmbi5vcGVuZXJ8fChuPWUpLG4uZ2V0Q29tcHV0ZWRTdHlsZSh0KX0sQmU9bmV3IFJlZ0V4cChvZS5qb2luKCJ8IiksImkiKTshZnVuY3Rpb24oKXtmdW5jdGlvbiB0KCl7aWYoYyl7bC5zdHlsZS5jc3NUZXh0PSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xMTExMXB4O3dpZHRoOjYwcHg7bWFyZ2luLXRvcDoxcHg7cGFkZGluZzowO2JvcmRlcjowIixjLnN0eWxlLmNzc1RleHQ9InBvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7Ym94LXNpemluZzpib3JkZXItYm94O292ZXJmbG93OnNjcm9sbDttYXJnaW46YXV0bztib3JkZXI6MXB4O3BhZGRpbmc6MXB4O3dpZHRoOjYwJTt0b3A6MSUiLGJlLmFwcGVuZENoaWxkKGwpLmFwcGVuZENoaWxkKGMpO3ZhciB0PWUuZ2V0Q29tcHV0ZWRTdHlsZShjKTtpPSIxJSIhPT10LnRvcCx1PTEyPT09bih0Lm1hcmdpbkxlZnQpLGMuc3R5bGUucmlnaHQ9IjYwJSIscz0zNj09PW4odC5yaWdodCksbz0zNj09PW4odC53aWR0aCksYy5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLGE9MzY9PT1jLm9mZnNldFdpZHRofHwiYWJzb2x1dGUiLGJlLnJlbW92ZUNoaWxkKGwpLGM9bnVsbH19ZnVuY3Rpb24gbihlKXtyZXR1cm4gTWF0aC5yb3VuZChwYXJzZUZsb2F0KGUpKX12YXIgaSxvLGEscyx1LGw9ci5jcmVhdGVFbGVtZW50KCJkaXYiKSxjPXIuY3JlYXRlRWxlbWVudCgiZGl2Iik7Yy5zdHlsZSYmKGMuc3R5bGUuYmFja2dyb3VuZENsaXA9ImNvbnRlbnQtYm94IixjLmNsb25lTm9kZSghMCkuc3R5bGUuYmFja2dyb3VuZENsaXA9IiIsaC5jbGVhckNsb25lU3R5bGU9ImNvbnRlbnQtYm94Ij09PWMuc3R5bGUuYmFja2dyb3VuZENsaXAsdy5leHRlbmQoaCx7Ym94U2l6aW5nUmVsaWFibGU6ZnVuY3Rpb24oKXtyZXR1cm4gdCgpLG99LHBpeGVsQm94U3R5bGVzOmZ1bmN0aW9uKCl7cmV0dXJuIHQoKSxzfSxwaXhlbFBvc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIHQoKSxpfSxyZWxpYWJsZU1hcmdpbkxlZnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdCgpLHV9LHNjcm9sbGJveFNpemU6ZnVuY3Rpb24oKXtyZXR1cm4gdCgpLGF9fSkpfSgpO2Z1bmN0aW9uIEZlKGUsdCxuKXt2YXIgcixpLG8sYSxzPWUuc3R5bGU7cmV0dXJuKG49bnx8JGUoZSkpJiYoIiIhPT0oYT1uLmdldFByb3BlcnR5VmFsdWUodCl8fG5bdF0pfHx3LmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCxlKXx8KGE9dy5zdHlsZShlLHQpKSwhaC5waXhlbEJveFN0eWxlcygpJiZXZS50ZXN0KGEpJiZCZS50ZXN0KHQpJiYocj1zLndpZHRoLGk9cy5taW5XaWR0aCxvPXMubWF4V2lkdGgscy5taW5XaWR0aD1zLm1heFdpZHRoPXMud2lkdGg9YSxhPW4ud2lkdGgscy53aWR0aD1yLHMubWluV2lkdGg9aSxzLm1heFdpZHRoPW8pKSx2b2lkIDAhPT1hP2ErIiI6YX1mdW5jdGlvbiBfZShlLHQpe3JldHVybntnZXQ6ZnVuY3Rpb24oKXtpZighZSgpKXJldHVybih0aGlzLmdldD10KS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7ZGVsZXRlIHRoaXMuZ2V0fX19dmFyIHplPS9eKG5vbmV8dGFibGUoPyEtY1tlYV0pLispLyxYZT0vXi0tLyxVZT17cG9zaXRpb246ImFic29sdXRlIix2aXNpYmlsaXR5OiJoaWRkZW4iLGRpc3BsYXk6ImJsb2NrIn0sVmU9e2xldHRlclNwYWNpbmc6IjAiLGZvbnRXZWlnaHQ6IjQwMCJ9LEdlPVsiV2Via2l0IiwiTW96IiwibXMiXSxZZT1yLmNyZWF0ZUVsZW1lbnQoImRpdiIpLnN0eWxlO2Z1bmN0aW9uIFFlKGUpe2lmKGUgaW4gWWUpcmV0dXJuIGU7dmFyIHQ9ZVswXS50b1VwcGVyQ2FzZSgpK2Uuc2xpY2UoMSksbj1HZS5sZW5ndGg7d2hpbGUobi0tKWlmKChlPUdlW25dK3QpaW4gWWUpcmV0dXJuIGV9ZnVuY3Rpb24gSmUoZSl7dmFyIHQ9dy5jc3NQcm9wc1tlXTtyZXR1cm4gdHx8KHQ9dy5jc3NQcm9wc1tlXT1RZShlKXx8ZSksdH1mdW5jdGlvbiBLZShlLHQsbil7dmFyIHI9aWUuZXhlYyh0KTtyZXR1cm4gcj9NYXRoLm1heCgwLHJbMl0tKG58fDApKSsoclszXXx8InB4Iik6dH1mdW5jdGlvbiBaZShlLHQsbixyLGksbyl7dmFyIGE9IndpZHRoIj09PXQ/MTowLHM9MCx1PTA7aWYobj09PShyPyJib3JkZXIiOiJjb250ZW50IikpcmV0dXJuIDA7Zm9yKDthPDQ7YSs9MikibWFyZ2luIj09PW4mJih1Kz13LmNzcyhlLG4rb2VbYV0sITAsaSkpLHI/KCJjb250ZW50Ij09PW4mJih1LT13LmNzcyhlLCJwYWRkaW5nIitvZVthXSwhMCxpKSksIm1hcmdpbiIhPT1uJiYodS09dy5jc3MoZSwiYm9yZGVyIitvZVthXSsiV2lkdGgiLCEwLGkpKSk6KHUrPXcuY3NzKGUsInBhZGRpbmciK29lW2FdLCEwLGkpLCJwYWRkaW5nIiE9PW4/dSs9dy5jc3MoZSwiYm9yZGVyIitvZVthXSsiV2lkdGgiLCEwLGkpOnMrPXcuY3NzKGUsImJvcmRlciIrb2VbYV0rIldpZHRoIiwhMCxpKSk7cmV0dXJuIXImJm8+PTAmJih1Kz1NYXRoLm1heCgwLE1hdGguY2VpbChlWyJvZmZzZXQiK3RbMF0udG9VcHBlckNhc2UoKSt0LnNsaWNlKDEpXS1vLXUtcy0uNSkpKSx1fWZ1bmN0aW9uIGV0KGUsdCxuKXt2YXIgcj0kZShlKSxpPUZlKGUsdCxyKSxvPSJib3JkZXItYm94Ij09PXcuY3NzKGUsImJveFNpemluZyIsITEsciksYT1vO2lmKFdlLnRlc3QoaSkpe2lmKCFuKXJldHVybiBpO2k9ImF1dG8ifXJldHVybiBhPWEmJihoLmJveFNpemluZ1JlbGlhYmxlKCl8fGk9PT1lLnN0eWxlW3RdKSwoImF1dG8iPT09aXx8IXBhcnNlRmxvYXQoaSkmJiJpbmxpbmUiPT09dy5jc3MoZSwiZGlzcGxheSIsITEscikpJiYoaT1lWyJvZmZzZXQiK3RbMF0udG9VcHBlckNhc2UoKSt0LnNsaWNlKDEpXSxhPSEwKSwoaT1wYXJzZUZsb2F0KGkpfHwwKStaZShlLHQsbnx8KG8/ImJvcmRlciI6ImNvbnRlbnQiKSxhLHIsaSkrInB4In13LmV4dGVuZCh7Y3NzSG9va3M6e29wYWNpdHk6e2dldDpmdW5jdGlvbihlLHQpe2lmKHQpe3ZhciBuPUZlKGUsIm9wYWNpdHkiKTtyZXR1cm4iIj09PW4/IjEiOm59fX19LGNzc051bWJlcjp7YW5pbWF0aW9uSXRlcmF0aW9uQ291bnQ6ITAsY29sdW1uQ291bnQ6ITAsZmlsbE9wYWNpdHk6ITAsZmxleEdyb3c6ITAsZmxleFNocmluazohMCxmb250V2VpZ2h0OiEwLGxpbmVIZWlnaHQ6ITAsb3BhY2l0eTohMCxvcmRlcjohMCxvcnBoYW5zOiEwLHdpZG93czohMCx6SW5kZXg6ITAsem9vbTohMH0sY3NzUHJvcHM6e30sc3R5bGU6ZnVuY3Rpb24oZSx0LG4scil7aWYoZSYmMyE9PWUubm9kZVR5cGUmJjghPT1lLm5vZGVUeXBlJiZlLnN0eWxlKXt2YXIgaSxvLGEscz1HKHQpLHU9WGUudGVzdCh0KSxsPWUuc3R5bGU7aWYodXx8KHQ9SmUocykpLGE9dy5jc3NIb29rc1t0XXx8dy5jc3NIb29rc1tzXSx2b2lkIDA9PT1uKXJldHVybiBhJiYiZ2V0ImluIGEmJnZvaWQgMCE9PShpPWEuZ2V0KGUsITEscikpP2k6bFt0XTsic3RyaW5nIj09KG89dHlwZW9mIG4pJiYoaT1pZS5leGVjKG4pKSYmaVsxXSYmKG49dWUoZSx0LGkpLG89Im51bWJlciIpLG51bGwhPW4mJm49PT1uJiYoIm51bWJlciI9PT1vJiYobis9aSYmaVszXXx8KHcuY3NzTnVtYmVyW3NdPyIiOiJweCIpKSxoLmNsZWFyQ2xvbmVTdHlsZXx8IiIhPT1ufHwwIT09dC5pbmRleE9mKCJiYWNrZ3JvdW5kIil8fChsW3RdPSJpbmhlcml0IiksYSYmInNldCJpbiBhJiZ2b2lkIDA9PT0obj1hLnNldChlLG4scikpfHwodT9sLnNldFByb3BlcnR5KHQsbik6bFt0XT1uKSl9fSxjc3M6ZnVuY3Rpb24oZSx0LG4scil7dmFyIGksbyxhLHM9Ryh0KTtyZXR1cm4gWGUudGVzdCh0KXx8KHQ9SmUocykpLChhPXcuY3NzSG9va3NbdF18fHcuY3NzSG9va3Nbc10pJiYiZ2V0ImluIGEmJihpPWEuZ2V0KGUsITAsbikpLHZvaWQgMD09PWkmJihpPUZlKGUsdCxyKSksIm5vcm1hbCI9PT1pJiZ0IGluIFZlJiYoaT1WZVt0XSksIiI9PT1ufHxuPyhvPXBhcnNlRmxvYXQoaSksITA9PT1ufHxpc0Zpbml0ZShvKT9vfHwwOmkpOml9fSksdy5lYWNoKFsiaGVpZ2h0Iiwid2lkdGgiXSxmdW5jdGlvbihlLHQpe3cuY3NzSG9va3NbdF09e2dldDpmdW5jdGlvbihlLG4scil7aWYobilyZXR1cm4hemUudGVzdCh3LmNzcyhlLCJkaXNwbGF5IikpfHxlLmdldENsaWVudFJlY3RzKCkubGVuZ3RoJiZlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoP2V0KGUsdCxyKTpzZShlLFVlLGZ1bmN0aW9uKCl7cmV0dXJuIGV0KGUsdCxyKX0pfSxzZXQ6ZnVuY3Rpb24oZSxuLHIpe3ZhciBpLG89JGUoZSksYT0iYm9yZGVyLWJveCI9PT13LmNzcyhlLCJib3hTaXppbmciLCExLG8pLHM9ciYmWmUoZSx0LHIsYSxvKTtyZXR1cm4gYSYmaC5zY3JvbGxib3hTaXplKCk9PT1vLnBvc2l0aW9uJiYocy09TWF0aC5jZWlsKGVbIm9mZnNldCIrdFswXS50b1VwcGVyQ2FzZSgpK3Quc2xpY2UoMSldLXBhcnNlRmxvYXQob1t0XSktWmUoZSx0LCJib3JkZXIiLCExLG8pLS41KSkscyYmKGk9aWUuZXhlYyhuKSkmJiJweCIhPT0oaVszXXx8InB4IikmJihlLnN0eWxlW3RdPW4sbj13LmNzcyhlLHQpKSxLZShlLG4scyl9fX0pLHcuY3NzSG9va3MubWFyZ2luTGVmdD1fZShoLnJlbGlhYmxlTWFyZ2luTGVmdCxmdW5jdGlvbihlLHQpe2lmKHQpcmV0dXJuKHBhcnNlRmxvYXQoRmUoZSwibWFyZ2luTGVmdCIpKXx8ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0LXNlKGUse21hcmdpbkxlZnQ6MH0sZnVuY3Rpb24oKXtyZXR1cm4gZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0fSkpKyJweCJ9KSx3LmVhY2goe21hcmdpbjoiIixwYWRkaW5nOiIiLGJvcmRlcjoiV2lkdGgifSxmdW5jdGlvbihlLHQpe3cuY3NzSG9va3NbZSt0XT17ZXhwYW5kOmZ1bmN0aW9uKG4pe2Zvcih2YXIgcj0wLGk9e30sbz0ic3RyaW5nIj09dHlwZW9mIG4/bi5zcGxpdCgiICIpOltuXTtyPDQ7cisrKWlbZStvZVtyXSt0XT1vW3JdfHxvW3ItMl18fG9bMF07cmV0dXJuIGl9fSwibWFyZ2luIiE9PWUmJih3LmNzc0hvb2tzW2UrdF0uc2V0PUtlKX0pLHcuZm4uZXh0ZW5kKHtjc3M6ZnVuY3Rpb24oZSx0KXtyZXR1cm4geih0aGlzLGZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89e30sYT0wO2lmKEFycmF5LmlzQXJyYXkodCkpe2ZvcihyPSRlKGUpLGk9dC5sZW5ndGg7YTxpO2ErKylvW3RbYV1dPXcuY3NzKGUsdFthXSwhMSxyKTtyZXR1cm4gb31yZXR1cm4gdm9pZCAwIT09bj93LnN0eWxlKGUsdCxuKTp3LmNzcyhlLHQpfSxlLHQsYXJndW1lbnRzLmxlbmd0aD4xKX19KTtmdW5jdGlvbiB0dChlLHQsbixyLGkpe3JldHVybiBuZXcgdHQucHJvdG90eXBlLmluaXQoZSx0LG4scixpKX13LlR3ZWVuPXR0LHR0LnByb3RvdHlwZT17Y29uc3RydWN0b3I6dHQsaW5pdDpmdW5jdGlvbihlLHQsbixyLGksbyl7dGhpcy5lbGVtPWUsdGhpcy5wcm9wPW4sdGhpcy5lYXNpbmc9aXx8dy5lYXNpbmcuX2RlZmF1bHQsdGhpcy5vcHRpb25zPXQsdGhpcy5zdGFydD10aGlzLm5vdz10aGlzLmN1cigpLHRoaXMuZW5kPXIsdGhpcy51bml0PW98fCh3LmNzc051bWJlcltuXT8iIjoicHgiKX0sY3VyOmZ1bmN0aW9uKCl7dmFyIGU9dHQucHJvcEhvb2tzW3RoaXMucHJvcF07cmV0dXJuIGUmJmUuZ2V0P2UuZ2V0KHRoaXMpOnR0LnByb3BIb29rcy5fZGVmYXVsdC5nZXQodGhpcyl9LHJ1bjpmdW5jdGlvbihlKXt2YXIgdCxuPXR0LnByb3BIb29rc1t0aGlzLnByb3BdO3JldHVybiB0aGlzLm9wdGlvbnMuZHVyYXRpb24/dGhpcy5wb3M9dD13LmVhc2luZ1t0aGlzLmVhc2luZ10oZSx0aGlzLm9wdGlvbnMuZHVyYXRpb24qZSwwLDEsdGhpcy5vcHRpb25zLmR1cmF0aW9uKTp0aGlzLnBvcz10PWUsdGhpcy5ub3c9KHRoaXMuZW5kLXRoaXMuc3RhcnQpKnQrdGhpcy5zdGFydCx0aGlzLm9wdGlvbnMuc3RlcCYmdGhpcy5vcHRpb25zLnN0ZXAuY2FsbCh0aGlzLmVsZW0sdGhpcy5ub3csdGhpcyksbiYmbi5zZXQ/bi5zZXQodGhpcyk6dHQucHJvcEhvb2tzLl9kZWZhdWx0LnNldCh0aGlzKSx0aGlzfX0sdHQucHJvdG90eXBlLmluaXQucHJvdG90eXBlPXR0LnByb3RvdHlwZSx0dC5wcm9wSG9va3M9e19kZWZhdWx0OntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIDEhPT1lLmVsZW0ubm9kZVR5cGV8fG51bGwhPWUuZWxlbVtlLnByb3BdJiZudWxsPT1lLmVsZW0uc3R5bGVbZS5wcm9wXT9lLmVsZW1bZS5wcm9wXToodD13LmNzcyhlLmVsZW0sZS5wcm9wLCIiKSkmJiJhdXRvIiE9PXQ/dDowfSxzZXQ6ZnVuY3Rpb24oZSl7dy5meC5zdGVwW2UucHJvcF0/dy5meC5zdGVwW2UucHJvcF0oZSk6MSE9PWUuZWxlbS5ub2RlVHlwZXx8bnVsbD09ZS5lbGVtLnN0eWxlW3cuY3NzUHJvcHNbZS5wcm9wXV0mJiF3LmNzc0hvb2tzW2UucHJvcF0/ZS5lbGVtW2UucHJvcF09ZS5ub3c6dy5zdHlsZShlLmVsZW0sZS5wcm9wLGUubm93K2UudW5pdCl9fX0sdHQucHJvcEhvb2tzLnNjcm9sbFRvcD10dC5wcm9wSG9va3Muc2Nyb2xsTGVmdD17c2V0OmZ1bmN0aW9uKGUpe2UuZWxlbS5ub2RlVHlwZSYmZS5lbGVtLnBhcmVudE5vZGUmJihlLmVsZW1bZS5wcm9wXT1lLm5vdyl9fSx3LmVhc2luZz17bGluZWFyOmZ1bmN0aW9uKGUpe3JldHVybiBlfSxzd2luZzpmdW5jdGlvbihlKXtyZXR1cm4uNS1NYXRoLmNvcyhlKk1hdGguUEkpLzJ9LF9kZWZhdWx0OiJzd2luZyJ9LHcuZng9dHQucHJvdG90eXBlLmluaXQsdy5meC5zdGVwPXt9O3ZhciBudCxydCxpdD0vXig/OnRvZ2dsZXxzaG93fGhpZGUpJC8sb3Q9L3F1ZXVlSG9va3MkLztmdW5jdGlvbiBhdCgpe3J0JiYoITE9PT1yLmhpZGRlbiYmZS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWU/ZS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoYXQpOmUuc2V0VGltZW91dChhdCx3LmZ4LmludGVydmFsKSx3LmZ4LnRpY2soKSl9ZnVuY3Rpb24gc3QoKXtyZXR1cm4gZS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bnQ9dm9pZCAwfSksbnQ9RGF0ZS5ub3coKX1mdW5jdGlvbiB1dChlLHQpe3ZhciBuLHI9MCxpPXtoZWlnaHQ6ZX07Zm9yKHQ9dD8xOjA7cjw0O3IrPTItdClpWyJtYXJnaW4iKyhuPW9lW3JdKV09aVsicGFkZGluZyIrbl09ZTtyZXR1cm4gdCYmKGkub3BhY2l0eT1pLndpZHRoPWUpLGl9ZnVuY3Rpb24gbHQoZSx0LG4pe2Zvcih2YXIgcixpPShwdC50d2VlbmVyc1t0XXx8W10pLmNvbmNhdChwdC50d2VlbmVyc1siKiJdKSxvPTAsYT1pLmxlbmd0aDtvPGE7bysrKWlmKHI9aVtvXS5jYWxsKG4sdCxlKSlyZXR1cm4gcn1mdW5jdGlvbiBjdChlLHQsbil7dmFyIHIsaSxvLGEscyx1LGwsYyxmPSJ3aWR0aCJpbiB0fHwiaGVpZ2h0ImluIHQscD10aGlzLGQ9e30saD1lLnN0eWxlLGc9ZS5ub2RlVHlwZSYmYWUoZSkseT1KLmdldChlLCJmeHNob3ciKTtuLnF1ZXVlfHwobnVsbD09KGE9dy5fcXVldWVIb29rcyhlLCJmeCIpKS51bnF1ZXVlZCYmKGEudW5xdWV1ZWQ9MCxzPWEuZW1wdHkuZmlyZSxhLmVtcHR5LmZpcmU9ZnVuY3Rpb24oKXthLnVucXVldWVkfHxzKCl9KSxhLnVucXVldWVkKysscC5hbHdheXMoZnVuY3Rpb24oKXtwLmFsd2F5cyhmdW5jdGlvbigpe2EudW5xdWV1ZWQtLSx3LnF1ZXVlKGUsImZ4IikubGVuZ3RofHxhLmVtcHR5LmZpcmUoKX0pfSkpO2ZvcihyIGluIHQpaWYoaT10W3JdLGl0LnRlc3QoaSkpe2lmKGRlbGV0ZSB0W3JdLG89b3x8InRvZ2dsZSI9PT1pLGk9PT0oZz8iaGlkZSI6InNob3ciKSl7aWYoInNob3ciIT09aXx8IXl8fHZvaWQgMD09PXlbcl0pY29udGludWU7Zz0hMH1kW3JdPXkmJnlbcl18fHcuc3R5bGUoZSxyKX1pZigodT0hdy5pc0VtcHR5T2JqZWN0KHQpKXx8IXcuaXNFbXB0eU9iamVjdChkKSl7ZiYmMT09PWUubm9kZVR5cGUmJihuLm92ZXJmbG93PVtoLm92ZXJmbG93LGgub3ZlcmZsb3dYLGgub3ZlcmZsb3dZXSxudWxsPT0obD15JiZ5LmRpc3BsYXkpJiYobD1KLmdldChlLCJkaXNwbGF5IikpLCJub25lIj09PShjPXcuY3NzKGUsImRpc3BsYXkiKSkmJihsP2M9bDooZmUoW2VdLCEwKSxsPWUuc3R5bGUuZGlzcGxheXx8bCxjPXcuY3NzKGUsImRpc3BsYXkiKSxmZShbZV0pKSksKCJpbmxpbmUiPT09Y3x8ImlubGluZS1ibG9jayI9PT1jJiZudWxsIT1sKSYmIm5vbmUiPT09dy5jc3MoZSwiZmxvYXQiKSYmKHV8fChwLmRvbmUoZnVuY3Rpb24oKXtoLmRpc3BsYXk9bH0pLG51bGw9PWwmJihjPWguZGlzcGxheSxsPSJub25lIj09PWM/IiI6YykpLGguZGlzcGxheT0iaW5saW5lLWJsb2NrIikpLG4ub3ZlcmZsb3cmJihoLm92ZXJmbG93PSJoaWRkZW4iLHAuYWx3YXlzKGZ1bmN0aW9uKCl7aC5vdmVyZmxvdz1uLm92ZXJmbG93WzBdLGgub3ZlcmZsb3dYPW4ub3ZlcmZsb3dbMV0saC5vdmVyZmxvd1k9bi5vdmVyZmxvd1syXX0pKSx1PSExO2ZvcihyIGluIGQpdXx8KHk/ImhpZGRlbiJpbiB5JiYoZz15LmhpZGRlbik6eT1KLmFjY2VzcyhlLCJmeHNob3ciLHtkaXNwbGF5Omx9KSxvJiYoeS5oaWRkZW49IWcpLGcmJmZlKFtlXSwhMCkscC5kb25lKGZ1bmN0aW9uKCl7Z3x8ZmUoW2VdKSxKLnJlbW92ZShlLCJmeHNob3ciKTtmb3IociBpbiBkKXcuc3R5bGUoZSxyLGRbcl0pfSkpLHU9bHQoZz95W3JdOjAscixwKSxyIGluIHl8fCh5W3JdPXUuc3RhcnQsZyYmKHUuZW5kPXUuc3RhcnQsdS5zdGFydD0wKSl9fWZ1bmN0aW9uIGZ0KGUsdCl7dmFyIG4scixpLG8sYTtmb3IobiBpbiBlKWlmKHI9RyhuKSxpPXRbcl0sbz1lW25dLEFycmF5LmlzQXJyYXkobykmJihpPW9bMV0sbz1lW25dPW9bMF0pLG4hPT1yJiYoZVtyXT1vLGRlbGV0ZSBlW25dKSwoYT13LmNzc0hvb2tzW3JdKSYmImV4cGFuZCJpbiBhKXtvPWEuZXhwYW5kKG8pLGRlbGV0ZSBlW3JdO2ZvcihuIGluIG8pbiBpbiBlfHwoZVtuXT1vW25dLHRbbl09aSl9ZWxzZSB0W3JdPWl9ZnVuY3Rpb24gcHQoZSx0LG4pe3ZhciByLGksbz0wLGE9cHQucHJlZmlsdGVycy5sZW5ndGgscz13LkRlZmVycmVkKCkuYWx3YXlzKGZ1bmN0aW9uKCl7ZGVsZXRlIHUuZWxlbX0pLHU9ZnVuY3Rpb24oKXtpZihpKXJldHVybiExO2Zvcih2YXIgdD1udHx8c3QoKSxuPU1hdGgubWF4KDAsbC5zdGFydFRpbWUrbC5kdXJhdGlvbi10KSxyPTEtKG4vbC5kdXJhdGlvbnx8MCksbz0wLGE9bC50d2VlbnMubGVuZ3RoO288YTtvKyspbC50d2VlbnNbb10ucnVuKHIpO3JldHVybiBzLm5vdGlmeVdpdGgoZSxbbCxyLG5dKSxyPDEmJmE/bjooYXx8cy5ub3RpZnlXaXRoKGUsW2wsMSwwXSkscy5yZXNvbHZlV2l0aChlLFtsXSksITEpfSxsPXMucHJvbWlzZSh7ZWxlbTplLHByb3BzOncuZXh0ZW5kKHt9LHQpLG9wdHM6dy5leHRlbmQoITAse3NwZWNpYWxFYXNpbmc6e30sZWFzaW5nOncuZWFzaW5nLl9kZWZhdWx0fSxuKSxvcmlnaW5hbFByb3BlcnRpZXM6dCxvcmlnaW5hbE9wdGlvbnM6bixzdGFydFRpbWU6bnR8fHN0KCksZHVyYXRpb246bi5kdXJhdGlvbix0d2VlbnM6W10sY3JlYXRlVHdlZW46ZnVuY3Rpb24odCxuKXt2YXIgcj13LlR3ZWVuKGUsbC5vcHRzLHQsbixsLm9wdHMuc3BlY2lhbEVhc2luZ1t0XXx8bC5vcHRzLmVhc2luZyk7cmV0dXJuIGwudHdlZW5zLnB1c2gocikscn0sc3RvcDpmdW5jdGlvbih0KXt2YXIgbj0wLHI9dD9sLnR3ZWVucy5sZW5ndGg6MDtpZihpKXJldHVybiB0aGlzO2ZvcihpPSEwO248cjtuKyspbC50d2VlbnNbbl0ucnVuKDEpO3JldHVybiB0PyhzLm5vdGlmeVdpdGgoZSxbbCwxLDBdKSxzLnJlc29sdmVXaXRoKGUsW2wsdF0pKTpzLnJlamVjdFdpdGgoZSxbbCx0XSksdGhpc319KSxjPWwucHJvcHM7Zm9yKGZ0KGMsbC5vcHRzLnNwZWNpYWxFYXNpbmcpO288YTtvKyspaWYocj1wdC5wcmVmaWx0ZXJzW29dLmNhbGwobCxlLGMsbC5vcHRzKSlyZXR1cm4gZyhyLnN0b3ApJiYody5fcXVldWVIb29rcyhsLmVsZW0sbC5vcHRzLnF1ZXVlKS5zdG9wPXIuc3RvcC5iaW5kKHIpKSxyO3JldHVybiB3Lm1hcChjLGx0LGwpLGcobC5vcHRzLnN0YXJ0KSYmbC5vcHRzLnN0YXJ0LmNhbGwoZSxsKSxsLnByb2dyZXNzKGwub3B0cy5wcm9ncmVzcykuZG9uZShsLm9wdHMuZG9uZSxsLm9wdHMuY29tcGxldGUpLmZhaWwobC5vcHRzLmZhaWwpLmFsd2F5cyhsLm9wdHMuYWx3YXlzKSx3LmZ4LnRpbWVyKHcuZXh0ZW5kKHUse2VsZW06ZSxhbmltOmwscXVldWU6bC5vcHRzLnF1ZXVlfSkpLGx9dy5BbmltYXRpb249dy5leHRlbmQocHQse3R3ZWVuZXJzOnsiKiI6W2Z1bmN0aW9uKGUsdCl7dmFyIG49dGhpcy5jcmVhdGVUd2VlbihlLHQpO3JldHVybiB1ZShuLmVsZW0sZSxpZS5leGVjKHQpLG4pLG59XX0sdHdlZW5lcjpmdW5jdGlvbihlLHQpe2coZSk/KHQ9ZSxlPVsiKiJdKTplPWUubWF0Y2goTSk7Zm9yKHZhciBuLHI9MCxpPWUubGVuZ3RoO3I8aTtyKyspbj1lW3JdLHB0LnR3ZWVuZXJzW25dPXB0LnR3ZWVuZXJzW25dfHxbXSxwdC50d2VlbmVyc1tuXS51bnNoaWZ0KHQpfSxwcmVmaWx0ZXJzOltjdF0scHJlZmlsdGVyOmZ1bmN0aW9uKGUsdCl7dD9wdC5wcmVmaWx0ZXJzLnVuc2hpZnQoZSk6cHQucHJlZmlsdGVycy5wdXNoKGUpfX0pLHcuc3BlZWQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWUmJiJvYmplY3QiPT10eXBlb2YgZT93LmV4dGVuZCh7fSxlKTp7Y29tcGxldGU6bnx8IW4mJnR8fGcoZSkmJmUsZHVyYXRpb246ZSxlYXNpbmc6biYmdHx8dCYmIWcodCkmJnR9O3JldHVybiB3LmZ4Lm9mZj9yLmR1cmF0aW9uPTA6Im51bWJlciIhPXR5cGVvZiByLmR1cmF0aW9uJiYoci5kdXJhdGlvbiBpbiB3LmZ4LnNwZWVkcz9yLmR1cmF0aW9uPXcuZnguc3BlZWRzW3IuZHVyYXRpb25dOnIuZHVyYXRpb249dy5meC5zcGVlZHMuX2RlZmF1bHQpLG51bGwhPXIucXVldWUmJiEwIT09ci5xdWV1ZXx8KHIucXVldWU9ImZ4Iiksci5vbGQ9ci5jb21wbGV0ZSxyLmNvbXBsZXRlPWZ1bmN0aW9uKCl7ZyhyLm9sZCkmJnIub2xkLmNhbGwodGhpcyksci5xdWV1ZSYmdy5kZXF1ZXVlKHRoaXMsci5xdWV1ZSl9LHJ9LHcuZm4uZXh0ZW5kKHtmYWRlVG86ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIHRoaXMuZmlsdGVyKGFlKS5jc3MoIm9wYWNpdHkiLDApLnNob3coKS5lbmQoKS5hbmltYXRlKHtvcGFjaXR5OnR9LGUsbixyKX0sYW5pbWF0ZTpmdW5jdGlvbihlLHQsbixyKXt2YXIgaT13LmlzRW1wdHlPYmplY3QoZSksbz13LnNwZWVkKHQsbixyKSxhPWZ1bmN0aW9uKCl7dmFyIHQ9cHQodGhpcyx3LmV4dGVuZCh7fSxlKSxvKTsoaXx8Si5nZXQodGhpcywiZmluaXNoIikpJiZ0LnN0b3AoITApfTtyZXR1cm4gYS5maW5pc2g9YSxpfHwhMT09PW8ucXVldWU/dGhpcy5lYWNoKGEpOnRoaXMucXVldWUoby5xdWV1ZSxhKX0sc3RvcDpmdW5jdGlvbihlLHQsbil7dmFyIHI9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5zdG9wO2RlbGV0ZSBlLnN0b3AsdChuKX07cmV0dXJuInN0cmluZyIhPXR5cGVvZiBlJiYobj10LHQ9ZSxlPXZvaWQgMCksdCYmITEhPT1lJiZ0aGlzLnF1ZXVlKGV8fCJmeCIsW10pLHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PSEwLGk9bnVsbCE9ZSYmZSsicXVldWVIb29rcyIsbz13LnRpbWVycyxhPUouZ2V0KHRoaXMpO2lmKGkpYVtpXSYmYVtpXS5zdG9wJiZyKGFbaV0pO2Vsc2UgZm9yKGkgaW4gYSlhW2ldJiZhW2ldLnN0b3AmJm90LnRlc3QoaSkmJnIoYVtpXSk7Zm9yKGk9by5sZW5ndGg7aS0tOylvW2ldLmVsZW0hPT10aGlzfHxudWxsIT1lJiZvW2ldLnF1ZXVlIT09ZXx8KG9baV0uYW5pbS5zdG9wKG4pLHQ9ITEsby5zcGxpY2UoaSwxKSk7IXQmJm58fHcuZGVxdWV1ZSh0aGlzLGUpfSl9LGZpbmlzaDpmdW5jdGlvbihlKXtyZXR1cm4hMSE9PWUmJihlPWV8fCJmeCIpLHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0LG49Si5nZXQodGhpcykscj1uW2UrInF1ZXVlIl0saT1uW2UrInF1ZXVlSG9va3MiXSxvPXcudGltZXJzLGE9cj9yLmxlbmd0aDowO2ZvcihuLmZpbmlzaD0hMCx3LnF1ZXVlKHRoaXMsZSxbXSksaSYmaS5zdG9wJiZpLnN0b3AuY2FsbCh0aGlzLCEwKSx0PW8ubGVuZ3RoO3QtLTspb1t0XS5lbGVtPT09dGhpcyYmb1t0XS5xdWV1ZT09PWUmJihvW3RdLmFuaW0uc3RvcCghMCksby5zcGxpY2UodCwxKSk7Zm9yKHQ9MDt0PGE7dCsrKXJbdF0mJnJbdF0uZmluaXNoJiZyW3RdLmZpbmlzaC5jYWxsKHRoaXMpO2RlbGV0ZSBuLmZpbmlzaH0pfX0pLHcuZWFjaChbInRvZ2dsZSIsInNob3ciLCJoaWRlIl0sZnVuY3Rpb24oZSx0KXt2YXIgbj13LmZuW3RdO3cuZm5bdF09ZnVuY3Rpb24oZSxyLGkpe3JldHVybiBudWxsPT1lfHwiYm9vbGVhbiI9PXR5cGVvZiBlP24uYXBwbHkodGhpcyxhcmd1bWVudHMpOnRoaXMuYW5pbWF0ZSh1dCh0LCEwKSxlLHIsaSl9fSksdy5lYWNoKHtzbGlkZURvd246dXQoInNob3ciKSxzbGlkZVVwOnV0KCJoaWRlIiksc2xpZGVUb2dnbGU6dXQoInRvZ2dsZSIpLGZhZGVJbjp7b3BhY2l0eToic2hvdyJ9LGZhZGVPdXQ6e29wYWNpdHk6ImhpZGUifSxmYWRlVG9nZ2xlOntvcGFjaXR5OiJ0b2dnbGUifX0sZnVuY3Rpb24oZSx0KXt3LmZuW2VdPWZ1bmN0aW9uKGUsbixyKXtyZXR1cm4gdGhpcy5hbmltYXRlKHQsZSxuLHIpfX0pLHcudGltZXJzPVtdLHcuZngudGljaz1mdW5jdGlvbigpe3ZhciBlLHQ9MCxuPXcudGltZXJzO2ZvcihudD1EYXRlLm5vdygpO3Q8bi5sZW5ndGg7dCsrKShlPW5bdF0pKCl8fG5bdF0hPT1lfHxuLnNwbGljZSh0LS0sMSk7bi5sZW5ndGh8fHcuZnguc3RvcCgpLG50PXZvaWQgMH0sdy5meC50aW1lcj1mdW5jdGlvbihlKXt3LnRpbWVycy5wdXNoKGUpLHcuZnguc3RhcnQoKX0sdy5meC5pbnRlcnZhbD0xMyx3LmZ4LnN0YXJ0PWZ1bmN0aW9uKCl7cnR8fChydD0hMCxhdCgpKX0sdy5meC5zdG9wPWZ1bmN0aW9uKCl7cnQ9bnVsbH0sdy5meC5zcGVlZHM9e3Nsb3c6NjAwLGZhc3Q6MjAwLF9kZWZhdWx0OjQwMH0sdy5mbi5kZWxheT1mdW5jdGlvbih0LG4pe3JldHVybiB0PXcuZng/dy5meC5zcGVlZHNbdF18fHQ6dCxuPW58fCJmeCIsdGhpcy5xdWV1ZShuLGZ1bmN0aW9uKG4scil7dmFyIGk9ZS5zZXRUaW1lb3V0KG4sdCk7ci5zdG9wPWZ1bmN0aW9uKCl7ZS5jbGVhclRpbWVvdXQoaSl9fSl9LGZ1bmN0aW9uKCl7dmFyIGU9ci5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLHQ9ci5jcmVhdGVFbGVtZW50KCJzZWxlY3QiKS5hcHBlbmRDaGlsZChyLmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpKTtlLnR5cGU9ImNoZWNrYm94IixoLmNoZWNrT249IiIhPT1lLnZhbHVlLGgub3B0U2VsZWN0ZWQ9dC5zZWxlY3RlZCwoZT1yLmNyZWF0ZUVsZW1lbnQoImlucHV0IikpLnZhbHVlPSJ0IixlLnR5cGU9InJhZGlvIixoLnJhZGlvVmFsdWU9InQiPT09ZS52YWx1ZX0oKTt2YXIgZHQsaHQ9dy5leHByLmF0dHJIYW5kbGU7dy5mbi5leHRlbmQoe2F0dHI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4geih0aGlzLHcuYXR0cixlLHQsYXJndW1lbnRzLmxlbmd0aD4xKX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dy5yZW1vdmVBdHRyKHRoaXMsZSl9KX19KSx3LmV4dGVuZCh7YXR0cjpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPWUubm9kZVR5cGU7aWYoMyE9PW8mJjghPT1vJiYyIT09bylyZXR1cm4idW5kZWZpbmVkIj09dHlwZW9mIGUuZ2V0QXR0cmlidXRlP3cucHJvcChlLHQsbik6KDE9PT1vJiZ3LmlzWE1MRG9jKGUpfHwoaT13LmF0dHJIb29rc1t0LnRvTG93ZXJDYXNlKCldfHwody5leHByLm1hdGNoLmJvb2wudGVzdCh0KT9kdDp2b2lkIDApKSx2b2lkIDAhPT1uP251bGw9PT1uP3ZvaWQgdy5yZW1vdmVBdHRyKGUsdCk6aSYmInNldCJpbiBpJiZ2b2lkIDAhPT0ocj1pLnNldChlLG4sdCkpP3I6KGUuc2V0QXR0cmlidXRlKHQsbisiIiksbik6aSYmImdldCJpbiBpJiZudWxsIT09KHI9aS5nZXQoZSx0KSk/cjpudWxsPT0ocj13LmZpbmQuYXR0cihlLHQpKT92b2lkIDA6cil9LGF0dHJIb29rczp7dHlwZTp7c2V0OmZ1bmN0aW9uKGUsdCl7aWYoIWgucmFkaW9WYWx1ZSYmInJhZGlvIj09PXQmJk4oZSwiaW5wdXQiKSl7dmFyIG49ZS52YWx1ZTtyZXR1cm4gZS5zZXRBdHRyaWJ1dGUoInR5cGUiLHQpLG4mJihlLnZhbHVlPW4pLHR9fX19LHJlbW92ZUF0dHI6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPTAsaT10JiZ0Lm1hdGNoKE0pO2lmKGkmJjE9PT1lLm5vZGVUeXBlKXdoaWxlKG49aVtyKytdKWUucmVtb3ZlQXR0cmlidXRlKG4pfX0pLGR0PXtzZXQ6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiExPT09dD93LnJlbW92ZUF0dHIoZSxuKTplLnNldEF0dHJpYnV0ZShuLG4pLG59fSx3LmVhY2gody5leHByLm1hdGNoLmJvb2wuc291cmNlLm1hdGNoKC9cdysvZyksZnVuY3Rpb24oZSx0KXt2YXIgbj1odFt0XXx8dy5maW5kLmF0dHI7aHRbdF09ZnVuY3Rpb24oZSx0LHIpe3ZhciBpLG8sYT10LnRvTG93ZXJDYXNlKCk7cmV0dXJuIHJ8fChvPWh0W2FdLGh0W2FdPWksaT1udWxsIT1uKGUsdCxyKT9hOm51bGwsaHRbYV09byksaX19KTt2YXIgZ3Q9L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uKSQvaSx5dD0vXig/OmF8YXJlYSkkL2k7dy5mbi5leHRlbmQoe3Byb3A6ZnVuY3Rpb24oZSx0KXtyZXR1cm4geih0aGlzLHcucHJvcCxlLHQsYXJndW1lbnRzLmxlbmd0aD4xKX0scmVtb3ZlUHJvcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZGVsZXRlIHRoaXNbdy5wcm9wRml4W2VdfHxlXX0pfX0pLHcuZXh0ZW5kKHtwcm9wOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89ZS5ub2RlVHlwZTtpZigzIT09byYmOCE9PW8mJjIhPT1vKXJldHVybiAxPT09byYmdy5pc1hNTERvYyhlKXx8KHQ9dy5wcm9wRml4W3RdfHx0LGk9dy5wcm9wSG9va3NbdF0pLHZvaWQgMCE9PW4/aSYmInNldCJpbiBpJiZ2b2lkIDAhPT0ocj1pLnNldChlLG4sdCkpP3I6ZVt0XT1uOmkmJiJnZXQiaW4gaSYmbnVsbCE9PShyPWkuZ2V0KGUsdCkpP3I6ZVt0XX0scHJvcEhvb2tzOnt0YWJJbmRleDp7Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0PXcuZmluZC5hdHRyKGUsInRhYmluZGV4Iik7cmV0dXJuIHQ/cGFyc2VJbnQodCwxMCk6Z3QudGVzdChlLm5vZGVOYW1lKXx8eXQudGVzdChlLm5vZGVOYW1lKSYmZS5ocmVmPzA6LTF9fX0scHJvcEZpeDp7ImZvciI6Imh0bWxGb3IiLCJjbGFzcyI6ImNsYXNzTmFtZSJ9fSksaC5vcHRTZWxlY3RlZHx8KHcucHJvcEhvb2tzLnNlbGVjdGVkPXtnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wYXJlbnROb2RlO3JldHVybiB0JiZ0LnBhcmVudE5vZGUmJnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4LG51bGx9LHNldDpmdW5jdGlvbihlKXt2YXIgdD1lLnBhcmVudE5vZGU7dCYmKHQuc2VsZWN0ZWRJbmRleCx0LnBhcmVudE5vZGUmJnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4KX19KSx3LmVhY2goWyJ0YWJJbmRleCIsInJlYWRPbmx5IiwibWF4TGVuZ3RoIiwiY2VsbFNwYWNpbmciLCJjZWxsUGFkZGluZyIsInJvd1NwYW4iLCJjb2xTcGFuIiwidXNlTWFwIiwiZnJhbWVCb3JkZXIiLCJjb250ZW50RWRpdGFibGUiXSxmdW5jdGlvbigpe3cucHJvcEZpeFt0aGlzLnRvTG93ZXJDYXNlKCldPXRoaXN9KTtmdW5jdGlvbiB2dChlKXtyZXR1cm4oZS5tYXRjaChNKXx8W10pLmpvaW4oIiAiKX1mdW5jdGlvbiBtdChlKXtyZXR1cm4gZS5nZXRBdHRyaWJ1dGUmJmUuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIn1mdW5jdGlvbiB4dChlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT9lOiJzdHJpbmciPT10eXBlb2YgZT9lLm1hdGNoKE0pfHxbXTpbXX13LmZuLmV4dGVuZCh7YWRkQ2xhc3M6ZnVuY3Rpb24oZSl7dmFyIHQsbixyLGksbyxhLHMsdT0wO2lmKGcoZSkpcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbih0KXt3KHRoaXMpLmFkZENsYXNzKGUuY2FsbCh0aGlzLHQsbXQodGhpcykpKX0pO2lmKCh0PXh0KGUpKS5sZW5ndGgpd2hpbGUobj10aGlzW3UrK10paWYoaT1tdChuKSxyPTE9PT1uLm5vZGVUeXBlJiYiICIrdnQoaSkrIiAiKXthPTA7d2hpbGUobz10W2ErK10pci5pbmRleE9mKCIgIitvKyIgIik8MCYmKHIrPW8rIiAiKTtpIT09KHM9dnQocikpJiZuLnNldEF0dHJpYnV0ZSgiY2xhc3MiLHMpfXJldHVybiB0aGlzfSxyZW1vdmVDbGFzczpmdW5jdGlvbihlKXt2YXIgdCxuLHIsaSxvLGEscyx1PTA7aWYoZyhlKSlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKHQpe3codGhpcykucmVtb3ZlQ2xhc3MoZS5jYWxsKHRoaXMsdCxtdCh0aGlzKSkpfSk7aWYoIWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHRoaXMuYXR0cigiY2xhc3MiLCIiKTtpZigodD14dChlKSkubGVuZ3RoKXdoaWxlKG49dGhpc1t1KytdKWlmKGk9bXQobikscj0xPT09bi5ub2RlVHlwZSYmIiAiK3Z0KGkpKyIgIil7YT0wO3doaWxlKG89dFthKytdKXdoaWxlKHIuaW5kZXhPZigiICIrbysiICIpPi0xKXI9ci5yZXBsYWNlKCIgIitvKyIgIiwiICIpO2khPT0ocz12dChyKSkmJm4uc2V0QXR0cmlidXRlKCJjbGFzcyIscyl9cmV0dXJuIHRoaXN9LHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGUsdCl7dmFyIG49dHlwZW9mIGUscj0ic3RyaW5nIj09PW58fEFycmF5LmlzQXJyYXkoZSk7cmV0dXJuImJvb2xlYW4iPT10eXBlb2YgdCYmcj90P3RoaXMuYWRkQ2xhc3MoZSk6dGhpcy5yZW1vdmVDbGFzcyhlKTpnKGUpP3RoaXMuZWFjaChmdW5jdGlvbihuKXt3KHRoaXMpLnRvZ2dsZUNsYXNzKGUuY2FsbCh0aGlzLG4sbXQodGhpcyksdCksdCl9KTp0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgdCxpLG8sYTtpZihyKXtpPTAsbz13KHRoaXMpLGE9eHQoZSk7d2hpbGUodD1hW2krK10pby5oYXNDbGFzcyh0KT9vLnJlbW92ZUNsYXNzKHQpOm8uYWRkQ2xhc3ModCl9ZWxzZSB2b2lkIDAhPT1lJiYiYm9vbGVhbiIhPT1ufHwoKHQ9bXQodGhpcykpJiZKLnNldCh0aGlzLCJfX2NsYXNzTmFtZV9fIix0KSx0aGlzLnNldEF0dHJpYnV0ZSYmdGhpcy5zZXRBdHRyaWJ1dGUoImNsYXNzIix0fHwhMT09PWU/IiI6Si5nZXQodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIikpfSl9LGhhc0NsYXNzOmZ1bmN0aW9uKGUpe3ZhciB0LG4scj0wO3Q9IiAiK2UrIiAiO3doaWxlKG49dGhpc1tyKytdKWlmKDE9PT1uLm5vZGVUeXBlJiYoIiAiK3Z0KG10KG4pKSsiICIpLmluZGV4T2YodCk+LTEpcmV0dXJuITA7cmV0dXJuITF9fSk7dmFyIGJ0PS9cci9nO3cuZm4uZXh0ZW5kKHt2YWw6ZnVuY3Rpb24oZSl7dmFyIHQsbixyLGk9dGhpc1swXTt7aWYoYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gcj1nKGUpLHRoaXMuZWFjaChmdW5jdGlvbihuKXt2YXIgaTsxPT09dGhpcy5ub2RlVHlwZSYmKG51bGw9PShpPXI/ZS5jYWxsKHRoaXMsbix3KHRoaXMpLnZhbCgpKTplKT9pPSIiOiJudW1iZXIiPT10eXBlb2YgaT9pKz0iIjpBcnJheS5pc0FycmF5KGkpJiYoaT13Lm1hcChpLGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOmUrIiJ9KSksKHQ9dy52YWxIb29rc1t0aGlzLnR5cGVdfHx3LnZhbEhvb2tzW3RoaXMubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0pJiYic2V0ImluIHQmJnZvaWQgMCE9PXQuc2V0KHRoaXMsaSwidmFsdWUiKXx8KHRoaXMudmFsdWU9aSkpfSk7aWYoaSlyZXR1cm4odD13LnZhbEhvb2tzW2kudHlwZV18fHcudmFsSG9va3NbaS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpXSkmJiJnZXQiaW4gdCYmdm9pZCAwIT09KG49dC5nZXQoaSwidmFsdWUiKSk/bjoic3RyaW5nIj09dHlwZW9mKG49aS52YWx1ZSk/bi5yZXBsYWNlKGJ0LCIiKTpudWxsPT1uPyIiOm59fX0pLHcuZXh0ZW5kKHt2YWxIb29rczp7b3B0aW9uOntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9dy5maW5kLmF0dHIoZSwidmFsdWUiKTtyZXR1cm4gbnVsbCE9dD90OnZ0KHcudGV4dChlKSl9fSxzZWxlY3Q6e2dldDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsaT1lLm9wdGlvbnMsbz1lLnNlbGVjdGVkSW5kZXgsYT0ic2VsZWN0LW9uZSI9PT1lLnR5cGUscz1hP251bGw6W10sdT1hP28rMTppLmxlbmd0aDtmb3Iocj1vPDA/dTphP286MDtyPHU7cisrKWlmKCgobj1pW3JdKS5zZWxlY3RlZHx8cj09PW8pJiYhbi5kaXNhYmxlZCYmKCFuLnBhcmVudE5vZGUuZGlzYWJsZWR8fCFOKG4ucGFyZW50Tm9kZSwib3B0Z3JvdXAiKSkpe2lmKHQ9dyhuKS52YWwoKSxhKXJldHVybiB0O3MucHVzaCh0KX1yZXR1cm4gc30sc2V0OmZ1bmN0aW9uKGUsdCl7dmFyIG4scixpPWUub3B0aW9ucyxvPXcubWFrZUFycmF5KHQpLGE9aS5sZW5ndGg7d2hpbGUoYS0tKSgocj1pW2FdKS5zZWxlY3RlZD13LmluQXJyYXkody52YWxIb29rcy5vcHRpb24uZ2V0KHIpLG8pPi0xKSYmKG49ITApO3JldHVybiBufHwoZS5zZWxlY3RlZEluZGV4PS0xKSxvfX19fSksdy5lYWNoKFsicmFkaW8iLCJjaGVja2JveCJdLGZ1bmN0aW9uKCl7dy52YWxIb29rc1t0aGlzXT17c2V0OmZ1bmN0aW9uKGUsdCl7aWYoQXJyYXkuaXNBcnJheSh0KSlyZXR1cm4gZS5jaGVja2VkPXcuaW5BcnJheSh3KGUpLnZhbCgpLHQpPi0xfX0saC5jaGVja09ufHwody52YWxIb29rc1t0aGlzXS5nZXQ9ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PT1lLmdldEF0dHJpYnV0ZSgidmFsdWUiKT8ib24iOmUudmFsdWV9KX0pLGguZm9jdXNpbj0ib25mb2N1c2luImluIGU7dmFyIHd0PS9eKD86Zm9jdXNpbmZvY3VzfGZvY3Vzb3V0Ymx1cikkLyxUdD1mdW5jdGlvbihlKXtlLnN0b3BQcm9wYWdhdGlvbigpfTt3LmV4dGVuZCh3LmV2ZW50LHt0cmlnZ2VyOmZ1bmN0aW9uKHQsbixpLG8pe3ZhciBhLHMsdSxsLGMscCxkLGgsdj1baXx8cl0sbT1mLmNhbGwodCwidHlwZSIpP3QudHlwZTp0LHg9Zi5jYWxsKHQsIm5hbWVzcGFjZSIpP3QubmFtZXNwYWNlLnNwbGl0KCIuIik6W107aWYocz1oPXU9aT1pfHxyLDMhPT1pLm5vZGVUeXBlJiY4IT09aS5ub2RlVHlwZSYmIXd0LnRlc3QobSt3LmV2ZW50LnRyaWdnZXJlZCkmJihtLmluZGV4T2YoIi4iKT4tMSYmKG09KHg9bS5zcGxpdCgiLiIpKS5zaGlmdCgpLHguc29ydCgpKSxjPW0uaW5kZXhPZigiOiIpPDAmJiJvbiIrbSx0PXRbdy5leHBhbmRvXT90Om5ldyB3LkV2ZW50KG0sIm9iamVjdCI9PXR5cGVvZiB0JiZ0KSx0LmlzVHJpZ2dlcj1vPzI6Myx0Lm5hbWVzcGFjZT14LmpvaW4oIi4iKSx0LnJuYW1lc3BhY2U9dC5uYW1lc3BhY2U/bmV3IFJlZ0V4cCgiKF58XFwuKSIreC5qb2luKCJcXC4oPzouKlxcLnwpIikrIihcXC58JCkiKTpudWxsLHQucmVzdWx0PXZvaWQgMCx0LnRhcmdldHx8KHQudGFyZ2V0PWkpLG49bnVsbD09bj9bdF06dy5tYWtlQXJyYXkobixbdF0pLGQ9dy5ldmVudC5zcGVjaWFsW21dfHx7fSxvfHwhZC50cmlnZ2VyfHwhMSE9PWQudHJpZ2dlci5hcHBseShpLG4pKSl7aWYoIW8mJiFkLm5vQnViYmxlJiYheShpKSl7Zm9yKGw9ZC5kZWxlZ2F0ZVR5cGV8fG0sd3QudGVzdChsK20pfHwocz1zLnBhcmVudE5vZGUpO3M7cz1zLnBhcmVudE5vZGUpdi5wdXNoKHMpLHU9czt1PT09KGkub3duZXJEb2N1bWVudHx8cikmJnYucHVzaCh1LmRlZmF1bHRWaWV3fHx1LnBhcmVudFdpbmRvd3x8ZSl9YT0wO3doaWxlKChzPXZbYSsrXSkmJiF0LmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpaD1zLHQudHlwZT1hPjE/bDpkLmJpbmRUeXBlfHxtLChwPShKLmdldChzLCJldmVudHMiKXx8e30pW3QudHlwZV0mJkouZ2V0KHMsImhhbmRsZSIpKSYmcC5hcHBseShzLG4pLChwPWMmJnNbY10pJiZwLmFwcGx5JiZZKHMpJiYodC5yZXN1bHQ9cC5hcHBseShzLG4pLCExPT09dC5yZXN1bHQmJnQucHJldmVudERlZmF1bHQoKSk7cmV0dXJuIHQudHlwZT1tLG98fHQuaXNEZWZhdWx0UHJldmVudGVkKCl8fGQuX2RlZmF1bHQmJiExIT09ZC5fZGVmYXVsdC5hcHBseSh2LnBvcCgpLG4pfHwhWShpKXx8YyYmZyhpW21dKSYmIXkoaSkmJigodT1pW2NdKSYmKGlbY109bnVsbCksdy5ldmVudC50cmlnZ2VyZWQ9bSx0LmlzUHJvcGFnYXRpb25TdG9wcGVkKCkmJmguYWRkRXZlbnRMaXN0ZW5lcihtLFR0KSxpW21dKCksdC5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpJiZoLnJlbW92ZUV2ZW50TGlzdGVuZXIobSxUdCksdy5ldmVudC50cmlnZ2VyZWQ9dm9pZCAwLHUmJihpW2NdPXUpKSx0LnJlc3VsdH19LHNpbXVsYXRlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj13LmV4dGVuZChuZXcgdy5FdmVudCxuLHt0eXBlOmUsaXNTaW11bGF0ZWQ6ITB9KTt3LmV2ZW50LnRyaWdnZXIocixudWxsLHQpfX0pLHcuZm4uZXh0ZW5kKHt0cmlnZ2VyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3cuZXZlbnQudHJpZ2dlcihlLHQsdGhpcyl9KX0sdHJpZ2dlckhhbmRsZXI6ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzWzBdO2lmKG4pcmV0dXJuIHcuZXZlbnQudHJpZ2dlcihlLHQsbiwhMCl9fSksaC5mb2N1c2lufHx3LmVhY2goe2ZvY3VzOiJmb2N1c2luIixibHVyOiJmb2N1c291dCJ9LGZ1bmN0aW9uKGUsdCl7dmFyIG49ZnVuY3Rpb24oZSl7dy5ldmVudC5zaW11bGF0ZSh0LGUudGFyZ2V0LHcuZXZlbnQuZml4KGUpKX07dy5ldmVudC5zcGVjaWFsW3RdPXtzZXR1cDpmdW5jdGlvbigpe3ZhciByPXRoaXMub3duZXJEb2N1bWVudHx8dGhpcyxpPUouYWNjZXNzKHIsdCk7aXx8ci5hZGRFdmVudExpc3RlbmVyKGUsbiwhMCksSi5hY2Nlc3Mocix0LChpfHwwKSsxKX0sdGVhcmRvd246ZnVuY3Rpb24oKXt2YXIgcj10aGlzLm93bmVyRG9jdW1lbnR8fHRoaXMsaT1KLmFjY2VzcyhyLHQpLTE7aT9KLmFjY2VzcyhyLHQsaSk6KHIucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLG4sITApLEoucmVtb3ZlKHIsdCkpfX19KTt2YXIgQ3Q9ZS5sb2NhdGlvbixFdD1EYXRlLm5vdygpLGt0PS9cPy87dy5wYXJzZVhNTD1mdW5jdGlvbih0KXt2YXIgbjtpZighdHx8InN0cmluZyIhPXR5cGVvZiB0KXJldHVybiBudWxsO3RyeXtuPShuZXcgZS5ET01QYXJzZXIpLnBhcnNlRnJvbVN0cmluZyh0LCJ0ZXh0L3htbCIpfWNhdGNoKGUpe249dm9pZCAwfXJldHVybiBuJiYhbi5nZXRFbGVtZW50c0J5VGFnTmFtZSgicGFyc2VyZXJyb3IiKS5sZW5ndGh8fHcuZXJyb3IoIkludmFsaWQgWE1MOiAiK3QpLG59O3ZhciBTdD0vXFtcXSQvLER0PS9ccj9cbi9nLE50PS9eKD86c3VibWl0fGJ1dHRvbnxpbWFnZXxyZXNldHxmaWxlKSQvaSxBdD0vXig/OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxrZXlnZW4pL2k7ZnVuY3Rpb24ganQoZSx0LG4scil7dmFyIGk7aWYoQXJyYXkuaXNBcnJheSh0KSl3LmVhY2godCxmdW5jdGlvbih0LGkpe258fFN0LnRlc3QoZSk/cihlLGkpOmp0KGUrIlsiKygib2JqZWN0Ij09dHlwZW9mIGkmJm51bGwhPWk/dDoiIikrIl0iLGksbixyKX0pO2Vsc2UgaWYobnx8Im9iamVjdCIhPT14KHQpKXIoZSx0KTtlbHNlIGZvcihpIGluIHQpanQoZSsiWyIraSsiXSIsdFtpXSxuLHIpfXcucGFyYW09ZnVuY3Rpb24oZSx0KXt2YXIgbixyPVtdLGk9ZnVuY3Rpb24oZSx0KXt2YXIgbj1nKHQpP3QoKTp0O3Jbci5sZW5ndGhdPWVuY29kZVVSSUNvbXBvbmVudChlKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KG51bGw9PW4/IiI6bil9O2lmKEFycmF5LmlzQXJyYXkoZSl8fGUuanF1ZXJ5JiYhdy5pc1BsYWluT2JqZWN0KGUpKXcuZWFjaChlLGZ1bmN0aW9uKCl7aSh0aGlzLm5hbWUsdGhpcy52YWx1ZSl9KTtlbHNlIGZvcihuIGluIGUpanQobixlW25dLHQsaSk7cmV0dXJuIHIuam9pbigiJiIpfSx3LmZuLmV4dGVuZCh7c2VyaWFsaXplOmZ1bmN0aW9uKCl7cmV0dXJuIHcucGFyYW0odGhpcy5zZXJpYWxpemVBcnJheSgpKX0sc2VyaWFsaXplQXJyYXk6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oKXt2YXIgZT13LnByb3AodGhpcywiZWxlbWVudHMiKTtyZXR1cm4gZT93Lm1ha2VBcnJheShlKTp0aGlzfSkuZmlsdGVyKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcy50eXBlO3JldHVybiB0aGlzLm5hbWUmJiF3KHRoaXMpLmlzKCI6ZGlzYWJsZWQiKSYmQXQudGVzdCh0aGlzLm5vZGVOYW1lKSYmIU50LnRlc3QoZSkmJih0aGlzLmNoZWNrZWR8fCFwZS50ZXN0KGUpKX0pLm1hcChmdW5jdGlvbihlLHQpe3ZhciBuPXcodGhpcykudmFsKCk7cmV0dXJuIG51bGw9PW4/bnVsbDpBcnJheS5pc0FycmF5KG4pP3cubWFwKG4sZnVuY3Rpb24oZSl7cmV0dXJue25hbWU6dC5uYW1lLHZhbHVlOmUucmVwbGFjZShEdCwiXHJcbiIpfX0pOntuYW1lOnQubmFtZSx2YWx1ZTpuLnJlcGxhY2UoRHQsIlxyXG4iKX19KS5nZXQoKX19KTt2YXIgcXQ9LyUyMC9nLEx0PS8jLiokLyxIdD0vKFs/Jl0pXz1bXiZdKi8sT3Q9L14oLio/KTpbIFx0XSooW15cclxuXSopJC9nbSxQdD0vXig/OmFib3V0fGFwcHxhcHAtc3RvcmFnZXwuKy1leHRlbnNpb258ZmlsZXxyZXN8d2lkZ2V0KTokLyxNdD0vXig/OkdFVHxIRUFEKSQvLFJ0PS9eXC9cLy8sSXQ9e30sV3Q9e30sJHQ9IiovIi5jb25jYXQoIioiKSxCdD1yLmNyZWF0ZUVsZW1lbnQoImEiKTtCdC5ocmVmPUN0LmhyZWY7ZnVuY3Rpb24gRnQoZSl7cmV0dXJuIGZ1bmN0aW9uKHQsbil7InN0cmluZyIhPXR5cGVvZiB0JiYobj10LHQ9IioiKTt2YXIgcixpPTAsbz10LnRvTG93ZXJDYXNlKCkubWF0Y2goTSl8fFtdO2lmKGcobikpd2hpbGUocj1vW2krK10pIisiPT09clswXT8ocj1yLnNsaWNlKDEpfHwiKiIsKGVbcl09ZVtyXXx8W10pLnVuc2hpZnQobikpOihlW3JdPWVbcl18fFtdKS5wdXNoKG4pfX1mdW5jdGlvbiBfdChlLHQsbixyKXt2YXIgaT17fSxvPWU9PT1XdDtmdW5jdGlvbiBhKHMpe3ZhciB1O3JldHVybiBpW3NdPSEwLHcuZWFjaChlW3NdfHxbXSxmdW5jdGlvbihlLHMpe3ZhciBsPXModCxuLHIpO3JldHVybiJzdHJpbmciIT10eXBlb2YgbHx8b3x8aVtsXT9vPyEodT1sKTp2b2lkIDA6KHQuZGF0YVR5cGVzLnVuc2hpZnQobCksYShsKSwhMSl9KSx1fXJldHVybiBhKHQuZGF0YVR5cGVzWzBdKXx8IWlbIioiXSYmYSgiKiIpfWZ1bmN0aW9uIHp0KGUsdCl7dmFyIG4scixpPXcuYWpheFNldHRpbmdzLmZsYXRPcHRpb25zfHx7fTtmb3IobiBpbiB0KXZvaWQgMCE9PXRbbl0mJigoaVtuXT9lOnJ8fChyPXt9KSlbbl09dFtuXSk7cmV0dXJuIHImJncuZXh0ZW5kKCEwLGUsciksZX1mdW5jdGlvbiBYdChlLHQsbil7dmFyIHIsaSxvLGEscz1lLmNvbnRlbnRzLHU9ZS5kYXRhVHlwZXM7d2hpbGUoIioiPT09dVswXSl1LnNoaWZ0KCksdm9pZCAwPT09ciYmKHI9ZS5taW1lVHlwZXx8dC5nZXRSZXNwb25zZUhlYWRlcigiQ29udGVudC1UeXBlIikpO2lmKHIpZm9yKGkgaW4gcylpZihzW2ldJiZzW2ldLnRlc3Qocikpe3UudW5zaGlmdChpKTticmVha31pZih1WzBdaW4gbilvPXVbMF07ZWxzZXtmb3IoaSBpbiBuKXtpZighdVswXXx8ZS5jb252ZXJ0ZXJzW2krIiAiK3VbMF1dKXtvPWk7YnJlYWt9YXx8KGE9aSl9bz1vfHxhfWlmKG8pcmV0dXJuIG8hPT11WzBdJiZ1LnVuc2hpZnQobyksbltvXX1mdW5jdGlvbiBVdChlLHQsbixyKXt2YXIgaSxvLGEscyx1LGw9e30sYz1lLmRhdGFUeXBlcy5zbGljZSgpO2lmKGNbMV0pZm9yKGEgaW4gZS5jb252ZXJ0ZXJzKWxbYS50b0xvd2VyQ2FzZSgpXT1lLmNvbnZlcnRlcnNbYV07bz1jLnNoaWZ0KCk7d2hpbGUobylpZihlLnJlc3BvbnNlRmllbGRzW29dJiYobltlLnJlc3BvbnNlRmllbGRzW29dXT10KSwhdSYmciYmZS5kYXRhRmlsdGVyJiYodD1lLmRhdGFGaWx0ZXIodCxlLmRhdGFUeXBlKSksdT1vLG89Yy5zaGlmdCgpKWlmKCIqIj09PW8pbz11O2Vsc2UgaWYoIioiIT09dSYmdSE9PW8pe2lmKCEoYT1sW3UrIiAiK29dfHxsWyIqICIrb10pKWZvcihpIGluIGwpaWYoKHM9aS5zcGxpdCgiICIpKVsxXT09PW8mJihhPWxbdSsiICIrc1swXV18fGxbIiogIitzWzBdXSkpeyEwPT09YT9hPWxbaV06ITAhPT1sW2ldJiYobz1zWzBdLGMudW5zaGlmdChzWzFdKSk7YnJlYWt9aWYoITAhPT1hKWlmKGEmJmVbInRocm93cyJdKXQ9YSh0KTtlbHNlIHRyeXt0PWEodCl9Y2F0Y2goZSl7cmV0dXJue3N0YXRlOiJwYXJzZXJlcnJvciIsZXJyb3I6YT9lOiJObyBjb252ZXJzaW9uIGZyb20gIit1KyIgdG8gIitvfX19cmV0dXJue3N0YXRlOiJzdWNjZXNzIixkYXRhOnR9fXcuZXh0ZW5kKHthY3RpdmU6MCxsYXN0TW9kaWZpZWQ6e30sZXRhZzp7fSxhamF4U2V0dGluZ3M6e3VybDpDdC5ocmVmLHR5cGU6IkdFVCIsaXNMb2NhbDpQdC50ZXN0KEN0LnByb3RvY29sKSxnbG9iYWw6ITAscHJvY2Vzc0RhdGE6ITAsYXN5bmM6ITAsY29udGVudFR5cGU6ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDsgY2hhcnNldD1VVEYtOCIsYWNjZXB0czp7IioiOiR0LHRleHQ6InRleHQvcGxhaW4iLGh0bWw6InRleHQvaHRtbCIseG1sOiJhcHBsaWNhdGlvbi94bWwsIHRleHQveG1sIixqc29uOiJhcHBsaWNhdGlvbi9qc29uLCB0ZXh0L2phdmFzY3JpcHQifSxjb250ZW50czp7eG1sOi9cYnhtbFxiLyxodG1sOi9cYmh0bWwvLGpzb246L1xianNvblxiL30scmVzcG9uc2VGaWVsZHM6e3htbDoicmVzcG9uc2VYTUwiLHRleHQ6InJlc3BvbnNlVGV4dCIsanNvbjoicmVzcG9uc2VKU09OIn0sY29udmVydGVyczp7IiogdGV4dCI6U3RyaW5nLCJ0ZXh0IGh0bWwiOiEwLCJ0ZXh0IGpzb24iOkpTT04ucGFyc2UsInRleHQgeG1sIjp3LnBhcnNlWE1MfSxmbGF0T3B0aW9uczp7dXJsOiEwLGNvbnRleHQ6ITB9fSxhamF4U2V0dXA6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdD96dCh6dChlLHcuYWpheFNldHRpbmdzKSx0KTp6dCh3LmFqYXhTZXR0aW5ncyxlKX0sYWpheFByZWZpbHRlcjpGdChJdCksYWpheFRyYW5zcG9ydDpGdChXdCksYWpheDpmdW5jdGlvbih0LG4peyJvYmplY3QiPT10eXBlb2YgdCYmKG49dCx0PXZvaWQgMCksbj1ufHx7fTt2YXIgaSxvLGEscyx1LGwsYyxmLHAsZCxoPXcuYWpheFNldHVwKHt9LG4pLGc9aC5jb250ZXh0fHxoLHk9aC5jb250ZXh0JiYoZy5ub2RlVHlwZXx8Zy5qcXVlcnkpP3coZyk6dy5ldmVudCx2PXcuRGVmZXJyZWQoKSxtPXcuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLHg9aC5zdGF0dXNDb2RlfHx7fSxiPXt9LFQ9e30sQz0iY2FuY2VsZWQiLEU9e3JlYWR5U3RhdGU6MCxnZXRSZXNwb25zZUhlYWRlcjpmdW5jdGlvbihlKXt2YXIgdDtpZihjKXtpZighcyl7cz17fTt3aGlsZSh0PU90LmV4ZWMoYSkpc1t0WzFdLnRvTG93ZXJDYXNlKCldPXRbMl19dD1zW2UudG9Mb3dlckNhc2UoKV19cmV0dXJuIG51bGw9PXQ/bnVsbDp0fSxnZXRBbGxSZXNwb25zZUhlYWRlcnM6ZnVuY3Rpb24oKXtyZXR1cm4gYz9hOm51bGx9LHNldFJlcXVlc3RIZWFkZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbnVsbD09YyYmKGU9VFtlLnRvTG93ZXJDYXNlKCldPVRbZS50b0xvd2VyQ2FzZSgpXXx8ZSxiW2VdPXQpLHRoaXN9LG92ZXJyaWRlTWltZVR5cGU6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PWMmJihoLm1pbWVUeXBlPWUpLHRoaXN9LHN0YXR1c0NvZGU6ZnVuY3Rpb24oZSl7dmFyIHQ7aWYoZSlpZihjKUUuYWx3YXlzKGVbRS5zdGF0dXNdKTtlbHNlIGZvcih0IGluIGUpeFt0XT1beFt0XSxlW3RdXTtyZXR1cm4gdGhpc30sYWJvcnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZXx8QztyZXR1cm4gaSYmaS5hYm9ydCh0KSxrKDAsdCksdGhpc319O2lmKHYucHJvbWlzZShFKSxoLnVybD0oKHR8fGgudXJsfHxDdC5ocmVmKSsiIikucmVwbGFjZShSdCxDdC5wcm90b2NvbCsiLy8iKSxoLnR5cGU9bi5tZXRob2R8fG4udHlwZXx8aC5tZXRob2R8fGgudHlwZSxoLmRhdGFUeXBlcz0oaC5kYXRhVHlwZXx8IioiKS50b0xvd2VyQ2FzZSgpLm1hdGNoKE0pfHxbIiJdLG51bGw9PWguY3Jvc3NEb21haW4pe2w9ci5jcmVhdGVFbGVtZW50KCJhIik7dHJ5e2wuaHJlZj1oLnVybCxsLmhyZWY9bC5ocmVmLGguY3Jvc3NEb21haW49QnQucHJvdG9jb2wrIi8vIitCdC5ob3N0IT1sLnByb3RvY29sKyIvLyIrbC5ob3N0fWNhdGNoKGUpe2guY3Jvc3NEb21haW49ITB9fWlmKGguZGF0YSYmaC5wcm9jZXNzRGF0YSYmInN0cmluZyIhPXR5cGVvZiBoLmRhdGEmJihoLmRhdGE9dy5wYXJhbShoLmRhdGEsaC50cmFkaXRpb25hbCkpLF90KEl0LGgsbixFKSxjKXJldHVybiBFOyhmPXcuZXZlbnQmJmguZ2xvYmFsKSYmMD09dy5hY3RpdmUrKyYmdy5ldmVudC50cmlnZ2VyKCJhamF4U3RhcnQiKSxoLnR5cGU9aC50eXBlLnRvVXBwZXJDYXNlKCksaC5oYXNDb250ZW50PSFNdC50ZXN0KGgudHlwZSksbz1oLnVybC5yZXBsYWNlKEx0LCIiKSxoLmhhc0NvbnRlbnQ/aC5kYXRhJiZoLnByb2Nlc3NEYXRhJiYwPT09KGguY29udGVudFR5cGV8fCIiKS5pbmRleE9mKCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiKSYmKGguZGF0YT1oLmRhdGEucmVwbGFjZShxdCwiKyIpKTooZD1oLnVybC5zbGljZShvLmxlbmd0aCksaC5kYXRhJiYoaC5wcm9jZXNzRGF0YXx8InN0cmluZyI9PXR5cGVvZiBoLmRhdGEpJiYobys9KGt0LnRlc3Qobyk/IiYiOiI/IikraC5kYXRhLGRlbGV0ZSBoLmRhdGEpLCExPT09aC5jYWNoZSYmKG89by5yZXBsYWNlKEh0LCIkMSIpLGQ9KGt0LnRlc3Qobyk/IiYiOiI/IikrIl89IitFdCsrK2QpLGgudXJsPW8rZCksaC5pZk1vZGlmaWVkJiYody5sYXN0TW9kaWZpZWRbb10mJkUuc2V0UmVxdWVzdEhlYWRlcigiSWYtTW9kaWZpZWQtU2luY2UiLHcubGFzdE1vZGlmaWVkW29dKSx3LmV0YWdbb10mJkUuc2V0UmVxdWVzdEhlYWRlcigiSWYtTm9uZS1NYXRjaCIsdy5ldGFnW29dKSksKGguZGF0YSYmaC5oYXNDb250ZW50JiYhMSE9PWguY29udGVudFR5cGV8fG4uY29udGVudFR5cGUpJiZFLnNldFJlcXVlc3RIZWFkZXIoIkNvbnRlbnQtVHlwZSIsaC5jb250ZW50VHlwZSksRS5zZXRSZXF1ZXN0SGVhZGVyKCJBY2NlcHQiLGguZGF0YVR5cGVzWzBdJiZoLmFjY2VwdHNbaC5kYXRhVHlwZXNbMF1dP2guYWNjZXB0c1toLmRhdGFUeXBlc1swXV0rKCIqIiE9PWguZGF0YVR5cGVzWzBdPyIsICIrJHQrIjsgcT0wLjAxIjoiIik6aC5hY2NlcHRzWyIqIl0pO2ZvcihwIGluIGguaGVhZGVycylFLnNldFJlcXVlc3RIZWFkZXIocCxoLmhlYWRlcnNbcF0pO2lmKGguYmVmb3JlU2VuZCYmKCExPT09aC5iZWZvcmVTZW5kLmNhbGwoZyxFLGgpfHxjKSlyZXR1cm4gRS5hYm9ydCgpO2lmKEM9ImFib3J0IixtLmFkZChoLmNvbXBsZXRlKSxFLmRvbmUoaC5zdWNjZXNzKSxFLmZhaWwoaC5lcnJvciksaT1fdChXdCxoLG4sRSkpe2lmKEUucmVhZHlTdGF0ZT0xLGYmJnkudHJpZ2dlcigiYWpheFNlbmQiLFtFLGhdKSxjKXJldHVybiBFO2guYXN5bmMmJmgudGltZW91dD4wJiYodT1lLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtFLmFib3J0KCJ0aW1lb3V0Iil9LGgudGltZW91dCkpO3RyeXtjPSExLGkuc2VuZChiLGspfWNhdGNoKGUpe2lmKGMpdGhyb3cgZTtrKC0xLGUpfX1lbHNlIGsoLTEsIk5vIFRyYW5zcG9ydCIpO2Z1bmN0aW9uIGsodCxuLHIscyl7dmFyIGwscCxkLGIsVCxDPW47Y3x8KGM9ITAsdSYmZS5jbGVhclRpbWVvdXQodSksaT12b2lkIDAsYT1zfHwiIixFLnJlYWR5U3RhdGU9dD4wPzQ6MCxsPXQ+PTIwMCYmdDwzMDB8fDMwND09PXQsciYmKGI9WHQoaCxFLHIpKSxiPVV0KGgsYixFLGwpLGw/KGguaWZNb2RpZmllZCYmKChUPUUuZ2V0UmVzcG9uc2VIZWFkZXIoIkxhc3QtTW9kaWZpZWQiKSkmJih3Lmxhc3RNb2RpZmllZFtvXT1UKSwoVD1FLmdldFJlc3BvbnNlSGVhZGVyKCJldGFnIikpJiYody5ldGFnW29dPVQpKSwyMDQ9PT10fHwiSEVBRCI9PT1oLnR5cGU/Qz0ibm9jb250ZW50IjozMDQ9PT10P0M9Im5vdG1vZGlmaWVkIjooQz1iLnN0YXRlLHA9Yi5kYXRhLGw9IShkPWIuZXJyb3IpKSk6KGQ9QywhdCYmQ3x8KEM9ImVycm9yIix0PDAmJih0PTApKSksRS5zdGF0dXM9dCxFLnN0YXR1c1RleHQ9KG58fEMpKyIiLGw/di5yZXNvbHZlV2l0aChnLFtwLEMsRV0pOnYucmVqZWN0V2l0aChnLFtFLEMsZF0pLEUuc3RhdHVzQ29kZSh4KSx4PXZvaWQgMCxmJiZ5LnRyaWdnZXIobD8iYWpheFN1Y2Nlc3MiOiJhamF4RXJyb3IiLFtFLGgsbD9wOmRdKSxtLmZpcmVXaXRoKGcsW0UsQ10pLGYmJih5LnRyaWdnZXIoImFqYXhDb21wbGV0ZSIsW0UsaF0pLC0tdy5hY3RpdmV8fHcuZXZlbnQudHJpZ2dlcigiYWpheFN0b3AiKSkpfXJldHVybiBFfSxnZXRKU09OOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdy5nZXQoZSx0LG4sImpzb24iKX0sZ2V0U2NyaXB0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHcuZ2V0KGUsdm9pZCAwLHQsInNjcmlwdCIpfX0pLHcuZWFjaChbImdldCIsInBvc3QiXSxmdW5jdGlvbihlLHQpe3dbdF09ZnVuY3Rpb24oZSxuLHIsaSl7cmV0dXJuIGcobikmJihpPWl8fHIscj1uLG49dm9pZCAwKSx3LmFqYXgody5leHRlbmQoe3VybDplLHR5cGU6dCxkYXRhVHlwZTppLGRhdGE6bixzdWNjZXNzOnJ9LHcuaXNQbGFpbk9iamVjdChlKSYmZSkpfX0pLHcuX2V2YWxVcmw9ZnVuY3Rpb24oZSl7cmV0dXJuIHcuYWpheCh7dXJsOmUsdHlwZToiR0VUIixkYXRhVHlwZToic2NyaXB0IixjYWNoZTohMCxhc3luYzohMSxnbG9iYWw6ITEsInRocm93cyI6ITB9KX0sdy5mbi5leHRlbmQoe3dyYXBBbGw6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIHRoaXNbMF0mJihnKGUpJiYoZT1lLmNhbGwodGhpc1swXSkpLHQ9dyhlLHRoaXNbMF0ub3duZXJEb2N1bWVudCkuZXEoMCkuY2xvbmUoITApLHRoaXNbMF0ucGFyZW50Tm9kZSYmdC5pbnNlcnRCZWZvcmUodGhpc1swXSksdC5tYXAoZnVuY3Rpb24oKXt2YXIgZT10aGlzO3doaWxlKGUuZmlyc3RFbGVtZW50Q2hpbGQpZT1lLmZpcnN0RWxlbWVudENoaWxkO3JldHVybiBlfSkuYXBwZW5kKHRoaXMpKSx0aGlzfSx3cmFwSW5uZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGcoZSk/dGhpcy5lYWNoKGZ1bmN0aW9uKHQpe3codGhpcykud3JhcElubmVyKGUuY2FsbCh0aGlzLHQpKX0pOnRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PXcodGhpcyksbj10LmNvbnRlbnRzKCk7bi5sZW5ndGg/bi53cmFwQWxsKGUpOnQuYXBwZW5kKGUpfSl9LHdyYXA6ZnVuY3Rpb24oZSl7dmFyIHQ9ZyhlKTtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKG4pe3codGhpcykud3JhcEFsbCh0P2UuY2FsbCh0aGlzLG4pOmUpfSl9LHVud3JhcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wYXJlbnQoZSkubm90KCJib2R5IikuZWFjaChmdW5jdGlvbigpe3codGhpcykucmVwbGFjZVdpdGgodGhpcy5jaGlsZE5vZGVzKX0pLHRoaXN9fSksdy5leHByLnBzZXVkb3MuaGlkZGVuPWZ1bmN0aW9uKGUpe3JldHVybiF3LmV4cHIucHNldWRvcy52aXNpYmxlKGUpfSx3LmV4cHIucHNldWRvcy52aXNpYmxlPWZ1bmN0aW9uKGUpe3JldHVybiEhKGUub2Zmc2V0V2lkdGh8fGUub2Zmc2V0SGVpZ2h0fHxlLmdldENsaWVudFJlY3RzKCkubGVuZ3RoKX0sdy5hamF4U2V0dGluZ3MueGhyPWZ1bmN0aW9uKCl7dHJ5e3JldHVybiBuZXcgZS5YTUxIdHRwUmVxdWVzdH1jYXRjaChlKXt9fTt2YXIgVnQ9ezA6MjAwLDEyMjM6MjA0fSxHdD13LmFqYXhTZXR0aW5ncy54aHIoKTtoLmNvcnM9ISFHdCYmIndpdGhDcmVkZW50aWFscyJpbiBHdCxoLmFqYXg9R3Q9ISFHdCx3LmFqYXhUcmFuc3BvcnQoZnVuY3Rpb24odCl7dmFyIG4scjtpZihoLmNvcnN8fEd0JiYhdC5jcm9zc0RvbWFpbilyZXR1cm57c2VuZDpmdW5jdGlvbihpLG8pe3ZhciBhLHM9dC54aHIoKTtpZihzLm9wZW4odC50eXBlLHQudXJsLHQuYXN5bmMsdC51c2VybmFtZSx0LnBhc3N3b3JkKSx0LnhockZpZWxkcylmb3IoYSBpbiB0LnhockZpZWxkcylzW2FdPXQueGhyRmllbGRzW2FdO3QubWltZVR5cGUmJnMub3ZlcnJpZGVNaW1lVHlwZSYmcy5vdmVycmlkZU1pbWVUeXBlKHQubWltZVR5cGUpLHQuY3Jvc3NEb21haW58fGlbIlgtUmVxdWVzdGVkLVdpdGgiXXx8KGlbIlgtUmVxdWVzdGVkLVdpdGgiXT0iWE1MSHR0cFJlcXVlc3QiKTtmb3IoYSBpbiBpKXMuc2V0UmVxdWVzdEhlYWRlcihhLGlbYV0pO249ZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKCl7biYmKG49cj1zLm9ubG9hZD1zLm9uZXJyb3I9cy5vbmFib3J0PXMub250aW1lb3V0PXMub25yZWFkeXN0YXRlY2hhbmdlPW51bGwsImFib3J0Ij09PWU/cy5hYm9ydCgpOiJlcnJvciI9PT1lPyJudW1iZXIiIT10eXBlb2Ygcy5zdGF0dXM/bygwLCJlcnJvciIpOm8ocy5zdGF0dXMscy5zdGF0dXNUZXh0KTpvKFZ0W3Muc3RhdHVzXXx8cy5zdGF0dXMscy5zdGF0dXNUZXh0LCJ0ZXh0IiE9PShzLnJlc3BvbnNlVHlwZXx8InRleHQiKXx8InN0cmluZyIhPXR5cGVvZiBzLnJlc3BvbnNlVGV4dD97YmluYXJ5OnMucmVzcG9uc2V9Ont0ZXh0OnMucmVzcG9uc2VUZXh0fSxzLmdldEFsbFJlc3BvbnNlSGVhZGVycygpKSl9fSxzLm9ubG9hZD1uKCkscj1zLm9uZXJyb3I9cy5vbnRpbWVvdXQ9bigiZXJyb3IiKSx2b2lkIDAhPT1zLm9uYWJvcnQ/cy5vbmFib3J0PXI6cy5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXs0PT09cy5yZWFkeVN0YXRlJiZlLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtuJiZyKCl9KX0sbj1uKCJhYm9ydCIpO3RyeXtzLnNlbmQodC5oYXNDb250ZW50JiZ0LmRhdGF8fG51bGwpfWNhdGNoKGUpe2lmKG4pdGhyb3cgZX19LGFib3J0OmZ1bmN0aW9uKCl7biYmbigpfX19KSx3LmFqYXhQcmVmaWx0ZXIoZnVuY3Rpb24oZSl7ZS5jcm9zc0RvbWFpbiYmKGUuY29udGVudHMuc2NyaXB0PSExKX0pLHcuYWpheFNldHVwKHthY2NlcHRzOntzY3JpcHQ6InRleHQvamF2YXNjcmlwdCwgYXBwbGljYXRpb24vamF2YXNjcmlwdCwgYXBwbGljYXRpb24vZWNtYXNjcmlwdCwgYXBwbGljYXRpb24veC1lY21hc2NyaXB0In0sY29udGVudHM6e3NjcmlwdDovXGIoPzpqYXZhfGVjbWEpc2NyaXB0XGIvfSxjb252ZXJ0ZXJzOnsidGV4dCBzY3JpcHQiOmZ1bmN0aW9uKGUpe3JldHVybiB3Lmdsb2JhbEV2YWwoZSksZX19fSksdy5hamF4UHJlZmlsdGVyKCJzY3JpcHQiLGZ1bmN0aW9uKGUpe3ZvaWQgMD09PWUuY2FjaGUmJihlLmNhY2hlPSExKSxlLmNyb3NzRG9tYWluJiYoZS50eXBlPSJHRVQiKX0pLHcuYWpheFRyYW5zcG9ydCgic2NyaXB0IixmdW5jdGlvbihlKXtpZihlLmNyb3NzRG9tYWluKXt2YXIgdCxuO3JldHVybntzZW5kOmZ1bmN0aW9uKGksbyl7dD13KCI8c2NyaXB0PiIpLnByb3Aoe2NoYXJzZXQ6ZS5zY3JpcHRDaGFyc2V0LHNyYzplLnVybH0pLm9uKCJsb2FkIGVycm9yIixuPWZ1bmN0aW9uKGUpe3QucmVtb3ZlKCksbj1udWxsLGUmJm8oImVycm9yIj09PWUudHlwZT80MDQ6MjAwLGUudHlwZSl9KSxyLmhlYWQuYXBwZW5kQ2hpbGQodFswXSl9LGFib3J0OmZ1bmN0aW9uKCl7biYmbigpfX19fSk7dmFyIFl0PVtdLFF0PS8oPSlcPyg/PSZ8JCl8XD9cPy87dy5hamF4U2V0dXAoe2pzb25wOiJjYWxsYmFjayIsanNvbnBDYWxsYmFjazpmdW5jdGlvbigpe3ZhciBlPVl0LnBvcCgpfHx3LmV4cGFuZG8rIl8iK0V0Kys7cmV0dXJuIHRoaXNbZV09ITAsZX19KSx3LmFqYXhQcmVmaWx0ZXIoImpzb24ganNvbnAiLGZ1bmN0aW9uKHQsbixyKXt2YXIgaSxvLGEscz0hMSE9PXQuanNvbnAmJihRdC50ZXN0KHQudXJsKT8idXJsIjoic3RyaW5nIj09dHlwZW9mIHQuZGF0YSYmMD09PSh0LmNvbnRlbnRUeXBlfHwiIikuaW5kZXhPZigiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIikmJlF0LnRlc3QodC5kYXRhKSYmImRhdGEiKTtpZihzfHwianNvbnAiPT09dC5kYXRhVHlwZXNbMF0pcmV0dXJuIGk9dC5qc29ucENhbGxiYWNrPWcodC5qc29ucENhbGxiYWNrKT90Lmpzb25wQ2FsbGJhY2soKTp0Lmpzb25wQ2FsbGJhY2sscz90W3NdPXRbc10ucmVwbGFjZShRdCwiJDEiK2kpOiExIT09dC5qc29ucCYmKHQudXJsKz0oa3QudGVzdCh0LnVybCk/IiYiOiI/IikrdC5qc29ucCsiPSIraSksdC5jb252ZXJ0ZXJzWyJzY3JpcHQganNvbiJdPWZ1bmN0aW9uKCl7cmV0dXJuIGF8fHcuZXJyb3IoaSsiIHdhcyBub3QgY2FsbGVkIiksYVswXX0sdC5kYXRhVHlwZXNbMF09Impzb24iLG89ZVtpXSxlW2ldPWZ1bmN0aW9uKCl7YT1hcmd1bWVudHN9LHIuYWx3YXlzKGZ1bmN0aW9uKCl7dm9pZCAwPT09bz93KGUpLnJlbW92ZVByb3AoaSk6ZVtpXT1vLHRbaV0mJih0Lmpzb25wQ2FsbGJhY2s9bi5qc29ucENhbGxiYWNrLFl0LnB1c2goaSkpLGEmJmcobykmJm8oYVswXSksYT1vPXZvaWQgMH0pLCJzY3JpcHQifSksaC5jcmVhdGVIVE1MRG9jdW1lbnQ9ZnVuY3Rpb24oKXt2YXIgZT1yLmltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxEb2N1bWVudCgiIikuYm9keTtyZXR1cm4gZS5pbm5lckhUTUw9Ijxmb3JtPjwvZm9ybT48Zm9ybT48L2Zvcm0+IiwyPT09ZS5jaGlsZE5vZGVzLmxlbmd0aH0oKSx3LnBhcnNlSFRNTD1mdW5jdGlvbihlLHQsbil7aWYoInN0cmluZyIhPXR5cGVvZiBlKXJldHVybltdOyJib29sZWFuIj09dHlwZW9mIHQmJihuPXQsdD0hMSk7dmFyIGksbyxhO3JldHVybiB0fHwoaC5jcmVhdGVIVE1MRG9jdW1lbnQ/KChpPSh0PXIuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCIiKSkuY3JlYXRlRWxlbWVudCgiYmFzZSIpKS5ocmVmPXIubG9jYXRpb24uaHJlZix0LmhlYWQuYXBwZW5kQ2hpbGQoaSkpOnQ9ciksbz1BLmV4ZWMoZSksYT0hbiYmW10sbz9bdC5jcmVhdGVFbGVtZW50KG9bMV0pXToobz14ZShbZV0sdCxhKSxhJiZhLmxlbmd0aCYmdyhhKS5yZW1vdmUoKSx3Lm1lcmdlKFtdLG8uY2hpbGROb2RlcykpfSx3LmZuLmxvYWQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhPXRoaXMscz1lLmluZGV4T2YoIiAiKTtyZXR1cm4gcz4tMSYmKHI9dnQoZS5zbGljZShzKSksZT1lLnNsaWNlKDAscykpLGcodCk/KG49dCx0PXZvaWQgMCk6dCYmIm9iamVjdCI9PXR5cGVvZiB0JiYoaT0iUE9TVCIpLGEubGVuZ3RoPjAmJncuYWpheCh7dXJsOmUsdHlwZTppfHwiR0VUIixkYXRhVHlwZToiaHRtbCIsZGF0YTp0fSkuZG9uZShmdW5jdGlvbihlKXtvPWFyZ3VtZW50cyxhLmh0bWwocj93KCI8ZGl2PiIpLmFwcGVuZCh3LnBhcnNlSFRNTChlKSkuZmluZChyKTplKX0pLmFsd2F5cyhuJiZmdW5jdGlvbihlLHQpe2EuZWFjaChmdW5jdGlvbigpe24uYXBwbHkodGhpcyxvfHxbZS5yZXNwb25zZVRleHQsdCxlXSl9KX0pLHRoaXN9LHcuZWFjaChbImFqYXhTdGFydCIsImFqYXhTdG9wIiwiYWpheENvbXBsZXRlIiwiYWpheEVycm9yIiwiYWpheFN1Y2Nlc3MiLCJhamF4U2VuZCJdLGZ1bmN0aW9uKGUsdCl7dy5mblt0XT1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5vbih0LGUpfX0pLHcuZXhwci5wc2V1ZG9zLmFuaW1hdGVkPWZ1bmN0aW9uKGUpe3JldHVybiB3LmdyZXAody50aW1lcnMsZnVuY3Rpb24odCl7cmV0dXJuIGU9PT10LmVsZW19KS5sZW5ndGh9LHcub2Zmc2V0PXtzZXRPZmZzZXQ6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhLHMsdSxsLGM9dy5jc3MoZSwicG9zaXRpb24iKSxmPXcoZSkscD17fTsic3RhdGljIj09PWMmJihlLnN0eWxlLnBvc2l0aW9uPSJyZWxhdGl2ZSIpLHM9Zi5vZmZzZXQoKSxvPXcuY3NzKGUsInRvcCIpLHU9dy5jc3MoZSwibGVmdCIpLChsPSgiYWJzb2x1dGUiPT09Y3x8ImZpeGVkIj09PWMpJiYobyt1KS5pbmRleE9mKCJhdXRvIik+LTEpPyhhPShyPWYucG9zaXRpb24oKSkudG9wLGk9ci5sZWZ0KTooYT1wYXJzZUZsb2F0KG8pfHwwLGk9cGFyc2VGbG9hdCh1KXx8MCksZyh0KSYmKHQ9dC5jYWxsKGUsbix3LmV4dGVuZCh7fSxzKSkpLG51bGwhPXQudG9wJiYocC50b3A9dC50b3Atcy50b3ArYSksbnVsbCE9dC5sZWZ0JiYocC5sZWZ0PXQubGVmdC1zLmxlZnQraSksInVzaW5nImluIHQ/dC51c2luZy5jYWxsKGUscCk6Zi5jc3MocCl9fSx3LmZuLmV4dGVuZCh7b2Zmc2V0OmZ1bmN0aW9uKGUpe2lmKGFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHZvaWQgMD09PWU/dGhpczp0aGlzLmVhY2goZnVuY3Rpb24odCl7dy5vZmZzZXQuc2V0T2Zmc2V0KHRoaXMsZSx0KX0pO3ZhciB0LG4scj10aGlzWzBdO2lmKHIpcmV0dXJuIHIuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGg/KHQ9ci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxuPXIub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldyx7dG9wOnQudG9wK24ucGFnZVlPZmZzZXQsbGVmdDp0LmxlZnQrbi5wYWdlWE9mZnNldH0pOnt0b3A6MCxsZWZ0OjB9fSxwb3NpdGlvbjpmdW5jdGlvbigpe2lmKHRoaXNbMF0pe3ZhciBlLHQsbixyPXRoaXNbMF0saT17dG9wOjAsbGVmdDowfTtpZigiZml4ZWQiPT09dy5jc3MociwicG9zaXRpb24iKSl0PXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7ZWxzZXt0PXRoaXMub2Zmc2V0KCksbj1yLm93bmVyRG9jdW1lbnQsZT1yLm9mZnNldFBhcmVudHx8bi5kb2N1bWVudEVsZW1lbnQ7d2hpbGUoZSYmKGU9PT1uLmJvZHl8fGU9PT1uLmRvY3VtZW50RWxlbWVudCkmJiJzdGF0aWMiPT09dy5jc3MoZSwicG9zaXRpb24iKSllPWUucGFyZW50Tm9kZTtlJiZlIT09ciYmMT09PWUubm9kZVR5cGUmJigoaT13KGUpLm9mZnNldCgpKS50b3ArPXcuY3NzKGUsImJvcmRlclRvcFdpZHRoIiwhMCksaS5sZWZ0Kz13LmNzcyhlLCJib3JkZXJMZWZ0V2lkdGgiLCEwKSl9cmV0dXJue3RvcDp0LnRvcC1pLnRvcC13LmNzcyhyLCJtYXJnaW5Ub3AiLCEwKSxsZWZ0OnQubGVmdC1pLmxlZnQtdy5jc3MociwibWFyZ2luTGVmdCIsITApfX19LG9mZnNldFBhcmVudDpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcChmdW5jdGlvbigpe3ZhciBlPXRoaXMub2Zmc2V0UGFyZW50O3doaWxlKGUmJiJzdGF0aWMiPT09dy5jc3MoZSwicG9zaXRpb24iKSllPWUub2Zmc2V0UGFyZW50O3JldHVybiBlfHxiZX0pfX0pLHcuZWFjaCh7c2Nyb2xsTGVmdDoicGFnZVhPZmZzZXQiLHNjcm9sbFRvcDoicGFnZVlPZmZzZXQifSxmdW5jdGlvbihlLHQpe3ZhciBuPSJwYWdlWU9mZnNldCI9PT10O3cuZm5bZV09ZnVuY3Rpb24ocil7cmV0dXJuIHoodGhpcyxmdW5jdGlvbihlLHIsaSl7dmFyIG87aWYoeShlKT9vPWU6OT09PWUubm9kZVR5cGUmJihvPWUuZGVmYXVsdFZpZXcpLHZvaWQgMD09PWkpcmV0dXJuIG8/b1t0XTplW3JdO28/by5zY3JvbGxUbyhuP28ucGFnZVhPZmZzZXQ6aSxuP2k6by5wYWdlWU9mZnNldCk6ZVtyXT1pfSxlLHIsYXJndW1lbnRzLmxlbmd0aCl9fSksdy5lYWNoKFsidG9wIiwibGVmdCJdLGZ1bmN0aW9uKGUsdCl7dy5jc3NIb29rc1t0XT1fZShoLnBpeGVsUG9zaXRpb24sZnVuY3Rpb24oZSxuKXtpZihuKXJldHVybiBuPUZlKGUsdCksV2UudGVzdChuKT93KGUpLnBvc2l0aW9uKClbdF0rInB4IjpufSl9KSx3LmVhY2goe0hlaWdodDoiaGVpZ2h0IixXaWR0aDoid2lkdGgifSxmdW5jdGlvbihlLHQpe3cuZWFjaCh7cGFkZGluZzoiaW5uZXIiK2UsY29udGVudDp0LCIiOiJvdXRlciIrZX0sZnVuY3Rpb24obixyKXt3LmZuW3JdPWZ1bmN0aW9uKGksbyl7dmFyIGE9YXJndW1lbnRzLmxlbmd0aCYmKG58fCJib29sZWFuIiE9dHlwZW9mIGkpLHM9bnx8KCEwPT09aXx8ITA9PT1vPyJtYXJnaW4iOiJib3JkZXIiKTtyZXR1cm4geih0aGlzLGZ1bmN0aW9uKHQsbixpKXt2YXIgbztyZXR1cm4geSh0KT8wPT09ci5pbmRleE9mKCJvdXRlciIpP3RbImlubmVyIitlXTp0LmRvY3VtZW50LmRvY3VtZW50RWxlbWVudFsiY2xpZW50IitlXTo5PT09dC5ub2RlVHlwZT8obz10LmRvY3VtZW50RWxlbWVudCxNYXRoLm1heCh0LmJvZHlbInNjcm9sbCIrZV0sb1sic2Nyb2xsIitlXSx0LmJvZHlbIm9mZnNldCIrZV0sb1sib2Zmc2V0IitlXSxvWyJjbGllbnQiK2VdKSk6dm9pZCAwPT09aT93LmNzcyh0LG4scyk6dy5zdHlsZSh0LG4saSxzKX0sdCxhP2k6dm9pZCAwLGEpfX0pfSksdy5lYWNoKCJibHVyIGZvY3VzIGZvY3VzaW4gZm9jdXNvdXQgcmVzaXplIHNjcm9sbCBjbGljayBkYmxjbGljayBtb3VzZWRvd24gbW91c2V1cCBtb3VzZW1vdmUgbW91c2VvdmVyIG1vdXNlb3V0IG1vdXNlZW50ZXIgbW91c2VsZWF2ZSBjaGFuZ2Ugc2VsZWN0IHN1Ym1pdCBrZXlkb3duIGtleXByZXNzIGtleXVwIGNvbnRleHRtZW51Ii5zcGxpdCgiICIpLGZ1bmN0aW9uKGUsdCl7dy5mblt0XT1mdW5jdGlvbihlLG4pe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPjA/dGhpcy5vbih0LG51bGwsZSxuKTp0aGlzLnRyaWdnZXIodCl9fSksdy5mbi5leHRlbmQoe2hvdmVyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMubW91c2VlbnRlcihlKS5tb3VzZWxlYXZlKHR8fGUpfX0pLHcuZm4uZXh0ZW5kKHtiaW5kOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdGhpcy5vbihlLG51bGwsdCxuKX0sdW5iaW5kOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMub2ZmKGUsbnVsbCx0KX0sZGVsZWdhdGU6ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIHRoaXMub24odCxlLG4scil9LHVuZGVsZWdhdGU6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiAxPT09YXJndW1lbnRzLmxlbmd0aD90aGlzLm9mZihlLCIqKiIpOnRoaXMub2ZmKHQsZXx8IioqIixuKX19KSx3LnByb3h5PWZ1bmN0aW9uKGUsdCl7dmFyIG4scixpO2lmKCJzdHJpbmciPT10eXBlb2YgdCYmKG49ZVt0XSx0PWUsZT1uKSxnKGUpKXJldHVybiByPW8uY2FsbChhcmd1bWVudHMsMiksaT1mdW5jdGlvbigpe3JldHVybiBlLmFwcGx5KHR8fHRoaXMsci5jb25jYXQoby5jYWxsKGFyZ3VtZW50cykpKX0saS5ndWlkPWUuZ3VpZD1lLmd1aWR8fHcuZ3VpZCsrLGl9LHcuaG9sZFJlYWR5PWZ1bmN0aW9uKGUpe2U/dy5yZWFkeVdhaXQrKzp3LnJlYWR5KCEwKX0sdy5pc0FycmF5PUFycmF5LmlzQXJyYXksdy5wYXJzZUpTT049SlNPTi5wYXJzZSx3Lm5vZGVOYW1lPU4sdy5pc0Z1bmN0aW9uPWcsdy5pc1dpbmRvdz15LHcuY2FtZWxDYXNlPUcsdy50eXBlPXgsdy5ub3c9RGF0ZS5ub3csdy5pc051bWVyaWM9ZnVuY3Rpb24oZSl7dmFyIHQ9dy50eXBlKGUpO3JldHVybigibnVtYmVyIj09PXR8fCJzdHJpbmciPT09dCkmJiFpc05hTihlLXBhcnNlRmxvYXQoZSkpfSwiZnVuY3Rpb24iPT10eXBlb2YgZGVmaW5lJiZkZWZpbmUuYW1kJiZkZWZpbmUoImpxdWVyeSIsW10sZnVuY3Rpb24oKXtyZXR1cm4gd30pO3ZhciBKdD1lLmpRdWVyeSxLdD1lLiQ7cmV0dXJuIHcubm9Db25mbGljdD1mdW5jdGlvbih0KXtyZXR1cm4gZS4kPT09dyYmKGUuJD1LdCksdCYmZS5qUXVlcnk9PT13JiYoZS5qUXVlcnk9SnQpLHd9LHR8fChlLmpRdWVyeT1lLiQ9dyksd30pOwo="}},"time_used":75,"timings":{"blocked":-1,"dns":1,"connect":14,"send":0,"wait":15,"receive":14,"ssl":30},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/staticon4.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.541Z","timestamp":1785158432541,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/staticon4.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=jXf2zRiVNu7pQy%2BzYxW96zdd0MskOXsDgxfOXbu%2Bj4ioLcF5Dgj2eZt3TCsoEHhtZ%2FlcYctL0rLHWr63T%2FSVuxOcxXp8GxsAp%2FTgxrZtr2%2F1pEJ3Vw73mgLy04csi86grVFdGQ%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b6c7656b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 7453\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":7453,"size_decoded":8221,"mime_type":"image/png","magic":"PNG image data, 124 x 124, 8-bit/color RGBA, non-interlaced","md5":"eda0e611d00d7b792296d07b5804278e","sha1":"202b6f4655464b828c5639904255c974cc4acc07","sha256":"f7615610d391398fdf67a5e1c629841600ac907106d17fb007989bb9b7db5941","sha512":"5fc03b2d2480e2df3a1922171631d75fc56e4ecf24473ea9c701aecd7828543113f00334b6df9eb4c5115b3b6c1e7d5813f2f16a67801966928c4fd9ce46b40b","ssdeep":"192:y0iBO8ubKydu8+lESWj3ZU6UJTomkz7KPMlH:yK80hsESAU6CkK0lH","tlshash":"92f18d6268069c852aac5e29357480304d33844170c09d5ba9c8ffcb7ef92314a7ffba","first_seen":"2024-09-19T20:45:30.966442Z","last_seen":"2026-07-27T13:21:39.106044Z","times_seen":17,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAHwAAAB8CAYAAACrHtS+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDYwNEM5MEY4NUQ0MTFFOThFQzlBNTg0MEU3RTI0RTAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDYwNEM5MTA4NUQ0MTFFOThFQzlBNTg0MEU3RTI0RTAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0NjA0QzkwRDg1RDQxMUU5OEVDOUE1ODQwRTdFMjRFMCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0NjA0QzkwRTg1RDQxMUU5OEVDOUE1ODQwRTdFMjRFMCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PrSC/+YAABmRSURBVHja7F0JeBRF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"}},"time_used":16,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":15,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/welcomebg.jpg","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.834Z","timestamp":1785158432834,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/welcomebg.jpg HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/styles/custom.css\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/jpeg\r\nserver-timing: cfExtPri\r\npriority: u=4,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:32 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23159\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=4AoEf9A%2Fnus0el6l6wDGMEiD42oRhr4i%2FTkDt7m9PL98Gj%2FW0WrsCH1h%2Bw6POCQLDM8UObmZsPy1ZiVN3UKnxAXhlodMXcfrHM8tjE99QXu2VgDEkh7NgRtdpMzyAV7KrFMB2A%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12d4ca556b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 91565\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":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":91565,"size_decoded":92331,"mime_type":"image/jpeg","magic":"JPEG image data, Exif standard: [TIFF image data, little-endian, direntries=0], progressive, precision 8, 1920x800, components 3","md5":"422cbf15cb532864c0984748444ba615","sha1":"e293c108466adf5955c772655d8c9b1f0dc27427","sha256":"bbc74f42b1364cf1dbc88e1b8aa951609bc60d15f2f3ecbf72d1d3c41ae1a57d","sha512":"5452668a3586f233b34c37df0ea0819f9f34391dd1a458c478ad2b8abceea9c37c053d7570643625631eb0c89e70cd32e74b165155b81de3015b08ad4824878e","ssdeep":"1536:bm6Opiim2CQBNE0sKX6cq/ZpGGN5PjosMcONih9yACjPhM2LmTYQrKG2bkhn85mS:EpBNE0sKX6cqznG6CmxBCTScEnM","tlshash":"1d93d0374f57d986d05a0fb9b01b04b0959fad39fbaf62a31ed93f09f1632622900590","first_seen":"2024-09-19T20:45:31.02835Z","last_seen":"2026-07-27T13:21:39.087194Z","times_seen":18,"resource_available":false,"data":"/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAABkAAD/4QMraHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjMtYzAxMSA2Ni4xNDU2NjEsIDIwMTIvMDIvMDYtMTQ6NTY6MjcgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjM2RjM5NURCODVENTExRTk4QjMyQUEyNTY1OEQ5RTc1IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjM2RjM5NURDODVENTExRTk4QjMyQUEyNTY1OEQ5RTc1Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MzZGMzk1RDk4NUQ1MTFFOThCMzJBQTI1NjU4RDlFNzUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MzZGMzk1REE4NUQ1MTFFOThCMzJBQTI1NjU4RDlFNzUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7/7gAmQWRvYmUAZMAAAAABAwAVBAMGCg0AAGE3AACEggAA9xIAAWWr/9sAhAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAgICAgICAgICAgIDAwMDAwMDAwMDAQEBAQEBAQIBAQICAgECAgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwP/wgARCAMgB4ADAREAAhEBAxEB/8QBBQABAAMBAQEBAQEAAAAAAAAAAAMEBQIBBgcICQEBAAMBAQEBAAAAAAAAAAAAAAEDBAIFBgcQAAIBAwMDAgcBAQEAAAAAAAECABESA0BQEzBgBCAxEHAhIjIjFAUzJBEAAQEEAwsICAQEBQQDAAAAAQIAESEDMUGRQFBgUWFxgRIiMgQwobHRQlJyEyDB4WKCkiMzEHBDU/CiwnOy0mODFPGjJDTik7MSAAAEAwUFBwQCAwEAAAAAAAABESFgMQJQcEESMkBRYSIDIDCBkbFCExBxoSNiY1IzQ9ETAQABAwEFBwUBAQAAAAAAAAERACExQVBRYXGRMEBg8IGhsRAgwdHh8XD/2gAMAwEAAhEDEQAAAf8AAvRWAAALNlWvqx4WP0PUdHvUeQ5ieI68EAAAAAAAAAAAAAAAAAAAAAAJu+NDRmk64AAAAAAAAAAAAAAAAAAAAAAAAAAAl640tGYUab61doAAi47y82zyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFu2m/fnx8m2XrnvrmrVaAABpaM0/deNk2j2Q9mET4eQAAAAAAAAAAAAAAAAAAAAAA9lduouXZwAAAAAAAAAAAAAAAAAAAAAAAAAAAABeuo9RQp0ADmOsrLs45kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeyl64l64uXUaunJl59XUwBi4t4AA2tmGrXdn59AAAAAAAAAAAAAAAAAAAAAAAAAAn74v6M0nXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8M3Lsg47AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHp31zN3xN3XL3xL1wJ+69C7PkZtgAGLi3gDuY3d3n4+TbXrsAAAAAAAAAAAAAAAAAAAAAAAAA76i9dns20gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACjRpp03AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACTrmfuueyubvjqeQAJu+NO/LjZdoAAxcW8C1bVq6ceFi9HmAAAAAAAAAAAAAAAAAAAAAAAAA9lctouXUezAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArVXZ2fSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1KfuueyqfuvvrkAAAS9camnLjZNoAAGLi3jS0ZZu+MfJtAAAAAAAAAAAAAAAAAAAAAAAAHsrVlNy+jueQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIuO8vNs8gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO+osWVWO6prK/QAAAAS9caunJi5NwAAAxcW/b2YalV2fRoAAAAAAAAAAAAAAAAAAAAAAAA9lasquXZ++uQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABzHWVl2ccyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJOosWVWbKZe+AAAAAAJOudbTjxcm4AAACKuyjTog47AAAAAAAAAAAAAAAAAAAAAAAHUrVtFu6nueQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPE5mXXDx2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO5izbVYsqm7rAAAAAAAk6519OPEybgAAABi4t4AAAAAAAAAAAAAAAAAAAAAAAl75t20WbKvZgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADPz6qtVoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9lY7qs21WLKgAAAAAAAO5jY1YcTJvAAAAAxcW8AAAAAAAAAAAAAAAAAAAAADqYs21WrKZe+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKdN9GjQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABL3zasps209TAAAAAAAAA7mNnVhw8m8AAAAAYuLeAAAAAAAAAAAAAAAAAAAAOpWLKrFlU9lXoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIK7M3Pr8gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPZWbKrdtMvdYAAAAAAAAA6mNrXhw8e8AAAAADFxbwAAAAAAAAAAAAAAAAAAO+osd1WLK5rK/UAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACPnrLy7OYkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACTqLdtFm2nqYAAAAAAAAAA6mNrXhw8e8AAAAAAYuLeAAAAAAAAAAAAAAAAB1KbuufuueyuTrgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADyJy8uyLnoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT98W7qLFlQAAAAAAAAAAHstvVgxMm/wAAAAAAGLi3gAAAAAAAAAAAAAAdzE3fE3dc3dcvfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGbm1167AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB7KxZVctol74AAAAAAAAA6R6n0HiPDa2YcTJu8iQAAAAAAMXFvAAAAAAAAAAAAHUxL1zL3XN3xL1x31yAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKVGilTeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB7K1ZTcuo765AAAAAAAAAHR3MdzzJ1z5DiOtbVixMe/hIAAAAAAAxcW8AAAAAAAAAeyknmTviXrmTriXrjvrkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAV67c3NqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHUrVtNy6jqeQAAAAAAAAAPTsn7qtW0z2V+RN+/N8/g9ODjvhIAAAAAAAxcW8AAAAAAdSk64k65k64k65k65k64AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAi47y82zyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9lbtpuXZ+pgAAAAAAAAAADokmLdufR0ZfpPQ8vmJ+a8/1czNrr13cI8SAAAAAABi4t4AAHsu55k65k65k64k65k656nkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcR1l5dnHMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeyt203LqOp5AAAAAAAAAAAA6JOovXZtrXg/W/qfjPi/H974zyfcy82utXfHzHkyAAAACYueo+O4+eo+e61dnsu55l65k74k64l657659QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB5E5ebZFx0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPZWbKrt2fvrkAAAAAAAAAAAADolnne3ebPZX5DmJo06c+jTBXbweAAAj57h47i47h5sj568gAL19Fu2j2YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHhm5tcFdgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsWV3r88nXAAAAAAAAAAAAAAGhfmtd159GmfuqbvjxNeuyDi2PnrgAj56g4thr7g4s5iQAAANDRmtW0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZ+fVVqtAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAl65vX5p7KwAAAAAAAAAAAAAJ++NK/Ln06K9dvZ1PPUwOY64ieIQcWV+LYK7I+egAAAAANDRmtW0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACjRpp03AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADqYu3UW7qAAAAAAAAAAAAAABracfEdZmfUB6eo9ETX4sq13Vq7OYkAAAAAAAaGjNatpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApUaKVN4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHsrVlN2/P1MAAAAAAAAAAAAAAXrqLdlOTm2cRIAEfPVWq6tXdxzIAAAAAAAAGhozWraQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSo0UqbwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJu+L9+eXusAAAAAAAAAAAAACXrjU0ZKNWipVcABXrtqU3wcdgAAAAAAAAADQ0ZrVtIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFGjTTpuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHUrt2e3dQAAAAAAAAAAAAAANXTk8hl59YA8iatV1Sq+PmQAAAAAAAAAABoaM1q2kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwoZ9VWq0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWLK79+bvrkAAAAAAAAAAAAAC5bTdtz5WfZHz0B5E1Kr6dN3MSAAAAAAAAAAAANDRmtW0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADmJz8+qvXYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1MX789m2kAAAAAAAAAAAAADuedbTkp13UqbwPE1KbqdN/MSAAAAAAAAAAAAANDRmtW0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAR895ubVHz0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABZsrv6M3U8gAAAAAAAAAAAAAaejL3POTm2ACtVdRp0ccyAAAAAAAAAAAAAANDRmtW0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACrVdQo0+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHUr9+azbSAAAAAAAAAAAAABasqv3ZsyjXDx2BHz3Qz6YOOwAAAAAAAAAAAAAABoaM1q2kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcR1Qz6a9dgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE/fGhoy99cgAAAAAAAAAAAADqY1tOOtxbQo0AeJpUX1Kr/IAAAAAAAAAAAAAAAAaGjNatpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHialN1OnRzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeyu3UXLs4AAAAAAAAAAAAAGjfmm7rycu3wAi4szs+mPnoAAAAAAAAAAAAAAAADQ0ZrVtIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8TWqtp06I+ZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAk6jR0ZJe+AAAAAAAAAAAAABY7r0r8ubTqr12AeFOjRTqv8gAAAAAAAAAAAAAAAAANDRmtW0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACLjutXdVqt5iQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYsr0NGXqYAAAAAAAAAAAAA9NbVih4szqNIA456zs+qHjsAAAAAAAAAAAAAAAAAAaGjNatpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAh4sgrsrV2x89AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeyvXZ7d1AAAAAAAAAAAAAAv3Z7NlWTm2cxIAgrszs+rmJAAAAAAAAAAAASAQAAAAA0NGa1bSAAAAAAAAAABxz1xHUfPXMdcxPMTzE8xPifIEgAEey9R6jqXsx7MdI6mPZjqY6mOp57mPZgAAAAAAAAAAAAAAAAAeRMXPcPHcPFkPFnMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO5jR05Zu6wAAAAAAAAAAAAJuuNTTkz6NNWu0ACnTfSp0eQAAAAAAAAAAAHsvZj09R4eRPifIAAAAaGjNatpAAAAAAAAEXHcPNkXHcfPUXPfkAAAAAAAAAAAAAAPZdTHUx1PPcx1MdTHU89THsx1MdI6mPZgAAAAAAAcxPMdcc9cRMfPcfPUfPXEdeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEvfOloyd9cgAAAAAAAAAAAAa2nHxHWZn1AAeJz8+mtVaAAAAAAAAAAAAl3MSTzL1z3PPEdRc9Rx1zE+QAAAGhozWraQAAAAABFx3BxbBXZDz35AAAAAAAAAAAAAAAAAAAAAAAD2Xp6j2Y9l6geiYRPgPInlPkT4eQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs2V6GnL6gAAAAAAAAAAAAXbqLllGTm2cR0ABzE5ubXDx2AAAAAAAAAAAAPZS9c2rKbl1E3dcXFlKm+rXdFHXnIAAAaGjNatpAAAAHiYK7K9dsFdnESAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAl6BIAIeCAAAAAAAAAAAFy6i9fnAAAAAAAAAAAAEnXOtpx0adFOq4AAcc9ZmbXHz0AAAAAAAAAAAAEupix1xoaMuppx/b+x4Pxnke5j5d2dn1Qc988yAAANDRmtW0gAACDiytVdXrt5gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB7JL1HsCACRzMjyCAAAAAAAAAHsr9+a1bSAAAAAAAAAAABubMEHFgys2sAACPnvMza+OZAAAAAAAAAAAAAS7mLHfGjoybezz/wBs+w+D/LfmvrvmfP8AV+ewepX4755kAAAaGjNatpAA5iatV9Wq6PmQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPZJdRBHsvZAeHkEPJ68POQAAAAAAAA9lpaMs9lQAAAAAAAA8OifuuzZVJ1yBL1x/QH3H5x/Pnw36RkZdoAAEXHeZm18xIAAAAAAAAAAAAAHUxN3zduz7evBZspzc+unVdN1zFHVKnRQovAAA0NGa1bSBFx3UqvrV2+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACXsuoj2Y6l0jqSYJ8hzE8Q8h5M+RPkAAAAAAAB1MaWnLN3WAAAABN1xZsqm74AAA8hBxZW4ti569AO5jiJAAAi47zM2vmJAAAAAAAAAAAAAAHsu55n74+g3ebl5tccdV67oOOuI6uW0Xrs4zc+utXYANDRmtW0wcWU6dEFfYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHsvZj1HcpJjvrjuefZhE8RPEdx89cQ8ieZnyCAAAAAAA76jT05JOuB3PNmyufuvqeSQEEhDx3Wrth57AAAAAAAAAAi57zMuvmJAAAAAAAAAAAAAAAS9lP1XqacmVm2IcRPEdeCAGnpy2O6vE5WXZFz1btpj57g47AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA96dRHXUSTEvXEnVcnfPSPDjnqPjuHmyOOuIeJ5iUAAAB1MWrKrNtUs8eJ765v35pJ5SEfPVfiyvXbyegAAAAAAAAAAAAAj56zM2zjmQAAAAAAAAAAAAAAAEtvZgxsm4Inw8EAAB1LV1Y5J4xMe8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD3p057lL1zN1VLZxN1x2jxMUTDxZDxZFx3FEky98W7KZuuPZjyJ9mPAE88zW4tq1Wx89Sdc6enJ31yAAAAAAAAAAAAAAAABxHWZl2R8yAAAAAAAAAAAAAAAAPZbezBh4t4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHvTpzJKXvifqqayuaef2f674X4XxvoMPF6EXPcHFkXPfETzE1+LalN0PPfkAAAAJOudPVk7nkAAAAAAAAAAAAAAAADyJy82yLjoAAAAAAAAAAAAAAAADV1ZKNGiDjsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD3p05klL1xP3VNZXN1z+je/8AL/FeP7+Xm1Qc2QV2w82R8vInmZ85AAAACTrnT1ZO55AAAAAAAAAAAAAAAAA8M3NrgrsAAAAAAAAAAAAAAAAAG5twYeLeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPenUc99JeuZuq5e65euNjXiycu2LnqLjuDi2LnuOHifInyAAAAEnUaenH31yAAAAAAAAAAAAAAAAAKGfTUquAAAAAAAAAAAAAAAAAFu2mbvjOz6QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB706jn3pLMSdcS9caWjJDz3Xrt4jqPjuLmyOJ45eTPMSgAAAO+o1NOPvrkAAAAAAAAAAAAAAAAAVars/PpAAAAAAAAAAAAAAAAAA3NuDDxbwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPZezHsR10kmO552tmDJybCeE8c98RPEPInmZ85AAADqY1NWSTrgAAAAAAAAAAAAAAAAAQ8WZmbX5AAAAAAAAAAAAAAAAAAd9RraseNj2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJey6iEx1Ls2dmDIybvDyJ5OYeQ8nrmCAAAHstPTkm7rAAAAAAAAAAAAAAAAAHMTlZdvHMgAAAAAAAAAAAAAAAAAbWzDj5NvMSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEvZeo9iJu+L9+fMz6x5DwRPkz5DyAAAHstLRlnsqAAAAAAAAAAAAAAAAAAzc2uvXYAAAAAAAAAAAAAAAAAANzbgw8W8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJey9RsasWTl2eRIHkvEoeQAAAGhozWraQAAAAAAAAAAAAAAAAAKdN9GjQAAAAAAAAAAAAAAAAAANPTlq1W1q7QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlta8ONk3AAeCAAAAvX0XLs4AAAAAAAAAAAAAAAAAEXHeXm2eQAAAAAAAAAAAAAAAAAAG5twYeLeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB7LZ14cXHuAAAAAAtW1aGjKAAAAAAAAAAAAAAAAAB4nKybI+egAAAAAAAAAAAAAAAAABZsqtW1ZmbUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABpaM1biytVaAAAAAJ++NLVj9AAAAAAAAAAAAAAAAAAKGfTUquAAAAAAAAAAAAAAAAAAA3NuDDxbwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABt7MGJj3gAAAACTrnU1Y+pgAAAAAAAAAAAAAAAAACHizMza/IAAAAAAAAAAAAAAAAAADqY2NeLFx7gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABt7MGJj3gAAAAdS1NWOTrgAAAAAAAAAAAAAAAAADyJysuyPnoAAAAAAAAAAAAAAAAAADZ14cnNt45kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACbvi/fnysusAAAAey0tOSfusAAAAAAAAAAAAAAAAAAUaNNOm4AAAAAAAAAAAAAAAAAAAbm3Bh4t4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2tmHHybuYAAAADQ0ZrVtIAAAAAAAAAAAAAAAAAAi4sy82vyAAAAAAAAAAAAAAAAAAAGjozQ8d1KrgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABt7MOJj3AAAAC5dTevzAAAAAAAAAAAAAAAAAADwy8u2LjoAAAAAAAAAAAAAAAAAAAbm3Bh4t4AAAAAAAAAAAAAAAAAAA9lJPMnXPfXPc89THUwmOkDxPkOY65ieInjnuPnqOOvIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2Wzrw4uPcAAABYsr0tOQAAAAAAAAAAAAAAAAAACnToo0XgAAAAAAAAAAAAAAAAAACezi9dnysusAAAAAAAAAAAAAAAAAdzE1lc/fEvVcnfPqAAAAAAAAIuO4ue4eLIOLOOZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGlozVq7a1dgAAAm7409OT2YAAAAAAAAAAAAAAAAAAHHPWTl2+QAAAAAAAAAAAAAAAAAAAG5twYmPf5AAAAAAAAAAAAAAAACXrmxbVY7ql74AAAAAAAAAAAAEfPUFdteu2HnvyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2tmHFx7gAABJ1Gpqx9TyAAAAAAAAAAAAAAAAAABm5tdeuwAAAAAAAAAAAAAAAAAAAey2teHEx7gAAAAAAAAAAAAAAOpi1bVZtpl64AAAAAAAAAAAAAAAHMTXrtrVXQc9oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbWzDi49wAAHUxqasknXAAAAAAAAAAAAAAAAAAAFaq3Oz6gAAAAAAAAAAAAAAAAAAANjXiy82uPnoAAAAAAAAADvqOOZAAAl65t3UWbavUAAAAAAAAAAAAAAAAAAcc9Varqtd3HMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACbvi9dny82sAAey1NOSXusAAAAAAAAAAAAAAAAAADyJycu3jmQAAAAAAAAAAAAAAAAAAANzbgw8W8AAAAAAAAAC1bVevzY+PcABL3zduz2LKgAAAAAAAAAAAAAAAAAAAAK9dtSq+CvsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbOvDkZd3MAAPZaWjJPZWAAAAAAAAAAAAAAAAAAAKFGmpTcAAAAAAAAAAAAAAAAB7IJAC9dn85mjTeAAAAAAAAB1MaGjNYsqGLi3gSdc3b6LNlIAAAAAAAAAAAAAAAAAAAAAAEfPdSm+rXb5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADa2YcXHuAA9lo6MtiyoAAAAAAAAAAAAAAAAAAARcd5ebZ5AAAJAAIAAAAAAAAAAD2SXqPYEAE7WzBh5PQHkEAAAAAAABN3xo6MvfXIGLi3+yuXUXLqPUAAAAAAAAAAAAAAAAAAAAAAAADmOqlN1Sq/mAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9ls68OLj3AD2Whfms20gAAAAAAAAAAAAAAAAAAAZeXZDx2AAEukey9R4eJ8ifIAAAAAAAAABL2XqPYj2XsgJOuNC/Nk5Nnkz4nzkAAAAAABcupu35vQAZeXZoaMsnXIAAAAAAAAAAAAAAAAAAAAAAAAAA8ialV1Sm/iJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGloy1q7q1dgHstC/NZtpAAAAAAAAAAAAAAAAAAAAqU30KNAAAS6mO5ibrnuePImKO4+Z4jryAAAAAAAAAHvTqITHcukdSTA2NWHEx7+InyHkz5E+QAAAAAHstC/NZtpAAFWq61bSAAAAAAAAAAAAAAAAAAAAAAAAAAAB5E1arqdV/HMgAAAAAAAAAAAAAAAAAAAAAAAAAAAABIbevDiY9wHstC/NZtpAAAAAAAAAAAAAAAAAAAA456ysu3mAAA9l3PNnuu5dnsWV8c9VKrqlV8PPXKUAAAAAAAAPZezHqO5dzEnXHc8+oJ1tWLDx+hxz3HDyHM9eQQAAAAHfUaWjJL3wAABVqutW0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAeJq03U6r+OZAAAAAAAAAAAAAAAAAAAAAAAAAAAHsvZj1A2deLFyb+Yemjoy2LKgAAAAAAAAAAAAAAAAAAABnZtdauwAAD2UvXF66jT0ZPuPZ+f+dw+n8/g9PNz6q/FnESgAAAAAAAB706iPZiSYl74l64k646mNLRlzqNNaq6LmyLnriHieYlAAAACXrnS05O+uQAABVqutW0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeFaq6lTo45kAAAAAAAAAAAAAAAAAAAAAAAAAD2XU8yzEvfE/Vdm2rHybeU6OjLN3WAAAAAAAAAAAAAAAAAAAAK9dubm1AAAD2U3XF67Pqacf7J9b8P8f5Pt/KeZ7OfRpg475SgCQQTxExc9w8dw8WRx15AAAe9Oo576Sdcz9Vy91zd8STGrpxYmTfDx3DxZDxZHE+RPMz5yAAAE3fGlpydTAAAAFWq61bSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4mtVbSp0ccyAAAAAAAAAAAAAAAAAAAAAAAAB11E0827qLltGvqxYmP0KlV9qyn2ePJkAAAAAAAAAAAAAAAAAAADmJysu3jmQAAB7KSebdtOvrxXrs+dn1Uab6NOmHnrmJQAAHfUTdcTd1zdcd9c9THkSCEkT7Menc8y9cy91y9c+o+59r5/Aw+l8r5nr1+LIOLYeLIuZ8ieZnzkAABYsr0dOX1AAAAAq1XWraQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPCtVdTp0R8yAAAAAAAAAAAAAAAAAAAAAAAPZdTFuyrS0ZNjXh+h3+b8t5nrw891qroonlIAAAAAAAAAAAAAAAAAAAFDPpqVXAAAAey6mJJ5+i3+Zk5dnKYOLYeOuI68gAAAAAAAAOunscydJOuLHdViyq1ZV+j/QfL/K+b7HzfnepX4sh4tg4siifOZ5mfOQAAs21aOjKAAAAAKtV1q2kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwrVXU6b4+egAAAAAAAAAAAAAAAAAAAAAB7LuebdtX0e/wAv7v2/nfuvZ+f/ABv5P7fLzbKNOmPnrgAAAAAAAAAAAAAAAAAAAEHFmZl1gAAAAey0b8viadV6HKeU+QQAAAAAAAAHvTqOe+knXM/VUtnE/XHcxzCOOoeO4eLYuO4onyJ5mfOQAFq2rQ0ZQAAAAAKtV1q2kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAV67adOiHjoAAAAAAAAAAAAAAAAAAAACTrnV05O+uZ+6/Ua+vFdtopVX5+fTUqvjieUgAAAAAAAAAAAAAAAAAAeROVl2x8yAAAAAN3b5+Hj9AAeQAAAAAAAAAHvTqOepSTEnfE3VfffPbnxPHPUXPcXNkfPUcPE8xKAAtW1aGjKAAAAAAKtV1q2kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQcWVKb69dgAAAAAAAAAAAAAAAAAAt206F+cR89ZebX5K3ZVr6sVq2jqYi47r8WxcWcI8SAAAAAAAAAAAAAAAAAABQz6alVwAAAAA1NOSrXdVqtAAAAAAAAAAAHsvZj1HcpJjvrjtz11HkOY6jjvjnqOHkTzM+QQAs21aOjKAAAAAABVqutW0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACPnupVdWqu5gAAAAAAAAAAAAAAB7LS0ZbHdYqVXZ9GgDuYvX57ltPUx1Meo5ieY64PAAAAAAAAAAAAAAAAAAACCu3MzagAAAAB7Lc2efhYvQAAAAAAAAAAAAHvTqI9mOpdHUx7MeHkTzE8Q8h5M+RPkALFlelpyAAAAAAACrVdatpAAAAAAHoAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeRNau2rVdDx2AAAAAAAAAAAAJeudTTk6mPDNz6q9dgA6lbtouXUezA9OgeHh4AAAAAAAAAAAAAAAAAAAcxOVl28cyAAAAANjXizc+qHjsAAAAAAAAAAAAeyS6iEx6ey9B5Dw8ifJeJ8ggJ7ONLTk9QAAAAAAAKtV1q2kAAAAAenR6j2Q8ifDk8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIue61V1au3jmQl6ADwQAAAAAFy6m/dnIj57ys2vmJAA6lbtot3UdTAAAAAAAAAAAAAAAAAAAAAAAAzc2uvXYAAAAAOpbWzBh4t4AAAAAAAAAAAAA9kl6j2AIBPkvEoeCAl751NOP2YAAAAAAAAkmNHRlHETQo0cR0AAAOzuYl6rl74Ii5si475jqMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEPFkFdkHFnkT1MDmJ5TzE+CAAA9lp6Mk3fHpTquoUaAAAJu+LVtNmyr2YAAAAAAAAAAAAAAAAAAAAAAAAqU30KNAAAAAAG3swY+XdxzIAAAAAAAAAAAAAA9kkEAkh4IASdRqasfU8gAAAAAAACrVdatpHc83788k8kkV+LKVOjwHRJMWLKb9+e5bR7MU6b6NOirVdHHXIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB6dknXHfXPpFz1Uqvp03w89cR15ACXvnU0ZOpjwzM+uCvsAAeyn7rn7rsWVd9cgAAAAAAAAAAAAAAAAAAAAAAAARcWZebX5AAAAAASdc62rHi49wAAAAAAAAAAAAAAAAAAAHUxqasknXAAAAAAAAAFWq61bSAABP3Xeuo9QT6iPnubuvZ14NTTl6mMzNqxsu7Nza4eLIwAAAAAAAAAAAAAAAAAAAAAAAAAAAAADpEkrdufQ0Zr92fqYp1XZebZnZ9VSu6Xri3ZT4QcWZWbZzEj09mOpjueZOuZOuJeuJe+AAAAAAAAAAAAAAAAAAAAAAAAAABzE5WXbxzIAAAAAG5twYmPf5AAAAAAAAAAAAAAAAAAAAey09OSbusAAAAAAAAAVarrVtIAAAAHZp6cm3s8/c2YPqvT8e1ZV8D4n0eBh9HIyba1dsaQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOyfuvS05NzZg1tWLuYzc+rPo0UadFeu2lVdTqvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHic3Lrg47AAAAAAsWV3rs+Tl2AAAAAAAAAAAAAAAAAAAAaGjNatpAAAAAAAAAAq1XWraQAAAAOyx3Vp6cm9u876Hd5uhfm+R8v2sLF6GVl2Vq7Y0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAASIsWVa+rFv7vO+19fwdjXi+G8b6D5XzfXw8XoVar4onwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFDPpqVXAAAAAADe2+fg4vQAAAAAAAAAAAAAAAAAAAAuXU3r8wAAAAAAAAAAq1XWraQAAAAOyXri7dn1dWPRvzWbKs6jTiYt9CnVDx3wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASE/dWnqx7uzB9N6Pk8x1h4vQwMXoZOXbVqv4PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACpTfQo0AAAAAAC5bTN3xm59IAAAAAAAAAAAAAAAAAAAsWV6WnIAAAAAAAAAABVqutW0gAAAAenZN3XbtosWVC5dRhYfRgrt4TyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdkk83Ls/0O/wA2buvmOqVN+Xm10adMPHfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABWruz8+nyAAAAAAA3dvn4WL0AAAAAAAAAAAAAAAAAAABJ1zqasfUwAAAAAAAAAABVqutW0gAAAADo6O+ue55ItW1Q8WVKruAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAenZbto09OStXb7MQ8WVarouO+E8gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgrszc+vyAAAAAAA0L8/MTRpvAAAAAAAAAAAAAAAAAAA6lqascnXAAAAAAAAAAAAq1XWraQAAAAAPUdJI9PDW1Y8bLtAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHRt68GRl3dTz6cRPMdeI4SAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIeLMzNr8gAAAAAABvbfPwcXoAAAAAAAAAAAAAAAAAAADS05bFlQAAAAAAAAAAAFWq61bSAAAAAAAAL11EfPVWu0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAADW0486jTxz0gB5M+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAh4szc2vmAAAAAAAGppyVa7qtVoAAAAAAAAAAAAAAAAAAFy6m9fmAAAAAAAAAAAAFWq61bSAAAAAAAABsasWPl2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC1ZVP3XnUaQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIeLM3Nr5gAAAAAAB7Lc2efhYvQAAAAAAAAAAAAAAAAAAAn7409WMAAAAAAAAAAAACrVdatpAAAAAAAAAvXUR89Va7QAAAAAAAAAAAAAAAAAAAAAAAAAAAAANrXhxcm4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACCuzNz6/IAAAAAAADY14s3Pqh47AAAAAAAAAAAAAAAAAAHfUaurH1PIAAAAAAAAAAAAFWq61bSAAAAAAAAANnVixsu0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAbGrFlZtnESAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK1V2fRp8gAAAAAAAOpbWzBh4t4AAAAAAAAAAAAAAAAAA9lp6ck3dYAAAAAAAAAAAAAq1XWraQAAAAAAAABfuzxc91a7QAAAAAAAAAAAAAAAAAAAAAAAAAAABcto6lRpvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFKnRSovAAAAAAAAG3sw4+XbxzIAAAAAAAAAAAAAAAAAAvX0XLs4AAAAAAAAAAAAAFWq61bSAAAAAAAAABsasWPl2gAAAAAAAAAAAAAAAAAAAAAAAAAAAezGxpx42XaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4nPz6a1VoAAAAAAAAk651tWPFx7gAAAAAAAAAAAAAAAAABYsr0tOQAAAAAAAAAAAAAAVarrVtIAAAAAAAAAF+7PDz3WrtAAAAAAAAAAAAAAAAAAAAAAAAAAAGzqw4+bd5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAR89Z2fXFx0AAAAAAAABu7cGHj3+QAAAAAAAAAAAAAAAAAA76jV1Y+p5AAAAAAAAAAAAAAFWq61bSAAAAAAAAAANjVix8u0AAAAAAAAAAAAAAAAAAAAAAAAAAC/dn4jqnVcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK1d1DPp5gAAAAAAAABYsrvXZ8nLsAAAAAAAAAAAAAAAAAA9lpack/dYAAAAAAAAAAAAAAFWq61bSAAAAAAAAAAL92eHnutXaAAAAAAAAAAAAAAAAAAAAAAAAAB3POppy5GXYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB5E0KNNWq0AAAAAAAAADe3efg4fQAAAAAAAAAAAAAAAAAAF26i7fnAAAAAAAAAAAAAAAFWq61bSAAAAAAAAAABsasWPl2gAAAAAAAAAAAAAAAAAAAAAAAAAbWvDi5NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEFdufRp45kAAAAAAAAAC5dTN1Xm59QAAAAAAAAAAAAAAAAAE/fGnqxgAAAAAAAAAAAAAAAZeXZ3PIAAAAAAAAAAFiyuvXYAAAAAAAAAAAAAAAAAAAAAAAAAPZT9V1+LAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABzHUHHYAAAAAAAAAAFq2qrVaAAAAAAAAAAAAAAAAAAJ++Op5AAAAAAAAAAAAAAAA//aAAgBAQABBQLoYsT5mOTH4gqSZWVldxVC0Chd4R3xn+lXnBhyR8OTF62a0d0YcL5nzZkRKGcbTiboYfHbLMvkKF3Vce+p5GbHMmTFkX0E0BNx7lsacRmLxTlbIcWJKDpY/HVFzeQ2bdVQtAoXsR2uPcIVjOIziEsUfHHjbK+TIuNeiAWITH4gyZHytuYBMXGB2Lkft8KxgxGDGsoB6seNsrZMi4V6OLE+Zjlx+KCa7ouKe3YuR6duUrBjaDEIFA6KI2RsjrgXo4fHOWZfIFu5jEYAB2MzWjtkKTBiMGNR1ERsjO6+OvRx+OqLm8hs25jEYFA7HJoCbj2sFJgxQIo6yqzs7jxl6OB8OJcmR8rbgATBigAHZLtce1ACYMRgRRoFVnZmXxV3oIxgxCe3ZWR69qDGxgxqNEqlizDxV3gAmDEYEUdmZH7SCMYMQgAGjVSxJXxF3ahMGJoMajs52t7RGIwIo0oBYkjxF3QKTBiMGNR2gzWgmvZwUmDFAANMAWJI8QbkMbQYhAqjtL2jNcezAjGDGo1AFZ9PDXbqEzjaDFLFHaztd2YMZMCKNTSp+nhgmu1UJnG04pxLLQO2cj9ljEYFC6ektlJSUHiA/XZrGnE04pxrLV7dd6dk+8GKAAagCBZZLJaPFDVJ19DLGnE04pxrLV7iZrR2QuKAAakRYomDwM+dWxfyR/qW1VrTjacU4hLFlB3OTaCansZcUAA1YizCjZJ4uXEcP+nlx5M7Rutes5VnLOVvjaxnE04pxLLF7t9ozXHsVcZMAA1o+pXCuKHyCwuhaMYejconKJymXsfVjAI7yd7uxVxkwKF12Lx2cc6YpUkhpdLoT6iyiHKJytKk9LF+PeLvXsQKWioBrkxvlNMHjzJmyZT8Kysr6DkUQ5TCzHrYvx7wd+wwCYuPXr46oH8kkes5FEOUwknQ4vx7vd+w1xwADXYsD5ZzYsEZix9JYCHLCSdJi/Hu58nYSoWioF1yI2Q2YfHmXNky+o5FEORjp8X492u/YPvFx69fGoH8n6ej2hywsTqcX492O9ewVxkwALrsWDJlnJh8eM7Ofj7Q5YSTq8X491E0jPd2AATFxga5VZjxYsEy53y+lssJJ1uL8e6WYLGYt2AuMmAAa5PGNG8gIPQ2QCFi2vxfj3Q2Sk99/ArFx012LDkzG7B48fI+Q/FmCxnLbDi/HuYkCNkJ7AVC0AC60Ak8GPDMnkPkHobJseL8e5WyytewFx67H47MD5C4x7+hnCwsW2TF+PcZyiFi3YAUtFQLrceJ8p/R48yZXyn0Nk2bF+PcBdRDlhJPYKpWAU1nvB464xk8hmHoJCxnLbPi/Ht0uohywsx7DXHrcXjvkHNjwwksfQzhYSTtGL8dPcJyJOVZyzlM5WnI05Hl7S5pc0uaXNLmlzS5pe0vecjzkacrTlM5ZyicqzkWXrLllRsvtL1nLORpUnsQAmKgXWJjfIbcHjzLmyZT6XybVi/HRXrOUTlMvbYKmXtOR5ytOUzlnKJyLORJesuXRVEvWcizlE5ZyNLmPZCqWgAXWL44UP5Jt9T5K6yktlstlOni/HrF1EOWHIx3KsqZc0vaXvOR5yPOR5yPOR5e0vaXNKns9ErPbV4sD5Zy4sEZmc+kmkZy2sEAgWWQrCIeli/HpnIohymEk/JBMerVWc8eHx5lz5MvrJCxmLa0RBEWD/E8k48iFGcRuli/HoHIohymVJ+SSY6aof5vnNjTxvo3k0HrZgoJLa4RJhexv7vF4/Jfx/KzZvGzKG6WL8fSSBDlhYnvmkpKaj3iJbpKGDFlMHieQZ/Hln8yicfiiYz4KZBkxsnn5VzeZ62a2E114imeOOTJmzcmRmgyvjh8pXnB4+WZPGzYuhi/H4l1EOU9+0lNOBWKtvUGPIYPF8gz+PPP5aTh8cSnhiX+GJz4RP6yJ/Z5EPkZzCzH03NT1s1sJrsIMxtw+NfC0J+OPyM2Kf0YMs/lTJMmLJi9OL8YXUQ5GPftJSUlJTSgElVt+IVjB4+cz+PyJ/I04MIlniCV8MTm8cT+qk/szw+V5BhyZDpma0E12JFLt5bi+sr68fl58c5PEyw+GWjIyGI4VWcn5A00NCYMGZoPC8oz+HLP5cYgweJAvgpOTxRP6EE/syw+X5BhzZTKk65mtBJJ2LxP1ivTBIi+Zlp/4svyFMMPoGLKYPD8kz+HPP5AJw+KJTwRL/CE/pwif2uIfO8mHyfIaFmPwVSxAC7ITQE3HY/J/Vi+Rggg+Hif4/hjx/O/zl8fyDgwiW+GIW8ITm8cT+uk/u8iHy/JMOTIemqliAANj9ozXHY/EQNlyOcj/IwfAfDx/wDYy+P4fleTk8vMfgeuqliAANkdrtlb9PifJCs8r7ZX4nrAFiBaNkyPXZcGPmy+Vk5c3yQ8Zb8+XJyZK6AAkqLRsmR6bNh/T4/yR8c2Yaysr1gKxVtGyO1o2VQWbzCA3yRy/r8br+8VbdlJoCanZfEFkJqfkgi3v5j3Z+uiW7M7XHZvI/Th+SPh/TJWvXRKbNkbZ/ExjJmy5DlyfJEfr8LrY02Z2tGz/wDHw/kl5n29bGldnZrjs2HGcuTy8gyZvkj4icnkZn5MvURbtnyNtHj/AKcHyS8f9eDqKtxApsztaNnAJPlkL8k836/F6YFYq2jZfaMbjs/hgBmJY/JHGt7+Y13kdNFt2fI205v0+N8kvC+mQ/U9LGlNndrRtHi4+XNnyc2X5JD9fhdLGm0M1x2gfo8TabGnG04jOITiWcazjSWLLFnGk40nEs4hOKcTSxu2/M+09FEu2jK2040OXJ5bhsuyAEwYmgxCWLo7FM4hDiaFSO1fETk8jK/Jl6CrcdnY2jafG/Vi2IKxgxQIo1ZVTDiEONh2l4/2YOgq3ECg2d2uO0e88v8AWNeATBigVRsJAMOIQow7Pzfr8b1gViraNnyNQbT4ai9mLtpQCegFLQYhs5UGHFCpHZeNb38x7vI9XvFW0bP7Qmp2nJ+nxdKuOsAA9QQtBjA2w41MONh2T4X0f39aJbtORtq8bFy5vIy82XRgExcYHqClouMDcCoMOI9jj9fhepEt2l2tG1J+nxNGqFoAF9S4t0IBhxQgjsTzPtPpRKbU7XHZqfFELv5jA5NEmP1KhaBQu7+8OKEEdg+Il/kZX5MvoRKbVkbpUlstlNZSUnjDjXRJjp68X470cUII3/x/14PQiU2omgP16IEVZZCkIh1NJT4Unk/rTQAExVC9DF+O+HEIVI33N+vxviiW7Xkap6AixBPF/wAjL5GLy/FfxcjiNqB8aTxUByOxyN11UtAAvRxfjvxxCFSN4pLYmMu/mG7PSUrFS3a8jUHREWJPC/0MA8X/AEf9BM2ZvJWHPgnL4Zl3gmU8Ezj8Mzg8cz+VJ/E0/hzz+HyofE8kTgzCWMNA36vGPwPVVLoBTpYvx7AOIQqRuoEVYEnipa7LLCYEC7WTSE1PREUzx1OV8+cO5aMYejUicuUT+nyBP7fKE/u8mf25J/WJ/RgnL4hl3gmf+Ayzwpw+NP5sc/kM/jzT+PyJ/L5E8H/EXNh/1vGbx/JMMPURLupi/HsI4hCpXc1iCY8bOcniZvG8U46wqBDteRq9SsB/n8a6FoTqBBAYHcTwf9vFiwf6Xnf3ZjDD00SvVxfj2IcYMKldxWYfHzNP8vhw+T5jIvjNGh2p2tHU8bFzZM+bmy1ldWJX4n4HpIleti/HsY4wYUYbYqs5HhZZTwscHmFZy5MhT6Q5CYxjQ7T7Rjceo/8A5/G1g+NZXqIlevi/HsgophxsNnx4M2WfyKkv8PHG83MQSW+CITFosul0LQnasjV6vi4w75shzZNbWVlZXpoldBi/HsoqDDiMpTYU8TyHnD42Of0YccyeVnyegAmLjA+NZWV2p2tHVz/+fDsFZXpIl2hxfj2Z7w4hCjDVqjOR4WSU8LHP7CsfLkyen3i4p7beTQE1PU8RBV3OR9grK9FFu0WL8ezyqmHFCpGlx4M2WfyKk5PDxxvNzkEk+oAmDFAANxdrj1AKnyTxJtSrcR9NF4uVUSvhtP58TQ+JnEKsvTpLZbKdglFMOEywj4UlJTpp4fkPOHxcc/pxY5k8nPk6ARjBiG55G63igYwSWO0qLiBQaLF+PwDMsHl5xP6MTSnhtP5bo3jZ1nt6QIqQY5xxkjDsKk4wZ/PDgaHGRCPUqO5HhZBKeFjn9jLHyZMnQGNoMQgUDdHa0dVVLt5bBdqArFW0aPF+PrXJkSf2ZZy+M04/FafyOYcGVIgiJFxw446RxD2CoipBjnFGSMgjYlhwxPDz5J/EElfGxRvL8gg1PooZY042nEZxCWLu5NATcer4/wCnFtSLbpcX49THnzLE8gtMZwNPEwYXnl4MfFkEyRuwBEExrAkOOOkPi5WjYvHSc+NI+fNk7Edrj1ceM5X8vIC2040ppsX49QRDMbTB5DYjl8hs+LIZkMbsATHMU8BVLeUE4smYiZmLRoexMj16+L/z+PtONNPi/HqCKYjwZJjz2tnqjMYewFiGY2iOcK5PIyZI7TIY3YmR+vgxHNl8nKMmTaEW7UYvx6oMDQPL4zc3jk9hKZ41Ic5c8kZ4zQ9hu9NAP/P4u0KtxApqMX49asrKzBl48mbHxZOwcStkfNmEvl8LQnsN3t0HjYubL5GXmy7P7xVtGoxfjoj+7xuwT/5sUrKyvYbNbPfQP/5/G2hFpqsX46Lx8nHkzY+LJv8A46Kod2duxWa2e+g8XGHyZspzZNnxrq8X46Nv3+Nv2HEcz+RlDnsVntnvoc36MGzotx1eL8dH4+TjyZsfFk33J/5sXYrvbovEQVdzkfZgKkCg1eL8dI37vG3zABiRmLHsR3pogKnySMSbOi2jWYvx0njZOPJmx8WTesGLlfPl5W7EfJo/FAxgksdmxrrsX46V/wB/j7yAScxGDH2I710aqXby2C7Oi3HXYvx0vj5BjyZcZxZN4xDgxk17DZgsZi2k8f8ATi2YCpAoNdi/HTP+/wAfd8GLkbNl5X7CbJSE10mPG2V/LyKW2ZFtGvxfjpvHyDHky4ziybqql2zsMa9g1pGyV02L/wA/j7NjXYcX46dv3+Puqf8Amxdgs4WEltNgxHNl8rKMmTZUW47CHKzlacrTlacrTlacrTlacrTlacrTlacrTlacrTlacrTlacrTlacrTlacrTlaY/JyY5ytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVoMrA5PJy5W5WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK05WnK0ORjqEytjGzByJytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytOVpytP//aAAgBAgABBQLoKpY3Lj3YCsApvAJE5AZYrQqy+smndKqXLMAJQy09BMZaM/03ULvodljMp9PtPfuahlsXHcTao6SoAHctuoFYBTsQmvcVDLZbKD4gFizBR0feUXFGYsd0C9ise36GWy0SnqALEkKOiqlzcuPdQvYzHt20y2U6IBJJCDool0Z/puYWUp2MTTtu2WjqAEkkIOiEADuW3MLKU+T9JbKDrAEwmwdFCqgsWO42ynZJNe1rZQaACsJGPe6GW9lse1LTLRoveE8Y3m2UHZjHtKhluk95/wA94tMtHZxNO0bZQab/AJjdKS2WjtAmnZ9JbqP+W52mWyg7TJr2bQy3U/8AIbfaZbKDtYmvZlsoNV/y2yhlstEoO2WPZdspq/8AkNmoZaZbLRKDt1j2VbKamkpKSnHDsNDLTLZaJQdxE07JC6sQRMDuCvHDq6GWmWy2Wjug/TsgLrRFBMxstnkMGcw9aolwl0uPxoZaZbLRKDu4mvYwWUprgoWX1lZWHpVEul0qfUo7zJr2KBAKa5UJl4X4VlZX11Eulx6a95E9iUrAuuALT7EjMW6Nwl0r1l7xJ7EC6+ykL9C4S7RL3gT2GF16oWlypPf1Vl2lXu8nsICsAprgCZRUjMW9V0qdOvdxPYQXXhIX9V0rqV7tJ7BArKU1yoWlVSEk+m7WL3YTXsELrqVlqpGct6S2uXuomkJr2ABrwkvp6S2wL3SW7BC65VLSqJCS3oJpCa7Cvc9aQmvYAFZSmusCxnJ9JbY17mLdghdcEJl4X0k0la7Ivcl3YNKwCmtClp9iRmLektsy9w1Eu7CArrrAsL19NaQmuzr29cJdKnsMLrVQmXqvqJptK6iolwl0ul0uMuMqZUyplTKmVMqZUyplTKmV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/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD9/GFvNtv/APcP/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/CbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbH/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDkNtuJttv/AJ6//wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AjTbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wClc2223w222/8Av/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AMuNttttttttttttttttttttttttttttttttttz/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wCX1tttttltttvpf/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD6m22222222222222222222222222222222222J/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/jMttttttnNttttb/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AeNttttttttttttttttttttttttttttttttttuf8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/YhbbbbbbbKbbbbb/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AhTbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbH/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD9+Lbbbbbbba7bbbbb/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AOtttttttttttttttttttttttttttttttttttttt/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/jVtttttttttPNttttv/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD9HVttttttttttttttttttttttttttttttttttttttn/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/kTbbbbbbbbbZObbbbbb/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/APzqNtttttttttttttttttttttttttttttttttttttt//wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AA+2222222222yM222222/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AqINttttttttttttttttttttttttttttttttttttttttL/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDVLbbbbbbbb0jcabbbbbbb/wD/AP8A/wD/AP8A/wD/AP8A/wD/APtNltttttttttttttttttttttttttttttttttttttttttnf/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AmttttttttttkAHStttttttv/AP8A/wD/AP8A/wD/AP8A/wD/AOpfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A97bbbbbbbbbblwf7bbbbbbbb/wD/AP8A/wD/AP8A/wDyqM6222222222222222222222222222222222222222222222z/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD4gbbbbbbbbbbYzdxNbbbbbbbb/wD/AP8A/wD/ANWUQttttttttttttttttttttttttttttttttttttttttttttttttuf/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AMW22222222223E++fi2222222/8A/wD581Arbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbk//wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDQG222222222223AFECG22222KmuepRG22222222222222222222222222222222222222222222222222222p/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDmdttttttttttttthuXqYNtszuH/8ACbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbt//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/ACG22222222222223dmhDG34/wD/AP8A/wDNtttttttttttttttttttttttttttttttttttttttttttttttttttttttkf/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/ANNttttttttttttttjWb9ifw/wD/AP8A/wD/AM22222222222222222222222222222222222222222222222222222222P/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AItttttttttttttt7Ftg1If/AP8A/wD/AP8A/wDNttttttttttttttttttttttttttttttttttttttttttttttttttttttt//wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/APy+22222222222222wk2275/wD/AP8A/wD/AP8A/wDNttttttttttttttttttttttttttttttttttttttttttttttttttttttv/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDlNtttttttttttttt+Ntk7/wD/AP8A/wD/AP8A/wD/AM2222222222222222222222222222222222222222222222222222225/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD6xbbbbbbbbbbbbbbY7baQ/wD/AP8A/wD/AP8A/wD/AP8Azbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbs//wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AOZttttttttttttttrxtsf8A/wD/AP8A/wD/AP8A/wD/AP8AzbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbfP/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wCbbbbbbbbbbbbbbf0bcv8A/wD/AP8A/wD/AP8A/wD/AP8A/wDNtttttttttttttttttttttttttttttttttttttttttttttttttttsf/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wCg222222222222228829P/AP8A/wD/AP8A/wD/AP8A/wD/AP8Azbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbdn//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AOk22222222222222142wv8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AM222222222222222222222222222222222222222222222222223N//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AWbbbbbbbbbbbbbbOjblP/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8Azbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc6/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AMwtttttttttttttt65tj/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AzbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcI//wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD+G22222222222222nG3Wf/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDNttttttttttttttttttttttttttttttttttttttttttttttt+f/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD922222222222222rm2/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AM22222222222222225JI222222222222222222222222222Y/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/APy222222222222229i22/8A/wD/AP8A/wD/AP8A/wD/AP7b/wD/AP8A/wDNtttttttttt3DAE+dJJeXoXPbdnttttttttttttttttto2L//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDsttttttttttttttnNtun/AP8A/wD/AP8A/wD/AP8A/wAmOt//AP8A/wDNtttttttsuYz/AP8A/wD/AP8A/wD/AP8A/wD/AP8ATKQCbUz422222+SEdif/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8Ajbbbbbbbbbbbbb/zbbl//wD/AP8A/wD/AP8A/wD/AP0FDOH/AP8A/wDNtttttssaf/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/IRl7r5Ux/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A+g2222222222223P223f/wD/AP8A/wD/AP8A/wD/AP8A/hzdxP8A/wD/AM22223Nn/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDre2Tv/wD/AP8A/wD/AP8A/wD/APlttttttttttttgpttt/wD/AP8A/wD/AP8A/wD/AP8A/wDtRu59/wD/AP8AzbbbNy//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/t1f/LG//wD/AP8A/wD/AP8A8lttttttttttttgRtttif/8A/wD/AP8A/wD/AP8A/wD/AOjSk0X/AP8A/wDNtsgf/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A95dSSfg//wD/AP8A/wD/AP8AxNtttttttt3bCDCtttvf/wD/AP8A/wD/AP8A/wD/AP8A/wD7EzXWH/8A/wDNvk//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/ANmI6oo3L/8A/wD/AP8A/wD/AObbbbZrYEAEbNbabbbe/wD/AP8A/wD/AP8A/wD/AP8A/wD/APu1Ojv/AK//AM7P/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/ALtitK4nUv8A/wD/AP8A/wDwM8bwDQbctttttttttuf/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/YbSdf8Anldr/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AzAiwXvym/wD/AP8A9x6bCY6tttttttttttttt8//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wC2lO//AP6n/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDqB5MjL7IUUbYp/wBtttttttttttttttttuD//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wAj/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AyibdXLTAY/8A/wD/APxtttttttttttttttttuf8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8Am/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AMozNoc0KP8A/wD/AP8A4222222222222222227f/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wCf/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A7ghchPb1/wD/AP8A8Ntttttttttttttttttt/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AD//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDvDZ+4wOb/AP8A/wCG222222222222222222f/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/APz/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/ALvhx6KDR/8A/wD/AIbbbbbbbbbbbbbbbbbbh/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A5P8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A1qxRTR8X/wD/APM222222222222222222Z//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AOf/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/APrncAdQf/8A/wAptttttttttttttttttsn/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8Ax/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wBJxSVb/wD/AP8A7bbbbbbbbbbbbbbbbbbv/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AD//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/c227/8A/wD4bbbbbbbbbbbbbbbbbbbP/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AD//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A+b//AP8A/wD/AONtttttttttttttttttsf8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AD//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A+r//AP8A/wD+q222222222222222222//wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/APH/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDbbbbbbbbbbbbbbbbbbZP/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A+f8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDo2222222222222222220f/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/APn/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD4/wD/AP8A/NbbbbbbbbbbbbbbbbbbbH//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8Az/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AMr/AP8A/wD8ttttttttttttttttttto/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP7/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/ANf/AP8A/wDhttttttttttttttttttuj/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP5//wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AJaDyjYeVSP/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/kf/AP8A/wDFttttttttttttttttttsf/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/APJ//wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A+6HG2222222zyJ//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD+t/8A/wD5Tbbbbbbbbbbbbbbbbbbbn/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDg/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A9Tltttttttttttt1Y/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AD//AP8AwG2222222222222222222f8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AIv/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/kbbbbbbbbbbbbbbbbJV/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AL//AP8A82222222222222222222/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wA//wD/AP8A/wD/AP8A/wD8/wD/APqxttttttttttttttttttvT/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A+Jttttttttttttttttttts//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wCf/wD/AP8A/wD/AP8A/wDP/wD/ACFttttttttttttttttttttmT/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD+v/8Altttttttttttttttttttt3//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDtttl//wD/AP8A/wD/AP8A/lv/AJhbbbbbbbbbbbbbbbbbbbbbbbCv/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD9/wD8lttttttttttttttttttttn//APttv/8A/wD/AP8A/wD/AP8A+2V/84b/AP8A/wD/AP8A/wD+2/JG222222222222222222222222w9//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wCT/wDlNtttttttttttttttttttk/8A/wDWLbv/AP8A/wD/AP8A/wD/AO6c323k/wD/AP8A/wD/APxW2/2222222222222222222222222223X/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD1/wAptttttttttttttttttttt7/8A/tk/h3//AP8A/wD/AP8A/wDKo6tP3L//AP8A/wD/AIm22822222222222222222222222222221r/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD2r/lNtttttttttttttttttttvL/8A/wB3423f/wD/AP8A/wD/AP7NEJ6fW+v/AP8A/wD5bbbbzbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmn/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/APs/4Wltttttttttttttttttttttf/8A/wBRnBVf/wD/AP8A/wD/AP729jWskpv/AP8A/wDTbbbbzbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbpn/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A3UdNi222222222222222222222f/AP8A/wBd69/e9uvG5/8A/vyrQMe/o/8A/wD/ALttttvNttttttttttttttttttttttttttttttuGf/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AM6/pZttttttttttttttttttttvj/wD/AP8AMwCy3/8A/iKhSdzDdXOemyP/AP8A9xttttvNtttttttttttttttttttttttttttttttukf8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD+8F0s6222222222222222222223//AP8A/I5dl3//AP8A/wD/AP8A/jvv/wBODiP/AP8A0tttttvNttttttttttttttttttttttttttttttttu/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD+3FX3A22222222222222222223f8A/wD/AP8At2uS/wD/AP8A/wD/AP8A/wC8vgHDT6P/AP4W2222282222222222222222222222222222222222yR//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD+tXBXa22222222222222222220P8A/wD/AP8A/vY//wD/AP8A/wD/AP8A/vpxxpSCm/8A8Lbbbbbbzbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbdv8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD9JMkW84tttttttttttttttttttt//AP8A/wD/APP/AP8A/wD/AP8A/wD/AP8A/s2Ks15fa/8Apbbbbbbbzbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbco//wD/AP8A/wD/AP8A/wD/AP8A/wD/AGJb/tCx/Rtttttttttttttttttttr//AP8A/wD8/wD/AP8A/wD/AP8A/wD/AP8A/wDKIyVM3L/+LbbbbbbbzbbbbbbwkHbbbbbbbbbbbbbbbbbbbbbbbbbbbbaJ/wD/AP8A/wD/AP8A/wD/AP8A/aVP/wCG3IAA2222222222222222222yf/8A/wD/AP6f/wD/AP8A/wD/AP8A/wD/AP8A3ldGUdTfxG22222228222222BycA222222222222222222222222222225J/dtr/AP8A/wD/APlN/wD/APmW222222222222222222222225/wD/AP8A/wDof/8A/wD/AP8A/wD/AP8A/wD/APslL9WO/wAbbbbbbbbbElbbbbkWHnEbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbMbZ2Gv/AP8Az5f/AP8A/qm222222222222222222222222v/wD/AP8A/wD8/wD/AP8A/wD/AP8A/wD/AP8A/wD/AOydi7/wG22222222836w+mwIEcPG222222222222222222222222222222EYDNd/wCJGf8A/wDDm22222222222222222222222220f/wD/AP8A/wDn/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A+NttttttttvNttkgiAeBwCNttttttttttttttttttttttttttttt3fZ8GBW0kSQFlttttttttttttttttttttttttttmf/8A/wD/AP8A0/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD+htttttttttvNttttvCAqBWNttttttttttttttttttttttttttttuQYHR30v0n9ttttttttttttttttttttttttttttuL/wD/AP8A/wD5/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wA2222222222822222w1ZhkY222222222222222222222222222225a31hAG222222222222222222222222222222223//AP8A/wD/APr/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDxttttttttttvNttttsHQ6YDtttttttttttttttttttttttttttttuB18r7Bttttttttttttttttttttttttttttttttv/AP8A/wD/AP8A2v8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/ACW2222222222822222xsz73G222222222222222222222222222222HhSiJG22222222222222222222222222222224f8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AO222222222228222222NJ7BG222222222222222222222222222223NsiMw222222222222222222222222222222237/8A/wD/AP8A/pf/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A0G2222222222282222226KSG22222222222222222222222222222224lF8Y22222222222222222222222222222229P/8A/wD/AP8A/v8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AMttttttttttttvNtttttttthNtttttttttttttttttttttttttttttts2/8Nttttttttttttttttttttttttttttttt5f8A/wD/AP8A/wD+f/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wAbbbbbbbbbbbbbzbbbbbbbbbLbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbDbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbby//AP8A/wD/AP8An/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD0W2222222222228222222222wm222222222222222222222222222228W22222222222222222222222222222222235//wD/AP8A/wD/AJv/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AkNttttttttttttvNtttttttttptttttttttttttttttttttttttttttspttttttttttttttttttttttttttttttttttH/wD/AP8A/wD/AP0P/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD8ltttttttttttttvNttttttttt5Ntttttttttttttttttttttttttttt8Ntttttttttttttttttttttttttttttttttz/AP8A/wD/AP8A/wD9T/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/DbbbbbbbbbbbbbbzbbbbbbbbbbrbbbbbbbbbbbbbbbbbbbbbbbbbbbbqbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbYv/wD/AP8A/wD/AP8A/P8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wDkttttttttttttttvNttttttttttltttttttttttttttttttttttttttvxttttttttttttttttttttttttttttttttvz//AP8A/wD/AP8A/wDqf/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AIbbbbbbbbbbbbbbbzbbbbbbbbbbZbbbbbbbbbbbbbbbbbbbbbbbbbbbbDbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcX/AP8A/wD/AP8A/wD/AD//AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/APmtttttttttttttttvNttttttttttsttttttttttttttttttttttttttvxttttttttttttttttttttttttttttttttsf/8A/wD/AP8A/wD/AP8AH/8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/m2222222222222228222222222226222222222222222222222222225m222222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"}},"time_used":37,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":19,"receive":18,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/manifest.json","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:39.986Z","timestamp":1785158439986,"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://uniz-coinzltd.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 13:20:43 GMT\r\ncontent-type: application/json\r\naccess-control-allow-origin: *\r\ncache-control: max-age=300, public, s-maxage=60\r\netag: W/\"6a670743-891\"\r\nexpires: Mon, 27 Jul 2026 07:32:27 GMT\r\nlast-modified: Mon, 27 Jul 2026 07:22:43 GMT\r\nx-77-nzt: k/zBHZW1WVQ66Fv/jHKSWqgeXiGcQwLs+tLSOWi1tWzrd3D28sfYuVhhWCxMKE4WL26E+4Y\r\nx-77-nzt-ray: fdb54123304fbe6c2b5b676ac3eef711\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":2193,"size_decoded":1029,"mime_type":"application/json","magic":"JSON text data","md5":"ac973fd16446a8bd414c2cfdbfbdd6ba","sha1":"6d802991373d8180ad7c4197d08c2e8d8e21d581","sha256":"8c973dd5712d4b0125d2be8cc65e3590298e054fb63560738ecf0f64b8e43277","sha512":"9748bc4696f6ec983d5dbd492e36472b1e083d2e61c3a60133b102a8370f7603b54bfe88360c24035fe882d5c30f0a52eb253ae2d0d460d384d72f9f3b188d79","ssdeep":"","tlshash":"c3417893c0f80d531b9c6627b8855a415d50c3c3a8993e0e72ad8a7f2f4ceb910e67bc","first_seen":"2026-07-27T07:28:16.144753Z","last_seen":"2026-07-29T06:17:50.081451Z","times_seen":1033,"resource_available":false,"data":"ewogICJfV2lkZ2V0TWVzc2VuZ2VySW5wdXQtREhyNXVId2QuanMiOiB7CiAgICAiZmlsZSI6ICJhc3NldHMvV2lkZ2V0TWVzc2VuZ2VySW5wdXQtREhyNXVId2QuanMiLAogICAgIm5hbWUiOiAiV2lkZ2V0TWVzc2VuZ2VySW5wdXQiLAogICAgImltcG9ydHMiOiBbCiAgICAgICJfc2hhcmVkLWtiMXlxSGFBLmpzIgogICAgXSwKICAgICJkeW5hbWljSW1wb3J0cyI6IFsKICAgICAgIm5vZGVfbW9kdWxlcy8ucG5wbS9lbW9qaS1tYXJ0QDUuNi4wL25vZGVfbW9kdWxlcy9lbW9qaS1tYXJ0L2Rpc3QvbW9kdWxlLmpzIgogICAgXQogIH0sCiAgIl9zaGFyZWQta2IxeXFIYUEuanMiOiB7CiAgICAiZmlsZSI6ICJhc3NldHMvc2hhcmVkLWtiMXlxSGFBLmpzIiwKICAgICJuYW1lIjogIkljb25CdXR0b24iLAogICAgImR5bmFtaWNJbXBvcnRzIjogWwogICAgICAibm9kZV9tb2R1bGVzLy5wbnBtL0B0aHVtYm1hcmtqcyt0aHVtYm1hcmtqc0AxLjkuMC9ub2RlX21vZHVsZXMvQHRodW1ibWFya2pzL3RodW1ibWFya2pzL2Rpc3QvdGh1bWJtYXJrLmVzbS5qcyIKICAgIF0KICB9LAogICJub2RlX21vZHVsZXMvLnBucG0vQHRodW1ibWFya2pzK3RodW1ibWFya2pzQDEuOS4wL25vZGVfbW9kdWxlcy9AdGh1bWJtYXJranMvdGh1bWJtYXJranMvZGlzdC90aHVtYm1hcmsuZXNtLmpzIjogewogICAgImZpbGUiOiAiYXNzZXRzL3RodW1ibWFyay5lc20tQ1A0Q1UweUwuanMiLAogICAgIm5hbWUiOiAidGh1bWJtYXJrLmVzbSIsCiAgICAic3JjIjogIm5vZGVfbW9kdWxlcy8ucG5wbS9AdGh1bWJtYXJranMrdGh1bWJtYXJranNAMS45LjAvbm9kZV9tb2R1bGVzL0B0aHVtYm1hcmtqcy90aHVtYm1hcmtqcy9kaXN0L3RodW1ibWFyay5lc20uanMiLAogICAgImlzRHluYW1pY0VudHJ5IjogdHJ1ZQogIH0sCiAgIm5vZGVfbW9kdWxlcy8ucG5wbS9lbW9qaS1tYXJ0QDUuNi4wL25vZGVfbW9kdWxlcy9lbW9qaS1tYXJ0L2Rpc3QvbW9kdWxlLmpzIjogewogICAgImZpbGUiOiAiYXNzZXRzL21vZHVsZS1ERDVudlZEMy5qcyIsCiAgICAibmFtZSI6ICJtb2R1bGUiLAogICAgInNyYyI6ICJub2RlX21vZHVsZXMvLnBucG0vZW1vamktbWFydEA1LjYuMC9ub2RlX21vZHVsZXMvZW1vamktbWFydC9kaXN0L21vZHVsZS5qcyIsCiAgICAiaXNEeW5hbWljRW50cnkiOiB0cnVlCiAgfSwKICAic3JjL2ZyYW1lcy9tZXNzZW5nZXIvV2lkZ2V0TWVzc2VuZ2VyLnN2ZWx0ZSI6IHsKICAgICJmaWxlIjogImFzc2V0cy9XaWRnZXRNZXNzZW5nZXItRDFpVlkzTGouanMiLAogICAgIm5hbWUiOiAiV2lkZ2V0TWVzc2VuZ2VyIiwKICAgICJzcmMiOiAic3JjL2ZyYW1lcy9tZXNzZW5nZXIvV2lkZ2V0TWVzc2VuZ2VyLnN2ZWx0ZSIsCiAgICAiaXNEeW5hbWljRW50cnkiOiB0cnVlLAogICAgImltcG9ydHMiOiBbCiAgICAgICJfc2hhcmVkLWtiMXlxSGFBLmpzIiwKICAgICAgIl9XaWRnZXRNZXNzZW5nZXJJbnB1dC1ESHI1dUh3ZC5qcyIsCiAgICAgICJzcmMvbWFpbi50cyIKICAgIF0KICB9LAogICJzcmMvZnJhbWVzL3BvcHVwL1dpZGdldFBvcHVwLnN2ZWx0ZSI6IHsKICAgICJmaWxlIjogImFzc2V0cy9XaWRnZXRQb3B1cC1CQTFqY0hudS5qcyIsCiAgICAibmFtZSI6ICJXaWRnZXRQb3B1cCIsCiAgICAic3JjIjogInNyYy9mcmFtZXMvcG9wdXAvV2lkZ2V0UG9wdXAuc3ZlbHRlIiwKICAgICJpc0R5bmFtaWNFbnRyeSI6IHRydWUsCiAgICAiaW1wb3J0cyI6IFsKICAgICAgIl9zaGFyZWQta2IxeXFIYUEuanMiLAogICAgICAiX1dpZGdldE1lc3NlbmdlcklucHV0LURIcjV1SHdkLmpzIgogICAgXQogIH0sCiAgInNyYy9tYWluLnRzIjogewogICAgImZpbGUiOiAiYXNzZXRzL21haW4tQi1WSGMxSzQuanMiLAogICAgIm5hbWUiOiAibWFpbiIsCiAgICAic3JjIjogInNyYy9tYWluLnRzIiwKICAgICJpc0VudHJ5IjogdHJ1ZSwKICAgICJpbXBvcnRzIjogWwogICAgICAiX3NoYXJlZC1rYjF5cUhhQS5qcyIKICAgIF0sCiAgICAiZHluYW1pY0ltcG9ydHMiOiBbCiAgICAgICJzcmMvZnJhbWVzL21lc3Nlbmdlci9XaWRnZXRNZXNzZW5nZXIuc3ZlbHRlIiwKICAgICAgInNyYy9mcmFtZXMvcG9wdXAvV2lkZ2V0UG9wdXAuc3ZlbHRlIgogICAgXQogIH0sCiAgInN0eWxlLmNzcyI6IHsKICAgICJmaWxlIjogImFzc2V0cy9zdHlsZS1DbGlKd1VUUi5jc3MiLAogICAgInNyYyI6ICJzdHlsZS5jc3MiCiAgfQp9"}},"time_used":3320,"timings":{"blocked":-1,"dns":33,"connect":8,"send":0,"wait":8,"receive":0,"ssl":3270},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/yellowtick.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.828Z","timestamp":1785158432828,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/yellowtick.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/styles/custom.css\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=4,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:32 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23159\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=%2F2YrOit6uB%2FAsNkxHjtxvZBrdTIFaIQ2zUhBv%2F6dvVEvHNBAtVIOHQ3c0HOPKdiC79o6lgwu0%2BH37ZYti%2B9r3DktRq87ilk3dd60wCppiDPCZPmsilN5EuYU%2BPKwSjW5yuRwyA%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12d3c9f56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 1302\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":1302,"size_decoded":2070,"mime_type":"image/png","magic":"PNG image data, 16 x 16, 8-bit/color RGBA, non-interlaced","md5":"bc7d51737eba719ede2b2da6da833be2","sha1":"5fafbd19d78a355c711555262631766809a20848","sha256":"a3ed44d85efbeee30ebd6bcc6c9c10fea963915174854d92d4272b445ccdd94b","sha512":"90b387ace1f59e446a27fd17931ee78e6a9092bbf2496e5e2d11c2ce2213cfc29dbca72a2feabd2130bfdcfa8905a7af1e9e21dff45a5b82cb4ffd5ab209679a","ssdeep":"","tlshash":"6b21709df8115922e118998118f3d423c6b30880e6d4af7eaacfce9b9d225b94059cd7","first_seen":"2024-09-19T20:45:31.017924Z","last_seen":"2026-07-27T13:21:39.094404Z","times_seen":13,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MDZDQjA5MDI4NUQ1MTFFOUI1NEU5QzA4QjI4ODAxQkIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MDZDQjA5MDM4NUQ1MTFFOUI1NEU5QzA4QjI4ODAxQkIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowNkNCMDkwMDg1RDUxMUU5QjU0RTlDMDhCMjg4MDFCQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowNkNCMDkwMTg1RDUxMUU5QjU0RTlDMDhCMjg4MDFCQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PpIKA9QAAAGKSURBVHjadNOxL0NRFMdx7+UJJRWraLRGsVBBSNqmdhIV/4CYjKxsDBaTWLCyWUVikBpQ1G4iKZOhaUUlktb3yO8lN81zk09e83rPveede65XO451OMNHHgVkkNT7F1zjDFdohgGBE5zADibxhH28wtNCWb0rYRMVC/KUgQUfoaGnLVDHjxbvRBzjWEVMz0qgtHcUvIdH/W452X3jE1XUsIFtrITfPKmdLfirLTgcLS1c1twp5AIVrCyNjugxiDn04UBz7TMLvqpdVIpRO1t9ljHvZFfXqWQsgyFVOyzYoibYDj1YwgzucKE5PzraZBCxoy04hhH0YxT3OMV7+2Rfu6d0VDbO8YEFzOIhItjmDlusr2/J6pytaZ5xiEt13gnenGBPc/9qF2jSvpqkqkLZIrv/nIjVJa3PXPPV2yV11gR6tUv78PRfWnNvLQNfF8N6uxvraqwBpdktcb3Lqwu7FNP0nNuYUHtO6wiLOipPRc4q7RtshXXxIq5zzrnOKec6F1WvonudfwUYAJKcabyKQPTwAAAAAElFTkSuQmCC"}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","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.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.youtube.com/embed/4ekOcDG2D8E","date":"2026-07-27T13:20:33.152Z","timestamp":1785158433152,"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/4ekOcDG2D8E\r\nCookie: __Secure-YNID=20.YT=gH5UekW7d1yJXHdyAWP9D3nuufltIP5U3L-OJPITdfVo4QFdUpGIlO1MrkvQo6k6kl0jq_pOZAm0Y6StBGPZKrWCX-Ie8T1zxUJW6abmYuVU53Il1VEq4vUs5vvLfbgZGHz1eALkxngiX8bUsdRMr2vaKLTZJ0IBhq1y-2EM8N90iJ0cyWzGnhUGzNxuZzHw9HXFuIwKItlZKR3JI0AWby-eMB-aedGxFUVnqseGfA1HlqbnqC5EymsVz59X4lHMwh44OYJRjaiXEEhEetat2qsHLh8v23W9zHmKOEE2ZhT3CAsXUCZ0LdHpvohM6BZq6G030fjyK9N5mMzUa8e_Fw; YSC=n_kiEdK62Us; VISITOR_INFO1_LIVE=oxtQMHpPyNo; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgEg%3D%3D; __Secure-ROLLOUT_TOKEN=CKOus_iU9NnYzgEQ5fqIsvnylQMY5fqIsvnylQM%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: 260631\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":442344,"size_decoded":150945,"mime_type":"text/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (534)","md5":"779ffe8039ad87e2a1aa1c111061fae4","sha1":"7765f6360937f90e51dc4974d13c20887adca712","sha256":"9e5e6d330bae7d5d640cf35fbbd6dbac19e4eec6c5bdea7b99a664523269f90f","sha512":"17cd5c8a938106fbe74d4ea623e67c3669683343c08f866700fd6284152c7397141c9ca02451bf6a32808003c4b4bf3fcce72cbbe6c53a851a1da6d254ea3619","ssdeep":"6144:OZaBJxrsw56sgMoiImct8de1F6Suapko3iM80AvhapoXgvWbq/+:FFpgMoircDkMiM80CapoXgvWbq/+","tlshash":"30944cd97762707392a2f5a5902f0103b17a68a6f40c8c7cf798ddd16eb494942bbf38","first_seen":"2026-07-24T13:29:06.322297Z","last_seen":"2026-07-27T16:56:48.620174Z","times_seen":1326,"resource_available":true,"data":"InVzZSBzdHJpY3QiO3RoaXMuZGVmYXVsdF9iYXNlPXRoaXMuZGVmYXVsdF9iYXNlfHx7fTsoZnVuY3Rpb24oXyl7dmFyIHdpbmRvdz10aGlzOwp0cnl7Cl8uX0ZfdG9nZ2xlc19pbml0aWFsaXplPWZ1bmN0aW9uKGEpeyh0eXBlb2YgZ2xvYmFsVGhpcyE9PSJ1bmRlZmluZWQiP2dsb2JhbFRoaXM6dHlwZW9mIHNlbGYhPT0idW5kZWZpbmVkIj9zZWxmOnRoaXMpLl9GX3RvZ2dsZXNfZGVmYXVsdF9iYXNlPWF8fFtdfTsoMCxfLl9GX3RvZ2dsZXNfaW5pdGlhbGl6ZSkoWzB4MCwgMHgyLCBdKTsKLyoKCiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KLyoKCiBDb3B5cmlnaHQgR29vZ2xlIExMQwogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KLyoKCiBDb3B5cmlnaHQgMjAwNSwgMjAwNyBCb2IgSXBwb2xpdG8uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVAoqLwovKgoKIChUaGUgTUlUIExpY2Vuc2UpCgogQ29weXJpZ2h0IChDKSAyMDE0IGJ5IFZpdGFseSBQdXpyaW4KCiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5CiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8gZGVhbAogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbAogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KCiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOCiBUSEUgU09GVFdBUkUuCgogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIFBvcnRlZCBmcm9tIHpsaWIsIHdoaWNoIGlzIHVuZGVyIHRoZSBmb2xsb3dpbmcgbGljZW5zZQogaHR0cHM6Ly9naXRodWIuY29tL21hZGxlci96bGliL2Jsb2IvbWFzdGVyL3psaWIuaAoKIHpsaWIuaCAtLSBpbnRlcmZhY2Ugb2YgdGhlICd6bGliJyBnZW5lcmFsIHB1cnBvc2UgY29tcHJlc3Npb24gbGlicmFyeQogICB2ZXJzaW9uIDEuMi44LCBBcHJpbCAyOHRoLCAyMDEzCiAgIENvcHlyaWdodCAoQykgMTk5NS0yMDEzIEplYW4tbG91cCBHYWlsbHkgYW5kIE1hcmsgQWRsZXIKICAgVGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCAnYXMtaXMnLCB3aXRob3V0IGFueSBleHByZXNzIG9yIGltcGxpZWQKICAgd2FycmFudHkuICBJbiBubyBldmVudCB3aWxsIHRoZSBhdXRob3JzIGJlIGhlbGQgbGlhYmxlIGZvciBhbnkgZGFtYWdlcwogICBhcmlzaW5nIGZyb20gdGhlIHVzZSBvZiB0aGlzIHNvZnR3YXJlLgogICBQZXJtaXNzaW9uIGlzIGdyYW50ZWQgdG8gYW55b25lIHRvIHVzZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkgcHVycG9zZSwKICAgaW5jbHVkaW5nIGNvbW1lcmNpYWwgYXBwbGljYXRpb25zLCBhbmQgdG8gYWx0ZXIgaXQgYW5kIHJlZGlzdHJpYnV0ZSBpdAogICBmcmVlbHksIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyByZXN0cmljdGlvbnM6CiAgIDEuIFRoZSBvcmlnaW4gb2YgdGhpcyBzb2Z0d2FyZSBtdXN0IG5vdCBiZSBtaXNyZXByZXNlbnRlZDsgeW91IG11c3Qgbm90CiAgICAgIGNsYWltIHRoYXQgeW91IHdyb3RlIHRoZSBvcmlnaW5hbCBzb2Z0d2FyZS4gSWYgeW91IHVzZSB0aGlzIHNvZnR3YXJlCiAgICAgIGluIGEgcHJvZHVjdCwgYW4gYWNrbm93bGVkZ21lbnQgaW4gdGhlIHByb2R1Y3QgZG9jdW1lbnRhdGlvbiB3b3VsZCBiZQogICAgICBhcHByZWNpYXRlZCBidXQgaXMgbm90IHJlcXVpcmVkLgogICAyLiBBbHRlcmVkIHNvdXJjZSB2ZXJzaW9ucyBtdXN0IGJlIHBsYWlubHkgbWFya2VkIGFzIHN1Y2gsIGFuZCBtdXN0IG5vdCBiZQogICAgICBtaXNyZXByZXNlbnRlZCBhcyBiZWluZyB0aGUgb3JpZ2luYWwgc29mdHdhcmUuCiAgIDMuIFRoaXMgbm90aWNlIG1heSBub3QgYmUgcmVtb3ZlZCBvciBhbHRlcmVkIGZyb20gYW55IHNvdXJjZSBkaXN0cmlidXRpb24uCiAgIEplYW4tbG91cCBHYWlsbHkgICAgICAgIE1hcmsgQWRsZXIKICAgamxvdXBAZ3ppcC5vcmcgICAgICAgICAgbWFkbGVyQGFsdW1uaS5jYWx0ZWNoLmVkdQogICBUaGUgZGF0YSBmb3JtYXQgdXNlZCBieSB0aGUgemxpYiBsaWJyYXJ5IGlzIGRlc2NyaWJlZCBieSBSRkNzIChSZXF1ZXN0IGZvcgogICBDb21tZW50cykgMTk1MCB0byAxOTUyIGluIHRoZSBmaWxlcyBodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMxOTUwCiAgICh6bGliIGZvcm1hdCksIHJmYzE5NTEgKGRlZmxhdGUgZm9ybWF0KSBhbmQgcmZjMTk1MiAoZ3ppcCBmb3JtYXQpLgoqLwp2YXIgZWEsZmEsZGEsbmEscWEsdWEsdmEsQmEsSWEsSmEsS2EsUGEsUmEsVmEsJGEsaGIsbWIsd2IsemIsQWIsRWIsQ2IsRmIsR2IsTmIsVGIsZmMsaGMsaWMsamMsa2MsbWMsbmMsb2MsdGMscWMsR2MsSWMsTGMsTmMsVWMsUWMsV2MsY2QsZmQsaGQsamQsa2QsbWQsb2Qsc2QsQWQsQmQsRWQsdWQsR2QsSGQsSmQsSWQsS2QsTGQsTWQsT2QsU2QsWWQsYmUsY2UsZWUsZmUsZ2UsaGUsaWUsamUsa2UscWUsbGUscmUsb2UscGUsdmUsdGUsc2UsdWUsd2UseGUseWUsemUsQ2UsRGUsRWUsRmUsSGUsS2UsTWUsTmUsT2UsUGUsUWUsVmUsWWUsUmUsWmUsYWYsV2UsVGUsaGYsbGYsbWYsbmYsb2YscmYsdGYseGYsemYsQ2YsS2YsTGYsUWYsRmYsU2YsT2YsTWYsTmYsVGYsUmYsV2YsVmYsWGYsWWYsWmYsYmcsZGcsZWcsZmcsY2csa2csbGcsaGcsZ2csaWcsamcscmcsc2csdGcsdmcseGcsemcsQWcsdWcsRWcsd2csRmcsRGcsSGcsSWcsSmcsT2csUmcsTmcsVGcsU2csVWcsWWcsWGcsYmgsJGcsClpnLGFoLFBnLGNoLGZoLGloLGpoLGtoLGxoLGdoLGhoLG5oLHVoLHZoLHdoLHhoLHloLEFoLEJoLENoLERoLEVoLEZoLEloLEpoLEtoLExoLE1oLE5oLE9oLFBoLFFoLFJoLFNoLFRoLFVoLFZoLGNpLGRpLGVpLGZpLGdpLGhpLGppLGtpLGxpLHBpLHFpLHJpLHNpLHZpLHdpLHhpLHlpLHppLEFpLEJpLERpLEVpLE1pLFRpLFlpLGFqLGRqLGNqLFhpLG9qLHhqLHdqLEFqLEJqLENqLEVqLEpqLEZqLEhqLElqLHZqLFFqLFpqLGJrLGNrLGFrLGVrLGhrLGlrLGZrLGtrLG1rLGxrLG9rLHBrLHFrLHNrLHJrLHZrLHlrLHhrLHprLEFrLEVrLEprLEtrLExrLFJrLFNrLFRrLFVrLFhrLFlrLFdrLFprLCRrLGJsLGNsLGRsLGhsLG5sLHFsLHNsLHRsLGdsLHVsLHZsLHBsLHJsLHlsLHpsLEJsLEVsLEhsLExsLE5sLE9sLFFsLFJsLFNsLFRsLFVsLFZsLFdsLFhsLFpsLGJtLGNtLGRtLGVtLGZtLGdtLGhtLGttLGxtLG1tLG9tLHRtLEFtLEJtLERtLENtLEdtLEhtLEVtLEZtLEltLEptLExtLE1tLApPbSxQbSxRbSxSbSxTbSxUbSxVbSxObSxXbSxYbSxZbSxabSxmbixnbixqbixsbixtbixvbixxbixybix2bix4bixBbix3bix6bixFbixLbixKbixNbixRbixSbixTbixUbixWbixabixXbixYbixZbiwkbixjbyxhbyxxbyx2byx3byxEbyxIbyxGbyxHbyxLbyxKbyxJbyxMbyxPbyxRbywkbyxZbyxXbyxTbyxpcCxlcCxmcCx0cCxycCxxcCxSbyx1cCxkcCxocCxzcCxhcCxUbyxWbyxabyxwcCxGcCxKcCxScCxTcCxVcCxZcCxUcCxhcSxjcSxkcSxlcSxmcSxocSxqcSxxcSxrYSxqYSxpYSxjYTtlYT1mdW5jdGlvbihhLGIpe2lmKGIpZm9yKHZhciBjPTA7YzxjYS5sZW5ndGg7YysrKWRhKGNhW2NdKyJBcnJheS5wcm90b3R5cGUuIithLGIpfTtmYT1mdW5jdGlvbihhLGIpe2ImJmRhKGEsYil9OwpkYT1mdW5jdGlvbihhLGIpe3ZhciBjPWlhO2E9YS5zcGxpdCgiLiIpO2Zvcih2YXIgZD0wO2Q8YS5sZW5ndGgtMTtkKyspe3ZhciBlPWFbZF07aWYoIShlIGluIGMpKXJldHVybjtjPWNbZV19YT1hW2EubGVuZ3RoLTFdO2Q9Y1thXTtiPWIoZCk7YiE9ZCYmYiE9bnVsbCYmamEoYyxhLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6Yn0pfTtuYT1mdW5jdGlvbihhLGIpe2EucHJvdG90eXBlPWthKGIucHJvdG90eXBlKTthLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1hO2xhKGEsYik7YS56Yj1iLnByb3RvdHlwZX07cWE9ZnVuY3Rpb24oYSl7YT1NYXRoLnRydW5jKGEpfHwwO2E8MCYmKGErPXRoaXMubGVuZ3RoKTtpZighKGE8MHx8YT49dGhpcy5sZW5ndGgpKXJldHVybiB0aGlzW2FdfTsKXy5yYT1mdW5jdGlvbihhLGIsYyl7YT1hLnNwbGl0KCIuIik7Yz1jfHxfLnU7Zm9yKHZhciBkO2EubGVuZ3RoJiYoZD1hLnNoaWZ0KCkpOylhLmxlbmd0aHx8Yj09PXZvaWQgMD9jW2RdJiZjW2RdIT09T2JqZWN0LnByb3RvdHlwZVtkXT9jPWNbZF06Yz1jW2RdPXt9OmNbZF09Yn07dWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLnNhKCJXSVpfZ2xvYmFsX2RhdGEub3hOM25iIik7YT1jJiZjW2FdO3JldHVybiBhIT1udWxsP2E6Yn07dmE9ZnVuY3Rpb24oKXt9O18uc2E9ZnVuY3Rpb24oYSxiKXthPWEuc3BsaXQoIi4iKTtiPWJ8fF8udTtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKylpZihiPWJbYVtjXV0sYj09bnVsbClyZXR1cm4gbnVsbDtyZXR1cm4gYn07Xy53YT1mdW5jdGlvbihhKXthLlNsPXZvaWQgMDthLmpjPWZ1bmN0aW9uKCl7cmV0dXJuIGEuU2w/YS5TbDphLlNsPW5ldyBhfX07Cl8ueGE9ZnVuY3Rpb24oYSl7dmFyIGI9dHlwZW9mIGE7cmV0dXJuIGIhPSJvYmplY3QiP2I6YT9BcnJheS5pc0FycmF5KGEpPyJhcnJheSI6YjoibnVsbCJ9O18ueWE9ZnVuY3Rpb24oYSl7dmFyIGI9Xy54YShhKTtyZXR1cm4gYj09ImFycmF5Inx8Yj09Im9iamVjdCImJnR5cGVvZiBhLmxlbmd0aD09Im51bWJlciJ9O18uQWE9ZnVuY3Rpb24oYSl7dmFyIGI9dHlwZW9mIGE7cmV0dXJuIGI9PSJvYmplY3QiJiZhIT1udWxsfHxiPT0iZnVuY3Rpb24ifTtCYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGEuY2FsbC5hcHBseShhLmJpbmQsYXJndW1lbnRzKX07Xy5DYT1mdW5jdGlvbihhLGIsYyl7Xy5DYT1CYTtyZXR1cm4gXy5DYS5hcHBseShudWxsLGFyZ3VtZW50cyl9OwpfLkRhPWZ1bmN0aW9uKGEsYil7dmFyIGM9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpO3JldHVybiBmdW5jdGlvbigpe3ZhciBkPWMuc2xpY2UoKTtkLnB1c2guYXBwbHkoZCxhcmd1bWVudHMpO3JldHVybiBhLmFwcGx5KHRoaXMsZCl9fTtfLkVhPWZ1bmN0aW9uKCl7cmV0dXJuIERhdGUubm93KCl9O18uRmE9ZnVuY3Rpb24oYSxiKXtfLnJhKGEsYil9O18uR2E9ZnVuY3Rpb24oYSl7cmV0dXJuIGF9O18uSGE9ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7fWMucHJvdG90eXBlPWIucHJvdG90eXBlO2EuemI9Yi5wcm90b3R5cGU7YS5wcm90b3R5cGU9bmV3IGM7YS5wcm90b3R5cGUuY29uc3RydWN0b3I9YTthLmJhc2U9ZnVuY3Rpb24oZCxlLGYpe2Zvcih2YXIgaD1BcnJheShhcmd1bWVudHMubGVuZ3RoLTIpLGs9MjtrPGFyZ3VtZW50cy5sZW5ndGg7aysrKWhbay0yXT1hcmd1bWVudHNba107cmV0dXJuIGIucHJvdG90eXBlW2VdLmFwcGx5KGQsaCl9fTsKSWE9ZnVuY3Rpb24oYSwuLi5iKXtiPWIuZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiYiKTtpZighYilyZXR1cm4gYTt2YXIgYz1hLm1hdGNoKC9bPyZdYWR1cmw9Lyk7cmV0dXJuIGM/YS5zbGljZSgwLGMuaW5kZXgrMSkrYisiJiIrYS5zbGljZShjLmluZGV4KzEpOmErKGEuaW5kZXhPZigiPyIpPDA/Ij8iOiImIikrYn07SmE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYj8iJiIrYSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGIpOiIifTsKS2E9ZnVuY3Rpb24oYSl7YT1hLkI7aWYoIWEpcmV0dXJuIiI7dmFyIGI9SmEoInVhcCIsYS5wbGF0Zm9ybSkrSmEoInVhcHYiLGEucGxhdGZvcm1WZXJzaW9uKStKYSgidWFmdiIsYS51YUZ1bGxWZXJzaW9uKStKYSgidWFhIixhLmFyY2hpdGVjdHVyZSkrSmEoInVhbSIsYS5tb2RlbCkrSmEoInVhYiIsYS5iaXRuZXNzKTthLmZ1bGxWZXJzaW9uTGlzdCYmKGIrPSImdWFmdmw9IitlbmNvZGVVUklDb21wb25lbnQoYS5mdWxsVmVyc2lvbkxpc3QubWFwKGM9PmVuY29kZVVSSUNvbXBvbmVudChjLmJyYW5kKSsiOyIrZW5jb2RlVVJJQ29tcG9uZW50KGMudmVyc2lvbikpLmpvaW4oInwiKSkpO2Eud293NjQhPW51bGwmJihiKz0iJnVhdz0iK051bWJlcihhLndvdzY0KSk7cmV0dXJuIGIuc2xpY2UoMSl9OwpfLkxhPWZ1bmN0aW9uKGEsYil7aWYoRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UpRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcyxfLkxhKTtlbHNle2xldCBjPUVycm9yKCkuc3RhY2s7YyYmKHRoaXMuc3RhY2s9Yyl9YSYmKHRoaXMubWVzc2FnZT1TdHJpbmcoYSkpO2IhPT12b2lkIDAmJih0aGlzLmNhdXNlPWIpfTtfLk1hPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5sZW5ndGgtYi5sZW5ndGg7cmV0dXJuIGM+PTAmJmEuaW5kZXhPZihiLGMpPT1jfTtQYT1mdW5jdGlvbigpe3ZhciBhPW51bGw7aWYoIU5hKXJldHVybiBhO3RyeXtsZXQgYj1jPT5jO2E9TmEuY3JlYXRlUG9saWN5KCJnb29nI2h0bWwiLHtjcmVhdGVIVE1MOmIsY3JlYXRlU2NyaXB0OmIsY3JlYXRlU2NyaXB0VVJMOmJ9KX1jYXRjaChiKXt9cmV0dXJuIGF9O1JhPWZ1bmN0aW9uKCl7UWE9PT12b2lkIDAmJihRYT1QYSgpKTtyZXR1cm4gUWF9OwpfLlRhPWZ1bmN0aW9uKGEpe3ZhciBiPVJhKCk7YT1iP2IuY3JlYXRlU2NyaXB0VVJMKGEpOmE7cmV0dXJuIG5ldyBfLlNhKGEpfTtfLlVhPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBfLlNhKXJldHVybiBhLmo7dGhyb3cgRXJyb3IoImgiKTt9O1ZhPWZ1bmN0aW9uKGEpe3JldHVybiBhLnRvU3RyaW5nKCkuaW5kZXhPZigiYCIpPT09LTF9O18uWGE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBfLldhfTtfLllhPWZ1bmN0aW9uKGEpe2lmKF8uWGEoYSkpcmV0dXJuIGEuajt0aHJvdyBFcnJvcigiaCIpO307JGE9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBaYShiPT5iLnN1YnN0cigwLGEubGVuZ3RoKzEpLnRvTG93ZXJDYXNlKCk9PT1hKyI6Iil9O18uYmI9ZnVuY3Rpb24oYSxiPV8uYWIpe2lmKF8uWGEoYSkpcmV0dXJuIGE7Zm9yKGxldCBjPTA7YzxiLmxlbmd0aDsrK2Mpe2xldCBkPWJbY107aWYoZCBpbnN0YW5jZW9mIFphJiZkLmZiKGEpKXJldHVybiBuZXcgXy5XYShhKX19OwpfLmRiPWZ1bmN0aW9uKGEpe2EgaW5zdGFuY2VvZiBfLldhP2E9Xy5ZYShhKTphPWNiLnRlc3QoYSk/YTp2b2lkIDA7cmV0dXJuIGF9O18uZWI9ZnVuY3Rpb24oYSxiPWB1bmV4cGVjdGVkIHZhbHVlICR7YX0hYCl7dGhyb3cgRXJyb3IoYik7fTtfLmdiPWZ1bmN0aW9uKGEpe3ZhciBiPVJhKCk7YT1iP2IuY3JlYXRlSFRNTChhKTphO3JldHVybiBuZXcgXy5mYihhKX07Xy5pYj1mdW5jdGlvbihhKXtyZXR1cm4gaGIoInNjcmlwdCIsYSl9O2hiPWZ1bmN0aW9uKGEsYj1kb2N1bWVudCl7YT1iLnF1ZXJ5U2VsZWN0b3I/LihgJHthfVtub25jZV1gKTtyZXR1cm4gYT09bnVsbD8iIjphLm5vbmNlfHxhLmdldEF0dHJpYnV0ZSgibm9uY2UiKXx8IiJ9O18ua2I9ZnVuY3Rpb24oYSl7dmFyIGI9UmEoKTthPWI/Yi5jcmVhdGVTY3JpcHQoYSk6YTtyZXR1cm4gbmV3IF8uamIoYSl9OwpfLmxiPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBfLmpiKXJldHVybiBhLmo7dGhyb3cgRXJyb3IoImgiKTt9O21iPWZ1bmN0aW9uKGEpe3ZhciBiPV8uaWIoYS5vd25lckRvY3VtZW50KTtiJiZhLnNldEF0dHJpYnV0ZSgibm9uY2UiLGIpfTtfLm5iPWZ1bmN0aW9uKGEsYil7YS50ZXh0Q29udGVudD1fLmxiKGIpO21iKGEpfTtfLm9iPWZ1bmN0aW9uKGEsYil7YS5zcmM9Xy5VYShiKTttYihhKX07Xy5xYj1mdW5jdGlvbihhLGIsYyl7aWYoYiBpbnN0YW5jZW9mIF8uU2EpYS5ocmVmPV8uVWEoYikudG9TdHJpbmcoKSxhLnJlbD1jO2Vsc2V7aWYocGIuaW5kZXhPZihjKT09PS0xKXRocm93IEVycm9yKCJqYCIrYyk7Yj1fLmRiKGIpO2IhPT12b2lkIDAmJihhLmhyZWY9YixhLnJlbD1jKX19O18uc2I9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmluZGV4T2YuY2FsbChhLGIsdm9pZCAwKX07Cl8udGI9ZnVuY3Rpb24oYSxiKXtBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKGEsYix2b2lkIDApfTtfLnViPWZ1bmN0aW9uKGEsYil7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5zb21lLmNhbGwoYSxiLHZvaWQgMCl9O18udmI9ZnVuY3Rpb24oYSxiKXthOntsZXQgYz1hLmxlbmd0aCxkPXR5cGVvZiBhPT09InN0cmluZyI/YS5zcGxpdCgiIik6YTtmb3IobGV0IGU9MDtlPGM7ZSsrKWlmKGUgaW4gZCYmYi5jYWxsKHZvaWQgMCxkW2VdLGUsYSkpe2I9ZTticmVhayBhfWI9LTF9cmV0dXJuIGI8MD9udWxsOnR5cGVvZiBhPT09InN0cmluZyI/YS5jaGFyQXQoYik6YVtiXX07d2I9ZnVuY3Rpb24oYSxiKXtfLnNiKGEsYik+PTB8fGEucHVzaChiKX07Xy54Yj1mdW5jdGlvbihhLGIpe2I9Xy5zYihhLGIpO3ZhciBjOyhjPWI+PTApJiZBcnJheS5wcm90b3R5cGUuc3BsaWNlLmNhbGwoYSxiLDEpO3JldHVybiBjfTsKXy55Yj1mdW5jdGlvbihhKXt2YXIgYj1hLmxlbmd0aDtpZihiPjApe2xldCBjPUFycmF5KGIpO2ZvcihsZXQgZD0wO2Q8YjtkKyspY1tkXT1hW2RdO3JldHVybiBjfXJldHVybltdfTt6Yj1mdW5jdGlvbihhLGIpe2ZvcihsZXQgYz0xO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspe2xldCBkPWFyZ3VtZW50c1tjXTtpZihfLnlhKGQpKXtsZXQgZT1hLmxlbmd0aHx8MCxmPWQubGVuZ3RofHwwO2EubGVuZ3RoPWUrZjtmb3IobGV0IGg9MDtoPGY7aCsrKWFbZStoXT1kW2hdfWVsc2UgYS5wdXNoKGQpfX07QWI9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTAsYz0wLGQ9bmV3IFNldDtjPGEubGVuZ3RoOyl7bGV0IGU9YVtjKytdO2QuaGFzKGUpfHwoZC5hZGQoZSksYVtiKytdPWUpfWEubGVuZ3RoPWJ9OwpfLkJiPWZ1bmN0aW9uKGEsYil7YS5fX2Nsb3N1cmVfX2Vycm9yX19jb250ZXh0X185ODQzODJ8fChhLl9fY2xvc3VyZV9fZXJyb3JfX2NvbnRleHRfXzk4NDM4Mj17fSk7YS5fX2Nsb3N1cmVfX2Vycm9yX19jb250ZXh0X185ODQzODIuc2V2ZXJpdHk9Yn07CkViPWZ1bmN0aW9uKGEpe3ZhciBiPV8uc2EoIndpbmRvdy5sb2NhdGlvbi5ocmVmIik7YT09bnVsbCYmKGE9J1Vua25vd24gRXJyb3Igb2YgdHlwZSAibnVsbC91bmRlZmluZWQiJyk7aWYodHlwZW9mIGE9PT0ic3RyaW5nIilyZXR1cm57bWVzc2FnZTphLG5hbWU6IlVua25vd24gZXJyb3IiLGxpbmVOdW1iZXI6Ik5vdCBhdmFpbGFibGUiLGZpbGVOYW1lOmIsc3RhY2s6Ik5vdCBhdmFpbGFibGUifTt2YXIgYz0hMTt0cnl7dmFyIGQ9YS5saW5lTnVtYmVyfHxhLmxpbmV8fCJOb3QgYXZhaWxhYmxlIn1jYXRjaChmKXtkPSJOb3QgYXZhaWxhYmxlIixjPSEwfXRyeXt2YXIgZT1hLmZpbGVOYW1lfHxhLmZpbGVuYW1lfHxhLnNvdXJjZVVSTHx8Xy51LiRnb29nRGVidWdGbmFtZXx8Yn1jYXRjaChmKXtlPSJOb3QgYXZhaWxhYmxlIixjPSEwfWI9Q2IoYSk7aWYoISghYyYmYS5saW5lTnVtYmVyJiZhLmZpbGVOYW1lJiZhLnN0YWNrJiZhLm1lc3NhZ2UmJmEubmFtZSkpe2M9YS5tZXNzYWdlOwppZihjPT1udWxsKXtpZihhLmNvbnN0cnVjdG9yJiZhLmNvbnN0cnVjdG9yIGluc3RhbmNlb2YgRnVuY3Rpb24pe2lmKGEuY29uc3RydWN0b3IubmFtZSljPWEuY29uc3RydWN0b3IubmFtZTtlbHNlIGlmKGM9YS5jb25zdHJ1Y3RvcixEYltjXSljPURiW2NdO2Vsc2V7Yz1TdHJpbmcoYyk7aWYoIURiW2NdKXtsZXQgZj0vZnVuY3Rpb25ccysoW15cKF0rKS9tLmV4ZWMoYyk7RGJbY109Zj9mWzFdOiJbQW5vbnltb3VzXSJ9Yz1EYltjXX1jPSdVbmtub3duIEVycm9yIG9mIHR5cGUgIicrYysnIid9ZWxzZSBjPSJVbmtub3duIEVycm9yIG9mIHVua25vd24gdHlwZSI7dHlwZW9mIGEudG9TdHJpbmc9PT0iZnVuY3Rpb24iJiZPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nIT09YS50b1N0cmluZyYmKGMrPSI6ICIrYS50b1N0cmluZygpKX1yZXR1cm57bWVzc2FnZTpjLG5hbWU6YS5uYW1lfHwiVW5rbm93bkVycm9yIixsaW5lTnVtYmVyOmQsZmlsZU5hbWU6ZSxzdGFjazpifHwiTm90IGF2YWlsYWJsZSJ9fXJldHVybnttZXNzYWdlOmEubWVzc2FnZSwKbmFtZTphLm5hbWUsbGluZU51bWJlcjphLmxpbmVOdW1iZXIsZmlsZU5hbWU6YS5maWxlTmFtZSxzdGFjazpifX07CkNiPWZ1bmN0aW9uKGEsYil7Ynx8KGI9e30pO2JbRmIoYSldPSEwO3ZhciBjPWEuc3RhY2t8fCIiLGQ9YS5jYXVzZTtkJiYhYltGYihkKV0mJihjKz0iXG5DYXVzZWQgYnk6ICIsZC5zdGFjayYmZC5zdGFjay5pbmRleE9mKGQudG9TdHJpbmcoKSk9PTB8fChjKz10eXBlb2YgZD09PSJzdHJpbmciP2Q6ZC5tZXNzYWdlKyJcbiIpLGMrPUNiKGQsYikpO2E9YS5lcnJvcnM7aWYoQXJyYXkuaXNBcnJheShhKSl7ZD0xO2xldCBlO2ZvcihlPTA7ZTxhLmxlbmd0aCYmIShkPjQpO2UrKyliW0ZiKGFbZV0pXXx8KGMrPSJcbklubmVyIGVycm9yICIrZCsrICsiOiAiLGFbZV0uc3RhY2smJmFbZV0uc3RhY2suaW5kZXhPZihhW2VdLnRvU3RyaW5nKCkpPT0wfHwoYys9dHlwZW9mIGFbZV09PT0ic3RyaW5nIj9hW2VdOmFbZV0ubWVzc2FnZSsiXG4iKSxjKz1DYihhW2VdLGIpKTtlPGEubGVuZ3RoJiYoYys9IlxuLi4uICIrKGEubGVuZ3RoLWUpKyIgbW9yZSBpbm5lciBlcnJvcnMiKX1yZXR1cm4gY307CkZiPWZ1bmN0aW9uKGEpe3ZhciBiPSIiO3R5cGVvZiBhLnRvU3RyaW5nPT09ImZ1bmN0aW9uIiYmKGI9IiIrYSk7cmV0dXJuIGIrYS5zdGFja307R2I9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uVGEoYSl9O18uSGI9ZnVuY3Rpb24oYSl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChhLnJlcGxhY2UoL1wrL2csIiAiKSl9O18uSWI9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsaCl7dmFyIGs9IiI7YSYmKGsrPWErIjoiKTtjJiYoays9Ii8vIixiJiYoays9YisiQCIpLGsrPWMsZCYmKGsrPSI6IitkKSk7ZSYmKGsrPWUpO2YmJihrKz0iPyIrZik7aCYmKGsrPSIjIitoKTtyZXR1cm4ga307Xy5NYj1mdW5jdGlvbihhKXtyZXR1cm4gYS5tYXRjaChLYil9O05iPWZ1bmN0aW9uKGEpe3JldHVybiBhP2RlY29kZVVSSShhKTphfTsKXy5PYj1mdW5jdGlvbihhKXthPV8uTWIoYSlbMV18fG51bGw7IWEmJl8udS5zZWxmJiZfLnUuc2VsZi5sb2NhdGlvbiYmKGE9Xy51LnNlbGYubG9jYXRpb24ucHJvdG9jb2wuc2xpY2UoMCwtMSkpO3JldHVybiBhP2EudG9Mb3dlckNhc2UoKToiIn07Xy5QYj1mdW5jdGlvbihhKXtyZXR1cm4gTmIoXy5NYihhKVszXXx8bnVsbCl9O18uUWI9ZnVuY3Rpb24oYSl7cmV0dXJuIE5iKF8uTWIoYSlbNV18fG51bGwpfTtfLlJiPWZ1bmN0aW9uKGEsYil7aWYoYSl7YT1hLnNwbGl0KCImIik7Zm9yKGxldCBjPTA7YzxhLmxlbmd0aDtjKyspe2xldCBkPWFbY10uaW5kZXhPZigiPSIpLGUsZj1udWxsO2Q+PTA/KGU9YVtjXS5zdWJzdHJpbmcoMCxkKSxmPWFbY10uc3Vic3RyaW5nKGQrMSkpOmU9YVtjXTtiKGUsZj9fLkhiKGYpOiIiKX19fTsKXy5TYj1mdW5jdGlvbihhLGIpe2lmKCFiKXJldHVybiBhO3ZhciBjPWEuaW5kZXhPZigiIyIpO2M8MCYmKGM9YS5sZW5ndGgpO3ZhciBkPWEuaW5kZXhPZigiPyIpO2lmKGQ8MHx8ZD5jKXtkPWM7dmFyIGU9IiJ9ZWxzZSBlPWEuc3Vic3RyaW5nKGQrMSxjKTthPVthLnNsaWNlKDAsZCksZSxhLnNsaWNlKGMpXTtjPWFbMV07YVsxXT1iP2M/YysiJiIrYjpiOmM7cmV0dXJuIGFbMF0rKGFbMV0/Ij8iK2FbMV06IiIpK2FbMl19O1RiPWZ1bmN0aW9uKGEsYixjKXtpZihBcnJheS5pc0FycmF5KGIpKWZvcihsZXQgZD0wO2Q8Yi5sZW5ndGg7ZCsrKVRiKGEsU3RyaW5nKGJbZF0pLGMpO2Vsc2UgYiE9bnVsbCYmYy5wdXNoKGErKGI9PT0iIj8iIjoiPSIrZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhiKSkpKX07Xy5VYj1mdW5jdGlvbihhKXt2YXIgYj1bXTtmb3IobGV0IGMgaW4gYSlUYihjLGFbY10sYik7cmV0dXJuIGIuam9pbigiJiIpfTsKXy5XYj1mdW5jdGlvbihhLGIpe2I9Xy5VYihiKTtyZXR1cm4gXy5TYihhLGIpfTtfLlhiPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT1jLmxlbmd0aDsoYj1hLmluZGV4T2YoYyxiKSk+PTAmJmI8ZDspe3ZhciBmPWEuY2hhckNvZGVBdChiLTEpO2lmKGY9PTM4fHxmPT02MylpZihmPWEuY2hhckNvZGVBdChiK2UpLCFmfHxmPT02MXx8Zj09Mzh8fGY9PTM1KXJldHVybiBiO2IrPWUrMX1yZXR1cm4tMX07Xy5aYj1mdW5jdGlvbihhLGIpe3ZhciBjPWEuc2VhcmNoKF8uWWIpLGQ9Xy5YYihhLDAsYixjKTtpZihkPDApcmV0dXJuIG51bGw7dmFyIGU9YS5pbmRleE9mKCImIixkKTtpZihlPDB8fGU+YyllPWM7ZCs9Yi5sZW5ndGgrMTtyZXR1cm4gXy5IYihhLnNsaWNlKGQsZSE9PS0xP2U6MCkpfTtfLiRiPWZ1bmN0aW9uKGEpe18udS5zZXRUaW1lb3V0KCgpPT57dGhyb3cgYTt9LDApfTsKXy5hYz1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPTA7Zm9yKGxldCBkPTA7ZDxhLmxlbmd0aDtkKyspe2xldCBlPWEuY2hhckNvZGVBdChkKTtlPDEyOD9iW2MrK109ZTooZTwyMDQ4P2JbYysrXT1lPj42fDE5MjooKGUmNjQ1MTIpPT01NTI5NiYmZCsxPGEubGVuZ3RoJiYoYS5jaGFyQ29kZUF0KGQrMSkmNjQ1MTIpPT01NjMyMD8oZT02NTUzNisoKGUmMTAyMyk8PDEwKSsoYS5jaGFyQ29kZUF0KCsrZCkmMTAyMyksYltjKytdPWU+PjE4fDI0MCxiW2MrK109ZT4+MTImNjN8MTI4KTpiW2MrK109ZT4+MTJ8MjI0LGJbYysrXT1lPj42JjYzfDEyOCksYltjKytdPWUmNjN8MTI4KX1yZXR1cm4gYn07Xy5iYz1mdW5jdGlvbigpe3ZhciBhPV8udS5uYXZpZ2F0b3I7cmV0dXJuIGEmJihhPWEudXNlckFnZW50KT9hOiIifTsKZmM9ZnVuY3Rpb24oYSl7aWYoIWRjfHwhZWMpcmV0dXJuITE7Zm9yKGxldCBiPTA7YjxlYy5icmFuZHMubGVuZ3RoO2IrKyl7bGV0IHticmFuZDpjfT1lYy5icmFuZHNbYl07aWYoYyYmYy5pbmRleE9mKGEpIT0tMSlyZXR1cm4hMH1yZXR1cm4hMX07aGM9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uYmMoKS5pbmRleE9mKGEpIT0tMX07aWM9ZnVuY3Rpb24oKXtyZXR1cm4gZGM/ISFlYyYmZWMuYnJhbmRzLmxlbmd0aD4wOiExfTtqYz1mdW5jdGlvbigpe3JldHVybiBpYygpPyExOmhjKCJPcGVyYSIpfTtrYz1mdW5jdGlvbigpe3JldHVybiBoYygiRmlyZWZveCIpfHxoYygiRnhpT1MiKX07bWM9ZnVuY3Rpb24oKXtyZXR1cm4gaWMoKT9mYygiQ2hyb21pdW0iKTooaGMoIkNocm9tZSIpfHxoYygiQ3JpT1MiKSkmJiEoaWMoKT8wOmhjKCJFZGdlIikpfHxoYygiU2lsayIpfTtuYz1mdW5jdGlvbigpe3JldHVybiBkYz8hIWVjJiYhIWVjLnBsYXRmb3JtOiExfTsKb2M9ZnVuY3Rpb24oKXtyZXR1cm4gaGMoImlQaG9uZSIpJiYhaGMoImlQb2QiKSYmIWhjKCJpUGFkIil9O18ucGM9ZnVuY3Rpb24oYSl7Xy5wY1siICJdKGEpO3JldHVybiBhfTtfLnNjPWZ1bmN0aW9uKGEsYil7Yj09PXZvaWQgMCYmKGI9MCk7cWMoKTtiPXJjW2JdO2Zvcih2YXIgYz1BcnJheShNYXRoLmZsb29yKGEubGVuZ3RoLzMpKSxkPWJbNjRdfHwiIixlPTAsZj0wO2U8YS5sZW5ndGgtMjtlKz0zKXt2YXIgaD1hW2VdLGs9YVtlKzFdLGw9YVtlKzJdLG09YltoPj4yXTtoPWJbKGgmMyk8PDR8az4+NF07az1iWyhrJjE1KTw8MnxsPj42XTtsPWJbbCY2M107Y1tmKytdPW0raCtrK2x9bT0wO2w9ZDtzd2l0Y2goYS5sZW5ndGgtZSl7Y2FzZSAyOm09YVtlKzFdLGw9YlsobSYxNSk8PDJdfHxkO2Nhc2UgMTphPWFbZV0sY1tmXT1iW2E+PjJdK2JbKGEmMyk8PDR8bT4+NF0rbCtkfXJldHVybiBjLmpvaW4oIiIpfTsKXy51Yz1mdW5jdGlvbihhKXt2YXIgYj1hLmxlbmd0aCxjPWIqMy80O2MlMz9jPU1hdGguZmxvb3IoYyk6Ij0uIi5pbmRleE9mKGFbYi0xXSkhPS0xJiYoYz0iPS4iLmluZGV4T2YoYVtiLTJdKSE9LTE/Yy0yOmMtMSk7dmFyIGQ9bmV3IFVpbnQ4QXJyYXkoYyksZT0wO3RjKGEsZnVuY3Rpb24oZil7ZFtlKytdPWZ9KTtyZXR1cm4gZSE9PWM/ZC5zdWJhcnJheSgwLGUpOmR9O3RjPWZ1bmN0aW9uKGEsYil7ZnVuY3Rpb24gYyhlKXtmb3IoO2Q8YS5sZW5ndGg7KXtsZXQgZj1hLmNoYXJBdChkKyspLGg9dmNbZl07aWYoaCE9bnVsbClyZXR1cm4gaDtpZighL15bXHNceGEwXSokLy50ZXN0KGYpKXRocm93IEVycm9yKCJtYCIrZik7fXJldHVybiBlfXFjKCk7Zm9yKHZhciBkPTA7Oyl7bGV0IGU9YygtMSksZj1jKDApLGg9Yyg2NCksaz1jKDY0KTtpZihrPT09NjQmJmU9PT0tMSlicmVhaztiKGU8PDJ8Zj4+NCk7aCE9NjQmJihiKGY8PDQmMjQwfGg+PjIpLGshPTY0JiZiKGg8PDYmMTkyfGspKX19OwpxYz1mdW5jdGlvbigpe2lmKCF2Yyl7dmM9e307dmFyIGE9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ii5zcGxpdCgiIiksYj1bIisvPSIsIisvIiwiLV89IiwiLV8uIiwiLV8iXTtmb3IobGV0IGM9MDtjPDU7YysrKXtsZXQgZD1hLmNvbmNhdChiW2NdLnNwbGl0KCIiKSk7cmNbY109ZDtmb3IobGV0IGU9MDtlPGQubGVuZ3RoO2UrKyl7bGV0IGY9ZFtlXTt2Y1tmXT09PXZvaWQgMCYmKHZjW2ZdPWUpfX19fTtfLnhjPWZ1bmN0aW9uKGEsYil7aWYoYSE9bnVsbCl7dmFyIGM9d2M/Pyh3Yz17fSk7dmFyIGQ9Y1thXXx8MDtkPj1ifHwoY1thXT1kKzEsYT1FcnJvcigpLF8uQmIoYSwiaW5jaWRlbnQiKSxfLiRiKGEpKX19O18ueWM9ZnVuY3Rpb24oYSxiPSExKXtyZXR1cm4gYiYmU3ltYm9sLmZvciYmYT9TeW1ib2wuZm9yKGEpOmEhPW51bGw/U3ltYm9sKGEpOlN5bWJvbCgpfTsKXy5CYz1mdW5jdGlvbihhLGIpe3JldHVybiBiPT09dm9pZCAwP2EuaiE9PV8uemMmJiEhKDImKGEuRGFbXy5BY118MCkpOiEhKDImYikmJmEuaiE9PV8uemN9O18uQ2M9ZnVuY3Rpb24oYSl7YS51Sj0hMDtyZXR1cm4gYX07Xy5GYz1mdW5jdGlvbihhKXtpZihEYyhhKSl7aWYoIS9eXHMqKD86LT9bMS05XVxkKnwwKT9ccyokLy50ZXN0KGEpKXRocm93IEVycm9yKFN0cmluZyhhKSk7fWVsc2UgaWYoRWMoYSkmJiFOdW1iZXIuaXNTYWZlSW50ZWdlcihhKSl0aHJvdyBFcnJvcihTdHJpbmcoYSkpO3JldHVybiBCaWdJbnQoYSl9O0djPWZ1bmN0aW9uKGEpe3JldHVybiBhfTtJYz1mdW5jdGlvbihhLGIpe2I8MTAwfHxfLnhjKEhjLDEpfTsKTGM9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9ZCE9PXZvaWQgMDtkPSEhZDt2YXIgZj1fLkdhKF8uSmMpLGg7IWUmJmYmJihoPWFbZl0pJiZoLmN3KEljKTtmPVtdO3ZhciBrPWEubGVuZ3RoO2g9NDI5NDk2NzI5NTt2YXIgbD0hMSxtPSEhKGImNjQpLG49bT9iJjEyOD8wOi0xOnZvaWQgMDtpZighKGImMSkpe3ZhciBwPWsmJmFbay0xXTtwIT1udWxsJiZ0eXBlb2YgcD09PSJvYmplY3QiJiZwLmNvbnN0cnVjdG9yPT09T2JqZWN0PyhrLS0saD1rKTpwPXZvaWQgMDshbXx8YiYxMjh8fGV8fChsPSEwLGg9KEtjPz9HYykoaC1uLG4sYSxwLHZvaWQgMCkrbil9Yj12b2lkIDA7Zm9yKGU9MDtlPGs7ZSsrKXtsZXQgcj1hW2VdO2lmKHIhPW51bGwmJihyPWMocixkKSkhPW51bGwpaWYobSYmZT49aCl7bGV0IHQ9ZS1uOyhiPz8oYj17fSkpW3RdPXJ9ZWxzZSBmW2VdPXJ9aWYocClmb3IobGV0IHIgaW4gcCl7YT1wW3JdO2lmKGE9PW51bGx8fChhPWMoYSxkKSk9PW51bGwpY29udGludWU7az0rcjsKbGV0IHQ7bSYmIU51bWJlci5pc05hTihrKSYmKHQ9aytuKTxoP2ZbdF09YTooYj8/KGI9e30pKVtyXT1hfWImJihsP2YucHVzaChiKTpmW2hdPWIpO3JldHVybiBmfTtOYz1mdW5jdGlvbihhKXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgIm51bWJlciI6cmV0dXJuIE51bWJlci5pc0Zpbml0ZShhKT9hOiIiK2E7Y2FzZSAiYmlnaW50IjpyZXR1cm4oMCxfLk1jKShhKT9OdW1iZXIoYSk6IiIrYTtjYXNlICJib29sZWFuIjpyZXR1cm4gYT8xOjA7Y2FzZSAib2JqZWN0IjppZihBcnJheS5pc0FycmF5KGEpKXtsZXQgYj1hW18uQWNdfDA7cmV0dXJuIGEubGVuZ3RoPT09MCYmYiYxP3ZvaWQgMDpMYyhhLGIsTmMpfWlmKGEhPW51bGwmJmFbXy5PY109PT1fLlBjKXJldHVybiBRYyhhKTtpZigiZnVuY3Rpb24iPT10eXBlb2YgXy5SYyYmYSBpbnN0YW5jZW9mIF8uUmMpcmV0dXJuIGEubygpO3JldHVybn1yZXR1cm4gYX07ClVjPWZ1bmN0aW9uKGEsYil7aWYoYil7S2M9Yj09bnVsbHx8Yj09PUdjfHxiW1NjXSE9PVRjP0djOmI7dHJ5e3JldHVybiBRYyhhKX1maW5hbGx5e0tjPXZvaWQgMH19cmV0dXJuIFFjKGEpfTtRYz1mdW5jdGlvbihhKXthPWEuRGE7cmV0dXJuIExjKGEsYVtfLkFjXXwwLE5jKX07Cl8uWGM9ZnVuY3Rpb24oYSxiLGMsZD0wKXtpZihhPT1udWxsKXt2YXIgZT0zMjtjPyhhPVtjXSxlfD0xMjgpOmE9W107YiYmKGU9ZSYtMTY3NjA4MzN8KGImMTAyMyk8PDE0KX1lbHNle2lmKCFBcnJheS5pc0FycmF5KGEpKXRocm93IEVycm9yKCJzIik7ZT1hW18uQWNdfDA7aWYoVmMmJjEmZSl0aHJvdyBFcnJvcigidCIpOzIwNDgmZSYmISgyJmUpJiZXYygpO2lmKGUmMjU2KXRocm93IEVycm9yKCJ1Iik7aWYoZSY2NClyZXR1cm4oZXxkKSE9PWUmJihhW18uQWNdPWV8ZCksYTtpZihjJiYoZXw9MTI4LGMhPT1hWzBdKSl0aHJvdyBFcnJvcigidiIpO2E6e2M9YTtlfD02NDt2YXIgZj1jLmxlbmd0aDtpZihmKXt2YXIgaD1mLTE7bGV0IGw9Y1toXTtpZihsIT1udWxsJiZ0eXBlb2YgbD09PSJvYmplY3QiJiZsLmNvbnN0cnVjdG9yPT09T2JqZWN0KXtiPWUmMTI4PzA6LTE7aC09YjtpZihoPj0xMDI0KXRocm93IEVycm9yKCJ4Iik7Zm9yKHZhciBrIGluIGwpaWYoZj0rayxmPGgpY1tmKwpiXT1sW2tdLGRlbGV0ZSBsW2tdO2Vsc2UgYnJlYWs7ZT1lJi0xNjc2MDgzM3woaCYxMDIzKTw8MTQ7YnJlYWsgYX19aWYoYil7az1NYXRoLm1heChiLGYtKGUmMTI4PzA6LTEpKTtpZihrPjEwMjQpdGhyb3cgRXJyb3IoInkiKTtlPWUmLTE2NzYwODMzfChrJjEwMjMpPDwxNH19fWFbXy5BY109ZXw2NHxkO3JldHVybiBhfTtXYz1mdW5jdGlvbigpe2lmKFZjKXRocm93IEVycm9yKCJ3Iik7Xy54YyhZYyw1KX07CmNkPWZ1bmN0aW9uKGEsYil7aWYodHlwZW9mIGEhPT0ib2JqZWN0IilyZXR1cm4gYTtpZihBcnJheS5pc0FycmF5KGEpKXt2YXIgYz1hW18uQWNdfDA7YS5sZW5ndGg9PT0wJiZjJjE/YT12b2lkIDA6YyYyfHwoIWJ8fDQwOTYmY3x8MTYmYz9hPV8uWmMoYSxjLCExLGImJiEoYyYxNikpOihhW18uQWNdfD0zNCxjJjQmJk9iamVjdC5mcmVlemUoYSkpKTtyZXR1cm4gYX1pZihhIT1udWxsJiZhW18uT2NdPT09Xy5QYylyZXR1cm4gYj1hLkRhLGM9YltfLkFjXXwwLF8uQmMoYSxjKT9hOl8uJGMoYSxiLGMpP18uYmQoYSxiKTpfLlpjKGIsYyk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIF8uUmMmJmEgaW5zdGFuY2VvZiBfLlJjKXJldHVybiBhfTtfLmJkPWZ1bmN0aW9uKGEsYixjKXthPW5ldyBhLmNvbnN0cnVjdG9yKGIpO2MmJihhLmo9Xy56Yyk7YS5vPV8uemM7cmV0dXJuIGF9OwpfLlpjPWZ1bmN0aW9uKGEsYixjLGQpe2Q/PyhkPSEhKDM0JmIpKTthPUxjKGEsYixjZCxkKTtkPTMyO2MmJihkfD0yKTtiPWImMTY3NjkyMTd8ZDthW18uQWNdPWI7cmV0dXJuIGF9O18uJGM9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBjJjI/ITA6YyYzMiYmIShjJjQwOTYpPyhiW18uQWNdPWN8MixhLmo9Xy56YywhMCk6ITF9O18uZWQ9ZnVuY3Rpb24oYSxiLGMsZCxlKXtiPV8uZGQoYS5EYSxiLGMsZSk7aWYoYiE9PW51bGx8fGQmJmEubyE9PV8uemMpcmV0dXJuIGJ9OwpfLmRkPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGI9PT0tMSlyZXR1cm4gbnVsbDt2YXIgZT1iKyhjPzA6LTEpLGY9YS5sZW5ndGgtMTtpZighKGY8MSsoYz8wOi0xKSkpe2lmKGU+PWYpe3ZhciBoPWFbZl07aWYoaCE9bnVsbCYmdHlwZW9mIGg9PT0ib2JqZWN0IiYmaC5jb25zdHJ1Y3Rvcj09PU9iamVjdCl7Yz1oW2JdO3ZhciBrPSEwfWVsc2UgaWYoZT09PWYpYz1oO2Vsc2UgcmV0dXJufWVsc2UgYz1hW2VdO2lmKGQmJmMhPW51bGwpe2Q9ZChjKTtpZihkPT1udWxsKXJldHVybiBkO2lmKCFPYmplY3QuaXMoZCxjKSlyZXR1cm4gaz9oW2JdPWQ6YVtlXT1kLGR9cmV0dXJuIGN9fTtmZD1mdW5jdGlvbigpe3ZhciBhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhyb3cgRXJyb3IoKTt9fTtPYmplY3Quc2V0UHJvdG90eXBlT2YoYSxhLnByb3RvdHlwZSk7cmV0dXJuIGF9O18uZ2Q9ZnVuY3Rpb24oKXt9OwpoZD1mdW5jdGlvbihhKXt2YXIgYj0hMSxjO3JldHVybiBmdW5jdGlvbigpe2J8fChjPWEoKSxiPSEwKTtyZXR1cm4gY319O2pkPWZ1bmN0aW9uKGEpe3ZhciBiPWlkO2lmKGIpZm9yKGxldCBjIGluIGIpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIsYykmJmEoYltjXSxjLGIpfTtrZD1mdW5jdGlvbigpe3ZhciBhPVtdO2pkKGI9PnthLnB1c2goYil9KTtyZXR1cm4gYX07bWQ9ZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKSxiPXt9O18udGIobGQoKSxjPT57YS5zYW5kYm94JiZhLnNhbmRib3guc3VwcG9ydHMmJmEuc2FuZGJveC5zdXBwb3J0cyhjKSYmKGJbY109ITApfSk7cmV0dXJuIGJ9O18ubmQ9ZnVuY3Rpb24oYSxiKXt0aGlzLndpZHRoPWE7dGhpcy5oZWlnaHQ9Yn07b2Q9ZnVuY3Rpb24oYSxiKXtmb3IobGV0IGMgaW4gYSliLmNhbGwodm9pZCAwLGFbY10sYyxhKX07Cl8ucGQ9ZnVuY3Rpb24oYSl7Zm9yKGxldCBiIGluIGEpcmV0dXJuITE7cmV0dXJuITB9OwpfLnFkPWZ1bmN0aW9uKGEpe2lmKCFhfHx0eXBlb2YgYSE9PSJvYmplY3QiKXJldHVybiBhO2lmKHR5cGVvZiBhLmNsb25lPT09ImZ1bmN0aW9uIilyZXR1cm4gYS5jbG9uZSgpO2lmKHR5cGVvZiBNYXAhPT0idW5kZWZpbmVkIiYmYSBpbnN0YW5jZW9mIE1hcClyZXR1cm4gbmV3IE1hcChhKTtpZih0eXBlb2YgU2V0IT09InVuZGVmaW5lZCImJmEgaW5zdGFuY2VvZiBTZXQpcmV0dXJuIG5ldyBTZXQoYSk7aWYoYSBpbnN0YW5jZW9mIERhdGUpcmV0dXJuIG5ldyBEYXRlKGEuZ2V0VGltZSgpKTt2YXIgYj1BcnJheS5pc0FycmF5KGEpP1tdOnR5cGVvZiBBcnJheUJ1ZmZlciE9PSJmdW5jdGlvbiJ8fHR5cGVvZiBBcnJheUJ1ZmZlci5pc1ZpZXchPT0iZnVuY3Rpb24ifHwhQXJyYXlCdWZmZXIuaXNWaWV3KGEpfHxhIGluc3RhbmNlb2YgRGF0YVZpZXc/e306bmV3IGEuY29uc3RydWN0b3IoYS5sZW5ndGgpO2ZvcihsZXQgYyBpbiBhKWJbY109Xy5xZChhW2NdKTtyZXR1cm4gYn07CnNkPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIGM9YXJndW1lbnRzW2VdO2ZvcihkIGluIGMpYVtkXT1jW2RdO2ZvcihsZXQgZj0wO2Y8cmQubGVuZ3RoO2YrKyl7dmFyIGQ9cmRbZl07T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGMsZCkmJihhW2RdPWNbZF0pfX19O18ueGQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGE/bmV3IHVkKF8udmQoYSkpOndkfHwod2Q9bmV3IHVkKX07Xy55ZD1mdW5jdGlvbihhKXthPWEuZG9jdW1lbnQ7YT1hLmNvbXBhdE1vZGU9PSJDU1MxQ29tcGF0Ij9hLmRvY3VtZW50RWxlbWVudDphLmJvZHk7cmV0dXJuIG5ldyBfLm5kKGEuY2xpZW50V2lkdGgsYS5jbGllbnRIZWlnaHQpfTtfLnpkPWZ1bmN0aW9uKGEpe3JldHVybiBhP2EuZGVmYXVsdFZpZXc6d2luZG93fTsKQWQ9ZnVuY3Rpb24oYSxiLGMpe2Z1bmN0aW9uIGQoZSl7ZSYmYi5hcHBlbmRDaGlsZCh0eXBlb2YgZT09PSJzdHJpbmciP2EuY3JlYXRlVGV4dE5vZGUoZSk6ZSl9Zm9yKGxldCBlPTE7ZTxjLmxlbmd0aDtlKyspe2xldCBmPWNbZV07IV8ueWEoZil8fF8uQWEoZikmJmYubm9kZVR5cGU+MD9kKGYpOl8udGIoZiYmdHlwZW9mIGYubGVuZ3RoPT0ibnVtYmVyIiYmdHlwZW9mIGYuaXRlbT09ImZ1bmN0aW9uIj9fLnliKGYpOmYsZCl9fTtfLkNkPWZ1bmN0aW9uKGEpe3JldHVybiBCZChkb2N1bWVudCxhKX07QmQ9ZnVuY3Rpb24oYSxiKXtiPVN0cmluZyhiKTthLmNvbnRlbnRUeXBlPT09ImFwcGxpY2F0aW9uL3hodG1sK3htbCImJihiPWIudG9Mb3dlckNhc2UoKSk7cmV0dXJuIGEuY3JlYXRlRWxlbWVudChiKX07Xy5EZD1mdW5jdGlvbihhKXtyZXR1cm4gYSYmYS5wYXJlbnROb2RlP2EucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChhKTpudWxsfTsKXy52ZD1mdW5jdGlvbihhKXtyZXR1cm4gYS5ub2RlVHlwZT09OT9hOmEub3duZXJEb2N1bWVudHx8YS5kb2N1bWVudH07Xy5GZD1mdW5jdGlvbihhKXtyZXR1cm4gYS50YWdOYW1lPT0iQSImJmEuaGFzQXR0cmlidXRlKCJocmVmIil8fGEudGFnTmFtZT09IklOUFVUInx8YS50YWdOYW1lPT0iVEVYVEFSRUEifHxhLnRhZ05hbWU9PSJTRUxFQ1QifHxhLnRhZ05hbWU9PSJCVVRUT04iPyFhLmRpc2FibGVkJiYoIWEuaGFzQXR0cmlidXRlKCJ0YWJpbmRleCIpfHxFZChhKSk6YS5oYXNBdHRyaWJ1dGUoInRhYmluZGV4IikmJkVkKGEpfTtFZD1mdW5jdGlvbihhKXthPWEudGFiSW5kZXg7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciImJmE+PTAmJmE8MzI3Njh9O3VkPWZ1bmN0aW9uKGEpe3RoaXMuaj1hfHxfLnUuZG9jdW1lbnR8fGRvY3VtZW50fTsKR2Q9ZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJuIiI7aWYoL15hYm91dDooPzpibGFua3xzcmNkb2MpJC8udGVzdChhKSlyZXR1cm4gd2luZG93Lm9yaWdpbnx8IiI7YS5pbmRleE9mKCJibG9iOiIpPT09MCYmKGE9YS5zdWJzdHJpbmcoNSkpO2E9YS5zcGxpdCgiIyIpWzBdLnNwbGl0KCI/IilbMF07YT1hLnRvTG93ZXJDYXNlKCk7YS5pbmRleE9mKCIvLyIpPT0wJiYoYT13aW5kb3cubG9jYXRpb24ucHJvdG9jb2wrYSk7L15bXHdcLV0qOlwvXC8vLnRlc3QoYSl8fChhPXdpbmRvdy5sb2NhdGlvbi5ocmVmKTt2YXIgYj1hLnN1YnN0cmluZyhhLmluZGV4T2YoIjovLyIpKzMpLGM9Yi5pbmRleE9mKCIvIik7YyE9LTEmJihiPWIuc3Vic3RyaW5nKDAsYykpO2M9YS5zdWJzdHJpbmcoMCxhLmluZGV4T2YoIjovLyIpKTtpZighYyl0aHJvdyBFcnJvcigiQmAiK2EpO2lmKGMhPT0iaHR0cCImJmMhPT0iaHR0cHMiJiZjIT09ImNocm9tZS1leHRlbnNpb24iJiZjIT09Im1vei1leHRlbnNpb24iJiYKYyE9PSJmaWxlIiYmYyE9PSJhbmRyb2lkLWFwcCImJmMhPT0iY2hyb21lLXNlYXJjaCImJmMhPT0iY2hyb21lLXVudHJ1c3RlZCImJmMhPT0iY2hyb21lIiYmYyE9PSJhcHAiJiZjIT09ImRldnRvb2xzIil0aHJvdyBFcnJvcigiQ2AiK2MpO2E9IiI7dmFyIGQ9Yi5pbmRleE9mKCI6Iik7aWYoZCE9LTEpe3ZhciBlPWIuc3Vic3RyaW5nKGQrMSk7Yj1iLnN1YnN0cmluZygwLGQpO2lmKGM9PT0iaHR0cCImJmUhPT0iODAifHxjPT09Imh0dHBzIiYmZSE9PSI0NDMiKWE9IjoiK2V9cmV0dXJuIGMrIjovLyIrYithfTsKSGQ9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7ZVswXT0xNzMyNTg0MTkzO2VbMV09NDAyMzIzMzQxNztlWzJdPTI1NjIzODMxMDI7ZVszXT0yNzE3MzM4Nzg7ZVs0XT0zMjg1Mzc3NTIwO249bT0wfWZ1bmN0aW9uIGIocCl7Zm9yKHZhciByPWgsdD0wO3Q8NjQ7dCs9NClyW3QvNF09cFt0XTw8MjR8cFt0KzFdPDwxNnxwW3QrMl08PDh8cFt0KzNdO2Zvcih0PTE2O3Q8ODA7dCsrKXA9clt0LTNdXnJbdC04XV5yW3QtMTRdXnJbdC0xNl0sclt0XT0ocDw8MXxwPj4+MzEpJjQyOTQ5NjcyOTU7cD1lWzBdO3ZhciB2PWVbMV0sej1lWzJdLEU9ZVszXSxBPWVbNF07Zm9yKHQ9MDt0PDgwO3QrKyl7aWYodDw0MClpZih0PDIwKXt2YXIgRj1FXnYmKHpeRSk7dmFyIEM9MTUxODUwMDI0OX1lbHNlIEY9dl56XkUsQz0xODU5Nzc1MzkzO2Vsc2UgdDw2MD8oRj12Jnp8RSYodnx6KSxDPTI0MDA5NTk3MDgpOihGPXZeel5FLEM9MzM5NTQ2OTc4Mik7Rj0oKHA8PDV8cD4+PjI3KSY0Mjk0OTY3Mjk1KStGKwpBK0Mrclt0XSY0Mjk0OTY3Mjk1O0E9RTtFPXo7ej0odjw8MzB8dj4+PjIpJjQyOTQ5NjcyOTU7dj1wO3A9Rn1lWzBdPWVbMF0rcCY0Mjk0OTY3Mjk1O2VbMV09ZVsxXSt2JjQyOTQ5NjcyOTU7ZVsyXT1lWzJdK3omNDI5NDk2NzI5NTtlWzNdPWVbM10rRSY0Mjk0OTY3Mjk1O2VbNF09ZVs0XStBJjQyOTQ5NjcyOTV9ZnVuY3Rpb24gYyhwLHIpe2lmKHR5cGVvZiBwPT09InN0cmluZyIpe3A9dW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KHApKTtmb3IodmFyIHQ9W10sdj0wLHo9cC5sZW5ndGg7djx6Oysrdil0LnB1c2gocC5jaGFyQ29kZUF0KHYpKTtwPXR9cnx8KHI9cC5sZW5ndGgpO3Q9MDtpZihtPT0wKWZvcig7dCs2NDxyOyliKHAuc2xpY2UodCx0KzY0KSksdCs9NjQsbis9NjQ7Zm9yKDt0PHI7KWlmKGZbbSsrXT1wW3QrK10sbisrLG09PTY0KWZvcihtPTAsYihmKTt0KzY0PHI7KWIocC5zbGljZSh0LHQrNjQpKSx0Kz02NCxuKz02NH1mdW5jdGlvbiBkKCl7dmFyIHA9W10scj0Kbio4O208NTY/YyhrLDU2LW0pOmMoayw2NC0obS01NikpO2Zvcih2YXIgdD02Mzt0Pj01Njt0LS0pZlt0XT1yJjI1NSxyPj4+PTg7YihmKTtmb3IodD1yPTA7dDw1O3QrKylmb3IodmFyIHY9MjQ7dj49MDt2LT04KXBbcisrXT1lW3RdPj52JjI1NTtyZXR1cm4gcH1mb3IodmFyIGU9W10sZj1bXSxoPVtdLGs9WzEyOF0sbD0xO2w8NjQ7KytsKWtbbF09MDt2YXIgbSxuO2EoKTtyZXR1cm57cmVzZXQ6YSx1cGRhdGU6YyxkaWdlc3Q6ZCxrdjpmdW5jdGlvbigpe2Zvcih2YXIgcD1kKCkscj0iIix0PTA7dDxwLmxlbmd0aDt0Kyspcis9IjAxMjM0NTY3ODlBQkNERUYiLmNoYXJBdChNYXRoLmZsb29yKHBbdF0vMTYpKSsiMDEyMzQ1Njc4OUFCQ0RFRiIuY2hhckF0KHBbdF0lMTYpO3JldHVybiByfX19O0pkPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1TdHJpbmcoXy51LmxvY2F0aW9uLmhyZWYpO3JldHVybiBkJiZhJiZiP1tiLElkKEdkKGQpLGEsY3x8bnVsbCldLmpvaW4oIiAiKTpudWxsfTsKSWQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVtdLGU9W107aWYoKEFycmF5LmlzQXJyYXkoYyk/MjoxKT09MSlyZXR1cm4gZT1bYixhXSxfLnRiKGQsZnVuY3Rpb24oayl7ZS5wdXNoKGspfSksS2QoZS5qb2luKCIgIikpO3ZhciBmPVtdLGg9W107Xy50YihjLGZ1bmN0aW9uKGspe2gucHVzaChrLmtleSk7Zi5wdXNoKGsudmFsdWUpfSk7Yz1NYXRoLmZsb29yKChuZXcgRGF0ZSkuZ2V0VGltZSgpLzFFMyk7ZT1mLmxlbmd0aD09MD9bYyxiLGFdOltmLmpvaW4oIjoiKSxjLGIsYV07Xy50YihkLGZ1bmN0aW9uKGspe2UucHVzaChrKX0pO2E9S2QoZS5qb2luKCIgIikpO2E9W2MsYV07aC5sZW5ndGg9PTB8fGEucHVzaChoLmpvaW4oIiIpKTtyZXR1cm4gYS5qb2luKCJfIil9O0tkPWZ1bmN0aW9uKGEpe3ZhciBiPUhkKCk7Yi51cGRhdGUoYSk7cmV0dXJuIGIua3YoKS50b0xvd2VyQ2FzZSgpfTtMZD1mdW5jdGlvbihhKXt0aGlzLmo9YXx8e2Nvb2tpZToiIn19OwpNZD1mdW5jdGlvbihhKXthPShhLmouY29va2llfHwiIikuc3BsaXQoIjsiKTt2YXIgYj1bXSxjPVtdO2ZvcihsZXQgZj0wO2Y8YS5sZW5ndGg7ZisrKXt2YXIgZD1hW2ZdLnRyaW0oKTt2YXIgZT1kLmluZGV4T2YoIj0iKTtlPT0tMT8oYi5wdXNoKCIiKSxjLnB1c2goZCkpOihiLnB1c2goZC5zdWJzdHJpbmcoMCxlKSksYy5wdXNoKGQuc3Vic3RyaW5nKGUrMSkpKX1yZXR1cm57a2V5czpiLHZhbHVlczpjfX07Xy5OZD1mdW5jdGlvbigpe3ZhciBhPV8udS5fX1NBUElTSUR8fF8udS5fX0FQSVNJRHx8Xy51Ll9fM1BTQVBJU0lEfHxfLnUuX18xUFNBUElTSUR8fF8udS5fX09WRVJSSURFX1NJRDtpZihhKXJldHVybiEwO3R5cGVvZiBkb2N1bWVudCE9PSJ1bmRlZmluZWQiJiYoYT1uZXcgTGQoZG9jdW1lbnQpLGE9YS5nZXQoIlNBUElTSUQiKXx8YS5nZXQoIkFQSVNJRCIpfHxhLmdldCgiX19TZWN1cmUtM1BBUElTSUQiKXx8YS5nZXQoIl9fU2VjdXJlLTFQQVBJU0lEIikpO3JldHVybiEhYX07Ck9kPWZ1bmN0aW9uKGEsYixjLGQpeyhhPV8udVthXSl8fHR5cGVvZiBkb2N1bWVudD09PSJ1bmRlZmluZWQifHwoYT0obmV3IExkKGRvY3VtZW50KSkuZ2V0KGIpKTtyZXR1cm4gYT9KZChhLGMsZCk6bnVsbH07Cl8uUGQ9ZnVuY3Rpb24oYSl7dmFyIGI9R2QoXy51Py5sb2NhdGlvbi5ocmVmKSxjPVtdO2lmKF8uTmQoKSl7Yj1iLmluZGV4T2YoImh0dHBzOiIpPT0wfHxiLmluZGV4T2YoImNocm9tZS1leHRlbnNpb246Iik9PTB8fGIuaW5kZXhPZigiY2hyb21lLXVudHJ1c3RlZDovL25ldy10YWItcGFnZSIpPT0wfHxiLmluZGV4T2YoIm1vei1leHRlbnNpb246Iik9PTA7dmFyIGQsZT0oZD1iKT9fLnUuX19TQVBJU0lEOl8udS5fX0FQSVNJRDtlfHx0eXBlb2YgZG9jdW1lbnQ9PT0idW5kZWZpbmVkInx8KGU9bmV3IExkKGRvY3VtZW50KSxlPWUuZ2V0KGQ/IlNBUElTSUQiOiJBUElTSUQiKXx8ZS5nZXQoIl9fU2VjdXJlLTNQQVBJU0lEIikpOyhkPWU/SmQoZSxkPyJTQVBJU0lESEFTSCI6IkFQSVNJREhBU0giLGEpOm51bGwpJiZjLnB1c2goZCk7YiYmKChiPU9kKCJfXzFQU0FQSVNJRCIsIl9fU2VjdXJlLTFQQVBJU0lEIiwiU0FQSVNJRDFQSEFTSCIsYSkpJiZjLnB1c2goYiksKGE9T2QoIl9fM1BTQVBJU0lEIiwKIl9fU2VjdXJlLTNQQVBJU0lEIiwiU0FQSVNJRDNQSEFTSCIsYSkpJiZjLnB1c2goYSkpfXJldHVybiBjLmxlbmd0aD09MD9udWxsOmMuam9pbigiICIpfTtTZD1mdW5jdGlvbihhKXtfLlFkP2EoXy5RZCk6KFJkPz8oUmQ9W10pKS5wdXNoKGEpfTtfLlZkPWZ1bmN0aW9uKCl7IV8uUWQmJl8uVGQmJl8uVWQoXy5UZCgpKTtyZXR1cm4gXy5RZH07Xy5VZD1mdW5jdGlvbihhKXtfLlFkPWE7UmQ/LmZvckVhY2goU2QpO1JkPXZvaWQgMH07Xy5XZD1mdW5jdGlvbihhKXtfLlFkJiZfLlFkLlJvKGEpfTtfLlhkPWZ1bmN0aW9uKCl7Xy5RZCYmXy5RZC55ZSgpfTsKWWQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1ifHxfLnhkKCk7Yj1jLmo7dmFyIGQ9Yy5jcmVhdGVFbGVtZW50KCJTVFlMRSIpLGU9aGIoInN0eWxlIixiKTtlJiZkLnNldEF0dHJpYnV0ZSgibm9uY2UiLGUpO2QudHlwZT0idGV4dC9jc3MiO2M9Yy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiSEVBRCIpWzBdO2Quc3R5bGVTaGVldD9kLnN0eWxlU2hlZXQuY3NzVGV4dD1hOmQuYXBwZW5kQ2hpbGQoYi5jcmVhdGVUZXh0Tm9kZShhKSk7Yy5hcHBlbmRDaGlsZChkKTtyZXR1cm4gZH07Xy5aZD1mdW5jdGlvbihhKXthJiZ0eXBlb2YgYS5kaXNwb3NlPT0iZnVuY3Rpb24iJiZhLmRpc3Bvc2UoKX07Xy4kZD1mdW5jdGlvbihhKXtmb3IobGV0IGI9MCxjPWFyZ3VtZW50cy5sZW5ndGg7YjxjOysrYil7bGV0IGQ9YXJndW1lbnRzW2JdO18ueWEoZCk/Xy4kZC5hcHBseShudWxsLGQpOl8uWmQoZCl9fTtfLmFlPWZ1bmN0aW9uKCl7dGhpcy5ZPXRoaXMuWTt0aGlzLks9dGhpcy5LfTtiZT1mdW5jdGlvbigpe18uYWUuY2FsbCh0aGlzKX07CmNlPWZ1bmN0aW9uKGEsYil7dGhpcy5qPWE7dGhpcy5vPWJ9O2VlPWZ1bmN0aW9uKGEsYil7Xy5hZS5jYWxsKHRoaXMpO3RoaXMuaj1hO3RoaXMuRD1iO3RoaXMuQj1kZT9udWxsOltdO3RoaXMudj1kZT9udWxsOltdO3RoaXMubz1kZT9udWxsOltdO3RoaXMuST0hMX07ZmU9ZnVuY3Rpb24oYSxiKXthLm98fChhLm89W10pO2Euby5wdXNoKG5ldyB2YS53ayhiLHZvaWQgMCkpfTtnZT1mdW5jdGlvbihhLGIsYyl7YS5CfHwoYS5CPVtdKTthLkIucHVzaChuZXcgdmEud2soYixjKSl9O2hlPWZ1bmN0aW9uKGEsYil7YS52fHwoYS52PVtdKTthLnYucHVzaChuZXcgdmEud2soYix2b2lkIDApKX07aWU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtmb3IobGV0IGQ9MDtkPGEubGVuZ3RoO2QrKyl0cnl7YVtkXS5leGVjdXRlKGIpfWNhdGNoKGUpe18uJGIoZSksYy5wdXNoKGUpfWEubGVuZ3RoPTA7cmV0dXJuIGMubGVuZ3RoP2M6bnVsbH07amU9ZnVuY3Rpb24oKXt0aGlzLlk9bnVsbH07CmtlPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LGM9Yi5zdHlsZVNoZWV0cy5sZW5ndGgsZD1ZZChhLG5ldyB1ZChiKSk7ZC5zZXRBdHRyaWJ1dGUoImRhdGEtbGF0ZS1jc3MiLCIiKTtiLnN0eWxlU2hlZXRzLmxlbmd0aD09YysxJiZfLnZiKGIuc3R5bGVTaGVldHMsZT0+KGUub3duZXJOb2RlfHxlLm93bmluZ0VsZW1lbnQpPT1kKX07cWU9ZnVuY3Rpb24oYSxiPSEwKXt2YXIgYz1sZShhKSxkPW5ldyBtZSxlPV8uTWIoYylbNV07b2QobmUsZnVuY3Rpb24oaCl7dmFyIGs9ZS5tYXRjaCgiLyIraCsiPShbXi9dKykiKTtrJiZvZShkLGgsa1sxXSl9KTt2YXIgZj0iIjtmPWEuaW5kZXhPZigiXy9zcy8iKSE9LTE/Il8vc3MvIjoiXy9qcy8iO3BlKGQsYS5zdWJzdHIoMCxhLmluZGV4T2YoZikrZi5sZW5ndGgpKTtpZighYilyZXR1cm4gZDsoYT1fLk1iKGMpWzZdfHxudWxsKSYmXy5SYihhLChoLGspPT57ZC52W2hdPWt9KTtyZXR1cm4gZH07CmxlPWZ1bmN0aW9uKGEpe3JldHVybiBhLnN0YXJ0c1dpdGgoImh0dHBzOi8vdWJlcnByb3h5LXBlbi1yZWRpcmVjdC5jb3JwLmdvb2dsZS5jb20vdWJlcnByb3h5L3Blbj91cmw9Iik/YS5zdWJzdHIoNjUpOmF9O3JlPWZ1bmN0aW9uKGEpe2E9Xy5RYihsZShhKSk7cmV0dXJuIGE9PT1udWxsPyExOlJlZ0V4cCgiKC9fL2pzLyl8KC9fL3NzLykiLCJnIikudGVzdChhKT8vXC9rPS8udGVzdChhKTohMX07b2U9ZnVuY3Rpb24oYSxiLGMpe2M/YS5qW2JdPWM6ZGVsZXRlIGEualtiXX07cGU9ZnVuY3Rpb24oYSxiKXthLm89Yn07CnZlPWZ1bmN0aW9uKGEpe3ZhciBiPVtdLGM9ZD0+e2EualtkXSE9PXZvaWQgMCYmYi5wdXNoKGQrIj0iK2EualtkXSl9O3NlKGEpPyhjKCJtZCIpLGMoImsiKSxjKCJjayIpLGMoImFtIiksYygicnMiKSxjKCJnc3Ntb2R1bGVzZXRwcm90byIpLGMoInNsayIpLGMoImR0aSIpLGMoImRid2giKSk6KGMoInNkY2giKSxjKCJrIiksYygiY2siKSxjKCJhbSIpLGMoImFtYyIpLGMoInJ0IiksImQiaW4gYS5qfHxvZShhLCJkIiwiMCIpLGMoImQiKSxjKCJleG0iKSxjKCJleGNtIiksKGEuai5leGNtfHxhLmouZXhtKSYmYi5wdXNoKCJlZD0xIiksYygiaW0iKSxjKCJkZyIpLGMoInNtIiksdGUoYSwiYnIiKSE9IjEiJiZ0ZShhLCJiciIpIT0iMCJ8fGMoImJyIiksYygiYnItZCIpLHRlKGEsInJiIik9PSIxIiYmYygicmIiKSx0ZShhLCJ6cyIpIT09IjAiJiZjKCJ6cyIpLHVlKGEpIT09IiImJmMoInd0IiksYygiZ3NzbW9kdWxlc2V0cHJvdG8iKSxjKCJ1amciKSxjKCJzcCIpLGMoImljaGMiKSwKYygicnMiKSxjKCJjYiIpLGMoImNjYiIpLGMoImVlIiksYygic2xrIiksYygiZHRpIiksYygiZGJ3aCIpLGMoImljIiksYygibSIpKTtyZXR1cm4gYi5qb2luKCIvIil9O3RlPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEualtiXT9hLmpbYl06bnVsbH07c2U9ZnVuY3Rpb24oYSl7YT10ZShhLCJtZCIpO3JldHVybiEhYSYmYSE9PSIwIn07dWU9ZnVuY3Rpb24oYSl7c3dpdGNoKHRlKGEsInd0Iikpe2Nhc2UgIjAiOnJldHVybiIwIjtjYXNlICIxIjpyZXR1cm4iMSI7Y2FzZSAiMiI6cmV0dXJuIjIiO2RlZmF1bHQ6cmV0dXJuIiJ9fTt3ZT1mdW5jdGlvbihhLGIpe2ImJmIubGVuZ3RoPjA/KGIuc29ydCgpLG9lKGEsImV4bSIsYi5qb2luKCIsIikpKTpvZShhLCJleG0iLG51bGwpfTt4ZT1mdW5jdGlvbihhLGIpe2ImJmIubGVuZ3RoPjA/KGIuc29ydCgpLG9lKGEsImV4Y20iLGIuam9pbigiLCIpKSk6b2UoYSwiZXhjbSIsbnVsbCl9Owp5ZT1mdW5jdGlvbihhKXtyZXR1cm4oYT10ZShhLCJtIikpP2Euc3BsaXQoIiwiKTpbXX07emU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iIGluc3RhbmNlb2YgTWFwP0FycmF5LmZyb20oYi5lbnRyaWVzKCkpLmZpbHRlcigoWyxkXSk9PmQmJmQuc2l6ZT4wKS5tYXAoKFtkLGVdKT0+e2U9QXJyYXkuZnJvbShlKTtlLmxlbmd0aD4xJiZlLnNvcnQoKTtyZXR1cm4gZCsiOiIrZS5qb2luKCIsIil9KTpPYmplY3Qua2V5cyhiKS5maWx0ZXIoZD0+ISFPYmplY3Qua2V5cyhiW2RdKS5sZW5ndGgpLm1hcChkPT57dmFyIGU9T2JqZWN0LmtleXMoYltkXSk7ZS5sZW5ndGg+MSYmZS5zb3J0KCk7cmV0dXJuIGQrIjoiK2Uuam9pbigiLCIpfSk7Yy5zb3J0KCk7b2UoYSwiZWUiLGMuam9pbigiOyIpKX07CkNlPWZ1bmN0aW9uKGEpe2E9dGUoYSwiZWUiKTtpZihBZSl7aWYoIWEpcmV0dXJuIG5ldyBNYXA7dmFyIGI9bmV3IE1hcCxjPWEuc3BsaXQoIjsiKTtmb3IodmFyIGQgb2YgYyl7bGV0IFtmLGhdPWQuc3BsaXQoIjoiKTtjPW5ldyBTZXQ7Yi5zZXQoZixjKTtmb3IodmFyIGUgb2YgaC5zcGxpdCgiLCIpKWMuYWRkKGUpfXJldHVybiBifWlmKCFhKXJldHVybnt9O2Q9e307ZT1hLnNwbGl0KCI7Iik7Zm9yKGIgb2YgZSl7bGV0IFtmLGhdPWIuc3BsaXQoIjoiKTtkW2ZdPXt9O2ZvcihjIG9mIGguc3BsaXQoIiwiKSlkW2ZdW2NdPSEwfXJldHVybiBkfTtEZT1mdW5jdGlvbihhKXtkZWxldGUgYS5qLm07ZGVsZXRlIGEuai5leG07ZGVsZXRlIGEuai5lZH07CkVlPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBkb2N1bWVudCE9PSJ1bmRlZmluZWQiJiZkb2N1bWVudCYmZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQmJihhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGEpKSl7bGV0IGI9YS50YWdOYW1lLnRvVXBwZXJDYXNlKCk7aWYoYj09IlNDUklQVCJ8fGI9PSJMSU5LIilyZXR1cm4gYX1yZXR1cm4gbnVsbH07RmU9ZnVuY3Rpb24oYT0iIixiKXtpZihhJiZiKXRocm93IEVycm9yKCJMIik7dmFyIGM9IiI7dmFyIGQ9Xy51Ll9GX2pzVXJsOyhhPWJ8fEVlKGEpKSYmKGM9YS5zcmM/YS5zcmM6YS5nZXRBdHRyaWJ1dGUoImhyZWYiKSk7aWYoZCYmYyl7aWYoZCE9Yyl0aHJvdyBFcnJvcigiTWAiK2QrImAiK2MpO2M9ZH1lbHNlIGM9ZHx8YztpZighcmUoYykpdGhyb3cgRXJyb3IoIk4iKTtyZXR1cm4gY307CkhlPWZ1bmN0aW9uKCl7aWYoIUdlKXtHZT0hMDt0cnl7dmFyIGE9RmUoXy51Ll9GX2pzVXJsPyIiOiJiYXNlLWpzIil9Y2F0Y2goYyl7cmV0dXJufXZhciBiPUNlKHFlKGEpKTtpZihiIGluc3RhbmNlb2YgTWFwKWIuc2l6ZSE9PTAmJlNkKGM9Pntmb3IobGV0IFtkLGVdb2YgYi5lbnRyaWVzKCkpe2xldCBmPWQsaD1lO2ZvcihsZXQgayBvZiBoKWMubmkoZixrKX19KTtlbHNle2xldCBjPU9iamVjdC5rZXlzKGIpO2MubGVuZ3RoIT09MCYmU2QoZD0+e2ZvcihsZXQgZSBvZiBjKXtsZXQgZj1iW2VdO2ZvcihsZXQgaCBvZiBPYmplY3Qua2V5cyhmKSlkLm5pKGUsaCl9fSl9fX07Xy5KZT1mdW5jdGlvbihhLGIpe3RoaXMudHlwZT0iZnVuY3Rpb24iPT10eXBlb2YgXy5JZSYmYSBpbnN0YW5jZW9mIF8uSWU/U3RyaW5nKGEpOmE7dGhpcy5jdXJyZW50VGFyZ2V0PXRoaXMudGFyZ2V0PWI7dGhpcy5kZWZhdWx0UHJldmVudGVkPXRoaXMubz0hMX07CktlPWZ1bmN0aW9uKGEsYil7Xy5KZS5jYWxsKHRoaXMsYT9hLnR5cGU6IiIpO3RoaXMucmVsYXRlZFRhcmdldD10aGlzLmN1cnJlbnRUYXJnZXQ9dGhpcy50YXJnZXQ9bnVsbDt0aGlzLmJ1dHRvbj10aGlzLnNjcmVlblk9dGhpcy5zY3JlZW5YPXRoaXMuY2xpZW50WT10aGlzLmNsaWVudFg9dGhpcy5vZmZzZXRZPXRoaXMub2Zmc2V0WD0wO3RoaXMua2V5PSIiO3RoaXMuY2hhckNvZGU9dGhpcy5rZXlDb2RlPTA7dGhpcy5tZXRhS2V5PXRoaXMuc2hpZnRLZXk9dGhpcy5hbHRLZXk9dGhpcy5jdHJsS2V5PSExO3RoaXMuc3RhdGU9bnVsbDt0aGlzLnBvaW50ZXJJZD0wO3RoaXMucG9pbnRlclR5cGU9IiI7dGhpcy50aW1lU3RhbXA9MDt0aGlzLmo9bnVsbDthJiZ0aGlzLmluaXQoYSxiKX07Ck1lPWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy5saXN0ZW5lcj1hO3RoaXMucHJveHk9bnVsbDt0aGlzLnNyYz1iO3RoaXMudHlwZT1jO3RoaXMuY2FwdHVyZT0hIWQ7dGhpcy5oYW5kbGVyPWU7dGhpcy5rZXk9KytMZTt0aGlzLk5oPXRoaXMuemk9ITF9O05lPWZ1bmN0aW9uKGEpe2EuTmg9ITA7YS5saXN0ZW5lcj1udWxsO2EucHJveHk9bnVsbDthLnNyYz1udWxsO2EuaGFuZGxlcj1udWxsfTtPZT1mdW5jdGlvbihhKXt0aGlzLnNyYz1hO3RoaXMubGlzdGVuZXJzPXt9O3RoaXMuaj0wfTtQZT1mdW5jdGlvbihhLGIpe3ZhciBjPWIudHlwZTtjIGluIGEubGlzdGVuZXJzJiZfLnhiKGEubGlzdGVuZXJzW2NdLGIpJiYoTmUoYiksYS5saXN0ZW5lcnNbY10ubGVuZ3RoPT0wJiYoZGVsZXRlIGEubGlzdGVuZXJzW2NdLGEuai0tKSl9OwpRZT1mdW5jdGlvbihhLGIsYyxkKXtmb3IobGV0IGU9MDtlPGEubGVuZ3RoOysrZSl7bGV0IGY9YVtlXTtpZighZi5OaCYmZi5saXN0ZW5lcj09YiYmZi5jYXB0dXJlPT0hIWMmJmYuaGFuZGxlcj09ZClyZXR1cm4gZX1yZXR1cm4tMX07Xy5TZT1mdW5jdGlvbihhLGIsYyxkLGUpe2lmKGQmJmQub25jZSlyZXR1cm4gUmUoYSxiLGMsZCxlKTtpZihBcnJheS5pc0FycmF5KGIpKXtmb3IobGV0IGY9MDtmPGIubGVuZ3RoO2YrKylfLlNlKGEsYltmXSxjLGQsZSk7cmV0dXJuIG51bGx9Yz1UZShjKTtyZXR1cm4gYSYmYVtVZV0/YS5saXN0ZW4oYixjLF8uQWEoZCk/ISFkLmNhcHR1cmU6ISFkLGUpOlZlKGEsYixjLCExLGQsZSl9OwpWZT1mdW5jdGlvbihhLGIsYyxkLGUsZil7aWYoIWIpdGhyb3cgRXJyb3IoIk8iKTt2YXIgaD1fLkFhKGUpPyEhZS5jYXB0dXJlOiEhZSxrPVdlKGEpO2t8fChhW1hlXT1rPW5ldyBPZShhKSk7Yz1rLmFkZChiLGMsZCxoLGYpO2lmKGMucHJveHkpcmV0dXJuIGM7ZD1ZZSgpO2MucHJveHk9ZDtkLnNyYz1hO2QubGlzdGVuZXI9YztpZihhLmFkZEV2ZW50TGlzdGVuZXIpZT09PXZvaWQgMCYmKGU9ITEpLGEuYWRkRXZlbnRMaXN0ZW5lcihiLnRvU3RyaW5nKCksZCxlKTtlbHNlIGlmKGEuYXR0YWNoRXZlbnQpYS5hdHRhY2hFdmVudChaZShiLnRvU3RyaW5nKCkpLGQpO2Vsc2UgaWYoYS5hZGRMaXN0ZW5lciYmYS5yZW1vdmVMaXN0ZW5lcilhLmFkZExpc3RlbmVyKGQpO2Vsc2UgdGhyb3cgRXJyb3IoIlAiKTskZSsrO3JldHVybiBjfTtZZT1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoYyl7cmV0dXJuIGIuY2FsbChhLnNyYyxhLmxpc3RlbmVyLGMpfXZhciBiPWFmO3JldHVybiBhfTsKUmU9ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihBcnJheS5pc0FycmF5KGIpKXtmb3IobGV0IGY9MDtmPGIubGVuZ3RoO2YrKylSZShhLGJbZl0sYyxkLGUpO3JldHVybiBudWxsfWM9VGUoYyk7cmV0dXJuIGEmJmFbVWVdP18uYmYoYSxiLGMsXy5BYShkKT8hIWQuY2FwdHVyZTohIWQsZSk6VmUoYSxiLGMsITAsZCxlKX07Xy5jZj1mdW5jdGlvbihhLGIsYyxkLGUpe2lmKEFycmF5LmlzQXJyYXkoYikpZm9yKGxldCBmPTA7ZjxiLmxlbmd0aDtmKyspXy5jZihhLGJbZl0sYyxkLGUpO2Vsc2UoZD1fLkFhKGQpPyEhZC5jYXB0dXJlOiEhZCxjPVRlKGMpLGEmJmFbVWVdKT9hLm8ucmVtb3ZlKFN0cmluZyhiKSxjLGQsZSk6YSYmKGE9V2UoYSkpJiYoYj1hLmxpc3RlbmVyc1tiLnRvU3RyaW5nKCldLGE9LTEsYiYmKGE9UWUoYixjLGQsZSkpLChjPWE+LTE/YlthXTpudWxsKSYmXy5kZihjKSl9OwpfLmRmPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09Im51bWJlciImJmEmJiFhLk5oKXt2YXIgYj1hLnNyYztpZihiJiZiW1VlXSlQZShiLm8sYSk7ZWxzZXt2YXIgYz1hLnR5cGUsZD1hLnByb3h5O2IucmVtb3ZlRXZlbnRMaXN0ZW5lcj9iLnJlbW92ZUV2ZW50TGlzdGVuZXIoYyxkLGEuY2FwdHVyZSk6Yi5kZXRhY2hFdmVudD9iLmRldGFjaEV2ZW50KFplKGMpLGQpOmIuYWRkTGlzdGVuZXImJmIucmVtb3ZlTGlzdGVuZXImJmIucmVtb3ZlTGlzdGVuZXIoZCk7JGUtLTsoYz1XZShiKSk/KFBlKGMsYSksYy5qPT0wJiYoYy5zcmM9bnVsbCxiW1hlXT1udWxsKSk6TmUoYSl9fX07WmU9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW4gZWY/ZWZbYV06ZWZbYV09Im9uIithfTthZj1mdW5jdGlvbihhLGIpe2lmKGEuTmgpYT0hMDtlbHNle2I9bmV3IEtlKGIsdGhpcyk7bGV0IGM9YS5saXN0ZW5lcixkPWEuaGFuZGxlcnx8YS5zcmM7YS56aSYmXy5kZihhKTthPWMuY2FsbChkLGIpfXJldHVybiBhfTsKV2U9ZnVuY3Rpb24oYSl7YT1hW1hlXTtyZXR1cm4gYSBpbnN0YW5jZW9mIE9lP2E6bnVsbH07VGU9ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGE9PT0iZnVuY3Rpb24iKXJldHVybiBhO2FbZmZdfHwoYVtmZl09ZnVuY3Rpb24oYil7cmV0dXJuIGEuaGFuZGxlRXZlbnQoYil9KTtyZXR1cm4gYVtmZl19O18uZ2Y9ZnVuY3Rpb24oKXtfLmFlLmNhbGwodGhpcyk7dGhpcy5vPW5ldyBPZSh0aGlzKTt0aGlzLkZhPXRoaXM7dGhpcy5NPW51bGx9O18uYmY9ZnVuY3Rpb24oYSxiLGMsZCxlKXtyZXR1cm4gYS5vLmFkZChTdHJpbmcoYiksYywhMCxkLGUpfTsKaGY9ZnVuY3Rpb24oYSxiLGMsZCl7Yj1hLm8ubGlzdGVuZXJzW1N0cmluZyhiKV07aWYoIWIpcmV0dXJuITA7Yj1iLmNvbmNhdCgpO3ZhciBlPSEwO2ZvcihsZXQgZj0wO2Y8Yi5sZW5ndGg7KytmKXtsZXQgaD1iW2ZdO2lmKGgmJiFoLk5oJiZoLmNhcHR1cmU9PWMpe2xldCBrPWgubGlzdGVuZXIsbD1oLmhhbmRsZXJ8fGguc3JjO2guemkmJlBlKGEubyxoKTtlPWsuY2FsbChsLGQpIT09ITEmJmV9fXJldHVybiBlJiYhZC5kZWZhdWx0UHJldmVudGVkfTtsZj1mdW5jdGlvbigpe3ZhciBhPV8uamY7a2YuaW5zdGFuY2V8fChrZi5pbnN0YW5jZT1uZXcga2YoYSkpO3JldHVybiBrZi5pbnN0YW5jZX07Cm1mPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuQj9hLkI6YS5CPW5ldyBQcm9taXNlKGFzeW5jIGM9Pnt2YXIgZD13aW5kb3cuQWJvcnRDb250cm9sbGVyP25ldyB3aW5kb3cuQWJvcnRDb250cm9sbGVyOnZvaWQgMCxlPWQ/LnNpZ25hbCxmPSExO3RyeXtkJiYoYS5qPWEuRGMucGIoKCk9PntkLmFib3J0KCl9LGJ8fDJFNCkpLGF3YWl0IGZldGNoKCIvZ2VuZXJhdGVfMjA0Iix7bWV0aG9kOiJIRUFEIixzaWduYWw6ZX0pLGY9ITB9Y2F0Y2h7Zj0hMX1maW5hbGx5e2EuQj12b2lkIDAsYS5qJiYoYS5EYy5BYShhLmopLGEuaj0wKSxmIT09YS5pc09ubGluZSYmKGEuaXNPbmxpbmU9ZixhLmlzT25saW5lP2EuZGlzcGF0Y2hFdmVudCgibmV0d29ya3N0YXR1cy1vbmxpbmUiKTphLmRpc3BhdGNoRXZlbnQoIm5ldHdvcmtzdGF0dXMtb2ZmbGluZSIpKSxjKGYpfX0pfTsKbmY9ZnVuY3Rpb24oYSl7YS5EPWEuRGMucGIoYXN5bmMoKT0+e2EuaXNPbmxpbmU/d2luZG93Lm5hdmlnYXRvcj8ub25MaW5lfHxhd2FpdCBtZihhKTphd2FpdCBtZihhKTtuZihhKX0sM0U0KX07b2Y9ZnVuY3Rpb24oKXt2YXIgYSxiO3JldHVybntwcm9taXNlOm5ldyBQcm9taXNlKChjLGQpPT57YT1jO2I9ZH0pLHJlc29sdmU6YSxyZWplY3Q6Yn19O3JmPWZ1bmN0aW9uKGEpe3ZhciB7cHJvbWlzZTpiLHJlc29sdmU6YyxyZWplY3Q6ZH09b2YoKTtwZi5zZXQoYSx7cHJvbWlzZTpiLHJlc29sdmU6YyxyZWplY3Q6ZH0pO3FmfHwocWY9W10scXVldWVNaWNyb3Rhc2soKCk9Pnt2YXIgZT1bLi4ucWZdO3FmPW51bGw7dmFyIGY9Xy5WZCgpLmFmKGUpO2ZvcihsZXQgaCBvZiBlKWZbaF0udGhlbihwZi5nZXQoaCkucmVzb2x2ZSxwZi5nZXQoaCkucmVqZWN0KX0pKTtxZi5wdXNoKGEpO3JldHVybiBifTsKXy5zZj1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAyMDA6Y2FzZSAyMDE6Y2FzZSAyMDI6Y2FzZSAyMDQ6Y2FzZSAyMDY6Y2FzZSAzMDQ6Y2FzZSAxMjIzOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fTt0Zj1mdW5jdGlvbihhLGIpe2EuQihiKTthLm88MTAwJiYoYS5vKyssYi5uZXh0PWEuaixhLmo9Yil9O3hmPWZ1bmN0aW9uKCl7Zm9yKHZhciBhO2E9dWYucmVtb3ZlKCk7KXt0cnl7YS5mbi5jYWxsKGEuc2NvcGUpfWNhdGNoKGIpe18uJGIoYil9dGYodmYsYSl9d2Y9ITF9O18ueWY9ZnVuY3Rpb24oYSl7YS5wcm90b3R5cGUuJGdvb2dfVGhlbmFibGU9ITB9O3pmPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiExO3RyeXtyZXR1cm4hIWEuJGdvb2dfVGhlbmFibGV9Y2F0Y2goYil7cmV0dXJuITF9fTsKXy5CZj1mdW5jdGlvbihhLGIpe3RoaXMuaj0wO3RoaXMuST12b2lkIDA7dGhpcy5CPXRoaXMubz10aGlzLnY9bnVsbDt0aGlzLkQ9dGhpcy5LPSExO2lmKGEhPV8uZ2QpdHJ5e2xldCBjPXRoaXM7YS5jYWxsKGIsZnVuY3Rpb24oZCl7Xy5BZihjLDIsZCl9LGZ1bmN0aW9uKGQpe18uQWYoYywzLGQpfSl9Y2F0Y2goYyl7Xy5BZih0aGlzLDMsYyl9fTtDZj1mdW5jdGlvbigpe3RoaXMubmV4dD10aGlzLmNvbnRleHQ9dGhpcy5qPXRoaXMubz10aGlzLmNoaWxkPW51bGw7dGhpcy52PSExfTtfLkVmPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1EZi5nZXQoKTtkLm89YTtkLmo9YjtkLmNvbnRleHQ9YztyZXR1cm4gZH07Xy5IZj1mdW5jdGlvbihhLGIsYyl7RmYoYSxiLGMsbnVsbCl8fEdmKF8uRGEoYixhKSl9OwpfLklmPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgXy5CZihmdW5jdGlvbihiLGMpe3ZhciBkPWEubGVuZ3RoLGU9W107aWYoZCl7dmFyIGY9ZnVuY3Rpb24obCxtKXtkLS07ZVtsXT1tO2Q9PTAmJmIoZSl9LGg9ZnVuY3Rpb24obCl7YyhsKX07Zm9yKGxldCBsPTA7bDxhLmxlbmd0aDtsKyspe3ZhciBrPWFbbF07Xy5IZihrLF8uRGEoZixsKSxoKX19ZWxzZSBiKGUpfSl9O0tmPWZ1bmN0aW9uKGEsYixjLGQpe18uSmYoYSxfLkVmKGJ8fF8uZ2QsY3x8bnVsbCxkKSl9OwpMZj1mdW5jdGlvbihhLGIpe2lmKGEuaj09MClpZihhLnYpe3ZhciBjPWEudjtpZihjLm8pe3ZhciBkPTAsZT1udWxsLGY9bnVsbDtmb3IobGV0IGg9Yy5vO2gmJihoLnZ8fChkKyssaC5jaGlsZD09YSYmKGU9aCksIShlJiZkPjEpKSk7aD1oLm5leHQpZXx8KGY9aCk7ZSYmKGMuaj09MCYmZD09MT9MZihjLGIpOihmPyhkPWYsZC5uZXh0PT1jLkImJihjLkI9ZCksZC5uZXh0PWQubmV4dC5uZXh0KTpNZihjKSxOZihjLGUsMyxiKSkpfWEudj1udWxsfWVsc2UgXy5BZihhLDMsYil9O18uSmY9ZnVuY3Rpb24oYSxiKXthLm98fGEuaiE9MiYmYS5qIT0zfHxPZihhKTthLkI/YS5CLm5leHQ9YjphLm89YjthLkI9Yn07ClFmPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPV8uRWYobnVsbCxudWxsLG51bGwpO2UuY2hpbGQ9bmV3IF8uQmYoZnVuY3Rpb24oZixoKXtlLm89Yj9mdW5jdGlvbihrKXt0cnl7bGV0IGw9Yi5jYWxsKGQsayk7ZihsKX1jYXRjaChsKXtoKGwpfX06ZjtlLmo9Yz9mdW5jdGlvbihrKXt0cnl7bGV0IGw9Yy5jYWxsKGQsayk7bD09PXZvaWQgMCYmayBpbnN0YW5jZW9mIF8uUGY/aChrKTpmKGwpfWNhdGNoKGwpe2gobCl9fTpofSk7ZS5jaGlsZC52PWE7Xy5KZihhLGUpO3JldHVybiBlLmNoaWxkfTtfLkFmPWZ1bmN0aW9uKGEsYixjKXthLmo9PTAmJihhPT09YyYmKGI9MyxjPW5ldyBUeXBlRXJyb3IoIlEiKSksYS5qPTEsRmYoYyxhLm5CLGEub0IsYSl8fChhLkk9YyxhLmo9YixhLnY9bnVsbCxPZihhKSxiIT0zfHxjIGluc3RhbmNlb2YgXy5QZnx8UmYoYSxjKSkpfTsKRmY9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYSBpbnN0YW5jZW9mIF8uQmYpcmV0dXJuIEtmKGEsYixjLGQpLCEwO2lmKHpmKGEpKXJldHVybiBhLnRoZW4oYixjLGQpLCEwO2lmKF8uQWEoYSkpdHJ5e2xldCBlPWEudGhlbjtpZih0eXBlb2YgZT09PSJmdW5jdGlvbiIpcmV0dXJuIFNmKGEsZSxiLGMsZCksITB9Y2F0Y2goZSl7cmV0dXJuIGMuY2FsbChkLGUpLCEwfXJldHVybiExfTtTZj1mdW5jdGlvbihhLGIsYyxkLGUpe2Z1bmN0aW9uIGYobCl7a3x8KGs9ITAsZC5jYWxsKGUsbCkpfWZ1bmN0aW9uIGgobCl7a3x8KGs9ITAsYy5jYWxsKGUsbCkpfXZhciBrPSExO3RyeXtiLmNhbGwoYSxoLGYpfWNhdGNoKGwpe2YobCl9fTtPZj1mdW5jdGlvbihhKXthLkt8fChhLks9ITAsR2YoYS50dCxhKSl9O01mPWZ1bmN0aW9uKGEpe3ZhciBiPW51bGw7YS5vJiYoYj1hLm8sYS5vPWIubmV4dCxiLm5leHQ9bnVsbCk7YS5vfHwoYS5CPW51bGwpO3JldHVybiBifTsKTmY9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYz09MyYmYi5qJiYhYi52KWZvcig7YSYmYS5EO2E9YS52KWEuRD0hMTtpZihiLmNoaWxkKWIuY2hpbGQudj1udWxsLFRmKGIsYyxkKTtlbHNlIHRyeXtiLnY/Yi5vLmNhbGwoYi5jb250ZXh0KTpUZihiLGMsZCl9Y2F0Y2goZSl7Xy5VZi5jYWxsKG51bGwsZSl9dGYoRGYsYil9O1RmPWZ1bmN0aW9uKGEsYixjKXtiPT0yP2Euby5jYWxsKGEuY29udGV4dCxjKTphLmomJmEuai5jYWxsKGEuY29udGV4dCxjKX07UmY9ZnVuY3Rpb24oYSxiKXthLkQ9ITA7R2YoZnVuY3Rpb24oKXthLkQmJl8uVWYuY2FsbChudWxsLGIpfSl9O18uUGY9ZnVuY3Rpb24oYSl7Xy5MYS5jYWxsKHRoaXMsYSl9O1dmPWZ1bmN0aW9uKGEpe3JldHVybiBWZihhKS50aGVuKGZ1bmN0aW9uKGIpe3JldHVybiBKU09OLnBhcnNlKGIucmVzcG9uc2VUZXh0KX0pfTsKVmY9ZnVuY3Rpb24oYSl7dmFyIGI9e30sYz1uZXcgWE1MSHR0cFJlcXVlc3Q7cmV0dXJuKG5ldyBfLkJmKGZ1bmN0aW9uKGQsZSl7dmFyIGY7dHJ5e2Mub3BlbigiR0VUIixhLCEwKX1jYXRjaChoKXtlKG5ldyBYZigiRXJyb3Igb3BlbmluZyBYSFI6ICIraC5tZXNzYWdlLGEsYykpfWMub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7aWYoYy5yZWFkeVN0YXRlPT00KXtfLnUuY2xlYXJUaW1lb3V0KGYpO3ZhciBoOyEoaD1fLnNmKGMuc3RhdHVzKSkmJihoPWMuc3RhdHVzPT09MCkmJihoPV8uT2IoYSksaD0hKGg9PSJodHRwInx8aD09Imh0dHBzInx8aD09IiIpKTtoP2QoYyk6ZShuZXcgWWYoYy5zdGF0dXMsYSxjKSl9fTtjLm9uZXJyb3I9ZnVuY3Rpb24oKXtlKG5ldyBYZigiTmV0d29yayBlcnJvciIsYSxjKSl9O2lmKGIuaGVhZGVycylmb3IobGV0IGggaW4gYi5oZWFkZXJzKXtsZXQgaz1iLmhlYWRlcnNbaF07ayE9bnVsbCYmYy5zZXRSZXF1ZXN0SGVhZGVyKGgsayl9Yi53aXRoQ3JlZGVudGlhbHMmJgooYy53aXRoQ3JlZGVudGlhbHM9Yi53aXRoQ3JlZGVudGlhbHMpO2IucmVzcG9uc2VUeXBlJiYoYy5yZXNwb25zZVR5cGU9Yi5yZXNwb25zZVR5cGUpO2IubWltZVR5cGUmJmMub3ZlcnJpZGVNaW1lVHlwZShiLm1pbWVUeXBlKTtiLnRpbWVvdXRNcz4wJiYoZj1fLnUuc2V0VGltZW91dChmdW5jdGlvbigpe2Mub25yZWFkeXN0YXRlY2hhbmdlPSgpPT57fTtjLmFib3J0KCk7ZShuZXcgWmYoYSxjKSl9LGIudGltZW91dE1zKSk7dHJ5e2Muc2VuZChudWxsKX1jYXRjaChoKXtjLm9ucmVhZHlzdGF0ZWNoYW5nZT0oKT0+e30sXy51LmNsZWFyVGltZW91dChmKSxlKG5ldyBYZigiRXJyb3Igc2VuZGluZyBYSFI6ICIraC5tZXNzYWdlLGEsYykpfX0pKS5LZyhmdW5jdGlvbihkKXtkIGluc3RhbmNlb2YgXy5QZiYmYy5hYm9ydCgpO3Rocm93IGQ7fSl9O1hmPWZ1bmN0aW9uKGEsYil7Xy5MYS5jYWxsKHRoaXMsYSsiLCB1cmw9IitiKTt0aGlzLnVybD1ifTsKWWY9ZnVuY3Rpb24oYSxiLGMpe1hmLmNhbGwodGhpcywiUmVxdWVzdCBGYWlsZWQsIHN0YXR1cz0iK2EsYixjKTt0aGlzLnN0YXR1cz1hfTtaZj1mdW5jdGlvbihhLGIpe1hmLmNhbGwodGhpcywiUmVxdWVzdCB0aW1lZCBvdXQiLGEsYil9O18uJGY9ZnVuY3Rpb24oYSxiLGMsZCxlPWIpe3ZhciBmPWIubGVuZ3RoLGg9KCk9PntmPTA7YS5vbmxvYWQ9bnVsbDthLm9uZXJyb3I9bnVsbDtrPSgpPT57fX0saz0oKT0+e2goKTt2YXIgbT1lLmZpbHRlcihuPT4hXy5WZCgpLkxhKG4pLmlzTG9hZGVkKCkpO20ubGVuZ3RoIT09MD9kKG0sYFJlc3BvbnNlIHdhcyBzdWNjZXNzZnVsIGJ1dCB3YXMgbWlzc2luZyBtb2R1bGUocykgJHttfS5gKTpjKCl9LGw9KCk9PntmLS07Zj09MCYmaygpfTtiLmZvckVhY2gobT0+e209Xy5WZCgpLkxhKG0pO20uaXNMb2FkZWQoKT9sKCk6KGZlKG0sbCksaGUobSxsKSl9KTthLm9ubG9hZD0oKT0+aygpO2Eub25lcnJvcj0oKT0+e2goKTtkKGIpfX07Cl8uYWc9ZnVuY3Rpb24oYSxiKXt2YXIgYz0hMSxkPVtdO2ZvcihsZXQgZT0wO2U8Yi5sZW5ndGg7KytlKXtsZXQgZj1iW2VdO2EuQltmXXx8KGEuQltmXT0hMCxhLloucHVzaChmKSxjPSEwLGQucHVzaChmKSl9YyYmKGEub2E9ITEpfTtiZz1mdW5jdGlvbihhLGIpe2lmKGIuaHJlZnx8Yi5nZXRBdHRyaWJ1dGUoImRhdGEtaHJlZiIpKWlmKGI9Yi5ocmVmfHxiLmdldEF0dHJpYnV0ZSgiZGF0YS1ocmVmIikscmUoYikmJiFxZShiKS5vLmVuZHNXaXRoKCJfL2pzLyIpKXtiPXllKHFlKGIpKTtmb3IobGV0IGMgb2YgYilhLmhhLmluY2x1ZGVzKGMpfHxhLmhhLnB1c2goYyl9fTtkZz1mdW5jdGlvbihhLGIsYyxkPSgpPT57fSxlPSgpPT57fSxmPSExKXtjZyhhLGIsKGgsayxsPWspPT57YS5NYSYmZj9hLlFhKGgsayxkLGUsbCk6YS5sb2FkKGgsayxkLGUsbCxjKX0sYyl8fGQoLTEpfTtlZz1mdW5jdGlvbihhLGIpe3JldHVybiBiLmZpbHRlcihjPT4hYS5CW2NdKX07CmZnPWZ1bmN0aW9uKGEsYixjLHtZZDpkLG9uRXJyb3I6ZSxvblN1Y2Nlc3M6Zixmb3JjZVJlbG9hZDpofT17fSl7YS5NPWM7aWYoIWIpdGhyb3cgRXJyb3IoIlMiKTtpZihhLlZkKXtmb3IobGV0IGsgb2YgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInN0eWxlIikpYmcoYSxrKTtmb3IobGV0IGsgb2YgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImxpbmsiKSliZyhhLGspfWRnKGEsZWcoYSxiKSxkLGUsZixoKX07CmNnPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGEudilyZXR1cm4gYS52LnRoZW4oKCk9PntjZyhhLGIsYyxkKX0pLCEwO2lmKCFhLkQpe2xldCBmPVtdO3ZhciBlPU9iamVjdC5hc3NpZ24oe30sYS5CKTtnZyhhLGIsaD0+e2YucHVzaChoLmdldElkKCkpfSxkLGg9PiFoLmlzTG9hZGVkKCksZSk7Yj1mfWZvcihlPTA7ZTxiLmxlbmd0aDspe2xldCBmPWIubGVuZ3RoLWUsaD1lPT0wP2I6Yi5zbGljZShlLGIubGVuZ3RoKSxrPWhnKGEsaCxkKSxsPV8uVWEoaykudG9TdHJpbmcoKTtmb3IoO2wubGVuZ3RoPmEuZGk7KWlmKGY+MSlmLT1NYXRoLmNlaWwoKGwubGVuZ3RoLWEuZGkpLzYpLGY9TWF0aC5tYXgoZiwxKSxoPWIuc2xpY2UoZSxlK2YpLGs9aGcoYSxoLGQpLGw9Xy5VYShrKS50b1N0cmluZygpO2Vsc2UgcmV0dXJuIGEuRD8oYS5EPSExLGEudj1pZyhhKS50aGVuKG09PntqZyhhLG0sZCl9KSxjZyhhLGIuc2xpY2UoZSksYyxkKSk6ITE7ZSs9ZjthLkQ/YyhrLGgpOmMoayxoLGU9PT1iLmxlbmd0aD8KYjpbXSl9cmV0dXJuITB9O2tnPWZ1bmN0aW9uKGEpe2Eub2F8fChhLm9hPSEwLGEuWi5zb3J0KCkpO3JldHVybiBhLlp9O2xnPWZ1bmN0aW9uKGEpe2E9YS5oYTthLnNvcnQoKTtyZXR1cm4gYX07aGc9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBhLkQ/bWcoYS5ZLGIse2Nzc1Jvd0tleTphLkZhLEtlOmEueWEsWWQ6YyxtbjprZyhhKSxsbjpsZyhhKX0pOm5nKGEuWSxiLHtjc3NSb3dLZXk6YS5GYSxLZTphLnlhLG1uOmtnKGEpLGxuOmxnKGEpfSl9O18ub2c9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtmb3IobGV0IGQ9MDtkPGIubGVuZ3RoOysrZCl7bGV0IGU9YltkXTthLkJbZV0mJihkZWxldGUgYS5CW2VdLF8ueGIoYS5aLGUpLGMucHVzaChlKSl9fTsKXy5wZz1mdW5jdGlvbihhLGIsYyxkLGUsZixoPWQpe2EuST1jO2EuZ2EuaW5zZXJ0QmVmb3JlKGMsYS5nYS5maXJzdENoaWxkKTtfLiRmKGMsZCwoKT0+e2MucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZChjKTthLkk9PWMmJihhLkk9bnVsbCk7ZigpfSxrPT57Yy5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGMpO2EuST09YyYmKGEuST1udWxsKTtfLm9nKGEsayk7YS52P2Eudi50aGVuKCgpPT57ZSgtMSxiKX0pOmUoLTEsYil9LGgpfTtnZz1mdW5jdGlvbihhLGIsYyxkLGUsZj17fSl7dmFyIGg9Xy5WZCgpO2ZvcihsZXQgayBvZiBiKXtiPWguTGEoayk7aWYoZltrXXx8ZSYmIWUoYikpY29udGludWU7ZltrXT0hMDtsZXQgbD1iLmp8fFtdO2lmKGQpe2xldCBtPVtdO2lmKGQgaW5zdGFuY2VvZiBNYXApe2xldCBuPWQuZ2V0KGspO24mJihtPUFycmF5LmZyb20obikpfWVsc2UgZFtrXSYmKG09T2JqZWN0LmtleXMoZFtrXSkpO2w9bC5jb25jYXQobSl9Z2coYSxsLGMsZCxlLGYpO2MoYil9fTsKaWc9ZnVuY3Rpb24oYSl7YT1hLlkuY2xvbmUoKTtEZShhKTtvZShhLCJkZyIsbnVsbCk7b2UoYSwibWQiLCIxIik7cmV0dXJuIFdmKGEudG9TdHJpbmcoKSl9O2pnPWZ1bmN0aW9uKGEsYixjKXtfLlZkKCkuVGgoKGJ8fHt9KS5tb2R1bGVHcmFwaCk7Z2coYSxrZyhhKSxkPT57Xy5hZyhhLFtkLmdldElkKCldKX0sYyk7YS52PW51bGx9O3JnPWZ1bmN0aW9uKGEpe2E9YS5idWYuY2hhckNvZGVBdChhLnBvcysrKTtyZXR1cm4gcWdbYV19O3NnPWZ1bmN0aW9uKGEpe3ZhciBiPTAsYz0wO2Rve3ZhciBkPXJnKGEpO2J8PShkJjMxKTw8YztjKz01fXdoaWxlKGQmMzIpO3JldHVybiBiPDA/Yis0Mjk0OTY3Mjk2OmJ9O3RnPWZ1bmN0aW9uKGEsYil7dGhpcy5EPVtdO3RoaXMuWj1hO3RoaXMuVT1ifHxudWxsO3RoaXMuQj10aGlzLmo9ITE7dGhpcy52PXZvaWQgMDt0aGlzLk09dGhpcy5nYT10aGlzLkk9ITE7dGhpcy5LPTA7dGhpcy5vPW51bGw7dGhpcy5ZPTB9Owp2Zz1mdW5jdGlvbihhLGIsYyl7YS5qPSEwO2Eudj1jO2EuQj0hYjt1ZyhhKX07eGc9ZnVuY3Rpb24oYSl7aWYoYS5qKXtpZighYS5NKXRocm93IG5ldyB3ZyhhKTthLk09ITF9fTt6Zz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1hLmo7ZXx8KGI9PT1jP2I9Yz0oMCxfLnlnKShiKTooYj0oMCxfLnlnKShiKSxjPSgwLF8ueWcpKGMpKSk7YS5ELnB1c2goW2IsYyxkXSk7ZSYmdWcoYSl9O0FnPWZ1bmN0aW9uKGEpe3JldHVybiBfLnViKGEuRCxmdW5jdGlvbihiKXtyZXR1cm4gdHlwZW9mIGJbMV09PT0iZnVuY3Rpb24ifSl9Owp1Zz1mdW5jdGlvbihhKXtpZihhLksmJmEuaiYmQWcoYSkpe3ZhciBiPWEuSyxjPUJnW2JdO2MmJihfLnUuY2xlYXJUaW1lb3V0KGMuaiksZGVsZXRlIEJnW2JdKTthLks9MH1hLm8mJihhLm8uWS0tLGRlbGV0ZSBhLm8pO2I9YS52O2Zvcih2YXIgZD1jPSExO2EuRC5sZW5ndGgmJiFhLkk7KXt2YXIgZT1hLkQuc2hpZnQoKSxmPWVbMF07bGV0IGs9ZVsxXTtlPWVbMl07aWYoZj1hLkI/azpmKXRyeXt2YXIgaD1mLmNhbGwoZXx8YS5VLGIpO2g9PT1DZyYmKGg9dm9pZCAwKTtoIT09dm9pZCAwJiYoYS5CPWEuQiYmKGg9PWJ8fGEuaXNFcnJvcihoKSksYS52PWI9aCk7aWYoemYoYil8fHR5cGVvZiBfLnUuUHJvbWlzZT09PSJmdW5jdGlvbiImJmIgaW5zdGFuY2VvZiBfLnUuUHJvbWlzZSlkPSEwLGEuST0hMH1jYXRjaChsKXtiPWwsYS5CPSEwLEFnKGEpfHwoYz0hMCl9fWEudj1iO2QmJihoPSgwLF8uQ2EpKGEuc3AsYSwhMCksZD0oMCxfLkNhKShhLnNwLGEsITEpLGIgaW5zdGFuY2VvZiB0Zz8KKHpnKGIsaCxkKSxiLmdhPSEwKTpiLnRoZW4oaCxkKSk7YyYmKGI9bmV3IERnKGIpLEJnW2Iual09YixhLks9Yi5qKX07RWc9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IHRnO2EudGhlbihmdW5jdGlvbihjKXtiLmNhbGxiYWNrKGMpfSxmdW5jdGlvbihjKXt4ZyhiKTt2ZyhiLCExLGMpfSk7cmV0dXJuIGJ9O3dnPWZ1bmN0aW9uKCl7Xy5MYS5jYWxsKHRoaXMpfTtGZz1mdW5jdGlvbigpe18uTGEuY2FsbCh0aGlzKX07RGc9ZnVuY3Rpb24oYSl7dGhpcy5qPV8udS5zZXRUaW1lb3V0KCgwLF8uQ2EpKHRoaXMudGhyb3dFcnJvcix0aGlzKSwwKTt0aGlzLm89YX07CkhnPWZ1bmN0aW9uKGEpe3N3aXRjaChhLnR5cGUpe2Nhc2UgR2cuVHlwZS5wbzpyZXR1cm4iVW5hdXRob3JpemVkIjtjYXNlIEdnLlR5cGUucGs6cmV0dXJuIkNvbnNlY3V0aXZlIGxvYWQgZmFpbHVyZXMiO2Nhc2UgR2cuVHlwZS5USU1FT1VUOnJldHVybiJUaW1lZCBvdXQiO2Nhc2UgR2cuVHlwZS5obzpyZXR1cm4iT3V0IG9mIGRhdGUgbW9kdWxlIGlkIjtjYXNlIEdnLlR5cGUudWs6cmV0dXJuIkluaXQgZXJyb3IiO2RlZmF1bHQ6cmV0dXJuYFVua25vd24gZmFpbHVyZSB0eXBlICR7YS50eXBlfWB9fTsKSWc9ZnVuY3Rpb24oKXt0aGlzLmhhPXRoaXMuWT1udWxsO3RoaXMuRD1uZXcgTWFwO3RoaXMuQj1uZXcgU2V0O3RoaXMuSz1bXTt0aGlzLlU9bmV3IFNldDt0aGlzLnY9W107dGhpcy5JPW5ldyBTZXQ7dGhpcy5qPUFlP25ldyBNYXA6e307dGhpcy5NPW5ldyBNYXA7dGhpcy5vPXRoaXMuWj1uZXcgdmEuT2coW10sIiIpO3RoaXMueWE9bnVsbDt0aGlzLmdhPW5ldyB0Zzt0aGlzLkZhPXRoaXMuUWE9dGhpcy5NYT10aGlzLm9hPSExfTtKZz1mdW5jdGlvbihhLGIpe18uTGEuY2FsbCh0aGlzLGBFcnJvciBsb2FkaW5nICR7YX06ICR7Yn1gKX07Ck9nPWZ1bmN0aW9uKGEsYil7aWYoIUtnKXtmb3IodmFyIGM9MDtjPDY0O2MrKylxZ1siQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODktXyIuY2hhckNvZGVBdChjKV09YztLZz0hMH1iPXtidWY6Yixwb3M6Mn07c2coYik7Yz1zZyhiKTt2YXIgZD1zZyhiKSsxLGU9QXJyYXkoYyksZj1BcnJheShjKSxoPUFycmF5KGMpO2Q9QXJyYXkoZCk7dmFyIGs9MCxsPTAsbT1iLmJ1ZixuPWIucG9zLHA9Yi5idWYuaW5kZXhPZigifCIsYi5wb3MpO2IucG9zPXArMTtmb3IocD0wO3A8YztwKyspe3ZhciByPXNnKGIpLHQ9ciYyLHY9ciYxO3I+Pj49Mjt2PyhrKz1yPj4+MV4tKHImMSkscj0ic3kiK2sudG9TdHJpbmcoMzYpKToodj1uLG4rPXIscj1tLnN1YnN0cmluZyh2LG4pKTtlW3BdPXI7dCYmKGRbbCsrXT1yKX1kW2xdPSIiO2IucG9zKys7bD1jJi0yO2s9YyYxO2ZvcihtPTA7bTxsO20rPTIpbj1yZyhiKSxoW21dPW4mNyxoW20rMV09Cm4+Pj4zJjc7ayYmKGs9cmcoYiksaFtsXT1rJjcpO2IucG9zKys7Zm9yKGw9MDtsPGM7bCsrKWhbbF09PT03JiYoaFtsXT1zZyhiKSk7Yi5wb3MrKztsPTA7Zm9yKGs9MDtrPGM7aysrKXttPWhba107bj1tPT09MD9MZzpBcnJheShtKTtmW2tdPW47cD1sO2Zvcih0PTA7dDxtO3QrKylwLT1zZyhiKSxuW3RdPWRbcF07ZFtsXT09PWVba10mJmwrK312YXIge2lkczp6LGRlcGVuZGVuY2llczpFfT17aWRzOmUsZGVwZW5kZW5jaWVzOmZ9O2ZvcihiPTA7Yjx6Lmxlbmd0aDtiKyspTmcoYSx6W2JdLEVbYl0pO2EuaGE9en07Umc9ZnVuY3Rpb24oYSl7dmFyIGI9YS5NYSxjPWEuaXNBY3RpdmUoKTtjIT1iJiYoUGcoYSxjP1FnLk1zOlFnLklETEUpLGEuTWE9Yyk7Yj1hLkZxKCk7YiE9YS5RYSYmKFBnKGEsYj9RZy5odTpRZy5pdSksYS5RYT1iKX07Tmc9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEuRC5nZXQoYik7ZD9kLmo9YzphLkQuc2V0KGIsbmV3IHZhLk9nKGMsYikpfTsKVGc9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPW5ldyBTZXQoYik7Yj1bXTt2YXIgZT17fTtmb3IobGV0IGYgb2YgZCl7ZD1hLkxhKGYpO2lmKCFkKXRocm93IEVycm9yKCJVYCIrZik7bGV0IGg9bmV3IHRnO2VbZl09aDtkLmlzTG9hZGVkKCk/aC5jYWxsYmFjayhudWxsKTooU2coYSxmLGQsISFjLGgpLGEudWgoZil8fGIucHVzaChmKSl9Yi5sZW5ndGg+MCYmKGEuQi5zaXplPT09MD9hLnNqKGIpOihhLnYucHVzaChiKSxSZyhhKSkpO3JldHVybiBlfTtTZz1mdW5jdGlvbihhLGIsYyxkLGUpe2dlKGMsZS5jYWxsYmFjayxlKTtoZShjLGZ1bmN0aW9uKGYpe2Y9bmV3IEpnKGIsZik7eGcoZSk7dmcoZSwhMSxmKX0pO2EudWgoYik/ZCYmKGEuSS5hZGQoYiksUmcoYSkpOmQmJmEuSS5hZGQoYil9OwpVZz1mdW5jdGlvbihhLGIpe2lmKCFhLm8uaGFzKGIpJiYoYS5vLmFkZChiKSwhYS5qLlUuaGFzKGIpKSl7dmFyIGM9YS5qLkxhKGIpO2lmKGMmJiFjLmlzTG9hZGVkKCkpe2M9Yy5qO2ZvcihsZXQgZD0wO2Q8Yy5sZW5ndGg7ZCsrKVVnKGEsY1tkXSk7YS5yZXN1bHQucHVzaChiKX19fTtZZz1mdW5jdGlvbihhLGIpe2I9Yi5maWx0ZXIoZT0+YS5ELmdldChlKS5pc0xvYWRlZCgpPyhfLnUuc2V0VGltZW91dCgoKT0+RXJyb3IoIlhgIitlKSwwKSwhMSk6ITApO2lmKFZnKXt2YXIgYz1uZXcgV2coYSk7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspVWcoYyxiW2RdKTtjPWMucmVzdWx0fWVsc2V7Yz1bXTtmb3IoZD0wO2Q8Yi5sZW5ndGg7ZCsrKWM9Yy5jb25jYXQoWGcoYSxiW2RdKSk7QWIoYyl9cmV0dXJuIWEub2EmJmMubGVuZ3RoPjE/KGI9Yy5zaGlmdCgpLGEudj1jLm1hcChmdW5jdGlvbihlKXtyZXR1cm5bZV19KS5jb25jYXQoYS52KSxbYl0pOmN9OwpYZz1mdW5jdGlvbihhLGIpe2lmKFZnKXJldHVybiBhPW5ldyBXZyhhKSxVZyhhLGIpLGEucmVzdWx0O3ZhciBjPVtdO2EuVS5oYXMoYil8fGMucHVzaChiKTtiPVtiXTtmb3IobGV0IGQ9MDtkPGIubGVuZ3RoO2QrKyl7bGV0IGU9YS5MYShiW2RdKS5qO2ZvcihsZXQgZj1lLmxlbmd0aC0xO2Y+PTA7Zi0tKXtsZXQgaD1lW2ZdO2EuTGEoaCkuaXNMb2FkZWQoKXx8YS5VLmhhcyhoKXx8KGMucHVzaChoKSxiLnB1c2goaCkpfX1jLnJldmVyc2UoKTtBYihjKTtyZXR1cm4gY307CmJoPWZ1bmN0aW9uKGEsYixjLGQsZSxmPTAsaD0hMSl7dmFyIGs9aD8wOmYrMTtmPV8ueWIoYyk7YS5LPWI7Zm9yKGxldCBsIG9mIGMpYS5VLmRlbGV0ZShsKTtpZihkPT00MDEpWmcoYSxuZXcgdmEub2IodmEub2IuVHlwZS5wbyxkKSksYS52Lmxlbmd0aD0wO2Vsc2UgaWYoZD09NDEwKSRnKGEsbmV3IHZhLm9iKHZhLm9iLlR5cGUuaG8sZCkpLGFoKGEpO2Vsc2UgaWYoaz49MylbLi4uYS5CXSwkZyhhLG5ldyB2YS5vYih2YS5vYi5UeXBlLnBrLGQsZixlKSksYWgoYSk7ZWxzZXtbLi4uYS5CXTtsZXQgbD1kPT04MDAxfHwhMTsoYz1NYXRoLnBvdyhrLDIpKjVFMyk/Xy51LnNldFRpbWVvdXQoKCk9PnthLnNqKGIsayxsKX0sYyk6YS5zaihiLGssbCl9fTskZz1mdW5jdGlvbihhLGIpe2EuSy5sZW5ndGg+MT9hLnY9YS5LLm1hcChmdW5jdGlvbihjKXtyZXR1cm5bY119KS5jb25jYXQoYS52KTpaZyhhLGIpfTsKWmc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLks7YS5CLmNsZWFyKCk7dmFyIGQ9W107Zm9yKHZhciBlPTA7ZTxhLnYubGVuZ3RoO2UrKyl7dmFyIGY9YS52W2VdLmZpbHRlcihmdW5jdGlvbihoKXt2YXIgaz1YZyh0aGlzLGgpO3JldHVybiBfLnViKGMsZnVuY3Rpb24obCl7cmV0dXJuIF8uc2IoayxsKT49MH0pfSxhKTt6YihkLGYpfWZvcihlPTA7ZTxjLmxlbmd0aDtlKyspd2IoZCxjW2VdKTtmb3IoZT0wO2U8ZC5sZW5ndGg7ZSsrKXtmb3IoZj0wO2Y8YS52Lmxlbmd0aDtmKyspXy54YihhLnZbZl0sZFtlXSk7YS5JLmRlbGV0ZShkW2VdKX1pZihlPWEuTS5nZXQoUWcuRVJST1IpKWZvcihmPTA7ZjxlLmxlbmd0aDtmKyspe2xldCBoPWVbZl07Zm9yKGxldCBrPTA7azxkLmxlbmd0aDtrKyspaChRZy5FUlJPUixkW2tdLGIpfWZvcihkPTA7ZDxjLmxlbmd0aDtkKyspaWYoZT1hLkQuZ2V0KGNbZF0pKWUub25FcnJvcihiKTthLksubGVuZ3RoPTA7UmcoYSl9OwphaD1mdW5jdGlvbihhKXtmb3IoO2Eudi5sZW5ndGg7KXtsZXQgYj1hLnYuc2hpZnQoKS5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIXRoaXMuTGEoYykuaXNMb2FkZWQoKX0sYSk7aWYoYi5sZW5ndGg+MCl7YS5zaihiKTtyZXR1cm59fVJnKGEpfTtQZz1mdW5jdGlvbihhLGIpe2E9YS5NLmdldChiKTtmb3IobGV0IGM9MDthJiZjPGEubGVuZ3RoO2MrKylhW2NdKGIpfTtjaD1mdW5jdGlvbihhLGIsYyxkLGUpe2ZvcihsZXQgZiBvZiBiKWI9YS5MYShmKSwhZS5oYXMoZikmJmQoYikmJihlLmFkZChmKSxjaChhLGIuanx8W10sYyxkLGUpLGMoYikpfTsKZmg9ZnVuY3Rpb24oKXt2YXIgYT17RXU6IkJBVENIIn0sYj1hLmNzc1Jvd0tleXx8IiIsYz1hLktlfHwiIjshYS54SSYmIWImJndpbmRvdyYmd2luZG93Ll9GX2Nzc1Jvd0tleSYmKGI9d2luZG93Ll9GX2Nzc1Jvd0tleSwhYyYmd2luZG93Ll9GX2NvbWJpbmVkU2lnbmF0dXJlJiYoYz13aW5kb3cuX0ZfY29tYmluZWRTaWduYXR1cmUpKTtpZighYS5jc3NSb3dLZXkmJmImJnR5cGVvZiB3aW5kb3cuX0ZfaW5zdGFsbENzcyE9PSJmdW5jdGlvbiIpdGhyb3cgRXJyb3IoIloiKTt2YXIgZD1hLk5KfHxfLmRoLGU9RWUoImJhc2UtanMiKTtiPW5ldyBkKEdiKEZlKCIiLGUpKSxiLGMsITAsITEpO2M9YS5wTHx8ZSYmZS5oYXNBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIik7ZT1hLmxJfHxlJiZlLmdldEF0dHJpYnV0ZSgiY3Jvc3NvcmlnaW4iKTtjJiYoYi5maT1jKTtlJiYoYi5XZz1lKTthLmRpJiYoYi5kaT1hLmRpKTthLmZldGNoUHJpb3JpdHkmJihiLmZldGNoUHJpb3JpdHk9YS5mZXRjaFByaW9yaXR5KTsKdmFyIGY9Xy5WZCgpO2YuWT1iO2YuUnIoITApO18uZWg9YS5FdT09PSJCQVRDSCI/cmY6aD0+UHJvbWlzZS5yZXNvbHZlKGYubG9hZChoKSl9O2loPWZ1bmN0aW9uKGEsYil7Yj1iLmZpbHRlcihjPT4hYS51aChjKSYmIWEuTGEoYykuaXNMb2FkZWQoKSk7Yi5sZW5ndGg+MCYmKGdoKGEsLi4uYiksYS5LLnB1c2goYiksaGgoYSkpfTtqaD1mdW5jdGlvbihhLGIpe3JldHVybiBuZXcgXy5CZigoYyxkKT0+e3ZhciBlPWEuTGEoYik7ZS5pc0xvYWRlZCgpP2MobnVsbCk6KGdlKGUsKCk9PntjKG51bGwpfSksaGUoZSxmPT57dmFyIGg9YEVycm9yIGxvYWRpbmcgJHtifTogJHtmfWA7ZiBpbnN0YW5jZW9mIHZhLm9iJiZmLnVybCYmKGg9YCR7aH0sIHJlcXVlc3RlZCB1cmw6ICR7Zi51cmwudG9TdHJpbmcoKX1gKTtkKEVycm9yKGgpKX0pKX0pfTsKa2g9ZnVuY3Rpb24oYSxiLGMsZD0oKT0+ITAsZT17fSl7Zm9yKGxldCBmIG9mIGIpYj1hLkxhKGYpLCFlW2ZdJiZkKGIpJiYoZVtmXT0hMCxraChhLGIuanx8W10sYyxkLGUpLGMoYikpfTtsaD1mdW5jdGlvbihhLC4uLmIpe2IuZm9yRWFjaChjPT57ZGVsZXRlIGEuRFtjXX0pfTtnaD1mdW5jdGlvbihhLC4uLmIpe2IuZm9yRWFjaChjPT57YS5EW2NdPSEwfSl9OwpoaD1mdW5jdGlvbihhKXtmb3IoO2EuQjxJbmZpbml0eSYmYS5LLmxlbmd0aD4wOyl7bGV0IGI9YS5LLnNoaWZ0KCkuZmlsdGVyKGM9PiFhLkxhKGMpLmlzTG9hZGVkKCkpO2lmKGIubGVuZ3RoPjApe2EuQisrO2xldCBjPSgpPT57YS5CLS07aGgoYSk7Yz0oKT0+e319O18uSWYoYi5tYXAoZj0+amgoYSxmKSkpLnRoZW4oKCk9PntjKCl9KTtsZXQgZD0wLGU9KCk9PntpZigoYS5qIGluc3RhbmNlb2YgTWFwP2Euai5zaXplPjA6T2JqZWN0LmtleXMoYS5qKS5sZW5ndGg+MCkmJiFhLlkuRWIpdGhyb3cgRXJyb3IoIlciKTtmZyhhLlksYixhLnYse1lkOmEuaixvbkVycm9yOihmLGgpPT57dmFyIGs9bWhbZCsrXTtrIT09dm9pZCAwP3NldFRpbWVvdXQoKCk9PntlKCl9LGspOihsaChhLC4uLmIpLGMoKSxiLmZvckVhY2gobD0+e2w9YS5MYShsKTtpZighbC5pc0xvYWRlZCgpKWwub25FcnJvcihuZXcgdmEub2IodmEub2IuVHlwZS5wayxmLGIsaCkpfSkpfX0pfTtlKCl9fX07Cm5oPWZ1bmN0aW9uKGEpe2Euaj09PS0xJiYoYS5qPWEuZGF0YS5yZWR1Y2UoKGIsYyxkKT0+YisoYz8yKipkOjApLDApKTtyZXR1cm4gYS5qfTtfLm9oPWZ1bmN0aW9uKCl7fTtfLnNoPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBwaHx8YSBpbnN0YW5jZW9mIHFofHxhIGluc3RhbmNlb2YgcmgpcmV0dXJuIGE7aWYodHlwZW9mIGEubmV4dD09ImZ1bmN0aW9uIilyZXR1cm4gbmV3IHBoKCgpPT5hKTtpZih0eXBlb2YgYVtTeW1ib2wuaXRlcmF0b3JdPT0iZnVuY3Rpb24iKXJldHVybiBuZXcgcGgoKCk9PmFbU3ltYm9sLml0ZXJhdG9yXSgpKTtpZih0eXBlb2YgYS5iZD09ImZ1bmN0aW9uIilyZXR1cm4gbmV3IHBoKCgpPT5hLmJkKCkpO3Rocm93IEVycm9yKCIkIik7fTtfLnRoPWZ1bmN0aW9uKGEpe18uYWUuY2FsbCh0aGlzKTt0aGlzLkQ9MTt0aGlzLnY9W107dGhpcy5CPTA7dGhpcy5qPVtdO3RoaXMubz17fTt0aGlzLkk9ISFhfTsKdWg9ZnVuY3Rpb24oYSxiLGMpe0dmKGZ1bmN0aW9uKCl7YS5hcHBseShiLGMpfSl9O3ZoPWZ1bmN0aW9uKGEpe3RoaXMuaj1hfTt3aD1mdW5jdGlvbihhKXt0aGlzLmo9YX07eGg9ZnVuY3Rpb24oYSl7dGhpcy5kYXRhPWF9O3loPWZ1bmN0aW9uKGEpe3JldHVybiBhPT09dm9pZCAwfHxhIGluc3RhbmNlb2YgeGg/YTpuZXcgeGgoYSl9O18uemg9ZnVuY3Rpb24oYSl7dGhpcy5qPWF9O0FoPWZ1bmN0aW9uKCl7fTtCaD1mdW5jdGlvbigpe307Q2g9ZnVuY3Rpb24oYSl7dGhpcy5qPWE7dGhpcy5vPW51bGx9O0RoPWZ1bmN0aW9uKGEpe2lmKGEuaj09bnVsbCl0aHJvdyBFcnJvcigiYWEiKTthLmlzQXZhaWxhYmxlKCl8fF8uJGIoRXJyb3IoImFhIikpfTtFaD1mdW5jdGlvbigpe3ZhciBhPW51bGw7dHJ5e2E9Xy51LmxvY2FsU3RvcmFnZXx8bnVsbH1jYXRjaChiKXt9Q2guY2FsbCh0aGlzLGEpfTtGaD1mdW5jdGlvbihhLGIpe3RoaXMubz1hO3RoaXMuaj1iKyI6OiJ9OwpfLkdoPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBFaDtyZXR1cm4gYi5pc0F2YWlsYWJsZSgpP2E/bmV3IEZoKGIsYSk6YjpudWxsfTsKSWg9ZnVuY3Rpb24oYSl7dmFyIGIsYyxkPWEubGVuZ3RoLGU9MDtmb3IoYj0wO2I8ZDtiKyspe3ZhciBmPWEuY2hhckNvZGVBdChiKTtpZigoZiY2NDUxMik9PT01NTI5NiYmYisxPGQpe3ZhciBoPWEuY2hhckNvZGVBdChiKzEpOyhoJjY0NTEyKT09PTU2MzIwJiYoZj02NTUzNisoZi01NTI5Njw8MTApKyhoLTU2MzIwKSxiKyspfWUrPWY8MTI4PzE6ZjwyMDQ4PzI6Zjw2NTUzNj8zOjR9dmFyIGs9bmV3IEhoLnRmKGUpO2ZvcihiPWM9MDtjPGU7YisrKWY9YS5jaGFyQ29kZUF0KGIpLChmJjY0NTEyKT09PTU1Mjk2JiZiKzE8ZCYmKGg9YS5jaGFyQ29kZUF0KGIrMSksKGgmNjQ1MTIpPT09NTYzMjAmJihmPTY1NTM2KyhmLTU1Mjk2PDwxMCkrKGgtNTYzMjApLGIrKykpLGY8MTI4P2tbYysrXT1mOihmPDIwNDg/a1tjKytdPTE5MnxmPj4+NjooZjw2NTUzNj9rW2MrK109MjI0fGY+Pj4xMjooa1tjKytdPTI0MHxmPj4+MTgsa1tjKytdPTEyOHxmPj4+MTImNjMpLGtbYysrXT0xMjh8Zj4+Pgo2JjYzKSxrW2MrK109MTI4fGYmNjMpO3JldHVybiBrfTtKaD1mdW5jdGlvbihhKXtmb3IodmFyIGI9YS5sZW5ndGg7LS1iPj0wOylhW2JdPTB9O0toPWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy5Zcj1hO3RoaXMuVXY9Yjt0aGlzLlR2PWM7dGhpcy54dj1kO3RoaXMuRnk9ZTt0aGlzLmVxPWEmJmEubGVuZ3RofTtMaD1mdW5jdGlvbihhLGIpe3RoaXMuRXA9YTt0aGlzLmxnPTA7dGhpcy56ZT1ifTtNaD1mdW5jdGlvbihhLGIpe2EuT2FbYS5wZW5kaW5nKytdPWImMjU1O2EuT2FbYS5wZW5kaW5nKytdPWI+Pj44JjI1NX07Tmg9ZnVuY3Rpb24oYSxiLGMpe2EuaGI+MTYtYz8oYS5GYnw9Yjw8YS5oYiY2NTUzNSxNaChhLGEuRmIpLGEuRmI9Yj4+MTYtYS5oYixhLmhiKz1jLTE2KTooYS5GYnw9Yjw8YS5oYiY2NTUzNSxhLmhiKz1jKX07T2g9ZnVuY3Rpb24oYSxiLGMpe05oKGEsY1tiKjJdLGNbYioyKzFdKX07ClBoPWZ1bmN0aW9uKGEsYil7dmFyIGM9MDtkbyBjfD1hJjEsYT4+Pj0xLGM8PD0xO3doaWxlKC0tYj4wKTtyZXR1cm4gYz4+PjF9O1FoPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1BcnJheSgxNiksZT0wLGY7Zm9yKGY9MTtmPD0xNTtmKyspZFtmXT1lPWUrY1tmLTFdPDwxO2ZvcihjPTA7Yzw9YjtjKyspZT1hW2MqMisxXSxlIT09MCYmKGFbYyoyXT1QaChkW2VdKyssZSkpfTtSaD1mdW5jdGlvbihhKXt2YXIgYjtmb3IoYj0wO2I8Mjg2O2IrKylhLlFiW2IqMl09MDtmb3IoYj0wO2I8MzA7YisrKWEuUGVbYioyXT0wO2ZvcihiPTA7YjwxOTtiKyspYS5xYltiKjJdPTA7YS5RYls1MTJdPTE7YS5DZD1hLkhnPTA7YS5rYz1hLm1hdGNoZXM9MH07U2g9ZnVuY3Rpb24oYSl7YS5oYj44P01oKGEsYS5GYik6YS5oYj4wJiYoYS5PYVthLnBlbmRpbmcrK109YS5GYik7YS5GYj0wO2EuaGI9MH07ClRoPWZ1bmN0aW9uKGEsYixjKXtTaChhKTtNaChhLGMpO01oKGEsfmMpO0hoLndmKGEuT2EsYS53aW5kb3csYixjLGEucGVuZGluZyk7YS5wZW5kaW5nKz1jfTtVaD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1iKjIsZj1jKjI7cmV0dXJuIGFbZV08YVtmXXx8YVtlXT09PWFbZl0mJmRbYl08PWRbY119O1ZoPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9YS5oZWFwW2NdLGU9Yzw8MTtlPD1hLnhkOyl7ZTxhLnhkJiZVaChiLGEuaGVhcFtlKzFdLGEuaGVhcFtlXSxhLmRlcHRoKSYmZSsrO2lmKFVoKGIsZCxhLmhlYXBbZV0sYS5kZXB0aCkpYnJlYWs7YS5oZWFwW2NdPWEuaGVhcFtlXTtjPWU7ZTw8PTF9YS5oZWFwW2NdPWR9OwpjaT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9MDtpZihhLmtjIT09MCl7ZG97dmFyIGU9YS5PYVthLllnK2QqMl08PDh8YS5PYVthLllnK2QqMisxXTt2YXIgZj1hLk9hW2Eua20rZF07ZCsrO2lmKGU9PT0wKU9oKGEsZixiKTtlbHNle3ZhciBoPVdoW2ZdO09oKGEsaCsyNTYrMSxiKTt2YXIgaz1YaFtoXTtrIT09MCYmKGYtPVloW2hdLE5oKGEsZixrKSk7ZS0tO2g9ZTwyNTY/WmhbZV06WmhbMjU2KyhlPj4+NyldO09oKGEsaCxjKTtrPSRoW2hdO2shPT0wJiYoZS09YmlbaF0sTmgoYSxlLGspKX19d2hpbGUoZDxhLmtjKX1PaChhLDI1NixiKX07CmRpPWZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5FcCxkPWIuemUuWXIsZT1iLnplLmVxLGY9Yi56ZS54dixoLGs9LTE7YS54ZD0wO2EuWGY9NTczO2ZvcihoPTA7aDxmO2grKyljW2gqMl0hPT0wPyhhLmhlYXBbKythLnhkXT1rPWgsYS5kZXB0aFtoXT0wKTpjW2gqMisxXT0wO2Zvcig7YS54ZDwyOyl7dmFyIGw9YS5oZWFwWysrYS54ZF09azwyPysrazowO2NbbCoyXT0xO2EuZGVwdGhbbF09MDthLkNkLS07ZSYmKGEuSGctPWRbbCoyKzFdKX1iLmxnPWs7Zm9yKGg9YS54ZD4+MTtoPj0xO2gtLSlWaChhLGMsaCk7bD1mO2RvIGg9YS5oZWFwWzFdLGEuaGVhcFsxXT1hLmhlYXBbYS54ZC0tXSxWaChhLGMsMSksZD1hLmhlYXBbMV0sYS5oZWFwWy0tYS5YZl09aCxhLmhlYXBbLS1hLlhmXT1kLGNbbCoyXT1jW2gqMl0rY1tkKjJdLGEuZGVwdGhbbF09KGEuZGVwdGhbaF0+PWEuZGVwdGhbZF0/YS5kZXB0aFtoXTphLmRlcHRoW2RdKSsxLGNbaCoyKzFdPWNbZCoyKzFdPWwsYS5oZWFwWzFdPWwrKywKVmgoYSxjLDEpO3doaWxlKGEueGQ+PTIpO2EuaGVhcFstLWEuWGZdPWEuaGVhcFsxXTtoPWIuRXA7bD1iLmxnO2Q9Yi56ZS5ZcjtlPWIuemUuZXE7Zj1iLnplLlV2O3ZhciBtPWIuemUuVHYsbj1iLnplLkZ5LHAscj0wO2ZvcihwPTA7cDw9MTU7cCsrKWEua2RbcF09MDtoW2EuaGVhcFthLlhmXSoyKzFdPTA7Zm9yKGI9YS5YZisxO2I8NTczO2IrKyl7dmFyIHQ9YS5oZWFwW2JdO3A9aFtoW3QqMisxXSoyKzFdKzE7cD5uJiYocD1uLHIrKyk7aFt0KjIrMV09cDtpZighKHQ+bCkpe2Eua2RbcF0rKzt2YXIgdj0wO3Q+PW0mJih2PWZbdC1tXSk7dmFyIHo9aFt0KjJdO2EuQ2QrPXoqKHArdik7ZSYmKGEuSGcrPXoqKGRbdCoyKzFdK3YpKX19aWYociE9PTApe2Rve2ZvcihwPW4tMTthLmtkW3BdPT09MDspcC0tO2Eua2RbcF0tLTthLmtkW3ArMV0rPTI7YS5rZFtuXS0tO3ItPTJ9d2hpbGUocj4wKTtmb3IocD1uO3AhPT0wO3AtLSlmb3IodD1hLmtkW3BdO3QhPT0wOylkPWEuaGVhcFstLWJdLApkPmx8fChoW2QqMisxXSE9PXAmJihhLkNkKz0ocC1oW2QqMisxXSkqaFtkKjJdLGhbZCoyKzFdPXApLHQtLSl9UWgoYyxrLGEua2QpfTtlaT1mdW5jdGlvbihhLGIsYyl7dmFyIGQsZT0tMSxmPWJbMV0saD0wLGs9NyxsPTQ7Zj09PTAmJihrPTEzOCxsPTMpO2JbKGMrMSkqMisxXT02NTUzNTtmb3IoZD0wO2Q8PWM7ZCsrKXt2YXIgbT1mO2Y9YlsoZCsxKSoyKzFdOysraDxrJiZtPT09Znx8KGg8bD9hLnFiW20qMl0rPWg6bSE9PTA/KG0hPT1lJiZhLnFiW20qMl0rKyxhLnFiWzMyXSsrKTpoPD0xMD9hLnFiWzM0XSsrOmEucWJbMzZdKyssaD0wLGU9bSxmPT09MD8oaz0xMzgsbD0zKTptPT09Zj8oaz02LGw9Myk6KGs9NyxsPTQpKX19OwpmaT1mdW5jdGlvbihhLGIsYyl7dmFyIGQsZT0tMSxmPWJbMV0saD0wLGs9NyxsPTQ7Zj09PTAmJihrPTEzOCxsPTMpO2ZvcihkPTA7ZDw9YztkKyspe3ZhciBtPWY7Zj1iWyhkKzEpKjIrMV07aWYoISgrK2g8ayYmbT09PWYpKXtpZihoPGwpe2RvIE9oKGEsbSxhLnFiKTt3aGlsZSgtLWghPT0wKX1lbHNlIG0hPT0wPyhtIT09ZSYmKE9oKGEsbSxhLnFiKSxoLS0pLE9oKGEsMTYsYS5xYiksTmgoYSxoLTMsMikpOmg8PTEwPyhPaChhLDE3LGEucWIpLE5oKGEsaC0zLDMpKTooT2goYSwxOCxhLnFiKSxOaChhLGgtMTEsNykpO2g9MDtlPW07Zj09PTA/KGs9MTM4LGw9Myk6bT09PWY/KGs9NixsPTMpOihrPTcsbD00KX19fTsKZ2k9ZnVuY3Rpb24oYSl7dmFyIGI9NDA5MzYyNDQ0NyxjO2ZvcihjPTA7Yzw9MzE7YysrLGI+Pj49MSlpZihiJjEmJmEuUWJbYyoyXSE9PTApcmV0dXJuIDA7aWYoYS5RYlsxOF0hPT0wfHxhLlFiWzIwXSE9PTB8fGEuUWJbMjZdIT09MClyZXR1cm4gMTtmb3IoYz0zMjtjPDI1NjtjKyspaWYoYS5RYltjKjJdIT09MClyZXR1cm4gMTtyZXR1cm4gMH07aGk9ZnVuY3Rpb24oYSxiLGMpe2EuT2FbYS5ZZythLmtjKjJdPWI+Pj44JjI1NTthLk9hW2EuWWcrYS5rYyoyKzFdPWImMjU1O2EuT2FbYS5rbSthLmtjXT1jJjI1NTthLmtjKys7Yj09PTA/YS5RYltjKjJdKys6KGEubWF0Y2hlcysrLGItLSxhLlFiWyhXaFtjXSsyNTYrMSkqMl0rKyxhLlBlWyhiPDI1Nj9aaFtiXTpaaFsyNTYrKGI+Pj43KV0pKjJdKyspO3JldHVybiBhLmtjPT09YS5BaC0xfTtqaT1mdW5jdGlvbihhLGIpe2EubXNnPWlpW2JdO3JldHVybiBifTsKa2k9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPWEubGVuZ3RoOy0tYj49MDspYVtiXT0wfTtsaT1mdW5jdGlvbihhKXt2YXIgYj1hLnN0YXRlLGM9Yi5wZW5kaW5nO2M+YS56YSYmKGM9YS56YSk7YyE9PTAmJihIaC53ZihhLm91dHB1dCxiLk9hLGIuSmgsYyxhLnFnKSxhLnFnKz1jLGIuSmgrPWMsYS5Fbis9YyxhLnphLT1jLGIucGVuZGluZy09YyxiLnBlbmRpbmc9PT0wJiYoYi5KaD0wKSl9OwpwaT1mdW5jdGlvbihhLGIpe3ZhciBjPWEuVWI+PTA/YS5VYjotMSxkPWEuVi1hLlViLGU9MDtpZihhLmxldmVsPjApe2Eud2EuaWw9PT0yJiYoYS53YS5pbD1naShhKSk7ZGkoYSxhLnBqKTtkaShhLGEuSWkpO2VpKGEsYS5RYixhLnBqLmxnKTtlaShhLGEuUGUsYS5JaS5sZyk7ZGkoYSxhLlRvKTtmb3IoZT0xODtlPj0zJiZhLnFiW21pW2VdKjIrMV09PT0wO2UtLSk7YS5DZCs9MyooZSsxKSs1KzUrNDt2YXIgZj1hLkNkKzMrNz4+PjM7dmFyIGg9YS5IZyszKzc+Pj4zO2g8PWYmJihmPWgpfWVsc2UgZj1oPWQrNTtpZihkKzQ8PWYmJmMhPT0tMSlOaChhLGI/MTowLDMpLFRoKGEsYyxkKTtlbHNlIGlmKGEuc3RyYXRlZ3k9PT00fHxoPT09ZilOaChhLDIrKGI/MTowKSwzKSxjaShhLG5pLG9pKTtlbHNle05oKGEsNCsoYj8xOjApLDMpO2M9YS5wai5sZysxO2Q9YS5JaS5sZysxO2UrPTE7TmgoYSxjLTI1Nyw1KTtOaChhLGQtMSw1KTtOaChhLGUtNCw0KTtmb3IoZj0wO2Y8ZTtmKyspTmgoYSwKYS5xYlttaVtmXSoyKzFdLDMpO2ZpKGEsYS5RYixjLTEpO2ZpKGEsYS5QZSxkLTEpO2NpKGEsYS5RYixhLlBlKX1SaChhKTtiJiZTaChhKTthLlViPWEuVjtsaShhLndhKX07cWk9ZnVuY3Rpb24oYSxiKXthLk9hW2EucGVuZGluZysrXT1ifTtyaT1mdW5jdGlvbihhLGIpe2EuT2FbYS5wZW5kaW5nKytdPWI+Pj44JjI1NTthLk9hW2EucGVuZGluZysrXT1iJjI1NX07CnNpPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5OcSxkPWEuVixlPWEuWWIsZj1hLlNxLGg9YS5WPmEuQmItMjYyP2EuVi0oYS5CYi0yNjIpOjAsaz1hLndpbmRvdyxsPWEuQmUsbT1hLlVhLG49YS5WKzI1OCxwPWtbZCtlLTFdLHI9a1tkK2VdO2EuWWI+PWEuWXAmJihjPj49Mik7Zj5hLmRhJiYoZj1hLmRhKTtkb3t2YXIgdD1iO2lmKGtbdCtlXT09PXImJmtbdCtlLTFdPT09cCYma1t0XT09PWtbZF0mJmtbKyt0XT09PWtbZCsxXSl7ZCs9Mjtmb3IodCsrO2tbKytkXT09PWtbKyt0XSYma1srK2RdPT09a1srK3RdJiZrWysrZF09PT1rWysrdF0mJmtbKytkXT09PWtbKyt0XSYma1srK2RdPT09a1srK3RdJiZrWysrZF09PT1rWysrdF0mJmtbKytkXT09PWtbKyt0XSYma1srK2RdPT09a1srK3RdJiZkPG47KTt0PTI1OC0obi1kKTtkPW4tMjU4O2lmKHQ+ZSl7YS5rZz1iO2U9dDtpZih0Pj1mKWJyZWFrO3A9a1tkK2UtMV07cj1rW2QrZV19fX13aGlsZSgoYj1tW2ImbF0pPmgmJi0tYyE9PTApOwpyZXR1cm4gZTw9YS5kYT9lOmEuZGF9Owp2aT1mdW5jdGlvbihhKXt2YXIgYj1hLkJiLGM7ZG97dmFyIGQ9YS5Lcy1hLmRhLWEuVjtpZihhLlY+PWIrKGItMjYyKSl7SGgud2YoYS53aW5kb3csYS53aW5kb3csYixiLDApO2Eua2ctPWI7YS5WLT1iO2EuVWItPWI7dmFyIGU9Yz1hLmFqO2Rve3ZhciBmPWEuaGVhZFstLWVdO2EuaGVhZFtlXT1mPj1iP2YtYjowfXdoaWxlKC0tYyk7ZT1jPWI7ZG8gZj1hLlVhWy0tZV0sYS5VYVtlXT1mPj1iP2YtYjowO3doaWxlKC0tYyk7ZCs9Yn1pZihhLndhLkRiPT09MClicmVhaztlPWEud2E7Yz1hLndpbmRvdztmPWEuVithLmRhO3ZhciBoPWUuRGI7aD5kJiYoaD1kKTtoPT09MD9jPTA6KGUuRGItPWgsSGgud2YoYyxlLmlucHV0LGUuZmYsaCxmKSxlLnN0YXRlLndyYXA9PT0xP2Uuc2E9dGkoZS5zYSxjLGgsZik6ZS5zdGF0ZS53cmFwPT09MiYmKGUuc2E9dWkoZS5zYSxjLGgsZikpLGUuZmYrPWgsZS5xZis9aCxjPWgpO2EuZGErPWM7aWYoYS5kYSthLnJiPj0zKWZvcihkPWEuVi1hLnJiLGEueGE9CmEud2luZG93W2RdLGEueGE9KGEueGE8PGEud2ReYS53aW5kb3dbZCsxXSkmYS52ZDthLnJiJiYhKGEueGE9KGEueGE8PGEud2ReYS53aW5kb3dbZCszLTFdKSZhLnZkLGEuVWFbZCZhLkJlXT1hLmhlYWRbYS54YV0sYS5oZWFkW2EueGFdPWQsZCsrLGEucmItLSxhLmRhK2EucmI8Myk7KTt9d2hpbGUoYS5kYTwyNjImJmEud2EuRGIhPT0wKX07CndpPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjOzspe2lmKGEuZGE8MjYyKXt2aShhKTtpZihhLmRhPDI2MiYmYj09PTApcmV0dXJuIDE7aWYoYS5kYT09PTApYnJlYWt9Yz0wO2EuZGE+PTMmJihhLnhhPShhLnhhPDxhLndkXmEud2luZG93W2EuViszLTFdKSZhLnZkLGM9YS5VYVthLlYmYS5CZV09YS5oZWFkW2EueGFdLGEuaGVhZFthLnhhXT1hLlYpO2MhPT0wJiZhLlYtYzw9YS5CYi0yNjImJihhLkJhPXNpKGEsYykpO2lmKGEuQmE+PTMpaWYoYz1oaShhLGEuVi1hLmtnLGEuQmEtMyksYS5kYS09YS5CYSxhLkJhPD1hLm9tJiZhLmRhPj0zKXthLkJhLS07ZG8gYS5WKyssYS54YT0oYS54YTw8YS53ZF5hLndpbmRvd1thLlYrMy0xXSkmYS52ZCxhLlVhW2EuViZhLkJlXT1hLmhlYWRbYS54YV0sYS5oZWFkW2EueGFdPWEuVjt3aGlsZSgtLWEuQmEhPT0wKTthLlYrK31lbHNlIGEuVis9YS5CYSxhLkJhPTAsYS54YT1hLndpbmRvd1thLlZdLGEueGE9KGEueGE8PGEud2ReYS53aW5kb3dbYS5WKwoxXSkmYS52ZDtlbHNlIGM9aGkoYSwwLGEud2luZG93W2EuVl0pLGEuZGEtLSxhLlYrKztpZihjJiYocGkoYSwhMSksYS53YS56YT09PTApKXJldHVybiAxfWEucmI9YS5WPDI/YS5WOjI7cmV0dXJuIGI9PT00PyhwaShhLCEwKSxhLndhLnphPT09MD8zOjQpOmEua2MmJihwaShhLCExKSxhLndhLnphPT09MCk/MToyfTsKeGk9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGMsZDs7KXtpZihhLmRhPDI2Mil7dmkoYSk7aWYoYS5kYTwyNjImJmI9PT0wKXJldHVybiAxO2lmKGEuZGE9PT0wKWJyZWFrfWM9MDthLmRhPj0zJiYoYS54YT0oYS54YTw8YS53ZF5hLndpbmRvd1thLlYrMy0xXSkmYS52ZCxjPWEuVWFbYS5WJmEuQmVdPWEuaGVhZFthLnhhXSxhLmhlYWRbYS54YV09YS5WKTthLlliPWEuQmE7YS5Bcj1hLmtnO2EuQmE9MjtjIT09MCYmYS5ZYjxhLm9tJiZhLlYtYzw9YS5CYi0yNjImJihhLkJhPXNpKGEsYyksYS5CYTw9NSYmKGEuc3RyYXRlZ3k9PT0xfHxhLkJhPT09MyYmYS5WLWEua2c+NDA5NikmJihhLkJhPTIpKTtpZihhLlliPj0zJiZhLkJhPD1hLlliKXtkPWEuVithLmRhLTM7Yz1oaShhLGEuVi0xLWEuQXIsYS5ZYi0zKTthLmRhLT1hLlliLTE7YS5ZYi09MjtkbysrYS5WPD1kJiYoYS54YT0oYS54YTw8YS53ZF5hLndpbmRvd1thLlYrMy0xXSkmYS52ZCxhLlVhW2EuViZhLkJlXT1hLmhlYWRbYS54YV0sCmEuaGVhZFthLnhhXT1hLlYpO3doaWxlKC0tYS5ZYiE9PTApO2EuY2Y9MDthLkJhPTI7YS5WKys7aWYoYyYmKHBpKGEsITEpLGEud2EuemE9PT0wKSlyZXR1cm4gMX1lbHNlIGlmKGEuY2Ype2lmKChjPWhpKGEsMCxhLndpbmRvd1thLlYtMV0pKSYmcGkoYSwhMSksYS5WKyssYS5kYS0tLGEud2EuemE9PT0wKXJldHVybiAxfWVsc2UgYS5jZj0xLGEuVisrLGEuZGEtLX1hLmNmJiYoaGkoYSwwLGEud2luZG93W2EuVi0xXSksYS5jZj0wKTthLnJiPWEuVjwyP2EuVjoyO3JldHVybiBiPT09ND8ocGkoYSwhMCksYS53YS56YT09PTA/Mzo0KTphLmtjJiYocGkoYSwhMSksYS53YS56YT09PTApPzE6Mn07CnlpPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjLGQsZSxmPWEud2luZG93Ozspe2lmKGEuZGE8PTI1OCl7dmkoYSk7aWYoYS5kYTw9MjU4JiZiPT09MClyZXR1cm4gMTtpZihhLmRhPT09MClicmVha31hLkJhPTA7aWYoYS5kYT49MyYmYS5WPjAmJihkPWEuVi0xLGM9ZltkXSxjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdKSl7Zm9yKGU9YS5WKzI1ODtjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZkPGU7KTthLkJhPTI1OC0oZS1kKTthLkJhPmEuZGEmJihhLkJhPWEuZGEpfWEuQmE+PTM/KGM9aGkoYSwxLGEuQmEtMyksYS5kYS09YS5CYSxhLlYrPWEuQmEsYS5CYT0wKTooYz1oaShhLDAsYS53aW5kb3dbYS5WXSksYS5kYS0tLGEuVisrKTtpZihjJiYocGkoYSwhMSksYS53YS56YT09PTApKXJldHVybiAxfWEucmI9MDtyZXR1cm4gYj09PTQ/KHBpKGEsCiEwKSxhLndhLnphPT09MD8zOjQpOmEua2MmJihwaShhLCExKSxhLndhLnphPT09MCk/MToyfTt6aT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYzs7KXtpZihhLmRhPT09MCYmKHZpKGEpLGEuZGE9PT0wKSl7aWYoYj09PTApcmV0dXJuIDE7YnJlYWt9YS5CYT0wO2M9aGkoYSwwLGEud2luZG93W2EuVl0pO2EuZGEtLTthLlYrKztpZihjJiYocGkoYSwhMSksYS53YS56YT09PTApKXJldHVybiAxfWEucmI9MDtyZXR1cm4gYj09PTQ/KHBpKGEsITApLGEud2EuemE9PT0wPzM6NCk6YS5rYyYmKHBpKGEsITEpLGEud2EuemE9PT0wKT8xOjJ9O0FpPWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy50dz1hO3RoaXMuRXk9Yjt0aGlzLld5PWM7dGhpcy5EeT1kO3RoaXMua3c9ZX07CkJpPWZ1bmN0aW9uKCl7dGhpcy53YT1udWxsO3RoaXMuc3RhdHVzPTA7dGhpcy5PYT1udWxsO3RoaXMud3JhcD10aGlzLnBlbmRpbmc9dGhpcy5KaD10aGlzLm5jPTA7dGhpcy5xYT1udWxsO3RoaXMuemM9MDt0aGlzLm1ldGhvZD04O3RoaXMuaWc9LTE7dGhpcy5CZT10aGlzLk5uPXRoaXMuQmI9MDt0aGlzLndpbmRvdz1udWxsO3RoaXMuS3M9MDt0aGlzLmhlYWQ9dGhpcy5VYT1udWxsO3RoaXMuU3E9dGhpcy5ZcD10aGlzLnN0cmF0ZWd5PXRoaXMubGV2ZWw9dGhpcy5vbT10aGlzLk5xPXRoaXMuWWI9dGhpcy5kYT10aGlzLmtnPXRoaXMuVj10aGlzLmNmPXRoaXMuQXI9dGhpcy5CYT10aGlzLlViPXRoaXMud2Q9dGhpcy52ZD10aGlzLkxsPXRoaXMuYWo9dGhpcy54YT0wO3RoaXMuUWI9bmV3IEhoLlljKDExNDYpO3RoaXMuUGU9bmV3IEhoLlljKDEyMik7dGhpcy5xYj1uZXcgSGguWWMoNzgpO2tpKHRoaXMuUWIpO2tpKHRoaXMuUGUpO2tpKHRoaXMucWIpO3RoaXMuVG89dGhpcy5JaT0KdGhpcy5waj1udWxsO3RoaXMua2Q9bmV3IEhoLlljKDE2KTt0aGlzLmhlYXA9bmV3IEhoLlljKDU3Myk7a2kodGhpcy5oZWFwKTt0aGlzLlhmPXRoaXMueGQ9MDt0aGlzLmRlcHRoPW5ldyBIaC5ZYyg1NzMpO2tpKHRoaXMuZGVwdGgpO3RoaXMuaGI9dGhpcy5GYj10aGlzLnJiPXRoaXMubWF0Y2hlcz10aGlzLkhnPXRoaXMuQ2Q9dGhpcy5ZZz10aGlzLmtjPXRoaXMuQWg9dGhpcy5rbT0wfTsKRGk9ZnVuY3Rpb24oYSxiKXtpZighYXx8IWEuc3RhdGV8fGI+NXx8YjwwKXJldHVybiBhP2ppKGEsLTIpOi0yO3ZhciBjPWEuc3RhdGU7aWYoIWEub3V0cHV0fHwhYS5pbnB1dCYmYS5EYiE9PTB8fGMuc3RhdHVzPT09NjY2JiZiIT09NClyZXR1cm4gamkoYSxhLnphPT09MD8tNTotMik7Yy53YT1hO3ZhciBkPWMuaWc7Yy5pZz1iO2lmKGMuc3RhdHVzPT09NDIpaWYoYy53cmFwPT09MilhLnNhPTAscWkoYywzMSkscWkoYywxMzkpLHFpKGMsOCksYy5xYT8ocWkoYywoYy5xYS50ZXh0PzE6MCkrKGMucWEuYmU/MjowKSsoYy5xYS5leHRyYT80OjApKyhjLnFhLm5hbWU/ODowKSsoYy5xYS5jb21tZW50PzE2OjApKSxxaShjLGMucWEudGltZSYyNTUpLHFpKGMsYy5xYS50aW1lPj44JjI1NSkscWkoYyxjLnFhLnRpbWU+PjE2JjI1NSkscWkoYyxjLnFhLnRpbWU+PjI0JjI1NSkscWkoYyxjLmxldmVsPT09OT8yOmMuc3RyYXRlZ3k+PTJ8fGMubGV2ZWw8Mj80OjApLHFpKGMsYy5xYS5vcyYyNTUpLApjLnFhLmV4dHJhJiZjLnFhLmV4dHJhLmxlbmd0aCYmKHFpKGMsYy5xYS5leHRyYS5sZW5ndGgmMjU1KSxxaShjLGMucWEuZXh0cmEubGVuZ3RoPj44JjI1NSkpLGMucWEuYmUmJihhLnNhPXVpKGEuc2EsYy5PYSxjLnBlbmRpbmcsMCkpLGMuemM9MCxjLnN0YXR1cz02OSk6KHFpKGMsMCkscWkoYywwKSxxaShjLDApLHFpKGMsMCkscWkoYywwKSxxaShjLGMubGV2ZWw9PT05PzI6Yy5zdHJhdGVneT49Mnx8Yy5sZXZlbDwyPzQ6MCkscWkoYywzKSxjLnN0YXR1cz0xMTMpO2Vsc2V7dmFyIGU9OCsoYy5Obi04PDw0KTw8ODtlfD0oYy5zdHJhdGVneT49Mnx8Yy5sZXZlbDwyPzA6Yy5sZXZlbDw2PzE6Yy5sZXZlbD09PTY/MjozKTw8NjtjLlYhPT0wJiYoZXw9MzIpO2Muc3RhdHVzPTExMztyaShjLGUrKDMxLWUlMzEpKTtjLlYhPT0wJiYocmkoYyxhLnNhPj4+MTYpLHJpKGMsYS5zYSY2NTUzNSkpO2Euc2E9MX1pZihjLnN0YXR1cz09PTY5KWlmKGMucWEuZXh0cmEpe2ZvcihlPWMucGVuZGluZztjLnpjPAooYy5xYS5leHRyYS5sZW5ndGgmNjU1MzUpJiYoYy5wZW5kaW5nIT09Yy5uY3x8KGMucWEuYmUmJmMucGVuZGluZz5lJiYoYS5zYT11aShhLnNhLGMuT2EsYy5wZW5kaW5nLWUsZSkpLGxpKGEpLGU9Yy5wZW5kaW5nLGMucGVuZGluZyE9PWMubmMpKTspcWkoYyxjLnFhLmV4dHJhW2MuemNdJjI1NSksYy56YysrO2MucWEuYmUmJmMucGVuZGluZz5lJiYoYS5zYT11aShhLnNhLGMuT2EsYy5wZW5kaW5nLWUsZSkpO2MuemM9PT1jLnFhLmV4dHJhLmxlbmd0aCYmKGMuemM9MCxjLnN0YXR1cz03Myl9ZWxzZSBjLnN0YXR1cz03MztpZihjLnN0YXR1cz09PTczKWlmKGMucWEubmFtZSl7ZT1jLnBlbmRpbmc7ZG97aWYoYy5wZW5kaW5nPT09Yy5uYyYmKGMucWEuYmUmJmMucGVuZGluZz5lJiYoYS5zYT11aShhLnNhLGMuT2EsYy5wZW5kaW5nLWUsZSkpLGxpKGEpLGU9Yy5wZW5kaW5nLGMucGVuZGluZz09PWMubmMpKXt2YXIgZj0xO2JyZWFrfWY9Yy56YzxjLnFhLm5hbWUubGVuZ3RoP2MucWEubmFtZS5jaGFyQ29kZUF0KGMuemMrKykmCjI1NTowO3FpKGMsZil9d2hpbGUoZiE9PTApO2MucWEuYmUmJmMucGVuZGluZz5lJiYoYS5zYT11aShhLnNhLGMuT2EsYy5wZW5kaW5nLWUsZSkpO2Y9PT0wJiYoYy56Yz0wLGMuc3RhdHVzPTkxKX1lbHNlIGMuc3RhdHVzPTkxO2lmKGMuc3RhdHVzPT09OTEpaWYoYy5xYS5jb21tZW50KXtlPWMucGVuZGluZztkb3tpZihjLnBlbmRpbmc9PT1jLm5jJiYoYy5xYS5iZSYmYy5wZW5kaW5nPmUmJihhLnNhPXVpKGEuc2EsYy5PYSxjLnBlbmRpbmctZSxlKSksbGkoYSksZT1jLnBlbmRpbmcsYy5wZW5kaW5nPT09Yy5uYykpe2Y9MTticmVha31mPWMuemM8Yy5xYS5jb21tZW50Lmxlbmd0aD9jLnFhLmNvbW1lbnQuY2hhckNvZGVBdChjLnpjKyspJjI1NTowO3FpKGMsZil9d2hpbGUoZiE9PTApO2MucWEuYmUmJmMucGVuZGluZz5lJiYoYS5zYT11aShhLnNhLGMuT2EsYy5wZW5kaW5nLWUsZSkpO2Y9PT0wJiYoYy5zdGF0dXM9MTAzKX1lbHNlIGMuc3RhdHVzPTEwMztjLnN0YXR1cz09PTEwMyYmCihjLnFhLmJlPyhjLnBlbmRpbmcrMj5jLm5jJiZsaShhKSxjLnBlbmRpbmcrMjw9Yy5uYyYmKHFpKGMsYS5zYSYyNTUpLHFpKGMsYS5zYT4+OCYyNTUpLGEuc2E9MCxjLnN0YXR1cz0xMTMpKTpjLnN0YXR1cz0xMTMpO2lmKGMucGVuZGluZyE9PTApe2lmKGxpKGEpLGEuemE9PT0wKXJldHVybiBjLmlnPS0xLDB9ZWxzZSBpZihhLkRiPT09MCYmKGI8PDEpLShiPjQ/OTowKTw9KGQ8PDEpLShkPjQ/OTowKSYmYiE9PTQpcmV0dXJuIGppKGEsLTUpO2lmKGMuc3RhdHVzPT09NjY2JiZhLkRiIT09MClyZXR1cm4gamkoYSwtNSk7aWYoYS5EYiE9PTB8fGMuZGEhPT0wfHxiIT09MCYmYy5zdGF0dXMhPT02NjYpe2Q9Yy5zdHJhdGVneT09PTI/emkoYyxiKTpjLnN0cmF0ZWd5PT09Mz95aShjLGIpOkNpW2MubGV2ZWxdLmt3KGMsYik7aWYoZD09PTN8fGQ9PT00KWMuc3RhdHVzPTY2NjtpZihkPT09MXx8ZD09PTMpcmV0dXJuIGEuemE9PT0wJiYoYy5pZz0tMSksMDtpZihkPT09MiYmKGI9PT0xPwooTmgoYywyLDMpLE9oKGMsMjU2LG5pKSxjLmhiPT09MTY/KE1oKGMsYy5GYiksYy5GYj0wLGMuaGI9MCk6Yy5oYj49OCYmKGMuT2FbYy5wZW5kaW5nKytdPWMuRmImMjU1LGMuRmI+Pj04LGMuaGItPTgpKTpiIT09NSYmKE5oKGMsMCwzKSxUaChjLDAsMCksYj09PTMmJihraShjLmhlYWQpLGMuZGE9PT0wJiYoYy5WPTAsYy5VYj0wLGMucmI9MCkpKSxsaShhKSxhLnphPT09MCkpcmV0dXJuIGMuaWc9LTEsMH1pZihiIT09NClyZXR1cm4gMDtpZihjLndyYXA8PTApcmV0dXJuIDE7Yy53cmFwPT09Mj8ocWkoYyxhLnNhJjI1NSkscWkoYyxhLnNhPj44JjI1NSkscWkoYyxhLnNhPj4xNiYyNTUpLHFpKGMsYS5zYT4+MjQmMjU1KSxxaShjLGEucWYmMjU1KSxxaShjLGEucWY+PjgmMjU1KSxxaShjLGEucWY+PjE2JjI1NSkscWkoYyxhLnFmPj4yNCYyNTUpKToocmkoYyxhLnNhPj4+MTYpLHJpKGMsYS5zYSY2NTUzNSkpO2xpKGEpO2Mud3JhcD4wJiYoYy53cmFwPS1jLndyYXApO3JldHVybiBjLnBlbmRpbmchPT0KMD8wOjF9OwpFaT1mdW5jdGlvbihhKXtpZighKHRoaXMgaW5zdGFuY2VvZiBFaSkpcmV0dXJuIG5ldyBFaShhKTthPXRoaXMub3B0aW9ucz1IaC5hc3NpZ24oe2xldmVsOi0xLG1ldGhvZDo4LGNodW5rU2l6ZToxNjM4NCx3aW5kb3dCaXRzOjE1LG1lbUxldmVsOjgsc3RyYXRlZ3k6MCx0bzoiIn0sYXx8e30pO2EucmF3JiZhLndpbmRvd0JpdHM+MD9hLndpbmRvd0JpdHM9LWEud2luZG93Qml0czphLmd6aXAmJmEud2luZG93Qml0cz4wJiZhLndpbmRvd0JpdHM8MTYmJihhLndpbmRvd0JpdHMrPTE2KTt0aGlzLmVycj0wO3RoaXMubXNnPSIiO3RoaXMuZW5kZWQ9ITE7dGhpcy5jaHVua3M9W107dGhpcy53YT1uZXcgRmk7dGhpcy53YS56YT0wO3ZhciBiPXRoaXMud2E7dmFyIGM9YS5sZXZlbCxkPWEubWV0aG9kLGU9YS53aW5kb3dCaXRzLGY9YS5tZW1MZXZlbCxoPWEuc3RyYXRlZ3k7aWYoYil7dmFyIGs9MTtjPT09LTEmJihjPTYpO2U8MD8oaz0wLGU9LWUpOmU+MTUmJihrPTIsZS09MTYpO2lmKGY8CjF8fGY+OXx8ZCE9PTh8fGU8OHx8ZT4xNXx8YzwwfHxjPjl8fGg8MHx8aD40KWI9amkoYiwtMik7ZWxzZXtlPT09OCYmKGU9OSk7dmFyIGw9bmV3IEJpO2Iuc3RhdGU9bDtsLndhPWI7bC53cmFwPWs7bC5xYT1udWxsO2wuTm49ZTtsLkJiPTE8PGwuTm47bC5CZT1sLkJiLTE7bC5MbD1mKzc7bC5haj0xPDxsLkxsO2wudmQ9bC5hai0xO2wud2Q9fn4oKGwuTGwrMy0xKS8zKTtsLndpbmRvdz1uZXcgSGgudGYobC5CYioyKTtsLmhlYWQ9bmV3IEhoLlljKGwuYWopO2wuVWE9bmV3IEhoLlljKGwuQmIpO2wuQWg9MTw8Zis2O2wubmM9bC5BaCo0O2wuT2E9bmV3IEhoLnRmKGwubmMpO2wuWWc9bC5BaDtsLmttPTMqbC5BaDtsLmxldmVsPWM7bC5zdHJhdGVneT1oO2wubWV0aG9kPWQ7aWYoYiYmYi5zdGF0ZSl7Yi5xZj1iLkVuPTA7Yi5pbD0yO2M9Yi5zdGF0ZTtjLnBlbmRpbmc9MDtjLkpoPTA7Yy53cmFwPDAmJihjLndyYXA9LWMud3JhcCk7Yy5zdGF0dXM9Yy53cmFwPzQyOjExMztiLnNhPQpjLndyYXA9PT0yPzA6MTtjLmlnPTA7aWYoIUdpKXtkPUFycmF5KDE2KTtmb3IoZj1oPTA7ZjwyODtmKyspZm9yKFloW2ZdPWgsZT0wO2U8MTw8WGhbZl07ZSsrKVdoW2grK109ZjtXaFtoLTFdPWY7Zm9yKGY9aD0wO2Y8MTY7ZisrKWZvcihiaVtmXT1oLGU9MDtlPDE8PCRoW2ZdO2UrKylaaFtoKytdPWY7Zm9yKGg+Pj03O2Y8MzA7ZisrKWZvcihiaVtmXT1oPDw3LGU9MDtlPDE8PCRoW2ZdLTc7ZSsrKVpoWzI1NitoKytdPWY7Zm9yKGU9MDtlPD0xNTtlKyspZFtlXT0wO2ZvcihlPTA7ZTw9MTQzOyluaVtlKjIrMV09OCxlKyssZFs4XSsrO2Zvcig7ZTw9MjU1OyluaVtlKjIrMV09OSxlKyssZFs5XSsrO2Zvcig7ZTw9Mjc5OyluaVtlKjIrMV09NyxlKyssZFs3XSsrO2Zvcig7ZTw9Mjg3OyluaVtlKjIrMV09OCxlKyssZFs4XSsrO1FoKG5pLDI4NyxkKTtmb3IoZT0wO2U8MzA7ZSsrKW9pW2UqMisxXT01LG9pW2UqMl09UGgoZSw1KTtIaT1uZXcgS2gobmksWGgsMjU3LDI4NiwxNSk7SWk9Cm5ldyBLaChvaSwkaCwwLDMwLDE1KTtKaT1uZXcgS2goW10sS2ksMCwxOSw3KTtHaT0hMH1jLnBqPW5ldyBMaChjLlFiLEhpKTtjLklpPW5ldyBMaChjLlBlLElpKTtjLlRvPW5ldyBMaChjLnFiLEppKTtjLkZiPTA7Yy5oYj0wO1JoKGMpO2M9MH1lbHNlIGM9amkoYiwtMik7Yz09PTAmJihiPWIuc3RhdGUsYi5Lcz0yKmIuQmIsa2koYi5oZWFkKSxiLm9tPUNpW2IubGV2ZWxdLkV5LGIuWXA9Q2lbYi5sZXZlbF0udHcsYi5TcT1DaVtiLmxldmVsXS5XeSxiLk5xPUNpW2IubGV2ZWxdLkR5LGIuVj0wLGIuVWI9MCxiLmRhPTAsYi5yYj0wLGIuQmE9Yi5ZYj0yLGIuY2Y9MCxiLnhhPTApO2I9Y319ZWxzZSBiPS0yO2lmKGIhPT0wKXRocm93IEVycm9yKGlpW2JdKTthLmhlYWRlciYmKGI9dGhpcy53YSkmJmIuc3RhdGUmJmIuc3RhdGUud3JhcD09PTImJihiLnN0YXRlLnFhPWEuaGVhZGVyKTtpZihhLmRpY3Rpb25hcnkpe3ZhciBtO3R5cGVvZiBhLmRpY3Rpb25hcnk9PT0ic3RyaW5nIj9tPQpJaChhLmRpY3Rpb25hcnkpOkxpLmNhbGwoYS5kaWN0aW9uYXJ5KT09PSJbb2JqZWN0IEFycmF5QnVmZmVyXSI/bT1uZXcgVWludDhBcnJheShhLmRpY3Rpb25hcnkpOm09YS5kaWN0aW9uYXJ5O2E9dGhpcy53YTtmPW07aD1mLmxlbmd0aDtpZihhJiZhLnN0YXRlKWlmKG09YS5zdGF0ZSxiPW0ud3JhcCxiPT09Mnx8Yj09PTEmJm0uc3RhdHVzIT09NDJ8fG0uZGEpYj0tMjtlbHNle2I9PT0xJiYoYS5zYT10aShhLnNhLGYsaCwwKSk7bS53cmFwPTA7aD49bS5CYiYmKGI9PT0wJiYoa2kobS5oZWFkKSxtLlY9MCxtLlViPTAsbS5yYj0wKSxjPW5ldyBIaC50ZihtLkJiKSxIaC53ZihjLGYsaC1tLkJiLG0uQmIsMCksZj1jLGg9bS5CYik7Yz1hLkRiO2Q9YS5mZjtlPWEuaW5wdXQ7YS5EYj1oO2EuZmY9MDthLmlucHV0PWY7Zm9yKHZpKG0pO20uZGE+PTM7KXtmPW0uVjtoPW0uZGEtMjtkbyBtLnhhPShtLnhhPDxtLndkXm0ud2luZG93W2YrMy0xXSkmbS52ZCxtLlVhW2YmbS5CZV09bS5oZWFkW20ueGFdLAptLmhlYWRbbS54YV09ZixmKys7d2hpbGUoLS1oKTttLlY9ZjttLmRhPTI7dmkobSl9bS5WKz1tLmRhO20uVWI9bS5WO20ucmI9bS5kYTttLmRhPTA7bS5CYT1tLlliPTI7bS5jZj0wO2EuZmY9ZDthLmlucHV0PWU7YS5EYj1jO20ud3JhcD1iO2I9MH1lbHNlIGI9LTI7aWYoYiE9PTApdGhyb3cgRXJyb3IoaWlbYl0pO3RoaXMuTUg9ITB9fTtNaT1mdW5jdGlvbihhLGIpe2I9PT0wJiYoYS5yZXN1bHQ9YS5vcHRpb25zLnRvPT09InN0cmluZyI/YS5jaHVua3Muam9pbigiIik6SGguTXAoYS5jaHVua3MpKTthLmNodW5rcz1bXTthLmVycj1iO2EubXNnPWEud2EubXNnfTtfLk5pPWZ1bmN0aW9uKGEpe3ZhciBiPWJ8fHt9O2IuZ3ppcD0hMDtiPW5ldyBFaShiKTtiLnB1c2goYSwhMCk7aWYoYi5lcnIpdGhyb3cgYi5tc2d8fGlpW2IuZXJyXTtyZXR1cm4gYi5yZXN1bHR9OwpfLk9pPWZ1bmN0aW9uKGEsYil7Yi5sZW5ndGg+MT9hW2JbMF1dPWJbMV06Yi5sZW5ndGg9PT0xJiZPYmplY3QuYXNzaWduKGEsYlswXSl9O18uUWk9ZnVuY3Rpb24oLi4uYSl7Xy5PaShfLlBpLGFyZ3VtZW50cyl9O18udz1mdW5jdGlvbihhLGIpe3JldHVybiBhIGluIF8uUGk/Xy5QaVthXTpifTtfLlJpPWZ1bmN0aW9uKGEpe3ZhciBiPV8uUGkuRVhQRVJJTUVOVF9GTEFHUztyZXR1cm4gYj9iW2FdOnZvaWQgMH07VGk9ZnVuY3Rpb24oYSl7U2kuZm9yRWFjaChiPT5iKGEpKX07Xy5WaT1mdW5jdGlvbihhKXtyZXR1cm4gYSYmd2luZG93Lnl0ZXJyP2Z1bmN0aW9uKCl7dHJ5e3JldHVybiBhLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1jYXRjaChiKXtfLlVpKGIpfX06YX07Cl8uVWk9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5zYSgieXQubG9nZ2luZy5lcnJvcnMubG9nIik7Yj9iKGEsIkVSUk9SIix2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwKTooYj1fLncoIkVSUk9SUyIsW10pLGIucHVzaChbYSwiRVJST1IiLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDBdKSxfLlFpKCJFUlJPUlMiLGIpKTtUaShhKX07Xy5XaT1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPV8uc2EoInl0LmxvZ2dpbmcuZXJyb3JzLmxvZyIpO2Y/ZihhLCJXQVJOSU5HIixiLGMsZCx2b2lkIDAsZSk6KGY9Xy53KCJFUlJPUlMiLFtdKSxmLnB1c2goW2EsIldBUk5JTkciLGIsYyxkLHZvaWQgMCxlXSksXy5RaSgiRVJST1JTIixmKSl9OwpZaT1mdW5jdGlvbihhLGIpe2I9YS5zcGxpdChiKTt2YXIgYz17fTtmb3IobGV0IGY9MCxoPWIubGVuZ3RoO2Y8aDtmKyspe2xldCBrPWJbZl0uc3BsaXQoIj0iKTtpZihrLmxlbmd0aD09PTEmJmtbMF18fGsubGVuZ3RoPT09Mil0cnl7bGV0IGw9WGkoa1swXXx8IiIpLG09WGkoa1sxXXx8IiIpO2lmKGwgaW4gYyl7bGV0IG49Y1tsXTtBcnJheS5pc0FycmF5KG4pP3piKG4sbSk6Y1tsXT1bbixtXX1lbHNlIGNbbF09bX1jYXRjaChsKXt2YXIgZD1sLGU9a1swXTtsZXQgbT1TdHJpbmcoWWkpO2QuYXJncz1be2tleTplLHZhbHVlOmtbMV0scXVlcnk6YSxtZXRob2Q6Wmk9PT1tPyJ1bmNoYW5nZWQiOm19XTskaS5oYXNPd25Qcm9wZXJ0eShlKXx8Xy5XaShkKX19cmV0dXJuIGN9Owphaj1mdW5jdGlvbihhKXt2YXIgYj1bXTtvZChhLChjLGQpPT57dmFyIGU9ZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhkKSk7Yz1BcnJheS5pc0FycmF5KGMpP2M6W2NdO18udGIoYyxmPT57Zj09IiI/Yi5wdXNoKGUpOmIucHVzaChgJHtlfT0ke2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoZikpfWApfSl9KTtyZXR1cm4gYi5qb2luKCImIil9O18uYmo9ZnVuY3Rpb24oYSl7YS5jaGFyQXQoMCk9PT0iPyImJihhPWEuc3Vic3RyaW5nKDEpKTtyZXR1cm4gWWkoYSwiJiIpfTtkaj1mdW5jdGlvbihhLGIpe3JldHVybiBjaihhLGJ8fHt9LCEwKX07Xy5laj1mdW5jdGlvbihhLGIpe3JldHVybiBjaihhLGJ8fHt9LCExKX07CmNqPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLnNwbGl0KCIjIiwyKTthPWRbMF07ZD1kLmxlbmd0aD4xPyIjIitkWzFdOiIiO3ZhciBlPWEuc3BsaXQoIj8iLDIpO2E9ZVswXTtlPV8uYmooZVsxXXx8IiIpO2ZvcihsZXQgZiBpbiBiKSFjJiZlIT09bnVsbCYmZiBpbiBlfHwoZVtmXT1iW2ZdKTtyZXR1cm4gXy5XYihhLGUpK2R9O18uZmo9ZnVuY3Rpb24oYSl7aWYoIWIpdmFyIGI9d2luZG93LmxvY2F0aW9uLmhyZWY7dmFyIGM9Xy5NYihhKVsxXXx8bnVsbCxkPV8uUGIoYSk7YyYmZD8oYT1fLk1iKGEpLGI9Xy5NYihiKSxhPWFbM109PWJbM10mJmFbMV09PWJbMV0mJmFbNF09PWJbNF0pOmE9ZD9fLlBiKGIpPT09ZCYmKE51bWJlcihfLk1iKGIpWzRdfHxudWxsKXx8bnVsbCk9PT0oTnVtYmVyKF8uTWIoYSlbNF18fG51bGwpfHxudWxsKTohMDtyZXR1cm4gYX07WGk9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJmEubWF0Y2goZ2opP2E6Xy5IYihhKX07Cl8ubGo9ZnVuY3Rpb24oYT1fLnNhKCJ5dC5hZHMuYmlzY290dGkubGFzdElkXyIpfHwiIil7dmFyIGI9aGosYz1PYmplY3QsZD1jLmFzc2lnbjthOnt0cnl7dmFyIGU9Yi5qLnRvcC5sb2NhdGlvbi5ocmVmfWNhdGNoKEEpe2U9MjticmVhayBhfWU9ZT9lPT09Yi5vLmxvY2F0aW9uLmhyZWY/MDoxOjJ9ZT17ZHQ6aWosZmxhc2g6IjAiLGZybTplfTt0cnl7ZS51X3R6PS0obmV3IERhdGUpLmdldFRpbWV6b25lT2Zmc2V0KCk7dHJ5e3ZhciBmPWpqLmhpc3RvcnkubGVuZ3RofWNhdGNoKEEpe2Y9MH1lLnVfaGlzPWY7ZS51X2g9amouc2NyZWVuPy5oZWlnaHQ7ZS51X3c9amouc2NyZWVuPy53aWR0aDtlLnVfYWg9amouc2NyZWVuPy5hdmFpbEhlaWdodDtlLnVfYXc9amouc2NyZWVuPy5hdmFpbFdpZHRoO2UudV9jZD1qai5zY3JlZW4/LmNvbG9yRGVwdGh9Y2F0Y2goQSl7fWY9Yi5qO3RyeXt2YXIgaD1mLnNjcmVlblg7dmFyIGs9Zi5zY3JlZW5ZfWNhdGNoKEEpe310cnl7dmFyIGw9Zi5vdXRlcldpZHRoOwp2YXIgbT1mLm91dGVySGVpZ2h0fWNhdGNoKEEpe310cnl7dmFyIG49Zi5pbm5lcldpZHRoO3ZhciBwPWYuaW5uZXJIZWlnaHR9Y2F0Y2goQSl7fXRyeXt2YXIgcj1mLnNjcmVlbkxlZnQ7dmFyIHQ9Zi5zY3JlZW5Ub3B9Y2F0Y2goQSl7fXRyeXtuPWYuaW5uZXJXaWR0aCxwPWYuaW5uZXJIZWlnaHR9Y2F0Y2goQSl7fXRyeXt2YXIgdj1mLnNjcmVlbi5hdmFpbFdpZHRoO3ZhciB6PWYuc2NyZWVuLmF2YWlsVG9wfWNhdGNoKEEpe31oPVtyLHQsaCxrLHYseixsLG0sbixwXTt0cnl7dmFyIEU9Xy55ZChiLmoudG9wfHx3aW5kb3cpLnJvdW5kKCl9Y2F0Y2goQSl7RT1uZXcgXy5uZCgtMTIyNDU5MzMsLTEyMjQ1OTMzKX1sPUU7RT1uZXcga2o7IlNWR0VsZW1lbnQiaW4gXy51JiYiY3JlYXRlRWxlbWVudE5TImluIF8udS5kb2N1bWVudCYmRS5zZXQoMCk7az1tZCgpO2tbImFsbG93LXRvcC1uYXZpZ2F0aW9uLWJ5LXVzZXItYWN0aXZhdGlvbiJdJiZFLnNldCgxKTtrWyJhbGxvdy1wb3B1cHMtdG8tZXNjYXBlLXNhbmRib3giXSYmCkUuc2V0KDIpO18udS5jcnlwdG8mJl8udS5jcnlwdG8uc3VidGxlJiZFLnNldCgzKTsiVGV4dERlY29kZXIiaW4gXy51JiYiVGV4dEVuY29kZXIiaW4gXy51JiZFLnNldCg0KTtFPW5oKEUpO2s9bC5oZWlnaHQ7bD1sLndpZHRoO2g9aC5qb2luKCk7Yj1iLm87Yz1kLmNhbGwoYyxlLHtiYzpFLGJpaDprLGJpdzpsLGJyZGltOmgsdmlzOmIucHJlcmVuZGVyaW5nPzM6e3Zpc2libGU6MSxoaWRkZW46MixwcmVyZW5kZXI6MyxwcmV2aWV3OjQsdW5sb2FkZWQ6NSwiIjowfVtiLnZpc2liaWxpdHlTdGF0ZXx8Yi53ZWJraXRWaXNpYmlsaXR5U3RhdGV8fGIubW96VmlzaWJpbGl0eVN0YXRlfHwiIl0/PzAsd2dsOiEhamouV2ViR0xSZW5kZXJpbmdDb250ZXh0fSk7Yy5jYV90eXBlPSJpbWFnZSI7YSYmKGMuYmlkPWEpO3JldHVybiBjfTtfLm1qPWZ1bmN0aW9uKGEsYil7dHlwZW9mIGE9PT0iZnVuY3Rpb24iJiYoYT1fLlZpKGEpKTtyZXR1cm4gd2luZG93LnNldFRpbWVvdXQoYSxiKX07Cm9qPWZ1bmN0aW9uKCl7aWYoIW5qKXJldHVybiBudWxsO3ZhciBhPW5qKCk7cmV0dXJuIm9wZW4iaW4gYT9hOm51bGx9O18ucWo9ZnVuY3Rpb24oYSl7c3dpdGNoKF8ucGooYSkpe2Nhc2UgMjAwOmNhc2UgMjAxOmNhc2UgMjAyOmNhc2UgMjAzOmNhc2UgMjA0OmNhc2UgMjA1OmNhc2UgMjA2OmNhc2UgMzA0OnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fTtfLnBqPWZ1bmN0aW9uKGEpe3JldHVybiBhJiYic3RhdHVzImluIGE/YS5zdGF0dXM6LTF9O18ueD1mdW5jdGlvbihhLGIpe2E9Xy5yaihhLGIpO3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmciJiZhPT09ImZhbHNlIj8hMTohIWF9O18uc2o9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gTnVtYmVyKF8ucmooYSxiKXx8MCl9O18udGo9ZnVuY3Rpb24oYSl7YT1fLnJqKGEpO3JldHVybiBhIT09dm9pZCAwP1N0cmluZyhhKToiIn07Cl8ucmo9ZnVuY3Rpb24oYSxiKXthPV8udygiRVhQRVJJTUVOVF9GTEFHUyIse30pW2FdO3JldHVybiBhIT09dm9pZCAwP2E6Yn07Xy51aj1mdW5jdGlvbigpe3ZhciBhPVtdLGI9Xy53KCJFWFBFUklNRU5UU19GT1JDRURfRkxBR1MiLHt9KTtmb3IodmFyIGMgb2YgT2JqZWN0LmtleXMoYikpYS5wdXNoKHtrZXk6Yyx2YWx1ZTpTdHJpbmcoYltjXSl9KTtjPV8udygiRVhQRVJJTUVOVF9GTEFHUyIse30pO2ZvcihsZXQgZCBvZiBPYmplY3Qua2V5cyhjKSlkLnN0YXJ0c1dpdGgoImZvcmNlXyIpJiZiW2RdPT09dm9pZCAwJiZhLnB1c2goe2tleTpkLHZhbHVlOlN0cmluZyhjW2RdKX0pO3JldHVybiBhfTsKeGo9ZnVuY3Rpb24oYSxiLGM9IkdFVCIsZD0iIixlLGYsaCxrPSExLGwpe3ZhciBtPW9qKCk7aWYoIW0pcmV0dXJuIG51bGw7dmFyIG49KCk9PnsobSYmInJlYWR5U3RhdGUiaW4gbT9tLnJlYWR5U3RhdGU6MCk9PT00JiZiJiZfLlZpKGIpKG0pfTsib25sb2FkZW5kImluIG0/bS5hZGRFdmVudExpc3RlbmVyKCJsb2FkZW5kIixuLCExKTptLm9ucmVhZHlzdGF0ZWNoYW5nZT1uO18ueCgiZGVidWdfZm9yd2FyZF93ZWJfcXVlcnlfcGFyYW1ldGVycyIpJiYoYT12aihhKSk7bS5vcGVuKGMsYSwhMCk7ZiYmKG0ucmVzcG9uc2VUeXBlPWYpO2gmJihtLndpdGhDcmVkZW50aWFscz0hMCk7Yz1jPT09IlBPU1QiJiYod2luZG93LkZvcm1EYXRhPT09dm9pZCAwfHwhKGQgaW5zdGFuY2VvZiBGb3JtRGF0YSkpO2lmKGU9d2ooYSxlKSlmb3IobGV0IHAgaW4gZSltLnNldFJlcXVlc3RIZWFkZXIocCxlW3BdKSwiY29udGVudC10eXBlIj09PXAudG9Mb3dlckNhc2UoKSYmKGM9ITEpO2MmJm0uc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwKImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpO2wmJiJvbnByb2dyZXNzImluIG0mJihtLm9ucHJvZ3Jlc3M9KCk9PntsKG0ucmVzcG9uc2VUZXh0KX0pO2lmKGsmJiJzZXRBdHRyaWJ1dGlvblJlcG9ydGluZyJpbiBYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGUpe2E9e2V2ZW50U291cmNlRWxpZ2libGU6ITAsdHJpZ2dlckVsaWdpYmxlOiExfTt0cnl7bS5zZXRBdHRyaWJ1dGlvblJlcG9ydGluZyhhKX1jYXRjaChwKXtfLldpKHApfX1tLnNlbmQoZCk7cmV0dXJuIG19Owp3aj1mdW5jdGlvbihhLGI9e30pe3ZhciBjPV8uZmooYSksZD1fLncoIklOTkVSVFVCRV9DTElFTlRfTkFNRSIpLGU9Xy54KCJ3ZWJfYWpheF9pZ25vcmVfZ2xvYmFsX2hlYWRlcnNfaWZfc2V0Iik7Zm9yKGxldCBrIGluIHlqKXtsZXQgbD1fLncoeWpba10pLG09az09PSJYLUdvb2ctQXV0aFVzZXIifHxrPT09IlgtR29vZy1QYWdlSWQiO2shPT0iWC1Hb29nLVZpc2l0b3ItSWQifHxsfHwobD1fLncoIlZJU0lUT1JfREFUQSIpKTt2YXIgZjtpZighKGY9IWwpKXtpZighKGY9Y3x8KF8uUGIoYSk/ITE6ITApKSl7Zj1hO3ZhciBoO2lmKGg9Xy54KCJhZGRfYXV0aF9oZWFkZXJzX3RvX3JlbWFya2V0aW5nX2dvb2dsZV9kb3RfY29tX3BpbmciKSYmaz09PSJBdXRob3JpemF0aW9uIiYmKGQ9PT0iVFZIVE1MNSJ8fGQ9PT0iVFZIVE1MNV9VTlBMVUdHRUQifHxkPT09IlRWSFRNTDVfU0lNUExZIikpaD1fLlBiKGYpLGg9aCE9PW51bGw/aC5zcGxpdCgiLiIpLnJldmVyc2UoKTpudWxsLGg9aD09PQpudWxsPyExOmhbMV09PT0iZ29vZ2xlIj8hMDpoWzJdPT09Imdvb2dsZSI/aFswXT09PSJhdSImJmhbMV09PT0iY29tIj8hMDpoWzBdPT09InVrIiYmaFsxXT09PSJjbyI/ITA6ITE6ITE7aCYmKGY9Xy5RYihmKXx8IiIsZj1mLnNwbGl0KCIvIiksZj0iLyIrKGYubGVuZ3RoPjE/ZlsxXToiIiksaD1mPT09Ii9wYWdlYWQiKTtmPWg/ITA6ITF9Zj0hZn1mfHxlJiZiW2tdIT09dm9pZCAwfHxkPT09IlRWSFRNTDVfVU5QTFVHR0VEIiYmbXx8KGJba109bCl9IlgtR29vZy1FT00tVmlzaXRvci1JZCJpbiBiJiYiWC1Hb29nLVZpc2l0b3ItSWQiaW4gYiYmZGVsZXRlIGJbIlgtR29vZy1WaXNpdG9yLUlkIl07aWYoY3x8IV8uUGIoYSkpYlsiWC1Zb3VUdWJlLVV0Yy1PZmZzZXQiXT1TdHJpbmcoLShuZXcgRGF0ZSkuZ2V0VGltZXpvbmVPZmZzZXQoKSk7aWYoY3x8IV8uUGIoYSkpe2xldCBrO3RyeXtrPShuZXcgSW50bC5EYXRlVGltZUZvcm1hdCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmV9Y2F0Y2h7fWsmJgooYlsiWC1Zb3VUdWJlLVRpbWUtWm9uZSJdPWspfWRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lLmVuZHNXaXRoKCJ5b3V0dWJlZWR1Y2F0aW9uLmNvbSIpfHwhYyYmXy5QYihhKXx8KGJbIlgtWW91VHViZS1BZC1TaWduYWxzIl09YWooXy5saigpKSk7cmV0dXJuIGJ9O0FqPWZ1bmN0aW9uKGEsYil7Yi5tZXRob2Q9IlBPU1QiO2IucG9zdFBhcmFtc3x8KGIucG9zdFBhcmFtcz17fSk7cmV0dXJuIF8uemooYSxiKX07Cl8uemo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmZvcm1hdHx8IkpTT04iO2E9QmooYSxiKTt2YXIgZD1DaihhLGIpLGU9ITEsZj1EaihhLGs9PntpZighZSl7ZT0hMDtoJiZ3aW5kb3cuY2xlYXJUaW1lb3V0KGgpO3ZhciBsPV8ucWooayksbT1udWxsLG49NDAwPD1rLnN0YXR1cyYmay5zdGF0dXM8NTAwLHA9NTAwPD1rLnN0YXR1cyYmay5zdGF0dXM8NjAwO2lmKGx8fG58fHApbT1FaihhLGMsayxiLmNvbnZlcnRUb1NhZmVIdG1sKTtsJiYobD1GaihjLGssbSkpO209bXx8e307bj1iLmNvbnRleHR8fF8udTtsP2Iub25TdWNjZXNzJiZiLm9uU3VjY2Vzcy5jYWxsKG4sayxtKTpiLm9uRXJyb3ImJmIub25FcnJvci5jYWxsKG4sayxtKTtiLm9uRmluaXNoJiZiLm9uRmluaXNoLmNhbGwobixrLG0pfX0sYi5tZXRob2QsZCxiLmhlYWRlcnMsYi5yZXNwb25zZVR5cGUsYi53aXRoQ3JlZGVudGlhbHMsITEsYi5vblByb2dyZXNzKTtkPWIudGltZW91dHx8MDtpZihiLm9uVGltZW91dCYmZD4wKXtsZXQgaz0KYi5vblRpbWVvdXQ7dmFyIGg9Xy5taigoKT0+e2V8fChlPSEwLGYuYWJvcnQoKSx3aW5kb3cuY2xlYXJUaW1lb3V0KGgpLGsuY2FsbChiLmNvbnRleHR8fF8udSxmKSl9LGQpfXJldHVybiBmfTtCaj1mdW5jdGlvbihhLGIpe2IuaW5jbHVkZURvbWFpbiYmKGE9ZG9jdW1lbnQubG9jYXRpb24ucHJvdG9jb2wrIi8vIitkb2N1bWVudC5sb2NhdGlvbi5ob3N0bmFtZSsoZG9jdW1lbnQubG9jYXRpb24ucG9ydD8iOiIrZG9jdW1lbnQubG9jYXRpb24ucG9ydDoiIikrYSk7dmFyIGM9Xy53KCJYU1JGX0ZJRUxEX05BTUUiKTtpZihiPWIudXJsUGFyYW1zKWJbY10mJmRlbGV0ZSBiW2NdLGE9ZGooYSxiKTtyZXR1cm4gYX07CkNqPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy53KCJYU1JGX0ZJRUxEX05BTUUiKSxkPV8udygiWFNSRl9UT0tFTiIpLGU9Yi5wb3N0Qm9keXx8IiIsZj1iLnBvc3RQYXJhbXMsaD1fLncoIlhTUkZfRklFTERfTkFNRSIpLGs7Yi5oZWFkZXJzJiYoaz1iLmhlYWRlcnNbIkNvbnRlbnQtVHlwZSJdKTtiLmV4Y2x1ZGVYc3JmfHxfLlBiKGEpJiYhYi53aXRoQ3JlZGVudGlhbHMmJl8uUGIoYSkhPT1kb2N1bWVudC5sb2NhdGlvbi5ob3N0bmFtZXx8Yi5tZXRob2QhPT0iUE9TVCJ8fGsmJmshPT0iYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkInx8Yi5wb3N0UGFyYW1zJiZiLnBvc3RQYXJhbXNbaF18fChmfHwoZj17fSksZltjXT1kKTtmJiZ0eXBlb2YgZT09PSJzdHJpbmciJiYoZT1fLmJqKGUpLHNkKGUsZiksZT1iLnBvc3RCb2R5Rm9ybWF0JiZiLnBvc3RCb2R5Rm9ybWF0PT09IkpTT04iP0pTT04uc3RyaW5naWZ5KGUpOl8uVWIoZSkpO2Y9ZXx8ZiYmIV8ucGQoZik7IUdqJiZmJiYKYi5tZXRob2QhPT0iUE9TVCImJihHaj0hMCxfLlVpKEVycm9yKCJjYSIpKSk7cmV0dXJuIGV9O0VqPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPW51bGw7c3dpdGNoKGIpe2Nhc2UgIkpTT04iOmxldCBmO3RyeXtmPWMucmVzcG9uc2VUZXh0fWNhdGNoKGgpe3Rocm93IGQ9RXJyb3IoImRhIiksZC5wYXJhbXM9YSxfLldpKGQpLGg7fWE9Yy5nZXRSZXNwb25zZUhlYWRlcigiQ29udGVudC1UeXBlIil8fCIiO2lmKGYmJmEuaW5kZXhPZigianNvbiIpPj0wKXtmLnN1YnN0cmluZygwLDUpPT09IildfSdcbiImJihmPWYuc3Vic3RyaW5nKDUpKTt0cnl7ZT1KU09OLnBhcnNlKGYpfWNhdGNoKGgpe319YnJlYWs7Y2FzZSAiWE1MIjppZihhPShhPWMucmVzcG9uc2VYTUwpP0hqKGEpOm51bGwpZT17fSxfLnRiKGEuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKSxoPT57ZVtoLnRhZ05hbWVdPUlqKGgpfSl9ZCYmSmooZSk7cmV0dXJuIGV9OwpKaj1mdW5jdGlvbihhKXtpZihfLkFhKGEpKWZvcihsZXQgYiBpbiBhKWI9PT0iaHRtbF9jb250ZW50Inx8Xy5NYShiLCJfaHRtbCIpP2FbYl09Xy5nYihhW2JdKTpKaihhW2JdKX07Rmo9ZnVuY3Rpb24oYSxiLGMpe2lmKGImJmIuc3RhdHVzPT09MjA0KXJldHVybiEwO3N3aXRjaChhKXtjYXNlICJKU09OIjpyZXR1cm4hIWM7Y2FzZSAiWE1MIjpyZXR1cm4gTnVtYmVyKGMmJmMucmV0dXJuX2NvZGUpPT09MDtjYXNlICJSQVciOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuISFjfX07SGo9ZnVuY3Rpb24oYSl7cmV0dXJuIGE/KGE9KCJyZXNwb25zZVhNTCJpbiBhP2EucmVzcG9uc2VYTUw6YSkuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInJvb3QiKSkmJmEubGVuZ3RoPjA/YVswXTpudWxsOm51bGx9O0lqPWZ1bmN0aW9uKGEpe3ZhciBiPSIiO18udGIoYS5jaGlsZE5vZGVzLGM9PntiKz1jLm5vZGVWYWx1ZX0pO3JldHVybiBifTsKdmo9ZnVuY3Rpb24oYSl7dmFyIGI9d2luZG93LmxvY2F0aW9uLnNlYXJjaCxjPV8uUGIoYSk7Xy54KCJkZWJ1Z19oYW5kbGVfcmVsYXRpdmVfdXJsX2Zvcl9xdWVyeV9mb3J3YXJkX2tpbGxzd2l0Y2giKXx8IWMmJl8uZmooYSkmJihjPWRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lKTt2YXIgZD1fLlFiKGEpO2Q9KGM9YyYmKGMuZW5kc1dpdGgoInlvdXR1YmUuY29tIil8fGMuZW5kc1dpdGgoInlvdXR1YmUtbm9jb29raWUuY29tIikpKSYmZCYmZC5zdGFydHNXaXRoKCIvYXBpLyIpO2lmKCFjfHxkKXJldHVybiBhO3ZhciBlPV8uYmooYiksZj17fTtfLnRiKEtqLGg9PntlW2hdJiYoZltoXT1lW2hdKX0pO3JldHVybiBfLmVqKGEsZil9O18uTWo9ZnVuY3Rpb24oYSxiLGMsZD0ieW91dHViZS5jb20iLGU9ITEpe18uTGouc2V0KGEsYix7dmo6YyxwYXRoOiIvIixkb21haW46ZCxzZWN1cmU6ZX0pfTsKXy5Oaj1mdW5jdGlvbihhLGI9Ii8iLGM9InlvdXR1YmUuY29tIil7Xy5Mai5yZW1vdmUoYSxiLGMpfTtfLk9qPWZ1bmN0aW9uKCl7aWYoIV8udS5tYXRjaE1lZGlhKXJldHVybiJXRUJfRElTUExBWV9NT0RFX1VOS05PV04iO3RyeXtyZXR1cm4gXy51Lm1hdGNoTWVkaWEoIihkaXNwbGF5LW1vZGU6IHN0YW5kYWxvbmUpIikubWF0Y2hlcz8iV0VCX0RJU1BMQVlfTU9ERV9TVEFOREFMT05FIjpfLnUubWF0Y2hNZWRpYSgiKGRpc3BsYXktbW9kZTogbWluaW1hbC11aSkiKS5tYXRjaGVzPyJXRUJfRElTUExBWV9NT0RFX01JTklNQUxfVUkiOl8udS5tYXRjaE1lZGlhKCIoZGlzcGxheS1tb2RlOiBmdWxsc2NyZWVuKSIpLm1hdGNoZXM/IldFQl9ESVNQTEFZX01PREVfRlVMTFNDUkVFTiI6Xy51Lm1hdGNoTWVkaWEoIihkaXNwbGF5LW1vZGU6IGJyb3dzZXIpIikubWF0Y2hlcz8iV0VCX0RJU1BMQVlfTU9ERV9CUk9XU0VSIjoiV0VCX0RJU1BMQVlfTU9ERV9VTktOT1dOIn1jYXRjaChhKXtyZXR1cm4iV0VCX0RJU1BMQVlfTU9ERV9VTktOT1dOIn19OwpfLlBqPWZ1bmN0aW9uKGEpe3ZhciBiPXt9LGM9W107IlVTRVJfU0VTU0lPTl9JRCJpbiBfLlBpJiZjLnB1c2goe2tleToidSIsdmFsdWU6Xy53KCJVU0VSX1NFU1NJT05fSUQiKX0pO2lmKGM9Xy5QZChjKSliLkF1dGhvcml6YXRpb249YyxjPWE9YT8uc2Vzc2lvbkluZGV4LGM9PT12b2lkIDAmJihjPU51bWJlcihfLncoIlNFU1NJT05fSU5ERVgiLDApKSxjPWlzTmFOKGMpPzA6YyksXy54KCJ2b2ljZV9zZWFyY2hfYXV0aF9oZWFkZXJfcmVtb3ZhbCIpfHwoYlsiWC1Hb29nLUF1dGhVc2VyIl09Yy50b1N0cmluZygpKSwiSU5ORVJUVUJFX0hPU1RfT1ZFUlJJREUiaW4gXy5QaXx8KGJbIlgtT3JpZ2luIl09d2luZG93LmxvY2F0aW9uLm9yaWdpbiksYT09PXZvaWQgMCYmIkRFTEVHQVRFRF9TRVNTSU9OX0lEImluIF8uUGkmJihiWyJYLUdvb2ctUGFnZUlkIl09Xy53KCJERUxFR0FURURfU0VTU0lPTl9JRCIpKTtyZXR1cm4gYn07ClFqPWZ1bmN0aW9uKCl7dmFyIGE9Xy51Lm5hdmlnYXRvcjtyZXR1cm4gYT9hLmNvbm5lY3Rpb246dm9pZCAwfTtfLlNqPWZ1bmN0aW9uKCl7dmFyIGE9UWooKTtpZihhKXt2YXIgYj1SalthLnR5cGV8fCJ1bmtub3duIl18fCJDT05OX1VOS05PV04iO2E9UmpbYS5lZmZlY3RpdmVUeXBlfHwidW5rbm93biJdfHwiQ09OTl9VTktOT1dOIjtiPT09IkNPTk5fQ0VMTFVMQVJfVU5LTk9XTiImJmEhPT0iQ09OTl9VTktOT1dOIiYmKGI9YSk7aWYoYiE9PSJDT05OX1VOS05PV04iKXJldHVybiBiO2lmKGEhPT0iQ09OTl9VTktOT1dOIilyZXR1cm4gYX19O18uVWo9ZnVuY3Rpb24oKXt2YXIgYT1RaigpO2lmKGE/LmVmZmVjdGl2ZVR5cGUpcmV0dXJuIFRqLmhhc093blByb3BlcnR5KGEuZWZmZWN0aXZlVHlwZSk/VGpbYS5lZmZlY3RpdmVUeXBlXToiRUZGRUNUSVZFX0NPTk5FQ1RJT05fVFlQRV9VTktOT1dOIn07Xy5Xaj1mdW5jdGlvbigpe3RyeXtyZXR1cm4gXy5WaigpLCEwfWNhdGNoKGEpe3JldHVybiExfX07Cl8uVmo9ZnVuY3Rpb24oYT0idW5rbm93biIpe2lmKF8udygiREFUQVNZTkNfSUQiKSE9PXZvaWQgMClyZXR1cm4gXy53KCJEQVRBU1lOQ19JRCIpO3Rocm93IG5ldyBfLlhqKCJEYXRhc3luYyBJRCBub3Qgc2V0IixhKTt9O18uWWo9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5qZi5HYShhLDAsYil9O1pqPWZ1bmN0aW9uKGEsYil7dHJ5e2IoKX1jYXRjaChjKXthLkpiKGMpfX07Yms9ZnVuY3Rpb24oYSl7dmFyIGI9Xy54KCJlbmFibGVfc2NoZWR1bGVyX3NpbXVsYXRlX3JhZiIpO2lmKGEub1s4XS5sZW5ndGgpe2lmKGEuaGEpcmV0dXJuIDQ7aWYoYil7aWYoIWEuaXNIaWRkZW4oKSlyZXR1cm4gYS5aPzM6NX1lbHNlIGlmKGFrKGEpKXJldHVybiAzfWZvcihsZXQgYz01O2M+PWEuQjtjLS0paWYoYS5vW2NdLmxlbmd0aD4wKXJldHVybiBjPjA/Yj9hLmlzSGlkZGVuKCk/MjphLlo/Mzo1OmFrKGEpPzM6MjoxO3JldHVybiAwfTsKY2s9ZnVuY3Rpb24oYSl7YS5nYS5sZW5ndGg9MDtmb3IobGV0IGI9NTtiPj0wO2ItLSlhLm9bYl0ubGVuZ3RoPTA7YS5vWzhdLmxlbmd0aD0wO2Eudj17fTthLnN0b3AoKX07YWs9ZnVuY3Rpb24oYSl7cmV0dXJuIWEuaXNIaWRkZW4oKSYmYS5afTtlaz1mdW5jdGlvbihhKXtmb3IobGV0IGIgb2YgZGspaWYoYS5vW2JdLmxlbmd0aClyZXR1cm4hMDtyZXR1cm4hMX07CmhrPWZ1bmN0aW9uKGEsYixjKXthLmhhJiZhLkk9PT00JiZhLmp8fGEuc3RvcCgpO2EuRD0hMDtiPV8uRWEoKSsoYnx8YS5NKTtmb3IodmFyIGQ9YS5vWzVdO2QubGVuZ3RoOyl7dmFyIGU9ZC5zaGlmdCgpLGY9YS52W2VdO2RlbGV0ZSBhLnZbZV07aWYoZil7ZT1hO3RyeXtmKGMpfWNhdGNoKGgpe2UuSmIoaCl9fX1mb3IoZD1hLm9bNF07ZC5sZW5ndGg7KWM9ZC5zaGlmdCgpLGY9YS52W2NdLGRlbGV0ZSBhLnZbY10sZiYmWmooYSxmKTtkPWEueWE/MDoxO2Q9YS5CPmQ/YS5COmQ7aWYoIShfLkVhKCk+PWIpKXtkb3thOntjPWE7Zj1kO2ZvcihlPTM7ZT49ZjtlLS0pe2xldCBoPWMub1tlXTtmb3IoO2gubGVuZ3RoOyl7bGV0IGs9aC5zaGlmdCgpLGw9Yy52W2tdO2RlbGV0ZSBjLnZba107aWYobCl7Yz1sO2JyZWFrIGF9fX1jPW51bGx9YyYmWmooYSxjKX13aGlsZShjJiZfLkVhKCk8Yil9YS5EPSExO2ZrKGEpO2EuTT1naztlayhhKSYmYS5zdGFydCgpfTsKaWs9ZnVuY3Rpb24oYSl7YS5zdG9wKCk7YS5EPSEwO2Zvcih2YXIgYj1fLkVhKCksYz1hLm9bOF07Yy5sZW5ndGg7KXtsZXQgZD1jLnNoaWZ0KCksZT1hLnZbZF07ZGVsZXRlIGEudltkXTtlJiZaaihhLGUpfWZrKGEpO2EuRD0hMTtlayhhKSYmYS5zdGFydCgpO2I9Xy5FYSgpLWI7YS5NLT1ifTtmaz1mdW5jdGlvbihhKXtmb3IobGV0IGI9MCxjPWEuZ2EubGVuZ3RoO2I8YztiKyspe2xldCBkPWEuZ2FbYl07YS5vW2QucHJpb3JpdHldLnB1c2goZC5pZCl9YS5nYS5sZW5ndGg9MH07a2s9ZnVuY3Rpb24oKXt2YXIgYT1fLnNhKCJ5dGdsb2JhbC5zY2hlZHVsZXJJbnN0YW5jZUluc3RhbmNlXyIpO2lmKCFhfHxhLmlhKCkpYT1uZXcgamsoXy53KCJzY2hlZHVsZXIiKXx8e30pLF8ucmEoInl0Z2xvYmFsLnNjaGVkdWxlckluc3RhbmNlSW5zdGFuY2VfIixhKTtyZXR1cm4gYX07Cm1rPWZ1bmN0aW9uKCl7bGsoKTt2YXIgYT1fLnNhKCJ5dGdsb2JhbC5zY2hlZHVsZXJJbnN0YW5jZUluc3RhbmNlXyIpO2EmJihfLlpkKGEpLF8ucmEoInl0Z2xvYmFsLnNjaGVkdWxlckluc3RhbmNlSW5zdGFuY2VfIixudWxsKSl9O2xrPWZ1bmN0aW9uKCl7Y2soa2soKSk7Zm9yKGxldCBhIGluIG5rKW5rLmhhc093blByb3BlcnR5KGEpJiZkZWxldGUgbmtbTnVtYmVyKGEpXX07b2s9ZnVuY3Rpb24oYSxiLGMpe2lmKCFjKXJldHVybiBjPWM9PT12b2lkIDAsLWtrKCkuR2EoYSxiLGMpO3ZhciBkPXdpbmRvdy5zZXRUaW1lb3V0KCgpPT57dmFyIGU9a2soKS5HYShhLGIpO25rW2RdPWV9LGMpO3JldHVybiBkfTtwaz1mdW5jdGlvbihhKXtraygpLlUoYSl9O3FrPWZ1bmN0aW9uKGEpe3ZhciBiPWtrKCk7aWYoYTwwKWIuQWEoLWEpO2Vsc2V7dmFyIGM9bmtbYV07Yz8oYi5BYShjKSxkZWxldGUgbmtbYV0pOndpbmRvdy5jbGVhclRpbWVvdXQoYSl9fTtzaz1mdW5jdGlvbigpe3JrKCl9Owpyaz1mdW5jdGlvbigpe3dpbmRvdy5jbGVhclRpbWVvdXQodGspO2trKCkuc3RhcnQoKX07dms9ZnVuY3Rpb24oKXtraygpLnBhdXNlKCk7d2luZG93LmNsZWFyVGltZW91dCh0ayk7dGs9d2luZG93LnNldFRpbWVvdXQoc2ssdWspfTt5az1mdW5jdGlvbigpe3dpbmRvdy5jbGVhclRpbWVvdXQod2spO3drPXdpbmRvdy5zZXRUaW1lb3V0KCgpPT57eGsoMCl9LHVrKX07eGs9ZnVuY3Rpb24oYSl7eWsoKTt2YXIgYj1raygpO2IuQj1hO2Iuc3RhcnQoKX07ems9ZnVuY3Rpb24oYSl7eWsoKTt2YXIgYj1raygpO2IuQj5hJiYoYi5CPWEsYi5zdGFydCgpKX07QWs9ZnVuY3Rpb24oKXt3aW5kb3cuY2xlYXJUaW1lb3V0KHdrKTt2YXIgYT1raygpO2EuQj0wO2Euc3RhcnQoKX07Xy5Daz1mdW5jdGlvbigpe0JrLmluc3RhbmNlfHwoQmsuaW5zdGFuY2U9bmV3IEJrKTtyZXR1cm4gQmsuaW5zdGFuY2V9OwpFaz1mdW5jdGlvbigpe3JldHVybiBEaygpPy5nZXQoIkxBU1RfUkVTVUxUX0VOVFJZX0tFWSIsITApfTtfLklrPWZ1bmN0aW9uKGEpe0ZrfHwoXy5Haz9fLkdrLkpiKGEpOihfLkhrLnB1c2goe3R5cGU6IkVSUk9SIixwYXlsb2FkOmF9KSxfLkhrLmxlbmd0aD4xMCYmXy5Iay5zaGlmdCgpKSl9O0prPWZ1bmN0aW9uKGEsYil7Rmt8fChfLkdrP18uR2subG0oYSxiKTooXy5Iay5wdXNoKHt0eXBlOiJFVkVOVCIsZXZlbnRUeXBlOmEscGF5bG9hZDpifSksXy5Iay5sZW5ndGg+MTAmJl8uSGsuc2hpZnQoKSkpfTtLaz1mdW5jdGlvbihhKXtpZihhLmluZGV4T2YoIjoiKT49MCl0aHJvdyBFcnJvcigiaGEiKTt9O0xrPWZ1bmN0aW9uKGEpe3JldHVybiBhLnN1YnN0cigwLGEuaW5kZXhPZigiOiIpKXx8YX07Xy5Naz1mdW5jdGlvbihhKXt2YXIgYj1fLmJjKCk7cmV0dXJuIGI/Yi50b0xvd2VyQ2FzZSgpLmluZGV4T2YoYSk+PTA6ITF9OwpSaz1mdW5jdGlvbihhLGIsYyxkKXtiPUxrKGIpO3ZhciBlPWEgaW5zdGFuY2VvZiBFcnJvcj9hOkVycm9yKCJpYWAiK2EpO2lmKGUgaW5zdGFuY2VvZiBOaylyZXR1cm4gZTthPXtvYmplY3RTdG9yZU5hbWVzOmMsZGJOYW1lOmIsZGJWZXJzaW9uOmR9O2lmKGUubmFtZT09PSJRdW90YUV4Y2VlZGVkRXJyb3IiKXJldHVybiBuZXcgTmsoIlFVT1RBX0VYQ0VFREVEIixhKTtpZihfLk9rJiZlLm5hbWU9PT0iVW5rbm93bkVycm9yIilyZXR1cm4gbmV3IE5rKCJRVU9UQV9NQVlCRV9FWENFRURFRCIsYSk7aWYoZSBpbnN0YW5jZW9mIFBrKXJldHVybiBuZXcgTmsoIk1JU1NJTkdfSU5ERVgiLHsuLi5hLG9iamVjdFN0b3JlOmUub2JqZWN0U3RvcmUsaW5kZXg6ZS5pbmRleH0pO2lmKGUubmFtZT09PSJJbnZhbGlkU3RhdGVFcnJvciImJlFrLnNvbWUoZj0+ZS5tZXNzYWdlLmluY2x1ZGVzKGYpKSlyZXR1cm4gbmV3IE5rKCJFWEVDVVRFX1RSQU5TQUNUSU9OX09OX0NMT1NFRF9EQiIsYSk7aWYoZS5uYW1lPT09CiJBYm9ydEVycm9yIilyZXR1cm4gbmV3IE5rKCJVTktOT1dOX0FCT1JUIixhLGUubWVzc2FnZSk7ZS5hcmdzPVt7Li4uYSxuYW1lOiJJZGJFcnJvciIsTW06ZS5uYW1lfV07ZS5sZXZlbD0iV0FSTklORyI7cmV0dXJuIGV9O1NrPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1FaygpO3JldHVybiBuZXcgTmsoIklEQl9OT1RfU1VQUE9SVEVEIix7Y29udGV4dDp7Y2FsbGVyOmEscHVibGljTmFtZTpiLHZlcnNpb246YyxoYXNTdWNjZWVkZWRPbmNlOmQ/Lmhhc1N1Y2NlZWRlZE9uY2V9fSl9O1RrPWZ1bmN0aW9uKGEpe2lmKCFhKXRocm93IEVycm9yKCk7dGhyb3cgYTt9O1VrPWZ1bmN0aW9uKGEpe3JldHVybiBhfTtYaz1mdW5jdGlvbihhLGIsYyxkLGUpe3RyeXtpZihhLnN0YXRlLnN0YXR1cyE9PSJGVUxGSUxMRUQiKXRocm93IEVycm9yKCJqYSIpO2xldCBmPWMoYS5zdGF0ZS52YWx1ZSk7ZiBpbnN0YW5jZW9mIF8uVms/V2soYSxiLGYsZCxlKTpkKGYpfWNhdGNoKGYpe2UoZil9fTsKWWs9ZnVuY3Rpb24oYSxiLGMsZCxlKXt0cnl7aWYoYS5zdGF0ZS5zdGF0dXMhPT0iUkVKRUNURUQiKXRocm93IEVycm9yKCJrYSIpO2xldCBmPWMoYS5zdGF0ZS5yZWFzb24pO2YgaW5zdGFuY2VvZiBfLlZrP1drKGEsYixmLGQsZSk6ZChmKX1jYXRjaChmKXtlKGYpfX07V2s9ZnVuY3Rpb24oYSxiLGMsZCxlKXtiPT09Yz9lKG5ldyBUeXBlRXJyb3IoImxhIikpOmMudGhlbihmPT57ZiBpbnN0YW5jZW9mIF8uVms/V2soYSxiLGYsZCxlKTpkKGYpfSxmPT57ZShmKX0pfTtaaz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9KCk9Pnt0cnl7YS5yZW1vdmVFdmVudExpc3RlbmVyKCJzdWNjZXNzIixlKSxhLnJlbW92ZUV2ZW50TGlzdGVuZXIoImVycm9yIixmKX1jYXRjaHt9fSxlPSgpPT57YihhLnJlc3VsdCk7ZCgpfSxmPSgpPT57YyhhLmVycm9yKTtkKCl9O2EuYWRkRXZlbnRMaXN0ZW5lcigic3VjY2VzcyIsZSk7YS5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsZil9Owokaz1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IFByb21pc2UoKGIsYyk9PntaayhhLGIsYyl9KX07Ymw9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBfLlZrKG5ldyBhbCgoYixjKT0+e1prKGEsYixjKX0pKX07Y2w9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gbmV3IF8uVmsobmV3IGFsKChjLGQpPT57dmFyIGU9KCk9Pnt2YXIgZj1hP2IoYSk6bnVsbDtmP2YudGhlbihoPT57YT1oO2UoKX0sZCk6YygpfTtlKCl9KSl9O2RsPWZ1bmN0aW9uKCl7cmV0dXJuIF8ueCgiaWRiX2ltbWVkaWF0ZV9jb21taXQiKX07Cl8uaWw9YXN5bmMgZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9e21vZGU6InJlYWRvbmx5IixrYjohMSx0YWc6IklEQl9UUkFOU0FDVElPTl9UQUdfVU5LTk9XTiJ9O3R5cGVvZiBjPT09InN0cmluZyI/ZS5tb2RlPWM6T2JqZWN0LmFzc2lnbihlLGMpO2EudHJhbnNhY3Rpb25Db3VudCsrO2M9ZS5rYj8zOjE7Zm9yKHZhciBmPTAsaDshaDspe2YrKztsZXQgbj1NYXRoLnJvdW5kKCgwLF8uZWwpKCkpO3RyeXt2YXIgaz1hLmoudHJhbnNhY3Rpb24oYixlLm1vZGUpLGw9ZCxtPSEhZS5jb21taXQ7bGV0IHA9bmV3IGZsKGspLHI9YXdhaXQgZ2wocCxsLG0pLHQ9TWF0aC5yb3VuZCgoMCxfLmVsKSgpKTtobChhLG4sdCxmLHZvaWQgMCxiLmpvaW4oKSxlKTtyZXR1cm4gcn1jYXRjaChwKXtsPU1hdGgucm91bmQoKDAsXy5lbCkoKSk7bGV0IHI9UmsocCxhLmoubmFtZSxiLmpvaW4oKSxhLmoudmVyc2lvbik7aWYociBpbnN0YW5jZW9mIE5rJiYhci5qfHxmPj1jKWhsKGEsbixsLGYscixiLmpvaW4oKSwKZSksaD1yfX1yZXR1cm4gUHJvbWlzZS5yZWplY3QoaCl9O18ua2w9ZnVuY3Rpb24oYSxiLGMpe2E9YS5qLmNyZWF0ZU9iamVjdFN0b3JlKGIsYyk7cmV0dXJuIG5ldyBqbChhKX07Xy5tbD1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uaWwoYSxbYl0se21vZGU6InJlYWR3cml0ZSIsa2I6ITAsY29tbWl0OmRsKCl9LGQ9Pl8ubGwoZC5vYmplY3RTdG9yZShiKSxjKSl9OwpobD1mdW5jdGlvbihhLGIsYyxkLGUsZixoKXtiPWMtYjtlPyhlIGluc3RhbmNlb2YgTmsmJihlLnR5cGU9PT0iUVVPVEFfRVhDRUVERUQifHxlLnR5cGU9PT0iUVVPVEFfTUFZQkVfRVhDRUVERUQiKSYmSmsoIlFVT1RBX0VYQ0VFREVEIix7ZGJOYW1lOkxrKGEuai5uYW1lKSxvYmplY3RTdG9yZU5hbWVzOmYsdHJhbnNhY3Rpb25Db3VudDphLnRyYW5zYWN0aW9uQ291bnQsdHJhbnNhY3Rpb25Nb2RlOmgubW9kZX0pLGUgaW5zdGFuY2VvZiBOayYmZS50eXBlPT09IlVOS05PV05fQUJPUlQiJiYoYy09YS52LGM8MCYmYz49MjE0NzQ4MzY0OCYmKGM9MCksSmsoIlRSQU5TQUNUSU9OX1VORVhQRUNURURMWV9BQk9SVEVEIix7b2JqZWN0U3RvcmVOYW1lczpmLHRyYW5zYWN0aW9uRHVyYXRpb246Yix0cmFuc2FjdGlvbkNvdW50OmEudHJhbnNhY3Rpb25Db3VudCxkYkR1cmF0aW9uOmN9KSxhLm89ITApLG5sKGEsITEsZCxmLGIsaC50YWcpLF8uSWsoZSkpOm5sKGEsITAsZCxmLGIsaC50YWcpfTsKbmw9ZnVuY3Rpb24oYSxiLGMsZCxlLGY9IklEQl9UUkFOU0FDVElPTl9UQUdfVU5LTk9XTiIpe0prKCJUUkFOU0FDVElPTl9FTkRFRCIse29iamVjdFN0b3JlTmFtZXM6ZCxjb25uZWN0aW9uSGFzVW5rbm93bkFib3J0ZWRUcmFuc2FjdGlvbjphLm8sZHVyYXRpb246ZSxpc1N1Y2Nlc3NmdWw6Yix0cnlDb3VudDpjLHRhZzpmfSl9O18ubGw9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYmwoYS5qLnB1dChiLHZvaWQgMCkpfTtfLm9sPWZ1bmN0aW9uKGEsYixjKXthLmouY3JlYXRlSW5kZXgoYixjLHt1bmlxdWU6ITF9KX07cWw9ZnVuY3Rpb24oYSxiLGMpe2E9YS5qLm9wZW5DdXJzb3IoYi5xdWVyeSxiLmRpcmVjdGlvbik7cmV0dXJuIHBsKGEpLnRoZW4oZD0+Y2woZCxjKSl9O3NsPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHFsKGEse3F1ZXJ5OmJ9LGM9PmMuZGVsZXRlKCkudGhlbigoKT0+cmwoYykpKS50aGVuKCgpPT57fSl9Owp0bD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W107cmV0dXJuIHFsKGEse3F1ZXJ5OmJ9LGU9PntpZighKGMhPT12b2lkIDAmJmQubGVuZ3RoPj1jKSlyZXR1cm4gZC5wdXNoKGUuY3Vyc29yLnZhbHVlKSxybChlKX0pLnRoZW4oKCk9PmQpfTtnbD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bmV3IFByb21pc2UoKGUsZik9Pnt0cnl7bGV0IGg9YihhKTtjJiZhLmNvbW1pdCgpO2gudGhlbihrPT57ZShrKX0pLmNhdGNoKGYpfWNhdGNoKGgpe2YoaCksYS5hYm9ydCgpfX0pO3JldHVybiBQcm9taXNlLmFsbChbZCxhLmRvbmVdKS50aGVuKChbZV0pPT5lKX07dWw9ZnVuY3Rpb24oYSxiLGMpe3ZhciB7cXVlcnk6ZD1udWxsLGRpcmVjdGlvbjplPSJuZXh0In09YjthPWEuai5vcGVuQ3Vyc29yKGQsZSk7cmV0dXJuIHBsKGEpLnRoZW4oZj0+Y2woZixjKSl9Owp2bD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W107cmV0dXJuIHVsKGEse3F1ZXJ5OmJ9LGU9PntpZighKGMhPT12b2lkIDAmJmQubGVuZ3RoPj1jKSlyZXR1cm4gZC5wdXNoKGUuY3Vyc29yLnZhbHVlKSxybChlKX0pLnRoZW4oKCk9PmQpfTtwbD1mdW5jdGlvbihhKXtyZXR1cm4gYmwoYSkudGhlbihiPT5iP25ldyB3bChhLGIpOm51bGwpfTtybD1mdW5jdGlvbihhKXthLmN1cnNvci5jb250aW51ZSh2b2lkIDApO3JldHVybiBwbChhLnJlcXVlc3QpfTsKeWw9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBuZXcgUHJvbWlzZSgoZCxlKT0+e3ZhciBmPWIhPT12b2lkIDA/c2VsZi5pbmRleGVkREIub3BlbihhLGIpOnNlbGYuaW5kZXhlZERCLm9wZW4oYSk7dmFyIGg9Yy5ibG9ja2VkLGs9Yy5ibG9ja2luZyxsPWMuVEEsbT1jLnVwZ3JhZGUsbj1jLmNsb3NlZCxwLHI9KCk9PntwfHwocD1uZXcgeGwoZi5yZXN1bHQse2Nsb3NlZDpufSkpO3JldHVybiBwfTtmLmFkZEV2ZW50TGlzdGVuZXIoInVwZ3JhZGVuZWVkZWQiLHQ9Pnt0cnl7aWYodC5uZXdWZXJzaW9uPT09bnVsbCl0aHJvdyBFcnJvcigibmEiKTtpZihmLnRyYW5zYWN0aW9uPT09bnVsbCl0aHJvdyBFcnJvcigib2EiKTt0LmRhdGFMb3NzJiZ0LmRhdGFMb3NzIT09Im5vbmUiJiZKaygiSURCX0RBVEFfQ09SUlVQVEVEIix7cmVhc29uOnQuZGF0YUxvc3NNZXNzYWdlfHwidW5rbm93biByZWFzb24iLGRiTmFtZTpMayhhKX0pO2xldCB2PXIoKSx6PW5ldyBmbChmLnRyYW5zYWN0aW9uKTttJiYKbSh2LEU9PnQub2xkVmVyc2lvbjxFJiZ0Lm5ld1ZlcnNpb24+PUUseik7ei5kb25lLmNhdGNoKEU9PntlKEUpfSl9Y2F0Y2godil7ZSh2KX19KTtmLmFkZEV2ZW50TGlzdGVuZXIoInN1Y2Nlc3MiLCgpPT57dmFyIHQ9Zi5yZXN1bHQ7ayYmdC5hZGRFdmVudExpc3RlbmVyKCJ2ZXJzaW9uY2hhbmdlIiwoKT0+e2socigpKX0pO3QuYWRkRXZlbnRMaXN0ZW5lcigiY2xvc2UiLCgpPT57SmsoIklEQl9VTkVYUEVDVEVETFlfQ0xPU0VEIix7ZGJOYW1lOkxrKGEpLGRiVmVyc2lvbjp0LnZlcnNpb259KTtsJiZsKCl9KTtkKHIoKSl9KTtmLmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIiwoKT0+e2UoZi5lcnJvcil9KTtoJiZmLmFkZEV2ZW50TGlzdGVuZXIoImJsb2NrZWQiLCgpPT57aCgpfSl9KX07emw9ZnVuY3Rpb24oYSxiLGM9e30pe3JldHVybiB5bChhLGIsYyl9OwpfLkFsPWFzeW5jIGZ1bmN0aW9uKGEsYj17fSl7dHJ5e2xldCBjPXNlbGYuaW5kZXhlZERCLmRlbGV0ZURhdGFiYXNlKGEpLGQ9Yi5ibG9ja2VkO2QmJmMuYWRkRXZlbnRMaXN0ZW5lcigiYmxvY2tlZCIsKCk9PntkKCl9KTthd2FpdCAkayhjKX1jYXRjaChjKXt0aHJvdyBSayhjLGEsIiIsLTEpO319O0JsPWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBOaygiSU5DT01QQVRJQkxFX0RCX1ZFUlNJT04iLHtkYk5hbWU6YS5uYW1lLG9sZFZlcnNpb246YS5vcHRpb25zLnZlcnNpb24sbmV3VmVyc2lvbjpifSl9O18uQ2w9ZnVuY3Rpb24oYSxiKXtpZighYil0aHJvdyBTaygib3BlbldpdGhUb2tlbiIsTGsoYS5uYW1lKSk7cmV0dXJuIGEub3BlbigpfTsKRWw9YXN5bmMgZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5pbChhd2FpdCBfLkNsKERsLGIpLFsiZGF0YWJhc2VzIl0se2tiOiEwLG1vZGU6InJlYWR3cml0ZSJ9LGM9Pnt2YXIgZD1jLm9iamVjdFN0b3JlKCJkYXRhYmFzZXMiKTtyZXR1cm4gZC5nZXQoYS5hY3R1YWxOYW1lKS50aGVuKGU9PntpZihlP2EuYWN0dWFsTmFtZSE9PWUuYWN0dWFsTmFtZXx8YS5wdWJsaWNOYW1lIT09ZS5wdWJsaWNOYW1lfHxhLnVzZXJJZGVudGlmaWVyIT09ZS51c2VySWRlbnRpZmllcjoxKXJldHVybiBfLmxsKGQsYSkudGhlbigoKT0+e30pfSl9KX07Xy5GbD1hc3luYyBmdW5jdGlvbihhLGIpe3JldHVybiBhPyhhd2FpdCBfLkNsKERsLGIpKS5kZWxldGUoImRhdGFiYXNlcyIsYSk6dm9pZCAwfTsKXy5HbD1hc3luYyBmdW5jdGlvbihhLGIpe3ZhciBjPVtdO2I9YXdhaXQgXy5DbChEbCxiKTthd2FpdCBfLmlsKGIsWyJkYXRhYmFzZXMiXSx7a2I6ITAsbW9kZToicmVhZG9ubHkifSxkPT57Yy5sZW5ndGg9MDtyZXR1cm4gcWwoZC5vYmplY3RTdG9yZSgiZGF0YWJhc2VzIikse30sZT0+e2EoZS5jdXJzb3IudmFsdWUpJiZjLnB1c2goZS5jdXJzb3IudmFsdWUpO3JldHVybiBybChlKX0pfSk7cmV0dXJuIGN9O0hsPWZ1bmN0aW9uKGEpe3JldHVybiBfLkdsKGI9PmIucHVibGljTmFtZT09PSJMb2dzRGF0YWJhc2VWMiImJmIudXNlcklkZW50aWZpZXIhPT12b2lkIDAsYSl9OwpMbD1hc3luYyBmdW5jdGlvbigpe2lmKEVrKCk/Lmhhc1N1Y2NlZWRlZE9uY2UpcmV0dXJuITA7dmFyIGE7aWYoYT1fLklsKWE9L1dlYktpdFwvKFswLTldKykvLmV4ZWMoXy5iYygpKSxhPSEhKGEmJnBhcnNlSW50KGFbMV0sMTApPj02MDApO2EmJihhPS9XZWJLaXRcLyhbMC05XSspLy5leGVjKF8uYmMoKSksYT0hKGEmJnBhcnNlSW50KGFbMV0sMTApPj02MDIpKTtpZighKGE9YXx8Xy5KbCkpe3RyeXthPXNlbGY7dmFyIGI9ISEoYS5pbmRleGVkREImJmEuSURCSW5kZXgmJmEuSURCS2V5UmFuZ2UmJmEuSURCT2JqZWN0U3RvcmUpfWNhdGNoKGMpe2I9ITF9YT0hYn1pZihhfHwhKCJJREJUcmFuc2FjdGlvbiJpbiBzZWxmJiYib2JqZWN0U3RvcmVOYW1lcyJpbiBJREJUcmFuc2FjdGlvbi5wcm90b3R5cGUpKXJldHVybiExO3RyeXtyZXR1cm4gYXdhaXQgRWwoe2FjdHVhbE5hbWU6Inl0LWlkYi10ZXN0LWRvLW5vdC11c2UiLHB1YmxpY05hbWU6Inl0LWlkYi10ZXN0LWRvLW5vdC11c2UiLAp1c2VySWRlbnRpZmllcjp2b2lkIDB9LEtsKSxhd2FpdCBfLkZsKCJ5dC1pZGItdGVzdC1kby1ub3QtdXNlIixLbCksITB9Y2F0Y2goYyl7cmV0dXJuITF9fTtObD1mdW5jdGlvbigpe2lmKE1sIT09dm9pZCAwKXJldHVybiBNbDtGaz0hMDtyZXR1cm4gTWw9TGwoKS50aGVuKGE9PntGaz0hMTtpZihEaygpPy5vKCkpe3ZhciBiPXtoYXNTdWNjZWVkZWRPbmNlOkVrKCk/Lmhhc1N1Y2NlZWRlZE9uY2V8fGF9O0RrKCk/LnNldCgiTEFTVF9SRVNVTFRfRU5UUllfS0VZIixiLDI1OTJFMywhMCl9cmV0dXJuIGF9KX07T2w9ZnVuY3Rpb24oKXtyZXR1cm4gXy5zYSgieXRnbG9iYWwuaWRiVG9rZW5fIil8fHZvaWQgMH07Xy5QbD1mdW5jdGlvbigpe3ZhciBhPU9sKCk7cmV0dXJuIGE/UHJvbWlzZS5yZXNvbHZlKGEpOk5sKCkudGhlbihiPT57Yj8oXy5yYSgieXRnbG9iYWwuaWRiVG9rZW5fIixLbCksYj1LbCk6Yj12b2lkIDA7cmV0dXJuIGJ9KX07ClFsPWZ1bmN0aW9uKGEpe2lmKCFfLldqKCkpdGhyb3cgYT1uZXcgTmsoIkFVVEhfSU5WQUxJRCIse2RiTmFtZTphfSksXy5JayhhKSxhO3ZhciBiPV8uVmooKTtyZXR1cm57YWN0dWFsTmFtZTpgJHthfToke2J9YCxwdWJsaWNOYW1lOmEsdXNlcklkZW50aWZpZXI6Yn19OwpSbD1hc3luYyBmdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1FcnJvcigpLnN0YWNrPz8iIixmPWF3YWl0IF8uUGwoKTtpZighZil0aHJvdyBiPVNrKCJvcGVuRGJJbXBsIixhLGIpLF8ueCgieXRpZGJfYXN5bmNfc3RhY2tfa2lsbHN3aXRjaCIpfHwoYi5zdGFjaz1gJHtiLnN0YWNrfVxuJHtlLnN1YnN0cmluZyhlLmluZGV4T2YoIlxuIikrMSl9YCksXy5JayhiKSxiO0trKGEpO2U9Yz97YWN0dWFsTmFtZTphLHB1YmxpY05hbWU6YSx1c2VySWRlbnRpZmllcjp2b2lkIDB9OlFsKGEpO3RyeXtyZXR1cm4gYXdhaXQgRWwoZSxmKSxhd2FpdCB6bChlLmFjdHVhbE5hbWUsYixkKX1jYXRjaChoKXt0cnl7YXdhaXQgXy5GbChlLmFjdHVhbE5hbWUsZil9Y2F0Y2h7fXRocm93IGg7fX07U2w9ZnVuY3Rpb24oYSxiLGM9e30pe3JldHVybiBSbChhLGIsITEsYyl9O1RsPWZ1bmN0aW9uKGEsYixjPXt9KXtyZXR1cm4gUmwoYSxiLCEwLGMpfTsKVWw9YXN5bmMgZnVuY3Rpb24oYSxiPXt9KXt2YXIgYz1hd2FpdCBfLlBsKCk7YyYmKEtrKGEpLGE9UWwoYSksYXdhaXQgXy5BbChhLmFjdHVhbE5hbWUsYiksYXdhaXQgXy5GbChhLmFjdHVhbE5hbWUsYykpfTtWbD1mdW5jdGlvbihhLGIsYyl7YT1hLm1hcChhc3luYyBkPT57YXdhaXQgXy5BbChkLmFjdHVhbE5hbWUsYik7YXdhaXQgXy5GbChkLmFjdHVhbE5hbWUsYyl9KTtyZXR1cm4gUHJvbWlzZS5hbGwoYSkudGhlbigoKT0+e30pfTtXbD1hc3luYyBmdW5jdGlvbigpe3ZhciBhPXt9LGI9YXdhaXQgXy5QbCgpO2lmKGIpe0trKCJMb2dzRGF0YWJhc2VWMiIpO3ZhciBjPWF3YWl0IEhsKGIpO2F3YWl0IFZsKGMsYSxiKX19O1hsPWFzeW5jIGZ1bmN0aW9uKGEsYj17fSl7dmFyIGM9YXdhaXQgXy5QbCgpO2MmJihLayhhKSxhd2FpdCBfLkFsKGEsYiksYXdhaXQgXy5GbChhLGMpKX07Wmw9ZnVuY3Rpb24oYSxiKXt2YXIgYztyZXR1cm4oKT0+e2N8fChjPW5ldyBZbChhLGIpKTtyZXR1cm4gY319OwpfLiRsPWZ1bmN0aW9uKGEsYil7cmV0dXJuIFpsKGEsYil9O2JtPWZ1bmN0aW9uKGEpe3JldHVybiBfLkNsKGFtKCksYSl9O2NtPWFzeW5jIGZ1bmN0aW9uKGEsYixjKXthPXtjb25maWc6YSxoYXNoRGF0YTpiLHRpbWVzdGFtcDooMCxfLmVsKSgpfTtjPWF3YWl0IGJtKGMpO2F3YWl0IGMuY2xlYXIoImhvdENvbmZpZ1N0b3JlIik7cmV0dXJuIGF3YWl0IF8ubWwoYywiaG90Q29uZmlnU3RvcmUiLGEpfTtkbT1hc3luYyBmdW5jdGlvbihhLGIsYyxkKXthPXtjb25maWc6YSxoYXNoRGF0YTpiLGNvbmZpZ0RhdGE6Yyx0aW1lc3RhbXA6KDAsXy5lbCkoKX07ZD1hd2FpdCBibShkKTthd2FpdCBkLmNsZWFyKCJjb2xkQ29uZmlnU3RvcmUiKTtyZXR1cm4gYXdhaXQgXy5tbChkLCJjb2xkQ29uZmlnU3RvcmUiLGEpfTsKZW09YXN5bmMgZnVuY3Rpb24oYSl7YT1hd2FpdCBibShhKTt2YXIgYj12b2lkIDA7YXdhaXQgXy5pbChhLFsiY29sZENvbmZpZ1N0b3JlIl0se21vZGU6InJlYWR3cml0ZSIsa2I6ITB9LGM9PnVsKGMub2JqZWN0U3RvcmUoImNvbGRDb25maWdTdG9yZSIpLmluZGV4KCJjb2xkVGltZXN0YW1wSW5kZXgiKSx7ZGlyZWN0aW9uOiJwcmV2In0sZD0+e2I9ZC5jdXJzb3IudmFsdWV9KSk7cmV0dXJuIGJ9O2ZtPWFzeW5jIGZ1bmN0aW9uKGEpe2E9YXdhaXQgYm0oYSk7dmFyIGI9dm9pZCAwO2F3YWl0IF8uaWwoYSxbImhvdENvbmZpZ1N0b3JlIl0se21vZGU6InJlYWR3cml0ZSIsa2I6ITB9LGM9PnVsKGMub2JqZWN0U3RvcmUoImhvdENvbmZpZ1N0b3JlIikuaW5kZXgoImhvdFRpbWVzdGFtcEluZGV4Iikse2RpcmVjdGlvbjoicHJldiJ9LGQ9PntiPWQuY3Vyc29yLnZhbHVlfSkpO3JldHVybiBifTsKZ209YXN5bmMgZnVuY3Rpb24oYSxiLGMpe2lmKF8ueCgic3RhcnRfY2xpZW50X2djZiIpKXtjJiYoYS52PWMsXy5yYSgieXQuZ2NmLmNvbmZpZy5ob3RDb25maWdHcm91cCIsYS52fHxudWxsKSk7YS5CKGIpO2xldCBkPU9sKCk7ZCYmKGN8fChjPShhd2FpdCBmbShkKSk/LmNvbmZpZyksYXdhaXQgY20oYyxiLGQpKTtpZihjKXthPWEubztmb3IobGV0IGUgb2YgYS5qKWUoYyl9fX07aG09YXN5bmMgZnVuY3Rpb24oYSxiLGMpe18ueCgic3RhcnRfY2xpZW50X2djZiIpJiYoYS5jb2xkSGFzaERhdGE9YixfLnJhKCJ5dC5nY2YuY29uZmlnLmNvbGRIYXNoRGF0YSIsYS5jb2xkSGFzaERhdGF8fG51bGwpLGE9T2woKSkmJihjfHwoYz0oYXdhaXQgZW0oYSkpPy5jb25maWcpLGMmJmF3YWl0IGRtKGMsYixjLmNvbmZpZ0RhdGEsYSkpfTsKXy5qbT1mdW5jdGlvbigpe2lmKCFpbS5pbnN0YW5jZSl7dmFyIGE9bmV3IGltO2ltLmluc3RhbmNlPWF9YT1pbS5pbnN0YW5jZTt2YXIgYj0oMCxfLmVsKSgpLWEuajtpZighKGEuaiE9PTAmJmI8Xy5zaigic2VuZF9jb25maWdfaGFzaF90aW1lciIpKSl7Yj1fLnNhKCJ5dC5nY2YuY29uZmlnLmNvbGRDb25maWdEYXRhIik7dmFyIGM9Xy5zYSgieXQuZ2NmLmNvbmZpZy5ob3RIYXNoRGF0YSIpLGQ9Xy5zYSgieXQuZ2NmLmNvbmZpZy5jb2xkSGFzaERhdGEiKTtiJiZjJiZkJiYoYS5qPSgwLF8uZWwpKCkpO3JldHVybntjb2xkQ29uZmlnRGF0YTpiLGhvdEhhc2hEYXRhOmMsY29sZEhhc2hEYXRhOmR9fX07a209ZnVuY3Rpb24oKXtyZXR1cm4iSU5ORVJUVUJFX0FQSV9LRVkiaW4gXy5QaSYmIklOTkVSVFVCRV9BUElfVkVSU0lPTiJpbiBfLlBpfTsKbG09ZnVuY3Rpb24oKXtyZXR1cm57aW5uZXJ0dWJlQXBpS2V5Ol8udygiSU5ORVJUVUJFX0FQSV9LRVkiKSxpbm5lcnR1YmVBcGlWZXJzaW9uOl8udygiSU5ORVJUVUJFX0FQSV9WRVJTSU9OIiksd3g6Xy53KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfQ09ORklHX0lORk8iKSxtcTpfLncoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9OQU1FIiwiV0VCIikscUo6Xy53KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsMSksaW5uZXJ0dWJlQ29udGV4dENsaWVudFZlcnNpb246Xy53KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfVkVSU0lPTiIpLHl4Ol8udygiSU5ORVJUVUJFX0NPTlRFWFRfSEwiKSx4eDpfLncoIklOTkVSVFVCRV9DT05URVhUX0dMIikseng6Xy53KCJJTk5FUlRVQkVfSE9TVF9PVkVSUklERSIpfHwiIixBeDohIV8udygiSU5ORVJUVUJFX1VTRV9USElSRF9QQVJUWV9BVVRIIiwhMSkscko6ISFfLncoIklOTkVSVFVCRV9PTUlUX0FQSV9LRVlfV0hFTl9BVVRIX0hFQURFUl9JU19QUkVTRU5UIiwKITEpLGFwcEluc3RhbGxEYXRhOl8udygiU0VSSUFMSVpFRF9DTElFTlRfQ09ORklHX0RBVEEiKX19OwptbT1mdW5jdGlvbihhKXt2YXIgYj17Y2xpZW50OntobDphLnl4LGdsOmEueHgsY2xpZW50TmFtZTphLm1xLGNsaWVudFZlcnNpb246YS5pbm5lcnR1YmVDb250ZXh0Q2xpZW50VmVyc2lvbixjb25maWdJbmZvOmEud3h9fTtuYXZpZ2F0b3IudXNlckFnZW50JiYoYi5jbGllbnQudXNlckFnZW50PVN0cmluZyhuYXZpZ2F0b3IudXNlckFnZW50KSk7dmFyIGM9Xy51LmRldmljZVBpeGVsUmF0aW87YyYmYyE9MSYmKGIuY2xpZW50LnNjcmVlbkRlbnNpdHlGbG9hdD1TdHJpbmcoYykpO2M9Xy53KCJFWFBFUklNRU5UU19UT0tFTiIsIiIpO2MhPT0iIiYmKGIuY2xpZW50LmV4cGVyaW1lbnRzVG9rZW49Yyk7Yz1fLnVqKCk7Yy5sZW5ndGg+MCYmKGIucmVxdWVzdD17aW50ZXJuYWxFeHBlcmltZW50RmxhZ3M6Y30pO2M9YS5tcTtjIT09IldFQiImJmMhPT0iTVdFQiImJmMhPT0xJiZjIT09Mnx8IWJ8fChiLmNsaWVudC5tYWluQXBwV2ViSW5mbz1iLmNsaWVudC5tYWluQXBwV2ViSW5mbz8/e30sCmIuY2xpZW50Lm1haW5BcHBXZWJJbmZvLndlYkRpc3BsYXlNb2RlPV8uT2ooKSk7KGM9Xy5zYSgieXQuZW1iZWRkZWRfcGxheWVyLmVtYmVkX3VybCIpKSYmYiYmKGIudGhpcmRQYXJ0eT17ZW1iZWRVcmw6Y30pO18ueCgid2ViX2xvZ19tZW1vcnlfdG90YWxfa2J5dGVzIikmJl8udS5uYXZpZ2F0b3I/LmRldmljZU1lbW9yeSYmKGM9Xy51Lm5hdmlnYXRvcj8uZGV2aWNlTWVtb3J5LGImJihiLmNsaWVudC5tZW1vcnlUb3RhbEtieXRlcz1gJHtjKjFFNn1gKSk7YS5hcHBJbnN0YWxsRGF0YSYmYiYmKGIuY2xpZW50LmNvbmZpZ0luZm89Yi5jbGllbnQuY29uZmlnSW5mb3x8e30sYi5jbGllbnQuY29uZmlnSW5mby5hcHBJbnN0YWxsRGF0YT1hLmFwcEluc3RhbGxEYXRhKTsoYT1fLlNqKCkpJiZiJiYoYi5jbGllbnQuY29ubmVjdGlvblR5cGU9YSk7Xy54KCJ3ZWJfbG9nX2VmZmVjdGl2ZV9jb25uZWN0aW9uX3R5cGUiKSYmKGE9Xy5VaigpKSYmYiYmKGIuY2xpZW50LmVmZmVjdGl2ZUNvbm5lY3Rpb25UeXBlPQphKTtpZihfLngoInN0YXJ0X2NsaWVudF9nY2YiKSl7dmFyIGQ9Xy5qbSgpO2QmJihhPWQuY29sZENvbmZpZ0RhdGEsYz1kLmNvbGRIYXNoRGF0YSxkPWQuaG90SGFzaERhdGEsYiYmKGIuY2xpZW50LmNvbmZpZ0luZm89Yi5jbGllbnQuY29uZmlnSW5mb3x8e30sYSYmKGIuY2xpZW50LmNvbmZpZ0luZm8uY29sZENvbmZpZ0RhdGE9YSksYyYmKGIuY2xpZW50LmNvbmZpZ0luZm8uY29sZEhhc2hEYXRhPWMpLGQmJihiLmNsaWVudC5jb25maWdJbmZvLmhvdEhhc2hEYXRhPWQpKSl9Xy53KCJERUxFR0FURURfU0VTU0lPTl9JRCIpJiYhXy54KCJwYWdlaWRfYXNfaGVhZGVyX3dlYiIpJiYoYi51c2VyPXtvbkJlaGFsZk9mVXNlcjpfLncoIkRFTEVHQVRFRF9TRVNTSU9OX0lEIil9KTshXy54KCJmaWxsX2RlbGVnYXRlX2NvbnRleHRfaW5fZ2VsX2tpbGxzd2l0Y2giKSYmKGE9Xy53KCJJTk5FUlRVQkVfQ09OVEVYVF9TRVJJQUxJWkVEX0RFTEVHQVRJT05fQ09OVEVYVCIpKSYmKGIudXNlcj0Key4uLmIudXNlcixzZXJpYWxpemVkRGVsZWdhdGlvbkNvbnRleHQ6YX0pO2E9Xy53KCJJTk5FUlRVQkVfQ09OVEVYVCIpO18ueCgiZW5hYmxlX3BlcnNpc3RlbnRfZGV2aWNlX3Rva2VuIikmJmE/LmNsaWVudD8ucm9sbG91dFRva2VuJiYoYi5jbGllbnQucm9sbG91dFRva2VuPWE/LmNsaWVudD8ucm9sbG91dFRva2VuKTthPU9iamVjdDtjPWEuYXNzaWduO2Q9Yi5jbGllbnQ7dmFyIGU9Xy53KCJERVZJQ0UiLCIiKSxmPXt9O2ZvcihsZXQgW2gsa11vZiBPYmplY3QuZW50cmllcyhfLmJqKGUpKSllPWgsZT09PSJjYnJhbmQiP2YuZGV2aWNlTWFrZT1rOmU9PT0iY21vZGVsIj9mLmRldmljZU1vZGVsPWs6ZT09PSJjYnIiP2YuYnJvd3Nlck5hbWU9azplPT09ImNicnZlciI/Zi5icm93c2VyVmVyc2lvbj1rOmU9PT0iY29zIj9mLm9zTmFtZT1rOmU9PT0iY29zdmVyIj9mLm9zVmVyc2lvbj1rOmU9PT0iY3BsYXRmb3JtIiYmKGYucGxhdGZvcm09ayk7Yi5jbGllbnQ9Yy5jYWxsKGEsZCxmKTsKXy54KCJ3ZWJfYXR0ZW50aW9uX2xvZ2dpbmdfZW5hYmxlZCIpJiYoYi5jbGllbnQud2luZG93V2lkdGhQb2ludHM9d2luZG93LmlubmVyV2lkdGgsYi5jbGllbnQud2luZG93SGVpZ2h0UG9pbnRzPXdpbmRvdy5pbm5lckhlaWdodCk7cmV0dXJuIGJ9OwpvbT1mdW5jdGlvbihhLGIsYz17fSl7dmFyIGQ9e307Xy53KCJFT01fVklTSVRPUl9EQVRBIik/ZD17IlgtR29vZy1FT00tVmlzaXRvci1JZCI6Xy53KCJFT01fVklTSVRPUl9EQVRBIil9OmQ9eyJYLUdvb2ctVmlzaXRvci1JZCI6Yy52aXNpdG9yRGF0YXx8Xy53KCJWSVNJVE9SX0RBVEEiLCIiKX07aWYoYiYmYi5pbmNsdWRlcygid3d3LnlvdXR1YmUtbm9jb29raWUuY29tIikpcmV0dXJuIGQ7Yj1jLmF1dGhvcml6YXRpb258fF8udygiQVVUSE9SSVpBVElPTiIpO2J8fChhP2I9YEJlYXJlciAke18uc2EoImdhcGkuYXV0aC5nZXRUb2tlbiIpKCkuT0h9YDooXy5ubS5pbnN0YW5jZXx8KF8ubm0uaW5zdGFuY2U9bmV3IF8ubm0pLGE9Xy5QaigpLF8ueCgicGFnZWlkX2FzX2hlYWRlcl93ZWIiKXx8ZGVsZXRlIGFbIlgtR29vZy1QYWdlSWQiXSxkPXsuLi5kLC4uLmF9KSk7YiYmKGQuQXV0aG9yaXphdGlvbj1iKTtyZXR1cm4gZH07Cl8ucG09ZnVuY3Rpb24oYSl7dGhpcy52ZXJzaW9uPTE7dGhpcy5hcmdzPWF9O18ucW09ZnVuY3Rpb24oYSxiKXt0aGlzLnRvcGljPWE7dGhpcy5qPWJ9O18uc209ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLnJtKCk7YyYmYy5wdWJsaXNoLmNhbGwoYyxhLnRvU3RyaW5nKCksYSxiKX07Xy5ybT1mdW5jdGlvbigpe3JldHVybiBfLnNhKCJ5dFB1YnN1YjJQdWJzdWIySW5zdGFuY2UiKX07dG09ZnVuY3Rpb24oYSxiLGM9e3NhbXBsZVJhdGU6LjF9KXtNYXRoLnJhbmRvbSgpPE1hdGgubWluKC4wMixjLnNhbXBsZVJhdGUvMTAwKSYmXy5zbSgibWV0YV9sb2dnaW5nX2NzaV9ldmVudCIse3RpbWVyTmFtZTphLHRpbWVsaW5lRGF0YTpifSl9OwpBbT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT17c3RhcnRUaW1lOigwLF8uZWwpKCksdGlja3M6e30saW5mb3M6e319O3RyeXtsZXQgaD1fLnVtKGIpO2lmKGg9PW51bGx8fCEoaD5fLndtfHxoPF8ueG0pKXt2YXIgZj1fLk5pKCgwLF8ueW0pKGIpKTtsZXQgaz0oMCxfLmVsKSgpO2UudGlja3MuZ2VsYz1rO3ptKys7Xy54KCJnZWxfY29tcHJlc3Npb25fY3NpX2tpbGxzd2l0Y2giKXx8IV8ueCgibG9nX2dlbF9jb21wcmVzc2lvbl9sYXRlbmN5IikmJiFfLngoImxvZ19nZWxfY29tcHJlc3Npb25fbGF0ZW5jeV9sciIpfHx0bSgiZ2VsX2NvbXByZXNzaW9uIixlLHtzYW1wbGVSYXRlOi4xfSk7Yy5oZWFkZXJzfHwoYy5oZWFkZXJzPXt9KTtjLmhlYWRlcnNbIkNvbnRlbnQtRW5jb2RpbmciXT0iZ3ppcCI7Yy5wb3N0Qm9keT1mO2MucG9zdFBhcmFtcz12b2lkIDB9ZChhLGMpfWNhdGNoKGgpe18uV2koaCksZChhLGMpfX07Cl8udW09ZnVuY3Rpb24oYSl7dHJ5e3JldHVybihuZXcgQmxvYihhLnNwbGl0KCIiKSkpLnNpemV9Y2F0Y2goYil7cmV0dXJuIF8uV2koYiksbnVsbH19O0JtPWZ1bmN0aW9uKGEpe3JldHVybiEhYS5KYXx8YS54aX07RG09ZnVuY3Rpb24oYSl7Qm0oYSkmJiFhLmFoJiYoYS5PYz0hMCxhLk9pJiZNYXRoLnJhbmRvbSgpPD1hLkRpJiZhLmNiLk91KGEuSmEpLENtKGEpLGEuU2EuU2IoKSYmYS5vKCksYS5TYS5saXN0ZW4oYS5LbSxhLm8uYmluZChhKSksYS5TYS5saXN0ZW4oYS5GbSxhLnYuYmluZChhKSkpfTtDbT1mdW5jdGlvbihhKXtpZighQm0oYSkpdGhyb3cgRXJyb3IoInhhIik7YS5jYi5XcCgiUVVFVUVEIixhLkphKS50aGVuKGI9PntiJiYhRW0oYSxiLGEuQ3IpP2EuRGMucGIoYXN5bmMoKT0+e2IuaWQhPT12b2lkIDAmJmF3YWl0IGEuY2Iubm4oYi5pZCxhLkphKTtDbShhKX0pOmEuU2EuU2IoKSYmYS5vKCl9KX07CkdtPWFzeW5jIGZ1bmN0aW9uKGEsYil7aWYoIUJtKGEpKXRocm93IEVycm9yKCJzYSIpO2IuaWQhPT12b2lkIDAmJihhd2FpdCBhLmNiLkF5KGIuaWQsYS5KYSl8fGEuVGYoRXJyb3IoInRhIikpKTtFbShhLGIsYS5Lcik/KGIuc2tpcFJldHJ5fHwoYj1GbShhLGIpKSxiJiYoYi5za2lwUmV0cnkmJmIuaWQhPT12b2lkIDAmJmF3YWl0IGEuY2IuRmYoYi5pZCxhLkphKSxhLkdkKGIudXJsLGIub3B0aW9ucywhIWIuc2tpcFJldHJ5KSkpOihhLlRmKEVycm9yKCJ1YSIpKSxiLmlkIT09dm9pZCAwJiZhd2FpdCBhLmNiLkZmKGIuaWQsYS5KYSkpfTtIbT1mdW5jdGlvbihhLGIpe2EuTHMmJiFhLlNhLlNiKCk/YS5McyhiKTphLmhhbmRsZUVycm9yKGIpfTtFbT1mdW5jdGlvbihhLGIsYyl7Yj1iLnRpbWVzdGFtcDtyZXR1cm4gYS5ub3coKS1iPj1jPyExOiEwfTsKRm09ZnVuY3Rpb24oYSxiKXtpZighQm0oYSkpdGhyb3cgRXJyb3IoInZhIik7dmFyIGM9Yi5vcHRpb25zLm9uRXJyb3I/Yi5vcHRpb25zLm9uRXJyb3I6KCk9Pnt9O2Iub3B0aW9ucy5vbkVycm9yPWFzeW5jKGUsZik9Pnt2YXIgaD1JbShmKSxrPUptKGYpO2smJmEuS2EmJmEuS2EoIndlYl9lbmFibGVfZXJyb3JfMjA0IikmJmEuaGFuZGxlRXJyb3IoRXJyb3IoIndhIiksYi51cmwsZik7aWYoYS5LYSYmYS5LYSgibndsX2NvbnNpZGVyX2Vycm9yX2NvZGUiKSYmaHx8YS5LYSYmIWEuS2EoIm53bF9jb25zaWRlcl9lcnJvcl9jb2RlIikmJmEucG90ZW50aWFsRXNmRXJyb3JDb3VudGVyPD1hLktqKWlmKGEuU2EuUWomJmF3YWl0IGEuU2EuUWooKSwhYS5TYS5TYigpKXtjKGUsZik7YS5LYSYmYS5LYSgibndsX2NvbnNpZGVyX2Vycm9yX2NvZGUiKSYmYj8uaWQhPT12b2lkIDAmJmF3YWl0IGEuY2Iubm4oYi5pZCxhLkphLCExKTtyZXR1cm59YS5LYSYmYS5LYSgibndsX2NvbnNpZGVyX2Vycm9yX2NvZGUiKSYmCiFoJiZhLnBvdGVudGlhbEVzZkVycm9yQ291bnRlcj5hLktqfHwoYS5wb3RlbnRpYWxFc2ZFcnJvckNvdW50ZXIrKyxiPy5pZCE9PXZvaWQgMCYmKGIuc2VuZENvdW50PGEuTXI/KGF3YWl0IGEuY2Iubm4oYi5pZCxhLkphLCEwLGs/ITE6dm9pZCAwKSxhLkRjLnBiKCgpPT57YS5TYS5TYigpJiZhLm8oKX0sYS5McikpOmF3YWl0IGEuY2IuRmYoYi5pZCxhLkphKSksYyhlLGYpKX07dmFyIGQ9Yi5vcHRpb25zLm9uU3VjY2Vzcz9iLm9wdGlvbnMub25TdWNjZXNzOigpPT57fTtiLm9wdGlvbnMub25TdWNjZXNzPWFzeW5jKGUsZik9PntiPy5pZCE9PXZvaWQgMCYmYXdhaXQgYS5jYi5GZihiLmlkLGEuSmEpO2EuU2EuZWYmJmEuS2EmJmEuS2EoInZzc19uZXR3b3JrX2hpbnQiKSYmYS5TYS5lZighMCk7ZChlLGYpfTtyZXR1cm4gYn07SW09ZnVuY3Rpb24oYSl7cmV0dXJuKGE9YT8uZXJyb3I/LmNvZGUpJiZhPj00MDAmJmE8PTU5OT8hMTohMH07CkptPWZ1bmN0aW9uKGEpe2E9YT8uZXJyb3I/LmNvZGU7cmV0dXJuIShhIT09NDAwJiZhIT09NDE1KX07CkxtPWZ1bmN0aW9uKCl7aWYoS20pcmV0dXJuIEttKCk7S209Xy4kbCgiTG9nc0RhdGFiYXNlVjIiLHtzZTp7TG9nc1JlcXVlc3RzU3RvcmU6e1BkOjJ9fSxzaGFyZWQ6ITEsdXBncmFkZShhLGIsYyl7YigyKSYmXy5rbChhLCJMb2dzUmVxdWVzdHNTdG9yZSIse2tleVBhdGg6ImlkIixhdXRvSW5jcmVtZW50OiEwfSk7YigzKTtiKDUpJiYoYz1jLm9iamVjdFN0b3JlKCJMb2dzUmVxdWVzdHNTdG9yZSIpLGMuai5pbmRleE5hbWVzLmNvbnRhaW5zKCJuZXdSZXF1ZXN0IikmJmMuai5kZWxldGVJbmRleCgibmV3UmVxdWVzdCIpLF8ub2woYywibmV3UmVxdWVzdFYyIixbInN0YXR1cyIsImludGVyZmFjZSIsInRpbWVzdGFtcCJdKSk7Yig3KSYmYS5qLm9iamVjdFN0b3JlTmFtZXMuY29udGFpbnMoInNhcGlzaWQiKSYmYS5qLmRlbGV0ZU9iamVjdFN0b3JlKCJzYXBpc2lkIik7Yig5KSYmYS5qLm9iamVjdFN0b3JlTmFtZXMuY29udGFpbnMoIlNXSGVhbHRoTG9nIikmJmEuai5kZWxldGVPYmplY3RTdG9yZSgiU1dIZWFsdGhMb2ciKX0sCnZlcnNpb246OX0pO3JldHVybiBLbSgpfTtNbT1mdW5jdGlvbihhKXtyZXR1cm4gXy5DbChMbSgpLGEpfTtPbT1hc3luYyBmdW5jdGlvbihhLGIpe3ZhciBjPXtzdGFydFRpbWU6KDAsXy5lbCkoKSxpbmZvczp7dHJhbnNhY3Rpb25UeXBlOiJZVF9JREJfVFJBTlNBQ1RJT05fVFlQRV9XUklURSJ9LHRpY2tzOnt9fTtiPWF3YWl0IE1tKGIpO2E9ey4uLmEsb3B0aW9uczpKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGEub3B0aW9ucykpLGludGVyZmFjZTpfLncoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9OQU1FIiwwKX07YT1hd2FpdCBfLm1sKGIsIkxvZ3NSZXF1ZXN0c1N0b3JlIixhKTtjLnRpY2tzLnRjPSgwLF8uZWwpKCk7Tm0oYyk7cmV0dXJuIGF9OwpQbT1hc3luYyBmdW5jdGlvbihhLGIpe3ZhciBjPXtzdGFydFRpbWU6KDAsXy5lbCkoKSxpbmZvczp7dHJhbnNhY3Rpb25UeXBlOiJZVF9JREJfVFJBTlNBQ1RJT05fVFlQRV9SRUFEIn0sdGlja3M6e319O2I9YXdhaXQgTW0oYik7dmFyIGQ9Xy53KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsMCksZT1bYSxkLDBdO2Q9W2EsZCwoMCxfLmVsKSgpXTt2YXIgZj1JREJLZXlSYW5nZS5ib3VuZChlLGQpLGg9InByZXYiO18ueCgidXNlX2ZpZm9fZm9yX25ldHdvcmtsZXNzIikmJihoPSJuZXh0Iik7dmFyIGs9dm9pZCAwO2U9YT09PSJORVciPyJyZWFkd3JpdGUiOiJyZWFkb25seSI7Xy54KCJ1c2VfcmVhZG9ubHlfZm9yX2dldF9tb3N0X3JlY2VudF9ieV9zdGF0dXNfa2lsbHN3aXRjaCIpJiYoZT0icmVhZHdyaXRlIik7YXdhaXQgXy5pbChiLFsiTG9nc1JlcXVlc3RzU3RvcmUiXSx7bW9kZTplLGtiOiEwfSxsPT51bChsLm9iamVjdFN0b3JlKCJMb2dzUmVxdWVzdHNTdG9yZSIpLmluZGV4KCJuZXdSZXF1ZXN0VjIiKSwKe3F1ZXJ5OmYsZGlyZWN0aW9uOmh9LG09PnttLmN1cnNvci52YWx1ZSYmKGs9bS5jdXJzb3IudmFsdWUsYT09PSJORVciJiYoay5zdGF0dXM9IlFVRVVFRCIsbS51cGRhdGUoaykpKX0pKTtjLnRpY2tzLnRjPSgwLF8uZWwpKCk7Tm0oYyk7cmV0dXJuIGt9O1FtPWFzeW5jIGZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uaWwoYXdhaXQgTW0oYiksWyJMb2dzUmVxdWVzdHNTdG9yZSJdLHttb2RlOiJyZWFkd3JpdGUiLGtiOiEwfSxjPT57dmFyIGQ9Yy5vYmplY3RTdG9yZSgiTG9nc1JlcXVlc3RzU3RvcmUiKTtyZXR1cm4gZC5nZXQoYSkudGhlbihlPT57aWYoZSlyZXR1cm4gZS5zdGF0dXM9IlFVRVVFRCIsXy5sbChkLGUpLnRoZW4oKCk9PmUpfSl9KX07ClJtPWFzeW5jIGZ1bmN0aW9uKGEsYixjPSEwLGQpe3JldHVybiBfLmlsKGF3YWl0IE1tKGIpLFsiTG9nc1JlcXVlc3RzU3RvcmUiXSx7bW9kZToicmVhZHdyaXRlIixrYjohMH0sZT0+e3ZhciBmPWUub2JqZWN0U3RvcmUoIkxvZ3NSZXF1ZXN0c1N0b3JlIik7cmV0dXJuIGYuZ2V0KGEpLnRoZW4oaD0+aD8oaC5zdGF0dXM9Ik5FVyIsYyYmKGguc2VuZENvdW50Kz0xKSxkIT09dm9pZCAwJiYoaC5vcHRpb25zLmNvbXByZXNzPWQpLF8ubGwoZixoKS50aGVuKCgpPT5oKSk6Xy5Way5yZXNvbHZlKHZvaWQgMCkpfSl9O1NtPWFzeW5jIGZ1bmN0aW9uKGEsYil7cmV0dXJuKGF3YWl0IE1tKGIpKS5kZWxldGUoIkxvZ3NSZXF1ZXN0c1N0b3JlIixhKX07ClRtPWFzeW5jIGZ1bmN0aW9uKGEpe2E9YXdhaXQgTW0oYSk7dmFyIGI9KDAsXy5lbCkoKS0yNTkyRTY7YXdhaXQgXy5pbChhLFsiTG9nc1JlcXVlc3RzU3RvcmUiXSx7bW9kZToicmVhZHdyaXRlIixrYjohMH0sYz0+cWwoYy5vYmplY3RTdG9yZSgiTG9nc1JlcXVlc3RzU3RvcmUiKSx7fSxkPT57aWYoZC5jdXJzb3IudmFsdWUudGltZXN0YW1wPD1iKXJldHVybiBkLmRlbGV0ZSgpLnRoZW4oKCk9PnJsKGQpKX0pKX07VW09YXN5bmMgZnVuY3Rpb24oKXthd2FpdCBXbCgpfTtObT1mdW5jdGlvbihhKXtfLngoIm53bF9jc2lfa2lsbHN3aXRjaCIpfHx0bSgibmV0d29ya2xlc3NfcGVyZm9ybWFuY2UiLGEse3NhbXBsZVJhdGU6MX0pfTtXbT1mdW5jdGlvbihhKXtyZXR1cm4gXy5DbChWbSgpLGEpfTsKWG09YXN5bmMgZnVuY3Rpb24oYSl7YT1hd2FpdCBXbShhKTt2YXIgYj0oMCxfLmVsKSgpLTI1OTJFNjthd2FpdCBfLmlsKGEsWyJTV0hlYWx0aExvZyJdLHttb2RlOiJyZWFkd3JpdGUiLGtiOiEwfSxjPT5xbChjLm9iamVjdFN0b3JlKCJTV0hlYWx0aExvZyIpLHt9LGQ9PntpZihkLmN1cnNvci52YWx1ZS50aW1lc3RhbXA8PWIpcmV0dXJuIGQuZGVsZXRlKCkudGhlbigoKT0+cmwoZCkpfSkpfTtZbT1hc3luYyBmdW5jdGlvbihhKXthd2FpdCAoYXdhaXQgV20oYSkpLmNsZWFyKCJTV0hlYWx0aExvZyIpfTsKXy5hbj1mdW5jdGlvbihhLGIsYyxkLGU9IiIsZj0hMSxoPSExKXtpZihhKWlmKGMmJiFfLk1rKCJjb2JhbHQiKSlfLldpKG5ldyBfLlhqKCJMZWdhY3kgcmVmZXJyZXItc2NydWJiZWQgcGluZyBkZXRlY3RlZCIpKSxhJiZabShhLHZvaWQgMCx7c2NydWJSZWZlcnJlcjohMH0pO2Vsc2UgaWYoZSl4aihhLGIsIlBPU1QiLGUsZCk7ZWxzZSBpZihfLncoIlVTRV9ORVRfQUpBWF9GT1JfUElOR19UUkFOU1BPUlQiLCExKXx8ZHx8aCl4aihhLGIsIkdFVCIsIiIsZCx2b2lkIDAsZixoKTtlbHNle2I6e3RyeXtjOnt2YXIgaz1uZXcgJG0oe3VybDphfSk7aWYoay5qLmRzaD09PSIxIil2YXIgbD1udWxsO2Vsc2V7dmFyIG09ay5qLmFlO2lmKG09PT0iMSIpe2xldCByPWsuai5hZHVybDtpZihyKXRyeXtsPXt2ZXJzaW9uOjMsbXY6ZGVjb2RlVVJJQ29tcG9uZW50KHIpLHp1OklhKGsubywiYWN0PTEiLCJyaT0xIixLYShrKSl9O2JyZWFrIGN9Y2F0Y2godCl7fX1sPW09PT0iMiI/e3ZlcnNpb246NCwKbXY6SWEoay5vLCJkY3Q9MSIsInN1aWQ9IitrLnYsInJpPTEiKSx6dTpJYShrLm8sImFjdD0xIiwicmk9MSIsInN1aWQ9IitrLnYpfTpudWxsfX1pZihsKXtsZXQgcj1fLlFiKGEpO3ZhciBuPSEoIXJ8fCFyLmVuZHNXaXRoKCIvYWNsayIpfHxfLlpiKGEsInJpIikhPT0iMSIpO2JyZWFrIGJ9fWNhdGNoKHIpe31uPSExfWlmKG4pe2I6e3RyeXtpZih3aW5kb3cubmF2aWdhdG9yJiZ3aW5kb3cubmF2aWdhdG9yLnNlbmRCZWFjb24mJndpbmRvdy5uYXZpZ2F0b3Iuc2VuZEJlYWNvbihhLCIiKSl7dmFyIHA9ITA7YnJlYWsgYn19Y2F0Y2gocil7fXA9ITF9cD8oYiYmYigpLGM9ITApOmM9ITF9ZWxzZSBjPSExO2N8fFptKGEsYil9fTsKWm09ZnVuY3Rpb24oYSxiLGM9e30pe3ZhciBkPW5ldyBJbWFnZSxlPSIiK2JuKys7Y25bZV09ZDtkLm9ubG9hZD1kLm9uZXJyb3I9KCk9PntiJiZjbltlXSYmYigpO2RlbGV0ZSBjbltlXX07Yy5zY3J1YlJlZmVycmVyJiYoZC5yZWZlcnJlclBvbGljeT0ibm8tcmVmZXJyZXIiKTtkLnNyYz1hfTtmbj1mdW5jdGlvbigpe2RufHwoZG49bmV3IF8uZW4oInl0Lm9mZmxpbmUiKSk7cmV0dXJuIGRufTtnbj1mdW5jdGlvbihhKXtpZihfLngoIm9mZmxpbmVfZXJyb3JfaGFuZGxpbmciKSl7dmFyIGI9Zm4oKS5nZXQoImVycm9ycyIsITApfHx7fTtiW2EubWVzc2FnZV09e25hbWU6YS5uYW1lLHN0YWNrOmEuc3RhY2t9O2EubGV2ZWwmJihiW2EubWVzc2FnZV0ubGV2ZWw9YS5sZXZlbCk7Zm4oKS5zZXQoImVycm9ycyIsYiwyNTkyRTMsITApfX07CmpuPWZ1bmN0aW9uKCl7aWYoIWhuLmluc3RhbmNlKXtsZXQgYT1fLnNhKCJ5dC5uZXR3b3JrUmVxdWVzdE1vbml0b3IuaW5zdGFuY2UiKXx8bmV3IGhuO18ucmEoInl0Lm5ldHdvcmtSZXF1ZXN0TW9uaXRvci5pbnN0YW5jZSIsYSk7aG4uaW5zdGFuY2U9YX1yZXR1cm4gaG4uaW5zdGFuY2V9O2xuPWZ1bmN0aW9uKCl7aWYoIWtuLmluc3RhbmNlKXtsZXQgYT1fLnNhKCJ5dC5uZXR3b3JrU3RhdHVzTWFuYWdlci5pbnN0YW5jZSIpfHxuZXcga247Xy5yYSgieXQubmV0d29ya1N0YXR1c01hbmFnZXIuaW5zdGFuY2UiLGEpO2tuLmluc3RhbmNlPWF9cmV0dXJuIGtuLmluc3RhbmNlfTsKbW49ZnVuY3Rpb24oYSxiKXthLnJhdGVMaW1pdD9hLmo/KF8uamYuQWEoYS5EKSxhLkQ9Xy5qZi5wYigoKT0+e2EuQiE9PWImJihhLmRpc3BhdGNoRXZlbnQoYiksYS5CPWIsYS5qPSgwLF8uZWwpKCkpfSxhLnJhdGVMaW1pdC0oKDAsXy5lbCkoKS1hLmopKSk6KGEuZGlzcGF0Y2hFdmVudChiKSxhLkI9YixhLmo9KDAsXy5lbCkoKSk6YS5kaXNwYXRjaEV2ZW50KGIpfTsKXy5wbj1mdW5jdGlvbigpe3ZhciBhPV8uc2EoInl0Lm5ldHdvcmtsZXNzUmVxdWVzdENvbnRyb2xsZXIuaW5zdGFuY2UiKTthfHwoYT1uZXcgbm4sXy5yYSgieXQubmV0d29ya2xlc3NSZXF1ZXN0Q29udHJvbGxlci5pbnN0YW5jZSIsYSksXy54KCJuZXR3b3JrbGVzc19sb2dnaW5nIikmJl8uUGwoKS50aGVuKGI9PnthLkphPWI7RG0oYSk7YS5CLnJlc29sdmUoKTthLk9pJiZNYXRoLnJhbmRvbSgpPD1hLkRpJiZhLkphJiZYbShhLkphKTtfLngoIm5ldHdvcmtsZXNzX2ltbWVkaWF0ZWx5X2Ryb3Bfc3dfaGVhbHRoX3N0b3JlIikmJm9uKGEpfSkpO3JldHVybiBhfTtvbj1hc3luYyBmdW5jdGlvbihhKXtpZighYS5KYSl0aHJvdyBTaygiY2xlYXJTV0hlYWx0aExvZ3NEYiIpO1ltKGEuSmEpLmNhdGNoKGI9PnthLmhhbmRsZUVycm9yKGIpfSl9Owpxbj1mdW5jdGlvbihhLGIsYyl7Yj1fLngoIndlYl9mcF92aWFfanNwYiIpP09iamVjdC5hc3NpZ24oe30sYik6YjtfLngoInVzZV9yZXF1ZXN0X3RpbWVfbXNfaGVhZGVyIik/Yi5oZWFkZXJzJiZfLmZqKGEpJiYoYi5oZWFkZXJzWyJYLUdvb2ctUmVxdWVzdC1UaW1lIl09SlNPTi5zdHJpbmdpZnkoTWF0aC5yb3VuZCgoMCxfLmVsKSgpKSkpOmIucG9zdFBhcmFtcz8ucmVxdWVzdFRpbWVNcyYmKGIucG9zdFBhcmFtcy5yZXF1ZXN0VGltZU1zPU1hdGgucm91bmQoKDAsXy5lbCkoKSkpO2MmJk9iamVjdC5rZXlzKGIpLmxlbmd0aD09PTA/Xy5hbihhKTpiLmNvbXByZXNzP2IucG9zdEJvZHk/KHR5cGVvZiBiLnBvc3RCb2R5IT09InN0cmluZyImJihiLnBvc3RCb2R5PUpTT04uc3RyaW5naWZ5KGIucG9zdEJvZHkpKSxBbShhLGIucG9zdEJvZHksYixfLnpqKSk6QW0oYSxKU09OLnN0cmluZ2lmeShiLnBvc3RQYXJhbXMpLGIsQWopOl8uemooYSxiKX07CnJuPWZ1bmN0aW9uKGEsYil7Xy54KCJ1c2VfZXZlbnRfdGltZV9tc19oZWFkZXIiKSYmXy5maihhKSYmKGIuaGVhZGVyc3x8KGIuaGVhZGVycz17fSksYi5oZWFkZXJzWyJYLUdvb2ctRXZlbnQtVGltZSJdPUpTT04uc3RyaW5naWZ5KE1hdGgucm91bmQoKDAsXy5lbCkoKSkpKTtyZXR1cm4gYn07Xy5zbj1mdW5jdGlvbigpe3JldHVybiBfLlBiKGRvY3VtZW50LmxvY2F0aW9uLnRvU3RyaW5nKCkpIT09Ind3dy55b3V0dWJlLW5vY29va2llLmNvbSJ9Owp2bj1mdW5jdGlvbihhLGIsYyxkKXshXy53KCJWSVNJVE9SX0RBVEEiKSYmYiE9PSJ2aXNpdG9yX2lkIiYmTWF0aC5yYW5kb20oKTwuMDEmJl8uV2kobmV3IF8uWGooIk1pc3NpbmcgVklTSVRPUl9EQVRBIHdoZW4gc2VuZGluZyBpbm5lcnR1YmUgcmVxdWVzdC4iLGIsYyxkKSk7aWYoIWEuaXNSZWFkeSgpKXRocm93IGE9bmV3IF8uWGooImlubmVydHViZSB4aHJjbGllbnQgbm90IHJlYWR5IixiLGMsZCksXy5VaShhKSxhO3ZhciBlPXtoZWFkZXJzOmQuaGVhZGVyc3x8e30sbWV0aG9kOiJQT1NUIixwb3N0UGFyYW1zOmMscG9zdEJvZHk6ZC5wb3N0Qm9keSxwb3N0Qm9keUZvcm1hdDpkLnBvc3RCb2R5Rm9ybWF0fHwiSlNPTiIsb25UaW1lb3V0OigpPT57ZC5vblRpbWVvdXQoKX0sb25GZXRjaFRpbWVvdXQ6ZC5vblRpbWVvdXQsb25TdWNjZXNzOihtLG4pPT57aWYoZC5vblN1Y2Nlc3MpZC5vblN1Y2Nlc3Mobil9LG9uRmV0Y2hTdWNjZXNzOm09PntpZihkLm9uU3VjY2VzcylkLm9uU3VjY2VzcyhtKX0sCm9uUHJvZ3Jlc3M6bT0+e2lmKGQub25Qcm9ncmVzcylkLm9uUHJvZ3Jlc3MobSl9LG9uRXJyb3I6KG0sbik9PntpZihkLm9uRXJyb3IpZC5vbkVycm9yKG4pfSxvbkZldGNoRXJyb3I6bT0+e2lmKGQub25FcnJvcilkLm9uRXJyb3IobSl9LHRpbWVvdXQ6ZC50aW1lb3V0LHdpdGhDcmVkZW50aWFsczohMCxjb21wcmVzczpkLmNvbXByZXNzfTtlLmhlYWRlcnNbIkNvbnRlbnQtVHlwZSJdfHwoZS5oZWFkZXJzWyJDb250ZW50LVR5cGUiXT0iYXBwbGljYXRpb24vanNvbiIpO2M9IiI7dmFyIGY9YS5jb25maWdfLnp4O2YmJihjPWYpO2Y9YS5jb25maWdfLkF4fHwhMTt2YXIgaD1vbShmLGMsZCk7T2JqZWN0LmFzc2lnbihlLmhlYWRlcnMsaCk7ZS5oZWFkZXJzLkF1dGhvcml6YXRpb24mJiFjJiZmJiYoZS5oZWFkZXJzWyJ4LW9yaWdpbiJdPXdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pO3ZhciBrPWRqKGAke2N9JHtgL3lvdXR1YmVpLyR7YS5jb25maWdfLmlubmVydHViZUFwaVZlcnNpb259LyR7Yn1gfWAsCnthbHQ6Impzb24ifSksbD0obT0hMSk9Pnt0cnl7aWYobSYmZC5yZXRyeSYmIWQubmV0d29ya2xlc3NPcHRpb25zLmJ5cGFzc05ldHdvcmtsZXNzKWUubWV0aG9kPSJQT1NUIixkLm5ldHdvcmtsZXNzT3B0aW9ucy53cml0ZVRoZW5TZW5kP18ucG4oKS53cml0ZVRoZW5TZW5kKGssZSk6Xy5wbigpLnNlbmRBbmRXcml0ZShrLGUpO2Vsc2UgaWYoZC5jb21wcmVzcylpZihlLnBvc3RCb2R5KXtsZXQgbj1lLnBvc3RCb2R5O3R5cGVvZiBuIT09InN0cmluZyImJihuPUpTT04uc3RyaW5naWZ5KGUucG9zdEJvZHkpKTtBbShrLG4sZSxfLnpqKX1lbHNlIEFtKGssSlNPTi5zdHJpbmdpZnkoZS5wb3N0UGFyYW1zKSxlLEFqKTtlbHNlIEFqKGssZSl9Y2F0Y2gobil7aWYobi5uYW1lPT09IkludmFsaWRBY2Nlc3NFcnJvciIpXy5XaShFcnJvcigieWEiKSk7ZWxzZSB0aHJvdyBuO319OyhfLnNhKCJ5dE5ldHdvcmtsZXNzTG9nZ2luZ0luaXRpYWxpemF0aW9uT3B0aW9ucyIpP18udG4uaXNOd2xJbml0aWFsaXplZDoKXy51bik/TmwoKS50aGVuKG09PntsKG0pfSk6bCghMSl9O18ueW49ZnVuY3Rpb24oYSwuLi5iKXtpZighd24oYSl8fGIuc29tZShjPT4hd24oYykpKXRocm93IEVycm9yKCJ6YSIpO2ZvcihsZXQgYyBvZiBiKXhuKGEsYyl9O3huPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBjIGluIGIpaWYod24oYltjXSkpe2lmKGMgaW4gYSYmIXduKGFbY10pKXRocm93IEVycm9yKCJBYSIpO2MgaW4gYXx8KGFbY109e30pO3huKGFbY10sYltjXSl9ZWxzZSBpZih6bihiW2NdKSl7aWYoYyBpbiBhJiYhem4oYVtjXSkpdGhyb3cgRXJyb3IoIkJhIik7YyBpbiBhfHwoYVtjXT1bXSk7QW4oYVtjXSxiW2NdKX1lbHNlIGFbY109YltjXTtyZXR1cm4gYX07QW49ZnVuY3Rpb24oYSxiKXtmb3IobGV0IGMgb2YgYil3bihjKT9hLnB1c2goeG4oe30sYykpOnpuKGMpP2EucHVzaChBbihbXSxjKSk6YS5wdXNoKGMpO3JldHVybiBhfTt3bj1mdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0ib2JqZWN0IiYmIUFycmF5LmlzQXJyYXkoYSl9Owp6bj1mdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0ib2JqZWN0IiYmQXJyYXkuaXNBcnJheShhKX07Xy5Cbj1mdW5jdGlvbigpe3ZhciBhPV8uc2EoIl9sYWN0Iix3aW5kb3cpO3JldHVybiBhPT1udWxsPy0xOk1hdGgubWF4KERhdGUubm93KCktYSwwKX07Cl8uRG49ZnVuY3Rpb24oKXtpZih3aW5kb3cuY3J5cHRvJiZ3aW5kb3cuY3J5cHRvLmdldFJhbmRvbVZhbHVlcyl0cnl7dmFyIGE9QXJyYXkoMTYpLGI9bmV3IFVpbnQ4QXJyYXkoMTYpO3dpbmRvdy5jcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKGIpO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWFbY109YltjXTtyZXR1cm4gYX1jYXRjaChkKXt9YT1BcnJheSgxNik7Zm9yKGI9MDtiPDE2O2IrKyl7Yz1EYXRlLm5vdygpO2ZvcihsZXQgZD0wO2Q8YyUyMztkKyspYVtiXT1NYXRoLnJhbmRvbSgpO2FbYl09TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjI1Nil9aWYoQ24pZm9yKGI9MSxjPTA7YzxDbi5sZW5ndGg7YysrKWFbYiUxNl1ePWFbKGItMSklMTZdLzReQ24uY2hhckNvZGVBdChjKSxiKys7cmV0dXJuIGF9OwpFbj1mdW5jdGlvbigpe3ZhciBhPV8uRG4oKSxiPVtdO2ZvcihsZXQgYz0wO2M8YS5sZW5ndGg7YysrKWIucHVzaCgiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODktXyIuY2hhckF0KGFbY10mNjMpKTtyZXR1cm4gYi5qb2luKCIiKX07Xy5Gbj1mdW5jdGlvbigpe3ZhciBhPV8udS55dExvZ2dpbmdEb2NEb2N1bWVudE5vbmNlXzthfHwoYT1FbigpLF8ucmEoInl0TG9nZ2luZ0RvY0RvY3VtZW50Tm9uY2VfIixhKSk7cmV0dXJuIGF9O18uR249ZnVuY3Rpb24oYSl7dmFyIGI9MDtmb3IobGV0IGM9MDtjPGEubGVuZ3RoO2MrKyliPWIqMzErYS5jaGFyQ29kZUF0KGMpLGM8YS5sZW5ndGgtMSYmKGIlPTB4ODAwMDAwMDAwMDAwKTtyZXR1cm4gYiUxRTV9O18uSW49ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBIbihhKX07CktuPWZ1bmN0aW9uKGEsYil7Yj1iLmp2O2lmKGEuai5oYXMoYikpcmV0dXJuIGEuai5nZXQoYikucHJvbWlzZTt2YXIgYz1KbihhLGIsW10sITApO2lmKGMhPT12b2lkIDApcmV0dXJuIFByb21pc2UucmVzb2x2ZShjKTt2YXIgZD17fTtkLnByb21pc2U9bmV3IFByb21pc2UoKGUsZik9PntkLlFoPWU7ZC5Rej1mfSk7YS5qLnNldChiLGQpO3JldHVybiBkLnByb21pc2V9OwpKbj1mdW5jdGlvbihhLGIsYyxkPSExKXtpZihjLmluZGV4T2YoYik+LTEpdGhyb3cgRXJyb3IoIkRhYCIrYik7aWYoYS5vLmhhcyhiKSlyZXR1cm4gYS5vLmdldChiKTtpZighYS52LmhhcyhiKSl7aWYoZClyZXR1cm47dGhyb3cgRXJyb3IoIkVhYCIrYik7fWQ9YS52LmdldChiKTtjLnB1c2goYik7aWYoZC5NYiE9PXZvaWQgMCl2YXIgZT1kLk1iO2Vsc2UgaWYoZC5XYyllPWRbXy5Mbl0/TW4oYSxkW18uTG5dLGMpOltdLGU9ZC5XYyguLi5lKTtlbHNlIGlmKGQuUGEpe2U9ZC5QYTtsZXQgZj1lW18uTG5dP01uKGEsZVtfLkxuXSxjKTpbXTtlPW5ldyBlKC4uLmYpfWVsc2UgdGhyb3cgRXJyb3IoIkZhYCIrYik7Yy5wb3AoKTtkLmdifHxhLm8uc2V0KGIsZSk7cmV0dXJuIGV9O01uPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYj9iLm1hcChkPT5kIGluc3RhbmNlb2YgSG4/Sm4oYSxkLmtleSxjLCEwKTpKbihhLGQsYykpOltdfTtfLnk9ZnVuY3Rpb24oKXtObnx8KE5uPW5ldyBPbik7cmV0dXJuIE5ufTsKUW49ZnVuY3Rpb24oKXtyZXR1cm4iaDV2Y2MiaW4gUG4mJlBuLmg1dmNjLnRyYWNlRXZlbnQ/LnRyYWNlQmVnaW4mJlBuLmg1dmNjLnRyYWNlRXZlbnQ/LnRyYWNlRW5kPzE6InBlcmZvcm1hbmNlImluIFBuJiZQbi5wZXJmb3JtYW5jZS5tYXJrJiZQbi5wZXJmb3JtYW5jZS5tZWFzdXJlPzI6MH07Um49ZnVuY3Rpb24oYSl7dmFyIGI9UW4oKTtzd2l0Y2goYil7Y2FzZSAxOlBuLmg1dmNjLnRyYWNlRXZlbnQudHJhY2VCZWdpbigiWVRMUiIsYSk7YnJlYWs7Y2FzZSAyOlBuLnBlcmZvcm1hbmNlLm1hcmsoYCR7YX0tc3RhcnRgKTticmVhaztjYXNlIDA6YnJlYWs7ZGVmYXVsdDpfLmViKGIsInVua25vd24gdHJhY2UgdHlwZSIpfX07ClNuPWZ1bmN0aW9uKGEpe3ZhciBiPVFuKCk7c3dpdGNoKGIpe2Nhc2UgMTpQbi5oNXZjYy50cmFjZUV2ZW50LnRyYWNlRW5kKCJZVExSIixhKTticmVhaztjYXNlIDI6Yj1gJHthfS1zdGFydGA7bGV0IGM9YCR7YX0tZW5kYDtQbi5wZXJmb3JtYW5jZS5tYXJrKGMpO1BuLnBlcmZvcm1hbmNlLm1lYXN1cmUoYSxiLGMpO2JyZWFrO2Nhc2UgMDpicmVhaztkZWZhdWx0Ol8uZWIoYiwidW5rbm93biB0cmFjZSB0eXBlIil9fTtUbj1mdW5jdGlvbihhKXt2YXIgYj1BcnJheS5mcm9tKGEuai5rZXlzKCkpLnNvcnQoKGMsZCk9PmEuZ2V0UHJpb3JpdHkoYS5qW2RdKS1hLmdldFByaW9yaXR5KGEualtjXSkpO2ZvcihsZXQgYyBvZiBiKWI9YS5qW2NdLGIuam9iSWQ9PT12b2lkIDB8fGIuTmp8fChhLnNjaGVkdWxlci5BYShiLmpvYklkKSxhLnNjaGVkdWxlci5HYShiLnhoLDEwKSl9OwpWbj1mdW5jdGlvbihhLGIsYyl7VW4mJmNvbnNvbGUuZ3JvdXBDb2xsYXBzZWQmJmNvbnNvbGUuZ3JvdXBFbmQmJihjb25zb2xlLmdyb3VwQ29sbGFwc2VkKGBbJHthLmNvbnN0cnVjdG9yLm5hbWV9XSAnJHthLnN0YXRlfScgdG8gJyR7Yn0nYCksY29uc29sZS5sb2coIndpdGggbWVzc2FnZTogIixjKSxjb25zb2xlLmdyb3VwRW5kKCkpfTtabj1mdW5jdGlvbihhLGIpe3ZhciBjPWIuZmlsdGVyKGU9PihhLnY/P2UucHJpb3JpdHk/PzApPT09MTApLGQ9Yi5maWx0ZXIoZT0+KGEudj8/ZS5wcmlvcml0eT8/MCkhPT0xMCk7cmV0dXJuIGEuQi5GZz9hc3luYyguLi5lKT0+e2F3YWl0IFduKGMsLi4uZSk7WG4oYSxkLC4uLmUpfTooLi4uZSk9PntZbihjLC4uLmUpO1huKGEsZCwuLi5lKX19OwpXbj1hc3luYyBmdW5jdGlvbihhLC4uLmIpe3ZhciBjPV8uQ2soKTtmb3IobGV0IGQgb2YgYSl7bGV0IGU7Yy5VKCgpPT57JG4oZC5uYW1lKTt2YXIgZj1hbygoKT0+ZC5jYWxsYmFjayguLi5iKSk7KDAsXy5ibykoZik/ZT1fLngoIndlYl9saWZlY3ljbGVfZXJyb3JfaGFuZGxpbmdfa2lsbHN3aXRjaCIpP2YudGhlbigoKT0+e2NvKGQubmFtZSl9KTpmLnRoZW4oKCk9PntjbyhkLm5hbWUpfSxoPT57d2luZG93Lm9uZXJyb3I/LihoLm1lc3NhZ2UsIiIsMCwwLGgpO2NvKGQubmFtZSl9KTpjbyhkLm5hbWUpfSk7ZSYmYXdhaXQgZX19O1huPWZ1bmN0aW9uKGEsYiwuLi5jKXtiPWIubWFwKGQ9Pih7eGg6KCk9PnskbihkLm5hbWUpO2FvKCgpPT5kLmNhbGxiYWNrKC4uLmMpKTtjbyhkLm5hbWUpfSxwcmlvcml0eTphLnY/P2QucHJpb3JpdHk/PzB9KSk7Yi5sZW5ndGgmJihhLmo9bmV3IGVvKGIpKX07ClluPWZ1bmN0aW9uKGEsLi4uYil7dmFyIGM9Xy5DaygpO2ZvcihsZXQgZCBvZiBhKWMuVSgoKT0+eyRuKGQubmFtZSk7YW8oKCk9PmQuY2FsbGJhY2soLi4uYikpO2NvKGQubmFtZSl9KX07JG49ZnVuY3Rpb24oYSl7Zm8mJmEmJlJuKGEpfTtjbz1mdW5jdGlvbihhKXtmbyYmYSYmU24oYSl9O2FvPWZ1bmN0aW9uKGEpe2lmKF8ueCgid2ViX2xpZmVjeWNsZV9lcnJvcl9oYW5kbGluZ19raWxsc3dpdGNoIikpcmV0dXJuIGEoKTt0cnl7cmV0dXJuIGEoKX1jYXRjaChiKXt3aW5kb3cub25lcnJvcj8uKGIubWVzc2FnZSwiIiwwLDAsYil9fTtfLmlvPWZ1bmN0aW9uKCl7Z298fChnbz1uZXcgaG8pO3JldHVybiBnb307Xy5rbz1mdW5jdGlvbihhKXtyZXR1cm4gXy5zYSgieXRjc2kuIisoYXx8IiIpKyJkYXRhXyIpfHxfLmpvKGEpfTtfLmxvPWZ1bmN0aW9uKGEpe2E9Xy5rbyhhKTthLm1ldGFkYXRhfHwoYS5tZXRhZGF0YT17fSk7cmV0dXJuIGEubWV0YWRhdGF9OwpfLm1vPWZ1bmN0aW9uKGEpe2E9Xy5rbyhhKTthLnRpY2t8fChhLnRpY2s9e30pO3JldHVybiBhLnRpY2t9O18ubm89ZnVuY3Rpb24oYSl7YT1fLmtvKGEpO2lmKGEuZ2VsKXtsZXQgYj1hLmdlbDtiLmdlbEluZm9zfHwoYi5nZWxJbmZvcz17fSk7Yi5nZWxUaWNrc3x8KGIuZ2VsVGlja3M9e30pfWVsc2UgYS5nZWw9e2dlbFRpY2tzOnt9LGdlbEluZm9zOnt9fTtyZXR1cm4gYS5nZWx9O18ub289ZnVuY3Rpb24oYSl7YT1fLm5vKGEpO2EuZ2VsSW5mb3N8fChhLmdlbEluZm9zPXt9KTtyZXR1cm4gYS5nZWxJbmZvc307Xy5wbz1mdW5jdGlvbihhKXt2YXIgYj1fLmtvKGEpLm5vbmNlO2J8fChiPUVuKCksXy5rbyhhKS5ub25jZT1iKTtyZXR1cm4gYn07Xy5qbz1mdW5jdGlvbihhKXt2YXIgYj17dGljazp7fSxpbmZvOnt9fTtfLnJhKCJ5dGNzaS4iKyhhfHwiIikrImRhdGFfIixiKTtyZXR1cm4gYn07CnFvPWZ1bmN0aW9uKCl7dmFyIGE9Xy5zYSgieXRjc2kuZGVidWciKTthfHwoYT1bXSxfLnJhKCJ5dGNzaS5kZWJ1ZyIsYSksXy5yYSgieXRjc2kucmVmZXJlbmNlIix7fSkpO3JldHVybiBhfTtfLnNvPWZ1bmN0aW9uKGEpe3ZhciBiPXFvKCk7Yi5wdXNoKGEpO18ueCgibGltaXRfeXRjc2lfZGVidWdfYXJyYXlfc2l6ZSIpJiZiLmxlbmd0aD5ybyYmYi5zcGxpY2UoMCxiLmxlbmd0aC1ybyl9O18udW89ZnVuY3Rpb24oYSl7YT1hfHwiIjt2YXIgYj1fLnRvKCk7aWYoYlthXSlyZXR1cm4gYlthXTt2YXIgYz17dGltZXJOYW1lOmEsaW5mbzp7fSx0aWNrOnt9LHNwYW46e30sanNwYkluZm86W119O18uc28oYyk7cmV0dXJuIGJbYV09Y307Xy50bz1mdW5jdGlvbigpe3ZhciBhPV8uc2EoInl0Y3NpLnJlZmVyZW5jZSIpO2lmKGEpcmV0dXJuIGE7cW8oKTtyZXR1cm4gXy5zYSgieXRjc2kucmVmZXJlbmNlIil9Owp2bz1mdW5jdGlvbihhKXtpZihhLm5hbWU9PT0iSmF2YUV4Y2VwdGlvbiIpcmV0dXJuITA7YT1hLnN0YWNrO3JldHVybiBhLmluY2x1ZGVzKCJjaHJvbWU6Ly8iKXx8YS5pbmNsdWRlcygiLWV4dGVuc2lvbjovLyIpfHxhLmluY2x1ZGVzKCJ3ZWJraXQtbWFza2VkLXVybDovLyIpfTt3bz1mdW5jdGlvbihhKXtpZighYS5zdGFjaylyZXR1cm4hMDt2YXIgYj0hYS5zdGFjay5pbmNsdWRlcygiXG4iKTtyZXR1cm4gYiYmYS5zdGFjay5pbmNsdWRlcygiRXJyb3JUeXBlOiAiKXx8YiYmYS5zdGFjay5pbmNsdWRlcygiQW5vbnltb3VzIGZ1bmN0aW9uIChVbmtub3duIHNjcmlwdCIpfHxhLnN0YWNrLnRvTG93ZXJDYXNlKCk9PT0ibm90IGF2YWlsYWJsZSJ8fGEuZmlsZU5hbWU9PT0idXNlci1zY3JpcHQifHxhLmZpbGVOYW1lLnN0YXJ0c1dpdGgoInVzZXItc2NyaXB0OiIpPyEwOiExfTsKXy5Cbz1mdW5jdGlvbigpe2lmKCF4byl7dmFyIGE9eG89bmV3IHlvO2EubGUubGVuZ3RoPTA7YS5TZC5sZW5ndGg9MDtfLnpvKGEsQW8pfXJldHVybiB4b307Xy56bz1mdW5jdGlvbihhLGIpe2IubGUmJmEubGUudW5zaGlmdC5hcHBseShhLmxlLGIubGUpO2IuU2QmJmEuU2QudW5zaGlmdC5hcHBseShhLlNkLGIuU2QpfTtfLkNvPWZ1bmN0aW9uKGEpe3JldHVybiBhdG9iKGEucmVwbGFjZSgvLS9nLCIrIikucmVwbGFjZSgvXy9nLCIvIikpfTsKXy5Fbz1mdW5jdGlvbihhLGIpe3ZhciBjPWEubGVuZ3RoLGQ9MCxlPSgpPT5hLmNoYXJDb2RlQXQoZCsrKTtkb3t2YXIgZj1EbyhlKTtpZihmPT09SW5maW5pdHkpYnJlYWs7bGV0IGg9Zj4+Mztzd2l0Y2goZiY3KXtjYXNlIDA6Zj1EbyhlKTtpZihoPT09YilyZXR1cm4gZjticmVhaztjYXNlIDE6aWYoaD09PWIpcmV0dXJuO2QrPTg7YnJlYWs7Y2FzZSAyOmY9RG8oZSk7aWYoaD09PWIpcmV0dXJuIGEuc3Vic3RyKGQsZik7ZCs9ZjticmVhaztjYXNlIDU6aWYoaD09PWIpcmV0dXJuO2QrPTQ7YnJlYWs7ZGVmYXVsdDpyZXR1cm59fXdoaWxlKGQ8Yyl9O0RvPWZ1bmN0aW9uKGEpe3ZhciBiPWEoKSxjPWImMTI3O2lmKGI8MTI4KXJldHVybiBjO2I9YSgpO2N8PShiJjEyNyk8PDc7aWYoYjwxMjgpcmV0dXJuIGM7Yj1hKCk7Y3w9KGImMTI3KTw8MTQ7aWYoYjwxMjgpcmV0dXJuIGM7Yj1hKCk7cmV0dXJuIGI8MTI4P2N8KGImMTI3KTw8MjE6SW5maW5pdHl9OwpIbz1mdW5jdGlvbihhLGIsYyxkKXtpZihhKWlmKEFycmF5LmlzQXJyYXkoYSkpe3ZhciBlPWQ7Zm9yKGQ9MDtkPGEubGVuZ3RoJiYhKGFbZF0mJihlKz1GbyhkLGFbZF0sYixjKSxlPjUwMCkpO2QrKyk7ZD1lfWVsc2UgaWYodHlwZW9mIGE9PT0ib2JqZWN0Iilmb3IoZSBpbiBhKXtpZihhW2VdKXthOnt2YXIgZj1lO3ZhciBoPWFbZV0saz1iLGw9YztpZih0eXBlb2YgaCE9PSJzdHJpbmcifHxmIT09ImNsaWNrVHJhY2tpbmdQYXJhbXMiJiZmIT09InRyYWNraW5nUGFyYW1zIil7Zj0wO2JyZWFrIGF9Zj0oaD1fLkVvKF8uQ28oaCksMikpP0ZvKGAke2Z9LnZlYCxoLGssbCk6MH1kKz1mO2QrPUZvKGUsYVtlXSxiLGMpO2lmKGQ+NTAwKWJyZWFrfX1lbHNlIGNbYl09R28oYSksZCs9Y1tiXS5sZW5ndGg7ZWxzZSBjW2JdPUdvKGEpLGQrPWNbYl0ubGVuZ3RoO3JldHVybiBkfTsKRm89ZnVuY3Rpb24oYSxiLGMsZCl7Yys9YC4ke2F9YDthPUdvKGIpO2RbY109YTtyZXR1cm4gYy5sZW5ndGgrYS5sZW5ndGh9O0dvPWZ1bmN0aW9uKGEpe3RyeXtyZXR1cm4odHlwZW9mIGE9PT0ic3RyaW5nIj9hOlN0cmluZyhKU09OLnN0cmluZ2lmeShhKSkpLnN1YnN0cigwLDUwMCl9Y2F0Y2goYil7cmV0dXJuYHVuYWJsZSB0byBzZXJpYWxpemUgJHt0eXBlb2YgYX0gKCR7Yi5tZXNzYWdlfSlgfX07CktvPWZ1bmN0aW9uKGEsYil7dmFyIGM9SW8oYik7aWYoYS5qW2NdKXJldHVybiBhLmpbY107dmFyIGQ9T2JqZWN0LmtleXMoYS5zdG9yZSl8fFtdO2lmKGQubGVuZ3RoPD0xJiZJbyhiKT09PWRbMF0pcmV0dXJuIGQ7dmFyIGU9W107Zm9yKGxldCBoPTA7aDxkLmxlbmd0aDtoKyspe2xldCBrPWRbaF0uc3BsaXQoIi8iKTtpZihKbyhiLmF1dGgsa1swXSkpe3ZhciBmPWIuaXNKc3BiO0pvKGY9PT12b2lkIDA/InVuZGVmaW5lZCI6Zj8idHJ1ZSI6ImZhbHNlIixrWzFdKSYmSm8oYi5jdHRBdXRoSW5mbyxrWzJdKSYmKGY9Yi50aWVyLGY9Zj09PXZvaWQgMD8idW5kZWZpbmVkIjpKU09OLnN0cmluZ2lmeShmKSxKbyhmLGtbM10pJiZlLnB1c2goZFtoXSkpfX1yZXR1cm4gYS5qW2NdPWV9O0pvPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9PT12b2lkIDB8fGE9PT0idW5kZWZpbmVkIj8hMDphPT09Yn07CklvPWZ1bmN0aW9uKGEpe3JldHVyblthLmF1dGg9PT12b2lkIDA/InVuZGVmaW5lZCI6YS5hdXRoLGEuaXNKc3BiPT09dm9pZCAwPyJ1bmRlZmluZWQiOmEuaXNKc3BiLGEuY3R0QXV0aEluZm89PT12b2lkIDA/InVuZGVmaW5lZCI6YS5jdHRBdXRoSW5mbyxhLnRpZXI9PT12b2lkIDA/InVuZGVmaW5lZCI6YS50aWVyXS5qb2luKCIvIil9O18uQj1mdW5jdGlvbihhLGIpe2lmKGEpcmV0dXJuIGFbYi5uYW1lXX07TG89ZnVuY3Rpb24oKXtyZXR1cm4gXy54KCJodG1sNV9zZW5kX3FvZV9vbl9nZWwiKXx8Xy54KCJ3ZWJfc2VuZF92c3MzX2lzb2xhdGVkX3BheWxvYWQiKX07T289ZnVuY3Rpb24oYSl7TW89YTtMbygpJiYoXy51Lnl0TG9nZ2luZ1RyYW5zcG9ydFJlZ2lzdGVyZWRDbGllbnRDdG9yXz1hKTtObz1uZXcgYX07UW89ZnVuY3Rpb24oKXt2YXIgYT1fLnNhKCJ5dC5sb2dnaW5nLmltcyIpO2F8fChhPW5ldyBQbyxfLnJhKCJ5dC5sb2dnaW5nLmltcyIsYSkpO3JldHVybiBhfTsKJG89ZnVuY3Rpb24oYSxiKXtpZihhLmVuZHBvaW50PT09ImxvZ19ldmVudCIpe1JvKGEpO3ZhciBjPVNvKGEpLGQ9VG8oYS5wYXlsb2FkKXx8IiI7YTp7aWYoXy54KCJlbmFibGVfd2ViX3RpZXJlZF9nZWwiKSl7dmFyIGU9VW9bZHx8IiJdO3ZhciBmPV8ueSgpLnJlc29sdmUoXy5JbihpbSkpPy53aigpPy5sb2dnaW5nSG90Q29uZmlnPy5ldmVudExvZ2dpbmdDb25maWc/LnBheWxvYWRQb2xpY2llcztpZihmKWZvcihsZXQgaD0wO2g8Zi5sZW5ndGg7aCsrKWlmKGZbaF0ucGF5bG9hZE51bWJlcj09PWUpe2U9ZltoXTticmVhayBhfX1lPXZvaWQgMH1mPTIwMDtpZihlKXtpZihlLmVuYWJsZWQ9PT0hMSYmIV8ueCgid2ViX3BheWxvYWRfcG9saWN5X2Rpc2FibGVkX2tpbGxzd2l0Y2giKSlyZXR1cm47Zj1WbyhlLnRpZXIpO2lmKGY9PT00MDApe1dvKGEsYik7cmV0dXJufX1Yb1tjXT0hMDtjPXtjdHRBdXRoSW5mbzpjLGlzSnNwYjohMSx0aWVyOmZ9O1FvKCkuc3RvcmVQYXlsb2FkKGMsCmEucGF5bG9hZCk7WW8oYixjLFpvKGQpKX19O1lvPWZ1bmN0aW9uKGEsYixjPSExKXthJiZPbyhhKTthPV8uc2ooInR2aHRtbDVfbG9nZ2luZ19tYXhfYmF0Y2hfYWRzX2ZvcmsiKXx8Xy5zaigidHZodG1sNV9sb2dnaW5nX21heF9iYXRjaCIpfHxfLnNqKCJ3ZWJfbG9nZ2luZ19tYXhfYmF0Y2giKXx8MTAwO3ZhciBkPSgwLF8uZWwpKCksZT1hcCghMSxiLnRpZXIpLGY9ZS5CO2MmJihlLmo9ITApO2M9MDtiJiYoYz1RbygpLmdldFNlcXVlbmNlQ291bnQoYikpO3ZhciBoPSgpPT57Xy5icCh7d3JpdGVUaGVuU2VuZDohMH0sdm9pZCAwLCExLGIudGllcil9O2M+PTFFMz9oKCk6Yz49YT9jcHx8KGNwPWRwKCgpPT57aCgpO2NwPXZvaWQgMH0sMCkpOmQtZj49MTAmJihlcCghMSxiLnRpZXIpLGUuQj1kKX07CldvPWZ1bmN0aW9uKGEsYil7aWYoYS5lbmRwb2ludD09PSJsb2dfZXZlbnQiKXtfLngoIm1vcmVfYWNjdXJhdGVfZ2VsX3BhcnNlciIpJiZRbygpLnN0b3JlUGF5bG9hZCh7aXNKc3BiOiExfSxhLnBheWxvYWQpO1JvKGEpO3ZhciBjPVNvKGEpLGQ9bmV3IE1hcDtkLnNldChjLFthLnBheWxvYWRdKTt2YXIgZT1UbyhhLnBheWxvYWQpfHwiIjsoYT1iP2I6TG8oKT9Nb3x8Xy51Lnl0TG9nZ2luZ1RyYW5zcG9ydFJlZ2lzdGVyZWRDbGllbnRDdG9yX3x8bnVsbDpudWxsKSYmT28oYSk7cmV0dXJuIG5ldyBfLkJmKChmLGgpPT57Tm8mJk5vLmlzUmVhZHkoKT9mcChkLE5vLGYsaCx7YnlwYXNzTmV0d29ya2xlc3M6ITB9LCEwLFpvKGUpKTpmKCl9KX19OwpTbz1mdW5jdGlvbihhKXt2YXIgYj0iIjtpZihhLmRhbmdlcm91c0xvZ1RvVmlzaXRvclNlc3Npb24pYj0idmlzaXRvck9ubHlBcHByb3ZlZEtleSI7ZWxzZSBpZihhLmN0dEF1dGhJbmZvKXtiPWEuY3R0QXV0aEluZm87bGV0IGM9e307Yi52aWRlb0lkP2MudmlkZW9JZD1iLnZpZGVvSWQ6Yi5wbGF5bGlzdElkJiYoYy5wbGF5bGlzdElkPWIucGxheWxpc3RJZCk7Z3BbYS5jdHRBdXRoSW5mby50b2tlbl09YztiPWEuY3R0QXV0aEluZm8udG9rZW59cmV0dXJuIGJ9OwpfLmJwPWZ1bmN0aW9uKGE9e30sYixjPSExLGQpe25ldyBfLkJmKChlLGYpPT57dmFyIGg9YXAoYyxkKSxrPWguajtoLmo9ITE7aWYoXy54KCJlbmFibGVfd2ViX3RpZXJlZF9nZWwiKSYmXy54KCJ3ZWJfdnNzX3JvdXRpbmdfY2hlY2tfYWxsX3RpZXJfcG9saWNpZXMiKSl7bGV0IGw9YXAoYywzMDApLG09YXAoYywyMDApO2s9a3x8bC5qfHxtLmo7bC5qPSExO20uaj0hMX1ocChoLnYpO2hwKGgubyk7aC5vPTA7Tm8mJk5vLmlzUmVhZHkoKT9kPT09dm9pZCAwJiZfLngoImVuYWJsZV93ZWJfdGllcmVkX2dlbCIpP2lwKGUsZixhLGIsYywzMDAsayk6aXAoZSxmLGEsYixjLGQsayk6KGVwKGMsZCksZSgpKX0pfTsKaXA9ZnVuY3Rpb24oYSxiLGM9e30sZCxlPSExLGY9MjAwLGg9ITEpe3ZhciBrPU5vLGw9bmV3IE1hcCxtPXtpc0pzcGI6ZSxjdHRBdXRoSW5mbzpkLHRpZXI6Zn07ZT17aXNKc3BiOmUsY3R0QXV0aEluZm86ZH07aWYoZCE9PXZvaWQgMClmPV8ueCgiZW5hYmxlX3dlYl90aWVyZWRfZ2VsIik/UW8oKS5zbWFydEV4dHJhY3RNYXRjaGluZ0VudHJpZXMoe2tleXM6W20sZV0sc2l6ZUxpbWl0OjFFM30pOlFvKCkuZXh0cmFjdE1hdGNoaW5nRW50cmllcyhlKSxsLnNldChkLGYpO2Vsc2UgZm9yKGxldCBuIG9mIE9iamVjdC5rZXlzKFhvKSlkPV8ueCgiZW5hYmxlX3dlYl90aWVyZWRfZ2VsIik/UW8oKS5zbWFydEV4dHJhY3RNYXRjaGluZ0VudHJpZXMoe2tleXM6W3tpc0pzcGI6ITEsY3R0QXV0aEluZm86bix0aWVyOmZ9LHtpc0pzcGI6ITEsY3R0QXV0aEluZm86bn1dLHNpemVMaW1pdDoxRTN9KTpRbygpLmV4dHJhY3RNYXRjaGluZ0VudHJpZXMoe2lzSnNwYjohMSxjdHRBdXRoSW5mbzpufSksCmQubGVuZ3RoPjAmJmwuc2V0KG4sZCksKF8ueCgid2ViX2ZwX3ZpYV9qc3BiX2FuZF9qc29uIikmJmMud3JpdGVUaGVuU2VuZHx8IV8ueCgid2ViX2ZwX3ZpYV9qc3BiX2FuZF9qc29uIikpJiZkZWxldGUgWG9bbl07ZnAobCxrLGEsYixjLCExLGgpfTsKZXA9ZnVuY3Rpb24oYT0hMSxiPTIwMCl7dmFyIGM9KCk9PntfLmJwKHt3cml0ZVRoZW5TZW5kOiEwfSx2b2lkIDAsYSxiKX0sZD1hcChhLGIpLGU9ZD09PWpwfHxkPT09a3A/NUUzOmxwO18ueCgid2ViX2dlbF90aW1lb3V0X2NhcCIpJiYhZC5vJiYoZT1kcCgoKT0+e2MoKX0sZSksZC5vPWUpO2hwKGQudik7ZT1fLncoIkxPR0dJTkdfQkFUQ0hfVElNRU9VVCIsXy5zaigid2ViX2dlbF9kZWJvdW5jZV9tcyIsMUU0KSk7Xy54KCJzaG9ydGVuX2luaXRpYWxfZ2VsX2JhdGNoX3RpbWVvdXQiKSYmbXAmJihlPW5wKTtlPWRwKCgpPT57Xy5zaigiZ2VsX21pbl9iYXRjaF9zaXplIik+MD9RbygpLmdldFNlcXVlbmNlQ291bnQoe2N0dEF1dGhJbmZvOnZvaWQgMCxpc0pzcGI6YSx0aWVyOmJ9KT49b3AmJmMoKTpjKCl9LGUpO2Qudj1lfTsKZnA9ZnVuY3Rpb24oYSxiLGMsZCxlPXt9LGYsaCl7dmFyIGs9TWF0aC5yb3VuZCgoMCxfLmVsKSgpKSxsPWEuc2l6ZSxtPXBwKGgpO2ZvcihsZXQgW24scF1vZiBhKXthPW47aD1wO2xldCByPV8ucWQoe2NvbnRleHQ6bW0oYi5jb25maWdffHxsbSgpKX0pO2lmKCFfLnlhKGgpJiYhXy54KCJ0aHJvd19lcnJfd2hlbl9sb2dldmVudF9tYWxmb3JtZWRfa2lsbHN3aXRjaCIpKXtkKCk7YnJlYWt9ci5ldmVudHM9aDsoaD1ncFthXSkmJnFwKHIsYSxoKTtkZWxldGUgZ3BbYV07bGV0IHQ9YT09PSJ2aXNpdG9yT25seUFwcHJvdmVkS2V5IjtycChyLGssdCk7Xy54KCJhbHdheXNfc2VuZF9hbmRfd3JpdGUiKSYmKGUud3JpdGVUaGVuU2VuZD0hMSk7bGV0IHY9QT0+e18ueCgic3RhcnRfY2xpZW50X2djZiIpJiZfLmpmLnBiKGFzeW5jKCk9Pnthd2FpdCBzcChBKX0pO2wtLTtsfHxjKCl9LHo9MCxFPSgpPT57eisrO2lmKGUuYnlwYXNzTmV0d29ya2xlc3MmJno9PT0xKXRyeXt2bihiLG0scix0cCh7d3JpdGVUaGVuU2VuZDohMH0sCnQsdixFLGYpKSxtcD0hMX1jYXRjaChBKXtfLlVpKEEpLGQoKX1sLS07bHx8YygpfTt0cnl7dm4oYixtLHIsdHAoZSx0LHYsRSxmKSksbXA9ITF9Y2F0Y2goQSl7Xy5VaShBKSxkKCl9fX07dHA9ZnVuY3Rpb24oYSxiLGMsZCxlKXthPXtyZXRyeTohMCxvblN1Y2Nlc3M6YyxvbkVycm9yOmQsbmV0d29ya2xlc3NPcHRpb25zOmEsZGFuZ2Vyb3VzTG9nVG9WaXNpdG9yU2Vzc2lvbjpiLGJJOiEhZSxoZWFkZXJzOnt9LHBvc3RCb2R5Rm9ybWF0OiIiLHBvc3RCb2R5OiIiLGNvbXByZXNzOl8ueCgiY29tcHJlc3NfZ2VsIil8fF8ueCgiY29tcHJlc3NfZ2VsX2xyIil9O3VwKCkmJihhLmhlYWRlcnNbIlgtR29vZy1SZXF1ZXN0LVRpbWUiXT1KU09OLnN0cmluZ2lmeShNYXRoLnJvdW5kKCgwLF8uZWwpKCkpKSk7cmV0dXJuIGF9OwpycD1mdW5jdGlvbihhLGIsYyl7dXAoKXx8KGEucmVxdWVzdFRpbWVNcz1TdHJpbmcoYikpO18ueCgidW5zcGxpdF9nZWxfcGF5bG9hZHNfaW5fbG9ncyIpJiYoYS51bnNwbGl0R2VsUGF5bG9hZHNJbkxvZ3M9ITApOyFjJiYoYj1fLncoIkVWRU5UX0lEIikpJiYoKGM9Xy53KCJCQVRDSF9DTElFTlRfQ09VTlRFUiIpfHwwKXx8KGM9TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjY1NTM1LzIpKSxjKyssYz42NTUzNSYmKGM9MSksXy5RaSgiQkFUQ0hfQ0xJRU5UX0NPVU5URVIiLGMpLGEuc2VyaWFsaXplZENsaWVudEV2ZW50SWQ9e3NlcmlhbGl6ZWRFdmVudElkOmIsY2xpZW50Q291bnRlcjpTdHJpbmcoYyl9KX07CnFwPWZ1bmN0aW9uKGEsYixjKXtpZihjLnZpZGVvSWQpdmFyIGQ9IlZJREVPIjtlbHNlIGlmKGMucGxheWxpc3RJZClkPSJQTEFZTElTVCI7ZWxzZSByZXR1cm47YS5jcmVkZW50aWFsVHJhbnNmZXJUb2tlblRhcmdldElkPWM7YS5jb250ZXh0PWEuY29udGV4dHx8e307YS5jb250ZXh0LnVzZXI9YS5jb250ZXh0LnVzZXJ8fHt9O2EuY29udGV4dC51c2VyLmNyZWRlbnRpYWxUcmFuc2ZlclRva2Vucz1be3Rva2VuOmIsc2NvcGU6ZH1dfTsKUm89ZnVuY3Rpb24oYSl7dmFyIGI9Xy50aigiaWxfcGF5bG9hZF9zY3JhcGluZyIpPT09ImVuYWJsZV9pbF9wYXlsb2FkX3NjcmFwaW5nIjtpZighXy5zYSgieXQubG9nZ2luZy50cmFuc3BvcnQuZW5hYmxlU2NyYXBpbmdGb3JUZXN0IikpaWYoYil2cD1bXSxfLnJhKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5lbmFibGVTY3JhcGluZ0ZvclRlc3QiLCEwKSxfLnJhKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5zY3JhcGVkUGF5bG9hZHNGb3JUZXN0aW5nIix2cCksXy5yYSgieXQubG9nZ2luZy50cmFuc3BvcnQucGF5bG9hZFRvU2NyYXBlIiwidmlzdWFsRWxlbWVudFNob3duIHZpc3VhbEVsZW1lbnRIaWRkZW4gdmlzdWFsRWxlbWVudEF0dGFjaGVkIHNjcmVlbkNyZWF0ZWQgdmlzdWFsRWxlbWVudEdlc3R1cmVkIHZpc3VhbEVsZW1lbnRTdGF0ZUNoYW5nZWQiLnNwbGl0KCIgIikpLF8ucmEoInl0LmxvZ2dpbmcudHJhbnNwb3J0LmdldFNjcmFwZWRQYXlsb2FkRnJvbUNsaWVudEV2ZW50c0Z1bmN0aW9uIiksCl8ucmEoInl0LmxvZ2dpbmcudHJhbnNwb3J0LnNjcmFwZUNsaWVudEV2ZW50IiwhMCk7ZWxzZSByZXR1cm47Yj1fLnNhKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5zY3JhcGVkUGF5bG9hZHNGb3JUZXN0aW5nIik7dmFyIGM9Xy5zYSgieXQubG9nZ2luZy50cmFuc3BvcnQucGF5bG9hZFRvU2NyYXBlIiksZD1fLnNhKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5zY3JhcGVDbGllbnRFdmVudCIpO2lmKGMmJmMubGVuZ3RoPj0xKWZvcihsZXQgZT0wO2U8Yy5sZW5ndGg7ZSsrKWEmJmEucGF5bG9hZFtjW2VdXSYmKGQ/Yi5wdXNoKGEucGF5bG9hZCk6Yi5wdXNoKChhPy5wYXlsb2FkKVtjW2VdXSkpO18ucmEoInl0LmxvZ2dpbmcudHJhbnNwb3J0LnNjcmFwZWRQYXlsb2Fkc0ZvclRlc3RpbmciLGIpfTt1cD1mdW5jdGlvbigpe3JldHVybiBfLngoInVzZV9yZXF1ZXN0X3RpbWVfbXNfaGVhZGVyIil8fF8ueCgibHJfdXNlX3JlcXVlc3RfdGltZV9tc19oZWFkZXIiKX07CmRwPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8ueCgidHJhbnNwb3J0X3VzZV9zY2hlZHVsZXIiKT09PSExP18ubWooYSxiKTpfLngoImxvZ2dpbmdfYXZvaWRfYmxvY2tpbmdfZHVyaW5nX25hdmlnYXRpb24iKXx8Xy54KCJscl9sb2dnaW5nX2F2b2lkX2Jsb2NraW5nX2R1cmluZ19uYXZpZ2F0aW9uIik/Xy5ZaigoKT0+e18uaW8oKS5jdXJyZW50U3RhdGU9PT0ibm9uZSI/YSgpOl8uaW8oKS5pbnN0YWxsKHtub25lOntjYWxsYmFjazphfX0pfSxiKTpfLllqKGEsYil9O2hwPWZ1bmN0aW9uKGEpe18ueCgidHJhbnNwb3J0X3VzZV9zY2hlZHVsZXIiKT9fLmpmLkFhKGEpOndpbmRvdy5jbGVhclRpbWVvdXQoYSl9OwpzcD1hc3luYyBmdW5jdGlvbihhKXthPWE/LnJlc3BvbnNlQ29udGV4dD8uZ2xvYmFsQ29uZmlnR3JvdXA7dmFyIGI9Xy5CKGEsd3ApLGM9YT8uaG90SGFzaERhdGEsZD1fLkIoYSx4cCksZT1hPy5jb2xkSGFzaERhdGEsZj1fLnkoKS5yZXNvbHZlKF8uSW4oaW0pKTtmJiYoYyYmKGI/YXdhaXQgZ20oZixjLGIpOmF3YWl0IGdtKGYsYykpLGUmJihkP2F3YWl0IGhtKGYsZSxkKTphd2FpdCBobShmLGUpKSk7Yj1hPy5yYXdGaW5jaFN0YXRpY0NvbmZpZ0dyb3VwOyhhPWE/LmZpbmNoU3RhdGljSGFzaERhdGEpPyhjPV8ueSgpLnJlc29sdmUoXy5Jbih5cCkpKT9hd2FpdCBjLndLKHtjb25maWc6Ynx8e30saUk6YXx8IiJ9KTooYnx8YSkmJl8uV2kobmV3IF8uWGooIkZpbmNoQ29uZmlnTWFuYWdlclNlcnZpY2UgaXMgbm90IHByZXNlbnQsIGJ1dCBGaW5jaCBjb25maWcgZGF0YSBpcyBwcmVzZW50LiIpKTpiJiZfLldpKG5ldyBfLlhqKCJGaW5jaCBjb25maWcgZGF0YSBpcyBwcmVzZW50LCBidXQgaGFzaCBpcyBtaXNzaW5nLiIpKX07CmFwPWZ1bmN0aW9uKGEsYj0yMDApe3JldHVybiBhP2I9PT0zMDA/anA6enA6Yj09PTMwMD9rcDpBcH07VG89ZnVuY3Rpb24oYSl7YT1PYmplY3Qua2V5cyhhKTtmb3IobGV0IGIgb2YgYSlpZihVb1tiXSlyZXR1cm4gYn07Vm89ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgIkRFTEFZRURfRVZFTlRfVElFUl9VTlNQRUNJRklFRCI6cmV0dXJuIDA7Y2FzZSAiREVMQVlFRF9FVkVOVF9USUVSX0RFRkFVTFQiOnJldHVybiAxMDA7Y2FzZSAiREVMQVlFRF9FVkVOVF9USUVSX0RJU1BBVENIX1RPX0VNUFRZIjpyZXR1cm4gMjAwO2Nhc2UgIkRFTEFZRURfRVZFTlRfVElFUl9GQVNUIjpyZXR1cm4gMzAwO2Nhc2UgIkRFTEFZRURfRVZFTlRfVElFUl9JTU1FRElBVEUiOnJldHVybiA0MDA7ZGVmYXVsdDpyZXR1cm4gMjAwfX07Wm89ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT0iZ2VsRGVidWdnaW5nRXZlbnQifHxhPT09IndhdGNoVGltZVNlZ21lbnQifTsKcHA9ZnVuY3Rpb24oYT0hMSl7cmV0dXJuIGEmJl8ueCgidnNzX3Rocm91Z2hfZ2VsX3ZpZGVvX3N0YXRzIik/InZpZGVvX3N0YXRzIjoibG9nX2V2ZW50In07Cl8uQ3A9ZnVuY3Rpb24oYSxiLGMsZD17fSl7dmFyIGU9e30sZj1NYXRoLnJvdW5kKGQudGltZXN0YW1wfHwoMCxfLmVsKSgpKTtlLmV2ZW50VGltZU1zPWY8TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVI/ZjowO2VbYV09YjthPV8uQm4oKTtlLmNvbnRleHQ9e2xhc3RBY3Rpdml0eU1zOlN0cmluZyhkLnRpbWVzdGFtcHx8IWlzRmluaXRlKGEpPy0xOmEpfTtkLnNlcXVlbmNlR3JvdXAmJiFfLngoIndlYl9nZWxfc2VxdWVuY2VfaW5mb19raWxsc3dpdGNoIikmJihhPWUuY29udGV4dCxiPWQuc2VxdWVuY2VHcm91cCxCcFtiXT1iIGluIEJwP0JwW2JdKzE6MCxhLnNlcXVlbmNlPXtpbmRleDpCcFtiXSxncm91cEtleTpifSxkLmVuZE9mU2VxdWVuY2UmJmRlbGV0ZSBCcFtkLnNlcXVlbmNlR3JvdXBdKTtfLngoIndlYl90YWdfYXV0b21hdGVkX2xvZ19ldmVudHMiKSYmKGUuY29udGV4dC5hdXRvbWF0ZWRMb2dFdmVudFNvdXJjZT1kLmF1dG9tYXRlZExvZ0V2ZW50U291cmNlKTsoZC5zZW5kSXNvbGF0ZWRQYXlsb2FkPwpXbzokbykoe2VuZHBvaW50OiJsb2dfZXZlbnQiLHBheWxvYWQ6ZSxjdHRBdXRoSW5mbzpkLmN0dEF1dGhJbmZvLGRhbmdlcm91c0xvZ1RvVmlzaXRvclNlc3Npb246ZC5kYW5nZXJvdXNMb2dUb1Zpc2l0b3JTZXNzaW9ufSxjKX07Xy5FcD1mdW5jdGlvbihhLGIsYz17fSl7dmFyIGQ9RHA7Xy53KCJ5dExvZ2dpbmdFdmVudHNEZWZhdWx0RGlzYWJsZWQiLCExKSYmRHA9PT1EcCYmKGQ9bnVsbCk7Xy5DcChhLGIsZCxjKX07CkZwPWZ1bmN0aW9uKGEsYj17fSl7aWYoYT1hLk5kKXtsZXQgYz1hLmZoLGQ9YS5BbDthPVtbImNvbXBvbmVudFN0YWNrIixhLmNvbXBvbmVudFN0YWNrXSxbIndpelRhZ05hbWUiLGEudGFnTmFtZV0sWyJ3aXpPd25lclRyYWNlIixhLnByPy5qb2luKCIgPiAiKV0sWyJlcnJvclNldmVyaXR5IixjPy50b1N0cmluZygpXSxbIndpekZlYXR1cmVGbGFncyIsZD9PYmplY3QuZW50cmllcyhkKS5qb2luKCJcbiIpOnZvaWQgMF1dO2ZvcihsZXQgW2UsZl1vZiBhKWE9ZixhIT09dm9pZCAwJiYoYltlXT1hKX1yZXR1cm4gYn07Xy5IcD1mdW5jdGlvbihhKXtfLkdwKGEpfTtfLklwPWZ1bmN0aW9uKGEpe18uR3AoYSwiV0FSTklORyIpfTsKXy5HcD1mdW5jdGlvbihhLGI9IkVSUk9SIixjLGQsZSxmPXt9LGg9ITEsayl7Zi5uYW1lPWN8fF8udygiSU5ORVJUVUJFX0NPTlRFWFRfQ0xJRU5UX05BTUUiLDEpO2YudmVyc2lvbj1kfHxfLncoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9WRVJTSU9OIik7SnAoYSxmLGIsaCxrKX07CkpwPWZ1bmN0aW9uKGEsYixjPSJFUlJPUiIsZD0hMSxlKXtpZihhKXthLmhhc093blByb3BlcnR5KCJsZXZlbCIpJiZhLmxldmVsJiYoYz1hLmxldmVsKTtpZihfLngoIndpel9lbmFibGVfbWV0YWRhdGFfZXh0cmFjdGlvbl9raWxsc3dpdGNoIikpe3ZhciBmPWI7aWYoIWY/LmNvbXBvbmVudFN0YWNrKXt2YXIgaD1hLk5kPy5jb21wb25lbnRTdGFjaztoJiYoZnx8KGY9e30pLGYuY29tcG9uZW50U3RhY2s9aCl9Yj1mfHxifWVsc2UgYj1GcChhLGIpLGY9YS5OZD8uZmgsZiE9PXZvaWQgMCYmYyE9PSJJR05PUkVEIiYmKGM9Zj49Mz8iRVJST1IiOiJXQVJOSU5HIik7aWYoXy54KCJjb25zb2xlX2xvZ19qc19leGNlcHRpb25zIil8fFsidGVzdCIsImRldiIsImF1dG9wdXNoIiwic3RhZ2luZyJdLmluY2x1ZGVzKF8udygiU0VSVkVSX1ZFUlNJT04iKSkpZj1bXSxmLnB1c2goYE5hbWU6ICR7YS5uYW1lfWApLGYucHVzaChgTWVzc2FnZTogJHthLm1lc3NhZ2V9YCksYS5oYXNPd25Qcm9wZXJ0eSgicGFyYW1zIikmJgpmLnB1c2goYEVycm9yIFBhcmFtczogJHtKU09OLnN0cmluZ2lmeShhLnBhcmFtcyl9YCksYS5oYXNPd25Qcm9wZXJ0eSgiYXJncyIpJiZmLnB1c2goYEVycm9yIGFyZ3M6ICR7SlNPTi5zdHJpbmdpZnkoYS5hcmdzKX1gKSxmLnB1c2goYEZpbGUgbmFtZTogJHthLmZpbGVOYW1lfWApLGYucHVzaChgU3RhY2t0cmFjZTogJHthLnN0YWNrfWApLGY9Zi5qb2luKCJcbiIpLHdpbmRvdy5jb25zb2xlLmxvZyhmLGEpO2lmKCEoS3A+PTUpKXtmPVtdO2ZvcihrIG9mIExwKXRyeXtrKCkmJmYucHVzaChrKCkpfWNhdGNoKEUpe312YXIgaz1mO2s9Wy4uLk1wLC4uLmtdO3ZhciBsPUViKGEpO2Y9bC5tZXNzYWdlfHwiVW5rbm93biBFcnJvciI7aD1sLm5hbWV8fCJVbmtub3duRXJyb3IiO3ZhciBtPWwuc3RhY2t8fGEuWEt8fCJOb3QgYXZhaWxhYmxlIjtpZihtLnN0YXJ0c1dpdGgoYCR7aH06ICR7Zn1gKSl7dmFyIG49bS5zcGxpdCgiXG4iKTtuLnNoaWZ0KCk7bT1uLmpvaW4oIlxuIil9bj1sLmxpbmVOdW1iZXJ8fAoiTm90IGF2YWlsYWJsZSI7bD1sLmZpbGVOYW1lfHwiTm90IGF2YWlsYWJsZSI7bGV0IHo9MDtpZihhLmhhc093blByb3BlcnR5KCJhcmdzIikmJmEuYXJncyYmYS5hcmdzLmxlbmd0aClmb3IodmFyIHA9MDtwPGEuYXJncy5sZW5ndGgmJiEoej1IbyhhLmFyZ3NbcF0sYHBhcmFtcy4ke3B9YCxiLHopLHo+PTUwMCk7cCsrKTtlbHNlIGlmKGEuaGFzT3duUHJvcGVydHkoInBhcmFtcyIpJiZhLnBhcmFtcyl7bGV0IEU9YS5wYXJhbXM7aWYodHlwZW9mIGEucGFyYW1zPT09Im9iamVjdCIpZm9yKHAgaW4gRSl7aWYoIUVbcF0pY29udGludWU7bGV0IEE9YHBhcmFtcy4ke3B9YCxGPUdvKEVbcF0pO2JbQV09Rjt6Kz1BLmxlbmd0aCtGLmxlbmd0aDtpZih6PjUwMClicmVha31lbHNlIGIucGFyYW1zPUdvKEUpfWlmKGsubGVuZ3RoKWZvcihwPTA7cDxrLmxlbmd0aCYmISh6PUhvKGtbcF0sYHBhcmFtcy5jb250ZXh0LiR7cH1gLGIseiksej49NTAwKTtwKyspO25hdmlnYXRvci52ZW5kb3ImJiFiLmhhc093blByb3BlcnR5KCJ2ZW5kb3IiKSYmCihiWyJkZXZpY2UudmVuZG9yIl09bmF2aWdhdG9yLnZlbmRvcik7cD17bWVzc2FnZTpmLG5hbWU6aCxsaW5lTnVtYmVyOm4sZmlsZU5hbWU6bCxzdGFjazptLHBhcmFtczpiLHNhbXBsZVdlaWdodDoxfTtiPU51bWJlcihhLmNvbHVtbk51bWJlcik7aXNOYU4oYil8fChwLmxpbmVOdW1iZXI9YCR7cC5saW5lTnVtYmVyfToke2J9YCk7aWYoYS5sZXZlbD09PSJJR05PUkVEIil2YXIgcj0wO2Vsc2UgYTp7YT1fLkJvKCk7Zm9yKHIgb2YgYS5sZSlpZihwLm1lc3NhZ2UmJnAubWVzc2FnZS5tYXRjaChyLldKKSl7cj1yLndlaWdodDticmVhayBhfWZvcih2YXIgdCBvZiBhLlNkKWlmKHQuY2FsbGJhY2socCkpe3I9dC53ZWlnaHQ7YnJlYWsgYX1yPTF9cC5zYW1wbGVXZWlnaHQ9cjtyPXA7Zm9yKHZhciB2IG9mIE5wKXtpZighdi5KaltyLm5hbWVdKWNvbnRpbnVlO3Q9di5KaltyLm5hbWVdO2ZvcihsZXQgRSBvZiB0KXt0PXIubWVzc2FnZS5tYXRjaChFLnJlZ2V4cCk7aWYoIXQpY29udGludWU7CnIucGFyYW1zWyJwYXJhbXMuZXJyb3Iub3JpZ2luYWwiXT10WzBdO2E9RS5ncm91cHM7cD17fTtmb3IoYj0wO2I8YS5sZW5ndGg7YisrKXBbYVtiXV09dFtiKzFdLHIucGFyYW1zW2BwYXJhbXMuZXJyb3IuJHthW2JdfWBdPXRbYisxXTtyLm1lc3NhZ2U9di5wbShwKTticmVha319ci5wYXJhbXN8fChyLnBhcmFtcz17fSk7dj1fLkJvKCk7ci5wYXJhbXNbInBhcmFtcy5lcnJvclNlcnZpY2VTaWduYXR1cmUiXT1gbXNnPSR7di5sZS5sZW5ndGh9JmNiPSR7di5TZC5sZW5ndGh9YDtyLnBhcmFtc1sicGFyYW1zLnNlcnZpY2VXb3JrZXIiXT0iZmFsc2UiO18udS5kb2N1bWVudCYmXy51LmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwmJihyLnBhcmFtc1sicGFyYW1zLmZzY3JpcHRzIl09U3RyaW5nKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoInNjcmlwdDpub3QoW25vbmNlXSkiKS5sZW5ndGgpKTsobmV3IE9wKFBwLCJzYW1wbGUiKSkuY29uc3RydWN0b3IhPT1PcCYmKHIucGFyYW1zWyJwYXJhbXMuZmNvbnN0Il09CiJ0cnVlIik7d2luZG93Lnl0ZXJyJiZ0eXBlb2Ygd2luZG93Lnl0ZXJyPT09ImZ1bmN0aW9uIiYmd2luZG93Lnl0ZXJyKHIpO3Iuc2FtcGxlV2VpZ2h0PT09MHx8UXAuaGFzKHIubWVzc2FnZSl8fChkP1JwKHIsYyk6U3AocixjLGUpKX19fTtScD1mdW5jdGlvbihhLGI9IkVSUk9SIil7VHAoYixhKTtVcChhKX07ClNwPWZ1bmN0aW9uKGEsYj0iRVJST1IiLGMpe2lmKGI9PT0iRVJST1IiKXtfLlZwLnB1Ymxpc2goImhhbmRsZUVycm9yIixhKTtpZihfLngoInJlY29yZF9hcHBfY3Jhc2hlZF93ZWIiKSYmV3A9PT0wJiZhLnNhbXBsZVdlaWdodD09PTEpe1dwKys7bGV0IGQ9e2FwcENyYXNoVHlwZToiQVBQX0NSQVNIX1RZUEVfQlJFQUtQQUQifTtfLngoInJlcG9ydF9jbGllbnRfZXJyb3Jfd2l0aF9hcHBfY3Jhc2hfa3MiKXx8KGQuc3lzdGVtSGVhbHRoPXtjcmFzaERhdGE6e2NsaWVudEVycm9yOntsb2dNZXNzYWdlOnttZXNzYWdlOmEubWVzc2FnZX19fX0pO18uRXAoImFwcENyYXNoZWQiLGQpfVhwKyt9ZWxzZSBiPT09IldBUk5JTkciJiZfLlZwLnB1Ymxpc2goImhhbmRsZVdhcm5pbmciLGEpO18ueCgia2V2bGFyX2dlbF9lcnJvcl9yb3V0aW5nIikmJihjPVlwKGIsYSxjKSkmJihfLkVwKCJjbGllbnRFcnJvciIsYyksKGI9PT0iRVJST1IifHxfLngoImVycm9yc19mbHVzaF9nZWxfYWx3YXlzX2tpbGxzd2l0Y2giKSkmJgpfLmJwKHZvaWQgMCx2b2lkIDAsITEpKTtfLngoInN1cHByZXNzX2Vycm9yXzIwNF9sb2dnaW5nIil8fFRwKGIsYSk7VXAoYSl9O1VwPWZ1bmN0aW9uKGEpe3RyeXtRcC5hZGQoYS5tZXNzYWdlKX1jYXRjaChiKXt9S3ArK307CllwPWZ1bmN0aW9uKGEsYixjPXt9KXthOntmb3IoZCBvZiBacClpZihfLk1rKGQudG9Mb3dlckNhc2UoKSkpe3ZhciBkPSEwO2JyZWFrIGF9ZD0hMX1pZighZCl7dmFyIGU9e3N0YWNrVHJhY2U6Yi5zdGFja307Yi5maWxlTmFtZSYmKGUuZmlsZW5hbWU9Yi5maWxlTmFtZSk7ZD1iLmxpbmVOdW1iZXImJmIubGluZU51bWJlci5zcGxpdD9iLmxpbmVOdW1iZXIuc3BsaXQoIjoiKTpbXTtkLmxlbmd0aCE9PTAmJihkLmxlbmd0aCE9PTF8fGlzTmFOKE51bWJlcihkWzBdKSk/ZC5sZW5ndGghPT0yfHxpc05hTihOdW1iZXIoZFswXSkpfHxpc05hTihOdW1iZXIoZFsxXSkpfHwoZS5saW5lTnVtYmVyPU51bWJlcihkWzBdKSxlLmNvbHVtbk51bWJlcj1OdW1iZXIoZFsxXSkpOmUubGluZU51bWJlcj1OdW1iZXIoZFswXSkpO2Q9e2xldmVsOiJFUlJPUl9MRVZFTF9VTktOT1dOIixtZXNzYWdlOmIubWVzc2FnZSxlcnJvckNsYXNzTmFtZTpiLm5hbWUsc2FtcGxlV2VpZ2h0OmIuc2FtcGxlV2VpZ2h0fTsKYT09PSJFUlJPUiI/ZC5sZXZlbD0iRVJST1JfTEVWRUxfRVJST1IiOmE9PT0iV0FSTklORyImJihkLmxldmVsPSJFUlJPUl9MRVZFTF9XQVJOTklORyIpO2E9e2lzT2JmdXNjYXRlZDohMCxicm93c2VyU3RhY2tJbmZvOmV9O2MucGFnZVVybD13aW5kb3cubG9jYXRpb24uaHJlZjtjLmt2UGFpcnM9W107Xy53KCJGRVhQX0VYUEVSSU1FTlRTIikmJihjLmV4cGVyaW1lbnRJZHM9Xy53KCJGRVhQX0VYUEVSSU1FTlRTIikpO2U9Xy53KCJMQVRFU1RfRUNBVENIRVJfU0VSVklDRV9UUkFDS0lOR19QQVJBTVMiKTtpZighXy5SaSgid2ViX2Rpc2FibGVfZ2VsX3N0cF9lY2F0Y2hlcl9raWxsc3dpdGNoIikmJmUpZm9yKHZhciBmIG9mIE9iamVjdC5rZXlzKGUpKWMua3ZQYWlycy5wdXNoKHtrZXk6Zix2YWx1ZTpTdHJpbmcoZVtmXSl9KTtpZihmPWIucGFyYW1zKWZvcih2YXIgaCBvZiBPYmplY3Qua2V5cyhmKSljLmt2UGFpcnMucHVzaCh7a2V5OmBjbGllbnQuJHtofWAsdmFsdWU6U3RyaW5nKGZbaF0pfSk7CmlmKGI9Yi5wYXJhbXM/LnNlc3Npb25SZXBsYXlJZCljLnNlc3Npb25SZXBsYXlJZD1TdHJpbmcoYik7Yj1fLncoIlNFUlZFUl9OQU1FIik7aD1fLncoIlNFUlZFUl9WRVJTSU9OIik7YiYmaCYmKGMua3ZQYWlycy5wdXNoKHtrZXk6InNlcnZlci5uYW1lIix2YWx1ZTpifSksYy5rdlBhaXJzLnB1c2goe2tleToic2VydmVyLnZlcnNpb24iLHZhbHVlOmh9KSk7KGI9Xy53KCJQTEFZRVJfQ0xJRU5UX1ZFUlNJT04iKSkmJmMua3ZQYWlycy5wdXNoKHtrZXk6ImNsaWVudC5wbGF5ZXIudmVyc2lvbiIsdmFsdWU6Yn0pO3JldHVybntlcnJvck1ldGFkYXRhOmMsc3RhY2tUcmFjZTphLGxvZ01lc3NhZ2U6ZH19fTsKVHA9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnBhcmFtc3x8e307YT17dXJsUGFyYW1zOnthOiJsb2dlcnJvciIsdDoianNlcnJvciIsdHlwZTpiLm5hbWUsbXNnOmIubWVzc2FnZS5zdWJzdHIoMCwyNTApLGxpbmU6Yi5saW5lTnVtYmVyLGxldmVsOmEsImNsaWVudC5uYW1lIjpjLm5hbWV9LHBvc3RQYXJhbXM6e3VybDpfLncoIlBBR0VfTkFNRSIsd2luZG93LmxvY2F0aW9uLmhyZWYpLGZpbGU6Yi5maWxlTmFtZX0sbWV0aG9kOiJQT1NUIn07Yy52ZXJzaW9uJiYoYVsiY2xpZW50LnZlcnNpb24iXT1jLnZlcnNpb24pO2lmKGEucG9zdFBhcmFtcyl7Yi5zdGFjayYmKGEucG9zdFBhcmFtcy5zdGFjaz1iLnN0YWNrKTtmb3IobGV0IGUgb2YgT2JqZWN0LmtleXMoYykpYS5wb3N0UGFyYW1zW2BjbGllbnQuJHtlfWBdPWNbZV07aWYoYj1fLncoIkxBVEVTVF9FQ0FUQ0hFUl9TRVJWSUNFX1RSQUNLSU5HX1BBUkFNUyIpKWZvcih2YXIgZCBvZiBPYmplY3Qua2V5cyhiKSlhLnBvc3RQYXJhbXNbZF09CmJbZF07KGQ9Xy53KCJMQVZBX1ZFUlNJT04iKSkmJihhLnBvc3RQYXJhbXNbImxhdmEudmVyc2lvbiJdPWQpO2Q9Xy53KCJTRVJWRVJfTkFNRSIpO2I9Xy53KCJTRVJWRVJfVkVSU0lPTiIpO2QmJmImJihhLnBvc3RQYXJhbXNbInNlcnZlci5uYW1lIl09ZCxhLnBvc3RQYXJhbXNbInNlcnZlci52ZXJzaW9uIl09Yik7KGQ9Xy53KCJQTEFZRVJfQ0xJRU5UX1ZFUlNJT04iKSkmJihhLnBvc3RQYXJhbXNbImNsaWVudC5wbGF5ZXIudmVyc2lvbiJdPWQpfV8uemooYCR7Xy53KCJFQ0FUQ0hFUl9SRVBPUlRfSE9TVCIsIiIpfS9lcnJvcl8yMDRgLGEpfTthcT1mdW5jdGlvbigpeyRwLmluc3RhbmNlfHwoJHAuaW5zdGFuY2U9bmV3ICRwKTtyZXR1cm4gJHAuaW5zdGFuY2V9OwpjcT1mdW5jdGlvbihhLGIpe2JxW2JdPWJxW2JdfHx7Y291bnQ6MH07dmFyIGM9YnFbYl07Yy5jb3VudCsrO2MudGltZT0oMCxfLmVsKSgpO2Euanx8KGEuaj1fLllqKCgpPT57dmFyIGQ9KDAsXy5lbCkoKTtmb3IobGV0IGUgaW4gYnEpYnFbZV0mJmQtYnFbZV0udGltZT42RTQmJmRlbGV0ZSBicVtlXTthJiYoYS5qPTApfSw1RTMpKTtyZXR1cm4gYy5jb3VudD41PyhjLmNvdW50PT09NiYmTWF0aC5yYW5kb20oKSoxRTU8MSYmKGM9bmV3IF8uWGooIkNTSSBkYXRhIGV4Y2VlZGVkIGxvZ2dpbmcgbGltaXQgd2l0aCBrZXkiLGIuc3BsaXQoIl8iKSksYi5pbmRleE9mKCJwbGV2Iik+PTB8fF8uSXAoYykpLCEwKTohMX07ZHE9ZnVuY3Rpb24oYT0wKXtyZXR1cm4gXy53KCJjbGllbnQtc2NyZWVuLW5vbmNlLXN0b3JlIix7fSlbYV19OwplcT1mdW5jdGlvbihhLGI9MCl7dmFyIGM9Xy53KCJjbGllbnQtc2NyZWVuLW5vbmNlLXN0b3JlIik7Y3x8KGM9e30sXy5RaSgiY2xpZW50LXNjcmVlbi1ub25jZS1zdG9yZSIsYykpO2NbYl09YX07ZnE9ZnVuY3Rpb24oYT0wKXtyZXR1cm4gYT09PTA/IlJPT1RfVkVfVFlQRSI6YFJPT1RfVkVfVFlQRS4ke2F9YH07Xy5ncT1mdW5jdGlvbihhPTApe3JldHVybiBfLncoZnEoYSkpfTtocT1mdW5jdGlvbigpe3ZhciBhPV8udygiY3NuLXRvLWN0dC1hdXRoLWluZm8iKTthfHwoYT17fSxfLlFpKCJjc24tdG8tY3R0LWF1dGgtaW5mbyIsYSkpO3JldHVybiBhfTtfLmlxPWZ1bmN0aW9uKGE9MCl7YT1kcShhKTtpZighYSYmIV8udygiVVNFX0NTTl9GQUxMQkFDSyIsITApKXJldHVybiBudWxsO2F8fChhPSJVTkRFRklORURfQ1NOIik7cmV0dXJuIGE/YTpudWxsfTtqcT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9aHEoKTsoYz1fLmlxKGMpKSYmZGVsZXRlIGRbY107YiYmKGRbYV09Yil9OwpfLmtxPWZ1bmN0aW9uKGEpe3JldHVybiBocSgpW2FdfTtfLm1xPWZ1bmN0aW9uKGEsYixjPTAsZCl7aWYoYSE9PWRxKGMpfHxiIT09Xy53KGZxKGMpKSlpZihqcShhLGQsYyksZXEoYSxjKSxfLlFpKGZxKGMpLGIpLGI9KCk9PntzZXRUaW1lb3V0KCgpPT57YSYmXy5FcCgiZm9yZWdyb3VuZEhlYXJ0YmVhdFNjcmVlbkFzc29jaWF0ZWQiLHtjbGllbnREb2N1bWVudE5vbmNlOmxxLGNsaWVudFNjcmVlbk5vbmNlOmF9KX0sMCl9LCJyZXF1ZXN0QW5pbWF0aW9uRnJhbWUiaW4gd2luZG93KXRyeXt3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGIpfWNhdGNoKGUpe2IoKX1lbHNlIGIoKX07Xy5vcT1mdW5jdGlvbihhLGIpe18ubnEoIl9zdGFydCIsYSxiKX07Cl8ucHE9ZnVuY3Rpb24oYSxiKXtpZighXy54KCJ3ZWJfY3NpX2FjdGlvbl9zYW1wbGluZ19lbmFibGVkIil8fCFfLmtvKGIpLmFjdGlvbkRpc2FibGVkKXt2YXIgYz1fLnVvKGJ8fCIiKTtfLnluKGMuaW5mbyxhKTthLmxvYWRUeXBlJiYoYz1hLmxvYWRUeXBlLF8ubG8oYikubG9hZFR5cGU9Yyk7Xy55bihfLm9vKGIpLGEpO2M9Xy5wbyhiKTtiPV8ua28oYikuY3R0QXV0aEluZm87YXEoKS5pbmZvKGEsYyxiKX19O3FxPWZ1bmN0aW9uKCl7cmV0dXJuKF8ueSgpLnJlc29sdmUoXy5JbihpbSkpPy53aigpPy5sb2dnaW5nSG90Q29uZmlnPy5jc2lDb25maWc/LmRlYnVnVGlja3M/P1tdKS5tYXAoYT0+T2JqZWN0LnZhbHVlcyhhKVswXSl9OwpfLm5xPWZ1bmN0aW9uKGEsYixjKXtpZighXy54KCJ3ZWJfY3NpX2FjdGlvbl9zYW1wbGluZ19lbmFibGVkIil8fCFfLmtvKGMpLmFjdGlvbkRpc2FibGVkKXt2YXIgZD1fLnBvKGMpLGU7aWYoZT1fLngoIndlYl9jc2lfZGVidWdfc2FtcGxlX2VuYWJsZWQiKSYmZCl7Xy55KCkucmVzb2x2ZShfLkluKGltKSk/LndqKCkmJiFycSYmKHJxPSEwLF8ubnEoImdjZmwiLCgwLF8uZWwpKCksYykpO2U9Xy55KCkucmVzb2x2ZShfLkluKGltKSk/LndqKCk/LmxvZ2dpbmdIb3RDb25maWc/LmNzaUNvbmZpZz8uZGVidWdTYW1wbGVXZWlnaHR8fDA7dmFyIGY7aWYoZj1lIT09MCliOntmPXFxKCk7aWYoZi5sZW5ndGg+MClmb3IodmFyIGg9MDtoPGYubGVuZ3RoO2grKylpZihhPT09ZltoXSl7Zj0hMDticmVhayBifWY9ITF9Zj8oZT1fLkduKGQpJWUhPT0wLF8ua28oYykuZGVidWdUaWNrc0V4Y2x1ZGVkTG9nZ2VkfHwoZj17fSxmLmRlYnVnVGlja3NFeGNsdWRlZD1lLF8ucHEoZixjKSksXy5rbyhjKS5kZWJ1Z1RpY2tzRXhjbHVkZWRMb2dnZWQ9CiEwKTplPSExfWlmKCFlKXtpZihhWzBdIT09Il8iJiYoZT1hLF8uc3EubWFyaykpe2Uuc3RhcnRzV2l0aCgibWFya18iKXx8KGU9Im1hcmtfIitlKTtjJiYoZSs9YCAoJHtjfSlgKTtmPWU7aD17fTtpZihiIT09dm9pZCAwJiYhXy54KCJ3ZWJfY3NpX2Rpc2FibGVfYWx0X3RpbWVfcGVyZm9ybWFuY2VfbWFyayIpKXtsZXQgbD1iO2w9Xy54KCJjc2lfdXNlX3BlcmZvcm1hbmNlX25hdmlnYXRpb25fdGltaW5nIik/bC1fLnNxLnRpbWVPcmlnaW46bC0oXy5zcS50aW1lT3JpZ2lufHxfLnNxLnRpbWluZy5uYXZpZ2F0aW9uU3RhcnQpO2guc3RhcnRUaW1lPWx9Xy54KCJjc2lfZW5hYmxlX2Nocm9tZV9kZXZ0b29sc19wZXJmb3JtYW5jZV90aW1lbGluZV9pbnRlZ3JhdGlvbiIpJiYoaC5kZXRhaWw9e3ZJOntkYXRhVHlwZToibWFya2VyIixjb2xvcjoicHJpbWFyeSIsdG9vbHRpcFRleHQ6Zn19KTtmPU9iamVjdC5rZXlzKGgpLmxlbmd0aD4wP2g6dm9pZCAwO3RyeXtfLnNxLm1hcmsoZSxmKX1jYXRjaChsKXtfLnNxLm1hcmsoZSl9fWU9Cl8udW8oY3x8IiIpO2UudGlja1thXT1ifHwoMCxfLmVsKSgpO2lmKGUuY2FsbGJhY2smJmUuY2FsbGJhY2tbYV0pZm9yKHZhciBrIG9mIGUuY2FsbGJhY2tbYV0paygpO2s9Xy5ubyhjKTtrLmdlbFRpY2tzJiYoay5nZWxUaWNrc1thXT0hMCk7ZT1fLm1vKGMpO2s9Ynx8KDAsXy5lbCkoKTtlW2FdPWs7ZT1fLmtvKGMpLmN0dEF1dGhJbmZvO2E9PT0iX3N0YXJ0Ij8oYT1hcSgpLGNxKGEsYGJhc2VsaW5lXyR7ZH1gKXx8Xy5FcCgibGF0ZW5jeUFjdGlvbkJhc2VsaW5lZCIse2NsaWVudEFjdGlvbk5vbmNlOmR9LHt0aW1lc3RhbXA6YixjdHRBdXRoSW5mbzplfSkpOmFxKCkudGljayhhLGQsYixlKTtfLnRxKGMpO3JldHVybiBrfX19OwpfLnZxPWZ1bmN0aW9uKGEpe3ZhciBiPV8udXEoImFmdCIsYSk7aWYoYilyZXR1cm4gYjtiPV8udygoYXx8IiIpKyJUSU1JTkdfQUZUX0tFWVMiLFsib2wiXSk7dmFyIGM9Yi5sZW5ndGg7Zm9yKGxldCBkPTA7ZDxjO2QrKyl7bGV0IGU9Xy51cShiW2RdLGEpO2lmKGUpcmV0dXJuIGV9cmV0dXJuIE5hTn07Xy51cT1mdW5jdGlvbihhLGIpe2lmKGE9Xy5tbyhiKVthXSlyZXR1cm4gdHlwZW9mIGE9PT0ibnVtYmVyIj9hOmFbYS5sZW5ndGgtMV19O18udHE9ZnVuY3Rpb24oYSl7dmFyIGI9Xy51cSgiX3N0YXJ0IixhKSxjPV8udnEoYSksZD0hd3E7YiYmYyYmZCYmKF8uc20oeHEsbmV3IHlxKE1hdGgucm91bmQoYy1iKSxhKSksd3E9ITApfTtfLnpxPWZ1bmN0aW9uKGEsYixjPSExKXtfLlZpKF8ucHEpKGEsYixjKX07Xy5BcT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uVmkoXy5ucSkoYSxiLGMpfTsKXy5CcT1mdW5jdGlvbihhLGIpe3JldHVybiBfLlZpKCgpPT57dmFyIGM9Xy5tbyhiKTtyZXR1cm4gYSBpbiBjfSkoKX07a2E9T2JqZWN0LmNyZWF0ZTtqYT1PYmplY3QuZGVmaW5lUHJvcGVydHk7aWE9Z2xvYmFsVGhpcztjYT0iSW50OCBVaW50OCBVaW50OENsYW1wZWQgSW50MTYgVWludDE2IEludDMyIFVpbnQzMiBGbG9hdDMyIEZsb2F0NjQiLnNwbGl0KCIgIik7aWEuQmlnSW50NjRBcnJheSYmKGNhLnB1c2goIkJpZ0ludDY0IiksY2EucHVzaCgiQmlnVWludDY0IikpO3ZhciBsYT1PYmplY3Quc2V0UHJvdG90eXBlT2Y7ZmEoIlN5bWJvbC5kaXNwb3NlIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOlN5bWJvbCgiYSIpfSk7CmZhKCJTdXBwcmVzc2VkRXJyb3IiLGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoYyxkLGUpe2lmKCEodGhpcyBpbnN0YW5jZW9mIGIpKXJldHVybiBuZXcgYihjLGQsZSk7ZT1FcnJvcihlKTsic3RhY2siaW4gZSYmKHRoaXMuc3RhY2s9ZS5zdGFjayk7dGhpcy5tZXNzYWdlPWUubWVzc2FnZTt0aGlzLmVycm9yPWM7dGhpcy5zdXBwcmVzc2VkPWR9aWYoYSlyZXR1cm4gYTtuYShiLEVycm9yKTtiLnByb3RvdHlwZS5uYW1lPSJTdXBwcmVzc2VkRXJyb3IiO3JldHVybiBifSk7CmZhKCJTdHJpbmcucHJvdG90eXBlLnJlcGxhY2VBbGwiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXtpZihiIGluc3RhbmNlb2YgUmVnRXhwJiYhYi5nbG9iYWwpdGhyb3cgbmV3IFR5cGVFcnJvcigiYiIpO3JldHVybiBiIGluc3RhbmNlb2YgUmVnRXhwP3RoaXMucmVwbGFjZShiLGMpOnRoaXMucmVwbGFjZShuZXcgUmVnRXhwKFN0cmluZyhiKS5yZXBsYWNlKC8oWy0oKVxbXF17fSs/Ki4kXF58LDojPCFcXF0pL2csIlxcJDEiKS5yZXBsYWNlKC9ceDA4L2csIlxceDA4IiksImciKSxjKX19KTtmYSgiUHJvbWlzZS53aXRoUmVzb2x2ZXJzIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKCl7dmFyIGIsYztyZXR1cm57cHJvbWlzZTpuZXcgUHJvbWlzZShmdW5jdGlvbihkLGUpe2I9ZDtjPWV9KSxyZXNvbHZlOmIscmVqZWN0OmN9fX0pOwpmYSgiT2JqZWN0Lmhhc093biIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYixjKX19KTtmYSgiQXJyYXkucHJvdG90eXBlLmF0IixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOnFhfSk7ZWEoImF0IixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOnFhfSk7ZmEoIlN0cmluZy5wcm90b3R5cGUuYXQiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6cWF9KTtfLl9EdW1wRXhjZXB0aW9uPXdpbmRvdy5fRHVtcEV4Y2VwdGlvbnx8ZnVuY3Rpb24oYSl7dGhyb3cgYTt9O3dpbmRvdy5fRHVtcEV4Y2VwdGlvbj1fLl9EdW1wRXhjZXB0aW9uO3dpbmRvdy55dGNzaSYmd2luZG93Lnl0Y3NpLnRpY2smJndpbmRvdy55dGNzaS50aWNrKCJyc2VzX2RwaiIpO18uQ3E9Xy5DcXx8e307Xy51PXRoaXN8fHNlbGY7Xy5EcT1fLnUuX0ZfdG9nZ2xlc19kZWZhdWx0X2Jhc2V8fFtdO3ZhLmdldD1mdW5jdGlvbigpe3JldHVybiBudWxsfTtfLmVoPW51bGw7Xy5FcT0iY2xvc3VyZV91aWRfIisoTWF0aC5yYW5kb20oKSoxRTk+Pj4wKTt2YXIgJG09Y2xhc3N7Y29uc3RydWN0b3Ioe3VybDphLGtMOmJ9KXt0aGlzLm89YTt0aGlzLkI9Yjt0aGlzLnY9KG5ldyBEYXRlKS5nZXRUaW1lKCktMTcwNDA2NzJFNTt0aGlzLmo9e307Zm9yKHZhciBjPS9bPyZdKFteJj1dKyk9KFteJl0qKS9nO2I9Yy5leGVjKGEpOyl0aGlzLmpbYlsxXV09YlsyXX19O18uSGEoXy5MYSxFcnJvcik7Xy5MYS5wcm90b3R5cGUubmFtZT0iQ3VzdG9tRXJyb3IiO3ZhciB3ZDt2YXIgTmE9Z2xvYmFsVGhpcy50cnVzdGVkVHlwZXMsUWE7Xy5TYT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX10b1N0cmluZygpe3JldHVybiB0aGlzLmorIiJ9fTtWYShhPT5hYGApfHxWYShhPT5hYFwwYCl8fFZhKGE9PmFgXG5gKXx8VmEoYT0+YWBcdTAwMDBgKTtfLldhPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuaj1hfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuan19O18uRnE9bmV3IF8uV2EoImFib3V0OmludmFsaWQjekNsb3N1cmV6Iik7dmFyIFphLGNiO1phPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuZmI9YX19O18uR3E9bmV3IFphKGE9Pi9eW146XSooWy8/I118JCkvLnRlc3QoYSkpO18uSHE9JGEoInRlbCIpO18uSXE9JGEoImRhdGEiKTtfLkpxPSRhKCJodHRwIik7Xy5LcT0kYSgiaHR0cHMiKTtfLkxxPSRhKCJmdHAiKTtfLk1xPSRhKCJtYWlsdG8iKTtfLk5xPSRhKCJpbnRlbnQiKTtfLk9xPSRhKCJzbXMiKTtfLlBxPSRhKCJ2bmQueW91dHViZSIpO18uYWI9W18uSXEsXy5KcSxfLktxLF8uTXEsXy5McSxfLkdxXTtjYj0vXlxzKig/IWphdmFzY3JpcHQ6KSg/OltcdysuLV0rOnxbXjovPyNdKig/OlsvPyNdfCQpKS9pO18uZmI9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWF9dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5qKyIifX07Xy5qYj1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX10b1N0cmluZygpe3JldHVybiB0aGlzLmorIiJ9fTt2YXIgcGI9ImFsdGVybmF0ZSBhdXRob3IgYm9va21hcmsgY2Fub25pY2FsIGNpdGUgaGVscCBpY29uIGxpY2Vuc2UgbW9kdWxlcHJlbG9hZCBuZXh0IHByZWZldGNoIGRucy1wcmVmZXRjaCBwcmVyZW5kZXIgcHJlY29ubmVjdCBwcmVsb2FkIHByZXYgc2VhcmNoIHN1YnJlc291cmNlIi5zcGxpdCgiICIpO3ZhciBEYj17fTt2YXIgS2I7S2I9UmVnRXhwKCJeKD86KFteOi8/Iy5dKyk6KT8oPzovLyg/OihbXlxcXFwvPyNdKilAKT8oW15cXFxcLz8jXSo/KSg/OjooWzAtOV0rKSk/KD89W1xcXFwvPyNdfCQpKT8oW14/I10rKT8oPzpcXD8oW14jXSopKT8oPzojKFtcXHNcXFNdKikpPyQiKTtfLlliPS8jfCQvO3ZhciBRcT0hIShfLkRxWzBdPj4yNSYxKSxScT0hIShfLkRxWzBdPj4yMCYxKSxTcT0hIShfLkRxWzBdPj4yNyYxKSxUcT0hIShfLkRxWzBdJjgpLFVxPSEhKF8uRHFbMF0mODE5MiksVnE9ISEoXy5EcVswXT4+MTkmMSksV3E9ISEoXy5EcVswXT4+MTcmMSksWHE9ISEoXy5EcVswXT4+MTgmMSk7dmFyIGRjLFZjLGRlLEFlLFZnO2RjPVFxP1NxOnVhKDYxMDQwMTMwMSwhMSk7Xy5ZcT1RcT9UcTp1YSg1MTM2NTk1MjMsITEpO1ZjPVFxP1JxfHwhVXE6dWEoNzQ4NDAyMTQ3LCEwKTtkZT1RcT9WcTp1YSg5MTk0NDQ4MjQsITEpO0FlPVFxP1dxOnVhKDkyODg3NTM5OCwhMSk7Vmc9UXE/WHE6dWEoNjgzNzQ5MjAxLCExKTt2YXIgZWMsWnE9Xy51Lm5hdmlnYXRvcjtlYz1acT9acS51c2VyQWdlbnREYXRhfHxudWxsOm51bGw7Xy5wY1siICJdPWZ1bmN0aW9uKCl7fTt2YXIgJHEsYXIsYnI7JHE9amMoKTthcj1pYygpPyExOmhjKCJUcmlkZW50Iil8fGhjKCJNU0lFIik7Xy5KbD1oYygiRWRnZSIpO2JyPWhjKCJHZWNrbyIpJiYhKF8uYmMoKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoIndlYmtpdCIpIT0tMSYmIWhjKCJFZGdlIikpJiYhKGhjKCJUcmlkZW50Iil8fGhjKCJNU0lFIikpJiYhaGMoIkVkZ2UiKTtfLmNyPV8uYmMoKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoIndlYmtpdCIpIT0tMSYmIWhjKCJFZGdlIik7Xy5kcj1fLmNyJiZoYygiTW9iaWxlIik7bmMoKXx8aGMoIk1hY2ludG9zaCIpO25jKCl8fGhjKCJXaW5kb3dzIik7KG5jKCk/ZWMucGxhdGZvcm09PT0iTGludXgiOmhjKCJMaW51eCIpKXx8bmMoKXx8aGMoIkNyT1MiKTtfLmVyPW5jKCk/ZWMucGxhdGZvcm09PT0iQW5kcm9pZCI6aGMoIkFuZHJvaWQiKTtvYygpO2hjKCJpUGFkIik7aGMoImlQb2QiKTtfLmZyPW9jKCl8fGhjKCJpUGFkIil8fGhjKCJpUG9kIik7Cl8uZ3I9Xy5iYygpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigia2Fpb3MiKSE9LTE7a2MoKTtfLmhyPW9jKCl8fGhjKCJpUG9kIik7Xy5pcj1oYygiaVBhZCIpOyFoYygiQW5kcm9pZCIpfHxtYygpfHxrYygpfHxqYygpfHxoYygiU2lsayIpO21jKCk7Xy5Paz1oYygiU2FmYXJpIikmJiEobWMoKXx8KGljKCk/MDpoYygiQ29hc3QiKSl8fGpjKCl8fChpYygpPzA6aGMoIkVkZ2UiKSl8fChpYygpP2ZjKCJNaWNyb3NvZnQgRWRnZSIpOmhjKCJFZGcvIikpfHwoaWMoKT9mYygiT3BlcmEiKTpoYygiT1BSIikpfHxrYygpfHxoYygiU2lsayIpfHxoYygiQW5kcm9pZCIpKSYmIShvYygpfHxoYygiaVBhZCIpfHxoYygiaVBvZCIpKTt2YXIgcmM9e30sdmM9bnVsbDt2YXIgd2M9dm9pZCAwO3ZhciBIYyxZYyxTYztfLkpjPV8ueWMoKTtfLmpyPV8ueWMoKTtIYz1fLnljKCk7Xy5rcj1fLnljKCk7WWM9Xy55YygpO18uT2M9Xy55YygibV9tIiwhMCk7U2M9Xy55YygpO18ubHI9Xy55YygpO3ZhciBucjtfLkFjPV8ueWMoImphcyIsITApO25yPVtdO25yW18uQWNdPTc7Xy5tcj1PYmplY3QuZnJlZXplKG5yKTtfLlBjPXt9O18uemM9e307Xy5vcj1PYmplY3QuZnJlZXplKHt9KTtfLnByPV8uQ2MoYT0+YSE9PW51bGwmJmEhPT12b2lkIDApO3ZhciBFYyxEYztFYz1fLkNjKGE9PnR5cGVvZiBhPT09Im51bWJlciIpO0RjPV8uQ2MoYT0+dHlwZW9mIGE9PT0ic3RyaW5nIik7Xy5ibz1fLkNjKGE9PmEhPW51bGwmJnR5cGVvZiBhPT09Im9iamVjdCImJnR5cGVvZiBhLnRoZW49PT0iZnVuY3Rpb24iKTtfLnFyPV8uQ2MoYT0+ISFhJiYodHlwZW9mIGE9PT0ib2JqZWN0Inx8dHlwZW9mIGE9PT0iZnVuY3Rpb24iKSk7dmFyIHJyLHNyO18uTWM9Xy5DYyhhPT5hPj1yciYmYTw9c3IpO3JyPUJpZ0ludChOdW1iZXIuTUlOX1NBRkVfSU5URUdFUik7c3I9QmlnSW50KE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKTtfLnRyPXR5cGVvZiBCaWdJbnQ9PT0iZnVuY3Rpb24iP0JpZ0ludC5hc0ludE46dm9pZCAwO18udXI9dHlwZW9mIEJpZ0ludD09PSJmdW5jdGlvbiI/QmlnSW50LmFzVWludE46dm9pZCAwO18udnI9TnVtYmVyLmlzU2FmZUludGVnZXI7Xy53cj1OdW1iZXIuaXNGaW5pdGU7Xy54cj1NYXRoLnRydW5jO3ZhciBUYz17fTt2YXIgS2M7Xy55cj1fLkZjKDApO18uenI9ZmQoKTtfLkFyPWZkKCk7Xy5Ccj1mZCgpO18uQ3I9ZmQoKTtfLkRyPWZkKCk7Xy5Fcj1mZCgpO18uRnI9ZmQoKTtfLkdyPWZkKCk7Xy5Icj1mZCgpO18uSXI9ZmQoKTtfLkpyPWZkKCk7Xy5Lcj1mZCgpO18uTHI9ZmQoKTtfLk1yPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjKXt0aGlzLkRhPV8uWGMoYSxiLGMsMjA0OCl9dG9KU09OKCl7cmV0dXJuIFVjKHRoaXMpfXNlcmlhbGl6ZShhKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoVWModGhpcyxhKSl9Y2xvbmUoKXt2YXIgYT10aGlzLkRhLGI9YVtfLkFjXXwwO3JldHVybiBfLiRjKHRoaXMsYSxiKT9fLmJkKHRoaXMsYSwhMCk6bmV3IHRoaXMuY29uc3RydWN0b3IoXy5aYyhhLGIsITEpKX19O18uTXIucHJvdG90eXBlW18uT2NdPV8uUGM7dmFyIGpqPXdpbmRvdzsiQVJUSUNMRSBTRUNUSU9OIE5BViBBU0lERSBIMSBIMiBIMyBINCBINSBINiBIRUFERVIgRk9PVEVSIEFERFJFU1MgUCBIUiBQUkUgQkxPQ0tRVU9URSBPTCBVTCBMSCBMSSBETCBEVCBERCBGSUdVUkUgRklHQ0FQVElPTiBNQUlOIERJViBFTSBTVFJPTkcgU01BTEwgUyBDSVRFIFEgREZOIEFCQlIgUlVCWSBSQiBSVCBSVEMgUlAgREFUQSBUSU1FIENPREUgVkFSIFNBTVAgS0JEIFNVQiBTVVAgSSBCIFUgTUFSSyBCREkgQkRPIFNQQU4gQlIgV0JSIE5PQlIgSU5TIERFTCBQSUNUVVJFIFBBUkFNIFRSQUNLIE1BUCBUQUJMRSBDQVBUSU9OIENPTEdST1VQIENPTCBUQk9EWSBUSEVBRCBURk9PVCBUUiBURCBUSCBTRUxFQ1QgREFUQUxJU1QgT1BUR1JPVVAgT1BUSU9OIE9VVFBVVCBQUk9HUkVTUyBNRVRFUiBGSUVMRFNFVCBMRUdFTkQgREVUQUlMUyBTVU1NQVJZIE1FTlUgRElBTE9HIFNMT1QgQ0FOVkFTIEZPTlQgQ0VOVEVSIEFDUk9OWU0gQkFTRUZPTlQgQklHIERJUiBIR1JPVVAgU1RSSUtFIFRUIi5zcGxpdCgiICIpLmNvbmNhdChbIkJVVFRPTiIsCiJJTlBVVCJdKTt2YXIgaWQ9e1FCOiJhbGxvdy1mb3JtcyIsU0I6ImFsbG93LW1vZGFscyIsVEI6ImFsbG93LW9yaWVudGF0aW9uLWxvY2siLFVCOiJhbGxvdy1wb2ludGVyLWxvY2siLFZCOiJhbGxvdy1wb3B1cHMiLFdCOiJhbGxvdy1wb3B1cHMtdG8tZXNjYXBlLXNhbmRib3giLFhCOiJhbGxvdy1wcmVzZW50YXRpb24iLFlCOiJhbGxvdy1zYW1lLW9yaWdpbiIsWkI6ImFsbG93LXNjcmlwdHMiLGFDOiJhbGxvdy10b3AtbmF2aWdhdGlvbiIsYkM6ImFsbG93LXRvcC1uYXZpZ2F0aW9uLWJ5LXVzZXItYWN0aXZhdGlvbiJ9LGxkPWhkKCgpPT5rZCgpKTtfLmc9Xy5uZC5wcm90b3R5cGU7Xy5nLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBfLm5kKHRoaXMud2lkdGgsdGhpcy5oZWlnaHQpfTtfLmcuYXJlYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLndpZHRoKnRoaXMuaGVpZ2h0fTtfLmcuYXNwZWN0UmF0aW89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy53aWR0aC90aGlzLmhlaWdodH07Xy5nLmlzRW1wdHk9ZnVuY3Rpb24oKXtyZXR1cm4hdGhpcy5hcmVhKCl9O18uZy5jZWlsPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLmNlaWwodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5jZWlsKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307Xy5nLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLmZsb29yKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGguZmxvb3IodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTsKXy5nLnJvdW5kPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLnJvdW5kKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGgucm91bmQodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTtfLmcuc2NhbGU9ZnVuY3Rpb24oYSxiKXt0aGlzLndpZHRoKj1hO3RoaXMuaGVpZ2h0Kj10eXBlb2YgYj09PSJudW1iZXIiP2I6YTtyZXR1cm4gdGhpc307dmFyIHJkPSJjb25zdHJ1Y3RvciBoYXNPd25Qcm9wZXJ0eSBpc1Byb3RvdHlwZU9mIHByb3BlcnR5SXNFbnVtZXJhYmxlIHRvTG9jYWxlU3RyaW5nIHRvU3RyaW5nIHZhbHVlT2YiLnNwbGl0KCIgIik7dmFyIE9wPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5qPWE9PT1QcCYmYnx8IiJ9dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5qfX0sUHA9e307bmV3IE9wKFBwLCIiKTtfLmc9dWQucHJvdG90eXBlO18uZy5nZXRFbGVtZW50c0J5VGFnTmFtZT1mdW5jdGlvbihhLGIpe3JldHVybihifHx0aGlzLmopLmdldEVsZW1lbnRzQnlUYWdOYW1lKFN0cmluZyhhKSl9O18uZy5jcmVhdGVFbGVtZW50PWZ1bmN0aW9uKGEpe3JldHVybiBCZCh0aGlzLmosYSl9O18uZy5jcmVhdGVUZXh0Tm9kZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5qLmNyZWF0ZVRleHROb2RlKFN0cmluZyhhKSl9O18uZy5hcHBlbmRDaGlsZD1mdW5jdGlvbihhLGIpe2EuYXBwZW5kQ2hpbGQoYil9O18uZy5hcHBlbmQ9ZnVuY3Rpb24oYSxiKXtBZChfLnZkKGEpLGEsYXJndW1lbnRzKX07Xy5nLmNhbkhhdmVDaGlsZHJlbj1mdW5jdGlvbihhKXtpZihhLm5vZGVUeXBlIT0xKXJldHVybiExO3N3aXRjaChhLnRhZ05hbWUpe2Nhc2UgIkFQUExFVCI6Y2FzZSAiQVJFQSI6Y2FzZSAiQkFTRSI6Y2FzZSAiQlIiOmNhc2UgIkNPTCI6Y2FzZSAiQ09NTUFORCI6Y2FzZSAiRU1CRUQiOmNhc2UgIkZSQU1FIjpjYXNlICJIUiI6Y2FzZSAiSU1HIjpjYXNlICJJTlBVVCI6Y2FzZSAiSUZSQU1FIjpjYXNlICJJU0lOREVYIjpjYXNlICJLRVlHRU4iOmNhc2UgIkxJTksiOmNhc2UgIk5PRlJBTUVTIjpjYXNlICJOT1NDUklQVCI6Y2FzZSAiTUVUQSI6Y2FzZSAiT0JKRUNUIjpjYXNlICJQQVJBTSI6Y2FzZSAiU0NSSVBUIjpjYXNlICJTT1VSQ0UiOmNhc2UgIlNUWUxFIjpjYXNlICJUUkFDSyI6Y2FzZSAiV0JSIjpyZXR1cm4hMX1yZXR1cm4hMH07Cl8uZy5yZW1vdmVOb2RlPV8uRGQ7Xy5nLmNvbnRhaW5zPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEmJmI/YT09Ynx8YS5jb250YWlucyhiKTohMX07Xy5nLmlzRm9jdXNhYmxlPV8uRmQ7dmFyIGlqPShuZXcgRGF0ZSkuZ2V0VGltZSgpO18uZz1MZC5wcm90b3R5cGU7Xy5nLmlzRW5hYmxlZD1mdW5jdGlvbigpe2lmKCFfLnUubmF2aWdhdG9yLmNvb2tpZUVuYWJsZWQpcmV0dXJuITE7aWYoIXRoaXMuaXNFbXB0eSgpKXJldHVybiEwO3RoaXMuc2V0KCJURVNUQ09PS0lFU0VOQUJMRUQiLCIxIix7dmo6NjB9KTtpZih0aGlzLmdldCgiVEVTVENPT0tJRVNFTkFCTEVEIikhPT0iMSIpcmV0dXJuITE7dGhpcy5yZW1vdmUoIlRFU1RDT09LSUVTRU5BQkxFRCIpO3JldHVybiEwfTsKXy5nLnNldD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9ITE7aWYodHlwZW9mIGM9PT0ib2JqZWN0Iil7dmFyIGU9Yy5zYW1lU2l0ZTtkPWMuc2VjdXJlfHwhMTt2YXIgZj1jLmRvbWFpbnx8dm9pZCAwO3ZhciBoPWMucGF0aHx8dm9pZCAwO3ZhciBrPWMudmp9aWYoL1s7PVxzXS8udGVzdChhKSl0aHJvdyBFcnJvcigiRGAiK2EpO2lmKC9bO1xyXG5dLy50ZXN0KGIpKXRocm93IEVycm9yKCJFYCIrYik7az09PXZvaWQgMCYmKGs9LTEpO2M9Zj8iO2RvbWFpbj0iK2Y6IiI7aD1oPyI7cGF0aD0iK2g6IiI7ZD1kPyI7c2VjdXJlIjoiIjtrPWs8MD8iIjprPT0wPyI7ZXhwaXJlcz0iKyhuZXcgRGF0ZSgxOTcwLDEsMSkpLnRvVVRDU3RyaW5nKCk6IjtleHBpcmVzPSIrKG5ldyBEYXRlKERhdGUubm93KCkrayoxRTMpKS50b1VUQ1N0cmluZygpO3RoaXMuai5jb29raWU9YSsiPSIrYitjK2graytkKyhlIT1udWxsPyI7c2FtZXNpdGU9IitlOiIiKX07Cl8uZy5nZXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hKyI9IixkPSh0aGlzLmouY29va2llfHwiIikuc3BsaXQoIjsiKTtmb3IobGV0IGU9MCxmO2U8ZC5sZW5ndGg7ZSsrKXtmPWRbZV0udHJpbSgpO2lmKGYubGFzdEluZGV4T2YoYywwKT09MClyZXR1cm4gZi5zbGljZShjLmxlbmd0aCk7aWYoZj09YSlyZXR1cm4iIn1yZXR1cm4gYn07Xy5nLnJlbW92ZT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5nZXQoYSkhPT12b2lkIDA7dGhpcy5zZXQoYSwiIix7dmo6MCxwYXRoOmIsZG9tYWluOmN9KTtyZXR1cm4gZH07Xy5nLnJkPWZ1bmN0aW9uKCl7cmV0dXJuIE1kKHRoaXMpLmtleXN9O18uZy5NYz1mdW5jdGlvbigpe3JldHVybiBNZCh0aGlzKS52YWx1ZXN9O18uZy5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIXRoaXMuai5jb29raWV9O18uZy5jbGVhcj1mdW5jdGlvbigpe3ZhciBhPU1kKHRoaXMpLmtleXM7Zm9yKGxldCBiPWEubGVuZ3RoLTE7Yj49MDtiLS0pdGhpcy5yZW1vdmUoYVtiXSl9OwpfLkxqPW5ldyBMZCh0eXBlb2YgZG9jdW1lbnQ9PSJ1bmRlZmluZWQiP251bGw6ZG9jdW1lbnQpO3ZhciBSZDtfLk5yPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dmFyIGM9Y3x8W107dGhpcy52PWE7dGhpcy5vPWJ8fG51bGw7dGhpcy5qPVtdO3RoaXMuaj10aGlzLmouY29uY2F0KGMpfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMudn19O18uT3I9bmV3IF8uTnIoIm43M3F3ZiIsIm43M3F3ZiIpO18uYWUucHJvdG90eXBlLlk9ITE7Xy5hZS5wcm90b3R5cGUuaWE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ZfTtfLmFlLnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7dGhpcy5ZfHwodGhpcy5ZPSEwLHRoaXMubGEoKSl9O18uYWUucHJvdG90eXBlW1N5bWJvbC5kaXNwb3NlXT1mdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpfTtfLmFlLnByb3RvdHlwZS5hZGRPbkRpc3Bvc2VDYWxsYmFjaz1mdW5jdGlvbihhLGIpe3RoaXMuWT9iIT09dm9pZCAwP2EuY2FsbChiKTphKCk6KHRoaXMuS3x8KHRoaXMuSz1bXSksYiYmKGE9YS5iaW5kKGIpKSx0aGlzLksucHVzaChhKSl9O18uYWUucHJvdG90eXBlLmxhPWZ1bmN0aW9uKCl7aWYodGhpcy5LKWZvcig7dGhpcy5LLmxlbmd0aDspdGhpcy5LLnNoaWZ0KCkoKX07dmE9dmF8fHt9O18uSGEoYmUsXy5hZSk7YmUucHJvdG90eXBlLmluaXRpYWxpemU9ZnVuY3Rpb24oKXt9O2NlLnByb3RvdHlwZS5leGVjdXRlPWZ1bmN0aW9uKGEpe3RoaXMuaiYmKHRoaXMuai5jYWxsKHRoaXMub3x8bnVsbCxhKSx0aGlzLmo9dGhpcy5vPW51bGwpfTtjZS5wcm90b3R5cGUuYWJvcnQ9ZnVuY3Rpb24oKXt0aGlzLm89dGhpcy5qPW51bGx9O3ZhLndrPWNlO18uSGEoZWUsXy5hZSk7Xy5nPWVlLnByb3RvdHlwZTtfLmcuUGo9bnVsbDtfLmcuT3k9YmU7Xy5nLkFqPW51bGw7Xy5nLnN0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuan07Xy5nLmdldElkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuRH07Xy5nLmlzTG9hZGVkPWZ1bmN0aW9uKCl7cmV0dXJuISF0aGlzLkFqfTtfLmcueWU9ZnVuY3Rpb24oKXt0aGlzLkFqPW5ldyBiZX07Xy5nLm9uTG9hZD1mdW5jdGlvbihhKXt2YXIgYj1uZXcgdGhpcy5PeTtiLmluaXRpYWxpemUoYSgpKTt0aGlzLkFqPWI7aWYodGhpcy5vJiYoYj1pZSh0aGlzLm8sYSgpKSkpcmV0dXJuIGI7aWYodGhpcy5CJiYoYT1pZSh0aGlzLkIsYSgpKSkpcmV0dXJuIGE7dGhpcy52JiYodGhpcy52Lmxlbmd0aD0wKTtyZXR1cm4gbnVsbH07Cl8uZy5vbkVycm9yPWZ1bmN0aW9uKGEpe3RoaXMudiYmKGE9aWUodGhpcy52LGEpKSYmXy4kYihFcnJvcigiR2AiK2EpKTt0aGlzLm8mJih0aGlzLm8ubGVuZ3RoPTApO3RoaXMuQiYmKHRoaXMuQi5sZW5ndGg9MCl9O18uZy5sYT1mdW5jdGlvbigpe2VlLnpiLmxhLmNhbGwodGhpcyk7Xy5aZCh0aGlzLkFqKTt0aGlzLlBqPW51bGx9O3ZhLk9nPWVlO3ZhciBRZz17RVJST1I6ImVycm9yIixJRExFOiJpZGxlIixNczoiYWN0aXZlIixpdToidXNlcklkbGUiLGh1OiJ1c2VyQWN0aXZlIn07Xy5nPWplLnByb3RvdHlwZTtfLmcuUnI9ZnVuY3Rpb24oKXt9O18uZy5UaD1mdW5jdGlvbigpe307Xy5nLm5pPWZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoIkgiKTt9O18uZy5BZz1mdW5jdGlvbigpe3Rocm93IEVycm9yKCJJIik7fTtfLmcuVnA9ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH07Xy5nLmlzQWN0aXZlPWZ1bmN0aW9uKCl7cmV0dXJuITF9O18uZy5GcT1mdW5jdGlvbigpe3JldHVybiExfTtfLmcuZW49ZnVuY3Rpb24oKXt9O18uZy5abj1mdW5jdGlvbigpe307dmFyIFByPWNsYXNze2luaXQoKXtfLkZhKCJfRl9pbnN0YWxsQ3NzIixhPT57YSYma2UoYSl9KX19O3ZhciBtZT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuaj17fTt0aGlzLm89IiI7dGhpcy52PXt9fXRvU3RyaW5nKCl7dmFyIGE9dGhpcy5vK3ZlKHRoaXMpLGI9Xy5VYih0aGlzLnYpLGM9IiI7YiE9IiImJihjPSI/IitiKTtyZXR1cm4gYStjfWNsb25lKCl7dmFyIGE9bmV3IG1lO2Euaj17Li4udGhpcy5qfTthLm89dGhpcy5vO2Eudj17Li4udGhpcy52fTtyZXR1cm4gYX19LG5lPXt2RzoiayIsRUM6ImNrIix6RjoibSIsWUM6ImV4bSIsV0M6ImV4Y20iLExCOiJhbSIsUkI6ImFtYyIsbUY6Im1tIix0RzoicnQiLGJGOiJkIixYQzoiZWQiLGlIOiJzdiIsSkM6ImRlb2IiLHNDOiJjYiIsd0M6ImNjYiIsdEM6ImNiaSIsWUc6InJzIixCRzoic2RjaCIsY0Y6ImltIixLQzoiZGciLFVDOiJiciIsVEM6ImJyLWQiLFZDOiJyYiIsSUg6InpzIixFSDoid3QiLFpDOiJlZSIsaEg6InNtIix4RjoibWQiLFhFOiJnc3Ntb2R1bGVzZXRwcm90byIsQ0g6InVqZyIsQkg6InNwIixhRjoiaWNoYyIsWEc6InNsayIsCk1DOiJkdGkiLExDOiJkYndoIixlRjoiaWMifSxRcj1SZWdFeHAoIl4oZ2FwaVxcLik/bG9hZGVkKF9nfF9oKT8oX1swLTlhLXpdKykrJCIpLFJyPVJlZ0V4cCgiXlthLXpBLVowLTktXypdKyQiKTt2YXIgR2U9ITE7Xy55Zz10eXBlb2YgQXN5bmNDb250ZXh0IT09InVuZGVmaW5lZCImJnR5cGVvZiBBc3luY0NvbnRleHQuU25hcHNob3Q9PT0iZnVuY3Rpb24iP2E9PmEmJkFzeW5jQ29udGV4dC5TbmFwc2hvdC53cmFwKGEpOmE9PmE7Xy5KZS5wcm90b3R5cGUuc3RvcFByb3BhZ2F0aW9uPWZ1bmN0aW9uKCl7dGhpcy5vPSEwfTtfLkplLnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbigpe3RoaXMuZGVmYXVsdFByZXZlbnRlZD0hMH07Xy5IYShLZSxfLkplKTsKS2UucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLnR5cGU9YS50eXBlLGQ9YS5jaGFuZ2VkVG91Y2hlcyYmYS5jaGFuZ2VkVG91Y2hlcy5sZW5ndGg/YS5jaGFuZ2VkVG91Y2hlc1swXTpudWxsO3RoaXMudGFyZ2V0PWEudGFyZ2V0fHxhLnNyY0VsZW1lbnQ7dGhpcy5jdXJyZW50VGFyZ2V0PWI7Yj1hLnJlbGF0ZWRUYXJnZXQ7Ynx8KGM9PSJtb3VzZW92ZXIiP2I9YS5mcm9tRWxlbWVudDpjPT0ibW91c2VvdXQiJiYoYj1hLnRvRWxlbWVudCkpO3RoaXMucmVsYXRlZFRhcmdldD1iO2Q/KHRoaXMuY2xpZW50WD1kLmNsaWVudFghPT12b2lkIDA/ZC5jbGllbnRYOmQucGFnZVgsdGhpcy5jbGllbnRZPWQuY2xpZW50WSE9PXZvaWQgMD9kLmNsaWVudFk6ZC5wYWdlWSx0aGlzLnNjcmVlblg9ZC5zY3JlZW5YfHwwLHRoaXMuc2NyZWVuWT1kLnNjcmVlbll8fDApOih0aGlzLm9mZnNldFg9Xy5jcnx8YS5vZmZzZXRYIT09dm9pZCAwP2Eub2Zmc2V0WDphLmxheWVyWCx0aGlzLm9mZnNldFk9Cl8uY3J8fGEub2Zmc2V0WSE9PXZvaWQgMD9hLm9mZnNldFk6YS5sYXllclksdGhpcy5jbGllbnRYPWEuY2xpZW50WCE9PXZvaWQgMD9hLmNsaWVudFg6YS5wYWdlWCx0aGlzLmNsaWVudFk9YS5jbGllbnRZIT09dm9pZCAwP2EuY2xpZW50WTphLnBhZ2VZLHRoaXMuc2NyZWVuWD1hLnNjcmVlblh8fDAsdGhpcy5zY3JlZW5ZPWEuc2NyZWVuWXx8MCk7dGhpcy5idXR0b249YS5idXR0b247dGhpcy5rZXlDb2RlPWEua2V5Q29kZXx8MDt0aGlzLmtleT1hLmtleXx8IiI7dGhpcy5jaGFyQ29kZT1hLmNoYXJDb2RlfHwoYz09ImtleXByZXNzIj9hLmtleUNvZGU6MCk7dGhpcy5jdHJsS2V5PWEuY3RybEtleTt0aGlzLmFsdEtleT1hLmFsdEtleTt0aGlzLnNoaWZ0S2V5PWEuc2hpZnRLZXk7dGhpcy5tZXRhS2V5PWEubWV0YUtleTt0aGlzLnBvaW50ZXJJZD1hLnBvaW50ZXJJZHx8MDt0aGlzLnBvaW50ZXJUeXBlPWEucG9pbnRlclR5cGU7dGhpcy5zdGF0ZT1hLnN0YXRlO3RoaXMudGltZVN0YW1wPQphLnRpbWVTdGFtcDt0aGlzLmo9YTthLmRlZmF1bHRQcmV2ZW50ZWQmJktlLnpiLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyl9O0tlLnByb3RvdHlwZS5zdG9wUHJvcGFnYXRpb249ZnVuY3Rpb24oKXtLZS56Yi5zdG9wUHJvcGFnYXRpb24uY2FsbCh0aGlzKTt0aGlzLmouc3RvcFByb3BhZ2F0aW9uP3RoaXMuai5zdG9wUHJvcGFnYXRpb24oKTp0aGlzLmouY2FuY2VsQnViYmxlPSEwfTtLZS5wcm90b3R5cGUucHJldmVudERlZmF1bHQ9ZnVuY3Rpb24oKXtLZS56Yi5wcmV2ZW50RGVmYXVsdC5jYWxsKHRoaXMpO3ZhciBhPXRoaXMuajthLnByZXZlbnREZWZhdWx0P2EucHJldmVudERlZmF1bHQoKTphLnJldHVyblZhbHVlPSExfTt2YXIgVWU9ImNsb3N1cmVfbGlzdGVuYWJsZV8iKyhNYXRoLnJhbmRvbSgpKjFFNnwwKTt2YXIgTGU9MDtPZS5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9YS50b1N0cmluZygpO2E9dGhpcy5saXN0ZW5lcnNbZl07YXx8KGE9dGhpcy5saXN0ZW5lcnNbZl09W10sdGhpcy5qKyspO3ZhciBoPVFlKGEsYixkLGUpO2g+LTE/KGI9YVtoXSxjfHwoYi56aT0hMSkpOihiPW5ldyBNZShiLHRoaXMuc3JjLGYsISFkLGUpLGIuemk9YyxhLnB1c2goYikpO3JldHVybiBifTtPZS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGEsYixjLGQpe2E9YS50b1N0cmluZygpO2lmKCEoYSBpbiB0aGlzLmxpc3RlbmVycykpcmV0dXJuITE7dmFyIGU9dGhpcy5saXN0ZW5lcnNbYV07Yj1RZShlLGIsYyxkKTtyZXR1cm4gYj4tMT8oTmUoZVtiXSksQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGUsYiwxKSxlLmxlbmd0aD09MCYmKGRlbGV0ZSB0aGlzLmxpc3RlbmVyc1thXSx0aGlzLmotLSksITApOiExfTt2YXIgWGU9ImNsb3N1cmVfbG1fIisoTWF0aC5yYW5kb20oKSoxRTZ8MCksZWY9e30sJGU9MCxmZj0iX19jbG9zdXJlX2V2ZW50c19mbl8iKyhNYXRoLnJhbmRvbSgpKjFFOT4+PjApO18uSGEoXy5nZixfLmFlKTtfLmdmLnByb3RvdHlwZVtVZV09ITA7Xy5nPV8uZ2YucHJvdG90eXBlO18uZy5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGEsYixjLGQpe18uU2UodGhpcyxhLGIsYyxkKX07Xy5nLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSxiLGMsZCl7Xy5jZih0aGlzLGEsYixjLGQpfTsKXy5nLmRpc3BhdGNoRXZlbnQ9ZnVuY3Rpb24oYSl7dmFyIGIsYz10aGlzLk07aWYoYylmb3IoYj1bXTtjO2M9Yy5NKWIucHVzaChjKTtjPXRoaXMuRmE7dmFyIGQ9YS50eXBlfHxhO2lmKHR5cGVvZiBhPT09InN0cmluZyIpYT1uZXcgXy5KZShhLGMpO2Vsc2UgaWYoYSBpbnN0YW5jZW9mIF8uSmUpYS50YXJnZXQ9YS50YXJnZXR8fGM7ZWxzZXt2YXIgZT1hO2E9bmV3IF8uSmUoZCxjKTtzZChhLGUpfWU9ITA7dmFyIGY7aWYoYilmb3IoZj1iLmxlbmd0aC0xOyFhLm8mJmY+PTA7Zi0tKXt2YXIgaD1hLmN1cnJlbnRUYXJnZXQ9YltmXTtlPWhmKGgsZCwhMCxhKSYmZX1hLm98fChoPWEuY3VycmVudFRhcmdldD1jLGU9aGYoaCxkLCEwLGEpJiZlLGEub3x8KGU9aGYoaCxkLCExLGEpJiZlKSk7aWYoYilmb3IoZj0wOyFhLm8mJmY8Yi5sZW5ndGg7ZisrKWg9YS5jdXJyZW50VGFyZ2V0PWJbZl0sZT1oZihoLGQsITEsYSkmJmU7cmV0dXJuIGV9OwpfLmcubGE9ZnVuY3Rpb24oKXtfLmdmLnpiLmxhLmNhbGwodGhpcyk7dGhpcy5yZW1vdmVBbGxMaXN0ZW5lcnMoKTt0aGlzLk09bnVsbH07Xy5nLmxpc3Rlbj1mdW5jdGlvbihhLGIsYyxkKXtyZXR1cm4gdGhpcy5vLmFkZChTdHJpbmcoYSksYiwhMSxjLGQpfTtfLmcucmVtb3ZlQWxsTGlzdGVuZXJzPWZ1bmN0aW9uKGEpe2lmKHRoaXMubyl7dmFyIGI9dGhpcy5vO2E9YSYmYS50b1N0cmluZygpO2xldCBjPTA7Zm9yKGxldCBkIGluIGIubGlzdGVuZXJzKWlmKCFhfHxkPT1hKXtsZXQgZT1iLmxpc3RlbmVyc1tkXTtmb3IobGV0IGY9MDtmPGUubGVuZ3RoO2YrKykrK2MsTmUoZVtmXSk7ZGVsZXRlIGIubGlzdGVuZXJzW2RdO2Iuai0tfWI9Y31lbHNlIGI9MDtyZXR1cm4gYn07dmFyIGtmPWNsYXNzIGV4dGVuZHMgXy5nZntjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMuRD10aGlzLmo9MDt0aGlzLkRjPWE/P3twYjooYixjKT0+c2V0VGltZW91dChiLGMpLEFhOmI9PntjbGVhclRpbWVvdXQoYil9fTt0aGlzLmlzT25saW5lPXdpbmRvdy5uYXZpZ2F0b3I/Lm9uTGluZT8/ITA7dGhpcy52PWFzeW5jKCk9Pnthd2FpdCBtZih0aGlzKX07d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9mZmxpbmUiLHRoaXMudik7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9ubGluZSIsdGhpcy52KTt0aGlzLkR8fG5mKHRoaXMpfWRpc3Bvc2UoKXt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigib2ZmbGluZSIsdGhpcy52KTt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25saW5lIix0aGlzLnYpO3RoaXMuRGMuQWEodGhpcy5EKTtkZWxldGUga2YuaW5zdGFuY2V9U2IoKXtyZXR1cm4gdGhpcy5pc09ubGluZX19O3ZhciBxZj1udWxsLHBmPW5ldyBNYXA7dmFyIFNyPWE9PnthPWEuY2xvbmUoKTtEZShhKTtvZShhLCJkZyIsbnVsbCk7b2UoYSwiZCIsIjAiKTt3ZShhLG51bGwpO3hlKGEsbnVsbCk7cmV0dXJuIGF9LFRyPSEwLFVyPShhLGIse2Nzc1Jvd0tleTpjLEtlOmQsWWQ6ZSxjYWxsYmFjazpmfT17fSk9PntpZihiKWZvcihsZXQgaCBvZiBiKWlmKCFSci50ZXN0KGgpKXRocm93IEVycm9yKCJKYCIraCk7b2UoYSwibSIsYi5qb2luKCIsIikpO2UmJnplKGEsZSk7YyYmKG9lKGEsImNrIixjKSxkP29lKGEsInJzIixkKTpUciYmKFRyPSExKSk7aWYoZil7aWYoZiE9bnVsbCYmIVFyLnRlc3QoZikpdGhyb3cgRXJyb3IoIktgIitmKTtvZShhLCJjYiIsZil9YT1hLnRvU3RyaW5nKCk7YS5sYXN0SW5kZXhPZigiLyIsMCk9PTAmJihiPV8uTWIoZG9jdW1lbnQubG9jYXRpb24uaHJlZiksYT1fLkliKGJbMV0sYlsyXSxiWzNdLGJbNF0pK2EpO3JldHVybiBfLlRhKGEpfSxuZz0oYSxiLHtsbjpjPVtdLGNzc1Jvd0tleTpkLEtlOmUsWWQ6ZixjYWxsYmFjazpofT0Ke30pPT57YT1TcihhKTt4ZShhLGMpO3JldHVybiBVcihhLGIse2Nzc1Jvd0tleTpkLEtlOmUsWWQ6ZixjYWxsYmFjazpofSl9LG1nPShhLGIse21uOmM9W10sbG46ZD1bXSxjc3NSb3dLZXk6ZSxLZTpmLFlkOmgsY2FsbGJhY2s6a309e30pPT57YT1TcihhKTtvZShhLCJkIiwiMSIpO3dlKGEsYyk7eGUoYSxkKTtyZXR1cm4gVXIoYSxiLHtjc3NSb3dLZXk6ZSxLZTpmLFlkOmgsY2FsbGJhY2s6a30pfTt2YXIgVnI9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLnY9YTt0aGlzLkI9Yjt0aGlzLm89MDt0aGlzLmo9bnVsbH1nZXQoKXtpZih0aGlzLm8+MCl7dGhpcy5vLS07dmFyIGE9dGhpcy5qO3RoaXMuaj1hLm5leHQ7YS5uZXh0PW51bGx9ZWxzZSBhPXRoaXMudigpO3JldHVybiBhfX07dmFyIFdyPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5vPXRoaXMuaj1udWxsfWFkZChhLGIpe3ZhciBjPXZmLmdldCgpO2Muc2V0KGEsYik7dGhpcy5vP3RoaXMuby5uZXh0PWM6dGhpcy5qPWM7dGhpcy5vPWN9cmVtb3ZlKCl7dmFyIGE9bnVsbDt0aGlzLmomJihhPXRoaXMuaix0aGlzLmo9dGhpcy5qLm5leHQsdGhpcy5qfHwodGhpcy5vPW51bGwpLGEubmV4dD1udWxsKTtyZXR1cm4gYX19LHZmPW5ldyBWcigoKT0+bmV3IFhyLGE9PmEucmVzZXQoKSksWHI9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLm5leHQ9dGhpcy5zY29wZT10aGlzLmZuPW51bGx9c2V0KGEsYil7dGhpcy5mbj1hO3RoaXMuc2NvcGU9Yjt0aGlzLm5leHQ9bnVsbH1yZXNldCgpe3RoaXMubmV4dD10aGlzLnNjb3BlPXRoaXMuZm49bnVsbH19O3ZhciBZcix3Zj0hMSx1Zj1uZXcgV3IsR2Y9KGEsYik9PntZcnx8WnIoKTt3Znx8KFlyKCksd2Y9ITApO3VmLmFkZChhLGIpfSxacj0oKT0+e3ZhciBhPVByb21pc2UucmVzb2x2ZSh2b2lkIDApO1lyPSgpPT57YS50aGVuKHhmKX19O0NmLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuY29udGV4dD10aGlzLmo9dGhpcy5vPXRoaXMuY2hpbGQ9bnVsbDt0aGlzLnY9ITF9O3ZhciBEZj1uZXcgVnIoZnVuY3Rpb24oKXtyZXR1cm4gbmV3IENmfSxmdW5jdGlvbihhKXthLnJlc2V0KCl9KTtfLkJmLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gUWYodGhpcywoMCxfLnlnKSh0eXBlb2YgYT09PSJmdW5jdGlvbiI/YTpudWxsKSwoMCxfLnlnKSh0eXBlb2YgYj09PSJmdW5jdGlvbiI/YjpudWxsKSxjKX07Xy55ZihfLkJmKTtfLmc9Xy5CZi5wcm90b3R5cGU7Xy5nLmZpbmFsbHk9ZnVuY3Rpb24oYSl7YT0oMCxfLnlnKShhKTtyZXR1cm4gbmV3IF8uQmYoKGIsYyk9PntLZih0aGlzLGQ9PnthKCk7YihkKX0sZD0+e2EoKTtjKGQpfSl9KX07Xy5nLktnPWZ1bmN0aW9uKGEsYil7cmV0dXJuIFFmKHRoaXMsbnVsbCwoMCxfLnlnKShhKSxiKX07Xy5nLmNhdGNoPV8uQmYucHJvdG90eXBlLktnOwpfLmcuY2FuY2VsPWZ1bmN0aW9uKGEpe2lmKHRoaXMuaj09MCl7bGV0IGI9bmV3IF8uUGYoYSk7R2YoZnVuY3Rpb24oKXtMZih0aGlzLGIpfSx0aGlzKX19O18uZy5uQj1mdW5jdGlvbihhKXt0aGlzLmo9MDtfLkFmKHRoaXMsMixhKX07Xy5nLm9CPWZ1bmN0aW9uKGEpe3RoaXMuaj0wO18uQWYodGhpcywzLGEpfTtfLmcudHQ9ZnVuY3Rpb24oKXtmb3IodmFyIGE7YT1NZih0aGlzKTspTmYodGhpcyxhLHRoaXMuaix0aGlzLkkpO3RoaXMuSz0hMX07Xy5VZj1fLiRiO18uSGEoXy5QZixfLkxhKTtfLlBmLnByb3RvdHlwZS5uYW1lPSJjYW5jZWwiO18uSGEoWGYsXy5MYSk7WGYucHJvdG90eXBlLm5hbWU9IlhockVycm9yIjtfLkhhKFlmLFhmKTtZZi5wcm90b3R5cGUubmFtZT0iWGhySHR0cEVycm9yIjtfLkhhKFpmLFhmKTtaZi5wcm90b3R5cGUubmFtZT0iWGhyVGltZW91dEVycm9yIjtfLmRoPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjLGQ9ITEsZT0hMSl7dGhpcy5ZPXFlKF8uVWEoYSkudG9TdHJpbmcoKSwhMCk7dGhpcy5GYT1iO3RoaXMueWE9Yzt0aGlzLkQ9ZDt0aGlzLkI9e307dGhpcy5NPW5ldyBNYXA7dGhpcy5aPVtdO3RoaXMub2E9ITA7dGhpcy5oYT0oYT10ZSh0aGlzLlksImV4Y20iKSk/YS5zcGxpdCgiLCIpOltdO3RoaXMuVmQ9ZTt0aGlzLmZpPSExO3RoaXMuV2c9ImFub255bW91cyI7dGhpcy5kaT00MDQzO3RoaXMuZ2E9ZG9jdW1lbnQuaGVhZHx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O3RoaXMudj10aGlzLkk9bnVsbDt0aGlzLkViPSEwO0hlKCk7dGhpcy5YPW51bGw7Xy5hZyh0aGlzLHllKHRoaXMuWSkpO3RoaXMuZmV0Y2hQcmlvcml0eT12b2lkIDA7dGhpcy5NYT0hMTt0aGlzLlUoKX1hc3luYyBRYSgpe3Rocm93IEVycm9yKCJUIik7fVUoKXt9bG9hZChhLGIsYyxkLGU9Yil7Xy5VYShhKTt2YXIgZj10aGlzLmZpLGg9dGhpcy5XZyxrPXRoaXMuZmV0Y2hQcmlvcml0eSwKbD1fLkNkKCJTQ1JJUFQiKTtfLm9iKGwsYSk7ZiYmKGwuY3Jvc3NPcmlnaW49aCk7bC5hc3luYz0hMTtrJiZsLnNldEF0dHJpYnV0ZSgiZmV0Y2hwcmlvcml0eSIsayk7Xy5hZyh0aGlzLGIpO18ucGcodGhpcyxhLGwsYixjLGQsZSl9fTt2YXIgcWc9bmV3IFVpbnQ4QXJyYXkoMTIzKSxLZz0hMTt2YXIgTGc9W107Xy5nPXRnLnByb3RvdHlwZTtfLmcuY2FuY2VsPWZ1bmN0aW9uKGEpe2lmKHRoaXMuail0aGlzLnYgaW5zdGFuY2VvZiB0ZyYmdGhpcy52LmNhbmNlbCgpO2Vsc2V7aWYodGhpcy5vKXtsZXQgYj10aGlzLm87ZGVsZXRlIHRoaXMubzthP2IuY2FuY2VsKGEpOihiLlktLSxiLlk8PTAmJmIuY2FuY2VsKCkpfXRoaXMuWj90aGlzLlouY2FsbCh0aGlzLlUsdGhpcyk6dGhpcy5NPSEwO3RoaXMuanx8KGE9bmV3IEZnKHRoaXMpLHhnKHRoaXMpLHZnKHRoaXMsITEsYSkpfX07Xy5nLnNwPWZ1bmN0aW9uKGEsYil7dGhpcy5JPSExO3ZnKHRoaXMsYSxiKX07Xy5nLmNhbGxiYWNrPWZ1bmN0aW9uKGEpe3hnKHRoaXMpO3ZnKHRoaXMsITAsYSl9O18uZy5maW5hbGx5PWZ1bmN0aW9uKGEpe3JldHVybiBFZyhuZXcgUHJvbWlzZSgoYixjKT0+e3pnKHRoaXMsZD0+e2EoKTtiKGQpfSxkPT57YSgpO2MoZCl9KX0pKX07Cl8uZy50aGVuPWZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlLGY9bmV3IF8uQmYoZnVuY3Rpb24oaCxrKXtlPWg7ZD1rfSk7emcodGhpcyxlLGZ1bmN0aW9uKGgpe2ggaW5zdGFuY2VvZiBGZz9mLmNhbmNlbCgpOmQoaCk7cmV0dXJuIENnfSx0aGlzKTtyZXR1cm4gZi50aGVuKGEsYixjKX07Xy55Zih0Zyk7dGcucHJvdG90eXBlLmlzRXJyb3I9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBFcnJvcn07dmFyIENnPXt9O18uSGEod2csXy5MYSk7d2cucHJvdG90eXBlLm1lc3NhZ2U9IkRlZmVycmVkIGhhcyBhbHJlYWR5IGZpcmVkIjt3Zy5wcm90b3R5cGUubmFtZT0iQWxyZWFkeUNhbGxlZEVycm9yIjtfLkhhKEZnLF8uTGEpO0ZnLnByb3RvdHlwZS5tZXNzYWdlPSJEZWZlcnJlZCB3YXMgY2FuY2VsZWQiO0ZnLnByb3RvdHlwZS5uYW1lPSJDYW5jZWxlZEVycm9yIjsKRGcucHJvdG90eXBlLnRocm93RXJyb3I9ZnVuY3Rpb24oKXtkZWxldGUgQmdbdGhpcy5qXTt0aHJvdyB0aGlzLm87fTt2YXIgQmc9e307dmFyIEdnPWNsYXNzIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoYSxiLGMsZCxlKXtzdXBlcigpO3RoaXMubmFtZT0iTW9kdWxlTG9hZEZhaWx1cmUiO3RoaXMudHlwZT1hO3RoaXMuc3RhdHVzPWI7dGhpcy5tbj1jO3RoaXMudXJsPWQ7dGhpcy5jYXVzZT1lO3RoaXMubWVzc2FnZT10aGlzLnRvU3RyaW5nKCl9dG9TdHJpbmcoKXtyZXR1cm5gJHtIZyh0aGlzKX0gKCR7dGhpcy5zdGF0dXMhPXZvaWQgMD90aGlzLnN0YXR1czoiPyJ9KWB9fTt2YS5vYj1HZzt2YS5vYi5UeXBlPXtwbzowLHBrOjEsVElNRU9VVDoyLGhvOjMsdWs6NH07Xy5IYShJZyxqZSk7Xy5IYShKZyxfLkxhKTtfLmc9SWcucHJvdG90eXBlO18uZy5Scj1mdW5jdGlvbihhKXt0aGlzLm9hPWF9OwpfLmcuVGg9ZnVuY3Rpb24oYSxiKXtpZighKHRoaXMgaW5zdGFuY2VvZiBJZykpdGhpcy5UaChhLGIpO2Vsc2UgaWYodHlwZW9mIGE9PT0ic3RyaW5nIil7aWYoYS5zdGFydHNXaXRoKCJkJCIpKXthPWEuc3Vic3RyaW5nKDIpO2Zvcih2YXIgYz1bXSxkPTAsZT1hLmluZGV4T2YoIi8iKSxmPTAsaD0hMSxrPTA7Oyl7dmFyIGw9aD9hLnN1YnN0cmluZyhmKTphLnN1YnN0cmluZyhmLGUpO2lmKGwubGVuZ3RoPT09MClkKyssZj0ic3kiK2QudG9TdHJpbmcoMzYpLGw9W107ZWxzZXt2YXIgbT1sLmluZGV4T2YoIjoiKTtpZihtPDApZj1sLGw9W107ZWxzZSBpZihtPT09bC5sZW5ndGgtMSlmPWwuc3Vic3RyaW5nKDAsbSksbD1BcnJheShjW2stMV0pO2Vsc2V7Zj1sLnN1YnN0cmluZygwLG0pO2w9bC5zdWJzdHJpbmcobSsxKS5zcGxpdCgiLCIpO209aztmb3IobGV0IG49MDtuPGwubGVuZ3RoO24rKyltLT1sW25dLmxlbmd0aD09PTA/MTpOdW1iZXIobFtuXSksbFtuXT1jW21dfW09MDtpZihmLmxlbmd0aD09PQowKW09MTtlbHNlIGlmKGYuY2hhckF0KDApPT09IisifHxmLmNoYXJBdCgwKT09PSItIiltPU51bWJlcihmKTttIT09MCYmKGQrPW0sZj0ic3kiK2QudG9TdHJpbmcoMzYpKX1jLnB1c2goZik7TmcodGhpcyxmLGwpO2lmKGgpYnJlYWs7Zj1lKzE7ZT1hLmluZGV4T2YoIi8iLGYpO2U9PT0tMSYmKGg9ITApO2srK310aGlzLmhhPWN9ZWxzZSBpZihhLnN0YXJ0c1dpdGgoInAkIikpT2codGhpcyxhKTtlbHNle2E9YS5zcGxpdCgiLyIpO2M9W107Zm9yKGQ9MDtkPGEubGVuZ3RoO2QrKyl7az1hW2RdLnNwbGl0KCI6Iik7ZT1rWzBdO2g9W107aWYoa1sxXSlmb3IoaD1rWzFdLnNwbGl0KCIsIiksaz0wO2s8aC5sZW5ndGg7aysrKWhba109Y1twYXJzZUludChoW2tdLDM2KV07Yy5wdXNoKGUpO05nKHRoaXMsZSxoKX10aGlzLmhhPWN9aWYoYiYmYi5sZW5ndGgpe2ZvcihsZXQgbiBvZiBiKXRoaXMuQi5hZGQobik7dGhpcy55YT1iW2IubGVuZ3RoLTFdfWVsc2UgdGhpcy5nYS5qfHx0aGlzLmdhLmNhbGxiYWNrKCk7Ck9iamVjdC5mcmVlemUodGhpcy5oYSk7dGhpcy5vPT10aGlzLlomJih0aGlzLm89bnVsbCwoYj10aGlzLloub25Mb2FkKCgwLF8uQ2EpKHRoaXMuVnAsdGhpcykpKSYmYi5sZW5ndGgmJlpnKHRoaXMsbmV3IHZhLm9iKHZhLm9iLlR5cGUudWssdm9pZCAwLHZvaWQgMCx2b2lkIDAsYlswXSkpLFJnKHRoaXMpKX19O18uZy5MYT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5ELmdldChhKX07Xy5nLm5pPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5MYShhKTtjJiZjLmlzTG9hZGVkKCk/dGhpcy5sb2FkKGIpOnRoaXMuaiBpbnN0YW5jZW9mIE1hcD8oYz10aGlzLmouZ2V0KGEpLGN8fChjPW5ldyBTZXQsdGhpcy5qLnNldChhLGMpKSxjLmFkZChiKSk6KHRoaXMualthXXx8KHRoaXMualthXT17fSksdGhpcy5qW2FdW2JdPSEwKX07Cl8uZy5BZz1mdW5jdGlvbihhLGIpe2lmKHRoaXMuaiBpbnN0YW5jZW9mIE1hcCl7dmFyIGM9dGhpcy5qLmdldChhKTtjJiYoYy5kZWxldGUoYiksYy5zaXplPT09MCYmdGhpcy5qLmRlbGV0ZShhKSl9ZWxzZSBpZih0aGlzLmpbYV0pe2RlbGV0ZSB0aGlzLmpbYV1bYl07Zm9yKGMgaW4gdGhpcy5qW2FdKXJldHVybjtkZWxldGUgdGhpcy5qW2FdfX07Xy5nLmlzQWN0aXZlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuQi5zaXplPjB9O18uZy5GcT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkkuc2l6ZT4wfTsKXy5nLnNqPWZ1bmN0aW9uKGEsYj0wLGMpe3ZhciBkPVlnKHRoaXMsYSk7dGhpcy5CPW5ldyBTZXQoZCk7dGhpcy5LPXRoaXMub2E/YTpfLnliKGQpO1JnKHRoaXMpO2lmKGQubGVuZ3RoIT09MCl7Zm9yKGxldCBlIG9mIGQpdGhpcy5VLmFkZChlKTthPXRoaXMuWTtpZighYSl0aHJvdyBFcnJvcigiViIpO2lmKCh0aGlzLmogaW5zdGFuY2VvZiBNYXA/dGhpcy5qLnNpemU+MDpPYmplY3Qua2V5cyh0aGlzLmopLmxlbmd0aD4wKSYmIWEuRWIpdGhyb3cgRXJyb3IoIlciKTtmZyhhLF8ueWIoZCksdGhpcy5ELHtZZDp0aGlzLmosb25FcnJvcjooZSxmLGgpPT5iaCh0aGlzLHRoaXMuSyxkLGUhPW51bGw/ZTp2b2lkIDAsZixiLCEhaCksb25UaW1lb3V0OigwLF8uQ2EpKHRoaXMud3csdGhpcyksZm9yY2VSZWxvYWQ6ISFjfSl9fTt2YXIgV2c9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWE7dGhpcy5vPW5ldyBTZXQ7dGhpcy5yZXN1bHQ9W119fTtfLmc9SWcucHJvdG90eXBlOwpfLmcueWU9ZnVuY3Rpb24oKXtpZih0aGlzLm8pe3ZhciBhPXRoaXMuby5nZXRJZCgpLGI9W107aWYodGhpcy5qIGluc3RhbmNlb2YgTWFwKXt2YXIgYz10aGlzLmouZ2V0KGEpO2lmKGMpe2Zvcih2YXIgZCBvZiBBcnJheS5mcm9tKGMpKShjPXRoaXMuTGEoZCkpJiYhYy5pc0xvYWRlZCgpJiYodGhpcy5BZyhhLGQpLGIucHVzaChkKSk7dGhpcy5hZihiKX19ZWxzZSBpZih0aGlzLmpbYV0pe2ZvcihjIG9mIE9iamVjdC5rZXlzKHRoaXMualthXSkpKGQ9dGhpcy5MYShjKSkmJiFkLmlzTG9hZGVkKCkmJih0aGlzLkFnKGEsYyksYi5wdXNoKGMpKTt0aGlzLmFmKGIpfXRoaXMuaWEoKXx8KChiPXRoaXMuRC5nZXQoYSkub25Mb2FkKCgwLF8uQ2EpKHRoaXMuVnAsdGhpcykpKSYmYi5sZW5ndGgmJlpnKHRoaXMsbmV3IHZhLm9iKHZhLm9iLlR5cGUudWssdm9pZCAwLHZvaWQgMCx2b2lkIDAsYlswXSkpLHRoaXMuSS5kZWxldGUoYSksdGhpcy5CLmRlbGV0ZShhKSx0aGlzLkIuc2l6ZSE9PTB8fAphaCh0aGlzKSx0aGlzLnlhJiZhPT10aGlzLnlhJiYodGhpcy5nYS5qfHx0aGlzLmdhLmNhbGxiYWNrKCkpLFJnKHRoaXMpLHRoaXMubz1udWxsKX19O18uZy51aD1mdW5jdGlvbihhKXtpZih0aGlzLkIuaGFzKGEpKXJldHVybiEwO2ZvcihsZXQgYj0wO2I8dGhpcy52Lmxlbmd0aDtiKyspaWYoXy5zYih0aGlzLnZbYl0sYSk+PTApcmV0dXJuITA7cmV0dXJuITF9O18uZy5sb2FkPWZ1bmN0aW9uKGEsYil7cmV0dXJuIFRnKHRoaXMsW2FdLGIpW2FdfTtfLmcuYWY9ZnVuY3Rpb24oYSl7cmV0dXJuIFRnKHRoaXMsYSl9OwpfLmcuUm89ZnVuY3Rpb24oYSl7dGhpcy5vJiZ0aGlzLm8uZ2V0SWQoKT09PSJzeW50aGV0aWNfbW9kdWxlX292ZXJoZWFkIj8odGhpcy55ZSgpLHRoaXMuRC5kZWxldGUoInN5bnRoZXRpY19tb2R1bGVfb3ZlcmhlYWQiKSk6dGhpcy5vJiZ0aGlzLm8uZ2V0SWQoKTt2YXIgYj10aGlzLkQuZ2V0KGEpO2ImJmNoKHRoaXMsYi5qfHxbXSxjPT57Yy55ZSgpO3RoaXMuQi5kZWxldGUoYy5nZXRJZCgpKX0sYz0+IWMuaXNMb2FkZWQoKSxuZXcgU2V0KTtpZih0aGlzLm89dGhpcy5MYShhKSl0aGlzLm8uST0hMH07Xy5nLmVuPWZ1bmN0aW9uKGEpe2lmKCF0aGlzLm8pe2xldCBiPW5ldyB2YS5PZyhbXSwic3ludGhldGljX21vZHVsZV9vdmVyaGVhZCIpO3RoaXMuRC5zZXQoInN5bnRoZXRpY19tb2R1bGVfb3ZlcmhlYWQiLGIpO3RoaXMubz1ifWZlKHRoaXMubyxhKX07Xy5nLnd3PWZ1bmN0aW9uKCl7Wy4uLnRoaXMuQl07JGcodGhpcyxuZXcgdmEub2IodmEub2IuVHlwZS5USU1FT1VUKSk7YWgodGhpcyl9OwpfLmcuWm49ZnVuY3Rpb24oYSxiKXtBcnJheS5pc0FycmF5KGEpfHwoYT1bYV0pO2ZvcihsZXQgZT0wO2U8YS5sZW5ndGg7ZSsrKXt2YXIgYz1hW2VdLGQ9YjtsZXQgZj10aGlzLk0uZ2V0KGMpO2Y/Zi5wdXNoKGQpOnRoaXMuTS5zZXQoYyxbZF0pfX07Xy5nLmRpc3Bvc2U9ZnVuY3Rpb24oKXtfLiRkKEFycmF5LmZyb20odGhpcy5ELnZhbHVlcygpKSx0aGlzLlopO3RoaXMuRC5jbGVhcigpO3RoaXMuQi5jbGVhcigpO3RoaXMuSz1bXTt0aGlzLkkuY2xlYXIoKTt0aGlzLnY9W107dGhpcy5NLmNsZWFyKCk7dGhpcy5GYT0hMH07Xy5nLmlhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuRmF9O18uVGQ9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IElnfTt2YXIgbWg9WzVFMywyRTRdLCRyPWNsYXNzIGV4dGVuZHMgamV7Y29uc3RydWN0b3IoKXtzdXBlcigpO3RoaXMudj1uZXcgTWFwO3RoaXMuRD1PYmplY3QuY3JlYXRlKG51bGwpO3RoaXMuQj0wO3RoaXMuSz1bXTt0aGlzLmo9QWU/bmV3IE1hcDpPYmplY3QuY3JlYXRlKG51bGwpO3RoaXMubz10aGlzLkxhKCJ7YmFzZX0iKX1UaCgpe3RoaXMubyYmdGhpcy5vLmdldElkKCk9PSJ7YmFzZX0iJiZ0aGlzLnllKCl9TGEoYSl7dmFyIGI9dGhpcy52LmdldChhKTtifHwoYj1uZXcgdmEuT2coW10sYSksdGhpcy52LnNldChhLGIpKTtyZXR1cm4gYn1uaShhLGIpe2lmKHRoaXMuTGEoYSkuaXNMb2FkZWQoKSl0aGlzLmxvYWQoYik7ZWxzZSBpZih0aGlzLmogaW5zdGFuY2VvZiBNYXApe2xldCBjPXRoaXMuai5nZXQoYSk7Y3x8KGM9bmV3IFNldCx0aGlzLmouc2V0KGEsYykpO2MuYWRkKGIpfWVsc2UgdGhpcy5qW2FdfHwodGhpcy5qW2FdPXt9KSx0aGlzLmpbYV1bYl09ITB9QWcoYSxiKXtpZih0aGlzLmogaW5zdGFuY2VvZgpNYXApe3ZhciBjPXRoaXMuai5nZXQoYSk7YyYmKGMuZGVsZXRlKGIpLGMuc2l6ZT09PTAmJnRoaXMuai5kZWxldGUoYSkpfWVsc2UgaWYodGhpcy5qW2FdKXtkZWxldGUgdGhpcy5qW2FdW2JdO2ZvcihjIGluIHRoaXMualthXSlyZXR1cm47ZGVsZXRlIHRoaXMualthXX19dWgoYSl7cmV0dXJuISF0aGlzLkRbYV19bG9hZChhKXtpaCh0aGlzLFthXSk7cmV0dXJuIGpoKHRoaXMsYSl9YWYoYSl7dmFyIGI9T2JqZWN0LmNyZWF0ZShudWxsKSxjPVtdO2EuZm9yRWFjaChkPT57YltkXXx8KGJbZF09amgodGhpcyxkKSxjLnB1c2goZCkpfSk7aWgodGhpcyxjKTtyZXR1cm4gYn1SbyhhKXt0aGlzLm8/LmdldElkKCk9PT0ic3ludGhldGljX21vZHVsZV9vdmVyaGVhZCImJnRoaXMueWUoKTt2YXIgYj10aGlzLnYuZ2V0KGEpO2toKHRoaXMsYj8uc3QoKT8/W10sYz0+Yy55ZSgpLGM9PiFjLmlzTG9hZGVkKCkpO3RoaXMubz10aGlzLkxhKGEpfXllKCl7aWYodGhpcy5vKXt2YXIgYT10aGlzLm8uZ2V0SWQoKSwKYj1bXTtpZih0aGlzLmogaW5zdGFuY2VvZiBNYXApe3ZhciBjPXRoaXMuai5nZXQoYSk7aWYoYyl7Zm9yKGxldCBkIG9mIEFycmF5LmZyb20oYykpdGhpcy5MYShkKS5pc0xvYWRlZCgpfHwodGhpcy5BZyhhLGQpLGIucHVzaChkKSk7dGhpcy5hZihiKX19ZWxzZSBpZih0aGlzLmpbYV0pe2ZvcihjIG9mIE9iamVjdC5rZXlzKHRoaXMualthXSkpdGhpcy5MYShjKS5pc0xvYWRlZCgpfHwodGhpcy5BZyhhLGMpLGIucHVzaChjKSk7dGhpcy5hZihiKX10aGlzLm8ub25Mb2FkKCgpPT5udWxsKTt0aGlzLm89bnVsbDsoIXRoaXMudWgoYSkmJi9ec3lbMC05YS16XXswLDR9JC8udGVzdChhKXx8YT09PSJzeW50aGV0aWNfbW9kdWxlX292ZXJoZWFkIikmJnRoaXMudi5kZWxldGUoYSk7bGgodGhpcyxhKX19ZW4oYSl7aWYoIXRoaXMubyl7bGV0IGI9bmV3IHZhLk9nKFtdLCJzeW50aGV0aWNfbW9kdWxlX292ZXJoZWFkIik7dGhpcy52LnNldCgic3ludGhldGljX21vZHVsZV9vdmVyaGVhZCIsCmIpO3RoaXMubz1ifWZlKHRoaXMubyxhKX19O3ZhciBraj1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuZGF0YT1bXTt0aGlzLmo9LTF9c2V0KGEsYj0hMCl7MDw9YSYmYTw1MiYmTnVtYmVyLmlzSW50ZWdlcihhKSYmdGhpcy5kYXRhW2FdIT09YiYmKHRoaXMuZGF0YVthXT1iLHRoaXMuaj0tMSl9Z2V0KGEpe3JldHVybiEhdGhpcy5kYXRhW2FdfX07Xy5vaC5wcm90b3R5cGUubmV4dD1mdW5jdGlvbigpe3JldHVybiBfLmFzfTtfLmFzPXtkb25lOiEwLHZhbHVlOnZvaWQgMH07Xy5vaC5wcm90b3R5cGUuYmQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc307dmFyIHBoPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMubz1hfWJkKCl7cmV0dXJuIG5ldyBxaCh0aGlzLm8oKSl9W1N5bWJvbC5pdGVyYXRvcl0oKXtyZXR1cm4gbmV3IHJoKHRoaXMubygpKX1qKCl7cmV0dXJuIG5ldyByaCh0aGlzLm8oKSl9fSxxaD1jbGFzcyBleHRlbmRzIF8ub2h7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLm89YX1uZXh0KCl7cmV0dXJuIHRoaXMuby5uZXh0KCl9W1N5bWJvbC5pdGVyYXRvcl0oKXtyZXR1cm4gbmV3IHJoKHRoaXMubyl9aigpe3JldHVybiBuZXcgcmgodGhpcy5vKX19LHJoPWNsYXNzIGV4dGVuZHMgcGh7Y29uc3RydWN0b3IoYSl7c3VwZXIoKCk9PmEpO3RoaXMudj1hfW5leHQoKXtyZXR1cm4gdGhpcy52Lm5leHQoKX19O3ZhciBicz1fLnUuSlNPTi5zdHJpbmdpZnk7Xy5jcz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMucHJvbWlzZT1uZXcgUHJvbWlzZSgoYSxiKT0+e3RoaXMucmVzb2x2ZT1hO3RoaXMucmVqZWN0PWJ9KX19O18uSGEoXy50aCxfLmFlKTtfLmc9Xy50aC5wcm90b3R5cGU7Xy5nLnN1YnNjcmliZT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5vW2FdO2R8fChkPXRoaXMub1thXT1bXSk7dmFyIGU9dGhpcy5EO3RoaXMualtlXT1hO3RoaXMualtlKzFdPWI7dGhpcy5qW2UrMl09Yzt0aGlzLkQ9ZSszO2QucHVzaChlKTtyZXR1cm4gZX07Xy5nLnVuc3Vic2NyaWJlPWZ1bmN0aW9uKGEsYixjKXtpZihhPXRoaXMub1thXSl7bGV0IGQ9dGhpcy5qO2lmKGE9YS5maW5kKGZ1bmN0aW9uKGUpe3JldHVybiBkW2UrMV09PWImJmRbZSsyXT09Y30pKXJldHVybiB0aGlzLmNpKGEpfXJldHVybiExfTtfLmcuY2k9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5qW2FdO2lmKGIpe2xldCBjPXRoaXMub1tiXTt0aGlzLkIhPTA/KHRoaXMudi5wdXNoKGEpLHRoaXMualthKzFdPSgpPT57fSk6KGMmJl8ueGIoYyxhKSxkZWxldGUgdGhpcy5qW2FdLGRlbGV0ZSB0aGlzLmpbYSsxXSxkZWxldGUgdGhpcy5qW2ErMl0pfXJldHVybiEhYn07Cl8uZy5wdWJsaXNoPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5vW2FdO2lmKGMpe2xldCBlPUFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMSk7dmFyIGQ9YXJndW1lbnRzLmxlbmd0aDtsZXQgZjtmb3IoZj0xO2Y8ZDtmKyspZVtmLTFdPWFyZ3VtZW50c1tmXTtpZih0aGlzLkkpZm9yKGY9MDtmPGMubGVuZ3RoO2YrKylkPWNbZl0sdWgodGhpcy5qW2QrMV0sdGhpcy5qW2QrMl0sZSk7ZWxzZXt0aGlzLkIrKzt0cnl7Zm9yKGY9MCxkPWMubGVuZ3RoO2Y8ZCYmIXRoaXMuaWEoKTtmKyspe2xldCBoPWNbZl07dGhpcy5qW2grMV0uYXBwbHkodGhpcy5qW2grMl0sZSl9fWZpbmFsbHl7aWYodGhpcy5CLS0sdGhpcy52Lmxlbmd0aD4wJiZ0aGlzLkI9PTApZm9yKDtjPXRoaXMudi5wb3AoKTspdGhpcy5jaShjKX19cmV0dXJuIGYhPTB9cmV0dXJuITF9OwpfLmcuY2xlYXI9ZnVuY3Rpb24oYSl7aWYoYSl7bGV0IGI9dGhpcy5vW2FdO2ImJihiLmZvckVhY2godGhpcy5jaSx0aGlzKSxkZWxldGUgdGhpcy5vW2FdKX1lbHNlIHRoaXMuai5sZW5ndGg9MCx0aGlzLm89e319O18uZy5sYT1mdW5jdGlvbigpe18udGguemIubGEuY2FsbCh0aGlzKTt0aGlzLmNsZWFyKCk7dGhpcy52Lmxlbmd0aD0wfTt2aC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7Yj09PXZvaWQgMD90aGlzLmoucmVtb3ZlKGEpOnRoaXMuai5zZXQoYSxicyhiKSl9O3ZoLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oYSl7dHJ5e3ZhciBiPXRoaXMuai5nZXQoYSl9Y2F0Y2goYyl7cmV0dXJufWlmKGIhPT1udWxsKXRyeXtyZXR1cm4gSlNPTi5wYXJzZShiKX1jYXRjaChjKXt0aHJvdyJTdG9yYWdlOiBJbnZhbGlkIHZhbHVlIHdhcyBlbmNvdW50ZXJlZCI7fX07dmgucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbihhKXt0aGlzLmoucmVtb3ZlKGEpfTtfLkhhKHdoLHZoKTt3aC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7d2guemIuc2V0LmNhbGwodGhpcyxhLHloKGIpKX07d2gucHJvdG90eXBlLm89ZnVuY3Rpb24oYSl7YT13aC56Yi5nZXQuY2FsbCh0aGlzLGEpO2lmKGE9PT12b2lkIDB8fGEgaW5zdGFuY2VvZiBPYmplY3QpcmV0dXJuIGE7dGhyb3ciU3RvcmFnZTogSW52YWxpZCB2YWx1ZSB3YXMgZW5jb3VudGVyZWQiO307d2gucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXtpZihhPXRoaXMubyhhKSl7aWYoYT1hLmRhdGEsYT09PXZvaWQgMCl0aHJvdyJTdG9yYWdlOiBJbnZhbGlkIHZhbHVlIHdhcyBlbmNvdW50ZXJlZCI7fWVsc2UgYT12b2lkIDA7cmV0dXJuIGF9O18uSGEoXy56aCx3aCk7Xy56aC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYixjKXtpZihiPXloKGIpKXtpZihjKXtpZihjPF8uRWEoKSl7Xy56aC5wcm90b3R5cGUucmVtb3ZlLmNhbGwodGhpcyxhKTtyZXR1cm59Yi5leHBpcmF0aW9uPWN9Yi5jcmVhdGlvbj1fLkVhKCl9Xy56aC56Yi5zZXQuY2FsbCh0aGlzLGEsYil9O18uemgucHJvdG90eXBlLm89ZnVuY3Rpb24oYSl7dmFyIGI9Xy56aC56Yi5vLmNhbGwodGhpcyxhKTtpZihiKXtsZXQgYz1iLmNyZWF0aW9uLGQ9Yi5leHBpcmF0aW9uO2lmKGQmJmQ8Xy5FYSgpfHxjJiZjPl8uRWEoKSlfLnpoLnByb3RvdHlwZS5yZW1vdmUuY2FsbCh0aGlzLGEpO2Vsc2UgcmV0dXJuIGJ9fTtfLkhhKEJoLEFoKTtCaC5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiBfLnNoKHRoaXMuYmQoITApKS5qKCl9O0JoLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3ZhciBhPUFycmF5LmZyb20odGhpcyk7Zm9yKGxldCBiIG9mIGEpdGhpcy5yZW1vdmUoYil9O18uSGEoQ2gsQmgpO18uZz1DaC5wcm90b3R5cGU7Xy5nLmlzQXZhaWxhYmxlPWZ1bmN0aW9uKCl7aWYodGhpcy5vPT09bnVsbCl7dmFyIGE9dGhpcy5qO2lmKGEpdHJ5e2Euc2V0SXRlbSgiX19zYWsiLCIxIik7YS5yZW1vdmVJdGVtKCJfX3NhayIpO3ZhciBiPSEwfWNhdGNoKGMpe2I9YyBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiYmKGMubmFtZT09PSJRdW90YUV4Y2VlZGVkRXJyb3IifHxjLmNvZGU9PT0yMnx8Yy5jb2RlPT09MTAxNHx8Yy5uYW1lPT09Ik5TX0VSUk9SX0RPTV9RVU9UQV9SRUFDSEVEIikmJmEmJmEubGVuZ3RoIT09MH1lbHNlIGI9ITE7dGhpcy5vPWJ9cmV0dXJuIHRoaXMub307Cl8uZy5zZXQ9ZnVuY3Rpb24oYSxiKXtEaCh0aGlzKTt0cnl7dGhpcy5qLnNldEl0ZW0oYSxiKX1jYXRjaChjKXtpZih0aGlzLmoubGVuZ3RoPT0wKXRocm93IlN0b3JhZ2UgbWVjaGFuaXNtOiBTdG9yYWdlIGRpc2FibGVkIjt0aHJvdyJTdG9yYWdlIG1lY2hhbmlzbTogUXVvdGEgZXhjZWVkZWQiO319O18uZy5nZXQ9ZnVuY3Rpb24oYSl7RGgodGhpcyk7YT10aGlzLmouZ2V0SXRlbShhKTtpZih0eXBlb2YgYSE9PSJzdHJpbmciJiZhIT09bnVsbCl0aHJvdyJTdG9yYWdlIG1lY2hhbmlzbTogSW52YWxpZCB2YWx1ZSB3YXMgZW5jb3VudGVyZWQiO3JldHVybiBhfTtfLmcucmVtb3ZlPWZ1bmN0aW9uKGEpe0RoKHRoaXMpO3RoaXMuai5yZW1vdmVJdGVtKGEpfTsKXy5nLmJkPWZ1bmN0aW9uKGEpe0RoKHRoaXMpO3ZhciBiPTAsYz10aGlzLmosZD1uZXcgXy5vaDtkLm5leHQ9ZnVuY3Rpb24oKXtpZihiPj1jLmxlbmd0aClyZXR1cm4gXy5hczt2YXIgZT1jLmtleShiKyspO2lmKGEpcmV0dXJue3ZhbHVlOmUsZG9uZTohMX07ZT1jLmdldEl0ZW0oZSk7aWYodHlwZW9mIGUhPT0ic3RyaW5nIil0aHJvdyJTdG9yYWdlIG1lY2hhbmlzbTogSW52YWxpZCB2YWx1ZSB3YXMgZW5jb3VudGVyZWQiO3JldHVybnt2YWx1ZTplLGRvbmU6ITF9fTtyZXR1cm4gZH07Xy5nLmNsZWFyPWZ1bmN0aW9uKCl7RGgodGhpcyk7dGhpcy5qLmNsZWFyKCl9O18uZy5rZXk9ZnVuY3Rpb24oYSl7RGgodGhpcyk7cmV0dXJuIHRoaXMuai5rZXkoYSl9O18uSGEoRWgsQ2gpO18uSGEoRmgsQmgpO0ZoLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLm8uc2V0KHRoaXMuaithLGIpfTtGaC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm8uZ2V0KHRoaXMuaithKX07RmgucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbihhKXt0aGlzLm8ucmVtb3ZlKHRoaXMuaithKX07RmgucHJvdG90eXBlLmJkPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMub1tTeW1ib2wuaXRlcmF0b3JdKCksYz10aGlzLGQ9bmV3IF8ub2g7ZC5uZXh0PWZ1bmN0aW9uKCl7dmFyIGU9Yi5uZXh0KCk7aWYoZS5kb25lKXJldHVybiBlO2ZvcihlPWUudmFsdWU7ZS5zbGljZSgwLGMuai5sZW5ndGgpIT1jLmo7KXtlPWIubmV4dCgpO2lmKGUuZG9uZSlyZXR1cm4gZTtlPWUudmFsdWV9cmV0dXJue3ZhbHVlOmE/ZS5zbGljZShjLmoubGVuZ3RoKTpjLm8uZ2V0KGUpLGRvbmU6ITF9fTtyZXR1cm4gZH07dmFyIEhoPXt9LGRzPXR5cGVvZiBVaW50OEFycmF5IT09InVuZGVmaW5lZCImJnR5cGVvZiBVaW50MTZBcnJheSE9PSJ1bmRlZmluZWQiJiZ0eXBlb2YgSW50MzJBcnJheSE9PSJ1bmRlZmluZWQiO0hoLmFzc2lnbj1mdW5jdGlvbihhKXtmb3IodmFyIGI9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpO2IubGVuZ3RoOyl7dmFyIGM9Yi5zaGlmdCgpO2lmKGMpe2lmKHR5cGVvZiBjIT09Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiYmFgIitjKTtmb3IodmFyIGQgaW4gYylPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYyxkKSYmKGFbZF09Y1tkXSl9fXJldHVybiBhfTtIaC53bj1mdW5jdGlvbihhLGIpe2lmKGEubGVuZ3RoPT09YilyZXR1cm4gYTtpZihhLnN1YmFycmF5KXJldHVybiBhLnN1YmFycmF5KDAsYik7YS5sZW5ndGg9YjtyZXR1cm4gYX07CnZhciBlcz17d2Y6ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihiLnN1YmFycmF5JiZhLnN1YmFycmF5KWEuc2V0KGIuc3ViYXJyYXkoYyxjK2QpLGUpO2Vsc2UgZm9yKHZhciBmPTA7ZjxkO2YrKylhW2UrZl09YltjK2ZdfSxNcDpmdW5jdGlvbihhKXt2YXIgYixjO3ZhciBkPWM9MDtmb3IoYj1hLmxlbmd0aDtkPGI7ZCsrKWMrPWFbZF0ubGVuZ3RoO3ZhciBlPW5ldyBVaW50OEFycmF5KGMpO2Q9Yz0wO2ZvcihiPWEubGVuZ3RoO2Q8YjtkKyspe3ZhciBmPWFbZF07ZS5zZXQoZixjKTtjKz1mLmxlbmd0aH1yZXR1cm4gZX19LGdzPXt3ZjpmdW5jdGlvbihhLGIsYyxkLGUpe2Zvcih2YXIgZj0wO2Y8ZDtmKyspYVtlK2ZdPWJbYytmXX0sTXA6ZnVuY3Rpb24oYSl7cmV0dXJuW10uY29uY2F0LmFwcGx5KFtdLGEpfX07CkhoLmpBPWZ1bmN0aW9uKCl7ZHM/KEhoLnRmPVVpbnQ4QXJyYXksSGguWWM9VWludDE2QXJyYXksSGguUXM9SW50MzJBcnJheSxIaC5hc3NpZ24oSGgsZXMpKTooSGgudGY9QXJyYXksSGguWWM9QXJyYXksSGguUXM9QXJyYXksSGguYXNzaWduKEhoLGdzKSl9O0hoLmpBKCk7dmFyIGhzPSEwO3RyeXtuZXcgVWludDhBcnJheSgxKX1jYXRjaChhKXtocz0hMX07dmFyIHRpPXt9O3RpPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWEmNjU1MzV8MDthPWE+Pj4xNiY2NTUzNXwwO2Zvcih2YXIgZjtjIT09MDspe2Y9Yz4yRTM/MkUzOmM7Yy09ZjtkbyBlPWUrYltkKytdfDAsYT1hK2V8MDt3aGlsZSgtLWYpO2UlPTY1NTIxO2ElPTY1NTIxfXJldHVybiBlfGE8PDE2fDB9O2Zvcih2YXIgdWk9e30saXMsanM9W10sa3M9MDtrczwyNTY7a3MrKyl7aXM9a3M7Zm9yKHZhciBscz0wO2xzPDg7bHMrKylpcz1pcyYxPzM5ODgyOTIzODReaXM+Pj4xOmlzPj4+MTtqc1trc109aXN9dWk9ZnVuY3Rpb24oYSxiLGMsZCl7Yz1kK2M7Zm9yKGFePS0xO2Q8YztkKyspYT1hPj4+OF5qc1soYV5iW2RdKSYyNTVdO3JldHVybiBhXi0xfTt2YXIgaWk9e307aWk9ezI6Im5lZWQgZGljdGlvbmFyeSIsMToic3RyZWFtIGVuZCIsMDoiIiwiLTEiOiJmaWxlIGVycm9yIiwiLTIiOiJzdHJlYW0gZXJyb3IiLCItMyI6ImRhdGEgZXJyb3IiLCItNCI6Imluc3VmZmljaWVudCBtZW1vcnkiLCItNSI6ImJ1ZmZlciBlcnJvciIsIi02IjoiaW5jb21wYXRpYmxlIHZlcnNpb24ifTt2YXIgWGg9WzAsMCwwLDAsMCwwLDAsMCwxLDEsMSwxLDIsMiwyLDIsMywzLDMsMyw0LDQsNCw0LDUsNSw1LDUsMF0sJGg9WzAsMCwwLDAsMSwxLDIsMiwzLDMsNCw0LDUsNSw2LDYsNyw3LDgsOCw5LDksMTAsMTAsMTEsMTEsMTIsMTIsMTMsMTNdLEtpPVswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDIsMyw3XSxtaT1bMTYsMTcsMTgsMCw4LDcsOSw2LDEwLDUsMTEsNCwxMiwzLDEzLDIsMTQsMSwxNV0sbmk9QXJyYXkoNTc2KTtKaChuaSk7dmFyIG9pPUFycmF5KDYwKTtKaChvaSk7dmFyIFpoPUFycmF5KDUxMik7SmgoWmgpO3ZhciBXaD1BcnJheSgyNTYpO0poKFdoKTt2YXIgWWg9QXJyYXkoMjkpO0poKFloKTt2YXIgYmk9QXJyYXkoMzApO0poKGJpKTt2YXIgSGksSWksSmksR2k9ITE7dmFyIENpOwpDaT1bbmV3IEFpKDAsMCwwLDAsZnVuY3Rpb24oYSxiKXt2YXIgYz02NTUzNTtmb3IoYz5hLm5jLTUmJihjPWEubmMtNSk7Oyl7aWYoYS5kYTw9MSl7dmkoYSk7aWYoYS5kYT09PTAmJmI9PT0wKXJldHVybiAxO2lmKGEuZGE9PT0wKWJyZWFrfWEuVis9YS5kYTthLmRhPTA7dmFyIGQ9YS5VYitjO2lmKGEuVj09PTB8fGEuVj49ZClpZihhLmRhPWEuVi1kLGEuVj1kLHBpKGEsITEpLGEud2EuemE9PT0wKXJldHVybiAxO2lmKGEuVi1hLlViPj1hLkJiLTI2MiYmKHBpKGEsITEpLGEud2EuemE9PT0wKSlyZXR1cm4gMX1hLnJiPTA7aWYoYj09PTQpcmV0dXJuIHBpKGEsITApLGEud2EuemE9PT0wPzM6NDthLlY+YS5VYiYmcGkoYSwhMSk7cmV0dXJuIDF9KSxuZXcgQWkoNCw0LDgsNCx3aSksbmV3IEFpKDQsNSwxNiw4LHdpKSxuZXcgQWkoNCw2LDMyLDMyLHdpKSxuZXcgQWkoNCw0LDE2LDE2LHhpKSxuZXcgQWkoOCwxNiwzMiwzMix4aSksbmV3IEFpKDgsMTYsMTI4LDEyOCx4aSksbmV3IEFpKDgsCjMyLDEyOCwyNTYseGkpLG5ldyBBaSgzMiwxMjgsMjU4LDEwMjQseGkpLG5ldyBBaSgzMiwyNTgsMjU4LDQwOTYseGkpXTt2YXIgRmk9e307Rmk9ZnVuY3Rpb24oKXt0aGlzLmlucHV0PW51bGw7dGhpcy5xZj10aGlzLkRiPXRoaXMuZmY9MDt0aGlzLm91dHB1dD1udWxsO3RoaXMuRW49dGhpcy56YT10aGlzLnFnPTA7dGhpcy5tc2c9IiI7dGhpcy5zdGF0ZT1udWxsO3RoaXMuaWw9Mjt0aGlzLnNhPTB9O3ZhciBMaT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwpFaS5wcm90b3R5cGUucHVzaD1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMud2EsZD10aGlzLm9wdGlvbnMuY2h1bmtTaXplO2lmKHRoaXMuZW5kZWQpcmV0dXJuITE7dmFyIGU9Yj09PX5+Yj9iOmI9PT0hMD80OjA7dHlwZW9mIGE9PT0ic3RyaW5nIj9jLmlucHV0PUloKGEpOkxpLmNhbGwoYSk9PT0iW29iamVjdCBBcnJheUJ1ZmZlcl0iP2MuaW5wdXQ9bmV3IFVpbnQ4QXJyYXkoYSk6Yy5pbnB1dD1hO2MuZmY9MDtjLkRiPWMuaW5wdXQubGVuZ3RoO2Rve2MuemE9PT0wJiYoYy5vdXRwdXQ9bmV3IEhoLnRmKGQpLGMucWc9MCxjLnphPWQpO2E9RGkoYyxlKTtpZihhIT09MSYmYSE9PTApcmV0dXJuIE1pKHRoaXMsYSksdGhpcy5lbmRlZD0hMCwhMTtpZihjLnphPT09MHx8Yy5EYj09PTAmJihlPT09NHx8ZT09PTIpKWlmKHRoaXMub3B0aW9ucy50bz09PSJzdHJpbmciKXt2YXIgZj1IaC53bihjLm91dHB1dCxjLnFnKTtiPWY7Zj1mLmxlbmd0aDtpZihmPDY1NTM3JiYoYi5zdWJhcnJheSYmCmhzfHwhYi5zdWJhcnJheSkpYj1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsSGgud24oYixmKSk7ZWxzZXtmb3IodmFyIGg9IiIsaz0wO2s8ZjtrKyspaCs9U3RyaW5nLmZyb21DaGFyQ29kZShiW2tdKTtiPWh9dGhpcy5jaHVua3MucHVzaChiKX1lbHNlIGI9SGgud24oYy5vdXRwdXQsYy5xZyksdGhpcy5jaHVua3MucHVzaChiKX13aGlsZSgoYy5EYj4wfHxjLnphPT09MCkmJmEhPT0xKTtpZihlPT09NClyZXR1cm4oYz10aGlzLndhKSYmYy5zdGF0ZT8oZD1jLnN0YXRlLnN0YXR1cyxkIT09NDImJmQhPT02OSYmZCE9PTczJiZkIT09OTEmJmQhPT0xMDMmJmQhPT0xMTMmJmQhPT02NjY/YT1qaShjLC0yKTooYy5zdGF0ZT1udWxsLGE9ZD09PTExMz9qaShjLC0zKTowKSk6YT0tMixNaSh0aGlzLGEpLHRoaXMuZW5kZWQ9ITAsYT09PTA7ZT09PTImJihNaSh0aGlzLDApLGMuemE9MCk7cmV0dXJuITB9O18uST1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLm5hbWU9YX19O3ZhciB4cD1uZXcgXy5JKCJyYXdDb2xkQ29uZmlnR3JvdXAiKTt2YXIgd3A9bmV3IF8uSSgicmF3SG90Q29uZmlnR3JvdXAiKTt2YXIgbXM7bXM9Xy51LndpbmRvdztfLlBpPW1zPy55dD8uY29uZmlnX3x8bXM/Lnl0Y2ZnPy5kYXRhX3x8e307Xy5yYSgieXQuY29uZmlnXyIsXy5QaSk7dmFyIFNpPVtdO3ZhciBnaj0vXltcdy5dKiQvLCRpPXtxOiEwLHNlYXJjaF9xdWVyeTohMH0sWmk9U3RyaW5nKFlpKTt2YXIgaGo9bmV3IGNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5qPWE7dGhpcy5vPWJ9fSh3aW5kb3csd2luZG93LmRvY3VtZW50KTtfLnJhKCJ5dC5hZHNfLnNpZ25hbHNfLmdldEFkU2lnbmFsc1N0cmluZyIsZnVuY3Rpb24oYSl7cmV0dXJuIGFqKF8ubGooYSkpfSk7Xy5FYSgpO25hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiIChDcktleSAiKTt2YXIgcXM7cXM9MDtfLnJzPV8uY3I/IndlYmtpdCI6YnI/Im1veiI6YXI/Im1zIjokcT8ibyI6IiI7Xy5yYSgieXREb21Eb21HZXROZXh0SWQiLF8uc2EoInl0RG9tRG9tR2V0TmV4dElkIil8fCgoKT0+KytxcykpO18uc3M9Xy51Lnl0RXZlbnRzRXZlbnRzTGlzdGVuZXJzfHx7fTtfLnJhKCJ5dEV2ZW50c0V2ZW50c0xpc3RlbmVycyIsXy5zcyk7Xy50cz1fLnUueXRFdmVudHNFdmVudHNDb3VudGVyfHx7Y291bnQ6MH07Xy5yYSgieXRFdmVudHNFdmVudHNDb3VudGVyIixfLnRzKTtfLnVzPWhkKGZ1bmN0aW9uKCl7dmFyIGE9ITE7dHJ5e2xldCBiPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwiY2FwdHVyZSIse2dldDpmdW5jdGlvbigpe2E9ITB9fSk7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLG51bGwsYil9Y2F0Y2goYil7fXJldHVybiBhfSk7dmFyIHZzO3ZzPXdpbmRvdztfLmVsPXZzLnl0Y3NpJiZ2cy55dGNzaS5ub3c/dnMueXRjc2kubm93OnZzLnBlcmZvcm1hbmNlJiZ2cy5wZXJmb3JtYW5jZS50aW1pbmcmJnZzLnBlcmZvcm1hbmNlLm5vdyYmdnMucGVyZm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydD8oKT0+dnMucGVyZm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydCt2cy5wZXJmb3JtYW5jZS5ub3coKTooKT0+KG5ldyBEYXRlKS5nZXRUaW1lKCk7dmFyIG5qPSJYTUxIdHRwUmVxdWVzdCJpbiBfLnU/KCk9Pm5ldyBYTUxIdHRwUmVxdWVzdDpudWxsO3ZhciB3cz0iYWJzb2x1dGVfZXhwZXJpbWVudHMgY2xpZW50X2Rldl9kb21haW4gY2xpZW50X2Rldl9leHBmbGFnIGNsaWVudF9kZXZfcmVnZXhfbWFwIGNsaWVudF9kZXZfcm9vdF91cmwgY2xpZW50X3JvbGxvdXRfb3ZlcnJpZGUgZXhwZmxhZyBmb3JjZWRDYXBhYmlsaXR5IGpzZmVhdCBqc21vZGUgbW9kcyB0aGVtZSIuc3BsaXQoIiAiKTtbLi4ud3NdO3ZhciB5aj17QXV0aG9yaXphdGlvbjoiQVVUSE9SSVpBVElPTiIsIlgtR29vZy1FT00tVmlzaXRvci1JZCI6IkVPTV9WSVNJVE9SX0RBVEEiLCJYLUdvb2ctVmlzaXRvci1JZCI6IlNBTkRCT1hFRF9WSVNJVE9SX0lEIiwiWC1Zb3V0dWJlLURvbWFpbi1BZG1pbi1TdGF0ZSI6IkRPTUFJTl9BRE1JTl9TVEFURSIsIlgtWW91dHViZS1DaHJvbWUtQ29ubmVjdGVkIjoiQ0hST01FX0NPTk5FQ1RFRF9IRUFERVIiLCJYLVlvdVR1YmUtQ2xpZW50LU5hbWUiOiJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsIlgtWW91VHViZS1DbGllbnQtVmVyc2lvbiI6IklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9WRVJTSU9OIiwiWC1Zb3VUdWJlLURlbGVnYXRpb24tQ29udGV4dCI6IklOTkVSVFVCRV9DT05URVhUX1NFUklBTElaRURfREVMRUdBVElPTl9DT05URVhUIiwiWC1Zb3VUdWJlLURldmljZSI6IkRFVklDRSIsIlgtWW91dHViZS1JZGVudGl0eS1Ub2tlbiI6IklEX1RPS0VOIiwiWC1Zb3VUdWJlLVBhZ2UtQ0wiOiJQQUdFX0NMIiwKIlgtWW91VHViZS1QYWdlLUxhYmVsIjoiUEFHRV9CVUlMRF9MQUJFTCIsIlgtR29vZy1BdXRoVXNlciI6IlNFU1NJT05fSU5ERVgiLCJYLUdvb2ctUGFnZUlkIjoiREVMRUdBVEVEX1NFU1NJT05fSUQifSxLaj1bImFwcCIsImRlYnVnY3NzIiwiZGVidWdqcyIsImV4cGZsYWciLCJmb3JjZV9hZF9wYXJhbXMiLCJmb3JjZV9hZF9lbmNyeXB0ZWQiLCJmb3JjZV92aXJhbF9hZF9yZXNwb25zZV9wYXJhbXMiLCJmb3JjZWRfZXhwZXJpbWVudHMiLCJpbm5lcnR1YmVfc25hcHNob3RzIiwiaW5uZXJ0dWJlX2dvbGRlbnMiLCJpbnRlcm5hbGNvdW50cnljb2RlIiwiaW50ZXJuYWxpcG92ZXJyaWRlIiwiYWJzb2x1dGVfZXhwZXJpbWVudHMiLCJjb25kaXRpb25hbF9leHBlcmltZW50cyIsInNiYiIsInNyX2Juc19hZGRyZXNzIiwuLi53c10sR2o9ITEsRGo9eGo7Xy5ubT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuem49ITB9fTtfLnhzPV8uc2EoInl0Z2xvYmFsLnByZWZzVXNlclByZWZzUHJlZnNfIil8fHt9O18ucmEoInl0Z2xvYmFsLnByZWZzVXNlclByZWZzUHJlZnNfIixfLnhzKTt2YXIgUmo9e2JsdWV0b290aDoiQ09OTl9ESVNDTyIsY2VsbHVsYXI6IkNPTk5fQ0VMTFVMQVJfVU5LTk9XTiIsZXRoZXJuZXQ6IkNPTk5fV0lGSSIsbm9uZToiQ09OTl9OT05FIix3aWZpOiJDT05OX1dJRkkiLHdpbWF4OiJDT05OX0NFTExVTEFSXzRHIixvdGhlcjoiQ09OTl9VTktOT1dOIix1bmtub3duOiJDT05OX1VOS05PV04iLCJzbG93LTJnIjoiQ09OTl9DRUxMVUxBUl8yRyIsIjJnIjoiQ09OTl9DRUxMVUxBUl8yRyIsIjNnIjoiQ09OTl9DRUxMVUxBUl8zRyIsIjRnIjoiQ09OTl9DRUxMVUxBUl80RyJ9LFRqPXsic2xvdy0yZyI6IkVGRkVDVElWRV9DT05ORUNUSU9OX1RZUEVfU0xPV18yRyIsIjJnIjoiRUZGRUNUSVZFX0NPTk5FQ1RJT05fVFlQRV8yRyIsIjNnIjoiRUZGRUNUSVZFX0NPTk5FQ1RJT05fVFlQRV8zRyIsIjRnIjoiRUZGRUNUSVZFX0NPTk5FQ1RJT05fVFlQRV80RyJ9O18uWGo9Y2xhc3MgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihhLC4uLmIpe3N1cGVyKGEpO3RoaXMuYXJncz1bLi4uYl07T2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsbmV3LnRhcmdldC5wcm90b3R5cGUpfX07dmFyIHlzPWNsYXNze3BiKGEsYil7cmV0dXJuIHRoaXMuR2EoYSwxLGIpfVUoYSl7dmFyIGI9Xy5zYSgieXQuc2NoZWR1bGVyLmluc3RhbmNlLmFkZEltbWVkaWF0ZUpvYiIpO2I/YihhKTphKCl9fTt2YXIgenM9MUUzLzYwLEFzPV8uc2ooIndlYl9lbXVsYXRlZF9pZGxlX2NhbGxiYWNrX2RlbGF5IiwzMDApLGdrPXpzLTMsZGs9WzgsNSw0LDMsMiwxLDBdLGprPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhPXt9KXtzdXBlcigpO3RoaXMubz1bXTt0aGlzLnY9e307dGhpcy5vYT10aGlzLmo9MDt0aGlzLnBhdXNlZD10aGlzLkQ9ITE7dGhpcy5nYT1bXTt0aGlzLmhhPXRoaXMueWE9ITE7Zm9yKGxldCBiIG9mIGRrKXRoaXMub1tiXT1bXTt0aGlzLkI9MDt0aGlzLmV5PWEudGltZW91dHx8MTt0aGlzLk09Z2s7dGhpcy5JPTA7dGhpcy5NYT10aGlzLml5LmJpbmQodGhpcyk7dGhpcy5neD10aGlzLnp5LmJpbmQodGhpcyk7dGhpcy5mYz10aGlzLkViLmJpbmQodGhpcyk7dGhpcy5WZD10aGlzLmh5LmJpbmQodGhpcyk7dGhpcy5GbD10aGlzLlFhLmJpbmQodGhpcyk7dGhpcy51dz0oKT0+e3RoaXMuUWEocGVyZm9ybWFuY2Uubm93KCkpfTt0aGlzLkZhPSEhd2luZG93LnJlcXVlc3RJZGxlQ2FsbGJhY2smJgohIXdpbmRvdy5jYW5jZWxJZGxlQ2FsbGJhY2smJiFfLngoImRpc2FibGVfc2NoZWR1bGVyX3JlcXVlc3RJZGxlQ2FsbGJhY2siKTsoKHRoaXMuWj1hLnVzZVJhZiE9PSExJiYhIXdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUpfHxfLngoImVuYWJsZV9zY2hlZHVsZXJfc2ltdWxhdGVfcmFmIikpJiZkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLk1hKX1VKGEpe3ZhciBiPV8uRWEoKTtaaih0aGlzLGEpO2E9Xy5FYSgpLWI7dGhpcy5EfHwodGhpcy5NLT1hKX1HYShhLGIsYyl7Kyt0aGlzLm9hO2lmKGI9PT0xMClyZXR1cm4gdGhpcy5VKGEpLHRoaXMub2E7dmFyIGQ9dGhpcy5vYTt0aGlzLnZbZF09YTt0aGlzLkQmJiFjP3RoaXMuZ2EucHVzaCh7aWQ6ZCxwcmlvcml0eTpifSk6KHRoaXMub1tiXS5wdXNoKGQpLHRoaXMucGF1c2VkfHx0aGlzLkR8fCh0aGlzLmohPT0wJiZiayh0aGlzKSE9PXRoaXMuSSYmdGhpcy5zdG9wKCksdGhpcy5zdGFydCgpKSk7CnJldHVybiBkfUFhKGEpe2RlbGV0ZSB0aGlzLnZbYV19aXNIaWRkZW4oKXtyZXR1cm4hIWRvY3VtZW50LmhpZGRlbnx8ITF9SmIoYSl7dmFyIGI9Xy5zYSgieXQubG9nZ2luZy5lcnJvcnMubG9nIik7YiYmYihhKX1oeShhKXt2YXIgYj12b2lkIDA7YSYmKGI9YS50aW1lUmVtYWluaW5nKCkpO3RoaXMueWE9ITA7aGsodGhpcyxiKTt0aGlzLnlhPSExfXp5KCl7aGsodGhpcyl9RWIoKXtpayh0aGlzKX1RYShhKXt0aGlzLmhhPSEwO3ZhciBiPWJrKHRoaXMpO2I9PT00JiZiIT09dGhpcy5JJiYodGhpcy5zdG9wKCksdGhpcy5zdGFydCgpKTtoayh0aGlzLHZvaWQgMCxhKTt0aGlzLmhhPSExfWl5KCl7dGhpcy5pc0hpZGRlbigpfHxpayh0aGlzKTt0aGlzLmomJih0aGlzLnN0b3AoKSx0aGlzLnN0YXJ0KCkpfXJlcXVlc3RJZGxlQ2FsbGJhY2soYSl7cmV0dXJuIHRoaXMuRmE/d2luZG93LnJlcXVlc3RJZGxlQ2FsbGJhY2soYSx7dGltZW91dDozRTN9KTp3aW5kb3cuc2V0VGltZW91dChhLApBcyl9Y2FuY2VsSWRsZUNhbGxiYWNrKGEpe3RoaXMuRmE/d2luZG93LmNhbmNlbElkbGVDYWxsYmFjayhhKTp3aW5kb3cuY2xlYXJUaW1lb3V0KGEpfXN0YXJ0KCl7dGhpcy5wYXVzZWQ9ITE7aWYodGhpcy5qPT09MClzd2l0Y2godGhpcy5JPWJrKHRoaXMpLHRoaXMuSSl7Y2FzZSAxOnRoaXMuaj10aGlzLnJlcXVlc3RJZGxlQ2FsbGJhY2sodGhpcy5WZCk7YnJlYWs7Y2FzZSAyOnRoaXMuaj13aW5kb3cuc2V0VGltZW91dCh0aGlzLmd4LHRoaXMuZXkpO2JyZWFrO2Nhc2UgMzp0aGlzLmo9d2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSh0aGlzLkZsKTticmVhaztjYXNlIDQ6dGhpcy5qPXdpbmRvdy5zZXRUaW1lb3V0KHRoaXMuZmMsMCk7YnJlYWs7Y2FzZSA1OnRoaXMuaj13aW5kb3cuc2V0VGltZW91dCh0aGlzLnV3LHpzKX19cGF1c2UoKXt0aGlzLnN0b3AoKTt0aGlzLnBhdXNlZD0hMH1zdG9wKCl7aWYodGhpcy5qKXtzd2l0Y2godGhpcy5JKXtjYXNlIDE6dGhpcy5jYW5jZWxJZGxlQ2FsbGJhY2sodGhpcy5qKTsKYnJlYWs7Y2FzZSA1OmNhc2UgMjpjYXNlIDQ6d2luZG93LmNsZWFyVGltZW91dCh0aGlzLmopO2JyZWFrO2Nhc2UgMzp3aW5kb3cuY2FuY2VsQW5pbWF0aW9uRnJhbWUodGhpcy5qKX10aGlzLmo9MH19bGEoKXtjayh0aGlzKTt0aGlzLnN0b3AoKTsodGhpcy5afHxfLngoImVuYWJsZV9zY2hlZHVsZXJfc2ltdWxhdGVfcmFmIikpJiZkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLk1hKTtzdXBlci5sYSgpfX07dmFyIG5rPV8uc2EoInl0LnNjaGVkdWxlci5pbnN0YW5jZS50aW1lcklkTWFwXyIpfHx7fSx1az1fLnNqKCJrZXZsYXJfdHVuZXJfc2NoZWR1bGVyX3NvZnRfc3RhdGVfdGltZXJfbXMiLDgwMCksdGs9MCx3az0wO3ZhciBCaztCaz1jbGFzcyBleHRlbmRzIHlze0dhKGEsYixjKXtjIT09dm9pZCAwJiZOdW1iZXIuaXNOYU4oTnVtYmVyKGMpKSYmKGM9dm9pZCAwKTt2YXIgZD1fLnNhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuYWRkSm9iIik7cmV0dXJuIGQ/ZChhLGIsYyk6Yz09PXZvaWQgMD8oYSgpLE5hTik6Xy5taihhLGN8fDApfUFhKGEpe2lmKGE9PT12b2lkIDB8fCFOdW1iZXIuaXNOYU4oTnVtYmVyKGEpKSl7dmFyIGI9Xy5zYSgieXQuc2NoZWR1bGVyLmluc3RhbmNlLmNhbmNlbEpvYiIpO2I/YihhKTp3aW5kb3cuY2xlYXJUaW1lb3V0KGEpfX1zdGFydCgpe3ZhciBhPV8uc2EoInl0LnNjaGVkdWxlci5pbnN0YW5jZS5zdGFydCIpO2EmJmEoKX1wYXVzZSgpe3ZhciBhPV8uc2EoInl0LnNjaGVkdWxlci5pbnN0YW5jZS5wYXVzZSIpO2EmJmEoKX19O18uamY9Xy5DaygpOwpfLnNhKCJ5dC5zY2hlZHVsZXIuaW5pdGlhbGl6ZWQiKXx8KF8ucmEoInl0LnNjaGVkdWxlci5pbnN0YW5jZS5kaXNwb3NlIixtayksXy5yYSgieXQuc2NoZWR1bGVyLmluc3RhbmNlLmFkZEpvYiIsb2spLF8ucmEoInl0LnNjaGVkdWxlci5pbnN0YW5jZS5hZGRJbW1lZGlhdGVKb2IiLHBrKSxfLnJhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuY2FuY2VsSm9iIixxayksXy5yYSgieXQuc2NoZWR1bGVyLmluc3RhbmNlLmNhbmNlbEFsbEpvYnMiLGxrKSxfLnJhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2Uuc3RhcnQiLHJrKSxfLnJhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UucGF1c2UiLHZrKSxfLnJhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2Uuc2V0UHJpb3JpdHlUaHJlc2hvbGQiLHhrKSxfLnJhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuZW5hYmxlUHJpb3JpdHlUaHJlc2hvbGQiLHprKSxfLnJhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuY2xlYXJQcmlvcml0eVRocmVzaG9sZCIsQWspLF8ucmEoInl0LnNjaGVkdWxlci5pbml0aWFsaXplZCIsCiEwKSk7Xy5lbj1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9KGE9Xy5HaChhKSk/bmV3IF8uemgoYSk6bnVsbDt0aGlzLnY9ZG9jdW1lbnQuZG9tYWlufHx3aW5kb3cubG9jYXRpb24uaG9zdG5hbWV9bygpe3JldHVybiEhdGhpcy5qfXNldChhLGIsYyxkKXtjPWN8fDMxMTA0RTM7dGhpcy5yZW1vdmUoYSk7aWYodGhpcy5vKCkpdHJ5e3RoaXMuai5zZXQoYSxiLERhdGUubm93KCkrYyoxRTMpO3JldHVybn1jYXRjaChmKXt9dmFyIGU9IiI7aWYoZCl0cnl7ZT1lc2NhcGUoYnMoYikpfWNhdGNoKGYpe3JldHVybn1lbHNlIGU9ZXNjYXBlKGIpO18uTWooYSxlLGMsdGhpcy52KX1nZXQoYSxiKXt2YXIgYz12b2lkIDAsZD0hdGhpcy5vKCk7aWYoIWQpdHJ5e2M9dGhpcy5qLmdldChhKX1jYXRjaChlKXtkPSEwfWlmKGQmJihjPV8uTGouZ2V0KGEsdm9pZCAwKSkmJihjPXVuZXNjYXBlKGMpLGIpKXRyeXtjPUpTT04ucGFyc2UoYyl9Y2F0Y2goZSl7dGhpcy5yZW1vdmUoYSksYz12b2lkIDB9cmV0dXJuIGN9cmVtb3ZlKGEpe3RoaXMubygpJiYKdGhpcy5qLnJlbW92ZShhKTtfLk5qKGEsIi8iLHRoaXMudil9fTt2YXIgRGs9KCgpPT57dmFyIGE7cmV0dXJuKCk9PnthfHwoYT1uZXcgXy5lbigieXRpZGIiKSk7cmV0dXJuIGF9fSkoKTt2YXIgRms7Xy5Iaz1bXTtGaz0hMTtfLklsPV8uaHJ8fF8uaXI7dmFyIEJzPXtBVVRIX0lOVkFMSUQ6Ik5vIHVzZXIgaWRlbnRpZmllciBzcGVjaWZpZWQuIixFWFBMSUNJVF9BQk9SVDoiVHJhbnNhY3Rpb24gd2FzIGV4cGxpY2l0bHkgYWJvcnRlZC4iLElEQl9OT1RfU1VQUE9SVEVEOiJJbmRleGVkREIgaXMgbm90IHN1cHBvcnRlZC4iLE1JU1NJTkdfSU5ERVg6IkluZGV4IG5vdCBjcmVhdGVkLiIsTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiJPYmplY3Qgc3RvcmVzIG5vdCBjcmVhdGVkLiIsREJfREVMRVRFRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVM6IkRhdGFiYXNlIGlzIGRlbGV0ZWQgYmVjYXVzZSBleHBlY3RlZCBvYmplY3Qgc3RvcmVzIHdlcmUgbm90IGNyZWF0ZWQuIixEQl9SRU9QRU5FRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVM6IkRhdGFiYXNlIGlzIHJlb3BlbmVkIGJlY2F1c2UgZXhwZWN0ZWQgb2JqZWN0IHN0b3JlcyB3ZXJlIG5vdCBjcmVhdGVkLiIsVU5LTk9XTl9BQk9SVDoiVHJhbnNhY3Rpb24gd2FzIGFib3J0ZWQgZm9yIHVua25vd24gcmVhc29ucy4iLApRVU9UQV9FWENFRURFRDoiVGhlIGN1cnJlbnQgdHJhbnNhY3Rpb24gZXhjZWVkZWQgaXRzIHF1b3RhIGxpbWl0YXRpb25zLiIsUVVPVEFfTUFZQkVfRVhDRUVERUQ6IlRoZSBjdXJyZW50IHRyYW5zYWN0aW9uIG1heSBoYXZlIGZhaWxlZCBiZWNhdXNlIG9mIGV4Y2VlZGluZyBxdW90YSBsaW1pdGF0aW9ucy4iLEVYRUNVVEVfVFJBTlNBQ1RJT05fT05fQ0xPU0VEX0RCOiJDYW4ndCBzdGFydCBhIHRyYW5zYWN0aW9uIG9uIGEgY2xvc2VkIGRhdGFiYXNlIixJTkNPTVBBVElCTEVfREJfVkVSU0lPTjoiVGhlIGJpbmFyeSBpcyBpbmNvbXBhdGlibGUgd2l0aCB0aGUgZGF0YWJhc2UgdmVyc2lvbiJ9LENzPXtBVVRIX0lOVkFMSUQ6IkVSUk9SIixFWEVDVVRFX1RSQU5TQUNUSU9OX09OX0NMT1NFRF9EQjoiV0FSTklORyIsRVhQTElDSVRfQUJPUlQ6IklHTk9SRUQiLElEQl9OT1RfU1VQUE9SVEVEOiJFUlJPUiIsTUlTU0lOR19JTkRFWDoiV0FSTklORyIsTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiJFUlJPUiIsCkRCX0RFTEVURURfQllfTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiJXQVJOSU5HIixEQl9SRU9QRU5FRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVM6IldBUk5JTkciLFFVT1RBX0VYQ0VFREVEOiJXQVJOSU5HIixRVU9UQV9NQVlCRV9FWENFRURFRDoiV0FSTklORyIsVU5LTk9XTl9BQk9SVDoiV0FSTklORyIsSU5DT01QQVRJQkxFX0RCX1ZFUlNJT046IldBUk5JTkcifSxEcz17QVVUSF9JTlZBTElEOiExLEVYRUNVVEVfVFJBTlNBQ1RJT05fT05fQ0xPU0VEX0RCOiExLEVYUExJQ0lUX0FCT1JUOiExLElEQl9OT1RfU1VQUE9SVEVEOiExLE1JU1NJTkdfSU5ERVg6ITEsTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiExLERCX0RFTEVURURfQllfTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiExLERCX1JFT1BFTkVEX0JZX01JU1NJTkdfT0JKRUNUX1NUT1JFUzohMSxRVU9UQV9FWENFRURFRDohMSxRVU9UQV9NQVlCRV9FWENFRURFRDohMCxVTktOT1dOX0FCT1JUOiEwLElOQ09NUEFUSUJMRV9EQl9WRVJTSU9OOiExfSwKTms9Y2xhc3MgZXh0ZW5kcyBfLlhqe2NvbnN0cnVjdG9yKGEsYj17fSxjPUJzW2FdLGQ9Q3NbYV0sZT1Ec1thXSl7c3VwZXIoYyx7bmFtZToiWXRJZGJLbm93bkVycm9yIixpc1N3OnNlbGYuZG9jdW1lbnQ9PT12b2lkIDAsaXNJZnJhbWU6c2VsZiE9PXNlbGYudG9wLHR5cGU6YSwuLi5ifSk7dGhpcy50eXBlPWE7dGhpcy5tZXNzYWdlPWM7dGhpcy5sZXZlbD1kO3RoaXMuaj1lO09iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLE5rLnByb3RvdHlwZSl9fSxFcz1jbGFzcyBleHRlbmRzIE5re2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoIk1JU1NJTkdfT0JKRUNUX1NUT1JFUyIse2V4cGVjdGVkT2JqZWN0U3RvcmVzOmIsZm91bmRPYmplY3RTdG9yZXM6YX0sQnMuTUlTU0lOR19PQkpFQ1RfU1RPUkVTKTtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxFcy5wcm90b3R5cGUpfX0sUGs9Y2xhc3MgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihhLGIpe3N1cGVyKCk7dGhpcy5pbmRleD1hO3RoaXMub2JqZWN0U3RvcmU9CmI7T2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsUGsucHJvdG90eXBlKX19LFFrPVsiVGhlIGRhdGFiYXNlIGNvbm5lY3Rpb24gaXMgY2xvc2luZyIsIkNhbid0IHN0YXJ0IGEgdHJhbnNhY3Rpb24gb24gYSBjbG9zZWQgZGF0YWJhc2UiLCJBIG11dGF0aW9uIG9wZXJhdGlvbiB3YXMgYXR0ZW1wdGVkIG9uIGEgZGF0YWJhc2UgdGhhdCBkaWQgbm90IGFsbG93IG11dGF0aW9ucyJdO3ZhciBhbDthbD1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX19OwpfLlZrPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuc3RhdGU9e3N0YXR1czoiUEVORElORyJ9O3RoaXMuaj1bXTt0aGlzLm89W107YT1hLmo7dmFyIGI9ZD0+e2lmKHRoaXMuc3RhdGUuc3RhdHVzPT09IlBFTkRJTkciKXt0aGlzLnN0YXRlPXtzdGF0dXM6IkZVTEZJTExFRCIsdmFsdWU6ZH07Zm9yKGxldCBlIG9mIHRoaXMuaillKCl9fSxjPWQ9PntpZih0aGlzLnN0YXRlLnN0YXR1cz09PSJQRU5ESU5HIil7dGhpcy5zdGF0ZT17c3RhdHVzOiJSRUpFQ1RFRCIscmVhc29uOmR9O2ZvcihsZXQgZSBvZiB0aGlzLm8pZSgpfX07dHJ5e2EoYixjKX1jYXRjaChkKXtjKGQpfX1zdGF0aWMgYWxsKGEpe3JldHVybiBuZXcgXy5WayhuZXcgYWwoKGIsYyk9Pnt2YXIgZD1bXSxlPWEubGVuZ3RoO2U9PT0wJiZiKGQpO2ZvcihsZXQgZj0wO2Y8YS5sZW5ndGg7KytmKV8uVmsucmVzb2x2ZShhW2ZdKS50aGVuKGg9PntkW2ZdPWg7ZS0tO2U9PT0wJiZiKGQpfSkuY2F0Y2goaD0+e2MoaCl9KX0pKX1zdGF0aWMgcmVzb2x2ZShhKXtyZXR1cm4gbmV3IF8uVmsobmV3IGFsKChiLApjKT0+e2EgaW5zdGFuY2VvZiBfLlZrP2EudGhlbihiLGMpOmIoYSl9KSl9c3RhdGljIHJlamVjdChhKXtyZXR1cm4gbmV3IF8uVmsobmV3IGFsKChiLGMpPT57YyhhKX0pKX10aGVuKGEsYil7dmFyIGM9YT8/VWssZD1iPz9UaztyZXR1cm4gbmV3IF8uVmsobmV3IGFsKChlLGYpPT57dGhpcy5zdGF0ZS5zdGF0dXM9PT0iUEVORElORyI/KHRoaXMuai5wdXNoKCgpPT57WGsodGhpcyx0aGlzLGMsZSxmKX0pLHRoaXMuby5wdXNoKCgpPT57WWsodGhpcyx0aGlzLGQsZSxmKX0pKTp0aGlzLnN0YXRlLnN0YXR1cz09PSJGVUxGSUxMRUQiP1hrKHRoaXMsdGhpcyxjLGUsZik6dGhpcy5zdGF0ZS5zdGF0dXM9PT0iUkVKRUNURUQiJiZZayh0aGlzLHRoaXMsZCxlLGYpfSkpfWNhdGNoKGEpe3JldHVybiB0aGlzLnRoZW4odm9pZCAwLGEpfX07dmFyIHhsPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5qPWE7dGhpcy5vcHRpb25zPWI7dGhpcy50cmFuc2FjdGlvbkNvdW50PTA7dGhpcy52PU1hdGgucm91bmQoKDAsXy5lbCkoKSk7dGhpcy5vPSExfWFkZChhLGIsYyl7cmV0dXJuIF8uaWwodGhpcyxbYV0se21vZGU6InJlYWR3cml0ZSIsa2I6ITAsY29tbWl0OmRsKCl9LGQ9PmQub2JqZWN0U3RvcmUoYSkuYWRkKGIsYykpfWNsZWFyKGEpe3JldHVybiBfLmlsKHRoaXMsW2FdLHttb2RlOiJyZWFkd3JpdGUiLGtiOiEwfSxiPT5iLm9iamVjdFN0b3JlKGEpLmNsZWFyKCkpfWNsb3NlKCl7dGhpcy5qLmNsb3NlKCk7dGhpcy5vcHRpb25zPy5jbG9zZWQmJnRoaXMub3B0aW9ucy5jbG9zZWQoKX1jb3VudChhLGIpe3JldHVybiBfLmlsKHRoaXMsW2FdLHttb2RlOiJyZWFkb25seSIsa2I6ITAsY29tbWl0OmRsKCl9LGM9PmMub2JqZWN0U3RvcmUoYSkuY291bnQoYikpfWRlbGV0ZShhLGIpe3JldHVybiBfLmlsKHRoaXMsW2FdLHttb2RlOiJyZWFkd3JpdGUiLAprYjohMCxjb21taXQ6ZGwoKSYmIShiIGluc3RhbmNlb2YgSURCS2V5UmFuZ2UpfSxjPT5jLm9iamVjdFN0b3JlKGEpLmRlbGV0ZShiKSl9Z2V0KGEsYil7cmV0dXJuIF8uaWwodGhpcyxbYV0se21vZGU6InJlYWRvbmx5IixrYjohMCxjb21taXQ6ZGwoKX0sYz0+Yy5vYmplY3RTdG9yZShhKS5nZXQoYikpfWdldEFsbChhLGIsYyl7cmV0dXJuIF8uaWwodGhpcyxbYV0se21vZGU6InJlYWRvbmx5IixrYjohMH0sZD0+ZC5vYmplY3RTdG9yZShhKS5nZXRBbGwoYixjKSl9b2JqZWN0U3RvcmVOYW1lcygpe3JldHVybiBBcnJheS5mcm9tKHRoaXMuai5vYmplY3RTdG9yZU5hbWVzKX1nZXROYW1lKCl7cmV0dXJuIHRoaXMuai5uYW1lfX0samw9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWF9YWRkKGEsYil7cmV0dXJuIGJsKHRoaXMuai5hZGQoYSxiKSl9YXV0b0luY3JlbWVudCgpe3JldHVybiB0aGlzLmouYXV0b0luY3JlbWVudH1jbGVhcigpe3JldHVybiBibCh0aGlzLmouY2xlYXIoKSkudGhlbigoKT0+Cnt9KX1jb3VudChhKXtyZXR1cm4gYmwodGhpcy5qLmNvdW50KGEpKX1kZWxldGUoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBJREJLZXlSYW5nZT9zbCh0aGlzLGEpOmJsKHRoaXMuai5kZWxldGUoYSkpfWdldChhKXtyZXR1cm4gYmwodGhpcy5qLmdldChhKSl9Z2V0QWxsKGEsYil7cmV0dXJuImdldEFsbCJpbiBJREJPYmplY3RTdG9yZS5wcm90b3R5cGU/YmwodGhpcy5qLmdldEFsbChhLGIpKTp0bCh0aGlzLGEsYil9aW5kZXgoYSl7dHJ5e3JldHVybiBuZXcgRnModGhpcy5qLmluZGV4KGEpKX1jYXRjaChiKXtpZihiIGluc3RhbmNlb2YgRXJyb3ImJmIubmFtZT09PSJOb3RGb3VuZEVycm9yIil0aHJvdyBuZXcgUGsoYSx0aGlzLmoubmFtZSk7dGhyb3cgYjt9fWdldE5hbWUoKXtyZXR1cm4gdGhpcy5qLm5hbWV9a2V5UGF0aCgpe3JldHVybiB0aGlzLmoua2V5UGF0aH19LGZsPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuaj1hO3RoaXMubz1uZXcgTWFwO3RoaXMuYWJvcnRlZD0hMTsKdGhpcy5kb25lPW5ldyBQcm9taXNlKChiLGMpPT57dGhpcy5qLmFkZEV2ZW50TGlzdGVuZXIoImNvbXBsZXRlIiwoKT0+e2IoKX0pO3RoaXMuai5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsZD0+e2QuY3VycmVudFRhcmdldD09PWQudGFyZ2V0JiZjKHRoaXMuai5lcnJvcil9KTt0aGlzLmouYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLCgpPT57dmFyIGQ9dGhpcy5qLmVycm9yO2lmKGQpYyhkKTtlbHNlIGlmKCF0aGlzLmFib3J0ZWQpe2Q9Tms7dmFyIGU9dGhpcy5qLm9iamVjdFN0b3JlTmFtZXM7bGV0IGY9W107Zm9yKGxldCBoPTA7aDxlLmxlbmd0aDtoKyspe2xldCBrPWUuaXRlbShoKTtpZihrPT09bnVsbCl0aHJvdyBFcnJvcigibWEiKTtmLnB1c2goayl9ZD1uZXcgZCgiVU5LTk9XTl9BQk9SVCIse29iamVjdFN0b3JlTmFtZXM6Zi5qb2luKCksZGJOYW1lOnRoaXMuai5kYi5uYW1lLG1vZGU6dGhpcy5qLm1vZGV9KTtjKGQpfX0pfSl9YWJvcnQoKXt0aGlzLmouYWJvcnQoKTt0aGlzLmFib3J0ZWQ9CiEwO3Rocm93IG5ldyBOaygiRVhQTElDSVRfQUJPUlQiKTt9Y29tbWl0KCl7dGhpcy5hYm9ydGVkfHx0aGlzLmouY29tbWl0Py4oKX1vYmplY3RTdG9yZShhKXthPXRoaXMuai5vYmplY3RTdG9yZShhKTt2YXIgYj10aGlzLm8uZ2V0KGEpO2J8fChiPW5ldyBqbChhKSx0aGlzLm8uc2V0KGEsYikpO3JldHVybiBifX0sRnM9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWF9Y291bnQoYSl7cmV0dXJuIGJsKHRoaXMuai5jb3VudChhKSl9ZGVsZXRlKGEpe3JldHVybiB1bCh0aGlzLHtxdWVyeTphfSxiPT5iLmRlbGV0ZSgpLnRoZW4oKCk9PnJsKGIpKSl9Z2V0KGEpe3JldHVybiBibCh0aGlzLmouZ2V0KGEpKX1nZXRBbGwoYSxiKXtyZXR1cm4iZ2V0QWxsImluIElEQkluZGV4LnByb3RvdHlwZT9ibCh0aGlzLmouZ2V0QWxsKGEsYikpOnZsKHRoaXMsYSxiKX1rZXlQYXRoKCl7cmV0dXJuIHRoaXMuai5rZXlQYXRofXVuaXF1ZSgpe3JldHVybiB0aGlzLmoudW5pcXVlfX0sd2w9Y2xhc3N7Y29uc3RydWN0b3IoYSwKYil7dGhpcy5yZXF1ZXN0PWE7dGhpcy5jdXJzb3I9Yn1kZWxldGUoKXtyZXR1cm4gYmwodGhpcy5jdXJzb3IuZGVsZXRlKCkpLnRoZW4oKCk9Pnt9KX11cGRhdGUoYSl7cmV0dXJuIGJsKHRoaXMuY3Vyc29yLnVwZGF0ZShhKSl9fTt2YXIgR3M9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLm5hbWU9YTt0aGlzLm9wdGlvbnM9Yjt0aGlzLnY9ITA7dGhpcy5EPXRoaXMuQj0wfW8oYSxiLGM9e30pe3JldHVybiB6bChhLGIsYyl9ZGVsZXRlKGE9e30pe3JldHVybiBfLkFsKHRoaXMubmFtZSxhKX1vcGVuKCl7aWYoIXRoaXMudil0aHJvdyBCbCh0aGlzKTtpZih0aGlzLmopcmV0dXJuIHRoaXMuajt2YXIgYSxiPSgpPT57dGhpcy5qPT09YSYmKHRoaXMuaj12b2lkIDApfSxjPXtibG9ja2luZzplPT57ZS5jbG9zZSgpfSxjbG9zZWQ6YixUQTpiLHVwZ3JhZGU6dGhpcy5vcHRpb25zLnVwZ3JhZGV9LGQ9YXN5bmMoKT0+e3ZhciBlPUVycm9yKCkuc3RhY2s/PyIiO3RyeXtsZXQgaz1hd2FpdCB0aGlzLm8odGhpcy5uYW1lLHRoaXMub3B0aW9ucy52ZXJzaW9uLGMpO3ZhciBmPWssaD10aGlzLm9wdGlvbnM7bGV0IGw9W107Zm9yKGxldCBtIG9mIE9iamVjdC5rZXlzKGguc2UpKXtsZXQge1BkOm4seks6cD1OdW1iZXIuTUFYX1ZBTFVFfT0KaC5zZVttXTshKGYuai52ZXJzaW9uPj1uKXx8Zi5qLnZlcnNpb24+PXB8fGYuai5vYmplY3RTdG9yZU5hbWVzLmNvbnRhaW5zKG0pfHxsLnB1c2gobSl9aWYobC5sZW5ndGghPT0wKXtsZXQgbT1PYmplY3Qua2V5cyh0aGlzLm9wdGlvbnMuc2UpLG49ay5vYmplY3RTdG9yZU5hbWVzKCk7aWYodGhpcy5EPF8uc2ooInl0aWRiX3Jlb3Blbl9kYl9yZXRyaWVzIiwwKSlyZXR1cm4gdGhpcy5EKyssay5jbG9zZSgpLF8uSWsobmV3IE5rKCJEQl9SRU9QRU5FRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVMiLHtkYk5hbWU6dGhpcy5uYW1lLGV4cGVjdGVkT2JqZWN0U3RvcmVzOm0sZm91bmRPYmplY3RTdG9yZXM6bn0pKSxkKCk7aWYodGhpcy5CPF8uc2ooInl0aWRiX3JlbWFrZV9kYl9yZXRyaWVzIiwxKSlyZXR1cm4gdGhpcy5CKyssYXdhaXQgdGhpcy5kZWxldGUoKSxfLklrKG5ldyBOaygiREJfREVMRVRFRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVMiLHtkYk5hbWU6dGhpcy5uYW1lLGV4cGVjdGVkT2JqZWN0U3RvcmVzOm0sCmZvdW5kT2JqZWN0U3RvcmVzOm59KSksZCgpO3Rocm93IG5ldyBFcyhuLG0pO31yZXR1cm4ga31jYXRjaChrKXtpZihrIGluc3RhbmNlb2YgRE9NRXhjZXB0aW9uP2submFtZT09PSJWZXJzaW9uRXJyb3IiOiJET01FcnJvciJpbiBzZWxmJiZrIGluc3RhbmNlb2YgRE9NRXJyb3I/ay5uYW1lPT09IlZlcnNpb25FcnJvciI6ayBpbnN0YW5jZW9mIE9iamVjdCYmIm1lc3NhZ2UiaW4gayYmay5tZXNzYWdlPT09IkFuIGF0dGVtcHQgd2FzIG1hZGUgdG8gb3BlbiBhIGRhdGFiYXNlIHVzaW5nIGEgbG93ZXIgdmVyc2lvbiB0aGFuIHRoZSBleGlzdGluZyB2ZXJzaW9uLiIpe2U9YXdhaXQgdGhpcy5vKHRoaXMubmFtZSx2b2lkIDAsey4uLmMsdXBncmFkZTp2b2lkIDB9KTtmPWUuai52ZXJzaW9uO2lmKHRoaXMub3B0aW9ucy52ZXJzaW9uIT09dm9pZCAwJiZmPnRoaXMub3B0aW9ucy52ZXJzaW9uKzEpdGhyb3cgZS5jbG9zZSgpLHRoaXMudj0hMSxCbCh0aGlzLGYpO3JldHVybiBlfWIoKTtrIGluc3RhbmNlb2YKRXJyb3ImJiFfLngoInl0aWRiX2FzeW5jX3N0YWNrX2tpbGxzd2l0Y2giKSYmKGsuc3RhY2s9YCR7ay5zdGFja31cbiR7ZS5zdWJzdHJpbmcoZS5pbmRleE9mKCJcbiIpKzEpfWApO3Rocm93IFJrKGssdGhpcy5uYW1lLCIiLHRoaXMub3B0aW9ucy52ZXJzaW9uPz8tMSk7fX07cmV0dXJuIHRoaXMuaj1hPWQoKX19O3ZhciBEbD1uZXcgR3MoIll0SWRiTWV0YSIse3NlOntkYXRhYmFzZXM6e1BkOjF9fSx1cGdyYWRlKGEsYil7YigxKSYmXy5rbChhLCJkYXRhYmFzZXMiLHtrZXlQYXRoOiJhY3R1YWxOYW1lIn0pfX0pO3ZhciBNbCxLbD1uZXcgY2xhc3N7Y29uc3RydWN0b3IoKXt9fShuZXcgY2xhc3N7Y29uc3RydWN0b3IoKXt9fSk7bmV3IF8uY3M7dmFyIFlsPWNsYXNzIGV4dGVuZHMgR3N7Y29uc3RydWN0b3IoYSxiKXtzdXBlcihhLGIpO3RoaXMub3B0aW9ucz1iO0trKGEpfW8oYSxiLGM9e30pe3JldHVybih0aGlzLm9wdGlvbnMuc2hhcmVkP1RsOlNsKShhLGIsey4uLmN9KX1kZWxldGUoYT17fSl7cmV0dXJuKHRoaXMub3B0aW9ucy5zaGFyZWQ/WGw6VWwpKHRoaXMubmFtZSxhKX19O3ZhciBhbT1fLiRsKCJ5dEdjZkNvbmZpZyIse3NlOntjb2xkQ29uZmlnU3RvcmU6e1BkOjF9LGhvdENvbmZpZ1N0b3JlOntQZDoxfX0sc2hhcmVkOiExLHVwZ3JhZGUoYSxiKXtiKDEpJiYoXy5vbChfLmtsKGEsImhvdENvbmZpZ1N0b3JlIix7a2V5UGF0aDoia2V5IixhdXRvSW5jcmVtZW50OiEwfSksImhvdFRpbWVzdGFtcEluZGV4IiwidGltZXN0YW1wIiksXy5vbChfLmtsKGEsImNvbGRDb25maWdTdG9yZSIse2tleVBhdGg6ImtleSIsYXV0b0luY3JlbWVudDohMH0pLCJjb2xkVGltZXN0YW1wSW5kZXgiLCJ0aW1lc3RhbXAiKSl9LHZlcnNpb246MX0pO3ZhciBIcz1jbGFzcyBleHRlbmRzIF8uYWV7Y29uc3RydWN0b3IoKXtzdXBlcigpO3RoaXMubz1bXTt0aGlzLmo9W107dmFyIGE9Xy5zYSgieXQuZ2NmLmNvbmZpZy5ob3RVcGRhdGVDYWxsYmFja3MiKTthPyh0aGlzLm89Wy4uLmFdLHRoaXMuaj1hKToodGhpcy5qPVtdLF8ucmEoInl0LmdjZi5jb25maWcuaG90VXBkYXRlQ2FsbGJhY2tzIix0aGlzLmopKX1sYSgpe2ZvcihsZXQgYiBvZiB0aGlzLm8pe3ZhciBhPXRoaXMuajtsZXQgYz1hLmluZGV4T2YoYik7Yz49MCYmYS5zcGxpY2UoYywxKX10aGlzLm8ubGVuZ3RoPTA7c3VwZXIubGEoKX19O3ZhciBpbT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuaj0wO3RoaXMubz1uZXcgSHN9d2ooKXtyZXR1cm4gXy5zYSgieXQuZ2NmLmNvbmZpZy5ob3RDb25maWdHcm91cCIpPz9fLncoIlJBV19IT1RfQ09ORklHX0dST1VQIil9QihhKXt0aGlzLmhvdEhhc2hEYXRhPWE7Xy5yYSgieXQuZ2NmLmNvbmZpZy5ob3RIYXNoRGF0YSIsdGhpcy5ob3RIYXNoRGF0YXx8bnVsbCl9fTt2YXIgSXM7SXM9dHlwZW9mIFRleHRFbmNvZGVyIT09InVuZGVmaW5lZCI/bmV3IFRleHRFbmNvZGVyOm51bGw7Xy55bT1Jcz9hPT5Jcy5lbmNvZGUoYSk6YT0+e2E9Xy5hYyhhKTt2YXIgYj1uZXcgVWludDhBcnJheShhLmxlbmd0aCk7Zm9yKGxldCBjPTA7YzxiLmxlbmd0aDtjKyspYltjXT1hW2NdO3JldHVybiBifTtfLnBtLnByb3RvdHlwZS5zZXJpYWxpemU9ZnVuY3Rpb24oKXtyZXR1cm57dmVyc2lvbjp0aGlzLnZlcnNpb24sYXJnczp0aGlzLmFyZ3N9fTtfLnFtLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRvcGljfTt2YXIgSnM9Xy5zYSgieXRQdWJzdWIyUHVic3ViMkluc3RhbmNlIil8fG5ldyBfLnRoO18udGgucHJvdG90eXBlLnN1YnNjcmliZT1fLnRoLnByb3RvdHlwZS5zdWJzY3JpYmU7Xy50aC5wcm90b3R5cGUudW5zdWJzY3JpYmVCeUtleT1fLnRoLnByb3RvdHlwZS5jaTtfLnRoLnByb3RvdHlwZS5wdWJsaXNoPV8udGgucHJvdG90eXBlLnB1Ymxpc2g7Xy50aC5wcm90b3R5cGUuY2xlYXI9Xy50aC5wcm90b3R5cGUuY2xlYXI7Xy5yYSgieXRQdWJzdWIyUHVic3ViMkluc3RhbmNlIixKcyk7Xy5Lcz1fLnNhKCJ5dFB1YnN1YjJQdWJzdWIyU3Vic2NyaWJlZEtleXMiKXx8e307Xy5yYSgieXRQdWJzdWIyUHVic3ViMlN1YnNjcmliZWRLZXlzIixfLktzKTtfLkxzPV8uc2EoInl0UHVic3ViMlB1YnN1YjJUb3BpY1RvS2V5cyIpfHx7fTtfLnJhKCJ5dFB1YnN1YjJQdWJzdWIyVG9waWNUb0tleXMiLF8uTHMpO18uTXM9Xy5zYSgieXRQdWJzdWIyUHVic3ViMklzQXN5bmMiKXx8e307Cl8ucmEoInl0UHVic3ViMlB1YnN1YjJJc0FzeW5jIixfLk1zKTtfLnJhKCJ5dFB1YnN1YjJQdWJzdWIyU2tpcFN1YktleSIsbnVsbCk7dmFyIHptO18ud209Xy5zaigibWF4X2JvZHlfc2l6ZV90b19jb21wcmVzcyIsNUU1KTtfLnhtPV8uc2ooIm1pbl9ib2R5X3NpemVfdG9fY29tcHJlc3MiLDUwMCk7em09MDt2YXIgTnM9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy54aT10aGlzLk9jPSExO3RoaXMucG90ZW50aWFsRXNmRXJyb3JDb3VudGVyPXRoaXMuaj0wO3RoaXMuaGFuZGxlRXJyb3I9KCk9Pnt9O3RoaXMuVGY9KCk9Pnt9O3RoaXMubm93PURhdGUubm93O3RoaXMuYWg9ITE7dGhpcy5ncz1hLmdzPz8xMDA7dGhpcy5Ncj1hLk1yPz8xO3RoaXMuS3I9YS5Lcj8/MjU5MkU2O3RoaXMuQ3I9YS5Dcj8/MTJFNDt0aGlzLkxyPWEuTHI/PzVFMzt0aGlzLkphPWEuSmE/P3ZvaWQgMDt0aGlzLk9pPSEhYS5PaTt0aGlzLkRpPWEuRGk/Py4xO3RoaXMuS2o9YS5Laj8/MTA7YS5oYW5kbGVFcnJvciYmKHRoaXMuaGFuZGxlRXJyb3I9YS5oYW5kbGVFcnJvcik7YS5UZiYmKHRoaXMuVGY9YS5UZik7YS5haCYmKHRoaXMuYWg9YS5haCk7YS54aSYmKHRoaXMueGk9YS54aSk7dGhpcy5LYT1hLkthO3RoaXMuRGM9YS5EYzt0aGlzLmNiPWEuY2I7dGhpcy5TYT1hLlNhO3RoaXMuR2Q9YS5HZDt0aGlzLkttPWEuS207CnRoaXMuRm09YS5GbTtCbSh0aGlzKSYmKCF0aGlzLkthfHx0aGlzLkthKCJuZXR3b3JrbGVzc19sb2dnaW5nIikpJiZEbSh0aGlzKX13cml0ZVRoZW5TZW5kKGEsYj17fSl7aWYoQm0odGhpcykmJnRoaXMuT2Mpe2xldCBjPXt1cmw6YSxvcHRpb25zOmIsdGltZXN0YW1wOnRoaXMubm93KCksc3RhdHVzOiJORVciLHNlbmRDb3VudDowfTt0aGlzLmNiLnNldChjLHRoaXMuSmEpLnRoZW4oZD0+e2MuaWQ9ZDt0aGlzLlNhLlNiKCkmJkdtKHRoaXMsYyl9KS5jYXRjaChkPT57R20odGhpcyxjKTtIbSh0aGlzLGQpfSl9ZWxzZSB0aGlzLkdkKGEsYil9c2VuZFRoZW5Xcml0ZShhLGI9e30sYyl7aWYoQm0odGhpcykmJnRoaXMuT2Mpe2xldCBkPXt1cmw6YSxvcHRpb25zOmIsdGltZXN0YW1wOnRoaXMubm93KCksc3RhdHVzOiJORVciLHNlbmRDb3VudDowfTt0aGlzLkthJiZ0aGlzLkthKCJud2xfc2tpcF9yZXRyeSIpJiYoZC5za2lwUmV0cnk9Yyk7aWYodGhpcy5TYS5TYigpfHx0aGlzLkthJiYKdGhpcy5LYSgibndsX2FnZ3Jlc3NpdmVfc2VuZF90aGVuX3dyaXRlIikmJiFkLnNraXBSZXRyeSl7aWYoIWQuc2tpcFJldHJ5KXtsZXQgZT1iLm9uRXJyb3I/Yi5vbkVycm9yOigpPT57fTtiLm9uRXJyb3I9YXN5bmMoZixoKT0+e2F3YWl0IHRoaXMuY2Iuc2V0KGQsdGhpcy5KYSkuY2F0Y2goaz0+e0htKHRoaXMsayl9KTtlKGYsaCl9fXRoaXMuR2QoYSxiLGQuc2tpcFJldHJ5KX1lbHNlIHRoaXMuY2Iuc2V0KGQsdGhpcy5KYSkuY2F0Y2goZT0+e3RoaXMuR2QoYSxiLGQuc2tpcFJldHJ5KTtIbSh0aGlzLGUpfSl9ZWxzZSB0aGlzLkdkKGEsYix0aGlzLkthJiZ0aGlzLkthKCJud2xfc2tpcF9yZXRyeSIpJiZjKX1zZW5kQW5kV3JpdGUoYSxiPXt9KXtpZihCbSh0aGlzKSYmdGhpcy5PYyl7bGV0IGM9e3VybDphLG9wdGlvbnM6Yix0aW1lc3RhbXA6dGhpcy5ub3coKSxzdGF0dXM6Ik5FVyIsc2VuZENvdW50OjB9LGQ9ITEsZT1iLm9uU3VjY2Vzcz9iLm9uU3VjY2VzczooKT0+e307Yy5vcHRpb25zLm9uU3VjY2Vzcz0KKGYsaCk9PntjLmlkIT09dm9pZCAwP3RoaXMuY2IuRmYoYy5pZCx0aGlzLkphKTpkPSEwO3RoaXMuU2EuZWYmJnRoaXMuS2EmJnRoaXMuS2EoInZzc19uZXR3b3JrX2hpbnQiKSYmdGhpcy5TYS5lZighMCk7ZShmLGgpfTt0aGlzLkdkKGMudXJsLGMub3B0aW9ucyx2b2lkIDAsITApO3RoaXMuY2Iuc2V0KGMsdGhpcy5KYSkudGhlbihmPT57Yy5pZD1mO2QmJnRoaXMuY2IuRmYoYy5pZCx0aGlzLkphKX0pLmNhdGNoKGY9PntIbSh0aGlzLGYpfSl9ZWxzZSB0aGlzLkdkKGEsYix2b2lkIDAsITApfW8oKXtpZighQm0odGhpcykpdGhyb3cgRXJyb3IoInJhIik7dGhpcy5qfHwodGhpcy5qPXRoaXMuRGMucGIoYXN5bmMoKT0+e3ZhciBhPWF3YWl0IHRoaXMuY2IuV3AoIk5FVyIsdGhpcy5KYSk7YT8oYXdhaXQgR20odGhpcyxhKSx0aGlzLmomJih0aGlzLmo9MCx0aGlzLm8oKSkpOnRoaXMudigpfSx0aGlzLmdzKSl9digpe3RoaXMuRGMuQWEodGhpcy5qKTt0aGlzLmo9MH19O3ZhciBLbTt2YXIgVW89e2FjY291bnRTdGF0ZUNoYW5nZVNpZ25lZEluOjIzLGFjY291bnRTdGF0ZUNoYW5nZVNpZ25lZE91dDoyNCxkZWxheWVkRXZlbnRNZXRyaWNDYXB0dXJlZDoxMSxsYXRlbmN5QWN0aW9uQmFzZWxpbmVkOjYsbGF0ZW5jeUFjdGlvbkluZm86NyxsYXRlbmN5QWN0aW9uVGlja2VkOjUsb2ZmbGluZVRyYW5zZmVyU3RhdHVzQ2hhbmdlZDoyLG9mZmxpbmVJbWFnZURvd25sb2FkOjMzNSxwbGF5YmFja1N0YXJ0U3RhdGVDaGFuZ2VkOjksc3lzdGVtSGVhbHRoQ2FwdHVyZWQ6MyxtYW5nb09uYm9hcmRpbmdDb21wbGV0ZWQ6MTAsbWFuZ29QdXNoTm90aWZpY2F0aW9uUmVjZWl2ZWQ6MjMwLG1hbmdvVW5mb3JrRGJNaWdyYXRpb25FcnJvcjoxMjEsbWFuZ29VbmZvcmtEYk1pZ3JhdGlvblN1bW1hcnk6MTIyLG1hbmdvVW5mb3JrRGJNaWdyYXRpb25QcmV1bmZvcmtEYlZlcnNpb25OdW1iZXI6MTMzLG1hbmdvVW5mb3JrRGJNaWdyYXRpb25QaG9uZU1ldGFkYXRhOjEzNCxtYW5nb1VuZm9ya0RiTWlncmF0aW9uUGhvbmVTdG9yYWdlOjEzNSwKbWFuZ29VbmZvcmtEYk1pZ3JhdGlvblN0ZXA6MTQyLG1hbmdvQXN5bmNBcGlNaWdyYXRpb25FdmVudDoyMjMsbWFuZ29Eb3dubG9hZFZpZGVvUmVzdWx0OjIyNCxtYW5nb0hvbWVwYWdlVmlkZW9Db3VudDoyNzksbWFuZ29Ib21lVjNTdGF0ZToyOTUsbWFuZ29JbWFnZUNsaWVudENhY2hlSGl0RXZlbnQ6MjczLHNkQ2FyZFN0YXR1c0NoYW5nZWQ6OTgsZnJhbWVzRHJvcHBlZDoxMix0aHVtYm5haWxIb3ZlcmVkOjEzLGRldmljZVJldGVudGlvbkluZm9DYXB0dXJlZDoxNCx0aHVtYm5haWxMb2FkZWQ6MTUsYmFja1RvQXBwRXZlbnQ6MzE4LHN0cmVhbWluZ1N0YXRzQ2FwdHVyZWQ6MTcsb2ZmbGluZVZpZGVvU2hhcmVkOjE5LGFwcENyYXNoZWQ6MjAseW91VGhlcmU6MjEsb2ZmbGluZVN0YXRlU25hcHNob3Q6MjIsbWR4U2Vzc2lvblN0YXJ0ZWQ6MjUsbWR4U2Vzc2lvbkNvbm5lY3RlZDoyNixtZHhTZXNzaW9uRGlzY29ubmVjdGVkOjI3LGJlZHJvY2tSZXNvdXJjZUNvbnN1bXB0aW9uU25hcHNob3Q6MjgsCm5leHRHZW5XYXRjaFdhdGNoU3dpcGVkOjI5LGtpZHNBY2NvdW50c1NuYXBzaG90OjMwLHplcm9TdGVwQ2hhbm5lbENyZWF0ZWQ6MzEsdHZodG1sNVNlYXJjaENvbXBsZXRlZDozMixvZmZsaW5lU2hhcmVQYWlyaW5nOjM0LG9mZmxpbmVTaGFyZVVubG9jazozNSxtZHhSb3V0ZURpc3RyaWJ1dGlvblNuYXBzaG90OjM2LGJlZHJvY2tSZXBldGl0aXZlQWN0aW9uVGltZWQ6MzcsdW5wbHVnZ2VkRGVncmFkYXRpb25JbmZvOjIyOSx1cGxvYWRNcDRIZWFkZXJNb3ZlZDozOCx1cGxvYWRWaWRlb1RyYW5zY29kZWQ6MzksdXBsb2FkUHJvY2Vzc29yU3RhcnRlZDo0Nix1cGxvYWRQcm9jZXNzb3JFbmRlZDo0Nyx1cGxvYWRQcm9jZXNzb3JSZWFkeTo5NCx1cGxvYWRQcm9jZXNzb3JSZXF1aXJlbWVudFBlbmRpbmc6OTUsdXBsb2FkUHJvY2Vzc29ySW50ZXJydXB0ZWQ6OTYsdXBsb2FkRnJvbnRlbmRFdmVudDoyNDEsYXNzZXRQYWNrRG93bmxvYWRTdGFydGVkOjQxLGFzc2V0UGFja0Rvd25sb2FkZWQ6NDIsCmFzc2V0UGFja0FwcGxpZWQ6NDMsYXNzZXRQYWNrRGVsZXRlZDo0NCxhcHBJbnN0YWxsQXR0cmlidXRpb25FdmVudDo0NTkscGxheWJhY2tTZXNzaW9uU3RvcHBlZDo0NSxhZEJsb2NrZXJNZXNzYWdpbmdTaG93bjo0OCxkaXN0cmlidXRpb25DaGFubmVsQ2FwdHVyZWQ6NDksZGF0YVBsYW5DcGlkUmVxdWVzdGVkOjUxLGRldGFpbGVkTmV0d29ya1R5cGVDYXB0dXJlZDo1MixzZW5kU3RhdGVVcGRhdGVkOjUzLHJlY2VpdmVTdGF0ZVVwZGF0ZWQ6NTQsc2VuZERlYnVnU3RhdGVVcGRhdGVkOjU1LHJlY2VpdmVEZWJ1Z1N0YXRlVXBkYXRlZDo1NixraWRzRXJyb3JlZDo1NyxtZHhNc25TZXNzaW9uU3RhdHNGaW5pc2hlZDo1OCxhcHBTZXR0aW5nc0NhcHR1cmVkOjU5LG1keFdlYlNvY2tldFNlcnZlckh0dHBFcnJvcjo2MCxtZHhXZWJTb2NrZXRTZXJ2ZXI6NjEsc3RhcnR1cENyYXNoZXNEZXRlY3RlZDo2Mixjb2xkU3RhcnRJbmZvOjQzNSxvZmZsaW5lUGxheWJhY2tTdGFydGVkOjYzLGxpdmVDaGF0TWVzc2FnZVNlbnQ6MjI1LApsaXZlQ2hhdFVzZXJQcmVzZW50OjQzNCxsaXZlQ2hhdEJlaW5nTW9kZXJhdGVkOjQ1NyxsaXZlQ2hhdEdpZnRCdXR0b25JbXByZXNzZWQ6NTU4LGxpdmVDcmVhdGlvbkNhbWVyYVVwZGF0ZWQ6NjQsbGl2ZUNyZWF0aW9uRW5jb2RpbmdDYXB0dXJlZDo2NSxsaXZlQ3JlYXRpb25FcnJvcjo2NixsaXZlQ3JlYXRpb25IZWFsdGhVcGRhdGVkOjY3LGxpdmVDcmVhdGlvblZpZGVvRWZmZWN0c0NhcHR1cmVkOjY4LGxpdmVDcmVhdGlvblN0YWdlT2NjdXJlZDo3NSxvZmZsaW5lU3lzdGVtRmFpbHVyZTo1NDYsbGl2ZUNyZWF0aW9uQnJvYWRjYXN0U2NoZWR1bGVkOjEyMyxsaXZlQ3JlYXRpb25BcmNoaXZlUmVwbGFjZW1lbnQ6MTQ5LGxpdmVDcmVhdGlvbkNvc3RyZWFtaW5nQ29ubmVjdGlvbjo0MjEsbGl2ZUNyZWF0aW9uUGxheWFibGVzTWV0cmljczo1MzMsbGl2ZUNyZWF0aW9uU3RyZWFtV2VicnRjU3RhdHM6Mjg4LGxpdmVDcmVhdGlvbldlYnJ0Y0Vycm9yOjUyNixtZHhTZXNzaW9uUmVjb3ZlcnlTdGFydGVkOjY5LAptZHhTZXNzaW9uUmVjb3ZlcnlDb21wbGV0ZWQ6NzAsbWR4U2Vzc2lvblJlY292ZXJ5U3RvcHBlZDo3MSx2aXN1YWxFbGVtZW50U2hvd246NzIsdmlzdWFsRWxlbWVudEhpZGRlbjo3Myx2aXN1YWxFbGVtZW50R2VzdHVyZWQ6NzgsdmlzdWFsRWxlbWVudFN0YXRlQ2hhbmdlZDoyMDgsc2NyZWVuQ3JlYXRlZDoxNTYscGxheWJhY2tBc3NvY2lhdGVkOjIwMix2aXN1YWxFbGVtZW50QXR0YWNoZWQ6MjE1LHBsYXliYWNrQ29udGV4dEV2ZW50OjIxNCxjbG91ZENhc3RpbmdQbGF5YmFja1N0YXJ0ZWQ6NzQsd2ViUGxheWVyQXBpQ2FsbGVkOjc2LHR2aHRtbDVBY2NvdW50RGlhbG9nT3BlbmVkOjc5LGZvcmVncm91bmRIZWFydGJlYXQ6ODAsZm9yZWdyb3VuZEhlYXJ0YmVhdFNjcmVlbkFzc29jaWF0ZWQ6MTExLGtpZHNPZmZsaW5lU25hcHNob3Q6ODEsbWR4RW5jcnlwdGlvblNlc3Npb25TdGF0c0ZpbmlzaGVkOjgyLHBsYXllclJlcXVlc3RDb21wbGV0ZWQ6ODMsbGl0ZVNjaGVkdWxlclN0YXRpc3RpY3M6ODQsCm1keFNpZ25Jbjo4NSxzcGFjZWNhc3RNZXRhZGF0YUxvb2t1cFJlcXVlc3RlZDo4NixzcGFjZWNhc3RCYXRjaExvb2t1cFJlcXVlc3RlZDo4NyxzcGFjZWNhc3RTdW1tYXJ5UmVxdWVzdGVkOjg4LHNwYWNlY2FzdFBsYXliYWNrOjg5LHNwYWNlY2FzdERpc2NvdmVyeTo5MCx0dmh0bWw1TGF1bmNoVXJsQ29tcG9uZW50Q2hhbmdlZDo5MSxtZHhCYWNrZ3JvdW5kUGxheWJhY2tSZXF1ZXN0Q29tcGxldGVkOjkyLG1keEJyb2tlbkFkZGl0aW9uYWxEYXRhRGV2aWNlRGV0ZWN0ZWQ6OTMsdHZodG1sNUxvY2FsU3RvcmFnZTo5Nyx0dmh0bWw1RGV2aWNlU3RvcmFnZVN0YXR1czoxNDcsYXV0b0NhcHRpb25zQXZhaWxhYmxlOjk5LHBsYXliYWNrU2NydWJiaW5nRXZlbnQ6MzM5LGZsZXh5U3RhdGU6MTAwLGludGVyZmFjZU9yaWVudGF0aW9uQ2FwdHVyZWQ6MTAxLG1haW5BcHBCcm93c2VGcmFnbWVudENhY2hlOjEwMixvZmZsaW5lQ2FjaGVWZXJpZmljYXRpb25GYWlsdXJlOjEwMyxvZmZsaW5lUGxheWJhY2tFeGNlcHRpb25EaWdlc3Q6MjE3LAp2ckNvcHJlc2VuY2VTdGF0czoxMDQsdnJDb3ByZXNlbmNlU3luY1N0YXRzOjEzMCx2ckNvcHJlc2VuY2VDb21tc1N0YXRzOjEzNyx2ckNvcHJlc2VuY2VQYXJ0eVN0YXRzOjE1Myx2ckNvcHJlc2VuY2VFbW9qaVN0YXRzOjIxMyx2ckNvcHJlc2VuY2VFdmVudDoxNDEsdnJDb3ByZXNlbmNlRmxvd1RyYW5zaXRFdmVudDoxNjAsdnJDb3dhdGNoUGFydHlFdmVudDo0OTIsdnJDb3dhdGNoVXNlclN0YXJ0T3JKb2luRXZlbnQ6NTA0LHZyUGxheWJhY2tFdmVudDozNDUsa2lkc0FnZUdhdGVUcmFja2luZzoxMDUsb2ZmbGluZURlbGF5QWxsb3dlZFRyYWNraW5nOjEwNixtYWluQXBwQXV0b09mZmxpbmVTdGF0ZToxMDcsdmlkZW9Bc1RodW1ibmFpbERvd25sb2FkOjEwOCx2aWRlb0FzVGh1bWJuYWlsUGxheWJhY2s6MTA5LGxpdGVTaG93TW9yZToxMTAscmVuZGVyaW5nRXJyb3I6MTE4LGtpZHNQcm9maWxlUGluR2F0ZVRyYWNraW5nOjExOSxhYnJUcmFqZWN0b3J5OjEyNCxzY3JvbGxFdmVudDoxMjUsCnN0cmVhbXpJbmNyZW1lbnRlZDoxMjYsa2lkc1Byb2ZpbGVTd2l0Y2hlclRyYWNraW5nOjEyNyxraWRzUHJvZmlsZUNyZWF0aW9uVHJhY2tpbmc6MTI5LGJ1eUZsb3dTdGFydGVkOjEzNixpbnRlZ3JhdGlvbkF0dHJpYnV0aW9uRXZlbnQ6NTU2LG1ic0Nvbm5lY3Rpb25Jbml0aWF0ZWQ6MTM4LG1ic1BsYXliYWNrSW5pdGlhdGVkOjEzOSxtYnNMb2FkQ2hpbGRyZW46MTQwLGxpdGVQcm9maWxlRmV0Y2hlcjoxNDQsbWR4UmVtb3RlVHJhbnNhY3Rpb246MTQ2LHJlZWxQbGF5YmFja0Vycm9yOjE0OCxyZWFjaGFiaWxpdHlEZXRlY3Rpb25FdmVudDoxNTAsbW9iaWxlUGxheWJhY2tFdmVudDoxNTEsY291cnRzaWRlUGxheWVyU3RhdGVDaGFuZ2VkOjE1MixtdXNpY1BlcnNpc3RlbnRDYWNoZUNoZWNrZWQ6MTU0LG11c2ljUGVyc2lzdGVudENhY2hlQ2xlYXJlZDoxNTUscGxheWJhY2tJbnRlcnJ1cHRlZDoxNTcscGxheWJhY2tJbnRlcnJ1cHRpb25SZXNvbHZlZDoxNTgsZml4Rm9wRmxvdzoxNTksCmFuckRldGVjdGlvbjoxNjEsYmFja3N0YWdlUG9zdENyZWF0aW9uRmxvd0VuZGVkOjE2MixjbGllbnRFcnJvcjoxNjMsZ2FtaW5nQWNjb3VudExpbmtTdGF0dXNDaGFuZ2VkOjE2NCxsaXRlSG91c2V3YXJtaW5nOjE2NSxidXlGbG93RXZlbnQ6MTY3LGtpZHNQYXJlbnRhbEdhdGVUcmFja2luZzoxNjgsa2lkc1NpZ25lZE91dFNldHRpbmdzU3RhdHVzOjQzNyxraWRzU2lnbmVkT3V0UGF1c2VIaXN0b3J5Rml4U3RhdHVzOjQzOCx0dmh0bWw1V2F0Y2hkb2dWaW9sYXRpb246NDQ0LHlwY1VwZ3JhZGVGbG93OjE2OSx5b25nbGVTdHVkeToxNzAseXBjVXBkYXRlRmxvd1N0YXJ0ZWQ6MTcxLHlwY1VwZGF0ZUZsb3dDYW5jZWxsZWQ6MTcyLHlwY1VwZGF0ZUZsb3dTdWNjZWVkZWQ6MTczLHlwY1VwZGF0ZUZsb3dGYWlsZWQ6MTc0LGxpdGVHcm93dGhraXRQcm9tbzoxNzUscGF5bWVudEZsb3dTdGFydGVkOjM0MSx0cmFuc2FjdGlvbkZsb3dTaG93UGF5bWVudERpYWxvZzo0MDUsdHJhbnNhY3Rpb25GbG93U3RhcnRlZDoxNzYsCnRyYW5zYWN0aW9uRmxvd1NlY29uZGFyeURldmljZVN0YXJ0ZWQ6MjIyLHRyYW5zYWN0aW9uRmxvd1NlY29uZGFyeURldmljZVNpZ25lZE91dFN0YXJ0ZWQ6MzgzLHRyYW5zYWN0aW9uRmxvd0NhbmNlbGxlZDoxNzcsdHJhbnNhY3Rpb25GbG93UGF5bWVudENhbGxCYWNrUmVjZWl2ZWQ6Mzg3LHRyYW5zYWN0aW9uRmxvd1BheW1lbnRTdWJtaXR0ZWQ6NDYwLHRyYW5zYWN0aW9uRmxvd1BheW1lbnRTdWNjZWVkZWQ6MzI5LHRyYW5zYWN0aW9uRmxvd1N1Y2NlZWRlZDoxNzgsdHJhbnNhY3Rpb25GbG93RmFpbGVkOjE3OSx0cmFuc2FjdGlvbkZsb3dQbGF5QmlsbGluZ0Nvbm5lY3Rpb25TdGFydEV2ZW50OjQyOCx0cmFuc2FjdGlvbkZsb3dTZWNvbmRhcnlEZXZpY2VTdWNjZXNzOjQ1OCx0cmFuc2FjdGlvbkZsb3dFcnJvckV2ZW50OjQxMSxsaXRlVmlkZW9RdWFsaXR5Q2hhbmdlZDoxODAsd2F0Y2hCcmVha0VuYWJsZW1lbnRTZXR0aW5nRXZlbnQ6MTgxLHdhdGNoQnJlYWtGcmVxdWVuY3lTZXR0aW5nRXZlbnQ6MTgyLAp2aWRlb0VmZmVjdHNDYW1lcmFQZXJmb3JtYW5jZU1ldHJpY3M6MTgzLGFkTm90aWZ5OjE4NCxzdGFydHVwVGVsZW1ldHJ5OjE4NSxwbGF5YmFja09mZmxpbmVGYWxsYmFja1VzZWQ6MTg2LG91dE9mTWVtb3J5OjE4Nyx5cGNQYXVzZUZsb3dTdGFydGVkOjE4OCx5cGNQYXVzZUZsb3dDYW5jZWxsZWQ6MTg5LHlwY1BhdXNlRmxvd1N1Y2NlZWRlZDoxOTAseXBjUGF1c2VGbG93RmFpbGVkOjE5MSx1cGxvYWRGaWxlU2VsZWN0ZWQ6MTkyLHlwY1Jlc3VtZUZsb3dTdGFydGVkOjE5Myx5cGNSZXN1bWVGbG93Q2FuY2VsbGVkOjE5NCx5cGNSZXN1bWVGbG93U3VjY2VlZGVkOjE5NSx5cGNSZXN1bWVGbG93RmFpbGVkOjE5NixhZHNDbGllbnRTdGF0ZUNoYW5nZToxOTcseXBjQ2FuY2VsRmxvd1N0YXJ0ZWQ6MTk4LHlwY0NhbmNlbEZsb3dDYW5jZWxsZWQ6MTk5LHlwY0NhbmNlbEZsb3dTdWNjZWVkZWQ6MjAwLHlwY0NhbmNlbEZsb3dGYWlsZWQ6MjAxLHlwY0NhbmNlbEZsb3dHb1RvUGF5bWVudFByb2Nlc3Nvcjo0MDIsCnlwY0RlYWN0aXZhdGVGbG93U3RhcnRlZDozMjAseXBjUmVkZWVtRmxvd1N0YXJ0ZWQ6MjAzLHlwY1JlZGVlbUZsb3dDYW5jZWxsZWQ6MjA0LHlwY1JlZGVlbUZsb3dTdWNjZWVkZWQ6MjA1LHlwY1JlZGVlbUZsb3dGYWlsZWQ6MjA2LHlwY0ZhbWlseUNyZWF0ZUZsb3dTdGFydGVkOjI1OCx5cGNGYW1pbHlDcmVhdGVGbG93Q2FuY2VsbGVkOjI1OSx5cGNGYW1pbHlDcmVhdGVGbG93U3VjY2VlZGVkOjI2MCx5cGNGYW1pbHlDcmVhdGVGbG93RmFpbGVkOjI2MSx5cGNGYW1pbHlNYW5hZ2VGbG93U3RhcnRlZDoyNjIseXBjRmFtaWx5TWFuYWdlRmxvd0NhbmNlbGxlZDoyNjMseXBjRmFtaWx5TWFuYWdlRmxvd1N1Y2NlZWRlZDoyNjQseXBjRmFtaWx5TWFuYWdlRmxvd0ZhaWxlZDoyNjUscmVzdG9yZUNvbnRleHRFdmVudDoyMDcsZW1iZWRzQWRFdmVudDozMjcsYXV0b3BsYXlUcmlnZ2VyZWQ6MjA5LGNsaWVudERhdGFFcnJvckV2ZW50OjIxMCxleHBlcmltZW50YWxWc3NWYWxpZGF0aW9uOjIxMSwKdHZodG1sNVRyaWdnZXJlZEV2ZW50OjIxMix0dmh0bWw1RnJhbWV3b3Jrc0ZpZWxkVHJpYWxSZXN1bHQ6MjE2LHR2aHRtbDVGcmFtZXdvcmtzRmllbGRUcmlhbFN0YXJ0OjIyMCxtdXNpY09mZmxpbmVQcmVmZXJlbmNlczoyMTgsd2F0Y2hUaW1lU2VnbWVudDoyMTksYXBwV2lkdGhMYXlvdXRFcnJvcjoyMjEsYWNjb3VudFJlZ2lzdHJ5Q2hhbmdlOjIyNix1c2VyTWVudGlvbkF1dG9Db21wbGV0ZUJveEV2ZW50OjIyNyxkb3dubG9hZFJlY29tbWVuZGF0aW9uRW5hYmxlbWVudFNldHRpbmdFdmVudDoyMjgsbXVzaWNQbGF5YmFja0NvbnRlbnRNb2RlQ2hhbmdlRXZlbnQ6MjMxLG9mZmxpbmVEYk9wZW5Db21wbGV0ZWQ6MjMyLGtpZHNGbG93RXZlbnQ6MjMzLGtpZHNGbG93Q29ycHVzU2VsZWN0ZWRFdmVudDoyMzQsdmlkZW9FZmZlY3RzRXZlbnQ6MjM1LHVucGx1Z2dlZE9wc0VvZ0FuYWx5dGljc0V2ZW50OjIzNixwbGF5YmFja0F1ZGlvUm91dGVFdmVudDoyMzcsaW50ZXJhY3Rpb25Mb2dnaW5nRGVidWdNb2RlRXJyb3I6MjM4LApvZmZsaW5lWXRiUmVmcmVzaGVkOjIzOSxraWRzRmxvd0Vycm9yOjI0MCxtdXNpY0F1dG9wbGF5T25MYXVuY2hBdHRlbXB0ZWQ6MjQyLGRldmljZUNvbnRleHRBY3Rpdml0eUV2ZW50OjI0MyxkZXZpY2VDb250ZXh0RXZlbnQ6MjQ0LHRlbXBsYXRlUmVzb2x1dGlvbkV4Y2VwdGlvbjoyNDUsbXVzaWNTaWRlbG9hZGVkUGxheWxpc3RTZXJ2aWNlQ2FsbGVkOjI0NixlbWJlZHNTdG9yYWdlQWNjZXNzTm90Q2hlY2tlZDoyNDcsZW1iZWRzSGFzU3RvcmFnZUFjY2Vzc1Jlc3VsdDoyNDgsZW1iZWRzSXRwUGxheWVkT25SZWxvYWQ6MjQ5LGVtYmVkc1JlcXVlc3RTdG9yYWdlQWNjZXNzUmVzdWx0OjI1MCxlbWJlZHNTaG91bGRSZXF1ZXN0U3RvcmFnZUFjY2Vzc1Jlc3VsdDoyNTEsZW1iZWRzUmVxdWVzdFN0b3JhZ2VBY2Nlc3NTdGF0ZToyNTYsZW1iZWRzUmVxdWVzdFN0b3JhZ2VBY2Nlc3NGYWlsZWRTdGF0ZToyNTcsZW1iZWRzSXRwV2F0Y2hMYXRlclJlc3VsdDoyNjYsc2VhcmNoU3VnZ2VzdERlY29kaW5nUGF5bG9hZEZhaWx1cmU6MjUyLApzaXJpU2hvcnRjdXRBY3RpdmF0ZWQ6MjUzLHR2aHRtbDVLZXlib2FyZFBlcmZvcm1hbmNlOjI1NCxsYXRlbmN5QWN0aW9uU3BhbjoyNTUsZWxlbWVudHNMb2c6MjY3LHl0YkZpbGVPcGVuZWQ6MjY4LHRmbGl0ZU1vZGVsRXJyb3I6MjY5LGFwaVRlc3Q6MjcwLHlvbmdsZVVzYlNldHVwOjI3MSx0b3VTdHJpa2VJbnRlcnN0aXRpYWxFdmVudDoyNzIsbGl0ZVN0cmVhbVRvU2F2ZToyNzQsYXBwQnVuZGxlQ2xpZW50RXZlbnQ6Mjc1LHl0YkZpbGVDcmVhdGlvbkZhaWxlZDoyNzYsYWROb3RpZnlGYWlsdXJlOjI3OCx5dGJUcmFuc2ZlckZhaWxlZDoyODAsYmxvY2tpbmdSZXF1ZXN0RmFpbGVkOjI4MSxsaXRlQWNjb3VudFNlbGVjdG9yOjI4MixsaXRlQWNjb3VudFVpQ2FsbGJhY2tzOjI4MyxkdW1teVBheWxvYWQ6Mjg0LGJyb3dzZVJlc3BvbnNlVmFsaWRhdGlvbkV2ZW50OjI4NSxlbnRpdGllc0Vycm9yOjI4NixtdXNpY0lvc0JhY2tncm91bmRGZXRjaDoyODcsbWR4Tm90aWZpY2F0aW9uRXZlbnQ6Mjg5LApsYXllcnNWYWxpZGF0aW9uRXJyb3I6MjkwLG11c2ljUHdhSW5zdGFsbGVkOjI5MSxsaXRlQWNjb3VudENsZWFudXA6MjkyLGh0bWw1UGxheWVySGVhbHRoRXZlbnQ6MjkzLHdhdGNoUmVzdG9yZUF0dGVtcHQ6Mjk0LGxpdGVBY2NvdW50U2lnbkluOjI5Nixub3RhaXJlRXZlbnQ6Mjk4LGtpZHNWb2ljZVNlYXJjaEV2ZW50OjI5OSxhZE5vdGlmeUZpbGxlZDozMDAsZGVsYXllZEV2ZW50RHJvcHBlZDozMDEsYW5hbHl0aWNzU2VhcmNoRXZlbnQ6MzAyLHN5c3RlbURhcmtUaGVtZU9wdE91dEV2ZW50OjMwMyxmbG93RXZlbnQ6MzA0LG5ldHdvcmtDb25uZWN0aXZpdHlCYXNlbGluZUV2ZW50OjMwNSx5dGJGaWxlSW1wb3J0ZWQ6MzA2LGRvd25sb2FkU3RyZWFtVXJsRXhwaXJlZDozMDcsZGlyZWN0U2lnbkluRXZlbnQ6MzA4LGx5cmljSW1wcmVzc2lvbkV2ZW50OjMwOSxhY2Nlc3NpYmlsaXR5U3RhdGVFdmVudDozMTAsdG9rZW5SZWZyZXNoRXZlbnQ6MzExLGdlbmVyaWNBdHRlc3RhdGlvbkV4ZWN1dGlvbjozMTIsCnR2aHRtbDVWaWRlb1NlZWs6MzEzLHVucGx1Z2dlZEF1dG9QYXVzZTozMTQsc2NydWJiaW5nRXZlbnQ6MzE1LGJlZHRpbWVSZW1pbmRlckV2ZW50OjMxNyx0dmh0bWw1VW5leHBlY3RlZFJlc3RhcnQ6MzE5LHR2aHRtbDVEZXZpY2VTdG9yYWdlU3RhdHM6NTM1LHR2aHRtbDVTdGFiaWxpdHlUcmFjZUV2ZW50OjQ3OCx0dmh0bWw1T3BlcmF0aW9uSGVhbHRoOjQ2Nyx0dmh0bWw1V2F0Y2hLZXlFdmVudDozMjEsdm9pY2VMYW5ndWFnZUNoYW5nZWQ6MzIyLHR2aHRtbDVMaXZlQ2hhdFN0YXR1czozMjMscGFyZW50VG9vbHNDb3JwdXNTZWxlY3RlZEV2ZW50OjMyNCxvZmZlckFkc0Vucm9sbG1lbnRJbml0aWF0ZWQ6MzI1LG5ldHdvcmtRdWFsaXR5SW50ZXJ2YWxFdmVudDozMjYsZGV2aWNlU3RhcnR1cE1ldHJpY3M6MzI4LGhlYXJ0YmVhdEFjdGlvblBsYXllclRyYW5zaXRpb25lZDozMzAsdHZodG1sNUxpZmVjeWNsZTozMzEsaGVhcnRiZWF0QWN0aW9uUGxheWVySGFsdGVkOjMzMixhZGFwdGl2ZUlubGluZU11dGVkU2V0dGluZ0V2ZW50OjMzMywKbWFpbkFwcExpYnJhcnlMb2FkaW5nU3RhdGU6MzM0LHRoaXJkUGFydHlMb2dNb25pdG9yaW5nRXZlbnQ6MzM2LGFwcFNoZWxsQXNzZXRMb2FkUmVwb3J0OjMzNyx0dmh0bWw1QW5kcm9pZEF0dGVzdGF0aW9uOjMzOCx0dmh0bWw1U3RhcnR1cFNvdW5kRXZlbnQ6MzQwLGlvc0JhY2tncm91bmRSZWZyZXNoVGFzazozNDIsaW9zQmFja2dyb3VuZFByb2Nlc3NpbmdUYXNrOjM0MyxzbGlFdmVudEJhdGNoOjM0NCxwb3N0SW1wcmVzc2lvbkV2ZW50OjM0NixtdXNpY1NpZGVsb2FkZWRQbGF5bGlzdEV4cG9ydDozNDcsaWRiVW5leHBlY3RlZGx5Q2xvc2VkOjM0OCx2b2ljZVNlYXJjaEV2ZW50OjM0OSxtZHhTZXNzaW9uQ2FzdEV2ZW50OjM1MCxpZGJRdW90YUV4Y2VlZGVkOjM1MSxpZGJUcmFuc2FjdGlvbkVuZGVkOjM1MixpZGJUcmFuc2FjdGlvbkFib3J0ZWQ6MzUzLHR2aHRtbDVLZXlib2FyZExvZ2dpbmc6MzU0LGlkYklzU3VwcG9ydGVkQ29tcGxldGVkOjM1NSxjcmVhdG9yU3R1ZGlvTW9iaWxlRXZlbnQ6MzU2LAppZGJEYXRhQ29ycnVwdGVkOjM1NyxwYXJlbnRUb29sc0FwcENob3NlbkV2ZW50OjM1OCx3ZWJWaWV3Qm90dG9tU2hlZXRSZXNpemVkOjM1OSxhY3RpdmVTdGF0ZUNvbnRyb2xsZXJTY3JvbGxQZXJmb3JtYW5jZVN1bW1hcnk6MzYwLG5hdmlnYXRvclZhbGlkYXRpb246MzYxLG1keFNlc3Npb25IZWFydGJlYXQ6MzYyLGNsaWVudEhpbnRzUG9seWZpbGxEaWFnbm9zdGljczozNjMsY2xpZW50SGludHNQb2x5ZmlsbEV2ZW50OjM2NCxwcm9vZk9mT3JpZ2luVG9rZW5FcnJvcjozNjUsa2lkc0FkZGVkQWNjb3VudFN1bW1hcnk6MzY2LG11c2ljV2VhcmFibGVEZXZpY2U6MzY3LHlwY1JlZnVuZEZsb3dFdmVudDozNjgsdHZodG1sNVBsYXliYWNrTWVhc3VyZW1lbnRFdmVudDozNjksdHZodG1sNVdhdGVybWFya01lYXN1cmVtZW50RXZlbnQ6MzcwLGNsaWVudEV4cEdjZlByb3BhZ2F0aW9uRXZlbnQ6MzcxLG1haW5BcHBSZWZlcnJlckludGVudDozNzIsbGVhZGVyTG9ja0VuZGVkOjM3MyxsZWFkZXJMb2NrQWNxdWlyZWQ6Mzc0LApnb29nbGVIYXRzRXZlbnQ6Mzc1LHBlcnNpc3RlbnRMZW5zTGF1bmNoRXZlbnQ6Mzc2LHBhcmVudFRvb2xzQ2hpbGRXZWxjb21lQ2hvc2VuRXZlbnQ6Mzc4LGJyb3dzZVRodW1ibmFpbFByZWxvYWRFdmVudDozNzksZmluYWxQYXlsb2FkOjM4MCxtZHhEaWFsQWRkaXRpb25hbERhdGFVcGRhdGVFdmVudDozODEsd2ViT3JjaGVzdHJhdGlvblRhc2tMaWZlY3ljbGVSZWNvcmQ6MzgyLHN0YXJ0dXBTaWduYWxFdmVudDozODQsYWNjb3VudEVycm9yOjM4NSxnbXNEZXZpY2VDaGVja0V2ZW50OjM4NixhY2NvdW50U2VsZWN0b3JFdmVudDozODgsYWNjb3VudFVpQ2FsbGJhY2tzOjM4OSxtZHhEaWFsQWRkaXRpb25hbERhdGFQcm9iZUV2ZW50OjM5MCxkb3dubG9hZHNTZWFyY2hJY2luZ0FwaVN0YXRzOjM5MSxkb3dubG9hZHNTZWFyY2hJbmRleFVwZGF0ZWRFdmVudDozOTcsZG93bmxvYWRzU2VhcmNoSW5kZXhTbmFwc2hvdDozOTgsZGF0YVB1c2hDbGllbnRFdmVudDozOTIsa2lkc0NhdGVnb3J5U2VsZWN0ZWRFdmVudDozOTMsCm1keERldmljZU1hbmFnZW1lbnRTbmFwc2hvdEV2ZW50OjM5NCxwcmVmZXRjaFJlcXVlc3RlZDozOTUscHJlZmV0Y2hhYmxlQ29tbWFuZEV4ZWN1dGVkOjM5NixnZWxEZWJ1Z2dpbmdFdmVudDozOTksd2ViTGlua1R0c1BsYXlFbmQ6NDAwLGNsaXBWaWV3SW52YWxpZDo0MDEscGVyc2lzdGVudFN0b3JhZ2VTdGF0ZUNoZWNrZWQ6NDAzLGNhY2hlV2lwZW91dEV2ZW50OjQwNCxwbGF5ZXJFdmVudDo0MTAsc2Z2RWZmZWN0UGlwZWxpbmVTdGFydGVkRXZlbnQ6NDEyLHNmdkVmZmVjdFBpcGVsaW5lUGF1c2VkRXZlbnQ6NDI5LHNmdkVmZmVjdFBpcGVsaW5lRW5kZWRFdmVudDo0MTMsc2Z2RWZmZWN0Q2hvc2VuRXZlbnQ6NDE0LHNmdkVmZmVjdExvYWRlZEV2ZW50OjQxNSxzZnZFZmZlY3RVc2VySW50ZXJhY3Rpb25FdmVudDo0NjUsc2Z2RWZmZWN0Rmlyc3RGcmFtZVByb2Nlc3NlZExhdGVuY3lFdmVudDo0MTYsc2Z2RWZmZWN0QWdncmVnYXRlZEZyYW1lc1Byb2Nlc3NlZExhdGVuY3lFdmVudDo0MTcsCnNmdkVmZmVjdEFnZ3JlZ2F0ZWRGcmFtZXNEcm9wcGVkRXZlbnQ6NDE4LHNmdkVmZmVjdFBpcGVsaW5lRXJyb3JFdmVudDo0MzAsc2Z2RWZmZWN0R3JhcGhGcm96ZW5FdmVudDo0MTksc2Z2RWZmZWN0R2xUaHJlYWRCbG9ja2VkRXZlbnQ6NDIwLG1kZVFvc0V2ZW50OjUxMCxtZGVWaWRlb0NoYW5nZWRFdmVudDo0NDIsbWRlUGxheWVyUGVyZm9ybWFuY2VNZXRyaWNzOjQ3MixtZGVFeHBvcnRlckV2ZW50OjQ5NyxnZW5lcmljQ2xpZW50RXhwZXJpbWVudEV2ZW50OjQyMyxob21lUHJlbG9hZFRhc2tTY2hlZHVsZWQ6NDI0LGhvbWVQcmVsb2FkVGFza0V4ZWN1dGVkOjQyNSxob21lUHJlbG9hZENhY2hlSGl0OjQyNixwb2x5bWVyUHJvcGVydHlDaGFuZ2VkSW5PYnNlcnZlcjo0MjcsYXBwbGljYXRpb25TdGFydGVkOjQzMSxuZXR3b3JrQ3JvbmV0UnR0QmF0Y2g6NDMyLG5ldHdvcmtDcm9uZXRSdHRTdW1tYXJ5OjQzMyxyZXBlYXRDaGFwdGVyTG9vcEV2ZW50OjQzNixzZWVrQ2FuY2VsbGF0aW9uRXZlbnQ6NDYyLApsb2NrTW9kZVRpbWVvdXRFdmVudDo0ODMsZXh0ZXJuYWxWaWRlb1NoYXJlVG9Zb3V0dWJlQXR0ZW1wdDo1MDEscGFyZW50Q29kZUV2ZW50OjUwMixvZmZsaW5lVHJhbnNmZXJTdGFydGVkOjQsbXVzaWNPZmZsaW5lTWl4dGFwZVByZWZlcmVuY2VzQ2hhbmdlZDoxNixtYW5nb0RhaWx5TmV3VmlkZW9zTm90aWZpY2F0aW9uQXR0ZW1wdDo0MCxtYW5nb0RhaWx5TmV3VmlkZW9zTm90aWZpY2F0aW9uRXJyb3I6NzcsZHR3c1BsYXliYWNrU3RhcnRlZDoxMTIsZHR3c1RpbGVGZXRjaFN0YXJ0ZWQ6MTEzLGR0d3NUaWxlRmV0Y2hDb21wbGV0ZWQ6MTE0LGR0d3NUaWxlRmV0Y2hTdGF0dXNDaGFuZ2VkOjE0NSxkdHdzS2V5ZnJhbWVEZWNvZGVyQnVmZmVyU2VudDoxMTUsZHR3c1RpbGVVbmRlcmZsb3dlZE9uTm9ua2V5ZnJhbWU6MTE2LGR0d3NCYWNrZmlsbEZldGNoU3RhdHVzQ2hhbmdlZDoxNDMsZHR3c0JhY2tmaWxsVW5kZXJmbG93ZWQ6MTE3LGR0d3NBZGFwdGl2ZUxldmVsQ2hhbmdlZDoxMjgsCmJsb2NraW5nVmlzaXRvcklkVGltZW91dDoyNzcsbGl0ZVNvY2lhbDoxOCxtb2JpbGVKc0ludm9jYXRpb246Mjk3LGJpc2NvdHRpQmFzZWREZXRlY3Rpb246NDM5LGNvV2F0Y2hTdGF0ZUNoYW5nZTo0NDAsZW1iZWRzVmlkZW9EYXRhRGlkQ2hhbmdlOjQ0MSxzaG9ydHNGaXJzdDo0NDMsY3J1aXNlQ29udHJvbEV2ZW50OjQ0NSxxb2VDbGllbnRMb2dnaW5nQ29udGV4dDo0NDYsYXR2UmVjb21tZW5kYXRpb25Kb2JFeGVjdXRlZDo0NDcsdHZodG1sNVVzZXJGZWVkYmFjazo0NDgscHJvZHVjZXJQcm9qZWN0Q3JlYXRlZDo0NDkscHJvZHVjZXJQcm9qZWN0T3BlbmVkOjQ1MCxwcm9kdWNlclByb2plY3REZWxldGVkOjQ1MSxwcm9kdWNlclByb2plY3RFbGVtZW50QWRkZWQ6NDUzLHByb2R1Y2VyUHJvamVjdEVsZW1lbnRSZW1vdmVkOjQ1NCxwcm9kdWNlckFwcFN0YXRlQ2hhbmdlOjUwOSxwcm9kdWNlclByb2plY3REaXNrSW5zdWZmaWNpZW50RXhwb3J0RmFpbHVyZTo1MTYscHJvZHVjZXJNZWRpYVNlcnZpY2VzUmVzZXREZXRhaWxzOjUyMiwKdHZodG1sNVNob3dDbG9ja0V2ZW50OjQ1NSxkZXZpY2VDYXBhYmlsaXR5Q2hlY2tNZXRyaWNzOjQ1Nix5b3V0dWJlQ2xlYXJjdXRFdmVudDo0NjEsb2ZmbGluZUJyb3dzZUZhbGxiYWNrRXZlbnQ6NDYzLGdldEN0dlRva2VuRXZlbnQ6NDY0LHN0YXJ0dXBEcm9wcGVkRnJhbWVzU3VtbWFyeTo0NjYsc2NyZWVuc2hvdEV2ZW50OjQ2OCxtaW5pQXBwUGxheUV2ZW50OjQ2OSxlbGVtZW50c0RlYnVnQ291bnRlcnM6NDcwLGZvbnRMb2FkRXZlbnQ6NDcxLHdlYktpbGxzd2l0Y2hSZWNlaXZlZDo0NzMsd2ViS2lsbHN3aXRjaEV4ZWN1dGVkOjQ3NCxjYW1lcmFPcGVuRXZlbnQ6NDc1LG1hbnVhbFNtb290aG5lc3NNZWFzdXJlbWVudDo0NzYsdHZodG1sNUFwcFF1YWxpdHlFdmVudDo0NzcscG9seW1lclByb3BlcnR5QWNjZXNzRXZlbnQ6NDc5LG1pbmlBcHBTZGtVc2FnZTo0ODAsY29iYWx0VGVsZW1ldHJ5RXZlbnQ6NDgxLGNyb3NzRGV2aWNlUGxheWJhY2s6NDgyLGNoYW5uZWxDcmVhdGVkV2l0aE9iYWtlSW1hZ2U6NDg0LApjaGFubmVsRWRpdGVkV2l0aE9iYWtlSW1hZ2U6NDg1LG9mZmxpbmVEZWxldGVFdmVudDo0ODYsY3Jvc3NEZXZpY2VOb3RpZmljYXRpb25UcmFuc2Zlcjo0ODcsYW5kcm9pZEludGVudEV2ZW50OjQ4OCx1bnBsdWdnZWRBbWJpZW50SW50ZXJsdWRlc0NvdW50ZXJmYWN0dWFsRXZlbnQ6NDg5LGtleVBsYXlzUGxheWJhY2s6NDkwLHNob3J0c0NyZWF0aW9uRmFsbGJhY2tFdmVudDo0OTMsdnNzRGF0YTo0OTEsY2FzdE1hdGNoOjQ5NCxtaW5pQXBwUGVyZm9ybWFuY2VNZXRyaWNzOjQ5NSx1c2VyRmVlZGJhY2tFdmVudDo0OTYsa2lkc0d1ZXN0U2Vzc2lvbk1pc21hdGNoOjQ5OCxtdXNpY1NpZGVsb2FkZWRQbGF5bGlzdE1pZ3JhdGlvbkV2ZW50OjQ5OSxzbGVlcFRpbWVyU2Vzc2lvbkZpbmlzaEV2ZW50OjUwMCx3YXRjaEVwUHJvbW9Db25mbGljdDo1MDMsaW5uZXJ0dWJlUmVzcG9uc2VDYWNoZU1ldHJpY3M6NTA1LG1pbmlBcHBBZEV2ZW50OjUwNixkYXRhUGxhblVwc2VsbEV2ZW50OjUwNywKcHJvZHVjZXJQcm9qZWN0UmVuYW1lZDo1MDgscHJvZHVjZXJNZWRpYVNlbGVjdGlvbkV2ZW50OjUxMSxlbWJlZHNBdXRvcGxheVN0YXR1c0NoYW5nZWQ6NTEyLHJlbW90ZUNvbm5lY3RFdmVudDo1MTMsY29ubmVjdGVkU2Vzc2lvbk1pc2F0dHJpYnV0aW9uRXZlbnQ6NTE0LHByb2R1Y2VyUHJvamVjdEVsZW1lbnRNb2RpZmllZDo1MTUsYWRzU2VlbkNsaWVudExvZ2dpbmc6NTE3LHByb2R1Y2VyRXZlbnQ6NTE4LHR2aHRtbDVDbGVhblN0YXJ0OjUxOSxkZXZpY2VBY2NvdW50TWV0cmljc0V2ZW50OjUyMCxkZXJwTG9nRXZlbnQ6NTIxLHBsYXlhYmxlc1BvcnRhbEV2ZW50OjUyMyxpcFZhbGlkYXRpb25TdGFydGVkOjUyNCxpcFZhbGlkYXRpb25SZWNlaXZlZDo1MjUscmVlbHNTZXF1ZW5jZU11dGF0aW9uRXZlbnQ6NTI3LHdhdGNoWm9vbVN0YXRlQ2hhbmdlOjUyOCxtZXRhZGF0YUVkaXRvckV2ZW50OjUyOSxraWRzUHJpc21hRGVlcGxpbmtzRXZlbnQ6NTMwLGNyZWF0aW9uT3JjaGVzdHJhdGlvbkV2ZW50OjUzMSwKY29vcmRpbmF0ZWRTYW1wbGluZ1RyaWdnZXJlZDo1MzIscmVjYXBTY3JlZW5zaG90RXZlbnQ6NTM0LG1keExvY2FsTmV0d29ya1Blcm1pc3Npb25SZXF1ZXN0RXZlbnQ6NTM2LG1keExvY2FsTmV0d29ya1Blcm1pc3Npb25SZXNwb25zZUV2ZW50OjUzNyxzZXNzaW9uUmVwbGF5RXZlbnQ6NTM4LHNlc3Npb25SZXBsYXlTdGF0dXNFdmVudDo1MzksbG9nZ2luZ1JlbGlhYmlsaXR5UHJvYmU6NTQwLGtleVZhbHVlU3RvcmVTdGF0c0V2ZW50OjU0MSxkZXZpY2VMb2NhdGlvblBlcm1pc3Npb25FdmVudDo1NDIscmVtb3RlQ29udHJvbFN0YXJ0ZWQ6NTQzLHJlbW90ZUNvbnRyb2xDb21wbGV0ZWQ6NTQ0LHJlZWxzQWRzRXZlbnRzOjU0NSx5dGxyTG9hZGVyVGVzdEhhcm5lc3NFdmVudDo1NDcsYmlvbWV0cmljQXV0aGVudGljYXRpb25FdmVudDo1NDgsbWFpbkFwcExpZmVjeWNsZUV2ZW50OjU0OSxtdXNpY0Rvd25sb2FkQmFja2dyb3VuZENvbnRpbnVlZFByb2Nlc3NpbmdUYXNrOjU1MCxtdXNpY01ldGFkYXRhTWlzbWF0Y2hFdmVudDo1NTEsCnNjcm9sbFRvQ29tcG9uZW50Q29tcGxldGVkOjU1MixlbnRpdHlTdG9yZVRlbGVtZXRyeTo1NTMsc3RyZWFtaW5nRGFya0xhdW5jaEV2ZW50OjU1NCxjaGlsZEFjY291bnRzRGlzcGxheUV2ZW50OjU1NSx0dmZhc1BsYXliYWNrQ29udGV4dDo1NTcsbWRlQzJQYUV2ZW50OjU1OX07dmFyIFZtPV8uJGwoIlNlcnZpY2VXb3JrZXJMb2dzRGF0YWJhc2UiLHtzZTp7U1dIZWFsdGhMb2c6e1BkOjF9fSxzaGFyZWQ6ITAsdXBncmFkZTooYSxiKT0+e2IoMSkmJl8ub2woXy5rbChhLCJTV0hlYWx0aExvZyIse2tleVBhdGg6ImlkIixhdXRvSW5jcmVtZW50OiEwfSksInN3SGVhbHRoTmV3UmVxdWVzdCIsWyJpbnRlcmZhY2UiLCJ0aW1lc3RhbXAiXSl9LHZlcnNpb246MX0pO3ZhciBjbj17fSxibj0wO3ZhciBkbjt2YXIgaG49Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmo9bmV3IE1hcDt0aGlzLm89ITF9cmVxdWVzdENvbXBsZXRlKGEsYil7YiYmKHRoaXMubz0hMCk7YT10aGlzLnJlbW92ZVBhcmFtcyhhKTt0aGlzLmouZ2V0KGEpfHx0aGlzLmouc2V0KGEsYil9aXNFbmRwb2ludENGUihhKXthPXRoaXMucmVtb3ZlUGFyYW1zKGEpO3JldHVybihhPXRoaXMuai5nZXQoYSkpPyExOmE9PT0hMSYmdGhpcy5vPyEwOm51bGx9cmVtb3ZlUGFyYW1zKGEpe3JldHVybiBhLnNwbGl0KCI/IilbMF19fTtobi5wcm90b3R5cGUucmVtb3ZlUGFyYW1zPWhuLnByb3RvdHlwZS5yZW1vdmVQYXJhbXM7aG4ucHJvdG90eXBlLmlzRW5kcG9pbnRDRlI9aG4ucHJvdG90eXBlLmlzRW5kcG9pbnRDRlI7aG4ucHJvdG90eXBlLnJlcXVlc3RDb21wbGV0ZT1obi5wcm90b3R5cGUucmVxdWVzdENvbXBsZXRlO2huLmdldEluc3RhbmNlPWpuO3ZhciBrbj1jbGFzcyBleHRlbmRzIF8uZ2Z7Y29uc3RydWN0b3IoKXtzdXBlcigpO3RoaXMudj0hMTt0aGlzLmo9bGYoKTt0aGlzLmoubGlzdGVuKCJuZXR3b3Jrc3RhdHVzLW9ubGluZSIsKCk9PntpZih0aGlzLnYmJl8ueCgib2ZmbGluZV9lcnJvcl9oYW5kbGluZyIpKXt2YXIgYT1mbigpLmdldCgiZXJyb3JzIiwhMCk7aWYoYSl7Zm9yKGxldCBiIGluIGEpaWYoYVtiXSl7bGV0IGM9bmV3IF8uWGooYiwic2VudCB2aWEgb2ZmbGluZV9lcnJvcnMiKTtjLm5hbWU9YVtiXS5uYW1lO2Muc3RhY2s9YVtiXS5zdGFjaztjLmxldmVsPWFbYl0ubGV2ZWw7Xy5VaShjKX1mbigpLnNldCgiZXJyb3JzIix7fSwyNTkyRTMsITApfX19KX1TYigpe3JldHVybiB0aGlzLmouU2IoKX1lZihhKXt0aGlzLmouaXNPbmxpbmU9YX1xdygpe3ZhciBhPXdpbmRvdy5uYXZpZ2F0b3Iub25MaW5lO3JldHVybiBhPT09dm9pZCAwPyEwOmF9Q3YoKXt0aGlzLnY9ITB9bGlzdGVuKGEsYil7cmV0dXJuIHRoaXMuai5saXN0ZW4oYSwKYil9UWooYSl7cmV0dXJuIG1mKHRoaXMuaixhKX19O2tuLnByb3RvdHlwZS5zZW5kTmV0d29ya0NoZWNrUmVxdWVzdD1rbi5wcm90b3R5cGUuUWo7a24ucHJvdG90eXBlLmxpc3Rlbj1rbi5wcm90b3R5cGUubGlzdGVuO2tuLnByb3RvdHlwZS5lbmFibGVFcnJvckZsdXNoaW5nPWtuLnByb3RvdHlwZS5Ddjtrbi5wcm90b3R5cGUuZ2V0V2luZG93U3RhdHVzPWtuLnByb3RvdHlwZS5xdztrbi5wcm90b3R5cGUubmV0d29ya1N0YXR1c0hpbnQ9a24ucHJvdG90eXBlLmVmO2tuLnByb3RvdHlwZS5pc05ldHdvcmtBdmFpbGFibGU9a24ucHJvdG90eXBlLlNiO2tuLmdldEluc3RhbmNlPWxuO18uT3M9Y2xhc3MgZXh0ZW5kcyBfLmdme2NvbnN0cnVjdG9yKGE9e30pe3N1cGVyKCk7dGhpcy5qPXRoaXMuRD0wO3RoaXMudj1sbigpO3ZhciBiPV8uc2EoInl0Lm5ldHdvcmtTdGF0dXNNYW5hZ2VyLmluc3RhbmNlLmxpc3RlbiIpLmJpbmQodGhpcy52KTtiJiYoYS5yYXRlTGltaXQ/KHRoaXMucmF0ZUxpbWl0PWEucmF0ZUxpbWl0LGIoIm5ldHdvcmtzdGF0dXMtb25saW5lIiwoKT0+e21uKHRoaXMsInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vbmxpbmUiKX0pLGIoIm5ldHdvcmtzdGF0dXMtb2ZmbGluZSIsKCk9Pnttbih0aGlzLCJwdWJsaWN5dG5ldHdvcmtzdGF0dXMtb2ZmbGluZSIpfSkpOihiKCJuZXR3b3Jrc3RhdHVzLW9ubGluZSIsKCk9Pnt0aGlzLmRpc3BhdGNoRXZlbnQoInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vbmxpbmUiKX0pLGIoIm5ldHdvcmtzdGF0dXMtb2ZmbGluZSIsKCk9Pnt0aGlzLmRpc3BhdGNoRXZlbnQoInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vZmZsaW5lIil9KSkpfVNiKCl7dmFyIGE9Cl8uc2EoInl0Lm5ldHdvcmtTdGF0dXNNYW5hZ2VyLmluc3RhbmNlLmlzTmV0d29ya0F2YWlsYWJsZSIpO3JldHVybiBhP2EuYmluZCh0aGlzLnYpKCk6ITB9ZWYoYSl7dmFyIGI9Xy5zYSgieXQubmV0d29ya1N0YXR1c01hbmFnZXIuaW5zdGFuY2UubmV0d29ya1N0YXR1c0hpbnQiKS5iaW5kKHRoaXMudik7YiYmYihhKX1hc3luYyBRaihhKXt2YXIgYj1fLnNhKCJ5dC5uZXR3b3JrU3RhdHVzTWFuYWdlci5pbnN0YW5jZS5zZW5kTmV0d29ya0NoZWNrUmVxdWVzdCIpLmJpbmQodGhpcy52KTtyZXR1cm4gXy54KCJza2lwX25ldHdvcmtfY2hlY2tfaWZfY2ZyIikmJmpuKCkuaXNFbmRwb2ludENGUigiZ2VuZXJhdGVfMjA0Iik/bmV3IFByb21pc2UoYz0+e3RoaXMuZWYod2luZG93Lm5hdmlnYXRvcj8ub25MaW5lfHwhMCk7Yyh0aGlzLlNiKCkpfSk6Yj9iKGEpOiEwfX07dmFyIFBzLG5uPWNsYXNzIGV4dGVuZHMgTnN7Y29uc3RydWN0b3IoKXtQc3x8KFBzPW5ldyBfLk9zKHtTSjohMCxKSTohMH0pKTtzdXBlcih7Y2I6e091OlRtLEZmOlNtLFdwOlBtLEF5OlFtLG5uOlJtLHNldDpPbX0sU2E6UHMsaGFuZGxlRXJyb3I6KGEsYixjKT0+e3ZhciBkPWM/LmVycm9yPy5jb2RlO2Q9PT00MDB8fGQ9PT00MTU/KGE9bmV3IF8uWGooYS5tZXNzYWdlLGIsYz8uZXJyb3I/LmNvZGUpLF8uV2koYSx2b2lkIDAsdm9pZCAwLHZvaWQgMCwhMCkpOl8uVWkoYSl9LFRmOl8uV2ksR2Q6cW4sbm93Ol8uZWwsTHM6Z24sRGM6Xy5DaygpLEttOiJwdWJsaWN5dG5ldHdvcmtzdGF0dXMtb25saW5lIixGbToicHVibGljeXRuZXR3b3Jrc3RhdHVzLW9mZmxpbmUiLE9pOiEwLERpOi4xLEtqOl8uc2ooInBvdGVudGlhbF9lc2ZfZXJyb3JfbGltaXQiLDEwKSxLYTpfLngsYWg6IShfLldqKCkmJl8uc24oKSl9KTt0aGlzLkI9bmV3IF8uY3M7Xy54KCJuZXR3b3JrbGVzc19pbW1lZGlhdGVseV9kcm9wX2FsbF9yZXF1ZXN0cyIpJiYKVW0oKTtYbCgiTG9nc0RhdGFiYXNlVjIiKX13cml0ZVRoZW5TZW5kKGEsYil7Ynx8KGI9e30pO2I9cm4oYSxiKTtfLldqKCl8fCh0aGlzLk9jPSExKTtzdXBlci53cml0ZVRoZW5TZW5kKGEsYil9c2VuZFRoZW5Xcml0ZShhLGIsYyl7Ynx8KGI9e30pO2I9cm4oYSxiKTtfLldqKCl8fCh0aGlzLk9jPSExKTtzdXBlci5zZW5kVGhlbldyaXRlKGEsYixjKX1zZW5kQW5kV3JpdGUoYSxiKXtifHwoYj17fSk7Yj1ybihhLGIpO18uV2ooKXx8KHRoaXMuT2M9ITEpO3N1cGVyLnNlbmRBbmRXcml0ZShhLGIpfWF3YWl0SW5pdGlhbGl6YXRpb24oKXtyZXR1cm4gdGhpcy5CLnByb21pc2V9fTtfLnVuPSExO18udG49Xy51Lnl0TmV0d29ya2xlc3NMb2dnaW5nSW5pdGlhbGl6YXRpb25PcHRpb25zfHx7aXNOd2xJbml0aWFsaXplZDpfLnVufTtfLnJhKCJ5dE5ldHdvcmtsZXNzTG9nZ2luZ0luaXRpYWxpemF0aW9uT3B0aW9ucyIsXy50bik7dmFyIERwPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuY29uZmlnXz1udWxsO2E/dGhpcy5jb25maWdfPWE6a20oKSYmKHRoaXMuY29uZmlnXz1sbSgpKX1pc1JlYWR5KCl7IXRoaXMuY29uZmlnXyYma20oKSYmKHRoaXMuY29uZmlnXz1sbSgpKTtyZXR1cm4hIXRoaXMuY29uZmlnX319O3ZhciBRcztRcz1fLnUueXRQdWJzdWJQdWJzdWJJbnN0YW5jZXx8bmV3IF8udGg7Xy5Scz1fLnUueXRQdWJzdWJQdWJzdWJTdWJzY3JpYmVkS2V5c3x8e307Xy5Tcz1fLnUueXRQdWJzdWJQdWJzdWJUb3BpY1RvS2V5c3x8e307Xy5Ucz1fLnUueXRQdWJzdWJQdWJzdWJJc1N5bmNocm9ub3VzfHx7fTtfLnRoLnByb3RvdHlwZS5zdWJzY3JpYmU9Xy50aC5wcm90b3R5cGUuc3Vic2NyaWJlO18udGgucHJvdG90eXBlLnVuc3Vic2NyaWJlQnlLZXk9Xy50aC5wcm90b3R5cGUuY2k7Xy50aC5wcm90b3R5cGUucHVibGlzaD1fLnRoLnByb3RvdHlwZS5wdWJsaXNoO18udGgucHJvdG90eXBlLmNsZWFyPV8udGgucHJvdG90eXBlLmNsZWFyO18ucmEoInl0UHVic3ViUHVic3ViSW5zdGFuY2UiLFFzKTtfLnJhKCJ5dFB1YnN1YlB1YnN1YlRvcGljVG9LZXlzIixfLlNzKTtfLnJhKCJ5dFB1YnN1YlB1YnN1YklzU3luY2hyb25vdXMiLF8uVHMpOwpfLnJhKCJ5dFB1YnN1YlB1YnN1YlN1YnNjcmliZWRLZXlzIixfLlJzKTt2YXIgQ249RGF0ZS5ub3coKS50b1N0cmluZygpO0RhdGUubm93KCk7Xy5Mbj1TeW1ib2woIkNhIik7dmFyIEhuPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMua2V5PWF9fTt2YXIgT249Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnY9bmV3IE1hcDt0aGlzLmo9bmV3IE1hcDt0aGlzLm89bmV3IE1hcH1yZXNvbHZlKGEpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBfLlVzJiZhIGluc3RhbmNlb2YgXy5Vcz9Lbih0aGlzLGEpOmEgaW5zdGFuY2VvZiBIbj9Kbih0aGlzLGEua2V5LFtdLCEwKTpKbih0aGlzLGEsW10pfX07Xy5Wcz1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLm5hbWU9YX10b1N0cmluZygpe3JldHVybmBJbmplY3Rpb25Ub2tlbigke3RoaXMubmFtZX0pYH19O3ZhciBObjt2YXIgUG49d2luZG93O3ZhciBmbz1fLngoIndlYl9lbmFibGVfbGlmZWN5Y2xlX21vbml0b3JpbmciKSYmUW4oKSE9PTAsVW49Xy54KCJ3ZWJfZW5hYmxlX2xpZmVjeWNsZV9tb25pdG9yaW5nIik7dmFyIGVvPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuc2NoZWR1bGVyPV8uQ2soKTt0aGlzLm89bmV3IF8uY3M7dGhpcy5qPWE7Zm9yKGxldCBjPTA7Yzx0aGlzLmoubGVuZ3RoO2MrKyl7bGV0IGQ9dGhpcy5qW2NdO2E9KCk9PntkLnhoKCk7dGhpcy5qW2NdLk5qPSEwO3RoaXMuai5ldmVyeShlPT5lLk5qPT09ITApJiZ0aGlzLm8ucmVzb2x2ZSgpfTt2YXIgYj10aGlzLmdldFByaW9yaXR5KGQpO2I9dGhpcy5zY2hlZHVsZXIuR2EoYSxiKTt0aGlzLmpbY109ey4uLmQseGg6YSxqb2JJZDpifX19Y2FuY2VsKCl7Zm9yKGxldCBhIG9mIHRoaXMuailhLmpvYklkPT09dm9pZCAwfHxhLk5qfHx0aGlzLnNjaGVkdWxlci5BYShhLmpvYklkKSxhLk5qPSEwO3RoaXMuby5yZXNvbHZlKCl9Z2V0UHJpb3JpdHkoYSl7cmV0dXJuIGEucHJpb3JpdHk/PzB9fTtfLldzPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuc3RhdGU9YTt0aGlzLnBsdWdpbnM9W107dGhpcy52PXZvaWQgMDt0aGlzLkI9e307Zm8mJlJuKHRoaXMuc3RhdGUpfWdldCBjdXJyZW50U3RhdGUoKXtyZXR1cm4gdGhpcy5zdGF0ZX1pbnN0YWxsKGEpe3RoaXMucGx1Z2lucy5wdXNoKGEpO3JldHVybiB0aGlzfXVuaW5zdGFsbCguLi5hKXthLmZvckVhY2goYj0+e2I9dGhpcy5wbHVnaW5zLmluZGV4T2YoYik7Yj4tMSYmdGhpcy5wbHVnaW5zLnNwbGljZShiLDEpfSl9dHJhbnNpdGlvbihhLGIpe2ZvJiZTbih0aGlzLnN0YXRlKTt2YXIgYz10aGlzLnRyYW5zaXRpb25zLmZpbmQoZD0+QXJyYXkuaXNBcnJheShkLmZyb20pP2QuZnJvbS5maW5kKGU9PmU9PT10aGlzLnN0YXRlJiZkLnRvPT09YSk6ZC5mcm9tPT09dGhpcy5zdGF0ZSYmZC50bz09PWEpO2lmKGMpe3RoaXMuaiYmKFRuKHRoaXMuaiksdGhpcy5qPXZvaWQgMCk7Vm4odGhpcyxhLGIpO3RoaXMuc3RhdGU9YTtmbyYmUm4odGhpcy5zdGF0ZSk7CmM9Yy5hY3Rpb24uYmluZCh0aGlzKTtsZXQgZD10aGlzLnBsdWdpbnMuZmlsdGVyKGU9PmVbYV0pLm1hcChlPT5lW2FdKTtjKFpuKHRoaXMsZCksYil9ZWxzZSB0aHJvdyBFcnJvcigiR2FgIit0aGlzLnN0YXRlKyJgIithKTt9fTt2YXIgaG89Y2xhc3MgZXh0ZW5kcyBfLldze2NvbnN0cnVjdG9yKCl7c3VwZXIoIm5vbmUiKTt0aGlzLm89bnVsbDt0aGlzLnY9MTA7dGhpcy50cmFuc2l0aW9ucz1be2Zyb206Im5vbmUiLHRvOiJhcHBsaWNhdGlvbl9uYXZpZ2F0aW5nIixhY3Rpb246dGhpcy5EfSx7ZnJvbToiYXBwbGljYXRpb25fbmF2aWdhdGluZyIsdG86Im5vbmUiLGFjdGlvbjp0aGlzLkt9LHtmcm9tOiJhcHBsaWNhdGlvbl9uYXZpZ2F0aW5nIix0bzoiYXBwbGljYXRpb25fbmF2aWdhdGluZyIsYWN0aW9uOigpPT57fX0se2Zyb206Im5vbmUiLHRvOiJub25lIixhY3Rpb246KCk9Pnt9fV19RChhLGIpe3RoaXMubz1fLllqKCgpPT57dGhpcy5jdXJyZW50U3RhdGU9PT0iYXBwbGljYXRpb25fbmF2aWdhdGluZyImJnRoaXMudHJhbnNpdGlvbigibm9uZSIpfSw1RTMpO2EoYj8uZXZlbnQpfUsoYSxiKXt0aGlzLm8mJihfLmpmLkFhKHRoaXMubyksdGhpcy5vPW51bGwpO2EoYj8uZXZlbnQpfX0sZ287dmFyIHJvPV8uc2ooInl0Y3NpX2RlYnVnX21heF9zaXplIiwxMDApO3ZhciBYcz0wO3ZhciB5cT1jbGFzcyBleHRlbmRzIF8ucG17Y29uc3RydWN0b3IoYSxiKXtzdXBlcihhcmd1bWVudHMpO3RoaXMuaj1hO3RoaXMudGltZXI9Yn19LHhxPW5ldyBfLnFtKCJhZnQtcmVjb3JkZWQiLHlxKTt2YXIgTnA9W3twbTphPT5gQ2Fubm90IHJlYWQgcHJvcGVydHkgJyR7YS5rZXl9J2AsSmo6e0Vycm9yOlt7cmVnZXhwOi8oUGVybWlzc2lvbiBkZW5pZWQpIHRvIGFjY2VzcyBwcm9wZXJ0eSAiKFteJ10rKSIvLGdyb3VwczpbInJlYXNvbiIsImtleSJdfV0sVHlwZUVycm9yOlt7cmVnZXhwOi9DYW5ub3QgcmVhZCBwcm9wZXJ0eSAnKFteJ10rKScgb2YgKG51bGx8dW5kZWZpbmVkKS8sZ3JvdXBzOlsia2V5IiwidmFsdWUiXX0se3JlZ2V4cDovXHU2NWUwXHU2Y2Q1XHU4M2I3XHU1M2Q2XHU2NzJhXHU1YjlhXHU0ZTQ5XHU2MjE2IChudWxsfHVuZGVmaW5lZCkgXHU1ZjE1XHU3NTI4XHU3Njg0XHU1YzVlXHU2MDI3XHUyMDFjKFteXHUyMDFkXSspXHUyMDFkLyxncm91cHM6WyJ2YWx1ZSIsImtleSJdfSx7cmVnZXhwOi9cdWM4MTVcdWM3NThcdWI0MThcdWM5YzAgXHVjNTRhXHVjNzRjIFx1YjYxMFx1YjI5NCAobnVsbHx1bmRlZmluZWQpIFx1Y2MzOFx1Yzg3MFx1Yzc3OCAnKFteJ10rKScgXHVjMThkXHVjMTMxXHVjNzQ0IFx1YWMwMFx1YzgzOFx1YzYyYyBcdWMyMTggXHVjNWM2XHVjMmI1XHViMmM4XHViMmU0Li8sCmdyb3VwczpbInZhbHVlIiwia2V5Il19LHtyZWdleHA6L05vIHNlIHB1ZWRlIG9idGVuZXIgbGEgcHJvcGllZGFkICcoW14nXSspJyBkZSByZWZlcmVuY2lhIG51bGEgbyBzaW4gZGVmaW5pci8sZ3JvdXBzOlsia2V5Il19LHtyZWdleHA6L1VuYWJsZSB0byBnZXQgcHJvcGVydHkgJyhbXiddKyknIG9mICh1bmRlZmluZWQgb3IgbnVsbCkgcmVmZXJlbmNlLyxncm91cHM6WyJrZXkiLCJ2YWx1ZSJdfSx7cmVnZXhwOi8obnVsbCkgaXMgbm90IGFuIG9iamVjdCBcKGV2YWx1YXRpbmcgJyg/OihbXi5dKylcLik/KFteJ10rKSdcKS8sZ3JvdXBzOlsidmFsdWUiLCJiYXNlIiwia2V5Il19XX19LHtwbTphPT5gQ2Fubm90IGNhbGwgJyR7YS5rZXl9J2AsSmo6e1R5cGVFcnJvcjpbe3JlZ2V4cDovKD86KFteIF0rKT9cLik/KFteIF0rKSBpcyBub3QgYSBmdW5jdGlvbi8sZ3JvdXBzOlsiYmFzZSIsImtleSJdfSx7cmVnZXhwOi8oW14gXSspIGNhbGxlZCBvbiAobnVsbCBvciB1bmRlZmluZWQpLywKZ3JvdXBzOlsia2V5IiwidmFsdWUiXX0se3JlZ2V4cDovT2JqZWN0ICguKikgaGFzIG5vIG1ldGhvZCAnKFteIF0rKScvLGdyb3VwczpbImJhc2UiLCJrZXkiXX0se3JlZ2V4cDovT2JqZWN0IGRvZXNuJ3Qgc3VwcG9ydCBwcm9wZXJ0eSBvciBtZXRob2QgJyhbXiBdKyknLyxncm91cHM6WyJrZXkiXX0se3JlZ2V4cDovXHUzMGFhXHUzMGQ2XHUzMGI4XHUzMGE3XHUzMGFmXHUzMGM4XHUzMDZmICcoW14nXSspJyBcdTMwZDdcdTMwZWRcdTMwZDFcdTMwYzZcdTMwYTNcdTMwN2VcdTMwNWZcdTMwNmZcdTMwZTFcdTMwYmRcdTMwYzNcdTMwYzlcdTMwOTJcdTMwYjVcdTMwZGRcdTMwZmNcdTMwYzhcdTMwNTdcdTMwNjZcdTMwNDRcdTMwN2VcdTMwNWJcdTMwOTMvLGdyb3VwczpbImtleSJdfSx7cmVnZXhwOi9cdWFjMWNcdWNjYjRcdWFjMDAgJyhbXiddKyknIFx1YzE4ZFx1YzEzMVx1Yzc3NFx1YjA5OCBcdWJhNTRcdWMxMWNcdWI0ZGNcdWI5N2MgXHVjOWMwXHVjNmQwXHVkNTU4XHVjOWMwIFx1YzU0YVx1YzJiNVx1YjJjOFx1YjJlNC4vLApncm91cHM6WyJrZXkiXX1dfX0se3BtOmE9PmAke2Eua2V5fSBpcyBub3QgZGVmaW5lZGAsSmo6e1JlZmVyZW5jZUVycm9yOlt7cmVnZXhwOi8oLiopIGlzIG5vdCBkZWZpbmVkLyxncm91cHM6WyJrZXkiXX0se3JlZ2V4cDovQ2FuJ3QgZmluZCB2YXJpYWJsZTogKC4qKS8sZ3JvdXBzOlsia2V5Il19XX19XTt2YXIgQW89e2xlOltdLFNkOlt7Y2FsbGJhY2s6dm8sd2VpZ2h0OjUwMH0se2NhbGxiYWNrOndvLHdlaWdodDo1MDB9XX07dmFyIHlvPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5TZD1bXTt0aGlzLmxlPVtdfX0seG87Xy5WcD1uZXcgXy50aDt2YXIgdnA9W107Xy5yYSgieXQubG9nZ2luZy50cmFuc3BvcnQuZ2V0U2NyYXBlZEdlbFBheWxvYWRzIixmdW5jdGlvbigpe3JldHVybiB2cH0pO3ZhciBQbz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuc3RvcmU9e307dGhpcy5qPXt9fXN0b3JlUGF5bG9hZChhLGIpe2E9SW8oYSk7dGhpcy5zdG9yZVthXT90aGlzLnN0b3JlW2FdLnB1c2goYik6KHRoaXMuaj17fSx0aGlzLnN0b3JlW2FdPVtiXSk7Xy54KCJtb3JlX2FjY3VyYXRlX2dlbF9wYXJzZXIiKSYmKGI9bmV3IEN1c3RvbUV2ZW50KCJUUkFOU1BPUlRJTkdfTkVXX0VWRU5UIiksd2luZG93LmRpc3BhdGNoRXZlbnQoYikpO3JldHVybiBhfXNtYXJ0RXh0cmFjdE1hdGNoaW5nRW50cmllcyhhKXtpZighYS5rZXlzLmxlbmd0aClyZXR1cm5bXTt2YXIgYj1Lbyh0aGlzLGEua2V5cy5zcGxpY2UoMCwxKVswXSksYz1bXTtmb3IobGV0IGQ9MDtkPGIubGVuZ3RoO2QrKyl0aGlzLnN0b3JlW2JbZF1dJiZhLnNpemVMaW1pdCYmKHRoaXMuc3RvcmVbYltkXV0ubGVuZ3RoPD1hLnNpemVMaW1pdD8oYy5wdXNoKC4uLnRoaXMuc3RvcmVbYltkXV0pLGRlbGV0ZSB0aGlzLnN0b3JlW2JbZF1dKToKYy5wdXNoKC4uLnRoaXMuc3RvcmVbYltkXV0uc3BsaWNlKDAsYS5zaXplTGltaXQpKSk7YT8uc2l6ZUxpbWl0JiZjLmxlbmd0aDxhPy5zaXplTGltaXQmJihhLnNpemVMaW1pdC09Yy5sZW5ndGgsYy5wdXNoKC4uLnRoaXMuc21hcnRFeHRyYWN0TWF0Y2hpbmdFbnRyaWVzKGEpKSk7cmV0dXJuIGN9ZXh0cmFjdE1hdGNoaW5nRW50cmllcyhhKXthPUtvKHRoaXMsYSk7dmFyIGI9W107Zm9yKGxldCBjPTA7YzxhLmxlbmd0aDtjKyspdGhpcy5zdG9yZVthW2NdXSYmKGIucHVzaCguLi50aGlzLnN0b3JlW2FbY11dKSxkZWxldGUgdGhpcy5zdG9yZVthW2NdXSk7cmV0dXJuIGJ9Z2V0U2VxdWVuY2VDb3VudChhKXthPUtvKHRoaXMsYSk7dmFyIGI9MDtmb3IobGV0IGM9MDtjPGEubGVuZ3RoO2MrKyliKz10aGlzLnN0b3JlW2FbY11dPy5sZW5ndGh8fDA7cmV0dXJuIGJ9fTtQby5wcm90b3R5cGUuZ2V0U2VxdWVuY2VDb3VudD1Qby5wcm90b3R5cGUuZ2V0U2VxdWVuY2VDb3VudDsKUG8ucHJvdG90eXBlLmV4dHJhY3RNYXRjaGluZ0VudHJpZXM9UG8ucHJvdG90eXBlLmV4dHJhY3RNYXRjaGluZ0VudHJpZXM7UG8ucHJvdG90eXBlLnNtYXJ0RXh0cmFjdE1hdGNoaW5nRW50cmllcz1Qby5wcm90b3R5cGUuc21hcnRFeHRyYWN0TWF0Y2hpbmdFbnRyaWVzO1BvLnByb3RvdHlwZS5zdG9yZVBheWxvYWQ9UG8ucHJvdG90eXBlLnN0b3JlUGF5bG9hZDt2YXIgeXA9bmV3IF8uVnMoIkZpbmNoQ29uZmlnTWFuYWdlclNlcnZpY2UiKTt2YXIgbnA9Xy5zaigiaW5pdGlhbF9nZWxfYmF0Y2hfdGltZW91dCIsMkUzKSxscD1fLnNqKCJnZWxfcXVldWVfdGltZW91dF9tYXhfbXMiLDZFNCksb3A9Xy5zaigiZ2VsX21pbl9iYXRjaF9zaXplIiw1KSxObz12b2lkIDAsTW89bnVsbCxZcz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuQj10aGlzLm89dGhpcy52PTA7dGhpcy5qPSExfX0sQXA9bmV3IFlzLHpwPW5ldyBZcyxrcD1uZXcgWXMsanA9bmV3IFlzLGNwLG1wPSEwLGdwPV8udS55dExvZ2dpbmdUcmFuc3BvcnRUb2tlbnNUb0N0dFRhcmdldElkc198fHt9O18ucmEoInl0TG9nZ2luZ1RyYW5zcG9ydFRva2Vuc1RvQ3R0VGFyZ2V0SWRzXyIsZ3ApO3ZhciBYbz17fTt2YXIgQnA9Xy51Lnl0TG9nZ2luZ0dlbFNlcXVlbmNlSWRPYmpffHx7fTtfLnJhKCJ5dExvZ2dpbmdHZWxTZXF1ZW5jZUlkT2JqXyIsQnApO3ZhciBRcD1uZXcgU2V0LEtwPTAsWHA9MCxXcD0wLE1wPVtdLExwPVtdLFpwPVsiUGhhbnRvbUpTIiwiR29vZ2xlYm90IiwiVE8gU1RPUCBUSElTIFNFQ1VSSVRZIFNDQU4gZ28vc2NhbiJdO3ZhciBacz17YV9iaWRfZjo0ODIsYV9iaWRfczo0ODEsYWE6MixhYWNpOjQzMyxhYWNyOjQzNCxhYl9yOjExLGFiX3M6MTAsYWJjOjU3OSxhYzoxOTMsYWNjOjUxMSxhY2k6NTEyLGFkXzBfZToxMyxhZF8wX3M6MTIsYWRfYmw6MTQsYWRfaToxNSxhZF9tYnM6MTYsYWRfcHI6NTYyLGFkX3ZpOjE3LGFkX3ZpcjoxOCxhZGE6MTk0LGFkYmNfZjo1NzYsYWRjOjE5NSxhZGZsX2Y6MTksYWRmbF9zOjIwLGFkbDoxOTYsYWRuczoxOTcsYWRzX2U6MjIsYWRzX3M6MjEsYWZiOjUxMyxhZmM6MTk4LGFmbDoxOTksYWZ0OjEsYWhiOjUxNCxhaToyMDAsYWlzX2E6NTAzLGFpc19yOjUwMixhaXNmOjIzLGFpc2k6MjQsYWlzcjoyNSxhaXNzOjI2LGFtbDoyMDEsYXBhX2E6MjAzLGFwYV9iOjIwMixhcGJzOjIwNCxhcHBfbDozLGFwcF9zaTo2MTIsYXBwX3NpZTo2NjEsYXBwZGVsX2k6MjcsYXBwaV9lOjYxNixhcHBpX3M6NjE1LGFwcjoyMDUsYXByZXM6NDM2LGFwc3VzOjQzNSxhcjoyMDYsYXI0MGs6MjgsCmFyYl9mOjUwNCxhcmM6MjA3LGFyZXE6MjA4LGFyZmI6MjksYXJpOjQsYXJyOjIwOSxhcnJoOjMwLGFzY2U6Nzg4LGFzY2Y6Nzg5LGFzY3M6Nzg3LGFzaXNmYjozMSxhc2lzcjozMixhc2lzcmg6MzMsYXNpc3M6MzQsYXNyOjIxMCxhc3luY19vcmNoX3RfYWN0OjcxMixhc3luY19vcmNoX3Rfbm90aWZ5OjcxMSxhdHJyOjUxNSxhdHJzOjUxNixhdHRfZToyMTEsYXR0X2Y6MjEyLGF0dF9mYzo3OTcsYXR0X2Zycjo3OTYsYXR0X2ZzOjc5MyxhdHRfZnNyOjc5NSxhdHRfcG5hOjc5NCxhdHRfczoyMTMsYXR0X3diOjIxNCxhd2ZsX2Y6NTU3LGF3Zmxfczo1NTgsYmFzZV9qc19yOjQ0MSxiY3A6MjE1LGJmOjIxNixiZ19lOjIxNyxiZ19pOjIxOCxiZ19sOjIyMCxiZ19zOjIyMSxiZ192OjIxOSxicGRfYzo0ODQsYnBkX3M6NDgzLGJwdDoyMjMsYnJfZTozNyxicl9sZDozOCxicl9scnByOjM5LGJyX2xycjo0MCxicl9sd206NTc3LGJyX3I6NDEsYnJfczo0MixicmVyOjM1LGJyZXM6MzYsYnJucjo0MywKYnJuczo0NCxicnBlOjQ1LGJycHM6NDYsYnJyX2U6NDcsYnJyX2k6NDgsYnJyX2l1czo0OSxiczoyMjIsY19jOjUwLGNfY3M6NTEsY19jc2ZzOjUyLGNfZDo1MyxjX2xhZjo1OSxjX2xhczo1OCxjX3JuZjo0MzgsY19ybnM6NDM3LGNjOjQ2NyxjY19jOjU0LGNjX2NmOjU2LGNjX2NzYWxhOjU1LGNjX2xhOjU3LGNmZzoyMjQsY2hsczoyMjUsY2hwczoyMjYsY2w6NDgwLGNtYzoyMjcsY21kX2g6NjI5LGNtaGw6MjI5LGNtaToyMjgsY21sOjIzMCxjbXA6Nzc5LGNtdjoyMzEsY3B0OjIzMixjcjozNjQsY3JfZXJyOjY2OSxjcl9yOjY3MCxjcl9zOjY2OCxjc2w6MjMzLGNzcl90OjYzMSxjdDo1LGN0X2xpOjYwLGRfbDo2MSxkX2xhZjo2MixkX2xhcjo2MyxkX2xhczo2NCxkX2xmOjY1LGRfbHM6NjYsZF9sdzo2NyxkX2x3Zjo2OCxkX2x3czo2OSxkYXNfYzozNjYsZGFzX3M6MzY1LGRjcDoyMzQsZGdfcGJfYzoyMzYsZGdfcGJfcjoyMzcsZGdfcGJfczoyMzUsZGhpYzoyMzgsZGw6MjM5LGRuc186MjQwLApkcm1fZ2tfZjozODgsZHJtX2drX3M6Mzg3LGRybV9rcl9yOjM5Mixkcm1fa3JfczozOTEsZHJtX25ldF9yOjM5MCxkcm1fbmV0X3M6Mzg5LGRybV9wYl9mOjM4Nixkcm1fcGJfczozODUsZHNfYWM6NzM2LGRzX2FzOjczNSxkc19jbGM6NzQwLGRzX2NzOjczNyxkc19kYzo3MzksZHNfZHM6NzM4LGVtcGE6NDMyLGVtcHU6NDMxLGVucF9lcnI6Njg1LGVucF9maTo2ODQsZW5wX3N0OjY4Myxlb3ByX3I6NjczLGVwX2FfcHJfcjo1MzIsZXBfYV9wcl9zOjUzMSxlcF9oYXZfZW5kOjUyNixlcF9oYXZfc3RhcnQ6NTI1LGVwX2luaXRfYXI6Njk5LGVwX2luaXRfY3VlOjYzNSxlcF9pbml0X2N1czo2MzQsZXBfaW5pdF9lcGU6NjM3LGVwX2luaXRfZXBzOjYzNixlcF9pbml0X2lqZTo2MzksZXBfaW5pdF9panM6NjM4LGVwX2luaXRfcHI6NTI3LGVwX2luaXRfcmU6NjQxLGVwX2luaXRfcnM6NjQwLGVwX2luaXRfd2VlOjY0MyxlcF9pbml0X3dlczo2NDIsZXBfbWFfcmVwcjo1NDMsZXBfbWFfcnI6NTMzLAplcF9tYV9zZXByOjU0MixlcF9tYV9zcHI6NTM0LGVwX3BfbDo1MzAsZXBfcHJfcjo1MjksZXBfcHJfczo1MjgsZXBfcl9wcmVfcjo1NDEsZXBfcl9ycjo1MzUsZXBfcl9zbWFyOjUzNixlcF9yZWNfZW5kOjUzOCxlcF9yZWNfc3RhcnQ6NTM3LGVwX3JlcHNfZW5kOjU0MCxlcF9yZXBzX3N0YXJ0OjUzOSxlcGU6NjE4LGVwczo2MTcsZXJfY2w6NjUzLGVyX25zOjY1Mixlcl9wZTo2NTAsZXJfcHM6NjQ5LGVyX3M6NjQ4LGVyX3NfbnI6NzkwLGVyX3NfbnM6Nzg0LGVyX3Q6NjUxLGZhYl9yOjI0NixmY2Jfcjo1MDYsZmlyZTo3MCxmaXJzOjcxLGZtdGg6MjQxLGZvb3RfanM6MjQyLGZwdDoyNDMsZnJfczo1NjEsZnM6MjQ0LGZzYzoyNDUsZnNzYjBfYTo3NSxmc3NiMF9mcjo3NCxmc3NiMF9ucjo3Myxmc3NiMF9uczo3MixmdF86NDM5LGZ0bDo3LGZ0cjo0NzUsZnZiX3I6MjQ3LGZ2ZjoyNDgsZnlkX2dmOjc2NyxmeWRfZ3M6NzY2LGdjYzoyNDksZ2NmbDoyNTAsZ2Nzcjo3NixnZXBfZXJyOjgwMCwKZ2VwX3JlcTo3OTgsZ2VwX3Jlczo3OTksZ2dzcjo3NyxnaXdhX2E6NjI3LGdpd2FfZDo2MjgsZ2xjOjU5MyxnbGU6MjUxLGdsczoyNTIsZ3BlOjI1MyxncmM6MjU0LGdyaXdfbnI6Nzg2LGdyaXdfbnM6Nzg1LGdzX3I6NzM0LGdzX3M6NzMzLGdzbWQ6NTg2LGd1X3I6NjIwLGd2OjQ4NSxnd19haWVyOjc3MSxnd19hcmY6NzcyLGd3X2FybmFmOjc3NSxnd19hcm5uYWY6Nzc2LGd3X2FybnM6Nzc3LGd3X2FybnN1Ojc3OCxnd19hcnM6Nzc0LGd3X2Fyc3U6NzczLGd3X21hYWY6NjMzLGd3X21hYXM6NjMyLGhiZmc6Njc3LGhnY3I6MjU1LGhyOjI1NixocmU6MzYzLGhyczozNjIsaHM6MzczLGh0bWxfZmJfcjo3NTUsaHRtbF9mZTo3NDgsaHRtbF9mczo3NDcsaHRtbF9md2U6NzUyLGh0bWxfZndzOjc1MSxodG1sX2pjZTo3NTQsaHRtbF9qY3M6NzUzLGh0bWxfbGJfcjo3NTYsaHRtbF9zZTo3NTAsaHRtbF9zczo3NDksaV9ycDo0NzcsaV9ycTo0NzYsaXBfczo2NDYsaXBjOjI1NyxpcHM6MjU4LAppc21wX2E6ODM2LGlzbXBfYzo4MzgsaXNtcF9kOjgzOSxpc21wX2k6ODM1LGlzbXBfcDo4NDAsaXNtcF9yYzo4MzcsaXRfZ3A6NzgsaXZfczo1MDUsanNwOjI1OSxqc3I6MjYwLGtZVExhdGVuY3lNREVQcm9kdWN0U3RpY2tlckVkaXRvckNhbmNlbGxlZDo4MDEsa1lUTGF0ZW5jeU1ERVByb2R1Y3RTdGlja2VyRWRpdG9yRmluaXNoZWQ6ODAyLGwyczoyNjEsbGNfZnJyOjY2MCxsY19zX3M6NjU5LGxjX3NfdTo2NTgsbGNwOjI2MixsZF9zOjQ0MCxsaW06MjYzLGxwY2Y6MjY0LGxwY3M6MjY1LGxwczoyNjYsbHNfYzozNjgsbHNfczozNjcsbHNzOjI2NyxsdjoyNjgsbWFfY2w6NTUxLG1hX2Zmcjo1NTIsbWFfZnVhOjU1NCxtYV9ncjo1NTMsbWFfaWw6NTczLG1haW46NzksbWFpbl9qc19yOjQ0MixtYWluX2pzX3JxOjQ0MyxtYl9zOjUwNyxtYmFwX2M6Mzg0LG1iY19hbGM6NzMyLG1iY19hc2w6NzMxLG1iY19jOjM3NSxtYmNfczozNzQsbWJnY2hpZF9ycjo3NDQsbWJnY2hpZF9yczo3NDYsCm1iZ3JfcmY6NjU3LG1iZ3JfcnI6Mzc5LG1iZ3JfcnM6Mzc4LG1ibGNfYzozNzcsbWJsY19zOjM3NixtYmxjaGlkX2M6NzQ1LG1ibGNoaWRfczo3NDMsbWJsY3JpZF9jOjc0MixtYmxjcmlkX3M6NzQxLG1ic19jOjM4MSxtYnNfcnI6MzgzLG1ic19yczozODIsbWJzX3M6MzgwLG1keF9jY3A6ODAsbWR4X2Njczo4MSxtZHhfY2NzdDo4MixtZHhfY3I6ODMsbWR4X2NzOjg0LG1keF9sczo4NSxtZHhfb2ZmOjg2LG1keF9zYzo4NyxtZV9iOjU1NSxtZV9jOjY4NyxtZV9mOjU1NixtZV9mYTo2ODgsbWVzdl9zOjUwOSxtbV9pZTo3MjAsbW1faXM6NzE5LG1yYzoyNjksbXJzOjI3MCxtc2E6MjcxLG1zdGk6ODgsbXN0cjo4OSxuX2N0OjcwMixuX3NyOjY5NyxuX3N3OjY5OCwibmNbMC05XSI6MjcyLG5jbDoyNzMsbmN0OjI3NCxuZDoyNzUsbmRuc2U6Mjc2LG5kbnNzOjI3NywibnBbMC05XSI6Mjc4LG5yOjI3OSxucmU6MjgwLG5yZXFzOjI4MSxucmVzZToyODIsbnJlc3M6MjgzLG5ycnBzOjkwLApucnM6Mjg0LG5zdGNwczoyODUsbnRjcGU6Mjg2LG50Y3BzOjI4Nyxud3A6Mjg4LG9hZDJzOjQyNSxvYWZzX3I6NDA3LG9hZnNfcnA6NDA5LG9haXNyOjQwNSxvYXIyczo0MTIsb2FycDJzOjQyNyxvY3NpX3o6OTEsb2N0azo2MjEsb2N0cDo2MjIsb2ZhcnA6NDIzLG9mZG86NDAwLG9mZG9zOjM5OCxvZnI6NDE3LG9mdnJwOjQyNCxvZ3NmX2M6Mzk1LG9nc2ZfczozOTQsb2hyX3I6NzY1LG9ocl9zOjc2NCxvbDo2LG9sX2k6OCxvbG9jX2U6ODMwLG9sb2Nfc2E6ODI5LG9sb2Nfc3M6ODI4LG9tZF9jOjQyMixvbWRfczo0MjEsb21wX2M6NDE5LG9tcF9yOjQxOCxvcGZjOjY4MCxvcHJfcjo0MTQsb3ByZF9zOjQxNSxvcHJnejJfZTo4NDIsb3ByZ3oyX2Y6ODQzLG9wcmd6Ml9zOjg0MSxvcHJnel9zOjY4OSxvcHJyOjQxNixvcjEwMGs6NDExLG9yX2ZlOjQyOSxvcl9mczo0MzAsb3JfaTozOTMsb3JfcDozOTcsb3JjaF9yX2Q6Njk0LG9yY2hfcl9zOjY5NSxvcmNoX3RfcG1kOjc3MCxvcmNoX3RfcG1zOjc2OSwKb3JjaF90X3RjZWQ6NzA4LG9yY2hfdF90Y2VzOjcwNSxvcmNoX3RfdGQ6NjkyLG9yY2hfdF90bWQ6ODA0LG9yY2hfdF90bXM6ODAzLG9yY2hfdF91ZDo2OTMsb3JjaF90X3VzOjY5NixvcmZiOjQwNCxvcmhfcjo0MDMsb3Jtazo0MjAsb3JxcGJfYTo4MzEsb3JxcGJfZTo4MzQsb3JxcGJfczo4MzIsb3JxcGJfdzo4MzMsb3Nkbzo0MDEsb3Nkb2Y6NDAyLG9zZG9zOjM5OSxvc29yOjM5NixvdmQyczo0MjYsb3Zmc19yOjQwOCxvdmZzX3JwOjQxMCxvdmlzcjo0MDYsb3ZyMnM6NDEzLG92cnAyczo0MjgscGFjOjI4OSxwYXJpOjUxNyxwYXQ6MjkwLHBiMF9zOjYxMSxwYl9ycV9hdXRoejo0NDYscGJfcnFfY3R0X2NmbTo0NDcscGJjX2U6NjYzLHBiY19zOjY2MixwYmZfYzo5MixwYnA6NDg2LHBicmVzdW1lOjI5MixwYnM6NDg3LHBidToyOTMscGM6NDg4LHBjYzo1NDYscGNlOjU0NyxwY3E6NTQ0LHBjcjo1NDUscGN1X2FwOjgwOSxwY3VfY2U6NTgxLHBjdV9jczo1ODAscGN1X3JlOjgwOCxwY3VfcnM6ODA3LApwY3Vfczo4MDUscGN1X3NlOjgwNixwZGE6Mjk0LHBkYzoyOTUscGRyOjI5NixwZToyOTcscGVtX3I6NDQ0LHBlbV9ycTo0NDUscGZqZTozMDkscGZycjozMDUscGZyczozMDYscGZzOjMwNyxwZnQ6MzA4LHBmdF9pOjkzLHBsX2M6MjkxLHBsX2k6NDg5LHBsX2ludDo0OTAscGxfcjo0OTEscGxfcmM6NzAzLHBsX3M6NDkyLHBsX3NzOjQ5MyxwbGV2OjMxMCxwbGpzX3I6NDQ4LHBsanNfcnE6NDQ5LHBsdnM6NzIzLHBvdF9hZjo5Nyxwb3RfYXM6OTYscG90X2NtZTo1NjkscG90X2NtZjoyOTkscG90X2NtczoyOTgscG90X2NzbWU6NTcwLHBvdF9jc21mOjMwMSxwb3RfY3NtczozMDAscG90X2lmOjMwNCxwb3RfaW5pdGY6OTUscG90X2lzYzozMDIscG90X2lzdDozMDMscG90X3NlOjU2NSxwb3Rfc2Y6NTY0LHBvdF9zczo1NjMscG90X3hlOjU2OCxwb3RfeGY6NTY3LHBvdF94czo1NjYscG90cGU6OTQscHB1Ojk4LHByb2Nfazo2MTMscHJvY19rX2w6NjE0LHBzOjMxMSxwc19iczo2NDcscHNfYzo0OTQsCnBzX2VzOjk5LHBzX3BhOjY4MSxwc19waWhmOjU5Nyxwc19waWhzOjU5Nixwc19yOjM2MCxwc19zOjM2MSxwc19zZ2Y6NTk1LHBzX3Nnczo1OTQscHNucjo0OTUscHNuczo0OTYscHNwZToxMDAscHNwczoxMDEscHRfbWU6ODE1LHB0X21mOjgxNCxwdF9tczo4MTMscHRfcGllOjgxMixwdF9waWY6ODExLHB0X3Bpczo4MTAscHRfcGlzaDo2MDYscHZyaTo1MTgscHdjOjMxMixxb2VzOjMxMyxyX2Nfc2xkOjQ1MCxyX2Nfc3JxOjQ1MSxyX2Nvbm5lY3RfYmFja2VuZDo0NTIscl9jb25uZWN0X2JhY2tlbmRfc3VjY2Vzczo0NTMscl9jb25uZWN0ZWQ6NDU0LHJfY29uc3RydWN0aW9uOjQ1NSxyX2Rpc2Nvbm5lY3RlZDo0NTYscl9lYmk6NjY0LHJfZW9kOjU4NSxyX2Y6NDU3LHJfb3I6NzEzLHJfcGw6MTA1LHJfcHM6MTA2LHJfcnFfcGx5OjQ1OCxyX3NfcGx5bHN0OjQ1OSxyX3NfdmlkOjQ2MCxyX3N0YXR1c191cGRhdGU6NDYxLHJfdHI6MTA3LHJfdnRjOjEwNCxyX3dpcGJjOjU4NCxyX3ducjo3OTIsCnJfd25zOjc5MSxyX3dycjoxMDMscl93cnM6MTAyLHJfd3NycDo2MDkscl93c3JyOjYwOCxyX3dzcnM6NjA3LHJjdl86MzE0LHJlbW92ZV9zcGxhc2g6NDYyLHJlcV86MzE1LHJmZzozMTYscmdyX25yZjo2MDAscmdyX3M6NTk5LHJwZTo4MTYscnBseV9ycWQ6NDYzLHJwczo4MTcscnNfczo1MDgscnNhZV9wYzozMzIscnNhZV9wZWo6MzM0LHJzYWVfcGo6MzMzLHJzYmVfcGM6MzIzLHJzYmVfcGVqOjMyNSxyc2JlX3BqOjMyNCxyc2VfcGM6MzIwLHJzZV9wZWo6MzIyLHJzZV9wajozMjEscnNlZl9wYzozMjkscnNlZl9wZWo6MzMxLHJzZWZfcGo6MzMwLHJzZXNfcGM6MzI2LHJzZXNfcGVqOjMyOCxyc2VzX3BqOjMyNyxyc2ZfcGM6MzE3LHJzZl9wZWo6MzE5LHJzZl9wajozMTgscnRpbWVfOjMzNSxydXJsX2U6MTA4LHJ1cmxfcjoxMDkscnVybF9zOjExMCxydXJscGU6MTExLHJ1cmxwczoxMTIsczN0X3I6NDcyLHNhX2Y6NjI0LHNhX2ZvOjYyNSxzYV9zOjYyMyxzYWZfZnA6NjY1LHNhZl9yOjY2NiwKc2FmX3JlOjY2NyxzYXNfaTo2MjYsc2NnYXRfZmZzOjU2MCxzY2dhdF9mczo1NTksc2RhX2Y6NjA1LHNkYV9pOjYwNCxzZGFfcmVjcDo2MDEsc2RhX3JzcHA6NjAzLHNkYV9yc3ByOjYwMixzZGxfZTo2NTUsc2RsX3M6NjU0LHNkbF90OjY1NixzZl9pOjExMyxzZ3NjX3I6NzgxLHNnc2Nfczo3ODAsc2hvd19jYWxsX3RvX2Nhc3Q6NDY0LHNocmJfYzoxNjUsc2hyb19jOjE3MCxzaHJvX3I6MTY3LHNocnBfYzoxNjksc2hycF9sZDoxNjYsc2hycF9wOjE2OCxzb19yOjExOSxzb19yZToxMTgsc29fcnE6MTIwLHNwYToxMTQsc3BkOjExNSxzcGY6MTE2LHNwbnJfaDo2NzIsc3Bucl9zOjY3MSxzcHI6Njc4LHNyX2U6MTE3LHNyX3A6MTIxLHNyX3BhOjEyMixzcl9yOjEyMyxzcl9yZToxMjQsc3JfczoxMjUsc3JfdWk6MTI2LHNydDozMzYsc3Nfcjo0Njksc3Nfczo0Njgsc3Nfc2Zfczo3MjQsc3Nfc2Zfdzo3MjUsc3NucjoxMjcsc3NuczoxMjgsc3RjcF86MzM3LHN0ZV9hbGY6NTg5LHN0ZV9jOjU5MiwKc3RlX2VsZjo1OTAsc3RlX2Y6NTkxLHN0ZV9mdGw6NTg4LHN0ZV9sOjU4NyxzdHRzX2I6NTgyLHN0dHNfZjo1ODMsc3R2c19mOjY5MSxzdHZzX3M6NjkwLHN2ZTo0NjYsc3ZzOjQ2NSxzd19mYjo1MTAsc3dfaTo3ODMsc3dfcjo0OTcsc3dfczo0OTgsc3dzbnI6ODE5LHN3c25zOjgxOCxzd3NwZTo4MjEsc3dzcHM6ODIwLHRjcF86MzM4LHRlbnhfbDo0NzEsdGVueF9yOjQ3MCx0aDBfaDo2MTAsdGgwX25jOjY3NSx0aDBfbmU6Njc2LHRoMF9ucjoxMjksdGgwX25zOjY3NCx0aF9jXzE6NzA5LHRoX2RfMTo3MTAsdGhfbF8xOjEzMCx0aF9zXzE6NTc4LHRoc2IwX2ZyOjEzNCx0aHNiMF9uZToxMzEsdGhzYjBfbnI6MTMyLHRoc2IwX25zOjEzMyx0dGM6MzM5LHR0Y3I6MzQwLHVpX2w6MTM1LHVpYmZfYzoxNDEsdWliZl9yOjE0Myx1aWJmX3M6MTQyLHVpc2ZfcjoxNDQsdWl3d2FfYmM6NjE5LHVpd3dhX2M6MTM2LHVpd3dhX2U6MTQwLHVpd3dhX3ByOjEzOSx1aXd3YV9yOjEzOCx1aXd3YV9zOjEzNywKdWxyc19jOjM3MCx1bHJzX3M6MzY5LHVua25vd246MCx1cjozNDEsdmM6NjgyLHZjYzo1MTksdmNpOjUyMCx2ZGE6MzQyLHZkZXVjOjM0Myx2ZGV1cjozNDQsdmRldXM6MzQ1LHZkbnM6MzQ2LHZmYjo1MjEsdmZwOjM0Nyx2aGI6NTIyLHZpcjozNDgsdmlyYzozNDksdmlzX2E6NTAwLHZpc19yOjQ5OSx2aXNmOjE0NSx2aXNpOjE0Nix2aXNyOjE0Nyx2aXNzOjE0OCx2b3pfY3g6MTc5LHZvel9lb3U6MTg3LHZvel9lcnI6MTg0LHZvel9lcnJfbXM6MTgwLHZvel9lcnJfbm1wOjE4MSx2b3pfZXJyX29mZjoxODMsdm96X2Vycl91YXI6MTgyLHZvel9mdHI6MTg4LHZvel9mdmM6MTg5LHZvel9scl9sc286MTg1LHZvel9scl9tZDoxODYsdm96X21mOjE3Mix2b3pfbXM6MTcxLHZvel9ycWY6MTc0LHZvel9ycXM6MTczLHZvel9zZjoxNzgsdm96X3NzOjE3Nyx2b3pfdnA6MTc1LHZvel92dDoxNzYsdnBsOjM1MCx2cjozNTEsdnIxMDBrOjE0OSx2cmJfZjo1MDEsdnJjOjM1Mix2cmVxOjM1Myx2cmZiOjE1MCwKdnJpOjksdnJyOjM1NCx2cnJfcjo0NzQsdnJyX3M6NDczLHZycmg6MTUxLHZzaXNmYjoxNTIsdnNpc3I6MTUzLHZzaXNyaDoxNTQsdnNpc3M6MTU1LHZ0YTozNTUsdnRycjo1MjMsdnRyczo1MjQsd19zdDoxNTYsd2FzbV9mYTo4MjYsd2FzbV9mZXJyOjgyNyx3YXNtX2Z3OjgyNSx3YXNtX3M6ODI0LHdjOjM3Mix3Y3I6MzU2LHdlYmZlX2U6NzI4LHdlYmZlX2dibV9yOjc1OCx3ZWJmZV9nYm1fczo3NTcsd2ViZmVfZ2xfcjo3NjIsd2ViZmVfZ2xfczo3NjEsd2ViZmVfZ3Nfcjo3NjAsd2ViZmVfZ3Nfczo3NTksd2ViZmVfZ3VzX3I6NzMwLHdlYmZlX2d1c19zOjcyOSx3ZWJmZV9ndm1fczo3NjMsd2ViZmVfczo3Mjcsd2ZmZTozNTcsd2ZmczozNTgsd2ZnOjM1OSx3bl9lOjE2Mix3bl9sOjM3MSx3bl9yOjE1OSx3bl9ycDo0Nzgsd25fczoxNjAsd25fc2w6MTYxLHdubDoxNTgsd25sX2Q6ODIzLHdubF9tcDo1NzEsd25sX3BkOjgyMix3bmxyOjU3Mix3bmxzOjE1Nyx3bnBlOjE2Myx3bnBzOjE2NCwKd3A6NDc5LHdzX2NlOjE5MCx3c19zczoxOTEsd3Nfc3NyOjE5Mix5Y2VjOjU0OSx5Y2VmOjU0OCx5Y2Z0cjo2NDUseWNpZjo1NTAseWNtc2Y6NjQ0LHljcmM6NzE4LHljcmY6NzE3LHljcnM6NzE0LHljcnNjOjcxNSx5Y3J1ZWE6NzE2fTtfLnJhKCJ5dExvZ2dpbmdHZWxTZXF1ZW5jZUlkT2JqXyIsXy51Lnl0TG9nZ2luZ0dlbFNlcXVlbmNlSWRPYmpffHx7fSk7dmFyIGJxPV8udS55dExvZ2dpbmdMYXRlbmN5VXNhZ2VTdGF0c198fHt9O18ucmEoInl0TG9nZ2luZ0xhdGVuY3lVc2FnZVN0YXRzXyIsYnEpOwp2YXIgJHA9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmo9MH10aWNrKGEsYixjLGQpe2NxKHRoaXMsYHRpY2tfJHthfV8ke2J9YCl8fChjPXt0aW1lc3RhbXA6YyxjdHRBdXRoSW5mbzpkfSxiPXt0aWNrTmFtZTphLGNsaWVudEFjdGlvbk5vbmNlOmJ9LF8ueCgieW91dHViZV93ZWJfY3NpX3RpY2tzX21pZ3JhdGlvbiIpJiYoYT1ac1thXSxhIT09dm9pZCAwJiYoYi50aWNrPWEsZGVsZXRlIGIudGlja05hbWUpKSxfLkVwKCJsYXRlbmN5QWN0aW9uVGlja2VkIixiLGMpKX1pbmZvKGEsYixjKXt2YXIgZD1PYmplY3Qua2V5cyhhKS5qb2luKCIiKTtjcSh0aGlzLGBpbmZvXyR7ZH1fJHtifWApfHwoYT1PYmplY3QuYXNzaWduKHt9LGEpLGEuY2xpZW50QWN0aW9uTm9uY2U9YixfLkVwKCJsYXRlbmN5QWN0aW9uSW5mbyIsYSx7Y3R0QXV0aEluZm86Y30pKX1qc3BiSW5mbygpe31zcGFuKGEsYixjLGQpe3ZhciBlPU9iamVjdC5rZXlzKGEpLmpvaW4oIiIpO2lmKGR8fCFjcSh0aGlzLGBzcGFuXyR7ZX1fJHtifWApKWEuY2xpZW50QWN0aW9uTm9uY2U9CmIsXy5FcCgibGF0ZW5jeUFjdGlvblNwYW4iLGEse2N0dEF1dGhJbmZvOmN9KX19O3ZhciAkcyxhdDskcz13aW5kb3c7YXQ9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnRpbWluZz17fTt0aGlzLmNsZWFyUmVzb3VyY2VUaW1pbmdzPSgpPT57fTt0aGlzLndlYmtpdENsZWFyUmVzb3VyY2VUaW1pbmdzPSgpPT57fTt0aGlzLm1vekNsZWFyUmVzb3VyY2VUaW1pbmdzPSgpPT57fTt0aGlzLm1zQ2xlYXJSZXNvdXJjZVRpbWluZ3M9KCk9Pnt9O3RoaXMub0NsZWFyUmVzb3VyY2VUaW1pbmdzPSgpPT57fX19O18uc3E9JHMucGVyZm9ybWFuY2V8fCRzLm1velBlcmZvcm1hbmNlfHwkcy5tc1BlcmZvcm1hbmNlfHwkcy53ZWJraXRQZXJmb3JtYW5jZXx8bmV3IGF0O3ZhciBscT1fLkZuKCk7Xy5yYSgieXRfbG9nZ2luZ19zY3JlZW4uZ2V0Um9vdFZlVHlwZSIsXy5ncSk7Xy5yYSgieXRfbG9nZ2luZ19zY3JlZW4uZ2V0Q3VycmVudENzbiIsXy5pcSk7Xy5yYSgieXRfbG9nZ2luZ19zY3JlZW4uZ2V0Q3R0QXV0aEluZm8iLF8ua3EpO18ucmEoInl0X2xvZ2dpbmdfc2NyZWVuLnNldEN1cnJlbnRTY3JlZW4iLF8ubXEpO3ZhciB3cSxycTt3cT0hMTtycT0hMTtfLmJ0PSgwLF8uQ2EpKF8uc3EuY2xlYXJSZXNvdXJjZVRpbWluZ3N8fF8uc3Eud2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3N8fF8uc3EubW96Q2xlYXJSZXNvdXJjZVRpbWluZ3N8fF8uc3EubXNDbGVhclJlc291cmNlVGltaW5nc3x8Xy5zcS5vQ2xlYXJSZXNvdXJjZVRpbWluZ3N8fF8uZ2QsXy5zcSk7dmFyIGR0OwpfLmN0PV8uVmkoZnVuY3Rpb24oYSxiLGMsZCxlLGYsaCl7aWYoIV8ueCgid2ViX2NzaV9hY3Rpb25fc2FtcGxpbmdfZW5hYmxlZCIpfHwhXy5rbyhmKS5hY3Rpb25EaXNhYmxlZCl7dmFyIGs9aD8uc3BhblN0YXR1cyxsPWg/LnJvb3RTcGFuTm9uY2U7bGV0IG09Xy5ubyhmKTttLmdlbFNwYW5zP20uZ2VsU3BhbnNbYV09ITA6bS5nZWxTcGFucz17W2FdOiEwfTtYcysrO2E9e3NwYW5OYW1lOmEsc3Bhbkxlbmd0aFVzZWM6U3RyaW5nKE1hdGgucm91bmQoYioxRTMpKSxzcGFuTm9uY2U6WHMscm9vdFNwYW5Ob25jZTpsfHxYc307ayYmKGEuc3BhblN0YXR1cz1rKTtkJiYoYS5zcGFuSW5mbz1kKTtlJiYoYS5wYXJlbnRTcGFuTm9uY2U9ZSk7YyYmKGEuc3BhblN0YXJ0VGltZVVzZWM9U3RyaW5nKE1hdGgucm91bmQoYyoxRTMpKSk7Yz1hO18udW8oZnx8IiIpLnNwYW5bU3RyaW5nKGMuc3Bhbk5hbWUpXT1jO2Q9Xy5ubyhmKTtkLmdlbFNwYW5zfHwoZC5nZWxTcGFucz17fSk7Xy55bihkLmdlbFNwYW5zLGMpOwpkPV8ucG8oZik7Zj1fLmtvKGYpLmN0dEF1dGhJbmZvO2FxKCkuc3BhbihjLGQsZixoPy5xdSk7cmV0dXJuIGMuc3Bhbk5vbmNlfX0pO2R0PXdpbmRvdztkdC55dGNzaSYmKGR0Lnl0Y3NpLmluZm9HZWw9Xy56cSxkdC55dGNzaS50aWNrPV8uQXEpO3ZhciBldDtldD1uZXcgXy5jcztfLmZ0PWV0LnByb21pc2U7KGZ1bmN0aW9uKGEpe18uQXEoIm1tX2lzIik7dmFyIGI9bmV3ICRyO18uVWQoYik7Xy54KCJ3ZWJfZW5hYmxlX2xhenlfY3NzIikmJihuZXcgUHIpLmluaXQoKTtiLmVuKCgpPT57ZmgoKTtfLkFxKCJtbV9pZSIpO2E/LigpfSk7Yi5abihRZy5FUlJPUiwoYyxkLGUpPT57Xy5VaShFcnJvcigiSGFgIitkKyJgIitlKSl9KX0pKCgpPT57ZXQucmVzb2x2ZSgpfSk7Cl8uX01vZHVsZU1hbmFnZXJfaW5pdGlhbGl6ZT1mdW5jdGlvbihhLGIpe2lmKCFfLlFkKXtpZighXy5UZClyZXR1cm47Xy5VZChfLlRkKCkpfV8uUWQuVGgoYSxiKX07Cl8uX01vZHVsZU1hbmFnZXJfaW5pdGlhbGl6ZSgncm9vdC9zeTAvbjczcXdmOjEvc3kxL3N5MjozL2l1VDVPYzo0L3N5My9VVUpxVmU6MSw2L3N5NS9zeTQ6OC9NcEp3WmM6MSw2LDkvc3k2L3N5Nzo4L3N5ODpjL3N5Yy9zeWc6YixlL3N5aDpmL3N5YS9zeTFmL3N5M2M6aS9zeTNxOmkvc3k1YS9zeTU2L3N5NTgvc3k1YjpqLGssbCxtLG4vc3k1OTpqLG0sbi9zeTNkL3N5OTozLGMsZyxoL3N5ay9zeTU3L3N5YjpzL3N5ZDo4LGUvc3k1YzpqLGwsbSxuL3N5NWU6ayxxLHcvc3llL3N5Zi9zeWkvc3lqL3N5bC9zeW0vc3kxaC9zeTFlL3N5MWw6MTUvc3kzODoxNCwxNi9zeXA6MSw5LGMvc3l1OmMvc3lzOmQsMTgsMTkvc3kxaS9zeTJkL3N5Mms6MWEvc3kyajoxZC9zeTJ3OjFhL3N5MTkvc3kxcC9zeTIxL3N5Mm0vc3kybjoxai9zeTFiL3N5MXovc3kydS9zeTFrOmMsdiwxaCwxaSwxaywxbCwxbSwxbi9zeTJsL3N5MXU6MWcsMW4vc3kzMS9zeXY6Yy9zeTEwOjE4L3N5ejoxdC9zeXk6MWEvc3kzNjpjL3N5M2Y6Yy9zeTFtOmIsMWYsMXEsMXIsMXMsMXUsMXYsMXcsMXgvc3kyci9zeTNlL3N5M2E6aC9zeTEyOjFhL3N5M2c6MXUvc3kzaDoxOS9zeTFxOmcsaixxLDFvLDFwLDF5LDF6LDIwLDIxLDIyLDIzLDI0L3N5M2k6MXovc3kzbToxZS9zeTQzOjFlL3N5NDQ6MWUvc3k0ZjoxZS9zeTQ3OjFlL3N5NGc6MWUvc3k0aC9zeTRpOjE5L3N5eDoxYS9zeXQ6MWEvc3lyOjJnL3N5MTg6MWQsMXMsMmYsMmgvc3kyby9zeTMyL3N5M2I6MTksMW8sMXUvc3l3OjE4L3N5MTc6MjEsMm0vc3kzay9zeTFuOjFvLDFzLDJoLDJuLDJvL3N5M2o6MXcsMmssMmwsMnAvc3kxdi9zeTF5L3N5MnM6MTYvc3kyei9zeTFkL3N5M3Q6MTkvc3k0ajpqLGsscSwxZiwxdSwxdywxeCwyaywydi9zeTRkOmMsMWIvc3k0azoxOCwxcy9zeTQxOmMvc3k0MjoxOSwzMC9zeTJjOjExLDI1LDI2LDI3LDI4LDI5LDJhLDJiLDJjLDJkLDJlLDJpLDJqLDJxLDJyLDJzLDJ0LDJ1LDJ3LDJ4LDJ5LDJ6LDMxL3N5MWo6MTYvc3kyNDozMy9zeTRsOjE5LDMwL3N5MjM6MW8vc3kyNS9zeTJpOjE5LDM3L3N5NDYvc3k0cTozMiwzNiwzOCwzOS9zeW46MTcsMWMsMzQsMzUsM2Evc3kzMy9zeTJ2OjE4L3N5MWE6ayxtLHQsdSwyNSwyZiwybCwzYywzZC9zeTRuL3N5NG86M2Yvc3kzeC9zeTN6L3N5NHA6aixrLDFhLDFzLDF1LDF3LDF4LDNnLDNoLDNpL3N5Mjkvc3kzbDoxZS9zeTFvOjFtL3N5Mmg6M20vc3kxNDoxdCwyMi9zeTJmOmosayxxLDFzLDF3LDF4LDIzLDNvL3N5Mmcvc3kzcy9zeTQwOjFvL3N5M3Ivc3kzdS9zeTN2L3N5MWcvc3kzcC9zeTN3OmIsaiwxYSwxcywxdywxeCwyMywzaCwzdi9zeTN5OjFlL3N5M286MjUsMmksMmwsMncsM2ksM3AsM3IsM3QsM3UsM3csM3gsM3ksM3ovc3kxcjoyaywycywydCwzMSwzbiwzcSwzcyw0MC9zeTRzL3N5MnEvc3kyeS9zeTJ0OjFuLDNkL3N5NHUvc3k0dDoxZS9zeTI3OjFiLDF2LDF3LDNxLDQ2LDQ3L3N5MnA6MWUvc3kzbjoxZS9zeTQ1OjFlL3N5MjYvc3k0ODoxZS9zeTQ5OjFlL3N5NGEvc3k0Yjo0Zi9zeTRjOjNvLDRnL3N5Mjg6MjUsMjYsMjcsMmIsMmksMnAsMncsMnksNGMsNGQsNGUsNGgvc3k0ZToxZS9zeTJhOmssMjgsMnYsMzgsMzksNGEsNGIsNGksNGovc3kxdC9zeTRtOjE2L3N5MmI6MzIsMzUsMzgsMzksM28sNGwsNG0vc3kyZTozayw0MS9zeTIyL3N5MzAvc3k1MjoxOSwxcywyMy9zeTU0OjFhL3N5Mzcvc3kyMDoxaS9zeTM1OjFzLDF1LDF3LDJnL3N5MzQ6aywxbiwxeiwydCwzYyw0dCw0dSw0di9zeTE1OjF1L3N5cTp3LDEwLDNiLDNlLDNqLDNsLDQyLDQzLDQ0LDQ1LDQ4LDQ5LDRrLDRuLDRvLDRwLDRxLDRyLDRzLDR3LDR4L3N5NHcvc3lvOm8scCxyLDR5LDR6L3N5MTE6ZCwxOC9zeTEzOjF1LDIyLDUxL3N5MTY6Mm0vc3kxdy9zeTUxOjFmLDNwLDQ2LDRyLDR2L3N5Mngvc3kxeDo0eSw1NCw1NSw1Ni9zeTR2OmosayxxLDFhLDF3LDIzLDNyLDQ1LDR6L3N5Mzkvc3kxczo0cS9zeTR6OjFlL3N5NWQ6MWUvc3k1MDpqLHEsMXksMjgsMmEsMmIsMmksMmwsM28sNWEsNWIsNWMvc3k0cjoxZS9zeTR4OmssMW4sMXosNHYvc3k0eTpzLDJ1LDNjL3N5NTMvc3k1NToxOCwxcy9zeTFjOjQseCx5LDUwLDUyLDUzLDU3LDU4LDU5LDVkLDVlLDVmLDVnLDVoLDVpL3N5NWYvc3k1Zy9zeTVpL3N5NWsvc3k1bC9zeTVtL3N5NW4vc3k1bzoxOC9zeTVqL3N5NWg6NCx6LDUwLDU4LDVhLDVoLDVtLDVuLDVvLDVwLDVxLDVyLDVzL3N5NXA6NWosNXQvYmFzZTpkLHIsdSx2LHkseiwxMCwxMSwxMiwxMy9zeTVxL3N5NXIvc3k1czpjLGgvc3k1dDoybSwzbiwzbyw0eC9zeTdkL3N5NXU6MWwsMm8sNXIsNjAvc3k3cS9zeTZ0L3N5ODU6MTYvc3k4NDpqLDFyLDF3LDIzLDI4LDJpLDM1LDN0LDUzLDVpLDYzLDY0L3N5NXY6MTMsNTEsNjIsNjUvc3k2Yy9zeTZzOjQxL3N5ODY6MzUsNjQsNjgvc3k3bDpqLGsscSwxZSwxZiwxdSwxdywzbywzdSwzdi9zeTY3L3N5NXc6MzIsMzgsNDUsNXosNjYsNjcsNjksNmEsNmIvc3k1eC9zeTdlOjNkLDNtLDYwL3N5OHM6NmUvc3k5czoxZS9zeTV5OmYsaiwxaywxdywyMiwyMyw1YSw1biw2Ziw2Zy9zeTdyOjE0LDR0L3N5NmI6MnQsMzMvc3k1ejozNSwzZiwzayw0MSw0cCw2aSw2ai9zeTd6OjFlL3N5NjI6aC9zeThuOjFvLDFzL3N5NjA6MWIsMmQsMm4sNDEsNDYsNDcsNmwsNm0sNm4vc3k4bTpqLHEsMWcsMXcsMXgsMjMsNm4vc3k4bzoxNi9zeTc3L3N5Nnc6aiwxciwxdywyOCwyYSwyYywyaSwzayw1Yiw2ci9zeTdpL3N5OGwvc3k2MTp6LDEyLDJwLDJyLDM1LDNkLDQxLDR1LDU5LDVpLDV5LDV6LDYxLDZtLDZwLDZxLDZzLDZ0LDZ1L3N5NjM6MjUsMmksNGUvc3k2NDprLDI1LDI3LDJkLDJpLDJxLDRnL3N5NmQvc3k2OToxbiw0Ziw2Mi9zeTY4OjFlLDZ6L3N5N3Avc3k4YS9zeThjOjFlL3N5NjU6MWIsMjksMnAsM2csNmssNnUsNnksNzAsNzEsNzIsNzMvc3k2ei9zeTY2OjFjLDJrLDJyLDM1LDNzLDQwLDR3LDVmLDVnLDVuLDVvLDV6LDZmLDZqLDc1L3N5N286aixrLDFhLDFxLDF3LDF4LDF6LDNnL3N5Nmsvc3k2YTo1Nyw2eiw3MSw3Nyw3OC9zeThrOjFlL3N5OGY6MWUvc3k2ZToxNSwxdywyaSwzMCwzbyw0OSw0YSw0aiw0eiw3YSw3Yi9zeTZmOjFvLDFzLDF3LDI4LDJhLDJ1LDM1LDNrLDNyLDV6LDZlLDZxLDZyL3N5N2o6YywxaCwxaiwzNy9zeTdrOjFvLDM4LDM5LDZhL3N5Nmc6MWMsM2EsNDQsNGwsNW8sNXAsNjEsNjcsNzgsN2UsN2Yvc3k2aDozZSw0Miw0cSw2Myw2OC9zeTZpOmoscSwxNiwxOCwxdywzNS9zeTZyL3N5Nmo6MjUsMjcsMmksM28sN2UsN2ovc3k2bDoxNywyMywyOCwyaywydCwzMSwzayw1cS9zeThiOjJkL3N5ODA6MmQsN2ovc3k2eToxYiwyNSwyNywyaSwycCw0Yyw2MSw3Myw3bSw3bi9zeTZ4OjJiLDJlLDJ3LDRoLDVoLDcyLDdvL3N5Nm06MmEsNDEsN3Avc3k3eDoxZS9zeTd5OjJpLDdyL3N5OHI6MWIsMWcsMXUsMXcsMnAsM3MsNGMsNmwsN24sN3Mvc3k2bjoyYyw0MSw0dSw1OSw3NSw3byw3dC9zeThoOjFlL3N5Nm86MmksN2UsN3Yvc3k2cDoxaywxeiwzNSwzbyw0bSw0diw1bS9zeTZxOmssMjUsMjgsMmkvc3k2dS9zeTZ2OmosMTgsMXcvc3k3My9zeTcwOjFxLDFzLDF3LDJzLDJ0LDMxLDQ2LDQ3LDVnLDgxL3N5NzEvc3k4OToxZS9zeTcyOmosaywxeSwyaSwzMSwzZywzbyw1Niw1aSw2aSw3ciw4NC9zeTc0OjF3LDI4LDJpLDNyL3N5NzU6aixrLHEsMWEsMXcsM2csM3Qvc3k3NjoyNSwyaSw3My9zeTc4OmoscSwxNiwxbywxdSwxdywyYSwyaSwzNSwzbyw2ci9zeTc5OjJpLDdlLDdmL3N5ODI6MWUvc3k4MzoxZS9zeTdhOjFwLDF4LDIwLDJiLDJqLDJ3LDN4LDRhLDRiLDRkLDVoLDV3LDV5LDY2LDZ0LDcwLDcyLDdhLDd2LDhiLDhjL3N5N2I6NmYsN28sN3osOGMvc3k3YzpxLDFrLDF3LDF4LDJmLDMxLDZkLDZnLDZqL3N5N2Y6NDEsN2wvc3k3Zzo0MS9zeTdoOmosMXksMXovc3k3bToyNSwyNiwyaS9zeTduOmoscSwxOCwxdywxei9zeTdzL3N5N3U6MjAvc3k3dDoyNSwzbyw1aCw4bCw4bS9zeTd2OjFiLDFlLDI1LDJwLDhsL3N5N3c6MW8sNmwsN24sN3Mvc3k4MToyNSwyaSw0aCw4Yiw4Yy9zeTg3OmosMXksMXosMjAsNWgvc3k4ODo3Nyw4NS9zeThkOjExLDJyLDM0LDM1LDQxL3N5OGU6MmksMzgsN2IsN2Uvc3k4ZzoxZSwyNSwydy9zeThpOjFjLDMyLDNvLDdlL3N5OGo6MzgsNDEsN2Uvc3k4cToyNSwyYiwyaSwycCw4Yy9zeThwOjQxLDZ1LDZ6LDdwLDd0LDh5L3N5OHQ6NG8sN2Uvc3k4dToxYiwyNSwyNiw0Mi9zeTh2OjF5L3N5OHg6MWUvc3k4dzpqLHEsMXcsMmksM2csOTMvc3k4eTprLDFiLDI1LDJwLDYxLDgzL3N5OHo6aiwxdywyYSwyaSwzdCw4My9zeTkwOjF3LDJpLDNnLDgxLDkzL3N5OTE6aixxLDFiLDF5LDJlL3N5OTI6aywxYiwxeSwyMywyNiwycCw3ciw3eiw4NCw4Ni9zeTkzOjExLDJvLDJ0LDQwLDhkL3N5OTQ6aixrLHEsMWYsMXYsMXcsMXgsMjMsMnosNjEvc3k5NToyNSw0Miw4bS9zeTk2OmosayxxLDFlLDFvLDF5LDMxLDR1LDU5LDYxL3N5OTc6aixrLDF6LDNvLDR2LDVnL3N5OTg6MXcsMmEsMzUsNG0sNTQsNnIvc3k5OToxdywyNCwyYSwydywzNSwzdywzeCw0bSw1NCw2ci9zeTlhOmosaywxdSwxdywzNi9zeTliOmosayxxLDF5LDIzLDJ6LDN0LDQzLDZ5LDdtL3N5OWM6MjUsMjYsMjcsMmIsN3Qvc3k5ZDo3by9zeTllOjFvLDFzLDF3LDIzLDRzLDZiL3N5OWY6aywyNSw3dC9zeTlnOmssMjUsMzEsM2wsM3IsNHUsNTksNWQvc3k5aDoyNSwyNywyaS9zeTlpOmssMTEsMjUsMjgsMmksM3IsNGYsNXkvc3k5ajpqLGsscSwxeSwybCwyciwzMSw0dSw1OS9zeTlrOjI3LDQxL3N5OWw6MXcsMjgsMmksMzEsM3IsNHUsNTkvc3k5bTprLDI1LDJsLDMxLDR1LDU5L3N5OW46MjUvc3k5bzprLDI1LDJ0LDMxLDM1LDNpLDNvLDN6LDR1LDU5L3N5OXA6MjUsMm8sMzEsNHUsNTkvc3k5cToyNSwyNyw3dCw4Yy9zeTlyOmssMjUsMmYsMmwsM2wsNXMsNmcvc3k5dDoyaSw1Yy9zeTl1OnMsMXMsMXcsMjMsMnUsM2MsNTIsNmQvc3k5djozNSwzayw0MSw2ai9zeTl3OjQwL3N5OXg6aixxLDE4LDF3LDM1LDRtLDU0L2Jhc2Vfc3luY19tb2RfY2h1bms6NXYvcjlLTWpiOjhqL1ZjR1M4OjhrL3pDa0tCYzoyeC9pNlhvbWU6OHYvbk81ZFRkOjd4L090S1NKZTozai9udlg0VmI6M3kvRGx2RjFkOjQxLGFiL2Y5MHRDYjo3bC9WYlhyVWU6OGcsYWMsYWQvcEVTbERiOjhpL0ttQmZjYzo5NS9TVTN1aTo5aS9SYXE0Y2I6OHAvakJpc2FmOjU1L1B6VWRaYjo0OC9xVExkUTo4bi9XcWxjVmI6OG8vUUhBdGVmOjh0LGFjL1VBOEdTZTo4eCxhYy9MVmlNTTo3NixhYi9wZXZ0dmM6OWYvaXpqbVA6OWcvamd4OG1lOmExLGFjL3VobExHYjo2cy9GcUhjR2U6OWIvY3lDVmxkOjRpL29QcDVMZTo4Mi9BNG9BVmU6OTcvT3NtNDljOjg2L1BEdjZNZTo5OSxheS9vc1R0eGU6OHEvcVZEZ0JkOjhyL0hEbVUxZTo3dC9MSFA3SmQ6N28vVHUzTUI6N3AsYjMvRnNvWHpjOjdxLGFjLGI0L2lhaTJpYzo5Mi90UGdZemQ6ODcvYTY2TGZlOjk0L0lXcFVyZjo4OC9kSGNvSWY6OTYvb1hCV0hmOjk4L0lUdUNVYjo2cC9OcjBrZmU6ODUvYWNGdVZjOjhzLGJkL21tMk4wYzo5aC9oYjBXbWY6N2QvaE5lbHZkOmEzL3I1Q09IZjo3aS9aUUt4MToycS9wZTJvamI6MzIsYTcsYmovaGFvdU9lOjg5L2pKZkNvZDphMixhYi93U240YWM6NnYsYWMsYXQsYmMvaGExSWk6OHkvT003eG9iOjh6LGFjLGIyLGI0LGJvL0ZpTkdPYzo2ayxhYy9Xc2lNaWM6Nm8sYWMvVUFNNW06NzQsYnEvRDlXTWQ6NncveTlub09iOjZ4LGJqL1cwZ1NLYjo2OSxhYy9Id2xPaGQ6NjUvaGpyTm46ODAvdkRjazFkOjRuLGJrL0h4amxiYjozYixiay9uMERIZzo3eS9uQnZCeWQ6OWosYjIvZURVRG9jOjlrLGIzL1ZPVVA5ZDo4ZCxidy9iemowamQ6OWEsYWIsYzMvdVJJYUM6OW0sYjIvY2dTRW9iOjljL1hlUlhCZDo5ZC9zNjQ5ajo5cS91U3hkbmI6OXMvV2ZmNkJkOjd1LGFjLGIyLGIzL1UzbXpzZDo5dC95UDBKQmQ6OXUvUnFhSnNkOjl2L0UzSGViYzo5dy9wMXZFU2Q6YTAvQVQ4TFRlOjl5L3NET1RHZTo5bi9lY3VQQWM6NmgvTlFjMUlkOjhmL0ZRZElKZTo5ei9ibFpaWGU6OGgsYWMvZ0FPWXg6NmEvSU5jMUVmOjdnLGJrLGNtL2xQV2prYjo0byxhYy9vakdUNmQ6OHUvZDJMVHhiOjRrLGF2L0haNDFPZDo4dyxiay9lM1V0Vzo4ZSxiMy9hVTFHVGI6OTAsY28vSWJ4eE9lOjkxL3ZpVVdWOjU4L0R2WkM5OjlsL2ZBemRUOjZjLGJrLGJ2LGJ3LGNtL2ZnbEpOYjo4YSxjbS9pbFFTQWY6OW8vVWtadVdiOjlyLGFjL2w4YUtEYjo3ay9jbnE1UWI6OXgsYjIvbjlESkJmOjd3L2ZLRThxZDo3Yy9uN2VvMjo5cC9SWmVrSjo5ZS9RbWtNRTo3aCxhYy9OdWlsdWU6NzksYWEsYWosYWssYnksYnosY28sY3EvbWVIOUViOjUsNXQsYWEsYWssYnksYnosY28sY3EsY3YveUVmTkZiOjVqLGFqLGQ5L3I3OERyYjo1dSxhaixkOScsWydzeTEnLCdzeTUnLCdzeTYnLCdzeTcnLCdzeTgnLCdzeWMnLCdzeWcnLCdzeWgnLCdzeWEnLCdzeTknLCdzeWsnLCdzeWInLCdzeWQnLCdzeWUnLCdzeWYnLCdzeWknLCdzeWonLCdzeWwnLCdzeW0nLCdiYXNlJ10pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgUHQsUXQsVnQ7Xy5NdD1mdW5jdGlvbihhKXt2YXIgYj1fLmpmO2ZvcihsZXQgYz0wLGQ9YS5sZW5ndGg7YzxkO2MrKyliLkFhKGFbY10pfTtfLk50PWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uamYuR2EoYSw0LGIpfTtfLk90PWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgXy5CZihmdW5jdGlvbihiLGMpe2MoYSl9KX07UHQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhLmNsYXNzTmFtZT09InN0cmluZyI/YS5jbGFzc05hbWU6YS5nZXRBdHRyaWJ1dGUmJmEuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIn07UXQ9ZnVuY3Rpb24oYSxiKXt0eXBlb2YgYS5jbGFzc05hbWU9PSJzdHJpbmciP2EuY2xhc3NOYW1lPWI6YS5zZXRBdHRyaWJ1dGUmJmEuc2V0QXR0cmlidXRlKCJjbGFzcyIsYil9OwpfLlJ0PWZ1bmN0aW9uKGEsYil7YS5jbGFzc0xpc3Q/Yj1hLmNsYXNzTGlzdC5jb250YWlucyhiKTooYT1hLmNsYXNzTGlzdD9hLmNsYXNzTGlzdDpQdChhKS5tYXRjaCgvXFMrL2cpfHxbXSxiPV8uc2IoYSxiKT49MCk7cmV0dXJuIGJ9O18uU3Q9ZnVuY3Rpb24oYSxiKXtpZihhLmNsYXNzTGlzdClhLmNsYXNzTGlzdC5hZGQoYik7ZWxzZSBpZighXy5SdChhLGIpKXtsZXQgYz1QdChhKTtRdChhLGMrKGMubGVuZ3RoPjA/IiAiK2I6YikpfX07Xy5UdD1mdW5jdGlvbihhLGIpe2EuY2xhc3NMaXN0P2EuY2xhc3NMaXN0LnJlbW92ZShiKTpfLlJ0KGEsYikmJlF0KGEsQXJyYXkucHJvdG90eXBlLmZpbHRlci5jYWxsKGEuY2xhc3NMaXN0P2EuY2xhc3NMaXN0OlB0KGEpLm1hdGNoKC9cUysvZyl8fFtdLGZ1bmN0aW9uKGMpe3JldHVybiBjIT1ifSkuam9pbigiICIpKX07Cl8uVXQ9ZnVuY3Rpb24oYSxiKXtpZih0eXBlb2YgYSE9PSJmdW5jdGlvbiIpaWYoYSYmdHlwZW9mIGEuaGFuZGxlRXZlbnQ9PSJmdW5jdGlvbiIpYT0oMCxfLkNhKShhLmhhbmRsZUV2ZW50LGEpO2Vsc2UgdGhyb3cgRXJyb3IoIk9hIik7cmV0dXJuIE51bWJlcihiKT4yMTQ3NDgzNjQ3Py0xOl8udS5zZXRUaW1lb3V0KGEsYnx8MCl9O1Z0PWZ1bmN0aW9uKGEpe2Euaj1fLlV0KCgpPT57YS5qPW51bGw7YS5vJiYhYS5CJiYoYS5vPSExLFZ0KGEpKX0sYS5JKTt2YXIgYj1hLkQ7YS5EPW51bGw7YS5NLmFwcGx5KG51bGwsYil9O18uV3Q9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKGEsYixjKXtzdXBlcigpO3RoaXMuTT1jIT1udWxsP2EuYmluZChjKTphO3RoaXMuST1iO3RoaXMuRD1udWxsO3RoaXMubz0hMTt0aGlzLkI9MDt0aGlzLmo9bnVsbH12KGEpe3RoaXMuRD1hcmd1bWVudHM7dGhpcy5qfHx0aGlzLkI/dGhpcy5vPSEwOlZ0KHRoaXMpfXN0b3AoKXt0aGlzLmomJihfLnUuY2xlYXJUaW1lb3V0KHRoaXMuaiksdGhpcy5qPW51bGwsdGhpcy5vPSExLHRoaXMuRD1udWxsKX1wYXVzZSgpe3RoaXMuQisrfXJlc3VtZSgpe3RoaXMuQi0tO3RoaXMuQnx8IXRoaXMub3x8dGhpcy5qfHwodGhpcy5vPSExLFZ0KHRoaXMpKX1sYSgpe3N1cGVyLmxhKCk7dGhpcy5zdG9wKCl9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKLyoKCiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQoqLwp2YXIgc3UscXUsb3UsdXUsbnUsenUsQXUsRHUsR3UsSHUsSXUsTnUsVHUsVnUsJHUsaXYsbXYscXYscnY7Xy5YdD1mdW5jdGlvbihhKXtyZXR1cm4gYT09bnVsbHx8dHlwZW9mIGE9PT0ic3RyaW5nIj9hOnZvaWQgMH07Xy5ZdD1hc3luYyBmdW5jdGlvbihhLGIpe3ZhciBjPV8ueSgpLGQ9Yy5yZXNvbHZlKF8uSW4oYSkpO2Q/KGIoZCksUHJvbWlzZS5yZXNvbHZlKGQpKTpjLnJlc29sdmUobmV3IF8uVXMoYSkpLnRoZW4oZT0+e2IoZSk7cmV0dXJuIGV9KX07Xy4kdD1mdW5jdGlvbihhKXt2YXIgYj1fLlp0O18uWnQ9YTtyZXR1cm4gYn07Xy5idT1mdW5jdGlvbihhKXtyZXR1cm4gYT09PV8uYXV8fGE/Lm5hbWU9PT0iXHUwMjc1Tm90Rm91bmQifTtfLmN1PWZ1bmN0aW9uKGEsYil7aWYoYT8uaWEpdGhyb3cgRXJyb3IoIlNhYCIrU3RyaW5nKGEuZGVidWdOYW1lKSk7Zm9yKDthIT09dm9pZCAwOyl7bGV0IGM9YTtpZihjLlJoKXJldHVybiBjLlJoKGIse29wdGlvbmFsOiEwfSk7YT1hLnBhcmVudH1yZXR1cm4gXy5hdX07Cl8uZHU9ZnVuY3Rpb24oYSl7cmV0dXJue2Rlc2NyaXB0aW9uOmEsQ2I6e016OiJyb290Iix0b2tlbjpTeW1ib2woYSksS3A6dm9pZCAwLHZhbHVlOnZvaWQgMH19fTtfLmV1PWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYSYmYj9gJHthfV9fJHtifWA6YT8/Yj8/Y307Xy5ndT1mdW5jdGlvbihhLGIpe3JldHVybnsuLi5fLmR1KGI/PyIiKSxbXy5mdV06ITAsZGVidWdOYW1lOmI/PyJbY29udGV4dF0iLGRlZmF1bHRWYWx1ZTphPy5kZWZhdWx0VmFsdWUscmVxdWlyZWQ6IWF8fCFPYmplY3QuaGFzT3duKGEsImRlZmF1bHRWYWx1ZSIpLGlkOmIsT0s6dm9pZCAwfX07Xy5odT1mdW5jdGlvbihhLGIpe2I9Xy5jdShiLGEpO2lmKF8uYnUoYikpe2lmKGEucmVxdWlyZWQpdGhyb3cgRXJyb3IoImpiYCIrYS5kZWJ1Z05hbWUpO3JldHVybiBhLmRlZmF1bHRWYWx1ZX1yZXR1cm4gYn07Xy5pdT1mdW5jdGlvbihhLGIpe3JldHVybiBPYmplY3QuaXMoYSxiKX07Cl8ua3U9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5qdTtfLmp1PWE7cmV0dXJuIGJ9O18ucHU9ZnVuY3Rpb24oYSl7aWYobHUpdGhyb3cgRXJyb3IoImgiKTtpZihfLmp1IT09bnVsbCl7Xy5qdS5pcChhKTt2YXIgYj1fLmp1LmtmO2lmKGI9PT12b2lkIDB8fGIuTWghPT1hKXt2YXIgYz12b2lkIDAsZD1fLmp1LmNuO2lmKGQmJihjPWIhPT12b2lkIDA/Yi5yZTpfLmp1LnByb2R1Y2VycyxjIT09dm9pZCAwJiZjLk1oPT09YSkpe18uanUua2Y9YztjLkhxPWEudmVyc2lvbjtjLm9qPV8ubXU7cmV0dXJufXZhciBlPWEuVWc7aWYoZT09PXZvaWQgMHx8ZS5EZiE9PV8uanV8fGQmJmUub2ohPT1fLm11KWQ9bnUoXy5qdSksYz17TWg6YSxEZjpfLmp1LHJlOmMsTWo6dm9pZCAwLG9qOl8ubXUsSHE6YS52ZXJzaW9uLHFlOnZvaWQgMH0sXy5qdS5rZj1jLGIhPT12b2lkIDA/Yi5yZT1jOl8uanUucHJvZHVjZXJzPWMsZCYmb3UoYSxjKX19fTsKXy5ydT1mdW5jdGlvbihhKXtpZighbnUoYSl8fGEuUGIpaWYoYS5QYnx8YS5yaiE9PV8ubXUpKGEuWG0oYSl8fHF1KGEpKSYmYS5ZbShhKSxhLlBiPSExLGEucmo9Xy5tdX07c3U9ZnVuY3Rpb24oYSl7aWYoYS5jb25zdW1lcnMhPT12b2lkIDApe3ZhciBiPWx1O2x1PSEwO3RyeXtmb3IobGV0IGM9YS5jb25zdW1lcnM7YyE9PXZvaWQgMDtjPWMucWUpe2xldCBkPWMuRGY7ZC5QYnx8KGQuUGI9ITAsc3UoZCksZC5ocD8uKGQpKX19ZmluYWxseXtsdT1ifX19O18udHU9ZnVuY3Rpb24oYSl7aWYoYSl7aWYoYS5rZj8ub2o9PT1fLm11KXtsZXQgYj1hLnByb2R1Y2Vycztmb3IoO2IhPT12b2lkIDA7KWIub2o9bnVsbCxiPWIucmV9YS5rZj12b2lkIDA7YS5jbj0hMH1yZXR1cm4gXy5rdShhKX07Cl8udnU9ZnVuY3Rpb24oYSl7YS5jbj0hMTt2YXIgYj1hLmtmLGM9YiE9PXZvaWQgMD9iLnJlOmEucHJvZHVjZXJzO2lmKGMhPT12b2lkIDApe2lmKG51KGEpKXtkbyBjPXV1KGMpO3doaWxlKGMhPT12b2lkIDApfWIhPT12b2lkIDA/Yi5yZT12b2lkIDA6YS5wcm9kdWNlcnM9dm9pZCAwfX07cXU9ZnVuY3Rpb24oYSl7Zm9yKGE9YS5wcm9kdWNlcnM7YSE9PXZvaWQgMDthPWEucmUpe2xldCBiPWEuTWgsYz1hLkhxO2lmKGMhPT1iLnZlcnNpb24pcmV0dXJuITA7Xy5ydShiKTtpZihjIT09Yi52ZXJzaW9uKXJldHVybiEwfXJldHVybiExfTtvdT1mdW5jdGlvbihhLGIpe3ZhciBjPWEuVWcsZD1udShhKTtjIT09dm9pZCAwPyhiLnFlPWMucWUsYy5xZT1iKTooYi5xZT12b2lkIDAsYS5jb25zdW1lcnM9Yik7Yi5Naj1jO2EuVWc9YjtpZighZClmb3IoYT1hLnByb2R1Y2VyczthIT09dm9pZCAwO2E9YS5yZSlvdShhLk1oLGEpfTsKdXU9ZnVuY3Rpb24oYSl7dmFyIGI9YS5NaCxjPWEucmUsZD1hLnFlLGU9YS5NajthLnFlPXZvaWQgMDthLk1qPXZvaWQgMDtkIT09dm9pZCAwP2QuTWo9ZTpiLlVnPWU7aWYoZSE9PXZvaWQgMCllLnFlPWQ7ZWxzZSBpZihiLmNvbnN1bWVycz1kLCFudShiKSlmb3IoYT1iLnByb2R1Y2VyczthIT09dm9pZCAwOylhPXV1KGEpO3JldHVybiBjfTtudT1mdW5jdGlvbihhKXtyZXR1cm4gYS5ncHx8YS5jb25zdW1lcnMhPT12b2lkIDB9O18ud3U9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigpO307Xy55dT1mdW5jdGlvbihhLGIpe18uanU/LkxlIT09ITF8fF8ud3UoYSk7YS5lcXVhbChhLnZhbHVlLGIpfHwoYS52YWx1ZT1iLGEudmVyc2lvbisrLF8ubXUrKyxzdShhKSx4dT8uKGEpKX07enU9ZnVuY3Rpb24oYSxiKXtiLnptPXZvaWQgMDthLlpqP2EuWmouem09YjphLlVrPWI7YS5aaj1ifTtBdT1mdW5jdGlvbihhLGIpe3p1KGEse1tTeW1ib2wuZGlzcG9zZV06Yn0pfTsKXy5CdT1mdW5jdGlvbihhKXt2YXIgYj1fLlp0O2ImJiFiLmlhJiYoenUoYixhKSxhLnBhcmVudD1iKX07RHU9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPWEuVWs7Yjspe2xldCBjPWIuem07Xy5DdShiKTtiPWN9YS5Vaz12b2lkIDA7YS5aaj12b2lkIDB9O18uQ3U9ZnVuY3Rpb24oYSl7YS5pYXx8KGEuaWE9ITAsYVtTeW1ib2wuZGlzcG9zZV0/LigpLGEucGFyZW50PXZvaWQgMCxEdShhKSl9O18uRnU9ZnVuY3Rpb24oYSl7cmV0dXJuKDAsXy5xcikoYSkmJl8uRXUgaW4gYX07R3U9ZnVuY3Rpb24oYT1fLlp0KXtmb3IoO2E7KXtpZihfLkZ1KGEpKXJldHVybiBhO2E9YS5wYXJlbnQ/P251bGx9cmV0dXJuIG51bGx9O0h1PWZ1bmN0aW9uKGE9Xy5adCl7Zm9yKHZhciBiPVtdO2E7KV8uRnUoYSkmJmIucHVzaChhLmRlYnVnTmFtZSksYT1hLnBhcmVudD8/bnVsbDtyZXR1cm4gYn07Ckl1PWZ1bmN0aW9uKGEpe3JldHVybigwLF8ucXIpKGEpJiZhLm5hbWUhPT12b2lkIDAmJmEubGohPT12b2lkIDAmJmEucGFyZW50IT09dm9pZCAwfTtfLkx1PWZ1bmN0aW9uKCl7dmFyIGE9ey4uLkp1fTtPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhKdSkuZm9yRWFjaChiPT57Xy5LdVtiXSE9PXZvaWQgMCYmKGFbYl09Xy5LdVtiXSl9KTtyZXR1cm4gYX07Xy5SdT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Xy5NdTtiJiYoXy5NdT1iKTt0cnl7cmV0dXJuIGM9PW51bGw/YSgpOmEuY2FsbChjKX1jYXRjaChlKXtOdShlLF8uTXUpO2lmKGUhPT1PdSl7Xy5QdT1fLk11O2E9W107Zm9yKGI9Xy5adDtiOylhLnB1c2goYi5kZWJ1Z05hbWU/PyJbY29udGV4dF0iKSxiPWIucGFyZW50Pz9udWxsO18uUXU9YS5yZXZlcnNlKCl9T3U9ZTt0aHJvdyBlO31maW5hbGx5e18uTXU9ZH19OwpOdT1mdW5jdGlvbihhLGIpe3RyeXtsZXQgYz1fLlN1KGIpO2lmKGMmJiFhLk5kPy5jb21wb25lbnRTdGFjayYmKGEuTmQ/YS5OZC5jb21wb25lbnRTdGFja3x8KGEuTmQuY29tcG9uZW50U3RhY2s9Yyk6YS5OZD17Y29tcG9uZW50U3RhY2s6Y30sXy5LdS5Cdikpe2xldCBkPWAke2EubWVzc2FnZX1cblxuQ29tcG9uZW50IHN0YWNrOiAke2N9YDthLnN0YWNrJiYoYS5zdGFjaz1hLnN0YWNrLnJlcGxhY2UoYS5tZXNzYWdlLGQpKTthLm1lc3NhZ2U9ZH19Y2F0Y2h7fX07VHU9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgNDpjYXNlIDM6cmV0dXJuInNldmVyZSI7Y2FzZSAyOnJldHVybiJ3YXJuaW5nIjtjYXNlIDE6Y2FzZSAwOnJldHVybiJpbmZvIjtkZWZhdWx0OnJldHVybiJ1bmtub3duIn19OwpfLlV1PWZ1bmN0aW9uKGEsYixjKXtpZihhLk5kKXJldHVybiBhO3RyeXtsZXQgZD0oYT09PU91P18uUHU6bnVsbCk/P18uTXU7TnUoYSxkKTthLk5kPXtjb21wb25lbnRTdGFjazpfLlN1KGQpLGZoOmIsQWw6Xy5MdSgpLHRhZ05hbWU6YyxwcjpfLlF1Py5zbGljZSgpPz9bXX07YS5yZXBvcnRTZXZlcml0eT1UdShiKX1jYXRjaHt9cmV0dXJuIGF9O1Z1PWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wLGM9IiI7YjwyMCYmYTspYys9YCR7YCQkWElEOiR7YS5uYW1lfSQkYH0gPiBgLGE9YS5wYXJlbnQsYisrO3JldHVybiBjLnNsaWNlKDAsLTMpfTtfLlN1PWZ1bmN0aW9uKGEpe3JldHVybiBJdShhKXx8YT09PW51bGw/VnUoYSk6Xy5LdS5GcD8oYT1HdShhKSxIdShhKS5zbGljZSgwLDIwKS5tYXAoYj0+YCQkWElEOiR7Yn0kJGApLmpvaW4oIiA+ICIpKToiIn07Cl8uWXU9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5adDtpZihiKXt2YXIgYz1fLk11O0F1KGIsKCk9Pnt2YXIgZD1fLmt1KF8uV3U/PyhfLld1PU9iamVjdC5jcmVhdGUoey4uLl8uWHUsTGU6ITB9KSkpO3RyeXtfLlJ1KCgpPT52b2lkIGEoKSxjKX1jYXRjaChlKXt0aHJvdyBfLlV1KGUsNCksZTt9ZmluYWxseXtfLmt1KGQpfX0pfWVsc2UgXy5qdT09PV8uV3U/UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoRXJyb3IoIlhhIiksMik7fSk6UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoRXJyb3IoIiRhIiksMik7fSl9OyR1PWZ1bmN0aW9uKGEpe3ZhciBiPSgpPT57Xy5wdShhKTtyZXR1cm4gYS52YWx1ZX07YltfLlp1XT1hO3JldHVybltiLGM9PntfLnl1KGEsYyl9LGM9PntfLmp1Py5MZSE9PSExfHxfLnd1KGEpO18ueXUoYSxjKGEudmFsdWUpKX1dfTsKXy5KPWZ1bmN0aW9uKGEsYixjPSIiKXt2YXIgZD1PYmplY3QuY3JlYXRlKGF2KTtkLnZhbHVlPWE7Yj8uZXF1YWxzIT09dm9pZCAwJiYoZC5lcXVhbD1iLmVxdWFscyk7ZC5kZWJ1Z05hbWU9Xy5ldShiPy5kZWJ1Z05hbWUsYywiW3NpZ25hbF0iKTtyZXR1cm4gJHUoZCl9O18uZnY9ZnVuY3Rpb24oYSl7aWYoIWEuaWEpc3dpdGNoKGEuZWZmZWN0VHlwZSl7Y2FzZSBidjpfLmN2LnNjaGVkdWxlKGEpO2JyZWFrO2Nhc2UgXy5kdjpldi5zY2hlZHVsZShhKTticmVhaztkZWZhdWx0Ol8uZWIoYS5lZmZlY3RUeXBlLHZvaWQgMCl9fTtfLmp2PWZ1bmN0aW9uKCl7aWYoXy5ndj4wKV8uS3UuUmkmJl8uY3YuZmx1c2goKTtlbHNle2ZvcihsZXQgYSBvZiBodilhLmZsdXNoKCk7aXYoKX19O2l2PWFzeW5jIGZ1bmN0aW9uKCl7YXdhaXQgUHJvbWlzZS5yZXNvbHZlKCk7Zm9yKGxldCBhIG9mIGt2KWEuZmx1c2goKX07Cm12PWZ1bmN0aW9uKGEpe3ZhciBiPWEuaXNGbHVzaGluZzthLmlzRmx1c2hpbmc9ITA7dHJ5e2xldCBjPTA7Zm9yKDtjPGEuWmI7KXtsZXQgZD1hLkRkW2NdO2EuRGRbY109dm9pZCAwO2MrKztpZighZHx8IWQuUGIpY29udGludWU7bGV0IGU9W2RdLGY9ZDtmb3IoO2YucGFyZW50IT09dm9pZCAwOylmPWYucGFyZW50LCgwLF8ubHYpKGYpJiZmLlBiJiZlLnB1c2goZik7Zm9yKDtlLmxlbmd0aD4wOyllLnBvcCgpLnJ1bigpfWEuWmI9MH1maW5hbGx5e2EuaXNGbHVzaGluZz1ifX07Xy5vdj1mdW5jdGlvbihhLGI9Xy5adCl7aWYoYiYmIWIuaWEmJihiPV8uaHUobnYsYiksYj8ucmVwb3J0RXJyb3IpKXtiLnJlcG9ydEVycm9yKGEpO3JldHVybn10aHJvdyBhO307Cl8ucHY9ZnVuY3Rpb24oYSxiLGMpe2E9T2JqZWN0LmNyZWF0ZShhKTtiJiYoYS5mbj1iKTtjJiYoYS5kZWJ1Z05hbWU9Yyk7Xy5qdT09PV8uV3U/UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoRXJyb3IoIlRhIiksMik7fSk6Xy5adD09PW51bGw/UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoRXJyb3IoImNiIiksMik7fSk6Xy5CdShhKTthLmNvbXBvbmVudFN0YWNrPV8uTXU7cmV0dXJuIGF9O3F2PWZ1bmN0aW9uKGEpe2lmKCFhLmlhKXtpZihsdSl0aHJvdyBfLlV1KEVycm9yKCJ4YiIpLDQpO3ZhciBiPV8uJHQoYSk7dHJ5e18uUnUoKCk9PnthLlBiPSExO2lmKCEoYS52ZXJzaW9uPjApfHxxdShhKSl7YS52ZXJzaW9uKys7dmFyIGM9Xy50dShhKTt0cnl7YS5WaygpLGEuZm4oKX1maW5hbGx5e18ua3UoYyksYSYmXy52dShhKX19fSxhLmNvbXBvbmVudFN0YWNrLGEpfWNhdGNoKGMpe18uVXUoYyw0KSxfLm92KGMpfWZpbmFsbHl7Xy4kdChiKX19fTsKcnY9ZnVuY3Rpb24oYSl7dmFyIGI9RXJyb3IoIlphYCIrYS5kZWJ1Z05hbWUpO18uVXUoYiw0KTtQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57dGhyb3cgYjt9KX07Xy50dj1mdW5jdGlvbihhLGIpe2E9Xy5wdihzdixhLGIpO18uZnYoYSl9O18udXY9ZnVuY3Rpb24oYSxiPSEwKXt2YXIgYz17cGFyZW50OnZvaWQgMCxpYTohMSxVazp2b2lkIDAsWmo6dm9pZCAwLHptOnZvaWQgMH07YiYmXy5CdShjKTtiPV8uJHQoYyk7dHJ5e2EoYyl9ZmluYWxseXtfLiR0KGIpfXJldHVybigpPT52b2lkIF8uQ3UoYyl9O18udnY9ZnVuY3Rpb24oKXt9O18ud3Y9ZnVuY3Rpb24oKXt9O18ueHY9ZnVuY3Rpb24oKXt9O18uQnY9ZnVuY3Rpb24oYSl7aWYoXy5qdT09PV8ueXZ8fF8uanU9PT1fLnp2KXRocm93IF8uVXUoRXJyb3IoIllhIiksNCk7cmV0dXJuIHR5cGVvZiBhPT09ImZ1bmN0aW9uIj9hKCk6YT8uW0F2XT9hLmdldCgpOmF9O18uQ3Y9ZnVuY3Rpb24oKXt9O18uRHY9e307Cl8uVXM9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qdj1hfX07Xy5Fdj1fLnUuSlNPTi5wYXJzZTtuZXcgY2xhc3MgZXh0ZW5kcyBfLmFle2luaXQoKXt9fTtfLkVhKCk7Xy5adD12b2lkIDA7Xy5hdT1TeW1ib2woImRiIik7dmFyIEZ2LGJ2O0Z2PVN5bWJvbCgiZWIiKTtidj1TeW1ib2woImZiIik7Xy5kdj1TeW1ib2woImdiIik7Xy5sdj1fLkNjKGE9PigwLF8ucXIpKGEpJiZGdiBpbiBhKTtfLmZ1PVN5bWJvbCgiaGIiKTt2YXIgbHU7Xy5qdT1udWxsO2x1PSExO18ubXU9MTtfLlp1PVN5bWJvbCgia2IiKTtfLlh1PXt2ZXJzaW9uOjAscmo6MCxQYjohMSxwcm9kdWNlcnM6dm9pZCAwLGtmOnZvaWQgMCxjb25zdW1lcnM6dm9pZCAwLFVnOnZvaWQgMCxjbjohMSxMZTohMSxncDohMSxraW5kOiJ1bmtub3duIixYbTooKT0+ITEsWW06KCk9Pnt9LGhwOigpPT57fSxpcDooKT0+e319O18uR3Y9U3ltYm9sKCJsYiIpO18uSHY9U3ltYm9sKCJtYiIpO18uSXY9U3ltYm9sKCJuYiIpO3ZhciBKdj17Li4uXy5YdSxncDohMCxMZTohMCxQYjohMCxraW5kOiJlZmZlY3QifTt2YXIgeHU9bnVsbCxhdj17Li4uXy5YdSxlcXVhbDpfLml1LHZhbHVlOnZvaWQgMCxraW5kOiJzaWduYWwifTtfLkt2PVN5bWJvbCgib2IiKTtfLkx2PVN5bWJvbCgicGIiKTtfLk12PVN5bWJvbCgicWIiKTtfLkV1PVN5bWJvbCgicmIiKTt2YXIgSnU9e3l2OiEwLEJ2OiExLEZwOl8uWXEsR3A6Xy5ZcSxHdjohMSxyaTohMSxISTohMCxSaTohMSxKcTohMX07Xy5LdT17YXR0cmlidXRlczp7fSxoYW5kbGVFcnJvcihhKXt0aHJvdyBhO30sLi4uSnV9O3ZhciBPdTtfLk11PW51bGw7Xy5QdT1udWxsO18uTnY9bmV3IFNldDtfLk92PW5ldyBjbGFzc3tjb25zdHJ1Y3Rvcigpe319O3ZhciBQdixTdixUdixWdixXdixYdixldixodixrdixadjtfLmd2PTA7UHY9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmlzRmx1c2hpbmc9ITE7dGhpcy5EZD1bXTt0aGlzLlpiPTB9c2NoZWR1bGUoYSl7dGhpcy5EZFt0aGlzLlpiKytdPWF9Y2xlYXIoKXtmb3IobGV0IGE9MDthPHRoaXMuWmI7YSsrKXRoaXMuRGRbYV09dm9pZCAwO3RoaXMuWmI9MH19O18uUXY9U3ltYm9sKCJ3YiIpO1N2PWNsYXNzIGV4dGVuZHMgUHZ7Zmx1c2goKXtpZih0aGlzLlpiIT09MCl7Zm9yKHZhciBhPTA7YTx0aGlzLlpiOyl7bGV0IGI9dGhpcy5EZFthXTt0aGlzLkRkW2FdPXZvaWQgMDthKys7aWYoYil0cnl7Yi5ydW4oKX1jYXRjaChjKXtSdihjKX19dGhpcy5aYj0wfX19O1R2PWNsYXNzIGV4dGVuZHMgU3Z7fTtfLlV2PW5ldyBUdjtWdj1jbGFzcyBleHRlbmRzIFB2e2ZsdXNoKCl7dGhpcy5aYj09PTB8fHRoaXMuaXNGbHVzaGluZ3x8bXYodGhpcyl9fTsKV3Y9Y2xhc3MgZXh0ZW5kcyBWdntzY2hlZHVsZShhKXthLnZlcnNpb249PT0wP2EucnVuKCk6c3VwZXIuc2NoZWR1bGUoYSl9Zmx1c2goKXtpZih0aGlzLlpiIT09MClpZihfLkt1LlJpKXtsZXQgYT17RGQ6dGhpcy5EZCxaYjp0aGlzLlpiLGlzRmx1c2hpbmc6ITF9O3RoaXMuRGQ9W107dGhpcy5aYj0wO212KGEpfWVsc2UgdGhpcy5pc0ZsdXNoaW5nfHxtdih0aGlzKX19O18uY3Y9bmV3IFd2O1h2PWNsYXNzIGV4dGVuZHMgVnZ7fTtldj1uZXcgWHY7aHY9W18uY3ZdO2t2PVtfLlV2LGV2XTtfLll2PVsuLi5odiwuLi5rdl07WnY9W107eHU9KCk9PntfLmp2KCk7Zm9yKGxldCBhIG9mIFp2KWEoKX07dmFyIFJ2PV8uJGI7dmFyIG52PV8uZ3Uoe2RlZmF1bHRWYWx1ZTpudWxsfSwiaW0xTWtmIik7Xy4kdj17Li4uSnYsW0Z2XTohMCxlZmZlY3RUeXBlOmJ2LEVKOiEwLGhwOl8uZnYscnVuKCl7cXYodGhpcyl9LFZrKCl7RHUodGhpcyl9LGNvbXBvbmVudFN0YWNrOnZvaWQgMCxkZWJ1Z05hbWU6IltlZmZlY3RdIixkZXN0cm95KCl7aWYobnUodGhpcykpe2xldCBhPXRoaXMucHJvZHVjZXJzO2Zvcig7YSE9PXZvaWQgMDspYT11dShhKX10aGlzLlVnPXRoaXMuY29uc3VtZXJzPXRoaXMua2Y9dGhpcy5wcm9kdWNlcnM9dm9pZCAwO18uQ3UodGhpcyk7dGhpcy5QYj0hMX0sW1N5bWJvbC5kaXNwb3NlXSgpe3RoaXMuZGVzdHJveSgpfX07dmFyIGF3O2F3PXtpcDpydn07Xy55dj1PYmplY3QuY3JlYXRlKHsuLi5fLlh1LExlOiEwLC4uLmF3fSk7Xy56dj1PYmplY3QuY3JlYXRlKHsuLi5fLlh1LExlOiEwLC4uLmF3fSk7dmFyIHN2PXsuLi5fLiR2LGVmZmVjdFR5cGU6YnZ9O18uYnc9e1BIKCl7fSxlSygpe30sWUgoKXt9LFNvKCl7fSxRSCgpe30sSmkoKXt9LEdmKCl7fSxIZigpe30sS2koKXt9fTt2YXIgQXY9U3ltYm9sKCJLYiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgZXc7Xy5jdz1mdW5jdGlvbihhLC4uLmIpe2EuYXJnc3x8KGEuYXJncz1bXSk7QXJyYXkuaXNBcnJheShhLmFyZ3MpJiZhLmFyZ3MucHVzaCguLi5iKX07Xy5kdz1mdW5jdGlvbihhKXtmb3IobGV0IGIgaW4gYSl7bGV0IGM9Xy5id1tiXSxkPWFbYl07Xy5id1tiXT0oLi4uZSk9PntjKC4uLmUpO2QoLi4uZSl9fX07Xy5mdz1mdW5jdGlvbihhKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsXy5FcSkmJmFbXy5FcV18fChhW18uRXFdPSsrZXcpfTtfLmd3PWZ1bmN0aW9uKGEsYixjKXthJiYhYyYmKGE9YS5wYXJlbnROb2RlKTtmb3IoYz0wO2E7KXtpZihiKGEpKXJldHVybiBhO2E9YS5wYXJlbnROb2RlO2MrK31yZXR1cm4gbnVsbH07Xy5odz1mdW5jdGlvbihhKXtyZXR1cm4gYT8oYT1hLnByaXZhdGVEb05vdEFjY2Vzc09yRWxzZVRydXN0ZWRSZXNvdXJjZVVybFdyYXBwZWRWYWx1ZSk/Xy5UYShhKTpudWxsOm51bGx9OwpfLml3PWZ1bmN0aW9uKGEpe2lmKF8uWnQpdGhyb3cgXy5VdShFcnJvcigiYWIiKSw0KTtyZXR1cm4gXy51dihiPT57Xy5ZdSgoKT0+e30pO2EoYil9LCExKX07ZXc9MDt2YXIganc7anc9e25hbWU6IjxSb290PiIscHJvcHM6e30sS3o6e30sZWZmZWN0czpbXSxkSTpbXSxnSTooKT0+e30sW1N5bWJvbCgiSmIiKV06ITB9OyhuZXcgV2Vha01hcCkuc2V0KGp3Lkt6LHtuYW1lOmp3Lm5hbWUscHJvcHM6ancucHJvcHN9KTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIHN3LHl3LHR3LHJ3O18ua3c9ZnVuY3Rpb24oYSxiLGMpe2lmKGEhPW51bGwmJmFbXy5PY109PT1fLlBjKXJldHVybiBhO2lmKEFycmF5LmlzQXJyYXkoYSkpe3ZhciBkPWFbXy5BY118MDtjPWR8YyYzMnxjJjI7YyE9PWQmJihhW18uQWNdPWMpO3JldHVybiBuZXcgYihhKX19O18ubHc9ZnVuY3Rpb24oYSl7dmFyIGI9YS5EYSxjPWJbXy5BY118MDtyZXR1cm4gXy5CYyhhLGMpP18uJGMoYSxiLGMpP18uYmQoYSxiLCEwKTpuZXcgYS5jb25zdHJ1Y3RvcihfLlpjKGIsYywhMSkpOmF9O18ubXc9ZnVuY3Rpb24oYSl7aWYoYS5qIT09Xy56YylyZXR1cm4hMTt2YXIgYj1hLkRhO2I9Xy5aYyhiLGJbXy5BY118MCk7YltfLkFjXXw9MjA0ODthLkRhPWI7YS5qPXZvaWQgMDthLm89dm9pZCAwO3JldHVybiEwfTtfLm53PWZ1bmN0aW9uKGEpe2lmKCFfLm13KGEpJiZfLkJjKGEsYS5EYVtfLkFjXXwwKSl0aHJvdyBFcnJvcigpO307Cl8ub3c9ZnVuY3Rpb24oYSxiKXtiPT09dm9pZCAwJiYoYj1hW18uQWNdfDApO2ImMzImJiEoYiY0MDk2KSYmKGFbXy5BY109Ynw0MDk2KX07Xy5wdz1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPWMrKGU/MDotMSksaD1hLmxlbmd0aC0xO2lmKGg+PTErKGU/MDotMSkmJmY+PWgpe2xldCBrPWFbaF07aWYoayE9bnVsbCYmdHlwZW9mIGs9PT0ib2JqZWN0IiYmay5jb25zdHJ1Y3Rvcj09PU9iamVjdClyZXR1cm4ga1tjXT1kLGJ9aWYoZjw9aClyZXR1cm4gYVtmXT1kLGI7ZCE9PXZvaWQgMCYmKGg9KGI/PyhiPWFbXy5BY118MCkpPj4xNCYxMDIzfHw1MzY4NzA5MTIsYz49aD9kIT1udWxsJiYoYVtoKyhlPzA6LTEpXT17W2NdOmR9KTphW2ZdPWQpO3JldHVybiBifTtfLnF3PWZ1bmN0aW9uKGEsYixjLGQpe18ubncoYSk7dmFyIGU9YS5EYTtfLnB3KGUsZVtfLkFjXXwwLGIsYyxkKTtyZXR1cm4gYX07c3c9ZnVuY3Rpb24oYSl7cmV0dXJuIHJ3W2FdfHwiIn07Cl8udXc9ZnVuY3Rpb24oYSl7YT10dy50ZXN0KGEpP2EucmVwbGFjZSh0dyxzdyk6YTthPWF0b2IoYSk7dmFyIGI9bmV3IFVpbnQ4QXJyYXkoYS5sZW5ndGgpO2ZvcihsZXQgYz0wO2M8YS5sZW5ndGg7YysrKWJbY109YS5jaGFyQ29kZUF0KGMpO3JldHVybiBifTtfLnd3PWZ1bmN0aW9uKGEpe2lmKF8udnchPT1fLnZ3KXRocm93IEVycm9yKCJvIik7dmFyIGI9YS5qO2I9PW51bGx8fGIhPW51bGwmJmIgaW5zdGFuY2VvZiBVaW50OEFycmF5fHwodHlwZW9mIGI9PT0ic3RyaW5nIj9iPV8udXcoYik6KF8ueGEoYiksYj1udWxsKSk7cmV0dXJuIGI9PW51bGw/YjphLmo9Yn07Xy54dz1mdW5jdGlvbihhKXtpZihhIT1udWxsJiZ0eXBlb2YgYSE9PSJib29sZWFuIil0aHJvdyBFcnJvcigicmAiK18ueGEoYSkrImAiK2EpO3JldHVybiBhfTsKeXc9ZnVuY3Rpb24oKXt2YXIgYT1fLkRuKCk7dmFyIGI9W107Zm9yKGxldCBjPTA7YzxhLmxlbmd0aDtjKyspYi5wdXNoKCJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OS1fIi5jaGFyQXQoYVtjXSY2MykpO3JldHVybiBiLmpvaW4oIiIpfTt0dz0vWy1fLl0vZztydz17Ii0iOiIrIixfOiIvIiwiLiI6Ij0ifTtfLnZ3PXt9O18uenc9bmV3IF8uSSgid2ViQ29tbWFuZE1ldGFkYXRhIik7Xy5Bdz1uZXcgXy5JKCJ3YXRjaEVuZHBvaW50Iik7Xy5Cdz1jbGFzcyBleHRlbmRzIF8ucG17Y29uc3RydWN0b3IoYSl7c3VwZXIoYXJndW1lbnRzKTt0aGlzLmNzbj1hfX07Xy5Ddz1uZXcgXy5xbSgic2NyZWVuLWNyZWF0ZWQiLF8uQncpO18uRHc9eXc7Xy5Fdz1uZXcgTWFwO18uRnc9bmV3IE1hcDtfLkd3PW5ldyBNYXA7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBRdyxSdyxhYWEsYmFhLFh3LFN3LGF4LEx3LGNhYSxZdyxadztfLkh3PWZ1bmN0aW9uKGEsYil7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5tYXAuY2FsbChhLGIsdm9pZCAwKX07Xy5Jdz1mdW5jdGlvbihhKXthPUVycm9yKGEpO18uQmIoYSwid2FybmluZyIpO3JldHVybiBhfTtfLkp3PWZ1bmN0aW9uKGEpe2E9PW51bGwmJihhPXZvaWQgMCk7cmV0dXJuIGF9O18uS3c9ZnVuY3Rpb24oYSxiLGMsZCl7Yz1fLkp3KGMpO18ucXcoYSxiLGMsZCk7YyYmIV8uQmMoYykmJl8ub3coYS5EYSk7cmV0dXJuIGF9O18uTXc9ZnVuY3Rpb24oKXtyZXR1cm4gTHd8fChMdz1uZXcgXy5SYyhudWxsLF8udncpKX07Cl8uTnc9ZnVuY3Rpb24oYSxiKXtpZihhIT1udWxsKWlmKHR5cGVvZiBhPT09InN0cmluZyIpYT1hP25ldyBfLlJjKGEsXy52dyk6Xy5NdygpO2Vsc2UgaWYoYS5jb25zdHJ1Y3RvciE9PV8uUmMpaWYoYSE9bnVsbCYmYSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpYT1hLmxlbmd0aD9uZXcgXy5SYyhuZXcgVWludDhBcnJheShhKSxfLnZ3KTpfLk13KCk7ZWxzZXtpZighYil0aHJvdyBFcnJvcigpO2E9dm9pZCAwfXJldHVybiBhfTtfLk93PWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09Im51bWJlciIpdGhyb3cgXy5JdygiaW50MzIiKTtpZighKDAsXy53cikoYSkpdGhyb3cgXy5JdygiaW50MzIiKTtyZXR1cm4gYXwwfTtfLlB3PWZ1bmN0aW9uKGEpe3JldHVybiBhPT1udWxsP2E6Xy5PdyhhKX07ClF3PWZ1bmN0aW9uKGEpe3ZhciBiPV8ucm0oKTtpZighYilyZXR1cm4gMDt2YXIgYz1iLnN1YnNjcmliZShfLkN3LnRvU3RyaW5nKCksKGQsZSk9Pnt2YXIgZj1fLnNhKCJ5dFB1YnN1YjJQdWJzdWIyU2tpcFN1YktleSIpO2YmJmY9PWN8fChmPSgpPT57aWYoXy5Lc1tjXSl0cnl7aWYoZSYmXy5DdyBpbnN0YW5jZW9mIF8ucW0mJl8uQ3chPWQpdHJ5e3t2YXIgaD1fLkN3Lmosaz1lO2lmKCFrLmFyZ3N8fCFrLnZlcnNpb24pdGhyb3cgRXJyb3IoInBhIik7bGV0IGw7dHJ5e2lmKCFoLkFlKXtsZXQgbT1uZXcgaDtoLkFlPW0udmVyc2lvbn1sPWguQWV9Y2F0Y2gobSl7fWlmKCFsfHxrLnZlcnNpb24hPWwpdGhyb3cgRXJyb3IoInFhIik7dHJ5e2U9UmVmbGVjdC5jb25zdHJ1Y3QoaCxfLnliKGsuYXJncykpfWNhdGNoKG0pe3Rocm93IG0ubWVzc2FnZT0ieXQucHVic3ViMi5EYXRhLmRlc2VyaWFsaXplKCk6ICIrbS5tZXNzYWdlLG07fX19Y2F0Y2gobCl7dGhyb3cgbC5tZXNzYWdlPSJ5dC5wdWJzdWIyLnB1YnN1YjIgY3Jvc3MtYmluYXJ5IGNvbnZlcnNpb24gZXJyb3IgZm9yICIrCl8uQ3cudG9TdHJpbmcoKSsiOiAiK2wubWVzc2FnZSxsO31hLmNhbGwod2luZG93LGUpfWNhdGNoKGwpe18uVWkobCl9fSxfLk1zW18uQ3cudG9TdHJpbmcoKV0/Xy5zYSgieXQuc2NoZWR1bGVyLmluc3RhbmNlIik/Xy5qZi5wYihmKTpfLm1qKGYsMCk6ZigpKX0pO18uS3NbY109ITA7Xy5Mc1tfLkN3LnRvU3RyaW5nKCldfHwoXy5Mc1tfLkN3LnRvU3RyaW5nKCldPVtdKTtfLkxzW18uQ3cudG9TdHJpbmcoKV0ucHVzaChjKTtyZXR1cm4gY307Unc9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5ybSgpO2ImJih0eXBlb2YgYT09PSJudW1iZXIiJiYoYT1bYV0pLF8udGIoYSxjPT57Yi51bnN1YnNjcmliZUJ5S2V5KGMpO2RlbGV0ZSBfLktzW2NdfSkpfTthYWE9ZnVuY3Rpb24oKXt2YXIgYT1TdyxiPVF3KGZ1bmN0aW9uKGMpe2EuYXBwbHkodm9pZCAwLGFyZ3VtZW50cyk7UncoYil9KTtyZXR1cm4gYn07Xy5Vdz1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IF8uVHcoe3RyYWNraW5nUGFyYW1zOmF9KX07Cl8uVnc9ZnVuY3Rpb24oYT0wKXtyZXR1cm4oYT1fLmdxKGEpKT9uZXcgXy5Udyh7dmVUeXBlOmEseW91dHViZURhdGE6dm9pZCAwLGpzcGJZb3V0dWJlRGF0YTp2b2lkIDB9KTpudWxsfTtiYWE9ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LnZhbHVlcyhfLncoImNsaWVudC1zY3JlZW4tbm9uY2Utc3RvcmUiLHt9KSkuZmlsdGVyKGE9PmEhPT12b2lkIDApfTtfLld3PWZ1bmN0aW9uKGEsYil7Xy54KCJsb2dfc2VxdWVuY2VfaW5mb19vbl9nZWxfd2ViIikmJihhLnNlcXVlbmNlR3JvdXA9Yik7cmV0dXJuIGF9O1h3PWZ1bmN0aW9uKGEsYil7cmV0dXJuYCR7YS5nZXRBc0pzb24oKS52ZVR5cGV9JHthLmdldEFzSnNvbigpLnZlQ291bnRlcn0ke2J9YH07U3c9ZnVuY3Rpb24oYSl7aWYoWXcpe2ZvcihsZXQgYiBvZiBZdyliLnBheWxvYWQmJihiLnBheWxvYWQuY3NuPWEuY3NuLF8uRXAoYi5wYXlsb2FkTmFtZSxiLnBheWxvYWQsYi5vcHRpb25zKSk7WXcubGVuZ3RoPTB9Wnc9MH07Cl8uJHc9ZnVuY3Rpb24oYSxiLGMpe1l3LnB1c2goe3BheWxvYWROYW1lOmEscGF5bG9hZDpjLEpKOnZvaWQgMCxvcHRpb25zOmJ9KTtad3x8KFp3PWFhYSgpKX07Xy5ieD1mdW5jdGlvbihhLGIsYyxkLGU9ITEsZj17fSl7YXgoYSxiLGMsW2RdLGUsZil9OwpheD1mdW5jdGlvbihhLGIsYyxkLGU9ITEsZj17fSl7T2JqZWN0LmFzc2lnbihmLF8uV3coe2N0dEF1dGhJbmZvOl8ua3EoYil8fHZvaWQgMH0sYikpO2ZvcihsZXQgayBvZiBkKXt2YXIgaD1rLmdldEFzSnNvbigpOyhfLnBkKGgpfHwhaC50cmFja2luZ1BhcmFtcyYmIWgudmVUeXBlKSYmXy5JcChFcnJvcigiTGIiKSk7aWYoXy54KCJub19jbGllbnRfdmVfYXR0YWNoX3VubGVzc19zaG93biIpKXtsZXQgbD1YdyhrLGIpO2lmKGgudmVUeXBlJiYhXy5Gdy5oYXMobCkmJiFfLkd3LmhhcyhsKSYmIWUpe2lmKCFfLngoImlsX2F0dGFjaF9jYWNoZV9saW1pdCIpfHxfLkV3LnNpemU8MUUzKXtfLkV3LnNldChsLFthLGIsYyxrXSk7cmV0dXJufV8ueCgiaWxfYXR0YWNoX2NhY2hlX2xpbWl0IikmJl8uRXcuc2l6ZT4xRTMmJl8uSXAobmV3IF8uWGooIklMIEF0dGFjaCBjYWNoZSBleGNlZWRlZCBsaW1pdCIpKX1oPVh3KGMsYik7Xy5Fdy5oYXMoaCk/Xy5jeChjLGIpOl8uR3cuc2V0KGgsITApfX1kPQpkLmZpbHRlcihrPT57ay5jc24hPT1iPyhrLmNzbj1iLGs9ITApOms9ITE7cmV0dXJuIGt9KTtjPXtjc246YixwYXJlbnRWZTpjLmdldEFzSnNvbigpLGNoaWxkVmVzOl8uSHcoZCxrPT5rLmdldEFzSnNvbigpKX07Yj09PSJVTkRFRklORURfQ1NOIj9fLiR3KCJ2aXN1YWxFbGVtZW50QXR0YWNoZWQiLGYsYyk6YT9fLkNwKCJ2aXN1YWxFbGVtZW50QXR0YWNoZWQiLGMsYSxmKTpfLkVwKCJ2aXN1YWxFbGVtZW50QXR0YWNoZWQiLGMsZil9O18uY3g9ZnVuY3Rpb24oYSxiKXthPVh3KGEsYik7Xy5Fdy5oYXMoYSkmJihiPV8uRXcuZ2V0KGEpfHxbXSxfLmJ4KGJbMF0sYlsxXSxiWzJdLGJbM10sITApLF8uRXcuZGVsZXRlKGEpKX07Xy5keD1mdW5jdGlvbihhLGIpe2lmKF8ueCgibm9fY2xpZW50X3ZlX2F0dGFjaF91bmxlc3Nfc2hvd24iKSl7dmFyIGM9WHcoYSxiKTtfLkZ3LnNldChjLCEwKTtfLmN4KGEsYil9fTsKXy5leD1mdW5jdGlvbihhLGIsYyxkLGUsZixoKXtfLmR4KGMsYik7ZD1kfHwiSU5URVJBQ1RJT05fTE9HR0lOR19HRVNUVVJFX1RZUEVfR0VORVJJQ19DTElDSyI7Zj1fLld3KHtjdHRBdXRoSW5mbzpfLmtxKGIpfHx2b2lkIDAsYXV0b21hdGVkTG9nRXZlbnRTb3VyY2U6aH0sYik7Yz17Y3NuOmIsdmU6Yy5nZXRBc0pzb24oKSxnZXN0dXJlVHlwZTpkfTtlJiYoYy5jbGllbnREYXRhPWUpO2I9PT0iVU5ERUZJTkVEX0NTTiI/Xy4kdygidmlzdWFsRWxlbWVudEdlc3R1cmVkIixmLGMpOmE/Xy5DcCgidmlzdWFsRWxlbWVudEdlc3R1cmVkIixjLGEsZik6Xy5FcCgidmlzdWFsRWxlbWVudEdlc3R1cmVkIixjLGYpfTtfLmZ4PWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtfLmV4KGEsYixjLHZvaWQgMCxkLGUsZil9O18uaHg9ZnVuY3Rpb24oKXtneC5pbnN0YW5jZXx8KGd4Lmluc3RhbmNlPW5ldyBneCk7cmV0dXJuIGd4Lmluc3RhbmNlfTsKXy5qeD1mdW5jdGlvbihhLGIsYyxkPTAsZSl7YS5vLmhhcyhlKXx8YS5vLnNldChlLG5ldyBTZXQpO3ZhciBmPWN8fF8uVncoZCk7Zj1gJHtiLnRvU3RyaW5nKCl9fCR7Zj9mLnRvU3RyaW5nKCk6IiJ9YDthLm8uZ2V0KGUpLmhhcyhmKXx8KF8uaXgoYSxiLGMsZCksYS5vLmdldChlKS5hZGQoZikpfTtfLml4PWZ1bmN0aW9uKGEsYixjLGQ9MCl7cmV0dXJuIF8uVmkoKCk9PntpZihhLmouaGFzKGQpKXJldHVybiBhLlkucHVzaChbYixjXSksITA7dmFyIGU9Xy5pcShkKSxmPWN8fF8uVncoZCk7aWYoZSYmZil7aWYoXy54KCJjb21iaW5lX3ZlX2dyYWZ0cyIpKXtsZXQgaD1hLnYuZ2V0KGYudG9TdHJpbmcoKSk7aD9oLnB1c2goYik6KGEuSS5zZXQoZi50b1N0cmluZygpLGYpLGEudi5zZXQoZi50b1N0cmluZygpLFtiXSkpO2EuWnx8KGEuWj1fLllqKCgpPT57Xy5reChhLGUpfSwxMjAwKSl9ZWxzZSBfLmJ4KGEuY2xpZW50LGUsZixiKTtyZXR1cm4hMH1yZXR1cm4hMX0pKCl9OwpfLmx4PWZ1bmN0aW9uKGEsYixjLGQ9MCl7cmV0dXJuIF8uVmkoKCk9Pnt2YXIgZT1fLlV3KGIpLGY9Xy5pcShkKTtmJiYhYS5qLmhhcyhkKT9fLmp4KGEsZSxjLGQsZik6Xy5peChhLGUsYyxkKTtyZXR1cm4gZX0pKCl9O18ua3g9ZnVuY3Rpb24oYSxiKXtpZihiPT09dm9pZCAwKXtsZXQgYz1iYWEoKTtmb3IobGV0IGQ9MDtkPGMubGVuZ3RoO2QrKyljW2RdIT09dm9pZCAwJiZfLmt4KGEsY1tkXSl9ZWxzZSBhLnYuZm9yRWFjaCgoYyxkKT0+eyhkPWEuSS5nZXQoZCkpJiZheChhLmNsaWVudCxiLGQsYyl9KSxhLnYuY2xlYXIoKSxhLkkuY2xlYXIoKSxhLlo9dm9pZCAwfTsKXy5teD1mdW5jdGlvbihhLGIsYyxkPTApe3ZhciBlPV8uaXEoZCk7Yj1ifHxfLlZ3KGQpO2UmJmImJihhPWEuY2xpZW50LGQ9Xy5Xdyh7Y3R0QXV0aEluZm86Xy5rcShlKXx8dm9pZCAwfSxlKSxjPXtjc246ZSx2ZTpiLmdldEFzSnNvbigpLGNsaWVudERhdGE6Y30sZT09PSJVTkRFRklORURfQ1NOIj9fLiR3KCJ2aXN1YWxFbGVtZW50U3RhdGVDaGFuZ2VkIixkLGMpOmE/Xy5DcCgidmlzdWFsRWxlbWVudFN0YXRlQ2hhbmdlZCIsYyxhLGQpOl8uRXAoInZpc3VhbEVsZW1lbnRTdGF0ZUNoYW5nZWQiLGMsZCkpfTsKXy5SYz1jbGFzc3tvKCl7dmFyIGE9dGhpcy5qO2lmKGE9PW51bGwpYT0iIjtlbHNlIGlmKHR5cGVvZiBhIT09InN0cmluZyIpe2xldCBiPSIiLGM9MCxkPWEubGVuZ3RoLTEwMjQwO2Zvcig7YzxkOyliKz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsYS5zdWJhcnJheShjLGMrPTEwMjQwKSk7Yis9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLGM/YS5zdWJhcnJheShjKTphKTthPXRoaXMuaj1idG9hKGIpfXJldHVybiBhfWlzRW1wdHkoKXtyZXR1cm4gdGhpcy5qPT1udWxsfXNpemVCeXRlcygpe3ZhciBhPV8ud3codGhpcyk7cmV0dXJuIGE/YS5sZW5ndGg6MH1jb25zdHJ1Y3RvcihhLGIpe2lmKGIhPT1fLnZ3KXRocm93IEVycm9yKCJvIik7dGhpcy5qPWE7aWYoYSE9bnVsbCYmYS5sZW5ndGg9PT0wKXRocm93IEVycm9yKCJuIik7fX07CmNhYT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9c2V0VHJhY2tpbmdQYXJhbXMoYSl7cmV0dXJuIF8ucXcodGhpcywxLF8uTncoYSwhMSkpfX07Cl8uVHc9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWF9Z2V0QXNKc29uKCl7dmFyIGE9e307dGhpcy5qLnRyYWNraW5nUGFyYW1zIT09dm9pZCAwP2EudHJhY2tpbmdQYXJhbXM9dGhpcy5qLnRyYWNraW5nUGFyYW1zOihhLnZlVHlwZT10aGlzLmoudmVUeXBlLHRoaXMuai52ZUNvdW50ZXIhPT12b2lkIDAmJihhLnZlQ291bnRlcj10aGlzLmoudmVDb3VudGVyKSx0aGlzLmouZWxlbWVudEluZGV4IT09dm9pZCAwJiYoYS5lbGVtZW50SW5kZXg9dGhpcy5qLmVsZW1lbnRJbmRleCkpO3RoaXMuai5kYXRhRWxlbWVudCE9PXZvaWQgMCYmKGEuZGF0YUVsZW1lbnQ9dGhpcy5qLmRhdGFFbGVtZW50LmdldEFzSnNvbigpKTt0aGlzLmoueW91dHViZURhdGEhPT12b2lkIDAmJihhLnlvdXR1YmVEYXRhPXRoaXMuai55b3V0dWJlRGF0YSk7dGhpcy5qLmlzQ291bnRlcmZhY3R1YWwmJihhLmlzQ291bnRlcmZhY3R1YWw9ITApO3JldHVybiBhfWdldEFzSnNwYigpe3ZhciBhPW5ldyBjYWE7dGhpcy5qLnRyYWNraW5nUGFyYW1zIT09CnZvaWQgMD9hLnNldFRyYWNraW5nUGFyYW1zKHRoaXMuai50cmFja2luZ1BhcmFtcyk6KHRoaXMuai52ZVR5cGUhPT12b2lkIDAmJl8ucXcoYSwyLF8uUHcodGhpcy5qLnZlVHlwZSkpLHRoaXMuai52ZUNvdW50ZXIhPT12b2lkIDAmJl8ucXcoYSw2LF8uUHcodGhpcy5qLnZlQ291bnRlcikpLHRoaXMuai5lbGVtZW50SW5kZXghPT12b2lkIDAmJl8ucXcoYSwzLF8uUHcodGhpcy5qLmVsZW1lbnRJbmRleCkpLHRoaXMuai5pc0NvdW50ZXJmYWN0dWFsJiZfLnF3KGEsNSxfLnh3KCEwKSkpO2lmKHRoaXMuai5kYXRhRWxlbWVudCE9PXZvaWQgMCl7dmFyIGI9dGhpcy5qLmRhdGFFbGVtZW50LmdldEFzSnNwYigpO18uS3coYSw3LGIpfXRoaXMuai55b3V0dWJlRGF0YSE9PXZvaWQgMCYmXy5LdyhhLDgsdGhpcy5qLmpzcGJZb3V0dWJlRGF0YSk7cmV0dXJuIGF9dG9TdHJpbmcoKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcy5nZXRBc0pzb24oKSl9aXNDbGllbnRWZSgpe3JldHVybiF0aGlzLmoudHJhY2tpbmdQYXJhbXMmJgohIXRoaXMuai52ZVR5cGV9Z2V0TG9nZ2luZ0RpcmVjdGl2ZXMoKXtyZXR1cm4gdGhpcy5qLmxvZ2dpbmdEaXJlY3RpdmVzfX07WXc9W107Wnc9MDtfLm54PW5ldyBfLkkoImludGVyYWN0aW9uTG9nZ2luZ0NvbW1hbmRNZXRhZGF0YSIpO18uZGFhPW5ldyBfLkkoIndhdGNoUGxheWxpc3RFbmRwb2ludCIpO18uZWFhPW5ldyBfLkkoInJlc29sdmVVcmxDb21tYW5kTWV0YWRhdGEiKTtfLm94PVN5bWJvbCgiTWIiKTtfLnB4PW5ldyBXZWFrTWFwO3ZhciBneD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuWT1bXTt0aGlzLk09W107dGhpcy5LPW5ldyBNYXA7dGhpcy5nYT1uZXcgTWFwO3RoaXMuRD1bXTt0aGlzLlU9W107dGhpcy52PW5ldyBNYXA7dGhpcy5JPW5ldyBNYXA7dGhpcy5vPW5ldyBNYXA7dGhpcy5qPW5ldyBTZXQ7dGhpcy5oYT1uZXcgTWFwfUNmKGEsYixjPTApe2lmKCFhKXJldHVybiExO2M9Xy5pcShjKTtpZighYylyZXR1cm4hMTtfLmZ4KHRoaXMuY2xpZW50LGMsXy5VdyhhKSxiKTtyZXR1cm4hMH1jbGlja0NvbW1hbmQoYSxiLGM9MCl7cmV0dXJuIHRoaXMuQ2YoYS5jbGlja1RyYWNraW5nUGFyYW1zLGIsYyl9c3RhdGVDaGFuZ2VkKGEsYixjPTApe3RoaXMudmlzdWFsRWxlbWVudFN0YXRlQ2hhbmdlZChfLlV3KGEpLGIsYyl9dmlzdWFsRWxlbWVudFN0YXRlQ2hhbmdlZChhLGIsYz0wKXtjPT09MCYmdGhpcy5qLmhhcyhjKT90aGlzLk0ucHVzaChbYSxiXSk6Xy5teCh0aGlzLGEsYixjKX19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgeXgsengsZ2FhLEh4LEl4LGZhYSxBeCxDeDtfLnF4PWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYS5HYShiLDMsYyl9O18ucng9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5qZi5HYShhLDIsYil9O18uc3g9ZnVuY3Rpb24oYSl7aWYoYT09bnVsbClyZXR1cm4gYTtpZih0eXBlb2YgYT09PSJzdHJpbmciJiZhKWE9K2E7ZWxzZSBpZih0eXBlb2YgYSE9PSJudW1iZXIiKXJldHVybjtyZXR1cm4oMCxfLndyKShhKT9hfDA6dm9pZCAwfTtfLnR4PWZ1bmN0aW9uKGEsYixjPTApe3JldHVybiBfLnN4KF8uZWQoYSxiKSk/P2N9O18udXg9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe3ZhciBoPWZhYSsrO3JldHVybiBuZXcgXy5Udyh7dmVUeXBlOmEsdmVDb3VudGVyOmgsZWxlbWVudEluZGV4OmMsZGF0YUVsZW1lbnQ6Yix5b3V0dWJlRGF0YTpkLGpzcGJZb3V0dWJlRGF0YTplLGxvZ2dpbmdEaXJlY3RpdmVzOmZ9KX07Cl8udng9ZnVuY3Rpb24oYSxiLGMsZD0hMSxlLGYpe3ZhciBoPWQ/MTY6ODtkPV8uV3coe2N0dEF1dGhJbmZvOl8ua3EoYil8fHZvaWQgMCxlbmRPZlNlcXVlbmNlOmQsYXV0b21hdGVkTG9nRXZlbnRTb3VyY2U6Zn0sYik7Yz17Y3NuOmIsdmU6Yy5nZXRBc0pzb24oKSxldmVudFR5cGU6aH07ZSYmKGMuY2xpZW50RGF0YT1lKTtiPT09IlVOREVGSU5FRF9DU04iP18uJHcoInZpc3VhbEVsZW1lbnRIaWRkZW4iLGQsYyk6YT9fLkNwKCJ2aXN1YWxFbGVtZW50SGlkZGVuIixjLGEsZCk6Xy5FcCgidmlzdWFsRWxlbWVudEhpZGRlbiIsYyxkKX07Cl8ud3g9ZnVuY3Rpb24oYSxiLGMsZCxlKXtfLmR4KGMsYik7ZT1fLld3KHtjdHRBdXRoSW5mbzpfLmtxKGIpfHx2b2lkIDAsYXV0b21hdGVkTG9nRXZlbnRTb3VyY2U6ZX0sYik7Yz17Y3NuOmIsdmU6Yy5nZXRBc0pzb24oKSxldmVudFR5cGU6MX07ZCYmKGMuY2xpZW50RGF0YT1kKTtiPT09IlVOREVGSU5FRF9DU04iP18uJHcoInZpc3VhbEVsZW1lbnRTaG93biIsZSxjKTphP18uQ3AoInZpc3VhbEVsZW1lbnRTaG93biIsYyxhLGUpOl8uRXAoInZpc3VhbEVsZW1lbnRTaG93biIsYyxlKX07Xy54eD1mdW5jdGlvbihhKXtpZihhPT09d2luZG93KXJldHVybiBudWxsO3ZhciBiPWEucGFyZW50RWxlbWVudDtyZXR1cm4gYj9iOnR5cGVvZiBTaGFkb3dSb290IT09InVuZGVmaW5lZCImJmEuZ2V0Um9vdE5vZGUhPW51bGwmJihhPWEuZ2V0Um9vdE5vZGUoKSxhIGluc3RhbmNlb2YgU2hhZG93Um9vdCk/YS5ob3N0OndpbmRvd307Cnl4PWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1fLmlxKGMpO3JldHVybiBhLmNzbj09PW51bGx8fGQ9PT1hLmNzbnx8Yz9kOihhPW5ldyBfLlhqKCJWaXNpYmlsaXR5TG9nZ2VyIGNhbGxlZCBiZWZvcmUgbmV3U2NyZWVuIix7Y2FsbGVyOmIudGFnTmFtZSxwcmV2aW91c19jc246YS5jc24sY3VycmVudF9jc246ZH0pLF8uSXAoYSksbnVsbCl9O3p4PWZ1bmN0aW9uKGEsYil7YT1hLmdldERhdGEoYik7cmV0dXJuIE1hdGguZmxvb3IoTnVtYmVyKGEmJmEubG9nZ2luZ0RpcmVjdGl2ZXMmJmEubG9nZ2luZ0RpcmVjdGl2ZXMudmlzaWJpbGl0eSYmYS5sb2dnaW5nRGlyZWN0aXZlcy52aXNpYmlsaXR5LnR5cGVzfHwiIikpfHwxfTtfLkJ4PWZ1bmN0aW9uKCl7QXguaW5zdGFuY2V8fChBeC5pbnN0YW5jZT1uZXcgQXgpO3JldHVybiBBeC5pbnN0YW5jZX07Xy5EeD1mdW5jdGlvbigpe0N4Lmluc3RhbmNlfHwoQ3guaW5zdGFuY2U9bmV3IEN4KX07Cl8uRXg9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIF8uVmkoKCk9PntpZighYi52ZVR5cGUpcmV0dXJuIF8uSHAobmV3IF8uWGooIkVycm9yOiBUcnlpbmcgdG8gZ3JhZnQgYSBjbGllbnQgVkUgd2l0aG91dCBhIHZlVHlwZS4iKSksbnVsbDtpZihiLnZpc2liaWxpdHlUeXBlcyl7dmFyIGU9Yi52aXNpYmlsaXR5VHlwZXMucmVkdWNlKChmLGgpPT5mfGgpO2U9e3Zpc2liaWxpdHk6e3R5cGVzOlN0cmluZyhlKX19fWU9Xy51eChiLnZlVHlwZSxiLnZpc3VhbEVsZW1lbnQsYi5lbGVtZW50SW5kZXgsYi5jbGllbnRZb3VUdWJlRGF0YSx2b2lkIDAsZSk7cmV0dXJuIF8uaXgoYSxlLGMsZCk/ZTpudWxsfSkoKX07Xy5GeD1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPTA7Zm9yKGxldCBkIGluIGEpYltjKytdPWQ7cmV0dXJuIGJ9OwpfLkd4PWZ1bmN0aW9uKGEsYil7YT1hLmpmPz9hO2ZvcihsZXQgYyBvZiBhLnZpc2liaWxpdHlNb25pdG9yS2V5c3x8W10pYi5yZihjKTthLnZpc2liaWxpdHlNb25pdG9yS2V5cz12b2lkIDB9O18uSng9ZnVuY3Rpb24oYSxiKXtpZihfLmlxKCkpe2lmKF8ueCgia2V2bGFyX3ZpbWlvX3VzZV9zaGFyZWRfbW9uaXRvciIpKUh4KGEsYi5kYXRhKTtlbHNlIGlmKCFIeChhLGIuZGF0YSkpcmV0dXJuO3ZhciBjPWIuZGF0YSxkPUl4KGMpO2lmKF8ueCgiZW5hYmxlX2NsaWVudF92ZV9zcGVjX2xvZ2dpbmciKSlfLkd4KGEsYi5vYnNlcnZlcik7ZWxzZXt2YXIgZT1hLmpmPz9hO2UudHJhY2tlZFBhcmFtcyYmZS50cmFja2VkUGFyYW1zIT09ZCYmXy5HeChhLGIub2JzZXJ2ZXIpfWU9YS5qZj8/YTshY3x8ZS5kYXRhJiZlLmRhdGE9PT1jfHwoZS5kYXRhPWMpO2dhYShhLGIpO2UudHJhY2tlZFBhcmFtcz1kfX07CmdhYT1mdW5jdGlvbihhLGIpe3ZhciBjPWIub2JzZXJ2ZXI7aWYoIWMmJl8ueCgid2ViX3NraXBfbWlzc2luZ192aW1pb19vYnNlcnZlciIpKV8uSXAobmV3IF8uWGooIlZpc2liaWxpdHlPYnNlcnZlciBpcyBub3QgZGVmaW5lZC4iLGEudGFnTmFtZSxhLnRyYWNrZWRQYXJhbXMsYi5kYXRhPy50cmFja2luZ1BhcmFtcyxiLmRhdGE/LmxvZ2dpbmdEaXJlY3RpdmVzKSk7ZWxzZXt2YXIgZD1iLmxheWVyLGU9Yi5OYnx8KCgpPT57fSksZj1iLkxqLGg9YS5qZj8/YSxrPVtdO2IuZWImJmsucHVzaChjLm9ic2VydmUoYSwoKT0+e2IueEEmJmIueEEoKXx8KF8uRHgoKSxfLlZpKF8uQngoKS5ZKS5iaW5kKF8uQngoKSkoaCx2b2lkIDAsZCw3KSk7ZSghMCl9LGIuZWIpKTtiLk5jJiZrLnB1c2goYy5vYnNlcnZlKGEsKCk9PntfLkR4KCk7Xy5WaShfLkJ4KCkuSSkuYmluZChfLkJ4KCkpKGgsdm9pZCAwLGQsNyk7ZSghMSl9LGIuTmMpKTtiLkxoJiZmJiZrLnB1c2goYy5vYnNlcnZlKGEsKCk9Pgp7ZigpfSxiLkxoKSk7aC52aXNpYmlsaXR5TW9uaXRvcktleXM9a319OwpIeD1mdW5jdGlvbihhLGIpe2E9YS5qZj8/YTtpZihhLnZpc3VhbEVsZW1lbnQmJiFiKXJldHVybiEwO2lmKCFiKXJldHVybiExO3ZhciBjPSExO18ueCgiZW5hYmxlX2NsaWVudF92ZV9zcGVjX2xvZ2dpbmciKSYmKGM9ISFiLmxvZ2dpbmdEaXJlY3RpdmVzPy5jbGllbnRWZVNwZWM/LnVpVHlwZSk7dmFyIGQ9SXgoYik7aWYoIWQmJiFjKXJldHVybiExO18ueCgibXdlYl9jb21wb25lbnRfdmlzaWJpbGl0eV9sb2dnaW5nIikmJihhLnZlQ29udGFpbmVyfHwoYS52ZUNvbnRhaW5lcj17fSksYS52ZUNvbnRhaW5lci50cmFja2luZ1BhcmFtcz1kKTtpZihhLnRyYWNrZWRQYXJhbXMmJmEudHJhY2tlZFBhcmFtcz09PWR8fF8ueCgiZW5hYmxlX2NsaWVudF92ZV9zcGVjX2xvZ2dpbmciKSYmYS52aXN1YWxFbGVtZW50Py5pc0NsaWVudFZlKCkmJihjPWEudmlzdWFsRWxlbWVudD8uZ2V0QXNKc3BiKCksXy50eChjLDIpPT09Yi5sb2dnaW5nRGlyZWN0aXZlcz8uY2xpZW50VmVTcGVjPy51aVR5cGUmJgpfLnR4KGMsMywtMSk9PT1iLmxvZ2dpbmdEaXJlY3RpdmVzPy5jbGllbnRWZVNwZWM/LmVsZW1lbnRJbmRleCkpcmV0dXJuITE7Xy54KCJlbmFibGVfY2xpZW50X3ZlX3NwZWNfbG9nZ2luZyIpJiYhYS52aXN1YWxFbGVtZW50JiZiLmxvZ2dpbmdEaXJlY3RpdmVzPy5jbGllbnRWZVNwZWM/LnVpVHlwZSYmKGM9Yi5sb2dnaW5nRGlyZWN0aXZlcy5jbGllbnRWZVNwZWMudWlUeXBlLGQ9Yi5sb2dnaW5nRGlyZWN0aXZlcy5jbGllbnRWZVNwZWMuZWxlbWVudEluZGV4LGI9Yi5sb2dnaW5nRGlyZWN0aXZlcy5jbGllbnRWZVNwZWMuY2xpZW50WW91dHViZURhdGEsYS52aXN1YWxFbGVtZW50PV8uRXgoXy5oeCgpLHt2ZVR5cGU6YyxlbGVtZW50SW5kZXg6ZCxjbGllbnRZb3VUdWJlRGF0YTpifSkpO3JldHVybiEwfTsKSXg9ZnVuY3Rpb24oYSl7aWYoYT8ucmVuZGVyZXJDb250ZXh0KXtsZXQgYj1fLkIoYS5yZW5kZXJlckNvbnRleHQsXy5LeCk7aWYoYj8ubG9nZ2luZ0RpcmVjdGl2ZXMpcmV0dXJuIGIubG9nZ2luZ0RpcmVjdGl2ZXMudHJhY2tpbmdQYXJhbXN9cmV0dXJuIGE/LmxvZ2dpbmdEaXJlY3RpdmVzP2EubG9nZ2luZ0RpcmVjdGl2ZXMudHJhY2tpbmdQYXJhbXM6YT8udHJhY2tpbmdQYXJhbXN9O2ZhYT0xOwpBeD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuRD1uZXcgU2V0O3RoaXMuQj1uZXcgU2V0O3RoaXMubz1uZXcgTWFwO3RoaXMuY2xpZW50PXZvaWQgMDt0aGlzLmNzbj1udWxsfUsoKXt0aGlzLmNsZWFyKCk7dGhpcy5jc249Xy5pcSgpfWNsZWFyKCl7dGhpcy5ELmNsZWFyKCk7dGhpcy5CLmNsZWFyKCk7dGhpcy5vLmNsZWFyKCk7dGhpcy5jc249bnVsbH1ZKGEsYixjLGQpe3ZhciBlPXRoaXMuaihhKSxmPWEudmlzdWFsRWxlbWVudD9hLnZpc3VhbEVsZW1lbnQ6ZTtiPXRoaXMuRC5oYXMoZik7dmFyIGg9dGhpcy5vLmdldChmKTt0aGlzLkQuYWRkKGYpO3RoaXMuby5zZXQoZiwhMCk7YS5pbXByZXNzaW9uTG9nJiYhYiYmYS5pbXByZXNzaW9uTG9nKCk7aWYoZXx8YS52aXN1YWxFbGVtZW50KWlmKGM9eXgodGhpcyxhLGMpKXt2YXIgaz0hIXRoaXMuZ2V0RGF0YShhKT8ubG9nZ2luZ0RpcmVjdGl2ZXM7aWYoengodGhpcyxhKXx8aylmPWEudmlzdWFsRWxlbWVudD9hLnZpc3VhbEVsZW1lbnQ6Cl8uVXcoZSksYS5pbnRlcmFjdGlvbkxvZ2dpbmdDbGllbnREYXRhfHwoYS5pbnRlcmFjdGlvbkxvZ2dpbmdDbGllbnREYXRhPXt9KSxlPWEuaW50ZXJhY3Rpb25Mb2dnaW5nQ2xpZW50RGF0YSxrfHxiP3p4KHRoaXMsYSkmND9ofHwoYT10aGlzLmNsaWVudCxfLmR4KGYsYyksZD1fLld3KHtjdHRBdXRoSW5mbzpfLmtxKGMpfHx2b2lkIDAsYXV0b21hdGVkTG9nRXZlbnRTb3VyY2U6dm9pZCAwfSxjKSxiPXtjc246Yyx2ZTpmLmdldEFzSnNvbigpLGV2ZW50VHlwZTo0fSxlJiYoYi5jbGllbnREYXRhPWUpLGM9PT0iVU5ERUZJTkVEX0NTTiI/Xy4kdygidmlzdWFsRWxlbWVudFNob3duIixkLGIpOmE/Xy5DcCgidmlzdWFsRWxlbWVudFNob3duIixiLGEsZCk6Xy5FcCgidmlzdWFsRWxlbWVudFNob3duIixiLGQpKTp6eCh0aGlzLGEpJjEmJiFiJiZfLnd4KHRoaXMuY2xpZW50LGMsZixlLGQpOl8ud3godGhpcy5jbGllbnQsYyxmLGUsZCl9fUkoYSxiLGMsZCl7dmFyIGU9dGhpcy5qKGEpLApmPWEudmlzdWFsRWxlbWVudD9hLnZpc3VhbEVsZW1lbnQ6ZTtiPXRoaXMuQi5oYXMoZik7dmFyIGg9dGhpcy5vLmdldChmKTt0aGlzLkIuYWRkKGYpO3RoaXMuby5zZXQoZiwhMSk7aWYoaD09PSExKXJldHVybiEwO2lmKCFlJiYhYS52aXN1YWxFbGVtZW50KXJldHVybiExO2M9eXgodGhpcyxhLGMpO2lmKCFjfHwhengodGhpcyxhKSYmdGhpcy5nZXREYXRhKGEpPy5sb2dnaW5nRGlyZWN0aXZlcylyZXR1cm4hMTtlPWEudmlzdWFsRWxlbWVudD9hLnZpc3VhbEVsZW1lbnQ6Xy5VdyhlKTt6eCh0aGlzLGEpJjg/Xy52eCh0aGlzLmNsaWVudCxjLGUsdm9pZCAwLHZvaWQgMCxkKTp6eCh0aGlzLGEpJjImJiFiJiYoYT10aGlzLmNsaWVudCxkPV8uV3coe2N0dEF1dGhJbmZvOl8ua3EoYyl8fHZvaWQgMCxhdXRvbWF0ZWRMb2dFdmVudFNvdXJjZTpkfSxjKSxiPXtjc246Yyx2ZTplLmdldEFzSnNvbigpLGV2ZW50VHlwZToyfSxjPT09IlVOREVGSU5FRF9DU04iP18uJHcoInZpc3VhbEVsZW1lbnRIaWRkZW4iLApkLGIpOmE/Xy5DcCgidmlzdWFsRWxlbWVudEhpZGRlbiIsYixhLGQpOl8uRXAoInZpc3VhbEVsZW1lbnRIaWRkZW4iLGIsZCkpO3JldHVybiEwfWooYSl7dmFyIGI9dGhpcy5nZXREYXRhKGEpO3JldHVybiBfLngoImlsX3VzZV92aWV3X21vZGVsX2xvZ2dpbmdfY29udGV4dCIpJiZiPy5jb250ZXh0Py5sb2dnaW5nQ29udGV4dD8ubG9nZ2luZ0RpcmVjdGl2ZXM/Yi5jb250ZXh0LmxvZ2dpbmdDb250ZXh0LmxvZ2dpbmdEaXJlY3RpdmVzLnRyYWNraW5nUGFyYW1zfHwiIjpiPy5yZW5kZXJlckNvbnRleHQ/LmxvZ2dpbmdDb250ZXh0Py5sb2dnaW5nRGlyZWN0aXZlcz9iLnJlbmRlcmVyQ29udGV4dC5sb2dnaW5nQ29udGV4dC5sb2dnaW5nRGlyZWN0aXZlcy50cmFja2luZ1BhcmFtc3x8IiI6Yj8ubG9nZ2luZ0RpcmVjdGl2ZXM/Yi5sb2dnaW5nRGlyZWN0aXZlcy50cmFja2luZ1BhcmFtc3x8IiI6YS52ZUNvbnRhaW5lcj8udHJhY2tpbmdQYXJhbXM/YS52ZUNvbnRhaW5lci50cmFja2luZ1BhcmFtczoKYj8udHJhY2tpbmdQYXJhbXN8fCIifXYoYSl7aWYoXy54KCJ3aXpfbmV4dF9jbGllbnRfdmVfcGFyZW50X2ZpeCIpKXt2YXIgYj10aGlzLmooYSk7cmV0dXJuIGEudmlzdWFsRWxlbWVudD9hLnZpc3VhbEVsZW1lbnQ6Yj9fLlV3KGIpOihhPV8ueHgoYSkpP3RoaXMudihhKTpudWxsfWI9dGhpcy5qKGEpO3JldHVybiBhLnZpc3VhbEVsZW1lbnQ/YS52aXN1YWxFbGVtZW50OmI/Xy5VdyhiKTphLnBhcmVudEVsZW1lbnQ/dGhpcy52KGEucGFyZW50RWxlbWVudCk6bnVsbH1nZXREYXRhKGEpe3ZhciBiPWEuZGF0YXx8YS5wcm9wcz8uZGF0YTtpZighYnx8YS5pc1dlYkNvbXBvbmVudFdyYXBwZXIpYj1fLnB4LmdldChhKT8uW18ub3hdO3JldHVybiBifX07Q3g9Y2xhc3N7Y2xlYXIoKXtfLlZpKF8uQngoKS5jbGVhcikuYmluZChfLkJ4KCkpKCl9fTtfLkt4PW5ldyBfLkkoImxvZ2dpbmdDb250ZXh0Iik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uTHg9bmV3IF8uVnMoIlZJU0lCSUxJVFlfT0JTRVJWRVIiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIE94LFB4LFF4LFN4LFR4LFZ4LGhhYSxpYWEsamFhLCR4LGF5LGN5LGJ5LGthYSxkeSxsYWEsZXksZ3ksaHksaXksb3kscHkscXkscnksdHksdnksb2FhLHBhYSxreTtfLk14PWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9ITE7ZD1fLmRkKGEsZCxlLGg9Pnt2YXIgaz1fLmt3KGgsYyxiKTtmPWshPT1oJiZrIT1udWxsO3JldHVybiBrfSk7aWYoZCE9bnVsbClyZXR1cm4gZiYmIV8uQmMoZCkmJl8ub3coYSxiKSxkfTtfLk54PWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWEuRGEsZj1lW18uQWNdfDA7Yj1fLk14KGUsZixiLGMsZCk7aWYoYj09bnVsbClyZXR1cm4gYjtmPWVbXy5BY118MDtpZighXy5CYyhhLGYpKXtsZXQgaD1fLmx3KGIpO2ghPT1iJiYoXy5tdyhhKSYmKGU9YS5EYSxmPWVbXy5BY118MCksYj1oLGY9Xy5wdyhlLGYsYyxiLGQpLF8ub3coZSxmKSl9cmV0dXJuIGJ9OwpPeD1mdW5jdGlvbihhKXthLlp8fChhLlo9ITAsYS5kaXNwYXRjaEV2ZW50KCJjb21wbGV0ZSIpLGEuZGlzcGF0Y2hFdmVudCgiZXJyb3IiKSl9O1B4PWZ1bmN0aW9uKGEsYil7aWYoYS5yYSl7YS5EJiYoY2xlYXJUaW1lb3V0KGEuRCksYS5EPW51bGwpO2xldCBjPWEucmE7YS5yYT1udWxsO2J8fGEuZGlzcGF0Y2hFdmVudCgicmVhZHkiKTt0cnl7Yy5vbnJlYWR5c3RhdGVjaGFuZ2U9bnVsbH1jYXRjaChkKXt9fX07UXg9ZnVuY3Rpb24oYSxiKXthLmo9ITE7YS5yYSYmKGEudj0hMCxhLnJhLmFib3J0KCksYS52PSExKTthLkI9YjtPeChhKTtQeChhKX07Xy5SeD1mdW5jdGlvbihhKXt0cnl7cmV0dXJuKGEucmE/YS5yYS5yZWFkeVN0YXRlOjApPjI/YS5yYS5zdGF0dXM6LTF9Y2F0Y2goYil7cmV0dXJuLTF9fTsKU3g9ZnVuY3Rpb24oYSl7aWYoYS5qJiZ0eXBlb2YgXy5DcSE9InVuZGVmaW5lZCIpaWYoYS5JJiYoYS5yYT9hLnJhLnJlYWR5U3RhdGU6MCk9PTQpc2V0VGltZW91dChhLmdyLmJpbmQoYSksMCk7ZWxzZSBpZihhLmRpc3BhdGNoRXZlbnQoInJlYWR5c3RhdGVjaGFuZ2UiKSxhLmlzQ29tcGxldGUoKSl7YS5qPSExO3RyeXtpZihhLmlzU3VjY2VzcygpKWEuZGlzcGF0Y2hFdmVudCgiY29tcGxldGUiKSxhLmRpc3BhdGNoRXZlbnQoInN1Y2Nlc3MiKTtlbHNle3RyeXt2YXIgYj0oYS5yYT9hLnJhLnJlYWR5U3RhdGU6MCk+Mj9hLnJhLnN0YXR1c1RleHQ6IiJ9Y2F0Y2goYyl7Yj0iIn1hLkI9YisiIFsiK18uUngoYSkrIl0iO094KGEpfX1maW5hbGx5e1B4KGEpfX19OwpUeD1mdW5jdGlvbigpe18uZ2YuY2FsbCh0aGlzKTt0aGlzLmhlYWRlcnM9bmV3IE1hcDt0aGlzLmo9ITE7dGhpcy5yYT1udWxsO3RoaXMuQj10aGlzLmhhPSIiO3RoaXMudj10aGlzLmdhPXRoaXMuST10aGlzLlo9ITE7dGhpcy5VPTA7dGhpcy5EPW51bGw7dGhpcy55YT0iIjt0aGlzLm9hPSExfTtfLlV4PWZ1bmN0aW9uKGEpe18uRHgoKTtyZXR1cm4gXy5WaShfLkJ4KCkudikuYmluZChfLkJ4KCkpKGEpfTtWeD1mdW5jdGlvbihhLGIsYyxkKXtyZXR1cm4gXy54KCJlbmFibGVfY2xpZW50X3ZlX3NwZWMiKSYmYi5jbGllbnRWZVNwZWM/KGI9Xy51eChiLmNsaWVudFZlU3BlYy51aVR5cGUsdm9pZCAwLGIuY2xpZW50VmVTcGVjLmVsZW1lbnRJbmRleCxiLmNsaWVudFZlU3BlYy5jbGllbnRZb3V0dWJlRGF0YSx2b2lkIDAsYiksXy5peChhLGIsYyxkKT9iOm51bGwpOmIudHJhY2tpbmdQYXJhbXM/Xy5seChhLGIudHJhY2tpbmdQYXJhbXMsYyxkKTpudWxsfTsKXy5XeD1mdW5jdGlvbihhLGIsYyxkLGUpe18ubncoYSk7dmFyIGY9YS5EYTtfLnB3KGYsZltfLkFjXXwwLGIsKGQ9PT0iMCI/TnVtYmVyKGMpPT09MDpjPT09ZCk/dm9pZCAwOmMsZSk7cmV0dXJuIGF9O18uWHg9ZnVuY3Rpb24oYSxiKXtpZihiPT1udWxsfHxiPT0iIilyZXR1cm4gbmV3IGE7Yj1KU09OLnBhcnNlKGIpO2lmKCFBcnJheS5pc0FycmF5KGIpKXRocm93IEVycm9yKCJ6Iik7YltfLkFjXXw9MzI7cmV0dXJuIG5ldyBhKGIpfTtfLll4PWZ1bmN0aW9uKGEsLi4uYil7aWYoYi5sZW5ndGg9PT0wKXJldHVybiBfLlRhKGFbMF0pO3ZhciBjPWFbMF07Zm9yKGxldCBkPTA7ZDxiLmxlbmd0aDtkKyspYys9ZW5jb2RlVVJJQ29tcG9uZW50KGJbZF0pK2FbZCsxXTtyZXR1cm4gXy5UYShjKX07Xy5aeD1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPTA7Zm9yKGxldCBkIGluIGEpYltjKytdPWFbZF07cmV0dXJuIGJ9OwpoYWE9ZnVuY3Rpb24oYSl7aWYoYS5NYyYmdHlwZW9mIGEuTWM9PSJmdW5jdGlvbiIpcmV0dXJuIGEuTWMoKTtpZih0eXBlb2YgTWFwIT09InVuZGVmaW5lZCImJmEgaW5zdGFuY2VvZiBNYXB8fHR5cGVvZiBTZXQhPT0idW5kZWZpbmVkIiYmYSBpbnN0YW5jZW9mIFNldClyZXR1cm4gQXJyYXkuZnJvbShhLnZhbHVlcygpKTtpZih0eXBlb2YgYT09PSJzdHJpbmciKXJldHVybiBhLnNwbGl0KCIiKTtpZihfLnlhKGEpKXtsZXQgYj1bXSxjPWEubGVuZ3RoO2ZvcihsZXQgZD0wO2Q8YztkKyspYi5wdXNoKGFbZF0pO3JldHVybiBifXJldHVybiBfLlp4KGEpfTsKaWFhPWZ1bmN0aW9uKGEpe2lmKGEucmQmJnR5cGVvZiBhLnJkPT0iZnVuY3Rpb24iKXJldHVybiBhLnJkKCk7aWYoIWEuTWN8fHR5cGVvZiBhLk1jIT0iZnVuY3Rpb24iKXtpZih0eXBlb2YgTWFwIT09InVuZGVmaW5lZCImJmEgaW5zdGFuY2VvZiBNYXApcmV0dXJuIEFycmF5LmZyb20oYS5rZXlzKCkpO2lmKCEodHlwZW9mIFNldCE9PSJ1bmRlZmluZWQiJiZhIGluc3RhbmNlb2YgU2V0KSl7aWYoXy55YShhKXx8dHlwZW9mIGE9PT0ic3RyaW5nIil7bGV0IGI9W107YT1hLmxlbmd0aDtmb3IobGV0IGM9MDtjPGE7YysrKWIucHVzaChjKTtyZXR1cm4gYn1yZXR1cm4gXy5GeChhKX19fTsKamFhPWZ1bmN0aW9uKGEsYixjKXtpZihhLmZvckVhY2gmJnR5cGVvZiBhLmZvckVhY2g9PSJmdW5jdGlvbiIpYS5mb3JFYWNoKGIsYyk7ZWxzZSBpZihfLnlhKGEpfHx0eXBlb2YgYT09PSJzdHJpbmciKUFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoYSxiLGMpO2Vsc2V7bGV0IGQ9aWFhKGEpLGU9aGFhKGEpLGY9ZS5sZW5ndGg7Zm9yKGxldCBoPTA7aDxmO2grKyliLmNhbGwoYyxlW2hdLGQmJmRbaF0sYSl9fTskeD1mdW5jdGlvbihhLGIpe3RoaXMubz10aGlzLmo9bnVsbDt0aGlzLnY9YXx8bnVsbDt0aGlzLkI9ISFifTtheT1mdW5jdGlvbihhKXthLmp8fChhLmo9bmV3IE1hcCxhLm89MCxhLnYmJl8uUmIoYS52LGZ1bmN0aW9uKGIsYyl7YS5hZGQoXy5IYihiKSxjKX0pKX07Y3k9ZnVuY3Rpb24oYSxiKXtheShhKTtiPWJ5KGEsYik7cmV0dXJuIGEuai5oYXMoYil9O2J5PWZ1bmN0aW9uKGEsYil7Yj1TdHJpbmcoYik7YS5CJiYoYj1iLnRvTG93ZXJDYXNlKCkpO3JldHVybiBifTsKa2FhPWZ1bmN0aW9uKGEsYil7YiYmIWEuQiYmKGF5KGEpLGEudj1udWxsLGEuai5mb3JFYWNoKGZ1bmN0aW9uKGMsZCl7dmFyIGU9ZC50b0xvd2VyQ2FzZSgpO2QhPWUmJih0aGlzLnJlbW92ZShkKSx0aGlzLnJlbW92ZShlKSxjLmxlbmd0aD4wJiYodGhpcy52PW51bGwsdGhpcy5qLnNldChieSh0aGlzLGUpLF8ueWIoYykpLHRoaXMubys9Yy5sZW5ndGgpKX0sYSkpO2EuQj1ifTtkeT1mdW5jdGlvbihhLGIpe3JldHVybiBhP2I/ZGVjb2RlVVJJKGEucmVwbGFjZSgvJTI1L2csIiUyNTI1IikpOmRlY29kZVVSSUNvbXBvbmVudChhKToiIn07bGFhPWZ1bmN0aW9uKGEpe2E9YS5jaGFyQ29kZUF0KDApO3JldHVybiIlIisoYT4+NCYxNSkudG9TdHJpbmcoMTYpKyhhJjE1KS50b1N0cmluZygxNil9OwpleT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyI/KGE9ZW5jb2RlVVJJKGEpLnJlcGxhY2UoYixsYWEpLGMmJihhPWEucmVwbGFjZSgvJTI1KFswLTlhLWZBLUZdezJ9KS9nLCIlJDEiKSksYSk6bnVsbH07Cl8uZnk9ZnVuY3Rpb24oYSl7dGhpcy5vPXRoaXMuST10aGlzLkI9IiI7dGhpcy5ZPW51bGw7dGhpcy52PXRoaXMuaj0iIjt0aGlzLkQ9ITE7dmFyIGI7YSBpbnN0YW5jZW9mIF8uZnk/KHRoaXMuRD1hLkQsZ3kodGhpcyxhLkIpLHRoaXMuST1hLkksdGhpcy5vPWEubyxoeSh0aGlzLGEuWSksdGhpcy5qPWEuaixpeSh0aGlzLGEuSy5jbG9uZSgpKSx0aGlzLnY9YS52KTphJiYoYj1fLk1iKFN0cmluZyhhKSkpPyh0aGlzLkQ9ITEsZ3kodGhpcyxiWzFdfHwiIiwhMCksdGhpcy5JPWR5KGJbMl18fCIiKSx0aGlzLm89ZHkoYlszXXx8IiIsITApLGh5KHRoaXMsYls0XSksdGhpcy5qPWR5KGJbNV18fCIiLCEwKSxpeSh0aGlzLGJbNl18fCIiLCEwKSx0aGlzLnY9ZHkoYls3XXx8IiIpKToodGhpcy5EPSExLHRoaXMuSz1uZXcgJHgobnVsbCx0aGlzLkQpKX07Z3k9ZnVuY3Rpb24oYSxiLGMpe2EuQj1jP2R5KGIsITApOmI7YS5CJiYoYS5CPWEuQi5yZXBsYWNlKC86JC8sIiIpKX07Cmh5PWZ1bmN0aW9uKGEsYil7aWYoYil7Yj1OdW1iZXIoYik7aWYoaXNOYU4oYil8fGI8MCl0aHJvdyBFcnJvcigiS2FgIitiKTthLlk9Yn1lbHNlIGEuWT1udWxsfTtpeT1mdW5jdGlvbihhLGIsYyl7YiBpbnN0YW5jZW9mICR4PyhhLks9YixrYWEoYS5LLGEuRCkpOihjfHwoYj1leShiLG1hYSkpLGEuSz1uZXcgJHgoYixhLkQpKX07Xy5qeT1mdW5jdGlvbihhLGIpe18uZ2YuY2FsbCh0aGlzKTt0aGlzLnY9YXx8MTt0aGlzLmo9Ynx8Xy51O3RoaXMuQj0oMCxfLkNhKSh0aGlzLmFCLHRoaXMpO3RoaXMuRD1fLkVhKCl9O18ubHk9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsaCl7dmFyIGs9bmV3IFR4O2t5LnB1c2goayk7YiYmay5saXN0ZW4oImNvbXBsZXRlIixiKTtfLmJmKGssInJlYWR5IixrLlB1KTtmJiYoay5VPU1hdGgubWF4KDAsZikpO2gmJihrLm9hPWgpO2suc2VuZChhLGMsZCxlKX07Xy5teT1mdW5jdGlvbihhKXtmb3IobGV0IGIgb2YgYS5yZWdpc3Rlci52YWx1ZXMoKSliLnpnKCJBQk9SVEVEIil9OwpfLm55PWZ1bmN0aW9uKGEsYixjKXtzd2l0Y2goYi50eXBlKXtjYXNlICJtYXBwaW5nIjpyZXR1cm4gYi52YWx1ZTtjYXNlICJmYWN0b3J5IjpyZXR1cm4gYj1iLnZhbHVlKCksYS5tYXBwaW5ncy5zZXQoYy50b1N0cmluZygpLHt0eXBlOiJtYXBwaW5nIix2YWx1ZTpifSksYjtkZWZhdWx0OnJldHVybiBfLmViKGIsdm9pZCAwKX19OwpveT1mdW5jdGlvbihhLGIsYyl7aWYoXy54KCJkZWJ1Z193ZWJfdmVfZGF0YSIpKXt2YXIgZD1fLkIoYz8ucmVuZGVyZXJDb250ZXh0LF8uS3gpPy5sb2dnaW5nRGlyZWN0aXZlczshZCYmYyYmKGQ9Yy5sb2dnaW5nRGlyZWN0aXZlcyk7YTp7aWYoZD1jPy50cmFja2luZ1BhcmFtcz8/ZD8udHJhY2tpbmdQYXJhbXMpdHJ5e3ZhciBlPV8uQ28oZCk7aWYoZSl7bGV0IGg9Xy5FbyhlLDEpLGs9Xy5FbyhlLDIpO2U9e307aCE9PXZvaWQgMCYmKGUuR3M9TnVtYmVyKGgpKTtrIT09dm9pZCAwJiYoZS52ZVR5cGU9TnVtYmVyKGspKTt2YXIgZj1lO2JyZWFrIGF9fWNhdGNoKGgpe31mPXZvaWQgMH1mPy52ZVR5cGUhPT12b2lkIDAmJihhLmRhdGFzZXQudmU9U3RyaW5nKGYudmVUeXBlKSk7Zj8uR3MhPT12b2lkIDAmJihhLmRhdGFzZXQudmVJbmRleD1TdHJpbmcoZi5HcykpOyhjPWM/LmxvZ2dpbmdEaXJlY3RpdmVzPy5jbGllbnRWZVNwZWM/LnVpVHlwZSl8fChjPWIudmVUeXBlfHxiLmxvZ2dpbmdDb25maWc/LnZlVHlwZSk7CmMmJihhLmRhdGFzZXQudmU9U3RyaW5nKGMpKX19O3B5PWZ1bmN0aW9uKGEpe3JldHVybiBhLmxheWVyIT09dm9pZCAwP2EubGF5ZXI6YS5wYXJlbnQ/cHkoYS5wYXJlbnQpOmEubGF5ZXI9MH07cXk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLnB4LmdldChhKXx8e1plOmJ9O2MuWmU9YjtfLnB4LnNldChhLGMpO2EuZ2V0U2NyZWVuTGF5ZXI9KCk9PnB5KGMuWmUpfTtyeT1mdW5jdGlvbihhKXtmb3IoYT1hLnBhcmVudE5vZGU7YSYmIV8ucHguZ2V0KGEpPy5XeCYmIShhLmpmPz9hKS5ESjspYT1hLnBhcmVudE5vZGV8fGEuaG9zdDtpZihhKXJldHVybiBfLnB4LmdldChhKX07Xy5zeT1mdW5jdGlvbihhKXtpZihhKXtfLnB4LmRlbGV0ZShhKTtsZXQgYj1fLnkoKS5yZXNvbHZlKF8uTHgpO18uR3goYSxiKX19OwpfLnV5PWZ1bmN0aW9uKGEsYixjPSExKXtpZihjKXtpZihjPWEuZ2V0QXR0cmlidXRlKCJjbGllbnQtdmUtdHlwZSIpLGIuZGF0YSYmIWIuQkl8fGMpXy50digoKT0+e3ZhciBkPV8uQnYoYi5kYXRhKTt0eShhLGQpO295KGEsYixkKX0sImEiKSxfLll1KCgpPT52b2lkIF8uc3koYSkpfWVsc2UgdHlwZW9mIGIuZGF0YSE9PSJmdW5jdGlvbiImJihjPWIuZGF0YSx0eShhLGMpLG95KGEsYixjKSl9Owp0eT1mdW5jdGlvbihhLGIpe25hYSsrO3Z5KGEsYikmJl8uQ2soKS5HYSgoKT0+e18ucXgoXy5DaygpLCgpPT57aWYodnkoYSxiKSYmYS5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudD09PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmYSl7dmFyIGM7aWYoYS5nZXRBdHRyaWJ1dGUoImxheWVyIikpe3ZhciBkPWM9TnVtYmVyKGEuZ2V0QXR0cmlidXRlKCJsYXllciIpKSxlPV8ucHguZ2V0KGEpO2U/ZS5aZS5sYXllcj1kOnF5KGEsbmV3IHd5KGQpKTsoZD1yeShhKSkmJl8ucHguZ2V0KGEpPy5aZS5zZXRQYXJlbnQoZC5aZSl9ZWxzZShjPV8ucHguZ2V0KGEpKT9jPXB5KGMuWmUpOihjPXB5LGQ9bmV3IHd5LChlPXJ5KGEpKSYmZC5zZXRQYXJlbnQoZS5aZSkscXkoYSxkKSxjPWMoZCkpO2M/PyhjPTApO2Q9YS5nZXRBdHRyaWJ1dGUoImNsaWVudC12ZS10eXBlIik7ZT1OdW1iZXIoZCk7dmFyIGY9ITE7ZD0hMTt2YXIgaD1fLnB4LmdldChhKTtoJiYoaFtfLm94XSE9PWJ8fGUmJl8ucHguZ2V0KGEpPy5VZD09PQp2b2lkIDApJiYoaFtfLm94XT1iLGY9ZD1oLld4PSEwKTtfLnB4LmhhcyhhKSYmKF8ucHguZ2V0KGEpLlVkPWUpO2EudmlzdWFsRWxlbWVudCYmKGQ9ITApO3ZhciBrO18ueCgid2l6X25leHRfbGRfZml4X2NsaWVudF92ZV9zcGVjIik/az1fLkIoYj8ucmVuZGVyZXJDb250ZXh0LF8uS3gpPy5sb2dnaW5nRGlyZWN0aXZlc3x8Yj8ubG9nZ2luZ0RpcmVjdGl2ZXM6az1iPy5sb2dnaW5nRGlyZWN0aXZlcztfLngoIndpel9uZXh0X2NsaWVudF92ZV9wYXJlbnRfZml4Iik/ayYmKGsuY2xpZW50VmVTcGVjfHxrLnRyYWNraW5nUGFyYW1zKSYmKGg9KGg9Xy54eChhKSk/Xy5VeChoKTpudWxsLGs9VngoXy5oeCgpLGssaHx8dm9pZCAwLGMpKSYmKGEudmlzdWFsRWxlbWVudD1rKTprJiZrLmNsaWVudFZlU3BlYyYmKGg9Xy5VeChhKSxrPVZ4KF8uaHgoKSxrLGh8fHZvaWQgMCxjKSkmJihhLnZpc3VhbEVsZW1lbnQ9ayk7IWEudmlzdWFsRWxlbWVudCYmZSYmZiYmKGEudmVUeXBlPWUsaz12b2lkIDAsCl8ueCgid2l6X25leHRfY2xpZW50X3ZlX3BhcmVudF9maXgiKSYmKGU9Xy54eChhKSkmJihrPV8uVXgoZSkpLGs9Xy5FeChfLmh4KCksYSxrLGMpLGEudmlzdWFsRWxlbWVudD1rKTtkJiYoaz1fLnkoKS5yZXNvbHZlKF8uTHgpLF8uSngoYSx7ZGF0YTpiLG9ic2VydmVyOmssbGF5ZXI6YyxlYjp7VmI6ITEsc3RhdGU6InZpc2libGUifSxOYzp7VmI6ITEsc3RhdGU6ImhpZGRlbiJ9fSkpfX0sMCl9LDgpfTt2eT1mdW5jdGlvbihhLGIpe3JldHVybiBiPy50cmFja2luZ1BhcmFtc3x8Yj8ubG9nZ2luZ0RpcmVjdGl2ZXN8fF8uQihiPy5yZW5kZXJlckNvbnRleHQsXy5LeCl8fGEuZ2V0QXR0cmlidXRlKCJjbGllbnQtdmUtdHlwZSIpPyEwOiExfTtvYWE9L15odHRwcz8kL2k7cGFhPVsiUE9TVCIsIlBVVCJdO2t5PVtdO18uSGEoVHgsXy5nZik7Xy5nPVR4LnByb3RvdHlwZTtfLmcuUHU9ZnVuY3Rpb24oKXt0aGlzLmRpc3Bvc2UoKTtfLnhiKGt5LHRoaXMpfTsKXy5nLnNlbmQ9ZnVuY3Rpb24oYSxiLGMsZCl7aWYodGhpcy5yYSl0aHJvdyBFcnJvcigiUGFgIit0aGlzLmhhKyJgIithKTtiPWI/Yi50b1VwcGVyQ2FzZSgpOiJHRVQiO3RoaXMuaGE9YTt0aGlzLkI9IiI7dGhpcy5aPSExO3RoaXMuaj0hMDt0aGlzLnJhPW5ldyBYTUxIdHRwUmVxdWVzdDt0aGlzLnJhLm9ucmVhZHlzdGF0ZWNoYW5nZT0oMCxfLnlnKSgoMCxfLkNhKSh0aGlzLmdyLHRoaXMpKTt0cnl7dGhpcy5nYT0hMCx0aGlzLnJhLm9wZW4oYixTdHJpbmcoYSksITApLHRoaXMuZ2E9ITF9Y2F0Y2goZil7UXgodGhpcyxmKTtyZXR1cm59YT1jfHwiIjtjPW5ldyBNYXAodGhpcy5oZWFkZXJzKTtpZihkKWlmKE9iamVjdC5nZXRQcm90b3R5cGVPZihkKT09PU9iamVjdC5wcm90b3R5cGUpZm9yKHZhciBlIGluIGQpYy5zZXQoZSxkW2VdKTtlbHNlIGlmKHR5cGVvZiBkLmtleXM9PT0iZnVuY3Rpb24iJiZ0eXBlb2YgZC5nZXQ9PT0iZnVuY3Rpb24iKWZvcihsZXQgZiBvZiBkLmtleXMoKSljLnNldChmLApkLmdldChmKSk7ZWxzZSB0aHJvdyBFcnJvcigiUWFgIitTdHJpbmcoZCkpO2Q9QXJyYXkuZnJvbShjLmtleXMoKSkuZmluZChmPT4iY29udGVudC10eXBlIj09Zi50b0xvd2VyQ2FzZSgpKTtlPV8udS5Gb3JtRGF0YSYmYSBpbnN0YW5jZW9mIF8udS5Gb3JtRGF0YTshKF8uc2IocGFhLGIpPj0wKXx8ZHx8ZXx8Yy5zZXQoIkNvbnRlbnQtVHlwZSIsImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04Iik7Zm9yKGxldCBbZixoXW9mIGMpdGhpcy5yYS5zZXRSZXF1ZXN0SGVhZGVyKGYsaCk7dGhpcy55YSYmKHRoaXMucmEucmVzcG9uc2VUeXBlPXRoaXMueWEpOyJ3aXRoQ3JlZGVudGlhbHMiaW4gdGhpcy5yYSYmdGhpcy5yYS53aXRoQ3JlZGVudGlhbHMhPT10aGlzLm9hJiYodGhpcy5yYS53aXRoQ3JlZGVudGlhbHM9dGhpcy5vYSk7dHJ5e3RoaXMuRCYmKGNsZWFyVGltZW91dCh0aGlzLkQpLHRoaXMuRD1udWxsKSx0aGlzLlU+MCYmKHRoaXMuRD1zZXRUaW1lb3V0KHRoaXMuZEIuYmluZCh0aGlzKSwKdGhpcy5VKSksdGhpcy5JPSEwLHRoaXMucmEuc2VuZChhKSx0aGlzLkk9ITF9Y2F0Y2goZil7UXgodGhpcyxmKX19O18uZy5kQj1mdW5jdGlvbigpe3R5cGVvZiBfLkNxIT0idW5kZWZpbmVkIiYmdGhpcy5yYSYmKHRoaXMuQj0iVGltZWQgb3V0IGFmdGVyICIrdGhpcy5VKyJtcywgYWJvcnRpbmciLHRoaXMuZGlzcGF0Y2hFdmVudCgidGltZW91dCIpLHRoaXMuYWJvcnQoOCkpfTtfLmcuYWJvcnQ9ZnVuY3Rpb24oKXt0aGlzLnJhJiZ0aGlzLmomJih0aGlzLmo9ITEsdGhpcy52PSEwLHRoaXMucmEuYWJvcnQoKSx0aGlzLnY9ITEsdGhpcy5kaXNwYXRjaEV2ZW50KCJjb21wbGV0ZSIpLHRoaXMuZGlzcGF0Y2hFdmVudCgiYWJvcnQiKSxQeCh0aGlzKSl9O18uZy5sYT1mdW5jdGlvbigpe3RoaXMucmEmJih0aGlzLmomJih0aGlzLmo9ITEsdGhpcy52PSEwLHRoaXMucmEuYWJvcnQoKSx0aGlzLnY9ITEpLFB4KHRoaXMsITApKTtUeC56Yi5sYS5jYWxsKHRoaXMpfTsKXy5nLmdyPWZ1bmN0aW9uKCl7dGhpcy5pYSgpfHwodGhpcy5nYXx8dGhpcy5JfHx0aGlzLnY/U3godGhpcyk6dGhpcy5seigpKX07Xy5nLmx6PWZ1bmN0aW9uKCl7U3godGhpcyl9O18uZy5pc0FjdGl2ZT1mdW5jdGlvbigpe3JldHVybiEhdGhpcy5yYX07Xy5nLmlzQ29tcGxldGU9ZnVuY3Rpb24oKXtyZXR1cm4odGhpcy5yYT90aGlzLnJhLnJlYWR5U3RhdGU6MCk9PTR9O18uZy5pc1N1Y2Nlc3M9ZnVuY3Rpb24oKXt2YXIgYT1fLlJ4KHRoaXMpLGI7aWYoIShiPV8uc2YoYSkpKXtpZihhPWE9PT0wKWE9Xy5PYihTdHJpbmcodGhpcy5oYSkpLGE9IW9hYS50ZXN0KGEpO2I9YX1yZXR1cm4gYn07Xy5nLmdldExhc3RFcnJvcj1mdW5jdGlvbigpe3JldHVybiB0eXBlb2YgdGhpcy5CPT09InN0cmluZyI/dGhpcy5COlN0cmluZyh0aGlzLkIpfTtfLmc9JHgucHJvdG90eXBlOwpfLmcuYWRkPWZ1bmN0aW9uKGEsYil7YXkodGhpcyk7dGhpcy52PW51bGw7YT1ieSh0aGlzLGEpO3ZhciBjPXRoaXMuai5nZXQoYSk7Y3x8dGhpcy5qLnNldChhLGM9W10pO2MucHVzaChiKTt0aGlzLm8rPTE7cmV0dXJuIHRoaXN9O18uZy5yZW1vdmU9ZnVuY3Rpb24oYSl7YXkodGhpcyk7YT1ieSh0aGlzLGEpO3JldHVybiB0aGlzLmouaGFzKGEpPyh0aGlzLnY9bnVsbCx0aGlzLm8tPXRoaXMuai5nZXQoYSkubGVuZ3RoLHRoaXMuai5kZWxldGUoYSkpOiExfTtfLmcuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLmo9dGhpcy52PW51bGw7dGhpcy5vPTB9O18uZy5pc0VtcHR5PWZ1bmN0aW9uKCl7YXkodGhpcyk7cmV0dXJuIHRoaXMubz09MH07Xy5nLmZvckVhY2g9ZnVuY3Rpb24oYSxiKXtheSh0aGlzKTt0aGlzLmouZm9yRWFjaChmdW5jdGlvbihjLGQpe2MuZm9yRWFjaChmdW5jdGlvbihlKXthLmNhbGwoYixlLGQsdGhpcyl9LHRoaXMpfSx0aGlzKX07Cl8uZy5yZD1mdW5jdGlvbigpe2F5KHRoaXMpO3ZhciBhPUFycmF5LmZyb20odGhpcy5qLnZhbHVlcygpKSxiPUFycmF5LmZyb20odGhpcy5qLmtleXMoKSksYz1bXTtmb3IobGV0IGQ9MDtkPGIubGVuZ3RoO2QrKyl7bGV0IGU9YVtkXTtmb3IobGV0IGY9MDtmPGUubGVuZ3RoO2YrKyljLnB1c2goYltkXSl9cmV0dXJuIGN9O18uZy5NYz1mdW5jdGlvbihhKXtheSh0aGlzKTt2YXIgYj1bXTtpZih0eXBlb2YgYT09PSJzdHJpbmciKWN5KHRoaXMsYSkmJihiPWIuY29uY2F0KHRoaXMuai5nZXQoYnkodGhpcyxhKSkpKTtlbHNle2E9QXJyYXkuZnJvbSh0aGlzLmoudmFsdWVzKCkpO2ZvcihsZXQgYz0wO2M8YS5sZW5ndGg7YysrKWI9Yi5jb25jYXQoYVtjXSl9cmV0dXJuIGJ9OwpfLmcuc2V0PWZ1bmN0aW9uKGEsYil7YXkodGhpcyk7dGhpcy52PW51bGw7YT1ieSh0aGlzLGEpO2N5KHRoaXMsYSkmJih0aGlzLm8tPXRoaXMuai5nZXQoYSkubGVuZ3RoKTt0aGlzLmouc2V0KGEsW2JdKTt0aGlzLm8rPTE7cmV0dXJuIHRoaXN9O18uZy5nZXQ9ZnVuY3Rpb24oYSxiKXtpZighYSlyZXR1cm4gYjthPXRoaXMuTWMoYSk7cmV0dXJuIGEubGVuZ3RoPjA/U3RyaW5nKGFbMF0pOmJ9OwpfLmcudG9TdHJpbmc9ZnVuY3Rpb24oKXtpZih0aGlzLnYpcmV0dXJuIHRoaXMudjtpZighdGhpcy5qKXJldHVybiIiO3ZhciBhPVtdLGI9QXJyYXkuZnJvbSh0aGlzLmoua2V5cygpKTtmb3IobGV0IGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGM9YltkXTtsZXQgZT1lbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGMpKTtjPXRoaXMuTWMoYyk7Zm9yKGxldCBmPTA7ZjxjLmxlbmd0aDtmKyspe2xldCBoPWU7Y1tmXSE9PSIiJiYoaCs9Ij0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoY1tmXSkpKTthLnB1c2goaCl9fXJldHVybiB0aGlzLnY9YS5qb2luKCImIil9O18uZy5jbG9uZT1mdW5jdGlvbigpe3ZhciBhPW5ldyAkeDthLnY9dGhpcy52O3RoaXMuaiYmKGEuaj1uZXcgTWFwKHRoaXMuaiksYS5vPXRoaXMubyk7cmV0dXJuIGF9OwpfLmcuZXh0ZW5kPWZ1bmN0aW9uKGEpe2ZvcihsZXQgYj0wO2I8YXJndW1lbnRzLmxlbmd0aDtiKyspamFhKGFyZ3VtZW50c1tiXSxmdW5jdGlvbihjLGQpe3RoaXMuYWRkKGQsYyl9LHRoaXMpfTt2YXIgeHk9L1sjXC9cP0BdL2cscWFhPS9bI1w/XS9nLHJhYT0vWyNcPzpdL2csc2FhPS8jL2csbWFhPS9bI1w/QF0vZzsKXy5meS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXt2YXIgYT1bXSxiPXRoaXMuQjtiJiZhLnB1c2goZXkoYix4eSwhMCksIjoiKTt2YXIgYz10aGlzLm87aWYoY3x8Yj09ImZpbGUiKWEucHVzaCgiLy8iKSwoYj10aGlzLkkpJiZhLnB1c2goZXkoYix4eSwhMCksIkAiKSxhLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhjKSkucmVwbGFjZSgvJTI1KFswLTlhLWZBLUZdezJ9KS9nLCIlJDEiKSksYz10aGlzLlksYyE9bnVsbCYmYS5wdXNoKCI6IixTdHJpbmcoYykpO2lmKGM9dGhpcy5qKXRoaXMubyYmYy5jaGFyQXQoMCkhPSIvIiYmYS5wdXNoKCIvIiksYS5wdXNoKGV5KGMsYy5jaGFyQXQoMCk9PSIvIj9xYWE6cmFhLCEwKSk7KGM9dGhpcy5LLnRvU3RyaW5nKCkpJiZhLnB1c2goIj8iLGMpOyhjPXRoaXMudikmJmEucHVzaCgiIyIsZXkoYyxzYWEpKTtyZXR1cm4gYS5qb2luKCIiKX07Cl8uZnkucHJvdG90eXBlLnJlc29sdmU9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5jbG9uZSgpLGM9ISFhLkI7Yz9neShiLGEuQik6Yz0hIWEuSTtjP2IuST1hLkk6Yz0hIWEubztjP2Iubz1hLm86Yz1hLlkhPW51bGw7dmFyIGQ9YS5qO2lmKGMpaHkoYixhLlkpO2Vsc2UgaWYoYz0hIWEuail7aWYoZC5jaGFyQXQoMCkhPSIvIilpZih0aGlzLm8mJiF0aGlzLmopZD0iLyIrZDtlbHNle3ZhciBlPWIuai5sYXN0SW5kZXhPZigiLyIpO2UhPS0xJiYoZD1iLmouc2xpY2UoMCxlKzEpK2QpfWU9ZDtpZihlPT0iLi4ifHxlPT0iLiIpZD0iIjtlbHNlIGlmKGUuaW5kZXhPZigiLi8iKSE9LTF8fGUuaW5kZXhPZigiLy4iKSE9LTEpe2Q9ZS5sYXN0SW5kZXhPZigiLyIsMCk9PTA7ZT1lLnNwbGl0KCIvIik7bGV0IGY9W107Zm9yKGxldCBoPTA7aDxlLmxlbmd0aDspe2xldCBrPWVbaCsrXTtrPT0iLiI/ZCYmaD09ZS5sZW5ndGgmJmYucHVzaCgiIik6az09Ii4uIj8oKGYubGVuZ3RoPjF8fGYubGVuZ3RoPT0KMSYmZlswXSE9IiIpJiZmLnBvcCgpLGQmJmg9PWUubGVuZ3RoJiZmLnB1c2goIiIpKTooZi5wdXNoKGspLGQ9ITApfWQ9Zi5qb2luKCIvIil9ZWxzZSBkPWV9Yz9iLmo9ZDpjPWEuSy50b1N0cmluZygpIT09IiI7Yz9peShiLGEuSy5jbG9uZSgpKTpjPSEhYS52O2MmJihiLnY9YS52KTtyZXR1cm4gYn07Xy5meS5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IF8uZnkodGhpcyl9O18uZnkucHJvdG90eXBlLmFtPWZ1bmN0aW9uKCl7cmV0dXJuITF9O18uSGEoXy5qeSxfLmdmKTtfLmc9Xy5qeS5wcm90b3R5cGU7Xy5nLmVuYWJsZWQ9ITE7Xy5nLnNjPW51bGw7Xy5nLnNldEludGVydmFsPWZ1bmN0aW9uKGEpe3RoaXMudj1hO3RoaXMuc2MmJnRoaXMuZW5hYmxlZD8odGhpcy5zdG9wKCksdGhpcy5zdGFydCgpKTp0aGlzLnNjJiZ0aGlzLnN0b3AoKX07Cl8uZy5hQj1mdW5jdGlvbigpe2lmKHRoaXMuZW5hYmxlZCl7bGV0IGE9Xy5FYSgpLXRoaXMuRDthPjAmJmE8dGhpcy52Ki44P3RoaXMuc2M9dGhpcy5qLnNldFRpbWVvdXQodGhpcy5CLHRoaXMudi1hKToodGhpcy5zYyYmKHRoaXMuai5jbGVhclRpbWVvdXQodGhpcy5zYyksdGhpcy5zYz1udWxsKSx0aGlzLmRpc3BhdGNoRXZlbnQoInRpY2siKSx0aGlzLmVuYWJsZWQmJih0aGlzLnN0b3AoKSx0aGlzLnN0YXJ0KCkpKX19O18uZy5zdGFydD1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hMDt0aGlzLnNjfHwodGhpcy5zYz10aGlzLmouc2V0VGltZW91dCh0aGlzLkIsdGhpcy52KSx0aGlzLkQ9Xy5FYSgpKX07Xy5nLnN0b3A9ZnVuY3Rpb24oKXt0aGlzLmVuYWJsZWQ9ITE7dGhpcy5zYyYmKHRoaXMuai5jbGVhclRpbWVvdXQodGhpcy5zYyksdGhpcy5zYz1udWxsKX07Xy5nLmxhPWZ1bmN0aW9uKCl7Xy5qeS56Yi5sYS5jYWxsKHRoaXMpO3RoaXMuc3RvcCgpO2RlbGV0ZSB0aGlzLmp9O18uQXk9bmV3IF8uSSgiY29udGludWF0aW9uQ29tbWFuZCIpO18uQnk9bmV3IF8uSSgibW9kaWZ5Q2hhbm5lbE5vdGlmaWNhdGlvblByZWZlcmVuY2VFbmRwb2ludCIpO18uQ3k9bmV3IF8uSSgidW5kb0ZlZWRiYWNrRW5kcG9pbnQiKTtfLkR5PW5ldyBfLkkoInVuc3Vic2NyaWJlRW5kcG9pbnQiKTt2YXIgdGFhO3RhYT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMucmVnaXN0ZXI9bmV3IE1hcH1jbGVhcigpe18ubXkodGhpcyk7dGhpcy5yZWdpc3Rlci5jbGVhcigpfX07Xy5FeT1uZXcgdGFhO3ZhciB1YWE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmo9e319Y29udGFpbnMoYSl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLmosYSl9Z2V0KGEpe2lmKHRoaXMuY29udGFpbnMoYSkpcmV0dXJuIHRoaXMualthXX1zZXQoYSxiKXt0aGlzLmpbYV09Yn1yZCgpe3JldHVybiBPYmplY3Qua2V5cyh0aGlzLmopfXJlbW92ZShhKXtkZWxldGUgdGhpcy5qW2FdfX07Xy5HeT1uZXcgY2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLm1hcHBpbmdzPW5ldyB1YWE7dGhpcy5qPW5ldyBTZXR9Z2V0KGEpe3ZhciBiPXRoaXMubWFwcGluZ3MuZ2V0KGEudG9TdHJpbmcoKSk7cmV0dXJuIF8ubnkodGhpcyxiLGEpfW9uTG9hZEVycm9yKGEpe3RoaXMuai5hZGQoYSk7cmV0dXJuKCk9Pnt0aGlzLmouZGVsZXRlKGEpfX19O18uSHk9bmV3IF8uVnMoIkFTWU5DX0lOTkVSVFVCRV9UUkFOU1BPUlRfVE9LRU4iKTtfLkl5PW5ldyBfLlZzKCJJTk5FUlRVQkVfVFJBTlNQT1JUX1RPS0VOIik7Xy5KeT1uZXcgXy5WcygiUkVTUE9OU0VfUFJPQ0VTU09SX01BUF9UT0tFTiIpO3ZhciB3eT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmxheWVyPWF9c2V0UGFyZW50KGEpe3RoaXMucGFyZW50PWF9fTt2YXIgbmFhPTA7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8udmFhPSJwbGF5ZXJfdWlkXyIrKE1hdGgucmFuZG9tKCkqMUU5Pj4+MCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciB4YWEseWFhLHphYSxWeSwkeSxheixieixjeixBYWEsaHosQmFhLENhYSxpeixreixFYWEsdHosd2FhLFJ5LFN5LEhhYSxJYWEsRGFhLEZhYSxkeixqeixleixmejtfLkt5PWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBfLkJmKXJldHVybiBhO3ZhciBiPW5ldyBfLkJmKF8uZ2QpO18uQWYoYiwyLGEpO3JldHVybiBifTtfLkx5PWZ1bmN0aW9uKGEsYil7Yj1fLmRiKGIpO2IhPT12b2lkIDAmJihhLmhyZWY9Yil9O18uTXk9ZnVuY3Rpb24oYSl7dmFyIGI9MDtmb3IobGV0IGM9MDtjPGEubGVuZ3RoOysrYyliPTMxKmIrYS5jaGFyQ29kZUF0KGMpPj4+MDtyZXR1cm4gYn07Xy5OeT1mdW5jdGlvbihhKXthPV8uTWIoYSk7cmV0dXJuIF8uSWIobnVsbCxudWxsLG51bGwsbnVsbCxhWzVdLGFbNl0sYVs3XSl9O18uT3k9ZnVuY3Rpb24oYSl7dmFyIGI9YS5pbmRleE9mKCIjIik7cmV0dXJuIGI8MD9hOmEuc2xpY2UoMCxiKX07Cl8uUHk9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9YS5zZWFyY2goXy5ZYiksZD0wLGUsZj1bXTsoZT1fLlhiKGEsZCxiLGMpKT49MDspZi5wdXNoKGEuc3Vic3RyaW5nKGQsZSkpLGQ9TWF0aC5taW4oYS5pbmRleE9mKCImIixlKSsxfHxjLGMpO2YucHVzaChhLnNsaWNlKGQpKTtyZXR1cm4gZi5qb2luKCIiKS5yZXBsYWNlKHdhYSwiJDEiKX07eGFhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1iJjEyOD8wOi0xLGU9YS5sZW5ndGgsZjtpZihmPSEhZSlmPWFbZS0xXSxmPWYhPW51bGwmJnR5cGVvZiBmPT09Im9iamVjdCImJmYuY29uc3RydWN0b3I9PT1PYmplY3Q7dmFyIGg9ZSsoZj8tMTowKTtmb3IoYj1iJjEyOD8xOjA7YjxoO2IrKyljKGItZCxhW2JdKTtpZihmKXthPWFbZS0xXTtmb3IobGV0IGsgaW4gYSkhaXNOYU4oaykmJmMoK2ssYVtrXSl9fTtfLlF5PWZ1bmN0aW9uKGEpe2lmKGE9PW51bGx8fHR5cGVvZiBhPT09ImJvb2xlYW4iKXJldHVybiBhO2lmKHR5cGVvZiBhPT09Im51bWJlciIpcmV0dXJuISFhfTsKeWFhPWZ1bmN0aW9uKGEpe3ZhciBiPV8uR2EoXy5KYyk7cmV0dXJuIGI/YVtiXTp2b2lkIDB9O3phYT1mdW5jdGlvbihhKXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgImJvb2xlYW4iOnJldHVybiBSeXx8KFJ5PVswLHZvaWQgMCwhMF0pO2Nhc2UgIm51bWJlciI6cmV0dXJuIGE+MD92b2lkIDA6YT09PTA/U3l8fChTeT1bMCx2b2lkIDBdKTpbLWEsdm9pZCAwXTtjYXNlICJzdHJpbmciOnJldHVyblswLGFdO2Nhc2UgIm9iamVjdCI6cmV0dXJuIGF9fTtfLlR5PWZ1bmN0aW9uKGEpe3JldHVybiEhKDImYSkmJiEhKDQmYSl8fCEhKDI1NiZhKX07Xy5VeT1mdW5jdGlvbihhLGIpe3JldHVybiBhPSgyJmI/YXwyOmEmLTMpJi0yNzN9O1Z5PWZ1bmN0aW9uKGEsYil7MiZiJiYoYXw9Mik7cmV0dXJuIGF8MX07Cl8uV3k9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsaCxrKXt2YXIgbD1fLkJjKGEsYyk7Zj1sPzE6ZjtoPSEhaHx8Zj09PTM7bD1rJiYhbDsoZj09PTJ8fGwpJiZfLm13KGEpJiYoYj1hLkRhLGM9YltfLkFjXXwwKTthPV8uZGQoYixlKTtrPUFycmF5LmlzQXJyYXkoYSk/YTpfLm1yO3ZhciBtPWs9PT1fLm1yPzc6a1tfLkFjXXwwLG49VnkobSxjKTtpZihhPSEoNCZuKSl7dmFyIHA9ayxyPWM7bGV0IHQ9ISEoMiZuKTt0JiYocnw9Mik7bGV0IHY9IXQsej0hMCxFPTAsQT0wO2Zvcig7RTxwLmxlbmd0aDtFKyspe2xldCBGPV8ua3cocFtFXSxkLHIpO2lmKEYgaW5zdGFuY2VvZiBkKXtpZighdCl7bGV0IEM9Xy5CYyhGKTt2JiYodj0hQyk7eiYmKHo9Qyl9cFtBKytdPUZ9fUE8RSYmKHAubGVuZ3RoPUEpO258PTQ7bj16P24mLTQwOTc6bnw0MDk2O249dj9ufDg6biYtOX1uIT09bSYmKGtbXy5BY109biwyJm4mJk9iamVjdC5mcmVlemUoaykpO2lmKGwmJiEoOCZufHwhay5sZW5ndGgmJihmPT09MXx8CihmIT09ND8wOjImbnx8ISgxNiZuKSYmMzImYykpKSl7Xy5UeShuKSYmKGs9Wy4uLmtdLG49Xy5VeShuLGMpLGM9Xy5wdyhiLGMsZSxrKSk7ZD1rO2w9bjtmb3IobT0wO208ZC5sZW5ndGg7bSsrKXA9ZFttXSxuPV8ubHcocCkscCE9PW4mJihkW21dPW4pO2x8PTg7bj1sPWQubGVuZ3RoP2x8NDA5NjpsJi00MDk3O2tbXy5BY109bn1kPWs7bD1rPW47Zj09PTF8fChmIT09ND8wOjIma3x8ISgxNiZrKSYmMzImYyk/Xy5UeShrKXx8KGt8PSFkLmxlbmd0aHx8YSYmISg0MDk2JmspfHwzMiZjJiYhKDQwOTYma3x8MTYmayk/MjoyNTYsayE9PWwmJihkW18uQWNdPWspLE9iamVjdC5mcmVlemUoZCkpOihmPT09MiYmXy5UeShrKSYmKGQ9Wy4uLmRdLGw9MCxrPV8uVXkoayxjKSxjPV8ucHcoYixjLGUsZCkpLF8uVHkoayl8fChofHwoa3w9MTYpLGshPT1sJiYoZFtfLkFjXT1rKSkpOzIma3x8ISg0MDk2Jmt8fDE2JmspfHxfLm93KGIsYyk7cmV0dXJuIGR9OwpfLlh5PWZ1bmN0aW9uKGEsYil7Zm9yKDtiPjEyNzspYS5qLnB1c2goYiYxMjd8MTI4KSxiPj4+PTc7YS5qLnB1c2goYil9O18uWXk9ZnVuY3Rpb24oYSxiKXtiLmxlbmd0aCE9PTAmJihhLnYucHVzaChiKSxhLm8rPWIubGVuZ3RoKX07Xy5aeT1mdW5jdGlvbihhLGIsYyl7Xy5YeShhLmosYio4K2MpfTskeT1mdW5jdGlvbihhLGIpe18uWnkoYSxiLDIpO2I9YS5qLmVuZCgpO18uWXkoYSxiKTtiLnB1c2goYS5vKTtyZXR1cm4gYn07YXo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnBvcCgpO2ZvcihjPWEubythLmoubGVuZ3RoKCktYztjPjEyNzspYi5wdXNoKGMmMTI3fDEyOCksYz4+Pj03LGEubysrO2IucHVzaChjKTthLm8rK307Yno9ZnVuY3Rpb24oYSxiKXtpZihhIGluc3RhbmNlb2YgXy5NcilyZXR1cm4gYS5EYTtpZihBcnJheS5pc0FycmF5KGEpKXJldHVybiBfLlhjKGEsYlswXSxiWzFdKX07CmN6PWZ1bmN0aW9uKGEsYixjLGQsZSl7Yj1ieihiLGQpO2IhPW51bGwmJihjPSR5KGEsYyksZShiLGEpLGF6KGEsYykpfTtBYWE9ZnVuY3Rpb24oYSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSkmJiEhYS5sZW5ndGgmJnR5cGVvZiBhWzBdPT09Im51bWJlciImJmFbMF0+MH07Cmh6PWZ1bmN0aW9uKGEpe3ZhciBiPUJhYSxjPUNhYSxkPWFbZHpdO2lmKGQpcmV0dXJuIGQ7ZD17fTtkLlpIPWE7ZC5PcT16YWEoYVswXSk7dmFyIGU9YVsxXSxmPTE7ZSYmZS5jb25zdHJ1Y3Rvcj09PU9iamVjdCYmKGQuZXh0ZW5zaW9ucz1lLGU9YVsrK2ZdLHR5cGVvZiBlPT09ImZ1bmN0aW9uIiYmKGQuU3g9ITAsZXo/Pyhlej1lKSxmej8/KGZ6PWFbZisxXSksZT1hW2YrPTJdKSk7Zm9yKHZhciBoPXt9O2UmJkFhYShlKTspe2Zvcih2YXIgaz0wO2s8ZS5sZW5ndGg7aysrKWhbZVtrXV09ZTtlPWFbKytmXX1mb3Ioaz0xO2UhPT12b2lkIDA7KXt0eXBlb2YgZT09PSJudW1iZXIiJiYoays9ZSxlPWFbKytmXSk7bGV0IG47dmFyIGw9dm9pZCAwO2UgaW5zdGFuY2VvZiBfLmd6P249ZToobj1EYWEsZi0tKTtpZihuPy5vKXtlPWFbKytmXTtsPWE7dmFyIG09Zjt0eXBlb2YgZT09PSJmdW5jdGlvbiImJihlPWUoKSxsW21dPWUpO2w9ZX1lPWFbKytmXTttPWsrMTt0eXBlb2YgZT09PSJudW1iZXIiJiYKZTwwJiYobS09ZSxlPWFbKytmXSk7Zm9yKDtrPG07aysrKXtsZXQgcD1oW2tdO2w/YyhkLGssbixsLHApOmIoZCxrLG4scCl9fXJldHVybiBhW2R6XT1kfTtCYWE9ZnVuY3Rpb24oYSxiLGMpe2FbYl09Yy5qfTtDYWE9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGUsZixoPWMuajthW2JdPShrLGwsbSk9PmgoayxsLG0sZnx8KGY9aHooZCkuT3EpLGV8fChlPWl6KGQpKSl9O2l6PWZ1bmN0aW9uKGEpe3ZhciBiPWFbanpdO2lmKCFiKXtsZXQgYz1oeihhKTtiPShkLGUpPT5reihkLGUsYyk7YVtqel09Yn1yZXR1cm4gYn07a3o9ZnVuY3Rpb24oYSxiLGMpe3hhYShhLGFbXy5BY118MCwoZCxlKT0+e2lmKGUhPW51bGwpe3ZhciBmPUVhYShjLGQpO2Y/ZihiLGUsZCk6ZDw1MDB8fF8ueGMoXy5rciwzKX19KTsoYT15YWEoYSkpJiZhLmN3KChkLGUsZik9PntfLll5KGIsYi5qLmVuZCgpKTtmb3IoZD0wO2Q8Zi5sZW5ndGg7ZCsrKV8uWXkoYixfLnd3KGZbZF0pfHxuZXcgVWludDhBcnJheSgwKSl9KX07CkVhYT1mdW5jdGlvbihhLGIpe3ZhciBjPWFbYl07aWYoYylyZXR1cm4gYztpZihjPWEuZXh0ZW5zaW9ucylpZihjPWNbYl0pe2M9QXJyYXkuaXNBcnJheShjKT9jWzBdaW5zdGFuY2VvZiBfLmd6P2M6W0ZhYSxjXTpbYyx2b2lkIDBdO3ZhciBkPWNbMF0uajtpZihjPWNbMV0pe2xldCBlPWl6KGMpLGY9aHooYykuT3E7Yz1hLlN4P2Z6KGYsZSk6KGgsayxsKT0+ZChoLGssbCxmLGUpfWVsc2UgYz1kO3JldHVybiBhW2JdPWN9fTtfLmx6PWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBfLmd6KGEsYil9O18ubXo9ZnVuY3Rpb24oYSxiLGMpe2I9Xy5ReShiKTtiIT1udWxsJiYoXy5aeShhLGMsMCksYS5qLmoucHVzaChiPzE6MCkpfTtfLm56PWZ1bmN0aW9uKGEsYixjLGQsZSl7Yj1ieihiLGQpO2IhPW51bGwmJihjPSR5KGEsYyksZShiLGEpLGF6KGEsYykpfTtfLnB6PWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBfLm96KHRoaXMsYSl9fTsKXy5xej1mdW5jdGlvbigpe2lmKCFfLkxqLmlzRW5hYmxlZCgpKXJldHVybiExO2lmKCFfLkxqLmlzRW1wdHkoKSlyZXR1cm4hMDtfLkxqLnNldCgiVEVTVENPT0tJRVNFTkFCTEVEIiwiMSIse3ZqOjYwfSk7aWYoXy5Mai5nZXQoIlRFU1RDT09LSUVTRU5BQkxFRCIpIT09IjEiKXJldHVybiExO18uTGoucmVtb3ZlKCJURVNUQ09PS0lFU0VOQUJMRUQiKTtyZXR1cm4hMH07Xy5yej1mdW5jdGlvbigpe3JldHVybihfLmhyfHxfLmlyKSYmXy5NaygiYXBwbGV3ZWJraXQiKSYmIV8uTWsoInZlcnNpb24iKSYmKCFfLk1rKCJzYWZhcmkiKXx8Xy5NaygiZ3NhLyIpKX07Xy5zej1mdW5jdGlvbigpe3JldHVybiBfLk5kKCl8fF8ucnooKXx8Xy5lciYmXy5NaygidmVyc2lvbi8iKT8hMDpfLncoIkVPTV9WSVNJVE9SX0RBVEEiKT8hMTohMH07Cl8udXo9ZnVuY3Rpb24oYSxiLGMsZD0hMCl7dmFyIGU9Xy53KCJWQUxJRF9TRVNTSU9OX1RFTVBEQVRBX0RPTUFJTlMiLFtdKSxmPV8uUGIod2luZG93LmxvY2F0aW9uLmhyZWYpO2YmJmUucHVzaChmKTtmPV8uUGIoYSk7aWYoXy5zYihlLGYpPj0wfHwhZiYmYS5sYXN0SW5kZXhPZigiLyIsMCk9PTApaWYoZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIiksXy5MeShlLGEpLGE9ZS5ocmVmKWlmKGE9Xy5OeShhKSxhPV8uT3koYSkpZCYmIWIuY3NuJiYoYi5pdGN0fHxiLnZlZCkmJihiPU9iamVjdC5hc3NpZ24oe2NzbjpfLmlxKCl9LGIpKSxjPyhjPXBhcnNlSW50KGMsMTApLGlzRmluaXRlKGMpJiZjPjAmJnR6KGEsYixjKSk6dHooYSxiKX07dHo9ZnVuY3Rpb24oYSxiLGMpe2E9Xy52eihhKTtiPWI/Xy5VYihiKToiIjtjPWN8fDU7Xy5zeigpJiZfLk1qKGEsYixjKX07Xy52ej1mdW5jdGlvbihhKXtmb3IobGV0IGIgb2YgR2FhKWE9Xy5QeShhLGIpO3JldHVybiJTVC0iK18uTXkoYSkudG9TdHJpbmcoMzYpfTsKXy53ej17fTt3YWE9L1s/Jl0oJHwjKS87SGFhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5qPVtdfWxlbmd0aCgpe3JldHVybiB0aGlzLmoubGVuZ3RofWVuZCgpe3ZhciBhPXRoaXMuajt0aGlzLmo9W107cmV0dXJuIGF9d3JpdGVVaW50OChhKXt0aGlzLmoucHVzaChhPj4+MCYyNTUpfXdyaXRlSW50OChhKXt0aGlzLmoucHVzaChhPj4+MCYyNTUpfX07SWFhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy52PVtdO3RoaXMubz0wO3RoaXMuaj1uZXcgSGFhfX07Xy5nej1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMuaj1hO2E9Xy5HYShfLnpyKTt0aGlzLm89ISFhJiZiPT09YXx8ITF9fTtEYWE9bmV3IF8uZ3ooY3osXy56cik7RmFhPW5ldyBfLmd6KGN6LF8uenIpO2R6PVN5bWJvbCgpO2p6PVN5bWJvbCgpOwpfLm96PShhLGIpPT57dmFyIGM9bmV3IElhYTtreihhLkRhLGMsaHooYikpO18uWXkoYyxjLmouZW5kKCkpO2E9bmV3IFVpbnQ4QXJyYXkoYy5vKTtiPWMudjt2YXIgZD1iLmxlbmd0aCxlPTA7Zm9yKGxldCBmPTA7ZjxkO2YrKyl7bGV0IGg9YltmXTthLnNldChoLGUpO2UrPWgubGVuZ3RofWMudj1bYV07cmV0dXJuIGF9O18ueHo9Xy5seihfLm16LF8uQXIpOwpfLnl6PWZ1bmN0aW9uKGEsYixjPV8uenIpe3JldHVybiBuZXcgXy5neihiLGMpfShmdW5jdGlvbihhLGIsYyxkLGUpe2lmKGEuaigpIT09MilyZXR1cm4hMTt2YXIgZj1hLm87ZD1fLlhjKHZvaWQgMCxkWzBdLGRbMV0pO3ZhciBoPWJbXy5BY118MDtpZihoJjIpdGhyb3cgRXJyb3IoKTt2YXIgaz1oJjEyOD9fLnd6OnZvaWQgMCxsPV8uZGQoYixjLGspO2w9QXJyYXkuaXNBcnJheShsKT9sOl8ubXI7dmFyIG09bD09PV8ubXI/NzpsW18uQWNdfDAsbj1WeShtLGgpO2lmKDImbnx8Xy5UeShuKXx8MTYmbiluPT09bXx8Xy5UeShuKXx8KGxbXy5BY109biksbD1bLi4ubF0sbT0wLG49Xy5VeShuLGgpLF8ucHcoYixoLGMsbCxrKTtuJj0tMTM7biE9PW0mJihsW18uQWNdPW4pO2wucHVzaChkKTtmLmNhbGwoYSxkLGUpO3JldHVybiEwfSxmdW5jdGlvbihhLGIsYyxkLGUpe2lmKEFycmF5LmlzQXJyYXkoYikpe2ZvcihsZXQgZj0wO2Y8Yi5sZW5ndGg7ZisrKV8ubnooYSxiW2ZdLGMsZCxlKTsKYT1iW18uQWNdfDA7YSYxfHwoYltfLkFjXT1hfDEpfX0pO18ueno9bmV3IF8uSSgic2lnbmFsU2VydmljZUVuZHBvaW50Iik7Xy5Bej1uZXcgXy5JKCJwbGF5bGlzdEVkaXRFbmRwb2ludCIpO3ZhciBHYWE9ImFic29sdXRlX2V4cGVyaW1lbnRzIGFwcCBjb25kaXRpb25hbF9leHBlcmltZW50cyBkZWJ1Z2NzcyBkZWJ1Z2pzIGV4cGZsYWcgZm9yY2VkX2V4cGVyaW1lbnRzIHBiaiBwYmpyZWxvYWQgc2JiIHNwZiBzcGZyZWxvYWQgc3JfYm5zX2FkZHJlc3Mgc3R0aWNrIi5zcGxpdCgiICIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgRXosRnosQnosR3osSmFhO18uQ3o9ZnVuY3Rpb24oYSl7cmV0dXJuISEoKEJ6KGBmJHtNYXRoLmZsb29yKGEvMzEpKzF9YCl8fDApJjE8PGElMzEpfTtfLkR6PWZ1bmN0aW9uKGEsYil7dmFyIGM9YGYke01hdGguZmxvb3IoYS8zMSkrMX1gO2E9MTw8YSUzMTt2YXIgZD1CeihjKXx8MDtkPWI/ZHxhOmQmfmE7ZD09PTA/ZGVsZXRlIF8ueHNbY106Xy54c1tjXT1kLnRvU3RyaW5nKDE2KS50b1N0cmluZygpfTtFej1mdW5jdGlvbihhKXtpZigvXmYoWzEtOV1bMC05XSopJC8udGVzdChhKSl0aHJvdyBFcnJvcigiZmFgIithKTt9O0Z6PWZ1bmN0aW9uKGEpe2lmKCEvXlx3KyQvLnRlc3QoYSkpdGhyb3cgRXJyb3IoImdhYCIrYSk7fTtCej1mdW5jdGlvbihhKXthPV8ueHNbYV0hPT12b2lkIDA/Xy54c1thXS50b1N0cmluZygpOm51bGw7cmV0dXJuIGEhPW51bGwmJi9eW0EtRmEtZjAtOV0rJC8udGVzdChhKT9wYXJzZUludChhLDE2KTpudWxsfTsKXy5Iej1mdW5jdGlvbigpe0d6fHwoR3o9bmV3IEphYSk7cmV0dXJuIEd6fTtfLkl6PWZ1bmN0aW9uKGEpe3JldHVybiBfLlZpKCgpPT57aWYoXy5CcShhKSlyZXR1cm4hMTtfLkFxKGEsdm9pZCAwLHZvaWQgMCk7cmV0dXJuITB9KSgpfTsKSmFhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5qPV8udygiQUxUX1BSRUZfQ09PS0lFX05BTUUiLCJQUkVGIik7dGhpcy5vPV8udygiQUxUX1BSRUZfQ09PS0lFX0RPTUFJTiIsInlvdXR1YmUuY29tIik7dmFyIGE9Xy5Mai5nZXQodGhpcy5qLHZvaWQgMCk7YSYmdGhpcy5wYXJzZShhKX1nZXQoYSxiKXtGeihhKTtFeihhKTthPV8ueHNbYV0hPT12b2lkIDA/Xy54c1thXS50b1N0cmluZygpOm51bGw7cmV0dXJuIGEhPW51bGw/YTpiP2I6IiJ9c2V0KGEsYil7RnooYSk7RXooYSk7aWYoYj09bnVsbCl0aHJvdyBFcnJvcigiZWEiKTtfLnhzW2FdPWIudG9TdHJpbmcoKX1yZW1vdmUoYSl7RnooYSk7RXooYSk7ZGVsZXRlIF8ueHNbYV19c2F2ZSgpe18uTWoodGhpcy5qLHRoaXMuZHVtcCgpLDYzMDcyRTMsdGhpcy5vLCEwKX1jbGVhcigpe2ZvcihsZXQgYSBpbiBfLnhzKWRlbGV0ZSBfLnhzW2FdfWR1bXAoKXt2YXIgYT1bXTtmb3IobGV0IGIgaW4gXy54cylfLnhzLmhhc093blByb3BlcnR5KGIpJiYKYS5wdXNoKGAke2J9PWArZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhfLnhzW2JdKSkpO3JldHVybiBhLmpvaW4oIiYiKX1wYXJzZShhKXthPWRlY29kZVVSSUNvbXBvbmVudChhKS5zcGxpdCgiJiIpO2ZvcihsZXQgYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgYj1hW2NdLnNwbGl0KCI9Iik7bGV0IGQ9YlswXTsoYj1iWzFdKSYmKF8ueHNbZF09Yi50b1N0cmluZygpKX19fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIExhYSxLYWE7Xy5Kej1mdW5jdGlvbihhLGIpe2Eudi5zZXQoYi5qYSxiKTt2YXIgYz1hLmouZ2V0KGIuamEpO2lmKGMpdHJ5e2MuUWgoYS5yZXNvbHZlKGIuamEpKX1jYXRjaChkKXtjLlF6KGQpfX07Xy5Lej1mdW5jdGlvbihhLGI9Xy5hYil7cmV0dXJuIF8uYmIoYSxiKXx8Xy5GcX07Xy5Mej1mdW5jdGlvbigpe3JldHVybiBfLnUueXRQdWJzdWJQdWJzdWJJbnN0YW5jZX07Xy5Nej1mdW5jdGlvbihhLGIpe3ZhciBjPV8uTHooKTtpZihjJiZiKXtsZXQgZD1jLnN1YnNjcmliZShhLGZ1bmN0aW9uKCl7dmFyIGU9YXJndW1lbnRzLGY9KCk9PntfLlJzW2RdJiZiLmFwcGx5JiZ0eXBlb2YgYi5hcHBseT09ImZ1bmN0aW9uIiYmYi5hcHBseSh3aW5kb3csZSl9O3RyeXtfLlRzW2FdP2YoKTpfLm1qKGYsMCl9Y2F0Y2goaCl7Xy5VaShoKX19LHZvaWQgMCk7Xy5Sc1tkXT0hMDtfLlNzW2FdfHwoXy5Tc1thXT1bXSk7Xy5Tc1thXS5wdXNoKGQpO3JldHVybiBkfXJldHVybiAwfTsKXy5Oej1mdW5jdGlvbihhKXt2YXIgYj1fLkx6KCk7YiYmKHR5cGVvZiBhPT09Im51bWJlciI/YT1bYV06dHlwZW9mIGE9PT0ic3RyaW5nIiYmKGE9W3BhcnNlSW50KGEsMTApXSksXy50YihhLGM9PntiLnVuc3Vic2NyaWJlQnlLZXkoYyk7ZGVsZXRlIF8uUnNbY119KSl9O18uT3o9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLkx6KCk7cmV0dXJuIGM/Yy5wdWJsaXNoLmFwcGx5KGMsYXJndW1lbnRzKTohMX07Xy5Qej1mdW5jdGlvbihhKXtyZXR1cm4gS2FhW2FdfHwiTEFURU5DWV9BQ1RJT05fVU5LTk9XTiJ9O0xhYT1mdW5jdGlvbigpe3ZhciBhPV8uc3EuZ2V0RW50cmllc0J5VHlwZT8uKCJtYXJrIik7YSYmYS5mb3JFYWNoKGI9PntiLm5hbWUuc3RhcnRzV2l0aCgibWFya18iKSYmXy5zcS5jbGVhck1hcmtzPy4oYi5uYW1lKX0pfTtfLlF6PWZ1bmN0aW9uKGEpe18ucmEoInl0Z2xvYmFsLnRpbWluZyIrKGF8fCIiKSsicmVhZHlfIiwhMCl9OwpfLlJ6PWZ1bmN0aW9uKGEpe3JldHVybiBfLlZpKCgpPT5fLkJxKCJfc3RhcnQiLGEpKSgpfTtfLlN6PWZ1bmN0aW9uKGEpe18uVmkoKCk9PntfLlJ6KGEpJiZfLkFxKCJhYSIsdm9pZCAwLGEpO3ZhciBiPWF8fCIiLGM9Xy50bygpO2NbYl0mJmRlbGV0ZSBjW2JdO3ZhciBkPXt0aW1lck5hbWU6YixpbmZvOnt9LHRpY2s6e30sc3Bhbjp7fSxqc3BiSW5mbzpbXX07Xy5zbyhkKTtjW2JdPWQ7Xy5qbyhhKTsoMCxfLmJ0KSgpO0xhYSgpO2F8fChfLncoIlRJTUlOR19BQ1RJT04iKSYmXy5RaSgiUFJFVklPVVNfQUNUSU9OIixfLncoIlRJTUlOR19BQ1RJT04iKSksXy5RaSgiVElNSU5HX0FDVElPTiIsIiIpKX0pKCl9OwpfLlR6PWZ1bmN0aW9uKGEsYj17fSxjLGQpe18uVmkoKCk9Pnt2YXIgZT1jP2M6YTtfLlN6KGUpO3ZhciBmPWIuc2FtcGxlUmF0ZTtpZighXy54KCJ3ZWJfY3NpX2FjdGlvbl9zYW1wbGluZ19lbmFibGVkIil8fGY9PT12b2lkIDB8fGY8PTEpZj0hMTtlbHNle3ZhciBoPV8ucG8oZSk7Zj1fLkduKGgpJWYhPT0wfWYmJihfLmtvKGUpLmFjdGlvbkRpc2FibGVkPSEwKTtfLnVvKGV8fCIiKS5pbmZvLmFjdGlvblR5cGU9YTtiLmN0dEF1dGhJbmZvJiYoXy5rbyhlKS5jdHRBdXRoSW5mbz1iLmN0dEF1dGhJbmZvKTtfLlFpKGUrIlRJTUlOR19BQ1RJT04iLGEpO18uVmkoXy5vcSkoYi5zdGFydFRpbWUsZSk7Zj17YWN0aW9uVHlwZTpkfHxfLlB6KGEpfTtiLlRKJiYoZi5wcmV2aW91c0FjdGlvbj1fLlB6KF8udygiVElNSU5HX0FDVElPTiIpKSk7KGg9Xy5pcSgpKSYmaCE9PSJVTkRFRklORURfQ1NOIiYmKGYuY2xpZW50U2NyZWVuTm9uY2U9aCk7Xy56cShmLGUpO18uUXooZSl9KSgpfTsKS2FhPXthdXRvX3NlYXJjaDoiTEFURU5DWV9BQ1RJT05fQVVUT19TRUFSQ0giLGFkX3RvX2FkOiJMQVRFTkNZX0FDVElPTl9BRF9UT19BRCIsYWRfdG9fdmlkZW86IkxBVEVOQ1lfQUNUSU9OX0FEX1RPX1ZJREVPIixhcHBfc3RhcnR1cDoiTEFURU5DWV9BQ1RJT05fQVBQX1NUQVJUVVAiLGJyb3dzZToiTEFURU5DWV9BQ1RJT05fQlJPV1NFIixjYXN0X3NwbGFzaDoiTEFURU5DWV9BQ1RJT05fQ0FTVF9TUExBU0giLGNhbGxfdG9fY2FzdDoiTEFURU5DWV9BQ1RJT05fQ0FMTF9UT19DQVNUIixjaGFubmVsX2FjdGl2aXR5OiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX0NIQU5ORUxfQUNUSVZJVFkiLGNoYW5uZWxzOiJMQVRFTkNZX0FDVElPTl9DSEFOTkVMUyIsY2hpcHM6IkxBVEVOQ1lfQUNUSU9OX0NISVBTIixjb21tZXJjZV90cmFuc2FjdGlvbjoiTEFURU5DWV9BQ1RJT05fQ09NTUVSQ0VfVFJBTlNBQ1RJT04iLGRpcmVjdF9wbGF5YmFjazoiTEFURU5DWV9BQ1RJT05fRElSRUNUX1BMQVlCQUNLIiwKZWRpdG9yOiJMQVRFTkNZX0FDVElPTl9FRElUT1IiLGVtYmVkOiJMQVRFTkNZX0FDVElPTl9FTUJFRCIsZW1iZWRfbm9fdmlkZW86IkxBVEVOQ1lfQUNUSU9OX0VNQkVEX05PX1ZJREVPIixlbnRpdHlfa2V5X3NlcmlhbGl6YXRpb25fcGVyZjoiTEFURU5DWV9BQ1RJT05fRU5USVRZX0tFWV9TRVJJQUxJWkFUSU9OX1BFUkYiLGVudGl0eV9rZXlfZGVzZXJpYWxpemF0aW9uX3BlcmY6IkxBVEVOQ1lfQUNUSU9OX0VOVElUWV9LRVlfREVTRVJJQUxJWkFUSU9OX1BFUkYiLGV4cGxvcmU6IkxBVEVOQ1lfQUNUSU9OX0VYUExPUkUiLGZhdm9yaXRlczoiTEFURU5DWV9BQ1RJT05fRkFWT1JJVEVTIixob21lOiJMQVRFTkNZX0FDVElPTl9IT01FIixpbmJvYXJkaW5nOiJMQVRFTkNZX0FDVElPTl9JTkJPQVJESU5HIixsYW5kaW5nOiJMQVRFTkNZX0FDVElPTl9MQU5ESU5HIixsZWFybmluZzoiTEFURU5DWV9BQ1RJT05fTEVBUk5JTkciLGxlYXJuaW5nX2pvdXJuZXlfYnJvd3NlOiJMQVRFTkNZX0FDVElPTl9MRUFSTklOR19KT1VSTkVZX0JST1dTRSIsCmxlYXJuaW5nX2pvdXJuZXlfd2F0Y2g6IkxBVEVOQ1lfQUNUSU9OX0xFQVJOSU5HX0pPVVJORVlfV0FUQ0giLGxpYnJhcnk6IkxBVEVOQ1lfQUNUSU9OX0xJQlJBUlkiLGxpdmU6IkxBVEVOQ1lfQUNUSU9OX0xJVkUiLGxpdmVfcGFnaW5hdGlvbjoiTEFURU5DWV9BQ1RJT05fTElWRV9QQUdJTkFUSU9OIixtYW5hZ2VtZW50OiJMQVRFTkNZX0FDVElPTl9NQU5BR0VNRU5UIixtaW5pX2FwcDoiTEFURU5DWV9BQ1RJT05fTUlOSV9BUFBfUExBWSIsbm90aWZpY2F0aW9uX3NldHRpbmdzOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX05PVElGSUNBVElPTl9TRVRUSU5HUyIsb25ib2FyZGluZzoiTEFURU5DWV9BQ1RJT05fT05CT0FSRElORyIscGFyZW50X3Byb2ZpbGVfc2V0dGluZ3M6IkxBVEVOQ1lfQUNUSU9OX0tJRFNfUEFSRU5UX1BST0ZJTEVfU0VUVElOR1MiLHBhcmVudF90b29sc19jb2xsZWN0aW9uOiJMQVRFTkNZX0FDVElPTl9QQVJFTlRfVE9PTFNfQ09MTEVDVElPTiIscGFyZW50X3Rvb2xzX2Rhc2hib2FyZDoiTEFURU5DWV9BQ1RJT05fUEFSRU5UX1RPT0xTX0RBU0hCT0FSRCIsCnBsYXllcl9hdHQ6IkxBVEVOQ1lfQUNUSU9OX1BMQVlFUl9BVFRFU1RBVElPTiIscHJlYnVmZmVyOiJMQVRFTkNZX0FDVElPTl9QUkVCVUZGRVIiLHByZWZldGNoOiJMQVRFTkNZX0FDVElPTl9QUkVGRVRDSCIscHJvZmlsZV9zZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fS0lEU19QUk9GSUxFX1NFVFRJTkdTIixwcm9maWxlX3N3aXRjaGVyOiJMQVRFTkNZX0FDVElPTl9MT0dJTiIscHJvamVjdHM6IkxBVEVOQ1lfQUNUSU9OX1BST0pFQ1RTIixyZWVsX3dhdGNoOiJMQVRFTkNZX0FDVElPTl9SRUVMX1dBVENIIixyZXN1bHRzOiJMQVRFTkNZX0FDVElPTl9SRVNVTFRTIixyZWQ6IkxBVEVOQ1lfQUNUSU9OX1BSRU1JVU1fUEFHRV9HRVRfQlJPV1NFIixwcmVtaXVtOiJMQVRFTkNZX0FDVElPTl9QUkVNSVVNX1BBR0VfR0VUX0JST1dTRSIscHJlbWl1bV9saXRlX3Vwc2VsbDoiTEFURU5DWV9BQ1RJT05fUFJFTUlVTV9MSVRFX1VQU0VMTCIscHJpdmFjeV9wb2xpY3k6IkxBVEVOQ1lfQUNUSU9OX0ZBTUlMWV9DRU5URVJfUFJJVkFDWV9QT0xJQ1kiLApyZXZpZXc6IkxBVEVOQ1lfQUNUSU9OX1JFVklFVyIsc2VhcmNoX292ZXJ2aWV3X2Fuc3dlcjoiTEFURU5DWV9BQ1RJT05fU0VBUkNIX09WRVJWSUVXX0FOU1dFUiIsc2VhcmNoX3VpOiJMQVRFTkNZX0FDVElPTl9TRUFSQ0hfVUkiLHNlYXJjaF9zdWdnZXN0OiJMQVRFTkNZX0FDVElPTl9TVUdHRVNUIixzZWFyY2hfemVyb19zdGF0ZToiTEFURU5DWV9BQ1RJT05fU0VBUkNIX1pFUk9fU1RBVEUiLHNlY3JldF9jb2RlOiJMQVRFTkNZX0FDVElPTl9LSURTX1NFQ1JFVF9DT0RFIixzd2l0Y2hwbGFuOiJMQVRFTkNZX0FDVElPTl9VTlBMVUdHRURfU1dJVENIX1BMQU4iLHNlZWs6IkxBVEVOQ1lfQUNUSU9OX1BMQVlFUl9TRUVLIixzZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fU0VUVElOR1MiLHN0b3JlOiJMQVRFTkNZX0FDVElPTl9TVE9SRSIsc3VwZXJ2aXNpb25fZGFzaGJvYXJkOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX1NVUEVSVklTSU9OX0RBU0hCT0FSRCIsYmVkdGltZV9yZW1pbmRlcl9zZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9CRURUSU1FX1JFTUlOREVSX1NFVFRJTkdTIiwKYnJlYWtfcmVtaW5kZXJfc2V0dGluZ3M6IkxBVEVOQ1lfQUNUSU9OX0ZBTUlMWV9DRU5URVJfQlJFQUtfUkVNSU5ERVJfU0VUVElOR1MiLHN1cGVydmlzaW9uX3NldHRpbmdzX2Rhc2hib2FyZDoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9TVVBFUlZJU0lPTl9TRVRUSU5HU19EQVNIQk9BUkQiLHRpbWVfbWFuYWdlbWVudDoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9USU1FX01BTkFHRU1FTlQiLHVwZGF0ZV9wcm9maWxlOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX1VQREFURV9QUk9GSUxFIix2aWV3aW5nX3Blcm1pc3Npb25zOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX1ZJRVdJTkdfUEVSTUlTU0lPTlMiLHNob3J0c19zZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9TSE9SVFNfU0VUVElOR1MiLHByaXZhY3lfc2V0dGluZ3M6IkxBVEVOQ1lfQUNUSU9OX0ZBTUlMWV9DRU5URVJfUFJJVkFDWV9TRVRUSU5HUyIsdGVueDoiTEFURU5DWV9BQ1RJT05fVEVOWCIsCnZpZGVvX3ByZXZpZXc6IkxBVEVOQ1lfQUNUSU9OX1ZJREVPX1BSRVZJRVciLHZpZGVvX3RvX2FkOiJMQVRFTkNZX0FDVElPTl9WSURFT19UT19BRCIsd2F0Y2g6IkxBVEVOQ1lfQUNUSU9OX1dBVENIIix3YXRjaF9pdF9hZ2FpbjoiTEFURU5DWV9BQ1RJT05fS0lEU19XQVRDSF9JVF9BR0FJTiIsIndhdGNoLHdhdGNoNyI6IkxBVEVOQ1lfQUNUSU9OX1dBVENIIiwid2F0Y2gsd2F0Y2g3X2h0bWw1IjoiTEFURU5DWV9BQ1RJT05fV0FUQ0giLCJ3YXRjaCx3YXRjaDdhZCI6IkxBVEVOQ1lfQUNUSU9OX1dBVENIIiwid2F0Y2gsd2F0Y2g3YWRfaHRtbDUiOiJMQVRFTkNZX0FDVElPTl9XQVRDSCIsd25fY29tbWVudHM6IkxBVEVOQ1lfQUNUSU9OX0xPQURfQ09NTUVOVFMiLHd3X3JxczoiTEFURU5DWV9BQ1RJT05fV0hPX0lTX1dBVENISU5HIix2b2ljZV9hc3Npc3RhbnQ6IkxBVEVOQ1lfQUNUSU9OX1ZPSUNFX0FTU0lTVEFOVCIsY2FzdF9sb2FkX2J5X2VudGl0eV90b193YXRjaDoiTEFURU5DWV9BQ1RJT05fQ0FTVF9MT0FEX0JZX0VOVElUWV9UT19XQVRDSCIsCm5ldHdvcmtsZXNzX3BlcmZvcm1hbmNlOiJMQVRFTkNZX0FDVElPTl9ORVRXT1JLTEVTU19QRVJGT1JNQU5DRSIsZ2VsX2NvbXByZXNzaW9uOiJMQVRFTkNZX0FDVElPTl9HRUxfQ09NUFJFU1NJT04iLGdlbF9qc3BiX3NlcmlhbGl6ZToiTEFURU5DWV9BQ1RJT05fR0VMX0pTUEJfU0VSSUFMSVpFIixhdHRlc3RhdGlvbl9jaGFsbGVuZ2VfZmV0Y2g6IkxBVEVOQ1lfQUNUSU9OX0FUVEVTVEFUSU9OX0NIQUxMRU5HRV9GRVRDSCJ9O18uVXo9bmV3IF8uSSgiZmVlZGJhY2tFbmRwb2ludCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLlZ6PWZ1bmN0aW9uKGEsYil7aWYoYiE9PW51bGwmJmIhPT12b2lkIDApe2lmKHR5cGVvZiBiIT09Im9iamVjdCImJnR5cGVvZiBiIT09ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJkIik7aWYoYz09PXZvaWQgMCl7aWYoIVN5bWJvbC5kaXNwb3NlKXRocm93IG5ldyBUeXBlRXJyb3IoImYiKTt2YXIgYz1iW1N5bWJvbC5kaXNwb3NlXX1pZih0eXBlb2YgYyE9PSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiZyIpO2Euc3RhY2sucHVzaCh7dmFsdWU6YixkaXNwb3NlOmMsYXN5bmM6ITF9KX1yZXR1cm4gYn07Cl8uV3o9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihmKXthLmVycm9yPWEuaGFzRXJyb3I/bmV3IFN1cHByZXNzZWRFcnJvcihmLGEuZXJyb3IsIkFuIGVycm9yIHdhcyBzdXBwcmVzc2VkIGR1cmluZyBkaXNwb3NhbC4iKTpmO2EuaGFzRXJyb3I9ITB9ZnVuY3Rpb24gYygpe2Zvcig7ZD1hLnN0YWNrLnBvcCgpOyl0cnl7aWYoIWQuYXN5bmMmJmU9PT0xKXJldHVybiBlPTAsYS5zdGFjay5wdXNoKGQpLFByb21pc2UucmVzb2x2ZSgpLnRoZW4oYyk7aWYoZC5kaXNwb3NlKXt2YXIgZj1kLmRpc3Bvc2UuY2FsbChkLnZhbHVlKTtpZihkLmFzeW5jKXJldHVybiBlfD0yLFByb21pc2UucmVzb2x2ZShmKS50aGVuKGMsZnVuY3Rpb24oaCl7YihoKTtyZXR1cm4gYygpfSl9ZWxzZSBlfD0xfWNhdGNoKGgpe2IoaCl9aWYoZT09PTEpcmV0dXJuIGEuaGFzRXJyb3I/UHJvbWlzZS5yZWplY3QoYS5lcnJvcik6UHJvbWlzZS5yZXNvbHZlKCk7aWYoYS5oYXNFcnJvcil0aHJvdyBhLmVycm9yO312YXIgZCwKZT0wO2MoKX07Xy5Yej1mdW5jdGlvbigpe3RyeXtyZXR1cm4hIXNlbGYubG9jYWxTdG9yYWdlfWNhdGNoe3JldHVybiExfX07Xy5Zej1uZXcgXy5JKCJzaGFyZUVuZHBvaW50Iik7Xy5aej1uZXcgXy5JKCJzaGFyZUVudGl0eUVuZHBvaW50Iik7Xy5NYWE9bmV3IF8uSSgic2hhcmVFbnRpdHlTZXJ2aWNlRW5kcG9pbnQiKTtfLk5hYT1uZXcgXy5JKCJ3ZWJQbGF5ZXJTaGFyZUVudGl0eVNlcnZpY2VFbmRwb2ludCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmFBPWZ1bmN0aW9uKGEsYj17fSxjKXthPShhPWEgaW4gXy4kej9fLiR6W2FdOmMpfHwiIjtmb3IobGV0IGQgaW4gYiljPSgpPT5TdHJpbmcoYltkXSksYT1hLnJlcGxhY2UobmV3IFJlZ0V4cCgiXFwkXFx7IitkKyJcXH0iLCJnaSIpLGMpLGE9YS5yZXBsYWNlKG5ldyBSZWdFeHAoIlxcJCIrZCwiZ2kiKSxjKTtyZXR1cm4gYX07Xy4kej13aW5kb3cueXQmJndpbmRvdy55dC5tc2dzX3x8d2luZG93Lnl0Y2ZnJiZ3aW5kb3cueXRjZmcubXNnc3x8e307Xy5yYSgieXQubXNnc18iLF8uJHopOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgY0E7Xy5iQT1mdW5jdGlvbihhKXt2YXIgYj1hLmluZGV4T2YoIjoiKTtyZXR1cm4gYj09PS0xP3tNbTphfTp7TW06YS5zdWJzdHJpbmcoMCxiKSxkYXRhc3luY0lkOmEuc3Vic3RyaW5nKGIrMSl9fTtfLmVBPWFzeW5jIGZ1bmN0aW9uKCl7cmV0dXJuIGNBIT09dm9pZCAwP2NBOmNBPW5ldyBQcm9taXNlKGFzeW5jIGE9Pnt0cnl7YXdhaXQgXy5kQS5vcGVuKCJ0ZXN0LW9ubHkiKSxhd2FpdCBfLmRBLmRlbGV0ZSgidGVzdC1vbmx5Iil9Y2F0Y2goYil7aWYoYiBpbnN0YW5jZW9mIEVycm9yJiZiLm5hbWU9PT0iU2VjdXJpdHlFcnJvciIpe2EoITEpO3JldHVybn19YSgiY2FjaGVzImluIHdpbmRvdyl9KX07Xy5kQT1fLnUuY2FjaGVzOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmdBPW5ldyBXZWFrTWFwO18uaEE9bmV3IFNldDsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgiYmFzZSIpOwp2YXIgQVosQlosQ1osY3JhLERaLGVyYSxFWixGWixIWixLWixMWixNWixmcmEsUFosUVosU1osZ3JhLFZaLGNfLGRfLGVfLGZfLGdfLGhfLGlfLGpfLGtfLGlyYSxqcmEsa3JhLGxyYSxucmEsbV8sbl8sb18scF8scV8scl8sc18sdF8sdV8sdl8sd18seF8scHJhLHlfLHpfLHFyYSxBXyxycmEsc3JhLHRyYSxCXyxDXyxEXyxGXyxHXyxIXyxJXyxKXyxLXyxMXyxNXyxPXyxQXyxRXyxSXyxTXyxocmEsdXJhLHZyYSxUXyxVXyxWXyxXXyxYXyxZXyx3cmEsJF8sYTAsYjAseHJhLGQwLHlyYSxlMCx6cmEsQnJhLENyYSxEcmEsZzAsRXJhLEZyYSxHcmEsaDAsaTAsbDAsSHJhLGswLGowLG4wLElyYSxKcmEsbzAsS3JhLHAwLHEwLHIwLExyYSxNcmEsTnJhLE9yYSxQcmEsUXJhLHQwLHYwLHcwLHgwLFNyYSxUcmEseTAsQTAsQjAsQzAsRDAsRTAsRzAsVXJhLFZyYSxIMCxXcmEsWHJhLFlyYSxJMCxKMCxTMCxUMCxQMCxVMCxMMCxRMCxLMCxPMCxNMCxOMCxacmEsUjAsJHJhLFYwLGFzYSxjc2EsClgwLFkwLFowLCQwLGExLGRzYSxiMSxjMSxlc2EsZnNhLGdzYSxkMSxmMSxoc2EsZzEsanNhLGtzYSxqMSxsc2EsazEsbDEsbTEsbXNhLHIxLHNzYSx1c2EsdjEseTEsdzEsdnNhLHhzYSxCMSxDMSxEMSx5c2EsRTEsRjEsQXNhLEJzYSx6c2EsQ3NhLEVzYSxGc2EsR3NhLHFzYSxvMSxuc2EsSTEsSHNhLEcxLElzYSxKc2EsSzEsTTEsTjEsS3NhLE8xLFAxLExzYSxSMSxPc2EsUHNhLFJzYSxRMSxVMSxXMSxUc2EsJDEsWDEsVXNhLFZzYSxXc2EsWHNhLGF0YSxidGEsZjIsJHNhLFpzYSxhMixlMixiMixjdGEsZzIsaDIsaTIsazIsbDIsZXRhLGZ0YSxndGEsbjIscDIsbzIsdDIsanRhLHIyLGl0YSx3Mix2MixtdGEsbnRhLG90YSxwdGEseDIseTIsejIsQTIsQzIsdXRhLHZ0YSxFMixGMix3dGEsRzIseXRhLFpfLEkyLEoyLEwyLHp0YSxOMixPMixQMixCdGEsUTIsRHRhLFMyLFQyLFUyLEV0YSxWMixXMixGdGEsR3RhLGEzLGIzLEl0YSxlMyxKdGEsZDMsZjMsS3RhLEx0YSxNdGEsYzMsSHRhLApoMyxOdGEsazMsT3RhLFB0YSxRdGEsbTMsbjMsbDMsUnRhLG8zLHAzLFN0YSxxMyxUdGEscjMsczMsdzMsVXRhLHgzLHkzLFZ0YSxZdGEsWnRhLEMzLEQzLEUzLCR0YSxidWEsY3VhLEczLGR1YSxldWEsWHRhLEgzLEkzLGZ1YSxndWEsYzQsZDQsZTQsaHVhLGY0LGl1YSxqdWEsWXNhLGh0YSxrdWEsbnVhLGc0LGk0LHB1YSxoNCxrNCxzdWEsdHVhLGw0LG00LHZ1YSx3dWEsbzQseHVhLHl1YSxxNCx6dWEsQXVhLEJ1YSxEdWEsR3VhLHY0LEp1YSx3NCxJdWEsSHVhLEt1YSx4NCx5NCx6NCxBNCxENCxDNCxCNCxFNCxNdWEsRjQsT3VhLFB1YSxRdWEsUnVhLFN1YSxUdWEsVXVhLEk0LEs0LFp1YSwkdWEsUTQsTTQsVnVhLFI0LFM0LGF2YSxidmEsY3ZhLGR2YSxkcmEsQTMsR1osSVosSlosTl8sTlosT1osUlosVFosVVosJFosYV8sYl8sWlosWVosV1osWFosbF8sRV8sb3JhLFY0LGV2YSxXNCxYNCxmdmEsWTQsWjQsZ3ZhLGh2YSxpdmEsanZhLGt2YSwkNCxsdmEsbXZhLGE1LG52YSxiNSwKYzUsb3ZhLHB2YTtBWj1mdW5jdGlvbihhKXtpZihhIT1udWxsJiZ0eXBlb2YgYSE9PSJzdHJpbmciKXRocm93IEVycm9yKCk7cmV0dXJuIGF9O0JaPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5xdyhhLGIsQVooYykpfTtDWj1mdW5jdGlvbihhLGIsYyl7aWYoYyE9bnVsbCl7aWYoISgwLF8ud3IpKGMpKXRocm93IF8uSXcoImVudW0iKTtjfD0wfXJldHVybiBfLnF3KGEsYixjKX07Y3JhPWZ1bmN0aW9uKGEpe3ZhciBiPVtdO2ZvcihsZXQgYz0wO2M8YS5sZW5ndGg7YysrKWIucHVzaChhLmNoYXJDb2RlQXQoYykpO3JldHVybiBifTtEWj1mdW5jdGlvbihhLGIpe3JldHVybiBhW2JdKyhhW2IrMV08PDgpKyhhW2IrMl08PDE2KSsoYVtiKzNdPDwyNCl9OwplcmE9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYigpe2MtPWQ7Yy09ZTtjXj1lPj4+MTM7ZC09ZTtkLT1jO2RePWM8PDg7ZS09YztlLT1kO2VePWQ+Pj4xMztjLT1kO2MtPWU7Y149ZT4+PjEyO2QtPWU7ZC09YztkXj1jPDwxNjtlLT1jO2UtPWQ7ZV49ZD4+PjU7Yy09ZDtjLT1lO2NePWU+Pj4zO2QtPWU7ZC09YztkXj1jPDwxMDtlLT1jO2UtPWQ7ZV49ZD4+PjE1fWE9Y3JhKGEpO2Zvcih2YXIgYz0yNjU0NDM1NzY5LGQ9MjY1NDQzNTc2OSxlPTMxNDE1OTI2NSxmPWEubGVuZ3RoLGg9ZixrPTA7aD49MTI7aC09MTIsays9MTIpYys9RFooYSxrKSxkKz1EWihhLGsrNCksZSs9RFooYSxrKzgpLGIoKTtlKz1mO3N3aXRjaChoKXtjYXNlIDExOmUrPWFbaysxMF08PDI0O2Nhc2UgMTA6ZSs9YVtrKzldPDwxNjtjYXNlIDk6ZSs9YVtrKzhdPDw4O2Nhc2UgODpkKz1hW2srN108PDI0O2Nhc2UgNzpkKz1hW2srNl08PDE2O2Nhc2UgNjpkKz1hW2srNV08PDg7Y2FzZSA1OmQrPWFbays0XTtjYXNlIDQ6Yys9CmFbayszXTw8MjQ7Y2FzZSAzOmMrPWFbaysyXTw8MTY7Y2FzZSAyOmMrPWFbaysxXTw8ODtjYXNlIDE6Yys9YVtrXX1iKCk7cmV0dXJuIGRyYS50b1N0cmluZyhlKX07RVo9ZnVuY3Rpb24oYSxiKXthLmFkZE9uRGlzcG9zZUNhbGxiYWNrKF8uRGEoXy5aZCxiKSl9O0ZaPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgVWludDhBcnJheShfLnd3KGEpfHwwKX07SFo9ZnVuY3Rpb24oYSl7cmV0dXJuKEdafHwoR1o9bmV3IFRleHRFbmNvZGVyKSkuZW5jb2RlKGEpfTtLWj1mdW5jdGlvbihhKXt2YXIgYj1hPj4+MDtJWj1iO0paPShhLWIpLzQyOTQ5NjcyOTY+Pj4wfTtMWj1mdW5jdGlvbihhKXtpZihhPDApe0taKC1hKTthPUlaO3ZhciBiPUpaO2I9fmI7YT9hPX5hKzE6Yis9MTtsZXQgW2MsZF09W2EsYl07SVo9Yz4+PjA7Slo9ZD4+PjB9ZWxzZSBLWihhKX07Ck1aPWZ1bmN0aW9uKGEpe2EubGVuZ3RoPDE2P0xaKE51bWJlcihhKSk6KGE9QmlnSW50KGEpLElaPU51bWJlcihhJkJpZ0ludCg0Mjk0OTY3Mjk1KSk+Pj4wLEpaPU51bWJlcihhPj5CaWdJbnQoMzIpJkJpZ0ludCg0Mjk0OTY3Mjk1KSkpfTsKZnJhPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhPT09InN0cmluZyIpcmV0dXJuIG5ldyBOWihfLnV3KGEpLCEwKTtpZihBcnJheS5pc0FycmF5KGEpKXJldHVybiBuZXcgTloobmV3IFVpbnQ4QXJyYXkoYSksITApO2lmKGEuY29uc3RydWN0b3I9PT1VaW50OEFycmF5KXJldHVybiBuZXcgTlooYSwhMSk7aWYoYS5jb25zdHJ1Y3Rvcj09PUFycmF5QnVmZmVyKXJldHVybiBhPW5ldyBVaW50OEFycmF5KGEpLG5ldyBOWihhLCExKTtpZihhLmNvbnN0cnVjdG9yPT09Xy5SYyl7bGV0IGI9Xy53dyhhKXx8bmV3IFVpbnQ4QXJyYXkoMCk7cmV0dXJuIG5ldyBOWihiLCEwLGEpfWlmKGEgaW5zdGFuY2VvZiBVaW50OEFycmF5KXJldHVybiBhPWEuY29uc3RydWN0b3I9PT1VaW50OEFycmF5P2E6bmV3IFVpbnQ4QXJyYXkoYS5idWZmZXIsYS5ieXRlT2Zmc2V0LGEuYnl0ZUxlbmd0aCksbmV3IE5aKGEsITEpO3Rocm93IEVycm9yKCk7fTsKUFo9ZnVuY3Rpb24oYSl7cmV0dXJuIGEubz09PTA/bmV3IE9aKDAsMSt+YS5qKTpuZXcgT1oofmEubysxLH5hLmopfTtRWj1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IE9aKGEmNDI5NDk2NzI5NSxNYXRoLmZsb29yKGEvNDI5NDk2NzI5NikpfTtTWj1mdW5jdGlvbihhKXtpZighYSlyZXR1cm4gUlp8fChSWj1uZXcgT1ooMCwwKSk7aWYoIS9eXGQrJC8udGVzdChhKSlyZXR1cm4gbnVsbDtNWihhKTtyZXR1cm4gbmV3IE9aKElaLEpaKX07Z3JhPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgVFooYSY0Mjk0OTY3Mjk1LE1hdGguZmxvb3IoYS80Mjk0OTY3Mjk2KSl9O1ZaPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiBVWnx8KFVaPW5ldyBUWigwLDApKTtpZighL14tP1xkKyQvLnRlc3QoYSkpcmV0dXJuIG51bGw7TVooYSk7cmV0dXJuIG5ldyBUWihJWixKWil9OwpjXz1mdW5jdGlvbihhLGIsYyl7aWYodHlwZW9mIEJpZ0ludDY0QXJyYXkhPT0idW5kZWZpbmVkIilyZXR1cm4gV1p8fChXWj1uZXcgQmlnSW50NjRBcnJheSgxKSxYWj1uZXcgVWludDMyQXJyYXkoV1ouYnVmZmVyKSxXWlswXT1CaWdJbnQoMSksWVo9WFpbMF09PT0xKSxXWlswXT1hLGE9WVo/MDoxLG5ldyBiKFhaW2FdLFhaWzEtYV0pO1pafHwoJFo9QmlnSW50KE51bWJlci5NSU5fU0FGRV9JTlRFR0VSKSxhXz1CaWdJbnQoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpLGJfPUJpZ0ludCg0Mjk0OTY3Mjk1KSxaWj1CaWdJbnQoMzIpKTtpZihhPj0kWiYmYTw9YV8pcmV0dXJuIGMoTnVtYmVyKGEpKTthPUJpZ0ludC5hc1VpbnROKDY0LGEpO3JldHVybiBuZXcgYihOdW1iZXIoYSZiXyksTnVtYmVyKGE+PlpaKSl9O2RfPWZ1bmN0aW9uKGEsYixjKXtmb3IoO2M+MHx8Yj4xMjc7KWEuai5wdXNoKGImMTI3fDEyOCksYj0oYj4+Pjd8Yzw8MjUpPj4+MCxjPj4+PTc7YS5qLnB1c2goYil9OwplXz1mdW5jdGlvbihhLGIpe2Euai5wdXNoKGI+Pj4wJjI1NSk7YS5qLnB1c2goYj4+PjgmMjU1KTthLmoucHVzaChiPj4+MTYmMjU1KTthLmoucHVzaChiPj4+MjQmMjU1KX07Zl89ZnVuY3Rpb24oYSxiKXtpZihiPj0wKV8uWHkoYSxiKTtlbHNle2ZvcihsZXQgYz0wO2M8OTtjKyspYS5qLnB1c2goYiYxMjd8MTI4KSxiPj49NzthLmoucHVzaCgxKX19O2dfPWZ1bmN0aW9uKGEpe3N3aXRjaCh0eXBlb2YgYSl7Y2FzZSAic3RyaW5nIjpTWihhKX19O2hfPWZ1bmN0aW9uKGEpe3N3aXRjaCh0eXBlb2YgYSl7Y2FzZSAic3RyaW5nIjphLmxlbmd0aCYmYVswXT09PSItIj9TWihhLnN1YnN0cmluZygxKSk6U1ooYSl9fTsKaV89ZnVuY3Rpb24oYSxiLGMpe2lmKGMhPW51bGwpc3dpdGNoKGdfKGMpLF8uWnkoYSxiLDEpLHR5cGVvZiBjKXtjYXNlICJudW1iZXIiOmE9YS5qO0taKGMpO2VfKGEsSVopO2VfKGEsSlopO2JyZWFrO2Nhc2UgImJpZ2ludCI6Yz1jXyhjLE9aLFFaKTthPWEuajtiPWMuajtlXyhhLGMubyk7ZV8oYSxiKTticmVhaztkZWZhdWx0OmM9U1ooYyksYT1hLmosYj1jLmosZV8oYSxjLm8pLGVfKGEsYil9fTtqXz1mdW5jdGlvbihhLGIsYyl7YyE9bnVsbCYmKGM9cGFyc2VJbnQoYywxMCksXy5aeShhLGIsMCksZl8oYS5qLGMpKX07a189ZnVuY3Rpb24oYSxiLGMpe18uWnkoYSxiLDIpO18uWHkoYS5qLGMubGVuZ3RoKTtfLll5KGEsYS5qLmVuZCgpKTtfLll5KGEsYyl9OwppcmE9ZnVuY3Rpb24oYSl7dmFyIGI9InRydWUiLnRvU3RyaW5nKCksYz1baHJhYGRhdGEtYF07aWYoYy5sZW5ndGg9PT0wKXRocm93IEVycm9yKCJoIik7aWYoYy5tYXAoZD0+e2lmKGQgaW5zdGFuY2VvZiBsXylkPWQuajtlbHNlIHRocm93IEVycm9yKCJoIik7cmV0dXJuIGR9KS5ldmVyeShkPT4iZGF0YS1sb2FkZWQiLmluZGV4T2YoZCkhPT0wKSl0aHJvdyBFcnJvcigiaWBkYXRhLWxvYWRlZCIpO2Euc2V0QXR0cmlidXRlKCJkYXRhLWxvYWRlZCIsYil9O2pyYT1mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoYSxiLHZvaWQgMCl9O2tyYT1mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUucmVkdWNlLmNhbGwoYSxiLHtkdXJhdGlvbjowfSl9O2xyYT1mdW5jdGlvbihhLGIpe3JldHVybiBhPmI/MTphPGI/LTE6MH07Cm5yYT1mdW5jdGlvbigpe3ZhciBhPW1yYTtyZXR1cm4gXy5DYyhiPT57Zm9yKGxldCBjIGluIGEpaWYoYj09PWFbY10mJiEvXlswLTldKyQvLnRlc3QoYykpcmV0dXJuITA7cmV0dXJuITF9KX07bV89ZnVuY3Rpb24oYSxiKXtiPj4+PTA7YT4+Pj0wO3ZhciBjO2I8PTIwOTcxNTE/Yz0iIisoNDI5NDk2NzI5NipiK2EpOmM9IiIrKEJpZ0ludChiKTw8QmlnSW50KDMyKXxCaWdJbnQoYSkpO3JldHVybiBjfTtuXz1mdW5jdGlvbihhLGIpe3ZhciBjPWIqNDI5NDk2NzI5NisoYT4+PjApO3JldHVybiBOdW1iZXIuaXNTYWZlSW50ZWdlcihjKT9jOm1fKGEsYil9O29fPWZ1bmN0aW9uKCl7dmFyIGE9SVosYj1KWixjO2ImMjE0NzQ4MzY0OD9jPSIiKyhCaWdJbnQoYnwwKTw8QmlnSW50KDMyKXxCaWdJbnQoYT4+PjApKTpjPW1fKGEsYik7cmV0dXJuIGN9OwpwXz1mdW5jdGlvbihhKXtpZihhIT1udWxsJiZ0eXBlb2YgYSE9PSJudW1iZXIiKXRocm93IEVycm9yKCJxYCIrdHlwZW9mIGErImAiK2EpO3JldHVybiBhfTtxXz1mdW5jdGlvbihhKXtpZihhPT1udWxsfHx0eXBlb2YgYT09PSJudW1iZXIiKXJldHVybiBhO2lmKGE9PT0iTmFOInx8YT09PSJJbmZpbml0eSJ8fGE9PT0iLUluZmluaXR5IilyZXR1cm4gTnVtYmVyKGEpfTtyXz1mdW5jdGlvbihhKXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgImJpZ2ludCI6cmV0dXJuITA7Y2FzZSAibnVtYmVyIjpyZXR1cm4oMCxfLndyKShhKTtjYXNlICJzdHJpbmciOnJldHVybiBvcmEudGVzdChhKTtkZWZhdWx0OnJldHVybiExfX07c189ZnVuY3Rpb24oYSl7aWYoYT09bnVsbClyZXR1cm4gYTtpZih0eXBlb2YgYT09PSJzdHJpbmciJiZhKWE9K2E7ZWxzZSBpZih0eXBlb2YgYSE9PSJudW1iZXIiKXJldHVybjtyZXR1cm4oMCxfLndyKShhKT9hPj4+MDp2b2lkIDB9Owp0Xz1mdW5jdGlvbihhKXt2YXIgYj0oMCxfLnhyKShOdW1iZXIoYSkpO2lmKCgwLF8udnIpKGIpKXJldHVybiBfLkZjKGIpO2I9YS5pbmRleE9mKCIuIik7YiE9PS0xJiYoYT1hLnN1YnN0cmluZygwLGIpKTtyZXR1cm4gXy5GYygoMCxfLnRyKSg2NCxCaWdJbnQoYSkpKX07dV89ZnVuY3Rpb24oYSl7dmFyIGI9KDAsXy54cikoTnVtYmVyKGEpKTtpZigoMCxfLnZyKShiKSlyZXR1cm4gU3RyaW5nKGIpO2I9YS5pbmRleE9mKCIuIik7YiE9PS0xJiYoYT1hLnN1YnN0cmluZygwLGIpKTtiPWEubGVuZ3RoOyhhWzBdPT09Ii0iP2I8MjB8fGI9PT0yMCYmYTw9Ii05MjIzMzcyMDM2ODU0Nzc1ODA4IjpiPDE5fHxiPT09MTkmJmE8PSI5MjIzMzcyMDM2ODU0Nzc1ODA3Iil8fChNWihhKSxhPW9fKCkpO3JldHVybiBhfTsKdl89ZnVuY3Rpb24oYSl7YT0oMCxfLnhyKShhKTtpZighKDAsXy52cikoYSkpe0xaKGEpO3ZhciBiPUlaLGM9Slo7aWYoYT1jJjIxNDc0ODM2NDgpYj1+YisxPj4+MCxjPX5jPj4+MCxiPT0wJiYoYz1jKzE+Pj4wKTtiPW5fKGIsYyk7YT10eXBlb2YgYj09PSJudW1iZXIiP2E/LWI6YjphPyItIitiOmJ9cmV0dXJuIGF9O3dfPWZ1bmN0aW9uKGEpe2E9KDAsXy54cikoYSk7KDAsXy52cikoYSk/YT1TdHJpbmcoYSk6KExaKGEpLGE9b18oKSk7cmV0dXJuIGF9O3hfPWZ1bmN0aW9uKGEpe3JldHVybigwLF8udnIpKGEpP18uRmModl8oYSkpOl8uRmMod18oYSkpfTsKcHJhPWZ1bmN0aW9uKGEpe3ZhciBiPXZvaWQgMDtiPTEwMjQ7aWYoIXJfKGEpKXRocm93IF8uSXcoImludDY0Iik7dmFyIGM9dHlwZW9mIGE7c3dpdGNoKGIpe2Nhc2UgNTEyOnN3aXRjaChjKXtjYXNlICJzdHJpbmciOnJldHVybiB1XyhhKTtjYXNlICJiaWdpbnQiOnJldHVybiBTdHJpbmcoKDAsXy50cikoNjQsYSkpO2RlZmF1bHQ6cmV0dXJuIHdfKGEpfWNhc2UgMTAyNDpzd2l0Y2goYyl7Y2FzZSAic3RyaW5nIjpyZXR1cm4gdF8oYSk7Y2FzZSAiYmlnaW50IjpyZXR1cm4gXy5GYygoMCxfLnRyKSg2NCxhKSk7ZGVmYXVsdDpyZXR1cm4geF8oYSl9Y2FzZSAwOnN3aXRjaChjKXtjYXNlICJzdHJpbmciOnJldHVybiB1XyhhKTtjYXNlICJiaWdpbnQiOnJldHVybiBfLkZjKCgwLF8udHIpKDY0LGEpKTtkZWZhdWx0OnJldHVybiB2XyhhKX1kZWZhdWx0OnJldHVybiBfLmViKGIsIlVua25vd24gZm9ybWF0IHJlcXVlc3RlZCB0eXBlIGZvciBpbnQ2NCIpfX07CnlfPWZ1bmN0aW9uKGEpe3JldHVybiBhPT1udWxsP2E6cHJhKGEpfTt6Xz1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgYTtpZihhPT1udWxsKXJldHVybiBhO2lmKGI9PT0iYmlnaW50IilyZXR1cm4gXy5GYygoMCxfLnRyKSg2NCxhKSk7aWYocl8oYSkpcmV0dXJuIGI9PT0ic3RyaW5nIj90XyhhKTp4XyhhKX07cXJhPWZ1bmN0aW9uKGEpe2lmKGE9PW51bGwpcmV0dXJuIGE7dmFyIGI9dHlwZW9mIGE7aWYoYj09PSJiaWdpbnQiKXJldHVybiBTdHJpbmcoKDAsXy50cikoNjQsYSkpO2lmKHJfKGEpKXtpZihiPT09InN0cmluZyIpcmV0dXJuIHVfKGEpO2lmKGI9PT0ibnVtYmVyIilyZXR1cm4gdl8oYSl9fTsKQV89ZnVuY3Rpb24oYSl7aWYoYT09bnVsbClyZXR1cm4gYTt2YXIgYj10eXBlb2YgYTtpZihiPT09ImJpZ2ludCIpcmV0dXJuIFN0cmluZygoMCxfLnVyKSg2NCxhKSk7aWYocl8oYSkpe2lmKGI9PT0ic3RyaW5nIilyZXR1cm4gYj0oMCxfLnhyKShOdW1iZXIoYSkpLCgwLF8udnIpKGIpJiZiPj0wP2E9U3RyaW5nKGIpOihiPWEuaW5kZXhPZigiLiIpLGIhPT0tMSYmKGE9YS5zdWJzdHJpbmcoMCxiKSksYVswXT09PSItIj9iPSExOihiPWEubGVuZ3RoLGI9YjwyMD8hMDpiPT09MjAmJmE8PSIxODQ0Njc0NDA3MzcwOTU1MTYxNSIpLGJ8fChNWihhKSxhPW1fKElaLEpaKSkpLGE7aWYoYj09PSJudW1iZXIiKXJldHVybiBhPSgwLF8ueHIpKGEpLGE+PTAmJigwLF8udnIpKGEpfHwoTFooYSksYT1uXyhJWixKWikpLGF9fTtycmE9ZnVuY3Rpb24oYSl7aWYoYT09bnVsbHx8dHlwZW9mIGE9PSJzdHJpbmcifHxhIGluc3RhbmNlb2YgXy5SYylyZXR1cm4gYX07CnNyYT1mdW5jdGlvbihhKXtpZih0eXBlb2YgYSE9PSJzdHJpbmciKXRocm93IEVycm9yKCk7cmV0dXJuIGF9O3RyYT1mdW5jdGlvbihhKXtyZXR1cm4gXy5OdyhhLCEwKX07Ql89ZnVuY3Rpb24oYSl7YT1fLmVkKGEsMSx2b2lkIDAsdm9pZCAwLHRyYSk7cmV0dXJuIGE9PW51bGw/Xy5NdygpOmF9OwpDXz1mdW5jdGlvbihhLGIsYyl7Xy5udyhhKTt2YXIgZD1hLkRhLGU9ZFtfLkFjXXwwO2lmKGI9PW51bGwpcmV0dXJuIF8ucHcoZCxlLDMpLGE7dmFyIGY9Yj09PV8ubXI/NzpiW18uQWNdfDAsaD1mLGs9Xy5UeShmKSxsPWt8fE9iamVjdC5pc0Zyb3plbihiKTtrfHwoZj0wKTtsfHwoYj1bLi4uYl0saD0wLGY9Xy5VeShmLGUpLGw9ITEpO2Z8PTU7az0oNCZmPzUxMiZmPzUxMjoxMDI0JmY/MTAyNDowOnZvaWQgMCk/PzEwMjQ7Znw9aztmb3IobGV0IG09MDttPGIubGVuZ3RoO20rKyl7bGV0IG49YlttXSxwPWMobixrKTtPYmplY3QuaXMobixwKXx8KGwmJihiPVsuLi5iXSxoPTAsZj1fLlV5KGYsZSksbD0hMSksYlttXT1wKX1mIT09aCYmKGwmJihiPVsuLi5iXSxmPV8uVXkoZixlKSksYltfLkFjXT1mKTtfLnB3KGQsZSwzLGIpO3JldHVybiBhfTsKRF89ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9YS5nZXQoZCk7aWYoZSE9bnVsbClyZXR1cm4gZTtlPTA7Zm9yKGxldCBmPTA7ZjxkLmxlbmd0aDtmKyspe2xldCBoPWRbZl07Xy5kZChiLGgpIT1udWxsJiYoZSE9PTAmJihjPV8ucHcoYixjLGUpKSxlPWgpfWEuc2V0KGQsZSk7cmV0dXJuIGV9O0ZfPWZ1bmN0aW9uKGEsYixjLGQpe18ubncoYSk7YT1hLkRhO3ZhciBlPWFbXy5BY118MDtpZihkPT1udWxsKXt2YXIgZj1hW0VfXT8/KGFbRV9dPW5ldyBNYXApO2lmKERfKGYsYSxlLGMpPT09YilmLnNldChjLDApO2Vsc2UgcmV0dXJufWVsc2V7Zj1hW0VfXT8/KGFbRV9dPW5ldyBNYXApO2xldCBoPURfKGYsYSxlLGMpO2ghPT1iJiYoaCYmKGU9Xy5wdyhhLGUsaCkpLGYuc2V0KGMsYikpfV8ucHcoYSxlLGIsZCl9O0dfPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLkRhO3JldHVybiBfLld5KGEsZCxkW18uQWNdfDAsYixjLHZvaWQgMD09PV8ub3I/Mjo0LCExLCEwKX07CkhfPWZ1bmN0aW9uKGEsYixjKXtfLm53KGEpO3ZhciBkPWEuRGEsZT1kW18uQWNdfDA7aWYoYz09bnVsbClyZXR1cm4gXy5wdyhkLGUsYiksYTt2YXIgZj1jPT09Xy5tcj83OmNbXy5BY118MCxoPWYsaz1fLlR5KGYpLGw9a3x8T2JqZWN0LmlzRnJvemVuKGMpLG09ITAsbj0hMDtmb3IobGV0IHI9MDtyPGMubGVuZ3RoO3IrKyl7dmFyIHA9Y1tyXTtrfHwocD1fLkJjKHApLG0mJihtPSFwKSxuJiYobj1wKSl9a3x8KGY9bT8xMzo1LGY9bj9mJi00MDk3OmZ8NDA5Nik7bCYmZj09PWh8fChjPVsuLi5jXSxoPTAsZj1fLlV5KGYsZSkpO2YhPT1oJiYoY1tfLkFjXT1mKTtlPV8ucHcoZCxlLGIsYyk7MiZmfHwhKDQwOTYmZnx8MTYmZil8fF8ub3coZCxlKTtyZXR1cm4gYX07SV89ZnVuY3Rpb24oYSxiLGM9Xy55cil7cmV0dXJuIF8uZWQoYSxiLHZvaWQgMCx2b2lkIDAsel8pPz9jfTtKXz1mdW5jdGlvbihhLGIsYz0iIixkKXtyZXR1cm4gXy5YdChfLmVkKGEsYixkKSk/P2N9OwpLXz1mdW5jdGlvbihhKXthPV8uZWQoYSwxKTtyZXR1cm4oYT09bnVsbD9hOigwLF8ud3IpKGEpP2F8MDp2b2lkIDApPz8wfTtMXz1mdW5jdGlvbihhLGIsYyl7aWYoQXJyYXkuaXNBcnJheShiKSl7dmFyIGQ9YltfLkFjXXwwO2lmKGQmNClyZXR1cm4gYjtmb3IodmFyIGU9MCxmPTA7ZTxiLmxlbmd0aDtlKyspe2xldCBoPWEoYltlXSk7aCE9bnVsbCYmKGJbZisrXT1oKX1mPGUmJihiLmxlbmd0aD1mKTthPWR8MTtjJiYoYT0oYXw0KSYtMTUzNyk7YSE9PWQmJihiW18uQWNdPWEpO2MmJmEmMiYmT2JqZWN0LmZyZWV6ZShiKTtyZXR1cm4gYn19O01fPWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBfLmd6KGEsYil9OwpPXz1mdW5jdGlvbihhLGIsYyl7Yj1xXyhiKTtiIT1udWxsJiYoXy5aeShhLGMsMSksYT1hLmosYz1OX3x8KE5fPW5ldyBEYXRhVmlldyhuZXcgQXJyYXlCdWZmZXIoOCkpKSxjLnNldEZsb2F0NjQoMCwrYiwhMCksSVo9Yy5nZXRVaW50MzIoMCwhMCksSlo9Yy5nZXRVaW50MzIoNCwhMCksZV8oYSxJWiksZV8oYSxKWikpfTtQXz1mdW5jdGlvbihhLGIsYyl7Yj1xcmEoYik7aWYoYiE9bnVsbCl7c3dpdGNoKHR5cGVvZiBiKXtjYXNlICJzdHJpbmciOlZaKGIpfWlmKGIhPW51bGwpc3dpdGNoKF8uWnkoYSxjLDApLHR5cGVvZiBiKXtjYXNlICJudW1iZXIiOmE9YS5qO0xaKGIpO2RfKGEsSVosSlopO2JyZWFrO2Nhc2UgImJpZ2ludCI6Yz1jXyhiLFRaLGdyYSk7ZF8oYS5qLGMubyxjLmopO2JyZWFrO2RlZmF1bHQ6Yz1WWihiKSxkXyhhLmosYy5vLGMuail9fX07UV89ZnVuY3Rpb24oYSxiLGMpe2I9Xy5zeChiKTtiIT1udWxsJiZiIT1udWxsJiYoXy5aeShhLGMsMCksZl8oYS5qLGIpKX07ClJfPWZ1bmN0aW9uKGEsYixjKXtiPV8uWHQoYik7YiE9bnVsbCYma18oYSxjLEhaKGIpKX07U189ZnVuY3Rpb24oYSl7cmV0dXJuIGI9Pl8uWHgoYSxiKX07aHJhPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgbF8oYVswXS50b0xvd2VyQ2FzZSgpKX07Xy5lVj1mdW5jdGlvbihhLGIpe3RoaXMueD1hIT09dm9pZCAwP2E6MDt0aGlzLnk9YiE9PXZvaWQgMD9iOjB9O3VyYT1mdW5jdGlvbihhKXtmb3IobGV0IGIgaW4gXy5zcylpZihhLmNhbGwodm9pZCAwLF8uc3NbYl0sYixfLnNzKSlyZXR1cm4gYn07dnJhPWZ1bmN0aW9uKGEsYil7aWYoYSE9PW51bGwmJmIgaW4gYSl0aHJvdyBFcnJvcigiQWAiK2IpO2FbYl09ITB9O1RfPWZ1bmN0aW9uKGEpe3JldHVybiBhIT09bnVsbCYmInByaXZlbWJlZCJpbiBhP2EucHJpdmVtYmVkOiExfTtVXz1mdW5jdGlvbihhKXt2YXIgYj17fTtmb3IobGV0IGMgaW4gYSliW2NdPWFbY107cmV0dXJuIGJ9OwpWXz1mdW5jdGlvbihhKXt2YXIgYj1kb2N1bWVudDtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIj9iLmdldEVsZW1lbnRCeUlkKGEpOmF9O1dfPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYjtiPWEuZmlyc3RDaGlsZDspYS5yZW1vdmVDaGlsZChiKX07WF89ZnVuY3Rpb24oYSl7dHlwZW9mIGE9PSJudW1iZXIiJiYoYT1NYXRoLnJvdW5kKGEpKyJweCIpO3JldHVybiBhfTtZXz1mdW5jdGlvbihhKXtyZXR1cm4gYT8oYT1hLnByaXZhdGVEb05vdEFjY2Vzc09yRWxzZVNhZmVTY3JpcHRXcmFwcGVkVmFsdWUpP18ua2IoYSk6bnVsbDpudWxsfTt3cmE9ZnVuY3Rpb24oKXt2YXIgYT1aXztfLnNhKCJ5dC5hZHMuYmlzY290dGkuZ2V0SWRfIil8fF8ucmEoInl0LmFkcy5iaXNjb3R0aS5nZXRJZF8iLGEpfTskXz1mdW5jdGlvbihhKXtfLnJhKCJ5dC5hZHMuYmlzY290dGkubGFzdElkXyIsYSl9OwphMD1mdW5jdGlvbihhKXtyZXR1cm4gYS5pbmRleE9mKCI/IikhPT0tMT8oYT0oYXx8IiIpLnNwbGl0KCIjIilbMF0sYT1hLnNwbGl0KCI/IiwyKSxfLmJqKGEubGVuZ3RoPjE/YVsxXTphWzBdKSk6e319O2IwPWZ1bmN0aW9uKGEpe2lmKGRvY3VtZW50LmJvZHkmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCl7bGV0IGI9ZG9jdW1lbnQuYm9keS5zY3JvbGxUb3ArZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcDthLmo9YS5jbGllbnRYKyhkb2N1bWVudC5ib2R5LnNjcm9sbExlZnQrZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnQpO2Eubz1hLmNsaWVudFkrYn19Owp4cmE9ZnVuY3Rpb24oYSxiLGMsZD17fSl7YS5hZGRFdmVudExpc3RlbmVyJiYoYiE9Im1vdXNlZW50ZXIifHwib25tb3VzZWVudGVyImluIGRvY3VtZW50P2IhPSJtb3VzZWxlYXZlInx8Im9ubW91c2VlbnRlciJpbiBkb2N1bWVudD9iPT0ibW91c2V3aGVlbCImJiJNb3pCb3hTaXppbmciaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlJiYoYj0iTW96TW91c2VQaXhlbFNjcm9sbCIpOmI9Im1vdXNlb3V0IjpiPSJtb3VzZW92ZXIiKTtyZXR1cm4gdXJhKGU9Pnt2YXIgZj10eXBlb2YgZVs0XT09PSJib29sZWFuIiYmZVs0XT09ISFkLGg7aWYoaD1fLkFhKGVbNF0pJiZfLkFhKGQpKWE6e2g9ZVs0XTtmb3IobGV0IGsgaW4gaClpZighKGsgaW4gZCl8fGhba10hPT1kW2tdKXtoPSExO2JyZWFrIGF9Zm9yKGxldCBrIGluIGQpaWYoIShrIGluIGgpKXtoPSExO2JyZWFrIGF9aD0hMH1yZXR1cm4hIWUubGVuZ3RoJiZlWzBdPT1hJiZlWzFdPT1iJiZlWzJdPT1jJiYoZnx8aCl9KX07CmQwPWZ1bmN0aW9uKGEsYixjLGQ9e30pe2lmKCFhfHwhYS5hZGRFdmVudExpc3RlbmVyJiYhYS5hdHRhY2hFdmVudClyZXR1cm4iIjt2YXIgZT14cmEoYSxiLGMsZCk7aWYoZSlyZXR1cm4gZTtlPSsrXy50cy5jb3VudCsiIjt2YXIgZj0hKGIhPSJtb3VzZWVudGVyIiYmYiE9Im1vdXNlbGVhdmUifHwhYS5hZGRFdmVudExpc3RlbmVyfHwib25tb3VzZWVudGVyImluIGRvY3VtZW50KTt2YXIgaD1mP2s9PntrPW5ldyBjMChrKTtpZighXy5ndyhrLnJlbGF0ZWRUYXJnZXQsbD0+bD09YSwhMCkpcmV0dXJuIGsuY3VycmVudFRhcmdldD1hLGsudHlwZT1iLGMuY2FsbChhLGspfTprPT57az1uZXcgYzAoayk7ay5jdXJyZW50VGFyZ2V0PWE7cmV0dXJuIGMuY2FsbChhLGspfTtoPV8uVmkoaCk7YS5hZGRFdmVudExpc3RlbmVyPyhiPT0ibW91c2VlbnRlciImJmY/Yj0ibW91c2VvdmVyIjpiPT0ibW91c2VsZWF2ZSImJmY/Yj0ibW91c2VvdXQiOmI9PSJtb3VzZXdoZWVsIiYmIk1vekJveFNpemluZyJpbgpkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUmJihiPSJNb3pNb3VzZVBpeGVsU2Nyb2xsIiksKDAsXy51cykoKXx8dHlwZW9mIGQ9PT0iYm9vbGVhbiI/YS5hZGRFdmVudExpc3RlbmVyKGIsaCxkKTphLmFkZEV2ZW50TGlzdGVuZXIoYixoLCEhZC5jYXB0dXJlKSk6YS5hdHRhY2hFdmVudChgb24ke2J9YCxoKTtfLnNzW2VdPVthLGIsYyxoLGRdO3JldHVybiBlfTt5cmE9ZnVuY3Rpb24oYSl7YSYmKHR5cGVvZiBhPT0ic3RyaW5nIiYmKGE9W2FdKSxfLnRiKGEsYj0+e2lmKGIgaW4gXy5zcyl7dmFyIGM9Xy5zc1tiXTtsZXQgZD1jWzBdLGU9Y1sxXSxmPWNbM107Yz1jWzRdO2QucmVtb3ZlRXZlbnRMaXN0ZW5lcj8oMCxfLnVzKSgpfHx0eXBlb2YgYz09PSJib29sZWFuIj9kLnJlbW92ZUV2ZW50TGlzdGVuZXIoZSxmLGMpOmQucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLGYsISFjLmNhcHR1cmUpOmQuZGV0YWNoRXZlbnQmJmQuZGV0YWNoRXZlbnQoYG9uJHtlfWAsZik7ZGVsZXRlIF8uc3NbYl19fSkpfTsKZTA9ZnVuY3Rpb24oYSl7dGhpcy5NPWE7dGhpcy5qPW51bGw7dGhpcy5CPTA7dGhpcy5JPW51bGw7dGhpcy5EPTA7dGhpcy5vPVtdO2ZvcihhPTA7YTw0O2ErKyl0aGlzLm8ucHVzaCgwKTt0aGlzLnY9MDt0aGlzLlo9ZDAod2luZG93LCJtb3VzZW1vdmUiLCgwLF8uQ2EpKHRoaXMuZ2EsdGhpcykpO2E9KDAsXy5DYSkodGhpcy5VLHRoaXMpO3R5cGVvZiBhPT09ImZ1bmN0aW9uIiYmKGE9Xy5WaShhKSk7dGhpcy5oYT13aW5kb3cuc2V0SW50ZXJ2YWwoYSwyNSl9O3pyYT1mdW5jdGlvbigpe3ZhciBhPV8ucmooImh0bWw1X3dlYl9wb19leHBlcmltZW50X2lkcyIpO3JldHVybiBBcnJheS5pc0FycmF5KGEpP18uSHcoYSxiPT5OdW1iZXIoYnx8MCkpOltOdW1iZXIoYXx8MCldfTsKQnJhPWZ1bmN0aW9uKCl7KHtoYW5kbGVFcnJvcjphPV8uSHAsbG06Yj1fLkVwfT17fSk7dmFyIGE7Zm9yKF8uR2s9bmV3IEFyYShhLGIpO18uSGsubGVuZ3RoPjA7KXt2YXIgYj1fLkhrLnNoaWZ0KCk7c3dpdGNoKGIudHlwZSl7Y2FzZSAiRVJST1IiOl8uR2suSmIoYi5wYXlsb2FkKTticmVhaztjYXNlICJFVkVOVCI6Xy5Hay5sbShiLmV2ZW50VHlwZSxiLnBheWxvYWQpfX19O0NyYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uR2woZD0+Yz9kLnVzZXJJZGVudGlmaWVyIT09dm9pZCAwJiYhYS5pbmNsdWRlcyhkLnVzZXJJZGVudGlmaWVyKSYmYy5pbmNsdWRlcyhkLnB1YmxpY05hbWUpOmQudXNlcklkZW50aWZpZXIhPT12b2lkIDAmJiFhLmluY2x1ZGVzKGQudXNlcklkZW50aWZpZXIpLGIpfTsKRHJhPWFzeW5jIGZ1bmN0aW9uKGEpe3ZhciBiPV8uVmooIll0SWRiTWV0YSBoYXNBbnlNZXRhIG90aGVyIik7cmV0dXJuKGF3YWl0IF8uR2woYz0+Yy51c2VySWRlbnRpZmllciE9PXZvaWQgMCYmYy51c2VySWRlbnRpZmllciE9PWIsYSkpLmxlbmd0aD4wfTtnMD1mdW5jdGlvbihhLGIpe2YwfHwoZjA9Xy5qZi5wYihhc3luYygpPT57dmFyIGM9YXdhaXQgXy5QbCgpO2lmKGMpe3ZhciBkPSEwO3RyeXtsZXQgZT1hd2FpdCBDcmEoYSxjLGIpO2lmKGUubGVuZ3RoKXtsZXQgZj1lWzBdO2F3YWl0IF8uQWwoZi5hY3R1YWxOYW1lKTthd2FpdCBfLkZsKGYuYWN0dWFsTmFtZSxjKX1lbHNlIGQ9ITF9Y2F0Y2goZSl7Xy5JayhlKSxkPSExfV8uamYuQWEoZjApO2YwPTA7ZCYmZzAoYSxiKX19KSl9O0VyYT1hc3luYyBmdW5jdGlvbigpe3ZhciBhPWF3YWl0IF8uUGwoKTtyZXR1cm4gYT9EcmEoYSk6ITF9OwpGcmE9ZnVuY3Rpb24oYSl7KDAsXy5lbCkoKTtpZighYS5ib2R5KXJldHVybiBhO3RyeXtsZXQgYj10eXBlb2YgYS5ib2R5PT09InN0cmluZyI/YS5ib2R5OkpTT04uc3RyaW5naWZ5KGEuYm9keSksYz1iO2lmKHR5cGVvZiBiPT09InN0cmluZyIpe2xldCBkPV8udW0oYik7aWYoZCE9bnVsbCYmKGQ+Xy53bXx8ZDxfLnhtKSlyZXR1cm4gYTtjPV8uTmkoKDAsXy55bSkoYikpOygwLF8uZWwpKCl9YS5oZWFkZXJzPXsiQ29udGVudC1FbmNvZGluZyI6Imd6aXAiLC4uLihhLmhlYWRlcnN8fHt9KX07YS5ib2R5PWM7cmV0dXJuIGF9Y2F0Y2goYil7cmV0dXJuIF8uV2koYiksYX19O0dyYT1hc3luYyBmdW5jdGlvbigpe2F3YWl0IF8uUGwoKSYmKF8uV2ooKXx8Xy54KCJud2xfaW5pdF9yZXF1aXJlX2RhdGFzeW5jX2lkX2tpbGxzd2l0Y2giKSkmJl8uc24oKSYmKF8udW49ITAsXy50bi5pc053bEluaXRpYWxpemVkPV8udW4sYXdhaXQgXy5wbigpLmF3YWl0SW5pdGlhbGl6YXRpb24oKSl9OwpoMD1mdW5jdGlvbihhKXtfLlNzW2FdJiYoYT1fLlNzW2FdLF8udGIoYSxiPT57Xy5Sc1tiXSYmZGVsZXRlIF8uUnNbYl19KSxhLmxlbmd0aD0wKX07aTA9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5MeigpO2lmKGIpaWYoYi5jbGVhcihhKSxhKWgwKGEpO2Vsc2UgZm9yKGxldCBjIGluIF8uU3MpaDAoYyl9O2wwPWZ1bmN0aW9uKHt1SzphPSExLE1JOmI9ITB9PXt9KXtpZihfLnNhKCJfbGFjdCIsd2luZG93KT09bnVsbCl7dmFyIGM9cGFyc2VJbnQoXy53KCJMQUNUIiksMTApO2M9aXNGaW5pdGUoYyk/RGF0ZS5ub3coKS1NYXRoLm1heChjLDApOi0xO18ucmEoIl9sYWN0IixjLHdpbmRvdyk7Xy5yYSgiX2ZhY3QiLGMsd2luZG93KTtjPT0tMSYmajAoKTtIcmEoYSxiKTtuZXcgZTAoKCk9PntrMCgibW91c2UiLDEwMCl9KX19OwpIcmE9ZnVuY3Rpb24oYT0hMSxiPSEwKXt2YXIgYz13aW5kb3c7ZDAoYy5kb2N1bWVudCwia2V5ZG93biIsajApO2QwKGMuZG9jdW1lbnQsImtleXVwIixqMCk7ZDAoYy5kb2N1bWVudCwibW91c2Vkb3duIixqMCk7ZDAoYy5kb2N1bWVudCwibW91c2V1cCIsajApO2E/ZDAoYywidG91Y2htb3ZlIiwoKT0+e2swKCJ0b3VjaG1vdmUiLDIwMCl9LHtwYXNzaXZlOiEwfSk6KGQwKGMsInJlc2l6ZSIsKCk9PntrMCgicmVzaXplIiwyMDApfSksYiYmZDAoYywic2Nyb2xsIiwoKT0+e2swKCJzY3JvbGwiLDIwMCl9KSk7ZDAoYy5kb2N1bWVudCwidG91Y2hzdGFydCIsajAse3Bhc3NpdmU6ITB9KTtkMChjLmRvY3VtZW50LCJ0b3VjaGVuZCIsajAse3Bhc3NpdmU6ITB9KX07azA9ZnVuY3Rpb24oYSxiKXttMFthXXx8KG0wW2FdPSEwLF8uamYucGIoKCk9PntqMCgpO20wW2FdPSExfSxiKSl9OwpqMD1mdW5jdGlvbigpe18uc2EoIl9sYWN0Iix3aW5kb3cpPT1udWxsJiZsMCgpO3ZhciBhPURhdGUubm93KCk7Xy5yYSgiX2xhY3QiLGEsd2luZG93KTtfLnNhKCJfZmFjdCIsd2luZG93KT09LTEmJl8ucmEoIl9mYWN0IixhLHdpbmRvdyk7KGE9Xy5zYSgieXRnbG9iYWwueXRVdGlsQWN0aXZpdHlDYWxsYmFja18iKSkmJmEoKX07bjA9ZnVuY3Rpb24oKXt2YXIgYT1fLmtvKCk7YS5pbmZvfHwoYS5pbmZvPXt9KTtyZXR1cm4gYS5pbmZvfTtJcmE9ZnVuY3Rpb24oKXt2YXIgYT1fLm5vKCk7YS5wcmVMb2dnZWRHZWxJbmZvc3x8KGEucHJlTG9nZ2VkR2VsSW5mb3M9W10pO3JldHVybiBhLnByZUxvZ2dlZEdlbEluZm9zfTsKSnJhPWZ1bmN0aW9uKGEsYj0iVW5rbm93biBmaWxlIixjPTAsZCxlLGYpe3ZhciBoPSExLGs9Xy5SaSgibG9nX3dpbmRvd19vbmVycm9yX2ZyYWN0aW9uIik7aWYoayYmTWF0aC5yYW5kb20oKTxrKWg9ITA7ZWxzZXtrPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKTtmb3IobGV0IGw9MCxtPWsubGVuZ3RoO2w8bTtsKyspaWYoa1tsXS5zcmMuaW5kZXhPZigiL2RlYnVnLSIpPjApe2g9ITA7YnJlYWt9fWgmJihoPSExLGU/aD0hMDoodHlwZW9mIGE9PT0ic3RyaW5nIj9rPWE6RXJyb3JFdmVudCYmYSBpbnN0YW5jZW9mIEVycm9yRXZlbnQ/KGg9ITAsaz1hLm1lc3NhZ2UsYj1hLmZpbGVuYW1lLGM9YS5saW5lbm8sZD1hLmNvbG5vKTooaz0iVW5rbm93biBlcnJvciIsYj0iVW5rbm93biBmaWxlIixjPTApLGU9bmV3IF8uWGooayksZS5uYW1lPSJVbmhhbmRsZWRXaW5kb3dFcnJvciIsZS5tZXNzYWdlPWssZS5maWxlTmFtZT1iLGUubGluZU51bWJlcj1jLGlzTmFOKGQpPwpkZWxldGUgZS5jb2x1bW5OdW1iZXI6ZS5jb2x1bW5OdW1iZXI9ZCksZiYmXy5jdyhlLGYpLGg/Xy5HcChlKTpfLklwKGUpKX07bzA9ZnVuY3Rpb24oYSl7YSBpbnN0YW5jZW9mIEVycm9yP18uR3AoYSk6KGE9Xy5BYShhKT9KU09OLnN0cmluZ2lmeShhKTpTdHJpbmcoYSksYT1uZXcgXy5YaihhKSxhLm5hbWU9IlJlamVjdGVkUHJvbWlzZUVycm9yIixfLklwKGEpKX07S3JhPWZ1bmN0aW9uKCl7Xy50YihfLncoIkVSUk9SUyIpfHxbXSxhPT57Xy5HcC5hcHBseShudWxsLGEpfSk7Xy5RaSgiRVJST1JTIixbXSl9O3AwPWZ1bmN0aW9uKCl7cmV0dXJuKF8ueCgiY3NpX3VzZV90aW1lX29yaWdpbiIpfHxfLngoImNzaV91c2VfdGltZV9vcmlnaW5fdHZodG1sNSIpKSYmXy5zcS50aW1lT3JpZ2luP01hdGguZmxvb3IoXy5zcS50aW1lT3JpZ2luKTpfLnNxLnRpbWluZy5uYXZpZ2F0aW9uU3RhcnR9O3EwPWZ1bmN0aW9uKGEpe3JldHVybiBNYXRoLnJvdW5kKHAwKCkrYSl9OwpyMD1mdW5jdGlvbigpe3ZhciBhO18ueCgiY3NpX3VzZV9wZXJmb3JtYW5jZV9uYXZpZ2F0aW9uX3RpbWluZyIpPyhhPV8uc3E/LmdldEVudHJpZXNCeVR5cGU/LigibmF2aWdhdGlvbiIpPy5bMF0/LnRvSlNPTj8uKCkpPyhhLnJlcXVlc3RTdGFydD1xMChhLnJlcXVlc3RTdGFydCksYS5yZXNwb25zZUVuZD1xMChhLnJlc3BvbnNlRW5kKSxhLnJlZGlyZWN0U3RhcnQ9cTAoYS5yZWRpcmVjdFN0YXJ0KSxhLnJlZGlyZWN0RW5kPXEwKGEucmVkaXJlY3RFbmQpLGEuZG9tYWluTG9va3VwRW5kPXEwKGEuZG9tYWluTG9va3VwRW5kKSxhLmNvbm5lY3RTdGFydD1xMChhLmNvbm5lY3RTdGFydCksYS5jb25uZWN0RW5kPXEwKGEuY29ubmVjdEVuZCksYS5yZXNwb25zZVN0YXJ0PXEwKGEucmVzcG9uc2VTdGFydCksYS5zZWN1cmVDb25uZWN0aW9uU3RhcnQ9cTAoYS5zZWN1cmVDb25uZWN0aW9uU3RhcnQpLGEuZG9tYWluTG9va3VwU3RhcnQ9cTAoYS5kb21haW5Mb29rdXBTdGFydCksYS5pc1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZz0KITApOmE9Xy5zcS50aW1pbmc6YT1fLngoImNzaV9wZXJmb3JtYW5jZV90aW1pbmdfdG9fb2JqZWN0Iik/SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShfLnNxLnRpbWluZykpOl8uc3EudGltaW5nO3JldHVybiBhfTtMcmE9ZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudDtpZigidmlzaWJpbGl0eVN0YXRlImluIGEpYT1hLnZpc2liaWxpdHlTdGF0ZTtlbHNle3ZhciBiPV8ucnMrIlZpc2liaWxpdHlTdGF0ZSI7YT1iIGluIGE/YVtiXTp2b2lkIDB9c3dpdGNoKGEpe2Nhc2UgImhpZGRlbiI6cmV0dXJuIDA7Y2FzZSAidmlzaWJsZSI6cmV0dXJuIDE7Y2FzZSAicHJlcmVuZGVyIjpyZXR1cm4gMjtjYXNlICJ1bmxvYWRlZCI6cmV0dXJuIDM7ZGVmYXVsdDpyZXR1cm4tMX19OwpNcmE9ZnVuY3Rpb24oKXtpZihfLnNxLmdldEVudHJpZXNCeVR5cGUpe3ZhciBhPV8uc3EuZ2V0RW50cmllc0J5VHlwZSgicGFpbnQiKTtpZihhPV8udmIoYSxjPT5jLm5hbWU9PT0iZmlyc3QtcGFpbnQiKSlyZXR1cm4gcTAoYS5zdGFydFRpbWUpfXZhciBiO18ueCgiY3NpX3VzZV9wZXJmb3JtYW5jZV9uYXZpZ2F0aW9uX3RpbWluZyIpP2I9Xy5zcS5nZXRFbnRyaWVzQnlUeXBlKCJmaXJzdC1wYWludCIpWzBdLnN0YXJ0VGltZTpiPV8uc3EudGltaW5nLmFLO3JldHVybiBiP01hdGgubWF4KDAsYik6MH07Ck5yYT1mdW5jdGlvbigpe3ZhciBhPV8udygiVElNSU5HX0lORk8iLHt9KSxiPXt9LGM9KGQsZSxmKT0+e2U9ZS5tYXRjaCgiX3JpZCIpP2Uuc3BsaXQoIl9yaWQiKVswXTplO3R5cGVvZiBmPT09Im51bWJlciImJihmPUpTT04uc3RyaW5naWZ5KGYpKTtkLnJlcXVlc3RJZHM/ZC5yZXF1ZXN0SWRzLnB1c2goe2VuZHBvaW50OmUsaWQ6Zn0pOmQucmVxdWVzdElkcz1be2VuZHBvaW50OmUsaWQ6Zn1dfTtmb3IobGV0IFtkLGVdb2YgT2JqZWN0LmVudHJpZXMoYSkpe2E9ZDtsZXQgZj1lO3N3aXRjaChhKXtjYXNlICJHZXRCcm93c2VfcmlkIjpjKGIsYSxmKTticmVhaztjYXNlICJHZXRHdWlkZV9yaWQiOmMoYixhLGYpO2JyZWFrO2Nhc2UgIkdldEhvbWVfcmlkIjpjKGIsYSxmKTticmVhaztjYXNlICJHZXRQbGF5ZXJfcmlkIjpjKGIsYSxmKTticmVhaztjYXNlICJHZXRTZWFyY2hfcmlkIjpjKGIsYSxmKTticmVhaztjYXNlICJHZXRTZXR0aW5nc19yaWQiOmMoYixhLGYpO2JyZWFrO2Nhc2UgIkdldFRyZW5kaW5nX3JpZCI6YyhiLAphLGYpO2JyZWFrO2Nhc2UgIkdldFdhdGNoTmV4dF9yaWQiOmMoYixhLGYpO2JyZWFrO2Nhc2UgInl0X3JlZCI6Yi5pc1JlZFN1YnNjcmliZXI9ISFmO2JyZWFrO2Nhc2UgInl0X2FkIjpiLmlzTW9uZXRpemVkPSEhZn19cmV0dXJuIGJ9O09yYT1mdW5jdGlvbigpe3ZhciBhPXdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbCxiPV8uc3EuZ2V0RW50cmllc0J5VHlwZSgicmVzb3VyY2UiKTtiPWpyYShiLGM9PmMubmFtZS5pbmRleE9mKGAke2F9Ly9mb250cy5nc3RhdGljLmNvbS9zL2ApPT09MCk7KGI9a3JhKGIsKGMsZCk9PmQuZHVyYXRpb24+Yy5kdXJhdGlvbj9kOmMpKSYmYi5zdGFydFRpbWU+MCYmYi5yZXNwb25zZUVuZD4wJiYoXy5ucSgid2ZmcyIscTAoYi5zdGFydFRpbWUpKSxfLm5xKCJ3ZmZlIixxMChiLnJlc3BvbnNlRW5kKSkpfTsKUHJhPWZ1bmN0aW9uKGEsYil7YT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGEpO2lmKCFhKXJldHVybiExO3ZhciBjPSIiLGQ9YS5ub2RlTmFtZTtkPT09IlNDUklQVCI/KGM9YS5zcmMsY3x8KGM9YS5nZXRBdHRyaWJ1dGUoImRhdGEtdGltaW5nLWhyZWYiKSkmJihjPXdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbCtjKSk6ZD09PSJMSU5LIiYmKGM9YS5ocmVmKTtfLmliKGRvY3VtZW50KSYmYS5zZXRBdHRyaWJ1dGUoIm5vbmNlIixfLmliKGRvY3VtZW50KSk7cmV0dXJuIGM/KGE9Xy5zcS5nZXRFbnRyaWVzQnlOYW1lKGMpKSYmYVswXSYmKGE9YVswXSxjPXAwKCksXy5ucSgicnNmXyIrYixjK01hdGgucm91bmQoYS5mZXRjaFN0YXJ0KSksXy5ucSgicnNlXyIrYixjK01hdGgucm91bmQoYS5yZXNwb25zZUVuZCkpLGEudHJhbnNmZXJTaXplIT09dm9pZCAwJiZhLnRyYW5zZmVyU2l6ZT09PTApPyEwOiExOiExfTsKUXJhPWZ1bmN0aW9uKCl7dmFyIGE9SXJhKCksYj1fLm9vKCksYz12b2lkIDA7Zm9yKHZhciBkPTA7ZDxhLmxlbmd0aDtkKyspe2xldCBrPWFbZF07aWYoay5sb2FkVHlwZSl7Yz1rLmxvYWRUeXBlO2JyZWFrfX1pZihfLmxvKCkubG9hZFR5cGU9PT0iY29sZCImJihiLmxvYWRUeXBlPT09ImNvbGQifHxjPT09ImNvbGQiKSl7Yz1fLm1vKCk7ZD1fLm5vKCk7ZD1kLmdlbFRpY2tzP2QuZ2VsVGlja3M6ZC5nZWxUaWNrcz17fTtmb3IodmFyIGUgaW4gYyllIGluIGR8fHR5cGVvZiBjW2VdPT09Im51bWJlciImJl8ubnEoZSxfLnVxKGUpKTt2YXIgZj17fSxoPSExO2U9az0+e18ueW4oYixrKTtfLnluKGYsayk7aD0hMH07Zm9yKGxldCBrIG9mIGEpZShrKTtoJiZfLnBxKGYpfX07CnQwPWZ1bmN0aW9uKGEsYil7Xy5WaSgoKT0+e18udW8oIiIpLmluZm8uYWN0aW9uVHlwZT1hO2ImJl8uUWkoIlRJTUlOR19BRlRfS0VZUyIsYik7Xy5RaSgiVElNSU5HX0FDVElPTiIsYSk7dmFyIGM9TnJhKCk7T2JqZWN0LmtleXMoYykubGVuZ3RoPjAmJl8ucHEoYyk7Yz17aXNOYXZpZ2F0aW9uOiEwLGFjdGlvblR5cGU6Xy5QeihfLncoIlRJTUlOR19BQ1RJT04iKSl9O3ZhciBkPV8udygiUFJFVklPVVNfQUNUSU9OIik7ZCYmKGMucHJldmlvdXNBY3Rpb249Xy5QeihkKSk7aWYoZD1fLncoIkNMSUVOVF9QUk9UT0NPTCIpKWMuaHR0cFByb3RvY29sPWQ7aWYoZD1fLncoIkNMSUVOVF9UUkFOU1BPUlQiKSljLnRyYW5zcG9ydFByb3RvY29sPWQ7KGQ9Xy5pcSgpKSYmZCE9PSJVTkRFRklORURfQ1NOIiYmKGMuY2xpZW50U2NyZWVuTm9uY2U9ZCk7ZD1McmEoKTtpZihkPT09MXx8ZD09PS0xKWMuaXNWaXNpYmxlPSEwO18ubG8oKTtuMCgpO2MubG9hZFR5cGU9ImNvbGQiO2Q9bjAoKTt2YXIgZT0KcjAoKSxmPXAwKCksaD1fLncoIkNTSV9TVEFSVF9USU1FU1RBTVBfTUlMTElTIiwwKTtoPjAmJiFfLngoImVtYmVkc193ZWJfZW5hYmxlX2NzaV9zdGFydF9vdmVycmlkZV9raWxsc3dpdGNoIikmJihmPWgpO2YmJihfLm5xKCJzcnQiLGUucmVzcG9uc2VTdGFydCksZC5wcmVyZW5kZXIhPT0xJiZfLm9xKGYpKTtkPU1yYSgpO2Q+MCYmXy5ucSgiZnB0IixkKTtkPXIwKCk7ZC5pc1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyYmXy5wcSh7cGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOiEwfSx2b2lkIDApO18ubnEoIm5yZXFzIixkLnJlcXVlc3RTdGFydCx2b2lkIDApO18ubnEoIm5yZXNzIixkLnJlc3BvbnNlU3RhcnQsdm9pZCAwKTtfLm5xKCJucmVzZSIsZC5yZXNwb25zZUVuZCx2b2lkIDApO2QucmVkaXJlY3RFbmQtZC5yZWRpcmVjdFN0YXJ0PjAmJihfLm5xKCJucnMiLGQucmVkaXJlY3RTdGFydCx2b2lkIDApLF8ubnEoIm5yZSIsZC5yZWRpcmVjdEVuZCx2b2lkIDApKTtkLmRvbWFpbkxvb2t1cEVuZC0KZC5kb21haW5Mb29rdXBTdGFydD4wJiYoXy5ucSgibmRuc3MiLGQuZG9tYWluTG9va3VwU3RhcnQsdm9pZCAwKSxfLm5xKCJuZG5zZSIsZC5kb21haW5Mb29rdXBFbmQsdm9pZCAwKSk7ZC5jb25uZWN0RW5kLWQuY29ubmVjdFN0YXJ0PjAmJihfLm5xKCJudGNwcyIsZC5jb25uZWN0U3RhcnQsdm9pZCAwKSxfLm5xKCJudGNwZSIsZC5jb25uZWN0RW5kLHZvaWQgMCkpO2Quc2VjdXJlQ29ubmVjdGlvblN0YXJ0Pj1wMCgpJiZkLmNvbm5lY3RFbmQtZC5zZWN1cmVDb25uZWN0aW9uU3RhcnQ+MCYmKF8ubnEoIm5zdGNwcyIsZC5zZWN1cmVDb25uZWN0aW9uU3RhcnQsdm9pZCAwKSxfLm5xKCJudGNwZSIsZC5jb25uZWN0RW5kLHZvaWQgMCkpO18uc3EmJiJnZXRFbnRyaWVzQnlUeXBlImluIF8uc3EmJk9yYSgpO2Q9W107aWYoZG9jdW1lbnQucXVlcnlTZWxlY3RvciYmXy5zcSYmXy5zcS5nZXRFbnRyaWVzQnlOYW1lKWZvcih2YXIgayBpbiBzMClzMC5oYXNPd25Qcm9wZXJ0eShrKSYmKGU9CnMwW2tdLFByYShrLGUpJiZkLnB1c2goZSkpO2lmKGQubGVuZ3RoPjApe2MucmVzb3VyY2VJbmZvPVtdO2ZvcihsZXQgbCBvZiBkKWMucmVzb3VyY2VJbmZvLnB1c2goe3Jlc291cmNlQ2FjaGU6bH0pfV8ucHEoYyk7UXJhKCk7Xy5ReigpO2s9Xy53KCJUSU1JTkdfQUNUSU9OIik7Xy5zYSgieXRnbG9iYWwudGltaW5ncmVhZHlfIikmJmsmJl8uUnooKSYmXy52cSgpJiZfLnRxKCl9KSgpfTt2MD1mdW5jdGlvbihhKXtpZighXy54KCJ1bml2ZXJzYWxfY3NpX25ldHdvcmtfdGlja3MiKSlyZXR1cm4iIjthPV8uUWIoYSl8fCIiO3ZhciBiPU9iamVjdC5rZXlzKHUwKTtmb3IobGV0IGM9MDtjPGIubGVuZ3RoO2MrKyl7bGV0IGQ9YltjXTtpZihhLmluY2x1ZGVzKGQpKXJldHVybiBkfXJldHVybiIifTsKdzA9ZnVuY3Rpb24oYSl7aWYoIV8ueCgidW5pdmVyc2FsX2NzaV9uZXR3b3JrX3RpY2tzIikpcmV0dXJuKCk9Pnt9O3ZhciBiPXUwW2FdO3JldHVybiBiPyhfLkl6KGIpLCgpPT57dmFyIGM9Xy54KCJ1bml2ZXJzYWxfY3NpX25ldHdvcmtfdGlja3MiKT8oYz1ScmFbYV0pP18uSXooYyk6ITE6ITE7cmV0dXJuIGN9KTooKT0+e319O3gwPWZ1bmN0aW9uKGEpe18uVmkoKCk9PntpZighXy5SeigiYXR0ZXN0YXRpb25fY2hhbGxlbmdlX2ZldGNoIil8fF8uQnEoYSwiYXR0ZXN0YXRpb25fY2hhbGxlbmdlX2ZldGNoIikpcmV0dXJuITE7Xy5BcShhLHZvaWQgMCwiYXR0ZXN0YXRpb25fY2hhbGxlbmdlX2ZldGNoIik7cmV0dXJuITB9KSgpfTtTcmE9ZnVuY3Rpb24oKXtfLlZpKCgpPT57dmFyIGE9Xy5wbygpO3JlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e3NldFRpbWVvdXQoKCk9PnthPT09Xy5wbygpJiZfLkFxKCJvbCIsdm9pZCAwLHZvaWQgMCl9LDApfSl9KSgpfTsKVHJhPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiBudWxsO2E9Xy5YdChfLmVkKGEsNCx2b2lkIDAsXy5EdikpO3JldHVybiBhPT09bnVsbHx8YT09PXZvaWQgMD9udWxsOl8uVGEoYSl9O3kwPWZ1bmN0aW9uKGEpe3JldHVybiBfLlRhKGE9PT1udWxsPyJudWxsIjphPT09dm9pZCAwPyJ1bmRlZmluZWQiOmEpfTtBMD1mdW5jdGlvbigpe3JldHVybiB6MC5sb2FkZWR8fCh6MC5sb2FkZWQ9ImxvYWRlZCIucmVwbGFjZSgvXC0oW2Etel0pL2csKGEsYik9PmIudG9VcHBlckNhc2UoKSkpfTtCMD1mdW5jdGlvbihhKXtyZXR1cm4gYT9hLmRhdGFzZXQ/YS5kYXRhc2V0W0EwKCldOmEuZ2V0QXR0cmlidXRlKCJkYXRhLWxvYWRlZCIpOm51bGx9O0MwPWZ1bmN0aW9uKGEpe2EmJihhLmRhdGFzZXQ/YS5kYXRhc2V0W0EwKCldPSJ0cnVlIjppcmEoYSkpfTsKRDA9ZnVuY3Rpb24oYSl7dmFyIGI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpO18uTHkoYixhKTtyZXR1cm5ganMtJHtfLk15KGIuaHJlZi5yZXBsYWNlKC9eW2EtekEtWl0rOlwvXC8vLCIvLyIpKX1gfTtFMD1mdW5jdGlvbihhKXthPUQwKGEpO3ZhciBiPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGEpO2ImJihpMChhKSxiLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYikpfTtHMD1mdW5jdGlvbihhLGIpe2EmJmImJihhPWAke18uZncoYil9YCwoYT1GMFthXSkmJl8uTnooYSkpfTsKVXJhPWZ1bmN0aW9uKGEsYixjLGQ9bnVsbCl7dmFyIGU9Xy5DZCgiU0NSSVBUIik7ZS5pZD1iO2Uub25sb2FkPSgpPT57YyYmc2V0VGltZW91dChjLDApfTtlLm9ucmVhZHlzdGF0ZWNoYW5nZT0oKT0+e3N3aXRjaChlLnJlYWR5U3RhdGUpe2Nhc2UgImxvYWRlZCI6Y2FzZSAiY29tcGxldGUiOmUub25sb2FkKCl9fTtkJiZlLnNldEF0dHJpYnV0ZSgibm9uY2UiLGQpO18ub2IoZSx0eXBlb2YgYT09PSJzdHJpbmciP3kwKGEpOmEpO2E9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXXx8ZG9jdW1lbnQuYm9keTthLmluc2VydEJlZm9yZShlLGEuZmlyc3RDaGlsZCk7cmV0dXJuIGV9OwpWcmE9ZnVuY3Rpb24oYSxiLGM9bnVsbCl7dmFyIGQ9RDAodHlwZW9mIGE9PT0ic3RyaW5nIj9hOmEudG9TdHJpbmcoKSksZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChkKSxmPWUmJkIwKGUpLGg9ZSYmIWY7Zj9iJiZiKCk6KGImJihmPV8uTXooZCxiKSxiPWAke18uZncoYil9YCxGMFtiXT1mKSxofHwoZT1VcmEoYSxkLCgpPT57QjAoZSl8fChDMChlKSxfLk96KGQpLF8ubWooKCk9PntpMChkKX0sMCkpfSxjKSkpfTtIMD1mdW5jdGlvbihhLGIsYz1udWxsKXtWcmEoYSxiLGMpfTtXcmE9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5DZCgiQSIpO18uTHkoYixuZXcgXy5XYShhKSk7cmV0dXJuYGNzcy0ke18uTXkoYi5ocmVmLnJlcGxhY2UoL15bYS16QS1aXSs6XC9cLy8sIi8vIikpfWB9OwpYcmE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpbmsiKTtkLmlkPWI7ZC5vbmxvYWQ9KCk9PntjJiZzZXRUaW1lb3V0KGMsMCl9O2E9eTAoYSk7Xy5xYihkLGEsInN0eWxlc2hlZXQiKTsoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXXx8ZG9jdW1lbnQuYm9keSkuYXBwZW5kQ2hpbGQoZCk7cmV0dXJuIGR9O1lyYT1mdW5jdGlvbihhKXt2YXIgYj1XcmEoYSksYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChiKSxkPWMmJkIwKGMpO2R8fGMmJiFkfHwoYz1YcmEoYSxiLCgpPT57aWYoIUIwKGMpKXtDMChjKTtfLk96KGIpO2xldCBlPV8uRGEoaTAsYik7Xy5taihlLDApfX0pKX07CkkwPWZ1bmN0aW9uKGEpe2EuRmE9ITE7aWYoYS5oYSlmb3IodmFyIGIgaW4gYS5qKWEuai5oYXNPd25Qcm9wZXJ0eShiKSYmYS5oYShiLGEualtiXSk7Zm9yKGxldCBjIGluIGEuSSlhLkkuaGFzT3duUHJvcGVydHkoYykmJmNsZWFyVGltZW91dChOdW1iZXIoYykpO2EuST17fTthLkI9bnVsbDthLmhhPW51bGw7Yj1hLmFwaTtmb3IobGV0IGMgaW4gYiliLmhhc093blByb3BlcnR5KGMpJiYoYltjXT1udWxsKTtiLmFkZEV2ZW50TGlzdGVuZXI9KGMsZCk9PnthLmFkZEV2ZW50TGlzdGVuZXIoYyxkKX07Yi5yZW1vdmVFdmVudExpc3RlbmVyPShjLGQpPT57YS5yZW1vdmVFdmVudExpc3RlbmVyKGMsZCl9O2IuZGVzdHJveT0oKT0+e2EuZGlzcG9zZSgpfTtiLmdldExhc3RFcnJvcj0oKT0+YS5nZXRMYXN0RXJyb3IoKTtiLmdldFBsYXllclR5cGU9KCk9PmEuZ2V0UGxheWVyVHlwZSgpO2IuZ2V0Q3VycmVudFZpZGVvQ29uZmlnPSgpPT5hLk1hO2IubG9hZE5ld1ZpZGVvQ29uZmlnPWM9Pgp7YS5sb2FkTmV3VmlkZW9Db25maWcoYyl9O2IuaXNSZWFkeT0oKT0+YS5pc1JlYWR5KCl9O0owPWZ1bmN0aW9uKGEpe3ZhciBiO2Eud2ViUGxheWVyQ29udGV4dENvbmZpZz9iPWEud2ViUGxheWVyQ29udGV4dENvbmZpZy5yb290RWxlbWVudElkOmI9YS5jb25maWcuYXR0cnMuaWQ7YS5lbGVtZW50SWQ9Ynx8YS5lbGVtZW50SWQ7YS5lbGVtZW50SWQ9PT0idmlkZW8tcGxheWVyIiYmKGEuZWxlbWVudElkPWEucGxheWVySWQsYS53ZWJQbGF5ZXJDb250ZXh0Q29uZmlnP2Eud2ViUGxheWVyQ29udGV4dENvbmZpZy5yb290RWxlbWVudElkPWEucGxheWVySWQ6YS5jb25maWcuYXR0cnMuaWQ9YS5wbGF5ZXJJZCk7YS5vPy5pZD09PWEuZWxlbWVudElkJiYoYS5lbGVtZW50SWQ9YCR7YS5lbGVtZW50SWR9LXBsYXllcmAsYS53ZWJQbGF5ZXJDb250ZXh0Q29uZmlnP2Eud2ViUGxheWVyQ29udGV4dENvbmZpZy5yb290RWxlbWVudElkPWEuZWxlbWVudElkOmEuY29uZmlnLmF0dHJzLmlkPWEuZWxlbWVudElkKX07ClMwPWZ1bmN0aW9uKGEpe2lmKCFhLmlhKCkmJiFhLlUpe3ZhciBiPUswKGEpO2lmKGImJihMMChhKT8iaHRtbDUiOm51bGwpPT09Imh0bWw1IilhLlo9Imh0bWw1IixhLmlzUmVhZHkoKXx8TTAoYSk7ZWxzZSBpZihOMChhKSxhLlo9Imh0bWw1IixiJiZhLnYmJmEudGFyZ2V0RWxlbWVudClhLnRhcmdldEVsZW1lbnQuYXBwZW5kQ2hpbGQoYS52KSxNMChhKTtlbHNle2EuY29uZmlnJiYoYS5jb25maWcubG9hZGVkPSEwKTtsZXQgYz0hMTthLkQ9KCk9PntjPSEwO3ZhciBkPU8wKGEsInBsYXllcl9ib290c3RyYXBfbWV0aG9kIik/Xy5zYSgieXQucGxheWVyLkFwcGxpY2F0aW9uLmNyZWF0ZUFsdGVybmF0ZSIpfHxfLnNhKCJ5dC5wbGF5ZXIuQXBwbGljYXRpb24uY3JlYXRlIik6Xy5zYSgieXQucGxheWVyLkFwcGxpY2F0aW9uLmNyZWF0ZSIpO3ZhciBlPWEuY29uZmlnP1AwKGEuY29uZmlnKTp2b2lkIDA7ZCYmZChhLnRhcmdldEVsZW1lbnQsZSxhLndlYlBsYXllckNvbnRleHRDb25maWcsCmEuRWIpO00wKGEpfTthLlU9ITA7Yj9hLkQoKTooSDAoUTAoYSksYS5EKSwoYj1acmEoYSkpJiZZcmEoYnx8IiIpLFIwKGEpJiYhYyYmXy5yYSgieXQucGxheWVyLkFwcGxpY2F0aW9uLmNyZWF0ZSIsbnVsbCkpfX19O1QwPWZ1bmN0aW9uKGEpe2EuY29uZmlnJiZhLmNvbmZpZy5sb2FkZWQhPT0hMCYmKGEuY29uZmlnLmxvYWRlZD0hMCwhYS5jb25maWcuYXJnc3x8YS5jb25maWcuYXJncy5hdXRvcGxheSE9PSIwIiYmYS5jb25maWcuYXJncy5hdXRvcGxheSE9PTAmJmEuY29uZmlnLmFyZ3MuYXV0b3BsYXkhPT0hMT9hLmFwaS5sb2FkVmlkZW9CeVBsYXllclZhcnMoYS5jb25maWcuYXJncz8/bnVsbCk6YS5hcGkuY3VlVmlkZW9CeVBsYXllclZhcnMoYS5jb25maWcuYXJncykpfTtQMD1mdW5jdGlvbihhKXt2YXIgYj17fTtmb3IobGV0IGMgb2YgT2JqZWN0LmtleXMoYSkpe2xldCBkPWFbY107YltjXT10eXBlb2YgZD09PSJvYmplY3QiP1VfKGQpOmR9cmV0dXJuIGJ9OwpVMD1mdW5jdGlvbihhLGIpe3ZhciBjPWI7aWYodHlwZW9mIGI9PT0ic3RyaW5nIil7aWYoYS55YVtiXSlyZXR1cm4gYS55YVtiXTtjPSguLi5kKT0+e3ZhciBlPV8uc2EoYik7aWYoZSl0cnl7ZS5hcHBseShfLnUsZCl9Y2F0Y2goZil7dGhyb3cgZD1uZXcgXy5YaigiUGxheWVyUHJveHkgZXJyb3Igd2hlbiBleGVjdXRpbmcgY2FsbGJhY2siLHtlcnJvcjpmfSksZC5sZXZlbD0iRVJST1IiLGQ7fX07YS55YVtiXT1jfXJldHVybiBjP2M6bnVsbH07TDA9ZnVuY3Rpb24oYSl7dmFyIGI9Vl8oYS5lbGVtZW50SWQpOyFiJiZhLm8mJmEuby5xdWVyeVNlbGVjdG9yJiYoYj1hLm8ucXVlcnlTZWxlY3RvcihgIyR7YS5lbGVtZW50SWR9YCkpO3JldHVybiBifTtRMD1mdW5jdGlvbihhKXtyZXR1cm4gYS53ZWJQbGF5ZXJDb250ZXh0Q29uZmlnP2Eud2ViUGxheWVyQ29udGV4dENvbmZpZy5qc1VybDooYT1hLmNvbmZpZy5hc3NldHMpP2EuanM6IiJ9OwpLMD1mdW5jdGlvbihhKXt2YXIgYj0hMCxjPUwwKGEpO2MmJmEuY29uZmlnJiYoYj1jLmRhdGFzZXQudmVyc2lvbj09PVEwKGEpKTtyZXR1cm4gYiYmISFfLnNhKCJ5dC5wbGF5ZXIuQXBwbGljYXRpb24uY3JlYXRlIil9O08wPWZ1bmN0aW9uKGEsYil7aWYoYS53ZWJQbGF5ZXJDb250ZXh0Q29uZmlnKXZhciBjPWEud2ViUGxheWVyQ29udGV4dENvbmZpZy5zZXJpYWxpemVkRXhwZXJpbWVudEZsYWdzO2Vsc2UgYS5jb25maWc/LmFyZ3MmJihjPWEuY29uZmlnLmFyZ3MuZmZsYWdzKTtyZXR1cm4oY3x8IiIpLnNwbGl0KCImIikuaW5jbHVkZXMoYCR7Yn09dHJ1ZWApfTsKTTA9ZnVuY3Rpb24oYSl7aWYoIWEuaWEoKSl7bGV0IGI9TDAoYSksYz0hMTtiJiZiLmdldEFwaUludGVyZmFjZSYmYi5nZXRBcGlJbnRlcmZhY2UoKSYmKGM9ITApO2M/KGEuVT0hMSwhTzAoYSwiaHRtbDVfcmVtb3ZlX25vdF9zZXJ2YWJsZV9jaGVja19raWxsc3dpdGNoIikmJmI/LmlzTm90U2VydmFibGUmJmEuY29uZmlnJiZiPy5pc05vdFNlcnZhYmxlKGEuY29uZmlnLmFyZ3M/LnZpZGVvX2lkKXx8JHJhKGEpKTphLlFhPXNldFRpbWVvdXQoKCk9PntNMChhKX0sNTApfX07TjA9ZnVuY3Rpb24oYSl7YS5jYW5jZWwoKTtJMChhKTthLlo9bnVsbDthLmNvbmZpZyYmKGEuY29uZmlnLmxvYWRlZD0hMSk7dmFyIGI9TDAoYSk7YiYmKEswKGEpfHwhUjAoYSk/YS52PWI6KGImJmIuZGVzdHJveSYmYi5kZXN0cm95KCksYS52PW51bGwpKTthLnRhcmdldEVsZW1lbnQmJldfKGEudGFyZ2V0RWxlbWVudCl9OwpacmE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEud2ViUGxheWVyQ29udGV4dENvbmZpZz9hLndlYlBsYXllckNvbnRleHRDb25maWcuY3NzVXJsOihhPWEuY29uZmlnLmFzc2V0cyk/YS5jc3M6IiJ9O1IwPWZ1bmN0aW9uKGEpe2E9YS5jb25maWc/LmFyZ3M/LmZmbGFncztyZXR1cm4hIWEmJmEuaW5kZXhPZigicGxheWVyX2Rlc3Ryb3lfb2xkX3ZlcnNpb249dHJ1ZSIpIT09LTF9OwokcmE9ZnVuY3Rpb24oYSl7STAoYSk7YS5GYT0hMDt2YXIgYj1MMChhKTtpZihiKXthLkI9VjAoYSxiLCJhZGRFdmVudExpc3RlbmVyIik7YS5oYT1WMChhLGIsInJlbW92ZUV2ZW50TGlzdGVuZXIiKTtsZXQgYz1iLmdldEFwaUludGVyZmFjZSgpO2M9Yy5jb25jYXQoYi5nZXRJbnRlcm5hbEFwaUludGVyZmFjZSgpKTtsZXQgZD1hLmFwaTtmb3IobGV0IGU9MDtlPGMubGVuZ3RoO2UrKyl7bGV0IGY9Y1tlXTtkW2ZdfHwoZFtmXT1WMChhLGIsZikpfX1mb3IobGV0IGMgaW4gYS5qKWEuai5oYXNPd25Qcm9wZXJ0eShjKSYmYS5CJiZhLkIoYyxhLmpbY10pO1QwKGEpO2Eub2EmJmEub2EoYS5hcGkpO2EuTS5wdWJsaXNoKCJvblJlYWR5IixhLmFwaSl9OwpWMD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YltjXTtyZXR1cm4oLi4uZSk9Pnt0cnl7cmV0dXJuIGEubGFzdEVycm9yPW51bGwsZC5hcHBseShiLGUpfWNhdGNoKGYpe2lmKGMhPT0ic2VuZEFiYW5kb25tZW50UGluZyIpdGhyb3cgZi5wYXJhbXM9YyxhLmxhc3RFcnJvcj1mLGU9bmV3IF8uWGooIlBsYXllclByb3h5IGVycm9yIGluIG1ldGhvZCBjYWxsIix7ZXJyb3I6ZixtZXRob2Q6YyxwbGF5ZXJJZDphLnBsYXllcklkfSksZS5sZXZlbD0iV0FSTklORyIsZTt9fX07CmFzYT1mdW5jdGlvbihhLGIpe3ZhciBjPWQ9Pnt2YXIgZT0oKT0+e2EuaWEoKTtpZighYS5pYSgpKXRyeXthLk0ucHVibGlzaChiLGQ/P3ZvaWQgMCl9Y2F0Y2goaCl7dmFyIGY9bmV3IF8uWGooIlBsYXllclByb3h5IGVycm9yIHdoZW4gY3JlYXRpbmcgZ2xvYmFsIGNhbGxiYWNrIix7ZXJyb3I6aC5tZXNzYWdlLGV2ZW50OmIscGxheWVySWQ6YS5wbGF5ZXJJZCxkYXRhOmQsb3JpZ2luYWxTdGFjazpoLnN0YWNrLGNvbXBvbmVudFN0YWNrOmguY29tcG9uZW50U3RhY2t9KTtmLmxldmVsPSJXQVJOSU5HIjt0aHJvdyBmO319O2lmKE8wKGEsIndlYl9wbGF5ZXJfcHVibGlzaF9ldmVudHNfaW1tZWRpYXRlbHkiKSllKCk7ZWxzZXtsZXQgZj1zZXRUaW1lb3V0KCgpPT57ZSgpO3ZhciBoPWEuSSxrPVN0cmluZyhmKTtrIGluIGgmJmRlbGV0ZSBoW2tdfSwwKTt2cmEoYS5JLFN0cmluZyhmKSl9fTtyZXR1cm4gYS5qW2JdPWN9Owpjc2E9ZnVuY3Rpb24oYSxiKXt2YXIgYz0icGxheWVyIjtjPXR5cGVvZiBjPT09InN0cmluZyI/Vl8oYyk6Yzt2YXIgZD1gJHtfLnZhYX1fJHtfLmZ3KGMpfWAsZT1XMFtkXTtlPW5ldyBic2EoYyxkLGEsYik7VzBbZF09ZTtlLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57ZGVsZXRlIFcwW2UuZ2V0SWQoKV19KTtyZXR1cm4gZS5hcGl9O1gwPWZ1bmN0aW9uKGEpe3ZhciBiPXt9O18ueCgianNvbl9jb25kZW5zZWRfcmVzcG9uc2UiKSYmKGIucHJldHR5UHJpbnQ9ImZhbHNlIik7cmV0dXJuIGE9Xy5laihhLGIpfTtZMD1mdW5jdGlvbihhKXt2YXIgYj1fLncoIklOTkVSVFVCRV9IT1NUX09WRVJSSURFIik7YiYmKGE9U3RyaW5nKGIpK1N0cmluZyhfLk55KGEpKSk7cmV0dXJuIGF9OwpaMD1mdW5jdGlvbihhLGI9IlBPU1QiKXthPXttZXRob2Q6Yixtb2RlOl8uZmooYSk/InNhbWUtb3JpZ2luIjoiY29ycyIsY3JlZGVudGlhbHM6Xy5maihhKT8ic2FtZS1vcmlnaW4iOiJpbmNsdWRlIn07Yj17fTt2YXIgYz17fTtmb3IobGV0IGQgb2YgT2JqZWN0LmtleXMoYikpYltkXSYmKGNbZF09YltkXSk7T2JqZWN0LmtleXMoYykubGVuZ3RoPjAmJihhLmhlYWRlcnM9Yyk7cmV0dXJuIGF9OyQwPWZ1bmN0aW9uKGEpe2E9YS5tYXRjaCgvKC4qKTo6Lio6Oi4qLyk7aWYoYSE9PW51bGwpcmV0dXJuIGFbMV19O2ExPWZ1bmN0aW9uKGEpe2lmKF8uWHooKSl7dmFyIGI9T2JqZWN0LmtleXMod2luZG93LmxvY2FsU3RvcmFnZSk7Zm9yKGxldCBjIG9mIGIpYj0kMChjKSxiPT09dm9pZCAwfHxhLmluY2x1ZGVzKGIpfHxzZWxmLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGMpfX07CmRzYT1mdW5jdGlvbigpe2lmKCFfLlh6KCkpcmV0dXJuITE7dmFyIGE9Xy5WaigpLGI9T2JqZWN0LmtleXMod2luZG93LmxvY2FsU3RvcmFnZSk7Zm9yKGxldCBjIG9mIGIpaWYoYj0kMChjKSxiIT09dm9pZCAwJiZiIT09YSlyZXR1cm4hMDtyZXR1cm4hMX07YjE9ZnVuY3Rpb24oYSl7Xy5PaShfLiR6LGFyZ3VtZW50cyl9O2MxPWFzeW5jIGZ1bmN0aW9uKGEpe2lmKGF3YWl0IF8uZUEoKSl7dmFyIGI9W10sYz1hd2FpdCBfLmRBLmtleXMoKTtmb3IobGV0IGQgb2YgYykoe2RhdGFzeW5jSWQ6Y309Xy5iQShkKSksIWN8fGEuaW5jbHVkZXMoYyl8fGIucHVzaChfLmRBLmRlbGV0ZShkKSk7UHJvbWlzZS5hbGwoYikudGhlbihkPT5kLnNvbWUoZT0+ZSkpfX07CmVzYT1hc3luYyBmdW5jdGlvbigpe2lmKCFhd2FpdCBfLmVBKCkpcmV0dXJuITE7dmFyIGE9Xy5WaigiY2FjaGUgY29udGFpbnMgb3RoZXIiKSxiPWF3YWl0IF8uZEEua2V5cygpO2ZvcihsZXQgYyBvZiBiKWlmKHtkYXRhc3luY0lkOmJ9PV8uYkEoYyksYiYmYiE9PWEpcmV0dXJuITA7cmV0dXJuITF9O2ZzYT1mdW5jdGlvbihhKXtpZihfLmhBLmhhcyhhKSYmXy5mQSYmKF8uZkE/LnRhZ05hbWUudG9Mb3dlckNhc2UoKT8/IiIpPT09YSl7bGV0IGI7KGI9Xy5mQSkubWk/PyhiLm1pPTApO18uZkEubWkrKztpZihfLmZBLm1pPjEpdGhyb3cgRXJyb3IoIlBiIik7cmV0dXJuIF8uZkF9fTtnc2E9ZnVuY3Rpb24oYSl7dmFyIGI9YT8udGFnTmFtZS50b0xvd2VyQ2FzZSgpPz8iIjtfLmZBIT09YSYmYi5pbmNsdWRlcygiLSIpJiZfLmdBLnNldChhLCEwKX07ZDE9ZnVuY3Rpb24oKXt0cnl7cmV0dXJuISF3aW5kb3c/LnRvcD8ubG9jYXRpb24uaHJlZiYmITF9Y2F0Y2goYSl7cmV0dXJuITB9fTsKZjE9ZnVuY3Rpb24oYT0iYmV2YXNyc2ciKXtyZXR1cm4gbmV3IFByb21pc2UoYj0+e3ZhciBjPXdpbmRvdz09PXdpbmRvdy50b3A/d2luZG93OmQxKCk/d2luZG93OndpbmRvdy50b3AsZD1jW2FdO2Q/LmJldmFzcnM/YihuZXcgZTEoZC5iZXZhc3JzKSk6KGR8fChkPXtucWZiZWw6W119LGNbYV09ZCksZC5ucWZiZWwucHVzaChlPT57YihuZXcgZTEoZSkpfSkpfSl9O2hzYT1mdW5jdGlvbihhKXthLmohPT12b2lkIDAmJihhLm8uZm9yRWFjaChiPT57YS5qPy5yZW1vdmVFdmVudExpc3RlbmVyKGIsYS52KX0pLGEuaj12b2lkIDApfTtnMT1mdW5jdGlvbihhKXt2YXIgYj17S2M6YS5jLHNsOmEuZSxMeTphLm1jPz8hMSxNeTphLm1lPz8hMX07YS5jbyYmKGIueWk9e1hvOmEuY28uYyxBdTphLmNvLmEsSkE6YS5jby5zfSk7cmV0dXJuIGJ9Owpqc2E9ZnVuY3Rpb24oYSl7cmV0dXJuIGFzeW5jKCk9Pnt2YXIgYj1hd2FpdCBhKCk7cmV0dXJue2Y6KCk9PmIueWcucHJvbWlzZSxjOmM9PntpZihjPjE1MCl2YXIgZD0hMTtlbHNlIHRyeXtiLmNhY2hlPW5ldyBpc2EoYyxiLlgpLGQ9ITB9Y2F0Y2goZSl7Yi5yZXBvcnRFcnJvcihuZXcgaDEoMjIsIkdCSjppbml0IixlKSksZD0hMX1yZXR1cm4gZH0sbTpjPT5iLm9lKGcxKGMpKSxtd3M6Yz0+Yi56aihnMShjKSl9fX07CmtzYT1mdW5jdGlvbihhLGIsYz0iYmV2YXNyc2ciKXtiPXtzOmY9PmEuc25hcHNob3Qoey4uLihmLmMmJntLYzpmLmN9KSwuLi4oZi5zJiZ7WWo6Zi5zfSksVUs6Zi5wPz8hMH0pLGU6Zj0+dm9pZCBhLkloPy4oZiksYzooZixoKT0+YS5CaShmLGgpLHA6YS5DZyxsOigpPT5hLlZoKCksd3BjOmI/anNhKGIpOnZvaWQgMH07dmFyIGQ9d2luZG93PT09d2luZG93LnRvcD93aW5kb3c6ZDEoKT93aW5kb3c6d2luZG93LnRvcCxlPWRbY107aWYoZSl7ZS5iZXZhc3JzPWI7aWYoZS5ucWZiZWwhPT12b2lkIDApZm9yKGxldCBmIG9mIGUubnFmYmVsKWYoYik7ZS5ucWZiZWw9dm9pZCAwfWVsc2UgZT17YmV2YXNyczpiLG5xZmJlbDp2b2lkIDB9LGRbY109ZX07ajE9ZnVuY3Rpb24oYSl7dmFyIGI9W107R18oYSxpMSw2KS5mb3JFYWNoKGM9PntfLnR4KGMsMik8PTUzJiZiLnB1c2goXy50eChjLDEpKX0pO3JldHVybiBifTsKbHNhPWZ1bmN0aW9uKGEpe3ZhciBiPVtdO0dfKGEsaTEsNikuZm9yRWFjaChjPT57Xy50eChjLDIpPjUzJiZiLnB1c2goXy50eChjLDEpKX0pO3JldHVybiBifTtrMT1mdW5jdGlvbihhKXthLnRoZW4oKCk9Pnt9LCgpPT57fSl9O2wxPWZ1bmN0aW9uKGEpe3JldHVybntmaWVsZFR5cGU6MixmaWVsZE5hbWU6YX19O20xPWZ1bmN0aW9uKGEpe3JldHVybntmaWVsZFR5cGU6MyxmaWVsZE5hbWU6YX19O21zYT1mdW5jdGlvbihhLGIpe3JldHVybiBDXyhhLGIsXy5Pdyl9OwpyMT1mdW5jdGlvbihhKXt2YXIgYj1uZXcgbjE7Yj1CWihiLDEsYS5vKTt2YXIgYz1uc2EoYSk7Yj1DXyhiLGMsc3JhKTtjPVtdO3ZhciBkPVtdO2Zvcih2YXIgZSBvZiBhLmoua2V5cygpKWQucHVzaChlLnNwbGl0KCIsIikpO2ZvcihlPTA7ZTxkLmxlbmd0aDtlKyspe2xldCBwPWRbZV07dmFyIGY9YS52LGg9bzEoYSwuLi5wKXx8W107bGV0IHI9W107Zm9yKHZhciBrPTA7azxoLmxlbmd0aDtrKyspe3ZhciBsPWhba10sbT1sJiZsLmo7bD1uZXcgb3NhO3N3aXRjaChmKXtjYXNlIDM6bT1OdW1iZXIobSk7TnVtYmVyLmlzRmluaXRlKG0pJiZGXyhsLDEscDEseV8obSkpO2JyZWFrO2Nhc2UgMjpGXyhsLDIscDEscF8oTnVtYmVyKG0pKSl9ci5wdXNoKGwpfWZvcihmPTA7ZjxyLmxlbmd0aDtmKyspe2s9cltmXTtoPW5ldyBwc2E7aD1fLkt3KGgsMixrKTtrPVtdO2w9cXNhKGEpO2ZvcihtPTA7bTxsLmxlbmd0aDttKyspe3ZhciBuPWxbbV07bGV0IHQ9cFttXSx2PW5ldyByc2E7c3dpdGNoKG4pe2Nhc2UgMzpGXyh2LAoxLHExLEFaKFN0cmluZyh0KSkpO2JyZWFrO2Nhc2UgMjpuPU51bWJlcih0KTtOdW1iZXIuaXNGaW5pdGUobikmJkZfKHYsMixxMSxfLlB3KG4pKTticmVhaztjYXNlIDE6Rl8odiwzLHExLF8ueHcodD09PSJ0cnVlIikpfWsucHVzaCh2KX1IXyhoLDEsayk7Yy5wdXNoKGgpfX1IXyhiLDQsYyk7cmV0dXJuIGJ9O3NzYT1mdW5jdGlvbihhKXtIXyhzMSwxLGEpfTsKdXNhPWZ1bmN0aW9uKGEsYj10MSl7aWYoIXUxKXthPWEubmF2aWdhdG9yPy51c2VyQWdlbnREYXRhO2lmKCFhfHx0eXBlb2YgYS5nZXRIaWdoRW50cm9weVZhbHVlcyE9PSJmdW5jdGlvbiJ8fGEuYnJhbmRzJiZ0eXBlb2YgYS5icmFuZHMubWFwIT09ImZ1bmN0aW9uIilyZXR1cm4gUHJvbWlzZS5yZWplY3QoRXJyb3IoImtlIikpO3NzYSgoYS5icmFuZHN8fFtdKS5tYXAoZD0+e3ZhciBlPW5ldyB0c2E7ZT1CWihlLDEsZC5icmFuZCk7cmV0dXJuIEJaKGUsMixkLnZlcnNpb24pfSkpO3R5cGVvZiBhLm1vYmlsZT09PSJib29sZWFuIiYmXy5xdyhzMSwyLF8ueHcoYS5tb2JpbGUpKTt1MT1hLmdldEhpZ2hFbnRyb3B5VmFsdWVzKGIpfXZhciBjPW5ldyBTZXQoYik7cmV0dXJuIHUxLnRoZW4oZD0+e3ZhciBlPXMxLmNsb25lKCk7Yy5oYXMoInBsYXRmb3JtIikmJkJaKGUsMyxkLnBsYXRmb3JtKTtjLmhhcygicGxhdGZvcm1WZXJzaW9uIikmJkJaKGUsNCxkLnBsYXRmb3JtVmVyc2lvbik7CmMuaGFzKCJhcmNoaXRlY3R1cmUiKSYmQlooZSw1LGQuYXJjaGl0ZWN0dXJlKTtjLmhhcygibW9kZWwiKSYmQlooZSw2LGQubW9kZWwpO2MuaGFzKCJ1YUZ1bGxWZXJzaW9uIikmJkJaKGUsNyxkLnVhRnVsbFZlcnNpb24pO3JldHVybiBlLnNlcmlhbGl6ZSgpfSkuY2F0Y2goKCk9PnMxLnNlcmlhbGl6ZSgpKX07djE9ZnVuY3Rpb24oYSl7cmV0dXJuIENaKGEsMSwxKX07eTE9ZnVuY3Rpb24oYSxiKXtfLkt3KGEuaiwxLGIpO0tfKGIpfHx2MShiKTthLnlkfHwoYj13MShhKSxKXyhiLDUpfHxCWihiLDUsYS5sb2NhbGUpKTthLnYmJihiPXcxKGEpLF8uTngoYix4MSw5KXx8Xy5LdyhiLDksYS52KSl9O3cxPWZ1bmN0aW9uKGEpe3ZhciBiPV8uTngoYS5qLHoxLDEpO2J8fChiPW5ldyB6MSx5MShhLGIpKTthPWI7Yj1fLk54KGEsQTEsMTEpO2J8fChiPW5ldyBBMSxfLkt3KGEsMTEsYikpO3JldHVybiBifTt2c2E9ZnVuY3Rpb24oYSxiKXthLm89Yn07CnhzYT1mdW5jdGlvbihhKXt2YXIgYj1hLnlkP3ZvaWQgMDpfLnpkKCk7Yj91c2EoYix0MSkudGhlbihjPT57YS52PXdzYShjPz8iW10iKTtjPXcxKGEpO18uS3coYyw5LGEudik7cmV0dXJuITB9KS5jYXRjaCgoKT0+ITEpOlByb21pc2UucmVzb2x2ZSghMSl9O0IxPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuQj1hO3RoaXMuRD1iO3RoaXMubz10aGlzLmo9YTt0aGlzLks9Y3x8MDt0aGlzLkk9ZHx8Mn07QzE9ZnVuY3Rpb24oYSl7YS5vPU1hdGgubWluKGEuRCxhLm8qYS5JKTthLmo9TWF0aC5taW4oYS5ELGEubysoYS5LP01hdGgucm91bmQoYS5LKihNYXRoLnJhbmRvbSgpLS41KSoyKmEubyk6MCkpO2EudisrfTtEMT1mdW5jdGlvbigpe3JldHVybiJodHRwczovL3BsYXkuZ29vZ2xlLmNvbS9sb2c/Zm9ybWF0PWpzb24maGFzZmFzdD10cnVlIn07CnlzYT1mdW5jdGlvbihhLGIpe2lmKCFhLk1hKXJldHVybigpPT57fTt2YXIgYz0oKT0+e2EuZmx1c2goKX07cmV0dXJuIGI/KCk9PntiKCkudGhlbihjKX06Y307RTE9ZnVuY3Rpb24oYSl7YS52LmlzRmluYWw9ITA7YS5mbHVzaCgpO2Eudi5pc0ZpbmFsPSExfTtGMT1mdW5jdGlvbihhKXthLlV8fChhLlU9RDEoKSk7dHJ5e3JldHVybihuZXcgVVJMKGEuVSkpLnRvU3RyaW5nKCl9Y2F0Y2goYil7cmV0dXJuKG5ldyBVUkwoYS5VLF8uemQoKS5sb2NhdGlvbi5vcmlnaW4pKS50b1N0cmluZygpfX07QXNhPWZ1bmN0aW9uKGEpe3pzYShhLChiLGMpPT57Yj1uZXcgVVJMKGIpO2Iuc2VhcmNoUGFyYW1zLnNldCgiZm9ybWF0IiwianNvbiIpO3ZhciBkPSExO3RyeXtkPV8uemQoKS5uYXZpZ2F0b3Iuc2VuZEJlYWNvbihiLnRvU3RyaW5nKCksYy5zZXJpYWxpemUoKSl9Y2F0Y2h7fWR8fChhLlo9ITEpO3JldHVybiBkfSl9OwpCc2E9ZnVuY3Rpb24oYSxiLGM9bnVsbCxkPWEud2l0aENyZWRlbnRpYWxzKXt2YXIgZT17fSxmPW5ldyBVUkwoRjEoYSkpO2MmJihlLkF1dGhvcml6YXRpb249Yyk7YS5zZXNzaW9uSW5kZXgmJihlWyJYLUdvb2ctQXV0aFVzZXIiXT1hLnNlc3Npb25JbmRleCxmLnNlYXJjaFBhcmFtcy5zZXQoImF1dGh1c2VyIixhLnNlc3Npb25JbmRleCkpO2EucGFnZUlkJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIlgtR29vZy1QYWdlSWQiLHt2YWx1ZTphLnBhZ2VJZH0pLGYuc2VhcmNoUGFyYW1zLnNldCgicGFnZUlkIixhLnBhZ2VJZCkpO3JldHVybnt1cmw6Zi50b1N0cmluZygpLGJvZHk6YixHdToxLE9qOmUscmVxdWVzdFR5cGU6IlBPU1QiLHdpdGhDcmVkZW50aWFsczpkLHRpbWVvdXRNaWxsaXM6YS50aW1lb3V0TWlsbGlzfX07CnpzYT1mdW5jdGlvbihhLGIpe2lmKGEuai5sZW5ndGghPT0wKXt2YXIgYz1uZXcgVVJMKEYxKGEpKTtjLnNlYXJjaFBhcmFtcy5kZWxldGUoImZvcm1hdCIpO3ZhciBkPWEuU2YoKTtkJiZjLnNlYXJjaFBhcmFtcy5zZXQoImF1dGgiLGQpO2Muc2VhcmNoUGFyYW1zLnNldCgiYXV0aHVzZXIiLGEuc2Vzc2lvbkluZGV4fHwiMCIpO2ZvcihkPTA7ZDwxMCYmYS5qLmxlbmd0aDsrK2Qpe2xldCBlPWEuai5zbGljZSgwLDMyKSxmPWEudi5idWlsZChlLGEuQixhLkksYS5sZixhLmhhLGEuZ2EpO2lmKCFiKGMudG9TdHJpbmcoKSxmKSl7KythLkk7YnJlYWt9YS5CPTA7YS5JPTA7YS5oYT0wO2EuZ2E9MDthLmo9YS5qLnNsaWNlKGUubGVuZ3RoKX1hLm8uZW5hYmxlZCYmYS5vLnN0b3AoKX19O0NzYT1mdW5jdGlvbihhLGIpe2EuYnVpbGRMYWJlbD1iO3JldHVybiBhfTtFc2E9ZnVuY3Rpb24oYSl7YS5uZXR3b3JrPW5ldyBEc2E7cmV0dXJuIGF9O0ZzYT1mdW5jdGlvbihhLGIpe2Euaj1ifTsKR3NhPWZ1bmN0aW9uKGEpe2Eubz0hMDtyZXR1cm4gYX07cXNhPWZ1bmN0aW9uKGEpe3JldHVybiBhLmZpZWxkcy5tYXAoYj0+Yi5maWVsZFR5cGUpfTtvMT1mdW5jdGlvbihhLC4uLmIpe2I9RzEoLi4uYik7cmV0dXJuIGEuai5oYXMoYik/YS5qLmdldChiKTp2b2lkIDB9O25zYT1mdW5jdGlvbihhKXtyZXR1cm4gYS5maWVsZHMubWFwKGI9PmIuZmllbGROYW1lKX07STE9ZnVuY3Rpb24oYSxiLC4uLmMpe2M9RzEoLi4uYyk7YS5qLnNldChjLFtuZXcgSDEoYildKX07SHNhPWZ1bmN0aW9uKGEsYiwuLi5jKXt2YXIgZD1vMShhLC4uLmMpO2Q/ZC5wdXNoKG5ldyBIMShiKSk6STEoYSxiLC4uLmMpfTtHMT1mdW5jdGlvbiguLi5hKXtyZXR1cm4gYT9hLmpvaW4oIiwiKToia2V5In07SXNhPWZ1bmN0aW9uKGEsLi4uYil7cmV0dXJuKGE9bzEoYSwuLi5iKSkmJmEubGVuZ3RoP2FbMF06dm9pZCAwfTsKSnNhPWZ1bmN0aW9uKGEsLi4uYil7dmFyIGM9MCxkPUlzYShhLC4uLmIpO2QmJihjPWQuaik7STEoYSxjKzEsLi4uYil9O0sxPWZ1bmN0aW9uKGEsYiwuLi5jKXthLnYuaGFzKGIpfHxhLnYuc2V0KGIsbmV3IEoxKGIsYykpfTtNMT1mdW5jdGlvbihhLGIsLi4uYyl7YS52LmhhcyhiKXx8YS52LnNldChiLG5ldyBMMShiLGMpKX07TjE9ZnVuY3Rpb24oYSl7YS5vLmVuYWJsZWR8fGEuby5zdGFydCgpO2EuSSsrO2EuST49YS5CJiZhLkQoKX07S3NhPWZ1bmN0aW9uKGEpe2ZvcihsZXQgYj0wO2I8YS5sZW5ndGg7YisrKWFbYl0uY2xlYXIoKX07TzE9ZnVuY3Rpb24oYSxiLC4uLmMpeyhiPWEuaihiKSkmJmIgaW5zdGFuY2VvZiBMMSYmKEpzYShiLC4uLmMpLE4xKGEpKX07ClAxPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlIDIwMDpyZXR1cm4gMDtjYXNlIDQwMDpyZXR1cm4gMztjYXNlIDQwMTpyZXR1cm4gMTY7Y2FzZSA0MDM6cmV0dXJuIDc7Y2FzZSA0MDQ6cmV0dXJuIDU7Y2FzZSA0MDk6cmV0dXJuIDEwO2Nhc2UgNDEyOnJldHVybiA5O2Nhc2UgNDI5OnJldHVybiA4O2Nhc2UgNDk5OnJldHVybiAxO2Nhc2UgNTAwOnJldHVybiAyO2Nhc2UgNTAxOnJldHVybiAxMjtjYXNlIDUwMzpyZXR1cm4gMTQ7Y2FzZSA1MDQ6cmV0dXJuIDQ7ZGVmYXVsdDpyZXR1cm4gMn19OwpMc2E9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgMDpyZXR1cm4iT0siO2Nhc2UgMTpyZXR1cm4iQ0FOQ0VMTEVEIjtjYXNlIDI6cmV0dXJuIlVOS05PV04iO2Nhc2UgMzpyZXR1cm4iSU5WQUxJRF9BUkdVTUVOVCI7Y2FzZSA0OnJldHVybiJERUFETElORV9FWENFRURFRCI7Y2FzZSA1OnJldHVybiJOT1RfRk9VTkQiO2Nhc2UgNjpyZXR1cm4iQUxSRUFEWV9FWElTVFMiO2Nhc2UgNzpyZXR1cm4iUEVSTUlTU0lPTl9ERU5JRUQiO2Nhc2UgMTY6cmV0dXJuIlVOQVVUSEVOVElDQVRFRCI7Y2FzZSA4OnJldHVybiJSRVNPVVJDRV9FWEhBVVNURUQiO2Nhc2UgOTpyZXR1cm4iRkFJTEVEX1BSRUNPTkRJVElPTiI7Y2FzZSAxMDpyZXR1cm4iQUJPUlRFRCI7Y2FzZSAxMTpyZXR1cm4iT1VUX09GX1JBTkdFIjtjYXNlIDEyOnJldHVybiJVTklNUExFTUVOVEVEIjtjYXNlIDEzOnJldHVybiJJTlRFUk5BTCI7Y2FzZSAxNDpyZXR1cm4iVU5BVkFJTEFCTEUiO2Nhc2UgMTU6cmV0dXJuIkRBVEFfTE9TUyI7CmRlZmF1bHQ6cmV0dXJuIiJ9fTtSMT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9UTEoKTtiPWIoKTthLnYoYyxRMSgpLWQpO3JldHVybiBifTtPc2E9ZnVuY3Rpb24oYSxiLGMsZCl7YT1Hc2EoRXNhKENzYShuZXcgUzEsYSkpKS5ubCgpO2IubGVuZ3RoJiZGc2EoYSxtc2EobmV3IE1zYSxiKSk7ZCE9PXZvaWQgMCYmKGEuTmU9ZCk7dmFyIGU9bmV3IE5zYShhLmJ1aWxkKCkpO0VaKGUsYSk7dmFyIGY9bmV3IFQxKHtmbHVzaChoKXt0cnl7ZS5mbHVzaChoKX1jYXRjaChrKXtjKGspfX19KTtmLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57c2V0VGltZW91dCgoKT0+e3RyeXtmLkQoKX1maW5hbGx5e2UuZGlzcG9zZSgpfX0pfSk7Zi5CPTFFNTtmLmZsdXNoSW50ZXJ2YWw9M0U0O2Yuby5zZXRJbnRlcnZhbCgzRTQpO3JldHVybiBmfTsKUHNhPWZ1bmN0aW9uKGEpe2lmKGEudGltZXI9PT12b2lkIDApe2xldCBiPU1hdGgubWF4KDAsYS5qK2Euby1RMSgpKTthLnRpbWVyPXNldFRpbWVvdXQoKCk9Pnt0cnl7YS5jYWxsYmFjaygpfWZpbmFsbHl7YS5qPVExKCksYS50aW1lcj12b2lkIDB9fSxiKX19O1JzYT1mdW5jdGlvbihhLGI9W10pe3JldHVybiBuZXcgUXNhKGEsYil9O1ExPWZ1bmN0aW9uKCl7cmV0dXJuIGdsb2JhbFRoaXMucGVyZm9ybWFuY2U/Lm5vdz8uKCk/P0RhdGUubm93KCl9O1UxPWZ1bmN0aW9uKGEsYil7aWYoYS5kaXNhYmxlKXJldHVybiBuZXcgU3NhO2I9Yj9qMShiKTpbXTtyZXR1cm4gUnNhKHttYjphLm1iLHpsOmEuU3Ysbm06YS5LeSxOZTphLk5lLEZqOmEuRmosSWc6YS5JZ30sYil9O1cxPWZ1bmN0aW9uKCl7VjEuaW5zdGFuY2V8fChWMS5pbnN0YW5jZT1uZXcgVjEpO3JldHVybiBWMS5pbnN0YW5jZX07ClRzYT1mdW5jdGlvbihhLGIsYyxkKXtpZighYiYmIWMpcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO2lmKCFkKXJldHVybiBYMShiLGMpO3ZhciBlOyhlPWEucHJvbWlzZXMpW2RdfHwoZVtkXT1uZXcgUHJvbWlzZSgoZixoKT0+e1gxKGIsYykudGhlbigoKT0+e2Euaj1kO2YoKX0saz0+e2RlbGV0ZSBhLnByb21pc2VzW2RdO2goayl9KX0pKTtyZXR1cm4gYS5wcm9taXNlc1tkXX07JDE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gVHNhKGEsXy5OeChiLFkxLDEsXy53eiksXy5OeChiLFoxLDIsXy53eiksSl8oYiwzLHZvaWQgMCxfLnd6KSl9O1gxPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGI/VXNhKGIpOmE/VnNhKGEpOlByb21pc2UucmVzb2x2ZSgpfTsKVXNhPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgUHJvbWlzZSgoYixjKT0+e3ZhciBkPV8uQ2QoIlNDUklQVCIpLGU9VHJhKGEpO18ub2IoZCxlKTtkLm9ubG9hZD0oKT0+e18uRGQoZCk7YigpfTtkLm9uZXJyb3I9KCk9PntfLkRkKGQpO2MoRXJyb3IoInFlIikpfTsoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIkhFQUQiKVswXXx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5hcHBlbmRDaGlsZChkKX0pfTtWc2E9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBQcm9taXNlKGI9Pnt2YXIgYz1fLkNkKCJTQ1JJUFQiKTtpZihhKXt2YXIgZD1fLlh0KF8uZWQoYSw2LHZvaWQgMCxfLkR2KSk7ZD1kPT09bnVsbHx8ZD09PXZvaWQgMD9udWxsOl8ua2IoZCl9ZWxzZSBkPW51bGw7Xy5uYihjLGQpOyhkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiSEVBRCIpWzBdfHxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmFwcGVuZENoaWxkKGMpO18uRGQoYyk7YigpfSl9OwpXc2E9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5XeChhLDEsQVooYiksIiIpfTtYc2E9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5XeChhLDIsQVooYiksIiIpfTsKYXRhPWFzeW5jIGZ1bmN0aW9uKGEsYixjLGQ9VzEoKSxlPVByb21pc2UucmVzb2x2ZSh2b2lkIDApLGYpe2F3YWl0IDA7Zm9yKHZhciBoOzspe2xldCBrPW51bGw7aWYoaCl7YTIoYSw3KTt0cnl7az1hd2FpdCBiMihoLnNuYXBzaG90KHt9KSxmLmF2LCgpPT5Qcm9taXNlLnJlc29sdmUoIkU6Q1RPIikpfWNhdGNoKG4pe2s9IkU6VUNFIn19bGV0IGwsbT1uZXcgQjEoaD9mLkp2OmYuS3YsZi5MdixmLk12LGYuSXYpO2ZvcihsZXQgbj0xO248PWYubWF4QXR0ZW1wdHM7bisrKXtpZihuIT09MSl7YTIoYSwwKTthLmo9bmV3IGMyKG0uaixmLmVrLGYubHMpO2xldCBwPWF3YWl0IGEuai5wcm9taXNlO2Euaj12b2lkIDA7cD09PTE/KG49MSxtLnJlc2V0KCkpOkMxKG0pfXRyeXtsZXQgcDtjP3A9YzooYTIoYSw1KSxwPWF3YWl0IGIyKFlzYShiLGQuaixrKSxmLlZ2LCgpPT5Qcm9taXNlLnJlamVjdChFcnJvcigic2UiKSkpKTthMihhLDMpO2F3YWl0IGIyKCQxKGQscCksZi5xeSwoKT0+UHJvbWlzZS5yZWplY3QoRXJyb3IoInRlIikpKTsKYTIoYSw4KTthd2FpdCBlO2xldCByPW5ldyBkMih7Y2hhbGxlbmdlOnAsbmc6YS5vcHRpb25zLm5nLEZzOmEub3B0aW9ucy5Gc30pO2F3YWl0IGIyKHIuQ2csZi5tQSwoKT0+UHJvbWlzZS5yZWplY3QoRXJyb3IoInVlIikpKTtsPXI7YnJlYWt9Y2F0Y2gocCl7YS5oYW5kbGVFcnJvcihwKSxlMihhKX19aWYoYS5pYSgpKWJyZWFrO2wmJihjPXZvaWQgMCxac2EoYSxoKSxoPWwsJHNhKGEsbCksZTIoYSkpO2EyKGEsMik7YS5qPW5ldyBjMihmLkZyLGYuZWssZi5scyk7YS5pc1BhdXNlZCYmYS5qLnBhdXNlKCk7YXdhaXQgYS5qLnByb21pc2U7YS5qPXZvaWQgMDtpZihhLmlhKCkpYnJlYWt9aD8uZGlzcG9zZSgpfTsKYnRhPWZ1bmN0aW9uKGEpe2EuTT1FcnJvcigicmUiKTthLkQucmVzb2x2ZSgpO2sxKGEuSS5wcm9taXNlKTthLkkucmVqZWN0KEVycm9yKCJyZSIpKTthLlguZGlzcG9zZSgpO1Byb21pc2UuYWxsKGEuQikudGhlbihhc3luYygpPT57YS5vPy5kaXNwb3NlKCk7YS5vPXZvaWQgMH0pO2EuQj1bXTthLmo/Lm8oKTtrMShhLnYucHJvbWlzZSk7YS52LnJlamVjdChFcnJvcigicmUiKSl9O2YyPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5HajthLkdqPSgpPT57YygpO2IoKX19OyRzYT1mdW5jdGlvbihhLGIpe2EuaWEoKXx8KGEubz1iLGEuWC51cGRhdGUoYi5WaCgpKSxhLkQucmVzb2x2ZSgpLGEuSS5yZXNvbHZlKHZvaWQgMCksYS5HaigpKX07WnNhPWZ1bmN0aW9uKGEsYil7YiYmKFByb21pc2UuYWxsKGEuQikudGhlbigoKT0+dm9pZCBiLmRpc3Bvc2UoKSksYS5CPVtdKX07YTI9ZnVuY3Rpb24oYSxiKXthLlo9YjthLm9wdGlvbnMuaks/LihiKX07CmUyPWZ1bmN0aW9uKGEpe2EuaWEoKXx8KGEudi5yZXNvbHZlKCksYS52PW5ldyBfLmNzKX07YjI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkO2M9KG5ldyBQcm9taXNlKGU9PntkPXNldFRpbWVvdXQoZSxiKX0pKS50aGVuKGMpO2sxKGMpO3JldHVybiBQcm9taXNlLnJhY2UoW2EuZmluYWxseSgoKT0+dm9pZCBjbGVhclRpbWVvdXQoZCkpLGNdKX07Y3RhPWZ1bmN0aW9uKGEsYil7YS5lbmRUaW1lTXM9RGF0ZS5ub3coKStiO2EudGljaygpfTtnMj1mdW5jdGlvbihhKXthLmomJihjbGVhclRpbWVvdXQoYS5qKSxhLmo9bnVsbCl9O2gyPWZ1bmN0aW9uKGEsYil7dHJ5e3JldHVybiBnbG9iYWxUaGlzLnNlc3Npb25TdG9yYWdlLnNldEl0ZW0oYSxiKSwhMH1jYXRjaChjKXtyZXR1cm4hMX19OwppMj1mdW5jdGlvbihhLGI9MCxjPWEubGVuZ3RoLGQpe3ZhciBlPTA7Zm9yKGQmJihlPWkyKGQpKTtiPGM7YisrKWU9ZHRhKDMxLGUpKyh0eXBlb2YgYT09PSJzdHJpbmciP2EuY2hhckNvZGVBdChiKTphW2JdKXwwO3JldHVybiBlfTtrMj1mdW5jdGlvbihhKXt2YXIgW2IsY109W2kyKGEsMCxhLmxlbmd0aD4+MSxqMiksaTIoYSxhLmxlbmd0aD4+MSldO3JldHVybiBiLnRvU3RyaW5nKDE2KStjLnRvU3RyaW5nKDE2KX07CmwyPWZ1bmN0aW9uKGEsYil7dmFyIGM9W2kyKGIsMCxiLmxlbmd0aD4+MSx2b2lkIDApLGkyKGIsYi5sZW5ndGg+PjEpXTthPW5ldyBVaW50MzJBcnJheShhLmJ1ZmZlcik7Yj1hWzBdO3ZhciBbZCxlXT1jO2ZvcihjPTE7YzxhLmxlbmd0aDtjKz0yKXt2YXIgZj1iLGg9YyxrPWQsbD1lO2ZvcihsZXQgbT0wO208MjI7bSsrKWg9aD4+Pjh8aDw8MjQsaCs9ZnwwLGhePWsrMzgyOTMsZj1mPDwzfGY+Pj4yOSxmXj1oLGw9bD4+Pjh8bDw8MjQsbCs9a3wwLGxePW0rMzgyOTMsaz1rPDwzfGs+Pj4yOSxrXj1sO2Y9W2YsaF07YVtjXV49ZlswXTtjKzE8YS5sZW5ndGgmJihhW2MrMV1ePWZbMV0pfX07CmV0YT1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPSg0LShqMi5sZW5ndGgrYy5sZW5ndGgpJTQpJTQsaD1uZXcgVWludDhBcnJheSg0K2YrajIubGVuZ3RoKzQrYy5sZW5ndGgpLGs9bmV3IERhdGFWaWV3KGguYnVmZmVyKSxsPTA7ay5zZXRVaW50MzIobCxNYXRoLnJhbmRvbSgpKjQyOTQ5NjcyOTUpO2w9bCs0K2Y7aC5zZXQoajIsbCk7bCs9ajIubGVuZ3RoO2suc2V0VWludDMyKGwsZSk7aC5zZXQoYyxsKzQpO2wyKGgsZCk7cmV0dXJuIGEucmIoYixtPT52b2lkIGdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShtKSk/aDIoYixfLnNjKGgpKT8icyI6InQiOiJpIn07CmZ0YT1mdW5jdGlvbihhLGIpe3ZhciBjPWdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShhKTtpZighYylyZXR1cm5bIm0iXTt0cnl7dmFyIGQ9Xy51YyhjKTtsMihkLGIpfWNhdGNoKGUpe3JldHVybiBnbG9iYWxUaGlzLnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oYSksWyJjIl19Zm9yKGI9NDtiPDcmJmRbYl09PT0wOyliKys7Zm9yKGM9MDtjPGoyLmxlbmd0aDtjKyspaWYoZFtiKytdIT09ajJbY10pcmV0dXJuIGdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShhKSxbImQiXTtjPShuZXcgRGF0YVZpZXcoZC5idWZmZXIpKS5nZXRVaW50MzIoYik7cmV0dXJuIE1hdGguZmxvb3IoRGF0ZS5ub3coKS8xRTMpPj1jPyhnbG9iYWxUaGlzLnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oYSksWyJlIl0pOlsiYSIsbmV3IFVpbnQ4QXJyYXkoZC5idWZmZXIsYis0KV19OwpndGE9ZnVuY3Rpb24oYSl7dmFyIGI9Z2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCJpVTVxLSFPOUAkIik7aWYoIWIpcmV0dXJuIG5ldyBtMihhKTt2YXIgYz1iLnNwbGl0KCIsIik7aWYoYy5sZW5ndGg8MilyZXR1cm4gZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKCJpVTVxLSFPOUAkIiksbmV3IG0yKGEpO2I9Yy5zbGljZSgxKTtiLmxlbmd0aD09PTEmJmJbMF09PT0iIiYmKGI9W10pO2M9TnVtYmVyKGNbMF0pO3JldHVybiBpc05hTihjKXx8YzwwfHxjPmIubGVuZ3RoPyhnbG9iYWxUaGlzLnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oImlVNXEtIU85QCQiKSxuZXcgbTIoYSkpOm5ldyBtMihhLGMsYil9O24yPWZ1bmN0aW9uKGEsYil7dmFyIGM9c2V0VGltZW91dCgoKT0+e2Eudi5yZXNvbHZlKCl9LGIpO2EuYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9PnZvaWQgY2xlYXJUaW1lb3V0KGMpKX07CnAyPWZ1bmN0aW9uKGEsYil7dmFyIGM9YCR7YihhLmVycm9yLm1lc3NhZ2UpfToke2IoYS5lcnJvci5zdGFjayl9YC5zdWJzdHJpbmcoMCwyMDQ4KTtiPWMubGVuZ3RoKzE7Yz1vMihjKTt2YXIgZD1uZXcgVWludDhBcnJheSg0K2MubGVuZ3RoKTtkLnNldChbNDIsYiYxMjd8MTI4LGI+PjcsYS5lcnJvci5jb2RlXSk7ZC5zZXQoYyw0KTtyZXR1cm4gZH07bzI9ZnVuY3Rpb24oYSl7cmV0dXJuIGdsb2JhbFRoaXMuVGV4dEVuY29kZXI/KG5ldyBUZXh0RW5jb2RlcikuZW5jb2RlKGEpOl8uYWMoYSl9Owp0Mj1hc3luYyBmdW5jdGlvbihhKXt2YXIgYj12b2lkIDA7YS52Kys7dmFyIGM9bmV3IF8uY3M7YS52bSBpbnN0YW5jZW9mIHEyJiZhLnZtLkIucHVzaChjLnByb21pc2UpO2lmKGEuUW4pe2xldCBmPW5ldyBfLmNzO3NldFRpbWVvdXQoKCk9PnZvaWQgZi5yZXNvbHZlKCkpO2F3YWl0IGYucHJvbWlzZX12YXIgZD1hLlguc2hhcmUoKTt0cnl7YS5zdGF0ZT01O2xldCBmPVtdLGg9YXdhaXQgYjIoYS52bS5zbmFwc2hvdCh7S2M6e30sSXM6Zn0pLGEuTGcuQkEsKCk9PlByb21pc2UucmVqZWN0KG5ldyBoMSgxNSwiTURBOlRpbWVvdXQiKSkpO3IyKGEsIk1EQTpEaXNwb3NlZCIpO2xldCBrPWZbMF07YS5zdGF0ZT02O2xldCBsPWF3YWl0IGIyKGh0YShhLm9kLGgpLGEuTGcuV3YsKCk9PlByb21pc2UucmVqZWN0KG5ldyBoMSgxMCwiQldCOlRpbWVvdXQiKSkpO3IyKGEsIkJXQjpEaXNwb3NlZCIpO2Euc3RhdGU9NztiPVIxKGQsKCk9Pnt2YXIgbT1pdGEoYSxsLGMsayk7bS52LnByb21pc2UudGhlbigoKT0+CnZvaWQgYS5CKCkpO3JldHVybiBtfSwiaSIpfWNhdGNoKGYpe2I/LmRpc3Bvc2UoKTtpZighYS5vKXtsZXQgaD1qdGEoYSxmKTtjLnJlc29sdmUoKTt2YXIgZTtpZihlPWEudm0gaW5zdGFuY2VvZiBxMiYmYS52PDIpYTppZihmIGluc3RhbmNlb2YgaDEpZT1mLmNvZGUhPT0zMiYmZi5jb2RlIT09MjAmJmYuY29kZSE9PTEwO2Vsc2V7aWYoZiBpbnN0YW5jZW9mIHMyKXN3aXRjaChmLmNvZGUpe2Nhc2UgMjpjYXNlIDEzOmNhc2UgMTQ6Y2FzZSA0OmJyZWFrO2RlZmF1bHQ6ZT0hMTticmVhayBhfWU9ITB9aWYoZSl7bGV0IGs9c2V0VGltZW91dCgoKT0+dm9pZCBhLkIoKSwoMStNYXRoLnJhbmRvbSgpKi4yNSkqKGEuaj82RTQ6MUUzKSk7YS5hZGRPbkRpc3Bvc2VDYWxsYmFjaygoKT0+dm9pZCBjbGVhclRpbWVvdXQoaykpO3JldHVybn1hLm89aH1kLkpiKGEuaj8xMzoxNCk7YS55Zy5yZWplY3QoYS5vKTtyZXR1cm59ZmluYWxseXtkLmRpc3Bvc2UoKX1hLnN0YXRlPTg7YS52PTA7YS5qPy5kaXNwb3NlKCk7CmEuaj1iO2EueWcucmVzb2x2ZSgpfTtqdGE9ZnVuY3Rpb24oYSxiKXtpZighKGIgaW5zdGFuY2VvZiBoMSkpaWYoYiBpbnN0YW5jZW9mIHMyKXtsZXQgYz1FcnJvcihiLnRvU3RyaW5nKCkpO2Muc3RhY2s9Yi5zdGFjaztiPW5ldyBoMSgxMSwiRUJIOkVycm9yIixjKX1lbHNlIGI9bmV3IGgxKDEyLCJCU086VW5rbm93biIsYik7cmV0dXJuIGEucmVwb3J0RXJyb3IoYil9O3IyPWZ1bmN0aW9uKGEsYil7aWYoYS5pYSgpKXRocm93IG5ldyBoMShhLmo/MjA6MzIsYik7fTsKaXRhPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPShzXyhfLmVkKGIsMikpPz8wKSoxRTM7aWYoZTw9MCl0aHJvdyBuZXcgaDEoMzEsIlRUTTpJbnZhbGlkIik7aWYoSl8oYiw0KSlyZXR1cm4gbmV3IGt0YShhLlgsSl8oYiw0KSxlKTtpZighKHNfKF8uZWQoYiwzKSk/PzApKXJldHVybiBuZXcgbHRhKGEuWCxGWihCXyhiKSksZSk7aWYoIWQpdGhyb3cgbmV3IGgxKDQsIlBNRDpVbmRlZmluZWQiKTtkPWQoRlooQl8oYikpKTtpZih0eXBlb2YgZCE9PSJmdW5jdGlvbiIpdGhyb3cgbmV3IGgxKDE2LCJBUEY6RmFpbGVkIik7YS5EPU1hdGguZmxvb3IoKERhdGUubm93KCkrZSkvMUUzKTthPW5ldyB1MihhLlgsZCxzXyhfLmVkKGIsMykpPz8wLGUpO2EuYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9PnZvaWQgYy5yZXNvbHZlKCkpO3JldHVybiBhfTsKdzI9ZnVuY3Rpb24oYSxiLGMpe3RyeXtpZihhLmlhKCkpdGhyb3cgbmV3IGgxKDIxLCJCTlQ6ZGlzcG9zZWQiKTtpZighYS5qJiZhLm8pdGhyb3cgYS5vO3JldHVybiBtdGEoYSxiLGMpPz9udGEoYSxiLGMpPz9vdGEoYSxiLGMpfWNhdGNoKGQpe2lmKCFiLk15KXRocm93IHYyKGEsZCk7cmV0dXJuIHB0YShhLGMsZCl9fTt2Mj1mdW5jdGlvbihhLGIpe2I9YiBpbnN0YW5jZW9mIGgxP2I6bmV3IGgxKDUsIlRWRDplcnJvciIsYik7cmV0dXJuIGEucmVwb3J0RXJyb3IoYil9O210YT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGEuaj8uc20oKCk9PngyKGEsYiksYyxkPT57aWYoYS5qIGluc3RhbmNlb2YgdTImJmIueWk/LkpBKXRyeXthLmNhY2hlPy5qKHgyKGEsYiksZCxiLnlpLlhvLGEuRC0xMjApfWNhdGNoKGUpe2EucmVwb3J0RXJyb3IobmV3IGgxKDI0LCJFTFg6d3JpdGUiLGUpKX19KX07Cm50YT1mdW5jdGlvbihhLGIsYyl7aWYoYi55aT8uQXUpdHJ5e2xldCBkPWEuY2FjaGU/Lm8oeDIoYSxiKSxiLnlpLlhvKTtyZXR1cm4gZD9jP1IxKGEuWCwoKT0+Xy5zYyhkLDIpLCJhIik6ZDp2b2lkIDB9Y2F0Y2goZCl7YS5yZXBvcnRFcnJvcihuZXcgaDEoMjMsIlJYTzpyZWFkIixkKSl9fTtvdGE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXtzdGFjazpbXSxlcnJvcjp2b2lkIDAsaGFzRXJyb3I6ITF9O3RyeXtpZighYi5MeSl0aHJvdyBuZXcgaDEoMjksIlNERjpub3RyZWFkeSIpO3JldHVybiBfLlZ6KGQsbmV3IHF0YShhLlgsYS5zdGF0ZSkpLnNtKCgpPT54MihhLGIpLGMpfWNhdGNoKGUpe2QuZXJyb3I9ZSxkLmhhc0Vycm9yPSEwfWZpbmFsbHl7Xy5XeihkKX19OwpwdGE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXtzdGFjazpbXSxlcnJvcjp2b2lkIDAsaGFzRXJyb3I6ITF9O3RyeXtsZXQgZT12MihhLGMpO3JldHVybiBfLlZ6KGQsbmV3IHJ0YShhLlgsZSkpLnNtKCgpPT5bXSxiKX1jYXRjaChlKXtkLmVycm9yPWUsZC5oYXNFcnJvcj0hMH1maW5hbGx5e18uV3ooZCl9fTt4Mj1mdW5jdGlvbihhLGIpe3JldHVybiBiLnNsP2Iuc2w6Yi5LYz9SMShhLlgsKCk9PmIuc2w9bzIoYi5LYyksImMiKTpbXX07eTI9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PSJcciJ8fGE9PSJcbiJ8fGE9PSIgInx8YT09Ilx0In07ejI9ZnVuY3Rpb24oKXt0aGlzLk09bnVsbDt0aGlzLlk9W107dGhpcy5JPSIiO3RoaXMuVT1bXTt0aGlzLnY9dGhpcy5vPTA7dGhpcy5EPSExO3RoaXMuSz0wO3RoaXMuWj0vW1xcIl0vZzt0aGlzLmo9dGhpcy5CPTB9OwpBMj1mdW5jdGlvbihhLGIsYyl7YS5CPTM7YS5NPSJUaGUgc3RyZWFtIGlzIGJyb2tlbiBAIithLnYrIi8iK2MrIi4gV2l0aCBpbnB1dDpcbiIrYjt0aHJvdyBFcnJvcihhLk0pO307QzI9ZnVuY3Rpb24oKXt2YXIgYT1VXyhzdGEpLGI7cmV0dXJuKG5ldyBfLkJmKChjLGQpPT57YS5vblN1Y2Nlc3M9ZT0+e18ucWooZSk/YyhuZXcgdHRhKGUpKTpkKG5ldyBCMihgUmVxdWVzdCBmYWlsZWQsIHN0YXR1cz0ke18ucGooZSl9YCwibmV0LmJhZHN0YXR1cyIpKX07YS5vbkVycm9yPSgpPT57ZChuZXcgQjIoIlVua25vd24gcmVxdWVzdCBlcnJvciIsIm5ldC51bmtub3duIikpfTthLm9uVGltZW91dD0oKT0+e2QobmV3IEIyKCJSZXF1ZXN0IHRpbWVkIG91dCIsIm5ldC50aW1lb3V0IikpfTtiPV8uemooIi8vZ29vZ2xlYWRzLmcuZG91YmxlY2xpY2submV0L3BhZ2VhZC9pZCIsYSl9KSkuS2coYz0+e2MgaW5zdGFuY2VvZiBfLlBmJiZiPy5hYm9ydCgpO3JldHVybiBfLk90KGMpfSl9Owp1dGE9ZnVuY3Rpb24oYSxiPW51bGwpe2Euaj0yO2Eubz1ifTt2dGE9ZnVuY3Rpb24oYSxiPW51bGwpe2Euaj0xO2Eubz1ifTtFMj1mdW5jdGlvbihhPW51bGwpe3ZhciBiPW5ldyBEMjt1dGEoYixhKTtyZXR1cm4gYn07RjI9ZnVuY3Rpb24oYT1udWxsKXt2YXIgYj1uZXcgRDI7dnRhKGIsYSk7cmV0dXJuIGJ9O3d0YT1mdW5jdGlvbihhKXt2YXIgYj1hLmRvY2lkfHxhLnZpZGVvX2lkfHxhLnZpZGVvSWR8fGEuaWQ7aWYoYilyZXR1cm4gYjtiPWEucmF3X3BsYXllcl9yZXNwb25zZTtifHwoYT1hLnBsYXllcl9yZXNwb25zZSkmJihiPUpTT04ucGFyc2UoYSkpO3JldHVybiBiJiZiLnZpZGVvRGV0YWlscyYmYi52aWRlb0RldGFpbHMudmlkZW9JZHx8bnVsbH07CkcyPWZ1bmN0aW9uKGEpe3ZhciBiPSJFTUJFRERFRF9QTEFZRVJfTU9ERV9VTktOT1dOIjt3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUuaW5jbHVkZXMoInlvdXR1YmVlZHVjYXRpb24uY29tIikmJihiPSJFTUJFRERFRF9QTEFZRVJfTU9ERV9QRkwiKTt2YXIgYz1hLnJhd19lbWJlZGRlZF9wbGF5ZXJfcmVzcG9uc2U7aWYoIWMmJihhPWEuZW1iZWRkZWRfcGxheWVyX3Jlc3BvbnNlKSl0cnl7Yz1KU09OLnBhcnNlKGEpfWNhdGNoKGQpe3JldHVybiBifWlmKGMpYTp7YT14dGE7Zm9yKGxldCBkIGluIGEpaWYoYVtkXT09Yy5lbWJlZGRlZFBsYXllck1vZGUpe2I9YVtkXTticmVhayBhfX1yZXR1cm4gYn07Cnl0YT1mdW5jdGlvbigpe2lmKF8ueCgiZGlzYWJsZV9iaXNjb3R0aV9mZXRjaF9lbnRpcmVseV9mb3JfYWxsX3dlYl9jbGllbnRzIikpcmV0dXJuIEVycm9yKCJ2ZSIpO2lmKCFfLnN6KCkpcmV0dXJuIEVycm9yKCJ3ZSIpO3ZhciBhPV8udygiUExBWUVSX1ZBUlMiLHt9KTtpZihUXyhhKT09IjEiKXJldHVybiBFcnJvcigieGUiKTtpZihHMihhKT09PSJFTUJFRERFRF9QTEFZRVJfTU9ERV9QRkwiKXJldHVybiBFcnJvcigieWUiKX07Wl89ZnVuY3Rpb24oKXt2YXIgYT15dGEoKTtpZihhIT09dm9pZCAwKXJldHVybiBfLk90KGEpO0gyfHwoSDI9QzIoKS50aGVuKEkyKS5LZyhiPT5KMigyLGIpKSk7cmV0dXJuIEgyfTsKSTI9ZnVuY3Rpb24oYSl7YT1hLmoucmVzcG9uc2VUZXh0O2lmKGEubGFzdEluZGV4T2YoIildfSciLDApIT0wKXRocm93IG5ldyBLMjthPUpTT04ucGFyc2UoYS5zdWJzdHIoNCkpO2lmKChhLnR5cGV8fDEpPjEpdGhyb3cgbmV3IEsyO2E9YS5pZDskXyhhKTtIMj1GMihhKTtMMigxOEU1LDIpO3JldHVybiBhfTtKMj1mdW5jdGlvbihhLGIpe2I9bmV3IE0yKGIpOyRfKCIiKTtIMj1FMihiKTthPjAmJkwyKDEyRTQsYS0xKTt0aHJvdyBiO307TDI9ZnVuY3Rpb24oYSxiKXtfLm1qKGZ1bmN0aW9uKCl7QzIoKS50aGVuKEkyLGM9PkoyKGIsYykpLktnKF8uZ2QpfSxhKX07enRhPWZ1bmN0aW9uKCl7dHJ5e2xldCBhPV8uc2EoInl0LmFkcy5iaXNjb3R0aS5nZXRJZF8iKTtyZXR1cm4gYT9hKCk6Wl8oKX1jYXRjaChhKXtyZXR1cm4gXy5PdChhKX19OwpOMj1mdW5jdGlvbigpe3ZhciBhPSExO3RyeXthPSEhd2luZG93LnNlc3Npb25TdG9yYWdlLmdldEl0ZW0oInNlc3Npb25fbG9naW5pbmZvIil9Y2F0Y2h7YT0hMH1yZXR1cm4oXy53KCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJXRUIifHxfLncoIklOTkVSVFVCRV9DTElFTlRfTkFNRSIpPT09IldFQl9DUkVBVE9SIikmJmF9OwpPMj1mdW5jdGlvbigpe3RyeXt3aW5kb3cuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbSgic3RpY2tpbmVzc19yZWxvYWQiKTt3aW5kb3cuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbSgic2Vzc2lvbl9sb2dpbmluZm8iKTtfLlFpKCJMT0dJTl9JTkZPIiwiIik7d2luZG93LnNlc3Npb25TdG9yYWdlLnNldEl0ZW0oImZyb21fc3dpdGNoX2FjY291bnQiLCIxIik7dmFyIGE7bGV0IGM9QXRhO2N8fChjPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNwZXJzaXN0X2lkZW50aXR5IikpO2lmKGE9Yyl7dmFyIGI9YS5zcmM/KG5ldyBVUkwoYS5zcmMpKS5vcmlnaW46IioiO2EuY29udGVudFdpbmRvdz8ucG9zdE1lc3NhZ2Uoe2FjdGlvbjoiY2xlYXIifSxiKX19Y2F0Y2h7fX07ClAyPWZ1bmN0aW9uKGEpe2lmKGEpaWYoYS5zdGFydHNXaXRoKCJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20vQWRkU2Vzc2lvbiIpKU8yKCk7ZWxzZSBpZihhLnN0YXJ0c1dpdGgoImh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9TZXJ2aWNlTG9naW4iKSlPMigpO2Vsc2V7dmFyIGI7aWYoYj1hLnN0YXJ0c1dpdGgoImh0dHBzOi8vbXlhY2NvdW50Lmdvb2dsZS5jb20iKSliPShhIGluc3RhbmNlb2YgXy5meT9hLmNsb25lKCk6bmV3IF8uZnkoYSkpLmouZW5kc1dpdGgoIi95b3V0dWJlb3B0aW9ucyIpO2ImJk8yKCl9aWYoXy53KCJMT0dHRURfSU4iLCEwKSYmTjIoKSl7Yj1fLncoIlZBTElEX1NFU1NJT05fVEVNUERBVEFfRE9NQUlOUyIsW10pO3ZhciBjPV8uUGIod2luZG93LmxvY2F0aW9uLmhyZWYpO2MmJmIucHVzaChjKTtjPV8uUGIoYSk7Xy5zYihiLGMpPj0wfHwhYyYmYS5sYXN0SW5kZXhPZigiLyIsMCk9PTA/KGI9Xy5OeShhKSwoYj1fLk95KGIpKT8oYj1fLnZ6KGIpLApiPShiPV8uTGouZ2V0KGIsdm9pZCAwKXx8bnVsbCk/Xy5iaihiKTp7fSk6Yj1udWxsKTpiPW51bGw7Yj09bnVsbCYmKGI9e30pO2M9Yjt2YXIgZD12b2lkIDA7TjIoKT8oZHx8KGQ9Xy53KCJMT0dJTl9JTkZPIikpLGQ/KGMuc2Vzc2lvbl9sb2dpbmluZm89ZCxjPSEwKTpjPSExKTpjPSExO2MmJl8udXooYSxiKX19O0J0YT1mdW5jdGlvbihhLGI9e30sYz0hMSl7dmFyIGQ9Xy53KCJFVkVOVF9JRCIpO2QmJihiLmVpfHwoYi5laT1kKSk7YiYmXy51eihhLGIpO2lmKGMpcmV0dXJuITE7UDIoYSk7Yj13aW5kb3c7YT1fLldiKGEse30pO1AyKGEpO2E9Xy5LeihhKTtiPWIubG9jYXRpb247YT1fLmRiKGEpO2EhPT12b2lkIDAmJihiLmhyZWY9YSk7cmV0dXJuITB9O1EyPWZ1bmN0aW9uKGEpe2lmKFRfKF8udygiUExBWUVSX1ZBUlMiLHt9KSkhPSIxIil7YSYmd3JhKCk7dHJ5e3p0YSgpLnRoZW4oKCk9Pnt9LCgpPT57fSksXy5taihRMiwxOEU1KX1jYXRjaChiKXtfLlVpKGIpfX19OwpEdGE9ZnVuY3Rpb24oKXt2YXIgYT13aW5kb3cubG9jYXRpb24uaHJlZjtpZihfLngoImtldmxhcl9kaXNhYmxlX3RoZW1lX3BhcmFtIikpcmV0dXJuIG51bGw7Xy5RYihhKTt0cnl7bGV0IGI9YTAoYSkudGhlbWU7cmV0dXJuIEN0YS5nZXQoYil8fG51bGx9Y2F0Y2goYil7fXJldHVybiBudWxsfTsKUzI9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IFIyO2lmKGEuaW50ZXJwcmV0ZXJKYXZhc2NyaXB0KXt2YXIgYz1ZXyhhLmludGVycHJldGVySmF2YXNjcmlwdCk7Yz1fLmxiKGMpLnRvU3RyaW5nKCk7dmFyIGQ9bmV3IFkxO0JaKGQsNixjKTtfLkt3KGIsMSxkLF8ud3opfWVsc2UgYS5pbnRlcnByZXRlclVybCYmKGM9Xy5odyhhLmludGVycHJldGVyVXJsKSxjPV8uVWEoYykudG9TdHJpbmcoKSxkPW5ldyBaMSxCWihkLDQsYyksXy5LdyhiLDIsZCxfLnd6KSk7YS5pbnRlcnByZXRlckhhc2gmJl8uV3goYiwzLEFaKGEuaW50ZXJwcmV0ZXJIYXNoKSwiIixfLnd6KTthLnByb2dyYW0mJl8uV3goYiw0LEFaKGEucHJvZ3JhbSksIiIsXy53eik7YS5nbG9iYWxOYW1lJiZfLld4KGIsNSxBWihhLmdsb2JhbE5hbWUpLCIiLF8ud3opO2EuY2xpZW50RXhwZXJpbWVudHNTdGF0ZUJsb2ImJl8uV3goYiw3LEFaKGEuY2xpZW50RXhwZXJpbWVudHNTdGF0ZUJsb2IpLCIiLF8ud3opO3JldHVybiBifTsKVDI9ZnVuY3Rpb24oYSl7dmFyIGI9e307YT1hLnNwbGl0KCImIik7Zm9yKGxldCBjIG9mIGEpYT1jLnNwbGl0KCI9IiksYS5sZW5ndGg9PT0yJiYoYlthWzBdXT1hWzFdKTtyZXR1cm4gYn07VTI9ZnVuY3Rpb24oYSl7cmV0dXJuIE51bWJlcihhLnQpfHw3MjAwfTtFdGE9YXN5bmMgZnVuY3Rpb24oKXt2YXIgYT13aW5kb3c7YXdhaXQgZjEoVjIoKSk7dmFyIGI9YS5iZ2V2bWM7aWYoIWIpdGhyb3cgRXJyb3IoInplIik7cmV0dXJue3BhdXNlOigpPT57Yi5wKCl9LHJlc3VtZTooKT0+e2IucigpfSxjaGVja0ZvclJlZnJlc2g6KCk9PmIuY3IoKX19O1YyPWZ1bmN0aW9uKCl7cmV0dXJuIF8ueCgiYmdfc3RfaHIiKT8iaGF2dW9rbWhocy0wIjpgaGF2dW9rbWhocy0ke01hdGguZmxvb3IoZ2xvYmFsVGhpcy5wZXJmb3JtYW5jZT8udGltZU9yaWdpbnx8MCl9YH07VzI9ZnVuY3Rpb24oYSl7d2luZG93LmJnZW5zPWF9OwpGdGE9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFByb21pc2UoYT0+e3ZhciBiPXdpbmRvdztiLm50cGV2YXNycyE9PXZvaWQgMD9hKG5ldyBYMihiLm50cGV2YXNycykpOihiLm50cHFmYmVsPT09dm9pZCAwJiYoYi5udHBxZmJlbD1bXSksYi5udHBxZmJlbC5wdXNoKGM9PnthKG5ldyBYMihjKSl9KSl9KX07Ckd0YT1mdW5jdGlvbigpe2lmKF8uc3ooKSl7dmFyIGE9Xy53KCJQTEFZRVJfVkFSUyIse30pO2lmKFRfKGEpIT0iMSImJkcyKGEpIT09IkVNQkVEREVEX1BMQVlFUl9NT0RFX1BGTCIpe3ZhciBiPSgpPT57WTI9ITA7Imdvb2dsZV9hZF9zdGF0dXMiaW4gd2luZG93P18uUWkoIkRDTEtTVEFUIiwxKTpfLlFpKCJEQ0xLU1RBVCIsMil9O3RyeXtsZXQgYz1fLmliKGRvY3VtZW50KTtIMChaMixiLGMpfWNhdGNoKGMpe30kMi5wdXNoKF8uamYucGIoKCk9PntpZighKFkyfHwiZ29vZ2xlX2FkX3N0YXR1cyJpbiB3aW5kb3cpKXt0cnl7RzAoWjIudG9TdHJpbmcoKSxiKX1jYXRjaChjKXt9WTI9ITA7Xy5RaSgiRENMS1NUQVQiLDMpfX0sNUUzKSl9fX07YTM9ZnVuY3Rpb24oKXt2YXIgYT1OdW1iZXIoXy53KCJEQ0xLU1RBVCIsMCkpO3JldHVybiBpc05hTihhKT8wOmF9O2IzPWZ1bmN0aW9uKGEsYil7YS5qPWJ9OwpJdGE9YXN5bmMgZnVuY3Rpb24oYSl7aWYoXy51Lnl0QXRQJiYhXy54KCJ5dGF0cF9rcyIpKXt2YXIgYj1hd2FpdCBfLnUueXRBdFA7ZGVsZXRlIF8udS55dEF0UDt2YXIgYz1iPy5SO3ZhciBkPWI/LlQ7Yj1IdGEoYyk7bGV0IGY9ISFkO2Euby5vKGM/Yj9mPzc6MTA6Zj8xOjg6Zj8yOjksYS52KyspO2lmKCFjfHxiKWM9YXdhaXQgYS5SZihjMyhkLG51bGwpKSxjPUpTT04uc3RyaW5naWZ5KGMpO18udS55dEF0UkM/Xy51Lnl0QXRSQyhjKTpfLklwKEVycm9yKCJBZSIpKX1lbHNlIF8udS55dEF0UkM/Xy5yeChhc3luYygpPT57ZD1fLnUueXRBdFQ7ZGVsZXRlIF8udS55dEF0VDtpZihfLnUueXRBdFJDKXthLm8ubygyLGEudisrKTt2YXIgZj1hd2FpdCBhLlJmKGMzKGQsbnVsbCkpO18udS55dEF0UkMmJl8udS55dEF0UkMoSlNPTi5zdHJpbmdpZnkoZikpfWVsc2UgYS5vLm8oNixhLnYrKyl9LF8uc2ooImF0dF9pbml0X2RlbGF5IiwwKSk6KGQ9Xy51Lnl0QXRULGRlbGV0ZSBfLnUueXRBdFQsCmEuby5vKDEsYS52KyspKTtjPWF3YWl0IEZ0YSgpO2MuYmluZElubmVydHViZUNoYWxsZW5nZUZldGNoZXIoZj0+e2Euby5vKDMsYS52KyspO3JldHVybiBhLlJmKGMzKGQsZikpfSk7Yy5yZWdpc3RlckNoYWxsZW5nZUZldGNoZWRDYWxsYmFjayhmPT57Zj1mLmNoYWxsZW5nZTtpZighZil0aHJvdyBFcnJvcigiQmUiKTtmPXtjaGFsbGVuZ2U6ZixCZjpUMihmKSx2bTplLGJnQ2hhbGxlbmdlOm5ldyBSMn07Zj1Qcm9taXNlLnJlc29sdmUoZik7YS5qPWZ9KTt2YXIgZT1hd2FpdCBmMShWMigpKTtjPWMuZ2V0TGF0ZXN0Q2hhbGxlbmdlUmVzcG9uc2UoKS5jaGFsbGVuZ2U7aWYoIWMpdGhyb3cgRXJyb3IoIkNlIik7cmV0dXJue2NoYWxsZW5nZTpjLEJmOlQyKGMpLHZtOmUsYmdDaGFsbGVuZ2U6bmV3IFIyfX07CmUzPWFzeW5jIGZ1bmN0aW9uKGEpe3ZhciBiPWMzKHZvaWQgMCxXMSgpLmopO3RyeXt2YXIgYz1hd2FpdCBKdGEoYSxiKX1jYXRjaChmKXtyZXR1cm4gXy5JcChFcnJvcigiRGUiKSksZDMoYSw4NjRFNSkse2NoYWxsZW5nZToiIixCZjp7fSx2bTp2b2lkIDAsYmdDaGFsbGVuZ2U6dm9pZCAwfX1iPWMueXo7dmFyIGQ9Yy56ejtkMyhhLFUyKGQpKjFFMyk7YT12b2lkIDA7aWYoImMxYSJpbiBkJiZjLmJnQ2hhbGxlbmdlKXt2YXIgZT1TMihjLmJnQ2hhbGxlbmdlKTt0cnl7YXdhaXQgJDEoVzEoKSxlKX1jYXRjaChmKXtyZXR1cm4gXy5JcChmKSx7Y2hhbGxlbmdlOmIsQmY6ZCx2bTphLGJnQ2hhbGxlbmdlOmV9fXRyeXthPW5ldyBkMih7Y2hhbGxlbmdlOmUsbmc6e21iOiJhR0lmIn19KSxhd2FpdCBhLkNnfWNhdGNoKGYpe18uSXAoZiksYT12b2lkIDB9fXJldHVybntjaGFsbGVuZ2U6YixCZjpkLHZtOmEsYmdDaGFsbGVuZ2U6ZX19OwpKdGE9YXN5bmMgZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9dm9pZCAwLGQ9MDtkPDU7KXtpZihkPjApe2xldCBlPTFFMypNYXRoLnBvdygyLGQtMSkrTWF0aC5yYW5kb20oKSoxRTM7YXdhaXQgbmV3IFByb21pc2UoZj0+e18uWWooKCk9PntmKHZvaWQgMCl9LGUpfSl9dHJ5e2Euby5vKDQsYS52KyspO2xldCBlPWF3YWl0IGEuUmYoYik7cmV0dXJuIEt0YShlKX1jYXRjaChlKXtjPWUsZSBpbnN0YW5jZW9mIEVycm9yJiZfLklwKGUpfWQrK310aHJvdyBjO307ZDM9ZnVuY3Rpb24oYSxiKXt2YXIgYz1EYXRlLm5vdygpK2IsZD1hc3luYygpPT57dmFyIGU9Yy1EYXRlLm5vdygpO2U8MUUzP2F3YWl0IEx0YShhKTpfLllqKGQsTWF0aC5taW4oZSw2RTQpKX07ZCgpfTtmMz1hc3luYyBmdW5jdGlvbihhLGIpe1cyKDIpO3RyeXtsZXQgYz1hd2FpdCBhLm5ldHdvcmsuUmYoYik7Yz9jLmNoYWxsZW5nZSYmIWMuYmdDaGFsbGVuZ2U/VzIoMSk6VzIoNCk6VzIoMyk7cmV0dXJuIGN9Y2F0Y2goYyl7VzIoMyl9fTsKS3RhPWZ1bmN0aW9uKGEpe2lmKCFhKXRocm93IEVycm9yKCJFZSIpO2lmKCFhLmNoYWxsZW5nZSl0aHJvdyBFcnJvcigiRmUiKTt2YXIgYj1hLmNoYWxsZW5nZSxjPVQyKGIpO2lmKCJjMWEiaW4gYyYmKCFhLmJnQ2hhbGxlbmdlfHwhYS5iZ0NoYWxsZW5nZS5wcm9ncmFtKSl0aHJvdyBFcnJvcigiR2UiKTtyZXR1cm57Li4uYSx5ejpiLHp6OmN9fTtMdGE9YXN5bmMgZnVuY3Rpb24oYSl7dmFyIGI9YXdhaXQgUHJvbWlzZS5yYWNlKFthLmosbnVsbF0pLGM9ZTMoYSk7YS5qPWM7Yj8udm0/LmRpc3Bvc2UoKX07TXRhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBQcm9taXNlKGM9PntfLllqKCgpPT57YyhiKCkpfSxhKX0pfTtjMz1mdW5jdGlvbihhLGIpe3ZhciBjPXtlbmdhZ2VtZW50VHlwZToiRU5HQUdFTUVOVF9UWVBFX1VOQk9VTkQifTthJiYoYy5lYWNyVG9rZW49YSk7YiYmKGMuaW50ZXJwcmV0ZXJIYXNoPWIpO3JldHVybiBjfTsKSHRhPWZ1bmN0aW9uKGEpe2lmKCFhfHwhXy54KCJyb3NjYXMiKSlyZXR1cm4hMTt0cnl7dmFyIGI9SlNPTi5wYXJzZShhKX1jYXRjaChjKXtyZXR1cm4hMX1hPWIuY2hhbGxlbmdlO2lmKCFhKXJldHVybiExO2I9VDIoYSk7YT1OdW1iZXIoYi5jKXx8dm9pZCAwO2I9VTIoYik7cmV0dXJuISFhJiZEYXRlLm5vdygpPihhK2IpKjFFM307aDM9ZnVuY3Rpb24oYSl7aWYoYS5sZW5ndGg9PT0xKXJldHVybiBhWzBdO3ZhciBiPWczLlVOS05PV05fSU5URVJGQUNFO2lmKGIpe2I9bmV3IFJlZ0V4cChiKTtmb3IodmFyIGMgb2YgYSlpZihiLmV4ZWMoYykpcmV0dXJuIGN9dmFyIGQ9W107T2JqZWN0LmVudHJpZXMoZzMpLmZvckVhY2goKFtlLGZdKT0+eyJVTktOT1dOX0lOVEVSRkFDRSIhPT1lJiZkLnB1c2goZil9KTtjPW5ldyBSZWdFeHAoZC5qb2luKCJ8IikpO2Euc29ydCgoZSxmKT0+ZS5sZW5ndGgtZi5sZW5ndGgpO2ZvcihsZXQgZSBvZiBhKWlmKCFjLmV4ZWMoZSkpcmV0dXJuIGU7cmV0dXJuIGFbMF19OwpOdGE9ZnVuY3Rpb24oKXt2YXIgYSxiO3JldHVybntFbDpuZXcgaTMoKGMsZCk9PnthPWM7Yj1kfSkscmVzb2x2ZTphLHJlamVjdDpifX07azM9ZnVuY3Rpb24oYSl7cmV0dXJuIGozKGEpP2E6KDAsXy5ibykoYSk/bmV3IGkzKChiLGMpPT57YS50aGVuKGIsYyl9KTpuZXcgaTMoYj0+e2IoYSl9KX07T3RhPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgaTMoKGIsYyk9PntjKGEpfSl9O1B0YT1mdW5jdGlvbihhKXt0cnl7cmV0dXJuIGszKGEoKSl9Y2F0Y2goYil7cmV0dXJuIE90YShiKX19O1F0YT1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IF8uQmYoKGIsYyk9PntsMyhhLGIsYyl9KX07bTM9ZnVuY3Rpb24oYSl7cmV0dXJuIFF0YShhKX07bjM9ZnVuY3Rpb24oYSl7aWYoYS5qPT09ImZ1bGZpbGxlZCIpe3ZhciBiPWEubzthLm89W107YS52PVtdO2Zvcih2YXIgYyBvZiBiKWMoYS5yZXN1bHQpfWVsc2UgaWYoYS5qPT09InJlamVjdGVkIil7Yz1hLnY7YS5vPVtdO2Eudj1bXTtmb3IoYiBvZiBjKWIoYS5lcnJvcil9fTsKbDM9ZnVuY3Rpb24oYSxiLGMpe3ZhciB7RWw6ZCxyZXNvbHZlOmUscmVqZWN0OmZ9PU50YSgpO2Euby5wdXNoKGg9PntpZihiKXRyeXtsZXQgaz1iKGgpO2Uoayl9Y2F0Y2goayl7ZihrKX1lbHNlIGUoaCl9KTthLnYucHVzaChoPT57aWYoYyl0cnl7bGV0IGs9YyhoKTtlKGspfWNhdGNoKGspe2Yoayl9ZWxzZSBmKGgpfSk7bjMoYSk7cmV0dXJuIGR9O1J0YT1mdW5jdGlvbihhLGIpe3JldHVybiBsMyhhLHZvaWQgMCxiKX07bzM9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gU3RhKGIuY2FsbChhKSl9O3AzPWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbiooKXtyZXR1cm4geWllbGR7RWw6azMoYSl9fSgpfTtTdGE9ZnVuY3Rpb24oYSl7cmV0dXJuIFB0YSgoKT0+cTMoYSxhLm5leHQoKSkpfTtxMz1mdW5jdGlvbihhLGIpe3JldHVybiBiLmRvbmU/azMoYi52YWx1ZSk6UnRhKGwzKGIudmFsdWUuRWwsYz0+cTMoYSxhLm5leHQoYykpKSxjPT5xMyhhLGEudGhyb3coYykpKX07ClR0YT1hc3luYyBmdW5jdGlvbigpe3ZhciBhPV8ueSgpLnJlc29sdmUoXy5JeSk7aWYoYSl7aWYoYT1hd2FpdCBhLlFpKHtzaWduYWxTZXJ2aWNlRW5kcG9pbnQ6e3NpZ25hbDoiR0VUX0RBVEFTWU5DX0lEUyJ9fSkpe2lmKGEuZXJyb3JNZXRhZGF0YSl7Xy5JcChFcnJvcigiSGVgIithLmVycm9yTWV0YWRhdGEuc3RhdHVzKyJgIithLmVycm9yKSk7cmV0dXJufXJldHVybiBhLnRJfV8uSXAoRXJyb3IoIkllIikpfWVsc2UgXy5JcChFcnJvcigiSmUiKSl9OwpyMz1mdW5jdGlvbihhLGIpe2lmKGIuZW5jcnlwdGVkVG9rZW5KYXJDb250ZW50cyYmKGEualtiLmVuY3J5cHRlZFRva2VuSmFyQ29udGVudHNdPWIsdHlwZW9mIGIuZXhwaXJhdGlvblNlY29uZHM9PT0ic3RyaW5nIikpe2xldCBjPU51bWJlcihiLmV4cGlyYXRpb25TZWNvbmRzKTtzZXRUaW1lb3V0KCgpPT57ZGVsZXRlIGEualtiLmVuY3J5cHRlZFRva2VuSmFyQ29udGVudHNdfSxjKjFFMyk7YS5vJiZfLk1qKCJDT05TSVNURU5DWSIsYi5lbmNyeXB0ZWRUb2tlbkphckNvbnRlbnRzLGMsdm9pZCAwLCEwKX19O3MzPWZ1bmN0aW9uKGEpe3JldHVybiBhLmxvY2FsU3RvcmFnZT09PXZvaWQgMD9uZXcgXy5lbigieXQtY2xpZW50LWxvY2F0aW9uIik6YS5sb2NhbFN0b3JhZ2V9Owp3Mz1mdW5jdGlvbihhLGI9ITEsYz0hMSl7dmFyIGQ9Xy53KCJJTk5FUlRVQkVfQ09OVEVYVCIpO2lmKCFkKXJldHVybiBfLkdwKEVycm9yKCJNZSIpKSx7fTtkPV8ucWQoZCk7Xy54KCJ3ZWJfbm9fdHJhY2tpbmdfcGFyYW1zX2luX3NoZWxsX2tpbGxzd2l0Y2giKXx8ZGVsZXRlIGQuY2xpY2tUcmFja2luZztkLmNsaWVudHx8KGQuY2xpZW50PXt9KTt2YXIgZT1kLmNsaWVudDtlLmNsaWVudE5hbWU9PT0iTVdFQiImJmUuY2xpZW50Rm9ybUZhY3RvciE9PSJBVVRPTU9USVZFX0ZPUk1fRkFDVE9SIiYmKGUuY2xpZW50Rm9ybUZhY3Rvcj1fLncoIklTX1RBQkxFVCIpPyJMQVJHRV9GT1JNX0ZBQ1RPUiI6IlNNQUxMX0ZPUk1fRkFDVE9SIik7ZS5zY3JlZW5XaWR0aFBvaW50cz13aW5kb3cuaW5uZXJXaWR0aDtlLnNjcmVlbkhlaWdodFBvaW50cz13aW5kb3cuaW5uZXJIZWlnaHQ7ZS5zY3JlZW5QaXhlbERlbnNpdHk9TWF0aC5yb3VuZCh3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MSk7ZS5zY3JlZW5EZW5zaXR5RmxvYXQ9CndpbmRvdy5kZXZpY2VQaXhlbFJhdGlvfHwxO2UudXRjT2Zmc2V0TWludXRlcz0tTWF0aC5mbG9vcigobmV3IERhdGUpLmdldFRpbWV6b25lT2Zmc2V0KCkpO18uSHooKTt2YXIgZj0iVVNFUl9JTlRFUkZBQ0VfVEhFTUVfTElHSFQiO18uQ3ooMTY1KT9mPSJVU0VSX0lOVEVSRkFDRV9USEVNRV9EQVJLIjpfLkN6KDE3NCk/Zj0iVVNFUl9JTlRFUkZBQ0VfVEhFTUVfTElHSFQiOiFfLngoImtldmxhcl9sZWdhY3lfYnJvd3NlcnMiKSYmd2luZG93Lm1hdGNoTWVkaWEmJndpbmRvdy5tYXRjaE1lZGlhKCIocHJlZmVycy1jb2xvci1zY2hlbWUpIikubWF0Y2hlcyYmd2luZG93Lm1hdGNoTWVkaWEoIihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiKS5tYXRjaGVzJiYoZj0iVVNFUl9JTlRFUkZBQ0VfVEhFTUVfREFSSyIpO2Y9RHRhKCl8fGY7ZS51c2VySW50ZXJmYWNlVGhlbWU9ZjtfLngoIndlYl9wcm9wYWdhdGVfdmlzaWJpbGl0eV90b19hcHBsaWNhdGlvbl9zdGF0ZSIpJiZfLnUuZG9jdW1lbnQmJgooZS5hcHBsaWNhdGlvblN0YXRlPV8udS5kb2N1bWVudC52aXNpYmlsaXR5U3RhdGU9PT0iaGlkZGVuIj8iQkFDS0dST1VORCI6IkFDVElWRSIpO2lmKCFiKXtpZihmPV8uU2ooKSllLmNvbm5lY3Rpb25UeXBlPWY7Xy54KCJ3ZWJfbG9nX2VmZmVjdGl2ZV9jb25uZWN0aW9uX3R5cGUiKSYmKGY9Xy5VaigpKSYmKGQuY2xpZW50LmVmZmVjdGl2ZUNvbm5lY3Rpb25UeXBlPWYpfV8ueCgid2ViX2xvZ19tZW1vcnlfdG90YWxfa2J5dGVzIikmJl8udS5uYXZpZ2F0b3I/LmRldmljZU1lbW9yeSYmKGQuY2xpZW50Lm1lbW9yeVRvdGFsS2J5dGVzPWAke18udS5uYXZpZ2F0b3I/LmRldmljZU1lbW9yeSoxRTZ9YCk7aWYoXy54KCJ3ZWJfZ2NmX2hhc2hlc19pbm5lcnR1YmUiKSl7dmFyIGg9Xy5qbSgpO2lmKGgpe2Y9aC5jb2xkQ29uZmlnRGF0YTtsZXQgbj1oLmNvbGRIYXNoRGF0YTtoPWguaG90SGFzaERhdGE7ZC5jbGllbnQuY29uZmlnSW5mbz1kLmNsaWVudC5jb25maWdJbmZvfHx7fTtmJiYKKGQuY2xpZW50LmNvbmZpZ0luZm8uY29sZENvbmZpZ0RhdGE9Zik7biYmKGQuY2xpZW50LmNvbmZpZ0luZm8uY29sZEhhc2hEYXRhPW4pO2gmJihkLmNsaWVudC5jb25maWdJbmZvLmhvdEhhc2hEYXRhPWgpfX1mPWEwKF8udS5sb2NhdGlvbi5ocmVmKTshXy54KCJ3ZWJfcG9wdWxhdGVfaW50ZXJuYWxfZ2VvX2tpbGxzd2l0Y2giKSYmZi5pbnRlcm5hbGNvdW50cnljb2RlJiYoZS5pbnRlcm5hbEdlbz1mLmludGVybmFsY291bnRyeWNvZGUpO2UuY2xpZW50TmFtZT09PSJNV0VCInx8ZS5jbGllbnROYW1lPT09IldFQiI/KGUubWFpbkFwcFdlYkluZm98fChlLm1haW5BcHBXZWJJbmZvPXt9KSxlLm1haW5BcHBXZWJJbmZvLmdyYWZ0VXJsPV8udS5sb2NhdGlvbi5ocmVmLF8ueCgia2V2bGFyX3dvZmZsZSIpJiZ0My5pbnN0YW5jZSYmKGY9dDMuaW5zdGFuY2UsZS5tYWluQXBwV2ViSW5mby5wd2FJbnN0YWxsYWJpbGl0eVN0YXR1cz0hZi5qJiZmLm8/IlBXQV9JTlNUQUxMQUJJTElUWV9TVEFUVVNfQ0FOX0JFX0lOU1RBTExFRCI6CiJQV0FfSU5TVEFMTEFCSUxJVFlfU1RBVFVTX1VOS05PV04iKSxlLm1haW5BcHBXZWJJbmZvLndlYkRpc3BsYXlNb2RlPV8uT2ooKSxlLm1haW5BcHBXZWJJbmZvLmlzV2ViTmF0aXZlU2hhcmVBdmFpbGFibGU9bmF2aWdhdG9yJiZuYXZpZ2F0b3Iuc2hhcmUhPT12b2lkIDApOmUuY2xpZW50TmFtZT09PSJUVkhUTUw1IiYmKCFfLngoIndlYl9scl9hcHBfcXVhbGl0eV9raWxsc3dpdGNoIikmJihmPV8udygiTElWSU5HX1JPT01fQVBQX1FVQUxJVFkiKSkmJihlLnR2QXBwSW5mbz1PYmplY3QuYXNzaWduKGUudHZBcHBJbmZvfHx7fSx7YXBwUXVhbGl0eTpmfSkpLGY9Xy53KCJMSVZJTkdfUk9PTV9DRVJUSUZJQ0FUSU9OX1NDT1BFIikpJiYoZS50dkFwcEluZm89T2JqZWN0LmFzc2lnbihlLnR2QXBwSW5mb3x8e30se2NlcnRpZmljYXRpb25TY29wZTpmfSkpO2lmKCFfLngoIndlYl9wb3B1bGF0ZV90aW1lX3pvbmVfaXRjX2tpbGxzd2l0Y2giKSl7YTp7aWYodHlwZW9mIEludGwhPT0idW5kZWZpbmVkIil0cnl7dmFyIGs9CihuZXcgSW50bC5EYXRlVGltZUZvcm1hdCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmU7YnJlYWsgYX1jYXRjaHt9az12b2lkIDB9ayYmKGUudGltZVpvbmU9ayl9KGs9Xy53KCJFWFBFUklNRU5UU19UT0tFTiIsIiIpKT9lLmV4cGVyaW1lbnRzVG9rZW49azpkZWxldGUgZS5leHBlcmltZW50c1Rva2VuO2U9Xy51aigpO3UzLmluc3RhbmNlfHwodTMuaW5zdGFuY2U9bmV3IHUzKTtrPV8uWngodTMuaW5zdGFuY2Uuaik7ZC5yZXF1ZXN0PXsuLi5kLnJlcXVlc3QsaW50ZXJuYWxFeHBlcmltZW50RmxhZ3M6ZSxjb25zaXN0ZW5jeVRva2VuSmFyczprfTshXy54KCJ3ZWJfcHJlcXVlc3RfY29udGV4dF9raWxsc3dpdGNoIikmJihlPV8udygiSU5ORVJUVUJFX0NPTlRFWFRfUFJFUVVFU1RfQ09OVEVYVCIpKSYmKGQucmVxdWVzdC5leHRlcm5hbFByZXF1ZXN0Q29udGV4dD1lKTtrPV8uSHooKTtlPV8uQ3ooNTgpO2s9ay5nZXQoImdzbWwiLCIiKTtkLnVzZXI9ey4uLmQudXNlcn07ZSYmKGQudXNlci5lbmFibGVTYWZldHlNb2RlPQplKTtrJiYoZC51c2VyLmxvY2tlZFNhZmV0eU1vZGU9ITApO18ueCgid2FybV9vcF9jc25fY2xlYW51cCIpP2MmJihiPV8uaXEoKSkmJihkLmNsaWVudFNjcmVlbk5vbmNlPWIpOiFiJiYoYj1fLmlxKCkpJiYoZC5jbGllbnRTY3JlZW5Ob25jZT1iKTthJiYoZC5jbGlja1RyYWNraW5nPXtjbGlja1RyYWNraW5nUGFyYW1zOmF9KTtpZihhPV8uc2EoInl0Lm1keC5yZW1vdGUucmVtb3RlQ2xpZW50XyIpKWQucmVtb3RlQ2xpZW50PWE7djMuamMoKS5zZXRMb2NhdGlvbk9uSW5uZXJUdWJlQ29udGV4dChkKTt0cnl7dmFyIGw9Xy5saigpLG09bC5iaWQ7ZGVsZXRlIGwuYmlkO2QuYWRTaWduYWxzSW5mbz17cGFyYW1zOltdLGJpZDptfTtmb3IobGV0IFtuLHBdb2YgT2JqZWN0LmVudHJpZXMobCkpbD1uLG09cCxkLmFkU2lnbmFsc0luZm8ucGFyYW1zPy5wdXNoKHtrZXk6bCx2YWx1ZTpgJHttfWB9KTtpZihkLmNsaWVudD8uY2xpZW50TmFtZT09PSJUVkhUTUw1Inx8ZC5jbGllbnQ/LmNsaWVudE5hbWU9PT0KIlRWSFRNTDVfVU5QTFVHR0VEIil7bGV0IG49Xy53KCJJTk5FUlRVQkVfQ09OVEVYVCIpO24uYWRTaWduYWxzSW5mbyYmKGQuYWRTaWduYWxzSW5mby5hZHZlcnRpc2luZ0lkPW4uYWRTaWduYWxzSW5mby5hZHZlcnRpc2luZ0lkLGQuYWRTaWduYWxzSW5mby5hZHZlcnRpc2luZ0lkU2lnbmFsVHlwZT0iREVWSUNFX0lEX1RZUEVfQ09OTkVDVEVEX1RWX0lGQSIsZC5hZFNpZ25hbHNJbmZvLmxpbWl0QWRUcmFja2luZz1uLmFkU2lnbmFsc0luZm8ubGltaXRBZFRyYWNraW5nLG4uYWRTaWduYWxzSW5mby5hdFRyYWNraW5nTWFuYWdlckF1dGhvcml6YXRpb25TdGF0dXMhPT12b2lkIDAmJihkLmFkU2lnbmFsc0luZm8uYXRUcmFja2luZ01hbmFnZXJBdXRob3JpemF0aW9uU3RhdHVzPW4uYWRTaWduYWxzSW5mby5hdFRyYWNraW5nTWFuYWdlckF1dGhvcml6YXRpb25TdGF0dXMpKX19Y2F0Y2gobil7Xy5HcChuKX1yZXR1cm4gZH07ClV0YT1mdW5jdGlvbihhLGIpe2lmKCFhKXJldHVybiExO3ZhciBjPV8uQihhLF8uenopPy5zaWduYWw7aWYoYyYmYi5IZClyZXR1cm4hIWIuSGRbY107aWYoKGM9Xy5CKGEsXy5BeSk/LnJlcXVlc3QpJiZiLlZnKXJldHVybiEhYi5WZ1tjXTtmb3IobGV0IGQgaW4gYSlpZihiLkZpW2RdKXJldHVybiEwO3JldHVybiExfTsKeDM9ZnVuY3Rpb24oYSl7dmFyIGI9eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn07Xy53KCJFT01fVklTSVRPUl9EQVRBIik/YlsiWC1Hb29nLUVPTS1WaXNpdG9yLUlkIl09Xy53KCJFT01fVklTSVRPUl9EQVRBIik6Xy53KCJWSVNJVE9SX0RBVEEiKSYmKGJbIlgtR29vZy1WaXNpdG9yLUlkIl09Xy53KCJWSVNJVE9SX0RBVEEiKSk7YlsiWC1Zb3V0dWJlLUJvb3RzdHJhcC1Mb2dnZWQtSW4iXT1fLncoIkxPR0dFRF9JTiIsITEpO18udygiREVCVUdfU0VUVElOR1NfTUVUQURBVEEiKSYmKGJbIlgtRGVidWctU2V0dGluZ3MtTWV0YWRhdGEiXT1fLncoIkRFQlVHX1NFVFRJTkdTX01FVEFEQVRBIikpO2EhPT0iY29ycyImJigoYT1fLncoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9OQU1FIikpJiYoYlsiWC1Zb3V0dWJlLUNsaWVudC1OYW1lIl09YSksKGE9Xy53KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfVkVSU0lPTiIpKSYmKGJbIlgtWW91dHViZS1DbGllbnQtVmVyc2lvbiJdPQphKSwoYT1fLncoIkNIUk9NRV9DT05ORUNURURfSEVBREVSIikpJiYoYlsiWC1Zb3V0dWJlLUNocm9tZS1Db25uZWN0ZWQiXT1hKSwoYT1fLncoIkRPTUFJTl9BRE1JTl9TVEFURSIpKSYmKGJbIlgtWW91dHViZS1Eb21haW4tQWRtaW4tU3RhdGUiXT1hKSwoYT12My5qYygpLmdldFhHZW9IZWFkZXI/LigpKSYmKGJbIlgtR2VvIl09YSkpOyhhPV8udygiU0VSSUFMSVpFRF9MQVZBX0RFVklDRV9DT05URVhUIikpJiYoYlsiWC1Zb3VUdWJlLUxhdmEtRGV2aWNlLUNvbnRleHQiXT1hKTtyZXR1cm4gYn07eTM9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9Pm5ldyBhfTsKVnRhPWZ1bmN0aW9uKGEsYixjLGQpe2lmKHozLmluc3RhbmNlIT09dm9pZCAwKXtpZihkPXozLmluc3RhbmNlLGE9W2EhPT1kLnYsYiE9PWQuU2EsYyE9PWQubywhMSwhMSwhMSwhMV0sYS5zb21lKGU9PmUpKXRocm93IG5ldyBfLlhqKCJJbm5lclR1YmVUcmFuc3BvcnRTZXJ2aWNlIGlzIGFscmVhZHkgaW5pdGlhbGl6ZWQiLGEpO31lbHNlIHozLmluc3RhbmNlPW5ldyB6MyhhLGIsYyxkKX07Cll0YT1mdW5jdGlvbihhLGIpe3ZhciBjPWAveW91dHViZWkvdjEvJHtoMyhXdGEpfWAsZD17UmQ6e2lkZW50aXR5OkEzfX07aWYoXy54KCJtYXdfbmV0d29ya19tYWNoaW5lX3Jhd19yZXF1ZXN0Iil8fF8ueCgiYWxsX3dlYl9uZXR3b3JrX21hY2hpbmVfcmF3X3JlcXVlc3QiKSl7bGV0IGY9Xy55KCkucmVzb2x2ZShfLkluKEIzKSk/LigpO2lmKGYpcmV0dXJuIG0zKFh0YShmLHtpbm5lclR1YmVSZXF1ZXN0OmIsYXBpUGF0aDpjLGNsaWNrVHJhY2tpbmdQYXJhbXM6dm9pZCAwLGNvbmZpZzpkLGluY2x1ZGVDdXJyZW50U2NyZWVuTm9uY2U6ITB9KSkudGhlbihoPT5oLCgpPT57fSl9dmFyIGU9KCk9Pnt9O2U9dzAodjAoYykpO2IuY29udGV4dHx8KGIuY29udGV4dD13Myh2b2lkIDAsITApKTtyZXR1cm4gbmV3IF8uQmYoYXN5bmMgZj0+e3ZhciBoPVkwKGMpO2g9Xy5maihoKT8ic2FtZS1vcmlnaW4iOiJjb3JzIjtoPWEuby56bj9DMyhkLGgpOmF3YWl0IEQzKGQsaCk7dmFyIGs9WDAoWTAoYykpOwprPXtpbnB1dDprLHdiOlowKGspLGlubmVyVHViZVJlcXVlc3Q6Yixjb25maWc6ZH07ZihFMyhhLGssaCxlKSl9KX07WnRhPWZ1bmN0aW9uKGEsYil7YTp7YT1hLnY7dmFyIGM9Xy5CKGIsXy56eik/LnNpZ25hbDtpZihjJiZhLkhkJiYoYz1hLkhkW2NdKSl7dmFyIGQ9YygpO2JyZWFrIGF9aWYoKGM9Xy5CKGIsXy5BeSk/LnJlcXVlc3QpJiZhLlZnJiYoYz1hLlZnW2NdKSl7ZD1jKCk7YnJlYWsgYX1mb3IoZCBpbiBiKWlmKGEuRmlbZF0mJihiPWEuRmlbZF0pKXtkPWIoKTticmVhayBhfWQ9dm9pZCAwfWlmKGQhPT12b2lkIDApcmV0dXJuIFByb21pc2UucmVzb2x2ZShkKX07QzM9ZnVuY3Rpb24oYSxiKXthPV8uUGooe3Nlc3Npb25JbmRleDphPy5SZD8uc2Vzc2lvbkluZGV4fSk7cmV0dXJuey4uLngzKGIpLC4uLmF9fTsKRDM9YXN5bmMgZnVuY3Rpb24oYSxiKXthPWF3YWl0IF8uS3koXy5Qaih7c2Vzc2lvbkluZGV4OmE/LlJkPy5zZXNzaW9uSW5kZXh9KSk7cmV0dXJuIFByb21pc2UucmVzb2x2ZSh7Li4ueDMoYiksLi4uYX0pfTsKRTM9YXN5bmMgZnVuY3Rpb24oYSxiLGMsZD0oKT0+e30pe2F3YWl0ICR0YShiKTt2YXIgZT1iLmNvbmZpZz8ucmVxdWVzdEtleTtpZihlJiZhLmouaGFzKGUpKXZhciBmPWEuai5nZXQoZSk7ZWxzZSBmPUpTT04uc3RyaW5naWZ5KGIuaW5uZXJUdWJlUmVxdWVzdCksYi53Yj17Li4uYi53YixoZWFkZXJzOnsuLi4oYi53Yj8uaGVhZGVycz8/e30pLC4uLmN9fSxjPXsuLi5iLndifSxiLndiLm1ldGhvZD09PSJQT1NUIiYmKGM9ey4uLmMsYm9keTpmfSksYi5jb25maWc/LmtuJiZfLkFxKGIuY29uZmlnLmtuKSxmPWEuU2EuZmV0Y2goYi5pbnB1dCxjLGIuY29uZmlnKSxlJiZhLmouc2V0KGUsZik7aWYoKGY9YXdhaXQgZikmJiJlcnJvciJpbiBmJiZmPy5lcnJvcj8uZGV0YWlscyl7Yz1mLmVycm9yLmRldGFpbHM7Zm9yKGxldCBoIG9mIGMpKGM9aFsiQHR5cGUiXSkmJmF1YS5pbmRleE9mKGMpPi0xJiYoZGVsZXRlIGhbIkB0eXBlIl0sZj1oKX1lJiZhLmouaGFzKGUpJiZhLmouZGVsZXRlKGUpOwpiLmNvbmZpZz8ucG4mJl8uQXEoYi5jb25maWcucG4pO2J1YShhLGYsYik7Yi5jb25maWc/Lkl6JiZfLkFxKGIuY29uZmlnLkl6KTtkKCk7cmV0dXJuIGZ8fHZvaWQgMH07JHRhPWFzeW5jIGZ1bmN0aW9uKGEpe2lmKGE/LmlubmVyVHViZVJlcXVlc3Q/LmNvbnRleHQpe2E9YS5pbm5lclR1YmVSZXF1ZXN0LmNvbnRleHQ7Zm9yKGxldCBiIG9mW10pYXdhaXQgYi5CcihhKX19O2J1YT1mdW5jdGlvbihhLGIsYyl7aWYoYiYmIWI/LnNlcXVlbmNlTWV0YURhdGE/LnNraXBQcm9jZXNzaW5nJiZhLkIpZm9yKGxldCBkIG9mIEYzKWEuQltkXSYmYS5CW2RdLmhhbmRsZVJlc3BvbnNlKGIsYyl9O2N1YT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIG8zKGEsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIGQ9Xy5LeShfLlBqKHtzZXNzaW9uSW5kZXg6Yj8uUmQ/LnNlc3Npb25JbmRleH0pKTtkPXlpZWxkKnAzKGszKGQpKTtyZXR1cm57Li4ueDMoYyksLi4uZH19KCl9KX07CkczPWZ1bmN0aW9uKGEpe3JldHVybiBhPT09MXx8YT09PTJ9O2R1YT1mdW5jdGlvbihhLGIsYz0hMSl7dmFyIGQsZT1fLkIoYixfLkF5KT8ucmVxdWVzdDtlJiZhLmouVmcmJihkPWEuai5WZ1tlXSk7ZHx8Y3x8KGU9Xy5CKGIsXy56eik/LnNpZ25hbCkmJmEuai5IZCYmKGQ9YS5qLkhkW2VdKTtpZighZCYmKGE9Yz9hLmouYUw6YS5qLkZpKSlmb3IobGV0IGYgaW4gYilpZihhW2ZdKXtkPWFbZl07YnJlYWt9aWYoIWQpe2lmKGMpdGhyb3cgRXJyb3IoIlFlIik7dGhyb3cgRXJyb3IoIlJlIik7fWI9ZCgpO3JldHVybiBrMyhiKX07ZXVhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEucnVuKCJDT01NQU5EX0lOSVQiLGIpfTtYdGE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5ydW4oIlJFUVVFU1RfSU5JVCIsYil9O0gzPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEucnVuKCJQUk9DRVNTX1JFU1BPTlNFIixiLCJSZXNwb25zZU1hY2hpbmUgKENhY2hlKSIpfTsKSTM9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBhLnJ1bigiSU5JVCIsYixjIT09dm9pZCAwP2BSZXNwb25zZU1hY2hpbmUgKENodW5rICR7Y30pYDoiUmVzcG9uc2VNYWNoaW5lIil9OwpmdWE9ZnVuY3Rpb24oKXt2YXIgYT1fLnkoKTtfLkp6KGEse2phOkozLFdjOigpPT5uZXcgTWFwfSk7Xy5KeihhLHtqYTpLMyxQYTpLMyxnYjohMH0pO18uSnooYSx7amE6TDMsUGE6TDMsZ2I6ITB9KTtfLkp6KGEse2phOk0zLFBhOk0zLGdiOiEwfSk7Xy5KeihhLHtqYTpOMyxQYTpOMyxnYjohMH0pO18uSnooYSx7amE6TzMsUGE6TzMsZ2I6ITB9KTtfLkp6KGEse2phOlAzLFBhOlAzLGdiOiEwfSk7Xy5KeihhLHtqYTpRMyxQYTpRMyxnYjohMH0pO18uSnooYSx7amE6UjMsUGE6UjMsZ2I6ITB9KTtfLkp6KGEse2phOlMzLFBhOlMzLGdiOiEwfSk7Xy5KeihhLHtqYTpUMyxQYTpUMyxnYjohMH0pO18uSnooYSx7amE6VTMsV2M6KGIsYyxkLGUsZixoLGssbCxtLG4pPT4oe0NPTU1BTkRfSU5JVDpsLFJFUVVFU1RfSU5JVDptLENBQ0hFOmMsTE9DQUxfUk9VVEVSOmssQ09OVEVYVDpkLEFVVEg6YixERURVUEU6ZSxGRVRDSDpoLFJFVFJZOm4sRkFMTEJBQ0s6Zn0pLFtfLkxuXTpbSzMsTDMsCk0zLE4zLE8zLFAzLFEzLFIzLFMzLFQzXSxnYjohMH0pO18uSnooYSx7amE6QjMsV2M6Yj0+KCk9Pm5ldyBWMyhiKSxbXy5Mbl06W1UzXSxnYjohMH0pO18uSnooYSx7amE6VzMsUGE6VzMsZ2I6ITB9KTtfLkp6KGEse2phOlgzLFBhOlgzLGdiOiEwfSk7Xy5KeihhLHtqYTpZMyxQYTpZMyxnYjohMH0pO18uSnooYSx7amE6WjMsUGE6WjMsZ2I6ITB9KTtfLkp6KGEse2phOiQzLFdjOihiLGMsZCxlKT0+KHtJTklUOmUsRVJST1JfVU5QQUNLRVI6YyxQUk9DRVNTX1JFU1BPTlNFOmQsQ0FMTEJBQ0tfRElTUEFUQ0hFUjpifSksW18uTG5dOltXMyxYMyxZMyxaM10sZ2I6ITB9KTtfLkp6KGEse2phOmE0LFdjOmI9PigpPT5uZXcgYjQoYiksW18uTG5dOlskM10sZ2I6ITB9KX07Cmd1YT1mdW5jdGlvbigpe18ucmEoInl0LmxvZ2dpbmcuZXJyb3JzLmxvZyIsXy5HcCk7S3JhKCk7Xy56byhfLkJvKCkse30pO3dpbmRvdy5vbmVycm9yPUpyYTtfLlVmPW8wO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ1bmhhbmRsZWRyZWplY3Rpb24iLGE9PntpZihhLnJlYXNvbiBpbnN0YW5jZW9mIEVycm9yKXtsZXQgYj1hLnJlYXNvbjtfLmN3KGIse3NvdXJjZToidW5oYW5kbGVkcmVqZWN0aW9uIn0pO2IubmFtZT09PSJBYm9ydEVycm9yIiYmKGIubGV2ZWw9IldBUk5JTkciKX1vMChhLnJlYXNvbik7YS5wcmV2ZW50RGVmYXVsdCgpfSl9O2M0PWZ1bmN0aW9uKCl7dHJ5e3JldHVybiEhc2VsZi5zZXNzaW9uU3RvcmFnZX1jYXRjaHtyZXR1cm4hMX19O2Q0PWZ1bmN0aW9uKGEpe2E9YS5tYXRjaCgvKC4qKTo6Lio6Oi4qLyk7aWYoYSE9PW51bGwpcmV0dXJuIGFbMV19OwplND1mdW5jdGlvbihhKXtpZihjNCgpKXt2YXIgYj1PYmplY3Qua2V5cyh3aW5kb3cuc2Vzc2lvblN0b3JhZ2UpO2ZvcihsZXQgYyBvZiBiKWI9ZDQoYyksYj09PXZvaWQgMHx8YS5pbmNsdWRlcyhiKXx8c2VsZi5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKGMpfX07aHVhPWZ1bmN0aW9uKCl7aWYoIWM0KCkpcmV0dXJuITE7dmFyIGE9Xy5WaigpLGI9T2JqZWN0LmtleXMod2luZG93LnNlc3Npb25TdG9yYWdlKTtmb3IobGV0IGMgb2YgYilpZihiPWQ0KGMpLGIhPT12b2lkIDAmJmIhPT1hKXJldHVybiEwO3JldHVybiExfTtmND1mdW5jdGlvbigpe1R0YSgpLnRoZW4oYT0+e2EmJihnMChhKSxjMShhKSxhMShhKSxlNChhKSl9KX07Cml1YT1mdW5jdGlvbigpe3ZhciBhPW5ldyBfLk9zO18uamYucGIoYXN5bmMoKT0+e2lmKCFfLngoInl0aWRiX2NsZWFyX29wdGltaXphdGlvbnNfa2lsbHN3aXRjaCIpKXt2YXIgYj1fLlZqKCJjbGVhciIpO2lmKGIuc3RhcnRzV2l0aCgiViIpJiZiLmVuZHNXaXRoKCJ8fCIpKXtiPVtiXTtnMChiKTtjMShiKTthMShiKTtlNChiKTtyZXR1cm59Yj1kc2EoKTtsZXQgYz1odWEoKSxkPWF3YWl0IGVzYSgpLGU9YXdhaXQgRXJhKCk7aWYoIShifHxjfHxkfHxlKSlyZXR1cm59YS5TYigpP2Y0KCk6Xy5iZihhLCJwdWJsaWN5dG5ldHdvcmtzdGF0dXMtb25saW5lIixmNCl9KX07anVhPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgUHJvbWlzZShiPT57d2luZG93LnNldFRpbWVvdXQoYixhKX0pfTsKWXNhPWFzeW5jIGZ1bmN0aW9uKGEsYixjKXtfLlR6KCJhdHRlc3RhdGlvbl9jaGFsbGVuZ2VfZmV0Y2giKTtfLkFxKCJhdHRfZnMiLHZvaWQgMCwiYXR0ZXN0YXRpb25fY2hhbGxlbmdlX2ZldGNoIik7aWYoIWEuail0aHJvdyBuZXcgczIoOSwiTWlzc2luZyBmZXRjaGVyIik7dmFyIGQ9YXdhaXQgYS5qKGIsYyk7Yj1kPy5iZ0NoYWxsZW5nZTtpZighYil0aHJvdyBuZXcgczIoMTUsIk1pc3NpbmcgZmllbGQiKTthLm89ZDthLnYuZm9yRWFjaChlPT57ZShkKX0pO2E9UzIoYik7Xy5BcSgiYXR0X2ZjIix2b2lkIDAsImF0dGVzdGF0aW9uX2NoYWxsZW5nZV9mZXRjaCIpO18uU3ooImF0dGVzdGF0aW9uX2NoYWxsZW5nZV9mZXRjaCIpO3JldHVybiBhfTsKaHRhPWFzeW5jIGZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPW5ldyBCMSgxMDAsM0U1LC4yNSwyKSxkPXZvaWQgMDtjLnY8MTA7KXRyeXtyZXR1cm4gYy52PjAmJmF3YWl0IGp1YShjLmopLGF3YWl0IGt1YShhLGIpfWNhdGNoKGUpe2Q9ZSBpbnN0YW5jZW9mIHMyP2U6bmV3IHMyKDksZSBpbnN0YW5jZW9mIEVycm9yP2UubWVzc2FnZToiVW5rbm93biIpLEMxKGMpfWlmKGQpdGhyb3cgZDt0aHJvdyBuZXcgczIoOSwiVW5rbm93biBlcnJvciIpO307Cmt1YT1mdW5jdGlvbihhLGIpe2I9V3NhKFhzYShuZXcgbHVhLGIpLGEucmVxdWVzdEtleSk7dmFyIGM9bmV3IF8uY3MsZD1hLkQoKTtkLm9wZW4oIlBPU1QiLGEuQik7ZC5zZXRSZXF1ZXN0SGVhZGVyKCJYLUdvb2ctQXBpLUtleSIsIkFJemFTeUR5VDVXMEpoNDlGMzBQcXF0eWZkZjdwRExGS0xKb0FudyIpO2Quc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbitwcm90b2J1ZiIpO2Qub25sb2FkPSgpPT57aWYoXy5xaihkKSl7bGV0IGU9bXVhKGQucmVzcG9uc2VUZXh0KTtjLnJlc29sdmUoZSl9ZWxzZSBjLnJlamVjdChuZXcgczIoUDEoXy5waihkKSksZC5zdGF0dXNUZXh0KSl9O2Qub25lcnJvcj0oKT0+e2MucmVqZWN0KG5ldyBzMihQMShfLnBqKGQpKSxkLnN0YXR1c1RleHQpKX07ZC5zZW5kKGIuc2VyaWFsaXplKCkpO3JldHVybiBjLnByb21pc2V9OwpudWE9ZnVuY3Rpb24oYSl7dmFyIGI9e2JpY2Y6ZD0+e2Euaj1kfSxibGM6KCk9PmEuZ2V0TGF0ZXN0Q2hhbGxlbmdlUmVzcG9uc2UoKSxiY3I6ZD0+e2Eudi5wdXNoKGQpfX0sYz13aW5kb3c7Yy5udHBldmFzcnM9YjtpZihjLm50cHFmYmVsIT09dm9pZCAwKWZvcihsZXQgZCBvZiBjLm50cHFmYmVsKWQoYik7Yy5udHBxZmJlbD12b2lkIDB9O2c0PWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBFcnJvcil7dmFyIGI9Xy5zYSgieXQubG9nZ2luZy5lcnJvcnMubG9nIik7YiYmYihhLCJXQVJOSU5HIil9fTtpND1mdW5jdGlvbihhLGIpe2E9bmV3IG91YShhLGIpO3B1YShhKTtiPy5DSXx8aDQoYSl9OwpwdWE9ZnVuY3Rpb24oYSl7aWYoIWEudm0pe3ZhciBiPXttYXhBdHRlbXB0czo1LEZyOmEudHRsU2Vjb25kcyoxRTN9O2EuWGcueXRjc2k/LnRpY2s/LigicG90X2lzdCIpO2Eudm09YS5Icyh7b2Q6YS5vZCxuZzp7ZGlzYWJsZTpfLngoImh0bWw1X3dlYl9wb19kaXNhYmxlX3JlbW90ZV9sb2dnaW5nIiksbWI6ImFHSWYiLFN2OnpyYSgpLEt5Ol8ueCgid3BvX2Rpc19sZmRtcyIpPzA6MUUzLElnOmQ9Pnt2YXIgZT1qNC5nZXQoZCk7ZXx8KGU9bmV3IHF1YShkKSxlPW5ldyBUMShlKSxqNC5zZXQoZCxlKSk7cmV0dXJuIGV9fSxMZzpiLHN4OmEuYmdDaGFsbGVuZ2UsRWo6ZzR9KTthLmo9RGF0ZS5ub3coKTtmMihhLnZtLCgpPT57YS5qPURhdGUubm93KCl9KTthLlhnLmJnZXZtYz17cDooKT0+e2Eudm0/LnBhdXNlKCl9LHI6KCk9PnthLnZtPy5yZXN1bWUoKX0sY3I6KCk9PmEudm0/LmNoZWNrRm9yUmVmcmVzaCgpPz9Qcm9taXNlLnJlc29sdmUoKX07a3NhKGEudm0sYXN5bmMoKT0+aDQoYSksClYyKCkpO3ZhciBjPWEudi5iaW5kKGEpO2EueW0mJmEudHRsU2Vjb25kcz4wJiZhLnltLnRoZW4oZD0+e2QubGlzdGVuKCJwdWJsaWN5dG5ldHdvcmtzdGF0dXMtb25saW5lIixjKX0pO2EuR3IoYyl9fTtoND1mdW5jdGlvbihhKXtpZihhLm8pcmV0dXJuIGEubztpZighYS52bSl0aHJvdyBFcnJvcigiVGUiKTthLm89bmV3IHJ1YSh7dm06YS52bSxvZDphLm9kLFFuOiEwLG9uRXJyb3I6ZzQsTGc6YS5Kc30pO3JldHVybiBhLm99O2s0PWZ1bmN0aW9uKGEpe3RyeXtsZXQgYj1KU09OLnBhcnNlKGEpO2lmKGIuYmdDaGFsbGVuZ2UpcmV0dXJuIGJ9Y2F0Y2goYil7fX07CnN1YT1mdW5jdGlvbihhPXdpbmRvdyl7dmFyIGI9e30sYz1hLnl0QXRSO2I/LmtxPy5EcigpO2lmKGMpe2lmKGM9azQoYykpYj8ua3E/LnpnKCJTVUNDRVNTIiksaTQoYyxiKTthLnl0QXRSPXZvaWQgMH1lbHNlIGEueXRBdFJDPWQ9PntpZihkPWs0KGQpKWI/LmtxPy56ZygiU1VDQ0VTUyIpLGk0KGQsYiksYS55dEF0UkM9dm9pZCAwfX07CnR1YT1mdW5jdGlvbihhLGIsYyxkLGUsZil7Yz8oYS5TKDIpLEgwKHkwKGMpLCgpPT57d2luZG93LnRyYXlyaWRlP2w0KGEsZCxlKTooYS5TKDMpLEUwKGMpLF8uSXAobmV3IF8uWGooIkJMOlVMQiIsYCR7Y31gKSkpfSxmKSk6Yj8oZj1fLkNkKCJTQ1JJUFQiKSxiIGluc3RhbmNlb2YgXy5qYj9fLm5iKGYsYik6Zi50ZXh0Q29udGVudD1iLGYubm9uY2U9Xy5pYihkb2N1bWVudCksZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChmKSxkb2N1bWVudC5oZWFkLnJlbW92ZUNoaWxkKGYpLHdpbmRvdy50cmF5cmlkZT9sNChhLGQsZSk6KGEuUyg0KSxfLklwKG5ldyBfLlhqKCJCTDpVTEJKIikpKSk6Xy5JcChuZXcgXy5YaigiQkw6VUxWIikpfTsKbDQ9ZnVuY3Rpb24oYSxiLGMpe2EuUyg1KTt2YXIgZD0hIWEuaiYmdXVhLmluY2x1ZGVzKF8uUGIoYS5qKXx8IiIpO3RyeXtsZXQgZT1uZXcgZDIoe3Byb2dyYW06YixnbG9iYWxOYW1lOiJ0cmF5cmlkZSIsbmc6e2Rpc2FibGU6IV8ueCgiYXR0X3dlYl9yZWNvcmRfbWV0cmljcyIpfHwhXy54KCJhdHRfc2tpcF9tZXRyaWNzX2Zvcl9jb29raWVsZXNzX2RvbWFpbnNfa3MiKSYmZCxtYjoiYUdJZiJ9fSk7ZS5DZy50aGVuKCgpPT57YS5TKDYpO2MmJmMoYil9KTthLm8oZSl9Y2F0Y2goZSl7YS5TKDcpLGUgaW5zdGFuY2VvZiBFcnJvciYmXy5JcChlKX19O200PWZ1bmN0aW9uKCl7dmFyIGE9Xy5zYSgieXQuYWJ1c2UucGxheWVyQXR0TG9hZGVyIik7cmV0dXJuIGEmJlsiYmd2bWEiLCJiZ3ZtYiIsImJndm1jIl0uZXZlcnkoYj0+YiBpbiBhKT9hOm51bGx9Owp2dWE9ZnVuY3Rpb24oKXt2YXIgYT1fLncoIkNMSUVOVF9FWFBFUklNRU5UX0VWRU5UUyIpO2lmKGEpe3ZhciBiPW5yYSgpO2ZvcihsZXQgYyBvZiBhKWIoYykmJl8uRXAoImdlbmVyaWNDbGllbnRFeHBlcmltZW50RXZlbnQiLHtldmVudFR5cGU6Y30pO2RlbGV0ZSBfLlBpLkNMSUVOVF9FWFBFUklNRU5UX0VWRU5UU319O3d1YT1mdW5jdGlvbihhLGIsYyl7aWYoYS5qKXtsZXQgZD1fLlFiKF8uUHkoYiwia2V5IikpfHwiL1VOS05PV05fUEFUSCI7YS5qLnN0YXJ0KGQpfWE9YztfLngoInd1Z19uZXR3b3JraW5nX2d6aXBfcmVxdWVzdCIpJiYoYT1GcmEoYykpO3JldHVybiBuZXcgd2luZG93LlJlcXVlc3QoYixhKX07Cm80PWFzeW5jIGZ1bmN0aW9uKGEsYixjLGQsZSxmKXtpZihmPy5hYm9ydGVkKXJldHVybiBiLmNhbmNlbCgpLGQ7dmFyIHt2YWx1ZTpoLGRvbmU6a309YXdhaXQgYi5yZWFkKCk7aWYoaylyZXR1cm4gYS5qPy5zdWNjZXNzKCksZDt0cnl7dmFyIGw9Yy5wYXJzZShoKX1jYXRjaChtKXt0aHJvdyBuZXcgbjQoIkZhaWxlZCB0byBwYXJzZSBzdHJlYW1pbmcgcmVzcG9uc2UiLGgpO31pZihsIT1udWxsKWZvcihsZXQgbSBvZiBsKWQucHVzaChtKSxlPy4obSk7cmV0dXJuIG80KGEsYixjLGQsZSxmKX07eHVhPWZ1bmN0aW9uKCl7dmFyIGE9bmF2aWdhdG9yO3JldHVybiBuZXcgUHJvbWlzZSgoYixjKT0+e2Eud2Via2l0VGVtcG9yYXJ5U3RvcmFnZT8ucXVlcnlVc2FnZUFuZFF1b3RhP2Eud2Via2l0VGVtcG9yYXJ5U3RvcmFnZS5xdWVyeVVzYWdlQW5kUXVvdGEoKGQsZSk9PntiKHt1c2FnZTpkLHF1b3RhOmV9KX0sZD0+e2MoZCl9KTpjKEVycm9yKCJWZSIpKX0pfTsKeXVhPWZ1bmN0aW9uKGEsYil7cDQuamMoKS5lc3RpbWF0ZSgpLnRoZW4oYz0+e2EuaigiaWRiUXVvdGFFeGNlZWRlZCIsey4uLmIsaXNTdzpzZWxmLmRvY3VtZW50PT09dm9pZCAwLGlzSWZyYW1lOnNlbGYhPT1zZWxmLnRvcCxkZXZpY2VTdG9yYWdlVXNhZ2VNYnl0ZXM6cTQoYz8udXNhZ2UpLGRldmljZVN0b3JhZ2VRdW90YU1ieXRlczpxNChjPy5xdW90YSl9KX0pfTtxND1mdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0idW5kZWZpbmVkIj8iLTEiOlN0cmluZyhNYXRoLmNlaWwoYS8xMDQ4NTc2KSl9Owp6dWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz17ZXJyb3JTZXZlcml0eTpiLmZoLnRvU3RyaW5nKCksd2l6RmVhdHVyZUZsYWdzOk9iamVjdC5lbnRyaWVzKGIuQWwpLmpvaW4oIlxuIil9O2I9Yi5maDtiPT09Mz9fLkdwKGEsIkVSUk9SIix2b2lkIDAsdm9pZCAwLHZvaWQgMCxjKTpiPT09MiYmXy5HcChhLCJXQVJOSU5HIix2b2lkIDAsdm9pZCAwLHZvaWQgMCxjKTtfLngoImNvd19pZl9lcnJvcnNfaW5fcG9wdXAiKSYmYj09PTMmJmEubWVzc2FnZS5pbmRleE9mKCI8SWY+IikhPT0tMSYmd2luZG93LmFsZXJ0KGEubWVzc2FnZSl9OwpBdWE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPW51bGw7YyBpbnN0YW5jZW9mIEhUTUxFbGVtZW50P2Q9YzohXy54KCJsb2dnaW5nX25lc3RlZF9jb21wb25lbnRfa3MiKSYmQXJyYXkuaXNBcnJheShjKSYmYy5sZW5ndGg9PT0xJiZBcnJheS5pc0FycmF5KGNbMF0pJiZjWzBdLmxlbmd0aD09PTEmJmNbMF1bMF1pbnN0YW5jZW9mIEhUTUxFbGVtZW50JiYoZD1jWzBdWzBdKTthLmNvbXBvbmVudFR5cGUhPT1fLkt2JiZkJiZiJiYhXy54KCJjb3dfbG9nZ2luZ19pbl9jb21wb25lbnRfd3JhcHBlciIpJiZfLnV5KGQsYiwhMCl9O0J1YT1mdW5jdGlvbigpe18ueCgiY293X2xvZ2dpbmdfaW5fY29tcG9uZW50X3dyYXBwZXIiKT8oXy5Ddj0oYSxiKT0+e2IgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmXy51eShiLGEsITApfSxfLnZ2PSgpPT57fSk6KF8uQ3Y9KCk9Pnt9LF8udnY9QXVhKX07CkR1YT1mdW5jdGlvbigpe3ZhciBhPV8ueSgpO18uSnooYSx7amE6cjQsUGE6czR9KTtfLkp6KGEse2phOnQ0LFBhOl8ubm19KTt2YXIgYj12My5qYygpLGM9YS5yZXNvbHZlKHQ0KSxkPWEucmVzb2x2ZShyNCksZT17fTtiJiYoZS5jbGllbnRfbG9jYXRpb249Yik7Xy5KeihhLHtqYTp1NCxNYjpDdWF9KTtfLkp6KGEse2phOl8uSnksTWI6ZX0pO18ueCgibWF3X2VuYWJsZV9uZXR3b3JrX21hY2hpbmUiKSYmZnVhKCk7VnRhKGEucmVzb2x2ZSh1NCksZCxjLGEucmVzb2x2ZShfLkp5KSk7Xy5KeihhLHtqYTpfLkl5LE1iOnozLmluc3RhbmNlfSl9O0d1YT1mdW5jdGlvbihhLGIsYyxkPSgpPT57fSxlPW51bGwpe2I9bmV3IEV1YShhLGIsYyxkLGUpO0Z1YS5zZXQoYSxiKX07CnY0PWZ1bmN0aW9uKGEpe2lmKCFhLm9uUmVhZHlQYXRjaEFwcGxpZWQpe3ZhciBiPWEuYWRkRXZlbnRMaXN0ZW5lcjthLmFkZEV2ZW50TGlzdGVuZXI9KGMsZCk9PntjPT09Im9uUmVhZHkiP1Byb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PntkKGEpfSk6Yi5jYWxsKGEsYyxkKX07YS5vblJlYWR5UGF0Y2hBcHBsaWVkPSEwfX07SnVhPWZ1bmN0aW9uKGEpe2lmKF8uc2EoInl0LnBsYXllci5BcHBsaWNhdGlvbi5jcmVhdGUiKSlQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57dzQoYSl9KTtlbHNle0h1YShfLmh3KGEud2ViUGxheWVyQ29udGV4dENvbmZpZy50cnVzdGVkSnNVcmwpLCgpPT57dzQoYSl9LCgpPT57YS5pYSgpfHxhLkVqKCl9KTtsZXQgYj1hLndlYlBsYXllckNvbnRleHRDb25maWcudHJ1c3RlZENzc1VybDtiJiZJdWEoXy5odyhiKSl9fTsKdzQ9ZnVuY3Rpb24oYSl7aWYoIWEuaWEoKSl7dmFyIGI9Xy5zYSgieXQucGxheWVyLkFwcGxpY2F0aW9uLmNyZWF0ZSIpO3RyeXthLmFwaT1iKGEuY29udGFpbmVyLHthcmdzOmEucGxheWVyVmFyc30sYS53ZWJQbGF5ZXJDb250ZXh0Q29uZmlnLHZvaWQgMCkuZ2V0SW50ZXJuYWxBcGkoKSx2NChhLmFwaSksYS5hcGkuaXNSZWFkeT0oKT0+ITAsYS5qKGEuYXBpKX1jYXRjaChjKXt0aHJvdyBhLkVqKCksYzt9fX07SXVhPWZ1bmN0aW9uKGEpe3ZhciBiPWB5dHAtJHthLnRvU3RyaW5nKCl9YDtpZighZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYikpe3ZhciBjPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpbmsiKTtjLmlkPWI7Xy5xYihjLGEsInN0eWxlc2hlZXQiKTsoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXXx8ZG9jdW1lbnQuYm9keSkuYXBwZW5kQ2hpbGQoYyl9fTsKSHVhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1geXRwLSR7YS50b1N0cmluZygpfWAsZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChkKTtpZihlKWUuZGF0YXNldC5mYWlsZWQ/YygpOmUuZGF0YXNldC5sb2FkZWQ/YigpOihlLmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIiwoKT0+e2MoKX0pLGUuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsKCk9PntiKCl9KSk7ZWxzZXt2YXIgZj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtmLmlkPWQ7Zi5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsKCk9PntmLmRhdGFzZXQuZmFpbGVkPSJ0cnVlIjtjKCl9KTtmLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCgpPT57Zi5kYXRhc2V0LmxvYWRlZD0idHJ1ZSI7YigpfSk7Xy5vYihmLGEpO2E9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXXx8ZG9jdW1lbnQuYm9keTthLmluc2VydEJlZm9yZShmLGEuZmlyc3RDaGlsZCl9fTsKS3VhPWZ1bmN0aW9uKGEpe18udygiRU5BQkxFX1dFQlZJRVdfQVBJIikmJndpbmRvdy55dHdlYnZpZXdwbGF5ZXImJih3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsYj0+e3RyeXtsZXQgZD1KU09OLnBhcnNlKGIuZGF0YSksZT1kLm1ldGhvZE5hbWUsZj1kLmFyZ3N8fFtdO2E6e2ZvcihsZXQgaCBvZiBmKWlmKFN0cmluZyhoKS5pbmNsdWRlcygiamF2YXNjcmlwdDoiKSl7dmFyIGM9ITA7YnJlYWsgYX1jPSExfWlmKGMpdGhyb3cgRXJyb3IoIldlYCIrZSsiYCIrZik7aWYoZSYmdHlwZW9mIGFbZV09PT0iZnVuY3Rpb24iKWFbZV0oLi4uZik7ZWxzZSB0aHJvdyBFcnJvcigiWGVgIitlKTt9Y2F0Y2goZCl7Xy5HcChkKX19KSxhLmFkZEV2ZW50TGlzdGVuZXIoIm9uUmVhZHkiLCgpPT57d2luZG93Lnl0d2Vidmlld3BsYXllci5wb3N0TWVzc2FnZShKU09OLnN0cmluZ2lmeSh7dHlwZToib25QbGF5ZXJSZWFkeSJ9KSl9KSxhLmFkZEV2ZW50TGlzdGVuZXIoIm9uU3RhdGVDaGFuZ2UiLApiPT57d2luZG93Lnl0d2Vidmlld3BsYXllci5wb3N0TWVzc2FnZShKU09OLnN0cmluZ2lmeSh7dHlwZToib25TdGF0ZUNoYW5nZSIsc3RhdGU6Yn0pKX0pLGEuYWRkRXZlbnRMaXN0ZW5lcigib25FcnJvciIsYj0+e3dpbmRvdy55dHdlYnZpZXdwbGF5ZXIucG9zdE1lc3NhZ2UoSlNPTi5zdHJpbmdpZnkoe3R5cGU6Im9uRXJyb3IiLGVycm9yQ29kZTpifSkpfSkpfTt4ND1mdW5jdGlvbihhKXtyZXR1cm4oYS5zZWFyY2goImN1ZSIpPT09MHx8YS5zZWFyY2goImxvYWQiKT09PTApJiZhIT09ImxvYWRNb2R1bGUifTsKeTQ9ZnVuY3Rpb24oYSxiLGMpe2lmKHR5cGVvZiBhPT09InN0cmluZyIpcmV0dXJue3ZpZGVvSWQ6YSxzdGFydFNlY29uZHM6YixzdWdnZXN0ZWRRdWFsaXR5OmN9O2I9e307Zm9yKGxldCBlIG9mIEx1YSlhW2VdJiYoYltlXT1hW2VdKTtpZihhPWEuZW1iZWRDb25maWd8fGEuZW1iZWRfY29uZmlnKXthOmlmKHR5cGVvZiBhPT09InN0cmluZyIpdmFyIGQ9YTtlbHNle2lmKF8uQWEoYSkpdHJ5e2Q9SlNPTi5zdHJpbmdpZnkoYSk7YnJlYWsgYX1jYXRjaChlKXtjb25zb2xlLmVycm9yKCJJbnZhbGlkIGVtYmVkQ29uZmlnIEpTT04iLGUpfWQ9dm9pZCAwfWIuZW1iZWRfY29uZmlnPWR9cmV0dXJuIGJ9Owp6ND1mdW5jdGlvbihhLGIsYyxkKXtpZihfLkFhKGEpJiYhQXJyYXkuaXNBcnJheShhKSl7Yj0icGxheWxpc3QgbGlzdCBsaXN0VHlwZSBpbmRleCBzdGFydFNlY29uZHMgc3VnZ2VzdGVkUXVhbGl0eSIuc3BsaXQoIiAiKTtjPXt9O2ZvcihkPTA7ZDxiLmxlbmd0aDtkKyspe2xldCBlPWJbZF07YVtlXSYmKGNbZV09YVtlXSl9cmV0dXJuIGN9Yj17aW5kZXg6YixzdGFydFNlY29uZHM6YyxzdWdnZXN0ZWRRdWFsaXR5OmR9O3R5cGVvZiBhPT09InN0cmluZyImJmEubGVuZ3RoPT09MTY/Yi5saXN0PSJQTCIrYTpiLnBsYXlsaXN0PWE7cmV0dXJuIGJ9O0E0PWZ1bmN0aW9uKGEsYixjKXthLkIucHVzaCh7ZXZlbnRUeXBlOmIsbGlzdGVuZXI6Y30pO2EuYXBpLmFkZEV2ZW50TGlzdGVuZXIoYixjKX07CkQ0PWZ1bmN0aW9uKGEpe2lmKGEuailpZihhLnYpYS5zZW5kTWVzc2FnZSgiYWxyZWFkeUluaXRpYWxpemVkIik7ZWxzZSBpZihhLk0pe2Eudj0hMDthLk09ITE7YS5zZW5kTWVzc2FnZSgiaW5pdGlhbERlbGl2ZXJ5IixCNChhKSk7YS5zZW5kTWVzc2FnZSgib25SZWFkeSIpO18uQXEoImVwX2luaXRfYXIiKTtmb3IobGV0IGIgb2YgYS5VKUM0KGEsYik7YS5VPVtdfX07QzQ9ZnVuY3Rpb24oYSxiLGM9YS5qKXtpZihjKXtiLmNoYW5uZWw9IndpZGdldCI7YS5zZXNzaW9uSWQmJihiLmlkPWEuc2Vzc2lvbklkKTt0cnl7bGV0IGQ9SlNPTi5zdHJpbmdpZnkoYik7Yy5wb3N0TWVzc2FnZShkLGEudGFyZ2V0T3JpZ2luKX1jYXRjaChkKXtfLklwKGQpfX19OwpCND1mdW5jdGlvbihhKXtpZighYS5hcGkpcmV0dXJuIG51bGw7dmFyIGI9YS5hcGkuZ2V0QXBpSW50ZXJmYWNlKCk7Xy54YihiLCJnZXRWaWRlb0RhdGEiKTt2YXIgYz17YXBpSW50ZXJmYWNlOmJ9O2ZvcihsZXQgZT0wLGY9Yi5sZW5ndGg7ZTxmO2UrKyl7bGV0IGg9YltlXTtpZihoLnNlYXJjaCgiZ2V0Iik9PT0wfHxoLnNlYXJjaCgiaXMiKT09PTApe3ZhciBkPTA7aC5zZWFyY2goImdldCIpPT09MD9kPTM6aC5zZWFyY2goImlzIik9PT0wJiYoZD0yKTtkPWguY2hhckF0KGQpLnRvTG93ZXJDYXNlKCkraC5zdWJzdHJpbmcoZCsxKTt0cnl7bGV0IGs9YS5hcGlbaF0oKTtjW2RdPWt9Y2F0Y2goayl7fX19Yy52aWRlb0RhdGE9YS5hcGkuZ2V0VmlkZW9EYXRhKCk7Yy5jdXJyZW50VGltZUxhc3RVcGRhdGVkXz1EYXRlLm5vdygpLzFFMztyZXR1cm4gY307RTQ9ZnVuY3Rpb24oYSxiKXthLnNlbmRNZXNzYWdlKCJpbmZvRGVsaXZlcnkiLGIpfTsKTXVhPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gZD0+e2I9PT0ib25FcnJvciI/YS5hcGkubG9nQXBpQ2FsbChgJHtifSBpbnZvY2F0aW9uYCxjLGQpOmEuYXBpLmxvZ0FwaUNhbGwoYCR7Yn0gaW52b2NhdGlvbmAsYyk7YS5zZW5kTWVzc2FnZShiLGQpfX07RjQ9ZnVuY3Rpb24oYSxiLGMpe2EuaWEoKXx8KGI9e2lkOmEuaWQsY29tbWFuZDpifSxjJiYoYi5kYXRhPWMpLE51YS5wb3N0TWVzc2FnZShKU09OLnN0cmluZ2lmeShiKSxhLm9yaWdpbikpfTtPdWE9ZnVuY3Rpb24oYSxiKXtzd2l0Y2goYSl7Y2FzZSAib25SZWFkeSI6cmV0dXJuO2Nhc2UgIm9uU3RhdGVDaGFuZ2UiOnJldHVybntwbGF5ZXJTdGF0ZTpifTtjYXNlICJvblBsYXliYWNrUXVhbGl0eUNoYW5nZSI6cmV0dXJue3BsYXliYWNrUXVhbGl0eTpifTtjYXNlICJvblBsYXliYWNrUmF0ZUNoYW5nZSI6cmV0dXJue3BsYXliYWNrUmF0ZTpifTtjYXNlICJvbkVycm9yIjpyZXR1cm57ZXJyb3JDb2RlOmJ9fWlmKGIhPW51bGwpcmV0dXJue3ZhbHVlOmJ9fTsKUHVhPWZ1bmN0aW9uKGEsYil7c3dpdGNoKGEpe2Nhc2UgImxvYWRWaWRlb0J5SWQiOnJldHVyblt5NChiKV07Y2FzZSAiY3VlVmlkZW9CeUlkIjpyZXR1cm5beTQoYildO2Nhc2UgImxvYWRWaWRlb0J5UGxheWVyVmFycyI6cmV0dXJuW2JdO2Nhc2UgImN1ZVZpZGVvQnlQbGF5ZXJWYXJzIjpyZXR1cm5bYl07Y2FzZSAibG9hZFBsYXlsaXN0IjpyZXR1cm5bejQoYildO2Nhc2UgImN1ZVBsYXlsaXN0IjpyZXR1cm5bejQoYildO2Nhc2UgInNlZWtUbyI6cmV0dXJuW2Iuc2Vjb25kcyxiLmFsbG93U2Vla0FoZWFkXTtjYXNlICJwbGF5VmlkZW9BdCI6cmV0dXJuW2IuaW5kZXhdO2Nhc2UgInNldFZvbHVtZSI6cmV0dXJuW2Iudm9sdW1lXTtjYXNlICJzZXRQbGF5YmFja1F1YWxpdHkiOnJldHVybltiLnN1Z2dlc3RlZFF1YWxpdHldO2Nhc2UgInNldFBsYXliYWNrUmF0ZSI6cmV0dXJuW2Iuc3VnZ2VzdGVkUmF0ZV07Y2FzZSAic2V0TG9vcCI6cmV0dXJuW2IubG9vcFBsYXlsaXN0c107Y2FzZSAic2V0U2h1ZmZsZSI6cmV0dXJuW2Iuc2h1ZmZsZVBsYXlsaXN0XTsKY2FzZSAiZ2V0T3B0aW9ucyI6cmV0dXJuW2IubW9kdWxlXTtjYXNlICJnZXRPcHRpb24iOnJldHVybltiLm1vZHVsZSxiLm9wdGlvbl07Y2FzZSAic2V0T3B0aW9uIjpyZXR1cm5bYi5tb2R1bGUsYi5vcHRpb24sYi52YWx1ZV07Y2FzZSAiaGFuZGxlR2xvYmFsS2V5RG93biI6cmV0dXJuW2Iua2V5Q29kZSxiLnNoaWZ0S2V5LGIuY3RybEtleSxiLmFsdEtleSxiLm1ldGFLZXksYi5rZXksYi5jb2RlXX1yZXR1cm5bXX07ClF1YT1mdW5jdGlvbihhLGIpe3N3aXRjaChhKXtjYXNlICJpc011dGVkIjpyZXR1cm57bXV0ZWQ6Yn07Y2FzZSAiZ2V0Vm9sdW1lIjpyZXR1cm57dm9sdW1lOmJ9O2Nhc2UgImdldFBsYXliYWNrUmF0ZSI6cmV0dXJue3BsYXliYWNrUmF0ZTpifTtjYXNlICJnZXRBdmFpbGFibGVQbGF5YmFja1JhdGVzIjpyZXR1cm57YXZhaWxhYmxlUGxheWJhY2tSYXRlczpifTtjYXNlICJnZXRWaWRlb0xvYWRlZEZyYWN0aW9uIjpyZXR1cm57dmlkZW9Mb2FkZWRGcmFjdGlvbjpifTtjYXNlICJnZXRQbGF5ZXJTdGF0ZSI6cmV0dXJue3BsYXllclN0YXRlOmJ9O2Nhc2UgImdldEN1cnJlbnRUaW1lIjpyZXR1cm57Y3VycmVudFRpbWU6Yn07Y2FzZSAiZ2V0UGxheWJhY2tRdWFsaXR5IjpyZXR1cm57cGxheWJhY2tRdWFsaXR5OmJ9O2Nhc2UgImdldEF2YWlsYWJsZVF1YWxpdHlMZXZlbHMiOnJldHVybnthdmFpbGFibGVRdWFsaXR5TGV2ZWxzOmJ9O2Nhc2UgImdldER1cmF0aW9uIjpyZXR1cm57ZHVyYXRpb246Yn07CmNhc2UgImdldFZpZGVvVXJsIjpyZXR1cm57dmlkZW9Vcmw6Yn07Y2FzZSAiZ2V0VmlkZW9FbWJlZENvZGUiOnJldHVybnt2aWRlb0VtYmVkQ29kZTpifTtjYXNlICJnZXRQbGF5bGlzdCI6cmV0dXJue3BsYXlsaXN0OmJ9O2Nhc2UgImdldFBsYXlsaXN0SW5kZXgiOnJldHVybntwbGF5bGlzdEluZGV4OmJ9O2Nhc2UgImdldE9wdGlvbnMiOnJldHVybntvcHRpb25zOmJ9O2Nhc2UgImdldE9wdGlvbiI6cmV0dXJue29wdGlvbjpifX19O1J1YT1mdW5jdGlvbigpe3JldHVybiBHNC5pc0luaXRpYWxpemVkKCl9O1N1YT1mdW5jdGlvbihhPXt9KXtyZXR1cm4gRzQuaW52b2tlKGEpfTtUdWE9ZnVuY3Rpb24oKXtpZihfLncoIkVOQUJMRV9KU19BUEkiKSl7dmFyIGE9Yj0+e0g0PWI7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLGEpfTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsYSl9fTsKVXVhPWZ1bmN0aW9uKCl7Xy5BcSgiZXBfaW5pdF93ZXMiKTt2YXIgYT1fLncoIlBMQVlFUl9DT05GSUciKTtpZighYSl7dmFyIGI9Xy53KCJQTEFZRVJfVkFSUyIpO2ImJihhPXthcmdzOmJ9KX1RMighMCk7YS5hcmdzLnBzPT09Imd2biImJihkb2N1bWVudC5ib2R5LnN0eWxlLmJhY2tncm91bmRDb2xvcj0idHJhbnNwYXJlbnQiKTthLmF0dHJzfHwoYS5hdHRycz17d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsaWQ6InZpZGVvLXBsYXllciJ9KTtiPWRvY3VtZW50LnJlZmVycmVyO3dpbmRvdyE9PXdpbmRvdy50b3AmJmImJmIhPT1kb2N1bWVudC5VUkwmJihhLmFyZ3MubG9hZGVyVXJsPWIpO2I9Xy53KCJXRUJfUExBWUVSX0NPTlRFWFRfQ09ORklHUyIpPy5XRUJfUExBWUVSX0NPTlRFWFRfQ09ORklHX0lEX0VNQkVEREVEX1BMQVlFUjtpZighYi5zZXJpYWxpemVkRm9yY2VkRXhwZXJpbWVudElkcyl7bGV0IGM9YTAod2luZG93LmxvY2F0aW9uLmhyZWYpO2MuZm9yY2VkX2V4cGVyaW1lbnRzJiYKKGIuc2VyaWFsaXplZEZvcmNlZEV4cGVyaW1lbnRJZHM9Yy5mb3JjZWRfZXhwZXJpbWVudHMpfWEuYXJncz8uYXV0b3BsYXk/dDAoIndhdGNoIixbInBicyIsInBidSIsInBicCJdKTphLmFyZ3MmJnd0YShhLmFyZ3MpP3QwKCJ2aWRlb19wcmV2aWV3IixbIm9sIl0pOnQwKCJlbWJlZF9ub192aWRlbyIsWyJlcF9pbml0X2FyIl0pO18ueCgiZW1iZWRzX3VzZV9wbGF5ZXJfaW5zdGFuY2VzX2xpYnJhcnkiKXx8Xy53KCJFTkFCTEVfV0VCVklFV19BUEkiKT8oR3VhKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwbGF5ZXIiKSxiLGM9PntfLncoIkVOQUJMRV9XRUJWSUVXX0FQSSIpPyhjPWMuZ2V0VHJ1c3RlZEFwaSgpLHY0KGMpLEt1YShjKSk6KEk0KGMpLEo0KGMpKX0sKCk9Pnt0aHJvdyBFcnJvcigiWWUiKTt9LGEuYXJncyksXy53KCJFTkFCTEVfV0VCVklFV19BUEkiKXx8SzQoKSxfLkFxKCJlcF9pbml0X3dlZSIpKTooYT1jc2EoYSxiKSxJNChhKSxLNCgpLF8uQXEoImVwX2luaXRfd2VlIiksCko0KGEpKX07STQ9ZnVuY3Rpb24oYSl7TDQ9YTtMNC5hZGRFdmVudExpc3RlbmVyKCJvblZpZGVvRGF0YUNoYW5nZSIsTTQpO0w0LmFkZEV2ZW50TGlzdGVuZXIoIm9uUmVhZHkiLFZ1YSk7YT1fLncoIlBPU1RfTUVTU0FHRV9JRCIsInBsYXllciIpO3ZhciBiPV8udygiUE9TVF9NRVNTQUdFX09SSUdJTiIpO18udygiRU5BQkxFX0pTX0FQSSIpP040PW5ldyBXdWE6Xy53KCJFTkFCTEVfUE9TVF9BUEkiKSYmdHlwZW9mIGE9PT0ic3RyaW5nIiYmdHlwZW9mIGI9PT0ic3RyaW5nIiYmKE40PW5ldyBYdWEoYSxiKSk7SDQ9dm9pZCAwfTsKSzQ9ZnVuY3Rpb24oKXtHdGEoKTtfLngoInl0aWRiX2NyZWF0ZV9sb2dnZXJfZW1iZWRfa2lsbHN3aXRjaCIpfHxCcmEoKTtPNC5qfHwoTzQuaj1uZXcgTzQpO080LmouaW5zdGFsbCh7Zmx1c2hfbG9nczp7Y2FsbGJhY2s6KCk9PntfLmJwKCl9fX0pO18uSWx8fEdyYSgpO0R1YSgpO18uamYucGIoKCk9PntfLnkoKS5yZXNvbHZlKF8uSXkpO2l1YSgpfSk7c2V0VGltZW91dCgoKT0+e18ueCgiYXR0bXVzaSIpJiZzdWEod2luZG93KTt2YXIgYT1fLnkoKS5yZXNvbHZlKF8uSW4oXy5JeSkpO2lmKGEpe2E9bmV3IFl1YShhKTt2YXIgYj17cHJlbG9hZDohXy54KCJlbmFibGVfcnRhX25waSIpLHpzOl8ueCgiYXR0bXVzaSIpfTtiPU9iamVjdC5hc3NpZ24oe3ByZWxvYWQ6ITB9LGIpO2xldCBkPWIuQUk/dm9pZCAwOm5ldyBfLk9zO1A0Lmluc3RhbmNlPW5ldyBQNChhLGIsZCk7YT1QNC5pbnN0YW5jZTtpZigoXy54KCJhdHRtdXNpIil8fF8ueCgiYXR0bXVzaXciKSkmJl8ueCgiYXR0bXVzaV91ZSIpKXthPQp7czphLkIuYmluZChhKSxpcjphLkQuYmluZChhKX07Yj13aW5kb3c7Yi5hdHRtcD1hO2lmKGIuYXR0bXEhPT12b2lkIDApZm9yKHZhciBjIG9mIGIuYXR0bXEpYyhhKTtiLmF0dG1xPXZvaWQgMH1lbHNlIGM9YS5CLmJpbmQoYSksXy5yYSgieXQuYWJhLmF0dCIsYyksYz1hLkQuYmluZChhKSxfLnJhKCJ5dC5hYmEuYXR0MiIsYyl9fSxfLnNqKCJhdHRfaW5pdF9kZWxheSIsMjAwKSk7Xy5ZaigoKT0+e2lmKF8ueCgiZW5hYmxlX3p3X3BpbmciKSl7dmFyIGE9Xy53KCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiLCJVTktOT1dOX0lOVEVSRkFDRSIpLGI9Ii9lc3RhYmxpc2hfenciO2lmKGE9PT0iV0VCX0VNQkVEREVEX1BMQVlFUiIpYj0iL2VtYmVkL2VzdGFibGlzaF96dyI7ZWxzZSBpZihhPT09IlRWSFRNTDUifHxhPT09IlRWSFRNTDVfU0lNUExZIiliPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS90di9lc3RhYmxpc2hfenciO18udygiQ09PS0lFTEVTUyIsITEpJiZhPT09IldFQl9FTUJFRERFRF9QTEFZRVIiPwooYT1uZXcgSGVhZGVycyxhLnNldCgiWC1Hb29nLVZpc2l0b3ItSWQiLF8udygiVklTSVRPUl9EQVRBIikpLGZldGNoKGIse21ldGhvZDoiR0VUIixtb2RlOiJuby1jb3JzIixoZWFkZXJzOmF9KSk6ZmV0Y2goYix7bWV0aG9kOiJHRVQiLG1vZGU6Im5vLWNvcnMiLGNyZWRlbnRpYWxzOiJpbmNsdWRlIn0pfX0pfTtadWE9ZnVuY3Rpb24oKXtRNCgpfTskdWE9ZnVuY3Rpb24oYSl7YS5wZXJzaXN0ZWR8fFE0KCl9OwpRND1mdW5jdGlvbigpe1NyYSgpO3ZhciBhPV8uSHooKSxiPV8uQ3ooMTE5KSxjPXdpbmRvdy5kZXZpY2VQaXhlbFJhdGlvPjE7ZG9jdW1lbnQuYm9keSYmXy5SdChkb2N1bWVudC5ib2R5LCJleHAtaW52ZXJ0LWxvZ28iKSYmKGMmJiFfLlJ0KGRvY3VtZW50LmJvZHksImludmVydGVkLWhkcGkiKT9fLlN0KGRvY3VtZW50LmJvZHksImludmVydGVkLWhkcGkiKTohYyYmXy5SdChkb2N1bWVudC5ib2R5LCJpbnZlcnRlZC1oZHBpIikmJl8uVHQoZG9jdW1lbnQuYm9keSwiaW52ZXJ0ZWQtaGRwaSIpKTtiIT1jJiYoXy5EeigxMTksYyksYS5zYXZlKCkpfTtNND1mdW5jdGlvbigpe1I0KCl9O1Z1YT1mdW5jdGlvbigpe18uQXEoImVwX2luaXRfcHIiKTtSNCgpfTtSND1mdW5jdGlvbigpe3ZhciBhPUw0LmdldFZpZGVvRGF0YSgxKTthPWEudGl0bGU/YS50aXRsZSsiIC0gWW91VHViZSI6IllvdVR1YmUiO2RvY3VtZW50LnRpdGxlIT09YSYmKGRvY3VtZW50LnRpdGxlPWEpfTsKUzQ9ZnVuY3Rpb24oKXtMNCYmTDQuc2VuZEFiYW5kb25tZW50UGluZyYmTDQuc2VuZEFiYW5kb25tZW50UGluZygpO18udygiUExfQVRUIikmJkc0LmRpc3Bvc2UoKTtfLk10KCQyKTskMi5sZW5ndGg9MDtFMChaMi50b1N0cmluZygpKTtZMj0hMTtfLlFpKCJEQ0xLU1RBVCIsMCk7Xy4kZChONCk7TDQmJihMNC5yZW1vdmVFdmVudExpc3RlbmVyKCJvblZpZGVvRGF0YUNoYW5nZSIsTTQpLEw0LmRlc3Ryb3koKSxMND1udWxsKX07YXZhPWZ1bmN0aW9uKGEpe18ueCgiZW1iZWRzX3dlYl9lbmFibGVfZGlzcG9zZV9wbGF5ZXJfaWZfcGFnZV9ub3RfY2FjaGVkX2tpbGxzd2l0Y2giKT9TNCgpOmEucGVyc2lzdGVkfHxTNCgpfTsKYnZhPWZ1bmN0aW9uKCl7VDR8fChfLmR3KHtKaShhKXthLnByb3BzLmRhdGEmJihhLmVsLmRhdGE9YS5wcm9wcy5kYXRhKX0sS2koYSxiLGMpe2EuZWw/Yi5kYXRhIT09Yy5kYXRhJiYoYS5lbC5kYXRhPWMuZGF0YSk6Xy5JcChuZXcgXy5YaigiSURPTSBjb21wb25lbnQgZWwgaXMgbnVsbCIsYS5qPy5aYykpfX0pLFQ0PSEwKX07Y3ZhPXtFSzohMH07ZHZhPWNsYXNze2NvbnN0cnVjdG9yKGEpe3ZhciBiPVU0O3RoaXMuaj0xNzUyMzczNzU7dGhpcy5jdG9yPWE7dGhpcy5pc1JlcGVhdGVkPTA7dGhpcy5vPV8uTng7dGhpcy5kZWZhdWx0VmFsdWU9dm9pZCAwO3RoaXMudj1iLm1lc3NhZ2VJZCE9bnVsbD9fLnd6OnZvaWQgMH1yZWdpc3Rlcigpe18ucGModGhpcyl9fTsKZHJhPXt0b1N0cmluZzpmdW5jdGlvbihhKXt2YXIgYj1bXSxjPTA7YS09LTIxNDc0ODM2NDg7YltjKytdPSJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIi5jaGFyQXQoYSU1Mik7Zm9yKGE9TWF0aC5mbG9vcihhLzUyKTthPjA7KWJbYysrXT0iYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkiLmNoYXJBdChhJTYyKSxhPU1hdGguZmxvb3IoYS82Mik7cmV0dXJuIGIuam9pbigiIil9fTtBMz17aWRlbnRpdHlUeXBlOiJVTkFVVEhFTlRJQ0FURURfSURFTlRJVFlfVFlQRV9VTktOT1dOIn07SVo9MDtKWj0wO05aPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjKXt0aGlzLmJ1ZmZlcj1hO2lmKGMmJiFiKXRocm93IEVycm9yKCk7fX07T1o9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLm89YT4+PjA7dGhpcy5qPWI+Pj4wfX07ClRaPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5vPWE+Pj4wO3RoaXMuaj1iPj4+MH19O2xfPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuaj1hfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuan19O0VfPV8ueWMoKTtvcmE9L14tPyhbMS05XVswLTldKnwwKShcLlswLTldKyk/JC87VjQ9Xy5seihPXyxfLkpyKTtldmE9Xy5seihPXyxfLkpyKTtXND1fLmx6KGZ1bmN0aW9uKGEsYixjKXtiPXFfKGIpO2IhPW51bGwmJihfLlp5KGEsYyw1KSxhPWEuaixjPU5ffHwoTl89bmV3IERhdGFWaWV3KG5ldyBBcnJheUJ1ZmZlcig4KSkpLGMuc2V0RmxvYXQzMigwLCtiLCEwKSxKWj0wLElaPWMuZ2V0VWludDMyKDAsITApLGVfKGEsSVopKX0sXy5Jcik7WDQ9Xy5seihQXyxfLkZyKTtmdmE9Xy5seihQXyxfLkZyKTsKWTQ9Xy5seihmdW5jdGlvbihhLGIsYyl7Yj1BXyhiKTtpZihiIT1udWxsJiYoZ18oYiksYiE9bnVsbCkpc3dpdGNoKF8uWnkoYSxjLDApLHR5cGVvZiBiKXtjYXNlICJudW1iZXIiOmE9YS5qO0xaKGIpO2RfKGEsSVosSlopO2JyZWFrO2Nhc2UgImJpZ2ludCI6Yz1jXyhiLE9aLFFaKTtkXyhhLmosYy5vLGMuaik7YnJlYWs7ZGVmYXVsdDpjPVNaKGIpLGRfKGEuaixjLm8sYy5qKX19LF8uR3IpO1o0PV8ubHooUV8sXy5Dcik7Z3ZhPV8ubHooUV8sXy5Dcik7Cmh2YT1fLmx6KGZ1bmN0aW9uKGEsYixjKXtiPUFfKGIpO2lmKGIhPW51bGwpc3dpdGNoKGhfKGIpLF8uWnkoYSxjLDEpLGE9YS5qLGhfKGIpLHR5cGVvZiBiKXtjYXNlICJudW1iZXIiOmI8MD8oYj1QWihRWigtYikpLGM9Yi5qLGVfKGEsYi5vKSxlXyhhLGMpKTooS1ooYiksZV8oYSxJWiksZV8oYSxKWikpO2JyZWFrO2Nhc2UgImJpZ2ludCI6Yj1iPEJpZ0ludCgwKT9QWihjXygtYixPWixRWikpOmNfKGIsT1osUVopO2M9Yi5qO2VfKGEsYi5vKTtlXyhhLGMpO2JyZWFrO2RlZmF1bHQ6Yj1iLmxlbmd0aCYmYlswXT09PSItIj9QWihTWihiLnN1YnN0cmluZygxKSkpOlNaKGIpLGM9Yi5qLGVfKGEsYi5vKSxlXyhhLGMpfX0sXy5Icik7aXZhPV8ubHooZnVuY3Rpb24oYSxiLGMpe2lfKGEsYyxBXyhiKSl9LF8uSHIpO2p2YT1NXyhmdW5jdGlvbihhLGIsYyl7Yj1MXyhBXyxiLCExKTtpZihiIT1udWxsKWZvcihsZXQgZD0wO2Q8Yi5sZW5ndGg7ZCsrKWlfKGEsYyxiW2RdKX0sXy5Icik7Cmt2YT1fLmx6KF8ubXosXy5Bcik7JDQ9Xy5seihSXyxfLkJyKTtsdmE9TV8oZnVuY3Rpb24oYSxiLGMpe2I9TF8oXy5YdCxiLCEwKTtpZihiIT1udWxsKWZvcihsZXQgaD0wO2g8Yi5sZW5ndGg7aCsrKXt2YXIgZD1hLGU9YyxmPWJbaF07ZiE9bnVsbCYma18oZCxlLEhaKGYpKX19LF8uQnIpO212YT1fLmx6KFJfLF8uQnIpO2E1PW5ldyBfLmd6KF8ubnosXy56cik7bnZhPU1fKGZ1bmN0aW9uKGEsYixjKXtiPUxfKHJyYSxiLCExKTtpZihiIT1udWxsKWZvcihsZXQgaD0wO2g8Yi5sZW5ndGg7aCsrKXt2YXIgZD1hLGU9YyxmPWJbaF07ZiE9bnVsbCYma18oZCxlLGZyYShmKS5idWZmZXIpfX0sXy5Lcik7YjU9Xy5seihmdW5jdGlvbihhLGIsYyl7Yj1zXyhiKTtiIT1udWxsJiZiIT1udWxsJiYoXy5aeShhLGMsMCksXy5YeShhLmosYikpfSxfLkRyKTtjNT1fLmx6KGZ1bmN0aW9uKGEsYixjKXtqXyhhLGMsXy5zeChiKSl9LF8uTHIpOwpvdmE9TV8oZnVuY3Rpb24oYSxiLGMpe2I9TF8oXy5zeCxiLCEwKTtpZihiIT1udWxsKWZvcihsZXQgZD0wO2Q8Yi5sZW5ndGg7ZCsrKWpfKGEsYyxiW2RdKX0sXy5Mcik7cHZhPV8ubHooZnVuY3Rpb24oYSxiLGMpe2I9Xy5zeChiKTtiIT1udWxsJiYoXy5aeShhLGMsNSksYT1hLmosYS5qLnB1c2goYj4+PjAmMjU1KSxhLmoucHVzaChiPj4+OCYyNTUpLGEuai5wdXNoKGI+Pj4xNiYyNTUpLGEuai5wdXNoKGI+Pj4yNCYyNTUpKX0sXy5Fcik7Xy5nPV8uZVYucHJvdG90eXBlO18uZy5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBuZXcgXy5lVih0aGlzLngsdGhpcy55KX07Xy5nLmVxdWFscz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIF8uZVYmJih0aGlzPT1hPyEwOnRoaXMmJmE/dGhpcy54PT1hLngmJnRoaXMueT09YS55OiExKX07Xy5nLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLng9TWF0aC5jZWlsKHRoaXMueCk7dGhpcy55PU1hdGguY2VpbCh0aGlzLnkpO3JldHVybiB0aGlzfTsKXy5nLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGguZmxvb3IodGhpcy54KTt0aGlzLnk9TWF0aC5mbG9vcih0aGlzLnkpO3JldHVybiB0aGlzfTtfLmcucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLng9TWF0aC5yb3VuZCh0aGlzLngpO3RoaXMueT1NYXRoLnJvdW5kKHRoaXMueSk7cmV0dXJuIHRoaXN9O18uZy50cmFuc2xhdGU9ZnVuY3Rpb24oYSxiKXthIGluc3RhbmNlb2YgXy5lVj8odGhpcy54Kz1hLngsdGhpcy55Kz1hLnkpOih0aGlzLngrPU51bWJlcihhKSx0eXBlb2YgYj09PSJudW1iZXIiJiYodGhpcy55Kz1iKSk7cmV0dXJuIHRoaXN9O18uZy5zY2FsZT1mdW5jdGlvbihhLGIpe3RoaXMueCo9YTt0aGlzLnkqPXR5cGVvZiBiPT09Im51bWJlciI/YjphO3JldHVybiB0aGlzfTsKdmFyIHF2YT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fSxydmE9e3N0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbjoxLHN0b3BQcm9wYWdhdGlvbjoxLHByZXZlbnRNb3VzZUV2ZW50OjEscHJldmVudE1hbmlwdWxhdGlvbjoxLHByZXZlbnREZWZhdWx0OjEsbGF5ZXJYOjEsbGF5ZXJZOjEsc2NyZWVuWDoxLHNjcmVlblk6MSxzY2FsZToxLHJvdGF0aW9uOjEsd2Via2l0TW92ZW1lbnRYOjEsd2Via2l0TW92ZW1lbnRZOjF9LGMwPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMudHlwZT0iIjt0aGlzLnN0YXRlPXRoaXMuc291cmNlPXRoaXMuZGF0YT10aGlzLmN1cnJlbnRUYXJnZXQ9dGhpcy5yZWxhdGVkVGFyZ2V0PXRoaXMudGFyZ2V0PW51bGw7dGhpcy5jaGFyQ29kZT10aGlzLmtleUNvZGU9MDt0aGlzLm1ldGFLZXk9dGhpcy5zaGlmdEtleT10aGlzLmN0cmxLZXk9dGhpcy5hbHRLZXk9ITE7dGhpcy5yb3RhdGlvbj10aGlzLmNsaWVudFk9dGhpcy5jbGllbnRYPQowO3RoaXMuc2NhbGU9MTt0aGlzLmNoYW5nZWRUb3VjaGVzPXRoaXMudG91Y2hlcz1udWxsO3RyeXtpZihhPWF8fHdpbmRvdy5ldmVudCl7dGhpcy5ldmVudD1hO2ZvcihsZXQgZCBpbiBhKWQgaW4gcnZhfHwodGhpc1tkXT1hW2RdKTt0aGlzLnNjYWxlPWEuc2NhbGU7dGhpcy5yb3RhdGlvbj1hLnJvdGF0aW9uO3ZhciBiPWEudGFyZ2V0fHxhLnNyY0VsZW1lbnQ7YiYmYi5ub2RlVHlwZT09MyYmKGI9Yi5wYXJlbnROb2RlKTt0aGlzLnRhcmdldD1iO3ZhciBjPWEucmVsYXRlZFRhcmdldDtpZihjKXRyeXtjPWMubm9kZU5hbWU/YzpudWxsfWNhdGNoKGQpe2M9bnVsbH1lbHNlIHRoaXMudHlwZT09Im1vdXNlb3ZlciI/Yz1hLmZyb21FbGVtZW50OnRoaXMudHlwZT09Im1vdXNlb3V0IiYmKGM9YS50b0VsZW1lbnQpO3RoaXMucmVsYXRlZFRhcmdldD1jO3RoaXMuY2xpZW50WD1hLmNsaWVudFghPXZvaWQgMD9hLmNsaWVudFg6YS5wYWdlWDt0aGlzLmNsaWVudFk9YS5jbGllbnRZIT12b2lkIDA/CmEuY2xpZW50WTphLnBhZ2VZO3RoaXMua2V5Q29kZT1hLmtleUNvZGU/YS5rZXlDb2RlOmEud2hpY2g7dGhpcy5jaGFyQ29kZT1hLmNoYXJDb2RlfHwodGhpcy50eXBlPT0ia2V5cHJlc3MiP3RoaXMua2V5Q29kZTowKTt0aGlzLmFsdEtleT1hLmFsdEtleTt0aGlzLmN0cmxLZXk9YS5jdHJsS2V5O3RoaXMuc2hpZnRLZXk9YS5zaGlmdEtleTt0aGlzLm1ldGFLZXk9YS5tZXRhS2V5O3RoaXMuaj1hLnBhZ2VYO3RoaXMubz1hLnBhZ2VZfX1jYXRjaChkKXt9fXByZXZlbnREZWZhdWx0KCl7dGhpcy5ldmVudCYmKHRoaXMuZXZlbnQucmV0dXJuVmFsdWU9ITEsdGhpcy5ldmVudC5wcmV2ZW50RGVmYXVsdCYmdGhpcy5ldmVudC5wcmV2ZW50RGVmYXVsdCgpKX1zdG9wUHJvcGFnYXRpb24oKXt0aGlzLmV2ZW50JiYodGhpcy5ldmVudC5jYW5jZWxCdWJibGU9ITAsdGhpcy5ldmVudC5zdG9wUHJvcGFnYXRpb24mJnRoaXMuZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCkpfXN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpe3RoaXMuZXZlbnQmJgoodGhpcy5ldmVudC5jYW5jZWxCdWJibGU9ITAsdGhpcy5ldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24mJnRoaXMuZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCkpfX07Xy5IYShlMCxfLmFlKTtlMC5wcm90b3R5cGUuZ2E9ZnVuY3Rpb24oYSl7YS5qPT09dm9pZCAwJiZiMChhKTt2YXIgYj1hLmo7YS5vPT09dm9pZCAwJiZiMChhKTt0aGlzLmo9bmV3IF8uZVYoYixhLm8pfTsKZTAucHJvdG90eXBlLlU9ZnVuY3Rpb24oKXtpZih0aGlzLmope3ZhciBhPSgwLF8uZWwpKCk7aWYodGhpcy5CIT0wKXt2YXIgYj10aGlzLkksYz10aGlzLmosZD1iLngtYy54O2I9Yi55LWMueTtkPU1hdGguc3FydChkKmQrYipiKS8oYS10aGlzLkIpO3RoaXMub1t0aGlzLnZdPU1hdGguYWJzKChkLXRoaXMuRCkvdGhpcy5EKT4uNT8xOjA7Yj0wO2ZvcihjPTA7Yzw0O2MrKyliKz10aGlzLm9bY118fDA7Yj49MyYmdGhpcy5NKCk7dGhpcy5EPWR9dGhpcy5CPWE7dGhpcy5JPXRoaXMuajt0aGlzLnY9KHRoaXMudisxKSU0fX07ZTAucHJvdG90eXBlLmxhPWZ1bmN0aW9uKCl7d2luZG93LmNsZWFySW50ZXJ2YWwodGhpcy5oYSk7eXJhKHRoaXMuWil9Owp2YXIgdDM9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5vPXZvaWQgMDt0aGlzLmo9ITE7YS5hZGRFdmVudExpc3RlbmVyKCJiZWZvcmVpbnN0YWxscHJvbXB0IixiPT57Yi5wcmV2ZW50RGVmYXVsdCgpO3RoaXMubz1ifSk7YS5hZGRFdmVudExpc3RlbmVyKCJhcHBpbnN0YWxsZWQiLCgpPT57dGhpcy5qPSEwfSx7b25jZTohMH0pfX0sZjA9MCx1MD17bmV4dDoid25fcyIsYnJvd3NlOiJicl9zIixzZWFyY2g6InNyX3MiLHJlZWw6InJfd3JzIixwbGF5ZXI6InBzX3MifSxScmE9e25leHQ6InduX3IiLGJyb3dzZToiYnJfciIsc2VhcmNoOiJzcl9yIixyZWVsOiJyX3dyciIscGxheWVyOiJwc19yIn0sbTA9e30sczA9eydzY3JpcHRbbmFtZT0ic2NoZWR1bGVyL3NjaGVkdWxlciJdJzoic2oiLCdzY3JpcHRbbmFtZT0icGxheWVyL2Jhc2UiXSc6InBqIiwnbGlua1tyZWw9InByZWxvYWQiXVtuYW1lPSJwbGF5ZXIvZW1iZWQiXSc6InBlaiIsJ2xpbmtbcmVsPSJzdHlsZXNoZWV0Il1bbmFtZT0id3d3LXBsYXllciJdJzoicGMiLAonbGlua1tyZWw9InN0eWxlc2hlZXQiXVtuYW1lPSJwbGF5ZXIvd3d3LXBsYXllciJdJzoicGMiLCdzY3JpcHRbbmFtZT0iZGVza3RvcF9wb2x5bWVyL2Rlc2t0b3BfcG9seW1lciJdJzoiZHBqIiwnbGlua1tyZWw9ImltcG9ydCJdW25hbWU9ImRlc2t0b3BfcG9seW1lciJdJzoiZHBoIiwnc2NyaXB0W25hbWU9Im1vYmlsZS1jMyJdJzoibWNqIiwnbGlua1tyZWw9InN0eWxlc2hlZXQiXVtuYW1lPSJtb2JpbGUtYzMiXSc6Im1jYyIsJ3NjcmlwdFtuYW1lPSJwbGF5ZXItcGxhc21hLWlhcy1waG9uZS9iYXNlIl0nOiJtY3BwaiIsJ3NjcmlwdFtuYW1lPSJwbGF5ZXItcGxhc21hLWlhcy10YWJsZXQvYmFzZSJdJzoibWNwdGoiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9Im1vYmlsZS1wb2x5bWVyLXBsYXllci1pYXMiXSc6Im1jcGMiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9Im1vYmlsZS1wb2x5bWVyLXBsYXllci1zdmctaWFzIl0nOiJtY3BzYyIsJ3NjcmlwdFtuYW1lPSJtb2JpbGVfYmxhemVyX2NvcmVfbW9kIl0nOiJtYmNqIiwKJ2xpbmtbcmVsPSJzdHlsZXNoZWV0Il1bbmFtZT0ibW9iaWxlX2JsYXplcl9jc3MiXSc6Im1iYyIsJ3NjcmlwdFtuYW1lPSJtb2JpbGVfYmxhemVyX2xvZ2dlZF9pbl91c2Vyc19tb2QiXSc6Im1ibGl1aiIsJ3NjcmlwdFtuYW1lPSJtb2JpbGVfYmxhemVyX2xvZ2dlZF9vdXRfdXNlcnNfbW9kIl0nOiJtYmxvdWoiLCdzY3JpcHRbbmFtZT0ibW9iaWxlX2JsYXplcl9ub25jb3JlX21vZCJdJzoibWJuaiIsIiNwbGF5ZXJfY3NzIjoibWJwYyIsJ3NjcmlwdFtuYW1lPSJtb2JpbGVfYmxhemVyX2Rlc2t0b3BwbGF5ZXJfbW9kIl0nOiJtYnBqIiwnbGlua1tyZWw9InN0eWxlc2hlZXQiXVtuYW1lPSJtb2JpbGVfYmxhemVyX3RhYmxldF9jc3MiXSc6Im1idGMiLCdzY3JpcHRbbmFtZT0ibW9iaWxlX2JsYXplcl93YXRjaF9tb2QiXSc6Im1id2oiLCdzY3JpcHRbbmFtZT0iZW1iZWRfY2xpZW50Il0nOiJlY2oiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9ImVtYmVkLXVpIl0nOiJlY2MifSwKWTE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX0sWjE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX0sejA9e30sZDU9Y2xhc3N7Y29uc3RydWN0b3IoYSl7YT1hfHx7fTt2YXIgYj17fSxjPXt9O3RoaXMudXJsPWEudXJsfHwiIjt0aGlzLmFyZ3M9YS5hcmdzfHxVXyhiKTt0aGlzLmFzc2V0cz1hLmFzc2V0c3x8e307dGhpcy5hdHRycz1hLmF0dHJzfHxVXyhjKTt0aGlzLmZhbGxiYWNrPWEuZmFsbGJhY2t8fG51bGw7dGhpcy5mYWxsYmFja01lc3NhZ2U9YS5mYWxsYmFja01lc3NhZ2V8fG51bGw7dGhpcy5odG1sNT0hIWEuaHRtbDU7dGhpcy5kaXNhYmxlPWEuZGlzYWJsZXx8e307dGhpcy5sb2FkZWQ9ISFhLmxvYWRlZDt0aGlzLm1lc3NhZ2VzPWEubWVzc2FnZXN8fHt9fWNsb25lKCl7dmFyIGE9bmV3IGQ1O2ZvcihsZXQgYiBpbiB0aGlzKWlmKHRoaXMuaGFzT3duUHJvcGVydHkoYikpe2xldCBjPXRoaXNbYl07Xy54YShjKT09CiJvYmplY3QiP2FbYl09VV8oYyk6YVtiXT1jfXJldHVybiBhfX0sRjA9e30sYnNhPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhLGIsYyxkKXtzdXBlcigpO3RoaXMucGxheWVySWQ9Yjt0aGlzLndlYlBsYXllckNvbnRleHRDb25maWc9ZDt0aGlzLkViPXZvaWQgMDt0aGlzLkZhPSExO3RoaXMuYXBpPXt9O3RoaXMuaGE9dGhpcy5CPW51bGw7dGhpcy5NPW5ldyBfLnRoO3RoaXMuaj17fTt0aGlzLlo9dGhpcy5vYT10aGlzLmVsZW1lbnRJZD10aGlzLk1hPXRoaXMuY29uZmlnPW51bGw7dGhpcy5VPSExO3RoaXMudj10aGlzLkQ9bnVsbDt0aGlzLnlhPXt9O3RoaXMuZmM9WyJvblJlYWR5Il07dGhpcy5sYXN0RXJyb3I9bnVsbDt0aGlzLlFhPU5hTjt0aGlzLkk9e307dGhpcy5nYT0wO3RoaXMubz10aGlzLnRhcmdldEVsZW1lbnQ9YTtFWih0aGlzLHRoaXMuTSk7STAodGhpcyk7Yz90aGlzLmdhPXNldFRpbWVvdXQoKCk9Pnt0aGlzLmxvYWROZXdWaWRlb0NvbmZpZyhjKX0sMCk6CmQmJihKMCh0aGlzKSxTMCh0aGlzKSl9Z2V0SWQoKXtyZXR1cm4gdGhpcy5wbGF5ZXJJZH1sb2FkTmV3VmlkZW9Db25maWcoYSl7aWYoIXRoaXMuaWEoKSl7dGhpcy5nYSYmKGNsZWFyVGltZW91dCh0aGlzLmdhKSx0aGlzLmdhPTApO3ZhciBiPWF8fHt9O2IgaW5zdGFuY2VvZiBkNXx8KGI9bmV3IGQ1KGIpKTt0aGlzLmNvbmZpZz1iO3RoaXMuc2V0Q29uZmlnKGEpO1MwKHRoaXMpO3RoaXMuaXNSZWFkeSgpJiZUMCh0aGlzKX19c2V0Q29uZmlnKGEpe3RoaXMuTWE9YTt0aGlzLmNvbmZpZz1QMChhKTtKMCh0aGlzKTt0aGlzLm9hfHwodGhpcy5vYT1VMCh0aGlzLHRoaXMuY29uZmlnLmFyZ3M/LmpzYXBpY2FsbGJhY2t8fCJvbllvdVR1YmVQbGF5ZXJSZWFkeSIpKTt0aGlzLmNvbmZpZy5hcmdzP3RoaXMuY29uZmlnLmFyZ3MuanNhcGljYWxsYmFjaz1udWxsOnRoaXMuY29uZmlnLmFyZ3M9e2pzYXBpY2FsbGJhY2s6bnVsbH07aWYodGhpcy5jb25maWc/LmF0dHJzKXthPXRoaXMuY29uZmlnLmF0dHJzOwpsZXQgYj1hLndpZHRoO2ImJnRoaXMubyYmKHRoaXMuby5zdHlsZS53aWR0aD1YXyhOdW1iZXIoYil8fGIpKTsoYT1hLmhlaWdodCkmJnRoaXMubyYmKHRoaXMuby5zdHlsZS5oZWlnaHQ9WF8oTnVtYmVyKGEpfHxhKSl9fWlzUmVhZHkoKXtyZXR1cm4gdGhpcy5GYX1hZGRFdmVudExpc3RlbmVyKGEsYil7dGhpcy5pYSgpO3ZhciBjPVUwKHRoaXMsYik7YyYmKF8uc2IodGhpcy5mYyxhKT49MHx8dGhpcy5qW2FdfHwoYj1hc2EodGhpcyxhKSx0aGlzLkImJnRoaXMuQihhLGIpKSx0aGlzLk0uc3Vic2NyaWJlKGEsYyksYT09PSJvblJlYWR5IiYmdGhpcy5pc1JlYWR5KCkmJnNldFRpbWVvdXQoKCk9PntjKHRoaXMuYXBpKX0sMCkpfXJlbW92ZUV2ZW50TGlzdGVuZXIoYSxiKXt0aGlzLmlhKCl8fChiPVUwKHRoaXMsYikpJiZ0aGlzLk0udW5zdWJzY3JpYmUoYSxiKX1nZXRQbGF5ZXJUeXBlKCl7cmV0dXJuIHRoaXMuWnx8KEwwKHRoaXMpPyJodG1sNSI6bnVsbCl9Z2V0TGFzdEVycm9yKCl7cmV0dXJuIHRoaXMubGFzdEVycm9yfWNhbmNlbCgpe3RoaXMuRCYmCkcwKFEwKHRoaXMpLHRoaXMuRCk7Y2xlYXJUaW1lb3V0KHRoaXMuUWEpO3RoaXMuVT0hMX1sYSgpe04wKHRoaXMpO2lmKHRoaXMudiYmdGhpcy5jb25maWcmJnRoaXMudi5kZXN0cm95KXRyeXt0aGlzLnYuZGVzdHJveSgpfWNhdGNoKGIpe3ZhciBhPW5ldyBfLlhqKCJQbGF5ZXJQcm94eSBlcnJvciBkdXJpbmcgZGlzcG9zYWwiLHtlcnJvcjpifSk7YS5sZXZlbD0iRVJST1IiO3Rocm93IGE7fXRoaXMueWE9bnVsbDtmb3IoYSBpbiB0aGlzLmopdGhpcy5qLmhhc093blByb3BlcnR5KGEpJiZkZWxldGUgdGhpcy5qW2FdO3RoaXMuTWE9dGhpcy5jb25maWc9dGhpcy5hcGk9bnVsbDtkZWxldGUgdGhpcy50YXJnZXRFbGVtZW50O2RlbGV0ZSB0aGlzLm87c3VwZXIubGEoKX19LFcwPXt9LHh0YT17U0M6IkVNQkVEREVEX1BMQVlFUl9NT0RFX1VOS05PV04iLFBDOiJFTUJFRERFRF9QTEFZRVJfTU9ERV9ERUZBVUxUIixSQzoiRU1CRURERURfUExBWUVSX01PREVfUEZQIixRQzoiRU1CRURERURfUExBWUVSX01PREVfUEZMIn07dmFyIGgxPWNsYXNzIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoYSxiLGM9RXJyb3IoKSl7c3VwZXIoKTt0aGlzLmNvZGU9YTtiKz0iOiI7YyBpbnN0YW5jZW9mIEVycm9yPyh0aGlzLm1lc3NhZ2U9YitjLm1lc3NhZ2UsdGhpcy5zdGFjaz1jLnN0YWNrfHwiIik6KHRoaXMubWVzc2FnZT1iK1N0cmluZyhjKSx0aGlzLnN0YWNrPSIiKTtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxuZXcudGFyZ2V0LnByb3RvdHlwZSl9fTt2YXIgZTE9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy52bT1hO3RoaXMubz0ia2V5ZG93biBrZXlwcmVzcyBrZXl1cCBpbnB1dCBmb2N1c2luIGZvY3Vzb3V0IHNlbGVjdCBjb3B5IGN1dCBwYXN0ZSBjaGFuZ2UgY2xpY2sgZGJsY2xpY2sgYXV4Y2xpY2sgcG9pbnRlcm92ZXIgcG9pbnRlcmRvd24gcG9pbnRlcnVwIHBvaW50ZXJtb3ZlIHBvaW50ZXJvdXQgZHJhZ2VudGVyIGRyYWdsZWF2ZSBkcmFnIGRyYWdlbmQgbW91c2VvdmVyIG1vdXNlZG93biBtb3VzZXVwIG1vdXNlbW92ZSBtb3VzZW91dCB0b3VjaHN0YXJ0IHRvdWNoZW5kIHRvdWNobW92ZSB3aGVlbCIuc3BsaXQoIiAiKTt0aGlzLmo9dm9pZCAwO3RoaXMuQ2c9dGhpcy52bS5wO3RoaXMudj10aGlzLkloLmJpbmQodGhpcyk7dGhpcy5hZGRPbkRpc3Bvc2VDYWxsYmFjaygoKT0+dm9pZCBoc2EodGhpcykpfXNuYXBzaG90KGEpe3JldHVybiB0aGlzLnZtLnMoey4uLihhLktjJiZ7YzphLktjfSksCi4uLihhLllqJiZ7czphLllqfSksLi4uKGEueG4hPT12b2lkIDAmJntwOmEueG59KX0pfUloKGEpe3RoaXMudm0uZShhKX1CaShhLGIpe3JldHVybiB0aGlzLnZtLmMoYSxiLCExKX1WaCgpe3JldHVybiB0aGlzLnZtLmwoKX19O3ZhciBzdmE9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKTt0aGlzLmhhPTF9c2hhcmUoKXtpZih0aGlzLmlhKCkpdGhyb3cgRXJyb3IoImplIik7dGhpcy5oYSsrO3JldHVybiB0aGlzfWRpc3Bvc2UoKXstLXRoaXMuaGF8fHN1cGVyLmRpc3Bvc2UoKX19O3ZhciB0dmE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5vPWE7SzEoYSwiL2NsaWVudF9zdHJlYW16L2JnL2ZycyIsbTEoIm1rIikpfXJlY29yZChhLGIpe3RoaXMuby5yZWNvcmQoIi9jbGllbnRfc3RyZWFtei9iZy9mcnMiLGEsYil9aigpe3JldHVybiB0aGlzLm8uaigiL2NsaWVudF9zdHJlYW16L2JnL2ZycyIpfX0sdXZhPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMubz1hO0sxKGEsIi9jbGllbnRfc3RyZWFtei9iZy93cmwiLG0xKCJtbiIpLGwxKCJhYyIpLGwxKCJzYyIpLG0xKCJyayIpLG0xKCJtayIpKX1yZWNvcmQoYSxiLGMsZCxlLGYpe3RoaXMuby5yZWNvcmQoIi9jbGllbnRfc3RyZWFtei9iZy93cmwiLGEsYixjLGQsZSxmKX1qKCl7cmV0dXJuIHRoaXMuby5qKCIvY2xpZW50X3N0cmVhbXovYmcvd3JsIil9fSx2dmE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy52PWE7TTEoYSwiL2NsaWVudF9zdHJlYW16L2JnL2VjIixtMSgiZW4iKSxtMSgibWsiKSl9byhhLGIpe08xKHRoaXMudiwKIi9jbGllbnRfc3RyZWFtei9iZy9lYyIsYSxiKX1qKCl7cmV0dXJuIHRoaXMudi5qKCIvY2xpZW50X3N0cmVhbXovYmcvZWMiKX19LHd2YT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLm89YTtLMShhLCIvY2xpZW50X3N0cmVhbXovYmcvZWwiLG0xKCJlbiIpLG0xKCJtayIpKX1yZWNvcmQoYSxiLGMpe3RoaXMuby5yZWNvcmQoIi9jbGllbnRfc3RyZWFtei9iZy9lbCIsYSxiLGMpfWooKXtyZXR1cm4gdGhpcy5vLmooIi9jbGllbnRfc3RyZWFtei9iZy9lbCIpfX0seHZhPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMudj1hO00xKGEsIi9jbGllbnRfc3RyZWFtei9iZy9jZWMiLGwxKCJlYyIpLG0xKCJtayIpKX1vKGEsYil7TzEodGhpcy52LCIvY2xpZW50X3N0cmVhbXovYmcvY2VjIixhLGIpfWooKXtyZXR1cm4gdGhpcy52LmooIi9jbGllbnRfc3RyZWFtei9iZy9jZWMiKX19LHl2YT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLnY9YTtNMShhLCIvY2xpZW50X3N0cmVhbXovYmcvcG8vY3NjIiwKbDEoImNzIiksbTEoIm1rIikpfW8oYSxiKXtPMSh0aGlzLnYsIi9jbGllbnRfc3RyZWFtei9iZy9wby9jc2MiLGEsYil9aigpe3JldHVybiB0aGlzLnYuaigiL2NsaWVudF9zdHJlYW16L2JnL3BvL2NzYyIpfX0senZhPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMudj1hO00xKGEsIi9jbGllbnRfc3RyZWFtei9iZy9wby9jdGF2IixtMSgiYXYiKSxtMSgibWsiKSl9byhhLGIpe08xKHRoaXMudiwiL2NsaWVudF9zdHJlYW16L2JnL3BvL2N0YXYiLGEsYil9aigpe3JldHVybiB0aGlzLnYuaigiL2NsaWVudF9zdHJlYW16L2JnL3BvL2N0YXYiKX19LEF2YT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLnY9YTtNMShhLCIvY2xpZW50X3N0cmVhbXovYmcvcG8vY3dzYyIsbTEoInN1IiksbTEoIm1rIikpfW8oYSxiKXtPMSh0aGlzLnYsIi9jbGllbnRfc3RyZWFtei9iZy9wby9jd3NjIixhLGIpfWooKXtyZXR1cm4gdGhpcy52LmooIi9jbGllbnRfc3RyZWFtei9iZy9wby9jd3NjIil9fSxCdmE9CmNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMubz1hO0sxKGEsIi9jbGllbnRfc3RyZWFtei9iZy9vZC9wIixtMSgibWsiKSl9cmVjb3JkKGEsYil7dGhpcy5vLnJlY29yZCgiL2NsaWVudF9zdHJlYW16L2JnL29kL3AiLGEsYil9aigpe3JldHVybiB0aGlzLm8uaigiL2NsaWVudF9zdHJlYW16L2JnL29kL3AiKX19LEN2YT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLm89YTtLMShhLCIvY2xpZW50X3N0cmVhbXovYmcvb2QvbiIsbTEoImV0IiksbTEoIm1rIikpfXJlY29yZChhLGIsYyl7dGhpcy5vLnJlY29yZCgiL2NsaWVudF9zdHJlYW16L2JnL29kL24iLGEsYixjKX1qKCl7cmV0dXJuIHRoaXMuby5qKCIvY2xpZW50X3N0cmVhbXovYmcvb2QvbiIpfX07dmFyIE1zYT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fTt2YXIgcnNhPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19LHExPVsxLDIsM107dmFyIG9zYT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fSxwMT1bMSwyLDNdO3ZhciBwc2E9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07dmFyIER2YT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fTt2YXIgRXZhPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19LGU1PVsxLDIsM107dmFyIG4xPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19O24xLnByb3RvdHlwZS52PV8ucHooWzAsJDQsWzAsZTUsYTUsWzAsJDQsLTEsXy54el0sYTUsWzAsJDQsLTEsWjQsXy54el0sYTUsWzAsJDRdXSxsdmEsXy55eixbMCxfLnl6LFswLHExLG12YSxndmEsa3ZhXSxbMCxwMSxmdmEsZXZhLGE1LFswLF8ueXosWzAsVjQsWDRdXV1dLGl2YSxqdmFdKTt2YXIgRnZhPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19O3ZhciBHdmE9Y2xhc3N7YXN5bmMgY29tcHJlc3MoYSl7dmFyIGI9bmV3IENvbXByZXNzaW9uU3RyZWFtKCJnemlwIiksYz0obmV3IFJlc3BvbnNlKGIucmVhZGFibGUpKS5hcnJheUJ1ZmZlcigpO2I9Yi53cml0YWJsZS5nZXRXcml0ZXIoKTthd2FpdCBiLndyaXRlKChuZXcgVGV4dEVuY29kZXIpLmVuY29kZShhKSk7YXdhaXQgYi5jbG9zZSgpO3JldHVybiBuZXcgVWludDhBcnJheShhd2FpdCBjKX1pc1N1cHBvcnRlZChhKXtyZXR1cm4gYTwxMDI0PyExOnR5cGVvZiBDb21wcmVzc2lvblN0cmVhbSE9PSJ1bmRlZmluZWQifX07dmFyIGY1PWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5pbnRlcnZhbE1zPWE7dGhpcy5jYWxsYmFjaz1iO3RoaXMuZW5hYmxlZD0hMTt0aGlzLmo9KCk9Pl8uRWEoKTt0aGlzLm89dGhpcy5qKCl9c2V0SW50ZXJ2YWwoYSl7dGhpcy5pbnRlcnZhbE1zPWE7dGhpcy50aW1lciYmdGhpcy5lbmFibGVkPyh0aGlzLnN0b3AoKSx0aGlzLnN0YXJ0KCkpOnRoaXMudGltZXImJnRoaXMuc3RvcCgpfXN0YXJ0KCl7dGhpcy5lbmFibGVkPSEwO3RoaXMudGltZXJ8fCh0aGlzLnRpbWVyPXNldFRpbWVvdXQoKCk9Pnt0aGlzLnRpY2soKX0sdGhpcy5pbnRlcnZhbE1zKSx0aGlzLm89dGhpcy5qKCkpfXN0b3AoKXt0aGlzLmVuYWJsZWQ9ITE7dGhpcy50aW1lciYmKGNsZWFyVGltZW91dCh0aGlzLnRpbWVyKSx0aGlzLnRpbWVyPXZvaWQgMCl9dGljaygpe2lmKHRoaXMuZW5hYmxlZCl7bGV0IGE9TWF0aC5tYXgodGhpcy5qKCktdGhpcy5vLDApO2E8dGhpcy5pbnRlcnZhbE1zKi44P3RoaXMudGltZXI9CnNldFRpbWVvdXQoKCk9Pnt0aGlzLnRpY2soKX0sdGhpcy5pbnRlcnZhbE1zLWEpOih0aGlzLnRpbWVyJiYoY2xlYXJUaW1lb3V0KHRoaXMudGltZXIpLHRoaXMudGltZXI9dm9pZCAwKSx0aGlzLmNhbGxiYWNrKCksdGhpcy5lbmFibGVkJiYodGhpcy5zdG9wKCksdGhpcy5zdGFydCgpKSl9ZWxzZSB0aGlzLnRpbWVyPXZvaWQgMH19O3ZhciBIdmE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07dmFyIEl2YT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fTt2YXIgSnZhPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX1XaSgpe3JldHVybiBLXyh0aGlzKX19O3ZhciB0c2E9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07dmFyIHgxPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19LHdzYT1TXyh4MSk7dmFyIEExPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19O3ZhciB0MT1bInBsYXRmb3JtIiwicGxhdGZvcm1WZXJzaW9uIiwiYXJjaGl0ZWN0dXJlIiwibW9kZWwiLCJ1YUZ1bGxWZXJzaW9uIl0sczE9bmV3IHgxLHUxPW51bGw7dmFyIHoxPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19O3ZhciBLdmE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEsNCl9fTt2YXIgZzU9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEsMzcpfX07dmFyIEx2YT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSwxOSl9VWgoYSl7cmV0dXJuIENaKHRoaXMsMixhKX19O3ZhciBNdmE9Y2xhc3N7Y29uc3RydWN0b3IoYSxiPSExKXt0aGlzLnlkPWI7dGhpcy52PXRoaXMubG9jYWxlPW51bGw7dGhpcy5vPTA7dGhpcy5pc0ZpbmFsPSExO3RoaXMuaj1uZXcgTHZhO051bWJlci5pc0ludGVnZXIoYSkmJnRoaXMuai5VaChhKTtifHwodGhpcy5sb2NhbGU9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmdldEF0dHJpYnV0ZSgibGFuZyIpKTt5MSh0aGlzLG5ldyB6MSl9VWgoYSl7dGhpcy5qLlVoKGEpO3JldHVybiB0aGlzfWJ1aWxkKGEsYj0wLGM9MCxkPW51bGwsZT0wLGY9MCl7aWYoIXRoaXMueWQpe3ZhciBoPXcxKHRoaXMpO3ZhciBrPW5ldyBKdmE7az1DWihrLDEsdGhpcy5vKTtrPV8ucXcoaywyLF8ueHcodGhpcy5pc0ZpbmFsKSk7Yz1fLnF3KGssMyxfLlB3KGM+MD9jOnZvaWQgMCkpO2U9Xy5xdyhjLDQsXy5QdyhlPjA/ZTp2b2lkIDApKTtmPV8ucXcoZSw1LF8uUHcoZj4wP2Y6dm9pZCAwKSk7ZT1mLkRhO2M9ZVtfLkFjXXwwO2Y9Xy5CYyhmLGMpP2Y6Xy4kYyhmLAplLGMpP18uYmQoZixlKTpuZXcgZi5jb25zdHJ1Y3RvcihfLlpjKGUsYywhMCkpO18uS3coaCwxMCxmKX1oPXRoaXMuai5jbG9uZSgpO2Y9RGF0ZS5ub3coKS50b1N0cmluZygpO2g9Xy5xdyhoLDQseV8oZikpO2E9YS5zbGljZSgpO2E9SF8oaCwzLGEpO2QmJihoPW5ldyBIdmEsZD1fLnF3KGgsMTMsXy5QdyhkKSksaD1uZXcgSXZhLGQ9Xy5LdyhoLDIsZCksaD1uZXcgS3ZhLGQ9Xy5LdyhoLDEsZCksZD1DWihkLDIsOSksXy5LdyhhLDE4LGQpKTtiJiZfLnF3KGEsMTQseV8oYikpO3JldHVybiBhfX07QjEucHJvdG90eXBlLnY9MDtCMS5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt0aGlzLm89dGhpcy5qPXRoaXMuQjt0aGlzLnY9MH07dmFyIFU0PWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhLDgpfX0sTnZhPVNfKFU0KTt2YXIgaDU7aDU9bmV3IGR2YShjbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fSk7dmFyIE92YT1jbGFzcyBleHRlbmRzIF8uYWV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLmNvbXBvbmVudElkPSIiO3RoaXMuaj1bXTt0aGlzLlFhPSIiO3RoaXMucGFnZUlkPW51bGw7dGhpcy5FYj10aGlzLm9hPS0xO3RoaXMuTT10aGlzLmV4cGVyaW1lbnRJZHM9bnVsbDt0aGlzLmdhPXRoaXMuaGE9dGhpcy5JPXRoaXMuQj0wO3RoaXMuZmM9MTt0aGlzLnRpbWVvdXRNaWxsaXM9MDt0aGlzLnlhPSExO3RoaXMubG9nU291cmNlPWEubG9nU291cmNlO3RoaXMuU2Y9YS5TZnx8KCgpPT57fSk7dGhpcy52PW5ldyBNdmEoYS5sb2dTb3VyY2UsYS55ZCk7dGhpcy5uZXR3b3JrPWEubmV0d29ya3x8bnVsbDt0aGlzLmxmPWEubGZ8fG51bGw7dGhpcy5idWZmZXJTaXplPTFFMzt0aGlzLlU9YS50Qnx8bnVsbDt0aGlzLnNlc3Npb25JbmRleD1hLnNlc3Npb25JbmRleHx8bnVsbDt0aGlzLlpnPWEuWmd8fCExO3RoaXMuWD1udWxsO3RoaXMud2l0aENyZWRlbnRpYWxzPSFhLm5sO3RoaXMueWQ9CmEueWR8fCExO3RoaXMuWj0hdGhpcy55ZCYmISFfLnpkKCkmJiEhXy56ZCgpLm5hdmlnYXRvciYmXy56ZCgpLm5hdmlnYXRvci5zZW5kQmVhY29uIT09dm9pZCAwO3RoaXMuTWE9dHlwZW9mIFVSTFNlYXJjaFBhcmFtcyE9PSJ1bmRlZmluZWQiJiYhIShuZXcgVVJMKEQxKCkpKS5zZWFyY2hQYXJhbXMmJiEhKG5ldyBVUkwoRDEoKSkpLnNlYXJjaFBhcmFtcy5zZXQ7dmFyIGI9djEobmV3IHoxKTt5MSh0aGlzLnYsYik7dGhpcy5EPW5ldyBCMSgxRTQsM0U1LC4xKTthPXlzYSh0aGlzLGEuTm8pO3RoaXMubz1uZXcgZjUodGhpcy5ELmosYSk7dGhpcy5GYT1uZXcgZjUoNkU1LGEpO3RoaXMuWmd8fHRoaXMuRmEuc3RhcnQoKTt0aGlzLnlkfHwoZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIsKCk9Pntkb2N1bWVudC52aXNpYmlsaXR5U3RhdGU9PT0iaGlkZGVuIiYmRTEodGhpcyl9KSxfLnpkKCk/LmFkZEV2ZW50TGlzdGVuZXI/LigicGFnZWhpZGUiLCgpPT4Ke0UxKHRoaXMpfSkpfWxhKCl7RTEodGhpcyk7dGhpcy5vLnN0b3AoKTt0aGlzLkZhLnN0b3AoKTtzdXBlci5sYSgpfWRpc3BhdGNoKGEpe2lmKGEgaW5zdGFuY2VvZiBnNSl0aGlzLmxvZyhhKTtlbHNlIHRyeXt2YXIgYj1uZXcgZzUsYz1hLnNlcmlhbGl6ZSgpO3ZhciBkPUJaKGIsOCxjKTt0aGlzLmxvZyhkKX1jYXRjaHt9fWxvZyhhKXtpZih0aGlzLk1hKXthPWEuY2xvbmUoKTt2YXIgYj10aGlzLmZjKys7YT1fLnF3KGEsMjEseV8oYikpO3RoaXMuY29tcG9uZW50SWQmJkJaKGEsMjYsdGhpcy5jb21wb25lbnRJZCk7Yj1hO3t2YXIgYz1fLmVkKGIsMSk7bGV0IGQ9dHlwZW9mIGM7Yz1jPT1udWxsP2M6ZD09PSJiaWdpbnQiP1N0cmluZygoMCxfLnRyKSg2NCxjKSk6cl8oYyk/ZD09PSJzdHJpbmciP3VfKGMpOnZfKGMpOnZvaWQgMH1jPT1udWxsJiYoYz1EYXRlLm5vdygpLGM9TnVtYmVyLmlzRmluaXRlKGMpP2MudG9TdHJpbmcoKToiMCIsXy5xdyhiLDEseV8oYykpKTtjPV8uZWQoYiwKMTUsdm9pZCAwLHZvaWQgMCx6Xyk7YyE9bnVsbCYmKHR5cGVvZiBjPT09ImJpZ2ludCI/KDAsXy5NYykoYyk/Yz1OdW1iZXIoYyk6KGM9KDAsXy50cikoNjQsYyksYz0oMCxfLk1jKShjKT9OdW1iZXIoYyk6U3RyaW5nKGMpKTpjPXJfKGMpP3R5cGVvZiBjPT09Im51bWJlciI/dl8oYyk6dV8oYyk6dm9pZCAwKTtjPT1udWxsJiZfLnF3KGIsMTUseV8oKG5ldyBEYXRlKS5nZXRUaW1lem9uZU9mZnNldCgpKjYwKSk7dGhpcy5leHBlcmltZW50SWRzJiYoYz10aGlzLmV4cGVyaW1lbnRJZHMuY2xvbmUoKSxfLkt3KGIsMTYsYykpO2I9dGhpcy5qLmxlbmd0aC10aGlzLmJ1ZmZlclNpemUrMTtiPjAmJih0aGlzLmouc3BsaWNlKDAsYiksdGhpcy5CKz1iKTt0aGlzLmoucHVzaChhKTt0aGlzLlpnfHx0aGlzLm8uZW5hYmxlZHx8dGhpcy5vLnN0YXJ0KCl9fWZsdXNoKGEsYil7aWYodGhpcy5qLmxlbmd0aD09PTApYSYmYSgpO2Vsc2UgaWYodGhpcy55YSYmdGhpcy5aKXRoaXMudi5vPTMsQXNhKHRoaXMpOwplbHNle3ZhciBjPURhdGUubm93KCk7aWYodGhpcy5FYj5jJiZ0aGlzLm9hPGMpYiYmYigidGhyb3R0bGVkIik7ZWxzZXt0aGlzLm5ldHdvcmsmJih0eXBlb2YgdGhpcy5uZXR3b3JrLldpPT09ImZ1bmN0aW9uIj92c2EodGhpcy52LHRoaXMubmV0d29yay5XaSgpKTp0aGlzLnYubz0wKTt2YXIgZD10aGlzLnYuYnVpbGQodGhpcy5qLHRoaXMuQix0aGlzLkksdGhpcy5sZix0aGlzLmhhLHRoaXMuZ2EpLGU9dGhpcy5TZigpO2lmKGUmJnRoaXMuUWE9PT1lKWImJmIoInN0YWxlLWF1dGgtdG9rZW4iKTtlbHNle3RoaXMuaj1bXTt0aGlzLm8uZW5hYmxlZCYmdGhpcy5vLnN0b3AoKTt0aGlzLkI9MDtjPWQuc2VyaWFsaXplKCk7bGV0IGY7dGhpcy5NJiZ0aGlzLk0uaXNTdXBwb3J0ZWQoYy5sZW5ndGgpJiYoZj10aGlzLk0uY29tcHJlc3MoYykpO2xldCBoPUJzYSh0aGlzLGMsZSksaz1uPT57dGhpcy5ELnJlc2V0KCk7dGhpcy5vLnNldEludGVydmFsKHRoaXMuRC5qKTtpZihuKXt2YXIgcD0KbnVsbDt0cnl7dmFyIHI9SlNPTi5zdHJpbmdpZnkoSlNPTi5wYXJzZShuLnJlcGxhY2UoIildfSdcbiIsIiIpKSk7cD1OdmEocil9Y2F0Y2godil7fWlmKHApe249TnVtYmVyKElfKHAsMSxfLkZjKCItMSIpKSk7bj4wJiYodGhpcy5vYT1EYXRlLm5vdygpLHRoaXMuRWI9dGhpcy5vYStuKTtuPWg1Lmo7KHI9Xy5HYShfLkpjKSkmJnAuRGFbcl0/LltuXSE9bnVsbCYmXy54YyhfLmpyLDMpO249aDUuajtpZihfLkdhKF8ubHIpJiZfLkdhKF8uSmMpJiZ2b2lkIDA9PT1fLmxyKXtyPXAuRGE7dmFyIHQ9cltfLkpjXTtpZih0JiYodD10LkZLKSl0cnl7dChyLG4sY3ZhKX1jYXRjaCh2KXtfLiRiKHYpfX1wPWg1LmN0b3I/aDUubyhwLGg1LmN0b3IsaDUuaixoNS52KTpoNS5vKHAsaDUuaixudWxsLGg1LnYpO2lmKHA9cD09PW51bGw/dm9pZCAwOnApcD1fLnR4KHAsMSwtMSkscCE9PS0xJiYodGhpcy5EPW5ldyBCMShwPDE/MTpwLDNFNSwuMSksdGhpcy5vLnNldEludGVydmFsKHRoaXMuRC5qKSl9fWEmJgphKCk7dGhpcy5JPTB9LGw9KG4scCk9Pnt2YXIgcj1HXyhkLGc1LDMpO3ZhciB0PU51bWJlcihJXyhkLDE0KSk7QzEodGhpcy5EKTt0aGlzLm8uc2V0SW50ZXJ2YWwodGhpcy5ELmopO249PT00MDEmJmUmJih0aGlzLlFhPWUpO3QmJih0aGlzLkIrPXQpO3A9PT12b2lkIDAmJihwPXRoaXMuaXNSZXRyeWFibGUobikpO3AmJih0aGlzLmo9ci5jb25jYXQodGhpcy5qKSx0aGlzLlpnfHx0aGlzLm8uZW5hYmxlZHx8dGhpcy5vLnN0YXJ0KCkpO2ImJmIoIm5ldC1zZW5kLWZhaWxlZCIsbik7Kyt0aGlzLkl9LG09KCk9Pnt0aGlzLm5ldHdvcmsmJnRoaXMubmV0d29yay5zZW5kKGgsayxsKX07Zj9mLnRoZW4obj0+e2guT2pbIkNvbnRlbnQtRW5jb2RpbmciXT0iZ3ppcCI7aC5PalsiQ29udGVudC1UeXBlIl09ImFwcGxpY2F0aW9uL2JpbmFyeSI7aC5ib2R5PW47aC5HdT0yO20oKX0sKCk9PnttKCl9KTptKCl9fX19aXNSZXRyeWFibGUoYSl7cmV0dXJuIDUwMDw9YSYmYTw2MDB8fGE9PT00MDF8fAphPT09MH19O3ZhciBQdmE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnB1PXR5cGVvZiBBYm9ydENvbnRyb2xsZXIhPT0idW5kZWZpbmVkIn1hc3luYyBzZW5kKGEsYixjKXt2YXIgZD10aGlzLnB1P25ldyBBYm9ydENvbnRyb2xsZXI6dm9pZCAwLGU9ZCYmYS50aW1lb3V0TWlsbGlzPjA/c2V0VGltZW91dCgoKT0+e2QuYWJvcnQoKX0sYS50aW1lb3V0TWlsbGlzKTp2b2lkIDA7dHJ5e2xldCBmPWF3YWl0IGZldGNoKGEudXJsLHttZXRob2Q6YS5yZXF1ZXN0VHlwZSxoZWFkZXJzOnsuLi5hLk9qfSwuLi4oYS5ib2R5JiZ7Ym9keTphLmJvZHl9KSwuLi4oYS53aXRoQ3JlZGVudGlhbHMmJntjcmVkZW50aWFsczoiaW5jbHVkZSJ9KSxzaWduYWw6YS50aW1lb3V0TWlsbGlzJiZkP2Quc2lnbmFsOm51bGx9KTtmLnN0YXR1cz09PTIwMD9iPy4oYXdhaXQgZi50ZXh0KCkpOmM/LihmLnN0YXR1cyl9Y2F0Y2goZil7c3dpdGNoKGY/Lm5hbWUpe2Nhc2UgIkFib3J0RXJyb3IiOmM/Lig0MDgpO2JyZWFrO2RlZmF1bHQ6Yz8uKDQwMCl9fWZpbmFsbHl7Y2xlYXJUaW1lb3V0KGUpfX1XaSgpe3JldHVybiA0fX07dmFyIFMxPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCk7dGhpcy5sb2dTb3VyY2U9MTgyODt0aGlzLnNlc3Npb25JbmRleD0iMCI7dGhpcy5OZT0iaHR0cHM6Ly9wbGF5Lmdvb2dsZS5jb20vbG9nP2Zvcm1hdD1qc29uJmhhc2Zhc3Q9dHJ1ZSI7dGhpcy5uZXR3b3JrPXRoaXMuYnVpbGRMYWJlbD1udWxsO3RoaXMuY29tcG9uZW50SWQ9IiI7dGhpcy5qPXRoaXMubGY9bnVsbDt0aGlzLm89ITE7dGhpcy5wYWdlSWQ9bnVsbDt0aGlzLmJ1ZmZlclNpemU9dm9pZCAwO3RoaXMuWD1udWxsfW5sKCl7dGhpcy52PSEwO3JldHVybiB0aGlzfWJ1aWxkKCl7dGhpcy5uZXR3b3JrfHwodGhpcy5uZXR3b3JrPW5ldyBQdmEpO3ZhciBhPW5ldyBPdmEoe2xvZ1NvdXJjZTp0aGlzLmxvZ1NvdXJjZSxTZjp0aGlzLlNmP3RoaXMuU2Y6Xy5QZCxzZXNzaW9uSW5kZXg6dGhpcy5zZXNzaW9uSW5kZXgsdEI6dGhpcy5OZSx5ZDohMSxaZzohMSxubDp0aGlzLnYsTm86dGhpcy5ObyxuZXR3b3JrOnRoaXMubmV0d29ya30pOwpFWih0aGlzLGEpO2lmKHRoaXMuYnVpbGRMYWJlbCl7dmFyIGI9dGhpcy5idWlsZExhYmVsLGM9dzEoYS52KTtCWihjLDcsYil9YS5NPW5ldyBHdmE7dGhpcy5jb21wb25lbnRJZCYmKGEuY29tcG9uZW50SWQ9dGhpcy5jb21wb25lbnRJZCk7dGhpcy5sZiYmKGEubGY9dGhpcy5sZik7dGhpcy5wYWdlSWQmJihhLnBhZ2VJZD10aGlzLnBhZ2VJZCk7dGhpcy5qJiYoKGM9dGhpcy5qKT8oYS5leHBlcmltZW50SWRzfHwoYS5leHBlcmltZW50SWRzPW5ldyBxdmEpLGI9YS5leHBlcmltZW50SWRzLGM9Yy5zZXJpYWxpemUoKSxCWihiLDQsYykpOmEuZXhwZXJpbWVudElkcyYmXy5xdyhhLmV4cGVyaW1lbnRJZHMsNCkpO3RoaXMubyYmKGEueWE9YS5aKTt4c2EoYS52KTt0aGlzLmJ1ZmZlclNpemUmJihhLmJ1ZmZlclNpemU9dGhpcy5idWZmZXJTaXplKTt0aGlzLm5ldHdvcmsuVWgmJnRoaXMubmV0d29yay5VaCh0aGlzLmxvZ1NvdXJjZSk7dGhpcy5uZXR3b3JrLmlBJiZ0aGlzLm5ldHdvcmsuaUEoYSk7CnJldHVybiBhfX07dmFyIE5zYT1jbGFzcyBleHRlbmRzIF8uYWV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLmxvZ1NvdXJjZT0xODI4O3RoaXMuY29tcG9uZW50SWQ9IiI7YXx8KGE9bmV3IFMxLGEuY29tcG9uZW50SWQ9IiIsRVoodGhpcyxhKSxhPWEuYnVpbGQoKSk7dGhpcy5qPWF9Zmx1c2goYSl7YT1hfHxbXTtpZihhLmxlbmd0aCl7bGV0IGI9bmV3IEZ2YSxjPVtdO2ZvcihsZXQgZD0wO2Q8YS5sZW5ndGg7ZCsrKXtsZXQgZT1hW2RdLGY9cjEoZSk7Yy5wdXNoKGYpO2UuY2xlYXIoKX1IXyhiLDEsYyk7dGhpcy5qLmRpc3BhdGNoKGIpO3RoaXMuai5mbHVzaCgpfX19O3ZhciBIMT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX19O3ZhciBpNT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYyl7dGhpcy5vPWE7dGhpcy52PWI7dGhpcy5maWVsZHM9Y3x8W107dGhpcy5qPW5ldyBNYXB9Y2xlYXIoKXt0aGlzLmouY2xlYXIoKX19O3ZhciBMMT1jbGFzcyBleHRlbmRzIGk1e2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoYSwzLGIpfX07dmFyIEoxPWNsYXNzIGV4dGVuZHMgaTV7Y29uc3RydWN0b3IoYSxiKXtzdXBlcihhLDIsYil9cmVjb3JkKGEsLi4uYil7SHNhKHRoaXMsYSwuLi5iKX19O3ZhciBUMT1jbGFzcyBleHRlbmRzIF8uYWV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLlo9YTt0aGlzLkk9MDt0aGlzLkI9MTAwO3RoaXMuTT0hMTt0aGlzLnY9bmV3IE1hcDt0aGlzLlU9bmV3IFNldDt0aGlzLmZsdXNoSW50ZXJ2YWw9M0U0O3RoaXMubz1uZXcgXy5qeSh0aGlzLmZsdXNoSW50ZXJ2YWwpO3RoaXMuby5saXN0ZW4oInRpY2siLHRoaXMuRCwhMSx0aGlzKTtFWih0aGlzLHRoaXMubyl9c2VuZElzb2xhdGVkUGF5bG9hZChhKXt0aGlzLk09YTt0aGlzLkI9MX1EKCl7dmFyIGE9Wy4uLnRoaXMudi52YWx1ZXMoKV0uZmlsdGVyKGI9PmIuai5zaXplKTthLmxlbmd0aCYmdGhpcy5aLmZsdXNoKGEsdGhpcy5NKTtLc2EoYSk7dGhpcy5JPTA7dGhpcy5vLmVuYWJsZWQmJnRoaXMuby5zdG9wKCl9aihhKXtyZXR1cm4gdGhpcy5VLmhhcyhhKT92b2lkIDA6dGhpcy52LmdldChhKX1yZWNvcmQoYSxiLC4uLmMpeyhhPXRoaXMuaihhKSkmJmEgaW5zdGFuY2VvZiBKMSYmKGEucmVjb3JkKGIsCi4uLmMpLE4xKHRoaXMpKX19O3ZhciBzMj1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoYik7dGhpcy5jb2RlPWE7dGhpcy5tZXRhZGF0YT17fTt0aGlzLm5hbWU9IlJwY0Vycm9yIjtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxuZXcudGFyZ2V0LnByb3RvdHlwZSl9dG9TdHJpbmcoKXt2YXIgYT1gUnBjRXJyb3IoJHtMc2EodGhpcy5jb2RlKXx8U3RyaW5nKHRoaXMuY29kZSl9KWA7dGhpcy5tZXNzYWdlJiYoYSs9IjogIit0aGlzLm1lc3NhZ2UpO3JldHVybiBhfX07dmFyIERzYT1jbGFzc3tzZW5kKGEsYj0oKT0+e30sYz0oKT0+e30pe18ubHkoYS51cmwsZD0+e2Q9ZC50YXJnZXQ7aWYoZC5pc1N1Y2Nlc3MoKSl7dHJ5e3ZhciBlPWQucmE/ZC5yYS5yZXNwb25zZVRleHQ6IiJ9Y2F0Y2goZil7ZT0iIn1iKGUpfWVsc2UgYyhfLlJ4KGQpKX0sYS5yZXF1ZXN0VHlwZSxhLmJvZHksYS5PaixhLnRpbWVvdXRNaWxsaXMsYS53aXRoQ3JlZGVudGlhbHMpfVdpKCl7cmV0dXJuIDF9fTt2YXIgajU9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLlg9YTt0aGlzLmV2ZW50PWI7dGhpcy5zdGFydFRpbWU9UTEoKX1kb25lKCl7dGhpcy5YLnYodGhpcy5ldmVudCxRMSgpLXRoaXMuc3RhcnRUaW1lKX19LGs1PWNsYXNzIGV4dGVuZHMgc3Zhe2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKX19LFNzYT1jbGFzcyBleHRlbmRzIGs1e0IoKXt9aigpe312KCl7fUpiKCl7fU0oKXt9SSgpe31vKCl7fVooKXt9RCgpe31VKCl7fX0sUXZhPWNsYXNzIGV4dGVuZHMgazV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLlg9YTt0aGlzLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT52b2lkIHRoaXMuWC5kaXNwb3NlKCkpfXVwZGF0ZShhKXt0aGlzLlguZGlzcG9zZSgpO3RoaXMuWD1hfWooYSl7dGhpcy5YLmooYSl9dihhLGIpe3RoaXMuWC52KGEsYil9SmIoYSl7dGhpcy5YLkpiKGEpfU0oYSl7dGhpcy5YLk0oYSl9SShhLGIpe3RoaXMuWC5JKGEsYil9bygpe3RoaXMuWC5vKCl9WihhKXt0aGlzLlguWihhKX1EKGEpe3RoaXMuWC5EKGEpfVUoYSl7dGhpcy5YLlUoYSl9QihhKXt0aGlzLlguQihhKX19LApSdmE9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoKTt0aGlzLmNhbGxiYWNrPWE7dGhpcy5vPWI7dGhpcy5qPS1iO3RoaXMuYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9PnZvaWQgY2xlYXJUaW1lb3V0KHRoaXMudGltZXIpKX19LFN2YT1jbGFzcyBleHRlbmRzIGs1e2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoKTt0aGlzLm1ldHJpY3M9YTt0aGlzLm1iPWJ9QihhKXt0aGlzLm1ldHJpY3MuQUEucmVjb3JkKGEsdGhpcy5tYil9aihhKXt0aGlzLm1ldHJpY3MuZXZlbnRDb3VudC5vKGEsdGhpcy5tYil9dihhLGIpe3RoaXMubWV0cmljcy5Odi5yZWNvcmQoYixhLHRoaXMubWIpfUpiKGEpe3RoaXMubWV0cmljcy5lcnJvckNvdW50Lm8oYSx0aGlzLm1iKX1aKGEpe3RoaXMubWV0cmljcy5KQi5vKGEsdGhpcy5tYil9RChhKXt0aGlzLm1ldHJpY3MuSnUubyhhLHRoaXMubWIpfVUoYSl7dGhpcy5tZXRyaWNzLklCLm8oYSx0aGlzLm1iKX1NKGEpe3RoaXMubWV0cmljcy5wYXlsb2FkU2l6ZS5yZWNvcmQoYSwKdGhpcy5tYil9SShhLGIpe3RoaXMubWV0cmljcy5YeS5yZWNvcmQoYixhLHRoaXMubWIpfX0sUXNhPWNsYXNzIGV4dGVuZHMgU3Zhe2NvbnN0cnVjdG9yKGEsYj1bXSl7dmFyIGM9e21iOmEubWJ8fCJfIix6bDphLnpsfHxbXSxubTphLm5tfDAsTmU6YS5OZSxGajphLkZqfHwoKCk9Pnt9KSxJZzphLklnfHwoKGUsZik9Pk9zYShlLGYsYy5GaixjLk5lKSl9LGQ9Yy5JZygiNTMiLGMuemwuY29uY2F0KGIpKTtzdXBlcih7QUE6bmV3IHR2YShkKSxlcnJvckNvdW50Om5ldyB4dmEoZCksZXZlbnRDb3VudDpuZXcgdnZhKGQpLE52Om5ldyB3dmEoZCkseUw6bmV3IHV2YShkKSxKQjpuZXcgeXZhKGQpLEp1Om5ldyB6dmEoZCksSUI6bmV3IEF2YShkKSxwYXlsb2FkU2l6ZTpuZXcgQnZhKGQpLFh5Om5ldyBDdmEoZCl9LGMubWIpO3RoaXMub3B0aW9ucz1jO3RoaXMuc2VydmljZT1kO3RoaXMub2E9IWEuSWc7dGhpcy5nYT1uZXcgUnZhKCgpPT52b2lkIHRoaXMuc2VydmljZS5EKCksYy5ubSk7CnRoaXMuYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9Pnt0aGlzLmdhLmRpc3Bvc2UoKTt0aGlzLm9hJiZ0aGlzLnNlcnZpY2UuZGlzcG9zZSgpfSk7Yi5zbGljZSgpLnNvcnQobHJhKX1vKCl7UHNhKHRoaXMuZ2EpfX07dmFyIFIyPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhLDAsUjIubWVzc2FnZUlkKX19LFR2YT1mdW5jdGlvbihhKXtyZXR1cm4gXy5DYyhiPT5iIGluc3RhbmNlb2YgYSYmIV8uQmMoYikpfShSMik7UjIubWVzc2FnZUlkPSJiZmtqIjt2YXIgaTE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07dmFyIGw1PWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19LFV2YT1TXyhsNSk7dmFyIGQyPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMudj1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMjAwKTt0aGlzLmo9bmV3IGw1O2lmKCJjaGFsbGVuZ2UiaW4gYSYmVHZhKGEuY2hhbGxlbmdlKSl7dmFyIGI9Sl8oYS5jaGFsbGVuZ2UsNCx2b2lkIDAsXy53eik7dmFyIGM9Sl8oYS5jaGFsbGVuZ2UsNSx2b2lkIDAsXy53eik7Sl8oYS5jaGFsbGVuZ2UsNyx2b2lkIDAsXy53eikmJih0aGlzLmo9VXZhKEpfKGEuY2hhbGxlbmdlLDcsdm9pZCAwLF8ud3opKSl9ZWxzZSh7cHJvZ3JhbTpiLGdsb2JhbE5hbWU6Y309YSk7dGhpcy5hZGRPbkRpc3Bvc2VDYWxsYmFjayhhc3luYygpPT57dmFyIHt1QTpufT1hd2FpdCB0aGlzLm87bj8uKCl9KTt0aGlzLlg9VTEoYS5uZ3x8e30sdGhpcy5qKTtFWih0aGlzLHRoaXMuWCk7dmFyIGQ9bmV3IF8uY3M7dGhpcy5vPWQucHJvbWlzZTt0aGlzLlguaigidCIpO3ZhciBlPXRoaXMuWC5zaGFyZSgpLGY9bmV3IGo1KGUsCiJ0IiksaD0obixwLHIsdCk9PntpZighdGhpcy5YLmlhKCkpe3ZhciB2PSJrIjtwP3Y9ImgiOnImJih2PSJ1Iik7diE9PSJrIj90IT09MCYmKHRoaXMuWC5qKHYpLHRoaXMuWC52KHYsbikpOnRoaXMudjw9MD8odGhpcy5YLmoodiksdGhpcy5YLnYodixuKSx0aGlzLnY9TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjIwMCkpOnRoaXMudi0tfX0saz0obixwLHIsdCk9PntQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57Zi5kb25lKCk7ZS5vKCk7ZS5kaXNwb3NlKCk7ZC5yZXNvbHZlKHt5dTpuLHVBOnAsQXo6cixOdTp0fSl9KX0sbD1bKG4scCk9Pnt0aGlzLlgudihuLHApfSxuPT57dGhpcy5YLkpiKG4pfSxuPT57dGhpcy5YLk0obil9LChuLHApPT57dGhpcy5YLkkobixwKX1dO2lmKCFfLnVbY10pdGhyb3cgdGhpcy5YLkpiKDI1KSxFcnJvcigibmUiKTtpZighXy51W2NdLmEpdGhyb3cgdGhpcy5YLkpiKDI2KSxFcnJvcigib2UiKTt0cnl7bGV0IG49Xy51W2NdLmE7Yz1bXTtsZXQgcD0KW107dmFyIG09ajEodGhpcy5qKTtmb3IobGV0IHY9MDt2PG0ubGVuZ3RoO3YrKyljLnB1c2gobVt2XSkscC5wdXNoKDEpO2xldCByPWxzYSh0aGlzLmopO2ZvcihtPTA7bTxyLmxlbmd0aDttKyspYy5wdXNoKHJbbV0pLHAucHVzaCgyKTtsZXQgW3RdPW4oYixrLCEwLGEuRnMsaCxbYyxwXSxKXyh0aGlzLmosNSksITEsbCk7dGhpcy5CPXQ7dGhpcy5DZz1kLnByb21pc2UudGhlbigoKT0+e30pfWNhdGNoKG4pe3Rocm93IHRoaXMuWC5KYigyOCksbjt9fXNuYXBzaG90KGEpe2lmKHRoaXMuaWEoKSl0aHJvdyBFcnJvcigicGUiKTt0aGlzLlguaigibiIpO3ZhciBiPXRoaXMuWC5zaGFyZSgpO3JldHVybiB0aGlzLm8udGhlbigoe3l1OmN9KT0+bmV3IFByb21pc2UoZD0+e3ZhciBlPW5ldyBqNShiLCJuIik7YyhmPT57ZS5kb25lKCk7Yi5CKGYubGVuZ3RoKTtiLm8oKTtiLmRpc3Bvc2UoKTtkKGYpfSxbYS5LYyxhLllqLGEuSXMsYS54bl0pfSkpfVhyKGEpe2lmKHRoaXMuaWEoKSl0aHJvdyBFcnJvcigicGUiKTsKdGhpcy5YLmooIm4iKTt2YXIgYj1SMSh0aGlzLlgsKCk9PnRoaXMuQihbYS5LYyxhLllqLGEuSXMsYS54bl0pLCJuIik7dGhpcy5YLkIoYi5sZW5ndGgpO3RoaXMuWC5vKCk7cmV0dXJuIGJ9SWgoYSl7dGhpcy5vLnRoZW4oKHtBejpifSk9PntiPy4oYSl9KX1CaShhLGIpe3JldHVybiB0aGlzLm8udGhlbigoe051OmN9KT0+Yz8uKGEsYiwhMSkpfVZoKCl7cmV0dXJuIHRoaXMuWC5zaGFyZSgpfX07dmFyIFYxPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5wcm9taXNlcz17fTt0aGlzLmo9bnVsbH19O3ZhciBsdWE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07dmFyIHEyPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMub3B0aW9ucz1hO3RoaXMuST1uZXcgXy5jczt0aGlzLkNnPXRoaXMuSS5wcm9taXNlO3RoaXMuRD1uZXcgXy5jczt0aGlzLlo9MTt0aGlzLnY9bmV3IF8uY3M7dGhpcy5CPVtdO3RoaXMuaXNQYXVzZWQ9ITE7dGhpcy5Haj1hLkdqfHwoKCk9Pnt9KTt0aGlzLlg9bmV3IFF2YShVMShhLm5nfHx7fSkpO2F0YSh0aGlzLGEub2QsYS5zeCxhLkhLLGEuTkssey4uLlZ2YSwuLi4oYS5MZ3x8e30pfSk7dGhpcy5hZGRPbkRpc3Bvc2VDYWxsYmFjaygoKT0+dm9pZCBidGEodGhpcykpfWFzeW5jIHNuYXBzaG90KGEpe2lmKHRoaXMuaWEoKSl0aHJvdyBFcnJvcigicGUiKTt0aGlzLm98fHRoaXMuTXx8YXdhaXQgdGhpcy5ELnByb21pc2U7aWYodGhpcy5vKXJldHVybiBhd2FpdCB0aGlzLm8uc25hcHNob3QoYSk7dGhyb3cgdGhpcy5NO31wYXVzZSgpe3RoaXMuaWEoKXx8dGhpcy5pc1BhdXNlZHx8KHRoaXMuaXNQYXVzZWQ9CiEwLHRoaXMuaiYmdGhpcy5qLnBhdXNlKCkpfXJlc3VtZSgpeyF0aGlzLmlhKCkmJnRoaXMuaXNQYXVzZWQmJih0aGlzLmlzUGF1c2VkPSExLHRoaXMuaiYmdGhpcy5qLnJlc3VtZSgpKX1hc3luYyBjaGVja0ZvclJlZnJlc2goKXtpZih0aGlzLmlhKCkpdGhyb3cgRXJyb3IoInBlIik7aWYodGhpcy5qKXt2YXIgYT10aGlzLmo7YS5pc0V4cGlyZWQoKT8oZzIoYSksYS5RaCgwKSxhPSEwKTphPSExO2EmJmF3YWl0IHRoaXMudi5wcm9taXNlfWVsc2UgYXdhaXQgdGhpcy52LnByb21pc2V9YXN5bmMgVSgpe2lmKHRoaXMuaWEoKSl0aHJvdyBFcnJvcigicGUiKTt0aGlzLmo/Lm8oKTthd2FpdCB0aGlzLnYucHJvbWlzZX1JaChhKXt0aGlzLm8/LkloPy4oYSl9QmkoYSxiKXtyZXR1cm4gdGhpcy5vPy5CaT8uKGEsYik/P1Byb21pc2UucmVzb2x2ZSgpfWhhbmRsZUVycm9yKGEpe3RoaXMuaWEoKXx8KHRoaXMuTT1hLHRoaXMuRC5yZXNvbHZlKCksdGhpcy5vcHRpb25zLkVqPy4oYSkpfVZoKCl7cmV0dXJuIHRoaXMuWC5zaGFyZSgpfX0sClZ2YT17RnI6NDMyRTUsZWs6M0U1LGxzOjEwLGF2OjFFNCxWdjozRTQscXk6M0U0LG1BOjZFNCxLdjoxRTMsSnY6NkU0LEx2OjZFNSxNdjouMjUsSXY6MixtYXhBdHRlbXB0czoxMH0sYzI9Y2xhc3N7Y29uc3RydWN0b3IoYSxiLGMpe3RoaXMuZW5kVGltZU1zPTA7dGhpcy5qPW51bGw7dGhpcy5pc1BhdXNlZD0hMTt0aGlzLnRpY2s9KCk9PntpZighdGhpcy5pc1BhdXNlZCl7dmFyIGQ9dGhpcy5lbmRUaW1lTXMtRGF0ZS5ub3coKTtkPD10aGlzLnY/KHRoaXMuaj1udWxsLHRoaXMuUWgoMCkpOnRoaXMuaj1zZXRUaW1lb3V0KHRoaXMudGljayxNYXRoLm1pbihkLHRoaXMuZWspKX19O3RoaXMuZWs9Yjt0aGlzLnY9Yzt0aGlzLnByb21pc2U9bmV3IFByb21pc2UoZD0+e3RoaXMuUWg9ZH0pO2N0YSh0aGlzLGEpfXBhdXNlKCl7dGhpcy5pc1BhdXNlZHx8KHRoaXMuaXNQYXVzZWQ9ITAsZzIodGhpcykpfXJlc3VtZSgpe3RoaXMuaXNQYXVzZWQmJih0aGlzLmlzUGF1c2VkPSExLHRoaXMudGljaygpKX1vKCl7ZzIodGhpcyk7CnRoaXMuZW5kVGltZU1zPTA7dGhpcy5pc1BhdXNlZD0hMTt0aGlzLlFoKDEpfWlzRXhwaXJlZCgpe3JldHVybiBEYXRlLm5vdygpPnRoaXMuZW5kVGltZU1zfX07dmFyIGR0YT1NYXRoLmltdWw/PygoYSxiKT0+YSpifDApLGoyPVsxOTYsMjAwLDIyNCwxOF0sbTI9Y2xhc3N7Y29uc3RydWN0b3IoYSxiPTAsYz1bXSl7dGhpcy5tYXhJdGVtcz1hO3RoaXMuaj1iO3RoaXMubz1jfXNlcmlhbGl6ZSgpe3JldHVybiBTdHJpbmcodGhpcy5qKSsiLCIrdGhpcy5vLmpvaW4oKX1yYihhLGIpe3ZhciBjPXZvaWQgMDtpZih0aGlzLm9bdGhpcy5qXSE9PWEpe2xldCBkPXRoaXMuby5pbmRleE9mKGEpO2QhPT0tMT8odGhpcy5vLnNwbGljZShkLDEpLGQ8dGhpcy5qJiZ0aGlzLmotLSx0aGlzLm8uc3BsaWNlKHRoaXMuaiwwLGEpKTooYz10aGlzLm9bdGhpcy5qXSx0aGlzLm9bdGhpcy5qXT1hKX10aGlzLmo9KHRoaXMuaisxKSV0aGlzLm1heEl0ZW1zO2E9aDIoImlVNXEtIU85QCQiLHRoaXMuc2VyaWFsaXplKCkpO2MmJmEmJmIoYyk7cmV0dXJuIGF9fSxpc2E9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLlg9Yjt0cnl7dmFyIGM9Z2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZSYmCiEhZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtJiYhIWdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSYmISFnbG9iYWxUaGlzLnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW19Y2F0Y2goZCl7Yz0hMX1jJiYodGhpcy5pbmRleD1ndGEoYSkpfWooYSxiLGMsZCl7dmFyIGU9dGhpcy5pbmRleD9SMSh0aGlzLlgsKCk9PmV0YSh0aGlzLmluZGV4LGsyKGEpLGIsYyxkKSwiVyIpOiJ1Ijt0aGlzLlguVShlKX1vKGEsYil7dmFyIFtjLGRdPXRoaXMuaW5kZXg/UjEodGhpcy5YLCgpPT5mdGEoazIoYSksYiksIlIiKTpbInUiXTt0aGlzLlguRChjKTtyZXR1cm4gZH19O3ZhciBtNT1jbGFzcyBleHRlbmRzIF8uYWV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLlg9YTt0aGlzLnY9bmV3IF8uY3N9emooYSxiKXt2YXIgYz10aGlzLm9lKGEpO2I/LihjKTtyZXR1cm4gUjEodGhpcy5YLCgpPT5fLnNjKGMsMiksdGhpcy5vKX1zbShhLGIsYyl7cmV0dXJuIFIxKHRoaXMuWCwoKT0+Yj90aGlzLnpqKGEsYyk6dGhpcy5vZShhLGMpLHRoaXMuail9fSx1Mj1jbGFzcyBleHRlbmRzIG01e2NvbnN0cnVjdG9yKGEsYixjLGQpe3N1cGVyKGEpO3RoaXMuQj1iO3RoaXMuST1jO3RoaXMuaj0ibSI7dGhpcy5vPSJ4Ijt0aGlzLkQ9MDtuMih0aGlzLGQpfW9lKGEsYil7dGhpcy5YLmoodGhpcy5qKTsrK3RoaXMuRD49dGhpcy5JJiZ0aGlzLnYucmVzb2x2ZSgpO3ZhciBjPWEoKTthPVIxKHRoaXMuWCwoKT0+dGhpcy5CKGMpLCJDIik7aWYoYT09PXZvaWQgMCl0aHJvdyBuZXcgaDEoMTcsIllOSjpVbmRlZmluZWQiKTtpZighKGEgaW5zdGFuY2VvZiBVaW50OEFycmF5KSl0aHJvdyBuZXcgaDEoMTgsCiJPRE06SW52YWxpZCIpO2I/LihhKTtyZXR1cm4gYX19LGx0YT1jbGFzcyBleHRlbmRzIG01e2NvbnN0cnVjdG9yKGEsYixjKXtzdXBlcihhKTt0aGlzLkI9Yjt0aGlzLmo9ImYiO3RoaXMubz0ieiI7bjIodGhpcyxjKX1vZSgpe3JldHVybiB0aGlzLkJ9fSxrdGE9Y2xhc3MgZXh0ZW5kcyBtNXtjb25zdHJ1Y3RvcihhLGIsYyl7c3VwZXIoYSk7dGhpcy5CPWI7dGhpcy5qPSJ3Ijt0aGlzLm89InoiO24yKHRoaXMsYyl9b2UoKXtyZXR1cm4gUjEodGhpcy5YLCgpPT5fLnVjKHRoaXMuQiksImQiKX16aigpe3JldHVybiB0aGlzLkJ9fSxydGE9Y2xhc3MgZXh0ZW5kcyBtNXtjb25zdHJ1Y3RvcihhLGIpe3N1cGVyKGEpO3RoaXMuZXJyb3I9Yjt0aGlzLmo9ImUiO3RoaXMubz0ieSJ9b2UoKXtpZih0aGlzLkIpcmV0dXJuIHRoaXMuQjt0aGlzLkI9cDIodGhpcyxhPT4iXyIrZXJhKGEpKTtyZXR1cm4gcDIodGhpcyxhPT5hKX19LHF0YT1jbGFzcyBleHRlbmRzIG01e2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoYSk7CnRoaXMuY2xpZW50U3RhdGU9Yjt0aGlzLmo9IlMiO3RoaXMubz0icSJ9b2UoKXt2YXIgYT1NYXRoLmZsb29yKERhdGUubm93KCkvMUUzKSxiPVtNYXRoLnJhbmRvbSgpKjI1NSxNYXRoLnJhbmRvbSgpKjI1NV0sYz1iLmNvbmNhdChbMCx0aGlzLmNsaWVudFN0YXRlXSxbYT4+MjQmMjU1LGE+PjE2JjI1NSxhPj44JjI1NSxhJjI1NV0pO2E9bmV3IFVpbnQ4QXJyYXkoMitjLmxlbmd0aCk7YVswXT0zNDthWzFdPWMubGVuZ3RoO2Euc2V0KGMsMik7Yz1hLnN1YmFycmF5KDIpO2I9Yi5sZW5ndGg7Zm9yKGxldCBkPWI7ZDxjLmxlbmd0aDsrK2QpY1tkXV49Y1tkJWJdO3RoaXMuWC5aKHRoaXMuY2xpZW50U3RhdGUpO3JldHVybiBhfX07dmFyIFd2YT17V3Y6M0U0LEJBOjJFNH0scnVhPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMueWc9bmV3IF8uY3M7dGhpcy52PTA7dGhpcy5vPXZvaWQgMDt0aGlzLnN0YXRlPTI7dGhpcy52bT1hLnZtO3RoaXMub2Q9YS5vZDt0aGlzLkxnPXsuLi5XdmEsLi4uKGEuTGd8fHt9KX07dGhpcy5YPWEudm0uVmgoKTt0aGlzLm9uRXJyb3I9YS5vbkVycm9yPz8oKCk9Pnt9KTt0aGlzLlFuPWEuUW58fCExO2lmKFh2YShhKSl7bGV0IGQ9dGhpcy52bTt0aGlzLkI9KCk9PmQuVSgpLmNhdGNoKGU9Pnt0aGlzLm89ZT10aGlzLnJlcG9ydEVycm9yKG5ldyBoMSh0aGlzLmo/MjA6MzIsIlRSRzpEaXNwb3NlZCIsZSkpO3RoaXMuaj8uZGlzcG9zZSgpO3RoaXMuaj12b2lkIDA7dGhpcy55Zy5yZWplY3QoZSl9KTtmMihkLCgpPT52b2lkIHQyKHRoaXMpKTtkLlo9PT0yJiZ0Mih0aGlzKX1lbHNlIHRoaXMuQj1hLmlLLHQyKHRoaXMpO3ZhciBiPXRoaXMuWC5zaGFyZSgpOwpiLmooIm8iKTt2YXIgYz1uZXcgajUoYiwibyIpO3RoaXMueWcucHJvbWlzZS50aGVuKCgpPT57Yy5kb25lKCk7Yi5vKCk7Yi5kaXNwb3NlKCl9LCgpPT52b2lkIGIuZGlzcG9zZSgpKTt0aGlzLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57dGhpcy5qPyh0aGlzLmouZGlzcG9zZSgpLHRoaXMuaj12b2lkIDApOnRoaXMubz90aGlzLlgubygpOih0aGlzLm89dGhpcy5yZXBvcnRFcnJvcihuZXcgaDEoMzIsIlROUDpEaXNwb3NlZCIpKSx0aGlzLlgubygpLHRoaXMueWcucmVqZWN0KHRoaXMubykpfSk7RVoodGhpcyx0aGlzLlgpfW9lKGEpe3JldHVybiB3Mih0aGlzLHsuLi5hfSwhMSl9emooYSl7cmV0dXJuIHcyKHRoaXMsey4uLmF9LCEwKX1yZXBvcnRFcnJvcihhKXt0aGlzLlguSmIoYS5jb2RlKTt0aGlzLm9uRXJyb3IoYSk7cmV0dXJuIGF9fSxYdmE9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQ2MoYj0+e2lmKCEoMCxfLnFyKShiKSlyZXR1cm4hMTtmb3IobGV0IFtjLGRdb2YgT2JqZWN0LmVudHJpZXMoYSkpe2xldCBlPQpjLGY9ZDtpZighKGUgaW4gYikpe2lmKGYuQko9PT0hMCljb250aW51ZTtyZXR1cm4hMX1pZighZihiW2VdKSlyZXR1cm4hMX1yZXR1cm4hMH0pfSh7dm06ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQ2MoYj0+YiBpbnN0YW5jZW9mIGEpfShxMil9LCIiKTt2YXIgWnZhPWNsYXNze2NvbnN0cnVjdG9yKCl7aWYoIW41KXtuNT1uZXcgVDEobmV3IFl2YSk7dmFyIGE9Xy5zaigiY2xpZW50X3N0cmVhbXpfd2ViX2ZsdXNoX2NvdW50IiwtMSk7YSE9PS0xJiYobjUuQj1hKX10aGlzLnY9YT1uNTtNMShhLCIvY2xpZW50X3N0cmVhbXoveW91dHViZS9hYmEvZ2FjIixsMSgidHlwZSIpLGwxKCJzZXF1ZW5jZSIpKX1vKGEsYil7TzEodGhpcy52LCIvY2xpZW50X3N0cmVhbXoveW91dHViZS9hYmEvZ2FjIixhLGIpfWooKXtyZXR1cm4gdGhpcy52LmooIi9jbGllbnRfc3RyZWFtei95b3V0dWJlL2FiYS9nYWMiKX19O3ZhciBtdWE9U18oY2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX0pO3ZhciAkdmE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07dmFyIG81PVswLHB2YSwtMV07dmFyIHA1PVswLGh2YSwtMV07dmFyIGF3YT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fTt2YXIgYndhPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX1oYXNBdHRyaWJ1dGVzKCl7dmFyIGE9dGhpcy5EYTtyZXR1cm4gXy5NeChhLGFbXy5BY118MCxhd2EsMTkpIT09dm9pZCAwfX07dmFyIGN3YT1mdW5jdGlvbihhKXtyZXR1cm4gYj0+Xy5veihiLGEpfShbMCxjNSwtMSxYNCwkNCxvNSwtMSxXNCxaNCxjNSxwNSwkNCxjNSwtMSxbMCxvNSwtMV0sWjQsWTQscDUsVzQsWzAsMSxaNCwtNCxWNCxbMCxXNCwtMSxaNF0sJDQsVzQsXy55eixbMCxjNSxaNF0sWjQsLTEsYzUsLTIsVzQsLTEsYzUsVzQsYzUsWjQsWzAsMyxaNCwtMSw0LG52YV0sVjQsYjUsWzAsYzUsLTEsJDRdLF8ueHpdLCQ0LG92YSxfLnl6LFswLHA1LF8ueXosWzAsJDQsYzVdLFc0LGM1LC0xXSwxLF8ueXosWzAsWTQsLTEsYjVdLGM1LHA1XSk7ejIucHJvdG90eXBlLmlzSW5wdXRWYWxpZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLkIhPTN9O3oyLnByb3RvdHlwZS5kb25lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuQj09PTJ9Owp6Mi5wcm90b3R5cGUucGFyc2U9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYigpe2Zvcig7cDxhLmxlbmd0aDspaWYoeTIoYVtwXSkpcCsrLGYudisrO2Vsc2UgYnJlYWs7cmV0dXJuIHA8bH1mdW5jdGlvbiBjKCl7Zm9yKHZhciB0Ozspe3Q9YVtwKytdO2lmKCF0KWJyZWFrO2YudisrO3N3aXRjaChmLmope2Nhc2UgMDp0PT09InsiP2Yuaj0yOnQ9PT0iWyI/Zi5qPTQ6eTIodCl8fEEyKGYsYSxwKTtjb250aW51ZTtjYXNlIDc6Y2FzZSAyOmlmKHkyKHQpKWNvbnRpbnVlO2lmKGYuaj09PTcpaC5wdXNoKDgpO2Vsc2UgaWYodD09PSJ9Iil7ZSgie30iKTtmLmo9ZCgpO2NvbnRpbnVlfWVsc2UgaC5wdXNoKDMpO3Q9PT0nIic/Zi5qPTY6QTIoZixhLHApO2NvbnRpbnVlO2Nhc2UgODpjYXNlIDM6aWYoeTIodCkpY29udGludWU7dD09PSI6Ij8oZi5qPT09MyYmKGgucHVzaCgzKSxmLm8rKyksZi5qPTEpOnQ9PT0ifSI/KGYuby0tLGUoKSxmLmo9ZCgpKTp0PT09IiwiPyhmLmo9PT0zJiZoLnB1c2goMyksCmYuaj03KTpBMihmLGEscCk7Y29udGludWU7Y2FzZSA0OmNhc2UgMTppZih5Mih0KSljb250aW51ZTtpZihmLmo9PT00KWlmKGYubysrLGYuaj0xLHQ9PT0iXSIpe2Yuby0tO2lmKGYubz09PTApe2Yuaj01O3JldHVybn1lKCJbXSIpO2Yuaj1kKCk7Y29udGludWV9ZWxzZSBoLnB1c2goNSk7dD09PSciJz9mLmo9Njp0PT09InsiP2Yuaj0yOnQ9PT0iWyI/Zi5qPTQ6dD09PSJ0Ij9mLmo9OTp0PT09ImYiP2Yuaj0xMjp0PT09Im4iP2Yuaj0xNjp0IT09Ii0iJiYoIjAxMjM0NTY3ODkiLmluZGV4T2YodCkhPT0tMT9mLmo9MjA6QTIoZixhLHApKTtjb250aW51ZTtjYXNlIDU6aWYodD09PSIsIiloLnB1c2goNSksZi5qPTEsZi5vPT09MSYmKG49cCk7ZWxzZSBpZih0PT09Il0iKXtmLm8tLTtpZihmLm89PT0wKXJldHVybjtlKCk7Zi5qPWQoKX1lbHNlIGlmKHkyKHQpKWNvbnRpbnVlO2Vsc2UgQTIoZixhLHApO2NvbnRpbnVlO2Nhc2UgNjpsZXQgdj1wO2E6Zm9yKDs7KXtmb3IoO2YuSz4wOylpZih0PQphW3ArK10sZi5LPT09ND9mLks9MDpmLksrKywhdClicmVhayBhO2lmKHQ9PT0nIicmJiFmLkQpe2Yuaj1kKCk7YnJlYWt9aWYodD09PSJcXCImJiFmLkQmJihmLkQ9ITAsdD1hW3ArK10sIXQpKWJyZWFrO2lmKGYuRClpZihmLkQ9ITEsdD09PSJ1IiYmKGYuSz0xKSx0PWFbcCsrXSljb250aW51ZTtlbHNlIGJyZWFrO2subGFzdEluZGV4PXA7dD1rLmV4ZWMoYSk7aWYoIXQpe3A9YS5sZW5ndGgrMTticmVha31wPXQuaW5kZXgrMTt0PWFbdC5pbmRleF07aWYoIXQpYnJlYWt9Zi52Kz1wLXY7Y29udGludWU7Y2FzZSA5OmlmKCF0KWNvbnRpbnVlO3Q9PT0iciI/Zi5qPTEwOkEyKGYsYSxwKTtjb250aW51ZTtjYXNlIDEwOmlmKCF0KWNvbnRpbnVlO3Q9PT0idSI/Zi5qPTExOkEyKGYsYSxwKTtjb250aW51ZTtjYXNlIDExOmlmKCF0KWNvbnRpbnVlO3Q9PT0iZSI/Zi5qPWQoKTpBMihmLGEscCk7Y29udGludWU7Y2FzZSAxMjppZighdCljb250aW51ZTt0PT09ImEiP2Yuaj0xMzpBMihmLGEsCnApO2NvbnRpbnVlO2Nhc2UgMTM6aWYoIXQpY29udGludWU7dD09PSJsIj9mLmo9MTQ6QTIoZixhLHApO2NvbnRpbnVlO2Nhc2UgMTQ6aWYoIXQpY29udGludWU7dD09PSJzIj9mLmo9MTU6QTIoZixhLHApO2NvbnRpbnVlO2Nhc2UgMTU6aWYoIXQpY29udGludWU7dD09PSJlIj9mLmo9ZCgpOkEyKGYsYSxwKTtjb250aW51ZTtjYXNlIDE2OmlmKCF0KWNvbnRpbnVlO3Q9PT0idSI/Zi5qPTE3OkEyKGYsYSxwKTtjb250aW51ZTtjYXNlIDE3OmlmKCF0KWNvbnRpbnVlO3Q9PT0ibCI/Zi5qPTE4OkEyKGYsYSxwKTtjb250aW51ZTtjYXNlIDE4OmlmKCF0KWNvbnRpbnVlO3Q9PT0ibCI/Zi5qPWQoKTpBMihmLGEscCk7Y29udGludWU7Y2FzZSAxOTp0PT09Ii4iP2Yuaj0yMDpBMihmLGEscCk7Y29udGludWU7Y2FzZSAyMDppZigiMDEyMzQ1Njc4OS5lRSstIi5pbmRleE9mKHQpIT09LTEpY29udGludWU7ZWxzZSBwLS0sZi52LS0sZi5qPWQoKTtjb250aW51ZTtkZWZhdWx0OkEyKGYsYSxwKX19fQpmdW5jdGlvbiBkKCl7dmFyIHQ9aC5wb3AoKTtyZXR1cm4gdCE9bnVsbD90OjF9ZnVuY3Rpb24gZSh0KXtmLm8+MXx8KHR8fCh0PW49PT0tMT9mLkkrYS5zdWJzdHJpbmcobSxwKTphLnN1YnN0cmluZyhuLHApKSxmLlkucHVzaChKU09OLnBhcnNlKHQpKSxuPXApfWZvcih2YXIgZj10aGlzLGg9Zi5VLGs9Zi5aLGw9YS5sZW5ndGgsbT0wLG49LTEscD0wO3A8bDspc3dpdGNoKGYuQil7Y2FzZSAzOnJldHVybiBBMihmLGEscCksbnVsbDtjYXNlIDI6cmV0dXJuIGIoKSYmQTIoZixhLHApLG51bGw7Y2FzZSAwOmlmKGIoKSl7dmFyIHI9YVtwKytdO2YudisrO2lmKHI9PT0iWyIpe2YuQj0xO209cDtmLmo9NDtjb250aW51ZX1lbHNlIEEyKGYsYSxwKX1yZXR1cm4gbnVsbDtjYXNlIDE6cmV0dXJuIGMoKSxmLm89PT0wJiZmLmo9PTU/KGYuQj0yLGYuST1hLnN1YnN0cmluZyhwKSk6Zi5JPW49PT0tMT9mLkkrYS5zdWJzdHJpbmcobSk6YS5zdWJzdHJpbmcobiksZi5ZLmxlbmd0aD4wPyhyPWYuWSwKZi5ZPVtdLHIpOm51bGx9cmV0dXJuIG51bGx9O3ZhciBtcmE9e0dFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfVU5LTk9XTiIsQUQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9GT1JfVEVTVElORyIsa0U6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9SRVNVTUVfVE9fSE9NRV9UVEwiLHdFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfU1RBUlRfVE9fU0hPUlRTX0FOQUxZU0lTX1NMSUNFIixvRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0RFVklDRV9MQVlFUl9TTElDRSIsRkU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9VTklGSUVEX0xBWUVSX1NMSUNFIixKRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1ZJU0lUT1JfTEFZRVJfU0xJQ0UiLHVFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfU0hPV19TSEVFVF9DT01NQU5EX0hBTkRMRVJfQkxPQ0siLApNRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1dJWl9ORVhUX01JR1JBVEVEX0NPTVBPTkVOVCIsTEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9XSVpfTkVYVF9DSEFOTkVMX05BTUVfVE9PTFRJUCIscEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9ST1RBVElPTl9MT0NLX1NVUFBPUlRFRCIsekU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9USEVBVEVSX01PREVfRU5BQkxFRCIsU0U6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9XT1VMRF9TSE9XX1BJTl9TVUdHRVNUSU9OIixSRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1dPVUxEX1NIT1dfTE9OR19QUkVTU19FRFVfVE9BU1QiLFFFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfV09VTERfU0hPV19BTUJJRU5UIixBRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1RJTUVfV0FUQ0hFRF9QQU5FTCIsCnJFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfU0VBUkNIX0ZST01fU0VBUkNIX0JBUl9PVkVSTEFZIixURToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1dPVUxEX1NIT1dfVk9JQ0VfU0VBUkNIX0VEVV9UT0FTVCIseUU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9TVUdHRVNURURfTEFOR1VBR0VfU0VMRUNURUQiLFVFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfV09VTERfVFJJR0dFUl9TSE9SVFNfUElQIixKRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0lOX1pQX1ZPSUNFX0NSQVNIWV9TRVQiLGdFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfUkVFTF9GQVNUX1NXSVBFX1NVUFBSRVNTRUQiLGZFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfUkVFTF9GQVNUX1NXSVBFX0FMTE9XRUQiLGlFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfUkVFTF9QVUxMX1RPX1JFRlJFU0hfQVRURU1QVCIsCk5FOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfV09VTERfQkxPQ0tfS0FCVUtJIixqRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1JFRUxfVEFMTF9TQ1JFRU4iLGhFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfUkVFTF9OT1JNQUxfU0NSRUVOIixoRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0FDQ0VTU0lCSUxJVFlfTU9ERV9FTkFCTEVEIixnRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0FDQ0VTU0lCSUxJVFlfTU9ERV9ESVNBQkxFRCIsaUQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9BVVRPUExBWV9FTkFCTEVEIixqRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0NBU1RfTUFUQ0hfT0NDVVJSRUQiLHREOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfRU1DM0RTX0VMSUdJQkxFIix3RDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0VORFNDUkVFTl9UUklHR0VSRUQiLApkRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1BPU1RQTEFZX1RSSUdHRVJFRCIsY0U6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9QT1NUUExBWV9MQUNUX1RIUkVTSE9MRF9FWENFRURFRCIsQ0Q6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9JREVOVElUSUVTX1NUQVRFX01BVENIRURfT05fUkVNT1RFX0NPTk5FQ1RJT04iLEVEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfSURFTlRJVElFU19TVEFURV9TV0lUQ0hBQkxFX09OX1JFTU9URV9DT05ORUNUSU9OIixERDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0lERU5USVRJRVNfU1RBVEVfTUlTQVRUUklCVVRFRF9PTl9SRU1PVEVfQ09OTkVDVElPTiIsSEQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9JREVOVElUSUVTX1RWX0lTX1NJR05FRF9JTl9PTl9SRU1PVEVfQ09OTkVDVElPTiIsREU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9UVl9TVEFSVF9UWVBFX0NPTERfT05fUkVNT1RFX0NPTk5FQ1RJT04iLApFRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1RWX1NUQVJUX1RZUEVfTk9OX0NPTERfT05fUkVNT1RFX0NPTk5FQ1RJT04iLFlEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfT05fUkVNT1RFX0NPTk5FQ1RJT04iLG5EOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfQ09CQUxUX1BFUlNJU1RFTlRfU0VUVElOR1NfVEVTVF9WQUxJRCIsbEQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9DT0JBTFRfUEVSU0lTVEVOVF9TRVRUSU5HU19URVNUX0lOVkFMSUQiLG1EOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfQ09CQUxUX1BFUlNJU1RFTlRfU0VUVElOR1NfVEVTVF9VTkRFRklORUQiLGtEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfQ09CQUxUX1BFUlNJU1RFTlRfU0VUVElOR1NfVEVTVF9ERUZJTkVEIixNRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0xBQ1RfVEhSRVNIT0xEX0VYQ0VFREVEIiwKcUU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9ST1VORF9UUklQX0hBTkRMSU5HX09OX1JFTU9URV9DT05ORUNUSU9OIixHRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0lERU5USVRJRVNfU1RBVEVfU1dJVENIRURfT05fUkVNT1RFX0NPTk5FQ1RJT05fQkVGT1JFX0FQUF9SRUxPQUQiLEZEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfSURFTlRJVElFU19TVEFURV9TV0lUQ0hFRF9PTl9SRU1PVEVfQ09OTkVDVElPTl9BRlRFUl9BUFBfUkVMT0FEIix1RDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0VNQzNEU19JTkVMSUdJQkxFIixCRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1RWSFRNTDVfTUlEX1JPTExfVEhSRVNIT0xEX1JFQUNIRUQiLHlEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfRVhQX0NPQkFMVF9IVFRQM19DT05GSUdfUEVORElORyIsCnhEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfRVhQX0NPQkFMVF9IVFRQM19DT05GSUdfQUNUSVZBVEVEIix2RDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0VNQzNEU19NMl9FTElHSUJMRSIsbkU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9ST1RBVEVfREVWSUNFX1RPX0xBTkRTQ0FQRSIsb0U6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9ST1RBVEVfREVWSUNFX1RPX1BPUlRSQUlUIixzRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0VNQkVEU19GQUNFT0ZGX1VJX0VWRU5UIix6RDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0VYUF9DT0JBTFRfSFRUUDNfQ09ORklHX1JFQ0VJVkVEIixyRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0VMSUdJQkxFX1RPX1NVUFBSRVNTX1RSQU5TUE9SVF9DT05UUk9MU19CVVRUT05TIiwKSEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9VU0VSX0hBU19USEVBVEVSX01PREVfQ09PS0lFX0VOQUJMRUQiLHFEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfRE9DVU1FTlRfUElDVFVSRV9JTl9QSUNUVVJFX1NVUFBPUlRFRCIsdEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9TSE9SVFNfTk9OX0RFRkFVTFRfQVNQRUNUX1JBVElPIixiRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1BMQVlFUl9JTl9TUVVFRVpFQkFDSyIsTkQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9MSVZFX0NSRUFUT1JfQVJfR0lGVF9SRUNFSVZFRCIsbUU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9SRVRVUk5FRF9UT19WSURFT19BRlRFUl9GQUlMRURfQVRURU1QVF9UT19CQUNLR1JPVU5EIixPRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1dPVUxEX0VOVEVSX0FVVE9fWk9PTSIsClpEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfUEFTU0lWRV9JTl9DT05UUk9MIixhRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1BBU1NJVkVfSU5fVFJFQVRNRU5UIixwRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0RJU0FCTEVfUExBWUVSX09QRU5fT05fRlVMTFNDUkVFTiIsVEQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9NRFhfUkVDT05ORUNUX1dJVEhfUkVUUlkiLHZFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfU0lOR0xFX0NPTFVNTl9HUklEX1RSSUdHRVJFRCIsUEQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9NRFhfQ09OTkVDVElPTl9USU1FT1VUIixPRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0xJVkVfR0hPU1RfTE9BRElOR19FTElHSUJMRSIseEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9TVFJFQU1FRF9HRVRfV0FUQ0hfU1VQUE9SVEVEIiwKS0U6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9XRUJWSUVXX0NPTlRBSU5FUiIsUEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9XT1VMRF9FTlRFUl9QSVAiLGVFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfUFJFTUlVTV9MSVRFX1VQU0VMTF9FTElHSUJMRSIsVkQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9PRkZMSU5FX1JFQ09WRVJZX0JST0FEIixYRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX09GRkxJTkVfUkVDT1ZFUllfVU5QTEFZQUJMRSIsV0Q6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9PRkZMSU5FX1JFQ09WRVJZX1NUUklDVCIsS0Q6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9JT1NfU0hPUlRfT1JJRU5UQVRJT05fQ0hBTkdFIixDRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1RWSFRNTDVfUExBWUVSX0VSUk9SX09WRVJMQVlfVFJJR0dFUkVEIiwKc0U6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9TSEFERVJfTElHSFRfRU5BQkxFRCIsSUQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9JREVOVElUWV9NSVNNQVRDSF9ERVRFQ1RFRCIsbEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9SRVNVTUVfVE9fU0hPUlRTX1RSSUdHRVJFRCIsQkQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9HUldTX0NVU1RPTV9SRVRSWV9DQUxMRUQiLFNEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfTURYX01PQklMRV9VTkxPQ0tfVE9LRU5fTUlTTUFUQ0giLFJEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfTURYX01PQklMRV9VTkxPQ0tfUEFZTE9BRF9UT0tFTl9NSVNTSU5HIixRRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX01EWF9NT0JJTEVfVU5MT0NLX0dBVEVfVE9LRU5fTUlTU0lORyIsClVEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfTVVTSUNfT0ZGTElORV9IT01FX1NNQVJUX0RPV05MT0FEU19QUk9NT19DSEVDSyIsTEQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9JUEFEX0RFU0tUT1BfTUFUQ0gifTt2YXIgZHdhPW5ldyBfLkkoInN1YnNjcmliZUVuZHBvaW50Iik7dmFyIEIyPWNsYXNzIGV4dGVuZHMgXy5MYXtjb25zdHJ1Y3RvcihhLGIpe3N1cGVyKGAke2F9LCBlcnJvckNvZGU9JHtifWApO3RoaXMuZXJyb3JDb2RlPWI7dGhpcy5uYW1lPSJQcm9taXNlQWpheEVycm9yIn19LHR0YT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX19O3ZhciBEMj1jbGFzc3tjb25zdHJ1Y3RvcihhPW51bGwpe3RoaXMudj1hO3RoaXMuaj0wO3RoaXMubz1udWxsfXRoZW4oYSxiLGMpe3JldHVybiB0aGlzLnY/dGhpcy52LnRoZW4oYSxiLGMpOnRoaXMuaj09PTEmJmE/KGE9YS5jYWxsKGMsdGhpcy5vKSkmJnR5cGVvZiBhLnRoZW49PT0iZnVuY3Rpb24iP2E6RjIoYSk6dGhpcy5qPT09MiYmYj8oYT1iLmNhbGwoYyx0aGlzLm8pKSYmdHlwZW9mIGEudGhlbj09PSJmdW5jdGlvbiI/YTpFMihhKTp0aGlzfWlzUmVqZWN0ZWQoKXtyZXR1cm4gdGhpcy5qPT0yfX07Xy55ZihEMik7dmFyIE0yPWNsYXNzIGV4dGVuZHMgXy5MYXtjb25zdHJ1Y3RvcihhKXtzdXBlcihhLm1lc3NhZ2V8fGEuZGVzY3JpcHRpb258fGEubmFtZSk7dGhpcy5pc01pc3Npbmc9YSBpbnN0YW5jZW9mIEsyO3RoaXMuaXNUaW1lb3V0PWEgaW5zdGFuY2VvZiBCMiYmYS5lcnJvckNvZGU9PSJuZXQudGltZW91dCI7dGhpcy5pc0NhbmNlbGVkPWEgaW5zdGFuY2VvZiBfLlBmfX07TTIucHJvdG90eXBlLm5hbWU9IkJpc2NvdHRpRXJyb3IiO3ZhciBLMj1jbGFzcyBleHRlbmRzIF8uTGF7Y29uc3RydWN0b3IoKXtzdXBlcigiQmlzY290dGkgSUQgaXMgbWlzc2luZyBmcm9tIHNlcnZlciIpfX07SzIucHJvdG90eXBlLm5hbWU9IkJpc2NvdHRpTWlzc2luZ0Vycm9yIjt2YXIgc3RhPXtmb3JtYXQ6IlJBVyIsbWV0aG9kOiJHRVQiLHRpbWVvdXQ6NUUzLHdpdGhDcmVkZW50aWFsczohMH0sSDI9bnVsbDt2YXIgV3RhPVsiYXR0L2dldCJdLGV3YT1bInNoYXJlL2dldF9zaGFyZV9wYW5lbCJdLGZ3YT1bInNoYXJlL2dldF93ZWJfcGxheWVyX3NoYXJlX3BhbmVsIl0scTU9WyJmZWVkYmFjayJdLGd3YT1bIm5vdGlmaWNhdGlvbi9tb2RpZnlfY2hhbm5lbF9wcmVmZXJlbmNlIl0saHdhPVsiYnJvd3NlL2VkaXRfcGxheWxpc3QiXSxpd2E9WyJzdWJzY3JpcHRpb24vc3Vic2NyaWJlIl0sandhPVsic3Vic2NyaXB0aW9uL3Vuc3Vic2NyaWJlIl07dmFyIHI1PWNsYXNze2ZsdXNoKGE9W10sYj0hMSl7aWYoXy54KCJlbmFibGVfY2xpZW50X3N0cmVhbXpfd2ViIikpZm9yKGxldCBjIG9mIGEpYT1yMShjKSx0aGlzLmomJl8uS3coYSwyLHRoaXMuaiksYT17c2VyaWFsaXplZEluY3JlbWVudEJhdGNoOl8uc2MoYS52KCkpfSxfLkVwKCJzdHJlYW16SW5jcmVtZW50ZWQiLGEse3NlbmRJc29sYXRlZFBheWxvYWQ6Yn0pfX0sWXZhPWNsYXNzIGV4dGVuZHMgcjV7Y29uc3RydWN0b3IoKXtzdXBlcigpfX0scXVhPWNsYXNzIGV4dGVuZHMgcjV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt2YXIgYj1uZXcgRXZhO3ZhciBjPW5ldyBEdmE7Yz1CWihjLDEsImJvdGd1YXJkIik7YT1CWihjLDIsYSk7YT1fLkp3KGEpO0ZfKGIsMSxlNSxhKTthJiYhXy5CYyhhKSYmXy5vdyhiLkRhKTt0aGlzLmo9Yn19O3ZhciBuNSxqND1uZXcgTWFwO3ZhciBBdGE9bnVsbDt2YXIgQ3RhPW5ldyBNYXAoW1siZGFyayIsIlVTRVJfSU5URVJGQUNFX1RIRU1FX0RBUksiXSxbImxpZ2h0IiwiVVNFUl9JTlRFUkZBQ0VfVEhFTUVfTElHSFQiXV0pO3ZhciBYMj1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX1iaW5kSW5uZXJ0dWJlQ2hhbGxlbmdlRmV0Y2hlcihhKXt0aGlzLmouYmljZihhKX1yZWdpc3RlckNoYWxsZW5nZUZldGNoZWRDYWxsYmFjayhhKXt0aGlzLmouYmNyKGEpfWdldExhdGVzdENoYWxsZW5nZVJlc3BvbnNlKCl7cmV0dXJuIHRoaXMuai5ibGMoKX19O3ZhciAkMj1bXSxaMj0oMCxfLll4KWBodHRwczovL3N0YXRpYy5kb3VibGVjbGljay5uZXQvaW5zdHJlYW0vYWRfc3RhdHVzLmpzYCxZMj0hMTt2YXIgczU9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWF9fTtbbmV3IHM1KCJiLmZfIiksbmV3IHM1KCJqLnNfIiksbmV3IHM1KCJyLnNfIiksbmV3IHM1KCJlLmhfIiksbmV3IHM1KCJpLnNfIiksbmV3IHM1KCJzLnRfIiksbmV3IHM1KCJwLmhfIiksbmV3IHM1KCJzLmlfIiksbmV3IHM1KCJmLmlfIiksbmV3IHM1KCJhLmJfIiksbmV3IHM1KCJhLm9fIiksbmV3IHM1KCJnLm9fIiksbmV3IHM1KCJwLmlfIiksbmV3IHM1KCJwLm1fIiksbmV3IHM1KCJuLmtfIiksbmV3IHM1KCJpLmZfIiksbmV3IHM1KCJhLnNfIiksbmV3IHM1KCJtLmNfIiksbmV3IHM1KCJuLmhfIiksbmV3IHM1KCJvLnBfIiksbmV3IHM1KCJtLnBfIiksbmV3IHM1KCJvLmFfIiksbmV3IHM1KCJkLnBfIiksbmV3IHM1KCJlLmlfIildLnJlZHVjZSgoYSxiKT0+e2FbYi5qXT1iO3JldHVybiBhfSx7fSk7dmFyIFA0PWNsYXNze2NvbnN0cnVjdG9yKGEsYixjKXt0aGlzLm5ldHdvcms9YTt0aGlzLm9wdGlvbnM9Yjt0aGlzLks9Yzt0aGlzLnY9MDt0aGlzLmo9bnVsbDt0aGlzLm89bmV3IFp2YTtiLnpzP2IzKHRoaXMsSXRhKHRoaXMpKTpiLnByZWxvYWQmJmIzKHRoaXMsbmV3IFByb21pc2UoZD0+e18uWWooKCk9PntkKGUzKHRoaXMpKX0sMCl9KSl9YXN5bmMgRCgpe3JldHVybiEhYXdhaXQgUHJvbWlzZS5yYWNlKFt0aGlzLmosbnVsbF0pfWFzeW5jIEIoYSxiLGMpe3RoaXMuaj09PW51bGwmJmIzKHRoaXMsZTModGhpcykpO3ZhciBkPSExLGU9e307cmV0dXJuIFByb21pc2UucmFjZShbKGFzeW5jKCk9Pnt0aGlzLm9wdGlvbnMuUUkmJnRoaXMub3B0aW9ucy56cyYmYXdhaXQgKGF3YWl0IEV0YSgpKT8uY2hlY2tGb3JSZWZyZXNoKCk7dmFyIGY9YXdhaXQgdGhpcy5qO2UuY2hhbGxlbmdlPWYuY2hhbGxlbmdlO2lmKGYudm0pe3ZhciBoPXtjOmYuY2hhbGxlbmdlLGU6YSwuLi5ifTt0cnl7ZD0KITA7bGV0IGs7KGs9YXdhaXQgZi52bS5zbmFwc2hvdCh7S2M6aH0pKT9lLndlYlJlc3BvbnNlPWs6ZS5lcnJvcj0iQVRURVNUQVRJT05fRVJST1JfVk1fTk9fUkVTUE9OU0UifWNhdGNoe2UuZXJyb3I9IkFUVEVTVEFUSU9OX0VSUk9SX1ZNX0lOVEVSTkFMX0VSUk9SIn19ZWxzZSJjMWEiaW4gZi5CZiYmKGUuZXJyb3I9IkFUVEVTVEFUSU9OX0VSUk9SX1ZNX05PVF9JTklUSUFMSVpFRCIpO2E9PT0iRU5HQUdFTUVOVF9UWVBFX1BMQVlCQUNLIiYmKGY9Zi5CZixoPXt9LGYuYzZhJiYoaC5yZXBvcnRpbmdTdGF0dXM9U3RyaW5nKE51bWJlcihmLmMpXmEzKCkpKSxmLmM2YiYmKGguYnJvYWRTcGVjdHJ1bURldGVjdGlvblJlc3VsdD1TdHJpbmcoTnVtYmVyKGYuYyleTnVtYmVyKF8udygiQ0FUU1RBVCIsMCkpKSksZS5hZGJsb2NrUmVwb3J0aW5nPWgpO3JldHVybiBlfSkoKSxNdGEoYywoKT0+e3ZhciBmPU9iamVjdC5hc3NpZ24oe30sZSk7ZCYmKGYuZXJyb3I9IkFUVEVTVEFUSU9OX0VSUk9SX1ZNX1RJTUVPVVQiKTsKcmV0dXJuIGZ9KV0pfWFzeW5jIFJmKGEpe3ZhciBiPXRoaXMuSztpZighYnx8Yi5TYigpKXJldHVybiBmMyh0aGlzLGEpO3gwKCJhdHRfcG5hIik7cmV0dXJuIG5ldyBQcm9taXNlKGM9PntfLmJmKGIsInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vbmxpbmUiLCgpPT57ZjModGhpcyxhKS50aGVuKGMpfSl9KX19O3ZhciBnMz17V0VCX1VOUExVR0dFRDoiXnVucGx1Z2dlZC8iLFdFQl9VTlBMVUdHRURfT05CT0FSRElORzoiXnVucGx1Z2dlZC8iLFdFQl9VTlBMVUdHRURfT1BTOiJedW5wbHVnZ2VkLyIsV0VCX1VOUExVR0dFRF9QVUJMSUM6Il51bnBsdWdnZWQvIixXRUJfQ1JFQVRPUjoiXmNyZWF0b3IvIixXRUJfS0lEUzoiXmtpZHMvIixXRUJfRVhQRVJJTUVOVFM6Il5leHBlcmltZW50cy8iLFdFQl9NVVNJQzoiXm11c2ljLyIsV0VCX1JFTUlYOiJebXVzaWMvIixXRUJfTVVTSUNfRU1CRURERURfUExBWUVSOiJebXVzaWMvIixXRUJfTVVTSUNfRU1CRURERURfUExBWUVSOiJebWFpbl9hcHAvfF5zZnYvIn07dmFyIFl1YT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX1hc3luYyBSZihhKXt4MCgiYXR0X2ZzciIpO2E9YXdhaXQgWXRhKHRoaXMuaixhKTt4MCgiYXR0X2ZyciIpO3JldHVybiBhfX07dmFyIGkzPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuaj0icGVuZGluZyI7dGhpcy5vPVtdO3RoaXMudj1bXTt0cnl7YSh0aGlzLkIuYmluZCh0aGlzKSx0aGlzLnJlamVjdC5iaW5kKHRoaXMpKX1jYXRjaChiKXt0aGlzLnJlamVjdChiKX19c3RhdGUoKXtyZXR1cm4gdGhpcy5pc0Z1bGZpbGxlZCgpP3tzdGF0ZToiZnVsZmlsbGVkIix2YWx1ZTp0aGlzLnJlc3VsdH06dGhpcy5pc1JlamVjdGVkKCk/e3N0YXRlOiJyZWplY3RlZCIscmVhc29uOnRoaXMuZXJyb3J9OntzdGF0ZToicGVuZGluZyJ9fWlzRnVsZmlsbGVkKCl7cmV0dXJuIHRoaXMuaj09PSJmdWxmaWxsZWQifWlzUmVqZWN0ZWQoKXtyZXR1cm4gdGhpcy5qPT09InJlamVjdGVkIn1pc1BlbmRpbmcoKXtyZXR1cm4gdGhpcy5qPT09InBlbmRpbmcifUIoYSl7KDAsXy5ibykoYSl8fGozKGEpP2wzKGszKGEpLHRoaXMuQi5iaW5kKHRoaXMpLHRoaXMucmVqZWN0LmJpbmQodGhpcykpOih0aGlzLmo9ImZ1bGZpbGxlZCIsdGhpcy5yZXN1bHQ9CmEsbjModGhpcykpfXJlamVjdChhKXt0aGlzLmo9InJlamVjdGVkIjt0aGlzLmVycm9yPWE7bjModGhpcyl9fSxqMz1fLkNjKGE9PigwLF8ucXIpKGEpP2EgaW5zdGFuY2VvZiBpMzohMSk7dmFyIHQ1PWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuaj1hfXJ1bihhLGIpe3JldHVybiBvMyh0aGlzLGZ1bmN0aW9uKCl7dmFyIGM9dGhpcztyZXR1cm4gZnVuY3Rpb24qKCl7Zm9yKHZhciBkPWEsZT1iLGY9W107Oyl7Zi5wdXNoKFN0cmluZyhkKSk7ZT15aWVsZCpwMyhjLmpbZF0uZXhlY3V0ZShlKSk7aWYoZS5uZXh0U3RhdGU9PT0iRE9ORSIpcmV0dXJuIGYucHVzaCgiRE9ORSIpLGUudmFsdWU7aWYoZS5uZXh0U3RhdGU9PT0iRkFJTEVEIil0aHJvdyBmLnB1c2goYEZBSUxFRCgke2UuZXJyb3IubWVzc2FnZXx8ImVycm9yIn0pYCksZS5lcnJvcjtkPWUubmV4dFN0YXRlO2U9ZS5wYXJhbXN9fSgpfSl9fTt2YXIgdTU9Y2xhc3N7fTt2YXIgdTM9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmo9e307aWYodGhpcy5vPV8ucXooKSl7bGV0IGE9Xy5Mai5nZXQoIkNPTlNJU1RFTkNZIix2b2lkIDApO2EmJnIzKHRoaXMse2VuY3J5cHRlZFRva2VuSmFyQ29udGVudHM6YX0pfX1oYW5kbGVSZXNwb25zZShhLGIpe2lmKCFiKXRocm93IEVycm9yKCJLZSIpO2I9Yi5pbm5lclR1YmVSZXF1ZXN0LmNvbnRleHQ/LnJlcXVlc3Q/LmNvbnNpc3RlbmN5VG9rZW5KYXJzfHxbXTsoYT1hLnJlc3BvbnNlQ29udGV4dD8uY29uc2lzdGVuY3lUb2tlbkphcikmJnRoaXMucmVwbGFjZShiLGEpfXJlcGxhY2UoYSxiKXtmb3IobGV0IGMgb2YgYSlkZWxldGUgdGhpcy5qW2MuZW5jcnlwdGVkVG9rZW5KYXJDb250ZW50c107cjModGhpcyxiKX19O3ZhciBrd2E9d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLnNwbGl0KCIuIikuc2xpY2UoLTIpLmpvaW4oIi4iKSx2Mz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMudj0tMTt2YXIgYT1fLncoIkxPQ0FUSU9OX1BMQVlBQklMSVRZX1RPS0VOIik7Xy53KCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJUVkhUTUw1IiYmKHRoaXMubG9jYWxTdG9yYWdlPXMzKHRoaXMpKSYmKGE9dGhpcy5sb2NhbFN0b3JhZ2UuZ2V0KCJ5dC1sb2NhdGlvbi1wbGF5YWJpbGl0eS10b2tlbiIpKTthJiYodGhpcy5sb2NhdGlvblBsYXlhYmlsaXR5VG9rZW49YSx0aGlzLm89dGhpcy5qPXZvaWQgMCl9c3RhdGljIGpjKCl7djU9Xy5zYSgieXQuY2xpZW50TG9jYXRpb25TZXJ2aWNlLmluc3RhbmNlIik7djV8fCh2NT1uZXcgdjMsXy5yYSgieXQuY2xpZW50TG9jYXRpb25TZXJ2aWNlLmluc3RhbmNlIix2NSkpO3JldHVybiB2NX1zZXRMb2NhdGlvbk9uSW5uZXJUdWJlQ29udGV4dChhKXthLmNsaWVudHx8KGEuY2xpZW50PQp7fSk7aWYodGhpcy5qKWEuY2xpZW50LmxvY2F0aW9uSW5mb3x8KGEuY2xpZW50LmxvY2F0aW9uSW5mbz17fSksYS5jbGllbnQubG9jYXRpb25JbmZvLmxhdGl0dWRlRTc9TWF0aC5mbG9vcih0aGlzLmouY29vcmRzLmxhdGl0dWRlKjFFNyksYS5jbGllbnQubG9jYXRpb25JbmZvLmxvbmdpdHVkZUU3PU1hdGguZmxvb3IodGhpcy5qLmNvb3Jkcy5sb25naXR1ZGUqMUU3KSxhLmNsaWVudC5sb2NhdGlvbkluZm8uaG9yaXpvbnRhbEFjY3VyYWN5TWV0ZXJzPU1hdGgucm91bmQodGhpcy5qLmNvb3Jkcy5hY2N1cmFjeSksYS5jbGllbnQubG9jYXRpb25JbmZvLmZvcmNlTG9jYXRpb25QbGF5YWJpbGl0eVRva2VuUmVmcmVzaD0hMDtlbHNlIGlmKHRoaXMuQnx8dGhpcy5sb2NhdGlvblBsYXlhYmlsaXR5VG9rZW4pYS5jbGllbnQubG9jYXRpb25QbGF5YWJpbGl0eVRva2VuPXRoaXMuQnx8dGhpcy5sb2NhdGlvblBsYXlhYmlsaXR5VG9rZW59Z2V0WEdlb0hlYWRlcigpe2lmKHRoaXMubyl7dmFyIGE9CnRoaXMubzt2YXIgYj1NYXRoLmZsb29yKGEuY29vcmRzLmxvbmdpdHVkZSoxRTcpO3ZhciBjPU1hdGguZmxvb3IoYS5jb29yZHMubGF0aXR1ZGUqMUU3KTt2YXIgZD1uZXcgJHZhO2M9Xy5xdyhkLDEsXy5QdyhjKSk7Yj1fLnF3KGMsMixfLlB3KGIpKTtjPW5ldyBid2E7Yz1DWihjLDEsMSk7Yz1DWihjLDIsMTIpO2M9Q1ooYyw5LDgpO2M9Xy5xdyhjLDMseV8oYS50aW1lc3RhbXAqMUUzKSk7YT1fLnF3KGMsNyxwXyhhLmNvb3Jkcy5hY2N1cmFjeSoxRTMpKTthPUNaKGEsMjUsMik7YT1fLkt3KGEsNSxiKTthPWB3ICR7Xy5zYyhjd2EoYSksNCl9YH1lbHNlIGE9bnVsbDtyZXR1cm4gYX1oYW5kbGVSZXNwb25zZShhKXthPWEucmVzcG9uc2VDb250ZXh0Py5sb2NhdGlvblBsYXlhYmlsaXR5VG9rZW47YSE9PXZvaWQgMCYmKHRoaXMubG9jYXRpb25QbGF5YWJpbGl0eVRva2VuPWEsdGhpcy5vPXRoaXMuaj12b2lkIDAsXy53KCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJUVkhUTUw1Ij8KKHRoaXMubG9jYWxTdG9yYWdlPXMzKHRoaXMpKSYmdGhpcy5sb2NhbFN0b3JhZ2Uuc2V0KCJ5dC1sb2NhdGlvbi1wbGF5YWJpbGl0eS10b2tlbiIsYSwxNTU1MkUzKTpfLk1qKCJZVF9DTCIsSlNPTi5zdHJpbmdpZnkoe2xvY3RvazphfSksMTU1NTJFMyxrd2EsITApKX1jbGVhckxvY2F0aW9uUGxheWFiaWxpdHlUb2tlbihhKXthPT09IlRWSFRNTDUiPyh0aGlzLmxvY2FsU3RvcmFnZT1zMyh0aGlzKSkmJnRoaXMubG9jYWxTdG9yYWdlLnJlbW92ZSgieXQtbG9jYXRpb24tcGxheWFiaWxpdHktdG9rZW4iKTpfLk5qKCJZVF9DTCIpO3RoaXMuQj12b2lkIDA7dGhpcy52IT09LTEmJihjbGVhclRpbWVvdXQodGhpcy52KSx0aGlzLnY9LTEpfWNsZWFyQ3VycmVudFBvc2l0aW9uKCl7dGhpcy5vPXRoaXMuaj12b2lkIDB9Z2V0Q3VycmVudFBvc2l0aW9uRnJvbUdlb2xvY2F0aW9uKGEpe2lmKCEobmF2aWdhdG9yJiZuYXZpZ2F0b3IuZ2VvbG9jYXRpb24mJm5hdmlnYXRvci5nZW9sb2NhdGlvbi5nZXRDdXJyZW50UG9zaXRpb24pKXJldHVybiBQcm9taXNlLnJlamVjdChFcnJvcigiTGUiKSk7CnZhciBiPSExLGM9MUU0O18udygiSU5ORVJUVUJFX0NMSUVOVF9OQU1FIik9PT0iTVdFQiImJihiPSEwLGM9MTVFMyk7cmV0dXJuIG5ldyBQcm9taXNlKChkLGUpPT57bmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbihmPT57dGhpcy5vPWE/LmFkZFRvSGVhZGVycz9mOnZvaWQgMDt0aGlzLmo9ZjtkKGYpfSxmPT57ZShmKX0se2VuYWJsZUhpZ2hBY2N1cmFjeTpiLG1heGltdW1BZ2U6MCx0aW1lb3V0OmN9KX0pfWNyZWF0ZVVucGx1Z2dlZExvY2F0aW9uSW5mbyhhKXt2YXIgYj17fTthPWEuY29vcmRzO2E/LmxhdGl0dWRlJiYoYi5sYXRpdHVkZUU3PU1hdGguZmxvb3IoYS5sYXRpdHVkZSoxRTcpKTthPy5sb25naXR1ZGUmJihiLmxvbmdpdHVkZUU3PU1hdGguZmxvb3IoYS5sb25naXR1ZGUqMUU3KSk7YT8uYWNjdXJhY3kmJihiLmxvY2F0aW9uUmFkaXVzTWV0ZXJzPU1hdGgucm91bmQoYS5hY2N1cmFjeSkpO3JldHVybiBifWNyZWF0ZUxvY2F0aW9uSW5mbyhhKXt2YXIgYj0Ke307YT1hLmNvb3JkczthPy5sYXRpdHVkZSYmKGIubGF0aXR1ZGVFNz1NYXRoLmZsb29yKGEubGF0aXR1ZGUqMUU3KSk7YT8ubG9uZ2l0dWRlJiYoYi5sb25naXR1ZGVFNz1NYXRoLmZsb29yKGEubG9uZ2l0dWRlKjFFNykpO3JldHVybiBifX0sdjU7dmFyIEYzPSJ0b2tlbnMgY29uc2lzdGVuY3kgc2VydmljZV9wYXJhbXMgbXNzIGNsaWVudF9sb2NhdGlvbiBlbnRpdGllcyBhZGJsb2NrX2RldGVjdGlvbiByZXNwb25zZV9yZWNlaXZlZF9jb21tYW5kcyBzdG9yZSBtYW5pZmVzdCBwbGF5ZXJfcHJlbG9hZCBzaG9ydHNfcHJlZmV0Y2ggcmVzb2x2ZV91cmxfcHJlZmV0Y2giLnNwbGl0KCIgIik7dmFyIGx3YT1jbGFzc3tEKGEsYj17fSxjPUEzKXt2YXIgZD17Y29udGV4dDp3MyhhLmNsaWNrVHJhY2tpbmdQYXJhbXMsITEsdGhpcy5CKX07dmFyIGU9dGhpcy5vKGEpO2lmKGUpe3RoaXMuaihkLGUsYik7ZT1gL3lvdXR1YmVpL3YxLyR7aDModGhpcy52KCkpfWA7dmFyIGY9Xy5CKGEuY29tbWFuZE1ldGFkYXRhLF8uencpPy5hcGlVcmw7ZiYmKGU9Zik7ZT1YMChZMChlKSk7Zj17Y29tbWFuZDphLC4uLih2b2lkIDApfTtkPXtpbnB1dDplLHdiOlowKGUpLGlubmVyVHViZVJlcXVlc3Q6ZCxjb25maWc6Zn07ZC5jb25maWcuUmQ/ZC5jb25maWcuUmQuaWRlbnRpdHk9YzpkLmNvbmZpZy5SZD17aWRlbnRpdHk6Y307KGE9dGhpcy5LKGEpKSYmIWQuY29uZmlnLnJlcXVlc3RLZXkmJihkLmNvbmZpZy5yZXF1ZXN0S2V5PWEpO2IuYWJvcnRTaWduYWwmJihkLndiLnNpZ25hbD1iLmFib3J0U2lnbmFsKTtyZXR1cm4gZH1iPW5ldyBfLlhqKCJFcnJvcjogRmFpbGVkIHRvIGNyZWF0ZSBSZXF1ZXN0IGZyb20gQ29tbWFuZC4iLAphKTtfLkdwKGIpfWdldCBCKCl7cmV0dXJuITF9Sygpe319LHc1PWNsYXNzIGV4dGVuZHMgbHdhe0soYSl7cmV0dXJuIF8uQihhLmNvbW1hbmRNZXRhZGF0YSxfLnp3KT8ucmVxdWVzdEtleT8/dm9pZCAwfX07dmFyIG13YT17R0VUX0RBVEFTWU5DX0lEUzp5MyhjbGFzcyBleHRlbmRzIHc1e0QoKXtyZXR1cm57aW5wdXQ6Ii9nZXREYXRhc3luY0lkc0VuZHBvaW50Iix3YjpaMCgiL2dldERhdGFzeW5jSWRzRW5kcG9pbnQiLCJHRVQiKSxpbm5lclR1YmVSZXF1ZXN0Ont9fX12KCl7cmV0dXJuW119bygpe31qKCl7fX0pfTt2YXIgVTM9bmV3IF8uVnMoIlJFUVVFU1RfTUFDSElORV9SRUdJU1RSWV9UT0tFTiIpLEIzPW5ldyBfLlZzKCJSRVFVRVNUX01BQ0hJTkVfRkFDVE9SWV9UT0tFTiIpLEozPW5ldyBfLlZzKCJJTkZMSUdIVF9SRVFVRVNUX01BUF9UT0tFTiIpO3ZhciBhdWE9WyJ0eXBlLmdvb2dsZWFwaXMuY29tL3lvdXR1YmUuYXBpLnBmaWlubmVydHViZS5Zb3V0dWJlQXBpSW5uZXJ0dWJlLkJyb3dzZVJlc3BvbnNlIiwidHlwZS5nb29nbGVhcGlzLmNvbS95b3V0dWJlLmFwaS5wZmlpbm5lcnR1YmUuWW91dHViZUFwaUlubmVydHViZS5QbGF5ZXJSZXNwb25zZSIsInR5cGUuZ29vZ2xlYXBpcy5jb20veW91dHViZS5hcGkucGZpaW5uZXJ0dWJlLllvdXR1YmVBcGlJbm5lcnR1YmUuUGFuZWxSZXNwb25zZSJdLHozPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjLGQpe3RoaXMudj1hO3RoaXMuU2E9Yjt0aGlzLm89Yzt0aGlzLkI9ZDt0aGlzLmo9bmV3IE1hcDthLkhkfHwoYS5IZD17fSk7YS5IZD17Li4ubXdhLC4uLmEuSGR9fVFpKGEsYil7dmFyIGM9Xy55KCkucmVzb2x2ZShfLkluKEIzKSk/LigpO2lmKGMpcmV0dXJuIG0zKGV1YShjLHtjb21tYW5kOmEsZm9ybTpiLGlkZW50aXR5OkEzfSkpLnRoZW4oZT0+ZSwoKT0+e30pO3ZhciBkPVp0YSh0aGlzLAphKTtyZXR1cm4gZD9uZXcgXy5CZihhc3luYyhlLGYpPT57dmFyIGg9KGF3YWl0IGQpLkQoYSxiLEEzKTtoPyhQMihoLmlucHV0KSxmPWgud2I/Lm1vZGU9PT0iY29ycyI/ImNvcnMiOnZvaWQgMCxmPXRoaXMuby56bj9DMyhoLmNvbmZpZyxmKTphd2FpdCBEMyhoLmNvbmZpZyxmKSxlKEUzKHRoaXMsaCxmKSkpOmYobmV3IF8uWGooIkVycm9yOiBGYWlsZWQgdG8gYnVpbGQgcmVxdWVzdCBmb3IgY29tbWFuZCIsYSkpfSk6Xy5PdChuZXcgXy5YaigiRXJyb3I6IE5vIHJlcXVlc3QgYnVpbGRlciBmb3VuZCBmb3IgY29tbWFuZCIsYSkpfUp3KGEpe3JldHVybiBVdGEoYSx0aGlzLnYpfX07dmFyIHg1PW5ldyBfLlZzKCJMT0NBTF9JTk5FUlRVQkVfUk9VVEVSX1RPS0VOIik7dmFyIHU0PW5ldyBfLlZzKCJFTkRQT0lOVF9NQVAiKTt2YXIgdDQ9bmV3IF8uVnMoIkFVVEhfU0VSVklDRV9UT0tFTiIpO3ZhciBLMz1jbGFzcyBleHRlbmRzIHU1e2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5qPWF9ZXhlY3V0ZShhKXtyZXR1cm4gbzModGhpcyxmdW5jdGlvbigpe3ZhciBiPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBjPWEueXRSZXF1ZXN0O1AyKGMuaW5wdXQpO3ZhciBkPWMud2I/Lm1vZGU9PT0iY29ycyI/ImNvcnMiOnZvaWQgMDtpZihiLmouem4pe2xldCBlPV8uUGooe3Nlc3Npb25JbmRleDpjLmNvbmZpZz8uUmQ/LnNlc3Npb25JbmRleH0pO2Q9ey4uLngzKGQpLC4uLmV9fWVsc2UgZD15aWVsZCpwMyhjdWEoYixjLmNvbmZpZyxkKSk7Yy53Yj17Li4uYy53YixoZWFkZXJzOnsuLi4oYy53Yj8uaGVhZGVycz8/e30pLC4uLmR9fTtyZXR1cm57bmV4dFN0YXRlOiJERURVUEUiLHBhcmFtczphfX0oKX0pfX07SzNbXy5Mbl09W3Q0XTt2YXIgJDM9bmV3IF8uVnMoIlJFU1BPTlNFX01BQ0hJTkVfUkVHSVNUUllfVE9LRU4iKSxhND1uZXcgXy5WcygiUkVTUE9OU0VfTUFDSElORV9GQUNUT1JZX1RPS0VOIik7dmFyIEwzPWNsYXNzIGV4dGVuZHMgdTV7Y29uc3RydWN0b3IoYSxiKXtzdXBlcigpO3RoaXMuaj1hO3RoaXMubz1ifWV4ZWN1dGUoYSl7dmFyIGI9dGhpcy5vLGM9dGhpcy5qO3JldHVybiBvMyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBkPWEueXRSZXF1ZXN0LGU9ZC5jb25maWc/LktBPy5aSztpZihlJiZiJiZiLmhhcyhlKSYmIWQuY29uZmlnPy5LQT8uZGlzYWJsZUNhY2hlKXt2YXIgZj15aWVsZCpwMyhrMyhiLmdldChlKSkpO2lmKGYmJiFmLmlzRXhwaXJlZCgpKXJldHVybiBkPWYuaigpLF8ueCgid2ViX3Byb2Nlc3NfcmVzcG9uc2Vfc3RvcmVfcmVzcG9uc2VzIikmJiFmLmlzUHJvY2Vzc2VkKCk/KGY9YygpLGQ9eWllbGQqcDMoSDMoZix7d2lyZVJlc3BvbnNlOmQseXRSZXF1ZXN0OmEueXRSZXF1ZXN0LGNodW5rQ2FsbGJhY2s6YS5jaHVua0NhbGxiYWNrLHJlc3BvbnNlUGF5bG9hZDp7dHlwZToiUEFHRV9DT05UUkFDVCJ9LGV4dHJhY3RlZFJlc3BvbnNlOmR9KSksCnlpZWxkKnAzKGszKGIuaihlKSkpLHtuZXh0U3RhdGU6IkRPTkUiLHZhbHVlOmR9KTp7bmV4dFN0YXRlOiJET05FIix2YWx1ZTpkfX1yZXR1cm57bmV4dFN0YXRlOiJMT0NBTF9ST1VURVIiLHBhcmFtczphfX0oKX0pfX07TDNbXy5Mbl09W2E0LF8uSW4obmV3IF8uVnMoIkVQSEVNRVJBTF9TVE9SRV9UT0tFTiIpKV07dmFyIE0zPWNsYXNzIGV4dGVuZHMgdTV7Y29uc3RydWN0b3IoYSxiKXtzdXBlcigpO3RoaXMubz1hO3RoaXMuaj1ifWV4ZWN1dGUoYSl7dmFyIGI9dGhpcy5vLGM9dGhpcy5qLGQ9YS55dFJlcXVlc3QsZT1kPy5pbm5lclR1YmVSZXF1ZXN0Py5jb250ZXh0O2lmKCFlKXJldHVybiBrMyh7bmV4dFN0YXRlOiJBVVRIIixwYXJhbXM6YX0pO3ZhciBmPVtdO2lmKGMmJmMubGVuZ3RoPjApZm9yKGxldCBoIG9mIGMpYz1oLkJyKGQpLGMudiYmZi5wdXNoKGMudik7Zm9yKGxldCBoIG9mIGJ8fFtdKWguQnIoZSk7cmV0dXJuIGYubGVuZ3RoPjA/bzModGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt5aWVsZCpwMyhrMyhQcm9taXNlLmFsbChmKSkpO3JldHVybntuZXh0U3RhdGU6IkFVVEgiLHBhcmFtczphfX0oKX0pOmszKHtuZXh0U3RhdGU6IkFVVEgiLHBhcmFtczphfSl9fTtNM1tfLkxuXT1bXy5JbihuZXcgXy5WcygiQ09OVEVYVF9QUk9DRVNTT1JfTUFQIikpLF8uSW4obmV3IF8uVnMoIkFTWU5DX0NPTlRFWFRfUFJPQ0VTU09SX01BUCIpKV07dmFyIE4zPWNsYXNzIGV4dGVuZHMgdTV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLmo9YX1leGVjdXRlKGEpe3ZhciBiPXRoaXMuajtyZXR1cm4gbzModGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgYz1hLnl0UmVxdWVzdC5jb25maWc/LnJlcXVlc3RLZXk7cmV0dXJuIGMmJmIuaGFzKGMpJiYoYz1iLmdldChjKSxjPXlpZWxkKnAzKGszKGMpKSk/e25leHRTdGF0ZToiRE9ORSIsdmFsdWU6Y306e25leHRTdGF0ZToiRkVUQ0giLHBhcmFtczphfX0oKX0pfX07TjNbXy5Mbl09W0ozXTt2YXIgTzM9Y2xhc3MgZXh0ZW5kcyB1NXtjb25zdHJ1Y3RvcihhLGIpe3N1cGVyKCk7dGhpcy5vPWE7dGhpcy5qPWJ9ZXhlY3V0ZShhKXt2YXIgYj10aGlzLmosYz10aGlzLm87cmV0dXJuIG8zKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIGQ9YS55dFJlcXVlc3QsZT1hLmNodW5rQ2FsbGJhY2ssZj17dHlwZToiUEFHRV9DT05UUkFDVCJ9O2lmKGI/LmNJKGQuaW5wdXQsZC5pbm5lclR1YmVSZXF1ZXN0KSl7bGV0IGs9eWllbGQqcDMoazMoYi5PSihkLmlucHV0LGQuaW5uZXJUdWJlUmVxdWVzdCkpKTtpZihrKXtsZXQgbD0hMTt2YXIgaD1mdW5jdGlvbihtLG4pe3JldHVybiBmdW5jdGlvbiooKXt2YXIgcD1jKCk7eWllbGQqcDMoSDMocCx7d2lyZVJlc3BvbnNlOm4seXRSZXF1ZXN0OmQsY2h1bmtDYWxsYmFjazplLHJlc3BvbnNlUGF5bG9hZDpmfSkpO2w9ITB9KCl9O2sucGxheWVyUmVzcG9uc2UmJih5aWVsZCpoKGsucGxheWVyUmVzcG9uc2Use3BsYXllclJlc3BvbnNlOmsucGxheWVyUmVzcG9uc2V9KSk7Cmsud2F0Y2hOZXh0UmVzcG9uc2UmJih5aWVsZCpoKGsud2F0Y2hOZXh0UmVzcG9uc2Use3dhdGNoTmV4dFJlc3BvbnNlOmsud2F0Y2hOZXh0UmVzcG9uc2V9KSk7bHx8KGg9YygpLHlpZWxkKnAzKEgzKGgse3dpcmVSZXNwb25zZTprLHl0UmVxdWVzdDpkLGNodW5rQ2FsbGJhY2s6ZSxyZXNwb25zZVBheWxvYWQ6Zn0pKSk7aWYoZSlyZXR1cm57bmV4dFN0YXRlOiJET05FIix2YWx1ZTpmfTtoPWYuY29udGVudHx8Zi5wbGF5ZXJ8fGYuZG47cmV0dXJuIGYudHlwZT09PSJQQUdFX0NPTlRSQUNUIiYmaD97bmV4dFN0YXRlOiJET05FIix2YWx1ZTpofTp7bmV4dFN0YXRlOiJET05FIix2YWx1ZTprfX19cmV0dXJue25leHRTdGF0ZToiRkFJTEVEIixlcnJvcjpFcnJvcigiTmUiKX19KCl9KX19O08zW18uTG5dPVthNCxfLkluKHg1KV07dmFyIHk1PWNsYXNzIGV4dGVuZHMgXy5Yantjb25zdHJ1Y3RvcihhLGIsYyl7c3VwZXIoYix7c3RhdHVzOmMsLi4uW119KTt0aGlzLnR5cGU9YTt0aGlzLnN0YXR1cz1jO09iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLG5ldy50YXJnZXQucHJvdG90eXBlKX19O3ZhciByND1uZXcgXy5WcygiTkVUV09SS19NQU5BR0VSX1RPS0VOIik7dmFyIFAzPWNsYXNzIGV4dGVuZHMgdTV7Y29uc3RydWN0b3IoYSxiLGMsZCl7c3VwZXIoKTt0aGlzLlNhPWE7dGhpcy5qPWI7dGhpcy52PWM7dGhpcy5vPWR9ZXhlY3V0ZShhKXt2YXIgYj10aGlzLlNhLGM9dGhpcy5qLGQ9dGhpcy52LGU9dGhpcy5vO3JldHVybiBvMyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBmPWEueXRSZXF1ZXN0LGg9YS5jaHVua0NhbGxiYWNrLGs9Zi5jb25maWc/LnJlcXVlc3RLZXksbD1KU09OLnN0cmluZ2lmeShmLmlubmVyVHViZVJlcXVlc3QpLG09ey4uLmYud2IsYm9keTpmLndiLm1ldGhvZD09PSJQT1NUIj9sOnZvaWQgMH07Zi5jb25maWc/LmtuJiZfLkFxKGYuY29uZmlnLmtuKTt2YXIgbj17dHlwZToiUEFHRV9DT05UUkFDVCJ9LHA9MCxyPXo9PntJMyhkKCkse3dpcmVSZXNwb25zZTp6LHl0UmVxdWVzdDpmLGNodW5rQ2FsbGJhY2s6aCxyZXNwb25zZVBheWxvYWQ6bn0scCsrKX07bD0oKT0+aD9iLmZldGNoKGYuaW5wdXQsCm0sZi5jb25maWcscik6Yi5mZXRjaChmLmlucHV0LG0sZi5jb25maWcpO3RyeXt2YXIgdD1lP2UuSksoZixsKTpsKCl9Y2F0Y2goeil7dD1Qcm9taXNlLnJlamVjdCh6KX1rJiZjJiZjLnNldChrLHQpO3RyeXt2YXIgdj15aWVsZCpwMyhrMyh0KSl9Y2F0Y2goeil7cmV0dXJuIF8ueCgid2ViX2VuYWJsZV9yZXRyaWVzIikmJih2PXogaW5zdGFuY2VvZiBUeXBlRXJyb3ImJnoubWVzc2FnZT09PSJGYWlsZWQgdG8gZmV0Y2giPzE6MCxHMyh2KSk/e25leHRTdGF0ZToiUkVUUlkiLHBhcmFtczp7Li4uYSxlcnJvcjpuZXcgeTUodix6Lm1lc3NhZ2UpLGF0dGVtcHQ6KGEuYXR0ZW1wdHx8MCkrMX19OntuZXh0U3RhdGU6IkZBTExCQUNLIixwYXJhbXM6ey4uLmF9fX1rJiZjJiZjLmRlbGV0ZShrKTt3MCh2MChmLmlucHV0KSkoKTtmLmNvbmZpZz8ucG4mJl8uQXEoZi5jb25maWcucG4pO2lmKCF2KXJldHVybntuZXh0U3RhdGU6IkZBTExCQUNLIixwYXJhbXM6ey4uLmF9fTtpZih2JiZ0eXBlb2Ygdj09PQoib2JqZWN0IiYmIUFycmF5LmlzQXJyYXkodikmJihrPXYsay5lcnJvck1ldGFkYXRhPy5zdGF0dXMmJihrPWsuZXJyb3JNZXRhZGF0YS5zdGF0dXMsdD1rPT09NTAzfHxrPT09NTA0fHxrPT09NDI5PzI6az49NDAwJiZrPDUwMHx8az49NTAwPzM6MCxHMyh0KSYmXy54KCJ3ZWJfZW5hYmxlX3JldHJpZXMiKSkpKXJldHVybntuZXh0U3RhdGU6IlJFVFJZIixwYXJhbXM6ey4uLmEsZXJyb3I6bmV3IHk1KHQsYEhUVFAgU3RhdHVzICR7a31gLGspLGF0dGVtcHQ6KGEuYXR0ZW1wdHx8MCkrMX19OyFoJiZ2JiYoaz1kKCksaz15aWVsZCpwMyhJMyhrLHt3aXJlUmVzcG9uc2U6dix5dFJlcXVlc3Q6ZixyZXNwb25zZVBheWxvYWQ6e3R5cGU6IlBBR0VfQ09OVFJBQ1QifX0pKSx0PWsuY29udGVudHx8ay5wbGF5ZXJ8fGsuZG4say50eXBlPT09IlBBR0VfQ09OVFJBQ1QiJiZ0JiYodj10KSk7az12O2lmKEFycmF5LmlzQXJyYXkodikpaWYodj12LmZpbHRlcih6PT4hKHoucGxheWVyUmVzcG9uc2V8fAp6LndhdGNoTmV4dFJlc3BvbnNlfHx6KS5yZXNwb25zZUNvbnRleHQ/LmZyYW1ld29ya09ubHkpLHYubGVuZ3RoPT09MSlrPXZbMF07ZWxzZSBpZih2Lmxlbmd0aD4xKWs9di5maW5kKHo9Pnoud2F0Y2hOZXh0UmVzcG9uc2UpfHx2WzBdO2Vsc2UgcmV0dXJue25leHRTdGF0ZToiRkFJTEVEIixlcnJvcjpFcnJvcigiT2UiKX07cmV0dXJue25leHRTdGF0ZToiRE9ORSIsdmFsdWU6aCYmIV8ueCgid2ViX25tX2ZldGNoX2NodW5rX2NhbGxiYWNrX2tzIik/bjprfX0oKX0pfX07UDNbXy5Mbl09W3I0LEozLGE0LF8uSW4obmV3IF8uVnMoIlJFUVVFU1RfU0VRVUVOQ0lORyIpKV07dmFyIFEzPWNsYXNzIGV4dGVuZHMgdTV7Y29uc3RydWN0b3IoYSxiKXtzdXBlcigpO3RoaXMubz1hO3RoaXMuaj1ifWV4ZWN1dGUoYSl7dmFyIGI9dGhpcy5qLGM9dGhpcy5vLGQ9YS55dFJlcXVlc3Q7cmV0dXJuIGI/LlBLKGQuaW5wdXQsZC5pbm5lclR1YmVSZXF1ZXN0KT9vMyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBlPXlpZWxkKnAzKGszKGIuUEooZC5pbnB1dCxkLmlubmVyVHViZVJlcXVlc3QpKSksZj1jKCk7aWYoZS5wbGF5ZXJSZXNwb25zZSYmZS53YXRjaE5leHRSZXNwb25zZSl7dmFyIGg9eWllbGQqcDMoSDMoZix7d2lyZVJlc3BvbnNlOntwbGF5ZXJSZXNwb25zZTplLnBsYXllclJlc3BvbnNlfSx5dFJlcXVlc3Q6YS55dFJlcXVlc3QsY2h1bmtDYWxsYmFjazphLmNodW5rQ2FsbGJhY2sscmVzcG9uc2VQYXlsb2FkOnt0eXBlOiJQQUdFX0NPTlRSQUNUIn0sZXh0cmFjdGVkUmVzcG9uc2U6ZS5wbGF5ZXJSZXNwb25zZX0pKTtoPXlpZWxkKnAzKEgzKGYsCnt3aXJlUmVzcG9uc2U6e3dhdGNoTmV4dFJlc3BvbnNlOmUud2F0Y2hOZXh0UmVzcG9uc2V9LHl0UmVxdWVzdDphLnl0UmVxdWVzdCxjaHVua0NhbGxiYWNrOmEuY2h1bmtDYWxsYmFjayxyZXNwb25zZVBheWxvYWQ6e3R5cGU6IlBBR0VfQ09OVFJBQ1QifSxleHRyYWN0ZWRSZXNwb25zZTplLndhdGNoTmV4dFJlc3BvbnNlfSkpfWVsc2UgaD15aWVsZCpwMyhIMyhmLHt3aXJlUmVzcG9uc2U6ZSx5dFJlcXVlc3Q6YS55dFJlcXVlc3QsY2h1bmtDYWxsYmFjazphLmNodW5rQ2FsbGJhY2sscmVzcG9uc2VQYXlsb2FkOnt0eXBlOiJQQUdFX0NPTlRSQUNUIn0sZXh0cmFjdGVkUmVzcG9uc2U6ZX0pKTtmPWguY29udGVudHx8aC5wbGF5ZXJ8fGguZG47aC50eXBlPT09IlBBR0VfQ09OVFJBQ1QiJiZmJiYoZT1mKTtyZXR1cm57bmV4dFN0YXRlOiJET05FIix2YWx1ZTplfX0oKX0pOmszKHtuZXh0U3RhdGU6IkNPTlRFWFQiLHBhcmFtczphfSl9fTtRM1tfLkxuXT1bYTQsXy5Jbih4NSldO3ZhciBSMz1jbGFzcyBleHRlbmRzIHU1e2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5qPWF9ZXhlY3V0ZShhKXtyZXR1cm4gbzModGhpcyxmdW5jdGlvbigpe3ZhciBiPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKigpe3RyeXt2YXIgYz15aWVsZCpwMyhkdWEoYixhLmNvbW1hbmQsISFhLmNodW5rQ2FsbGJhY2spKX1jYXRjaChkKXtyZXR1cm57bmV4dFN0YXRlOiJGQUlMRUQiLGVycm9yOmR9fXJldHVybihjPWMuRChhLmNvbW1hbmQsYS5mb3JtLGEuaWRlbnRpdHkpKT97bmV4dFN0YXRlOiJDQUNIRSIscGFyYW1zOnt5dFJlcXVlc3Q6YyxjaHVua0NhbGxiYWNrOmEuY2h1bmtDYWxsYmFja319OntuZXh0U3RhdGU6IkZBSUxFRCIsZXJyb3I6RXJyb3IoIlBlIil9fSgpfSl9fTtSM1tfLkxuXT1bdTRdO3ZhciBTMz1jbGFzcyBleHRlbmRzIHU1e2V4ZWN1dGUoYSl7cmV0dXJuIG8zKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIHtpbm5lclR1YmVSZXF1ZXN0OmIsYXBpUGF0aDpjLGNsaWNrVHJhY2tpbmdQYXJhbXM6ZCxjb25maWc6ZT17UmQ6e2lkZW50aXR5OkEzfX0saW5jbHVkZUN1cnJlbnRTY3JlZW5Ob25jZTpmPSEwLGNodW5rQ2FsbGJhY2s6aH09YTtiLmNvbnRleHR8fChiLmNvbnRleHQ9dzMoZCxmKSk7dmFyIGs9WDAoWTAoYykpO3JldHVybntuZXh0U3RhdGU6IkNBQ0hFIixwYXJhbXM6e3l0UmVxdWVzdDp7aW5wdXQ6ayx3YjpaMChrKSxpbm5lclR1YmVSZXF1ZXN0OmIsY29uZmlnOmV9LGNodW5rQ2FsbGJhY2s6aH19fSgpfSl9fTt2YXIgVjM9Y2xhc3MgZXh0ZW5kcyB0NXt9O1YzW18uTG5dPVtVM107dmFyIFQzPWNsYXNzIGV4dGVuZHMgdTV7ZXhlY3V0ZShhKXtyZXR1cm4gbzModGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgYj1hLnl0UmVxdWVzdCxjPWEuZXJyb3IsZD1hLmF0dGVtcHQsZT1hLmNodW5rQ2FsbGJhY2ssZj1iLmNvbmZpZz8uREs7aWYoIShmJiZjIGluc3RhbmNlb2YgeTUmJkczKGMudHlwZSkpfHxkPihmLm1heFJldHJpZXM/PzApKXJldHVybntuZXh0U3RhdGU6IkZBTExCQUNLIixwYXJhbXM6e3l0UmVxdWVzdDpiLGNodW5rQ2FsbGJhY2s6ZX19O3ZhciBoPShjPWYuWEgpP2MuY0ooZCk6LTE7aD09PS0xJiYoaD0xRTMpO2YuQ3khPT12b2lkIDAmJihoPU1hdGgubWluKGgsZi5DeSkpO3lpZWxkKnAzKGszKG5ldyBQcm9taXNlKGs9PntfLk50KGssaCl9KSkpO3JldHVybntuZXh0U3RhdGU6IkZFVENIIixwYXJhbXM6e3l0UmVxdWVzdDpiLGNodW5rQ2FsbGJhY2s6ZSxhdHRlbXB0OmR9fX0oKX0pfX07dmFyIFczPWNsYXNzIGV4dGVuZHMgdTV7ZXhlY3V0ZShhKXtyZXR1cm4gbzModGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgYj1hLmNodW5rQ2FsbGJhY2ssYz1hLnJlc3BvbnNlUGF5bG9hZCxkPWEud2lyZVJlc3BvbnNlO2ImJihiKGMpLCJwbGF5ZXJSZXNwb25zZSJpbiBkJiZkLnBsYXllclJlc3BvbnNlJiYoXy5DaygpLChiPV8uc2EoInl0LnNjaGVkdWxlci5pbnN0YW5jZS5zZXRQcmlvcml0eVRocmVzaG9sZCIpKSYmYig0KSkpO3JldHVybntuZXh0U3RhdGU6IkRPTkUiLHZhbHVlOmN9fSgpfSl9fTt2YXIgbndhPVsidHlwZS5nb29nbGVhcGlzLmNvbS95b3V0dWJlLmFwaS5wZmlpbm5lcnR1YmUuWW91dHViZUFwaUlubmVydHViZS5Ccm93c2VSZXNwb25zZSIsInR5cGUuZ29vZ2xlYXBpcy5jb20veW91dHViZS5hcGkucGZpaW5uZXJ0dWJlLllvdXR1YmVBcGlJbm5lcnR1YmUuUGxheWVyUmVzcG9uc2UiLCJ0eXBlLmdvb2dsZWFwaXMuY29tL3lvdXR1YmUuYXBpLnBmaWlubmVydHViZS5Zb3V0dWJlQXBpSW5uZXJ0dWJlLlBhbmVsUmVzcG9uc2UiXSxYMz1jbGFzcyBleHRlbmRzIHU1e2V4ZWN1dGUoYSl7cmV0dXJuIG8zKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIGI9YS5vbmVQbGF0Zm9ybUVycm9yO2lmKGImJiJkZXRhaWxzImluIGImJmIuZGV0YWlscyl7Yj1iLmRldGFpbHM7Zm9yKGxldCBjIG9mIGIpaWYoKGI9Y1siQHR5cGUiXSkmJm53YS5pbmRleE9mKGIpPi0xKXJldHVybiBkZWxldGUgY1siQHR5cGUiXSx7bmV4dFN0YXRlOiJQUk9DRVNTX1JFU1BPTlNFIiwKcGFyYW1zOnsuLi5hLGV4dHJhY3RlZFJlc3BvbnNlOmN9fX1yZXR1cm57bmV4dFN0YXRlOiJGQUlMRUQiLGVycm9yOkVycm9yKCJTZSIpfX0oKX0pfX07dmFyIFkzPWNsYXNzIGV4dGVuZHMgdTV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLmo9YX1leGVjdXRlKGEpe3ZhciBiPXRoaXMuajtyZXR1cm4gbzModGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgYz1hLmV4dHJhY3RlZFJlc3BvbnNlLGQ9YS55dFJlcXVlc3QsZT1hLnJlc3BvbnNlUGF5bG9hZCxmPWEud2lyZVJlc3BvbnNlO2lmKGMmJiEoImNvZGUiaW4gY3x8ImVycm9yImluIGMpJiYhYy5zZXF1ZW5jZU1ldGFEYXRhPy5za2lwUHJvY2Vzc2luZylmb3IobGV0IGggb2YgRjMpYltoXSYmYltoXS5oYW5kbGVSZXNwb25zZShjLGQpO2Yud2F0Y2hOZXh0UmVzcG9uc2V8fGYucmVlbEl0ZW1XYXRjaFJlc3BvbnNlP2Yud2F0Y2hOZXh0UmVzcG9uc2U/ZS5jb250ZW50PWYud2F0Y2hOZXh0UmVzcG9uc2U6ZS5jb250ZW50PWYucmVlbEl0ZW1XYXRjaFJlc3BvbnNlOmYucGxheWVyUmVzcG9uc2U/ZS5wbGF5ZXI9Zi5wbGF5ZXJSZXNwb25zZTpmLnJlZWxXYXRjaFNlcXVlbmNlUmVzcG9uc2U/CmUuZG49Zi5yZWVsV2F0Y2hTZXF1ZW5jZVJlc3BvbnNlOmUuY29udGVudD1mO3JldHVybntuZXh0U3RhdGU6IkNBTExCQUNLX0RJU1BBVENIRVIiLHBhcmFtczphfX0oKX0pfX07WTNbXy5Mbl09W18uSnldO3ZhciBiND1jbGFzcyBleHRlbmRzIHQ1e307YjRbXy5Mbl09WyQzXTt2YXIgWjM9Y2xhc3MgZXh0ZW5kcyB1NXtleGVjdXRlKGEpe3JldHVybiBvMyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBiPWEud2lyZVJlc3BvbnNlLGM7QXJyYXkuaXNBcnJheShiKT9jPWJbMF06dHlwZW9mIGI9PT0ib2JqZWN0IiYmYiE9PW51bGwmJigicGxheWVyUmVzcG9uc2UiaW4gYnx8IndhdGNoTmV4dFJlc3BvbnNlImluIGJ8fCJyZWVsSXRlbVdhdGNoUmVzcG9uc2UiaW4gYnx8InJlZWxXYXRjaFNlcXVlbmNlUmVzcG9uc2UiaW4gYik/Yz1iLnBsYXllclJlc3BvbnNlfHxiLndhdGNoTmV4dFJlc3BvbnNlfHxiLnJlZWxJdGVtV2F0Y2hSZXNwb25zZXx8Yi5yZWVsV2F0Y2hTZXF1ZW5jZVJlc3BvbnNlOmM9YjtyZXR1cm4gYyYmImVycm9yImluIGM/e25leHRTdGF0ZToiRVJST1JfVU5QQUNLRVIiLHBhcmFtczp7Li4uYSxvbmVQbGF0Zm9ybUVycm9yOmMuZXJyb3J9fTp7bmV4dFN0YXRlOiJQUk9DRVNTX1JFU1BPTlNFIixwYXJhbXM6ey4uLmEsZXh0cmFjdGVkUmVzcG9uc2U6Y319fSgpfSl9fTt2YXIgb3dhPWNsYXNzIGV4dGVuZHMgdzV7digpe3JldHVybiBpd2F9Z2V0IEIoKXtyZXR1cm4hMH1vKGEpe3JldHVybiBfLkIoYSxkd2EpfHx2b2lkIDB9aihhLGIsYz17fSl7Yi5jaGFubmVsSWRzJiYoYS5jaGFubmVsSWRzPWIuY2hhbm5lbElkcyk7Yi5zaWxvTmFtZSYmKGEuc2lsb05hbWU9Yi5zaWxvTmFtZSk7Yi5wYXJhbXMmJihhLnBhcmFtcz1iLnBhcmFtcyk7Yy5ib3RndWFyZFJlc3BvbnNlJiYoYS5ib3RndWFyZFJlc3BvbnNlPWMuYm90Z3VhcmRSZXNwb25zZSk7Yy5mZWF0dXJlJiYoYS5jbGllbnRGZWF0dXJlPWMuZmVhdHVyZSl9fTt2YXIgcHdhPWNsYXNzIGV4dGVuZHMgdzV7digpe3JldHVybiBqd2F9Z2V0IEIoKXtyZXR1cm4hMH1vKGEpe3JldHVybiBfLkIoYSxfLkR5KXx8dm9pZCAwfWooYSxiKXtiLmNoYW5uZWxJZHMmJihhLmNoYW5uZWxJZHM9Yi5jaGFubmVsSWRzKTtiLnNpbG9OYW1lJiYoYS5zaWxvTmFtZT1iLnNpbG9OYW1lKTtiLnBhcmFtcyYmKGEucGFyYW1zPWIucGFyYW1zKX19O3ZhciB6NT1jbGFzcyBleHRlbmRzIHc1e2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5JPWF9digpe3JldHVybiBld2F9byhhKXtyZXR1cm4gXy5CKGEsXy5aeil8fF8uQihhLF8uTWFhKXx8Xy5CKGEsXy5Zeil9aihhLGIpe2Iuc2VyaWFsaXplZFNoYXJlRW50aXR5JiYoYS5zZXJpYWxpemVkU2hhcmVkRW50aXR5PWIuc2VyaWFsaXplZFNoYXJlRW50aXR5KTtiLmNsaWVudFBhcmFtSWRlbnRpZmllciYmdGhpcy5JPy5qKGIuY2xpZW50UGFyYW1JZGVudGlmaWVyKSYmKGEuY2xpZW50UGFyYW1zPXRoaXMuSS5vKGIuY2xpZW50UGFyYW1JZGVudGlmaWVyKSl9fTt6NVtfLkxuXT1bbmV3IF8uVnMoIlNIQVJFX0NMSUVOVF9QQVJBTVNfUFJPVklERVJfVE9LRU4iKV07dmFyIHF3YT1jbGFzcyBleHRlbmRzIHc1e3YoKXtyZXR1cm4gcTV9Z2V0IEIoKXtyZXR1cm4hMH1vKGEpe3JldHVybiBfLkIoYSxfLlV6KXx8dm9pZCAwfWooYSxiLGMpe2EuZmVlZGJhY2tUb2tlbnM9W107Yi5mZWVkYmFja1Rva2VuJiZhLmZlZWRiYWNrVG9rZW5zLnB1c2goYi5mZWVkYmFja1Rva2VuKTtpZihiPWIuY3BufHxjLmNwbilhLmZlZWRiYWNrQ29udGV4dD17Y3BuOmJ9O2EuaXNGZWVkYmFja1Rva2VuVW5lbmNyeXB0ZWQ9ISFjLmlzX2ZlZWRiYWNrX3Rva2VuX3VuZW5jcnlwdGVkO2Euc2hvdWxkTWVyZ2U9ITE7Yy5leHRyYV9mZWVkYmFja190b2tlbnMmJihhLnNob3VsZE1lcmdlPSEwLGEuZmVlZGJhY2tUb2tlbnM9YS5mZWVkYmFja1Rva2Vucy5jb25jYXQoYy5leHRyYV9mZWVkYmFja190b2tlbnMpKX19O3ZhciByd2E9Y2xhc3MgZXh0ZW5kcyB3NXt2KCl7cmV0dXJuIHE1fW8oYSl7cmV0dXJuIF8uQihhLF8uQ3kpfWdldCBCKCl7cmV0dXJuITB9aihhLGIpe2IudW5kb1Rva2VuJiYoYS5mZWVkYmFja1Rva2Vucz1bYi51bmRvVG9rZW5dKTtiLmlzVW5kb1Rva2VuVW5lbmNyeXB0ZWQmJihhLmlzRmVlZGJhY2tUb2tlblVuZW5jcnlwdGVkPWIuaXNVbmRvVG9rZW5VbmVuY3J5cHRlZCl9fTt2YXIgc3dhPWNsYXNzIGV4dGVuZHMgdzV7digpe3JldHVybiBnd2F9byhhKXtyZXR1cm4gXy5CKGEsXy5CeSl8fHZvaWQgMH1qKGEsYil7Yi5wYXJhbXMmJihhLnBhcmFtcz1iLnBhcmFtcyk7Yi5zZWNvbmRhcnlQYXJhbXMmJihhLnNlY29uZGFyeVBhcmFtcz1iLnNlY29uZGFyeVBhcmFtcyl9fTt2YXIgdHdhPWNsYXNzIGV4dGVuZHMgdzV7digpe3JldHVybiBod2F9byhhKXtyZXR1cm4gXy5CKGEsXy5Beil8fHZvaWQgMH1qKGEsYil7Yi5hY3Rpb25zJiYoYS5hY3Rpb25zPWIuYWN0aW9ucyk7Yi5wYXJhbXMmJihhLnBhcmFtcz1iLnBhcmFtcyk7Yi5wbGF5bGlzdElkJiYoYS5wbGF5bGlzdElkPWIucGxheWxpc3RJZCl9fTt2YXIgdXdhPWNsYXNzIGV4dGVuZHMgdzV7digpe3JldHVybiBmd2F9byhhKXtyZXR1cm4gXy5CKGEsXy5OYWEpfWooYSxiLGM9e30pe2Iuc2VyaWFsaXplZFNoYXJlRW50aXR5JiYoYS5zZXJpYWxpemVkU2hhcmVkRW50aXR5PWIuc2VyaWFsaXplZFNoYXJlRW50aXR5KTtjLmluY2x1ZGVMaXN0SWQmJihhLmluY2x1ZGVMaXN0SWQ9ITApfX07dmFyIHZ3YT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYyl7dGhpcy5yZXF1ZXN0S2V5PWE7dGhpcy5CPWI7dGhpcy5vPWM7dGhpcy5EPSgpPT5uZXcgWE1MSHR0cFJlcXVlc3Q7dGhpcy5qPXZvaWQgMDt0aGlzLnY9W119Z2V0TGF0ZXN0Q2hhbGxlbmdlUmVzcG9uc2UoKXtyZXR1cm4gdGhpcy5vfX07dmFyIG91YT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMuaj0wO3RoaXMuWGc9Yj8uWGc/P3dpbmRvdzt0aGlzLnltPWI/LnltO3RoaXMucmVxdWVzdEtleT1iPy5yZXF1ZXN0S2V5Pz8oXy50aigicGFyX2Jpcl9rZXkiKXx8Ik80M3owZHBqaGdYMjBTQ3g0S0FvIik7dGhpcy5Icz1iPy5Icz8/KGQ9Pm5ldyBxMihkKSk7dmFyIGM9Yj8uVkk/PygoZCxlLGYpPT5uZXcgdndhKGQsZSxmKSk7dGhpcy5iZ0NoYWxsZW5nZT1TMihhLmJnQ2hhbGxlbmdlKTt0aGlzLnR0bFNlY29uZHM9VTIoVDIoYS5jaGFsbGVuZ2V8fCIiKSk7dGhpcy5vZD1jKHRoaXMucmVxdWVzdEtleSxfLngoInBhcl9hdF9lcCIpP1sid3d3LnlvdXR1YmUuY29tIiwibS55b3V0dWJlLmNvbSJdLmluY2x1ZGVzKF8udS5sb2NhdGlvbi5ob3N0bmFtZSk/Ii9hcGkvam5uL3YxL0dlbmVyYXRlSVQiOiJodHRwczovL2pubi1wYS5nb29nbGVhcGlzLmNvbS8kcnBjL2dvb2dsZS5pbnRlcm5hbC53YWEudjEuV2FhL0dlbmVyYXRlSVQiOgoiaHR0cHM6Ly9qbm4tcGEuZ29vZ2xlYXBpcy5jb20vJHJwYy9nb29nbGUuaW50ZXJuYWwud2FhLnYxLldhYS9HZW5lcmF0ZUlUIixhKTt0aGlzLkpzPWI/LkpzO251YSh0aGlzLm9kKTt0aGlzLkdyPWI/LkdyPz8oZD0+e18uU2UodGhpcy5YZy5kb2N1bWVudCwidmlzaWJpbGl0eWNoYW5nZSIsKCk9Pnt0aGlzLlhnLmRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT09PSJ2aXNpYmxlIiYmZCgpfSl9KX12KCl7RGF0ZS5ub3coKT50aGlzLmordGhpcy50dGxTZWNvbmRzKjFFMyYmdGhpcy52bT8uVSgpfX07dmFyIHV1YT1bInd3dy55b3V0dWJlLW5vY29va2llLmNvbSIsInd3dy55b3V0dWJlZWR1Y2F0aW9uLmNvbSIsInlvdXR1YmUuZ29vZ2xlYXBpcy5jb20iXSx3d2E9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnN0YXRlPTE7dGhpcy52bT1udWxsO3RoaXMuaj12b2lkIDB9aW5pdGlhbGl6ZShhLGIsYyxkKXt0aGlzLmo9ZDtpZihhLnByb2dyYW0pe3ZhciBlO2Q9YS5pbnRlcnByZXRlclVybD8/bnVsbDthLmludGVycHJldGVyU2FmZVNjcmlwdD9lPVlfKGEuaW50ZXJwcmV0ZXJTYWZlU2NyaXB0KTplPWEuaW50ZXJwcmV0ZXJTY3JpcHQ/P251bGw7YS5pbnRlcnByZXRlclNhZmVVcmwmJihkPV8uaHcoYS5pbnRlcnByZXRlclNhZmVVcmwpLnRvU3RyaW5nKCkpO3R1YSh0aGlzLGUsZCxhLnByb2dyYW0sYixjKX1lbHNlIF8uSXAoRXJyb3IoIlVlIikpfWlzSW5pdGlhbGl6ZWQoKXtyZXR1cm4gdGhpcy52KCl9Z2V0U3RhdGUoKXtyZXR1cm4gdGhpcy5zdGF0ZX1pc0xvYWRpbmcoKXtyZXR1cm4gdGhpcy5zdGF0ZT09PQoyfWludm9rZShhPXt9KXtyZXR1cm4gdGhpcy52KCk/dGhpcy5CKHtLYzphfSk6bnVsbH1kaXNwb3NlKCl7dGhpcy5vKG51bGwpO3RoaXMuUyg4KX12KCl7cmV0dXJuISF0aGlzLnZtfUIoYSl7cmV0dXJuIHRoaXMudm0uWHIoYSl9byhhKXtfLlpkKHRoaXMudm0pO3RoaXMudm09YX1TKGEpe3RoaXMuc3RhdGU9YX19O3ZhciB4d2E9Y2xhc3MgZXh0ZW5kcyB3d2F7byhhKXttNCgpPy5iZ3ZtYSgpO2lmKGEpe2xldCBiPXtiZ3ZtYTphLmRpc3Bvc2UuYmluZChhKSxiZ3ZtYjphLnNuYXBzaG90LmJpbmQoYSksYmd2bWM6YS5Yci5iaW5kKGEpfTtfLnJhKCJ5dC5hYnVzZS5wbGF5ZXJBdHRMb2FkZXIiLGIpO18uRmEoInl0LmFidXNlLnBsYXllckF0dExvYWRlclJ1biIsYz0+YS5zbmFwc2hvdChjKSl9ZWxzZSBfLnJhKCJ5dC5hYnVzZS5wbGF5ZXJBdHRMb2FkZXIiLG51bGwpLF8ucmEoInl0LmFidXNlLnBsYXllckF0dExvYWRlclJ1biIsbnVsbCl9digpe3JldHVybiEhbTQoKX1CKGEpe3JldHVybiBtNCgpLmJndm1jKGEpfX07dmFyIHl3YT1jbGFzcyBleHRlbmRzIF8uV3N7Y29uc3RydWN0b3IoKXtzdXBlcigiZG9jdW1lbnRfYWN0aXZlIik7dGhpcy52PTEwO3RoaXMubz1uZXcgTWFwO3RoaXMudHJhbnNpdGlvbnM9W3tmcm9tOiJkb2N1bWVudF9hY3RpdmUiLHRvOiJkb2N1bWVudF9kaXNwb3NlZF9wcmV2ZW50YWJsZSIsYWN0aW9uOnRoaXMuWX0se2Zyb206ImRvY3VtZW50X2FjdGl2ZSIsdG86ImRvY3VtZW50X2Rpc3Bvc2VkIixhY3Rpb246dGhpcy5LfSx7ZnJvbToiZG9jdW1lbnRfZGlzcG9zZWRfcHJldmVudGFibGUiLHRvOiJkb2N1bWVudF9kaXNwb3NlZCIsYWN0aW9uOnRoaXMuS30se2Zyb206ImRvY3VtZW50X2Rpc3Bvc2VkX3ByZXZlbnRhYmxlIix0bzoiZmx1c2hfbG9ncyIsYWN0aW9uOnRoaXMuSX0se2Zyb206ImRvY3VtZW50X2Rpc3Bvc2VkX3ByZXZlbnRhYmxlIix0bzoiZG9jdW1lbnRfYWN0aXZlIixhY3Rpb246dGhpcy5EfSx7ZnJvbToiZG9jdW1lbnRfZGlzcG9zZWQiLHRvOiJmbHVzaF9sb2dzIiwKYWN0aW9uOnRoaXMuSX0se2Zyb206ImRvY3VtZW50X2Rpc3Bvc2VkIix0bzoiZG9jdW1lbnRfYWN0aXZlIixhY3Rpb246dGhpcy5EfSx7ZnJvbToiZG9jdW1lbnRfZGlzcG9zZWQiLHRvOiJkb2N1bWVudF9kaXNwb3NlZCIsYWN0aW9uOigpPT57fX0se2Zyb206ImZsdXNoX2xvZ3MiLHRvOiJkb2N1bWVudF9hY3RpdmUiLGFjdGlvbjp0aGlzLkR9XTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicGFnZWhpZGUiLGE9Pnt0aGlzLnRyYW5zaXRpb24oImRvY3VtZW50X2Rpc3Bvc2VkIix7ZXZlbnQ6YX0pO2EucGVyc2lzdGVkPT09ITEmJih0aGlzLm89bmV3IE1hcCl9KTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiYmVmb3JldW5sb2FkIixhPT57dGhpcy50cmFuc2l0aW9uKCJkb2N1bWVudF9kaXNwb3NlZF9wcmV2ZW50YWJsZSIse2V2ZW50OmF9KX0pfVkoYSxiKXtpZighdGhpcy5vLmdldCgiZG9jdW1lbnRfZGlzcG9zZWRfcHJldmVudGFibGUiKSYmKGEoYj8uZXZlbnQpLGI/LmV2ZW50Py5kZWZhdWx0UHJldmVudGVkfHwKYj8uZXZlbnQ/LnJldHVyblZhbHVlKSl7Yi5ldmVudC5yZXR1cm5WYWx1ZXx8KGIuZXZlbnQucmV0dXJuVmFsdWU9ITApO2IuZXZlbnQuZGVmYXVsdFByZXZlbnRlZHx8Yi5ldmVudC5wcmV2ZW50RGVmYXVsdCgpO3RoaXMubz1uZXcgTWFwO3RoaXMudHJhbnNpdGlvbigiZG9jdW1lbnRfYWN0aXZlIik7cmV0dXJufXRoaXMuby5zZXQoImRvY3VtZW50X2Rpc3Bvc2VkX3ByZXZlbnRhYmxlIiwhMCk7dGhpcy5vLmdldCgiZG9jdW1lbnRfZGlzcG9zZWQiKT90aGlzLnRyYW5zaXRpb24oImZsdXNoX2xvZ3MiKTp0aGlzLnRyYW5zaXRpb24oImRvY3VtZW50X2Rpc3Bvc2VkIil9SyhhLGIpe3RoaXMuby5nZXQoImRvY3VtZW50X2Rpc3Bvc2VkIik/dGhpcy50cmFuc2l0aW9uKCJkb2N1bWVudF9hY3RpdmUiKTooYShiPy5ldmVudCksdGhpcy5vLnNldCgiZG9jdW1lbnRfZGlzcG9zZWQiLCEwKSx0aGlzLnRyYW5zaXRpb24oImZsdXNoX2xvZ3MiKSl9SShhLGIpe2EoYj8uZXZlbnQpO3RoaXMudHJhbnNpdGlvbigiZG9jdW1lbnRfYWN0aXZlIil9RCgpe3RoaXMubz0KbmV3IE1hcH19O3ZhciB6d2E9Y2xhc3MgZXh0ZW5kcyBfLldze2NvbnN0cnVjdG9yKCl7c3VwZXIoImRvY3VtZW50X3Zpc2liaWxpdHlfdW5rbm93biIpO3RoaXMudHJhbnNpdGlvbnM9W3tmcm9tOiJkb2N1bWVudF92aXNpYmlsaXR5X3Vua25vd24iLHRvOiJkb2N1bWVudF92aXNpYmxlIixhY3Rpb246dGhpcy5EfSx7ZnJvbToiZG9jdW1lbnRfdmlzaWJpbGl0eV91bmtub3duIix0bzoiZG9jdW1lbnRfaGlkZGVuIixhY3Rpb246dGhpcy5vfSx7ZnJvbToiZG9jdW1lbnRfdmlzaWJpbGl0eV91bmtub3duIix0bzoiZG9jdW1lbnRfZm9yZWdyb3VuZGVkIixhY3Rpb246dGhpcy5JfSx7ZnJvbToiZG9jdW1lbnRfdmlzaWJpbGl0eV91bmtub3duIix0bzoiZG9jdW1lbnRfYmFja2dyb3VuZGVkIixhY3Rpb246dGhpcy5LfSx7ZnJvbToiZG9jdW1lbnRfdmlzaWJsZSIsdG86ImRvY3VtZW50X2hpZGRlbiIsYWN0aW9uOnRoaXMub30se2Zyb206ImRvY3VtZW50X3Zpc2libGUiLHRvOiJkb2N1bWVudF9mb3JlZ3JvdW5kZWQiLAphY3Rpb246dGhpcy5JfSx7ZnJvbToiZG9jdW1lbnRfdmlzaWJsZSIsdG86ImRvY3VtZW50X3Zpc2libGUiLGFjdGlvbjp0aGlzLkR9LHtmcm9tOiJkb2N1bWVudF9mb3JlZ3JvdW5kZWQiLHRvOiJkb2N1bWVudF92aXNpYmxlIixhY3Rpb246dGhpcy5EfSx7ZnJvbToiZG9jdW1lbnRfZm9yZWdyb3VuZGVkIix0bzoiZG9jdW1lbnRfaGlkZGVuIixhY3Rpb246dGhpcy5vfSx7ZnJvbToiZG9jdW1lbnRfZm9yZWdyb3VuZGVkIix0bzoiZG9jdW1lbnRfZm9yZWdyb3VuZGVkIixhY3Rpb246dGhpcy5JfSx7ZnJvbToiZG9jdW1lbnRfaGlkZGVuIix0bzoiZG9jdW1lbnRfdmlzaWJsZSIsYWN0aW9uOnRoaXMuRH0se2Zyb206ImRvY3VtZW50X2hpZGRlbiIsdG86ImRvY3VtZW50X2JhY2tncm91bmRlZCIsYWN0aW9uOnRoaXMuS30se2Zyb206ImRvY3VtZW50X2hpZGRlbiIsdG86ImRvY3VtZW50X2hpZGRlbiIsYWN0aW9uOnRoaXMub30se2Zyb206ImRvY3VtZW50X2JhY2tncm91bmRlZCIsdG86ImRvY3VtZW50X2hpZGRlbiIsCmFjdGlvbjp0aGlzLm99LHtmcm9tOiJkb2N1bWVudF9iYWNrZ3JvdW5kZWQiLHRvOiJkb2N1bWVudF9iYWNrZ3JvdW5kZWQiLGFjdGlvbjp0aGlzLkt9LHtmcm9tOiJkb2N1bWVudF9iYWNrZ3JvdW5kZWQiLHRvOiJkb2N1bWVudF92aXNpYmxlIixhY3Rpb246dGhpcy5EfV07ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIsYT0+e2RvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT09PSJ2aXNpYmxlIj90aGlzLnRyYW5zaXRpb24oImRvY3VtZW50X3Zpc2libGUiLHtldmVudDphfSk6dGhpcy50cmFuc2l0aW9uKCJkb2N1bWVudF9oaWRkZW4iLHtldmVudDphfSl9KTtfLngoInZpc2liaWxpdHlfbGlmZWN5Y2xlc19keW5hbWljX2JhY2tncm91bmRpbmciKSYmKHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJibHVyIixhPT57dGhpcy50cmFuc2l0aW9uKCJkb2N1bWVudF9iYWNrZ3JvdW5kZWQiLHtldmVudDphfSl9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLAphPT57dGhpcy50cmFuc2l0aW9uKCJkb2N1bWVudF9mb3JlZ3JvdW5kZWQiLHtldmVudDphfSl9KSl9RChhLGIpe2EoYj8uZXZlbnQpO18ueCgidmlzaWJpbGl0eV9saWZlY3ljbGVzX2R5bmFtaWNfYmFja2dyb3VuZGluZyIpJiZ0aGlzLnRyYW5zaXRpb24oImRvY3VtZW50X2ZvcmVncm91bmRlZCIpfW8oYSxiKXthKGI/LmV2ZW50KTtfLngoInZpc2liaWxpdHlfbGlmZWN5Y2xlc19keW5hbWljX2JhY2tncm91bmRpbmciKSYmdGhpcy50cmFuc2l0aW9uKCJkb2N1bWVudF9iYWNrZ3JvdW5kZWQiKX1LKGEsYil7YShiPy5ldmVudCl9SShhLGIpe2EoYj8uZXZlbnQpfX07dmFyIEF3YT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuQj1uZXcgeXdhO3RoaXMuRD1uZXcgendhfWluc3RhbGwoLi4uYSl7YS5mb3JFYWNoKGI9Pnt0aGlzLkIuaW5zdGFsbChiKX0pO2EuZm9yRWFjaChiPT57dGhpcy5ELmluc3RhbGwoYil9KX19O3ZhciBPND1jbGFzcyBleHRlbmRzIEF3YXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCk7dGhpcy5pbnN0YWxsKHtkb2N1bWVudF9kaXNwb3NlZDp7Y2FsbGJhY2s6dGhpcy5qfX0pO18ueCgiY29tYmluZV92ZV9ncmFmdHMiKSYmdGhpcy5pbnN0YWxsKHtkb2N1bWVudF9kaXNwb3NlZDp7Y2FsbGJhY2s6dGhpcy5vfX0pO3RoaXMuaW5zdGFsbCh7Zmx1c2hfbG9nczp7Y2FsbGJhY2s6dGhpcy52fX0pO18ueCgid2ViX2xvZ19jZmdfY2VlX2tzIil8fF8uWWoodnVhKX12KCl7Xy5FcCgiZmluYWxQYXlsb2FkIix7Y3NuOl8uaXEoKX0pfWooKXtfLm15KF8uRXkpO18uRnkhPW51bGwmJl8uRnkuZmx1c2goKX1vKCl7Xy5reChfLmh4KCkpfX07dmFyIG40PWNsYXNzIGV4dGVuZHMgXy5Yantjb25zdHJ1Y3RvcihhLC4uLmIpe3N1cGVyKGEsYik7dGhpcy5lcnJvclR5cGU9MTtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxuZXcudGFyZ2V0LnByb3RvdHlwZSl9fTt2YXIgczQ9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWF9YXN5bmMgZmV0Y2goYSxiLGMsZCl7YT13dWEodGhpcyxhLGIpO3RyeXtsZXQgZT1hd2FpdCBmZXRjaChhKTtpZihkJiZlLm9rJiZlLmJvZHkmJnR5cGVvZiBlLmJvZHkuZ2V0UmVhZGVyPT09ImZ1bmN0aW9uIil7bGV0IGY9ZS5jbG9uZSgpLmJvZHkuZ2V0UmVhZGVyKCkse3ZhbHVlOmh9PWF3YWl0IGYucmVhZCgpO2YuY2FuY2VsKCkuY2F0Y2goKCk9Pnt9KTtpZihoJiZoWzBdPT09OTEpe2xldCBrPWUuYm9keS5waXBlVGhyb3VnaChuZXcgVGV4dERlY29kZXJTdHJlYW0pLmdldFJlYWRlcigpO3JldHVybiBvNCh0aGlzLGssbmV3IHoyLFtdLGQpfX1yZXR1cm4gYXdhaXQgdGhpcy5oYW5kbGVSZXNwb25zZShlLGMpfWNhdGNoKGUpe2lmKF8uSXAoZSksYz8uUHYmJmUgaW5zdGFuY2VvZiBuNCYmZS5lcnJvclR5cGU9PT0xKXRocm93IGU7fX1oYW5kbGVSZXNwb25zZShhLGIpe3ZhciBjPWEudGV4dCgpLnRoZW4oZD0+e2lmKGI/Lmd5JiYKYS5vaylyZXR1cm4gXy5YeChiLmd5LGQpO2Q9ZC5yZXBsYWNlKCIpXX0nIiwiIik7aWYoYj8uUHYmJmQpdHJ5e3ZhciBlPUpTT04ucGFyc2UoZCl9Y2F0Y2goZil7dGhyb3cgbmV3IG40KCJKU09OIHBhcnNpbmcgZmFpbGVkIGFmdGVyIGZldGNoIik7fXJldHVybiBlPz9KU09OLnBhcnNlKGQpfSk7YS5yZWRpcmVjdGVkfHxhLm9rP3RoaXMuaiYmdGhpcy5qLnN1Y2Nlc3MoKToodGhpcy5qJiZ0aGlzLmouU0koKSxjPWMudGhlbihkPT57Xy5JcChuZXcgXy5YaigiRXJyb3I6IEFQSSBmZXRjaCBmYWlsZWQiLGEuc3RhdHVzLGEudXJsLGQpKTtyZXR1cm57Li4uZCxlcnJvck1ldGFkYXRhOntzdGF0dXM6YS5zdGF0dXN9fX0pKTtyZXR1cm4gY319O3M0W18uTG5dPVtfLkluKG5ldyBfLlZzKCJORVRXT1JLX1NMSV9UT0tFTiIpKV07dmFyIHA0PWNsYXNze3N0YXRpYyBqYygpe3ZhciBhPV8uc2EoInl0Z2xvYmFsLnN0b3JhZ2VfIik7YXx8KGE9bmV3IHA0LF8ucmEoInl0Z2xvYmFsLnN0b3JhZ2VfIixhKSk7cmV0dXJuIGF9YXN5bmMgZXN0aW1hdGUoKXt2YXIgYT1uYXZpZ2F0b3I7aWYoYS5zdG9yYWdlPy5lc3RpbWF0ZSlyZXR1cm4gYS5zdG9yYWdlLmVzdGltYXRlKCk7aWYoYS53ZWJraXRUZW1wb3JhcnlTdG9yYWdlPy5xdWVyeVVzYWdlQW5kUXVvdGEpcmV0dXJuIHh1YSgpfWFzeW5jIHBlcnNpc3QoKXt2YXIgYT1uYXZpZ2F0b3I7cmV0dXJuIGEuc3RvcmFnZT8ucGVyc2lzdD9hd2FpdCBhLnN0b3JhZ2U/LnBlcnNpc3QoKT8iUEVSU0lTVEVEX1NUQVRFX0dSQU5URUQiOiJQRVJTSVNURURfU1RBVEVfTk9UX0dSQU5URUQiOiJQRVJTSVNURURfU1RBVEVfTk9UX1NVUFBPUlRFRCJ9fTtfLnJhKCJ5dGdsb2JhbC5zdG9yYWdlQ2xhc3NfIixwNCk7dmFyIEFyYT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMuaGFuZGxlRXJyb3I9YTt0aGlzLmo9Yjt0aGlzLm89ITE7c2VsZi5kb2N1bWVudD09PXZvaWQgMHx8c2VsZi5hZGRFdmVudExpc3RlbmVyKCJiZWZvcmV1bmxvYWQiLCgpPT57dGhpcy5vPSEwfSk7dGhpcy52PU1hdGgucmFuZG9tKCk8PS4yfUpiKGEpe3RoaXMuaGFuZGxlRXJyb3IoYSl9bG0oYSxiKXtzd2l0Y2goYSl7Y2FzZSAiSURCX0RBVEFfQ09SUlVQVEVEIjpfLngoImlkYl9kYXRhX2NvcnJ1cHRlZF9raWxsc3dpdGNoIil8fHRoaXMuaigiaWRiRGF0YUNvcnJ1cHRlZCIsYik7YnJlYWs7Y2FzZSAiSURCX1VORVhQRUNURURMWV9DTE9TRUQiOnRoaXMuaigiaWRiVW5leHBlY3RlZGx5Q2xvc2VkIixiKTticmVhaztjYXNlICJJU19TVVBQT1JURURfQ09NUExFVEVEIjpfLngoImlkYl9pc19zdXBwb3J0ZWRfY29tcGxldGVkX2tpbGxzd2l0Y2giKXx8dGhpcy5qKCJpZGJJc1N1cHBvcnRlZENvbXBsZXRlZCIsYik7YnJlYWs7CmNhc2UgIlFVT1RBX0VYQ0VFREVEIjp5dWEodGhpcyxiKTticmVhaztjYXNlICJUUkFOU0FDVElPTl9FTkRFRCI6dGhpcy52JiZNYXRoLnJhbmRvbSgpPD0uMSYmdGhpcy5qKCJpZGJUcmFuc2FjdGlvbkVuZGVkIixiKTticmVhaztjYXNlICJUUkFOU0FDVElPTl9VTkVYUEVDVEVETFlfQUJPUlRFRCI6dGhpcy5qKCJpZGJUcmFuc2FjdGlvbkFib3J0ZWQiLHsuLi5iLGhhc1dpbmRvd1VubG9hZGVkOnRoaXMub30pfX19O3ZhciBBNT0hMTt2YXIgQ3VhPXtGaTp7ZmVlZGJhY2tFbmRwb2ludDp5Myhxd2EpLG1vZGlmeUNoYW5uZWxOb3RpZmljYXRpb25QcmVmZXJlbmNlRW5kcG9pbnQ6eTMoc3dhKSxwbGF5bGlzdEVkaXRFbmRwb2ludDp5Myh0d2EpLHNoYXJlRW50aXR5RW5kcG9pbnQ6eTMoejUpLHN1YnNjcmliZUVuZHBvaW50OnkzKG93YSksdW5kb0ZlZWRiYWNrRW5kcG9pbnQ6eTMocndhKSx1bnN1YnNjcmliZUVuZHBvaW50OnkzKHB3YSksd2ViUGxheWVyU2hhcmVFbnRpdHlTZXJ2aWNlRW5kcG9pbnQ6eTModXdhKX19O3ZhciBGdWE9bmV3IE1hcCxFdWE9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKGEsYixjLGQsZSl7c3VwZXIoKTt0aGlzLmNvbnRhaW5lcj1hO3RoaXMud2ViUGxheWVyQ29udGV4dENvbmZpZz1iO3RoaXMuaj1jO3RoaXMuRWo9ZDt0aGlzLnBsYXllclZhcnM9ZTtKdWEodGhpcyl9bGEoKXt0aGlzLmFwaSYmdGhpcy5hcGkuZGVzdHJveSgpO1dfKHRoaXMuY29udGFpbmVyKTtzdXBlci5sYSgpfX07dmFyIEJ3YT17WyJhcGkuaW52YWxpZHBhcmFtIl06MixhdXRoOjE1MCxbImRybS5hdXRoIl06MTUwLFsiaGVhcnRiZWF0Lm5ldCJdOjE1MCxbImhlYXJ0YmVhdC5zZXJ2ZXJlcnJvciJdOjE1MCxbImhlYXJ0YmVhdC5zdG9wIl06MTUwLFsiaHRtbDUudW5zdXBwb3J0ZWRhZHMiXTo1LFsiZm10Lm5vbmVhdmFpbGFibGUiXTo1LFsiZm10LmRlY29kZSJdOjUsWyJmbXQudW5wbGF5YWJsZSJdOjUsWyJodG1sNS5taXNzaW5nYXBpIl06NSxbImh0bWw1LnVuc3VwcG9ydGVkbGl2ZSJdOjUsWyJkcm0udW5hdmFpbGFibGUiXTo1LFsibXJtLmJsb2NrZWQiXToxNTEsWyJlbWJlZGRlci5pZGVudGl0eS5kZW5pZWQiXToxNTIsWyJlbWJlZGRlci5pZGVudGl0eS5taXNzaW5nLnJlZmVycmVyIl06MTUzfTt2YXIgTHVhPW5ldyBTZXQoImVuZFNlY29uZHMgc3RhcnRTZWNvbmRzIG1lZGlhQ29udGVudFVybCBzdWdnZXN0ZWRRdWFsaXR5IHZpZGVvSWQgcmN0IHJjdG4gcGxheW11dGVkIG11dGVkX2F1dG9wbGF5X2R1cmF0aW9uX21vZGUiLnNwbGl0KCIgIikpO3ZhciBXdWE9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKCl7dmFyIGE9TDQsYj1INDtzdXBlcigpO3RoaXMuYXBpPWE7dGhpcy52PXRoaXMuTT0hMTt0aGlzLlU9W107dGhpcy5aPXt9O3RoaXMuQj1bXTt0aGlzLm89W107dGhpcy5oYT0hMTt0aGlzLnNlc3Npb25JZD10aGlzLmo9bnVsbDt0aGlzLnRhcmdldE9yaWdpbj0iKiI7dGhpcy5nYT1fLngoIndlYl9wbGF5ZXJfc3BsaXRfZXZlbnRfYnVzX2lmcmFtZSIpO3RoaXMuST1fLncoIlBPU1RfTUVTU0FHRV9PUklHSU4iKXx8YCR7ZG9jdW1lbnQubG9jYXRpb24ucHJvdG9jb2x9Ly8ke2RvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lfWA7dGhpcy5EPWM9Pnt0aGlzLm9uTWVzc2FnZShjKX07QjUuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsdGhpcy5EKTtpZihhPV8udygiV0lER0VUX0lEIikpdGhpcy5zZXNzaW9uSWQ9YTtiJiZ0aGlzLkQoYik7QTQodGhpcywib25SZWFkeSIsKCk9Pnt0aGlzLk09ITA7dmFyIGM9dGhpcy5hcGkuZ2V0VmlkZW9EYXRhKCk7CmMuaXNQbGF5YWJsZXx8KHRoaXMuaGE9ITAsdGhpcy5lcnJvckNvZGU9KGM9Yy5lcnJvckNvZGUpP0J3YVtjXXx8NTo1LHRoaXMuc2VuZE1lc3NhZ2UoIm9uRXJyb3IiLE51bWJlcih0aGlzLmVycm9yQ29kZSkpKTtENCh0aGlzKTt0aGlzLmp8fHRoaXMudnx8d2luZG93LnBhcmVudD09PXdpbmRvd3x8IXRoaXMuc2Vzc2lvbklkfHxDNCh0aGlzLHtldmVudDoicmVhZHlUb0xpc3RlbiJ9LHdpbmRvdy5wYXJlbnQpfSk7QTQodGhpcywib25WaWRlb1Byb2dyZXNzIix0aGlzLmZjLmJpbmQodGhpcykpO0E0KHRoaXMsIm9uVm9sdW1lQ2hhbmdlIix0aGlzLlZkLmJpbmQodGhpcykpO0E0KHRoaXMsIm9uQXBpQ2hhbmdlIix0aGlzLm9hLmJpbmQodGhpcykpO0E0KHRoaXMsIm9uUGxheWJhY2tRdWFsaXR5Q2hhbmdlIix0aGlzLk1hLmJpbmQodGhpcykpO0E0KHRoaXMsIm9uUGxheWJhY2tSYXRlQ2hhbmdlIix0aGlzLlFhLmJpbmQodGhpcykpO0E0KHRoaXMsIm9uU3RhdGVDaGFuZ2UiLHRoaXMuRWIuYmluZCh0aGlzKSk7CkE0KHRoaXMsIm9uV2ViZ2xTZXR0aW5nc0NoYW5nZWQiLHRoaXMuRmwuYmluZCh0aGlzKSk7QTQodGhpcywib25DYXB0aW9uc1RyYWNrTGlzdENoYW5nZWQiLHRoaXMueWEuYmluZCh0aGlzKSk7QTQodGhpcywiY2FwdGlvbnNzZXR0aW5nc2NoYW5nZWQiLHRoaXMuRmEuYmluZCh0aGlzKSl9c2VuZE1lc3NhZ2UoYSxiKXthPXtldmVudDphLGluZm86Yj09PXZvaWQgMD9udWxsOmJ9O3RoaXMudj9DNCh0aGlzLGEpOnRoaXMuVS5wdXNoKGEpfUViKGEpe2E9e3BsYXllclN0YXRlOmEsY3VycmVudFRpbWU6dGhpcy5hcGkuZ2V0Q3VycmVudFRpbWUoKSxkdXJhdGlvbjp0aGlzLmFwaS5nZXREdXJhdGlvbigpLHZpZGVvRGF0YTp0aGlzLmFwaS5nZXRWaWRlb0RhdGEoKSx2aWRlb1N0YXJ0Qnl0ZXM6MCx2aWRlb0J5dGVzVG90YWw6dGhpcy5hcGkuZ2V0VmlkZW9CeXRlc1RvdGFsKCksdmlkZW9Mb2FkZWRGcmFjdGlvbjp0aGlzLmFwaS5nZXRWaWRlb0xvYWRlZEZyYWN0aW9uKCkscGxheWJhY2tRdWFsaXR5OnRoaXMuYXBpLmdldFBsYXliYWNrUXVhbGl0eSgpLAphdmFpbGFibGVRdWFsaXR5TGV2ZWxzOnRoaXMuYXBpLmdldEF2YWlsYWJsZVF1YWxpdHlMZXZlbHMoKSxjdXJyZW50VGltZUxhc3RVcGRhdGVkXzpEYXRlLm5vdygpLzFFMyxwbGF5YmFja1JhdGU6dGhpcy5hcGkuZ2V0UGxheWJhY2tSYXRlKCksbWVkaWFSZWZlcmVuY2VUaW1lOnRoaXMuYXBpLmdldE1lZGlhUmVmZXJlbmNlVGltZSgpfTt0aGlzLmFwaS5nZXRWaWRlb1VybCYmKGEudmlkZW9Vcmw9dGhpcy5hcGkuZ2V0VmlkZW9VcmwoKSk7dGhpcy5hcGkuZ2V0VmlkZW9Db250ZW50UmVjdCYmKGEudmlkZW9Db250ZW50UmVjdD10aGlzLmFwaS5nZXRWaWRlb0NvbnRlbnRSZWN0KCkpO3RoaXMuYXBpLmdldFByb2dyZXNzU3RhdGUmJihhLnByb2dyZXNzU3RhdGU9dGhpcy5hcGkuZ2V0UHJvZ3Jlc3NTdGF0ZSgpKTt0aGlzLmFwaS5nZXRQbGF5bGlzdCYmKGEucGxheWxpc3Q9dGhpcy5hcGkuZ2V0UGxheWxpc3QoKSk7dGhpcy5hcGkuZ2V0UGxheWxpc3RJbmRleCYmKGEucGxheWxpc3RJbmRleD0KdGhpcy5hcGkuZ2V0UGxheWxpc3RJbmRleCgpKTtFNCh0aGlzLGEpfU1hKGEpe2E9e3BsYXliYWNrUXVhbGl0eTphfTt0aGlzLmFwaS5nZXRBdmFpbGFibGVRdWFsaXR5TGV2ZWxzJiYoYS5hdmFpbGFibGVRdWFsaXR5TGV2ZWxzPXRoaXMuYXBpLmdldEF2YWlsYWJsZVF1YWxpdHlMZXZlbHMoKSk7dGhpcy5hcGkuZ2V0UHJlZmVycmVkUXVhbGl0eSYmKGEucHJlZmVycmVkUXVhbGl0eT10aGlzLmFwaS5nZXRQcmVmZXJyZWRRdWFsaXR5KCkpO0U0KHRoaXMsYSl9UWEoYSl7RTQodGhpcyx7cGxheWJhY2tSYXRlOmF9KX1vYSgpe3ZhciBhPXRoaXMuYXBpLmdldE9wdGlvbnMoKSxiPXtuYW1lc3BhY2VzOmF9O2ZvcihsZXQgYz0wLGQ9YS5sZW5ndGg7YzxkO2MrKyl7bGV0IGU9YVtjXSxmPXRoaXMuYXBpLmdldE9wdGlvbnMoZSk7YltlXT17b3B0aW9uczpmfTtmb3IobGV0IGg9MCxrPWYubGVuZ3RoO2g8aztoKyspe2xldCBsPWZbaF0sbT10aGlzLmFwaS5nZXRPcHRpb24oZSxsKTtiW2VdW2xdPQptfX10aGlzLnNlbmRNZXNzYWdlKCJhcGlJbmZvRGVsaXZlcnkiLGIpfVZkKCl7RTQodGhpcyx7bXV0ZWQ6dGhpcy5hcGkuaXNNdXRlZCgpLHZvbHVtZTp0aGlzLmFwaS5nZXRWb2x1bWUoKX0pfWZjKGEpe2E9e2N1cnJlbnRUaW1lOmEsdmlkZW9CeXRlc0xvYWRlZDp0aGlzLmFwaS5nZXRWaWRlb0J5dGVzTG9hZGVkKCksdmlkZW9Mb2FkZWRGcmFjdGlvbjp0aGlzLmFwaS5nZXRWaWRlb0xvYWRlZEZyYWN0aW9uKCksY3VycmVudFRpbWVMYXN0VXBkYXRlZF86RGF0ZS5ub3coKS8xRTMscGxheWJhY2tSYXRlOnRoaXMuYXBpLmdldFBsYXliYWNrUmF0ZSgpLG1lZGlhUmVmZXJlbmNlVGltZTp0aGlzLmFwaS5nZXRNZWRpYVJlZmVyZW5jZVRpbWUoKX07dGhpcy5hcGkuZ2V0UHJvZ3Jlc3NTdGF0ZSYmKGEucHJvZ3Jlc3NTdGF0ZT10aGlzLmFwaS5nZXRQcm9ncmVzc1N0YXRlKCkpO0U0KHRoaXMsYSl9RmwoKXtFNCh0aGlzLHtzcGhlcmljYWxQcm9wZXJ0aWVzOnRoaXMuYXBpLmdldFNwaGVyaWNhbFByb3BlcnRpZXMoKX0pfXlhKCl7aWYodGhpcy5hcGkuZ2V0Q2FwdGlvblRyYWNrcyl7bGV0IGE9CntjYXB0aW9uVHJhY2tzOnRoaXMuYXBpLmdldENhcHRpb25UcmFja3MoKX07RTQodGhpcyxhKX19RmEoKXtpZih0aGlzLmFwaS5nZXRTdWJ0aXRsZXNVc2VyU2V0dGluZ3Mpe2xldCBhPXtzdWJ0aXRsZXNVc2VyU2V0dGluZ3M6dGhpcy5hcGkuZ2V0U3VidGl0bGVzVXNlclNldHRpbmdzKCl9O0U0KHRoaXMsYSl9fW9uTWVzc2FnZShhKXtpZighKHRoaXMuSSE9PSIqIiYmYS5vcmlnaW4hPT10aGlzLkl8fHRoaXMuaiYmYS5zb3VyY2UhPT10aGlzLmp8fHR5cGVvZiBhLmRhdGEhPT0ic3RyaW5nIikpe3RyeXt2YXIgYj1KU09OLnBhcnNlKGEuZGF0YSl9Y2F0Y2goZil7cmV0dXJufWlmKGIpc3dpdGNoKGIuZXZlbnQpe2Nhc2UgImxpc3RlbmluZyI6dmFyIGM9YS5zb3VyY2U7YT1hLm9yaWdpbjtiPWIuaWQ7YSE9PSJudWxsIiYmKHRoaXMuST10aGlzLnRhcmdldE9yaWdpbj1hKTt0aGlzLmo9Yzt0aGlzLnNlc3Npb25JZD1iO0Q0KHRoaXMpO2JyZWFrO2Nhc2UgImNvbW1hbmQiOmM9Yi5mdW5jOwp2YXIgZD1iLmFyZ3M7aWYoYz09PSJhZGRFdmVudExpc3RlbmVyIiYmZCliPWRbMF0sYz1hLm9yaWdpbixiPT09Im9uUmVhZHkiP3RoaXMuYXBpLmxvZ0FwaUNhbGwoYCR7Yn0gaW52b2NhdGlvbmAsYyk6Yj09PSJvbkVycm9yIiYmdGhpcy5oYSYmKHRoaXMuYXBpLmxvZ0FwaUNhbGwoYCR7Yn0gaW52b2NhdGlvbmAsYyx0aGlzLmVycm9yQ29kZSksdGhpcy5lcnJvckNvZGU9dm9pZCAwKSx0aGlzLmFwaS5sb2dBcGlDYWxsKGAke2J9IHJlZ2lzdHJhdGlvbmAsYyksdGhpcy5aW2JdfHxiPT09Im9uUmVhZHkifHwoYT1NdWEodGhpcyxiLGMpLHRoaXMuby5wdXNoKHtldmVudFR5cGU6YixsaXN0ZW5lcjphLG9yaWdpbjpjfSksdGhpcy5nYT90aGlzLmFwaS5oYW5kbGVFeHRlcm5hbENhbGwoImFkZEV2ZW50TGlzdGVuZXIiLFtiLGFdLGMpOnRoaXMuYXBpLmFkZEV2ZW50TGlzdGVuZXIoYixhKSx0aGlzLlpbYl09ITApO2Vsc2UgaWYoYj1jLGM9ZCxhPWEub3JpZ2luLHRoaXMuYXBpLmlzRXh0ZXJuYWxNZXRob2RBdmFpbGFibGUoYiwKYSkpe2M9Y3x8W107aWYoYy5sZW5ndGg+MCYmeDQoYikpe3ZhciBlPWM7aWYoXy5BYShlWzBdKSYmIUFycmF5LmlzQXJyYXkoZVswXSkpZD1lWzBdO2Vsc2Ugc3dpdGNoKGQ9e30sYil7Y2FzZSAibG9hZFZpZGVvQnlJZCI6Y2FzZSAiY3VlVmlkZW9CeUlkIjpkPXk0KGVbMF0sZVsxXSE9PXZvaWQgMD9OdW1iZXIoZVsxXSk6dm9pZCAwLGVbMl0pO2JyZWFrO2Nhc2UgImxvYWRWaWRlb0J5VXJsIjpjYXNlICJjdWVWaWRlb0J5VXJsIjpkPWVbMF07dHlwZW9mIGQ9PT0ic3RyaW5nIiYmKGQ9e21lZGlhQ29udGVudFVybDpkLHN0YXJ0U2Vjb25kczplWzFdIT09dm9pZCAwP051bWJlcihlWzFdKTp2b2lkIDAsc3VnZ2VzdGVkUXVhbGl0eTplWzJdfSk7Yjp7aWYoKGU9ZC5tZWRpYUNvbnRlbnRVcmwpJiYoZT0vXC8oW3ZlXXxlbWJlZClcLyhbXiM/XSspLy5leGVjKGUpKSYmZVsyXSl7ZT1lWzJdO2JyZWFrIGJ9ZT1udWxsfWQudmlkZW9JZD1lO2Q9eTQoZCk7YnJlYWs7Y2FzZSAibG9hZFBsYXlsaXN0IjpjYXNlICJjdWVQbGF5bGlzdCI6ZD0KejQoZVswXSxlWzFdLGVbMl0sZVszXSl9Yy5sZW5ndGg9MTtjWzBdPWR9dGhpcy5hcGkuaGFuZGxlRXh0ZXJuYWxDYWxsKGIsYyxhKTt4NChiKSYmRTQodGhpcyxCNCh0aGlzKSl9fX19bGEoKXtzdXBlci5sYSgpO0I1LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLHRoaXMuRCk7Zm9yKHZhciBhPTA7YTx0aGlzLkIubGVuZ3RoO2ErKyl7dmFyIGI9dGhpcy5CW2FdO3RoaXMuYXBpLnJlbW92ZUV2ZW50TGlzdGVuZXIoYi5ldmVudFR5cGUsYi5saXN0ZW5lcil9dGhpcy5CPVtdO2ZvcihhPTA7YTx0aGlzLm8ubGVuZ3RoO2ErKyliPXRoaXMub1thXSx0aGlzLmdhP3RoaXMuYXBpLmhhbmRsZUV4dGVybmFsQ2FsbCgicmVtb3ZlRXZlbnRMaXN0ZW5lciIsW2IuZXZlbnRUeXBlLGIubGlzdGVuZXJdLGIub3JpZ2luKTp0aGlzLmFwaS5yZW1vdmVFdmVudExpc3RlbmVyKGIuZXZlbnRUeXBlLGIubGlzdGVuZXIpO3RoaXMubz1bXX19LEI1PXdpbmRvdzt2YXIgWHVhPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhLGIpe3ZhciBjPUw0O3N1cGVyKCk7dGhpcy5hcGk9Yzt0aGlzLmlkPWE7dGhpcy5vcmlnaW49Yjt0aGlzLmo9e307dGhpcy52PV8ueCgid2ViX3BsYXllcl9zcGxpdF9ldmVudF9idXNfaWZyYW1lIik7dGhpcy5vPWQ9Pnt0aGlzLm9uTWVzc2FnZShkKX07QzUuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsdGhpcy5vKTtGNCh0aGlzLCJSRUNFSVZJTkciKX1hZGRMaXN0ZW5lcihhLGIpe2lmKCEoYSBpbiB0aGlzLmopKXt2YXIgYz10aGlzLkIuYmluZCh0aGlzLGEpO3RoaXMualthXT1jO3RoaXMuYWRkRXZlbnRMaXN0ZW5lcihhLGMsYil9fUIoYSxiKXt0aGlzLmlhKCl8fEY0KHRoaXMsYSxPdWEoYSxiKSl9cmVtb3ZlTGlzdGVuZXIoYSxiKXthIGluIHRoaXMuaiYmKHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihhLHRoaXMualthXSxiKSxkZWxldGUgdGhpcy5qW2FdKX1hZGRFdmVudExpc3RlbmVyKGEsYixjKXt0aGlzLnY/CmE9PT0ib25SZWFkeSI/dGhpcy5hcGkuYWRkRXZlbnRMaXN0ZW5lcihhLGIpOnRoaXMuYXBpLmhhbmRsZUV4dGVybmFsQ2FsbCgiYWRkRXZlbnRMaXN0ZW5lciIsW2EsYl0sY3x8bnVsbCk6dGhpcy5hcGkuYWRkRXZlbnRMaXN0ZW5lcihhLGIpfXJlbW92ZUV2ZW50TGlzdGVuZXIoYSxiLGMpe3RoaXMudj9hPT09Im9uUmVhZHkiP3RoaXMuYXBpLnJlbW92ZUV2ZW50TGlzdGVuZXIoYSxiKTp0aGlzLmFwaS5oYW5kbGVFeHRlcm5hbENhbGwoInJlbW92ZUV2ZW50TGlzdGVuZXIiLFthLGJdLGN8fG51bGwpOnRoaXMuYXBpLnJlbW92ZUV2ZW50TGlzdGVuZXIoYSxiKX1vbk1lc3NhZ2UoYSl7aWYoYS5vcmlnaW49PT10aGlzLm9yaWdpbil7dmFyIGI9YS5kYXRhO2lmKHR5cGVvZiBiPT09InN0cmluZyIpe3RyeXtiPUpTT04ucGFyc2UoYil9Y2F0Y2goZSl7cmV0dXJufWlmKGIuY29tbWFuZCl7dmFyIGM9Yi5jb21tYW5kO2I9Yi5kYXRhO2E9YS5vcmlnaW47aWYoIXRoaXMuaWEoKSl7dmFyIGQ9CmJ8fHt9O3N3aXRjaChjKXtjYXNlICJhZGRFdmVudExpc3RlbmVyIjp0eXBlb2YgZC5ldmVudD09PSJzdHJpbmciJiZ0aGlzLmFkZExpc3RlbmVyKGQuZXZlbnQsYSk7YnJlYWs7Y2FzZSAicmVtb3ZlRXZlbnRMaXN0ZW5lciI6dHlwZW9mIGQuZXZlbnQ9PT0ic3RyaW5nIiYmdGhpcy5yZW1vdmVMaXN0ZW5lcihkLmV2ZW50LGEpO2JyZWFrO2RlZmF1bHQ6dGhpcy5hcGkuaXNSZWFkeSgpJiZ0aGlzLmFwaS5pc0V4dGVybmFsTWV0aG9kQXZhaWxhYmxlKGMsYXx8bnVsbCkmJihiPVB1YShjLGJ8fHt9KSxiPXRoaXMuYXBpLmhhbmRsZUV4dGVybmFsQ2FsbChjLGIsYXx8bnVsbCksKGI9UXVhKGMsYikpJiZGNCh0aGlzLGMsYikpfX19fX19bGEoKXtDNS5yZW1vdmVFdmVudExpc3RlbmVyKCJtZXNzYWdlIix0aGlzLm8pO2ZvcihsZXQgYSBpbiB0aGlzLmopdGhpcy5qLmhhc093blByb3BlcnR5KGEpJiZ0aGlzLnJlbW92ZUxpc3RlbmVyKGEpO3N1cGVyLmxhKCl9fSxDNT13aW5kb3csTnVhPQp3aW5kb3cucGFyZW50O3ZhciBHND1uZXcgeHdhO3ZhciBMND1udWxsLE40PW51bGwsSjQ9KCk9Pnt9LEg0O3ZhciBUND0hMTtfLmZ0LnRoZW4oKCk9PntfLkFxKCJlcF9pbml0X2N1cyIpO2lmKCFBNSl7QTU9ITA7dmFyIGE9Xy54KCJlbmFibGVfd2l6X2NvbnRleHRfcGVyX2NvbXBvbmVudCIpfHwhMTtPYmplY3QuYXNzaWduKF8uS3Use1JpOiEwLEdwOmEsRnA6YSxHdjpfLngoIndlYl9pbmNsdWRlX2Nvd190cmFjaW5nIiksaGFuZGxlRXJyb3I6enVhfSk7QnVhKCk7Xy53dj1mc2E7Xy54dj1nc2F9YnZhKCk7Xy5BcSgiZXBfaW5pdF9lcHMiKTtfLnJhKCJ5dC5zZXRDb25maWciLF8uUWkpO18ucmEoInl0LmNvbmZpZy5zZXQiLF8uUWkpO18ucmEoInl0LnNldE1zZyIsYjEpO18ucmEoInl0Lm1zZ3Muc2V0IixiMSk7Xy5yYSgieXQubG9nZ2luZy5lcnJvcnMubG9nIixfLkdwKTtfLnJhKCJ3cml0ZUVtYmVkIixVdWEpO18ucmEoInl0LmFidXNlLnBsYXllci5ib3RndWFyZEluaXRpYWxpemVkIixfLnNhKCJ5dC5hYnVzZS5wbGF5ZXIuYm90Z3VhcmRJbml0aWFsaXplZCIpfHxSdWEpO18ucmEoInl0LmFidXNlLnBsYXllci5pbnZva2VCb3RndWFyZCIsCl8uc2EoInl0LmFidXNlLnBsYXllci5pbnZva2VCb3RndWFyZCIpfHxTdWEpO18ucmEoInl0LmFidXNlLmRjbGtzdGF0dXMuY2hlY2tEY2xrU3RhdHVzIixfLnNhKCJ5dC5hYnVzZS5kY2xrc3RhdHVzLmNoZWNrRGNsa1N0YXR1cyIpfHxhMyk7Xy5yYSgieXQucGxheWVyLmV4cG9ydHMubmF2aWdhdGUiLF8uc2EoInl0LnBsYXllci5leHBvcnRzLm5hdmlnYXRlIil8fEJ0YSk7Xy5yYSgieXQudXRpbC5hY3Rpdml0eS5pbml0IixfLnNhKCJ5dC51dGlsLmFjdGl2aXR5LmluaXQiKXx8bDApO18ucmEoInl0LnV0aWwuYWN0aXZpdHkuZ2V0VGltZVNpbmNlQWN0aXZlIixfLnNhKCJ5dC51dGlsLmFjdGl2aXR5LmdldFRpbWVTaW5jZUFjdGl2ZSIpfHxfLkJuKTtfLnJhKCJ5dC51dGlsLmFjdGl2aXR5LnNldFRpbWVzdGFtcCIsXy5zYSgieXQudXRpbC5hY3Rpdml0eS5zZXRUaW1lc3RhbXAiKXx8ajApO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixfLlZpKFp1YSkpO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwYWdlc2hvdyIsCl8uVmkoJHVhKSk7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInBhZ2VoaWRlIixfLlZpKGF2YSkpO2d1YSgpO1R1YSgpO18uQXEoImVwX2luaXRfZXBlIik7SjQ9Xy5ENTtfLkFxKCJlcF9pbml0X2N1ZSIpfSk7Xy5ENT0oKT0+e307Cl8uRDU9ZnVuY3Rpb24oYSl7KDAsXy5laCkoInI3OERyYiIpLnRoZW4oKCk9PnsoMCxfLnp5KShhKX0pfTsKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KfSkuY2FsbCh0aGlzLHRoaXMuZGVmYXVsdF9iYXNlKTsKLy8gR29vZ2xlIEluYy4K"}},"time_used":36,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":18,"receive":18,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/startedicon3.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.552Z","timestamp":1785158432552,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/startedicon3.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=Vykk3OXzz%2BhyZ6RvPe8Eke8Uwat501jOGHfy9IEft11fUv%2BH%2Fufn%2B7pV33Giz1etUU1c2%2FMn4pUnt1wnyLXMUyTzc%2Fyk8lQCf8ExQLOp0M8V3LnNEwM9gqdHIRwZrM0ofDo8Pg%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b7c7e56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 10722\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]}],"data":{"size":10722,"size_decoded":11491,"mime_type":"image/png","magic":"PNG image data, 128 x 128, 8-bit/color RGBA, non-interlaced","md5":"c0ffd60998663408c44f90aca4926985","sha1":"10f9055196ed733401777b79e6390175b2edceec","sha256":"443a85fa1038b94e598ba2df8b6d9ad32cbe2cc9fefb9e0b2b3c60b00cb4bc89","sha512":"1196c0ac85c7245bb481546f81dcb4f5005717bcd0998f390c23ae8bf45d2fba76bdb3b1ffd0bdd2202051d0a4ae9b873629d830af3c9c246f56116150d2be98","ssdeep":"192:0oKpiMNqtNzg3qppd58TJ2UQ2nlK/qFvbWgOVVhmglju1bk8WPhhDB/BZ:0/pHqtNzg6fITnhRGlju1bzwhh9","tlshash":"1e22b01543502c4a9d5f7b24accdd4078deb7d70d580b3eda7c4d41aa8a12f16e14afd","first_seen":"2024-09-19T20:45:30.97547Z","last_seen":"2026-07-27T13:21:39.077567Z","times_seen":16,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QjMyREZCOTM4NUQ1MTFFOTlBQURDNEI0OTg0ODg5NzUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QjMyREZCOTQ4NUQ1MTFFOTlBQURDNEI0OTg0ODg5NzUiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpCMzJERkI5MTg1RDUxMUU5OUFBREM0QjQ5ODQ4ODk3NSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpCMzJERkI5Mjg1RDUxMUU5OUFBREM0QjQ5ODQ4ODk3NSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pgvupn8AACZWSURBVHja7B0JXFTF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"}},"time_used":15,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":15,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/wow.js","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.509Z","timestamp":1785158432509,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/wow.js HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\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\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: application/javascript\r\nserver-timing: cfExtPri\r\npriority: u=3,i=?0\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=03xguEfqnMYK49r8yQYm963tuQn7%2FKZC5p6lpWVxvwZfY7m6udrB82yAxAY%2BsmM8GqKNDWnI1LOzxUNHUaq3VetQoU65rRtAkMsVqT4E35VRVwahRGcYiRl7WKhSSbU7s%2FuRqA%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12b3c6d56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 3392\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"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":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":15553,"size_decoded":4215,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text","md5":"6d1de87eaba3bea986f91e344de80b50","sha1":"ea0576e2063113209103d6439b1d1206980a1e78","sha256":"32e37f075fd1dfd373fe3aaf5f5d56b3902fbcb3ad5b71c72908efa01320c286","sha512":"0a7f0bc6745be84b1763114b05c74379bd42106fa647c55f74dad1f2e9f800eaa4bea3a7447cce8b3f943a6921d3f2f388688559018fbc98bdda2d686c4f5780","ssdeep":"192:+HctamoFfk612qOfHUhafkasjlfri6mTOvN8HzIqfe2omJ0yaMRaUQPyPCrGJ0Iy:cRZmU+GeKrAq6aItnebXh","tlshash":"1162cc893eeb20609717717e8f4f8105b638154b1159dd08beac4be45fa093897fafb8","first_seen":"2023-03-07T12:06:46Z","last_seen":"2026-08-15T17:50:41.589635Z","times_seen":1121,"resource_available":true,"data":"KGZ1bmN0aW9uKCkgewogIHZhciBNdXRhdGlvbk9ic2VydmVyLCBVdGlsLCBXZWFrTWFwLCBnZXRDb21wdXRlZFN0eWxlLCBnZXRDb21wdXRlZFN0eWxlUlgsCiAgICBiaW5kID0gZnVuY3Rpb24oZm4sIG1lKXsgcmV0dXJuIGZ1bmN0aW9uKCl7IHJldHVybiBmbi5hcHBseShtZSwgYXJndW1lbnRzKTsgfTsgfSwKICAgIGluZGV4T2YgPSBbXS5pbmRleE9mIHx8IGZ1bmN0aW9uKGl0ZW0pIHsgZm9yICh2YXIgaSA9IDAsIGwgPSB0aGlzLmxlbmd0aDsgaSA8IGw7IGkrKykgeyBpZiAoaSBpbiB0aGlzICYmIHRoaXNbaV0gPT09IGl0ZW0pIHJldHVybiBpOyB9IHJldHVybiAtMTsgfTsKCiAgVXRpbCA9IChmdW5jdGlvbigpIHsKICAgIGZ1bmN0aW9uIFV0aWwoKSB7fQoKICAgIFV0aWwucHJvdG90eXBlLmV4dGVuZCA9IGZ1bmN0aW9uKGN1c3RvbSwgZGVmYXVsdHMpIHsKICAgICAgdmFyIGtleSwgdmFsdWU7CiAgICAgIGZvciAoa2V5IGluIGRlZmF1bHRzKSB7CiAgICAgICAgdmFsdWUgPSBkZWZhdWx0c1trZXldOwogICAgICAgIGlmIChjdXN0b21ba2V5XSA9PSBudWxsKSB7CiAgICAgICAgICBjdXN0b21ba2V5XSA9IHZhbHVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gY3VzdG9tOwogICAgfTsKCiAgICBVdGlsLnByb3RvdHlwZS5pc01vYmlsZSA9IGZ1bmN0aW9uKGFnZW50KSB7CiAgICAgIHJldHVybiAvQW5kcm9pZHx3ZWJPU3xpUGhvbmV8aVBhZHxpUG9kfEJsYWNrQmVycnl8SUVNb2JpbGV8T3BlcmEgTWluaS9pLnRlc3QoYWdlbnQpOwogICAgfTsKCiAgICBVdGlsLnByb3RvdHlwZS5jcmVhdGVFdmVudCA9IGZ1bmN0aW9uKGV2ZW50LCBidWJibGUsIGNhbmNlbCwgZGV0YWlsKSB7CiAgICAgIHZhciBjdXN0b21FdmVudDsKICAgICAgaWYgKGJ1YmJsZSA9PSBudWxsKSB7CiAgICAgICAgYnViYmxlID0gZmFsc2U7CiAgICAgIH0KICAgICAgaWYgKGNhbmNlbCA9PSBudWxsKSB7CiAgICAgICAgY2FuY2VsID0gZmFsc2U7CiAgICAgIH0KICAgICAgaWYgKGRldGFpbCA9PSBudWxsKSB7CiAgICAgICAgZGV0YWlsID0gbnVsbDsKICAgICAgfQogICAgICBpZiAoZG9jdW1lbnQuY3JlYXRlRXZlbnQgIT0gbnVsbCkgewogICAgICAgIGN1c3RvbUV2ZW50ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0N1c3RvbUV2ZW50Jyk7CiAgICAgICAgY3VzdG9tRXZlbnQuaW5pdEN1c3RvbUV2ZW50KGV2ZW50LCBidWJibGUsIGNhbmNlbCwgZGV0YWlsKTsKICAgICAgfSBlbHNlIGlmIChkb2N1bWVudC5jcmVhdGVFdmVudE9iamVjdCAhPSBudWxsKSB7CiAgICAgICAgY3VzdG9tRXZlbnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudE9iamVjdCgpOwogICAgICAgIGN1c3RvbUV2ZW50LmV2ZW50VHlwZSA9IGV2ZW50OwogICAgICB9IGVsc2UgewogICAgICAgIGN1c3RvbUV2ZW50LmV2ZW50TmFtZSA9IGV2ZW50OwogICAgICB9CiAgICAgIHJldHVybiBjdXN0b21FdmVudDsKICAgIH07CgogICAgVXRpbC5wcm90b3R5cGUuZW1pdEV2ZW50ID0gZnVuY3Rpb24oZWxlbSwgZXZlbnQpIHsKICAgICAgaWYgKGVsZW0uZGlzcGF0Y2hFdmVudCAhPSBudWxsKSB7CiAgICAgICAgcmV0dXJuIGVsZW0uZGlzcGF0Y2hFdmVudChldmVudCk7CiAgICAgIH0gZWxzZSBpZiAoZXZlbnQgaW4gKGVsZW0gIT0gbnVsbCkpIHsKICAgICAgICByZXR1cm4gZWxlbVtldmVudF0oKTsKICAgICAgfSBlbHNlIGlmICgoIm9uIiArIGV2ZW50KSBpbiAoZWxlbSAhPSBudWxsKSkgewogICAgICAgIHJldHVybiBlbGVtWyJvbiIgKyBldmVudF0oKTsKICAgICAgfQogICAgfTsKCiAgICBVdGlsLnByb3RvdHlwZS5hZGRFdmVudCA9IGZ1bmN0aW9uKGVsZW0sIGV2ZW50LCBmbikgewogICAgICBpZiAoZWxlbS5hZGRFdmVudExpc3RlbmVyICE9IG51bGwpIHsKICAgICAgICByZXR1cm4gZWxlbS5hZGRFdmVudExpc3RlbmVyKGV2ZW50LCBmbiwgZmFsc2UpOwogICAgICB9IGVsc2UgaWYgKGVsZW0uYXR0YWNoRXZlbnQgIT0gbnVsbCkgewogICAgICAgIHJldHVybiBlbGVtLmF0dGFjaEV2ZW50KCJvbiIgKyBldmVudCwgZm4pOwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiBlbGVtW2V2ZW50XSA9IGZuOwogICAgICB9CiAgICB9OwoKICAgIFV0aWwucHJvdG90eXBlLnJlbW92ZUV2ZW50ID0gZnVuY3Rpb24oZWxlbSwgZXZlbnQsIGZuKSB7CiAgICAgIGlmIChlbGVtLnJlbW92ZUV2ZW50TGlzdGVuZXIgIT0gbnVsbCkgewogICAgICAgIHJldHVybiBlbGVtLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnQsIGZuLCBmYWxzZSk7CiAgICAgIH0gZWxzZSBpZiAoZWxlbS5kZXRhY2hFdmVudCAhPSBudWxsKSB7CiAgICAgICAgcmV0dXJuIGVsZW0uZGV0YWNoRXZlbnQoIm9uIiArIGV2ZW50LCBmbik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIGRlbGV0ZSBlbGVtW2V2ZW50XTsKICAgICAgfQogICAgfTsKCiAgICBVdGlsLnByb3RvdHlwZS5pbm5lckhlaWdodCA9IGZ1bmN0aW9uKCkgewogICAgICBpZiAoJ2lubmVySGVpZ2h0JyBpbiB3aW5kb3cpIHsKICAgICAgICByZXR1cm4gd2luZG93LmlubmVySGVpZ2h0OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0OwogICAgICB9CiAgICB9OwoKICAgIHJldHVybiBVdGlsOwoKICB9KSgpOwoKICBXZWFrTWFwID0gdGhpcy5XZWFrTWFwIHx8IHRoaXMuTW96V2Vha01hcCB8fCAoV2Vha01hcCA9IChmdW5jdGlvbigpIHsKICAgIGZ1bmN0aW9uIFdlYWtNYXAoKSB7CiAgICAgIHRoaXMua2V5cyA9IFtdOwogICAgICB0aGlzLnZhbHVlcyA9IFtdOwogICAgfQoKICAgIFdlYWtNYXAucHJvdG90eXBlLmdldCA9IGZ1bmN0aW9uKGtleSkgewogICAgICB2YXIgaSwgaXRlbSwgaiwgbGVuLCByZWY7CiAgICAgIHJlZiA9IHRoaXMua2V5czsKICAgICAgZm9yIChpID0gaiA9IDAsIGxlbiA9IHJlZi5sZW5ndGg7IGogPCBsZW47IGkgPSArK2opIHsKICAgICAgICBpdGVtID0gcmVmW2ldOwogICAgICAgIGlmIChpdGVtID09PSBrZXkpIHsKICAgICAgICAgIHJldHVybiB0aGlzLnZhbHVlc1tpXTsKICAgICAgICB9CiAgICAgIH0KICAgIH07CgogICAgV2Vha01hcC5wcm90b3R5cGUuc2V0ID0gZnVuY3Rpb24oa2V5LCB2YWx1ZSkgewogICAgICB2YXIgaSwgaXRlbSwgaiwgbGVuLCByZWY7CiAgICAgIHJlZiA9IHRoaXMua2V5czsKICAgICAgZm9yIChpID0gaiA9IDAsIGxlbiA9IHJlZi5sZW5ndGg7IGogPCBsZW47IGkgPSArK2opIHsKICAgICAgICBpdGVtID0gcmVmW2ldOwogICAgICAgIGlmIChpdGVtID09PSBrZXkpIHsKICAgICAgICAgIHRoaXMudmFsdWVzW2ldID0gdmFsdWU7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICB9CiAgICAgIHRoaXMua2V5cy5wdXNoKGtleSk7CiAgICAgIHJldHVybiB0aGlzLnZhbHVlcy5wdXNoKHZhbHVlKTsKICAgIH07CgogICAgcmV0dXJuIFdlYWtNYXA7CgogIH0pKCkpOwoKICBNdXRhdGlvbk9ic2VydmVyID0gdGhpcy5NdXRhdGlvbk9ic2VydmVyIHx8IHRoaXMuV2Via2l0TXV0YXRpb25PYnNlcnZlciB8fCB0aGlzLk1vek11dGF0aW9uT2JzZXJ2ZXIgfHwgKE11dGF0aW9uT2JzZXJ2ZXIgPSAoZnVuY3Rpb24oKSB7CiAgICBmdW5jdGlvbiBNdXRhdGlvbk9ic2VydmVyKCkgewogICAgICBpZiAodHlwZW9mIGNvbnNvbGUgIT09ICJ1bmRlZmluZWQiICYmIGNvbnNvbGUgIT09IG51bGwpIHsKICAgICAgICBjb25zb2xlLndhcm4oJ011dGF0aW9uT2JzZXJ2ZXIgaXMgbm90IHN1cHBvcnRlZCBieSB5b3VyIGJyb3dzZXIuJyk7CiAgICAgIH0KICAgICAgaWYgKHR5cGVvZiBjb25zb2xlICE9PSAidW5kZWZpbmVkIiAmJiBjb25zb2xlICE9PSBudWxsKSB7CiAgICAgICAgY29uc29sZS53YXJuKCdXT1cuanMgY2Fubm90IGRldGVjdCBkb20gbXV0YXRpb25zLCBwbGVhc2UgY2FsbCAuc3luYygpIGFmdGVyIGxvYWRpbmcgbmV3IGNvbnRlbnQuJyk7CiAgICAgIH0KICAgIH0KCiAgICBNdXRhdGlvbk9ic2VydmVyLm5vdFN1cHBvcnRlZCA9IHRydWU7CgogICAgTXV0YXRpb25PYnNlcnZlci5wcm90b3R5cGUub2JzZXJ2ZSA9IGZ1bmN0aW9uKCkge307CgogICAgcmV0dXJuIE11dGF0aW9uT2JzZXJ2ZXI7CgogIH0pKCkpOwoKICBnZXRDb21wdXRlZFN0eWxlID0gdGhpcy5nZXRDb21wdXRlZFN0eWxlIHx8IGZ1bmN0aW9uKGVsLCBwc2V1ZG8pIHsKICAgIHRoaXMuZ2V0UHJvcGVydHlWYWx1ZSA9IGZ1bmN0aW9uKHByb3ApIHsKICAgICAgdmFyIHJlZjsKICAgICAgaWYgKHByb3AgPT09ICdmbG9hdCcpIHsKICAgICAgICBwcm9wID0gJ3N0eWxlRmxvYXQnOwogICAgICB9CiAgICAgIGlmIChnZXRDb21wdXRlZFN0eWxlUlgudGVzdChwcm9wKSkgewogICAgICAgIHByb3AucmVwbGFjZShnZXRDb21wdXRlZFN0eWxlUlgsIGZ1bmN0aW9uKF8sIF9jaGFyKSB7CiAgICAgICAgICByZXR1cm4gX2NoYXIudG9VcHBlckNhc2UoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgICByZXR1cm4gKChyZWYgPSBlbC5jdXJyZW50U3R5bGUpICE9IG51bGwgPyByZWZbcHJvcF0gOiB2b2lkIDApIHx8IG51bGw7CiAgICB9OwogICAgcmV0dXJuIHRoaXM7CiAgfTsKCiAgZ2V0Q29tcHV0ZWRTdHlsZVJYID0gLyhcLShbYS16XSl7MX0pL2c7CgogIHRoaXMuV09XID0gKGZ1bmN0aW9uKCkgewogICAgV09XLnByb3RvdHlwZS5kZWZhdWx0cyA9IHsKICAgICAgYm94Q2xhc3M6ICd3b3cnLAogICAgICBhbmltYXRlQ2xhc3M6ICdhbmltYXRlZCcsCiAgICAgIG9mZnNldDogMCwKICAgICAgbW9iaWxlOiB0cnVlLAogICAgICBsaXZlOiB0cnVlLAogICAgICBjYWxsYmFjazogbnVsbCwKICAgICAgc2Nyb2xsQ29udGFpbmVyOiBudWxsCiAgICB9OwoKICAgIGZ1bmN0aW9uIFdPVyhvcHRpb25zKSB7CiAgICAgIGlmIChvcHRpb25zID09IG51bGwpIHsKICAgICAgICBvcHRpb25zID0ge307CiAgICAgIH0KICAgICAgdGhpcy5zY3JvbGxDYWxsYmFjayA9IGJpbmQodGhpcy5zY3JvbGxDYWxsYmFjaywgdGhpcyk7CiAgICAgIHRoaXMuc2Nyb2xsSGFuZGxlciA9IGJpbmQodGhpcy5zY3JvbGxIYW5kbGVyLCB0aGlzKTsKICAgICAgdGhpcy5yZXNldEFuaW1hdGlvbiA9IGJpbmQodGhpcy5yZXNldEFuaW1hdGlvbiwgdGhpcyk7CiAgICAgIHRoaXMuc3RhcnQgPSBiaW5kKHRoaXMuc3RhcnQsIHRoaXMpOwogICAgICB0aGlzLnNjcm9sbGVkID0gdHJ1ZTsKICAgICAgdGhpcy5jb25maWcgPSB0aGlzLnV0aWwoKS5leHRlbmQob3B0aW9ucywgdGhpcy5kZWZhdWx0cyk7CiAgICAgIGlmIChvcHRpb25zLnNjcm9sbENvbnRhaW5lciAhPSBudWxsKSB7CiAgICAgICAgdGhpcy5jb25maWcuc2Nyb2xsQ29udGFpbmVyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihvcHRpb25zLnNjcm9sbENvbnRhaW5lcik7CiAgICAgIH0KICAgICAgdGhpcy5hbmltYXRpb25OYW1lQ2FjaGUgPSBuZXcgV2Vha01hcCgpOwogICAgICB0aGlzLndvd0V2ZW50ID0gdGhpcy51dGlsKCkuY3JlYXRlRXZlbnQodGhpcy5jb25maWcuYm94Q2xhc3MpOwogICAgfQoKICAgIFdPVy5wcm90b3R5cGUuaW5pdCA9IGZ1bmN0aW9uKCkgewogICAgICB2YXIgcmVmOwogICAgICB0aGlzLmVsZW1lbnQgPSB3aW5kb3cuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50OwogICAgICBpZiAoKHJlZiA9IGRvY3VtZW50LnJlYWR5U3RhdGUpID09PSAiaW50ZXJhY3RpdmUiIHx8IHJlZiA9PT0gImNvbXBsZXRlIikgewogICAgICAgIHRoaXMuc3RhcnQoKTsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLnV0aWwoKS5hZGRFdmVudChkb2N1bWVudCwgJ0RPTUNvbnRlbnRMb2FkZWQnLCB0aGlzLnN0YXJ0KTsKICAgICAgfQogICAgICByZXR1cm4gdGhpcy5maW5pc2hlZCA9IFtdOwogICAgfTsKCiAgICBXT1cucHJvdG90eXBlLnN0YXJ0ID0gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBib3gsIGosIGxlbiwgcmVmOwogICAgICB0aGlzLnN0b3BwZWQgPSBmYWxzZTsKICAgICAgdGhpcy5ib3hlcyA9IChmdW5jdGlvbigpIHsKICAgICAgICB2YXIgaiwgbGVuLCByZWYsIHJlc3VsdHM7CiAgICAgICAgcmVmID0gdGhpcy5lbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi4iICsgdGhpcy5jb25maWcuYm94Q2xhc3MpOwogICAgICAgIHJlc3VsdHMgPSBbXTsKICAgICAgICBmb3IgKGogPSAwLCBsZW4gPSByZWYubGVuZ3RoOyBqIDwgbGVuOyBqKyspIHsKICAgICAgICAgIGJveCA9IHJlZltqXTsKICAgICAgICAgIHJlc3VsdHMucHVzaChib3gpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0czsKICAgICAgfSkuY2FsbCh0aGlzKTsKICAgICAgdGhpcy5hbGwgPSAoZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGosIGxlbiwgcmVmLCByZXN1bHRzOwogICAgICAgIHJlZiA9IHRoaXMuYm94ZXM7CiAgICAgICAgcmVzdWx0cyA9IFtdOwogICAgICAgIGZvciAoaiA9IDAsIGxlbiA9IHJlZi5sZW5ndGg7IGogPCBsZW47IGorKykgewogICAgICAgICAgYm94ID0gcmVmW2pdOwogICAgICAgICAgcmVzdWx0cy5wdXNoKGJveCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXN1bHRzOwogICAgICB9KS5jYWxsKHRoaXMpOwogICAgICBpZiAodGhpcy5ib3hlcy5sZW5ndGgpIHsKICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCgpKSB7CiAgICAgICAgICB0aGlzLnJlc2V0U3R5bGUoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmVmID0gdGhpcy5ib3hlczsKICAgICAgICAgIGZvciAoaiA9IDAsIGxlbiA9IHJlZi5sZW5ndGg7IGogPCBsZW47IGorKykgewogICAgICAgICAgICBib3ggPSByZWZbal07CiAgICAgICAgICAgIHRoaXMuYXBwbHlTdHlsZShib3gsIHRydWUpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICBpZiAoIXRoaXMuZGlzYWJsZWQoKSkgewogICAgICAgIHRoaXMudXRpbCgpLmFkZEV2ZW50KHRoaXMuY29uZmlnLnNjcm9sbENvbnRhaW5lciB8fCB3aW5kb3csICdzY3JvbGwnLCB0aGlzLnNjcm9sbEhhbmRsZXIpOwogICAgICAgIHRoaXMudXRpbCgpLmFkZEV2ZW50KHdpbmRvdywgJ3Jlc2l6ZScsIHRoaXMuc2Nyb2xsSGFuZGxlcik7CiAgICAgICAgdGhpcy5pbnRlcnZhbCA9IHNldEludGVydmFsKHRoaXMuc2Nyb2xsQ2FsbGJhY2ssIDUwKTsKICAgICAgfQogICAgICBpZiAodGhpcy5jb25maWcubGl2ZSkgewogICAgICAgIHJldHVybiBuZXcgTXV0YXRpb25PYnNlcnZlcigoZnVuY3Rpb24oX3RoaXMpIHsKICAgICAgICAgIHJldHVybiBmdW5jdGlvbihyZWNvcmRzKSB7CiAgICAgICAgICAgIHZhciBrLCBsZW4xLCBub2RlLCByZWNvcmQsIHJlc3VsdHM7CiAgICAgICAgICAgIHJlc3VsdHMgPSBbXTsKICAgICAgICAgICAgZm9yIChrID0gMCwgbGVuMSA9IHJlY29yZHMubGVuZ3RoOyBrIDwgbGVuMTsgaysrKSB7CiAgICAgICAgICAgICAgcmVjb3JkID0gcmVjb3Jkc1trXTsKICAgICAgICAgICAgICByZXN1bHRzLnB1c2goKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGwsIGxlbjIsIHJlZjEsIHJlc3VsdHMxOwogICAgICAgICAgICAgICAgcmVmMSA9IHJlY29yZC5hZGRlZE5vZGVzIHx8IFtdOwogICAgICAgICAgICAgICAgcmVzdWx0czEgPSBbXTsKICAgICAgICAgICAgICAgIGZvciAobCA9IDAsIGxlbjIgPSByZWYxLmxlbmd0aDsgbCA8IGxlbjI7IGwrKykgewogICAgICAgICAgICAgICAgICBub2RlID0gcmVmMVtsXTsKICAgICAgICAgICAgICAgICAgcmVzdWx0czEucHVzaCh0aGlzLmRvU3luYyhub2RlKSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0czE7CiAgICAgICAgICAgICAgfSkuY2FsbChfdGhpcykpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiByZXN1bHRzOwogICAgICAgICAgfTsKICAgICAgICB9KSh0aGlzKSkub2JzZXJ2ZShkb2N1bWVudC5ib2R5LCB7CiAgICAgICAgICBjaGlsZExpc3Q6IHRydWUsCiAgICAgICAgICBzdWJ0cmVlOiB0cnVlCiAgICAgICAgfSk7CiAgICAgIH0KICAgIH07CgogICAgV09XLnByb3RvdHlwZS5zdG9wID0gZnVuY3Rpb24oKSB7CiAgICAgIHRoaXMuc3RvcHBlZCA9IHRydWU7CiAgICAgIHRoaXMudXRpbCgpLnJlbW92ZUV2ZW50KHRoaXMuY29uZmlnLnNjcm9sbENvbnRhaW5lciB8fCB3aW5kb3csICdzY3JvbGwnLCB0aGlzLnNjcm9sbEhhbmRsZXIpOwogICAgICB0aGlzLnV0aWwoKS5yZW1vdmVFdmVudCh3aW5kb3csICdyZXNpemUnLCB0aGlzLnNjcm9sbEhhbmRsZXIpOwogICAgICBpZiAodGhpcy5pbnRlcnZhbCAhPSBudWxsKSB7CiAgICAgICAgcmV0dXJuIGNsZWFySW50ZXJ2YWwodGhpcy5pbnRlcnZhbCk7CiAgICAgIH0KICAgIH07CgogICAgV09XLnByb3RvdHlwZS5zeW5jID0gZnVuY3Rpb24oZWxlbWVudCkgewogICAgICBpZiAoTXV0YXRpb25PYnNlcnZlci5ub3RTdXBwb3J0ZWQpIHsKICAgICAgICByZXR1cm4gdGhpcy5kb1N5bmModGhpcy5lbGVtZW50KTsKICAgICAgfQogICAgfTsKCiAgICBXT1cucHJvdG90eXBlLmRvU3luYyA9IGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgICAgdmFyIGJveCwgaiwgbGVuLCByZWYsIHJlc3VsdHM7CiAgICAgIGlmIChlbGVtZW50ID09IG51bGwpIHsKICAgICAgICBlbGVtZW50ID0gdGhpcy5lbGVtZW50OwogICAgICB9CiAgICAgIGlmIChlbGVtZW50Lm5vZGVUeXBlICE9PSAxKSB7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGVsZW1lbnQgPSBlbGVtZW50LnBhcmVudE5vZGUgfHwgZWxlbWVudDsKICAgICAgcmVmID0gZWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuIiArIHRoaXMuY29uZmlnLmJveENsYXNzKTsKICAgICAgcmVzdWx0cyA9IFtdOwogICAgICBmb3IgKGogPSAwLCBsZW4gPSByZWYubGVuZ3RoOyBqIDwgbGVuOyBqKyspIHsKICAgICAgICBib3ggPSByZWZbal07CiAgICAgICAgaWYgKGluZGV4T2YuY2FsbCh0aGlzLmFsbCwgYm94KSA8IDApIHsKICAgICAgICAgIHRoaXMuYm94ZXMucHVzaChib3gpOwogICAgICAgICAgdGhpcy5hbGwucHVzaChib3gpOwogICAgICAgICAgaWYgKHRoaXMuc3RvcHBlZCB8fCB0aGlzLmRpc2FibGVkKCkpIHsKICAgICAgICAgICAgdGhpcy5yZXNldFN0eWxlKCk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLmFwcGx5U3R5bGUoYm94LCB0cnVlKTsKICAgICAgICAgIH0KICAgICAgICAgIHJlc3VsdHMucHVzaCh0aGlzLnNjcm9sbGVkID0gdHJ1ZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJlc3VsdHMucHVzaCh2b2lkIDApOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1cm4gcmVzdWx0czsKICAgIH07CgogICAgV09XLnByb3RvdHlwZS5zaG93ID0gZnVuY3Rpb24oYm94KSB7CiAgICAgIHRoaXMuYXBwbHlTdHlsZShib3gpOwogICAgICBib3guY2xhc3NOYW1lID0gYm94LmNsYXNzTmFtZSArICIgIiArIHRoaXMuY29uZmlnLmFuaW1hdGVDbGFzczsKICAgICAgaWYgKHRoaXMuY29uZmlnLmNhbGxiYWNrICE9IG51bGwpIHsKICAgICAgICB0aGlzLmNvbmZpZy5jYWxsYmFjayhib3gpOwogICAgICB9CiAgICAgIHRoaXMudXRpbCgpLmVtaXRFdmVudChib3gsIHRoaXMud293RXZlbnQpOwogICAgICB0aGlzLnV0aWwoKS5hZGRFdmVudChib3gsICdhbmltYXRpb25lbmQnLCB0aGlzLnJlc2V0QW5pbWF0aW9uKTsKICAgICAgdGhpcy51dGlsKCkuYWRkRXZlbnQoYm94LCAnb2FuaW1hdGlvbmVuZCcsIHRoaXMucmVzZXRBbmltYXRpb24pOwogICAgICB0aGlzLnV0aWwoKS5hZGRFdmVudChib3gsICd3ZWJraXRBbmltYXRpb25FbmQnLCB0aGlzLnJlc2V0QW5pbWF0aW9uKTsKICAgICAgdGhpcy51dGlsKCkuYWRkRXZlbnQoYm94LCAnTVNBbmltYXRpb25FbmQnLCB0aGlzLnJlc2V0QW5pbWF0aW9uKTsKICAgICAgcmV0dXJuIGJveDsKICAgIH07CgogICAgV09XLnByb3RvdHlwZS5hcHBseVN0eWxlID0gZnVuY3Rpb24oYm94LCBoaWRkZW4pIHsKICAgICAgdmFyIGRlbGF5LCBkdXJhdGlvbiwgaXRlcmF0aW9uOwogICAgICBkdXJhdGlvbiA9IGJveC5nZXRBdHRyaWJ1dGUoJ2RhdGEtd293LWR1cmF0aW9uJyk7CiAgICAgIGRlbGF5ID0gYm94LmdldEF0dHJpYnV0ZSgnZGF0YS13b3ctZGVsYXknKTsKICAgICAgaXRlcmF0aW9uID0gYm94LmdldEF0dHJpYnV0ZSgnZGF0YS13b3ctaXRlcmF0aW9uJyk7CiAgICAgIHJldHVybiB0aGlzLmFuaW1hdGUoKGZ1bmN0aW9uKF90aGlzKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIF90aGlzLmN1c3RvbVN0eWxlKGJveCwgaGlkZGVuLCBkdXJhdGlvbiwgZGVsYXksIGl0ZXJhdGlvbik7CiAgICAgICAgfTsKICAgICAgfSkodGhpcykpOwogICAgfTsKCiAgICBXT1cucHJvdG90eXBlLmFuaW1hdGUgPSAoZnVuY3Rpb24oKSB7CiAgICAgIGlmICgncmVxdWVzdEFuaW1hdGlvbkZyYW1lJyBpbiB3aW5kb3cpIHsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oY2FsbGJhY2spIHsKICAgICAgICAgIHJldHVybiB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGNhbGxiYWNrKTsKICAgICAgICB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiBmdW5jdGlvbihjYWxsYmFjaykgewogICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7CiAgICAgICAgfTsKICAgICAgfQogICAgfSkoKTsKCiAgICBXT1cucHJvdG90eXBlLnJlc2V0U3R5bGUgPSBmdW5jdGlvbigpIHsKICAgICAgdmFyIGJveCwgaiwgbGVuLCByZWYsIHJlc3VsdHM7CiAgICAgIHJlZiA9IHRoaXMuYm94ZXM7CiAgICAgIHJlc3VsdHMgPSBbXTsKICAgICAgZm9yIChqID0gMCwgbGVuID0gcmVmLmxlbmd0aDsgaiA8IGxlbjsgaisrKSB7CiAgICAgICAgYm94ID0gcmVmW2pdOwogICAgICAgIHJlc3VsdHMucHVzaChib3guc3R5bGUudmlzaWJpbGl0eSA9ICd2aXNpYmxlJyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHJlc3VsdHM7CiAgICB9OwoKICAgIFdPVy5wcm90b3R5cGUucmVzZXRBbmltYXRpb24gPSBmdW5jdGlvbihldmVudCkgewogICAgICB2YXIgdGFyZ2V0OwogICAgICBpZiAoZXZlbnQudHlwZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoJ2FuaW1hdGlvbmVuZCcpID49IDApIHsKICAgICAgICB0YXJnZXQgPSBldmVudC50YXJnZXQgfHwgZXZlbnQuc3JjRWxlbWVudDsKICAgICAgICByZXR1cm4gdGFyZ2V0LmNsYXNzTmFtZSA9IHRhcmdldC5jbGFzc05hbWUucmVwbGFjZSh0aGlzLmNvbmZpZy5hbmltYXRlQ2xhc3MsICcnKS50cmltKCk7CiAgICAgIH0KICAgIH07CgogICAgV09XLnByb3RvdHlwZS5jdXN0b21TdHlsZSA9IGZ1bmN0aW9uKGJveCwgaGlkZGVuLCBkdXJhdGlvbiwgZGVsYXksIGl0ZXJhdGlvbikgewogICAgICBpZiAoaGlkZGVuKSB7CiAgICAgICAgdGhpcy5jYWNoZUFuaW1hdGlvbk5hbWUoYm94KTsKICAgICAgfQogICAgICBib3guc3R5bGUudmlzaWJpbGl0eSA9IGhpZGRlbiA/ICdoaWRkZW4nIDogJ3Zpc2libGUnOwogICAgICBpZiAoZHVyYXRpb24pIHsKICAgICAgICB0aGlzLnZlbmRvclNldChib3guc3R5bGUsIHsKICAgICAgICAgIGFuaW1hdGlvbkR1cmF0aW9uOiBkdXJhdGlvbgogICAgICAgIH0pOwogICAgICB9CiAgICAgIGlmIChkZWxheSkgewogICAgICAgIHRoaXMudmVuZG9yU2V0KGJveC5zdHlsZSwgewogICAgICAgICAgYW5pbWF0aW9uRGVsYXk6IGRlbGF5CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgaWYgKGl0ZXJhdGlvbikgewogICAgICAgIHRoaXMudmVuZG9yU2V0KGJveC5zdHlsZSwgewogICAgICAgICAgYW5pbWF0aW9uSXRlcmF0aW9uQ291bnQ6IGl0ZXJhdGlvbgogICAgICAgIH0pOwogICAgICB9CiAgICAgIHRoaXMudmVuZG9yU2V0KGJveC5zdHlsZSwgewogICAgICAgIGFuaW1hdGlvbk5hbWU6IGhpZGRlbiA/ICdub25lJyA6IHRoaXMuY2FjaGVkQW5pbWF0aW9uTmFtZShib3gpCiAgICAgIH0pOwogICAgICByZXR1cm4gYm94OwogICAgfTsKCiAgICBXT1cucHJvdG90eXBlLnZlbmRvcnMgPSBbIm1veiIsICJ3ZWJraXQiXTsKCiAgICBXT1cucHJvdG90eXBlLnZlbmRvclNldCA9IGZ1bmN0aW9uKGVsZW0sIHByb3BlcnRpZXMpIHsKICAgICAgdmFyIG5hbWUsIHJlc3VsdHMsIHZhbHVlLCB2ZW5kb3I7CiAgICAgIHJlc3VsdHMgPSBbXTsKICAgICAgZm9yIChuYW1lIGluIHByb3BlcnRpZXMpIHsKICAgICAgICB2YWx1ZSA9IHByb3BlcnRpZXNbbmFtZV07CiAgICAgICAgZWxlbVsiIiArIG5hbWVdID0gdmFsdWU7CiAgICAgICAgcmVzdWx0cy5wdXNoKChmdW5jdGlvbigpIHsKICAgICAgICAgIHZhciBqLCBsZW4sIHJlZiwgcmVzdWx0czE7CiAgICAgICAgICByZWYgPSB0aGlzLnZlbmRvcnM7CiAgICAgICAgICByZXN1bHRzMSA9IFtdOwogICAgICAgICAgZm9yIChqID0gMCwgbGVuID0gcmVmLmxlbmd0aDsgaiA8IGxlbjsgaisrKSB7CiAgICAgICAgICAgIHZlbmRvciA9IHJlZltqXTsKICAgICAgICAgICAgcmVzdWx0czEucHVzaChlbGVtWyIiICsgdmVuZG9yICsgKG5hbWUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkpICsgKG5hbWUuc3Vic3RyKDEpKV0gPSB2YWx1ZSk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gcmVzdWx0czE7CiAgICAgICAgfSkuY2FsbCh0aGlzKSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHJlc3VsdHM7CiAgICB9OwoKICAgIFdPVy5wcm90b3R5cGUudmVuZG9yQ1NTID0gZnVuY3Rpb24oZWxlbSwgcHJvcGVydHkpIHsKICAgICAgdmFyIGosIGxlbiwgcmVmLCByZXN1bHQsIHN0eWxlLCB2ZW5kb3I7CiAgICAgIHN0eWxlID0gZ2V0Q29tcHV0ZWRTdHlsZShlbGVtKTsKICAgICAgcmVzdWx0ID0gc3R5bGUuZ2V0UHJvcGVydHlDU1NWYWx1ZShwcm9wZXJ0eSk7CiAgICAgIHJlZiA9IHRoaXMudmVuZG9yczsKICAgICAgZm9yIChqID0gMCwgbGVuID0gcmVmLmxlbmd0aDsgaiA8IGxlbjsgaisrKSB7CiAgICAgICAgdmVuZG9yID0gcmVmW2pdOwogICAgICAgIHJlc3VsdCA9IHJlc3VsdCB8fCBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKCItIiArIHZlbmRvciArICItIiArIHByb3BlcnR5KTsKICAgICAgfQogICAgICByZXR1cm4gcmVzdWx0OwogICAgfTsKCiAgICBXT1cucHJvdG90eXBlLmFuaW1hdGlvbk5hbWUgPSBmdW5jdGlvbihib3gpIHsKICAgICAgdmFyIGFuaW1hdGlvbk5hbWUsIGVycm9yOwogICAgICB0cnkgewogICAgICAgIGFuaW1hdGlvbk5hbWUgPSB0aGlzLnZlbmRvckNTUyhib3gsICdhbmltYXRpb24tbmFtZScpLmNzc1RleHQ7CiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgYW5pbWF0aW9uTmFtZSA9IGdldENvbXB1dGVkU3R5bGUoYm94KS5nZXRQcm9wZXJ0eVZhbHVlKCdhbmltYXRpb24tbmFtZScpOwogICAgICB9CiAgICAgIGlmIChhbmltYXRpb25OYW1lID09PSAnbm9uZScpIHsKICAgICAgICByZXR1cm4gJyc7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIGFuaW1hdGlvbk5hbWU7CiAgICAgIH0KICAgIH07CgogICAgV09XLnByb3RvdHlwZS5jYWNoZUFuaW1hdGlvbk5hbWUgPSBmdW5jdGlvbihib3gpIHsKICAgICAgcmV0dXJuIHRoaXMuYW5pbWF0aW9uTmFtZUNhY2hlLnNldChib3gsIHRoaXMuYW5pbWF0aW9uTmFtZShib3gpKTsKICAgIH07CgogICAgV09XLnByb3RvdHlwZS5jYWNoZWRBbmltYXRpb25OYW1lID0gZnVuY3Rpb24oYm94KSB7CiAgICAgIHJldHVybiB0aGlzLmFuaW1hdGlvbk5hbWVDYWNoZS5nZXQoYm94KTsKICAgIH07CgogICAgV09XLnByb3RvdHlwZS5zY3JvbGxIYW5kbGVyID0gZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aGlzLnNjcm9sbGVkID0gdHJ1ZTsKICAgIH07CgogICAgV09XLnByb3RvdHlwZS5zY3JvbGxDYWxsYmFjayA9IGZ1bmN0aW9uKCkgewogICAgICB2YXIgYm94OwogICAgICBpZiAodGhpcy5zY3JvbGxlZCkgewogICAgICAgIHRoaXMuc2Nyb2xsZWQgPSBmYWxzZTsKICAgICAgICB0aGlzLmJveGVzID0gKGZ1bmN0aW9uKCkgewogICAgICAgICAgdmFyIGosIGxlbiwgcmVmLCByZXN1bHRzOwogICAgICAgICAgcmVmID0gdGhpcy5ib3hlczsKICAgICAgICAgIHJlc3VsdHMgPSBbXTsKICAgICAgICAgIGZvciAoaiA9IDAsIGxlbiA9IHJlZi5sZW5ndGg7IGogPCBsZW47IGorKykgewogICAgICAgICAgICBib3ggPSByZWZbal07CiAgICAgICAgICAgIGlmICghKGJveCkpIHsKICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAodGhpcy5pc1Zpc2libGUoYm94KSkgewogICAgICAgICAgICAgIHRoaXMuc2hvdyhib3gpOwogICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJlc3VsdHMucHVzaChib3gpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHJlc3VsdHM7CiAgICAgICAgfSkuY2FsbCh0aGlzKTsKICAgICAgICBpZiAoISh0aGlzLmJveGVzLmxlbmd0aCB8fCB0aGlzLmNvbmZpZy5saXZlKSkgewogICAgICAgICAgcmV0dXJuIHRoaXMuc3RvcCgpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKCiAgICBXT1cucHJvdG90eXBlLm9mZnNldFRvcCA9IGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgICAgdmFyIHRvcDsKICAgICAgd2hpbGUgKGVsZW1lbnQub2Zmc2V0VG9wID09PSB2b2lkIDApIHsKICAgICAgICBlbGVtZW50ID0gZWxlbWVudC5wYXJlbnROb2RlOwogICAgICB9CiAgICAgIHRvcCA9IGVsZW1lbnQub2Zmc2V0VG9wOwogICAgICB3aGlsZSAoZWxlbWVudCA9IGVsZW1lbnQub2Zmc2V0UGFyZW50KSB7CiAgICAgICAgdG9wICs9IGVsZW1lbnQub2Zmc2V0VG9wOwogICAgICB9CiAgICAgIHJldHVybiB0b3A7CiAgICB9OwoKICAgIFdPVy5wcm90b3R5cGUuaXNWaXNpYmxlID0gZnVuY3Rpb24oYm94KSB7CiAgICAgIHZhciBib3R0b20sIG9mZnNldCwgdG9wLCB2aWV3Qm90dG9tLCB2aWV3VG9wOwogICAgICBvZmZzZXQgPSBib3guZ2V0QXR0cmlidXRlKCdkYXRhLXdvdy1vZmZzZXQnKSB8fCB0aGlzLmNvbmZpZy5vZmZzZXQ7CiAgICAgIHZpZXdUb3AgPSAodGhpcy5jb25maWcuc2Nyb2xsQ29udGFpbmVyICYmIHRoaXMuY29uZmlnLnNjcm9sbENvbnRhaW5lci5zY3JvbGxUb3ApIHx8IHdpbmRvdy5wYWdlWU9mZnNldDsKICAgICAgdmlld0JvdHRvbSA9IHZpZXdUb3AgKyBNYXRoLm1pbih0aGlzLmVsZW1lbnQuY2xpZW50SGVpZ2h0LCB0aGlzLnV0aWwoKS5pbm5lckhlaWdodCgpKSAtIG9mZnNldDsKICAgICAgdG9wID0gdGhpcy5vZmZzZXRUb3AoYm94KTsKICAgICAgYm90dG9tID0gdG9wICsgYm94LmNsaWVudEhlaWdodDsKICAgICAgcmV0dXJuIHRvcCA8PSB2aWV3Qm90dG9tICYmIGJvdHRvbSA+PSB2aWV3VG9wOwogICAgfTsKCiAgICBXT1cucHJvdG90eXBlLnV0aWwgPSBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRoaXMuX3V0aWwgIT0gbnVsbCA/IHRoaXMuX3V0aWwgOiB0aGlzLl91dGlsID0gbmV3IFV0aWwoKTsKICAgIH07CgogICAgV09XLnByb3RvdHlwZS5kaXNhYmxlZCA9IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gIXRoaXMuY29uZmlnLm1vYmlsZSAmJiB0aGlzLnV0aWwoKS5pc01vYmlsZShuYXZpZ2F0b3IudXNlckFnZW50KTsKICAgIH07CgogICAgcmV0dXJuIFdPVzsKCiAgfSkoKTsKCn0pLmNhbGwodGhpcyk7Cg=="}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/s/player/7a7969c2/player_embed_es6.vflset/en_US/base.js","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.youtube.com/embed/4ekOcDG2D8E","date":"2026-07-27T13:20:33.154Z","timestamp":1785158433154,"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/4ekOcDG2D8E\r\nCookie: __Secure-YNID=20.YT=gH5UekW7d1yJXHdyAWP9D3nuufltIP5U3L-OJPITdfVo4QFdUpGIlO1MrkvQo6k6kl0jq_pOZAm0Y6StBGPZKrWCX-Ie8T1zxUJW6abmYuVU53Il1VEq4vUs5vvLfbgZGHz1eALkxngiX8bUsdRMr2vaKLTZJ0IBhq1y-2EM8N90iJ0cyWzGnhUGzNxuZzHw9HXFuIwKItlZKR3JI0AWby-eMB-aedGxFUVnqseGfA1HlqbnqC5EymsVz59X4lHMwh44OYJRjaiXEEhEetat2qsHLh8v23W9zHmKOEE2ZhT3CAsXUCZ0LdHpvohM6BZq6G030fjyK9N5mMzUa8e_Fw; YSC=n_kiEdK62Us; VISITOR_INFO1_LIVE=oxtQMHpPyNo; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgEg%3D%3D; __Secure-ROLLOUT_TOKEN=CKOus_iU9NnYzgEQ5fqIsvnylQMY5fqIsvnylQM%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: 452897\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":1597230,"size_decoded":476001,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (787)","md5":"ef473a4d0528fc7651d726fa43900068","sha1":"3b0d807a63c3244fc3fedeac020c2e81106185e1","sha256":"360a9b05bfc89caf69f220ef2473c20d1657318e21c4e0ffdab81e238b42dc61","sha512":"590afd923ebf8ce8da8def22bdf6149595740d96360cbf541954f52366a31fd5e3d3e6d8dd973044383f2cbad84c18f9f67ff69bf04c3dc6891b35b3eb29bb90","ssdeep":"24576:JddEUuuYnFCL4xFUnYNmJYqJNI5Dt/yV2hD4kf:fdhuuYnFCL4MVJBJO5DtKV2hdf","tlshash":"7e255b9977f2b46343a3f0e0286f018ab17f591454ccd46cb9a9e5f42da090e917bfac","first_seen":"2026-07-22T15:37:53.752532Z","last_seen":"2026-07-27T16:06:30.195204Z","times_seen":1773,"resource_available":false,"data":"dmFyIF95dF9wbGF5ZXI9e307KGZ1bmN0aW9uKGcpe3ZhciB3aW5kb3c9dGhpczsvKgoKIENvcHlyaWdodCBUaGUgQ2xvc3VyZSBMaWJyYXJ5IEF1dGhvcnMuCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwovKgoKIENvcHlyaWdodCBHb29nbGUgTExDCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwovKgoKIChUaGUgTUlUIExpY2Vuc2UpCgogQ29weXJpZ2h0IChDKSAyMDE0IGJ5IFZpdGFseSBQdXpyaW4KCiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5CiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8gZGVhbAogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbAogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KCiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOCiBUSEUgU09GVFdBUkUuCgogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIFBvcnRlZCBmcm9tIHpsaWIsIHdoaWNoIGlzIHVuZGVyIHRoZSBmb2xsb3dpbmcgbGljZW5zZQogaHR0cHM6Ly9naXRodWIuY29tL21hZGxlci96bGliL2Jsb2IvbWFzdGVyL3psaWIuaAoKIHpsaWIuaCAtLSBpbnRlcmZhY2Ugb2YgdGhlICd6bGliJyBnZW5lcmFsIHB1cnBvc2UgY29tcHJlc3Npb24gbGlicmFyeQogICB2ZXJzaW9uIDEuMi44LCBBcHJpbCAyOHRoLCAyMDEzCiAgIENvcHlyaWdodCAoQykgMTk5NS0yMDEzIEplYW4tbG91cCBHYWlsbHkgYW5kIE1hcmsgQWRsZXIKICAgVGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCAnYXMtaXMnLCB3aXRob3V0IGFueSBleHByZXNzIG9yIGltcGxpZWQKICAgd2FycmFudHkuICBJbiBubyBldmVudCB3aWxsIHRoZSBhdXRob3JzIGJlIGhlbGQgbGlhYmxlIGZvciBhbnkgZGFtYWdlcwogICBhcmlzaW5nIGZyb20gdGhlIHVzZSBvZiB0aGlzIHNvZnR3YXJlLgogICBQZXJtaXNzaW9uIGlzIGdyYW50ZWQgdG8gYW55b25lIHRvIHVzZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkgcHVycG9zZSwKICAgaW5jbHVkaW5nIGNvbW1lcmNpYWwgYXBwbGljYXRpb25zLCBhbmQgdG8gYWx0ZXIgaXQgYW5kIHJlZGlzdHJpYnV0ZSBpdAogICBmcmVlbHksIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyByZXN0cmljdGlvbnM6CiAgIDEuIFRoZSBvcmlnaW4gb2YgdGhpcyBzb2Z0d2FyZSBtdXN0IG5vdCBiZSBtaXNyZXByZXNlbnRlZDsgeW91IG11c3Qgbm90CiAgICAgIGNsYWltIHRoYXQgeW91IHdyb3RlIHRoZSBvcmlnaW5hbCBzb2Z0d2FyZS4gSWYgeW91IHVzZSB0aGlzIHNvZnR3YXJlCiAgICAgIGluIGEgcHJvZHVjdCwgYW4gYWNrbm93bGVkZ21lbnQgaW4gdGhlIHByb2R1Y3QgZG9jdW1lbnRhdGlvbiB3b3VsZCBiZQogICAgICBhcHByZWNpYXRlZCBidXQgaXMgbm90IHJlcXVpcmVkLgogICAyLiBBbHRlcmVkIHNvdXJjZSB2ZXJzaW9ucyBtdXN0IGJlIHBsYWlubHkgbWFya2VkIGFzIHN1Y2gsIGFuZCBtdXN0IG5vdCBiZQogICAgICBtaXNyZXByZXNlbnRlZCBhcyBiZWluZyB0aGUgb3JpZ2luYWwgc29mdHdhcmUuCiAgIDMuIFRoaXMgbm90aWNlIG1heSBub3QgYmUgcmVtb3ZlZCBvciBhbHRlcmVkIGZyb20gYW55IHNvdXJjZSBkaXN0cmlidXRpb24uCiAgIEplYW4tbG91cCBHYWlsbHkgICAgICAgIE1hcmsgQWRsZXIKICAgamxvdXBAZ3ppcC5vcmcgICAgICAgICAgbWFkbGVyQGFsdW1uaS5jYWx0ZWNoLmVkdQogICBUaGUgZGF0YSBmb3JtYXQgdXNlZCBieSB0aGUgemxpYiBsaWJyYXJ5IGlzIGRlc2NyaWJlZCBieSBSRkNzIChSZXF1ZXN0IGZvcgogICBDb21tZW50cykgMTk1MCB0byAxOTUyIGluIHRoZSBmaWxlcyBodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMxOTUwCiAgICh6bGliIGZvcm1hdCksIHJmYzE5NTEgKGRlZmxhdGUgZm9ybWF0KSBhbmQgcmZjMTk1MiAoZ3ppcCBmb3JtYXQpLgoqLwovKgoKIENvcHlyaWdodCAyMDE1LXByZXNlbnQgRGFuIEFicmFtb3YKIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVQKKi8KJ3VzZSBzdHJpY3QnO3ZhciBJPSd0b1N0cmluZztOO2Ntbz10ZDtzcGxpY2U7MTk3MC0wMS0wMVQxMTo0NTo0MS4wMDArMTE6NDU7bGVuZ3RoO21hdGNoOy87Y2xvbmU7WDtjYWxsO3Rocm93O2Ntbztqb2luO2Fzc2lnbjsvdmlkZW9wbGF5YmFjaztodHRwOi8vbG9jYWw7SjtpbmRleE9mO3d3dy55b3V0dWJlLmNvbTtzcDs7cHVzaDtzbGljZTtHRztyZXZlcnNlO3NjaGVtZTtcXC5nb29nbGV2aWRlb1xcLmNvbSQ7cGF0aDt1cmw7L2luaXRwbGF5YmFjaztuO3BsYXllcmZhbGxiYWNrO2dldDtzZXQ7c3RhcnRzV2l0aDtzcGxpdDs9O2ZhbGxiYWNrX2NvdW50O1c7MTtWO3k3O3Vuc2hpZnQ7cnI7dW5kZWZpbmVkO3BvcDssO2luZGV4Lm0zdTg7Jjtmcm9tQ2hhckNvZGU7V3NsWmtDWm96bFlyNkVCME43LV93OF87cnI/WzEtOV0uKlxcLmNcXC55b3V0dWJlXFwuY29tJDsxOTcwLTAxLTAxVDAyOjMwOjMxLjAwMCswMjozMDslM0Q7RWw7XFwuYTFcXC5nb29nbGV2aWRlb1xcLmNvbSQ7bGV0O0VJO3M7Zm9yRWFjaDt5SXkxUGEyOzE5NjktMTItMzFUMTc6MDA6MzcuMDAwLTA3OjAwO2xvY2FsO2Zvcjt5b3V0dWJlLnBsYXllci53ZWJfMjAyNjA3MjFfMDhfUkMwMDsvZmlsZS9pbmRleC5tM3U4OywiIns7Oi8vO1VudHJ1c3RlZCBVUkw7ZnZpcDthMS5nb29nbGV2aWRlby5jb207V0Q7aHR0cHM6Ly9sb2NhbDttbjsvLztmaWxlO3NpZ25hdHVyZUNpcGhlcjsvYXBpL21hbmlmZXN0O2Ntbz1wZjtyO3JlcGxhY2U7cmVkaXJlY3Rvci5nb29nbGV2aWRlby5jb207LCx9L1wnO3hpJy5zcGxpdCgiOyIpLApXWixuMncsaGksazIsdjJDLGVVLE5pLHB0LEFpLGhNaSxFdyx1eCxkcix4aU0semIsbHgsTFMxLFZqLGVNcixENCxrMyx4MyxneixxVSxKRixTaixtYyxLYixPTSxxd3QsR2JpLFYyLERlLGFNLHRVaCx2NCxucCwkaXgsaEEscmliLHhsLGUxLFhNLHFoLEc1LHNULHBwLEkxaSxTd2gsSkEsUzEsQUEsbVcsS3AsUDQsWmUseUcsVDUsS1MxLFJQLE90aSxadFosbjAsVWl3LFcyLERYLGJwLGtLLGg0LHlpdCx4SyxMMCwkSyxzQSxOeCxwMCxZSyxTdSx1aGgsemgsbHAsbzIsVUEsek0yLEMwLE14LFFsLFZsLFIyLGMyLG41LFc5LHY5LGtVLGhfLEw1LFhELHEzLE4zLHA1LEg5LGY1LFlVLEkwLFNYLG0wLEs1LE9fLFpCLFVfLEVfLHU0LEM1LEI5LG8wLHo5LEZELGpDaCxDeE0sYTAsbkcsRlMyLFdILGJXLGh2LHh2LGVXLGdnLHdaQyxHeix0dixWVVMscmcsTkUsWXYscEcsbjMyLFNXLEp2LFdjcixiYlosT0ssbV8sUEgsWlIsVUsseWcsS0csaVcsRUssb3osdVcsQ0csZGcsbFcsRkYsTUUsUnosClFnLGNILEQyLGJhLHZXLGF6LFdXLG5uLGhTLHg5LGVFLGdlLHFILFhfLFZHLHRTLCQ5LHJlLHNWLGpXLE5ILGFQLHBuLFk5LEhXLEpTLElZLEFTLEtuLFBXLHkxLHVhLG9ZLGs0MixaMixpYSx6JCxsYSxDbixqRSxGXyx3ZSxNSCxRMSxhWSxEOSxiRyxrbSx4bSxMaCx4VWosWHQsWW0sSHksSjMsSXgsU0MsQTMsbTQsS2gsT3MseW0sRXMsaUcsUHksdUcsb3gsZEcsVFMsQ2gsd0csTWYsUngsakMsVm0sYXgsbjgsWE1pLGczVSxiNixrbixoOSxMOCxxTU0sZTYsWGYsc2YsTlkscDgsSjksSV8sSzgsdGpVLHU2LG9fLHNNMixkUSxOenIsenYsbDYsVHYsajYsQzgsQk8sd1EsUl8sY08sV3gsdngsa3ksaEsscWMsWFp4LEFLLG9oLHVrLE1jLHdtLGZULHBNeCxZTXgsbkssdkwsREQsSGJTLEpGWixMSyxJNFMsZWcsZ0QsQUZaLG1VdyxTTVMsS2NoLFBfaSxaYmgsVVViLHJGdCxQTywkVU0sRzcseUZaLGVYLFhULEUzdCxpYlUsJEUsckQsTjUsbzNiLEhMLGZLLEpILElXLEFILEtLLGRVcixTZywKeTcsRTIsWkQsekJ0LE8yLG1oLGRELGw0aixUenIsak1oLHE4LCRHLHBxLFlHLFNPLGdwLEJ6aSxKJCxISixmcSxLcSxDXzEsRXUsdWUsbzUsRmNiLGRwLHozLHdNUyxsZSxUMyxqTyxSQmIsQkosRjEsd3AsUU1VLFY4LFI1LG5WLFE4LGE1LFczLERvLFZqdCx2MyxubDEsV1dyLGJwTSxibixMVix2bHIsZyQsazVaLHRxLFg2LGhIUyx4aGIsTFcyLGVIaCxnbGgsc2wsSDMsRzVoLHJBYixzUDIsTlR0LHA0aSwkaGgsdDFVLEpxLG1JLElpLFlUVSxPbCxQMyxabyx5aSxFbCxmZWIsSkF3LElldyxtaHcsU1RyLG9pLGQkLGxuLHpILEtXVSxCMyxQZjIsam0sT3BpLE12LHckLHlBMSxFbGksaXByLHVNWixSaSxuVyx6SGksVFRyLHZZLGtxLHhxLFhtLHF0LHQxLE50LHNqLENmMSxGV1osdzRyLFlxLEoxLElzLEhZLGZXLFYxVSxBMSxTUyxtRyxLVyxPaixaYSxQWSxjQVUsYWVoLG5LaSx5TixFaixpcix1cixscixvcyx6TixiMHgsZGgsVE4sQ1csalMsV3hoLHZLYixCWSxGbSx3aCxNdCxScyxRTiwKVk4sY1ksYXMsbl8sV0ssaEN4LERpLGJILHZLLGt0LHh4aixMeGksZUNVLGdLdCxYZCxZWSxoYSx4dCxMXyxxdyxzMncsclgsTldoLFl0LEhLLElGLFNBLEFhLG1hLHlLLHAyaix1SCxZQTEsbEgsVEssSDBpLGpBLENfLEJLLEo0cix3WCxNdyxSRixRSyxWSyxJWDEsY0ssYUYsbmUsV1MsRFEsYkMsa2oseGosTGUsZXYsdGsscjcscyQsTjYscGUsWWosSFMsZmUsSmssSVMsU3YsVSQsRSQsaUMsdUMsQTR4LG9TLGQ3LGxDLFRCLGp2LHc3LE02LFJTLFF0LGFTLG53LFdWLG14aixLeFUsREUsTzBpLFBwMSx2VixYJCxxTixVeGoseTQyLCRmLE5OLHB3LGZ3LFlmLEpyLG15LGkwYixQVixPdCxaRSx5Rix1dyxkMixDdyxVdCxUVzIsYUUsY1YsVzAsRHIsdjAsa1QsYmIsaHkseFQsQ3BNLGc4LEJXaixYbixxWCx3MjIsdHksTXVDLFJDVSxRMmksajJaLGFYQyxuVXcsSUssQXksSyQsZ1osWnIsVXoseUgsRXosaWIsb0sselEsbGIsVFEsQyQsQjAsRm4sUkssVkgsYzAsbnksV0IsREksYk8sdkIsCmtSLEx5LGhPLGI1dCxnSixlXyxHMSx0TywkUixOMCx2VTEsc1AscHksazlpLEFPLG1ZLEt5LFVQLHl4LGlPLGhxaCxkSix6MSxUMSxqXyxCQix3SixSOSxNMCxhOSxiUSxrdSxMRixlRixnMCxYcSwkdSxlcTEsZ1VyLHBGLFl1LE5MLEhOLFg5VSxKYyxJZyxTRixBYyxPUixaeSxVUixLRix5YyxFUix1USx0WFUsJDN4LHMwcixkMCxyX2osRzl3LHpuLE5aaSxpUSxvZyxINXgsbFEsVG4sakYsQ0YsRnEsdzAsZkJVLEpfMixJQmksY04sYWcsV3osRG0sU19aLEFfcixtM3csSzByLGI5LHZ6LFA0TSxrTyxoNyx4TyxMUCxlOSxnMyxVM3QscUIsaTVoLHVEeCwkTyxyMyx0Nyx5X3Isc0osTkIscFAsWU8sR28sRVVTLEh6LGZQLEo3LEk3LEE3LG1ULEtQLE9KLFB6LFRaaixabSxvNyxkMyxsOSxqMHgsRjBNLEJaaCx6byxGMyxWZCxNWFMsdzMsY3osbm0sYTcsRDUsYk0sV1UsUnEyLFEwUyxWWDIsY19aLGtRLGFCUyxudjIsV19DLERFeCxiR0MsdnZpLGt6aSxoSSx4USx4RXcsTF9pLGd2dyxldywKTG0sJFEscUt3LHNjLHBtLFlRLHRXdywkRXQsZm0sT2MsUFUsWjUseUosRWMsU3csVWMsaU0scnZoLHN6Uyx1TSx6VCxqdyxUVCxCVSxsTSxDbSxNYixhSSxuWCxOZ3csY1UsVkosZ0UsZVosdHAsJG8sckUsWUtqLGZSMixTS0MsSnZaLHM5LElSMSxOaixISSxwWCxJYixBcCxLWCxaQSxQSSxPOSxVOSxpeSx1eSxkRSxLXzIsT0d4LFBXMSxRUixNaixjSSxDWCxuVSxxMSxiUix2cyxrQSxUcCxzeSxwVSxpR2osS1UsRXZDLGpaLG1yLER2LGc0LE4xLGFiLEY0LEJJLHdFLFZSLHI0LHVSLG92LEV5LFRVLGp5LENVLENXaSxCcyxGUix3NCxNMSxCZ3Isd0hDLE1XdyxRNCxjcyxuNCxhdixXYSxRejEsVld4LGhQLGtCLG45dyx4QixnSyxMNCxlaSxXTlUsREh0LGhUUyxLNCxPYSxnOWksdWcsaWcsWFdqLFRxLHFWWixqaSxHJGosenEsQzR3LG9VLGxnLGRLLFBhLEZqLHRFeCwkSHQsd0ssTWcsUTUsTmUyLGFVLG5CLGtWLGhtLHBXTSxMQixnYixYQSxxUSxHdyx0bSwkVixZVlMscmIsZUwsc0gsCnBCLEhiLGZCLFlWLElMLEhucixmMmosT0gsWk0sRUgseXYsaSQsSlNyLHp3LGRiLEkyWix1JCxTVjEsakwsQ0IsQVN4LG1IMSxLTnQsQmIsRkEsb0wsVHcsUGF4LGNiLFdQLFZ2LGtELHhELGVrLHlTaCxFOWIsaW53LGRIaix1X3QsR1cscGwsSFAsZmwsSmUselRqLElqLEFlLG1FLFNrLEtsLFRlYixPbyxQUCxqWTEsWlksRk54LEJlUyxDYVUsTUV3LFVvLFZFMixsMmoseXEsRW8sY1MyLHFyLHRlLER3LHZHLGtNLGhSLHhNLExSLGU1LGdkLFhhLHFELEc2LHRSLCRNLHJkLHN4LGEyMixwUixKUixJdyxtayxLUixPeCxQRyxadyxVeCx5QSxFeCxpaCx1aCxvdyxkZCxUNixqNSxDUixCRyx3ZCxNRCxRQSxjRyxuZixXZSxERyxiQixubWgsVzRVLERmUyxrJCxYOCx0RSxiaDEsJCQsc2UsTmEscGYsa1NqLHhmUyxIZSxMNFosZWFVLGdtMixKRSxJOCxxc1UsQUUsR1N3LCRmaSxLZixyM1osT2UsbUwsc3hyLHRDaCxTWSxQZSxaRyxweXQsWXNNLEhodyxVZSxJOTIseVcsRWUsdUIsU3NaLGROLApuYyxXUSx5M3IsYjAsRW14LHg1LExjLGV0LG9tTSx0aixYeSxkZjIsRzAsJDUsemFpLGw5aSxUR2gscWUsdXQyLHJhLHNoLEhRLEJHTSxGNGIsZmMsSmosUmFTLGE5cixxNCxubjEsdFgsck0scGksWXosZmksSWYsbVUsUzIsaGp0LEFYLHhZYixLaSxPMyxlancsWnEsZ25aLFAkLExEWixpWixYT2IscWZTLHQ2QyxyOVMsR3ZVLHNfMixOUWksajIsQiQsSDhyLFFyLEo5YixmOEMsTTQsVnIsUmYsYyQsSThqLEE5UyxTZmosRkcsbVl3LFA2Uyx3TSx1Zk0sb25yLGRZTSxpOFUsRW4yLHk5dCx6ajEsYWYscE9pLGw4dCxZZmksVFFNLGpfVSxuNyxGRGIsQzZVLFduLEJRdyx3T1osUmpVLFFfMSxNNlUsbnl3LFdCaixhODIsa0Z3LGhzdyxWNnIsYzlNLExCVSx4Y2Isa2QsZXNqLGhzLGd5MSxHRkMsWHh0LHRwYixxMGIsJGN4LHhkLEw3LGVJLHJLcixzaFosZ1AsTm10LFhOLHB4aSxZMFUscUcsR0UsSFRaLGZsaixKS2osSWxqLHRzLFMwdyxBS3IsbWNyLEtCTSxPVGIsUGtDLFpUVSxVY2kseUtDLApFeTIsaVR4LHVMMixveWgsZGN0LHpzMSxsbHIsVG1yLGpoTSxDa3gsQm1qLHd4WixNcEMsclAsc24scDcsWWQsUnN4LEhuLGY3LFFodyxKcyxWcEMsSU8sQXMsbTUsSzcsWlUsVW4seXcsaUosYWx4LG9PLHpFLFRFLGdYLEM3LGhBaSxCbixlQSxGTixlQVosTUcsUk8sVncsZ0V3LERjLHZBLGtKLFhMUyx4SixlSixnRixYcCxxZCxOZCxJRGgsUzJiLFlKLEhLaSwkNXIsSlQsc1diLElyLHJGLCRKLHRnaCxHN1UscTJDLHRULGZnLHNELEhBLFBBLFpjLFVELHlMLEVELGkzLHUzLG9yLGRGLHpfLFRfLGpKLENnLEJBLEZwLHdGLFFMLFd3LFZMLGNBLHZ3LGt4LGFyLEtoMixMcyxnQSxHaixQSUMsWktaLFl4LHBzLFU1WiwkeCxyQSxzWSxOayxIdyxmcyxKWSxJQixTUCxtdCxBWSx5SHIsS3MsUHcsRUVaLE9ZLFpfLGlLVSxVWSx5ZixvRWksemosbEwsalAsVGosQncsRjUsd0EsTWssUWYsY3csbnosV18sREosZDV3LGJULHZfLGtOLHpBMixoSix4TixMeixleCxnayxYeCxsRHgsVEQxLEdQLHRKLAokTixPdixQXyxaSixVdix5cyxkayx6UCx3TFUsbFQsVFAsangsQ3osTWdNLFJBUyxRV00sVmdpLGNIaixhRFUsRngsTUksbkdTLERPLHZSLGhNLHhYLExNLGVHLFhaLHEkLEdpLHRNLCRYLHJ5LHNOLE4kLFlYLGZNLEpNLElkLFNHLFFQLE9OLG1GLEtnLE0zLFpPLFVOLHZHVSx5VCxrM3IsaTgsdTgsZHksaGdTLHppLGw4LFRpLGpHLHJrLENNLEJSLHg4aixGWixNJCxSZCxRVCxWVCxjUixhZCxuNixXRix2RixMS1UsTDYsZWcxLGU0LFhKaSxxeixxdWosRzNDLHRPWix0WixzNVUsTnBqLHBKYixJbyxZdWgsSHFoLGZ0WixHXyxmRHcsJGcsUzQsSzYsT2ssUEYsSiRVLEl0aSxaSCx5QyxBWixFayxBJGksaUEsdUEsb28sbTh0LHp4LFR4LGo0LEM2LEJGLEtLdCxGdixwNixWQyxPcXgsVThaLERLLHJIaSxKSHIsdlgsaHoseGgsTE4sZVQsZzEsRUdDLCRoLG9HdyxkOGksaXF0LHR6LHUxcixsdGIsTlYsemcyLHBOLFRwYixIWCxORFMsWTJTLE9ELFNKLENlVSxmTixKeix3SngsajVpLFNULG1WLApLTixBeixPZCxQWCxSZ1UsRWQsVk9yLGF0dCxpbyxuWUMsb24sekwsWHYsVEwsalQsQlgsRlYsUU0sY1gsbG8sYzksV0UsYmksdkUsaHUsTEUsdHUsWnFTLHZZaixmRSxKdSxTTSxBdSxWUCxLRSxMSUMsZUVpLE9tLFBFLGdZWix0bU0sWmYsWDNTLEdIdCxxbGgscnFaLHNpcixpaSx1aSxvQSxUbCxDRSx3YyxGQyxNRixSQSxZbHcsUW4sSFZ4LGZvaSxKcVosQXExLG12aixhQSxuTCxQbjEsWlZpLHlxMSxFWTEsaVYyLHU2UyxvWU0sekViLGxvaixrTCx4TCxMTCxlJCxnNix0eCxCJHgsdzNpLEdmLFJFaSwkTCxyNixRaTIsVm10LHNVLFZuLFdqLEhqLGZMLG1mLEVVLGlqLHVqLGQ2LHpmLG9RLGdxWixsaixYWWgscWpoLEdOaCxDTCxCaixGZSxKeCx3NixQMCxNcyxBSixSUSxReixOSSxWeixVdE0sY2oseTFoLEk0LGFRLG5BLGJGLFRmLGokLFN4LGhELEVxaCx4cCxLeixpV1MsdW10LG9xMSx6a1UsTEEsZTcsZ2wsWDIsZHQxLEdlLHRELCRwLHJsLEF4LE51LFlwLElULEFELGlULHB6LEtBLApPUyxQVCxUaGksY3F4LHBMLFpQLFVTLHlVLEVTLGlGLHVGLGxGLHplLGo3LGRsLE1TTSxDQSxCVCxGMix3bCxNdSxhVCxjVCxRc1MsbjIsVzcsVlNoLGtGLGhmLGMxQyx4RixMMixlQixiX0MsZ3YsWHoscXAsdGYsdnRDLGh4dyxmMixKZixJeSx4dzIsU0IsQWYsbVAsWiQsVUYseUUsRUYsaTUsenUsVHUsakIsQzIsQjcsTGF4LEZ6LHd2LE1wLFJ5LFFFLFZFLGM3LGF5LG52LGJZLFd1LERiLEdLdCxxSXcsdEFDLCR3aixyYVUsc0ZNLHZ1LGtzLE5YaCxlbixnVixZSTEsSF9VLHFXLFhyLHRCLGZpeCxyVixzYixOVyxwdixmdixZcyxKQixJNixKYWksSHUsWmIsVWIsRWIsbzYsU0laLHVZLEFhMixURCxsWSxtd3Isam4sQ3YsRnIsd1YsTVcsUWssVmssY3UsQ25pLEZJMSxhNixXcCxEeCxidSx2cCxrWixoVSx4WixMMyxlVixnQyxVd2IseWFqLGlfYixYdSx6eFMsakZNLFNWLENIaCxGYU0sd0tqLE1BTSxSeGosUUZ3LFZBUyxjYXQsYWlNLG5qMSxtZSxXJGosRDZ4LEszLE9HLGJlcixQcCwKdmp3LGg3Mix4NncsVUcsWngsTCQyLHlCLGl1LGU3YixnajEsWFNoLG9xLEdCYixya2osekkscSQyLCQ2aCxsdSxqVixzU3csTjdTLHBTUyxGdSxIZVUsd0MsUnEsSVExLFMkaCxtNncsSyRqLFZCLGNwLFBDMixhcSxaZXcsTXEsVTZDLGZRaCxPZWksQWtNLFc2LHlrcixFalosaWVpLHU5VSxvancsRGQsVDdiLGQ2cix6N1UsalNaLGJTLENDTSxsUWgsdjYseEMsTHIsZXEsa0MsQjdiLHdTVSxndSxGJHgsTXZTLFI3VSxWdnQsY2tqLFgwLGFRUyxuZngsRE4xLGJ3QyxxMixHWix0MCwkQyxRRXcsVkh4LGNyaCxEWDIsdmZ0LGtkVSxuVHcsV2paLGFFdyx2VFosSDYsSjQsZnIseWssbWksS3YsUHUsaVksS3IsSSQsaFpyLE80LHhYQyxMalUsUDYsQTAsbWQsWmQsZ1RDLFU0LEowLGc3LHlvLEU0LGlTLFNxLGtRdyxlWnQsdVMsWDB0LHF6aCxHUWIsdGRqLCRYMSxyeUMsTjhaLGR1LEprQyx6WixsUyxSNixLYTIscDBiLGpxLFZvLElyYixZemksZnJDLENyLEYwLG1YYixLamksTyRpLFokaSxQYlUsClVYWixhJCx5eXgsbkQsV2wsaSRTLEVUaixvVGosRGssdW5VLHZsLHpaaixscjIsVDhoLENidCxCOGksdzBiLGhnLGt3LEZqaixSWmgsTEQsVmR0LGVSLFFLeCx4dyxnaixYQixXWWgsblJ0LCR3LHFQLFl3LHZSdyxlU2osaFMxLExZMix4MEMsZkQsWEJ3LHFQaSxHMVMsdF9oLCQwYixyT2gsczlDLE5KaSxJayxwQngsWVBNLEh5VSxKT3csZkl0LElJYixKZyxBT00sU1IsY3laLFBsLFp5UyxpeWksdWtoLG9SdCxQT3QsRXEsdTEseXUsZDBiLFVxLGxJYixvayxaayxVMFosaTEseU9aLG0wTSxtdixqOUMsT3laLENPaixCSnQsVEpiLEZZQyx3QngsemMsTV93LFE5YixWXzIsUlNDLGNPdyxhSVosV1hoLERMYixrbnIsYkZqLHZ1TSxUYyxoUXgseEx0LExYcixndUMsalIsQ0QsWE5pLEJsLHFScixHbncsdEZ4LCRMQyxyYzIsc2d3LE4wUyxwTnQsWVJ3LEhGWixmeVUsSmNiLEl5dyxTUnQsQWNaLG1MMixLWFosT0ZDLFBRcixaRnQsVUwyLHljMixFdXQsaUZVLHVxdCxvdTIsZExpLHpRUyxseTIsClQwVSxqZ2gsQ1FDLEIwaixGWDIsTUZ4LFJRVSxWRlMsTVAsUXUsVnUsY2wsbk9NLG5DLFdUaCxEQmksYlBTLGFrLHZPMixheVosYm0saEQxLHhCaCxMVGIsdnIsa29yLE9iLGRWLFlDLFN6TSxjNixIJGgsUW8sQjYsd3UsUiQsZGoselMyLEVSUyxYemgscUoyLHQ5aCxrYywkQmkscjdoLGgyLGVEYixYYixIUGIsZm14LEo3aSxJbWkscW0sZ09DLEE3eCxzN3IsTjNDLHhjLExDLHB6aCxaUGosS1RpLE9QMixyUyxOMiwkYyxTSloseTdpLEVPaCxpUFMsbUJiLHUzeCxvT3gsZEJoLFQzaCxqN2osQzl4LHBDLEIzeCx3enIsRlR0LFJEaixRNzIsYzdyLFdnMixoOE0seGJqLEhyLG5RdyxKMixmQyxMZ3csZTh3LGJtaCxWOWksTTliLGdRdyxYVVMscWNVLEdUUyx0d00sckkxLFMwLCRiWixOb0Msc0lNLFljMSxwVWosbW4sQTIsSG1TLGY1eCxKSWIsSTUyLEtDLEFJTSxtYk0sS2d4LE9YLE9tMixQTWosUHIsWm1oLHlJcixpbXIsWlYsVVgseTMsaW0sdW0sRVgsRVFNLHVpaixvUTIsZGJTLHo4MiwKbDVVLGJBLG91LFRvaSxqSWosQ014LEJvdCxkUyxGZ2IselgsTXdoLGwxLFRYLGowLENDLEJyLEZiLHdTLFFJUyxWd00sY0lqLGE1cixSdSxXM1osRGoyLGJYdCxrcGksaHlpLGJKLHZ5TSx4amosTDN4LGV5aixYSVosYXUsV2QscTkxLG51LEQ3LGJWLHRaTSwkalosdmQscnB0LGNjWixNbSxWMyxoQyxIWDIsZkF0LEpwVSxJQWgsUzliLEFwaixtanQsSzNVLE9YMixlaCxncyxYSixQeUMscTksUjhDLFVqdyx0QyxHWSwkMCxFb2ksaVhTLHJzLHNCLHlwYixwdSx1NGIsWTAsb294LGZ1LFRFMixqYjIsSkMsRjNiLFNoLG1vLGRqcixNWjEsSGQsUnlpLFFidyxsQXQsVlppLHp5MSxhQXcsbkF4LGNwdCxQZCxaNyxMcjEsdkFqLHlhLGVwWixrVWksRDF0LGdBaSxXcmgsR1UxLFhzaSxVQix0eTIsYlVVLHI2dyx4MVUscHNyLEVCLEhVaSxmdmksWXlpLEl2aCxTeXIsU1BNLEdYLG9jLFA5VSxtMVUsSWMsbFYselksamgsQmQsRkosS3JiLHdzLFUxaSx5NlosRUFDLE05LFBSYixSYyxpVXQsQ3UsCmNkLG9BdCxRYSxWYSx1VixUWSx3c2ksTXl4LE9VaCxkcyxScFUsYnYsQTZqLGQxMixhdlosbkJDLFcxaSxiNHQsRGdDLHZCMixCNFUsUXZpLGhMWixMMWIseGdaLGVMaCxnQnIsWGFTLGtQLGg1LHFhVSxHcU0senBpLHRpUywkZ0MsTGEsclBoLHNVUyxlbCx4UCxwYU0sZzksWFksSDR0LGZwaSxKUE0sSXBDLFNhTSxZYVUsQVAyLG1naCxPNEMscVQsSzFVLEdHLFBneCxaNHgseVBqLEVCQyxVZzIsb0JyLGRndyxpNFUsdWp4LHpMWixscDIsalVVLFRLdyxSTHQsUVVaLENndCxCS0MsRjF3LHdhUyxNaWksVmliLHI5LHNyLCRQLE5ULGFweCxuVnIsV3F4LEpKLHBhLGJCeCx2VjIsa3d3LFlQLGZhLEg4LHhRdyxoYmosZ1ZoLEo1LFIwLFhiaCxJRyxxSDEsR3dVLHRMeCwkUXgscm1NLHNMYixOYmIsSEJ3LFlIaSxBNSxtQSxKbXgsS2EsU2wsZk0xLE9yLEtxcixQJEMsWkJqLFVRaSx5bWksRVZiLGlCUyxaVCxpdix1QXQsdXYsemJyLG9WMixEJCxURyxqbCxDYSxHdSxCOCxGWSxqTGosQyR3LAp3OSxSRyxRWSxGcU0sTVQsQmJoLFJieCxjbWIsVlksYU1VLG5EaixhRyxEclosVkxNLFdjLGJsWixuTyx2RDEsa1cxLGJzLHZjLHhydCxrSSxlMEMsZ0R4LExFcixYUGkscW8yLGhoLEdXYix0azEsTE8sZXMsZ2YsJHJNLHJlUyxzalMsTl9oLFlvQyx0aCxIbEMsJEksQWV0LHJmLG1yaixLRWgsUGRaLE9sTSxOSyxwTyxabGksRURqLEhjLFlJLHU3dCxkck0samp4LENkaixKaCxJZSxCX0Msc0YsZk8sRkVaLFNzLHdQMSxNa00sbVIsY2ViLHlSMSxHRCwkcyxlMCx6RCx5UyxCdSxFZyxpcyxUWixVZyxpUlosdXMsdWFVLG9NaCxkRGIselVoLHR2aSxNMixqd2osRncsQ2gxLE1LLGlwLGpzLEZraixjYyxDTyxuSixjUmIsVjVoLGx3WixXZixkZixUZGosbHMsbiRNLFdMcixEYXIsTTVpLHYkaCxodnIsZXZ0LGckUyxrcix2ZixYZWosYmwsREwseHIsTEwyLHFlaSwkYXIsdVJyLHJFUyxzOHIsWWVpLFhTLHBlVSx0YixOTncscTcsZkdTLEpFYixJR3csU2UxLEFFaSxyNSxaZncsc1osT2Z0LHlFMiwKRSRNLGlmQyxLTFosdThiLFlyLG8kVSx2NyxmSixKYixBYixQZixWUyx6djIsVVosbEd3LGo4MixDQlMseVosaWwsVWFoLHdlVSxNWU0sUnZaLFE4eCxWWXgsYUcxLFcydyxEZWIsb1gsY0VyLFZaLGswaix6QSxFWixoZDEsbngsTDJNLHhlcixXcSxERixiVSx2cSxlZFMsYVgsT1osQ0osbGwsVEEsQmYsbjVqLEZTLEtKLHVsLGRhdCxYUXgsRzBqLFNhLFFaLHR0dywkZVUseGkscmpqLHNhaSxoVixOYWIsa2ksZW8sWWhpLEhjdCxmNmg7V1o9ZnVuY3Rpb24obil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG50W25dLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19OwpnLkQxPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG50W25dPVd9OwpuMnc9ZnVuY3Rpb24obixXKXtpZihXKWZvcih2YXIgRD0wO0Q8dloubGVuZ3RoO0QrKylrMih2WltEXSsiQXJyYXkucHJvdG90eXBlLiIrbixXKX07CmhpPWZ1bmN0aW9uKG4sVyl7VyYmazIobixXKX07CmsyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9eDI7bj1uLnNwbGl0KCIuIik7Zm9yKHZhciBiPTA7YjxuLmxlbmd0aC0xO2IrKyl7dmFyIHY9bltiXTtpZighKHYgaW4gRCkpcmV0dXJuO0Q9RFt2XX1uPW5bbi5sZW5ndGgtMV07Yj1EW25dO1c9VyhiKTtXIT1iJiZXIT1udWxsJiZXU0MoRCxuLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6V30pfTsKdjJDPWZ1bmN0aW9uKG4sVyl7bi5wcm90b3R5cGU9RGl4KFcucHJvdG90eXBlKTtuLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1uO2J0UyhuLFcpO24uVEI9Vy5wcm90b3R5cGV9OwplVT1mdW5jdGlvbihuKXtuPU1hdGgudHJ1bmMobil8fDA7bjwwJiYobis9dGhpcy5sZW5ndGgpO2lmKCEobjwwfHxuPj10aGlzLmxlbmd0aCkpcmV0dXJuIHRoaXNbbl19OwpnLkdiPWZ1bmN0aW9uKG4sVyxEKXtuPW4uc3BsaXQoIi4iKTtEPUR8fGcucWk7Zm9yKHZhciBiO24ubGVuZ3RoJiYoYj1uLnNoaWZ0KCkpOyluLmxlbmd0aHx8Vz09PXZvaWQgMD9EW2JdJiZEW2JdIT09T2JqZWN0LnByb3RvdHlwZVtiXT9EPURbYl06RD1EW2JdPXt9OkRbYl09V307Ck5pPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5ycigiQ0xPU1VSRV9GTEFHUyIpO249RCYmRFtuXTtyZXR1cm4gbiE9bnVsbD9uOld9OwpnLnJyPWZ1bmN0aW9uKG4sVyl7bj1uLnNwbGl0KCIuIik7Vz1XfHxnLnFpO2Zvcih2YXIgRD0wO0Q8bi5sZW5ndGg7RCsrKWlmKFc9V1tuW0RdXSxXPT1udWxsKXJldHVybiBudWxsO3JldHVybiBXfTsKcHQ9ZnVuY3Rpb24obil7dmFyIFc9dHlwZW9mIG47cmV0dXJuIFchPSJvYmplY3QiP1c6bj9BcnJheS5pc0FycmF5KG4pPyJhcnJheSI6VzoibnVsbCJ9OwpnLlkyPWZ1bmN0aW9uKG4pe3ZhciBXPXB0KG4pO3JldHVybiBXPT0iYXJyYXkifHxXPT0ib2JqZWN0IiYmdHlwZW9mIG4ubGVuZ3RoPT0ibnVtYmVyIn07CmcuZnQ9ZnVuY3Rpb24obil7dmFyIFc9dHlwZW9mIG47cmV0dXJuIFc9PSJvYmplY3QiJiZuIT1udWxsfHxXPT0iZnVuY3Rpb24ifTsKQWk9ZnVuY3Rpb24obil7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLFNVKSYmbltTVV18fChuW1NVXT0rK2tidCl9OwpoTWk9ZnVuY3Rpb24obixXLEQpe3JldHVybiBuLmNhbGwuYXBwbHkobi5iaW5kLGFyZ3VtZW50cyl9OwpnLkt0PWZ1bmN0aW9uKG4sVyxEKXtnLkt0PWhNaTtyZXR1cm4gZy5LdC5hcHBseShudWxsLGFyZ3VtZW50cyl9OwpnLlBaPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpO3JldHVybiBmdW5jdGlvbigpe3ZhciBiPUQuc2xpY2UoKTtiLnB1c2guYXBwbHkoYixhcmd1bWVudHMpO3JldHVybiBuLmFwcGx5KHRoaXMsYil9fTsKZy5Vdz1mdW5jdGlvbigpe3JldHVybiBEYXRlLm5vdygpfTsKZy55aj1mdW5jdGlvbihuKXtnLkdiKCJ5dC5hYnVzZS5wbGF5ZXJBdHRMb2FkZXJSdW4iLG4pfTsKRXc9ZnVuY3Rpb24obil7cmV0dXJuIG59OwpnLml4PWZ1bmN0aW9uKG4sVyl7ZnVuY3Rpb24gRCgpe30KRC5wcm90b3R5cGU9Vy5wcm90b3R5cGU7bi5UQj1XLnByb3RvdHlwZTtuLnByb3RvdHlwZT1uZXcgRDtuLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1uO24uQU89ZnVuY3Rpb24oYix2LGspe2Zvcih2YXIgaD1BcnJheShhcmd1bWVudHMubGVuZ3RoLTIpLHg9Mjt4PGFyZ3VtZW50cy5sZW5ndGg7eCsrKWhbeC0yXT1hcmd1bWVudHNbeF07cmV0dXJuIFcucHJvdG90eXBlW3ZdLmFwcGx5KGIsaCl9fTsKdXg9ZnVuY3Rpb24obiwuLi5XKXtXPVcuZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiYiKTtpZighVylyZXR1cm4gbjt2YXIgRD1uLm1hdGNoKC9bPyZdYWR1cmw9Lyk7cmV0dXJuIEQ/bi5zbGljZSgwLEQuaW5kZXgrMSkrVysiJiIrbi5zbGljZShELmluZGV4KzEpOm4rKG4uaW5kZXhPZigiPyIpPDA/Ij8iOiImIikrV307CmRyPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFc/IiYiK24rIj0iK2VuY29kZVVSSUNvbXBvbmVudChXKToiIn07CnhpTT1mdW5jdGlvbihuKXtuPW4uWDtpZighbilyZXR1cm4iIjt2YXIgVz1kcigidWFwIixuLnBsYXRmb3JtKStkcigidWFwdiIsbi5wbGF0Zm9ybVZlcnNpb24pK2RyKCJ1YWZ2IixuLnVhRnVsbFZlcnNpb24pK2RyKCJ1YWEiLG4uYXJjaGl0ZWN0dXJlKStkcigidWFtIixuLm1vZGVsKStkcigidWFiIixuLmJpdG5lc3MpO24uZnVsbFZlcnNpb25MaXN0JiYoVys9IiZ1YWZ2bD0iK2VuY29kZVVSSUNvbXBvbmVudChuLmZ1bGxWZXJzaW9uTGlzdC5tYXAoRD0+ZW5jb2RlVVJJQ29tcG9uZW50KEQuYnJhbmQpKyI7IitlbmNvZGVVUklDb21wb25lbnQoRC52ZXJzaW9uKSkuam9pbigifCIpKSk7Cm4ud293NjQhPW51bGwmJihXKz0iJnVhdz0iK051bWJlcihuLndvdzY0KSk7cmV0dXJuIFcuc2xpY2UoMSl9Owp6Yj1mdW5jdGlvbihuLFcpe2lmKFchPT1udWxsJiZXIT09dm9pZCAwKXtpZih0eXBlb2YgVyE9PSJvYmplY3QiJiZ0eXBlb2YgVyE9PSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkLiIpO2lmKEQ9PT12b2lkIDApe2lmKCFTeW1ib2wuZGlzcG9zZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJTeW1ib2wuZGlzcG9zZSBpcyBub3QgZGVmaW5lZC4iKTt2YXIgRD1XW1N5bWJvbC5kaXNwb3NlXX1pZih0eXBlb2YgRCE9PSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IG5vdCBkaXNwb3NhYmxlLiIpO24uc3RhY2sucHVzaCh7dmFsdWU6VyxkaXNwb3NlOkQsYXN5bmM6ITF9KX1yZXR1cm4gV307Cmx4PWZ1bmN0aW9uKG4pe2Z1bmN0aW9uIFcoayl7bi5lcnJvcj1uLmhhc0Vycm9yP25ldyBTdXBwcmVzc2VkRXJyb3IoayxuLmVycm9yLCJBbiBlcnJvciB3YXMgc3VwcHJlc3NlZCBkdXJpbmcgZGlzcG9zYWwuIik6aztuLmhhc0Vycm9yPSEwfQpmdW5jdGlvbiBEKCl7Zm9yKDtiPW4uc3RhY2sucG9wKCk7KXRyeXtpZighYi5hc3luYyYmdj09PTEpcmV0dXJuIHY9MCxuLnN0YWNrLnB1c2goYiksUHJvbWlzZS5yZXNvbHZlKCkudGhlbihEKTtpZihiLmRpc3Bvc2Upe3ZhciBrPWIuZGlzcG9zZS5jYWxsKGIudmFsdWUpO2lmKGIuYXN5bmMpcmV0dXJuIHZ8PTIsUHJvbWlzZS5yZXNvbHZlKGspLnRoZW4oRCxmdW5jdGlvbihoKXtXKGgpO3JldHVybiBEKCl9KX1lbHNlIHZ8PTF9Y2F0Y2goaCl7VyhoKX1pZih2PT09MSlyZXR1cm4gbi5oYXNFcnJvcj9Qcm9taXNlLnJlamVjdChuLmVycm9yKTpQcm9taXNlLnJlc29sdmUoKTsKaWYobi5oYXNFcnJvcil0aHJvdyBuLmVycm9yO30KdmFyIGIsdj0wO0QoKX07CmcuVGI9ZnVuY3Rpb24obixXKXtpZihFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSlFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSh0aGlzLGcuVGIpO2Vsc2V7bGV0IEQ9RXJyb3IoKS5zdGFjaztEJiYodGhpcy5zdGFjaz1EKX1uJiYodGhpcy5tZXNzYWdlPVN0cmluZyhuKSk7VyE9PXZvaWQgMCYmKHRoaXMuY2F1c2U9Vyl9OwpMUzE9ZnVuY3Rpb24oKXt9OwpnLmpVPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4ubGFzdEluZGV4T2YoVywwKT09MH07CmcuQlo9ZnVuY3Rpb24obixXKXt2YXIgRD1uLmxlbmd0aC1XLmxlbmd0aDtyZXR1cm4gRD49MCYmbi5pbmRleE9mKFcsRCk9PUR9OwpnLkZoPWZ1bmN0aW9uKG4pe3JldHVybi9eW1xzXHhhMF0qJC8udGVzdChuKX07Cmcud3I9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi50b0xvd2VyQ2FzZSgpLmluZGV4T2YoVy50b0xvd2VyQ2FzZSgpKSE9LTF9OwpnLmNaPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9MDtuPVN0cmluZyhuKS50cmltKCkuc3BsaXQoIi4iKTtXPVN0cmluZyhXKS50cmltKCkuc3BsaXQoIi4iKTt2YXIgYj1NYXRoLm1heChuLmxlbmd0aCxXLmxlbmd0aCk7Zm9yKGxldCBoPTA7RD09MCYmaDxiO2grKyl7dmFyIHY9bltoXXx8IiIsaz1XW2hdfHwiIjtkb3t2PS8oXGQqKShcRCopKC4qKS8uZXhlYyh2KXx8WyIiLCIiLCIiLCIiXTtrPS8oXGQqKShcRCopKC4qKS8uZXhlYyhrKXx8WyIiLCIiLCIiLCIiXTtpZih2WzBdLmxlbmd0aD09MCYma1swXS5sZW5ndGg9PTApYnJlYWs7RD1Waih2WzFdLmxlbmd0aD09MD8wOnBhcnNlSW50KHZbMV0sMTApLGtbMV0ubGVuZ3RoPT0wPzA6cGFyc2VJbnQoa1sxXSwxMCkpfHxWaih2WzJdLmxlbmd0aD09MCxrWzJdLmxlbmd0aD09MCl8fFZqKHZbMl0sa1syXSk7dj12WzNdO2s9a1szXX13aGlsZShEPT0wKX1yZXR1cm4gRH07ClZqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG48Vz8tMTpuPlc/MTowfTsKZU1yPWZ1bmN0aW9uKCl7dmFyIG49bnVsbDtpZighbmIpcmV0dXJuIG47dHJ5e2xldCBXPUQ9PkQ7Cm49bmIuY3JlYXRlUG9saWN5KCJnb29nI2h0bWwiLHtjcmVhdGVIVE1MOlcsY3JlYXRlU2NyaXB0OlcsY3JlYXRlU2NyaXB0VVJMOld9KX1jYXRjaChXKXt9cmV0dXJuIG59OwpEND1mdW5jdGlvbigpe1dNPT09dm9pZCAwJiYoV009ZU1yKCkpO3JldHVybiBXTX07CmszPWZ1bmN0aW9uKG4pe3ZhciBXPUQ0KCk7bj1XP1cuY3JlYXRlU2NyaXB0VVJMKG4pOm47cmV0dXJuIG5ldyBiXyhuKX07CngzPWZ1bmN0aW9uKG4pe2lmKG4gaW5zdGFuY2VvZiBiXylyZXR1cm4gbi5OO3Rocm93IEVycm9yKCIiKTt9Owpnej1mdW5jdGlvbihuKXtpZihuIGluc3RhbmNlb2YgZy5lailyZXR1cm4gbi5OO3Rocm93IEVycm9yKCIiKTt9OwpxVT1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IFhJKFc9Plcuc3Vic3RyKDAsbi5sZW5ndGgrMSkudG9Mb3dlckNhc2UoKT09PW4rIjoiKX07CmcudEY9ZnVuY3Rpb24obixXPWcuRzQpe2lmKG4gaW5zdGFuY2VvZiBnLmVqKXJldHVybiBuO2ZvcihsZXQgRD0wO0Q8Vy5sZW5ndGg7KytEKXtsZXQgYj1XW0RdO2lmKGIgaW5zdGFuY2VvZiBYSSYmYi5PVihuKSlyZXR1cm4gbmV3IGcuZWoobil9fTsKZy5yej1mdW5jdGlvbihuKXtpZihnMmoudGVzdChuKSlyZXR1cm4gbn07Cmcuc009ZnVuY3Rpb24obil7cmV0dXJuIG4gaW5zdGFuY2VvZiBnLmVqP2d6KG4pOmcucnoobil9OwpnLk5VPWZ1bmN0aW9uKG4sVyl7Vz1nLnNNKFcpO1chPT12b2lkIDAmJihuLmhyZWY9Vyl9OwpnLnBiPWZ1bmN0aW9uKG4sVz1gdW5leHBlY3RlZCB2YWx1ZSAke259IWApe3Rocm93IEVycm9yKFcpO307CmcuSE09ZnVuY3Rpb24obil7dmFyIFc9RDQoKTtuPVc/Vy5jcmVhdGVIVE1MKG4pOm47cmV0dXJuIG5ldyBnLlkzKG4pfTsKZy5mYj1mdW5jdGlvbihuKXtpZihuIGluc3RhbmNlb2YgZy5ZMylyZXR1cm4gbi5OO3Rocm93IEVycm9yKCIiKTt9OwpKRj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9d2luZG93O249Zy5zTShuKTtyZXR1cm4gbiE9PXZvaWQgMD9iLm9wZW4obixXLEQpOm51bGx9OwpTaj1mdW5jdGlvbihuPWRvY3VtZW50KXtuPW4ucXVlcnlTZWxlY3Rvcj8uKCJzY3JpcHRbbm9uY2VdIik7cmV0dXJuIG49PW51bGw/IiI6bi5ub25jZXx8bi5nZXRBdHRyaWJ1dGUoIm5vbmNlIil8fCIifTsKbWM9ZnVuY3Rpb24obil7dmFyIFc9RDQoKTtuPVc/Vy5jcmVhdGVTY3JpcHQobik6bjtyZXR1cm4gbmV3IEFGKG4pfTsKS2I9ZnVuY3Rpb24obil7aWYobiBpbnN0YW5jZW9mIEFGKXJldHVybiBuLk47dGhyb3cgRXJyb3IoIiIpO307Ck9NPWZ1bmN0aW9uKG4pe3ZhciBXPVNqKG4ub3duZXJEb2N1bWVudCk7VyYmbi5zZXRBdHRyaWJ1dGUoIm5vbmNlIixXKX07CmcuUE09ZnVuY3Rpb24obixXKXtuLnNyYz14MyhXKTtPTShuKX07CnF3dD1mdW5jdGlvbihuKXt2YXIgVz0idHJ1ZSIudG9TdHJpbmcoKSxEPVtYWnhgZGF0YS1gXTtpZihELmxlbmd0aD09PTApdGhyb3cgRXJyb3IoIiIpO2lmKEQubWFwKGI9PntpZihiIGluc3RhbmNlb2YgWjQpYj1iLk47ZWxzZSB0aHJvdyBFcnJvcigiIik7cmV0dXJuIGJ9KS5ldmVyeShiPT4iZGF0YS1sb2FkZWQiLmluZGV4T2YoYikhPT0wKSl0aHJvdyBFcnJvcignQXR0cmlidXRlICJkYXRhLWxvYWRlZCIgZG9lcyBub3QgbWF0Y2ggYW55IG9mIHRoZSBhbGxvd2VkIHByZWZpeGVzLicpOwpuLnNldEF0dHJpYnV0ZSgiZGF0YS1sb2FkZWQiLFcpfTsKZy5VTT1mdW5jdGlvbihuKXtyZXR1cm4gbltuLmxlbmd0aC0xXX07CmcueTI9ZnVuY3Rpb24obixXKXtBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKG4sVyx2b2lkIDApfTsKZy5FTT1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5maWx0ZXIuY2FsbChuLFcsRCl9OwpnLmlfPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5tYXAuY2FsbChuLFcsdm9pZCAwKX07CmcudV89ZnVuY3Rpb24obixXLEQpe3JldHVybiBBcnJheS5wcm90b3R5cGUucmVkdWNlLmNhbGwobixXLEQpfTsKZy5vTT1mdW5jdGlvbihuLFcpe3JldHVybiBBcnJheS5wcm90b3R5cGUuc29tZS5jYWxsKG4sVyx2b2lkIDApfTsKZy5kej1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5ldmVyeS5jYWxsKG4sVyxEKX07CmcubF89ZnVuY3Rpb24obixXKXtXPWcuejQobixXKTtyZXR1cm4gVzwwP251bGw6dHlwZW9mIG49PT0ic3RyaW5nIj9uLmNoYXJBdChXKTpuW1ddfTsKZy56ND1mdW5jdGlvbihuLFcsRCl7dmFyIGI9bi5sZW5ndGgsdj10eXBlb2Ygbj09PSJzdHJpbmciP24uc3BsaXQoIiIpOm47Zm9yKGxldCBrPTA7azxiO2srKylpZihrIGluIHYmJlcuY2FsbChELHZba10sayxuKSlyZXR1cm4gaztyZXR1cm4tMX07CmcuVDQ9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4ubGVuZ3RoLHY9dHlwZW9mIG49PT0ic3RyaW5nIj9uLnNwbGl0KCIiKTpuO2ZvcigtLWI7Yj49MDtiLS0paWYoYiBpbiB2JiZXLmNhbGwoRCx2W2JdLGIsbikpcmV0dXJuIGI7cmV0dXJuLTF9OwpnLmpqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5pbmRleE9mLmNhbGwobixXLHZvaWQgMCk+PTB9OwpnLkNiPWZ1bmN0aW9uKG4pe2lmKCFBcnJheS5pc0FycmF5KG4pKWZvcihsZXQgVz1uLmxlbmd0aC0xO1c+PTA7Vy0tKWRlbGV0ZSBuW1ddO24ubGVuZ3RoPTB9OwpnLkZJPWZ1bmN0aW9uKG4sVyl7Vz1BcnJheS5wcm90b3R5cGUuaW5kZXhPZi5jYWxsKG4sVyx2b2lkIDApO3ZhciBEOyhEPVc+PTApJiZnLkJNKG4sVyk7cmV0dXJuIER9OwpnLkJNPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5zcGxpY2UuY2FsbChuLFcsMSkubGVuZ3RoPT0xfTsKR2JpPWZ1bmN0aW9uKG4sVyl7Vz1nLno0KG4sVyk7Vz49MCYmZy5CTShuLFcpfTsKZy53ej1mdW5jdGlvbihuKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSxhcmd1bWVudHMpfTsKZy5STT1mdW5jdGlvbihuKXt2YXIgVz1uLmxlbmd0aDtpZihXPjApe2xldCBEPUFycmF5KFcpO2ZvcihsZXQgYj0wO2I8VztiKyspRFtiXT1uW2JdO3JldHVybiBEfXJldHVybltdfTsKZy5RMj1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRD0xO0Q8YXJndW1lbnRzLmxlbmd0aDtEKyspe2xldCBiPWFyZ3VtZW50c1tEXTtpZihnLlkyKGIpKXtsZXQgdj1uLmxlbmd0aHx8MCxrPWIubGVuZ3RofHwwO24ubGVuZ3RoPXYraztmb3IobGV0IGg9MDtoPGs7aCsrKW5bditoXT1iW2hdfWVsc2Ugbi5wdXNoKGIpfX07CmcuY009ZnVuY3Rpb24obixXLEQsYil7QXJyYXkucHJvdG90eXBlLnNwbGljZS5hcHBseShuLFYyKGFyZ3VtZW50cywxKSl9OwpWMj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg8PTI/QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwobixXKTpBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChuLFcsRCl9OwpnLlc0PWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gYU0obixEfHxucCwhMSxXKX07CkRlPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGFNKG4sVywhMCl9OwphTT1mdW5jdGlvbihuLFcsRCxiKXtmb3IodmFyIHY9MCxrPW4ubGVuZ3RoLGg7djxrOyl7bGV0IHg9disoay12Pj4+MSksTDtEP0w9Vy5jYWxsKHZvaWQgMCxuW3hdLHgsbik6TD1XKGIsblt4XSk7TD4wP3Y9eCsxOihrPXgsaD0hTCl9cmV0dXJuIGg/djotdi0xfTsKZy5iZj1mdW5jdGlvbihuLFcpe24uc29ydChXfHxucCl9Owp0VWg9ZnVuY3Rpb24obixXKXt2YXIgRD1ucDtnLmJmKG4sZnVuY3Rpb24oYix2KXtyZXR1cm4gRChXKGIpLFcodikpfSl9Owp2ND1mdW5jdGlvbihuLFcsRCl7aWYoIWcuWTIobil8fCFnLlkyKFcpfHxuLmxlbmd0aCE9Vy5sZW5ndGgpcmV0dXJuITE7dmFyIGI9bi5sZW5ndGg7RD1EfHwkaXg7Zm9yKGxldCB2PTA7djxiO3YrKylpZighRChuW3ZdLFdbdl0pKXJldHVybiExO3JldHVybiEwfTsKbnA9ZnVuY3Rpb24obixXKXtyZXR1cm4gbj5XPzE6bjxXPy0xOjB9OwokaXg9ZnVuY3Rpb24obixXKXtyZXR1cm4gbj09PVd9OwpnLmtsPWZ1bmN0aW9uKG4sVyxEKXtEPWcuVzQobixXLEQpO0Q8MCYmZy5jTShuLC0oRCsxKSwwLFcpfTsKaEE9ZnVuY3Rpb24obixXKXtuLl9fY2xvc3VyZV9fZXJyb3JfX2NvbnRleHRfXzk4NDM4Mnx8KG4uX19jbG9zdXJlX19lcnJvcl9fY29udGV4dF9fOTg0MzgyPXt9KTtuLl9fY2xvc3VyZV9fZXJyb3JfX2NvbnRleHRfXzk4NDM4Mi5zZXZlcml0eT1XfTsKcmliPWZ1bmN0aW9uKG4pe3ZhciBXPWcucnIoIndpbmRvdy5sb2NhdGlvbi5ocmVmIik7bj09bnVsbCYmKG49J1Vua25vd24gRXJyb3Igb2YgdHlwZSAibnVsbC91bmRlZmluZWQiJyk7aWYodHlwZW9mIG49PT0ic3RyaW5nIilyZXR1cm57bWVzc2FnZTpuLG5hbWU6IlVua25vd24gZXJyb3IiLGxpbmVOdW1iZXI6Ik5vdCBhdmFpbGFibGUiLGZpbGVOYW1lOlcsc3RhY2s6Ik5vdCBhdmFpbGFibGUifTt2YXIgRD0hMTt0cnl7dmFyIGI9bi5saW5lTnVtYmVyfHxuLmxpbmV8fCJOb3QgYXZhaWxhYmxlIn1jYXRjaChrKXtiPSJOb3QgYXZhaWxhYmxlIixEPSEwfXRyeXt2YXIgdj1uLmZpbGVOYW1lfHxuLmZpbGVuYW1lfHxuLnNvdXJjZVVSTHx8Zy5xaS4kZ29vZ0RlYnVnRm5hbWV8fFd9Y2F0Y2goayl7dj0iTm90IGF2YWlsYWJsZSIsRD0hMH1XPXhsKG4pO2lmKCEoIUQmJm4ubGluZU51bWJlciYmbi5maWxlTmFtZSYmbi5zdGFjayYmbi5tZXNzYWdlJiZuLm5hbWUpKXtEPW4ubWVzc2FnZTsKaWYoRD09bnVsbCl7aWYobi5jb25zdHJ1Y3RvciYmbi5jb25zdHJ1Y3RvciBpbnN0YW5jZW9mIEZ1bmN0aW9uKXtpZihuLmNvbnN0cnVjdG9yLm5hbWUpRD1uLmNvbnN0cnVjdG9yLm5hbWU7ZWxzZSBpZihEPW4uY29uc3RydWN0b3IsTHBbRF0pRD1McFtEXTtlbHNle0Q9U3RyaW5nKEQpO2lmKCFMcFtEXSl7bGV0IGs9L2Z1bmN0aW9uXHMrKFteXChdKykvbS5leGVjKEQpO0xwW0RdPWs/a1sxXToiW0Fub255bW91c10ifUQ9THBbRF19RD0nVW5rbm93biBFcnJvciBvZiB0eXBlICInK0QrJyInfWVsc2UgRD0iVW5rbm93biBFcnJvciBvZiB1bmtub3duIHR5cGUiO3R5cGVvZiBuLnRvU3RyaW5nPT09ImZ1bmN0aW9uIiYmT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyE9PW4udG9TdHJpbmcmJihEKz0iOiAiK24udG9TdHJpbmcoKSl9cmV0dXJue21lc3NhZ2U6RCxuYW1lOm4ubmFtZXx8IlVua25vd25FcnJvciIsbGluZU51bWJlcjpiLGZpbGVOYW1lOnYsc3RhY2s6V3x8Ik5vdCBhdmFpbGFibGUifX1yZXR1cm57bWVzc2FnZTpuLm1lc3NhZ2UsCm5hbWU6bi5uYW1lLGxpbmVOdW1iZXI6bi5saW5lTnVtYmVyLGZpbGVOYW1lOm4uZmlsZU5hbWUsc3RhY2s6V319Owp4bD1mdW5jdGlvbihuLFcpe1d8fChXPXt9KTtXW2UxKG4pXT0hMDt2YXIgRD1uLnN0YWNrfHwiIixiPW4uY2F1c2U7YiYmIVdbZTEoYildJiYoRCs9IlxuQ2F1c2VkIGJ5OiAiLGIuc3RhY2smJmIuc3RhY2suaW5kZXhPZihiLnRvU3RyaW5nKCkpPT0wfHwoRCs9dHlwZW9mIGI9PT0ic3RyaW5nIj9iOmIubWVzc2FnZSsiXG4iKSxEKz14bChiLFcpKTtuPW4uZXJyb3JzO2lmKEFycmF5LmlzQXJyYXkobikpe2I9MTtsZXQgdjtmb3Iodj0wO3Y8bi5sZW5ndGgmJiEoYj40KTt2KyspV1tlMShuW3ZdKV18fChEKz0iXG5Jbm5lciBlcnJvciAiK2IrKyArIjogIixuW3ZdLnN0YWNrJiZuW3ZdLnN0YWNrLmluZGV4T2Yoblt2XS50b1N0cmluZygpKT09MHx8KEQrPXR5cGVvZiBuW3ZdPT09InN0cmluZyI/blt2XTpuW3ZdLm1lc3NhZ2UrIlxuIiksRCs9eGwoblt2XSxXKSk7djxuLmxlbmd0aCYmKEQrPSJcbi4uLiAiKyhuLmxlbmd0aC12KSsiIG1vcmUgaW5uZXIgZXJyb3JzIil9cmV0dXJuIER9OwplMT1mdW5jdGlvbihuKXt2YXIgVz0iIjt0eXBlb2Ygbi50b1N0cmluZz09PSJmdW5jdGlvbiImJihXPSIiK24pO3JldHVybiBXK24uc3RhY2t9OwpnLmdUPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gbi5wYXJzZUZyb21TdHJpbmcoZy5mYihXKSxEKX07ClhNPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG5ldyBXb3JrZXIoeDMobiksVyl9OwpxaD1mdW5jdGlvbihuKXtyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhuKSl9OwpHNT1mdW5jdGlvbihuKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KG4ucmVwbGFjZSgvXCsvZywiICIpKX07CmcudEE9ZnVuY3Rpb24obil7c0NoLnRlc3QobikmJihuLmluZGV4T2YoIiYiKSE9LTEmJihuPW4ucmVwbGFjZShOcmgsIiZhbXA7IikpLG4uaW5kZXhPZigiPCIpIT0tMSYmKG49bi5yZXBsYWNlKHBadywiJmx0OyIpKSxuLmluZGV4T2YoIj4iKSE9LTEmJihuPW4ucmVwbGFjZShZd2ksIiZndDsiKSksbi5pbmRleE9mKCciJykhPS0xJiYobj1uLnJlcGxhY2UoSHRVLCImcXVvdDsiKSksbi5pbmRleE9mKCInIikhPS0xJiYobj1uLnJlcGxhY2UoZjFTLCImIzM5OyIpKSxuLmluZGV4T2YoIlx4MDAiKSE9LTEmJihuPW4ucmVwbGFjZShKaVosIiYjMDsiKSkpO3JldHVybiBufTsKZy5yVD1mdW5jdGlvbihuKXtyZXR1cm4gbj09bnVsbD8iIjpTdHJpbmcobil9OwpzVD1mdW5jdGlvbihuKXt2YXIgVz0wO2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7KytEKVc9MzEqVytuLmNoYXJDb2RlQXQoRCk+Pj4wO3JldHVybiBXfTsKZy5OaD1mdW5jdGlvbihuKXt2YXIgVz1OdW1iZXIobik7cmV0dXJuIFc9PTAmJmcuRmgobik/TmFOOld9OwpwcD1mdW5jdGlvbihuKXtyZXR1cm4gU3RyaW5nKG4pLnJlcGxhY2UoL1wtKFthLXpdKS9nLGZ1bmN0aW9uKFcsRCl7cmV0dXJuIEQudG9VcHBlckNhc2UoKX0pfTsKSTFpPWZ1bmN0aW9uKG4pe3JldHVybiBuLnJlcGxhY2UoUmVnRXhwKCIoXnxbXFxzXSspKFthLXpdKSIsImciKSxmdW5jdGlvbihXLEQsYil7cmV0dXJuIEQrYi50b1VwcGVyQ2FzZSgpfSl9OwpTd2g9ZnVuY3Rpb24obil7dmFyIFc9MTtuPW4uc3BsaXQoIjoiKTtmb3IodmFyIEQ9W107Vz4wJiZuLmxlbmd0aDspRC5wdXNoKG4uc2hpZnQoKSksVy0tO24ubGVuZ3RoJiZELnB1c2gobi5qb2luKCI6IikpO3JldHVybiBEfTsKZy5IND1mdW5jdGlvbihuLFcsRCxiLHYsayxoKXt2YXIgeD0iIjtuJiYoeCs9bisiOiIpO0QmJih4Kz0iLy8iLFcmJih4Kz1XKyJAIikseCs9RCxiJiYoeCs9IjoiK2IpKTt2JiYoeCs9dik7ayYmKHgrPSI/IitrKTtoJiYoeCs9IiMiK2gpO3JldHVybiB4fTsKZy5mcD1mdW5jdGlvbihuKXtyZXR1cm4gbi5tYXRjaChBaXIpfTsKSkE9ZnVuY3Rpb24obil7cmV0dXJuIG4/ZGVjb2RlVVJJKG4pOm59OwpnLklQPWZ1bmN0aW9uKG4pe3JldHVybiBKQShnLmZwKG4pWzNdfHxudWxsKX07ClMxPWZ1bmN0aW9uKG4pe3JldHVybiBKQShnLmZwKG4pWzVdfHxudWxsKX07CkFBPWZ1bmN0aW9uKG4pe249Zy5mcChuKTtyZXR1cm4gZy5INChuWzFdLG5bMl0sblszXSxuWzRdKX07Cm1XPWZ1bmN0aW9uKG4pe249Zy5mcChuKTtyZXR1cm4gZy5INChudWxsLG51bGwsbnVsbCxudWxsLG5bNV0sbls2XSxuWzddKX07CktwPWZ1bmN0aW9uKG4pe3ZhciBXPW4uaW5kZXhPZigiIyIpO3JldHVybiBXPDA/bjpuLnNsaWNlKDAsVyl9OwpnLk9UPWZ1bmN0aW9uKG4sVyl7aWYobil7bj1uLnNwbGl0KCImIik7Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKyspe2xldCBiPW5bRF0uaW5kZXhPZigiPSIpLHYsaz1udWxsO2I+PTA/KHY9bltEXS5zdWJzdHJpbmcoMCxiKSxrPW5bRF0uc3Vic3RyaW5nKGIrMSkpOnY9bltEXTtXKHYsaz9HNShrKToiIil9fX07ClA0PWZ1bmN0aW9uKG4sVyl7aWYoIVcpcmV0dXJuIG47dmFyIEQ9bi5pbmRleE9mKCIjIik7RDwwJiYoRD1uLmxlbmd0aCk7dmFyIGI9bi5pbmRleE9mKCI/Iik7aWYoYjwwfHxiPkQpe2I9RDt2YXIgdj0iIn1lbHNlIHY9bi5zdWJzdHJpbmcoYisxLEQpO249W24uc2xpY2UoMCxiKSx2LG4uc2xpY2UoRCldO0Q9blsxXTtuWzFdPVc/RD9EKyImIitXOlc6RDtyZXR1cm4gblswXSsoblsxXT8iPyIrblsxXToiIikrblsyXX07ClplPWZ1bmN0aW9uKG4sVyxEKXtpZihBcnJheS5pc0FycmF5KFcpKWZvcihsZXQgYj0wO2I8Vy5sZW5ndGg7YisrKVplKG4sU3RyaW5nKFdbYl0pLEQpO2Vsc2UgVyE9bnVsbCYmRC5wdXNoKG4rKFc9PT0iIj8iIjoiPSIrcWgoVykpKX07CnlHPWZ1bmN0aW9uKG4pe3ZhciBXPVtdO2ZvcihsZXQgRCBpbiBuKVplKEQsbltEXSxXKTtyZXR1cm4gVy5qb2luKCImIil9OwpnLkVUPWZ1bmN0aW9uKG4sVyl7Vz15RyhXKTtyZXR1cm4gUDQobixXKX07CmcudWY9ZnVuY3Rpb24obixXLEQpe0Q9RCE9bnVsbD8iPSIrcWgoRCk6IiI7cmV0dXJuIFA0KG4sVytEKX07CmcuZFQ9ZnVuY3Rpb24obixXLEQsYil7Zm9yKHZhciB2PUQubGVuZ3RoOyhXPW4uaW5kZXhPZihELFcpKT49MCYmVzxiOyl7dmFyIGs9bi5jaGFyQ29kZUF0KFctMSk7aWYoaz09Mzh8fGs9PTYzKWlmKGs9bi5jaGFyQ29kZUF0KFcrdiksIWt8fGs9PTYxfHxrPT0zOHx8az09MzUpcmV0dXJuIFc7Vys9disxfXJldHVybi0xfTsKZy5sZj1mdW5jdGlvbihuLFcpe3ZhciBEPW4uc2VhcmNoKGcuejUpLGI9Zy5kVChuLDAsVyxEKTtpZihiPDApcmV0dXJuIG51bGw7dmFyIHY9bi5pbmRleE9mKCImIixiKTtpZih2PDB8fHY+RCl2PUQ7Yis9Vy5sZW5ndGgrMTtyZXR1cm4gRzUobi5zbGljZShiLHYhPT0tMT92OjApKX07ClQ1PWZ1bmN0aW9uKG4sVyl7Zm9yKHZhciBEPW4uc2VhcmNoKGcuejUpLGI9MCx2LGs9W107KHY9Zy5kVChuLGIsVyxEKSk+PTA7KWsucHVzaChuLnN1YnN0cmluZyhiLHYpKSxiPU1hdGgubWluKG4uaW5kZXhPZigiJiIsdikrMXx8RCxEKTtrLnB1c2gobi5zbGljZShiKSk7cmV0dXJuIGsuam9pbigiIikucmVwbGFjZShtaTEsIiQxIil9OwpLUzE9ZnVuY3Rpb24obixXLEQpe3JldHVybiBnLnVmKFQ1KG4sVyksVyxEKX07CmcuQ3A9ZnVuY3Rpb24obil7biYmdHlwZW9mIG4uZGlzcG9zZT09ImZ1bmN0aW9uIiYmbi5kaXNwb3NlKCl9OwpnLkI0PWZ1bmN0aW9uKG4pe2ZvcihsZXQgVz0wLEQ9YXJndW1lbnRzLmxlbmd0aDtXPEQ7KytXKXtsZXQgYj1hcmd1bWVudHNbV107Zy5ZMihiKT9nLkI0LmFwcGx5KG51bGwsYik6Zy5DcChiKX19OwpnLkZNPWZ1bmN0aW9uKCl7dGhpcy5IRD10aGlzLkhEO3RoaXMuQlY9dGhpcy5CVn07CmcudT1mdW5jdGlvbihuLFcpe24uYWRkT25EaXNwb3NlQ2FsbGJhY2soZy5QWihnLkNwLFcpKX07CmcuTWg9ZnVuY3Rpb24obj0iYmV2YXNyc2ciKXtyZXR1cm4gbmV3IFByb21pc2UoVz0+e2lmKHdpbmRvdz09PXdpbmRvdy50b3ApdmFyIEQ9d2luZG93O2Vsc2V7dHJ5e0Q9ISF3aW5kb3c/LnRvcD8ubG9jYXRpb24uaHJlZiYmITF9Y2F0Y2godil7RD0hMH1EPUQ/d2luZG93OndpbmRvdy50b3B9dmFyIGI9RFtuXTtiPy5iZXZhc3JzP1cobmV3IHdUKGIuYmV2YXNycykpOihifHwoYj17bnFmYmVsOltdfSxEW25dPWIpLGIubnFmYmVsLnB1c2godj0+e1cobmV3IHdUKHYpKX0pKX0pfTsKUlA9ZnVuY3Rpb24obil7dmFyIFc9e2M6bi53XyxlOm4ueEMsbWM6bi5HcixtZTpuLkVSfTtuLmhHJiYoVy5jbz17YzpuLmhHLmFtLGE6bi5oRy5BQixzOm4uaEcucjN9KTtyZXR1cm4gV307Ck90aT1mdW5jdGlvbihuKXtuLkohPT12b2lkIDAmJihuLlcuZm9yRWFjaChXPT57bi5KPy5yZW1vdmVFdmVudExpc3RlbmVyKFcsbi5YKX0pLG4uSj12b2lkIDApfTsKWnRaPWFzeW5jIGZ1bmN0aW9uKG4pe2lmKCFuLk8xLndwYyl0aHJvdyBuZXcgUUcoMzAsIk5XQSIpO2lmKG4uTilyZXR1cm4gbi5OO3ZhciBXPWF3YWl0IG4uTzEud3BjKCk7bi5OPW5ldyBQeFMoVyk7cmV0dXJuIG4uTn07Cm4wPWZ1bmN0aW9uKG4pe3ZhciBXPVtdO1ZHKG4sYzQsNikuZm9yRWFjaChEPT57YVAoRCwyKTw9NTMmJlcucHVzaChhUChELDEpKX0pOwpyZXR1cm4gV307ClVpdz1mdW5jdGlvbihuKXt2YXIgVz1bXTtWRyhuLGM0LDYpLmZvckVhY2goRD0+e2FQKEQsMik+NTMmJlcucHVzaChhUChELDEpKX0pOwpyZXR1cm4gV307ClcyPWZ1bmN0aW9uKG4pe24udGhlbigoKT0+e30sKCk9Pnt9KX07CkRYPWZ1bmN0aW9uKG4pe3JldHVybntmaWVsZFR5cGU6MixmaWVsZE5hbWU6bn19OwpicD1mdW5jdGlvbihuKXtyZXR1cm57ZmllbGRUeXBlOjMsZmllbGROYW1lOm59fTsKa0s9ZnVuY3Rpb24obil7cmV0dXJuKHYyfHwodjI9bmV3IFRleHRFbmNvZGVyKSkuZW5jb2RlKG4pfTsKaDQ9ZnVuY3Rpb24obil7Zy5xaS5zZXRUaW1lb3V0KCgpPT57dGhyb3cgbjt9LDApfTsKeWl0PWZ1bmN0aW9uKG4pe3JldHVybiBBcnJheS5wcm90b3R5cGUubWFwLmNhbGwobixmdW5jdGlvbihXKXtXPVcudG9TdHJpbmcoMTYpO3JldHVybiBXLmxlbmd0aD4xP1c6IjAiK1d9KS5qb2luKCIiKX07CnhLPWZ1bmN0aW9uKG4pe3ZhciBXPVtdO2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7RCs9MilXLnB1c2gocGFyc2VJbnQobi5zdWJzdHJpbmcoRCxEKzIpLDE2KSk7cmV0dXJuIFd9OwpMMD1mdW5jdGlvbihuKXt2YXIgVz1bXSxEPTA7Zm9yKGxldCBiPTA7YjxuLmxlbmd0aDtiKyspe2xldCB2PW4uY2hhckNvZGVBdChiKTt2PDEyOD9XW0QrK109djoodjwyMDQ4P1dbRCsrXT12Pj42fDE5MjooKHYmNjQ1MTIpPT01NTI5NiYmYisxPG4ubGVuZ3RoJiYobi5jaGFyQ29kZUF0KGIrMSkmNjQ1MTIpPT01NjMyMD8odj02NTUzNisoKHYmMTAyMyk8PDEwKSsobi5jaGFyQ29kZUF0KCsrYikmMTAyMyksV1tEKytdPXY+PjE4fDI0MCxXW0QrK109dj4+MTImNjN8MTI4KTpXW0QrK109dj4+MTJ8MjI0LFdbRCsrXT12Pj42JjYzfDEyOCksV1tEKytdPXYmNjN8MTI4KX1yZXR1cm4gV307CmcuWFE9ZnVuY3Rpb24oKXt2YXIgbj1nLnFpLm5hdmlnYXRvcjtyZXR1cm4gbiYmKG49bi51c2VyQWdlbnQpP246IiJ9OwokSz1mdW5jdGlvbihuKXtpZighZy5xeCYmIWcuR2h8fCFnLnQ0KXJldHVybiExO2ZvcihsZXQgVz0wO1c8Zy50NC5icmFuZHMubGVuZ3RoO1crKyl7bGV0IHticmFuZDpEfT1nLnQ0LmJyYW5kc1tXXTtpZihEJiZELmluZGV4T2YobikhPS0xKXJldHVybiEwfXJldHVybiExfTsKZy5yVz1mdW5jdGlvbihuKXtyZXR1cm4gZy5YUSgpLmluZGV4T2YobikhPS0xfTsKc0E9ZnVuY3Rpb24oKXtyZXR1cm4gZy5xeHx8Zy5HaD8hIWcudDQmJmcudDQuYnJhbmRzLmxlbmd0aD4wOiExfTsKTng9ZnVuY3Rpb24oKXtyZXR1cm4gc0EoKT8hMTpnLnJXKCJPcGVyYSIpfTsKcDA9ZnVuY3Rpb24oKXtyZXR1cm4gZy5yVygiRmlyZWZveCIpfHxnLnJXKCJGeGlPUyIpfTsKZy5IMj1mdW5jdGlvbigpe3JldHVybiBnLnJXKCJTYWZhcmkiKSYmIShZSygpfHwoc0EoKT8wOmcuclcoIkNvYXN0IikpfHxOeCgpfHwoc0EoKT8wOmcuclcoIkVkZ2UiKSl8fChzQSgpPyRLKCJNaWNyb3NvZnQgRWRnZSIpOmcuclcoIkVkZy8iKSl8fChzQSgpPyRLKCJPcGVyYSIpOmcuclcoIk9QUiIpKXx8cDAoKXx8Zy5yVygiU2lsayIpfHxnLnJXKCJBbmRyb2lkIikpfTsKWUs9ZnVuY3Rpb24oKXtyZXR1cm4gc0EoKT8kSygiQ2hyb21pdW0iKTooZy5yVygiQ2hyb21lIil8fGcuclcoIkNyaU9TIikpJiYhKHNBKCk/MDpnLnJXKCJFZGdlIikpfHxnLnJXKCJTaWxrIil9OwpnLmYwPWZ1bmN0aW9uKCl7cmV0dXJuIGcucXh8fGcuR2g/ISFnLnQ0JiYhIWcudDQucGxhdGZvcm06ITF9Owp2YXIgRTJVPWZ1bmN0aW9uKG4sVyxELGIsdil7cmV0dXJuIEo0W0lbMTBdXSh0aGlzLDI1LDE4NjYsbixXLEQsYix2KX07CmcuSTI9ZnVuY3Rpb24oKXtyZXR1cm4gZy5mMCgpP2cudDQucGxhdGZvcm09PT0iQW5kcm9pZCI6Zy5yVygiQW5kcm9pZCIpfTsKU3U9ZnVuY3Rpb24oKXtyZXR1cm4gZy5yVygiaVBob25lIikmJiFnLnJXKCJpUG9kIikmJiFnLnJXKCJpUGFkIil9OwpnLkE0PWZ1bmN0aW9uKCl7cmV0dXJuIFN1KCl8fGcuclcoImlQYWQiKXx8Zy5yVygiaVBvZCIpfTsKZy5teD1mdW5jdGlvbigpe3JldHVybiBnLmYwKCk/Zy50NC5wbGF0Zm9ybT09PSJtYWNPUyI6Zy5yVygiTWFjaW50b3NoIil9OwpnLkswPWZ1bmN0aW9uKCl7cmV0dXJuIGcuZjAoKT9nLnQ0LnBsYXRmb3JtPT09IldpbmRvd3MiOmcuclcoIldpbmRvd3MiKX07CmcuT0E9ZnVuY3Rpb24obil7Zy5PQVsiICJdKG4pO3JldHVybiBufTsKdWhoPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9aXR4O3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoRCxuKT9EW25dOkRbbl09VyhuKX07CmcuWlg9ZnVuY3Rpb24obil7cmV0dXJuIHVoaChuLGZ1bmN0aW9uKCl7cmV0dXJuIGcuY1ooUDIsbik+PTB9KX07CmcuRUE9ZnVuY3Rpb24obixXKXtXPT09dm9pZCAwJiYoVz0wKTtVQSgpO1c9eWxbV107Zm9yKHZhciBEPUFycmF5KE1hdGguZmxvb3Iobi5sZW5ndGgvMykpLGI9V1s2NF18fCIiLHY9MCxrPTA7djxuLmxlbmd0aC0yO3YrPTMpe3ZhciBoPW5bdl0seD1uW3YrMV0sTD1uW3YrMl0sZT1XW2g+PjJdO2g9V1soaCYzKTw8NHx4Pj40XTt4PVdbKHgmMTUpPDwyfEw+PjZdO0w9V1tMJjYzXTtEW2srK109IiIrZStoK3grTH1lPTA7TD1iO3N3aXRjaChuLmxlbmd0aC12KXtjYXNlIDI6ZT1uW3YrMV0sTD1XWyhlJjE1KTw8Ml18fGI7Y2FzZSAxOm49blt2XSxEW2tdPSIiK1dbbj4+Ml0rV1sobiYzKTw8NHxlPj40XStMK2J9cmV0dXJuIEQuam9pbigiIil9Owp2YXIgbzJqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGlwW0lbMTBdXSh0aGlzLDEsMTcwOCxuLFcpfTsKZy51cD1mdW5jdGlvbihuLFcsRCl7aWYoVyl7bGV0IGI9W10sdj0wO2ZvcihsZXQgaz0wO2s8bi5sZW5ndGg7aysrKXtsZXQgaD1uLmNoYXJDb2RlQXQoayk7aWYoaD4yNTUpe2xldCB4PUVycm9yKCJnby91bmljb2RlLXRvLWJ5dGUtZXJyb3IiKTtpZihEKXRocm93IHg7Ylt2KytdPWgmMjU1O2g+Pj04fWJbdisrXT1ofW49Zy5FQShiLFcpfWVsc2Ugbj1nLnFpLmJ0b2Eobik7cmV0dXJuIG59Owp6aD1mdW5jdGlvbihuKXt2YXIgVz1bXTtvMihuLGZ1bmN0aW9uKEQpe1cucHVzaChEKX0pOwpyZXR1cm4gV307CmxwPWZ1bmN0aW9uKG4pe3ZhciBXPW4ubGVuZ3RoLEQ9VyozLzQ7RCUzP0Q9TWF0aC5mbG9vcihEKToiPS4iLmluZGV4T2YobltXLTFdKSE9LTEmJihEPSI9LiIuaW5kZXhPZihuW1ctMl0pIT0tMT9ELTI6RC0xKTt2YXIgYj1uZXcgVWludDhBcnJheShEKSx2PTA7bzIobixmdW5jdGlvbihrKXtiW3YrK109a30pOwpyZXR1cm4gdiE9PUQ/Yi5zdWJhcnJheSgwLHYpOmJ9OwpvMj1mdW5jdGlvbihuLFcpe2Z1bmN0aW9uIEQodil7Zm9yKDtiPG4ubGVuZ3RoOyl7bGV0IGs9bi5jaGFyQXQoYisrKSxoPVRoW2tdO2lmKGghPW51bGwpcmV0dXJuIGg7aWYoIWcuRmgoaykpdGhyb3cgRXJyb3IoIlVua25vd24gYmFzZTY0IGVuY29kaW5nIGF0IGNoYXI6ICIrayk7fXJldHVybiB2fQpVQSgpO2Zvcih2YXIgYj0wOzspe2xldCB2PUQoLTEpLGs9RCgwKSxoPUQoNjQpLHg9RCg2NCk7aWYoeD09PTY0JiZ2PT09LTEpYnJlYWs7Vyh2PDwyfGs+PjQpO2ghPTY0JiYoVyhrPDw0JjI0MHxoPj4yKSx4IT02NCYmVyhoPDw2JjE5Mnx4KSl9fTsKVUE9ZnVuY3Rpb24oKXtpZighVGgpe1RoPXt9O3ZhciBuPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSIuc3BsaXQoIiIpLFc9WyIrLz0iLCIrLyIsIi1fPSIsIi1fLiIsIi1fIl07Zm9yKGxldCBEPTA7RDw1O0QrKyl7bGV0IGI9bi5jb25jYXQoV1tEXS5zcGxpdCgiIikpO3lsW0RdPWI7Zm9yKGxldCB2PTA7djxiLmxlbmd0aDt2Kyspe2xldCBrPWJbdl07VGhba109PT12b2lkIDAmJihUaFtrXT12KX19fX07CnpNMj1mdW5jdGlvbihuKXtyZXR1cm4gZGlVW25dfHwiIn07CkMwPWZ1bmN0aW9uKG4pe249anUudGVzdChuKT9uLnJlcGxhY2UoanUsek0yKTpuO249YXRvYihuKTt2YXIgVz1uZXcgVWludDhBcnJheShuLmxlbmd0aCk7Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKyspV1tEXT1uLmNoYXJDb2RlQXQoRCk7cmV0dXJuIFd9OwpNeD1mdW5jdGlvbigpe3JldHVybiBCMnx8KEIyPW5ldyBGUShudWxsLHdXKSl9OwpRbD1mdW5jdGlvbihuKXtSMih3Vyk7dmFyIFc9bi5OO1c9Vz09bnVsbHx8VyE9bnVsbCYmVyBpbnN0YW5jZW9mIFVpbnQ4QXJyYXk/Vzp0eXBlb2YgVz09PSJzdHJpbmciP0MwKFcpOm51bGw7cmV0dXJuIFc9PW51bGw/VzpuLk49V307ClZsPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgVWludDhBcnJheShRbChuKXx8MCl9OwpSMj1mdW5jdGlvbihuKXtpZihuIT09d1cpdGhyb3cgRXJyb3IoImlsbGVnYWwgZXh0ZXJuYWwgY2FsbGVyIik7fTsKYzI9ZnVuY3Rpb24obil7bj1FcnJvcihuKTtoQShuLCJ3YXJuaW5nIik7cmV0dXJuIG59OwpuNT1mdW5jdGlvbihuLFcpe2lmKG4hPW51bGwpe3ZhciBEPWEyPz8oYTI9e30pO3ZhciBiPURbbl18fDA7Yj49V3x8KERbbl09YisxLG49RXJyb3IoKSxoQShuLCJpbmNpZGVudCIpLGg0KG4pKX19OwpXOT1mdW5jdGlvbihuLFc9ITEpe3JldHVybiBXJiZTeW1ib2wuZm9yJiZuP1N5bWJvbC5mb3Iobik6biE9bnVsbD9TeW1ib2wobik6U3ltYm9sKCl9Owp2OT1mdW5jdGlvbihuLFcpe3JldHVybiBXPT09dm9pZCAwP24uTiE9PURCJiYhISgyJihuLmw5W2I0XXwwKSk6ISEoMiZXKSYmbi5OIT09REJ9OwprVT1mdW5jdGlvbihuLFcpe2lmKG4hPW51bGwpaWYodHlwZW9mIG49PT0ic3RyaW5nIiluPW4/bmV3IEZRKG4sd1cpOk14KCk7ZWxzZSBpZihuLmNvbnN0cnVjdG9yIT09RlEpaWYobiE9bnVsbCYmbiBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpbj1uLmxlbmd0aD9uZXcgRlEobmV3IFVpbnQ4QXJyYXkobiksd1cpOk14KCk7ZWxzZXtpZighVyl0aHJvdyBFcnJvcigpO249dm9pZCAwfXJldHVybiBufTsKaF89ZnVuY3Rpb24obixXLEQpe3ZhciBiPVcmMTI4PzA6LTEsdj1uLmxlbmd0aCxrO2lmKGs9ISF2KWs9blt2LTFdLGs9ayE9bnVsbCYmdHlwZW9mIGs9PT0ib2JqZWN0IiYmay5jb25zdHJ1Y3Rvcj09PU9iamVjdDt2YXIgaD12KyhrPy0xOjApO2ZvcihXPVcmMTI4PzE6MDtXPGg7VysrKUQoVy1iLG5bV10pO2lmKGspe249blt2LTFdO2ZvcihsZXQgeCBpbiBuKSFpc05hTih4KSYmRCgreCxuW3hdKX19OwpMNT1mdW5jdGlvbihuKXtyZXR1cm4gbiYxMjg/eFU6dm9pZCAwfTsKWEQ9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVdebjtpZihuLTY+PjM9PTIpeyhEW2JeNTE4XT49LShiXjU1MSl8fCgoMCxEW2JeNTE1XSkoRFtiXjUyMV0sRFtiXjYwOV0pLDApKSYmKDAsRFtiXjU2M10pKERbYl42MDldKTsoMCxEWzZdKSgpOygoMCxEW2JeNTMzXSkoRFtiXjU3NF0sRFtiXjU3Ml0pLERbYl41MzNdKShEW2JeNTM4XSxEW2JeNTcyXSk7dmFyIHY9W119aWYoKG4mMTIwKT09bil0aHJvdyBEO2lmKG4tNzw8MjxuJiYobi00fDMxKT49bil7Zm9yKHZhciBrPWJeMzE1NCxoPVtdOysray1oW0lbNV1dLShiXjMxMjIpOylzd2l0Y2goayl7Y2FzZSBiXjMxMzI6az1iXjMxNDk7ZGVmYXVsdDpoW0lbYl4zMDc2XV0oU3RyaW5nW0lbYl4zMTA0XV0oaykpO2Nhc2UgYl4zMTQ4OmNhc2UgYl4zMTQ5OmNhc2UgYl4zMTg2OmJyZWFrO2Nhc2UgYl4zMTc3OmstPWJeMzE2NjtjYXNlIGJeMzE1MDpjYXNlIGJeMzE1MTpjb250aW51ZTtjYXNlIGJeMzExMjprPWJeMzEzNDtjYXNlIGJeMzE0NTp9dj0KaH0obnw1Nik9PW4mJihlWChiXjQ1MDksYl4zNTE4LEQpLChrPURbSVsxXV1bSVtiXjQ0OTRdXXx8bnVsbCkmJihrPWdaKDIsYl4yMjE3LGssRCkpLHY9W10pO3JldHVybiB2fTsKcTM9ZnVuY3Rpb24obil7bi5URj0hMDtyZXR1cm4gbn07CmcuJFU9ZnVuY3Rpb24obil7aWYoKDAsZy5HOSkobikpe2lmKCEvXlxzKig/Oi0/WzEtOV1cZCp8MCk/XHMqJC8udGVzdChuKSl0aHJvdyBFcnJvcihTdHJpbmcobikpO31lbHNlIGlmKCgwLGcudF8pKG4pJiYhTnVtYmVyLmlzU2FmZUludGVnZXIobikpdGhyb3cgRXJyb3IoU3RyaW5nKG4pKTtyZXR1cm4gQmlnSW50KG4pfTsKTjM9ZnVuY3Rpb24obil7dmFyIFc9bj4+PjA7clo9VztzXz0obi1XKS80Mjk0OTY3Mjk2Pj4+MH07CnA1PWZ1bmN0aW9uKG4pe2lmKG48MCl7TjMoMC1uKTtuPXJaO3ZhciBXPXNfO1c9flc7bj9uPX5uKzE6Vys9MTtsZXQgW0QsYl09W24sV107clo9RD4+PjA7c189Yj4+PjB9ZWxzZSBOMyhuKX07Ckg5PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Vyo0Mjk0OTY3Mjk2KyhuPj4+MCk7cmV0dXJuIE51bWJlci5pc1NhZmVJbnRlZ2VyKEQpP0Q6WVUobixXKX07CmY1PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGcuJFUoQmlnSW50LmFzVWludE4oNjQsKEJpZ0ludChXPj4+MCk8PEJpZ0ludCgzMikpK0JpZ0ludChuPj4+MCkpKX07CmcuSl89ZnVuY3Rpb24obixXKXtyZXR1cm4gZy4kVShCaWdJbnQuYXNJbnROKDY0LChCaWdJbnQuYXNVaW50TigzMixCaWdJbnQoVykpPDxCaWdJbnQoMzIpKStCaWdJbnQuYXNVaW50TigzMixCaWdJbnQobikpKSl9OwpZVT1mdW5jdGlvbihuLFcpe1c+Pj49MDtuPj4+PTA7dmFyIEQ7Vzw9MjA5NzE1MT9EPSIiKyg0Mjk0OTY3Mjk2Klcrbik6RD0iIisoQmlnSW50KFcpPDxCaWdJbnQoMzIpfEJpZ0ludChuKSk7cmV0dXJuIER9OwpJMD1mdW5jdGlvbigpe3ZhciBuPXJaLFc9c18sRDtXJjIxNDc0ODM2NDg/RD0iIisoQmlnSW50KFd8MCk8PEJpZ0ludCgzMil8QmlnSW50KG4+Pj4wKSk6RD1ZVShuLFcpO3JldHVybiBEfTsKU1g9ZnVuY3Rpb24obil7bi5sZW5ndGg8MTY/cDUoTnVtYmVyKG4pKToobj1CaWdJbnQobiksclo9TnVtYmVyKG4mQmlnSW50KDQyOTQ5NjcyOTUpKT4+PjAsc189TnVtYmVyKG4+PkJpZ0ludCgzMikmQmlnSW50KDQyOTQ5NjcyOTUpKSl9OwpnLkFfPWZ1bmN0aW9uKG4pe2lmKG4hPW51bGwmJnR5cGVvZiBuIT09Im51bWJlciIpdGhyb3cgRXJyb3IoYFZhbHVlIG9mIGZsb2F0L2RvdWJsZSBmaWVsZCBtdXN0IGJlIGEgbnVtYmVyLCBmb3VuZCAke3R5cGVvZiBufTogJHtufWApO3JldHVybiBufTsKbTA9ZnVuY3Rpb24obil7aWYobj09bnVsbHx8dHlwZW9mIG49PT0ibnVtYmVyIilyZXR1cm4gbjtpZihuPT09Ik5hTiJ8fG49PT0iSW5maW5pdHkifHxuPT09Ii1JbmZpbml0eSIpcmV0dXJuIE51bWJlcihuKX07Cks1PWZ1bmN0aW9uKG4pe3JldHVybiBuLmRpc3BsYXlOYW1lfHxuLm5hbWV8fCJ1bmtub3duIHR5cGUgbmFtZSJ9OwpPXz1mdW5jdGlvbihuKXtpZihuIT1udWxsJiZ0eXBlb2YgbiE9PSJib29sZWFuIil0aHJvdyBFcnJvcihgRXhwZWN0ZWQgYm9vbGVhbiBidXQgZ290ICR7cHQobil9OiAke259YCk7cmV0dXJuIG59OwpaQj1mdW5jdGlvbihuKXtzd2l0Y2godHlwZW9mIG4pe2Nhc2UgImJpZ2ludCI6cmV0dXJuITA7Y2FzZSAibnVtYmVyIjpyZXR1cm4gUDkobik7Y2FzZSAic3RyaW5nIjpyZXR1cm4gbDEyLnRlc3Qobik7ZGVmYXVsdDpyZXR1cm4hMX19OwpVXz1mdW5jdGlvbihuKXtpZih0eXBlb2YgbiE9PSJudW1iZXIiKXRocm93IGMyKCJpbnQzMiIpO2lmKCFQOShuKSl0aHJvdyBjMigiaW50MzIiKTtyZXR1cm4gbnwwfTsKZy55UD1mdW5jdGlvbihuKXtyZXR1cm4gbj09bnVsbD9uOlVfKG4pfTsKRV89ZnVuY3Rpb24obil7aWYobj09bnVsbClyZXR1cm4gbjtpZih0eXBlb2Ygbj09PSJzdHJpbmciJiZuKW49K247ZWxzZSBpZih0eXBlb2YgbiE9PSJudW1iZXIiKXJldHVybjtyZXR1cm4gUDkobik/bnwwOnZvaWQgMH07CnU0PWZ1bmN0aW9uKG4pe2lmKG49PW51bGwpcmV0dXJuIG47aWYodHlwZW9mIG49PT0ic3RyaW5nIiYmbiluPStuO2Vsc2UgaWYodHlwZW9mIG4hPT0ibnVtYmVyIilyZXR1cm47cmV0dXJuIFA5KG4pP24+Pj4wOnZvaWQgMH07CmcubDQ9ZnVuY3Rpb24obil7aWYobiE9bnVsbClhOntpZighWkIobikpdGhyb3cgYzIoImludDY0Iik7c3dpdGNoKHR5cGVvZiBuKXtjYXNlICJzdHJpbmciOm49bzAobik7YnJlYWsgYTtjYXNlICJiaWdpbnQiOm49Zy4kVShkWig2NCxuKSk7YnJlYWsgYTtkZWZhdWx0Om49ejkobil9fXJldHVybiBufTsKQzU9ZnVuY3Rpb24obil7WkIobik7bj1UOShuKTtpZighalgobikpe3A1KG4pO3ZhciBXPXJaLEQ9c187aWYobj1EJjIxNDc0ODM2NDgpVz1+VysxPj4+MCxEPX5EPj4+MCxXPT0wJiYoRD1EKzE+Pj4wKTtXPUg5KFcsRCk7bj10eXBlb2YgVz09PSJudW1iZXIiP24/LVc6VzpuPyItIitXOld9cmV0dXJuIG59OwpCOT1mdW5jdGlvbihuKXtaQihuKTt2YXIgVz1UOShOdW1iZXIobikpO2lmKGpYKFcpKXJldHVybiBTdHJpbmcoVyk7Vz1uLmluZGV4T2YoIi4iKTtXIT09LTEmJihuPW4uc3Vic3RyaW5nKDAsVykpO1c9bi5sZW5ndGg7KG5bMF09PT0iLSI/VzwyMHx8Vz09PTIwJiZuPD0iLTkyMjMzNzIwMzY4NTQ3NzU4MDgiOlc8MTl8fFc9PT0xOSYmbjw9IjkyMjMzNzIwMzY4NTQ3NzU4MDciKXx8KFNYKG4pLG49STAoKSk7cmV0dXJuIG59OwpvMD1mdW5jdGlvbihuKXt2YXIgVz1UOShOdW1iZXIobikpO2lmKGpYKFcpKXJldHVybiBnLiRVKFcpO1c9bi5pbmRleE9mKCIuIik7VyE9PS0xJiYobj1uLnN1YnN0cmluZygwLFcpKTtyZXR1cm4gZy4kVShkWig2NCxCaWdJbnQobikpKX07Cno5PWZ1bmN0aW9uKG4pe2pYKG4pP249Zy4kVShDNShuKSk6KFpCKG4pLG49VDkobiksalgobik/bj1TdHJpbmcobik6KHA1KG4pLG49STAoKSksbj1nLiRVKG4pKTtyZXR1cm4gbn07CkZEPWZ1bmN0aW9uKG4pe3ZhciBXPXR5cGVvZiBuO2lmKG49PW51bGwpcmV0dXJuIG47aWYoVz09PSJiaWdpbnQiKXJldHVybiBnLiRVKGRaKDY0LG4pKTtpZihaQihuKSlyZXR1cm4gVz09PSJzdHJpbmciP28wKG4pOno5KG4pfTsKakNoPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PVtdO2ZvcihsZXQgeCBvZiBEKXtpZigheC51cmwpY29udGludWU7RD1uZXcgZy53Wih4LnVybCwhMCk7aWYoeC5zKXt2YXIgaz1ELGg9eC5zcDtsZXQgTD1lWCg4Myw2NTU4LE0zKDE3LDQyNjMseC5zKSk7a1tJWzM0XV0oaCxSMCgyOSw4NzMyLEwpKX1mb3IobGV0IEwgb2YgT2JqZWN0LmtleXMoYikpRC5zZXQoTCxiW0xdKTtrPVFQKHgudHlwZSx4LnF1YWxpdHkseC5pdGFnLHgud2lkdGgseC5oZWlnaHQpO3YucHVzaChuZXcgVHJ3KGssRCkpfXJldHVybiBWUChuLlcsdixjOShuLFcpLCExKX07CkN4TT1mdW5jdGlvbihuKXtpZihuPT1udWxsKXJldHVybiBuO3ZhciBXPXR5cGVvZiBuO2lmKFc9PT0iYmlnaW50IilyZXR1cm4gU3RyaW5nKGRaKDY0LG4pKTtpZihaQihuKSl7aWYoVz09PSJzdHJpbmciKXJldHVybiBCOShuKTtpZihXPT09Im51bWJlciIpcmV0dXJuIEM1KG4pfX07CmEwPWZ1bmN0aW9uKG4pe2lmKG49PW51bGwpcmV0dXJuIG47dmFyIFc9dHlwZW9mIG47aWYoVz09PSJiaWdpbnQiKXJldHVybiBTdHJpbmcoQnJoKDY0LG4pKTtpZihaQihuKSl7aWYoVz09PSJzdHJpbmciKXJldHVybiBaQihuKSxXPVQ5KE51bWJlcihuKSksalgoVykmJlc+PTA/bj1TdHJpbmcoVyk6KFc9bi5pbmRleE9mKCIuIiksVyE9PS0xJiYobj1uLnN1YnN0cmluZygwLFcpKSxuWzBdPT09Ii0iP1c9ITE6KFc9bi5sZW5ndGgsVz1XPDIwPyEwOlc9PT0yMCYmbjw9IjE4NDQ2NzQ0MDczNzA5NTUxNjE1IiksV3x8KFNYKG4pLG49WVUoclosc18pKSksbjtpZihXPT09Im51bWJlciIpcmV0dXJuIFpCKG4pLG49VDkobiksbj49MCYmalgobil8fChwNShuKSxuPUg5KHJaLHNfKSksbn19OwpuRz1mdW5jdGlvbihuKXtpZihuPT1udWxsfHx0eXBlb2Ygbj09InN0cmluZyJ8fG4gaW5zdGFuY2VvZiBGUSlyZXR1cm4gbn07CkZTMj1mdW5jdGlvbihuKXtpZih0eXBlb2YgbiE9PSJzdHJpbmciKXRocm93IEVycm9yKCk7cmV0dXJuIG59OwpXSD1mdW5jdGlvbihuKXtpZihuIT1udWxsJiZ0eXBlb2YgbiE9PSJzdHJpbmciKXRocm93IEVycm9yKCk7cmV0dXJuIG59OwpnLkRSPWZ1bmN0aW9uKG4pe3JldHVybiBuPT1udWxsfHx0eXBlb2Ygbj09PSJzdHJpbmciP246dm9pZCAwfTsKYlc9ZnVuY3Rpb24obixXKXtpZighKG4gaW5zdGFuY2VvZiBXKSl0aHJvdyBFcnJvcihgRXhwZWN0ZWQgaW5zdGFuY2VvZiAke0s1KFcpfSBidXQgZ290ICR7biYmSzUobi5jb25zdHJ1Y3Rvcil9YCk7cmV0dXJuIG59Owpodj1mdW5jdGlvbihuLFcsRCl7aWYobiE9bnVsbCYmblt2SF09PT1rdilyZXR1cm4gbjtpZihBcnJheS5pc0FycmF5KG4pKXt2YXIgYj1uW2I0XXwwO0Q9YnxEJjMyfEQmMjtEIT09YiYmKG5bYjRdPUQpO3JldHVybiBuZXcgVyhuKX19Owp4dj1mdW5jdGlvbihuKXtyZXR1cm4gbn07CmVXPWZ1bmN0aW9uKG4pe3ZhciBXPUV3KExHKTtyZXR1cm4gVz9uW1ddOnZvaWQgMH07CmdnPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIGluIG4pIWlzTmFOKEQpJiZXKG4sK0QsbltEXSl9Owp3WkM9ZnVuY3Rpb24obil7dmFyIFc9bmV3IFhGO2dnKG4sKEQsYix2KT0+e1dbYl09Wy4uLnZdfSk7Clcuajc9bi5qNztyZXR1cm4gV307Ckd6PWZ1bmN0aW9uKG4sVyl7aWYoRXcocUUpJiZFdyhMRykmJnZvaWQgMD09PXFFKXtuPW4ubDk7dmFyIEQ9bltMR107aWYoRCYmKEQ9RC5qNykpdHJ5e0QobixXLE1VaSl9Y2F0Y2goYil7aDQoYil9fX07CnR2PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9RXcoTEcpO0QmJm5bRF0/LltXXSE9bnVsbCYmbjUoUk1iLDMpfTsKVlVTPWZ1bmN0aW9uKG4sVyl7VzwxMDB8fG41KFFDaSwxKX07CnJnPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PWIhPT12b2lkIDA7Yj0hIWI7dmFyIGs9RXcoTEcpLGg7IXYmJmsmJihoPW5ba10pJiZnZyhoLFZVUyk7az1bXTt2YXIgeD1uLmxlbmd0aDtoPTQyOTQ5NjcyOTU7dmFyIEw9ITEsZT0hIShXJjY0KSxHPWU/VyYxMjg/MDotMTp2b2lkIDA7aWYoIShXJjEpKXt2YXIgcj14JiZuW3gtMV07ciE9bnVsbCYmdHlwZW9mIHI9PT0ib2JqZWN0IiYmci5jb25zdHJ1Y3Rvcj09PU9iamVjdD8oeC0tLGg9eCk6cj12b2lkIDA7IWV8fFcmMTI4fHx2fHwoTD0hMCxoPSgkdj8/eHYpKGgtRyxHLG4scix2b2lkIDApK0cpfVc9dm9pZCAwO2Zvcih2YXIgTj0wO048eDtOKyspe2xldCBIPW5bTl07aWYoSCE9bnVsbCYmKEg9RChILGIpKSE9bnVsbClpZihlJiZOPj1oKXtsZXQgQT1OLUc7KFc/PyhXPXt9KSlbQV09SH1lbHNlIGtbTl09SH1pZihyKWZvcihsZXQgSCBpbiByKXt4PXJbSF07aWYoeD09bnVsbHx8KHg9RCh4LGIpKT09bnVsbCljb250aW51ZTtOPQorSDtsZXQgQTtlJiYhTnVtYmVyLmlzTmFOKE4pJiYoQT1OK0cpPGg/a1tBXT14OihXPz8oVz17fSkpW0hdPXh9VyYmKEw/ay5wdXNoKFcpOmtbaF09Vyk7diYmRXcoTEcpJiYobj1lVyhuKSkmJm4gaW5zdGFuY2VvZiBYRiYmKGtbTEddPXdaQyhuKSk7cmV0dXJuIGt9OwpORT1mdW5jdGlvbihuKXtzd2l0Y2godHlwZW9mIG4pe2Nhc2UgIm51bWJlciI6cmV0dXJuIE51bWJlci5pc0Zpbml0ZShuKT9uOiIiK247Y2FzZSAiYmlnaW50IjpyZXR1cm4gc0sobik/TnVtYmVyKG4pOiIiK247Y2FzZSAiYm9vbGVhbiI6cmV0dXJuIG4/MTowO2Nhc2UgIm9iamVjdCI6aWYoQXJyYXkuaXNBcnJheShuKSl7dmFyIFc9bltiNF18MDtyZXR1cm4gbi5sZW5ndGg9PT0wJiZXJjE/dm9pZCAwOnJnKG4sVyxORSl9aWYobiE9bnVsbCYmblt2SF09PT1rdilyZXR1cm4gcEcobik7aWYobiBpbnN0YW5jZW9mIEZRKXtXPW4uTjtpZihXPT1udWxsKW49IiI7ZWxzZSBpZih0eXBlb2YgVz09PSJzdHJpbmciKW49VztlbHNle2xldCBEPSIiLGI9MCx2PVcubGVuZ3RoLTEwMjQwO2Zvcig7Yjx2OylEKz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsVy5zdWJhcnJheShiLGIrPTEwMjQwKSk7RCs9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLGI/Vy5zdWJhcnJheShiKToKVyk7Vz1idG9hKEQpO249bi5OPVd9cmV0dXJuIG59cmV0dXJufXJldHVybiBufTsKWXY9ZnVuY3Rpb24obixXKXtpZihXKXskdj1XPT1udWxsfHxXPT09eHZ8fFdbY2lVXSE9PWExVT94djpXO3RyeXtyZXR1cm4gcEcobil9ZmluYWxseXskdj12b2lkIDB9fXJldHVybiBwRyhuKX07CnBHPWZ1bmN0aW9uKG4pe249bi5sOTtyZXR1cm4gcmcobixuW2I0XXwwLE5FKX07Cm4zMj1mdW5jdGlvbihuKXtzd2l0Y2godHlwZW9mIG4pe2Nhc2UgImJvb2xlYW4iOnJldHVybiBISHx8KEhIPVswLHZvaWQgMCwhMF0pO2Nhc2UgIm51bWJlciI6cmV0dXJuIG4+MD92b2lkIDA6bj09PTA/Zkd8fChmRz1bMCx2b2lkIDBdKTpbLW4sdm9pZCAwXTtjYXNlICJzdHJpbmciOnJldHVyblswLG5dO2Nhc2UgIm9iamVjdCI6cmV0dXJuIG59fTsKU1c9ZnVuY3Rpb24obixXKXtyZXR1cm4gSnYobixXWzBdLFdbMV0pfTsKSnY9ZnVuY3Rpb24obixXLEQsYj0wKXtpZihuPT1udWxsKXt2YXIgdj0zMjtEPyhuPVtEXSx2fD0xMjgpOm49W107VyYmKHY9diYtMTY3NjA4MzN8KFcmMTAyMyk8PDE0KX1lbHNle2lmKCFBcnJheS5pc0FycmF5KG4pKXRocm93IEVycm9yKCJuYXJyIik7dj1uW2I0XXwwO2lmKEF2JiYxJnYpdGhyb3cgRXJyb3IoInJmYXJyIik7MjA0OCZ2JiYhKDImdikmJldjcigpO2lmKHYmMjU2KXRocm93IEVycm9yKCJmYXJyIik7aWYodiY2NClyZXR1cm4odnxiKSE9PXYmJihuW2I0XT12fGIpLG47aWYoRCYmKHZ8PTEyOCxEIT09blswXSkpdGhyb3cgRXJyb3IoIm1pZCIpO2E6e0Q9bjt2fD02NDt2YXIgaz1ELmxlbmd0aDtpZihrKXt2YXIgaD1rLTE7bGV0IEw9RFtoXTtpZihMIT1udWxsJiZ0eXBlb2YgTD09PSJvYmplY3QiJiZMLmNvbnN0cnVjdG9yPT09T2JqZWN0KXtXPXYmMTI4PzA6LTE7aC09VztpZihoPj0xMDI0KXRocm93IEVycm9yKCJwdnRsbXQiKTtmb3IodmFyIHggaW4gTClpZihrPQoreCxrPGgpRFtrK1ddPUxbeF0sZGVsZXRlIExbeF07ZWxzZSBicmVhazt2PXYmLTE2NzYwODMzfChoJjEwMjMpPDwxNDticmVhayBhfX1pZihXKXt4PU1hdGgubWF4KFcsay0odiYxMjg/MDotMSkpO2lmKHg+MTAyNCl0aHJvdyBFcnJvcigic3B2dCIpO3Y9diYtMTY3NjA4MzN8KHgmMTAyMyk8PDE0fX19bltiNF09dnw2NHxiO3JldHVybiBufTsKV2NyPWZ1bmN0aW9uKCl7aWYoQXYpdGhyb3cgRXJyb3IoImNhcnIiKTtuNShEVWksNSl9OwpiYlo9ZnVuY3Rpb24obixXKXtpZih0eXBlb2YgbiE9PSJvYmplY3QiKXJldHVybiBuO2lmKEFycmF5LmlzQXJyYXkobikpe3ZhciBEPW5bYjRdfDA7bi5sZW5ndGg9PT0wJiZEJjE/bj12b2lkIDA6RCYyfHwoIVd8fDQwOTYmRHx8MTYmRD9uPW1fKG4sRCwhMSxXJiYhKEQmMTYpKToobltiNF18PTM0LEQmNCYmT2JqZWN0LmZyZWV6ZShuKSkpO3JldHVybiBufWlmKG4hPW51bGwmJm5bdkhdPT09a3YpcmV0dXJuIFc9bi5sOSxEPVdbYjRdfDAsdjkobixEKT9uOktHKG4sVyxEKT9PSyhuLFcpOm1fKFcsRCk7aWYobiBpbnN0YW5jZW9mIEZRKXJldHVybiBufTsKT0s9ZnVuY3Rpb24obixXLEQpe249bmV3IG4uY29uc3RydWN0b3IoVyk7RCYmKG4uTj1EQik7bi5YPURCO3JldHVybiBufTsKbV89ZnVuY3Rpb24obixXLEQsYil7Yj8/KGI9ISEoMzQmVykpO249cmcobixXLGJiWixiKTtiPTMyO0QmJihifD0yKTtXPVcmMTY3NjkyMTd8YjtuW2I0XT1XO3JldHVybiBufTsKUEg9ZnVuY3Rpb24obil7dmFyIFc9bi5sOSxEPVdbYjRdfDA7cmV0dXJuIHY5KG4sRCk/S0cobixXLEQpP09LKG4sVywhMCk6bmV3IG4uY29uc3RydWN0b3IobV8oVyxELCExKSk6bn07ClpSPWZ1bmN0aW9uKG4pe2lmKG4uTiE9PURCKXJldHVybiExO3ZhciBXPW4ubDk7Vz1tXyhXLFdbYjRdfDApO1dbYjRdfD0yMDQ4O24ubDk9VztuLk49dm9pZCAwO24uWD12b2lkIDA7cmV0dXJuITB9OwpVSz1mdW5jdGlvbihuKXtpZighWlIobikmJnY5KG4sbi5sOVtiNF18MCkpdGhyb3cgRXJyb3IoKTt9Owp5Zz1mdW5jdGlvbihuLFcpe1c9PT12b2lkIDAmJihXPW5bYjRdfDApO1cmMzImJiEoVyY0MDk2KSYmKG5bYjRdPVd8NDA5Nil9OwpLRz1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIEQmMj8hMDpEJjMyJiYhKEQmNDA5Nik/KFdbYjRdPUR8MixuLk49REIsITApOiExfTsKaVc9ZnVuY3Rpb24obixXLEQsYix2KXtPYmplY3QuaXNFeHRlbnNpYmxlKG4pO1c9RUsobi5sOSxXLEQsdik7aWYoVyE9PW51bGx8fGImJm4uWCE9PURCKXJldHVybiBXfTsKRUs9ZnVuY3Rpb24obixXLEQsYil7aWYoVz09PS0xKXJldHVybiBudWxsO3ZhciB2PVcrKEQ/MDotMSksaz1uLmxlbmd0aC0xO2lmKCEoazwxKyhEPzA6LTEpKSl7aWYodj49ayl7dmFyIGg9bltrXTtpZihoIT1udWxsJiZ0eXBlb2YgaD09PSJvYmplY3QiJiZoLmNvbnN0cnVjdG9yPT09T2JqZWN0KXtEPWhbV107dmFyIHg9ITB9ZWxzZSBpZih2PT09aylEPWg7ZWxzZSByZXR1cm59ZWxzZSBEPW5bdl07aWYoYiYmRCE9bnVsbCl7Yj1iKEQpO2lmKGI9PW51bGwpcmV0dXJuIGI7aWYoIU9iamVjdC5pcyhiLEQpKXJldHVybiB4P2hbV109YjpuW3ZdPWIsYn1yZXR1cm4gRH19Owpvej1mdW5jdGlvbihuLFcsRCxiKXtVSyhuKTt2YXIgdj1uLmw5O3VXKHYsdltiNF18MCxXLEQsYik7cmV0dXJuIG59Owp1Vz1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPUQrKHY/MDotMSksaD1uLmxlbmd0aC0xO2lmKGg+PTErKHY/MDotMSkmJms+PWgpe2xldCB4PW5baF07aWYoeCE9bnVsbCYmdHlwZW9mIHg9PT0ib2JqZWN0IiYmeC5jb25zdHJ1Y3Rvcj09PU9iamVjdClyZXR1cm4geFtEXT1iLFd9aWYoazw9aClyZXR1cm4gbltrXT1iLFc7YiE9PXZvaWQgMCYmKGg9KFc/PyhXPW5bYjRdfDApKT4+MTQmMTAyM3x8NTM2ODcwOTEyLEQ+PWg/YiE9bnVsbCYmKG5baCsodj8wOi0xKV09e1tEXTpifSk6bltrXT1iKTtyZXR1cm4gV307CmcuQkg9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1uLmw5LGg9a1tiNF18MDtiPXY5KG4saCk/MTpiO3Y9ISF2fHxiPT09MztiPT09MiYmWlIobikmJihrPW4ubDksaD1rW2I0XXwwKTtuPWRnKGssVyk7dmFyIHg9bj09PXp6Pzc6bltiNF18MCxMPWxXKHgsaCk7dmFyIGU9NCZMPyExOiEwO2lmKGUpezQmTCYmKG49Wy4uLm5dLHg9MCxMPWpXKEwsaCksaD11VyhrLGgsVyxuKSk7bGV0IEc9MCxyPTA7Zm9yKDtHPG4ubGVuZ3RoO0crKyl7bGV0IE49RChuW0ddKTtOIT1udWxsJiYobltyKytdPU4pfXI8RyYmKG4ubGVuZ3RoPXIpO0Q9KEx8NCkmLTUxMztMPUQmPS0xMDI1O0wmPS00MDk3fUwhPT14JiYobltiNF09TCwyJkwmJk9iamVjdC5mcmVlemUobikpO3JldHVybiBuPUNHKG4sTCxrLGgsVyx2b2lkIDAsYixlLHYpfTsKQ0c9ZnVuY3Rpb24obixXLEQsYix2LGssaCx4LEwpe3ZhciBlPVc7aD09PTF8fChoIT09ND8wOjImV3x8ISgxNiZXKSYmMzImYik/RkYoVyl8fChXfD0hbi5sZW5ndGh8fHgmJiEoNDA5NiZXKXx8MzImYiYmISg0MDk2Jld8fDE2JlcpPzI6MjU2LFchPT1lJiYobltiNF09VyksT2JqZWN0LmZyZWV6ZShuKSk6KGg9PT0yJiZGRihXKSYmKG49Wy4uLm5dLGU9MCxXPWpXKFcsYiksYj11VyhELGIsdixuLGspKSxGRihXKXx8KEx8fChXfD0xNiksVyE9PWUmJihuW2I0XT1XKSkpOzImV3x8ISg0MDk2Jld8fDE2JlcpfHx5ZyhELGIpO3JldHVybiBufTsKZGc9ZnVuY3Rpb24obixXLEQpe249RUsobixXLEQpO3JldHVybiBBcnJheS5pc0FycmF5KG4pP246enp9OwpsVz1mdW5jdGlvbihuLFcpezImVyYmKG58PTIpO3JldHVybiBufDF9OwpGRj1mdW5jdGlvbihuKXtyZXR1cm4hISgyJm4pJiYhISg0Jm4pfHwhISgyNTYmbil9OwpNRT1mdW5jdGlvbihuKXtyZXR1cm4ga1UobiwhMCl9OwpSej1mdW5jdGlvbihuLFcpe249aVcobixXLHZvaWQgMCx2b2lkIDAsTUUpO3JldHVybiBuPT1udWxsP014KCk6bn07ClFnPWZ1bmN0aW9uKG4sVyxEKXtVSyhuKTt2YXIgYj1uLmw5LHY9YltiNF18MDtpZihXPT1udWxsKXJldHVybiB1VyhiLHYsMyksbjtpZighQXJyYXkuaXNBcnJheShXKSl0aHJvdyBjMigpO3ZhciBrPVc9PT16ej83OldbYjRdfDAsaD1rLHg9RkYoayksTD14fHxPYmplY3QuaXNGcm96ZW4oVyk7eHx8KGs9MCk7THx8KFc9Wy4uLlddLGg9MCxrPWpXKGssdiksTD0hMSk7a3w9NTt4PSg0Jms/NTEyJms/NTEyOjEwMjQmaz8xMDI0OjA6dm9pZCAwKT8/MTAyNDtrfD14O2ZvcihsZXQgZT0wO2U8Vy5sZW5ndGg7ZSsrKXtsZXQgRz1XW2VdLHI9RChHLHgpO09iamVjdC5pcyhHLHIpfHwoTCYmKFc9Wy4uLlddLGg9MCxrPWpXKGssdiksTD0hMSksV1tlXT1yKX1rIT09aCYmKEwmJihXPVsuLi5XXSxrPWpXKGssdikpLFdbYjRdPWspO3VXKGIsdiwzLFcpO3JldHVybiBufTsKZy5WZz1mdW5jdGlvbihuLFcsRCxiLHYpe1VLKG4pO3ZhciBrPW4ubDk7dVcoayxrW2I0XXwwLFcsKGI9PT0iMCI/TnVtYmVyKEQpPT09MDpEPT09Yik/dm9pZCAwOkQsdik7cmV0dXJuIG59OwpjSD1mdW5jdGlvbihuLFcsRCl7aWYoVyYyKXRocm93IEVycm9yKCk7dmFyIGI9TDUoVyksdj1kZyhuLEQsYiksaz12PT09eno/Nzp2W2I0XXwwLGg9bFcoayxXKTtpZigyJmh8fEZGKGgpfHwxNiZoKWg9PT1rfHxGRihoKXx8KHZbYjRdPWgpLHY9Wy4uLnZdLGs9MCxoPWpXKGgsVyksdVcobixXLEQsdixiKTtoJj0tMTM7aCE9PWsmJih2W2I0XT1oKTtyZXR1cm4gdn07CkQyPWZ1bmN0aW9uKG4sVyxELGIpe1VLKG4pO3ZhciB2PW4ubDksaz12W2I0XXwwO2lmKGI9PW51bGwpe2xldCBoPWF6KHYpO2lmKG5uKGgsdixrLEQpPT09VyloLnNldChELDApO2Vsc2UgcmV0dXJuIG59ZWxzZSBrPVdXKHYsayxELFcpO3VXKHYsayxXLGIpO3JldHVybiBufTsKYmE9ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9bltiNF18MCxrPUw1KHYpO3Y9V1cobix2LEQsVyxrKTt1VyhuLHYsVyxiLGspfTsKdlc9ZnVuY3Rpb24obixXLEQpe249bi5sOTtyZXR1cm4gbm4oYXoobiksbix2b2lkIDAsVyk9PT1EP0Q6LTF9Owphej1mdW5jdGlvbihuKXtyZXR1cm4gbltrOV0/PyhuW2s5XT1uZXcgTWFwKX07CldXPWZ1bmN0aW9uKG4sVyxELGIsdil7Yj09PTB8fEQuaW5jbHVkZXMoYik7dmFyIGs9YXoobiksaD1ubihrLG4sVyxELHYpO2ghPT1iJiYoaCYmKFc9dVcobixXLGgsdm9pZCAwLHYpKSxrLnNldChELGIpKTtyZXR1cm4gV307Cm5uPWZ1bmN0aW9uKG4sVyxELGIsdil7dmFyIGs9bi5nZXQoYik7aWYoayE9bnVsbClyZXR1cm4gaztrPTA7Zm9yKGxldCBoPTA7aDxiLmxlbmd0aDtoKyspe2xldCB4PWJbaF07RUsoVyx4LHYpIT1udWxsJiYoayE9PTAmJihEPXVXKFcsRCxrLHZvaWQgMCx2KSksaz14KX1uLnNldChiLGspO3JldHVybiBrfTsKaFM9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW5bYjRdfDAsdj1MNShiKSxrPUVLKG4sRCx2KTtpZihrIT1udWxsJiZrW3ZIXT09PWt2KXtpZighdjkoaykpcmV0dXJuIFpSKGspLGsubDk7dmFyIGg9ay5sOX1lbHNlIEFycmF5LmlzQXJyYXkoaykmJihoPWspO2lmKGgpe2xldCB4PWhbYjRdfDA7eCYyJiYoaD1tXyhoLHgpKX1oPVNXKGgsVyk7aCE9PWsmJnVXKG4sYixELGgsdik7cmV0dXJuIGh9Owp4OT1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPSExO2I9RUsobixiLHYsaD0+e3ZhciB4PWh2KGgsRCxXKTtrPXghPT1oJiZ4IT1udWxsO3JldHVybiB4fSk7CmlmKGIhPW51bGwpcmV0dXJuIGsmJiF2OShiKSYmeWcobixXKSxifTsKZUU9ZnVuY3Rpb24obixXLEQsYil7bj1uLmw5OyhEPXg5KG4sbltiNF18MCxXLEQsYikpfHwoRD1XW0xuXSl8fChiPW5ldyBXLEQ9Yi5sOSxEW2I0XXw9MzQsRD1XW0xuXT1iKTtyZXR1cm4gRH07CmdlPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PW4ubDksaz12W2I0XXwwO1c9eDkodixrLFcsRCxiKTtpZihXPT1udWxsKXJldHVybiBXO2s9dltiNF18MDtpZighdjkobixrKSl7bGV0IGg9UEgoVyk7aCE9PVcmJihaUihuKSYmKHY9bi5sOSxrPXZbYjRdfDApLFc9aCxrPXVXKHYsayxELFcsYikseWcodixrKSl9cmV0dXJuIFd9OwpxSD1mdW5jdGlvbihuLFcsRCxiKXt2YXIgdj1uLmw5O3JldHVybiBYXyhuLHYsdltiNF18MCxXLEQsMSxiKX07ClhfPWZ1bmN0aW9uKG4sVyxELGIsdixrLGgseCxMKXt2YXIgZT12OShuLEQpO2s9ZT8xOms7eD0hIXh8fGs9PT0zO2U9TCYmIWU7KGs9PT0yfHxlKSYmWlIobikmJihXPW4ubDksRD1XW2I0XXwwKTtuPWRnKFcsdixoKTt2YXIgRz1uPT09eno/NzpuW2I0XXwwLHI9bFcoRyxEKTtpZihMPSEoNCZyKSl7dmFyIE49bixIPUQ7bGV0IEE9ISEoMiZyKTtBJiYoSHw9Mik7bGV0IHk9IUEsVD0hMCx6PTAsQz0wO2Zvcig7ejxOLmxlbmd0aDt6Kyspe2xldCBRPWh2KE5bel0sYixIKTtpZihRIGluc3RhbmNlb2YgYil7aWYoIUEpe2xldCBWPXY5KFEpO3kmJih5PSFWKTtUJiYoVD1WKX1OW0MrK109UX19Qzx6JiYoTi5sZW5ndGg9Qyk7cnw9NDtyPVQ/ciYtNDA5NzpyfDQwOTY7cj15P3J8ODpyJi05fXIhPT1HJiYobltiNF09ciwyJnImJk9iamVjdC5mcmVlemUobikpO2lmKGUmJiEoOCZyfHwhbi5sZW5ndGgmJihrPT09MXx8KGshPT00PzA6MiZyfHwhKDE2JnIpJiYzMiZEKSkpKXtGRihyKSYmKG49ClsuLi5uXSxyPWpXKHIsRCksRD11VyhXLEQsdixuLGgpKTtiPW47ZT1yO2ZvcihHPTA7RzxiLmxlbmd0aDtHKyspTj1iW0ddLHI9UEgoTiksTiE9PXImJihiW0ddPXIpO2V8PTg7cj1lPWIubGVuZ3RoP2V8NDA5NjplJi00MDk3O25bYjRdPXJ9cmV0dXJuIG49Q0cobixyLFcsRCx2LGgsayxMLHgpfTsKVkc9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4ubDk7cmV0dXJuIFhfKG4sYixiW2I0XXwwLFcsRCx2b2lkIDA9PT1HJD8yOjQsdm9pZCAwLCExLCEwKX07CnRTPWZ1bmN0aW9uKG4sVyl7biE9bnVsbD9iVyhuLFcpOm49dm9pZCAwO3JldHVybiBufTsKJDk9ZnVuY3Rpb24obixXLEQsYix2KXtiPXRTKGIsVyk7b3oobixELGIsdik7YiYmIXY5KGIpJiZ5ZyhuLmw5KTtyZXR1cm4gbn07CnJlPWZ1bmN0aW9uKG4sVyxELGIsdil7dj10Uyh2LFcpO0QyKG4sRCxiLHYpO3YmJiF2OSh2KSYmeWcobi5sOSk7cmV0dXJuIG59OwpzVj1mdW5jdGlvbihuLFcsRCxiKXtVSyhuKTt2YXIgdj1uLmw5LGs9dltiNF18MDtpZihiPT1udWxsKXJldHVybiB1Vyh2LGssRCksbjtpZighQXJyYXkuaXNBcnJheShiKSl0aHJvdyBjMigpO3ZhciBoPWI9PT16ej83OmJbYjRdfDAseD1oLEw9RkYoaCksZT1MfHxPYmplY3QuaXNGcm96ZW4oYiksRz0hMCxyPSEwO2ZvcihsZXQgSD0wO0g8Yi5sZW5ndGg7SCsrKXt2YXIgTj1iW0hdO2JXKE4sVyk7THx8KE49djkoTiksRyYmKEc9IU4pLHImJihyPU4pKX1MfHwoaD1HPzEzOjUsaD1yP2gmLTQwOTc6aHw0MDk2KTtlJiZoPT09eHx8KGI9Wy4uLmJdLHg9MCxoPWpXKGgsaykpO2ghPT14JiYoYltiNF09aCk7az11Vyh2LGssRCxiKTsyJmh8fCEoNDA5NiZofHwxNiZoKXx8eWcodixrKTtyZXR1cm4gbn07CmpXPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG49KDImVz9ufDI6biYtMykmLTI3M307Ck5IPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PWI7VUsobik7Yj1uLmw5O249WF8obixiLGJbYjRdfDAsRCxXLDIsdm9pZCAwLCEwKTt2PXYhPW51bGw/YlcodixEKTpuZXcgRDtuLnB1c2godik7Vz1EPW49PT16ej83Om5bYjRdfDA7KHY9djkodikpPyhEJj0tOSxuLmxlbmd0aD09PTEmJihEJj0tNDA5NykpOkR8PTQwOTY7RCE9PVcmJihuW2I0XT1EKTt2fHx5ZyhiKX07CmFQPWZ1bmN0aW9uKG4sVyxEPTApe3JldHVybiBFXyhpVyhuLFcpKT8/RH07CnBuPWZ1bmN0aW9uKG4sVyxEPXYzaSl7cmV0dXJuIGlXKG4sVyx2b2lkIDAsdm9pZCAwLEZEKT8/RH07Clk5PWZ1bmN0aW9uKG4sVyxEPSIiLGIpe3JldHVybiBnLkRSKGlXKG4sVyxiKSk/P0R9OwpIVz1mdW5jdGlvbihuLFcpe249aVcobixXKTtyZXR1cm4obj09bnVsbD9uOlA5KG4pP258MDp2b2lkIDApPz8wfTsKSlM9ZnVuY3Rpb24obixXKXtyZXR1cm4gZy5EUihpVyhuLFcsdm9pZCAwLGZuKSl9OwpJWT1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIG96KG4sVyxnLmw0KEQpKX07CmcuU0U9ZnVuY3Rpb24obixXLEQpe3JldHVybiBveihuLFcsV0goRCkpfTsKQVM9ZnVuY3Rpb24obixXLEQsYil7cmV0dXJuIGcuVmcobixXLFdIKEQpLCIiLGIpfTsKS249ZnVuY3Rpb24obixXLEQpe2lmKEQhPW51bGwpe2lmKCFQOShEKSl0aHJvdyBjMigiZW51bSIpO0R8PTB9cmV0dXJuIG96KG4sVyxEKX07ClBXPWZ1bmN0aW9uKG4sVyl7aWYodHlwZW9mIG49PT0ic3RyaW5nIilyZXR1cm4gbmV3IE9WKEMwKG4pLFcpO2lmKEFycmF5LmlzQXJyYXkobikpcmV0dXJuIG5ldyBPVihuZXcgVWludDhBcnJheShuKSxXKTtpZihuLmNvbnN0cnVjdG9yPT09VWludDhBcnJheSlyZXR1cm4gbmV3IE9WKG4sITEpO2lmKG4uY29uc3RydWN0b3I9PT1BcnJheUJ1ZmZlcilyZXR1cm4gbj1uZXcgVWludDhBcnJheShuKSxuZXcgT1YobiwhMSk7aWYobi5jb25zdHJ1Y3Rvcj09PUZRKXJldHVybiBXPVFsKG4pfHxuZXcgVWludDhBcnJheSgwKSxuZXcgT1YoVywhMCxuKTtpZihuIGluc3RhbmNlb2YgVWludDhBcnJheSlyZXR1cm4gbj1uLmNvbnN0cnVjdG9yPT09VWludDhBcnJheT9uOm5ldyBVaW50OEFycmF5KG4uYnVmZmVyLG4uYnl0ZU9mZnNldCxuLmJ5dGVMZW5ndGgpLG5ldyBPVihuLCExKTt0aHJvdyBFcnJvcigpO307CmcuVVY9ZnVuY3Rpb24obixXKXt2YXIgRD0wLGI9MCx2PTAsaz1uLkosaD1uLk47ZG97dmFyIHg9a1toKytdO0R8PSh4JjEyNyk8PHY7dis9N313aGlsZSh2PDMyJiZ4JjEyOCk7aWYodj4zMilmb3IoYnw9KHgmMTI3KT4+NCx2PTM7djwzMiYmeCYxMjg7dis9Nyl4PWtbaCsrXSxifD0oeCYxMjcpPDx2O1oyKG4saCk7aWYoISh4JjEyOCkpcmV0dXJuIFcoRD4+PjAsYj4+PjApO3Rocm93IEVycm9yKCk7fTsKeTE9ZnVuY3Rpb24obil7Zm9yKHZhciBXPTAsRD1uLk4sYj1EKzEwLHY9bi5KO0Q8Yjspe2xldCBrPXZbRCsrXTtXfD1rO2lmKChrJjEyOCk9PT0wKXJldHVybiBaMihuLEQpLCEhKFcmMTI3KX10aHJvdyBFcnJvcigpO307CmcuRVY9ZnVuY3Rpb24obil7dmFyIFc9bi5KLEQ9bi5OLGI9V1tEKytdLHY9YiYxMjc7aWYoYiYxMjgmJihiPVdbRCsrXSx2fD0oYiYxMjcpPDw3LGImMTI4JiYoYj1XW0QrK10sdnw9KGImMTI3KTw8MTQsYiYxMjgmJihiPVdbRCsrXSx2fD0oYiYxMjcpPDwyMSxiJjEyOCYmKGI9V1tEKytdLHZ8PWI8PDI4LGImMTI4JiZXW0QrK10mMTI4JiZXW0QrK10mMTI4JiZXW0QrK10mMTI4JiZXW0QrK10mMTI4JiZXW0QrK10mMTI4KSkpKSl0aHJvdyBFcnJvcigpO1oyKG4sRCk7cmV0dXJuIHZ9Owp1YT1mdW5jdGlvbihuKXt2YXIgVz1uLkosRD1uLk4sYj1XW0QrMF0sdj1XW0QrMV0saz1XW0QrMl07Vz1XW0QrM107aWEobiw0KTtyZXR1cm4oYjw8MHx2PDw4fGs8PDE2fFc8PDI0KT4+PjB9OwpvWT1mdW5jdGlvbihuKXt2YXIgVz11YShuKTtuPXVhKG4pO3JldHVybiBmNShXLG4pfTsKZy5kZT1mdW5jdGlvbihuKXt2YXIgVz1uLmo7V3x8KFc9bi5KLFc9bi5qPW5ldyBEYXRhVmlldyhXLmJ1ZmZlcixXLmJ5dGVPZmZzZXQsVy5ieXRlTGVuZ3RoKSk7Vz1XLmdldEZsb2F0NjQobi5OLCEwKTtpYShuLDgpO3JldHVybiBXfTsKazQyPWZ1bmN0aW9uKG4pe3JldHVybiBnLkVWKG4pfTsKWjI9ZnVuY3Rpb24obixXKXtuLk49VztpZihXPm4uVyl0aHJvdyBFcnJvcigpO307CmlhPWZ1bmN0aW9uKG4sVyl7WjIobixuLk4rVyl9Owp6JD1mdW5jdGlvbihuLFcpe2lmKFc8MCl0aHJvdyBFcnJvcigpO3ZhciBEPW4uTjtXPUQrVztpZihXPm4uVyl0aHJvdyBFcnJvcigpO24uTj1XO3JldHVybiBEfTsKbGE9ZnVuY3Rpb24obixXKXtpZihXPT0wKXJldHVybiBNeCgpO3ZhciBEPXokKG4sVyk7bi5uXyYmbi5WP0Q9bi5KLnN1YmFycmF5KEQsRCtXKToobj1uLkosVz1EK1csRD1EPT09Vz9uZXcgVWludDhBcnJheSgwKTpuLnNsaWNlKEQsVykpO3JldHVybiBELmxlbmd0aD09MD9NeCgpOm5ldyBGUShELHdXKX07CkNuPWZ1bmN0aW9uKG4sVyxELGIpe2lmKFQkLmxlbmd0aCl7bGV0IHY9VCQucG9wKCk7akUodixiKTt2Lk4uaW5pdChuLFcsRCxiKTtyZXR1cm4gdn1yZXR1cm4gbmV3IGhCUyhuLFcsRCxiKX07CmpFPWZ1bmN0aW9uKG4se0diOlc9ITF9PXt9KXtuLkdiPVd9OwpGXz1mdW5jdGlvbihuKXt2YXIgVz1uLk47aWYoVy5OPT1XLlcpcmV0dXJuITE7bi5YPW4uTi5OO3ZhciBEPWcuRVYobi5OKT4+PjA7Vz1EPj4+MztEJj03O2lmKCEoRD49MCYmRDw9NSkpdGhyb3cgRXJyb3IoKTtpZihXPDEpdGhyb3cgRXJyb3IoKTtuLlc9VztuLko9RDtyZXR1cm4hMH07CndlPWZ1bmN0aW9uKG4pe3RyeXtzd2l0Y2gobi5KKXtjYXNlIDA6bi5KIT0wP3dlKG4pOnkxKG4uTik7YnJlYWs7Y2FzZSAxOmlhKG4uTiw4KTticmVhaztjYXNlIDI6aWYobi5KIT0yKXdlKG4pO2Vsc2V7dmFyIFc9Zy5FVihuLk4pPj4+MDtpYShuLk4sVyl9YnJlYWs7Y2FzZSA1OmlhKG4uTiw0KTticmVhaztjYXNlIDM6TUgoKTtsZXQgRD1uLlc7dHJ5e2Rve2lmKCFGXyhuKSl0aHJvdyBFcnJvcigpO2lmKG4uSj09NCl7aWYobi5XIT1EKXRocm93IEVycm9yKCk7YnJlYWt9d2Uobil9d2hpbGUoMSl9Y2F0Y2goYil7aWYoYiBpbnN0YW5jZW9mIFJhbmdlRXJyb3IpdGhyb3cgbmV3IFN5bnRheEVycm9yO3Rocm93IGI7fWZpbmFsbHl7Ulk+MCYmUlktLX1icmVhaztkZWZhdWx0OnRocm93IEVycm9yKCk7fX1jYXRjaChEKXtpZihEIGluc3RhbmNlb2YgUmFuZ2VFcnJvcil0aHJvdyBuZXcgU3ludGF4RXJyb3I7dGhyb3cgRDt9fTsKTUg9ZnVuY3Rpb24oKXtpZihSWT49MTAwKXRocm93IG5ldyBTeW50YXhFcnJvcjtSWSsrfTsKUTE9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uTi5XLHY9Zy5FVihuLk4pPj4+MDt2PW4uTi5OK3Y7dmFyIGs9di1iO2s8PTAmJihuLk4uVz12LEQoVyxuLHZvaWQgMCx2b2lkIDAsdm9pZCAwKSxrPXYtbi5OLk4pO2lmKGspdGhyb3cgRXJyb3IoKTtuLk4uTj12O24uTi5XPWJ9OwphWT1mdW5jdGlvbihuKXt2YXIgVz1nLkVWKG4uTik+Pj4wLEQ9bi5OO249eiQoRCxXKTt2YXIgYj1ELko7KEQ9VjEpfHwoRD1WMT1uZXcgVGV4dERlY29kZXIoInV0Zi04Iix7ZmF0YWw6ITB9KSk7Vz1uK1c7Yj1uPT09MCYmVz09PWIubGVuZ3RoP2I6Yi5zdWJhcnJheShuLFcpO3RyeXt2YXIgdj1ELmRlY29kZShiKX1jYXRjaChrKXtpZihjVz09PXZvaWQgMCl7dHJ5e0QuZGVjb2RlKG5ldyBVaW50OEFycmF5KFsxMjhdKSl9Y2F0Y2goaCl7fXRyeXtELmRlY29kZShuZXcgVWludDhBcnJheShbOTddKSksY1c9ITB9Y2F0Y2goaCl7Y1c9ITF9fSFjVyYmKFYxPXZvaWQgMCk7dGhyb3cgazt9cmV0dXJuIHZ9OwpEOT1mdW5jdGlvbihuKXt2YXIgVz1nLkVWKG4uTik+Pj4wO3JldHVybiBsYShuLk4sVyl9OwpiRz1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Zy5FVihuLk4pPj4+MDtmb3IoYj1uLk4uTitiO24uTi5OPGI7KUQucHVzaChXKG4uTikpfTsKa209ZnVuY3Rpb24obil7cmV0dXJuIG5ldyB2eShuJjQyOTQ5NjcyOTUsTWF0aC5mbG9vcihuLzQyOTQ5NjcyOTYpKX07CnhtPWZ1bmN0aW9uKG4pe2lmKCFuKXJldHVybiBoM3x8KGgzPW5ldyB2eSgwLDApKTtpZighL15cZCskLy50ZXN0KG4pKXJldHVybiBudWxsO1NYKG4pO3JldHVybiBuZXcgdnkoclosc18pfTsKTGg9ZnVuY3Rpb24obil7cmV0dXJuIG4uSj09PTA/bmV3IHZ5KDAsMSt+bi5OKTpuZXcgdnkofm4uSisxLH5uLk4pfTsKeFVqPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgZUMobiY0Mjk0OTY3Mjk1LE1hdGguZmxvb3Iobi80Mjk0OTY3Mjk2KSl9OwpYdD1mdW5jdGlvbihuKXtpZighbilyZXR1cm4gZ0d8fChnRz1uZXcgZUMoMCwwKSk7aWYoIS9eLT9cZCskLy50ZXN0KG4pKXJldHVybiBudWxsO1NYKG4pO3JldHVybiBuZXcgZUMoclosc18pfTsKWW09ZnVuY3Rpb24obixXLEQpe2lmKHR5cGVvZiBCaWdJbnQ2NEFycmF5IT09InVuZGVmaW5lZCIpcmV0dXJuIHFmfHwocWY9bmV3IEJpZ0ludDY0QXJyYXkoMSksR1M9bmV3IFVpbnQzMkFycmF5KHFmLmJ1ZmZlcikscWZbMF09QmlnSW50KDEpLHQzPUdTWzBdPT09MSkscWZbMF09bixuPXQzPzA6MSxuZXcgVyhHU1tuXSxHU1sxLW5dKTskbXx8KHJHPUJpZ0ludChOdW1iZXIuTUlOX1NBRkVfSU5URUdFUiksTmY9QmlnSW50KE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSxwaD1CaWdJbnQoNDI5NDk2NzI5NSksJG09QmlnSW50KDMyKSk7aWYobj49ckcmJm48PU5mKXJldHVybiBEKE51bWJlcihuKSk7bj1CaWdJbnQuYXNVaW50Tig2NCxuKTtyZXR1cm4gbmV3IFcoTnVtYmVyKG4mcGgpLE51bWJlcihuPj4kbSkpfTsKSHk9ZnVuY3Rpb24obixXLEQpe2Zvcig7RD4wfHxXPjEyNzspbi5OLnB1c2goVyYxMjd8MTI4KSxXPShXPj4+N3xEPDwyNSk+Pj4wLEQ+Pj49NztuLk4ucHVzaChXKX07CkozPWZ1bmN0aW9uKG4sVyl7bi5OLnB1c2goVz4+PjAmMjU1KTtuLk4ucHVzaChXPj4+OCYyNTUpO24uTi5wdXNoKFc+Pj4xNiYyNTUpO24uTi5wdXNoKFc+Pj4yNCYyNTUpfTsKSXg9ZnVuY3Rpb24obixXKXtmb3IoO1c+MTI3OyluLk4ucHVzaChXJjEyN3wxMjgpLFc+Pj49NztuLk4ucHVzaChXKX07ClNDPWZ1bmN0aW9uKG4sVyl7aWYoVz49MClJeChuLFcpO2Vsc2V7Zm9yKGxldCBEPTA7RDw5O0QrKyluLk4ucHVzaChXJjEyN3wxMjgpLFc+Pj03O24uTi5wdXNoKDEpfX07CkEzPWZ1bmN0aW9uKG4sVyl7Vy5sZW5ndGghPT0wJiYobi5XLnB1c2goVyksbi5KKz1XLmxlbmd0aCl9OwptND1mdW5jdGlvbihuLFcsRCl7SXgobi5OLFcqOCtEKX07CktoPWZ1bmN0aW9uKG4sVyl7bTQobixXLDIpO1c9bi5OLmVuZCgpO0EzKG4sVyk7Vy5wdXNoKG4uSik7cmV0dXJuIFd9OwpPcz1mdW5jdGlvbihuLFcpe3ZhciBEPVcucG9wKCk7Zm9yKEQ9bi5KK24uTi5sZW5ndGgoKS1EO0Q+MTI3OylXLnB1c2goRCYxMjd8MTI4KSxEPj4+PTcsbi5KKys7Vy5wdXNoKEQpO24uSisrfTsKeW09ZnVuY3Rpb24obixXLEQpe2lmKEQhPW51bGwpc3dpdGNoKFB5KEQpLG00KG4sVywxKSx0eXBlb2YgRCl7Y2FzZSAibnVtYmVyIjpuPW4uTjtOMyhEKTtKMyhuLHJaKTtKMyhuLHNfKTticmVhaztjYXNlICJiaWdpbnQiOkQ9WW0oRCx2eSxrbSk7bj1uLk47Vz1ELk47SjMobixELkopO0ozKG4sVyk7YnJlYWs7ZGVmYXVsdDpEPXhtKEQpLG49bi5OLFc9RC5OLEozKG4sRC5KKSxKMyhuLFcpfX07CkVzPWZ1bmN0aW9uKG4sVyxEKXtEIT1udWxsJiYoRD1wYXJzZUludChELDEwKSxtNChuLFcsMCksU0Mobi5OLEQpKX07CmlHPWZ1bmN0aW9uKG4sVyxEKXttNChuLFcsMik7SXgobi5OLEQubGVuZ3RoKTtBMyhuLG4uTi5lbmQoKSk7QTMobixEKX07ClB5PWZ1bmN0aW9uKG4pe3N3aXRjaCh0eXBlb2Ygbil7Y2FzZSAic3RyaW5nIjp4bShuKX19Owp1Rz1mdW5jdGlvbihuKXtzd2l0Y2godHlwZW9mIG4pe2Nhc2UgInN0cmluZyI6bi5sZW5ndGgmJm5bMF09PT0iLSI/eG0obi5zdWJzdHJpbmcoMSkpOnhtKG4pfX07Cm94PWZ1bmN0aW9uKCl7dmFyIG49Y2xhc3N7Y29uc3RydWN0b3IoKXt0aHJvdyBFcnJvcigpO319O09iamVjdC5zZXRQcm90b3R5cGVPZihuLG4ucHJvdG90eXBlKTtyZXR1cm4gbn07CmRHPWZ1bmN0aW9uKG4sVyl7aWYoVz09bnVsbHx8Vz09IiIpcmV0dXJuIG5ldyBuO1c9SlNPTi5wYXJzZShXKTtpZighQXJyYXkuaXNBcnJheShXKSl0aHJvdyBFcnJvcigiZG5hcnIiKTtXW2I0XXw9MzI7cmV0dXJuIG5ldyBuKFcpfTsKVFM9ZnVuY3Rpb24obixXKXtyZXR1cm4gbmV3IHpTKG4sVyxsRyl9OwpDaD1mdW5jdGlvbihuLFcsRCxiLHYpe1c9akMoVyxiKTtXIT1udWxsJiYoRD1LaChuLEQpLHYoVyxuKSxPcyhuLEQpKX07CndHPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PWJbbl07aWYodilyZXR1cm4gdjt2PXt9O3Yud2s9Yjt2LlJyPW4zMihiWzBdKTt2YXIgaz1iWzFdLGg9MTtrJiZrLmNvbnN0cnVjdG9yPT09T2JqZWN0JiYodi5leHRlbnNpb25zPWssaz1iWysraF0sdHlwZW9mIGs9PT0iZnVuY3Rpb24iJiYodi5kJD0hMCxCeT8/KEJ5PWspLEZ0Pz8oRnQ9YltoKzFdKSxrPWJbaCs9Ml0pKTtmb3IodmFyIHg9e307ayYmQXJyYXkuaXNBcnJheShrKSYmay5sZW5ndGgmJnR5cGVvZiBrWzBdPT09Im51bWJlciImJmtbMF0+MDspe2Zvcih2YXIgTD0wO0w8ay5sZW5ndGg7TCsrKXhba1tMXV09aztrPWJbKytoXX1mb3IoTD0xO2shPT12b2lkIDA7KXt0eXBlb2Ygaz09PSJudW1iZXIiJiYoTCs9ayxrPWJbKytoXSk7bGV0IHI7dmFyIGU9dm9pZCAwO2sgaW5zdGFuY2VvZiB6Uz9yPWs6KHI9TGN0LGgtLSk7aWYocj8uTil7az1iWysraF07ZT1iO3ZhciBHPWg7dHlwZW9mIGs9PT0iZnVuY3Rpb24iJiYoaz1rKCksCmVbR109ayk7ZT1rfWs9YlsrK2hdO0c9TCsxO3R5cGVvZiBrPT09Im51bWJlciImJms8MCYmKEctPWssaz1iWysraF0pO2Zvcig7TDxHO0wrKyl7bGV0IE49eFtMXTtlP0QodixMLHIsZSxOKTpXKHYsTCxyLE4pfX1yZXR1cm4gYltuXT12fTsKTWY9ZnVuY3Rpb24obil7cmV0dXJuIEFycmF5LmlzQXJyYXkobik/blswXWluc3RhbmNlb2YgelM/bjpbZUJ0LG5dOltuLHZvaWQgMF19OwpSeD1mdW5jdGlvbihuLFc9IiIsRD0iIil7bj1uZXcgZy53WihuLCEwKTtuLnNldCgiYWxyIiwieWVzIik7RCYmKEQ9ZVgoODQsNjU1MyxNMygxOCw0MjYwLEQpKSxuW0lbMzRdXShXLFIwKDEzLDg3MTYsRCkpKTtyZXR1cm4gbn07CmpDPWZ1bmN0aW9uKG4sVyl7aWYobiBpbnN0YW5jZW9mIGcuUW0pcmV0dXJuIG4ubDk7aWYoQXJyYXkuaXNBcnJheShuKSlyZXR1cm4gU1cobixXKX07ClZtPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PUQuY2o7bltXXT1iPyhrLGgseCk9PnYoayxoLHgsYik6dn07CmF4PWZ1bmN0aW9uKG4sVyxELGIsdil7dmFyIGs9RC5jaixoLHg7bltXXT0oTCxlLEcpPT5rKEwsZSxHLHh8fCh4PXdHKGN5LFZtLGF4LGIpLlJyKSxofHwoaD1uOChiKSksdil9OwpuOD1mdW5jdGlvbihuKXt2YXIgVz1uW1dPXTtpZihXIT1udWxsKXJldHVybiBXO3ZhciBEPXdHKGN5LFZtLGF4LG4pO1c9RC5kJD8oYix2KT0+QnkoYix2LEQpOihiLHYpPT57YTp7TUgoKTsKdHJ5e2Zvcig7Rl8odikmJnYuSiE9NDspe2xldCBOPXYuVyxIPURbTl07aWYoSD09bnVsbCl7bGV0IEE9RC5leHRlbnNpb25zO2lmKEEpe2xldCB5PUFbTl07aWYoeSl7bGV0IFQ9ZzNVKHkpO1QhPW51bGwmJihIPURbTl09VCl9fX1pZihIPT1udWxsfHwhSCh2LGIsTikpe3ZhciBrPXY7bGV0IEE9ay5YO3dlKGspO2lmKGsuR2IpdmFyIGg9dm9pZCAwO2Vsc2V7bGV0IHk9ay5OLk4tQTtrLk4uTj1BO2g9bGEoay5OLHkpfWs9dm9pZCAwO3ZhciB4PWIsTD1OLGU9aDtlJiYoKGs9eFtMR10/Pyh4W0xHXT1uZXcgWEYpKVtMXT8/KGtbTF09W10pKS5wdXNoKGUpfX1sZXQgcj1lVyhiKTtyJiYoci5qNz1ELndrW0Q4XSk7dmFyIEc9ITA7YnJlYWsgYX1jYXRjaChyKXtpZihyIGluc3RhbmNlb2YgUmFuZ2VFcnJvcil0aHJvdyBuZXcgU3ludGF4RXJyb3I7dGhyb3cgcjt9ZmluYWxseXtSWT4wJiZSWS0tfUc9dm9pZCAwfXJldHVybiBHfTsKbltXT109VztuW0Q4XT1YTWkuYmluZChuKTtyZXR1cm4gV307ClhNaT1mdW5jdGlvbihuLFcsRCxiKXt2YXIgdj10aGlzW2N5XSxrPXRoaXNbV09dLGg9U1codm9pZCAwLHYuUnIpLHg9ZVcobik7aWYoeCl7dmFyIEw9ITEsZT12LmV4dGVuc2lvbnM7aWYoZSl7dj0oRyxyLE4pPT57aWYoTi5sZW5ndGghPT0wKWlmKGVbcl0pZm9yKGxldCBIIG9mIE4pe0c9Q24oSCk7dHJ5e0w9ITAsayhoLEcpfWZpbmFsbHl7Ry5mcmVlKCl9fWVsc2UgYj8uKG4scixOKX07CmlmKFc9PW51bGwpZ2coeCx2KTtlbHNlIGlmKHghPW51bGwpe2xldCBHPXhbV107RyYmdih4LFcsRyl9aWYoTCl7bGV0IEc9bltiNF18MDtpZihHJjImJkcmMjA0OCYmIUQ/LkpTKXRocm93IEVycm9yKCk7bGV0IHI9TDUoRyksTj0oSCxBKT0+e2lmKEVLKG4sSCxyKSE9bnVsbClzd2l0Y2goRD8uaDQpe2Nhc2UgMTpyZXR1cm47ZGVmYXVsdDp0aHJvdyBFcnJvcigpO31BIT1udWxsJiYoRz11VyhuLEcsSCxBLHIpKTtkZWxldGUgeFtIXX07Clc9PW51bGw/aF8oaCxoW2I0XXwwLChILEEpPT57TihILEEpfSk6TihXLEVLKGgsVyxyKSl9fX19OwpnM1U9ZnVuY3Rpb24obil7bj1NZihuKTt2YXIgVz1uWzBdLmNqO2lmKG49blsxXSl7bGV0IEQ9bjgobiksYj13RyhjeSxWbSxheCxuKS5ScjtyZXR1cm4odixrLGgpPT5XKHYsayxoLGIsRCl9cmV0dXJuIFd9OwpiNj1mdW5jdGlvbihuLFcsRCl7bltXXT1ELlBqfTsKa249ZnVuY3Rpb24obixXLEQsYil7dmFyIHYsayxoPUQuUGo7bltXXT0oeCxMLGUpPT5oKHgsTCxlLGt8fChrPXdHKHZPLGI2LGtuLGIpLlJyKSx2fHwodj1oOShiKSkpfTsKaDk9ZnVuY3Rpb24obil7dmFyIFc9blt4bl07aWYoIVcpe2xldCBEPXdHKHZPLGI2LGtuLG4pO1c9KGIsdik9Pkw4KGIsdixEKTsKblt4bl09V31yZXR1cm4gV307Ckw4PWZ1bmN0aW9uKG4sVyxEKXtoXyhuLG5bYjRdfDAsKGIsdik9PntpZih2IT1udWxsKXt2YXIgaz1xTU0oRCxiKTtrP2soVyx2LGIpOmI8NTAwfHxuNShHNFMsMyl9fSk7CihuPWVXKG4pKSYmZ2cobiwoYix2LGspPT57QTMoVyxXLk4uZW5kKCkpO2ZvcihiPTA7YjxrLmxlbmd0aDtiKyspQTMoVyxRbChrW2JdKXx8bmV3IFVpbnQ4QXJyYXkoMCkpfSl9OwpxTU09ZnVuY3Rpb24obixXKXt2YXIgRD1uW1ddO2lmKEQpcmV0dXJuIEQ7aWYoRD1uLmV4dGVuc2lvbnMpaWYoRD1EW1ddKXtEPU1mKEQpO3ZhciBiPURbMF0uUGo7aWYoRD1EWzFdKXtsZXQgdj1oOShEKSxrPXdHKHZPLGI2LGtuLEQpLlJyO0Q9bi5kJD9GdChrLHYpOihoLHgsTCk9PmIoaCx4LEwsayx2KX1lbHNlIEQ9YjsKcmV0dXJuIG5bV109RH19OwplNj1mdW5jdGlvbihuLFcsRCl7aWYoQXJyYXkuaXNBcnJheShXKSl7dmFyIGI9V1tiNF18MDtpZihiJjQpcmV0dXJuIFc7Zm9yKHZhciB2PTAsaz0wO3Y8Vy5sZW5ndGg7disrKXtsZXQgaD1uKFdbdl0pO2ghPW51bGwmJihXW2srK109aCl9azx2JiYoVy5sZW5ndGg9ayk7bj1ifDE7RCYmKG49KG58NCkmLTE1MzcpO24hPT1iJiYoV1tiNF09bik7RCYmbiYyJiZPYmplY3QuZnJlZXplKFcpO3JldHVybiBXfX07CmcuZ1E9ZnVuY3Rpb24obixXLEQpe3JldHVybiBuZXcgelMobixXLEQpfTsKWGY9ZnVuY3Rpb24obixXLEQpe3JldHVybiBuZXcgelMobixXLEQpfTsKZy5xWT1mdW5jdGlvbihuLFcsRCl7dVcobixuW2I0XXwwLFcsRCxMNShuW2I0XXwwKSl9OwpnLnQ5PWZ1bmN0aW9uKG4sVyxEKXtXPW0wKFcpO1chPW51bGwmJihtNChuLEQsMSksbj1uLk4sRD1Hdnx8KEd2PW5ldyBEYXRhVmlldyhuZXcgQXJyYXlCdWZmZXIoOCkpKSxELnNldEZsb2F0NjQoMCwrVywhMCksclo9RC5nZXRVaW50MzIoMCwhMCksc189RC5nZXRVaW50MzIoNCwhMCksSjMobixyWiksSjMobixzXykpfTsKZy4kbj1mdW5jdGlvbihuLFcsRCl7Vz1DeE0oVyk7aWYoVyE9bnVsbCl7c3dpdGNoKHR5cGVvZiBXKXtjYXNlICJzdHJpbmciOlh0KFcpfWlmKFchPW51bGwpc3dpdGNoKG00KG4sRCwwKSx0eXBlb2YgVyl7Y2FzZSAibnVtYmVyIjpuPW4uTjtwNShXKTtIeShuLHJaLHNfKTticmVhaztjYXNlICJiaWdpbnQiOkQ9WW0oVyxlQyx4VWopO0h5KG4uTixELkosRC5OKTticmVhaztkZWZhdWx0OkQ9WHQoVyksSHkobi5OLEQuSixELk4pfX19OwpnLnJRPWZ1bmN0aW9uKG4sVyxEKXtXPUVfKFcpO1chPW51bGwmJlchPW51bGwmJihtNChuLEQsMCksU0Mobi5OLFcpKX07CnNmPWZ1bmN0aW9uKG4sVyxEKXtXPVc9PW51bGx8fHR5cGVvZiBXPT09ImJvb2xlYW4iP1c6dHlwZW9mIFc9PT0ibnVtYmVyIj8hIVc6dm9pZCAwO1chPW51bGwmJihtNChuLEQsMCksbi5OLk4ucHVzaChXPzE6MCkpfTsKTlk9ZnVuY3Rpb24obixXLEQpe1c9Zy5EUihXKTtXIT1udWxsJiZpRyhuLEQsa0soVykpfTsKcDg9ZnVuY3Rpb24obixXLEQsYix2KXtXPWpDKFcsYik7VyE9bnVsbCYmKEQ9S2gobixEKSx2KFcsbiksT3MobixEKSl9OwpKOT1mdW5jdGlvbihuLFcsRCl7aWYobi5KIT09MSlyZXR1cm4hMTtnLnFZKFcsRCxvWShuLk4pKTtyZXR1cm4hMH07CklfPWZ1bmN0aW9uKG4sVyl7cmV0dXJuKEQsYik9PnthOntsZXQgaz17aEI6ITB9O2ImJk9iamVjdC5hc3NpZ24oayxiKTtEPUNuKEQsdm9pZCAwLHZvaWQgMCxrKTt0cnl7bGV0IGg9bmV3IG4seD1oLmw5O244KFcpKHgsRCk7dmFyIHY9aDticmVhayBhfWNhdGNoKGgpe2lmKGggaW5zdGFuY2VvZiBSYW5nZUVycm9yKXRocm93IG5ldyBTeW50YXhFcnJvcjt0aHJvdyBoO31maW5hbGx5e0QuZnJlZSgpfXY9dm9pZCAwfXJldHVybiB2fX07CmcuQTk9ZnVuY3Rpb24obil7cmV0dXJuIFc9PlM2KFcsbil9OwpnLm1EPWZ1bmN0aW9uKG4pe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBTNih0aGlzLG4pfX07Cks4PWZ1bmN0aW9uKG4pe3JldHVybiBXPT5kRyhuLFcpfTsKdGpVPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFFnKG4sVyxVXyl9Owp1Nj1mdW5jdGlvbihuKXt2YXIgVz1uZXcgZy5PZjtXPWcuU0UoVywxLG4uSik7dmFyIEQ9JFVNKG4pO1c9UWcoVyxELEZTMik7RD1bXTt2YXIgYj1bXTtmb3IodmFyIHYgb2Ygbi5OLmtleXMoKSliLnB1c2godi5zcGxpdCgiLCIpKTtmb3Iodj0wO3Y8Yi5sZW5ndGg7disrKXtsZXQgcj1iW3ZdO3ZhciBrPW4uVyxoPVBPKG4sLi4ucil8fFtdO2xldCBOPVtdO2Zvcih2YXIgeD0wO3g8aC5sZW5ndGg7eCsrKXt2YXIgTD1oW3hdLGU9TCYmTC5OO0w9bmV3IFo4O3N3aXRjaChrKXtjYXNlIDM6ZT1OdW1iZXIoZSk7TnVtYmVyLmlzRmluaXRlKGUpJiZEMihMLDEsVWYsZy5sNChlKSk7YnJlYWs7Y2FzZSAyOkQyKEwsMixVZixnLkFfKE51bWJlcihlKSkpfU4ucHVzaChMKX1mb3Ioaz0wO2s8Ti5sZW5ndGg7aysrKXt4PU5ba107aD1uZXcgeWU7aD0kOShoLFo4LDIseCk7eD1bXTtMPXJGdChuKTtmb3IoZT0wO2U8TC5sZW5ndGg7ZSsrKXt2YXIgRz1MW2VdO2xldCBIPXJbZV0sQT1uZXcgRWY7CnN3aXRjaChHKXtjYXNlIDM6RDIoQSwxLGk2LFdIKFN0cmluZyhIKSkpO2JyZWFrO2Nhc2UgMjpHPU51bWJlcihIKTtOdW1iZXIuaXNGaW5pdGUoRykmJkQyKEEsMixpNixnLnlQKEcpKTticmVhaztjYXNlIDE6RDIoQSwzLGk2LE9fKEg9PT0idHJ1ZSIpKX14LnB1c2goQSl9c1YoaCxFZiwxLHgpO0QucHVzaChoKX19c1YoVyx5ZSw0LEQpO3JldHVybiBXfTsKb189ZnVuY3Rpb24obil7aWYoIW4pcmV0dXJuIiI7aWYoL15hYm91dDooPzpibGFua3xzcmNkb2MpJC8udGVzdChuKSlyZXR1cm4gd2luZG93Lm9yaWdpbnx8IiI7bi5pbmRleE9mKCJibG9iOiIpPT09MCYmKG49bi5zdWJzdHJpbmcoNSkpO249bi5zcGxpdCgiIyIpWzBdLnNwbGl0KCI/IilbMF07bj1uLnRvTG93ZXJDYXNlKCk7bi5pbmRleE9mKCIvLyIpPT0wJiYobj13aW5kb3cubG9jYXRpb24ucHJvdG9jb2wrbik7L15bXHdcLV0qOlwvXC8vLnRlc3Qobil8fChuPXdpbmRvdy5sb2NhdGlvbi5ocmVmKTt2YXIgVz1uLnN1YnN0cmluZyhuLmluZGV4T2YoIjovLyIpKzMpLEQ9Vy5pbmRleE9mKCIvIik7RCE9LTEmJihXPVcuc3Vic3RyaW5nKDAsRCkpO0Q9bi5zdWJzdHJpbmcoMCxuLmluZGV4T2YoIjovLyIpKTtpZighRCl0aHJvdyBFcnJvcigiVVJJIGlzIG1pc3NpbmcgcHJvdG9jb2w6ICIrbik7aWYoRCE9PSJodHRwIiYmRCE9PSJodHRwcyImJkQhPT0iY2hyb21lLWV4dGVuc2lvbiImJgpEIT09Im1vei1leHRlbnNpb24iJiZEIT09ImZpbGUiJiZEIT09ImFuZHJvaWQtYXBwIiYmRCE9PSJjaHJvbWUtc2VhcmNoIiYmRCE9PSJjaHJvbWUtdW50cnVzdGVkIiYmRCE9PSJjaHJvbWUiJiZEIT09ImFwcCImJkQhPT0iZGV2dG9vbHMiKXRocm93IEVycm9yKCJJbnZhbGlkIFVSSSBzY2hlbWUgaW4gb3JpZ2luOiAiK0QpO249IiI7dmFyIGI9Vy5pbmRleE9mKCI6Iik7aWYoYiE9LTEpe3ZhciB2PVcuc3Vic3RyaW5nKGIrMSk7Vz1XLnN1YnN0cmluZygwLGIpO2lmKEQ9PT0iaHR0cCImJnYhPT0iODAifHxEPT09Imh0dHBzIiYmdiE9PSI0NDMiKW49IjoiK3Z9cmV0dXJuIEQrIjovLyIrVytufTsKc00yPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gbigpe3ZbMF09MTczMjU4NDE5Mzt2WzFdPTQwMjMyMzM0MTc7dlsyXT0yNTYyMzgzMTAyO3ZbM109MjcxNzMzODc4O3ZbNF09MzI4NTM3NzUyMDtHPWU9MH0KZnVuY3Rpb24gVyhyKXtmb3IodmFyIE49aCxIPTA7SDw2NDtIKz00KU5bSC80XT1yW0hdPDwyNHxyW0grMV08PDE2fHJbSCsyXTw8OHxyW0grM107Zm9yKEg9MTY7SDw4MDtIKyspcj1OW0gtM11eTltILThdXk5bSC0xNF1eTltILTE2XSxOW0hdPShyPDwxfHI+Pj4zMSkmNDI5NDk2NzI5NTtyPXZbMF07dmFyIEE9dlsxXSx5PXZbMl0sVD12WzNdLHo9dls0XTtmb3IoSD0wO0g8ODA7SCsrKXtpZihIPDQwKWlmKEg8MjApe3ZhciBDPVReQSYoeV5UKTt2YXIgUT0xNTE4NTAwMjQ5fWVsc2UgQz1BXnleVCxRPTE4NTk3NzUzOTM7ZWxzZSBIPDYwPyhDPUEmeXxUJihBfHkpLFE9MjQwMDk1OTcwOCk6KEM9QV55XlQsUT0zMzk1NDY5NzgyKTtDPSgocjw8NXxyPj4+MjcpJjQyOTQ5NjcyOTUpK0MreitRK05bSF0mNDI5NDk2NzI5NTt6PVQ7VD15O3k9KEE8PDMwfEE+Pj4yKSY0Mjk0OTY3Mjk1O0E9cjtyPUN9dlswXT12WzBdK3ImNDI5NDk2NzI5NTt2WzFdPXZbMV0rQSY0Mjk0OTY3Mjk1O3ZbMl09CnZbMl0reSY0Mjk0OTY3Mjk1O3ZbM109dlszXStUJjQyOTQ5NjcyOTU7dls0XT12WzRdK3omNDI5NDk2NzI5NX0KZnVuY3Rpb24gRChyLE4pe2lmKHR5cGVvZiByPT09InN0cmluZyIpe3I9dW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KHIpKTtmb3IodmFyIEg9W10sQT0wLHk9ci5sZW5ndGg7QTx5OysrQSlILnB1c2goci5jaGFyQ29kZUF0KEEpKTtyPUh9Tnx8KE49ci5sZW5ndGgpO0g9MDtpZihlPT0wKWZvcig7SCs2NDxOOylXKHIuc2xpY2UoSCxIKzY0KSksSCs9NjQsRys9NjQ7Zm9yKDtIPE47KWlmKGtbZSsrXT1yW0grK10sRysrLGU9PTY0KWZvcihlPTAsVyhrKTtIKzY0PE47KVcoci5zbGljZShILEgrNjQpKSxIKz02NCxHKz02NH0KZnVuY3Rpb24gYigpe3ZhciByPVtdLE49Ryo4O2U8NTY/RCh4LDU2LWUpOkQoeCw2NC0oZS01NikpO2Zvcih2YXIgSD02MztIPj01NjtILS0pa1tIXT1OJjI1NSxOPj4+PTg7VyhrKTtmb3IoSD1OPTA7SDw1O0grKylmb3IodmFyIEE9MjQ7QT49MDtBLT04KXJbTisrXT12W0hdPj5BJjI1NTtyZXR1cm4gcn0KZm9yKHZhciB2PVtdLGs9W10saD1bXSx4PVsxMjhdLEw9MTtMPDY0OysrTCl4W0xdPTA7dmFyIGUsRztuKCk7cmV0dXJue3Jlc2V0Om4sdXBkYXRlOkQsZGlnZXN0OmIsSFU6ZnVuY3Rpb24oKXtmb3IodmFyIHI9YigpLE49IiIsSD0wO0g8ci5sZW5ndGg7SCsrKU4rPSIwMTIzNDU2Nzg5QUJDREVGIi5jaGFyQXQoTWF0aC5mbG9vcihyW0hdLzE2KSkrIjAxMjM0NTY3ODlBQkNERUYiLmNoYXJBdChyW0hdJTE2KTtyZXR1cm4gTn19fTsKZFE9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVN0cmluZyhnLnFpLmxvY2F0aW9uLmhyZWYpO3JldHVybiBiJiZuJiZXP1tXLE56cihvXyhiKSxuLER8fG51bGwpXS5qb2luKCIgIik6bnVsbH07Ck56cj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9W10sdj1bXTtpZigoQXJyYXkuaXNBcnJheShEKT8yOjEpPT0xKXJldHVybiB2PVtXLG5dLGcueTIoYixmdW5jdGlvbih4KXt2LnB1c2goeCl9KSx6dih2LmpvaW4oIiAiKSk7CnZhciBrPVtdLGg9W107Zy55MihELGZ1bmN0aW9uKHgpe2gucHVzaCh4LmtleSk7ay5wdXNoKHgudmFsdWUpfSk7CkQ9TWF0aC5mbG9vcigobmV3IERhdGUpLmdldFRpbWUoKS8xRTMpO3Y9ay5sZW5ndGg9PTA/W0QsVyxuXTpbay5qb2luKCI6IiksRCxXLG5dO2cueTIoYixmdW5jdGlvbih4KXt2LnB1c2goeCl9KTsKbj16dih2LmpvaW4oIiAiKSk7bj1bRCxuXTtoLmxlbmd0aD09MHx8bi5wdXNoKGguam9pbigiIikpO3JldHVybiBuLmpvaW4oIl8iKX07Cnp2PWZ1bmN0aW9uKG4pe3ZhciBXPXNNMigpO1cudXBkYXRlKG4pO3JldHVybiBXLkhVKCkudG9Mb3dlckNhc2UoKX07Cmw2PWZ1bmN0aW9uKG4pe3RoaXMuTj1ufHx7Y29va2llOiIifX07ClR2PWZ1bmN0aW9uKG4pe249KG4uTi5jb29raWV8fCIiKS5zcGxpdCgiOyIpO3ZhciBXPVtdLEQ9W107Zm9yKGxldCBrPTA7azxuLmxlbmd0aDtrKyspe3ZhciBiPW5ba10udHJpbSgpO3ZhciB2PWIuaW5kZXhPZigiPSIpO3Y9PS0xPyhXLnB1c2goIiIpLEQucHVzaChiKSk6KFcucHVzaChiLnN1YnN0cmluZygwLHYpKSxELnB1c2goYi5zdWJzdHJpbmcodisxKSkpfXJldHVybntrZXlzOlcsdmFsdWVzOkR9fTsKajY9ZnVuY3Rpb24oKXt2YXIgbj1nLnFpLl9fU0FQSVNJRHx8Zy5xaS5fX0FQSVNJRHx8Zy5xaS5fXzNQU0FQSVNJRHx8Zy5xaS5fXzFQU0FQSVNJRHx8Zy5xaS5fX09WRVJSSURFX1NJRDtpZihuKXJldHVybiEwO3R5cGVvZiBkb2N1bWVudCE9PSJ1bmRlZmluZWQiJiYobj1uZXcgbDYoZG9jdW1lbnQpLG49bi5nZXQoIlNBUElTSUQiKXx8bi5nZXQoIkFQSVNJRCIpfHxuLmdldCgiX19TZWN1cmUtM1BBUElTSUQiKXx8bi5nZXQoIl9fU2VjdXJlLTFQQVBJU0lEIikpO3JldHVybiEhbn07CkM4PWZ1bmN0aW9uKG4sVyxELGIpeyhuPWcucWlbbl0pfHx0eXBlb2YgZG9jdW1lbnQ9PT0idW5kZWZpbmVkInx8KG49KG5ldyBsNihkb2N1bWVudCkpLmdldChXKSk7cmV0dXJuIG4/ZFEobixELGIpOm51bGx9OwpCTz1mdW5jdGlvbihuKXt2YXIgVz1vXyhnLnFpPy5sb2NhdGlvbi5ocmVmKSxEPVtdO2lmKGo2KCkpe1c9Vy5pbmRleE9mKCJodHRwczoiKT09MHx8Vy5pbmRleE9mKCJjaHJvbWUtZXh0ZW5zaW9uOiIpPT0wfHxXLmluZGV4T2YoImNocm9tZS11bnRydXN0ZWQ6Ly9uZXctdGFiLXBhZ2UiKT09MHx8Vy5pbmRleE9mKCJtb3otZXh0ZW5zaW9uOiIpPT0wO3ZhciBiLHY9KGI9Vyk/Zy5xaS5fX1NBUElTSUQ6Zy5xaS5fX0FQSVNJRDt2fHx0eXBlb2YgZG9jdW1lbnQ9PT0idW5kZWZpbmVkInx8KHY9bmV3IGw2KGRvY3VtZW50KSx2PXYuZ2V0KGI/IlNBUElTSUQiOiJBUElTSUQiKXx8di5nZXQoIl9fU2VjdXJlLTNQQVBJU0lEIikpOyhiPXY/ZFEodixiPyJTQVBJU0lESEFTSCI6IkFQSVNJREhBU0giLG4pOm51bGwpJiZELnB1c2goYik7VyYmKChXPUM4KCJfXzFQU0FQSVNJRCIsIl9fU2VjdXJlLTFQQVBJU0lEIiwiU0FQSVNJRDFQSEFTSCIsbikpJiZELnB1c2goVyksKG49QzgoIl9fM1BTQVBJU0lEIiwKIl9fU2VjdXJlLTNQQVBJU0lEIiwiU0FQSVNJRDNQSEFTSCIsbikpJiZELnB1c2gobikpfXJldHVybiBELmxlbmd0aD09MD9udWxsOkQuam9pbigiICIpfTsKZy5GZj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIE1hdGgubWluKE1hdGgubWF4KG4sVyksRCl9Owp3UT1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIG4rRCooVy1uKX07CmcuTVk9ZnVuY3Rpb24obixXKXt0aGlzLng9biE9PXZvaWQgMD9uOjA7dGhpcy55PVchPT12b2lkIDA/VzowfTsKUl89ZnVuY3Rpb24obixXKXtyZXR1cm4gbj09Vz8hMDpuJiZXP24ueD09Vy54JiZuLnk9PVcueTohMX07CmcuUWU9ZnVuY3Rpb24obixXKXt0aGlzLndpZHRoPW47dGhpcy5oZWlnaHQ9V307CmcuVmU9ZnVuY3Rpb24obixXKXtyZXR1cm4gbj09Vz8hMDpuJiZXP24ud2lkdGg9PVcud2lkdGgmJm4uaGVpZ2h0PT1XLmhlaWdodDohMX07CmNPPWZ1bmN0aW9uKG4pe3JldHVybiBuLndpZHRoKm4uaGVpZ2h0fTsKZy5hXz1mdW5jdGlvbihuLFcsRCl7Zm9yKGxldCBiIGluIG4pVy5jYWxsKEQsbltiXSxiLG4pfTsKZy5uVD1mdW5jdGlvbihuLFcpe3ZhciBEPXt9O2ZvcihsZXQgYiBpbiBuKVcuY2FsbCh2b2lkIDAsbltiXSxiLG4pJiYoRFtiXT1uW2JdKTtyZXR1cm4gRH07Cld4PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9e307Zm9yKGxldCBiIGluIG4pRFtiXT1XLmNhbGwodm9pZCAwLG5bYl0sYixuKTtyZXR1cm4gRH07CmcuRGw9ZnVuY3Rpb24obixXLEQpe2ZvcihsZXQgYiBpbiBuKWlmKFcuY2FsbChELG5bYl0sYixuKSlyZXR1cm4hMDtyZXR1cm4hMX07CmcuYms9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgaW4gbilpZighVy5jYWxsKHZvaWQgMCxuW0RdLEQsbikpcmV0dXJuITE7cmV0dXJuITB9Owp2eD1mdW5jdGlvbihuKXtmb3IobGV0IFcgaW4gbilyZXR1cm4gV307Cmt5PWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBpbiBuKXJldHVybiBuW1ddfTsKaEs9ZnVuY3Rpb24obil7dmFyIFc9W10sRD0wO2ZvcihsZXQgYiBpbiBuKVdbRCsrXT1uW2JdO3JldHVybiBXfTsKZy5MVD1mdW5jdGlvbihuKXt2YXIgVz1bXSxEPTA7Zm9yKGxldCBiIGluIG4pV1tEKytdPWI7cmV0dXJuIFd9OwpnLmVwPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4hPT1udWxsJiZXIGluIG59OwpnLmdtPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIGluIG4paWYobltEXT09VylyZXR1cm4hMDtyZXR1cm4hMX07CmcuWEw9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgaW4gbilpZihXLmNhbGwodm9pZCAwLG5bRF0sRCxuKSlyZXR1cm4gRH07CnFjPWZ1bmN0aW9uKG4sVyl7cmV0dXJuKFc9Zy5YTChuLFcpKSYmbltXXX07CmcuR0Y9ZnVuY3Rpb24obil7Zm9yKGxldCBXIGluIG4pcmV0dXJuITE7cmV0dXJuITB9OwpnLnRLPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBpbiBuKWRlbGV0ZSBuW1ddfTsKZy4keT1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIG4hPT1udWxsJiZXIGluIG4/bltXXTpEfTsKZy5ybT1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRCBpbiBuKWlmKCEoRCBpbiBXKXx8bltEXSE9PVdbRF0pcmV0dXJuITE7Zm9yKGxldCBEIGluIFcpaWYoIShEIGluIG4pKXJldHVybiExO3JldHVybiEwfTsKZy5zMD1mdW5jdGlvbihuKXt2YXIgVz17fTtmb3IobGV0IEQgaW4gbilXW0RdPW5bRF07cmV0dXJuIFd9OwpnLk5jPWZ1bmN0aW9uKG4pe2lmKCFufHx0eXBlb2YgbiE9PSJvYmplY3QiKXJldHVybiBuO2lmKHR5cGVvZiBuLmNsb25lPT09ImZ1bmN0aW9uIilyZXR1cm4gbi5jbG9uZSgpO2lmKHR5cGVvZiBNYXAhPT0idW5kZWZpbmVkIiYmbiBpbnN0YW5jZW9mIE1hcClyZXR1cm4gbmV3IE1hcChuKTtpZih0eXBlb2YgU2V0IT09InVuZGVmaW5lZCImJm4gaW5zdGFuY2VvZiBTZXQpcmV0dXJuIG5ldyBTZXQobik7aWYobiBpbnN0YW5jZW9mIERhdGUpcmV0dXJuIG5ldyBEYXRlKG4uZ2V0VGltZSgpKTt2YXIgVz1BcnJheS5pc0FycmF5KG4pP1tdOnR5cGVvZiBBcnJheUJ1ZmZlciE9PSJmdW5jdGlvbiJ8fHR5cGVvZiBBcnJheUJ1ZmZlci5pc1ZpZXchPT0iZnVuY3Rpb24ifHwhQXJyYXlCdWZmZXIuaXNWaWV3KG4pfHxuIGluc3RhbmNlb2YgRGF0YVZpZXc/e306bmV3IG4uY29uc3RydWN0b3Iobi5sZW5ndGgpO2ZvcihsZXQgRCBpbiBuKVdbRF09Zy5OYyhuW0RdKTtyZXR1cm4gV307CmcuWXk9ZnVuY3Rpb24obixXKXtmb3IobGV0IHY9MTt2PGFyZ3VtZW50cy5sZW5ndGg7disrKXt2YXIgRD1hcmd1bWVudHNbdl07Zm9yKGIgaW4gRCluW2JdPURbYl07Zm9yKGxldCBrPTA7azxwVC5sZW5ndGg7aysrKXt2YXIgYj1wVFtrXTtPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoRCxiKSYmKG5bYl09RFtiXSl9fX07ClhaeD1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IFo0KG5bMF0udG9Mb3dlckNhc2UoKSl9OwpnLkh4PWZ1bmN0aW9uKG4sLi4uVyl7aWYoVy5sZW5ndGg9PT0wKXJldHVybiBrMyhuWzBdKTt2YXIgRD1uWzBdO2ZvcihsZXQgYj0wO2I8Vy5sZW5ndGg7YisrKUQrPWVuY29kZVVSSUNvbXBvbmVudChXW2JdKStuW2IrMV07cmV0dXJuIGszKEQpfTsKZy5TcD1mdW5jdGlvbihuKXtyZXR1cm4gbj9uZXcgZlQoZy5KSyhuKSk6SWh8fChJaD1uZXcgZlQpfTsKQUs9ZnVuY3Rpb24obixXKXtyZXR1cm4gdHlwZW9mIFc9PT0ic3RyaW5nIj9uLmdldEVsZW1lbnRCeUlkKFcpOld9OwpnLktUPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9V3x8ZG9jdW1lbnQ7RC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lP249RC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKG4pWzBdOihEPWRvY3VtZW50LG49bj8oV3x8RCkucXVlcnlTZWxlY3RvcihuPyIuIituOiIiKTpnLm1CKEQsIioiLG4sVylbMF18fG51bGwpO3JldHVybiBufHxudWxsfTsKZy5tQj1mdW5jdGlvbihuLFcsRCxiKXtuPWJ8fG47cmV0dXJuKFc9VyYmVyE9IioiP1N0cmluZyhXKS50b1VwcGVyQ2FzZSgpOiIiKXx8RD9uLnF1ZXJ5U2VsZWN0b3JBbGwoVysoRD8iLiIrRDoiIikpOm4uZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKX07CmcuUHg9ZnVuY3Rpb24obixXKXtnLmFfKFcsZnVuY3Rpb24oRCxiKXtiPT0ic3R5bGUiP24uc3R5bGUuY3NzVGV4dD1EOmI9PSJjbGFzcyI/bi5jbGFzc05hbWU9RDpiPT0iZm9yIj9uLmh0bWxGb3I9RDpPMC5oYXNPd25Qcm9wZXJ0eShiKT9uLnNldEF0dHJpYnV0ZShPMFtiXSxEKTpnLmpVKGIsImFyaWEtIil8fGcualUoYiwiZGF0YS0iKT9uLnNldEF0dHJpYnV0ZShiLEQpOm5bYl09RH0pfTsKZy5FMD1mdW5jdGlvbihuKXt2YXIgVz1uLnNjcm9sbGluZ0VsZW1lbnQ/bi5zY3JvbGxpbmdFbGVtZW50OmcuWmx8fG4uY29tcGF0TW9kZSE9IkNTUzFDb21wYXQiP24uYm9keXx8bi5kb2N1bWVudEVsZW1lbnQ6bi5kb2N1bWVudEVsZW1lbnQ7bj1uLmRlZmF1bHRWaWV3O3JldHVybiBuZXcgZy5NWShuPy5wYWdlWE9mZnNldHx8Vy5zY3JvbGxMZWZ0LG4/LnBhZ2VZT2Zmc2V0fHxXLnNjcm9sbFRvcCl9OwpnLmlrPWZ1bmN0aW9uKG4pe3JldHVybiBuP24uZGVmYXVsdFZpZXc6d2luZG93fTsKZy5kbT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9YXJndW1lbnRzLHY9ZG9jdW1lbnQsaz1iWzFdLGg9dWsodixTdHJpbmcoYlswXSkpO2smJih0eXBlb2Ygaz09PSJzdHJpbmciP2guY2xhc3NOYW1lPWs6QXJyYXkuaXNBcnJheShrKT9oLmNsYXNzTmFtZT1rLmpvaW4oIiAiKTpnLlB4KGgsaykpO2IubGVuZ3RoPjImJm9oKHYsaCxiLDIpO3JldHVybiBofTsKb2g9ZnVuY3Rpb24obixXLEQsYil7ZnVuY3Rpb24gdihrKXtrJiZXLmFwcGVuZENoaWxkKHR5cGVvZiBrPT09InN0cmluZyI/bi5jcmVhdGVUZXh0Tm9kZShrKTprKX0KZm9yKDtiPEQubGVuZ3RoO2IrKyl7bGV0IGs9RFtiXTshZy5ZMihrKXx8Zy5mdChrKSYmay5ub2RlVHlwZT4wP3Yoayk6Zy55MihrJiZ0eXBlb2Ygay5sZW5ndGg9PSJudW1iZXIiJiZ0eXBlb2Ygay5pdGVtPT0iZnVuY3Rpb24iP2cuUk0oayk6ayx2KX19OwpnLnpGPWZ1bmN0aW9uKG4pe3JldHVybiB1ayhkb2N1bWVudCxuKX07CnVrPWZ1bmN0aW9uKG4sVyl7Vz1TdHJpbmcoVyk7bi5jb250ZW50VHlwZT09PSJhcHBsaWNhdGlvbi94aHRtbCt4bWwiJiYoVz1XLnRvTG93ZXJDYXNlKCkpO3JldHVybiBuLmNyZWF0ZUVsZW1lbnQoVyl9OwpnLmxrPWZ1bmN0aW9uKG4pe3JldHVybiBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShTdHJpbmcobikpfTsKZy5URj1mdW5jdGlvbihuKXtmb3IodmFyIFc7Vz1uLmZpcnN0Q2hpbGQ7KW4ucmVtb3ZlQ2hpbGQoVyl9OwpnLmpwPWZ1bmN0aW9uKG4sVyxEKXtuLmluc2VydEJlZm9yZShXLG4uY2hpbGROb2Rlc1tEXXx8bnVsbCl9OwpnLkNUPWZ1bmN0aW9uKG4pe3JldHVybiBuJiZuLnBhcmVudE5vZGU/bi5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG4pOm51bGx9OwpnLkJ4PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4mJlc/bj09V3x8bi5jb250YWlucyhXKTohMX07CmcuSks9ZnVuY3Rpb24obil7cmV0dXJuIG4ubm9kZVR5cGU9PTk/bjpuLm93bmVyRG9jdW1lbnR8fG4uZG9jdW1lbnR9OwpnLkZMPWZ1bmN0aW9uKG4sVyl7aWYoInRleHRDb250ZW50ImluIG4pbi50ZXh0Q29udGVudD1XO2Vsc2UgaWYobi5ub2RlVHlwZT09MyluLmRhdGE9U3RyaW5nKFcpO2Vsc2UgaWYobi5maXJzdENoaWxkJiZuLmZpcnN0Q2hpbGQubm9kZVR5cGU9PTMpe2Zvcig7bi5sYXN0Q2hpbGQhPW4uZmlyc3RDaGlsZDspbi5yZW1vdmVDaGlsZChuLmxhc3RDaGlsZCk7bi5maXJzdENoaWxkLmRhdGE9U3RyaW5nKFcpfWVsc2UgZy5URihuKSxuLmFwcGVuZENoaWxkKGcuSksobikuY3JlYXRlVGV4dE5vZGUoU3RyaW5nKFcpKSl9OwpNYz1mdW5jdGlvbihuKXtyZXR1cm4gbi50YWdOYW1lPT0iQSImJm4uaGFzQXR0cmlidXRlKCJocmVmIil8fG4udGFnTmFtZT09IklOUFVUInx8bi50YWdOYW1lPT0iVEVYVEFSRUEifHxuLnRhZ05hbWU9PSJTRUxFQ1QifHxuLnRhZ05hbWU9PSJCVVRUT04iPyFuLmRpc2FibGVkJiYoIW4uaGFzQXR0cmlidXRlKCJ0YWJpbmRleCIpfHx3bShuKSk6bi5oYXNBdHRyaWJ1dGUoInRhYmluZGV4IikmJndtKG4pfTsKd209ZnVuY3Rpb24obil7bj1uLnRhYkluZGV4O3JldHVybiB0eXBlb2Ygbj09PSJudW1iZXIiJiZuPj0wJiZuPDMyNzY4fTsKZy5SaD1mdW5jdGlvbihuLFcsRCl7biYmIUQmJihuPW4ucGFyZW50Tm9kZSk7Zm9yKEQ9MDtuOyl7aWYoVyhuKSlyZXR1cm4gbjtuPW4ucGFyZW50Tm9kZTtEKyt9cmV0dXJuIG51bGx9OwpmVD1mdW5jdGlvbihuKXt0aGlzLk49bnx8Zy5xaS5kb2N1bWVudHx8ZG9jdW1lbnR9OwpwTXg9ZnVuY3Rpb24obil7c1YoUVEsVlEsMSxuKX07CllNeD1mdW5jdGlvbihuLFc9Y3gpe2lmKCFhaCl7bj1uLm5hdmlnYXRvcj8udXNlckFnZW50RGF0YTtpZighbnx8dHlwZW9mIG4uZ2V0SGlnaEVudHJvcHlWYWx1ZXMhPT0iZnVuY3Rpb24ifHxuLmJyYW5kcyYmdHlwZW9mIG4uYnJhbmRzLm1hcCE9PSJmdW5jdGlvbiIpcmV0dXJuIFByb21pc2UucmVqZWN0KEVycm9yKCJVQUNIIHVuYXZhaWxhYmxlIikpO3BNeCgobi5icmFuZHN8fFtdKS5tYXAoYj0+e3ZhciB2PW5ldyBWUTt2PWcuU0UodiwxLGIuYnJhbmQpO3JldHVybiBnLlNFKHYsMixiLnZlcnNpb24pfSkpOwp0eXBlb2Ygbi5tb2JpbGU9PT0iYm9vbGVhbiImJm96KFFRLDIsT18obi5tb2JpbGUpKTthaD1uLmdldEhpZ2hFbnRyb3B5VmFsdWVzKFcpfXZhciBEPW5ldyBTZXQoVyk7cmV0dXJuIGFoLnRoZW4oYj0+e3ZhciB2PVFRLmNsb25lKCk7RC5oYXMoInBsYXRmb3JtIikmJmcuU0UodiwzLGIucGxhdGZvcm0pO0QuaGFzKCJwbGF0Zm9ybVZlcnNpb24iKSYmZy5TRSh2LDQsYi5wbGF0Zm9ybVZlcnNpb24pO0QuaGFzKCJhcmNoaXRlY3R1cmUiKSYmZy5TRSh2LDUsYi5hcmNoaXRlY3R1cmUpO0QuaGFzKCJtb2RlbCIpJiZnLlNFKHYsNixiLm1vZGVsKTtELmhhcygidWFGdWxsVmVyc2lvbiIpJiZnLlNFKHYsNyxiLnVhRnVsbFZlcnNpb24pO3JldHVybiB2LmJZKCl9KS5jYXRjaCgoKT0+UVEuYlkoKSl9OwpuSz1mdW5jdGlvbihuKXtyZXR1cm4gS24obiwxLDEpfTsKdkw9ZnVuY3Rpb24obixXKXskOShuLk4sV0wsMSxXKTtIVyhXLDEpfHxuSyhXKTtuLmdSfHwoVz1ERChuKSxZOShXLDUpfHxnLlNFKFcsNSxuLmxvY2FsZSkpO24udWFjaCYmKFc9REQobiksZ2UoVyxiSSw5KXx8JDkoVyxiSSw5LG4udWFjaCkpfTsKREQ9ZnVuY3Rpb24obil7dmFyIFc9Z2Uobi5OLFdMLDEpO1d8fChXPW5ldyBXTCx2TChuLFcpKTtuPVc7Vz1nZShuLGtFLDExKTtXfHwoVz1uZXcga0UsJDkobixrRSwxMSxXKSk7cmV0dXJuIFd9OwpIYlM9ZnVuY3Rpb24obixXKXtuLko9V307CkpGWj1mdW5jdGlvbihuKXt2YXIgVz1uLmdSP3ZvaWQgMDpnLmlrKCk7Vz9ZTXgoVyxjeCkudGhlbihEPT57bi51YWNoPWY0MihEPz8iW10iKTtEPUREKG4pOyQ5KEQsYkksOSxuLnVhY2gpO3JldHVybiEwfSkuY2F0Y2goKCk9PiExKTpQcm9taXNlLnJlc29sdmUoITEpfTsKZy5oSD1mdW5jdGlvbihuLFcsRCxiKXt0aGlzLlg9bjt0aGlzLmo9Vzt0aGlzLk49dGhpcy5XPW47dGhpcy5WPUR8fDA7dGhpcy5LPWJ8fDJ9OwpnLnhFPWZ1bmN0aW9uKG4pe24uTj1NYXRoLm1pbihuLmosbi5OKm4uSyk7bi5XPU1hdGgubWluKG4uaixuLk4rKG4uVj9NYXRoLnJvdW5kKG4uViooTWF0aC5yYW5kb20oKS0uNSkqMipuLk4pOjApKTtuLkorK307CkxLPWZ1bmN0aW9uKCl7cmV0dXJuImh0dHBzOi8vcGxheS5nb29nbGUuY29tL2xvZz9mb3JtYXQ9anNvbiZoYXNmYXN0PXRydWUifTsKSTRTPWZ1bmN0aW9uKG4sVyl7aWYoIW4uUyQpcmV0dXJuKCk9Pnt9Owp2YXIgRD0oKT0+e24uZmx1c2goKX07CnJldHVybiBXPygpPT57VygpLnRoZW4oRCl9OkR9OwplZz1mdW5jdGlvbihuKXtuLlcuaXNGaW5hbD0hMDtuLmZsdXNoKCk7bi5XLmlzRmluYWw9ITF9OwpnRD1mdW5jdGlvbihuKXtuLll8fChuLlk9TEsoKSk7dHJ5e3JldHVybihuZXcgVVJMKG4uWSkpLnRvU3RyaW5nKCl9Y2F0Y2goVyl7cmV0dXJuKG5ldyBVUkwobi5ZLGcuaWsoKS5sb2NhdGlvbi5vcmlnaW4pKS50b1N0cmluZygpfX07CkFGWj1mdW5jdGlvbihuKXtTTVMobiwoVyxEKT0+e1c9bmV3IFVSTChXKTtXLnNlYXJjaFBhcmFtcy5zZXQoImZvcm1hdCIsImpzb24iKTt2YXIgYj0hMTt0cnl7Yj1nLmlrKCkubmF2aWdhdG9yLnNlbmRCZWFjb24oVy50b1N0cmluZygpLEQuYlkoKSl9Y2F0Y2h7fWJ8fChuLkQ9ITEpO3JldHVybiBifSl9OwptVXc9ZnVuY3Rpb24obixXLEQ9bnVsbCxiPW4ud2l0aENyZWRlbnRpYWxzKXt2YXIgdj17fSxrPW5ldyBVUkwoZ0QobikpO0QmJih2LkF1dGhvcml6YXRpb249RCk7bi5zZXNzaW9uSW5kZXgmJih2WyJYLUdvb2ctQXV0aFVzZXIiXT1uLnNlc3Npb25JbmRleCxrLnNlYXJjaFBhcmFtcy5zZXQoImF1dGh1c2VyIixuLnNlc3Npb25JbmRleCkpO24ucGFnZUlkJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHYsIlgtR29vZy1QYWdlSWQiLHt2YWx1ZTpuLnBhZ2VJZH0pLGsuc2VhcmNoUGFyYW1zLnNldCgicGFnZUlkIixuLnBhZ2VJZCkpO3JldHVybnt1cmw6ay50b1N0cmluZygpLGJvZHk6VyxvJDoxLFpKOnYscmVxdWVzdFR5cGU6IlBPU1QiLHdpdGhDcmVkZW50aWFsczpiLHRpbWVvdXRNaWxsaXM6bi50aW1lb3V0TWlsbGlzfX07ClNNUz1mdW5jdGlvbihuLFcpe2lmKG4uTi5sZW5ndGghPT0wKXt2YXIgRD1uZXcgVVJMKGdEKG4pKTtELnNlYXJjaFBhcmFtcy5kZWxldGUoImZvcm1hdCIpO3ZhciBiPW4ubjEoKTtiJiZELnNlYXJjaFBhcmFtcy5zZXQoImF1dGgiLGIpO0Quc2VhcmNoUGFyYW1zLnNldCgiYXV0aHVzZXIiLG4uc2Vzc2lvbkluZGV4fHwiMCIpO2ZvcihiPTA7YjwxMCYmbi5OLmxlbmd0aDsrK2Ipe2xldCB2PW4uTi5zbGljZSgwLDMyKSxrPW4uVy5idWlsZCh2LG4uWCxuLlYsbi5QZyxuLmNKLG4uTyk7aWYoIVcoRC50b1N0cmluZygpLGspKXsrK24uVjticmVha31uLlg9MDtuLlY9MDtuLmNKPTA7bi5PPTA7bi5OPW4uTi5zbGljZSh2Lmxlbmd0aCl9bi5KLmVuYWJsZWQmJm4uSi5zdG9wKCl9fTsKS2NoPWZ1bmN0aW9uKG4sVyl7bi5idWlsZExhYmVsPVc7cmV0dXJuIG59OwpQX2k9ZnVuY3Rpb24obil7bi5uZXR3b3JrPW5ldyBPYjE7cmV0dXJuIG59OwpaYmg9ZnVuY3Rpb24obixXKXtuLk49V307ClVVYj1mdW5jdGlvbihuKXtuLko9ITA7cmV0dXJuIG59OwpyRnQ9ZnVuY3Rpb24obil7cmV0dXJuIG4uZmllbGRzLm1hcChXPT5XLmZpZWxkVHlwZSl9OwpQTz1mdW5jdGlvbihuLC4uLlcpe1c9WFQoLi4uVyk7cmV0dXJuIG4uTi5oYXMoVyk/bi5OLmdldChXKTp2b2lkIDB9OwokVU09ZnVuY3Rpb24obil7cmV0dXJuIG4uZmllbGRzLm1hcChXPT5XLmZpZWxkTmFtZSl9OwpHNz1mdW5jdGlvbihuLFcsLi4uRCl7RD1YVCguLi5EKTtuLk4uc2V0KEQsW25ldyBxNShXKV0pfTsKeUZaPWZ1bmN0aW9uKG4sVywuLi5EKXt2YXIgYj1QTyhuLC4uLkQpO2I/Yi5wdXNoKG5ldyBxNShXKSk6RzcobixXLC4uLkQpfTsKZVg9ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9V15uO2lmKChuPj4xJjE2KTw1JiYobi0zJjExKT49OSYmRFtJWzE3XV0pdmFyIGs9UjAoOCw3NTQxLEQpO2lmKG4tMj4+ND09NCl7az12XjQ4NTA7Zm9yKHZhciBoPVtdOysray1oW0lbNV1dLSh2XjQ3NTQpOylzd2l0Y2goayl7Y2FzZSB2XjQ3NDQ6az12XjQ4MTg7Y29udGludWU7Y2FzZSB2XjQ4NDE6az12XjQ3NjY7YnJlYWs7Y2FzZSB2XjQ4NTE6az12XjQ3NjU7Y29udGludWU7Y2FzZSB2XjQ3NjQ6az12XjQ2NTE7Y2FzZSB2XjQ4MDk6ay09dl40NzQ0O2RlZmF1bHQ6aFtJW3ZeNDc3Ml1dKFN0cmluZ1tJW3ZeNDczNl1dKGspKX12YXIgeD1ofShuXjcwKT4+Mz09MiYmKGs9RFtJW3ZeNjYzM11dKElbdl42NjE2XSksdEhbSVt2XjY2NDddXShrLHZeNjYyMSksdEhbSVt2XjY2NDddXShrLDIpLHRIW0lbdl42NjEzXV0oayx2XjY2MzEpLHg9a1tJW3ZeNjU5Ml1dKElbdl42NjE2XSkpO248PDImMjd8fChlWCh2XjEzMzYsdl42NDI3LEQpLAprPU0zKHZeMTM4Nix2XjU1OTYsRFtJW3ZeMTM0OF1dKElbdl4xMzI3XSl8fElbdl4xMzkyXSlbSVt2XjEzNDVdXShJW3ZeMTM1NF0pLHg9RFtJW3ZeMTQwMV1dPT09SVt2XjEzODZdJiZrW0lbNV1dPjEmJiEha1sxXSk7KG48PDEmMTUpPT00JiZiW0lbNV1dIT0wJiYoRD0oRCViW0lbNV1dK2JbSVs1XV0pJWJbSVs1XV0sYltJWzNdXSgwLDEsYltJWzNdXShELDEsYlswXSlbMF0pKTtuLTM+PjM9PTImJih4PUQhPT1udWxsKTtyZXR1cm4geH07ClhUPWZ1bmN0aW9uKC4uLm4pe3JldHVybiBuP24uam9pbigiLCIpOiJrZXkifTsKRTN0PWZ1bmN0aW9uKG4sLi4uVyl7cmV0dXJuKG49UE8obiwuLi5XKSkmJm4ubGVuZ3RoP25bMF06dm9pZCAwfTsKaWJVPWZ1bmN0aW9uKG4sLi4uVyl7dmFyIEQ9MCxiPUUzdChuLC4uLlcpO2ImJihEPWIuTik7RzcobixEKzEsLi4uVyl9OwokRT1mdW5jdGlvbihuLFcpe3RoaXMudHlwZT1uO3RoaXMuY3VycmVudFRhcmdldD10aGlzLnRhcmdldD1XO3RoaXMuZGVmYXVsdFByZXZlbnRlZD10aGlzLko9ITF9OwpyRD1mdW5jdGlvbihuLFcpeyRFLmNhbGwodGhpcyxuP24udHlwZToiIik7dGhpcy5yZWxhdGVkVGFyZ2V0PXRoaXMuY3VycmVudFRhcmdldD10aGlzLnRhcmdldD1udWxsO3RoaXMuYnV0dG9uPXRoaXMuc2NyZWVuWT10aGlzLnNjcmVlblg9dGhpcy5jbGllbnRZPXRoaXMuY2xpZW50WD0wO3RoaXMua2V5PSIiO3RoaXMuY2hhckNvZGU9dGhpcy5rZXlDb2RlPTA7dGhpcy5tZXRhS2V5PXRoaXMuc2hpZnRLZXk9dGhpcy5hbHRLZXk9dGhpcy5jdHJsS2V5PSExO3RoaXMuc3RhdGU9bnVsbDt0aGlzLnBvaW50ZXJJZD0wO3RoaXMucG9pbnRlclR5cGU9IiI7dGhpcy5OPW51bGw7biYmdGhpcy5pbml0KG4sVyl9OwpONT1mdW5jdGlvbihuKXtyZXR1cm4hKCFufHwhbltzMl0pfTsKbzNiPWZ1bmN0aW9uKG4sVyxELGIsdil7dGhpcy5saXN0ZW5lcj1uO3RoaXMucHJveHk9bnVsbDt0aGlzLnNyYz1XO3RoaXMudHlwZT1EO3RoaXMuY2FwdHVyZT0hIWI7dGhpcy5oYW5kbGVyPXY7dGhpcy5rZXk9Kyt1SWg7dGhpcy51Nz10aGlzLnFfPSExfTsKSEw9ZnVuY3Rpb24obil7bi51Nz0hMDtuLmxpc3RlbmVyPW51bGw7bi5wcm94eT1udWxsO24uc3JjPW51bGw7bi5oYW5kbGVyPW51bGx9OwpmSz1mdW5jdGlvbihuKXt0aGlzLnNyYz1uO3RoaXMubGlzdGVuZXJzPXt9O3RoaXMuTj0wfTsKSkg9ZnVuY3Rpb24obixXKXt2YXIgRD1XLnR5cGU7RCBpbiBuLmxpc3RlbmVycyYmZy5GSShuLmxpc3RlbmVyc1tEXSxXKSYmKEhMKFcpLG4ubGlzdGVuZXJzW0RdLmxlbmd0aD09MCYmKGRlbGV0ZSBuLmxpc3RlbmVyc1tEXSxuLk4tLSkpfTsKSVc9ZnVuY3Rpb24obixXLEQsYil7Zm9yKGxldCB2PTA7djxuLmxlbmd0aDsrK3Ype2xldCBrPW5bdl07aWYoIWsudTcmJmsubGlzdGVuZXI9PVcmJmsuY2FwdHVyZT09ISFEJiZrLmhhbmRsZXI9PWIpcmV0dXJuIHZ9cmV0dXJuLTF9OwpBSD1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKGImJmIub25jZSlyZXR1cm4gU2cobixXLEQsYix2KTtpZihBcnJheS5pc0FycmF5KFcpKXtmb3IobGV0IGs9MDtrPFcubGVuZ3RoO2srKylBSChuLFdba10sRCxiLHYpO3JldHVybiBudWxsfUQ9bWgoRCk7cmV0dXJuIE41KG4pP24uU18oVyxELGcuZnQoYik/ISFiLmNhcHR1cmU6ISFiLHYpOktLKG4sVyxELCExLGIsdil9OwpLSz1mdW5jdGlvbihuLFcsRCxiLHYsayl7aWYoIVcpdGhyb3cgRXJyb3IoIkludmFsaWQgZXZlbnQgdHlwZSIpO3ZhciBoPWcuZnQodik/ISF2LmNhcHR1cmU6ISF2LHg9TzIobik7eHx8KG5bUExdPXg9bmV3IGZLKG4pKTtEPXguYWRkKFcsRCxiLGgsayk7aWYoRC5wcm94eSlyZXR1cm4gRDtiPWRVcigpO0QucHJveHk9YjtiLnNyYz1uO2IubGlzdGVuZXI9RDtpZihuLmFkZEV2ZW50TGlzdGVuZXIpdj09PXZvaWQgMCYmKHY9ITEpLG4uYWRkRXZlbnRMaXN0ZW5lcihXLnRvU3RyaW5nKCksYix2KTtlbHNlIGlmKG4uYXR0YWNoRXZlbnQpbi5hdHRhY2hFdmVudChaRChXLnRvU3RyaW5nKCkpLGIpO2Vsc2UgaWYobi5hZGRMaXN0ZW5lciYmbi5yZW1vdmVMaXN0ZW5lciluLmFkZExpc3RlbmVyKGIpO2Vsc2UgdGhyb3cgRXJyb3IoImFkZEV2ZW50TGlzdGVuZXIgYW5kIGF0dGFjaEV2ZW50IGFyZSB1bmF2YWlsYWJsZS4iKTtVMisrO3JldHVybiBEfTsKZFVyPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gbihEKXtyZXR1cm4gVy5jYWxsKG4uc3JjLG4ubGlzdGVuZXIsRCl9CnZhciBXPXpCdDtyZXR1cm4gbn07ClNnPWZ1bmN0aW9uKG4sVyxELGIsdil7aWYoQXJyYXkuaXNBcnJheShXKSl7Zm9yKGxldCBrPTA7azxXLmxlbmd0aDtrKyspU2cobixXW2tdLEQsYix2KTtyZXR1cm4gbnVsbH1EPW1oKEQpO3JldHVybiBONShuKT9uLmVGKFcsRCxnLmZ0KGIpPyEhYi5jYXB0dXJlOiEhYix2KTpLSyhuLFcsRCwhMCxiLHYpfTsKeTc9ZnVuY3Rpb24obixXLEQsYix2KXtpZihBcnJheS5pc0FycmF5KFcpKWZvcihsZXQgaz0wO2s8Vy5sZW5ndGg7aysrKXk3KG4sV1trXSxELGIsdik7ZWxzZSBiPWcuZnQoYik/ISFiLmNhcHR1cmU6ISFiLEQ9bWgoRCksTjUobik/bi53SChXLEQsYix2KTpuJiYobj1PMihuKSkmJihXPW4uc2MoVyxELGIsdikpJiZFMihXKX07CkUyPWZ1bmN0aW9uKG4pe2lmKHR5cGVvZiBuIT09Im51bWJlciImJm4mJiFuLnU3KXt2YXIgVz1uLnNyYztpZihONShXKSlKSChXLmRfLG4pO2Vsc2V7dmFyIEQ9bi50eXBlLGI9bi5wcm94eTtXLnJlbW92ZUV2ZW50TGlzdGVuZXI/Vy5yZW1vdmVFdmVudExpc3RlbmVyKEQsYixuLmNhcHR1cmUpOlcuZGV0YWNoRXZlbnQ/Vy5kZXRhY2hFdmVudChaRChEKSxiKTpXLmFkZExpc3RlbmVyJiZXLnJlbW92ZUxpc3RlbmVyJiZXLnJlbW92ZUxpc3RlbmVyKGIpO1UyLS07KEQ9TzIoVykpPyhKSChELG4pLEQuTj09MCYmKEQuc3JjPW51bGwsV1tQTF09bnVsbCkpOkhMKG4pfX19OwpaRD1mdW5jdGlvbihuKXtyZXR1cm4gbiBpbiBpST9pSVtuXTppSVtuXT0ib24iK259Owp6QnQ9ZnVuY3Rpb24obixXKXtpZihuLnU3KW49ITA7ZWxzZXtXPW5ldyByRChXLHRoaXMpO2xldCBEPW4ubGlzdGVuZXIsYj1uLmhhbmRsZXJ8fG4uc3JjO24ucV8mJkUyKG4pO249RC5jYWxsKGIsVyl9cmV0dXJuIG59OwpPMj1mdW5jdGlvbihuKXtuPW5bUExdO3JldHVybiBuIGluc3RhbmNlb2YgZks/bjpudWxsfTsKbWg9ZnVuY3Rpb24obil7aWYodHlwZW9mIG49PT0iZnVuY3Rpb24iKXJldHVybiBuO25bdUldfHwoblt1SV09ZnVuY3Rpb24oVyl7cmV0dXJuIG4uaGFuZGxlRXZlbnQoVyl9KTsKcmV0dXJuIG5bdUldfTsKZy5vVz1mdW5jdGlvbigpe2cuRk0uY2FsbCh0aGlzKTt0aGlzLmRfPW5ldyBmSyh0aGlzKTt0aGlzLkhkPXRoaXM7dGhpcy5sWj1udWxsfTsKZEQ9ZnVuY3Rpb24obixXLEQsYil7Vz1uLmRfLmxpc3RlbmVyc1tTdHJpbmcoVyldO2lmKCFXKXJldHVybiEwO1c9Vy5jb25jYXQoKTt2YXIgdj0hMDtmb3IobGV0IGs9MDtrPFcubGVuZ3RoOysrayl7bGV0IGg9V1trXTtpZihoJiYhaC51NyYmaC5jYXB0dXJlPT1EKXtsZXQgeD1oLmxpc3RlbmVyLEw9aC5oYW5kbGVyfHxoLnNyYztoLnFfJiZKSChuLmRfLGgpO3Y9eC5jYWxsKEwsYikhPT0hMSYmdn19cmV0dXJuIHYmJiFiLmRlZmF1bHRQcmV2ZW50ZWR9OwpnLlQ3PWZ1bmN0aW9uKG4pe249KDAsZy56Nykobik7bEl8fChsST1sNGooKSk7bEkobil9OwpsNGo9ZnVuY3Rpb24oKXtpZih0eXBlb2YgTWVzc2FnZUNoYW5uZWwhPT0idW5kZWZpbmVkIil7bGV0IG49bmV3IE1lc3NhZ2VDaGFubmVsLFc9e30sRD1XO24ucG9ydDEub25tZXNzYWdlPWZ1bmN0aW9uKCl7aWYoVy5uZXh0IT09dm9pZCAwKXtXPVcubmV4dDtsZXQgYj1XLmtBO1cua0E9bnVsbDtiKCl9fTsKcmV0dXJuIGZ1bmN0aW9uKGIpe0QubmV4dD17a0E6Yn07RD1ELm5leHQ7bi5wb3J0Mi5wb3N0TWVzc2FnZSgwKX19cmV0dXJuIGZ1bmN0aW9uKG4pe2cucWkuc2V0VGltZW91dChuLDApfX07ClR6cj1mdW5jdGlvbigpe2Zvcih2YXIgbjtuPWpnLnJlbW92ZSgpOyl7dHJ5e24uTi5jYWxsKG4uc2NvcGUpfWNhdGNoKFcpe2g0KFcpfUNLLnB1dChuKX1CTD0hMX07CmcuRlQ9ZnVuY3Rpb24oKXt9OwpqTWg9ZnVuY3Rpb24obil7dmFyIFc9V3x8MDtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbi5hcHBseSh0aGlzLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwLFcpKX19OwpnLndEPWZ1bmN0aW9uKG4pe3ZhciBXPSExLEQ7cmV0dXJuIGZ1bmN0aW9uKCl7V3x8KEQ9bigpLFc9ITApO3JldHVybiBEfX07CmcuWDE9ZnVuY3Rpb24obixXKXt0aGlzLk49MDt0aGlzLks9dm9pZCAwO3RoaXMuWD10aGlzLko9dGhpcy5XPW51bGw7dGhpcy5qPXRoaXMuVj0hMTtpZihuIT1nLkZUKXRyeXtsZXQgRD10aGlzO24uY2FsbChXLGZ1bmN0aW9uKGIpe2dwKEQsMixiKX0sZnVuY3Rpb24oYil7Z3AoRCwzLGIpfSl9Y2F0Y2goRCl7Z3AodGhpcywzLEQpfX07CnE4PWZ1bmN0aW9uKCl7dGhpcy5uZXh0PXRoaXMuY29udGV4dD10aGlzLko9dGhpcy5XPXRoaXMuTj1udWxsO3RoaXMuWD0hMX07CmcudCQ9ZnVuY3Rpb24obixXLEQpe3ZhciBiPUczLmdldCgpO2IuVz1uO2IuSj1XO2IuY29udGV4dD1EO3JldHVybiBifTsKJEc9ZnVuY3Rpb24obil7aWYobiBpbnN0YW5jZW9mIGcuWDEpcmV0dXJuIG47dmFyIFc9bmV3IGcuWDEoZy5GVCk7Z3AoVywyLG4pO3JldHVybiBXfTsKZy5ycD1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IGcuWDEoZnVuY3Rpb24oVyxEKXtEKG4pfSl9OwpwcT1mdW5jdGlvbihuLFcsRCxiKXtnLk44KG4sZy50JChXfHxnLkZULER8fG51bGwsYikpfTsKWUc9ZnVuY3Rpb24obixXKXtpZihuLk49PTApaWYobi5XKXt2YXIgRD1uLlc7aWYoRC5KKXt2YXIgYj0wLHY9bnVsbCxrPW51bGw7Zm9yKGxldCBoPUQuSjtoJiYoaC5YfHwoYisrLGguTj09biYmKHY9aCksISh2JiZiPjEpKSk7aD1oLm5leHQpdnx8KGs9aCk7diYmKEQuTj09MCYmYj09MT9ZRyhELFcpOihrPyhiPWssYi5uZXh0PT1ELlgmJihELlg9YiksYi5uZXh0PWIubmV4dC5uZXh0KTpISihEKSxmcShELHYsMyxXKSkpfW4uVz1udWxsfWVsc2UgZ3AobiwzLFcpfTsKZy5OOD1mdW5jdGlvbihuLFcpe24uSnx8bi5OIT0yJiZuLk4hPTN8fEokKG4pO24uWD9uLlgubmV4dD1XOm4uSj1XO24uWD1XfTsKU089ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9Zy50JChudWxsLG51bGwsbnVsbCk7di5OPW5ldyBnLlgxKGZ1bmN0aW9uKGssaCl7di5XPVc/ZnVuY3Rpb24oeCl7dHJ5e2xldCBMPVcuY2FsbChiLHgpO2soTCl9Y2F0Y2goTCl7aChMKX19Oms7CnYuSj1EP2Z1bmN0aW9uKHgpe3RyeXtsZXQgTD1ELmNhbGwoYix4KTtMPT09dm9pZCAwJiZ4IGluc3RhbmNlb2YgZy5JNT9oKHgpOmsoTCl9Y2F0Y2goTCl7aChMKX19Omh9KTsKdi5OLlc9bjtnLk44KG4sdik7cmV0dXJuIHYuTn07CmdwPWZ1bmN0aW9uKG4sVyxEKXtuLk49PTAmJihuPT09RCYmKFc9MyxEPW5ldyBUeXBlRXJyb3IoIlByb21pc2UgY2Fubm90IHJlc29sdmUgdG8gaXRzZWxmIikpLG4uTj0xLGcuQSQoRCxuLklRLG4uQVMsbil8fChuLks9RCxuLk49VyxuLlc9bnVsbCxKJChuKSxXIT0zfHxEIGluc3RhbmNlb2YgZy5JNXx8Q18xKG4sRCkpKX07CmcuQSQ9ZnVuY3Rpb24obixXLEQsYil7aWYobiBpbnN0YW5jZW9mIGcuWDEpcmV0dXJuIHBxKG4sVyxELGIpLCEwO2lmKG4pdHJ5e3ZhciB2PSEhbi4kZ29vZ19UaGVuYWJsZX1jYXRjaChrKXt2PSExfWVsc2Ugdj0hMTtpZih2KXJldHVybiBuLnRoZW4oVyxELGIpLCEwO2lmKGcuZnQobikpdHJ5e2xldCBrPW4udGhlbjtpZih0eXBlb2Ygaz09PSJmdW5jdGlvbiIpcmV0dXJuIEJ6aShuLGssVyxELGIpLCEwfWNhdGNoKGspe3JldHVybiBELmNhbGwoYixrKSwhMH1yZXR1cm4hMX07CkJ6aT1mdW5jdGlvbihuLFcsRCxiLHYpe2Z1bmN0aW9uIGsoTCl7eHx8KHg9ITAsYi5jYWxsKHYsTCkpfQpmdW5jdGlvbiBoKEwpe3h8fCh4PSEwLEQuY2FsbCh2LEwpKX0KdmFyIHg9ITE7dHJ5e1cuY2FsbChuLGgsayl9Y2F0Y2goTCl7ayhMKX19OwpKJD1mdW5jdGlvbihuKXtuLlZ8fChuLlY9ITAsZy5tSyhuLnlzLG4pKX07CkhKPWZ1bmN0aW9uKG4pe3ZhciBXPW51bGw7bi5KJiYoVz1uLkosbi5KPVcubmV4dCxXLm5leHQ9bnVsbCk7bi5KfHwobi5YPW51bGwpO3JldHVybiBXfTsKZnE9ZnVuY3Rpb24obixXLEQsYil7aWYoRD09MyYmVy5KJiYhVy5YKWZvcig7biYmbi5qO249bi5XKW4uaj0hMTtpZihXLk4pVy5OLlc9bnVsbCxLcShXLEQsYik7ZWxzZSB0cnl7Vy5YP1cuVy5jYWxsKFcuY29udGV4dCk6S3EoVyxELGIpfWNhdGNoKHYpe091LmNhbGwobnVsbCx2KX1HMy5wdXQoVyl9OwpLcT1mdW5jdGlvbihuLFcsRCl7Vz09Mj9uLlcuY2FsbChuLmNvbnRleHQsRCk6bi5KJiZuLkouY2FsbChuLmNvbnRleHQsRCl9OwpDXzE9ZnVuY3Rpb24obixXKXtuLmo9ITA7Zy5tSyhmdW5jdGlvbigpe24uaiYmT3UuY2FsbChudWxsLFcpfSl9OwpnLkk1PWZ1bmN0aW9uKG4pe2cuVGIuY2FsbCh0aGlzLG4pfTsKZy5QSj1mdW5jdGlvbihuLFcpe2cub1cuY2FsbCh0aGlzKTt0aGlzLmd0PW58fDE7dGhpcy5WNz1XfHxnLnFpO3RoaXMuaEU9KDAsZy5LdCkodGhpcy5SUSx0aGlzKTt0aGlzLmpiPWcuVXcoKX07CmcuWnQ9ZnVuY3Rpb24obixXLEQpe2lmKHR5cGVvZiBuPT09ImZ1bmN0aW9uIilEJiYobj0oMCxnLkt0KShuLEQpKTtlbHNlIGlmKG4mJnR5cGVvZiBuLmhhbmRsZUV2ZW50PT0iZnVuY3Rpb24iKW49KDAsZy5LdCkobi5oYW5kbGVFdmVudCxuKTtlbHNlIHRocm93IEVycm9yKCJJbnZhbGlkIGxpc3RlbmVyIGFyZ3VtZW50Iik7cmV0dXJuIE51bWJlcihXKT4yMTQ3NDgzNjQ3Py0xOmcucWkuc2V0VGltZW91dChuLFd8fDApfTsKZy5VdT1mdW5jdGlvbihuLFcpe3ZhciBEPW51bGw7cmV0dXJuKG5ldyBnLlgxKGZ1bmN0aW9uKGIsdil7RD1nLlp0KGZ1bmN0aW9uKCl7YihXKX0sbik7CkQ9PS0xJiZ2KEVycm9yKCJGYWlsZWQgdG8gc2NoZWR1bGUgdGltZXIuIikpfSkpLnNQKGZ1bmN0aW9uKGIpe2cucWkuY2xlYXJUaW1lb3V0KEQpOwp0aHJvdyBiO30pfTsKRXU9ZnVuY3Rpb24obixXLC4uLkQpe24uVy5oYXMoVyl8fG4uVy5zZXQoVyxuZXcgeTgoVyxEKSl9Owp1ZT1mdW5jdGlvbihuLFcsLi4uRCl7bi5XLmhhcyhXKXx8bi5XLnNldChXLG5ldyBpZShXLEQpKX07Cm81PWZ1bmN0aW9uKG4pe24uSi5lbmFibGVkfHxuLkouc3RhcnQoKTtuLlYrKztuLlY+PW4uWCYmbi5qKCl9OwpGY2I9ZnVuY3Rpb24obil7Zm9yKGxldCBXPTA7VzxuLmxlbmd0aDtXKyspbltXXS5jbGVhcigpfTsKZHA9ZnVuY3Rpb24obixXLC4uLkQpeyhXPW4uTihXKSkmJlcgaW5zdGFuY2VvZiBpZSYmKGliVShXLC4uLkQpLG81KG4pKX07CnozPWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlIDIwMDpyZXR1cm4gMDtjYXNlIDQwMDpyZXR1cm4gMztjYXNlIDQwMTpyZXR1cm4gMTY7Y2FzZSA0MDM6cmV0dXJuIDc7Y2FzZSA0MDQ6cmV0dXJuIDU7Y2FzZSA0MDk6cmV0dXJuIDEwO2Nhc2UgNDEyOnJldHVybiA5O2Nhc2UgNDI5OnJldHVybiA4O2Nhc2UgNDk5OnJldHVybiAxO2Nhc2UgNTAwOnJldHVybiAyO2Nhc2UgNTAxOnJldHVybiAxMjtjYXNlIDUwMzpyZXR1cm4gMTQ7Y2FzZSA1MDQ6cmV0dXJuIDQ7ZGVmYXVsdDpyZXR1cm4gMn19Owp3TVM9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgMDpyZXR1cm4iT0siO2Nhc2UgMTpyZXR1cm4iQ0FOQ0VMTEVEIjtjYXNlIDI6cmV0dXJuIlVOS05PV04iO2Nhc2UgMzpyZXR1cm4iSU5WQUxJRF9BUkdVTUVOVCI7Y2FzZSA0OnJldHVybiJERUFETElORV9FWENFRURFRCI7Y2FzZSA1OnJldHVybiJOT1RfRk9VTkQiO2Nhc2UgNjpyZXR1cm4iQUxSRUFEWV9FWElTVFMiO2Nhc2UgNzpyZXR1cm4iUEVSTUlTU0lPTl9ERU5JRUQiO2Nhc2UgMTY6cmV0dXJuIlVOQVVUSEVOVElDQVRFRCI7Y2FzZSA4OnJldHVybiJSRVNPVVJDRV9FWEhBVVNURUQiO2Nhc2UgOTpyZXR1cm4iRkFJTEVEX1BSRUNPTkRJVElPTiI7Y2FzZSAxMDpyZXR1cm4iQUJPUlRFRCI7Y2FzZSAxMTpyZXR1cm4iT1VUX09GX1JBTkdFIjtjYXNlIDEyOnJldHVybiJVTklNUExFTUVOVEVEIjtjYXNlIDEzOnJldHVybiJJTlRFUk5BTCI7Y2FzZSAxNDpyZXR1cm4iVU5BVkFJTEFCTEUiO2Nhc2UgMTU6cmV0dXJuIkRBVEFfTE9TUyI7CmRlZmF1bHQ6cmV0dXJuIiJ9fTsKbGU9ZnVuY3Rpb24oKXt9OwpUMz1mdW5jdGlvbihuLFcsRCl7aWYoVz09bnVsbClELnB1c2goIm51bGwiKTtlbHNle2lmKHR5cGVvZiBXPT0ib2JqZWN0Iil7aWYoQXJyYXkuaXNBcnJheShXKSl7dmFyIGI9VztXPWIubGVuZ3RoO0QucHVzaCgiWyIpO3ZhciB2PSIiO2Zvcih2YXIgaz0wO2s8VztrKyspRC5wdXNoKHYpLFQzKG4sYltrXSxEKSx2PSIsIjtELnB1c2goIl0iKTtyZXR1cm59aWYoVyBpbnN0YW5jZW9mIFN0cmluZ3x8VyBpbnN0YW5jZW9mIE51bWJlcnx8VyBpbnN0YW5jZW9mIEJvb2xlYW4pVz1XLnZhbHVlT2YoKTtlbHNle0QucHVzaCgieyIpO3Y9IiI7Zm9yKGIgaW4gVylPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoVyxiKSYmKGs9V1tiXSx0eXBlb2YgayE9ImZ1bmN0aW9uIiYmKEQucHVzaCh2KSxqTyhiLEQpLEQucHVzaCgiOiIpLFQzKG4sayxEKSx2PSIsIikpO0QucHVzaCgifSIpO3JldHVybn19c3dpdGNoKHR5cGVvZiBXKXtjYXNlICJzdHJpbmciOmpPKFcsRCk7YnJlYWs7CmNhc2UgIm51bWJlciI6RC5wdXNoKGlzRmluaXRlKFcpJiYhaXNOYU4oVyk/U3RyaW5nKFcpOiJudWxsIik7YnJlYWs7Y2FzZSAiYm9vbGVhbiI6RC5wdXNoKFN0cmluZyhXKSk7YnJlYWs7Y2FzZSAiZnVuY3Rpb24iOkQucHVzaCgibnVsbCIpO2JyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoIlVua25vd24gdHlwZTogIit0eXBlb2YgVyk7fX19OwpqTz1mdW5jdGlvbihuLFcpe1cucHVzaCgnIicsbi5yZXBsYWNlKE1qWixmdW5jdGlvbihEKXt2YXIgYj1DcVtEXTtifHwoYj0iXFx1IisoRC5jaGFyQ29kZUF0KDApfDY1NTM2KS50b1N0cmluZygxNikuc2xpY2UoMSksQ3FbRF09Yik7cmV0dXJuIGJ9KSwnIicpfTsKUkJiPWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlIDA6cmV0dXJuIk5vIEVycm9yIjtjYXNlIDE6cmV0dXJuIkFjY2VzcyBkZW5pZWQgdG8gY29udGVudCBkb2N1bWVudCI7Y2FzZSAyOnJldHVybiJGaWxlIG5vdCBmb3VuZCI7Y2FzZSAzOnJldHVybiJGaXJlZm94IHNpbGVudGx5IGVycm9yZWQiO2Nhc2UgNDpyZXR1cm4iQXBwbGljYXRpb24gY3VzdG9tIGVycm9yIjtjYXNlIDU6cmV0dXJuIkFuIGV4Y2VwdGlvbiBvY2N1cnJlZCI7Y2FzZSA2OnJldHVybiJIdHRwIHJlc3BvbnNlIGF0IDQwMCBvciA1MDAgbGV2ZWwiO2Nhc2UgNzpyZXR1cm4iUmVxdWVzdCB3YXMgYWJvcnRlZCI7Y2FzZSA4OnJldHVybiJSZXF1ZXN0IHRpbWVkIG91dCI7Y2FzZSA5OnJldHVybiJUaGUgcmVzb3VyY2UgaXMgbm90IGF2YWlsYWJsZSBvZmZsaW5lIjtkZWZhdWx0OnJldHVybiJVbnJlY29nbml6ZWQgZXJyb3IgY29kZSJ9fTsKQko9ZnVuY3Rpb24oKXt9OwpGMT1mdW5jdGlvbigpe307CndwPWZ1bmN0aW9uKG4pe2cub1cuY2FsbCh0aGlzKTt0aGlzLmhlYWRlcnM9bmV3IE1hcDt0aGlzLlRDPW58fG51bGw7dGhpcy5KPSExO3RoaXMuTj1udWxsO3RoaXMuSz0iIjt0aGlzLlc9MDt0aGlzLmo9IiI7dGhpcy5YPXRoaXMudHc9dGhpcy5ZPXRoaXMuY0o9ITE7dGhpcy5EPTA7dGhpcy5WPW51bGw7dGhpcy5iZD0iIjt0aGlzLk89ITF9OwpRTVU9ZnVuY3Rpb24obixXLEQsYix2LGssaCl7dmFyIHg9bmV3IHdwO004LnB1c2goeCk7VyYmeC5TXygiY29tcGxldGUiLFcpO3guZUYoInJlYWR5Iix4LldVKTtrJiYoeC5EPU1hdGgubWF4KDAsaykpO2gmJih4Lk89aCk7eC5zZW5kKG4sRCxiLHYpfTsKVjg9ZnVuY3Rpb24obixXKXtuLko9ITE7bi5OJiYobi5YPSEwLG4uTi5hYm9ydCgpLG4uWD0hMSk7bi5qPVc7bi5XPTU7UjUobik7UTgobil9OwpSNT1mdW5jdGlvbihuKXtuLmNKfHwobi5jSj0hMCxuLmRpc3BhdGNoRXZlbnQoImNvbXBsZXRlIiksbi5kaXNwYXRjaEV2ZW50KCJlcnJvciIpKX07Cm5WPWZ1bmN0aW9uKG4pe2lmKG4uSiYmdHlwZW9mIGNKIT0idW5kZWZpbmVkIilpZihuLlkmJmE1KG4pPT00KXNldFRpbWVvdXQobi5OOC5iaW5kKG4pLDApO2Vsc2UgaWYobi5kaXNwYXRjaEV2ZW50KCJyZWFkeXN0YXRlY2hhbmdlIiksbi5pc0NvbXBsZXRlKCkpe24uZ2V0U3RhdHVzKCk7bi5KPSExO3RyeXtpZihuLmlzU3VjY2VzcygpKW4uZGlzcGF0Y2hFdmVudCgiY29tcGxldGUiKSxuLmRpc3BhdGNoRXZlbnQoInN1Y2Nlc3MiKTtlbHNle24uVz02O3RyeXt2YXIgVz1hNShuKT4yP24uTi5zdGF0dXNUZXh0OiIifWNhdGNoKEQpe1c9IiJ9bi5qPVcrIiBbIituLmdldFN0YXR1cygpKyJdIjtSNShuKX19ZmluYWxseXtROChuKX19fTsKUTg9ZnVuY3Rpb24obixXKXtpZihuLk4pe24uViYmKGNsZWFyVGltZW91dChuLlYpLG4uVj1udWxsKTtsZXQgRD1uLk47bi5OPW51bGw7V3x8bi5kaXNwYXRjaEV2ZW50KCJyZWFkeSIpO3RyeXtELm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsfWNhdGNoKGIpe319fTsKYTU9ZnVuY3Rpb24obil7cmV0dXJuIG4uTj9uLk4ucmVhZHlTdGF0ZTowfTsKVzM9ZnVuY3Rpb24obil7dHJ5e3JldHVybiBuLk4/bi5OLnJlc3BvbnNlVGV4dDoiIn1jYXRjaChXKXtyZXR1cm4iIn19OwpEbz1mdW5jdGlvbihuKXt0cnl7aWYoIW4uTilyZXR1cm4gbnVsbDtpZigicmVzcG9uc2UiaW4gbi5OKXJldHVybiBuLk4ucmVzcG9uc2U7c3dpdGNoKG4uYmQpe2Nhc2UgIiI6Y2FzZSAidGV4dCI6cmV0dXJuIG4uTi5yZXNwb25zZVRleHQ7Y2FzZSAiYXJyYXlidWZmZXIiOmlmKCJtb3pSZXNwb25zZUFycmF5QnVmZmVyImluIG4uTilyZXR1cm4gbi5OLm1velJlc3BvbnNlQXJyYXlCdWZmZXJ9cmV0dXJuIG51bGx9Y2F0Y2goVyl7cmV0dXJuIG51bGx9fTsKVmp0PWZ1bmN0aW9uKG4pe3ZhciBXPXt9O249KG4uTiYmYTUobik+PTI/bi5OLmdldEFsbFJlc3BvbnNlSGVhZGVycygpfHwiIjoiIikuc3BsaXQoIlxyXG4iKTtmb3IobGV0IGI9MDtiPG4ubGVuZ3RoO2IrKyl7aWYoZy5GaChuW2JdKSljb250aW51ZTt2YXIgRD1Td2gobltiXSk7bGV0IHY9RFswXTtEPURbMV07aWYodHlwZW9mIEQhPT0ic3RyaW5nIiljb250aW51ZTtEPUQudHJpbSgpO2xldCBrPVdbdl18fFtdO1dbdl09aztrLnB1c2goRCl9cmV0dXJuIFd4KFcsZnVuY3Rpb24oYil7cmV0dXJuIGIuam9pbigiLCAiKX0pfTsKdjM9ZnVuY3Rpb24obixXLEQpe3ZhciBiPWJuKCk7Vz1XKCk7bi5YKEQsYm4oKS1iKTtyZXR1cm4gV307Cm5sMT1mdW5jdGlvbihuLFcsRCxiKXtuPVVVYihQX2koS2NoKG5ldyBrWSxuKSkpLmtDKCk7Vy5sZW5ndGgmJlpiaChuLHRqVShuZXcgY0ZaLFcpKTtiIT09dm9pZCAwJiYobi5Saj1iKTt2YXIgdj1uZXcgYTRqKG4uYnVpbGQoKSk7Zy51KHYsbik7dmFyIGs9bmV3IGhxKHtmbHVzaChoKXt0cnl7di5mbHVzaChoKX1jYXRjaCh4KXtEKHgpfX19KTtrLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57c2V0VGltZW91dCgoKT0+e3RyeXtrLmooKX1maW5hbGx5e3YuZGlzcG9zZSgpfX0pfSk7CmsuWD0xRTU7ay5mbHVzaEludGVydmFsPTNFNDtrLkouc2V0SW50ZXJ2YWwoM0U0KTtyZXR1cm4ga307CldXcj1mdW5jdGlvbihuKXtpZihuLnRpbWVyPT09dm9pZCAwKXtsZXQgVz1NYXRoLm1heCgwLG4uTituLkotYm4oKSk7bi50aW1lcj1zZXRUaW1lb3V0KCgpPT57dHJ5e24uY2FsbGJhY2soKX1maW5hbGx5e24uTj1ibigpLG4udGltZXI9dm9pZCAwfX0sVyl9fTsKYnBNPWZ1bmN0aW9uKG4sVz1bXSl7cmV0dXJuIG5ldyBEaHgobixXKX07CmJuPWZ1bmN0aW9uKCl7cmV0dXJuIGdsb2JhbFRoaXMucGVyZm9ybWFuY2U/Lm5vdz8uKCk/P0RhdGUubm93KCl9OwpMVj1mdW5jdGlvbihuLFcpe2lmKG4uZGlzYWJsZSlyZXR1cm4gbmV3IHhZO1c9Vz9uMChXKTpbXTtyZXR1cm4gYnBNKHtWajpuLlZqLFJoOm4uSnAsTFQ6bi5SaSxSajpuLlJqLHREOm4udEQscm86bi5yb30sVyl9Owp2bHI9ZnVuY3Rpb24obil7aWYoIW4pcmV0dXJuIG51bGw7bj1KUyhuLDQpO3JldHVybiBuPT09bnVsbHx8bj09PXZvaWQgMD9udWxsOmszKG4pfTsKZyQ9ZnVuY3Rpb24oKXtlbS5pbnN0YW5jZXx8KGVtLmluc3RhbmNlPW5ldyBlbSk7cmV0dXJuIGVtLmluc3RhbmNlfTsKazVaPWZ1bmN0aW9uKG4sVyxELGIpe2lmKCFXJiYhRClyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7aWYoIWIpcmV0dXJuIFg2KFcsRCk7dmFyIHY7KHY9bi5KKVtiXXx8KHZbYl09bmV3IFByb21pc2UoKGssaCk9PntYNihXLEQpLnRoZW4oKCk9PntuLk49YjtrKCl9LHg9PntkZWxldGUgbi5KW2JdOwpoKHgpfSl9KSk7CnJldHVybiBuLkpbYl19Owp0cT1mdW5jdGlvbihuLFcpe3JldHVybiBrNVoobixnZShXLHF2LDEseFUpLGdlKFcsR0gsMix4VSksWTkoVywzLHZvaWQgMCx4VSkpfTsKWDY9ZnVuY3Rpb24obixXKXtyZXR1cm4gVz9oSFMoVyk6bj94aGIobik6UHJvbWlzZS5yZXNvbHZlKCl9OwpoSFM9ZnVuY3Rpb24obil7cmV0dXJuIG5ldyBQcm9taXNlKChXLEQpPT57dmFyIGI9Zy56RigiU0NSSVBUIiksdj12bHIobik7Zy5QTShiLHYpO2Iub25sb2FkPSgpPT57Zy5DVChiKTtXKCl9OwpiLm9uZXJyb3I9KCk9PntnLkNUKGIpO0QoRXJyb3IoIkVXTFMiKSl9OwooZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIkhFQUQiKVswXXx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5hcHBlbmRDaGlsZChiKX0pfTsKeGhiPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgUHJvbWlzZShXPT57dmFyIEQ9Zy56RigiU0NSSVBUIik7aWYobil7dmFyIGI9SlMobiw2KTtiPWI9PT1udWxsfHxiPT09dm9pZCAwP251bGw6bWMoYil9ZWxzZSBiPW51bGw7RC50ZXh0Q29udGVudD1LYihiKTtPTShEKTsoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIkhFQUQiKVswXXx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5hcHBlbmRDaGlsZChEKTtnLkNUKEQpO1coKX0pfTsKTFcyPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIEFTKG4sMSxXKX07CmVIaD1mdW5jdGlvbihuLFcpe3JldHVybiBBUyhuLDIsVyl9OwpnbGg9ZnVuY3Rpb24obixXKXtyZXR1cm4gQVMobiwzLFcpfTsKc2w9YXN5bmMgZnVuY3Rpb24obixXLEQsYix2KXtXPWdsaChlSGgoTFcyKG5ldyAkWSxuLnJlcXVlc3RLZXkpLFcpLEQpO0Q9bi5OKCk7bj1hd2FpdCBiLlYoImMiLG4ucmVxdWVzdEtleSx2LG4uY2xpZW50LmNyZWF0ZShXLEQpKTt2YXIgaz1WbChSeihuLDIpKTtpZihrLmxlbmd0aClyZXR1cm4gdjMoYiwoKT0+e3ZhciBoPW5ldyBVaW50OEFycmF5KGsubGVuZ3RoKTtmb3IodmFyIHg9MDt4PGsubGVuZ3RoO3grKyloW3hdPWtbeF0rOTc7aWYoZy5xaS5UZXh0RGVjb2RlciloPShuZXcgVGV4dERlY29kZXIpLmRlY29kZShoKTtlbHNlIGlmKGgubGVuZ3RoPD04MTkyKWg9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLGgpO2Vsc2V7eD0iIjtmb3IobGV0IEw9MDtMPGgubGVuZ3RoO0wrPTgxOTIpe2xldCBlPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGgsTCxMKzgxOTIpO3grPVN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxlKX1oPXh9cmV0dXJuIFg0WihoKX0sCiJVIik7CmI9Z2UobixyJCwxKTtpZighYil0aHJvdyBFcnJvcigiTWlzc2luZyBmaWVsZCIpO3JldHVybiBifTsKSDM9YXN5bmMgZnVuY3Rpb24obixXLEQsYil7dmFyIHY9bi5OKCk7dmFyIGs9bmV3IE52O2s9QVMoaywxLG4ucmVxdWVzdEtleSk7dmFyIGg9QVMoaywyLFcpO1c9RC5WO2s9bi5yZXF1ZXN0S2V5O249bi5jbGllbnQ7dj1ZWShuLk4sbi5KKyIvJHJwYy9nb29nbGUuaW50ZXJuYWwud2FhLnYxLldhYS9HZW5lcmF0ZUlUIixoLHZ8fHt9LHFUUyk7cmV0dXJuIFcuY2FsbChELCJnIixrLGIsdil9OwpHNWg9ZnVuY3Rpb24obixXLEQsYix2KXtyZXR1cm4gbiBpbnN0YW5jZW9mIGZWP3NsKG4sYix2LFcsRCk6c2wobixiLHYsbmV3IHhZLDApfTsKckFiPWFzeW5jIGZ1bmN0aW9uKG4sVyxELGI9ZyQoKSx2PVByb21pc2UucmVzb2x2ZSh2b2lkIDApLGspe2F3YWl0IDA7Zm9yKHZhciBoOzspe2xldCB4PW51bGw7aWYoaCl7SnEobiw3KTt0cnl7eD1hd2FpdCBJaShoLnNuYXBzaG90KHt9KSxrLmpkLCgpPT5Qcm9taXNlLnJlc29sdmUoIkU6Q1RPIikpfWNhdGNoKEcpe3g9IkU6VUNFIn19bGV0IEwsZT1uZXcgZy5oSChoP2sudzg6ay5DcSxrLm96LGsuZDgsay5BaSk7CmZvcihsZXQgRz0xO0c8PWsubWF4QXR0ZW1wdHM7RysrKXtpZihHIT09MSl7SnEobiwwKTtuLk49bmV3IFNtKGUuZ2V0VmFsdWUoKSxrLnVtLGsubmIpO2xldCByPWF3YWl0IG4uTi5wcm9taXNlO24uTj12b2lkIDA7cj09PTE/KEc9MSxlLnJlc2V0KCkpOmcueEUoZSl9dHJ5e2xldCByO0Q/cj1EOihKcShuLDUpLHI9YXdhaXQgSWkoRzVoKFcsbi5sb2dnZXIsRyxiLk4seCksay5ocCwoKT0+UHJvbWlzZS5yZWplY3QoRXJyb3IoIlJHRjpGZXRjaCB0aW1lZCBvdXQiKSkpKTsKSnEobiwzKTthd2FpdCBJaSh0cShiLHIpLGsuUVgsKCk9PlByb21pc2UucmVqZWN0KEVycm9yKCJEVFo6U2NyaXB0IHRpbWVkIG91dCIpKSk7CkpxKG4sOCk7YXdhaXQgdjtsZXQgTj1uZXcgQXEoe2NoYWxsZW5nZTpyLHgzOm4ub3B0aW9ucy54Myx3MzpuLm9wdGlvbnMudzN9KTthd2FpdCBJaShOLk92LGsucUssKCk9PlByb21pc2UucmVqZWN0KEVycm9yKCJRRUc6U2V0dXAgdGltZWQgb3V0IikpKTsKTD1OO2JyZWFrfWNhdGNoKHIpe24uaGFuZGxlRXJyb3IociksbUkobil9fWlmKG4ucU4oKSlicmVhaztMJiYoRD12b2lkIDAsdDFVKG4saCksaD1MLCRoaChuLEwpLG1JKG4pKTtKcShuLDIpO24uTj1uZXcgU20oay5GWixrLnVtLGsubmIpO24uaXNQYXVzZWQmJm4uTi5wYXVzZSgpO2F3YWl0IG4uTi5wcm9taXNlO24uTj12b2lkIDA7aWYobi5xTigpKWJyZWFrfWg/LmRpc3Bvc2UoKX07CnNQMj1mdW5jdGlvbihuKXtuLks9RXJyb3IoIkNhbmNlbGxlZCBieSBkaXNwb3NlIik7bi5qLnJlc29sdmUoKTtXMihuLlYucHJvbWlzZSk7bi5WLnJlamVjdChFcnJvcigiQ2FuY2VsbGVkIGJ5IGRpc3Bvc2UiKSk7bi5sb2dnZXIuZGlzcG9zZSgpO1Byb21pc2UuYWxsKG4uWCkudGhlbihhc3luYygpPT57bi5XPy5kaXNwb3NlKCk7bi5XPXZvaWQgMH0pOwpuLlg9W107bi5OPy5KKCk7VzIobi5KLnByb21pc2UpO24uSi5yZWplY3QoRXJyb3IoIkNhbmNlbGxlZCBieSBkaXNwb3NlIikpfTsKTlR0PWFzeW5jIGZ1bmN0aW9uKG4pe2lmKG4ucU4oKSl0aHJvdyBFcnJvcigiQWxyZWFkeSBkaXNwb3NlZCIpO24uTj8uSigpO2F3YWl0IG4uSi5wcm9taXNlfTsKcDRpPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5xSjtuLnFKPSgpPT57RCgpO1coKX19OwokaGg9ZnVuY3Rpb24obixXKXtuLnFOKCl8fChuLlc9VyxuLmxvZ2dlci51cGRhdGUoVy5RRCgpKSxuLmoucmVzb2x2ZSgpLG4uVi5yZXNvbHZlKHZvaWQgMCksbi5xSigpKX07CnQxVT1mdW5jdGlvbihuLFcpe1cmJihQcm9taXNlLmFsbChuLlgpLnRoZW4oKCk9PnZvaWQgVy5kaXNwb3NlKCkpLG4uWD1bXSl9OwpKcT1mdW5jdGlvbihuLFcpe24uWT1XO24ub3B0aW9ucy5mUD8uKFcpfTsKbUk9ZnVuY3Rpb24obil7bi5xTigpfHwobi5KLnJlc29sdmUoKSxuLko9bmV3IGcuS1YpfTsKSWk9ZnVuY3Rpb24obixXLEQpe3ZhciBiO0Q9KG5ldyBQcm9taXNlKHY9PntiPXNldFRpbWVvdXQodixXKX0pKS50aGVuKEQpOwpXMihEKTtyZXR1cm4gUHJvbWlzZS5yYWNlKFtuLmZpbmFsbHkoKCk9PnZvaWQgY2xlYXJUaW1lb3V0KGIpKSwKRF0pfTsKWVRVPWZ1bmN0aW9uKG4sVyl7bi5lbmRUaW1lTXM9RGF0ZS5ub3coKStXO24udGljaygpfTsKT2w9ZnVuY3Rpb24obil7bi5OJiYoY2xlYXJUaW1lb3V0KG4uTiksbi5OPW51bGwpfTsKUDM9ZnVuY3Rpb24obixXKXt0cnl7cmV0dXJuIGdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShuLFcpLCEwfWNhdGNoKEQpe3JldHVybiExfX07ClpvPWZ1bmN0aW9uKG4sVz0wLEQ9bi5sZW5ndGgsYil7dmFyIHY9MDtmb3IoYiYmKHY9Wm8oYikpO1c8RDtXKyspdj1IcGkoMzEsdikrKHR5cGVvZiBuPT09InN0cmluZyI/bi5jaGFyQ29kZUF0KFcpOm5bV10pfDA7cmV0dXJuIHZ9Owp5aT1mdW5jdGlvbihuKXt2YXIgW1csRF09W1pvKG4sMCxuLmxlbmd0aD4+MSxVbCksWm8obixuLmxlbmd0aD4+MSldO3JldHVybiBXLnRvU3RyaW5nKDE2KStELnRvU3RyaW5nKDE2KX07CkVsPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9W1pvKFcsMCxXLmxlbmd0aD4+MSx2b2lkIDApLFpvKFcsVy5sZW5ndGg+PjEpXTtuPW5ldyBVaW50MzJBcnJheShuLmJ1ZmZlcik7Vz1uWzBdO3ZhciBbYix2XT1EO2ZvcihEPTE7RDxuLmxlbmd0aDtEKz0yKXt2YXIgaz1XLGg9RCx4PWIsTD12O2ZvcihsZXQgZT0wO2U8MjI7ZSsrKWg9aD4+Pjh8aDw8MjQsaCs9a3wwLGhePXgrMzgyOTMsaz1rPDwzfGs+Pj4yOSxrXj1oLEw9TD4+Pjh8TDw8MjQsTCs9eHwwLExePWUrMzgyOTMseD14PDwzfHg+Pj4yOSx4Xj1MO2s9W2ssaF07bltEXV49a1swXTtEKzE8bi5sZW5ndGgmJihuW0QrMV1ePWtbMV0pfX07CmZlYj1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPSg0LShVbC5sZW5ndGgrRC5sZW5ndGgpJTQpJTQsaD1uZXcgVWludDhBcnJheSg0K2srVWwubGVuZ3RoKzQrRC5sZW5ndGgpLHg9bmV3IERhdGFWaWV3KGguYnVmZmVyKSxMPTA7eC5zZXRVaW50MzIoTCxNYXRoLnJhbmRvbSgpKjQyOTQ5NjcyOTUpO0w9TCs0K2s7aC5zZXQoVWwsTCk7TCs9VWwubGVuZ3RoO3guc2V0VWludDMyKEwsdik7aC5zZXQoRCxMKzQpO0VsKGgsYik7cmV0dXJuIG4ucXAoVyxlPT52b2lkIGdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShlKSk/UDMoVyxnLkVBKGgpKT8icyI6InQiOiJpIn07CkpBdz1mdW5jdGlvbihuLFcpe3ZhciBEPWdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShuKTtpZighRClyZXR1cm5bIm0iXTt0cnl7dmFyIGI9bHAoRCk7RWwoYixXKX1jYXRjaCh2KXtyZXR1cm4gZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKG4pLFsiYyJdfWZvcihXPTQ7Vzw3JiZiW1ddPT09MDspVysrO2ZvcihEPTA7RDxVbC5sZW5ndGg7RCsrKWlmKGJbVysrXSE9PVVsW0RdKXJldHVybiBnbG9iYWxUaGlzLnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0obiksWyJkIl07RD0obmV3IERhdGFWaWV3KGIuYnVmZmVyKSkuZ2V0VWludDMyKFcpO3JldHVybiBNYXRoLmZsb29yKERhdGUubm93KCkvMUUzKT49RD8oZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKG4pLFsiZSJdKTpbImEiLG5ldyBVaW50OEFycmF5KGIuYnVmZmVyLFcrNCldfTsKSWV3PWZ1bmN0aW9uKG4pe3ZhciBXPWdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgiaVU1cS0hTzlAJCIpO2lmKCFXKXJldHVybiBuZXcgdW4obik7dmFyIEQ9Vy5zcGxpdCgiLCIpO2lmKEQubGVuZ3RoPDIpcmV0dXJuIGdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbSgiaVU1cS0hTzlAJCIpLG5ldyB1bihuKTtXPUQuc2xpY2UoMSk7Vy5sZW5ndGg9PT0xJiZXWzBdPT09IiImJihXPVtdKTtEPU51bWJlcihEWzBdKTtyZXR1cm4gaXNOYU4oRCl8fEQ8MHx8RD5XLmxlbmd0aD8oZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKCJpVTVxLSFPOUAkIiksbmV3IHVuKG4pKTpuZXcgdW4obixELFcpfTsKbWh3PWZ1bmN0aW9uKG4pe2Z1bmN0aW9uIFcoKXtELT1iO0QtPXY7RF49dj4+PjEzO2ItPXY7Yi09RDtiXj1EPDw4O3YtPUQ7di09Yjt2Xj1iPj4+MTM7RC09YjtELT12O0RePXY+Pj4xMjtiLT12O2ItPUQ7Yl49RDw8MTY7di09RDt2LT1iO3ZePWI+Pj41O0QtPWI7RC09djtEXj12Pj4+MztiLT12O2ItPUQ7Yl49RDw8MTA7di09RDt2LT1iO3ZePWI+Pj4xNX0Kbj1TVHIobik7Zm9yKHZhciBEPTI2NTQ0MzU3NjksYj0yNjU0NDM1NzY5LHY9MzE0MTU5MjY1LGs9bi5sZW5ndGgsaD1rLHg9MDtoPj0xMjtoLT0xMix4Kz0xMilEKz1vaShuLHgpLGIrPW9pKG4seCs0KSx2Kz1vaShuLHgrOCksVygpO3YrPWs7c3dpdGNoKGgpe2Nhc2UgMTE6dis9blt4KzEwXTw8MjQ7Y2FzZSAxMDp2Kz1uW3grOV08PDE2O2Nhc2UgOTp2Kz1uW3grOF08PDg7Y2FzZSA4OmIrPW5beCs3XTw8MjQ7Y2FzZSA3OmIrPW5beCs2XTw8MTY7Y2FzZSA2OmIrPW5beCs1XTw8ODtjYXNlIDU6Yis9blt4KzRdO2Nhc2UgNDpEKz1uW3grM108PDI0O2Nhc2UgMzpEKz1uW3grMl08PDE2O2Nhc2UgMjpEKz1uW3grMV08PDg7Y2FzZSAxOkQrPW5beCswXX1XKCk7cmV0dXJuIEFBUy50b1N0cmluZyh2KX07ClNUcj1mdW5jdGlvbihuKXt2YXIgVz1bXTtmb3IobGV0IEQ9MDtEPG4ubGVuZ3RoO0QrKylXLnB1c2gobi5jaGFyQ29kZUF0KEQpKTtyZXR1cm4gV307Cm9pPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG5bVyswXSsobltXKzFdPDw4KSsobltXKzJdPDwxNikrKG5bVyszXTw8MjQpfTsKZCQ9ZnVuY3Rpb24obixXKXt2YXIgRD1zZXRUaW1lb3V0KCgpPT57bi5YLnJlc29sdmUoKX0sVyk7Cm4uYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9PnZvaWQgY2xlYXJUaW1lb3V0KEQpKX07CmxuPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9YCR7VyhuLmVycm9yLm1lc3NhZ2UpfToke1cobi5lcnJvci5zdGFjayl9YC5zdWJzdHJpbmcoMCwyMDQ4KTtXPUQubGVuZ3RoKzE7RD16SChEKTt2YXIgYj1uZXcgVWludDhBcnJheSg0K0QubGVuZ3RoKTtiLnNldChbNDIsVyYxMjd8MTI4LFc+Pjcsbi5lcnJvci5jb2RlXSk7Yi5zZXQoRCw0KTtyZXR1cm4gYn07CnpIPWZ1bmN0aW9uKG4pe3JldHVybiBnbG9iYWxUaGlzLlRleHRFbmNvZGVyPyhuZXcgVGV4dEVuY29kZXIpLmVuY29kZShuKTpMMChuKX07CktXVT1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIG4gaW5zdGFuY2VvZiBmVj9IMyhuLEQsVywxKTpuLlpqKEQpfTsKQjM9YXN5bmMgZnVuY3Rpb24obil7dmFyIFc9dm9pZCAwO24uaisrO3ZhciBEPW5ldyBnLktWO24uTzEgaW5zdGFuY2VvZiBUSCYmbi5PMS5YLnB1c2goRC5wcm9taXNlKTtpZihuLlhsKXtsZXQgaz1uZXcgZy5LVjtzZXRUaW1lb3V0KCgpPT52b2lkIGsucmVzb2x2ZSgpKTsKYXdhaXQgay5wcm9taXNlfXZhciBiPW4ubG9nZ2VyLnNoYXJlKCk7dHJ5e24uc3RhdGU9NTtsZXQgaz1bXSxoPWF3YWl0IElpKG4uTzEuc25hcHNob3Qoe3dfOnt9LHRMOmt9KSxuLmtkLnJTLCgpPT5Qcm9taXNlLnJlamVjdChuZXcgUUcoMTUsIk1EQTpUaW1lb3V0IikpKTsKam0obiwiTURBOkRpc3Bvc2VkIik7bGV0IHg9a1swXTtuLnN0YXRlPTY7bGV0IEw9YXdhaXQgSWkoS1dVKG4uVWcsYixoKSxuLmtkLlhVLCgpPT5Qcm9taXNlLnJlamVjdChuZXcgUUcoMTAsIkJXQjpUaW1lb3V0IikpKTsKam0obiwiQldCOkRpc3Bvc2VkIik7bi5zdGF0ZT03O1c9djMoYiwoKT0+e3ZhciBlPU9waShuLEwsRCx4KTtlLlgucHJvbWlzZS50aGVuKCgpPT52b2lkIG4uVigpKTsKcmV0dXJuIGV9LCJpIil9Y2F0Y2goayl7Vz8uZGlzcG9zZSgpOwppZighbi5KKXtsZXQgaD1QZjIobixrKTtELnJlc29sdmUoKTt2YXIgdjtpZih2PW4uTzEgaW5zdGFuY2VvZiBUSCYmbi5qPDIpYTppZihrIGluc3RhbmNlb2YgUUcpdj1rLmNvZGUhPT0zMiYmay5jb2RlIT09MjAmJmsuY29kZSE9PTEwO2Vsc2V7aWYoayBpbnN0YW5jZW9mIENWKXN3aXRjaChrLmNvZGUpe2Nhc2UgMjpjYXNlIDEzOmNhc2UgMTQ6Y2FzZSA0OmJyZWFrO2RlZmF1bHQ6dj0hMTticmVhayBhfXY9ITB9aWYodil7bGV0IHg9c2V0VGltZW91dCgoKT0+dm9pZCBuLlYoKSwoMStNYXRoLnJhbmRvbSgpKi4yNSkqKG4uTj82RTQ6MUUzKSk7Cm4uYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9PnZvaWQgY2xlYXJUaW1lb3V0KHgpKTsKcmV0dXJufW4uSj1ofWIuSihuLk4/MTM6MTQpO24uWC5yZWplY3Qobi5KKTtyZXR1cm59ZmluYWxseXtiLmRpc3Bvc2UoKX1uLnN0YXRlPTg7bi5qPTA7bi5OPy5kaXNwb3NlKCk7bi5OPVc7bi5YLnJlc29sdmUoKX07ClBmMj1mdW5jdGlvbihuLFcpe2lmKCEoVyBpbnN0YW5jZW9mIFFHKSlpZihXIGluc3RhbmNlb2YgQ1Ype2xldCBEPUVycm9yKFcudG9TdHJpbmcoKSk7RC5zdGFjaz1XLnN0YWNrO1c9bmV3IFFHKDExLCJFQkg6RXJyb3IiLEQpfWVsc2UgVz1uZXcgUUcoMTIsIkJTTzpVbmtub3duIixXKTtyZXR1cm4gbi5yZXBvcnRFcnJvcihXKX07CmptPWZ1bmN0aW9uKG4sVyl7aWYobi5xTigpKXRocm93IG5ldyBRRyhuLk4/MjA6MzIsVyk7fTsKT3BpPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PSh1NChpVyhXLDIpKT8/MCkqMUUzO2lmKHY8PTApdGhyb3cgbmV3IFFHKDMxLCJUVE06SW52YWxpZCIpO2lmKFk5KFcsNCkpcmV0dXJuIG5ldyBacHQobi5sb2dnZXIsWTkoVyw0KSx2KTtpZighKHU0KGlXKFcsMykpPz8wKSlyZXR1cm4gbmV3IFVoaihuLmxvZ2dlcixWbChSeihXLDEpKSx2KTtpZighYil0aHJvdyBuZXcgUUcoNCwiUE1EOlVuZGVmaW5lZCIpO2I9YihWbChSeihXLDEpKSk7aWYodHlwZW9mIGIhPT0iZnVuY3Rpb24iKXRocm93IG5ldyBRRygxNiwiQVBGOkZhaWxlZCIpO24uSz1NYXRoLmZsb29yKChEYXRlLm5vdygpK3YpLzFFMyk7bj1uZXcgRjYobi5sb2dnZXIsYix1NChpVyhXLDMpKT8/MCx2KTtuLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT52b2lkIEQucmVzb2x2ZSgpKTsKcmV0dXJuIG59OwpNdj1mdW5jdGlvbihuLFcsRCl7dHJ5e2lmKG4ucU4oKSl0aHJvdyBuZXcgUUcoMjEsIkJOVDpkaXNwb3NlZCIpO2lmKCFuLk4mJm4uSil0aHJvdyBuLko7cmV0dXJuIHlBMShuLFcsRCk/P0VsaShuLFcsRCk/P2lwcihuLFcsRCl9Y2F0Y2goYil7aWYoIVcuRVIpdGhyb3cgdyQobixiKTtyZXR1cm4gdU1aKG4sRCxiKX19Owp3JD1mdW5jdGlvbihuLFcpe1c9VyBpbnN0YW5jZW9mIFFHP1c6bmV3IFFHKDUsIlRWRDplcnJvciIsVyk7cmV0dXJuIG4ucmVwb3J0RXJyb3IoVyl9Owp5QTE9ZnVuY3Rpb24obixXLEQpe3JldHVybiBuLk4/LkZwKCgpPT5SaShuLFcpLEQsYj0+e2lmKG4uTiBpbnN0YW5jZW9mIEY2JiZXLmhHPy5yMyl0cnl7bi5jYWNoZT8uTihSaShuLFcpLGIsVy5oRy5hbSxuLkstMTIwKX1jYXRjaCh2KXtuLnJlcG9ydEVycm9yKG5ldyBRRygyNCwiRUxYOndyaXRlIix2KSl9fSl9OwpFbGk9ZnVuY3Rpb24obixXLEQpe2lmKFcuaEc/LkFCKXRyeXtsZXQgYj1uLmNhY2hlPy5KKFJpKG4sVyksVy5oRy5hbSk7cmV0dXJuIGI/RD92MyhuLmxvZ2dlciwoKT0+Zy5FQShiLDIpLCJhIik6Yjp2b2lkIDB9Y2F0Y2goYil7bi5yZXBvcnRFcnJvcihuZXcgUUcoMjMsIlJYTzpyZWFkIixiKSl9fTsKaXByPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj17c3RhY2s6W10sZXJyb3I6dm9pZCAwLGhhc0Vycm9yOiExfTt0cnl7aWYoIVcuR3IpdGhyb3cgbmV3IFFHKDI5LCJTREY6bm90cmVhZHkiKTtyZXR1cm4gemIoYixuZXcgUWkobi5sb2dnZXIsMCxuLnN0YXRlKSkuRnAoKCk9PlJpKG4sVyksRCl9Y2F0Y2godil7Yi5lcnJvcj12LGIuaGFzRXJyb3I9ITB9ZmluYWxseXtseChiKX19Owp1TVo9ZnVuY3Rpb24obixXLEQpe3ZhciBiPXtzdGFjazpbXSxlcnJvcjp2b2lkIDAsaGFzRXJyb3I6ITF9O3RyeXtsZXQgdj13JChuLEQpO3JldHVybiB6YihiLG5ldyBvbHcobi5sb2dnZXIsdikpLkZwKCgpPT5bXSxXKX1jYXRjaCh2KXtiLmVycm9yPXYsYi5oYXNFcnJvcj0hMH1maW5hbGx5e2x4KGIpfX07ClJpPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFcueEM/Vy54QzpXLndfP3YzKG4ubG9nZ2VyLCgpPT5XLnhDPXpIKFcud18pLCJjIik6W119OwpuVz1mdW5jdGlvbigpe3ZhciBuPTAsVztyZXR1cm4gRD0+e1d8fChXPW5ldyB4WSk7dmFyIGI9bmV3IFFpKFcsbiwxKSx2PWIuRnAoKCk9PnpIKEQpLCEwKTsKYi5kaXNwb3NlKCk7bisrO3JldHVybiB2fX07CmcuV1k9ZnVuY3Rpb24obixXKXtpZihuKWZvcihsZXQgRCBpbiBuKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLEQpJiZXKG5bRF0sRCxuKX07CnpIaT1mdW5jdGlvbigpe3ZhciBuPVtdO2cuV1koZGhaLFc9PntuLnB1c2goVyl9KTsKcmV0dXJuIG59OwpUVHI9ZnVuY3Rpb24oKXt2YXIgbj1nLkRhKCJJRlJBTUUiKSxXPXt9O2cueTIobGVTKCksRD0+e24uc2FuZGJveCYmbi5zYW5kYm94LnN1cHBvcnRzJiZuLnNhbmRib3guc3VwcG9ydHMoRCkmJihXW0RdPSEwKX0pOwpyZXR1cm4gV307CmcuRGE9ZnVuY3Rpb24obixXPWRvY3VtZW50KXtyZXR1cm4gVy5jcmVhdGVFbGVtZW50KFN0cmluZyhuKS50b0xvd2VyQ2FzZSgpKX07CmcuYnI9ZnVuY3Rpb24obixXLEQsYil7dGhpcy5sZWZ0PW47dGhpcy50b3A9Vzt0aGlzLndpZHRoPUQ7dGhpcy5oZWlnaHQ9Yn07CnZZPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG49PVc/ITA6biYmVz9uLmxlZnQ9PVcubGVmdCYmbi53aWR0aD09Vy53aWR0aCYmbi50b3A9PVcudG9wJiZuLmhlaWdodD09Vy5oZWlnaHQ6ITF9OwpnLmgxPWZ1bmN0aW9uKG4sVyxEKXtpZih0eXBlb2YgVz09PSJzdHJpbmciKWtxKG4sRCxXKTtlbHNlIGZvcihsZXQgYiBpbiBXKWtxKG4sV1tiXSxiKX07CmtxPWZ1bmN0aW9uKG4sVyxEKXsoRD14cShuLEQpKSYmKGpQQy50ZXN0KEQpP24uc3R5bGUuc2V0UHJvcGVydHkoRCxXKTpuLnN0eWxlW0RdPVcpfTsKeHE9ZnVuY3Rpb24obixXKXt2YXIgRD1MV1tXXTtpZighRCl7dmFyIGI9cHAoVyk7RD1iO24uc3R5bGVbYl09PT12b2lkIDAmJihiPShnLlpsPyJXZWJraXQiOmcuZVM/Ik1veiI6bnVsbCkrSTFpKGIpLG4uc3R5bGVbYl0hPT12b2lkIDAmJihEPWIpKTtMV1tXXT1EfXJldHVybiBEfTsKZy5naD1mdW5jdGlvbihuLFcpe3ZhciBEPW4uc3R5bGVbcHAoVyldO3JldHVybiB0eXBlb2YgRCE9PSJ1bmRlZmluZWQiP0Q6bi5zdHlsZVt4cShuLFcpXXx8IiJ9OwpYbT1mdW5jdGlvbihuLFcpe3ZhciBEPWcuSksobik7cmV0dXJuIEQuZGVmYXVsdFZpZXcmJkQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZSYmKG49RC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKG4sbnVsbCkpP25bV118fG4uZ2V0UHJvcGVydHlWYWx1ZShXKXx8IiI6IiJ9OwpxdD1mdW5jdGlvbihuKXt0cnl7cmV0dXJuIG4uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCl9Y2F0Y2goVyl7cmV0dXJue2xlZnQ6MCx0b3A6MCxyaWdodDowLGJvdHRvbTowfX19OwpnLkdOPWZ1bmN0aW9uKG4pe3ZhciBXPWcuSksobiksRD1uZXcgZy5NWSgwLDApO2lmKG49PShXP2cuSksoVyk6ZG9jdW1lbnQpLmRvY3VtZW50RWxlbWVudClyZXR1cm4gRDtuPXF0KG4pO1c9Zy5TcChXKTtXPWcuRTAoVy5OKTtELng9bi5sZWZ0K1cueDtELnk9bi50b3ArVy55O3JldHVybiBEfTsKZy4kcT1mdW5jdGlvbihuLFcpe249dDEobik7Vz10MShXKTtyZXR1cm4gbmV3IGcuTVkobi54LVcueCxuLnktVy55KX07Cmcucmg9ZnVuY3Rpb24obil7bj1xdChuKTtyZXR1cm4gbmV3IGcuTVkobi5sZWZ0LG4udG9wKX07CnQxPWZ1bmN0aW9uKG4pe2lmKG4ubm9kZVR5cGU9PTEpcmV0dXJuIGcucmgobik7bj1uLmNoYW5nZWRUb3VjaGVzP24uY2hhbmdlZFRvdWNoZXNbMF06bjtyZXR1cm4gbmV3IGcuTVkobi5jbGllbnRYLG4uY2xpZW50WSl9OwpOdD1mdW5jdGlvbihuLFcpe2lmKFcgaW5zdGFuY2VvZiBnLlFlKXt2YXIgRD1XLmhlaWdodDtXPVcud2lkdGh9ZWxzZSB0aHJvdyBFcnJvcigibWlzc2luZyBoZWlnaHQgYXJndW1lbnQiKTtuLnN0eWxlLndpZHRoPXNqKFcsITApO24uc3R5bGUuaGVpZ2h0PXNqKEQsITApfTsKc2o9ZnVuY3Rpb24obixXKXt0eXBlb2Ygbj09Im51bWJlciImJihuPShXP01hdGgucm91bmQobik6bikrInB4Iik7cmV0dXJuIG59OwpnLnBXPWZ1bmN0aW9uKG4pe3ZhciBXPUNmMSxEOyhEPVhtKG4sImRpc3BsYXkiKSl8fChEPW4uY3VycmVudFN0eWxlP24uY3VycmVudFN0eWxlLmRpc3BsYXk6bnVsbCk7aWYoKER8fG4uc3R5bGUmJm4uc3R5bGUuZGlzcGxheSkhPSJub25lIilyZXR1cm4gVyhuKTtEPW4uc3R5bGU7dmFyIGI9RC5kaXNwbGF5LHY9RC52aXNpYmlsaXR5LGs9RC5wb3NpdGlvbjtELnZpc2liaWxpdHk9ImhpZGRlbiI7RC5wb3NpdGlvbj0iYWJzb2x1dGUiO0QuZGlzcGxheT0iaW5saW5lIjtuPVcobik7RC5kaXNwbGF5PWI7RC5wb3NpdGlvbj1rO0QudmlzaWJpbGl0eT12O3JldHVybiBufTsKQ2YxPWZ1bmN0aW9uKG4pe3ZhciBXPW4ub2Zmc2V0V2lkdGgsRD1uLm9mZnNldEhlaWdodCxiPWcuWmwmJiFXJiYhRDtyZXR1cm4oVz09PXZvaWQgMHx8YikmJm4uZ2V0Qm91bmRpbmdDbGllbnRSZWN0PyhuPXF0KG4pLG5ldyBnLlFlKG4ucmlnaHQtbi5sZWZ0LG4uYm90dG9tLW4udG9wKSk6bmV3IGcuUWUoVyxEKX07CkZXWj1mdW5jdGlvbihuLFc9e30pe3JldHVybiBuZXcgQlR0KG4sVyl9Owp3NHI9ZnVuY3Rpb24obil7bi5WLnhWKCJkYXRhIixXPT57aWYoIjEiaW4gVyl7dmFyIEQ9V1siMSJdO2xldCBiO3RyeXtiPW4uSyhEKX1jYXRjaCh2KXtZcShuLG5ldyBDVigxMyxgRXJyb3Igd2hlbiBkZXNlcmlhbGl6aW5nIHJlc3BvbnNlIGRhdGE7IGVycm9yOiAke3Z9LCByZXNwb25zZTogJHtEfWApKX1iJiZIWShuLGIpfWlmKCIyImluIFcpZm9yKFc9ZlcobixXWyIyIl0pLEQ9MDtEPG4uai5sZW5ndGg7RCsrKW4ualtEXShXKX0pOwpuLlYueFYoImVuZCIsKCk9PntKMShuLElzKG4pKTtmb3IobGV0IFc9MDtXPG4uVy5sZW5ndGg7VysrKW4uV1tXXSgpfSk7Cm4uVi54VigiZXJyb3IiLCgpPT57aWYobi5OLmxlbmd0aCE9PTApe3ZhciBXPW4ueGhyLlc7VyE9PTB8fG4ueGhyLmlzU3VjY2VzcygpfHwoVz02KTt2YXIgRD0tMTtzd2l0Y2goVyl7Y2FzZSAwOnZhciBiPTI7YnJlYWs7Y2FzZSA3OmI9MTA7YnJlYWs7Y2FzZSA4OmI9NDticmVhaztjYXNlIDY6RD1uLnhoci5nZXRTdGF0dXMoKTtiPXozKEQpO2JyZWFrO2RlZmF1bHQ6Yj0xNH1KMShuLElzKG4pKTtXPVJCYihXKSsiLCBlcnJvcjogIituLnhoci5nZXRMYXN0RXJyb3IoKTtEIT09LTEmJihXKz1gLCBodHRwIHN0YXR1cyBjb2RlOiAke0R9YCk7WXEobixuZXcgQ1YoYixXKSl9fSl9OwpZcT1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRD0wO0Q8bi5OLmxlbmd0aDtEKyspbi5OW0RdKFcpfTsKSjE9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQ9MDtEPG4uWC5sZW5ndGg7RCsrKW4uWFtEXShXKX07CklzPWZ1bmN0aW9uKG4pe3ZhciBXPXt9LEQ9Vmp0KG4ueGhyKTtPYmplY3Qua2V5cyhEKS5mb3JFYWNoKGI9PntXW2JdPURbYl19KTsKcmV0dXJuIFd9OwpIWT1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRD0wO0Q8bi5KLmxlbmd0aDtEKyspbi5KW0RdKFcpfTsKZlc9ZnVuY3Rpb24obixXKXt2YXIgRD0yLGI9e307dHJ5e2xldCBrO2s9TTFiKFcpO0Q9YVAoaywxKTt2YXIgdj1rLmdldE1lc3NhZ2UoKTtWRyhrLFJIaSwzKS5sZW5ndGgmJihiWyJncnBjLXdlYi1zdGF0dXMtZGV0YWlscy1iaW4iXT1XKX1jYXRjaChrKXtuLnhociYmbi54aHIuZ2V0U3RhdHVzKCk9PT00MDQ/KEQ9NSx2PSJOb3QgRm91bmQ6ICIrU3RyaW5nKG4ueGhyLkspKTooRD0xNCx2PWBVbmFibGUgdG8gcGFyc2UgUnBjU3RhdHVzOiAke2t9YCl9cmV0dXJue2NvZGU6RCxkZXRhaWxzOnYsbWV0YWRhdGE6Yn19OwpWMVU9ZnVuY3Rpb24obixXKXt2YXIgRD1uZXcgUVBTO0FIKG4ueGhyLCJjb21wbGV0ZSIsKCk9PntpZihuLnhoci5pc1N1Y2Nlc3MoKSl7dmFyIGI9VzMobi54aHIpO2lmKFcmJm4ueGhyLmdldFJlc3BvbnNlSGVhZGVyKCJDb250ZW50LVR5cGUiKT09PSJ0ZXh0L3BsYWluIil7aWYoIWF0b2IpdGhyb3cgRXJyb3IoIkNhbm5vdCBkZWNvZGUgQmFzZTY0IHJlc3BvbnNlIik7Yj1hdG9iKGIpfXRyeXt2YXIgdj1uLksoYil9Y2F0Y2goaCl7WXEobixTUyhuZXcgQ1YoMTMsYEVycm9yIHdoZW4gZGVzZXJpYWxpemluZyByZXNwb25zZSBkYXRhOyBlcnJvcjogJHtofSwgcmVzcG9uc2U6ICR7Yn1gKSxEKSk7cmV0dXJufWI9ejMobi54aHIuZ2V0U3RhdHVzKCkpO0oxKG4sSXMobikpO2I9PT0wP0hZKG4sdik6WXEobixTUyhuZXcgQ1YoYiwiWGhyIHN1Y2NlZWRlZCBidXQgdGhlIHN0YXR1cyBjb2RlIGlzIG5vdCAyMDAiKSxEKSl9ZWxzZXtiPVczKG4ueGhyKTtsZXQgaDt2PUlzKG4pO2lmKGIpe3ZhciBrPQpmVyhuLGIpO2I9ay5jb2RlO2g9ay5kZXRhaWxzO2s9ay5tZXRhZGF0YX1lbHNlIGI9MixoPWBScGMgZmFpbGVkIGR1ZSB0byB4aHIgZXJyb3IuIHVyaTogJHtTdHJpbmcobi54aHIuSyl9LCBlcnJvciBjb2RlOiAke24ueGhyLld9LCBlcnJvcjogJHtuLnhoci5nZXRMYXN0RXJyb3IoKX1gLGs9djtKMShuLHYpO1lxKG4sU1MobmV3IENWKGIsaCxrKSxEKSl9fSl9OwpBMT1mdW5jdGlvbihuLFcpe1c9bi5pbmRleE9mKFcpO1c+LTEmJm4uc3BsaWNlKFcsMSl9OwpTUz1mdW5jdGlvbihuLFcpe1cuc3RhY2smJihuLnN0YWNrKz0iXG4iK1cuc3RhY2spO3JldHVybiBufTsKbUc9ZnVuY3Rpb24obil7dGhpcy5YPW4uWTZ8fG51bGw7dGhpcy5XPW4uWUJ8fCExO3RoaXMuSj12b2lkIDB9OwpLVz1mdW5jdGlvbihuLFcpe2cub1cuY2FsbCh0aGlzKTt0aGlzLnR3PW47dGhpcy5WPVc7dGhpcy5qPXZvaWQgMDt0aGlzLnN0YXR1cz10aGlzLnJlYWR5U3RhdGU9MDt0aGlzLnJlc3BvbnNlVHlwZT10aGlzLnJlc3BvbnNlVGV4dD10aGlzLnJlc3BvbnNlPXRoaXMuc3RhdHVzVGV4dD0iIjt0aGlzLm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsO3RoaXMuRD1uZXcgSGVhZGVyczt0aGlzLko9bnVsbDt0aGlzLmNKPSJHRVQiO3RoaXMuTz0iIjt0aGlzLk49ITE7dGhpcy5LPXRoaXMuVz10aGlzLlg9bnVsbDt0aGlzLlk9bmV3IEFib3J0Q29udHJvbGxlcn07Ck9qPWZ1bmN0aW9uKG4pe24uVy5yZWFkKCkudGhlbihuLmxFLmJpbmQobikpLmNhdGNoKG4uRFAuYmluZChuKSl9OwpaYT1mdW5jdGlvbihuKXtuLnJlYWR5U3RhdGU9NDtuLlg9bnVsbDtuLlc9bnVsbDtuLks9bnVsbDtQWShuKX07ClBZPWZ1bmN0aW9uKG4pe24ub25yZWFkeXN0YXRlY2hhbmdlJiZuLm9ucmVhZHlzdGF0ZWNoYW5nZS5jYWxsKG4pfTsKY0FVPWZ1bmN0aW9uKG4pe2lmKG4uejcmJnR5cGVvZiBuLno3PT0iZnVuY3Rpb24iKXJldHVybiBuLno3KCk7aWYodHlwZW9mIE1hcCE9PSJ1bmRlZmluZWQiJiZuIGluc3RhbmNlb2YgTWFwfHx0eXBlb2YgU2V0IT09InVuZGVmaW5lZCImJm4gaW5zdGFuY2VvZiBTZXQpcmV0dXJuIEFycmF5LmZyb20obi52YWx1ZXMoKSk7aWYodHlwZW9mIG49PT0ic3RyaW5nIilyZXR1cm4gbi5zcGxpdCgiIik7aWYoZy5ZMihuKSl7bGV0IFc9W10sRD1uLmxlbmd0aDtmb3IobGV0IGI9MDtiPEQ7YisrKVcucHVzaChuW2JdKTtyZXR1cm4gV31yZXR1cm4gaEsobil9OwphZWg9ZnVuY3Rpb24obil7aWYobi51QiYmdHlwZW9mIG4udUI9PSJmdW5jdGlvbiIpcmV0dXJuIG4udUIoKTtpZighbi56N3x8dHlwZW9mIG4uejchPSJmdW5jdGlvbiIpe2lmKHR5cGVvZiBNYXAhPT0idW5kZWZpbmVkIiYmbiBpbnN0YW5jZW9mIE1hcClyZXR1cm4gQXJyYXkuZnJvbShuLmtleXMoKSk7aWYoISh0eXBlb2YgU2V0IT09InVuZGVmaW5lZCImJm4gaW5zdGFuY2VvZiBTZXQpKXtpZihnLlkyKG4pfHx0eXBlb2Ygbj09PSJzdHJpbmciKXtsZXQgVz1bXTtuPW4ubGVuZ3RoO2ZvcihsZXQgRD0wO0Q8bjtEKyspVy5wdXNoKEQpO3JldHVybiBXfXJldHVybiBnLkxUKG4pfX19OwpuS2k9ZnVuY3Rpb24obixXLEQpe2lmKG4uZm9yRWFjaCYmdHlwZW9mIG4uZm9yRWFjaD09ImZ1bmN0aW9uIiluLmZvckVhY2goVyxEKTtlbHNlIGlmKGcuWTIobil8fHR5cGVvZiBuPT09InN0cmluZyIpQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChuLFcsRCk7ZWxzZXtsZXQgYj1hZWgobiksdj1jQVUobiksaz12Lmxlbmd0aDtmb3IobGV0IGg9MDtoPGs7aCsrKVcuY2FsbChELHZbaF0sYiYmYltoXSxuKX19OwpnLlVqPWZ1bmN0aW9uKG4pe3RoaXMuTj10aGlzLlk9dGhpcy5YPSIiO3RoaXMuVj1udWxsO3RoaXMuaj10aGlzLko9IiI7dGhpcy5LPSExO3ZhciBXO24gaW5zdGFuY2VvZiBnLlVqPyh0aGlzLks9bi5LLHlOKHRoaXMsbi5YKSx0aGlzLlk9bi5ZLEVqKHRoaXMsbi5OKSxpcih0aGlzLG4uViksdGhpcy5KPW4uSix1cih0aGlzLG4uVy5jbG9uZSgpKSx0aGlzLmo9bi5qKTpuJiYoVz1nLmZwKFN0cmluZyhuKSkpPyh0aGlzLks9ITEseU4odGhpcyxXWzFdfHwiIiwhMCksdGhpcy5ZPW9zKFdbMl18fCIiKSxFaih0aGlzLFdbM118fCIiLCEwKSxpcih0aGlzLFdbNF0pLHRoaXMuSj1vcyhXWzVdfHwiIiwhMCksdXIodGhpcyxXWzZdfHwiIiwhMCksdGhpcy5qPW9zKFdbN118fCIiKSk6KHRoaXMuSz0hMSx0aGlzLlc9bmV3IGRoKG51bGwsdGhpcy5LKSl9Owp5Tj1mdW5jdGlvbihuLFcsRCl7bi5YPUQ/b3MoVywhMCk6VztuLlgmJihuLlg9bi5YLnJlcGxhY2UoLzokLywiIikpfTsKRWo9ZnVuY3Rpb24obixXLEQpe24uTj1EP29zKFcsITApOld9Owppcj1mdW5jdGlvbihuLFcpe2lmKFcpe1c9TnVtYmVyKFcpO2lmKGlzTmFOKFcpfHxXPDApdGhyb3cgRXJyb3IoIkJhZCBwb3J0IG51bWJlciAiK1cpO24uVj1XfWVsc2Ugbi5WPW51bGx9Owp1cj1mdW5jdGlvbihuLFcsRCl7VyBpbnN0YW5jZW9mIGRoPyhuLlc9VyxXeGgobi5XLG4uSykpOihEfHwoVz16TihXLER4UykpLG4uVz1uZXcgZGgoVyxuLkspKX07CmxyPWZ1bmN0aW9uKG4pe3JldHVybiBuIGluc3RhbmNlb2YgZy5Vaj9uLmNsb25lKCk6bmV3IGcuVWoobil9Owpvcz1mdW5jdGlvbihuLFcpe3JldHVybiBuP1c/ZGVjb2RlVVJJKG4ucmVwbGFjZSgvJTI1L2csIiUyNTI1IikpOmRlY29kZVVSSUNvbXBvbmVudChuKToiIn07CnpOPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gdHlwZW9mIG49PT0ic3RyaW5nIj8obj1lbmNvZGVVUkkobikucmVwbGFjZShXLGIweCksRCYmKG49bi5yZXBsYWNlKC8lMjUoWzAtOWEtZkEtRl17Mn0pL2csIiUkMSIpKSxuKTpudWxsfTsKYjB4PWZ1bmN0aW9uKG4pe249bi5jaGFyQ29kZUF0KDApO3JldHVybiIlIisobj4+NCYxNSkudG9TdHJpbmcoMTYpKyhuJjE1KS50b1N0cmluZygxNil9OwpkaD1mdW5jdGlvbihuLFcpe3RoaXMuSj10aGlzLk49bnVsbDt0aGlzLlc9bnx8bnVsbDt0aGlzLlg9ISFXfTsKVE49ZnVuY3Rpb24obil7bi5OfHwobi5OPW5ldyBNYXAsbi5KPTAsbi5XJiZnLk9UKG4uVyxmdW5jdGlvbihXLEQpe24uYWRkKEc1KFcpLEQpfSkpfTsKQ1c9ZnVuY3Rpb24obixXKXtUTihuKTtXPWpTKG4sVyk7cmV0dXJuIG4uTi5oYXMoVyl9OwpqUz1mdW5jdGlvbihuLFcpe1c9U3RyaW5nKFcpO24uWCYmKFc9Vy50b0xvd2VyQ2FzZSgpKTtyZXR1cm4gV307Cld4aD1mdW5jdGlvbihuLFcpe1cmJiFuLlgmJihUTihuKSxuLlc9bnVsbCxuLk4uZm9yRWFjaChmdW5jdGlvbihELGIpe3ZhciB2PWIudG9Mb3dlckNhc2UoKTtiIT12JiYodGhpcy5yZW1vdmUoYiksdGhpcy5yZW1vdmUodiksRC5sZW5ndGg+MCYmKHRoaXMuVz1udWxsLHRoaXMuTi5zZXQoalModGhpcyx2KSxnLlJNKEQpKSx0aGlzLko9dGhpcy5KK0QubGVuZ3RoKSl9LG4pKTsKbi5YPVd9Owp2S2I9ZnVuY3Rpb24obil7dmFyIFc9IiI7Zy5hXyhuLGZ1bmN0aW9uKEQsYil7Vys9YjtXKz0iOiI7Vys9RDtXKz0iXHJcbiJ9KTsKcmV0dXJuIFd9OwpCWT1mdW5jdGlvbihuKXtnLkZNLmNhbGwodGhpcyk7dGhpcy5KPW47dGhpcy5OPXt9fTsKRm09ZnVuY3Rpb24obixXLEQsYix2LGspe2lmKEFycmF5LmlzQXJyYXkoRCkpZm9yKGxldCBoPTA7aDxELmxlbmd0aDtoKyspRm0obixXLERbaF0sYix2LGspO2Vsc2V7Vz1TZyhXLEQsYnx8bi5oYW5kbGVFdmVudCx2LGt8fG4uSnx8bik7aWYoIVcpcmV0dXJuIG47bi5OW1cua2V5XT1XfXJldHVybiBufTsKd2g9ZnVuY3Rpb24obixXLEQpe24uVz0hMTt0aHJvdyBFcnJvcigiVGhlIHN0cmVhbSBpcyBicm9rZW4gQCIrbi5KKyIuIEVycm9yOiAiK0QrIi4gV2l0aCBpbnB1dDpcbiIrVyk7fTsKTXQ9ZnVuY3Rpb24oKXt0aGlzLlY9bnVsbDt0aGlzLks9W107dGhpcy5YPXRoaXMuSj10aGlzLlc9dGhpcy5OPXRoaXMuRD0wO3RoaXMuaj1udWxsO3RoaXMuWT0wfTsKUnM9ZnVuY3Rpb24obixXLEQsYil7bi5OPTM7bi5WPSJUaGUgc3RyZWFtIGlzIGJyb2tlbiBAIituLkQrIi8iK0QrIi4gRXJyb3I6ICIrYisiLiBXaXRoIGlucHV0OlxuIitXO3Rocm93IEVycm9yKG4uVik7fTsKUU49ZnVuY3Rpb24oKXt0aGlzLk49bnVsbDt0aGlzLko9MDt0aGlzLlc9bmV3IGtoUzt0aGlzLlg9bmV3IE10fTsKVk49ZnVuY3Rpb24obixXLEQpe24uTj0iVGhlIHN0cmVhbSBpcyBicm9rZW4gQCIrbi5KKyIuIEVycm9yOiAiK0QrIi4gV2l0aCBpbnB1dDpcbiIrVzt0aHJvdyBFcnJvcihuLk4pO307CmNZPWZ1bmN0aW9uKG4pe3JldHVybiBuPT0iXHIifHxuPT0iXG4ifHxuPT0iICJ8fG49PSJcdCJ9Owphcz1mdW5jdGlvbihuKXt0aGlzLkQ9bnVsbDt0aGlzLlY9W107dGhpcy5YPSIiO3RoaXMuY0o9W107dGhpcy5XPXRoaXMuSj0wO3RoaXMuSz0hMTt0aGlzLlk9MDt0aGlzLnR3PS9bXFwiXS9nO3RoaXMuTj10aGlzLmo9MDt0aGlzLk89ISghbnx8IW4uWkgpfTsKbl89ZnVuY3Rpb24obixXLEQpe24uaj0zO24uRD0iVGhlIHN0cmVhbSBpcyBicm9rZW4gQCIrbi5XKyIvIitEKyIuIFdpdGggaW5wdXQ6XG4iK1c7dGhyb3cgRXJyb3Iobi5EKTt9OwpXSz1mdW5jdGlvbigpe3RoaXMuaj10aGlzLlc9bnVsbDt0aGlzLko9dGhpcy5OPTA7dGhpcy5YPVtdO3RoaXMuVj0hMX07CmhDeD1mdW5jdGlvbihuKXt2YXIgVz1uLk4/bi5OLmdldFJlc3BvbnNlSGVhZGVyKCJDb250ZW50LVR5cGUiKTpudWxsO2lmKCFXKXJldHVybiBudWxsO1c9Vy50b0xvd2VyQ2FzZSgpO3JldHVybiBXLnN0YXJ0c1dpdGgoImFwcGxpY2F0aW9uL2pzb24iKT9XLnN0YXJ0c1dpdGgoImFwcGxpY2F0aW9uL2pzb24rcHJvdG9idWYiKT9uZXcgV0s6bmV3IGFzOlcuc3RhcnRzV2l0aCgiYXBwbGljYXRpb24veC1wcm90b2J1ZiIpPyhuPW4uTj9uLk4uZ2V0UmVzcG9uc2VIZWFkZXIoIkNvbnRlbnQtVHJhbnNmZXItRW5jb2RpbmciKTpudWxsKT9uLnRvTG93ZXJDYXNlKCk9PSJiYXNlNjQiP25ldyBRTjpudWxsOm5ldyBNdDpudWxsfTsKRGk9ZnVuY3Rpb24obixXKXtuLmohPVcmJihuLmo9VyxuLksmJm4uSygpKX07CmJIPWZ1bmN0aW9uKG4pe24uWS5UaSgpO2lmKG4uTil7bGV0IFc9bi5OO24uTj1udWxsO1cuYWJvcnQoKTtXLmRpc3Bvc2UoKX19Owp2Sz1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7RCsrKXtsZXQgYj1uW0RdO1cuZm9yRWFjaChmdW5jdGlvbih2KXt0cnl7dihiKX1jYXRjaChrKXt9fSl9fTsKa3Q9ZnVuY3Rpb24obixXKXt2YXIgRD1uLkpbV107RCYmRC5mb3JFYWNoKGZ1bmN0aW9uKGIpe3RyeXtiKCl9Y2F0Y2godil7fX0pOwooRD1uLk5bV10pJiZELmZvckVhY2goZnVuY3Rpb24oYil7YigpfSk7Cm4uTltXXT1bXX07Cnh4aj1mdW5jdGlvbihuLFcpe3JldHVybiBXLnJlZHVjZSgoRCxiKT0+dj0+Yi5pbnRlcmNlcHQodixEKSxuKX07Ckx4aT1mdW5jdGlvbihuLFcpe3JldHVybiBXLnJlZHVjZSgoRCxiKT0+dj0+Yi5pbnRlcmNlcHQodixEKSxuKX07CmVDVT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Vy5sMCx2PVcuZ2V0TWV0YWRhdGEoKSxrPWhhKG4sITApO249eHQobix2LGssRCtiLmdldE5hbWUoKSk7RD1MXyhrLGIuVywhMSk7VjFVKEQsdlsiWC1Hb29nLUVuY29kZS1SZXNwb25zZS1JZi1FeGVjdXRhYmxlIl09PT0iYmFzZTY0Iik7Vz1iLk4oVy5mdik7ay5zZW5kKG4sIlBPU1QiLFcpO3JldHVybiBEfTsKZ0t0PWZ1bmN0aW9uKG4sVyxELGIsdixrPXt9KXt2YXIgaD1XLnN1YnN0cmluZygwLFcubGVuZ3RoLXYubmFtZS5sZW5ndGgpLHg9az8uc2lnbmFsO3JldHVybiBMeGkoTD0+bmV3IFByb21pc2UoKGUsRyk9PntpZih4Py5hYm9ydGVkKXtsZXQgSD1uZXcgQ1YoMSwiQWJvcnRlZCIpO0guY2F1c2U9eC5yZWFzb247RyhIKX1lbHNle3ZhciByPXt9LE49ZUNVKG4sTCxoKTtOLnhWKCJlcnJvciIsSD0+dm9pZCBHKEgpKTsKTi54VigibWV0YWRhdGEiLEg9PntyPUh9KTsKTi54VigiZGF0YSIsSD0+e2UoRldaKEgscikpfSk7CngmJnguYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLCgpPT57Ti5jYW5jZWwoKTt2YXIgSD1uZXcgQ1YoMSwiQWJvcnRlZCIpO0guY2F1c2U9eC5yZWFzb247RyhIKX0pfX0pLG4uRk4pLmNhbGwobix2LkooRCxiKSkudGhlbihMPT5MLlB6KX07ClhkPWZ1bmN0aW9uKG4sVz0hMSl7ZVgoMjgsNzIzMSxuKTtpZihuW0lbMjhdXSE9PUlbMTVdKXt2YXIgRD1uW0lbOF1dKCk7RFtJWzM0XV0oSVszMl0sSVs0MF0pO3JldHVybiBEfXZhciBiPW5bSVs3Ml1dKCk7RD1uZXcgZy5VaihiKTt2YXIgdj1uW0lbMzNdXShJWzcwXSksaz1NMygxNiw0MjYyLG5bSVszM11dKElbNzRdKXx8SVsyMV0pW0lbMzZdXShJWzQ3XSk7aWYodiYmayYma1tJWzVdXT4xJiZrWzFdKXJldHVybiBiPUQuTixuPWJbSVs4MV1dKC9eW14uXSovLElbMjFdKSxFaihELGAke2JbSVsxOF1dKElbNDRdKT09PTA/SVs0NF06SVs4MF19JHt2fS0tLSR7a1sxXX0ke259YCksRD1uZXcgZy53WihEW0lbMF1dKCkpLERbSVszNF1dKElbMzhdLElbNDBdKSxEO2lmKFcpcmV0dXJuIEQ9bltJWzhdXSgpLERbSVszNF1dKElbMzhdLElbNDBdKSxEO3Y9RC5OW0lbNl1dKElbNTZdKTtELk5bSVs2XV0oSVsyN10pPyhFaihELElbODJdKSxiPURbSVswXV0oKSk6RC5OW0lbNl1dKElbNTJdKT8KKEVqKEQsSVsxOV0pLGI9RFtJWzBdXSgpKTooRD1lQShiKSxnWChEKSYmKGI9RCkpO0Q9bmV3IGcud1ooYik7RFtJWzM0XV0oSVs3OV0sSVs0MF0pO3YmJkRbSVszNF1dKElbMl0sSVs3MV0pO3JldHVybiBEfTsKWVk9ZnVuY3Rpb24obixXLEQsYix2LGs9e30pe3JldHVybiBnS3QobixXLEQsYix2LGspfTsKaGE9ZnVuY3Rpb24obixXKXtXPW4uTiYmIVc7cmV0dXJuIG4uU258fFc/bmV3IHdwKG5ldyBtRyh7WTY6bi5TbixZQjpXfSkpOm5ldyB3cH07Cnh0PWZ1bmN0aW9uKG4sVyxELGIpe1dbIkNvbnRlbnQtVHlwZSJdPSJhcHBsaWNhdGlvbi9qc29uK3Byb3RvYnVmIjtXWyJYLVVzZXItQWdlbnQiXT0iZ3JwYy13ZWItamF2YXNjcmlwdC8wLjEiO3ZhciB2PVcuQXV0aG9yaXphdGlvbjtpZih2JiZYMnIuaGFzKHYuc3BsaXQoIiAiKVswXSl8fG4ud2l0aENyZWRlbnRpYWxzKUQuTz0hMDtpZihuLllPKW49YixnLkdGKFcpP2I9bjooVz12S2IoVyksdHlwZW9mIG49PT0ic3RyaW5nIj9iPWcudWYobixxaCgiJGh0dHBIZWFkZXJzIiksVyk6KG4uVy5zZXQoIiRodHRwSGVhZGVycyIsVyksYj1uKSk7ZWxzZSBmb3IobGV0IGsgb2YgT2JqZWN0LmtleXMoVykpRC5oZWFkZXJzLnNldChrLFdba10pO3JldHVybiBifTsKTF89ZnVuY3Rpb24obixXLEQpe2lmKEQpe24uaXNBY3RpdmUoKTtEPW5ldyBxQXQobik7dmFyIGI9bmV3IEdoaShEKX1yZXR1cm4gbmV3IHR1MSh7eGhyOm4sTUU6Yn0sVyl9Owpxdz1mdW5jdGlvbigpe3RoaXMuTj1uZXcgJHhoO3RoaXMuSj0iaHR0cHM6Ly9qbm4tcGEuZ29vZ2xlYXBpcy5jb20iLnJlcGxhY2UoL1wvKyQvLCIiKX07CmcuR0s9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5yZXBsYWNlKHI0MixmdW5jdGlvbihELGIpe3RyeXtsZXQgdj1nLiR5KFcsYik7aWYodj09bnVsbHx8di50b1N0cmluZygpPT1udWxsKXJldHVybiBEO3Y9di50b1N0cmluZygpO2lmKHY9PSIifHwhZy5GaChnLnJUKHYpKSlyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KHYpLnJlcGxhY2UoLyUyQy9nLCIsIil9Y2F0Y2godil7fXJldHVybiBEfSl9OwpzMnc9ZnVuY3Rpb24oKXt2YXIgbj10YTskdC5pbnN0YW5jZXx8KCR0Lmluc3RhbmNlPW5ldyAkdChuKSk7cmV0dXJuICR0Lmluc3RhbmNlfTsKclg9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5XP24uVzpuLlc9bmV3IFByb21pc2UoYXN5bmMgRD0+e3ZhciBiPXdpbmRvdy5BYm9ydENvbnRyb2xsZXI/bmV3IHdpbmRvdy5BYm9ydENvbnRyb2xsZXI6dm9pZCAwLHY9Yj8uc2lnbmFsLGs9ITE7dHJ5e2ImJihuLk49bi5BJC5MUygoKT0+e2IuYWJvcnQoKX0sV3x8MkU0KSksYXdhaXQgZmV0Y2goIi9nZW5lcmF0ZV8yMDQiLHttZXRob2Q6IkhFQUQiLApzaWduYWw6dn0pLGs9ITB9Y2F0Y2h7az0hMX1maW5hbGx5e24uVz12b2lkIDAsbi5OJiYobi5BJC5zTyhuLk4pLG4uTj0wKSxrIT09bi5pc09ubGluZSYmKG4uaXNPbmxpbmU9ayxuLmlzT25saW5lP24uZGlzcGF0Y2hFdmVudCgibmV0d29ya3N0YXR1cy1vbmxpbmUiKTpuLmRpc3BhdGNoRXZlbnQoIm5ldHdvcmtzdGF0dXMtb2ZmbGluZSIpKSxEKGspfX0pfTsKTldoPWZ1bmN0aW9uKG4pe24uTj09PS0xJiYobi5OPW4uZGF0YS5yZWR1Y2UoKFcsRCxiKT0+VysoRD8yKipiOjApLDApKTsKcmV0dXJuIG4uTn07Cmcuc0k9ZnVuY3Rpb24obixXLEQ9ITEpe2lmKG4mJlchPT1udWxsJiZXIT1XLnRvcCl7aWYoIVcudG9wKXJldHVybiBuZXcgZy5RZSgtMTIyNDU5MzMsLTEyMjQ1OTMzKTtXPVcudG9wfXRyeXtpZihEKXZhciBiPShuZXcgZy5RZShXLmlubmVyV2lkdGgsVy5pbm5lckhlaWdodCkpLnJvdW5kKCk7ZWxzZXtsZXQgdj0oV3x8d2luZG93KS5kb2N1bWVudCxrPXYuY29tcGF0TW9kZT09IkNTUzFDb21wYXQiP3YuZG9jdW1lbnRFbGVtZW50OnYuYm9keTtiPShuZXcgZy5RZShrLmNsaWVudFdpZHRoLGsuY2xpZW50SGVpZ2h0KSkucm91bmQoKX1yZXR1cm4gYn1jYXRjaCh2KXtyZXR1cm4gbmV3IGcuUWUoLTEyMjQ1OTMzLC0xMjI0NTkzMyl9fTsKZy5Odz1mdW5jdGlvbihuKXtyZXR1cm4gbi5wcmVyZW5kZXJpbmc/Mzp7dmlzaWJsZToxLGhpZGRlbjoyLHByZXJlbmRlcjozLHByZXZpZXc6NCx1bmxvYWRlZDo1LCIiOjB9W24udmlzaWJpbGl0eVN0YXRlfHxuLndlYmtpdFZpc2liaWxpdHlTdGF0ZXx8bi5tb3pWaXNpYmlsaXR5U3RhdGV8fCIiXT8/MH07CmcucF89ZnVuY3Rpb24obixXLEQpe2cuRk0uY2FsbCh0aGlzKTt0aGlzLk49bnVsbDt0aGlzLlg9ITE7dGhpcy5WPW47dGhpcy5qPUQ7dGhpcy5KPVd8fHdpbmRvdzt0aGlzLlc9KDAsZy5LdCkodGhpcy5PdCx0aGlzKX07Cll0PWZ1bmN0aW9uKG4pe249bi5KO3JldHVybiBuLnJlcXVlc3RBbmltYXRpb25GcmFtZXx8bi53ZWJraXRSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fG4ubW96UmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxuLm9SZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fG4ubXNSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fG51bGx9OwpISz1mdW5jdGlvbihuKXtuPW4uSjtyZXR1cm4gbi5jYW5jZWxBbmltYXRpb25GcmFtZXx8bi5jYW5jZWxSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fG4ud2Via2l0Q2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxuLm1vekNhbmNlbFJlcXVlc3RBbmltYXRpb25GcmFtZXx8bi5vQ2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxuLm1zQ2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxudWxsfTsKZy5mXz1mdW5jdGlvbihuLFcsRCl7Zy5GTS5jYWxsKHRoaXMpO3RoaXMuTj1uO3RoaXMuZ3Q9V3x8MDt0aGlzLko9RDt0aGlzLlc9KDAsZy5LdCkodGhpcy5pJCx0aGlzKX07CmcuSmE9ZnVuY3Rpb24obixXKXtuLmlzQWN0aXZlKCl8fG4uc3RhcnQoVyl9OwpJRj1mdW5jdGlvbihuKXtuLlo2PWcuWnQoKCk9PntuLlo2PW51bGw7bi5OJiYhbi5KJiYobi5OPSExLElGKG4pKX0sbi5ndCk7CnZhciBXPW4uVztuLlc9bnVsbDtuLlguYXBwbHkobnVsbCxXKX07ClNBPWZ1bmN0aW9uKG4pe3JldHVybiB0eXBlb2Ygbi5jbGFzc05hbWU9PSJzdHJpbmciP24uY2xhc3NOYW1lOm4uZ2V0QXR0cmlidXRlJiZuLmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8IiJ9OwpBYT1mdW5jdGlvbihuKXtyZXR1cm4gbi5jbGFzc0xpc3Q/bi5jbGFzc0xpc3Q6U0EobikubWF0Y2goL1xTKy9nKXx8W119OwptYT1mdW5jdGlvbihuLFcpe3R5cGVvZiBuLmNsYXNzTmFtZT09InN0cmluZyI/bi5jbGFzc05hbWU9VzpuLnNldEF0dHJpYnV0ZSYmbi5zZXRBdHRyaWJ1dGUoImNsYXNzIixXKX07CmcuS189ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5jbGFzc0xpc3Q/bi5jbGFzc0xpc3QuY29udGFpbnMoVyk6Zy5qaihBYShuKSxXKX07CmcuVUk9ZnVuY3Rpb24obixXKXtpZihuLmNsYXNzTGlzdCluLmNsYXNzTGlzdC5hZGQoVyk7ZWxzZSBpZighZy5LXyhuLFcpKXtsZXQgRD1TQShuKTttYShuLEQrKEQubGVuZ3RoPjA/IiAiK1c6VykpfX07CnlLPWZ1bmN0aW9uKG4sVyl7aWYobi5jbGFzc0xpc3QpQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChXLGZ1bmN0aW9uKGIpe2cuVUkobixiKX0pOwplbHNle3ZhciBEPXt9O0FycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoQWEobiksZnVuY3Rpb24oYil7RFtiXT0hMH0pOwpBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKFcsZnVuY3Rpb24oYil7RFtiXT0hMH0pOwpXPSIiO2ZvcihsZXQgYiBpbiBEKVcrPVcubGVuZ3RoPjA/IiAiK2I6YjttYShuLFcpfX07CmcuRUk9ZnVuY3Rpb24obixXKXtuLmNsYXNzTGlzdD9uLmNsYXNzTGlzdC5yZW1vdmUoVyk6Zy5LXyhuLFcpJiZtYShuLEFycmF5LnByb3RvdHlwZS5maWx0ZXIuY2FsbChBYShuKSxmdW5jdGlvbihEKXtyZXR1cm4gRCE9V30pLmpvaW4oIiAiKSl9OwpwMmo9ZnVuY3Rpb24obixXKXtuLmNsYXNzTGlzdD9BcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKFcsZnVuY3Rpb24oRCl7Zy5FSShuLEQpfSk6bWEobixBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoQWEobiksZnVuY3Rpb24oRCl7cmV0dXJuIWcuamooVyxEKX0pLmpvaW4oIiAiKSl9OwpnLmlIPWZ1bmN0aW9uKG4sVyxEKXtEP2cuVUkobixXKTpnLkVJKG4sVyl9Owp1SD1mdW5jdGlvbigpe307CllBMT1mdW5jdGlvbihuKXtpZihuIGluc3RhbmNlb2Ygb0Z8fG4gaW5zdGFuY2VvZiBkWHx8biBpbnN0YW5jZW9mIHpLKXJldHVybiBuO2lmKHR5cGVvZiBuLm5leHQ9PSJmdW5jdGlvbiIpcmV0dXJuIG5ldyBvRigoKT0+bik7CmlmKHR5cGVvZiBuW1N5bWJvbC5pdGVyYXRvcl09PSJmdW5jdGlvbiIpcmV0dXJuIG5ldyBvRigoKT0+bltTeW1ib2wuaXRlcmF0b3JdKCkpOwppZih0eXBlb2Ygbi5ncT09ImZ1bmN0aW9uIilyZXR1cm4gbmV3IG9GKCgpPT5uLmdxKCkpOwp0aHJvdyBFcnJvcigiTm90IGFuIGl0ZXJhdG9yIG9yIGl0ZXJhYmxlLiIpO307CmxIPWZ1bmN0aW9uKG4sVyxELGIsdixrLGgseCl7dGhpcy5OPW47dGhpcy5LPVc7dGhpcy5XPUQ7dGhpcy5qPWI7dGhpcy5YPXY7dGhpcy5WPWs7dGhpcy5KPWg7dGhpcy5ZPXh9OwpUSz1mdW5jdGlvbihuLFcpe2lmKFc9PTApcmV0dXJuIG4uTjtpZihXPT0xKXJldHVybiBuLko7dmFyIEQ9d1Eobi5OLG4uVyxXKSxiPXdRKG4uVyxuLlgsVyk7bj13UShuLlgsbi5KLFcpO0Q9d1EoRCxiLFcpO2I9d1EoYixuLFcpO3JldHVybiB3UShELGIsVyl9OwpIMGk9ZnVuY3Rpb24obixXKXt2YXIgRD0oVy1uLk4pLyhuLkotbi5OKTtpZihEPD0wKXJldHVybiAwO2lmKEQ+PTEpcmV0dXJuIDE7dmFyIGI9MCx2PTEsaz0wO2Zvcih2YXIgaD0wO2g8ODtoKyspe2s9VEsobixEKTtsZXQgeD0oVEsobixEKzFFLTYpLWspLzFFLTY7aWYoTWF0aC5hYnMoay1XKTwxRS02KXJldHVybiBEO2lmKE1hdGguYWJzKHgpPDFFLTYpYnJlYWs7ZWxzZSBrPFc/Yj1EOnY9RCxELT0oay1XKS94fWZvcihoPTA7TWF0aC5hYnMoay1XKT4xRS02JiZoPDg7aCsrKWs8Vz8oYj1ELEQ9KEQrdikvMik6KHY9RCxEPShEK2IpLzIpLGs9VEsobixEKTtyZXR1cm4gRH07CmpBPWZ1bmN0aW9uKG4pe3JldHVybihuPW4uZXhlYyhnLlhRKCkpKT9uWzFdOiIifTsKQ189ZnVuY3Rpb24obil7cmV0dXJuIGcuY1ooZlgyLG4pPj0wfTsKQks9ZnVuY3Rpb24obil7Zy5GTS5jYWxsKHRoaXMpO3RoaXMuVj0xO3RoaXMuVz1bXTt0aGlzLlg9MDt0aGlzLk49W107dGhpcy5KPXt9O3RoaXMuSz0hIW59OwpKNHI9ZnVuY3Rpb24obixXLEQpe2cubUsoZnVuY3Rpb24oKXtuLmFwcGx5KFcsRCl9KX07CmcuRmQ9ZnVuY3Rpb24obil7dGhpcy5OPW59Owp3WD1mdW5jdGlvbihuKXt0aGlzLk49bn07Ck13PWZ1bmN0aW9uKG4pe3RoaXMuZGF0YT1ufTsKUkY9ZnVuY3Rpb24obil7cmV0dXJuIG49PT12b2lkIDB8fG4gaW5zdGFuY2VvZiBNdz9uOm5ldyBNdyhuKX07ClFLPWZ1bmN0aW9uKG4pe3RoaXMuTj1ufTsKVks9ZnVuY3Rpb24obil7dGhpcy5OPW59OwpJWDE9ZnVuY3Rpb24oKXt9OwpjSz1mdW5jdGlvbigpe307CmFGPWZ1bmN0aW9uKG4pe3RoaXMuTj1uO3RoaXMuSj1udWxsfTsKbmU9ZnVuY3Rpb24obil7aWYobi5OPT1udWxsKXRocm93IEVycm9yKCJTdG9yYWdlIG1lY2hhbmlzbTogU3RvcmFnZSB1bmF2YWlsYWJsZSIpO24uaXNBdmFpbGFibGUoKXx8aDQoRXJyb3IoIlN0b3JhZ2UgbWVjaGFuaXNtOiBTdG9yYWdlIHVuYXZhaWxhYmxlIikpfTsKV1M9ZnVuY3Rpb24oKXt2YXIgbj1udWxsO3RyeXtuPWcucWkubG9jYWxTdG9yYWdlfHxudWxsfWNhdGNoKFcpe31hRi5jYWxsKHRoaXMsbil9OwpEUT1mdW5jdGlvbigpe3ZhciBuPW51bGw7dHJ5e249Zy5xaS5zZXNzaW9uU3RvcmFnZXx8bnVsbH1jYXRjaChXKXt9YUYuY2FsbCh0aGlzLG4pfTsKYkM9ZnVuY3Rpb24obixXKXt0aGlzLko9bjt0aGlzLk49VysiOjoifTsKZy52Uz1mdW5jdGlvbihuKXt2YXIgVz1uZXcgV1M7cmV0dXJuIFcuaXNBdmFpbGFibGUoKT9uP25ldyBiQyhXLG4pOlc6bnVsbH07CmtqPWZ1bmN0aW9uKG4sVyl7dGhpcy5OPW47dGhpcy5KPVd9Owp4aj1mdW5jdGlvbihuKXt2YXIgVyxELGI9bi5sZW5ndGgsdj0wO2ZvcihXPTA7VzxiO1crKyl7dmFyIGs9bi5jaGFyQ29kZUF0KFcpO2lmKChrJjY0NTEyKT09PTU1Mjk2JiZXKzE8Yil7dmFyIGg9bi5jaGFyQ29kZUF0KFcrMSk7KGgmNjQ1MTIpPT09NTYzMjAmJihrPTY1NTM2KyhrLTU1Mjk2PDwxMCkrKGgtNTYzMjApLFcrKyl9dis9azwxMjg/MTprPDIwNDg/MjprPDY1NTM2PzM6NH12YXIgeD1uZXcgaGsuT20odik7Zm9yKFc9RD0wO0Q8djtXKyspaz1uLmNoYXJDb2RlQXQoVyksKGsmNjQ1MTIpPT09NTUyOTYmJlcrMTxiJiYoaD1uLmNoYXJDb2RlQXQoVysxKSwoaCY2NDUxMik9PT01NjMyMCYmKGs9NjU1MzYrKGstNTUyOTY8PDEwKSsoaC01NjMyMCksVysrKSksazwxMjg/eFtEKytdPWs6KGs8MjA0OD94W0QrK109MTkyfGs+Pj42OihrPDY1NTM2P3hbRCsrXT0yMjR8az4+PjEyOih4W0QrK109MjQwfGs+Pj4xOCx4W0QrK109MTI4fGs+Pj4xMiY2MykseFtEKytdPTEyOHxrPj4+CjYmNjMpLHhbRCsrXT0xMjh8ayY2Myk7cmV0dXJuIHh9OwpMZT1mdW5jdGlvbihuKXtmb3IodmFyIFc9bi5sZW5ndGg7LS1XPj0wOyluW1ddPTB9Owpldj1mdW5jdGlvbihuLFcsRCxiLHYpe3RoaXMua089bjt0aGlzLmJFPVc7dGhpcy50cD1EO3RoaXMuYXo9Yjt0aGlzLnVIPXY7dGhpcy5aZD1uJiZuLmxlbmd0aH07CnZhciBTQTE9ZnVuY3Rpb24obil7cmV0dXJuIGc3W0lbMTBdXSh0aGlzLDI1LDYzMjIsbil9Owp0az1mdW5jdGlvbihuLFcpe3RoaXMuTTA9bjt0aGlzLnJPPTA7dGhpcy5BWj1XfTsKcjc9ZnVuY3Rpb24obixXKXtuLkZCW24ucGVuZGluZysrXT1XJjI1NTtuLkZCW24ucGVuZGluZysrXT1XPj4+OCYyNTV9OwpzJD1mdW5jdGlvbihuLFcsRCl7bi5ZSD4xNi1EPyhuLlJKfD1XPDxuLllIJjY1NTM1LHI3KG4sbi5SSiksbi5SSj1XPj4xNi1uLllILG4uWUgrPUQtMTYpOihuLlJKfD1XPDxuLllIJjY1NTM1LG4uWUgrPUQpfTsKTjY9ZnVuY3Rpb24obixXLEQpe3MkKG4sRFtXKjJdLERbVyoyKzFdKX07CnBlPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9MDtkbyBEfD1uJjEsbj4+Pj0xLEQ8PD0xO3doaWxlKC0tVz4wKTtyZXR1cm4gRD4+PjF9OwpZaj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9QXJyYXkoMTYpLHY9MCxrO2ZvcihrPTE7azw9MTU7aysrKWJba109dj12K0Rbay0xXTw8MTtmb3IoRD0wO0Q8PVc7RCsrKXY9bltEKjIrMV0sdiE9PTAmJihuW0QqMl09cGUoYlt2XSsrLHYpKX07CkhTPWZ1bmN0aW9uKG4pe3ZhciBXO2ZvcihXPTA7VzwyODY7VysrKW4ua0dbVyoyXT0wO2ZvcihXPTA7VzwzMDtXKyspbi5sZltXKjJdPTA7Zm9yKFc9MDtXPDE5O1crKyluLndoW1cqMl09MDtuLmtHWzUxMl09MTtuLlhSPW4uVHY9MDtuLndYPW4ubWF0Y2hlcz0wfTsKZmU9ZnVuY3Rpb24obil7bi5ZSD44P3I3KG4sbi5SSik6bi5ZSD4wJiYobi5GQltuLnBlbmRpbmcrK109bi5SSik7bi5SSj0wO24uWUg9MH07CkprPWZ1bmN0aW9uKG4sVyxEKXtmZShuKTtyNyhuLEQpO3I3KG4sfkQpO2hrLlA3KG4uRkIsbi53aW5kb3csVyxELG4ucGVuZGluZyk7bi5wZW5kaW5nKz1EfTsKSVM9ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9VyoyLGs9RCoyO3JldHVybiBuW3ZdPG5ba118fG5bdl09PT1uW2tdJiZiW1ddPD1iW0RdfTsKU3Y9ZnVuY3Rpb24obixXLEQpe2Zvcih2YXIgYj1uLmhlYXBbRF0sdj1EPDwxO3Y8PW4uVW47KXt2PG4uVW4mJklTKFcsbi5oZWFwW3YrMV0sbi5oZWFwW3ZdLG4uZGVwdGgpJiZ2Kys7aWYoSVMoVyxiLG4uaGVhcFt2XSxuLmRlcHRoKSlicmVhaztuLmhlYXBbRF09bi5oZWFwW3ZdO0Q9djt2PDw9MX1uLmhlYXBbRF09Yn07ClUkPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj0wO2lmKG4ud1ghPT0wKXtkb3t2YXIgdj1uLkZCW24uQTgrYioyXTw8OHxuLkZCW24uQTgrYioyKzFdO3ZhciBrPW4uRkJbbi50YStiXTtiKys7aWYodj09PTApTjYobixrLFcpO2Vsc2V7dmFyIGg9QWtba107TjYobixoKzI1NisxLFcpO3ZhciB4PW0kW2hdO3ghPT0wJiYoay09S2VbaF0scyQobixrLHgpKTt2LS07aD12PDI1Nj9PJFt2XTpPJFsyNTYrKHY+Pj43KV07TjYobixoLEQpO3g9UFNbaF07eCE9PTAmJih2LT1aUVtoXSxzJChuLHYseCkpfX13aGlsZShiPG4ud1gpfU42KG4sMjU2LFcpfTsKRSQ9ZnVuY3Rpb24obixXKXt2YXIgRD1XLk0wLGI9Vy5BWi5rTyx2PVcuQVouWmQsaz1XLkFaLmF6LGgseD0tMTtuLlVuPTA7bi5PND01NzM7Zm9yKGg9MDtoPGs7aCsrKURbaCoyXSE9PTA/KG4uaGVhcFsrK24uVW5dPXg9aCxuLmRlcHRoW2hdPTApOkRbaCoyKzFdPTA7Zm9yKDtuLlVuPDI7KXt2YXIgTD1uLmhlYXBbKytuLlVuXT14PDI/Kyt4OjA7RFtMKjJdPTE7bi5kZXB0aFtMXT0wO24uWFItLTt2JiYobi5Udi09YltMKjIrMV0pfVcuck89eDtmb3IoaD1uLlVuPj4xO2g+PTE7aC0tKVN2KG4sRCxoKTtMPWs7ZG8gaD1uLmhlYXBbMV0sbi5oZWFwWzFdPW4uaGVhcFtuLlVuLS1dLFN2KG4sRCwxKSxiPW4uaGVhcFsxXSxuLmhlYXBbLS1uLk80XT1oLG4uaGVhcFstLW4uTzRdPWIsRFtMKjJdPURbaCoyXStEW2IqMl0sbi5kZXB0aFtMXT0obi5kZXB0aFtoXT49bi5kZXB0aFtiXT9uLmRlcHRoW2hdOm4uZGVwdGhbYl0pKzEsRFtoKjIrMV09RFtiKjIrMV09TCxuLmhlYXBbMV09TCsrLApTdihuLEQsMSk7d2hpbGUobi5Vbj49Mik7bi5oZWFwWy0tbi5PNF09bi5oZWFwWzFdO2g9Vy5NMDtMPVcuck87Yj1XLkFaLmtPO3Y9Vy5BWi5aZDtrPVcuQVouYkU7dmFyIGU9Vy5BWi50cCxHPVcuQVoudUgscixOPTA7Zm9yKHI9MDtyPD0xNTtyKyspbi5WbltyXT0wO2hbbi5oZWFwW24uTzRdKjIrMV09MDtmb3IoVz1uLk80KzE7Vzw1NzM7VysrKXt2YXIgSD1uLmhlYXBbV107cj1oW2hbSCoyKzFdKjIrMV0rMTtyPkcmJihyPUcsTisrKTtoW0gqMisxXT1yO2lmKCEoSD5MKSl7bi5WbltyXSsrO3ZhciBBPTA7SD49ZSYmKEE9a1tILWVdKTt2YXIgeT1oW0gqMl07bi5YUis9eSoocitBKTt2JiYobi5Udis9eSooYltIKjIrMV0rQSkpfX1pZihOIT09MCl7ZG97Zm9yKHI9Ry0xO24uVm5bcl09PT0wOylyLS07bi5WbltyXS0tO24uVm5bcisxXSs9MjtuLlZuW0ddLS07Ti09Mn13aGlsZShOPjApO2ZvcihyPUc7ciE9PTA7ci0tKWZvcihIPW4uVm5bcl07SCE9PTA7KWI9bi5oZWFwWy0tV10sCmI+THx8KGhbYioyKzFdIT09ciYmKG4uWFIrPShyLWhbYioyKzFdKSpoW2IqMl0saFtiKjIrMV09ciksSC0tKX1ZaihELHgsbi5Wbil9OwppQz1mdW5jdGlvbihuLFcsRCl7dmFyIGIsdj0tMSxrPVdbMV0saD0wLHg9NyxMPTQ7az09PTAmJih4PTEzOCxMPTMpO1dbKEQrMSkqMisxXT02NTUzNTtmb3IoYj0wO2I8PUQ7YisrKXt2YXIgZT1rO2s9V1soYisxKSoyKzFdOysraDx4JiZlPT09a3x8KGg8TD9uLndoW2UqMl0rPWg6ZSE9PTA/KGUhPT12JiZuLndoW2UqMl0rKyxuLndoWzMyXSsrKTpoPD0xMD9uLndoWzM0XSsrOm4ud2hbMzZdKyssaD0wLHY9ZSxrPT09MD8oeD0xMzgsTD0zKTplPT09az8oeD02LEw9Myk6KHg9NyxMPTQpKX19Owp1Qz1mdW5jdGlvbihuLFcsRCl7dmFyIGIsdj0tMSxrPVdbMV0saD0wLHg9NyxMPTQ7az09PTAmJih4PTEzOCxMPTMpO2ZvcihiPTA7Yjw9RDtiKyspe3ZhciBlPWs7az1XWyhiKzEpKjIrMV07aWYoISgrK2g8eCYmZT09PWspKXtpZihoPEwpe2RvIE42KG4sZSxuLndoKTt3aGlsZSgtLWghPT0wKX1lbHNlIGUhPT0wPyhlIT09diYmKE42KG4sZSxuLndoKSxoLS0pLE42KG4sMTYsbi53aCkscyQobixoLTMsMikpOmg8PTEwPyhONihuLDE3LG4ud2gpLHMkKG4saC0zLDMpKTooTjYobiwxOCxuLndoKSxzJChuLGgtMTEsNykpO2g9MDt2PWU7az09PTA/KHg9MTM4LEw9Myk6ZT09PWs/KHg9NixMPTMpOih4PTcsTD00KX19fTsKQTR4PWZ1bmN0aW9uKG4pe3ZhciBXPTQwOTM2MjQ0NDcsRDtmb3IoRD0wO0Q8PTMxO0QrKyxXPj4+PTEpaWYoVyYxJiZuLmtHW0QqMl0hPT0wKXJldHVybiAwO2lmKG4ua0dbMThdIT09MHx8bi5rR1syMF0hPT0wfHxuLmtHWzI2XSE9PTApcmV0dXJuIDE7Zm9yKEQ9MzI7RDwyNTY7RCsrKWlmKG4ua0dbRCoyXSE9PTApcmV0dXJuIDE7cmV0dXJuIDB9OwpvUz1mdW5jdGlvbihuLFcsRCxiKXt2YXIgdj1XXm47aWYoIShuKzQmNykpe0Q9KEQlYltJWzVdXStiW0lbNV1dKSViW0lbNV1dO3ZhciBrPWJbMF07YlswXT1iW0RdO2JbRF09azt2YXIgaD1bRF19KG4rOSY1KT09MSYmYltJWzNdXShiW0lbNV1dLDAsRCk7cmV0dXJuIGh9OwpkNz1mdW5jdGlvbihuLFcsRCl7bi5GQltuLkE4K24ud1gqMl09Vz4+PjgmMjU1O24uRkJbbi5BOCtuLndYKjIrMV09VyYyNTU7bi5GQltuLnRhK24ud1hdPUQmMjU1O24ud1grKztXPT09MD9uLmtHW0QqMl0rKzoobi5tYXRjaGVzKyssVy0tLG4ua0dbKEFrW0RdKzI1NisxKSoyXSsrLG4ubGZbKFc8MjU2P08kW1ddOk8kWzI1NisoVz4+PjcpXSkqMl0rKyk7cmV0dXJuIG4ud1g9PT1uLktYLTF9OwpsQz1mdW5jdGlvbihuLFcpe24ubXNnPXpCW1ddO3JldHVybiBXfTsKVEI9ZnVuY3Rpb24obil7Zm9yKHZhciBXPW4ubGVuZ3RoOy0tVz49MDspbltXXT0wfTsKanY9ZnVuY3Rpb24obil7dmFyIFc9bi5zdGF0ZSxEPVcucGVuZGluZztEPm4udVImJihEPW4udVIpO0QhPT0wJiYoaGsuUDcobi5vdXRwdXQsVy5GQixXLmhSLEQsbi51Zyksbi51Zys9RCxXLmhSKz1ELG4udEIrPUQsbi51Ui09RCxXLnBlbmRpbmctPUQsVy5wZW5kaW5nPT09MCYmKFcuaFI9MCkpfTsKdzc9ZnVuY3Rpb24obixXKXt2YXIgRD1uLk9LPj0wP24uT0s6LTEsYj1uLnFzLW4uT0ssdj0wO2lmKG4ubGV2ZWw+MCl7bi5UUi5xUz09PTImJihuLlRSLnFTPUE0eChuKSk7RSQobixuLlFmKTtFJChuLG4uYVMpO2lDKG4sbi5rRyxuLlFmLnJPKTtpQyhuLG4ubGYsbi5hUy5yTyk7RSQobixuLm1NKTtmb3Iodj0xODt2Pj0zJiZuLndoW0NlW3ZdKjIrMV09PT0wO3YtLSk7bi5YUis9MyoodisxKSs1KzUrNDt2YXIgaz1uLlhSKzMrNz4+PjM7dmFyIGg9bi5UdiszKzc+Pj4zO2g8PWsmJihrPWgpfWVsc2Ugaz1oPWIrNTtpZihiKzQ8PWsmJkQhPT0tMSlzJChuLFc/MTowLDMpLEprKG4sRCxiKTtlbHNlIGlmKG4uc3RyYXRlZ3k9PT00fHxoPT09aylzJChuLDIrKFc/MTowKSwzKSxVJChuLEJTLEY5KTtlbHNle3MkKG4sNCsoVz8xOjApLDMpO0Q9bi5RZi5yTysxO2I9bi5hUy5yTysxO3YrPTE7cyQobixELTI1Nyw1KTtzJChuLGItMSw1KTtzJChuLHYtNCw0KTtmb3Ioaz0wO2s8djtrKyspcyQobiwKbi53aFtDZVtrXSoyKzFdLDMpO3VDKG4sbi5rRyxELTEpO3VDKG4sbi5sZixiLTEpO1UkKG4sbi5rRyxuLmxmKX1IUyhuKTtXJiZmZShuKTtuLk9LPW4ucXM7anYobi5UUil9OwpNNj1mdW5jdGlvbihuLFcpe24uRkJbbi5wZW5kaW5nKytdPVd9OwpSUz1mdW5jdGlvbihuLFcpe24uRkJbbi5wZW5kaW5nKytdPVc+Pj44JjI1NTtuLkZCW24ucGVuZGluZysrXT1XJjI1NX07ClF0PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5lYixiPW4ucXMsdj1uLlRhLGs9bi5PUixoPW4ucXM+bi54ci0yNjI/bi5xcy0obi54ci0yNjIpOjAseD1uLndpbmRvdyxMPW4ueWUsZT1uLlJULEc9bi5xcysyNTgscj14W2Irdi0xXSxOPXhbYit2XTtuLlRhPj1uLnIkJiYoRD4+PTIpO2s+bi5HVyYmKGs9bi5HVyk7ZG97dmFyIEg9VztpZih4W0grdl09PT1OJiZ4W0grdi0xXT09PXImJnhbSF09PT14W2JdJiZ4WysrSF09PT14W2IrMV0pe2IrPTI7Zm9yKEgrKzt4WysrYl09PT14WysrSF0mJnhbKytiXT09PXhbKytIXSYmeFsrK2JdPT09eFsrK0hdJiZ4WysrYl09PT14WysrSF0mJnhbKytiXT09PXhbKytIXSYmeFsrK2JdPT09eFsrK0hdJiZ4WysrYl09PT14WysrSF0mJnhbKytiXT09PXhbKytIXSYmYjxHOyk7SD0yNTgtKEctYik7Yj1HLTI1ODtpZihIPnYpe24uUVo9Vzt2PUg7aWYoSD49aylicmVhaztyPXhbYit2LTFdO049eFtiK3ZdfX19d2hpbGUoKFc9ZVtXJkxdKT5oJiYtLUQhPT0KMCk7cmV0dXJuIHY8PW4uR1c/djpuLkdXfTsKYVM9ZnVuY3Rpb24obil7dmFyIFc9bi54cixEO2Rve3ZhciBiPW4uYlgtbi5HVy1uLnFzO2lmKG4ucXM+PVcrKFctMjYyKSl7aGsuUDcobi53aW5kb3csbi53aW5kb3csVyxXLDApO24uUVotPVc7bi5xcy09VztuLk9LLT1XO3ZhciB2PUQ9bi5BeTtkb3t2YXIgaz1uLmhlYWRbLS12XTtuLmhlYWRbdl09az49Vz9rLVc6MH13aGlsZSgtLUQpO3Y9RD1XO2RvIGs9bi5SVFstLXZdLG4uUlRbdl09az49Vz9rLVc6MDt3aGlsZSgtLUQpO2IrPVd9aWYobi5UUi5CQT09PTApYnJlYWs7dj1uLlRSO0Q9bi53aW5kb3c7az1uLnFzK24uR1c7dmFyIGg9di5CQTtoPmImJihoPWIpO2g9PT0wP0Q9MDoodi5CQS09aCxoay5QNyhELHYuaW5wdXQsdi5VWixoLGspLHYuc3RhdGUud3JhcD09PTE/di5nST1WdCh2LmdJLEQsaCxrKTp2LnN0YXRlLndyYXA9PT0yJiYodi5nST1jUyh2LmdJLEQsaCxrKSksdi5VWis9aCx2LkVtKz1oLEQ9aCk7bi5HVys9RDtpZihuLkdXK24ucXA+PTMpZm9yKGI9bi5xcy1uLnFwLApuLnBBPW4ud2luZG93W2JdLG4ucEE9KG4ucEE8PG4uSGNebi53aW5kb3dbYisxXSkmbi5sQjtuLnFwJiYhKG4ucEE9KG4ucEE8PG4uSGNebi53aW5kb3dbYiszLTFdKSZuLmxCLG4uUlRbYiZuLnllXT1uLmhlYWRbbi5wQV0sbi5oZWFkW24ucEFdPWIsYisrLG4ucXAtLSxuLkdXK24ucXA8Myk7KTt9d2hpbGUobi5HVzwyNjImJm4uVFIuQkEhPT0wKX07Cm53PWZ1bmN0aW9uKG4sVyl7Zm9yKHZhciBEOzspe2lmKG4uR1c8MjYyKXthUyhuKTtpZihuLkdXPDI2MiYmVz09PTApcmV0dXJuIDE7aWYobi5HVz09PTApYnJlYWt9RD0wO24uR1c+PTMmJihuLnBBPShuLnBBPDxuLkhjXm4ud2luZG93W24ucXMrMy0xXSkmbi5sQixEPW4uUlRbbi5xcyZuLnllXT1uLmhlYWRbbi5wQV0sbi5oZWFkW24ucEFdPW4ucXMpO0QhPT0wJiZuLnFzLUQ8PW4ueHItMjYyJiYobi5mQT1RdChuLEQpKTtpZihuLmZBPj0zKWlmKEQ9ZDcobixuLnFzLW4uUVosbi5mQS0zKSxuLkdXLT1uLmZBLG4uZkE8PW4uUmImJm4uR1c+PTMpe24uZkEtLTtkbyBuLnFzKyssbi5wQT0obi5wQTw8bi5IY15uLndpbmRvd1tuLnFzKzMtMV0pJm4ubEIsbi5SVFtuLnFzJm4ueWVdPW4uaGVhZFtuLnBBXSxuLmhlYWRbbi5wQV09bi5xczt3aGlsZSgtLW4uZkEhPT0wKTtuLnFzKyt9ZWxzZSBuLnFzKz1uLmZBLG4uZkE9MCxuLnBBPW4ud2luZG93W24ucXNdLG4ucEE9KG4ucEE8PG4uSGNeCm4ud2luZG93W24ucXMrMV0pJm4ubEI7ZWxzZSBEPWQ3KG4sMCxuLndpbmRvd1tuLnFzXSksbi5HVy0tLG4ucXMrKztpZihEJiYodzcobiwhMSksbi5UUi51Uj09PTApKXJldHVybiAxfW4ucXA9bi5xczwyP24ucXM6MjtyZXR1cm4gVz09PTQ/KHc3KG4sITApLG4uVFIudVI9PT0wPzM6NCk6bi53WCYmKHc3KG4sITEpLG4uVFIudVI9PT0wKT8xOjJ9OwpXVj1mdW5jdGlvbihuLFcpe2Zvcih2YXIgRCxiOzspe2lmKG4uR1c8MjYyKXthUyhuKTtpZihuLkdXPDI2MiYmVz09PTApcmV0dXJuIDE7aWYobi5HVz09PTApYnJlYWt9RD0wO24uR1c+PTMmJihuLnBBPShuLnBBPDxuLkhjXm4ud2luZG93W24ucXMrMy0xXSkmbi5sQixEPW4uUlRbbi5xcyZuLnllXT1uLmhlYWRbbi5wQV0sbi5oZWFkW24ucEFdPW4ucXMpO24uVGE9bi5mQTtuLkx2PW4uUVo7bi5mQT0yO0QhPT0wJiZuLlRhPG4uUmImJm4ucXMtRDw9bi54ci0yNjImJihuLmZBPVF0KG4sRCksbi5mQTw9NSYmKG4uc3RyYXRlZ3k9PT0xfHxuLmZBPT09MyYmbi5xcy1uLlFaPjQwOTYpJiYobi5mQT0yKSk7aWYobi5UYT49MyYmbi5mQTw9bi5UYSl7Yj1uLnFzK24uR1ctMztEPWQ3KG4sbi5xcy0xLW4uTHYsbi5UYS0zKTtuLkdXLT1uLlRhLTE7bi5UYS09Mjtkbysrbi5xczw9YiYmKG4ucEE9KG4ucEE8PG4uSGNebi53aW5kb3dbbi5xcyszLTFdKSZuLmxCLG4uUlRbbi5xcyZuLnllXT0Kbi5oZWFkW24ucEFdLG4uaGVhZFtuLnBBXT1uLnFzKTt3aGlsZSgtLW4uVGEhPT0wKTtuLlJGPTA7bi5mQT0yO24ucXMrKztpZihEJiYodzcobiwhMSksbi5UUi51Uj09PTApKXJldHVybiAxfWVsc2UgaWYobi5SRil7aWYoKEQ9ZDcobiwwLG4ud2luZG93W24ucXMtMV0pKSYmdzcobiwhMSksbi5xcysrLG4uR1ctLSxuLlRSLnVSPT09MClyZXR1cm4gMX1lbHNlIG4uUkY9MSxuLnFzKyssbi5HVy0tfW4uUkYmJihkNyhuLDAsbi53aW5kb3dbbi5xcy0xXSksbi5SRj0wKTtuLnFwPW4ucXM8Mj9uLnFzOjI7cmV0dXJuIFc9PT00Pyh3NyhuLCEwKSxuLlRSLnVSPT09MD8zOjQpOm4ud1gmJih3NyhuLCExKSxuLlRSLnVSPT09MCk/MToyfTsKbXhqPWZ1bmN0aW9uKG4sVyl7Zm9yKHZhciBELGIsdixrPW4ud2luZG93Ozspe2lmKG4uR1c8PTI1OCl7YVMobik7aWYobi5HVzw9MjU4JiZXPT09MClyZXR1cm4gMTtpZihuLkdXPT09MClicmVha31uLmZBPTA7aWYobi5HVz49MyYmbi5xcz4wJiYoYj1uLnFzLTEsRD1rW2JdLEQ9PT1rWysrYl0mJkQ9PT1rWysrYl0mJkQ9PT1rWysrYl0pKXtmb3Iodj1uLnFzKzI1ODtEPT09a1srK2JdJiZEPT09a1srK2JdJiZEPT09a1srK2JdJiZEPT09a1srK2JdJiZEPT09a1srK2JdJiZEPT09a1srK2JdJiZEPT09a1srK2JdJiZEPT09a1srK2JdJiZiPHY7KTtuLmZBPTI1OC0odi1iKTtuLmZBPm4uR1cmJihuLmZBPW4uR1cpfW4uZkE+PTM/KEQ9ZDcobiwxLG4uZkEtMyksbi5HVy09bi5mQSxuLnFzKz1uLmZBLG4uZkE9MCk6KEQ9ZDcobiwwLG4ud2luZG93W24ucXNdKSxuLkdXLS0sbi5xcysrKTtpZihEJiYodzcobiwhMSksbi5UUi51Uj09PTApKXJldHVybiAxfW4ucXA9MDtyZXR1cm4gVz09PQo0Pyh3NyhuLCEwKSxuLlRSLnVSPT09MD8zOjQpOm4ud1gmJih3NyhuLCExKSxuLlRSLnVSPT09MCk/MToyfTsKS3hVPWZ1bmN0aW9uKG4sVyl7Zm9yKHZhciBEOzspe2lmKG4uR1c9PT0wJiYoYVMobiksbi5HVz09PTApKXtpZihXPT09MClyZXR1cm4gMTticmVha31uLmZBPTA7RD1kNyhuLDAsbi53aW5kb3dbbi5xc10pO24uR1ctLTtuLnFzKys7aWYoRCYmKHc3KG4sITEpLG4uVFIudVI9PT0wKSlyZXR1cm4gMX1uLnFwPTA7cmV0dXJuIFc9PT00Pyh3NyhuLCEwKSxuLlRSLnVSPT09MD8zOjQpOm4ud1gmJih3NyhuLCExKSxuLlRSLnVSPT09MCk/MToyfTsKREU9ZnVuY3Rpb24obixXLEQsYix2KXt0aGlzLm5rPW47dGhpcy5ZOD1XO3RoaXMuRWs9RDt0aGlzLlNSPWI7dGhpcy5mdW5jPXZ9OwpPMGk9ZnVuY3Rpb24oKXt0aGlzLlRSPW51bGw7dGhpcy5zdGF0dXM9MDt0aGlzLkZCPW51bGw7dGhpcy53cmFwPXRoaXMucGVuZGluZz10aGlzLmhSPXRoaXMueXY9MDt0aGlzLkZRPW51bGw7dGhpcy5HST0wO3RoaXMubWV0aG9kPTg7dGhpcy5obz0tMTt0aGlzLnllPXRoaXMuclo9dGhpcy54cj0wO3RoaXMud2luZG93PW51bGw7dGhpcy5iWD0wO3RoaXMuaGVhZD10aGlzLlJUPW51bGw7dGhpcy5PUj10aGlzLnIkPXRoaXMuc3RyYXRlZ3k9dGhpcy5sZXZlbD10aGlzLlJiPXRoaXMuZWI9dGhpcy5UYT10aGlzLkdXPXRoaXMuUVo9dGhpcy5xcz10aGlzLlJGPXRoaXMuTHY9dGhpcy5mQT10aGlzLk9LPXRoaXMuSGM9dGhpcy5sQj10aGlzLll2PXRoaXMuQXk9dGhpcy5wQT0wO3RoaXMua0c9bmV3IGhrLm1LKDExNDYpO3RoaXMubGY9bmV3IGhrLm1LKDEyMik7dGhpcy53aD1uZXcgaGsubUsoNzgpO1RCKHRoaXMua0cpO1RCKHRoaXMubGYpO1RCKHRoaXMud2gpO3RoaXMubU09dGhpcy5hUz0KdGhpcy5RZj1udWxsO3RoaXMuVm49bmV3IGhrLm1LKDE2KTt0aGlzLmhlYXA9bmV3IGhrLm1LKDU3Myk7VEIodGhpcy5oZWFwKTt0aGlzLk80PXRoaXMuVW49MDt0aGlzLmRlcHRoPW5ldyBoay5tSyg1NzMpO1RCKHRoaXMuZGVwdGgpO3RoaXMuWUg9dGhpcy5SSj10aGlzLnFwPXRoaXMubWF0Y2hlcz10aGlzLlR2PXRoaXMuWFI9dGhpcy5BOD10aGlzLndYPXRoaXMuS1g9dGhpcy50YT0wfTsKUHAxPWZ1bmN0aW9uKG4sVyl7aWYoIW58fCFuLnN0YXRlfHxXPjV8fFc8MClyZXR1cm4gbj9sQyhuLC0yKTotMjt2YXIgRD1uLnN0YXRlO2lmKCFuLm91dHB1dHx8IW4uaW5wdXQmJm4uQkEhPT0wfHxELnN0YXR1cz09PTY2NiYmVyE9PTQpcmV0dXJuIGxDKG4sbi51Uj09PTA/LTU6LTIpO0QuVFI9bjt2YXIgYj1ELmhvO0QuaG89VztpZihELnN0YXR1cz09PTQyKWlmKEQud3JhcD09PTIpbi5nST0wLE02KEQsMzEpLE02KEQsMTM5KSxNNihELDgpLEQuRlE/KE02KEQsKEQuRlEudGV4dD8xOjApKyhELkZRLnZMPzI6MCkrKEQuRlEuZXh0cmE/NDowKSsoRC5GUS5uYW1lPzg6MCkrKEQuRlEuY29tbWVudD8xNjowKSksTTYoRCxELkZRLnRpbWUmMjU1KSxNNihELEQuRlEudGltZT4+OCYyNTUpLE02KEQsRC5GUS50aW1lPj4xNiYyNTUpLE02KEQsRC5GUS50aW1lPj4yNCYyNTUpLE02KEQsRC5sZXZlbD09PTk/MjpELnN0cmF0ZWd5Pj0yfHxELmxldmVsPDI/NDowKSxNNihELEQuRlEub3MmCjI1NSksRC5GUS5leHRyYSYmRC5GUS5leHRyYS5sZW5ndGgmJihNNihELEQuRlEuZXh0cmEubGVuZ3RoJjI1NSksTTYoRCxELkZRLmV4dHJhLmxlbmd0aD4+OCYyNTUpKSxELkZRLnZMJiYobi5nST1jUyhuLmdJLEQuRkIsRC5wZW5kaW5nLDApKSxELkdJPTAsRC5zdGF0dXM9NjkpOihNNihELDApLE02KEQsMCksTTYoRCwwKSxNNihELDApLE02KEQsMCksTTYoRCxELmxldmVsPT09OT8yOkQuc3RyYXRlZ3k+PTJ8fEQubGV2ZWw8Mj80OjApLE02KEQsMyksRC5zdGF0dXM9MTEzKTtlbHNle3ZhciB2PTgrKEQuclotODw8NCk8PDg7dnw9KEQuc3RyYXRlZ3k+PTJ8fEQubGV2ZWw8Mj8wOkQubGV2ZWw8Nj8xOkQubGV2ZWw9PT02PzI6Myk8PDY7RC5xcyE9PTAmJih2fD0zMik7RC5zdGF0dXM9MTEzO1JTKEQsdisoMzEtdiUzMSkpO0QucXMhPT0wJiYoUlMoRCxuLmdJPj4+MTYpLFJTKEQsbi5nSSY2NTUzNSkpO24uZ0k9MX1pZihELnN0YXR1cz09PTY5KWlmKEQuRlEuZXh0cmEpe2Zvcih2PQpELnBlbmRpbmc7RC5HSTwoRC5GUS5leHRyYS5sZW5ndGgmNjU1MzUpJiYoRC5wZW5kaW5nIT09RC55dnx8KEQuRlEudkwmJkQucGVuZGluZz52JiYobi5nST1jUyhuLmdJLEQuRkIsRC5wZW5kaW5nLXYsdikpLGp2KG4pLHY9RC5wZW5kaW5nLEQucGVuZGluZyE9PUQueXYpKTspTTYoRCxELkZRLmV4dHJhW0QuR0ldJjI1NSksRC5HSSsrO0QuRlEudkwmJkQucGVuZGluZz52JiYobi5nST1jUyhuLmdJLEQuRkIsRC5wZW5kaW5nLXYsdikpO0QuR0k9PT1ELkZRLmV4dHJhLmxlbmd0aCYmKEQuR0k9MCxELnN0YXR1cz03Myl9ZWxzZSBELnN0YXR1cz03MztpZihELnN0YXR1cz09PTczKWlmKEQuRlEubmFtZSl7dj1ELnBlbmRpbmc7ZG97aWYoRC5wZW5kaW5nPT09RC55diYmKEQuRlEudkwmJkQucGVuZGluZz52JiYobi5nST1jUyhuLmdJLEQuRkIsRC5wZW5kaW5nLXYsdikpLGp2KG4pLHY9RC5wZW5kaW5nLEQucGVuZGluZz09PUQueXYpKXt2YXIgaz0xO2JyZWFrfWs9RC5HSTxELkZRLm5hbWUubGVuZ3RoPwpELkZRLm5hbWUuY2hhckNvZGVBdChELkdJKyspJjI1NTowO002KEQsayl9d2hpbGUoayE9PTApO0QuRlEudkwmJkQucGVuZGluZz52JiYobi5nST1jUyhuLmdJLEQuRkIsRC5wZW5kaW5nLXYsdikpO2s9PT0wJiYoRC5HST0wLEQuc3RhdHVzPTkxKX1lbHNlIEQuc3RhdHVzPTkxO2lmKEQuc3RhdHVzPT09OTEpaWYoRC5GUS5jb21tZW50KXt2PUQucGVuZGluZztkb3tpZihELnBlbmRpbmc9PT1ELnl2JiYoRC5GUS52TCYmRC5wZW5kaW5nPnYmJihuLmdJPWNTKG4uZ0ksRC5GQixELnBlbmRpbmctdix2KSksanYobiksdj1ELnBlbmRpbmcsRC5wZW5kaW5nPT09RC55dikpe2s9MTticmVha31rPUQuR0k8RC5GUS5jb21tZW50Lmxlbmd0aD9ELkZRLmNvbW1lbnQuY2hhckNvZGVBdChELkdJKyspJjI1NTowO002KEQsayl9d2hpbGUoayE9PTApO0QuRlEudkwmJkQucGVuZGluZz52JiYobi5nST1jUyhuLmdJLEQuRkIsRC5wZW5kaW5nLXYsdikpO2s9PT0wJiYoRC5zdGF0dXM9MTAzKX1lbHNlIEQuc3RhdHVzPQoxMDM7RC5zdGF0dXM9PT0xMDMmJihELkZRLnZMPyhELnBlbmRpbmcrMj5ELnl2JiZqdihuKSxELnBlbmRpbmcrMjw9RC55diYmKE02KEQsbi5nSSYyNTUpLE02KEQsbi5nST4+OCYyNTUpLG4uZ0k9MCxELnN0YXR1cz0xMTMpKTpELnN0YXR1cz0xMTMpO2lmKEQucGVuZGluZyE9PTApe2lmKGp2KG4pLG4udVI9PT0wKXJldHVybiBELmhvPS0xLDB9ZWxzZSBpZihuLkJBPT09MCYmKFc8PDEpLShXPjQ/OTowKTw9KGI8PDEpLShiPjQ/OTowKSYmVyE9PTQpcmV0dXJuIGxDKG4sLTUpO2lmKEQuc3RhdHVzPT09NjY2JiZuLkJBIT09MClyZXR1cm4gbEMobiwtNSk7aWYobi5CQSE9PTB8fEQuR1chPT0wfHxXIT09MCYmRC5zdGF0dXMhPT02NjYpe2I9RC5zdHJhdGVneT09PTI/S3hVKEQsVyk6RC5zdHJhdGVneT09PTM/bXhqKEQsVyk6YndbRC5sZXZlbF0uZnVuYyhELFcpO2lmKGI9PT0zfHxiPT09NClELnN0YXR1cz02NjY7aWYoYj09PTF8fGI9PT0zKXJldHVybiBuLnVSPT09MCYmKEQuaG89Ci0xKSwwO2lmKGI9PT0yJiYoVz09PTE/KHMkKEQsMiwzKSxONihELDI1NixCUyksRC5ZSD09PTE2PyhyNyhELEQuUkopLEQuUko9MCxELllIPTApOkQuWUg+PTgmJihELkZCW0QucGVuZGluZysrXT1ELlJKJjI1NSxELlJKPj49OCxELllILT04KSk6VyE9PTUmJihzJChELDAsMyksSmsoRCwwLDApLFc9PT0zJiYoVEIoRC5oZWFkKSxELkdXPT09MCYmKEQucXM9MCxELk9LPTAsRC5xcD0wKSkpLGp2KG4pLG4udVI9PT0wKSlyZXR1cm4gRC5obz0tMSwwfWlmKFchPT00KXJldHVybiAwO2lmKEQud3JhcDw9MClyZXR1cm4gMTtELndyYXA9PT0yPyhNNihELG4uZ0kmMjU1KSxNNihELG4uZ0k+PjgmMjU1KSxNNihELG4uZ0k+PjE2JjI1NSksTTYoRCxuLmdJPj4yNCYyNTUpLE02KEQsbi5FbSYyNTUpLE02KEQsbi5FbT4+OCYyNTUpLE02KEQsbi5FbT4+MTYmMjU1KSxNNihELG4uRW0+PjI0JjI1NSkpOihSUyhELG4uZ0k+Pj4xNiksUlMoRCxuLmdJJjY1NTM1KSk7anYobik7RC53cmFwPjAmJgooRC53cmFwPS1ELndyYXApO3JldHVybiBELnBlbmRpbmchPT0wPzA6MX07CnZWPWZ1bmN0aW9uKG4pe2lmKCEodGhpcyBpbnN0YW5jZW9mIHZWKSlyZXR1cm4gbmV3IHZWKG4pO249dGhpcy5vcHRpb25zPWhrLmFzc2lnbih7bGV2ZWw6LTEsbWV0aG9kOjgsY2h1bmtTaXplOjE2Mzg0LHRnOjE1LEJrOjgsc3RyYXRlZ3k6MCx0bzoiIn0sbnx8e30pO24ucmF3JiZuLnRnPjA/bi50Zz0tbi50ZzpuLkJUJiZuLnRnPjAmJm4udGc8MTYmJihuLnRnKz0xNik7dGhpcy5lcnI9MDt0aGlzLm1zZz0iIjt0aGlzLmVuZGVkPSExO3RoaXMuY2h1bmtzPVtdO3RoaXMuVFI9bmV3IGtmO3RoaXMuVFIudVI9MDt2YXIgVz10aGlzLlRSO3ZhciBEPW4ubGV2ZWwsYj1uLm1ldGhvZCx2PW4udGcsaz1uLkJrLGg9bi5zdHJhdGVneTtpZihXKXt2YXIgeD0xO0Q9PT0tMSYmKEQ9Nik7djwwPyh4PTAsdj0tdik6dj4xNSYmKHg9Mix2LT0xNik7aWYoazwxfHxrPjl8fGIhPT04fHx2PDh8fHY+MTV8fEQ8MHx8RD45fHxoPDB8fGg+NClXPWxDKFcsLTIpO2Vsc2V7dj09PTgmJih2PTkpO3ZhciBMPQpuZXcgTzBpO1cuc3RhdGU9TDtMLlRSPVc7TC53cmFwPXg7TC5GUT1udWxsO0wuclo9djtMLnhyPTE8PEwuclo7TC55ZT1MLnhyLTE7TC5Zdj1rKzc7TC5BeT0xPDxMLll2O0wubEI9TC5BeS0xO0wuSGM9fn4oKEwuWXYrMy0xKS8zKTtMLndpbmRvdz1uZXcgaGsuT20oTC54cioyKTtMLmhlYWQ9bmV3IGhrLm1LKEwuQXkpO0wuUlQ9bmV3IGhrLm1LKEwueHIpO0wuS1g9MTw8ays2O0wueXY9TC5LWCo0O0wuRkI9bmV3IGhrLk9tKEwueXYpO0wuQTg9MSpMLktYO0wudGE9MypMLktYO0wubGV2ZWw9RDtMLnN0cmF0ZWd5PWg7TC5tZXRob2Q9YjtpZihXJiZXLnN0YXRlKXtXLkVtPVcudEI9MDtXLnFTPTI7RD1XLnN0YXRlO0QucGVuZGluZz0wO0QuaFI9MDtELndyYXA8MCYmKEQud3JhcD0tRC53cmFwKTtELnN0YXR1cz1ELndyYXA/NDI6MTEzO1cuZ0k9RC53cmFwPT09Mj8wOjE7RC5obz0wO2lmKCFocil7Yj1BcnJheSgxNik7Zm9yKGs9aD0wO2s8Mjg7aysrKWZvcihLZVtrXT1oLHY9MDt2PAoxPDxtJFtrXTt2KyspQWtbaCsrXT1rO0FrW2gtMV09aztmb3Ioaz1oPTA7azwxNjtrKyspZm9yKFpRW2tdPWgsdj0wO3Y8MTw8UFNba107disrKU8kW2grK109aztmb3IoaD4+PTc7azwzMDtrKyspZm9yKFpRW2tdPWg8PDcsdj0wO3Y8MTw8UFNba10tNzt2KyspTyRbMjU2K2grK109aztmb3Iodj0wO3Y8PTE1O3YrKyliW3ZdPTA7Zm9yKHY9MDt2PD0xNDM7KUJTW3YqMisxXT04LHYrKyxiWzhdKys7Zm9yKDt2PD0yNTU7KUJTW3YqMisxXT05LHYrKyxiWzldKys7Zm9yKDt2PD0yNzk7KUJTW3YqMisxXT03LHYrKyxiWzddKys7Zm9yKDt2PD0yODc7KUJTW3YqMisxXT04LHYrKyxiWzhdKys7WWooQlMsMjg3LGIpO2Zvcih2PTA7djwzMDt2KyspRjlbdioyKzFdPTUsRjlbdioyXT1wZSh2LDUpO3hmPW5ldyBldihCUyxtJCwyNTcsMjg2LDE1KTtMdz1uZXcgZXYoRjksUFMsMCwzMCwxNSk7ZUg9bmV3IGV2KFtdLFowdywwLDE5LDcpO2hyPSEwfUQuUWY9bmV3IHRrKEQua0cseGYpO0QuYVM9Cm5ldyB0ayhELmxmLEx3KTtELm1NPW5ldyB0ayhELndoLGVIKTtELlJKPTA7RC5ZSD0wO0hTKEQpO0Q9MH1lbHNlIEQ9bEMoVywtMik7RD09PTAmJihXPVcuc3RhdGUsVy5iWD0yKlcueHIsVEIoVy5oZWFkKSxXLlJiPWJ3W1cubGV2ZWxdLlk4LFcuciQ9YndbVy5sZXZlbF0ubmssVy5PUj1id1tXLmxldmVsXS5FayxXLmViPWJ3W1cubGV2ZWxdLlNSLFcucXM9MCxXLk9LPTAsVy5HVz0wLFcucXA9MCxXLmZBPVcuVGE9MixXLlJGPTAsVy5wQT0wKTtXPUR9fWVsc2UgVz0tMjtpZihXIT09MCl0aHJvdyBFcnJvcih6QltXXSk7bi5oZWFkZXImJihXPXRoaXMuVFIpJiZXLnN0YXRlJiZXLnN0YXRlLndyYXA9PT0yJiYoVy5zdGF0ZS5GUT1uLmhlYWRlcik7aWYobi5Dbyl7dmFyIGU7dHlwZW9mIG4uQ289PT0ic3RyaW5nIj9lPXhqKG4uQ28pOmcyLmNhbGwobi5Dbyk9PT0iW29iamVjdCBBcnJheUJ1ZmZlcl0iP2U9bmV3IFVpbnQ4QXJyYXkobi5Dbyk6ZT1uLkNvO249dGhpcy5UUjtrPWU7aD0Kay5sZW5ndGg7aWYobiYmbi5zdGF0ZSlpZihlPW4uc3RhdGUsVz1lLndyYXAsVz09PTJ8fFc9PT0xJiZlLnN0YXR1cyE9PTQyfHxlLkdXKVc9LTI7ZWxzZXtXPT09MSYmKG4uZ0k9VnQobi5nSSxrLGgsMCkpO2Uud3JhcD0wO2g+PWUueHImJihXPT09MCYmKFRCKGUuaGVhZCksZS5xcz0wLGUuT0s9MCxlLnFwPTApLEQ9bmV3IGhrLk9tKGUueHIpLGhrLlA3KEQsayxoLWUueHIsZS54ciwwKSxrPUQsaD1lLnhyKTtEPW4uQkE7Yj1uLlVaO3Y9bi5pbnB1dDtuLkJBPWg7bi5VWj0wO24uaW5wdXQ9aztmb3IoYVMoZSk7ZS5HVz49Mzspe2s9ZS5xcztoPWUuR1ctMjtkbyBlLnBBPShlLnBBPDxlLkhjXmUud2luZG93W2srMy0xXSkmZS5sQixlLlJUW2smZS55ZV09ZS5oZWFkW2UucEFdLGUuaGVhZFtlLnBBXT1rLGsrKzt3aGlsZSgtLWgpO2UucXM9aztlLkdXPTI7YVMoZSl9ZS5xcys9ZS5HVztlLk9LPWUucXM7ZS5xcD1lLkdXO2UuR1c9MDtlLmZBPWUuVGE9MjtlLlJGPTA7bi5VWj1iO24uaW5wdXQ9CnY7bi5CQT1EO2Uud3JhcD1XO1c9MH1lbHNlIFc9LTI7aWYoVyE9PTApdGhyb3cgRXJyb3IoekJbV10pO3RoaXMuWGg9ITB9fTsKWCQ9ZnVuY3Rpb24obil7dmFyIFc9V3x8e307Vy5CVD0hMDtXPW5ldyB2VihXKTtXLnB1c2gobiwhMCk7aWYoVy5lcnIpdGhyb3cgVy5tc2d8fHpCW1cuZXJyXTtyZXR1cm4gVy5yZXN1bHR9OwpxTj1mdW5jdGlvbiguLi5uKXtyZXR1cm4gbi5sZW5ndGg9PT0wP1c9Plc6bi5sZW5ndGg9PT0xP25bMF06bi5yZWR1Y2UoKFcsRCk9PiguLi5iKT0+VyhEKC4uLmIpKSl9OwpVeGo9ZnVuY3Rpb24oKXt2YXIgbj1bXTtyZXR1cm4gVz0+KEQsYik9PntEPVcoRCxiKTt2YXIgdj0oKT0+e3Rocm93IEVycm9yKCJEaXNwYXRjaGluZyB3aGlsZSBjb25zdHJ1Y3RpbmcgeW91ciBtaWRkbGV3YXJlIGlzIG5vdCBhbGxvd2VkLiBPdGhlciBtaWRkbGV3YXJlIHdvdWxkIG5vdCBiZSBhcHBsaWVkIHRvIHRoaXMgZGlzcGF0Y2guIik7fSxrPXtnZXRTdGF0ZTpELmdldFN0YXRlLApkaXNwYXRjaDooaCwuLi54KT0+dihoLC4uLngpfTsKYj1uLm1hcChoPT5oKGspKTsKdj1xTiguLi5iKShELmRpc3BhdGNoKTtyZXR1cm57Li4uRCxkaXNwYXRjaDp2fX19Owp5NDI9ZnVuY3Rpb24obil7T2JqZWN0LmtleXMobikuZm9yRWFjaChXPT57dmFyIEQ9bltXXTtpZih0eXBlb2YgRCh2b2lkIDAse3R5cGU6R2R9KT09PSJ1bmRlZmluZWQiKXRocm93IEVycm9yKGBUaGUgc2xpY2UgcmVkdWNlciBmb3Iga2V5ICIke1d9IiByZXR1cm5lZCB1bmRlZmluZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uLiBJZiB0aGUgc3RhdGUgcGFzc2VkIHRvIHRoZSByZWR1Y2VyIGlzIHVuZGVmaW5lZCwgeW91IG11c3QgZXhwbGljaXRseSByZXR1cm4gdGhlIGluaXRpYWwgc3RhdGUuIFRoZSBpbml0aWFsIHN0YXRlIG1heSBub3QgYmUgdW5kZWZpbmVkLiBJZiB5b3UgZG9uJ3Qgd2FudCB0byBzZXQgYSB2YWx1ZSBmb3IgdGhpcyByZWR1Y2VyLCB5b3UgY2FuIHVzZSBudWxsIGluc3RlYWQgb2YgdW5kZWZpbmVkLmApO2lmKHR5cGVvZiBEKHZvaWQgMCx7dHlwZTpgQEByZWR1eC9QUk9CRV9VTktOT1dOX0FDVElPTiR7dHIoKX1gfSk9PT0idW5kZWZpbmVkIil0aHJvdyBFcnJvcihgVGhlIHNsaWNlIHJlZHVjZXIgZm9yIGtleSAiJHtXfSIgcmV0dXJuZWQgdW5kZWZpbmVkIHdoZW4gcHJvYmVkIHdpdGggYSByYW5kb20gdHlwZS4gRG9uJ3QgdHJ5IHRvIGhhbmRsZSAnJHtHZH0nIG9yIG90aGVyIGFjdGlvbnMgaW4gInJlZHV4LyoiIG5hbWVzcGFjZS4gVGhleSBhcmUgY29uc2lkZXJlZCBwcml2YXRlLiBJbnN0ZWFkLCB5b3UgbXVzdCByZXR1cm4gdGhlIGN1cnJlbnQgc3RhdGUgZm9yIGFueSB1bmtub3duIGFjdGlvbnMsIHVubGVzcyBpdCBpcyB1bmRlZmluZWQsIGluIHdoaWNoIGNhc2UgeW91IG11c3QgcmV0dXJuIHRoZSBpbml0aWFsIHN0YXRlLCByZWdhcmRsZXNzIG9mIHRoZSBhY3Rpb24gdHlwZS4gVGhlIGluaXRpYWwgc3RhdGUgbWF5IG5vdCBiZSB1bmRlZmluZWQsIGJ1dCBjYW4gYmUgbnVsbC5gKTsKfSl9OwokZj1mdW5jdGlvbihuLFcsRCl7ZnVuY3Rpb24gYigpe2lmKEcpdGhyb3cgRXJyb3IoIllvdSBtYXkgbm90IGNhbGwgc3RvcmUuZ2V0U3RhdGUoKSB3aGlsZSB0aGUgcmVkdWNlciBpcyBleGVjdXRpbmcuIFRoZSByZWR1Y2VyIGhhcyBhbHJlYWR5IHJlY2VpdmVkIHRoZSBzdGF0ZSBhcyBhbiBhcmd1bWVudC4gUGFzcyBpdCBkb3duIGZyb20gdGhlIHRvcCByZWR1Y2VyIGluc3RlYWQgb2YgcmVhZGluZyBpdCBmcm9tIHRoZSBzdG9yZS4iKTtyZXR1cm4geH0KZnVuY3Rpb24gdihOKXtpZih0eXBlb2YgTiE9PSJmdW5jdGlvbiIpdGhyb3cgRXJyb3IoYEV4cGVjdGVkIHRoZSBsaXN0ZW5lciB0byBiZSBhIGZ1bmN0aW9uLiBJbnN0ZWFkLCByZWNlaXZlZDogJyR7dHlwZW9mIE59J2ApO2lmKEcpdGhyb3cgRXJyb3IoIllvdSBtYXkgbm90IGNhbGwgc3RvcmUuc3Vic2NyaWJlKCkgd2hpbGUgdGhlIHJlZHVjZXIgaXMgZXhlY3V0aW5nLiBJZiB5b3Ugd291bGQgbGlrZSB0byBiZSBub3RpZmllZCBhZnRlciB0aGUgc3RvcmUgaGFzIGJlZW4gdXBkYXRlZCwgc3Vic2NyaWJlIGZyb20gYSBjb21wb25lbnQgYW5kIGludm9rZSBzdG9yZS5nZXRTdGF0ZSgpIGluIHRoZSBjYWxsYmFjayB0byBhY2Nlc3MgdGhlIGxhdGVzdCBzdGF0ZS4gU2VlIGh0dHBzOi8vcmVkdXguanMub3JnL2FwaS9zdG9yZSNzdWJzY3JpYmVsaXN0ZW5lciBmb3IgbW9yZSBkZXRhaWxzLiIpO3ZhciBIPSEwO2U9PT1MJiYoZT1MLnNsaWNlKCkpO2UucHVzaChOKTtyZXR1cm4gZnVuY3Rpb24oKXtpZihIKXtpZihHKXRocm93IEVycm9yKCJZb3UgbWF5IG5vdCB1bnN1YnNjcmliZSBmcm9tIGEgc3RvcmUgbGlzdGVuZXIgd2hpbGUgdGhlIHJlZHVjZXIgaXMgZXhlY3V0aW5nLiBTZWUgaHR0cHM6Ly9yZWR1eC5qcy5vcmcvYXBpL3N0b3JlI3N1YnNjcmliZWxpc3RlbmVyIGZvciBtb3JlIGRldGFpbHMuIik7Ckg9ITE7ZT09PUwmJihlPUwuc2xpY2UoKSk7ZS5zcGxpY2UoZS5pbmRleE9mKE4pLDEpO0w9bnVsbH19fQpmdW5jdGlvbiBrKE4pe2lmKHR5cGVvZiBOIT09Im9iamVjdCJ8fE49PT1udWxsKXZhciBIPSExO2Vsc2V7Zm9yKEg9TjtPYmplY3QuZ2V0UHJvdG90eXBlT2YoSCkhPT1udWxsOylIPU9iamVjdC5nZXRQcm90b3R5cGVPZihIKTtIPU9iamVjdC5nZXRQcm90b3R5cGVPZihOKT09PUh9aWYoIUgpdGhyb3cgRXJyb3IoYEFjdGlvbnMgbXVzdCBiZSBwbGFpbiBvYmplY3RzLiBJbnN0ZWFkLCB0aGUgYWN0dWFsIHR5cGUgd2FzOiAnJHt0eXBlb2YgTn0nLiBZb3UgbWF5IG5lZWQgdG8gYWRkIG1pZGRsZXdhcmUgdG8geW91ciBzdG9yZSBzZXR1cCB0byBoYW5kbGUgZGlzcGF0Y2hpbmcgb3RoZXIgdmFsdWVzLCBzdWNoIGFzICdyZWR1eC10aHVuaycgdG8gaGFuZGxlIGRpc3BhdGNoaW5nIGZ1bmN0aW9ucy4gU2VlIGh0dHBzOi8vcmVkdXguanMub3JnL3R1dG9yaWFscy9mdW5kYW1lbnRhbHMvcGFydC00LXN0b3JlI21pZGRsZXdhcmUgYW5kIGh0dHBzOi8vcmVkdXguanMub3JnL3R1dG9yaWFscy9mdW5kYW1lbnRhbHMvcGFydC02LWFzeW5jLWxvZ2ljI3VzaW5nLXRoZS1yZWR1eC10aHVuay1taWRkbGV3YXJlIGZvciBleGFtcGxlcy5gKTsKaWYodHlwZW9mIE4udHlwZT09PSJ1bmRlZmluZWQiKXRocm93IEVycm9yKCdBY3Rpb25zIG1heSBub3QgaGF2ZSBhbiB1bmRlZmluZWQgInR5cGUiIHByb3BlcnR5LiBZb3UgbWF5IGhhdmUgbWlzc3BlbGxlZCBhbiBhY3Rpb24gdHlwZSBzdHJpbmcgY29uc3RhbnQuJyk7aWYoRyl0aHJvdyBFcnJvcigiUmVkdWNlcnMgbWF5IG5vdCBkaXNwYXRjaCBhY3Rpb25zLiIpO3RyeXtHPSEwLHg9aCh4LE4pfWZpbmFsbHl7Rz0hMX1IPUw9ZTtmb3IobGV0IEE9MDtBPEgubGVuZ3RoO0ErKykoMCxIW0FdKSgpO3JldHVybiBOfQppZih0eXBlb2YgVz09PSJmdW5jdGlvbiImJnR5cGVvZiBEPT09ImZ1bmN0aW9uInx8dHlwZW9mIEQ9PT0iZnVuY3Rpb24iJiZ0eXBlb2YgYXJndW1lbnRzWzNdPT09ImZ1bmN0aW9uIil0aHJvdyBFcnJvcigiSXQgbG9va3MgbGlrZSB5b3UgYXJlIHBhc3Npbmcgc2V2ZXJhbCBzdG9yZSBlbmhhbmNlcnMgdG8gY3JlYXRlU3RvcmUoKS4gVGhpcyBpcyBub3Qgc3VwcG9ydGVkLiBJbnN0ZWFkLCBjb21wb3NlIHRoZW0gdG9nZXRoZXIgdG8gYSBzaW5nbGUgZnVuY3Rpb24uIFNlZSBodHRwczovL3JlZHV4LmpzLm9yZy90dXRvcmlhbHMvZnVuZGFtZW50YWxzL3BhcnQtNC1zdG9yZSNjcmVhdGluZy1hLXN0b3JlLXdpdGgtZW5oYW5jZXJzIGZvciBhbiBleGFtcGxlLiIpO3R5cGVvZiBXPT09ImZ1bmN0aW9uIiYmdHlwZW9mIEQ9PT0idW5kZWZpbmVkIiYmKEQ9VyxXPXZvaWQgMCk7aWYodHlwZW9mIEQhPT0idW5kZWZpbmVkIil7aWYodHlwZW9mIEQhPT0iZnVuY3Rpb24iKXRocm93IEVycm9yKGBFeHBlY3RlZCB0aGUgZW5oYW5jZXIgdG8gYmUgYSBmdW5jdGlvbi4gSW5zdGVhZCwgcmVjZWl2ZWQ6ICcke3R5cGVvZiBEfSdgKTsKcmV0dXJuIEQoJGYpKG4sVyl9aWYodHlwZW9mIG4hPT0iZnVuY3Rpb24iKXRocm93IEVycm9yKGBFeHBlY3RlZCB0aGUgcm9vdCByZWR1Y2VyIHRvIGJlIGEgZnVuY3Rpb24uIEluc3RlYWQsIHJlY2VpdmVkOiAnJHt0eXBlb2Ygbn0nYCk7dmFyIGg9bix4PVcsTD1bXSxlPUwsRz0hMTtrKHt0eXBlOkdkfSk7dmFyIHI9e2Rpc3BhdGNoOmssc3Vic2NyaWJlOnYsZ2V0U3RhdGU6YixyZXBsYWNlUmVkdWNlcjpmdW5jdGlvbihOKXtpZih0eXBlb2YgTiE9PSJmdW5jdGlvbiIpdGhyb3cgRXJyb3IoYEV4cGVjdGVkIHRoZSBuZXh0UmVkdWNlciB0byBiZSBhIGZ1bmN0aW9uLiBJbnN0ZWFkLCByZWNlaXZlZDogJyR7dHlwZW9mIE59YCk7aD1OO2soe3R5cGU6RUtDfSk7cmV0dXJuIHJ9LApbcjJdOmZ1bmN0aW9uKCl7cmV0dXJue3N1YnNjcmliZShOKXtmdW5jdGlvbiBIKCl7Ti5uZXh0JiZOLm5leHQoYigpKX0KaWYodHlwZW9mIE4hPT0ib2JqZWN0Inx8Tj09PW51bGwpdGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgdGhlIG9ic2VydmVyIHRvIGJlIGFuIG9iamVjdC4gSW5zdGVhZCwgcmVjZWl2ZWQ6ICcke3R5cGVvZiBOfSdgKTtIKCk7cmV0dXJue3Vuc3Vic2NyaWJlOnYoSCl9fSxbcjJdKCl7cmV0dXJuIHRoaXN9fX19OwpyZXR1cm4gcn07Ck5OPWZ1bmN0aW9uKG4pe3JldHVybiBuPyhuPW4ucHJpdmF0ZURvTm90QWNjZXNzT3JFbHNlU2FmZVNjcmlwdFdyYXBwZWRWYWx1ZSk/bWMobik6bnVsbDpudWxsfTsKcHc9ZnVuY3Rpb24obil7cmV0dXJuIG4/KG49bi5wcml2YXRlRG9Ob3RBY2Nlc3NPckVsc2VUcnVzdGVkUmVzb3VyY2VVcmxXcmFwcGVkVmFsdWUpP2szKG4pOm51bGw6bnVsbH07CmcuSFY9ZnVuY3Rpb24obil7bj1ZZihuKTtyZXR1cm4gZy5ITShuKX07CmZ3PWZ1bmN0aW9uKG4pe249WWYobik7cmV0dXJuIGszKG4pfTsKWWY9ZnVuY3Rpb24obil7cmV0dXJuIG49PT1udWxsPyJudWxsIjpuPT09dm9pZCAwPyJ1bmRlZmluZWQiOm59OwpKcj1mdW5jdGlvbigpe3JldHVybiBnLnJyKCJ5dC5hZHMuYmlzY290dGkubGFzdElkXyIpfHwiIn07CmcuU0g9ZnVuY3Rpb24oLi4ubil7bj1hcmd1bWVudHM7dmFyIFc9SUU7bi5sZW5ndGg+MT9XW25bMF1dPW5bMV06bi5sZW5ndGg9PT0xJiZPYmplY3QuYXNzaWduKFcsblswXSl9OwpnLkFyPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4gaW4gSUU/SUVbbl06V307Cm15PWZ1bmN0aW9uKG4pe3ZhciBXPUlFLkVYUEVSSU1FTlRfRkxBR1M7cmV0dXJuIFc/V1tuXTp2b2lkIDB9OwppMGI9ZnVuY3Rpb24obil7S3cuZm9yRWFjaChXPT5XKG4pKX07ClBWPWZ1bmN0aW9uKG4pe3JldHVybiBuJiZ3aW5kb3cueXRlcnI/ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIG4uYXBwbHkodGhpcyxhcmd1bWVudHMpfWNhdGNoKFcpe090KFcpfX06bn07Ck90PWZ1bmN0aW9uKG4pe3ZhciBXPWcucnIoInl0LmxvZ2dpbmcuZXJyb3JzLmxvZyIpO1c/VyhuLCJFUlJPUiIsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCk6KFc9Zy5BcigiRVJST1JTIixbXSksVy5wdXNoKFtuLCJFUlJPUiIsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMF0pLGcuU0goIkVSUk9SUyIsVykpO2kwYihuKX07ClpFPWZ1bmN0aW9uKG4sVyxELGIsdil7dmFyIGs9Zy5ycigieXQubG9nZ2luZy5lcnJvcnMubG9nIik7az9rKG4sIldBUk5JTkciLFcsRCxiLHZvaWQgMCx2KTooaz1nLkFyKCJFUlJPUlMiLFtdKSxrLnB1c2goW24sIldBUk5JTkciLFcsRCxiLHZvaWQgMCx2XSksZy5TSCgiRVJST1JTIixrKSl9Owp5Rj1mdW5jdGlvbihuLFcpe1c9bi5zcGxpdChXKTt2YXIgRD17fTtmb3IobGV0IGs9MCxoPVcubGVuZ3RoO2s8aDtrKyspe2xldCB4PVdba10uc3BsaXQoIj0iKTtpZih4Lmxlbmd0aD09PTEmJnhbMF18fHgubGVuZ3RoPT09Mil0cnl7bGV0IEw9VXQoeFswXXx8IiIpLGU9VXQoeFsxXXx8IiIpO2lmKEwgaW4gRCl7bGV0IEc9RFtMXTtBcnJheS5pc0FycmF5KEcpP2cuUTIoRyxlKTpEW0xdPVtHLGVdfWVsc2UgRFtMXT1lfWNhdGNoKEwpe3ZhciBiPUwsdj14WzBdO2xldCBlPVN0cmluZyh5Rik7Yi5hcmdzPVt7a2V5OnYsdmFsdWU6eFsxXSxxdWVyeTpuLG1ldGhvZDp1UWg9PT1lPyJ1bmNoYW5nZWQiOmV9XTtvS2kuaGFzT3duUHJvcGVydHkodil8fFpFKGIpfX1yZXR1cm4gRH07CmcuRXQ9ZnVuY3Rpb24obil7dmFyIFc9W107Zy5hXyhuLChELGIpPT57dmFyIHY9cWgoYik7Zy55MihBcnJheS5pc0FycmF5KEQpP0Q6W0RdLGs9PntrPT0iIj9XLnB1c2godik6Vy5wdXNoKGAke3Z9PSR7cWgoayl9YCl9KX0pOwpyZXR1cm4gVy5qb2luKCImIil9OwpnLml3PWZ1bmN0aW9uKG4pe24uY2hhckF0KDApPT09Ij8iJiYobj1uLnN1YnN0cmluZygxKSk7cmV0dXJuIHlGKG4sIiYiKX07CnV3PWZ1bmN0aW9uKG4pe3JldHVybiBuLnNwbGl0KCIsIikubWFwKFc9PmcuaXcoVykpfTsKZy5vRT1mdW5jdGlvbihuKXtyZXR1cm4gbi5pbmRleE9mKCI/IikhPT0tMT8obj0obnx8IiIpLnNwbGl0KCIjIilbMF0sbj1uLnNwbGl0KCI/IiwyKSxnLml3KG4ubGVuZ3RoPjE/blsxXTpuWzBdKSk6e319OwpnLnpkPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGQyKG4sV3x8e30sITApfTsKZy5sdz1mdW5jdGlvbihuLFcpe3JldHVybiBkMihuLFd8fHt9LCExKX07CmQyPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLnNwbGl0KCIjIiwyKTtuPWJbMF07Yj1iLmxlbmd0aD4xPyIjIitiWzFdOiIiO3ZhciB2PW4uc3BsaXQoIj8iLDIpO249dlswXTt2PWcuaXcodlsxXXx8IiIpO2ZvcihsZXQgayBpbiBXKWlmKER8fCFnLmVwKHYsaykpdltrXT1XW2tdO3JldHVybiBnLkVUKG4sdikrYn07CmcuVGQ9ZnVuY3Rpb24obil7aWYoIVcpdmFyIFc9d2luZG93LmxvY2F0aW9uLmhyZWY7dmFyIEQ9Zy5mcChuKVsxXXx8bnVsbCxiPWcuSVAobik7RCYmYj8obj1nLmZwKG4pLFc9Zy5mcChXKSxuPW5bM109PVdbM10mJm5bMV09PVdbMV0mJm5bNF09PVdbNF0pOm49Yj9nLklQKFcpPT09YiYmKE51bWJlcihnLmZwKFcpWzRdfHxudWxsKXx8bnVsbCk9PT0oTnVtYmVyKGcuZnAobilbNF18fG51bGwpfHxudWxsKTohMDtyZXR1cm4gbn07Cmcuakg9ZnVuY3Rpb24obil7bnx8KG49ZG9jdW1lbnQubG9jYXRpb24uaHJlZik7bj1nLmZwKG4pWzFdfHxudWxsO3JldHVybiBuIT09bnVsbCYmbj09PSJodHRwcyJ9OwpnLkJWPWZ1bmN0aW9uKG4pe249Q3cobik7cmV0dXJuIG49PT1udWxsPyExOm5bMF09PT0iY29tIiYmblsxXS5tYXRjaCgvXnlvdXR1YmUoPzpraWRzfC1ub2Nvb2tpZSk/JC8pPyEwOiExfTsKZy5GJD1mdW5jdGlvbihuKXtuPUN3KG4pO3JldHVybiBuPT09bnVsbD8hMTpuWzFdPT09Imdvb2dsZSI/ITA6blsyXT09PSJnb29nbGUiP25bMF09PT0iYXUiJiZuWzFdPT09ImNvbSI/ITA6blswXT09PSJ1ayImJm5bMV09PT0iY28iPyEwOiExOiExfTsKQ3c9ZnVuY3Rpb24obil7bj1nLklQKG4pO3JldHVybiBuIT09bnVsbD9uLnNwbGl0KCIuIikucmV2ZXJzZSgpOm51bGx9OwpVdD1mdW5jdGlvbihuKXtyZXR1cm4gbiYmbi5tYXRjaChkeGkpP246RzUobil9OwpnLk1OPWZ1bmN0aW9uKG4pe2E6e2xldCBEO3RyeXtEPW4uTi50b3AubG9jYXRpb24uaHJlZn1jYXRjaChiKXtuPTI7YnJlYWsgYX1uPUQ/RD09PW4uSi5sb2NhdGlvbi5ocmVmPzA6MToyfW49e2R0OnpDdyxmbGFzaDoiMCIsZnJtOm59O3RyeXtuLnVfdHo9LShuZXcgRGF0ZSkuZ2V0VGltZXpvbmVPZmZzZXQoKTt0cnl7dmFyIFc9Zy53Mi5oaXN0b3J5Lmxlbmd0aH1jYXRjaChEKXtXPTB9bi51X2hpcz1XO24udV9oPWcudzIuc2NyZWVuPy5oZWlnaHQ7bi51X3c9Zy53Mi5zY3JlZW4/LndpZHRoO24udV9haD1nLncyLnNjcmVlbj8uYXZhaWxIZWlnaHQ7bi51X2F3PWcudzIuc2NyZWVuPy5hdmFpbFdpZHRoO24udV9jZD1nLncyLnNjcmVlbj8uY29sb3JEZXB0aH1jYXRjaChEKXt9cmV0dXJuIG59OwpnLlFGPWZ1bmN0aW9uKG49SnIoKSl7dmFyIFc9Zy5SRSxEPU9iamVjdCxiPUQuYXNzaWduLHY9Zy5NTihXKTt2YXIgaz1XLk47dHJ5e3ZhciBoPWsuc2NyZWVuWDt2YXIgeD1rLnNjcmVlbll9Y2F0Y2goVCl7fXRyeXt2YXIgTD1rLm91dGVyV2lkdGg7dmFyIGU9ay5vdXRlckhlaWdodH1jYXRjaChUKXt9dHJ5e3ZhciBHPWsuaW5uZXJXaWR0aDt2YXIgcj1rLmlubmVySGVpZ2h0fWNhdGNoKFQpe310cnl7dmFyIE49ay5zY3JlZW5MZWZ0O3ZhciBIPWsuc2NyZWVuVG9wfWNhdGNoKFQpe310cnl7Rz1rLmlubmVyV2lkdGgscj1rLmlubmVySGVpZ2h0fWNhdGNoKFQpe310cnl7dmFyIEE9ay5zY3JlZW4uYXZhaWxXaWR0aDt2YXIgeT1rLnNjcmVlbi5hdmFpbFRvcH1jYXRjaChUKXt9az1bTixILGgseCxBLHksTCxlLEcscl07aD1nLnNJKCExLFcuTi50b3ApO3g9bmV3IGxYcjsiU1ZHRWxlbWVudCJpbiBnLnFpJiYiY3JlYXRlRWxlbWVudE5TImluIGcucWkuZG9jdW1lbnQmJnguc2V0KDApOwpMPVRUcigpO0xbImFsbG93LXRvcC1uYXZpZ2F0aW9uLWJ5LXVzZXItYWN0aXZhdGlvbiJdJiZ4LnNldCgxKTtMWyJhbGxvdy1wb3B1cHMtdG8tZXNjYXBlLXNhbmRib3giXSYmeC5zZXQoMik7Zy5xaS5jcnlwdG8mJmcucWkuY3J5cHRvLnN1YnRsZSYmeC5zZXQoMyk7IlRleHREZWNvZGVyImluIGcucWkmJiJUZXh0RW5jb2RlciJpbiBnLnFpJiZ4LnNldCg0KTtXPXtiYzpOV2goeCksYmloOmguaGVpZ2h0LGJpdzpoLndpZHRoLGJyZGltOmsuam9pbigpLHZpczpnLk53KFcuSiksd2dsOiEhZy53Mi5XZWJHTFJlbmRlcmluZ0NvbnRleHR9O0Q9Yi5jYWxsKEQsdixXKTtELmNhX3R5cGU9ImltYWdlIjtuJiYoRC5iaWQ9bik7cmV0dXJuIER9OwpUVzI9ZnVuY3Rpb24oKXtpZighVkYpcmV0dXJuIG51bGw7dmFyIG49VkYoKTtyZXR1cm4ib3BlbiJpbiBuP246bnVsbH07CmFFPWZ1bmN0aW9uKG4pe3N3aXRjaChjVihuKSl7Y2FzZSAyMDA6Y2FzZSAyMDE6Y2FzZSAyMDI6Y2FzZSAyMDM6Y2FzZSAyMDQ6Y2FzZSAyMDU6Y2FzZSAyMDY6Y2FzZSAzMDQ6cmV0dXJuITA7ZGVmYXVsdDpyZXR1cm4hMX19OwpjVj1mdW5jdGlvbihuKXtyZXR1cm4gbiYmInN0YXR1cyJpbiBuP24uc3RhdHVzOi0xfTsKZy5uJD1mdW5jdGlvbihuLFcpe3R5cGVvZiBuPT09ImZ1bmN0aW9uIiYmKG49UFYobikpO3JldHVybiB3aW5kb3cuc2V0VGltZW91dChuLFcpfTsKVzA9ZnVuY3Rpb24obixXKXt0eXBlb2Ygbj09PSJmdW5jdGlvbiImJihuPVBWKG4pKTtyZXR1cm4gd2luZG93LnNldEludGVydmFsKG4sVyl9OwpEcj1mdW5jdGlvbihuKXt3aW5kb3cuY2xlYXJJbnRlcnZhbChuKX07CmcubD1mdW5jdGlvbihuLFcpe249YmIobixXKTtyZXR1cm4gdHlwZW9mIG49PT0ic3RyaW5nIiYmbj09PSJmYWxzZSI/ITE6ISFufTsKdjA9ZnVuY3Rpb24obixXKXtyZXR1cm4gTnVtYmVyKGJiKG4sVyl8fDApfTsKa1Q9ZnVuY3Rpb24oKXtyZXR1cm4gZy5BcigiRVhQRVJJTUVOVFNfVE9LRU4iLCIiKX07CmJiPWZ1bmN0aW9uKG4sVyl7bj1nLkFyKCJFWFBFUklNRU5UX0ZMQUdTIix7fSlbbl07cmV0dXJuIG4hPT12b2lkIDA/bjpXfTsKaHk9ZnVuY3Rpb24oKXt2YXIgbj1bXSxXPWcuQXIoIkVYUEVSSU1FTlRTX0ZPUkNFRF9GTEFHUyIse30pO2Zvcih2YXIgRCBvZiBPYmplY3Qua2V5cyhXKSluLnB1c2goe2tleTpELHZhbHVlOlN0cmluZyhXW0RdKX0pO0Q9Zy5BcigiRVhQRVJJTUVOVF9GTEFHUyIse30pO2ZvcihsZXQgYiBvZiBPYmplY3Qua2V5cyhEKSliLnN0YXJ0c1dpdGgoImZvcmNlXyIpJiZXW2JdPT09dm9pZCAwJiZuLnB1c2goe2tleTpiLHZhbHVlOlN0cmluZyhEW2JdKX0pO3JldHVybiBufTsKeFQ9ZnVuY3Rpb24obixXLEQ9IkdFVCIsYj0iIix2LGssaCx4PSExLEwpe3ZhciBlPVRXMigpO2lmKCFlKXJldHVybiBudWxsO3ZhciBHPSgpPT57KGUmJiJyZWFkeVN0YXRlImluIGU/ZS5yZWFkeVN0YXRlOjApPT09NCYmVyYmUFYoVykoZSl9Owoib25sb2FkZW5kImluIGU/ZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkZW5kIixHLCExKTplLm9ucmVhZHlzdGF0ZWNoYW5nZT1HO2cubCgiZGVidWdfZm9yd2FyZF93ZWJfcXVlcnlfcGFyYW1ldGVycyIpJiYobj1qMloobikpO2Uub3BlbihELG4sITApO2smJihlLnJlc3BvbnNlVHlwZT1rKTtoJiYoZS53aXRoQ3JlZGVudGlhbHM9ITApO0Q9RD09PSJQT1NUIiYmKHdpbmRvdy5Gb3JtRGF0YT09PXZvaWQgMHx8IShiIGluc3RhbmNlb2YgRm9ybURhdGEpKTtpZih2PUNwTShuLHYpKWZvcihsZXQgciBpbiB2KWUuc2V0UmVxdWVzdEhlYWRlcihyLHZbcl0pLCJjb250ZW50LXR5cGUiPT09ci50b0xvd2VyQ2FzZSgpJiYoRD0hMSk7RCYmZS5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LVR5cGUiLCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiKTtMJiYib25wcm9ncmVzcyJpbiBlJiYoZS5vbnByb2dyZXNzPSgpPT57TChlLnJlc3BvbnNlVGV4dCl9KTsKaWYoeCYmInNldEF0dHJpYnV0aW9uUmVwb3J0aW5nImluIFhNTEh0dHBSZXF1ZXN0LnByb3RvdHlwZSl7bj17ZXZlbnRTb3VyY2VFbGlnaWJsZTohMCx0cmlnZ2VyRWxpZ2libGU6ITF9O3RyeXtlLnNldEF0dHJpYnV0aW9uUmVwb3J0aW5nKG4pfWNhdGNoKHIpe1pFKHIpfX1lLnNlbmQoYik7cmV0dXJuIGV9OwpDcE09ZnVuY3Rpb24obixXPXt9KXt2YXIgRD1nLlRkKG4pLGI9Zy5BcigiSU5ORVJUVUJFX0NMSUVOVF9OQU1FIiksdj1nLmwoIndlYl9hamF4X2lnbm9yZV9nbG9iYWxfaGVhZGVyc19pZl9zZXQiKTtmb3IobGV0IHggaW4gTCQpe2xldCBMPWcuQXIoTCRbeF0pLGU9eD09PSJYLUdvb2ctQXV0aFVzZXIifHx4PT09IlgtR29vZy1QYWdlSWQiO3ghPT0iWC1Hb29nLVZpc2l0b3ItSWQifHxMfHwoTD1nLkFyKCJWSVNJVE9SX0RBVEEiKSk7dmFyIGs7aWYoIShrPSFMKSl7aWYoIShrPUR8fChnLklQKG4pPyExOiEwKSkpe2s9bjt2YXIgaDtpZihoPWcubCgiYWRkX2F1dGhfaGVhZGVyc190b19yZW1hcmtldGluZ19nb29nbGVfZG90X2NvbV9waW5nIikmJng9PT0iQXV0aG9yaXphdGlvbiImJihiPT09IlRWSFRNTDUifHxiPT09IlRWSFRNTDVfVU5QTFVHR0VEInx8Yj09PSJUVkhUTUw1X1NJTVBMWSIpJiZnLkYkKGspKWs9UzEoayl8fCIiLGs9ay5zcGxpdCgiLyIpLGs9Ii8iKyhrLmxlbmd0aD4KMT9rWzFdOiIiKSxoPWs9PT0iL3BhZ2VhZCI7az1oPyEwOiExfWs9IWt9a3x8diYmV1t4XSE9PXZvaWQgMHx8Yj09PSJUVkhUTUw1X1VOUExVR0dFRCImJmV8fChXW3hdPUwpfSJYLUdvb2ctRU9NLVZpc2l0b3ItSWQiaW4gVyYmIlgtR29vZy1WaXNpdG9yLUlkImluIFcmJmRlbGV0ZSBXWyJYLUdvb2ctVmlzaXRvci1JZCJdO2lmKER8fCFnLklQKG4pKVdbIlgtWW91VHViZS1VdGMtT2Zmc2V0Il09U3RyaW5nKC0obmV3IERhdGUpLmdldFRpbWV6b25lT2Zmc2V0KCkpO2lmKER8fCFnLklQKG4pKXtsZXQgeDt0cnl7eD0obmV3IEludGwuRGF0ZVRpbWVGb3JtYXQpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lfWNhdGNoe314JiYoV1siWC1Zb3VUdWJlLVRpbWUtWm9uZSJdPXgpfWRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lLmVuZHNXaXRoKCJ5b3V0dWJlZWR1Y2F0aW9uLmNvbSIpfHwhRCYmZy5JUChuKXx8KFdbIlgtWW91VHViZS1BZC1TaWduYWxzIl09Zy5FdChnLlFGKCkpKTtyZXR1cm4gV307Cmc4PWZ1bmN0aW9uKG4sVyl7Vy5tZXRob2Q9IlBPU1QiO1cucG9zdFBhcmFtc3x8KFcucG9zdFBhcmFtcz17fSk7cmV0dXJuIGcuZWQobixXKX07CkJXaj1mdW5jdGlvbihuLFcpe2lmKHdpbmRvdy5mZXRjaCYmVy5mb3JtYXQhPT0iWE1MIil7dmFyIEQ9e21ldGhvZDpXLm1ldGhvZHx8IkdFVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn07Vy5oZWFkZXJzJiYoRC5oZWFkZXJzPVcuaGVhZGVycyk7Vy5wcmlvcml0eSYmKEQucHJpb3JpdHk9Vy5wcmlvcml0eSk7bj1YbihuLFcpO3ZhciBiPXFYKG4sVyk7YiYmKEQuYm9keT1iKTtXLndpdGhDcmVkZW50aWFscyYmKEQuY3JlZGVudGlhbHM9ImluY2x1ZGUiKTt2YXIgdj1XLmNvbnRleHR8fGcucWksaz0hMSxoO2ZldGNoKG4sRCkudGhlbih4PT57aWYoIWspe2s9ITA7aCYmd2luZG93LmNsZWFyVGltZW91dChoKTt2YXIgTD14Lm9rLGU9Rz0+e0c9R3x8e307TD9XLm9uU3VjY2VzcyYmVy5vblN1Y2Nlc3MuY2FsbCh2LEcseCk6Vy5vbkVycm9yJiZXLm9uRXJyb3IuY2FsbCh2LEcseCk7Vy5vbkZpbmlzaCYmVy5vbkZpbmlzaC5jYWxsKHYsRyx4KX07CihXLmZvcm1hdHx8IkpTT04iKT09PSJKU09OIiYmKEx8fHguc3RhdHVzPj00MDAmJnguc3RhdHVzPDUwMCk/eC5qc29uKCkudGhlbihlLCgpPT57ZShudWxsKX0pOmUobnVsbCl9fSkuY2F0Y2goKCk9PntXLm9uRXJyb3ImJlcub25FcnJvci5jYWxsKHYse30se30pfSk7Cm49Vy50aW1lb3V0fHwwO1cub25GZXRjaFRpbWVvdXQmJm4+MCYmKGg9Zy5uJCgoKT0+e2t8fChrPSEwLHdpbmRvdy5jbGVhclRpbWVvdXQoaCksVy5vbkZldGNoVGltZW91dC5jYWxsKFcuY29udGV4dHx8Zy5xaSkpfSxuKSl9ZWxzZSBnLmVkKG4sVyl9OwpnLmVkPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Vy5mb3JtYXR8fCJKU09OIjtuPVhuKG4sVyk7dmFyIGI9cVgobixXKSx2PSExLGs9RngxKG4seD0+e2lmKCF2KXt2PSEwO2gmJndpbmRvdy5jbGVhclRpbWVvdXQoaCk7dmFyIEw9YUUoeCksZT1udWxsLEc9NDAwPD14LnN0YXR1cyYmeC5zdGF0dXM8NTAwLHI9NTAwPD14LnN0YXR1cyYmeC5zdGF0dXM8NjAwO2lmKEx8fEd8fHIpZT13MjIobixELHgsVy5jb252ZXJ0VG9TYWZlSHRtbCk7TCYmKEw9TXVDKEQseCxlKSk7ZT1lfHx7fTtHPVcuY29udGV4dHx8Zy5xaTtMP1cub25TdWNjZXNzJiZXLm9uU3VjY2Vzcy5jYWxsKEcseCxlKTpXLm9uRXJyb3ImJlcub25FcnJvci5jYWxsKEcseCxlKTtXLm9uRmluaXNoJiZXLm9uRmluaXNoLmNhbGwoRyx4LGUpfX0sVy5tZXRob2QsYixXLmhlYWRlcnMsVy5yZXNwb25zZVR5cGUsVy53aXRoQ3JlZGVudGlhbHMsITEsVy5vblByb2dyZXNzKTsKYj1XLnRpbWVvdXR8fDA7aWYoVy5vblRpbWVvdXQmJmI+MCl7bGV0IHg9Vy5vblRpbWVvdXQ7dmFyIGg9Zy5uJCgoKT0+e3Z8fCh2PSEwLGsuYWJvcnQoKSx3aW5kb3cuY2xlYXJUaW1lb3V0KGgpLHguY2FsbChXLmNvbnRleHR8fGcucWksaykpfSxiKX1yZXR1cm4ga307ClhuPWZ1bmN0aW9uKG4sVyl7Vy5pbmNsdWRlRG9tYWluJiYobj1kb2N1bWVudC5sb2NhdGlvbi5wcm90b2NvbCsiLy8iK2RvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lKyhkb2N1bWVudC5sb2NhdGlvbi5wb3J0PyI6Iitkb2N1bWVudC5sb2NhdGlvbi5wb3J0OiIiKStuKTt2YXIgRD1nLkFyKCJYU1JGX0ZJRUxEX05BTUUiKTtpZihXPVcudXJsUGFyYW1zKVdbRF0mJmRlbGV0ZSBXW0RdLG49Zy56ZChuLFcpO3JldHVybiBufTsKcVg9ZnVuY3Rpb24obixXKXt2YXIgRD1nLkFyKCJYU1JGX0ZJRUxEX05BTUUiKSxiPWcuQXIoIlhTUkZfVE9LRU4iKSx2PVcucG9zdEJvZHl8fCIiLGs9Vy5wb3N0UGFyYW1zLGg9Zy5BcigiWFNSRl9GSUVMRF9OQU1FIikseDtXLmhlYWRlcnMmJih4PVcuaGVhZGVyc1siQ29udGVudC1UeXBlIl0pO1cuZXhjbHVkZVhzcmZ8fGcuSVAobikmJiFXLndpdGhDcmVkZW50aWFscyYmZy5JUChuKSE9PWRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lfHxXLm1ldGhvZCE9PSJQT1NUInx8eCYmeCE9PSJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQifHxXLnBvc3RQYXJhbXMmJlcucG9zdFBhcmFtc1toXXx8KGt8fChrPXt9KSxrW0RdPWIpO2smJnR5cGVvZiB2PT09InN0cmluZyImJih2PWcuaXcodiksZy5ZeSh2LGspLHY9Vy5wb3N0Qm9keUZvcm1hdCYmVy5wb3N0Qm9keUZvcm1hdD09PSJKU09OIj9KU09OLnN0cmluZ2lmeSh2KTp5Ryh2KSk7az12fHxrJiYhZy5HRihrKTshR1EmJgprJiZXLm1ldGhvZCE9PSJQT1NUIiYmKEdRPSEwLE90KEVycm9yKCJBSkFYIHJlcXVlc3Qgd2l0aCBwb3N0RGF0YSBzaG91bGQgdXNlIFBPU1QiKSkpO3JldHVybiB2fTsKdzIyPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PW51bGw7c3dpdGNoKFcpe2Nhc2UgIkpTT04iOmxldCBrO3RyeXtrPUQucmVzcG9uc2VUZXh0fWNhdGNoKGgpe3Rocm93IGI9RXJyb3IoIkVycm9yIHJlYWRpbmcgcmVzcG9uc2VUZXh0IiksYi5wYXJhbXM9bixaRShiKSxoO31uPUQuZ2V0UmVzcG9uc2VIZWFkZXIoIkNvbnRlbnQtVHlwZSIpfHwiIjtpZihrJiZuLmluZGV4T2YoImpzb24iKT49MCl7ay5zdWJzdHJpbmcoMCw1KT09PSIpXX0nXG4iJiYoaz1rLnN1YnN0cmluZyg1KSk7dHJ5e3Y9SlNPTi5wYXJzZShrKX1jYXRjaChoKXt9fWJyZWFrO2Nhc2UgIlhNTCI6aWYobj0obj1ELnJlc3BvbnNlWE1MKT9SQ1Uobik6bnVsbCl2PXt9LGcueTIobi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpLGg9Pnt2W2gudGFnTmFtZV09UTJpKGgpfSl9YiYmdHkodik7CnJldHVybiB2fTsKdHk9ZnVuY3Rpb24obil7aWYoZy5mdChuKSlmb3IobGV0IFcgaW4gbilXPT09Imh0bWxfY29udGVudCJ8fGcuQlooVywiX2h0bWwiKT9uW1ddPWcuSE0obltXXSk6dHkobltXXSl9OwpNdUM9ZnVuY3Rpb24obixXLEQpe2lmKFcmJlcuc3RhdHVzPT09MjA0KXJldHVybiEwO3N3aXRjaChuKXtjYXNlICJKU09OIjpyZXR1cm4hIUQ7Y2FzZSAiWE1MIjpyZXR1cm4gTnVtYmVyKEQmJkQucmV0dXJuX2NvZGUpPT09MDtjYXNlICJSQVciOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuISFEfX07ClJDVT1mdW5jdGlvbihuKXtyZXR1cm4gbj8obj0oInJlc3BvbnNlWE1MImluIG4/bi5yZXNwb25zZVhNTDpuKS5nZXRFbGVtZW50c0J5VGFnTmFtZSgicm9vdCIpKSYmbi5sZW5ndGg+MD9uWzBdOm51bGw6bnVsbH07ClEyaT1mdW5jdGlvbihuKXt2YXIgVz0iIjtnLnkyKG4uY2hpbGROb2RlcyxEPT57Vys9RC5ub2RlVmFsdWV9KTsKcmV0dXJuIFd9OwpqMlo9ZnVuY3Rpb24obil7dmFyIFc9d2luZG93LmxvY2F0aW9uLnNlYXJjaCxEPWcuSVAobik7Zy5sKCJkZWJ1Z19oYW5kbGVfcmVsYXRpdmVfdXJsX2Zvcl9xdWVyeV9mb3J3YXJkX2tpbGxzd2l0Y2giKXx8IUQmJmcuVGQobikmJihEPWRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lKTt2YXIgYj1TMShuKTtiPShEPUQmJihELmVuZHNXaXRoKCJ5b3V0dWJlLmNvbSIpfHxELmVuZHNXaXRoKCJ5b3V0dWJlLW5vY29va2llLmNvbSIpKSkmJmImJmIuc3RhcnRzV2l0aCgiL2FwaS8iKTtpZighRHx8YilyZXR1cm4gbjt2YXIgdj1nLml3KFcpLGs9e307Zy55MihWdWIsaD0+e3ZbaF0mJihrW2hdPXZbaF0pfSk7CnJldHVybiBnLmx3KG4sayl9OwpnLnI4PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5zMChXKSxiO3JldHVybihuZXcgZy5YMSgodixrKT0+e0Qub25TdWNjZXNzPWg9PnthRShoKT92KG5ldyBjNFUoaCkpOmsobmV3IGcuJFQoYFJlcXVlc3QgZmFpbGVkLCBzdGF0dXM9JHtjVihoKX1gLCJuZXQuYmFkc3RhdHVzIixoKSl9OwpELm9uRXJyb3I9aD0+e2sobmV3IGcuJFQoIlVua25vd24gcmVxdWVzdCBlcnJvciIsIm5ldC51bmtub3duIixoKSl9OwpELm9uVGltZW91dD1oPT57ayhuZXcgZy4kVCgiUmVxdWVzdCB0aW1lZCBvdXQiLCJuZXQudGltZW91dCIsaCkpfTsKYj1nLmVkKG4sRCl9KSkuc1Aodj0+e3YgaW5zdGFuY2VvZiBnLkk1JiZiPy5hYm9ydCgpOwpyZXR1cm4gZy5ycCh2KX0pfTsKZy5zej1mdW5jdGlvbihuLFcsRCxiLHY9LTEsayl7dmFyIGg9TD0+bmV3IGcuWDEoZT0+e3NldFRpbWVvdXQoZSxMKX0pLHg9KEwsZSxHKT0+TC5zUChyPT57aWYoZTw9MHx8Y1Yoci54aHIpPT09NDAzKXJldHVybiBnLnJwKG5ldyBnLiRUKCJSZXF1ZXN0IHJldHJpZWQgdG9vIG1hbnkgdGltZXMiLCJuZXQucmV0cnlleGhhdXN0ZWQiLHIueGhyKSk7CnZhciBOPU1hdGgucG93KDIsRC1lKzEpKkcsSD12PjA/TWF0aC5taW4odixOKTpOO3JldHVybiBoKEcpLnRoZW4oKCk9PntrJiZrKHIsZS0xKTtyZXR1cm4geChnLnI4KG4sVyksZS0xLEgpfSl9KTsKcmV0dXJuIHgoZy5yOChuLFcpLEQtMSxiKX07CmFYQz1mdW5jdGlvbihuLFc9bnVsbCl7bi5XPTI7bi5KPVd9OwpuVXc9ZnVuY3Rpb24obixXPW51bGwpe24uVz0xO24uSj1XfTsKZy5wJD1mdW5jdGlvbihuPW51bGwpe3ZhciBXPW5ldyBOWDthWEMoVyxuKTtyZXR1cm4gV307CmcuSDA9ZnVuY3Rpb24obj1udWxsKXt2YXIgVz1uZXcgTlg7blV3KFcsbik7cmV0dXJuIFd9OwpJSz1mdW5jdGlvbihuLFcsRCxiPSJ5b3V0dWJlLmNvbSIsdj0hMSl7ZiR8fEp5LnNldCgiIituLFcse256OkQscGF0aDoiLyIsZG9tYWluOmIsc2VjdXJlOnZ9KX07CmcuU2Q9ZnVuY3Rpb24obil7aWYoIWYkKXJldHVybiBKeS5nZXQoIiIrbix2b2lkIDApfTsKQXk9ZnVuY3Rpb24obixXPSIvIixEPSJ5b3V0dWJlLmNvbSIpe2YkfHxKeS5yZW1vdmUoIiIrbixXLEQpfTsKZy5taj1mdW5jdGlvbigpe2lmKCFKeS5pc0VuYWJsZWQoKSlyZXR1cm4hMTtpZighSnkuaXNFbXB0eSgpKXJldHVybiEwO0p5LnNldCgiVEVTVENPT0tJRVNFTkFCTEVEIiwiMSIse256OjYwfSk7aWYoSnkuZ2V0KCJURVNUQ09PS0lFU0VOQUJMRUQiKSE9PSIxIilyZXR1cm4hMTtKeS5yZW1vdmUoIlRFU1RDT09LSUVTRU5BQkxFRCIpO3JldHVybiEwfTsKZy53PWZ1bmN0aW9uKG4sVyl7aWYobilyZXR1cm4gbltXLm5hbWVdfTsKSyQ9ZnVuY3Rpb24obil7dmFyIFc9Zy5BcigiSU5ORVJUVUJFX0hPU1RfT1ZFUlJJREUiKTtXJiYobj1TdHJpbmcoVykrU3RyaW5nKG1XKG4pKSk7cmV0dXJuIG59OwpnWj1mdW5jdGlvbihuLFcsRCxiKXt2YXIgdj1XXm47dmFyIGs7KG4tNSYxMyk9PTEmJihrPURbSVsxN11dP0RbSVsxN11dW0lbMzVdXShJWzYzXSk6RFtJWzI2XV09PT1JWzYzXSk7aWYoKG4+PjEmNyk9PTEpe3ZhciBoPVAwKHZeNjQ0MCx2XjEzODcsRCk7YltJW3ZeNjQyNF1dKElbdl42NDM3XSxoKTtrPVtdfShuJjEzKT09biYmYltJWzVdXSE9MCYmKGg9b1MoNCw3NjI0LEQsYiksRD1oWzBdKTtyZXR1cm4ga307ClpyPWZ1bmN0aW9uKG4pe3ZhciBXPXt9O2cubCgianNvbl9jb25kZW5zZWRfcmVzcG9uc2UiKSYmKFcucHJldHR5UHJpbnQ9ImZhbHNlIik7cmV0dXJuIG49Zy5sdyhuLFcpfTsKVXo9ZnVuY3Rpb24obixXPSJQT1NUIil7bj17bWV0aG9kOlcsbW9kZTpnLlRkKG4pPyJzYW1lLW9yaWdpbiI6ImNvcnMiLGNyZWRlbnRpYWxzOmcuVGQobik/InNhbWUtb3JpZ2luIjoiaW5jbHVkZSJ9O1c9e307dmFyIEQ9e307Zm9yKGxldCBiIG9mIE9iamVjdC5rZXlzKFcpKVdbYl0mJihEW2JdPVdbYl0pO09iamVjdC5rZXlzKEQpLmxlbmd0aD4wJiYobi5oZWFkZXJzPUQpO3JldHVybiBufTsKeUg9ZnVuY3Rpb24obixXPXt9KXtyZXR1cm5gc2VydmljZToke259LyR7T2JqZWN0LmtleXMoVykuc29ydCgpLm1hcChEPT5EKyI6IitXW0RdKS5qb2luKCIvIil9YH07CkV6PWZ1bmN0aW9uKCl7dmFyIG49L0Nocm9tZVwvKFxkKykvLmV4ZWMoZy5YUSgpKTtyZXR1cm4gbj9wYXJzZUZsb2F0KG5bMV0pOk5hTn07CmliPWZ1bmN0aW9uKCl7dmFyIG49L1xzQ29iYWx0XC8oXFMrKVxzLy5leGVjKGcuWFEoKSk7aWYoIW4pcmV0dXJuIE5hTjt2YXIgVz1bXTtmb3IobGV0IEQgb2YgblsxXS5zcGxpdCgiLiIpKW49cGFyc2VJbnQoRCwxMCksbj49MCYmVy5wdXNoKG4pO3JldHVybiBwYXJzZUZsb2F0KFcuam9pbigiLiIpKX07Cm9LPWZ1bmN0aW9uKCl7cmV0dXJuIGcudWIoImFuZHJvaWQiKSYmZy51YigiY2hyb21lIikmJiEoZy51YigidHJpZGVudC8iKXx8Zy51YigiZWRnZS8iKSkmJiFnLnViKCJjb2JhbHQiKX07CmcuZDg9ZnVuY3Rpb24oKXtyZXR1cm4gZy51YigiY29iYWx0Iil9Owp6UT1mdW5jdGlvbigpe3JldHVybiBnLnViKCJjb2JhbHQiKSYmZy51YigiYXBwbGV0diIpfTsKbGI9ZnVuY3Rpb24oKXtyZXR1cm4gZy51YigiKHBzMzsgbGVhbmJhY2sgc2hlbGwpIil8fGcudWIoInBzMyIpJiZnLmQ4KCl9OwpUUT1mdW5jdGlvbigpe3JldHVybiBnLnViKCIocHM0OyBsZWFuYmFjayBzaGVsbCkiKXx8Zy51YigicHM0IikmJmcuZDgoKX07CmcuamQ9ZnVuY3Rpb24oKXtyZXR1cm4gZy5kOCgpJiYoZy51YigicHM0IHZyIil8fGcudWIoInBzNCBwcm8gdnIiKSl9OwpDJD1mdW5jdGlvbigpe3ZhciBuPS9XZWJLaXRcLyhbMC05XSspLy5leGVjKGcuWFEoKSk7cmV0dXJuISEobiYmcGFyc2VJbnQoblsxXSwxMCk+PTYwMCl9OwpCMD1mdW5jdGlvbigpe3ZhciBuPS9XZWJLaXRcLyhbMC05XSspLy5leGVjKGcuWFEoKSk7cmV0dXJuISEobiYmcGFyc2VJbnQoblsxXSwxMCk+PTYwMil9OwpGbj1mdW5jdGlvbigpe3JldHVybiBnLnViKCJpZW1vYmlsZSIpfHxnLnViKCJ3aW5kb3dzIHBob25lIikmJmcudWIoImVkZ2UiKX07ClJLPWZ1bmN0aW9uKCl7cmV0dXJuKHc4fHxNWCkmJmcudWIoImFwcGxld2Via2l0IikmJiFnLnViKCJ2ZXJzaW9uIikmJighZy51Yigic2FmYXJpIil8fGcudWIoImdzYS8iKSl9OwpWSD1mdW5jdGlvbigpe3JldHVybiBnLlFIJiZnLnViKCJ2ZXJzaW9uLyIpfTsKYzA9ZnVuY3Rpb24oKXtyZXR1cm4gZy51Yigic21hcnQtdHYiKSYmZy51Yigic2Ftc3VuZyIpfTsKZy51Yj1mdW5jdGlvbihuKXt2YXIgVz1nLlhRKCk7cmV0dXJuIFc/Vy50b0xvd2VyQ2FzZSgpLmluZGV4T2Yobik+PTA6ITF9OwpnLmFLPWZ1bmN0aW9uKCl7cmV0dXJuIGo2KCl8fFJLKCl8fFZIKCk/ITA6Zy5BcigiRU9NX1ZJU0lUT1JfREFUQSIpPyExOiEwfTsKbnk9ZnVuY3Rpb24obixXKXtyZXR1cm4gVz09PXZvaWQgMHx8Vz09PW51bGw/bjpXPT09IjEifHxXPT09ITB8fFc9PT0xfHxXPT09IlRydWUiPyEwOiExfTsKV0I9ZnVuY3Rpb24obixXLEQpe2ZvcihsZXQgYiBpbiBEKWlmKERbYl09PVcpcmV0dXJuIERbYl07cmV0dXJuIG59OwpEST1mdW5jdGlvbihuLFcpe3JldHVybiBXPT09dm9pZCAwfHxXPT09bnVsbD9uOk51bWJlcihXKX07CmJPPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFc9PT12b2lkIDB8fFc9PT1udWxsP246Vy50b1N0cmluZygpfTsKdkI9ZnVuY3Rpb24obixXKXtpZihXKXtpZihuPT09ImZ1bGx3aWR0aCIpcmV0dXJuIEluZmluaXR5O2lmKG49PT0iZnVsbGhlaWdodCIpcmV0dXJuIDB9cmV0dXJuIG4mJihXPW4ubWF0Y2goVzAxKSkmJihuPU51bWJlcihXWzJdKSxXPU51bWJlcihXWzFdKSwhaXNOYU4obikmJiFpc05hTihXKSYmbj4wKT9XL246TmFOfTsKa1I9ZnVuY3Rpb24obil7dmFyIFc9bi5kb2NpZHx8bi52aWRlb19pZHx8bi52aWRlb0lkfHxuLmlkO2lmKFcpcmV0dXJuIFc7Vz1uLnJhd19wbGF5ZXJfcmVzcG9uc2U7V3x8KG49bi5wbGF5ZXJfcmVzcG9uc2UpJiYoVz1KU09OLnBhcnNlKG4pKTtyZXR1cm4gVyYmVy52aWRlb0RldGFpbHMmJlcudmlkZW9EZXRhaWxzLnZpZGVvSWR8fG51bGx9OwpnLnhSPWZ1bmN0aW9uKG4pe3JldHVybiBoTyhuLCExKT09PSJFTUJFRERFRF9QTEFZRVJfTU9ERV9QRkwifTsKTHk9ZnVuY3Rpb24obil7cmV0dXJuIG49PT0iRU1CRURERURfUExBWUVSX0xJVEVfTU9ERV9GSVhFRF9QTEFZQkFDS19MSU1JVCJ8fG49PT0iRU1CRURERURfUExBWUVSX0xJVEVfTU9ERV9EWU5BTUlDX1BMQVlCQUNLX0xJTUlUIj8hMDohMX07CmhPPWZ1bmN0aW9uKG4sVz0hMSl7Vz1XPyJFTUJFRERFRF9QTEFZRVJfTU9ERV9ERUZBVUxUIjoiRU1CRURERURfUExBWUVSX01PREVfVU5LTk9XTiI7d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLmluY2x1ZGVzKCJ5b3V0dWJlZWR1Y2F0aW9uLmNvbSIpJiYoVz0iRU1CRURERURfUExBWUVSX01PREVfUEZMIik7dmFyIEQ9bi5yYXdfZW1iZWRkZWRfcGxheWVyX3Jlc3BvbnNlO2lmKCFEJiYobj1uLmVtYmVkZGVkX3BsYXllcl9yZXNwb25zZSkpdHJ5e0Q9SlNPTi5wYXJzZShuKX1jYXRjaChiKXtyZXR1cm4gV31yZXR1cm4gRD9XQihXLEQuZW1iZWRkZWRQbGF5ZXJNb2RlLEQzMSk6V307CmI1dD1mdW5jdGlvbihuKXtuJiYobi5kYXRhc2V0P24uZGF0YXNldFtlXygpXT0idHJ1ZSI6cXd0KG4pKX07CmdKPWZ1bmN0aW9uKG4pe3JldHVybiBuP24uZGF0YXNldD9uLmRhdGFzZXRbZV8oKV06bi5nZXRBdHRyaWJ1dGUoImRhdGEtbG9hZGVkIik6bnVsbH07CmVfPWZ1bmN0aW9uKCl7cmV0dXJuIFhrLmxvYWRlZHx8KFhrLmxvYWRlZD0ibG9hZGVkIi5yZXBsYWNlKC9cLShbYS16XSkvZywobixXKT0+Vy50b1VwcGVyQ2FzZSgpKSl9OwpHMT1mdW5jdGlvbigpe3ZhciBuPWRvY3VtZW50O2lmKCJ2aXNpYmlsaXR5U3RhdGUiaW4gbilyZXR1cm4gbi52aXNpYmlsaXR5U3RhdGU7dmFyIFc9cTArIlZpc2liaWxpdHlTdGF0ZSI7aWYoVyBpbiBuKXJldHVybiBuW1ddfTsKdE89ZnVuY3Rpb24obixXKXt2YXIgRDtnLm9NKG4sYj0+e0Q9V1tiXTtyZXR1cm4hIUR9KTsKcmV0dXJuIER9OwokUj1mdW5jdGlvbihuKXtpZihuLnJlcXVlc3RGdWxsc2NyZWVuKW49bi5yZXF1ZXN0RnVsbHNjcmVlbih2b2lkIDApO2Vsc2UgaWYobi53ZWJraXRSZXF1ZXN0RnVsbHNjcmVlbiluPW4ud2Via2l0UmVxdWVzdEZ1bGxzY3JlZW4oKTtlbHNlIGlmKG4ubW96UmVxdWVzdEZ1bGxTY3JlZW4pbj1uLm1velJlcXVlc3RGdWxsU2NyZWVuKCk7ZWxzZSBpZihuLm1zUmVxdWVzdEZ1bGxzY3JlZW4pbj1uLm1zUmVxdWVzdEZ1bGxzY3JlZW4oKTtlbHNlIGlmKG4ud2Via2l0RW50ZXJGdWxsc2NyZWVuKW49bi53ZWJraXRFbnRlckZ1bGxzY3JlZW4oKTtlbHNlIHJldHVybiBQcm9taXNlLnJlamVjdChFcnJvcigiRnVsbHNjcmVlbiBBUEkgdW5hdmFpbGFibGUiKSk7cmV0dXJuIG4gaW5zdGFuY2VvZiBQcm9taXNlP246UHJvbWlzZS5yZXNvbHZlKCl9OwpOMD1mdW5jdGlvbihuKXt2YXIgVztnLnJKKCk/c1AoKT09biYmKFc9ZG9jdW1lbnQpOlc9bjtyZXR1cm4gVyYmKG49dE8oWyJleGl0RnVsbHNjcmVlbiIsIndlYmtpdEV4aXRGdWxsc2NyZWVuIiwibW96Q2FuY2VsRnVsbFNjcmVlbiIsIm1zRXhpdEZ1bGxzY3JlZW4iXSxXKSk/KFc9bi5jYWxsKFcpLFcgaW5zdGFuY2VvZiBQcm9taXNlP1c6UHJvbWlzZS5yZXNvbHZlKCkpOlByb21pc2UucmVzb2x2ZSgpfTsKdlUxPWZ1bmN0aW9uKG4pe3JldHVybiBnLmxfKFsiZnVsbHNjcmVlbmNoYW5nZSIsIndlYmtpdGZ1bGxzY3JlZW5jaGFuZ2UiLCJtb3pmdWxsc2NyZWVuY2hhbmdlIiwiTVNGdWxsc2NyZWVuQ2hhbmdlIl0sVz0+YG9uJHtXLnRvTG93ZXJDYXNlKCl9YGluIG4pfTsKZy5ySj1mdW5jdGlvbigpe3JldHVybiEhdE8oWyJmdWxsc2NyZWVuRW5hYmxlZCIsIndlYmtpdEZ1bGxzY3JlZW5FbmFibGVkIiwibW96RnVsbFNjcmVlbkVuYWJsZWQiLCJtc0Z1bGxzY3JlZW5FbmFibGVkIl0sZG9jdW1lbnQpfTsKc1A9ZnVuY3Rpb24obj0hMSl7dmFyIFc9dE8oWyJmdWxsc2NyZWVuRWxlbWVudCIsIndlYmtpdEZ1bGxzY3JlZW5FbGVtZW50IiwibW96RnVsbFNjcmVlbkVsZW1lbnQiLCJtc0Z1bGxzY3JlZW5FbGVtZW50Il0sZG9jdW1lbnQpO2lmKG4pZm9yKDtXJiZXLnNoYWRvd1Jvb3Q7KVc9Vy5zaGFkb3dSb290LmZ1bGxzY3JlZW5FbGVtZW50O3JldHVybiBXP1c6bnVsbH07CnB5PWZ1bmN0aW9uKG4pe2lmKGRvY3VtZW50LmJvZHkmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCl7bGV0IFc9ZG9jdW1lbnQuYm9keS5zY3JvbGxUb3ArZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcDtuLk49bi5jbGllbnRYKyhkb2N1bWVudC5ib2R5LnNjcm9sbExlZnQrZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnQpO24uSj1uLmNsaWVudFkrV319OwprOWk9ZnVuY3Rpb24obixXLEQsYj17fSl7bi5hZGRFdmVudExpc3RlbmVyJiYoVyE9Im1vdXNlZW50ZXIifHwib25tb3VzZWVudGVyImluIGRvY3VtZW50P1chPSJtb3VzZWxlYXZlInx8Im9ubW91c2VlbnRlciJpbiBkb2N1bWVudD9XPT0ibW91c2V3aGVlbCImJiJNb3pCb3hTaXppbmciaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlJiYoVz0iTW96TW91c2VQaXhlbFNjcm9sbCIpOlc9Im1vdXNlb3V0IjpXPSJtb3VzZW92ZXIiKTtyZXR1cm4gZy5YTChnLllSLHY9Pnt2YXIgaz10eXBlb2Ygdls0XT09PSJib29sZWFuIiYmdls0XT09ISFiLGg9Zy5mdCh2WzRdKSYmZy5mdChiKSYmZy5ybSh2WzRdLGIpO3JldHVybiEhdi5sZW5ndGgmJnZbMF09PW4mJnZbMV09PVcmJnZbMl09PUQmJihrfHxoKX0pfTsKZy5JOT1mdW5jdGlvbihuLFcsRCxiPXt9KXtpZighbnx8IW4uYWRkRXZlbnRMaXN0ZW5lciYmIW4uYXR0YWNoRXZlbnQpcmV0dXJuIiI7dmFyIHY9azlpKG4sVyxELGIpO2lmKHYpcmV0dXJuIHY7dj0rK0hCLmNvdW50KyIiO3ZhciBrPSEoVyE9Im1vdXNlZW50ZXIiJiZXIT0ibW91c2VsZWF2ZSJ8fCFuLmFkZEV2ZW50TGlzdGVuZXJ8fCJvbm1vdXNlZW50ZXIiaW4gZG9jdW1lbnQpO3ZhciBoPWs/eD0+e3g9bmV3IGZ5KHgpO2lmKCFnLlJoKHgucmVsYXRlZFRhcmdldCxMPT5MPT1uLCEwKSlyZXR1cm4geC5jdXJyZW50VGFyZ2V0PW4seC50eXBlPVcsRC5jYWxsKG4seCl9Ong9Pnt4PW5ldyBmeSh4KTsKeC5jdXJyZW50VGFyZ2V0PW47cmV0dXJuIEQuY2FsbChuLHgpfTsKaD1QVihoKTtuLmFkZEV2ZW50TGlzdGVuZXI/KFc9PSJtb3VzZWVudGVyIiYmaz9XPSJtb3VzZW92ZXIiOlc9PSJtb3VzZWxlYXZlIiYmaz9XPSJtb3VzZW91dCI6Vz09Im1vdXNld2hlZWwiJiYiTW96Qm94U2l6aW5nImluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZSYmKFc9Ik1vek1vdXNlUGl4ZWxTY3JvbGwiKSxKTygpfHx0eXBlb2YgYj09PSJib29sZWFuIj9uLmFkZEV2ZW50TGlzdGVuZXIoVyxoLGIpOm4uYWRkRXZlbnRMaXN0ZW5lcihXLGgsISFiLmNhcHR1cmUpKTpuLmF0dGFjaEV2ZW50KGBvbiR7V31gLGgpO2cuWVJbdl09W24sVyxELGgsYl07cmV0dXJuIHZ9OwpnLlNfPWZ1bmN0aW9uKG4pe24mJih0eXBlb2Ygbj09InN0cmluZyImJihuPVtuXSksZy55MihuLFc9PntpZihXIGluIGcuWVIpe3ZhciBEPWcuWVJbV107bGV0IGI9RFswXSx2PURbMV0saz1EWzNdO0Q9RFs0XTtiLnJlbW92ZUV2ZW50TGlzdGVuZXI/Sk8oKXx8dHlwZW9mIEQ9PT0iYm9vbGVhbiI/Yi5yZW1vdmVFdmVudExpc3RlbmVyKHYsayxEKTpiLnJlbW92ZUV2ZW50TGlzdGVuZXIodixrLCEhRC5jYXB0dXJlKTpiLmRldGFjaEV2ZW50JiZiLmRldGFjaEV2ZW50KGBvbiR7dn1gLGspO2RlbGV0ZSBnLllSW1ddfX0pKX07CkFPPWZ1bmN0aW9uKG4pe249bnx8d2luZG93LmV2ZW50O3ZhciBXO24uY29tcG9zZWRQYXRoJiZ0eXBlb2Ygbi5jb21wb3NlZFBhdGg9PT0iZnVuY3Rpb24iP1c9bi5jb21wb3NlZFBhdGgoKTpXPW4ucGF0aDtXJiZXLmxlbmd0aD9uPVdbMF06KG49bnx8d2luZG93LmV2ZW50LG49bi50YXJnZXR8fG4uc3JjRWxlbWVudCxuLm5vZGVUeXBlPT0zJiYobj1uLnBhcmVudE5vZGUpKTtyZXR1cm4gbn07Cm1ZPWZ1bmN0aW9uKG4pe3RoaXMuSz1uO3RoaXMuTj1udWxsO3RoaXMuWD0wO3RoaXMuVj1udWxsO3RoaXMuaj0wO3RoaXMuSj1bXTtmb3Iobj0wO248NDtuKyspdGhpcy5KLnB1c2goMCk7dGhpcy5XPTA7dGhpcy5jSj1nLkk5KHdpbmRvdywibW91c2Vtb3ZlIiwoMCxnLkt0KSh0aGlzLkQsdGhpcykpO3RoaXMuWT1XMCgoMCxnLkt0KSh0aGlzLk8sdGhpcyksMjUpfTsKS3k9ZnVuY3Rpb24obixXLEQsYil7Zm9yKGxldCB2PTA7djxELmxlbmd0aDt2Kyspbi5OTihXLERbdl0sYil9OwpnLlBCPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1EJiZEPjA/RDowO0Q9Yj9EYXRlLm5vdygpK2IqMUUzOjA7aWYoKGI9Yj9PUC5CcCgpOk9QLnFiKCkpJiZ3aW5kb3cuSlNPTil7dHlwZW9mIFchPT0ic3RyaW5nIiYmKFc9SlNPTi5zdHJpbmdpZnkoVyx2b2lkIDApKTt0cnl7Yi5zZXQobixXLEQpfWNhdGNoKHYpe2IucmVtb3ZlKG4pfX19OwpnLlpJPWZ1bmN0aW9uKG4pe3ZhciBXPU9QLnFiKCksRD1PUC5CcCgpO2lmKCFXJiYhRHx8IXdpbmRvdy5KU09OKXJldHVybiBudWxsO3RyeXt2YXIgYj1XLmdldChuKX1jYXRjaCh2KXt9aWYodHlwZW9mIGIhPT0ic3RyaW5nIil0cnl7Yj1ELmdldChuKX1jYXRjaCh2KXt9aWYodHlwZW9mIGIhPT0ic3RyaW5nIilyZXR1cm4gbnVsbDt0cnl7Yj1KU09OLnBhcnNlKGIsdm9pZCAwKX1jYXRjaCh2KXt9cmV0dXJuIGJ9OwpVUD1mdW5jdGlvbigpe3ZhciBuPU9QLkJwKCk7aWYobiYmKG49bi5NRCgieXQtcGxheWVyLXF1YWxpdHkiKSkpcmV0dXJuIG4uY3JlYXRpb259Owp5eD1mdW5jdGlvbigpe2lmKCFnLnFpLm1hdGNoTWVkaWEpcmV0dXJuIldFQl9ESVNQTEFZX01PREVfVU5LTk9XTiI7dHJ5e3JldHVybiBnLnFpLm1hdGNoTWVkaWEoIihkaXNwbGF5LW1vZGU6IHN0YW5kYWxvbmUpIikubWF0Y2hlcz8iV0VCX0RJU1BMQVlfTU9ERV9TVEFOREFMT05FIjpnLnFpLm1hdGNoTWVkaWEoIihkaXNwbGF5LW1vZGU6IG1pbmltYWwtdWkpIikubWF0Y2hlcz8iV0VCX0RJU1BMQVlfTU9ERV9NSU5JTUFMX1VJIjpnLnFpLm1hdGNoTWVkaWEoIihkaXNwbGF5LW1vZGU6IGZ1bGxzY3JlZW4pIikubWF0Y2hlcz8iV0VCX0RJU1BMQVlfTU9ERV9GVUxMU0NSRUVOIjpnLnFpLm1hdGNoTWVkaWEoIihkaXNwbGF5LW1vZGU6IGJyb3dzZXIpIikubWF0Y2hlcz8iV0VCX0RJU1BMQVlfTU9ERV9CUk9XU0VSIjoiV0VCX0RJU1BMQVlfTU9ERV9VTktOT1dOIn1jYXRjaChuKXtyZXR1cm4iV0VCX0RJU1BMQVlfTU9ERV9VTktOT1dOIn19OwppTz1mdW5jdGlvbigpe0VQLmluc3RhbmNlfHwoRVAuaW5zdGFuY2U9bmV3IEVQKTtyZXR1cm4gRVAuaW5zdGFuY2V9OwpocWg9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgIkRFU0tUT1AiOnJldHVybiAxO2Nhc2UgIlVOS05PV05fUExBVEZPUk0iOnJldHVybiAwO2Nhc2UgIlRWIjpyZXR1cm4gMjtjYXNlICJHQU1FX0NPTlNPTEUiOnJldHVybiAzO2Nhc2UgIk1PQklMRSI6cmV0dXJuIDQ7Y2FzZSAiVEFCTEVUIjpyZXR1cm4gNX19OwpnLm85PWZ1bmN0aW9uKCl7dU98fCh1Tz1uZXcgeDNiKTtyZXR1cm4gdU99OwpkSj1mdW5jdGlvbihuKXtpZigvXmYoWzEtOV1bMC05XSopJC8udGVzdChuKSl0aHJvdyBFcnJvcihgRXhwZWN0ZWRSZWdleE1hdGNoOiAke259YCk7fTsKejE9ZnVuY3Rpb24obil7aWYoIS9eXHcrJC8udGVzdChuKSl0aHJvdyBFcnJvcihgRXhwZWN0ZWRSZWdleE1pc21hdGNoOiAke259YCk7fTsKVDE9ZnVuY3Rpb24obil7bj1sT1tuXSE9PXZvaWQgMD9sT1tuXS50b1N0cmluZygpOm51bGw7cmV0dXJuIG4hPW51bGwmJi9eW0EtRmEtZjAtOV0rJC8udGVzdChuKT9wYXJzZUludChuLDE2KTpudWxsfTsKal89ZnVuY3Rpb24oKXt2YXIgbj1nLnFpLm5hdmlnYXRvcjtyZXR1cm4gbj9uLmNvbm5lY3Rpb246dm9pZCAwfTsKQkI9ZnVuY3Rpb24oKXt2YXIgbj1qXygpO2lmKG4pe3ZhciBXPUN5W24udHlwZXx8InVua25vd24iXXx8IkNPTk5fVU5LTk9XTiI7bj1DeVtuLmVmZmVjdGl2ZVR5cGV8fCJ1bmtub3duIl18fCJDT05OX1VOS05PV04iO1c9PT0iQ09OTl9DRUxMVUxBUl9VTktOT1dOIiYmbiE9PSJDT05OX1VOS05PV04iJiYoVz1uKTtpZihXIT09IkNPTk5fVU5LTk9XTiIpcmV0dXJuIFc7aWYobiE9PSJDT05OX1VOS05PV04iKXJldHVybiBufX07CndKPWZ1bmN0aW9uKCl7dmFyIG49al8oKTtpZihuPy5lZmZlY3RpdmVUeXBlKXJldHVybiBGay5oYXNPd25Qcm9wZXJ0eShuLmVmZmVjdGl2ZVR5cGUpP0ZrW24uZWZmZWN0aXZlVHlwZV06IkVGRkVDVElWRV9DT05ORUNUSU9OX1RZUEVfVU5LTk9XTiJ9OwpSOT1mdW5jdGlvbigpe3RyeXtyZXR1cm4gTTAoKSwhMH1jYXRjaChuKXtyZXR1cm4hMX19OwpNMD1mdW5jdGlvbigpe2lmKGcuQXIoIkRBVEFTWU5DX0lEIikhPT12b2lkIDApcmV0dXJuIGcuQXIoIkRBVEFTWU5DX0lEIik7dGhyb3cgbmV3IGcuUXgoIkRhdGFzeW5jIElEIG5vdCBzZXQiLCJ1bmtub3duIik7fTsKZy5jQj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIGcuVngoMCxXLDAsRCl9OwphOT1mdW5jdGlvbihuKXt2YXIgVz1nLnJyKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuYWRkSW1tZWRpYXRlSm9iIik7Vz9XKG4pOm4oKX07CmcuRHk9ZnVuY3Rpb24oKXtXTi5pbnN0YW5jZXx8KFdOLmluc3RhbmNlPW5ldyBXTik7cmV0dXJuIFdOLmluc3RhbmNlfTsKZy5WeD1mdW5jdGlvbihuLFcsRCxiKXtiIT09dm9pZCAwJiZOdW1iZXIuaXNOYU4oTnVtYmVyKGIpKSYmKGI9dm9pZCAwKTtyZXR1cm4obj1nLnJyKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuYWRkSm9iIikpP24oVyxELGIpOmI9PT12b2lkIDA/KFcoKSxOYU4pOmcubiQoVyxifHwwKX07CmJRPWZ1bmN0aW9uKG4pe3ZhciBXPWcucnIoInl0LnNjaGVkdWxlci5pbnN0YW5jZS5zZXRQcmlvcml0eVRocmVzaG9sZCIpO1cmJlcobil9OwprdT1mdW5jdGlvbigpe3JldHVybiB2TigpPy5nZXQoIkxBU1RfUkVTVUxUX0VOVFJZX0tFWSIsITApfTsKTEY9ZnVuY3Rpb24obil7aGN8fCh4dS5wdXNoKHt0eXBlOiJFUlJPUiIscGF5bG9hZDpufSkseHUubGVuZ3RoPjEwJiZ4dS5zaGlmdCgpKX07CmVGPWZ1bmN0aW9uKG4sVyl7aGN8fCh4dS5wdXNoKHt0eXBlOiJFVkVOVCIsZXZlbnRUeXBlOm4scGF5bG9hZDpXfSkseHUubGVuZ3RoPjEwJiZ4dS5zaGlmdCgpKX07CmcwPWZ1bmN0aW9uKG4pe2lmKG4uaW5kZXhPZigiOiIpPj0wKXRocm93IEVycm9yKCJEYXRhYmFzZSBuYW1lIGNhbm5vdCBjb250YWluICc6JyIpO307ClhxPWZ1bmN0aW9uKG4pe3JldHVybiBuLnN1YnN0cigwLG4uaW5kZXhPZigiOiIpKXx8bn07CiR1PWZ1bmN0aW9uKG4sVyxELGIpe1c9WHEoVyk7dmFyIHY9biBpbnN0YW5jZW9mIEVycm9yP246RXJyb3IoYFVuZXhwZWN0ZWQgZXJyb3I6ICR7bn1gKTtpZih2IGluc3RhbmNlb2YgcUwpcmV0dXJuIHY7bj17b2JqZWN0U3RvcmVOYW1lczpELGRiTmFtZTpXLGRiVmVyc2lvbjpifTtpZih2Lm5hbWU9PT0iUXVvdGFFeGNlZWRlZEVycm9yIilyZXR1cm4gbmV3IHFMKCJRVU9UQV9FWENFRURFRCIsbik7aWYoZy5HbiYmdi5uYW1lPT09IlVua25vd25FcnJvciIpcmV0dXJuIG5ldyBxTCgiUVVPVEFfTUFZQkVfRVhDRUVERUQiLG4pO2lmKHYgaW5zdGFuY2VvZiB0YylyZXR1cm4gbmV3IHFMKCJNSVNTSU5HX0lOREVYIix7Li4ubixvYmplY3RTdG9yZTp2Lm9iamVjdFN0b3JlLGluZGV4OnYuaW5kZXh9KTtpZih2Lm5hbWU9PT0iSW52YWxpZFN0YXRlRXJyb3IiJiZMMGkuc29tZShrPT52Lm1lc3NhZ2UuaW5jbHVkZXMoaykpKXJldHVybiBuZXcgcUwoIkVYRUNVVEVfVFJBTlNBQ1RJT05fT05fQ0xPU0VEX0RCIiwKbik7CmlmKHYubmFtZT09PSJBYm9ydEVycm9yIilyZXR1cm4gbmV3IHFMKCJVTktOT1dOX0FCT1JUIixuLHYubWVzc2FnZSk7di5hcmdzPVt7Li4ubixuYW1lOiJJZGJFcnJvciIsYTc6di5uYW1lfV07di5sZXZlbD0iV0FSTklORyI7cmV0dXJuIHZ9OwpnLnIwPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1rdSgpO3JldHVybiBuZXcgcUwoIklEQl9OT1RfU1VQUE9SVEVEIix7Y29udGV4dDp7Y2FsbGVyOm4scHVibGljTmFtZTpXLHZlcnNpb246RCxoYXNTdWNjZWVkZWRPbmNlOmI/Lmhhc1N1Y2NlZWRlZE9uY2V9fSl9OwplcTE9ZnVuY3Rpb24obil7aWYoIW4pdGhyb3cgRXJyb3IoKTt0aHJvdyBuO307CmdVcj1mdW5jdGlvbihuKXtyZXR1cm4gbn07CnBGPWZ1bmN0aW9uKG4sVyxELGIsdil7dHJ5e2lmKG4uc3RhdGUuc3RhdHVzIT09IkZVTEZJTExFRCIpdGhyb3cgRXJyb3IoImNhbGxpbmcgaGFuZGxlUmVzb2x2ZSBiZWZvcmUgdGhlIHByb21pc2UgaXMgZnVsZmlsbGVkLiIpO2xldCBrPUQobi5zdGF0ZS52YWx1ZSk7ayBpbnN0YW5jZW9mIHNSP05MKG4sVyxrLGIsdik6YihrKX1jYXRjaChrKXt2KGspfX07Cll1PWZ1bmN0aW9uKG4sVyxELGIsdil7dHJ5e2lmKG4uc3RhdGUuc3RhdHVzIT09IlJFSkVDVEVEIil0aHJvdyBFcnJvcigiY2FsbGluZyBoYW5kbGVSZWplY3QgYmVmb3JlIHRoZSBwcm9taXNlIGlzIHJlamVjdGVkLiIpO2xldCBrPUQobi5zdGF0ZS5yZWFzb24pO2sgaW5zdGFuY2VvZiBzUj9OTChuLFcsayxiLHYpOmIoayl9Y2F0Y2goayl7dihrKX19OwpOTD1mdW5jdGlvbihuLFcsRCxiLHYpe1c9PT1EP3YobmV3IFR5cGVFcnJvcigiQ2lyY3VsYXIgcHJvbWlzZSBjaGFpbiBkZXRlY3RlZC4iKSk6RC50aGVuKGs9PntrIGluc3RhbmNlb2Ygc1I/TkwobixXLGssYix2KTpiKGspfSxrPT57dihrKX0pfTsKSE49ZnVuY3Rpb24obixXLEQpe3ZhciBiPSgpPT57dHJ5e24ucmVtb3ZlRXZlbnRMaXN0ZW5lcigic3VjY2VzcyIsdiksbi5yZW1vdmVFdmVudExpc3RlbmVyKCJlcnJvciIsayl9Y2F0Y2h7fX0sdj0oKT0+e1cobi5yZXN1bHQpOwpiKCl9LGs9KCk9PntEKG4uZXJyb3IpOwpiKCl9OwpuLmFkZEV2ZW50TGlzdGVuZXIoInN1Y2Nlc3MiLHYpO24uYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGspfTsKWDlVPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgUHJvbWlzZSgoVyxEKT0+e0hOKG4sVyxEKX0pfTsKSmM9ZnVuY3Rpb24obil7cmV0dXJuIG5ldyBzUihuZXcgZkYoKFcsRCk9PntITihuLFcsRCl9KSl9OwpJZz1mdW5jdGlvbihuLFcpe3JldHVybiBuZXcgc1IobmV3IGZGKChELGIpPT57dmFyIHY9KCk9Pnt2YXIgaz1uP1cobik6bnVsbDtrP2sudGhlbihoPT57bj1oO3YoKX0sYik6RCgpfTsKdigpfSkpfTsKU0Y9ZnVuY3Rpb24obil7cmV0dXJuIEpjKG4pLnRoZW4oVz0+Vz9uZXcgcV8yKG4sVyk6bnVsbCl9OwpBYz1mdW5jdGlvbigpe3JldHVybiBnLmwoImlkYl9pbW1lZGlhdGVfY29tbWl0Iil9OwpPUj1hc3luYyBmdW5jdGlvbihuLFcsRCxiKXt2YXIgdj17bW9kZToicmVhZG9ubHkiLEdROiExLHRhZzoiSURCX1RSQU5TQUNUSU9OX1RBR19VTktOT1dOIn07dHlwZW9mIEQ9PT0ic3RyaW5nIj92Lm1vZGU9RDpPYmplY3QuYXNzaWduKHYsRCk7bi50cmFuc2FjdGlvbkNvdW50Kys7RD12LkdRPzM6MTtmb3IodmFyIGs9MCxoOyFoOyl7aysrO2xldCBHPU1hdGgucm91bmQoKDAsZy5SKSgpKTt0cnl7dmFyIHg9bi5OLnRyYW5zYWN0aW9uKFcsdi5tb2RlKSxMPWIsZT0hIXYuY29tbWl0O2xldCByPW5ldyBtWCh4KSxOPWF3YWl0IEc5dyhyLEwsZSksSD1NYXRoLnJvdW5kKCgwLGcuUikoKSk7S0YobixHLEgsayx2b2lkIDAsVy5qb2luKCksdik7cmV0dXJuIE59Y2F0Y2gocil7TD1NYXRoLnJvdW5kKCgwLGcuUikoKSk7bGV0IE49JHUocixuLk4ubmFtZSxXLmpvaW4oKSxuLk4udmVyc2lvbik7aWYoTiBpbnN0YW5jZW9mIHFMJiYhTi5OfHxrPj1EKUtGKG4sRyxMLGssTixXLmpvaW4oKSwKdiksaD1OfX1yZXR1cm4gUHJvbWlzZS5yZWplY3QoaCl9OwpaeT1mdW5jdGlvbihuLFcsRCl7bj1uLk4uY3JlYXRlT2JqZWN0U3RvcmUoVyxEKTtyZXR1cm4gbmV3IFBOKG4pfTsKVVI9ZnVuY3Rpb24obixXKXtuLk4ub2JqZWN0U3RvcmVOYW1lcy5jb250YWlucyhXKSYmbi5OLmRlbGV0ZU9iamVjdFN0b3JlKFcpfTsKS0Y9ZnVuY3Rpb24obixXLEQsYix2LGssaCl7Vz1ELVc7dj8odiBpbnN0YW5jZW9mIHFMJiYodi50eXBlPT09IlFVT1RBX0VYQ0VFREVEInx8di50eXBlPT09IlFVT1RBX01BWUJFX0VYQ0VFREVEIikmJmVGKCJRVU9UQV9FWENFRURFRCIse2RiTmFtZTpYcShuLk4ubmFtZSksb2JqZWN0U3RvcmVOYW1lczprLHRyYW5zYWN0aW9uQ291bnQ6bi50cmFuc2FjdGlvbkNvdW50LHRyYW5zYWN0aW9uTW9kZTpoLm1vZGV9KSx2IGluc3RhbmNlb2YgcUwmJnYudHlwZT09PSJVTktOT1dOX0FCT1JUIiYmKEQtPW4uVyxEPDAmJkQ+PTIxNDc0ODM2NDgmJihEPTApLGVGKCJUUkFOU0FDVElPTl9VTkVYUEVDVEVETFlfQUJPUlRFRCIse29iamVjdFN0b3JlTmFtZXM6ayx0cmFuc2FjdGlvbkR1cmF0aW9uOlcsdHJhbnNhY3Rpb25Db3VudDpuLnRyYW5zYWN0aW9uQ291bnQsZGJEdXJhdGlvbjpEfSksbi5KPSEwKSx5YyhuLCExLGIsayxXLGgudGFnKSxMRih2KSk6eWMobiwhMCxiLGssVyxoLnRhZyl9Owp5Yz1mdW5jdGlvbihuLFcsRCxiLHYsaz0iSURCX1RSQU5TQUNUSU9OX1RBR19VTktOT1dOIil7ZUYoIlRSQU5TQUNUSU9OX0VOREVEIix7b2JqZWN0U3RvcmVOYW1lczpiLGNvbm5lY3Rpb25IYXNVbmtub3duQWJvcnRlZFRyYW5zYWN0aW9uOm4uSixkdXJhdGlvbjp2LGlzU3VjY2Vzc2Z1bDpXLHRyeUNvdW50OkQsdGFnOmt9KX07CkVSPWZ1bmN0aW9uKG4sVyxEKXtuLk4uY3JlYXRlSW5kZXgoVyxELHt1bmlxdWU6ITF9KX07CnVRPWZ1bmN0aW9uKG4sVyxEKXtuPW4uTi5vcGVuQ3Vyc29yKFcucXVlcnksVy5kaXJlY3Rpb24pO3JldHVybiBpUShuKS50aGVuKGI9PklnKGIsRCkpfTsKdFhVPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIHVRKG4se3F1ZXJ5Old9LEQ9PkQuZGVsZXRlKCkudGhlbigoKT0+b2coRCkpKS50aGVuKCgpPT57fSl9OwokM3g9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVtdO3JldHVybiB1UShuLHtxdWVyeTpXfSx2PT57aWYoIShEIT09dm9pZCAwJiZiLmxlbmd0aD49RCkpcmV0dXJuIGIucHVzaCh2LmdldFZhbHVlKCkpLG9nKHYpfSkudGhlbigoKT0+Yil9OwpzMHI9ZnVuY3Rpb24obil7dmFyIFc9W107cmV0dXJuIHJfaihuLEQ9PntXLnB1c2goRC5jdXJzb3IucHJpbWFyeUtleSk7RC5jdXJzb3IuY29udGludWUodm9pZCAwKTtyZXR1cm4gU0YoRC5yZXF1ZXN0KX0pLnRoZW4oKCk9PlcpfTsKZDA9ZnVuY3Rpb24obil7cmV0dXJuImdldEFsbEtleXMiaW4gSURCT2JqZWN0U3RvcmUucHJvdG90eXBlP0pjKG4uTi5nZXRBbGxLZXlzKHZvaWQgMCx2b2lkIDApKTpzMHIobil9OwpyX2o9ZnVuY3Rpb24obixXKXt2YXIgRD17cXVlcnk6dm9pZCAwfSxiPUQucXVlcnk7RD1ELmRpcmVjdGlvbjtuPSJvcGVuS2V5Q3Vyc29yImluIElEQk9iamVjdFN0b3JlLnByb3RvdHlwZT9uLk4ub3BlbktleUN1cnNvcihiLEQpOm4uTi5vcGVuQ3Vyc29yKGIsRCk7cmV0dXJuIFNGKG4pLnRoZW4odj0+SWcodixXKSl9OwpHOXc9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW5ldyBQcm9taXNlKCh2LGspPT57dHJ5e2xldCBoPVcobik7RCYmbi5jb21taXQoKTtoLnRoZW4oeD0+e3YoeCl9KS5jYXRjaChrKX1jYXRjaChoKXtrKGgpLG4uYWJvcnQoKX19KTsKcmV0dXJuIFByb21pc2UuYWxsKFtiLG4uZG9uZV0pLnRoZW4oKFt2XSk9PnYpfTsKem49ZnVuY3Rpb24obixXLEQpe3ZhciB7cXVlcnk6Yj1udWxsLGRpcmVjdGlvbjp2PSJuZXh0In09VztuPW4uTi5vcGVuQ3Vyc29yKGIsdik7cmV0dXJuIGlRKG4pLnRoZW4oaz0+SWcoayxEKSl9OwpOWmk9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVtdO3JldHVybiB6bihuLHtxdWVyeTpXfSx2PT57aWYoIShEIT09dm9pZCAwJiZiLmxlbmd0aD49RCkpcmV0dXJuIGIucHVzaCh2LmdldFZhbHVlKCkpLG9nKHYpfSkudGhlbigoKT0+Yil9OwppUT1mdW5jdGlvbihuKXtyZXR1cm4gSmMobikudGhlbihXPT5XP25ldyBwOXgobixXKTpudWxsKX07Cm9nPWZ1bmN0aW9uKG4pe24uY3Vyc29yLmNvbnRpbnVlKHZvaWQgMCk7cmV0dXJuIGlRKG4ucmVxdWVzdCl9OwpINXg9ZnVuY3Rpb24obixXLEQpe3JldHVybiBuZXcgUHJvbWlzZSgoYix2KT0+e3ZhciBrPVchPT12b2lkIDA/c2VsZi5pbmRleGVkREIub3BlbihuLFcpOnNlbGYuaW5kZXhlZERCLm9wZW4obik7dmFyIGg9RC5ibG9ja2VkLHg9RC5ibG9ja2luZyxMPUQuQnosZT1ELnVwZ3JhZGUsRz1ELmNsb3NlZCxyLE49KCk9PntyfHwocj1uZXcgWV9yKGsucmVzdWx0LHtjbG9zZWQ6R30pKTtyZXR1cm4gcn07CmsuYWRkRXZlbnRMaXN0ZW5lcigidXBncmFkZW5lZWRlZCIsSD0+e3RyeXtpZihILm5ld1ZlcnNpb249PT1udWxsKXRocm93IEVycm9yKCJJbnZhcmlhbnQ6IG5ld1ZlcnNpb24gb24gSURiVmVyc2lvbkNoYW5nZUV2ZW50IGlzIG51bGwiKTtpZihrLnRyYW5zYWN0aW9uPT09bnVsbCl0aHJvdyBFcnJvcigiSW52YXJpYW50OiB0cmFuc2FjdGlvbiBvbiBJRGJPcGVuRGJSZXF1ZXN0IGlzIG51bGwiKTtILmRhdGFMb3NzJiZILmRhdGFMb3NzIT09Im5vbmUiJiZlRigiSURCX0RBVEFfQ09SUlVQVEVEIix7cmVhc29uOkguZGF0YUxvc3NNZXNzYWdlfHwidW5rbm93biByZWFzb24iLGRiTmFtZTpYcShuKX0pO2xldCBBPU4oKSx5PW5ldyBtWChrLnRyYW5zYWN0aW9uKTtlJiZlKEEsVD0+SC5vbGRWZXJzaW9uPFQmJkgubmV3VmVyc2lvbj49VCx5KTsKeS5kb25lLmNhdGNoKFQ9Pnt2KFQpfSl9Y2F0Y2goQSl7dihBKX19KTsKay5hZGRFdmVudExpc3RlbmVyKCJzdWNjZXNzIiwoKT0+e3ZhciBIPWsucmVzdWx0O3gmJkguYWRkRXZlbnRMaXN0ZW5lcigidmVyc2lvbmNoYW5nZSIsKCk9Pnt4KE4oKSl9KTsKSC5hZGRFdmVudExpc3RlbmVyKCJjbG9zZSIsKCk9PntlRigiSURCX1VORVhQRUNURURMWV9DTE9TRUQiLHtkYk5hbWU6WHEobiksZGJWZXJzaW9uOkgudmVyc2lvbn0pO0wmJkwoKX0pOwpiKE4oKSl9KTsKay5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsKCk9Pnt2KGsuZXJyb3IpfSk7CmgmJmsuYWRkRXZlbnRMaXN0ZW5lcigiYmxvY2tlZCIsKCk9PntoKCl9KX0pfTsKbFE9ZnVuY3Rpb24obixXLEQ9e30pe3JldHVybiBINXgobixXLEQpfTsKVG49YXN5bmMgZnVuY3Rpb24obixXPXt9KXt0cnl7bGV0IEQ9c2VsZi5pbmRleGVkREIuZGVsZXRlRGF0YWJhc2UobiksYj1XLmJsb2NrZWQ7YiYmRC5hZGRFdmVudExpc3RlbmVyKCJibG9ja2VkIiwoKT0+e2IoKX0pOwphd2FpdCBYOVUoRCl9Y2F0Y2goRCl7dGhyb3cgJHUoRCxuLCIiLC0xKTt9fTsKakY9ZnVuY3Rpb24obixXKXtyZXR1cm4gbmV3IHFMKCJJTkNPTVBBVElCTEVfREJfVkVSU0lPTiIse2RiTmFtZTpuLm5hbWUsb2xkVmVyc2lvbjpuLm9wdGlvbnMudmVyc2lvbixuZXdWZXJzaW9uOld9KX07CkNGPWZ1bmN0aW9uKG4sVyl7aWYoIVcpdGhyb3cgZy5yMCgib3BlbldpdGhUb2tlbiIsWHEobi5uYW1lKSk7cmV0dXJuIG4ub3BlbigpfTsKRnE9YXN5bmMgZnVuY3Rpb24obixXKXtyZXR1cm4gT1IoYXdhaXQgQ0YoQk4sVyksWyJkYXRhYmFzZXMiXSx7R1E6ITAsbW9kZToicmVhZHdyaXRlIn0sRD0+e3ZhciBiPUQub2JqZWN0U3RvcmUoImRhdGFiYXNlcyIpO3JldHVybiBiLmdldChuLmFjdHVhbE5hbWUpLnRoZW4odj0+e2lmKHY/bi5hY3R1YWxOYW1lIT09di5hY3R1YWxOYW1lfHxuLnB1YmxpY05hbWUhPT12LnB1YmxpY05hbWV8fG4udXNlcklkZW50aWZpZXIhPT12LnVzZXJJZGVudGlmaWVyOjEpcmV0dXJuIGIucHV0KG4pLnRoZW4oKCk9Pnt9KX0pfSl9Owp3MD1hc3luYyBmdW5jdGlvbihuLFcpe3JldHVybiBuPyhhd2FpdCBDRihCTixXKSkuZGVsZXRlKCJkYXRhYmFzZXMiLG4pOnZvaWQgMH07CmZCVT1hc3luYyBmdW5jdGlvbihuLFcpe3ZhciBEPVtdO1c9YXdhaXQgQ0YoQk4sVyk7YXdhaXQgT1IoVyxbImRhdGFiYXNlcyJdLHtHUTohMCxtb2RlOiJyZWFkb25seSJ9LGI9PntELmxlbmd0aD0wO3JldHVybiB1UShiLm9iamVjdFN0b3JlKCJkYXRhYmFzZXMiKSx7fSx2PT57bih2LmdldFZhbHVlKCkpJiZELnB1c2godi5nZXRWYWx1ZSgpKTtyZXR1cm4gb2codil9KX0pOwpyZXR1cm4gRH07CkpfMj1mdW5jdGlvbihuLFcpe3JldHVybiBmQlUoRD0+RC5wdWJsaWNOYW1lPT09biYmRC51c2VySWRlbnRpZmllciE9PXZvaWQgMCxXKX07CklCaT1hc3luYyBmdW5jdGlvbigpe2lmKGt1KCk/Lmhhc1N1Y2NlZWRlZE9uY2UpcmV0dXJuITA7dmFyIG47aWYoIShuPWcuTUwmJkMkKCkmJiFCMCgpfHxnLlJnKSl7dHJ5e249c2VsZjt2YXIgVz0hIShuLmluZGV4ZWREQiYmbi5JREJJbmRleCYmbi5JREJLZXlSYW5nZSYmbi5JREJPYmplY3RTdG9yZSl9Y2F0Y2goRCl7Vz0hMX1uPSFXfWlmKG58fCEoIklEQlRyYW5zYWN0aW9uImluIHNlbGYmJiJvYmplY3RTdG9yZU5hbWVzImluIElEQlRyYW5zYWN0aW9uLnByb3RvdHlwZSkpcmV0dXJuITE7dHJ5e3JldHVybiBhd2FpdCBGcSh7YWN0dWFsTmFtZToieXQtaWRiLXRlc3QtZG8tbm90LXVzZSIscHVibGljTmFtZToieXQtaWRiLXRlc3QtZG8tbm90LXVzZSIsdXNlcklkZW50aWZpZXI6dm9pZCAwfSxRYyksYXdhaXQgdzAoInl0LWlkYi10ZXN0LWRvLW5vdC11c2UiLFFjKSwhMH1jYXRjaChEKXtyZXR1cm4hMX19OwpjTj1mdW5jdGlvbigpe2lmKFZjIT09dm9pZCAwKXJldHVybiBWYztoYz0hMDtyZXR1cm4gVmM9SUJpKCkudGhlbihuPT57aGM9ITE7aWYodk4oKT8uSigpKXt2YXIgVz17aGFzU3VjY2VlZGVkT25jZTprdSgpPy5oYXNTdWNjZWVkZWRPbmNlfHxufTt2TigpPy5zZXQoIkxBU1RfUkVTVUxUX0VOVFJZX0tFWSIsVywyNTkyRTMsITApfXJldHVybiBufSl9OwphZz1mdW5jdGlvbigpe3JldHVybiBnLnJyKCJ5dGdsb2JhbC5pZGJUb2tlbl8iKXx8dm9pZCAwfTsKZy5uUD1mdW5jdGlvbigpe3ZhciBuPWFnKCk7cmV0dXJuIG4/UHJvbWlzZS5yZXNvbHZlKG4pOmNOKCkudGhlbihXPT57Vz8oZy5HYigieXRnbG9iYWwuaWRiVG9rZW5fIixRYyksVz1RYyk6Vz12b2lkIDA7cmV0dXJuIFd9KX07Cld6PWZ1bmN0aW9uKG4pe2lmKCFSOSgpKXRocm93IG49bmV3IHFMKCJBVVRIX0lOVkFMSUQiLHtkYk5hbWU6bn0pLExGKG4pLG47dmFyIFc9TTAoKTtyZXR1cm57YWN0dWFsTmFtZTpgJHtufToke1d9YCxwdWJsaWNOYW1lOm4sdXNlcklkZW50aWZpZXI6V319OwpEbT1hc3luYyBmdW5jdGlvbihuLFcsRCxiKXt2YXIgdj1FcnJvcigpLnN0YWNrPz8iIixrPWF3YWl0IGcublAoKTtpZighayl0aHJvdyBXPWcucjAoIm9wZW5EYkltcGwiLG4sVyksZy5sKCJ5dGlkYl9hc3luY19zdGFja19raWxsc3dpdGNoIil8fChXLnN0YWNrPWAke1cuc3RhY2t9XG4ke3Yuc3Vic3RyaW5nKHYuaW5kZXhPZigiXG4iKSsxKX1gKSxMRihXKSxXO2cwKG4pO3Y9RD97YWN0dWFsTmFtZTpuLHB1YmxpY05hbWU6bix1c2VySWRlbnRpZmllcjp2b2lkIDB9Old6KG4pO3RyeXtyZXR1cm4gYXdhaXQgRnEodixrKSxhd2FpdCBsUSh2LmFjdHVhbE5hbWUsVyxiKX1jYXRjaChoKXt0cnl7YXdhaXQgdzAodi5hY3R1YWxOYW1lLGspfWNhdGNoe310aHJvdyBoO319OwpTX1o9ZnVuY3Rpb24obixXLEQ9e30pe3JldHVybiBEbShuLFcsITEsRCl9OwpBX3I9ZnVuY3Rpb24obixXLEQ9e30pe3JldHVybiBEbShuLFcsITAsRCl9OwptM3c9YXN5bmMgZnVuY3Rpb24obixXPXt9KXt2YXIgRD1hd2FpdCBnLm5QKCk7RCYmKGcwKG4pLG49V3oobiksYXdhaXQgVG4obi5hY3R1YWxOYW1lLFcpLGF3YWl0IHcwKG4uYWN0dWFsTmFtZSxEKSl9OwpLMHI9ZnVuY3Rpb24obixXLEQpe249bi5tYXAoYXN5bmMgYj0+e2F3YWl0IFRuKGIuYWN0dWFsTmFtZSxXKTthd2FpdCB3MChiLmFjdHVhbE5hbWUsRCl9KTsKcmV0dXJuIFByb21pc2UuYWxsKG4pLnRoZW4oKCk9Pnt9KX07CmI5PWFzeW5jIGZ1bmN0aW9uKG4pe3ZhciBXPXt9LEQ9YXdhaXQgZy5uUCgpO0QmJihnMChuKSxuPWF3YWl0IEpfMihuLEQpLGF3YWl0IEswcihuLFcsRCkpfTsKdno9YXN5bmMgZnVuY3Rpb24obixXPXt9KXt2YXIgRD1hd2FpdCBnLm5QKCk7RCYmKGcwKG4pLGF3YWl0IFRuKG4sVyksYXdhaXQgdzAobixEKSl9OwpQNE09ZnVuY3Rpb24obixXKXt2YXIgRDtyZXR1cm4oKT0+e0R8fChEPW5ldyBPNXQobixXKSk7cmV0dXJuIER9fTsKa089ZnVuY3Rpb24obixXKXtyZXR1cm4gUDRNKG4sVyl9OwpoNz1mdW5jdGlvbihuKXtyZXR1cm4gQ0YoWjVDKCksbil9Owp4Tz1hc3luYyBmdW5jdGlvbihuLFcsRCxiKXtuPXtjb25maWc6bixoYXNoRGF0YTpXLHRpbWVzdGFtcDpiIT09dm9pZCAwP2I6KDAsZy5SKSgpfTtEPWF3YWl0IGg3KEQpO2F3YWl0IEQuY2xlYXIoImhvdENvbmZpZ1N0b3JlIik7cmV0dXJuIGF3YWl0IEQucHV0KCJob3RDb25maWdTdG9yZSIsbil9OwpMUD1hc3luYyBmdW5jdGlvbihuLFcsRCxiLHYpe249e2NvbmZpZzpuLGhhc2hEYXRhOlcsY29uZmlnRGF0YTpELHRpbWVzdGFtcDp2IT09dm9pZCAwP3Y6KDAsZy5SKSgpfTtiPWF3YWl0IGg3KGIpO2F3YWl0IGIuY2xlYXIoImNvbGRDb25maWdTdG9yZSIpO3JldHVybiBhd2FpdCBiLnB1dCgiY29sZENvbmZpZ1N0b3JlIixuKX07CmU5PWFzeW5jIGZ1bmN0aW9uKG4pe249YXdhaXQgaDcobik7dmFyIFc9dm9pZCAwO2F3YWl0IE9SKG4sWyJjb2xkQ29uZmlnU3RvcmUiXSx7bW9kZToicmVhZHdyaXRlIixHUTohMH0sRD0+em4oRC5vYmplY3RTdG9yZSgiY29sZENvbmZpZ1N0b3JlIikuaW5kZXgoImNvbGRUaW1lc3RhbXBJbmRleCIpLHtkaXJlY3Rpb246InByZXYifSxiPT57Vz1iLmdldFZhbHVlKCl9KSk7CnJldHVybiBXfTsKZzM9YXN5bmMgZnVuY3Rpb24obil7bj1hd2FpdCBoNyhuKTt2YXIgVz12b2lkIDA7YXdhaXQgT1IobixbImhvdENvbmZpZ1N0b3JlIl0se21vZGU6InJlYWR3cml0ZSIsR1E6ITB9LEQ9PnpuKEQub2JqZWN0U3RvcmUoImhvdENvbmZpZ1N0b3JlIikuaW5kZXgoImhvdFRpbWVzdGFtcEluZGV4Iikse2RpcmVjdGlvbjoicHJldiJ9LGI9PntXPWIuZ2V0VmFsdWUoKX0pKTsKcmV0dXJuIFd9OwpVM3Q9YXN5bmMgZnVuY3Rpb24oKXthd2FpdCBiOSgieXRHY2ZDb25maWciKX07CnFCPWZ1bmN0aW9uKCl7aWYoIWcuWDMuaW5zdGFuY2Upe2xldCBuPW5ldyBnLlgzO2cuWDMuaW5zdGFuY2U9bn1yZXR1cm4gZy5YMy5pbnN0YW5jZX07Cmk1aD1mdW5jdGlvbihuKXtpZighbi5KfHwhbi5OKXtpZighYWcoKSl7bGV0IFc9Zy5yMCgic2NoZWR1bGVHZXRDb25maWdzIik7WkUoVyl9bi5YfHwobi5YPXRhLkxTKGFzeW5jKCk9Pnt0cnl7YXdhaXQgeV9yKG4pfWNhdGNoe310cnl7YXdhaXQgRVVTKG4pfWNhdGNoe31uLlgmJihuLlg9MCl9LDEwMCkpfX07CnVEeD1hc3luYyBmdW5jdGlvbihuKXtpZihnLmwoInN0YXJ0X2NsaWVudF9nY2YiKXx8Zy5sKCJkZWxldGVfZ2NmX2NvbmZpZ19kYiIpKWcubCgic3RhcnRfY2xpZW50X2djZiIpJiYoYXdhaXQgZy5uUCgpJiZSOSgpJiYhZy5sKCJkZWxldGVfZ2NmX2NvbmZpZ19kYiIpPyhuLlY9ITAsaTVoKG4pKTooR28obiksdDcobikpKSxnLmwoImRlbGV0ZV9nY2ZfY29uZmlnX2RiIikmJmF3YWl0IFUzdCgpfTsKJE89ZnVuY3Rpb24oKXtyZXR1cm4gZy5ycigieXQuZ2NmLmNvbmZpZy5ob3RDb25maWdHcm91cCIpfTsKdmFyIG9Vaj1mdW5jdGlvbihuLFcpe3JldHVybiBlWFtJWzEwXV0odGhpcywxMCw3MTI2LG4sVyl9OwpyMz1mdW5jdGlvbihuLFcpe24uSj1XO2cuR2IoInl0LmdjZi5jb25maWcuaG90Q29uZmlnR3JvdXAiLG4uSnx8bnVsbCl9Owp0Nz1mdW5jdGlvbihuKXtyMyhuLGcuQXIoIlJBV19IT1RfQ09ORklHX0dST1VQIikpO24uVyhnLkFyKCJTRVJJQUxJWkVEX0hPVF9IQVNIX0RBVEEiKSl9Owp5X3I9YXN5bmMgZnVuY3Rpb24obil7aWYobi5KKXJldHVybiAkTygpO2lmKCFuLlYpcmV0dXJuIG49Zy5yMCgiZ2V0SG90Q29uZmlnIElEQiBub3QgaW5pdGlhbGl6ZWQiKSxaRShuKSxQcm9taXNlLnJlamVjdChuKTt2YXIgVz1hZygpLEQ9Zy5BcigiVElNRV9DUkVBVEVEX01TIik7aWYoVyl7dmFyIGI9YXdhaXQgZzMoVyk7aWYoYiYmYi50aW1lc3RhbXA+RClyZXR1cm4gcjMobixiLmNvbmZpZyksbi5XKGIuaGFzaERhdGEpLCRPKCl9ZWxzZSBiPWcucjAoImdldEhvdENvbmZpZyB0b2tlbiBlcnJvciIpLFpFKGIpO3Q3KG4pO1cmJm4uSiYmbi5ob3RIYXNoRGF0YSYmYXdhaXQgeE8obi5KLG4uaG90SGFzaERhdGEsVyxEKTtyZXR1cm4gbi5KPyRPKCk6KG49bmV3IGcuUXgoIkNvbmZpZyBub3QgYXZhaWxhYmxlIGluIHl0Q29uZmlnIiksWkUobiksUHJvbWlzZS5yZWplY3QobikpfTsKc0o9ZnVuY3Rpb24oKXtyZXR1cm4gZy5ycigieXQuZ2NmLmNvbmZpZy5jb2xkQ29uZmlnR3JvdXAiKX07Ck5CPWZ1bmN0aW9uKG4sVyl7bi5OPVc7Zy5HYigieXQuZ2NmLmNvbmZpZy5jb2xkQ29uZmlnR3JvdXAiLG4uTnx8bnVsbCl9OwpwUD1mdW5jdGlvbihuLFcpe24uY29uZmlnRGF0YT1XO2cuR2IoInl0LmdjZi5jb25maWcuY29sZENvbmZpZ0RhdGEiLG4uY29uZmlnRGF0YXx8bnVsbCl9OwpZTz1mdW5jdGlvbihuLFcpe24uY29sZEhhc2hEYXRhPVc7Zy5HYigieXQuZ2NmLmNvbmZpZy5jb2xkSGFzaERhdGEiLG4uY29sZEhhc2hEYXRhfHxudWxsKX07CkdvPWZ1bmN0aW9uKG4pe05CKG4sZy5BcigiUkFXX0NPTERfQ09ORklHX0dST1VQIikpO1lPKG4sZy5BcigiU0VSSUFMSVpFRF9DT0xEX0hBU0hfREFUQSIpKTtwUChuLG4uTj8uY29uZmlnRGF0YSl9OwpFVVM9YXN5bmMgZnVuY3Rpb24obil7aWYobi5OKXJldHVybiBzSigpO2lmKCFuLlYpcmV0dXJuIG49Zy5yMCgiZ2V0Q29sZENvbmZpZyBJREIgbm90IGluaXRpYWxpemVkIiksWkUobiksUHJvbWlzZS5yZWplY3Qobik7dmFyIFc9YWcoKSxEPWcuQXIoIlRJTUVfQ1JFQVRFRF9NUyIpO2lmKFcpe3ZhciBiPWF3YWl0IGU5KFcpO2lmKGImJmIudGltZXN0YW1wPkQpcmV0dXJuIE5CKG4sYi5jb25maWcpLHBQKG4sYi5jb25maWdEYXRhKSxZTyhuLGIuaGFzaERhdGEpLHNKKCl9ZWxzZSBiPWcucjAoImdldENvbGRDb25maWciKSxaRShiKTtHbyhuKTtXJiZuLk4mJm4uY29sZEhhc2hEYXRhJiZuLmNvbmZpZ0RhdGEmJmF3YWl0IExQKG4uTixuLmNvbGRIYXNoRGF0YSxuLmNvbmZpZ0RhdGEsVyxEKTtyZXR1cm4gbi5OP3NKKCk6KG49bmV3IGcuUXgoIkNvbmZpZyBub3QgYXZhaWxhYmxlIGluIHl0Q29uZmlnIiksWkUobiksUHJvbWlzZS5yZWplY3QobikpfTsKSHo9YXN5bmMgZnVuY3Rpb24obixXLEQpe2lmKGcubCgic3RhcnRfY2xpZW50X2djZiIpKXtEJiZyMyhuLEQpO24uVyhXKTtsZXQgYj1hZygpO2ImJihEfHwoRD0oYXdhaXQgZzMoYikpPy5jb25maWcpLGF3YWl0IHhPKEQsVyxiKSk7aWYoRCl7bj1uLks7Zm9yKGxldCB2IG9mIG4uTil2KEQpfX19OwpmUD1hc3luYyBmdW5jdGlvbihuLFcsRCl7Zy5sKCJzdGFydF9jbGllbnRfZ2NmIikmJihZTyhuLFcpLG49YWcoKSkmJihEfHwoRD0oYXdhaXQgZTkobikpPy5jb25maWcpLEQmJmF3YWl0IExQKEQsVyxELmNvbmZpZ0RhdGEsbikpfTsKSjc9ZnVuY3Rpb24oKXt2YXIgbj1xQigpLFc9KDAsZy5SKSgpLW4uajtpZighKG4uaiE9PTAmJlc8djAoInNlbmRfY29uZmlnX2hhc2hfdGltZXIiKSkpe1c9Zy5ycigieXQuZ2NmLmNvbmZpZy5jb2xkQ29uZmlnRGF0YSIpO3ZhciBEPWcucnIoInl0LmdjZi5jb25maWcuaG90SGFzaERhdGEiKSxiPWcucnIoInl0LmdjZi5jb25maWcuY29sZEhhc2hEYXRhIik7VyYmRCYmYiYmKG4uaj0oMCxnLlIpKCkpO3JldHVybntjb2xkQ29uZmlnRGF0YTpXLGhvdEhhc2hEYXRhOkQsY29sZEhhc2hEYXRhOmJ9fX07Ckk3PWZ1bmN0aW9uKCl7cmV0dXJuIklOTkVSVFVCRV9BUElfS0VZImluIElFJiYiSU5ORVJUVUJFX0FQSV9WRVJTSU9OImluIElFfTsKZy5TOT1mdW5jdGlvbigpe3JldHVybntpbm5lcnR1YmVBcGlLZXk6Zy5BcigiSU5ORVJUVUJFX0FQSV9LRVkiKSxpbm5lcnR1YmVBcGlWZXJzaW9uOmcuQXIoIklOTkVSVFVCRV9BUElfVkVSU0lPTiIpLGNSOmcuQXIoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9DT05GSUdfSU5GTyIpLEcwOmcuQXIoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9OQU1FIiwiV0VCIiksRmQ6Zy5BcigiSU5ORVJUVUJFX0NPTlRFWFRfQ0xJRU5UX05BTUUiLDEpLGlubmVydHViZUNvbnRleHRDbGllbnRWZXJzaW9uOmcuQXIoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9WRVJTSU9OIiksTWI6Zy5BcigiSU5ORVJUVUJFX0NPTlRFWFRfSEwiKSxFRTpnLkFyKCJJTk5FUlRVQkVfQ09OVEVYVF9HTCIpLHY2OmcuQXIoIklOTkVSVFVCRV9IT1NUX09WRVJSSURFIil8fCIiLE9zOiEhZy5BcigiSU5ORVJUVUJFX1VTRV9USElSRF9QQVJUWV9BVVRIIiwhMSksT0Q6ISFnLkFyKCJJTk5FUlRVQkVfT01JVF9BUElfS0VZX1dIRU5fQVVUSF9IRUFERVJfSVNfUFJFU0VOVCIsCiExKSxhcHBJbnN0YWxsRGF0YTpnLkFyKCJTRVJJQUxJWkVEX0NMSUVOVF9DT05GSUdfREFUQSIpfX07CmcuVUo9ZnVuY3Rpb24obil7dmFyIFc9e2NsaWVudDp7aGw6bi5NYixnbDpuLkVFLGNsaWVudE5hbWU6bi5HMCxjbGllbnRWZXJzaW9uOm4uaW5uZXJ0dWJlQ29udGV4dENsaWVudFZlcnNpb24sY29uZmlnSW5mbzpuLmNSfX07bmF2aWdhdG9yLnVzZXJBZ2VudCYmKFcuY2xpZW50LnVzZXJBZ2VudD1TdHJpbmcobmF2aWdhdG9yLnVzZXJBZ2VudCkpO3ZhciBEPWcucWkuZGV2aWNlUGl4ZWxSYXRpbztEJiZEIT0xJiYoVy5jbGllbnQuc2NyZWVuRGVuc2l0eUZsb2F0PVN0cmluZyhEKSk7RD1rVCgpO0QhPT0iIiYmKFcuY2xpZW50LmV4cGVyaW1lbnRzVG9rZW49RCk7RD1oeSgpO0QubGVuZ3RoPjAmJihXLnJlcXVlc3Q9e2ludGVybmFsRXhwZXJpbWVudEZsYWdzOkR9KTtBNyhuLHZvaWQgMCxXKTttVCh2b2lkIDAsVyk7S1Aodm9pZCAwLFcpO09KKG4sdm9pZCAwLFcpO1B6KHZvaWQgMCxXKTtnLmwoInN0YXJ0X2NsaWVudF9nY2YiKSYmWm0odm9pZCAwLFcpO2cuQXIoIkRFTEVHQVRFRF9TRVNTSU9OX0lEIikmJgohZy5sKCJwYWdlaWRfYXNfaGVhZGVyX3dlYiIpJiYoVy51c2VyPXtvbkJlaGFsZk9mVXNlcjpnLkFyKCJERUxFR0FURURfU0VTU0lPTl9JRCIpfSk7IWcubCgiZmlsbF9kZWxlZ2F0ZV9jb250ZXh0X2luX2dlbF9raWxsc3dpdGNoIikmJihuPWcuQXIoIklOTkVSVFVCRV9DT05URVhUX1NFUklBTElaRURfREVMRUdBVElPTl9DT05URVhUIikpJiYoVy51c2VyPXsuLi5XLnVzZXIsc2VyaWFsaXplZERlbGVnYXRpb25Db250ZXh0Om59KTtuPWcuQXIoIklOTkVSVFVCRV9DT05URVhUIik7Zy5sKCJlbmFibGVfcGVyc2lzdGVudF9kZXZpY2VfdG9rZW4iKSYmbj8uY2xpZW50Py5yb2xsb3V0VG9rZW4mJihXLmNsaWVudC5yb2xsb3V0VG9rZW49bj8uY2xpZW50Py5yb2xsb3V0VG9rZW4pO249T2JqZWN0O0Q9bi5hc3NpZ247dmFyIGI9Vy5jbGllbnQsdj1nLkFyKCJERVZJQ0UiLCIiKSxrPXt9O2ZvcihsZXQgW2gseF1vZiBPYmplY3QuZW50cmllcyhnLml3KHYpKSl2PWgsdj09PSJjYnJhbmQiPwprLmRldmljZU1ha2U9eDp2PT09ImNtb2RlbCI/ay5kZXZpY2VNb2RlbD14OnY9PT0iY2JyIj9rLmJyb3dzZXJOYW1lPXg6dj09PSJjYnJ2ZXIiP2suYnJvd3NlclZlcnNpb249eDp2PT09ImNvcyI/ay5vc05hbWU9eDp2PT09ImNvc3ZlciI/ay5vc1ZlcnNpb249eDp2PT09ImNwbGF0Zm9ybSImJihrLnBsYXRmb3JtPXgpO1cuY2xpZW50PUQuY2FsbChuLGIsayk7Zy5sKCJ3ZWJfYXR0ZW50aW9uX2xvZ2dpbmdfZW5hYmxlZCIpJiYoVy5jbGllbnQud2luZG93V2lkdGhQb2ludHM9d2luZG93LmlubmVyV2lkdGgsVy5jbGllbnQud2luZG93SGVpZ2h0UG9pbnRzPXdpbmRvdy5pbm5lckhlaWdodCk7cmV0dXJuIFd9OwpBNz1mdW5jdGlvbihuLFcsRCl7bj1uLkcwO2lmKG49PT0iV0VCInx8bj09PSJNV0VCInx8bj09PTF8fG49PT0yKVc/KEQ9Z2UoVyx5ZCw5Nil8fG5ldyB5ZCxuPXl4KCksbj1PYmplY3Qua2V5cyhkM2opLmluZGV4T2Yobiksbj1uPT09LTE/bnVsbDpuLG4hPT1udWxsJiZLbihELDMsbiksJDkoVyx5ZCw5NixEKSk6RCYmKEQuY2xpZW50Lm1haW5BcHBXZWJJbmZvPUQuY2xpZW50Lm1haW5BcHBXZWJJbmZvPz97fSxELmNsaWVudC5tYWluQXBwV2ViSW5mby53ZWJEaXNwbGF5TW9kZT15eCgpKX07Cm1UPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5ycigieXQuZW1iZWRkZWRfcGxheWVyLmVtYmVkX3VybCIpO0QmJihuPyhXPWdlKG4sRUosNyl8fG5ldyBFSixnLlNFKFcsNCxEKSwkOShuLEVKLDcsVykpOlcmJihXLnRoaXJkUGFydHk9e2VtYmVkVXJsOkR9KSl9OwpLUD1mdW5jdGlvbihuLFcpe2lmKGcubCgid2ViX2xvZ19tZW1vcnlfdG90YWxfa2J5dGVzIikmJmcucWkubmF2aWdhdG9yPy5kZXZpY2VNZW1vcnkpe2xldCBEPWcucWkubmF2aWdhdG9yPy5kZXZpY2VNZW1vcnk7bj9veihuLDk1LGcubDQoRCoxRTYpKTpXJiYoVy5jbGllbnQubWVtb3J5VG90YWxLYnl0ZXM9YCR7RCoxRTZ9YCl9fTsKT0o9ZnVuY3Rpb24obixXLEQpe24uYXBwSW5zdGFsbERhdGEmJihXPyhEPWdlKFcsaTksNjIpPz9uZXcgaTksZy5TRShELDYsbi5hcHBJbnN0YWxsRGF0YSksJDkoVyxpOSw2MixEKSk6RCYmKEQuY2xpZW50LmNvbmZpZ0luZm89RC5jbGllbnQuY29uZmlnSW5mb3x8e30sRC5jbGllbnQuY29uZmlnSW5mby5hcHBJbnN0YWxsRGF0YT1uLmFwcEluc3RhbGxEYXRhKSl9OwpQej1mdW5jdGlvbihuLFcpe3ZhciBEPUJCKCk7RCYmKG4/S24obiw2MSx6cXdbRF0pOlcmJihXLmNsaWVudC5jb25uZWN0aW9uVHlwZT1EKSk7Zy5sKCJ3ZWJfbG9nX2VmZmVjdGl2ZV9jb25uZWN0aW9uX3R5cGUiKSYmKEQ9d0ooKSkmJihuP0tuKG4sOTQsbEJyW0RdKTpXJiYoVy5jbGllbnQuZWZmZWN0aXZlQ29ubmVjdGlvblR5cGU9RCkpfTsKVFpqPWZ1bmN0aW9uKG4sVyxEPXt9KXt2YXIgYj17fTtnLkFyKCJFT01fVklTSVRPUl9EQVRBIik/Yj17IlgtR29vZy1FT00tVmlzaXRvci1JZCI6Zy5BcigiRU9NX1ZJU0lUT1JfREFUQSIpfTpiPXsiWC1Hb29nLVZpc2l0b3ItSWQiOkQudmlzaXRvckRhdGF8fGcuQXIoIlZJU0lUT1JfREFUQSIsIiIpfTtpZihXJiZXLmluY2x1ZGVzKCJ3d3cueW91dHViZS1ub2Nvb2tpZS5jb20iKSlyZXR1cm4gYjtXPUQuUDF8fGcuQXIoIkFVVEhPUklaQVRJT04iKTtXfHwobj9XPWBCZWFyZXIgJHtnLnJyKCJnYXBpLmF1dGguZ2V0VG9rZW4iKSgpLmFjY2Vzc190b2tlbn1gOihuPWlPKCkuYWoodTkpLGcubCgicGFnZWlkX2FzX2hlYWRlcl93ZWIiKXx8ZGVsZXRlIG5bIlgtR29vZy1QYWdlSWQiXSxiPXsuLi5iLC4uLm59KSk7VyYmKGIuQXV0aG9yaXphdGlvbj1XKTtyZXR1cm4gYn07ClptPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9SjcoKTtpZihEKXt2YXIgYj1ELmNvbGRDb25maWdEYXRhLHY9RC5jb2xkSGFzaERhdGE7RD1ELmhvdEhhc2hEYXRhO24/KFc9Z2UobixpOSw2Mik/P25ldyBpOSxiPWcuU0UoVywxLGIpLGcuU0UoYiwzLHYpLlcoRCksJDkobixpOSw2MixXKSk6VyYmKFcuY2xpZW50LmNvbmZpZ0luZm89Vy5jbGllbnQuY29uZmlnSW5mb3x8e30sYiYmKFcuY2xpZW50LmNvbmZpZ0luZm8uY29sZENvbmZpZ0RhdGE9YiksdiYmKFcuY2xpZW50LmNvbmZpZ0luZm8uY29sZEhhc2hEYXRhPXYpLEQmJihXLmNsaWVudC5jb25maWdJbmZvLmhvdEhhc2hEYXRhPUQpKX19OwpvNz1mdW5jdGlvbihuKXt0aGlzLnZlcnNpb249MTt0aGlzLmFyZ3M9bn07CmQzPWZ1bmN0aW9uKG4sVyl7dGhpcy50b3BpYz1uO3RoaXMuTj1XfTsKbDk9ZnVuY3Rpb24obixXKXt2YXIgRD16bygpO0QmJkQucHVibGlzaC5jYWxsKEQsbi50b1N0cmluZygpLG4sVyl9OwpqMHg9ZnVuY3Rpb24obil7dmFyIFc9VG8sRD16bygpO2lmKCFEKXJldHVybiAwO3ZhciBiPUQuc3Vic2NyaWJlKFcudG9TdHJpbmcoKSwodixrKT0+e3ZhciBoPWcucnIoInl0UHVic3ViMlB1YnN1YjJTa2lwU3ViS2V5Iik7aCYmaD09Ynx8KGg9KCk9PntpZihqOVtiXSl0cnl7aWYoayYmVyBpbnN0YW5jZW9mIGQzJiZXIT12KXRyeXt7dmFyIHg9Vy5OLEw9aztpZighTC5hcmdzfHwhTC52ZXJzaW9uKXRocm93IEVycm9yKCJ5dC5wdWJzdWIyLkRhdGEuZGVzZXJpYWxpemUoKTogc2VyaWFsaXplZERhdGEgaXMgaW5jb21wbGV0ZS4iKTtsZXQgZTt0cnl7aWYoIXguQ2Ipe2xldCBHPW5ldyB4O3guQ2I9Ry52ZXJzaW9ufWU9eC5DYn1jYXRjaChHKXt9aWYoIWV8fEwudmVyc2lvbiE9ZSl0aHJvdyBFcnJvcigieXQucHVic3ViMi5EYXRhLmRlc2VyaWFsaXplKCk6IHNlcmlhbGl6ZWREYXRhIHZlcnNpb24gaXMgaW5jb21wYXRpYmxlLiIpO3RyeXtrPVJlZmxlY3QuY29uc3RydWN0KHgsZy5STShMLmFyZ3MpKX1jYXRjaChHKXt0aHJvdyBHLm1lc3NhZ2U9CiJ5dC5wdWJzdWIyLkRhdGEuZGVzZXJpYWxpemUoKTogIitHLm1lc3NhZ2UsRzt9fX1jYXRjaChlKXt0aHJvdyBlLm1lc3NhZ2U9Inl0LnB1YnN1YjIucHVic3ViMiBjcm9zcy1iaW5hcnkgY29udmVyc2lvbiBlcnJvciBmb3IgIitXLnRvU3RyaW5nKCkrIjogIitlLm1lc3NhZ2UsZTt9bi5jYWxsKHdpbmRvdyxrKX1jYXRjaChlKXtPdChlKX19LENQW1cudG9TdHJpbmcoKV0/Zy5ycigieXQuc2NoZWR1bGVyLmluc3RhbmNlIik/dGEuTFMoaCk6Zy5uJChoLDApOmgoKSl9KTsKajlbYl09ITA7QnpbVy50b1N0cmluZygpXXx8KEJ6W1cudG9TdHJpbmcoKV09W10pO0J6W1cudG9TdHJpbmcoKV0ucHVzaChiKTtyZXR1cm4gYn07CkYwTT1mdW5jdGlvbigpe3ZhciBuPUM0dyxXPWoweChmdW5jdGlvbihEKXtuLmFwcGx5KHZvaWQgMCxhcmd1bWVudHMpO0JaaChXKX0pOwpyZXR1cm4gV307CkJaaD1mdW5jdGlvbihuKXt2YXIgVz16bygpO1cmJih0eXBlb2Ygbj09PSJudW1iZXIiJiYobj1bbl0pLGcueTIobixEPT57Vy51bnN1YnNjcmliZUJ5S2V5KEQpO2RlbGV0ZSBqOVtEXX0pKX07CnpvPWZ1bmN0aW9uKCl7cmV0dXJuIGcucnIoInl0UHVic3ViMlB1YnN1YjJJbnN0YW5jZSIpfTsKRjM9ZnVuY3Rpb24obixXLEQ9e3NhbXBsZVJhdGU6LjF9KXtNYXRoLnJhbmRvbSgpPE1hdGgubWluKC4wMixELnNhbXBsZVJhdGUvMTAwKSYmbDkoIm1ldGFfbG9nZ2luZ19jc2lfZXZlbnQiLHt0aW1lck5hbWU6bix0aW1lbGluZURhdGE6V30pfTsKVmQ9ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9e3N0YXJ0VGltZTooMCxnLlIpKCksdGlja3M6e30saW5mb3M6e319O3RyeXtsZXQgaD13MyhXKTtpZihoPT1udWxsfHwhKGg+TUJ8fGg8UjcpKXt2YXIgaz1YJChRZChXKSk7bGV0IHg9KDAsZy5SKSgpO3YudGlja3MuZ2VsYz14O3c5aisrO2cubCgiZ2VsX2NvbXByZXNzaW9uX2NzaV9raWxsc3dpdGNoIil8fCFnLmwoImxvZ19nZWxfY29tcHJlc3Npb25fbGF0ZW5jeSIpJiYhZy5sKCJsb2dfZ2VsX2NvbXByZXNzaW9uX2xhdGVuY3lfbHIiKXx8RjMoImdlbF9jb21wcmVzc2lvbiIsdix7c2FtcGxlUmF0ZTouMX0pO0QuaGVhZGVyc3x8KEQuaGVhZGVycz17fSk7RC5oZWFkZXJzWyJDb250ZW50LUVuY29kaW5nIl09Imd6aXAiO0QucG9zdEJvZHk9aztELnBvc3RQYXJhbXM9dm9pZCAwfWIobixEKX1jYXRjaChoKXtaRShoKSxiKG4sRCl9fTsKTVhTPWZ1bmN0aW9uKG4peygwLGcuUikoKTtpZighbi5ib2R5KXJldHVybiBuO3RyeXtsZXQgVz10eXBlb2Ygbi5ib2R5PT09InN0cmluZyI/bi5ib2R5OkpTT04uc3RyaW5naWZ5KG4uYm9keSksRD1XO2lmKHR5cGVvZiBXPT09InN0cmluZyIpe2xldCBiPXczKFcpO2lmKGIhPW51bGwmJihiPk1CfHxiPFI3KSlyZXR1cm4gbjtEPVgkKFFkKFcpKTsoMCxnLlIpKCl9bi5oZWFkZXJzPXsiQ29udGVudC1FbmNvZGluZyI6Imd6aXAiLC4uLihuLmhlYWRlcnN8fHt9KX07bi5ib2R5PUQ7cmV0dXJuIG59Y2F0Y2goVyl7cmV0dXJuIFpFKFcpLG59fTsKdzM9ZnVuY3Rpb24obil7dHJ5e3JldHVybihuZXcgQmxvYihuLnNwbGl0KCIiKSkpLnNpemV9Y2F0Y2goVyl7cmV0dXJuIFpFKFcpLG51bGx9fTsKY3o9ZnVuY3Rpb24obil7cmV0dXJuISFuLllXfHxuLld2fTsKbm09ZnVuY3Rpb24obil7Y3oobikmJiFuLk5oJiYobi5OPSEwLG4uQ3ImJk1hdGgucmFuZG9tKCk8PW4uS3ImJm4uZ0UudGkobi5ZVyksYTcobiksbi55Ry5XRygpJiZuLlcoKSxuLnlHLlNfKG4udVosbi5XLmJpbmQobikpLG4ueUcuU18obi5OQSxuLlguYmluZChuKSkpfTsKYTc9ZnVuY3Rpb24obil7aWYoIWN6KG4pKXRocm93IEVycm9yKCJJbmRleGVkREIgaXMgbm90IHN1cHBvcnRlZDogcmV0cnlRdWV1ZWRSZXF1ZXN0cyIpO24uZ0UuaTQoIlFVRVVFRCIsbi5ZVykudGhlbihXPT57VyYmIVdVKG4sVyxuLlo0KT9uLkEkLkxTKGFzeW5jKCk9PntXLmlkIT09dm9pZCAwJiZhd2FpdCBuLmdFLmhZKFcuaWQsbi5ZVyk7YTcobil9KTpuLnlHLldHKCkmJm4uVygpfSl9OwpENT1hc3luYyBmdW5jdGlvbihuLFcpe2lmKCFjeihuKSl0aHJvdyBFcnJvcigiSW5kZXhlZERCIGlzIG5vdCBzdXBwb3J0ZWQ6IGltbWVkaWF0ZVNlbmQiKTtXLmlkIT09dm9pZCAwJiYoYXdhaXQgbi5nRS5LNihXLmlkLG4uWVcpfHxuLkYyKEVycm9yKCJUaGUgcmVxdWVzdCBjYW5ub3QgYmUgZm91bmQgaW4gdGhlIGRhdGFiYXNlLiIpKSk7V1UobixXLG4uR3kpPyhXLnNraXBSZXRyeXx8KFc9UnEyKG4sVykpLFcmJihXLnNraXBSZXRyeSYmVy5pZCE9PXZvaWQgMCYmYXdhaXQgbi5nRS5UTShXLmlkLG4uWVcpLG4uTG0oVy51cmwsVy5vcHRpb25zLCEhVy5za2lwUmV0cnkpKSk6KG4uRjIoRXJyb3IoIk5ldHdvcmtsZXNzIExvZ2dpbmc6IFN0b3JlZCBsb2dzIHJlcXVlc3QgZXhwaXJlZCBhZ2UgbGltaXQiKSksVy5pZCE9PXZvaWQgMCYmYXdhaXQgbi5nRS5UTShXLmlkLG4uWVcpKX07CmJNPWZ1bmN0aW9uKG4sVyl7bi5oTCYmIW4ueUcuV0coKT9uLmhMKFcpOm4uaGFuZGxlRXJyb3IoVyl9OwpXVT1mdW5jdGlvbihuLFcsRCl7Vz1XLnRpbWVzdGFtcDtyZXR1cm4gbi5ub3coKS1XPj1EPyExOiEwfTsKUnEyPWZ1bmN0aW9uKG4sVyl7aWYoIWN6KG4pKXRocm93IEVycm9yKCJJbmRleGVkREIgaXMgbm90IHN1cHBvcnRlZDogdXBkYXRlUmVxdWVzdEhhbmRsZXJzIik7dmFyIEQ9Vy5vcHRpb25zLm9uRXJyb3I/Vy5vcHRpb25zLm9uRXJyb3I6KCk9Pnt9OwpXLm9wdGlvbnMub25FcnJvcj1hc3luYyh2LGspPT57dmFyIGg9UTBTKGspLHg9VlgyKGspO3gmJm4uRXEmJm4uRXEoIndlYl9lbmFibGVfZXJyb3JfMjA0IikmJm4uaGFuZGxlRXJyb3IoRXJyb3IoIlJlcXVlc3QgZmFpbGVkIGR1ZSB0byBjb21wcmVzc2lvbiIpLFcudXJsLGspO2lmKG4uRXEmJm4uRXEoIm53bF9jb25zaWRlcl9lcnJvcl9jb2RlIikmJmh8fG4uRXEmJiFuLkVxKCJud2xfY29uc2lkZXJfZXJyb3JfY29kZSIpJiZuLnBvdGVudGlhbEVzZkVycm9yQ291bnRlcjw9bi5IRilpZihuLnlHLmhKJiZhd2FpdCBuLnlHLmhKKCksIW4ueUcuV0coKSl7RCh2LGspO24uRXEmJm4uRXEoIm53bF9jb25zaWRlcl9lcnJvcl9jb2RlIikmJlc/LmlkIT09dm9pZCAwJiZhd2FpdCBuLmdFLmhZKFcuaWQsbi5ZVywhMSk7cmV0dXJufW4uRXEmJm4uRXEoIm53bF9jb25zaWRlcl9lcnJvcl9jb2RlIikmJiFoJiZuLnBvdGVudGlhbEVzZkVycm9yQ291bnRlcj5uLkhGfHwobi5wb3RlbnRpYWxFc2ZFcnJvckNvdW50ZXIrKywKVz8uaWQhPT12b2lkIDAmJihXLnNlbmRDb3VudDxuLkExPyhhd2FpdCBuLmdFLmhZKFcuaWQsbi5ZVywhMCx4PyExOnZvaWQgMCksbi5BJC5MUygoKT0+e24ueUcuV0coKSYmbi5XKCl9LG4uSVApKTphd2FpdCBuLmdFLlRNKFcuaWQsbi5ZVykpLEQodixrKSl9Owp2YXIgYj1XLm9wdGlvbnMub25TdWNjZXNzP1cub3B0aW9ucy5vblN1Y2Nlc3M6KCk9Pnt9OwpXLm9wdGlvbnMub25TdWNjZXNzPWFzeW5jKHYsayk9PntXPy5pZCE9PXZvaWQgMCYmYXdhaXQgbi5nRS5UTShXLmlkLG4uWVcpO24ueUcubGMmJm4uRXEmJm4uRXEoInZzc19uZXR3b3JrX2hpbnQiKSYmbi55Ry5sYyghMCk7Yih2LGspfTsKcmV0dXJuIFd9OwpRMFM9ZnVuY3Rpb24obil7cmV0dXJuKG49bj8uZXJyb3I/LmNvZGUpJiZuPj00MDAmJm48PTU5OT8hMTohMH07ClZYMj1mdW5jdGlvbihuKXtuPW4/LmVycm9yPy5jb2RlO3JldHVybiEobiE9PTQwMCYmbiE9PTQxNSl9OwpjX1o9ZnVuY3Rpb24oKXtpZih2VSlyZXR1cm4gdlUoKTt2VT1rTygiTG9nc0RhdGFiYXNlVjIiLHtLYzp7TG9nc1JlcXVlc3RzU3RvcmU6e3Z4OjJ9fSxzaGFyZWQ6ITEsdXBncmFkZShuLFcsRCl7VygyKSYmWnkobiwiTG9nc1JlcXVlc3RzU3RvcmUiLHtrZXlQYXRoOiJpZCIsYXV0b0luY3JlbWVudDohMH0pO1coMyk7Vyg1KSYmKEQ9RC5vYmplY3RTdG9yZSgiTG9nc1JlcXVlc3RzU3RvcmUiKSxELk4uaW5kZXhOYW1lcy5jb250YWlucygibmV3UmVxdWVzdCIpJiZELk4uZGVsZXRlSW5kZXgoIm5ld1JlcXVlc3QiKSxFUihELCJuZXdSZXF1ZXN0VjIiLFsic3RhdHVzIiwiaW50ZXJmYWNlIiwidGltZXN0YW1wIl0pKTtXKDcpJiZVUihuLCJzYXBpc2lkIik7Vyg5KSYmVVIobiwiU1dIZWFsdGhMb2ciKX0sdmVyc2lvbjo5fSk7cmV0dXJuIHZVKCl9OwprUT1mdW5jdGlvbihuKXtyZXR1cm4gQ0YoY19aKCksbil9OwphQlM9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD17c3RhcnRUaW1lOigwLGcuUikoKSxpbmZvczp7dHJhbnNhY3Rpb25UeXBlOiJZVF9JREJfVFJBTlNBQ1RJT05fVFlQRV9XUklURSJ9LHRpY2tzOnt9fTtXPWF3YWl0IGtRKFcpO249ey4uLm4sb3B0aW9uczpKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KG4ub3B0aW9ucykpLGludGVyZmFjZTpnLkFyKCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsMCl9O249YXdhaXQgVy5wdXQoIkxvZ3NSZXF1ZXN0c1N0b3JlIixuKTtELnRpY2tzLnRjPSgwLGcuUikoKTtoSShEKTtyZXR1cm4gbn07Cm52Mj1hc3luYyBmdW5jdGlvbihuLFcpe3ZhciBEPXtzdGFydFRpbWU6KDAsZy5SKSgpLGluZm9zOnt0cmFuc2FjdGlvblR5cGU6IllUX0lEQl9UUkFOU0FDVElPTl9UWVBFX1JFQUQifSx0aWNrczp7fX07Vz1hd2FpdCBrUShXKTt2YXIgYj1nLkFyKCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsMCksdj1bbixiLDBdO2I9W24sYiwoMCxnLlIpKCldO3ZhciBrPUlEQktleVJhbmdlLmJvdW5kKHYsYiksaD0icHJldiI7Zy5sKCJ1c2VfZmlmb19mb3JfbmV0d29ya2xlc3MiKSYmKGg9Im5leHQiKTt2YXIgeD12b2lkIDA7dj1uPT09Ik5FVyI/InJlYWR3cml0ZSI6InJlYWRvbmx5IjtnLmwoInVzZV9yZWFkb25seV9mb3JfZ2V0X21vc3RfcmVjZW50X2J5X3N0YXR1c19raWxsc3dpdGNoIikmJih2PSJyZWFkd3JpdGUiKTthd2FpdCBPUihXLFsiTG9nc1JlcXVlc3RzU3RvcmUiXSx7bW9kZTp2LEdROiEwfSxMPT56bihMLm9iamVjdFN0b3JlKCJMb2dzUmVxdWVzdHNTdG9yZSIpLmluZGV4KCJuZXdSZXF1ZXN0VjIiKSwKe3F1ZXJ5OmssZGlyZWN0aW9uOmh9LGU9PntlLmdldFZhbHVlKCkmJih4PWUuZ2V0VmFsdWUoKSxuPT09Ik5FVyImJih4LnN0YXR1cz0iUVVFVUVEIixlLnVwZGF0ZSh4KSkpfSkpOwpELnRpY2tzLnRjPSgwLGcuUikoKTtoSShEKTtyZXR1cm4geH07CldfQz1hc3luYyBmdW5jdGlvbihuLFcpe3JldHVybiBPUihhd2FpdCBrUShXKSxbIkxvZ3NSZXF1ZXN0c1N0b3JlIl0se21vZGU6InJlYWR3cml0ZSIsR1E6ITB9LEQ9Pnt2YXIgYj1ELm9iamVjdFN0b3JlKCJMb2dzUmVxdWVzdHNTdG9yZSIpO3JldHVybiBiLmdldChuKS50aGVuKHY9PntpZih2KXJldHVybiB2LnN0YXR1cz0iUVVFVUVEIixiLnB1dCh2KS50aGVuKCgpPT52KX0pfSl9OwpERXg9YXN5bmMgZnVuY3Rpb24obixXLEQ9ITAsYil7cmV0dXJuIE9SKGF3YWl0IGtRKFcpLFsiTG9nc1JlcXVlc3RzU3RvcmUiXSx7bW9kZToicmVhZHdyaXRlIixHUTohMH0sdj0+e3ZhciBrPXYub2JqZWN0U3RvcmUoIkxvZ3NSZXF1ZXN0c1N0b3JlIik7cmV0dXJuIGsuZ2V0KG4pLnRoZW4oaD0+aD8oaC5zdGF0dXM9Ik5FVyIsRCYmKGguc2VuZENvdW50Kz0xKSxiIT09dm9pZCAwJiYoaC5vcHRpb25zLmNvbXByZXNzPWIpLGsucHV0KGgpLnRoZW4oKCk9PmgpKTpzUi5yZXNvbHZlKHZvaWQgMCkpfSl9OwpiR0M9YXN5bmMgZnVuY3Rpb24obixXKXtyZXR1cm4oYXdhaXQga1EoVykpLmRlbGV0ZSgiTG9nc1JlcXVlc3RzU3RvcmUiLG4pfTsKdnZpPWFzeW5jIGZ1bmN0aW9uKG4pe249YXdhaXQga1Eobik7dmFyIFc9KDAsZy5SKSgpLTI1OTJFNjthd2FpdCBPUihuLFsiTG9nc1JlcXVlc3RzU3RvcmUiXSx7bW9kZToicmVhZHdyaXRlIixHUTohMH0sRD0+dVEoRC5vYmplY3RTdG9yZSgiTG9nc1JlcXVlc3RzU3RvcmUiKSx7fSxiPT57aWYoYi5nZXRWYWx1ZSgpLnRpbWVzdGFtcDw9VylyZXR1cm4gYi5kZWxldGUoKS50aGVuKCgpPT5vZyhiKSl9KSl9Owpremk9YXN5bmMgZnVuY3Rpb24oKXthd2FpdCBiOSgiTG9nc0RhdGFiYXNlVjIiKX07CmhJPWZ1bmN0aW9uKG4pe2cubCgibndsX2NzaV9raWxsc3dpdGNoIil8fEYzKCJuZXR3b3JrbGVzc19wZXJmb3JtYW5jZSIsbix7c2FtcGxlUmF0ZToxfSl9Owp4UT1mdW5jdGlvbihuKXtyZXR1cm4gQ0YoaF94KCksbil9Owp4RXc9YXN5bmMgZnVuY3Rpb24obil7bj1hd2FpdCB4UShuKTt2YXIgVz0oMCxnLlIpKCktMjU5MkU2O2F3YWl0IE9SKG4sWyJTV0hlYWx0aExvZyJdLHttb2RlOiJyZWFkd3JpdGUiLEdROiEwfSxEPT51UShELm9iamVjdFN0b3JlKCJTV0hlYWx0aExvZyIpLHt9LGI9PntpZihiLmdldFZhbHVlKCkudGltZXN0YW1wPD1XKXJldHVybiBiLmRlbGV0ZSgpLnRoZW4oKCk9Pm9nKGIpKX0pKX07CkxfaT1hc3luYyBmdW5jdGlvbihuKXthd2FpdCAoYXdhaXQgeFEobikpLmNsZWFyKCJTV0hlYWx0aExvZyIpfTsKZy5nbz1mdW5jdGlvbihuLFcsRCxiLHY9IiIsaz0hMSxoPSExKXtpZihuKWlmKEQmJiFnLmQ4KCkpWkUobmV3IGcuUXgoIkxlZ2FjeSByZWZlcnJlci1zY3J1YmJlZCBwaW5nIGRldGVjdGVkIikpLG4mJkxtKG4sdm9pZCAwLHtzY3J1YlJlZmVycmVyOiEwfSk7ZWxzZSBpZih2KXhUKG4sVywiUE9TVCIsdixiKTtlbHNlIGlmKGcuQXIoIlVTRV9ORVRfQUpBWF9GT1JfUElOR19UUkFOU1BPUlQiLCExKXx8Ynx8aCl4VChuLFcsIkdFVCIsIiIsYix2b2lkIDAsayxoKTtlbHNle2I6e3RyeXtjOnt2YXIgeD1uZXcgZV93KHt1cmw6bn0pO2lmKHguTi5kc2g9PT0iMSIpdmFyIEw9bnVsbDtlbHNle3ZhciBlPXguTi5hZTtpZihlPT09IjEiKXtsZXQgcj14Lk4uYWR1cmw7aWYocil0cnl7TD17dmVyc2lvbjozLFViOmRlY29kZVVSSUNvbXBvbmVudChyKSxERzp1eCh4LkosImFjdD0xIiwicmk9MSIseGlNKHgpKX07YnJlYWsgY31jYXRjaChOKXt9fUw9ZT09PSIyIj97dmVyc2lvbjo0LFViOnV4KHguSiwKImRjdD0xIiwic3VpZD0iK3guVywicmk9MSIpLERHOnV4KHguSiwiYWN0PTEiLCJyaT0xIiwic3VpZD0iK3guVyl9Om51bGx9fWlmKEwpe2xldCByPVMxKG4pO3ZhciBHPSEoIXJ8fCFyLmVuZHNXaXRoKCIvYWNsayIpfHxnLmxmKG4sInJpIikhPT0iMSIpO2JyZWFrIGJ9fWNhdGNoKHIpe31HPSExfUc/ZXcobik/KFcmJlcoKSxEPSEwKTpEPSExOkQ9ITE7RHx8TG0obixXKX19Owpndnc9ZnVuY3Rpb24obixXPSIiKXtldyhuLFcpfHxnLmdvKG4sdm9pZCAwLHZvaWQgMCx2b2lkIDAsVyl9Owpldz1mdW5jdGlvbihuLFc9IiIpe3RyeXtpZih3aW5kb3cubmF2aWdhdG9yJiZ3aW5kb3cubmF2aWdhdG9yLnNlbmRCZWFjb24mJndpbmRvdy5uYXZpZ2F0b3Iuc2VuZEJlYWNvbihuLFcpKXJldHVybiEwfWNhdGNoKEQpe31yZXR1cm4hMX07CkxtPWZ1bmN0aW9uKG4sVyxEPXt9KXt2YXIgYj1uZXcgSW1hZ2Usdj0iIitYSHcrKztYaVt2XT1iO2Iub25sb2FkPWIub25lcnJvcj0oKT0+e1cmJlhpW3ZdJiZXKCk7ZGVsZXRlIFhpW3ZdfTsKRC5zY3J1YlJlZmVycmVyJiYoYi5yZWZlcnJlclBvbGljeT0ibm8tcmVmZXJyZXIiKTtiLnNyYz1ufTsKZy5xYj1mdW5jdGlvbihuKXtyZXR1cm4gZG9jdW1lbnQuZmVhdHVyZVBvbGljeT8uYWxsb3dlZEZlYXR1cmVzKCkuaW5jbHVkZXMoImF0dHJpYnV0aW9uLXJlcG9ydGluZyIpP24rIiZuaXM9NiI6bisiJm5pcz01In07CiRRPWZ1bmN0aW9uKCl7R1R8fChHVD1uZXcgdEkoInl0Lm9mZmxpbmUiKSk7cmV0dXJuIEdUfTsKcUt3PWZ1bmN0aW9uKG4pe2lmKGcubCgib2ZmbGluZV9lcnJvcl9oYW5kbGluZyIpKXt2YXIgVz0kUSgpLmdldCgiZXJyb3JzIiwhMCl8fHt9O1dbbi5tZXNzYWdlXT17bmFtZTpuLm5hbWUsc3RhY2s6bi5zdGFja307bi5sZXZlbCYmKFdbbi5tZXNzYWdlXS5sZXZlbD1uLmxldmVsKTskUSgpLnNldCgiZXJyb3JzIixXLDI1OTJFMywhMCl9fTsKc2M9ZnVuY3Rpb24oKXtpZighcm8uaW5zdGFuY2Upe2xldCBuPWcucnIoInl0Lm5ldHdvcmtSZXF1ZXN0TW9uaXRvci5pbnN0YW5jZSIpfHxuZXcgcm87Zy5HYigieXQubmV0d29ya1JlcXVlc3RNb25pdG9yLmluc3RhbmNlIixuKTtyby5pbnN0YW5jZT1ufXJldHVybiByby5pbnN0YW5jZX07CnBtPWZ1bmN0aW9uKCl7aWYoIU5iLmluc3RhbmNlKXtsZXQgbj1nLnJyKCJ5dC5uZXR3b3JrU3RhdHVzTWFuYWdlci5pbnN0YW5jZSIpfHxuZXcgTmI7Zy5HYigieXQubmV0d29ya1N0YXR1c01hbmFnZXIuaW5zdGFuY2UiLG4pO05iLmluc3RhbmNlPW59cmV0dXJuIE5iLmluc3RhbmNlfTsKWVE9ZnVuY3Rpb24obixXKXtuLnJhdGVMaW1pdD9uLk4/KHRhLnNPKG4uWCksbi5YPXRhLkxTKCgpPT57bi5XIT09VyYmKG4uZGlzcGF0Y2hFdmVudChXKSxuLlc9VyxuLk49KDAsZy5SKSgpKX0sbi5yYXRlTGltaXQtKCgwLGcuUikoKS1uLk4pKSk6KG4uZGlzcGF0Y2hFdmVudChXKSxuLlc9VyxuLk49KDAsZy5SKSgpKTpuLmRpc3BhdGNoRXZlbnQoVyl9OwpnLkhVPWZ1bmN0aW9uKCl7dmFyIG49Zy5ycigieXQubmV0d29ya2xlc3NSZXF1ZXN0Q29udHJvbGxlci5pbnN0YW5jZSIpO258fChuPW5ldyBHemgsZy5HYigieXQubmV0d29ya2xlc3NSZXF1ZXN0Q29udHJvbGxlci5pbnN0YW5jZSIsbiksZy5sKCJuZXR3b3JrbGVzc19sb2dnaW5nIikmJmcublAoKS50aGVuKFc9PntuLllXPVc7bm0obik7bi5qLnJlc29sdmUoKTtuLkNyJiZNYXRoLnJhbmRvbSgpPD1uLktyJiZuLllXJiZ4RXcobi5ZVyk7Zy5sKCJuZXR3b3JrbGVzc19pbW1lZGlhdGVseV9kcm9wX3N3X2hlYWx0aF9zdG9yZSIpJiZ0V3cobil9KSk7CnJldHVybiBufTsKdFd3PWFzeW5jIGZ1bmN0aW9uKG4pe2lmKCFuLllXKXRocm93IGcucjAoImNsZWFyU1dIZWFsdGhMb2dzRGIiKTtMX2kobi5ZVykuY2F0Y2goVz0+e24uaGFuZGxlRXJyb3IoVyl9KX07CiRFdD1mdW5jdGlvbihuLFcsRCl7Vz1nLmwoIndlYl9mcF92aWFfanNwYiIpP09iamVjdC5hc3NpZ24oe30sVyk6VztnLmwoInVzZV9yZXF1ZXN0X3RpbWVfbXNfaGVhZGVyIik/Vy5oZWFkZXJzJiZnLlRkKG4pJiYoVy5oZWFkZXJzWyJYLUdvb2ctUmVxdWVzdC1UaW1lIl09SlNPTi5zdHJpbmdpZnkoTWF0aC5yb3VuZCgoMCxnLlIpKCkpKSk6Vy5wb3N0UGFyYW1zPy5yZXF1ZXN0VGltZU1zJiYoVy5wb3N0UGFyYW1zLnJlcXVlc3RUaW1lTXM9TWF0aC5yb3VuZCgoMCxnLlIpKCkpKTtEJiZPYmplY3Qua2V5cyhXKS5sZW5ndGg9PT0wP2cuZ28obik6Vy5jb21wcmVzcz9XLnBvc3RCb2R5Pyh0eXBlb2YgVy5wb3N0Qm9keSE9PSJzdHJpbmciJiYoVy5wb3N0Qm9keT1KU09OLnN0cmluZ2lmeShXLnBvc3RCb2R5KSksVmQobixXLnBvc3RCb2R5LFcsZy5lZCkpOlZkKG4sSlNPTi5zdHJpbmdpZnkoVy5wb3N0UGFyYW1zKSxXLGc4KTpnLmVkKG4sVyl9OwpmbT1mdW5jdGlvbihuLFcpe2cubCgidXNlX2V2ZW50X3RpbWVfbXNfaGVhZGVyIikmJmcuVGQobikmJihXLmhlYWRlcnN8fChXLmhlYWRlcnM9e30pLFcuaGVhZGVyc1siWC1Hb29nLUV2ZW50LVRpbWUiXT1KU09OLnN0cmluZ2lmeShNYXRoLnJvdW5kKCgwLGcuUikoKSkpKTtyZXR1cm4gV307CmcuSUk9ZnVuY3Rpb24obixXLEQsYil7IWcuQXIoIlZJU0lUT1JfREFUQSIpJiZXIT09InZpc2l0b3JfaWQiJiZNYXRoLnJhbmRvbSgpPC4wMSYmWkUobmV3IGcuUXgoIk1pc3NpbmcgVklTSVRPUl9EQVRBIHdoZW4gc2VuZGluZyBpbm5lcnR1YmUgcmVxdWVzdC4iLFcsRCxiKSk7aWYoIW4uaXNSZWFkeSgpKXRocm93IG49bmV3IGcuUXgoImlubmVydHViZSB4aHJjbGllbnQgbm90IHJlYWR5IixXLEQsYiksT3Qobiksbjt2YXIgdj17aGVhZGVyczpiLmhlYWRlcnN8fHt9LG1ldGhvZDoiUE9TVCIscG9zdFBhcmFtczpELHBvc3RCb2R5OmIucG9zdEJvZHkscG9zdEJvZHlGb3JtYXQ6Yi5wb3N0Qm9keUZvcm1hdHx8IkpTT04iLG9uVGltZW91dDooKT0+e2Iub25UaW1lb3V0KCl9LApvbkZldGNoVGltZW91dDpiLm9uVGltZW91dCxvblN1Y2Nlc3M6KGUsRyk9PntpZihiLm9uU3VjY2VzcyliLm9uU3VjY2VzcyhHKX0sCm9uRmV0Y2hTdWNjZXNzOmU9PntpZihiLm9uU3VjY2VzcyliLm9uU3VjY2VzcyhlKX0sCm9uUHJvZ3Jlc3M6ZT0+e2lmKGIub25Qcm9ncmVzcyliLm9uUHJvZ3Jlc3MoZSl9LApvbkVycm9yOihlLEcpPT57aWYoYi5vbkVycm9yKWIub25FcnJvcihHKX0sCm9uRmV0Y2hFcnJvcjplPT57aWYoYi5vbkVycm9yKWIub25FcnJvcihlKX0sCnRpbWVvdXQ6Yi50aW1lb3V0LHdpdGhDcmVkZW50aWFsczohMCxjb21wcmVzczpiLmNvbXByZXNzfTt2LmhlYWRlcnNbIkNvbnRlbnQtVHlwZSJdfHwodi5oZWFkZXJzWyJDb250ZW50LVR5cGUiXT0iYXBwbGljYXRpb24vanNvbiIpO0Q9IiI7dmFyIGs9bi5jb25maWdfLnY2O2smJihEPWspO2s9bi5jb25maWdfLk9zfHwhMTt2YXIgaD1UWmooayxELGIpO09iamVjdC5hc3NpZ24odi5oZWFkZXJzLGgpO3YuaGVhZGVycy5BdXRob3JpemF0aW9uJiYhRCYmayYmKHYuaGVhZGVyc1sieC1vcmlnaW4iXT13aW5kb3cubG9jYXRpb24ub3JpZ2luKTt2YXIgeD1nLnpkKGAke0R9JHtgL3lvdXR1YmVpLyR7bi5jb25maWdfLmlubmVydHViZUFwaVZlcnNpb259LyR7V31gfWAse2FsdDoianNvbiJ9KSxMPShlPSExKT0+e3RyeXtpZihlJiZiLnJldHJ5JiYhYi5uZXR3b3JrbGVzc09wdGlvbnMuYnlwYXNzTmV0d29ya2xlc3Mpdi5tZXRob2Q9IlBPU1QiLGIubmV0d29ya2xlc3NPcHRpb25zLndyaXRlVGhlblNlbmQ/CmcuSFUoKS53cml0ZVRoZW5TZW5kKHgsdik6Zy5IVSgpLnNlbmRBbmRXcml0ZSh4LHYpO2Vsc2UgaWYoYi5jb21wcmVzcylpZih2LnBvc3RCb2R5KXtsZXQgRz12LnBvc3RCb2R5O3R5cGVvZiBHIT09InN0cmluZyImJihHPUpTT04uc3RyaW5naWZ5KHYucG9zdEJvZHkpKTtWZCh4LEcsdixnLmVkKX1lbHNlIFZkKHgsSlNPTi5zdHJpbmdpZnkodi5wb3N0UGFyYW1zKSx2LGc4KTtlbHNlIGc4KHgsdil9Y2F0Y2goRyl7aWYoRy5uYW1lPT09IkludmFsaWRBY2Nlc3NFcnJvciIpWkUoRXJyb3IoIkFuIGV4dGVuc2lvbiBpcyBibG9ja2luZyBuZXR3b3JrIHJlcXVlc3QuIikpO2Vsc2UgdGhyb3cgRzt9fTsKZy5ycigieXROZXR3b3JrbGVzc0xvZ2dpbmdJbml0aWFsaXphdGlvbk9wdGlvbnMiKSYmSkkuaXNOd2xJbml0aWFsaXplZD9jTigpLnRoZW4oZT0+e0woZSl9KTpMKCExKX07Ck9jPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1TdygpO2lmKGImJlcpe2xldCB2PWIuc3Vic2NyaWJlKG4sZnVuY3Rpb24oKXt2YXIgaz1hcmd1bWVudHMsaD0oKT0+e0FJW3ZdJiZXLmFwcGx5JiZ0eXBlb2YgVy5hcHBseT09ImZ1bmN0aW9uIiYmVy5hcHBseShEfHx3aW5kb3csayl9Owp0cnl7bWdbbl0/aCgpOmcubiQoaCwwKX1jYXRjaCh4KXtPdCh4KX19LEQpOwpBSVt2XT0hMDtLbVtuXXx8KEttW25dPVtdKTtLbVtuXS5wdXNoKHYpO3JldHVybiB2fXJldHVybiAwfTsKUFU9ZnVuY3Rpb24obil7dmFyIFc9U3coKTtXJiYodHlwZW9mIG49PT0ibnVtYmVyIj9uPVtuXTp0eXBlb2Ygbj09PSJzdHJpbmciJiYobj1bcGFyc2VJbnQobiwxMCldKSxnLnkyKG4sRD0+e1cudW5zdWJzY3JpYmVCeUtleShEKTtkZWxldGUgQUlbRF19KSl9OwpaNT1mdW5jdGlvbihuLFcpe3ZhciBEPVN3KCk7cmV0dXJuIEQ/RC5wdWJsaXNoLmFwcGx5KEQsYXJndW1lbnRzKTohMX07CnlKPWZ1bmN0aW9uKG4pe3ZhciBXPVN3KCk7aWYoVylpZihXLmNsZWFyKG4pLG4pVWMobik7ZWxzZSBmb3IobGV0IEQgaW4gS20pVWMoRCl9OwpFYz1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPVdebjtpZighKG4tNj4+Mykpe2VYKGteMjk5MCxrXjYwMjksRCk7dmFyIGg9RFtJW2teMjk4Nl1dKyhEW0lba14yOTg2XV0/SVtrXjMwNjBdOklba14zMDY3XSkrRFtJW2teMjk2N11dK0RbSVtrXjI5ODhdXTtpZihQMChrXjMwNDUsa140NjE4LEQpKXtsZXQgTD1bXTtnLmFfKERbSVsxXV0sKEcscik9PntHIT09bnVsbCYmTFtJW2teMjk4Ml1dKGAke3J9PSR7R31gKX0pOwpsZXQgZT1MW0lba14zMDA1XV0oSVtrXjI5NDVdKTtoKz1gPyR7ZX1gfXZhciB4PWh9KG4rMl43KTxuJiYobi01fDIzKT49biYmKGI9PT1JW2teNjU4OV0mJigoaD12W0lba142NTYzXV0oSVtrXjY1NDhdKSk+PTA/KGI9YGNtbz0ke3ZbSVtrXjY1NjZdXSgwLGgpfWAsdj12W0lba142NTY2XV0oaCsxKSk6KGg9dltJW2teNjU2M11dKElba142NTM1XSkpPj0wJiYoYj1gY21vPSR7dltJW2teNjU2Nl1dKDAsaCl9YCx2PXZbSVtrXjY1NjZdXShoKzMpKSksRFtiXT12KTtyZXR1cm4geH07ClN3PWZ1bmN0aW9uKCl7cmV0dXJuIGcucWkueXRQdWJzdWJQdWJzdWJJbnN0YW5jZX07ClVjPWZ1bmN0aW9uKG4pe0ttW25dJiYobj1LbVtuXSxnLnkyKG4sVz0+e0FJW1ddJiZkZWxldGUgQUlbV119KSxuLmxlbmd0aD0wKX07CmlNPWZ1bmN0aW9uKG4sVyxEPW51bGwpe3J2aChuLFcsRCl9Owpydmg9ZnVuY3Rpb24obixXLEQ9bnVsbCl7dmFyIGI9dU0odHlwZW9mIG49PT0ic3RyaW5nIj9uOm4udG9TdHJpbmcoKSksdj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChiKSxrPXYmJmdKKHYpLGg9diYmIWs7az9XJiZXKCk6KFcmJihrPU9jKGIsVyksVz1gJHtBaShXKX1gLG9JW1ddPWspLGh8fCh2PXN6UyhuLGIsKCk9PntnSih2KXx8KGI1dCh2KSxaNShiKSxnLm4kKCgpPT57eUooYil9LDApKX0sRCkpKX07CnN6Uz1mdW5jdGlvbihuLFcsRCxiPW51bGwpe3ZhciB2PWcuekYoIlNDUklQVCIpO3YuaWQ9Vzt2Lm9ubG9hZD0oKT0+e0QmJnNldFRpbWVvdXQoRCwwKX07CnYub25yZWFkeXN0YXRlY2hhbmdlPSgpPT57c3dpdGNoKHYucmVhZHlTdGF0ZSl7Y2FzZSAibG9hZGVkIjpjYXNlICJjb21wbGV0ZSI6di5vbmxvYWQoKX19OwpiJiZ2LnNldEF0dHJpYnV0ZSgibm9uY2UiLGIpO2cuUE0odix0eXBlb2Ygbj09PSJzdHJpbmciP2Z3KG4pOm4pO249ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXXx8ZG9jdW1lbnQuYm9keTtuLmluc2VydEJlZm9yZSh2LG4uZmlyc3RDaGlsZCk7cmV0dXJuIHZ9Owp1TT1mdW5jdGlvbihuKXt2YXIgVz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIik7Zy5OVShXLG4pO249Vy5ocmVmLnJlcGxhY2UoL15bYS16QS1aXSs6XC9cLy8sIi8vIik7cmV0dXJuYGpzLSR7c1Qobil9YH07CnpUPWZ1bmN0aW9uKG4sVyl7aWYobj09PVcpbj0hMDtlbHNlIGlmKEFycmF5LmlzQXJyYXkobikmJkFycmF5LmlzQXJyYXkoVykpbj12NChuLFcselQpO2Vsc2UgaWYoZy5mdChuKSYmZy5mdChXKSlhOmlmKGcuTFQobikubGVuZ3RoIT1nLkxUKFcpLmxlbmd0aCluPSExO2Vsc2V7Zm9yKGxldCBEIGluIG4paWYoIXpUKG5bRF0sV1tEXSkpe249ITE7YnJlYWsgYX1uPSEwfWVsc2Ugbj0hMTtyZXR1cm4gbn07Cmp3PWZ1bmN0aW9uKG4sLi4uVyl7aWYoIWxNKG4pfHxXLnNvbWUoRD0+IWxNKEQpKSl0aHJvdyBFcnJvcigiT25seSBvYmplY3RzIG1heSBiZSBtZXJnZWQuIik7CmZvcihsZXQgRCBvZiBXKVRUKG4sRCl9OwpUVD1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRCBpbiBXKWlmKGxNKFdbRF0pKXtpZihEIGluIG4mJiFsTShuW0RdKSl0aHJvdyBFcnJvcigiQ2Fubm90IG1lcmdlIGFuIG9iamVjdCBpbnRvIGEgbm9uLW9iamVjdC4iKTtEIGluIG58fChuW0RdPXt9KTtUVChuW0RdLFdbRF0pfWVsc2UgaWYoQ20oV1tEXSkpe2lmKEQgaW4gbiYmIUNtKG5bRF0pKXRocm93IEVycm9yKCJDYW5ub3QgbWVyZ2UgYW4gYXJyYXkgaW50byBhIG5vbi1hcnJheS4iKTtEIGluIG58fChuW0RdPVtdKTtCVShuW0RdLFdbRF0pfWVsc2UgbltEXT1XW0RdO3JldHVybiBufTsKQlU9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgb2YgVylsTShEKT9uLnB1c2goVFQoe30sRCkpOkNtKEQpP24ucHVzaChCVShbXSxEKSk6bi5wdXNoKEQpO3JldHVybiBufTsKbE09ZnVuY3Rpb24obil7cmV0dXJuIHR5cGVvZiBuPT09Im9iamVjdCImJiFBcnJheS5pc0FycmF5KG4pfTsKQ209ZnVuY3Rpb24obil7cmV0dXJuIHR5cGVvZiBuPT09Im9iamVjdCImJkFycmF5LmlzQXJyYXkobil9OwpnLkZpPWZ1bmN0aW9uKG49ITEpe2cuRk0uY2FsbCh0aGlzKTt0aGlzLlkkPW5ldyBCSyhuKTtnLnUodGhpcyx0aGlzLlkkKX07Ck1iPWZ1bmN0aW9uKG4pe2lmKHdpbmRvdy5jcnlwdG8mJndpbmRvdy5jcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKXRyeXt2YXIgVz1BcnJheShuKSxEPW5ldyBVaW50OEFycmF5KG4pO3dpbmRvdy5jcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKEQpO2Zvcih2YXIgYj0wO2I8Vy5sZW5ndGg7YisrKVdbYl09RFtiXTtyZXR1cm4gV31jYXRjaCh2KXt9Vz1BcnJheShuKTtmb3IoRD0wO0Q8bjtEKyspe2I9RGF0ZS5ub3coKTtmb3IobGV0IHY9MDt2PGIlMjM7disrKVdbRF09TWF0aC5yYW5kb20oKTtXW0RdPU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoyNTYpfWlmKHdvKWZvcihEPTEsYj0wO2I8d28ubGVuZ3RoO2IrKylXW0Qlbl1ePVdbKEQtMSklbl0vNF53by5jaGFyQ29kZUF0KGIpLEQrKztyZXR1cm4gV307CmcuUkk9ZnVuY3Rpb24obil7bj1NYihuKTt2YXIgVz1bXTtmb3IobGV0IEQ9MDtEPG4ubGVuZ3RoO0QrKylXLnB1c2goIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5LV8iLmNoYXJBdChuW0RdJjYzKSk7cmV0dXJuIFcuam9pbigiIil9OwpnLlFKPWZ1bmN0aW9uKCl7cmV0dXJuIGcuaV8oTWIoMTYpLG49PihuJjE1KS50b1N0cmluZygxNikpLmpvaW4oIiIpfTsKYUk9ZnVuY3Rpb24oKXsoe0NQOlc9ITEsTTY6bj0hMH09e30pO3ZhciBuLFc7aWYoZy5ycigiX2xhY3QiLHdpbmRvdyk9PW51bGwpe3ZhciBEPXBhcnNlSW50KGcuQXIoIkxBQ1QiKSwxMCk7RD1pc0Zpbml0ZShEKT9EYXRlLm5vdygpLU1hdGgubWF4KEQsMCk6LTE7Zy5HYigiX2xhY3QiLEQsd2luZG93KTtnLkdiKCJfZmFjdCIsRCx3aW5kb3cpO0Q9PS0xJiZWSigpO05ndyhXLG4pO25ldyBtWSgoKT0+e2NVKCJtb3VzZSIsMTAwKX0pfX07Cm5YPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bmV3IGcud1ooVyk7KFc9RC5nZXQoInJlcV9pZCIpKSYmbi5zZXQoInJlcV9pZCIsVyk7Zy5hXyhuLk4sKGIsdik9PntEWyJzZXQiXSh2LG51bGwpfSk7CnJldHVybiBEfTsKTmd3PWZ1bmN0aW9uKG49ITEsVz0hMCl7dmFyIEQ9d2luZG93O2cuSTkoRC5kb2N1bWVudCwia2V5ZG93biIsVkopO2cuSTkoRC5kb2N1bWVudCwia2V5dXAiLFZKKTtnLkk5KEQuZG9jdW1lbnQsIm1vdXNlZG93biIsVkopO2cuSTkoRC5kb2N1bWVudCwibW91c2V1cCIsVkopO24/Zy5JOShELCJ0b3VjaG1vdmUiLCgpPT57Y1UoInRvdWNobW92ZSIsMjAwKX0se3Bhc3NpdmU6ITB9KTooZy5JOShELCJyZXNpemUiLCgpPT57Y1UoInJlc2l6ZSIsMjAwKX0pLFcmJmcuSTkoRCwic2Nyb2xsIiwoKT0+e2NVKCJzY3JvbGwiLDIwMCl9KSk7CmcuSTkoRC5kb2N1bWVudCwidG91Y2hzdGFydCIsVkose3Bhc3NpdmU6ITB9KTtnLkk5KEQuZG9jdW1lbnQsInRvdWNoZW5kIixWSix7cGFzc2l2ZTohMH0pfTsKY1U9ZnVuY3Rpb24obixXKXtieVtuXXx8KGJ5W25dPSEwLHRhLkxTKCgpPT57VkooKTtieVtuXT0hMX0sVykpfTsKVko9ZnVuY3Rpb24oKXtnLnJyKCJfbGFjdCIsd2luZG93KT09bnVsbCYmKGFJKCksZy5ycigiX2xhY3QiLHdpbmRvdykpO3ZhciBuPURhdGUubm93KCk7Zy5HYigiX2xhY3QiLG4sd2luZG93KTtnLnJyKCJfZmFjdCIsd2luZG93KT09LTEmJmcuR2IoIl9mYWN0IixuLHdpbmRvdyk7KG49Zy5ycigieXRnbG9iYWwueXRVdGlsQWN0aXZpdHlDYWxsYmFja18iKSkmJm4oKX07Cmcudkk9ZnVuY3Rpb24oKXt2YXIgbj1nLnJyKCJfbGFjdCIsd2luZG93KTtyZXR1cm4gbj09bnVsbD8tMTpNYXRoLm1heChEYXRlLm5vdygpLW4sMCl9OwpnLmhwPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcga28obil9OwpnLnhvPWZ1bmN0aW9uKG4sVyl7bi5KLnNldChXLk5ILFcpO3ZhciBEPW4uVy5nZXQoVy5OSCk7aWYoRCl0cnl7RC5RNChuLnJlc29sdmUoVy5OSCkpfWNhdGNoKGIpe0QuSlkoYil9fTsKZ0U9ZnVuY3Rpb24obixXLEQsYj0hMSl7aWYoRC5pbmRleE9mKFcpPi0xKXRocm93IEVycm9yKGBEZXBzIGN5Y2xlIGZvcjogJHtXfWApO2lmKG4uTi5oYXMoVykpcmV0dXJuIG4uTi5nZXQoVyk7aWYoIW4uSi5oYXMoVykpe2lmKGIpcmV0dXJuO3Rocm93IEVycm9yKGBObyBwcm92aWRlciBmb3I6ICR7V31gKTt9Yj1uLkouZ2V0KFcpO0QucHVzaChXKTtpZihiLlBmIT09dm9pZCAwKXZhciB2PWIuUGY7ZWxzZSBpZihiLlJjKXY9YltnLkxYXT9lWihuLGJbZy5MWF0sRCk6W10sdj1iLlJjKC4uLnYpO2Vsc2UgaWYoYi5ZTCl7dj1iLllMO2xldCBrPXZbZy5MWF0/ZVoobix2W2cuTFhdLEQpOltdO3Y9bmV3IHYoLi4uayl9ZWxzZSB0aHJvdyBFcnJvcihgQ291bGQgbm90IHJlc29sdmUgcHJvdmlkZXJzIGZvcjogJHtXfWApO0QucG9wKCk7Yi5wbnx8bi5OLnNldChXLHYpO3JldHVybiB2fTsKZVo9ZnVuY3Rpb24obixXLEQpe3JldHVybiBXP1cubWFwKGI9PmIgaW5zdGFuY2VvZiBrbz9nRShuLGIua2V5LEQsITApOmdFKG4sYixEKSk6W119OwpnLnFqPWZ1bmN0aW9uKCl7WDR8fChYND1uZXcgcEhyKTtyZXR1cm4gWDR9Owp0cD1mdW5jdGlvbigpe3JldHVybiJoNXZjYyJpbiBHcCYmR3AuaDV2Y2MudHJhY2VFdmVudD8udHJhY2VCZWdpbiYmR3AuaDV2Y2MudHJhY2VFdmVudD8udHJhY2VFbmQ/MToicGVyZm9ybWFuY2UiaW4gR3AmJkdwLnBlcmZvcm1hbmNlLm1hcmsmJkdwLnBlcmZvcm1hbmNlLm1lYXN1cmU/MjowfTsKJG89ZnVuY3Rpb24obil7dmFyIFc9dHAoKTtzd2l0Y2goVyl7Y2FzZSAxOkdwLmg1dmNjLnRyYWNlRXZlbnQudHJhY2VCZWdpbigiWVRMUiIsbik7YnJlYWs7Y2FzZSAyOkdwLnBlcmZvcm1hbmNlLm1hcmsoYCR7bn0tc3RhcnRgKTticmVhaztjYXNlIDA6YnJlYWs7ZGVmYXVsdDpnLnBiKFcsInVua25vd24gdHJhY2UgdHlwZSIpfX07CnJFPWZ1bmN0aW9uKG4pe3ZhciBXPXRwKCk7c3dpdGNoKFcpe2Nhc2UgMTpHcC5oNXZjYy50cmFjZUV2ZW50LnRyYWNlRW5kKCJZVExSIixuKTticmVhaztjYXNlIDI6Vz1gJHtufS1zdGFydGA7bGV0IEQ9YCR7bn0tZW5kYDtHcC5wZXJmb3JtYW5jZS5tYXJrKEQpO0dwLnBlcmZvcm1hbmNlLm1lYXN1cmUobixXLEQpO2JyZWFrO2Nhc2UgMDpicmVhaztkZWZhdWx0OmcucGIoVywidW5rbm93biB0cmFjZSB0eXBlIil9fTsKWUtqPWZ1bmN0aW9uKG4pe3ZhciBXPUFycmF5LmZyb20obi5OLmtleXMoKSkuc29ydCgoRCxiKT0+KG4uTltiXS5wcmlvcml0eT8/MCktKG4uTltEXS5wcmlvcml0eT8/MCkpOwpmb3IobGV0IEQgb2YgVylXPW4uTltEXSxXLmpvYklkPT09dm9pZCAwfHxXLk1KfHwobi5zY2hlZHVsZXIuc08oVy5qb2JJZCksZy5WeCgwLFcuSmEsMTApKX07CmZSMj1mdW5jdGlvbihuLFcsRCl7SEd0JiZjb25zb2xlLmdyb3VwQ29sbGFwc2VkJiZjb25zb2xlLmdyb3VwRW5kJiYoY29uc29sZS5ncm91cENvbGxhcHNlZChgWyR7bi5jb25zdHJ1Y3Rvci5uYW1lfV0gJyR7bi5zdGF0ZX0nIHRvICcke1d9J2ApLGNvbnNvbGUubG9nKCJ3aXRoIG1lc3NhZ2U6ICIsRCksY29uc29sZS5ncm91cEVuZCgpKX07ClNLQz1mdW5jdGlvbihuLFcpe3ZhciBEPVcuZmlsdGVyKHY9PihuLko/P3YucHJpb3JpdHk/PzApPT09MTApLGI9Vy5maWx0ZXIodj0+KG4uSj8/di5wcmlvcml0eT8/MCkhPT0xMCk7CnJldHVybiBuLlguS0c/YXN5bmMoLi4udik9Pnthd2FpdCBKdlooRCwuLi52KTtzOShuLGIsLi4udil9OiguLi52KT0+e0lSMShELC4uLnYpOwpzOShuLGIsLi4udil9fTsKSnZaPWFzeW5jIGZ1bmN0aW9uKG4sLi4uVyl7Zy5EeSgpO2ZvcihsZXQgRCBvZiBuKXtsZXQgYjthOSgoKT0+e05qKEQubmFtZSk7dmFyIHY9cFgoKCk9PkQuY2FsbGJhY2soLi4uVykpOwpZbyh2KT9iPWcubCgid2ViX2xpZmVjeWNsZV9lcnJvcl9oYW5kbGluZ19raWxsc3dpdGNoIik/di50aGVuKCgpPT57SEkoRC5uYW1lKX0pOnYudGhlbigoKT0+e0hJKEQubmFtZSl9LGs9Pnt3aW5kb3cub25lcnJvcj8uKGsubWVzc2FnZSwiIiwwLDAsayk7CkhJKEQubmFtZSl9KTpISShELm5hbWUpfSk7CmImJmF3YWl0IGJ9fTsKczk9ZnVuY3Rpb24obixXLC4uLkQpe1c9Vy5tYXAoYj0+KHtKYTooKT0+e05qKGIubmFtZSk7cFgoKCk9PmIuY2FsbGJhY2soLi4uRCkpOwpISShiLm5hbWUpfSwKcHJpb3JpdHk6bi5KPz9iLnByaW9yaXR5Pz8wfSkpOwpXLmxlbmd0aCYmKG4uVz1uZXcgQXZqKFcpKX07CklSMT1mdW5jdGlvbihuLC4uLlcpe2cuRHkoKTtmb3IobGV0IEQgb2YgbilhOSgoKT0+e05qKEQubmFtZSk7cFgoKCk9PkQuY2FsbGJhY2soLi4uVykpOwpISShELm5hbWUpfSl9OwpOaj1mdW5jdGlvbihuKXtmWCYmbiYmJG8obil9OwpIST1mdW5jdGlvbihuKXtmWCYmbiYmckUobil9OwpwWD1mdW5jdGlvbihuKXtpZihnLmwoIndlYl9saWZlY3ljbGVfZXJyb3JfaGFuZGxpbmdfa2lsbHN3aXRjaCIpKXJldHVybiBuKCk7dHJ5e3JldHVybiBuKCl9Y2F0Y2goVyl7d2luZG93Lm9uZXJyb3I/LihXLm1lc3NhZ2UsIiIsMCwwLFcpfX07CkliPWZ1bmN0aW9uKCl7SnB8fChKcD1uZXcgbUV3KTtyZXR1cm4gSnB9OwpBcD1mdW5jdGlvbigpe1NafHwoU1o9cHcoZy5BcigiV09SS0VSX1NFUklBTElaQVRJT05fVVJMIikpKTtyZXR1cm4gU1p8fHZvaWQgMH07CktYPWZ1bmN0aW9uKCl7dmFyIG49QXAoKTttM3x8bj09PXZvaWQgMHx8KG0zPVhNKG4pKTtyZXR1cm4gbTN9OwpaQT1mdW5jdGlvbihuLFcpe3ZhciBEPU85KFcpO2lmKG4uTltEXSlyZXR1cm4gbi5OW0RdO3ZhciBiPU9iamVjdC5rZXlzKG4uc3RvcmUpfHxbXTtpZihiLmxlbmd0aDw9MSYmTzkoVyk9PT1iWzBdKXJldHVybiBiO3ZhciB2PVtdO2ZvcihsZXQgaD0wO2g8Yi5sZW5ndGg7aCsrKXtsZXQgeD1iW2hdLnNwbGl0KCIvIik7aWYoUEkoVy5hdXRoLHhbMF0pKXt2YXIgaz1XLmlzSnNwYjtQSShrPT09dm9pZCAwPyJ1bmRlZmluZWQiOms/InRydWUiOiJmYWxzZSIseFsxXSkmJlBJKFcuY3R0QXV0aEluZm8seFsyXSkmJihrPVcudGllcixrPWs9PT12b2lkIDA/InVuZGVmaW5lZCI6SlNPTi5zdHJpbmdpZnkoayksUEkoayx4WzNdKSYmdi5wdXNoKGJbaF0pKX19cmV0dXJuIG4uTltEXT12fTsKUEk9ZnVuY3Rpb24obixXKXtyZXR1cm4gbj09PXZvaWQgMHx8bj09PSJ1bmRlZmluZWQiPyEwOm49PT1XfTsKTzk9ZnVuY3Rpb24obil7cmV0dXJuW24uYXV0aD09PXZvaWQgMD8idW5kZWZpbmVkIjpuLmF1dGgsbi5pc0pzcGI9PT12b2lkIDA/InVuZGVmaW5lZCI6bi5pc0pzcGIsbi5jdHRBdXRoSW5mbz09PXZvaWQgMD8idW5kZWZpbmVkIjpuLmN0dEF1dGhJbmZvLG4udGllcj09PXZvaWQgMD8idW5kZWZpbmVkIjpuLnRpZXJdLmpvaW4oIi8iKX07ClU5PWZ1bmN0aW9uKCl7cmV0dXJuIGcubCgiaHRtbDVfc2VuZF9xb2Vfb25fZ2VsIil8fGcubCgid2ViX3NlbmRfdnNzM19pc29sYXRlZF9wYXlsb2FkIil9OwppeT1mdW5jdGlvbihuKXt5Uj1uO1U5KCkmJihnLnFpLnl0TG9nZ2luZ1RyYW5zcG9ydFJlZ2lzdGVyZWRDbGllbnRDdG9yXz1uKTtFOT1uZXcgbn07CnV5PWZ1bmN0aW9uKG4pe3JldHVybiBuP246VTkoKT95Unx8Zy5xaS55dExvZ2dpbmdUcmFuc3BvcnRSZWdpc3RlcmVkQ2xpZW50Q3Rvcl98fG51bGw6bnVsbH07CmRFPWZ1bmN0aW9uKCl7dmFyIG49Zy5ycigieXQubG9nZ2luZy5pbXMiKTtufHwobj1uZXcgb2IsZy5HYigieXQubG9nZ2luZy5pbXMiLG4pKTtyZXR1cm4gbn07CktfMj1mdW5jdGlvbigpe2lmKHR5cGVvZiBXb3JrZXI9PT0iZnVuY3Rpb24iJiZBcCgpJiYhenApe3ZhciBuPUQ9PntEPUQuZGF0YTtpZihELm9wPT09InNlcmlhbGl6ZWRHZWxCYXRjaCIpe3ZhciBiPWx5LmdldChELmtleSk7YiYmKFRwKEQuc2VyaWFsaXplZEJhdGNoLGIuY2xpZW50LGIucmVzb2x2ZSxiLm5ldHdvcmtsZXNzT3B0aW9ucyxiLmlzSXNvbGF0ZWQsYi51c2VWU1NFbmRwb2ludCxiLmRhbmdlcm91c0xvZ1RvVmlzaXRvclNlc3Npb24sYi5yZXF1ZXN0c091dHN0YW5kaW5nKSxseS5kZWxldGUoRC5rZXkpKX19LFc9S1goKTsKVyYmKFcuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsbiksVy5vbmVycm9yPSgpPT57bHkuY2xlYXIoKX0pOwp6cD0hMH19OwpPR3g9ZnVuY3Rpb24obixXKXtpZihuLmVuZHBvaW50PT09ImxvZ19ldmVudCIpe2paKG4pO3ZhciBEPUNYKG4pLGI9Qkkobi5wYXlsb2FkKXx8IiIsdj1GNChiKSxrPTIwMDtpZih2KXtpZih2LmVuYWJsZWQ9PT0hMSYmIWcubCgid2ViX3BheWxvYWRfcG9saWN5X2Rpc2FibGVkX2tpbGxzd2l0Y2giKSlyZXR1cm47az13RSh2LnRpZXIpO2lmKGs9PT00MDApe01qKG4sVyk7cmV0dXJufX1SYltEXT0hMDtEPXtjdHRBdXRoSW5mbzpELGlzSnNwYjohMSx0aWVyOmt9O2RFKCkuc3RvcmVQYXlsb2FkKEQsbi5wYXlsb2FkKTtRUihXLCExLEQsVlIoYikpfX07ClBXMT1mdW5jdGlvbihuLFcsRCl7aWYoVy5lbmRwb2ludD09PSJsb2dfZXZlbnQiKXtqWih2b2lkIDAsVyk7dmFyIGI9Q1goVywhMCksdj1GNChuKSxrPTIwMDtpZih2KXtpZih2LmVuYWJsZWQ9PT0hMSYmIWcubCgid2ViX3BheWxvYWRfcG9saWN5X2Rpc2FibGVkX2tpbGxzd2l0Y2giKSlyZXR1cm47az13RSh2LnRpZXIpO2lmKGs9PT00MDApe2NJKG4sVyxEKTtyZXR1cm59fVJiW2JdPSEwO2I9e2N0dEF1dGhJbmZvOmIsaXNKc3BiOiEwLHRpZXI6a307ZEUoKS5zdG9yZVBheWxvYWQoYixZdihXLnBheWxvYWQpKTtRUihELCEwLGIsVlIobikpfX07ClFSPWZ1bmN0aW9uKG4sVz0hMSxELGI9ITEpe24mJml5KG4pO249djAoInR2aHRtbDVfbG9nZ2luZ19tYXhfYmF0Y2hfYWRzX2ZvcmsiKXx8djAoInR2aHRtbDVfbG9nZ2luZ19tYXhfYmF0Y2giKXx8djAoIndlYl9sb2dnaW5nX21heF9iYXRjaCIpfHwxMDA7dmFyIHY9KDAsZy5SKSgpLGs9YWIoVyxELnRpZXIpLGg9ay5YO2ImJihrLk49ITApO2I9MDtEJiYoYj1kRSgpLmdldFNlcXVlbmNlQ291bnQoRCkpO2I+PTFFMz9uVSh7d3JpdGVUaGVuU2VuZDohMH0sVyxELnRpZXIpOmI+PW4/V3N8fChXcz1EdigoKT0+e25VKHt3cml0ZVRoZW5TZW5kOiEwfSxXLEQudGllcik7V3M9dm9pZCAwfSwwKSk6di1oPj0xMCYmKGJSKFcsRC50aWVyKSxrLlg9dil9OwpNaj1mdW5jdGlvbihuLFcpe2lmKG4uZW5kcG9pbnQ9PT0ibG9nX2V2ZW50Iil7Zy5sKCJtb3JlX2FjY3VyYXRlX2dlbF9wYXJzZXIiKSYmZEUoKS5zdG9yZVBheWxvYWQoe2lzSnNwYjohMX0sbi5wYXlsb2FkKTtqWihuKTt2YXIgRD1DWChuKSxiPW5ldyBNYXA7Yi5zZXQoRCxbbi5wYXlsb2FkXSk7dmFyIHY9Qkkobi5wYXlsb2FkKXx8IiI7KG49dXkoVykpJiZpeShuKTtyZXR1cm4gbmV3IGcuWDEoKGssaCk9PntFOSYmRTkuaXNSZWFkeSgpP3ZzKGIsRTksayxoLHtieXBhc3NOZXR3b3JrbGVzczohMH0sITAsVlIodikpOmsoKX0pfX07CmNJPWZ1bmN0aW9uKG4sVyxEKXtpZihXLmVuZHBvaW50PT09ImxvZ19ldmVudCIpe2paKHZvaWQgMCxXKTt2YXIgYj1DWChXLCEwKSx2PW5ldyBNYXA7di5zZXQoYixbWXYoVy5wYXlsb2FkKV0pOyhXPXV5KEQpKSYmaXkoVyk7cmV0dXJuIG5ldyBnLlgxKGs9PntFOSYmRTkuaXNSZWFkeSgpP2tBKHYsRTksayx7YnlwYXNzTmV0d29ya2xlc3M6ITB9LCEwLFZSKG4pKTprKCl9KX19OwpDWD1mdW5jdGlvbihuLFc9ITEpe3ZhciBEPSIiO2lmKG4uZGFuZ2Vyb3VzTG9nVG9WaXNpdG9yU2Vzc2lvbilEPSJ2aXNpdG9yT25seUFwcHJvdmVkS2V5IjtlbHNlIGlmKG4uY3R0QXV0aEluZm8pe2lmKFcpe1c9bi5jdHRBdXRoSW5mby50b2tlbjtEPW4uY3R0QXV0aEluZm87bGV0IGI9bmV3IGg2O0QudmlkZW9JZD9iLnNldFZpZGVvSWQoRC52aWRlb0lkKTpELnBsYXlsaXN0SWQmJkQyKGIsMix4QSxXSChELnBsYXlsaXN0SWQpKTtMVVtXXT1ifWVsc2UgVz1uLmN0dEF1dGhJbmZvLEQ9e30sVy52aWRlb0lkP0QudmlkZW9JZD1XLnZpZGVvSWQ6Vy5wbGF5bGlzdElkJiYoRC5wbGF5bGlzdElkPVcucGxheWxpc3RJZCksZXlbbi5jdHRBdXRoSW5mby50b2tlbl09RDtEPW4uY3R0QXV0aEluZm8udG9rZW59cmV0dXJuIER9OwpuVT1mdW5jdGlvbihuPXt9LFc9ITEsRCl7bmV3IGcuWDEoKGIsdik9Pnt2YXIgaz1hYihXLEQpLGg9ay5OO2suTj0hMTtpZihnLmwoImVuYWJsZV93ZWJfdGllcmVkX2dlbCIpJiZnLmwoIndlYl92c3Nfcm91dGluZ19jaGVja19hbGxfdGllcl9wb2xpY2llcyIpKXtsZXQgeD1hYihXLDMwMCksTD1hYihXLDIwMCk7aD1ofHx4Lk58fEwuTjt4Lk49ITE7TC5OPSExfWc0KGsuVyk7ZzQoay5KKTtrLko9MDtFOSYmRTkuaXNSZWFkeSgpP0Q9PT12b2lkIDAmJmcubCgiZW5hYmxlX3dlYl90aWVyZWRfZ2VsIik/cTEoYix2LG4sVywzMDAsaCk6cTEoYix2LG4sVyxELGgpOihiUihXLEQpLGIoKSl9KX07CnExPWZ1bmN0aW9uKG4sVyxEPXt9LGI9ITEsdj0yMDAsaz0hMSl7dmFyIGg9RTkseD1uZXcgTWFwLEw9bmV3IE1hcCxlPXtpc0pzcGI6YixjdHRBdXRoSW5mbzp2b2lkIDAsdGllcjp2fSxHPXtpc0pzcGI6YixjdHRBdXRoSW5mbzp2b2lkIDB9O2lmKGIpe2ZvcihsZXQgciBvZiBPYmplY3Qua2V5cyhSYikpVz1nLmwoImVuYWJsZV93ZWJfdGllcmVkX2dlbCIpP2RFKCkuc21hcnRFeHRyYWN0TWF0Y2hpbmdFbnRyaWVzKHtrZXlzOltlLEddLHNpemVMaW1pdDoxRTN9KTpkRSgpLmV4dHJhY3RNYXRjaGluZ0VudHJpZXMoe2lzSnNwYjohMCxjdHRBdXRoSW5mbzpyfSksVy5sZW5ndGg+MCYmeC5zZXQocixXKSwoZy5sKCJ3ZWJfZnBfdmlhX2pzcGJfYW5kX2pzb24iKSYmRC53cml0ZVRoZW5TZW5kfHwhZy5sKCJ3ZWJfZnBfdmlhX2pzcGJfYW5kX2pzb24iKSkmJmRlbGV0ZSBSYltyXTtrQSh4LGgsbixELCExLGspfWVsc2V7Zm9yKGxldCByIG9mIE9iamVjdC5rZXlzKFJiKSl4PWcubCgiZW5hYmxlX3dlYl90aWVyZWRfZ2VsIik/CmRFKCkuc21hcnRFeHRyYWN0TWF0Y2hpbmdFbnRyaWVzKHtrZXlzOlt7aXNKc3BiOiExLGN0dEF1dGhJbmZvOnIsdGllcjp2fSx7aXNKc3BiOiExLGN0dEF1dGhJbmZvOnJ9XSxzaXplTGltaXQ6MUUzfSk6ZEUoKS5leHRyYWN0TWF0Y2hpbmdFbnRyaWVzKHtpc0pzcGI6ITEsY3R0QXV0aEluZm86cn0pLHgubGVuZ3RoPjAmJkwuc2V0KHIseCksKGcubCgid2ViX2ZwX3ZpYV9qc3BiX2FuZF9qc29uIikmJkQud3JpdGVUaGVuU2VuZHx8IWcubCgid2ViX2ZwX3ZpYV9qc3BiX2FuZF9qc29uIikpJiZkZWxldGUgUmJbcl07dnMoTCxoLG4sVyxELCExLGspfX07CmJSPWZ1bmN0aW9uKG49ITEsVz0yMDApe3ZhciBEPSgpPT57blUoe3dyaXRlVGhlblNlbmQ6ITB9LG4sVyl9LGI9YWIobixXKSx2PWI9PT1HVXx8Yj09PXQ2PzVFMzpaR1o7CmcubCgid2ViX2dlbF90aW1lb3V0X2NhcCIpJiYhYi5KJiYodj1EdigoKT0+e0QoKX0sdiksYi5KPXYpOwpnNChiLlcpO3Y9Zy5BcigiTE9HR0lOR19CQVRDSF9USU1FT1VUIix2MCgid2ViX2dlbF9kZWJvdW5jZV9tcyIsMUU0KSk7Zy5sKCJzaG9ydGVuX2luaXRpYWxfZ2VsX2JhdGNoX3RpbWVvdXQiKSYmJEEmJih2PVVFdyk7dj1EdigoKT0+e3YwKCJnZWxfbWluX2JhdGNoX3NpemUiKT4wP2RFKCkuZ2V0U2VxdWVuY2VDb3VudCh7Y3R0QXV0aEluZm86dm9pZCAwLGlzSnNwYjpuLHRpZXI6V30pPj15dlMmJkQoKTpEKCl9LHYpOwpiLlc9dn07CnZzPWZ1bmN0aW9uKG4sVyxELGIsdj17fSxrLGgpe3ZhciB4PU1hdGgucm91bmQoKDAsZy5SKSgpKSxMPW4uc2l6ZSxlPXI0KGgpO2ZvcihsZXQgW0cscl1vZiBuKXtuPUc7aD1yO2xldCBOPWcuTmMoe2NvbnRleHQ6Zy5VSihXLmNvbmZpZ198fGcuUzkoKSl9KTtpZighZy5ZMihoKSYmIWcubCgidGhyb3dfZXJyX3doZW5fbG9nZXZlbnRfbWFsZm9ybWVkX2tpbGxzd2l0Y2giKSl7YigpO2JyZWFrfU4uZXZlbnRzPWg7KGg9ZXlbbl0pJiZFdkMoTixuLGgpO2RlbGV0ZSBleVtuXTtsZXQgSD1uPT09InZpc2l0b3JPbmx5QXBwcm92ZWRLZXkiO2lHaihOLHgsSCk7c3kodik7bGV0IEE9ej0+e2cubCgic3RhcnRfY2xpZW50X2djZiIpJiZ0YS5MUyhhc3luYygpPT57YXdhaXQgTjEoeil9KTsKTC0tO0x8fEQoKX0seT0wLFQ9KCk9Pnt5Kys7CmlmKHYuYnlwYXNzTmV0d29ya2xlc3MmJnk9PT0xKXRyeXtnLklJKFcsZSxOLHBVKHt3cml0ZVRoZW5TZW5kOiEwfSxILEEsVCxrKSksJEE9ITF9Y2F0Y2goeil7T3QoeiksYigpfUwtLTtMfHxEKCl9Owp0cnl7Zy5JSShXLGUsTixwVSh2LEgsQSxULGspKSwkQT0hMX1jYXRjaCh6KXtPdCh6KSxiKCl9fX07CmtBPWZ1bmN0aW9uKG4sVyxELGI9e30sdixrKXt2YXIgaD1NYXRoLnJvdW5kKCgwLGcuUikoKSkseD17dmFsdWU6bi5zaXplfSxMPW5ldyBNYXAoWy4uLm5dKTtmb3IobGV0IFtUXW9mIEwpe3ZhciBlPVQsRz1uLmdldChlKTtMPW5ldyB1RjI7dmFyIHI9Vy5jb25maWdffHxnLlM5KCksTj1uZXcgWUEsSD1uZXcgSHM7Zy5TRShILDEsci5NYik7Zy5TRShILDIsci5FRSk7S24oSCwxNixyLkZkKTtnLlNFKEgsMTcsci5pbm5lcnR1YmVDb250ZXh0Q2xpZW50VmVyc2lvbik7aWYoci5jUil7dmFyIEE9ci5jUix5PW5ldyBpOTtBLmNvbGRDb25maWdEYXRhJiZnLlNFKHksMSxBLmNvbGRDb25maWdEYXRhKTtBLmFwcEluc3RhbGxEYXRhJiZnLlNFKHksNixBLmFwcEluc3RhbGxEYXRhKTtBLmNvbGRIYXNoRGF0YSYmZy5TRSh5LDMsQS5jb2xkSGFzaERhdGEpO0EuaG90SGFzaERhdGEmJnkuVyhBLmhvdEhhc2hEYXRhKTskOShILGk5LDYyLHkpfShBPWcucWkuZGV2aWNlUGl4ZWxSYXRpbykmJgpBIT0xJiZveihILDY1LGcuQV8oQSkpO0E9a1QoKTtBIT09IiImJmcuU0UoSCw1NCxBKTtBPWh5KCk7aWYoQS5sZW5ndGg+MCl7eT1uZXcgZlU7Zm9yKGxldCB6PTA7ejxBLmxlbmd0aDt6Kyspe2xldCBDPW5ldyBKNjtnLlNFKEMsMSxBW3pdLmtleSk7RDIoQywyLEl2LFdIKEFbel0udmFsdWUpKTtOSCh5LDE1LEo2LEMpfSQ5KE4sZlUsNSx5KX1BNyhyLEgpO21UKE4pO0tQKEgpO09KKHIsSCk7UHooSCk7Zy5sKCJzdGFydF9jbGllbnRfZ2NmIikmJlptKEgpO2cuQXIoIkRFTEVHQVRFRF9TRVNTSU9OX0lEIikmJiFnLmwoInBhZ2VpZF9hc19oZWFkZXJfd2ViIikmJihyPW5ldyBTeSxnLlNFKHIsMyxnLkFyKCJERUxFR0FURURfU0VTU0lPTl9JRCIpKSk7IWcubCgiZmlsbF9kZWxlZ2F0ZV9jb250ZXh0X2luX2dlbF9raWxsc3dpdGNoIikmJihBPWcuQXIoIklOTkVSVFVCRV9DT05URVhUX1NFUklBTElaRURfREVMRUdBVElPTl9DT05URVhUIikpJiYoeT1nZShOLFN5LDMpfHxuZXcgU3ksCnI9TixBPWcuU0UoeSwxOCxBKSwkOShyLFN5LDMsQSkpO3I9SDtBPWcuQXIoIkRFVklDRSIsIiIpO2ZvcihsZXQgW3osQ11vZiBPYmplY3QuZW50cmllcyhnLml3KEEpKSlBPXosQT09PSJjYnJhbmQiP2cuU0UociwxMixDKTpBPT09ImNtb2RlbCI/Zy5TRShyLDEzLEMpOkE9PT0iY2JyIj9nLlNFKHIsODcsQyk6QT09PSJjYnJ2ZXIiP2cuU0Uociw4OCxDKTpBPT09ImNvcyI/Zy5TRShyLDE4LEMpOkE9PT0iY29zdmVyIj9nLlNFKHIsMTksQyk6QT09PSJjcGxhdGZvcm0iJiZLbihyLDQyLGhxaChDKSk7Zy5sKCJ3ZWJfYXR0ZW50aW9uX2xvZ2dpbmdfZW5hYmxlZCIpJiYob3ooSCw1NSxnLnlQKHdpbmRvdy5pbm5lcldpZHRoKSksb3ooSCw1NixnLnlQKHdpbmRvdy5pbm5lckhlaWdodCkpKTtOLlcoSCk7JDkoTCxZQSwxLE4pO2lmKEg9TFVbZV0pYTp7aWYoSC5FMSgpKU49MTtlbHNlIGlmKEguZ2V0UGxheWxpc3RJZCgpKU49MjtlbHNlIGJyZWFrIGE7JDkoTCxoNiw0LEgpO0g9Z2UoTCwKWUEsMSl8fG5ldyBZQTtyPWdlKEgsU3ksMyl8fG5ldyBTeTtBPW5ldyBBNjtBLnNldFRva2VuKGUpO0tuKEEsMSxOKTtOSChyLDEyLEE2LEEpOyQ5KEgsU3ksMyxyKX1kZWxldGUgTFVbZV07ZT1lPT09InZpc2l0b3JPbmx5QXBwcm92ZWRLZXkiO21yKCl8fElZKEwsMixoKTshZSYmKE49Zy5BcigiRVZFTlRfSUQiKSkmJihIPUtVKCkscj1uZXcgT3ksZy5TRShyLDEsTiksSVkociwyLEgpLCQ5KEwsT3ksNSxyKSk7c3koYik7aWYoZy5sKCJqc3BiX3NlcmlhbGl6ZV93aXRoX3dvcmtlciIpJiYoTj1LWCgpKSYmYi53cml0ZVRoZW5TZW5kKXtseS5zZXQoUHMse2NsaWVudDpXLHJlc29sdmU6RCxuZXR3b3JrbGVzc09wdGlvbnM6Yixpc0lzb2xhdGVkOnYsdXNlVlNTRW5kcG9pbnQ6ayxkYW5nZXJvdXNMb2dUb1Zpc2l0b3JTZXNzaW9uOmUscmVxdWVzdHNPdXRzdGFuZGluZzp4fSk7Ti5wb3N0TWVzc2FnZSh7b3A6ImdlbEJhdGNoVG9TZXJpYWxpemUiLGJhdGNoUmVxdWVzdDpZdihMKSxjbGllbnRFdmVudHM6RywKa2V5OlBzfSk7UHMrKzticmVha31pZihHKXtOPVtdO2ZvcihIPTA7SDxHLmxlbmd0aDtIKyspdHJ5e04ucHVzaChuZXcgWnYoR1tIXSkpfWNhdGNoe090KG5ldyBnLlF4KCJUcmFuc3BvcnQgZmFpbGVkIHRvIGRlc2VyaWFsaXplICIrU3RyaW5nKEdbSF0pKSl9Rz1OfWVsc2UgRz1bXTtmb3IobGV0IHogb2YgRylOSChMLDMsWnYseik7Rz17c3RhcnRUaW1lOigwLGcuUikoKSx0aWNrczp7fSxpbmZvczp7fX07TD1MLmJZKCk7Ry50aWNrcy5nZWxqc3BjPSgwLGcuUikoKTtnLmwoImxvZ19qc3BiX3NlcmlhbGl6ZV9sYXRlbmN5IikmJkYzKCJnZWxfanNwYl9zZXJpYWxpemUiLEcse3NhbXBsZVJhdGU6LjF9KTtUcChMLFcsRCxiLHYsayxlLHgpfX07ClRwPWZ1bmN0aW9uKG4sVyxELGI9e30sdixrLGgseD17dmFsdWU6MH0pe2s9cjQoayk7Yj1wVShiLGgsTD0+e2cubCgic3RhcnRfY2xpZW50X2djZiIpJiZ0YS5MUyhhc3luYygpPT57YXdhaXQgTjEoTCl9KTsKeC52YWx1ZS0tO3gudmFsdWV8fEQoKX0sKCk9Pnt4LnZhbHVlLS07CngudmFsdWV8fEQoKX0sdik7CmIuaGVhZGVyc1siQ29udGVudC1UeXBlIl09ImFwcGxpY2F0aW9uL2pzb24rcHJvdG9idWYiO2IucG9zdEJvZHlGb3JtYXQ9IkpTUEIiO2IucG9zdEJvZHk9bjtnLklJKFcsaywiIixiKTskQT0hMX07CnN5PWZ1bmN0aW9uKG4pe2cubCgiYWx3YXlzX3NlbmRfYW5kX3dyaXRlIikmJihuLndyaXRlVGhlblNlbmQ9ITEpfTsKcFU9ZnVuY3Rpb24obixXLEQsYix2KXtuPXtyZXRyeTohMCxvblN1Y2Nlc3M6RCxvbkVycm9yOmIsbmV0d29ya2xlc3NPcHRpb25zOm4sZGFuZ2Vyb3VzTG9nVG9WaXNpdG9yU2Vzc2lvbjpXLFRVOiEhdixoZWFkZXJzOnt9LHBvc3RCb2R5Rm9ybWF0OiIiLHBvc3RCb2R5OiIiLGNvbXByZXNzOmcubCgiY29tcHJlc3NfZ2VsIil8fGcubCgiY29tcHJlc3NfZ2VsX2xyIil9O21yKCkmJihuLmhlYWRlcnNbIlgtR29vZy1SZXF1ZXN0LVRpbWUiXT1KU09OLnN0cmluZ2lmeShNYXRoLnJvdW5kKCgwLGcuUikoKSkpKTtyZXR1cm4gbn07CmlHaj1mdW5jdGlvbihuLFcsRCl7bXIoKXx8KG4ucmVxdWVzdFRpbWVNcz1TdHJpbmcoVykpO2cubCgidW5zcGxpdF9nZWxfcGF5bG9hZHNfaW5fbG9ncyIpJiYobi51bnNwbGl0R2VsUGF5bG9hZHNJbkxvZ3M9ITApOyFEJiYoVz1nLkFyKCJFVkVOVF9JRCIpKSYmKEQ9S1UoKSxuLnNlcmlhbGl6ZWRDbGllbnRFdmVudElkPXtzZXJpYWxpemVkRXZlbnRJZDpXLGNsaWVudENvdW50ZXI6U3RyaW5nKEQpfSl9OwpLVT1mdW5jdGlvbigpe3ZhciBuPWcuQXIoIkJBVENIX0NMSUVOVF9DT1VOVEVSIil8fDA7bnx8KG49TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjY1NTM1LzIpKTtuKys7bj42NTUzNSYmKG49MSk7Zy5TSCgiQkFUQ0hfQ0xJRU5UX0NPVU5URVIiLG4pO3JldHVybiBufTsKRXZDPWZ1bmN0aW9uKG4sVyxEKXtpZihELnZpZGVvSWQpdmFyIGI9IlZJREVPIjtlbHNlIGlmKEQucGxheWxpc3RJZCliPSJQTEFZTElTVCI7ZWxzZSByZXR1cm47bi5jcmVkZW50aWFsVHJhbnNmZXJUb2tlblRhcmdldElkPUQ7bi5jb250ZXh0PW4uY29udGV4dHx8e307bi5jb250ZXh0LnVzZXI9bi5jb250ZXh0LnVzZXJ8fHt9O24uY29udGV4dC51c2VyLmNyZWRlbnRpYWxUcmFuc2ZlclRva2Vucz1be3Rva2VuOlcsc2NvcGU6Yn1dfTsKalo9ZnVuY3Rpb24obixXKXt2YXIgRD1nLnJyKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5lbmFibGVTY3JhcGluZ0ZvclRlc3QiKSxiPWJiKCJpbF9wYXlsb2FkX3NjcmFwaW5nIik7Yj0oYiE9PXZvaWQgMD9TdHJpbmcoYik6IiIpPT09ImVuYWJsZV9pbF9wYXlsb2FkX3NjcmFwaW5nIjtpZighRClpZihiKVV5PVtdLGcuR2IoInl0LmxvZ2dpbmcudHJhbnNwb3J0LmVuYWJsZVNjcmFwaW5nRm9yVGVzdCIsITApLGcuR2IoInl0LmxvZ2dpbmcudHJhbnNwb3J0LnNjcmFwZWRQYXlsb2Fkc0ZvclRlc3RpbmciLFV5KSxnLkdiKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5wYXlsb2FkVG9TY3JhcGUiLCJ2aXN1YWxFbGVtZW50U2hvd24gdmlzdWFsRWxlbWVudEhpZGRlbiB2aXN1YWxFbGVtZW50QXR0YWNoZWQgc2NyZWVuQ3JlYXRlZCB2aXN1YWxFbGVtZW50R2VzdHVyZWQgdmlzdWFsRWxlbWVudFN0YXRlQ2hhbmdlZCIuc3BsaXQoIiAiKSksZy5HYigieXQubG9nZ2luZy50cmFuc3BvcnQuZ2V0U2NyYXBlZFBheWxvYWRGcm9tQ2xpZW50RXZlbnRzRnVuY3Rpb24iKSwKZy5HYigieXQubG9nZ2luZy50cmFuc3BvcnQuc2NyYXBlQ2xpZW50RXZlbnQiLCEwKTtlbHNlIHJldHVybjtEPWcucnIoInl0LmxvZ2dpbmcudHJhbnNwb3J0LnNjcmFwZWRQYXlsb2Fkc0ZvclRlc3RpbmciKTtiPWcucnIoInl0LmxvZ2dpbmcudHJhbnNwb3J0LnBheWxvYWRUb1NjcmFwZSIpO1cmJihXPVcucGF5bG9hZCwoVz1nLnJyKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5nZXRTY3JhcGVkUGF5bG9hZEZyb21DbGllbnRFdmVudHNGdW5jdGlvbiIpLmJpbmQoVykoKSkmJkQucHVzaChXKSk7Vz1nLnJyKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5zY3JhcGVDbGllbnRFdmVudCIpO2lmKGImJmIubGVuZ3RoPj0xKWZvcihsZXQgdj0wO3Y8Yi5sZW5ndGg7disrKW4mJm4ucGF5bG9hZFtiW3ZdXSYmKFc/RC5wdXNoKG4ucGF5bG9hZCk6RC5wdXNoKChuPy5wYXlsb2FkKVtiW3ZdXSkpO2cuR2IoInl0LmxvZ2dpbmcudHJhbnNwb3J0LnNjcmFwZWRQYXlsb2Fkc0ZvclRlc3RpbmciLEQpfTsKbXI9ZnVuY3Rpb24oKXtyZXR1cm4gZy5sKCJ1c2VfcmVxdWVzdF90aW1lX21zX2hlYWRlciIpfHxnLmwoImxyX3VzZV9yZXF1ZXN0X3RpbWVfbXNfaGVhZGVyIil9OwpEdj1mdW5jdGlvbihuLFcpe3JldHVybiBnLmwoInRyYW5zcG9ydF91c2Vfc2NoZWR1bGVyIik9PT0hMT9nLm4kKG4sVyk6Zy5sKCJsb2dnaW5nX2F2b2lkX2Jsb2NraW5nX2R1cmluZ19uYXZpZ2F0aW9uIil8fGcubCgibHJfbG9nZ2luZ19hdm9pZF9ibG9ja2luZ19kdXJpbmdfbmF2aWdhdGlvbiIpP2cuY0IoMCwoKT0+e0liKCkuY3VycmVudFN0YXRlPT09Im5vbmUiP24oKTpJYigpLmluc3RhbGwoe25vbmU6e2NhbGxiYWNrOm59fSl9LFcpOmcuY0IoMCxuLFcpfTsKZzQ9ZnVuY3Rpb24obil7Zy5sKCJ0cmFuc3BvcnRfdXNlX3NjaGVkdWxlciIpP3RhLnNPKG4pOndpbmRvdy5jbGVhclRpbWVvdXQobil9OwpOMT1hc3luYyBmdW5jdGlvbihuKXtuPW4/LnJlc3BvbnNlQ29udGV4dD8uZ2xvYmFsQ29uZmlnR3JvdXA7dmFyIFc9Zy53KG4sb3Z0KSxEPW4/LmhvdEhhc2hEYXRhLGI9Zy53KG4sZEUyKSx2PW4/LmNvbGRIYXNoRGF0YSxrPWcucWooKS5yZXNvbHZlKGcuaHAoZy5YMykpO2smJihEJiYoVz9hd2FpdCBIeihrLEQsVyk6YXdhaXQgSHooayxEKSksdiYmKGI/YXdhaXQgZlAoayx2LGIpOmF3YWl0IGZQKGssdikpKTtXPW4/LnJhd0ZpbmNoU3RhdGljQ29uZmlnR3JvdXA7KG49bj8uZmluY2hTdGF0aWNIYXNoRGF0YSk/KEQ9Zy5xaigpLnJlc29sdmUoZy5ocCh6X3QpKSk/YXdhaXQgRC5OVSh7Y29uZmlnOld8fHt9LFlVOm58fCIifSk6KFd8fG4pJiZaRShuZXcgZy5ReCgiRmluY2hDb25maWdNYW5hZ2VyU2VydmljZSBpcyBub3QgcHJlc2VudCwgYnV0IEZpbmNoIGNvbmZpZyBkYXRhIGlzIHByZXNlbnQuIikpOlcmJlpFKG5ldyBnLlF4KCJGaW5jaCBjb25maWcgZGF0YSBpcyBwcmVzZW50LCBidXQgaGFzaCBpcyBtaXNzaW5nLiIpKX07CmFiPWZ1bmN0aW9uKG4sVz0yMDApe3JldHVybiBuP1c9PT0zMDA/R1U6bFJDOlc9PT0zMDA/dDY6VGdpfTsKRjQ9ZnVuY3Rpb24obil7aWYoZy5sKCJlbmFibGVfd2ViX3RpZXJlZF9nZWwiKSl7bj15NFtufHwiIl07dmFyIFc9Zy5xaigpLnJlc29sdmUoZy5ocChnLlgzKSk/LkxYKCk/LmxvZ2dpbmdIb3RDb25maWc/LmV2ZW50TG9nZ2luZ0NvbmZpZz8ucGF5bG9hZFBvbGljaWVzO2lmKFcpZm9yKGxldCBEPTA7RDxXLmxlbmd0aDtEKyspaWYoV1tEXS5wYXlsb2FkTnVtYmVyPT09bilyZXR1cm4gV1tEXX19OwpCST1mdW5jdGlvbihuKXtuPU9iamVjdC5rZXlzKG4pO2ZvcihsZXQgVyBvZiBuKWlmKHk0W1ddKXJldHVybiBXfTsKd0U9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgIkRFTEFZRURfRVZFTlRfVElFUl9VTlNQRUNJRklFRCI6cmV0dXJuIDA7Y2FzZSAiREVMQVlFRF9FVkVOVF9USUVSX0RFRkFVTFQiOnJldHVybiAxMDA7Y2FzZSAiREVMQVlFRF9FVkVOVF9USUVSX0RJU1BBVENIX1RPX0VNUFRZIjpyZXR1cm4gMjAwO2Nhc2UgIkRFTEFZRURfRVZFTlRfVElFUl9GQVNUIjpyZXR1cm4gMzAwO2Nhc2UgIkRFTEFZRURfRVZFTlRfVElFUl9JTU1FRElBVEUiOnJldHVybiA0MDA7ZGVmYXVsdDpyZXR1cm4gMjAwfX07ClZSPWZ1bmN0aW9uKG4pe3JldHVybiBuPT09ImdlbERlYnVnZ2luZ0V2ZW50Inx8bj09PSJ3YXRjaFRpbWVTZWdtZW50In07CnI0PWZ1bmN0aW9uKG49ITEpe3JldHVybiBuJiZnLmwoInZzc190aHJvdWdoX2dlbF92aWRlb19zdGF0cyIpPyJ2aWRlb19zdGF0cyI6ImxvZ19ldmVudCJ9Owp1Uj1mdW5jdGlvbihuLFcsRCxiPXt9KXt2YXIgdj17fSxrPU1hdGgucm91bmQoYi50aW1lc3RhbXB8fCgwLGcuUikoKSk7di5ldmVudFRpbWVNcz1rPE51bWJlci5NQVhfU0FGRV9JTlRFR0VSP2s6MDt2W25dPVc7bj1nLnZJKCk7di5jb250ZXh0PXtsYXN0QWN0aXZpdHlNczpTdHJpbmcoYi50aW1lc3RhbXB8fCFpc0Zpbml0ZShuKT8tMTpuKX07Yi5zZXF1ZW5jZUdyb3VwJiYhZy5sKCJ3ZWJfZ2VsX3NlcXVlbmNlX2luZm9fa2lsbHN3aXRjaCIpJiYobj12LmNvbnRleHQsVz1iLnNlcXVlbmNlR3JvdXAsVz17aW5kZXg6RXkoVyksZ3JvdXBLZXk6V30sbi5zZXF1ZW5jZT1XLGIuZW5kT2ZTZXF1ZW5jZSYmZGVsZXRlIGlSW2Iuc2VxdWVuY2VHcm91cF0pO2cubCgid2ViX3RhZ19hdXRvbWF0ZWRfbG9nX2V2ZW50cyIpJiYodi5jb250ZXh0LmF1dG9tYXRlZExvZ0V2ZW50U291cmNlPWIuYXV0b21hdGVkTG9nRXZlbnRTb3VyY2UpOyhiLnNlbmRJc29sYXRlZFBheWxvYWQ/TWo6T0d4KSh7ZW5kcG9pbnQ6ImxvZ19ldmVudCIsCnBheWxvYWQ6dixjdHRBdXRoSW5mbzpiLmN0dEF1dGhJbmZvLGRhbmdlcm91c0xvZ1RvVmlzaXRvclNlc3Npb246Yi5kYW5nZXJvdXNMb2dUb1Zpc2l0b3JTZXNzaW9ufSxEKX07Cm92PWZ1bmN0aW9uKG49ITEpe25VKHZvaWQgMCxuKX07CkV5PWZ1bmN0aW9uKG4pe2lSW25dPW4gaW4gaVI/aVJbbl0rMTowO3JldHVybiBpUltuXX07CmcuelU9ZnVuY3Rpb24obixXLEQ9e30pe3ZhciBiPWcuZDQ7Zy5BcigieXRMb2dnaW5nRXZlbnRzRGVmYXVsdERpc2FibGVkIiwhMSkmJmcuZDQ9PT1nLmQ0JiYoYj1udWxsKTt1UihuLFcsYixEKX07ClRVPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgbFIoe3RyYWNraW5nUGFyYW1zOm59KX07Cmp5PWZ1bmN0aW9uKG4sVyxELGIsdixrKXt2YXIgaD1qelorKztyZXR1cm4gbmV3IGxSKHt2ZVR5cGU6bix2ZUNvdW50ZXI6aCxlbGVtZW50SW5kZXg6RCxkYXRhRWxlbWVudDpXLHlvdXR1YmVEYXRhOmIsanNwYllvdXR1YmVEYXRhOnYsbG9nZ2luZ0RpcmVjdGl2ZXM6a30pfTsKQ1U9ZnVuY3Rpb24obj0wKXtyZXR1cm4gZy5BcigiY2xpZW50LXNjcmVlbi1ub25jZS1zdG9yZSIse30pW25dfTsKQ1dpPWZ1bmN0aW9uKG4sVz0wKXt2YXIgRD1nLkFyKCJjbGllbnQtc2NyZWVuLW5vbmNlLXN0b3JlIik7RHx8KEQ9e30sZy5TSCgiY2xpZW50LXNjcmVlbi1ub25jZS1zdG9yZSIsRCkpO0RbV109bn07CkJzPWZ1bmN0aW9uKG49MCl7cmV0dXJuIG49PT0wPyJST09UX1ZFX1RZUEUiOmBST09UX1ZFX1RZUEUuJHtufWB9OwpGUj1mdW5jdGlvbihuPTApe3JldHVybiBnLkFyKEJzKG4pKX07Cnc0PWZ1bmN0aW9uKG49MCl7cmV0dXJuKG49RlIobikpP25ldyBsUih7dmVUeXBlOm4seW91dHViZURhdGE6dm9pZCAwLGpzcGJZb3V0dWJlRGF0YTp2b2lkIDB9KTpudWxsfTsKTTE9ZnVuY3Rpb24oKXt2YXIgbj1nLkFyKCJjc24tdG8tY3R0LWF1dGgtaW5mbyIpO258fChuPXt9LGcuU0goImNzbi10by1jdHQtYXV0aC1pbmZvIixuKSk7cmV0dXJuIG59OwpCZ3I9ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LnZhbHVlcyhnLkFyKCJjbGllbnQtc2NyZWVuLW5vbmNlLXN0b3JlIix7fSkpLmZpbHRlcihuPT5uIT09dm9pZCAwKX07CmcuUnY9ZnVuY3Rpb24obj0wKXtuPUNVKG4pO2lmKCFuJiYhZy5BcigiVVNFX0NTTl9GQUxMQkFDSyIsITApKXJldHVybiBudWxsO258fChuPSJVTkRFRklORURfQ1NOIik7cmV0dXJuIG4/bjpudWxsfTsKd0hDPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBvZiBPYmplY3QudmFsdWVzKEZfVSkpaWYoZy5SdihXKT09PW4pcmV0dXJuITA7cmV0dXJuITF9OwpNV3c9ZnVuY3Rpb24obixXLEQpe3ZhciBiPU0xKCk7KEQ9Zy5SdihEKSkmJmRlbGV0ZSBiW0RdO1cmJihiW25dPVcpfTsKUTQ9ZnVuY3Rpb24obil7cmV0dXJuIE0xKClbbl19Owpjcz1mdW5jdGlvbihuLFcsRD0wLGIpe2lmKG4hPT1DVShEKXx8VyE9PWcuQXIoQnMoRCkpKWlmKE1XdyhuLGIsRCksQ1dpKG4sRCksZy5TSChCcyhEKSxXKSxXPSgpPT57c2V0VGltZW91dCgoKT0+e24mJmcuelUoImZvcmVncm91bmRIZWFydGJlYXRTY3JlZW5Bc3NvY2lhdGVkIix7Y2xpZW50RG9jdW1lbnROb25jZTpWNCxjbGllbnRTY3JlZW5Ob25jZTpufSl9LDApfSwicmVxdWVzdEFuaW1hdGlvbkZyYW1lImluIHdpbmRvdyl0cnl7d2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZShXKX1jYXRjaCh2KXtXKCl9ZWxzZSBXKCl9OwpuND1mdW5jdGlvbihuLFcpe3ZhciBEPWcuQXIoIlZBTElEX1NFU1NJT05fVEVNUERBVEFfRE9NQUlOUyIsW10pLGI9Zy5JUCh3aW5kb3cubG9jYXRpb24uaHJlZik7YiYmRC5wdXNoKGIpO2I9Zy5JUChuKTtpZihnLmpqKEQsYil8fCFiJiZnLmpVKG4sIi8iKSlpZihEPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKSxnLk5VKEQsbiksbj1ELmhyZWYpaWYobj1tVyhuKSxuPUtwKG4pKWlmKCFXLmNzbiYmKFcuaXRjdHx8Vy52ZWQpJiYoVz1PYmplY3QuYXNzaWduKHtjc246Zy5SdigpfSxXKSksdil7dmFyIHY9cGFyc2VJbnQodiwxMCk7aXNGaW5pdGUodikmJnY+MCYmYXYobixXLHYpfWVsc2UgYXYobixXKX07CmF2PWZ1bmN0aW9uKG4sVyxEKXtuPVdhKG4pO1c9Vz95RyhXKToiIjtEPUR8fDU7Zy5hSygpJiZJSyhuLFcsRCl9OwpXYT1mdW5jdGlvbihuKXtmb3IobGV0IFcgb2YgUl9NKW49VDUobixXKTtyZXR1cm4iU1QtIitzVChuKS50b1N0cmluZygzNil9OwpnLkRwPWZ1bmN0aW9uKG4pe2lmKG4uc2ltcGxlVGV4dClyZXR1cm4gbi5zaW1wbGVUZXh0O2lmKG4ucnVucyl7bGV0IFc9W107Zm9yKGxldCBEIG9mIG4ucnVucylELnRleHQmJlcucHVzaChELnRleHQpO3JldHVybiBXLmpvaW4oIiIpfXJldHVybiIifTsKZy5iZz1mdW5jdGlvbihuKXtpZihuLnNpbXBsZVRleHQpcmV0dXJuIG49ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobi5zaW1wbGVUZXh0KSxuO3ZhciBXPVtdO2lmKG4ucnVucylmb3IobGV0IHg9MDt4PG4ucnVucy5sZW5ndGg7eCsrKXt2YXIgRD1uLnJ1bnNbeF07aWYoRC50ZXh0KXt2YXIgYj1XLHY9Yi5wdXNoLGs9bnVsbDt2YXIgaD1ELnRleHQ7RC5ib2xkJiYoaz1nLmRtKCJCIixudWxsLGt8fGgpKTtELml0YWxpY3MmJihrPWcuZG0oIkkiLG51bGwsa3x8aCkpO0Quc3RyaWtldGhyb3VnaCYmKGs9Zy5kbSgiU1RSSUtFIixudWxsLGt8fGgpKTtELm5hdmlnYXRpb25FbmRwb2ludCYmRC5uYXZpZ2F0aW9uRW5kcG9pbnQudXJsRW5kcG9pbnQmJihEPUQubmF2aWdhdGlvbkVuZHBvaW50LnVybEVuZHBvaW50LGs9Zy5kbSgiQSIsbnVsbCxrfHxoKSxnLk5VKGssRC51cmwpLEQudGFyZ2V0PT0iVEFSR0VUX05FV19XSU5ET1ciJiYoay50YXJnZXQ9Il9ibGFuayIpKTtoPWt8fGcuZG0oIlNQQU4iLApudWxsLGgpO3YuY2FsbChiLGgpfX1yZXR1cm4gVy5sZW5ndGg9PTE/V1swXTpnLmRtKCJTUEFOIixudWxsLFcpfTsKUXoxPWZ1bmN0aW9uKG4pe2lmKG4ubmFtZT09PSJKYXZhRXhjZXB0aW9uIilyZXR1cm4hMDtuPW4uc3RhY2s7cmV0dXJuIG4uaW5jbHVkZXMoImNocm9tZTovLyIpfHxuLmluY2x1ZGVzKCItZXh0ZW5zaW9uOi8vIil8fG4uaW5jbHVkZXMoIndlYmtpdC1tYXNrZWQtdXJsOi8vIil9OwpWV3g9ZnVuY3Rpb24obil7aWYoIW4uc3RhY2spcmV0dXJuITA7dmFyIFc9IW4uc3RhY2suaW5jbHVkZXMoIlxuIik7cmV0dXJuIFcmJm4uc3RhY2suaW5jbHVkZXMoIkVycm9yVHlwZTogIil8fFcmJm4uc3RhY2suaW5jbHVkZXMoIkFub255bW91cyBmdW5jdGlvbiAoVW5rbm93biBzY3JpcHQiKXx8bi5zdGFjay50b0xvd2VyQ2FzZSgpPT09Im5vdCBhdmFpbGFibGUifHxuLmZpbGVOYW1lPT09InVzZXItc2NyaXB0Inx8bi5maWxlTmFtZS5zdGFydHNXaXRoKCJ1c2VyLXNjcmlwdDoiKT8hMDohMX07CmhQPWZ1bmN0aW9uKCl7aWYoIXZhKXt2YXIgbj12YT1uZXcgY3ZoO24uTjkubGVuZ3RoPTA7bi5rby5sZW5ndGg9MDtrQihuLGFSUyl9cmV0dXJuIHZhfTsKa0I9ZnVuY3Rpb24obixXKXtXLk45JiZuLk45LnVuc2hpZnQuYXBwbHkobi5OOSxXLk45KTtXLmtvJiZuLmtvLnVuc2hpZnQuYXBwbHkobi5rbyxXLmtvKX07Cm45dz1mdW5jdGlvbihuKXt2YXIgVz1uLmxlbmd0aCxEPTAsYj0oKT0+bi5jaGFyQ29kZUF0KEQrKyk7CmRve3ZhciB2PXhCKGIpO2lmKHY9PT1JbmZpbml0eSlicmVhaztsZXQgaz12Pj4zO3N3aXRjaCh2Jjcpe2Nhc2UgMDp2PXhCKGIpO2lmKGs9PT0yKXJldHVybiB2O2JyZWFrO2Nhc2UgMTppZihrPT09MilyZXR1cm47RCs9ODticmVhaztjYXNlIDI6dj14QihiKTtpZihrPT09MilyZXR1cm4gbi5zdWJzdHIoRCx2KTtEKz12O2JyZWFrO2Nhc2UgNTppZihrPT09MilyZXR1cm47RCs9NDticmVhaztkZWZhdWx0OnJldHVybn19d2hpbGUoRDxXKX07CnhCPWZ1bmN0aW9uKG4pe3ZhciBXPW4oKSxEPVcmMTI3O2lmKFc8MTI4KXJldHVybiBEO1c9bigpO0R8PShXJjEyNyk8PDc7aWYoVzwxMjgpcmV0dXJuIEQ7Vz1uKCk7RHw9KFcmMTI3KTw8MTQ7aWYoVzwxMjgpcmV0dXJuIEQ7Vz1uKCk7cmV0dXJuIFc8MTI4P0R8KFcmMTI3KTw8MjE6SW5maW5pdHl9OwpnSz1mdW5jdGlvbihuLFcsRCxiKXtpZihuKWlmKEFycmF5LmlzQXJyYXkobikpe3ZhciB2PWI7Zm9yKGI9MDtiPG4ubGVuZ3RoJiYhKG5bYl0mJih2Kz1MNChiLG5bYl0sVyxEKSx2PjUwMCkpO2IrKyk7Yj12fWVsc2UgaWYodHlwZW9mIG49PT0ib2JqZWN0Iilmb3IodiBpbiBuKXtpZihuW3ZdKXthOnt2YXIgaz12O3ZhciBoPW5bdl0seD1XLEw9RDtpZih0eXBlb2YgaCE9PSJzdHJpbmcifHxrIT09ImNsaWNrVHJhY2tpbmdQYXJhbXMiJiZrIT09InRyYWNraW5nUGFyYW1zIil7az0wO2JyZWFrIGF9az0oaD1uOXcoYXRvYihoLnJlcGxhY2UoLy0vZywiKyIpLnJlcGxhY2UoL18vZywiLyIpKSkpP0w0KGAke2t9LnZlYCxoLHgsTCk6MH1iKz1rO2IrPUw0KHYsblt2XSxXLEQpO2lmKGI+NTAwKWJyZWFrfX1lbHNlIERbV109ZWkobiksYis9RFtXXS5sZW5ndGg7ZWxzZSBEW1ddPWVpKG4pLGIrPURbV10ubGVuZ3RoO3JldHVybiBifTsKTDQ9ZnVuY3Rpb24obixXLEQsYil7RCs9YC4ke259YDtuPWVpKFcpO2JbRF09bjtyZXR1cm4gRC5sZW5ndGgrbi5sZW5ndGh9OwplaT1mdW5jdGlvbihuKXt0cnl7cmV0dXJuKHR5cGVvZiBuPT09InN0cmluZyI/bjpTdHJpbmcoSlNPTi5zdHJpbmdpZnkobikpKS5zdWJzdHIoMCw1MDApfWNhdGNoKFcpe3JldHVybmB1bmFibGUgdG8gc2VyaWFsaXplICR7dHlwZW9mIG59ICgke1cubWVzc2FnZX0pYH19OwpXTlU9ZnVuY3Rpb24obixXPXt9KXtpZihuPW4uelope2xldCBEPW4uSngsYj1uLmQ2O249W1siY29tcG9uZW50U3RhY2siLG4ubUldLFsid2l6VGFnTmFtZSIsbi50YWdOYW1lXSxbIndpek93bmVyVHJhY2UiLG4uRHU/LmpvaW4oIiA+ICIpXSxbImVycm9yU2V2ZXJpdHkiLEQ/LnRvU3RyaW5nKCldLFsid2l6RmVhdHVyZUZsYWdzIixiP09iamVjdC5lbnRyaWVzKGIpLmpvaW4oIlxuIik6dm9pZCAwXV07Zm9yKGxldCBbdixrXW9mIG4pbj1rLG4hPT12b2lkIDAmJihXW3ZdPW4pfXJldHVybiBXfTsKZy5xZz1mdW5jdGlvbihuKXtnLlhqKG4pfTsKZy5HcT1mdW5jdGlvbihuKXtnLlhqKG4sIldBUk5JTkciKX07CmcuWGo9ZnVuY3Rpb24obixXPSJFUlJPUiIpe3ZhciBEPXt9O0QubmFtZT1nLkFyKCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsMSk7RC52ZXJzaW9uPWcuQXIoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9WRVJTSU9OIik7REh0KG4sRCxXKX07CkRIdD1mdW5jdGlvbihuLFcsRD0iRVJST1IiKXtpZihuKXtuLmhhc093blByb3BlcnR5KCJsZXZlbCIpJiZuLmxldmVsJiYoRD1uLmxldmVsKTtpZihnLmwoIndpel9lbmFibGVfbWV0YWRhdGFfZXh0cmFjdGlvbl9raWxsc3dpdGNoIikpe3ZhciBiPVc7aWYoIWI/LmNvbXBvbmVudFN0YWNrKXt2YXIgdj1uLnpaPy5tSTt2JiYoYnx8KGI9e30pLGIuY29tcG9uZW50U3RhY2s9dil9Vz1ifHxXfWVsc2UgVz1XTlUobixXKSxiPW4uelo/Lkp4LGIhPT12b2lkIDAmJkQhPT0iSUdOT1JFRCImJihEPWI+PTM/IkVSUk9SIjoiV0FSTklORyIpO2lmKGcubCgiY29uc29sZV9sb2dfanNfZXhjZXB0aW9ucyIpfHxbInRlc3QiLCJkZXYiLCJhdXRvcHVzaCIsInN0YWdpbmciXS5pbmNsdWRlcyhnLkFyKCJTRVJWRVJfVkVSU0lPTiIpKSliPVtdLGIucHVzaChgTmFtZTogJHtuLm5hbWV9YCksYi5wdXNoKGBNZXNzYWdlOiAke24ubWVzc2FnZX1gKSxuLmhhc093blByb3BlcnR5KCJwYXJhbXMiKSYmYi5wdXNoKGBFcnJvciBQYXJhbXM6ICR7SlNPTi5zdHJpbmdpZnkobi5wYXJhbXMpfWApLApuLmhhc093blByb3BlcnR5KCJhcmdzIikmJmIucHVzaChgRXJyb3IgYXJnczogJHtKU09OLnN0cmluZ2lmeShuLmFyZ3MpfWApLGIucHVzaChgRmlsZSBuYW1lOiAke24uZmlsZU5hbWV9YCksYi5wdXNoKGBTdGFja3RyYWNlOiAke24uc3RhY2t9YCksYj1iLmpvaW4oIlxuIiksd2luZG93LmNvbnNvbGUubG9nKGIsbik7aWYoISh0UD49NSkpe2I9W107Zm9yKGsgb2YgYm4yKXRyeXtrKCkmJmIucHVzaChrKCkpfWNhdGNoKEEpe312YXIgaz1iO2s9Wy4uLnY5MiwuLi5rXTt2YXIgaD1yaWIobik7Yj1oLm1lc3NhZ2V8fCJVbmtub3duIEVycm9yIjt2PWgubmFtZXx8IlVua25vd25FcnJvciI7dmFyIHg9aC5zdGFja3x8bi5TdHx8Ik5vdCBhdmFpbGFibGUiO2lmKHguc3RhcnRzV2l0aChgJHt2fTogJHtifWApKXt2YXIgTD14LnNwbGl0KCJcbiIpO0wuc2hpZnQoKTt4PUwuam9pbigiXG4iKX1MPWgubGluZU51bWJlcnx8Ik5vdCBhdmFpbGFibGUiO2g9aC5maWxlTmFtZXx8Ik5vdCBhdmFpbGFibGUiOwpsZXQgSD0wO2lmKG4uaGFzT3duUHJvcGVydHkoImFyZ3MiKSYmbi5hcmdzJiZuLmFyZ3MubGVuZ3RoKWZvcih2YXIgZT0wO2U8bi5hcmdzLmxlbmd0aCYmIShIPWdLKG4uYXJnc1tlXSxgcGFyYW1zLiR7ZX1gLFcsSCksSD49NTAwKTtlKyspO2Vsc2UgaWYobi5oYXNPd25Qcm9wZXJ0eSgicGFyYW1zIikmJm4ucGFyYW1zKXtsZXQgQT1uLnBhcmFtcztpZih0eXBlb2Ygbi5wYXJhbXM9PT0ib2JqZWN0Iilmb3IoZSBpbiBBKXtpZighQVtlXSljb250aW51ZTtsZXQgeT1gcGFyYW1zLiR7ZX1gLFQ9ZWkoQVtlXSk7V1t5XT1UO0grPXkubGVuZ3RoK1QubGVuZ3RoO2lmKEg+NTAwKWJyZWFrfWVsc2UgVy5wYXJhbXM9ZWkoQSl9aWYoay5sZW5ndGgpZm9yKGU9MDtlPGsubGVuZ3RoJiYhKEg9Z0soa1tlXSxgcGFyYW1zLmNvbnRleHQuJHtlfWAsVyxIKSxIPj01MDApO2UrKyk7bmF2aWdhdG9yLnZlbmRvciYmIVcuaGFzT3duUHJvcGVydHkoInZlbmRvciIpJiYoV1siZGV2aWNlLnZlbmRvciJdPQpuYXZpZ2F0b3IudmVuZG9yKTtlPXttZXNzYWdlOmIsbmFtZTp2LGxpbmVOdW1iZXI6TCxmaWxlTmFtZTpoLHN0YWNrOngscGFyYW1zOlcsc2FtcGxlV2VpZ2h0OjF9O1c9TnVtYmVyKG4uY29sdW1uTnVtYmVyKTtpc05hTihXKXx8KGUubGluZU51bWJlcj1gJHtlLmxpbmVOdW1iZXJ9OiR7V31gKTtpZihuLmxldmVsPT09IklHTk9SRUQiKXZhciBHPTA7ZWxzZSBhOntuPWhQKCk7Zm9yKEcgb2Ygbi5OOSlpZihlLm1lc3NhZ2UmJmUubWVzc2FnZS5tYXRjaChHLktSKSl7Rz1HLndlaWdodDticmVhayBhfWZvcih2YXIgciBvZiBuLmtvKWlmKHIuY2FsbGJhY2soZSkpe0c9ci53ZWlnaHQ7YnJlYWsgYX1HPTF9ZS5zYW1wbGVXZWlnaHQ9RztHPWU7Zm9yKHZhciBOIG9mIGskYil7aWYoIU4uWXpbRy5uYW1lXSljb250aW51ZTtyPU4uWXpbRy5uYW1lXTtmb3IobGV0IEEgb2Ygcil7cj1HLm1lc3NhZ2UubWF0Y2goQS53Yik7aWYoIXIpY29udGludWU7Ry5wYXJhbXNbInBhcmFtcy5lcnJvci5vcmlnaW5hbCJdPQpyWzBdO249QS5ncm91cHM7ZT17fTtmb3IoVz0wO1c8bi5sZW5ndGg7VysrKWVbbltXXV09cltXKzFdLEcucGFyYW1zW2BwYXJhbXMuZXJyb3IuJHtuW1ddfWBdPXJbVysxXTtHLm1lc3NhZ2U9Ti5HMShlKTticmVha319Ry5wYXJhbXN8fChHLnBhcmFtcz17fSk7Tj1oUCgpO0cucGFyYW1zWyJwYXJhbXMuZXJyb3JTZXJ2aWNlU2lnbmF0dXJlIl09YG1zZz0ke04uTjkubGVuZ3RofSZjYj0ke04ua28ubGVuZ3RofWA7Ry5wYXJhbXNbInBhcmFtcy5zZXJ2aWNlV29ya2VyIl09ImZhbHNlIjtnLnFpLmRvY3VtZW50JiZnLnFpLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwmJihHLnBhcmFtc1sicGFyYW1zLmZzY3JpcHRzIl09U3RyaW5nKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoInNjcmlwdDpub3QoW25vbmNlXSkiKS5sZW5ndGgpKTsobmV3ICRCKHJLLCJzYW1wbGUiKSkuY29uc3RydWN0b3IhPT0kQiYmKEcucGFyYW1zWyJwYXJhbXMuZmNvbnN0Il09InRydWUiKTt3aW5kb3cueXRlcnImJgp0eXBlb2Ygd2luZG93Lnl0ZXJyPT09ImZ1bmN0aW9uIiYmd2luZG93Lnl0ZXJyKEcpO0cuc2FtcGxlV2VpZ2h0PT09MHx8SVUuaGFzKEcubWVzc2FnZSl8fGhUUyhHLEQpfX19OwpoVFM9ZnVuY3Rpb24obixXPSJFUlJPUiIpe2lmKFc9PT0iRVJST1IiKXtTaS5XSigiaGFuZGxlRXJyb3IiLG4pO2lmKGcubCgicmVjb3JkX2FwcF9jcmFzaGVkX3dlYiIpJiZBUD09PTAmJm4uc2FtcGxlV2VpZ2h0PT09MSl7QVArKzt2YXIgRD17YXBwQ3Jhc2hUeXBlOiJBUFBfQ1JBU0hfVFlQRV9CUkVBS1BBRCJ9O2cubCgicmVwb3J0X2NsaWVudF9lcnJvcl93aXRoX2FwcF9jcmFzaF9rcyIpfHwoRC5zeXN0ZW1IZWFsdGg9e2NyYXNoRGF0YTp7Y2xpZW50RXJyb3I6e2xvZ01lc3NhZ2U6e21lc3NhZ2U6bi5tZXNzYWdlfX19fSk7Zy56VSgiYXBwQ3Jhc2hlZCIsRCl9eEhNKyt9ZWxzZSBXPT09IldBUk5JTkciJiZTaS5XSigiaGFuZGxlV2FybmluZyIsbik7aWYoZy5sKCJrZXZsYXJfZ2VsX2Vycm9yX3JvdXRpbmciKSl7RD17fTtiOntmb3IoYiBvZiBMTkMpaWYoZy51YihiLnRvTG93ZXJDYXNlKCkpKXt2YXIgYj0hMDticmVhayBifWI9ITF9aWYoYilEPXZvaWQgMDtlbHNle3ZhciB2PQp7c3RhY2tUcmFjZTpuLnN0YWNrfTtuLmZpbGVOYW1lJiYodi5maWxlbmFtZT1uLmZpbGVOYW1lKTtiPW4ubGluZU51bWJlciYmbi5saW5lTnVtYmVyLnNwbGl0P24ubGluZU51bWJlci5zcGxpdCgiOiIpOltdO2IubGVuZ3RoIT09MCYmKGIubGVuZ3RoIT09MXx8aXNOYU4oTnVtYmVyKGJbMF0pKT9iLmxlbmd0aCE9PTJ8fGlzTmFOKE51bWJlcihiWzBdKSl8fGlzTmFOKE51bWJlcihiWzFdKSl8fCh2LmxpbmVOdW1iZXI9TnVtYmVyKGJbMF0pLHYuY29sdW1uTnVtYmVyPU51bWJlcihiWzFdKSk6di5saW5lTnVtYmVyPU51bWJlcihiWzBdKSk7Yj17bGV2ZWw6IkVSUk9SX0xFVkVMX1VOS05PV04iLG1lc3NhZ2U6bi5tZXNzYWdlLGVycm9yQ2xhc3NOYW1lOm4ubmFtZSxzYW1wbGVXZWlnaHQ6bi5zYW1wbGVXZWlnaHR9O1c9PT0iRVJST1IiP2IubGV2ZWw9IkVSUk9SX0xFVkVMX0VSUk9SIjpXPT09IldBUk5JTkciJiYoYi5sZXZlbD0iRVJST1JfTEVWRUxfV0FSTk5JTkciKTt2PXtpc09iZnVzY2F0ZWQ6ITAsCmJyb3dzZXJTdGFja0luZm86dn07RC5wYWdlVXJsPXdpbmRvdy5sb2NhdGlvbi5ocmVmO0Qua3ZQYWlycz1bXTtnLkFyKCJGRVhQX0VYUEVSSU1FTlRTIikmJihELmV4cGVyaW1lbnRJZHM9Zy5BcigiRkVYUF9FWFBFUklNRU5UUyIpKTt2YXIgaz1nLkFyKCJMQVRFU1RfRUNBVENIRVJfU0VSVklDRV9UUkFDS0lOR19QQVJBTVMiKTtpZighbXkoIndlYl9kaXNhYmxlX2dlbF9zdHBfZWNhdGNoZXJfa2lsbHN3aXRjaCIpJiZrKWZvcih2YXIgaCBvZiBPYmplY3Qua2V5cyhrKSlELmt2UGFpcnMucHVzaCh7a2V5OmgsdmFsdWU6U3RyaW5nKGtbaF0pfSk7aWYoaD1uLnBhcmFtcylmb3IodmFyIHggb2YgT2JqZWN0LmtleXMoaCkpRC5rdlBhaXJzLnB1c2goe2tleTpgY2xpZW50LiR7eH1gLHZhbHVlOlN0cmluZyhoW3hdKX0pO2lmKHg9bi5wYXJhbXM/LnNlc3Npb25SZXBsYXlJZClELnNlc3Npb25SZXBsYXlJZD1TdHJpbmcoeCk7eD1nLkFyKCJTRVJWRVJfTkFNRSIpO2g9Zy5BcigiU0VSVkVSX1ZFUlNJT04iKTsKeCYmaCYmKEQua3ZQYWlycy5wdXNoKHtrZXk6InNlcnZlci5uYW1lIix2YWx1ZTp4fSksRC5rdlBhaXJzLnB1c2goe2tleToic2VydmVyLnZlcnNpb24iLHZhbHVlOmh9KSk7KHg9Zy5BcigiUExBWUVSX0NMSUVOVF9WRVJTSU9OIikpJiZELmt2UGFpcnMucHVzaCh7a2V5OiJjbGllbnQucGxheWVyLnZlcnNpb24iLHZhbHVlOnh9KTtEPXtlcnJvck1ldGFkYXRhOkQsc3RhY2tUcmFjZTp2LGxvZ01lc3NhZ2U6Yn19aWYoRCYmKGcuelUoImNsaWVudEVycm9yIixEKSxXPT09IkVSUk9SInx8Zy5sKCJlcnJvcnNfZmx1c2hfZ2VsX2Fsd2F5c19raWxsc3dpdGNoIikpKWE6e2lmKGcubCgid2ViX2ZwX3ZpYV9qc3BiIikpe0Q9bTE7bTE9W107aWYoRClmb3IodmFyIEwgb2YgRCl1UihMLnBheWxvYWROYW1lLEwucGF5bG9hZCxnLmQ0LEwub3B0aW9ucyk7b3YoITApO2lmKCFnLmwoIndlYl9mcF92aWFfanNwYl9hbmRfanNvbiIpKWJyZWFrIGF9b3YoKX19aWYoIWcubCgic3VwcHJlc3NfZXJyb3JfMjA0X2xvZ2dpbmciKSl7TD0Kbi5wYXJhbXN8fHt9O1c9e3VybFBhcmFtczp7YToibG9nZXJyb3IiLHQ6ImpzZXJyb3IiLHR5cGU6bi5uYW1lLG1zZzpuLm1lc3NhZ2Uuc3Vic3RyKDAsMjUwKSxsaW5lOm4ubGluZU51bWJlcixsZXZlbDpXLCJjbGllbnQubmFtZSI6TC5uYW1lfSxwb3N0UGFyYW1zOnt1cmw6Zy5BcigiUEFHRV9OQU1FIix3aW5kb3cubG9jYXRpb24uaHJlZiksZmlsZTpuLmZpbGVOYW1lfSxtZXRob2Q6IlBPU1QifTtMLnZlcnNpb24mJihXWyJjbGllbnQudmVyc2lvbiJdPUwudmVyc2lvbik7aWYoVy5wb3N0UGFyYW1zKXtuLnN0YWNrJiYoVy5wb3N0UGFyYW1zLnN0YWNrPW4uc3RhY2spO2Zvcih2YXIgZSBvZiBPYmplY3Qua2V5cyhMKSlXLnBvc3RQYXJhbXNbYGNsaWVudC4ke2V9YF09TFtlXTtpZihlPWcuQXIoIkxBVEVTVF9FQ0FUQ0hFUl9TRVJWSUNFX1RSQUNLSU5HX1BBUkFNUyIpKWZvcih2YXIgRyBvZiBPYmplY3Qua2V5cyhlKSlXLnBvc3RQYXJhbXNbR109ZVtHXTsoRz1nLkFyKCJMQVZBX1ZFUlNJT04iKSkmJgooVy5wb3N0UGFyYW1zWyJsYXZhLnZlcnNpb24iXT1HKTtHPWcuQXIoIlNFUlZFUl9OQU1FIik7ZT1nLkFyKCJTRVJWRVJfVkVSU0lPTiIpO0cmJmUmJihXLnBvc3RQYXJhbXNbInNlcnZlci5uYW1lIl09RyxXLnBvc3RQYXJhbXNbInNlcnZlci52ZXJzaW9uIl09ZSk7KEc9Zy5BcigiUExBWUVSX0NMSUVOVF9WRVJTSU9OIikpJiYoVy5wb3N0UGFyYW1zWyJjbGllbnQucGxheWVyLnZlcnNpb24iXT1HKX1nLmVkKGAke2cuQXIoIkVDQVRDSEVSX1JFUE9SVF9IT1NUIiwiIil9L2Vycm9yXzIwNGAsVyl9dHJ5e0lVLmFkZChuLm1lc3NhZ2UpfWNhdGNoKHIpe310UCsrfTsKSzQ9ZnVuY3Rpb24obiwuLi5XKXtuLmFyZ3N8fChuLmFyZ3M9W10pO0FycmF5LmlzQXJyYXkobi5hcmdzKSYmbi5hcmdzLnB1c2goLi4uVyl9OwpPYT1mdW5jdGlvbihuKXt2YXIgVz0wO2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7RCsrKVc9VyozMStuLmNoYXJDb2RlQXQoRCksRDxuLmxlbmd0aC0xJiYoVyU9MHg4MDAwMDAwMDAwMDApO3JldHVybiBXJTFFNX07Cmc5aT1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgsTCl7dmFyIGU9ZVRoKCk7az1uZXcgbFIoe3ZlVHlwZTpXLHlvdXR1YmVEYXRhOmssanNwYllvdXR1YmVEYXRhOnZvaWQgMH0pO0w9UGEoe2F1dG9tYXRlZExvZ0V2ZW50U291cmNlOkx9LGUpO3YmJihMLmN0dEF1dGhJbmZvPXYpO3Y9e2NzbjplLHBhZ2VWZTprLmdldEFzSnNvbigpfTtnLmwoImV4cGVjdGF0aW9uX2xvZ2dpbmciKSYmeCYmeC5zY3JlZW5DcmVhdGVkTG9nZ2luZ0V4cGVjdGF0aW9ucyYmKHYuc2NyZWVuQ3JlYXRlZExvZ2dpbmdFeHBlY3RhdGlvbnM9eC5zY3JlZW5DcmVhdGVkTG9nZ2luZ0V4cGVjdGF0aW9ucyk7RCYmRC52aXN1YWxFbGVtZW50Pyh2LmltcGxpY2l0R2VzdHVyZT17cGFyZW50Q3NuOkQuY2xpZW50U2NyZWVuTm9uY2UsZ2VzdHVyZWRWZTpELnZpc3VhbEVsZW1lbnQuZ2V0QXNKc29uKCl9LGgmJih2LmltcGxpY2l0R2VzdHVyZS5nZXN0dXJlVHlwZT1oKSk6RCYmZy5HcShuZXcgZy5ReCgibmV3U2NyZWVuKCkgcGFyZW50IGVsZW1lbnQgZG9lcyBub3QgaGF2ZSBhIFZFIC0gcm9vdFZlIiwKVykpO2ImJih2LmNsb25lQ3NuPWIpO24/dVIoInNjcmVlbkNyZWF0ZWQiLHYsbixMKTpnLnpVKCJzY3JlZW5DcmVhdGVkIix2LEwpO2w5KFRvLG5ldyBacChlKSk7VWEuY2xlYXIoKTt5NS5jbGVhcigpO0VhLmNsZWFyKCk7cmV0dXJuIGV9Owp1Zz1mdW5jdGlvbihuLFcsRCxiLHY9ITEsaz17fSl7aWcobixXLEQsW2JdLHYsayl9OwppZz1mdW5jdGlvbihuLFcsRCxiLHY9ITEsaz17fSl7T2JqZWN0LmFzc2lnbihrLFBhKHtjdHRBdXRoSW5mbzpRNChXKXx8dm9pZCAwfSxXKSk7Zm9yKGxldCB4IG9mIGIpe3ZhciBoPXguZ2V0QXNKc29uKCk7KGcuR0YoaCl8fCFoLnRyYWNraW5nUGFyYW1zJiYhaC52ZVR5cGUpJiZnLkdxKEVycm9yKCJDaGlsZCBWRSBsb2dnZWQgd2l0aCBubyBkYXRhIikpO2lmKGcubCgibm9fY2xpZW50X3ZlX2F0dGFjaF91bmxlc3Nfc2hvd24iKSl7bGV0IEw9b1UoeCxXKTtpZihoLnZlVHlwZSYmIXk1LmhhcyhMKSYmIUVhLmhhcyhMKSYmIXYpe2lmKCFnLmwoImlsX2F0dGFjaF9jYWNoZV9saW1pdCIpfHxVYS5zaXplPDFFMyl7VWEuc2V0KEwsW24sVyxELHhdKTtyZXR1cm59Zy5sKCJpbF9hdHRhY2hfY2FjaGVfbGltaXQiKSYmVWEuc2l6ZT4xRTMmJmcuR3EobmV3IGcuUXgoIklMIEF0dGFjaCBjYWNoZSBleGNlZWRlZCBsaW1pdCIpKX1oPW9VKEQsVyk7VWEuaGFzKGgpP2RLKEQsVyk6RWEuc2V0KGgsCiEwKX19Yj1iLmZpbHRlcih4PT57eC5jc24hPT1XPyh4LmNzbj1XLHg9ITApOng9ITE7cmV0dXJuIHh9KTsKRD17Y3NuOlcscGFyZW50VmU6RC5nZXRBc0pzb24oKSxjaGlsZFZlczpnLmlfKGIseD0+eC5nZXRBc0pzb24oKSl9OwpXPT09IlVOREVGSU5FRF9DU04iP3pxKCJ2aXN1YWxFbGVtZW50QXR0YWNoZWQiLGssRCk6bj91UigidmlzdWFsRWxlbWVudEF0dGFjaGVkIixELG4sayk6Zy56VSgidmlzdWFsRWxlbWVudEF0dGFjaGVkIixELGspfTsKWFdqPWZ1bmN0aW9uKG4sVyxELGIsdixrLGgpe2xnKEQsVyk7Yj1QYSh7Y3R0QXV0aEluZm86UTQoVyl8fHZvaWQgMCxhdXRvbWF0ZWRMb2dFdmVudFNvdXJjZTpofSxXKTtEPXtjc246Vyx2ZTpELmdldEFzSnNvbigpLGV2ZW50VHlwZToxfTt2JiYoRC5jbGllbnREYXRhPXYpO1c9PT0iVU5ERUZJTkVEX0NTTiI/enEoInZpc3VhbEVsZW1lbnRTaG93biIsYixEKTpuP3VSKCJ2aXN1YWxFbGVtZW50U2hvd24iLEQsbixiKTpnLnpVKCJ2aXN1YWxFbGVtZW50U2hvd24iLEQsYil9OwpUcT1mdW5jdGlvbihuLFcsRCxiPSExKXt2YXIgdj1iPzE2Ojg7Yj1QYSh7Y3R0QXV0aEluZm86UTQoVyl8fHZvaWQgMCxlbmRPZlNlcXVlbmNlOmIsYXV0b21hdGVkTG9nRXZlbnRTb3VyY2U6dm9pZCAwfSxXKTtEPXtjc246Vyx2ZTpELmdldEFzSnNvbigpLGV2ZW50VHlwZTp2fTtXPT09IlVOREVGSU5FRF9DU04iP3pxKCJ2aXN1YWxFbGVtZW50SGlkZGVuIixiLEQpOm4/dVIoInZpc3VhbEVsZW1lbnRIaWRkZW4iLEQsbixiKTpnLnpVKCJ2aXN1YWxFbGVtZW50SGlkZGVuIixELGIpfTsKcVZaPWZ1bmN0aW9uKG4sVyxELGIsdixrKXtqaShuLFcsRCxiLGspfTsKamk9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz12b2lkIDA7bGcoRCxXKTtrPWt8fCJJTlRFUkFDVElPTl9MT0dHSU5HX0dFU1RVUkVfVFlQRV9HRU5FUklDX0NMSUNLIjt2PVBhKHtjdHRBdXRoSW5mbzpRNChXKXx8dm9pZCAwLGF1dG9tYXRlZExvZ0V2ZW50U291cmNlOnZ9LFcpO0Q9e2NzbjpXLHZlOkQuZ2V0QXNKc29uKCksZ2VzdHVyZVR5cGU6a307YiYmKEQuY2xpZW50RGF0YT1iKTtXPT09IlVOREVGSU5FRF9DU04iP3pxKCJ2aXN1YWxFbGVtZW50R2VzdHVyZWQiLHYsRCk6bj91UigidmlzdWFsRWxlbWVudEdlc3R1cmVkIixELG4sdik6Zy56VSgidmlzdWFsRWxlbWVudEdlc3R1cmVkIixELHYpfTsKRyRqPWZ1bmN0aW9uKCl7dmFyIG49TWIoMTYpO3ZhciBXPVtdO2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7RCsrKVcucHVzaCgiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODktXyIuY2hhckF0KG5bRF0mNjMpKTtyZXR1cm4gVy5qb2luKCIiKX07CnpxPWZ1bmN0aW9uKG4sVyxEKXtDNC5wdXNoKHtwYXlsb2FkTmFtZTpuLHBheWxvYWQ6RCxwUDp2b2lkIDAsb3B0aW9uczpXfSk7QmF8fChCYT1GME0oKSl9OwpDNHc9ZnVuY3Rpb24obil7aWYoQzQpe2ZvcihsZXQgVyBvZiBDNClXLnBheWxvYWQmJihXLnBheWxvYWQuY3NuPW4uY3NuLGcuelUoVy5wYXlsb2FkTmFtZSxXLnBheWxvYWQsVy5vcHRpb25zKSk7QzQubGVuZ3RoPTB9QmE9MH07Cm9VPWZ1bmN0aW9uKG4sVyl7cmV0dXJuYCR7bi5nZXRBc0pzb24oKS52ZVR5cGV9JHtuLmdldEFzSnNvbigpLnZlQ291bnRlcn0ke1d9YH07CmxnPWZ1bmN0aW9uKG4sVyl7aWYoZy5sKCJub19jbGllbnRfdmVfYXR0YWNoX3VubGVzc19zaG93biIpKXt2YXIgRD1vVShuLFcpO3k1LnNldChELCEwKTtkSyhuLFcpfX07CmRLPWZ1bmN0aW9uKG4sVyl7bj1vVShuLFcpO1VhLmhhcyhuKSYmKFc9VWEuZ2V0KG4pfHxbXSx1ZyhXWzBdLFdbMV0sV1syXSxXWzNdLCEwKSxVYS5kZWxldGUobikpfTsKUGE9ZnVuY3Rpb24obixXKXtnLmwoImxvZ19zZXF1ZW5jZV9pbmZvX29uX2dlbF93ZWIiKSYmKG4uc2VxdWVuY2VHcm91cD1XKTtyZXR1cm4gbn07CkZqPWZ1bmN0aW9uKG4sVyxELGIpe1BWKFhXaikodm9pZCAwLG4sVyxELGIsdm9pZCAwKX07CnRFeD1mdW5jdGlvbihuLFcpe1BWKCgpPT57Zy55MihXLEQ9PntsZyhELG4pO3ZhciBiPVBhKHtjdHRBdXRoSW5mbzpRNChuKXx8dm9pZCAwLGF1dG9tYXRlZExvZ0V2ZW50U291cmNlOnZvaWQgMH0sbik7RD17Y3NuOm4sdmU6RC5nZXRBc0pzb24oKSxldmVudFR5cGU6NH07bj09PSJVTkRFRklORURfQ1NOIj96cSgidmlzdWFsRWxlbWVudFNob3duIixiLEQpOmcuelUoInZpc3VhbEVsZW1lbnRTaG93biIsRCxiKX0pfSkoKX07CiRIdD1mdW5jdGlvbihuLFcpe1BWKCgpPT57Zy55MihXLEQ9PntUcSh2b2lkIDAsbixEKX0pfSkoKX07CndLPWZ1bmN0aW9uKCl7dmFyIG49ITE7dHJ5e249ISF3aW5kb3cuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgic2Vzc2lvbl9sb2dpbmluZm8iKX1jYXRjaHtuPSEwfXJldHVybihnLkFyKCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJXRUIifHxnLkFyKCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJXRUJfQ1JFQVRPUiIpJiZufTsKTWc9ZnVuY3Rpb24oKXt0cnl7d2luZG93LnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oInN0aWNraW5lc3NfcmVsb2FkIik7d2luZG93LnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oInNlc3Npb25fbG9naW5pbmZvIik7Zy5TSCgiTE9HSU5fSU5GTyIsIiIpO3dpbmRvdy5zZXNzaW9uU3RvcmFnZS5zZXRJdGVtKCJmcm9tX3N3aXRjaF9hY2NvdW50IiwiMSIpO3ZhciBuO2xldCBEPXJTaDtEfHwoRD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjcGVyc2lzdF9pZGVudGl0eSIpKTtpZihuPUQpe3ZhciBXPW4uc3JjPyhuZXcgVVJMKG4uc3JjKSkub3JpZ2luOiIqIjtuLmNvbnRlbnRXaW5kb3c/LnBvc3RNZXNzYWdlKHthY3Rpb246ImNsZWFyIn0sVyl9fWNhdGNoe319OwpnLlJVPWZ1bmN0aW9uKG4pe24mJihuLnN0YXJ0c1dpdGgoImh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9BZGRTZXNzaW9uIik/TWcoKTpuLnN0YXJ0c1dpdGgoImh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9TZXJ2aWNlTG9naW4iKT9NZygpOm4uc3RhcnRzV2l0aCgiaHR0cHM6Ly9teWFjY291bnQuZ29vZ2xlLmNvbSIpJiZscihuKS5KLmVuZHNXaXRoKCIveW91dHViZW9wdGlvbnMiKSYmTWcoKSk7aWYoZy5BcigiTE9HR0VEX0lOIiwhMCkmJndLKCkpe3ZhciBXPWcuQXIoIlZBTElEX1NFU1NJT05fVEVNUERBVEFfRE9NQUlOUyIsW10pO3ZhciBEPWcuSVAod2luZG93LmxvY2F0aW9uLmhyZWYpO0QmJlcucHVzaChEKTtEPWcuSVAobik7Zy5qaihXLEQpfHwhRCYmZy5qVShuLCIvIik/KFc9bVcobiksKFc9S3AoVykpPyhXPVdhKFcpLFc9KFc9Zy5TZChXKXx8bnVsbCk/Zy5pdyhXKTp7fSk6Vz1udWxsKTpXPW51bGw7Vz09bnVsbCYmKFc9e30pO0Q9Vzt2YXIgYj12b2lkIDA7CndLKCk/KGJ8fChiPWcuQXIoIkxPR0lOX0lORk8iKSksYj8oRC5zZXNzaW9uX2xvZ2luaW5mbz1iLEQ9ITApOkQ9ITEpOkQ9ITE7RCYmbjQobixXKX19OwpRNT1mdW5jdGlvbihuLFc9e30pe3ZhciBEPWcuQXIoIkVWRU5UX0lEIik7RCYmKFcuZWl8fChXLmVpPUQpKTtXJiZuNChuLFcpfTsKZy5jYT1mdW5jdGlvbihuLFcsRCxiLHY9ITEpe0QmJm40KG4sRCk7RD1nLnRGKG4sZy5HNCl8fGcuVjU7dmFyIGs9Z3ooRCk7biE9ayYmWkUoRXJyb3IoYFVuc2FmZSB3aW5kb3cub3BlbiBVUkw6ICR7bn1gKSk7bj1rO1c9V3x8c1QobikudG9TdHJpbmcoMzYpO3RyeXtpZih2KXJldHVybiB2PW4sdj1nLnFiKHYpLGcuUlUodiksSkYodixXLCJhdHRyaWJ1dGlvbnNyYyIpfWNhdGNoKGgpe090KGgpfWcuUlUobik7cmV0dXJuIEpGKEQsVyxiKX07Ck5lMj1mdW5jdGlvbigpe3ZhciBuPXdpbmRvdy5sb2NhdGlvbi5ocmVmO2lmKGcubCgia2V2bGFyX2Rpc2FibGVfdGhlbWVfcGFyYW0iKSlyZXR1cm4gbnVsbDtTMShuKTt0cnl7bGV0IFc9Zy5vRShuKS50aGVtZTtyZXR1cm4gc1lVLmdldChXKXx8bnVsbH1jYXRjaChXKXt9cmV0dXJuIG51bGx9OwphVT1mdW5jdGlvbihuLFcpe2lmKFcuZW5jcnlwdGVkVG9rZW5KYXJDb250ZW50cyYmKG4uTltXLmVuY3J5cHRlZFRva2VuSmFyQ29udGVudHNdPVcsdHlwZW9mIFcuZXhwaXJhdGlvblNlY29uZHM9PT0ic3RyaW5nIikpe2xldCBEPU51bWJlcihXLmV4cGlyYXRpb25TZWNvbmRzKTtzZXRUaW1lb3V0KCgpPT57ZGVsZXRlIG4uTltXLmVuY3J5cHRlZFRva2VuSmFyQ29udGVudHNdfSxEKjFFMyk7Cm4uSiYmSUsoIkNPTlNJU1RFTkNZIixXLmVuY3J5cHRlZFRva2VuSmFyQ29udGVudHMsRCx2b2lkIDAsITApfX07Cm5CPWZ1bmN0aW9uKG4pe3JldHVybiBuLmxvY2FsU3RvcmFnZT09PXZvaWQgMD9uZXcgdEkoInl0LWNsaWVudC1sb2NhdGlvbiIpOm4ubG9jYWxTdG9yYWdlfTsKZy52Yj1mdW5jdGlvbihuLFc9ITEsRD0hMSxiLHYpe3ZhciBrPWcuQXIoIklOTkVSVFVCRV9DT05URVhUIik7aWYoIWspcmV0dXJuIGcuWGooRXJyb3IoIkVycm9yOiBObyBJbm5lclR1YmVDb250ZXh0IHNoZWxsIHByb3ZpZGVkIGluIHl0Y29uZmlnLiIpKSx7fTtrPWcuTmMoayk7Zy5sKCJ3ZWJfbm9fdHJhY2tpbmdfcGFyYW1zX2luX3NoZWxsX2tpbGxzd2l0Y2giKXx8ZGVsZXRlIGsuY2xpY2tUcmFja2luZztrLmNsaWVudHx8KGsuY2xpZW50PXt9KTt2YXIgaD1rLmNsaWVudDtoLmNsaWVudE5hbWU9PT0iTVdFQiImJmguY2xpZW50Rm9ybUZhY3RvciE9PSJBVVRPTU9USVZFX0ZPUk1fRkFDVE9SIiYmKGguY2xpZW50Rm9ybUZhY3Rvcj1nLkFyKCJJU19UQUJMRVQiKT8iTEFSR0VfRk9STV9GQUNUT1IiOiJTTUFMTF9GT1JNX0ZBQ1RPUiIpO2guc2NyZWVuV2lkdGhQb2ludHM9d2luZG93LmlubmVyV2lkdGg7aC5zY3JlZW5IZWlnaHRQb2ludHM9d2luZG93LmlubmVySGVpZ2h0O2guc2NyZWVuUGl4ZWxEZW5zaXR5PQpNYXRoLnJvdW5kKHdpbmRvdy5kZXZpY2VQaXhlbFJhdGlvfHwxKTtoLnNjcmVlbkRlbnNpdHlGbG9hdD13aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MTtoLnV0Y09mZnNldE1pbnV0ZXM9LU1hdGguZmxvb3IoKG5ldyBEYXRlKS5nZXRUaW1lem9uZU9mZnNldCgpKTt2YXIgeD1nLm85KCk7dmFyIEw9IlVTRVJfSU5URVJGQUNFX1RIRU1FX0xJR0hUIjt4LlFRKDE2NSk/TD0iVVNFUl9JTlRFUkZBQ0VfVEhFTUVfREFSSyI6eC5RUSgxNzQpP0w9IlVTRVJfSU5URVJGQUNFX1RIRU1FX0xJR0hUIjohZy5sKCJrZXZsYXJfbGVnYWN5X2Jyb3dzZXJzIikmJndpbmRvdy5tYXRjaE1lZGlhJiZ3aW5kb3cubWF0Y2hNZWRpYSgiKHByZWZlcnMtY29sb3Itc2NoZW1lKSIpLm1hdGNoZXMmJndpbmRvdy5tYXRjaE1lZGlhKCIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIikubWF0Y2hlcyYmKEw9IlVTRVJfSU5URVJGQUNFX1RIRU1FX0RBUksiKTt4PU5lMigpfHxMO2gudXNlckludGVyZmFjZVRoZW1lPQp4O2cubCgid2ViX3Byb3BhZ2F0ZV92aXNpYmlsaXR5X3RvX2FwcGxpY2F0aW9uX3N0YXRlIikmJmcucWkuZG9jdW1lbnQmJihoLmFwcGxpY2F0aW9uU3RhdGU9Zy5xaS5kb2N1bWVudC52aXNpYmlsaXR5U3RhdGU9PT0iaGlkZGVuIj8iQkFDS0dST1VORCI6IkFDVElWRSIpO2lmKCFXKXtpZih4PUJCKCkpaC5jb25uZWN0aW9uVHlwZT14O2cubCgid2ViX2xvZ19lZmZlY3RpdmVfY29ubmVjdGlvbl90eXBlIikmJih4PXdKKCkpJiYoay5jbGllbnQuZWZmZWN0aXZlQ29ubmVjdGlvblR5cGU9eCl9Zy5sKCJ3ZWJfbG9nX21lbW9yeV90b3RhbF9rYnl0ZXMiKSYmZy5xaS5uYXZpZ2F0b3I/LmRldmljZU1lbW9yeSYmKGsuY2xpZW50Lm1lbW9yeVRvdGFsS2J5dGVzPWAke2cucWkubmF2aWdhdG9yPy5kZXZpY2VNZW1vcnkqMUU2fWApO1cmJmImJiFnLmwoIndlYl9pdF9jb250ZXh0X3NldF9vcmlnaW5hbF91cmxfa3MiKSYmKHg9YixMPWcucWkubG9jYXRpb24uaHJlZixMIGluc3RhbmNlb2YKZy5Vanx8KEw9bHIoTCkpLHggaW5zdGFuY2VvZiBnLlVqfHwoeD1scih4KSkseD1MLnJlc29sdmUoeCksaC5vcmlnaW5hbFVybD14LnRvU3RyaW5nKCkpO2lmKGcubCgid2ViX2djZl9oYXNoZXNfaW5uZXJ0dWJlIikpe3ZhciBlPUo3KCk7ZSYmKHg9ZS5jb2xkQ29uZmlnRGF0YSxMPWUuY29sZEhhc2hEYXRhLGU9ZS5ob3RIYXNoRGF0YSxrLmNsaWVudC5jb25maWdJbmZvPWsuY2xpZW50LmNvbmZpZ0luZm98fHt9LHgmJihrLmNsaWVudC5jb25maWdJbmZvLmNvbGRDb25maWdEYXRhPXgpLEwmJihrLmNsaWVudC5jb25maWdJbmZvLmNvbGRIYXNoRGF0YT1MKSxlJiYoay5jbGllbnQuY29uZmlnSW5mby5ob3RIYXNoRGF0YT1lKSl9eD1nLm9FKGcucWkubG9jYXRpb24uaHJlZik7IWcubCgid2ViX3BvcHVsYXRlX2ludGVybmFsX2dlb19raWxsc3dpdGNoIikmJnguaW50ZXJuYWxjb3VudHJ5Y29kZSYmKGguaW50ZXJuYWxHZW89eC5pbnRlcm5hbGNvdW50cnljb2RlKTshZy5sKCJ3ZWJfcG9wdWxhdGVfY2xpZW50X3NjcmVlbl9raWxsc3dpdGNoIikmJgp2JiYoaC5jbGllbnRTY3JlZW49dik7aC5jbGllbnROYW1lPT09Ik1XRUIifHxoLmNsaWVudE5hbWU9PT0iV0VCIj8oaC5tYWluQXBwV2ViSW5mb3x8KGgubWFpbkFwcFdlYkluZm89e30pLGgubWFpbkFwcFdlYkluZm8uZ3JhZnRVcmw9Ynx8Zy5xaS5sb2NhdGlvbi5ocmVmLGcubCgia2V2bGFyX3dvZmZsZSIpJiZXYi5pbnN0YW5jZSYmKGI9V2IuaW5zdGFuY2UsaC5tYWluQXBwV2ViSW5mby5wd2FJbnN0YWxsYWJpbGl0eVN0YXR1cz0hYi5OJiZiLko/IlBXQV9JTlNUQUxMQUJJTElUWV9TVEFUVVNfQ0FOX0JFX0lOU1RBTExFRCI6IlBXQV9JTlNUQUxMQUJJTElUWV9TVEFUVVNfVU5LTk9XTiIpLGgubWFpbkFwcFdlYkluZm8ud2ViRGlzcGxheU1vZGU9eXgoKSxoLm1haW5BcHBXZWJJbmZvLmlzV2ViTmF0aXZlU2hhcmVBdmFpbGFibGU9bmF2aWdhdG9yJiZuYXZpZ2F0b3Iuc2hhcmUhPT12b2lkIDApOmguY2xpZW50TmFtZT09PSJUVkhUTUw1IiYmKCFnLmwoIndlYl9scl9hcHBfcXVhbGl0eV9raWxsc3dpdGNoIikmJgooYj1nLkFyKCJMSVZJTkdfUk9PTV9BUFBfUVVBTElUWSIpKSYmKGgudHZBcHBJbmZvPU9iamVjdC5hc3NpZ24oaC50dkFwcEluZm98fHt9LHthcHBRdWFsaXR5OmJ9KSksYj1nLkFyKCJMSVZJTkdfUk9PTV9DRVJUSUZJQ0FUSU9OX1NDT1BFIikpJiYoaC50dkFwcEluZm89T2JqZWN0LmFzc2lnbihoLnR2QXBwSW5mb3x8e30se2NlcnRpZmljYXRpb25TY29wZTpifSkpO2lmKCFnLmwoIndlYl9wb3B1bGF0ZV90aW1lX3pvbmVfaXRjX2tpbGxzd2l0Y2giKSl7YTp7aWYodHlwZW9mIEludGwhPT0idW5kZWZpbmVkIil0cnl7dmFyIEc9KG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZTticmVhayBhfWNhdGNoe31HPXZvaWQgMH1HJiYoaC50aW1lWm9uZT1HKX0oRz1rVCgpKT9oLmV4cGVyaW1lbnRzVG9rZW49RzpkZWxldGUgaC5leHBlcmltZW50c1Rva2VuO2g9aHkoKTtETS5pbnN0YW5jZXx8KERNLmluc3RhbmNlPW5ldyBETSk7Rz1oSyhETS5pbnN0YW5jZS5OKTsKay5yZXF1ZXN0PXsuLi5rLnJlcXVlc3QsaW50ZXJuYWxFeHBlcmltZW50RmxhZ3M6aCxjb25zaXN0ZW5jeVRva2VuSmFyczpHfTshZy5sKCJ3ZWJfcHJlcXVlc3RfY29udGV4dF9raWxsc3dpdGNoIikmJihoPWcuQXIoIklOTkVSVFVCRV9DT05URVhUX1BSRVFVRVNUX0NPTlRFWFQiKSkmJihrLnJlcXVlc3QuZXh0ZXJuYWxQcmVxdWVzdENvbnRleHQ9aCk7Rz1nLm85KCk7aD1HLlFRKDU4KTtHPUcuZ2V0KCJnc21sIiwiIik7ay51c2VyPXsuLi5rLnVzZXJ9O2gmJihrLnVzZXIuZW5hYmxlU2FmZXR5TW9kZT1oKTtHJiYoay51c2VyLmxvY2tlZFNhZmV0eU1vZGU9ITApO2cubCgid2FybV9vcF9jc25fY2xlYW51cCIpP0QmJihXPWcuUnYoKSkmJihrLmNsaWVudFNjcmVlbk5vbmNlPVcpOiFXJiYoVz1nLlJ2KCkpJiYoay5jbGllbnRTY3JlZW5Ob25jZT1XKTtuJiYoay5jbGlja1RyYWNraW5nPXtjbGlja1RyYWNraW5nUGFyYW1zOm59KTtpZihuPWcucnIoInl0Lm1keC5yZW1vdGUucmVtb3RlQ2xpZW50XyIpKWsucmVtb3RlQ2xpZW50PQpuO2IkLmdldEluc3RhbmNlKCkuc2V0TG9jYXRpb25PbklubmVyVHViZUNvbnRleHQoayk7dHJ5e3ZhciByPWcuUUYoKSxOPXIuYmlkO2RlbGV0ZSByLmJpZDtrLmFkU2lnbmFsc0luZm89e3BhcmFtczpbXSxiaWQ6Tn07Zm9yKGxldCBbSCxBXW9mIE9iamVjdC5lbnRyaWVzKHIpKXI9SCxOPUEsay5hZFNpZ25hbHNJbmZvLnBhcmFtcz8ucHVzaCh7a2V5OnIsdmFsdWU6YCR7Tn1gfSk7aWYoay5jbGllbnQ/LmNsaWVudE5hbWU9PT0iVFZIVE1MNSJ8fGsuY2xpZW50Py5jbGllbnROYW1lPT09IlRWSFRNTDVfVU5QTFVHR0VEIil7bGV0IEg9Zy5BcigiSU5ORVJUVUJFX0NPTlRFWFQiKTtILmFkU2lnbmFsc0luZm8mJihrLmFkU2lnbmFsc0luZm8uYWR2ZXJ0aXNpbmdJZD1ILmFkU2lnbmFsc0luZm8uYWR2ZXJ0aXNpbmdJZCxrLmFkU2lnbmFsc0luZm8uYWR2ZXJ0aXNpbmdJZFNpZ25hbFR5cGU9IkRFVklDRV9JRF9UWVBFX0NPTk5FQ1RFRF9UVl9JRkEiLGsuYWRTaWduYWxzSW5mby5saW1pdEFkVHJhY2tpbmc9CkguYWRTaWduYWxzSW5mby5saW1pdEFkVHJhY2tpbmcsSC5hZFNpZ25hbHNJbmZvLmF0VHJhY2tpbmdNYW5hZ2VyQXV0aG9yaXphdGlvblN0YXR1cyE9PXZvaWQgMCYmKGsuYWRTaWduYWxzSW5mby5hdFRyYWNraW5nTWFuYWdlckF1dGhvcml6YXRpb25TdGF0dXM9SC5hZFNpZ25hbHNJbmZvLmF0VHJhY2tpbmdNYW5hZ2VyQXV0aG9yaXphdGlvblN0YXR1cykpfX1jYXRjaChIKXtnLlhqKEgpfXJldHVybiBrfTsKa1Y9ZnVuY3Rpb24obil7dmFyIFc9eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn07Zy5BcigiRU9NX1ZJU0lUT1JfREFUQSIpP1dbIlgtR29vZy1FT00tVmlzaXRvci1JZCJdPWcuQXIoIkVPTV9WSVNJVE9SX0RBVEEiKTpnLkFyKCJWSVNJVE9SX0RBVEEiKSYmKFdbIlgtR29vZy1WaXNpdG9yLUlkIl09Zy5BcigiVklTSVRPUl9EQVRBIikpO1dbIlgtWW91dHViZS1Cb290c3RyYXAtTG9nZ2VkLUluIl09Zy5BcigiTE9HR0VEX0lOIiwhMSk7Zy5BcigiREVCVUdfU0VUVElOR1NfTUVUQURBVEEiKSYmKFdbIlgtRGVidWctU2V0dGluZ3MtTWV0YWRhdGEiXT1nLkFyKCJERUJVR19TRVRUSU5HU19NRVRBREFUQSIpKTtuIT09ImNvcnMiJiYoKG49Zy5BcigiSU5ORVJUVUJFX0NPTlRFWFRfQ0xJRU5UX05BTUUiKSkmJihXWyJYLVlvdXR1YmUtQ2xpZW50LU5hbWUiXT1uKSwobj1nLkFyKCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfVkVSU0lPTiIpKSYmKFdbIlgtWW91dHViZS1DbGllbnQtVmVyc2lvbiJdPQpuKSwobj1nLkFyKCJDSFJPTUVfQ09OTkVDVEVEX0hFQURFUiIpKSYmKFdbIlgtWW91dHViZS1DaHJvbWUtQ29ubmVjdGVkIl09biksKG49Zy5BcigiRE9NQUlOX0FETUlOX1NUQVRFIikpJiYoV1siWC1Zb3V0dWJlLURvbWFpbi1BZG1pbi1TdGF0ZSJdPW4pLChuPWIkLmdldEluc3RhbmNlKCkuZ2V0WEdlb0hlYWRlcj8uKCkpJiYoV1siWC1HZW8iXT1uKSk7KG49Zy5BcigiU0VSSUFMSVpFRF9MQVZBX0RFVklDRV9DT05URVhUIikpJiYoV1siWC1Zb3VUdWJlLUxhdmEtRGV2aWNlLUNvbnRleHQiXT1uKTtyZXR1cm4gV307CmhtPWZ1bmN0aW9uKG4pe3JldHVybigpPT5uZXcgbn07CnBXTT1mdW5jdGlvbihuKXtpZihuLmxlbmd0aD09PTEpcmV0dXJuIG5bMF07dmFyIFc9eFYuVU5LTk9XTl9JTlRFUkZBQ0U7aWYoVyl7Vz1uZXcgUmVnRXhwKFcpO2Zvcih2YXIgRCBvZiBuKWlmKFcuZXhlYyhEKSlyZXR1cm4gRH12YXIgYj1bXTtPYmplY3QuZW50cmllcyh4VikuZm9yRWFjaCgoW3Ysa10pPT57IlVOS05PV05fSU5URVJGQUNFIiE9PXYmJmIucHVzaChrKX0pOwpEPW5ldyBSZWdFeHAoYi5qb2luKCJ8IikpO24uc29ydCgodixrKT0+di5sZW5ndGgtay5sZW5ndGgpOwpmb3IobGV0IHYgb2YgbilpZighRC5leGVjKHYpKXJldHVybiB2O3JldHVybiBuWzBdfTsKTEI9ZnVuY3Rpb24obil7cmV0dXJuYC95b3V0dWJlaS92MS8ke3BXTShuKX1gfTsKZ2I9ZnVuY3Rpb24obil7cmV0dXJuIGcucnIoInl0Y3NpLiIrKG58fCIiKSsiZGF0YV8iKXx8ZUwobil9OwpYQT1mdW5jdGlvbigpe3ZhciBuPWdiKCk7bi5pbmZvfHwobi5pbmZvPXt9KTtyZXR1cm4gbi5pbmZvfTsKcVE9ZnVuY3Rpb24obil7bj1nYihuKTtuLm1ldGFkYXRhfHwobi5tZXRhZGF0YT17fSk7cmV0dXJuIG4ubWV0YWRhdGF9OwpHdz1mdW5jdGlvbihuKXtuPWdiKG4pO24udGlja3x8KG4udGljaz17fSk7cmV0dXJuIG4udGlja307CnRtPWZ1bmN0aW9uKG4pe249Z2Iobik7aWYobi5nZWwpe2xldCBXPW4uZ2VsO1cuZ2VsSW5mb3N8fChXLmdlbEluZm9zPXt9KTtXLmdlbFRpY2tzfHwoVy5nZWxUaWNrcz17fSl9ZWxzZSBuLmdlbD17Z2VsVGlja3M6e30sZ2VsSW5mb3M6e319O3JldHVybiBuLmdlbH07CiRWPWZ1bmN0aW9uKG4pe249dG0obik7bi5nZWxJbmZvc3x8KG4uZ2VsSW5mb3M9e30pO3JldHVybiBuLmdlbEluZm9zfTsKWVZTPWZ1bmN0aW9uKCl7dmFyIG49dG0oKTtuLnByZUxvZ2dlZEdlbEluZm9zfHwobi5wcmVMb2dnZWRHZWxJbmZvcz1bXSk7cmV0dXJuIG4ucHJlTG9nZ2VkR2VsSW5mb3N9OwpyYj1mdW5jdGlvbihuKXt2YXIgVz1nYihuKS5ub25jZTtXfHwoVz1nLlJJKDE2KSxnYihuKS5ub25jZT1XKTtyZXR1cm4gV307CmVMPWZ1bmN0aW9uKG4pe3ZhciBXPXt0aWNrOnt9LGluZm86e319O2cuR2IoInl0Y3NpLiIrKG58fCIiKSsiZGF0YV8iLFcpO3JldHVybiBXfTsKc0g9ZnVuY3Rpb24oKXt2YXIgbj1nLnJyKCJ5dGNzaS5kZWJ1ZyIpO258fChuPVtdLGcuR2IoInl0Y3NpLmRlYnVnIixuKSxnLkdiKCJ5dGNzaS5yZWZlcmVuY2UiLHt9KSk7cmV0dXJuIG59OwpwQj1mdW5jdGlvbihuKXt2YXIgVz1zSCgpO1cucHVzaChuKTtnLmwoImxpbWl0X3l0Y3NpX2RlYnVnX2FycmF5X3NpemUiKSYmVy5sZW5ndGg+TlEmJlcuc3BsaWNlKDAsVy5sZW5ndGgtTlEpfTsKSGI9ZnVuY3Rpb24obil7bj1ufHwiIjt2YXIgVz1ZVigpO2lmKFdbbl0pcmV0dXJuIFdbbl07dmFyIEQ9e3RpbWVyTmFtZTpuLGluZm86e30sdGljazp7fSxzcGFuOnt9LGpzcGJJbmZvOltdfTtwQihEKTtyZXR1cm4gV1tuXT1EfTsKZkI9ZnVuY3Rpb24obil7bj1ufHwiIjt2YXIgVz1ZVigpO1dbbl0mJmRlbGV0ZSBXW25dO3ZhciBEPXt0aW1lck5hbWU6bixpbmZvOnt9LHRpY2s6e30sc3Bhbjp7fSxqc3BiSW5mbzpbXX07cEIoRCk7V1tuXT1EfTsKWVY9ZnVuY3Rpb24oKXt2YXIgbj1nLnJyKCJ5dGNzaS5yZWZlcmVuY2UiKTtpZihuKXJldHVybiBuO3NIKCk7cmV0dXJuIGcucnIoInl0Y3NpLnJlZmVyZW5jZSIpfTsKSUw9ZnVuY3Rpb24obil7cmV0dXJuIEptW25dfHwiTEFURU5DWV9BQ1RJT05fVU5LTk9XTiJ9OwpIbnI9ZnVuY3Rpb24obixXLEQ9e30pe3ZhciBiPU1hdGgucm91bmQoRC50aW1lc3RhbXB8fCgwLGcuUikoKSk7SVkobiwxLGI8TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVI/YjowKTtiPW5ldyBTTDtpZihELmxhY3QpSVkoYiwxLGlzRmluaXRlKEQubGFjdCk/RC5sYWN0Oi0xKTtlbHNlIGlmKEQudGltZXN0YW1wKUlZKGIsMSwtMSk7ZWxzZXt2YXIgdj1nLnZJKCk7SVkoYiwxLGlzRmluaXRlKHYpP3Y6LTEpfWlmKEQuc2VxdWVuY2VHcm91cCYmIWcubCgid2ViX2dlbF9zZXF1ZW5jZV9pbmZvX2tpbGxzd2l0Y2giKSl7dj1ELnNlcXVlbmNlR3JvdXA7bGV0IGs9RXkodiksaD1uZXcgQW07SVkoaCwyLGspO2cuU0UoaCwxLHYpOyQ5KGIsQW0sMyxoKTtELmVuZE9mU2VxdWVuY2UmJmRlbGV0ZSBtcVtELnNlcXVlbmNlR3JvdXBdfSQ5KG4sU0wsMzMsYik7KEQuc2VuZElzb2xhdGVkUGF5bG9hZD9jSTpQVzEpKCJsYXRlbmN5QWN0aW9uSW5mbyIse2VuZHBvaW50OiJsb2dfZXZlbnQiLHBheWxvYWQ6biwKY3R0QXV0aEluZm86RC5jdHRBdXRoSW5mbyxkYW5nZXJvdXNMb2dUb1Zpc2l0b3JTZXNzaW9uOkQuZGFuZ2Vyb3VzTG9nVG9WaXNpdG9yU2Vzc2lvbn0sVyl9OwpmMmo9ZnVuY3Rpb24obixXPXt9KXt2YXIgRD0hMTtnLkFyKCJ5dExvZ2dpbmdFdmVudHNEZWZhdWx0RGlzYWJsZWQiLCExKSYmKEQ9ITApO0hucihuLEQ/bnVsbDpnLmQ0LFcpfTsKT0g9ZnVuY3Rpb24oKXtLQi5pbnN0YW5jZXx8KEtCLmluc3RhbmNlPW5ldyBLQik7cmV0dXJuIEtCLmluc3RhbmNlfTsKWk09ZnVuY3Rpb24obixXKXtQYltXXT1QYltXXXx8e2NvdW50OjB9O3ZhciBEPVBiW1ddO0QuY291bnQrKztELnRpbWU9KDAsZy5SKSgpO24uTnx8KG4uTj1nLmNCKDAsKCk9Pnt2YXIgYj0oMCxnLlIpKCk7Zm9yKGxldCB2IGluIFBiKVBiW3ZdJiZiLVBiW3ZdLnRpbWU+NkU0JiZkZWxldGUgUGJbdl07biYmKG4uTj0wKX0sNUUzKSk7CnJldHVybiBELmNvdW50PjU/KEQuY291bnQ9PT02JiZNYXRoLnJhbmRvbSgpKjFFNTwxJiYoRD1uZXcgZy5ReCgiQ1NJIGRhdGEgZXhjZWVkZWQgbG9nZ2luZyBsaW1pdCB3aXRoIGtleSIsVy5zcGxpdCgiXyIpKSxXLmluZGV4T2YoInBsZXYiKT49MHx8Zy5HcShEKSksITApOiExfTsKRUg9ZnVuY3Rpb24oKXt2YXIgbjtnLmwoImNzaV91c2VfcGVyZm9ybWFuY2VfbmF2aWdhdGlvbl90aW1pbmciKT8obj1VSD8uZ2V0RW50cmllc0J5VHlwZT8uKCJuYXZpZ2F0aW9uIik/LlswXT8udG9KU09OPy4oKSk/KG4ucmVxdWVzdFN0YXJ0PXl2KG4ucmVxdWVzdFN0YXJ0KSxuLnJlc3BvbnNlRW5kPXl2KG4ucmVzcG9uc2VFbmQpLG4ucmVkaXJlY3RTdGFydD15dihuLnJlZGlyZWN0U3RhcnQpLG4ucmVkaXJlY3RFbmQ9eXYobi5yZWRpcmVjdEVuZCksbi5kb21haW5Mb29rdXBFbmQ9eXYobi5kb21haW5Mb29rdXBFbmQpLG4uY29ubmVjdFN0YXJ0PXl2KG4uY29ubmVjdFN0YXJ0KSxuLmNvbm5lY3RFbmQ9eXYobi5jb25uZWN0RW5kKSxuLnJlc3BvbnNlU3RhcnQ9eXYobi5yZXNwb25zZVN0YXJ0KSxuLnNlY3VyZUNvbm5lY3Rpb25TdGFydD15dihuLnNlY3VyZUNvbm5lY3Rpb25TdGFydCksbi5kb21haW5Mb29rdXBTdGFydD15dihuLmRvbWFpbkxvb2t1cFN0YXJ0KSxuLmlzUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPQohMCk6bj1VSC50aW1pbmc6bj1nLmwoImNzaV9wZXJmb3JtYW5jZV90aW1pbmdfdG9fb2JqZWN0Iik/SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShVSC50aW1pbmcpKTpVSC50aW1pbmc7cmV0dXJuIG59Owp5dj1mdW5jdGlvbihuKXtyZXR1cm4gTWF0aC5yb3VuZChpJCgpK24pfTsKaSQ9ZnVuY3Rpb24oKXtyZXR1cm4oZy5sKCJjc2lfdXNlX3RpbWVfb3JpZ2luIil8fGcubCgiY3NpX3VzZV90aW1lX29yaWdpbl90dmh0bWw1IikpJiZVSC50aW1lT3JpZ2luP01hdGguZmxvb3IoVUgudGltZU9yaWdpbik6VUgudGltaW5nLm5hdmlnYXRpb25TdGFydH07CkpTcj1mdW5jdGlvbigpe3ZhciBuPVlWUygpLFc9JFYoKSxEPXZvaWQgMDtmb3IodmFyIGI9MDtiPG4ubGVuZ3RoO2IrKyl7bGV0IHg9bltiXTtpZih4LmxvYWRUeXBlKXtEPXgubG9hZFR5cGU7YnJlYWt9fWlmKHFRKCkubG9hZFR5cGU9PT0iY29sZCImJihXLmxvYWRUeXBlPT09ImNvbGQifHxEPT09ImNvbGQiKSl7RD1HdygpO2I9dG0oKTtiPWIuZ2VsVGlja3M/Yi5nZWxUaWNrczpiLmdlbFRpY2tzPXt9O2Zvcih2YXIgdiBpbiBEKXYgaW4gYnx8dHlwZW9mIERbdl09PT0ibnVtYmVyIiYmdSQodixvTCh2KSk7dmFyIGs9e30saD0hMTt2PXg9PntqdyhXLHgpO2p3KGsseCk7aD0hMH07CmZvcihsZXQgeCBvZiBuKXYoeCk7aCYmZGIoayl9fTsKenc9ZnVuY3Rpb24obixXKXt1JCgiX3N0YXJ0IixuLFcpfTsKZGI9ZnVuY3Rpb24obixXKXtpZighZy5sKCJ3ZWJfY3NpX2FjdGlvbl9zYW1wbGluZ19lbmFibGVkIil8fCFnYihXKS5hY3Rpb25EaXNhYmxlZCl7dmFyIEQ9SGIoV3x8IiIpO2p3KEQuaW5mbyxuKTtuLmxvYWRUeXBlJiYoRD1uLmxvYWRUeXBlLHFRKFcpLmxvYWRUeXBlPUQpO2p3KCRWKFcpLG4pO0Q9cmIoVyk7Vz1nYihXKS5jdHRBdXRoSW5mbztPSCgpLmluZm8obixELFcpfX07CkkyWj1mdW5jdGlvbigpe3JldHVybihnLnFqKCkucmVzb2x2ZShnLmhwKGcuWDMpKT8uTFgoKT8ubG9nZ2luZ0hvdENvbmZpZz8uY3NpQ29uZmlnPy5kZWJ1Z1RpY2tzPz9bXSkubWFwKG49Pk9iamVjdC52YWx1ZXMobilbMF0pfTsKdSQ9ZnVuY3Rpb24obixXLEQpe2lmKCFnLmwoIndlYl9jc2lfYWN0aW9uX3NhbXBsaW5nX2VuYWJsZWQiKXx8IWdiKEQpLmFjdGlvbkRpc2FibGVkKXt2YXIgYj1yYihEKSx2O2lmKHY9Zy5sKCJ3ZWJfY3NpX2RlYnVnX3NhbXBsZV9lbmFibGVkIikmJmIpe2cucWooKS5yZXNvbHZlKGcuaHAoZy5YMykpPy5MWCgpJiYhbCQmJihsJD0hMCx1JCgiZ2NmbCIsKDAsZy5SKSgpLEQpKTt2PWcucWooKS5yZXNvbHZlKGcuaHAoZy5YMykpPy5MWCgpPy5sb2dnaW5nSG90Q29uZmlnPy5jc2lDb25maWc/LmRlYnVnU2FtcGxlV2VpZ2h0fHwwO3ZhciBrO2lmKGs9diE9PTApYjp7az1JMlooKTtpZihrLmxlbmd0aD4wKWZvcih2YXIgaD0wO2g8ay5sZW5ndGg7aCsrKWlmKG49PT1rW2hdKXtrPSEwO2JyZWFrIGJ9az0hMX1rPyh2PU9hKGIpJXYhPT0wLGdiKEQpLmRlYnVnVGlja3NFeGNsdWRlZExvZ2dlZHx8KGs9e30say5kZWJ1Z1RpY2tzRXhjbHVkZWQ9dixkYihrLEQpKSxnYihEKS5kZWJ1Z1RpY2tzRXhjbHVkZWRMb2dnZWQ9CiEwKTp2PSExfWlmKCF2KXtpZihuWzBdIT09Il8iJiYodj1uLFVILm1hcmspKXt2LnN0YXJ0c1dpdGgoIm1hcmtfIil8fCh2PSJtYXJrXyIrdik7RCYmKHYrPWAgKCR7RH0pYCk7az12O2g9e307aWYoVyE9PXZvaWQgMCYmIWcubCgid2ViX2NzaV9kaXNhYmxlX2FsdF90aW1lX3BlcmZvcm1hbmNlX21hcmsiKSl7bGV0IEw9VztMPWcubCgiY3NpX3VzZV9wZXJmb3JtYW5jZV9uYXZpZ2F0aW9uX3RpbWluZyIpP0wtVUgudGltZU9yaWdpbjpMLShVSC50aW1lT3JpZ2lufHxVSC50aW1pbmcubmF2aWdhdGlvblN0YXJ0KTtoLnN0YXJ0VGltZT1MfWcubCgiY3NpX2VuYWJsZV9jaHJvbWVfZGV2dG9vbHNfcGVyZm9ybWFuY2VfdGltZWxpbmVfaW50ZWdyYXRpb24iKSYmKGguZGV0YWlsPXtHVTp7ZGF0YVR5cGU6Im1hcmtlciIsY29sb3I6InByaW1hcnkiLHRvb2x0aXBUZXh0Omt9fSk7az1PYmplY3Qua2V5cyhoKS5sZW5ndGg+MD9oOnZvaWQgMDt0cnl7VUgubWFyayh2LGspfWNhdGNoKEwpe1VILm1hcmsodil9fXY9CkhiKER8fCIiKTt2LnRpY2tbbl09V3x8KDAsZy5SKSgpO2lmKHYuY2FsbGJhY2smJnYuY2FsbGJhY2tbbl0pZm9yKHZhciB4IG9mIHYuY2FsbGJhY2tbbl0peCgpO3g9dG0oRCk7eC5nZWxUaWNrcyYmKHguZ2VsVGlja3Nbbl09ITApO3Y9R3coRCk7eD1XfHwoMCxnLlIpKCk7dltuXT14O3Y9Z2IoRCkuY3R0QXV0aEluZm87bj09PSJfc3RhcnQiPyhuPU9IKCksWk0obixgYmFzZWxpbmVfJHtifWApfHxnLnpVKCJsYXRlbmN5QWN0aW9uQmFzZWxpbmVkIix7Y2xpZW50QWN0aW9uTm9uY2U6Yn0se3RpbWVzdGFtcDpXLGN0dEF1dGhJbmZvOnZ9KSk6T0goKS50aWNrKG4sYixXLHYpO1R3KEQpO3JldHVybiB4fX19OwpTVjE9ZnVuY3Rpb24oKXt2YXIgbj1VSC5nZXRFbnRyaWVzQnlUeXBlPy4oIm1hcmsiKTtuJiZuLmZvckVhY2goVz0+e1cubmFtZS5zdGFydHNXaXRoKCJtYXJrXyIpJiZVSC5jbGVhck1hcmtzPy4oVy5uYW1lKX0pfTsKakw9ZnVuY3Rpb24oKXtzd2l0Y2goRzEoKSl7Y2FzZSAiaGlkZGVuIjpyZXR1cm4gMDtjYXNlICJ2aXNpYmxlIjpyZXR1cm4gMTtjYXNlICJwcmVyZW5kZXIiOnJldHVybiAyO2Nhc2UgInVubG9hZGVkIjpyZXR1cm4gMztkZWZhdWx0OnJldHVybi0xfX07CkNCPWZ1bmN0aW9uKG4pe3ZhciBXPXt9LEQ9KGIsdixrKT0+e3Y9di5tYXRjaCgiX3JpZCIpP3Yuc3BsaXQoIl9yaWQiKVswXTp2O3R5cGVvZiBrPT09Im51bWJlciImJihrPUpTT04uc3RyaW5naWZ5KGspKTtiLnJlcXVlc3RJZHM/Yi5yZXF1ZXN0SWRzLnB1c2goe2VuZHBvaW50OnYsaWQ6a30pOmIucmVxdWVzdElkcz1be2VuZHBvaW50OnYsaWQ6a31dfTsKZm9yKGxldCBbYix2XW9mIE9iamVjdC5lbnRyaWVzKG4pKXtuPWI7bGV0IGs9djtzd2l0Y2gobil7Y2FzZSAiR2V0QnJvd3NlX3JpZCI6RChXLG4sayk7YnJlYWs7Y2FzZSAiR2V0R3VpZGVfcmlkIjpEKFcsbixrKTticmVhaztjYXNlICJHZXRIb21lX3JpZCI6RChXLG4sayk7YnJlYWs7Y2FzZSAiR2V0UGxheWVyX3JpZCI6RChXLG4sayk7YnJlYWs7Y2FzZSAiR2V0U2VhcmNoX3JpZCI6RChXLG4sayk7YnJlYWs7Y2FzZSAiR2V0U2V0dGluZ3NfcmlkIjpEKFcsbixrKTticmVhaztjYXNlICJHZXRUcmVuZGluZ19yaWQiOkQoVyxuLGspO2JyZWFrO2Nhc2UgIkdldFdhdGNoTmV4dF9yaWQiOkQoVyxuLGspO2JyZWFrO2Nhc2UgInl0X3JlZCI6Vy5pc1JlZFN1YnNjcmliZXI9ISFrO2JyZWFrO2Nhc2UgInl0X2FkIjpXLmlzTW9uZXRpemVkPSEha319cmV0dXJuIFd9OwpBU3g9ZnVuY3Rpb24obixXKXtuPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iobik7aWYoIW4pcmV0dXJuITE7dmFyIEQ9IiIsYj1uLm5vZGVOYW1lO2I9PT0iU0NSSVBUIj8oRD1uLnNyYyxEfHwoRD1uLmdldEF0dHJpYnV0ZSgiZGF0YS10aW1pbmctaHJlZiIpKSYmKEQ9d2luZG93LmxvY2F0aW9uLnByb3RvY29sK0QpKTpiPT09IkxJTksiJiYoRD1uLmhyZWYpO1NqKGRvY3VtZW50KSYmbi5zZXRBdHRyaWJ1dGUoIm5vbmNlIixTaihkb2N1bWVudCkpO3JldHVybiBEPyhuPVVILmdldEVudHJpZXNCeU5hbWUoRCkpJiZuWzBdJiYobj1uWzBdLEQ9aSQoKSx1JCgicnNmXyIrVyxEK01hdGgucm91bmQobi5mZXRjaFN0YXJ0KSksdSQoInJzZV8iK1csRCtNYXRoLnJvdW5kKG4ucmVzcG9uc2VFbmQpKSxuLnRyYW5zZmVyU2l6ZSE9PXZvaWQgMCYmbi50cmFuc2ZlclNpemU9PT0wKT8hMDohMTohMX07Cm1IMT1mdW5jdGlvbigpe3ZhciBuPXdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbCxXPVVILmdldEVudHJpZXNCeVR5cGUoInJlc291cmNlIik7Vz1nLkVNKFcsRD0+RC5uYW1lLmluZGV4T2YoYCR7bn0vL2ZvbnRzLmdzdGF0aWMuY29tL3MvYCk9PT0wKTsKKFc9Zy51XyhXLChELGIpPT5iLmR1cmF0aW9uPkQuZHVyYXRpb24/YjpELHtkdXJhdGlvbjowfSkpJiZXLnN0YXJ0VGltZT4wJiZXLnJlc3BvbnNlRW5kPjAmJih1JCgid2ZmcyIseXYoVy5zdGFydFRpbWUpKSx1JCgid2ZmZSIseXYoVy5yZXNwb25zZUVuZCkpKX07CktOdD1mdW5jdGlvbihuLFcsRCl7VUgmJlVILm1lYXN1cmUmJihuLnN0YXJ0c1dpdGgoIm1lYXN1cmVfIil8fChuPSJtZWFzdXJlXyIrbiksRD9VSC5tZWFzdXJlKG4sVyxEKTpXP1VILm1lYXN1cmUobixXKTpVSC5tZWFzdXJlKG4pKX07CkJiPWZ1bmN0aW9uKG4pe3ZhciBXPW9MKCJhZnQiLG4pO2lmKFcpcmV0dXJuIFc7Vz1nLkFyKChufHwiIikrIlRJTUlOR19BRlRfS0VZUyIsWyJvbCJdKTt2YXIgRD1XLmxlbmd0aDtmb3IobGV0IGI9MDtiPEQ7YisrKXtsZXQgdj1vTChXW2JdLG4pO2lmKHYpcmV0dXJuIHZ9cmV0dXJuIE5hTn07CkZBPWZ1bmN0aW9uKG4sVyl7Zy5HYigieXRnbG9iYWwudGltaW5nIisoV3x8IiIpKyJyZWFkeV8iLG4pfTsKb0w9ZnVuY3Rpb24obixXKXtpZihuPUd3KFcpW25dKXJldHVybiB0eXBlb2Ygbj09PSJudW1iZXIiP246bltuLmxlbmd0aC0xXX07ClR3PWZ1bmN0aW9uKG4pe3ZhciBXPW9MKCJfc3RhcnQiLG4pLEQ9QmIobiksYj0hd2I7VyYmRCYmYiYmKGw5KE9udCxuZXcgTVEoTWF0aC5yb3VuZChELVcpLG4pKSx3Yj0hMCl9OwpQYXg9ZnVuY3Rpb24oKXtpZihVSC5nZXRFbnRyaWVzQnlUeXBlKXt2YXIgbj1VSC5nZXRFbnRyaWVzQnlUeXBlKCJwYWludCIpO2lmKG49Zy5sXyhuLEQ9PkQubmFtZT09PSJmaXJzdC1wYWludCIpKXJldHVybiB5dihuLnN0YXJ0VGltZSl9dmFyIFc7CmcubCgiY3NpX3VzZV9wZXJmb3JtYW5jZV9uYXZpZ2F0aW9uX3RpbWluZyIpP1c9VUguZ2V0RW50cmllc0J5VHlwZSgiZmlyc3QtcGFpbnQiKVswXS5zdGFydFRpbWU6Vz1VSC50aW1pbmcubDI7cmV0dXJuIFc/TWF0aC5tYXgoMCxXKTowfTsKZy5STD1mdW5jdGlvbihuKXtlTChuKTtabmkoKTtTVjEoKTtufHwoZy5BcigiVElNSU5HX0FDVElPTiIpJiZnLlNIKCJQUkVWSU9VU19BQ1RJT04iLGcuQXIoIlRJTUlOR19BQ1RJT04iKSksZy5TSCgiVElNSU5HX0FDVElPTiIsIiIpKX07CmNiPWZ1bmN0aW9uKG4sVyl7UFYoKCk9PntIYigiIikuaW5mby5hY3Rpb25UeXBlPW47VyYmZy5TSCgiVElNSU5HX0FGVF9LRVlTIixXKTtnLlNIKCJUSU1JTkdfQUNUSU9OIixuKTt2YXIgRD1DQihnLkFyKCJUSU1JTkdfSU5GTyIse30pKTtPYmplY3Qua2V5cyhEKS5sZW5ndGg+MCYmZGIoRCk7RD17aXNOYXZpZ2F0aW9uOiEwLGFjdGlvblR5cGU6SUwoZy5BcigiVElNSU5HX0FDVElPTiIpKX07dmFyIGI9Zy5BcigiUFJFVklPVVNfQUNUSU9OIik7YiYmKEQucHJldmlvdXNBY3Rpb249SUwoYikpO2lmKGI9Zy5BcigiQ0xJRU5UX1BST1RPQ09MIikpRC5odHRwUHJvdG9jb2w9YjtpZihiPWcuQXIoIkNMSUVOVF9UUkFOU1BPUlQiKSlELnRyYW5zcG9ydFByb3RvY29sPWI7KGI9Zy5SdigpKSYmYiE9PSJVTkRFRklORURfQ1NOIiYmKEQuY2xpZW50U2NyZWVuTm9uY2U9Yik7Yj1qTCgpO2lmKGI9PT0xfHxiPT09LTEpRC5pc1Zpc2libGU9ITA7Yj1xUSgpLmxvYWRUeXBlPT09ImNvbGQiOwp2YXIgdj1YQSgpO2J8fChiPXYueXRfbHQ9PT0iY29sZCIpO2lmKGIpe0QubG9hZFR5cGU9ImNvbGQiO2I9WEEoKTt2PUVIKCk7bGV0IHg9aSQoKSxMPWcuQXIoIkNTSV9TVEFSVF9USU1FU1RBTVBfTUlMTElTIiwwKTtMPjAmJiFnLmwoImVtYmVkc193ZWJfZW5hYmxlX2NzaV9zdGFydF9vdmVycmlkZV9raWxsc3dpdGNoIikmJih4PUwpO3gmJih1JCgic3J0Iix2LnJlc3BvbnNlU3RhcnQpLGIucHJlcmVuZGVyIT09MSYmencoeCkpO2I9UGF4KCk7Yj4wJiZ1JCgiZnB0IixiKTtiPUVIKCk7Yi5pc1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyYmZGIoe3BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzohMH0sdm9pZCAwKTt1JCgibnJlcXMiLGIucmVxdWVzdFN0YXJ0LHZvaWQgMCk7dSQoIm5yZXNzIixiLnJlc3BvbnNlU3RhcnQsdm9pZCAwKTt1JCgibnJlc2UiLGIucmVzcG9uc2VFbmQsdm9pZCAwKTtiLnJlZGlyZWN0RW5kLWIucmVkaXJlY3RTdGFydD4wJiYodSQoIm5ycyIsYi5yZWRpcmVjdFN0YXJ0LAp2b2lkIDApLHUkKCJucmUiLGIucmVkaXJlY3RFbmQsdm9pZCAwKSk7Yi5kb21haW5Mb29rdXBFbmQtYi5kb21haW5Mb29rdXBTdGFydD4wJiYodSQoIm5kbnNzIixiLmRvbWFpbkxvb2t1cFN0YXJ0LHZvaWQgMCksdSQoIm5kbnNlIixiLmRvbWFpbkxvb2t1cEVuZCx2b2lkIDApKTtiLmNvbm5lY3RFbmQtYi5jb25uZWN0U3RhcnQ+MCYmKHUkKCJudGNwcyIsYi5jb25uZWN0U3RhcnQsdm9pZCAwKSx1JCgibnRjcGUiLGIuY29ubmVjdEVuZCx2b2lkIDApKTtiLnNlY3VyZUNvbm5lY3Rpb25TdGFydD49aSQoKSYmYi5jb25uZWN0RW5kLWIuc2VjdXJlQ29ubmVjdGlvblN0YXJ0PjAmJih1JCgibnN0Y3BzIixiLnNlY3VyZUNvbm5lY3Rpb25TdGFydCx2b2lkIDApLHUkKCJudGNwZSIsYi5jb25uZWN0RW5kLHZvaWQgMCkpO1VIJiYiZ2V0RW50cmllc0J5VHlwZSJpbiBVSCYmbUgxKCk7Yj1bXTtpZihkb2N1bWVudC5xdWVyeVNlbGVjdG9yJiZVSCYmVUguZ2V0RW50cmllc0J5TmFtZSlmb3IoayBpbiBRdilRdi5oYXNPd25Qcm9wZXJ0eShrKSYmCih2PVF2W2tdLEFTeChrLHYpJiZiLnB1c2godikpO3ZhciBrPWI7aWYoay5sZW5ndGg+MCl7RC5yZXNvdXJjZUluZm89W107Zm9yKHZhciBoIG9mIGspRC5yZXNvdXJjZUluZm8ucHVzaCh7cmVzb3VyY2VDYWNoZTpofSl9fWRiKEQpO0pTcigpO0ZBKCEwKTtoPWcuQXIoIlRJTUlOR19BQ1RJT04iKTtnLnJyKCJ5dGdsb2JhbC50aW1pbmdyZWFkeV8iKSYmaCYmVnYoKSYmQmIoKSYmVHcoKX0pKCl9OwpXUD1mdW5jdGlvbigpe3ZhciBuPXt9O1BWKCgpPT57VnYoKSYmZy5hTCgiYWEiLHZvaWQgMCx2b2lkIDApO2ZCKCk7Zy5STCgpO0ZBKCExKTtuLmN0dEF1dGhJbmZvJiYoZ2IoKS5jdHRBdXRoSW5mbz1uLmN0dEF1dGhJbmZvKTtnLlNIKCJUSU1JTkdfQUZUX0tFWVMiLFtdKTtuLnJQP2cubmwoe2xvYWRUeXBlOiJob3QifSk6Zy5ubCh7bG9hZFR5cGU6Indhcm0ifSk7Zy5TSCgiVElNSU5HX0FDVElPTiIsIiIpO2RlbGV0ZSBnLkFyKCJUSU1JTkdfSU5GTyIse30pLnl0X2x0O1BWKHp3KShuLnN0YXJ0VGltZSx2b2lkIDApfSkoKX07CmcuYmQ9ZnVuY3Rpb24obixXPXt9KXtQVigoKT0+e2cuRFkobik7dmFyIEQ9Vy5zYW1wbGVSYXRlO2lmKCFnLmwoIndlYl9jc2lfYWN0aW9uX3NhbXBsaW5nX2VuYWJsZWQiKXx8RD09PXZvaWQgMHx8RDw9MSlEPSExO2Vsc2V7dmFyIGI9cmIobik7RD1PYShiKSVEIT09MH1EJiYoZ2IobikuYWN0aW9uRGlzYWJsZWQ9ITApO0hiKG58fCIiKS5pbmZvLmFjdGlvblR5cGU9bjtXLmN0dEF1dGhJbmZvJiYoZ2IobikuY3R0QXV0aEluZm89Vy5jdHRBdXRoSW5mbyk7Zy5TSChuKyJUSU1JTkdfQUNUSU9OIixuKTtQVih6dykoVy5zdGFydFRpbWUsbik7RD17YWN0aW9uVHlwZTpJTChuKX07Vy5leiYmKEQucHJldmlvdXNBY3Rpb249SUwoZy5BcigiVElNSU5HX0FDVElPTiIpKSk7KGI9Zy5SdigpKSYmYiE9PSJVTkRFRklORURfQ1NOIiYmKEQuY2xpZW50U2NyZWVuTm9uY2U9Yik7Zy5ubChELG4pO0ZBKCEwLG4pfSkoKX07CmcuRFk9ZnVuY3Rpb24obil7UFYoKCk9PntWdihuKSYmZy5hTCgiYWEiLHZvaWQgMCxuKTtmQihuKTtnLlJMKG4pfSkoKX07ClZ2PWZ1bmN0aW9uKG4pe3JldHVybiBQVigoKT0+Zy52UCgiX3N0YXJ0IixuKSkoKX07Cmcubmw9ZnVuY3Rpb24obixXLEQ9ITEpe1BWKGRiKShuLFcsRCl9OwpnLmFMPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gUFYodSQpKG4sVyxEKX07CmtEPWZ1bmN0aW9uKG4pe1BWKEtOdCkoImFjdGlvbl9maW5pc2hlZCIsbix2b2lkIDApfTsKZy52UD1mdW5jdGlvbihuLFcpe3JldHVybiBQVigoKT0+e3ZhciBEPUd3KFcpO3JldHVybiBuIGluIER9KSgpfTsKeEQ9ZnVuY3Rpb24obil7aWYoIWcubCgidW5pdmVyc2FsX2NzaV9uZXR3b3JrX3RpY2tzIikpcmV0dXJuIiI7bj1TMShuKXx8IiI7dmFyIFc9T2JqZWN0LmtleXMoaGUpO2ZvcihsZXQgRD0wO0Q8Vy5sZW5ndGg7RCsrKXtsZXQgYj1XW0RdO2lmKG4uaW5jbHVkZXMoYikpcmV0dXJuIGJ9cmV0dXJuIiJ9Owplaz1mdW5jdGlvbihuKXtpZighZy5sKCJ1bml2ZXJzYWxfY3NpX25ldHdvcmtfdGlja3MiKSlyZXR1cm4oKT0+e307CnZhciBXPWhlW25dO3JldHVybiBXPyhnLkxsKFcpLCgpPT57dmFyIEQ9Zy5sKCJ1bml2ZXJzYWxfY3NpX25ldHdvcmtfdGlja3MiKT8oRD1VSE1bbl0pP2cuTGwoRCk6ITE6ITE7cmV0dXJuIER9KTooKT0+e319OwpnLkxsPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gUFYoKCk9PntpZihnLnZQKG4sRCkpcmV0dXJuITE7Zy5hTChuLFcsRCk7cmV0dXJuITB9KSgpfTsKZy5nXz1mdW5jdGlvbihuLFcsRCl7UFYoKCk9PntpZighVnYoRCl8fGcudlAobixEKSlyZXR1cm4hMTtnLmFMKG4sVyxEKTtyZXR1cm4hMH0pKCl9Owp5U2g9ZnVuY3Rpb24oKXtQVigoKT0+e3ZhciBuPXJiKCk7cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57c2V0VGltZW91dCgoKT0+e249PT1yYigpJiZnLmFMKCJmdGwiLHZvaWQgMCx2b2lkIDApfSwwKX0pfSkoKX07CkU5Yj1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKFg3Lmluc3RhbmNlIT09dm9pZCAwKXtpZihiPVg3Lmluc3RhbmNlLG49W24hPT1iLmosVyE9PWIueUcsRCE9PWIuVyx2IT09Yi5KLCExLCExLCExXSxuLnNvbWUoaz0+aykpdGhyb3cgbmV3IGcuUXgoIklubmVyVHViZVRyYW5zcG9ydFNlcnZpY2UgaXMgYWxyZWFkeSBpbml0aWFsaXplZCIsbik7Cn1lbHNlIFg3Lmluc3RhbmNlPW5ldyBYNyhuLFcsRCxiLHYpfTsKaW53PWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXtuPWF3YWl0ICRHKG4uVy5haihXPy5CRz8uaWRlbnRpdHl8fHU5LHtzZXNzaW9uSW5kZXg6Vz8uQkc/LnNlc3Npb25JbmRleH0pKTtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHsuLi5rVihEKSwuLi5ufSl9OwpkSGo9YXN5bmMgZnVuY3Rpb24obixXLEQsYj0oKT0+e30pe3ZhciB2PVcuY29uZmlnPy5Ibj8uUkw7CmlmKHYmJm4uSiYmbi5KLmhhcyh2KSYmIVcuY29uZmlnPy5Ibj8uZGlzYWJsZUNhY2hlKXt2YXIgaz1hd2FpdCBuLkouZ2V0KHYpO2lmKGsmJiFrLmlzRXhwaXJlZCgpKXJldHVybiBiPXFyKGspLGsuaXNQcm9jZXNzZWQoKXx8KEdXKG4sYixXKSxhd2FpdCB0ZShuLkosdikpLFByb21pc2UucmVzb2x2ZShiKX1hd2FpdCB1X3QoVyk7KHY9Vy5jb25maWc/LnJlcXVlc3RLZXkpJiZuLk4uaGFzKHYpP0Q9bi5OLmdldCh2KTooaz1KU09OLnN0cmluZ2lmeShXLmlubmVyVHViZVJlcXVlc3QpLFcuUGk9ey4uLlcuUGksaGVhZGVyczp7Li4uKFcuUGk/LmhlYWRlcnM/P3t9KSwuLi5EfX0sRD17Li4uVy5QaX0sVy5QaS5tZXRob2Q9PT0iUE9TVCImJihEPXsuLi5ELGJvZHk6a30pLFcuY29uZmlnPy5MYSYmZy5hTChXLmNvbmZpZy5MYSksRD1uLnlHLmZldGNoKFcuaW5wdXQsRCxXLmNvbmZpZyksdiYmbi5OLnNldCh2LEQpKTtpZigoRD1hd2FpdCBEKSYmImVycm9yImluIEQmJkQ/LmVycm9yPy5kZXRhaWxzKXtrPQpELmVycm9yLmRldGFpbHM7Zm9yKGxldCBoIG9mIGspKGs9aFsiQHR5cGUiXSkmJm85ai5pbmRleE9mKGspPi0xJiYoZGVsZXRlIGhbIkB0eXBlIl0sRD1oKX12JiZuLk4uaGFzKHYpJiZuLk4uZGVsZXRlKHYpO1cuY29uZmlnPy5SViYmZy5hTChXLmNvbmZpZy5SVik7R1cobixELFcpO1cuY29uZmlnPy5HdCYmZy5hTChXLmNvbmZpZy5HdCk7YigpO3JldHVybiBEfHx2b2lkIDB9OwpnLnJfPWZ1bmN0aW9uKG4sVyxELGIsdj17Qkc6e2lkZW50aXR5OnU5fX0pe3ZhciBrPWcucWooKS5yZXNvbHZlKGcuaHAoJEQpKT8uKCk7aWYoKGcubCgibWF3X25ldHdvcmtfbWFjaGluZV9yYXdfcmVxdWVzdCIpfHxnLmwoImFsbF93ZWJfbmV0d29ya19tYWNoaW5lX3Jhd19yZXF1ZXN0IikpJiZrKXJldHVybiB6VGoobDJqKGsse2lubmVyVHViZVJlcXVlc3Q6VyxhcGlQYXRoOkQsY2xpY2tUcmFja2luZ1BhcmFtczpiLGNvbmZpZzp2LGluY2x1ZGVDdXJyZW50U2NyZWVuTm9uY2U6ITB9KSkudGhlbih4PT54LCgpPT57fSk7CnZhciBoPSgpPT57fTsKaD1layh4RChEKSk7Vy5jb250ZXh0fHwoVy5jb250ZXh0PWcudmIoYiwhMCkpO3JldHVybiBuZXcgZy5YMShhc3luYyB4PT57dmFyIEw9SyQoRCk7TD1nLlRkKEwpPyJzYW1lLW9yaWdpbiI6ImNvcnMiO2lmKG4uVy5zQil7dmFyIGU9bi5XLmFqKHY/LkJHPy5pZGVudGl0eXx8dTkse3Nlc3Npb25JbmRleDp2Py5CRz8uc2Vzc2lvbkluZGV4fSk7TD17Li4ua1YoTCksLi4uZX19ZWxzZSBMPWF3YWl0IGludyhuLHYsTCk7ZT1acihLJChEKSk7ZT17aW5wdXQ6ZSxQaTpVeihlKSxpbm5lclR1YmVSZXF1ZXN0OlcsY29uZmlnOnZ9O3goZEhqKG4sZSxMLGgpKX0pfTsKdV90PWFzeW5jIGZ1bmN0aW9uKG4pe2lmKG4/LmlubmVyVHViZVJlcXVlc3Q/LmNvbnRleHQpe249bi5pbm5lclR1YmVSZXF1ZXN0LmNvbnRleHQ7Zm9yKGxldCBXIG9mW10pYXdhaXQgVy5CcyhuKX19OwpHVz1mdW5jdGlvbihuLFcsRCl7aWYoVyYmIVc/LnNlcXVlbmNlTWV0YURhdGE/LnNraXBQcm9jZXNzaW5nJiZuLlgpZm9yKGxldCBiIG9mIHNvKW4uWFtiXSYmbi5YW2JdLmhhbmRsZVJlc3BvbnNlKFcsRCl9OwpwbD1mdW5jdGlvbigpe3ZhciBuLFc7cmV0dXJue3JGOm5ldyBOcigoRCxiKT0+e249RDtXPWJ9KSwKcmVzb2x2ZTpuLHJlamVjdDpXfX07CkhQPWZ1bmN0aW9uKG4pe3JldHVybiBZRChuKT9uOllvKG4pP25ldyBOcigoVyxEKT0+e24udGhlbihXLEQpfSk6bmV3IE5yKFc9PntXKG4pfSl9OwpmbD1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IE5yKChXLEQpPT57RChuKX0pfTsKSmU9ZnVuY3Rpb24obil7dHJ5e3JldHVybiBIUChuKCkpfWNhdGNoKFcpe3JldHVybiBmbChXKX19Owp6VGo9ZnVuY3Rpb24obil7cmV0dXJuIElqKG4sZy5YMSl9OwpJaj1mdW5jdGlvbihuLFcpe3JldHVybiBuZXcgVygoRCxiKT0+e1NrKG4sRCxiKX0pfTsKQWU9YXN5bmMgZnVuY3Rpb24obil7cmV0dXJuIElqKG4sUHJvbWlzZSl9OwptRT1mdW5jdGlvbihuKXtpZihuLk49PT0iZnVsZmlsbGVkIil7dmFyIFc9bi5KO24uSj1bXTtuLlc9W107Zm9yKHZhciBEIG9mIFcpRChuLnJlc3VsdCl9ZWxzZSBpZihuLk49PT0icmVqZWN0ZWQiKXtEPW4uVztuLko9W107bi5XPVtdO2ZvcihXIG9mIEQpVyhuLmVycm9yKX19OwpTaz1mdW5jdGlvbihuLFcsRCl7dmFyIHtyRjpiLHJlc29sdmU6dixyZWplY3Q6a309cGwoKTtuLkoucHVzaChoPT57aWYoVyl0cnl7bGV0IHg9VyhoKTt2KHgpfWNhdGNoKHgpe2soeCl9ZWxzZSB2KGgpfSk7Cm4uVy5wdXNoKGg9PntpZihEKXRyeXtsZXQgeD1EKGgpO3YoeCl9Y2F0Y2goeCl7ayh4KX1lbHNlIGsoaCl9KTsKbUUobik7cmV0dXJuIGJ9OwpLbD1mdW5jdGlvbihuLFcpe3JldHVybiBTayhuLHZvaWQgMCxXKX07ClRlYj1mdW5jdGlvbihuLFcpe1NrKG4sRD0+U2soSFAoVygpKSwoKT0+RCksRD0+U2soSFAoVygpKSwoKT0+ZmwoRCkpKX07Ck9vPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGpZMShXLmNhbGwobikpfTsKUFA9ZnVuY3Rpb24obil7cmV0dXJuIGZ1bmN0aW9uKigpe3JldHVybiB5aWVsZHtyRjpIUChuKX19KCl9OwpqWTE9ZnVuY3Rpb24obil7cmV0dXJuIEplKCgpPT5aWShuLG4ubmV4dCgpKSl9OwpaWT1mdW5jdGlvbihuLFcpe3JldHVybiBXLmRvbmU/SFAoVy52YWx1ZSk6S2woU2soVy52YWx1ZS5yRixEPT5aWShuLG4ubmV4dChEKSkpLEQ9PlpZKG4sbi50aHJvdyhEKSkpfTsKRk54PWZ1bmN0aW9uKG4pe3ZhciBXPUNhVShuKTtyZXR1cm4gU2soQmVTKFcpLCgpPT5XLm1hcChEPT5ELnN0YXRlKCkpKX07CkJlUz1mdW5jdGlvbihuKXtpZihuLmxlbmd0aD09PTApcmV0dXJuIEhQKE5hTik7dmFyIHtyRjpXLHJlc29sdmU6RH09cGwoKSxiPW4ubGVuZ3RoO2ZvcihsZXQgdj0wO3Y8bi5sZW5ndGg7disrKVRlYihuW3ZdLCgpPT57Vy5OPT09InBlbmRpbmciJiYod1dqKHZvaWQgMCkmJih2b2lkIDApKHYpJiZXLk49PT0icGVuZGluZyI/RCh2KTooLS1iLGI9PT0wJiZEKE5hTikpKX0pOwpyZXR1cm4gV307CkNhVT1mdW5jdGlvbihuKXtyZXR1cm4gbi5tYXAoVz0+SFAoVykpfTsKTUV3PWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gT28obixmdW5jdGlvbigpe3ZhciBiPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciB2PSRHKGIuTi5haihXPy5CRz8uaWRlbnRpdHl8fHU5LHtzZXNzaW9uSW5kZXg6Vz8uQkc/LnNlc3Npb25JbmRleH0pKTt2PXlpZWxkKlBQKEhQKHYpKTtyZXR1cm57Li4ua1YoRCksLi4udn19KCl9KX07ClVvPWZ1bmN0aW9uKG4pe3JldHVybiBuPT09MXx8bj09PTJ9OwpWRTI9ZnVuY3Rpb24obixXLEQ9ITEpe3ZhciBiLHY9Zy53KFcsUlRoKT8ucmVxdWVzdDt2JiZuLk4uaVQmJihiPW4uTi5pVFt2XSk7Ynx8RHx8KHY9Zy53KFcsUVlNKT8uc2lnbmFsKSYmbi5OLndkJiYoYj1uLk4ud2Rbdl0pO2lmKCFiJiYobj1EP24uTi51STpuLk4uemcpKWZvcihsZXQgayBpbiBXKWlmKG5ba10pe2I9bltrXTticmVha31pZighYil7aWYoRCl0aHJvdyBFcnJvcigiRXJyb3I6IE5vIHN0cmVhbWluZyByZXF1ZXN0IGJ1aWxkZXIgZm91bmQgZm9yIGNvbW1hbmQiKTt0aHJvdyBFcnJvcigiRXJyb3I6IE5vIHJlcXVlc3QgYnVpbGRlciBmb3VuZCBmb3IgY29tbWFuZC4iKTt9Vz1iKCk7cmV0dXJuIEhQKFcpfTsKbDJqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4ucnVuKCJSRVFVRVNUX0lOSVQiLFcpfTsKeXE9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5ydW4oIlBST0NFU1NfUkVTUE9OU0UiLFcsIlJlc3BvbnNlTWFjaGluZSAoQ2FjaGUpIil9OwpFbz1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIG4ucnVuKCJJTklUIixXLEQhPT12b2lkIDA/YFJlc3BvbnNlTWFjaGluZSAoQ2h1bmsgJHtEfSlgOiJSZXNwb25zZU1hY2hpbmUiKX07CmNTMj1mdW5jdGlvbigpe3ZhciBuPWcucWooKTtnLnhvKG4se05IOmlkLFJjOigpPT5uZXcgTWFwfSk7CmcueG8obix7Tkg6dWQsWUw6dWQscG46ITB9KTtnLnhvKG4se05IOm9qLFlMOm9qLHBuOiEwfSk7Zy54byhuLHtOSDpkXyxZTDpkXyxwbjohMH0pO2cueG8obix7Tkg6elcsWUw6elcscG46ITB9KTtnLnhvKG4se05IOmxkLFlMOmxkLHBuOiEwfSk7Zy54byhuLHtOSDpUVyxZTDpUVyxwbjohMH0pO2cueG8obix7Tkg6amssWUw6amsscG46ITB9KTtnLnhvKG4se05IOkNsLFlMOkNsLHBuOiEwfSk7Zy54byhuLHtOSDpCUCxZTDpCUCxwbjohMH0pO2cueG8obix7Tkg6RjcsWUw6RjcscG46ITB9KTtnLnhvKG4se05IOndfLFJjOihXLEQsYix2LGssaCx4LEwsZSxHKT0+KHtDT01NQU5EX0lOSVQ6TCxSRVFVRVNUX0lOSVQ6ZSxDQUNIRTpELExPQ0FMX1JPVVRFUjp4LENPTlRFWFQ6YixBVVRIOlcsREVEVVBFOnYsRkVUQ0g6aCxSRVRSWTpHLEZBTExCQUNLOmt9KSwKW2cuTFhdOlt1ZCxvaixkXyx6VyxsZCxUVyxqayxDbCxCUCxGN10scG46ITB9KTtnLnhvKG4se05IOiRELFJjOlc9PigpPT5uZXcgZy5NcihXKSwKW2cuTFhdOlt3X10scG46ITB9KTtnLnhvKG4se05IOlJqLFlMOlJqLHBuOiEwfSk7Zy54byhuLHtOSDpRcSxZTDpRcSxwbjohMH0pO2cueG8obix7Tkg6VnEsWUw6VnEscG46ITB9KTtnLnhvKG4se05IOmNQLFlMOmNQLHBuOiEwfSk7Zy54byhuLHtOSDphaixSYzooVyxELGIsdik9Pih7SU5JVDp2LEVSUk9SX1VOUEFDS0VSOkQsUFJPQ0VTU19SRVNQT05TRTpiLENBTExCQUNLX0RJU1BBVENIRVI6V30pLApbZy5MWF06W1JqLFFxLFZxLGNQXSxwbjohMH0pO2cueG8obix7Tkg6blIsUmM6Vz0+KCk9Pm5ldyBXRyhXKSwKW2cuTFhdOlthal0scG46ITB9KX07CnFyPWZ1bmN0aW9uKG4pe3JldHVybnsuLi5uLmRhdGEuaW5uZXJ0dWJlUmVzcG9uc2UsY2FjaGVNZXRhZGF0YTp7aXNDYWNoZUhpdDohMH19fTsKdGU9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD1uLk4uZ2V0KFcpO0QmJihELmVudHJ5RGF0YS5pc1Byb2Nlc3NlZD0hMCxhd2FpdCBEdyhuLFcsRC5lbnRyeURhdGEpKX07CkR3PWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLko7aWYoRC5leHBpcmVUaW1lc3RhbXBNcyl7Yj1OdW1iZXIoRC5leHBpcmVUaW1lc3RhbXBNcyktTWF0aC5yb3VuZCgoMCxnLlIpKCkpO2xldCB2PXYwKCJtd2ViX292ZXJyaWRlX3Jlc3BvbnNlX3N0b3JlX2V4cGlyYXRpb25fbXMiKTt2PjAmJnY8YiYmKGI9dil9Yj1zZXRUaW1lb3V0KCgpPT57bi5yZW1vdmUoVyl9LGIpOwpuLk4uc2V0KFcse2VudHJ5RGF0YTpELHRpbWVyOmJ9KX07CnZHPWZ1bmN0aW9uKG4sVyl7aWYobj1uLk4uZ2V0KFcpKXJldHVybiBuZXcgYmgobi5lbnRyeURhdGEpfTsKa009ZnVuY3Rpb24obixXKXt2YXIgRD1uLk4uZ2V0KFcpO0QmJihjbGVhclRpbWVvdXQoRC50aW1lciksbi5OLmRlbGV0ZShXKSl9OwpoUj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9ey4uLm59O2ZvcihsZXQgdiBvZiBPYmplY3Qua2V5cyhXKSl7bGV0IGs9blt2XSxoPVdbdl07aWYoaD09PXZvaWQgMClkZWxldGUgYlt2XTtlbHNlIGlmKGs9PT12b2lkIDApYlt2XT1oO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShoKSYmQXJyYXkuaXNBcnJheShrKSliW3ZdPUQ/Wy4uLmssLi4uaF06aDtlbHNlIGlmKCFBcnJheS5pc0FycmF5KGgpJiZnLmZ0KGgpJiYhQXJyYXkuaXNBcnJheShrKSYmZy5mdChrKSliW3ZdPWhSKGssaCxEKTtlbHNlIGlmKHR5cGVvZiBoPT09dHlwZW9mIGspYlt2XT1oO2Vsc2UgcmV0dXJuIFc9bmV3IGcuUXgoIkF0dGVtcHRlZCB0byBtZXJnZSBmaWVsZHMgb2YgZGlmZmVyaW5nIHR5cGVzLiIse25hbWU6IkRlZXBNZXJnZUVycm9yIixrZXk6dixGVzprLHVwZGF0ZVZhbHVlOmh9KSxnLlhqKFcpLG59cmV0dXJuIGJ9Owp4TT1mdW5jdGlvbihuLFcpe3JldHVybiBuLk4ubGVuZ3RoPT09MD8hMToobj1uLk5bbi5OLmxlbmd0aC0xXSkmJm4uYnVmZmVyPT09Vy5idWZmZXImJm4uYnl0ZU9mZnNldCtuLmxlbmd0aD09PVcuYnl0ZU9mZnNldH07CkxSPWZ1bmN0aW9uKG4pe24uWD12b2lkIDA7bi5KPTA7bi5XPTB9OwplNT1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRCBvZiBXLk4pbi5hcHBlbmQoRCl9OwpnZD1mdW5jdGlvbihuLFcsRCl7dmFyIHtDczpiLFk5OnZ9PW4uc3BsaXQoVyk7KHtDczpifT12LnNwbGl0KEQpKTtyZXR1cm4gYn07ClhhPWZ1bmN0aW9uKG4sVyxEKXtuLmlzRm9jdXNlZChXKTtyZXR1cm4gVy1uLlcrRDw9bi5OW24uSl0ubGVuZ3RofTsKcUQ9ZnVuY3Rpb24obil7aWYoIW4uWCl7bGV0IFc9bi5OW24uSl07bi5YPW5ldyBEYXRhVmlldyhXLmJ1ZmZlcixXLmJ5dGVPZmZzZXQsVy5sZW5ndGgpfXJldHVybiBuLlh9OwpHNj1mdW5jdGlvbihuLFc9MCxEPS0xKXtpZighbi50b3RhbExlbmd0aHx8IUQpcmV0dXJuIG5ldyBEYXRhVmlldyhuZXcgQXJyYXlCdWZmZXIoMCkpO0Q8MCYmKEQ9bi50b3RhbExlbmd0aC1XKTtuLmZvY3VzKFcpO2lmKCFYYShuLFcsRCkpe3ZhciBiPW4uSix2PW4uVztuLmZvY3VzKFcrRC0xKTt2PW5ldyBVaW50OEFycmF5KG4uVytuLk5bbi5KXS5sZW5ndGgtdik7bGV0IGs9MDtmb3IobGV0IGg9YjtoPD1uLko7aCsrKXYuc2V0KG4uTltoXSxrKSxrKz1uLk5baF0ubGVuZ3RoO24uTi5zcGxpY2UoYixuLkotYisxLHYpO0xSKG4pO24uZm9jdXMoVyl9Yj1uLk5bbi5KXTtyZXR1cm4gbmV3IERhdGFWaWV3KGIuYnVmZmVyLGIuYnl0ZU9mZnNldCtXLW4uVyxEKX07CnRSPWZ1bmN0aW9uKG4sVz0wLEQ9LTEpe249RzYobixXLEQpO3JldHVybiBuZXcgVWludDhBcnJheShuLmJ1ZmZlcixuLmJ5dGVPZmZzZXQsbi5ieXRlTGVuZ3RoKX07CiRNPWZ1bmN0aW9uKG4sVz0wLEQ9LTEpe249dFIobixXLEQpO1c9bmV3IFVpbnQ4QXJyYXkobi5sZW5ndGgpO3RyeXtXLnNldChuKX1jYXRjaChiKXtmb3IoRD0wO0Q8bi5sZW5ndGg7RCsrKVdbRF09bltEXX1yZXR1cm4gV307CnJkPWZ1bmN0aW9uKG4sVyl7bi5mb2N1cyhXKTtyZXR1cm4gbi5OW24uSl1bVy1uLlddfTsKc3g9ZnVuY3Rpb24obixXKXtuLmZvY3VzKFcpO3JldHVybiBYYShuLFcsNCk/cUQobikuZ2V0VWludDMyKFctbi5XKToyNTYqKDI1NiooMjU2KnJkKG4sVykrcmQobixXKzEpKStyZChuLFcrMikpK3JkKG4sVyszKX07CmEyMj1mdW5jdGlvbihuKXt2YXIgVz1uZXcgVWludDhBcnJheShuLmxlbmd0aCk7Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKyspV1tEXT1uLmNoYXJDb2RlQXQoRCk7cmV0dXJuIFd9OwpwUj1mdW5jdGlvbihuKXtyZXR1cm4gbi5sZW5ndGg/TkQ/TkQuZGVjb2RlKG4pOlN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxuKToiIn07CmcuSEc9ZnVuY3Rpb24obil7aWYoIW4ubGVuZ3RoKXJldHVybiIiO3RyeXtpZihORClyZXR1cm4gTkQuZGVjb2RlKG4pO2lmKHR5cGVvZiBGZXRjaEludGVybmFsIT09InVuZGVmaW5lZCIpcmV0dXJuIEZldGNoSW50ZXJuYWwuZGVjb2RlRnJvbVVURjgobil9Y2F0Y2h7fWZvcih2YXIgVz0wLEQ9W10sYj1uLmxlbmd0aDtXPGI7KXtsZXQgaz0wO2Zvcig7azwxMDI0JiZXPGI7KXt2YXIgdj1uW1crK107aWYodjwxMjgpe1lNW2srK109djtjb250aW51ZX1pZih2PDIyNCl2PSh2JjMxKTw8NnxuW1crK10mNjM7ZWxzZSBpZih2PDI0MCl2PSh2JjE1KTw8MTJ8KG5bVysrXSY2Myk8PDZ8bltXKytdJjYzO2Vsc2V7aWYoaysxPT09MTAyNCl7LS1XO2JyZWFrfXY9KHYmNyk8PDE4fChuW1crK10mNjMpPDwxMnwobltXKytdJjYzKTw8NnxuW1crK10mNjM7di09NjU1MzY7WU1baysrXT01NTI5Nnx2Pj4xMDt2PTU2MzIwfHYmMTAyM31ZTVtrKytdPXZ9dj1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZywKWU0pO2s8MTAyNCYmKHY9di5zdWJzdHJpbmcoMCxrKSk7RC5wdXNoKHYpfXJldHVybiBELmpvaW4oIiIpfTsKSlI9ZnVuY3Rpb24obixXKXtpZihmUj8uZW5jb2RlSW50byl7bGV0IHtyZWFkOmIsd3JpdHRlbjp2fT1mUi5lbmNvZGVJbnRvKG4sVyk7cmV0dXJuIGI8bi5sZW5ndGg/bi5sZW5ndGgqNDp2fXZhciBEPTA7Zm9yKGxldCBiPTA7YjxuLmxlbmd0aDtiKyspe2xldCB2PW4uY2hhckNvZGVBdChiKTt2PDEyOD9XW0QrK109djoodjwyMDQ4P1dbRCsrXT12Pj42fDE5MjooKHYmNjQ1MTIpPT09NTUyOTYmJmIrMTxuLmxlbmd0aCYmKG4uY2hhckNvZGVBdChiKzEpJjY0NTEyKT09PTU2MzIwPyh2PTY1NTM2KygodiYxMDIzKTw8MTApKyhuLmNoYXJDb2RlQXQoKytiKSYxMDIzKSxXW0QrK109dj4+MTh8MjQwLFdbRCsrXT12Pj4xMiY2M3wxMjgpOldbRCsrXT12Pj4xMnwyMjQsV1tEKytdPXY+PjYmNjN8MTI4KSxXW0QrK109diY2M3wxMjgpfXJldHVybiBEfTsKSXc9ZnVuY3Rpb24obil7aWYoZlIpcmV0dXJuIGZSLmVuY29kZShuKTt2YXIgVz1uZXcgVWludDhBcnJheShNYXRoLmNlaWwobi5sZW5ndGgqMS4yKSksRD1KUihuLFcpO1cubGVuZ3RoPEQmJihXPW5ldyBVaW50OEFycmF5KEQpLEQ9SlIobixXKSk7Vy5sZW5ndGg+RCYmKFc9Vy5zdWJhcnJheSgwLEQpKTtyZXR1cm4gV307Cm1rPWZ1bmN0aW9uKG4sVyl7bj1uIGluc3RhbmNlb2YgVWludDhBcnJheT9uZXcgUzUoW25dKTpuO3JldHVybiBXKG5ldyBBUihuKSl9OwpLUj1mdW5jdGlvbihuKXt2YXIgVz1yZChuLk4sbi5wb3MpOysrbi5wb3M7aWYoVzwxMjgpcmV0dXJuIFc7Zm9yKHZhciBEPVcmMTI3LGI9MTtXPj0xMjg7KVc9cmQobi5OLG4ucG9zKSwrK24ucG9zLGIqPTEyOCxEKz0oVyYxMjcpKmI7cmV0dXJuIER9OwpPeD1mdW5jdGlvbihuLFcpe3ZhciBEPW4uSjtmb3Iobi5KPS0xO24ucG9zKzE8PW4uTi50b3RhbExlbmd0aDspe0Q8MCYmKEQ9S1IobikpO3ZhciBiPUQ+PjM7bGV0IHY9RCY3O2lmKGI9PT1XKXJldHVybiEwO2lmKGI+Vyl7bi5KPUQ7YnJlYWt9RD0tMTtzd2l0Y2godil7Y2FzZSAwOktSKG4pO2JyZWFrO2Nhc2UgMTpuLnBvcys9ODticmVhaztjYXNlIDI6Yj1LUihuKTtuLnBvcys9YjticmVhaztjYXNlIDU6bi5wb3MrPTR9fXJldHVybiExfTsKUEc9ZnVuY3Rpb24obixXKXtpZihPeChuLFcpKXJldHVybiBLUihuKX07Clp3PWZ1bmN0aW9uKG4sVyl7aWYoT3gobixXKSlyZXR1cm4gVz10UihuLk4sbi5wb3MsOCksbi5wb3MrPTgsKG5ldyBEYXRhVmlldyhXLmJ1ZmZlcixXLmJ5dGVPZmZzZXQsVy5ieXRlTGVuZ3RoKSkuZ2V0RmxvYXQ2NCgwLCEwKX07ClV4PWZ1bmN0aW9uKG4sVyl7aWYoT3gobixXKSlyZXR1cm4hIUtSKG4pfTsKeUE9ZnVuY3Rpb24obixXKXtpZihPeChuLFcpKXtXPUtSKG4pO3ZhciBEPXRSKG4uTixuLnBvcyxXKTtuLnBvcys9VztyZXR1cm4gRH19OwpFeD1mdW5jdGlvbihuLFcpe2lmKG49eUEobixXKSlyZXR1cm4gZy5IRyhuKX07CmloPWZ1bmN0aW9uKG4sVyxEKXtpZihuPXlBKG4sVykpcmV0dXJuIEQobmV3IEFSKG5ldyBTNShbbl0pKSl9Owp1aD1mdW5jdGlvbihuLFcpe2Zvcih2YXIgRD1bXTtPeChuLFcpOylELnB1c2goS1IobikpO3JldHVybiBELmxlbmd0aD9EOnZvaWQgMH07Cm93PWZ1bmN0aW9uKG4sVyxEKXtmb3IodmFyIGI9W10sdjt2PXlBKG4sVyk7KWIucHVzaChEKG5ldyBBUihuZXcgUzUoW3ZdKSkpKTtyZXR1cm4gYi5sZW5ndGg/Yjp2b2lkIDB9OwpkZD1mdW5jdGlvbihuLFcsRCl7aWYoVyYmRCYmRC5idWZmZXI9PT1XLmV4cG9ydHMubWVtb3J5LmJ1ZmZlcil7bGV0IGI9Vy5tZW1vcnkucmVhbGxvYyhELmJ5dGVPZmZzZXQsbik7aWYoYilyZXR1cm4gbmV3IFVpbnQ4QXJyYXkoVy5leHBvcnRzLm1lbW9yeS5idWZmZXIsYixuKX1uPVc/bmV3IFVpbnQ4QXJyYXkoVy5leHBvcnRzLm1lbW9yeS5idWZmZXIsVy5tZW1vcnkubWFsbG9jKG4pLG4pOm5ldyBVaW50OEFycmF5KG4pO0QmJm4uc2V0KEQpO3JldHVybiBufTsKZy5saD1mdW5jdGlvbihuLFcpe3ZhciBEPW5ldyB6Nig0MDk2KTtXKEQsbik7cmV0dXJuIG5ldyBVaW50OEFycmF5KEQuTi5idWZmZXIsRC5OLmJ5dGVPZmZzZXQsRC5wb3MpfTsKVDY9ZnVuY3Rpb24obixXKXtXPW4ucG9zK1c7aWYoIShuLk4ubGVuZ3RoPj1XKSl7Zm9yKHZhciBEPW4uTi5sZW5ndGgqMjtEPFc7KUQqPTI7bi5OPWRkKEQsbi5XVixuLk4uc3ViYXJyYXkoMCxuLnBvcykpO24udmlldz1uZXcgRGF0YVZpZXcobi5OLmJ1ZmZlcixuLk4uYnl0ZU9mZnNldCxuLk4uYnl0ZUxlbmd0aCl9fTsKajU9ZnVuY3Rpb24obixXKXtpZihXPjI2ODQzNTQ1NSl7VDYobiw0KTtsZXQgRD1XJjEwNzM3NDE4MjM7Zm9yKGxldCBiPTA7Yjw0O2IrKyluLnZpZXcuc2V0VWludDgobi5wb3MsRCYxMjd8MTI4KSxEPj4+PTcsbi5wb3MrPTE7Vz1NYXRoLmZsb29yKFcvMjY4NDM1NDU2KX1mb3IoVDYobiw0KTtXPjEyNzspbi52aWV3LnNldFVpbnQ4KG4ucG9zLFcmMTI3fDEyOCksVz4+Pj03LG4ucG9zKz0xO24udmlldy5zZXRVaW50OChuLnBvcyxXKTtuLnBvcys9MX07CkNSPWZ1bmN0aW9uKG4sVyxEKXtEIT09dm9pZCAwJiYoajUobixXKjgpLGo1KG4sRCkpfTsKQkc9ZnVuY3Rpb24obixXLEQpe0QhPT12b2lkIDAmJkNSKG4sVyxEPzE6MCl9OwpnLkZhPWZ1bmN0aW9uKG4sVyxEKXtEIT09dm9pZCAwJiYoajUobixXKjgrMiksVz1ELmxlbmd0aCxqNShuLFcpLFQ2KG4sVyksbi5OLnNldChELG4ucG9zKSxuLnBvcys9Vyl9Owp3ZD1mdW5jdGlvbihuLFcsRD0yKXtqNShuLFcqOCsyKTtuLkoucHVzaChuLnBvcyk7bi5KLnB1c2goRCk7bi5wb3MrPUR9OwpNRD1mdW5jdGlvbihuKXtmb3IodmFyIFc9bi5KLnBvcCgpLEQ9bi5KLnBvcCgpLGI9bi5wb3MtRC1XO1ctLTspe2xldCB2PVc/MTI4OjA7bi52aWV3LnNldFVpbnQ4KEQrKyxiJjEyN3x2KTtiPj49N319OwpnLlJ3PWZ1bmN0aW9uKG4sVyxEKXtEIT09dm9pZCAwJiYod2QobixXLE1hdGguY2VpbChNYXRoLmxvZzIoRC5sZW5ndGgqNCsyKS83KSksVDYobixELmxlbmd0aCoxLjIpLFc9SlIoRCxuLk4uc3ViYXJyYXkobi5wb3MpKSxuLnBvcytXPm4uTi5sZW5ndGgmJihUNihuLFcpLFc9SlIoRCxuLk4uc3ViYXJyYXkobi5wb3MpKSksbi5wb3MrPVcsTUQobikpfTsKUUE9ZnVuY3Rpb24obixXLEQsYix2PTMpe0QmJih3ZChuLFcsdiksYihuLEQpLE1EKG4pKX07CmNHPWZ1bmN0aW9uKG4pe3ZhciBXPW5ldyBBUihuZXcgUzUoW2xwKGRlY29kZVVSSUNvbXBvbmVudChuKSldKSk7bj1FeChXLDIpO1c9UEcoVyw0KTt2YXIgRD1WQVtXXTtpZih0eXBlb2YgRD09PSJ1bmRlZmluZWQiKXRocm93IG49bmV3IGcuUXgoIkZhaWxlZCB0byByZWNvZ25pemUgZmllbGQgbnVtYmVyIix7bmFtZToiRW50aXR5S2V5SGVscGVyRXJyb3IiLGZpZWxkTnVtYmVyOld9KSxnLlhqKG4pLG47cmV0dXJue0RYOlcsZW50aXR5VHlwZTpELGVudGl0eUlkOm59fTsKbmY9ZnVuY3Rpb24obixXKXt2YXIgRD1uZXcgejY7Zy5GYShELDIsSXcobikpO249YXdbV107aWYodHlwZW9mIG49PT0idW5kZWZpbmVkIil0aHJvdyBXPW5ldyBnLlF4KCJGYWlsZWQgdG8gcmVjb2duaXplIGVudGl0eSB0eXBlIix7bmFtZToiRW50aXR5S2V5SGVscGVyRXJyb3IiLGVudGl0eVR5cGU6V30pLGcuWGooVyksVztDUihELDQsbik7Q1IoRCw1LDEpO1c9bmV3IFVpbnQ4QXJyYXkoRC5OLmJ1ZmZlcixELk4uYnl0ZU9mZnNldCxELnBvcyk7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChnLkVBKFcsMCkpfTsKV2U9ZnVuY3Rpb24obil7bj1uLmtleXx8bi5pZDtpZighbil0aHJvdyBFcnJvcigiRW50aXR5IGtleSBpcyBtaXNzaW5nIik7cmV0dXJuIG59OwpERz1mdW5jdGlvbihuLFcsRCxiKXtpZihiPT09dm9pZCAwKXtsZXQge1tEXTp2LC4uLmt9PW5bV118fHt9O3JldHVybnsuLi5uLFtXXTprfX1yZXR1cm57Li4ubixbV106ey4uLm5bV10sW0RdOmJ9fX07CmJCPWZ1bmN0aW9uKG4sVyxELGIsdil7dmFyIGs9bltXXXx8e30saD1rW0RdO2lmKCFoJiYhZy5sKCJ3ZWJfZW5hYmxlX2VudGl0eV91cHNlcnRfb25fdXBkYXRlIikpcmV0dXJuIG47Yj1oUihofHx7fSxiLHY9PT0iUkVQRUFURURfRklFTERTX01FUkdFX09QVElPTl9BUFBFTkQiKTtyZXR1cm57Li4ubixbV106ey4uLmssW0RdOmJ9fX07Cm5taD1mdW5jdGlvbihuPXt9LFcpe3N3aXRjaChXLnR5cGUpe2Nhc2UgIkVOVElUWV9MT0FERUQiOnJldHVybiBXLnBheWxvYWQucmVkdWNlKChELGIpPT57dmFyIHY9Yi5vcHRpb25zPy5wZXJzaXN0ZW5jZU9wdGlvbjtpZih2JiZ2IT09IkVOVElUWV9QRVJTSVNURU5DRV9PUFRJT05fVU5LTk9XTiImJnYhPT0iRU5USVRZX1BFUlNJU1RFTkNFX09QVElPTl9JTk1FTU9SWV9BTkRfUEVSU0lTVCIpcmV0dXJuIEQ7aWYoIWIuZW50aXR5S2V5KXJldHVybiBnLlhqKEVycm9yKCJNaXNzaW5nIGVudGl0eSBrZXkiKSksRDtpZihiLnR5cGU9PT0iRU5USVRZX01VVEFUSU9OX1RZUEVfUkVQTEFDRSIpe2lmKCFiLnBheWxvYWQpcmV0dXJuIGI9bmV3IGcuUXgoIlJFUExBQ0UgZW50aXR5IG11dGF0aW9uIGlzIG1pc3NpbmcgYSBwYXlsb2FkIix7ZW50aXR5S2V5OmIuZW50aXR5S2V5fSksZy5YaihiKSxEO3ZhciBrPXZ4KGIucGF5bG9hZCk7cmV0dXJuIERHKEQsayxiLmVudGl0eUtleSxiLnBheWxvYWRba10pfWlmKGIudHlwZT09PQoiRU5USVRZX01VVEFUSU9OX1RZUEVfREVMRVRFIil7YTp7Yj1iLmVudGl0eUtleTt0cnl7bGV0IGg9Y0coYikuZW50aXR5VHlwZTtrPURHKEQsaCxiKTticmVhayBhfWNhdGNoKGgpe2lmKGggaW5zdGFuY2VvZiBFcnJvcil7Yj1uZXcgZy5ReCgiRmFpbGVkIHRvIGRlc2VyaWFsaXplIGVudGl0eSBrZXkiLHtlbnRpdHlLZXk6YixvcmlnaW5hbE1lc3NhZ2U6aC5tZXNzYWdlfSk7Zy5YaihiKTtrPUQ7YnJlYWsgYX10aHJvdyBoO31rPXZvaWQgMH1yZXR1cm4ga31pZihiLnR5cGU9PT0iRU5USVRZX01VVEFUSU9OX1RZUEVfVVBEQVRFIil7aWYoIWIucGF5bG9hZClyZXR1cm4gYj1uZXcgZy5ReCgiVVBEQVRFIGVudGl0eSBtdXRhdGlvbiBpcyBtaXNzaW5nIGEgcGF5bG9hZCIse2VudGl0eUtleTpiLmVudGl0eUtleX0pLGcuWGooYiksRDtrPXZ4KGIucGF5bG9hZCk7cmV0dXJuIGJCKEQsayxiLmVudGl0eUtleSxiLnBheWxvYWRba10sYi5maWVsZE1hc2s/Lm1lcmdlT3B0aW9ucz8ucmVwZWF0ZWRGaWVsZHNNZXJnZU9wdGlvbil9cmV0dXJuIER9LApuKTsKY2FzZSAiUkVQTEFDRV9FTlRJVFkiOnJldHVybiBERyhuLFcucGF5bG9hZC5lbnRpdHlUeXBlLFcucGF5bG9hZC5rZXksVy5wYXlsb2FkLmc4KTtjYXNlICJSRVBMQUNFX0VOVElUSUVTIjpyZXR1cm4gT2JqZWN0LmtleXMoVy5wYXlsb2FkKS5yZWR1Y2UoKEQsYik9Pnt2YXIgdj1XLnBheWxvYWRbYl07cmV0dXJuIE9iamVjdC5rZXlzKHYpLnJlZHVjZSgoayxoKT0+REcoayxiLGgsdltoXSksRCl9LG4pOwpjYXNlICJVUERBVEVfRU5USVRZIjpyZXR1cm4gYkIobixXLnBheWxvYWQuZW50aXR5VHlwZSxXLnBheWxvYWQua2V5LFcucGF5bG9hZC5nOCxXLnBheWxvYWQublApO2RlZmF1bHQ6cmV0dXJuIG59fTsKVzRVPWZ1bmN0aW9uKCl7aWYodmUpcmV0dXJuIHZlKCk7dmU9a08oIlBlcnNpc3RlbnRFbnRpdHlTdG9yZURiIix7S2M6e0VudGl0eVN0b3JlOnt2eDoxfSxFbnRpdHlBc3NvY2lhdGlvblN0b3JlOnt2eDoyfX0sc2hhcmVkOiExLHVwZ3JhZGUobixXKXtXKDEpJiZFUihaeShuLCJFbnRpdHlTdG9yZSIse2tleVBhdGg6ImtleSJ9KSwiZW50aXR5VHlwZSIsImVudGl0eVR5cGUiKTtXKDIpJiYobj1aeShuLCJFbnRpdHlBc3NvY2lhdGlvblN0b3JlIix7a2V5UGF0aDpbInBhcmVudEVudGl0eUtleSIsImNoaWxkRW50aXR5S2V5Il19KSxFUihuLCJieVBhcmVudEVudGl0eUtleSIsInBhcmVudEVudGl0eUtleSIpLEVSKG4sImJ5Q2hpbGRFbnRpdHlLZXkiLCJjaGlsZEVudGl0eUtleSIpKX0sdmVyc2lvbjozfSk7cmV0dXJuIHZlKCl9OwpEZlM9ZnVuY3Rpb24obil7cmV0dXJuIENGKFc0VSgpLG4pfTsKayQ9ZnVuY3Rpb24obil7cmV0dXJuIHdpbmRvdy5JbnQzMkFycmF5P25ldyBJbnQzMkFycmF5KG4pOkFycmF5KG4pfTsKWDg9ZnVuY3Rpb24obil7dmFyIFc9bi5rZXksRD1uLmNvdW50ZXJbMF1eV1swXSxiPW4uY291bnRlclsxXV5XWzFdLHY9bi5jb3VudGVyWzJdXldbMl0saz1uLmNvdW50ZXJbM11eV1szXTtmb3IodmFyIGg9MztoPj0wJiYhKG4uY291bnRlcltoXT0tfm4uY291bnRlcltoXSk7aC0tKTtmb3IodmFyIHgsTCxlPTQ7ZTw0MDspaD1oRVtEPj4+MjRdXngkW2I+PjE2JjI1NV1eTGZbdj4+OCYyNTVdXmVZW2smMjU1XV5XW2UrK10seD1oRVtiPj4+MjRdXngkW3Y+PjE2JjI1NV1eTGZbaz4+OCYyNTVdXmVZW0QmMjU1XV5XW2UrK10sTD1oRVt2Pj4+MjRdXngkW2s+PjE2JjI1NV1eTGZbRD4+OCYyNTVdXmVZW2ImMjU1XV5XW2UrK10saz1oRVtrPj4+MjRdXngkW0Q+PjE2JjI1NV1eTGZbYj4+OCYyNTVdXmVZW3YmMjU1XV5XW2UrK10sRD1oLGI9eCx2PUw7bj1uLko7aD1XWzQwXTtuWzBdPWdOW0Q+Pj4yNF1eaD4+PjI0O25bMV09Z05bYj4+MTYmMjU1XV5oPj4xNiYyNTU7blsyXT1nTlt2Pj44JgoyNTVdXmg+PjgmMjU1O25bM109Z05bayYyNTVdXmgmMjU1O2g9V1s0MV07bls0XT1nTltiPj4+MjRdXmg+Pj4yNDtuWzVdPWdOW3Y+PjE2JjI1NV1eaD4+MTYmMjU1O25bNl09Z05baz4+OCYyNTVdXmg+PjgmMjU1O25bN109Z05bRCYyNTVdXmgmMjU1O2g9V1s0Ml07bls4XT1nTlt2Pj4+MjRdXmg+Pj4yNDtuWzldPWdOW2s+PjE2JjI1NV1eaD4+MTYmMjU1O25bMTBdPWdOW0Q+PjgmMjU1XV5oPj44JjI1NTtuWzExXT1nTltiJjI1NV1eaCYyNTU7aD1XWzQzXTtuWzEyXT1nTltrPj4+MjRdXmg+Pj4yNDtuWzEzXT1nTltEPj4xNiYyNTVdXmg+PjE2JjI1NTtuWzE0XT1nTltiPj44JjI1NV1eaD4+OCYyNTU7blsxNV09Z05bdiYyNTVdXmgmMjU1fTsKdEU9ZnVuY3Rpb24oKXtpZighcWEmJiFnLlJnKXtpZihHcilyZXR1cm4gR3I7R3I9d2luZG93LmNyeXB0bz8uc3VidGxlO2lmKEdyPy5pbXBvcnRLZXkmJkdyPy5zaWduJiZHcj8uZW5jcnlwdClyZXR1cm4gR3I7R3I9dm9pZCAwfX07CmJoMT1hc3luYyBmdW5jdGlvbihuLFcsRCl7bi5OfHwobi5OPWF3YWl0IG4uSi5pbXBvcnRLZXkoInJhdyIsbi5XLHtuYW1lOiJBRVMtQ1RSIn0sITEsWyJlbmNyeXB0Il0pKTtuPWF3YWl0IG4uSi5lbmNyeXB0KHtuYW1lOiJBRVMtQ1RSIixjb3VudGVyOkQsbGVuZ3RoOjEyOH0sbi5OLFcpO3JldHVybiBuZXcgVWludDhBcnJheShuKX07CiQkPWZ1bmN0aW9uKG4pe24uTj1bMTc3OTAzMzcwMywzMTQ0MTM0Mjc3LDEwMTM5MDQyNDIsMjc3MzQ4MDc2MiwxMzU5ODkzMTE5LDI2MDA4MjI5MjQsNTI4NzM0NjM1LDE1NDE0NTkyMjVdO24uSz1bXTtuLksubGVuZ3RoPTY0O24uWD0wO24uSj0wfTsKc2U9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uSyx2PW4uTlswXSxrPW4uTlsxXSxoPW4uTlsyXSx4PW4uTlszXSxMPW4uTls0XSxlPW4uTls1XSxHPW4uTls2XSxyPW4uTls3XSxOO2ZvcihsZXQgeT0wO3k8NjQ7KXtpZih5PDE2KWJbeV09Tj1XW0RdPDwyNHxXW0QrMV08PDE2fFdbRCsyXTw8OHxXW0QrM10sRCs9NDtlbHNle3ZhciBIPWJbeS0yXTt2YXIgQT1iW3ktMTVdO049Ylt5LTddK2JbeS0xNl0rKChIPj4+MTd8SDw8MTUpXihIPj4+MTl8SDw8MTMpXkg+Pj4xMCkrKChBPj4+N3xBPDwyNSleKEE+Pj4xOHxBPDwxNCleQT4+PjMpO2JbeV09Tn1IPXIrck5beV0rTisoKEw+Pj42fEw8PDI2KV4oTD4+PjExfEw8PDIxKV4oTD4+PjI1fEw8PDcpKSsoTCZlXn5MJkcpO0E9KCh2Pj4+Mnx2PDwzMCleKHY+Pj4xM3x2PDwxOSleKHY+Pj4yMnx2PDwxMCkpKyh2JmtediZoXmsmaCk7cj1IK0E7eCs9SDt5Kys7eTwxNj8oYlt5XT1OPVdbRF08PDI0fFdbRCsxXTw8MTZ8V1tEKzJdPDw4fFdbRCsKM10sRCs9NCk6KEg9Ylt5LTJdLEE9Ylt5LTE1XSxOPWJbeS03XStiW3ktMTZdKygoSD4+PjE3fEg8PDE1KV4oSD4+PjE5fEg8PDEzKV5IPj4+MTApKygoQT4+Pjd8QTw8MjUpXihBPj4+MTh8QTw8MTQpXkE+Pj4zKSxiW3ldPU4pO0g9RytyTlt5XStOKygoeD4+PjZ8eDw8MjYpXih4Pj4+MTF8eDw8MjEpXih4Pj4+MjV8eDw8NykpKyh4JkxefngmZSk7QT0oKHI+Pj4yfHI8PDMwKV4ocj4+PjEzfHI8PDE5KV4ocj4+PjIyfHI8PDEwKSkrKHImdl5yJmtediZrKTtHPUgrQTtoKz1IO3krKzt5PDE2PyhiW3ldPU49V1tEXTw8MjR8V1tEKzFdPDwxNnxXW0QrMl08PDh8V1tEKzNdLEQrPTQpOihIPWJbeS0yXSxBPWJbeS0xNV0sTj1iW3ktN10rYlt5LTE2XSsoKEg+Pj4xN3xIPDwxNSleKEg+Pj4xOXxIPDwxMyleSD4+PjEwKSsoKEE+Pj43fEE8PDI1KV4oQT4+PjE4fEE8PDE0KV5BPj4+MyksYlt5XT1OKTtIPWUrck5beV0rTisoKGg+Pj42fGg8PDI2KV4oaD4+PjExfGg8PDIxKV4oaD4+PjI1fApoPDw3KSkrKGgmeF5+aCZMKTtBPSgoRz4+PjJ8Rzw8MzApXihHPj4+MTN8Rzw8MTkpXihHPj4+MjJ8Rzw8MTApKSsoRyZyXkcmdl5yJnYpO2U9SCtBO2srPUg7eSsrO3k8MTY/KGJbeV09Tj1XW0RdPDwyNHxXW0QrMV08PDE2fFdbRCsyXTw8OHxXW0QrM10sRCs9NCk6KEg9Ylt5LTJdLEE9Ylt5LTE1XSxOPWJbeS03XStiW3ktMTZdKygoSD4+PjE3fEg8PDE1KV4oSD4+PjE5fEg8PDEzKV5IPj4+MTApKygoQT4+Pjd8QTw8MjUpXihBPj4+MTh8QTw8MTQpXkE+Pj4zKSxiW3ldPU4pO0g9TCtyTlt5XStOKygoaz4+PjZ8azw8MjYpXihrPj4+MTF8azw8MjEpXihrPj4+MjV8azw8NykpKyhrJmhefmsmeCk7QT0oKGU+Pj4yfGU8PDMwKV4oZT4+PjEzfGU8PDE5KV4oZT4+PjIyfGU8PDEwKSkrKGUmR15lJnJeRyZyKTtOPXI7cj14O3g9TjtOPUc7Rz1oO2g9TjtOPWU7ZT1rO2s9TjtMPXYrSDt2PUgrQTt5Kyt9bi5OWzBdPXYrbi5OWzBdfDA7bi5OWzFdPWsrbi5OWzFdfDA7bi5OWzJdPWgrbi5OWzJdfAowO24uTlszXT14K24uTlszXXwwO24uTls0XT1MK24uTls0XXwwO24uTls1XT1lK24uTls1XXwwO24uTls2XT1HK24uTls2XXwwO24uTls3XT1yK24uTls3XXwwfTsKTmE9ZnVuY3Rpb24obil7dmFyIFc9bmV3IFVpbnQ4QXJyYXkoMzIpLEQ9NjQtbi5KO24uSj41NSYmKEQrPTY0KTt2YXIgYj1uZXcgVWludDhBcnJheShEKTtiWzBdPTEyODt2YXIgdj1uLlgqODtmb3IobGV0IGs9MTtrPDk7aysrKXtsZXQgaD12JTI1NjtiW0Qta109aDt2PSh2LWgpLzI1Nn1uLnVwZGF0ZShiKTtmb3IoRD0wO0Q8ODtEKyspV1tEKjRdPW4uTltEXT4+PjI0LFdbRCo0KzFdPW4uTltEXT4+PjE2JjI1NSxXW0QqNCsyXT1uLk5bRF0+Pj44JjI1NSxXW0QqNCszXT1uLk5bRF0mMjU1OyQkKG4pO3JldHVybiBXfTsKcGY9ZnVuY3Rpb24obixXLEQpe249bmV3IHZtaShuLk4pO24udXBkYXRlKFcpO24udXBkYXRlKEQpO1c9TmEobik7bi51cGRhdGUobi5qKTtuLnVwZGF0ZShXKTtXPU5hKG4pO24ucmVzZXQoKTtyZXR1cm4gV307CmtTaj1hc3luYyBmdW5jdGlvbihuLFcsRCl7bi5OfHwobi5OPWF3YWl0IG4uSi5pbXBvcnRLZXkoInJhdyIsbi5XLHtuYW1lOiJITUFDIixoYXNoOiJTSEEtMjU2In0sITEsWyJzaWduIl0pKTt2YXIgYj1uZXcgVWludDhBcnJheShXLmxlbmd0aCtELmxlbmd0aCk7Yi5zZXQoVyk7Yi5zZXQoRCxXLmxlbmd0aCk7bj1hd2FpdCBuLkouc2lnbih7bmFtZToiSE1BQyIsaGFzaDoiU0hBLTI1NiJ9LG4uTixiKTtyZXR1cm4gbmV3IFVpbnQ4QXJyYXkobil9Owp4ZlM9YXN5bmMgZnVuY3Rpb24obixXLEQsYil7bi5KfHwobi5KPW5ldyBoYXcobi5OLGIpKTtyZXR1cm4ga1NqKG4uSixXLEQpfTsKSGU9ZnVuY3Rpb24obixXLEQpe24uV3x8KG4uVz1uZXcgWSQobi5OKSk7cmV0dXJuIHBmKG4uVyxXLEQpfTsKTDRaPWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXt2YXIgYj10RSgpO2lmKGIpdHJ5e3JldHVybiBhd2FpdCB4ZlMobixXLEQsYil9Y2F0Y2godil7cmV0dXJuIGcuR3EodikscWE9ITAsSGUobixXLEQpfWVsc2UgcmV0dXJuIEhlKG4sVyxEKX07CmVhVT1mdW5jdGlvbihuKXtyZXR1cm4gbiBpbnN0YW5jZW9mIEVycm9yP25ldyBmZigiVU5LTk9XTl9FTkNPREVfRVJST1IiLHtvcmlnaW5hbE1lc3NhZ2U6bi5tZXNzYWdlfSk6bmV3IGZmKCJVTktOT1dOX0VOQ09ERV9FUlJPUiIpfTsKZ20yPWZ1bmN0aW9uKG4pe3JldHVybiBuIGluc3RhbmNlb2YgRXJyb3I/bmV3IGZmKCJVTktOT1dOX0RFQ09ERV9FUlJPUiIse29yaWdpbmFsTWVzc2FnZTpuLm1lc3NhZ2V9KTpuZXcgZmYoIlVOS05PV05fREVDT0RFX0VSUk9SIil9OwpKRT1mdW5jdGlvbihuLFcpe249biBpbnN0YW5jZW9mIGZmP246VyhuKTtnLlhqKG4pO3Rocm93IG47fTsKSTg9ZnVuY3Rpb24obil7bj0obmV3IFRleHRFbmNvZGVyKS5lbmNvZGUobikuc3ViYXJyYXkoMCwxNik7dmFyIFc9bmV3IFVpbnQ4QXJyYXkoMTYpO1cuc2V0KG4pO3JldHVybiBXfTsKcXNVPWZ1bmN0aW9uKCl7dmFyIG49WHlVLnZpZGVvUGxheWJhY2tQb3NpdGlvbkVudGl0eTtpZihuKXJldHVybiBuO2cuR3EobmV3IGcuUXgoIkVudGl0eSBtb2RlbCBub3QgZm91bmQuIix7ZW50aXR5VHlwZToidmlkZW9QbGF5YmFja1Bvc2l0aW9uRW50aXR5In0pKX07CkFFPWZ1bmN0aW9uKG4sVyl7YTp7bj1TWShuLlcsVy52ZXJzaW9uKTt0cnl7dmFyIEQ9bi5KKFcuZGF0YSxXLmtleSk7YnJlYWsgYX1jYXRjaChiKXtKRShiLGdtMil9RD12b2lkIDB9cmV0dXJuIER9OwpHU3c9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5OLm9iamVjdFN0b3JlKCJFbnRpdHlTdG9yZSIpLmluZGV4KCJlbnRpdHlUeXBlIikuZ2V0QWxsKElEQktleVJhbmdlLm9ubHkoVykpLnRoZW4oRD0+RC5tYXAoYj0+QUUobixiKSkpfTsKJGZpPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9V2UoVyk7cmV0dXJuIG1MKG4sRCkudGhlbigoKT0+dENoKG4sVykpfTsKS2Y9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uSltEXTtifHwoYj1uZXcgU2V0LG4uSltEXT1iKTtiLmFkZChXKX07CnIzWj1mdW5jdGlvbihuLFcpe3ZhciBEPVdlKFcpLGI9U1kobi5XLDEpLHY9ey4uLld9O3JldHVybiBuLk4ub2JqZWN0U3RvcmUoIkVudGl0eVN0b3JlIikuZ2V0KEQpLnRoZW4oaz0+e2lmKGspe2lmKGsuZW50aXR5VHlwZSE9PSJ2aWRlb1BsYXliYWNrUG9zaXRpb25FbnRpdHkiKXRocm93IEVycm9yKCJJbmNvcnJlY3QgZW50aXR5IHR5cGUiKTt2LmVudGl0eU1ldGFkYXRhfHwoaz1BRShuLGspLHYuZW50aXR5TWV0YWRhdGE9ay5lbnRpdHlNZXRhZGF0YSl9fSkudGhlbigoKT0+e2E6e3RyeXt2YXIgaz1iLlcodixEKTsKYnJlYWsgYX1jYXRjaChoKXtKRShoLGVhVSl9az12b2lkIDB9az17a2V5OkQsZW50aXR5VHlwZToidmlkZW9QbGF5YmFja1Bvc2l0aW9uRW50aXR5IixkYXRhOmssdmVyc2lvbjoxfTtyZXR1cm4gc1IuYWxsKFtuLk4ub2JqZWN0U3RvcmUoIkVudGl0eVN0b3JlIikucHV0KGspLCRmaShuLHYpXSl9KS50aGVuKCgpPT57S2YobixELCJ2aWRlb1BsYXliYWNrUG9zaXRpb25FbnRpdHkiKTsKcmV0dXJuIER9KX07Ck9lPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Y0coVykuZW50aXR5VHlwZTtyZXR1cm4gc1IuYWxsKFtuLk4ub2JqZWN0U3RvcmUoIkVudGl0eVN0b3JlIikuZGVsZXRlKFcpLG1MKG4sVyldKS50aGVuKCgpPT57S2YobixXLEQpfSl9OwptTD1mdW5jdGlvbihuLFcpe3JldHVybiBuLk4ub2JqZWN0U3RvcmUoIkVudGl0eUFzc29jaWF0aW9uU3RvcmUiKS5pbmRleCgiYnlQYXJlbnRFbnRpdHlLZXkiKS5kZWxldGUoSURCS2V5UmFuZ2Uub25seShXKSl9OwpzeHI9ZnVuY3Rpb24obixXKXtXPVcubWFwKEQ9Pk9lKG4sRCkpOwpyZXR1cm4gc1IuYWxsKFcpLnRoZW4oKCk9Pnt9KX07CnRDaD1mdW5jdGlvbihuLFcpe3ZhciBEPVdlKFcpLGI9cXNVKCk7aWYoIWIpcmV0dXJuIHNSLnJlc29sdmUoW10pO1c9bmV3IGIoVyk7bj1uLk4ub2JqZWN0U3RvcmUoIkVudGl0eUFzc29jaWF0aW9uU3RvcmUiKTtiPVtdO2ZvcihsZXQgdiBvZiBXLkooKSliLnB1c2gobi5wdXQoe3BhcmVudEVudGl0eUtleTpELGNoaWxkRW50aXR5S2V5OnZ9KSk7cmV0dXJuIHNSLmFsbChiKS50aGVuKHY9PnYubWFwKGs9PmtbMV0pKX07ClNZPWZ1bmN0aW9uKG4sVz0wKXtuPW4uTltXXTtpZighbil0aHJvdyBXPW5ldyBmZigiSU5WQUxJRF9FTkNPREVSX1ZFUlNJT04iLHtPQTpXfSksZy5YaihXKSxXO3JldHVybiBufTsKUGU9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgb2Ygbi5vYnNlcnZlcnMpRChXKX07ClpHPWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1hd2FpdCBEZlMobi50b2tlbiksdjtXPWF3YWl0IE9SKGIsWyJFbnRpdHlTdG9yZSIsIkVudGl0eUFzc29jaWF0aW9uU3RvcmUiXSxXLGs9Pnt2PW5ldyBOR3coayxuLk4pO3JldHVybiBEKHYpfSk7CnYmJihiPXYuSixPYmplY3Qua2V5cyhiKS5sZW5ndGg+MCYmKG4uY2hhbm5lbC5wb3N0TWVzc2FnZShiKSxQZShuLGIpKSk7cmV0dXJuIFd9OwpweXQ9ZnVuY3Rpb24obixXKXtyZXR1cm4gWkcobix7bW9kZToicmVhZHdyaXRlIixHUTohMH0sRD0+cjNaKEQsVykpfTsKWXNNPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFpHKG4se21vZGU6InJlYWR3cml0ZSIsR1E6ITB9LEQ9Pk9lKEQsVykpfTsKSGh3PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFpHKG4se21vZGU6InJlYWR3cml0ZSIsR1E6ITB9LEQ9PnN4cihELFcpKX07ClVlPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFpHKG4se21vZGU6InJlYWRvbmx5IixHUTohMH0sRD0+R1N3KEQsVykpfTsKSTkyPWFzeW5jIGZ1bmN0aW9uKCl7dHJ5e2xldCBXPWF3YWl0IGcublAoKTtpZihXJiZSOSgpJiZ0eXBlb2YgZy5xaS5Ccm9hZGNhc3RDaGFubmVsIT09InVuZGVmaW5lZCIpe3ZhciBuPW5ldyBmOWk7cmV0dXJuIG5ldyBKM2koVyxuKX19Y2F0Y2goVyl7VyBpbnN0YW5jZW9mIEVycm9yJiZnLlhqKFcpfX07CnlXPWZ1bmN0aW9uKCl7dmFyIG49WE1MSHR0cFJlcXVlc3QucHJvdG90eXBlLmZldGNoO3JldHVybiEhbiYmbi5sZW5ndGg9PT0zfTsKRWU9ZnVuY3Rpb24obixXKXtXPU51bWJlcihXKSoxRTM7dmFyIEQ9TWF0aC5yb3VuZCgoMCxnLlIpKCkpLGI9RC50b1N0cmluZygpO249e2lubmVydHViZVJlc3BvbnNlOm4sc2VydmVyRGF0ZVRpbWVzdGFtcE1zOmIsbGFzdE1vZGlmaWVkVGltZXN0YW1wTXM6YixleHBpcmVUaW1lc3RhbXBNczooRCtXKS50b1N0cmluZygpLGlzUHJvY2Vzc2VkOiEwfTtpZihXPWcuQXIoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9OQU1FIikpbi5jbGllbnROYW1lPVc7cmV0dXJuIG59Owp1Qj1mdW5jdGlvbihuLFcsRCl7aWYoIWcubCgic3RhdGVfdGFnc19raWxsc3dpdGNoIikpe3ZhciBiPW5ldyBpQihXKTtpZigoYi5OPy5zdGF0ZVRhZ3NNb2RpZmllZHx8W10pLmxlbmd0aD4wKXt2YXIgdj1uLk4udUIoKTtmb3IobGV0IGggb2Ygdil7dmFyIGs9dkcobi5OLGgpO2lmKGspe2E6e3Y9Yi5OPy5zdGF0ZVRhZ3NNb2RpZmllZHx8W107az0obmV3IGlCKHFyKGspKSkuTj8ucmVsZXZhbnRTdGF0ZVRhZ3N8fFtdO2ZvcihsZXQgeCBvZiBrKWlmKHguc3RhdGVUYWchPW51bGwmJnYuaW5jbHVkZXMoeC5zdGF0ZVRhZykmJngub25TdGF0ZVRhZ01vZGlmaWVkPT09IlNUQVRFX1RBR19DQUNIRV9JTlNUUlVDVElPTl9FVklDVF9SRVNQT05TRSIpe3Y9ITA7YnJlYWsgYX12PSExfXYmJmtNKG4uTixoKX19fX1iPVcucmVzcG9uc2VDb250ZXh0Py5tYXhBZ2VTZWNvbmRzO0QmJmImJk51bWJlcihiKT4wJiYoVz1FZShXLGIpLG4uTi5wdXQoRCxuZXcgYmgoVykpKX07ClNzWj1mdW5jdGlvbihuLFcsRCl7aWYobi5OKXtsZXQgYj1TMShUNShXLCJrZXkiKSl8fCIvVU5LTk9XTl9QQVRIIjtuLk4uc3RhcnQoYil9bj1EO2cubCgid3VnX25ldHdvcmtpbmdfZ3ppcF9yZXF1ZXN0IikmJihuPU1YUyhEKSk7cmV0dXJuIG5ldyB3aW5kb3cuUmVxdWVzdChXLG4pfTsKZE49YXN5bmMgZnVuY3Rpb24obixXLEQsYix2LGspe2lmKGs/LmFib3J0ZWQpcmV0dXJuIFcuY2FuY2VsKCksYjt2YXIge3ZhbHVlOmgsZG9uZTp4fT1hd2FpdCBXLnJlYWQoKTtpZih4KXJldHVybiBuLk4/LnN1Y2Nlc3MoKSxiO3RyeXt2YXIgTD1ELnBhcnNlKGgpfWNhdGNoKGUpe3Rocm93IG5ldyBvOCgiRmFpbGVkIHRvIHBhcnNlIHN0cmVhbWluZyByZXNwb25zZSIsaCk7fWlmKEwhPW51bGwpZm9yKGxldCBlIG9mIEwpYi5wdXNoKGUpLHY/LihlKTtyZXR1cm4gZE4obixXLEQsYix2LGspfTsKbmM9ZnVuY3Rpb24obixXLEQpe2lmKCF6cil7bGV0IGs9Zy5xaigpO2cueG8oayx7Tkg6bEIsWUw6VHJ9KTtpZihEPy5vUyl7Zy54byhrLHtOSDpqWSxQZjpnLkFyKCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsRC5jbGllbnRJbnRlcmZhY2UpfSk7Zy54byhrLHtOSDpDZixQZjo1MTg0RTZ9KTtnLnhvKGsse05IOkJlLFlMOkEzaixbZy5MWF06W2pZLENmXX0pO2cueG8oayx7Tkg6RjgsWUw6d059KTt2YXIgYj1rLnJlc29sdmUoRjgpO2xldCBoPXdpbmRvdztpZihoLnl0SW5pdGlhbFZpZGVvSWQpe3ZhciB2PWgueXRJbml0aWFsVmlkZW9JZDtoLnl0SW5pdGlhbFBsYXllclJlc3BvbnNlJiZ1QihiLGgueXRJbml0aWFsUGxheWVyUmVzcG9uc2UseUgoInBsYXllciIse3ZpZGVvSWQ6dn0pKTtoLnl0SW5pdGlhbFdhdGNoTmV4dFJlc3BvbnNlJiZ1QihiLGgueXRJbml0aWFsV2F0Y2hOZXh0UmVzcG9uc2UseUgoIm5leHQiLHt2aWRlb0lkOnZ9KSk7aC55dEluaXRpYWxSZWVsSXRlbVdhdGNoUmVzcG9uc2UmJgp1QihiLGgueXRJbml0aWFsUmVlbEl0ZW1XYXRjaFJlc3BvbnNlLHlIKCJyZWVsX2l0ZW1fd2F0Y2giLHt2aWRlb0lkOnZ9KSl9fWcueG8oayx7Tkg6TWEsUGY6e3pnOntmZWVkYmFja0VuZHBvaW50OmhtKG1mUyksbW9kaWZ5Q2hhbm5lbE5vdGlmaWNhdGlvblByZWZlcmVuY2VFbmRwb2ludDpobShLNGkpLHBsYXlsaXN0RWRpdEVuZHBvaW50OmhtKE9ociksc2hhcmVFbnRpdHlFbmRwb2ludDpobShSOCksc3Vic2NyaWJlRW5kcG9pbnQ6aG0oUEd4KSx1bnN1YnNjcmliZUVuZHBvaW50OmhtKFpodCksd2ViUGxheWVyU2hhcmVFbnRpdHlTZXJ2aWNlRW5kcG9pbnQ6aG0oVWZaKX19fSk7dj1iJC5nZXRJbnN0YW5jZSgpO2I9e307diYmKGIuY2xpZW50X2xvY2F0aW9uPXYpO0Q/Lm9TJiYodj1rLnJlc29sdmUoRjgpLGIuc3RvcmU9dixiLnJlc29sdmVfdXJsX3ByZWZldGNoPWsucmVzb2x2ZShRVykpO2cueG8oayx7Tkg6VlcsUGY6Yn0pO2cueG8oayx7Tkg6Y2UsUGY6biE9PXZvaWQgMD8KbjppTygpfSk7Vz09PXZvaWQgMCYmKFc9ay5yZXNvbHZlKGxCKSk7Zy5sKCJhbGxfd2ViX2VuYWJsZV9uZXR3b3JrX21hY2hpbmUiKSYmY1MyKCk7RTliKGsucmVzb2x2ZShNYSksVyxrLnJlc29sdmUoY2UpLGsucmVzb2x2ZShWVyksRD8ub1M/ay5yZXNvbHZlKEJlKTp2b2lkIDApO2cueG8oayx7Tkg6YTgsUGY6WDcuaW5zdGFuY2V9KTt6cj1rLnJlc29sdmUoYTgpfXJldHVybiB6cn07CldRPWZ1bmN0aW9uKG4pe3ZhciBXPXt9O249bi5zcGxpdCgiJiIpO2ZvcihsZXQgRCBvZiBuKW49RC5zcGxpdCgiPSIpLG4ubGVuZ3RoPT09MiYmKFdbblswXV09blsxXSk7cmV0dXJuIFd9Owp5M3I9YXN5bmMgZnVuY3Rpb24oKXt2YXIgbj13aW5kb3c7YXdhaXQgZy5NaChnLkQ2KCkpO3ZhciBXPW4uYmdldm1jO2lmKCFXKXRocm93IEVycm9yKCJCR0UgQ29udHJvbHMgbm90IGV4cG9zZWQiKTtyZXR1cm57cGF1c2U6KCk9PntXLnAoKX0sCnJlc3VtZTooKT0+e1cucigpfSwKY2hlY2tGb3JSZWZyZXNoOigpPT5XLmNyKCl9fTsKZy5ENj1mdW5jdGlvbigpe3JldHVybiBnLmwoImJnX3N0X2hyIik/ImhhdnVva21oaHMtMCI6YGhhdnVva21oaHMtJHtNYXRoLmZsb29yKGdsb2JhbFRoaXMucGVyZm9ybWFuY2U/LnRpbWVPcmlnaW58fDApfWB9OwpiMD1mdW5jdGlvbihuKXt3aW5kb3cuYmdlbnM9bn07CkVteD1mdW5jdGlvbigpe3JldHVybiBuZXcgUHJvbWlzZShuPT57dmFyIFc9d2luZG93O1cubnRwZXZhc3JzIT09dm9pZCAwP24obmV3IHZRKFcubnRwZXZhc3JzKSk6KFcubnRwcWZiZWw9PT12b2lkIDAmJihXLm50cHFmYmVsPVtdKSxXLm50cHFmYmVsLnB1c2goRD0+e24obmV3IHZRKEQpKX0pKX0pfTsKeDU9ZnVuY3Rpb24oKXtpZihnLmFLKCkpe3ZhciBuPWcuQXIoIlBMQVlFUl9WQVJTIix7fSk7aWYoZy4keShuLCJwcml2ZW1iZWQiLCExKSE9IjEiJiYhZy54UihuKSl7dmFyIFc9KCk9PntrNT0hMDsiZ29vZ2xlX2FkX3N0YXR1cyJpbiB3aW5kb3c/Zy5TSCgiRENMS1NUQVQiLDEpOmcuU0goIkRDTEtTVEFUIiwyKX07CnRyeXtsZXQgRD1Taihkb2N1bWVudCk7aU0oaGosVyxEKX1jYXRjaChEKXt9aWhDLnB1c2godGEuTFMoKCk9PntpZighKGs1fHwiZ29vZ2xlX2FkX3N0YXR1cyJpbiB3aW5kb3cpKXt0cnl7aWYoaGoudG9TdHJpbmcoKSYmVyl7dmFyIEQ9YCR7QWkoVyl9YCxiPW9JW0RdO2ImJlBVKGIpfX1jYXRjaCh2KXt9azU9ITA7Zy5TSCgiRENMS1NUQVQiLDMpfX0sNUUzKSl9fX07CkxjPWZ1bmN0aW9uKCl7dmFyIG49TnVtYmVyKGcuQXIoIkRDTEtTVEFUIiwwKSk7cmV0dXJuIGlzTmFOKG4pPzA6bn07CmV0PWZ1bmN0aW9uKG4sVyl7bi5OPVd9OwpvbU09YXN5bmMgZnVuY3Rpb24obil7aWYoZy5xaS55dEF0UCYmIWcubCgieXRhdHBfa3MiKSl7dmFyIFc9YXdhaXQgZy5xaS55dEF0UDtkZWxldGUgZy5xaS55dEF0UDt2YXIgRD1XPy5SO3ZhciBiPVc/LlQ7Vz11dDIoRCk7bGV0IGs9ISFiO24uSi5KKEQ/Vz9rPzc6MTA6az8xOjg6az8yOjksbi5XKyspO2lmKCFEfHxXKUQ9YXdhaXQgWHkobixxZShiLG51bGwpKSxEPUpTT04uc3RyaW5naWZ5KEQpO2cucWkueXRBdFJDP2cucWkueXRBdFJDKEQpOmcuR3EoRXJyb3IoInl0QXRSQyBub3QgZGVmaW5lZCBmb3IgeXRBdFAuIikpfWVsc2UgZy5xaS55dEF0UkM/Zy5WeCgwLGFzeW5jKCk9PntiPWcucWkueXRBdFQ7ZGVsZXRlIGcucWkueXRBdFQ7aWYoZy5xaS55dEF0UkMpe24uSi5KKDIsbi5XKyspO3ZhciBrPWF3YWl0IFh5KG4scWUoYixudWxsKSk7Zy5xaS55dEF0UkMmJmcucWkueXRBdFJDKEpTT04uc3RyaW5naWZ5KGspKX1lbHNlIG4uSi5KKDYsbi5XKyspfSwyLHYwKCJhdHRfaW5pdF9kZWxheSIsCjApKTooYj1nLnFpLnl0QXRULGRlbGV0ZSBnLnFpLnl0QXRULG4uSi5KKDEsbi5XKyspKTsKRD1hd2FpdCBFbXgoKTtELmJpbmRJbm5lcnR1YmVDaGFsbGVuZ2VGZXRjaGVyKGs9PntuLkouSigzLG4uVysrKTtyZXR1cm4gWHkobixxZShiLGspKX0pOwpELnJlZ2lzdGVyQ2hhbGxlbmdlRmV0Y2hlZENhbGxiYWNrKGs9PntrPWsuY2hhbGxlbmdlO2lmKCFrKXRocm93IEVycm9yKCJCR0VfTUFDUiIpO2s9e2NoYWxsZW5nZTprLFJSOldRKGspLE8xOnYsYmdDaGFsbGVuZ2U6bmV3IHIkfTtrPVByb21pc2UucmVzb2x2ZShrKTtuLk49a30pOwp2YXIgdj1hd2FpdCBnLk1oKGcuRDYoKSk7RD1ELmdldExhdGVzdENoYWxsZW5nZVJlc3BvbnNlKCkuY2hhbGxlbmdlO2lmKCFEKXRocm93IEVycm9yKCJCR0VfTUFDSUwiKTtyZXR1cm57Y2hhbGxlbmdlOkQsUlI6V1EoRCksTzE6dixiZ0NoYWxsZW5nZTpuZXcgciR9fTsKdGo9YXN5bmMgZnVuY3Rpb24obil7dmFyIFc9cWUodm9pZCAwLGckKCkuTik7dHJ5e3ZhciBEPWF3YWl0IGRmMihuLFcpfWNhdGNoKHgpe3JldHVybiBnLkdxKEVycm9yKCJGYWlsZWQgdG8gZmV0Y2ggYXR0ZXN0YXRpb24gY2hhbGxlbmdlIGFmdGVyIDUgYXR0ZW1wdHM7IG5vdCByZXRyeWluZyBmb3IgMjRoLiIpKSxHMChuLDg2NEU1KSx7Y2hhbGxlbmdlOiIiLFJSOnt9LE8xOnZvaWQgMCxiZ0NoYWxsZW5nZTp2b2lkIDB9fVc9RC5RRjt2YXIgYj1ELlR0O0cwKG4sKE51bWJlcihiLnQpfHw3MjAwKSoxRTMpO249dm9pZCAwO2lmKCJjMWEiaW4gYiYmRC5iZ0NoYWxsZW5nZSl7RD1ELmJnQ2hhbGxlbmdlO3ZhciB2PW5ldyByJDtpZihELmludGVycHJldGVySmF2YXNjcmlwdCl7dmFyIGs9Tk4oRC5pbnRlcnByZXRlckphdmFzY3JpcHQpO2s9S2IoaykudG9TdHJpbmcoKTt2YXIgaD1uZXcgcXY7Zy5TRShoLDYsayk7JDkodixxdiwxLGgseFUpfWVsc2UgRC5pbnRlcnByZXRlclVybCYmCihrPXB3KEQuaW50ZXJwcmV0ZXJVcmwpLGs9eDMoaykudG9TdHJpbmcoKSxoPW5ldyBHSCxnLlNFKGgsNCxrKSwkOSh2LEdILDIsaCx4VSkpO0QuaW50ZXJwcmV0ZXJIYXNoJiZBUyh2LDMsRC5pbnRlcnByZXRlckhhc2gseFUpO0QucHJvZ3JhbSYmQVModiw0LEQucHJvZ3JhbSx4VSk7RC5nbG9iYWxOYW1lJiZBUyh2LDUsRC5nbG9iYWxOYW1lLHhVKTtELmNsaWVudEV4cGVyaW1lbnRzU3RhdGVCbG9iJiZBUyh2LDcsRC5jbGllbnRFeHBlcmltZW50c1N0YXRlQmxvYix4VSk7dHJ5e2F3YWl0IHRxKGckKCksdil9Y2F0Y2goeCl7cmV0dXJuIGcuR3EoeCkse2NoYWxsZW5nZTpXLFJSOmIsTzE6bixiZ0NoYWxsZW5nZTp2fX10cnl7bj1uZXcgQXEoe2NoYWxsZW5nZTp2LHgzOntWajoiYUdJZiJ9fSksYXdhaXQgbi5Pdn1jYXRjaCh4KXtnLkdxKHgpLG49dm9pZCAwfX1yZXR1cm57Y2hhbGxlbmdlOlcsUlI6YixPMTpuLGJnQ2hhbGxlbmdlOnZ9fTsKWHk9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD1uLlg7aWYoIUR8fEQuV0coKSlyZXR1cm4gJDUobixXKTtnLmdfKCJhdHRfcG5hIix2b2lkIDAsImF0dGVzdGF0aW9uX2NoYWxsZW5nZV9mZXRjaCIpO3JldHVybiBuZXcgUHJvbWlzZShiPT57RC5lRigicHVibGljeXRuZXR3b3Jrc3RhdHVzLW9ubGluZSIsKCk9PnskNShuLFcpLnRoZW4oYil9KX0pfTsKZGYyPWFzeW5jIGZ1bmN0aW9uKG4sVyl7Zm9yKHZhciBEPXZvaWQgMCxiPTA7Yjw1Oyl7aWYoYj4wKXtsZXQgdj0xRTMqTWF0aC5wb3coMixiLTEpK01hdGgucmFuZG9tKCkqMUUzO2F3YWl0IG5ldyBQcm9taXNlKGs9PntnLmNCKDAsKCk9PntrKHZvaWQgMCl9LHYpfSl9dHJ5e24uSi5KKDQsbi5XKyspOwpsZXQgdj1hd2FpdCBYeShuLFcpO3JldHVybiB6YWkodil9Y2F0Y2godil7RD12LHYgaW5zdGFuY2VvZiBFcnJvciYmZy5HcSh2KX1iKyt9dGhyb3cgRDt9OwpHMD1mdW5jdGlvbihuLFcpe3ZhciBEPURhdGUubm93KCkrVyxiPWFzeW5jKCk9Pnt2YXIgdj1ELURhdGUubm93KCk7djwxRTM/YXdhaXQgbDlpKG4pOmcuY0IoMCxiLE1hdGgubWluKHYsNkU0KSl9OwpiKCl9OwokNT1hc3luYyBmdW5jdGlvbihuLFcpe2IwKDIpO3RyeXtsZXQgRD1hd2FpdCBYeShuLm5ldHdvcmssVyk7RD9ELmNoYWxsZW5nZSYmIUQuYmdDaGFsbGVuZ2U/YjAoMSk6YjAoNCk6YjAoMyk7cmV0dXJuIER9Y2F0Y2goRCl7YjAoMyl9fTsKemFpPWZ1bmN0aW9uKG4pe2lmKCFuKXRocm93IEVycm9yKCJGZXRjaGluZyBBdHRlc3RhdGlvbiBjaGFsbGVuZ2UgcmV0dXJuZWQgZmFsc3kiKTtpZighbi5jaGFsbGVuZ2UpdGhyb3cgRXJyb3IoIk1pc3NpbmcgQXR0ZXN0YXRpb24gY2hhbGxlbmdlIik7dmFyIFc9bi5jaGFsbGVuZ2UsRD1XUShXKTtpZigiYzFhImluIEQmJighbi5iZ0NoYWxsZW5nZXx8IW4uYmdDaGFsbGVuZ2UucHJvZ3JhbSkpdGhyb3cgRXJyb3IoIkV4cGVjdGVkIGJnIGNoYWxsZW5nZSBidXQgbWlzc2luZy4iKTtyZXR1cm57Li4ubixRRjpXLFR0OkR9fTsKbDlpPWFzeW5jIGZ1bmN0aW9uKG4pe3ZhciBXPWF3YWl0IFByb21pc2UucmFjZShbbi5OLG51bGxdKSxEPXRqKG4pO24uTj1EO1c/Lk8xPy5kaXNwb3NlKCl9OwpUR2g9ZnVuY3Rpb24obixXKXtyZXR1cm4gbmV3IFByb21pc2UoRD0+e2cuY0IoMCwoKT0+e0QoVygpKX0sbil9KX07CnFlPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9e2VuZ2FnZW1lbnRUeXBlOiJFTkdBR0VNRU5UX1RZUEVfVU5CT1VORCJ9O24mJihELmVhY3JUb2tlbj1uKTtXJiYoRC5pbnRlcnByZXRlckhhc2g9Vyk7cmV0dXJuIER9Owp1dDI9ZnVuY3Rpb24obil7aWYoIW58fCFnLmwoInJvc2NhcyIpKXJldHVybiExO3RyeXt2YXIgVz1KU09OLnBhcnNlKG4pfWNhdGNoKEQpe3JldHVybiExfW49Vy5jaGFsbGVuZ2U7aWYoIW4pcmV0dXJuITE7Vz1XUShuKTtuPU51bWJlcihXLmMpfHx2b2lkIDA7Vz1OdW1iZXIoVy50KXx8NzIwMDtyZXR1cm4hIW4mJkRhdGUubm93KCk+KG4rVykqMUUzfTsKcmE9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFByb21pc2Uobj0+e3ZhciBXPXdpbmRvdztXLmF0dG1wIT09dm9pZCAwP24oVy5hdHRtcCk6KFcuYXR0bXE9PT12b2lkIDAmJihXLmF0dG1xPVtdKSxXLmF0dG1xLnB1c2goRD0+e24oRCl9KSl9KX07CmcucGM9YXN5bmMgZnVuY3Rpb24obixXLEQpe2lmKHNoKCkpe3ZhciBiPXdpbmRvdztyZXR1cm4gYi5hdHRtcCE9PXZvaWQgMD9iLmF0dG1wLnMobixXLEQpOihhd2FpdCByYSgpKS5zKG4sVyxEKX1yZXR1cm4oYj0oYj1nLnJyKCJ5dC5hYmEuYXR0IikpP2I6TmUuaW5zdGFuY2UhPT12b2lkIDA/TmUuaW5zdGFuY2UuZFEuYmluZChOZS5pbnN0YW5jZSk6bnVsbCk/YihuLFcsRCk6UHJvbWlzZS5yZXNvbHZlKHtlcnJvcjoiQVRURVNUQVRJT05fRVJST1JfQVBJX05PVF9SRUFEWSJ9KX07CmcuWTU9YXN5bmMgZnVuY3Rpb24oKXtpZihzaCgpKXJldHVybiB3aW5kb3cuYXR0bXA9PT12b2lkIDA/ITE6KGF3YWl0IHJhKCkpLmlyKCk7dmFyIG47cmV0dXJuKG49KG49Zy5ycigieXQuYWJhLmF0dDIiKSk/bjpOZS5pbnN0YW5jZSE9PXZvaWQgMD9OZS5pbnN0YW5jZS55Zi5iaW5kKE5lLmluc3RhbmNlKTpudWxsKT9uKCk6UHJvbWlzZS5yZXNvbHZlKCExKX07CnNoPWZ1bmN0aW9uKCl7cmV0dXJuKGcubCgiYXR0bXVzaSIpfHxnLmwoImF0dG11c2l3IikpJiZnLmwoImF0dG11c2lfdWUiKX07CkhRPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5ycigieXREZWJ1Z0RhdGEuY2FsbGJhY2tzIik7RHx8KEQ9e30sZy5HYigieXREZWJ1Z0RhdGEuY2FsbGJhY2tzIixEKSk7aWYoZy5sKCJ3ZWJfZGRfaXUiKXx8anhTLmluY2x1ZGVzKG4pKURbbl09V307CkJHTT1hc3luYyBmdW5jdGlvbihuLFcsRCl7Vz17Y29udGV4dDpnLnZiKCksc2V0dGluZ0l0ZW1JZDpXLG5ld1ZhbHVlOkR9O0Q9TEIoQ0diKTtuPWF3YWl0IGcucl8obixXLEQpO2lmKCFufHxuLmVycm9yTWV0YWRhdGEpbj9uLmVycm9yTWV0YWRhdGEmJmcuR3EobmV3IGcuUXgoYFNldFNldHRpbmdSZXF1ZXN0IGZhaWxlZCB3aXRoIHN0YXR1cyAke24uZXJyb3JNZXRhZGF0YS5zdGF0dXN9YCkpOmcuR3EobmV3IGcuUXgoIlNldFNldHRpbmdSZXF1ZXN0IGZhaWxlZCB3aXRoIGVtcHR5IHJlc3BvbnNlIikpfTsKRjRiPWZ1bmN0aW9uKG4sVyxELGIsdixrKXtEPyhuLnZWKDIpLGlNKGZ3KEQpLCgpPT57aWYod2luZG93LnRyYXlyaWRlKWZjKG4sYix2KTtlbHNle24udlYoMyk7bGV0IGg9dU0oRCkseD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChoKTt4JiYoeUooaCkseC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHgpKTtnLkdxKG5ldyBnLlF4KCJCTDpVTEIiLGAke0R9YCkpfX0saykpOlc/KGs9Zy56RigiU0NSSVBUIiksVyBpbnN0YW5jZW9mIEFGPyhrLnRleHRDb250ZW50PUtiKFcpLE9NKGspKTprLnRleHRDb250ZW50PVcsay5ub25jZT1Taihkb2N1bWVudCksZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChrKSxkb2N1bWVudC5oZWFkLnJlbW92ZUNoaWxkKGspLHdpbmRvdy50cmF5cmlkZT9mYyhuLGIsdik6KG4udlYoNCksZy5HcShuZXcgZy5ReCgiQkw6VUxCSiIpKSkpOmcuR3EobmV3IGcuUXgoIkJMOlVMViIpKX07CmZjPWZ1bmN0aW9uKG4sVyxEKXtuLnZWKDUpO3ZhciBiPSEhbi5EYSYmd3loLmluY2x1ZGVzKGcuSVAobi5EYSl8fCIiKTt0cnl7bGV0IHY9bmV3IEFxKHtwcm9ncmFtOlcsZ2xvYmFsTmFtZToidHJheXJpZGUiLHgzOntkaXNhYmxlOiFnLmwoImF0dF93ZWJfcmVjb3JkX21ldHJpY3MiKXx8IWcubCgiYXR0X3NraXBfbWV0cmljc19mb3JfY29va2llbGVzc19kb21haW5zX2tzIikmJmIsVmo6ImFHSWYifX0pO3YuT3YudGhlbigoKT0+e24udlYoNik7RCYmRChXKX0pOwpuLk4odil9Y2F0Y2godil7bi52Vig3KSx2IGluc3RhbmNlb2YgRXJyb3ImJmcuR3Eodil9fTsKdmFyIE1DYj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIFAwW0lbMTBdXSh0aGlzLDEsODEzOCxuLFcsRCl9OwpKaj1mdW5jdGlvbigpe3ZhciBuPWcucnIoInl0LmFidXNlLnBsYXllckF0dExvYWRlciIpO3JldHVybiBuJiZbImJndm1hIiwiYmd2bWIiLCJiZ3ZtYyJdLmV2ZXJ5KFc9PlcgaW4gbik/bjpudWxsfTsKUmFTPWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlIDI6cmV0dXJuIDA7Y2FzZSAxOnJldHVybiAyO2Nhc2UgMDpyZXR1cm4gMztjYXNlIDQ6Y2FzZSAzOnJldHVybiAxO2RlZmF1bHQ6Zy5wYihuLCJ1bmtub3duIHJlc3VsdCB0eXBlIil9fTsKZy5JYT1mdW5jdGlvbihuKXtyZXR1cm4gbj8ubGF5b3V0SWQhPW51bGwmJm4/LmxheW91dFR5cGUhPW51bGx9OwpnLlo2PWZ1bmN0aW9uKG4pe2lmKCFnLklhKG4uYWRMYXlvdXRNZXRhZGF0YSkpcmV0dXJuITE7bj1uLnJlbmRlcmluZ0NvbnRlbnQ7cmV0dXJuIGcudyhuLGcuU3QpfHxnLncobixnLkFqKXx8Zy53KG4sZy5tMil8fGcudyhuLGcuS2MpfHxnLncobixnLk9oKXx8Zy53KG4sZy5QUSk/ITA6ITF9OwpnLnUwPWZ1bmN0aW9uKG4pe2lmKCFnLklhKG4uYWRMYXlvdXRNZXRhZGF0YSkpcmV0dXJuITE7bj1uLnJlbmRlcmluZ0NvbnRlbnQ7cmV0dXJuIGcudyhuLGcuVWgpfHxnLncobixnLnlWKXx8Zy53KG4sUXhNKXx8Zy53KG4sZy5FaCl8fGcudyhuLGcuaTApPyEwOiExfTsKZy56MD1mdW5jdGlvbihuKXtyZXR1cm4gZy5JYShuLmFkTGF5b3V0TWV0YWRhdGEpP2cudyhuLnJlbmRlcmluZ0NvbnRlbnQsZy5vYSl8fGcudyhuLnJlbmRlcmluZ0NvbnRlbnQsZy5kYSk/ITA6ITE6ITF9OwpnLmwwPWZ1bmN0aW9uKG4pe3JldHVybiBuLnBsYXllclZhcnMhPT12b2lkIDAmJm4ucGluZ3MhPT12b2lkIDAmJm4uZXh0ZXJuYWxWaWRlb0lkIT09dm9pZCAwfTsKZy5NZT1mdW5jdGlvbihuKXtpZighZy5JYShuLmFkTGF5b3V0TWV0YWRhdGEpKXJldHVybiExO249bi5yZW5kZXJpbmdDb250ZW50O3ZhciBXPWcudyhuLGcuVDApO3JldHVybiBXP2cuanQoVyk6KFc9Zy53KG4sZy5DYykpP2cubDAoVyk6KFc9Zy53KG4sZy5CUSkpP1cucGxheWVyVmFycyE9PXZvaWQgMDooVz1nLncobixnLlVoKSk/Vy5kdXJhdGlvbk1pbGxpc2Vjb25kcyE9PXZvaWQgMDpnLncobixnLkZ5KXx8Zy53KG4sZy53YSk/ITA6ITF9OwpnLmp0PWZ1bmN0aW9uKG4pe249KG4uc2VxdWVudGlhbExheW91dHN8fFtdKS5tYXAoVz0+Zy53KFcsZy5SYSkpOwpyZXR1cm4gbi5sZW5ndGg+MCYmbi5ldmVyeShnLk1lKX07CmcuVlY9ZnVuY3Rpb24obil7cmV0dXJuIGcuSWEobi5hZExheW91dE1ldGFkYXRhKT8obj1nLncobi5yZW5kZXJpbmdDb250ZW50LGcuUVYpKSYmbi5waW5ncz8hMDohMTohMX07CmcuRHE9ZnVuY3Rpb24obil7aWYoIWcuSWEobi5hZExheW91dE1ldGFkYXRhKSlyZXR1cm4hMTtpZihnLncobi5yZW5kZXJpbmdDb250ZW50LGcuY1EpfHxnLncobi5yZW5kZXJpbmdDb250ZW50LGcub2EpKXJldHVybiEwO3ZhciBXPWcudyhuLnJlbmRlcmluZ0NvbnRlbnQsZy5hYSk7cmV0dXJuIGcudyhuLnJlbmRlcmluZ0NvbnRlbnQsZy5uaSl8fGcudyhXPy5zaWRlUGFuZWwsVkMyKXx8Zy53KFc/LnNpZGVQYW5lbCxnLlckKXx8Zy53KFc/LnNpZGVQYW5lbCxjM2gpPyEwOiExfTsKZy5nTT1mdW5jdGlvbihuKXt2YXIgVzsoVz0hbil8fChXPW4uYWRTbG90TWV0YWRhdGEsVz0hKFc/LnNsb3RJZCE9PXZvaWQgMCYmVz8uc2xvdFR5cGUhPT12b2lkIDApKTtpZihXfHwhKGcuYloobil8fG4uc2xvdEVudHJ5VHJpZ2dlciYmbi5zbG90RnVsZmlsbG1lbnRUcmlnZ2VycyYmbi5zbG90RXhwaXJhdGlvblRyaWdnZXJzKSlyZXR1cm4hMTtuPW4uZnVsZmlsbG1lbnRDb250ZW50Py5mdWxmaWxsZWRMYXlvdXQ7cmV0dXJuKFc9Zy53KG4sZy5SYSkpP2cuTWUoVyk6KFc9Zy53KG4sZy52JCkpP2cuRHEoVyk6KFc9Zy53KG4sZy5reikpP2cudTAoVyk6KFc9Zy53KG4sZy5oWCkpP2cuWjYoVyk6KFc9Zy53KG4sZy54eikpP2cuSWEoVy5hZExheW91dE1ldGFkYXRhKT9nLncoVy5yZW5kZXJpbmdDb250ZW50LGcuU3QpPyEwOiExOiExOihXPWcudyhuLGcuTGkpKT9nLlZWKFcpOihuPWcudyhuLGcuZTIpKT9nLnowKG4pOiExfTsKZy5iWj1mdW5jdGlvbihuKXtyZXR1cm4obj1nLncobi5mdWxmaWxsbWVudENvbnRlbnQ/LmZ1bGZpbGxlZExheW91dCxnLnYkKSkmJm4uYWRMYXlvdXRNZXRhZGF0YT8ubGF5b3V0VHlwZT09PSJMQVlPVVRfVFlQRV9QQU5FTF9RUl9DT0RFIiYmbi5sYXlvdXRFeGl0Tm9ybWFsVHJpZ2dlcnM9PT12b2lkIDB9OwphOXI9ZnVuY3Rpb24obil7Zm9yKGxldCBXIG9mIG58fFtdKXtuPWcudyhXLGcuWEcpO2lmKG49PT12b2lkIDB8fCFnLmdNKG4pKWJyZWFrO2lmKChuPWcudyhuLmZ1bGZpbGxtZW50Q29udGVudD8uZnVsZmlsbGVkTGF5b3V0LGcuTGkpKSYmZy5WVihuKSlyZXR1cm4hMH1yZXR1cm4hMX07CnE0PWZ1bmN0aW9uKG4pe2lmKCFufHwhbi5hZFBsYWNlbWVudHMmJiFuLmFkU2xvdHMpcmV0dXJuITE7Zm9yKGxldCBXIG9mIG4uYWRQbGFjZW1lbnRzfHxbXSl7aWYoIVcpY29udGludWU7bGV0IEQ9Vy5hZFBsYWNlbWVudFJlbmRlcmVyO2lmKEQhPW51bGwmJihELmNvbmZpZyYmRC5jb25maWcuYWRQbGFjZW1lbnRDb25maWcmJkQuY29uZmlnLmFkUGxhY2VtZW50Q29uZmlnLmtpbmQpPT09IkFEX1BMQUNFTUVOVF9LSU5EX1NUQVJUIilyZXR1cm4hMH1mb3IobGV0IFcgb2Ygbi5hZFNsb3RzfHxbXSlpZihnLncoVyxnLlhHKT8uYWRTbG90TWV0YWRhdGE/LnRyaWdnZXJFdmVudD09PSJTTE9UX1RSSUdHRVJfRVZFTlRfQkVGT1JFX0NPTlRFTlQiKXJldHVybiEwO3JldHVybiExfTsKbm4xPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9W107Vz9XLmlzVHJ1c3RlZD09PSEwP0QucHVzaCgiQklTQ09UVElfQkFTRURfREVURUNUSU9OX1NUQVRFX0FTX1NFRUtfRVZFTlRfVFJVU1RFRCIpOlcuaXNUcnVzdGVkPT09ITE/RC5wdXNoKCJCSVNDT1RUSV9CQVNFRF9ERVRFQ1RJT05fU1RBVEVfQVNfU0VFS19FVkVOVF9OT1RfVFJVU1RFRCIpOkQucHVzaCgiQklTQ09UVElfQkFTRURfREVURUNUSU9OX1NUQVRFX0FTX1NFRUtfRVZFTlRfVFJVU1RFRF9QUk9QRVJUWV9VTkRFRklORUQiKTpELnB1c2goIkJJU0NPVFRJX0JBU0VEX0RFVEVDVElPTl9TVEFURV9BU19TRUVLX0VWRU5UX1VOREVGSU5FRCIpO2cuR0MoMCwiYS5zXyIse21ldGFkYXRhOm4sc3RhdGVzOkR9KTtnLlNIKCJBU0RTVEFUIiwwKX07CmcuR0M9ZnVuY3Rpb24obixXLEQpe1c9V0RDW1ddO3ZhciBiPXtkZXRlY3RlZDpuPT09MCxzb3VyY2U6YCR7Vy5KfSR7RC50cmlnZ2VyQ29udGV4dD8/IiJ9JHtELk0zPz8iIn1gLGRldGVjdGlvblN0YXRlczpELnN0YXRlcyxkdXJhdGlvbk1zOkQuRXd9O0QubWV0YWRhdGEmJihiLmNvbnRlbnRDcG49RC5tZXRhZGF0YS5jb250ZW50Q3BuLGIuYWRDcG49RC5tZXRhZGF0YS5hZENwbik7Zy56VSgiYmlzY290dGlCYXNlZERldGVjdGlvbiIsYik7Vy5OIT09dm9pZCAwJiYoRD1OdW1iZXIoZy5BcigiQ0FUU1RBVCIsMCkpLFcuTiE9PXZvaWQgMD8oVz1XLk4sbj1SYVMobiksbj1EJn4oMzw8Vyl8bjw8Vyk6bj1ELGcuU0goIkNBVFNUQVQiLG4pKX07CnRYPWZ1bmN0aW9uKG4sVyl7bj1uLndhdGNoRW5kcG9pbnRTdXBwb3J0ZWRBdXRob3JpemF0aW9uVG9rZW5Db25maWc/LnZpZGVvQXV0aG9yaXphdGlvblRva2VuPy5jcmVkZW50aWFsVHJhbnNmZXJUb2tlbnN8fFtdO2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7KytEKWlmKG5bRF0uc2NvcGU9PT1XKXJldHVybiBuW0RdLnRva2VufHx2b2lkIDB9OwpnLk40PWZ1bmN0aW9uKG4pe3ZhciBXPWcudyhuLCR6KTtpZihXKXJldHVybiBXO2lmKChXPWcudyhuLERZcikpJiZXLmNvbW1hbmRzKXJldHVybiByTShXLmNvbW1hbmRzKTtpZigoVz1nLncobixiOGIpKSYmVy5jb21tYW5kcylyZXR1cm4gck0oVy5jb21tYW5kcyk7aWYoKG49Zy53KG4sdm5NKSkmJm4uaWRlbnRpZmllciYmbi5jb21tYW5kJiYoczN8fChzMz1bXSksIXMzLmluY2x1ZGVzKG4uaWRlbnRpZmllcikpKXJldHVybiBzMy5wdXNoKG4uaWRlbnRpZmllciksZy53KG4uY29tbWFuZCwkeil9OwpyTT1mdW5jdGlvbihuKXtpZihuLmxlbmd0aCE9PTApe3ZhciBXPVtdO2ZvcihsZXQgRCBvZiBuKShuPWcuTjQoRCkpJiZXLnB1c2gobik7cmV0dXJue2NvbW1hbmRFeGVjdXRvckNvbW1hbmQ6e2NvbW1hbmRzOld9fX19OwpwaT1mdW5jdGlvbihuKXtpZihuJiZuLnNpbXBsZVRleHQpcmV0dXJuIG4uc2ltcGxlVGV4dDt2YXIgVz0iIjtpZihuJiZuLnJ1bnMpZm9yKGxldCBEPTA7RDxuLnJ1bnMubGVuZ3RoO0QrKyluLnJ1bnNbRF0udGV4dCYmKFcrPW4ucnVuc1tEXS50ZXh0KTtyZXR1cm4gV307Cll6PWZ1bmN0aW9uKG4pe3JldHVybiBuP2Z1bmN0aW9uKCl7dHJ5e3JldHVybiBuLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1jYXRjaChXKXtnLlhqKFcpfX06bn07CmZpPWZ1bmN0aW9uKCl7SCQuaW5zdGFuY2V8fChIJC5pbnN0YW5jZT1uZXcgSCQpO3JldHVybiBIJC5pbnN0YW5jZX07CklmPWZ1bmN0aW9uKCl7SlguaW5zdGFuY2V8fChKWC5pbnN0YW5jZT1uZXcgSlgpO3JldHVybiBKWC5pbnN0YW5jZX07Cm1VPWZ1bmN0aW9uKG4sVyxELGI9e30pe1BWKCgpPT57a3ZNLmluY2x1ZGVzKFcpfHwoZy5HcShuZXcgZy5ReCgiY3JlYXRlQ2xpZW50U2NyZWVuKCkgY2FsbGVkIHdpdGggYSBub24tcGFnZSBWRSIsVykpLFc9ODM3NjkpO2lmKCFiLmlzSGlzdG9yeU5hdmlnYXRpb24pe2xldCB2PWIubGF5ZXJ8fDA7bi5UQy5zZXQodixbXSk7UzIobix2KS5wdXNoKHtyb290VmU6VyxrZXk6Yi5rZXl8fCIifSl9bi5EPVtdO24uTz1bXTtiLlVBP2hqdChuLFcsRCxiKTpBWChuLFcsRCxiKX0pKCl9OwpTMj1mdW5jdGlvbihuLFcpe24uSy5oYXMoVyl8fG4uSy5zZXQoVyxbXSk7cmV0dXJuIG4uSy5nZXQoVyl9OwpoanQ9ZnVuY3Rpb24obixXLEQsYj17fSl7bi5OLmFkZChiLmxheWVyfHwwKTtuLmo9KCk9PntBWChuLFcsRCxiKTt2YXIgdj13NChiLmxheWVyKTtpZih2KXtsZXQgaz1nLlJ2KGIubGF5ZXIpO2ZvcihsZXQgaCBvZiBuLkQpe2xldCB4PWhbMF0sTD1oWzFdfHx2O2s/S2kobix4LEwsYi5sYXllcixrKTpPMyhuLHgsTCxiLmxheWVyKX1mb3IobGV0IGggb2Ygbi5PKVAkKG4saFswXSxoWzFdKX19OwpEfHxnLlJ2KGIubGF5ZXIpfHxuLmooKTtpZihiLlVBKWZvcihsZXQgdiBvZiBiLlVBKXhZYihuLHYsYi5sYXllcik7ZWxzZSBnLlhqKEVycm9yKCJEZWxheWVkIHNjcmVlbiBuZWVkcyBhIGRhdGEgcHJvbWlzZS4iKSl9OwpBWD1mdW5jdGlvbihuLFcsRCxiPXt9KXt2YXIgdj12b2lkIDA7Yi5sYXllcnx8KGIubGF5ZXI9MCk7dj1iLnBhcmVudExheWVyIT09dm9pZCAwP2IucGFyZW50TGF5ZXI6Yi5sYXllcjt2YXIgaz1nLlJ2KHYpO3Y9dzQodik7dmFyIGg9RHx8dix4O2gmJihiLnBhcmVudENzbiE9PXZvaWQgMD94PXtjbGllbnRTY3JlZW5Ob25jZTpiLnBhcmVudENzbix2aXN1YWxFbGVtZW50Omh9OmsmJmshPT0iVU5ERUZJTkVEX0NTTiImJih4PXtjbGllbnRTY3JlZW5Ob25jZTprLHZpc3VhbEVsZW1lbnQ6aH0pKTt2YXIgTCxlPWcuQXIoIkVWRU5UX0lEIik7az09PSJVTkRFRklORURfQ1NOIiYmZSYmKEw9e3NlcnZsZXREYXRhOntzZXJpYWxpemVkU2VydmxldEV2ZW50SWQ6ZX19KTtnLmwoImNvbWJpbmVfdmVfZ3JhZnRzIikmJmsmJlpxKG4sayk7Zy5sKCJub19jbGllbnRfdmVfYXR0YWNoX3VubGVzc19zaG93biIpJiZoJiZrJiZkSyhoLGspO3RyeXt2YXIgRz1nOWkobi5jbGllbnQsVyx4LGIuTDgsCmIuY3R0QXV0aEluZm8sTCxiLmltcGxpY2l0R2VzdHVyZVR5cGUsYi5sb2dnaW5nRXhwZWN0YXRpb25zLGIuYXV0b21hdGVkTG9nRXZlbnRTb3VyY2UpfWNhdGNoKE4pe0s0KE4se2w3Olcscm9vdFZlOnYsSTc6RCxsQTprLGdQOngsTDg6Yi5MOH0pO2cuWGooTik7cmV0dXJufWNzKEcsVyxiLmxheWVyLGIuY3R0QXV0aEluZm8pO2smJmshPT0iVU5ERUZJTkVEX0NTTiImJnYmJiF3SEMoaykmJihUcShuLmNsaWVudCxrLHYsITApLG4uSi5kZWxldGUoaykpO1c9UzIobixiLmxheWVyfHwwKTtXLmxlbmd0aD4wJiYhV1tXLmxlbmd0aC0xXS5jc24mJihXW1cubGVuZ3RoLTFdLmNzbj1HfHwiIik7Zy5ubCh7Y2xpZW50U2NyZWVuTm9uY2U6R30pO1UzLmluc3RhbmNlfHwoVTMuaW5zdGFuY2U9bmV3IFUzKTtQVihmaSgpLk4pLmJpbmQoZmkoKSkoKTt2YXIgcj13NChiLmxheWVyKTtrJiZrIT09IlVOREVGSU5FRF9DU04iJiZyJiZnLmwoIm11c2ljX3dlYl9tYXJrX3Jvb3RfdmlzaWJsZSIpJiYKRmooRyxyKTtuLk4uZGVsZXRlKGIubGF5ZXJ8fDApO24uaj12b2lkIDA7bi5TJC5nZXQoYi5sYXllcik/LmZvckVhY2goKE4sSCk9PntOP08zKG4sSCxOLGIubGF5ZXIpOnImJk8zKG4sSCxyLGIubGF5ZXIpfSk7CkxEWihuKX07CnhZYj1mdW5jdGlvbihuLFcsRD0wKXtQVigoKT0+e1cudGhlbihiPT57bi5OLmhhcyhEKSYmbi5qJiZuLmooKTt2YXIgdj1nLlJ2KEQpLGs9dzQoRCk7aWYodiYmayl7dmFyIGg9e2F1dG9tYXRlZExvZ0V2ZW50U291cmNlOjN9O2I/LnJlc3BvbnNlPy50cmFja2luZ1BhcmFtcyYmdWcobi5jbGllbnQsdixrLFRVKGIucmVzcG9uc2UudHJhY2tpbmdQYXJhbXMpLCExLGgpO2I/LnBsYXllclJlc3BvbnNlPy50cmFja2luZ1BhcmFtcyYmdWcobi5jbGllbnQsdixrLFRVKGIucGxheWVyUmVzcG9uc2UudHJhY2tpbmdQYXJhbXMpLCExLGgpfX0pfSkoKX07CktpPWZ1bmN0aW9uKG4sVyxELGI9MCx2KXtuLkouaGFzKHYpfHxuLkouc2V0KHYsbmV3IFNldCk7dmFyIGs9RHx8dzQoYik7az1gJHtXLnRvU3RyaW5nKCl9fCR7az9rLnRvU3RyaW5nKCk6IiJ9YDtuLkouZ2V0KHYpLmhhcyhrKXx8KE8zKG4sVyxELGIpLG4uSi5nZXQodikuYWRkKGspKX07Ck8zPWZ1bmN0aW9uKG4sVyxELGI9MCl7cmV0dXJuIFBWKCgpPT57aWYobi5OLmhhcyhiKSlyZXR1cm4gbi5ELnB1c2goW1csRF0pLCEwO3ZhciB2PWcuUnYoYiksaz1EfHx3NChiKTtpZih2JiZrKXtpZihnLmwoImNvbWJpbmVfdmVfZ3JhZnRzIikpe2xldCBoPW4uWC5nZXQoay50b1N0cmluZygpKTtoP2gucHVzaChXKToobi5ZLnNldChrLnRvU3RyaW5nKCksayksbi5YLnNldChrLnRvU3RyaW5nKCksW1ddKSk7bi50d3x8KG4udHc9Zy5jQigwLCgpPT57WnEobix2KX0sMTIwMCkpfWVsc2UgdWcobi5jbGllbnQsdixrLFcpOwpyZXR1cm4hMH1yZXR1cm4hMX0pKCl9OwpnLnlyPWZ1bmN0aW9uKG4pe3ZhciBXPUlmKCk7UFYoKCk9Pnt2YXIgRD1UVShuKSxiPWcuUnYoMCk7YiYmIVcuTi5oYXMoMCk/S2koVyxELHZvaWQgMCwwLGIpOk8zKFcsRCx2b2lkIDAsMCk7cmV0dXJuIER9KSgpfTsKZWp3PWZ1bmN0aW9uKG4pe3ZhciBXPXt2ZVR5cGU6MjUzMjQ2fTtyZXR1cm4gUFYoKCk9PntpZighVy52ZVR5cGUpcmV0dXJuIGcucWcobmV3IGcuUXgoIkVycm9yOiBUcnlpbmcgdG8gZ3JhZnQgYSBjbGllbnQgVkUgd2l0aG91dCBhIHZlVHlwZS4iKSksbnVsbDtpZihXLnZpc2liaWxpdHlUeXBlcyl7dmFyIEQ9Vy52aXNpYmlsaXR5VHlwZXMucmVkdWNlKChiLHYpPT5ifHYpOwpEPXt2aXNpYmlsaXR5Ont0eXBlczpTdHJpbmcoRCl9fX1EPWp5KFcudmVUeXBlLFcudmlzdWFsRWxlbWVudCxXLmVsZW1lbnRJbmRleCxXLmNsaWVudFlvdVR1YmVEYXRhLHZvaWQgMCxEKTtyZXR1cm4gTzMobixEKT9EOm51bGx9KSgpfTsKWnE9ZnVuY3Rpb24obixXKXtpZihXPT09dm9pZCAwKXtsZXQgRD1CZ3IoKTtmb3IobGV0IGI9MDtiPEQubGVuZ3RoO2IrKylEW2JdIT09dm9pZCAwJiZacShuLERbYl0pfWVsc2Ugbi5YLmZvckVhY2goKEQsYik9PnsoYj1uLlkuZ2V0KGIpKSYmaWcobi5jbGllbnQsVyxiLEQpfSksbi5YLmNsZWFyKCksbi5ZLmNsZWFyKCksbi50dz12b2lkIDB9Owpnblo9ZnVuY3Rpb24obixXLEQsYj0wKXtpZighVylyZXR1cm4hMTtiPWcuUnYoYik7aWYoIWIpcmV0dXJuITE7amkobi5jbGllbnQsYixUVShXKSxEKTtyZXR1cm4hMH07ClAkPWZ1bmN0aW9uKG4sVyxELGI9MCl7dmFyIHY9Zy5SdihiKTtXPVd8fHc0KGIpO3YmJlcmJihuPW4uY2xpZW50LGI9UGEoe2N0dEF1dGhJbmZvOlE0KHYpfHx2b2lkIDB9LHYpLEQ9e2Nzbjp2LHZlOlcuZ2V0QXNKc29uKCksY2xpZW50RGF0YTpEfSx2PT09IlVOREVGSU5FRF9DU04iP3pxKCJ2aXN1YWxFbGVtZW50U3RhdGVDaGFuZ2VkIixiLEQpOm4/dVIoInZpc3VhbEVsZW1lbnRTdGF0ZUNoYW5nZWQiLEQsbixiKTpnLnpVKCJ2aXN1YWxFbGVtZW50U3RhdGVDaGFuZ2VkIixELGIpKX07CkxEWj1mdW5jdGlvbihuKXtmb3IodmFyIFc9MDtXPG4uVi5sZW5ndGg7VysrKXt2YXIgRD1uLlZbV107dHJ5e0QoKX1jYXRjaChiKXtnLlhqKGIpfX1uLlYubGVuZ3RoPTA7Zm9yKFc9MDtXPG4uY0oubGVuZ3RoO1crKyl7RD1uLmNKW1ddO3RyeXtEKCl9Y2F0Y2goYil7Zy5YaihiKX19fTsKaVo9ZnVuY3Rpb24oKXtFMy5pbnN0YW5jZXx8KEUzLmluc3RhbmNlPW5ldyBFMyk7cmV0dXJuIEUzLmluc3RhbmNlfTsKWE9iPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uZXcgWE1MSHR0cFJlcXVlc3Q7RD8ubGcmJihiLm9ucmVhZHlzdGF0ZWNoYW5nZT12PT57RC5sZyhiLHYpfSk7CmIub3BlbihXLm1ldGhvZD8/IkdFVCIsbiwhMCk7Yi5yZXNwb25zZVR5cGU9InRleHQiO2Iud2l0aENyZWRlbnRpYWxzPSEwO2lmKFcuaGVhZGVycylmb3IobGV0IFt2LGtdb2YgT2JqZWN0LmVudHJpZXMoVy5oZWFkZXJzKSliLnNldFJlcXVlc3RIZWFkZXIodixrKTtyZXR1cm4gYn07CnFmUz1mdW5jdGlvbigpe3ZhciBuPW5hdmlnYXRvcjtyZXR1cm4gbmV3IFByb21pc2UoKFcsRCk9PntuLndlYmtpdFRlbXBvcmFyeVN0b3JhZ2U/LnF1ZXJ5VXNhZ2VBbmRRdW90YT9uLndlYmtpdFRlbXBvcmFyeVN0b3JhZ2UucXVlcnlVc2FnZUFuZFF1b3RhKChiLHYpPT57Vyh7dXNhZ2U6YixxdW90YTp2fSl9LGI9PntEKGIpfSk6RChFcnJvcigid2Via2l0VGVtcG9yYXJ5U3RvcmFnZSBpcyBub3Qgc3VwcG9ydGVkLiIpKX0pfTsKdDZDPWZ1bmN0aW9uKG4sVyl7R3ZVKG4ucHJvZ3JhbSxXLkQzKSYmKGcuZ18oImJnX2kiLHZvaWQgMCwicGxheWVyX2F0dCIpLGcudVouaW5pdGlhbGl6ZShuLCgpPT57Zy5nXygiYmdfbCIsdm9pZCAwLCJwbGF5ZXJfYXR0Iik7b2Y9KDAsZy5SKSgpfSxXLmNzcE5vbmNlLFcuRGEpKX07CnZhciAkWWo9ZnVuY3Rpb24oKXtyZXR1cm4gSjRbSVsxMF1dKHRoaXMsMTYsNDYyNil9OwpyOVM9ZnVuY3Rpb24obj17fSl7cmV0dXJuIGcudVouaW52b2tlKG4pfTsKR3ZVPWZ1bmN0aW9uKG4sVyl7aWYobil7dmFyIEQ7Zy51Wi5pc0xvYWRpbmcoKT9EPSExOkQ9IW9mfHwoMCxnLlIpKCktb2Y+VztuPUR9ZWxzZSBuPSExO3JldHVybiBufTsKc18yPWZ1bmN0aW9uKG4sVyl7aWYoVy5wYXJ0bmVySWQ9PT0zOCYmbi5wbGF5ZXJTdHlsZT09PSJib29rcyIpe3ZhciBEPVcudmlkZW9JZC5pbmRleE9mKCI6Iik7bj1XLnZpZGVvSWQuc2xpY2UoMCxEKTtEPVcudmlkZW9JZC5zbGljZShEKzEpO3JldHVybiBnLkVUKGAvL3BsYXkuZ29vZ2xlLmNvbS9ib29rcy92b2x1bWVzLyR7bn0vY29udGVudC9tZWRpYWAse2FpZDpELHNpZzpXLnlkfSl9aWYoVy5wYXJ0bmVySWQ9PT0zMCYmbi5wbGF5ZXJTdHlsZT09PSJkb2NzIilyZXR1cm4gZy5FVCgiaHR0cHM6Ly9kb2NzLmdvb2dsZS5jb20vZ2V0X3ZpZGVvX2luZm8iLHtkb2NpZDpXLnZpZGVvSWQsYXV0aHVzZXI6Vy5rcCxhdXRoa2V5OlcudkYsZXVybDpuLlFyfSk7aWYoVy5wYXJ0bmVySWQ9PT0zMyYmbi5wbGF5ZXJTdHlsZT09PSJnb29nbGUtbGl2ZSIpcmV0dXJuIGcuRVQoIi8vZ29vZ2xlLWxpdmVwbGF5ZXIuYXBwc3BvdC5jb20vZ2V0X3ZpZGVvX2luZm8iLHtrZXk6Vy52aWRlb0lkfSk7CnRocm93IEVycm9yKCJnZXRWaWRlb0luZm9VcmwgZm9yIGludmFsaWQgbmFtZXNwYWNlOiAiK24uVik7fTsKTlFpPWZ1bmN0aW9uKG4pe3ZhciBXPXt9O24uY0wmJihXLnl0cmV4dD1uLmNMKTtyZXR1cm4gZy5HRihXKT92b2lkIDA6V307CmcuekM9ZnVuY3Rpb24obixXKXt0NkMobix7RDM6Zy5kTShXLmV4cGVyaW1lbnRzLCJiZ192bV9yZWluaXRfdGhyZXNob2xkIiksY3NwTm9uY2U6Vy5jc3BOb25jZSxEYTpXLkRhfHwiIn0pfTsKZy5sWj1mdW5jdGlvbihuKXtpZihuLnZpZGVvRGF0YSYmbi52aWRlb0RhdGEucEspe2xldCBXPVtuLnZpZGVvRGF0YS5wS107Zm9yKGxldCBEIG9mIE9iamVjdC5rZXlzKG4uTikpaWYobi5SUltEXSYmbi5OW0RdKXtsZXQgYj1uLk5bRF0obi5SUik7YiYmVy5wdXNoKGIpfXJldHVybiBXLmpvaW4oIiYiKX1yZXR1cm4gbnVsbH07CmcuVEM9ZnVuY3Rpb24obil7dmFyIFc9W107aWYobilmb3IobGV0IFtiLHZdb2YgT2JqZWN0LmVudHJpZXMobikpe249Yjt2YXIgRD12O2lmKEQ9PT12b2lkIDApY29udGludWU7RD10eXBlb2YgRD09PSJib29sZWFuIj9gJHsrRH1gOmAke0R9YC5yZXBsYWNlKC9bOiw9XS9nLCJfIik7Vy5wdXNoKGAke259LiR7RH1gKX1yZXR1cm4gVy5qb2luKCI7Iil9OwpqMj1mdW5jdGlvbihuKXtyZXR1cm4gbj09PTF8fG49PT0yfTsKQiQ9ZnVuY3Rpb24obixXPTApe2lmKG4gaW5zdGFuY2VvZiBnLkNpKXJldHVybiBuO249biYmbiBpbnN0YW5jZW9mIEVycm9yP246RXJyb3IoYCR7bn1gKTtqMihXKT9nLlhqKG4pOmcuR3Eobik7cmV0dXJuIG5ldyBnLkNpKFc9PT0xPyJwbGF5ZXIuZmF0YWxleGNlcHRpb24iOiJwbGF5ZXIuZXhjZXB0aW9uIix7bmFtZTpgJHtuLm5hbWV9YCxtZXNzYWdlOmAke24ubWVzc2FnZX1gfSxXKX07Ckg4cj1mdW5jdGlvbihuLFcpe1FBKG4sMixXLkNuLEZHLDMpO1FBKG4sMyxXLmlubmVydHViZVJlcXVlc3QscE9pLDMpO2cuRmEobiw0LFcub25lc2llVXN0cmVhbWVyQ29uZmlnKTtnLkZhKG4sOSxXLkJ4KTtRQShuLDEwLFcubUgsd00sMyk7UUEobiwxNSxXLnJlbG9hZFBsYXliYWNrUGFyYW1zLFlmaSwzKTtnLlJ3KG4sMTgsVy5Vayl9OwpRcj1mdW5jdGlvbihuLFcpe1FBKG4sMSxXLmZvcm1hdElkLE00LDMpO0NSKG4sMixXLnN0YXJ0VGltZU1zKTtDUihuLDMsVy5kdXJhdGlvbk1zKTtDUihuLDQsVy5BQyk7Q1Iobiw1LFcuaTkpO1FBKG4sOSxXLmo2LGY4QywzKTtRQShuLDExLFcuQUYsUmYsMSk7UUEobiwxMixXLkVqLFJmLDEpfTsKSjliPWZ1bmN0aW9uKG4sVyl7Zy5SdyhuLDEsVy52aWRlb0lkKTtDUihuLDIsVy5sbXQpfTsKZjhDPWZ1bmN0aW9uKG4sVyl7aWYoVy5Geilmb3IobGV0IEQ9MDtEPFcuRnoubGVuZ3RoO0QrKylRQShuLDEsVy5GeltEXSxKOWIsMyl9OwpNND1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLml0YWcpO0NSKG4sMixXLmxtdCk7Zy5SdyhuLDMsVy54dGFncyl9OwpWcj1mdW5jdGlvbihuKXtyZXR1cm57aXRhZzpQRyhuLDEpLGxtdDpQRyhuLDIpLHh0YWdzOkV4KG4sMyl9fTsKUmY9ZnVuY3Rpb24obixXKXtDUihuLDEsVy5zdGFydFRpY2tzKTtDUihuLDIsVy5sOCk7Q1IobiwzLFcudGltZXNjYWxlKX07CmMkPWZ1bmN0aW9uKG4pe3JldHVybntzdGFydFRpY2tzOlBHKG4sMSksbDg6UEcobiwyKSx0aW1lc2NhbGU6UEcobiwzKX19OwpJOGo9ZnVuY3Rpb24obixXKXtDUihuLDEsVy5kZWZhdWx0UG9saWN5KTtDUihuLDIsVy5zbW9vdGgpO0NSKG4sMyxXLnZpc2liaWxpdHkpO0NSKG4sNCxXLk9iKTtDUihuLDUsVy5wZXJmb3JtYW5jZSk7Q1Iobiw2LFcuc3BlZWQpfTsKQTlTPWZ1bmN0aW9uKG4sVyl7aWYoVy5hdXRob3JpemVkRm9ybWF0cylmb3IobGV0IEQ9MDtEPFcuYXV0aG9yaXplZEZvcm1hdHMubGVuZ3RoO0QrKylRQShuLDEsVy5hdXRob3JpemVkRm9ybWF0c1tEXSxTZmosMSk7Zy5GYShuLDIsVy5zYWJyTGljZW5zZUNvbnN0cmFpbnQpfTsKU2ZqPWZ1bmN0aW9uKG4sVyl7Q1IobiwxLFcudHJhY2tUeXBlKTtCRyhuLDIsVy5pc0hkcil9OwpGRz1mdW5jdGlvbihuLFcpe0NSKG4sMTMsVy50aW1lU2luY2VMYXN0TWFudWFsRm9ybWF0U2VsZWN0aW9uTXMpO3ZhciBEPVcubGFzdE1hbnVhbERpcmVjdGlvbjtEIT09dm9pZCAwJiYoajUobiwxMTIpLGo1KG4sRDw8MV5EPj4zMSkpO0NSKG4sMTYsVy5pSCk7Q1IobiwxNyxXLmRldGFpbGVkTmV0d29ya1R5cGUpO0NSKG4sMTgsVy5zQSk7Q1IobiwxOSxXLllBKTtDUihuLDIxLFcuVE4pO0NSKG4sMjMsVy5JJCk7Q1IobiwyOCxXLm5SKTtDUihuLDI5LFcubHEpO0NSKG4sMzQsVy52aXNpYmlsaXR5KTtEPVcucGxheWJhY2tSYXRlO2lmKEQhPT12b2lkIDApe3ZhciBiPW5ldyBBcnJheUJ1ZmZlcig0KTsobmV3IEZsb2F0MzJBcnJheShiKSlbMF09RDtEPShuZXcgVWludDMyQXJyYXkoYikpWzBdO2lmKEQhPT12b2lkIDApZm9yKGo1KG4sMjg1KSxUNihuLDQpLGI9MDtiPDQ7KW4udmlldy5zZXRVaW50OChuLnBvcyxEJjI1NSksRD4+PTgsbi5wb3MrPTEsYis9MX1DUihuLDM2LFcuZnEpOwpRQShuLDM4LFcubWVkaWFDYXBhYmlsaXRpZXMsbVl3LDMpO0NSKG4sMzksVy5aSSk7Q1Iobiw0MCxXLllmKTtDUihuLDQ0LFcucGxheWVyU3RhdGUpO0JHKG4sNDYsVy5FYik7Q1Iobiw0OCxXLmo0KTtDUihuLDUwLFcua0UpO0NSKG4sNTEsVy5VbSk7Q1Iobiw1NCxXLkc3KTtpZihXLnlLKWZvcihEPTA7RDxXLnlLLmxlbmd0aDtEKyspQ1Iobiw1NSxXLnlLW0RdKTtCRyhuLDU2LFcuWkMpO0NSKG4sNTcsVy5YRCk7Qkcobiw1OCxXLmJ2KTtDUihuLDU5LFcublMpO0NSKG4sNjAsVy5HRik7Qkcobiw2MSxXLmlzUHJlZmV0Y2gpO0NSKG4sNjIsVy5TZik7Zy5GYShuLDYzLFcuc2FickxpY2Vuc2VDb25zdHJhaW50KTtDUihuLDY0LFcuazgpO0NSKG4sNjYsVy5WWCk7Q1Iobiw2NyxXLkJaKTtDUihuLDY4LFcucDYpO2cuUncobiw2OSxXLmF1ZGlvVHJhY2tJZCk7Qkcobiw3MSxXLnIwKTtRQShuLDcyLFcuTk8sSThqLDEpO0NSKG4sNzMsVy5pQik7Q1Iobiw3NCxXLllzKTtDUihuLDc1LFcuZXEpOwpDUihuLDc2LFcucU0pO1FBKG4sNzksVy5rYyxBOVMsMyk7Q1Iobiw4MCxXLkokKTtCRyhuLDg1LFcudXEpfTsKbVl3PWZ1bmN0aW9uKG4sVyl7aWYoVy52aWRlb0Zvcm1hdENhcGFiaWxpdGllcylmb3IodmFyIEQ9MDtEPFcudmlkZW9Gb3JtYXRDYXBhYmlsaXRpZXMubGVuZ3RoO0QrKylRQShuLDEsVy52aWRlb0Zvcm1hdENhcGFiaWxpdGllc1tEXSxLRDEsMSk7aWYoVy5hdWRpb0Zvcm1hdENhcGFiaWxpdGllcylmb3IoRD0wO0Q8Vy5hdWRpb0Zvcm1hdENhcGFiaWxpdGllcy5sZW5ndGg7RCsrKVFBKG4sMixXLmF1ZGlvRm9ybWF0Q2FwYWJpbGl0aWVzW0RdLE84TSwxKTtRQShuLDQsVy5wZXJQbGF5YmFja0F0dHJpYnV0ZXMsUDZTLDMpO0NSKG4sNSxXLmhkck1vZGVCaXRtYXNrKX07CnZhciBaODE9ZnVuY3Rpb24oKXtyZXR1cm4gZzdbSVsxMF1dKHRoaXMsNDEsODk3NSl9Owp2YXIgS0QxPWZ1bmN0aW9uKG4sVyl7Q1IobiwxLFcudmlkZW9Db2RlYyk7QkcobiwyLFcuZWZmaWNpZW50KTtDUihuLDMsVy5tYXhIZWlnaHQpO0NSKG4sNCxXLm1heFdpZHRoKTtDUihuLDExLFcubWF4RnJhbWVyYXRlKTtDUihuLDEyLFcubWF4Qml0cmF0ZUJwcyk7QkcobiwxNSxXLmlzMTBCaXRTdXBwb3J0ZWQpfSxPOE09ZnVuY3Rpb24obixXKXtDUihuLDEsVy5hdWRpb0NvZGVjKTsKQ1IobiwyLFcubnVtQ2hhbm5lbHMpO0NSKG4sMyxXLm1heEJpdHJhdGVCcHMpO0NSKG4sNixXLnNwYXRpYWxDYXBhYmlsaXR5Qml0bWFzayl9Owp2YXIgVVloPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFAwW0lbMTBdXSh0aGlzLDUxLDIyNDksbixXKX07ClA2Uz1mdW5jdGlvbihuLFcpe2lmKFcuaXRhZ0RlbnlsaXN0KWZvcihsZXQgRD0wO0Q8Vy5pdGFnRGVueWxpc3QubGVuZ3RoO0QrKylDUihuLDEsVy5pdGFnRGVueWxpc3RbRF0pfTsKd009ZnVuY3Rpb24obixXKXtRQShuLDEsVy5jbGllbnRJbmZvLHk5dCwzKTtnLkZhKG4sMixXLmROKTtnLkZhKG4sMyxXLnBsYXliYWNrQ29va2llKTtnLkZhKG4sNCxXLkJ4KTtpZihXLnJxKWZvcih2YXIgRD0wO0Q8Vy5ycS5sZW5ndGg7RCsrKVFBKG4sNSxXLnJxW0RdLEVuMiwzKTtpZihXLnV0KWZvcihEPTA7RDxXLnV0Lmxlbmd0aDtEKyspQ1Iobiw2LFcudXRbRF0pO2cuUncobiw3LFcucEcpO1FBKG4sOCxXLnEkLGk4VSwzKX07CnVmTT1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLlN6KTtDUihuLDIsVy5SNyl9OwpvbnI9ZnVuY3Rpb24obixXKXt2YXIgRD1XLmNvZGU7RCE9PXZvaWQgMCYmKGo1KG4sOCksajUobixEPDwxXkQ+PjMxKSk7Zy5SdyhuLDIsVy5tZXNzYWdlKX07CmRZTT1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLmNsaWVudFN0YXRlKTtRQShuLDIsVy5adSx1Zk0sMSl9OwppOFU9ZnVuY3Rpb24obixXKXtnLkZhKG4sMSxXLll0KTtRQShuLDIsVy5TaixvbnIsMyk7UUEobiwzLFcuY29sZFN0YXJ0SW5mbyxkWU0sMyl9OwpFbjI9ZnVuY3Rpb24obixXKXtDUihuLDEsVy50eXBlKTtnLkZhKG4sMixXLnZhbHVlKX07Cnk5dD1mdW5jdGlvbihuLFcpe2cuUncobiwxLFcuaGwpO2cuUncobiwxMixXLmRldmljZU1ha2UpO2cuUncobiwxMyxXLmRldmljZU1vZGVsKTtDUihuLDE2LFcuY2xpZW50TmFtZSk7Zy5SdyhuLDE3LFcuY2xpZW50VmVyc2lvbik7Zy5SdyhuLDE4LFcub3NOYW1lKTtnLlJ3KG4sMTksVy5vc1ZlcnNpb24pfTsKemoxPWZ1bmN0aW9uKG4sVyl7Zy5SdyhuLDEsVy5uYW1lKTtnLlJ3KG4sMixXLnZhbHVlKX07CmFmPWZ1bmN0aW9uKG4sVyl7Zy5SdyhuLDEsVy51cmwpO2lmKFcuZTMpZm9yKGxldCBEPTA7RDxXLmUzLmxlbmd0aDtEKyspUUEobiwyLFcuZTNbRF0semoxLDMpO2cuRmEobiwzLFcucG9zdEJvZHkpO0JHKG4sNCxXLkVhKTtCRyhuLDYsVy5lOCl9OwpwT2k9ZnVuY3Rpb24obixXKXtnLkZhKG4sMixXLnZVKTtnLkZhKG4sNSxXLmVuY3J5cHRlZENsaWVudEtleSk7Zy5GYShuLDYsVy5pdik7Zy5GYShuLDcsVy5kZik7QkcobiwxMCxXLm13KTtCRyhuLDEzLFcuRkQpO0JHKG4sMTQsVy5EWSk7Zy5GYShuLDE2LFcud1MpO0JHKG4sMTcsVy55Sil9OwpsOHQ9ZnVuY3Rpb24obil7cmV0dXJue1dzOlBHKG4sMSksaHR0cFN0YXR1czpQRyhuLDIpLGJvZHk6eUEobiw0KX19OwpZZmk9ZnVuY3Rpb24obixXKXtnLlJ3KG4sMSxXLnRva2VuKX07ClRRTT1mdW5jdGlvbihuKXtyZXR1cm57dG9rZW46RXgobiwxKX19OwpqX1U9ZnVuY3Rpb24obil7Zm9yKHZhciBXPVtdLEQ7RD1FeChuLDEpOylXLnB1c2goRCk7cmV0dXJue3VybDpXLmxlbmd0aD9XOnZvaWQgMH19OwpuNz1mdW5jdGlvbihuKXtyZXR1cm57QWg6UEcobiwxKSx2eTpQRyhuLDIpfX07CkZEYj1mdW5jdGlvbihuLFcpe1FBKG4sMSxXLkNuLEZHLDMpO2lmKFcuY0UpZm9yKHZhciBEPTA7RDxXLmNFLmxlbmd0aDtEKyspUUEobiwyLFcuY0VbRF0sTTQsMyk7aWYoVy5lVylmb3IoRD0wO0Q8Vy5lVy5sZW5ndGg7RCsrKVFBKG4sMyxXLmVXW0RdLFFyLDMpO2cuRmEobiw1LFcudmlkZW9QbGF5YmFja1VzdHJlYW1lckNvbmZpZyk7aWYoVy5CaSlmb3IoRD0wO0Q8Vy5CaS5sZW5ndGg7RCsrKVFBKG4sNixXLkJpW0RdLEM2VSwzKTtpZihXLkdoKWZvcihEPTA7RDxXLkdoLmxlbmd0aDtEKyspUUEobiwxNixXLkdoW0RdLE00LDMpO2lmKFcuTSQpZm9yKEQ9MDtEPFcuTSQubGVuZ3RoO0QrKylRQShuLDE3LFcuTSRbRF0sTTQsMyk7aWYoVy5Fdilmb3IoRD0wO0Q8Vy5Fdi5sZW5ndGg7RCsrKVFBKG4sMTgsVy5FdltEXSxNNCwzKTtRQShuLDE5LFcubUgsd00sMyk7UUEobiwyMSxXLk15LFduLDMpO0NSKG4sMjIsVy51TSk7Q1IobiwyMyxXLnJHKTtpZihXLmJLKWZvcihEPTA7RDxXLmJLLmxlbmd0aDtEKyspUUEobiwKMjQsVy5iS1tEXSxXbiwzKTtnLkZhKG4sMjUsVy5kUyk7aWYoVy5qcilmb3IoRD0wO0Q8Vy5qci5sZW5ndGg7RCsrKVFBKG4sMUUzLFcuanJbRF0sQlF3LDMpfTsKQzZVPWZ1bmN0aW9uKG4sVyl7UUEobiwxLFcuZm9ybWF0SWQsTTQsMyk7Q1IobiwyLFcudkQpO0NSKG4sMyxXLnNlcXVlbmNlTnVtYmVyKTtRQShuLDQsVy5oeCxSZiwxKTtDUihuLDUsVy5TMCk7Q1Iobiw2LFcudTMpfTsKV249ZnVuY3Rpb24obixXKXtpZihXLmFEKWZvcihsZXQgRD0wO0Q8Vy5hRC5sZW5ndGg7RCsrKWcuUncobiwxLFcuYURbRF0pO2cuRmEobiwyLFcuYWRzQ29uZmlnKTtnLlJ3KG4sMyxXLkJmKTtDUihuLDQsVy5ESik7Q1Iobiw1LFcub3YpO2cuUncobiw2LFcuZDMpO2cuUncobiw3LFcuY3VlcG9pbnRJZCk7Q1Iobiw4LFcuczEpO2cuUncobiw5LFcudGlsZUNvbnRleHQpO0NSKG4sMTAsVy5zdGFydFRpbWVNcyk7Q1IobiwxMSxXLmR1cmF0aW9uTXMpfTsKQlF3PWZ1bmN0aW9uKG4sVyl7aWYoVy5jRSlmb3IodmFyIEQ9MDtEPFcuY0UubGVuZ3RoO0QrKylRQShuLDEsVy5jRVtEXSxNNCwzKTtpZihXLmVXKWZvcihEPTA7RDxXLmVXLmxlbmd0aDtEKyspUUEobiwyLFcuZVdbRF0sUXIsMyk7Zy5SdyhuLDMsVy5jbGlwSWQpfTsKZy5EVT1mdW5jdGlvbihuLFcpe1FBKG4sMSxXLkNuLEZHLDMpO2cuRmEobiwzLFcudmlkZW9QbGF5YmFja1VzdHJlYW1lckNvbmZpZyk7UUEobiw1LFcubUgsd00sMyk7UUEobiw2LFcuTXksV24sMyl9Owp3T1o9ZnVuY3Rpb24obil7cmV0dXJue3R5cGU6UEcobiwxKX19OwpSalU9ZnVuY3Rpb24obixXKXtpZihXLk8zKWZvcihsZXQgRD0wO0Q8Vy5PMy5sZW5ndGg7RCsrKVFBKG4sMSxXLk8zW0RdLE02VSwzKX07ClFfMT1mdW5jdGlvbihuLFcpe1FBKG4sMTA0NyxXLmJMLFJqVSwzKX07Ck02VT1mdW5jdGlvbihuLFcpe2lmKFcualYpZm9yKHZhciBEPTA7RDxXLmpWLmxlbmd0aDtEKyspZy5GYShuLDEsVy5qVltEXSk7aWYoVy5yWClmb3IoRD0wO0Q8Vy5yWC5sZW5ndGg7RCsrKWcuRmEobiwyLFcuclhbRF0pfTsKbnl3PWZ1bmN0aW9uKG4sVyl7Zy5SdyhuLDEsVy5jcG4pO0NSKG4sMixXLnNlcXVlbmNlTnVtYmVyKTtnLlJ3KG4sMyxXLnNlcmlhbGl6ZWRXYXRjaEVuZHBvaW50TG9nZ2luZ0NvbnRleHQpO2lmKFcuZGVjb2RlckluZm8pZm9yKHZhciBEPTA7RDxXLmRlY29kZXJJbmZvLmxlbmd0aDtEKyspUUEobiw2LFcuZGVjb2RlckluZm9bRF0sVjZyLDMpO2cuUncobiw5LFcucGxheWVyUmVzcG9uc2VDcG4pO0NSKG4sMTAsVy50cmFuc2l0aW9uU3RpdGNoVHlwZSk7Zy5SdyhuLDExLFcucW9lUGluZ1VybCk7Q1IobiwxMixXLnRpbWVzdGFtcE9mZnNldE1zZWNzKTtDUihuLDE1LFcucmVtb3RlQ29udHJvbE1vZGUpO2lmKFcucmVtb3RlQ29ubmVjdGVkRGV2aWNlcylmb3IoRD0wO0Q8Vy5yZW1vdGVDb25uZWN0ZWREZXZpY2VzLmxlbmd0aDtEKyspUUEobiwxNixXLnJlbW90ZUNvbm5lY3RlZERldmljZXNbRF0sYzlNLDMpO2cuRmEobiwxNyxXLnNlcmlhbGl6ZWRIb3VzZUJyYW5kUGxheWVyU2VydmljZUxvZ2dpbmdDb250ZXh0KTsKaWYoVy5zZXJpYWxpemVkUW9lQ29udGV4dERhdGEpZm9yKEQ9MDtEPFcuc2VyaWFsaXplZFFvZUNvbnRleHREYXRhLmxlbmd0aDtEKyspZy5GYShuLDE5LFcuc2VyaWFsaXplZFFvZUNvbnRleHREYXRhW0RdKTtpZihXLmRhaUN1ZVBvaW50RXZlbnRzKWZvcihEPTA7RDxXLmRhaUN1ZVBvaW50RXZlbnRzLmxlbmd0aDtEKyspUUEobiwyMCxXLmRhaUN1ZVBvaW50RXZlbnRzW0RdLGE4MiwzKTtpZihXLnNlcmlhbGl6ZWRPbmVUaW1lUW9lQ29udGV4dERhdGEpZm9yKEQ9MDtEPFcuc2VyaWFsaXplZE9uZVRpbWVRb2VDb250ZXh0RGF0YS5sZW5ndGg7RCsrKWcuRmEobiwyMSxXLnNlcmlhbGl6ZWRPbmVUaW1lUW9lQ29udGV4dERhdGFbRF0pfTsKV0JqPWZ1bmN0aW9uKG4sVyl7Zy5SdyhuLDEsVy5pZGVudGlmaWVyKTtnLlJ3KG4sMixXLnRpbGVDb250ZXh0KX07Cmcudm49ZnVuY3Rpb24obil7dmFyIFc9e25zOm4uUmEsZWw6bi5ldmVudExhYmVsLGNwbjpuLmNsaWVudFBsYXliYWNrTm9uY2UsdmVyOjIsY210Om4uSihuLk4pLGZtdDpuLnZpZGVvRm9ybWF0LGZzOm4ualc/IjEiOiIwIixydDpuLkoobi53YSksYWRmb3JtYXQ6bi5hZEZvcm1hdCxjb250ZW50X3Y6bi5jb250ZW50VmlkZW9JZCxldXJpOm4uTWQsbGFjdDpuLk5kLGxpdmU6bi5UUSxjbDooOTUxNzc5MTA0KS50b1N0cmluZygpLG1vczpuLlJ0LHN0YXRlOm4ucGxheWVyU3RhdGUsdm9sdW1lOm4uZ1R9O24uc3Vic2NyaWJlZCYmKFcuc3Vic2NyaWJlZD0iMSIpO09iamVjdC5hc3NpZ24oVyxuLlkkKTtuLkQ9PT0iYWxsIj9PYmplY3QuYXNzaWduKFcsbi55RSk6bi5EPT09Im9uY2UiJiZuLlcmJk9iamVjdC5hc3NpZ24oVyxuLnlFKTtuLmF1dG9wbGF5JiYoVy5hdXRvcGxheT0iMSIpO24uTEImJihXLnNhdXRvcGxheT0iMSIpO24uQ3UmJihXLmRuaT0iMSIpOyFuLlgmJm4uSEomJihXLmVwbT0KRGMxW24uSEpdKTtuLmlzRmluYWwmJihXWyJmaW5hbCJdPSIxIik7bi5udSYmKFcuc3BsYXk9IjEiKTtuLm9EJiYoVy5kZWxheT1uLm9EKTtuLkR0JiYoVy5obD1uLkR0KTtuLnJlZ2lvbiYmKFcuY3I9bi5yZWdpb24pO24udXNlckdlbmRlckFnZSYmKFcudWdhPW4udXNlckdlbmRlckFnZSk7bi51c2VyQWdlIT09dm9pZCAwJiZuLkdDJiYoVy51Z2E9bi5HQytuLnVzZXJBZ2UpO24uZSQhPT12b2lkIDAmJihXLmxlbj1uLkoobi5lJCkpOyghbi5YfHxuLkJWKSYmbi5leHBlcmltZW50SWRzLmxlbmd0aD4wJiYoVy5mZXhwPW4uZXhwZXJpbWVudElkcy50b1N0cmluZygpKTtuLkshPT1udWxsJiYoVy5ydG49bi5KKG4uSykpO24uUzkmJihXLmZlYXR1cmU9bi5TOSk7bi5pNSYmKFcuY3RybD1uLmk1KTtuLlVLJiYoVy55dHI9bi5VSyk7bi52SiYmKFcuYWZtdD1uLnZKKTtuLm9mZmxpbmVEb3dubG9hZFVzZXJDaG9pY2UmJihXLk9EVUM9bi5vZmZsaW5lRG93bmxvYWRVc2VyQ2hvaWNlKTtuLlkmJgooVy5saW89bi5KKG4uWSkpO24uWD8oVy5pZHBqPW4uRTUsVy5sZHBqPW4uUXIsbi5kZWxheVRocmVzaG9sZE1ldCYmKFcuZHRtPSIxIiksbi5PIT1udWxsJiYoVy5ydGk9bi5KKG4uTykpLG4uRkwmJihXLmFsZD1uLkZMKSxuLmNvbXBvc2l0ZUxpdmVJbmdlc3Rpb25PZmZzZXRUb2tlbiYmKFcuY2xpbz1uLmNvbXBvc2l0ZUxpdmVJbmdlc3Rpb25PZmZzZXRUb2tlbikpOm4uYWRUeXBlIT09dm9pZCAwJiYoVy5hdD1uLmFkVHlwZSk7bi5mQiYmKG4uV3x8bi5YKSYmKFcuc2l6ZT1uLmZCKTtuLlcmJm4uVi5sZW5ndGgmJihXLnBic3R5bGU9bi5WLmpvaW4oIiwiKSk7bi5IRCE9bnVsbCYmKG4uV3x8bi5YKSYmKFcuaW52aWV3PW4uSihuLkhEKSk7bi5oZWFydGJlYXRMb2dnaW5nVG9rZW4mJihXLmhiX2RhdGE9bi5oZWFydGJlYXRMb2dnaW5nVG9rZW4pO24uWCYmKFcudm9sdW1lPWJKKG4sZy5pXyhuLnNlZ21lbnRzLEQ9PkQudm9sdW1lKSksVy5zdD1iSihuLGcuaV8obi5zZWdtZW50cywKRD0+RC5zdGFydFRpbWUpKSxXLmV0PWJKKG4sZy5pXyhuLnNlZ21lbnRzLEQ9PkQuZW5kVGltZSkpLGcub00obi5zZWdtZW50cyxEPT5ELnBsYXliYWNrUmF0ZSE9PTEpJiYoVy5yYXRlPWJKKG4sZy5pXyhuLnNlZ21lbnRzLEQ9PkQucGxheWJhY2tSYXRlKSkpLGcub00obi5zZWdtZW50cyxEPT5ELk4hPT0iLSIpJiYoVy5hbHM9Zy5pXyhuLnNlZ21lbnRzLEQ9PkQuTikuam9pbigiLCIpKSxnLm9NKG4uc2VnbWVudHMsRD0+RC5wcmV2aW91c2x5RW5kZWQpJiYoVy5wZT1nLmlfKG4uc2VnbWVudHMsRD0+YCR7K0QucHJldmlvdXNseUVuZGVkfWApLmpvaW4oIiwiKSkpOwpXLm11dGVkPWJKKG4sZy5pXyhuLnNlZ21lbnRzLEQ9PkQubXV0ZWQ/MTowKSk7Cmcub00obi5zZWdtZW50cyxEPT5ELnZpc2liaWxpdHlTdGF0ZSE9PTApJiYoVy52aXM9YkoobixnLmlfKG4uc2VnbWVudHMsRD0+RC52aXNpYmlsaXR5U3RhdGUpKSk7Cmcub00obi5zZWdtZW50cyxEPT5ELmNvbm5lY3Rpb25UeXBlIT09MCkmJihXLmNvbm49YkoobixnLmlfKG4uc2VnbWVudHMsRD0+RC5jb25uZWN0aW9uVHlwZSkpKTsKZy5vTShuLnNlZ21lbnRzLEQ9PkQuVyE9PTApJiYoVy5ibG89YkoobixnLmlfKG4uc2VnbWVudHMsRD0+RC5XKSkpOwpnLm9NKG4uc2VnbWVudHMsRD0+ISFELmopJiYoVy5ibG89Zy5pXyhuLnNlZ21lbnRzLEQ9PkQuaikuam9pbigiLCIpKTsKZy5vTShuLnNlZ21lbnRzLEQ9PiEhRC5jb21wb3NpdGVMaXZlU3RhdHVzVG9rZW4pJiYoVy5jYnM9Zy5pXyhuLnNlZ21lbnRzLEQ9PkQuY29tcG9zaXRlTGl2ZVN0YXR1c1Rva2VuKS5qb2luKCIsIikpOwpnLm9NKG4uc2VnbWVudHMsRD0+RC5KIT09Ii0iKSYmKFcuY2M9Zy5pXyhuLnNlZ21lbnRzLEQ9PkQuSikuam9pbigiLCIpKTsKZy5vTShuLnNlZ21lbnRzLEQ9PkQuY2xpcElkIT09Ii0iKSYmKFcuY2xpcGlkPWcuaV8obi5zZWdtZW50cyxEPT5ELmNsaXBJZCkuam9pbigiLCIpKTsKaWYoZy5vTShuLnNlZ21lbnRzLEQ9PiEhRC5hdWRpb0lkKSl7bGV0IEQ9ImF1IjsKbi5XJiYoRD0iYXVfZCIpO1dbRF09Zy5pXyhuLnNlZ21lbnRzLGI9PmIuYXVkaW9JZCkuam9pbigiLCIpfWcuakgoKSYmbi50dyYmKFcuY3R0PW4udHcsVy5jdHR5cGU9bi5QWCxXLm1keF9lbnZpcm9ubWVudD1uLm1keEVudmlyb25tZW50KTsKbi55dyYmKFcuZXR5cGU9bi5iZCE9PXZvaWQgMD9uLmJkOjApO24uRkYmJihXLnVvbz1uLkZGKTtuLmxpdmluZ1Jvb21BcHBNb2RlJiZuLmxpdmluZ1Jvb21BcHBNb2RlIT09IkxJVklOR19ST09NX0FQUF9NT0RFX1VOU1BFQ0lGSUVEIiYmKFcuY2xyYW09YlR3W24ubGl2aW5nUm9vbUFwcE1vZGVdfHxuLmxpdmluZ1Jvb21BcHBNb2RlKTtuLmo/dnlNKG4sVyk6KFcuZG9jaWQ9bi52aWRlb0lkLFcucmVmZXJyZXI9bi5yZWZlcnJlcixXLmVpPW4uZXZlbnRJZCxXLm9mPW4uUkgsVy5vc2lkPW4ub3NpZCxXLnZtPW4udmlkZW9NZXRhZGF0YSxuLmFkUXVlcnlJZCYmKFcuYXFpPW4uYWRRdWVyeUlkKSxuLmF1dG9uYXYmJihXLmF1dG9uYXY9IjEiKSxuLnBsYXlsaXN0SWQmJihXLmxpc3Q9bi5wbGF5bGlzdElkKSxuLkFSJiYoVy5zc3J0PSIxIiksbi5IcSYmKFcudXB0PW4uSHEpKTtuLlcmJihuLmVtYmVkc1JjdCYmKFcucmN0PW4uZW1iZWRzUmN0KSxuLmVtYmVkc1JjdG4mJihXLnJjdG49Cm4uZW1iZWRzUmN0biksbi5jb21wb3NpdGVMaXZlSW5nZXN0aW9uT2Zmc2V0VG9rZW4mJihXLmNsaW89bi5jb21wb3NpdGVMaXZlSW5nZXN0aW9uT2Zmc2V0VG9rZW4pKTtuLmhvc3RDcG4mJihXLmhvc3RfY3BuPW4uaG9zdENwbik7cmV0dXJuIFd9OwphODI9ZnVuY3Rpb24obixXKXtRQShuLDEsVy5pZGVudGlmaWVyLFdCaiwzKTtpZihXLnJlY2VpdmVkQ3VlUG9pbnRFdmVudHMpZm9yKHZhciBEPTA7RDxXLnJlY2VpdmVkQ3VlUG9pbnRFdmVudHMubGVuZ3RoO0QrKylRQShuLDIsVy5yZWNlaXZlZEN1ZVBvaW50RXZlbnRzW0RdLGtGdywxKTtpZihXLnJlY2VpdmVkQWRFdmVudHMpZm9yKEQ9MDtEPFcucmVjZWl2ZWRBZEV2ZW50cy5sZW5ndGg7RCsrKVFBKG4sMyxXLnJlY2VpdmVkQWRFdmVudHNbRF0saHN3LDMpfTsKa0Z3PWZ1bmN0aW9uKG4sVyl7Q1IobiwxLFcuZWxhcHNlZFRpbWVNcyk7Q1IobiwyLFcuc2VnbWVudFN0YXJ0VGltZU1zKTtDUihuLDMsVy5jdWVwb2ludEV2ZW50KTtDUihuLDQsVy5hZEJyZWFrRnVsZmlsbG1lbnRTdGF0ZSk7Q1Iobiw1LFcudHJhY2tUeXBlKTtDUihuLDYsVy5zZWdtZW50TnVtYmVyKTtDUihuLDcsVy5ub0Fkc1N0aXRjaGVkUmVhc29uKX07Cmhzdz1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLmVsYXBzZWRUaW1lTXMpO2cuUncobiwyLFcuYWRDcG4pO0NSKG4sMyxXLmFkQWRkZWRMYXRlbmN5VGltZU1zKTtnLlJ3KG4sNCxXLmFkVmlkZW9JZCk7Q1Iobiw1LFcuYWRTdGFydFRpbWVNcyk7Q1Iobiw2LFcuYWREdXJhdGlvbk1zKTtDUihuLDcsVy5hZFJlamVjdGlvblJlYXNvbik7Q1Iobiw4LFcudGltZUVsYXBzZWRTaW5jZUN1ZXBvaW50TXMpfTsKVjZyPWZ1bmN0aW9uKG4sVyl7Q1IobiwxLFcuZWxhcHNlZFRpbWVNcyk7Zy5SdyhuLDMsVy52aWRlb0RlY29kZXJOYW1lKX07CmM5TT1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLmRldmljZUludGVyZmFjZSk7Zy5SdyhuLDIsVy5kZXZpY2VWZXJzaW9uKTtCRyhuLDMsVy5pc1NsZWVwaW5nKX07CkxCVT1mdW5jdGlvbihuKXtyZXR1cm57ZmY6aWgobiwxLHhjYiksdHJhY2tUeXBlOlBHKG4sMiksUFA6UEcobiwzKSx0aW1lUmFuZ2U6aWgobiw0LGMkKSx0aWxlQ29udGV4dDpFeChuLDUpLGJ4OlBHKG4sNiksRzM6UEcobiw3KSxvcHBvcnR1bml0eUlkOkV4KG4sOCksc2VyaWFsaXplZFByZWZldGNoQ29udGV4dDp5QShuLDkpfX07CnhjYj1mdW5jdGlvbihuKXtyZXR1cm57dHlwZTpQRyhuLDEpLGV2ZW50OlBHKG4sMiksTUs6WncobiwzKSxUeTpadyhuLDQpLHVUOkV4KG4sNSksaWRlbnRpZmllcjpFeChuLDYpLEFDOlBHKG4sOSl9fTsKa2Q9ZnVuY3Rpb24obil7cmV0dXJue2ZpcnN0OlBHKG4sMSksSjc6UEcobiwyKX19Owplc2o9ZnVuY3Rpb24obil7cmV0dXJue2JpdHJhdGU6UEcobiw2KSx3aWR0aDpQRyhuLDcpLGhlaWdodDpQRyhuLDgpLGZwczpQRyhuLDI1KSxhdmVyYWdlQml0cmF0ZTpQRyhuLDMxKSxhdWRpb1NhbXBsZVJhdGU6UEcobiw0NSksYXVkaW9DaGFubmVsczpQRyhuLDQ2KSxxdWFsaXR5T3JkaW5hbDpQRyhuLDU2KX19Owpocz1mdW5jdGlvbihuKXtyZXR1cm57aXRhZ0RlbnlsaXN0OnVoKG4sMSl9fTsKZ3kxPWZ1bmN0aW9uKG4pe3JldHVybntZazpVeChuLDEpLFhXOlBHKG4sMiksc1E6VXgobiwzKSxOVDpadyhuLDQpLGNyeXB0b1BlcmlvZEluZGV4OlBHKG4sNSksWlg6UEcobiw2KSxMRzpQRyhuLDcpfX07CkdGQz1mdW5jdGlvbihuKXtyZXR1cm57SzU6UEcobiwxKSxpdGFnOkV4KG4sMyksUXQ6aWgobiw0LFh4dCksbG10OlBHKG4sNSksQ2U6UEcobiw3KSx4dGFnczpFeChuLDE1KSxuNjppaChuLDIzLHEwYiksWHQ6aWgobiwzNCxocyl9fTsKWHh0PWZ1bmN0aW9uKG4pe3JldHVybntpdjp5QShuLDUpLE5FOlV4KG4sNyl9fTsKdHBiPWZ1bmN0aW9uKG4pe3JldHVybntnazp1aChuLDIpLHZpZGVvSWQ6RXgobiwzKSxRbzpQRyhuLDQpfX07CnEwYj1mdW5jdGlvbihuKXtyZXR1cm57dmlkZW9JZDpFeChuLDIpfX07CiRjeD1mdW5jdGlvbihuKXtyZXR1cm57d2Y6UEcobiwzKSx2NzpQRyhuLDQpLEtOOlBHKG4sNSksWjM6VXgobiw4KSxXWjpQRyhuLDEwKSxITzpQRyhuLDEyKSxVUjpQRyhuLDEzKSxzUjpQRyhuLDE0KSx1MDpQRyhuLDE1KSxMejpQRyhuLDE2KX19Owp4ZD1mdW5jdGlvbihuKXtyZXR1cm57dGFyZ2V0QXVkaW9SZWFkYWhlYWRNczpQRyhuLDEpLHRhcmdldFZpZGVvUmVhZGFoZWFkTXM6UEcobiwyKSxiYWNrb2ZmVGltZU1zOlBHKG4sNCkscGxheWJhY2tDb29raWU6eUEobiw3KSx2aWRlb0lkOkV4KG4sOCl9fTsKTDc9ZnVuY3Rpb24obil7cmV0dXJue21pbkJhbmR3aWR0aEJ5dGVzUGVyU2VjOlBHKG4sMSksbWluUmVhZGFoZWFkTXM6UEcobiwyKX19OwplST1mdW5jdGlvbihuKXtyZXR1cm57c3RhcnRNaW5SZWFkYWhlYWRQb2xpY3k6b3cobiwxLEw3KSxyZXN1bWVNaW5SZWFkYWhlYWRQb2xpY3k6b3cobiwyLEw3KX19OwpyS3I9ZnVuY3Rpb24obil7cmV0dXJue2xhYmVsOkV4KG4sMSksdGV4dDpFeChuLDIpfX07CnNoWj1mdW5jdGlvbihuKXtyZXR1cm57dmlkZW9JZDpFeChuLDEpLGZvcm1hdElkOmloKG4sMixWciksZGVidWdJbmZvOm93KG4sMyxyS3IpfX07CmdQPWZ1bmN0aW9uKG4pe3JldHVybntKMDpvdyhuLDEsc2haKX19OwpObXQ9ZnVuY3Rpb24obil7cmV0dXJue0ZrOlBHKG4sMSksZno6UEcobiwyKSxtaW5SZWFkYWhlYWRNczpQRyhuLDMpfX07ClhOPWZ1bmN0aW9uKG4pe3JldHVybntwdjpQRyhuLDEpLGl0ZW1zOm93KG4sMixObXQpLFBuOlBHKG4sMyl9fTsKcHhpPWZ1bmN0aW9uKG4pe3JldHVybnt0b2tlbjpFeChuLDEpLHZpZGVvSWQ6RXgobiwyKX19OwpZMFU9ZnVuY3Rpb24obil7cmV0dXJue2V3OlBHKG4sMSl9fTsKcUc9ZnVuY3Rpb24obil7cmV0dXJue1FxOkV4KG4sMSksYWN0aW9uOlBHKG4sMiksQ3Y6aWgobiwzLFkwVSl9fTsKR0U9ZnVuY3Rpb24obil7cmV0dXJue0pKOlBHKG4sMSksUUI6UEcobiwyKSxzZWVrU291cmNlOlBHKG4sMyl9fTsKSFRaPWZ1bmN0aW9uKG4pe3JldHVybnt6SDpQRyhuLDEpLHg6UEcobiwyKSx5OlBHKG4sMyksd2lkdGg6UEcobiw0KSxoZWlnaHQ6UEcobiw1KX19OwpmbGo9ZnVuY3Rpb24obil7cmV0dXJue3JlZ2lvbjppaChuLDEsSFRaKSx1MTppaChuLDIsYyQpLGNwbjpFeChuLDUpLGxvZ2dpbmdNZXRhZGF0YTp5QShuLDYpLGJUOmloKG4sNyxjJCksTlI6UEcobiw4KSxxUjpVeChuLDkpfX07CkpLaj1mdW5jdGlvbihuKXtyZXR1cm57UjE6b3cobiwxLGZsail9fTsKSWxqPWZ1bmN0aW9uKG4pe3JldHVybnttZXRhZGF0YTpvdyhuLDEsSktqKSx0cmFja1R5cGU6UEcobiwyKX19Owp0cz1mdW5jdGlvbihuKXtyZXR1cm57dHlwZTpQRyhuLDEpLHNjb3BlOlBHKG4sMiksdmFsdWU6eUEobiwzKSxzZW5kQnlEZWZhdWx0OlV4KG4sNCksd3JpdGVQb2xpY3k6UEcobiw1KX19OwpTMHc9ZnVuY3Rpb24obixXKXtDUihuLDEsVy5pZCk7Zy5SdyhuLDIsVy51cmwpfTsKQUtyPWZ1bmN0aW9uKG4sVyl7Q1IobiwxLFcuaWQpO2cuUncobiwyLFcubmFtZSk7Q1IobiwzLFcucmVzb3VyY2VJZCk7Q1Iobiw0LFcubGluZSk7Q1Iobiw1LFcuY29sdW1uKX07Cm1jcj1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLmlkKTtDUihuLDIsVy50aW1lc3RhbXBNcyk7Q1IobiwzLFcuc3RhY2tJZCl9OwpLQk09ZnVuY3Rpb24obixXKXtDUihuLDEsVy5pZCk7Q1IobiwyLFcuZnJhbWVJZCk7Q1IobiwzLFcucGFyZW50SWQpfTsKT1RiPWZ1bmN0aW9uKG4sVyl7aWYoVy5yZXNvdXJjZXMpZm9yKHZhciBEPTA7RDxXLnJlc291cmNlcy5sZW5ndGg7RCsrKVFBKG4sMSxXLnJlc291cmNlc1tEXSxTMHcsMyk7aWYoVy5mcmFtZXMpZm9yKEQ9MDtEPFcuZnJhbWVzLmxlbmd0aDtEKyspUUEobiwyLFcuZnJhbWVzW0RdLEFLciwzKTtpZihXLnNhbXBsZXMpZm9yKEQ9MDtEPFcuc2FtcGxlcy5sZW5ndGg7RCsrKVFBKG4sMyxXLnNhbXBsZXNbRF0sbWNyLDEpO2lmKFcuc3RhY2tzKWZvcihEPTA7RDxXLnN0YWNrcy5sZW5ndGg7RCsrKVFBKG4sNCxXLnN0YWNrc1tEXSxLQk0sMSl9OwpQa0M9ZnVuY3Rpb24obixXKXtnLkZhKG4sMSxXLmRhdGEpfTsKWlRVPWZ1bmN0aW9uKG4sVyl7QkcobiwxLFcucGxhY2Vob2xkZXIpfTsKVWNpPWZ1bmN0aW9uKG4sVyl7Q1IobiwxLFcuTXcpfTsKeUtDPWZ1bmN0aW9uKG4sVyl7QkcobiwxLFcucGxhY2Vob2xkZXIpfTsKRXkyPWZ1bmN0aW9uKG4sVyl7Zy5SdyhuLDEsVy5CQil9OwppVHg9ZnVuY3Rpb24obixXKXtnLkZhKG4sMSxXLmRhdGEpO0NSKG4sMixXLlM3KX07CnVMMj1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLnR5cGUpO3ZhciBEPVcucUw7aWYoRCE9PXZvaWQgMCl7dmFyIGI9bmV3IEFycmF5QnVmZmVyKDgpOyhuZXcgRmxvYXQ2NEFycmF5KGIpKVswXT1EO0Q9bmV3IFVpbnQzMkFycmF5KGIpO2I9RFswXTtEPURbMV07aWYoYiE9PXZvaWQgMCYmRCE9PXZvaWQgMCl7ajUobiwxNyk7VDYobiw4KTtmb3IobGV0IHY9MDt2PDQ7disrKW4udmlldy5zZXRVaW50OChuLnBvcyxiJjI1NSksYj4+Pj04LG4ucG9zKz0xO2I9RDtmb3IoRD0wO0Q8NDtEKyspbi52aWV3LnNldFVpbnQ4KG4ucG9zLGImMjU1KSxiPj4+PTgsbi5wb3MrPTF9fVFBKG4sMyxXLmE5LFBrQywzKTtRQShuLDQsVy5seCxaVFUsMSk7UUEobiw1LFcucTAsVWNpLDEpO1FBKG4sNixXLmlzVHlwZVN1cHBvcnRlZCx5S0MsMSk7UUEobiw3LFcueTgsRXkyLDMpO1FBKG4sOCxXLkpMLGlUeCwzKX07Cm95aD1mdW5jdGlvbihuKXtyZXR1cm57ZGF0YTp5QShuLDEpfX07CmRjdD1mdW5jdGlvbihuKXtyZXR1cm57cGxhY2Vob2xkZXI6VXgobiwxKX19Owp6czE9ZnVuY3Rpb24obil7cmV0dXJue0hTOlp3KG4sMSl9fTsKbGxyPWZ1bmN0aW9uKG4pe3JldHVybntwbGFjZWhvbGRlcjpVeChuLDEpfX07ClRtcj1mdW5jdGlvbihuKXtyZXR1cm57cGxhY2Vob2xkZXI6VXgobiwxKX19OwpqaE09ZnVuY3Rpb24obil7cmV0dXJue2RhdGE6eUEobiwxKSxrazpQRyhuLDIpfX07CkNreD1mdW5jdGlvbihuKXtyZXR1cm57cGxhY2Vob2xkZXI6VXgobiwxKX19OwpCbWo9ZnVuY3Rpb24obil7cmV0dXJue3R5cGU6UEcobiwxKSxxTDpadyhuLDIpLFFKOlp3KG4sMyksVG86Wncobiw0KSxpbml0OmloKG4sNSxDa3gpLGE5OmloKG4sNixveWgpLGx4OmloKG4sNyxkY3QpLHEwOmloKG4sOCx6czEpLGlzVHlwZVN1cHBvcnRlZDppaChuLDksbGxyKSx5ODppaChuLDEwLFRtciksSkw6aWgobiwxMSxqaE0pfX07Cnd4Wj1mdW5jdGlvbihuKXtyZXR1cm4gT2JqZWN0LnZhbHVlcyhGQlUpLmluY2x1ZGVzKG4pfTsKTXBDPWZ1bmN0aW9uKG4peyRkPTI1OTJFMyoobnx8MSl9OwpyUD1mdW5jdGlvbigpe3ZhciBuPWcuWkkoInl0LXBsYXllci12b2x1bWUiKXx8e30sVz1uLnZvbHVtZTtyZXR1cm57dm9sdW1lOmlzTmFOKFcpPzEwMDpnLkZmKE1hdGguZmxvb3IoVyksMCwxMDApLG11dGVkOiEhbi5tdXRlZH19Owpzbj1mdW5jdGlvbihuKXtnLlBCKCJ5dC1wbGF5ZXItYmFuZHdpZHRoIixuLDI1OTJFMyl9OwpwNz1mdW5jdGlvbihuPSRkKXtpZihuPjAmJiEoVVAoKT4oMCxnLlIpKCktbioxRTMpKXJldHVybiAwO249Zy5aSSgieXQtcGxheWVyLXF1YWxpdHkiKTtpZih0eXBlb2Ygbj09PSJzdHJpbmciKXtpZihuPU5HW25dLG4+MClyZXR1cm4gbn1lbHNlIGlmKG4gaW5zdGFuY2VvZiBPYmplY3QpcmV0dXJuIG4ucXVhbGl0eTtyZXR1cm4gMH07CllkPWZ1bmN0aW9uKCl7dmFyIG49Zy5aSSgieXQtcGxheWVyLXByb3hpbWEtcHJlZiIpO3JldHVybiBuPT1udWxsP251bGw6bn07ClJzeD1mdW5jdGlvbigpe3ZhciBuPWcuWkkoInl0LXBsYXllci1xdWFsaXR5Iik7aWYobiBpbnN0YW5jZW9mIE9iamVjdCYmbi5xdWFsaXR5JiZuLnByZXZpb3VzUXVhbGl0eSl7aWYobi5xdWFsaXR5Pm4ucHJldmlvdXNRdWFsaXR5KXJldHVybiAxO2lmKG4ucXVhbGl0eTxuLnByZXZpb3VzUXVhbGl0eSlyZXR1cm4tMX1yZXR1cm4gMH07CkhuPWZ1bmN0aW9uKCl7dmFyIG49e3ZhbHVlczp7fSxGWTp7fX07dHJ5e2xldCBXPUpTT04ucGFyc2UoSlNPTi5wYXJzZSh3aW5kb3cubG9jYWxTdG9yYWdlWyJ5dC1wbGF5ZXItbWVtb3J5Il0pLmRhdGEpO24udmFsdWVzPVcudmFsdWVzO24uaGFsZkxpdmVzPVcuaGFsZkxpdmVzfWNhdGNoe31yZXR1cm4gbn07CmY3PWZ1bmN0aW9uKCl7cmV0dXJuIGcuWkkoInl0LXBsYXllci1wZXJmb3JtYW5jZS1jYXAiKXx8e319OwpRaHc9ZnVuY3Rpb24obj0hMSl7aWYobil7bj1mNygpO2ZvcihsZXQgVyBvZiBPYmplY3Qua2V5cyhuKSlXLmluZGV4T2YoIjEiKSE9PTAmJmRlbGV0ZSBuW1ddO2cuUEIoInl0LXBsYXllci1wZXJmb3JtYW5jZS1jYXAiLG4sMjU5MkUzKX1lbHNlIHRyeXtsZXQgVz1PUC5xYigpLEQ9T1AuQnAoKTtXJiZXLnJlbW92ZSgieXQtcGxheWVyLXBlcmZvcm1hbmNlLWNhcCIpO0QmJkQucmVtb3ZlKCJ5dC1wbGF5ZXItcGVyZm9ybWFuY2UtY2FwIil9Y2F0Y2goVyl7fX07CkpzPWZ1bmN0aW9uKCl7cmV0dXJuIGcuWkkoInl0LXBsYXllci1wZXJmb3JtYW5jZS1jYXAtYWN0aXZlLXNldCIpPz9bXX07ClZwQz1mdW5jdGlvbihuPSExKXtuPyhuPUpzKCkuZmlsdGVyKFc9Plcuc3RhcnRzV2l0aCgiMSIpKSxnLlBCKCJ5dC1wbGF5ZXItcGVyZm9ybWFuY2UtY2FwLWFjdGl2ZS1zZXQiLG4sMjU5MkUzKSk6Zy5QQigieXQtcGxheWVyLXBlcmZvcm1hbmNlLWNhcC1hY3RpdmUtc2V0IixbXSwyNTkyRTMpfTsKSU89ZnVuY3Rpb24oKXtyZXR1cm4hIWcuWkkoInl0LXBsYXllci1oZWFkZXJzLXJlYWRhYmxlIil9OwpnLlNJPWZ1bmN0aW9uKCl7dmFyIG49Zy5aSSgieXQtcGxheWVyLWNhcHRpb24tbGFuZ3VhZ2UtcHJlZmVyZW5jZXMiKTtyZXR1cm4gbj9uOltdfTsKQXM9ZnVuY3Rpb24oKXt2YXIgbj1nLlpJKCJ5dC1wbGF5ZXItdXNlci1zZXR0aW5ncyIpLFc9bmV3IE1hcDtpZihuKWZvcihsZXQgW0QsYl1vZiBPYmplY3QuZW50cmllcyhuKSlXLnNldChELGIpO3JldHVybiBXfTsKbTU9ZnVuY3Rpb24oKXtyZXR1cm4gZy5aSSgieXQtcGxheWVyLXZvaWNlLWJvb3N0Iik/P3ZvaWQgMH07Cks3PWZ1bmN0aW9uKCl7cmV0dXJuIGcuWkkoInl0LXBsYXllci1hdWRpby1xdWFsaXR5LXNldHRpbmciKT8/Mn07ClpVPWZ1bmN0aW9uKCl7dHJ5e2xldCBuPXdpbmRvdy5uYXZpZ2F0b3I7aWYobi5nZXRBdXRvcGxheVBvbGljeSYmdHlwZW9mIG4uZ2V0QXV0b3BsYXlQb2xpY3k9PT0iZnVuY3Rpb24iKXtsZXQgVz1kb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGcuT24uV0MpLEQ7RD1XLmxlbmd0aD4wJiZXWzBdP24uZ2V0QXV0b3BsYXlQb2xpY3koV1swXSk6bi5nZXRBdXRvcGxheVBvbGljeSgibWVkaWFlbGVtZW50Iik7aWYoUG5bRF0pcmV0dXJuIFBuW0RdfX1jYXRjaChuKXt9cmV0dXJuIkFVVE9QTEFZX0JST1dTRVJfUE9MSUNZX1VOU1BFQ0lGSUVEIn07ClVuPWZ1bmN0aW9uKG4pe3JldHVybiBuLlBYfHxuLkd1fHxuLm11dGVkQXV0b3BsYXl9Owp5dz1mdW5jdGlvbihuLFcpe3JldHVybiBVbihuKT9XIT09MSYmVyE9PTImJlchPT0wPyJBVVRPUExBWV9TVEFUVVNfVU5BVkFJTEFCTEUiOm4uc1o/IkFVVE9QTEFZX1NUQVRVU19CTE9DS0VEIjoiQVVUT1BMQVlfU1RBVFVTX09DQ1VSUkVEIjoiQVVUT1BMQVlfU1RBVFVTX05PVF9BVFRFTVBURUQifTsKZy5Fbj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Vy5HKCk7bi50aGlyZFBhcnR5fHwobi50aGlyZFBhcnR5PXt9KTtuLnRoaXJkUGFydHk9ey4uLm4udGhpcmRQYXJ0eSxlbWJlZFVybDpiLmxvYWRlclVybH07Yi5hbmNlc3Rvck9yaWdpbnMmJihuLnRoaXJkUGFydHkuZW1iZWRkZWRQbGF5ZXJDb250ZXh0PXsuLi5uLnRoaXJkUGFydHkuZW1iZWRkZWRQbGF5ZXJDb250ZXh0LGFuY2VzdG9yT3JpZ2luczpiLmFuY2VzdG9yT3JpZ2luc30pO2IuZUshPW51bGwmJihuLnRoaXJkUGFydHkuZW1iZWRkZWRQbGF5ZXJDb250ZXh0PXsuLi5uLnRoaXJkUGFydHkuZW1iZWRkZWRQbGF5ZXJDb250ZXh0LHZpc2liaWxpdHlGcmFjdGlvbjpOdW1iZXIoYi5lSyl9KTtiLkxLJiYobi50aGlyZFBhcnR5LmVtYmVkZGVkUGxheWVyQ29udGV4dD17Li4ubi50aGlyZFBhcnR5LmVtYmVkZGVkUGxheWVyQ29udGV4dCx2aXNpYmlsaXR5RnJhY3Rpb25Tb3VyY2U6Yi5MS30pO24udGhpcmRQYXJ0eS5lbWJlZGRlZFBsYXllckNvbnRleHQ9CnsuLi5uLnRoaXJkUGFydHkuZW1iZWRkZWRQbGF5ZXJDb250ZXh0LGF1dG9wbGF5QnJvd3NlclBvbGljeTpaVSgpLGF1dG9wbGF5SW50ZW5kZWQ6VW4oVyksYXV0b3BsYXlTdGF0dXM6eXcoVyxEKX19OwppSj1mdW5jdGlvbihuKXt2YXIgVz1bXTtmb3IobGV0IEQgb2Ygbi5zcGxpdCgiLCIpKXtpZighRCljb250aW51ZTsobj1ELnN0YXJ0c1dpdGgoIiEiKSkmJihEPUQuc3Vic3RyaW5nKDEpKTtsZXQgYj1ELnNwbGl0KCItIik7Yi5sZW5ndGg8M3x8Vy5wdXNoKHtoajpiWzBdLHBsYXRmb3JtOmJbMV0sZGV2aWNlVmVyc2lvbjpiWzJdLEVzOm59KX1yZXR1cm4gV307CmFseD1mdW5jdGlvbihuKXtyZXR1cm4gaUoobikubWFwKCh7aGo6VyxkZXZpY2VWZXJzaW9uOkQsRXM6Yn0pPT4oe2RldmljZUludGVyZmFjZTpjS01bdUpbV11dfHwwLGRldmljZVZlcnNpb246RHx8IiIsaXNTbGVlcGluZzpifSkpfTsKb089ZnVuY3Rpb24obixXLEQ9ITEsYj0iIil7IW4mJkQmJmcuR3EoRXJyb3IoYFBsYXllciBVUkwgdmFsaWRhdG9yIGRldGVjdHMgaW52YWxpZCB1cmwuICR7Yn06ICR7V31gKSk7cmV0dXJuIG59Owp6RT1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIFcmJlcudGVzdChuKXx8ZFAmJkQmJkQudGVzdChuKT8hMDohMX07ClRFPWZ1bmN0aW9uKG4pe3JldHVybihuPWxKJiZsSi5leGVjKG4pKT9uWzBdOiIifTsKZ1g9ZnVuY3Rpb24obil7cmV0dXJuIG9PKHpFKG4sbkV3LFdoWiksbiwhMSwiVHJ1c3RlZCBTdHJlYW0gVVJMIil9OwpnLmpJPWZ1bmN0aW9uKG4pe3JldHVybiBvTyh6RShuLEQ1VSxiS1opLG4sITEsIlRydXN0ZWQgSW1hZ2UgVVJMIil9OwpDNz1mdW5jdGlvbihuKXtyZXR1cm4gb08oekUobix2RWgsbnVsbCksbiwhMSwiVHJ1c3RlZCBQcm9tb3RlZCBWaWRlbyBEb21haW4gVVJMIil9OwpoQWk9ZnVuY3Rpb24obil7cmV0dXJuIG9PKHpFKG4sazdyLG51bGwpLG4sITEsIkRybSBMaWNlbnNvciBVUkwiKX07CkJuPWZ1bmN0aW9uKG4sVz0hMSl7cmV0dXJuIG9PKHpFKG4seDVyLExodCksbixXLCJDYXB0aW9ucyBVUkwiKX07CmVBPWZ1bmN0aW9uKG4pe249bmV3IGcuVWoobik7eU4obixkb2N1bWVudC5sb2NhdGlvbi5wcm90b2NvbCk7RWoobixkb2N1bWVudC5sb2NhdGlvbi5ob3N0bmFtZSk7ZG9jdW1lbnQubG9jYXRpb24ucG9ydCYmaXIobixkb2N1bWVudC5sb2NhdGlvbi5wb3J0KTtyZXR1cm4gbi50b1N0cmluZygpfTsKRk49ZnVuY3Rpb24obil7bj1uZXcgZy5VaihuKTt5TihuLGRvY3VtZW50LmxvY2F0aW9uLnByb3RvY29sKTtyZXR1cm4gbi50b1N0cmluZygpfTsKZUFaPWZ1bmN0aW9uKG4pe3JldHVybntbMV06bi5uYW1lLFsyXTpuLmlkLFszXTpuLmlzRGVmYXVsdCxbNF06bi5pc0F1dG9EdWJiZWR9fTsKTUc9ZnVuY3Rpb24obil7cmV0dXJuIG5ldyB3UChuWzFdLG5bMl0sblszXSxuWzRdKX07ClJPPWZ1bmN0aW9uKG4pe3JldHVybntbMV06bi5sYW5ndWFnZUNvZGUsWzJdOm4ubGFuZ3VhZ2VOYW1lLFszXTpuLmtpbmQsWzRdOm4ubmFtZSxbNV06bi5kaXNwbGF5TmFtZSxbNl06bi5pZCxbN106bi54dGFncyxbOF06bi5OLFs5XTpuLmlzVHJhbnNsYXRlYWJsZSxbMTBdOm4udXJsLFsxMV06bi52c3NJZCxbMTJdOm4uaXNEZWZhdWx0LFsxM106bi50cmFuc2xhdGlvbkxhbmd1YWdlLFsxNF06bi5jYXB0aW9uSWR9fTsKVnc9ZnVuY3Rpb24obil7dmFyIFc9bmV3IGcuUXcoe2xhbmd1YWdlQ29kZTpuWzFdLGxhbmd1YWdlTmFtZTpuWzJdLGtpbmQ6blszXSxuYW1lOm5bNF0saWQ6bls2XSxpc19zZXJ2YWJsZTpuWzhdLGlzX3RyYW5zbGF0ZWFibGU6bls5XSx1cmw6blsxMF0sdnNzX2lkOm5bMTFdLGlzX2RlZmF1bHQ6blsxMl0seHRhZ3M6bls3XSxjYXB0aW9uSWQ6blsxNF19KTtXLmRpc3BsYXlOYW1lPW5bNV07Vy50cmFuc2xhdGlvbkxhbmd1YWdlPW5bMTNdO3JldHVybiBXfTsKZy5jbj1mdW5jdGlvbihuKXt2YXIgVz1bXTtpZihuLmRpc3BsYXlOYW1lKVcucHVzaChuLmRpc3BsYXlOYW1lKTtlbHNle2xldCBEPW4ubGFuZ3VhZ2VOYW1lfHwiIjtXLnB1c2goRCk7bi5raW5kPT09ImFzciImJkQuaW5kZXhPZigiKCIpPT09LTEmJlcucHVzaCgiIChBdXRvbWF0aWMgQ2FwdGlvbnMpIik7bi5uYW1lJiZXLnB1c2goYCAtICR7bi5uYW1lfWApfW4udHJhbnNsYXRpb25MYW5ndWFnZSYmVy5wdXNoKGAgPj4gJHtuLnRyYW5zbGF0aW9uTGFuZ3VhZ2UubGFuZ3VhZ2VOYW1lfWApO3JldHVybiBXLmpvaW4oIiIpfTsKZy5hTz1mdW5jdGlvbihuKXtyZXR1cm4gbi50cmFuc2xhdGlvbkxhbmd1YWdlP24udHJhbnNsYXRpb25MYW5ndWFnZS5sYW5ndWFnZUNvZGU6bi5sYW5ndWFnZUNvZGV9OwpnLm5nPWZ1bmN0aW9uKG4pe3ZhciBXPW4udnNzSWQ7bi50cmFuc2xhdGlvbkxhbmd1YWdlJiZXJiYoVz1gdCR7V30uJHtnLmFPKG4pfWApO3JldHVybiBXfTsKZ0V3PWZ1bmN0aW9uKG4pe3ZhciBXPW4uVyxEPW4uTixiPW4uWDtyZXR1cm57WzFdOm4uY2FwdGlvbnNJbml0aWFsU3RhdGUsWzJdOm4uSixbM106bi5jYXB0aW9uVHJhY2tzLm1hcCh2PT5STyh2KSksCls0XTpXP1JPKFcpOm51bGwsWzVdOkQ/Uk8oRCk6bnVsbCxbNl06bi5pZCxbN106bi5qLFs4XTpuLlYsWzldOmVBWihuLmtaKSxbMTBdOmI/Uk8oYik6bnVsbCxbMTFdOm4ueHRhZ3N9fTsKRGM9ZnVuY3Rpb24obil7dmFyIFc9bls0XSxEPW5bNV0sYj1uWzEwXSx2PW5ldyBXQShuWzZdLE1HKG5bOV0pKTt2LmNhcHRpb25zSW5pdGlhbFN0YXRlPW5bMV07di5jYXB0aW9uVHJhY2tzPW5bM10ubWFwKGs9PlZ3KGspKTsKdi5KPW5bMl07di5XPVc/VncoVyk6bnVsbDt2Lk49RD9WdyhEKTpudWxsO3Yuaj1uWzddO3YuVj1uWzhdO3YuWD1iP1Z3KGIpOm51bGw7di54dGFncz1uWzExXTtyZXR1cm4gdn07CnZBPWZ1bmN0aW9uKG4sVyxELGIpe3JldHVybiBuZXcgYjMoTkdbbl18fDAsTkdbV118fDAsRCxiKX07CmtKPWZ1bmN0aW9uKG4pe3JldHVybntbMV06bi5KLFsyXTpuLk4sWzNdOm4uVyxbNF06bi5yZWFzb24sWzVdOm4uTnN9fTsKWExTPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgYjMoblsxXSxuWzJdLG5bM10sbls0XSxuWzVdKX07CnhKPWZ1bmN0aW9uKG4pe2lmKGhUJiZuLk5zKXJldHVybiExO3ZhciBXPU5HLmF1dG87cmV0dXJuIG4uSj09PVcmJm4uTj09PVd9OwplSj1mdW5jdGlvbihuKXtyZXR1cm4gTGdbbi5OfHxuLkpdfHwiYXV0byJ9OwpnRj1mdW5jdGlvbihuLFcpe1c9TkdbV107cmV0dXJuIG4uSjw9VyYmKCFuLk58fG4uTj49Vyl9OwpYcD1mdW5jdGlvbihuKXtyZXR1cm4hIW5bIjEiXT8ubGVuZ3RofHwhIW5bIjFoIl0/Lmxlbmd0aHx8ISFuWyIxZSJdPy5sZW5ndGh9OwpxZD1mdW5jdGlvbihuKXtyZXR1cm4gbj09PSIxInx8bj09PSIxaCJ8fG49PT0iMWUifTsKTmQ9ZnVuY3Rpb24obixXLEQsYix2LGssaCl7dmFyIHg9ITE7aWYobi5KKXJldHVybiBuLko7dmFyIEw9e30sZT1uZXcgU2V0LEc9e307aWYoR18oYikpe2Zvcih2YXIgciBpbiBiLk4pe2lmKCFiLk4uaGFzT3duUHJvcGVydHkocikpY29udGludWU7bj1iLk5bcl07R1tuLmluZm8uSUJdPVtuLmluZm9dfXJldHVybiBHfXI9dFQoVyxiLEwpO2lmKFcuSil7KHg9WHAocikpfHwoVy5OLm5vQXYxUmVhc29uPSJub0Zvcm1hdCIpO3ZhciBOPUQuWT8iZGlzYWJsZUF2MUZvclNlc3Npb24iOiIiO04mJihXLk4ubm9BdjFSZWFzb249Tik7dih7bm9BdjFSZWFzb246Vy5OLm5vQXYxUmVhc29ufSl9ayYmdih7YWZ0c3J0OiRKKHIpfSk7Tj17fTt2YXIgSD0iIjtmb3IobGV0IEEgb2YgT2JqZWN0LmtleXMocikpe2xldCB5PUE7Zm9yKGxldCBUIG9mIHJbeV0pe2xldCB6PVQuaXRhZyxDPXJGKHksVCxXKTtpZihOLmhhc093blByb3BlcnR5KEMpKXtOW0NdPT09ITA/R1t5XS5wdXNoKFQpOkxbel09Ck5bQ107Y29udGludWV9bGV0IFE9c0QoVyxULEQsYi5pc0xpdmUsZSk7USE9PSEwPyhoLmFkZCh5KSxMW3pdPVEsVy5KJiZULk1XKCkmJihIKz1gOyR7en07JHtRfWApLFE9PT0iZGlzYWJsZXZwOWhmciImJihOW0NdPSJkaXNhYmxldnA5aGZyIikpOihHW3ldPUdbeV18fFtdLEdbeV0ucHVzaChUKSxOW0NdPSEwKX19Vy5KJiZ4JiYhWHAoRykmJih4PSExLFcuTi5ub0F2MVJlYXNvbj1ILHYoe25vQXYxUmVhc29uOlcuTi5ub0F2MVJlYXNvbn0pKTtrJiZ2KHtiZmZsdDokSihHKX0pO2ZvcihsZXQgQSBpbiBHKXtpZighRy5oYXNPd25Qcm9wZXJ0eShBKSljb250aW51ZTtiPUE7R1tiXSYmR1tiXVswXS5mWSgpJiYoaD1HW2JdLmxlbmd0aCxHW2JdPUdbYl0sVy5KJiZxZChiKSYmaD4wJiZHW2JdLmxlbmd0aDw9MCYmKGg9R1tiXS5sZW5ndGgsdih7bm9BdjFGbXQ6ImZpbHRlclZwOVVsdGxvdyIsY29kZWM6Yn0pKSxHW2JdPXEyQyhXLEdbYl0sTCksVy5KJiZxZChiKSYmaD4wJiZHW2JdLmxlbmd0aDw9CjAmJihoPUdbYl0ubGVuZ3RoLHYoe25vQXYxRm10OiJmaWx0ZXJRdWFsaXRpZXMiLGNvZGVjOmJ9KSksR1tiXT1HN1UoR1tiXSxMKSxXLkomJnFkKGIpJiZoPjAmJkdbYl0ubGVuZ3RoPD0wJiZ2KHtub0F2MUZtdDoiZmlsdGVySGZyIixjb2RlYzpifSkpfWsmJk9iamVjdC5rZXlzKEwpLmxlbmd0aD4wJiZ2KHtyanI6Zy5UQyhMKX0pO2ZvcihsZXQgQSBvZiBlLnZhbHVlcygpKShMPUQuVy5nZXQoQSkpJiYtLUwuZzE7ayYmdih7YWZ0Zmx0OiRKKEcpfSk7Vy5KJiZ4JiYhWHAoRykmJih4PSExLFcuTi5ub0F2MVJlYXNvbj0iZmlsdGVyIix2KHtub0F2MVJlYXNvbjpXLk4ubm9BdjFSZWFzb259KSk7bi5KPWcublQoRyxBPT4hIUEubGVuZ3RoKTsKcmV0dXJuIG4uSn07CklEaD1mdW5jdGlvbihuLFcsRCxiLHYsayxoKXt2YXIgeD1XLld8fCEhdixMPXgmJlcuTEI/azp2b2lkIDAsZT1uZXcgU2V0LEc9TmQobixXLEQsYixrLHgsZSk7Yi5YKCkmJihHPXRnaChELEcsdix4LGssVykseCYmayh7ZW5mbHQ6JEooRyl9KSk7Vy55RT0kNXIoRyxXKTt2PUx0PT4hIUdbTHRdOwp2YXIgcj1ySGkoVyk7RD1bXTtmb3IodmFyIE4gb2YgT2JqZWN0LnZhbHVlcyhHKSlOPy5sZW5ndGgmJk5bMF0uZVMoKSYmRC5wdXNoKC4uLk4pO2lmKEdfKGIpKXJldHVybiBrPWcubF8oT2JqZWN0LnZhbHVlcyhHKSxMdD0+ISFMdC5sZW5ndGgmJiEhTHRbMF0uYXVkaW8pLHg9Zy5sXyhPYmplY3QudmFsdWVzKEcpLEx0PT4hIUx0Lmxlbmd0aCYmISFMdFswXS52aWRlbyksayYmeHx8Zy5wJCgpLGcuSDAobmV3IHBnKHgsayxMLEQpKTsKTj1HLmE7dmFyIEg9ITE7Vy5IaSYmclswXSE9PSJhIiYmc1diKE4pJiYoci51bnNoaWZ0KCJhIiksSD0hMCk7eCYmKGsoe2F1ZGlvUHJlZk9yZGVyOnIuam9pbigiXyIpfSksayh7cHJlZmVySGlnaFF1YWxpdHlBdWRpbzpXLkhpfSksayh7Zm9yY2VkQWFjRm9ySHFhOkh9KSk7Tj1bXTtpZihXLnZYKXtyPWcuRU0ocix2KTtIPW5ldyBTZXQ7Zm9yKHZhciBBIG9mIHIpe3ZhciB5PUdbQV07bGV0IEx0PW5ldyBTZXQ7Zm9yKHZhciBUIG9mIHkpaWYoeT1ULmtaPy5pZClILmhhcyh5KT9MdC5oYXMoeSkmJk4ucHVzaChUKTooTHQuYWRkKHkpLEguYWRkKHkpLE4ucHVzaChUKSl9aWYoTi5sZW5ndGg9PT0wKXtpZihyLmxlbmd0aD09PTApcmV0dXJuIHgmJmsoe25vYXVkaW86MX0pLGcucCQoKTtOPUdbclswXV19fWVsc2V7Tj1nLmxfKHIsdik7aWYoIU4pcmV0dXJuIHgmJmsoe25vYXVkaW86MX0pLGcucCQoKTtOPUdbTl19R1siOSJdJiZHLmgmJmIuelcmJiFXLkZGJiYoeCYmayh7ZGx0dnA5OjF9KSwKZGVsZXRlIEdbIjkiXSk7aWYoaCl7eCYmayh7YmZzZmx0OiRKKEcpLGJmc2ZsdGE6WUoobil9KTtXLkR0P24uTj1ORFMoZSxuLk4pOm4uTi5jbGVhcigpO3gmJmsoe2Jmc2ZsdGI6WUoobil9KTtmb3IodmFyIHogaW4gRyl7aWYoIUcuaGFzT3duUHJvcGVydHkoeikpY29udGludWU7aD16O2lmKCEoaD09PSJmInx8Vy54ZD09PTAmJnBMai5oYXMoaCkpKWZvcih2YXIgQyBvZiBHW2hdKVcuRHQ/WTJTKGgsQyxuLk4pOkhLaShuLGgsQyl9eCYmayh7YWZ0c2ZsdDpZSihuKX0pfXo9R1siMWgiXT8iMWgiOiIxIjtuPUdbIjloIl0/IjloIjoiOSI7aD1HW3pdO2U9R1siMiJdO0E9R1tuXTtoJiZoLmxlbmd0aCYmKFcuTi5oaWdoZXN0QXYxUmVzb2x1dGlvbj1oW2gubGVuZ3RoLTFdLnZpZGVvLnF1YWxpdHlPcmRpbmFsKTtBJiZBLmxlbmd0aCYmKFcuTi5oaWdoZXN0VnA5UmVzb2x1dGlvbj1BW0EubGVuZ3RoLTFdLnZpZGVvLnF1YWxpdHlPcmRpbmFsKTtDPVtdO1Q9W107aWYoVy55dyYmZSlDPQplLFQ9WyIyIl07ZWxzZSBpZihXLk1kJiZoKUM9aCxUPVt6XSxrKHtmb3JjZUF2MTp6fSk7ZWxzZSBpZihXLkQmJiFXLmJ2KXtUPWZEdyhiKT9HWyIxaCJdfHxHWyI5aCJdP1siMWgiLCI5aCJdOlsiOSIsImgiXTpbIjEiLCI5IiwiaCJdO3gmJmsoe25ld2h5YnByZWY6VC5qb2luKCIuIil9KTtmb3IodmFyIFEgb2YgVClDPUMuY29uY2F0KEdbUV0pLmZpbHRlcihMdD0+THQpfWVsc2UgVy5uUz4wJiZBJiZoJiYoVD1beiwKbl0sQz1oLmNvbmNhdChBKS5maWx0ZXIoTHQ9Pkx0KSk7CmlmKEMubGVuZ3RoJiYhVy5idil7SEEoQyxUKTtpZih4KXt4PVtdO2Zvcih2YXIgViBvZiBDKXgucHVzaChWLml0YWcpO2soe2hiZGZtdDp4LmpvaW4oIi4iKX0pfXJldHVybiBnLkgwKG5ldyBwZyhDLE4sTCxEKSl9Vj1KSHIoVyk7Vj1nLmxfKFYsdik7aWYoIVYpe2lmKEdbel0pcmV0dXJuIGs9R1t6XSxIQShrKSxnLkgwKG5ldyBwZyhrLE4sTCxEKSk7eCYmayh7bm92aWRlbzoxfSk7cmV0dXJuIGcucCQoKX1WIT09IjEiJiZWIT09IjFoInx8IUdbbl18fChRPWZnKEdbVl0pLHY9ZmcoR1tuXSksdj5RP1Y9bjooUT12PT09USx2PUpUKEdbbl0pLHo9SlQoR1tWXSksIVF8fCF2fHxXLllaJiZ6fHwoVj1uKSkpO1Y9PT0iOSImJkcuaCYmZmcoRy5oKT5mZyhHWyI5Il0pJiYoVj0iaCIpO1cuQlYmJmIuaXNMaXZlJiZWPT09IigiJiZHLkgmJmZnKEdbIigiXSk8MTQ0MCYmKFY9IkgiKTt4JiZrKHt2Zm1seTpJcihWKX0pO1c9R1tWXTtpZighVy5sZW5ndGgpcmV0dXJuIHgmJmsoe25vdmZtbHk6SXIoVil9KSwKZy5wJCgpO0hBKFcpO3JldHVybiBnLkgwKG5ldyBwZyhXLE4sTCxEKSl9OwpTMmI9ZnVuY3Rpb24obixXLEQsYix2LGssaCx4PSExKXtpZihXLkU1JiZoJiZoLmxlbmd0aD4xJiYhKFcublM+MHx8Vy5EKSl7bGV0IHI9Vy5XfHwhIXYsTj1yJiZXLkxCP2s6dm9pZCAwLEg9dFQoVyxiKSxBPVtdLHk9W10sVD17fTtmb3IobGV0IHo9MDt6PGgubGVuZ3RoO3orKyl7dmFyIEw9aFt6XSxlPWIuSi5nZXQoTCk7aWYoZSYmZS5pbmZvKXt2YXIgRz1lLmluZm87ZT1HLklCO2lmKHNEKFcsRyxELGIuaXNMaXZlKSl7TD1HLmZZKCk/QTp5O0c9SFtlXTtmb3IobGV0IEMgb2YgRylHPXJGKGUsQyxXKSxULmhhc093blByb3BlcnR5KEcpP1RbR109PT0hMCYmTC5wdXNoKEMpOnNEKFcsQyxELGIuaXNMaXZlKSYmKEwucHVzaChDKSxUW0ddPSEwKX1lbHNlIHImJmsoe29wZnU6TH0pfX1pZihBLmxlbmd0aCYmeS5sZW5ndGgpcmV0dXJuIHImJmsoe29wZm06QVswXS5pdGFnKyIsIit5WzBdLml0YWd9KSxnLkgwKG5ldyBwZyhBLHksTikpfXJldHVybiBJRGgobixXLEQsYix2LGsseCl9OwpZSj1mdW5jdGlvbihuKXt2YXIgVz1bXTtmb3IobGV0IEQgb2Ygbi5OLmtleXMoKSl7bGV0IGI9bi5OLmdldChEKTtXLnB1c2goYCR7RH1fJHtiLm1heFdpZHRofV8ke2IubWF4SGVpZ2h0fWApfXJldHVybiBXLmpvaW4oIi4iKX07CkhLaT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9RC52aWRlbz8uZnBzfHwwLHY9YCR7V31fJHtifWAsaz0hIUQuYXVkaW8saD1uLk4uZ2V0KHYpLHg9bi5OLmdldCh2KSxMPSEhRC5hdWRpbzt4JiYoTHx8IUwmJkQudmlkZW8/LmhlaWdodCYmeC5tYXhIZWlnaHQmJngubWF4SGVpZ2h0Pj1ELnZpZGVvPy5oZWlnaHQpfHwoeD1ELml0YWcsVz1oP2g6e2l0YWc6eCxJQjpXLGVTOmt9LGs/Vy5udW1DaGFubmVscz1ELmF1ZGlvLm51bUNoYW5uZWxzOihrPUQudmlkZW8sVy5tYXhXaWR0aD1rPy53aWR0aCxXLm1heEhlaWdodD1rPy5oZWlnaHQsVy5tYXhGcmFtZXJhdGU9YixXLm1heEJpdHJhdGVCcHM9RC5Ocyo4LFcuejk9az8uaXNIZHIoKSksbi5OLnNldCh2LFcpKX07CiQ1cj1mdW5jdGlvbihuLFcpe3ZhciBEPSEoIW4ubSYmIW4uTSksYj0hKCFuLm1hYzMmJiFuLk1BQzMpLHY9ISghbi5tZWFjMyYmIW4uTUVBQzMpO249ISghbi5pJiYhbi5JKTtXLlFyPW47cmV0dXJuIER8fGJ8fHZ8fG59OwpKVD1mdW5jdGlvbihuKXtmb3IobGV0IFcgb2YgbilpZihXLml0YWcmJkFIUy5oYXMoVy5pdGFnKSlyZXR1cm4hMDtyZXR1cm4hMX07CnNXYj1mdW5jdGlvbihuKXtmb3IobGV0IFcgb2YgbilpZihXLmF1ZGlvLmF1ZGlvUXVhbGl0eT09PSJBVURJT19RVUFMSVRZX0hJR0giKXJldHVybiEwO3JldHVybiExfTsKSXI9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgIioiOnJldHVybiJ2OGUiO2Nhc2UgIigiOnJldHVybiJ2OWUiO2Nhc2UgIihoIjpyZXR1cm4idjloZSI7ZGVmYXVsdDpyZXR1cm4gbn19OwpyRj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIEQuVEM/YCR7bn1fJHtOdW1iZXIoVy52aWRlbz8uZnBzfHwwKX1fJHshIVcuYXVkaW8/Lk59XyR7ISFXLnZpZGVvPy5YfWA6YCR7bn1fJHtOdW1iZXIoVy52aWRlbz8uZnBzfHwwKX1fJHshIVcuYXVkaW8/Lk59YH07CiRKPWZ1bmN0aW9uKG4pe3ZhciBXPVtdO2ZvcihsZXQgRCBpbiBuKXtpZighbi5oYXNPd25Qcm9wZXJ0eShEKSljb250aW51ZTtsZXQgYj1EO1cucHVzaChJcihiKSk7Zm9yKGxldCB2IG9mIG5bYl0pVy5wdXNoKHYuaXRhZyl9cmV0dXJuIFcuam9pbigiLiIpfTsKdGdoPWZ1bmN0aW9uKG4sVyxELGIsdixrKXt2YXIgaD17fSx4PXt9O2cuYV8oVywoTCxlKT0+e0w9TC5maWx0ZXIoRz0+e3ZhciByPUcuaXRhZztpZighRy5jb250ZW50UHJvdGVjdGlvbilyZXR1cm4geFtyXT0ibm9lbmMiLCExO2lmKGsuSEQmJkcuSUI9PT0iKGgiJiZrLmJkKXJldHVybiB4W3JdPSJsaWNoZHIiLCExO2lmKCFuLlgmJkcuSUI9PT0iMWUiKXJldHVybiB4W3JdPSJub2F2MWVuYyIsITE7aWYoRy5JQj09PSIoInx8Ry5JQj09PSIoaCIpe2lmKG4uSiYmRCYmRC5mbGF2b3I9PT0id2lkZXZpbmUiKXt2YXIgTj1HLm1pbWVUeXBlKyI7IGV4cGVyaW1lbnRhbD1hbGxvd2VkIjsoTj0hIUcuY29udGVudFByb3RlY3Rpb25bRC5mbGF2b3JdJiYhIUQuSltOXSl8fCh4W3JdPUcuY29udGVudFByb3RlY3Rpb25bRC5mbGF2b3JdPyJ1bnNwdCI6Im5vZmx2Iik7cmV0dXJuIE59aWYoIVNKKG4sQVQuQ1JZUFRPQkxPQ0tGT1JNQVQpJiYhbi5UQ3x8bi50dylyZXR1cm4geFtyXT1uLnR3PwoiZGlzdnAiOiJ2cHN1YiIsITF9cmV0dXJuIEQmJkcuY29udGVudFByb3RlY3Rpb25bRC5mbGF2b3JdJiZELkpbRy5taW1lVHlwZV0/ITA6KHhbcl09RD9HLmNvbnRlbnRQcm90ZWN0aW9uW0QuZmxhdm9yXT8idW5zcHQiOiJub2ZsdiI6Im5vc3lzIiwhMSl9KTsKTC5sZW5ndGgmJihoW2VdPUwpfSk7CmImJk9iamVjdC5lbnRyaWVzKHgpLmxlbmd0aCYmdih7cmpyOmcuVEMoeCl9KTtpZihrLkopZm9yKGxldCBMIG9mIE9iamVjdC52YWx1ZXMoVykpaWYoTClmb3IobGV0IGUgb2YgTClXPXhbZS5pdGFnXSxlLk1XKCkmJlchPT12b2lkIDAmJihrLk5bZS5pdGFnXT1XKTtyZXR1cm4gaH07Ckc3VT1mdW5jdGlvbihuLFcpe3ZhciBEPWcudV8obiwoYix2KT0+di52aWRlby5KKCk/TWF0aC5taW4oYix2LnZpZGVvLndpZHRoKTpiLEluZmluaXR5KTsKRDxJbmZpbml0eSYmKG49bi5maWx0ZXIoYj0+e2lmKGIudmlkZW8uSigpfHxiLnZpZGVvLndpZHRoPEQpcmV0dXJuITA7V1tiLml0YWddPSJoZnJmaXJzdCI7cmV0dXJuITF9KSk7CmxiKCkmJihuPW4uZmlsdGVyKGI9PntpZihiLml0YWchPT0iMjk5IilyZXR1cm4hMDtXW2IuaXRhZ109InBzM2hmcjEwODAiO3JldHVybiExfSkpOwpyZXR1cm4gbn07CnEyQz1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIFc9Vy5maWx0ZXIoYj0+e2lmKGIudmlkZW8ucXVhbGl0eU9yZGluYWw8PW4ud2EpcmV0dXJuITA7RFtiLml0YWddPSJtYXhxdWFsaXR5IjtyZXR1cm4hMX0pfTsKdFQ9ZnVuY3Rpb24obixXLEQpe3ZhciBiPXt9O2ZvcihsZXQgdiBpbiBXLk4pe2lmKCFXLk4uaGFzT3duUHJvcGVydHkodikpY29udGludWU7bGV0IGs9Vy5OW3ZdLmluZm87aWYobi5ZJiZrLnZpZGVvJiZrLnZpZGVvLnF1YWxpdHlPcmRpbmFsPG4uWSl7RCYmKERbay5pdGFnXT1gbWluJHtuLll9YCk7Y29udGludWV9bGV0IGg9ay5JQjtiW2hdPWJbaF18fFtdO2JbaF0ucHVzaChrKX1mb3IobGV0IHYgb2YgT2JqZWN0LmtleXMoYikpSEEoYlt2XSk7cmV0dXJuIGJ9OwpmZz1mdW5jdGlvbihuKXtyZXR1cm4gZy51XyhuLChXLEQpPT5NYXRoLm1heChXLEQudmlkZW8ucXVhbGl0eU9yZGluYWwpLDApfTsKc0Q9ZnVuY3Rpb24obixXLEQsYj0hMSx2PW5ldyBTZXQpe2lmKFcuSUI9PT0iIilyZXR1cm4idW5rbiI7aWYoKFcuaXRhZz09PSIzMDQifHxXLml0YWc9PT0iMjY2IikmJm4udHcpcmV0dXJuImJsazJraGZyIjtpZihuLksmJlcudmlkZW8mJlcudmlkZW8ucXVhbGl0eU9yZGluYWw+bi5LKXJldHVybmBtYXgke24uS31gO2lmKG4uQ3UmJlcuSUI9PT0iaCImJlcudmlkZW8mJlcudmlkZW8ucXVhbGl0eU9yZGluYWw+MTA4MClyZXR1cm4iYmxraGlnaDI2NCI7aWYoVy5JQj09PSIoaCImJiFELkspcmV0dXJuImVuY2hkciI7aWYoYiYmbUYoVykmJiFuLm51KXJldHVybiJibGs1MWxpdmUiO2lmKChXLklCPT09Ik1BQzMifHxXLklCPT09Im1hYzMiKSYmIW4uailyZXR1cm4iYmxrYWMzIjtpZigoVy5JQj09PSJNRUFDMyJ8fFcuSUI9PT0ibWVhYzMiKSYmIW4uVilyZXR1cm4iYmxrZWFjMyI7aWYoVy5JQj09PSJNInx8Vy5JQj09PSJtIilyZXR1cm4iYmxrYWFjNTEiO2lmKChXLklCPT09InNvInx8ClcuSUI9PT0ic2EiKSYmIW4uY0opcmV0dXJuImJsa2FtYiI7aWYoIW4uSEQmJktnKFcpJiYoIUQuWHx8Vy5JQiE9PSIxZSIpKXJldHVybiJjYmMiO2lmKCFELlgmJktnKFcpJiZXLklCPT09IjFlIilyZXR1cm4iY2JjYXYxIjtpZigoVy5JQj09PSJpInx8Vy5JQj09PSJJIikmJiFuLlZRKXJldHVybiJibGtpYW1mIjtpZihuLlJhJiZXLmF1ZGlvPy5OPT09ITApcmV0dXJuImJsa3ZiY2FiciI7aWYobi5UQyYmVy52aWRlbz8uWD09PSExKXJldHVybiJibGttdHZjYWJyIjtpZihuLnZKJiYoVy5JQj09PSIxInx8Vy5JQj09PSIxaCJ8fEQuWCYmVy5JQj09PSIxZSIpJiZXLnZpZGVvPy5xdWFsaXR5T3JkaW5hbCYmVy52aWRlbz8ucXVhbGl0eU9yZGluYWw+bi52SilyZXR1cm4iYXYxY2FwIjtiPUQuVy5nZXQoVy5JQik7aWYoIW4ualcmJmImJmIuZzE+MClyZXR1cm4gdi5hZGQoVy5JQiksImJ5ZXJyIjtpZihXLnZpZGVvPy5KKCkpe2lmKCFELmJkJiYhU0ooRCxBVC5GUkFNRVJBVEUpKXJldHVybiJjYXBIZnIiOwppZihuLlBYJiZXLnZpZGVvLnF1YWxpdHlPcmRpbmFsPj00MzIwKXJldHVybiJibGs4a2hmciI7aWYoVy5YKCkmJm4uVTUmJlcuY29udGVudFByb3RlY3Rpb24mJlcudmlkZW8ucXVhbGl0eU9yZGluYWw+PTE0NDApcmV0dXJuImRpc2FibGV2cDloZnIifWlmKG4uTnMmJlcuTnM+bi5OcylyZXR1cm4icmF0ZWNhcCI7aWYobi5TJD4wJiZXLmZZKCkmJlcudmlkZW8uaGVpZ2h0Pm4uUyQpcmV0dXJuIm12aGNhcCI7bj1PRChELFcpO3JldHVybiBuIT09ITA/bjohMH07CkhBPWZ1bmN0aW9uKG4sVz1bXSl7Zy5iZihuLChELGIpPT57dmFyIHY9Yi5Ocy1ELk5zO2lmKCFELmZZKCl8fCFiLmZZKCkpcmV0dXJuIHY7dmFyIGs9Yi52aWRlby5oZWlnaHQqYi52aWRlby53aWR0aC1ELnZpZGVvLmhlaWdodCpELnZpZGVvLndpZHRoOyFrJiZXJiZXLmxlbmd0aD4wJiYoRD1XLmluZGV4T2YoRC5JQikrMSxiPVcuaW5kZXhPZihiLklCKSsxLGs9RD09PTB8fGI9PT0wP2J8fC0xOkQtYik7a3x8KGs9dik7cmV0dXJuIGt9KX07ClBBPWZ1bmN0aW9uKG4sVyl7aWYoVz5uLngkKCkpbi5zZWdtZW50cz1bXTtlbHNle3ZhciBEPWcuejQobi5zZWdtZW50cyxiPT5iLmokPj1XLG4pOwpEPjAmJm4uc2VnbWVudHMuc3BsaWNlKDAsRCl9fTsKWmM9ZnVuY3Rpb24obil7dmFyIFc9bi5kYXRhLmdldFVpbnQ4KG4ub2Zmc2V0K24uTik7bi5OKz0xO3JldHVybiBXfTsKVUQ9ZnVuY3Rpb24obil7dmFyIFc9bi5kYXRhLmdldFVpbnQxNihuLm9mZnNldCtuLk4pO24uTis9MjtyZXR1cm4gV307CnlMPWZ1bmN0aW9uKG4pe3ZhciBXPW4uZGF0YS5nZXRJbnQzMihuLm9mZnNldCtuLk4pO24uTis9NDtyZXR1cm4gV307CkVEPWZ1bmN0aW9uKG4pe3ZhciBXPW4uZGF0YS5nZXRVaW50MzIobi5vZmZzZXQrbi5OKTtuLk4rPTQ7cmV0dXJuIFd9OwppMz1mdW5jdGlvbihuKXt2YXIgVz1uLmRhdGE7dmFyIEQ9bi5vZmZzZXQrbi5OO1c9Vy5nZXRVaW50MzIoRCkqNDI5NDk2NzI5NitXLmdldFVpbnQzMihEKzQpO24uTis9ODtyZXR1cm4gV307CnUzPWZ1bmN0aW9uKG4sVz1OYU4pe2lmKGlzTmFOKFcpKXZhciBEPW4uc2l6ZTtlbHNlIGZvcihEPW4uTjtEPG4uc2l6ZSYmbi5kYXRhLmdldFVpbnQ4KG4ub2Zmc2V0K0QpIT09VzspKytEO1c9bmV3IFVpbnQ4QXJyYXkobi5kYXRhLmJ1ZmZlcixuLm9mZnNldCtuLk4rbi5kYXRhLmJ5dGVPZmZzZXQsRC1uLk4pO24uTj1NYXRoLm1pbihEKzEsbi5zaXplKTtyZXR1cm4gcFIoVyl9Owpvcj1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IFVpbnQ4QXJyYXkobi5kYXRhLmJ1ZmZlcixuLm9mZnNldCtuLmRhdGEuYnl0ZU9mZnNldCxuLnNpemUpfTsKZEY9ZnVuY3Rpb24obixXLEQsYil7KG5ldyBVaW50OEFycmF5KG4uZGF0YS5idWZmZXIsbi5vZmZzZXQsYikpLnNldChuZXcgVWludDhBcnJheShXLmJ1ZmZlcixEK1cuYnl0ZU9mZnNldCxiKSk7bi5vZmZzZXQrPWJ9Owp6Xz1mdW5jdGlvbihuLFcpe3JldHVybiBOdW1iZXIobi5kYXRhW1ddKXx8MH07ClRfPWZ1bmN0aW9uKG4pe3JldHVybiBuLmRhdGFbIkN1ZXBvaW50LVR5cGUiXT9uZXcgZy5sMygtKE51bWJlcihuLmRhdGFbIkN1ZXBvaW50LVBsYXloZWFkLVRpbWUtU2VjIl0pfHwwKSxOdW1iZXIobi5kYXRhWyJDdWVwb2ludC1Ub3RhbC1EdXJhdGlvbi1TZWMiXSl8fDAsbi5kYXRhWyJDdWVwb2ludC1Db250ZXh0Il0sbi5kYXRhWyJDdWVwb2ludC1JZGVudGlmaWVyIl18fCIiLG01altuLmRhdGFbIkN1ZXBvaW50LUV2ZW50Il18fCIiXXx8InVua25vd24iLChOdW1iZXIobi5kYXRhWyJDdWVwb2ludC1QbGF5aGVhZC1UaW1lLVNlYyJdKXx8MCkqMUUzKTpudWxsfTsKako9ZnVuY3Rpb24obil7cmV0dXJuIE51bWJlcihuLmRhdGFbIlN0YXJ0LU1lZGlhLVRpbWUtVXMiXSkvMUU2fHwwfTsKQ2c9ZnVuY3Rpb24obil7cmV0dXJuIG4uZGF0YVsiU3RpdGNoZWQtVmlkZW8tSWQiXT9uLmRhdGFbIlN0aXRjaGVkLVZpZGVvLUlkIl0uc3BsaXQoIiwiKS5zbGljZSgwLC0xKTpbXX07CkJBPWZ1bmN0aW9uKG4pe3ZhciBXPVtdO2lmKG4uZGF0YVsiU3RpdGNoZWQtVmlkZW8tRHVyYXRpb24tVXMiXSlmb3IobGV0IEQgb2Ygbi5kYXRhWyJTdGl0Y2hlZC1WaWRlby1EdXJhdGlvbi1VcyJdLnNwbGl0KCIsIikuc2xpY2UoMCwtMSkpVy5wdXNoKChOdW1iZXIoRCl8fDApLzFFNik7cmV0dXJuIFd9OwpGcD1mdW5jdGlvbihuKXt2YXIgVz1bXTtpZihuLmRhdGFbIlN0aXRjaGVkLVZpZGVvLVN0YXJ0LUZyYW1lLUluZGV4Il0pZm9yKGxldCBEIG9mIG4uZGF0YVsiU3RpdGNoZWQtVmlkZW8tU3RhcnQtRnJhbWUtSW5kZXgiXS5zcGxpdCgiLCIpLnNsaWNlKDAsLTEpKVcucHVzaChOdW1iZXIoRCl8fDApO3JldHVybiBXfTsKd0Y9ZnVuY3Rpb24obil7dmFyIFc9W107aWYobi5kYXRhWyJTdGl0Y2hlZC1WaWRlby1TdGFydC1UaW1lLVdpdGhpbi1BZC1VcyJdKWZvcihsZXQgRCBvZiBuLmRhdGFbIlN0aXRjaGVkLVZpZGVvLVN0YXJ0LVRpbWUtV2l0aGluLUFkLVVzIl0uc3BsaXQoIiwiKS5zbGljZSgwLC0xKSlXLnB1c2goKE51bWJlcihEKXx8MCkvMUU2KTtyZXR1cm4gV307CmcuTWQ9ZnVuY3Rpb24obil7cmV0dXJuIG4uZGF0YVsiU2VyaWFsaXplZC1TdGF0ZSJdP24uZGF0YVsiU2VyaWFsaXplZC1TdGF0ZSJdOiIifTsKZy5Scj1mdW5jdGlvbihuKXtzd2l0Y2gobi5kYXRhWyJJcy1BZC1CcmVhay1GaW5pc2hlZCJdKXtjYXNlICJ0cnVlIjpyZXR1cm4gMTtjYXNlICJmYWxzZSI6cmV0dXJuIDI7ZGVmYXVsdDpyZXR1cm4gMH19OwpRTD1mdW5jdGlvbihuKXt2YXIgVz17fTtuPW4uc3BsaXQoIlxyXG4iKTtmb3IobGV0IEQ9MDtEPG4ubGVuZ3RoO0QrKyl7aWYobltEXS5sZW5ndGg9PT0wKXJldHVybiBXO2xldCBiPW5bRF0ubWF0Y2goLyhbXjpdKyk6XHMrKFtcU1xzXSspLyk7YiE9bnVsbCYmKFdbYlsxXV09YlsyXSl9cmV0dXJuIG51bGx9OwpnLm5zPWZ1bmN0aW9uKG4sVyxEKXtmb3IoO1ZMKG4sVyk7KXtsZXQgYj1jQShuLFcpO2lmKGIudHlwZT09PUQpcmV0dXJuIGI7Vz1hcihiLnR5cGUpP1crODpXK2Iuc2l6ZX1yZXR1cm4gbnVsbH07Cld3PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5ucyhuLDAsMTk1Mjg2ODQ1Mik7bj1nLm5zKG4sMCwxOTUzNjU4MjIyKTtpZihEJiZuKXtELnNraXAoMSk7dmFyIGI9WmMoRCk8PDE2fFVEKEQpO0Quc2tpcCg0KTtiJjEmJkQuc2tpcCg4KTtiJjImJkQuc2tpcCg0KTtpZihiJjgpe2I9RC5OO3ZhciB2PUVEKEQpO0QuZGF0YS5zZXRVaW50MzIoRC5vZmZzZXQrYixXPjE/TWF0aC5jZWlsKHYqVyk6TWF0aC5mbG9vcih2KlcpKX1uLnNraXAoMSk7RD1aYyhuKTw8MTZ8VUQobik7aWYoRCYyNTYpe2I9RCYxO3Y9RCY0O3ZhciBrPUQmNTEyLGg9RCYxMDI0LHg9RCYyMDQ4O0Q9RUQobik7YiYmbi5za2lwKDQpO3YmJm4uc2tpcCg0KTtiPShrPzQ6MCkrKGg/NDowKSsoeD80OjApO2Zvcih2PTA7djxEO3YrKylrPW4uTixoPUVEKG4pLG4uZGF0YS5zZXRVaW50MzIobi5vZmZzZXQrayxXPjE/TWF0aC5jZWlsKGgqVyk6TWF0aC5mbG9vcihoKlcpKSxuLnNraXAoYil9fX07ClZMPWZ1bmN0aW9uKG4sVyl7aWYobi5ieXRlTGVuZ3RoLVc8OClyZXR1cm4hMTt2YXIgRD1uLmdldFVpbnQzMihXKTtpZihEPDh8fG4uYnl0ZUxlbmd0aC1XPEQpcmV0dXJuITE7Zm9yKEQ9NDtEPDg7RCsrKXtsZXQgYj1uLmdldEludDgoVytEKTtpZihiPDQ4fHxiPjEyMilyZXR1cm4hMX1yZXR1cm4hMH07CmNBPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5nZXRVaW50MzIoVyksYj1uLmdldFVpbnQzMihXKzQpO3JldHVybiBuZXcgRF8obixXLEQsYil9OwpnLmJMPWZ1bmN0aW9uKG4pe3ZhciBXPW4uZGF0YS5nZXRVaW50OChuLmRhdGFPZmZzZXQpPzIwOjEyO3JldHVybiBuLmRhdGEuZ2V0VWludDMyKG4uZGF0YU9mZnNldCtXKX07CnZ3PWZ1bmN0aW9uKG4pe249bmV3IERhdGFWaWV3KG4uYnVmZmVyLG4uYnl0ZU9mZnNldCxuLmJ5dGVMZW5ndGgpO3JldHVybihuPWcubnMobiwwLDE4MzY0NzY1MTYpKT9nLmJMKG4pOk5hTn07Cmt4PWZ1bmN0aW9uKG4sVyxEKXtmb3IoO1ZMKG4sVyk7KXtsZXQgYj1jQShuLFcpO2lmKGIudHlwZT09PUQpcmV0dXJuIGI7Vys9Yi5zaXplfXJldHVybiBudWxsfTsKYXI9ZnVuY3Rpb24obil7cmV0dXJuIG49PT0xNzAxMDgyMjI3fHxuPT09MTgzNjAxOTU1OHx8bj09PTE4MzYwMTk1NzR8fG49PT0xODM1Mjk3MTIxfHxuPT09MTgzNTYyNjA4Nnx8bj09PTE5MzcwMDcyMTJ8fG49PT0xOTUzNjUzMDk0fHxuPT09MTk1MzY1MzA5OXx8bj09PTE4MzY0NzU3Njh9OwpLaDI9ZnVuY3Rpb24obil7dmFyIFc9Zy5ucyhuLDAsMTkzNzAxMTU1Nik7aWYoIVcpcmV0dXJuIG51bGw7Vz1reChuLFcuZGF0YU9mZnNldCs4LDE2MzUxNDg1OTMpfHxreChuLFcuZGF0YU9mZnNldCs4LDE2MzUxMzU1MzcpO2lmKCFXKXJldHVybiBudWxsO3ZhciBEPWt4KG4sVy5kYXRhT2Zmc2V0Kzc4LDE5MzY5OTUxNzIpLGI9a3gobixXLmRhdGFPZmZzZXQrNzgsMTkzNzEyNjI0NCk7aWYoIWIpcmV0dXJuIG51bGw7Vz1udWxsO2lmKEQpc3dpdGNoKEQuc2tpcCg0KSxaYyhEKSl7ZGVmYXVsdDpXPTA7YnJlYWs7Y2FzZSAxOlc9MjticmVhaztjYXNlIDI6Vz0xO2JyZWFrO2Nhc2UgMzpXPTI1NX12YXIgdj1EPW51bGwsaz1udWxsO2lmKGI9a3gobixiLmRhdGFPZmZzZXQsMTg4NjU0NzgxOCkpe2xldCBoPWt4KG4sYi5kYXRhT2Zmc2V0LDE4ODY1NDYwMjApLHg9a3gobixiLmRhdGFPZmZzZXQsMjAzNzY3MzMyOCk7aWYoIXgmJih4PWt4KG4sYi5kYXRhT2Zmc2V0LDE4MzYyNzk5MjApLAoheCkpcmV0dXJuIG51bGw7aCYmKGguc2tpcCg0KSxEPXlMKGgpLzY1NTM2LGs9eUwoaCkvNjU1MzYsdj15TChoKS82NTUzNik7bj1vcih4KTtuPW5ldyBEYXRhVmlldyhuLmJ1ZmZlcixuLmJ5dGVPZmZzZXQrOCxuLmJ5dGVMZW5ndGgtOCk7cmV0dXJuIG5ldyBoWShXLEQsayx2LG4pfXJldHVybiBudWxsfTsKZy54eD1mdW5jdGlvbihuKXtpZihuLmRhdGEuZ2V0VWludDgobi5kYXRhT2Zmc2V0KSl7dmFyIFc9bi5kYXRhO249bi5kYXRhT2Zmc2V0KzQ7Vz1XLmdldFVpbnQzMihuKSo0Mjk0OTY3Mjk2K1cuZ2V0VWludDMyKG4rNCl9ZWxzZSBXPW4uZGF0YS5nZXRVaW50MzIobi5kYXRhT2Zmc2V0KzQpO3JldHVybiBXfTsKTHM9ZnVuY3Rpb24obil7bj1uZXcgRF8obi5kYXRhLG4ub2Zmc2V0LG4uc2l6ZSxuLnR5cGUsbi5KKTt2YXIgVz1aYyhuKTtuLnNraXAoNyk7dmFyIEQ9RUQobik7aWYoVz09PTApe1c9RUQobik7dmFyIGI9RUQobil9ZWxzZSBXPWkzKG4pLGI9aTMobik7bi5za2lwKDIpO3ZhciB2PVVEKG4pLGs9W10saD1bXTtmb3IobGV0IHg9MDt4PHY7eCsrKXtsZXQgTD1FRChuKTtrLnB1c2goTCk7aC5wdXNoKEVEKG4pKTtuLnNraXAoNCl9cmV0dXJue3RpbWVzY2FsZTpELGY4OlcsTm86YixIczprLHFnOmh9fTsKZy5lUD1mdW5jdGlvbihuLFcpe2Zvcih2YXIgRD0wLGI9W107VkwobixEKTspe2xldCB2PWNBKG4sRCk7di50eXBlPT09VyYmYi5wdXNoKHYpO0Q9YXIodi50eXBlKT9EKzg6RCt2LnNpemV9cmV0dXJuIGJ9OwpnQT1mdW5jdGlvbihuKXtuLnNraXAoNCk7cmV0dXJue1d6OnUzKG4sMCksdmFsdWU6dTMobiwwKSx0aW1lc2NhbGU6RUQobiksbzc6RUQobiksZXZlbnREdXJhdGlvbjpFRChuKSxpZDpFRChuKSxadzp1MyhuKSxvZmZzZXQ6bi5vZmZzZXR9fTsKZy5xaz1mdW5jdGlvbihuKXt2YXIgVz1reChuLDAsMTcwMTY3MTc4Myk7aWYoIVcpcmV0dXJuIG51bGw7dmFyIEQ9Z0EoVyksYj1ELld6O0Q9UUwoRC5adyk7aWYobj1reChuLFcub2Zmc2V0K1cuc2l6ZSwxNzAxNjcxNzgzKSlpZihuPWdBKG4pLG49UUwobi5adyksRCYmbilmb3IobGV0IHYgb2YgT2JqZWN0LmtleXMobikpRFt2XT1uW3ZdO3JldHVybiBEP25ldyBYNShELGIpOm51bGx9OwpHaj1mdW5jdGlvbihuLFcpe2Zvcih2YXIgRD1reChuLDAsVyk7RDspe3ZhciBiPUQ7Yi50eXBlPTE5MzY0MTkxODQ7Yi5kYXRhLnNldFVpbnQzMihiLm9mZnNldCs0LDE5MzY0MTkxODQpO0Q9a3gobixELm9mZnNldCtELnNpemUsVyl9fTsKUElDPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5ucyhuLDAsMTkzNzAxMTU1NiksYj1nLm5zKG4sMCwxOTUzNjU0MTM2KTtpZighRHx8IWJ8fG4uZ2V0VWludDMyKEQub2Zmc2V0KzEyKT49MilyZXR1cm4gbnVsbDt2YXIgdj1uZXcgRGF0YVZpZXcoVy5idWZmZXIsVy5ieXRlT2Zmc2V0LFcubGVuZ3RoKSxrPWcubnModiwwLDE5MzcwMTE1NTYpO2lmKCFrKXJldHVybiBudWxsO1c9di5nZXRVaW50MzIoay5kYXRhT2Zmc2V0KzgpO2I9di5nZXRVaW50MzIoay5kYXRhT2Zmc2V0KzEyKTtpZihiIT09MTcwMTczMzIxNyYmYiE9PTE3MDE3MzMyMzgpcmV0dXJuIG51bGw7Yj1uZXcgT0t0KG4uYnl0ZUxlbmd0aCtXKTtkRihiLG4sMCxELm9mZnNldCsxMik7Yi5kYXRhLnNldEludDMyKGIub2Zmc2V0LDIpO2Iub2Zmc2V0Kz00O2RGKGIsbixELm9mZnNldCsxNixELnNpemUtMTYpO2RGKGIsdix2LmJ5dGVPZmZzZXQray5kYXRhT2Zmc2V0KzgsVyk7ZEYoYixuLEQub2Zmc2V0K0Quc2l6ZSxuLmJ5dGVMZW5ndGgtCihELm9mZnNldCtELnNpemUpKTtEPVsxODM2MDE5NTc0LDE5NTM2NTMwOTksMTgzNTI5NzEyMSwxODM1NjI2MDg2LDE5MzcwMDcyMTIsMTkzNzAxMTU1Nl07Zm9yKGxldCBoIG9mIEQpRD1nLm5zKG4sMCxoKSxiLmRhdGEuc2V0VWludDMyKEQub2Zmc2V0LEQuc2l6ZStXKTtuPWcubnMoYi5kYXRhLDAsMTk1MzY1NDEzNik7Yi5kYXRhLnNldFVpbnQzMihuLm9mZnNldCsxNiwyKTtyZXR1cm4gYi5kYXRhfTsKWktaPWZ1bmN0aW9uKG4pe3ZhciBXPWcubnMobiwwLDE5MzcwMTE1NTYpO2lmKCFXKXJldHVybiBudWxsO3ZhciBEPW4uZ2V0VWludDMyKFcuZGF0YU9mZnNldCsxMik7aWYoRCE9PTE3MDE3MzMyMTcmJkQhPT0xNzAxNzMzMjM4KXJldHVybiBudWxsO1c9a3gobixXLm9mZnNldCsyNCsoRD09PTE3MDE3MzMyMTc/Mjg6NzgpLDE5MzYyODkzODIpO2lmKCFXKXJldHVybiBudWxsO0Q9a3gobixXLm9mZnNldCs4LDE5MzU4OTQ2MzcpO2lmKCFEfHxuLmdldFVpbnQzMihELm9mZnNldCsxMikhPT0xNjY3MzkyMzcxKXJldHVybiBudWxsO1c9a3gobixXLm9mZnNldCs4LDE5MzU4OTQ2MzMpO2lmKCFXKXJldHVybiBudWxsO1c9a3gobixXLm9mZnNldCs4LDE5NTI4MDQ0NTEpO2lmKCFXKXJldHVybiBudWxsO0Q9bmV3IFVpbnQ4QXJyYXkoMTYpO2ZvcihsZXQgYj0wO2I8MTY7YisrKURbYl09bi5nZXRJbnQ4KFcub2Zmc2V0KzE2K2IpO3JldHVybiBEfTsKWXg9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW5ldyB0WShEKTtpZighJHgoYixuKSlyZXR1cm4hMTtiPXJBKGIpO2lmKCFzWShiLFcpKXJldHVybiExO2ZvcihuPTA7VzspVz4+Pj04LG4rKztXPWIuc3RhcnQrYi5wb3M7dmFyIHY9TmsoYiwhMCk7Yj1uKyhiLnN0YXJ0K2IucG9zLVcpK3Y7Yj1iPjk/cHMoYi05LDgpOnBzKGItMiwxKTtuPVctbjtELnNldFVpbnQ4KG4rKywyMzYpO2ZvcihXPTA7VzxiLmxlbmd0aDtXKyspRC5zZXRVaW50OChuKyssYltXXSk7cmV0dXJuITB9Owpwcz1mdW5jdGlvbihuLFcpe1d8fChXPU1hdGguY2VpbChNYXRoLmxvZyhuKzIpL01hdGgubG9nKDIpLzcpKTtmb3IodmFyIEQ9MTw8OC1XLGI9W107Yi5sZW5ndGg8Vy0xOyliLnVuc2hpZnQobiUyNTYpLG49TWF0aC5mbG9vcihuLzI1Nik7Yi51bnNoaWZ0KG58RCk7cmV0dXJuIGJ9OwpVNVo9ZnVuY3Rpb24obil7dmFyIFc9bmV3IHRZKG4pO1cuT0ooKTtpZigkeChXLFs0MDgxMjU1NDMsMzc0NjQ4NDI3LDE3NCwyMjRdKSlXPXJBKFcpO2Vsc2UgcmV0dXJuIG51bGw7Zm9yKHZhciBEPW49bnVsbDshSHcoVyk7KXt2YXIgYj1OayhXLCExKTtpZihiPT09MjE0MzIpc3dpdGNoKGZzKFcpKXtkZWZhdWx0Om49MDticmVhaztjYXNlIDE6bj0xO2JyZWFrO2Nhc2UgMzpuPTI7YnJlYWs7Y2FzZSAxNTpuPTI1NX1lbHNlIGI9PT0zMDMyMD9EPXJBKFcpOkpZKFcpfWlmKCFEKXJldHVybiBudWxsO2Zvcih2YXIgdixrPWI9Vz1udWxsOyFIdyhEKTspc3dpdGNoKE5rKEQsITEpKXtjYXNlIDMwMzIxOmlmKGZzKEQpIT09MylyZXR1cm4gbnVsbDticmVhaztjYXNlIDMwMzI0Olc9SUIoRCk7YnJlYWs7Y2FzZSAzMDMyMzprPUlCKEQpO2JyZWFrO2Nhc2UgMzAzMjU6Yj1JQihEKTticmVhaztjYXNlIDMwMzIyOnY9TmsoRCwhMCk7dj1TUChELHYpO3Y9bmV3IERhdGFWaWV3KHYuYnVmZmVyLAp2LmJ5dGVPZmZzZXQsdi5ieXRlTGVuZ3RoKTticmVhaztkZWZhdWx0OkpZKEQpfXJldHVybiB2P25ldyBoWShuLFcsayxiLHYpOm51bGx9OwokeD1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRD0wO0Q8Vy5sZW5ndGg7RCsrKXtpZighc1kobixXW0RdKSlyZXR1cm4hMTtEIT09Vy5sZW5ndGgtMSYmTmsobiwhMCl9cmV0dXJuITB9OwpyQT1mdW5jdGlvbihuKXt2YXIgVz1OayhuLCEwKSxEPW4uTi5ieXRlT2Zmc2V0K24ucG9zO0Q9bmV3IERhdGFWaWV3KG4uTi5idWZmZXIsRCxNYXRoLm1pbihXLG4uTi5idWZmZXIuYnl0ZUxlbmd0aC1EKSk7RD1uZXcgdFkoRCxuLnN0YXJ0K24ucG9zKTtuLnBvcys9VztyZXR1cm4gRH07CnNZPWZ1bmN0aW9uKG4sVyxEPSExKXtpZihIdyhuKSlyZXR1cm4hMTtmb3IodmFyIGI9bi5wb3M7TmsobiwhMSkhPT1XOylpZihKWShuKSxiPW4ucG9zLEh3KG4pKXJldHVybiExO0QmJihuLnBvcz1iKTtyZXR1cm4hMH07Ck5rPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9QVkobik7aWYoRD09PTEpe0Q9MDtmb3IoVz0wO1c8NztXKyspRD1EKjI1NitBWShuKTtyZXR1cm4gRH12YXIgYj0xMjg7Zm9yKGxldCB2PTA7djw2JiZiPkQ7disrKUQ9RCoyNTYrQVkobiksYio9MTI4O3JldHVybiBXP0QtYjpEfTsKSHc9ZnVuY3Rpb24obil7cmV0dXJuIG4ucG9zPj1uLk4uYnl0ZUxlbmd0aH07CmZzPWZ1bmN0aW9uKG4pe3ZhciBXPU5rKG4sITApLEQ9QVkobik7Zm9yKGxldCBiPTE7YjxXO2IrKylEPUQqMjU2K0FZKG4pO3JldHVybiBEfTsKSlk9ZnVuY3Rpb24obil7dmFyIFc9TmsobiwhMCk7bi5wb3MrPVd9OwpJQj1mdW5jdGlvbihuKXt2YXIgVz1OayhuLCEwKSxEPTA7Vz09PTQ/RD1uLk4uZ2V0RmxvYXQzMihuLnBvcyk6Vz09PTgmJihEPW4uTi5nZXRGbG9hdDY0KG4ucG9zKSk7bi5wb3MrPVc7cmV0dXJuIER9OwpTUD1mdW5jdGlvbihuLFcpe3ZhciBEPW5ldyBVaW50OEFycmF5KG4uTi5idWZmZXIsbi5OLmJ5dGVPZmZzZXQrbi5wb3MsVyk7bi5wb3MrPVc7cmV0dXJuIER9OwptdD1mdW5jdGlvbihuKXt2YXIgVz1OayhuLCEwKTtyZXR1cm4gcFIoU1AobixXKSl9OwpBWT1mdW5jdGlvbihuKXtyZXR1cm4gbi5OLmdldFVpbnQ4KG4ucG9zKyspfTsKeUhyPWZ1bmN0aW9uKG4pe2lmKCFzWShuLDQ0MDc4Njg1MSwhMCkpcmV0dXJuIG51bGw7dmFyIFc9bi5wb3M7TmsobiwhMSk7dmFyIEQ9TmsobiwhMCkrbi5wb3MtVztuLnBvcz1XK0Q7aWYoIXNZKG4sNDA4MTI1NTQzLCExKSlyZXR1cm4gbnVsbDtOayhuLCEwKTtpZighc1kobiwzNTcxNDkwMzAsITApKXJldHVybiBudWxsO3ZhciBiPW4ucG9zO05rKG4sITEpO3ZhciB2PU5rKG4sITApK24ucG9zLWI7bi5wb3M9Yit2O2lmKCFzWShuLDM3NDY0ODQyNywhMCkpcmV0dXJuIG51bGw7dmFyIGs9bi5wb3M7TmsobiwhMSk7dmFyIGg9TmsobiwhMCkrbi5wb3Mtayx4PW5ldyBVaW50OEFycmF5KEQrMTIrditoKSxMPW5ldyBEYXRhVmlldyh4LmJ1ZmZlcik7eC5zZXQobmV3IFVpbnQ4QXJyYXkobi5OLmJ1ZmZlcixuLk4uYnl0ZU9mZnNldCtXLEQpKTtMLnNldFVpbnQzMihELDQwODEyNTU0Myk7TC5zZXRVaW50MzIoRCs0LDMzNTU0NDMxKTtMLnNldFVpbnQzMihEKzgsNDI5NDk2NzI5NSk7Cnguc2V0KG5ldyBVaW50OEFycmF5KG4uTi5idWZmZXIsbi5OLmJ5dGVPZmZzZXQrYix2KSxEKzEyKTt4LnNldChuZXcgVWludDhBcnJheShuLk4uYnVmZmVyLG4uTi5ieXRlT2Zmc2V0K2ssaCksRCsxMit2KTtyZXR1cm4geH07CktzPWZ1bmN0aW9uKG4pe3ZhciBXPW4ucG9zO24ucG9zPTA7dmFyIEQ9MUU2OyR4KG4sWzQwODEyNTU0MywzNTcxNDkwMzAsMjgwNzcyOV0pJiYoRD1mcyhuKSk7bi5wb3M9VztyZXR1cm4gRH07ClB3PWZ1bmN0aW9uKG4pe2lmKCFPWShuKXx8IXNZKG4sNTI0NTMxMzE3KSlyZXR1cm4hMTtOayhuLCEwKTtyZXR1cm4hMH07CkVFWj1mdW5jdGlvbihuLFcpe3ZhciBEPW4ucG9zO24ucG9zPTA7aWYobi5OLmdldFVpbnQ4KG4ucG9zKSE9PTE2MCYmIVB3KG4pfHwhc1kobiwxNjApKXJldHVybiBuLnBvcz1ELE5hTjtOayhuLCEwKTt2YXIgYj1uLnBvcztpZighc1kobiwxNjEpKXJldHVybiBuLnBvcz1ELE5hTjtOayhuLCEwKTtBWShuKTt2YXIgdj1BWShuKTw8OHxBWShuKTtuLnBvcz1iO2lmKCFzWShuLDE1NSkpcmV0dXJuIG4ucG9zPUQsTmFOO2I9ZnMobik7bi5wb3M9RDtyZXR1cm4oditiKSpXLzFFOX07Ck9ZPWZ1bmN0aW9uKG4pe2lmKG4uT0ooKSl7aWYoIXNZKG4sNDA4MTI1NTQzKSlyZXR1cm4hMTtOayhuLCEwKX1yZXR1cm4hMH07ClpfPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Vy5pbmRleE9mKCI/Iik7aWYoRD4wKXtsZXQgYj1nNygxLDUwLFcuc3Vic3RyaW5nKEQrMSkpO2cuYV8oYixmdW5jdGlvbih2LGspe3RoaXMuc2V0KGssdil9LG4pOwpXPVcuc3Vic3RyaW5nKDAsRCl9Vz1pcCgxNSw4MjUsVyk7Zy5hXyhXLGZ1bmN0aW9uKGIsdil7dGhpcy5zZXQodixiKX0sbil9OwppS1U9ZnVuY3Rpb24obil7dmFyIFc9bi5BTy5XRCgpLEQ9W107Zy5hXyhuLk4sKHYsayk9PntELnB1c2goYCR7a309JHt2fWApfSk7CmlmKCFELmxlbmd0aClyZXR1cm4gVzt2YXIgYj1ELmpvaW4oIiYiKTtuPVAwKDgzLDY1ODgsbi5BTyk/IiYiOiI/IjtyZXR1cm4gVytuK2J9OwpVWT1mdW5jdGlvbihuLFcpe25bV118fChuW1ddPW5ldyB1VGkpO3JldHVybiBuW1ddfTsKeWY9ZnVuY3Rpb24obixXPSExKXtXJiYobi5KKz0xKTtuLk4rPTF9OwpvRWk9ZnVuY3Rpb24obixXPSExKXtuLnRpbWVkT3V0Kz0xO1cmJnlmKG4sITApfTsKemo9ZnVuY3Rpb24obixXPSExKXtXJiYobi5YPSgwLGcuUikoKSxuLko9MCk7bi5WPSgwLGcuUikoKTtuLnN0YXJ0ZWQ9MDtuLnRpbWVkT3V0PTA7bi5OPTB9OwpsTD1mdW5jdGlvbihuLFcsRD0hMSl7aWYoRClyZXR1cm4gMTw8TWF0aC5taW4obi5KLDUpO0Q9bi5zdGFydGVkK24uTio0O1cmJihEKz1uLlcpO0Q9TWF0aC5tYXgoMCxELTMpO3JldHVybiAxLjYqKkR9OwpqUD1mdW5jdGlvbihuLFcsRCl7aWYoZ1ooMzgsMTIwMixuLk4pKXJldHVybiExO3ZhciBiPVVZKEQsUjAoMzUsMzUwNyxuLk4pKTtpZihiLnRpbWVkT3V0PDEmJmIuTjwxKXJldHVybiExO2I9Yi50aW1lZE91dCtiLk47bj1UaihuLFcpO0Q9VVkoRCxSMCgzMiwzNTA0LG4pKTtyZXR1cm4gRC50aW1lZE91dCtELk4rMDxifTsKVGo9ZnVuY3Rpb24obixXKXtXPVc/Vy5vTTohMTtuLlh8fChuLlg9WGQobi5XLFcpKTtyZXR1cm4gbi5YfTsKQnc9ZnVuY3Rpb24obixXLEQpe249Vz9UaihuLEQpOm4uTjtyZXR1cm4gbmV3IENzKG4pfTsKRjU9ZnVuY3Rpb24obixXLEQpe3JldHVybiBSMCgzNSwzNTA3LFc/VGoobixEKTpuLk4pfTsKd0E9ZnVuY3Rpb24obixXLEQsYix2KXsrK24uSjtXJiYrK24uVjtSMCgzMiwzNTA0LEQuQU8pLnN0YXJ0c1dpdGgoInJlZGlyZWN0b3IuIikmJihuLk49bi5XLmNsb25lKCksZGVsZXRlIG4uWCxiLnBFJiZkZWxldGUgdltSMCg2NywzNTM5LG4uTildKX07Ck1rPWZ1bmN0aW9uKG4pe3JldHVybiBuP2Ake24uaXRhZ3x8IiJ9OyR7bi5sbXR8fDB9OyR7bi54dGFnc3x8IiJ9YDoiIn07ClFmPWZ1bmN0aW9uKG4sVyl7bi5pbmZvJiZuLmluZm8udmlkZW8mJm4uaW5mby52aWRlby5wcm9qZWN0aW9uVHlwZT09PSJNRVNIIiYmIW4uTyYmKGcuUkIobi5pbmZvKT9uLk89S2gyKFcpOm4uaW5mby5xSCgpJiYobi5PPVU1WihXKSkpfTsKY3c9ZnVuY3Rpb24obixXKXtyZXR1cm4gTWsoZy5WZihuLmluZm8sVykpfTsKbno9ZnVuY3Rpb24obil7bj1uLnNwbGl0KCItIik7dmFyIFc9TnVtYmVyKG5bMF0pLEQ9TnVtYmVyKG5bMV0pO2lmKCFpc05hTihXKSYmIWlzTmFOKEQpJiZuLmxlbmd0aD09PTImJihuPW5ldyBhQihXLEQpLCFpc05hTihuLnN0YXJ0KSYmIWlzTmFOKG4uZW5kKSYmIWlzTmFOKG4ubGVuZ3RoKSYmbi5sZW5ndGg+MCkpcmV0dXJuIG59OwpXXz1mdW5jdGlvbihuLFcpe3JldHVybiBuZXcgYUIobixuK1ctMSl9OwpESj1mdW5jdGlvbihuKXtpZighbilyZXR1cm4gbmV3IGFCKDAsMCk7dmFyIFc9TnVtYmVyKG4uc3RhcnQpO249TnVtYmVyKG4uZW5kKTtpZighaXNOYU4oVykmJiFpc05hTihuKSYmKFc9bmV3IGFCKFcsbiksVy5sZW5ndGg+MCkpcmV0dXJuIFd9OwpkNXc9ZnVuY3Rpb24obil7bi5sZW5ndGg9PT0xfHxnLmR6KG4sRD0+ISFELnJhbmdlKTsKZm9yKHZhciBXPTE7VzxuLmxlbmd0aDtXKyspO1c9bltuLmxlbmd0aC0xXTtyZXR1cm4gbmV3IGFCKG5bMF0ucmFuZ2Uuc3RhcnQrblswXS5OLFcucmFuZ2Uuc3RhcnQrVy5OK1cuSi0xKX07CmJUPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4uUEo9PT1XLlBKP24ucmFuZ2UmJlcucmFuZ2U/bi5yYW5nZS5zdGFydCtuLk4rbi5KPT09Vy5yYW5nZS5zdGFydCtXLk46bi5qJD09PVcuaiQ/bi5OK24uSj09PVcuTjpuLmokKzE9PT1XLmokJiZXLk49PT0wJiZuLmFaOiExfTsKdl89ZnVuY3Rpb24obil7bi5YPW4uc2VnbWVudFN0YXJ0VGltZTtuLks9bi5XO24uaj1uLlgrbi5LfTsKa049ZnVuY3Rpb24obil7cmV0dXJuIG4ucmFuZ2U/bi5qOk1hdGgubWluKG4uc2VnbWVudFN0YXJ0VGltZStNYXRoLm1pbihuLk4vbi5QSi5pbmZvLk5zLG4uVykrKG4ucmFuZ2U/bi5LOk1hdGgubWluKG4uVyxuLkovbi5QSi5pbmZvLk5zKSksbi5zZWdtZW50U3RhcnRUaW1lK24uVyl9Owp6QTI9ZnVuY3Rpb24obixXLEQpe3ZhciBiPSEoIVd8fFcuUEohPT1uLlBKfHxXLnR5cGUhPT1uLnR5cGV8fFcuaiQhPT1uLmokKTtyZXR1cm4gRD9iJiYhIVcmJihuLnJhbmdlJiZXLnJhbmdlP1cucmFuZ2UuZW5kPT09bi5yYW5nZS5lbmQ6Vy5yYW5nZT09PW4ucmFuZ2UpJiZXLk4rVy5KPT09bi5OK24uSjpifTsKaEo9ZnVuY3Rpb24obil7cmV0dXJuIG4udHlwZT09PTF8fG4udHlwZT09PTJ9Owp4Tj1mdW5jdGlvbihuKXtyZXR1cm4gbi50eXBlPT09M3x8bi50eXBlPT09Nn07Ckx6PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGJUKG4sVyl8fE1hdGguYWJzKG4uai1XLlgpPD0xRS02fHxuLmokKzE9PT1XLmokJiZXLk49PT0wJiZuLmFaPyEwOiExfTsKZXg9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5qJCE9PVcuaiQmJlcuaiQhPT1uLmokKzF8fG4udHlwZSE9PVcudHlwZT8hMTpiVChuLFcpPyEwOk1hdGguYWJzKG4uWC1XLlgpPD0xRS02JiZuLmokPT09Vy5qJD8hMTpMeihuLFcpfTsKZ2s9ZnVuY3Rpb24obil7cmV0dXJuIG4uaiQrKG4uYVo/MTowKX07Clh4PWZ1bmN0aW9uKG4pe3ZhciBXPXt9O1cuaXRhZz1uLlBKLmluZm8uaXRhZztXLnR5cGU9YCR7bi50eXBlfWA7Vy5zcmM9YCR7bi5zb3VyY2V9YDtXLnNlZ3NyYz1uLlk7Vy5zZWc9U3RyaW5nKG4uaiQpO24ucmFuZ2UmJihXLnJhbmdlPWAke24ucmFuZ2Uuc3RhcnQrbi5OfS0ke24ucmFuZ2Uuc3RhcnQrbi5OK24uSi0xfWApO1cudGltZT1gJHtuLlgudG9GaXhlZCgxKX0tJHsobi5YK24uSykudG9GaXhlZCgxKX1gO1cub2ZmPVN0cmluZyhuLk4pO1cubGVuPVN0cmluZyhuLkopO24uYVomJihXLmVuZD0iMSIpO24uVigpJiYoVy5lb3M9IjEiKTtuLmNsaXBJZCYmKFcuY2lkPW4uY2xpcElkKTtyZXR1cm4gV307CmxEeD1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IHFJKG4udHlwZSxuLlBKLG4ucmFuZ2UsImdldEVtcHR5U3R1YkJlZm9yZSIrbi5ZLG4uaiQsbi5zZWdtZW50U3RhcnRUaW1lLDAsbi5OLDAsdm9pZCAwLG4udkQsbi5jbGlwSWQsbi5ELG4uYmQsbi5yZXF1ZXN0VG9rZW4pfTsKVEQxPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgcUkobi50eXBlLG4uUEosbi5yYW5nZSwiZ2V0RW1wdHlTdHViQWZ0ZXIiK24uWSxuLmokLG4uc2VnbWVudFN0YXJ0VGltZStuLlcsMCxuLk4rbi5KLDAsdm9pZCAwLG4udkQsbi5jbGlwSWQsbi5ELG4uYmQsbi5yZXF1ZXN0VG9rZW4pfTsKR1A9ZnVuY3Rpb24obixXLEQsYil7cmV0dXJuIG5ldyBxSShuLnR5cGUsbi5QSixuLnJhbmdlLCJyZXNsaWNlIituLlksbi5qJCxuLnNlZ21lbnRTdGFydFRpbWUsbi5XLFcsRCxiLG4udkQsbi5jbGlwSWQsbi5ELG4uYmQsbi5yZXF1ZXN0VG9rZW4pfTsKdEo9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5QSiE9PVcuUEo/ITE6bi5yYW5nZSYmVy5yYW5nZT9uLnJhbmdlLnN0YXJ0K24uTj49Vy5yYW5nZS5zdGFydCtXLk4mJm4ucmFuZ2Uuc3RhcnQrbi5OK24uSjw9Vy5yYW5nZS5zdGFydCtXLk4rVy5KOm4uaiQ9PT1XLmokJiZuLk4+PVcuTiYmKG4uTituLko8PVcuTitXLkp8fFcuYVopfTsKJE49ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5QSiE9PVcuUEo/ITE6bi5jSigpJiZXLnR5cGU9PT0zJiZuLlBKLk4oKT8obj1uLlBKLlZRKG4pLGcub00obixEPT4kTihELFcpKSk6bi5qJD09PVcuaiQmJiEhVy5KJiZXLk4rVy5KPm4uTiYmVy5OK1cuSjw9bi5OK24uSn07Ck92PWZ1bmN0aW9uKG4pe3ZhciBXPW4uZ2V0VmlkZW9EYXRhKCksRD1uLmg1KCksYj1ELmVfKCksdj1uLkcoKSxrPW4uZDAoKSxoPWsuVDEqOC8xMDI0LHg9ay54WS8xMDI0LEw9ay5LVCxlPWsuU1UsRz1rLk1BLHI9RC5nZXRDdXJyZW50VGltZSgpLnRvRml4ZWQoMiksTj1yayhELkooKSwiLCIsMyk7dmFyIEg9IiI7aWYoVy5pc0RhaUVuYWJsZWQoKSl7SD1OSShXKT9IKyJNViI6Vy5lbmFibGVTZXJ2ZXJTdGl0Y2hlZERhaT9IKyJTUyI6SCsiQ1MiO0g9Vy5ERigpP0grIkxJRkEsICI6SCsiREFJLCAiO1cuYlYmJihIKz0iREFJRkIsICIpO3ZhciBBPWsuZEM7QSYmKEgrPUEpfWVsc2UgVy5LZj9IKz0iQ1NEQUksICI6Vy5KbD9IKz0iRFNEQUksICI6Vy5qRiYmKEgrPSJVU0RBSSwgIik7cHooVykmJiFXLkRGKCkmJihIKz0iTElGQUUsICIpO2cuWU4oVykmJihIKz0iU0FCUiwgIik7aWYoVy5mZXRjaFR5cGUpe3N3aXRjaChXLmZldGNoVHlwZSl7Y2FzZSAib25lc2llIjpBPSJvIjticmVhazsKY2FzZSAiZ3AiOkE9ImdwIjticmVhaztkZWZhdWx0OkE9Imd2aSJ9SCs9YHZkOiR7QX0sIGB9KEE9di5qXygpKSYmKEg9QS5pc0FzbWpzP0grIndhLCAiOkgrIncsICIpO0grPWBzOiR7R30gdDoke3J9IGI6JHtOfSBgO0QuaXNTZWVraW5nKCkmJihIKz0iUyIpO0QuaXNQYXVzZWQoKSYmKEgrPSJQIik7RC5pc0VuZGVkKCkmJihIKz0iRSIpO24uaXNPcmNoZXN0cmF0aW9uTGVhZGVyKCkmJihIKz0iIEwiKTsoRD1rLmVJKSYmKEgrPWAgbDoke0QudG9GaXhlZCgpfWApO0Q9ay5jdXJyZW50VGltZTtHPVcueW47RCYmRD5HLnN0YXJ0JiZEPEcuZW5kJiYoSCs9IiBhcyIpO0Q9UFYob0wpKCJfc3RhcnQiLHZvaWQgMCk7Rz1bXTtmb3IoeSBvZlsicGxfaSIsInZpciIsIm9yX3AiLCJvcmZiIiwicGJzIl0pKHI9UFYob0wpKHksdm9pZCAwKSkmJkQmJihyLT1ELEcucHVzaChgJHt5fToke01hdGgucm91bmQocil9YCkpO3ZhciB5PUcuam9pbigiICIpO0Q9Zy5IXygpO0c9Zy5meihuKS52VDtyPQpXLlcmJiFXLlcuTigpPyJkaXNwbGF5Om5vbmUiOiIiO2lmKChOPVcuY2xpZW50UGxheWJhY2tOb25jZSkmJk4ubGVuZ3RoPT0xNil7Tis9IkFBQUEiO0E9MDt2YXIgVD0iIjtmb3IobGV0IEM9MDtDPDIwO0MrKylpZihBPShBPDw2KSsiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODktXyIuaW5kZXhPZihOLmNoYXJBdChDKSksQyU1PT00KXtsZXQgUT0iIjtmb3IobGV0IFY9MDtWPDY7VisrKVE9IjAxMjM0NTY3ODlBQkNERUZHSEpLTU5QUVJTVFZXWFlaIi5jaGFyQXQoQSYzMSkrUSxBPj49NTtUKz1RfU49YCR7VC5zdWJzdHIoMCw0KX0gJHtULnN1YnN0cig0LDQpfSAke1Quc3Vic3RyKDgsNCl9ICR7VC5zdWJzdHIoMTIsNCl9ICR7VC5zdWJzdHIoMTYsNCl9YH1lbHNlIE49IiI7aD17dmlkZW9faWRfYW5kX2NwbjpTdHJpbmcoVy52aWRlb0lkKSsiIC8gIitOLGNvZGVjczoiIixkaW1zX2FuZF9mcmFtZXM6IiIsYmFuZHdpZHRoX2ticHM6YCR7aC50b0ZpeGVkKDApfSBLYnBzYCwKYnVmZmVyX2hlYWx0aF9zZWNvbmRzOmAke0wudG9GaXhlZCgyKX0gc2AsZGF0ZTpgJHsobmV3IERhdGUpLnRvU3RyaW5nKCl9YCxkcm1fc3R5bGU6ZT8iIjoiZGlzcGxheTpub25lIixkcm06ZSxkZWJ1Z19pbmZvOkgsZXh0cmFfZGVidWdfaW5mbzoiIixiYW5kd2lkdGhfc3R5bGU6cixuZXR3b3JrX2FjdGl2aXR5X3N0eWxlOnIsbmV0d29ya19hY3Rpdml0eV9ieXRlczpgJHt4LnRvRml4ZWQoMCl9IEtCYCxzaGFkZXJfaW5mbzpHLHNoYWRlcl9pbmZvX3N0eWxlOkc/IiI6ImRpc3BsYXk6bm9uZSIscGxheWJhY2tfY2F0ZWdvcmllczoiIn07eD1gJHtiLmNsaWVudFdpZHRofXgke2IuY2xpZW50SGVpZ2h0fWArKEQ+MT9gKiR7RC50b0ZpeGVkKDIpfWA6IiIpO0w9Ii0iO2sudG90YWxWaWRlb0ZyYW1lcyYmKEw9YCR7ay5kcm9wcGVkVmlkZW9GcmFtZXN8fDB9IGRyb3BwZWQgb2YgJHtrLnRvdGFsVmlkZW9GcmFtZXN9YCk7aC5kaW1zX2FuZF9mcmFtZXM9YCR7eH0gLyAke0x9YDtlPW4uZ2V0Vm9sdW1lKCk7Cm49Vy5oZzt4PW4uTjtMPU1hdGgucm91bmQoZSk7ZT1NYXRoLnJvdW5kKGUqKHg/LlpyPz8xKSk7SD0iIjtXLlg/LmF1ZGlvLk4/SD0iIFZCIjpXLlg/LmF1ZGlvLlcmJihIPSIgRFJDIik7RD0iIjt4Py5mZCE9bnVsbD9EKz1gY29udC4ke3guZmQudG9GaXhlZCgxKX1kQmA6bi5RTyE9bnVsbCYmKEQrPWBsaXZlLiR7bi5RTy50b0ZpeGVkKDEpfWRCYCk7eD8ucHkhPW51bGwmJihEKz1gIHRndC4ke3gucHkudG9GaXhlZCgxKX1kQmApO0QmJihEPWAgKCR7RH0pYCk7aC52b2x1bWU9YCR7TH0lLyR7ZX0lJHtIfSR7RH1gO2gucmVzb2x1dGlvbj1gJHtiLnZpZGVvV2lkdGh9eCR7Yi52aWRlb0hlaWdodH1gO2lmKGI9Vy5KKXtpZihuPWIudmlkZW8peD1uLmZwcyx4PjEmJihoLnJlc29sdXRpb24rPWBAJHt4fWApLCh4PWsuTHQpJiZ4LnZpZGVvJiYoaC5yZXNvbHV0aW9uKz1gIC8gJHt4LnZpZGVvLndpZHRofXgke3gudmlkZW8uaGVpZ2h0fWAseC52aWRlby5mcHM+MSYmKGgucmVzb2x1dGlvbis9CmBAJHt4LnZpZGVvLmZwc31gKSksaC5jb2RlY3M9SkooYiksIVcuWHx8Yi5hdWRpbyYmYi52aWRlbz9iLkFhJiYoaC5jb2RlY3MrPWAgLyAke2IuQWF9QWApOmguY29kZWNzKz1gIC8gJHtKSihXLlgpfWAsbi5OfHxuLnByaW1hcmllcz8oeD1uLk58fCJ1bmtub3duIix4PT09InNtcHRlMjA4NCI/eD1gJHt4fSAoUFEpYDp4PT09ImFyaWItc3RkLWI2NyImJih4PWAke3h9IChITEcpYCksaC5jb2xvcj1gJHt4fSAvICR7bi5wcmltYXJpZXN8fCJ1bmtub3duIn1gLGguY29sb3Jfc3R5bGU9IiIpOmguY29sb3Jfc3R5bGU9ImRpc3BsYXk6bm9uZSI7aWYoYi5kZWJ1Z0luZm8pe2guZm10X2RlYnVnX2luZm89IiI7Zm9yKHZhciB6IG9mIGIuZGVidWdJbmZvKWguZm10X2RlYnVnX2luZm8rPWAke3oubGFiZWx9OiR7ei50ZXh0fSBgfWguZm10X2RlYnVnX2luZm9fc3R5bGU9aC5mbXRfZGVidWdfaW5mbyYmaC5mbXRfZGVidWdfaW5mby5sZW5ndGg+MD8iIjoiZGlzcGxheTpub25lIn16PVcuaXNMaXZlUGxheWJhY2s7CmI9Vy5YZztoLmxpdmVfbW9kZV9zdHlsZT16fHxiPyIiOiJkaXNwbGF5Om5vbmUiO2gubGl2ZV9sYXRlbmN5X3N0eWxlPXo/IiI6ImRpc3BsYXk6bm9uZSI7aWYoYiloLmxpdmVfbW9kZT0iUG9zdC1MaXZlIisoSTQoVyk/IiBNYW5pZmVzdGxlc3MiOiIiKTtlbHNlIGlmKHope2I9ay5wVDtoLmxpdmVfbGF0ZW5jeV9zZWNzPWAke2IudG9GaXhlZCgyKX1zYDt6PUk0KFcpPyJNYW5pZmVzdGxlc3MsICI6IiI7Vy5SSSYmKHorPSJXaW5kb3dlZCwgIik7bj0iVW5jZXJ0YWluIjtpZihiPj0wJiZiPDEyMClpZihXLmxhdGVuY3lDbGFzcyYmVy5sYXRlbmN5Q2xhc3MhPT0iVU5LTk9XTiIpc3dpdGNoKFcubGF0ZW5jeUNsYXNzKXtjYXNlICJOT1JNQUwiOm49Ik9wdGltaXplZCBmb3IgTm9ybWFsIExhdGVuY3kiO2JyZWFrO2Nhc2UgIkxPVyI6bj0iT3B0aW1pemVkIGZvciBMb3cgTGF0ZW5jeSI7YnJlYWs7Y2FzZSAiVUxUUkFMT1ciOm49Ik9wdGltaXplZCBmb3IgVWx0cmEgTG93IExhdGVuY3kiOwpicmVhaztkZWZhdWx0Om49IlVua25vd24gTGF0ZW5jeSBTZXR0aW5nIn1lbHNlIG49U3goVyk/Ik9wdGltaXplZCBmb3IgTG93IExhdGVuY3kiOiJPcHRpbWl6ZWQgZm9yIFNtb290aCBTdHJlYW1pbmciO3orPW47KGI9ay5GSSkmJih6Kz1gLCBzZXEgJHtiLnNlcXVlbmNlfWApO2gubGl2ZV9tb2RlPXp9di5leHBlcmltZW50cy5adCgpLk4uUVEoaldTKT9rLmlzR2FwbGVzcyYmIWsuZFQmJihoLnBsYXliYWNrX2NhdGVnb3JpZXM9ay5Ibz9oLnBsYXliYWNrX2NhdGVnb3JpZXMrIkdhcGxlc3MgIjpoLnBsYXliYWNrX2NhdGVnb3JpZXMrIlF1ZXVlZCAiKTohay5pc0dhcGxlc3N8fEFKKFcpJiZrLmRUfHwoaC5wbGF5YmFja19jYXRlZ29yaWVzKz0iR2FwbGVzcyAiKTtoLnBsYXliYWNrX2NhdGVnb3JpZXNfc3R5bGU9aC5wbGF5YmFja19jYXRlZ29yaWVzPyIiOiJkaXNwbGF5Om5vbmUiO2guYmFuZHdpZHRoX3NhbXBsZXM9ay5VJDtoLm5ldHdvcmtfYWN0aXZpdHlfc2FtcGxlcz1rLmRjOwpoLmxpdmVfbGF0ZW5jeV9zYW1wbGVzPWsuc0k7aC5idWZmZXJfaGVhbHRoX3NhbXBsZXM9ay5qeDt2PWcubU0oVyk7aWYoVy5jb3RufHx2KWguY290bl9hbmRfbG9jYWxfbWVkaWE9YCR7Vy5jb3RuP1cuY290bjoibnVsbCJ9IC8gJHt2fWA7aC5jb3RuX2FuZF9sb2NhbF9tZWRpYV9zdHlsZT1oLmNvdG5fYW5kX2xvY2FsX21lZGlhPyIiOiJkaXNwbGF5Om5vbmUiO0t6KFcsIndlYl9wbGF5ZXJfcmVsZWFzZV9kZWJ1ZyIpPyhoLnJlbGVhc2VfbmFtZT1JWzY1XSxoLnJlbGVhc2Vfc3R5bGU9IiIpOmgucmVsZWFzZV9zdHlsZT0iZGlzcGxheTpub25lIjtoLmRlYnVnX2luZm8mJnkubGVuZ3RoPjAmJmguZGVidWdfaW5mby5sZW5ndGgreS5sZW5ndGg8PTYwP2guZGVidWdfaW5mbys9IiAiK3k6aC5leHRyYV9kZWJ1Z19pbmZvPXk7aC5leHRyYV9kZWJ1Z19pbmZvX3N0eWxlPWguZXh0cmFfZGVidWdfaW5mbyYmaC5leHRyYV9kZWJ1Z19pbmZvLmxlbmd0aD4wPyIiOiJkaXNwbGF5Om5vbmUiOwpyZXR1cm4gaH07ClBfPWZ1bmN0aW9uKG4sVyxEKXtuLkorPVcuSjtuLnJhbmdlJiYobi5LKz1XLkspO24uaj1XLmo7bi5hWj1XLmFaO0QmJlcuYVomJihuLlc9Vy5XLG4uc2VnbWVudFN0YXJ0VGltZT1XLnNlZ21lbnRTdGFydFRpbWUsbi5YPW4uc2VnbWVudFN0YXJ0VGltZSxuLnJhbmdlfHwobi5LPW4uVykpfTsKWko9ZnVuY3Rpb24obixXKXt2YXIgRD1XLmokO24uWT0idXBkYXRlV2l0aFNlZ21lbnRJbmZvIjtuLmokPUQ7aWYobi5zZWdtZW50U3RhcnRUaW1lIT09Vy5zdGFydFRpbWV8fG4uVyE9PVcuZHVyYXRpb24pbi5zZWdtZW50U3RhcnRUaW1lPVcuc3RhcnRUaW1lLG4uVz1XLmR1cmF0aW9uLHZfKG4pfTsKVXY9ZnVuY3Rpb24obil7cmV0dXJuIWhKKG4uQXdbbi5Bdy5sZW5ndGgtMV0pfTsKeXM9ZnVuY3Rpb24obil7cmV0dXJuIG4uQXdbbi5Bdy5sZW5ndGgtMV0uY0ooKX07CmcuRXY9ZnVuY3Rpb24obixXLEQpe0Q9bi5wUz09PW51bGw/bi5YYi5wUyhXLEQsbi5Bd1swXS50eXBlKTpuLnBTO2lmKG4uTil7Vz1EP1hkKG4uTixXLm9NKTpuLk47dmFyIGI9bmV3IENzKFcpO2IuZ2V0KCJhbHIiKXx8Yi5zZXQoImFsciIsInllcyIpO24uSiYmWl8oYixuLkopfWVsc2UvaHR0cFtzXT86XC9cLy8udGVzdChuLkopP2I9bmV3IENzKG5ldyBnLndaKG4uSikpOihiPUJ3KG4uWGIsRCxXKSxuLkomJlpfKGIsbi5KKSk7KFc9bi5yYW5nZSk/Yi5zZXQoInJhbmdlIixXLnRvU3RyaW5nKCkpOm4uQXdbMF0uUEouRCgpJiZuLkF3Lmxlbmd0aD09PTEmJm4uQXdbMF0uTiYmYi5zZXQoInJhbmdlIixgJHtuLkF3WzBdLk59LWApO24ucmVxdWVzdElkJiZiLnNldCgicmVxX2lkIixuLnJlcXVlc3RJZCk7aXNOYU4obi5aQSl8fGIuc2V0KCJoZWFkbSIsbi5aQS50b1N0cmluZygpKTtpc05hTihuLmopfHxiLnNldCgibWZmYSIsYCR7bi5qfW1zYCk7bi51cmxQYXJhbXMmJmcuYV8obi51cmxQYXJhbXMsCih2LGspPT57Yi5zZXQoayx2KX0pOwpyZXR1cm4gYn07CmRrPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLkcoKSx2PXtodG1sNVByZWZlcmVuY2U6IkhUTUw1X1BSRUZfV0FOVFMiLGxhY3RNaWxsaXNlY29uZHM6U3RyaW5nKGcudkkoKSkscmVmZXJlcjpkb2N1bWVudC5sb2NhdGlvbi50b1N0cmluZygpLHNpZ25hdHVyZVRpbWVzdGFtcDoyMDY1NX0saz1nLm85KCk7bi5pc0F1dG9uYXYmJih2LmF1dG9uYXY9ITApO2suUVEoMTQxKSYmKHYuYXV0b25hdlN0YXRlPWsuUVEoMTQwKT8iU1RBVEVfT0ZGIjoiU1RBVEVfT04iKTt2LmF1dG9DYXB0aW9uc0RlZmF1bHRPbj1rLlFRKDY2KTtpVChuKSYmKHYuYXV0b3BsYXk9ITApO2IuSyYmbi5jeWNUb2tlbiYmKHYuY3ljVG9rZW49bi5jeWNUb2tlbik7Yi5lbmFibGVQcml2YWN5RmlsdGVyJiYodi5lbmFibGVQcml2YWN5RmlsdGVyPSEwKTtuLmlzRmxpbmcmJih2LmZsaW5nPSEwKTt2YXIgaD1uLmZvcmNlQWRzVXJsO2lmKGgpe2s9e307dmFyIHg9W107aD1oLnNwbGl0KCIsIik7Zm9yKHZhciBMIG9mIGgpe3ZhciBlPQpMLnNwbGl0KCJ8Iik7ZS5sZW5ndGghPT0zfHxMLmluY2x1ZGVzKCI9Iil8fChlWzBdPWBicmVha3R5cGU9JHtlWzBdfWAsZVsxXT1gb2Zmc2V0PSR7ZVsxXX1gLGVbMl09YHVybD0ke2VbMl19YCk7aD17YWR0eXBlOiJ2aWRlb19hZCJ9O2Zvcih2YXIgRyBvZiBlKXtsZXQgW3osLi4uQ109Ry5zcGxpdCgiPSIpO2hbel09Qy5qb2luKCI9Iil9ZT1oLnVybDtsZXQgSD1oLnByZXNldGFkLEE9aC52aXJhbHJlc3BvbnNldXJsLHk9TnVtYmVyKGguY2FtcGFpZ25pZCksVD1oLmJpYmxpb3RlY2FhZGlkO2lmKGguYWR0eXBlPT09ImluX2Rpc3BsYXlfYWQiKWUmJihrLnVybD1lKSxIJiYoay5wcmVzZXRBZD1IKSxBJiYoay52aXJhbEFkUmVzcG9uc2VVcmw9QSkseSYmKGsudmlyYWxDYW1wYWlnbklkPVN0cmluZyh5KSksVCYmKGsuYmlibGlvdGVjYUFkSWQ9VCk7ZWxzZSBpZihoLmFkdHlwZT09PSJ2aWRlb19hZCIpe2xldCB6PXtvZmZzZXQ6e2tpbmQ6Ik9GRlNFVF9NSUxMSVNFQ09ORFMiLHZhbHVlOlN0cmluZyhOdW1iZXIoaC5vZmZzZXQpfHwKMCl9fTtpZihoPUNJWltoLmJyZWFrdHlwZV0pei5icmVha1R5cGU9aDtlJiYoei51cmw9ZSk7SCYmKHoucHJlc2V0QWQ9SCk7QSYmKHoudmlyYWxBZFJlc3BvbnNlVXJsPUEpO3kmJih6LnZpcmFsQ2FtcGFpZ25JZD1TdHJpbmcoeSkpO1QmJih6LmJpYmxpb3RlY2FBZElkPVQpO3gucHVzaCh6KX19T2JqZWN0LmtleXMoaykubGVuZ3RoPjA/di5mb3JjZUFkUGFyYW1ldGVycz17dmlkZW9BZHM6eCxpbkRpc3BsYXlBZDprfTp2LmZvcmNlQWRQYXJhbWV0ZXJzPXt2aWRlb0Fkczp4fX1uLmlzSW5saW5lUGxheWJhY2tOb0FkJiYodi5pc0lubGluZVBsYXliYWNrTm9BZD0hMCk7bi5pc0xpdmluZ1Jvb21EZWVwbGluayYmKHYuaXNMaXZpbmdSb29tRGVlcGxpbms9ITApO0w9bi5zUztpZihMIT1udWxsKXtMPXtzdGFydFdhbGx0aW1lOlN0cmluZyhMKX07aWYoRz1uLnptKUwubWFuaWZlc3REdXJhdGlvbj1TdHJpbmcoR3x8MTQ0MDApO3YubGl2ZUNvbnRleHQ9TH1uLm11dGVkQXV0b3BsYXkmJgoodi5tdXRlZEF1dG9wbGF5PSEwLEw9Yi5nZXRXZWJQbGF5ZXJDb250ZXh0Q29uZmlnKCksTD8uZW1iZWRzSG9zdEZsYWdzPy5hbGxvd011dGVkQXV0b3BsYXlEdXJhdGlvbk1vZGUmJkw/LmVtYmVkc0hvc3RGbGFncz8uYWxsb3dNdXRlZEF1dG9wbGF5RHVyYXRpb25Nb2RlLmluY2x1ZGVzKHVUW24ubXV0ZWRBdXRvcGxheUR1cmF0aW9uTW9kZV0pJiYodi5tdXRlZEF1dG9wbGF5RHVyYXRpb25Nb2RlPXVUW24ubXV0ZWRBdXRvcGxheUR1cmF0aW9uTW9kZV0pKTtpZihuLmZCPzA6bi5QWCl2LnNwbGF5PSEwO0w9bi52bmQ7TD09PTUmJih2LnZuZD1MKTtMPXt9O2lmKEc9bi5pc01keFBsYXliYWNrKUwudHJpZ2dlcmVkQnlNZHg9RztpZihHPW4uRmYpTC5za2lwcGFibGVBZHNTdXBwb3J0ZWQ9Ry5zcGxpdCgiLCIpLmluY2x1ZGVzKCJza2EiKTtpZih4PW4uVUspe0c9bi5jTDtrPVtdO2Zvcih2YXIgciBvZiBpSih4KSl7eD1yLnBsYXRmb3JtO3g9e2FwcGxpY2F0aW9uU3RhdGU6ci5Fcz8KIklOQUNUSVZFIjoiQUNUSVZFIixjbGllbnRGb3JtRmFjdG9yOkJEalt4XXx8IlVOS05PV05fRk9STV9GQUNUT1IiLGNsaWVudE5hbWU6dUpbci5oal18fCJVTktOT1dOX0lOVEVSRkFDRSIsY2xpZW50VmVyc2lvbjpyLmRldmljZVZlcnNpb258fCIiLHBsYXRmb3JtOkZoaVt4XXx8IlVOS05PV05fUExBVEZPUk0ifTtoPXt9O2lmKEcpe3ZhciBOPXZvaWQgMDt0cnl7Tj1KU09OLnBhcnNlKEcpfWNhdGNoKEgpe2cuR3EoSCl9TiYmKGg9e3BhcmFtczpbe2tleToibXMiLHZhbHVlOk4ubXN9XX0sTi5hZHZlcnRpc2luZ19pZCYmKGguYWR2ZXJ0aXNpbmdJZD1OLmFkdmVydGlzaW5nX2lkKSxOLmxpbWl0X2FkX3RyYWNraW5nIT09dm9pZCAwJiZOLmxpbWl0X2FkX3RyYWNraW5nIT09bnVsbCYmKGgubGltaXRBZFRyYWNraW5nPU4ubGltaXRfYWRfdHJhY2tpbmcpLHgub3NOYW1lPU4ub3NfbmFtZSx4LnVzZXJBZ2VudD1OLnVzZXJfYWdlbnQseC53aW5kb3dIZWlnaHRQb2ludHM9Ti53aW5kb3dfaGVpZ2h0X3BvaW50cywKeC53aW5kb3dXaWR0aFBvaW50cz1OLndpbmRvd193aWR0aF9wb2ludHMpfWsucHVzaCh7YWRTaWduYWxzSW5mbzpoLHJlbW90ZUNsaWVudDp4fSl9TC5yZW1vdGVDb250ZXh0cz1rfXI9bi5zb3VyY2VDb250YWluZXJQbGF5bGlzdElkO049bi5zZXJpYWxpemVkTWR4TWV0YWRhdGE7aWYocnx8TilHPXt9LHImJihHLm1keFBsYXliYWNrQ29udGFpbmVySW5mbz17c291cmNlQ29udGFpbmVyUGxheWxpc3RJZDpyfSksTiYmKEcuc2VyaWFsaXplZE1keE1ldGFkYXRhPU4pLEwubWR4UGxheWJhY2tTb3VyY2VDb250ZXh0PUc7di5tZHhDb250ZXh0PUw7cj1XLndpZHRoO3I+MCYmKHYucGxheWVyV2lkdGhQaXhlbHM9TWF0aC5yb3VuZChyKSk7aWYoVz1XLmhlaWdodCl2LnBsYXllckhlaWdodFBpeGVscz1NYXRoLnJvdW5kKFcpO0QhPT0wJiYodi52aXM9RCk7aWYoRD1iLndpZGdldFJlZmVycmVyKXYud2lkZ2V0UmVmZXJyZXI9RC5zdWJzdHJpbmcoMCwxMjgpO2cubzQoYikmJnYmJih2LmFuY2VzdG9yT3JpZ2lucz0KYi5hbmNlc3Rvck9yaWdpbnMpO24uZGVmYXVsdEFjdGl2ZVNvdXJjZVZpZGVvSWQmJih2LmNvbXBvc2l0ZVZpZGVvQ29udGV4dD17ZGVmYXVsdEFjdGl2ZVNvdXJjZVZpZGVvSWQ6bi5kZWZhdWx0QWN0aXZlU291cmNlVmlkZW9JZH0pO2lmKG49Yi5nZXRXZWJQbGF5ZXJDb250ZXh0Q29uZmlnKCkpdi5lbmNyeXB0ZWRIb3N0RmxhZ3M9bi5lbmNyeXB0ZWRIb3N0RmxhZ3M7cmV0dXJuIHZ9Owp6UD1mdW5jdGlvbihuKXtpZihuLnJhbmdlKXJldHVybiBuLlc7bj1uLkF3WzBdO3JldHVybiBNYXRoLnJvdW5kKG4uSypuLlBKLmluZm8uTnMpfTsKd0xVPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIE1hdGgubWF4KDAsbi5Bd1swXS5YLVcpfTsKbFQ9ZnVuY3Rpb24obixXLEQpe2Zvcig7bjtuPW4ucGFyZW50Tm9kZSl7aWYoIW4uYXR0cmlidXRlc3x8RCYmbi5ub2RlTmFtZSE9PUQpY29udGludWU7bGV0IGI9bi5nZXRBdHRyaWJ1dGUoVyk7aWYoYilyZXR1cm4gYn1yZXR1cm4iIn07ClRQPWZ1bmN0aW9uKG4sVyl7Zm9yKDtuO249bi5wYXJlbnROb2RlKXtsZXQgRD1uLmdldEVsZW1lbnRzQnlUYWdOYW1lKFcpO2lmKEQubGVuZ3RoPjApcmV0dXJuIERbMF19cmV0dXJuIG51bGx9OwpqeD1mdW5jdGlvbihuKXtpZighbilyZXR1cm4gMDt2YXIgVz1uLm1hdGNoKC9QVCgoWzAtOV0qKUgpPygoWzAtOV0qKU0pPygoWzAtOS5dKilTKT8vKTtyZXR1cm4gVz8oTnVtYmVyKFdbMl0pfDApKjM2MDArKE51bWJlcihXWzRdKXwwKSo2MCsoTnVtYmVyKFdbNl0pfDApOk51bWJlcihuKXwwfTsKQ3o9ZnVuY3Rpb24obil7cmV0dXJuIG4ubWF0Y2goL14oXGR7NH0pLShcZHsyfSktKFxkezJ9KVQoXGR7Mn0pOihcZHsyfSk6KFxkezJ9KVwuKFxkezN9KSQvKT9gJHtufVpgOm59OwpNZ009ZnVuY3Rpb24obil7dmFyIFc9bi5XO24uVz1bXTtyZXR1cm4gV307ClJBUz1mdW5jdGlvbihuKXtuLk58fChuLk49bmV3IEJfKTtyZXR1cm4gbi5OfTsKUVdNPWZ1bmN0aW9uKG4sVyl7bi5KW1ddfHwobi5KW1ddPW5ldyBCXyk7cmV0dXJuIG4uSltXXX07ClZnaT1mdW5jdGlvbihuLFcpe24uV1tXXXx8KG4uV1tXXT1uZXcgQl8pO3JldHVybiBuLldbV119OwpjSGo9ZnVuY3Rpb24obixXKXt2YXIgRD1bXTtXPUFycmF5LmZyb20oVy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiU2VnbWVudFRpbWVsaW5lIikpO2ZvcihsZXQgYiBvZiBXKXtXPWIucGFyZW50Tm9kZS5wYXJlbnROb2RlO2xldCB2PW51bGw7Vy5ub2RlTmFtZT09PSJQZXJpb2QiP3Y9UkFTKG4pOlcubm9kZU5hbWU9PT0iQWRhcHRhdGlvblNldCI/KFc9Vy5nZXRBdHRyaWJ1dGUoImlkIil8fFcuZ2V0QXR0cmlidXRlKCJtaW1ldHlwZSIpfHwiIix2PVFXTShuLFcpKTpXLm5vZGVOYW1lPT09IlJlcHJlc2VudGF0aW9uIiYmKFc9Vy5nZXRBdHRyaWJ1dGUoImlkIil8fCIiLHY9VmdpKG4sVykpO2lmKHY9PW51bGwpcmV0dXJuO3YudXBkYXRlKGIpO2cuUTIoRCxNZ00odikpfWcuUTIobi5YLEQpO3RVaChuLlgsYj0+Yi5zdGFydFNlY3MqMUUzK2IuTil9OwphRFU9ZnVuY3Rpb24obil7bi5OJiYobi5OLk49W10pO2cuYV8obi5KLFc9PntXLk49W119KTsKZy5hXyhuLlcsVz0+e1cuTj1bXX0pfTsKRng9ZnVuY3Rpb24obixXKXtyZXR1cm4gRGUobi5zZWdtZW50cyxEPT5XLUQuaiQpfTsKTUk9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uaW5kZXguVihXKSx2PW4uaW5kZXguZ2V0U3RhcnRUaW1lKFcpLGs9bi5pbmRleC5nZXREdXJhdGlvbihXKTtEP2s9RD0wOkQ9bi5pbmZvLk5zKms7cmV0dXJuIG5ldyB3ayhbbmV3IHFJKDMsbix2b2lkIDAsIm90ZkNyZWF0ZVJlcXVlc3RJbmZvRm9yU2VnbWVudCIsVyx2LGssMCxEKV0sYil9OwpuR1M9ZnVuY3Rpb24obixXKXtpZighbi5pbmRleC5pc0xvYWRlZCgpKXt2YXIgRD1bXSxiPVcuajtXPVcuSy5zcGxpdCgiLCIpLmZpbHRlcihlPT5lLmxlbmd0aD4wKTsKdmFyIHY9MCxrPTAsaD0wLHg9L14oXGQrKS8sTD0vcj0oXGQrKS87Zm9yKGxldCBlPTA7ZTxiO2UrKyl7aWYoaDw9MClpZihoPVcuc2hpZnQoKSxrPShrPXguZXhlYyhoKSk/K2tbMV0vMUUzOjApaD0oaD1MLmV4ZWMoaCkpPytoWzFdOjAsaCs9MTtlbHNlIHJldHVybjtELnB1c2gobmV3IFI0KGUsdixrLE5hTiwic3EvIisoZSsxKSkpO3YrPWs7aC0tfW4uaW5kZXguYXBwZW5kKEQpfX07CmcuY189ZnVuY3Rpb24obixXLC4uLkQpe2cuUXMoNSxuIGluc3RhbmNlb2YgZy5Wcz9uLnRhZzpuLFcsLi4uRCl9OwpnLlFzPWZ1bmN0aW9uKG4sVyxELC4uLmIpe3ZhciB2PW49PT02PyJFUlJPUiI6IldBUk5JTkciO0Q9YGIke0R9YDtnLlhqKG5ldyBnLlF4KEQsLi4uYiksdik7Yi51bnNoaWZ0KEQpO2I9Yi5qb2luKCIsICIpO3Y9YTQuZ2V0KFcpO2lmKCF2KXt2PWB5dHBsb2cuJHtXfWA7RD01O3RyeXt3aW5kb3cubG9jYWxTdG9yYWdlJiYhaXNOYU4oK3dpbmRvdy5sb2NhbFN0b3JhZ2Vbdl0pJiYoRD0rd2luZG93LmxvY2FsU3RvcmFnZVt2XSksd2luZG93LnNlc3Npb25TdG9yYWdlJiYhaXNOYU4oK3dpbmRvdy5zZXNzaW9uU3RvcmFnZVt2XSkmJihEPSt3aW5kb3cuc2Vzc2lvblN0b3JhZ2Vbdl0pfWNhdGNoe31hNC5zZXQoVyxEKTt2PUR9bjx2fHwobj1XS3csdj1uLk4uZ2V0KFcpLHZ8fCh2PW5ldyBEODIsbi5OLnNldChXLHYpKSxuPXYsdj1EYXRlLm5vdygpLEQ9TWF0aC5mbG9vcigodi1uLkopKi4wMSksRD4wJiYobi5OPU1hdGgubWluKG4uTitELDEwKSxuLko9diksbi5OPjA/KG4uTi0tLG49CiEwKTpuPSExLG4/KHR5cGVvZiBiPT09ImZ1bmN0aW9uIiYmKGI9YigpKSxjb25zb2xlLmxvZyhgcGx5ci4ke1d9YCxiKSk6KGI9KG5NLmdldChXKT8/MCkrMSxuTS5zZXQoVyxiKSxiJTEwMD09PTEmJmNvbnNvbGUud2FybigicGx5ciIsYHBseXIuJHtXfSBpcyBjaGF0dHksIGRyb3BwaW5nIGxvZ3MuYCkpKX07CkRPPWZ1bmN0aW9uKG4pe2lmKCFuLkspe2lmKGcuUkIobi5pbmZvLlBKLmluZm8pKXt2YXIgVz1nLldSKG4pO3ZhciBEPWt4KFcsMCwxODM2MDE5NTc0KTtpZihEKXtEPUQub2Zmc2V0K0Quc2l6ZTt2YXIgYj1uZXcgVWludDhBcnJheShEKTtiLnNldChuZXcgVWludDhBcnJheShXLmJ1ZmZlcixXLmJ5dGVPZmZzZXQsRCkpO1c9Yn1lbHNlIFc9bnVsbH1lbHNlIFc9eUhyKG5ldyB0WShnLldSKG4pKSk7VyYmKG4uaW5mby5QSi5KPVcsbi5LPSEwKX19OwpnLldSPWZ1bmN0aW9uKG4pe3JldHVybiBHNihuLkopfTsKdlI9ZnVuY3Rpb24obixXKXtXPU1hdGgubWluKFcsbi5pbmZvLkopO3ZhciB7Q3M6RCxZOTpifT1uLkouc3BsaXQoVyksdj1uZXcgYjgobmV3IHFJKG4uaW5mby50eXBlLG4uaW5mby5QSixuLmluZm8ucmFuZ2Usbi5pbmZvLlksbi5pbmZvLmokLG4uaW5mby5zZWdtZW50U3RhcnRUaW1lLG4uaW5mby5XLG4uaW5mby5OLFcsITEsbi5pbmZvLnZELG4uaW5mby5jbGlwSWQsbi5pbmZvLkQpLEQpO3YuWD1uLlg7di5XPW4uVztXPW5ldyBiOChuZXcgcUkobi5pbmZvLnR5cGUsbi5pbmZvLlBKLG4uaW5mby5yYW5nZSxuLmluZm8uWSxuLmluZm8uaiQsbi5pbmZvLnNlZ21lbnRTdGFydFRpbWUsbi5pbmZvLlcsbi5pbmZvLk4rVyxuLmluZm8uSi1XLG4uaW5mby5hWixuLmluZm8udkQsbi5pbmZvLmNsaXBJZCxuLmluZm8uRCksYik7Vy5YPW4uWDtXLlc9bi5XO3JldHVyblt2LFddfTsKZy5rWD1mdW5jdGlvbihuKXtnLlJCKG4uaW5mby5QSi5pbmZvKXx8bi5pbmZvLlBKLmluZm8ucUgoKTtpZihuLlchPT0tMSlyZXR1cm4gbi5XO2lmKG4uTiYmakoobi5OKSlyZXR1cm4gbi5XPWpKKG4uTiksbi5XO2lmKGcuUkIobi5pbmZvLlBKLmluZm8pKXt2YXIgVz1nLldSKG4pO3ZhciBEPW4uaW5mby5QSi5KLGI9TmFOO2xldCB2PU5hTixrPTA7Zm9yKDtWTChXLGspOyl7bGV0IGg9Y0EoVyxrKTtoLnR5cGU9PT0xOTM2Mjg2ODQwP3Y9aC5kYXRhLmdldFVpbnQzMihoLmRhdGFPZmZzZXQrOCk6aC50eXBlPT09MTgzNjQ3NjUxNj92PWcuYkwoaCk6aC50eXBlPT09MTk1Mjg2NzQ0NCYmaXNOYU4oYikmJihiPWcueHgoaCkpO2s9YXIoaC50eXBlKT9rKzg6aytoLnNpemV9IXYmJkQmJih2PXZ3KEQpKTtXPWIvdn1lbHNlIFc9bmV3IHRZKGcuV1IobikpLEQ9bi5WP1c6bmV3IHRZKG5ldyBEYXRhVmlldyhuLmluZm8uUEouSi5idWZmZXIpKSxiPUtzKEQpLEQ9Vy5wb3MsVy5wb3M9MCxQdyhXKT8Kc1koVywyMzEpPyhiPWZzKFcpKmIvMUU5LFcucG9zPUQsVz1iKTooVy5wb3M9RCxXPU5hTik6KFcucG9zPUQsVz1OYU4pO24uVz1XfHxuLmluZm8uWDtyZXR1cm4gbi5XfTsKaE09ZnVuY3Rpb24obixXKXtnLlJCKG4uaW5mby5QSi5pbmZvKXx8bi5pbmZvLlBKLmluZm8ucUgoKTtuLlc9VztpZihnLlJCKG4uaW5mby5QSi5pbmZvKSl7dmFyIEQ9Zy5XUihuKTtuPW4uaW5mby5QSi5KO3ZhciBiPU5hTix2PU5hTjtsZXQgTD0wO2Zvcig7VkwoRCxMKTspe2xldCBlPWNBKEQsTCk7aXNOYU4oYikmJihlLnR5cGU9PT0xOTM2Mjg2ODQwP2I9ZS5kYXRhLmdldFVpbnQzMihlLmRhdGFPZmZzZXQrOCk6ZS50eXBlPT09MTgzNjQ3NjUxNiYmKGI9Zy5iTChlKSkpO2lmKGUudHlwZT09PTE5NTI4Njc0NDQpeyFiJiZuJiYoYj12dyhuKSk7dmFyIGs9Zy54eChlKTtpc05hTih2KSYmKHY9TWF0aC5yb3VuZChXKmIpLWspO3ZhciBoPWU7ays9djtpZihoLmRhdGEuZ2V0VWludDgoaC5kYXRhT2Zmc2V0KSl7dmFyIHg9aC5kYXRhO2g9aC5kYXRhT2Zmc2V0KzQ7eC5zZXRVaW50MzIoaCxNYXRoLmZsb29yKGsvNDI5NDk2NzI5NikpO3guc2V0VWludDMyKGgrNCxrJjQyOTQ5NjcyOTUpfWVsc2UgaC5kYXRhLnNldFVpbnQzMihoLmRhdGFPZmZzZXQrCjQsayl9TD1hcihlLnR5cGUpP0wrODpMK2Uuc2l6ZX1yZXR1cm4hMH1EPW5ldyB0WShnLldSKG4pKTtuPW4uVj9EOm5ldyB0WShuZXcgRGF0YVZpZXcobi5pbmZvLlBKLkouYnVmZmVyKSk7Yj1LcyhuKTtuPUQucG9zO0QucG9zPTA7aWYoUHcoRCkmJnNZKEQsMjMxKSlpZih2PU5rKEQsITApLFc9TWF0aC5mbG9vcihXKjFFOS9iKSxNYXRoLmNlaWwoTWF0aC5sb2coVykvTWF0aC5sb2coMikvOCk+dilXPSExO2Vsc2V7Zm9yKGI9di0xO2I+PTA7Yi0tKUQuTi5zZXRVaW50OChELnBvcytiLFcmMjU1KSxXPj4+PTg7RC5wb3M9bjtXPSEwfWVsc2UgVz0hMTtyZXR1cm4gV307CnhYPWZ1bmN0aW9uKG4sVyl7bi50aW1lc3RhbXBPZmZzZXQ+MCYmKFctPW4udGltZXN0YW1wT2Zmc2V0KTt2YXIgRD1nLmtYKG4pK1c7aE0obixEKTtuLnRpbWVzdGFtcE9mZnNldD1XfTsKTE09ZnVuY3Rpb24obil7Zy5SQihuLmluZm8uUEouaW5mbyl8fG4uaW5mby5QSi5pbmZvLnFIKCk7aWYobi5OJiZuLmluZm8udHlwZT09PTYpcmV0dXJuIG4uTi5yYjtpZihnLlJCKG4uaW5mby5QSi5pbmZvKSl7dmFyIFc9Zy5XUihuKTt2YXIgRD0wO1c9Zy5lUChXLDE5MzYyODY4NDApO2Zvcih2YXIgYiBvZiBXKVc9THMoYiksRCs9Vy5xZ1swXS9XLnRpbWVzY2FsZTtEPUR8fE5hTjtpZighKEQ+PTApKWE6e0Q9Zy5XUihuKTtiPW4uaW5mby5QSi5KO2xldCByPVc9MDtmb3IodmFyIHY9MDtWTChELFcpOyl7bGV0IE49Y0EoRCxXKTtpZihOLnR5cGU9PT0xODM2NDc2NTE2KXI9Zy5iTChOKTtlbHNlIGlmKE4udHlwZT09PTE4MzYwMTk1NTgpeyFyJiZiJiYocj12dyhiKSk7aWYoIXIpe0Q9TmFOO2JyZWFrIGF9dmFyIGs9a3goTi5kYXRhLE4uZGF0YU9mZnNldCwxOTUzNjUzMDk0KSxoPWs7az1yO3ZhciB4PWt4KGguZGF0YSxoLmRhdGFPZmZzZXQsMTk1Mjg2ODQ1Mik7aD1reChoLmRhdGEsCmguZGF0YU9mZnNldCwxOTUzNjU4MjIyKTt2YXIgTD15TCh4KTt5TCh4KTtMJjImJnlMKHgpO3g9TCY4P3lMKHgpOjA7dmFyIGU9eUwoaCksRz1lJjE7TD1lJjQ7bGV0IEg9ZSYyNTYsQT1lJjUxMix5PWUmMTAyNDtlJj0yMDQ4O2xldCBUPUVEKGgpO0cmJnlMKGgpO0wmJnlMKGgpO0c9MDtmb3IobGV0IHo9MDt6PFQ7eisrKXtsZXQgQz1IP3lMKGgpOng7QSYmeUwoaCk7TCYmej09PTB8fCF5fHx5TChoKTtlJiZ5TChoKTtHKz1DfXYrPUcva31XPWFyKE4udHlwZSk/Vys4OlcrTi5zaXplfUQ9dnx8TmFOfUR8fGcuR3EobmV3IGcuUXgoIk1pc3NpbmcgZHVyYXRpb24gd2hpbGUgcGFyc2luZyBibWZmIixuLmluZm8uZ2EoKSkpfWVsc2UgRD1uZXcgdFkoZy5XUihuKSksbj1uLlY/RDpuZXcgdFkobmV3IERhdGFWaWV3KG4uaW5mby5QSi5KLmJ1ZmZlcikpLEQ9RUVaKEQsS3MobikpO3JldHVybiBEfTsKZUc9ZnVuY3Rpb24obixXPSExKXt2YXIgRD1MTShuKTtuPVc/MDpuLmluZm8uSztyZXR1cm4gRHx8bn07CmcuZ3k9ZnVuY3Rpb24obil7aWYobi5pbmZvLlBKLlcoKSlyZXR1cm4gbi5pbmZvLlc7bi5YPT09LTEmJihuLlg9TE0obikpO3JldHVybiBuLlh8fG4uaW5mby5XfTsKWFo9ZnVuY3Rpb24obil7dmFyIFc9Zy5XUihuKSxEPWcubnMoVywwLDE5MzYyODY4NDApO0Q9RD9ELmRhdGEuZ2V0VWludDMyKEQuZGF0YU9mZnNldCs4KTpOYU47aXNOYU4oRCkmJihuPW4uaW5mby5QSi5KLEQ9KFc9Zy5ucyhXLDAsMTgzNjQ3NjUxNikpP2cuYkwoVyk6bj92dyhuKTpOYU4pO3JldHVybiBEfTsKcSQ9ZnVuY3Rpb24obil7cmV0dXJuIG4uaW5mby5QSi5pbmZvLnFIKCkmJnJkKG4uSiwwKT09PTE2MH07CkdpPWZ1bmN0aW9uKG4pe2lmKCFuLk4pe2cuUkIobi5pbmZvLlBKLmluZm8pfHxuLmluZm8uUEouaW5mby5xSCgpO2lmKGcuUkIobi5pbmZvLlBKLmluZm8pKXZhciBXPWcucWsoZy5XUihuKSk7ZWxzZXtXPW5ldyB0WShnLldSKG4pKTtsZXQgYj1XLnBvcztXLnBvcz0wO2xldCB2PW51bGwsaz1udWxsO2lmKCR4KFcsWzQwODEyNTU0MywzMDc1NDQ5MzVdKSl7bGV0IGg9Vy5wb3MrTmsoVywhMCk7Zm9yKDtXLnBvczxoOyl7aWYoTmsoVywhMSkhPT0yOTU1NSl7SlkoVyk7Y29udGludWV9bGV0IHg9Vy5wb3MrTmsoVywhMCk7Zm9yKDtXLnBvczx4Oyl7aWYoTmsoVywhMSkhPT0yNjU2OCl7SlkoVyk7Y29udGludWV9bGV0IEw9Vy5wb3MrTmsoVywhMCk7Zm9yKDtXLnBvczxMOyl7dmFyIEQ9TmsoVywhMSk7aWYoRD09PTE3NTQzKXtpZihEPW10KFcpLEQ9UUwoRCkpaWYoaylmb3IobGV0IGUgb2YgT2JqZWN0LmtleXMoRCkpa1tlXT1EW2VdO2Vsc2Ugaz1EfWVsc2UgRD09PTE3ODI3PyhEPQptdChXKSx2fHwodj1EKSk6SlkoVyl9fX19Vy5wb3M9YjtXPWs/bmV3IFg1KGssdik6bnVsbH1uLk49V319Owp0TT1mdW5jdGlvbihuLFcpe3JldHVybiBXKzE8bi5jb3VudHx8bi5XP24ub2Zmc2V0c1tXKzFdLW4ub2Zmc2V0c1tXXTotMX07CiRYPWZ1bmN0aW9uKG4pe24ub2Zmc2V0cy5sZW5ndGg8bi5jb3VudCsxJiZuLnJlc2l6ZShuLm9mZnNldHMubGVuZ3RoKjIpfTsKcnk9ZnVuY3Rpb24obixXLEQpe24uY291bnQrKzskWChuKTtuLm9mZnNldHNbbi5jb3VudF09bi5vZmZzZXRzW24uY291bnQtMV0rVztuLnN0YXJ0VGlja3Nbbi5jb3VudF09bi5zdGFydFRpY2tzW24uY291bnQtMV0rRH07CnNOPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PVtdO2ZvcihsZXQgaz1XO2s8PW4uaW5kZXgueCQoKTtrKyspe2xldCBoPVdfKG4uaW5kZXguTihrKSx0TShuLmluZGV4LGspKSx4PW4uaW5kZXguZ2V0U3RhcnRUaW1lKGspLEw9bi5pbmRleC5nZXREdXJhdGlvbihrKSxlPU1hdGgubWF4KDAsRC1oLnN0YXJ0KSxHPU1hdGgubWluKGguZW5kKzEsRCtiKS0oaC5zdGFydCtlKTt2LnB1c2gobmV3IHFJKDMsbixoLCJnZXRSZXF1ZXN0SW5mb0ZvclJhbmdlIixrLHgsTCxlLEcpKTtpZihoLnN0YXJ0K2UrRz49RCtiKWJyZWFrfXYubGVuZ3RofHwobj1uZXcgZy5ReCgiYjE4OTYxOTU5MyIsYCR7V31gLGAke0R9YCxgJHtifWApLGcuWGoobikpO3JldHVybiBuZXcgd2sodil9OwpOJD1mdW5jdGlvbihuKXtpZihuPW4uY29sb3JJbmZvKWlmKG49bi50cmFuc2ZlckNoYXJhY3RlcmlzdGljcylyZXR1cm4gYnFVW25dO3JldHVybiBudWxsfTsKWVg9ZnVuY3Rpb24obixXKXt2YXIgRD1NYXRoLm1heChuLFcpO249TWF0aC5taW4obixXKTtXPXBNWzBdO2ZvcihsZXQgYj0wO2I8cE0ubGVuZ3RoO2IrKyl7bGV0IHY9cE1bYl0saz1OR1t2XTtpZihEPj1NYXRoLmZsb29yKGsqMTYvOSkqMS4zfHxuPj1rKjEuMylyZXR1cm4gVztXPXZ9cmV0dXJuInRpbnkifTsKZk09ZnVuY3Rpb24obil7cmV0dXJuIG5ldyBIUihuWzFdLG5bMl0sblszXSxuWzRdLG5bNV0sbls2XSxuWzddLG5bOF0sbls5XSxuWzEwXSl9OwpKTT1mdW5jdGlvbihuKXtyZXR1cm4gbi5pbmRleE9mKCIvbXA0Iik+PTA/MTpuLmluZGV4T2YoIi93ZWJtIik+PTA/MjpuLmluZGV4T2YoIi94LWZsdiIpPj0wPzM6bi5pbmRleE9mKCIvdnR0Iik+PTA/NDowfTsKSWQ9ZnVuY3Rpb24obil7cmV0dXJuLyhvcHVzfG1wNGF8ZHRzZXxhYy0zfGVjLTN8aWFtZikvLnRlc3Qobil9OwpTRz1mdW5jdGlvbihuKXtyZXR1cm4vKHZwOXx2cDA5fHZwOHxhdmMxfGF2MDF8YXYwMikvLnRlc3Qobil9OwpRUD1mdW5jdGlvbihuLFcsRCxiLHYsayxoKXt2YXIgeD1uZXcgQU07VyBpbiBOR3x8KFc9InNtYWxsIik7Vz09PSJsaWdodCImJihXPSJ0aW55Iik7YiYmdj8odj1OdW1iZXIodiksYj1OdW1iZXIoYikpOih2PU5HW1ddLGI9TWF0aC5yb3VuZCh2KjE2LzkpKTtrPW5ldyBIUihiLHYsMCxudWxsLHZvaWQgMCxXLGssaCk7bj11bmVzY2FwZShuLnJlcGxhY2UoLyZxdW90Oy9nLCciJykpO3JldHVybiBuZXcgbXUoRCxuLHthdWRpbzp4LHZpZGVvOmt9KX07Ck9OPWZ1bmN0aW9uKG4pe3ZhciBXPW5bN10sRD1uWzExXSxiPW5bOV0sdj1uWzhdO3JldHVybiBuZXcgbXUoblsxXSxuWzJdLHtYbjpuWzNdLE5zOm5bNF0sbGFzdE1vZGlmaWVkOm5bNV0sY29udGVudExlbmd0aDpuWzZdLGF1ZGlvOlc/bmV3IEFNKFdbMV0sV1syXSxXWzNdLFdbNF0sV1s1XSxXWzZdLFdbN10sV1s4XSk6dm9pZCAwLHZpZGVvOnY/Zk0odik6dm9pZCAwLGtaOmI/TUcoYik6dm9pZCAwLGNvbnRlbnRQcm90ZWN0aW9uOm5bMTBdLGNhcHRpb25UcmFjazpEP25ldyBLTShEWzFdLERbMl0sRFszXSxEWzRdLERbNV0sRFs2XSk6dm9pZCAwLHN0cmVhbVR5cGU6blsxMl0sQWE6blsxM10sYXBwcm94RHVyYXRpb25NczpuWzE0XX0pfTsKbUY9ZnVuY3Rpb24obil7cmV0dXJuIG4uSUI9PT0iTUFDMyJ8fG4uSUI9PT0iTUVBQzMifHxuLklCPT09Ik0ifHxuLklCPT09IkkifTsKS2c9ZnVuY3Rpb24obil7cmV0dXJuISFuLmNvbnRlbnRQcm90ZWN0aW9uJiYhIW4uY29udGVudFByb3RlY3Rpb24uZmFpcnBsYXkmJihuLklCPT09IigifHxuLklCPT09IihoInx8bi5JQj09PSJBInx8bi5JQj09PSJNRUFDMyIpfHxQUiYmISFuLmNvbnRlbnRQcm90ZWN0aW9uJiZuLklCPT09IjFlIn07CmcuUkI9ZnVuY3Rpb24obil7cmV0dXJuIG4uY29udGFpbmVyVHlwZT09PTF9OwpNMz1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgsTCxlLEcscil7dmFyIE49V15uO3ZhciBIOyhuJjc2KT09biYmKEg9YihoLHgsTCxlLEcscikpOyhuPj4xJjE1KT09MSYmKEQ9KEQlYltJWzVdXStiW0lbNV1dKSViW0lbNV1dLGJbSVszXV0oRCwxKSk7bis5Pj4zPT0zJiYoSD1kZWNvZGVVUklDb21wb25lbnQoRCkpO24tOTwyMyYmKG4+PjEmMTUpPj0xMyYmKERbTl41MjY0XTwoTl41MzQzKSYmKERbTl41MjcwXTw9LTEmJigoKDAsRFtOXjUzMjhdKShEW25ldyBEYXRlKElbTl41MzQ2XSkvKE5eNTk1MSldLERbTl41MjY4XSksRFtOXjUzNDVdKShEW05eNTM2MV0sRFtOXjUyNjhdKSwxKXx8KDAsRFtOXjUzNTFdKSgoMCxEW05eNTM0NF0pKERbTl41MzY2XSxEW05eNTMxOV0pLERbMV0sRFtOXjUzMjBdLERbTl41MzQ4XSkpLERbTl41MjY4XT49LTImJigoMCxEW05eNTM1MV0pKCgwLERbM10pKERbTl41MzcyXSwoMCxEW25ldyBEYXRlKElbNF0pLyhOXjU5NTEpXSkoKSxEW05eNTMxNV0pLApEW05eNTM1Nl0sRFtOXjUyNzFdLERbTl41MzY1XSksRFtOXjUzMjZdKShEW05eNTMyMV0sRFtOXjUzNTZdKSxEWzVdPD0tMiYmKERbTl41Mjc2XTwoTl41MzQxKXx8KCgoKDAsRFtOXjUzMjZdKShEW05eNTMxOV0sRFtOXjUzNzNdKSxEW05eNTI2OV0pKCgwLERbTl41MjY4XSkoRFtOXjUzNTNdLERbTl41MzQ3XSksRFtOXjUzMzZdLCgwLERbNF0pKCgwLERbTl41MzYyXSkoRFtOXjUzNDldLCgwLERbTl41Mjc2XSkoKSxEW05eNTM3NV0pLERbTl41MjY2XSxEW05eNTM1NV0sRFtOXjUzMjhdKSxEW05eNTM2MV0sRFswXSksRFtOXjUzMThdKShEW05eNTM3M10sRFtOXjUzNDBdKSxJW05eNTMxNF0pKSYmKCgwLERbTl41MzI2XSkoKCgwLERbTl41MzUxXSkoRFtOXjUzNDJdLCgwLERbbmV3IERhdGUoSVtOXjUzNTNdKS8oTl41OTUxKV0pKCksRFtOXjUzNzBdKSxEW05eNTMyN10pKERbTl41MzQyXSksRFtOXjUzMTNdLCgwLERbTl41MzUxXSkoRFtOXjUzNDJdLCgwLERbTl41MzI4XSkoKSwKRFtOXjUyNzBdKSxEW05eNTI3NF0sRFtOXjUzNDJdKSxEW05eNTMzNl0pKCgwLERbTl41MzUxXSkoRFtOXjUzNDJdLCgwLERbTl41MzYyXSkoKSxEW05eNTM0OF0pLERbTl41MzI1XSxEW05eNTI2Nl0sRFtOXjUzNTldKSxIPVtdKTtyZXR1cm4gSH07CmcuVmY9ZnVuY3Rpb24obixXKXtyZXR1cm57aXRhZzorbi5pdGFnLGxtdDpXPzA6bi5sYXN0TW9kaWZpZWQseHRhZ3M6bi5KfHwiIn19OwpaTz1mdW5jdGlvbihuKXtyZXR1cm4gbi5JQj09PSI5aCJ8fG4uSUI9PT0iKGgifTsKVU49ZnVuY3Rpb24obil7cmV0dXJuIG4uSUI9PT0iKCJ8fG4uSUI9PT0iKGgifHxuLklCPT09IkgifHxQUiYmbi5JQj09PSIxZSJ9Owp2R1U9ZnVuY3Rpb24obixXPTEpe3ZhciBEPXt9O24udmlkZW8mJihuLnZpZGVvLndpZHRoJiYoRFtBVC5XSURUSC5uYW1lXT1uLnZpZGVvLndpZHRoKSxuLnZpZGVvLmhlaWdodCYmKERbQVQuSEVJR0hULm5hbWVdPW4udmlkZW8uaGVpZ2h0KSxuLnZpZGVvLmZwcyYmKERbQVQuRlJBTUVSQVRFLm5hbWVdPW4udmlkZW8uZnBzKlcpLG4udmlkZW8uTiYmKERbQVQuRU9URi5uYW1lXT1uLnZpZGVvLk4pLG4uTnMmJihEW0FULkJJVFJBVEUubmFtZV09bi5Ocyo4KlcpLG4uSUI9PT0iKCImJihEW0FULkNSWVBUT0JMT0NLRk9STUFULm5hbWVdPSJzdWJzYW1wbGUiKSxuLnZpZGVvLnByb2plY3Rpb25UeXBlPT09IkVRVUlSRUNUQU5HVUxBUiJ8fG4udmlkZW8ucHJvamVjdGlvblR5cGU9PT0iRVFVSVJFQ1RBTkdVTEFSX1RIUkVFRF9UT1BfQk9UVE9NInx8bi52aWRlby5wcm9qZWN0aW9uVHlwZT09PSJNRVNIIikmJihEW0FULkRFQ09ERVRPVEVYVFVSRS5uYW1lXT0idHJ1ZSIpO24uYXVkaW8/Lm51bUNoYW5uZWxzJiYKbi5JQiE9PSJpIiYmbi5JQiE9PSJJIiYmKERbQVQuQ0hBTk5FTFMubmFtZV09bi5hdWRpby5udW1DaGFubmVscyk7cmV0dXJuIER9Owp5VD1mdW5jdGlvbihuLFcpe249biBpbnN0YW5jZW9mIEVycm9yP24ubWVzc2FnZTpTdHJpbmcobik7dmFyIEQ9IiI7dHJ5e0Q9SlNPTi5zdHJpbmdpZnkoVyl9Y2F0Y2goYil7RD0iZmFpbGVkIHRvIHN0cmluZ2lmeSBjb25maWcifWcuY18oImRhc2giLDUxOTE5NjY0OSxuLEQpfTsKazNyPWZ1bmN0aW9uKG4pe3ZhciBXPW5hdmlnYXRvci5tZWRpYUNhcGFiaWxpdGllcztpZighVz8uZGVjb2RpbmdJbmZvfHxuLklCPT09ImYiKXJldHVybiBQcm9taXNlLnJlc29sdmUoKTt2YXIgRD17dHlwZTpuLmF1ZGlvJiZuLnZpZGVvPyJmaWxlIjoibWVkaWEtc291cmNlIn07bi52aWRlbyYmKEQudmlkZW89e2NvbnRlbnRUeXBlOm4ubWltZVR5cGUsd2lkdGg6bi52aWRlby53aWR0aHx8NjQwLGhlaWdodDpuLnZpZGVvLmhlaWdodHx8MzYwLGJpdHJhdGU6bi5Ocyo4fHwxRTYsZnJhbWVyYXRlOm4udmlkZW8uZnBzfHwzMH0pO24uYXVkaW8mJihELmF1ZGlvPXtjb250ZW50VHlwZTpuLm1pbWVUeXBlLGNoYW5uZWxzOmAke24uYXVkaW8ubnVtQ2hhbm5lbHN8fDJ9YCxiaXRyYXRlOm4uTnMqOHx8MTI4RTMsc2FtcGxlcmF0ZTpuLmF1ZGlvLnNhbXBsZVJhdGV8fDQ0MTAwfSk7aWYoRU4pdHJ5e3JldHVybiBXLmRlY29kaW5nSW5mbyhEKS50aGVuKGI9PntuLmo9Yn0pLmNhdGNoKGI9Pgp7eVQoYixEKX0pfWNhdGNoKGIpe3JldHVybiB5VChiLEQpLFByb21pc2UucmVzb2x2ZSgpfXJldHVybiBXLmRlY29kaW5nSW5mbyhEKS50aGVuKGI9PntuLmo9Yn0pfTsKaTg9ZnVuY3Rpb24oKXt2YXIgbj1nLnJyKCJ5dC5wbGF5ZXIudXRpbHMudmlkZW9FbGVtZW50XyIpO258fChuPWcuekYoIlZJREVPIiksZy5HYigieXQucGxheWVyLnV0aWxzLnZpZGVvRWxlbWVudF8iLG4pKTtyZXR1cm4gbn07CnU4PWZ1bmN0aW9uKG4pe3ZhciBXPWk4KCk7cmV0dXJuISEoVyYmVy5jYW5QbGF5VHlwZSYmVy5jYW5QbGF5VHlwZShuKSl9OwpkeT1mdW5jdGlvbihuKXtpZigvb3B1cy8udGVzdChuKSYmZy5vZCYmIUNfKCIzOCIpJiYhZy5kOCgpKXJldHVybiExO2lmKHNlbGYuTWVkaWFTb3VyY2UmJnNlbGYuTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkKXJldHVybiBzZWxmLk1lZGlhU291cmNlLmlzVHlwZVN1cHBvcnRlZChuKTtpZihzZWxmLk1hbmFnZWRNZWRpYVNvdXJjZSYmc2VsZi5NYW5hZ2VkTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkKXJldHVybiBzZWxmLk1hbmFnZWRNZWRpYVNvdXJjZS5pc1R5cGVTdXBwb3J0ZWQobik7aWYoL3dlYm0vLnRlc3QobikmJiFUUSgpKXJldHVybiExO249PT0nYXVkaW8vbXA0OyBjb2RlY3M9Im1wNGEuNDAuMiInJiYobj0ndmlkZW8vbXA0OyBjb2RlY3M9ImF2YzEuNGQ0MDFmIicpO3JldHVybiEhdTgobil9OwpoZ1M9ZnVuY3Rpb24obil7dHJ5e2xldCBXPWR5KCd2aWRlby9tcDQ7IGNvZGVjcz0iYXZjMS40MjAwMUUiJyl8fGR5KCd2aWRlby93ZWJtOyBjb2RlY3M9InZwOSInKTtyZXR1cm4oZHkoJ2F1ZGlvL21wNDsgY29kZWNzPSJtcDRhLjQwLjIiJyl8fGR5KCdhdWRpby93ZWJtOyBjb2RlY3M9Im9wdXMiJykpJiYoV3x8IW4pfHx1OCgndmlkZW8vbXA0OyBjb2RlY3M9ImF2YzEuNDIwMDFFLCBtcDRhLjQwLjIiJyk/bnVsbDoiZm10Lm5vbmVhdmFpbGFibGUifWNhdGNoe3JldHVybiJodG1sNS5taXNzaW5nYXBpIn19Owp6aT1mdW5jdGlvbigpe3ZhciBuPWk4KCk7cmV0dXJuISghbi53ZWJraXRTdXBwb3J0c1ByZXNlbnRhdGlvbk1vZGV8fHR5cGVvZiBuLndlYmtpdFNldFByZXNlbnRhdGlvbk1vZGUhPT0iZnVuY3Rpb24iKX07Cmw4PWZ1bmN0aW9uKCl7dmFyIG49aTgoKTt0cnl7bGV0IFc9bi5tdXRlZDtuLm11dGVkPSFXO3JldHVybiBuLm11dGVkIT09V31jYXRjaHt9cmV0dXJuITF9OwpUaT1mdW5jdGlvbihuLFcpe3JldHVybntzdGFydChEKXtyZXR1cm4gbltEXX0sZW5kKEQpe3JldHVybiBXW0RdfSxsZW5ndGg6bi5sZW5ndGh9fTsKakc9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVtdLHY9W107Zm9yKGxldCBrPTA7azxuLmxlbmd0aDtrKyspYi5wdXNoKG4uc3RhcnQoaykpLHYucHVzaChuLmVuZChrKSk7Yi5wdXNoKFcpO3YucHVzaChEKTtiLnNvcnQoKGssaCk9PmstaCk7CnYuc29ydCgoayxoKT0+ay1oKTsKcmV0dXJuIFRpKGIsdil9Owpyaz1mdW5jdGlvbihuLFc9IiwiLEQ9bj9uLmxlbmd0aDowKXt2YXIgYj1bXTtpZihuKWZvcihEPU1hdGgubWF4KG4ubGVuZ3RoLUQsMCk7RDxuLmxlbmd0aDtEKyspYi5wdXNoKGAke24uc3RhcnQoRCkudG9GaXhlZCgzKX0tJHtuLmVuZChEKS50b0ZpeGVkKDMpfWApO3JldHVybiBiLmpvaW4oVyl9OwpDTT1mdW5jdGlvbihuLFcpe2lmKCFuKXJldHVybi0xO3RyeXtmb3IobGV0IEQ9MDtEPG4ubGVuZ3RoO0QrKylpZihuLnN0YXJ0KEQpPD1XJiZuLmVuZChEKT49VylyZXR1cm4gRH1jYXRjaChEKXt9cmV0dXJuLTF9OwpCUj1mdW5jdGlvbihuLFcpe3JldHVybiBDTShuLFcpPj0wfTsKeDhqPWZ1bmN0aW9uKG4sVyl7aWYoIW4pcmV0dXJuIE5hTjtXPUNNKG4sVyk7cmV0dXJuIFc+PTA/bi5zdGFydChXKTpOYU59OwpGWj1mdW5jdGlvbihuLFcpe2lmKCFuKXJldHVybiBOYU47Vz1DTShuLFcpO3JldHVybiBXPj0wP24uZW5kKFcpOk5hTn07Cmcud3k9ZnVuY3Rpb24obil7cmV0dXJuIG4mJm4ubGVuZ3RoP24uZW5kKG4ubGVuZ3RoLTEpOk5hTn07Ck0kPWZ1bmN0aW9uKG4pe3JldHVybiBnLnd5KG4pPjB9OwpSZD1mdW5jdGlvbihuLFcpe249RloobixXKTtyZXR1cm4gbj49MD9uLVc6MH07ClFUPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1bXSx2PVtdO2ZvcihsZXQgaz0wO2s8bi5sZW5ndGg7aysrKW4uZW5kKGspPFd8fG4uc3RhcnQoayk+RHx8KGIucHVzaChNYXRoLm1heChXLG4uc3RhcnQoaykpLVcpLHYucHVzaChNYXRoLm1pbihELG4uZW5kKGspKS1XKSk7cmV0dXJuIFRpKGIsdil9OwpWVD1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cuU291cmNlQnVmZmVyPyEhU291cmNlQnVmZmVyLnByb3RvdHlwZS5jaGFuZ2VUeXBlOiExfTsKY1I9ZnVuY3Rpb24oKXtyZXR1cm4hISh3aW5kb3cuTWVkaWFTb3VyY2V8fHdpbmRvdy5NYW5hZ2VkTWVkaWFTb3VyY2V8fHdpbmRvdy5XZWJLaXRNZWRpYVNvdXJjZXx8d2luZG93LkhUTUxNZWRpYUVsZW1lbnQmJkhUTUxNZWRpYUVsZW1lbnQucHJvdG90eXBlLndlYmtpdFNvdXJjZUFkZElkKX07CmFkPWZ1bmN0aW9uKCl7cmV0dXJuISghd2luZG93Lk1lZGlhU291cmNlfHwhd2luZG93Lk1lZGlhU291cmNlLmlzVHlwZVN1cHBvcnRlZCl8fHdpbmRvdy5NYW5hZ2VkTWVkaWFTb3VyY2V9OwpuNj1mdW5jdGlvbihuKXt0cnl7cmV0dXJuIG4uVygpPT09Im9wZW4ifWNhdGNoKFcpe3JldHVybiExfX07CldGPWZ1bmN0aW9uKG4sVyl7bjYobik/Zy5tSygoKT0+e1cobil9KTpuLmNhbGxiYWNrPVd9Owp2Rj1mdW5jdGlvbihuLFcsRCl7REgmJihiQShuLm1lZGlhRWxlbWVudCx7bDoibXN3c3NiIixzcjpuLm1lZGlhRWxlbWVudC5ZYT8ucGcoKX0sITEpLFcuaCQobi5MTCxuKSxELmgkKG4uTEwsbikpO24uTj1XO24uSj1EO2cudShuLFcpO2cudShuLEQpfTsKTEtVPWZ1bmN0aW9uKG4sVyxELGI9IiIpe2I9Vy5taW1lVHlwZStiO3ZhciB2PUQubWltZVR5cGU7Vz1XLklCO0Q9RC5JQjtuLlZRPW4ubWVkaWFTb3VyY2U/LmFkZFNvdXJjZUJ1ZmZlcih2KTtuLmUkPWIuc3BsaXQoIjsiKVswXT09PSJmYWtlc2IiP3ZvaWQgMDpuLm1lZGlhU291cmNlPy5hZGRTb3VyY2VCdWZmZXIoYik7bi5FViYmKG4uRVYud2Via2l0U291cmNlQWRkSWQoIjAiLHYpLG4uRVYud2Via2l0U291cmNlQWRkSWQoIjEiLGIpKTtEPW5ldyBrZyhuLlZRLG4uRVYsIjAiLEpNKHYpLEQsITEpO2I9bmV3IGtnKG4uZSQsbi5FViwiMSIsSk0oYiksVywhMCk7dkYobixELGIpfTsKTDY9ZnVuY3Rpb24obixXLEQsYil7aWYoIW4uTnx8IW4uSilyZXR1cm4gbnVsbDt2YXIgdj1uLk4uaXNWaWV3KCk/bi5OLmskOm4uTixrPW4uSi5pc1ZpZXcoKT9uLkouayQ6bi5KLGg9bmV3IGhaKG4ubWVkaWFFbGVtZW50LG4ubWVkaWFTb3VyY2UsITApO2guaj1uLmo7dkYoaCxuZXcgeGcodixXLEQsYiksbmV3IHhnKGssVyxELGIpKTtuNihuKXx8bi5OLnlPKG4uTi5TVygpKTtyZXR1cm4gaH07CmVnMT1mdW5jdGlvbihuKXtyZXR1cm4gZTQoKFcsRCk9Pmcuc3ooVyxELDQsMUUzKSxuLHtmb3JtYXQ6IlJBVyIsCm1ldGhvZDoiR0VUIix3aXRoQ3JlZGVudGlhbHM6ITB9KX07CmcuZ3Q9ZnVuY3Rpb24obil7dmFyIFc7bi5yZXNwb25zZVR5cGUmJm4ucmVzcG9uc2VUeXBlIT09InRleHQiP24ucmVzcG9uc2VUeXBlPT09ImFycmF5YnVmZmVyIiYmKFc9cFIobmV3IFVpbnQ4QXJyYXkobi5yZXNwb25zZSkpKTpXPW4ucmVzcG9uc2VUZXh0O3JldHVybiFXfHxXLmxlbmd0aD4yMDQ4PyIiOlcuaW5kZXhPZigiaHR0cHM6Ly8iKT09PTA/VzoiIn07CmU0PWZ1bmN0aW9uKG4sVyxEKXtXLm1hdGNoKGdHcik7cmV0dXJuIG4oVyxEKS50aGVuKGI9Pnt2YXIgdj1nLmd0KGIueGhyKTtyZXR1cm4gdj9lNChuLHYsRCk6Yi54aHJ9KX07ClhKaT1mdW5jdGlvbihuLFcsRCl7aWYoIW4/LldjKCkpcmV0dXJuITE7dmFyIGI9Vy5zb21lKGg9PmgucHJvamVjdGlvblR5cGU9PT0iRVFVSVJFQ1RBTkdVTEFSInx8aC5wcm9qZWN0aW9uVHlwZT09PSJFUVVJUkVDVEFOR1VMQVJfVEhSRUVEX1RPUF9CT1RUT00iKSx2PVcuc29tZShoPT5oLnByb2plY3Rpb25UeXBlPT09Ik1FU0giKSxrPVcuc29tZShoPT5oLnN0ZXJlb0xheW91dD09PTEpOwpXPVcuc29tZShoPT5oLmlzSGRyKCkpOwpuPSFEJiYhVyYmbi5TKCJlbmFibGVfd2ViZ2xfbm9vcCIpO3JldHVybiBifHx2fHxrfHxufTsKcXo9ZnVuY3Rpb24obixXLEQsYil7aWYoWEppKG4sVyxEKSlyZXR1cm4hMDtpZighbj8udE0oKXx8IVh2KG4sYikpcmV0dXJuITE7bj1XLnNvbWUodj0+di5pc0hkcigpKTsKcmV0dXJuIER8fG4/ITE6ITB9OwpxdWo9ZnVuY3Rpb24obil7cmV0dXJuIGcub00obixXPT4iRk9STUFUX1NUUkVBTV9UWVBFX09URiI9PT1XLnR5cGUpPyJGT1JNQVRfU1RSRUFNX1RZUEVfT1RGIjoiRk9STUFUX1NUUkVBTV9UWVBFX1VOS05PV04ifTsKRzNDPWZ1bmN0aW9uKG4sVyxEPTAsYix2KXt2YXIgaz1uZXcgZy5HeCgiIixiLmV4cGVyaW1lbnRzLCExKTtrLmR1cmF0aW9uPUR8fDA7Zm9yKGxldCBoIG9mIG4pe249dFooaCxXLGsuZHVyYXRpb24sYix2KTtsZXQge0VsOngsczpMLHk3OmV9PVAwKDE1LDcwMCxoKTsoRD1SeCh4fHxoLnVybHx8IiIsZSxMKSkmJihuLnN0cmVhbVR5cGU9PT0iRk9STUFUX1NUUkVBTV9UWVBFX09URiI/JGcoayxuZXcgcnQoRCxuKSk6JGcoayxuZXcgc2soRCxuLERKKGguaW5pdFJhbmdlKSxESihoLmluZGV4UmFuZ2UpKSkpfWsuaXNPdGY9ITA7cmV0dXJuIGt9Owp0T1o9ZnVuY3Rpb24obixXLEQ9MCxiLHYpe3ZhciBrPW5ldyBnLkd4KCIiLGIuZXhwZXJpbWVudHMsITEpO2suZHVyYXRpb249RHx8MDtmb3IobGV0IGggb2Ygbil7bj10WihoLFcsay5kdXJhdGlvbixiLHYpO0Q9REooaC5pbml0UmFuZ2UpO2xldCB4PURKKGguaW5kZXhSYW5nZSkse0VsOkwsczplLHk3Okd9PVAwKDEzLDcwMixoKSxyPVJ4KEx8fGgudXJsfHwiIixHLGUpO3ImJiRnKGssbmV3IHNrKHIsbixELHgpKX1yZXR1cm4ga307CnRaPWZ1bmN0aW9uKG4sVyxEPTAsYix2KXt2YXIgaz1uLm1pbWVUeXBlfHwiIixoPW4uaXRhZzt2YXIgeD1uLnh0YWdzO2g9aD9oLnRvU3RyaW5nKCk6IiI7eCYmKGgrPWA7JHt4fWApO3g9aDtpZihTRyhrKSl7dmFyIEw9bi53aWR0aHx8NjQwO2g9bi5oZWlnaHR8fDM2MDtsZXQgeT1uLmZwcyxUPW4ucXVhbGl0eUxhYmVsLHo9bi5xdWFsaXR5T3JkaW5hbCxDPW4uY29sb3JJbmZvLFE9bi5wcm9qZWN0aW9uVHlwZTt2YXIgZTtuLnN0ZXJlb0xheW91dCYmKGU9JDh4W24uc3RlcmVvTGF5b3V0XSk7bGV0IFY9TiQobil8fHZvaWQgMDt2YXIgRztDPy5wcmltYXJpZXMmJihHPXIkeFtDLnByaW1hcmllc118fHZvaWQgMCk7TD1uZXcgSFIoTCxoLHksUSxlLHZvaWQgMCxULHomJk56W3pdLFYsRywobi52aWRlb1RyYWNrPy5hc3NvY2lhdGVkQXVkaW9UcmFja0lkPy5sZW5ndGg/PzApPT09MCk7az1wNihrLEwsWWdbbi5pdGFnfHwiIl0pO0hGJiYoays9IjsgZW5hYmxlZmx1c2hkdXJpbmdzZWVrPXRydWUiKTsKZjYmJihrKz0iOyBlbmFibGVyZXNldGF1ZGlvZGVjb2Rlcj10cnVlIik7cXooYixbTF0sVyx2KSYmKGsrPSI7IGRlY29kZS10by10ZXh0dXJlPXRydWUiKX12YXIgcjtpZihJZChrKSl7dmFyIE49bi5hdWRpb1NhbXBsZVJhdGU7Yj1uLmF1ZGlvVHJhY2s7Tj1uZXcgQU0oTj8rTjp2b2lkIDAsbi5hdWRpb0NoYW5uZWxzLG4uc3BhdGlhbEF1ZGlvVHlwZSxuLmlzRHJjLG4ubG91ZG5lc3NEYixuLnRyYWNrQWJzb2x1dGVMb3VkbmVzc0xrZnMsbi5hdWRpb1F1YWxpdHl8fCJBVURJT19RVUFMSVRZX1VOS05PV04iLG4uaXNWYik7YiYmKHY9Yi5kaXNwbGF5TmFtZSxlPWIuaWQsRz1iLmF1ZGlvSXNEZWZhdWx0LGI9Yi5pc0F1dG9EdWJiZWQsdiYmKHI9bmV3IHdQKHYsZXx8IiIsISFHLCEhYikpKX12YXIgSDtuLmNhcHRpb25UcmFjayYmKGI9bi5jYXB0aW9uVHJhY2suZGlzcGxheU5hbWUsdj1uLmNhcHRpb25UcmFjay52c3NJZCxlPW4uY2FwdGlvblRyYWNrLmxhbmd1YWdlQ29kZSxHPW4uY2FwdGlvblRyYWNrLmtpbmQsCmg9bi5jYXB0aW9uVHJhY2suaWQsYiYmdiYmZSYmKEg9bmV3IEtNKGIsdixlLEcsbi54dGFncyxoKSkpO2I9TnVtYmVyKG4uYml0cmF0ZSkvODt2PU51bWJlcihuLmNvbnRlbnRMZW5ndGgpO2U9TnVtYmVyKG4ubGFzdE1vZGlmaWVkKTtoPW4uZHJtRmFtaWxpZXM7Rz1uLnR5cGU7bj1OdW1iZXIobi5hcHByb3hEdXJhdGlvbk1zKTtpZihXJiZoKXt2YXIgQT17fTtmb3IobGV0IHkgb2YgaCkoaD1KWlt5XSkmJihBW2hdPVdbaF0pfXJldHVybiBuZXcgbXUoeCxrLHthdWRpbzpOLHZpZGVvOkwsa1o6cixjb250ZW50UHJvdGVjdGlvbjpBLE5zOmIsWG46RCYmdj92L0Q6MCxjb250ZW50TGVuZ3RoOnYsbGFzdE1vZGlmaWVkOmUsY2FwdGlvblRyYWNrOkgsc3RyZWFtVHlwZTpHLGFwcHJveER1cmF0aW9uTXM6bn0pfTsKczVVPWZ1bmN0aW9uKG4pe3JldHVybiBnLm9NKG4sVz0+IkZPUk1BVF9TVFJFQU1fVFlQRV9PVEYiPT09Vy5zdHJlYW1fdHlwZSk/IkZPUk1BVF9TVFJFQU1fVFlQRV9PVEYiOiJGT1JNQVRfU1RSRUFNX1RZUEVfVU5LTk9XTiJ9OwpOcGo9ZnVuY3Rpb24obixXLEQ9MCxiLHYpe3ZhciBrPW5ldyBnLkd4KCIiLGI/LmV4cGVyaW1lbnRzLCExKTtrLmR1cmF0aW9uPUR8fDA7Zm9yKGxldCBoIG9mIG4paWYobj1JbyhoLFcsay5kdXJhdGlvbixiLHYpLEQ9UngoaC51cmwsaC5zcCxoLnMpKWlmKG4uc3RyZWFtVHlwZT09PSJGT1JNQVRfU1RSRUFNX1RZUEVfT1RGIikkZyhrLG5ldyBydChELG4pKTtlbHNle2xldCB4PW56KGguaW5pdCksTD1ueihoLmluZGV4KTskZyhrLG5ldyBzayhELG4seCxMKSl9ay5pc090Zj0hMDtyZXR1cm4ga307CnBKYj1mdW5jdGlvbihuLFcsRD0wLGIsdil7dmFyIGs9bmV3IGcuR3goIiIsYj8uZXhwZXJpbWVudHMsITEpO2suZHVyYXRpb249RHx8MDtmb3IobGV0IGggb2Ygbil7bj1JbyhoLFcsay5kdXJhdGlvbixiLHYpO0Q9bnooaC5pbml0KTtsZXQgeD1ueihoLmluZGV4KSxMPVJ4KGgudXJsLGguc3AsaC5zKTtMJiYkZyhrLG5ldyBzayhMLG4sRCx4KSl9cmV0dXJuIGt9OwpJbz1mdW5jdGlvbihuLFcsRD0wLGIsdil7dmFyIGs9bi50eXBlO3ZhciBoPW4uaXRhZzt2YXIgeD1uLnh0YWdzO3gmJihoPW4uaXRhZysiOyIreCk7aWYoU0coaykpe3ZhciBMPShuLnNpemV8fCI2NDB4MzYwIikuc3BsaXQoIngiKTtMPW5ldyBIUigrTFswXSwrTFsxXSwrbi5mcHMsbi5wcm9qZWN0aW9uX3R5cGUsK24uc3RlcmVvX2xheW91dCx2b2lkIDAsbi5xdWFsaXR5X2xhYmVsLCtuLnF1YWxpdHlfb3JkaW5hbCxuLmVvdGYsbi5wcmltYXJpZXMsIW4udmlkZW9fdHJhY2tfYXNzb2NpYXRlZF9hdWRpb190cmFja19pZCk7az1wNihrLEwsWWdbbi5pdGFnXSk7SEYmJihrKz0iOyBlbmFibGVmbHVzaGR1cmluZ3NlZWs9dHJ1ZSIpO2Y2JiYoays9IjsgZW5hYmxlcmVzZXRhdWRpb2RlY29kZXI9dHJ1ZSIpO3F6KGIsW0xdLFcsdikmJihrKz0iOyBkZWNvZGUtdG8tdGV4dHVyZT10cnVlIil9dmFyIGU7aWYoSWQoaykpe3ZhciBHPW5ldyBBTSgrbi5hdWRpb19zYW1wbGVfcmF0ZXx8dm9pZCAwLAorbi5hdWRpb19jaGFubmVsc3x8MCxuLnNwYXRpYWxfYXVkaW9fdHlwZSwhIW4uZHJjKTtuLm5hbWUmJihlPW5ldyB3UChuLm5hbWUsbi5hdWRpb190cmFja19pZCxuLmlzRGVmYXVsdD09PSIxIixuLmlzQXV0b0R1YmJlZD09PSIxIikpfXZhciByO24uY2FwdGlvbl9kaXNwbGF5X25hbWUmJm4uY2FwdGlvbl92c3NfaWQmJm4uY2FwdGlvbl9sYW5ndWFnZV9jb2RlJiYocj1uZXcgS00obi5jYXB0aW9uX2Rpc3BsYXlfbmFtZSxuLmNhcHRpb25fdnNzX2lkLG4uY2FwdGlvbl9sYW5ndWFnZV9jb2RlLG4uY2FwdGlvbl9raW5kLG4ueHRhZ3Msbi5jYXB0aW9uX2lkKSk7Yj1OdW1iZXIobi5iaXRyYXRlKS84O3Y9TnVtYmVyKG4uY2xlbik7eD1OdW1iZXIobi5sbXQpO0Q9RCYmdj92L0Q6MDtpZihXJiZuLmRybV9mYW1pbGllcyl7dmFyIE49e307Zm9yKGxldCBIIG9mIG4uZHJtX2ZhbWlsaWVzLnNwbGl0KCIsIikpTltIXT1XW0hdfXJldHVybiBuZXcgbXUoaCxrLHthdWRpbzpHLHZpZGVvOkwsCmtaOmUsY29udGVudFByb3RlY3Rpb246TixOczpiLFhuOkQsY29udGVudExlbmd0aDp2LGxhc3RNb2RpZmllZDp4LGNhcHRpb25UcmFjazpyLHN0cmVhbVR5cGU6bi5zdHJlYW1fdHlwZSxhcHByb3hEdXJhdGlvbk1zOk51bWJlcihuLmFwcHJveF9kdXJhdGlvbl9tcyl9KX07Cll1aD1mdW5jdGlvbihuKXtzd2l0Y2gobil7Y2FzZSAiZXF1aXJlY3Rhbmd1bGFyIjpyZXR1cm4iRVFVSVJFQ1RBTkdVTEFSIjtjYXNlICJlcXVpcmVjdGFuZ3VsYXJfdGhyZWVkX3RvcF9ib3R0b20iOnJldHVybiJFUVVJUkVDVEFOR1VMQVJfVEhSRUVEX1RPUF9CT1RUT00iO2Nhc2UgIm1lc2giOnJldHVybiJNRVNIIjtjYXNlICJyZWN0YW5ndWxhciI6cmV0dXJuIlJFQ1RBTkdVTEFSIjtkZWZhdWx0OnJldHVybiJVTktOT1dOIn19OwpIcWg9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgInNwYXRpYWxfYXVkaW9fdHlwZV9hbWJpc29uaWNzXzVfMSI6cmV0dXJuIlNQQVRJQUxfQVVESU9fVFlQRV9BTUJJU09OSUNTXzVfMSI7Y2FzZSAic3BhdGlhbF9hdWRpb190eXBlX2FtYmlzb25pY3NfcXVhZCI6cmV0dXJuIlNQQVRJQUxfQVVESU9fVFlQRV9BTUJJU09OSUNTX1FVQUQiO2Nhc2UgInNwYXRpYWxfYXVkaW9fdHlwZV9mb2Ffd2l0aF9ub25fZGllZ2V0aWMiOnJldHVybiJTUEFUSUFMX0FVRElPX1RZUEVfRk9BX1dJVEhfTk9OX0RJRUdFVElDIjtkZWZhdWx0OnJldHVybiJTUEFUSUFMX0FVRElPX1RZUEVfTk9ORSJ9fTsKZnRaPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gUzQobmV3IGcuR3gobixXLEQpLG4pfTsKR189ZnVuY3Rpb24obil7cmV0dXJuIGcuRGwobi5OLFc9PmdaKDI0LDExNjQsVy5YYi5OKSl9OwpmRHc9ZnVuY3Rpb24obil7cmV0dXJuIGcuRGwobi5OLFc9PiEhVy5pbmZvLnZpZGVvJiZXLmluZm8udmlkZW8uaXNIZHIoKSl9OwokZz1mdW5jdGlvbihuLFcpe24uTltXLmluZm8uaWRdPVc7bi5KLnNldChjdyhXLG4uelcpLFcpfTsKUzQ9ZnVuY3Rpb24obixXPSIiKXtuLnN0YXRlPTE7bi5TJD0oMCxnLlIpKCk7cmV0dXJuIGVnMShXfHxuLnNvdXJjZVVybCkudGhlbihEPT57aWYoIW4ucU4oKSl7bi5sTj1ELnN0YXR1cztEPUQucmVzcG9uc2VUZXh0O2xldCB2PW5ldyBET01QYXJzZXI7RD1nLmdUKHYsZy5IVihEKSwidGV4dC94bWwiKS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiTVBEIilbMF07bi5jSj1qeChsVChELCJtaW5pbXVtVXBkYXRlUGVyaW9kIikpKjFFM3x8SW5maW5pdHk7Yjp7aWYoRC5hdHRyaWJ1dGVzKWZvcihiIG9mIEQuYXR0cmlidXRlcylpZihiLnZhbHVlPT09Imh0dHA6Ly95b3V0dWJlLmNvbS95dC8yMDEyLzEwLzEwIil7dmFyIGI9Yi5uYW1lLnNwbGl0KCI6IilbMV07YnJlYWsgYn1iPSIifW4uaj1iO24uaXNMaXZlPW4uY0o8SW5maW5pdHkmJm4uaXNMaXZlUGxheWJhY2s7bi5ISj1OdW1iZXIobFQoRCxuLmorIjplYXJsaWVzdE1lZGlhU2VxdWVuY2UiKSl8fDA7aWYoYj1EYXRlLnBhcnNlKEN6KGxUKEQsCm4uaisiOm1wZFJlc3BvbnNlVGltZSIpKSkpbi5lJD0oKDAsZy5SKSgpLWIpLzFFMztuLmlzTGl2ZSYmRC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiU2VnbWVudFRpbWVsaW5lIikubGVuZ3RoPD0wfHxnLmR6KEQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIlBlcmlvZCIpLG4ueUUsbik7bi5zdGF0ZT0yO24uV0ooImxvYWRlZCIpO0FaKG4pfXJldHVybiBufSkuc1AoRD0+e2lmKEQgaW5zdGFuY2VvZiBnLiRUKXt2YXIgYj1ELnhocjsKbi5sTj1iLnN0YXR1c31uLnN0YXRlPTM7bi5XSigibG9hZGVycm9yIik7cmV0dXJuIGcucnAoYil9KX07CmcubUg9ZnVuY3Rpb24obil7cmV0dXJuIGcuRGwobi5OLFc9PlcuaW5mby5OKCkpfTsKSzY9ZnVuY3Rpb24obil7cmV0dXJuIGcuRGwobi5OLFc9PlcuaW5mby52aWRlbz9XLmluZm8udmlkZW8ucHJvamVjdGlvblR5cGU9PT0iRVFVSVJFQ1RBTkdVTEFSIjohMSl9OwpPaz1mdW5jdGlvbihuKXtyZXR1cm4gZy5EbChuLk4sVz0+Vy5pbmZvLnZpZGVvP1cuaW5mby52aWRlby5wcm9qZWN0aW9uVHlwZT09PSJFUVVJUkVDVEFOR1VMQVJfVEhSRUVEX1RPUF9CT1RUT00iOiExKX07ClBGPWZ1bmN0aW9uKG4pe3JldHVybiBnLkRsKG4uTixXPT5XLmluZm8udmlkZW8/Vy5pbmZvLnZpZGVvLnByb2plY3Rpb25UeXBlPT09Ik1FU0giOiExKX07CkokVT1mdW5jdGlvbihuKXtyZXR1cm4gZy5EbChuLk4sVz0+Vy5pbmZvLnZpZGVvP1cuaW5mby52aWRlby5zdGVyZW9MYXlvdXQ9PT0xOiExKX07Ckl0aT1mdW5jdGlvbihuKXtyZXR1cm4gZy5iayhuLk4sVz0+Vy5pbmZvLnZpZGVvP1cubnUoKTohMCl9OwpaSD1mdW5jdGlvbihuLFcsRCl7Vz1nLlZmKFcuaW5mbyxuLnpXKTtpZihEKXtsZXQgYj1Nayh7aXRhZzpXLml0YWcsbG10Om4uelc/MDpXLmxtdHx8MCx4dGFnczpXLnh0YWdzfSk7aWYobi52SltiXSlyZXR1cm47bi52SltiXT1EfW4uR0MucHVzaChXKX07CnlDPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bFQoVywiaWQiKTtEPUQucmVwbGFjZSgiOiIsIjsiKTt2YXIgYj1sVChXLCJtaW1lVHlwZSIpLHY9bFQoVywiY29kZWNzIik7Yj12P2Ake2J9OyBjb2RlY3M9IiR7dn0iYDpiO3Y9TnVtYmVyKGxUKFcsImJhbmR3aWR0aCIpKS84O3ZhciBrPU51bWJlcihUUChXLCJCYXNlVVJMIikuZ2V0QXR0cmlidXRlKG4uaisiOmNvbnRlbnRMZW5ndGgiKSksaD1uLmR1cmF0aW9uJiZrP2svbi5kdXJhdGlvbjowO2lmKFNHKGIpKXt2YXIgeD1OdW1iZXIobFQoVywid2lkdGgiKSksTD1OdW1iZXIobFQoVywiaGVpZ2h0IikpLGU9TnVtYmVyKGxUKFcsImZyYW1lUmF0ZSIpKTtsZXQgQT1ZdWgobFQoVyxuLmorIjpwcm9qZWN0aW9uVHlwZSIpKTthOnN3aXRjaChsVChXLG4uaisiOnN0ZXJlb0xheW91dCIpKXtjYXNlICJsYXlvdXRfbGVmdF9yaWdodCI6dmFyIEc9MTticmVhayBhO2Nhc2UgImxheW91dF90b3BfYm90dG9tIjpHPTI7YnJlYWsgYTtkZWZhdWx0Okc9CjB9Rz1uZXcgSFIoeCxMLGUsQSxHKX1pZihJZChiKSl7dmFyIHI9TnVtYmVyKGxUKFcsImF1ZGlvU2FtcGxpbmdSYXRlIikpO3ZhciBOPU51bWJlcihsVChXLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJBdWRpb0NoYW5uZWxDb25maWd1cmF0aW9uIilbMF0sInZhbHVlIikpO3g9SHFoKGxUKFcsbi5qKyI6c3BhdGlhbEF1ZGlvVHlwZSIpKTtyPW5ldyBBTShyLE4seCk7YTp7TD1sVChXLCJsYW5nIil8fCJ1bmQiO2lmKE49VFAoVywiUm9sZSIpKWlmKGU9bFQoTiwidmFsdWUiKXx8IiIsZy5lcChVayxlKSl7Tj1gJHtMfS4ke1VrW2VdfWA7eD1lPT09Im1haW4iO249bFQoVyxuLmorIjpsYW5nTmFtZSIpfHxgJHtMfSAtICR7ZX1gO049bmV3IHdQKG4sTix4KTticmVhayBhfU49dm9pZCAwfX1pZihXPVRQKFcsIkNvbnRlbnRQcm90ZWN0aW9uIikpaWYoVy5nZXRBdHRyaWJ1dGUoInNjaGVtZUlkVXJpIik9PT0iaHR0cDovL3lvdXR1YmUuY29tL2RybS8yMDEyLzEwLzEwIil7dmFyIEg9e307Zm9yKFc9ClcuZmlyc3RDaGlsZDtXIT1udWxsO1c9Vy5uZXh0U2libGluZyl7aWYoIShXIGluc3RhbmNlb2YgRWxlbWVudCkpY29udGludWU7aWYoIS9TeXN0ZW1VUkwvLnRlc3QoVy5ub2RlTmFtZSkpY29udGludWU7bj1XLmdldEF0dHJpYnV0ZSgidHlwZSIpO3g9Vy50ZXh0Q29udGVudDtuJiZ4JiYoSFtuXT14LnRyaW0oKSl9fWVsc2UgSD12b2lkIDA7cmV0dXJuIG5ldyBtdShELGIse2F1ZGlvOnIsdmlkZW86RyxrWjpOLGNvbnRlbnRQcm90ZWN0aW9uOkgsTnM6dixYbjpoLGNvbnRlbnRMZW5ndGg6a30pfTsKQVo9ZnVuY3Rpb24obil7dmFyIFc9bi5jSjtpc0Zpbml0ZShXKSYmKEVrKG4pP24ucmVmcmVzaCgpOihXPU1hdGgubWF4KDAsbi5TJCtXLSgwLGcuUikoKSksbi5LfHwobi5LPW5ldyBnLmZfKG4ucmVmcmVzaCxXLG4pLGcudShuLG4uSykpLG4uSy5zdGFydChXKSkpfTsKdmFyIFN1eD1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgsTCxlKXtyZXR1cm4gTTNbSVsxMF1dKHRoaXMsNCwxNjk5LG4sVyxELGIsdixrLGgseCxMLGUpfTsKRWs9ZnVuY3Rpb24obil7cmV0dXJuIG4uaXNMaXZlJiYoMCxnLlIpKCktbi5TJD49bi5jSn07CkEkaT1mdW5jdGlvbihuKXtuPW4uTjtmb3IobGV0IFcgaW4gbil7bGV0IEQ9bltXXS5pbmRleDtpZihELmlzTG9hZGVkKCkpcmV0dXJuIEQueCQoKSsxfXJldHVybiAwfTsKaUE9ZnVuY3Rpb24obil7cmV0dXJuIG4ub1I/bi5vUi0obi5EfHxuLnRpbWVzdGFtcE9mZnNldCk6MH07CnVBPWZ1bmN0aW9uKG4pe3JldHVybiBuLkpVP24uSlUtKG4uRHx8bi50aW1lc3RhbXBPZmZzZXQpOjB9Owpvbz1mdW5jdGlvbihuKXtpZighaXNOYU4obi5UQykpcmV0dXJuIG4uVEM7dmFyIFc9bi5OO2Zvcih2YXIgRCBpbiBXKXt2YXIgYj1XW0RdLmluZGV4O2lmKGIuaXNMb2FkZWQoKSYmIVdbRF0uaW5mby5OKCkpe1c9MDtmb3IoRD1iLlpPKCk7RDw9Yi54JCgpO0QrKylXKz1iLmdldER1cmF0aW9uKEQpO1cvPWIuSDcoKTtXPU1hdGgucm91bmQoVy8uNSkqLjU7Yi5INygpPjEwJiYobi5UQz1XKTtyZXR1cm4gV31pZihuLmlzTGl2ZSYmKGI9V1tEXSxiLnJiKSlyZXR1cm4gYi5yYn1yZXR1cm4gTmFOfTsKbTh0PWZ1bmN0aW9uKG4sVyl7bj1xYyhuLk4sYj0+Yi5pbmRleC5pc0xvYWRlZCgpKTsKaWYoIW4pcmV0dXJuIE5hTjtuPW4uaW5kZXg7dmFyIEQ9bi5SMyhXKTtyZXR1cm4gbi5nZXRTdGFydFRpbWUoRCk9PT1XP1c6RDxuLngkKCk/bi5nZXRTdGFydFRpbWUoRCsxKTpOYU59Owp6eD1mdW5jdGlvbihuLFcpe2lmKCFuLk5bIjAiXSl7dmFyIEQ9bmV3IG11KCIwIiwiZmFrZXNiIix7dmlkZW86bmV3IEhSKDAsMCwwLHZvaWQgMCx2b2lkIDAsImF1dG8iKX0pO24uTlsiMCJdPVc/bmV3IGR0KG5ldyBnLndaKCJodHRwOi8vd3d3LnlvdXR1YmUuY29tL3ZpZGVvcGxheWJhY2siKSxELCJmYWtlIik6bmV3IHNrKG5ldyBnLndaKCJodHRwOi8vd3d3LnlvdXR1YmUuY29tL3ZpZGVvcGxheWJhY2siKSxELG5ldyBhQigwLDApLG5ldyBhQigwLDApKX19OwpnLmxBPWZ1bmN0aW9uKG4pe2lmKG4uaXNNYW5pZmVzdGxlc3MpZm9yKGxldCBXIGluIG4uTiluLk5bV10uaW5kZXguc2VnbWVudHM9W119OwpUeD1mdW5jdGlvbihuLFcsRCl7Zm9yKGxldCBiIGluIG4uTil7bGV0IHY9bi5OW2JdLmluZm8uTigpfHxuLk5bYl0uaW5mby5mWSgpO0Q9PT12JiZuLk5bYl0uaW5kZXg/Lk8oVyl9fTsKajQ9ZnVuY3Rpb24obil7Zm9yKGxldCBXIGluIG4uTiluLk5bV10uaW5mby5OKCl8fFBBKG4uTltXXS5pbmRleCxJbmZpbml0eSl9OwpDNj1mdW5jdGlvbihuLFcsRCl7Zm9yKGxldCBoIGluIG4uTil7dmFyIGI9bi5OW2hdLmluZGV4LHY9VyxrPUQ7Yi5PVCYmKHYmJihiLnFxPU1hdGgubWF4KGIucXEsdikpLGsmJihiLkRuPU1hdGgubWF4KGIuRG58fDAsaykpKX1EJiYobi50dz1ELzFFMyl9OwpCRj1mdW5jdGlvbihuLFcsRCxiPSExKXtiJiZEPT09bi5QWHx8KG4uYmQucHVzaChXKSxuLlBYPUQsbi5XSigiY3VlcG9pbnRzYWRkZWQiLEQpKX07CktLdD1mdW5jdGlvbihuKXtuLkpVPTA7bi5vUj0wO24uSVQ9MH07CkZ2PWZ1bmN0aW9uKG4pe3JldHVybiBuLlZRJiZuLmlzTWFuaWZlc3RsZXNzP24uaXNMaXZlSGVhZFBsYXlhYmxlOm4uaXNMaXZlfTsKcDY9ZnVuY3Rpb24obixXLEQpe3d0PT09bnVsbCYmKHd0PXdpbmRvdy5NZWRpYVNvdXJjZSYmTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkJiZNZWRpYVNvdXJjZS5pc1R5cGVTdXBwb3J0ZWQoJ3ZpZGVvL3dlYm07IGNvZGVjcz0idnAwOS4wMi41MS4xMC4wMS4wOS4xNi4wOS4wMCInKSYmIU1lZGlhU291cmNlLmlzVHlwZVN1cHBvcnRlZCgndmlkZW8vd2VibTsgY29kZWNzPSJ2cDA5LjAyLjUxLjEwLjAxLjA5Ljk5Ljk5LjAwIicpKTtpZihNeiYmd2luZG93Lk1lZGlhU291cmNlJiZNZWRpYVNvdXJjZS5pc1R5cGVTdXBwb3J0ZWQhPT12b2lkIDApcmV0dXJuIHd0fHxEIT09IjkiJiZEIT09IigiP3d0fHxEIT09IjloIiYmRCE9PSIoaCJ8fChuPSd2aWRlby93ZWJtOyBjb2RlY3M9InZwOS4yIicpOm49J3ZpZGVvL3dlYm07IGNvZGVjcz0idnA5IicsbjtpZighd3QmJiFSb3x8biE9PSd2aWRlby93ZWJtOyBjb2RlY3M9InZwOSInJiZuIT09J3ZpZGVvL3dlYm07IGNvZGVjcz0idnA5LjIiJylyZXR1cm4gbjsKRD0iMDAiO3ZhciBiPSIwOCIsdj0iMDEiLGs9IjAxIixoPSIwMSI7bj09PSd2aWRlby93ZWJtOyBjb2RlY3M9InZwOS4yIicmJihEPSIwMiIsYj0iMTAiLFcucHJpbWFyaWVzPT09ImJ0MjAyMCImJihoPXY9IjA5IiksVy5OPT09InNtcHRlMjA4NCImJihrPSIxNiIpLFcuTj09PSJhcmliLXN0ZC1iNjciJiYoaz0iMTgiKSk7cmV0dXJuYHZpZGVvL3dlYm07IGNvZGVjcz0iJHtbInZwMDkiLEQsIjUxIixiLCIwMSIsdixrLGgsIjAwIl0uam9pbigiLiIpfSJgfTsKVkM9ZnVuY3Rpb24obixXLEQpe249YCR7bn0ke1c+NDk/InA2MCI6Vz4zMj8icDQ4IjoiIn1gO1c9ZjcoKVtuXTtpZihXIT1udWxsJiZXPjApcmV0dXJuIFc7Vz1RQy5nZXQobik7aWYoVyE9bnVsbCYmVz4wKXJldHVybiBXO0Q9RD8uZ2V0KG4pO3JldHVybiBEIT1udWxsJiZEPjA/RDo4MTkyfTsKT3F4PWZ1bmN0aW9uKG4sVz0hMSl7UWh3KFcpO1ZwQyhXKTtpZihXKXtmb3IobGV0IEQgb2YgUUMua2V5cygpKUQuc3RhcnRzV2l0aCgiMSIpfHxRQy5kZWxldGUoRCk7Zm9yKGxldCBEIG9mIGNGLnZhbHVlcygpKUQuc3RhcnRzV2l0aCgiMSIpfHxjRi5kZWxldGUoRCk7Zm9yKGxldCBEIG9mIG4ua2V5cygpKUQuc3RhcnRzV2l0aCgiMSIpfHxuLmRlbGV0ZShEKX1lbHNlIFFDLmNsZWFyKCksY0YuY2xlYXIoKSxuLmNsZWFyKCl9OwpVOFo9ZnVuY3Rpb24obix7aXNPdGY6VyxtVjpELHlYOmIsSVI6dixPdzprLEhpOmgsbFU6eCxvTDpMLHhkOmUsZGlzYWJsZUF2MTpHLGRCOnJ9KXt2YXIgTj1uZXcgUGVNKG4pO2lmKG4uV1goKXx8bi5TKCJodG1sNV9sb2dnaW5nX2Zvcm1hdF9zZWxlY3Rpb24iKSlOLlc9ITA7Ti5HQz1rO04uSGk9aCYmbi5LO04ueGQ9ZTtnLnViKCJ3aW5kb3dzIG50IDUuMSIpJiYhZy5hbyYmKE4uYnY9ITApO2lmKGs9RClrPWcubk4obik/WnFTKG4pOiExO2smJihOLmNKPSEwKTt4JiYoTi5idj0hMCxOLk5kPSEwKTtXJiYhbi5TKCJodG1sNV9vdGZfcHJlZmVyX3ZwOSIpJiYoTi5idj0hMCk7bi5wbGF5ZXJTdHlsZT09PSJwaWNhc2F3ZWIiJiYoVyYmKE4uYnY9ITEpLE4udHc9ITEpO3YmJihOLmJ2PSEwKTtTSihuLlcsQVQuQ0hBTk5FTFMpJiYobi5TKCJodG1sNV9lbmFibGVfYWMzIikmJihOLmo9ITApLG4uUygiaHRtbDVfZW5hYmxlX2VhYzMiKSYmKE4uVj0hMCksbi5TKCJodG1sNV9lbmFibGVfYWMzX2dhcGxlc3MiKSYmCihOLkhKPSEwKSk7bi5TKCJodG1sNV9ibG9ja184a19oZnIiKSYmKE4uUFg9ITApO04uSz1nLmRNKG4uZXhwZXJpbWVudHMsImh0bWw1X21heF9zZWxlY3RhYmxlX3F1YWxpdHlfb3JkaW5hbCIpO04uWT1nLmRNKG4uZXhwZXJpbWVudHMsImh0bWw1X21pbl9zZWxlY3RhYmxlX3F1YWxpdHlfb3JkaW5hbCIpO2cuV1gmJihOLndhPTQ4MCk7aWYoYnx8RClOLnR3PSExO04uQ3U9ITE7Ti5kaXNhYmxlQXYxPUc7Ti5KPW4uUygiaHRtbDVfbG9nX25vX2F2MV9yZWFzb24iKTtXPURLKG4sTi5OLHZvaWQgMCxOLmRpc2FibGVBdjEpO1c+MCYmVzwyMTYwJiYoVlQoKXx8bi5TKCJodG1sNV9mb3JtYXRfaHlicmlkaXphdGlvbiIpKSYmKE4uTi5zdXBwb3J0c0NoYW5nZVR5cGU9K1ZUKCksTi5uUz1XKTtXPj0yMTYwJiYoTi5lJD0hMCk7Ti5vTD1MO04uRkY9Zy5SZ3x8YzAoKSYmIUw/ITE6ITA7Ti5EPW4uUygiaHRtbDVfZm9ybWF0X2h5YnJpZGl6YXRpb24iKTtOLkJWPW4uUygiaHRtbDVfZGlzYWJsZV9lbmNyeXB0ZWRfdnA5X2xpdmVfbm9uXzJrXzRrIik7Ck4ualc9cjtyZXR1cm4gTn07CkRLPWZ1bmN0aW9uKG4sVz17fSxELGI9ITEpe2lmKGIpcmV0dXJuIFcuZGlzYWJsZWQ9MSwwO2lmKFNKKG4uVyxBVC5BVjFfQ09ERUNTKSYmU0oobi5XLEFULkhFSUdIVCkmJlNKKG4uVyxBVC5CSVRSQVRFKSlyZXR1cm4gVy5pc0NhcGFiaWxpdHlVc2FibGU9MSw4MTkyO2I9MTA4MDt2YXIgdj1uYXZpZ2F0b3IuaGFyZHdhcmVDb25jdXJyZW5jeTt2PD0yJiYoYj00ODApO1cuY29yZUNvdW50PXY7aWYodj1nLmRNKG4uZXhwZXJpbWVudHMsImh0bWw1X2RlZmF1bHRfYXYxX3RocmVzaG9sZCIpKWI9V1siZGVmYXVsdCJdPXY7aWYodj1uLlcuY0opVy5tY2FwPXYsYj1NYXRoLm1heChiLHYpO2lmKEQpe2lmKHY9RC52aWRlb0luZm9zLmZpbmQoaD0+aC5NVygpKT8uaj8ucG93ZXJFZmZpY2llbnQpYj04MTkyLFcuaXNFZmZpY2llbnQ9MTsKRD1ELnZpZGVvSW5mb3NbMF0udmlkZW87bGV0IGs9TWF0aC5taW4oVkMoIjEiLEQuZnBzKSxWQygiMSIsMzApKTtXLnBlcmZDYXA9aztiPU1hdGgubWluKGIsayk7IUQuaXNIZHIoKXx8dnx8bi5adCgpLk4uUVEoeSRqKXx8KFcuaGRyPTEsYio9Ljc1KX1lbHNlIG49VkMoIjEiLDMwKSxXLnBlcmZDYXAzMD1uLGI9TWF0aC5taW4oYixuKSxuPVZDKCIxIiw2MCksVy5wZXJmQ2FwNjA9bixiPU1hdGgubWluKGIsbik7cmV0dXJuIFcuYXYxVGhyZXNob2xkPWJ9OwpySGk9ZnVuY3Rpb24obil7dmFyIFc9WyJvIiwiYSIsIkEiXTtpZihuLnhkPT09MSYmKG4uaiYmKFc9WyJtYWMzIiwiTUFDMyJdLmNvbmNhdChXKSksbi5WJiYoVz1bIm1lYWMzIiwiTUVBQzMiXS5jb25jYXQoVykpLG4uVlF8fG4uZkIpKXtsZXQgRD1bXTtuLlZRJiZELnB1c2goImkiKTtuLmZCJiZELnB1c2goIkkiKTtXPUQuY29uY2F0KFcpfW4uY0omJihXPVsic28iLCJzYSJdLmNvbmNhdChXKSk7IW4uTmR8fG4uSEp8fG4uWHx8bi5zNXx8Vy51bnNoaWZ0KCJhIik7bi5YJiYoVz0oYm9bbi5YXXx8W24uWF0pLmNvbmNhdChXKSk7cmV0dXJuIFd9OwpKSHI9ZnVuY3Rpb24obil7aWYobi5HQylyZXR1cm5bImYiXTtpZihnLnViKCJhcHBsZXR2NSIpKXJldHVybiJoIDloIDkgOCBIIChoICggKiIuc3BsaXQoIiAiKTt2YXIgVz1bIjloIiwiOSIsImgiLCI4Il07bi5ZJCYmVy5wdXNoKCIxZSIpO1c9Vy5jb25jYXQoWyIoaCIsIigiLCJIIiwiKiJdKTtuLmUkJiYoVy51bnNoaWZ0KCIxIiksVy51bnNoaWZ0KCIxaCIpKTtuLmJ2JiZXLnVuc2hpZnQoImgiKTtuLk8mJihXPShib1tuLk9dfHxbbi5PXSkuY29uY2F0KFcpKTtyZXR1cm4gV307CnZYPWZ1bmN0aW9uKCl7dmFyIG49d2luZG93LFc9bi5NU01lZGlhS2V5cztDJCgpJiYhVyYmKFc9bi5XZWJLaXRNZWRpYUtleXMpO3JldHVybiBXJiZXLmlzVHlwZVN1cHBvcnRlZD9XOm51bGx9Owpoej1mdW5jdGlvbihuKXtyZXR1cm4gbmF2aWdhdG9yLnJlcXVlc3RNZWRpYUtleVN5c3RlbUFjY2Vzcz9nLm9kJiYhZy5kOCgpP0NfKCI0NSIpOmcuUmd8fGcua2g/bi5FcSgiZWRnZV9ub25wcmVmaXhlZF9lbWUiKTpnLmFvP0NfKCI0NyIpOmcuR24mJm4uRXEoImh0bWw1X2VuYWJsZV9zYWZhcmlfZmFpcnBsYXkiKT8hMTohMDohMX07CnhoPWZ1bmN0aW9uKG4pe3JldHVybiBuLlg/ITE6IW4ua2V5U3lzdGVtQWNjZXNzJiYhIXZYKCkmJm4ua2V5U3lzdGVtPT09ImNvbS5taWNyb3NvZnQucGxheXJlYWR5In07CkxOPWZ1bmN0aW9uKG4pe3JldHVybiBuLmtleVN5c3RlbT09PSJjb20ubWljcm9zb2Z0LnBsYXlyZWFkeSJ9OwplVD1mdW5jdGlvbihuKXtyZXR1cm4hbi5rZXlTeXN0ZW1BY2Nlc3MmJiEhdlgoKSYmbi5rZXlTeXN0ZW09PT0iY29tLmFwcGxlLmZwcy4xXzAifTsKZzE9ZnVuY3Rpb24obil7cmV0dXJuIG4ua2V5U3lzdGVtPT09ImNvbS55b3V0dWJlLmZhaXJwbGF5In07CmcuWFY9ZnVuY3Rpb24obil7cmV0dXJuIG4uZmxhdm9yPT09ImZhaXJwbGF5In07CkVHQz1mdW5jdGlvbihuLFcsRCxiKXt2YXIgdj16USgpLGs9KEQ9dnx8RCYmQyQoKSk/WyJjb20ueW91dHViZS5mYWlycGxheSJdOlsiY29tLndpZGV2aW5lLmFscGhhIl07VyYmay51bnNoaWZ0KCJjb20ueW91dHViZS53aWRldmluZS5sMyIpO3YmJmImJmsudW5zaGlmdCgiY29tLnlvdXR1YmUuZmFpcnBsYXkuc2JkbCIpO3JldHVybiBEP2s6bj9bLi4uaywuLi5xVi5wbGF5cmVhZHldOlsuLi5xVi5wbGF5cmVhZHksLi4ua119OwokaD1mdW5jdGlvbihuKXtpZighbi5xTigpKWlmKG4uSi5sZW5ndGg9PT0wKW4uY2FsbGJhY2sobi5YKTtlbHNle3ZhciBXPW4uSlswXSxEPW4uV1tXXSxiPWlxdChuLEQpO0dMJiZHTC5rZXlTeXN0ZW09PT1XJiZHTC5JMT09PUpTT04uc3RyaW5naWZ5KGIpPyhuLlUoInJlbWtzYSIse3JlOiEwfSksdHoobixELEdMLmtleVN5c3RlbUFjY2VzcykpOihuLlUoInJlbWtzYSIse3JlOiExLG9rOkdMPy5rZXlTeXN0ZW0/PyIifSksR0w9dm9pZCAwLG5hdmlnYXRvci5yZXF1ZXN0TWVkaWFLZXlTeXN0ZW1BY2Nlc3MoVyxiKS50aGVuKFl6KHY9Pnt0eihuLEQsdixiKX0pLFl6KCgpPT57bi5qPSFuLmomJm4uV1tuLkpbMF1dLmZsYXZvcj09PSJ3aWRldmluZSI7Cm4uanx8bi5KLnNoaWZ0KCk7JGgobil9KSkpfX07Cm9Hdz1mdW5jdGlvbihuKXtpZih2WCgpJiYoZy5Hbnx8dzgpKW4uWC5wdXNoKG5ldyByMSgiZmFpcnBsYXkiLCJjb20uYXBwbGUuZnBzLjFfMCIsIiIsbi55US5leHBlcmltZW50cykpO2Vsc2V7dmFyIFc9dTFyKCksRD1nLmxfKG4uSixiPT57dmFyIHY9bi5XW2JdLGs9ITEsaD0hMTtmb3IobGV0IHggaW4gbi5OW3YuZmxhdm9yXSlXKHgsYikmJih2LkpbeF09ITAsaz1rfHx4LmluZGV4T2YoImF1ZGlvLyIpPT09MCxoPWh8fHguaW5kZXhPZigidmlkZW8vIik9PT0wKTtyZXR1cm4gayYmaH0pOwpEJiZuLlgucHVzaChuLldbRF0pO24uSj1bXX1uLmNhbGxiYWNrKG4uWCl9OwpkOGk9ZnVuY3Rpb24obixXKXtuLmNhbGxiYWNrPVc7bi5YPVtdO2h6KG4ueVEuZXhwZXJpbWVudHMpPyRoKG4pOm9HdyhuKX07CmlxdD1mdW5jdGlvbihuLFcpe3ZhciBEPXtpbml0RGF0YVR5cGVzOlsiY2VuYyIsIndlYm0iXSxhdWRpb0NhcGFiaWxpdGllczpbXSx2aWRlb0NhcGFiaWxpdGllczpbXX07aWYobi5TKCJodG1sNV9lbmFibGVfdnA5X2ZhaXJwbGF5IikmJmcxKFcpKXJldHVybiBELmF1ZGlvQ2FwYWJpbGl0aWVzLnB1c2goe2NvbnRlbnRUeXBlOidhdWRpby9tcDQ7IGNvZGVjcz0ibXA0YS40MC41Iid9KSxELnZpZGVvQ2FwYWJpbGl0aWVzLnB1c2goe2NvbnRlbnRUeXBlOid2aWRlby9tcDQ7IGNvZGVjcz0iYXZjMS40ZDQwMGIiJ30pLFtEXTtMTihXKSYmKEQuaW5pdERhdGFUeXBlcz1bImtleWlkcyIsImNlbmMiXSk7Zm9yKGxldCB2IG9mIE9iamVjdC5rZXlzKG4uTltXLmZsYXZvcl0pKXt2YXIgYj12LmluZGV4T2YoImF1ZGlvLyIpPT09MDtsZXQgaz1iP0QuYXVkaW9DYXBhYmlsaXRpZXM6RC52aWRlb0NhcGFiaWxpdGllcztXLmZsYXZvciE9PSJ3aWRldmluZSJ8fG4uaj9rLnB1c2goe2NvbnRlbnRUeXBlOnZ9KToKYj9rLnB1c2goe2NvbnRlbnRUeXBlOnYscm9idXN0bmVzczoiU1dfU0VDVVJFX0NSWVBUTyJ9KTooZy5vZCYmZy51Yigid2luZG93cyBudCIpJiYhbi5TKCJodG1sNV9kcm1fZW5hYmxlX21vaG8iKXx8ay5wdXNoKHtjb250ZW50VHlwZTp2LHJvYnVzdG5lc3M6IkhXX1NFQ1VSRV9BTEwifSksYj12LG4ueVEuVy5KJiZ2LmluY2x1ZGVzKCJ2cDA5IikmJihiPXYrIjsgZXhwZXJpbWVudGFsPWFsbG93ZWQiKSxrLnB1c2goe2NvbnRlbnRUeXBlOmIscm9idXN0bmVzczoiU1dfU0VDVVJFX0RFQ09ERSJ9KSxnLnNkKG4ueVEpJiYoVkgoKXx8b0soKSkmJihuLlUoInN3Y3J5cHRvIix7fSksay5wdXNoKHtjb250ZW50VHlwZTp2LHJvYnVzdG5lc3M6IlNXX1NFQ1VSRV9DUllQVE8ifSkpKX1yZXR1cm5bRF19Owp0ej1mdW5jdGlvbihuLFcsRCxiKXtpZighbi5xTigpKXtiJiYoR0w9e2tleVN5c3RlbTpXLmtleVN5c3RlbSxrZXlTeXN0ZW1BY2Nlc3M6RCxJMTpKU09OLnN0cmluZ2lmeShiKX0pO1cua2V5U3lzdGVtQWNjZXNzPUQ7aWYoTE4oVykpe3ZhciB2PWk4KCk7Zm9yKHZhciBrIG9mIE9iamVjdC5rZXlzKG4uTltXLmZsYXZvcl0pKVcuSltrXT0hIXYuY2FuUGxheVR5cGUoayl9ZWxzZXtrPVcua2V5U3lzdGVtQWNjZXNzLmdldENvbmZpZ3VyYXRpb24oKTtpZihrLmF1ZGlvQ2FwYWJpbGl0aWVzKWZvcih2IG9mIGsuYXVkaW9DYXBhYmlsaXRpZXMpVy5KW3YuY29udGVudFR5cGVdPSEwO2lmKGsudmlkZW9DYXBhYmlsaXRpZXMpZm9yKGxldCBoIG9mIGsudmlkZW9DYXBhYmlsaXRpZXMpVy5KW2guY29udGVudFR5cGVdPSEwfW4uWC5wdXNoKFcpO24udXNlQ29iYWx0V2lkZXZpbmV8fG4uUygiaHRtbDVfZW5hYmxlX3ZwOV9mYWlycGxheSIpJiZXLk4oKT8obi5KLnNoaWZ0KCksJGgobikpOm4uY2FsbGJhY2sobi5YKX19Owp1MXI9ZnVuY3Rpb24oKXt2YXIgbj12WCgpO2lmKG4pe2xldCBEPW4uaXNUeXBlU3VwcG9ydGVkO3JldHVybihiLHYpPT5EKHYsYil9dmFyIFc9aTgoKTsKcmV0dXJuIFcmJihXLmFkZEtleXx8Vy53ZWJraXRBZGRLZXkpPyhELGIpPT4hIVcuY2FuUGxheVR5cGUoRCxiKTooKT0+ITF9OwpsdGI9ZnVuY3Rpb24obixXKXtzd2l0Y2goVy5VMCl7Y2FzZSAiYm9vbCI6cmV0dXJuIG4uRXEoVy5ueCk7Y2FzZSAiaW50IjpyZXR1cm4gbj1OVihuLFcubngpLGcuJFUobik7Y2FzZSAiZG91YmxlIjpyZXR1cm4gTlYobixXLm54KTtjYXNlICJzdHJpbmciOnJldHVybiB6ZzIobixXLm54KTtjYXNlICJpbnQzMl9saXN0IjpyZXR1cm4gcE4obixXLm54KTtjYXNlICJpbnQ2NF9saXN0IjpyZXR1cm4gcE4obixXLm54KS5tYXAoRD0+Zy4kVShEKSk7CmNhc2UgInN0cmluZ19saXN0Ijp0aHJvdyBFcnJvcigiU3RyaW5nIGxpc3QgZmxhZ3MgYXJlIG5vdCBzdXBwb3J0ZWQgaW4gV1BDQyIpO2RlZmF1bHQ6dGhyb3cgRXJyb3IoIlVua25vd24gZmxhZyB0eXBlIik7fX07Ck5WPWZ1bmN0aW9uKG4sVyl7bj1uLmZsYWdzLmdldChgJHtXfWApO3JldHVybiBOdW1iZXIobil8fDB9Owp6ZzI9ZnVuY3Rpb24obixXKXtyZXR1cm4obj1uLmZsYWdzLmdldChgJHtXfWApKT9uLnRvU3RyaW5nKCk6IiJ9OwpwTj1mdW5jdGlvbihuLFcpe2lmKG49bi5mbGFncy5nZXQoYCR7V31gKSlpZihuPW4ucmVwbGFjZSgvXFsgKiguKj8pICpcXS8sIiQxIikpcmV0dXJuIG4uc3BsaXQoIiwiKS5tYXAoTnVtYmVyKTtyZXR1cm5bXX07CmcuZE09ZnVuY3Rpb24obixXLEQ9MCl7bj1uLlFRKFcpO0pTT04uc3RyaW5naWZ5KG4pO3JldHVybiBuPT09dm9pZCAwP0Q6TnVtYmVyKG4pfTsKZy5ZaD1mdW5jdGlvbihuLFcpe3JldHVybihuPW4uUVEoVykpP24udG9TdHJpbmcoKToiIn07ClRwYj1mdW5jdGlvbihuKXtpZihuPW4uUVEoImh0bWw1X3dlYl9wb19leHBlcmltZW50X2lkcyIpKWlmKG49bi5yZXBsYWNlKC9cWyAqKC4qPykgKlxdLywiJDEiKSlyZXR1cm4gbi5zcGxpdCgiLCIpLm1hcChOdW1iZXIpO3JldHVybltdfTsKSFg9ZnVuY3Rpb24obil7aWYobi5OKXJldHVybiBuLk47aWYobi5leHBlcmltZW50SWRzLmxlbmd0aDw9MSlyZXR1cm4gbi5OPW4uZXhwZXJpbWVudElkcyxuLk47dmFyIFc9Wy4uLm4uZXhwZXJpbWVudElkc10ubWFwKEQ9Pk51bWJlcihEKSk7Clcuc29ydCgpO2ZvcihsZXQgRD1XLmxlbmd0aC0xO0Q+MDstLUQpV1tEXS09V1tELTFdO24uTj1XLm1hcChEPT5ELnRvU3RyaW5nKCkpOwpuLk4udW5zaGlmdCgidjEiKTtyZXR1cm4gbi5OfTsKTkRTPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bmV3IE1hcDtmb3IobGV0IGIgb2YgVy5rZXlzKCkpe2xldCB2PWIuc3BsaXQoIl8iKVswXTtuLmhhcyh2KXx8RC5zZXQoYixXLmdldChiKSl9cmV0dXJuIER9OwpZMlM9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVcudmlkZW8/LmZwc3x8MCx2PWAke259XyR7Yn1gLGs9ISFXLmF1ZGlvLGg9e2l0YWc6Vy5pdGFnLElCOm4sZVM6a307aWYoayloLm51bUNoYW5uZWxzPVcuYXVkaW8ubnVtQ2hhbm5lbHM7ZWxzZXt2YXIgeD1XLnZpZGVvO2gubWF4V2lkdGg9eD8ud2lkdGg7aC5tYXhIZWlnaHQ9eD8uaGVpZ2h0O2gubWF4RnJhbWVyYXRlPWI7aC5tYXhCaXRyYXRlQnBzPVcuTnMqODtoLno5PXg/LmlzSGRyKCl9eD1ELmdldCh2KTt4P2t8fChXPU1hdGgubWF4KHgubWF4V2lkdGh8fDAseC5tYXhIZWlnaHR8fDApPk1hdGgubWF4KGgubWF4V2lkdGh8fDAsaC5tYXhIZWlnaHR8fDApP3g6aCxuPXtpdGFnOlcuaXRhZyxJQjpuLGVTOmssbWF4V2lkdGg6TWF0aC5tYXgoeC5tYXhXaWR0aHx8MCxoLm1heFdpZHRofHwwKSxtYXhIZWlnaHQ6TWF0aC5tYXgoeC5tYXhIZWlnaHR8fDAsaC5tYXhIZWlnaHR8fDApLG1heEZyYW1lcmF0ZTpiLHo5Olcuejl9LG4ubWF4Qml0cmF0ZUJwcz0KVy5tYXhCaXRyYXRlQnBzLEQuc2V0KHYsbikpOkQuc2V0KHYsaCl9OwpPRD1mdW5jdGlvbihuLFcsRD0xKXt2YXIgYj1XLml0YWc7aWYoYj09PSIwIilyZXR1cm4hMDt2YXIgdj1XLm1pbWVUeXBlO2lmKFcuSUI9PT0iMWUiJiYhbi5YKXJldHVybiJkYXYxZW5jIjtpZihXLk1XKCkmJm4uWSlyZXR1cm4iZGF2MSI7aWYoVy52aWRlbyYmKFcudmlkZW8uaXNIZHIoKXx8Vy52aWRlby5wcmltYXJpZXM9PT0iYnQyMDIwIikmJiEoU0oobixBVC5FT1RGKXx8d2luZG93Lm1hdGNoTWVkaWEmJih3aW5kb3cubWF0Y2hNZWRpYSgiKGR5bmFtaWMtcmFuZ2U6IGhpZ2gpLCAodmlkZW8tZHluYW1pYy1yYW5nZTogaGlnaCkiKS5tYXRjaGVzfHx3aW5kb3cuc2NyZWVuLnBpeGVsRGVwdGg+MjQmJndpbmRvdy5tYXRjaE1lZGlhKCIoY29sb3ItZ2FtdXQ6IHAzKSIpLm1hdGNoZXMpKSlyZXR1cm4iZGhkciI7aWYoYj09PSIzMzgiJiYhKGcub2Q/Q18oNTMpOmcuYW8mJkNfKDY0KSkpcmV0dXJuImRvcHVzIjtEPXZHVShXLEQpO24uSiYmVy5YKCkmJihEW0FULkVYUEVSSU1FTlRBTC5uYW1lXT0KImFsbG93ZWQiKTtmb3IobGV0IHggb2YgT2JqZWN0LmtleXMoQVQpKXtsZXQgTD1BVFt4XTt2YXIgaztpZihrPURbTC5uYW1lXSlpZihrPSEoTD09PUFULkVPVEYmJlcubWltZVR5cGUuaW5kZXhPZigidnAwOS4wMiIpPjApKXtrPUw7dmFyIGg9VztrPSEobi5leHBlcmltZW50cy5FcSgiaHRtbDVfaWdub3JlX2gyNjRfZnJhbWVyYXRlX2NhcCIpJiZrPT09QVQuRlJBTUVSQVRFJiYoaC5JQj09PSJIInx8aC5JQj09PSJoIikpfWlmKGspaWYoU0oobixMKSlpZihuLmope2lmKG4ualtMLm5hbWVdPERbTC5uYW1lXSlyZXR1cm4gTC5uYW1lfWVsc2Ugdj1gJHt2fTsgJHtMLm5hbWV9PSR7RFtMLm5hbWVdfWA7ZWxzZSBpZihaTyhXKSYmTD09PUFULkVPVEYpcmV0dXJuImR2cDkyIn1uLk8mJlcudmlkZW8mJlcudmlkZW8ucXVhbGl0eU9yZGluYWw+MTA4MCYmVy5jb250ZW50UHJvdGVjdGlvbiYmKHYrPSI7IGhkY3A9Mi4yIik7cmV0dXJuIGI9PT0iMjI3Ij8iaHFjZW5jIjpiPT09IjU4NSJ8fApiPT09IjU4OCJ8fGI9PT0iNTgzInx8Yj09PSI1ODYifHxiPT09IjU4NCJ8fGI9PT0iNTg3Inx8Yj09PSI1OTEifHxiPT09IjU5MiI/Im5ld2h2YyI6elEoKSYmaWIoKT49MjEmJmcudWIoImFwcGxldHY1IikmJihiPT09IjQxMCJ8fGI9PT0iODQ1Iik/ITA6bi5pc1R5cGVTdXBwb3J0ZWQodik/ITA6InRwdXMifTsKU0o9ZnVuY3Rpb24obixXKXtXLm5hbWUgaW4gbi5EfHwobi5EW1cubmFtZV09ajVpKG4sVykpO3JldHVybiBuLkRbVy5uYW1lXX07CkNlVT1mdW5jdGlvbihuKXtuYXZpZ2F0b3IubWVkaWFDYXBhYmlsaXRpZXM/LmRlY29kaW5nSW5mbyYmbmF2aWdhdG9yLm1lZGlhQ2FwYWJpbGl0aWVzLmRlY29kaW5nSW5mbyh7dHlwZToibWVkaWEtc291cmNlIix2aWRlbzp7Y29udGVudFR5cGU6J3ZpZGVvL21wNDsgY29kZWNzPSJhdjAxLjAuMTJNLjA4Iicsd2lkdGg6Mzg0MCxoZWlnaHQ6MjE2MCxiaXRyYXRlOjMyRTYsZnJhbWVyYXRlOjYwfX0pLnRoZW4oVz0+e1cuc21vb3RoJiZXLnBvd2VyRWZmaWNpZW50JiYobi5jSj0yMTYwKX0pfTsKZk49ZnVuY3Rpb24oKXt2YXIgbj1vSygpJiYhQ18oMjkpLFc9Zy51YigiZ29vZ2xlIHR2IikmJmcudWIoImNocm9tZSIpJiYhQ18oMzApO3JldHVybiBufHxXPyExOmNSKCl9OwpKej1mdW5jdGlvbihuLFcsRCl7dmFyIGI9NDgwLHY9MTA4MCxrO2lmKGs9bi5leHBlcmltZW50cy5adCgpLk4uUVEoQnB0KSluLlY9PT1udWxsJiYobi5WPSExLFNKKG4sQVQuV0lEVEgpJiZTSihuLEFULkhFSUdIVCkmJihuLlY9ZHkoJ3ZpZGVvL21wNDsgY29kZWNzPSJhdjAxLjAuMTdNLjA4Ijsgd2lkdGg9NzY4MDsgaGVpZ2h0PTQzMjAnKSkpLGs9bi5WO2smJih2PTIxNjApO2ZvcihsZXQgaCBvZiBXKVc9aC52aWRlby5xdWFsaXR5T3JkaW5hbCxXPD12JiZXPmImJk9EKG4saCxEKT09PSEwJiYoYj1XKTtyZXR1cm4gYn07CmcuSW49ZnVuY3Rpb24obixXPSExKXtyZXR1cm4gZk4oKSYmbi5pc1R5cGVTdXBwb3J0ZWQoJ2F1ZGlvL21wNDsgY29kZWNzPSJtcDRhLjQwLjIiJyl8fCFXJiZuLmNhblBsYXlUeXBlKGk4KCksImFwcGxpY2F0aW9uL3gtbXBlZ1VSTCIpPyEwOiExfTsKd0p4PWZ1bmN0aW9uKG4pe0ZLQygoKT0+e2ZvcihsZXQgVyBvZiBPYmplY3Qua2V5cyhBVCkpU0oobixBVFtXXSl9KX07Cmo1aT1mdW5jdGlvbihuLFcpe2lmKG4uailyZXR1cm4hIW4ualtXLm5hbWVdO2lmKFc9PT1BVC5CSVRSQVRFJiZuLmlzVHlwZVN1cHBvcnRlZCgndmlkZW8vd2VibTsgY29kZWNzPSJ2cDkiOyB3aWR0aD0zODQwOyBoZWlnaHQ9MjE2MDsgYml0cmF0ZT0yMDAwMDAwJykmJiFuLmlzVHlwZVN1cHBvcnRlZCgndmlkZW8vd2VibTsgY29kZWNzPSJ2cDkiOyB3aWR0aD0zODQwOyBoZWlnaHQ9MjE2MDsgYml0cmF0ZT0yMDAwMDAwMCcpKXJldHVybiExO2lmKFc9PT1BVC5BVjFfQ09ERUNTKXJldHVybiBuLmlzVHlwZVN1cHBvcnRlZChgdmlkZW8vbXA0OyBjb2RlY3M9JHtXLnZhbGlkfWApJiYhbi5pc1R5cGVTdXBwb3J0ZWQoYHZpZGVvL21wNDsgY29kZWNzPSR7Vy52R31gKTtpZihXLnZpZGVvKXt2YXIgRD0ndmlkZW8vd2VibTsgY29kZWNzPSJ2cDkiJztuLmlzVHlwZVN1cHBvcnRlZChEKXx8KEQ9J3ZpZGVvL21wNDsgY29kZWNzPSJhdmMxLjRkNDAxZSInKX1lbHNlIEQ9J2F1ZGlvL3dlYm07IGNvZGVjcz0ib3B1cyInLApuLmlzVHlwZVN1cHBvcnRlZChEKXx8KEQ9J2F1ZGlvL21wNDsgY29kZWNzPSJtcDRhLjQwLjIiJyk7cmV0dXJuIG4uaXNUeXBlU3VwcG9ydGVkKGAke0R9OyAke1cubmFtZX09JHtXLnZhbGlkfWApJiYhbi5pc1R5cGVTdXBwb3J0ZWQoYCR7RH07ICR7Vy5uYW1lfT0ke1cudkd9YCl9OwpTVD1mdW5jdGlvbihuLFcpe3ZhciBEPTA7bi5XLmhhcyhXKSYmKEQ9bi5XLmdldChXKS56RSk7bi5XLnNldChXLHt6RTpEKzEsZzE6MioqKEQrMSl9KTtuLk49ITB9OwptVj1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKFcmJnR5cGVvZiBXPT09Im9iamVjdCIpe2xldCBrPWg9PkF6KG4saCxELGIsdik7CmlmKFlvKFcpKXJldHVybiBXLnRoZW4oayk7aWYoWUQoVykpcmV0dXJuIFNrKFcsayl9cmV0dXJuIEF6KG4sVyxELGIsdil9OwpLTj1mdW5jdGlvbihuLFcsRCxiPTEpe0Q+PTAmJihXIGluIG4uTnx8KG4uTltXXT1uZXcgTU9pKSxuLk5bV10uZEUoRCxiKSl9OwpBej1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPSgwLGcuUikoKTt2PXY/dihXKTp2b2lkIDA7dmFyIGg9dj8uVF8/PzE7aCE9PTAmJktOKG4sdj8ucHJvZmlsZT8/RCxrLWIsaCk7cmV0dXJuIFd9OwpPZD1mdW5jdGlvbihuKXt2YXIgVz13aW5kb3c7Vy55d2N8fChXLnl3Yz17fSk7dmFyIEQ9Vy55d2Nbbl07aWYoRClyZXR1cm4gRDtEPXt9O3JldHVybiBXLnl3Y1tuXT1EfTsKUFg9ZnVuY3Rpb24obil7dmFyIFc9d2luZG93O1cueXdjJiZkZWxldGUgVy55d2Nbbl19OwpSZ1U9ZnVuY3Rpb24obil7dmFyIFc9T2Qobik7aWYoVy5iaW5QKXJldHVybiBXLmJpblA7Vy5iaW5QPVByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PmZldGNoKG4pKS50aGVuKEQ9PntpZighRC5vayl0aHJvdyBFcnJvcihgSFRUUCR7RC5zdGF0dXNUZXh0fWApOwpyZXR1cm4gRC5hcnJheUJ1ZmZlcigpfSk7ClcuYmluUC50aGVuKEQ9PntXLmJpbj1EfSwoKT0+e1BYKG4pfSk7CnJldHVybiBXLmJpblB9OwpFZD1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIE9vKHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgYj1aSy50WCgpLHY9biYmVWQ7aWYoIXYmJiFXKXJldHVybiBEPy4oIndhc21ucyIse3A6bj8iMSI6IjAiLGE6Vz8iMSI6IjAiLHM6VWQ/IjEiOiIwIn0pLGZsKEVycm9yKCJ3YXNtLndtLm5zIikpO3ZhciBrPW5ldyBRNXI7aWYodil0cnl7bGV0IGg9eWllbGQqUFAoVk9yKGssbikpLHg9bmV3IHlNKGgsaywhMSk7WksuZVUoIndpbml0IixiKTtEPy4oIndhc21zdyIse30pO3JldHVybiB4fWNhdGNoKGgpe2lmKEQ/Ligid2FzbWVycnciLHtlOmAke2h9YH0pLCFXKXRocm93IEVycm9yKCJ3YXNtLndtLml3Iix7Y2F1c2U6aH0pO31pZighVyl0aHJvdyBFcnJvcigid2FzbS53bS54eCIpO3RyeXtsZXQgaD15aWVsZCpQUChXKGspKSx4PW5ldyB5TSh7ZXhwb3J0czpofSxrLCEwKTtaSy5lVSgid2luaXRqcyIsYik7RD8uKCJ3YXNtc2EiLHt9KTtyZXR1cm4geH1jYXRjaChoKXt0aHJvdyBEPy4oIndhc21lcnJhIiwKe2U6YCR7aH1gfSksRXJyb3IoYHdhc20ud20uaWE6ICR7aH1gKTt9fSgpfSl9OwpWT3I9ZnVuY3Rpb24obixXKXtyZXR1cm4gT28oYyR0LGZ1bmN0aW9uKCl7dmFyIEQ9dGhpcztyZXR1cm4gZnVuY3Rpb24qKCl7aWYoIUQuTil0aHJvdyJ3YXNtLnBzLm5zIjt2YXIgYj15aWVsZCpQUChhdHQoRCxXKSk7aWYoIWIpdGhyb3cid2FzbS5wcy51bSI7cmV0dXJuIHlpZWxkKlBQKFdlYkFzc2VtYmx5Lmluc3RhbnRpYXRlKGIsbikpfSgpfSl9OwphdHQ9ZnVuY3Rpb24obixXKXtyZXR1cm4gT28obixmdW5jdGlvbigpe3ZhciBEPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBiPVtdLHY9KCk9PiJ3YXNtLnBzLmM6IFsiK2IubWFwKHg9PmAiJHt4fSJgKS5qb2luKCIsICIpKyJdIixrPU9kKFcpOwppZihrLm1vZClyZXR1cm4gay5tb2Q7aWYoay5tb2RQKXRyeXtyZXR1cm4geWllbGQqUFAoay5tb2RQKX1jYXRjaCh4KXtiLnVuc2hpZnQoInBjbSIpfXZhciBoPWsuYmluO2lmKCFoJiZrLmJpblApdHJ5e2g9eWllbGQqUFAoay5iaW5QKX1jYXRjaCh4KXtiLnVuc2hpZnQoInBmYiIpfWlmKCFoKXRyeXtoPXlpZWxkKlBQKFJnVShXKSl9Y2F0Y2goeCl7dGhyb3cgRC5OPSExLGIudW5zaGlmdChgZmI6ICR7eH1gKSx2KCk7fXRyeXtyZXR1cm4geWllbGQqUFAoV2ViQXNzZW1ibHkuY29tcGlsZShoKSl9Y2F0Y2goeCl7UFgoVyksYi51bnNoaWZ0KGBjYTogJHt4fWApfXRocm93IHYoKTt9KCl9KX07CmlvPWZ1bmN0aW9uKG4sVyxELGIpe0Q9bi5XVi5tZW1vcnkuY29weUluKEQpO3ZhciB2PW4uTjt2LldWLmV4cG9ydHMuQUVTMTI4Q1RSQ2lwaGVyX3NldENvdW50ZXIodi5jaXBoZXIsRC5ieXRlT2Zmc2V0KTtXPW4uV1YubWVtb3J5LmNvcHlJbihXKTtuLk4uZW5jcnlwdChXKTt2PXZvaWQgMDtpZihiKXtiPW4uV1Y7dj1uLko7bGV0IGs9Yi5tZW1vcnkuYnVmZmVyKGIubWVtb3J5Lm1hbGxvYygzMiksMzIpO2IuZXhwb3J0cy5TaGEyNTZIbWFjKHYuYnl0ZU9mZnNldCx2LmJ5dGVMZW5ndGgsRC5ieXRlT2Zmc2V0LEQuYnl0ZUxlbmd0aCxXLmJ5dGVPZmZzZXQsVy5ieXRlTGVuZ3RoLGsuYnl0ZU9mZnNldCk7dj1uLldWLm1lbW9yeS5tb3ZlT3V0KGspfW4uV1YubWVtb3J5LmZyZWUoRC5ieXRlT2Zmc2V0KTtyZXR1cm57RzQ6bi5XVi5tZW1vcnkubW92ZU91dChXKSxzaWduYXR1cmU6dn19OwpuWUM9ZnVuY3Rpb24obil7bi5FaC5leHBvcnRzLlRyYWNrZWRQb2ludGVyX3JlbGVhc2Uobi5pZCl9Owpvbj1mdW5jdGlvbihuKXtuLlh8fChuLlg9bmV3IHVvKG4uSikpO3JldHVybiBuLlh9OwpnLmQxPWZ1bmN0aW9uKG4pe3RyeXtyZXR1cm4gbHAobil9Y2F0Y2goVyl7cmV0dXJuIG51bGx9fTsKekw9ZnVuY3Rpb24obil7dmFyIFc9SG4oKTtpZihXLnZhbHVlcyl7Vz1XLnZhbHVlcztsZXQgaD17fTtmb3IodmFyIEQgb2YgT2JqZWN0LmtleXMobi52YWx1ZXMpKXtXW0RdJiZuLkpbRF0mJihuLnZhbHVlc1tEXSs9V1tEXS1uLkpbRF0pO3ZhciBiPW4sdj1iO2lmKCF2LnZhbHVlc1tEXSl7dmFyIGs9SG4oKTt2LnZhbHVlcz1rLnZhbHVlc3x8e307di5GWT1rLmhhbGZMaXZlc3x8e307di5KPWsudmFsdWVzP09iamVjdC5hc3NpZ24oe30say52YWx1ZXMpOnt9fWhbRF09Yi52YWx1ZXNbRF0mJmIuRllbRF0/Yi52YWx1ZXNbRF0vMioqKGIuTi9iLkZZW0RdKTowfW4uSj1ofUQ9bi5GWTtXPXt9O1cudmFsdWVzPW4uSjtXLmhhbGZMaXZlcz1EO2cuUEIoInl0LXBsYXllci1tZW1vcnkiLFcsMjU5MkUzKX07Clh2PWZ1bmN0aW9uKG4sVyl7cmV0dXJuISFXJiYhIW4uWnQoKS5OLlFRKFdJTSkmJihXLnN0YXJ0c1dpdGgoImciKXx8Vy5zdGFydHNXaXRoKCJsIikpfTsKZy5zZD1mdW5jdGlvbihuKXtyZXR1cm4gbG8obik9PT0iTVdFQiJ9OwpUTD1mdW5jdGlvbihuKXtuLmdUPT09bnVsbCYmKG4uZ1Q9d2luZG93Lk1lZGlhU291cmNlJiZ3aW5kb3cuTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkP3dpbmRvdy5NZWRpYVNvdXJjZS5pc1R5cGVTdXBwb3J0ZWQoJ3ZpZGVvL21wNDsgY29kZWNzPSJhdmMxLjQyMDAxRSI7IGRlY29kZS10by10ZXh0dXJlPXRydWUnKTohMSk7cmV0dXJuIG4uZ1R9OwpqVD1mdW5jdGlvbihuKXtyZXR1cm4gbG8obik9PT0iVFZIVE1MNV9TSU1QTFlfRU1CRURERURfUExBWUVSIn07CmcubzQ9ZnVuY3Rpb24obil7cmV0dXJuIG4uSiYmZy5DTihuKSYmIUJYKG4pJiYhbi5YfTsKQlg9ZnVuY3Rpb24obil7cmV0dXJuIG4uWT09PSJhZHVuaXQifHxuLnBsYXllclN0eWxlPT09Imd2biJ9OwpGVj1mdW5jdGlvbihuKXtyZXR1cm4gbi5ZPT09ImRldGFpbHBhZ2UifTsKZy53MT1mdW5jdGlvbihuKXtyZXR1cm4gdzgmJiFuLnhofHxnLnViKCJuaW50ZW5kbyB3aWl1Iik/ITA6ITF9OwpnLkNOPWZ1bmN0aW9uKG4pe3JldHVybiBuLlk9PT0iZW1iZWRkZWQifTsKZy5NVj1mdW5jdGlvbihuKXtyZXR1cm4gbG8obik9PT0iV0VCX1JFTUlYIn07ClFNPWZ1bmN0aW9uKG4pe2lmKCFuLndlYlBsYXllckNvbnRleHRDb25maWc/LmVtYmVkc0hvc3RGbGFncz8uZW5hYmxlTGl0ZVV4fHxuLnZKfHxuLlh8fG4uRHx8bi5jSj09PSJFTUJFRERFRF9QTEFZRVJfTU9ERV9QRlAiKXJldHVybiJFTUJFRERFRF9QTEFZRVJfTElURV9NT0RFX05PTkUiO249Zy5kTShuLmV4cGVyaW1lbnRzLCJlbWJlZHNfd2ViX2xpdGVfbW9kZSIpO3JldHVybiBuPT09dm9pZCAwPyJFTUJFRERFRF9QTEFZRVJfTElURV9NT0RFX1VOS05PV04iOm4+PTAmJm48Um4ubGVuZ3RoP1JuW25dOiJFTUJFRERFRF9QTEFZRVJfTElURV9NT0RFX1VOS05PV04ifTsKY1g9ZnVuY3Rpb24obixXLEQ9ITEpe24uUyQ9Yk8obi5TJCxXLnZpZGVvX2lkKTtuLmZCPWJPKG4uZkIsVy5ldmVudGlkKTtuLmZCJiYod289bi5mQik7dmFyIGI9W107Zm9yKGxldCB2IG9mIE9iamVjdC5rZXlzKFZNKSl7bGV0IGs9Vk1bdl0saD1XW2tdO2ghPW51bGwmJihoIT09bi5OW2tdJiZiLnB1c2goayksbi5OW2tdPWgpfSFEJiZiLmxlbmd0aD4wJiZuLm9NJiYoYi5zb3J0KCksZy5HcShuZXcgZy5ReCgiUGxheWVyIGNsaWVudCBwYXJhbWV0ZXJzIGNoYW5nZWQgYWZ0ZXIgc3RhcnR1cCIsYikpKTtuLnVzZXJBZ2U9REkobi51c2VyQWdlLFcudXNlcl9hZ2UpO24udXNlckRpc3BsYXlJbWFnZT1iTyhuLnVzZXJEaXNwbGF5SW1hZ2UsVy51c2VyX2Rpc3BsYXlfaW1hZ2UpO2cuakkobi51c2VyRGlzcGxheUltYWdlKXx8KG4udXNlckRpc3BsYXlJbWFnZT0iIik7bi51c2VyRGlzcGxheU5hbWU9Yk8obi51c2VyRGlzcGxheU5hbWUsVy51c2VyX2Rpc3BsYXlfbmFtZSk7bi55dz1iTyhuLnl3LApXLnVzZXJfZ2VuZGVyKTtuLmNzaVBhZ2VUeXBlPWJPKG4uY3NpUGFnZVR5cGUsVy5jc2lfcGFnZV90eXBlKTtuLmNzaVNlcnZpY2VOYW1lPWJPKG4uY3NpU2VydmljZU5hbWUsVy5jc2lfc2VydmljZV9uYW1lKTtuLmVWPW55KG4uZVYsVy5lbmFibGVjc2kpO24ucGFnZUlkPWJPKG4ucGFnZUlkLFcucGFnZWlkKTtpZihEPVcuZW5hYmxlZF9lbmdhZ2VfdHlwZXMpbi5lbmFibGVkRW5nYWdlVHlwZXM9bmV3IFNldChELnNwbGl0KCIsIikpO1cubGl2aW5nX3Jvb21fc2Vzc2lvbl9wb190b2tlbiYmKG4ualc9Vy5saXZpbmdfcm9vbV9zZXNzaW9uX3BvX3Rva2VuLnRvU3RyaW5nKCkpfTsKZy5hbj1mdW5jdGlvbihuKXtyZXR1cm4vd2ViL2kudGVzdChsbyhuKSl9Owpsbz1mdW5jdGlvbihuKXtyZXR1cm4gbi5OLmN9OwpjOT1mdW5jdGlvbihuLFcpe3JldHVybiFuLlgmJm9LKCkmJkNfKDU1KSYmbi5jb250cm9sc1R5cGU9PT0iMyImJiFXfTsKV0U9ZnVuY3Rpb24obil7bj1nLm5FKG4uRGEpO3JldHVybiBuPT09Ind3dy55b3V0dWJlLW5vY29va2llLmNvbSI/Ind3dy55b3V0dWJlLmNvbSI6bn07CmcuRGY9ZnVuY3Rpb24obil7cmV0dXJuIGxvKG4pPT09IldFQl9VTlBMVUdHRUQifTsKYmk9ZnVuY3Rpb24obixXLEQpe3JldHVybiBuLnByb3RvY29sKyI6Ly9pMS55dGltZy5jb20vdmkvIitXKyIvIisoRHx8ImhxZGVmYXVsdC5qcGciKX07CnZFPWZ1bmN0aW9uKG4pe3JldHVybiBGVihuKSYmIWcuRGYobil9OwpnLms2PWZ1bmN0aW9uKG4pe3JldHVybi9eVFZIVE1MNS8udGVzdChsbyhuKSl9OwpodT1mdW5jdGlvbihuKXtyZXR1cm4gbG8obik9PT0iVFZIVE1MNV9DQVNUInx8bG8obik9PT0iVFZIVE1MNSImJihuLk4uY3Zlci5zdGFydHNXaXRoKCI2LjIwMTMwNzI1Iil8fG4uTi5jdmVyLnN0YXJ0c1dpdGgoIjYuMjAxMzA3MjYiKSl9OwpnLng2PWZ1bmN0aW9uKG4pe3JldHVybiBsbyhuKT09PSJUVkhUTUw1In07CkxFPWZ1bmN0aW9uKG4pe3JldHVybiBuLk4uY21vZGVsPT09IkNIUk9NRUNBU1QgVUxUUkEvU1RFQUsifHxuLk4uY21vZGVsPT09IkNIUk9NRUNBU1QvU1RFQUsifTsKZy5IXz1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbz4xP3dpbmRvdy5kZXZpY2VQaXhlbFJhdGlvOjF9OwpnLmVNPWZ1bmN0aW9uKG4pe3JldHVybiBsbyhuKS50b1VwcGVyQ2FzZSgpPT09IldFQiJ9OwpnLlhDPWZ1bmN0aW9uKG4pe3JldHVybiBsbyhuKT09PSJXRUJfS0lEUyJ9OwpnLnFGPWZ1bmN0aW9uKG4pe3JldHVybiBsbyhuKT09PSJUVkhUTUw1X1VOUExVR0dFRCJ9OwpnLkdsPWZ1bmN0aW9uKG4pe3JldHVybiBnLkRmKG4pfHxsbyhuKT09PSJUVl9VTlBMVUdHRURfQ0FTVCJ8fGcucUYobil9Owp0dT1mdW5jdGlvbihuKXtyZXR1cm4gbG8obik9PT0iV0VCX01VU0lDX0lOVEVHUkFUSU9OUyJ9OwpnLiQ2PWZ1bmN0aW9uKG4pe3JldHVybiBsbyhuKT09PSJXRUJfRU1CRURERURfUExBWUVSIn07Cmcubk49ZnVuY3Rpb24obil7cmV0dXJuKG4uZGV2aWNlSXNBdWRpb09ubHl8fCFnLm9kfHxnLk1MfHxuLmNvbnRyb2xzVHlwZT09PSIzIj8hMTpnLlFIP24uSiYmZy5aWCg1MSk6ITApfHwobi5kZXZpY2VJc0F1ZGlvT25seXx8IWcuYW98fGcuTUx8fG4uY29udHJvbHNUeXBlPT09IjMiPyExOmcuUUg/bi5KJiZnLlpYKDQ4KTpnLlpYKDM4KSl8fChuLmRldmljZUlzQXVkaW9Pbmx5fHwhcmN8fGcuTUx8fG4uY29udHJvbHNUeXBlPT09IjMiPyExOmcuUUg/bi5KJiZnLlpYKDM3KTpnLlpYKDI3KSl8fCFuLmRldmljZUlzQXVkaW9Pbmx5JiZnLnNtJiYhRm4oKSYmZy5aWCgxMSl8fCFuLmRldmljZUlzQXVkaW9Pbmx5JiZnLkduJiZnLlpYKCI2MDQuNCIpfHxuLldjKCl9OwpacVM9ZnVuY3Rpb24obil7aWYoZy5DTihuKSYmTkYpcmV0dXJuITE7aWYoZy5hbyl7aWYoIWcuWlgoNDcpfHwhZy5aWCg1MikmJmcuWlgoNTEpKXJldHVybiExfWVsc2UgaWYoZy5HbilyZXR1cm4hMTtyZXR1cm4gd2luZG93LkF1ZGlvQ29udGV4dHx8d2luZG93LndlYmtpdEF1ZGlvQ29udGV4dD8hMDohMX07CmcucEU9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5lbmFibGVkRW5nYWdlVHlwZXMuaGFzKFcudG9TdHJpbmcoKSl8fER2aS5pbmNsdWRlcyhXKX07CnZZaj1mdW5jdGlvbihuKXt2YXIgVz1XRShuKTtiVmkuaW5jbHVkZXMoVykmJihXPSJ3d3cueW91dHViZS5jb20iKTtyZXR1cm4gbi5wcm90b2NvbCsiOi8vIitXfTsKZy5IRT1mdW5jdGlvbihuLFc9IiIpe2lmKG4uSFkpe2xldCBEPW5ldyBZNixiLHY9bi5IWSgpO3Yuc2lnbmVkT3V0P2I9IiI6di50b2tlbj9iPXYudG9rZW46di5wZW5kaW5nUmVzdWx0LnRoZW4oaz0+e3Yuc2lnbmVkT3V0P0QucmVzb2x2ZSgiIik6RC5yZXNvbHZlKGsudG9rZW4pfSxrPT57Zy5HcShuZXcgZy5ReCgiYjE4OTM0ODMyOF9vYXV0aF9jYWxsYmFja19mYWlsZWQiLHtlcnJvcjprfSkpOwpELnJlc29sdmUoVyl9KTsKcmV0dXJuIGIhPT12b2lkIDA/Zy5IMChiKTpuZXcgTlgoRCl9cmV0dXJuIGcuSDAoVyl9OwpmRT1mdW5jdGlvbihuLFc9IiIpe3JldHVybiBuLllyP0hQKCEwKTpLbChTayhIUChnLkhFKG4sVykpLEQ9PkhQKCEhRCkpLCgpPT5IUCghMSkpfTsKSnU9ZnVuY3Rpb24obixXKXtpZihuLldWPVcpbi5QWD8uTj8uVihXKSxXLmlzQXNtanM/bi5reS5wdXNoKCJhc21qcyIpOm4ua3kucHVzaCgid2FzbSIpfTsKZy5uRT1mdW5jdGlvbihuKXt2YXIgVz1nLklQKG4pO3JldHVybihuPU51bWJlcihnLmZwKG4pWzRdfHxudWxsKXx8bnVsbCk/YCR7V306JHtufWA6V307ClNNPWZ1bmN0aW9uKG4sVz0hMSl7dmFyIEQ9WWdbbl0sYj1JQVtEXSx2PWtIcltuXTtpZighdnx8IWIpcmV0dXJuIG51bGw7Vz1uZXcgSFIoVz92LmhlaWdodDp2LndpZHRoLFc/di53aWR0aDp2LmhlaWdodCx2LmZwcyk7Yj1wNihiLFcsRCk7cmV0dXJuIG5ldyBtdShuLGIse3ZpZGVvOlcsTnM6di5iaXRyYXRlLzh9KX07CkF1PWZ1bmN0aW9uKG4pe3ZhciBXPUlBW1lnW25dXSxEPWhFU1tuXTtyZXR1cm4gRCYmVz9uZXcgbXUobixXLHthdWRpbzpuZXcgQU0oRC5hdWRpb1NhbXBsZVJhdGUsRC5udW1DaGFubmVscyl9KTpudWxsfTsKVlA9ZnVuY3Rpb24obixXLEQsYil7aWYoRClyZXR1cm4gZy5wJCgpO0Q9e307dmFyIHY9aTgoKTtmb3IobGV0IGsgb2YgVylpZihuLmNhblBsYXlUeXBlKHYsay5rTCgpLm1pbWVUeXBlKXx8YilpZihXPWsuTi52aWRlby5xdWFsaXR5LCFEW1ddfHxEW1ddLmtMKCkucUgoKSlEW1ddPWs7bj1bXTtELmF1dG8mJm4ucHVzaChELmF1dG8pO2ZvcihsZXQgayBvZiBwTSkoYj1EW2tdKSYmbi5wdXNoKGIpO3JldHVybiBuLmxlbmd0aD9nLkgwKG4pOmcucCQoKX07CktFPWZ1bmN0aW9uKG4sVz0hMSxEPSEwLGI9e30pe3ZhciB2PXt9O2ZvcihsZXQgaCBvZiBuKXtpZihXJiZNZWRpYVNvdXJjZSYmTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkJiYobj1oLnR5cGUsaC5hdWRpb19jaGFubmVscyYmKG49bisiOyBjaGFubmVscz0iK2guYXVkaW9fY2hhbm5lbHMpLCFNZWRpYVNvdXJjZS5pc1R5cGVTdXBwb3J0ZWQobikpKXtiW2guaXRhZ109InRwdXMiO2NvbnRpbnVlfWlmKCFEJiZoLmRybV9mYW1pbGllcyYmKGguZW90Zj09PSJzbXB0ZTIwODQifHxoLmVvdGY9PT0iYXJpYi1zdGQtYjY3Iikpe2JbaC5pdGFnXT0iZW5jaGRyIjtjb250aW51ZX1uPXZvaWQgMDtsZXQgeD17YnQ3MDk6IlNEUiIsYnQyMDIwOiJTRFIiLHNtcHRlMjA4NDoiUFEiLCJhcmliLXN0ZC1iNjciOiJITEcifTt2YXIgaz1oLnR5cGUubWF0Y2goL2NvZGVjcz0iKFteIl0qKSIvKTtrPWs/a1sxXToiIjtoLmF1ZGlvX3RyYWNrX2lkJiYobj1uZXcgd1AoaC5uYW1lLGguYXVkaW9fdHJhY2tfaWQsCiEhaC5pc19kZWZhdWx0KSk7bGV0IEw9aC5lb3RmO249bmV3IG04KHtpdGFnOmguaXRhZyx1cmw6aC51cmwsY29kZWNzOmssd2lkdGg6TnVtYmVyKGgud2lkdGgpLGhlaWdodDpOdW1iZXIoaC5oZWlnaHQpLGZwczpOdW1iZXIoaC5mcHMpLGJpdHJhdGU6TnVtYmVyKGguYml0cmF0ZSksYXVkaW9JdGFnOmguYXVkaW9faXRhZyxVaDpMP3hbTF06dm9pZCAwLGNvbnRlbnRQcm90ZWN0aW9uOmguZHJtX2ZhbWlsaWVzLGtaOm4sYXVkaW9DaGFubmVsczpOdW1iZXIoaC5hdWRpb19jaGFubmVscyl9KTt2W24uaXRhZ109dltuLml0YWddfHxbXTt2W24uaXRhZ10ucHVzaChuKX1yZXR1cm4gdn07CnZhciB4dlU9ZnVuY3Rpb24obixXKXtyZXR1cm4gZ1pbSVsxMF1dKHRoaXMsMSw3ODUyLG4sVyl9OwpMSUM9ZnVuY3Rpb24obixXKXtuLlcuc29tZShEPT5ELmtaPy5nZXRJZCgpPT09Vyk7Cm4uTj1XfTsKZUVpPWZ1bmN0aW9uKG4pe3ZhciBXPVtdLEQ9W107Zm9yKGxldCBiIG9mIG4uSiliLmJpdHJhdGU8PW4uWD9XLnB1c2goYik6RC5wdXNoKGIpO1cuc29ydCgoYix2KT0+di5iaXRyYXRlLWIuYml0cmF0ZSk7CkQuc29ydCgoYix2KT0+Yi5iaXRyYXRlLXYuYml0cmF0ZSk7Cm4uSj1XLmNvbmNhdChEKX07Ck9tPWZ1bmN0aW9uKG4sVyxEKXtuLmNwbiYmKFc9Zy5FVChXLHtjcG46bi5jcG59KSk7RCYmKFc9Zy5FVChXLHt2WjpEfSkpO3JldHVybiBXfTsKUEU9ZnVuY3Rpb24obixXKXtuPW4uaXRhZy50b1N0cmluZygpO1chPT1udWxsJiYobis9Vy5pdGFnLnRvU3RyaW5nKCkpO3JldHVybiBufTsKZ1laPWZ1bmN0aW9uKG4sVyl7aWYoIShnLk1MfHxDJCgpfHx6USgpKSlyZXR1cm4gbnVsbDtuPUtFKFcsbi5TKCJodG1sNV9maWx0ZXJfZm1wNF9pbl9obHMiKSk7aWYoIW4pcmV0dXJuIG51bGw7Vz1bXTt2YXIgRD17fTtmb3IobGV0IGIgb2YgT2JqZWN0LmtleXMobikpZm9yKGxldCB2IG9mIG5bYl0paWYodi5rWil7bGV0IGs9di5rWi5nZXRJZCgpO2lmKCFEW2tdKXtsZXQgaD1uZXcgV0Eoayx2LmtaKTtEW2tdPWg7Vy5wdXNoKGgpfX1yZXR1cm4gVy5sZW5ndGg+MD9XOm51bGx9Owp0bU09ZnVuY3Rpb24obixXLEQsYix2LGssaCl7aWYoIShnLk1MfHxDJCgpfHx6USgpKSlyZXR1cm4gZy5wJCgpO3ZhciB4PXt9LEw9WDNTKEQpLGU9S0UoRCxuLlMoImh0bWw1X2ZpbHRlcl9mbXA0X2luX2hscyIpLG4uVy5LLHgpO2lmKCFlKXJldHVybiBoKHtub3Bsc3Q6MX0pLGcucCQoKTtxbGgoZSk7dmFyIEc9e2ZhaXJwbGF5OiJodHRwczovL3lvdXR1YmUuY29tL2FwaS9kcm0vZnBzP2VrPXVuaW5pdGlhbGl6ZWQifSxyO0Q9W107dmFyIE49W10sSD1bXSxBPW51bGwseT0iIjtiPWImJmIubWF0Y2goL2hsc190aW1lZHRleHRfcGxheWxpc3QvKT9uZXcgbTgoe2l0YWc6IjAiLHVybDpiLGNvZGVjczoidnR0Iix3aWR0aDowLGhlaWdodDowLGZwczowLGJpdHJhdGU6MCxrWjpuZXcgd1AoIkVuZ2xpc2giLCJlbiIsITEpfSk6bnVsbDtmb3IobGV0IFEgb2YgT2JqZWN0LmtleXMoZSkpaWYoIW4uUygiaHRtbDVfZGlzYWJsZV9kcm1faGZyXzEwODAiKXx8USE9PSIzODMiJiZRIT09IjM3MyIpZm9yKGxldCBWIG9mIGVbUV0paWYoVi53aWR0aCl7Zm9yKGxldCBIWiBvZiBWLkopaWYoZVtIWl0pe1YuTj0KSFo7YnJlYWt9Vi5OfHwoVi5OPUdIdChlLFYpKTtsZXQgTHQ9ZVtWLk5dO2lmKCFMdCljb250aW51ZTtELnB1c2goVik7Vi5jb250ZW50UHJvdGVjdGlvbj09PSJmYWlycGxheSImJihyPUcpO2xldCB0aT0iIjtWLlVoPT09IlBRIj90aT0ic21wdGUyMDg0IjpWLlVoPT09IkhMRyImJih0aT0iYXJpYi1zdGQtYjY3Iik7dGkmJih5PXRpKTtILnB1c2goWmYoTHQsW1ZdLGIsayxWLml0YWcsVi53aWR0aCxWLmhlaWdodCxWLmZwcyxMLHZvaWQgMCx2b2lkIDAscix0aSkpO2lmKCFBfHxWLndpZHRoKlYuaGVpZ2h0KlYuZnBzPkEud2lkdGgqQS5oZWlnaHQqQS5mcHMpQT1WfWVsc2UgTi5wdXNoKFYpO2Vsc2UgeFtRXT0iZGlzZHJtaGZyIjtILnJlZHVjZSgoUSxWKT0+Vi5rTCgpLmlzRW5jcnlwdGVkKCkmJlEsITApJiYocj1HKTsKdj1NYXRoLm1heCh2LDApO3ZhciB7ZnBzOlQ9MCx3aWR0aDp6PTAsaGVpZ2h0OkM9MH09QXx8e307QT1uLlMoImh0bWw1X25hdGl2ZV9hdWRpb190cmFja19zd2l0Y2hpbmciKTtILnB1c2goWmYoTixELGIsaywiOTMiLHosQyxULEwsImF1dG8iLHYscix5LEEpKTtPYmplY3QuZW50cmllcyh4KS5sZW5ndGgmJmgoeCk7cmV0dXJuIFZQKG4uVyxILGM5KG4sVyksITEpfTsKWmY9ZnVuY3Rpb24obixXLEQsYix2LGssaCx4LEwsZSxHLHIsTixIKXt2YXIgQT0wLHk9IiI7Zm9yKGxldCBUIG9mIG4peXx8KHk9VC5pdGFnKSxULmF1ZGlvQ2hhbm5lbHMmJlQuYXVkaW9DaGFubmVscz5BJiYoQT1ULmF1ZGlvQ2hhbm5lbHMseT1ULml0YWcpO3Y9bmV3IG11KHYsImFwcGxpY2F0aW9uL3gtbXBlZ1VSTCIse2F1ZGlvOm5ldyBBTSgwLEEpLHZpZGVvOm5ldyBIUihrLGgseCxudWxsLHZvaWQgMCxlLHZvaWQgMCx2b2lkIDAsTiksY29udGVudFByb3RlY3Rpb246cixBYTp5fSk7bj1uZXcgJHYxKG4sVyxEP1tEXTpbXSxiLCEhSCk7bi5YPUc/RzoxMzY5ODQzO3JldHVybiBuZXcgVW0odixuLEwpfTsKWDNTPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBvZiBuKWlmKFcudXJsJiYobj1XLnVybC5zcGxpdCgiZXhwaXJlLyIpLCEobi5sZW5ndGg8PTEpKSlyZXR1cm4rblsxXS5zcGxpdCgiLyIpWzBdO3JldHVybiBOYU59OwpHSHQ9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgb2YgT2JqZWN0LmtleXMobikpe2xldCBiPW5bRF1bMF07aWYoIWIud2lkdGgmJmIuY29udGVudFByb3RlY3Rpb249PT1XLmNvbnRlbnRQcm90ZWN0aW9uJiYhYi5hdWRpb0NoYW5uZWxzKXJldHVybiBEfXJldHVybiIifTsKcWxoPWZ1bmN0aW9uKG4pe3ZhciBXPW5ldyBTZXQ7Zm9yKHZhciBEIG9mIE9iamVjdC52YWx1ZXMobikpaWYoRC5sZW5ndGgpe3ZhciBiPURbMF07Yi5oZWlnaHQmJmIuY29kZWNzLnN0YXJ0c1dpdGgoInZwMDkiKSYmVy5hZGQoYi5oZWlnaHQpfUQ9W107aWYoVy5zaXplKWZvcihsZXQgdiBvZiBPYmplY3Qua2V5cyhuKSluW3ZdLmxlbmd0aCYmKGI9blt2XVswXSxiLmhlaWdodCYmVy5oYXMoYi5oZWlnaHQpJiYhYi5jb2RlY3Muc3RhcnRzV2l0aCgidnAwOSIpJiZELnB1c2godikpO2ZvcihsZXQgdiBvZiBEKWRlbGV0ZSBuW3ZdfTsKcnFaPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1bXTtmb3IobGV0IHYgb2YgRCl7aWYoIXZ8fCF2LnVybCljb250aW51ZTtEPVFQKHYudHlwZSwibWVkaXVtIiwiMCIpO2IucHVzaChuZXcgeW4oRCx2LnVybCkpfXJldHVybiBWUChuLlcsYixjOShuLFcpLCExKX07CnNpcj1mdW5jdGlvbihuLFcpe3ZhciBEPVtdLGI9UVAoVy50eXBlLCJhdXRvIixXLml0YWcpO0QucHVzaChuZXcgeW4oYixXLnVybCkpO3JldHVybiBWUChuLlcsRCwhMSwhMCl9OwppaT1mdW5jdGlvbihuKXtyZXR1cm4gbiYmRW1bbl0/RW1bbl06bnVsbH07CnVpPWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlICJtdWx0aXZpZXcudXN0cmVhbWVyX2Rpc2FibGVkIjpjYXNlICJzYWJyLmludmFsaWRfaW5wdXRfc3RyZWFtIjpjYXNlICJzYWJyLmxpdmVfbm9fbWF4X3NxIjpjYXNlICJzYWJyLmxpdmVfdW5hdXRob3JpemVkX3JlcXVlc3QiOmNhc2UgInNhYnIubWFsZm9ybWVkX2NvbmZpZyI6Y2FzZSAic2Fici5tZWRpYV9zZXJ2aW5nX2VuZm9yY2VtZW50X2lkX2Vycm9yIjpjYXNlICJzYWJyLm1ldGFkYXRhX2ZldGNoZXJfZXJyb3IiOmNhc2UgInNhYnIubm9fYXVkaW9fc2VsZWN0ZWQiOmNhc2UgInNhYnIubm9fYXZhaWxhYmxlX2Zvcm1hdHMiOmNhc2UgInNhYnIubm9fcmVkaXJlY3RfdXJsIjpjYXNlICJzYWJyLm5vX3ZpZGVvX3NlbGVjdGVkIjpjYXNlICJzYWJyLm90Zl9ub3Rfc3VwcG9ydGVkIjpjYXNlICJzYWJyLnRvb19tYW55X2NodW5rX3JlYWRlcl9lcnJvcl9yZXRyaWVzIjpyZXR1cm4gbjtkZWZhdWx0OnJldHVybiJzYWJyLmNvbmZpZyJ9fTsKb0E9ZnVuY3Rpb24obixXKXtpZihXPVc/LndhdGNoRW5kcG9pbnRTdXBwb3J0ZWRPbmVzaWVDb25maWc/Lmh0bWw1UGxheWJhY2tPbmVzaWVDb25maWcpbi5RYT1uZXcgTiR3KFcpfTsKVGw9ZnVuY3Rpb24obixXLEQsYil7bnx8KG49VyYmZGMuaGFzT3duUHJvcGVydHkoVykmJnpsLmhhc093blByb3BlcnR5KFcpP3psW1ddKyJfIitkY1tXXTp2b2lkIDApO1c9bjtpZighVylyZXR1cm4gbnVsbDtuPVcubWF0Y2gobGkpO2lmKCFufHxuLmxlbmd0aCE9PTUpcmV0dXJuIG51bGw7e2xldCBrPVcubWF0Y2gobGkpO2lmKGspe249TnVtYmVyKGtbM10pO3ZhciB2PVs3LDgsMTAsNSw2XTtuPSEoTnVtYmVyKGtbMV0pPT09MSYmbj09PTgpJiZ2LmluZGV4T2Yobik+PTB9ZWxzZSBuPSExfXJldHVybiBEfHxifHxuP1c6bnVsbH07CkNFPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9e307Zm9yKGxldCB2IG9mIE9iamVjdC5rZXlzKGpNKSl7dmFyIGI9Vz9XK3Y6djtiPW5bYisiX3dlYnAiXXx8bltiXTtnLmpJKGIpJiYoRFtqTVt2XV09Yil9cmV0dXJuIER9Owp3Yz1mdW5jdGlvbihuKXt2YXIgVz17fTtpZighbnx8IW4udGh1bWJuYWlscylyZXR1cm4gVztuPW4udGh1bWJuYWlscy5maWx0ZXIodj0+ISF2LnVybCk7Cm4uc29ydCgodixrKT0+di53aWR0aC1rLndpZHRofHx2LmhlaWdodC1rLmhlaWdodCk7CmZvcih2YXIgRCBvZiBPYmplY3Qua2V5cyhCRSkpe3ZhciBiPU51bWJlcihEKTtsZXQgdj1CRVtiXTtmb3IobGV0IGsgb2YgbilpZihrLndpZHRoPj1iKXtiPUZDKGsudXJsKTtnLmpJKGIpJiYoV1t2XT1iKTticmVha319KEQ9bi5wb3AoKSkmJkQud2lkdGg+PTEyODAmJihEPUZDKEQudXJsKSxnLmpJKEQpJiYoV1sibWF4cmVzZGVmYXVsdC5qcGciXT1EKSk7cmV0dXJuIFd9OwpGQz1mdW5jdGlvbihuKXtyZXR1cm4gbi5zdGFydHNXaXRoKCIvLyIpPyJodHRwczoiK246bn07Ck1GPWZ1bmN0aW9uKG4pe3JldHVybiBuJiZuLmJhc2VVcmx8fCIifTsKUkE9ZnVuY3Rpb24obil7bj1nLm9FKG4pO2ZvcihsZXQgVyBvZiBPYmplY3Qua2V5cyhuKSl7bGV0IEQ9bltXXTtuW1ddPUFycmF5LmlzQXJyYXkoRCk/RFswXTpEfXJldHVybiBufTsKWWx3PWZ1bmN0aW9uKG4sVyl7Zm9yKHZhciBEIG9mIFcpaWYoVz1ELnBsYXllckFubm90YXRpb25zVXJsc1JlbmRlcmVyKXtXLmFkc09ubHkmJihuLlJtPSEwKTtpZihEPVcubG9hZFBvbGljeSluLmFubm90YXRpb25zTG9hZFBvbGljeT1wM01bRF07aWYoRD1XLmludmlkZW9Vcmwpbi5lYT1GTihEKTtuLnk1PSEwO2JyZWFrfX07ClFuPWZ1bmN0aW9uKG4sVyl7bi5ib3RndWFyZERhdGE9Vy5wbGF5ZXJBdHRlc3RhdGlvblJlbmRlcmVyLmJvdGd1YXJkRGF0YTtXPVcucGxheWVyQXR0ZXN0YXRpb25SZW5kZXJlci5jaGFsbGVuZ2U7VyE9bnVsbCYmKG4ucEs9Vyl9OwpIVng9ZnVuY3Rpb24obixXKXtuLmNhcHRpb25UcmFja3M9W107aWYoVy5jYXB0aW9uVHJhY2tzKWZvcih2YXIgRCBvZiBXLmNhcHRpb25UcmFja3Mpe3ZhciBiPVZuKEQuYmFzZVVybCk7aWYoIWIpcmV0dXJuO2I9e2lzX3RyYW5zbGF0ZWFibGU6ISFELmlzVHJhbnNsYXRhYmxlLGxhbmd1YWdlQ29kZTpELmxhbmd1YWdlQ29kZSxsYW5ndWFnZU5hbWU6RC5uYW1lJiZnLkRwKEQubmFtZSksdXJsOmIsdnNzX2lkOkQudnNzSWQsa2luZDpELmtpbmR9O2IubmFtZT1ELnRyYWNrTmFtZTtiLmRpc3BsYXlOYW1lPUQubmFtZSYmZy5EcChELm5hbWUpO24uY2FwdGlvblRyYWNrcy5wdXNoKG5ldyBnLlF3KGIpKX1uLlR3PVcuYXVkaW9UcmFja3N8fFtdO24uTyQ9Vy5kZWZhdWx0QXVkaW9UcmFja0luZGV4fHwwO24ucnA9W107aWYoVy50cmFuc2xhdGlvbkxhbmd1YWdlcylmb3IobGV0IHYgb2YgVy50cmFuc2xhdGlvbkxhbmd1YWdlcyl7RD17fTtELmxhbmd1YWdlQ29kZT12Lmxhbmd1YWdlQ29kZTsKRC5sYW5ndWFnZU5hbWU9Zy5EcCh2Lmxhbmd1YWdlTmFtZSk7aWYodi50cmFuc2xhdGlvblNvdXJjZVRyYWNrSW5kaWNlcyl7RC50cmFuc2xhdGlvblNvdXJjZVRyYWNrSW5kaWNlcz1bXTtmb3IobGV0IGsgb2Ygdi50cmFuc2xhdGlvblNvdXJjZVRyYWNrSW5kaWNlcylELnRyYW5zbGF0aW9uU291cmNlVHJhY2tJbmRpY2VzLnB1c2goayl9aWYodi5leGNsdWRlQXVkaW9UcmFja0luZGljZXMpe0QuZXhjbHVkZUF1ZGlvVHJhY2tJbmRpY2VzPVtdO2ZvcihsZXQgayBvZiB2LmV4Y2x1ZGVBdWRpb1RyYWNrSW5kaWNlcylELmV4Y2x1ZGVBdWRpb1RyYWNrSW5kaWNlcy5wdXNoKGspfW4ucnAucHVzaChEKX1uLmc1PVtdO2lmKFcuZGVmYXVsdFRyYW5zbGF0aW9uU291cmNlVHJhY2tJbmRpY2VzKWZvcihsZXQgdiBvZiBXLmRlZmF1bHRUcmFuc2xhdGlvblNvdXJjZVRyYWNrSW5kaWNlcyluLmc1LnB1c2godil9Owpmb2k9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVcuZXJyb3JTY3JlZW47aWYoIShiJiYoYi5wbGF5ZXJMZWdhY3lEZXNrdG9wWXBjT2ZmZXJSZW5kZXJlcnx8Yi5wbGF5ZXJMZWdhY3lEZXNrdG9wWXBjVHJhaWxlclJlbmRlcmVyfHxiLnlwY1RyYWlsZXJSZW5kZXJlcil8fEQmJkQuaXNVcGNvbWluZ3x8WyJPSyIsIkxJVkVfU1RSRUFNX09GRkxJTkUiLCJGVUxMU0NSRUVOX09OTFkiXS5pbmNsdWRlcyhXLnN0YXR1cykpKXtuLmVycm9yQ29kZT1paShXLmVycm9yQ29kZSl8fCJhdXRoIjtpZihEPWImJmIucGxheWVyRXJyb3JNZXNzYWdlUmVuZGVyZXIpe24ucGxheWVyRXJyb3JNZXNzYWdlUmVuZGVyZXI9RDtsZXQgdj1ELnJlYXNvbjt2JiYobi5lcnJvclJlYXNvbj1nLkRwKHYpKTtpZihEPUQuc3VicmVhc29uKW4ud2k9Zy5EcChEKSxuLlRZPUR9ZWxzZSBuLmVycm9yUmVhc29uPVcucmVhc29ufHxudWxsO0Q9Vy5zdGF0dXM7RD09PSJMT0dJTl9SRVFVSVJFRCI/bi5lcnJvckRldGFpbD0KIjEiOkQ9PT0iQ09OVEVOVF9DSEVDS19SRVFVSVJFRCI/bi5lcnJvckRldGFpbD0iMiI6RD09PSJBR0VfQ0hFQ0tfUkVRVUlSRUQiPyhXPShXPVcuZXJyb3JTY3JlZW4pJiZXLnBsYXllckthdlJlbmRlcmVyLG4uZXJyb3JEZXRhaWw9VyYmVy5rYXZVcmw/IjQiOiIzIik6KGI9Yj8ucGxheWVyRXJyb3JNZXNzYWdlUmVuZGVyZXI/LnByb2NlZWRCdXR0b24/LmJ1dHRvblJlbmRlcmVyPy5jb21tYW5kLG4uZXJyb3JEZXRhaWw9Vy5pc0Jsb2NrZWRJblJlc3RyaWN0ZWRNb2RlPyI1IjpnLncoYixnLmNFKT8uc2lnbmFsPT09IlJFTE9BRF9QQUdFIj8iNyI6IjAiKX19OwpKcVo9ZnVuY3Rpb24obixXKXtuLllpPSEwO3ZhciBEPVcuaGVhcnRiZWF0VG9rZW47bi5kcm1TZXNzaW9uSWQ9Vy5kcm1TZXNzaW9uSWR8fCIiO24uaGVhcnRiZWF0VG9rZW49RHx8IiI7bi5zRT1OdW1iZXIoVy5pbnRlcnZhbE1pbGxpc2Vjb25kcyk7bi5sND1OdW1iZXIoVy5tYXhSZXRyaWVzKTtuLkg2PSEhVy5zb2Z0RmFpbE9uRXJyb3I7bi5EZD0hIVcudXNlSW5uZXJ0dWJlSGVhcnRiZWF0c0ZvckRybTtuLmhlYXJ0YmVhdFNlcnZlckRhdGE9Vy5oZWFydGJlYXRTZXJ2ZXJEYXRhO24uUE09ISFXLmhlYXJ0YmVhdEF0dGVzdGF0aW9uQ29uZmlnPy5yZXF1aXJlc0F0dGVzdGF0aW9ufTsKQXExPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIG9mIFcpe1c9RC5pbnRlcnN0aXRpYWxzLm1hcChiPT57dmFyIHY9Zy53KGIsSW9iKTtpZih2KXJldHVybntpc195dG9faW50ZXJzdGl0aWFsOiEwLHJhd19wbGF5ZXJfcmVzcG9uc2U6dn07aWYoYj1nLncoYixTbE0pKXJldHVybiBPYmplY3QuYXNzaWduKHtpc195dG9faW50ZXJzdGl0aWFsOiEwfSxnLml3KGIpKX0pOwpmb3IobGV0IGIgb2YgVylzd2l0Y2goRC5wb2RDb25maWcucGxheWJhY2tQbGFjZW1lbnQpe2Nhc2UgIklOVEVSU1RJVElBTF9QTEFZQkFDS19QTEFDRU1FTlRfUFJFIjpuLmludGVyc3RpdGlhbHM9bi5pbnRlcnN0aXRpYWxzLmNvbmNhdCh7dGltZTowLHBsYXllclZhcnM6YixrcTo1fSk7YnJlYWs7Y2FzZSAiSU5URVJTVElUSUFMX1BMQVlCQUNLX1BMQUNFTUVOVF9QT1NUIjpuLmludGVyc3RpdGlhbHM9bi5pbnRlcnN0aXRpYWxzLmNvbmNhdCh7dGltZToweDdmZmZmZmZmZmZmZmYscGxheWVyVmFyczpiLGtxOjZ9KTticmVhaztjYXNlICJJTlRFUlNUSVRJQUxfUExBWUJBQ0tfUExBQ0VNRU5UX0lOU0VSVF9BVF9WSURFT19USU1FIjpXPU51bWJlcihELnBvZENvbmZpZy50aW1lVG9JbnNlcnRBdE1pbGxpcyksbi5pbnRlcnN0aXRpYWxzPW4uaW50ZXJzdGl0aWFscy5jb25jYXQoe3RpbWU6VyxwbGF5ZXJWYXJzOmIsa3E6Vz09PTA/NTo3fSl9fX07Cm12aj1mdW5jdGlvbihuLFcpe2lmKFc9Vy5maW5kKEQ9PiEoIUR8fCFELnRvb2x0aXBSZW5kZXJlcikpKW4udG9vbHRpcFJlbmRlcmVyPVcudG9vbHRpcFJlbmRlcmVyfTsKYUE9ZnVuY3Rpb24obixXKXtXLnN1YnNjcmliZUNvbW1hbmQmJihuLnN1YnNjcmliZUNvbW1hbmQ9Vy5zdWJzY3JpYmVDb21tYW5kKTtXLnVuc3Vic2NyaWJlQ29tbWFuZCYmKG4udW5zdWJzY3JpYmVDb21tYW5kPVcudW5zdWJzY3JpYmVDb21tYW5kKTtXLmFkZFRvV2F0Y2hMYXRlckNvbW1hbmQmJihuLmFkZFRvV2F0Y2hMYXRlckNvbW1hbmQ9Vy5hZGRUb1dhdGNoTGF0ZXJDb21tYW5kKTtXLnJlbW92ZUZyb21XYXRjaExhdGVyQ29tbWFuZCYmKG4ucmVtb3ZlRnJvbVdhdGNoTGF0ZXJDb21tYW5kPVcucmVtb3ZlRnJvbVdhdGNoTGF0ZXJDb21tYW5kKTtXLmdldFNoYXJlUGFuZWxDb21tYW5kJiYobi5nZXRTaGFyZVBhbmVsQ29tbWFuZD1XLmdldFNoYXJlUGFuZWxDb21tYW5kKX07Cm5MPWZ1bmN0aW9uKG4sVyl7VyE9bnVsbD8obi5yUj1XLG4uaU49ITApOihuLnJSPSIiLG4uaU49ITEpfTsKUG4xPWZ1bmN0aW9uKG4sVyl7aWYoVz1XLnBsYXllckNvbnRyb2xzT3ZlcmxheVJlbmRlcmVyKW5MKG4sVy5jb250cm9sQmdIdG1sKSxXLm11dGVkQXV0b3BsYXk/KFc9Zy53KFcubXV0ZWRBdXRvcGxheSxLSTEpKSYmVy5lbmRTY3JlZW4mJihXPWcudyhXLmVuZFNjcmVlbixPVngpKSYmVy50ZXh0JiYobi5NVj1nLkRwKFcudGV4dCkpOm4ubXV0ZWRBdXRvcGxheT0hMX07ClpWaT1mdW5jdGlvbihuLFcpe3ZhciBEPVcuYmFja2dyb3VuZGFiaWxpdHk7RCYmRC5iYWNrZ3JvdW5kYWJpbGl0eVJlbmRlcmVyLmJhY2tncm91bmRhYmxlJiYobi5iYWNrZ3JvdW5kYWJsZT0hMCk7Vy5vZmZsaW5lYWJpbGl0eT8ub2ZmbGluZWFiaWxpdHlSZW5kZXJlcj8ub2ZmbGluZWFibGUmJihuLm9mZmxpbmVhYmxlPSEwKTtpZihEPVcuY29udGV4dFBhcmFtcyluLmNvbnRleHRQYXJhbXM9RDsoRD1XLnBpY3R1cmVJblBpY3R1cmUpJiZELnBpY3R1cmVJblBpY3R1cmVSZW5kZXJlci5wbGF5YWJsZUluUGlwJiYobi5waXBhYmxlPSEwKTtXLnBsYXlhYmxlSW5FbWJlZCYmKG4uYWxsb3dFbWJlZD0hMCk7aWYoRD1XLnlwY0NsaWNrd3JhcClXPUQucGxheWVyTGVnYWN5RGVza3RvcFlwY0NsaWNrd3JhcFJlbmRlcmVyLEQ9RC55cGNSZW50YWxBY3RpdmF0aW9uUmVuZGVyZXIsVz8obi5Jaz1XLmR1cmF0aW9uTWVzc2FnZXx8IiIsbi5EbD0hMCk6RCYmKFc9RC5kdXJhdGlvbk1lc3NhZ2UsCm4uSWs9Vz9nLkRwKFcpOiIiLG4uRGw9ITApfTsKeXExPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1NRihXLmdvb2dsZVJlbWFya2V0aW5nVXJsKTtiJiYobi5nb29nbGVSZW1hcmtldGluZ1VybD1iKTtpZihiPU1GKFcueW91dHViZVJlbWFya2V0aW5nVXJsKSluLnlvdXR1YmVSZW1hcmtldGluZ1VybD1iO2lmKGI9Vy5oZWFydGJlYXRMb2dnaW5nVG9rZW4pbi5oZWFydGJlYXRMb2dnaW5nVG9rZW49YjtiPXt9O3ZhciB2PU1GKFcucHRyYWNraW5nVXJsKTtpZih2KXt2PVJBKHYpO3ZhciBrPXYub2lkO2smJihuLlhvPWspO2lmKGs9di5wbHR5cGUpbi5xOD1rO2lmKGs9di5wdGNobiluLmgxPWs7aWYoaz12LnB0ayluLnh6PWVuY29kZVVSSUNvbXBvbmVudChrKTtpZih2PXYubSluLnk5PXZ9aWYodj1NRihXLnFvZVVybCkpe3Y9Zy5vRSh2KTtmb3IoaCBvZiBPYmplY3Qua2V5cyh2KSlrPXZbaF0sdltoXT1BcnJheS5pc0FycmF5KGspP2suam9pbigiLCIpOms7dmFyIGg9djtuLnpiPWg7aWYodj1oLmNhdCluLlMoImh0bWw1X2VuYWJsZV9xb2VfY2F0X2xpc3QiKT8Kbi5rSz1uLmtLLmNvbmNhdCh2LnNwbGl0KCIsIikpOm4ua3k9djtpZih2PWgubGl2ZSluLnVoPXY7aWYoaD1oLmRybV9wcm9kdWN0KW4uZHJtUHJvZHVjdD1ofWlmKGg9TUYoVy52aWRlb3N0YXRzUGxheWJhY2tVcmwpKXtoPVJBKGgpO2lmKHY9aC5hZGZvcm1hdClpZihELmFkZm9ybWF0PXYsaz1uLkcoKSxrPVRsKHYsbi5GdyxrLkosay5LKSluLmFkRm9ybWF0PWs7aWYoaz1oLmFxaSlELmFkX3F1ZXJ5X2lkPWs7aWYoRD1oLmF1dG9wbGF5KW4uR3U9RD09IjEiLG4uVlQ9RD09IjEiO2lmKEQ9aC5hdXRvbmF2KW4uaXNBdXRvbmF2PUQ9PSIxIjtpZihEPWguZGVsYXkpbi5vRD1nLk5oKEQpO2lmKEQ9aC5laSluLmV2ZW50SWQ9RDtpZihEPWcuZDEoaC5hZGNvbnRleHQpKXRyeXt2YXIgeD1VdjIoRCk7eCYmKG4uZk49eCl9Y2F0Y2goTCl7Zy5HcShFcnJvcigiTWFsZm9ybWVkIGFkQ29udGV4dCIpKX1pZihEfHx2KW4uR3U9ITA7aWYoeD1oLmZlYXR1cmUpbi5TOT14O2lmKHg9aC5saXN0KW4ucGxheWxpc3RJZD0KeDtpZih4PWgub2Ypbi5SSD14O2lmKHg9aC5vc2lkKW4ub3NpZD14O2lmKHg9aC5yZWZlcnJlciluLnJlZmVycmVyPXg7aWYoeD1oLnNkZXRhaWwpbi53dT14O2lmKHg9aC5zb3VyY2VpZCluLmJJPXg7aWYoeD1oLnNzcnQpbi5BUj14PT0iMSI7aWYoeD1oLnN1YnNjcmliZWQpbi5zdWJzY3JpYmVkPXg9PSIxIjtpZih4PWgudWdhKW4udXNlckdlbmRlckFnZT14O2lmKHg9aC51cHQpbi5IcT14O2lmKHg9aC52bSluLnZpZGVvTWV0YWRhdGE9eDtiLnBsYXliYWNrPWh9aWYoeD1NRihXLnZpZGVvc3RhdHNXYXRjaHRpbWVVcmwpKXt4PVJBKHgpO2lmKEQ9eC5hbGQpbi5GTD1EO2Iud2F0Y2h0aW1lPXh9aWYoeD1NRihXLmF0clVybCkpeD1SQSh4KSxiLmF0cj14O2lmKHg9TUYoVy5lbmdhZ2VVcmwpKXg9UkEoeCksYi5lbmdhZ2U9eDtuLlhUPWI7Vy5wcm9tb3RlZFBsYXliYWNrVHJhY2tpbmcmJihiPVcucHJvbW90ZWRQbGF5YmFja1RyYWNraW5nLGIuc3RhcnRVcmxzJiYobi5Gcj1iLnN0YXJ0VXJscyksCmIuZmlyc3RRdWFydGlsZVVybHMmJihuLndOPWIuZmlyc3RRdWFydGlsZVVybHMpLGIuc2Vjb25kUXVhcnRpbGVVcmxzJiYobi5DdD1iLnNlY29uZFF1YXJ0aWxlVXJscyksYi50aGlyZFF1YXJ0aWxlVXJscyYmKG4ub0g9Yi50aGlyZFF1YXJ0aWxlVXJscyksYi5jb21wbGV0ZVVybHMmJihuLkF0PWIuY29tcGxldGVVcmxzKSxiLmVuZ2FnZWRWaWV3VXJscyYmKGIuZW5nYWdlZFZpZXdVcmxzLmxlbmd0aD4xJiZnLkdxKG5ldyBnLlF4KCJUaGVyZSBhcmUgbW9yZSB0aGFuIG9uZSBlbmdhZ2VkX3ZpZXdfdXJscy4iKSksbi5EeD1iLmVuZ2FnZWRWaWV3VXJsc1swXSkpO1cuc2VyaWFsaXplZE9uZVRpbWVRb2VDb250ZXh0RGF0YSYmKG4uc2VyaWFsaXplZE9uZVRpbWVRb2VDb250ZXh0RGF0YT1XLnNlcmlhbGl6ZWRPbmVUaW1lUW9lQ29udGV4dERhdGEpO1cudnNzM0NvbmZpZz8uc2VyaWFsaXplZFdhdGNoVGltZUNvbnRleHREYXRhJiYobi5zZXJpYWxpemVkV2F0Y2hUaW1lQ29udGV4dERhdGE9ClcudnNzM0NvbmZpZy5zZXJpYWxpemVkV2F0Y2hUaW1lQ29udGV4dERhdGEpfTsKRVkxPWZ1bmN0aW9uKG4sVyxEKXtmb3IobGV0IGIgb2YgVylpZihiJiYoVz1iLnBsYXllckxlZ2FjeURlc2t0b3BXYXRjaEFkc1JlbmRlcmVyKSYmKFc9Vy5wbGF5ZXJBZFBhcmFtcykpe1cuYXV0b3BsYXk9PSIxIiYmKG4uR3U9ITAsbi5WVD0hMCk7bi5Jbz1XLmVuY29kZWRBZFNhZmV0eVJlYXNvbnx8bnVsbDtXLnNob3dDb250ZW50VGh1bWJuYWlsIT09dm9pZCAwJiYobi5xMj0hIVcuc2hvd0NvbnRlbnRUaHVtYm5haWwpO0QuZW5hYmxlZF9lbmdhZ2VfdHlwZXM9Vy5lbmFibGVkRW5nYWdlVHlwZXM7YnJlYWt9fTsKaVYyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Vy5tYW5pZmVzdGxlc3NXaW5kb3dlZExpdmVDb25maWc7aWYoRCl7dmFyIGI9TnVtYmVyKEQubWluRHZyU2VxdWVuY2UpLHY9TnVtYmVyKEQubWF4RHZyU2VxdWVuY2UpLGs9TnVtYmVyKEQubWluRHZyTWVkaWFUaW1lTXMpLGg9TnVtYmVyKEQubWF4RHZyTWVkaWFUaW1lTXMpO0Q9TnVtYmVyKEQuc3RhcnRXYWxsdGltZU1zKTtiJiYobi5JdD1iKTtrJiYobi5KVT1rLzFFMyxuLlMoImh0bWw1X3NhYnJfcGFyc2VfbGl2ZV9tZXRhZGF0YV9wbGF5YmFja19ib3VuZGFyaWVzIikmJmcuWU4obikmJihuLkgyPWsvMUUzKSk7diYmKG4uSFA9dik7aCYmKG4ub1I9aC8xRTMsbi5TKCJodG1sNV9zYWJyX3BhcnNlX2xpdmVfbWV0YWRhdGFfcGxheWJhY2tfYm91bmRhcmllcyIpJiZnLllOKG4pJiYobi5XTT1oLzFFMykpO0QmJihuLklUPUQvMUUzKTsoYnx8aykmJih2fHxoKSYmKG4uUkk9ITAsbi5pc0xpdmVQbGF5YmFjaz0hMCxuLmFsbG93TGl2ZUR2cj0KITAsbi5YZz0hMSl9aWYoYj1XLmRhaUNvbmZpZyl7aWYoYi5lbmFibGVEYWkpe24uTFk9ITA7aWYodj1iLmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpKW4uZW5hYmxlU2VydmVyU3RpdGNoZWREYWk9djtpZih2PWIuZW5hYmxlUHJlcm9sbCluLktkPXZ9aWYoYi5kYWlUeXBlPT09IkRBSV9UWVBFX1NTX0RJU0FCTEVEInx8Yi5kZWJ1Z0luZm8/LmlzRGlzYWJsZWRVbnBsdWdnZWRDaGFubmVsKW4uSmw9ITA7IW4uUygiaHRtbDVfdW1wX3N0aXRjaGVkX21ldGFkYXRhX3Vuc3BlY2lmaWVkX2hhbmRsaW5nIil8fGIuZGFpVHlwZSE9PSJEQUlfVFlQRV9VTlNQRUNJRklFRCImJmIuZGFpVHlwZSE9PXZvaWQgMHx8KG4uakY9ITApO2IuZGFpVHlwZT09PSJEQUlfVFlQRV9DTElFTlRfU1RJVENIRUQiJiYobi5DVT0hMCk7Yi5hbGxvd1VzdHJlYW1lclJlcXVlc3RBZGNvbmZpZyYmKG4uUTY9ITApO2Iuc2VuZFNzZGFpTWlzc2luZ0FkQnJlYWtSZWFzb25zJiYobi5LVj0hMCl9aWYoYj1XLmF1ZGlvQ29uZmlnKXt2PQpuLmhnO2IudHJhY2tBYnNvbHV0ZUxvdWRuZXNzTGtmcyE9bnVsbCYmKHYuSj1iLnRyYWNrQWJzb2x1dGVMb3VkbmVzc0xrZnMpO2IubG91ZG5lc3NUYXJnZXRMa2ZzIT1udWxsJiYodi5sb3VkbmVzc1RhcmdldExrZnM9Yi5sb3VkbmVzc1RhcmdldExrZnMpO2IubG91ZG5lc3NEYiE9bnVsbCYmKHYuVz1iLmxvdWRuZXNzRGIpO2lmKGs9Yi5sb3VkbmVzc05vcm1hbGl6YXRpb25Db25maWcpay5hcHBseVN0YXRlZnVsTm9ybWFsaXphdGlvbiYmKHYuYXBwbHlTdGF0ZWZ1bE5vcm1hbGl6YXRpb249ITApLGsucHJlc2VydmVTdGF0ZWZ1bExvdWRuZXNzVGFyZ2V0JiYodi5wcmVzZXJ2ZVN0YXRlZnVsTG91ZG5lc3NUYXJnZXQ9ITApLGsubWluaW11bUxvdWRuZXNzVGFyZ2V0TGtmcyE9bnVsbCYmKHYubWluaW11bUxvdWRuZXNzVGFyZ2V0TGtmcz1rLm1pbmltdW1Mb3VkbmVzc1RhcmdldExrZnMpO3Y9Yi5sb3VkbmVzc0RiO3YhPW51bGwmJihuLllLPXYpO2IuYXVkaW9NdXRlZCYmKG4ueWw9CiEwKTtiLm11dGVPblN0YXJ0JiYobi5OMD0hMCk7Yi5wbGF5QXVkaW9Pbmx5JiYobi5KZz0hMCl9aWYodj1XLnBsYXliYWNrRW5kQ29uZmlnKWI9di5lbmRTZWNvbmRzLHY9di5saW1pdGVkUGxheWJhY2tEdXJhdGlvbkluU2Vjb25kcyxuLm11dGVkQXV0b3BsYXkmJihiJiYobi5lbmRTZWNvbmRzPWIpLHYmJihuLmxpbWl0ZWRQbGF5YmFja0R1cmF0aW9uSW5TZWNvbmRzPXYpKTtpZihiPVcuZmFpclBsYXlDb25maWcpe2lmKHY9Yi5jZXJ0aWZpY2F0ZSluLkNpPWcuZDEodik7dj1OdW1iZXIoYi5rZXlSb3RhdGlvblBlcmlvZE1zKTt2PjAmJihuLlY5PXYpO2I9TnVtYmVyKGIua2V5UHJlZmV0Y2hNYXJnaW5Ncyk7Yj4wJiYobi5qaT1iKX1pZigoYj1XLnBsYXliYWNrU3RhcnRDb25maWcpJiYhbi5OVil7bi52RT1OdW1iZXIoYi5zdGFydFNlY29uZHMpO2s9Yi5saXZlVXRjU3RhcnRTZWNvbmRzO3Y9ISFuLmxpdmVVdGNTdGFydFNlY29uZHMmJm4ubGl2ZVV0Y1N0YXJ0U2Vjb25kcz4wOwprJiYhdiYmKG4ubGl2ZVV0Y1N0YXJ0U2Vjb25kcz1OdW1iZXIoaykpO2lmKGs9Yi5zdGFydFBvc2l0aW9uKWlmKChoPWsudXRjVGltZU1pbGxpcykmJiF2JiYobi5saXZlVXRjU3RhcnRTZWNvbmRzPU51bWJlcihoKSouMDAxKSx2PWsuc3RyZWFtVGltZU1pbGxpcyluLlVyPU51bWJlcih2KSouMDAxO24ucHJvZ3Jlc3NCYXJTdGFydFBvc2l0aW9uPWIucHJvZ3Jlc3NCYXJTdGFydFBvc2l0aW9uO24ucHJvZ3Jlc3NCYXJFbmRQb3NpdGlvbj1iLnByb2dyZXNzQmFyRW5kUG9zaXRpb259ZWxzZSBpZihiPVcuc2tpcHBhYmxlU2VnbWVudHNDb25maWcpe2lmKHY9Yi5pbnRyb1NraXBEdXJhdGlvbk1zKW4uUEU9TnVtYmVyKHYpLzFFMztpZihiPWIub3V0cm9Ta2lwRHVyYXRpb25NcyluLm50PU51bWJlcihiKS8xRTN9aWYodj1XLnNraXBwYWJsZUludHJvQ29uZmlnKWI9TnVtYmVyKHYuc3RhcnRNcyksdj1OdW1iZXIodi5lbmRNcyksaXNOYU4oYil8fGlzTmFOKHYpfHwobi53Qj1iLG4uQXA9CnYpO2lmKGI9Vy5zdHJlYW1TZWxlY3Rpb25Db25maWcpbi5HZj1OdW1iZXIoYi5tYXhCaXRyYXRlKTtpZihiPVcudnJDb25maWcpbi5Kbz1iLnBhcnRpYWxTcGhlcmljYWw9PSIxIjtpZihiPVcud2ViRHJtQ29uZmlnKXtiLnNraXBXaWRldmluZSYmKG4uSmo9ITApO2lmKHY9Yi53aWRldmluZVNlcnZpY2VDZXJ0KW4uRmM9Zy5kMSh2KTtiLnVzZUNvYmFsdFdpZGV2aW5lJiYobi51c2VDb2JhbHRXaWRldmluZT0hMCk7Yi5zdGFydFdpdGhOb1F1YWxpdHlDb25zdHJhaW50JiYobi5aOT0hMCl9aWYoYj1XLm1lZGlhQ29tbW9uQ29uZmlnKXtpZih2PWIuZHluYW1pY1JlYWRhaGVhZENvbmZpZyl7bi5tYXhSZWFkQWhlYWRNZWRpYVRpbWVNcz12Lm1heFJlYWRBaGVhZE1lZGlhVGltZU1zfHxOYU47bi5taW5SZWFkQWhlYWRNZWRpYVRpbWVNcz12Lm1pblJlYWRBaGVhZE1lZGlhVGltZU1zfHxOYU47bi5yZWFkQWhlYWRHcm93dGhSYXRlTXM9di5yZWFkQWhlYWRHcm93dGhSYXRlTXN8fE5hTjsKaWYodj1iPy5tZWRpYVVzdHJlYW1lclJlcXVlc3RDb25maWc/LnZpZGVvUGxheWJhY2tVc3RyZWFtZXJDb25maWcpbi5hST1nLmQxKHYpO2lmKCh2PWI/LnNhYnJDb250ZXh0VXBkYXRlcykmJnYubGVuZ3RoPjApZm9yKHZhciB4IG9mIHYpeC50eXBlJiZ4LnZhbHVlJiYodj17dHlwZTp4LnR5cGUsc2NvcGU6eC5zY29wZSx2YWx1ZTpnLmQxKHgudmFsdWUpfHx2b2lkIDAsc2VuZEJ5RGVmYXVsdDp4LnNlbmRCeURlZmF1bHR9LG4uc2FickNvbnRleHRVcGRhdGVzLnNldCh4LnR5cGUsdikpfWlmKHg9Yi5zZXJ2ZXJQbGF5YmFja1N0YXJ0Q29uZmlnKW4uc2VydmVyUGxheWJhY2tTdGFydENvbmZpZz14O2IudXNlU2VydmVyRHJpdmVuQWJyJiYobi5ERT0hMCk7aWYoeD1iLnJlcXVlc3RQaXBlbGluaW5nQ29uZmlnKW4ucmVxdWVzdFBpcGVsaW5pbmdDb25maWc9eH1pZih4PVcuaW5saW5lUGxheWJhY2tDb25maWcpbi52MT0hIXguc2hvd0F1ZGlvQ29udHJvbHM7aWYoeD1XLmVtYmVkZGVkUGxheWVyQ29uZmlnKXtuLmVtYmVkZGVkUGxheWVyQ29uZmlnPQp4O2lmKHY9eC5lbWJlZGRlZFBsYXllck1vZGUpYj1uLkcoKSxiLmNKPXYsYi5EPXY9PT0iRU1CRURERURfUExBWUVSX01PREVfUEZMIjtpZih4PXgucGVybWlzc2lvbnMpbi5hbGxvd0ltYU1vbmV0aXphdGlvbj0hIXguYWxsb3dJbWFNb25ldGl6YXRpb259aWYoeD1XLndlYlBsYXllckNvbmZpZylpZih4LmdhdGV3YXlFeHBlcmltZW50R3JvdXAmJihuLmdhdGV3YXlFeHBlcmltZW50R3JvdXA9eC5nYXRld2F5RXhwZXJpbWVudEdyb3VwKSx4LmlzUHJveGltYUVsaWdpYmxlJiYobi5pc1Byb3hpbWFMYXRlbmN5RWxpZ2libGU9ITApLHg9eC5tdWx0aUFzcGVjdFN0cmVhbWluZ0NvbmZpZyluLldrPSEwLG4ucGxheWVyT3JpZW50YXRpb249eC5wbGF5ZXJPcmllbnRhdGlvbix4LnBsYXllck9yaWVudGF0aW9uPT09IlBMQVlFUl9PUklFTlRBVElPTl9IT1JJWk9OVEFMIj9uLkJqPXgudmVydGljYWxDb21tYW5kfHxudWxsOngucGxheWVyT3JpZW50YXRpb249PT0iUExBWUVSX09SSUVOVEFUSU9OX1ZFUlRJQ0FMIiYmCihuLkJqPXguaG9yaXpvbnRhbENvbW1hbmR8fG51bGwpO1c9Vy5wbGF5ZXJDb250cm9sc0NvbmZpZztXPy5pc1NlZWthYmxlIT09dm9pZCAwJiYobi5pc1NlZWthYmxlPSEhVy5pc1NlZWthYmxlKX07CnU2Uz1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Vy5mb3JtYXRzO2lmKGIpe3ZhciB2PVtdO2Zvcih2YXIgayBvZiBiKXYucHVzaChgJHtrLml0YWd9LyR7ay53aWR0aH14JHtrLmhlaWdodH1gKTtuLkdqPXYuam9pbigiLCIpO3Y9W107Zm9yKHZhciBoIG9mIGIpe2I9e2l0YWc6aC5pdGFnLHR5cGU6aC5taW1lVHlwZSxxdWFsaXR5OmgucXVhbGl0eX07KGs9aC51cmwpJiYoYi51cmw9ayk7bGV0IHt4aTpOLEVsOkgseTc6QSxzOnl9PVAwKDcsNjkyLGgpO04mJihiLnVybD1ILGIuc3A9QSxiLnM9eSk7di5wdXNoKHlHKGIpKX1uLmNmPXYuam9pbigiLCIpfWlmKGg9Vy5obHNGb3JtYXRzKXt2PXt9O2lmKEQmJihEPUQuYXVkaW9QYWlyaW5nQ29uZmlnKSYmRC5wYWlycylmb3IodmFyIHggb2YgRC5wYWlycylEPXgudmlkZW9JdGFnLHZbRF18fCh2W0RdPVtdKSx2W0RdLnB1c2goeC5hdWRpb0l0YWcpO3g9e307Zm9yKHZhciBMIG9mIGgpeFtMLml0YWddPUwuYml0cmF0ZTtMPVtdO2ZvcihHIG9mIGgpe0Q9CntpdGFnOkcuaXRhZyx0eXBlOkcubWltZVR5cGUsdXJsOkcudXJsLGJpdHJhdGU6Ry5iaXRyYXRlLHdpZHRoOkcud2lkdGgsaGVpZ2h0OkcuaGVpZ2h0LGZwczpHLmZwc307aWYoaD1HLmF1ZGlvVHJhY2spaWYoYj1oLmRpc3BsYXlOYW1lKUQubmFtZT1iLEQuYXVkaW9fdHJhY2tfaWQ9aC5pZCxoLmF1ZGlvSXNEZWZhdWx0JiYoRC5pc19kZWZhdWx0PSIxIik7aWYoRy5kcm1GYW1pbGllcyl7aD1bXTtmb3IodmFyIGUgb2YgRy5kcm1GYW1pbGllcyloLnB1c2goSlpbZV0pO0QuZHJtX2ZhbWlsaWVzPWguam9pbigiLCIpfShoPXZbRy5pdGFnXSkmJmgubGVuZ3RoJiYoRC5hdWRpb19pdGFnPWguam9pbigiLCIpLChoPXhbaFswXV0pJiYoRC5iaXRyYXRlKz1oKSk7KGg9TiQoRykpJiYoRC5lb3RmPWgpO0cuYXVkaW9DaGFubmVscyYmKEQuYXVkaW9fY2hhbm5lbHM9Ry5hdWRpb0NoYW5uZWxzKTtMLnB1c2goeUcoRCkpfXZhciBHPUwuam9pbigiLCIpO24uaGxzRm9ybWF0cz1HfWlmKChlPQpXLmxpY2Vuc2VJbmZvcykmJmUubGVuZ3RoPjApe0c9e307Zm9yKHZhciByIG9mIGUpZT1yLmRybUZhbWlseSx2PXIudXJsLGUmJnYmJihHW0paW2VdXT12KTtuLmNvbnRlbnRQcm90ZWN0aW9uPUd9aWYocj1XLmRybVBhcmFtcyluLmRybVBhcmFtcz1yO2lmKHI9Vy5kYXNoTWFuaWZlc3RVcmwpbi5UZj1nLkVUKHIse2NwbjpuLmNsaWVudFBsYXliYWNrTm9uY2V9KTtpZihyPVcuaGxzTWFuaWZlc3RVcmwpbi5obHN2cD1yO2lmKHI9Vy5wcm9iZVVybCluLnByb2JlVXJsPUZOKGcuRVQocix7Y3BuOm4uY2xpZW50UGxheWJhY2tOb25jZX0pKTtpZihXPVcuc2VydmVyQWJyU3RyZWFtaW5nVXJsKW4ubEM9bmV3IGcud1ooVywhMCl9OwpvWU09ZnVuY3Rpb24obixXLEQpe3ZhciBiPVcudmlkZW9JZDtiJiYobi52aWRlb0lkPWIsRC52aWRlb19pZHx8KEQudmlkZW9faWQ9YikpO2lmKGI9Vy50aXRsZSluLnRpdGxlPWIsRC50aXRsZXx8KEQudGl0bGU9Yik7aWYoYj1XLmxlbmd0aFNlY29uZHMpbi5sZW5ndGhTZWNvbmRzPU51bWJlcihiKSxELmxlbmd0aF9zZWNvbmRzfHwoRC5sZW5ndGhfc2Vjb25kcz1iKTtpZihiPVcua2V5d29yZHMpbi5rZXl3b3Jkcz1XaihiKTtpZihiPVcuY2hhbm5lbElkKW4uRjk9YixELnVjaWR8fChELnVjaWQ9Yik7aWYoYj1XLnZpZXdDb3VudCluLnJhd1ZpZXdDb3VudD1OdW1iZXIoYik7aWYoYj1XLmF1dGhvciluLmF1dGhvcj1iLEQuYXV0aG9yfHwoRC5hdXRob3I9Yik7aWYoRD1XLnNob3J0RGVzY3JpcHRpb24pbi5zaG9ydERlc2NyaXB0aW9uPUQ7aWYoRD1XLmlzQ3Jhd2xhYmxlKW4uaXNMaXN0ZWQ9RDtpZihEPVcubXVzaWNWaWRlb1R5cGUpbi5tdXNpY1ZpZGVvVHlwZT1EO0Q9Vy5pc0xpdmU7CkQhPW51bGwmJihuLmlzTGl2ZVBsYXliYWNrPUQpO2lmKER8fFcuaXNVcGNvbWluZyluLmlzUHJlbWllcmU9IVcuaXNMaXZlQ29udGVudDtpZihEPVcudGh1bWJuYWlsKW4udE89d2MoRCk7aWYoRD1XLmlzRXh0ZXJuYWxseUhvc3RlZFBvZGNhc3Qpbi5pc0V4dGVybmFsbHlIb3N0ZWRQb2RjYXN0PUQ7KEQ9Vy5zdGF0aW9uVHlwZSkmJkQhPT0iU1RBVElPTl9UWVBFX1VOS05PV04iJiYobi56Mz0hMCk7RD1XLnZpZXdlckxpdmVzdHJlYW1Kb2luUG9zaXRpb247RD8udXRjVGltZU1pbGxpcyYmKG4uRHo9Zy5OaChELnV0Y1RpbWVNaWxsaXMpKTtuLkcoKS5leHBlcmltZW50cy5FcSgiZW5hYmxlX2NlbnRlcmVkX2NhcHRpb25fZm9yX3R2ZmlsbV92aWRlbyIpJiZXLmlzVHZmaWxtVmlkZW8hPW51bGwmJihuLmlzVHZmaWxtVmlkZW89Vy5pc1R2ZmlsbVZpZGVvKTtXLmlzVHZmaWxtVmlkZW8hPW51bGwmJihuLmNPPVcuaXNUdmZpbG1WaWRlbyYmbi5pc0xpdmVQbGF5YmFjayl9Owp6RWI9ZnVuY3Rpb24obixXKXtpZihXLnBsYXllckxlZ2FjeURlc2t0b3BZcGNUcmFpbGVyUmVuZGVyZXIpe3ZhciBEPVcucGxheWVyTGVnYWN5RGVza3RvcFlwY1RyYWlsZXJSZW5kZXJlcjtuLk1nPUQudHJhaWxlclZpZGVvSWR8fCIiO3ZhciBiPShiPVcucGxheWVyTGVnYWN5RGVza3RvcFlwY1RyYWlsZXJSZW5kZXJlci55cGNUcmFpbGVyKSYmYi55cGNUcmFpbGVyUmVuZGVyZXJ9ZWxzZSBXLnBsYXllckxlZ2FjeURlc2t0b3BZcGNPZmZlclJlbmRlcmVyP0Q9Vy5wbGF5ZXJMZWdhY3lEZXNrdG9wWXBjT2ZmZXJSZW5kZXJlcjpXLnlwY1RyYWlsZXJSZW5kZXJlciYmKGI9Vy55cGNUcmFpbGVyUmVuZGVyZXIsVz1iLmZ1bGxWaWRlb01lc3NhZ2Usbi5IQj1XP2cuRHAoVyk6IiIsbi5NZz1nLncoYixEeik/LnZpZGVvRGV0YWlscz8udmlkZW9JZHx8IiIpO0QmJihuLlU5PUQuaXRlbVRpdGxlfHwiIixELml0ZW1VcmwmJihuLndWPUQuaXRlbVVybCksRC5pdGVtQnV5VXJsJiYobi5nVj0KRC5pdGVtQnV5VXJsKSxuLkFKPUQuaXRlbVRodW1ibmFpbHx8IiIsbi5kVj1ELm9mZmVySGVhZGxpbmV8fCIiLG4uR249RC5vZmZlckRlc2NyaXB0aW9ufHwiIixuLk9oPUQub2ZmZXJJZHx8IiIsbi5Daj1ELm9mZmVyQnV0dG9uVGV4dHx8IiIsbi51Vz1ELm9mZmVyQnV0dG9uRm9ybWF0dGVkVGV4dHx8bnVsbCxuLkU5PUQub3ZlcmxheUR1cmF0aW9uTXNlY3x8TmFOLG4uSEI9RC5mdWxsVmlkZW9NZXNzYWdlfHwiIixuLnZNPSEwKTtiJiYoKEQ9Zy53KGIsRHopKT9uLkljPXtyYXdfcGxheWVyX3Jlc3BvbnNlOkR9OihEPWcudyhiLGR2aSksbi5JYz1EP2cuaXcoRCk6bnVsbCksbi52TT0hMCl9Owpsb2o9ZnVuY3Rpb24obixXLEQsYil7Vy5pc0xpdmVEZWZhdWx0QnJvYWRjYXN0JiYobi5pc0xpdmVEZWZhdWx0QnJvYWRjYXN0PSEwKTtXLmlzVXBjb21pbmcmJihuLmlzVXBjb21pbmc9ITApO2lmKFcuaXNQb3N0TGl2ZUR2cil7bi5YZz0hMDtpZihiPVcubGF0ZW5jeUNsYXNzKW4ubGF0ZW5jeUNsYXNzPWJqW2JdfHwiVU5LTk9XTiI7Vy5pc0xvd0xhdGVuY3lMaXZlU3RyZWFtJiYobi5pc0xvd0xhdGVuY3lMaXZlU3RyZWFtPSEwKX1lbHNle2xldCB2PSExO24uSVI/KG4uYWxsb3dMaXZlRHZyPWZOKCk/ITA6TVgmJnZqPDU/ITE6ITAsbi5pc0xpdmVQbGF5YmFjaz0hMCk6Vy5pc0xpdmU/KGIubGl2ZXN0cmVhbT0iMSIsbi5hbGxvd0xpdmVEdnI9Vy5pc0xpdmVEdnJFbmFibGVkP2ZOKCk/ITA6TVgmJnZqPDU/ITE6ITA6ITEsbi5wYXJ0bmVySWQ9Mjcsdj0hMCk6Vy5pc1VwY29taW5nJiYodj0hMCk7aWYoVy5pc0xpdmV8fG4uSVIpe1cuaXNMb3dMYXRlbmN5TGl2ZVN0cmVhbSYmKG4uaXNMb3dMYXRlbmN5TGl2ZVN0cmVhbT0KITApO2xldCBrPVcubGF0ZW5jeUNsYXNzO2smJihuLmxhdGVuY3lDbGFzcz1ialtrXXx8IlVOS05PV04iKTtpZihXPVcubGl2ZUNodW5rUmVhZGFoZWFkKW4ubGl2ZUNodW5rUmVhZGFoZWFkPVc7aWYoVz1EJiZELmxpdmVQbGF5ZXJDb25maWcpe1cuaGFzU3ViZnJhZ21lbnRlZEZtcDQmJihuLmhhc1N1YmZyYWdtZW50ZWRGbXA0PSEwKTtXLmhhc1N1YmZyYWdtZW50ZWRXZWJtJiYobi5JMj0hMCk7Vy5kZWZyYWdnZWRGcm9tU3ViZnJhZ21lbnRzJiYobi5kZWZyYWdnZWRGcm9tU3ViZnJhZ21lbnRzPSEwKTtpZihEPVcubGl2ZUV4cGVyaW1lbnRhbENvbnRlbnRJZCluLmxpdmVFeHBlcmltZW50YWxDb250ZW50SWQ9TnVtYmVyKEQpO1c9Vy5pc0xpdmVIZWFkUGxheWFibGU7bi5TKCJodG1sNV9saXZlX2hlYWRfcGxheWFibGUiKSYmVyE9bnVsbCYmKG4uaXNMaXZlSGVhZFBsYXlhYmxlPVcpfX12JiYobi5pc0xpdmVQbGF5YmFjaz0hMCxiLmFkZm9ybWF0JiZiLmFkZm9ybWF0LnNwbGl0KCJfIilbMV0hPT0KIjgifHxuLklKLnB1c2goImhlYXJ0YmVhdCIpKX19OwprTD1mdW5jdGlvbihuKXt2YXIgVz1uLmdldFdhdGNoTmV4dFJlc3BvbnNlKCk/LmNvbnRlbnRzPy50d29Db2x1bW5XYXRjaE5leHRSZXN1bHRzOyhuPW4uZ2V0V2F0Y2hOZXh0UmVzcG9uc2UoKT8ucGxheWVyT3ZlcmxheXM/LnBsYXllck92ZXJsYXlSZW5kZXJlcj8uZW5kU2NyZWVuPy53YXRjaE5leHRFbmRTY3JlZW5SZW5kZXJlcj8ucmVzdWx0cyl8fChuPVc/LmVuZFNjcmVlbj8uZW5kU2NyZWVuPy5yZXN1bHRzKTtyZXR1cm4gbn07CnhMPWZ1bmN0aW9uKCl7aWYoaHg9PT12b2lkIDApe3RyeXt3aW5kb3cubG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oInl0LXBsYXllci1sdiIpfWNhdGNoKFcpe31hOnt0cnl7dmFyIG49ISFzZWxmLmxvY2FsU3RvcmFnZX1jYXRjaHtuPSExfWlmKG4mJihuPWcudlMoYCR7TTAoKX06Onl0LXBsYXllcmApKSl7aHg9bmV3IFQkYihuKTticmVhayBhfWh4PXZvaWQgMH19cmV0dXJuIGh4fTsKTEw9ZnVuY3Rpb24oKXt2YXIgbj14TCgpO2lmKCFuKXJldHVybnt9O3RyeXtsZXQgVz1uLmdldCgieXQtcGxheWVyLWx2Iik7cmV0dXJuIEpTT04ucGFyc2UoV3x8Int9Iil9Y2F0Y2goVyl7cmV0dXJue319fTsKZSQ9ZnVuY3Rpb24obil7cmV0dXJuIExMKClbbl18fDB9OwpnNj1mdW5jdGlvbihuLFcpe3ZhciBEPUxMKCk7VyE9PURbbl0mJihXIT09MD9EW25dPVc6ZGVsZXRlIERbbl0sbj14TCgpKSYmKEQ9SlNPTi5zdHJpbmdpZnkoRCksbi5zZXQoInl0LXBsYXllci1sdiIsRCkpfTsKZy5YZT1hc3luYyBmdW5jdGlvbihuKXtyZXR1cm4gQ0YoamlVKCksbil9Owp0eD1hc3luYyBmdW5jdGlvbihuLFcsRCxiLHYsayxoLHgpe2lmKGUkKG4pPT09NClyZXR1cm4gNDt2YXIgTD1hd2FpdCBnLm5QKCk7aWYoIUwpdGhyb3cgZy5yMCgid2lhYyIpO3gmJmghPT12b2lkIDAmJihoPWF3YWl0IENuaSh4LGgpKTt2YXIgZT1ELmxhc3RNb2RpZmllZHx8IjAiO3g9YXdhaXQgZy5YZShMKTt0cnl7cmV0dXJuIHFzKyssYXdhaXQgT1IoeCxbImluZGV4IiwibWVkaWEiXSx7bW9kZToicmVhZHdyaXRlIix0YWc6IklEQl9UUkFOU0FDVElPTl9UQUdfV0lBQyIsR1E6ITB9LEc9PntpZihrIT09dm9pZCAwJiZoIT09dm9pZCAwKXt2YXIgcj1gJHtufXwke1cuaWR9fCR7ZX18JHtTdHJpbmcoaykucGFkU3RhcnQoMTAsIjAiKX1gO3I9Ry5vYmplY3RTdG9yZSgibWVkaWEiKS5wdXQoaCxyKX1lbHNlIHI9c1IucmVzb2x2ZSh2b2lkIDApO3ZhciBOPUdmKG4sVy5mWSgpKSxIPUdmKG4sIVcuZlkoKSksQT17Zm10czpnLkV0KHtkbHQ6Yi5kb3dubG9hZGVkRW5kVGltZS50b1N0cmluZygpLApta2V0OmIubWF4S25vd25FbmRUaW1lLnRvU3RyaW5nKCksYXZicjpiLmF2ZXJhZ2VCeXRlUmF0ZS50b1N0cmluZygpfSksZm9ybWF0OkR8fHt9fTtOPUcub2JqZWN0U3RvcmUoImluZGV4IikucHV0KEEsTik7dmFyIHk9Yi5kb3dubG9hZGVkRW5kVGltZT09PS0xO0E9eT9HLm9iamVjdFN0b3JlKCJpbmRleCIpLmdldChIKTpzUi5yZXNvbHZlKHZvaWQgMCk7dmFyIFQ9e2ZtdHM6Im11c2ljIixmb3JtYXQ6e319O0c9eSYmdiYmIVcuZlkoKT9HLm9iamVjdFN0b3JlKCJpbmRleCIpLnB1dChULEgpOnNSLnJlc29sdmUodm9pZCAwKTtyZXR1cm4gc1IuYWxsKFtHLEEscixOXSkudGhlbigoWyx6XSk9Pntxcy0tO3ZhciBDPWUkKG4pLFE7IShRPUMhPT00JiZ5JiZ2KSYmKFE9eiE9PXZvaWQgMCkmJihRPSh6PXouZm10cyk/ej09PSJtdXNpYyI/ITA6ei5pbmNsdWRlcygiZGx0PS0xIil8fCF6LmluY2x1ZGVzKCJkbHQ9Iik6ITEpO1EmJihDPTEsZzYobixDKSk7cmV0dXJuIEN9KX0pfWNhdGNoKEcpe3FzLS07Cng9ZSQobik7aWYoeD09PTQpcmV0dXJuIHg7ZzYobiw0KTt0aHJvdyBHO319OwpCJHg9YXN5bmMgZnVuY3Rpb24obil7dmFyIFc9YXdhaXQgZy5uUCgpO2lmKCFXKXRocm93IGcucjAoInJpIik7cmV0dXJuIE9SKGF3YWl0IGcuWGUoVyksWyJpbmRleCJdLHttb2RlOiJyZWFkb25seSIsdGFnOiJJREJfVFJBTlNBQ1RJT05fVEFHX0xNUkkifSxEPT57dmFyIGI9SURCS2V5UmFuZ2UuYm91bmQobisifCIsbisifiIpO3JldHVybiBELm9iamVjdFN0b3JlKCJpbmRleCIpLmdldEFsbChiKS50aGVuKHY9PnYubWFwKGs9Pms/ay5mb3JtYXQ6e30pKX0pfTsKdzNpPWFzeW5jIGZ1bmN0aW9uKG4sVyxELGIsdil7dmFyIGs9YXdhaXQgZy5uUCgpO2lmKCFrKXRocm93IGcucjAoInJjIik7az1PUihhd2FpdCBnLlhlKGspLFsibWVkaWEiXSx7bW9kZToicmVhZG9ubHkiLHRhZzoiSURCX1RSQU5TQUNUSU9OX1RBR19MTVJNIn0saD0+e3ZhciB4PWAke259fCR7V318JHtEfXwke1N0cmluZyhiKS5wYWRTdGFydCgxMCwiMCIpfWA7cmV0dXJuIGgub2JqZWN0U3RvcmUoIm1lZGlhIikuZ2V0KHgpfSk7CnJldHVybiB2P2sudGhlbihoPT57aWYoaD09PXZvaWQgMCl0aHJvdyBFcnJvcigiTm8gZGF0YSBmcm9tIGluZGV4RGIiKTtyZXR1cm4gRkkxKHYsaCl9KS5jYXRjaChoPT57dGhyb3cgbmV3IGcuUXgoYEVycm9yIHdoaWxlIHJlYWRpbmcgY2h1bms6ICR7aC5uYW1lfSwgJHtoLm1lc3NhZ2V9YCk7Cn0pOmt9OwpHZj1mdW5jdGlvbihuLFcpe3JldHVybmAke259fCR7Vz8idiI6ImEifWB9OwpSRWk9ZnVuY3Rpb24obil7dmFyIFc9e30sRD17fTtmb3IobGV0IGsgb2Ygbil7dmFyIGI9ay5zcGxpdCgifCIpO2lmKCFrLm1hdGNoKE1tQykpe0Rba109Ij8iO2NvbnRpbnVlfW49TnVtYmVyKGIucG9wKCkpO2lmKGlzTmFOKG4pKXtEW2tdPSI/Ijtjb250aW51ZX12YXIgdj1iLmpvaW4oInwiKTsoYj1XW3ZdKT8odj1iW2IubGVuZ3RoLTFdLG49PT12LmVuZCsxP3YuZW5kPW46Yi5wdXNoKHtzdGFydDpuLGVuZDpufSkpOldbdl09W3tzdGFydDpuLGVuZDpufV19Zm9yKGxldCBrIG9mIE9iamVjdC5rZXlzKFcpKURba109V1trXS5tYXAoaD0+YCR7aC5zdGFydH0tJHtoLmVuZH1gKS5qb2luKCIsIik7CnJldHVybiBEfTsKJEw9ZnVuY3Rpb24obixXKXt2YXIgRD1uLlYoKSxiPW4uWCgpLHY9MSxrPTAsaD1nLmRNKG4ueVEuZXhwZXJpbWVudHMsImh0bWw1X2RlZmF1bHRfYWRfZ2FpbiIpO2ghPW51bGwmJkQmJih2PWgpO2lmKGI/LkQoKSl7az1iLmF1ZGlvPy5KPz9uLko7aWYoaz09bnVsbHx8aXNOYU4oaykpaz12b2lkIDA7cmV0dXJue0R5OjAsWnI6MSx3RzoxLGZkOmsscHk6ayxSUzprLGZvcm1hdElkOmIuaWQsYUc6VyxJejpuLnlRLlZRLFFPOm4uUU99fUQ9Yj8uYXVkaW8/Lko/P24uSjtiIT1udWxsJiZiLmF1ZGlvPy5KPT1udWxsJiZuLlUoImFnYyIse25vX2FiOjF9KTtpZihEPT1udWxsfHxpc05hTihEKSlyZXR1cm4gVz1iPy5hdWRpbz8uWCE9bnVsbD9iLmF1ZGlvLlg6bi5XLGlzTmFOKFcpfHwoaz00KSxXPS1XLHtEeTpXLFpyOk1hdGgubWluKDEsMTAqKihXLzIwKSl8fHYsd0c6ayxmb3JtYXRJZDpiPy5pZCxRTzpuLlFPfTtrPTE7aD1uLmxvdWRuZXNzVGFyZ2V0TGtmczt2YXIgeD1uLnlRLmV4cGVyaW1lbnRzLkVxKCJodG1sNV9zdGF0ZWZ1bF9hdWRpb19ub3JtYWxpemF0aW9uIik7CmlmKG4uYXBwbHlTdGF0ZWZ1bE5vcm1hbGl6YXRpb24mJngpe2lmKFchPW51bGwpdmFyIEw9VztlbHNlIGlzRmluaXRlKG4ueVEuVlEpJiYoTD1uLnlRLlZRKTtMIT1udWxsJiYoaz0yLGg9Zy5GZihMLG4ubWluaW11bUxvdWRuZXNzVGFyZ2V0TGtmcyxuLmxvdWRuZXNzVGFyZ2V0TGtmcykpfXZhciBlPU1hdGgubWluKGgtRCwwKTt2YXIgRz1EK2U7dj1NYXRoLm1pbigxLDEwKiooZS8yMCkpfHx2O3gmJm4uVSgiYWdjIix7c3Rub3JtOm4uYXBwbHlTdGF0ZWZ1bE5vcm1hbGl6YXRpb24saHN0OlcsZW52Om4ueVEuVlEsZm1sOkQsc3RndDpMLHRtaW46bi5taW5pbXVtTG91ZG5lc3NUYXJnZXRMa2ZzLHRtYXg6bi5sb3VkbmVzc1RhcmdldExrZnMsbmc6ZX0pO3JldHVybntEeTplLFpyOnYsd0c6ayxmZDpELHB5OmgsUlM6Ryxmb3JtYXRJZDpiPy5pZCxhRzpXLEl6Om4ueVEuVlEsUU86bi5RT319OwpyNj1mdW5jdGlvbihuLFcpe1c9JEwobixXKTtuLk49VztuLnByZXNlcnZlU3RhdGVmdWxMb3VkbmVzc1RhcmdldCYmVy5SUyE9bnVsbCYmKG4ueVEuVlE9Vy5SUyk7cmV0dXJuIFcuWnJ9OwpRaTI9ZnVuY3Rpb24obixXLEQpe1c9e2NwbjpXfTtuLmluZGV4T2YoIi9pYncvIik9PT0tMSYmKFcuaWJ3PUQ/U3RyaW5nKEQpOiIxMzY5ODQzIik7cmV0dXJue3VybDpnLkVUKG4sVyksdHlwZToiYXBwbGljYXRpb24veC1tcGVnVVJMIixxdWFsaXR5OiJhdXRvIixpdGFnOiI5MyJ9fTsKVm10PWZ1bmN0aW9uKG4pe3RyeXtsZXQgVz0obmV3IGcud1oobiwhMCkpLmdldCgibiIpO2lmKFcpe2xldCBEPW4ubWF0Y2goL1wvblwvKFteL10rKS8pO2lmKEQmJkRbMV0mJkRbMV0hPT1XKXJldHVybiBuLnJlcGxhY2UoYC9uLyR7RFsxXX1gLGAvbi8ke1d9YCl9fWNhdGNoKFcpe2cuR3EoVyl9cmV0dXJuIG59OwpzVT1mdW5jdGlvbihuKXtpZihuLmlzQWQoKSYmKG4uVlE/bi52aWRlb0lkIT09bi55US5TJDpuLnZpZGVvSWQhPW4ueVEuUyQpKXJldHVybiBuLnlRLlMkfTsKVm49ZnVuY3Rpb24obil7aWYobil7aWYoQm4obikpcmV0dXJuIG47bj1lQShuKTtpZihCbihuLCEwKSlyZXR1cm4gbn1yZXR1cm4iIn07CmcuWU49ZnVuY3Rpb24obil7aWYoZy4kNihuLnlRKSYmbi55US5WPT09Inl0IiYmIW4uUygiaHRtbDVfZW5hYmxlX3NhYnJfb25feXRfZW1iZWRzIikpcmV0dXJuITE7aWYobi5abylyZXR1cm4gbi5ERSYmbi5VKCJmZHMiLHtmZHM6ITB9LCEwKSwhMTtpZihuLnlRLlYhPT0ieXQiJiYhY3F4KG4pKXJldHVybiBuLkRFJiZuLlUoImRzdm4iLHtuczpuLnlRLlZ9LCEwKSwhMTtpZihuLmNvdG58fCFuLk58fG4uTi5pc090ZiYmIW4uUygiaHRtbDVfZW5hYmxlX3NhYnJfb3RmX2luX2NsaWVudCIpfHxuLlcmJiFuLlcuTigpfHxuLkNVJiYhbi5TKCJodG1sNV9lbmFibGVfc2Ficl9jc2RhaSIpKXJldHVybiExO2lmKG4uUygiaHRtbDVfdXNlX3NhYnJfcmVxdWVzdHNfZm9yX2RlYnVnZ2luZyIpKXJldHVybiEwO24uREUmJm4uVSgiZXNmdyIse3VzYmM6bi5ERSxoc3U6ISFuLmxDfSwhMCk7aWYobi5ERSYmbi5sQylyZXR1cm4hMDtpZihuLlMoImh0bWw1X3JlbW92ZV9jbGllbnRfc2Ficl9kZXRlcm1pbmF0aW9uIikpcmV0dXJuITE7CnZhciBXPSFuLk4uelcmJiFuLk1pKCksRD1XJiZOcyYmbi5TKCJodG1sNV9lbmFibGVfc2Ficl92b2Rfc3RyZWFtaW5nX3hociIpO1c9VyYmIU5zJiZuLlMoImh0bWw1X2VuYWJsZV9zYWJyX3ZvZF9ub25fc3RyZWFtaW5nX3hociIpO3ZhciBiPXBMKG4pLHY9bi5TKCJodG1sNV9lbmFibGVfc2Ficl9kcm1fdm9kX3N0cmVhbWluZ194aHIiKSYmTnMmJm4uTWkoKSYmIW4uTi56VyYmKG4uZHJtUHJvZHVjdD09PSIxIj8hMTohMCk7KEQ9RHx8V3x8Ynx8dikmJiFuLmxDJiZuLlUoInNhYnIiLHtsb2M6Im0ifSwhMCk7cmV0dXJuIEQmJiEhbi5sQ307CldqPWZ1bmN0aW9uKG4pe3ZhciBXPXt9O2ZvcihsZXQgRCBvZiBuKW49RC5zcGxpdCgiPSIpLG4ubGVuZ3RoPT09Mj9XW25bMF1dPW5bMV06V1tEXT0hMDtyZXR1cm4gV307CkhqPWZ1bmN0aW9uKG4pe2lmKG4uUygiaHRtbDVfb25lc2llIikmJm4uZXJyb3JDb2RlKXJldHVybiExO3ZhciBXPWcuamoobi5JSiwieXBjIik7bi55cGNQcmV2aWV3JiYoVz0hMSk7cmV0dXJuIG4uT1YoKSYmIW4ubG9hZGluZyYmKGcuWUwobil8fGcuamoobi5JSiwiaGVhcnRiZWF0Iil8fFcpfTsKZkw9ZnVuY3Rpb24obil7bi5xTigpfHwobi5sb2FkaW5nPSExLG4uV0ooImRhdGFsb2FkZWQiKSl9OwptZj1mdW5jdGlvbihuLFcpe3ZhciBEPVcucmF3X2VtYmVkZGVkX3BsYXllcl9yZXNwb25zZTtpZighRCl7dmFyIGI9Vy5lbWJlZGRlZF9wbGF5ZXJfcmVzcG9uc2U7YiYmKEQ9SlNPTi5wYXJzZShiKSl9RCYmKG4uTz1EKTtpZihuLk8pe24uZW1iZWRkZWRQbGF5ZXJDb25maWc9bi5PLmVtYmVkZGVkUGxheWVyQ29uZmlnfHxudWxsO2lmKEQ9bi5PLnZpZGVvRmxhZ3MpRC5wbGF5YWJsZUluRW1iZWQmJihuLmFsbG93RW1iZWQ9ITApLEQuaXNQcml2YXRlJiYobi5pc1ByaXZhdGU9ITApLEQudXNlckRpc3BsYXlOYW1lJiYoVy51c2VyX2Rpc3BsYXlfbmFtZT1ELnVzZXJEaXNwbGF5TmFtZSksRC51c2VyRGlzcGxheUltYWdlJiYoVy51c2VyX2Rpc3BsYXlfaW1hZ2U9RC51c2VyRGlzcGxheUltYWdlKTtpZigoRD1uLk8uZW1iZWRQcmV2aWV3KSYmRC50aHVtYm5haWxQcmV2aWV3UmVuZGVyZXIpe0Q9RC50aHVtYm5haWxQcmV2aWV3UmVuZGVyZXI7bkwobixELmNvbnRyb2xCZ0h0bWwpO2lmKGI9CkQuZGVmYXVsdFRodW1ibmFpbCluLnRPPXdjKGIpOyhiPWcudyhEPy52aWRlb0RldGFpbHMsYW9VKSkmJkp4KG4sVyxiKTtiPWcudyhEPy52aWRlb0RldGFpbHMsbnFNKTtuLkU1PSEhRC5hZGRUb1dhdGNoTGF0ZXJCdXR0b247bi5zaG93U2hhcmVCdXR0b249ISFELnNoYXJlQnV0dG9uO2I/Lm11c2ljVmlkZW9UeXBlJiYobi5tdXNpY1ZpZGVvVHlwZT1iLm11c2ljVmlkZW9UeXBlKTtpZihiPWcudyhuLmdldEVtYmVkZGVkUGxheWVyUmVzcG9uc2UoKT8uZW1iZWRQcmV2aWV3Py50aHVtYm5haWxQcmV2aWV3UmVuZGVyZXI/LnBsYXlCdXR0b24/LmJ1dHRvblJlbmRlcmVyPy5uYXZpZ2F0aW9uRW5kcG9pbnQsZy5JUSkpb0EobixiKSxuLnZpZGVvSWQ9Yi52aWRlb0lkfHxuLnZpZGVvSWQ7RC52aWRlb0R1cmF0aW9uU2Vjb25kcyYmKG4ubGVuZ3RoU2Vjb25kcz1nLk5oKEQudmlkZW9EdXJhdGlvblNlY29uZHMpKTtELndlYlBsYXllckFjdGlvbnNQb3J0aW5nJiZhQShuLEQud2ViUGxheWVyQWN0aW9uc1BvcnRpbmcpOwppZihEPWcudyhEPy5wbGF5bGlzdCxXR2kpKXtuLk1kPSEwO2I9W107dmFyIHY9TnVtYmVyKEQuY3VycmVudEluZGV4KTtpZihELmNvbnRlbnRzKWZvcihsZXQgaz0wLGg9RC5jb250ZW50cy5sZW5ndGg7azxoO2srKyl7bGV0IHg9RC5jb250ZW50c1trXS5wbGF5bGlzdFBhbmVsVmlkZW9SZW5kZXJlcjtpZigheCljb250aW51ZTtsZXQgTD14LnNob3J0QnlsaW5lVGV4dD9nLkRwKHguc2hvcnRCeWxpbmVUZXh0KToiIixlPXgudGl0bGU/Zy5EcCh4LnRpdGxlKToiIjtiLnB1c2goe2F1dGhvcjpMLGVuY3J5cHRlZF9pZDp4LnZpZGVvSWQsdGl0bGU6ZSxjaGFubmVsX3BhdGg6az09PXY/Vy5jaGFubmVsX3BhdGg6IiIscHJvZmlsZV9waWN0dXJlOms9PT12P1cucHJvZmlsZV9waWN0dXJlOiIiLGlzX3ByaXZhdGU6az09PXY/bi5pc1ByaXZhdGU6ITAsaXNfZG5pOms9PT12P24uaU46ITEsZG5pX2NvbG9yOms9PT12P24uclI6IiJ9KX1XPXtpbmRleDpELmN1cnJlbnRJbmRleCxsaXN0OkQucGxheWxpc3RJZCwKcGxheWxpc3RfbGVuZ3RoOkQudG90YWxWaWRlb3MsdmlkZW86Yn07RC50aXRsZVRleHQmJihXLnRpdGxlPWcuRHAoRC50aXRsZVRleHQpKTtELnNob3J0QnlsaW5lVGV4dCYmKFcuYXV0aG9yPWcuRHAoRC5zaG9ydEJ5bGluZVRleHQpKTtuLlE3PVd9aWYoVz1nLncobi5nZXRFbWJlZGRlZFBsYXllclJlc3BvbnNlKCk/LmVtYmVkUHJldmlldz8udGh1bWJuYWlsUHJldmlld1JlbmRlcmVyPy5pbmZvUGFuZWwsUyQpKW4ud289TnVtYmVyKFc/LmR1cmF0aW9uTXMpfHxOYU4sVz8uaW5mb1BhbmVsT3ZlcnZpZXdWaWV3TW9kZWwmJihuLnhqPVc/LmluZm9QYW5lbE92ZXJ2aWV3Vmlld01vZGVsKSxXPy5pbmZvUGFuZWxEZXRhaWxzVmlld01vZGVsJiYobi5Saz1XPy5pbmZvUGFuZWxEZXRhaWxzVmlld01vZGVsKX1pZihuLk8ucHJldmlld1BsYXlhYmlsaXR5U3RhdHVzKXtpZihuLmVCPW4uTy5wcmV2aWV3UGxheWFiaWxpdHlTdGF0dXMsVz1uLmVCLCFbIk9LIiwiTElWRV9TVFJFQU1fT0ZGTElORSJdLmluY2x1ZGVzKFcuc3RhdHVzKSl7bi5lcnJvckNvZGU9CmlpKFcuZXJyb3JDb2RlKTtEPVcuZXJyb3JTY3JlZW47aWYoYj1EPy5wbGF5ZXJFcnJvck1lc3NhZ2VSZW5kZXJlcil7bi5mbT1iO2lmKHY9Yi5yZWFzb24pbi5lcnJvclJlYXNvbj1nLkRwKHYpO2lmKGI9Yi5zdWJyZWFzb24pbi53aT1nLkRwKGIpfWVsc2Ugbi5lcnJvclJlYXNvbj1XLnJlYXNvbnx8bnVsbDtzd2l0Y2goVy5zdGF0dXMpe2Nhc2UgIkxPR0lOX1JFUVVJUkVEIjpuLmVycm9yRGV0YWlsPSIxIjticmVhaztjYXNlICJDT05URU5UX0NIRUNLX1JFUVVJUkVEIjpuLmVycm9yRGV0YWlsPSIyIjticmVhaztjYXNlICJBR0VfQ0hFQ0tfUkVRVUlSRUQiOm4uZXJyb3JEZXRhaWw9RD8ucGxheWVyS2F2UmVuZGVyZXI/LmthdlVybD8iNCI6IjMiO2JyZWFrO2RlZmF1bHQ6bi5lcnJvckRldGFpbD1XLmlzQmxvY2tlZEluUmVzdHJpY3RlZE1vZGU/IjUiOiIwIn19fWVsc2Ugbi5PLnBsYXlhYmlsaXR5U3RhdHVzJiYobi5SdD1uLk8ucGxheWFiaWxpdHlTdGF0dXMsQXgobikmJihuLmVycm9yRGV0YWlsPQoiMCIsbi5SdCYmKChXPW4uUnQuZW1iZWRkZWRQbGF5ZXJFcnJvck1lc3NhZ2VSZW5kZXJlcik/bi5mbT1nLncoVyxEdEMpOm4uZXJyb3JSZWFzb249bi5SdC5yZWFzb258fG51bGwpKSk7KFc9bi5PLmF0dGVzdGF0aW9uKSYmUW4obixXKTsoVz1uLk8ucGVybWlzc2lvbnMpJiZXLmFsbG93SW1hTW9uZXRpemF0aW9uJiYobi5hbGxvd0ltYU1vbmV0aXphdGlvbj0hMCl9fTsKRVU9ZnVuY3Rpb24obixXKXt2YXIgRD1XLnJhd193YXRjaF9uZXh0X3Jlc3BvbnNlO2lmKCFEKXt2YXIgYj1XLndhdGNoX25leHRfcmVzcG9uc2U7YiYmKEQ9SlNPTi5wYXJzZShiKSl9aWYoRCl7bi53YXRjaE5leHRSZXNwb25zZT1EOyhEPW4ud2F0Y2hOZXh0UmVzcG9uc2UucGxheWVyQ3VlUmFuZ2VTZXQpJiZnLktMKG4sRCk7RD1uLndhdGNoTmV4dFJlc3BvbnNlLnBsYXllck92ZXJsYXlzO2lmKEQmJihEPUQucGxheWVyT3ZlcmxheVJlbmRlcmVyKSl7aWYoYj1ELmF1dG9uYXZUb2dnbGUpbi5hdXRvcGxheVN3aXRjaEJ1dHRvblJlbmRlcmVyPWcudyhiLGJXWiksbi5TKCJ3ZWJfcGxheWVyX2F1dG9uYXZfdXNlX3NlcnZlcl9wcm92aWRlZF9zdGF0ZSIpJiZuLkFWKCkmJihuLmF1dG9uYXZTdGF0ZT1uLmF1dG9wbGF5U3dpdGNoQnV0dG9uUmVuZGVyZXIuZW5hYmxlZD8yOjEpO2lmKGI9RC52aWRlb0RldGFpbHMpe3ZhciB2PWIuZW1iZWRkZWRQbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzUmVuZGVyZXI7CmlmKGI9Yi5wbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzUmVuZGVyZXIpYi50aXRsZSYmKFcudGl0bGU9Zy5EcChiLnRpdGxlKSksYi5zdWJ0aXRsZSYmKFcuc3VidGl0bGU9Zy5EcChiLnN1YnRpdGxlKSl9Zy5DTihuLnlRKSYmKG4uRTU9ISFELmFkZFRvTWVudSk7bi5zaG93U2hhcmVCdXR0b249ISFELnNoYXJlQnV0dG9uO0Quc3RhcnRQb3NpdGlvbiYmRC5lbmRQb3NpdGlvbiYmKG4ucHJvZ3Jlc3NCYXJTdGFydFBvc2l0aW9uPUQuc3RhcnRQb3NpdGlvbixuLnByb2dyZXNzQmFyRW5kUG9zaXRpb249RC5lbmRQb3NpdGlvbik7aWYoYj1nLncobi5nZXRXYXRjaE5leHRSZXNwb25zZSgpPy5wbGF5ZXJPdmVybGF5cz8ucGxheWVyT3ZlcmxheVJlbmRlcmVyPy5pbmZvUGFuZWwsUyQpKW4ud289TnVtYmVyKGI/LmR1cmF0aW9uTXMpfHxOYU4sYj8uaW5mb1BhbmVsT3ZlcnZpZXdWaWV3TW9kZWwmJihuLnhqPWI/LmluZm9QYW5lbE92ZXJ2aWV3Vmlld01vZGVsKSxiPy5pbmZvUGFuZWxEZXRhaWxzVmlld01vZGVsJiYKKG4uUms9Yj8uaW5mb1BhbmVsRGV0YWlsc1ZpZXdNb2RlbCk7bi5zaG93U2Vla2luZ0NvbnRyb2xzPSEhRC5zaG93U2Vla2luZ0NvbnRyb2xzfWlmKEQ9bi5nZXRXYXRjaE5leHRSZXNwb25zZSgpPy5jb250ZW50cz8udHdvQ29sdW1uV2F0Y2hOZXh0UmVzdWx0cylpZihEPUQuZGVza3RvcE92ZXJsYXkmJmcudyhELmRlc2t0b3BPdmVybGF5LHZxdCkpRC5zdXBwcmVzc1NoYXJlQnV0dG9uJiYobi5zaG93U2hhcmVCdXR0b249ITEpLEQuc3VwcHJlc3NXYXRjaExhdGVyQnV0dG9uJiYobi5FNT0hMSk7diYmSngobixXLHYpO0Q9REkoMCxXLmF1dG9wbGF5X2NvdW50KTt2YXIgaz1uLmdldFdhdGNoTmV4dFJlc3BvbnNlKCk7Yj1rLmNvbnRlbnRzPy50d29Db2x1bW5XYXRjaE5leHRSZXN1bHRzO3Y9ay5wbGF5ZXJPdmVybGF5cz8ucGxheWVyT3ZlcmxheVJlbmRlcmVyPy5hdXRvcGxheT8ucGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI7dmFyIGg9a0wobik7aWYoKGs9ay5jb250ZW50cz8uc2luZ2xlQ29sdW1uV2F0Y2hOZXh0UmVzdWx0cykmJgprLmF1dG9wbGF5Py5hdXRvcGxheSYmIWsucGxheWxpc3Qpe2xldCB5PWsuYXV0b3BsYXkuYXV0b3BsYXkuc2V0cztrPXt9O3ZhciB4PW5ldyBPVShuLkcoKSksTD1udWxsLGU7aWYoeSl7Zm9yKHZhciBHIG9mIHkpaWYoKGU9Ry5hdXRvcGxheVZpZGVvUmVuZGVyZXIpJiZlLmNvbXBhY3RWaWRlb1JlbmRlcmVyKXtMPWUuY29tcGFjdFZpZGVvUmVuZGVyZXI7YnJlYWt9aWYoZT15WzBdLmF1dG9wbGF5VmlkZW8pKEc9ZS5jbGlja1RyYWNraW5nUGFyYW1zKSYmKGsuaXRjdD1HKSxrLmF1dG9uYXY9IjEiLGsucGxheW5leHQ9U3RyaW5nKEQpfWVsc2Ugay5mZWF0dXJlPSJyZWxhdGVkLWF1dG8iO2U9Zy53KGUsZy5JUSk7aWYoTCl7eC52aWRlb0lkPUwudmlkZW9JZDtpZihlPUwuc2hvcnRCeWxpbmVUZXh0KXguYXV0aG9yPWcuRHAoZSk7aWYoZT1MLnRpdGxlKXgudGl0bGU9Zy5EcChlKX1lbHNlIGUhPW51bGwmJmUudmlkZW9JZCYmKHgudmlkZW9JZD1lLnZpZGVvSWQpO3gueXo9aztuLnN1Z2dlc3Rpb25zPQpbXTtuLlU1PXh9aWYoaCl7ZT1bXTtmb3IodmFyIHIgb2YgaCl7aD12b2lkIDA7Rz1udWxsO2lmKHIuZW5kU2NyZWVuVmlkZW9SZW5kZXJlcil7az1yLmVuZFNjcmVlblZpZGVvUmVuZGVyZXI7eD1rLnRpdGxlO0c9bmV3IE9VKG4uRygpKTtHLnZpZGVvSWQ9ay52aWRlb0lkO0cubGVuZ3RoU2Vjb25kcz1rLmxlbmd0aEluU2Vjb25kc3x8MDtpZihMPWsucHVibGlzaGVkVGltZVRleHQpRy5wdWJsaXNoZWRUaW1lVGV4dD1nLkRwKEwpO2lmKEw9ay5zaG9ydEJ5bGluZVRleHQpRy5hdXRob3I9Zy5EcChMKTtpZihMPWsuc2hvcnRWaWV3Q291bnRUZXh0KUcuc2hvcnRWaWV3Q291bnQ9Zy5EcChMKTt4JiYoRy50aXRsZT1nLkRwKHgpLCh4PXguYWNjZXNzaWJpbGl0eSkmJih4PXguYWNjZXNzaWJpbGl0eURhdGEpJiZ4LmxhYmVsJiYoRy5hcmlhTGFiZWw9eC5sYWJlbCkpO2lmKEw9ay5uYXZpZ2F0aW9uRW5kcG9pbnQpaD1MLmNsaWNrVHJhY2tpbmdQYXJhbXMseD1nLncoTCxnLklRKSxMPWcudyhMLApnLlBqKSx4P0cuczA9eDpMIT1udWxsJiYoRy53YXRjaFVybD1MLnVybCk7aWYoeD1rLnRodW1ibmFpbE92ZXJsYXlzKWZvcih2YXIgTiBvZiB4KWlmKHg9Ti50aHVtYm5haWxPdmVybGF5VGltZVN0YXR1c1JlbmRlcmVyKWlmKHguc3R5bGU9PT0iTElWRSIpe0cuaXNMaXZlUGxheWJhY2s9ITA7YnJlYWt9ZWxzZSBpZih4LnN0eWxlPT09IlVQQ09NSU5HIil7Ry5pc1VwY29taW5nPSEwO2JyZWFrfUcudE89d2Moay50aHVtYm5haWwpfWVsc2UgaWYoci5lbmRTY3JlZW5QbGF5bGlzdFJlbmRlcmVyKXtrPXIuZW5kU2NyZWVuUGxheWxpc3RSZW5kZXJlcjtoPWsubmF2aWdhdGlvbkVuZHBvaW50O2lmKCFoKWNvbnRpbnVlO0c9Zy53KGgsZy5JUSk7aWYoIUcpY29udGludWU7eD1HLnZpZGVvSWQ7Rz1uZXcgWnoobi5HKCkpO0cucGxheWxpc3RJZD1rLnBsYXlsaXN0SWQ7Ry5wbGF5bGlzdExlbmd0aD1OdW1iZXIoay52aWRlb0NvdW50KXx8MDtHLk49eHx8bnVsbDtHLnZpZGVvSWQ9eDtpZih4PQprLnRpdGxlKUcudGl0bGU9Zy5EcCh4KTtpZih4PWsuc2hvcnRCeWxpbmVUZXh0KUcuYXV0aG9yPWcuRHAoeCk7aD1oLmNsaWNrVHJhY2tpbmdQYXJhbXM7Ry50Tz13YyhrLnRodW1ibmFpbCl9RyYmKGgmJihHLnNlc3Npb25EYXRhPXtpdGN0Omh9KSxlLnB1c2goRykpfW4uc3VnZ2VzdGlvbnM9ZX1pZih2KXtuLkozPSEhdi5wcmVmZXJJbW1lZGlhdGVSZWRpcmVjdDtuLkcoKS5adCgpLk4uUVEoa05qKSYmKG4uaDM9ISF2LnNob3dQYXVzZWRXaGVuRGlzYWJsZWQpO24uclc9bi5yV3x8ISF2LndlYlNob3dOZXdBdXRvbmF2Q291bnRkb3duO2lmKG4uclcpe049djtiPWJ8fG51bGw7cj1uZXcgT1Uobi5HKCkpO3IudmlkZW9JZD1OLnZpZGVvSWQ7aWYoZT1OLnZpZGVvVGl0bGUpci50aXRsZT1nLkRwKGUpLChlPWUuYWNjZXNzaWJpbGl0eSkmJihlPWUuYWNjZXNzaWJpbGl0eURhdGEpJiZlLmxhYmVsJiYoci5hcmlhTGFiZWw9ZS5sYWJlbCk7aWYoZT1OLmJ5bGluZSlyLmF1dGhvcj1nLkRwKGUpOwppZihlPU4ucHVibGlzaGVkVGltZVRleHQpci5wdWJsaXNoZWRUaW1lVGV4dD1nLkRwKGUpO2lmKGU9Ti5zaG9ydFZpZXdDb3VudFRleHQpci5zaG9ydFZpZXdDb3VudD1nLkRwKGUpO2lmKGU9Ti50aHVtYm5haWxPdmVybGF5cylmb3IodmFyIEggb2YgZSlpZihlPUgudGh1bWJuYWlsT3ZlcmxheVRpbWVTdGF0dXNSZW5kZXJlcilpZihlLnN0eWxlPT09IkxJVkUiKXtyLmlzTGl2ZVBsYXliYWNrPSEwO2JyZWFrfWVsc2UgaWYoZS5zdHlsZT09PSJVUENPTUlORyIpe3IuaXNVcGNvbWluZz0hMDticmVha31lbHNlIGlmKGUuc3R5bGU9PT0iREVGQVVMVCImJmUudGV4dCl7ci5sZW5ndGhUZXh0PWcuRHAoZS50ZXh0KTsoSD1lLnRleHQuYWNjZXNzaWJpbGl0eSkmJihIPUguYWNjZXNzaWJpbGl0eURhdGEpJiZILmxhYmVsJiYoci5pZz1ILmxhYmVsfHwiIik7YnJlYWt9ci50Tz13YyhOLmJhY2tncm91bmQpO2lmKEg9Ti5uZXh0QnV0dG9uKWlmKEg9SC5idXR0b25SZW5kZXJlcilpZihIPUgubmF2aWdhdGlvbkVuZHBvaW50KWlmKEg9CmcudyhILGcuSVEpKXIuczA9SDtOLnRvcEJhZGdlcyYmKEg9Ti50b3BCYWRnZXNbMF0pJiYoSD1nLncoSCxoazIpKSYmSC5zdHlsZT09PSJCQURHRV9TVFlMRV9UWVBFX1BSRU1JVU0iJiYoci5OPSEwKTtpZihIPU4uYWx0ZXJuYXRpdmVUaXRsZSlyLko5PWcuRHAoSCk7SD1yO0Q9e2F1dG9uYXY6IjEiLHBsYXluZXh0OlN0cmluZyhEKX07SC5wbGF5bGlzdElkJiYoRC5hdXRvcGxheT0iMSIpO2lmKGIpe2lmKE49Yi5hdXRvcGxheT8uYXV0b3BsYXk/LnNldHM/LlswXT8uYXV0b3BsYXlWaWRlbylpZigoYj1OLmNsaWNrVHJhY2tpbmdQYXJhbXMpJiYoRC5pdGN0PWIpLE49Zy53KE4sZy5JUSkpSC50RT1OfWVsc2UgTiYmKE49Ti5uZXh0QnV0dG9uPy5idXR0b25SZW5kZXJlcj8ubmF2aWdhdGlvbkVuZHBvaW50Py5jbGlja1RyYWNraW5nUGFyYW1zKSYmKEQuaXRjdD1OKTtELml0Y3R8fChELmZlYXR1cmU9InJlbGF0ZWQtYXV0byIpO0gueXo9RDtuLnN1Z2dlc3Rpb25zfHwobi5zdWdnZXN0aW9ucz0KW10pO24uVTU9cn12LmNvdW50RG93blNlY3MhPW51bGwmJihuLk9OPXYuY291bnREb3duU2VjcyoxRTMpO3YuY291bnREb3duU2Vjc0ZvckZ1bGxzY3JlZW4hPW51bGwmJihuLnMzPXYuY291bnREb3duU2Vjc0ZvckZ1bGxzY3JlZW4+PTA/di5jb3VudERvd25TZWNzRm9yRnVsbHNjcmVlbioxRTM6LTEpfWlmKHY9a0wobikpdj12Py5bMF0/LmVuZFNjcmVlblZpZGVvUmVuZGVyZXI/Lm5hdmlnYXRpb25FbmRwb2ludD8uY2xpY2tUcmFja2luZ1BhcmFtcyxIPW4uVTV8fG4uc3VnZ2VzdGlvbnM/LlswXXx8bnVsbCx2JiZIJiYoSC5zZXNzaW9uRGF0YT17aXRjdDp2fSk7bi53YXRjaE5leHRSZXNwb25zZS5jdXJyZW50VmlkZW9UaHVtYm5haWwmJihuLnRPPXdjKG4ud2F0Y2hOZXh0UmVzcG9uc2UuY3VycmVudFZpZGVvVGh1bWJuYWlsKSk7KHY9bi53YXRjaE5leHRSZXNwb25zZT8uY29udGVudHM/LnR3b0NvbHVtbldhdGNoTmV4dFJlc3VsdHM/LnJlc3VsdHM/LnJlc3VsdHM/LmNvbnRlbnRzKSYmCnZbMF0mJihIPXZbMF0udmlkZW9QcmltYXJ5SW5mb1JlbmRlcmVyKSYmSCYmSC5zdWJ0aXRsZSYmKG4uWDQ9Zy5EcChILnN1YnRpdGxlKSk7diYmdlsxXSYmKHY9dlsxXS52aWRlb1NlY29uZGFyeUluZm9SZW5kZXJlcj8ub3duZXI/LnZpZGVvT3duZXJSZW5kZXJlcj8udGh1bWJuYWlsPy50aHVtYm5haWxzKSYmdi5sZW5ndGgmJihuLnByb2ZpbGVQaWN0dXJlPXZbdi5sZW5ndGgtMV0udXJsKTtXPWtSKFcpO2lmKHY9bi5nZXRXYXRjaE5leHRSZXNwb25zZSgpPy5vblJlc3BvbnNlUmVjZWl2ZWRFbmRwb2ludHMpZm9yKHZhciBBIG9mIHYpZy53KEEsVVUpJiYobi5ScT1nLncoQSxVVSkpLHY9Zy53KEEseHRNKSx2Py5lbnRpdHlLZXlzJiYobi5MTj12LmVudGl0eUtleXN8fFtdLHYudmlzaWJsZU9uTG9hZEtleXMmJihuLnZpc2libGVPbkxvYWRLZXlzPXYudmlzaWJsZU9uTG9hZEtleXMpKTtuLlMoIndlYl9rZXlfbW9tZW50c19tYXJrZXJzIikmJihBPXl6LmdldFN0YXRlKCkuZW50aXRpZXMsCnY9bmYoInZpc2liaWxpdHlfb3ZlcnJpZGUiLCJtYXJrZXJzVmlzaWJpbGl0eU92ZXJyaWRlRW50aXR5IiksQT1BLm1hcmtlcnNWaXNpYmlsaXR5T3ZlcnJpZGVFbnRpdHk/QS5tYXJrZXJzVmlzaWJpbGl0eU92ZXJyaWRlRW50aXR5W3ZdfHxudWxsOm51bGwsbi5IeD1BPy52aWRlb0lkPT09KG4udmlkZW9JZHx8VykmJkE/LnZpc2liaWxpdHlPdmVycmlkZU1hcmtlcnNLZXk/QS52aXNpYmlsaXR5T3ZlcnJpZGVNYXJrZXJzS2V5Om4udmlzaWJsZU9uTG9hZEtleXMsbi52aXNpYmxlT25Mb2FkS2V5cz1bLi4ubi5IeF0pfX07CmlqPWZ1bmN0aW9uKG4sVyl7aWYoVz1XLnJhd19yZWVsX2l0ZW1fd2F0Y2hfcmVzcG9uc2Upbi5yZWVsSXRlbVdhdGNoUmVzcG9uc2U9V307CnVqPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Vy5yYXdfcmVzb2x2ZV91cmxfcmVzcG9uc2U7RHx8KFc9Vy5yZXNvbHZlX3VybF9yZXNwb25zZSkmJihEPUpTT04ucGFyc2UoVykpO0QmJihuLnBvPUQpfTsKZDY9ZnVuY3Rpb24obixXKXtuLmZmbGFncz1iTyhuLmZmbGFncyxXLmZmbGFncyk7dmFyIEQ9Vy5pdl9pbnZpZGVvX3VybDtEJiYobi5lYT1GTihEKSk7bi5SbT1ueShuLlJtLFcuaXZfYWRzX29ubHkpO2lmKEQ9Vy5jdGFfY29udmVyc2lvbl91cmxzKW4ubE09RDtuLmlzUGhhcm1hPW55KG4uaXNQaGFybWEsVy5pc19waGFybWEpO24uYXV0aG9yPWJPKG4uYXV0aG9yLFcuYXV0aG9yKTtuLndhPVZuKFcudHRzdXJsKXx8bi53YTtuLldjPW55KG4uV2MsVy5jY19hc3IpO2lmKEQ9Vy5wcm9maWxlX3BpY3R1cmUpbi5wcm9maWxlUGljdHVyZT1iTyhuLnByb2ZpbGVQaWN0dXJlLEQpO24udmlkZW9Db3VudFRleHQ9Yk8obi52aWRlb0NvdW50VGV4dCxXLnZpZGVvX2NvdW50X3RleHQpO24uYXV0b25hdlN0YXRlPVdCKG4uYXV0b25hdlN0YXRlLFcuYXV0b25hdl9zdGF0ZSxMRzEpO24uY2xpZW50UGxheWJhY2tOb25jZT1iTyhuLmNsaWVudFBsYXliYWNrTm9uY2UsVy5jcG4pO24uc3Vic2NyaWJlZD0Kbnkobi5zdWJzY3JpYmVkLFcuc3Vic2NyaWJlZCk7bi5yYXdWaWV3Q291bnQ9REkobi5yYXdWaWV3Q291bnQsVy52aWV3X2NvdW50KTtuLnNob3J0Vmlld0NvdW50PWJPKG4uc2hvcnRWaWV3Q291bnQsVy5zaG9ydF92aWV3X2NvdW50X3RleHQpO24ucHVibGlzaGVkVGltZVRleHQ9Yk8obi5wdWJsaXNoZWRUaW1lVGV4dHx8IiIsVy5wdWJsaXNoZWRUaW1lVGV4dCk7bi5sZW5ndGhUZXh0PWJPKG4ubGVuZ3RoVGV4dHx8IiIsVy5sZW5ndGhUZXh0KTtuLmlnPWJPKG4uaWd8fCIiLFcuaWcpO24uSjk9Yk8obi5KOXx8IiIsVy5KOSk7bi50aXRsZT1iTyhuLnRpdGxlLFcudGl0bGUpO24uc3VidGl0bGU9Yk8obi5zdWJ0aXRsZSxXLnN1YnRpdGxlKTtuLmV4cGFuZGVkVGl0bGU9Yk8obi5leHBhbmRlZFRpdGxlLFcuZXhwYW5kZWRfdGl0bGUpO24uZXhwYW5kZWRTdWJ0aXRsZT1iTyhuLmV4cGFuZGVkU3VidGl0bGUsVy5leHBhbmRlZF9zdWJ0aXRsZSk7bi55cGNQcmV2aWV3PWJPKG4ueXBjUHJldmlldywKVy55cGNfcHJldmlldyk7bi5EVD1iTyhuLkRULFcueXBjX29yaWdpbik7bi5MQj1ueShuLkxCLFcueXBjX2lzX3ByZW1pZXJlX3RyYWlsZXIpO24uSWs9Yk8obi5JayxXLnlwY19jbGlja3dyYXBfbWVzc2FnZSk7bi5wYXlnYXRlZD1ueShuLnBheWdhdGVkLFcucGF5Z2F0ZWQpO24uS289bnkobi5LbyxXLnJlcXVpcmVzX3B1cmNoYXNlKTtuLnNob3dTaGFyZUJ1dHRvbj0hbnkoIW4uc2hvd1NoYXJlQnV0dG9uLFcuc3MpO24uRTU9bnkobi5FNSxXLnNob3d3YXRjaGxhdGVyKTtpZihEPVcuZWwpbi5ldmVudExhYmVsPUQ7aWYoRD1XLmtleXdvcmRzKW4ua2V5d29yZHM9V2ooRC5zcGxpdCgiLCIpKTtpZihEPVcucnZzKW4uc3VnZ2VzdGlvbnM9dXcoRCkubWFwKGI9PmIucGxheWxpc3R8fGIubGlzdHx8Yi5hcGk/bmV3IFp6KG4ueVEsYik6bmV3IE9VKG4ueVEsYikpOwpuLmNvbnRlbnRDaGVja09rPW55KG4uY29udGVudENoZWNrT2ssVy5jY28pO24ucmFjeUNoZWNrT2s9bnkobi5yYWN5Q2hlY2tPayxXLnJjbyk7bi5pc0xpdmluZ1Jvb21EZWVwbGluaz1ueShuLmlzTGl2aW5nUm9vbURlZXBsaW5rLFcuaXNfbGl2aW5nX3Jvb21fZGVlcGxpbmspO24ub2F1dGhUb2tlbj1iTyhuLm9hdXRoVG9rZW4sVy5vYXV0aF90b2tlbik7bi5ISj1iTyhuLkhKLFcua3B0KTtuLnZpc2l0b3JEYXRhPWJPKG4udmlzaXRvckRhdGEsVy52aXNpdG9yX2RhdGEpO2lmKEQ9Vy5zZXNzaW9uX2RhdGEpbi5zZXNzaW9uRGF0YT15RihELCImIik7bi5XSz1iTyhuLldLLFcudHJhY2tpbmdfbGlzdCk7bi5EdD1ueShuLkR0LFcucGF1c2VfYXRfc3RhcnQpO29RKG4sVyl9Owp6Zj1mdW5jdGlvbihuLFcsRCxiKXtXJiZXLmNwbiYmZy5HcShuZXcgZy5ReCgiQ1BOIHByb3ZpZGVkIGluIFZpZGVvRGF0YSB1cGRhdGUiLHtIWjpXLmNwbixLWTpuLmNsaWVudFBsYXliYWNrTm9uY2UsdEY6RH0pKTtiJiYobi5lcnJvckNvZGU9bnVsbCxuLmVycm9yRGV0YWlsPSIiLG4uZXJyb3JSZWFzb249bnVsbCxuLndpPW51bGwpO0Q/KGtSKFcpLG4uc2V0RGF0YShXKSxIaihuKSYmZkwobikpOihXPVd8fHt9LG1mKG4sVyksRVUobixXKSxpaihuLFcpLHVqKG4sVyksZDYobixXKSxuLldKKCJkYXRhdXBkYXRlZCIpKX07Cm9RPWZ1bmN0aW9uKG4sVyl7Vy5pbmxpbmVNZXRyaWNFbmFibGVkJiYobi5pbmxpbmVNZXRyaWNFbmFibGVkPSEwKTtXLnBsYXliYWNrX3Byb2dyZXNzXzBzX3VybCYmKG4uVEk9bmV3IGVrdChXKSk7aWYoVz1XLnZpZGVvX21hc3RoZWFkX2FkX3F1YXJ0aWxlX3VybHMpbi5OZj1XLnF1YXJ0aWxlXzBfdXJsLG4uYmU9Vy5xdWFydGlsZV8yNV91cmwsbi56ND1XLnF1YXJ0aWxlXzUwX3VybCxuLm1EPVcucXVhcnRpbGVfNzVfdXJsLG4uV0g9Vy5xdWFydGlsZV8xMDBfdXJsLG4uRnI9Vy5xdWFydGlsZV8wX3VybHMsbi53Tj1XLnF1YXJ0aWxlXzI1X3VybHMsbi5DdD1XLnF1YXJ0aWxlXzUwX3VybHMsbi5vSD1XLnF1YXJ0aWxlXzc1X3VybHMsbi5BdD1XLnF1YXJ0aWxlXzEwMF91cmxzfTsKZy5LTD1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRCBvZiBXKUQuY3VlUmFuZ2VTZXRJZGVudGlmaWVyJiZuLmJOLnNldChELmN1ZVJhbmdlU2V0SWRlbnRpZmllcixELnBsYXllckN1ZVJhbmdlcz8/W10pfTsKZ3FaPWZ1bmN0aW9uKG4pe2lmKCFuKXJldHVybiBudWxsO2ZvcihsZXQgVyBvZiBuKWlmKG49Vy5hZFBsYWNlbWVudFJlbmRlcmVyPy5yZW5kZXJlcj8udmlkZW9BZFRyYWNraW5nUmVuZGVyZXIpcmV0dXJuIG47cmV0dXJuIG51bGx9Owpsaj1mdW5jdGlvbihuKXt2YXIgVz1uLnBsYXllclJlc3BvbnNlPy5wbGF5ZXJDb25maWc/LmNvbXBvc2l0ZVZpZGVvQ29uZmlnPy5zb3VyY2VDb25maWdzO249bi5wbGF5ZXJSZXNwb25zZT8ucGxheWVyQ29uZmlnPy5jb21wb3NpdGVWaWRlb0NvbmZpZz8uZGVmYXVsdEFjdGl2ZVNvdXJjZVZpZGVvSWQ7aWYoIVd8fCFXLmxlbmd0aClyZXR1cm4iIjtufHwobj1XWzBdLnZpZGVvSWR8fCIiKTtmb3IobGV0IEQgb2YgVylpZihELnZpZGVvSWQ9PT1uJiZELmF1ZGlvVHJhY2tzKWZvcihsZXQgYiBvZiBELmF1ZGlvVHJhY2tzKWlmKGIuaXNEZWZhdWx0Rm9yU291cmNlKXJldHVybiBiLmlkfHwiIjtyZXR1cm4iIn07ClhZaD1mdW5jdGlvbihuLFcsRCl7c3dpdGNoKFcpe2Nhc2UgIkVNQkVEREVEX1BMQVlFUl9MSVRFX01PREVfRklYRURfUExBWUJBQ0tfTElNSVQiOkQ+MzA/bi5saW1pdGVkUGxheWJhY2tEdXJhdGlvbkluU2Vjb25kcz0zMDpEPDMwJiZEPjEwJiYobi5saW1pdGVkUGxheWJhY2tEdXJhdGlvbkluU2Vjb25kcz0xMCk7YnJlYWs7Y2FzZSAiRU1CRURERURfUExBWUVSX0xJVEVfTU9ERV9EWU5BTUlDX1BMQVlCQUNLX0xJTUlUIjpuLmxpbWl0ZWRQbGF5YmFja0R1cmF0aW9uSW5TZWNvbmRzPUQqLjJ9fTsKcWpoPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFchPW51bGw/bnkobi5LLFcpOm4uSz9uLks6bi55US5wcmVmZXJHYXBsZXNzJiZuLnlRLnN1cHBvcnRzR2FwbGVzc1Nob3J0cygpfTsKR05oPWZ1bmN0aW9uKG4pe3JldHVybiEhbiYmaXNGaW5pdGUobikmJm4+MUU5fTsKQ0w9ZnVuY3Rpb24obil7cmV0dXJuIHpRKCkmJlRmKG4pPyExOmokKG4pJiYoZy5HbChuLnlRKT8hbi5pc0xpdmVQbGF5YmFjazpuLmhsc3ZwKXx8IWZOKCl8fG4uVVQ/ITA6ITF9OwpCaj1mdW5jdGlvbihuKXtuPWcub0Uobik7cmV0dXJuIE51bWJlcihuLmV4cGlyZSl8fDB9OwpGZT1mdW5jdGlvbihuKXt2YXIgVz1uLkcoKTtyZXR1cm4gbi55US5WPT09ImhtInx8bi55US5WPT09ImdkInx8Vy5leHBlcmltZW50cy5adCgpLk4uUVEodFMyKSYmbi55US5YJiZuLnlRLlYhPT0iZ2wiPyEwOiExfTsKSng9ZnVuY3Rpb24obixXLEQpe3ZhciBiPUQuY2hhbm5lbFRodW1ibmFpbDtiJiYoYj1iLnRodW1ibmFpbHMpJiYoYj1iWzBdKSYmKFcucHJvZmlsZV9waWN0dXJlPWIudXJsKTtpZihiPWcudyhnLncoRD8uY2hhbm5lbFRodW1ibmFpbEVuZHBvaW50LCR0TSk/LnVybEVuZHBvaW50LGcuUGopKVcuY2hhbm5lbF9wYXRoPWIudXJsO2lmKGI9RC5jb2xsYXBzZWRSZW5kZXJlcilpZihiPWcudyhiLHIxcikpe2xldCB2PWIudGl0bGU7diYmKFcudGl0bGU9Zy5EcCh2KSk7aWYoYj1iLnN1YnRpdGxlKVcuc3VidGl0bGU9Zy5EcChiKX1pZihEPUQuZXhwYW5kZWRSZW5kZXJlcilpZihEPWcudyhELHNzQykpe2lmKGI9RC50aXRsZSlXLmV4cGFuZGVkX3RpdGxlPWcuRHAoYik7aWYoYj1ELnN1YnRpdGxlKVcuZXhwYW5kZWRfc3VidGl0bGU9Zy5EcChiKTtpZihEPUQuc3Vic2NyaWJlQnV0dG9uKW4uc3Vic2NyaWJlQnV0dG9uUmVuZGVyZXI9Zy53KEQsTmgxKSxuLnN1YnNjcmliZUJ1dHRvblJlbmRlcmVyJiYKKFcudWNpZD1uLnN1YnNjcmliZUJ1dHRvblJlbmRlcmVyLmNoYW5uZWxJZCxXLnN1YnNjcmliZWQ9bi5zdWJzY3JpYmVCdXR0b25SZW5kZXJlci5zdWJzY3JpYmVkLG4uc3Vic2NyaWJlQnV0dG9uUmVuZGVyZXIubm90aWZpY2F0aW9uUHJlZmVyZW5jZVRvZ2dsZUJ1dHRvbiYmbi5zdWJzY3JpYmVCdXR0b25SZW5kZXJlci5ub3RpZmljYXRpb25QcmVmZXJlbmNlVG9nZ2xlQnV0dG9uLnRvZ2dsZUJ1dHRvblJlbmRlcmVyJiYoVz1uLnN1YnNjcmliZUJ1dHRvblJlbmRlcmVyLm5vdGlmaWNhdGlvblByZWZlcmVuY2VUb2dnbGVCdXR0b24udG9nZ2xlQnV0dG9uUmVuZGVyZXIsVy5pc1RvZ2dsZWQ/KG4ubGU9Vy50b2dnbGVkU2VydmljZUVuZHBvaW50fHxudWxsLG4uWTA9Vy5kZWZhdWx0U2VydmljZUVuZHBvaW50fHxudWxsKToobi5sZT1XLmRlZmF1bHRTZXJ2aWNlRW5kcG9pbnR8fG51bGwsbi5ZMD1XLnRvZ2dsZWRTZXJ2aWNlRW5kcG9pbnR8fG51bGwpKSl9fTsKdzY9ZnVuY3Rpb24obil7cmV0dXJuISFuLkR4fHwhIW4uTmZ8fCEhbi5Gcnx8ISFuLlRJfHxuLmZafTsKUDA9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1XXm47aWYoKG4mMTA3KT09bil7dmFyIGg9YltJWzVdXTtEW0lba144MTgzXV0oZnVuY3Rpb24ocixOLEgpe3RoaXNbSVtrXjgxNTddXShIW05dPWJbKGJbSVtrXjgxNTNdXShyKS1iW0lba144MTUzXV0odGhpc1tOXSkrTitoLS0pJWJbSVs1XV1dKX0sdltJW2teODE3NV1dKElba144MTU4XSkpfWlmKChuXjcxKT49NiYmKG4tMiYxNik8MylhOnt2YXIgeD1nLncoRCxwWVopfHxEW0lba143NjZdXSxMPXt4aTohMSwKRWw6SVtrXjY3OF0seTc6SVtrXjY3OF0sczpJW2teNjc4XX07aWYoIXgpe3ZhciBlPUw7YnJlYWsgYX14PWcuaXcoeCk7TFtJW2teNzQzXV09ITA7TFtJW2teNjQ0XV09eFtJW2teNjg2XV07TFtJW2teNjY1XV09eFtJW2teNjc5XV07TFtJW2teNjQ4XV09eFtJW2teNjQ4XV07ZT1MfWlmKChuJjEyNik9PW4pYTp7TD1EW0lba143MjcxXV0oSVtrXjcyNTRdKTt4PVsvWy8sLTQsL11bfSxdXFsnLyxJW2teNzE4NF0sLShrXjE4MTg5Njc3MzgpLC0oa14zMzc1NjY4NzMpLGteOTg5NTU4NzU4LG51bGwsVVloLC0oa144MjEyMzQxMTApLGteODc1MzU2NTIyLC0oa145NDM2MTYyODUpLC0oa144MzYxOTg2MDIpLGteMTU5ODMxMjY5MixaODEsa143MDczMDE3OTAsa14xMTcyOTI1ODk4LG51bGwsa140MTk5NDUxMywtKGteMjc3NDM3NjUyKSxrXjE0MzEzMjI2NzcsRTJVLC0oa14xNDYyMzMwNzMxKSx4dlUsbnVsbCxrXjE2MDQ0MTY1LGteNDg4OTU0MTc0LGteODIyNTEwODUxLFlqWixMLEhXdCwKZmFpLG8yaiwtKGteMjAyOTQ4MDMyNyksa14xMjgxODQ0NjYsa142NjMwMjAxNDQsU0ExLC0oa14xMjYwMTUwODE1KSwtKGteMTM4NTgyODA1NiksLShrXjE2NjI1MTc4MzcpLGteMTQ3ODUyMTA0NCwkWWosa14xODcwOTA2Mjg1LGteODIyNTEwODUxLFN1eCwtKGteMTExOTIxMzExNCksLShrXjg3NDEwNjcxMCksa14yMDc2NDU3OTE4LGteMTc0Njc4MTY5NCxJW2teNzI0MF0sb1VqLGteMTM4NDIyNjkxNSxNQ2IsLShrXjE2MjA0NjE3NTYpLGteMTI3MjM0ODc2MCxJW2teNzI5NF0sLShrXjkxMjQ2MDk4MSksa14xODg3MTM4NTY5LEoxWixJW2teNzE3MV0sTCwtKGteMTg5NjQ1NTA0KSwtKGteMTM1NTU3MzkzMSksLShrXjE0MTE5OTc0MjkpLGteMTk0Mzk0NjQxMyxMLElhMixTalUsa14xODcwOTA2Mjg1LElba143MjkwXSxBMTEsa14xMDM5NzI3ODI1LGteOTQxOTgzMTg4LC0oa14xODUwNDM2ODczKSxJW2teNzE2OF0sa14yMTYzOTkwMjEsbXR4LC0oa140NjQ5MjEzOSldO3hbNV09Cng7eFtrXjcyNDRdPXg7eFtrXjcyNTNdPXg7aWYodHlwZW9mIEtHdD09PUlba143Mjc4XSl7ZT1EO2JyZWFrIGF9dHJ5e3RyeXt4W2teNzI1NV09PT0tMyYmKCgoMCx4W2teNzI1NF0pKHhba143MTczXSx4W2teNzI0NF0pLCgoMCx4W2teNzI4MV0pKHhba143MjU2XSwoMCx4W2teNzI5MV0pKCkseFtrXjcyOTBdKSx4W2teNzI4MV0pKHhba143Mjg5XSwoMCx4W2teNzI0N10pKCkseFtrXjcyOTBdKSx4W2teNzI2M10pKHhba143MjUzXSksMSl8fCgoMCx4W2teNzI1NF0pKHhba143MjUxXSx4W2teNzI1Nl0pLHhba143MjYxXSkoeFtrXjcyNzJdLHhba143MjkyXSk+PigoMCx4W2teNzI2M10pKHhba143MjU2XSl8KDAseFtrXjcxNzVdKSh4W2teNzI1Ml0seFs1XSkpfWNhdGNoKHIpeygwLHhba143MjU1XSkoeFtrXjcyODJdKX1maW5hbGx5e3ZhciBHPU0zKGteNzI1NyxrXjIxOTAseCl9dHJ5e0c9WEQoa143MjUzLGteNzgwMCx4KX1jYXRjaChyKXt4W2teNzE3OV0hPS0zJiYoKCgoMCx4W2teCjcyOTJdKSgoMCx4W2teNzI0N10pKHhba143MTc3XSx4W2teNzE3NF0pLHhba143MjgzXSx4W2teNzE2OF0pLCgwLHhba143MTY5XSkoeFs1XSx4W2teNzI0OV0pLHhba143MTgxXSkoeFtrXjcyNDBdLHhba143MjgyXSkseFszXSkoeFtrXjcyNzBdLHhba143MjY5XSkseFtrXjcyNzhdKSgoMCx4W2teNzI3N10pKHhba143MjYxXSx4W2teNzI1MF0pLHhba143MjQ4XSwoMCx4W2teNzI2NF0pKHhba143Mjg3XSx4W2teNzI0NF0pLHhba143MjgzXSx4W2teNzI3MV0pLHhba143MjYwXSE9PTAmJih4W2teNzE2OF08PS0zPygwLHhba143MjY0XSkoeFtrXjcyNjldLHhba143MTc3XSk6KDAseFtrXjcxNjldKSh4W2teNzI2OF0sKDAseFtrXjcyNThdKSgpLHhbNF0pKX1maW5hbGx5e3hba143MTczXSE9PTQmJih4W2teNzI0N108PS00PygwLHhba143Mjg5XSkoKCgwLHhba143Mjc5XSkoeFtrXjcxODNdLHhba143MjQ0XSkseFtrXjcyNjhdKSh4W2teNzE4M10seFtrXjcyNDVdKSx4W2teNzI0OV0sCigwLHhba143MjQzXSkoKDAseFtrXjcyNDhdKSh4W2teNzI1N10seFtrXjcyODJdKSx4W2teNzI2OF0seFtrXjcyNDJdLHhba143MTcyXSksKCgoKCgoMCx4W2teNzI5NF0pKHhba143MjgxXSx4W2teNzI0MF0pLHhba143Mjc1XSkoeFtrXjcxODddLHhba143MjYzXSkseFtrXjcyNTVdKSh4W2teNzE3N10sKDAseFtrXjcyNDJdKSgpLHhba143MjU2XSkseFtrXjcyNDldKSh4W2teNzI2Nl0seFtrXjcyOTNdKSx4W2teNzE3NV0pKCgwLHhba143MTgwXSkoeFtrXjcyNDhdLHhba143MjkzXSkseFtrXjcxNzNdLHhbMV0seFtrXjcyOTNdKSx4W2teNzI0OV0pKHhba143MTY4XSx4W2teNzI2M10pLCgwLHhba143Mjc1XSkoeFtrXjcyODhdLHhba143MjkzXSk8PSgwLHhba143MjU1XSkoeFtrXjcxNzddLCgwLHhba143Mjc5XSkoKSx4W2teNzI1MF0pLHhba143MTc2XSwoMCx4W2teNzE3Nl0pKHhba143MjUxXSx4W2teNzI2M10pLHhbMF0seFtrXjcxNzddKTooKCgwLHhba143MTgxXSkoKCgwLHhba14KNzE3Nl0pKHhba143MTY5XSx4W2teNzI2M10pLHhba143Mjc1XSkoeFtrXjcyOTFdLHhba143MjYzXSklKDAseFtrXjcxODJdKSh4W2teNzE3Ml0pLHhba143MjU1XSwoMCx4W2teNzE3Nl0pKHhbNF0seFtrXjcxNzJdKSx4W2teNzI5M10sKDAseFtrXjcyNzBdKSgpLHhba143MjU2XSksKDAseFtrXjcxODJdKSh4W2teNzI4MV0pLHhba143MjU1XSkoeFtrXjcyOTNdLCgwLHhba143MjU3XSkoKSx4W2teNzI2OF0pPT09KCgoMCx4W2teNzI1NV0pKHhba143MTc3XSwoMCx4W2teNzI1N10pKCkseFtrXjcyNTBdKSx4W2teNzI3NV0pKHhba143MjU5XSx4W2teNzE3MV0pLCgwLHhba143MjU1XSkoeFtrXjcxNzddLCgwLHhba143MjU3XSkoKSx4W2teNzI2OF0pLHhba143MjU1XSkoeFtrXjcyOTNdLCgwLHhba143Mjc5XSkoKSx4W2teNzI1Nl0pXigwLHhba143Mjc1XSkoeFtrXjcyNzZdLHhba143MTcyXSksKDAseFtrXjcxNzVdKSgoMCx4W2teNzE3M10pKHhba143Mjc0XSx4W2teNzE3Ml0pLAp4W2teNzI1NV0seFtrXjcyOTNdLCgwLHhba143MjcwXSkoKSx4W2teNzI1MF0pLHhba143MTc2XSkoeFtrXjcyOTRdLHhba143MjYzXSkpfX1jYXRjaChyKXtlPUlba143MjgwXStEO2JyZWFrIGF9ZT1MW0lba143MjQ2XV0oSVtrXjcyNTRdKX0obl45MSk8MTYmJm4rMT4+Mz49MiYmKGVYKGteNjY0MixrXjE0ODksRCksZT1nLkRsKERbSVsxXV0sT1d0KSk7bis5Pj40Pj0zJiYobj4+MiYyNCk8MTImJmJbSVsyMl1dKEQpO3JldHVybiBlfTsKTXM9ZnVuY3Rpb24obil7cmV0dXJuISEobi5XJiZuLlcudmlkZW9JbmZvcyYmbi5XLnZpZGVvSW5mb3MubGVuZ3RoKX07CkFKPWZ1bmN0aW9uKG4pe3JldHVybiBuLk5QKCkmJm4uRygpLnN1cHBvcnRzR2FwbGVzc1Nob3J0cygpfTsKUlE9ZnVuY3Rpb24obil7dmFyIFc9WyJNVVNJQ19WSURFT19UWVBFX0FUViIsIk1VU0lDX1ZJREVPX1RZUEVfUFJJVkFURUxZX09XTkVEX1RSQUNLIl0sRD1sbyhuLnlRKT09PSJUVkhUTUw1X1NJTVBMWSImJm4ueVEuTi5jdGhlbWU9PT0iTVVTSUMiOyFuLkpnJiYoZy5NVihuLnlRKXx8dHUobi55USl8fEQpJiYoVy5pbmNsdWRlcyhuLm11c2ljVmlkZW9UeXBlKXx8bi5pc0V4dGVybmFsbHlIb3N0ZWRQb2RjYXN0KSYmKG4uSmc9ITApO2lmKFc9Zy5kOCgpKVc9L1N0YXJib2FyZFwvKFswLTldKykvLmV4ZWMoZy5YUSgpKSxXPShXP3BhcnNlSW50KFdbMV0sMTApOk5hTik8MTA7RD1odShuLnlRKSYmbi55US5OLmN0aGVtZT09PSJNVVNJQyI7dmFyIGI7aWYoYj0hbi5KZylEfHwoRD1uLnlRLEQ9bG8oRCk9PT0iVFZIVE1MNSImJkQuTi5jdmVyLnN0YXJ0c1dpdGgoIjciKSksYj1EO2ImJiFXJiYoVz1uLm11c2ljVmlkZW9UeXBlPT09Ik1VU0lDX1ZJREVPX1RZUEVfUFJJVkFURUxZX09XTkVEX1RSQUNLIiwKRD0obi5TKCJjYXN0X3ByZWZlcl9hdWRpb19vbmx5X2Zvcl9hdHZfYW5kX3VwbG9hZHMiKXx8bi5TKCJrYWJ1a2lfcGFuZ2VhX3ByZWZlcl9hdWRpb19vbmx5X2Zvcl9hdHZfYW5kX3VwbG9hZHMiKSkmJm4ubXVzaWNWaWRlb1R5cGU9PT0iTVVTSUNfVklERU9fVFlQRV9BVFYiLFd8fER8fG4uaXNFeHRlcm5hbGx5SG9zdGVkUG9kY2FzdCkmJihuLkpnPSEwKTtyZXR1cm4gbi55US5kZXZpY2VJc0F1ZGlvT25seXx8bi5KZyYmbi55US5LfTsKUXo9ZnVuY3Rpb24obil7cmV0dXJuIG4ueVEuUygiaHRtbDVfZGlzYWJsZV9hdjEiKT8hMDohMX07Ck5JPWZ1bmN0aW9uKG4pe3JldHVybiBuLnBsYXllclJlc3BvbnNlPy5wbGF5ZXJDb25maWc/LmNvbXBvc2l0ZVZpZGVvQ29uZmlnPy5jb21wb3NpdGVCcm9hZGNhc3RUeXBlPT09IkNPTVBPU0lURV9CUk9BRENBU1RfVFlQRV9DT01QUkVTU0VEX0RPTUFJTl9DT01QT1NJVEUifTsKVno9ZnVuY3Rpb24obil7dmFyIFc9bi5LO24uUygiaHRtbDVfZ2FwbGVzc191bmxpbWl0X2Zvcm1hdF9zZWxlY3Rpb24iKSYmQUoobikmJihXPSExKTt2YXIgRD0hIW4uTiYmbi5OLnpXO1c9VThaKG4ueVEse21WOm4ubVYoKSx5WDpELE93OlJRKG4pLEhpOm4uSGksbFU6Vyxpc090ZjpuLmlzT3RmKCksb0w6bi5vTCgpLElSOm4uSVIseGQ6bi5nZXRVc2VyQXVkaW81MVByZWZlcmVuY2UoKSxkaXNhYmxlQXYxOlF6KG4pLGRCOk5JKG4pfSk7Zy5ZTihuKSYmKFcudlg9ITApO3pRKCkmJm4ucGxheWVyUmVzcG9uc2UmJm4ucGxheWVyUmVzcG9uc2UucGxheWVyQ29uZmlnJiZuLnBsYXllclJlc3BvbnNlLnBsYXllckNvbmZpZy53ZWJQbGF5ZXJDb25maWcmJm4ucGxheWVyUmVzcG9uc2UucGxheWVyQ29uZmlnLndlYlBsYXllckNvbmZpZy51c2VDb2JhbHRUdm9zRG9nZm9vZEZlYXR1cmVzJiYoVy5qPSEwLFcuVj0hMCk7bi5LJiZuLmlzQWQoKSYmKG4uWXImJihXLk89bi5Zciksbi5TViYmCihXLlg9bi5TVikpO24uTlAoKSYmKFcuUyQ9Zy5kTShuLnlRLmV4cGVyaW1lbnRzLCJodG1sNV9oYXJkX2NhcF9tYXhfdmVydGljYWxfcmVzb2x1dGlvbl9mb3Jfc2hvcnRzIikpO1cubnU9bi5pc0xpdmVQbGF5YmFjayYmbi5NaSgpJiZuLnlRLlMoImh0bWw1X2RybV9saXZlX2F1ZGlvXzUxIik7Vy5iZD1uLkVUO24uUygiaHRtbDVfZGlzYWJsZV92cDlfaGRyX2ZhaXJwbGF5IikmJnpRKCkmJihXLmJkPSEwKTtXLlJhPSFnLllOKG4pO1cuVEM9IWcuWU4obikmJm4ueVEuZXhwZXJpbWVudHMuWnQoKS5OLlFRKFByaSk7cmV0dXJuIG4uZSQ9V307ClV0TT1mdW5jdGlvbihuKXtnLmFMKCJkcm1fcGJfcyIsdm9pZCAwLG4uelIpO24uQ2l8fG4uTiYmbi5OLlgoKTt2YXIgVz17fTtuLk4mJihXPU5kKG4ueXcsVnoobiksbi55US5XLG4uTixEPT5uLldKKCJjdG1wIiwiZm10Zmx0IixEKSwhMCxuZXcgU2V0KSk7Clc9bmV3IFpXUyhXLG4ueVEsbi5KaixuLnVzZUNvYmFsdFdpZGV2aW5lP3pRKCk/VGYobik6ITE6ITEsKEQsYik9PntuLlUoRCxiKX0pOwpnLnUobixXKTtuLlEkPSExO24ubG9hZGluZz0hMDtkOGkoVyxEPT57Zy5hTCgiZHJtX3BiX2YiLHZvaWQgMCxuLnpSKTtmb3IodmFyIGIgb2YgRClzd2l0Y2goYi5mbGF2b3Ipe2Nhc2UgImZhaXJwbGF5IjpiLkNpPW4uQ2k7Yi5WOT1uLlY5O2Iuamk9bi5qaTticmVhaztjYXNlICJ3aWRldmluZSI6Yi5GYz1uLkZjfW4uVFE9RDtpZihuLlRRLmxlbmd0aD4wJiYobi5qPW4uVFFbMF0sbi55US5XWCgpKSl7RD17fTtmb3IobGV0IFt2LGtdb2YgT2JqZWN0LmVudHJpZXMobi5qLkopKXtiPWs7bGV0IGg9InVuayIseD12Lm1hdGNoKC8oLiopY29kZWNzPSIoLiopIi8pO3gmJihoPXhbMl0pO0RbaF09Yn1uLlUoImRybVByb2JlIixEKX1mTChuKX0pfTsKY2o9ZnVuY3Rpb24obil7dmFyIFc7aWYoVz0hIW4uY290bilXPW4udmlkZW9JZCxXPSEhVyYmZSQoVyk9PT0xO3JldHVybiBXJiYhbi5XaX07CnkxaD1mdW5jdGlvbihuKXt2YXIgVz1uLnBsYXllclJlc3BvbnNlPy5zdHJlYW1pbmdEYXRhPy5hZGFwdGl2ZUZvcm1hdHN8fFtdLEQ9bnVsbDtpZihXLmxlbmd0aD4wKUQ9YVEobixXKTtlbHNlIGlmKCFuLlMoImh0bWw1X2RlcHJlY2F0ZV9hZGFwdGl2ZV9mb3JtYXRzX3N0cmluZyIpKXtuLlUoInBhZm10c3RyIix7czpuLmFkYXB0aXZlRm9ybWF0cy5zdWJzdHJpbmcoMCw1MCl9KTtpZigoVz1uLmFkYXB0aXZlRm9ybWF0cykmJiFqJChuKSl7bi55US5XLkomJihSbz0hMCk7Vz1uQShXKTtEPW4uY29udGVudFByb3RlY3Rpb247dmFyIGI9bi5sZW5ndGhTZWNvbmRzLHY9bi5pc0xpdmVQbGF5YmFjayxrPW4uWGcsaD1uLnlRLHg9bi5jbGllbnRQbGF5YmFja05vbmNlLEw9czVVKFcpO2lmKHZ8fGspe2I9bmV3IGcuR3goIiIsaD8uZXhwZXJpbWVudHMsITApO2Iuelc9ITA7Yi5pc01hbmlmZXN0bGVzcz0hMDtiLlc9IWs7Yi5pc0xpdmU9IWs7Yi5YZz1rO2ZvcihHIG9mIFcpe3Y9SW8oRywKRCwwLGgseCk7TD1SeChHLnVybCxHLnNwLEcucyk7dmFyIGU9TC5nZXQoImlkIik7ZSYmZS5pbmNsdWRlcygiJTdFIikmJihiLk89ITApO2U9aD8uZXhwZXJpbWVudHM/LkVxKCJodG1sNV9tYXhfa25vd25fZW5kX3RpbWVfcmViYXNlIik7bGV0IHI9TnVtYmVyKEcudGFyZ2V0X2R1cmF0aW9uX3NlYyl8fDUsTj1OdW1iZXIoRy5tYXhfZHZyX2R1cmF0aW9uX3NlYyl8fDE0NDAwLEg9TnVtYmVyKEwuZ2V0KCJtaW5kc3EiKXx8TC5nZXQoIm1pbl9zcSIpfHwiMCIpLEE9TnVtYmVyKEwuZ2V0KCJtYXhkc3EiKXx8TC5nZXQoIm1heF9zcSIpfHwiMCIpfHxJbmZpbml0eTtiLkl0PWIuSXR8fEg7Yi5IUD1iLkhQfHxBO2xldCB5PSF2Lk4oKTtMJiYkZyhiLG5ldyBXVChMLHYse3JiOnIsT1Q6eSx1YjpOLEl0OkgsSFA6QSx1azozMDAsWGc6ayxFMzplfSkpfXZhciBHPWJ9ZWxzZSBHPUw9PT0iRk9STUFUX1NUUkVBTV9UWVBFX09URiI/TnBqKFcsRCxiLGgseCk6cEpiKFcsRCxiLGgseCk7Vy5sZW5ndGg+CjAmJihXPVdbMF0sRmUobikmJlcudXJsJiYobi5SYT1uLlJhfHxCaihXLnVybCkpKTtXPW4uaXNMaXZlUGxheWJhY2smJiFuLlhnJiYhbi5SSSYmIW4uaXNQcmVtaWVyZTtuLlMoImh0bWw1X2xpdmVfaGVhZF9wbGF5YWJsZSIpJiYoIWcuRFAobikmJlcmJm4uVSgibWlzc2luZ0xpdmVIZWFkUGxheWFibGUiLHt9KSxuLnlRLlY9PT0ieXQiJiYoRy5WUT0hMCkpO0Q9R31lbHNlIEQ9bnVsbDtuLlUoInBhZm10cyIse2lzTWFuaWZlc3RGaWxsZWQ6ISFEfSl9aWYoIUQpcmV0dXJuITE7YkYobixEKTtyZXR1cm4hMH07Ckk0PWZ1bmN0aW9uKG4pe3JldHVybiEoIW4uTnx8IW4uTi5pc01hbmlmZXN0bGVzcyl9OwpnLkRQPWZ1bmN0aW9uKG4pe3JldHVybiBuLlMoImh0bWw1X2xpdmVfaGVhZF9wbGF5YWJsZSIpJiZJNChuKSYmbi55US5WPT09Inl0Ij9uLmlzTGl2ZUhlYWRQbGF5YWJsZTpuLmlzTGl2ZVBsYXliYWNrfTsKYVE9ZnVuY3Rpb24obixXKXtpZihXLmxlbmd0aD09PTB8fGokKG4pKXJldHVybiBudWxsO24ueVEuVy5KJiYoUm89ITApO3ZhciBEPW4uY29udGVudFByb3RlY3Rpb247dmFyIGI9bi5sZW5ndGhTZWNvbmRzLHY9bi5pc0xpdmVQbGF5YmFjayxrPW4uWGcsaD1uLnlRLHg9bi5jbGllbnRQbGF5YmFja05vbmNlLEw9cXVqKFcpO2lmKHZ8fGspe2I9bmV3IGcuR3goIiIsaC5leHBlcmltZW50cywhMCk7Yi5XPSFrO2Iuelc9ITA7Yi5pc01hbmlmZXN0bGVzcz0hMDtiLmlzTGl2ZT0haztiLlhnPWs7Zm9yKGxldCBHIG9mIFcpe3Y9dFooRyxELDAsaCx4KTtsZXQge0VsOnIsczpOLHk3Okh9PVAwKDUsNjk0LEcpO0w9Ungocnx8Ry51cmx8fCIiLEgsTik7dmFyIGU9TC5nZXQoImlkIik7ZSYmZS5pbmNsdWRlcygiJTdFIikmJihiLk89ITApO2U9aC5leHBlcmltZW50cz8uRXEoImh0bWw1X21heF9rbm93bl9lbmRfdGltZV9yZWJhc2UiKTtsZXQgQT1OdW1iZXIoRy50YXJnZXREdXJhdGlvblNlY3x8CjUpLHk9TnVtYmVyKEcubWF4RHZyRHVyYXRpb25TZWN8fDE0NDAwKSxUPU51bWJlcihMLmdldCgibWluZHNxIil8fEwuZ2V0KCJtaW5fc3EiKXx8IjAiKSx6PU51bWJlcihMLmdldCgibWF4ZHNxIil8fEwuZ2V0KCJtYXhfc3EiKXx8IjAiKXx8SW5maW5pdHk7Yi5JdD1iLkl0fHxUO2IuSFA9Yi5IUHx8ejtsZXQgQz0hdi5OKCk7TCYmJGcoYixuZXcgV1QoTCx2LHtyYjpBLE9UOkMsdWI6eSxJdDpULEhQOnosdWs6MzAwLFhnOmssRTM6ZX0pKX1EPWJ9ZWxzZSBEPUw9PT0iRk9STUFUX1NUUkVBTV9UWVBFX09URiI/RzNDKFcsRCxiLGgseCk6dE9aKFcsRCxiLGgseCk7Vy5sZW5ndGg+MCYmKFc9V1swXSxGZShuKSYmVy51cmwmJihuLlJhPW4uUmF8fEJqKFcudXJsKSkpO1c9bi5pc0xpdmVQbGF5YmFjayYmIW4uWGcmJiFuLlJJJiYhbi5pc1ByZW1pZXJlO24uUygiaHRtbDVfbGl2ZV9oZWFkX3BsYXlhYmxlIikmJighZy5EUChuKSYmVyYmbi5VKCJtaXNzaW5nTGl2ZUhlYWRQbGF5YWJsZSIsCnt9KSxuLnlRLlY9PT0ieXQiJiYoRC5WUT0hMCkpO3JldHVybiBEfTsKbkE9ZnVuY3Rpb24obixXKXtuPXV3KG4pO3ZhciBEPXt9O2lmKFcpZm9yKHZhciBiIG9mIFcuc3BsaXQoIiwiKSkoVz1iLm1hdGNoKC9eKFswLTldKylcLyhbMC05XSspeChbMC05XSspKFwvfCQpLykpJiYoRFtXWzFdXT17d2lkdGg6V1syXSxoZWlnaHQ6V1szXX0pO2ZvcihsZXQgdiBvZiBuKWlmKGI9RFt2Lml0YWddKXYud2lkdGg9Yi53aWR0aCx2LmhlaWdodD1iLmhlaWdodDtyZXR1cm4gbn07CmJGPWZ1bmN0aW9uKG4sVyxEPSExKXtuLmVWPXZvaWQgMDtuLk49VztnLnUobixXKTtXLkl0PW4uSXQ7Vy5IUD1uLkhQO1cuSlU9bi5KVTtXLm9SPW4ub1I7Vy5JVD1uLklUO24ubEMmJihXLlk9bmV3IHZUKG4ubEMpKTsobi5tVigpfHxnLmtwKG4pKSYmbi5JSi5wdXNoKCJ3ZWJnbCIpO24uTi5pc0xpdmV8fChuLmlzTGl2ZVBsYXliYWNrPSExKTt2YXIgYj1XLnNvdXJjZVVybC5zcGxpdCgiLyIpO2lmKG4uVlE/Yi5pbmRleE9mKCJtYW5pZmVzdF9kdXJhdGlvbiIpIT09LTE6Yi5pbmRleE9mKCJtYW5pZmVzdF9kdXJhdGlvbiIpIT0tMSluLnptPU51bWJlcihiW2IuaW5kZXhPZigibWFuaWZlc3RfZHVyYXRpb24iKSsxXSk7aWYoVy5XfHxXLmlzTWFuaWZlc3RsZXNzKVcuc3Vic2NyaWJlKCJjbGllbnR0ZW1wIixuLlUsbiksRD9XLnN1YnNjcmliZSgicmVmcmVzaCIsbi5QSCxuKTpXLnN1YnNjcmliZSgiY3VlcG9pbnRzYWRkZWQiLG4uRVosbik7Vy5YKCk/bi5RJD0hMDpHTD12b2lkIDA7Cm4uUkkmJihXLmlzV2luZG93ZWRMaXZlPW4uUkksVy5pc0xpdmU9ITAsbi5pc0xpdmVQbGF5YmFjaz0hMCk7Vy5pc1ByZW1pZXJlPW4uaXNQcmVtaWVyZTtXLmlzTGl2ZUhlYWRQbGF5YWJsZT1uLmlzTGl2ZUhlYWRQbGF5YWJsZX07ClRmPWZ1bmN0aW9uKG4pe3JldHVybiBuLlMoImh0bWw1X3R2b3Nfc2tpcF9kYXNoX2F1ZGlvX2NoZWNrIil8fE1lZGlhU291cmNlLmlzVHlwZVN1cHBvcnRlZCgnYXVkaW8vd2VibTsgY29kZWNzPSJvcHVzIicpfTsKaiQ9ZnVuY3Rpb24obil7cmV0dXJuIHpRKCk/IVRmKG4pOkMkKCk/bi5DaSYmbi5jTz8hMDohKCFuLkNpfHwhbi5TKCJodG1sNV9lbmFibGVfc2FmYXJpX2ZhaXJwbGF5IikmJmZOKCkpOiExfTsKU3g9ZnVuY3Rpb24obil7cmV0dXJuIG4ubGF0ZW5jeUNsYXNzPT09IkxPVyJ8fG4ubGF0ZW5jeUNsYXNzPT09IlVMVFJBTE9XIn07CmhEPWZ1bmN0aW9uKG4pe3JldHVybiBuLlZRP1N4KG4pJiZuLk4hPW51bGwmJm9vKG4uTik+PTU6U3gobikmJm4uTiE9dm9pZCAwJiZvbyhuLk4pPj01fTsKRXFoPWZ1bmN0aW9uKG4pe24ubG9hZGluZz0hMDtuLkN1PSExO2lmKGNqKG4pKUIkeChuLnZpZGVvSWQpLnRoZW4oYj0+e2lmKG4ucGxheWVyUmVzcG9uc2U/LnN0cmVhbWluZ0RhdGEpe3ZhciB2PVtdO2ZvcihsZXQgayBvZiBiKWI9T2JqZWN0LmFzc2lnbih7fSxrKSxiLnNpZ25hdHVyZUNpcGhlcj0iIix2LnB1c2goYik7di5sZW5ndGg8MiYmbi5VKCJvZmZtbGYiLHtsZW46di5sZW5ndGh9KTt2PWFRKG4sdik7UlEobikmJnp4KHYsITEpO2JGKG4sdik7bi5VKCJkbHIiLHt9KX1lbHNlIG4uVSgib2Zmc2RtIix7Y290bjpuLkNtP24uQ20uY290bjoiMCIsY3BuOm4uY2xpZW50UGxheWJhY2tOb25jZX0pfSkudGhlbigoKT0+e2ZMKG4pfSk7CmVsc2V7Z1gobi5UZil8fGcuR3EobmV3IGcuUXgoIkRBU0ggTVBEIE9yaWdpbiBpbnZhbGlkOiAiLG4uVGYpKTt2YXIgVz1uLlRmLEQ9Zy5kTShuLnlRLmV4cGVyaW1lbnRzLCJkYXNoX21hbmlmZXN0X3ZlcnNpb24iKXx8NDtXPWcuRVQoVyx7bXBkX3ZlcnNpb246RH0pO1N4KG4pJiZuLmxhdGVuY3lDbGFzcyE9PSJOT1JNQUwifHwoVz1nLkVUKFcse3BhY2luZzowfSkpO2Z0WihXLG4ueVEuZXhwZXJpbWVudHMsbi5pc0xpdmVQbGF5YmFjaykudGhlbihiPT57bi5xTigpfHwoYkYobixiLCEwKSxnLmFMKCJtcmMiLHZvaWQgMCxuLnpSKSxmTChuKSl9LGI9PntuLnFOKCl8fChuLmxvYWRpbmc9ITEsbi5XSigiZGF0YWxvYWRlcnJvciIsbmV3IGcuQ2koIm1hbmlmZXN0Lm5ldC5yZXRyeWV4aGF1c3RlZCIse2JhY2tlbmQ6Im1hbmlmZXN0IiwKcmM6Yi5zdGF0dXN9LDEpKSl9KTsKZy5hTCgibXJzIix2b2lkIDAsbi56Uil9fTsKeHA9ZnVuY3Rpb24obil7aWYoIW4uaXNQcm94aW1hTGF0ZW5jeUVsaWdpYmxlKXJldHVybiAwO3ZhciBXPVlkKCk7cmV0dXJuIG4ueVEuZ2V0V2ViUGxheWVyQ29udGV4dENvbmZpZygpPy5lbmFibGVQcm94aW1hTG93TGF0ZW5jeT8yOlc9PT0xPzE6bi5TKCJodG1sNV9lbmFibGVfcHJveGltYSIpPzI6MH07Ckt6PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4uUyhXKT8hMDoobi5mZmxhZ3N8fCIiKS5pbmNsdWRlcyhXKyI9dHJ1ZSIpfTsKaVdTPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9V3x8Q0wobil8fG4uaXNFeHRlcm5hbGx5SG9zdGVkUG9kY2FzdDtpZighbi5OfHxEKXJldHVybiBuLlUoInNraXBEYXNoIix7ZG06ISFuLk4sYWlyOlcsZGQ6bi5VVCxtc3M6Zk4oKSwiM3BwIjpuLmlzRXh0ZXJuYWxseUhvc3RlZFBvZGNhc3R9KSxnLnAkKCk7UlEobikmJnp4KG4uTixuLmlzTGl2ZVBsYXliYWNrKTtyZXR1cm4gZy5IMCgpLnRoZW4oKCk9PlMyYihuLnl3LFZ6KG4pLG4ueVEuVyxuLk4sbi5qLGI9Pm4uV0ooImN0bXAiLCJmbXRmbHQiLGIpLG4ub00sTEEobikpLnRoZW4oYj0+e2U3KG4sYik7Cm4ueXcuSj1udWxsOy9eYXYvLnRlc3Qobi5jbGllbnRQbGF5YmFja05vbmNlKSYmbi5lJCYmbi5VKCJhdjEiLG4uZSQuTil9KSl9Owp1bXQ9ZnVuY3Rpb24obixXKXtpZihXJiZuLmhsc3ZwKXJldHVybiBnLnAkKCk7aWYobi5obHNGb3JtYXRzKXtpZihXPW5BKG4uaGxzRm9ybWF0cykpe2xldCBiPVtdO2Zvcih2YXIgRCBvZiBXKUQudXJsJiYoRC51cmw9Vm10KEQudXJsKSksbi5lJD8uVyYmYi5wdXNoKEQuaXRhZyk7bi5lJD8uVyYmYi5sZW5ndGg+MCYmbi5VKCJobHNmbXQiLHtpdGFnczpiLmpvaW4oIi4iKX0pfW4ueUU9Z1laKG4ueVEsVyk7bi55RSYmZ2wobixuLnlFKTtEPW4uY2xpZW50UGxheWJhY2tOb25jZTtyZXR1cm4gdG1NKG4ueVEsbi5pc0FkKCksVyxuLnBsYXllclJlc3BvbnNlPy5jYXB0aW9ucz8ucGxheWVyQ2FwdGlvbnNSZW5kZXJlcj8uYmFzZVVybD8/bnVsbCxuLkdmLEQsYj0+bi5XSigiY3RtcCIsImhsc2ZsdCIsYikpLnRoZW4oYj0+e3ZhciB2PTAsaz1bXTsKZm9yKGxldCBoIG9mIGIpay5wdXNoKGgua0woKT8uaXRhZyksaC5rTCgpPy5ZKCk/Lm51bUNoYW5uZWxzPnYmJih2PWgua0woKS5hdWRpby5udW1DaGFubmVscyk7dj4yJiZuLlUoImhsc2NobCIse21uOnZ9KTtuLmUkPy5XJiZuLlUoImhsc2ZtdGFmIix7aXRhZ3M6ay5qb2luKCIuIil9KTtpZihuLlMoImh0bWw1X2VuYWJsZV92cDlfZmFpcnBsYXkiKSYmbi5qPy5OKCkpe24uVSgiZHJtIix7c2JkbGZiazoxfSk7Zm9yKGxldCBoIG9mIG4uVFEpaWYoZzEoaCkpe24uaj1oO2JyZWFrfX1YMihuLGIpfSl9cmV0dXJuIGcucCQoKX07Cm9xMT1mdW5jdGlvbihuKXtpZihuLmlzRXh0ZXJuYWxseUhvc3RlZFBvZGNhc3QmJm4uY2Ype2xldCBXPW5BKG4uY2YpO2lmKCFXWzBdKXJldHVybiBnLnAkKCk7bi5xdz1XWzBdO3JldHVybiBzaXIobi55USxXWzBdKS50aGVuKEQ9PntYMihuLEQpfSl9cmV0dXJuIG4uUXImJm4ub2M/cnFaKG4ueVEsbi5pc0FkKCksbi5RcikudGhlbihXPT57WDIobixXKX0pOmcucCQoKX07CnprVT1mdW5jdGlvbihuKXtpZihuLmlzRXh0ZXJuYWxseUhvc3RlZFBvZGNhc3QpcmV0dXJuIGcucCQoKTt2YXIgVz1uQShuLmNmLG4uR2opO2lmKG4uaGxzdnApe2xldCBEPVFpMihuLmhsc3ZwLG4uY2xpZW50UGxheWJhY2tOb25jZSxuLkdmKTtXLnB1c2goRCl9cmV0dXJuIGpDaChuLnlRLG4uaXNBZCgpLFcsZHQxKG4pKS50aGVuKEQ9PntYMihuLEQpfSl9OwpMQT1mdW5jdGlvbihuKXt2YXIgVz1uLlMoImh0bWw1X2VuYWJsZV9zZXJ2ZXJfZm9ybWF0X2ZpbHRlciIpJiYhbi5NaSgpLEQ9bi5TKCJodG1sNV9lbmFibGVfc2VydmVyX2Zvcm1hdF9maWx0ZXJfZm9yX2RybSIpJiZuLk1pKCk7cmV0dXJuIGcuWU4obikmJihXfHxEKX07CmU3PWZ1bmN0aW9uKG4sVyl7bi5XPVc7Z2wobixuLlcuZ2V0QXZhaWxhYmxlQXVkaW9UcmFja3MoKSk7aWYobi5XKWZvcih2YXIgRCBvZiBuLlcudmlkZW9JbmZvcylXPUQuY29udGFpbmVyVHlwZSxXIT09MCYmKG4uYkJbV109RC5pZCk7RD1uLmdldEF2YWlsYWJsZUF1ZGlvVHJhY2tzKCk7RD1ELmNvbmNhdChuLnZYKTtmb3IoVz0wO1c8bi5Udy5sZW5ndGg7VysrKXtsZXQgdj1uLlR3W1ddO2ZvcihsZXQgaz0wO2s8RC5sZW5ndGg7aysrKXtsZXQgaD1EW2tdO3ZhciBiPWgua1ouaWQ9PT12LmF1ZGlvVHJhY2tJZDtpZihoLmtaLmlzRGVmYXVsdCYmVz09PW4uTyR8fGIpe2lmKHYuY2FwdGlvblRyYWNrSW5kaWNlcylmb3IoYj0wO2I8di5jYXB0aW9uVHJhY2tJbmRpY2VzLmxlbmd0aDtiKyspaC5jYXB0aW9uVHJhY2tzW2JdPW4uY2FwdGlvblRyYWNrc1t2LmNhcHRpb25UcmFja0luZGljZXNbYl1dO3YuZGVmYXVsdENhcHRpb25UcmFja0luZGV4IT09dm9pZCAwJiYoaC5XPW4uY2FwdGlvblRyYWNrc1t2LmRlZmF1bHRDYXB0aW9uVHJhY2tJbmRleF0pOwp2LmZvcmNlZENhcHRpb25UcmFja0luZGV4IT09dm9pZCAwJiYoaC5OPW4uY2FwdGlvblRyYWNrc1t2LmZvcmNlZENhcHRpb25UcmFja0luZGV4XSk7aC5KPXYudmlzaWJpbGl0eXx8IlVOS05PV04iO2guY2FwdGlvbnNJbml0aWFsU3RhdGU9di5jYXB0aW9uc0luaXRpYWxTdGF0ZXx8IkNBUFRJT05TX0lOSVRJQUxfU1RBVEVfVU5LTk9XTiJ9fX1pZihuLmomJm4uVyYmbi5XLnZpZGVvSW5mb3MmJiEobi5XLnZpZGVvSW5mb3MubGVuZ3RoPD0wKSYmKEQ9bi5XLnZpZGVvSW5mb3NbMF0uVygpLG4uai5mbGF2b3I9PT0iZmFpcnBsYXkiIT09RCkpZm9yKGxldCB2IG9mIG4uVFEpaWYoRD09PSh2LmZsYXZvcj09PSJmYWlycGxheSIpKXtuLmo9djticmVha319OwpnbD1mdW5jdGlvbihuLFcpe1cuc29ydCgoRCxiKT0+RC50b1N0cmluZygpLmxvY2FsZUNvbXBhcmUoYi50b1N0cmluZygpLG4ueVEuaG9zdExhbmd1YWdlKSl9OwpYMj1mdW5jdGlvbihuLFcpe24ubnU9VztlNyhuLG5ldyBwZyhnLmlfKG4ubnUsRD0+RC5rTCgpKSkpfTsKZHQxPWZ1bmN0aW9uKG4pe3ZhciBXPXtjcG46bi5jbGllbnRQbGF5YmFja05vbmNlLGM6bi55US5OLmMsY3ZlcjpuLnlRLk4uY3Zlcn07bi54eiYmKFcucHRrPW4ueHosVy5vaWQ9bi5YbyxXLnB0Y2huPW4uaDEsVy5wbHR5cGU9bi5xOCxuLnk5JiYoVy5tPW4ueTkpKTtyZXR1cm4gV307CmcucXU9ZnVuY3Rpb24obil7cmV0dXJuIGokKG4pJiZuLkNpP3tmYWlycGxheToiaHR0cHM6Ly95b3V0dWJlLmNvbS9hcGkvZHJtL2Zwcz9laz11bmluaXRpYWxpemVkIn06bi5KJiZuLkouY29udGVudFByb3RlY3Rpb258fG51bGx9OwpHZT1mdW5jdGlvbihuKXtyZXR1cm4gbi5wbGF5ZXJSZXNwb25zZSYmbi5wbGF5ZXJSZXNwb25zZS5wYWlkQ29udGVudE92ZXJsYXkmJm4ucGxheWVyUmVzcG9uc2UucGFpZENvbnRlbnRPdmVybGF5LnBhaWRDb250ZW50T3ZlcmxheVJlbmRlcmVyfHxnLncobi53YXRjaE5leHRSZXNwb25zZT8ucGxheWVyT3ZlcmxheXM/LnBsYXllck92ZXJsYXlSZW5kZXJlcj8ucGxheWVyRGlzY2xvc3VyZSxsYVMpfHxudWxsfTsKdEQ9ZnVuY3Rpb24obil7dmFyIFc9R2Uobik7cmV0dXJuIFcmJlcudGV4dD9nLkRwKFcudGV4dCk6bi5wYWlkQ29udGVudE92ZXJsYXlUZXh0fTsKJHA9ZnVuY3Rpb24obil7dmFyIFc9R2Uobik7cmV0dXJuIFcmJlcuZHVyYXRpb25Ncz9nLk5oKFcuZHVyYXRpb25Ncyk6bi5wYWlkQ29udGVudE92ZXJsYXlEdXJhdGlvbk1zfTsKcmw9ZnVuY3Rpb24obil7dmFyIFc9IiI7aWYobi51aClyZXR1cm4gbi51aDtuLmlzTGl2ZVBsYXliYWNrJiYoVz1uLmFsbG93TGl2ZUR2cj8iZHZyIjpuLmlzUHJlbWllcmU/ImxwIjpuLlJJPyJ3aW5kb3ciOiJsaXZlIik7bi5YZyYmKFc9InBvc3QiKTtyZXR1cm4gV307Cmcuc1M9ZnVuY3Rpb24obixXKXtyZXR1cm4gdHlwZW9mIG4ua2V5d29yZHNbV10hPT0ic3RyaW5nIj9udWxsOm4ua2V5d29yZHNbV119OwpnLllMPWZ1bmN0aW9uKG4pe3JldHVybiEhKG4uVGZ8fG4uY2Z8fG4uUXJ8fG4uaGxzdnB8fG4uSXAoKSl9OwpBeD1mdW5jdGlvbihuKXtyZXR1cm4obj1uLlJ0KSYmbi5zaG93RXJyb3I/bi5zaG93RXJyb3I6ITF9OwpOdT1mdW5jdGlvbihuKXtuLm11dGVkQXV0b3BsYXk9ITE7bi5lbmRTZWNvbmRzPU5hTjtuLmxpbWl0ZWRQbGF5YmFja0R1cmF0aW9uSW5TZWNvbmRzPU5hTjt6ZihuKX07CmcucEE9ZnVuY3Rpb24obil7cmV0dXJuIGcuRFAobikmJiFuLmFsbG93TGl2ZUR2cn07CllwPWZ1bmN0aW9uKG4pe3JldHVybiBnLkRQKG4pJiZuLmFsbG93TGl2ZUR2cn07CmcuSFQ9ZnVuY3Rpb24obil7cmV0dXJuISFuLk4mJks2KG4uTil9OwpnLmZBPWZ1bmN0aW9uKG4pe3JldHVybiEhbi5OJiZPayhuLk4pfTsKZy5rcD1mdW5jdGlvbihuKXtyZXR1cm4hIW4uTiYmSiRVKG4uTil9OwpnLkpEPWZ1bmN0aW9uKG4pe3JldHVybiEhbi5OJiZQRihuLk4pfTsKSVQ9ZnVuY3Rpb24obil7cmV0dXJuIG4uYWRGb3JtYXQmJihuLlZRP24uYWRGb3JtYXQhPT0iMV81IjpuLmFkRm9ybWF0IT0iMV81Iik/ImFkdW5pdCI6bi5ldmVudExhYmVsfHxuLnlRLll9OwpnLlM3PWZ1bmN0aW9uKG4pe3JldHVybiBJVChuKT09PSJzaG9ydHNwYWdlIn07CkFEPWZ1bmN0aW9uKG4pe3JldHVybiBuLkd1fHxJVChuKT09PSJkZXRhaWxwYWdlInx8SVQobik9PT0ic2hvcnRzcGFnZSJ8fG4ubXV0ZWRBdXRvcGxheX07CmlUPWZ1bmN0aW9uKG4pe3JldHVybiBJVChuKT09PSJhZHVuaXQiP24uVlQ6QUQobik/SVQobik9PT0iZGV0YWlscGFnZSJ8fElUKG4pPT09InNob3J0c3BhZ2UiP24uaXNBdXRvbmF2fHxuLlMkPjA6bi5mQj8hMTpuLnlRLlU1fHxuLnlRLk1kfHwhZy5vNChuLnlRKT8hMDohMToobi5mQj8wOm4uUFgpJiZnLm80KG4ueVEpPyEwOiExfTsKZy5tTz1mdW5jdGlvbihuKXtyZXR1cm4gbi56VygpJiZnLllOKG4pfTsKcHo9ZnVuY3Rpb24obil7cmV0dXJuISFuLnBsYXllclJlc3BvbnNlPy5wbGF5ZXJDb25maWc/Lm1lZGlhQ29tbW9uQ29uZmlnPy5zcGxpdFNjcmVlbkVsaWdpYmxlfTsKS0E9ZnVuY3Rpb24obil7cmV0dXJuIGlzTmFOKG4pPzA6TWF0aC5tYXgoKERhdGUubm93KCktbikvMUUzLTMwLDApfTsKT1M9ZnVuY3Rpb24obil7cmV0dXJuISghbi5XaXx8IW4ueVEuSykmJm4uSXAoKX07ClBUPWZ1bmN0aW9uKG4pe3JldHVybiBuLktkJiZuLmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpfTsKVGhpPWZ1bmN0aW9uKG4pe3JldHVybiBuLkRFJiYhbi5sQ307CmNxeD1mdW5jdGlvbihuKXtzd2l0Y2gobi55US5WKXtjYXNlICJnZCI6cmV0dXJuIG4uUygiaHRtbDVfZW5hYmxlX3NhYnJfb25fZHJpdmUiKTtjYXNlICJncCI6cmV0dXJuIG4uUygiaHRtbDVfZW5hYmxlX3NhYnJfb25fcGxheV9zdG9yZSIpO2Nhc2UgImRkIjpyZXR1cm4hMDtjYXNlICJwdyI6cmV0dXJuIG4uUygiaHRtbDVfZW5hYmxlX3NhYnJfb3RmX2luX2NsaWVudCIpO2RlZmF1bHQ6cmV0dXJuITF9fTsKcEw9ZnVuY3Rpb24obil7dmFyIFc7aWYoIShXPU5zJiZuLnpXKCkmJm4uTWkoKSYmKG4uZHJtUHJvZHVjdD09PSIxIj8hMTohMCkmJm4uUygiaHRtbDVfc2Ficl9saXZlX2RybV9zdHJlYW1pbmdfeGhyIikpKXtXPW4uelcoKSYmIW4uTWkoKSYmTnM7dmFyIEQ9bi56VygpJiZuLmxhdGVuY3lDbGFzcyE9PSJVTFRSQUxPVyImJiFTeChuKSYmbi5TKCJodG1sNV9zYWJyX2xpdmVfbm9ybWFsX2xhdGVuY3lfc3RyZWFtaW5nX3hociIpLGI9U3gobikmJm4uUygiaHRtbDVfc2Ficl9saXZlX2xvd19sYXRlbmN5X3N0cmVhbWluZ194aHIiKTtsZXQgdj1uLmxhdGVuY3lDbGFzcz09PSJVTFRSQUxPVyImJm4uUygiaHRtbDVfc2Ficl9saXZlX3VsdHJhX2xvd19sYXRlbmN5X3N0cmVhbWluZ194aHIiKTtXPVcmJihEfHxifHx2KX1EPVc7Vz1uLmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpJiZEJiZuLlMoImh0bWw1X2VuYWJsZV9zYWJyX3NzZGFpX3N0cmVhbWluZ194aHIiKTtEPSFuLmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpJiYKRDtiPW4uelcoKSYmIU5zJiZuLlMoImh0bWw1X2VuYWJsZV9zYWJyX2xpdmVfbm9uX3N0cmVhbWluZ194aHIiKTtuPU5zJiYobi5ERigpfHxweihuKSYmbi5TKCJodG1sNV9lbmFibGVfc2Ficl9mb3JfbGlmYV9lbGlnaWJsZV9zdHJlYW1zIikpO3JldHVybiBXfHxEfHxifHxufTsKZy5tTT1mdW5jdGlvbihuKXtpZighbi5OfHwhbi5KfHwhbi5YKXJldHVybiExO3ZhciBXPW4uTi5OLEQ9ISFXW24uSi5pZF0mJmdaKDU2LDExOTYsV1tuLkouaWRdLlhiLk4pO1c9ISFXW24uWC5pZF0mJmdaKDIyLDExNTQsV1tuLlguaWRdLlhiLk4pO3JldHVybihuLkouaXRhZz09PSIwInx8RCkmJld9OwpaUD1mdW5jdGlvbihuKXtyZXR1cm4gbi5lQj9bIk9LIiwiTElWRV9TVFJFQU1fT0ZGTElORSJdLmluY2x1ZGVzKG4uZUIuc3RhdHVzKTohMH07ClVTPWZ1bmN0aW9uKG4pe3JldHVybiEoIW4uaXNMaXZlUGxheWJhY2t8fCFuLmhhc1Byb2dyZXNzQmFyQm91bmRhcmllcygpKX07CnlVPWZ1bmN0aW9uKG4pe3JldHVybiBuLnlRLmV4cGVyaW1lbnRzLlp0KCkuTi5RUShqc1opJiZuLk5QKCl8fG4uUygiZW5hYmxlX3BsYXllcl9yZXNwb25zZV9jYWNoZV9mb3JfbGl2ZSIpfTsKRVM9ZnVuY3Rpb24obil7cmV0dXJuISFuLmVtYmVkZGVkUGxheWVyQ29uZmlnPy5lbWJlZGRlZFBsYXllckZsYWdzPy5lbmFibGVNdXNpY1V4fTsKaUY9ZnVuY3Rpb24obil7cmV0dXJuIG4ueVEuSiYmbi5pc1ByaXZhdGV9OwpnLm9UPWZ1bmN0aW9uKG4pe3ZhciBXPW4uRygpLEQ9dUYoVyksYj1XLlFyO2cuQ04oVykmJihiJiYoRC50aGlyZFBhcnR5PXsuLi5ELnRoaXJkUGFydHksZW1iZWRVcmw6Yn0pLGcuRW4oRCxuKSk7KGI9bi50dyk/RC5jbGlja1RyYWNraW5nPXtjbGlja1RyYWNraW5nUGFyYW1zOmJ9OmcuQ04obi5HKCkpJiZnLkFyKCJFVkVOVF9JRCIpJiYoRC5jbGlja1RyYWNraW5nPXtjbGlja1RyYWNraW5nUGFyYW1zOmcuQXIoIkVWRU5UX0lEIil9KTtiPUQuY2xpZW50fHx7fTt2YXIgdj0iRU1CRUQiLGs9SVQobik7az09PSJsZWFuYmFjayI/dj0iV0FUQ0giOlcuUygiZ3ZpX2NoYW5uZWxfY2xpZW50X3NjcmVlbiIpJiZrPT09InByb2ZpbGVwYWdlIj92PSJDSEFOTkVMIjpuLklSP3Y9IkxJVkVfTU9OSVRPUiI6az09PSJkZXRhaWxwYWdlIj92PSJXQVRDSF9GVUxMX1NDUkVFTiI6az09PSJhZHVuaXQiP3Y9IkFEVU5JVCI6az09PSJzcG9uc29yc2hpcHNvZmZlciImJih2PSJVTktOT1dOIik7Yi5jbGllbnRTY3JlZW49CnY7aWYodj1uLmtpZHNBcHBJbmZvKWIua2lkc0FwcEluZm89SlNPTi5wYXJzZSh2KTsoaz1uLkFtKSYmIXYmJihiLmtpZHNBcHBJbmZvPXtjb250ZW50U2V0dGluZ3M6e2FnZVVwTW9kZTpDcmJba119fSk7aWYodj1uLnRHKWIudW5wbHVnZ2VkQXBwSW5mbz17ZW5hYmxlRmlsdGVyTW9kZTohMH07KGs9bi51bnBsdWdnZWRGaWx0ZXJNb2RlVHlwZSkmJiF2JiYoYi51bnBsdWdnZWRBcHBJbmZvPXtmaWx0ZXJNb2RlVHlwZTpCaGhba119KTtpZih2PW4uWFkpYi51bnBsdWdnZWRMb2NhdGlvbkluZm89djtELmNsaWVudD1iO2I9RC5yZXF1ZXN0fHx7fTtuLllaJiYoYi5pc1ByZWZldGNoPSEwKTtpZih2PW4ubWR4RW52aXJvbm1lbnQpYi5tZHhFbnZpcm9ubWVudD12O2lmKHY9bi5tZHhDb250cm9sTW9kZSliLm1keENvbnRyb2xNb2RlPUZHeFt2XTtELnJlcXVlc3Q9YjtiPUQudXNlcnx8e307aWYodj1uLkQpYi5jcmVkZW50aWFsVHJhbnNmZXJUb2tlbnM9W3t0b2tlbjp2LHNjb3BlOiJWSURFTyJ9XTsKaWYodj1uLkhKKWIuZGVsZWdhdGVQdXJjaGFzZXM9e29hdXRoVG9rZW46dn0sYi5raWRzUGFyZW50PXtvYXV0aFRva2VuOnZ9O3Y9Vy5nZXRXZWJQbGF5ZXJDb250ZXh0Q29uZmlnKCk/LnVzZXJDb250ZW50UmF0aW5nOyF2JiZXLlMoImVuYWJsZV9icmF6aWxfYWdlX2dhdGluZ193ZWIiKSYmKHY9Zy5vOSgpLmdldCgiYnJfYWdlX3JhdGluZyIpKTt2JiYoYi5zZXJpYWxpemVkVXNlckNvbnRlbnRSYXRpbmc9dik7RC51c2VyPWI7aWYoVz1uLmNvbnRleHRQYXJhbXMpRC5hY3RpdmVQbGF5ZXJzPVt7cGxheWVyQ29udGV4dFBhcmFtczpXfV07aWYobj1uLmNsaWVudFNjcmVlbk5vbmNlKUQuY2xpZW50U2NyZWVuTm9uY2U9bjtyZXR1cm4gRH07CnVGPWZ1bmN0aW9uKG4pe3ZhciBXPWcudmIoKSxEPVcuY2xpZW50fHx7fTtpZihuLmZvcmNlZEV4cGVyaW1lbnRzKXt2YXIgYj1uLmZvcmNlZEV4cGVyaW1lbnRzLnNwbGl0KCIsIik7bGV0IHY9W107Zm9yKGxldCBrIG9mIGIpdi5wdXNoKE51bWJlcihrKSk7RC5leHBlcmltZW50SWRzPXZ9aWYoYj1uLmhvbWVHcm91cEluZm8pRC5ob21lR3JvdXBJbmZvPUpTT04ucGFyc2UoYik7aWYoYj1uLmdldFBsYXllclR5cGUoKSlELnBsYXllclR5cGU9YjtpZihiPW4uTi5jdGhlbWUpRC50aGVtZT1iO2lmKGI9bi5saXZpbmdSb29tQXBwTW9kZSlELnR2QXBwSW5mbz17Li4uRC50dkFwcEluZm8sbGl2aW5nUm9vbUFwcE1vZGU6Yn07Yj1uLmRldmljZVllYXI7bi5TKCJodG1sNV9wcm9wYWdhdGVfZGV2aWNlX3llYXIiKSYmYiYmKEQudHZBcHBJbmZvPXsuLi5ELnR2QXBwSW5mbyxkZXZpY2VZZWFyOmJ9KTtpZihiPW4ubGl2aW5nUm9vbVBvVG9rZW5JZClELnR2QXBwSW5mbz17Li4uRC50dkFwcEluZm8sCmxpdmluZ1Jvb21Qb1Rva2VuSWQ6Yn07Vy5jbGllbnQ9RDtiPVcudXNlcnx8e307bi5lbmFibGVTYWZldHlNb2RlJiYoYj17Li4uYixlbmFibGVTYWZldHlNb2RlOiEwfSk7IUQudHZBcHBJbmZvPy51c2VQYWdlaWRBc0hlYWRlciYmbi5wYWdlSWQmJihiPXsuLi5iLG9uQmVoYWxmT2ZVc2VyOm4ucGFnZUlkfSk7Vy51c2VyPWI7cmV0dXJuIFd9OwpsRj1mdW5jdGlvbihuLFcsRCl7Vz17dmlkZW9JZDpuLnZpZGVvSWQsY29udGV4dDpnLm9UKG4pLHBsYXliYWNrQ29udGV4dDp7Y29udGVudFBsYXliYWNrQ29udGV4dDpkayhuLFcsRCl9fTtuLmdUJiYoVy5wbGF5YmFja0NvbnRleHQucmVsb2FkUGxheWJhY2tDb250ZXh0PXtyZWxvYWRQbGF5YmFja1BhcmFtczpuLmdUPy5yZWxvYWRQbGF5YmFja1BhcmFtc30pO24uY29udGVudENoZWNrT2smJihXLmNvbnRlbnRDaGVja09rPSEwKTtpZihEPW4uY2xpZW50UGxheWJhY2tOb25jZSlXLmNwbj1EO2lmKEQ9bi5wbGF5ZXJQYXJhbXMpVy5wYXJhbXM9RDtlbHNlIGlmKEQ9bi5nZXRSZXNvbHZlVXJsUmVzcG9uc2UoKSlpZihEPWRsKEQpKVcucGFyYW1zPUQ7aWYoRD1uLnBsYXlsaXN0SWQpVy5wbGF5bGlzdElkPUQ7bi5yYWN5Q2hlY2tPayYmKFcucmFjeUNoZWNrT2s9ITApO0Q9bi5HKCk7dmFyIGI9RC5lbWJlZENvbmZpZztuLk5kP1cuc2VyaWFsaXplZFRoaXJkUGFydHlFbWJlZENvbmZpZz0Kbi5OZDpiJiYoVy5zZXJpYWxpemVkVGhpcmRQYXJ0eUVtYmVkQ29uZmlnPWIpO1cuY2FwdGlvblBhcmFtcz17fTtiPWcubzkoKS5RUSg2NSk7bi5kZXZpY2VDYXB0aW9uc09uIT1udWxsP1cuY2FwdGlvblBhcmFtcy5kZXZpY2VDYXB0aW9uc09uPW4uZGV2aWNlQ2FwdGlvbnNPbjpnLmVNKEQpJiYoVy5jYXB0aW9uUGFyYW1zLmRldmljZUNhcHRpb25zT249YiE9bnVsbD8hYjohMSk7bi5LTCYmKFcuY2FwdGlvblBhcmFtcy5kZXZpY2VDYXB0aW9uc0xhbmdQcmVmPW4uS0wpO2I9bi5TKCJ3ZWJfZW5hYmxlX3BsYXllcl9yZXF1ZXN0X2NhcHRpb25zX2xhc3RfbGFuZ3VhZ2Vfb25seSIpO2lmKG4uRmUubGVuZ3RoKVcuY2FwdGlvblBhcmFtcy52aWV3ZXJTZWxlY3RlZENhcHRpb25MYW5ncz1iP1tuLkZlLmF0KC0xKV06bi5GZTtlbHNlIGlmKGcuZU0oRCkpe3ZhciB2PWcuU0koKTt2Py5sZW5ndGgmJihXLmNhcHRpb25QYXJhbXMudmlld2VyU2VsZWN0ZWRDYXB0aW9uTGFuZ3M9Yj9bdi5hdCgtMSldOgp2KX1iPW4uZmV0Y2hUeXBlPT09Im9uZXNpZSImJm4uUygiaHRtbDVfb25lc2llX2F0dGFjaF9wb190b2tlbiIpO3Y9bi5mZXRjaFR5cGUhPT0ib25lc2llIiYmbi5TKCJodG1sNV9ub25fb25lc2llX2F0dGFjaF9wb190b2tlbiIpO2lmKGJ8fHYpYj1uLkcoKSxiLmpXJiYoVy5zZXJ2aWNlSW50ZWdyaXR5RGltZW5zaW9ucz17fSxXLnNlcnZpY2VJbnRlZ3JpdHlEaW1lbnNpb25zLnBvVG9rZW49Yi5qVyk7RC5TKCJmZXRjaF9hdHRfaW5kZXBlbmRlbnRseSIpJiYoVy5hdHRlc3RhdGlvblJlcXVlc3Q9e29taXRCb3RndWFyZERhdGE6ITB9KTtXLnBsYXliYWNrQ29udGV4dHx8KFcucGxheWJhY2tDb250ZXh0PXt9KTtXLnBsYXliYWNrQ29udGV4dC5kZXZpY2VQbGF5YmFja0NhcGFiaWxpdGllcz16ZShuKTtXLnBsYXliYWNrQ29udGV4dC5kZXZpY2VQbGF5YmFja0NhcGFiaWxpdGllcy5zdXBwb3J0c1ZwOUVuY29kaW5nPT09ITEmJm4uVSgibm9WcDkiLHt9KTtyZXR1cm4gV307CnplPWZ1bmN0aW9uKG4pe3ZhciBXPSFuPy5vTCgpJiZuPy56VygpJiZjMCgpO3JldHVybntzdXBwb3J0c1ZwOUVuY29kaW5nOiEoIW4/LllqKCl8fFcpLHN1cHBvcnRYaHI6TnN9fTsKajc9ZnVuY3Rpb24obil7aWYobj1uPy5lbmRwb2ludClyZXR1cm4gZy53KG4sZy5JUSl8fGcudyhuLFRlKX07CmRsPWZ1bmN0aW9uKG4pe3JldHVybiBqNyhuKT8ucGxheWVyUGFyYW1zfTsKTVNNPWFzeW5jIGZ1bmN0aW9uKG4sVyl7bj17Y29udGV4dDp1RihuLkcoKSksZW5nYWdlbWVudFR5cGU6IkVOR0FHRU1FTlRfVFlQRV9QTEFZQkFDSyIsaWRzOlt7cGxheWJhY2tJZDp7dmlkZW9JZDpuLnZpZGVvSWQsY3BuOm4uY2xpZW50UGxheWJhY2tOb25jZX19XX07dmFyIEQ9TEIod1laKTtyZXR1cm4gYXdhaXQgZy5yXyhXLG4sRCl9OwpDQT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Zy5kTShXLmV4cGVyaW1lbnRzLCJiZ192bV9yZWluaXRfdGhyZXNob2xkIik7KCFvZnx8KDAsZy5SKSgpLW9mPmIpJiZNU00obixEKS50aGVuKHY9Pnt2JiYodj12LmJvdGd1YXJkRGF0YSkmJmcuekModixXKX0sdj0+e24ucU4oKXx8KHY9QiQodiksbi5VKCJhdHRmIix2LmRldGFpbHMpKX0pfTsKQlQ9ZnVuY3Rpb24obixXLEQpe24uc3RhdGUuTltXXT0oLi4uYik9PkQuYXBwbHkobixiKX07CkYyPWZ1bmN0aW9uKG4sVyxEKXtuLnN0YXRlLk4uaGFzT3duUHJvcGVydHkoVyl8fEJUKG4sVyxEKTtuLnN0YXRlLmpbV109KC4uLmIpPT5ELmFwcGx5KG4sYik7Cm4uc3RhdGUuSy5hZGQoVyl9Owp3bD1mdW5jdGlvbihuLFcsRCl7bi5zdGF0ZS5OLmhhc093blByb3BlcnR5KFcpfHxCVChuLFcsRCk7bi5hcHAuRygpLksmJihuLnN0YXRlLlZbV109KC4uLmIpPT5ELmFwcGx5KG4sYiksbi5zdGF0ZS5LLmFkZChXKSl9OwpNdT1mdW5jdGlvbihuLFcpe24uc3RhdGUuTi5hZGRFbWJlZHNDb252ZXJzaW9uVHJhY2tpbmdQYXJhbXMoLi4uVyl9OwpnLlJUPWZ1bmN0aW9uKG4sVywuLi5EKXtuLnN0YXRlLlcuV0ooVywuLi5EKTtuLnN0YXRlLkouV0ooVywuLi5EKX07CmcuUVU9ZnVuY3Rpb24obixXLC4uLkQpe24uc3RhdGUuVy5XSihXLC4uLkQpO24uc3RhdGUuSi5XSihXLC4uLkQpO24uc3RhdGUuWC5XSihXLC4uLkQpfTsKZy5WVT1mdW5jdGlvbihuLFcsLi4uRCl7bi5zdGF0ZS5XLldKKFcsLi4uRCk7bi5zdGF0ZS5KLldKKFcsLi4uRCk7bi5zdGF0ZS5YLldKKFcsLi4uRCk7bi5zdGF0ZS5ZLldKKFcsLi4uRCl9OwphVD1mdW5jdGlvbihuLFcsRCl7dHlwZW9mIG49PT0ic3RyaW5nIiYmKG49e21lZGlhQ29udGVudFVybDpuLHN0YXJ0U2Vjb25kczpXLHN1Z2dlc3RlZFF1YWxpdHk6RH0pO2E6e2lmKChXPW4ubWVkaWFDb250ZW50VXJsKSYmKFc9L1wvKFt2ZV18ZW1iZWQpXC8oW14jP10rKS8uZXhlYyhXKSkmJldbMl0pe1c9V1syXTticmVhayBhfVc9bnVsbH1uLnZpZGVvSWQ9VztyZXR1cm4gY1Qobil9OwpjVD1mdW5jdGlvbihuLFcsRCl7aWYodHlwZW9mIG49PT0ic3RyaW5nIilyZXR1cm57dmlkZW9JZDpuLHN0YXJ0U2Vjb25kczpXLHN1Z2dlc3RlZFF1YWxpdHk6RH07Vz17fTtmb3IobGV0IGIgb2YgUmtaKW5bYl0mJihXW2JdPW5bYl0pOyhuPW4uZW1iZWRDb25maWd8fG4uZW1iZWRfY29uZmlnKSYmKFcuZW1iZWRfY29uZmlnPW4yKG4pKTtyZXR1cm4gV307ClFzUz1mdW5jdGlvbihuLFcsRCxiKXtpZihnLmZ0KG4pJiYhQXJyYXkuaXNBcnJheShuKSl7Vz0icGxheWxpc3QgbGlzdCBsaXN0VHlwZSBpbmRleCBzdGFydFNlY29uZHMgc3VnZ2VzdGVkUXVhbGl0eSIuc3BsaXQoIiAiKTtEPXt9O2ZvcihiPTA7YjxXLmxlbmd0aDtiKyspe2xldCB2PVdbYl07blt2XSYmKERbdl09blt2XSl9cmV0dXJuIER9Vz17aW5kZXg6VyxzdGFydFNlY29uZHM6RCxzdWdnZXN0ZWRRdWFsaXR5OmJ9O3R5cGVvZiBuPT09InN0cmluZyImJm4ubGVuZ3RoPT09MTY/Vy5saXN0PSJQTCIrbjpXLnBsYXlsaXN0PW47cmV0dXJuIFd9OwpuMj1mdW5jdGlvbihuKXtpZih0eXBlb2Ygbj09PSJzdHJpbmciKXJldHVybiBuO2lmKGcuZnQobikpdHJ5e3JldHVybiBKU09OLnN0cmluZ2lmeShuKX1jYXRjaChXKXtjb25zb2xlLmVycm9yKCJJbnZhbGlkIGVtYmVkQ29uZmlnIEpTT04iLFcpfX07Clc3PWZ1bmN0aW9uKG4sVz0xKXt2YXIgRD17fTtXPW4uYXBwLlZFKHtwbGF5ZXJUeXBlOld9KS5nZXRWaWRlb0RhdGEoKTtpZihpRihXKSlyZXR1cm57fTtELnZpZGVvX2lkPVcudmlkZW9JZDtELmF1dGhvcj1XLmF1dGhvcjtELnRpdGxlPVcudGl0bGU7RC5pc1BsYXlhYmxlPVpQKFcpO0QuZXJyb3JDb2RlPVcuZXJyb3JDb2RlO2lmKFcuSiYmVy5KLnZpZGVvKXtELnZpZGVvX3F1YWxpdHk9Vy5KLnZpZGVvLnF1YWxpdHk7Vz1XLkoudmlkZW87bGV0IGI9W107Vy5KKCkmJmIucHVzaCgiaGZyIik7Vy5pc0hkcigpJiZiLnB1c2goImhkciIpO1cucHJpbWFyaWVzPT09ImJ0MjAyMCImJmIucHVzaCgid2NnIik7RC52aWRlb19xdWFsaXR5X2ZlYXR1cmVzPWJ9aWYobj1uLmdldFBsYXlsaXN0SWQoKSlELmxpc3Q9bjtyZXR1cm4gRH07ClZTaD1mdW5jdGlvbihuKXtGMihuLCJjdWVWaWRlb0J5SWQiLG4uY0opO0YyKG4sImxvYWRWaWRlb0J5SWQiLG4uWSQpO0YyKG4sImN1ZVZpZGVvQnlVcmwiLG4uYmQpO0YyKG4sImxvYWRWaWRlb0J5VXJsIixuLlFyKTtGMihuLCJwbGF5VmlkZW8iLG4ueXcpO0YyKG4sInBhdXNlVmlkZW8iLG4ucGF1c2VWaWRlbyk7RjIobiwic3RvcFZpZGVvIixuLnptKTtGMihuLCJjbGVhclZpZGVvIixuLmNsZWFyVmlkZW8pO0YyKG4sImdldFZpZGVvQnl0ZXNMb2FkZWQiLG4uWVopO0YyKG4sImdldFZpZGVvQnl0ZXNUb3RhbCIsbi5SYSk7RjIobiwiZ2V0VmlkZW9Mb2FkZWRGcmFjdGlvbiIsbi5YKTtGMihuLCJnZXRWaWRlb1N0YXJ0Qnl0ZXMiLG4uTEIpO0YyKG4sImN1ZVBsYXlsaXN0IixuLmN1ZVBsYXlsaXN0KTtGMihuLCJsb2FkUGxheWxpc3QiLG4uTmQpO0YyKG4sIm5leHRWaWRlbyIsbi5VNSk7RjIobiwicHJldmlvdXNWaWRlbyIsbi5RJCk7RjIobiwicGxheVZpZGVvQXQiLG4uTWQpOwpGMihuLCJzZXRTaHVmZmxlIixuLnNldFNodWZmbGUpO0YyKG4sInNldExvb3AiLG4uc2V0TG9vcCk7RjIobiwiZ2V0UGxheWxpc3QiLG4ualcpO0YyKG4sImdldFBsYXlsaXN0SW5kZXgiLG4uZ2V0UGxheWxpc3RJbmRleCk7RjIobiwiZ2V0UGxheWxpc3RJZCIsbi5nZXRQbGF5bGlzdElkKTtGMihuLCJsb2FkTW9kdWxlIixuLmopO0YyKG4sInVubG9hZE1vZHVsZSIsbi5WKTtGMihuLCJzZXRPcHRpb24iLG4uSik7RjIobiwiZ2V0T3B0aW9uIixuLnZKKTtGMihuLCJnZXRPcHRpb25zIixuLk4pO0YyKG4sIm11dGUiLG4uczUpO0YyKG4sInVuTXV0ZSIsbi5taCk7RjIobiwiaXNNdXRlZCIsbi5pc011dGVkKTtGMihuLCJzZXRWb2x1bWUiLG4uYlYpO0YyKG4sImdldFZvbHVtZSIsbi5nZXRWb2x1bWUpO0YyKG4sInNlZWtUbyIsbi5TVik7RjIobiwiZ2V0UGxheWVyTW9kZSIsbi5nZXRQbGF5ZXJNb2RlKTtGMihuLCJnZXRQbGF5ZXJTdGF0ZSIsbi55RSk7RjIobiwiZ2V0QXZhaWxhYmxlUGxheWJhY2tSYXRlcyIsCm4uZ2V0QXZhaWxhYmxlUGxheWJhY2tSYXRlcyk7RjIobiwiZ2V0UGxheWJhY2tRdWFsaXR5IiwoKT0+bi5nZXRQbGF5YmFja1F1YWxpdHkoMSkpOwpGMihuLCJzZXRQbGF5YmFja1F1YWxpdHkiLG4uZVYpO0YyKG4sImdldEF2YWlsYWJsZVF1YWxpdHlMZXZlbHMiLG4uVlEpO0YyKG4sImdldEN1cnJlbnRUaW1lIixuLkhKKTtGMihuLCJnZXREdXJhdGlvbiIsbi5udSk7RjIobiwiYWRkRXZlbnRMaXN0ZW5lciIsbi5PKTtGMihuLCJyZW1vdmVFdmVudExpc3RlbmVyIixuLmdUKTtGMihuLCJnZXREZWJ1Z1RleHQiLG4uRHQpO0YyKG4sImdldFZpZGVvRGF0YSIsKCk9Plc3KG4pKTsKRjIobiwiYWRkQ3VlUmFuZ2UiLG4uWSk7RjIobiwicmVtb3ZlQ3VlUmFuZ2UiLG4ucmVtb3ZlQ3VlUmFuZ2UpO0YyKG4sInNldFNpemUiLG4uc2V0U2l6ZSk7RjIobiwiZ2V0QXBpSW50ZXJmYWNlIixuLmdldEFwaUludGVyZmFjZSk7RjIobiwiZGVzdHJveSIsbi5kZXN0cm95KTtGMihuLCJtdXRlZEF1dG9wbGF5IixuLm11dGVkQXV0b3BsYXkpO3ZhciBXPW4uYXBwLkcoKTtGMihuLCJnZXRWaWRlb0VtYmVkQ29kZSIsbi5nZXRWaWRlb0VtYmVkQ29kZSk7RjIobiwiZ2V0VmlkZW9VcmwiLG4ud2EpO0YyKG4sImdldE1lZGlhUmVmZXJlbmNlVGltZSIsbi5HQyk7RjIobiwiZ2V0U2l6ZSIsbi5nZXRTaXplKTtGMihuLCJzZXRGYXV4RnVsbHNjcmVlbiIsbi51NSk7Vy5TKCJlbWJlZHNfZW5hYmxlX21vdmVfc2V0X2NlbnRlcl9jcm9wX3RvX3B1YmxpYyIpJiZGMihuLCJzZXRDZW50ZXJDcm9wIixuLnNldENlbnRlckNyb3ApO1cuWHx8RjIobiwibG9nSW1hQWRFdmVudCIsbi5sb2dJbWFBZEV2ZW50KTsKRjIobiwicHJlbG9hZFZpZGVvQnlJZCIsbi5SdCk7RjIobiwid2FrZVVwQ29udHJvbHMiLG4ud2FrZVVwQ29udHJvbHMpfTsKZy5iNT1mdW5jdGlvbihuKXtyZXR1cm4obj1EJChuLmFwcC5KNSgpKSk/bi5CNygpOm51bGx9OwprRj1mdW5jdGlvbihuKXt2YXIgVz1RTShuLmFwcC5HKCkpLEQ9bi5hcHAuZ2V0VmlkZW9EYXRhKCk/Lk1kO249djcobi5hcHApO3JldHVybiBMeShXKSYmIUR8fG4/ITE6ITB9OwpoZj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIHR5cGVvZiBuPT09Im51bWJlciI/e3BsYXllclR5cGU6bix2bzpXLGNwbjpEfTpufHx7fX07CmMxQz1mdW5jdGlvbihuKXt2YXIgVz1uLnJhd19wbGF5ZXJfcmVzcG9uc2U7aWYoIVcpe3ZhciBEPW4ucGxheWVyX3Jlc3BvbnNlO0QmJihXPUpTT04ucGFyc2UoRCkpfWRlbGV0ZSBuLnBsYXllcl9yZXNwb25zZTtkZWxldGUgbi5yYXdfcGxheWVyX3Jlc3BvbnNlO1cmJihuLnJhd19wbGF5ZXJfcmVzcG9uc2U9e3N0cmVhbWluZ0RhdGE6Vy5zdHJlYW1pbmdEYXRhLHBsYXllckNvbmZpZzpXLnBsYXllckNvbmZpZ30sVy5wbGF5YmFja1RyYWNraW5nPy5xb2VVcmwmJihuLnJhd19wbGF5ZXJfcmVzcG9uc2U9ey4uLm4ucmF3X3BsYXllcl9yZXNwb25zZSxwbGF5YmFja1RyYWNraW5nOntxb2VVcmw6Vy5wbGF5YmFja1RyYWNraW5nLnFvZVVybH19KSxXLmNhcHRpb25zJiYobi5yYXdfcGxheWVyX3Jlc3BvbnNlPXsuLi5uLnJhd19wbGF5ZXJfcmVzcG9uc2UsY2FwdGlvbnM6Vy5jYXB0aW9uc30pLFcudmlkZW9EZXRhaWxzJiYoVy52aWRlb0RldGFpbHMudmlkZW9JZHx8Vy52aWRlb0RldGFpbHMubGVuZ3RoU2Vjb25kcykmJgooRD17fSxXLnZpZGVvRGV0YWlscy52aWRlb0lkJiYoRC52aWRlb0lkPVcudmlkZW9EZXRhaWxzLnZpZGVvSWQpLFcudmlkZW9EZXRhaWxzLmxlbmd0aFNlY29uZHMmJihELmxlbmd0aFNlY29uZHM9Vy52aWRlb0RldGFpbHMubGVuZ3RoU2Vjb25kcyksbi5yYXdfcGxheWVyX3Jlc3BvbnNlPXsuLi5uLnJhd19wbGF5ZXJfcmVzcG9uc2UsdmlkZW9EZXRhaWxzOkR9KSl9Owp4Rj1mdW5jdGlvbihuLFcpe3ZhciBEPXt9O2lmKG4uYXBwLkcoKS5PKXtmb3IobGV0IGIgb2YgYWF4KVcuaGFzT3duUHJvcGVydHkoYikmJihEW2JdPVdbYl0pO2lmKG49RC5xb2VfY2F0KVc9IiIsdHlwZW9mIG49PT0ic3RyaW5nIiYmbi5sZW5ndGg+MCYmKFc9bi5zcGxpdCgiLCIpLmZpbHRlcihiPT5udDIuaW5jbHVkZXMoYikpLmpvaW4oIiwiKSksRC5xb2VfY2F0PVc7CmMxQyhEKX1lbHNlIGZvcihsZXQgYiBvZiBXYXcpVy5oYXNPd25Qcm9wZXJ0eShiKSYmKERbYl09V1tiXSk7cmV0dXJuIER9OwpMMj1mdW5jdGlvbihuKXtyZXR1cm4gbj9Ed1Vbbl18fDU6NX07CmVCPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIG9mIE9iamVjdC5rZXlzKFcpKXtsZXQgYj1XW0RdO249bi5yZXBsYWNlKG5ldyBSZWdFeHAoIlxcJCIrRCwiZ2kiKSwoKT0+Yil9cmV0dXJuIG59OwpiX0M9ZnVuY3Rpb24obil7QlQobiwiZ2V0SW50ZXJuYWxBcGlJbnRlcmZhY2UiLG4uZ2V0SW50ZXJuYWxBcGlJbnRlcmZhY2UpO0JUKG4sImdldFRydXN0ZWRBcGkiLG4uZ2V0VHJ1c3RlZEFwaSk7QlQobiwiYWRkRXZlbnRMaXN0ZW5lciIsbi5EKTtCVChuLCJyZW1vdmVFdmVudExpc3RlbmVyIixuLlRRKTtCVChuLCJjdWVWaWRlb0J5UGxheWVyVmFycyIsbi50dyk7QlQobiwibG9hZFZpZGVvQnlQbGF5ZXJWYXJzIixuLkU1KTtCVChuLCJwcmVsb2FkVmlkZW9CeVBsYXllclZhcnMiLG4uWmgpO0JUKG4sImdldEFkU3RhdGUiLG4uZ2V0QWRTdGF0ZSk7QlQobiwic2VuZEFiYW5kb25tZW50UGluZyIsbi5zZW5kQWJhbmRvbm1lbnRQaW5nKTtCVChuLCJzZXRMb29wUmFuZ2UiLG4uc2V0TG9vcFJhbmdlKTtCVChuLCJnZXRMb29wUmFuZ2UiLG4uZ2V0TG9vcFJhbmdlKTtCVChuLCJzZXRBdXRvbmF2U3RhdGUiLG4uc2V0QXV0b25hdlN0YXRlKTtCVChuLCJzZWVrVG8iLG4uYk4pO0JUKG4sCiJzZWVrQnkiLG4uc1YpO0JUKG4sInNlZWtUb0xpdmVIZWFkIixuLnNlZWtUb0xpdmVIZWFkKTtCVChuLCJyZXF1ZXN0U2Vla1RvV2FsbFRpbWVTZWNvbmRzIixuLnJlcXVlc3RTZWVrVG9XYWxsVGltZVNlY29uZHMpO0JUKG4sInNlZWtUb1N0cmVhbVRpbWUiLG4uc2Vla1RvU3RyZWFtVGltZSk7QlQobiwic3RhcnRTZWVrQ3NpQWN0aW9uIixuLnN0YXJ0U2Vla0NzaUFjdGlvbik7QlQobiwiZ2V0U3RyZWFtVGltZU9mZnNldCIsbi5nZXRTdHJlYW1UaW1lT2Zmc2V0KTtCVChuLCJnZXRWaWRlb0RhdGEiLG4uZkIpO0JUKG4sImdldEFwcFN0YXRlIixuLmdldEFwcFN0YXRlKTtCVChuLCJ1cGRhdGVMYXN0QWN0aXZlVGltZSIsbi51cGRhdGVMYXN0QWN0aXZlVGltZSk7QlQobiwic2V0VXNlckVuZ2FnZW1lbnQiLG4uc2V0VXNlckVuZ2FnZW1lbnQpO0JUKG4sInVwZGF0ZVN1YnRpdGxlc1VzZXJTZXR0aW5ncyIsbi51cGRhdGVTdWJ0aXRsZXNVc2VyU2V0dGluZ3MpO0JUKG4sImdldFByZXNlbnRpbmdQbGF5ZXJUeXBlIiwKbi5XKTtCVChuLCJjYW5QbGF5VHlwZSIsbi5jYW5QbGF5VHlwZSk7QlQobiwidXBkYXRlUGxheWxpc3QiLG4udXBkYXRlUGxheWxpc3QpO0JUKG4sInVwZGF0ZVZpZGVvRGF0YSIsbi51cGRhdGVWaWRlb0RhdGEpO0JUKG4sInVwZGF0ZUVudmlyb25tZW50RGF0YSIsbi51cGRhdGVFbnZpcm9ubWVudERhdGEpO0JUKG4sInNlbmRWaWRlb1N0YXRzRW5nYWdlRXZlbnQiLG4uWXIpO0JUKG4sInNldFNhZmV0eU1vZGUiLG4uc2V0U2FmZXR5TW9kZSk7QlQobiwiaXNBdExpdmVIZWFkIixXPT5uLmlzQXRMaXZlSGVhZCh2b2lkIDAsVykpOwpCVChuLCJnZXRWaWRlb0FzcGVjdFJhdGlvIixuLmdldFZpZGVvQXNwZWN0UmF0aW8pO0JUKG4sImdldFByZWZlcnJlZFF1YWxpdHkiLG4uZ2V0UHJlZmVycmVkUXVhbGl0eSk7QlQobiwiZ2V0UGxheWJhY2tRdWFsaXR5TGFiZWwiLG4uZ2V0UGxheWJhY2tRdWFsaXR5TGFiZWwpO0JUKG4sInNldFBsYXliYWNrUXVhbGl0eVJhbmdlIixuLldpKTtCVChuLCJvbkFkVXhDbGlja2VkIixuLm9uQWRVeENsaWNrZWQpO0JUKG4sImdldEZlZWRiYWNrUHJvZHVjdERhdGEiLG4uZ2V0RmVlZGJhY2tQcm9kdWN0RGF0YSk7QlQobiwiZ2V0U3Rvcnlib2FyZEZyYW1lIixuLmdldFN0b3J5Ym9hcmRGcmFtZSk7QlQobiwiZ2V0U3Rvcnlib2FyZEZyYW1lSW5kZXgiLG4uZ2V0U3Rvcnlib2FyZEZyYW1lSW5kZXgpO0JUKG4sImdldFN0b3J5Ym9hcmRMZXZlbCIsbi5nZXRTdG9yeWJvYXJkTGV2ZWwpO0JUKG4sImdldE51bWJlck9mU3Rvcnlib2FyZExldmVscyIsbi5nZXROdW1iZXJPZlN0b3J5Ym9hcmRMZXZlbHMpOwpCVChuLCJnZXRDYXB0aW9uV2luZG93Q29udGFpbmVySWQiLG4uZ2V0Q2FwdGlvbldpbmRvd0NvbnRhaW5lcklkKTtCVChuLCJnZXRBdmFpbGFibGVRdWFsaXR5TGFiZWxzIixuLmdldEF2YWlsYWJsZVF1YWxpdHlMYWJlbHMpO0JUKG4sImFkZEN1ZVJhbmdlIixuLmFkZEN1ZVJhbmdlKTtCVChuLCJhZGRVdGNDdWVSYW5nZSIsbi5hZGRVdGNDdWVSYW5nZSk7QlQobiwic2hvd0FpcnBsYXlQaWNrZXIiLG4uc2hvd0FpcnBsYXlQaWNrZXIpO0JUKG4sImRpc3BhdGNoUmVkdXhBY3Rpb24iLG4uZGlzcGF0Y2hSZWR1eEFjdGlvbik7QlQobiwiZ2V0UGxheWVyUmVzcG9uc2UiLG4uUFgpO0JUKG4sImdldFdhdGNoTmV4dFJlc3BvbnNlIixuLnZYKTtCVChuLCJnZXRIZWFydGJlYXRSZXNwb25zZSIsbi5GRik7QlQobiwiZ2V0Q3VycmVudFRpbWUiLG4uZSQpO0JUKG4sImdldER1cmF0aW9uIixuLm1aKTtCVChuLCJnZXRQbGF5ZXJTdGF0ZSIsbi5nZXRQbGF5ZXJTdGF0ZSk7QlQobiwiZ2V0UGxheWVyU3RhdGVPYmplY3QiLApuLkN1KTtCVChuLCJnZXRWaWRlb0xvYWRlZEZyYWN0aW9uIixuLmdldFZpZGVvTG9hZGVkRnJhY3Rpb24pO0JUKG4sImdldFByb2dyZXNzU3RhdGUiLG4uZ2V0UHJvZ3Jlc3NTdGF0ZSk7QlQobiwiZ2V0Vm9sdW1lIixuLmdldFZvbHVtZSk7QlQobiwic2V0Vm9sdW1lIixuLmtGKTtCVChuLCJpc011dGVkIixuLmlzTXV0ZWQpO0JUKG4sIm11dGUiLG4uZ0cpO0JUKG4sInVuTXV0ZSIsbi5sbSk7QlQobiwibG9hZE1vZHVsZSIsbi5sb2FkTW9kdWxlKTtCVChuLCJ1bmxvYWRNb2R1bGUiLG4udW5sb2FkTW9kdWxlKTtCVChuLCJnZXRPcHRpb24iLG4uanUpO0JUKG4sImdldE9wdGlvbnMiLG4uZ2V0T3B0aW9ucyk7QlQobiwic2V0T3B0aW9uIixuLnNldE9wdGlvbik7QlQobiwibG9hZFZpZGVvQnlJZCIsbi5ydyk7QlQobiwibG9hZFZpZGVvQnlVcmwiLG4uSzApO0JUKG4sInBsYXlWaWRlbyIsbi5VRyk7QlQobiwic3RvcFZpZGVvIixuLkspO0JUKG4sImxvYWRQbGF5bGlzdCIsbi5sb2FkUGxheWxpc3QpOwpCVChuLCJuZXh0VmlkZW8iLG4ubmV4dFZpZGVvKTtCVChuLCJwcmV2aW91c1ZpZGVvIixuLnByZXZpb3VzVmlkZW8pO0JUKG4sInBsYXlWaWRlb0F0IixuLnBsYXlWaWRlb0F0KTtCVChuLCJnZXREZWJ1Z1RleHQiLG4uZ2V0RGVidWdUZXh0KTtCVChuLCJnZXRXZWJQbGF5ZXJDb250ZXh0Q29uZmlnIixuLmdldFdlYlBsYXllckNvbnRleHRDb25maWcpO0JUKG4sImdldFZpZGVvQ29udGVudFJlY3QiLG4uZ2V0VmlkZW9Db250ZW50UmVjdCk7QlQobiwidG9nZ2xlU3VidGl0bGVzT24iLG4udG9nZ2xlU3VidGl0bGVzT24pO0JUKG4sImlzU3VidGl0bGVzT24iLG4uaXNTdWJ0aXRsZXNPbik7QlQobiwiZ2V0QXVkaW9UcmFjayIsbi5UQyk7QlQobiwic2V0QXVkaW9UcmFjayIsbi5zeik7QlQobiwiZ2V0QXZhaWxhYmxlQXVkaW9UcmFja3MiLG4uUyQpO0JUKG4sImlzT3JjaGVzdHJhdGlvbkxlYWRlciIsbi5pc09yY2hlc3RyYXRpb25MZWFkZXIpO0JUKG4sIm5vdGlmeVNob3J0c0FkU3dpcGVFdmVudCIsCm4ubm90aWZ5U2hvcnRzQWRTd2lwZUV2ZW50KTtCVChuLCJwcmVmZXRjaEtleVBsYXkiLG4ucHJlZmV0Y2hLZXlQbGF5KTtCVChuLCJwcmVmZXRjaEp1bXBBaGVhZCIsbi5wcmVmZXRjaEp1bXBBaGVhZCk7QlQobiwicHJvZHVjdHNJblZpZGVvVmlzaWJpbGl0eVVwZGF0ZWQiLG4ucHJvZHVjdHNJblZpZGVvVmlzaWJpbGl0eVVwZGF0ZWQpO0JUKG4sInNldEJsYWNrb3V0IixuLnNldEJsYWNrb3V0KTtCVChuLCJzZXRJbmxpbmVQcmV2aWV3IixuLnNldElubGluZVByZXZpZXcpO0JUKG4sInNldFNxdWVlemViYWNrIixuLnNldFNxdWVlemViYWNrKTtCVChuLCJyZXBvcnRQbGF5YmFja0lzc3VlIixuLnJlcG9ydFBsYXliYWNrSXNzdWUpO0JUKG4sInNldEF1dG9uYXYiLG4uc2V0QXV0b25hdik7QlQobiwiaXNOb3RTZXJ2YWJsZSIsbi5pc05vdFNlcnZhYmxlKTtCVChuLCJjaGFubmVsU3Vic2NyaWJlZCIsbi5jaGFubmVsU3Vic2NyaWJlZCk7QlQobiwiY2hhbm5lbFVuc3Vic2NyaWJlZCIsCm4uY2hhbm5lbFVuc3Vic2NyaWJlZCk7QlQobiwidG9nZ2xlUGljdHVyZUluUGljdHVyZSIsbi50b2dnbGVQaWN0dXJlSW5QaWN0dXJlKTtCVChuLCJzdXBwb3J0c0dhcGxlc3NBdWRpbyIsbi5zdXBwb3J0c0dhcGxlc3NBdWRpbyk7QlQobiwic3VwcG9ydHNHYXBsZXNzU2hvcnRzIixuLnN1cHBvcnRzR2FwbGVzc1Nob3J0cyk7QlQobiwiaXNHYXBsZXNzVHJhbnNpdGlvblJlYWR5IixuLmlzR2FwbGVzc1RyYW5zaXRpb25SZWFkeSk7QlQobiwic2V0U2hvcnRzQXV0b0FkdmFuY2VkRW5hYmxlZCIsbi5zZXRTaG9ydHNBdXRvQWR2YW5jZWRFbmFibGVkKTtCVChuLCJlbnF1ZXVlVmlkZW9CeVBsYXllclZhcnMiLFc9PnZvaWQgbi5lbnF1ZXVlVmlkZW9CeVBsYXllclZhcnMoVykpOwpCVChuLCJjbGVhclF1ZXVlIixuLmNsZWFyUXVldWUpO0JUKG4sImdldE1heFBsYXliYWNrUXVhbGl0eSIsbi5nZXRNYXhQbGF5YmFja1F1YWxpdHkpO0JUKG4sImdldFVzZXJQbGF5YmFja1F1YWxpdHlQcmVmZXJlbmNlIixuLmdldFVzZXJQbGF5YmFja1F1YWxpdHlQcmVmZXJlbmNlKTtCVChuLCJnZXRTdWJ0aXRsZXNVc2VyU2V0dGluZ3MiLG4uZ2V0U3VidGl0bGVzVXNlclNldHRpbmdzKTtCVChuLCJyZXNldFN1YnRpdGxlc1VzZXJTZXR0aW5ncyIsbi5yZXNldFN1YnRpdGxlc1VzZXJTZXR0aW5ncyk7QlQobiwic2V0TWluaW1pemVkIixuLnNldE1pbmltaXplZCk7QlQobiwic2V0T3ZlcmxheVZpc2liaWxpdHkiLG4uc2V0T3ZlcmxheVZpc2liaWxpdHkpO0JUKG4sImNvbmZpcm1ZcGNSZW50YWwiLG4uY29uZmlybVlwY1JlbnRhbCk7QlQobiwicXVldWVOZXh0VmlkZW8iLG4ucXVldWVOZXh0VmlkZW8pO0JUKG4sImhhbmRsZUV4dGVybmFsQ2FsbCIsbi5oYW5kbGVFeHRlcm5hbENhbGwpOwpCVChuLCJsb2dBcGlDYWxsIixuLmxvZ0FwaUNhbGwpO0JUKG4sImlzRXh0ZXJuYWxNZXRob2RBdmFpbGFibGUiLG4uaXNFeHRlcm5hbE1ldGhvZEF2YWlsYWJsZSk7QlQobiwic2V0U2NyZWVuTGF5ZXIiLG4uc2V0U2NyZWVuTGF5ZXIpO0JUKG4sImdldEN1cnJlbnRQbGF5bGlzdFNlcXVlbmNlIixuLmdldEN1cnJlbnRQbGF5bGlzdFNlcXVlbmNlKTtCVChuLCJnZXRQbGF5bGlzdFNlcXVlbmNlRm9yVGltZSIsbi5nZXRQbGF5bGlzdFNlcXVlbmNlRm9yVGltZSk7QlQobiwic2hvdWxkU2VuZFZpc2liaWxpdHlTdGF0ZSIsbi5zaG91bGRTZW5kVmlzaWJpbGl0eVN0YXRlKTtCVChuLCJzeW5jVm9sdW1lIixuLnN5bmNWb2x1bWUpO0JUKG4sImhpZ2hsaWdodFNldHRpbmdzTWVudUl0ZW0iLG4uaGlnaGxpZ2h0U2V0dGluZ3NNZW51SXRlbSk7QlQobiwib3BlblNldHRpbmdzTWVudUl0ZW0iLG4ub3BlblNldHRpbmdzTWVudUl0ZW0pO0JUKG4sImdldEVtYmVkZGVkUGxheWVyUmVzcG9uc2UiLApuLmdldEVtYmVkZGVkUGxheWVyUmVzcG9uc2UpO0JUKG4sImdldFZpc2liaWxpdHlTdGF0ZSIsbi5nZXRWaXNpYmlsaXR5U3RhdGUpO0JUKG4sImlzTXV0ZWRCeU11dGVkQXV0b3BsYXkiLG4uaXNNdXRlZEJ5TXV0ZWRBdXRvcGxheSk7QlQobiwiaXNNdXRlZEJ5RW1iZWRzTXV0ZWRBdXRvcGxheSIsbi5pc011dGVkQnlFbWJlZHNNdXRlZEF1dG9wbGF5KTtCVChuLCJzZXRHbG9iYWxDcm9wIixuLnNldEdsb2JhbENyb3ApO0JUKG4sInNldEludGVybmFsU2l6ZSIsbi5zZXRJbnRlcm5hbFNpemUpO0JUKG4sInNldEZhdXhGdWxsc2NyZWVuIixuLnNldEZhdXhGdWxsc2NyZWVuKTtCVChuLCJzZXRBcHBGdWxsc2NyZWVuIixuLnNldEFwcEZ1bGxzY3JlZW4pO0JUKG4sImlzS2V5Ym9hcmREaXNhYmxlZCIsbi5pc0tleWJvYXJkRGlzYWJsZWQpO0JUKG4sImdldEN1cnJlbnRUaW1lRm9yVXgiLG4uZ2V0Q3VycmVudFRpbWVGb3JVeCk7QlQobiwiZ2V0RHVyYXRpb25Gb3JVeCIsbi5nZXREdXJhdGlvbkZvclV4KX07Cmd2PWZ1bmN0aW9uKG4pe24uZ2V0UHJlc2VudGluZ1BsYXllclR5cGUoKT09PTM/bi5XSigibWR4YXV0b3BsYXljYW5jZWwiKTpnLlJUKG4sIm9uQXV0b25hdkNhbmNlbGxlZCIsITApfTsKWHo9ZnVuY3Rpb24obil7bj1uLko1KCkuTmkuZ2V0KCJlbmRzY3JlZW4iKTtyZXR1cm4hIW4mJlh6KG4pfTsKcXA9ZnVuY3Rpb24obil7bj1uLko1KCk7dmFyIFc9bi5OaS5nZXQoImVuZHNjcmVlbiIpO3JldHVybiBXJiZXLlhjKCk/ITA6bi5JVigpfTsKdGY9ZnVuY3Rpb24obil7dmFyIFc9R3Uobi5KNSgpKTtyZXR1cm4gbi5hcHAuWlYmJiFuLmlzRnVsbHNjcmVlbigpfHxuLmdldFByZXNlbnRpbmdQbGF5ZXJUeXBlKCk9PT0zJiZXJiZXLmhhc05leHQoKSYmVy5oYXNQcmV2aW91cygpfHwhIW4uZ2V0UGxheWxpc3QoKX07CmcuZno9ZnVuY3Rpb24obil7cmV0dXJuKG49Zy4kRihuLko1KCkpKT9uLkhwKCk6e319OwpnLnJ2PWZ1bmN0aW9uKG4sVyxEKXtuPW4ubGooKS5lbGVtZW50O3ZhciBiPURlKG4uY2hpbGRyZW4sdj0+e3Y9TnVtYmVyKHYuZ2V0QXR0cmlidXRlKCJkYXRhLWxheWVyIikpO3JldHVybiBELXZ8fDF9KTsKYjwwJiYoYj0tKGIrMSkpO2cuanAobixXLGIpO1cuc2V0QXR0cmlidXRlKCJkYXRhLWxheWVyIixTdHJpbmcoRCkpfTsKdnRDPWZ1bmN0aW9uKG4sVyl7bj1zRihuLmFwcC5Wci5YKTtmb3IobGV0IEQgb2Ygbil7bj1ELmdldEF2YWlsYWJsZUF1ZGlvVHJhY2tzKCk7bGV0IGI9bnVsbDtmb3IobGV0IHYgb2YgbilpZih2LmdldExhbmd1YWdlSW5mbygpLmdldElkKCk9PT1XKXtiPXY7YnJlYWt9YiYmRC5MeShiLCEwKX19OwpnLnAyPWZ1bmN0aW9uKCl7TnB8fChOcD1uZXcga0t4KTtyZXR1cm4gTnB9OwpnLllGPWZ1bmN0aW9uKG4sVyl7Vz9uLlpKLkF1dGhvcml6YXRpb249YEJlYXJlciAke1d9YDpkZWxldGUgbi5aSi5BdXRob3JpemF0aW9ufTsKaHh3PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9KC4uLmIpPT57bi5yZW1vdmVFdmVudExpc3RlbmVyKCJwbGF5aW5nIixEKTtXKC4uLmIpfTsKbi5hZGRFdmVudExpc3RlbmVyKCJwbGF5aW5nIixEKX07CmcuSDc9ZnVuY3Rpb24obil7dmFyIFc9TWF0aC5hYnMoTWF0aC5mbG9vcihuKSksRD1NYXRoLmZsb29yKFcvODY0MDApLGI9TWF0aC5mbG9vcihXJTg2NDAwLzM2MDApLHY9TWF0aC5mbG9vcihXJTM2MDAvNjApO1c9TWF0aC5mbG9vcihXJTYwKTt2YXIgaz0iIjtEPjAmJihrKz1gJHtEfTpgLGI8MTAmJihrKz0iMCIpKTtpZihEPjB8fGI+MClrKz1gJHtifTpgLHY8MTAmJihrKz0iMCIpO2srPWAke3Z9OmA7VzwxMCYmKGsrPSIwIik7RD1rK1c7cmV0dXJuIG4+PTA/RDpgLSR7RH1gfTsKZjI9ZnVuY3Rpb24obil7cmV0dXJuKCEoImJ1dHRvbiJpbiBuKXx8dHlwZW9mIG4uYnV0dG9uIT09Im51bWJlciJ8fG4uYnV0dG9uPT09MCkmJiEoInNoaWZ0S2V5ImluIG4mJm4uc2hpZnRLZXkpJiYhKCJhbHRLZXkiaW4gbiYmbi5hbHRLZXkpJiYhKCJtZXRhS2V5ImluIG4mJm4ubWV0YUtleSkmJiEoImN0cmxLZXkiaW4gbiYmbi5jdHJsS2V5KX07CkpmPWZ1bmN0aW9uKG4sVyxELGIpe2lmKGIuc3Vic3RyaW5nKDAsMik9PT0ie3siKW4uWVpbYl09W1csRF07ZWxzZSByZXR1cm4gYn07Ckl5PWZ1bmN0aW9uKG4sVyxELGIpe2lmKEQ9PT0iY2hpbGQiKXtnLlRGKFcpO2xldCBrO2I9PT12b2lkIDA/az12b2lkIDA6az0hQXJyYXkuaXNBcnJheShiKXx8YiYmdHlwZW9mIGIuWj09PSJzdHJpbmciP1tiXTpiO0Q9eHcyKG4sayk7Zm9yKHZhciB2IG9mIEQpVy5hcHBlbmRDaGlsZCh2KX1lbHNlIEQ9PT0ic3R5bGUiP2cuaDEoVywiY3NzVGV4dCIsYj9iOiIiKTpiPT09bnVsbHx8Yj09PXZvaWQgMD9XLnJlbW92ZUF0dHJpYnV0ZShEKToodj1iLnRvU3RyaW5nKCksRD09PSJocmVmIiYmKHY9Z3ooZy50Rih2LGcuRzQpfHxnLlY1KSksVy5zZXRBdHRyaWJ1dGUoRCx2KSl9Owp4dzI9ZnVuY3Rpb24obixXKXt2YXIgRD1bXTtpZighVylyZXR1cm4gRDtmb3IobGV0IGIgb2YgVyl7aWYoYj09bnVsbCljb250aW51ZTtXPWIubm9kZVR5cGU7Vz09PTF8fFc9PT0zP0QucHVzaChiKTpiJiZ0eXBlb2YgYi5aPT09InN0cmluZyI/RC5wdXNoKG4uY3JlYXRlRWxlbWVudChiKSk6Yi5lbGVtZW50P0QucHVzaChiLmVsZW1lbnQpOnR5cGVvZiBiPT09InN0cmluZyImJmIuaW5kZXhPZigiXG4iKSE9PS0xP2Iuc3BsaXQoIlxuIikuZm9yRWFjaCgodixrKT0+e2s+MCYmRC5wdXNoKGcuekYoIkJSIikpO0QucHVzaChnLmxrKHYpKX0pOkQucHVzaChnLmxrKGIpKX1yZXR1cm4gRH07ClNCPWZ1bmN0aW9uKG4sVyl7bj1uLmVsZW1lbnQuZWxlbWVudDtXP24uc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsInRydWUiKTpuLnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1oaWRkZW4iKX07CkFmPWZ1bmN0aW9uKG4pe3JldHVybiBuLkomJm4uZmFkZS5zdGF0ZSE9PTR9OwptUD1mdW5jdGlvbihuKXtuLnNvdXJjZUVsZW1lbnQmJihkb2N1bWVudC5hY3RpdmVFbGVtZW50JiZnLkJ4KG4uZWxlbWVudCxkb2N1bWVudC5hY3RpdmVFbGVtZW50KSYmbi5zb3VyY2VFbGVtZW50LmZvY3VzKCksbi5zb3VyY2VFbGVtZW50LnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsImZhbHNlIiksbi5zb3VyY2VFbGVtZW50PXZvaWQgMCk7bi5OLkooKTtuLlc9dm9pZCAwfTsKZy5LMj1mdW5jdGlvbigpe3JldHVybntaOiJzdmciLHhhOntoZWlnaHQ6IjEwMCUiLHZlcnNpb246IjEuMSIsdmlld0JveDoiMCAwIDMyIDMyIix3aWR0aDoiMTAwJSJ9LFhGOlt7WjoicGF0aCIseGE6e2Q6Ik0gMTkuNDEsMjAuMDkgMTQuODMsMTUuNSAxOS40MSwxMC45MSAxOCw5LjUgbCAtNiw2IDYsNiB6IixmaWxsOiIjZmZmIn19XX19OwpnLk9GPWZ1bmN0aW9uKCl7cmV0dXJue1o6InN2ZyIseGE6e2hlaWdodDoiMTAwJSIsdmVyc2lvbjoiMS4xIix2aWV3Qm94OiIwIDAgMzIgMzIiLHdpZHRoOiIxMDAlIn0sWEY6W3taOiJwYXRoIix4YTp7ZDoibSAxMi41OSwyMC4zNCA0LjU4LC00LjU5IC00LjU4LC00LjU5IDEuNDEsLTEuNDEgNiw2IC02LDYgeiIsZmlsbDoiI2ZmZiJ9fV19fTsKZy5QNz1mdW5jdGlvbigpe3JldHVybntaOiJzdmciLHhhOntoZWlnaHQ6IjEwMCUiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjEwMCUifSxYRjpbe1o6InBhdGgiLHhhOntkOiJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIsZmlsbDoiI2ZmZiJ9fV19fTsKWiQ9ZnVuY3Rpb24oKXtyZXR1cm57Wjoic3ZnIix4YTp7aGVpZ2h0OiIxMDAlIix2ZXJzaW9uOiIxLjEiLHZpZXdCb3g6IjAgMCAxMTAgMjYiLHdpZHRoOiIxMDAlIn0sWEY6W3taOiJwYXRoIixLeTohMCxKdzoieXRwLXN2Zy1maWxsIix4YTp7ZDoiTSAxNi42OCwuOTkgQyAxMy41NSwxLjAzIDcuMDIsMS4xNiA0Ljk5LDEuNjggYyAtMS40OSwuNCAtMi41OSwxLjYgLTIuOTksMyAtMC42OSwyLjcgLTAuNjgsOC4zMSAtMC42OCw4LjMxIDAsMCAtMC4wMSw1LjYxIC42OCw4LjMxIC4zOSwxLjUgMS41OSwyLjYgMi45OSwzIDIuNjksLjcgMTMuNDAsLjY4IDEzLjQwLC42OCAwLDAgMTAuNzAsLjAxIDEzLjQwLC0wLjY4IDEuNSwtMC40IDIuNTksLTEuNiAyLjk5LC0zIC42OSwtMi43IC42OCwtOC4zMSAuNjgsLTguMzEgMCwwIC4xMSwtNS42MSAtMC42OCwtOC4zMSAtMC40LC0xLjUgLTEuNTksLTIuNiAtMi45OSwtMyBDIDI5LjExLC45OCAxOC40MCwuOTkgMTguNDAsLjk5IGMgMCwwIC0wLjY3LC0wLjAxIC0xLjcxLDAgeiBtIDcyLjIxLC45MCAwLDIxLjI4IDIuNzgsMCAuMzEsLTEuMzcgLjA5LDAgYyAuMywuNSAuNzEsLjg4IDEuMjEsMS4xOCAuNSwuMyAxLjA4LC40MCAxLjY4LC40MCAxLjEsMCAxLjk5LC0wLjQ5IDIuNDksLTEuNTkgLjUsLTEuMSAuODEsLTIuNzAgLjgxLC00LjkwIGwgMCwtMi40MCBjIDAsLTEuNiAtMC4xMSwtMi45MCAtMC4zMSwtMy45MCAtMC4yLC0wLjg5IC0wLjUsLTEuNTkgLTEsLTIuMDkgLTAuNSwtMC40IC0xLjEwLC0wLjU5IC0xLjkwLC0wLjU5IC0wLjU5LDAgLTEuMTgsLjE5IC0xLjY4LC40OSAtMC40OSwuMyAtMS4wMSwuODAgLTEuMjEsMS40MCBsIDAsLTcuOTAgLTMuMjgsMCB6IG0gLTQ5Ljk5LC43OCAzLjkwLDEzLjkwIC4xOCw2LjcxIDMuMzEsMCAwLC02LjcxIDMuODcsLTEzLjkwIC0zLjM3LDAgLTEuNDAsNi4zMSBjIC0wLjQsMS44OSAtMC43MSwzLjE5IC0wLjgxLDMuOTkgbCAtMC4wOSwwIGMgLTAuMiwtMS4xIC0wLjUxLC0yLjQgLTAuODEsLTMuOTkgbCAtMS4zNywtNi4zMSAtMy40MCwwIHogbSAyOS41OSwwIDAsMi43MSAzLjQwLDAgMCwxNy45MCAzLjI4LDAgMCwtMTcuOTAgMy40MCwwIGMgMCwwIC4wMCwtMi43MSAtMC4wOSwtMi43MSBsIC05Ljk5LDAgeiBtIC01My40OSw1LjEyIDguOTAsNS4xOCAtOC45MCw1LjA5IDAsLTEwLjI4IHogbSA4OS40MCwuMDkgYyAtMS43LDAgLTIuODksLjU5IC0zLjU5LDEuNTkgLTAuNjksLjk5IC0wLjk5LDIuNjAgLTAuOTksNC45MCBsIDAsMi41OSBjIDAsMi4yIC4zMCwzLjkwIC45OSw0LjkwIC43LDEuMSAxLjgsMS41OSAzLjUsMS41OSAxLjQsMCAyLjM4LC0wLjMgMy4xOCwtMSAuNywtMC43IDEuMDksLTEuNjkgMS4wOSwtMy4wOSBsIDAsLTAuNSAtMi45MCwtMC4yMSBjIDAsMSAtMC4wOCwxLjYgLTAuMjgsMiAtMC4xLC40IC0wLjUsLjYyIC0xLC42MiAtMC4zLDAgLTAuNjEsLTAuMTEgLTAuODEsLTAuMzEgLTAuMiwtMC4zIC0wLjMwLC0wLjU5IC0wLjQwLC0xLjA5IC0wLjEsLTAuNSAtMC4wOSwtMS4yMSAtMC4wOSwtMi4yMSBsIDAsLTAuNzggNS43MSwtMC4wOSAwLC0yLjYyIGMgMCwtMS42IC0wLjEwLC0yLjc4IC0wLjQwLC0zLjY4IC0wLjIsLTAuODkgLTAuNzEsLTEuNTkgLTEuMzEsLTEuOTkgLTAuNywtMC40IC0xLjQ4LC0wLjU5IC0yLjY4LC0wLjU5IHogbSAtNTAuNDksLjA5IGMgLTEuMDksMCAtMi4wMSwuMTggLTIuNzEsLjY4IC0wLjcsLjQgLTEuMiwxLjEyIC0xLjQ5LDIuMTIgLTAuMywxIC0wLjUsMi4yNyAtMC41LDMuODcgbCAwLDIuMjEgYyAwLDEuNSAuMTAsMi43OCAuNDAsMy43OCAuMiwuOSAuNzAsMS42MiAxLjQwLDIuMTIgLjY5LC41IDEuNzEsLjY4IDIuODEsLjc4IDEuMTksMCAyLjA4LC0wLjI4IDIuNzgsLTAuNjggLjY5LC0wLjQgMS4wOSwtMS4wOSAxLjQ5LC0yLjA5IC4zOSwtMSAuNDksLTIuMzAgLjQ5LC0zLjkwIGwgMCwtMi4yMSBjIDAsLTEuNiAtMC4yLC0yLjg3IC0wLjQ5LC0zLjg3IC0wLjMsLTAuODkgLTAuOCwtMS42MiAtMS40OSwtMi4xMiAtMC43LC0wLjUgLTEuNTgsLTAuNjggLTIuNjgsLTAuNjggeiBtIDEyLjE4LC4wOSAwLDExLjkwIGMgLTAuMSwuMyAtMC4yOSwuNDggLTAuNTksLjY4IC0wLjIsLjIgLTAuNTEsLjMxIC0wLjgxLC4zMSAtMC4zLDAgLTAuNTgsLTAuMTAgLTAuNjgsLTAuNDAgLTAuMSwtMC4zIC0wLjE4LC0wLjcwIC0wLjE4LC0xLjQwIGwgMCwtMTAuOTkgLTMuNDAsMCAwLDExLjIxIGMgMCwxLjQgLjE4LDIuMzkgLjY4LDMuMDkgLjQ5LC43IDEuMjEsMSAyLjIxLDEgMS40LDAgMi40OCwtMC42OSAzLjE4LC0yLjA5IGwgLjA5LDAgLjMxLDEuNzggMi41OSwwIDAsLTE0Ljk5IGMgMCwwIC0zLjQwLC4wMCAtMy40MCwtMC4wOSB6IG0gMTcuMzEsMCAwLDExLjkwIGMgLTAuMSwuMyAtMC4yOSwuNDggLTAuNTksLjY4IC0wLjIsLjIgLTAuNTEsLjMxIC0wLjgxLC4zMSAtMC4zLDAgLTAuNTgsLTAuMTAgLTAuNjgsLTAuNDAgLTAuMSwtMC4zIC0wLjIxLC0wLjcwIC0wLjIxLC0xLjQwIGwgMCwtMTAuOTkgLTMuNDAsMCAwLDExLjIxIGMgMCwxLjQgLjIxLDIuMzkgLjcxLDMuMDkgLjUsLjcgMS4xOCwxIDIuMTgsMSAxLjM5LDAgMi41MSwtMC42OSAzLjIxLC0yLjA5IGwgLjA5LDAgLjI4LDEuNzggMi42MiwwIDAsLTE0Ljk5IGMgMCwwIC0zLjQwLC4wMCAtMy40MCwtMC4wOSB6IG0gMjAuOTAsMi4wOSBjIC40LDAgLjU4LC4xMSAuNzgsLjMxIC4yLC4zIC4zMCwuNTkgLjQwLDEuMDkgLjEsLjUgLjA5LDEuMjEgLjA5LDIuMjEgbCAwLDEuMDkgLTIuNSwwIDAsLTEuMDkgYyAwLC0xIC0wLjAwLC0xLjcxIC4wOSwtMi4yMSAwLC0wLjQgLjExLC0wLjggLjMxLC0xIC4yLC0wLjMgLjUxLC0wLjQwIC44MSwtMC40MCB6IG0gLTUwLjQ5LC4xMiBjIC41LDAgLjgsLjE4IDEsLjY4IC4xOSwuNSAuMjgsMS4zMCAuMjgsMi40MCBsIDAsNC42OCBjIDAsMS4xIC0wLjA4LDEuOTAgLTAuMjgsMi40MCAtMC4yLC41IC0wLjUsLjY4IC0xLC42OCAtMC41LDAgLTAuNzksLTAuMTggLTAuOTksLTAuNjggLTAuMiwtMC41IC0wLjMxLC0xLjMwIC0wLjMxLC0yLjQwIGwgMCwtNC42OCBjIDAsLTEuMSAuMTEsLTEuOTAgLjMxLC0yLjQwIC4yLC0wLjUgLjQ5LC0wLjY4IC45OSwtMC42OCB6IG0gMzkuNjgsLjA5IGMgLjMsMCAuNjEsLjEwIC44MSwuNDAgLjIsLjMgLjI3LC42NyAuMzcsMS4zNyAuMSwuNiAuMTIsMS41MSAuMTIsMi43MSBsIC4wOSwxLjkwIGMgMCwxLjEgLjAwLDEuOTkgLTAuMDksMi41OSAtMC4xLC42IC0wLjE5LDEuMDggLTAuNDksMS4yOCAtMC4yLC4zIC0wLjUwLC40MCAtMC45MCwuNDAgLTAuMywwIC0wLjUxLC0wLjA4IC0wLjgxLC0wLjE4IC0wLjIsLTAuMSAtMC4zOSwtMC4yOSAtMC41OSwtMC41OSBsIDAsLTguNSBjIC4xLC0wLjQgLjI5LC0wLjcgLjU5LC0xIC4zLC0wLjMgLjYwLC0wLjQwIC45MCwtMC40MCB6In19XX19OwpVRj1mdW5jdGlvbigpe3JldHVybntaOiJzdmciLHhhOntmaWxsOiJub25lIixoZWlnaHQ6IjEwMCUiLHZpZXdCb3g6IjAgMCAxNDMgNTEiLHdpZHRoOiIxMDAlIn0sWEY6W3taOiJwYXRoIix4YTp7ZDoiTTU4LjM3IDQxLjM5SDYyLjc5VjI3LjIzQzYyLjc5IDIzLjAzIDYyLjY5IDE4LjY5IDYyLjQzIDEzLjU5SDYyLjkzTDYzLjY5IDE2Ljg5TDY4LjY3IDQxLjM5SDczLjE3TDc4LjA3IDE2Ljg5TDc4Ljg5IDEzLjU5SDc5LjM3Qzc5LjE1IDE4LjQ1IDc5LjAzIDIyLjg5IDc5LjAzIDI3LjIzVjQxLjM5SDgzLjQ1VjguNzlINzUuOTVMNzMuNDEgMjAuODFDNzIuMzUgMjUuODUgNzEuNTEgMzIuMDEgNzEuMDEgMzUuMTlINzAuNzNDNzAuMzMgMzEuOTUgNjkuNDkgMjUuODEgNjguNDEgMjAuODVMNjUuODEgOC43OUg1OC4zN1Y0MS4zOVoiLGZpbGw6IndoaXRlIn19LHtaOiJwYXRoIix4YTp7ZDoiTTkxLjQ1IDQxLjczQzkzLjkxIDQxLjczIDk1LjgzIDQwLjU5IDk3LjE3IDM4LjEzSDk3LjM1TDk3LjY5IDQxLjM5SDEwMS40M1YxNy43M0g5Ni40N1YzNi42MUM5NS45MSAzNy42NyA5NC44MSAzOC4yOSA5My43MyAzOC4yOUM5Mi4zMyAzOC4yOSA5MS44OSAzNy4xNyA5MS44OSAzNS4xM1YxNy43M0g4Ni45M1YzNS40M0M4Ni45MyAzOS40OSA4OC4xOSA0MS43MyA5MS40NSA0MS43M1oiLApmaWxsOiJ3aGl0ZSJ9fSx7WjoicGF0aCIseGE6e2Q6Ik0xMTAuNzkgNDEuODlDMTE1LjE1IDQxLjg5IDExNy43NSAzOS44MyAxMTcuNzUgMzUuNjVDMTE3Ljc1IDMxLjc5IDExNS45MyAzMC4zOSAxMTEuODUgMjcuNDdDMTA5LjY3IDI1LjkxIDEwOC4zOSAyNS4wOSAxMDguMzkgMjIuOTVDMTA4LjM5IDIxLjQ3IDEwOS4yNyAyMC42MSAxMTAuODkgMjAuNjFDMTEyLjY5IDIwLjYxIDExMy4zMyAyMS44MSAxMTMuMzMgMjUuMjlMMTE3LjQ1IDI1LjA3QzExNy43NyAxOS41NyAxMTUuNzEgMTcuMjMgMTEwLjk3IDE3LjIzQzEwNi41NyAxNy4yMyAxMDQuMTcgMTkuMjcgMTA0LjE3IDIzLjQ1QzEwNC4xNyAyNy4yNSAxMDUuOTcgMjguODMgMTA4LjkzIDMxLjAzQzExMS44OSAzMy4yMyAxMTMuNTUgMzQuNTMgMTEzLjU1IDM2LjIzQzExMy41NSAzNy43NSAxMTIuNTEgMzguNjEgMTExLjAxIDM4LjYxQzEwOS4xMyAzOC42MSAxMDguMTEgMzYuOTcgMTA4LjI5IDM0LjQxTDEwNC4yMSAzNC40OUMxMDMuNTEgMzkuMjUgMTA1Ljg5IDQxLjg5IDExMC43OSA0MS44OVoiLApmaWxsOiJ3aGl0ZSJ9fSx7WjoicGF0aCIseGE6e2Q6Ik0xMjIuNSAxNC41OUMxMjQuMjIgMTQuNTkgMTI1LjA0IDEzLjk5IDEyNS4wNCAxMS41OUMxMjUuMDQgOS4zMyAxMjQuMTYgOC42NSAxMjIuNSA4LjY1QzEyMC44NCA4LjY1IDExOS45NCA5LjI3IDExOS45NCAxMS41OUMxMTkuOTQgMTMuOTkgMTIwLjgyIDE0LjU5IDEyMi41IDE0LjU5Wk0xMjAuMiA0MS4zOUgxMjVWMTcuNzNIMTIwLjJWNDEuMzlaIixmaWxsOiJ3aGl0ZSJ9fSx7WjoicGF0aCIseGE6e2Q6Ik0xMzQuOTUgNDEuNzlDMTM3LjMxIDQxLjc5IDEzOC42MyA0MS40OSAxMzkuNzEgNDAuNDdDMTQxLjMxIDM5LjAxIDE0MS45NyAzNi42MyAxNDEuODUgMzMuMTFMMTM3LjQxIDMyLjg3QzEzNy40MSAzNi44NyAxMzYuODEgMzguNDUgMTM1LjAzIDM4LjQ1QzEzMy4xMyAzOC40NSAxMzIuNzcgMzYuNDUgMTMyLjc3IDMxLjk3VjI3LjIxQzEzMi43NyAyMi40MSAxMzMuMjMgMjAuNTEgMTM1LjA3IDIwLjUxQzEzNi42NyAyMC41MSAxMzcuMjkgMjIuMDEgMTM3LjI5IDI2LjQ3TDE0MS42NSAyNi4xNUMxNDEuOTcgMjIuOTMgMTQxLjU5IDIwLjI5IDE0MC4wOSAxOC44M0MxMzkuMDEgMTcuNzcgMTM3LjM3IDE3LjI5IDEzNS4xNSAxNy4yOUMxMjkuNjUgMTcuMjkgMTI3Ljc1IDIwLjczIDEyNy43NSAyOC4wM1YzMS4xN0MxMjcuNzUgMzguNDcgMTI5LjIzIDQxLjc5IDEzNC45NSA0MS43OVoiLApmaWxsOiJ3aGl0ZSJ9fSx7WjoicGF0aCIseGE6eyJjbGlwLXJ1bGUiOiJldmVub2RkIixkOiJNMjQuOTkgNDlDMjkuNzQgNDkuMDAgMzQuMzggNDcuNTkgMzguMzIgNDQuOTVDNDIuMjcgNDIuMzIgNDUuMzUgMzguNTcgNDcuMTcgMzQuMThDNDguOTggMjkuODAgNDkuNDYgMjQuOTcgNDguNTMgMjAuMzJDNDcuNjEgMTUuNjYgNDUuMzIgMTEuMzggNDEuOTcgOC4wM0MzOC42MSA0LjY3IDM0LjMzIDIuMzggMjkuNjggMS40NkMyNS4wMiAuNTMgMjAuMjAgMS4wMSAxNS44MSAyLjgyQzExLjQzIDQuNjQgNy42OCA3LjcxIDUuMDQgMTEuNjZDMi40MCAxNS42MSAxIDIwLjI1IDEgMjVDMC45OSAyOC4xNSAxLjYxIDMxLjI3IDIuODIgMzQuMThDNC4wMyAzNy4wOSA1Ljc5IDM5Ljc0IDguMDIgNDEuOTdDMTAuMjUgNDQuMTkgMTIuODkgNDUuOTYgMTUuODEgNDcuMTdDMTguNzIgNDguMzcgMjEuODQgNDkgMjQuOTkgNDlaTTI0Ljk5IDEyLjM2QzI3LjQ5IDEyLjM2IDI5Ljk0IDEzLjEwIDMyLjAyIDE0LjQ4QzM0LjEwIDE1Ljg3IDM1LjcyIDE3Ljg0IDM2LjY4IDIwLjE1QzM3LjY0IDIyLjQ2IDM3Ljg5IDI1LjAxIDM3LjQxIDI3LjQ2QzM2LjkyIDI5LjkxIDM1LjcyIDMyLjE3IDMzLjk1IDMzLjk0QzMyLjE4IDM1LjcwIDI5LjkzIDM2LjkxIDI3LjQ4IDM3LjQwQzI1LjAyIDM3Ljg5IDIyLjQ4IDM3LjY0IDIwLjE3IDM2LjY4QzE3Ljg2IDM1LjcyIDE1Ljg4IDM0LjEwIDE0LjUwIDMyLjAyQzEzLjExIDI5Ljk0IDEyLjM3IDI3LjUwIDEyLjM3IDI1QzEyLjM3IDIxLjY1IDEzLjcwIDE4LjQ0IDE2LjA3IDE2LjA3QzE4LjQzIDEzLjcwIDIxLjY0IDEyLjM3IDI0Ljk5IDEyLjM2Wk0yNC45OSAxMC40M0MyMi4xMSAxMC40MyAxOS4yOSAxMS4yOCAxNi44OSAxMi44OEMxNC41MCAxNC40OCAxMi42MyAxNi43NiAxMS41MyAxOS40MkMxMC40MiAyMi4wOSAxMC4xMyAyNS4wMiAxMC43MCAyNy44NUMxMS4yNiAzMC42NyAxMi42NSAzMy4yNyAxNC42OSAzNS4zMUMxNi43MyAzNy4zNSAxOS4zMiAzOC43MyAyMi4xNSAzOS4zMEMyNC45OCAzOS44NiAyNy45MSAzOS41NyAzMC41NyAzOC40NkMzMy4yMyAzNy4zNiAzNS41MSAzNS40OSAzNy4xMSAzMy4wOUMzOC43MSAzMC43MCAzOS41NyAyNy44OCAzOS41NiAyNUMzOS41NiAyMy4wOCAzOS4xOSAyMS4xOSAzOC40NiAxOS40MkMzNy43MiAxNy42NSAzNi42NSAxNi4wNCAzNS4zMCAxNC42OUMzMy45NCAxMy4zNCAzMi4zNCAxMi4yNyAzMC41NyAxMS41M0MyOC44MCAxMC44MCAyNi45MCAxMC40MyAyNC45OSAxMC40M1pNMzIuNjMgMjQuOTlMMjAuMzYgMzIuMDlWMTcuOTFMMzIuNjMgMjQuOTlaIiwKZmlsbDoid2hpdGUiLCJmaWxsLXJ1bGUiOiJldmVub2RkIn19XX19Owp5RT1mdW5jdGlvbihuPXt9LFc9W10pe1cucHVzaCgieXRwLW1lbnVpdGVtIik7InJvbGUiaW4gbnx8KG4ucm9sZT0ibWVudWl0ZW0iKTsidGFiaW5kZXgiaW4gbnx8KG4udGFiaW5kZXg9IjAiKTtyZXR1cm57WjoiZGl2IixLQjpXLHhhOm4sWEY6W3taOiJkaXYiLEp3OiJ5dHAtbWVudWl0ZW0taWNvbiIsT3E6Int7aWNvbn19In0se1o6ImRpdiIsSnc6Inl0cC1tZW51aXRlbS1sYWJlbCIsT3E6Int7bGFiZWx9fSJ9LHtaOiJkaXYiLEp3OiJ5dHAtbWVudWl0ZW0tY29udGVudCIsT3E6Int7Y29udGVudH19In1dfX07CkVGPWZ1bmN0aW9uKG4pe3JldHVybiBuP2cuRHAobik6IiJ9OwppNT1mdW5jdGlvbihuKXtyZXR1cm4gbj09PS0weDgwMDAwMDAwMDAwMDA/IkJFRk9SRV9NRURJQV9TVEFSVCI6bj09PTA/Ik1FRElBX1NUQVJUIjpuPT09MHg3ZmZmZmZmZmZmZmZmPyJNRURJQV9FTkQiOm49PT0weDgwMDAwMDAwMDAwMDA/IkFGVEVSX01FRElBX0VORCI6bi50b1N0cmluZygpfTsKZy51NT1mdW5jdGlvbihuLFcpe3JldHVybiBuLnN0YXJ0LVcuc3RhcnR8fG4ucHJpb3JpdHktVy5wcmlvcml0eXx8bi5KLVcuSn07Cmcub3k9ZnVuY3Rpb24obil7cmV0dXJuYGNybl8ke259YH07CmcuZHY9ZnVuY3Rpb24obil7cmV0dXJuYGNyeF8ke259YH07Cnp1PWZ1bmN0aW9uKG4pe3JldHVybntbMV06bi5zdGFydCxbMl06bi5lbmQsWzNdOm4uaWQsWzRdOm4ucHJpb3JpdHksWzVdOm4ubmFtZXNwYWNlLFs2XTpuLnZpc2libGUsWzddOm4uc3R5bGUsWzhdOm4udG9vbHRpcCxbOV06bi5jb2xvcixbMTBdOm4uaWNvbnMsWzExXTpuLmFzc29jaWF0ZWRDbGlwSWQsWzEyXTpuLm1hcmtlclBvc2l0aW9uTXN9fTsKVHU9ZnVuY3Rpb24obixXLEQsYil7VyBpbiBuLk58fChEPW5ldyBnLmw1KEQsYix7aWQ6Vyxwcmlvcml0eToyLG5hbWVzcGFjZToiYXBwYWQifSksbi5hcGkuZ2goW0RdLDEpLG4uTltXXT1EKX07CmpCPWZ1bmN0aW9uKG4sVyl7TGF4KG4sVykudGhlbihEPT57Zy5nbyhXLHZvaWQgMCx2b2lkIDAsRCl9KX07CkMyPWZ1bmN0aW9uKG4sVyl7Vy5mb3JFYWNoKEQ9PntqQihuLEQpfSl9OwpCNz1mdW5jdGlvbihuLFcsRCl7aWYoIShEIGluIFcpKXJldHVybiExO1c9V1tEXTtBcnJheS5pc0FycmF5KFcpfHwoVz1bV10pO2ZvcihsZXQgYiBvZiBXKVc9e0NQTjpuLmFwaS5nZXRWaWRlb0RhdGEoKS5jbGllbnRQbGF5YmFja05vbmNlfSxXPWcuR0soYixXKSxnLmdvKFcsdm9pZCAwLG9PKHpFKFcsZXh4LG51bGwpLFcsITEsIkFjdGl2ZSBWaWV3IDNyZCBQYXJ0eSBJbnRlZ3JhdGlvbiBVUkwiKXx8b08oekUoVyxndGosbnVsbCksVywhMSwiR29vZ2xlL1lvdVR1YmUgQnJhbmQgTGlmdCBVUkwiKXx8b08oekUoVyxYSzIsbnVsbCksVywhMSwiTmllbHNlbiBPQ1IgVVJMIikpO3JldHVybiEwfTsKTGF4PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGcuazYobi5hcGkuRygpKSYmZy5CVihXKSYmZy5qSChXKT9nLkhFKG4uYXBpLkcoKSxuLmFwaS5nZXRWaWRlb0RhdGEoKS5WKCkpLnRoZW4oRD0+e3ZhciBiO0QmJihiPXtBdXRob3JpemF0aW9uOmBCZWFyZXIgJHtEfWB9KTtyZXR1cm4gYn0sdm9pZCAwKTpnLkgwKCl9OwpGej1mdW5jdGlvbihuLFcpe24uY2hlY2tlZD1XO24uZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtY2hlY2tlZCIsU3RyaW5nKG4uY2hlY2tlZCkpfTsKd3Y9ZnVuY3Rpb24obixXKXtuLmVuYWJsZWQ9VztuLmVuYWJsZWQ/bi5lbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1kaXNhYmxlZCIpOm4uZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtZGlzYWJsZWQiLCJ0cnVlIil9OwpNcD1mdW5jdGlvbihuLFcsRD0hMSxiKXt2YXIgdj1uLmN1cnJlbnRUYXJnZXQ7aWYoIUQmJmYyKG4pKXJldHVybiBuLnByZXZlbnREZWZhdWx0KCksITA7Vy5wYXVzZVZpZGVvKCk7bj12LmdldEF0dHJpYnV0ZSgiaHJlZiIpO1E1KG4sYik7cmV0dXJuITF9OwpSeT1mdW5jdGlvbihuLFcsRCl7aWYodkUoVy5HKCkpJiZXLmdldFByZXNlbnRpbmdQbGF5ZXJUeXBlKCkhPT0yKWYyKEQpJiYoVy5pc0Z1bGxzY3JlZW4oKSYmIVcuRygpLmV4dGVybmFsRnVsbHNjcmVlbiYmVy50b2dnbGVGdWxsc2NyZWVuKCksRC5wcmV2ZW50RGVmYXVsdCgpKTtlbHNle2xldCBiPWYyKEQpO2ImJlcucGF1c2VWaWRlbygpO1E1KG4pO2ImJihnLmNhKG4pLEQucHJldmVudERlZmF1bHQoKSl9fTsKUUU9ZnVuY3Rpb24obil7cmV0dXJuIG4uYXVkaW8/LmF1ZGlvUXVhbGl0eT09PSJBVURJT19RVUFMSVRZX0hJR0giJiYhbi5WKCl9OwpWRT1mdW5jdGlvbihuKXtyZXR1cm4gbi5hdWRpbz8uVz09PSEwfTsKYzc9ZnVuY3Rpb24obil7cmV0dXJuIG4uVigpfTsKYXk9ZnVuY3Rpb24obil7cmV0dXJuIG4uYXVkaW8/Lk49PT0hMH07Cm52PWZ1bmN0aW9uKG4sVyl7aWYobi5sZW5ndGg8MilyZXR1cm4hMTt2YXIgRD1XKG5bMF0pO3JldHVybiBuLnNvbWUoYj0+VyhiKSE9PUQpfTsKYlk9ZnVuY3Rpb24obixXKXtuPXFJdyhuLFcubGFuZ3VhZ2VJZCk7bj1XdShuLCEhVy5nTyk7cmV0dXJuIG49RGIobiwhIVcuajkpfTsKV3U9ZnVuY3Rpb24obixXKXt2YXIgRD1nLkVNKG4sYj0+YXkoYik9PT1XKTsKcmV0dXJuIEQubGVuZ3RoPjA/RDpufTsKRGI9ZnVuY3Rpb24obixXKXt2YXIgRD1nLkVNKG4sYj0+VkUoYik9PT1XKTsKcmV0dXJuIEQubGVuZ3RoPjA/RDpufTsKR0t0PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFcuaWQhPT0idW5kIj9nLkVNKG4sRD0+e3ZhciBiPVcuZ2V0TGFuZ3VhZ2VJbmZvKCk/Lm5hbWU7cmV0dXJuIEQua1o/Lm5hbWU9PT1ifSk6bn07CnFJdz1mdW5jdGlvbihuLFcpe2lmKFcmJlchPT0idW5kIilpZih0eXBlb2YgVz09PSJzdHJpbmciKXt2YXIgRD1nLmxfKG4sdj0+di5pZD09PVcpOwppZihEPy5rWil2YXIgYj1ELmtaLmlkfWVsc2UgYj1XLmtaPy5pZDtpZihiJiYoRD1nLkVNKG4sdj0+di5rWj8uaWQ9PT1iKSxELmxlbmd0aD4wKSlyZXR1cm4gRDsKRD1nLkVNKG4sdj0+ISF2LmtaPy5pc0RlZmF1bHQpOwpyZXR1cm4gRC5sZW5ndGg+MD9EOm59Owp0QUM9ZnVuY3Rpb24obil7dmFyIFc9Zy5FTShuLEQ9PmM3KEQpPT09ITApOwpyZXR1cm4gVy5sZW5ndGg+MD9XOm59Owokd2o9ZnVuY3Rpb24obil7dmFyIFc9Zy5FTShuLEQ9PlFFKEQpPT09ITApOwpyZXR1cm4gVy5sZW5ndGg+MD9XOm59OwpyYVU9ZnVuY3Rpb24obixXKXtuPW5ldyBTZXQobi5tYXAoVykpO24uZGVsZXRlKHZvaWQgMCk7cmV0dXJuIG4uc2l6ZT49Mn07CnNGTT1mdW5jdGlvbihuLFcpe3JldHVybiBXLnByaW9yaXR5LW4ucHJpb3JpdHl9Owp2dT1mdW5jdGlvbihuLFcsRD0hMSl7aWYoRCluLml0ZW1zLnB1c2goVyksbi5tZW51SXRlbXMuZWxlbWVudC5hcHBlbmRDaGlsZChXLmVsZW1lbnQpO2Vsc2V7RD1nLlc0KG4uaXRlbXMsVyxzRk0pO2lmKEQ+PTApcmV0dXJuO0Q9fkQ7Zy5jTShuLml0ZW1zLEQsMCxXKTtnLmpwKG4ubWVudUl0ZW1zLmVsZW1lbnQsVy5lbGVtZW50LEQpfVcuc3Vic2NyaWJlKCJzaXplLWNoYW5nZSIsbi5xQSxuKTtuLm1lbnVJdGVtcy5XSigic2l6ZS1jaGFuZ2UiKX07CmtzPWZ1bmN0aW9uKG4sVyl7Vy51bnN1YnNjcmliZSgic2l6ZS1jaGFuZ2UiLG4ucUEsbik7bi5xTigpfHwoZy5GSShuLml0ZW1zLFcpLG4ubWVudUl0ZW1zLmVsZW1lbnQucmVtb3ZlQ2hpbGQoVy5lbGVtZW50KSxuLm1lbnVJdGVtcy5XSigic2l6ZS1jaGFuZ2UiKSl9OwpnLmhCPWZ1bmN0aW9uKG4sVyl7aWYobi5XKXt2YXIgRD1uLm9wdGlvbnNbbi5XXTtELmVsZW1lbnQuZ2V0QXR0cmlidXRlKCJhcmlhLWNoZWNrZWQiKTtELmVsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWNoZWNrZWQiLCJmYWxzZSIpO24uVz1udWxsfWlmKEQ9bi5vcHRpb25zW1ddKUQuZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtY2hlY2tlZCIsInRydWUiKSxuLlgobi5qKFcpKSxuLlc9V307Ck5YaD1mdW5jdGlvbihuLFcsRCxiKXtEPW5ldyB4cyh7WjoiZGl2IixLQjpbInl0cC1tZW51aXRlbSIsIiJdLHhhOnt0YWJpbmRleDoiMCIscm9sZToibWVudWl0ZW1yYWRpbyIsImFyaWEtY2hlY2tlZCI6Yj8idHJ1ZSI6ImZhbHNlIn0sWEY6W3taOiJkaXYiLEtCOlsieXRwLW1lbnVpdGVtLWxhYmVsIl0sT3E6Int7bGFiZWx9fSJ9XX0sRCxuLmooVykpO0QuU18oImNsaWNrIiwoKT0+e24uRChXKX0pOwpyZXR1cm4gRH07CmcuTHY9ZnVuY3Rpb24obixXKXt2YXIgRD1uLks7Zm9yKHZhciBiIG9mIEQuaXRlbXMpYi51bnN1YnNjcmliZSgic2l6ZS1jaGFuZ2UiLEQucUEsRCk7RC5pdGVtcz1bXTt0cnl7Zy5URihELm1lbnVJdGVtcy5lbGVtZW50KX1jYXRjaCh2KXtnLkdxKG5ldyBnLlF4KCJGYWlsZWQgdG8gcmVtb3ZlIG1lbnUgaXRlbXMgZnJvbSBwYW5lbCBtZW51LiIse2Vycm9yOnYubWVzc2FnZSxvcmlnaW5hbFN0YWNrOnYuc3RhY2ssY2hpbGRUb0JlUmVtb3ZlZDpELm1lbnVJdGVtcy5lbGVtZW50LmZpcnN0Q2hpbGQ/LnRleHRDb250ZW50Pz8iY2hpbGQgZWxlbWVudCBub3QgZm91bmQifSkpfUQubWVudUl0ZW1zLldKKCJzaXplLWNoYW5nZSIpO0Q9e307Yj0hMTtmb3IobGV0IHY9MDt2PFcubGVuZ3RoO3YrKyl7bGV0IGs9V1t2XSxoPW4ub3B0aW9uc1trXSx4PWs9PT1uLlc7eCYmKGI9ITApO2gmJmgucHJpb3JpdHk9PT0tdj8obi5vcHRpb25zW2tdLnVwZGF0ZVZhbHVlKCJsYWJlbCIsbi5qKGspKSwKZGVsZXRlIG4ub3B0aW9uc1trXSk6aD1OWGgobixrLC12LHgpO0Rba109aDt2dShuLkssaCwhMCl9Ynx8KG4uVz1udWxsKTtmb3IobGV0IHYgb2YgT2JqZWN0LmtleXMobi5vcHRpb25zKSluLm9wdGlvbnNbdl0uZGlzcG9zZSgpO24ub3B0aW9ucz1EfTsKZW49ZnVuY3Rpb24obil7aWYobi5tZW51SXRlbSl7dmFyIFc9bi5hcGkuZ2V0VmlkZW9EYXRhKCk7bi5tZW51SXRlbS5lbmFibGUoISFXJiYhIVcuV2spfX07CmdWPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIG9mIFcpe1c9TnVtYmVyKEQucGxheWJhY2tQb3NpdGlvbj8udXRjVGltZU1pbGxpcykvMUUzO2xldCBiPWBlbWJhcmdvXyR7V31gO24uYXBpLmFkZFV0Y0N1ZVJhbmdlKGIsVyxXK051bWJlcihELmR1cmF0aW9uPy5zZWNvbmRzKSwiZW1iYXJnbyIsITEpO0Qub25FbnRlciYmKG4uTltiXT1ELm9uRW50ZXIuZmlsdGVyKG4uSikpfX07CllJMT1mdW5jdGlvbihuKXt2YXIgVz1uLmFwaS5nZXRSb290Tm9kZSgpO1c9bi5hcGkuZ2V0V2ViUGxheWVyQ29udGV4dENvbmZpZygpLmVtYmVkc0VuYWJsZUVtYzNkcz9XLnBhcmVudEVsZW1lbnQ/LnBhcmVudEVsZW1lbnR8fFc6VztuLk49bmV3IHBLcihXLEQ9PntEIT1udWxsJiYobi5hcGkuRygpLmVLPUQsbi5hcGkuRygpLkxLPSJFTUJFRERFRF9QTEFZRVJfVklTSUJJTElUWV9GUkFDVElPTl9TT1VSQ0VfSU5URVJTRUNUSU9OX09CU0VSVkVSIil9KTsKZy51KG4sbi5OKTtuLmV2ZW50cy5OTihuLmFwaSwidmlkZW9TdGF0c1BpbmdDcmVhdGVkIixEPT57dmFyIGI9bi5OO2I9Yi5OPT1udWxsP251bGw6TWF0aC5yb3VuZChiLk4qMTAwKS8xMDA7RC5pbnZpZXc9YiE9bnVsbD9iOnZvaWQgMDtiPW4uYXBpLmdldFBsYXllclNpemUoKTtpZihiLmhlaWdodD4wJiZiLndpZHRoPjApe2I9W01hdGgucm91bmQoYi53aWR0aCksTWF0aC5yb3VuZChiLmhlaWdodCldO2xldCB2PWcuSF8oKTt2PjEmJmIucHVzaCh2KTtiPWIuam9pbigiOiIpfWVsc2UgYj12b2lkIDA7RC5zaXplPWJ9KX07CkhfVT1mdW5jdGlvbihuKXtyZXR1cm4gbi5tYXAoVz0+bmV3IG11KFcuaWQsImFwcGxpY2F0aW9uL3gtbXBlZ1VSTCIse2taOlcua1p9KSl9OwpxVz1mdW5jdGlvbihuLFcsRCxiKXtmdW5jdGlvbiB2KGgpe3ZhciB4PSEoaC5zdGF0dXMhPT0yMDQmJmguc3RhdHVzIT09MjAwJiYhaC5yZXNwb25zZSk7aD17c3VjYzpgJHsreH1gLHJjOmguc3RhdHVzLGxiOmgucmVzcG9uc2U/LmJ5dGVMZW5ndGh8fDAscnQ6KCgwLGcuUikoKS1rKS50b0ZpeGVkKCksc2hvc3Q6Zy5JUChuKSx0cmlnZ2VyOld9O1hyKGgsbik7RCYmRChoKTtiJiYheCYmYihuZXcgZy5DaSgicGF0aHByb2JlLm5ldCIsaCkpfQp2YXIgaz0oMCxnLlIpKCk7Zy5lZChuLHtmb3JtYXQ6IlJBVyIscmVzcG9uc2VUeXBlOiJhcnJheWJ1ZmZlciIsdGltZW91dDoxRTQsb25GaW5pc2g6dixvblRpbWVvdXQ6dn0pfTsKWHI9ZnVuY3Rpb24obixXKXt3aW5kb3cucGVyZm9ybWFuY2U/LmdldEVudHJpZXNCeU5hbWUmJihXPXBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoVykpJiZXLmxlbmd0aCYmKFc9V1swXSxuLnBlZG5zPShXLmRvbWFpbkxvb2t1cEVuZC1XLnN0YXJ0VGltZSkudG9GaXhlZCgpLG4ucGVjb249KFcuY29ubmVjdEVuZC1XLmRvbWFpbkxvb2t1cEVuZCkudG9GaXhlZCgpLG4ucGVycXM9KFcucmVxdWVzdFN0YXJ0LVcuY29ubmVjdEVuZCkudG9GaXhlZCgpKX07CnRCPWZ1bmN0aW9uKG4pe3JldHVybiBHRChuLmlqLCFuLnBvbGljeS5mUixuLnBvbGljeS5RSCl9OwpmaXg9ZnVuY3Rpb24obixXKXt2YXIgRD1NYXRoLm1pbihuLnBvbGljeS5UNiwkcyhuLmlqKSk7bj10QihuKTtyZXR1cm4gVy1EKm59OwpyVj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIE1hdGguY2VpbChNYXRoLm1heChNYXRoLm1heChuLnBvbGljeS5abSxuLnBvbGljeS5UNCpEKSxNYXRoLm1pbihNYXRoLm1pbihuLnBvbGljeS5ISiwzMSpEKSxNYXRoLmNlaWwoVypEKSkpKXx8bi5wb2xpY3kuWm19OwpzYj1mdW5jdGlvbihuLFcsRCxiLHY9ITEpe2lmKG4ucG9saWN5LlE3KXJldHVybiBNYXRoLmNlaWwobi5wb2xpY3kuUTcqVyk7bi5wb2xpY3kudm4mJihiPU1hdGguYWJzKGIpKTtiLz1uLnBsYXliYWNrUmF0ZTt2YXIgaz0xL0dEKG4uaWopO0Q9TWF0aC5tYXgoLjkqKGItMyksJHMobi5paikrbi5pai5KLk4qaykvayouOC8oVytEKTtEPU1hdGgubWluKEQsYik7bi5wb2xpY3kuSFk+MCYmdiYmKEQ9TWF0aC5tYXgoRCxuLnBvbGljeS5IWSkpO3JldHVybiByVihuLEQsVyl9OwpOVz1mdW5jdGlvbihuKXtyZXR1cm4gdEIobikvbi5wbGF5YmFja1JhdGV9Owpwdj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9bi5wb2xpY3kucGxheWJhY2tTdGFydFBvbGljeS5yZXN1bWVNaW5SZWFkYWhlYWRQb2xpY3l8fFtdLHY9bi5wb2xpY3kucGxheWJhY2tTdGFydFBvbGljeS5zdGFydE1pblJlYWRhaGVhZFBvbGljeXx8W107bj1JbmZpbml0eTtXPVcmJmIubGVuZ3RoPjA/Yjp2O2ZvcihsZXQgayBvZiBXKVc9ay5taW5SZWFkYWhlYWRNc3x8MCxEPChrLm1pbkJhbmR3aWR0aEJ5dGVzUGVyU2VjfHwwKXx8bj5XJiYobj1XKTtyZXR1cm4gbjxJbmZpbml0eT9uLzFFMzpufTsKZnY9ZnVuY3Rpb24obixXLEQsYix2KXtpZighYi5pbmZvLmFaKXJldHVybiBELmxlbmd0aD09PTA/RC5wdXNoKGIpOihuPUQucG9wKCk/LmooYikpP0QucHVzaChuKTpELnB1c2goYiksdjsoRD1ELnBvcCgpPy5qKGIpKXx8KEQ9Yik7aWYoRC5pbmZvLk4pcmV0dXJuIG4ubG9nZ2VyJiZuLmxvZ2dlcih7aW5jb21wbGV0ZVNlZ21lbnQ6RC5pbmZvLmdhKCl9KSx2O3ZhciB7Zm9ybWF0SWQ6ayxqJDpoLHN0YXJ0VGltZU1zOngsY2xpcElkOkwscjk6ZX09bi5LKEQpO2I9e2NsaXBJZDpMLGZvcm1hdElkOmssc3RhcnRUaW1lTXM6eCxkdXJhdGlvbk1zOmUsQUM6aCxpOTpofTt2PVlzKFcsYi5zdGFydFRpbWVNcyk7RD12Pj0wP1dbdl06bnVsbDt2YXIgRztpZihHPUQpe0c9Yjt2YXIgcj12LE49RC5zdGFydFRpbWVNcytELmR1cmF0aW9uTXMsSD1HLnN0YXJ0VGltZU1zK0cuZHVyYXRpb25NcztpZihHLnN0YXJ0VGltZU1zLU4+bi5OKUc9ITE7ZWxzZSBpZihIdShuLEQuZm9ybWF0SWQsRy5mb3JtYXRJZCkpRC5kdXJhdGlvbk1zPQpNYXRoLm1heChOLEgpLUQuc3RhcnRUaW1lTXMsRC5pOT1NYXRoLm1heChELmk5LEcuaTkpLEc9ITA7ZWxzZSBpZihNYXRoLmFicyhELnN0YXJ0VGltZU1zLUcuc3RhcnRUaW1lTXMpPD1uLk4paWYoRC5kdXJhdGlvbk1zPkcuZHVyYXRpb25NcytuLk4pe3I9RC5mb3JtYXRJZDt2YXIgQT1ELkFDLHk9RC5pOTtELmZvcm1hdElkPUcuZm9ybWF0SWQ7RC5kdXJhdGlvbk1zPUcuZHVyYXRpb25NcztELkFDPUcuQUM7RC5pOT1HLmk5O0cuZm9ybWF0SWQ9cjtHLnN0YXJ0VGltZU1zPUg7Ry5kdXJhdGlvbk1zPU4tSDtHLkFDPUE7Ry5pOT15O0c9ITF9ZWxzZSBELmZvcm1hdElkPUcuZm9ybWF0SWQsRz0hMDtlbHNlIE4+Ry5zdGFydFRpbWVNcyYmKE4+SCYmKFcuc3BsaWNlKHIrMSwwLHtmb3JtYXRJZDpELmZvcm1hdElkLHN0YXJ0VGltZU1zOkgsZHVyYXRpb25NczpOLUgsQUM6Ry5pOSsxLGk5OkQuaTl9KSxuLmxvZ2dlciYmbi5sb2dnZXIoe3NwbGl0T2xkU3RhcnQ6RC5zdGFydFRpbWVNcz8udG9GaXhlZCgzKSwKc3BsaXRPbGRFbmQ6Tj8udG9GaXhlZCgzKSxzcGxpdE5ld1N0YXJ0Okcuc3RhcnRUaW1lTXM/LnRvRml4ZWQoMyksc3BsaXROZXdFbmQ6SD8udG9GaXhlZCgzKX0pKSxELmR1cmF0aW9uTXM9Ry5zdGFydFRpbWVNcy1ELnN0YXJ0VGltZU1zLEQuaTk9Ry5BQy0xKSxHPSExfUc/Yj1EOih2Kz0xLFcuc3BsaWNlKHYsMCxiKSk7RD0wO2ZvcihHPXYrMTtHPFcubGVuZ3RoO0crKyl7Tj1uO0g9V1tHXTtyPWI7QT1ILnN0YXJ0VGltZU1zK0guZHVyYXRpb25Nczt5PXIuc3RhcnRUaW1lTXMrci5kdXJhdGlvbk1zO3k+PUErTi5OP049ITA6eStOLk48SC5zdGFydFRpbWVNcz9OPSExOkh1KE4sSC5mb3JtYXRJZCxyLmZvcm1hdElkKT8oci5kdXJhdGlvbk1zPUEtci5zdGFydFRpbWVNcyxyLmk5PUguaTksTj0hMCk6KEguc3RhcnRUaW1lTXM9eSxILkFDPXIuaTkrMSxOPSExKTtpZighTilicmVhaztEKyt9RCYmVy5zcGxpY2UodisxLEQpO3JldHVybiB2fTsKWXM9ZnVuY3Rpb24obixXKXtuPWcuVzQobix7c3RhcnRUaW1lTXM6V30sKEQsYik9PkQuc3RhcnRUaW1lTXMtYi5zdGFydFRpbWVNcyk7CnJldHVybiBuPj0wP246LW4tMn07CkpCPWZ1bmN0aW9uKG4sVyxEKXtpZihuLmxvZ2dlcil7dmFyIGI9W107Zm9yKGxldCB2PTA7djxXLmxlbmd0aDt2Kyspe2xldCBrPVdbdl07ay5Faj8uc3RhcnRUaWNrcyYmYi5wdXNoKGBpLiR7ay5mb3JtYXRJZD8uaXRhZ31fc3QuJHtrLnN0YXJ0VGltZU1zfV9wc3N0LiR7ay5Faj8uc3RhcnRUaWNrc31fcHNkLiR7ay5Faj8ubDh9YCk7Yi5wdXNoKGBpLiR7ay5mb3JtYXRJZD8uaXRhZ31fc3QuJHtrLnN0YXJ0VGltZU1zfV9lLiR7ay5zdGFydFRpbWVNcytrLmR1cmF0aW9uTXN9X2QuJHtrLmR1cmF0aW9uTXN9X3NuLiR7ay5BQ31fZW4uJHtrLmk5fWApfW4ubG9nZ2VyKHtwOmAke0R9YCxicjpiLmpvaW4oIjsiKX0pfX07Ckk2PWZ1bmN0aW9uKG4sVyxEPSExKXtpZihuLlFFKXt2YXIgYj1uLlFFLlpGKCk7aWYoYi5sZW5ndGghPT0wKXtpZihuLlcmJlcpe3ZhciB2PW4uVyxrPXYuaW5mby5YOyFCUihiLGspJiZ2LmluZm8uSz4wJiYoMCxnLlIpKCktbi5EPDVFMyYmKG4ubG9nZ2VyJiZuLmxvZ2dlcih7ZGVuZDp2LmluZm8uZ2EoKX0pLGI9akcoYixrLGsrLjAxKSl9dj1bXTtmb3IodmFyIGg9az0wO2s8Yi5sZW5ndGgmJmg8bi5lVy5sZW5ndGg7KXt2YXIgeD1iLnN0YXJ0KGspO2xldCBOPWIuZW5kKGspO3ZhciBMPW4uZVdbaF0uc3RhcnRUaW1lTXMvMUUzO2xldCBIPShuLmVXW2hdLnN0YXJ0VGltZU1zK24uZVdbaF0uZHVyYXRpb25NcykvMUUzO2lmKEw8PU4mJkg+PXgpe2xldCBBPXsuLi5uLmVXW2hdfTt2YXIgZT1uLkt1LkouZ2V0KE1rKG4uZVdbaF0uZm9ybWF0SWQpKSxHPU1hdGgubWF4KEwseCk7eD1lLmluZGV4LlIzKEcrbi5OLzFFMyk7TD1lLmluZGV4LmdldFN0YXJ0VGltZSh4KTt2YXIgcj14KworKE1hdGguYWJzKEwtRyk+bi5OLzFFMyk7Rz1yK24uWDtyPWUuaW5kZXguZ2V0U3RhcnRUaW1lKHIpKjFFMztoIT09bi5KfHxXPyhBLkFDPUcsQS5zdGFydFRpbWVNcz1yKToobi5sb2dnZXImJm4ubG9nZ2VyKHtwRXZpY3Q6IjEiLG9nOkEuc3RhcnRUaW1lTXMsYWRqOkwqMUUzfSksQS5BQz14K24uWCxBLnN0YXJ0VGltZU1zPUwqMUUzKTt4PW4uVz8uaW5mby5XfHwxMTshRCYmaD09PW4uSiYmTjxIJiZILU48PXgqMS4wMSYmIShuLnBvbGljeS5TdyYmbi5RRSYmbi5RRS55dSgpKSYmKE49SCk7eD1NYXRoLm1pbihILE4pO0w9ZS5pbmRleC5SMyh4LW4uTi8xRTMpO0c9ZS5pbmRleC5qRShMKTtMLT0rKE1hdGguYWJzKEcteCk+bi5OLzFFMyk7eD1MK24uWDtlPWUuaW5kZXguakUoTCkqMUUzO0EuaTk9eDtBLmR1cmF0aW9uTXM9ZS1BLnN0YXJ0VGltZU1zO0EuQUM8PUEuaTkmJnYucHVzaChBKX1IPE4/aCs9MTprKz0xfW4uZVc9dn19fTsKSmFpPWZ1bmN0aW9uKG4pe3ZhciBXPVtdLEQ9Wy4uLm4uUDNdO24uZVcuZm9yRWFjaChrPT57Vy5wdXNoKHsuLi5rfSl9KTsKdmFyIGI9bi5UQy5aUCgpLHY9bi5KO2ZvcihsZXQgayBvZiBiKXY9ZnYobixXLEQsayx2KTtXLmZvckVhY2goaz0+e2suc3RhcnRUaW1lTXMmJihrLnN0YXJ0VGltZU1zKz1uLnRpbWVzdGFtcE9mZnNldCoxRTMpfSk7CnJldHVybntlVzpXLFAzOkR9fTsKSHU9ZnVuY3Rpb24obixXLEQpe3JldHVybiBXLml0YWchPT1ELml0YWd8fFcueHRhZ3MhPT1ELnh0YWdzPyExOm4uS3Uueld8fFcubG10PT09RC5sbXR9OwpaYj1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKCFXLlBKLk4oKSl7aWYoISh2PUQ9PT0wfHwhIVcuSi5sZW5ndGgmJlcuSlswXWluc3RhbmNlb2YgU24pKWE6e2lmKFcuSi5sZW5ndGgmJih2PVcuSlswXSx2IGluc3RhbmNlb2YgQUImJnYuSk8mJnYuYUkpKXt2PSEwO2JyZWFrIGF9dj0hMX12fHxuLnBvbGljeS5OfHxtaShXKTtyZXR1cm4gRH12YXIgaz1LdihXLEQpO2lmKCFpc05hTihrKSlyZXR1cm4gaztpZihuLmxvYWRlci5DNyhEKjFFMykpcmV0dXJuIEQ7di5BTT9uLnBvbGljeS5WSCYmKG49T2Iobi5sb2FkZXIsVyksVy5zTShEK24sITApKTooVy56aSgpLG4ubG9hZGVyLlgkKCExLGBzdGFfJHsrVy5QSi5pbmZvLmVTKCl9YCkpO3JldHVybiBiJiYobj1GWihiLlpGKCksRCksIWlzTmFOKG4pKT8oUHUoVyxuK0lpYix2KSxEKTpQdShXLEQsdil9OwpVYj1mdW5jdGlvbihuLFcsRCl7aWYoIW4ucG9saWN5Lmope249Vy5QSi5pbmRleDt2YXIgYj1XLk4uaiQ7bi5NSShiKXx8RCYmRC5qJD09PWI/KFcuUEQ9IW4uTUkoYiksVy5EPSFuLk1JKGIpKTooVy5QRD0hMCxXLkQ9ITApfX07CkViPWZ1bmN0aW9uKG4pe3ZhciBXPU1hdGgubWF4KG4udmlkZW9UcmFjay5TRSgpLG4uYXVkaW9UcmFjay5TRSgpKTt5ayhuLnZpZGVvVHJhY2spO3lrKG4uYXVkaW9UcmFjayk7bi5wb2xpY3kuanx8ajQobi5LdSk7bi5LdS5pc01hbmlmZXN0bGVzcyYmIW4ucG9saWN5LmomJihuLk49ITAsbi5KPTApO3ZhciBEPW4ubG9hZGVyO2lmKCFELnBvbGljeS5sbnx8RC5wb2xpY3kuR0MpRC5jdXJyZW50VGltZT1XO24uc2Vla2luZz0hMDtuLlc9bmV3IFk2O3JldHVybiBuLld9OwpvNj1mdW5jdGlvbihuKXt2YXIgVz1uLnZpZGVvVHJhY2suWCE9PS0xLEQ9bi5hdWRpb1RyYWNrLlghPT0tMTtpZighV3x8IUQpaWYoVz0hVyYmaVkobi52aWRlb1RyYWNrKSxEPSFEJiZpWShuLmF1ZGlvVHJhY2spLFd8fEQpaWYoRD1XP24udmlkZW9UcmFjazpuLmF1ZGlvVHJhY2ssVz1XP24uYXVkaW9UcmFjazpuLnZpZGVvVHJhY2ssRC5YPWlZKEQpLmluZm8uaiQsbi5wb2xpY3kuaiYmKFcuWD1pWShXKT8uaW5mby5UQygpfHxXLlgpLFcuWCE9PS0xKXtsZXQgYj1NYXRoLm1heChXLlBKLmluZGV4LmdldFN0YXJ0VGltZShXLlgpLEQuUEouaW5kZXguZ2V0U3RhcnRUaW1lKEQuWCkpO3VBKG4uS3UpJiZNYXRoLmFicyhiLXVBKG4uS3UpKT40MzJFMyYmS0t0KG4uS3UpO24uSiYmKGI9bi5KLG4uSj0wKTtnLm1LKCgpPT57bi5wb2xpY3kuanx8dVkobixiLDEwMil9KTsKbi5sb2FkZXIuVSgiaW5pdE1hbmlmZXN0bGVzc1N5bmMiLHtzdDpiLG9zdDpiK24ubG9hZGVyLlNXKCksYTpuLmF1ZGlvVHJhY2suWCx2Om4udmlkZW9UcmFjay5YfSk7bi5XJiYobi5XLnJlc29sdmUoYisuMSksbi5XPW51bGwpO24ucG9saWN5LmomJnVZKG4sYiwxMDIpfX07ClNJWj1mdW5jdGlvbihuLFcsRCl7aWYoIW4uaXNTZWVraW5nKCkpcmV0dXJuLTE7RD0oRD9uLnZpZGVvVHJhY2s6bi5hdWRpb1RyYWNrKS5QSi5pbmRleDt2YXIgYj1ELlIzKG4udGFyZ2V0VGltZSk7cmV0dXJuKEQuTUkobi5LdS5JdCl8fFcuaiQ9PT1uLkt1Lkl0KSYmYjxuLkt1Lkl0P24uS3UuTGYoKTotMX07CnVZPWZ1bmN0aW9uKG4sVyxEKXtuLk4mJm4udmlkZW9UcmFjay5YIT09LTEmJm4uYXVkaW9UcmFjay5YIT09LTEmJihuLk49ITEsbi50YXJnZXRUaW1lPVcsZFYobi5sb2FkZXIsVysuMSx7QTk6ITAscWQ6ImNodW5rU2VsZWN0b3JTeW5jaHJvbml6ZSIscWE6ITAsc2Vla1NvdXJjZTpEfSkpfTsKQWEyPWZ1bmN0aW9uKG4sVyxELGIpe2lmKG4ucG9saWN5LmopIWJ8fCFuLk4mJm4ucG9saWN5LkJWfHxnLm1LKCgpPT57bzYobil9KTsKZWxzZXtpZihuLmlzU2Vla2luZygpJiZuLnRhcmdldFRpbWUpe2xldCBrPVNJWihuLFcsRCk7aWYoayE9PS0xKXtuLnZpZGVvVHJhY2suUEQ9ITE7bi5hdWRpb1RyYWNrLlBEPSExO24uTj0hMDtuLko9MDtnLm1LKCgpPT57bi5sb2FkZXIuVSgic2Vla3JlYXNvbiIse3JlYXNvbjoiYmVoaW5kTWluU3EiLHRndDprfSk7dVkobixrKX0pOwpyZXR1cm59fUQ/bi52aWRlb1RyYWNrLkQ9ITE6bi5hdWRpb1RyYWNrLkQ9ITE7dmFyIHY9IW4uTjtLdihuLnZpZGVvVHJhY2ssbi50YXJnZXRUaW1lKT49MCYmS3Yobi5hdWRpb1RyYWNrLG4udGFyZ2V0VGltZSk+PTAmJnY/KG4uUEQoKSYmbi5sb2FkZXIuVSgiaXRlcmF0aXZlU2Vla2luZyIse3N0YXR1czoiZG9uZSIsY291bnQ6bi5zZWVrQ291bnR9KSxuLnZpZGVvVHJhY2suUEQ9ITEsbi5hdWRpb1RyYWNrLlBEPSExKTpiJiZnLm1LKCgpPT57aWYobi5OfHwhbi5wb2xpY3kuQlYpbzYobik7ZWxzZXt2YXIgaz1XLnN0YXJ0VGltZSxoPVcuZHVyYXRpb247aWYoIW4ucG9saWN5Lmope3ZhciB4PW4udmlkZW9UcmFjay5YIT09LTEmJm4uYXVkaW9UcmFjay5YIT09LTEsTD0hbi52aWRlb1RyYWNrLkQmJiFuLmF1ZGlvVHJhY2suRDsoRD9uLnZpZGVvVHJhY2suUEQ6bi5hdWRpb1RyYWNrLlBEKSYmeCYmTCYmKG4udGFyZ2V0VGltZT49ayYmbi50YXJnZXRUaW1lPGsraCsuMT8oKEQ/bi52aWRlb1RyYWNrOgpuLmF1ZGlvVHJhY2spLlBEPSExLG4uUEQoKXx8KG4ubG9hZGVyLlUoIml0ZXJhdGl2ZVNlZWtpbmciLHtzdGF0dXM6ImRvbmUiLHRhcmdldDprLG9yaWdpbmFsVGltZTprK24ubG9hZGVyLlNXKCksY291bnQ6bi5zZWVrQ291bnR9KSxuLnNlZWtDb3VudD0wKSk6bi5zZWVrQ291bnQ8OD8obi5zZWVrQ291bnQrKyxuLmxvYWRlci5VKCJpdGVyYXRpdmVTZWVraW5nIix7c3RhdHVzOiJpbnByb2dyZXNzIixjb3VudDpuLnNlZWtDb3VudCx0YXJnZXQ6bi50YXJnZXRUaW1lLGFjdHVhbDprLGR1cmF0aW9uOmgsaXNWaWRlbzpEfSksbi5zZWVrKG4udGFyZ2V0VGltZSx7fSkpOihuLmxvYWRlci5VKCJpdGVyYXRpdmVTZWVraW5nIix7c3RhdHVzOiJpbmNvbXBsZXRlIixjb3VudDpuLnNlZWtDb3VudCx0YXJnZXQ6bi50YXJnZXRUaW1lLGFjdHVhbDprfSksbi5zZWVrQ291bnQ9MCxuLnZpZGVvVHJhY2suUEQ9ITEsbi5hdWRpb1RyYWNrLlBEPSExLGRWKG4ubG9hZGVyLGsrLjEse0E5OiEwLHFkOiJjaHVua1NlbGVjdG9yU3luY2hyb25pemVNZWRpYSIsCnFhOiEwfSkpKX19fSl9fTsKVEQ9ZnVuY3Rpb24obixXLEQpe3pEKG4uaWosVyk7bi5EdCYmKG4uRHQuYWRkKE1hdGguY2VpbChXKS1NYXRoLmNlaWwobi5LKSksbi5EdC5hZGQoTWF0aC5tYXgoMCxNYXRoLmNlaWwoRC8xMDI0KS1NYXRoLmNlaWwobi5YLzEwMjQpKSkpO3ZhciBiPVctbi5LLHY9RC1uLlg7bi5VNT12O24ualc9TWF0aC5tYXgobi5qVyx2LyhiKy4wMSkqMUUzKTtuLks9VztuLlg9RDtuLkhKJiZEPm4uSEomJmxZKG4pfTsKbFk9ZnVuY3Rpb24obil7bi5udT1NYXRoLm1heChuLm51LG4uWC1uLlJ0KTtuLlZRPU1hdGgubWF4KG4uVlEsbi5LLW4uWmgpO24uSEo9MH07Cm13cj1mdW5jdGlvbihuLFcpe24udXJsPVc7d2luZG93LnBlcmZvcm1hbmNlJiYhcGVyZm9ybWFuY2Uub25yZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGwmJihwZXJmb3JtYW5jZS5vbnJlc291cmNldGltaW5nYnVmZmVyZnVsbD0oKT0+e3BlcmZvcm1hbmNlLmNsZWFyUmVzb3VyY2VUaW1pbmdzKCl9KX07CmpuPWZ1bmN0aW9uKG4pe24uaXNBY3RpdmUmJihuLmlzQWN0aXZlPSExKX07CkN2PWZ1bmN0aW9uKG4pe24uZSQ9bi5OK24uc25hcHNob3QuZGVsYXkqMUUzO24udlg9ITF9OwpGcj1mdW5jdGlvbihuLFcsRCl7aWYoIW4uZGlzYWJsZVJlY29yZGluZyl7Vz1NYXRoLm1heChXLC4wMSk7dmFyIGI9bi5xWT9NYXRoLm1heChXLEQvbi5xWSk6Vyx2PW4uaWouSi5XO3YmJihiPVcsbi5xWSYmKGI9TWF0aC5tYXgoVyxEL24ucVkqdikpKTtCdShuLmlqLFcsRCxiKX19Owp3Vj1mdW5jdGlvbihuKXt2YXIgVz1uLkZGfHxuLkdDO3JldHVybiBXP24uc25hcHNob3QuZGVsYXkrTWF0aC5taW4obi5POCwobi5jSi1uLnR3KS8xRTMpK1c6bi5zNX07Ck1XPWZ1bmN0aW9uKG4pe3JldHVybihuLlktbi5OKS8xRTN9OwpRaz1mdW5jdGlvbihuLFcpe2lmKG4uaG4mJm4uaiQhPT12b2lkIDAmJm4uWkEhPT12b2lkIDApe3ZhciBEPU1hdGgsYj1ELm1pbix2PW4uVjt2YXIgaz1uLmhuO3ZhciBoPW4uTjtpZihSNihrLG4uaiQpKWs9VztlbHNle3ZhciB4PTA7ay50SSYmKHg9LjIpO2s9aCsoay5POCt4KSoxRTN9bi5WPWIuY2FsbChELHYsayk7RD1NYXRoO2I9RC5taW47dj1uLk87az1uLmhuO2g9bi5OO3g9S2EyKGssbi5qJCxuLlpBKTt4IT09MiYmKFc9eD9XOmgray5POCoxRTMsay50SSYmKFcrPWsuTzgqMUUzKSk7bi5PPWIuY2FsbChELHYsVyk7bi5WPD1uLk4/Q3Yobik6KG4uZSQ9bi5WLG4udlg9ITApfX07ClZrPWZ1bmN0aW9uKG4sVyl7aWYoVysxPD1uLnRvdGFsTGVuZ3RoKXt2YXIgRD1yZChuLFcpO0Q9RDwxMjg/MTpEPDE5Mj8yOkQ8MjI0PzM6RDwyNDA/NDo1fWVsc2UgRD0wO2lmKEQ8MXx8IShXK0Q8PW4udG90YWxMZW5ndGgpKXJldHVyblstMSxXXTtpZihEPT09MSluPXJkKG4sVysrKTtlbHNlIGlmKEQ9PT0yKUQ9cmQobixXKyspLG49cmQobixXKyspLG49KEQmNjMpKzY0Km47ZWxzZSBpZihEPT09Myl7RD1yZChuLFcrKyk7dmFyIGI9cmQobixXKyspO249cmQobixXKyspO249KEQmMzEpKzMyKihiKzI1NipuKX1lbHNlIGlmKEQ9PT00KXtEPXJkKG4sVysrKTtiPXJkKG4sVysrKTtsZXQgdj1yZChuLFcrKyk7bj1yZChuLFcrKyk7bj0oRCYxNSkrMTYqKGIrMjU2Kih2KzI1NipuKSl9ZWxzZSBEPVcrMSxuLmZvY3VzKEQpLFhhKG4sRCw0KT9uPXFEKG4pLmdldFVpbnQzMihELW4uVywhMCk6KGI9cmQobixEKzIpKzI1NipyZChuLEQrMyksbj1yZChuLEQpKzI1NioocmQobixEKzEpKwoyNTYqYikpLFcrPTU7cmV0dXJuW24sV119OwpjdT1mdW5jdGlvbihuKXtyZXR1cm4gZy5keihuLmluZm8uQXcsVz0+Vy50eXBlPT09Myl9OwpDbmk9YXN5bmMgZnVuY3Rpb24obixXKXtyZXR1cm4gVz8obmV3IHVvKG4uSikpLmVuY3J5cHQoVyxuLk4pOld9OwpGSTE9YXN5bmMgZnVuY3Rpb24obixXKXtyZXR1cm4gVz9hd2FpdCAobmV3IHVvKG4uSikpLmRlY3J5cHQoVyxuLk4pOld9OwphNj1mdW5jdGlvbihuKXtuLlcucmVhZCgpLnRoZW4obi5ZLG4ub25FcnJvcikudGhlbih2b2lkIDAsZy5xZyl9OwpXcD1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKGdaKDYsMTE3MCxuLkFPKSlyZXR1cm4gbmV3IE9fcihuLEQpO249bi5XRCgpO3JldHVybiBiP3lXKCk/bmV3IG4zKG4sVyxELHYpOm5ldyBQSGoobixXLEQsdik6bmV3IFpfQyhuLEQsdil9OwpEeD1mdW5jdGlvbihuLFcsRCl7bi5OJiYoZTUobi5OLFcpLFc9bi5OLG4uTj1udWxsKTt2YXIgYj0wLHY9MDtmb3IobGV0IEwgb2Ygbi5Bdyl7aWYoTC5yYW5nZSYmYitMLko8PW4uSil7Yis9TC5KO2NvbnRpbnVlfWlmKGhKKEwpJiYhRCYmbi5KK1cudG90YWxMZW5ndGgtdjxiK0wuSil7KHtZOTpuLk59PVcuc3BsaXQodikpO2JyZWFrfWE6e3ZhciBrPW47dmFyIGg9TCx4PW4uSi1iO2xldCBlPVcudG90YWxMZW5ndGgtdjtoLnJhbmdlJiYoZT1NYXRoLm1pbihoLkoteCxlKSk7aD1HUChoLGguTit4LGUsaC5yYW5nZT9oLk4reCtlPT09aC5yYW5nZS5sZW5ndGg6ISFEKTt4PWdkKFcsdixlKTtoPW5ldyBiOChoLHgpO2lmKGsualMubGVuZ3RoJiYoeD1rLmpTW2sualMubGVuZ3RoLTFdLmooaCkpKXtrLmpTW2sualMubGVuZ3RoLTFdPXg7az1lO2JyZWFrIGF9ay5qUy5wdXNoKGgpO2s9ZX1uLkorPWs7dis9aztiKz1MLko7aWYodj09PVcudG90YWxMZW5ndGgpYnJlYWt9fTsKYnU9ZnVuY3Rpb24obil7cmV0dXJuIFVZKG4ubm4sUjAoNjQsMzUzNixuLlNPLkFPKSl9Owp2cD1mdW5jdGlvbihuKXtuLlhiLk89KDAsZy5SKSgpO249YnUobik7bi5qPSgwLGcuUikoKTtuLnN0YXJ0ZWQrPTF9OwprWj1mdW5jdGlvbihuLFcsRCxiLHY9ITEpe24udGltaW5nLkhEKCgwLGcuUikoKSxXLEQpO1c9bi5YYjtXLko9MDtXLlY9MDtXLkQ9MDt6aihidShuKSx2KTtiJiYoYj1idShuKSxiLlcrPTEpO24uVWo/Lk8obi5TTy5BTyl9OwpoVT1mdW5jdGlvbihuLFc9ITEpe2lmKG4ubGFzdEVycm9yPT09InVtcC5zcHNyZWplY3RmYWlsdXJlIiluLnRpbWluZy5iZHx8d0Eobi5YYiwhMSxuLlNPLG4ucG9saWN5LG4ubm4pO2Vsc2V7aWYobi5sYXN0RXJyb3I9PT0ibmV0LnRpbWVvdXQiKW4udGltaW5nLnlFKCgwLGcuUikoKSk7ZWxzZXt2YXIgRD1uLnRpbWluZztURChELCgwLGcuUikoKSxELlgpfW4ubGFzdEVycm9yPT09Im5ldC5ub2NvbnRlbnQiPysrbi5YYi5EOigoRD1uLmxhc3RFcnJvcj09PSJuZXQudGltZW91dCJ8fG4ubGFzdEVycm9yPT09Im5ldC5jb25uZWN0Inx8bi5sYXN0RXJyb3I9PT0ibmV0LmNsb3NlZCIpJiYhZ1ooNiwxMTcwLG4uU08uQU8pP29FaShidShuKSxXKTp5ZihidShuKSxXKSxuLnRpbWluZy5iZHx8d0Eobi5YYixELG4uU08sbi5wb2xpY3ksbi5ubikpfW4uWWEudlYoNSl9Owp4Wj1mdW5jdGlvbihuLFcsRCxiPSExLHY9ITEsaz0hMSl7cmV0dXJuIFc+PTQwMHx8az8obi5sYXN0RXJyb3I9az8icHJvYmUubmV0LmJhZHN0YXR1cyI6Im5ldC5iYWRzdGF0dXMiLCEwKTp2PyhuLmxhc3RFcnJvcj0idW1wLnNwc3JlamVjdGZhaWx1cmUiLCEwKTpEfHxiPyExOihuLmxhc3RFcnJvcj1XPT09MjA0PyJuZXQubm9jb250ZW50IjoibmV0LmNvbm5lY3QiLCEwKX07CkwzPWZ1bmN0aW9uKG4sVyl7aWYobi5wb2xpY3kuYiQpcmV0dXJuITE7dmFyIEQ9Vy5nZXRSZXNwb25zZUhlYWRlcigiY29udGVudC10eXBlIiksYj1XLmlpKCk7bj0hYnx8Yjw9bi5wb2xpY3kub2M7cmV0dXJuKCFXLkdwKCl8fCFEfHxELmluZGV4T2YoInRleHQvcGxhaW4iKSE9PS0xKSYmbn07CmVWPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9IiI7Vz1XLnNOKCk7Vy50b3RhbExlbmd0aDw9bi5wb2xpY3kub2MmJihuPXRSKFcpLG49cFIobiksRD1nWChuKT9uOiIiKTtyZXR1cm4gRH07CmdDPWZ1bmN0aW9uKG4pe3ZhciBXPW4udGltaW5nLkQoKTtXLnNob3N0PVIwKDk2LDM1Njgsbi5TTy5BTyk7bi5wb2xpY3kuQ3UmJm4ucG9saWN5LnZYJiYoVy5jc3JjPTEpO3JldHVybiBXfTsKVXdiPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4/Lm1heFdpZHRoPlc/Lm1heFdpZHRofHxuPy5tYXhIZWlnaHQ+Vz8ubWF4SGVpZ2h0fTsKeWFqPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIG9mIFcua2V5cygpKXtsZXQgYj1XLmdldChEKTtpZihiLmxlbmd0aD09PTApY29udGludWU7Zy5iZihiLChoLHgpPT54Lm1heEZyYW1lcmF0ZS1oLm1heEZyYW1lcmF0ZSk7CmxldCB2PVtiWzBdXSxrPTA7Zm9yKGxldCBoPTE7aDxiLmxlbmd0aDtoKyspVXdiKGJbaF0sdltrXSkmJih2LnB1c2goYltoXSksaysrKTtuPW4uY29uY2F0KHYpfXJldHVybiBufTsKaV9iPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9W107Zm9yKGxldCBiIG9mIFcpVz1FdGpbYl18fDAsbi5OJiZXPm4uTnx8RC5wdXNoKGIpO3JldHVybiBEfTsKWHU9ZnVuY3Rpb24obixXLEQpe3ZhciBiPXVkWltuXXx8W107RC5TKCJodG1sNV9zaG9ydHNfb25lc2llX21pc21hdGNoZWRfZml4IikmJihiPW90dFtuXXx8W10pO1cucHVzaCguLi5iKTtELlMoImh0bWw1X2Vhcmx5X21lZGlhX2Zvcl9kcm0iKSYmVy5wdXNoKC4uLihkd3Rbbl18fFtdKSl9Owp6eFM9ZnVuY3Rpb24obixXKXt2YXIgRD1WeihuKSxiPW4uRygpLHY9Yi5XO2I9Yi5TKCJodG1sNV9zaG9ydHNfb25lc2llX21pc21hdGNoZWRfZml4Iik7dmFyIGs9bi5OUCgpO2lmKGIpe2lmKCF2Lk4pe2lmKGsmJnFxKXJldHVybiBxcTtpZihHSSlyZXR1cm4gR0l9fWVsc2UgaWYoR0kmJiF2Lk4pcmV0dXJuIEdJO3ZhciBoPVtdLHg9W10sTD17fSxlPXRVLmNvbmNhdCgkWik7YiYmKGU9dFUuY29uY2F0KHJDKSk7bi5TKCJodG1sNV9lYXJseV9tZWRpYV9mb3JfZHJtIikmJihlPWUuY29uY2F0KHNHKSxuLlMoImFsbG93X3ZwOV8xMDgwcF9tcV9lbmMiKSYmZS5wdXNoKE5xKSk7dmFyIEc9Wy4uLnAzXTtuLlMoImh0bWw1X2lhbWZfYXVkaW9fb25lc2llX2ZtdCIpJiZHLnB1c2goWyI3NzMiXSk7Zm9yKHZhciByIG9mIGUpe2U9ITE7Zm9yKGxldCBIIG9mIHIpe3ZhciBOPVNNKEgsayYmYik7aWYoIU58fCFOLnZpZGVvKWNvbnRpbnVlO2lmKE4uTVcoKSYmIUQuZSQmJk4udmlkZW8ucXVhbGl0eU9yZGluYWw+CkQublMpY29udGludWU7bGV0IEE9Zy5kTShuLkcoKS5leHBlcmltZW50cywiaHRtbDVfZHJtX2J5dGVyYXRlX3NvZnRfY2FwIik7aWYoQT4wJiZVTihOKSYmTi5Ocz5BKWNvbnRpbnVlO2lmKGUpe2gucHVzaChIKTtYdShILGgsbik7Y29udGludWV9Tj1zRChELE4sdik7Tj09PSEwPyhlPSEwLGgucHVzaChIKSxYdShILGgsbikpOkxbSF09Tn19Zm9yKGxldCBIIG9mIEcpZm9yKGxldCBBIG9mIEgpe3I9QXUoQSk7aWYoIXJ8fCFyLmF1ZGlvfHwhbi5TKCJodG1sNV9vbmVzaWVfNTFfYXVkaW8iKSYmci5WKCkpY29udGludWU7cj1zRChELHIsdik7aWYocj09PSEwKXt4LnB1c2goQSk7WHUoQSx4LG4pO2JyZWFrfWVsc2UgTFtBXT1yfWlmKCFuLlMoImh0bWw1X2VuYWJsZV9hdWRpb19xdWFsaXR5X3NldHRpbmciKSl7bj1bIjE0MSIsIjc3NCJdO2ZvcihsZXQgSCBvZiBuKXguaW5jbHVkZXMoSCkmJihnLkZJKHgsSCksTFtIXT0iYmxraHFhIil9RC5XJiZXKCJvcmZtdHMiLEwpO2lmKGIpcmV0dXJuIHYuTiYmCih2Lk49ITEscXE9R0k9dm9pZCAwKSxrP3FxPXt2aWRlbzpoLGF1ZGlvOnh9OkdJPXt2aWRlbzpoLGF1ZGlvOnh9O0dJPXt2aWRlbzpoLGF1ZGlvOnh9O3YuTj0hMTtyZXR1cm4gR0l9OwpqRk09ZnVuY3Rpb24obil7dmFyIFc9e30sRD1uLkwsYj1uLnlRLHY9bi5paixrPUQuZ2V0VmlkZW9EYXRhKCksaD1wNygwKTt2YXIgeD1ELmdldFZpc2liaWxpdHlTdGF0ZSgpO2IuUygiaHRtbDVfZW5hYmxlX2F1ZGlvX3F1YWxpdHlfc2V0dGluZyIpJiYoVy5pQj1iLmlCKTtoJiYoVy5pSD1oLFcubGFzdE1hbnVhbERpcmVjdGlvbj1Sc3goKSxoPVVQKCl8fDAsaD4wJiYoaD0oYi5TKCJodG1sNV91c2VfZGF0ZV9ub3dfZm9yX2xvY2FsX3N0b3JhZ2UiKT9EYXRlLm5vdygpOigwLGcuUikoKSktaCxiLlMoImh0bWw1X3VzZV9kYXRlX25vd19mb3JfbG9jYWxfc3RvcmFnZSIpP2g+MCYmKFcudGltZVNpbmNlTGFzdE1hbnVhbEZvcm1hdFNlbGVjdGlvbk1zPWgpOlcudGltZVNpbmNlTGFzdE1hbnVhbEZvcm1hdFNlbGVjdGlvbk1zPWgpKTtpZih2Lk98fGIuUygiaHRtbDVfc2Ficl91Z2Nfdm9kX3dlYl9lbWJlZGRlZF9jbGllbnRfZGVmYXVsdF9iYW5kd2lkdGhfb25faXBob25lIikmJnc4KWg9CmIuUygiaHRtbDVfZGlzYWJsZV9iYW5kd2lkdGhfY29mYWN0b3JzX2Zvcl9zYWJyX2xpdmUiKT8hIW4ub1o/LmZSOiExLFcuSSQ9R0QodiwhaCk7dmFyIEw9TkcubWVkaXVtLGU9TWF0aC5mbG9vcihMKjE2LzkpLEc9ay5OUCgpfHwoay5OJiZrLlcmJmsuVy52aWRlb0luZm9zLmxlbmd0aCE9PTA/ay5XLnZpZGVvSW5mb3NbMF0uaXNWZXJ0aWNhbCgpOiExKTtoPUc/TDplO2U9Rz9lOkw7Rz1ELlNpKCk7TD1HLndpZHRoO0c9Ry5oZWlnaHQ7Vy5zQT1NYXRoLm1heChMLGgpO1cuWUE9TWF0aC5tYXgoRyxlKTtiLlMoImh0bWw1X2VuYWJsZV9jbGllbnRfdmlld3BvcnRfc2l6ZV9sb2dnaW5nIikmJmIuV1goKSYmKGg9RC5NaCgpLEQuVSgiY3Z3Iix7dzpMLGg6Ryxjdnc6Vy5zQSxjdmg6Vy5ZQSxjdnU6aC5OfSkpO1cudmlzaWJpbGl0eT14O1cuWkk9Zy52SSgpO1cuZnE9RC5sNSgpKjFFMzt4PW4uTC52JCgpO1cuTk89e2RlZmF1bHRQb2xpY3k6eD8uRHI/Lk58fDAsc21vb3RoOng/LnpOPy5OfHwKMCx2aXNpYmlsaXR5Ong/LmN3Py5OfHwwLE9iOng/LkFFPy5OfHwwLHBlcmZvcm1hbmNlOng/LmlQPy5OfHwwLHNwZWVkOng/LlhOPy5OfHwwfTtXLlROPXg/LlFZPy5OfHwwO2lmKG4uaHF8fG4uQ3gmJiFuLmdEKWg9Yi5adCgpLk4uUVEobGlaKT8/MCxoPjAmJiFXLlROJiYoTD0oeD8uRHJ8fFlaKS5jb21wb3NlKG5ldyBiMygwLGgsITEsInAiKSksVy5OTy5kZWZhdWx0UG9saWN5PUwuTixELlUoImxzbCIse3FjOmh9KSksay5saXZlUHJlbG9hZCYmay5TKCJodG1sNV9hbGxvd19tdWx0aXZpZXdfdGlsZV9wcmVsb2FkIikmJiFrLkcoKS5adCgpLk4uUVEoSHApJiYoeD0oeD8uRHJ8fFlaKS5jb21wb3NlKG5ldyBiMygwLDI0MCwhMSwicCIpKSxXLk5PLmRlZmF1bHRQb2xpY3k9eC5OKTt4PW4uaHF8fGsuWjk/W3t0cmFja1R5cGU6MSxpc0hkcjohMX0se3RyYWNrVHlwZToyLGlzSGRyOiExfSx7dHJhY2tUeXBlOjIsaXNIZHI6ITB9LHt0cmFja1R5cGU6Myxpc0hkcjohMX0se3RyYWNrVHlwZTozLAppc0hkcjohMH0se3RyYWNrVHlwZTo0LGlzSGRyOiExfSx7dHJhY2tUeXBlOjQsaXNIZHI6ITB9LHt0cmFja1R5cGU6NSxpc0hkcjohMX0se3RyYWNrVHlwZTo1LGlzSGRyOiEwfV06W3t0cmFja1R5cGU6MSxpc0hkcjohMX0se3RyYWNrVHlwZToyLGlzSGRyOiExfSx7dHJhY2tUeXBlOjIsaXNIZHI6ITB9XTtXLmtjPW4uYXV0aG9yaXplZEZvcm1hdHMmJm4uYXV0aG9yaXplZEZvcm1hdHMubGVuZ3RoPjA/e2F1dGhvcml6ZWRGb3JtYXRzOm4uYXV0aG9yaXplZEZvcm1hdHN9OnthdXRob3JpemVkRm9ybWF0czp4fTtuLnNhYnJMaWNlbnNlQ29uc3RyYWludCYmKFcua2Muc2FickxpY2Vuc2VDb25zdHJhaW50PW4uc2FickxpY2Vuc2VDb25zdHJhaW50KTtpZihiLlMoImh0bWw1X29uZXNpZV9tZWRpYV9jYXBhYmlsaXRpZXMiKXx8TEEoaykpVy5ZZj0zO2lmKGIuUygiaHRtbDVfb25lc2llX2F1ZGlvX29ubHlfcGxheWJhY2siKSYmUlEoayl8fG4ub1o/Lk4mJmxvKGIpPT09IlRWSFRNTDVfQVVESU8iKVcuWWY9CjE7bi5vWj8ueUUmJm4ub0cmJihXLllmPVcuWWY9PT12b2lkIDA/NzpXLllmfDQpO3g9ay5lJD9rLmUkOlZ6KGspO2lmKGIuUygiaHRtbDVfb25lc2llX21lZGlhX2NhcGFiaWxpdGllcyIpKXtoPWIuVztMPVtdO2U9W107Rz1iLlMoImh0bWw1X3Nob3J0c19vbmVzaWVfbWlzbWF0Y2hlZF9maXgiKTt2YXIgcj1rLk5QKCksTj10VS5jb25jYXQoJFopO0cmJihOPXRVLmNvbmNhdChyQykpO2IuUygiaHRtbDVfZWFybHlfbWVkaWFfZm9yX2RybSIpJiYoTj1OLmNvbmNhdChzRyksYi5TKCJhbGxvd192cDlfMTA4MHBfbXFfZW5jIikmJk4ucHVzaChOcSkpO3ZhciBIPVsuLi5wM107Yi5TKCJodG1sNV9pYW1mX2F1ZGlvX29uZXNpZV9mbXQiKSYmSC5wdXNoKFsiNzczIl0pO2Zvcih2YXIgQSBvZiBOKWZvcih2YXIgeSBvZiBBKXtOPVNNKHksciYmRyk7aWYoIU58fCFOLnZpZGVvKWNvbnRpbnVlO2xldCBRPWcuZE0oYi5leHBlcmltZW50cywiaHRtbDVfZHJtX2J5dGVyYXRlX3NvZnRfY2FwIik7CmlmKCEoUT4wJiZVTihOKSYmTi5Ocz5RKSYmc0QoeCxOLGgpPT09ITApe0wucHVzaCh7dmlkZW9Db2RlYzpmM1tZZ1t5XV0sbWF4V2lkdGg6Ti52aWRlby53aWR0aCxtYXhIZWlnaHQ6Ti52aWRlby5oZWlnaHQsbWF4RnJhbWVyYXRlOk4udmlkZW8uZnBzfSk7YnJlYWt9fWZvcih2YXIgVCBvZiBIKWZvcih2YXIgeiBvZiBUKWlmKChBPUF1KHopKSYmQS5hdWRpbyYmKGIuUygiaHRtbDVfb25lc2llXzUxX2F1ZGlvIil8fCFBLlYoKSkmJnNEKHgsQSxoKT09PSEwKXtlLnB1c2goe2F1ZGlvQ29kZWM6SlVbWWdbel1dLG51bUNoYW5uZWxzOkEuYXVkaW8ubnVtQ2hhbm5lbHN9KTticmVha31XLm1lZGlhQ2FwYWJpbGl0aWVzPXt2aWRlb0Zvcm1hdENhcGFiaWxpdGllczpMLGF1ZGlvRm9ybWF0Q2FwYWJpbGl0aWVzOmV9fWlmKG4ub1o/LkR0KCkpe0E9bi5JODt5PW4ubGw7aD1uLm9aPy5OcztUPVtdO3o9W107TD1uZXcgTWFwO2U9KGU9ay5KKT9lLml0YWc6dm9pZCAwO0c9ay5XPy52aWRlb0luZm9zOwpHPUc/Lmxlbmd0aD9HW0cubGVuZ3RoLTFdLml0YWc6dm9pZCAwO2U9IVZUKCkmJmUhPT12b2lkIDAmJkE/LmluY2x1ZGVzKE51bWJlcihHKSk7Rz1rLnl3Lk47Zm9yKHZhciBDIG9mIEcudmFsdWVzKCkpQy5lUz96LnB1c2goe2F1ZGlvQ29kZWM6SlVbQy5JQl0sbnVtQ2hhbm5lbHM6Qy5udW1DaGFubmVscyxzcGF0aWFsQ2FwYWJpbGl0eUJpdG1hc2s6VFhNW0MuSUJdfSk6KEc9ZjNbQy5JQl0scj1DLm1heEJpdHJhdGVCcHN8fDAsSD1oP2gqODowLHI9e3ZpZGVvQ29kZWM6RyxtYXhXaWR0aDp5JiYhZT84NTQ6Qy5tYXhXaWR0aHx8MCxtYXhIZWlnaHQ6eSYmIWU/NDgwOkMubWF4SGVpZ2h0fHwwLG1heEZyYW1lcmF0ZTpDLm1heEZyYW1lcmF0ZXx8MCxpczEwQml0U3VwcG9ydGVkOkMuejl8fCExLG1heEJpdHJhdGVCcHM6SCYmcj9NYXRoLm1pbihILHIpOkh8fHIsZWZmaWNpZW50OiEwfSxHPWAke0d9XyR7Qy56OX1gLEg9TC5nZXQoRyl8fFtdLEgucHVzaChyKSxMLnNldChHLEgpKTsKVD15YWooVCxMKTtDPUEmJiFlP1suLi5BXTpbXTtrLlMoImh0bWw1X3NzZmZfZGVueWxpc3Rfb3B1c19sb3ciKSYmQy5wdXNoKDI0OSwzNTApO1Z6KGspO1cubWVkaWFDYXBhYmlsaXRpZXM9e3ZpZGVvRm9ybWF0Q2FwYWJpbGl0aWVzOlQsYXVkaW9Gb3JtYXRDYXBhYmlsaXRpZXM6eixoZHJNb2RlQml0bWFzazozLHBlclBsYXliYWNrQXR0cmlidXRlczpDLmxlbmd0aD97aXRhZ0RlbnlsaXN0OkN9Ont9fX1XLnVxPVZUKCk7bi5vWj8uTiYmKFcuYnY9eC5idixXLm5TPW4ub1o/Lm5TKTtiLnlFJiYoVy5FYj1iLnlFKTtXLm5SPW4ublI7Vy5Zcz1uLllzO1cuZXE9bi5lcTtXLmo0PW4uajQ7bi5weiYmKFcubHE9KDAsZy5SKSgpLW4ucHopO24uSiQmJihXLkokPW4uSiQpO05zfHwoVy5aQz0hMCk7Qz0kcyh2KSoxRTM7Qz4wJiYoVy5YRD1DKTtEPUQuZ2V0UGxheWJhY2tSYXRlKCk7RCE9PTEmJihXLnBsYXliYWNrUmF0ZT1EKTtuLm9aPy5MQiYmbi5HNyYmKFcua0U9bi5rRSxXLlVtPW4uVW0sClcuRzc9bi5HNyk7WWQoKT09PTEmJihXLms4PTEpO2IuUygiaHRtbDVfc2Ficl9mb3JjZV9wcm94aW1hIikmJihXLlZYPTEpO0Q9Zy5kTShiLmV4cGVyaW1lbnRzLCJodG1sNV9zYWJyX2ZvcmNlX21heF9uZXR3b3JrX2ludGVycnVwdGlvbl9kdXJhdGlvbl9tcyIpO1cucDY9RD4wP0Q6di5pbnRlcnJ1cHRpb25zWzBdfHwwO24ub1o/LllaJiYoVy5yMD1uLnIwKTtiLkhKJiYoVy5hdWRpb1RyYWNrSWQ9Yi5ISik7ay5aaCgpJiYhVy5hdWRpb1RyYWNrSWQmJihiLlMoImh0bWw1X2ZpbGxfZGVmYXVsdF9tb3NhaWNfYXVkaW9fdHJhY2tfaWQiKXx8KG49bGooayksVy5hdWRpb1RyYWNrSWQ9biksaz8uVSgibWlzc3Rya2NoZyIseyJkZWZhdWx0IjpXLmF1ZGlvVHJhY2tJZH0pKTtpZihuPW5hdmlnYXRvci5jb25uZWN0aW9uPy50eXBlfHwiIilXLmRldGFpbGVkTmV0d29ya1R5cGU9SXFbbl18fElxLm90aGVyOyFiLlMoImh0bWw1X2VuYWJsZV92b2ljZV9ib29zdCIpfHxrLk5QKCl8fGsuaXNBZCgpfHwKKFcucU09Yi5taCk7cmV0dXJuIFd9OwpTVj1mdW5jdGlvbihuLFcsRCxiLHYsayxoKXt2YXIgeD17fTtXJiYoeC5xJD1XKTtpZighbilyZXR1cm4geDt4LnBsYXliYWNrQ29va2llPUQ/LnBsYXliYWNrQ29va2llO3YmJih4LmROPXYpO3gudXQ9W107eC5ycT1bXTtpZihoPy5zaXplKWZvcihsZXQgTCBvZiBoLnZhbHVlcygpKXgucnEucHVzaChMKTtpZihuLnNhYnJDb250ZXh0VXBkYXRlcy5zaXplPjApZm9yKGxldCBMIG9mIG4uc2FickNvbnRleHRVcGRhdGVzLnZhbHVlcygpKUNIaCh4LEwsYik7Zy5ZTihuKSYmayYmQ0hoKHgsayxiKTtXPW4uRygpLk47eC5jbGllbnRJbmZvPXtjbGllbnROYW1lOkJYdFtXLmMudG9VcHBlckNhc2UoKV18fDB9O1cuY2JyYW5kJiYoeC5jbGllbnRJbmZvLmRldmljZU1ha2U9Vy5jYnJhbmQpO1cuY21vZGVsJiYoeC5jbGllbnRJbmZvLmRldmljZU1vZGVsPVcuY21vZGVsKTtXLmN2ZXImJih4LmNsaWVudEluZm8uY2xpZW50VmVyc2lvbj1XLmN2ZXIpO1cuY29zJiYoeC5jbGllbnRJbmZvLm9zTmFtZT0KVy5jb3MpO1cuY29zdmVyJiYoeC5jbGllbnRJbmZvLm9zVmVyc2lvbj1XLmNvc3Zlcik7Vz1uLkcoKTtXLlMoImh0bWw1X3NhYnJfZW5hYmxlX3NlcnZlcl94dGFnX3NlbGVjdGlvbiIpJiZXLlJhJiYoeC5jbGllbnRJbmZvLmhsPVcuUmEpO24uQngmJih4LkJ4PW4uQngpO3JldHVybiB4fTsKQ0hoPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1XLnR5cGV8fDA7RD8uaGFzKGIpP24ucnEucHVzaChXKTpuLnV0LnB1c2goYil9OwpGYU09ZnVuY3Rpb24obil7aWYoISh5cyhuLmluZm8pJiZuLmluZm8uUW4oKSYmbi5wb2xpY3kuc1YmJm4uZTEpfHxuLmluZm8uWGIuSj49Mnx8cDcoKT4wfHwhSU8oKSlyZXR1cm4hMTt2YXIgVz1uLlNPLmdldCgiYWl0YWdzIik7aWYoIVcpcmV0dXJuITE7Vz1HNShXKS5zcGxpdCgiLCIpO3ZhciBEPVtdO2ZvcihsZXQgYiBvZiBuLmUxKWcuamooVyxiKSYmRC5wdXNoKGIpO2lmKCFELmxlbmd0aClyZXR1cm4hMTtuLlNPLnNldCgiYWx0aXRhZ3MiLHFoKEQuam9pbigiLCIpKSk7cmV0dXJuITB9Owp3S2o9ZnVuY3Rpb24obixXLEQ9ITEpe2cuWGooVyk7bi50NS5sYXN0RXJyb3I9InBsYXllci5leGNlcHRpb24iO24uZXJyb3JNZXNzYWdlPWAke1cubmFtZX1fJHtXLm1lc3NhZ2V9YDtEP2cubUsoKCk9PntoVShuLnQ1KX0pOmhVKG4udDUpfTsKTUFNPWZ1bmN0aW9uKG4pe24uZXcmJihuLnhoci5zdGF0dXM9bi5ldyxuLmxOPW4uZXcpfTsKUnhqPWZ1bmN0aW9uKG4sVyl7bi50aW1pbmcuYmQ9ITA7bi54aHIuR3AoKSYmbi50aW1pbmcuVEMoKTtuLnBvbGljeS5OZCYmbi5UMj8uc3RvcCgpO0R4KG4uV28sVywhMSl9OwpRRnc9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4ucVk/TWF0aC5tYXgoVyxEL24ucVkpOlcsdj1uLmlqLkouVzt2JiYoYj1XLG4ucVkmJihiPU1hdGgubWF4KFcsRC9uLnFZKnYpKSk7QnUobi5paixXLEQsYil9OwpWQVM9ZnVuY3Rpb24obixXLEQsYix2LGspe24uTyYmKG4uTy5hZGQoTWF0aC5yb3VuZChXKSksbi5PLmFkZChNYXRoLnJvdW5kKEQpKSxuLk8uYWRkKE1hdGgucm91bmQoYikpLG4uTy5hZGQoTWF0aC5yb3VuZCh2KSksbi5PLmFkZChNYXRoLnJvdW5kKGspKSxuLk8uYWRkKE1hdGgucm91bmQobi52WCkpKX07CmNhdD1mdW5jdGlvbihuLFcsRCl7c3dpdGNoKFcpe2Nhc2UgNjg6bi5aYihEKTticmVhaztjYXNlIDM1Om4uc3koRCk7YnJlYWs7Y2FzZSA0NDpuLklyKEQpO2JyZWFrO2Nhc2UgNDM6bi5yTihEKTticmVhaztjYXNlIDUzOm4ua0ooRCk7YnJlYWs7Y2FzZSA1NjpuLk9lKCk7YnJlYWs7Y2FzZSA1NzpuLnlUKEQpO2JyZWFrO2Nhc2UgNDI6bi5XbChEKTticmVhaztjYXNlIDQ1Om4udVEoRCk7YnJlYWs7Y2FzZSA1OTpuLmdZKEQpO2JyZWFrO2Nhc2UgNTE6bi5DWChEKTticmVhaztjYXNlIDQ5Om4uTiQoRCk7YnJlYWs7Y2FzZSA1MDpuLkZYKEQpO2JyZWFrO2Nhc2UgNDc6bi5BcShEKTticmVhaztjYXNlIDU4Om4uc1coRCk7YnJlYWs7Y2FzZSA2MTpuLkhFKEQpO2JyZWFrO2Nhc2UgNzI6bi5ZYS5UcSgpO2JyZWFrO2Nhc2UgNjY6bi56cChEKTticmVhaztjYXNlIDQ2Om4udnQoRCk7YnJlYWs7Y2FzZSA2NzpuLm9uU25hY2tiYXJNZXNzYWdlKEQpO2JyZWFrO2Nhc2UgNzE6Vz1tayhELApJbGopLG4uWWEuSUYoVyl9fTsKYWlNPWZ1bmN0aW9uKG4pe0FVPW59OwpuajE9ZnVuY3Rpb24obixXLEQpe24udTkuZ2V0KFcpLm9uUHJvZ3Jlc3M9RH07Cm1lPWZ1bmN0aW9uKG4sVyl7bi5nRihXKSYmKEFVP24udTkuZ2V0KFcpLkZtLmNsZWFyKCk6bi51OS5nZXQoVykualM9bmV3IFM1LG4uSihXKSxuLlg9ITApfTsKVyRqPWZ1bmN0aW9uKG4pe2ZvcihsZXQgW1csRF1vZiBuLnU5KXtsZXQgYj1XO0QuRG98fG1lKG4sYil9fTsKRDZ4PWZ1bmN0aW9uKG4sVyl7bj1uLnU5LmdldChXKTtpZighbilyZXR1cm4gMDtXPTA7aWYobi5Bdy5sZW5ndGg+MCl7Zm9yKGxldCBEIG9mIG4uQXcpVys9RC5yYW5nZT8ubGVuZ3RofHwwO3JldHVybiBXfWlmKG4uQnQubGVuZ3RoPjApZm9yKGxldCBEIG9mIG4uQnQpVys9RC5lSHx8MDtyZXR1cm4gVytuLk1vfTsKSzM9ZnVuY3Rpb24obixXKXtpZihBVSl7bGV0IEQ9MDtuPW4udTkuZ2V0KFcpO2lmKCFuPy5GbSlyZXR1cm4gMDtmb3IobGV0IGIgb2Ygbi5GbS52YWx1ZXMoKSlEKz1iLmRhdGEudG90YWxMZW5ndGg7cmV0dXJuIER9cmV0dXJuIG4udTkuZ2V0KFcpPy5qUy5qKCl8fDB9OwpPRz1mdW5jdGlvbihuLFcpe249bi51OS5nZXQoVyk7aWYoQVUpe2lmKCFuPy5EbylyZXR1cm4hMTtXPW4uRm0uc2l6ZT4wO3JldHVybiBuLnBKLmxlbmd0aD4wfHxXfXJldHVybiEhbj8uRG8mJiEhbj8ualMuaigpfTsKYmVyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi51OS5nZXQoVyksYj1ENngobixXKSx2PSFiJiYhIUQuYnl0ZXNSZWNlaXZlZDtpZihBVSl7aWYobi5LdT8uelcpe2Zvcih2YXIgayBvZiBELkZtLnZhbHVlcygpKWlmKCFrLmtuKXJldHVybiExO3JldHVybiB2fX1lbHNlIGlmKGs9bi5tNihXKSx2JiZuLlcmJmshPT12b2lkIDApcmV0dXJuIGs7cmV0dXJuKHZ8fEQuYnl0ZXNSZWNlaXZlZD09PWIpJiZELmJ5K0szKG4sVyk9PT1ELmJ5dGVzUmVjZWl2ZWR9OwpQcD1mdW5jdGlvbihuLFcsRCxiKXtXPXZqdyhuLFcsRCk7RD1ELmF1O2IuQXcucHVzaCguLi5XKTtpZihBVSliLmNCLmhhcyhEKXx8Yi5jQi5zZXQoRCxbXSksYi5jQi5nZXQoRCkucHVzaCguLi5XKTtlbHNlIGlmKGIuV28pZm9yKGxldCB2IG9mIFcpYi5Xby5Bdy5wdXNoKHYpO2Vsc2UgYi5Xbz1uZXcga0JoKFsuLi5iLkF3XSksbi5vWj8uSHgmJmcudShuLGIuV28pO3JldHVybiBXfTsKdmp3PWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLkt1Py5KLmdldChXKTtpZighYilyZXR1cm5bXTtpZihELk9KKXJldHVybiBiLlkoMCxELmNsaXBJZCk/LkF3fHxbXTtpZihiLlcoKSl7dmFyIHY9RC5zdGFydE1zLGs9RC5kdXJhdGlvbk1zLGg9MUUzO24ub1o/Lk4mJkQudGltZVJhbmdlJiYodj1ELnRpbWVSYW5nZS5zdGFydFRpY2tzPz8tMSxrPUQudGltZVJhbmdlLmw4Pz8tMSxoPUQudGltZVJhbmdlLnRpbWVzY2FsZT8/LTEpO2lmKEQuenY8MHx8RC5QUDwwfHxrPDB8fHY8MHx8RC5lSDwwfHxoPDApcmV0dXJuIG1lKG4sVyksW107bj1XXyhELnp2LEQuZUgpO1c9RC5kR3x8MDtyZXR1cm5bbmV3IHFJKDMsYixuLCJtYWtlU2xpY2VJbmZvc01lZGlhQnl0ZXMiLEQuUFAtMSx2L2gsay9oLFcsbi5sZW5ndGgtVyx2b2lkIDAsRC52RCxELmNsaXBJZCxELkhmIT09dm9pZCAwKV19aWYoRC5QUDwwKXJldHVybiBtZShuLFcpLFtdO2lmKG4uS3U/LnpXKXJldHVybiBrPWIucmIsaD1rKmIuaW5mby5OcywKVz1ELmRHLG4ub1o/Lk4mJm4uVi50ZCgpIT09Ik9ORVNJRSImJkQudGltZVJhbmdlJiYhVyYmKHY9RC50aW1lUmFuZ2Uuc3RhcnRUaWNrcy9ELnRpbWVSYW5nZS50aW1lc2NhbGUpLFtuZXcgcUkoMyxiLHZvaWQgMCwibWFrZVNsaWNlSW5mb3NNZWRpYUJ5dGVzIixELlBQLHYsayxXLGgsITAsRC52RCxELmNsaXBJZCxELkhmIT09dm9pZCAwKV07aWYobi5vWj8uUXImJmIgaW5zdGFuY2VvZiBydCl7aWYoIWIuTigpKXJldHVybiBuLnU5LmdldChXKS5XcS5zZXQoRC5hdSxEKSxbXTtuPUQuUFAtMTt2PWIuaW5kZXguZ2V0U3RhcnRUaW1lKG4pO2s9Yi5pbmRleC5nZXREdXJhdGlvbihuKTtyZXR1cm5bbmV3IHFJKDMsYix2b2lkIDAsIm1ha2VTbGljZUluZm9zTWVkaWFCeXRlcyIsbix2LGssMCxrKmIuaW5mby5Ocyx2b2lkIDAsdm9pZCAwLHZvaWQgMCxELkhmIT09dm9pZCAwKV19cmV0dXJuW119OwpoNzI9ZnVuY3Rpb24obixXLEQpe24uS3U9VztuLm9aPUQ7Zm9yKGxldCBbYix2XW9mIG4udTkpe1c9YjtEPXY7Zm9yKGxldCBrIG9mIEQucDkpUHAobixXLGssRCl9fTsKeDZ3PWZ1bmN0aW9uKG4pe3JldHVybiBuLndEKCkmJiFuLkFkfTsKVUc9ZnVuY3Rpb24obil7aWYobi5VOCE9PXZvaWQgMCl7dmFyIFc9bi5wb2xpY3kual8oKTtpZihXKXt2YXIgRD1XLmV4cG9ydHMuU2FiclJlcXVlc3RDb29yZGluYXRvcl9nZXRFdmVudHNDb3VudChuLlU4KTtpZihEPjApe3ZhciBiPVcuZXhwb3J0cy5TYWJyUmVxdWVzdENvb3JkaW5hdG9yX2dldEJhdGNoZWRFdmVudHMobi5VOCk7aWYoYil7Yj1XLm1lbW9yeS5idWZmZXIoYixEKjE2KTtiPW5ldyBVaW50MzJBcnJheShiLmJ1ZmZlcixiLmJ5dGVPZmZzZXQsRCo0KTtsZXQgaz0wO2ZvcihsZXQgaD0wO2g8RDtoKyspe3ZhciB2PWJba107bGV0IHg9YltrKzFdLEw9YltrKzJdLGU9YltrKzNdO3Y9PT0wP2UhPT0wJiYodj14JiZMPjA/bmV3IFM1KFtXLm1lbW9yeS5idWZmZXIoeCxMKS5zbGljZSgpXSk6bmV3IFM1KFtuZXcgVWludDhBcnJheSgwKV0pLG4ueUQud20oZSx2KSk6dj09PTEmJm4ueGhyLkdwKCkmJlp4KG4pO2srPTR9fVcuZXhwb3J0cy5TYWJyUmVxdWVzdENvb3JkaW5hdG9yX2NsZWFyRXZlbnRzKG4uVTgpfX19fTsKWng9ZnVuY3Rpb24obil7bi5wb2xpY3kuWTAmJm4uUHEmJiFuLmdVP24uZ1U9ITA6bi5uZi5UQygpfTsKTCQyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9LTEsYj0tMSx2PS0xO2lmKG4udFk/Lml0ZW1zKWZvcihsZXQgayBvZiBuLnRZLml0ZW1zKVc8ay5Ga3x8ay5GazxEfHwoRD1rLkZrLGI9ay5meix2PWsubWluUmVhZGFoZWFkTXMpO3JldHVybntxRTpELGZ6OmIsRFE6dn19Owp5Qj1mdW5jdGlvbihuKXtpZihuLlU4IT09dm9pZCAwKXJldHVybiBuLnBvbGljeS5qXygpLmV4cG9ydHMuU2FiclJlcXVlc3RDb29yZGluYXRvcl9nZXRNZWRpYUJ5dGVzKG4uVTgpfTsKZy5FRz1mdW5jdGlvbihuLFcsRCl7Zy52UChuLEQpfHxnLmdfKG4sVyxEKTtnLnZQKG4sInZpZGVvX3RvX2FkIil8fGcuZ18obixXLCJ2aWRlb190b19hZCIpO2cudlAobiwiYWRfdG9fdmlkZW8iKXx8Zy5nXyhuLFcsImFkX3RvX3ZpZGVvIik7Zy52UChuLCJhZF90b19hZCIpfHxnLmdfKG4sVywiYWRfdG9fYWQiKX07Cml1PWZ1bmN0aW9uKG4pe24uT3x8KG4uTz0oMCxnLlIpKCksZy5FRygibWJfcyIsbi5PLG4uelIpKX07CmU3Yj1mdW5jdGlvbihuKXtuLnR3fHwobi50dz0oMCxnLlIpKCksZy5FRygib3Zmc19ycCIsbi50dyxuLnpSKSl9OwpnajE9ZnVuY3Rpb24obil7bi5jSnx8KG4uY0o9KDAsZy5SKSgpLGcuRUcoIm9hZnNfcnAiLG4uY0osbi56UikpfTsKWFNoPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1XIGluc3RhbmNlb2YgdXUmJiFuLlgmJiFuLk4sdj0hbi5YJiZEPy5pbmZvLnZpZGVvO0Q9IW4uTiYmRD8uaW5mby5hdWRpbztXLnN0YXRlPT09Mz8oKHZ8fGIpJiZuLnRpY2soInZyciIpLChEfHxiKSYmbi50aWNrKCJhcnIiKSk6Vy5zdGF0ZT09PTQ/dj8obi5YPVcuV0QoKSxnLkR5KCksYlEoNCkpOkQmJihuLk49Vy5XRCgpKTpXIGluc3RhbmNlb2YgQUImJlcuUXkoKSYmdiYmKGcuRHkoKSxiUSg0KSl9OwpvcT1mdW5jdGlvbihuLFcsRCl7bi5KIT09VyYmKG4uVSgic2RhaSIse3NldHNzdDpXLG9sZDpuLkoscjpEfSksbi5KPVcpfTsKR0JiPWZ1bmN0aW9uKG4sVyxELGI9ITApe2lmKEQmJiFuLlRDLmhhcyhXLmokKSl7dmFyIHY9Vy5zdGFydFRpbWUsaz1bXTtmb3IodmFyIGg9MDtoPEQuTi5sZW5ndGg7aCsrKXt2YXIgeD1ELk5baF0sTD12O3Y9TCtELkpbaF07ay5wdXNoKHtzdGFydFRpbWU6TCxlbmRUaW1lOnYsYWRDcG46eH0pfW4uVEMuc2V0KFcuaiQsayl9bi5wb2xpY3kuZVYmJih2PW4uRCYmVy5qJD09PW4uRC5qJCsxLG4uRD1XLGs9bi5OJiZXLmokPT09bi5OLmokKzEsaz1uLk4mJnYmJmsmJm4uTi5mZi5ldmVudCE9PSJzdG9wIiYmbi5OLmZmLmV2ZW50IT09InByZWRpY3RTdGFydCIsaD1XLmZmfHxudWxsLHg9bi52aWRlb1RyYWNrLlBKLmluZGV4LngkKCkseD1XLmokPj14LEw9bi5LdS5pc01hbmlmZXN0bGVzcyxoPyhuLk4/LmZmLmV2ZW50PT09InByZWRpY3RTdGFydCImJm4uTi5qJDxXLmokJiZoLmV2ZW50PT09InN0b3AiJiZuLmxvYWRlci5oYW5kbGVFcnJvcigic3NkYWkubWlzc2luZ3N0YXJ0Y3VlZXZlbnQiLAp7bGFzdHByZWRpY3Q6bi5OPy5qJHx8MCxjc3E6Vy5qJH0sMCksbi5OPXtmZjpoLGokOlcuaiQsZks6ISFELGZZOmJ9LHg/bi5WaShoLFcuaiQpOkwmJih2P2s/bi5WaShoLFcuaiQpOmguZXZlbnQ9PT0iY29udGludWUifHxoLmV2ZW50PT09InN0b3AiP3EkMihuLFcpOm4uVmkoaCxXLmokKTpuLlZpKGgsVy5qJCkpKTooayYmcSQyKG4sVyksbi5KPT09NCYmb3Eobiw1LCJxZW5kIikpKX07CnJraj1mdW5jdGlvbihuLFcsRCxiLHYpe1chPT1uLk4/LmokfHxuLko9PT0xfHxifHxuLk4uZmYuZXZlbnQ9PT0icHJlZGljdFN0YXJ0Inx8bi5VKCJzZGFpIix7dW5kZWNldnQ6MSxzcTpXLG10OkQsZXZ0Om4uTi5mZi5ldmVudH0sITApO1c+bi5qJiYobi5qPU5hTixuLlY9TmFOKTtpZihuLk4mJm4uTi5qJD09PVcpe2lmKGI9bi5OLCFuLnBvbGljeS5YfHwhbi5wb2xpY3kuVTEpaWYodiYmYil7dmFyIGs9Yi5mZixoPXYuU0Qoayk7ay5ldmVudD09PSJwcmVkaWN0U3RhcnQiJiYobi5jSj1XKTtuLlUoInNkYWkiLHtvbnFldnQ6ay5ldmVudCxzcTpXLG10OkQsZ2FiOmgsY3N0Omsuc3RhcnRTZWNzLGN1ZWlkOm4ucG9saWN5LnlkJiYoaHx8ay5ldmVudD09PSJzdGFydCIpP2suaWRlbnRpZmllcjp2b2lkIDB9LCEwKTtoP2suZXZlbnQhPT0icHJlZGljdFN0YXJ0Ij8oay5ldmVudD09PSJzdGFydCImJm4uY0o9PT1XLTEmJm4uVSgic2RhaSIse2dhYm9uc3RhcnQ6V30pLGIuZks/b3EobiwKNCwiY3VlIik6KG4uaj1XLG4uVj1ELG4uVSgic2RhaSIse2pvaW5hZDpuLkosc2c6bi5qLHN0Om4uVi50b0ZpeGVkKDMpfSksbi5ZPURhdGUubm93KCksb3EobiwyLG4uSj09PTM/InN0YWZ0cHJlZCI6ImpvaW4iKSx0dmkodixiLmZmKSkpOihoPSQ2aChuKSxXKz1NYXRoLm1heChNYXRoLmNlaWwoLWsuTi9oKSwxKSxrPU1hdGguZmxvb3IoRC1rLk4vMUUzKSxuLnBvbGljeS5VMT9uLlc9azpuLlg9VyxuLlUoInNkYWkiLHtvbnByZWQ6RCxlc3RzcTpXLGVzdG10OmsudG9GaXhlZCgzKX0pLGcuZEMobi5sb2FkZXIsayxrLFcsaCksbi5ZPURhdGUubm93KCksb3EobiwzLCJwcmVkaWN0IiksdHZpKHYsYi5mZikpOm4uSj09PTE/bi5zVT8uR2coRCk/KGcuZEMobi5sb2FkZXIsRCxELFcpLG9xKG4sNCwic2syaGVhZCIpKTpvcShuLDUsIm5vZ2FiIik6ay5ldmVudD09PSJwcmVkaWN0U3RhcnQiJiYobi5wb2xpY3kuVTEmJm4uVz4wPyhEPU1hdGguZmxvb3IoRC1rLk4vMUUzKSxuLlchPT1EJiYKbi5VKCJzZGFpIix7dXBkYXRlU3Q6RCxvbGQ6bi5XfSksbi5XPUQpOm4uWD4wJiYoRD1XK01hdGgubWF4KE1hdGguY2VpbCgtay5OLyQ2aChuKSksMSksbi5YIT09RCYmKG4uVSgic2RhaSIse3VwZGF0ZVN0OkQsb2xkOm4uWH0pLG4uWD1EKSkpfWVsc2Ugbi5VKCJzZGFpIix7bnVsbGRlYzoxLHNxOlcsbXQ6RC50b0ZpeGVkKDMpLGV2dDpiPy5mZj8uZXZlbnR8fCJub25lIn0pfWVsc2Ugbi5KPT09MSYmb3Eobiw1LCJub2FkIil9Owp6ST1mdW5jdGlvbihuLFcsRCl7cmV0dXJuKEQ8MHx8RD09PW4uaikmJiFpc05hTihuLlYpP24uVjpXfTsKcSQyPWZ1bmN0aW9uKG4sVyl7aWYobi5OKXt2YXIgRD1uLk4uZmYuQ2YtKFcuc3RhcnRUaW1lK24uSy1uLk4uZmYuc3RhcnRTZWNzKTtEPD0wfHwoRD1uZXcgZy5sMyhuLk4uZmYuc3RhcnRTZWNzLShpc05hTihuLkspPzA6bi5LKSxELG4uTi5mZi5jb250ZXh0LG4uTi5mZi5pZGVudGlmaWVyLCJzdG9wIixuLk4uZmYuTitXLmR1cmF0aW9uKjFFMyksbi5VKCJjdWVwb2ludGRpc2NvbnRpbnVpdHkiLHtzZWdOdW06Vy5qJH0pLG4uVmkoRCxXLmokKSl9fTsKJDZoPWZ1bmN0aW9uKG4pe3N3aXRjaChuLnBvbGljeS5sYXRlbmN5Q2xhc3Mpe2Nhc2UgIkxPVyI6cmV0dXJuIDJFMztjYXNlICJVTFRSQUxPVyI6cmV0dXJuIDFFMztkZWZhdWx0OnJldHVybiA1RTN9fTsKbHU9ZnVuY3Rpb24obixXLEQsYj0hMSl7Yj9vcShuLDEsInNlZWsiKTpXPjAmJk1hdGguYWJzKFctRCk+PTUmJm4uSj09PTQmJm9xKG4sNSwic2sydCIpfTsKZy5UST1mdW5jdGlvbihuKXtyZXR1cm4gbi50aWxlQ29udGV4dD9gJHtuLlNTfTske24udGlsZUNvbnRleHR9YDpuLlNTfTsKalY9ZnVuY3Rpb24obil7aWYoIW4pcmV0dXJuInVua25vd24iO3N3aXRjaChuKXtjYXNlIDU6cmV0dXJuInByZWRpY3RTdGFydCI7Y2FzZSAxOnJldHVybiJzdGFydCI7Y2FzZSAyOnJldHVybiJjb250aW51ZSI7Y2FzZSAzOnJldHVybiJzdG9wIjtjYXNlIDY6cmV0dXJuInByZWZldGNoIjtkZWZhdWx0OnJldHVybiJ1bmtub3duIn19OwpzU3c9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgInByZWRpY3RTdGFydCI6cmV0dXJuIDU7Y2FzZSAic3RhcnQiOnJldHVybiAxO2Nhc2UgImNvbnRpbnVlIjpyZXR1cm4gMjtjYXNlICJzdG9wIjpyZXR1cm4gMztjYXNlICJwcmVmZXRjaCI6cmV0dXJuIDY7ZGVmYXVsdDpyZXR1cm4gMH19OwpON1M9ZnVuY3Rpb24obil7aWYoIW4pcmV0dXJuIDA7c3dpdGNoKG4pe2Nhc2UgMjpyZXR1cm4gMjtjYXNlIDE6cmV0dXJuIDE7ZGVmYXVsdDpyZXR1cm4gMH19OwpwU1M9ZnVuY3Rpb24obil7aWYoIW4pcmV0dXJuIDA7c3dpdGNoKG4pe2Nhc2UgNjpyZXR1cm4gNztjYXNlIDU6cmV0dXJuIDE7Y2FzZSAyOnJldHVybiAyO2Nhc2UgMTE6cmV0dXJuIDM7Y2FzZSAzOnJldHVybiA0O2Nhc2UgMTpyZXR1cm4gNTtjYXNlIDEyOnJldHVybiA2O2RlZmF1bHQ6cmV0dXJuIDB9fTsKZy5DMz1mdW5jdGlvbihuKXtyZXR1cm4gbj9uLnRpbGVDb250ZXh0P2Ake24uaWRlbnRpZmllcn07JHtuLnRpbGVDb250ZXh0fWA6bi5pZGVudGlmaWVyOiIifTsKZy5CcD1mdW5jdGlvbihuKXtzd2l0Y2gobil7Y2FzZSAwOnJldHVybiJ1bmtub3duIjtjYXNlIDE6cmV0dXJuInRpbWVvdXQiO2Nhc2UgMjpyZXR1cm4icmF0ZWNvbnRyb2wiO2Nhc2UgMTE6cmV0dXJuInJhdGVjb250cm9sX2NsaWVudCI7Y2FzZSAzOnJldHVybiJzdmVyciI7Y2FzZSA0OnJldHVybiJkZWxldGVkIjtjYXNlIDU6cmV0dXJuIndhaXRpbmciO2Nhc2UgNjpyZXR1cm4icmVhZHkiO2Nhc2UgNzpyZXR1cm4ic3NkaXNhYmxlZCI7Y2FzZSA5OnJldHVybiJzc2Rpc2FibGVkX3VzdHJlYW1lciI7Y2FzZSAxMDpyZXR1cm4ic3NkaXNhYmxlZF9ub19jb25maWciO2Nhc2UgMTI6cmV0dXJuIm5vZ2FiY29uZmlnIjtjYXNlIDg6cmV0dXJuImluYWN0aXZlIjtjYXNlIDEzOnJldHVybiJjYWNoZW1pc3MiO2RlZmF1bHQ6cmV0dXJuInVua25vd24ifX07CkZ1PWZ1bmN0aW9uKG4pe3ZhciBXPS0obi5mZj8uVHl8fDApO24udGltZVJhbmdlJiYoVys9KG4udGltZVJhbmdlLnN0YXJ0VGlja3N8fDApLyhuLnRpbWVSYW5nZS50aW1lc2NhbGV8fDEpKTtyZXR1cm4gbmV3IGcubDMoVyxuLmZmPy5NS3x8MCxuLmZmPy51VHx8IiIsbi5mZj8uaWRlbnRpZmllcnx8IiIsalYobi5mZj8uZXZlbnQpLChuLmZmPy5UeXx8MCkqMUUzLG4udGlsZUNvbnRleHQpfTsKZy5ZJEM9ZnVuY3Rpb24obixXKXt2YXIgRD0iIixiPVtdO2ZvcihsZXQgW3Ysa11vZiBuLk4uZW50cmllcygpKXtsZXQgaD12LHg9azt4Py5zdGFydFRpbWVTZWNzPD1XJiZXPD14Py5zdGFydFRpbWVTZWNzK3g/LkNmJiZiLnB1c2goaCk7RCs9YCR7aH06JHt4Py5zdGFydFRpbWVTZWNzLnRvRml4ZWQoMyl9OiR7eD8uQ2YudG9GaXhlZCgzKX07YH1iLmxlbmd0aD09PTAmJihXPXtub19jaWQ6MSxtdDpXLnRvRml4ZWQoMyksYWRDb25maWdNYXA6RC5zdWJzdHJpbmcoMCwxMDI0KX0sbi5wb2xpY3kuRlImJm4uVSgiY2xzZGFpIixXKSk7cmV0dXJuIGJ9OwpIZVU9ZnVuY3Rpb24obixXLEQ9ITEpe0QmJihuLlY9ITApOysrbi5qO0Q9NkU0KjIqKm4uajtEPSgwLGcuUikoKStEO24uVy5zZXQoVy5pbmZvLmlkLEQpfTsKd0M9ZnVuY3Rpb24obil7Zm9yKGxldCBbVyxEXW9mIG4uVy5lbnRyaWVzKCkpe2xldCBiPVc7RDwoMCxnLlIpKCkmJm4uVy5kZWxldGUoYil9cmV0dXJuIG4uV307ClJxPWZ1bmN0aW9uKG4sVyl7bi5OPVc7dmFyIEQ9bi5LLnZpZGVvSW5mb3M7aWYoIW4uTi5pc0xvY2tlZCgpKXtsZXQgaz0oMCxnLlIpKCk7RD1nLkVNKEQsZnVuY3Rpb24oaCl7aWYoaC5Ocz50aGlzLnBvbGljeS5OcylyZXR1cm4hMTt2YXIgeD10aGlzLkt1Lk5baC5pZF07cmV0dXJuIHdDKHRoaXMuaikuZ2V0KGguaWQpPmt8fHguWGIuSj40fHx4LkZGPjQ/ITE6dGhpcy50dy5oYXMoK2guaXRhZyk/ITE6ITB9LG4pOwpuLmoubGwoKSYmKEQ9Zy5FTShELGg9PmgudmlkZW8ud2lkdGg8PTg1NCYmaC52aWRlby5oZWlnaHQ8PTQ4MCkpfUQubGVuZ3RofHwoRD1uLksudmlkZW9JbmZvcyk7CnZhciBiPUQ7bi5wb2xpY3kuUm8mJihiPWZRaChuLGIsVykpO2I9Zy5FTShiLFcuWCxXKTtpZihuLk4uaXNMb2NrZWQoKSYmbi5qLk4pe3ZhciB2PWcubF8oRCxrPT5rLmlkPT09bi5qLk4pOwp2P2I9W3ZdOm4uRGUoIiIpfW4ucG9saWN5LlJvfHwoYj1mUWgobixiLFcpKTtiLmxlbmd0aHx8KGI9W0RbMF1dKTtiLnNvcnQoKGssaCk9Pk1xKG4sayktTXEobixoKSk7CmZvcihXPTE7VzxiLmxlbmd0aDtXKyspRD1iW1ctMV0sdj1iW1ddLEQudmlkZW8ud2lkdGg+di52aWRlby53aWR0aD8oZy5CTShiLFcpLFctLSk6TXEobixEKSpuLnBvbGljeS5LPk1xKG4sdikmJihnLkJNKGIsVy0xKSxXLS0pO1c9YltiLmxlbmd0aC0xXTtuLkR0PSEhbi5XJiYhIW4uVy5pbmZvJiZuLlcuaW5mby5JQiE9PVcuSUI7bi5YPWI7bi5lJC5jbGVhcigpO0Q9ITE7Zm9yKHY9MDt2PGIubGVuZ3RoO3YrKylEP24uZSQuYWRkKGJbdl0uaXRhZyk6Ylt2XS52aWRlby5xdWFsaXR5T3JkaW5hbD49MTA4MCYmKEQ9ITApO0prQyhuLnBvbGljeSxXLG4uS3UuelcpfTsKSVExPWZ1bmN0aW9uKG4pe3ZhciBXPW4ucG9saWN5LmNKLEQ9Tlcobi5JZykvVy1NcShuLG4uSi5pbmZvKTtXPWcuVDQobi5YLGZ1bmN0aW9uKGIpe3JldHVybiBNcSh0aGlzLGIpPER9LG4pOwpXPDAmJihXPTApO24udmlkZW9JbmRleD1XO24ubmV4dFZpZGVvPW4uS3UuTltuLlhbV10uaWRdfTsKUyRoPWZ1bmN0aW9uKG4pe24uUyQ/bi5TJD0hMTpuLlk9KDAsZy5SKSgpO24uRD0hMTtuLlZRPSExO3JldHVybiBuZXcgUUIobi5WLG4uVyxuLk4ucmVhc29uKX07Cm02dz1mdW5jdGlvbihuLFcsRCl7UnEobixXKTt2YXIgYj1uLmo7Vz1iLlguSjtEPWJZKFcse2dPOmIucG9saWN5LmdPLGo5OmIucG9saWN5Lmo5LGxhbmd1YWdlSWQ6RH0pO24uSj1uLkt1Lk5bKEQubGVuZ3RoPjA/RFswXTpXWzBdKS5pZF07VkIobik7bi5WPW4uSjtJUTEobik7bi5UQy5sZW5ndGgmJihuLm5leHRWaWRlbz1Ba00obixuLm5leHRWaWRlbyxuLksudmlkZW9JbmZvcyksbi5KPUFrTShuLG4uSixuLksuSikpO24uVz1uLm5leHRWaWRlbztuLlY9bi5KO3JldHVybiBTJGgobil9OwpLJGo9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5OLmVxdWFscyhXKSYmKCFuLmouTnx8IW4uTi5pc0xvY2tlZCgpfHxuLm5leHRWaWRlbz8uaW5mby5pZD09PW4uai5OKX07ClZCPWZ1bmN0aW9uKG4pe2lmKCFuLkp8fCFuLnBvbGljeS5KJiYhbi5KLmluZm8ua1ope3ZhciBXPW4uSy5KO24uSiYmKFc9YlkoVyx7bGFuZ3VhZ2VJZDpuLkouaW5mby5rWj8uaWQsZ086bi5wb2xpY3kuZ08sajk6bi5wb2xpY3kuajl9KSxXLmxlbmd0aHx8KFc9bi5LLkopKTtuLko9bi5LdS5OW1dbMF0uaWRdO2lmKFcubGVuZ3RoPjEmJiFuLnBvbGljeS5IaSl7aWYoIW4ucG9saWN5LnRHKXt2YXIgRD1nLmxfKFcsYj0+Yi5hdWRpby5hdWRpb1F1YWxpdHkhPT0iQVVESU9fUVVBTElUWV9ISUdIIik7CkQmJihuLko9bi5LdS5OW0QuaWRdKX1EPSExO2lmKEQ9bi5wb2xpY3kuWSQ/ITA6bi5OLmlzTG9ja2VkKCk/bi5OLk48MjQwOk9laShuLG4uSikpbi5KPW4uS3UuTltnLlVNKFcpLmlkXX19fTsKY3A9ZnVuY3Rpb24obil7aWYoIW4ubmV4dFZpZGVvfHwhbi5wb2xpY3kuSilpZihuLk4uaXNMb2NrZWQoKSluLm5leHRWaWRlbz1uLk4uTjw9MzYwP24uS3UuTltuLlhbMF0uaWRdOm4uS3UuTltnLlVNKG4uWCkuaWRdO2Vsc2V7Zm9yKHZhciBXPU1hdGgubWluKG4udmlkZW9JbmRleCxuLlgubGVuZ3RoLTEpLEQ9Tlcobi5JZyksYj1NcShuLG4uSi5pbmZvKSx2PUQvbi5wb2xpY3kuY0otYjtXPjAmJiEoTXEobixuLlhbV10pPD12KTtXLS0pO2ZvcihEPUQvbi5wb2xpY3kuSy1iO1c8bi5YLmxlbmd0aC0xJiYhKE1xKG4sbi5YW1crMV0pPj1EKTtXKyspO24ubmV4dFZpZGVvPW4uS3UuTltuLlhbV10uaWRdO24udmlkZW9JbmRleD1XfX07ClBDMj1mdW5jdGlvbihuLFcpe2lmKFcuUEouaW5mby52aWRlbyYmVy5hWil7bGV0IEQ9KFcuTitXLkopL1cuVyxiPVcuUEouaW5mby5OcztEJiZiJiYobi5udS5JSSgxLEQvYiksbi5wb2xpY3kuVyYmRC9iPjEuNSYmbi5sb2FkZXIuVSgib3ZlcnNob290Iix7c3E6Vy5qJCxicjpELG1heDpifSkpfX07CmFxPWZ1bmN0aW9uKG4sVyxEPSExKXtIZVUobi5qLFcsRCk7bi5ZPS0xO1JxKG4sbi5OKX07Clpldz1mdW5jdGlvbihuLFcpe3JldHVybiBuZXcgUUIobi5WLG4uVyxXfHxuLk4ucmVhc29uKX07Ck1xPWZ1bmN0aW9uKG4sVyl7aWYoIW4uYmRbVy5pZF0pe3ZhciBEPW4uS3UuTltXLmlkXS5pbmRleC5YZChuLmNKLDE1KTtEPVcuWG4mJm4uVyYmbi5XLmluZGV4LmlzTG9hZGVkKCk/RHx8Vy5YbjpEfHxXLk5zO24uYmRbVy5pZF09RH1EPW4uYmRbVy5pZF07bi5lJC5oYXMoVy5pdGFnKSYmKEQqPTEuNSk7cmV0dXJuIEQqPU1hdGgubWF4KDEsbi5udS5MZygpfHwwKX07ClU2Qz1mdW5jdGlvbihuLFcpe3ZhciBEPXt9O2ZvcihsZXQgYiBvZiBXKXtpZighYnx8IWIudmlkZW8pY29udGludWU7Vz1iLnZpZGVvLnF1YWxpdHlPcmRpbmFsO2xldCB2PURbV10saz12JiZ2Lk1XKCkmJnYudmlkZW8ucXVhbGl0eU9yZGluYWw+bi5wb2xpY3kublMsaD1XPD1uLnBvbGljeS5uUz9iLk1XKCk6Yi5YKCk7aWYoIXZ8fGt8fGgpRFtXXT1ifXJldHVybiBEfTsKZlFoPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1ELnJlYXNvbj09PSJtInx8RC5yZWFzb249PT0icyI7bi5wb2xpY3kuUnEmJm5yJiZnLkduJiYoIWJ8fEQuTjwxMDgwKSYmKFc9Vy5maWx0ZXIodj0+di52aWRlbyYmKCF2Lmp8fHYuai5wb3dlckVmZmljaWVudCkpKTsKaWYoVy5sZW5ndGg+MClpZihWVCgpKXtsZXQgdj1VNkMobixXKTtXPVcuZmlsdGVyKGs9PiEhayYmISFrLnZpZGVvJiZrLklCPT09dltrLnZpZGVvLnF1YWxpdHlPcmRpbmFsXS5JQil9ZWxzZXtsZXQgdj1XWzBdPy52aWRlbz8ucXVhbGl0eU9yZGluYWw7CmlmKHYpe0Q9Vy5maWx0ZXIoaD0+ISFoJiYhIWgudmlkZW8mJmgudmlkZW8ucXVhbGl0eU9yZGluYWw9PT12KTsKbGV0IGs9VTZDKG4sRClbdl0uSUI7Vz1XLmZpbHRlcihoPT4hIWgmJiEhaC52aWRlbyYmaC5JQj09PWspfX1yZXR1cm4gV307Ck9laT1mdW5jdGlvbihuLFcpe2Zvcih2YXIgRD0wO0QrMTxuLlgubGVuZ3RoJiZuLlhbRF0udmlkZW8ucXVhbGl0eT09PSJ0aW55IjspRCsrO3ZhciBiPU5XKG4uSWcpL24ucG9saWN5Lks7cmV0dXJuIE1xKG4sVy5pbmZvKStNcShuLG4uWFtEXSk+Yn07CkFrTT1mdW5jdGlvbihuLFcsRCl7aWYoVy5pbmZvLklCPT09ImYifHxuLlRDLmluY2x1ZGVzKGN3KFcsbi5LdS56VykpKXJldHVybiBXO2ZvcihsZXQgYj0wO2I8RC5sZW5ndGg7YisrKXtsZXQgdj1uLkt1Lk5bRFtiXS5pZF07aWYoIW4uVEMuaW5jbHVkZXMoY3codixuLkt1LnpXKSkpY29udGludWU7bGV0IGs9Vy5pbmZvLklCLGg9di5pbmZvLklCO2lmKGs9PT1ofHxWVCgpKXtpZihXLmluZm8udmlkZW8/Vy5pbmZvLkohPT12LmluZm8uSjpXLmluZm8ua1o/LmlkIT09di5pbmZvLmtaPy5pZHx8YXkoVy5pbmZvKSE9PWF5KHYuaW5mbyl8fFZFKFcuaW5mbykhPT1WRSh2LmluZm8pKXJldHVybiBXNihuLHttaXNtYXRjaDoieHRhZyIsZjpXLmluZm8uaWQsdDp2LmluZm8uaWR9KSxXO1c2KG4se2Y6Vy5pbmZvLml0YWcsdDp2LmluZm8uaXRhZ30pO24uUyQ9ITA7cmV0dXJuIHZ9VzYobix7bWlzbWF0Y2g6ImVmZmljaWVudCIsZmM6ayx0YzpofSl9VzYobix7bWlzbWF0Y2g6InVuc2VsZWN0YWJsZSIsCmZtdHM6bi5UQy5qb2luKCIuIil9KTtyZXR1cm4gV307Clc2PWZ1bmN0aW9uKG4sVyl7bi5wb2xpY3kuRUQ/bi5sb2FkZXIuaGFuZGxlRXJyb3IoIm9uZXNpZS5mbXQubWlzbWF0Y2giLFcsMCk6bi5sb2FkZXIuVSgib21iaWZhIixXKX07Cnlrcj1mdW5jdGlvbihuLFcpe249cWMobi5LdS5OLEQ9PkQuaW5mby5pdGFnPT09Vyk7CmlmKCFuKXRocm93IEVycm9yKCJJdGFnICIrVysiIGZyb20gc2VydmVyIG5vdCBrbm93bi4iKTtyZXR1cm4gbn07CkVqWj1mdW5jdGlvbihuKXt2YXIgVz1bXTtpZihuLk4ucmVhc29uPT09Im0ifHxuLk4ucmVhc29uPT09InMiKXJldHVybiBXO2lmKEl0aShuLkt1KSl7Zm9yKGxldCBEPU1hdGgubWF4KDAsbi52aWRlb0luZGV4LTIpO0Q8bi52aWRlb0luZGV4JiZEPG4uWC5sZW5ndGg7RCsrKVcucHVzaChuLlhbRF0uaXRhZyk7Vy5yZXZlcnNlKCl9cmV0dXJuIFd9OwppZWk9ZnVuY3Rpb24obixXKXtuLkRrKCJpc21wX3AiKTtuLko9V307CnU5VT1mdW5jdGlvbihuKXtuLk4mJihuLk4uZGlzcG9zZSgpLG4uRGsoImlzbXBfZCIpKX07Cm9qdz1mdW5jdGlvbih7dEk6bj0hMSxzSjpXPSExLGU0OkQ9ITF9PXt9KXtyZXR1cm4gbj9EPzM6MjpXPy0xOjF9OwpEZD1mdW5jdGlvbihuLFcsRCl7dmFyIGI9W10sdj1uLnRyYWNrLlFFO2lmKHYpe3Y9di5aRigpO2Zvcih2YXIgaz0wO2s8di5sZW5ndGg7aysrKWIucHVzaChNYXRoLnJvdW5kKHYuc3RhcnQoaykqMUUzKSksYi5wdXNoKE1hdGgucm91bmQodi5lbmQoaykqMUUzKSl9dj0xO2s9Yi5sZW5ndGg7aWYoaz09PW4uYnVmZmVyZWQubGVuZ3RoKXtmb3IodmFyIGg9MDtoPD1rJiZiW2hdPT09bi5idWZmZXJlZFtoXTtoKyspO2g+az92PTA6YltoXT5uLmJ1ZmZlcmVkW2hdJiYoaD09PWstMT92PTI6aD09PWstMiYmYltoKzFdPm4uYnVmZmVyZWRbaCsxXSYmKHY9MykpfW4uTi5hZGQoVzw8M3woRCYmNCl8dik7Vz1NYXRoLmNlaWwobi50cmFjay5sNSgpKjFFMyk7bi5OLmFkZChXLW4uaik7bi5qPVc7aWYodj09PTEpZm9yKG4uTi5hZGQoayksVz0wLGg9MDtoPGs7aCsrKW4uTi5hZGQoYltoXS1XKSxXPWJbaF07dj09PTMmJm4uTi5hZGQoYltrLTJdLW4uYnVmZmVyZWRbay0yXSk7dj49MiYmbi5OLmFkZChiW2stCjFdLW4uYnVmZmVyZWRbay0xXSk7RCYmbi5OLmFkZChEKTtuLmJ1ZmZlcmVkPWJ9OwpUN2I9ZnVuY3Rpb24obixXLEQsYix2KXtpZighYi5hWilyZXR1cm4gRC5sZW5ndGg9PT0wP0QucHVzaChiLmNsb25lKCkpOihuPShXPUQucG9wKCkpP2Q2cihuLFcsYik6bnVsbCk/RC5wdXNoKG4pOkQucHVzaChiLmNsb25lKCkpLHY7KEQ9KEQ9RC5wb3AoKSk/ZDZyKG4sRCxiKTpudWxsKXx8KEQ9Yik7aWYoRC5OKXJldHVybiBuLmxvZ2dlciYmbi5sb2dnZXIoe2luY29tcGxldGVTZWdtZW50OkQuZ2EoKX0pLHY7dmFyIHtmb3JtYXRJZDprLGokOmgsc3RhcnRUaW1lTXM6eCxjbGlwSWQ6TCxyOTplfT17Zm9ybWF0SWQ6Zy5WZihELlBKLmluZm8sbi5LdS56VyksaiQ6RC5qJCtuLlgsc3RhcnRUaW1lTXM6RC5zZWdtZW50U3RhcnRUaW1lKjFFMyxjbGlwSWQ6RC5jbGlwSWQscjk6RC5XKjFFM307Yj17Y2xpcElkOkwsZm9ybWF0SWQ6ayxzdGFydFRpbWVNczp4LGR1cmF0aW9uTXM6ZSxBQzpoLGk5Omh9O3Y9ejdVKFcsYi5zdGFydFRpbWVNcyk7RD12Pj0wP1dbdl06bnVsbDt2YXIgRzsKaWYoRz1EKXtHPWI7dmFyIHI9dixOPUQuc3RhcnRUaW1lTXMrRC5kdXJhdGlvbk1zLEg9Ry5zdGFydFRpbWVNcytHLmR1cmF0aW9uTXM7aWYoRy5zdGFydFRpbWVNcy1OPm4uTilHPSExO2Vsc2UgaWYobFFoKG4sRC5mb3JtYXRJZCxHLmZvcm1hdElkKSlELmR1cmF0aW9uTXM9TWF0aC5tYXgoTixIKS1ELnN0YXJ0VGltZU1zLEQuaTk9TWF0aC5tYXgoRC5pOSxHLmk5KSxHPSEwO2Vsc2UgaWYoTWF0aC5hYnMoRC5zdGFydFRpbWVNcy1HLnN0YXJ0VGltZU1zKTw9bi5OKWlmKEQuZHVyYXRpb25Ncz5HLmR1cmF0aW9uTXMrbi5OKXtyPUQuZm9ybWF0SWQ7dmFyIEE9RC5BQyx5PUQuaTk7RC5mb3JtYXRJZD1HLmZvcm1hdElkO0QuZHVyYXRpb25Ncz1HLmR1cmF0aW9uTXM7RC5BQz1HLkFDO0QuaTk9Ry5pOTtHLmZvcm1hdElkPXI7Ry5zdGFydFRpbWVNcz1IO0cuZHVyYXRpb25Ncz1OLUg7Ry5BQz1BO0cuaTk9eTtHPSExfWVsc2UgRC5mb3JtYXRJZD1HLmZvcm1hdElkLEc9ITA7ZWxzZSBOPgpHLnN0YXJ0VGltZU1zJiYoTj5IJiYoVy5zcGxpY2UocisxLDAse2Zvcm1hdElkOkQuZm9ybWF0SWQsc3RhcnRUaW1lTXM6SCxkdXJhdGlvbk1zOk4tSCxBQzpHLmk5KzEsaTk6RC5pOX0pLG4ubG9nZ2VyJiZuLmxvZ2dlcih7c3BsaXRPbGRTdGFydDpELnN0YXJ0VGltZU1zPy50b0ZpeGVkKDMpLHNwbGl0T2xkRW5kOk4/LnRvRml4ZWQoMyksc3BsaXROZXdTdGFydDpHLnN0YXJ0VGltZU1zPy50b0ZpeGVkKDMpLHNwbGl0TmV3RW5kOkg/LnRvRml4ZWQoMyl9KSksRC5kdXJhdGlvbk1zPUcuc3RhcnRUaW1lTXMtRC5zdGFydFRpbWVNcyxELmk5PUcuQUMtMSksRz0hMX1HP2I9RDoodis9MSxXLnNwbGljZSh2LDAsYikpO0Q9MDtmb3IoRz12KzE7RzxXLmxlbmd0aDtHKyspe049bjtIPVdbR107cj1iO0E9SC5zdGFydFRpbWVNcytILmR1cmF0aW9uTXM7eT1yLnN0YXJ0VGltZU1zK3IuZHVyYXRpb25Nczt5Pj1BK04uTj9OPSEwOnkrTi5OPEguc3RhcnRUaW1lTXM/Tj0hMTpsUWgoTixILmZvcm1hdElkLApyLmZvcm1hdElkKT8oci5kdXJhdGlvbk1zPUEtci5zdGFydFRpbWVNcyxyLmk5PUguaTksTj0hMCk6KEguc3RhcnRUaW1lTXM9eSxILkFDPXIuaTkrMSxOPSExKTtpZighTilicmVhaztEKyt9RCYmVy5zcGxpY2UodisxLEQpO3JldHVybiB2fTsKZDZyPWZ1bmN0aW9uKG4sVyxEKXtpZighYlQoVyxEKXx8Vy5hWilyZXR1cm4gbnVsbDtQXyhXLEQsbi5wb2xpY3kuZUspO3JldHVybiBXfTsKejdVPWZ1bmN0aW9uKG4sVyl7bj1nLlc0KG4se3N0YXJ0VGltZU1zOld9LChELGIpPT5ELnN0YXJ0VGltZU1zLWIuc3RhcnRUaW1lTXMpOwpyZXR1cm4gbj49MD9uOi1uLTJ9OwpqU1o9ZnVuY3Rpb24obixXLEQpe2lmKG4ubG9nZ2VyKXt2YXIgYj1bXTtmb3IobGV0IHY9MDt2PFcubGVuZ3RoO3YrKyl7bGV0IGs9V1t2XTtrLkVqPy5zdGFydFRpY2tzJiZiLnB1c2goYGkuJHtrLmZvcm1hdElkPy5pdGFnfV9zdC4ke2suc3RhcnRUaW1lTXN9X3Bzc3QuJHtrLkVqPy5zdGFydFRpY2tzfV9wc2QuJHtrLkVqPy5sOH1gKTtiLnB1c2goYGkuJHtrLmZvcm1hdElkPy5pdGFnfV9zdC4ke2suc3RhcnRUaW1lTXN9X2UuJHtrLnN0YXJ0VGltZU1zK2suZHVyYXRpb25Nc31fZC4ke2suZHVyYXRpb25Nc31fc24uJHtrLkFDfV9lbi4ke2suaTl9YCl9bi5sb2dnZXIoe3A6YCR7RH1gLGJyOmIuam9pbigiOyIpfSl9fTsKYlM9ZnVuY3Rpb24obixXLEQ9ITEpe2lmKG4uUUUpe3ZhciBiPW4uUUUuWkYoKTtpZihiLmxlbmd0aCE9PTApe2lmKG4uVyYmVyl7dmFyIHY9bi5XLGs9di5YOyFCUihiLGspJiZ2Lks+MCYmKDAsZy5SKSgpLW4uSzw1RTMmJihuLmxvZ2dlciYmbi5sb2dnZXIoe2RlbmQ6di5nYSgpfSksYj1qRyhiLGssaysuMDEpKX12PVtdO2Zvcih2YXIgaD1rPTA7azxiLmxlbmd0aCYmaDxuLmVXLmxlbmd0aDspe3ZhciB4PWIuc3RhcnQoayk7bGV0IE49Yi5lbmQoayk7dmFyIEw9bi5lV1toXS5zdGFydFRpbWVNcy8xRTM7bGV0IEg9KG4uZVdbaF0uc3RhcnRUaW1lTXMrbi5lV1toXS5kdXJhdGlvbk1zKS8xRTM7aWYoTDw9TiYmSD49eCl7bGV0IEE9ey4uLm4uZVdbaF19O3ZhciBlPW4uS3UuSi5nZXQoTWsobi5lV1toXS5mb3JtYXRJZCkpLEc9TWF0aC5tYXgoTCx4KTt4PWUuaW5kZXguUjMoRytuLk4vMUUzKTtMPWUuaW5kZXguZ2V0U3RhcnRUaW1lKHgpO3ZhciByPXgrICsoTWF0aC5hYnMoTC1HKT4Kbi5OLzFFMyk7Rz1yK24uWDtyPWUuaW5kZXguZ2V0U3RhcnRUaW1lKHIpKjFFMztoIT09bi5KfHxXPyhBLkFDPUcsQS5zdGFydFRpbWVNcz1yKToobi5sb2dnZXImJm4ubG9nZ2VyKHtwRXZpY3Q6IjEiLG9nOkEuc3RhcnRUaW1lTXMsYWRqOkwqMUUzfSksQS5BQz14K24uWCxBLnN0YXJ0VGltZU1zPUwqMUUzKTt4PW4uVz8uV3x8MTE7IUQmJmg9PT1uLkomJk48SCYmSC1OPD14KjEuMDEmJiEobi5wb2xpY3kuU3cmJm4uUUUmJm4uUUUueXUoKSkmJihOPUgpO3g9TWF0aC5taW4oSCxOKTtMPWUuaW5kZXguUjMoeC1uLk4vMUUzKTtHPWUuaW5kZXguakUoTCk7TC09KyhNYXRoLmFicyhHLXgpPm4uTi8xRTMpO3g9TCtuLlg7ZT1lLmluZGV4LmpFKEwpKjFFMztBLmk5PXg7QS5kdXJhdGlvbk1zPWUtQS5zdGFydFRpbWVNcztBLkFDPD1BLmk5JiZ2LnB1c2goQSl9SDxOP2grPTE6ays9MX1uLmVXPXZ9fX07CkNDTT1mdW5jdGlvbihuKXt2YXIgVz1bXSxEPW4uTTcubWFwKGs9PmsuY2xvbmUoKSk7Cm4uZVcuZm9yRWFjaChrPT57Vy5wdXNoKHsuLi5rfSl9KTsKdmFyIGI9bi5ELmYzKCksdj1uLko7Zm9yKGxldCBrIG9mIGIpdj1UN2IobixXLEQsayx2KTtXLmZvckVhY2goaz0+e2suc3RhcnRUaW1lTXMmJihrLnN0YXJ0VGltZU1zKz1uLnRpbWVzdGFtcE9mZnNldCoxRTMpfSk7CnJldHVybntlVzpXLE03OkR9fTsKbFFoPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gVy5pdGFnIT09RC5pdGFnfHxXLnh0YWdzIT09RC54dGFncz8hMTpuLkt1LnpXfHxXLmxtdD09PUQubG10fTsKdjY9ZnVuY3Rpb24obil7cmV0dXJue2Rvd25sb2FkZWRFbmRUaW1lOk1hdGgucm91bmQobi5kSD9uLmRILmo6MCksbWF4S25vd25FbmRUaW1lOk1hdGgucm91bmQobi5OLmluZGV4LmJRKCkpLGF2ZXJhZ2VCeXRlUmF0ZTpNYXRoLnJvdW5kKG4uTi5pbmZvLlhuKX19Owp4Qz1mdW5jdGlvbihuLFc9ITEpeyFXfHxuLmluZGV4UmFuZ2UmJm4uaW5pdFJhbmdlJiZuLmRIfHxrQyhuLG5ldyBoMCgiV29mZmxlOiBFeHBlY3QgaXNGaW5hbCB0byBhbHdheXMgaGF2ZSBpbmRleFJhbmdlIGFuZCBpbml0UmFuZ2UgYW5kIGxhc3RTbGljZSIpKTtXPXtsbXQ6bi5OLmluZm8ubGFzdE1vZGlmaWVkLGRvY2lkOm4ucG9saWN5LkosZm10aWQ6bi5OLmluZm8uaWQsdHlwZTpuLk4uaW5mby5taW1lVHlwZS5zcGxpdCgiOyIpWzBdLGNzejpuLmNodW5rU2l6ZSxjbGVuOm4uVypuLmNodW5rU2l6ZStuLkp9O24uY3J5cHRvJiYoVy5jaz1uLlksVy5jaXY9bi5LKTtXPSJsb2NhbDovL2xvY2FsaG9zdC92aWRlb3BsYXliYWNrPyIrZy5FdChXKTtXPXtpdGFnOituLk4uaW5mby5pdGFnLG1pbWVUeXBlOm4uTi5pbmZvLm1pbWVUeXBlLGJpdHJhdGU6bi5OLmluZm8uTnMqOCxsYXN0TW9kaWZpZWQ6U3RyaW5nKG4uTi5pbmZvLmxhc3RNb2RpZmllZCksaW5pdFJhbmdlOm4uaW5pdFJhbmdlPy5OKCksCmluZGV4UmFuZ2U6bi5pbmRleFJhbmdlPy5OKCksdXJsOld9O3ZhciBEPW4uTi5pbmZvLko7RCYmKFcueHRhZ3M9RCk7aWYoRD1uLk4uaW5mby52aWRlbylpZihXLnF1YWxpdHk9RC5xdWFsaXR5LFcucXVhbGl0eUxhYmVsPUQucXVhbGl0eUxhYmVsLFcud2lkdGg9RC53aWR0aCxXLmhlaWdodD1ELmhlaWdodCxEPUQuZnBzKVcuZnBzPUQ7aWYobj1uLk4uaW5mby5hdWRpbyl7aWYoRD1uLnNhbXBsZVJhdGUpVy5hdWRpb1NhbXBsZVJhdGU9U3RyaW5nKEQpO2lmKG49bi5udW1DaGFubmVscylXLmF1ZGlvQ2hhbm5lbHM9bn1yZXR1cm4gV307CkxyPWZ1bmN0aW9uKG4sVyxEPSExKXtXLnRoZW4oYj0+e24uTy5kZWxldGUoVyk7KER8fGI9PT00KSYmbi5WLnJlc29sdmUoYil9LGI9PntuLlYucmVqZWN0KGIpfSl9OwplcT1mdW5jdGlvbihuKXtyZXR1cm4hIW4uZEgmJm4uZEguVigpfTsKa0M9ZnVuY3Rpb24obixXKXtlJChuLnBvbGljeS5KKSE9PTQmJihnNihuLnBvbGljeS5KLDQpLGcuR3EoVyksbi5WLnJlamVjdChuZXcgaDAoVy5tZXNzYWdlKSkpfTsKQjdiPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9MCxiPXRSKFcuSik7aWYobi5XPG4uWCl7RD1uLlgqbi5jaHVua1NpemUtKChXLmluZm8ucmFuZ2U/LnN0YXJ0fHwwKStXLmluZm8uTik7aWYoRD49Yi5sZW5ndGgpcmV0dXJuO2lmKEQ8MCl0aHJvdyBFcnJvcigiTWlzc2luZyBkYXRhIik7bi5XPW4uWDtuLko9MH1mb3IoO0Q8Yi5sZW5ndGg7KXt2YXIgdj1NYXRoLm1pbihiLmxlbmd0aC1ELG4uai5ieXRlTGVuZ3RoLW4uSik7bGV0IGs9bmV3IFVpbnQ4QXJyYXkoYi5idWZmZXIsYi5ieXRlT2Zmc2V0K0Qsdik7bi5qLnNldChrLG4uSik7bi5KKz12O0QrPXY7aWYobi5KPT09bi5qLmxlbmd0aCl7aWYoVy5pbmZvPT09bi5kSCYmZXEobikmJkQ9PT1iLmxlbmd0aClicmVhazt2PXY2KG4pO3Y9dHgobi5wb2xpY3kuSixuLk4uaW5mbyx4QyhuKSx2LG4ucG9saWN5LmJkLG4uVyxuLmosbi5jcnlwdG8pO24uTy5hZGQodik7THIobix2KTtuLnFOKCl8fCh2PXY2KG4pLG4uYmQoeEMobiksdiE9PXZvaWQgMD8KKHYuZG93bmxvYWRlZEVuZFRpbWV8fDApKnYuYXZlcmFnZUJ5dGVSYXRlOnYubWF4S25vd25FbmRUaW1lKnYuYXZlcmFnZUJ5dGVSYXRlLHYubWF4S25vd25FbmRUaW1lKnYuYXZlcmFnZUJ5dGVSYXRlKSk7bi5qPW5ldyBVaW50OEFycmF5KG4uY2h1bmtTaXplKTtuLko9MDtuLlcrPTF9fX07CndTVT1mdW5jdGlvbihuKXtpZihlcShuKSlpZihuLmRIJiZuLmluZGV4UmFuZ2UpaWYobi5KKXt2YXIgVz1uZXcgVWludDhBcnJheShuLmouYnVmZmVyLDAsbi5KKSxEPUYkeChuKSxiPW4ucG9saWN5Lko7UHJvbWlzZS5hbGwobi5PKS50aGVuKCgpPT57dmFyIHY9dHgoYixuLmRILlBKLmluZm8seEMobiwhMCksRCxuLnBvbGljeS5iZCxuLlcsVyxuLmNyeXB0byk7THIobix2LCEwKX0pfWVsc2Uga0MobixuZXcgaDAoIldvZmZsZTogRXhwZWN0IGFsd2F5cyByZS1tYXJrIGN1cnJlbnRDaHVua09mZnNldCBhdCBFT1MiKSk7CmVsc2Uga0MobixuZXcgaDAoIldvZmZsZTogRXhwZWN0IGF0IEVPUyB0byBhbHdheXMgaGF2ZSBsYXN0U2xpY2Ugb3IgaW5kZXhSYW5nZSIpKX07Cmd1PWZ1bmN0aW9uKG4sVyl7aWYoIWVxKG4pJiYhbi5xTigpKXtpZighKG4udHd8fChuLnR3PSEwLG4uWD4wKSkpe3ZhciBEPXY2KG4pO0Q9dHgobi5wb2xpY3kuSixuLk4uaW5mbyx4QyhuKSxELG4ucG9saWN5LmJkKTtMcihuLEQpfWlmKFcuaW5mby50eXBlPT09MSl7aWYobi5kSCl7a0MobixFcnJvcigiV29mZmxlOiBFeHBlY3QgSU5JVCBzbGljZXMgdG8gYWx3YXlzIHN0YXJ0IHVzIG9mZiIpKTtyZXR1cm59bi5pbml0UmFuZ2U9V18oMCxXLkoudG90YWxMZW5ndGgpfWVsc2UgaWYoVy5pbmZvLnR5cGU9PT0yKW4uZEgmJm4uZEgudHlwZT09PTF8fGtDKG4sRXJyb3IoIldvZmZsZTogSW5kZXggYmVmb3JlIGluaXQiKSksbi5pbmRleFJhbmdlPVdfKG4uaW5pdFJhbmdlLmVuZCsxLFcuSi50b3RhbExlbmd0aCk7ZWxzZSBpZihXLmluZm8udHlwZT09PTMpe2lmKCFuLmRIKXtrQyhuLEVycm9yKCJXb2ZmbGU6IEV4cGVjdCBNRURJQSBzbGljZXMgdG8gYWx3YXlzIGhhdmUgbGFzdFNsaWNlIikpOwpyZXR1cm59aWYobi5kSC50eXBlPT09MyYmIWJUKG4uZEgsVy5pbmZvKSYmKG4uRD1bXSxXLmluZm8uaiQhPT1nayhuLmRIKXx8Vy5pbmZvLk4hPT0wKSlyZXR1cm47aWYoVy5pbmZvLmFaKXtmb3IobGV0IGIgb2Ygbi5EKUI3YihuLGIpO24uRD1bXX1lbHNle24uRC5wdXNoKFcpO24uZEg9Vy5pbmZvO3JldHVybn19ZWxzZXtrQyhuLEVycm9yKCJXb2ZmbGU6IFVuZXhwZWN0ZWQgc2xpY2UgdHlwZSIpKTtyZXR1cm59bi5kSD1XLmluZm87QjdiKG4sVyk7d1NVKG4pfX07CkYkeD1mdW5jdGlvbihuKXtyZXR1cm57ZG93bmxvYWRlZEVuZFRpbWU6LTEsbWF4S25vd25FbmRUaW1lOk1hdGgucm91bmQobi5OLmluZGV4LmJRKCkpLGF2ZXJhZ2VCeXRlUmF0ZTpNYXRoLnJvdW5kKG4uTi5pbmZvLlhuKX19OwpNdlM9ZnVuY3Rpb24obil7bj1nLmVQKG4sMTg4NjYxNDM3Nik7Zm9yKGxldCBXIG9mIG4pO3JldHVybiBnLmlfKG4sVz0+b3IoVykpfTsKUjdVPWZ1bmN0aW9uKG4pe3ZhciBXPWcudV8obiwoYix2KT0+Yit2Lmxlbmd0aCwwKTsKVz1uZXcgVWludDhBcnJheShXKTt2YXIgRD0wO2ZvcihsZXQgYiBvZiBuKVcuc2V0KGIsRCksRCs9Yi5sZW5ndGg7cmV0dXJuIFd9OwpWdnQ9ZnVuY3Rpb24obil7YTp7dmFyIFc9bi5pbml0RGF0YTt0cnl7dmFyIEQ9MDtsZXQgdj1uZXcgRGF0YVZpZXcoVy5idWZmZXIpO2Zvcig7RDx2LmJ5dGVMZW5ndGgtODspe2xldCBrPXYuZ2V0VWludDMyKEQpO2lmKGs8PTEpYnJlYWs7aWYodi5nZXRVaW50MzIoRCs0KSE9PTE4ODY2MTQzNzYpe0QrPWs7Y29udGludWV9bGV0IGg9MzI7aWYodi5nZXRVaW50OChEKzgpPjApe2xldCBMPXYuZ2V0VWludDMyKEQrMjgpO2grPUwqMTYrNH1sZXQgeD12LmdldFVpbnQzMihEK2gtNCk7dHJ5e2xldCBMPVFTeChXLnN1YmFycmF5KEQraCxEK2greCkpO2lmKEwhPT1udWxsKXt2YXIgYj1MO2JyZWFrIGF9fWNhdGNoKEwpe31EKz1rfWI9bnVsbDticmVhayBhfWNhdGNoKHYpe2I9bnVsbDticmVhayBhfWI9dm9pZCAwfWlmKGIhPW51bGwpe1c9dTQoaVcoYiw3LHZvaWQgMCxmbikpO1c9PW51bGx8fG4ucUh8fChuLmNyeXB0b1BlcmlvZEluZGV4PVcpO1c9dTQoaVcoYiwxMCx2b2lkIDAsZm4pKTsKVyE9bnVsbCYmVz4wJiYhbi5xSCYmKG4uTj1XKTtmb3IobGV0IHYgb2YgZy5CSChiLDIsTUUsdm9pZCAwPT09RyQ/Mjo0KSliPW4uSixXPWIucHVzaCxEPVZsKHYpLEQ9Zy5FQShELDQpLFcuY2FsbChiLEQpfX07CmNraj1mdW5jdGlvbihuKXtyZXR1cm4gaXNOYU4obi5jcnlwdG9QZXJpb2RJbmRleCk/Zy5FQShuLmluaXREYXRhKTpgJHtuLmNyeXB0b1BlcmlvZEluZGV4fWB9OwpYMD1mdW5jdGlvbihuKXtpZihuLm9mZnNldD49bi5KLnRvdGFsTGVuZ3RoKXRocm93IEVycm9yKCk7cmV0dXJuIHJkKG4uSixuLm9mZnNldCsrKX07CmFRUz1mdW5jdGlvbihuLFc9ITEpe3ZhciBEPVgwKG4pO2lmKEQ9PT0xKXtXPS0xO2ZvcihEPTA7RDw3O0QrKyl7dmFyIGI9WDAobik7Vz09PS0xJiZiIT09MjU1JiYoVz0wKTtXPi0xJiYoVz1XKjI1NitiKX1yZXR1cm4gV31iPTEyODtmb3IobGV0IHY9MDt2PDYmJmI+RDt2KyspRD1EKjI1NitYMChuKSxiKj0xMjg7cmV0dXJuIFc/RDpELWJ9OwpuZng9ZnVuY3Rpb24obil7dHJ5e2xldCBXPWFRUyhuLCEwKSxEPWFRUyhuLCExKTtyZXR1cm57aWQ6VyxzaXplOkR9fWNhdGNoKFcpe3JldHVybntpZDotMSxzaXplOi0xfX19OwpETjE9ZnVuY3Rpb24obil7Zm9yKHZhciBXPW5ldyBXeWoobiksRD0tMSxiPTAsdj0wOyFifHwhdjspe2xldCB7aWQ6ayxzaXplOmh9PW5meChXKTtpZihrPDApcmV0dXJuO2lmKGs9PT0xNzYpe2lmKGghPT0yKXJldHVybjtiPVcuTigpfWVsc2UgaWYoaz09PTE4Nil7aWYoaCE9PTIpcmV0dXJuO3Y9Vy5OKCl9az09PTM3NDY0ODQyNz9EPVcuTigpK2g6ayE9PTQwODEyNTU0MyYmayE9PTE3NCYmayE9PTIyNCYmVy5za2lwKGgpfVc9JE0obiwwLEQpO0Q9bmV3IERhdGFWaWV3KFcuYnVmZmVyKTtELnNldFVpbnQxNihiLDM4NDApO0Quc2V0VWludDE2KHYsMjE2MCk7Yj1uZXcgUzUoW1ddKTtlNShiLG4pO3JldHVybiBifTsKYndDPWZ1bmN0aW9uKCl7dmFyIG49bmV3IFVpbnQ4QXJyYXkoMTY0RTQpO2ZvcihsZXQgVz0wO1c8bi5sZW5ndGg7Vys9NjU1MzYpY3J5cHRvLmdldFJhbmRvbVZhbHVlcyhuLnN1YmFycmF5KFcsTWF0aC5taW4oVys2NTUzNixuLmxlbmd0aCkpKTtuZXcgUzUoW25dKX07CnEyPWZ1bmN0aW9uKG4pe24uYm4/LmRpc3Bvc2UoKTtuLmJuPW51bGx9OwpHWj1mdW5jdGlvbihuLFcpe1c9e3JzdDRkaXNjOlcsY2Q6bi5UOC50b0ZpeGVkKDMpLHNxOm4ubTE/bi5tMS5qJDotMX07bi5acT1OYU47bi5UOD0wO24uc0w9LTE7bi5tMT1udWxsO24uaWg9TmFOO24uWXA9TmFOO24uU0Y9bnVsbDtuLmxvYWRlci5VKCJtZHN0bSIsVyl9Owp0MD1mdW5jdGlvbihuKXtuLmJSPW51bGw7bi5FZz0tMTtuLlZwPTA7bi5qaz1udWxsO24uTDE9TmFOO24uWUU9MDtuLkwyPW51bGx9OwokQz1mdW5jdGlvbihuLFcpe2lmKFcuaW5mby5hWil7bi5JOT1XLmluZm87aWYobi5qayl7dmFyIEQ9bi5qayxiPXZmdChuLCExKTtEPWtkVShEKTtuLmxvYWRlci5SMChuLlBKLGIsRCk7bi5wb2xpY3kuZUsmJlpKKFcuaW5mbyxiKTtuLkwyfHxuLnBvbGljeS5lVnx8bi5WaSgpO24uTDI9bnVsbH10MChuKX1uLmJuJiZndShuLmJuLFcpO2lmKGI9bi5XeCgpKWlmKGI9Yi5qKFcsbi5wb2xpY3kuQW0sbi5wb2xpY3kuZkIpKXtuLlZ3LnBvcCgpO24uVncucHVzaChiKTtyZXR1cm59bi5Wdy5wdXNoKFcpfTsKUUV3PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5XUihXKTtpZihaTyhXLmluZm8uUEouaW5mbykmJlcuaW5mby5QSi5pbmZvLnZpZGVvLnByaW1hcmllcz09PSJidDIwMjAiKXt2YXIgYj1uZXcgdFkoRCk7JHgoYixbNDA4MTI1NTQzLDM3NDY0ODQyNywxNzQsMjI0LDIxOTM2LDIxOTM3XSkmJihiPWIuc3RhcnQrYi5wb3MsRC5nZXRVaW50OChiKT09PTEyOSYmRC5nZXRVaW50OChiKzEpPT09MSYmRC5zZXRVaW50OChiKzEsOSkpfWI9Vy5pbmZvLlBKLmluZm87Yi5YKCkmJiFaTyhiKSYmKGI9Zy5XUihXKSwobmV3IHRZKGIpKS5PSigpLFl4KFs0MDgxMjU1NDMsMzc0NjQ4NDI3LDE3NCwyMjRdLDIxOTM2LGIpKTtXLmluZm8uUEouaW5mby5mWSgpJiZRZihXLmluZm8uUEosRCk7Vy5pbmZvLlBKLmluZm8ucUgoKSYmVy5pbmZvLmZZKCkmJihEPWcuV1IoVyksKG5ldyB0WShEKSkuT0ooKSxZeChbNDA4MTI1NTQzLDM3NDY0ODQyNywxNzQsMjI0XSwzMDMyMCxEKSYmWXgoWzQwODEyNTU0MywzNzQ2NDg0MjcsCjE3NCwyMjRdLDIxNDMyLEQpKTtpZihuLnBvbGljeS54MCYmVy5pbmZvLlBKLmluZm8ucUgoKSl7Yj1nLldSKFcpO3ZhciB2PW5ldyB0WShiKTtpZigkeCh2LFs0MDgxMjU1NDMsMzc0NjQ4NDI3LDE3NCwyOTYzN10pKXtEPU5rKHYsITApO3Y9di5zdGFydCt2LnBvcztmb3IodmFyIGs9MDtrPEQtMTtrKyspYi5zZXRVaW50OCh2K2ssMCk7Yi5zZXRVaW50OCh2K0QtMSwxKX19aWYobi5lUygpJiZnLlJCKFcuaW5mby5QSi5pbmZvKSl7RD1nLldSKFcpO2I9Zy5ucyhELDAsMTcwMTYwNjI2MCk7RD1nLm5zKEQsMCwxODM2NDc2NTE2KTtpZihiJiZEKXtiLnNraXAoMik7dmFyIGg9VUQoYik7az1FRChiKTtsZXQgeD1bXTt2PVtdO2xldCBMPVtdLGU9W107aWYoaClmb3IoaD0wO2g8azsrK2gpeC5wdXNoKGkzKGIpKSx2LnB1c2goaTMoYikpLEwucHVzaChVRChiKSksZS5wdXNoKFVEKGIpKTtlbHNlIGZvcihoPTA7aDxrOysraCl4LnB1c2goeUwoYikpLHYucHVzaCh5TChiKSksTC5wdXNoKFVEKGIpKSwKZS5wdXNoKFVEKGIpKTtiPXg7RD1nLmJMKEQpO0Q9bmV3IFJlaCh2WzBdL0QsYlswXS9EKX1lbHNlIEQ9bnVsbDtpZih2PUQpe2lmKGcuUkIoVy5pbmZvLlBKLmluZm8pKWZvcihEPWcuV1IoVyksaz1nLm5zKEQsMCwxNzAxMDgyMjI3KTtrOyliPWssYi50eXBlPTE5MzY0MTkxODQsYi5kYXRhLnNldFVpbnQzMihiLm9mZnNldCs0LDE5MzY0MTkxODQpLGs9Zy5ucyhELGsub2Zmc2V0K2suc2l6ZSwxNzAxMDgyMjI3KTtuLmYwPSEwO1cuaW5mby5QSi5WPXZ9fVcuaW5mby5QSi5XKCl8fFcuaW5mby5QSi5KfHxXLmluZm8uUEouaW5kZXhSYW5nZXx8RE8oVyl9OwpWSHg9ZnVuY3Rpb24obixXKXtpZihuLmlzRHJtKCkpe2lmKFcuaW5mby5QSi5pbmZvLnFIKCkpe3ZhciBEPW5ldyB0WShnLldSKFcpKTtpZigkeChELFs0MDgxMjU1NDMsMzc0NjQ4NDI3LDE3NCwyODAzMiwyNTE1MiwyMDUzMywxODQwMl0pKXt2YXIgYj1OayhELCEwKTtEPWIhPT0xNj9udWxsOlNQKEQsYil9ZWxzZSBEPW51bGw7Yj0id2VibSJ9ZWxzZSBXLmluZm8uTz1NdlMoZy5XUihXKSksRD1SN1UoVy5pbmZvLk8pLGI9ImNlbmMiO0QmJkQubGVuZ3RoJiYoRD1uZXcgcnUoRCxiKSxuLnBvbGljeS5QSCYmZy5SQihXLmluZm8uUEouaW5mbykmJihiPVpLWihnLldSKFcpKSkmJihELlVXPWIpLEQucUg9Vy5pbmZvLlBKLmluZm8ucUgoKSxXLk4mJlcuTi5jcnlwdG9QZXJpb2RJbmRleCYmKEQuY3J5cHRvUGVyaW9kSW5kZXg9Vy5OLmNyeXB0b1BlcmlvZEluZGV4KSxXLk4mJlcuTi5YJiYoRC5OPVcuTi5YKSxuLmxvYWRlci5XbihEKSl9fTsKY3JoPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5iUjtXPU1hdGgubWluKFcsRC5KLnRvdGFsTGVuZ3RoKTtpZihXPT09RC5KLnRvdGFsTGVuZ3RoKXJldHVybiBuLmJSPW51bGwsRDtEPXZSKEQsVyk7bi5iUj1EWzFdO3JldHVybiBEWzBdfTsKRFgyPWZ1bmN0aW9uKG4sVyxEKXtpZihELmluZm8uUEouVygpKXtpZihuLmYwJiZhRXcoRCkpe1c9Zy5XUihEKTt2YXIgYj1nLm5zKFcsMCwxOTUzNjU4MjIyKTtpZihiKXtiLnNraXAoMSk7dmFyIHY9WmMoYik8PDE2fFVEKGIpLGs9diYxLGg9diY0O2lmKHYmMjU2KXtXPXYmNTEyO3ZhciB4PXYmMTAyNDt2Jj0yMDQ4O3ZhciBMPUVEKGIpO0w8Mnx8KGsmJmIuc2tpcCg0KSxoJiZiLnNraXAoNCksaz1FRChiKSxiLnNraXAoKEwtMSkqKDQrKFc/NDowKSsoeD80OjApKyh2PzQ6MCkpLTQpLGIuZGF0YS5zZXRVaW50MzIoYi5vZmZzZXQrYi5OLGspKX19fWlmKFc9bi5xOSYmbi5xOS5PNygpKWlmKFc9RC5pbmZvLmZZKCkpVz1YWihEKSx4PW4ucTksczQ/KGI9MS9XLFc9bi5WeihXKT49eC5WeigpK2IpOlc9bi5nZXREdXJhdGlvbigpPj14LmdldER1cmF0aW9uKCksVz0hVztXJiZhRXcoRCkmJihXPW4ucTksczQ/KGI9WFooRCkseD0xL2IsYj1uLlZ6KGIpLFc9Vy5WeigpK3gtYik6Vz1XLmdldER1cmF0aW9uKCktCm4uZ2V0RHVyYXRpb24oKSxXPTErVy9ELmluZm8uVyxXdyhnLldSKEQpLFcpKX1lbHNle2I9ITE7bi5qa3x8KEdpKEQpLEQuTiYmKG4uams9RC5OLGI9ITAsaz1ELmluZm8saD1ELk4uc2VnbWVudE51bWJlcixrLlk9InVwZGF0ZVdpdGhFbXNnIixrLmokPWgsaz1ELk4say5WJiZuLlBKLnR3KCFrLlYsImVtc2ciKSxrPUQuaW5mby5QSi5pbmZvLGg9Zy5XUihEKSxnLlJCKGspP0dqKGgsMTcwMTY3MTc4Myk6ay5xSCgpJiZZeChbNDA4MTI1NTQzXSwzMDc1NDQ5MzUsaCkpKTthOmlmKChrPWVHKEQsbi5wb2xpY3kuUFgpKSYmcSQoRCkpaD1uVHcobixEKSxuLlQ4Kz1oLGstPWgsbi5ZRSs9ayxuLlpxPW4ucG9saWN5LlNWP24uWnErazpOYU47ZWxzZXtpZihuLnBvbGljeS5Zcil7aWYoaD1MPW4ubG9hZGVyLnFhKGcua1goRCksMSksbi5acT49MCYmRC5pbmZvLnR5cGUhPT02KXtpZihuLnBvbGljeS5TViYmaXNOYU4obi5ZcCkpe2cuR3EobmV3IGcuUXgoIk1pc3NpbmcgZHVyYXRpb24gd2hpbGUgcHJvY2Vzc2luZyBwcmV2aW91cyBjaHVuayIsCkQuaW5mby5nYSgpKSk7bi5sb2FkZXIuaXNPZmZsaW5lKCkmJiFuLnBvbGljeS5UUXx8V2paKG4sRCxoKTtHWihuLCJtIik7YnJlYWsgYX12PUwtbi5acTt2YXIgZT12LW4uVDg7bGV0IEc9RC5pbmZvLmokLHI9bi5tMT9uLm0xLmokOi0xLE49bi5paCxIPW4uWXAsQT1uLnBvbGljeS5RJCYmdj5uLnBvbGljeS5RJCx5PU1hdGguYWJzKGUpPjEwLFQ9TWF0aC5hYnMobi5acS1oKTwxRS03O2lmKE1hdGguYWJzKGUpPjFFLTQpe24uSVMrPTE7bGV0IHo9bi5qaz8uSigpO2U9e2F1ZGlvOmAkeytuLmVTKCl9YCxzcTpHLnRvRml4ZWQoKSxzbGljZVN0YXJ0OkwsbGFzdFNxOnIudG9GaXhlZCgpLGxhc3RTbGljZVN0YXJ0Ok4sbGFzdFNsaWNlRHVyYXRpb246SCx0b3RhbERyaWZ0Oih2KjFFMykudG9GaXhlZCgpLHNlZ0RyaWZ0OihlKjFFMykudG9GaXhlZCgpLHNraXBSZXdyaXRlOmAkeysoQXx8eSl9YH07ej8ubGVuZ3RoJiYoZS5hZENwbj16WzBdKTtuLmxvYWRlci5oYW5kbGVFcnJvcigicW9lLmF2c3luYyIsCmUpO24uc0w9R31BfHx5fHxUfHwoaD1uLlpxKTtMPW5UdyhuLEQsTCk7ay09TDtuLlQ4PXYrTH19ZWxzZSBoPWlzTmFOKG4uWnEpP0QuaW5mby5zZWdtZW50U3RhcnRUaW1lOm4uWnE7V2paKG4sRCxoKSYmKG4uWUUrPWssbi5acT1oK2ssbi5wb2xpY3kuWmgmJm4uSVM+PW4ucG9saWN5LlpoJiYobi5JUz0wLG4ubG9hZGVyLkdtKHtyZXNldEZvclJld3JpdGVzOiJjb3VudCJ9KSkpfW4ubTE9RC5pbmZvO24uWXA9TE0oRCk7RC5XPj0wJiYobi5paD1ELlcpO2lmKGImJm4uamspe2I9dmZ0KG4sITApO1pKKEQuaW5mbyxiKTtuLmJSJiZaSihuLmJSLmluZm8sYik7Zm9yKHggb2YgVyluLnBvbGljeS5qJiZ4LmokIT09bi5qaz8uc2VnbWVudE51bWJlcnx8WkooeCxiKTsoRC5pbmZvLmFafHxuLmJSJiZuLmJSLmluZm8uYVopJiZELmluZm8udHlwZSE9PTZ8fChuLkwyPWIsbi5wb2xpY3kuVTE/KFc9a2RVKG4uamspLG4ubG9hZGVyLlIwKG4uUEosYixXKSk6KFc9bi5sb2FkZXIsVy5LdS5pc01hbmlmZXN0bGVzcyYmCk4yKFcsYixudWxsLCEhbi5QSi5pbmZvLnZpZGVvKSksbi5wb2xpY3kuZVZ8fG4uVmkoKSl9fVZIeChuLEQpO24udGltZXN0YW1wT2Zmc2V0JiZ4WChELG4udGltZXN0YW1wT2Zmc2V0KX07CnZmdD1mdW5jdGlvbihuLFcpe3ZhciBELGI9bi5qaztpZihEPVRfKGIpKUQuc3RhcnRTZWNzKz1uLkwxO3ZhciB2PW4uTDEsaz0wO24uUEogaW5zdGFuY2VvZiBkdCYmKGs9bi5QSi5yYik7cmV0dXJuIG5ldyBSNChiLnNlZ21lbnROdW1iZXIsdixXP2s6bi5ZRSxiLmluZ2VzdGlvblRpbWUsYHNxLyR7Yi5zZWdtZW50TnVtYmVyfWAsdm9pZCAwLHZvaWQgMCxXLEQsbi5wb2xpY3kueUg/Yi5OOm51bGwpfTsKa2RVPWZ1bmN0aW9uKG4pe3JldHVybiBuLmZLKCk/bmV3IHByKENnKG4pLG4uSigpLEJBKG4pLEZwKG4pLHdGKG4pLGcuTWQobiksZy5ScihuKSk6bnVsbH07Cm5Udz1mdW5jdGlvbihuLFcsRCl7dmFyIGI9MDtpZihXLmluZm8uUEouaW5mby5xSCgpJiYhcSQoVykpcmV0dXJuIDA7aWYobi5xOSYmIW4uZVMoKSl7bGV0IGU9MDtEJiZnLlJCKFcuaW5mby5QSi5pbmZvKT9lPUQtbi5acTpXLmluZm8uUEouaW5mby5xSCgpJiYoZT1uLlQ4KTt2YXIgdj1XLmluZm8uaiQ7RD1lRyhXLG4ucG9saWN5LlBYKTtsZXQge1Y1OkcsVGo6cn09bi5xOS5iNCgpO3Y9dj09PUd8fHY+RyYmdj5uLnNMO3ZhciBrPU1hdGguYWJzKHItZSk+LjAyO2lmKG4ucG9saWN5LlJ0KXt2YXIgaD1NYXRoLmFicyhyLWUpO2lmKHYmJmg+bi5wb2xpY3kuUnQmJmg8MTApcmV0dXJuIG4ubG9hZGVyLkdtKHthdkRlc3luYzoiY291bnQifSksMH1pZihXLmluZm8uUEouaW5mby5xSCgpJiZuLnBvbGljeS5WZilyZXR1cm4gMDtpZih2JiZrKXtiPU1hdGgubWF4KC45NSxNYXRoLm1pbigxLjA1LChELShyLWUpKS9EKSk7aWYoZy5SQihXLmluZm8uUEouaW5mbykpV3coZy5XUihXKSxiKTsKZWxzZSBpZihXLmluZm8uUEouaW5mby5xSCgpJiYoaz1lLXIsIWcuUkIoVy5pbmZvLlBKLmluZm8pJiYoVy5pbmZvLlBKLmluZm8ucUgoKSxiPW5ldyB0WShnLldSKFcpKSx2PVcuVj9iOm5ldyB0WShuZXcgRGF0YVZpZXcoVy5pbmZvLlBKLkouYnVmZmVyKSksZUcoVywhMCkpKSl7dmFyIHg9ayoxRTMsTD1Lcyh2KTt2PWIucG9zO2IucG9zPTA7aWYoYi5OLmdldFVpbnQ4KGIucG9zKT09PTE2MHx8UHcoYikpaWYoc1koYiwxNjApKWlmKE5rKGIsITApLHNZKGIsMTU1KSl7aWYoaz1iLnBvcyxoPU5rKGIsITApLGIucG9zPWsseD14KjFFOS9MLEw9ZnMoYikseD1MK01hdGgubWF4KC1MKi43LE1hdGgubWluKEwseCkpLHg9TWF0aC5zaWduKHgpKk1hdGguZmxvb3IoTWF0aC5hYnMoeCkpLCEoTWF0aC5jZWlsKE1hdGgubG9nKHgpL01hdGgubG9nKDIpLzgpPmgpKXtiLnBvcz1rKzE7Zm9yKGs9aC0xO2s+PTA7ay0tKWIuTi5zZXRVaW50OChiLnBvcytrLHgmMjU1KSx4Pj4+PTg7Yi5wb3M9CnZ9fWVsc2UgYi5wb3M9djtlbHNlIGIucG9zPXY7ZWxzZSBiLnBvcz12fWI9ZUcoVyxuLnBvbGljeS5QWCk7Yj1ELWJ9YiYmVy5pbmZvLlBKLmluZm8ucUgoKSYmbi5sb2FkZXIuVSgid2VibUR1cmF0aW9uQWRqdXN0bWVudCIse2R1cmF0aW9uQWRqdXN0bWVudDpiLHZpZGVvRHJpZnQ6ZStiLGF1ZGlvRHJpZnQ6cn0pfXJldHVybiBifTsKV2paPWZ1bmN0aW9uKG4sVyxEKXtpZighaE0oVyxEKSlyZXR1cm4gVz1YeChXLmluZm8pLFcuc21zdD0iMSIsWUMobi5sb2FkZXIsV3x8e30pLCExO2lzTmFOKG4uTDEpJiYobi5MMT1EKTtyZXR1cm4hMH07CmFFdz1mdW5jdGlvbihuKXtyZXR1cm4gbi5pbmZvLlBKLlcoKSYmbi5pbmZvLmokPT09bi5pbmZvLlBKLmluZGV4LngkKCl9Owp2VFo9ZnVuY3Rpb24obixXLEQsYix2LGssaCx4LEwsZSl7dmFyIEc9Vy5leHBvcnRzLk1lZGlhU3RyZWFtX2dldEJhdGNoZWRTdHJlYW1FdmVudHMoRCk7aWYoRyl0cnl7dmFyIHI9Vy5tZW1vcnkuYnVmZmVyKEcsYio4OCk7bGV0IHk9bmV3IERhdGFWaWV3KHIuYnVmZmVyLHIuYnl0ZU9mZnNldCxiKjg4KSxUPVcubWVtb3J5LmhlYXAoKTtHPVtdO2ZvcihyPTA7cjxiO3IrKyl7bGV0IHo9bmV3IGIkQyh5LHIqODgsVyxUKTtHLnB1c2goe09mOnouT2YsYjM6ei5iMyxLOTp6Lks5LGx3OnoubHcsU2g6ei5TaCxnQzp6LmdDLHZXOnoudlcsR0s6ei5HSyxVVzp6LlVXLFckOnouVyQsZm9ybWF0SWQ6ei5mb3JtYXRJZCxyQzp6LnJDfSl9Yj12O2ZvcihsZXQgeiBvZiBHKXt6LmZvcm1hdElkJiZlJiYoYj1lKHouZm9ybWF0SWQpKTtsZXQgQz16Lk9mLFE9ei5iMyxWPXouSzksTHQ9ei5sdyx0aT16LlNoLEhaPXouZ0MsWjE9ei52VyxRaj16LkdLLE1pPXouVVcsTVU9ei5XJCxJQz16LmZvcm1hdElkLApJTT16LnJDO3N3aXRjaChIWil7Y2FzZSAxOmxldCBZbDt0cnl7bGV0IFVUPUpTT04ucGFyc2UoWjEpO1VUJiZ0eXBlb2YgVVQ9PT0ib2JqZWN0Ij9ZbD1VVDpZbD17cmVhc29uOlN0cmluZyhaMSl9fWNhdGNoKFVUKXtZbD17cmVhc29uOloxfX1ZQyhuLmxvYWRlcixZbCk7cmV0dXJuO2Nhc2UgMjpsZXQgajE7dHJ5e2xldCBVVD1KU09OLnBhcnNlKFoxKTtVVCYmdHlwZW9mIFVUPT09Im9iamVjdCI/ajE9VVQ6ajE9e3JlYXNvbjpTdHJpbmcoWjEpfX1jYXRjaChVVCl7ajE9e3JlYXNvbjpaMX19ajEuYXZEZXN5bmMhPT12b2lkIDA/bi5sb2FkZXIuR20oajEpOm4ubG9hZGVyLmhhbmRsZUVycm9yKCJxb2UuYXZzeW5jIixqMSk7YnJlYWs7Y2FzZSAzOmxldCBUej1uZXcgcnUoUWosWjEpO01pLmxlbmd0aD4wJiYoVHouVVc9TWkpO01VIT09NDI5NDk2NzI5NSYmKFR6LmNyeXB0b1BlcmlvZEluZGV4PU1VKTtRPj0wJiYoVHouTj1RKTtUei5xSD1iLmluZm8/LnFIKCk/PyExO24ubG9hZGVyLlduKFR6KTsKYnJlYWs7Y2FzZSA0OmxldCBmaD1wUihRaiksT0k9UUwoZmgpO2lmKE9JKXtsZXQgVVQ9bmV3IFg1KE9JLFoxKTtuLk49VVQ7VVQuViYmYi50dz8uKCFVVC5WLCJlbXNnIik7bGV0IFBLPVRfKFVUKTtQSyYmKFBLLnN0YXJ0U2Vjcys9QyxuLmxvYWRlci5NZShiLFBLLFVULnNlZ21lbnROdW1iZXIsVVQuZksoKSkpfWJyZWFrO2Nhc2UgNzpsZXQgcEs7dHJ5e2xldCBVVD1KU09OLnBhcnNlKFoxKTtVVCYmdHlwZW9mIFVUPT09Im9iamVjdCImJihwSz1VVCl9Y2F0Y2goVVQpe31pZihwSyYmcEsucmVzZXRGb3JSZXdyaXRlcyE9PXZvaWQgMCl7bi5sb2FkZXIuR20ocEspO2JyZWFrfWlmKFoxLnN0YXJ0c1dpdGgoImRpc2NvbnRpbnVpdHlfIikpe24ubG9hZGVyLlUoIm1kc3RtIix7cnN0NGRpc2M6WjEuc3Vic3RyaW5nKDE0KSxjZDpDLnRvRml4ZWQoMyksc3E6U3RyaW5nKElNKX0pO2JyZWFrfWxldCBPej1aMS5yZXBsYWNlKC9bXmEtekEtWjAtOTsuIV8tXS9nLCJfIik7bi5sb2FkZXIuVSgic2xpY2Vfbm90X2Z1bGx5X3Byb2Nlc3NlZCIsCnttc2c6T3p9KTticmVhaztjYXNlIDg6bGV0IEJXO3RyeXtCVz1KU09OLnBhcnNlKFoxKX1jYXRjaChVVCl7bi5sb2FkZXIuVSgid2FzbV9qc29uX3BhcnNlX2Vycm9yIix7ZXY6SFoudG9TdHJpbmcoKX0pO2NvbnRpbnVlfXgoQlcpO2IuTigpJiZrJiZaSChuLmxvYWRlci5LdSxiLG4uVyk7YnJlYWs7Y2FzZSA5OmxldCBZRTt0cnl7WUU9SlNPTi5wYXJzZShaMSl9Y2F0Y2goVVQpe24ubG9hZGVyLlUoIndhc21fanNvbl9wYXJzZV9lcnJvciIse2V2OkhaLnRvU3RyaW5nKCl9KTtjb250aW51ZX1MKFlFKTtiLk4oKSYmayYmWkgobi5sb2FkZXIuS3UsYixuLlcpO2JyZWFrO2Nhc2UgMTA6dj1aMTtuLlc9djtJQyYmZSYmKGI9ZShJQykpO2IuSj1RajtoPy5KKFFqLHYpO2IuTigpJiZrJiZaSChuLmxvYWRlci5LdSxiLHYpO2JyZWFrO2Nhc2UgMTE6Yi5WPW5ldyBSZWgodGksVik7YnJlYWs7Y2FzZSAxNDpsZXQgWmk9bmV3IFI0KElNLEMsVixMdCxgc3EvJHtJTX1gLHZvaWQgMCx2b2lkIDAsCiExLG4uSixuLk4/Lk4pO3Y9bnVsbDtuLk4mJm4uTi5mSygpJiYodj1uZXcgcHIoQ2cobi5OKSxuLk4uSigpLEJBKG4uTiksRnAobi5OKSx3RihuLk4pLGcuTWQobi5OKSxnLlJyKG4uTikpKTtuLmxvYWRlci5SMChiLFppLHYpO2JyZWFrO2Nhc2UgMTU6bGV0IFdJPU51bWJlcihaMSk7aXNOYU4oV0kpfHxuLmxvYWRlci5wWj8uKFdJKTticmVhaztjYXNlIDY6bGV0IERBPW5ldyBSNChJTSxDLFYsTHQsYHNxLyR7SU19YCx2b2lkIDAsdm9pZCAwLCEwLG4uSixuLk4/Lk4pO2lmKG4ucG9saWN5Py5VMT8/ITApdj1udWxsLG4uTiYmbi5OLmZLKCkmJih2PW5ldyBwcihDZyhuLk4pLG4uTi5KKCksQkEobi5OKSxGcChuLk4pLHdGKG4uTiksZy5NZChuLk4pLGcuUnIobi5OKSkpLG4ubG9hZGVyLlIwKGIsREEsdik7ZWxzZXt2YXIgTj1uLmxvYWRlcjtOLkt1LmlzTWFuaWZlc3RsZXNzJiZOMihOLERBLG51bGwsISFiLmluZm8udmlkZW8pfWJyZWFrO2Nhc2UgMTI6dmFyIEg9bi5sb2FkZXI7dj0KYjt2YXIgQT1uZXcgUjQoSU0sQyxWLEx0LGBzcS8ke0lNfWAsdm9pZCAwLHZvaWQgMCwhMCxuLkosbi5OPy5OKTtILkt1LmlzTWFuaWZlc3RsZXNzJiZUeChILkt1LEEuaiQsISF2LmluZm8udmlkZW8pO2JyZWFrO2Nhc2UgNTpsZXQgcFY7dHJ5e3BWPUpTT04ucGFyc2UoWjEpfWNhdGNoKFVUKXtuLmxvYWRlci5VKCJ3YXNtX2pzb25fcGFyc2VfZXJyb3IiLHtldjpIWi50b1N0cmluZygpfSk7Y29udGludWV9cFYuc3RhcnRTZWNzKz1DO24uSj1wVjtuLmxvYWRlci5NZShiLHBWLElNLG4uTj8uZksoKT8/ITEpO2JyZWFrO2Nhc2UgMTM6UWYoYixuZXcgRGF0YVZpZXcoUWouYnVmZmVyLFFqLmJ5dGVPZmZzZXQsUWouYnl0ZUxlbmd0aCkpO2JyZWFrO2RlZmF1bHQ6bi5sb2FkZXIuVSgid2FzbV91bmtub3duX2V2Iix7ZXY6SFoudG9TdHJpbmcoKX0pfX19ZmluYWxseXtXLmV4cG9ydHMuTWVkaWFTdHJlYW1fY2xlYXJQZW5kaW5nRXZlbnRzKEQpfWVsc2UgVy5leHBvcnRzLk1lZGlhU3RyZWFtX2NsZWFyUGVuZGluZ0V2ZW50cyhEKX07Ckg2PWZ1bmN0aW9uKG4pe24uVWwmJihuLlVsLmRpc3Bvc2UoKSxuLlVsPW51bGwpO24uU0s9dm9pZCAwO24uWFY9dm9pZCAwfTsKSjQ9ZnVuY3Rpb24obixXLEQsYix2LGssaCl7dmFyIHg9V15uO3ZhciBMOyhufDIpPj0yNyYmbisyPDMzJiYoTD1iKHYsayxoKSk7aWYoISgobnw0KT4+NCkpZm9yKEQ9KEQlYltJWzVdXStiW0lbNV1dKSViW0lbNV1dO0QtLTspYltJW3heNDM4NF1dKGJbSVt4XjQzODldXSgpKTtpZigobi0yfDU4KT49biYmKG4tOHwxNSk8bil7Zm9yKHZhciBlPXheNDY3NCxHPVtdOysrZS1HW0lbNV1dLSh4XjQ2NDIpOyl7c3dpdGNoKGUpe2Nhc2UgeF40Njk3OmU9eF40NjU0O2NvbnRpbnVlO2Nhc2UgeF40NzI5OmU9eF40Njc1O2JyZWFrO2Nhc2UgeF40Njc1OmUtPXheNDYyNDtjb250aW51ZTtjYXNlIHheNDY2NDplPXheNDcwNjtjb250aW51ZTtjYXNlIHheNDY1MjplPXheNDcwMX1HW0lbeF40NjI4XV0oU3RyaW5nW0lbeF40NjU2XV0oZSkpfUw9R31yZXR1cm4gTH07CmZyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5qXygpLGI9RC5leHBvcnRzLk1lZGlhU2xpY2VfZ2V0VHlwZShXKSx2PUQuZXhwb3J0cy5NZWRpYVNsaWNlX2dldFNlZ051bShXKSxrPUQuZXhwb3J0cy5NZWRpYVNsaWNlX2dldFN0YXJ0VGltZShXKSxoPUQuZXhwb3J0cy5NZWRpYVNsaWNlX2dldER1cmF0aW9uKFcpLHg9RC5leHBvcnRzLk1lZGlhU2xpY2VfaXNFbmRPZlNlZ21lbnQoVykhPT0wLEw9RC5leHBvcnRzLk1lZGlhU2xpY2VfZ2V0U2xpY2VPZmZzZXQoVyksZT1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRTZWdtZW50TG10KFcpLEc9RC5leHBvcnRzLk1lZGlhU2xpY2VfaXNGYXN0U2Vla2FibGUoVykhPT0wLHI9RC5leHBvcnRzLk1lZGlhU2xpY2VfZ2V0Q2xpcElkKFcpLE49RC5leHBvcnRzLk1lZGlhU2xpY2VfZ2V0Q2xpcElkTGVuZ3RoKFcpLEg9RC5leHBvcnRzLk1lZGlhU2xpY2VfZ2V0Rm9ybWF0SWQoVyksQT1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRGb3JtYXRJZExlbmd0aChXKSwKeT1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRTZWdtZW50TWVkaWFTb3VyY2UoVyksVD1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRSZXF1ZXN0VG9rZW4oVyksej1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRSZXF1ZXN0VG9rZW5MZW5ndGgoVyksQz1ELm1lbW9yeS5oZWFwKCksUT0iIjtyJiZOPjAmJihRPWcuSEcobmV3IFVpbnQ4QXJyYXkoQyxyLE4pKS5yZXBsYWNlKC9cMC9nLCIiKSk7cj0iIjtIJiZBPjAmJihyPWcuSEcobmV3IFVpbnQ4QXJyYXkoQyxILEEpKS5yZXBsYWNlKC9cMC9nLCIiKSk7SD0iIjtUJiZ6PjAmJihIPWcuSEcobmV3IFVpbnQ4QXJyYXkoQyxULHopKS5yZXBsYWNlKC9cMC9nLCIiKSk7VD1yJiZuLkVlP24uRWUocik6bi5QSjtDPUQubWVtb3J5LmhlYXAoKTtBPUQuZXhwb3J0cy5NZWRpYVNsaWNlX2dldERhdGEoVyk7ej1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRMZW5ndGgoVyk7Qz1uZXcgUzUoWyhuZXcgVWludDhBcnJheShDLEEseikpLnNsaWNlKCldKTtBPQpELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRTZWdtZW50Qnl0ZVJhbmdlU3RhcnQoVyk7RD1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRTZWdtZW50TGVuZ3RoQnl0ZXMoVyk7Vz12b2lkIDA7RD4wJiZULlcoKSYmKFc9V18oQSxEKSk7aHx8dHlwZW9mIFQucmIhPT0ibnVtYmVyInx8KGg9VC5yYik7Yj1uZXcgcUkoYixULFcsIndhc20iLHYsayxoLEwseix4LGUsUSxHLHksSCk7eD1uZXcgYjgoYixDKTtpZihuLnBvbGljeS5Zcnx8bi5wb2xpY3kuUyQpYj0hIWIuTiYmdj09PW4ueHAseC5XPWI/bi5tOTprLHguWD1iP24uenI6aCxifHwobi54cD12LG4ubTk9eC5XLG4uenI9eC5YKTtyZXR1cm4geH07CnlrPWZ1bmN0aW9uKG4pe24uaj0hMDtuLlBEPSEwO24uWD0tMTtQdShuLEluZmluaXR5KX07Cm1pPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBvZiBuLkopSjAobixXKTtuLko9W107bi5OPW51bGx9OwpLdj1mdW5jdGlvbihuLFcsRD0hMSl7aWYobi5RRSl7bGV0IGI9bi5RRS5aRigpLHY9RlooYixXKSxrPU5hTixoPUkkKG4pO2gmJihrPUZaKGIsaC5QSi5pbmRleC5nZXRTdGFydFRpbWUoaC5qJCkpKTtpZih2PT09ayYmbi5OJiZuLk4uSiYma1F3KFNxKG4pLDApKXJldHVybiBXfW49QTAobixXLEQpO3JldHVybiBuPj0wP246TmFOfTsKUHU9ZnVuY3Rpb24obixXLEQpe24uUEouTigpO3ZhciBiPUEwKG4sVyk7aWYoYj49MClyZXR1cm4gYjtuLlY/LmNKKFcsRCk7Vz1NYXRoLm1pbihXLG4uVy5McygpKTtuLk49bi5wb2xpY3kudHc/bnVsbDpuLlBKLksoVykuQXdbMF07bWQobikmJihuLnBvbGljeS5YWSYmRD8uc2Vla1NvdXJjZT09PTYwfHxuLlFFJiZuLlFFLmFib3J0KCksbi5wb2xpY3kucG8mJm4uVj8uWSgpKTtuLlMkPTA7cmV0dXJuIG4uTj9uLk4uc2VnbWVudFN0YXJ0VGltZTpXfTsKaVk9ZnVuY3Rpb24obil7cmV0dXJuIG4uVy5XMigpfTsKS3I9ZnVuY3Rpb24obixXLEQ9ITEsYj0hMSl7VyYmczQmJm4uVy5CVyhXLml3KCkpO0R8fG4uVj8uVigpO24uUUU9VztuLlY/LnR3KG4uUUUsYil9OwpJJD1mdW5jdGlvbihuKXtyZXR1cm4gbi5wb2xpY3kuZkM/bi5WPy5iZCgpfHxudWxsOm4uUUUmJm4uUUUuWmcoKX07Cmhacj1mdW5jdGlvbihuKXt2YXIgVz17fTtmb3IobGV0IEQ9MDtEPG4uTy5sZW5ndGg7RCsrKVdbYHIke0R9YF09bi5PW0RdO3JldHVybiBXfTsKTzQ9ZnVuY3Rpb24obixXKXtpc05hTihuLlkpfHxuLlUoImFzd3IiLHtzcTpXLmluZm8uQXdbMF0uaiQsaWQ6Vy5pbmZvLkF3WzBdLlBKLmluZm8uaXRhZyx4dGFnOlcuaW5mby5Bd1swXS5QSi5pbmZvLkosZXA6RGF0ZS5ub3coKS1uLll9KTtuLkoucHVzaChXKTtuLk49Zy5VTShXLmluZm8uQXcpO24uTy5wdXNoKFcuZ2EoKSk7bi5PLmxlbmd0aD40JiZuLk8uc2hpZnQoKX07CnhYQz1mdW5jdGlvbihuLFcpe2lmKFcuUUEoKSl7bGV0IEQ9Vy54OSgpO2ZvcihsZXQgYiBvZiBEKW4ucG9saWN5LlcmJlcgaW5zdGFuY2VvZiBTbiYmbi5VKCJvbWJsc3MiLHtzOmIuaW5mby5nYSgpfSksbi5XZyhXLmluZm8uQXcsYixXLlh2KCkpfX07CkxqVT1mdW5jdGlvbihuKXtuLkoubGVuZ3RoP24uTj1nLlVNKGcuVU0obi5KKS5pbmZvLkF3KTpuLlcuUkMoKT9uLk49bi5XLld4KCkuaW5mbzpuLk49SSQobil9OwpQNj1mdW5jdGlvbihuLFcpe3ZhciBEPXtlVzpbXSxCaTpbXX07cmV0dXJuIG4uVj8uTyhXKT8/RH07CkEwPWZ1bmN0aW9uKG4sVyxEPSExKXtpZighbi5OfHwhbi5OLkopcmV0dXJuIE5hTjtuPVNxKG4pO1c9ZVp0KG4sVysuMDIsRCk7cmV0dXJuIFc8MD9OYU46a1F3KG4sRD9XOjApP25bV10uc2VnbWVudFN0YXJ0VGltZTpOYU59OwptZD1mdW5jdGlvbihuKXtpZihuLlBKLmluZm8uSUI9PT0iZiJ8fG4ucG9saWN5LkomJm4uVy5vQygpKXJldHVybiEwO3ZhciBXPUkkKG4pO2lmKCFXKXJldHVybiExO3ZhciBEPVpkKFcpJiZXLmFaO3JldHVybiBuLmlzTWFuaWZlc3RsZXNzJiZuLnR3PjA/RHx8Vy5qJD49bi50dzpEfTsKWmQ9ZnVuY3Rpb24obil7cmV0dXJuIG4/bi5WKCk6ITF9OwpnVEM9ZnVuY3Rpb24obil7dmFyIFc9SSQobik7cmV0dXJuIFc/Vy5qLW4ubG9hZGVyLmdldEN1cnJlbnRUaW1lKCk6MH07ClU0PWZ1bmN0aW9uKG4sVyxELGIpe2lmKCFuLlBKLmluZGV4Lk1JKFcsITApKXJldHVybiExO3RyeXttaShuKTtuLlcuSzgoVyk7aWYobi5wb2xpY3kuTilyZXR1cm4gbi5OPW51bGwsITA7Yj5EP1B1KG4sYik6bi5OPW4uUEouaihXLTEsITEpLkF3WzBdfWNhdGNoKHYpe3JldHVybiBXPUIkKHYpLFcuZGV0YWlscy5yZWFzb249InJvbGxia2VyciIsbi5sb2FkZXIuaGFuZGxlRXJyb3IoVy5lcnJvckNvZGUsVy5kZXRhaWxzLFcuc2V2ZXJpdHkpLCExfXJldHVybiEwfTsKSjA9ZnVuY3Rpb24obixXLEQ9ITEpe24uY3EoVyxEKTtXLmRpc3Bvc2UoKX07Cmc3PWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1XXm47aWYoISgobnw3KT4+NCkpe3ZhciB2PURbSVtiXjIzXV0oSVtiXjJdKSxrPXt9O2ZvcihsZXQgTD0wO0w8dltJWzVdXTtMKyspdmFyIGg9UjAoNixiXjczMjUsdixMLGspO3ZhciB4PWt9aWYoKG4tOV4yMSk8biYmbi03PDwxPj1uKWZvcih2PURbSVs1XV07djspRFtJW2JeNjMzM11dKERbSVszXV0oLS12LDEpWzBdKTtpZigobnw0MCk9PW4pe3Y9Yl45MDYyO2ZvcihrPVtdOysrdi1rW0lbNV1dLShiXjg5NjYpOyl7c3dpdGNoKHYpe2Nhc2UgYl44OTg4OnYtPWJeOUUzO2Nhc2UgYl45MDg1OmNhc2UgYl45MDgyOmNhc2UgYl45MDgzOmNvbnRpbnVlO2Nhc2UgYl45MDUzOnY9Yl44OTY5O2Nhc2UgYl45MDgwOmNhc2UgYl45MDgxOmNhc2UgYl45MDMwOmNvbnRpbnVlO2Nhc2UgYl44OTY4OnY9Yl45MDgxfWtbSVtiXjkwMDhdXShTdHJpbmdbSVtiXjg5ODBdXSh2KSl9eD1rfXJldHVybiB4fTsKeW89ZnVuY3Rpb24obil7dmFyIFc9bi5XLld4KCk7cmV0dXJuIFc/Vy5pbmZvOkkkKG4pfTsKRTQ9ZnVuY3Rpb24obixXKXt2YXIgRDtmb3IoRD0wO0Q8bi5KLmxlbmd0aCYmVyE9PW4uSltEXTtEKyspO2lmKEQ9PT1uLkoubGVuZ3RoKUowKG4sVyk7ZWxzZXtmb3IoO0Q8bi5KLmxlbmd0aDspSjAobixuLkoucG9wKCkpO3ZhciBiPXlvKG4pO2ImJmIuUEouRCgpJiZnLm9NKFcuaW5mby5Bdyx2PT4kTih2LGIpKT8obi5OPWIsbi5wb2xpY3kuVyYmbi5VKCJjZXIiLHtsc3I6ImxzcCIsCmxzcDpiLmdhKCl9KSk6KHhOKFcuaW5mby5Bd1swXSk/KG4uTj1XLldvJiZXLldvLlc/VEQxKFcuV28uVyk6bER4KFcuaW5mby5Bd1swXSksbi5wb2xpY3kuVyYmbi5VKCJjZXIiLHtsc3I6bi5OLmdhKCksbHNwOmI/LmdhKCl9KSk6KG4uTj1udWxsLG4ucG9saWN5LlcmJm4uVSgiY2VyIix7bHNyOiJudWxsIixsc3A6Yj8uZ2EoKX0pKSxuLmxvYWRlci5pc09mZmxpbmUoKSYmIW4ucG9saWN5LlRRfHxKMChuLFcsITApKX19OwppUz1mdW5jdGlvbihuKXtyZXR1cm4gbWQobil8fFpkKG4uVy5XeCgpPy5pbmZvKX07ClNxPWZ1bmN0aW9uKG4pe3ZhciBXPVtdLEQ9SSQobik7RCYmVy5wdXNoKEQpO1c9Zy53eihXLG4uVy5mMygpKTtmb3IobGV0IGIgb2Ygbi5KKWZvcihsZXQgdiBvZiBiLmluZm8uQXcpYi5TMyYmKFc9Zy5FTShXLGs9PiF0SihrLHYpKSksKHhOKHYpfHx2LmNKKCkpJiZXLnB1c2godik7Cm4uTiYmIXpBMihuLk4sZy5VTShXKSxuLk4uUEouVygpKSYmVy5wdXNoKG4uTik7cmV0dXJuIFd9OwprUXc9ZnVuY3Rpb24obixXKXtpZighbi5sZW5ndGgpcmV0dXJuITE7Zm9yKFcrPTE7VzxuLmxlbmd0aDtXKyspaWYoIUx6KG5bVy0xXSxuW1ddKSlyZXR1cm4hMTtyZXR1cm4hMH07CmVadD1mdW5jdGlvbihuLFcsRD0hMSl7dmFyIGI9LTE7Zm9yKGxldCB2PTA7djxuLmxlbmd0aDsrK3Ype2xldCBrPW5bdl07aWYoay5YPD1XKWlmKEQpYj12O2Vsc2UgaWYoay5zZWdtZW50U3RhcnRUaW1lK2suVz49VylyZXR1cm4gdn1yZXR1cm4gYn07CnZhciBZalo9ZnVuY3Rpb24obixXKXtyZXR1cm4gTTNbSVsxMF1dKHRoaXMsMiw0OTA2LG4sVyl9Owp1Uz1mdW5jdGlvbihuKXtyZXR1cm4hKCFuLk58fG4uTi5QSj09PW4uUEopfTsKWDB0PWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gbi5wb2xpY3kuTj9uLnpzKCEwKTxEOihuPXlvKG4pKSYmIVpkKG4pP24uaj5XJiZuLmo8VytEOiExfTsKZy5vJD1mdW5jdGlvbihuKXtuLlY/LlYoKTtuLmtJKCl9Owpxemg9ZnVuY3Rpb24obil7cmV0dXJuISFuLk4mJm4uTi5qJCE9PS0xJiZuLk4uaiQ8bi5QSi5pbmRleC5aTygpfTsKR1FiPWZ1bmN0aW9uKG4pe3ZhciBXPW4uTjtXJiZXLmokPT09LTEmJihuPW4uVy5XeCgpKSYmeE4obi5pbmZvKSYmKG49bi5pbmZvLmokLFcuWT0idXBkYXRlTGFzdFNsaWNlUmVxdWVzdGVkIixXLmokPW4pfTsKdGRqPWZ1bmN0aW9uKG4pe3JldHVybiBnLm9NKG4uSixXPT5XLmZKKX07CiRYMT1mdW5jdGlvbihuLFcpe3ZhciBEPWlZKG4pO3JldHVybiBEJiZELmluZm8udHlwZSE9PTY/IVcuTyhuLEQuaW5mby5qJCk6ITF9OwpyeUM9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgb2Ygbi5jSilpZihELnNlZ21lbnROdW1iZXI9PT1XKXJldHVybiBELnBWPzI6MTtyZXR1cm4gMH07Ck44Wj1mdW5jdGlvbih7aGFzU3ViZnJhZ21lbnRlZEZtcDQ6bj0hMSxJMjpXPSExfT17fSl7dmFyIEQ9bmV3IHNLaTtELnRJPW58fFc7cmV0dXJuIER9OwpkdT1mdW5jdGlvbihuKXtyZXR1cm4gbi5OJiZuLkZlJiZuLnBsYXliYWNrU3RhcnRQb2xpY3l9OwpKa0M9ZnVuY3Rpb24obixXLEQ9ITEpe1cudmlkZW8ucXVhbGl0eU9yZGluYWw+MTA4MCYmIW4uV0gmJihuLmUkPTM2NzAwMTYwLG4udko9NTI0Mjg4MCxuLkhKPU1hdGgubWF4KDQxOTQzMDQsbi5ISiksbi5XSD0hMCk7Vy52aWRlby5xdWFsaXR5T3JkaW5hbD4yMTYwJiYhbi5iZSYmKG4uZSQ9MTA0ODU3NjAwLG4uTnM9MTMxMDcyMDAsbi5iZT0hMCk7Zy5kTShuLnlRLmV4cGVyaW1lbnRzLCJodG1sNV9zYW1zdW5nX2thbnRfbGltaXRfbWF4X2JpdHJhdGUiKSE9PTA/Vy5pc0VuY3J5cHRlZCgpJiZnLmQ4KCkmJmcudWIoInNhbXN1bmciKSYmKGcudWIoImthbnQiKXx8Zy51YigibXVzZSIpKSYmKG4uTnM9Zy5kTShuLnlRLmV4cGVyaW1lbnRzLCJodG1sNV9zYW1zdW5nX2thbnRfbGltaXRfbWF4X2JpdHJhdGUiKSk6Vy5pc0VuY3J5cHRlZCgpJiZnLmQ4KCkmJmcudWIoImthbnQiKSYmKG4uTnM9MTMxMDcyMCk7bi55UCE9PTAmJlcuaXNFbmNyeXB0ZWQoKSYmKG4uTnM9bi55UCk7bi5KRyE9PQowJiZXLmlzRW5jcnlwdGVkKCkmJkQmJihuLk5zPW4uSkcpO1cuTnMmJihuLlFIPU1hdGgubWF4KG4uWm0sTWF0aC5taW4obi5ISiw1KlcuTnMpKSl9Owp6Wj1mdW5jdGlvbihuLFcsRD0wKXtyZXR1cm4gZy5kTShuLnlRLmV4cGVyaW1lbnRzLFcpfHxEfTsKbFM9ZnVuY3Rpb24obixXLEQsYil7bi5GZSYmKG4ucGxheWJhY2tTdGFydFBvbGljeT1XLG4uTTU9RCxuLkRDPWIpfTsKUjY9ZnVuY3Rpb24obixXKXtpZihXPDApcmV0dXJuITA7dmFyIEQ9bi54JCgpO3JldHVybiBXPER8fFc9PT1EJiYhbi5zSnx8Vz09PUQmJihuPW4uT2coKSkmJlc9PT1uLmokPyEwOiExfTsKS2EyPWZ1bmN0aW9uKG4sVyxEKXtpZighUjYobixXKSlyZXR1cm4gMDtpZighbi50SXx8IWlzTmFOKEQpJiZEPjApcmV0dXJuIDI7aWYoVzwwKXJldHVybiAxO0Q9bi54JCgpO3JldHVybiBXPER8fFc9PT1EJiYobj1uLk9nKCkpJiZXPT09bi5qJCYmIW4ucGVuZGluZz8yOjF9OwpwMGI9ZnVuY3Rpb24obixXLEQpe2lmKCEoVy5YZiYmbi5pc0NvbXBsZXRlKCkmJm4uY2FuUmV0cnkoKSYmbi5pbmZvLlhiLnBTKFcsRCkpKXJldHVybiAwO3ZhciBiPW4uaW5mby5YYi5qO2lmKGImJiFXLmVuYWJsZVNhYnJQcm9iZU9uU2VydmVySW5pdGlhdGVkSG9zdEZhbGxiYWNrKXJldHVybiAwO249VVkoRCxGNShuLmluZm8uWGIsITEsVykpO3JldHVybiBiJiYoRD0oMCxnLlIpKCktbi5YLG4uWD4wJiZEPFcuc2FiclN1Y2Nlc3NmdWxQcm9iZVRpbWVvdXRNcyk/MDpuLmorVy5YZipsTChuLCEwLGIpPigwLGcuUikoKT8wOjF9OwpqcT1mdW5jdGlvbihuLFcsRCl7aWYobi5wb2xpY3kuem0pcmV0dXJuITE7dmFyIGI9bi5KQzt2YXIgdj1XLk4/LlRDKCl8fC0xO2IuSj09PTMmJnYrMT49Yi5YPyhiLlUoInNkYWkiLHtoYWx0cnE6disxLGVzdDpiLlh9KSxiPSExKTpiPWIuSiE9PTI7aWYoIWJ8fCEoVy5OP1cuTi5QSi5YYjpXLlBKLlhiKS5ZKG4ucG9saWN5LG4ubm4sbi5sb2FkZXIuSXcpfHxuLmxvYWRlci5pc1N1c3BlbmRlZCYmKCFUWihuLnNjaGVkdWxlKXx8bi5sb2FkZXIuT00pKXJldHVybiExO2lmKG4ucG9saWN5LkomJnFzPj01KXJldHVybiBnLkphKG4ubG9hZGVyLmoyKSwhMTtpZihuLkt1LmlzTWFuaWZlc3RsZXNzKXtpZihXLkoubGVuZ3RoPjAmJlcuTiYmVy5OLmokPT09LTF8fFcuSi5sZW5ndGg+PW4ucG9saWN5LndvfHwhbi5wb2xpY3kuWE0mJlcuSi5sZW5ndGg+MCYmIW4ucG9saWN5LlYudEkpcmV0dXJuITE7aWYoVy5qKXJldHVybiFuLkt1LmlzTGl2ZXx8IWlzTmFOKG4uWkEpfWlmKHRkaihXKSlyZXR1cm4hMTsKaWYoIVcuTil7aWYoIVcuUEouTigpKXJldHVybiExO1B1KFcsbi5sb2FkZXIuZ2V0Q3VycmVudFRpbWUoKSl9aWYoaVkoVykmJihXLld4KCkhPT1pWShXKXx8bi5sb2FkZXIuaXNTdXNwZW5kZWQpKXJldHVybiExO3Y9KGI9bi5wb2xpY3kuc1MpJiYhVy5KLmxlbmd0aCYmVy56cyghMCk8TWF0aC5taW4oYixELnpzKCkpO2I9Vy5KLmxlbmd0aCtELkoubGVuZ3RoO3ZhciBrPShXLkoubGVuZ3RoP1cuSlswXS5ReSgpOiExKXx8KEQuSi5sZW5ndGg/RC5KWzBdLlF5KCk6ITEpfHxuLkt1LmlzTGl2ZTsodnx8aykmJi0tYjtpZihiKzE+PW4ucG9saWN5LkN5KXJldHVybiExO2I9Vy5OO2lmKCFiKXJldHVybiEwO2IuY0ooKSYmYi5QSi5OKCkmJihXLk49Zy5VTShiLlBKLlZRKGIpKSxiPVcuTik7aWYoIWIuVigpJiYhYi5QSi5YKGIpKXJldHVybiExO2s9bi5LdS5YZ3x8bi5LdS5pc1dpbmRvd2VkTGl2ZTtpZihuLkt1LmlzTWFuaWZlc3RsZXNzJiZrKXtrPVcuUEouaW5kZXgueCQoKTt2YXIgaD0KRC5QSi5pbmRleC54JCgpO2s9TWF0aC5taW4oayxoKTtpZihXLlBKLmluZGV4LlRYKCk+MCYmaz4wJiZiLmokPj1rKXJldHVybiBXLnR3PWssRC50dz1rLCExfWlmKGIuUEouaW5mby5hdWRpbyYmYi5jSigpfHxiLlYoKSlyZXR1cm4hMTtrPSFXLlBEJiYhRC5QRDtpZih2PSF2KXY9Yi5qLHY9ISEoRC5OJiYhWmQoRC5OKSYmRC5OLmo8dik7aD1XPT09bi52aWRlb1RyYWNrJiZuLnBvbGljeS5UQztyZXR1cm4gdiYmKCFuLkt1LmlzTWFuaWZlc3RsZXNzfHxELk4mJkQuTi5qJiZiLmopJiZrJiYhaHx8bi5wb2xpY3kuQlYmJiFXLlBEJiZELlBEPyExOnhOKGIpJiZiLmo+WXppKG4sVyk/KFl6aShuLFcpLCExKToobj1XLlFFKSYmbi5pc0xvY2tlZCgpPyExOiEwfTsKVm89ZnVuY3Rpb24obixXKXtIJGgobi5sb2FkZXIsVyk7dmFyIEQ9elAoVyksYj1uLmxvYWRlci5sdSgpO0Q9e2lqOm4uc2NoZWR1bGUsczQ6RCxCbDpmaXgobi5JZyxEKSxRbjpoSihXLkF3WzBdKSxkaXNhYmxlUmVjb3JkaW5nOmdaKDQwLDEyMTIsVy5YYi5OKSxORDpuLnBvbGljeS5XLEJlOih2LGspPT57bi5sb2FkZXIuS2EodixrKX19OwpuLnNjaGVkdWxlLkouViYmKEQucVk9KG4udmlkZW9UcmFjay5QSj8uaW5mby5Oc3x8MCkrKG4uYXVkaW9UcmFjay5QSj8uaW5mby5Oc3x8MCkpO24uaG4mJihELmokPVcuQXdbMF0uaiQsRC5aQT1XLlpBLEQuaG49bi5obik7Yj17Vzc6d0xVKFcsbi5sb2FkZXIuZ2V0Q3VycmVudFRpbWUoKSksZTE6bi5wb2xpY3kuc1YmJnlzKFcpJiZXLkF3WzBdLlBKLmluZm8udmlkZW8/RWpaKG4uY1YpOnZvaWQgMCxTTjpuLnBvbGljeS5UQyxwb1Rva2VuOm4ubG9hZGVyLk1ZKCksVWo6bi5sb2FkZXIuVTQoKSxKTzppc05hTihuLkpPKT9udWxsOm4uSk8sYUk6bi5hSSxQbjpuLlBuLHEkOmJ9O3JldHVybiBuZXcgQUIobi5wb2xpY3ksVyxELG4ubm4sKHYsayk9Pnt0cnl7YTp7bGV0IE1pPXYuaW5mby5Bd1swXS5QSixNVT1NaS5pbmZvLnZpZGVvP24udmlkZW9UcmFjazpuLmF1ZGlvVHJhY2s7aWYoISh2LnN0YXRlPj0yKXx8di5pc0NvbXBsZXRlKCl8fHYuQWcoKXx8ISghbi5sb2FkZXIubWVkaWFTb3VyY2V8fApuLmxvYWRlci5pc1N1c3BlbmRlZHx8TVUuenMoKT4zKSl7e3ZhciBoPW4ucG9saWN5LHg9bi5ubjtsZXQgSUM9di5BZygpO2lmKHYuaXNDb21wbGV0ZSgpfHwhSUN8fHYuaW5mby5YYi5wUyhoLHgpKXZhciBMPTA7ZWxzZXt2YXIgZT1oLnpmO2lmKCFlfHxJQzxlKUw9MDtlbHNle3ZhciBHPVVZKHgsRjUodi5pbmZvLlhiLCEwLGgpKTtMPUcuTnx8Ry50aW1lZE91dHx8Ry5zdGFydGVkPzA6Mn19fUw9PT0xJiYobi5WPSEwKTtmckMobix2LEwpO2lmKHYuaXNDb21wbGV0ZSgpfHx2LnFOKCkmJms8Myl7aWYobi5wb2xpY3kuVyl7bGV0IElDPXYudGltaW5nLkQoKTtJQy5yc3Q9di5zdGF0ZTtJQy5zdHJtPXYueGhyLkdwKCk7SUMuY25jbD12LnhociYmdi50NS5YPzE6MDtuLmxvYWRlci5VKCJycXMiLElDKX12Lm9QJiZuLmxvYWRlci5VKCJzYndlMyIse30sITApfWlmKCFuLnFOKCkmJnYuc3RhdGU+PTIpe1hTaChuLnRpbWluZyx2LE1pKTt2YXIgcj1uLmxvYWRlcjtuLkpPJiZ2Lnp3JiYKciYmKG4uSk89TmFOLG4ubG9hZGVyLm45KHYuencpLG4ubG9hZGVyLk1qKCksbi5sb2FkZXIuVSgiY2FiclV0Y1NlZWsiLHttZWRpYVRpbWVTZWNvbmRzOnYuend9KSk7di50ViYmbi5KTyYmdi50ViYmIXYudFYuYWN0aW9uJiYobi5sb2FkZXIud1Iobi5KTyksbi5KTz1OYU4sbi5sb2FkZXIuVSgiY2FiclV0Y1NlZWtGYWxsYmFjayIse3RhcmdldFV0Y1RpbWVTZWNvbmRzOm4uSk99KSk7di5BaCYmbi5sb2FkZXIuc1codi5BaCk7bi5wb2xpY3kuTmQmJihuLlBuPXYuUG4pO2lmKHYuc3RhdGU9PT0zKXtFNChNVSx2KTt5cyh2LmluZm8pJiZDcihuLE1VLE1pLCEwKTtpZihuLnNVKXtsZXQgSUM9di5pbmZvLllsKCk7SUMmJm4uc1UuWjUodi5pbmZvLkF3WzBdLmokLE1pLmluZm8uaWQsSUMpfW4ubG9hZGVyLkJZKCl9ZWxzZSBpZih2LmlzQ29tcGxldGUoKSYmdi5pbmZvLkF3WzBdLnR5cGU9PT01KXtpZih2LnN0YXRlIT09NCl2LnRuKCkmJm4ubG9hZGVyLmhhbmRsZUVycm9yKHYuVkcoKSwKdi55MCgpKTtlbHNle3ZhciBOPSh2LmluZm8uQXdbMF0uUEouaW5mby52aWRlbz9uLnZpZGVvVHJhY2s6bi5hdWRpb1RyYWNrKS5KWzBdfHxudWxsO04mJk4gaW5zdGFuY2VvZiBBQiYmTi5BZygpJiZOLk1CKCl9di5kaXNwb3NlKCl9ZWxzZXtpZighdi50bigpJiZ2LmZKJiZ2LnN0YXRlPj0yJiZ2LnN0YXRlIT09Myl7dmFyIEg9di54aHIuZ2V0UmVzcG9uc2VIZWFkZXIoIlgtUmVzcG9uc2UtSXRhZyIpO2lmKEgpe3ZhciBBPXlrcihuLmNWLEgpLHk9di5pbmZvLlc7aWYoeSl7dmFyIFQ9eS1BLkhKKCk7QS5jSj0hMDt2LmluZm8uQXdbMF0uUEouY0o9ITE7dmFyIHo9QS5ZKFQpO3YuaW5mbz16O2lmKHYuV28pe3ZhciBDPXYuV28sUT16LkF3OyhRLmxlbmd0aCE9PUMuQXcubGVuZ3RofHxRLmxlbmd0aDxDLmpTLmxlbmd0aCkmJmcuY18oImRhc2gvcmVxdWVzdCIsMjYwNTExMTE5LGAke1EubGVuZ3RofWAsYCR7Qy5Bdy5sZW5ndGh9YCxgJHtDLmpTLmxlbmd0aH1gKTtDLkF3PVE7bGV0IElDPQpRWzBdLnJhbmdlLElNPW5ldyBTNTtmb3Ioaz0wO2s8Qy5qUy5sZW5ndGg7aysrKWU1KElNLEMualNba10uSik7Zm9yKGs9MDtrPEMualMubGVuZ3RoO2srKyl7Qy5qU1trXS5pbmZvPVFba107bGV0IFlsPVFba10ucmFuZ2U7Qy5qU1trXS5KPWdkKElNLFlsLnN0YXJ0LUlDLnN0YXJ0LFlsLmxlbmd0aCl9fXYuZko9ITE7QjYobi5sb2FkZXIsbi52aWRlb1RyYWNrLEEpO3ZhciBWPW4udmlkZW9UcmFjaztWLk4mJihWLk4uUEo9QSk7bi5sb2FkZXIuWUooQS5pbmZvLnZpZGVvLnF1YWxpdHkpO3ZhciBMdD12Llh2KCk7THQmJkEuaW5mby5sYXN0TW9kaWZpZWQmJkEuaW5mby5sYXN0TW9kaWZpZWQhPT0rTHQmJkU0KG4udmlkZW9UcmFjayx2KX19ZWxzZSB2LmZKPSExfXYuWHQ/Lml0YWdEZW55bGlzdCYmbi5sb2FkZXIuV0Yodi5YdC5pdGFnRGVueWxpc3QpO2lmKHYuc3RhdGU9PT00KUYwKG4sdiksbi5KQyYmbi5KQy5TJCh2LmluZm8sbi5zVSk7ZWxzZSBpZihuLnBvbGljeS5lNCYmdi5RQSgpJiYKIXYuaXNDb21wbGV0ZSgpJiYhRjAobix2KSYmIXYudG4oKSlicmVhayBhO2lmKHYudG4oKSl7bGV0IElDPXYuaW5mby5Bd1swXS5QSixJTT12LlZHKCk7aWYoZ1ooMjQsMTE2NCxJQy5YYi5OKSl7bGV0IFR6PWcudXAodi5zOCgpLDMpO24ubG9hZGVyLlUoImRsZGJyZXJyIix7ZW06VHp8fCJub25lIn0pfWxldCBZbD12LmluZm8uQXdbMF0uaiQsajE9ekkobi5KQyx2LmluZm8uQXdbMF0uWCxZbCk7SU09PT0ibmV0LmJhZHN0YXR1cyImJihuLk4rPTEpO2lmKHYuY2FuUmV0cnkoKSYmd3Uobi5sb2FkZXIpKXtpZighKHYuaW5mby5YYi5KPj1uLnBvbGljeS5sTSYmbi5zVSYmdi5pbmZvLmlzRGVjb3JhdGVkKCkmJklNPT09Im5ldC5iYWRzdGF0dXMiJiZNMihuLnNVLGoxLFlsKSkpe3ZhciB0aT0oSUMuaW5mby52aWRlbyYmSUMuWGIuSj4xfHx2LmxOPT09NDEwfHx2LmxOPT09NTAwfHx2LmxOPT09NTAzKSYmISh3QyhuLmNWLmopLnNpemU+MCkmJiFnWig1NCwxMTg2LElDLlhiLk4pLEhaPQp2LnkwKCksWjE9SUMuaW5mby52aWRlbz9uLnZpZGVvVHJhY2s6bi5hdWRpb1RyYWNrO3RpJiYoSFouc3R1bj0iMSIpO24ubG9hZGVyLmhhbmRsZUVycm9yKElNLEhaKTtuLnFOKCl8fCh0aSYmYXEobi5jVixJQyksRTQoWjEsdiksbi5sb2FkZXIuQlkoKSl9fWVsc2UgQT0xLG4uc1UmJnYuaW5mby5pc0RlY29yYXRlZCgpJiZJTT09PSJuZXQuYmFkc3RhdHVzIiYmTTIobi5zVSxqMSxZbCkmJihBPTApLG4uS3UuaXNMaXZlJiZ2LlZHKCk9PT0ibmV0LmJhZHN0YXR1cyImJm4uTjw9bi5wb2xpY3kueGgqMj8oajQobi5LdSksbi5LdS5YZ3x8bi5LdS5pc1ByZW1pZXJlP2RWKG4ubG9hZGVyLDAse3FkOiJiYWRTdGF0dXNXb3JrYXJvdW5kIn0pOm4uS3UuaXNXaW5kb3dlZExpdmU/ZFYobi5sb2FkZXIsbi5LdS5KVSx7cWQ6ImJhZFN0YXR1c1dvcmthcm91bmQiLHFhOiEwfSk6UiQobi5sb2FkZXIpKTpuLmxvYWRlci5oYW5kbGVFcnJvcihJTSx2LnkwKCksQSk7aXNOYU4obi5KTyl8fChuLmxvYWRlci53UihuLkpPKSwKbi5KTz1OYU4pfW4ucG9saWN5LkhEJiYhdi5pc0NvbXBsZXRlKCk/UW8obi5sb2FkZXIpOm4ubG9hZGVyLkJZKCk7dmFyIFFqPXAwYih2LG4ucG9saWN5LG4ubm4pO2ZyQyhuLHYsUWopfX19fX1jYXRjaChNaSl7UWo9bi5qPzE6MCxuLmo9ITAsdj1qMihRaiksUWo9QiQoTWksUWopLG4ubG9hZGVyLmhhbmRsZUVycm9yKFFqLmVycm9yQ29kZSxRai5kZXRhaWxzLFFqLnNldmVyaXR5KSx2fHxuLmxvYWRlci56aSgpfX0sYil9OwpJcmI9ZnVuY3Rpb24obixXLEQpe2lmKGpxKG4sVyxEKSl7RD1uLkooVyxEKTtpZihuLnNVKXt2YXIgYj1ELkF3WzBdLlBKLmluZm8uaWQ7dmFyIHY9bi5KQzt2YXIgaz1ELkF3WzBdLmokO3Y9azwwJiYhaXNOYU4odi5qKT92Lmo6aztrPXpJKG4uSkMsRC5Bd1swXS5YLHYpO2xldCBMPVc9PT1uLmF1ZGlvVHJhY2s/MToyLGU9RC5Bd1swXS5QSi5pbmZvLklCLEc9Yi5zcGxpdCgiOyIpWzBdO2E6e3ZhciBoPW4uSkM7aWYoaC5OKXt2YXIgeD1oLk4uZmYuZXZlbnQ7aWYoaC5OLmokPT09dil7aD14PT09InByZWRpY3RTdGFydCI/dm9pZCAwOmguTi5mZi5ldmVudDticmVhayBhfWlmKGguTi5qJD09PXYtMSl7aD14PT09InN0YXJ0Inx8eD09PSJjb250aW51ZSI/eDp2b2lkIDA7YnJlYWsgYX19aD12b2lkIDB9aWYobi5wb2xpY3kuVlEmJm4uSkMuSiE9PTApYj1nLkp5aShuLnNVLGssdixiLEwsZSxoKSx2PDAmJkw9PT0yJiZsdShuLkpDLDAsMCwhMCksYiYmKG4ubG9hZGVyLlUoInNkYWkiLAp7c3NkYWlpbmZvOiIxIixkczpiLk15Py5CZnx8IiIsc2tpcHNxOmIuTXk/LkRKfHwtMSxpdGFnOkcsZjplLHNnOnYsc3Q6ay50b0ZpeGVkKDMpfSksRC5YPWIpO2Vsc2UgaWYoYj1uLnNVLllsKGssdixiLEwsZSxoKSx2PDAmJkw9PT0yJiZsdShuLkpDLDAsMCwhMCksYil7az17ZGVjX3NxOnYsaXRhZzpHLHN0OmsudG9GaXhlZCgzKX07aWYobi5wb2xpY3kubiQmJlcuaXNSZXF1ZXN0UGVuZGluZyh2LTEpKXtuLmxvYWRlci5VKCJzZGFpIix7d3RfZGFpc3RhdGVfb25fc2c6di0xfSk7cmV0dXJufW4ubG9hZGVyLlUoInNkYWkiLGspO2ImJihELk49bmV3IGcud1ooYikpO24ucG9saWN5LlcmJih2PUQuWGIuVy5nZXQoImlkIil8fCIiLGI9RC5OPy5nZXQoImlkIil8fCIiLHYhPT1iJiZuLmxvYWRlci5VKCJzdG1pZG1pc21hdGNoIix7Y2lkOnYsYWlkOmJ9KSl9ZWxzZSBuLkpDLkohPT01JiZuLmxvYWRlci5VKCJzZGFpIix7bm9kZWNfc3E6dixpdGFnOkcsc3Q6ay50b0ZpeGVkKDMpfSl9bi5wb2xpY3kuQ20mJgpELkF3WzBdLmokIT09LTEmJkQuQXdbMF0uaiQ8bi5LdS5JdCYmKEQ9Vy5QSi5qKG4uS3UuSXQsITEpKTtPNChXLFZvKG4sRCkpO2l1KG4udGltaW5nKTtuLlc/Lk4oRC5YYil9fTsKWXppPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5KQztEPUQuTj9ELk4uZmY6bnVsbDtpZihuLnBvbGljeS5UQyYmRClyZXR1cm4gRC5zdGFydFNlY3MrRC5DZisxNTtXPU9iKG4ubG9hZGVyLFcpO24ucG9saWN5LmpXPjAmJihEPSgoMCxnLlIpKCktbi5sb2FkZXIucUcpLzFFMyxXPU1hdGgubWluKFcsbi5wb2xpY3kualcrbi5wb2xpY3kuTEsqRCkpO1c9bi5sb2FkZXIuZ2V0Q3VycmVudFRpbWUoKStXO3JldHVybiBuLnBvbGljeS56NCYmKEQ9U3pNKG4ubG9hZGVyKStuLnBvbGljeS56NCxEPFcpPyhuLmxvYWRlci5VKCJtcmwiLHtvcmk6Vyxtb2Q6RH0sITApLG4ucG9saWN5LmxXJiZjNihuLmxvYWRlciksRCk6V307CmZyQz1mdW5jdGlvbihuLFcsRCl7aWYoRCE9PTApe2E6aWYoVz1XLmluZm8sRD1EPT09MixXLk4pVz1udWxsO2Vsc2V7dmFyIGI9Vy5Bd1swXTtpZihXLnJhbmdlKXZhciB2PVdfKFcucmFuZ2Uuc3RhcnQsTWF0aC5taW4oNDA5NixXLlcpKTtlbHNle2lmKFcuSiYmVy5KLmluZGV4T2YoIi9yYW5nZS8iKT49MHx8Vy5YYi5XLmdldCgiZGVmcmFnIik9PT0iMSJ8fFcuWGIuVy5nZXQoIm90ZiIpPT09IjEiKXtXPW51bGw7YnJlYWsgYX12PVdfKDAsNDA5Nil9dj1uZXcgd2soW25ldyBxSSg1LGIuUEosdiwiY3JlYXRlUHJvYmVSZXF1ZXN0SW5mbyIrYi5ZLGIuaiQpXSxXLkopO3YucFM9RDt2Lk49Vy5OO1c9dn1XJiZWbyhuLFcpfX07CkNyPWZ1bmN0aW9uKG4sVyxELGIpe2lmKCEoRC5OKCl8fEQuUyQoKXx8RC5jSnx8IUQuWGIuWShuLnBvbGljeSxuLm5uLG4ubG9hZGVyLkl3KXx8RC5pbmZvLklCPT09ImYifHxuLnBvbGljeS5OKSl7aWYoYil7Yj1uLklnO3ZhciB2PUQuaW5mbztiPXJWKGIsdi52aWRlbz9iLnBvbGljeS5SazpiLnBvbGljeS5JTSx2Lk5zKX1lbHNlIGI9MDtiPUQuWShiKTtuPVZvKG4sYik7VXYoYikmJk80KFcsbik7RC5jSj0hMH19OwpGMD1mdW5jdGlvbihuLFcpe2lmKFcucU4oKSlyZXR1cm4hMTt0cnl7dmFyIEQ9Vy5pbmZvLkF3WzBdLlBKO2xldCBoPUQuaW5mby52aWRlbz9uLnZpZGVvVHJhY2s6bi5hdWRpb1RyYWNrO3ZhciBiPWg7aWYobi5LdS5pc01hbmlmZXN0bGVzcyYmYil7bi5OPTA7Yi5qJiYoVy5xTigpLFcuaXNDb21wbGV0ZSgpfHxXLlFBKCksYi5qPSExKTtXLkloKCkmJm4ubG9hZGVyLkxyLklJKDEsVy5JaCgpKTt2YXIgdj1XLlRYKCksaz1XLmgwKCk7QzYobi5LdSx2LGspfWlmKFcuaW5mby5RbigpJiYhVXYoVy5pbmZvKSlmb3IobGV0IEwgb2YgVy54OSgpKWgudksoTCk7Yj1oO2ZvcihuLmxvYWRlci5nZXRDdXJyZW50VGltZSgpO2IuSi5sZW5ndGgmJmIuSlswXS5zdGF0ZT09PTQ7KXtsZXQgTD1iLkouc2hpZnQoKTt4WEMoYixMKTtiLlZRPUwuekQoKX1iLkoubGVuZ3RoJiZ4WEMoYixiLkpbMF0pO2xldCB4PSEhaVkoaCk7eCYmVyBpbnN0YW5jZW9mIFNuJiYoRC5pbmZvLmVTKCk/Z2oxKG4udGltaW5nKToKZTdiKG4udGltaW5nKSk7cmV0dXJuIHh9Y2F0Y2goaCl7Vz1XLnkwKCk7Vy5vcmlnaW49ImhyaHMiO2E6e249bi5sb2FkZXI7RD1oO2lmKEQgaW5zdGFuY2VvZiBFcnJvcil7Vy5tc2d8fChXLm1zZz1gJHtELm1lc3NhZ2V9YCk7Vy5uYW1lfHwoVy5uYW1lPWAke0QubmFtZX1gKTtpZihEIGluc3RhbmNlb2YgZy5ReCYmRC5hcmdzKWZvcihsZXQgW3gsTF1vZiBPYmplY3QuZW50cmllcyhELmFyZ3MpKVdbYGFyZyR7eH1gXT1gJHtMfWA7Zy5HcShEKTtpZihELmxldmVsPT09IldBUk5JTkciKXtuLkwuR20oVyk7YnJlYWsgYX19bi5oYW5kbGVFcnJvcigiZm10LnVucGxheWFibGUiLFcsMSl9cmV0dXJuITF9fTsKbVhiPWZ1bmN0aW9uKG4pe3ZhciBXPW4udmlkZW9UcmFjay5QSi5pbmRleDtuLmhuPW5ldyBBeVooe3NKOm4ucG9saWN5LnNKLHRJOm4ucG9saWN5LlYudEksTzg6Vy5VYygpLHgkOigpPT5XLngkKCksCk9nOigpPT5XLk9nKCl9KX07CktqaT1mdW5jdGlvbihuKXtpZihuLko/LmlzTG9ja2VkKCkpcmV0dXJuIG4udmlkZW9JbmZvczt2YXIgVz13QyhuLk4pLEQ9Zy5FTShuLnZpZGVvSW5mb3MsYj0+Yi5Ocz5uLm9aLk5zPyExOiFXLmhhcyhiLmlkKSk7Cm4uTi5sbCgpJiYoRD1nLkVNKEQsYj0+Yi52aWRlby53aWR0aDw9ODU0JiZiLnZpZGVvLmhlaWdodDw9NDgwKSk7CnJldHVybiBEfTsKTyRpPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9W107Zm9yKGxldCBiIG9mIFcpRC5wdXNoKGcuVmYoYixuLkt1LnpXKSk7cmV0dXJuIER9OwpaJGk9ZnVuY3Rpb24obil7cmV0dXJuIG4uSj8ucmVhc29uPT09Im0iPyJtIjpuLko/LnJlYXNvbj09PSJzIj8icyI6bi5KJiZQYlUobixuLkopP24uSi5yZWFzb246ImEifTsKUGJVPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4ub1ouSHcmJlcucmVhc29uPT09ImwifHxuLm9aLnFqPyExOm4ub1ouWWo/ITA6Vy5yZWFzb249PT0ibCJ8fFcucmVhc29uPT09ImIifHxXLnJlYXNvbj09PSJvIn07ClVYWj1mdW5jdGlvbihuLFcpe3ZhciBEPW4uTi5OO2lmKEQpe24udmlkZW9JbmZvcz1uLlY7dmFyIGI9Zy5sXyhuLnZpZGVvSW5mb3Msdj0+di5pZD09PUQpOwpiJiZiLnZpZGVvLnF1YWxpdHlPcmRpbmFsPT09Vz9uLnZpZGVvSW5mb3M9W2JdOihiPW4udmlkZW9JbmZvcy5tYXAodj0+di5pZCksbi5sb2FkZXIuVSgic2FicnBmIix7cGZpZDpgJHtEfWAsCnZmaWRzOmAke2Iuam9pbigiLiIpfWB9KSxhJChuLFcsVyksbi5OLkRlKCIiKSl9ZWxzZSBhJChuLFcsVyl9OwphJD1mdW5jdGlvbihuLFcsRCl7bi52aWRlb0luZm9zPW4uVjtuLnZpZGVvSW5mb3M9Zy5FTShuLnZpZGVvSW5mb3MsYj0+Yi52aWRlby5xdWFsaXR5T3JkaW5hbD49VyYmYi52aWRlby5xdWFsaXR5T3JkaW5hbDw9RCl9Owp5eXg9ZnVuY3Rpb24obixXKXtpZihuLlkpe3ZhciBEPWcuRU0obi5XLGI9PmIuaWQ9PT1uLlkpOwpyZXR1cm4gbkQobixEKS5pbmNsdWRlcyhXKX1EPWcuRU0obi5XLGI9PiEhYi5rWj8uaXNEZWZhdWx0KTsKcmV0dXJuIEQubGVuZ3RoPjA/bkQobixEKS5pbmNsdWRlcyhXKTpuRChuLG4uVykuaW5jbHVkZXMoVyl9OwpuRD1mdW5jdGlvbihuLFcpe3ZhciBEPW4uS3Uuelc7cmV0dXJuIFcubWFwKGI9Pk1rKGcuVmYoYixEKSkpfTsKV2w9ZnVuY3Rpb24obixXLEQ9ITEpe0hlVShuLk4sVyxEKX07CmkkUz1mdW5jdGlvbihuLFcsRCxiKXt2YXIgdj1uLkt1LGs9bi5MLmdldFZpZGVvRGF0YSgpLGg9bi5Fdix4PWpGTSh7aWo6bi5paix5UTprLkcoKSxMOm4uTCxuUjpuLm5SLG9aOm4ub1oscHo6bi5weixrRTpuLmtFLFVtOm4uVW0sRzc6bi5HNyxKJDpuLkokLFNmOm4uU2Ysc2FickxpY2Vuc2VDb25zdHJhaW50Omsuc2FickxpY2Vuc2VDb25zdHJhaW50LGo0Om4uajQscjA6bi5yMCxZczpuLllzLGVxOm4uZXEsb0c6ISFoLGF1dGhvcml6ZWRGb3JtYXRzOmsuYXV0aG9yaXplZEZvcm1hdHMsSTg6bi5JOCxsbDpuLmxsLEN4Om4uQ3gsZ0Q6bi5nRH0pLEw9U1YoayxuLnEkLG4ubmV4dFJlcXVlc3RQb2xpY3ksbi5SQSxuLmROLG4uYkosbi5yOCk7RCYmVyYmKEQ9TC5ycT9MLnJxLm1hcChyPT5yLnR5cGUpOltdLFcoInNhYnIiLHtzdG1jdHh0OkQuam9pbigiXyIpLAp1bnNudGN0eHQ6TC51dD9MLnV0LmpvaW4oIl8iKToiIn0pKTtXPW4uR2g7RD1uLk0kO0Q9PT12b2lkIDAmJlc9PT12b2lkIDAmJihEPUVUaih2LnpXLG4uZGs/LnZpZGVvKSxXPUVUaih2LnpXLG4uZGs/LmF1ZGlvKSk7aWYoay5hSSl2YXIgZT1rLmFJO3ZhciBHOyhrPW4ub1o/LlNhKSYmaz4wJiYobi5DeHx8bi5IZSkmJihHPW5ldyBVaW50OEFycmF5KGspKTtoPXtDbjp4LEJpOm4uQmksR2g6VyxNJDpELEV2OmgsdmlkZW9QbGF5YmFja1VzdHJlYW1lckNvbmZpZzplLG1IOkwsZFM6R307YiYmbi5iSz9uLmJLLmxlbmd0aD4wJiYoaC5iSz1uLmJLKTpuLk15JiYoaC5NeT1uLk15KTtuLm9aPy5EdCgpJiYhVlQoKSYmKG4udU0mJihoLnVNPW4udU0pLG4uckcmJihoLnJHPW4uckcpKTtoLmVXPW4uZVc7aC5jRT12LkdDO3JldHVybiBofTsKRVRqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFc/W2cuVmYoVy5pbmZvLG4pXTpbXX07Cm9Uaj1mdW5jdGlvbihuLFcsRCl7Vz1CdyhuLlhiLHVuVShuLFcsRCksVyk7bi5ENSgpJiZXLnNldCgicHJvYmUiLCIxIik7bi5raCgpJiZXLnNldCgic2Jwcm9iZSIsIjEiKTtyZXR1cm4gV307CkRrPWZ1bmN0aW9uKG4pe3ZhciBXPXt9LEQ9W10sYj1bXTtpZighbi5kYXRhKXJldHVybiBXO2Zvcih2YXIgdj0wO3Y8bi5kYXRhLmVXLmxlbmd0aDt2Kyspe3ZhciBrPW4uZGF0YS5lV1t2XTtELnB1c2goYGkuJHtrLmZvcm1hdElkPy5pdGFnfV9zdC4ke2suc3RhcnRUaW1lTXN9X2UuJHtrLnN0YXJ0VGltZU1zK2suZHVyYXRpb25Nc31fZC4ke2suZHVyYXRpb25Nc31fc24uJHtrLkFDfV9lbi4ke2suaTl9YCl9Zm9yKHY9MDt2PG4uZGF0YS5CaS5sZW5ndGg7disrKWs9bi5kYXRhLkJpW3ZdLGIucHVzaChgaS4ke2suZm9ybWF0SWQ/Lml0YWd9X3NuLiR7ay5zZXF1ZW5jZU51bWJlcn1fc2wuJHtrLnZEfHxOYU59X2xiLiR7ay5TMH1fdHIuc18ke2suaHg/LnN0YXJ0VGlja3N9X2RfJHtrLmh4Py5sOH1fdF8ke2suaHg/LnRpbWVzY2FsZX1fZWRfJHtrLnUzfWApO1cucHRpbWU9bi5OPy5Dbj8ublJ8fDA7Vy5ydHlwZT1uLnJlcXVlc3RUeXBlO1cuYnJsPUQuam9pbigiOyIpO1cucHM9Yi5qb2luKCI7Iik7CnJldHVybiBXfTsKdW5VPWZ1bmN0aW9uKG4sVyxEKXtuLnBTPT09dm9pZCAwJiYobi5wUz1uLlhiLnBTKFcsRCkpO3JldHVybiBuLnBTfTsKdmw9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uTi5OPy5lbmNyeXB0KFcsRCk7cmV0dXJuIGI/YjoobmV3IGIxKG4uTi5KKSkuZW5jcnlwdChXLEQpfTsKelpqPWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXt7dmFyIGI9bi5OO2xldCB2PXRFKCk7Yj12P25ldyBkWE0oYi5KLHYpOnZvaWQgMH1pZihiKXRyeXtyZXR1cm4gYXdhaXQgYi5lbmNyeXB0KFcsRCl9Y2F0Y2godil7fXJldHVybiB2bChuLFcsRCl9OwpscjI9YXN5bmMgZnVuY3Rpb24obixXKXsoMCxnLlIpKCk7cmV0dXJuIG4uTi5OP3paaihuLFcsbi5pdik6b24obi5OKS5lbmNyeXB0KFcsbi5pdil9OwpUOGg9ZnVuY3Rpb24obixXKXsoMCxnLlIpKCk7cmV0dXJuIG4uTi5OPy5KKFcsbi5pdil9OwpDYnQ9YXN5bmMgZnVuY3Rpb24obixXKXsoMCxnLlIpKCk7dmFyIEQ9bi5OO0Quanx8KEQuaj1uZXcgaksxKEQuVykpO3JldHVybiBMNFooRC5qLFcsbi5pdil9OwpCOGk9YXN5bmMgZnVuY3Rpb24obixXLEQpeygwLGcuUikoKTtyZXR1cm4gbi5OLk4/elpqKG4sVyxEKTpvbihuLk4pLmRlY3J5cHQoVyxEKX07CncwYj1mdW5jdGlvbihuLFcpe3ZhciBEPVc/LnByaW1hcnk7a3cobiwwLEQpO0Q9RD9GamooRCk6dm9pZCAwO2t3KG4sMixEKTtrdyhuLDEsVz8uc2Vjb25kYXJ5KX07CmhnPWZ1bmN0aW9uKG4sVyxEPSExKXtyZXR1cm4gbmV3IGcud1ooYCR7RD8iaHR0cCI6Imh0dHBzIn06Ly8ke1d9JHtuLkIuUFguYmFzZVVybH1gKX07Cmt3PWZ1bmN0aW9uKG4sVyxEKXtEPyhEPUQgaW5zdGFuY2VvZiBnLndaP0Q6aGcobixEKSxuLk4uZ2V0KFcpPy5OKCkhPT1SMCg5OCwzNTcwLEQpJiZuLk4uc2V0KFcsbmV3IE1kaihELFcpKSk6bi5OLmRlbGV0ZShXKX07CkZqaj1mdW5jdGlvbihuKXtyZXR1cm4gbi5yZXBsYWNlKC8oXGQrKS0tLS9nLChXLEQpPT57Vz1OdW1iZXIoRCk7cmV0dXJuYCR7Vz09PTE/MjpXLTF9LS0tYH0pfTsKUlpoPWZ1bmN0aW9uKG4sVz0hMSxEKXt2YXIgYj1nLlloKG4uQi5leHBlcmltZW50cywiZGVidWdfYmFuZGFpZF9ob3N0bmFtZSIpO3JldHVybiBiPyhXPWcuZE0obi5CLmV4cGVyaW1lbnRzLCJkZWJ1Z19iYW5kYWlkX3BvcnQiKSxiPVc+MD9gJHtifToke1d9YDpiLFc9bi5CLmV4cGVyaW1lbnRzLkVxKCJkZWJ1Z19iYW5kYWlkX2luc2VjdXJlX3NjaGVtZSIpLGhnKG4sYixXKSk6VyYmRD8udXJsJiYhbi5KPyhiPVIwKDY3LDM1MzksbmV3IGcud1ooRC51cmwpKSxoZyhuLGIpKTpuLk4uZ2V0KDApPy5sb2NhdGlvbi5jbG9uZSgpfTsKTEQ9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD1oZyhuLCJyZWRpcmVjdG9yLmdvb2dsZXZpZGVvLmNvbSIpO0Quc2V0KCJhbHIiLCJ5ZXMiKTtELnNldCgiaWQiLGAke01hdGgucm91bmQoTWF0aC5yYW5kb20oKSoxRTUpfWApO2lmKFc9PT0xfHxXPT09MilELnNldCgiY21vPXNlbnNpdGl2ZV9jb250ZW50IiwieWVzIiksRC5zZXQoInNjIiwieWVzIik7Vz09PTImJkQuc2V0KCJjbW89dGQiLCJjLnlvdXR1YmUuY29tIik7dmFyIGI9YXdhaXQgZy5yOChELldEKCkse2Zvcm1hdDoiUkFXIix0aW1lb3V0OjVFM30pO2lmKGIueGhyLnN0YXR1cyE9PTIwMHx8IWIueGhyLnJlc3BvbnNlVGV4dClyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IGcuUXgoImIyMDQyNTgzNzFfbm9faG9zdCIsRC5XRCgpLGIueGhyLnN0YXR1cykpO3ZhciB2PW5ldyBnLndaKGIueGhyLnJlc3BvbnNlVGV4dCk7RD1SMCgzNCwzNTA2LHYpO2I9di5nZXQoIm1zIik7bj1oZyhuLEQpO3Y9di5nZXQoIm1tIik7bi5zZXQoIm1zIiwKYik7bi5zZXQoIm1tIix2KTtyZXR1cm4gRCYmUUt4KEQpP1chPT0yfHx4dyhEKT9uOlByb21pc2UucmVqZWN0KG5ldyBnLlF4KCJiMjA0MjU4MzcxX3VudHJ1c3RlZCIsRCxiKSk6UHJvbWlzZS5yZWplY3QobmV3IGcuUXgoImIyMDQyNTgzNzFfaW52YWxpZCIsRCxiKSl9Owp2YXIgSFd0PWZ1bmN0aW9uKG4pe3JldHVybiBSMFtJWzEwXV0odGhpcyw0MSw1ODQ5LG4pfTsKVmR0PWZ1bmN0aW9uKG4sVyl7bj1gaHR0cHM6Ly8ke1cuTigpfS9pbml0cGxheWJhY2s/Yz0ke2xvKG4uQil9Jm93Yz0xYDtxVyhuLCJwdyIsRD0+e0QuaHQ9Vy5KfSl9OwplUj1mdW5jdGlvbihuLFcsRCxiKXtxVyhgaHR0cHM6Ly8ke1d9L3ZpZGVvcGxheWJhY2s/cHJvYmU9MWAsRCx2PT57IWIuUygiaHRtbDVfb25lc2llX2hvc3RfcmFjaW5nIil8fGIudmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrfHxiLlMoImh0bWw1X29uZXNpZV9wcm9iZV9lY19ob3N0cyIpfHxiLldSfHxjeVooYik7bi5XLnB1c2godil9LHY9PntuLlcucHVzaCh2LmRldGFpbHMpfSl9OwpRS3g9ZnVuY3Rpb24obil7cmV0dXJuLy4qKFwuY1wueW91dHViZVwuY29tfC4qXC5nb29nbGV2aWRlb1wuY29tKS8udGVzdChuKX07Cnh3PWZ1bmN0aW9uKG4pe3ZhciBXPS9zbi1bXi5dKi0vO3JldHVybi8uKlwuY1wueW91dHViZVwuY29tLy50ZXN0KG4pJiYhVy50ZXN0KG4pfTsKZ2o9ZnVuY3Rpb24obil7Zm9yKDtuLk4ubGVuZ3RoJiYhbi5OWzBdLmlzRW5jcnlwdGVkOyl7bGV0IHt2aWRlb0lkOkQsYXU6Yixmb3JtYXRJZDp2LGJ1ZmZlcjprLGlFOmh9PW4uTi5zaGlmdCgpO2lmKGspbi5OSS5ZYS5uQT8uZ2V0KEQpPy5OKGIsdixrKTtlbHNlIGlmKGgpbi5OSS5ZYS5ZaChELGIsdik7ZWxzZXt2YXIgVz1uLk5JO1cuTlt2XS5TdT0hMDtXPVcuWWEubkE/LmdldChEKTtXPy5nRih2KSYmVz8uSih2KX19fTsKZy5EMHI9ZnVuY3Rpb24obil7Zm9yKDshbi5YJiYhbi5lcnJvcjspe3ZhciBXPW47Vy5YPSEhWEIoVywxKTtzd2l0Y2goWEIoVywyKSl7Y2FzZSAyOnZhciBEPXZvaWQgMCxiPVtdLHY9W107di5sZW5ndGg9MTk7di5maWxsKDApO3ZhciBrPVhCKFcsNSkrMjU3O0Q9WEIoVyw1KSsxO3ZhciBoPVhCKFcsNCkrNDtmb3IodmFyIHg9MDt4PGg7eCsrKXZbYXJ4W3hdXT1YQihXLDMpO3Y9cVAodik7Zm9yKGg9aytEO2IubGVuZ3RoPGg7KXt4PW5SdChXLHYpO2xldCBMO3N3aXRjaCh4KXtjYXNlIDE2Ong9YltiLmxlbmd0aC0xXTtMPVhCKFcsMikrMzticmVhaztjYXNlIDE3Ong9MDtMPVhCKFcsMykrMzticmVhaztjYXNlIDE4Ong9MDtMPVhCKFcsNykrMTE7YnJlYWs7ZGVmYXVsdDpMPTF9Zm9yKDtMPjA7TC0tKWIucHVzaCh4KX1iLmxlbmd0aCE9PWg/Vy5lcnJvcj0hMDooRD1iLnNsaWNlKC1EKSxiLmxlbmd0aD1rLFdZaChXLGIsRCkpO2JyZWFrO2Nhc2UgMTpXWWgoVyxHYyx0Zyk7YnJlYWs7CmNhc2UgMDokdyhXLFcuTiY3KTtiPVhCKFcsMTYpO2s9WEIoVywxNik7KGJeaykhPT02NTUzNSYmKFcuZXJyb3I9ITApO2s9Vy5kYXRhLnN1YmFycmF5KFcuSixXLkorYik7Vy5vdXRwdXQuc2V0KGssVy5XKTtXLkorPWI7Vy5XKz1iO2JyZWFrO2RlZmF1bHQ6Vy5lcnJvcj0hMH1uLlc+bi5vdXRwdXQubGVuZ3RoJiYobi5vdXRwdXQ9bmV3IFVpbnQ4QXJyYXkobi5XKjIpLG4uVz0wLG4uSj0wLG4uWD0hMSxuLk49MCxuLnJlZ2lzdGVyPTApfW4ub3V0cHV0Lmxlbmd0aCE9PW4uVyYmKG4ub3V0cHV0PW4ub3V0cHV0LnN1YmFycmF5KDAsbi5XKSk7cmV0dXJuIG4uZXJyb3I/bmV3IFVpbnQ4QXJyYXkoMCk6bi5vdXRwdXR9OwpYQj1mdW5jdGlvbihuLFcpe2Zvcig7bi5OPFc7KXtpZihuLko+PW4uZGF0YS5sZW5ndGgpcmV0dXJuIG4uZXJyb3I9ITAsMDtuLnJlZ2lzdGVyfD1uLmRhdGFbbi5KKytdPDxuLk47bi5OKz04fXZhciBEPW4ucmVnaXN0ZXImKDE8PFcpLTE7bi5yZWdpc3Rlcj4+PVc7bi5OLT1XO3JldHVybiBEfTsKV1loPWZ1bmN0aW9uKG4sVyxEKXtXPXFQKFcpO0Q9cVAoRCk7Zm9yKHZhciBiPW4uZGF0YSx2PW4ub3V0cHV0LGs9bi5XLGg9bi5yZWdpc3Rlcix4PW4uTixMPW4uSjs7KXtpZih4PDE1KXtpZihMPmIubGVuZ3RoKzEpe24uZXJyb3I9ITA7YnJlYWt9aHw9KGJbTCsxXTw8OCkrYltMXTw8eDtMKz0yO3grPTE2fXZhciBlPVdbaCYxMjddO2lmKGU8MClmb3IoaD4+PTc7ZTwwOyllPVdbKGgmMSktZV0saD4+PTE7ZWxzZSBoPj49ZSYxNTt4LT1lJjE1O2U+Pj00O2lmKGU8MjU2KXZbaysrXT1lO2Vsc2UgaWYobi5yZWdpc3Rlcj1oLG4uTj14LG4uSj1MLGU+MjU2KXtoPXJqW2VdO2grPVhCKG4sc3FbZV0pO0w9blJ0KG4sRCk7eD1OUFtMXTt4Kz1YQihuLHBEW0xdKTtpZihieVomJmg8eCl4PWsteCx2LmNvcHlXaXRoaW4oayx4LHgraCk7ZWxzZSBmb3IoTD1rK2gsZT1rO2U8TDtlKz00KXZbZV09dltlLXhdLHZbZSsxXT12W2UteCsxXSx2W2UrMl09dltlLXgrMl0sdltlKzNdPXZbZS14KzNdOwprKz1oO2g9bi5yZWdpc3Rlcjt4PW4uTjtMPW4uSn1lbHNlIGJyZWFrfW4uVz1rfTsKblJ0PWZ1bmN0aW9uKG4sVyl7aWYobi5OPDcpe3ZhciBEPW4uZGF0YTtsZXQgYj1uLko7Yj5ELmxlbmd0aCYmKG4uZXJyb3I9ITApO24ucmVnaXN0ZXJ8PShEW2IrMV08PDgpK0RbYl08PG4uTjtuLkorPTI7bi5OKz0xNn1EPVdbbi5yZWdpc3RlciYxMjddO2lmKEQ+PTApcmV0dXJuICR3KG4sRCYxNSksRD4+NDtmb3IoJHcobiw3KTtEPDA7KUQ9V1tYQihuLDEpLURdO3JldHVybiBEPj40fTsKJHc9ZnVuY3Rpb24obixXKXtuLk4tPVc7bi5yZWdpc3Rlcj4+PVd9OwpxUD1mdW5jdGlvbihuKXt2YXIgVz1bXTtmb3IodmFyIEQgb2YgbilXW0RdfHwoV1tEXT0wKSxXW0RdKys7dmFyIGI9V1swXT0wO0Q9W107dmFyIHY9MCxrPTA7Zm9yKHZhciBoPTE7aDxXLmxlbmd0aDtoKyspV1toXT9rPWg6V1toXT0wLGI9YitXW2gtMV08PDEsRFtoXT1iLGg+NyYmKHYrPVdbaF0pO2ZvcihiPTE7Yjx2OyliPDw9MTtXPTEyODtrPW5ldyBJbnQxNkFycmF5KDEyOCsoYitrKSoyKTtmb3Iodj0wO3Y8bi5sZW5ndGg7disrKXtoPW5bdl07aWYoIWgpY29udGludWU7dmFyIHg9RFtoXSsrO2I9MDtmb3IodmFyIEw9MDtMPGg7TCsrKWI9Yjw8MXx4Pj5MJjE7eD12PDw0fGg7aWYoaDw9Nylmb3IoTD0xPDw3LWg7TC0tOylrW0w8PGh8Yl09eDtlbHNle0w9YiYxMjc7aC09Nztmb3IoYj4+PTc7aC0tOyl7a1tMXXx8KGtbTF09LVcsVys9Mik7bGV0IGU9YiYxO2I+Pj0xO0w9ZS1rW0xdfWtbTF09eH19cmV0dXJuIGt9OwpZdz1mdW5jdGlvbihuLFcpe24uVyhgZGNtcHJzXyR7bi5jb250ZXh0fV8ke24uTn1fZ3pfJHtXfWApfTsKdlJ3PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIE9vKG4sZnVuY3Rpb24oKXt2YXIgRD10aGlzO3JldHVybiBmdW5jdGlvbiooKXt2YXIgYj1EYXRlLm5vdygpO3RyeXtZdyhELCJzIik7dmFyIHY9eWllbGQqUFAoVygpKTtpZighdil0aHJvdyBFcnJvcigibm8gcmVzdWx0Iik7WXcoRCwiZSIpO3JldHVybiB2fWNhdGNoKGgpe1l3KEQsImYiKTt2YXIgaz1oO0QuSihrLCJneiIpO3Rocm93IGg7fWZpbmFsbHl7dj1EYXRlLm5vdygpLEQuYmooImd6Iix2LWIsayl9fSgpfSl9OwplU2o9ZnVuY3Rpb24obixXLEQsYil7cmV0dXJuIE9vKHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgdj0oayxoKT0+dlJ3KG5ldyBrMWkoayxELGIpLCgpPT5IUChoKG4pKSk7CmlmKEhsKXRyeXtyZXR1cm4geWllbGQqUFAodigibiIsaFMxKSl9Y2F0Y2goayl7fWlmKFcpdHJ5e3JldHVybiB5aWVsZCpQUCh2KFcuaXNBc21qcz8iYSI6InciLGs9PngwQyhrLFcpKSl9Y2F0Y2goayl7fXJldHVybiB5aWVsZCpQUCh2KCJwIixMWTIpKX0oKX0pfTsKaFMxPWFzeW5jIGZ1bmN0aW9uKG4pe2lmKCFIbCl0aHJvdyBFcnJvcigiRGVjb21wcmVzc2lvblN0cmVhbSBpcyBub3Qgc3VwcG9ydGVkIik7dmFyIFc9WksudFgoKSxEPW5ldyBEZWNvbXByZXNzaW9uU3RyZWFtKCJnemlwIiksYj1ELndyaXRhYmxlLmdldFdyaXRlcigpO2Iud3JpdGUobik7Yi5jbG9zZSgpO249RC5yZWFkYWJsZS5nZXRSZWFkZXIoKTtmb3IoRD1uZXcgUzUoW10pOzspe2xldCB7dmFsdWU6dixkb25lOmt9PWF3YWl0IG4ucmVhZCgpO2lmKGspYnJlYWs7RC5hcHBlbmQodil9bj10UihEKTtaSy5lVSgiZ3puYiIsVyxNYXRoLmNlaWwobi5ieXRlTGVuZ3RoLzE2KSk7cmV0dXJuIG59OwpMWTI9ZnVuY3Rpb24obil7dmFyIFc9WksudFgoKTtuPWcuRDByKG5ldyBnLmdSYihuKSk7WksuZVUoImd6amIiLFcsTWF0aC5jZWlsKG4uYnl0ZUxlbmd0aC8xNikpO3JldHVybiBufTsKeDBDPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9WksudFgoKTtuPVcubWVtb3J5LmNvcHlJbihuKTt0cnl7bGV0IHY9bi5ieXRlT2Zmc2V0LGs9bi5ieXRlTGVuZ3RoLGg9Vy5leHBvcnRzLmdldEluZmxhdGVkU2l6ZSh2LGspO2lmKGg9PT0wKXRocm93IEVycm9yKCJ3YXNtX2d6OiBiYWQgaW5wdXQiKTtsZXQgeD1XLm1lbW9yeS5tYWxsb2MoaCksTD1XLmV4cG9ydHMuaW5mbGF0ZUd6aXAodixrLHgpO2lmKEwpdGhyb3cgVy5tZW1vcnkuZnJlZSh4KSxFcnJvcihgd2FzbV9nejogZmFpbCR7TH1gKTt2YXIgYj1XLm1lbW9yeS5idWZmZXIoeCxoKX1maW5hbGx5e1cubWVtb3J5LmZyZWUobi5ieXRlT2Zmc2V0KX1XPVcubWVtb3J5Lm1vdmVPdXQoYik7WksuZVUoImd6d2IiLEQsTWF0aC5jZWlsKFcuYnl0ZUxlbmd0aC8xNikpO3JldHVybiBXfTsKZkQ9ZnVuY3Rpb24obil7dmFyIFc9bi5xdWV1ZTtXLk4ubGVuZ3RoJiZXLk5bMF0uaXNFbmNyeXB0ZWQmJiFXLkomJihXLk4ubGVuZ3RoPTApO2ZvcihsZXQgRCBvZiBPYmplY3Qua2V5cyhuLk4pKXtsZXQgYj1uLk5bRF07Yi5TdXx8KFc9bi5xdWV1ZSxXLk4ucHVzaCh7dmlkZW9JZDpiLnZpZGVvSWQsZm9ybWF0SWQ6RCxpc0VuY3J5cHRlZDohMX0pLFcuSnx8Z2ooVykpfX07ClhCdz1mdW5jdGlvbihuLFcpe3ZhciBEPVcudG90YWxMZW5ndGgsYj0hMTtzd2l0Y2gobi5XKXtjYXNlIDA6bi5qcChXLG4uWCkudGhlbih2PT57dmFyIGs9bi5ZYTtrLkRrKCJvcHJyIik7ay5wbGF5ZXJSZXNwb25zZT12O2suVUl8fChrLkIyPSExKTtKZyhrKX0sdj0+e24uWWEuZmFpbCh2KX0pOwpicmVhaztjYXNlIDI6bi5Eaygib3JtayIpO1c9dFIoVyk7bi5xdWV1ZS5kZWNyeXB0KFcpO2JyZWFrO2RlZmF1bHQ6Yj0hMH1uLllhLnhHJiZuLllhLlUoIm9tYnVwIixgaWQuMTE7cHQuJHtuLld9O2xlbi4ke0R9JHtiPyI7aWdub3JlZC4xIjoiIn1gKTtuLlc9bnVsbH07CnFQaT1mdW5jdGlvbihuLFcpe24uWWEuRGsoIm9wcmd6Ml9zIik7Vz1lU2ooVyxuLllhLkcoKS5qXygpLG4uWWEueEc/bi5ZYS5VLmJpbmQobi5ZYSk6KCk9Pnt9LEQ9PntuLllhLkRrKEQpfSk7ClNrKFcsKCk9PntuLllhLkRrKCJvcHJnejJfZSIpfSwoKT0+e24uWWEuRGsoIm9wcmd6Ml9mIil9KTsKcmV0dXJuIFd9OwpHMVM9YXN5bmMgZnVuY3Rpb24obixXKXtuLllhLkRrKCJvcHJnel9zIik7aWYoSGwpdHJ5e3ZhciBEPWF3YWl0IGhTMShXKTtuLllhLkRrKCJvcHJnel9uIik7bi5ZYS5VKCJvcHJzZ3oiLHtpOiJuIn0pO3JldHVybiBEfWNhdGNoKGIpe24uWWEuVSgiZ3plcnIiLHtpbXBsOiJuYXRpdmUiLGVycjpgJHtifWB9KX1pZihEPW4uWWEuRygpLmpfKCkpdHJ5e2xldCBiPXgwQyhXLEQpO24uWWEuRGsoIm9wcmd6X3ciKTtuLllhLlUoIm9wcnNneiIse2k6IncifSk7cmV0dXJuIGJ9Y2F0Y2goYil7bi5ZYS5VKCJnemVyciIse2ltcGw6Indhc20iLGVycjpgJHtifWB9KX1XPUxZMihXKTtuLllhLkRrKCJvcHJnel9wIik7bi5ZYS5VKCJvcHJzZ3oiLHtpOiJqIn0pO3JldHVybiBXfTsKdF9oPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgUHJvbWlzZShXPT57c2V0VGltZW91dChXLG4pfSl9OwokMGI9ZnVuY3Rpb24obixXKXt2YXIgRD1uLkcoKTtEPW4uWVomJkQuUygiaHRtbDVfb25lc2llX3ByZWxvYWRfdXNlX2NvbnRlbnRfb3duZXIiKTtpZigoVz1SWmgoVyxELG4uUWEpKSYmbi52aWRlb0lkKXtuPWcuZDEobi52aWRlb0lkKTtEPVtdO2lmKG4pZm9yKGIgb2YgbilELnB1c2goYi50b1N0cmluZygxNikucGFkU3RhcnQoMiwiMCIpKTt2YXIgYj1ELmpvaW4oIiIpO1cuc2V0KCJpZCIsYik7cmV0dXJuIFd9fTsKck9oPWFzeW5jIGZ1bmN0aW9uKG4sVyxEPTApe3ZhciBiPVtdO2IucHVzaChXLmxvYWQoKSk7RD4wJiZiLnB1c2godF9oKEQpKTthd2FpdCBQcm9taXNlLnJhY2UoYik7cmV0dXJuICQwYihuLFcpfTsKczlDPWZ1bmN0aW9uKG4sVyxELGI9ITEpe24uc2V0KCJjcG4iLFcuY2xpZW50UGxheWJhY2tOb25jZSk7bi5zZXQoIm9wciIsIjEiKTt2YXIgdj1XLkcoKTtuLnNldCgicG9yIiwiMSIpO3RFKCl8fG4uc2V0KCJvbmVtIiwiMSIpO1cuc3RhcnRTZWNvbmRzPjAmJm4uc2V0KCJvc3RzIixgJHtXLnN0YXJ0U2Vjb25kc31gKTtifHwodi5TKCJodG1sNV9vbmVzaWVfZGlzYWJsZV9wYXJ0aWFsX3NlZ21lbnRzIikmJm4uc2V0KCJvc2VzIiwiMSIpLFc9di5TKCJodG1sNV9nYXBsZXNzX29uZXNpZV9ub19tZWRpYV9ieXRlcyIpJiZBSihXKSYmVy5ZWixEJiYhVz8oVz1ELmF1ZGlvLG4uc2V0KCJwdmkiLEQudmlkZW8uam9pbigiLCIpKSxuLnNldCgicGFpIixXLmpvaW4oIiwiKSksTnN8fG4uc2V0KCJvc2giLCIxIikpOihuLnNldCgib2FkIiwiMCIpLG4uc2V0KCJvdmQiLCIwIiksbi5zZXQoIm9hYWQiLCIwIiksbi5zZXQoIm9hdmQiLCIwIikpKX07Ck5KaT1mdW5jdGlvbihuLFcsRCxiLHY9ITEpe3ZhciBrPWBodHRwczovL3lvdXR1YmVpLmdvb2dsZWFwaXMuY29tL3lvdXR1YmVpLyR7Vy5TVi5pbm5lcnR1YmVBcGlWZXJzaW9ufS9wbGF5ZXJgLGg9W3tuYW1lOiJDb250ZW50LVR5cGUiLHZhbHVlOiJhcHBsaWNhdGlvbi9qc29uIn1dO2ImJmgucHVzaCh7bmFtZToiQXV0aG9yaXphdGlvbiIsdmFsdWU6YEJlYXJlciAke2J9YH0pO2gucHVzaCh7bmFtZToiVXNlci1BZ2VudCIsdmFsdWU6Zy5YUSgpfSk7Zy5BcigiRU9NX1ZJU0lUT1JfREFUQSIpP2gucHVzaCh7bmFtZToiWC1Hb29nLUVPTS1WaXNpdG9yLUlkIix2YWx1ZTpnLkFyKCJFT01fVklTSVRPUl9EQVRBIil9KTooRD1ELnZpc2l0b3JEYXRhfHxnLkFyKCJWSVNJVE9SX0RBVEEiKSkmJmgucHVzaCh7bmFtZToiWC1Hb29nLVZpc2l0b3ItSWQiLHZhbHVlOkR9KTsoRD1nLkFyKCJTRVJJQUxJWkVEX0xBVkFfREVWSUNFX0NPTlRFWFQiKSkmJmgucHVzaCh7bmFtZToiWC1Zb3VUdWJlLUxhdmEtRGV2aWNlLUNvbnRleHQiLAp2YWx1ZTpEfSk7KFc9Zy5ZaChXLmV4cGVyaW1lbnRzLCJkZWJ1Z19zaGVybG9nX3VzZXJuYW1lIikpJiZoLnB1c2goe25hbWU6IlgtWW91dHViZS1TaGVybG9nLVVzZXJuYW1lIix2YWx1ZTpXfSk7bj1JdyhKU09OLnN0cmluZ2lmeShuKSk7cmV0dXJue3VybDprLGUzOmgscG9zdEJvZHk6bixFYTp2LGU4OnZ9fTsKSWs9ZnVuY3Rpb24obixXLEQsYix2LGssaCx4LEwpe3ZhciBlPW4uWUMsRz1uLmRmO249bi5DVjt2YXIgcj1lIT09dm9pZCAwJiZHIT09dm9pZCAwLE49Yi5nZXRWaWRlb0RhdGEoKSxIPVcuTi5lbmNyeXB0ZWRDbGllbnRLZXk7Vz1yP1cuaXY6dm9pZCAwO3I9R0QoaywhMCk7dj12fHwhIXRFKCkmJnI+MTU3Mjg2NDtyZXR1cm57aW5uZXJ0dWJlUmVxdWVzdDp7d1M6bix2VTplLGRmOkcsZW5jcnlwdGVkQ2xpZW50S2V5OkgsaXY6VyxtdzohMCxGRDohMCxEWToiRGVjb21wcmVzc2lvblN0cmVhbSJpbiB3aW5kb3d8fCF2LHlKOiEwfSxDbjpqRk0oe2lqOmsseVE6RCxMOmIsblI6Ti5zdGFydFNlY29uZHMqMUUzLGhxOiEwfSksb25lc2llVXN0cmVhbWVyQ29uZmlnOmgsQng6eCxtSDpTVihOKSxyZWxvYWRQbGF5YmFja1BhcmFtczpOLmdUPy5yZWxvYWRQbGF5YmFja1BhcmFtcyxVazpMfX07CnBCeD1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgpe3ZhciBMPWcubGgobixhZiksZTtpZighbi5lOClpZihlPVQ4aChXLEwpKXt2YXIgRz1lLkc0O2U9ZS5zaWduYXR1cmV9ZWxzZSBlPUc9Vy5lbmNyeXB0KEwpLCgwLGcuUikoKSxlPXBmKG5ldyBZJChXLk4uVyksZSxXLml2KTtyZXR1cm4gSWsoRyYmZT97WUM6RyxkZjplfTp7Q1Y6TH0sVyxELGIsISFuLmU4LHYsayxoLHgpfTsKWVBNPWFzeW5jIGZ1bmN0aW9uKG4sVyxELGIsdixrLGgseCl7dmFyIEw9Zy5saChuLGFmKTtMPWF3YWl0IGxyMihXLEwpO3ZhciBlPWF3YWl0IENidChXLEwpO3JldHVybiBJayh7WUM6TCxkZjplfSxXLEQsYiwhIW4uZTgsdixrLGgseCl9OwpIeVU9ZnVuY3Rpb24obixXLEQsYix2LGssaCx4KXt2YXIgTD1nLmxoKG4sYWYpO2lmKEw9VDhoKFcsTCkpcmV0dXJuIElrKHtZQzpMLkc0LGRmOkwuc2lnbmF0dXJlfSxXLEQsYiwhIW4uZTgsdixrLGgseCl9OwpKT3c9YXN5bmMgZnVuY3Rpb24obixXLEQpe24uRGsoIm9wcmRfcyIpO1c9Zkl0KG4pP2F3YWl0IEI4aShuLnlxLFcsRCk6bi55cS5kZWNyeXB0KFcsRCk7bi5Eaygib3ByZF9jIik7cmV0dXJuIFd9OwpmSXQ9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5TKCJodG1sNV9vbmVzaWVfc3luY19yZXF1ZXN0X2VuY3J5cHRpb24iKXx8Vz8uZTg/ITE6ISF0RSgpfTsKSUliPWZ1bmN0aW9uKG4pe3JldHVybiBuLlMoImh0bWw1X29uZXNpZV9ob3N0X3Byb2JpbmciKXx8bi54Rz9OczohMX07CkpnPWZ1bmN0aW9uKG4pe2lmKCFuLnBsYXllclJlc3BvbnNlKXJldHVybiExO2lmKG4uYmspcmV0dXJuITA7dmFyIFc9bi52aWRlb0RhdGEuUygiaHRtbDVfb25lc2llX2F1ZGlvX29ubHlfcGxheWJhY2siKSYmUlEobi52aWRlb0RhdGEpO2lmKG4ubkEmJm4uQjIpe2lmKCFuLm5BLmhhcyhuLkxjKSlyZXR1cm4hMTtsZXQgYj1uLm5BLmdldChuLkxjKTt2YXIgRDtpZihEPWIpe0Q9ITE7Zm9yKGxldCB2IG9mIGIudTkua2V5cygpKXtsZXQgaz1iLnU5LmdldCh2KTtpZihrKWZvcihsZXQgaCBvZiBrLkJ0KWguZUg+MCYmKGsuZVM/RD0hMDpXPSEwKX1EPSEoVyYmRCl9aWYoRClyZXR1cm4hMX1uLkRrKCJvZnIiKTtuLkNSLnJlc29sdmUobi5wbGF5ZXJSZXNwb25zZSk7cmV0dXJuIG4uYms9ITB9OwpBT009ZnVuY3Rpb24obil7aWYobi5uQSYmIW4uUygiaHRtbDVfb25lc2llX21lZGlhX2NhcGFiaWxpdGllcyIpKXtuLkRrKCJvZ3NmX3MiKTt2YXIgVz16eFMobi5MLmdldFZpZGVvRGF0YSgpLChiLHYpPT57bi5VKGIsdil9KSxEPVNQTShuLkwpOwpXLnZpZGVvPWlfYihELFcudmlkZW8pO24uRGsoIm9nc2ZfYyIpO2lmKFcudmlkZW8ubGVuZ3RoKXJldHVybiBXO24uVSgib21ic3BmIixgbC4ke0QuSn07dS4ke0QuTn07by4ke0QuV307ci4ke0QucmVhc29ufWApfX07ClNSPWZ1bmN0aW9uKG4pe2lmKCFuLm5mKXJldHVybnt9O3ZhciBXPW4ubmYuRCgpO1cuZD1uLm5mLkR0Py5iWSgpO1cuc2hvc3Q9bi56YztXLnR5PSJvIjtyZXR1cm4gV307CmN5Wj1mdW5jdGlvbihuKXtuLkIyPSExO2lmKCFKZyhuKSl7dmFyIFc9U1Iobik7Vy50aW1lb3V0PSIxIjtuLmZhaWwobmV3IGcuQ2koIm9uZXNpZS5yZXF1ZXN0IixXKSl9fTsKUGw9ZnVuY3Rpb24obixXKXtpZihXLnFOKCl8fG4ucU4oKSluLnBvbGljeS5QTHx8KG4ucG9saWN5Lmo/Zy5BZyhuLmxvYWRlcik6bi5sb2FkZXIuQlkoKSk7ZWxzZXtpZihuLnBvbGljeS5XJiZXLmlzQ29tcGxldGUoKSYmVyBpbnN0YW5jZW9mIHV1KXt2YXIgRD1uLmxvYWRlcixiPUQuVTt2YXIgdj1PYmplY3QuYXNzaWduKFcubmYuRCgpLHtyc3Q6Vy5zdGF0ZSxzdHJtOlcueGhyLkdwKCksZDpXLm5mLkR0Py5iWSgpLGNuY2w6Vy54aHImJlcudDUuWD8xOjAscnFiOlcuRUYsY3d0OlcudDUuVyxzd3Q6Vy5QcT8uS059KTt2PU9iamVjdC5hc3NpZ24oRGsoVy5pbmZvKSx2KTtiLmNhbGwoRCwicnFzIix2KX1pZihXLmlzQ29tcGxldGUoKSYmVy5ENSgpJiZXIGluc3RhbmNlb2YgdXUpVy5kaXNwb3NlKCksbi5sb2FkZXIuQlkoKTtlbHNle2lmKFcucVEoKSluLkhlPSEwLFcgaW5zdGFuY2VvZiB1dSYmWFNoKG4udGltaW5nLFcpLG0wTShuKSxtdihuKTtlbHNlIGlmKFcudG4oKSlEPW4uTC5lSigpLApXIGluc3RhbmNlb2YgdXUmJlcuaW5mby5OPy5Dbj8uajQmJkQmJihuLkIuWnQoKS5OLlFRKEtZeCl8fG4ubG9hZGVyLndSKEQpKSxXIGluc3RhbmNlb2YgdXUmJlcua2goKT8oVy5WRygpJiZuLmxvYWRlci5oYW5kbGVFcnJvcihXLlZHKCksVy55MCgpLDApLFcuZGlzcG9zZSgpKTpXIGluc3RhbmNlb2YgdXUmJng2dyhXKT9uLmxvYWRlci5ETz8uVygpOlcgaW5zdGFuY2VvZiBLRD9uLk4ucG9wKCk6KEQ9MSxXLmNhblJldHJ5KCkmJnd1KG4ubG9hZGVyKSYmKE95WihuLFcpLEQ9MCksYj1uLkwuZUooKSxXIGluc3RhbmNlb2YgdXUmJlcuaW5mby5OPy5Dbj8uajQmJmImJm4uQi5adCgpLk4uUVEoS1l4KSYmKFcuY2FuUmV0cnkoKSYmd3Uobi5sb2FkZXIpP24ubG9hZGVyLlUoInV0Y1NlZWtpbmdSZXRyeSIse3RhcmdldFV0Y1RpbWVTZWM6Yn0pOm4ubG9hZGVyLndSKGIpKSxuLmxvYWRlci5oYW5kbGVFcnJvcihXLlZHKCksVy55MCgpLEQpKTtlbHNle2lmKG4ubG9hZGVyLmlzU3VzcGVuZGVkJiYKIVcuaXNDb21wbGV0ZSgpKXJldHVybjttdihuKX1XLnFOKCl8fFcgaW5zdGFuY2VvZiBLRHx8KEQ9MCxXLmlzQ29tcGxldGUoKSYmKEQ9cDBiKFcsbi5wb2xpY3ksbi5ubikpLEQhPT0wJiYoVy5pbmZvLlhiLmo/KEQ9Vy5pbmZvLEQ9bmV3IE9xKDIsRC5YYixELllhKSxELnBTPSExKTooYj1uZXcgT3EoMSxXLmluZm8uWGIpLGIucFM9RD09PTIsRD1iKSxQT3QobixEKSkpO2lmKFcuaXNDb21wbGV0ZSgpKXtpZihuLnBvbGljeS5RciYmbi52aWRlb0RhdGEuaXNPdGYoKSYmbi5CLlY9PT0icHciJiYhbi5PJiYhVy5xUSgpJiYhVy50bigpJiYhUlEobi52aWRlb0RhdGEpJiYhbi52aWRlb1RyYWNrLlRDKXtuLkN4PSExO24uTz0hMDtuLmxvYWRlci5ncCh7cmVhc29uOiJzYWJyLm5vX3ZpZGVvX3JlY2VpdmVkX29uX3N0YXJ0IixhY3Rpb246MH0pO3JldHVybn1uLkN4PSExO1cucVEoKXx8KG4uTz0hMCxuLkhlPSExKTtuLkIuUygiaHRtbDVfdXNlX21lZGlhX2ZldGNoX2NvbnRyb2xsZXIiKSYmCm4ubG9hZGVyLkwuV0ooInJlcXVlc3Rjb21wbGV0ZWQiKX1uLnBvbGljeS5IRCYmIVcuaXNDb21wbGV0ZSgpP1FvKG4ubG9hZGVyKTpuLmxvYWRlci5CWSgpfX19OwpaeVM9ZnVuY3Rpb24obil7bi5wb2xpY3kuTEImJihuLlZRPXZvaWQgMCxuLkc3PTApfTsKaXlpPWZ1bmN0aW9uKG4pe2lmKG4ubG9hZGVyLkFiKXJldHVybiBaayhuLCJwcmVwYXJpbmduZXh0bG9vcCIpLCExO2lmKCFVMFoobixuLlMkKSlyZXR1cm4gWmsobiwicmF0ZWxpbWl0ZWQiKSwhMTtpZihpUyhuLmF1ZGlvVHJhY2spJiZpUyhuLnZpZGVvVHJhY2spKXJldHVybiBaayhuLCJlbmRvZnN0cmVhbSIpLCExO2lmKG4ucG9saWN5LlUxKWlmKG4ucG9saWN5Llgpe2lmKG4uVk8/LmNKKCkpcmV0dXJuIFprKG4sInNzZGFpYmxvY2tlZCIpLCExfWVsc2V7dmFyIFc9ITE7aWYobi5KQy5KPT09MilXPSEwO2Vsc2UgaWYobi5KQy5KPT09Myl7VXEobik7bi5sb2FkZXIuU1coKTt2YXIgRD1QNihuLmF1ZGlvVHJhY2ssbi5sb2FkZXIuaXNTZWVraW5nKCkpLmVXO3ZhciBiPVA2KG4udmlkZW9UcmFjayxuLmxvYWRlci5pc1NlZWtpbmcoKSkuZVc7dmFyIHY9bi5sb2FkZXIuZ2V0Q3VycmVudFRpbWUoKXx8MDtEPXl1KG4sRCx2KTtiPXl1KG4sYix2KTtiPU1hdGgubWluKEQsYik7dj1uLkpDOwpiPj12Llc/KHYuVSgic2RhaSIse2hhbHRycTpiLGVzdDp2Lld9KSxiPSEwKTpiPSExO2ImJihXPSEwKX1pZihXKXJldHVybiBaayhuLCJ3YWl0aW5nZm9yYWRzIiksITF9bi5wb2xpY3kudTUmJihuLnR3PUVxKG4sbi5hdWRpb1RyYWNrKSxuLmJkPUVxKG4sbi52aWRlb1RyYWNrKSk7aWYoIW4uSilyZXR1cm4gaTEobix7bm9wb2xpY3k6MX0pLCEwO2lmKG4uTC5lSigpKXJldHVybiBpMShuLHt1dGM6MX0pLCEwO2lmKG4uazYuSylyZXR1cm4gaTEobix7YXVkaW86MX0pLCEwO2lmKG4ucG9saWN5LnNaJiZuLms2LkQpcmV0dXJuIGkxKG4se2NvbnN0cmFpbnQ6MX0pLCEwO2lmKCFuLkoudGFyZ2V0QXVkaW9SZWFkYWhlYWRNc3x8IW4uSi50YXJnZXRWaWRlb1JlYWRhaGVhZE1zKXJldHVybiBpMShuLHtub3JlYWRhaGVhZDoxfSksITA7aWYobi5wb2xpY3kuaiYmbi5sb2FkZXIuWFgoKSlyZXR1cm4gaTEobix7c2Vla1RvSGVhZDoxfSksITA7Vz1NYXRoLm1pbihPYihuLmxvYWRlcixuLmF1ZGlvVHJhY2spKgoxRTMsbi5KLnRhcmdldEF1ZGlvUmVhZGFoZWFkTXMpO2I9TWF0aC5taW4oT2Iobi5sb2FkZXIsbi52aWRlb1RyYWNrKSoxRTMsbi5KLnRhcmdldFZpZGVvUmVhZGFoZWFkTXMpO3Y9TWF0aC5taW4oVyxiKTt2YXIgaz1uLkwuZ2V0Q3VycmVudFRpbWUoKSoxRTMse0IxOmgsbDE6eCxjdjpMLGFrOmV9PXlPWihuLGspO0Q9aDx2O3ZhciBHPXg8djtpZih1MShuKSl7az1vayhuLlcsayk7dmFyIHI9azx2O24uTC5XWCgpJiZyJiYhRCYmIUcmJm4ubG9hZGVyLlUoInNhYnJjcm5tIix7Y3JhOmssbXByYTp2LGNicmw6bi5XLmxlbmd0aH0pfWlmKCEoRHx8R3x8dTEobikmJnIpKXJldHVybiBuLnBvbGljeS51NSYmbi5MLldYKCkmJihMPHZ8fGU8dikmJm4ubG9hZGVyLlUoInNhYnJuY3JxIix7Y2FyOmgsdmFjOngsYWJoOkwsdmJoOmUsbWFyOlcsbXZyOmJ9KSxaayhuLCJyZWFkYWhlYWRtZXQiKSwhMTtpZihuLnBvbGljeS5SVyYmRVJTKG4ubG9hZGVyKSYmbi52aWRlb0RhdGEuTlAoKSlyZXR1cm4gWmsobiwKInNob3J0c2J1ZmZlcmVkdG9lbmQiKSwhMTtpZihuLnBvbGljeS5XZCYmRVJTKG4ubG9hZGVyKSlyZXR1cm4gWmsobiwidm9kYnVmZmVyZWR0b2VuZCIpLCExO3I9bi5sb2FkZXIueXIoKTtyLmNhcj1oO3IudmFjPXg7ci5tYXI9VztyLm12cj1iO3IudGFyPW4uSi50YXJnZXRBdWRpb1JlYWRhaGVhZE1zO3IudHZyPW4uSi50YXJnZXRWaWRlb1JlYWRhaGVhZE1zO3IucGNsPW4uSi5wbGF5YmFja0Nvb2tpZT8ubGVuZ3RofHwwO3IudmJ1PXJrKG4uTC5oNSgpPy5KKCl8fG51bGwpO3IuYWJoPUw7ci52Ymg9ZTtpMShuLHIpO3JldHVybiEwfTsKdWtoPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bmV3IE9xKDAsbi5LdS5ZLG4pO24uazYuRD0hMTtuLnBvbGljeS52WCYmbi5sb2FkZXIuVSgic2FicmNzYyIse3RvOm4ucG9saWN5LlRJLHJsOm4ucG9saWN5LnN6LHNidDpuLnBvbGljeS5DdT8xOjB9LCEwKTtuPVBPdChuLEQsVyk7bi5wb2xpY3kuRkYmJihuLlU4PW4ucG9saWN5LmpfKCkuZXhwb3J0cy5TYWJyUmVxdWVzdENvb3JkaW5hdG9yX2NyZWF0ZSgpKTtyZXR1cm4gbn07Cm9SdD1mdW5jdGlvbihuLFcpe2l5aShuKSYmKFc9dWtoKG4sVyksbi5OLnB1c2goVyksbi5ZPy5OKG4uS3UuWSksbi5WPjAmJm4uUyQuRXkrKyl9OwpQT3Q9ZnVuY3Rpb24obixXLEQpe3ZhciBiPXtpajpuLmlqLEJlOihrLGgpPT57bi5MLkthKGssaCl9LApORDpuLnBvbGljeS5XLEtwOm4ucG9saWN5LktwfTtuLmlqLkouViYmKGIucVk9KG4udmlkZW9UcmFjay5QSi5pbmZvLk5zfHwwKSsobi5hdWRpb1RyYWNrLlBKLmluZm8uTnN8fDApKTtuLnBvbGljeS5VVCYmKGIuTzg9bi5hdWRpb1RyYWNrLlBKLmluZGV4LlVjKCksYi5Rbj0hMSk7dmFyIHY9dW5VKFcsbi5wb2xpY3ksbi5ubik/MjoxO3YhPT1uLm51JiYobi5udT12LG0wTShuKSk7RD1kMGIobixEKTtpZihuLnBvbGljeS5ZJiZuLnBvbGljeS5XJiZELlJBKXtsZXQgaz12PSIiO2ZvcihsZXQgaCBvZiBELlJBKW4udmlkZW9EYXRhLnNhYnJDb250ZXh0VXBkYXRlcy5oYXMoaCl8fG4ucG9saWN5LlkmJkQuYkomJkQuYkoudHlwZT09PWg/dis9YF8ke2h9YDprKz1gXyR7aH1gO24ubG9hZGVyLlUoInNhYnJibGRycXMiLHtjdHh0czp2LG1pc2N0eHRzOmt9KX0hVy5zZXREYXRhKEQsbi5wb2xpY3ksbi5ubikmJm4ucG9saWN5LlkmJm4ubG9hZGVyLmhhbmRsZUVycm9yKCJwbGF5ZXIuZXhjZXB0aW9uIiwKe3JlYXNvbjoiYnVpbGRzYWJycmVxdWVzdGRhdGFmYWlsZWQifSwxKTtiPW5ldyB1dShuLnBvbGljeSxXLG4uS3Usbi5ubixuLGIsbi5sb2FkZXIuVTQoKSk7aXUobi50aW1pbmcpO24ucG9saWN5Lk1kJiZuLmxvYWRlci5VKCJzYWJyY3JxaW5mbyIse3JuOmIuY0EoKSxwcm9iZTpXLkQ1KCl9KTtyZXR1cm4gbi5GRj1ifTsKRXE9ZnVuY3Rpb24obixXKXtVcShuKTtuLmxvYWRlci5TVygpO3JldHVybiBQNihXLG4ubG9hZGVyLmlzU2Vla2luZygpKX07CnUxPWZ1bmN0aW9uKG4pe3JldHVybiBuLnBvbGljeS55RSYmISFuLlh9Owp5dT1mdW5jdGlvbihuLFcsRCl7bj1uLmxvYWRlci5TVygpfHwwO3JldHVybiBvayhXLChEK24pKjFFMykvMUUzK0R9OwpkMGI9ZnVuY3Rpb24obixXKXt2YXIgRD1kaihuLmxvYWRlcikmJlcmJlcuU3MhPT12b2lkIDAmJiFXLmJNP01hdGguY2VpbCgoVy5Tcysobi5sb2FkZXIuU1coKXx8MCkpKjFFMyk6VXEobik7aWYobi5wb2xpY3kudTUpe3ZhciBiPW4udHc7dmFyIHY9bi5iZH1lbHNlIGI9RXEobixuLmF1ZGlvVHJhY2spLHY9RXEobixuLnZpZGVvVHJhY2spO3ZhciBrPVsuLi5iLmVXLC4uLnYuZVddO3UxKG4pJiZrLnB1c2goLi4ubi5XKTt2YXIgaD1bLi4uYi5CaSwuLi52LkJpXSx4PVtdO2Zvcih2YXIgTCBvZiBoKUwudkQhPT12b2lkIDAmJkwudkQ+TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVI/bi5sb2FkZXIuVSgic2FicnBzZWdsbXQiLHtsbXQ6TC52RCxpdGFnOkwuZm9ybWF0SWQ/Lml0YWcsc3E6TC5zZXF1ZW5jZU51bWJlcn0pOngucHVzaChMKTtoPW4ubG9hZGVyLmx1KCk7bi5wb2xpY3kuWW4mJiFuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFjayYmKEw9bi52aWRlb0RhdGEubGVuZ3RoU2Vjb25kcyoKMUUzLEQ+PUwmJm4ubG9hZGVyLlUoImludmFsaWRTYWJyQ210Iix7Y210OkQsdmQ6TH0pKTtMPW4uaWo7dmFyIGU9bi5MLEc9bi5LdSxyPW4uSixOPW4udmlkZW9EYXRhLmJkLEg9bi5wb2xpY3ksQT1uLmxvYWRlci5xRyx5PW4uVlE/LmtFLFQ9bi5WUT8uVW0sej1uLkc3LEM9TnVtYmVyKG4uazYuWD8uaW5mby5pdGFnKXx8MCxRPU51bWJlcihuLms2Lmo/LmluZm8uaXRhZyl8fDAsVj1uLkwudzkoKTt2YXIgTHQ9Vz8uSiQ/Vy5KJDpuLmxvYWRlci5pc1N1c3BlbmRlZD80OnZvaWQgMDtEPXtpajpMLEw6ZSxLdTpHLGVXOmssQmk6eCxuUjpELG5leHRSZXF1ZXN0UG9saWN5OnIsUkE6TixvWjpILHB6OkEsa0U6eSxVbTpULEc3OnosdU06QyxyRzpRLHEkOmgscjg6VixKJDpMdCxDeDpuLkN4LGdEOm4uUFgsSGU6bi5IZX07az1uLmxvYWRlci5NWSgpO3g9Zy5kMShrKTtrJiYoRC5kTj14KTtpZihXPWRqKG4ubG9hZGVyKSYmVz8uYk0/Vy5TczpuLkwuZUooKSlELmo0PVcqMUUzO1c9bi5rNjsKaz1XLnR3O2lmKFcub1o/LkR0KCkmJiFrKWZvcih0aSBvZiBXLlcpaWYodGkua1ope2s9ITA7YnJlYWt9dmFyIHRpPVcub1ouRHQoKSYmIWs/W106TyRpKFcsVy5XKTtELkdoPXRpO3RpPW4uazY7dGkub1ouRHQoKSYmIXRpLmJkP3RpPVtdOihXPUtqaSh0aSksVy5sZW5ndGg9PT0wJiYoVz10aS5WKSx0aT1PJGkodGksVykpO0QuTSQ9dGk7RC5Fdj11MShuKT9bbi5YXTp2b2lkIDA7RC5JOD1BcnJheS5mcm9tKHdDKG4uazYuTikua2V5cygpLE51bWJlcik7RC5sbD1uLms2LmxsKCk7bi5wb2xpY3kuS0UmJihELllzPXpTMihuLmxvYWRlcixuLmF1ZGlvVHJhY2spLEQuZXE9elMyKG4ubG9hZGVyLG4udmlkZW9UcmFjaykpO3RpPW4ubG9hZGVyLmdldEN1cnJlbnRUaW1lKCk7Yj15dShuLGIuZVcsdGkpO3Y9eXUobix2LmVXLHRpKTt2PU1hdGgubWluKGIsdik7bi5UQz12O24ucG9saWN5LlUxJiYodTEobikmJihiPXl1KG4sbi5XLHRpKSxuLkwuV1goKSYmYjx2JiZuLmxvYWRlci5VKCJzYWJyY2ZiIiwKe21ldDp2LGNldDpiLGNicmw6bi5XLmxlbmd0aH0pLHY9TWF0aC5taW4odixiKSksIW4ucG9saWN5LlgmJihiPW4uc1U/LlNQKHYpKSkmJihELk15PWIsbi5sb2FkZXIuVSgic2RhaSIse3NzaW5mbzpiLmN1ZXBvaW50SWR9KSk7bi5wb2xpY3kuWCYmKGI9bi52aWRlb0RhdGEuYkJbbi52aWRlb0RhdGEuSj8uY29udGFpbmVyVHlwZXx8MF0sdis9bi5sb2FkZXIuU1coKSxELmJLPW4uVk8/LlkodixiKSxELmJLJiZuLmxvYWRlci5VKCJjbHNkYWkiLHtzc2luZm9zOkQuYksubGVuZ3RofSksbi5WTz8uTygpKTtuLnBvbGljeS5ZJiZuLk4ubGVuZ3RoPjAmJm4uTlswXS5ETCgpJiYoRC5iSj1uLk5bMF0ubWYoKSk7cmV0dXJuIER9OwpVcT1mdW5jdGlvbihuKXt2YXIgVz1uLnBvbGljeS5qJiZuLmxvYWRlcj8uWFgoKSxEPW4ubG9hZGVyLmdldEN1cnJlbnRUaW1lKCl8fDA7RD1sSWIobixEKTthOmlmKG4ucG9saWN5LmZtJiZuLmxvYWRlci5pc1NlZWtpbmcoKSl7dmFyIGI9QTAobi52aWRlb1RyYWNrLEQpO24ubG9hZGVyLlUoImFzbXRmbmN0diIse2I6RCxhOmJ9KTtpZighaXNOYU4oYikpe0Q9YjticmVhayBhfX1iPW4ubG9hZGVyLlNXKCl8fDA7RCs9YjtiPVlwKG4udmlkZW9EYXRhKXx8Zy5wQShuLnZpZGVvRGF0YSk7dmFyIHY9MDtXPyhiJiYodj1OdW1iZXIuTUFYX1NBRkVfSU5URUdFUiksbi52aWRlb0RhdGEuUkkmJih2PU1hdGguY2VpbChuLnZpZGVvRGF0YS5KVSoxRTMpKSk6dj1NYXRoLmNlaWwoRCoxRTMpO3JldHVybiBNYXRoLm1pbihOdW1iZXIuTUFYX1NBRkVfSU5URUdFUix2KX07CmxJYj1mdW5jdGlvbihuLFcpe2lmKG4ubG9hZGVyLmlzU2Vla2luZygpKXJldHVybiBXO3ZhciBEPW4uTC5oNSgpO2lmKCFEKXJldHVybiBXO0Q9RC5KKCk7aWYoRC5sZW5ndGg9PT0wfHxCUihELFcpKXJldHVybiBXO2lmKCFuLnZpZGVvVHJhY2suZnAoVykmJiFuLmF1ZGlvVHJhY2suZnAoVykpcmV0dXJuIG4ubG9hZGVyLlUoInN1bmRybiIse2I6MCxsdDpXfSksVzt2YXIgYj1XLHY9SW5maW5pdHk7Zm9yKGxldCBrPTA7azxELmxlbmd0aDtrKyspe2lmKEQuc3RhcnQoayk+Vyljb250aW51ZTtsZXQgaD1XLUQuZW5kKGspO2g8diYmKHY9aCxiPUQuZW5kKGspKX1yZXR1cm4gYiE9PVcmJihuLmxvYWRlci5VKCJzdW5kcm4iLHticmU6YixsdDpXfSksdj49MjApPyhuLmxvYWRlci5oYW5kbGVFcnJvcigicGxheWVyLmV4Y2VwdGlvbiIse3JlYXNvbjoiYnVmZmVydW5kZXJydW5leGNlZWRzbGltaXQifSksVyk6Yn07Cm9rPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9MCxiPS0xO2ZvcihsZXQgdiBvZiBuKWlmKCEodi5zdGFydFRpbWVNcyt2LmR1cmF0aW9uTXM8Vykpe2lmKGI8MCYmdi5zdGFydFRpbWVNcz5XfHxiPj0wJiZ2LkFDPmIrMSlicmVhaztEPU1hdGgubWF4KEQsdi5zdGFydFRpbWVNcyt2LmR1cmF0aW9uTXMpO2I9TWF0aC5tYXgoYix2Lmk5KX1yZXR1cm4gTWF0aC5tYXgoMCxELVcpfTsKWms9ZnVuY3Rpb24obixXKXtuLkdDPVc7bi5wb2xpY3kuTWQmJm4ubG9hZGVyLlUoInNhYnJjcmIiLHtyZWFzb246V30pfTsKVTBaPWZ1bmN0aW9uKG4sVyl7YTp7aWYobi5WPjApe3ZhciBEPU1hdGguZmxvb3IoKDAsZy5SKSgpLzFFNCk7aWYoRD09PVcuWGope2lmKFcuRXk+PW4uVil7aWYoVy5FeT09PW4uVil7RD17cmVhc29uOiJ0b29tYW55cmVxdWVzdHMifTtELmxpbWl0PVcuRXk7aWYobi5GRil7bGV0IGI9RGsobi5GRi5pbmZvKTtELmxyX3B0aW1lPWIucHRpbWU7RC5scl9ydHlwZT1iLnJ0eXBlO0QubHJfYnJsPWIuYnJsO0QubHJfcHM9Yi5wc31uLmxvYWRlci5oYW5kbGVFcnJvcigicGxheWVyLmV4Y2VwdGlvbiIsRCk7Vy5FeSs9MX1XPSExO2JyZWFrIGF9fWVsc2UgVy5Yaj1ELFcuRXk9MH1XPSEwfXJldHVybiFXfHxuLmxvYWRlci5pc1N1c3BlbmRlZCYmbi5sb2FkZXIuT00/ITE6bi5qJiYoMCxnLlIpKCk8bi5qPyhnLkphKG4ubG9hZGVyLmoyKSwhMSk6bi5OLmxlbmd0aD4wJiYoIW4ucG9saWN5Lll8fG4uTi5sZW5ndGghPT0xfHwhbi5OWzBdLkRMKCkpfHwhbi5LdS5ZPy5ZKG4ucG9saWN5LG4ubm4sCm4ubG9hZGVyLkl3KXx8bi5EdD8hMTohMH07CmkxPWZ1bmN0aW9uKG4sVyl7bi5HQz12b2lkIDA7bi5ZWj0oMCxnLlIpKCk7bi5wb2xpY3kuTWQmJm4ubG9hZGVyLlUoInNhYnJjcnEiLFcpfTsKeU9aPWZ1bmN0aW9uKG4sVyl7dmFyIHtjdjpELGFrOmJ9PVRKYihuKTtpZihuLnBvbGljeS51NSl7dmFyIHY9b2sobi50dy5lVyxXKTtuPW9rKG4uYmQuZVcsVyl9ZWxzZSB2PUQsbj1iO3JldHVybntCMTp2LGwxOm4sY3Y6RCxhazpifX07Cm0wTT1mdW5jdGlvbihuKXtuLnZpZGVvRGF0YS5iZC5jbGVhcigpO2lmKG4udmlkZW9EYXRhLnNhYnJDb250ZXh0VXBkYXRlcy5zaXplPjApZm9yKHZhciBXIG9mIG4udmlkZW9EYXRhLnNhYnJDb250ZXh0VXBkYXRlcy5rZXlzKCkpbi52aWRlb0RhdGEuc2FickNvbnRleHRVcGRhdGVzLmdldChXKT8uc2VuZEJ5RGVmYXVsdCYmbi52aWRlb0RhdGEuYmQuYWRkKFcpO2lmKG4ucG9saWN5LlkmJm4uTi5sZW5ndGgpZm9yKGxldCBEIG9mIG4uTikoVz1ELm1mKCkpJiZXLnR5cGUmJlcuc2VuZEJ5RGVmYXVsdCYmbi52aWRlb0RhdGEuYmQuYWRkKFcudHlwZSl9Owptdj1mdW5jdGlvbihuKXtmb3IoO24uTi5sZW5ndGgmJm4uTlswXS5CNihuLkUxKCkpOyl7bGV0IFc9bi5OLnNoaWZ0KCk7ajlDKG4sVyl9bi5OLmxlbmd0aCYmajlDKG4sbi5OWzBdKX07Cmo5Qz1mdW5jdGlvbihuLFcpe1cgaW5zdGFuY2VvZiB1dSYmKG4uZSQ9Vyk7dmFyIEQ9bmV3IFNldChXLlNKKG4uRTEoKSkpO2ZvcihsZXQgaCBvZiBEKXtpZihEPVcgaW5zdGFuY2VvZiBLRCl7RD1uLms2O3ZhciBiPXl5eChELGgpLHY9bkQoRCxELnZpZGVvSW5mb3MpLmluY2x1ZGVzKGgpOyFELm9aLlRQfHxifHx2fHxELmxvYWRlci5VKCJzYWJyY3BmIix7ZmlkOmAke2h9YCx2ZmlkczpgJHtuRChELEQudmlkZW9JbmZvcykuam9pbigiLiIpfWAsc2FpZDpELll8fCIifSk7RD0hKGJ8fHYpfWlmKEQpY29udGludWU7RD1XIGluc3RhbmNlb2YgdXU/eUIoVyk6dm9pZCAwO2lmKEQhPT12b2lkIDApe2lmKCFXLlFBKGgsbi5FMSgpKSljb250aW51ZTtiPW4uS3UuSi5nZXQoaCk7aWYoIWIpY29udGludWU7bi5wb2xpY3kueUUmJmIuaW5mby5OKCl8fChiLmluZm8uZVMoKT9uLmF1ZGlvVHJhY2s6bi52aWRlb1RyYWNrKS5aYyhELGgpO2NvbnRpbnVlfUQ9Vy5mMyhoLG4uRTEoKSk7Yj1uLnBvbGljeS55RSYmCkQubGVuZ3RoPjAmJkRbMF0uUEouaW5mby5OKCk7aWYoIVcuUUEoaCxuLkUxKCkpKWNvbnRpbnVlO3Y9Vy54OShoLG4uRTEoKSk7Zm9yKGxldCB4IG9mIHYpe24ucG9saWN5LlcmJlcgaW5zdGFuY2VvZiBLRCYmbi5sb2FkZXIuVSgib21ibHNzIix7czp4LmluZm8uZ2EoKX0pO2lmKGIpe3Y9bi50aW1pbmc7di5EfHwodi5EPSgwLGcuUikoKSxnLkVHKCJmY2JfciIsdi5ELHYuelIpKTtpZihuLnBvbGljeS5rdSl7dj1nLlZmKHguaW5mby5QSi5pbmZvLG4uS3UuelcpO3ZhciBrPXguaW5mby5qJDtpZihuLksmJk1rKG4uSyk9PT1Nayh2KSYmazw9bi5jSiljb250aW51ZTt4LmluZm8uYVomJihuLks9dixuLmNKPWspfXY9bjt2LnZpZGVvRGF0YS56VygpJiZ2LlgmJk1rKHYuWCk9PT1NayhnLlZmKHguaW5mby5QSi5pbmZvLHYuS3UuelcpKSYmdi5MLldKKCJzYWJyQ2FwdGlvbnNEYXRhTG9hZGVkIix4LHYueUUuYmluZCh2KSk7Y29udGludWV9dj14LmluZm8uUEouaW5mby5lUygpO2s9eC5pbmZvLlBKOwpsZXQgTD1XIGluc3RhbmNlb2YgS0Q/MToyO2lmKHYpe2lmKG4uazYuWHIoayxMLFcuSmQobi5FMSgpKT8udG9rZW4pKWNvbnRpbnVlfWVsc2Ugbi5rNi5EUihrLEwsVy5KZChuLkUxKCkpPy50b2tlbik7az12P24uYXVkaW9UcmFjazpuLnZpZGVvVHJhY2s7VyBpbnN0YW5jZW9mIEtEJiYoay5qPSExLFcgaW5zdGFuY2VvZiBLRCYmKHY/Z2oxKG4udGltaW5nKTplN2Iobi50aW1pbmcpKSk7dHJ5e2suV2coRCx4KX1jYXRjaChlKXt2PUIkKGUpLG4ubG9hZGVyLmhhbmRsZUVycm9yKHYuZXJyb3JDb2RlLHYuZGV0YWlscyx2LnNldmVyaXR5KSxrLnppKCksbi5YJCghMSwicHVzaFNsaWNlIiksZy5BZyhuLmxvYWRlcil9fX19OwpPeVo9ZnVuY3Rpb24obixXKXtuLnBvbGljeS5ZP24uTi5zcGxpY2Uobi5OLmluZGV4T2YoVykpLmZvckVhY2goRD0+e0QuZGlzcG9zZSgpfSk6KG4uTi5wb3AoKSxXPy5kaXNwb3NlKCkpfTsKQ09qPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1bXTtmb3IobGV0IHY9MDt2PG4uTi5sZW5ndGg7disrKVcmJm4uTlt2XWluc3RhbmNlb2YgS0Q/Yi5wdXNoKG4uTlt2XSk6KG4ucG9saWN5Lk1kJiZuLmxvYWRlci5VKCJzYWJyZGlzIix7ZDpuLk5bdl0uY0EoKSxzcmM6RH0pLG4uTlt2XS5kaXNwb3NlKCkpO24uTj1ifTsKQkp0PWZ1bmN0aW9uKG4sVyl7aWYoVy50bigpfHxXLnFOKCkpe3ZhciBEPW4ubG9hZGVyLGI9RC5VLHY9Vy5zdGF0ZTtuPW4uRTEoKTtXPVcubkE/LmdldChuKT8uWSgpPz8tMTtiLmNhbGwoRCwic2Ficm9tYiIse3M6dix0Ynl0ZXM6V30pfWVsc2V7RD1XLlNKKG4uRTEoKSk7Yj0hMTtmb3IobGV0IGsgb2YgRClpZih2PW4uazYsbkQodix2LnZpZGVvSW5mb3MpLmluY2x1ZGVzKGspKXtiPSEwO2JyZWFrfWlmKEQubGVuZ3RoPT09MHx8YiluLlBYPSEwO24uTi5wdXNoKFcpO1cuWEwucHVzaChuKTtpdShuLnRpbWluZyk7bi5wb2xpY3kuclcmJlcuYlAmJm4udVEoVy5iUCxXLmNBKCkpfX07ClRKYj1mdW5jdGlvbihuKXt2YXIgVz1uLmF1ZGlvVHJhY2suenMoITApKjFFMztuPW4udmlkZW9UcmFjay56cyghMCkqMUUzO3JldHVybntjdjpXLGFrOm59fTsKRllDPWZ1bmN0aW9uKG4se1NzOlcsYk06RH0pe2lmKFc9PT12b2lkIDApcmV0dXJuITE7Vz1EP24uTC5sSyhXKTpXO2lmKFc9IW4ubG9hZGVyLmZwKFcpJiZVMFoobixuLkN1KSl7Vz1uLkwuZ2V0Q3VycmVudFRpbWUoKSoxRTM7bGV0IHtCMTpiLGwxOnZ9PXlPWihuLFcpO1c9Yj49N0UzJiZ2Pj03RTN9cmV0dXJuIFd9Owp3Qng9ZnVuY3Rpb24obixXKXtuLmRlbGF5Py5kaXNwb3NlKCk7bi5kZWxheT1udWxsO3ZhciBEPUFycmF5LmZyb20obi5OLnZhbHVlcygpKS5zb3J0KChiLHYpPT5iLm1lZGlhVGltZS12Lm1lZGlhVGltZSk7CkQubGVuZ3RoIT09MCYmKFc9KERbMF0ubWVkaWFUaW1lLVcpKjFFMy9uLkwuZ2V0UGxheWJhY2tSYXRlKCksbi5kZWxheT1uZXcgZy5mXygoKT0+e3pjKG4pfSxXPjUwMD9XLTUwMDpXKSxuLmRlbGF5LnN0YXJ0KCkpfTsKemM9ZnVuY3Rpb24obixXKXtpZihsMShuLkwuZ2V0UGxheWVyU3RhdGUoKSkmJm4uTi5zaXplIT09MCl7Vz1XPz9BcnJheS5mcm9tKG4uTi52YWx1ZXMoKSkuc29ydCgodixrKT0+di5tZWRpYVRpbWUtay5tZWRpYVRpbWUpOwp2YXIgRD1uLmdldEN1cnJlbnRUaW1lKCksYj0oV1swXS5tZWRpYVRpbWUtRCkqMUUzL24uTC5nZXRQbGF5YmFja1JhdGUoKTtpZihiPDUwMCl7RD1iPjA/bi5MLmg1KCk/LmdldEN1cnJlbnRUaW1lKCk/P24uTC5nZXRDdXJyZW50VGltZSgpOkQ7Zm9yKGxldCB2IG9mIFcpaWYoRD49di5tZWRpYVRpbWUpdi5yZXNvbHZlKFt2Lm1lZGlhVGltZSx2LmlkXSksbi5OLmRlbGV0ZSh2LmlkKTtlbHNlIGJyZWFrfXdCeChuLEQpfX07Ck1fdz1mdW5jdGlvbihuLFcsRCl7bi5OLmRlbGV0ZShEKTtyZXR1cm4gbmV3IFByb21pc2UoYj0+e24uTi5zZXQoRCx7aWQ6RCxtZWRpYVRpbWU6VyxyZXNvbHZlOmJ9KTtiPUFycmF5LmZyb20obi5OLnZhbHVlcygpKS5zb3J0KCh2LGspPT52Lm1lZGlhVGltZS1rLm1lZGlhVGltZSk7CkQ9PT1iWzBdLmlkJiZ6YyhuLGIpfSl9OwpROWI9ZnVuY3Rpb24obil7dmFyIFc9bi5MLmg1KCk/LmdldEN1cnJlbnRUaW1lKCk/P24uTC5nZXRDdXJyZW50VGltZSgpLEQ9bi5YLlIzKFcpO1JTQyhuLEQsVyk7bi5pc1NlZWtpbmc9ITE7dmFyIGI9QXJyYXkuZnJvbShuLk4ua2V5cygpKS5maWx0ZXIodj0+dj49RCkuc29ydCgodixrKT0+di1rKTsKZm9yKGxldCB2IG9mIGIpYj12PT09RD9XLW4uWC5nZXRTdGFydFRpbWUoRCk6MCxuLksodixuLk4uZ2V0KHYpLGIpfTsKVl8yPWZ1bmN0aW9uKG4sVyxELGI9ITEpe1chPT1uLktZJiYobi5LWT1XLG4uTC5XSigicGxheWJhY2tzdGFydGVkIixXLEQrbi5MLlNXKCksYikpfTsKUlNDPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLk4uZ2V0KFcpLHY9bi5YLmdldFN0YXJ0VGltZShXKSxrPW4uWC5nZXREdXJhdGlvbihXKSxoPXY7KGI/Lk4/P1tuLmNwbl0pLmZvckVhY2goKHgsTCk9Pnt2YXIgZT1iPy5KW0xdPz9rO0Q+PWgmJkQ8aCtlJiYoTD14IT09bi5jcG4/aC0oYj8uWFtMXT8/MCk6aCxuLko9eCxWXzIobix4LEwsITApKTtoKz1lfSl9OwpjT3c9ZnVuY3Rpb24obixXKXsobi5XLmdldChXKT8/W10pLmZvckVhY2goRD0+e24uai5OLmRlbGV0ZShEKX0pOwpuLlcuZGVsZXRlKFcpfTsKYUlaPWZ1bmN0aW9uKG4sVyxELGIpe24uSj1EO0Q9YCR7V30uJHtEfWA7bi5XLmhhcyhXKT9uLlcuZ2V0KFcpLnB1c2goRCk6bi5XLnNldChXLFtEXSk7TV93KG4uaixiLEQpLnRoZW4oKFt2LGtdKT0+e3ZhciBbaCx4XT1rLnNwbGl0KCIuIik7WyxrXT1bTnVtYmVyKGgpLHhdO1ZfMihuLGssdil9KX07CldYaD1mdW5jdGlvbihuLFcsRCxiLHYsayl7cmV0dXJuIFcuVDcmJlcuRTUmJkQ9PT0zP25ldyBudTEobixXLGIsdixrKTpudWxsfTsKRExiPWZ1bmN0aW9uKG4sVyl7aWYobi5wb2xpY3kuRDIpe3ZhciBEPVcuaW5mby5OcyxiPUdEKG4uc2NoZWR1bGUpO1c9Vy5pbmRleC5VYygpO0Q9TWF0aC5tYXgoMSxiL0QpO24uWT1NYXRoLnJvdW5kKE1hdGgubWF4KCgoRC0xKSpXK24ucG9saWN5LndhKS9ELFctbi5wb2xpY3kuTWwpKjFFMyl9fTsKa25yPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9RGF0ZS5ub3coKS8xRTMsYj1ELW4uc3RhcnRUaW1lU2Vjcyx2PUQtbi5WLGs9dj49bi5wb2xpY3kuT04saD0hMTtpZihrKXtsZXQgeD0wOyFpc05hTihXKSYmVz5uLmomJih4PVctbi5qLG4uaj1XKTt4L3Y8bi5wb2xpY3kuSVcmJihoPSEwKTtuLlY9RH1EPWI+PW4ucG9saWN5Lk1sJiYhbi5XO2lmKCFrJiYhRCYmYkZqKG4sVykpcmV0dXJuIE5hTjtEJiYobi5XPSEwKTthOntiPWg7RD0oMCxnLlIpKCkvMUUzLShuLnF6LkxnKCl8fDApLW4uSy5XLW4ucG9saWN5LndhO2s9bi5KLnNlZ21lbnRTdGFydFRpbWU7RD1rK0Q7aWYoYil7aWYoaXNOYU4oVykpe1RjKG4sTmFOLCJuIixXKTtrPU5hTjticmVhayBhfWI9Vy1uLnBvbGljeS5FVDtiPEQmJihEPWIpfWVsc2Ugbi5XJiYoYj1EK24ucG9saWN5LndhLW4uTytuLnBvbGljeS5BTCxpc05hTihXKXx8KGI9TWF0aC5tYXgoYixNYXRoLm1pbihELFctbi5wb2xpY3kuRVQpKSksRD1iKTtrPUQ9TWF0aC5tYXgoRCwKayl9bi5OPWs7aWYoaXNOYU4obi5OKSlyZXR1cm4gbi5jbGVhcigpLE5hTjtpZighaCYmYkZqKG4sVykpcmV0dXJuIHZ1TShuLFcpLE5hTjtpZihuLk48PW4uSi5zZWdtZW50U3RhcnRUaW1lKXJldHVybiBUYyhuLE5hTiwieSIsVyksbi5jbGVhcigpLE5hTjtpZighbi5EKG4uTiwhMSkpcmV0dXJuIXZ1TShuLFcpJiZoJiYoVGMobixOYU4sInQiLFcpLG4uY2xlYXIoKSksTmFOO2g9bi5OO1RjKG4saCwicyIsVyk7bi5jbGVhcigpO3JldHVybiBofTsKYkZqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGlzTmFOKFcpPyEwOmlzTmFOKG4uTik/ITE6VzxuLk4rKG4uVz9uLnBvbGljeS5FVDpuLnBvbGljeS5neCl9Owp2dU09ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5EKG4uTiwhMCk/ITE6KFRjKG4sTmFOLCJucyIsVyksbi5jbGVhcigpLCEwKX07ClRjPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PW4uWC55MCgpO3Yuc3NyX3NrPShXKjFFMykudG9GaXhlZCgwKTt2LnNzcl90PShuLk4qMUUzKS50b0ZpeGVkKDApO3Yuc3NyX3I9RDt2LnNzcl9zdD0obi5zdGFydFRpbWVTZWNzKjFFMykudG9GaXhlZCgwKTt2LnNzcl9uPSgwLGcuUikoKS50b0ZpeGVkKDApO3Yuc3NyX2Y9KG4uSy5XKjFFMykudG9GaXhlZCgwKTt2LnNzcl9mYT1uLlc/IjEiOiIwIjt2LnNzcl9vPShuLnF6LkxnKCkqMUUzfHwwKS50b0ZpeGVkKDApO3Yuc3NyX3Y9KGIqMUUzKS50b0ZpeGVkKDApO1c9bi5KLlBKLmluZGV4O1cuTUkobi5KLmokLCEwKSYmKHYuc3NyX2lzdD0oVy5nZXRTdGFydFRpbWUobi5KLmokKSoxRTMpLnRvRml4ZWQoMCksdi5zc3JfaWQ9KFcuZ2V0RHVyYXRpb24obi5KLmokKSoxRTMpLnRvRml4ZWQoMCkpO24ubG9hZGVyLlUoInNzciIsdil9OwpoUXg9ZnVuY3Rpb24oKXt2YXIgbj17fSxXPXdpbmRvdy5wZXJmb3JtYW5jZTtpZihXKXtsZXQgRD1XLm1lbW9yeTtEJiYobi5qc1RvdGFsPUQudG90YWxKU0hlYXBTaXplLG4uanNVc2VkPUQudXNlZEpTSGVhcFNpemUsbi5qc0xpbWl0PUQuanNIZWFwU2l6ZUxpbWl0LG4ubXNUb3RhbD1ELmdldE1lZGlhU291cmNlVG90YWxBbGxvY2F0ZWRNZW1vcnk/LigpPz9ELnRvdGFsTWVkaWFTb3VyY2VTaXplLG4ubXNMaW1pdD1ELmdldE1lZGlhU291cmNlTWF4aW11bU1lbW9yeUNhcGFjaXR5Py4oKT8/RC5tZWRpYVNvdXJjZVNpemVMaW1pdCxuLm1zVXNlZD1ELmdldE1lZGlhU291cmNlQ3VycmVudE1lbW9yeUNhcGFjaXR5Py4oKT8/RC51c2VkTWVkaWFTb3VyY2VNZW1vcnlTaXplKTtXLm1lYXN1cmVBdmFpbGFibGVDcHVNZW1vcnkmJihuLmNiRnJlZT1XLm1lYXN1cmVBdmFpbGFibGVDcHVNZW1vcnkoKSk7Vy5tZWFzdXJlVXNlZENwdU1lbW9yeSYmKG4uY2JVc2VkPVcubWVhc3VyZVVzZWRDcHVNZW1vcnkoKSl9d2luZG93Lmg1dmNjPy5jVmFsJiYKKG4uY2JGcmVlPXdpbmRvdy5oNXZjYy5jVmFsLmdldFZhbHVlKCJNZW1vcnkuQ1BVLkZyZWUiKSxuLmNiVXNlZD13aW5kb3cuaDV2Y2MuY1ZhbC5nZXRWYWx1ZSgiTWVtb3J5LkNQVS5Vc2VkIiksbi5jYkpzPXdpbmRvdy5oNXZjYy5jVmFsLmdldFZhbHVlKCJNZW1vcnkuSlMiKSk7cmV0dXJuIG59Owp4THQ9ZnVuY3Rpb24obil7cmV0dXJuIHdpbmRvdy5QcmVzc3VyZU9ic2VydmVyJiZuZXcgd2luZG93LlByZXNzdXJlT2JzZXJ2ZXIobil9OwpMWHI9YXN5bmMgZnVuY3Rpb24obil7dHJ5e2F3YWl0IG4uan1jYXRjaHt9bi5XPy5kaXNjb25uZWN0KCl9OwpndUM9ZnVuY3Rpb24obixXKXtXP2VRai50ZXN0KG4pOihuPWcub0UobiksT2JqZWN0LmtleXMobikuaW5jbHVkZXMoImNwbiIpKX07CmpSPWZ1bmN0aW9uKG4sVyxELGIsdixrKXt2YXIgaD17Zm9ybWF0OiJSQVcifSx4PXt9O2lmKGcuVGQobikmJmcuakgoKSl7bGV0IEw9Zy5BcigiRU9NX1ZJU0lUT1JfREFUQSIpO0w/eFsiWC1Hb29nLUVPTS1WaXNpdG9yLUlkIl09TDpiP3hbIlgtR29vZy1WaXNpdG9yLUlkIl09YjpnLkFyKCJWSVNJVE9SX0RBVEEiKSYmKHhbIlgtR29vZy1WaXNpdG9yLUlkIl09Zy5BcigiVklTSVRPUl9EQVRBIikpO0QmJih4WyJYLUdvb2ctUGFnZUlkIl09RCk7KGI9Vy5UQykmJiFnLnFGKFcpJiYoeFsiWC1Hb29nLUF1dGhVc2VyIl09Yik7diYmKHguQXV0aG9yaXphdGlvbj1gQmVhcmVyICR7dn1gKTtXLlMoImVuYWJsZV9kYXRhc3luY19pZF9oZWFkZXJfaW5fd2ViX3Zzc19waW5ncyIpJiZXLllyJiZXLmRhdGFzeW5jSWQmJih4WyJYLVlvdVR1YmUtRGF0YVN5bmMtSWQiXT1XLmRhdGFzeW5jSWQpO2lmKFcuUygiZW5hYmxlX3JvbGxvdXRfdG9rZW5faGVhZGVyIikpe2xldCBlPWcuQXIoIklOTkVSVFVCRV9DT05URVhUIik/LmNsaWVudD8ucm9sbG91dFRva2VuOwplJiYoeFsiWC1Zb3VUdWJlLVJvbGxvdXQtVG9rZW4iXT1lKX1MfHx4WyJYLUdvb2ctVmlzaXRvci1JZCJdfHx2fHxEfHxiP2gud2l0aENyZWRlbnRpYWxzPSEwOlcuUygiaHRtbDVfc2VuZF9jcG5fd2l0aF9vcHRpb25zIikmJmVRai50ZXN0KG4pJiYoaC53aXRoQ3JlZGVudGlhbHM9ITApfU9iamVjdC5rZXlzKHgpLmxlbmd0aD4wJiYoaC5oZWFkZXJzPXgpO2smJihoLm9uRmluaXNoPWspO3JldHVybiBPYmplY3Qua2V5cyhoKS5sZW5ndGg+MT9oOm51bGx9OwpDRD1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgpe2cuakgoKSYmRC50b2tlbiYmKG49Zy56ZChuLHtjdHQ6RC50b2tlbixjdHR5cGU6RC55byxtZHhfZW52aXJvbm1lbnQ6RC5tZHhFbnZpcm9ubWVudH0pKTtiLlMoIm5ldF9waW5nc19sb3dfcHJpb3JpdHkiKSYmKFd8fChXPXt9KSxXLnByaW9yaXR5PSJsb3ciKTtrfHx4JiZiLlMoIm53bF9za2lwX3JldHJ5Iik/KFc9PW51bGw/Vz17fTpndUMobixiLlMoImh0bWw1X2Fzc2VydF9jcG5fd2l0aF9yZWdleCIpKSxoP2cuSFUoKS5zZW5kQW5kV3JpdGUobixXKTpnLkhVKCkuc2VuZFRoZW5Xcml0ZShuLFcseCkpOlc/KGd1QyhuLGIuUygiaHRtbDVfYXNzZXJ0X2Nwbl93aXRoX3JlZ2V4IikpLEJXaihuLFcpKTpnLmdvKG4sdil9OwpYTmk9ZnVuY3Rpb24obil7dmFyIFc9W107Zm9yKGxldCBEPTA7RDxuO0QrKyl7bGV0IGI9e30sdj1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqOSoxRTgpKzFFOCxrPSIiO2ZvcihsZXQgaD0wO2g8OTtoKyspays9ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoiW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSo1MildO2IudmlkZW9EZWNvZGVyTmFtZT1rO2IuZWxhcHNlZFRpbWVNcz12O1cucHVzaChiKX1yZXR1cm4gV307CkJsPWZ1bmN0aW9uKG4sVyl7bj13aW5kb3cuaDV2Y2M/LnNldHRpbmdzPy5zZXQobixXKTtyZXR1cm4gWW8obik/U2soSFAobiksKCk9PiEwLCgpPT4hMSk6SFAoISFuKX07CnFScj1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhU291cmNlLkVuYWJsZVVzaW5nTWVkaWFTb3VyY2VCdWZmZXJlZFJhbmdlIixuPzE6MCl9OwpHbnc9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJIVFRQMyIsbj8xOjApfTsKdEZ4PWZ1bmN0aW9uKG4pe3JldHVybiBCbCgiTWVkaWFTb3VyY2UuRW5hYmxlVXNpbmdNZWRpYVNvdXJjZUF0dGFjaG1lbnRNZXRob2RzIixuPzE6MCl9OwokTEM9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJRVUlDIixuPzE6MCl9OwpyYzI9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5BdWRpb1dyaXRlRHVyYXRpb25Mb2NhbCIsbil9OwpzZ3c9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5QbGF5ZXJDb25maWd1cmF0aW9uLkRlY29kZVRvVGV4dHVyZVByZWZlcnJlZCIsbj8xOjApfTsKTjBTPWZ1bmN0aW9uKG4pe3JldHVybiBCbCgiTWVkaWEuVmlkZW9EZWNvZGVySW5pdGlhbFByZXJvbGxDb3VudCIsbil9OwpwTnQ9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5WaWRlb1JlbmRlcmVyTWluSW5wdXRCdWZmZXJzIixuKX07CllSdz1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLlZpZGVvUmVuZGVyZXJNaW5EZWNvZGVkRnJhbWVzIixuKX07CkhGWj1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkluY3JlbWVudGFsUGFyc2VMb29rQWhlYWQiLG4/MTowKX07CmZ5VT1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkVuYWJsZVJlc2V0QXVkaW9EZWNvZGVyIixuPzE6MCl9OwpKY2I9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5FbmFibGVGbHVzaER1cmluZ1NlZWsiLG4/MTowKX07Ckl5dz1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIkRlY29kZXJCdWZmZXIuRW5hYmxlQ29uZmlndXJhYmxlRGVjb21taXRTdHJhdGVneSIsbil9OwpTUnQ9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJEZWNvZGVyQnVmZmVyLlJlbGVhc2VNZW1vcnlPbkJhY2tncm91bmQiLG4/MTowKX07CkFjWj1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkRlY29kZWRBdWRpb0J1ZmZlclBvb2wiLG4/MTowKX07Cm1MMj1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLlZpZGVvRnJhbWVJbXBsUG9vbCIsbj8xOjApfTsKS1haPWZ1bmN0aW9uKG4pe3JldHVybiBCbCgiTWVkaWEuRXhwZXJpbWVudGFsTWF4UGVuZGluZ0J5dGVzUGVyUGFyc2UiLG4pfTsKdmFyIE9XdD1mdW5jdGlvbihuKXtyZXR1cm4gZVhbSVsxMF1dKHRoaXMsMTksNzA4NyxuKX07Ck9GQz1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLk1heFNhbXBsZXNQZXJXcml0ZSIsbil9OwpQUXI9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5NZWRpYUNvZGVjUmVzZXREZWxheU1zIixuKX07ClpGdD1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkRpc2FibGVMb3dQZXJmb3JtYW5jZVNvZnR3YXJlRGVjb2RlIixuPzE6MCl9OwpVTDI9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5FbmFibGVBdjFTdGFydHVwT3B0aW1pemF0aW9uIixuPzE6MCl9Owp5YzI9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5Vc2VEdWFsVGhyZWFkc0ZvclZpZGVvIixuPzE6MCl9OwpFdXQ9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5WaWRlb0J1ZmZlclNpemVDbGFtcE1iIixuKX07CmlGVT1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLjcyMHBWaWRlb0J1ZmZlclNpemVDbGFtcE1iIixuKX07CnVxdD1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkZvcmNlRGVjb2RlVG9UZXh0dXJlIixuPzE6MCl9OwpvdTI9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5Gb3JjZUNsZWFyU3VyZmFjZVZpZXciLG4/MTowKX07CmRMaT1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkVuYWJsZUxvd0xhdGVuY3kiLG4/MTowKX07CnpRUz1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLlNraXBGbHVzaE9uRGVjb2RlclRlYXJkb3duIixuPzE6MCl9OwpseTI9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5BbGxvd0F1ZGlvV3JpdGluZ09uUGF1c2UiLG4/MTowKX07ClQwVT1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkVuYWJsZVZpZGVvUmVuZGVyZXJWc3BBZGp1c3RtZW50IixuPzE6MCl9OwpqZ2g9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5Ta2lwVmlkZW9GcmFtZXNPdmVyNjBGcHMiLG4/MTowKX07CkNRQz1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkZsdXNoQXVkaW9UcmFja0R1cmluZ1NlZWsiLG4/MTowKX07CkIwaj1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkJ5cGFzc01vam9Gb3JNZWRpYSIsbj8xOjApfTsKRlgyPWZ1bmN0aW9uKG4pe3JldHVybiBCbCgiTWVkaWEuSWdub3JlTWVkaWFDb2RlY0NhbGxiYWNrc0R1cmluZ0ZsdXNoaW5nIixuPzE6MCl9OwpNRng9ZnVuY3Rpb24oKXt2YXIgbj13aW5kb3cuaDV2Y2M/LnNldHRpbmdzPy5nZXRQZXJzaXN0ZW50U2V0dGluZ0FzU3RyaW5nPy4oImNwdV91c2FnZV90cmFja2VyX2ludGVydmFscyIpO2lmKG4hPW51bGwpe249SlNPTi5wYXJzZShuKT8/W107dmFyIFc9bi5maWx0ZXIoRD0+RC50eXBlPT09InRvdGFsIikubWFwKEQ9PkQuc2Vjb25kcyk7CmZvcihsZXQgRCBvZiB3TjIpVy5pbmRleE9mKEQpPT09LTEmJm4ucHVzaCh7dHlwZToidG90YWwiLHNlY29uZHM6RH0pO3dpbmRvdy5oNXZjYz8uc2V0dGluZ3M/LnNldCgiY3B1X3VzYWdlX3RyYWNrZXJfaW50ZXJ2YWxzX2VuYWJsZWQiLDEpO3dpbmRvdy5oNXZjYz8uc2V0dGluZ3M/LnNldCgiY3B1X3VzYWdlX3RyYWNrZXJfaW50ZXJ2YWxzIixKU09OLnN0cmluZ2lmeShuKSl9fTsKUlFVPWZ1bmN0aW9uKCl7dmFyIG49d2luZG93Lkg1dmNjUGxhdGZvcm1TZXJ2aWNlLFc9IiI7aWYobiYmbi5oYXMoImRldi5jb2JhbHQuY29hdC5jbGllbnRsb2dpbmZvIikmJihuPW4ub3BlbigiZGV2LmNvYmFsdC5jb2F0LmNsaWVudGxvZ2luZm8iLCgpPT57fSkpKXtsZXQgRD1uLnNlbmQobmV3IEFycmF5QnVmZmVyKDApKTsKRCYmKFc9U3RyaW5nLmZyb21DaGFyQ29kZSguLi4obmV3IFVpbnQ4QXJyYXkoRCkpKSk7bi5jbG9zZSgpfXJldHVybiBXfTsKVkZTPWZ1bmN0aW9uKG4pe3ZhciBXPXdpbmRvdy5INXZjY1BsYXRmb3JtU2VydmljZTtpZihXKXt2YXIgRD1RZ2kuZmluZChiPT5XLmhhcyhiKSk7CkQmJihEPVcub3BlbihELCgpPT57fSkpJiYoRC5zZW5kKEl3KGBjcG46ICR7bn1gKS5idWZmZXIpLEQuY2xvc2UoKSl9fTsKZy53aj1mdW5jdGlvbihuLFcsRCxiKXtnLkZCKG4sRCxgJHtXLnRvRml4ZWQoMyl9OiR7Yi5qb2luKCI6Iil9YCl9OwpNUD1mdW5jdGlvbihuLFcpe3ZhciBEPW4ucHJvdmlkZXIuZ2V0Q3VycmVudFRpbWUoKTtnLndqKG4sVywiY210IixbRC50b0ZpeGVkKDMpXSk7dmFyIGI9RD1uLnByb3ZpZGVyLm90KCk7aWYoKCFuLmp8fEFKKG4ucHJvdmlkZXIudmlkZW9EYXRhKT8wOmIqMUUzPm4uai52TysxMDApJiZuLmope2I9bi5qLmlzQWQ7RD1EKjFFMy1uLmoudk87bi5lST1XKjFFMy1uLmoudFMtRC1uLmouT2E7dmFyIHY9KDAsZy5SKSgpLUQ7Vz1uLmVJO0Q9bi5wcm92aWRlci52aWRlb0RhdGE7dmFyIGs9RC5pc0FkKCk7aWYoYnx8ayl7az1gJHtiPyJhZCI6InZpZGVvIn1fdG9fJHtrPyJhZCI6InZpZGVvIn1gO3ZhciBoPXt9O0Qua1cmJihoLmN0dEF1dGhJbmZvPXt0b2tlbjpELmtXLHZpZGVvSWQ6RC52aWRlb0lkfSk7aC5zdGFydFRpbWU9di1XO2cuYmQoayxoKTtnLm5sKHt0YXJnZXRWaWRlb0lkOkQudmlkZW9JZCx0YXJnZXRDcG46RC5jbGllbnRQbGF5YmFja05vbmNlfSxrKTtnLmFMKCJwYnMiLHYsCmspfWVsc2Ugdj1uLnByb3ZpZGVyLkwuZUcoKSx2LlYhPT1ELmNsaWVudFBsYXliYWNrTm9uY2U/KHYuaj1ELmNsaWVudFBsYXliYWNrTm9uY2Usdi5KPVcpOkQuTlAoKXx8Zy5HcShuZXcgZy5ReCgiQ1NJIHRpbWluZyBsb2dnZWQgYmVmb3JlIGdsbGF0Iix7Y3BuOkQuY2xpZW50UGxheWJhY2tOb25jZX0pKTtuLlUoImdsbGF0Iix7bDpuLmVJLnRvRml4ZWQoKSxwcmV2X2FkOitifSk7ZGVsZXRlIG4uan19OwpnLkZCPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLkouZ2V0KFcpO2I/Yi5wdXNoKEQpOm4uSi5zZXQoVyxbRF0pfTsKUXU9ZnVuY3Rpb24obixXKXtuLmlzT2ZmbGluZT1XO2cud2oobixnLlJrKG4ucHJvdmlkZXIpLCJpc19vZmZsaW5lIixbbi5pc09mZmxpbmU/IjEiOiIwIl0pfTsKVnU9ZnVuY3Rpb24obixXLEQpe2lmKCFpc05hTihELlc3KSl7bGV0IGI9RC5XNztELko8YiYmKGI9RC5KKTtnLndqKG4sVywiYmgiLFtiLnRvRml4ZWQoMyldKX19OwpjbD1mdW5jdGlvbihuLFc9TmFOKXtXPVc+PTA/VzpnLlJrKG4ucHJvdmlkZXIpO3ZhciBEPW4ucHJvdmlkZXIuTC5ISygpLGI9RC5Fci0obi52Snx8MCk7Yj4wJiZnLndqKG4sVywiYndtIixbYiwoRC5vdy0obi5FNXx8MCkpLnRvRml4ZWQoMyldKTtpc05hTihuLnZKKSYmRC5FciYmbi5pc09mZmxpbmUmJlF1KG4sITEpO24udko9RC5FcjtuLkU1PUQub3c7aXNOYU4oRC5iYW5kd2lkdGhFc3RpbWF0ZSl8fGcud2oobixXLCJid2UiLFtELmJhbmR3aWR0aEVzdGltYXRlLnRvRml4ZWQoMCldKTtuLnByb3ZpZGVyLkIuV1goKSYmT2JqZWN0LmtleXMoRC5OKS5sZW5ndGghPT0wJiZuLlUoImJ3aW5mbyIsRC5OKTtpZihuLnByb3ZpZGVyLkIuV1goKXx8bi5wcm92aWRlci5CLlMoImh0bWw1X2xvZ19tZW1pbmZvIikpYj1oUXgoKSxPYmplY3QudmFsdWVzKGIpLnNvbWUodj0+diE9PXZvaWQgMCkmJm4uVSgibWVtaW5mbyIsYik7Cm4ucHJvdmlkZXIuQi5XWCgpJiYoYj1uLnlFPy5YKCkpJiZPYmplY3QudmFsdWVzKGIpLnNvbWUodj0+diE9bnVsbCkmJm4uVSgiY3B1aW5mbyIsYik7Cm4uVEMmJmcud2oobixXLCJiYXQiLFtuLlRDLmxldmVsLG4uVEMuY2hhcmdpbmc/IjEiOiIwIl0pO2I9bi5wcm92aWRlci5MLmdldFZpc2liaWxpdHlTdGF0ZSgpO24uVTUhPT1iJiYoZy53aihuLFcsInZpcyIsW2JdKSxuLlU1PWIpO01QKG4sVyk7KGI9Y2NaKG4ucHJvdmlkZXIpKSYmYiE9PW4uWSQmJihnLndqKG4sVywiY29ubiIsW2JdKSxuLlkkPWIpO1Z1KG4sVyxEKX07Cm5PTT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Zy5SayhuLnByb3ZpZGVyKTtheVoobixiLFcsMCxEKTtjbChuLGIpO2FrKG4pfTsKbkM9ZnVuY3Rpb24obixXKXtnLkZCKG4sImNhdCIsVyl9OwpXVGg9ZnVuY3Rpb24obixXKXtXPXtjcG46bi5wcm92aWRlci52aWRlb0RhdGEuY2xpZW50UGxheWJhY2tOb25jZSxzZXF1ZW5jZU51bWJlcjpXLHNlcmlhbGl6ZWRXYXRjaEVuZHBvaW50TG9nZ2luZ0NvbnRleHQ6bi5wcm92aWRlci52aWRlb0RhdGEubTB9O24uc2VyaWFsaXplZEhvdXNlQnJhbmRQbGF5ZXJTZXJ2aWNlTG9nZ2luZ0NvbnRleHQmJihXLnNlcmlhbGl6ZWRIb3VzZUJyYW5kUGxheWVyU2VydmljZUxvZ2dpbmdDb250ZXh0PWxwKG4uc2VyaWFsaXplZEhvdXNlQnJhbmRQbGF5ZXJTZXJ2aWNlTG9nZ2luZ0NvbnRleHQpfHx2b2lkIDApO24ucHJvdmlkZXIudmlkZW9EYXRhLnBsYXllclJlc3BvbnNlQ3BuJiYoVy5wbGF5ZXJSZXNwb25zZUNwbj1uLnByb3ZpZGVyLnZpZGVvRGF0YS5wbGF5ZXJSZXNwb25zZUNwbik7V3IubGVuZ3RoJiYoVy5kZWNvZGVySW5mbz1Xcik7bi5yZW1vdGVDb250cm9sTW9kZSYmKFcucmVtb3RlQ29udHJvbE1vZGU9bi5yZW1vdGVDb250cm9sTW9kZSk7Cm4ucmVtb3RlQ29ubmVjdGVkRGV2aWNlcy5sZW5ndGgmJihXLnJlbW90ZUNvbm5lY3RlZERldmljZXM9bi5yZW1vdGVDb25uZWN0ZWREZXZpY2VzKTtpZihuLlBYPy5sZW5ndGgpe1cuc2VyaWFsaXplZFFvZUNvbnRleHREYXRhPVtdO2Zvcih2YXIgRCBvZiBuLlBYKXtsZXQgYj1nLmQxKEQpO2ImJlcuc2VyaWFsaXplZFFvZUNvbnRleHREYXRhLnB1c2goYil9fSFuLmpXJiZuLnByb3ZpZGVyLnZpZGVvRGF0YS5zZXJpYWxpemVkT25lVGltZVFvZUNvbnRleHREYXRhJiYoVy5zZXJpYWxpemVkT25lVGltZVFvZUNvbnRleHREYXRhPVtdLEQ9Zy5kMShuLnByb3ZpZGVyLnZpZGVvRGF0YS5zZXJpYWxpemVkT25lVGltZVFvZUNvbnRleHREYXRhKSkmJihXLnNlcmlhbGl6ZWRPbmVUaW1lUW9lQ29udGV4dERhdGEucHVzaChEKSxuLmpXPSEwKTtuLlkuc2l6ZSYmKFcuZGFpQ3VlUG9pbnRFdmVudHM9QXJyYXkuZnJvbShuLlkudmFsdWVzKCkpKTtuLlkuY2xlYXIoKTtyZXR1cm4gV307CkRCaT1mdW5jdGlvbihuKXt2YXIgVz17Li4ubn07bi5zZXJpYWxpemVkUW9lQ29udGV4dERhdGEmJihXLnNlcmlhbGl6ZWRRb2VDb250ZXh0RGF0YT1uLnNlcmlhbGl6ZWRRb2VDb250ZXh0RGF0YS5tYXAoRD0+RCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXk/Zy5FQShEKTpEKSk7Cm4uc2VyaWFsaXplZE9uZVRpbWVRb2VDb250ZXh0RGF0YSYmKFcuc2VyaWFsaXplZE9uZVRpbWVRb2VDb250ZXh0RGF0YT1uLnNlcmlhbGl6ZWRPbmVUaW1lUW9lQ29udGV4dERhdGEubWFwKEQ9PkQgaW5zdGFuY2VvZiBVaW50OEFycmF5P2cuRUEoRCk6RCkpOwpuLnNlcmlhbGl6ZWRIb3VzZUJyYW5kUGxheWVyU2VydmljZUxvZ2dpbmdDb250ZXh0JiYobj1uLnNlcmlhbGl6ZWRIb3VzZUJyYW5kUGxheWVyU2VydmljZUxvZ2dpbmdDb250ZXh0LG4gaW5zdGFuY2VvZiBVaW50OEFycmF5JiYoVy5zZXJpYWxpemVkSG91c2VCcmFuZFBsYXllclNlcnZpY2VMb2dnaW5nQ29udGV4dD1nLkVBKG4pKSk7cmV0dXJuIFd9OwpiUFM9ZnVuY3Rpb24obixXLEQpe2cuSEUobi5wcm92aWRlci5CLG4ucHJvdmlkZXIudmlkZW9EYXRhLlYoKSkudGhlbihiPT57dmFyIHY9ITE7Vy5pbmNsdWRlcygiJmR0PSIpfHxXLmluY2x1ZGVzKCImY290bj0iKT92PSEwOm4ucHJvdmlkZXIuQi5TKCJxb2Vfd2l0aF9uZXR3b3JrbGVzcyIpJiYodj0hMCk7dmFyIGs9bi5wcm92aWRlci5CLlMoInFvZV9zZW5kX2FuZF93cml0ZSIpLGg9bi5wcm92aWRlci5CO2I9alIoVyxoLG4ucHJvdmlkZXIuQi5wYWdlSWQsbi5wcm92aWRlci5CLnNlbmRWaXNpdG9ySWRIZWFkZXI/bi5wcm92aWRlci52aWRlb0RhdGEudmlzaXRvckRhdGE6dm9pZCAwLGIpO2guUygiaHRtbDVfc2ltcGxpZnlfcGluZ3MiKSYmKGI9Ynx8e30pO2I/KGIubWV0aG9kPSJQT1NUIixiLnBvc3RCb2R5PUQsQ0QoVyxiLHt0b2tlbjpuLnByb3ZpZGVyLnZpZGVvRGF0YS5rVyx5bzpuLnByb3ZpZGVyLnZpZGVvRGF0YS5RdixtZHhFbnZpcm9ubWVudDpuLnByb3ZpZGVyLnZpZGVvRGF0YS5tZHhFbnZpcm9ubWVudH0sCmgsdm9pZCAwLHYsayYmbi5TJCkpOnY/KHY9bi5wcm92aWRlci5CLlMoIm5ldHdvcmtsZXNzX2FqYXgiKSxoPXttZXRob2Q6IlBPU1QiLHBvc3RCb2R5OkR9LGsmJm4uUyQ/Zy5IVSgpLnNlbmRBbmRXcml0ZShXLGgpOnY/Zy5lZChXLHttZXRob2Q6IlBPU1QiLHBvc3RCb2R5OkR9KTpnLkhVKCkuc2VuZFRoZW5Xcml0ZShXLGgpKTpndncoVyxEKX0pfTsKYWs9ZnVuY3Rpb24obil7aWYoIW4ucHJvdmlkZXIuQi5TKCJodG1sNV9xb2Vfbm9fbGVuX2NoZWNrIikpe3ZhciBXPTA7Zm9yKGxldCBbRCxiXW9mIG4uSi5lbnRyaWVzKCkpVys9RC5sZW5ndGgrTnVtYmVyKGcudV8oYiwodixrKT0+ditrLmxlbmd0aCwwKSk7Clc+OTZFMyYmKG5ldyBnLmZfKG4ucmVwb3J0U3RhdHMsMCxuKSkuc3RhcnQoKX19Owp2TzI9ZnVuY3Rpb24obil7bi5wcm92aWRlci52aWRlb0RhdGEuWVomJm5DKG4sInByZWZldGNoIik7bi5wcm92aWRlci52aWRlb0RhdGEuUyQmJm4uVSgicmVsb2FkIix7cjpuLnByb3ZpZGVyLnZpZGVvRGF0YS5yZWxvYWRSZWFzb24sY3Q6bi5wcm92aWRlci52aWRlb0RhdGEuUyR9KTtuLnByb3ZpZGVyLnZpZGVvRGF0YS5JUiYmbkMobiwibW9uaXRvciIpO24ucHJvdmlkZXIudmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrJiZuQyhuLCJsaXZlIik7TnMmJm5DKG4sInN0cmVhbWluZyIpO24ucHJvdmlkZXIudmlkZW9EYXRhLmk1JiZuLlUoImN0cmwiLHttb2RlOm4ucHJvdmlkZXIudmlkZW9EYXRhLmk1fSwhMCk7aWYobi5wcm92aWRlci52aWRlb0RhdGEuVUspe3ZhciBXPW4ucHJvdmlkZXIudmlkZW9EYXRhLlVLLnJlcGxhY2UoLywvZywiXyIpO24uVSgieXRwIix7dHlwZTpXfSwhMCl9bi5wcm92aWRlci52aWRlb0RhdGEuVDQmJihXPW4ucHJvdmlkZXIudmlkZW9EYXRhLlQ0LnJlcGxhY2UoLywvZywKIi4iKSxuLlUoInl0cmV4cCIse2lkczpXfSwhMCkpO24ucHJvdmlkZXIuQi5XWCgpJiZuLlUoIm5vdyIse3d0OigwLGcuUikoKX0pO1c9bi5wcm92aWRlci52aWRlb0RhdGE7dmFyIEQ9bi5wcm92aWRlci5CLlMoImVuYWJsZV93aGl0ZV9ub2lzZSIpfHxuLnByb3ZpZGVyLkIuUygiZW5hYmxlX3dlYmdsX25vb3AiKSxiPWcua3AoVyl8fGcuSFQoVyl8fGcuZkEoVyl8fGcuSkQoVyk7KER8fGIpJiYoRD0oMCxnLkRWKSgpKSYmbi5KLnNldCgiZ3B1IixbRF0pO09TKG4ucHJvdmlkZXIudmlkZW9EYXRhKSYmZy53aihuLGcuUmsobi5wcm92aWRlciksImR0IixbIjEiXSk7Vy5jb3RuJiYhT1MoVykmJlF1KG4sITApO24ucHJvdmlkZXIuQi5XWCgpJiYoVz0oMCxnLlIpKCktbi5wcm92aWRlci5CLkN1LG4uVSgicGxheWVyYWdlIix7c2VjczooMS42KipNYXRoLnJvdW5kKE1hdGgubG9nKFcvMUUzKS9NYXRoLmxvZygxLjYpKSkudG9GaXhlZCgpfSkpO24uVj0hMDtuLks9VzAoKCk9PntuLnJlcG9ydFN0YXRzKCl9LAoxRTQpfTsKYXlaPWZ1bmN0aW9uKG4sVyxELGIsdil7dmFyIGs9bi5wcm92aWRlci5CLk4uY2JydmVyO24ucHJvdmlkZXIuQi5OLmNicj09PSJDaHJvbWUiJiYvXjk2Wy5dLy50ZXN0KGspJiZEPT09Im5ldC5iYWRzdGF0dXMiJiYvcmNcLjUwMC8udGVzdCh2KSYmYm0obiwzKTsvYjI0ODE4MDI3OC8udGVzdCh2KSYmYm0obiw0KTtrPW4ucHJvdmlkZXIuZ2V0Q3VycmVudFRpbWUoKTtiPWI9PT0xPyJmYXRhbCI6IiI7RD1bRCxiLGsudG9GaXhlZCgzKV07YiYmKHYrPWA7YTZzLiR7TGMoKX1gKTt2JiZELnB1c2goa29yKHYpKTtnLndqKG4sVywiZXJyb3IiLEQpO24uVj0hMH07CmJtPWZ1bmN0aW9uKG4sVyl7bi5ZWnx8KGcuRkIobiwiZmNueiIsYCR7V31gKSxuLllaPSEwKX07CmhEMT1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKEQhPT1uLk4pe24uZSR8fFc8bi5XfHwobi5OPT09IlBMIj9uLnBsYXlUaW1lU2Vjcys9Vy1uLlc6bi5OPT09IkIiJiZuLmlzQnVmZmVyaW5nJiYobi5pc0J1ZmZlcmluZz0hMSxuLnJlYnVmZmVyVGltZVNlY3MrPVctbi5WUSwhbi5SYSYmbi5yZWJ1ZmZlclRpbWVTZWNzPj0xMCYmbi5wbGF5VGltZVNlY3M8PTE4MCYmKG4uSi5zZXQoInFvZWFsZXJ0IixbIjEiXSksbi5SYT0hMCkpLEQhPT0iQiJ8fG4uTiE9PSJQTCImJm4uTiE9PSJQQiJ8fChuLmlzQnVmZmVyaW5nPSEwKSxuLlc9Vyk7bi5OPT09IlBMIiYmKEQ9PT0iQiJ8fEQ9PT0iUyIpfHxuLnByb3ZpZGVyLkIuV1goKT9jbChuLFcpOihuLmZCfHxEIT09IlBMInx8KG4uZkI9ITAsVnUobixXLG4ucHJvdmlkZXIuTC5ISygpKSksTVAobixXKSk7RD09PSJQTCImJmcuSmEobi5NZCk7dmFyIGs9W0RdO0Q9PT0iUyImJmImJmsucHVzaChgc3MuJHtifWApO0Q9PT0iUEEiJiZ2JiZrLnB1c2goYHNyLiR7dn1gKTsKZy53aihuLFcsInZwcyIsayk7bi5OPUQ7bi5WUT1XO24uVz1XO24uVj0hMH19Owp4Qmg9ZnVuY3Rpb24obil7aWYoIShuLlg+PTApKWlmKG4ucHJvdmlkZXIuQi5OZHx8bi5wcm92aWRlci5MLmdldFZpc2liaWxpdHlTdGF0ZSgpIT09Myl7dmFyIFc9bi5wcm92aWRlci5MLnpzKCExKSxEPW4ucHJvdmlkZXIuTC56cyghMCk7bi5VKCJ1c2VyX2ludGVudF9iaCIse2JoOlcudG9GaXhlZCgzKSx0aDpELnRvRml4ZWQoMyl9KTtuLlg9Zy5SayhuLnByb3ZpZGVyKX1lbHNlIG4uQ3U9ITB9OwpMVGI9ZnVuY3Rpb24obixXKXtpZihnLm1NKG4ucHJvdmlkZXIudmlkZW9EYXRhKSl7bj00O3ZhciBEPTF9ZWxzZSBuPVcuc291cmNlPz8wO249YHNtcy4ke259YDtEIT09dm9pZCAwJiYobis9YF8ke0R9YCk7cmV0dXJuIG59Owp2YXIgQTExPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIEo0W0lbMTBdXSh0aGlzLDEsNDM2MixuLFcpfTsKdnI9ZnVuY3Rpb24obixXLEQsYix2LGssaCl7dmFyIHg9Zy5SayhuLnByb3ZpZGVyKTtEIT09MSYmRCE9PTMmJkQhPT01fHxnLndqKG4seCwidnBzIixbbi5OXSk7Zy5GQihuLCJ4dnQiLGB0LiR7eC50b0ZpeGVkKDMpfTttLiR7aC50b0ZpeGVkKDMpfTtnLiR7V307dHQuJHtEfTtucC4ke2J9O2MuJHt2fTtkLiR7a31gKX07Cmtvcj1mdW5jdGlvbihuKXsvW15hLXpBLVowLTk7LiFfLV0vLnRlc3QobikmJihuPW4ucmVwbGFjZSgvWytdL2csIi0iKS5yZXBsYWNlKC9bXmEtekEtWjAtOTsuIV8tXS9nLCJfIikpO3JldHVybiBufTsKT2I9ZnVuY3Rpb24obixXKXtpZihuLlpEJiYhbi5PbilyZXR1cm4gMztpZihuLmlzU3VzcGVuZGVkKXJldHVybiAxO2lmKG4ubWVkaWFTb3VyY2U/LmJkKCkpcmV0dXJuIDQ7dmFyIEQ9KFcuUEouaW5mby5hdWRpbz9uLnBvbGljeS52SjpuLnBvbGljeS5lJCkvKFcuTnMqbi5wb2xpY3kud3kpO2lmKG4ucG9saWN5LmNIPjAmJm4ubWVkaWFTb3VyY2UmJm42KG4ubWVkaWFTb3VyY2UpJiYoVz1XLlBKLmluZm8udmlkZW8/bi5tZWRpYVNvdXJjZS5KOm4ubWVkaWFTb3VyY2UuTikmJiFXLnl1KCkpe1c9Vy5aRigpO2xldCBiPUNNKFcsbi5nZXRDdXJyZW50VGltZSgpKTtiPj0wJiYoVz1uLmdldEN1cnJlbnRUaW1lKCktVy5zdGFydChiKSxEKz1NYXRoLm1heCgwLE1hdGgubWluKFctbi5wb2xpY3kuY0gsbi5wb2xpY3kuQmQpKSl9bi5wb2xpY3kuTz4wJiYoRD1NYXRoLm1pbihELG4ucG9saWN5Lk8pKTtyZXR1cm4gRH07CmRWPWZ1bmN0aW9uKG4sVyxEKXtlRGIobixELnFkfHwidW5rbm93biIpO24uTC5zZWVrVG8oVyxEKX07CmcuZEM9ZnVuY3Rpb24obixXLEQsYix2KXtuLkwuZ2V0VmlkZW9EYXRhKCkuREYoKT92JiZuLnhXLlRDK3YvMUUzPkQmJihuLlUoInNkYWkiLHtzZWc6YixyYnQ6RC50b0ZpeGVkKDMpLGVuZDpuLnhXLlRDLnRvRml4ZWQoMyksc2Q6di50b0ZpeGVkKDMpfSksbi5YJCghMSwicm9sbGJhY2siKSk6bi5wb2xpY3kuVTEmJm4uWCQoITEsInJvbGxiYWNrIik7aWYobi5LdS5pc01hbmlmZXN0bGVzcyl7dj1VNChuLmF1ZGlvVHJhY2ssYixELFcpO3ZhciBrPVU0KG4udmlkZW9UcmFjayxiLEQsVyk7bi5wb2xpY3kuczV8fChrJiZUeChuLkt1LGIsITApLHYmJlR4KG4uS3UsYiwhMSkpO2smJm4udmlkZW9UcmFjay5rSSgpO3YmJm4uYXVkaW9UcmFjay5rSSgpO24uVSgic2RhaSIse3JvbGxiazJfc2VnOmIscmJ0OkQudG9GaXhlZCgzKSxsdDpXLnRvRml4ZWQoMyksYTp2LHY6a30pOyh2fHxrKSYmbi5wb2xpY3kuVTEmJmcuQWcobil9fTsKWUM9ZnVuY3Rpb24obixXKXtuLmhhbmRsZUVycm9yKCJmbXQudW5wYXJzZWFibGUiLFcsMSl9OwpnLkFnPWZ1bmN0aW9uKG4pe2cuSmEobi5uTil9OwpTek09ZnVuY3Rpb24obil7dmFyIFc9bi5qbCgpLmZpbHRlcihEPT5ELm5hbWVzcGFjZT09PSJhZCIpOwpmb3IobGV0IEQgb2YgVylpZihELnN0YXJ0LzFFMz5uLmdldEN1cnJlbnRUaW1lKCkpcmV0dXJuIEQuc3RhcnQvMUUzO3JldHVybiBJbmZpbml0eX07CmM2PWZ1bmN0aW9uKG4pe3ZhciBXPSgwLGcuUikoKTtuLnFHPVd9OwpIJGg9ZnVuY3Rpb24obixXKXtpZih4TihXLkF3W1cuQXcubGVuZ3RoLTFdKSl7YTp7dmFyIEQ9bi5jVjtXPVcuQXdbMF0uUEo7aWYoVy5pbmZvLnZpZGVvKXtpZihELlchPT1XKXtELlc9VztEPVMkaChEKTticmVhayBhfX1lbHNlIEQuSEo9RC5WIT09VyxELlY9VztEPW51bGx9Z09DKG4sRCl9fTsKUW89ZnVuY3Rpb24obil7bi5wb2xpY3kuSEQmJm4ucG9saWN5LmU0JiZNYXRoLm1pbihnVEMobi52aWRlb1RyYWNrKSxnVEMobi5hdWRpb1RyYWNrKSkqMUUzPm4ucG9saWN5Lm0kP2cuSmEobi5aSyk6bi5oVCgpfTsKQjY9ZnVuY3Rpb24obixXLEQsYj0hMSl7YiYmIVcuVEMmJihWVCgpfHwoYj1XLlFFKSYmIWIudFooRC5pbmZvKSYmbi5MLkJvKCksVy5UQz0hMCk7Vy5QSiE9PUQmJihXLlBKPUQpfTsKd3U9ZnVuY3Rpb24obil7cmV0dXJuIG4uSXc8bi5peH07ClIkPWZ1bmN0aW9uKG4pe24uemkoKTtuLlhhLmlzU2Vla2luZygpO24uUXUmJkRMYihuLlF1LG4udmlkZW9UcmFjay5QSik7Zy5BZyhuKTtyZXR1cm4gRWIobi5YYSl9Owpkaj1mdW5jdGlvbihuKXtyZXR1cm4gbi5MLmdldFZpZGVvRGF0YSgpLnpXKCl8fG4ucG9saWN5Lm1EfTsKelMyPWZ1bmN0aW9uKG4sVyl7cmV0dXJuKE9iKG4sVykrbi5wb2xpY3kualIpKlcuTnN9OwpFUlM9ZnVuY3Rpb24obil7aWYobi5MLmdldFZpZGVvRGF0YSgpLmlzTGl2ZVBsYXliYWNrKXJldHVybiExO3ZhciBXPW4uTC5oNSgpO2lmKCFXKXJldHVybiExO1c9Vy5nZXREdXJhdGlvbigpO2lmKG4ubWVkaWFTb3VyY2UmJm4ubWVkaWFTb3VyY2UuTiYmbi5tZWRpYVNvdXJjZS5KKXt2YXIgRD1uLmdldEN1cnJlbnRUaW1lKCksYj1uLm1lZGlhU291cmNlLk4uWkYoKTtuPW4ubWVkaWFTb3VyY2UuSi5aRigpO2I9Yj9GWihiLEQpOkQ7RD1uP0ZaKG4sRCk6RDtEPU1hdGgubWluKGIsRCk7Vz1pc05hTihEKT8hMTpEPj1XLS4wMX1lbHNlIFc9ITE7cmV0dXJuIFd9OwpYemg9ZnVuY3Rpb24obixXLEQpe2lmKCEobi52aWRlb1RyYWNrLlBKLk4oKSYmbi5hdWRpb1RyYWNrLlBKLk4oKSYmbi5tZWRpYVNvdXJjZSYmbi5tZWRpYVNvdXJjZS5KJiZuLm1lZGlhU291cmNlLk4pKXJldHVybiExO2lmKEQmJm4uS3UuaXNNYW5pZmVzdGxlc3MmJihuLnZpZGVvVHJhY2suWD09PS0xfHxuLmF1ZGlvVHJhY2suWD09PS0xKSlyZXR1cm4hMDt2YXIgYj1LdihuLnZpZGVvVHJhY2ssVyxEKTtpZihpc05hTihiKSlyZXR1cm4hMTtuPUt2KG4uYXVkaW9UcmFjayxuLnBvbGljeS5FNT9XOmIsRCk7cmV0dXJuIGlzTmFOKG4pPyExOiEwfTsKcUoyPWZ1bmN0aW9uKG4pe24uUWo/Llh0Py5pdGFnRGVueWxpc3QmJm4uV0Yobi5Raj8uWHQuaXRhZ0RlbnlsaXN0KTtuLlFqPy5wbGF5YmFja1N0YXJ0UG9saWN5JiZsUyhuLnBvbGljeSxuLlFqPy5wbGF5YmFja1N0YXJ0UG9saWN5LDMsbi5Raj8uY0EoKSk7aWYobi5wb2xpY3kuY0wpe3ZhciBXPW4uRTEoKTsoVz1XP24uUWo/LkR3LmdldChXKTp2b2lkIDApJiZuLnhXLnN5KFcsLTEpfW4uS3UuT3x8bi5wb2xpY3kuV2l8fChXPW4uUWo/LlFXLFc/LndmJiZXPy52NyYmbi5LdS56VyYmQzYobi5LdSxXLndmLFcudjcpKTtpZihuLlFqPy5NUyl7Vz1uLlFqLk1TLmdldChuLkUxKCl8fCIiKTtpZighVylyZXR1cm47aWYobi5LdSYmVy5mb3JtYXRJZCl7bGV0IEQ9bi5LdS5KLmdldChNayhXLmZvcm1hdElkKSk7RCYmKEQuaW5mby5kZWJ1Z0luZm89Vy5kZWJ1Z0luZm8pfX1uLnBvbGljeS5EJiYobi5Raj8uckIoKS5mb3JFYWNoKEQ9PntuLmk4KEQpfSksbi5Raj8uRm8oKSl9Owp0OWg9ZnVuY3Rpb24obil7aWYoIW4uS3UuelcpcmV0dXJuITA7dmFyIFc9bi5MLmdldFZpZGVvRGF0YSgpO2lmKG4uTC5PUCgpKXJldHVybiBuLlUoIm9tYnBhIix7fSksITE7aWYoISFuLlFqPy5RVz8uWjMhPT1uLkt1LlhnKXJldHVybiBuLlUoIm9tYnBsbW0iLHt9KSwhMTt2YXIgRD1XLlRDfHxXLmxpdmVVdGNTdGFydFNlY29uZHN8fFcuVXI7aWYobi5LdS5YZyYmRClyZXR1cm4gbi5VKCJvbWJwbHN0Iix7fSksITE7aWYobi5LdS5PfHxuLnBvbGljeS5XaSlyZXR1cm4gbi5VKCJvbWJhYiIse30pLCExO0Q9RGF0ZS5ub3coKTtpZighVy5saXZlUHJlbG9hZCYmRnYobi5LdSkmJiFpc05hTihuLkNIKSYmRC1uLkNIPm4ucG9saWN5LkZVKjFFMylyZXR1cm4gbi5VKCJvbWJ0dGwiLHt9KSwhMTtpZih4cChXKSE9PTAmJiFuLnBvbGljeS5OfHxXLlMoImh0bWw1X2Rpc2FibGVfb25lc2llX21lZGlhX2Zvcl9tb3NhaWMiKSYmVy5aaCgpfHxXLlMoImh0bWw1X2Rpc2FibGVfb25lc2llX21lZGlhX2Zvcl9saWZhX2VsaWdpYmxlIikmJgpweihXKSlyZXR1cm4hMTtpZihuLkwuRygpLlp0KCkuTi5RUShHb00pJiYoVz1uLlFqPy5waygpPz8wLFc+PTAmJm4uS3UuaXNXaW5kb3dlZExpdmUmJihXPG4uS3UuSlUqMUUzfHxXPm4uS3Uub1IqMUUzKSkpcmV0dXJuIG4uVSgib21id25kIix7c3Q6VyxtaW46bi5LdS5KVSoxRTMsbWF4Om4uS3Uub1IqMUUzfSksITE7aWYobi5LdS5JdCYmbi5LdS5pc1dpbmRvd2VkTGl2ZSlpZihuLkwuRygpLlMoImh0bWw1X3VzZV9vbmVzaWVfd2luZG93ZWRfbGl2ZV9tZWRpYSIpKW4uVSgib21hbWluc3EiLHt9KTtlbHNlIHJldHVybiBuLlUoIm9tYm1pbnNxIix7fSksITE7cmV0dXJuITB9OwprYz1mdW5jdGlvbihuLFcpe3ZhciBEPWN3KFcuUEosbi5LdS56VyksYj1uLmhtPy5mMyhEKXx8W107aWYoYi5sZW5ndGg9PT0wKXJldHVybiBuLlUoIm9tYm1zaSIse30pLCExO2I9bmV3IHdrKGIpO2lmKCghbi5wb2xpY3kudHd8fGlzRmluaXRlKG4uZ2V0Q3VycmVudFRpbWUoKSl8fG4uTC5lSigpKSYmIWIua2Yobi5nZXRDdXJyZW50VGltZSgpKSYmIW4uTC5nZXRWaWRlb0RhdGEoKS5saXZlUHJlbG9hZClyZXR1cm4gbi5VKCJvc3RtZiIse2N0Om4uZ2V0Q3VycmVudFRpbWUoKSxhOlcuUEouaW5mby5lUygpfSksITE7bi5obT8uRVMoRCk7cmV0dXJuITB9OwokQmk9ZnVuY3Rpb24obixXKXt2YXIgRD1XLlBKLGI9bi5LdS56VztpZih0OWgobikpaWYobi5obSYmbi5obS5nRihjdyhELGIpKSl7aWYoYj1jdyhELGIpLGtjKG4sVykpe3ZhciB2PW5ldyB3ayhuLmhtLmYzKGIpKSxrPWg9Pnt0cnl7aC50bigpPyhuLmhhbmRsZUVycm9yKGguVkcoKSxoLnkwKCkpLEU0KFcsaCkseXMoaC5pbmZvKSYmQ3Iobi5OeSxXLEQsITApLG4uaFQoKSk6RjAobi5OeSxoKSYmKG4uSkM/LlMkKGguaW5mbyxuLnNVKSxuLmhUKCkpfWNhdGNoKHgpe2g9QiQoeCksbi5oYW5kbGVFcnJvcihoLmVycm9yQ29kZSxoLmRldGFpbHMsaC5zZXZlcml0eSksbi56aSgpfX07CkQuY0o9ITA7VXYodikmJihPNChXLG5ldyBTbihuLnBvbGljeSxiLHYsbi5obSxrKSksaXUobi50aW1pbmcpKX19ZWxzZSBuLlUoIm9tYmZtdCIse30pfTsKcjdoPWZ1bmN0aW9uKG4pe24ucG9saWN5LlgmJm4uUWomJihuLlFqLkd3LmZvckVhY2goVz0+e24uSm0oVywtMSl9KSxuLlFqLkd3PVtdKX07CmgyPWZ1bmN0aW9uKG4sVyl7Vz1XfHxuLnZpZGVvVHJhY2smJm4udmlkZW9UcmFjay5OJiZuLnZpZGVvVHJhY2suTi5zZWdtZW50U3RhcnRUaW1lfHxuLmdldEN1cnJlbnRUaW1lKCk7dmFyIEQ9QjYsYj1uLnZpZGVvVHJhY2ssdj1uLmNWO1c9di5uZXh0VmlkZW8mJnYubmV4dFZpZGVvLmluZGV4LlIzKFcpfHwwO3YuY0ohPT1XJiYodi5iZD17fSx2LmNKPVcsUnEodix2Lk4pKTtXPSF2Lk4uaXNMb2NrZWQoKSYmdi5ZPi0xJiYoMCxnLlIpKCktdi5ZPHYucG9saWN5LkFrKjFFMzt2YXIgaz12Lm5leHRWaWRlbyYmTXEodix2Lm5leHRWaWRlby5pbmZvKSozPE5XKHYuSWcpO2lmKCFXfHxrKVZCKHYpLGNwKHYpLHYuTz12Lk98fHYubmV4dFZpZGVvIT09di5XO3YubmV4dFZpZGVvJiYhdi5uZXh0VmlkZW8uaW5kZXguaXNMb2FkZWQoKSYmKHYuY0o9LTEpO0QobixiLHYubmV4dFZpZGVvKTtCNihuLG4uYXVkaW9UcmFjayxuLmNWLkopfTsKZURiPWZ1bmN0aW9uKG4sVyl7aWYoIWlzTmFOKG4uajApKXtsZXQgRD1EYXRlLm5vdygpLW4uajA7RDwxRTQmJm4uVSgiYmZhc3d0Y2giLHtlcDpELHNrOlchPT12b2lkIDA/IjEiOiIwIixzcjpXfHwiIn0pfX07ClhiPWZ1bmN0aW9uKG4pe2E6e2lmKG4uSGcoKSYmbWQobi52aWRlb1RyYWNrKSYmbWQobi5hdWRpb1RyYWNrKSYmbi5MLkhvKCkmJiFuLkwuVjAoKSYmIW4ubWVkaWFTb3VyY2U/Lk4/LmlRKCkmJiFuLm1lZGlhU291cmNlPy5KPy5pUSgpJiYhbi5BYil7dmFyIFc9bi5MLlhTPy5YKCk7aWYoIVcpYnJlYWsgYTtuLmF1ZGlvVHJhY2suSlgoKTtuLnZpZGVvVHJhY2suSlgoKTtuLkFiPVd9aWYoVz1uLkhnKCkmJm4uTC5IbygpJiYhbi5MLlYwKCkpaWYobi5BYiYmbi5BYi5KJiZuLkFiLk4mJm4udmlkZW9UcmFjay5EZygpJiZuLmF1ZGlvVHJhY2suRGcoKSl7dmFyIEQ9bi52aWRlb1RyYWNrLlcuYjcoKTtXPW4uYXVkaW9UcmFjay5XLmI3KCk7dmFyIGI9bi5BYj8uSi5aRigpLHY9bi5BYj8uTi5aRigpO0QmJlc/KEQ9QlIoYixrTihELmluZm8pLS4xKSxXPUJSKHYsa04oVy5pbmZvKS0uMSksVz1EJiZXKTpXPSExfWVsc2UgVz0hMTtXJiZuLkwuWFM/LlcoKX1pZihuLm1lZGlhU291cmNlKWlmKFc9Cm4uQWJ8fG4ubWVkaWFTb3VyY2Usdj1XLk4sRD1XLkosczdyKG4sbi5hdWRpb1RyYWNrKSxzN3IobixuLnZpZGVvVHJhY2spLGI9TjNDKG4pKXtpZihuLnBvbGljeS5lNCl7aWYoIXYuRDkoKSYmKFc9aVkobi5hdWRpb1RyYWNrKSkpe2lmKCF4YyhuLG4uYXVkaW9UcmFjayx2LFcuaW5mbykpcmV0dXJuO0xDKG4sbi5hdWRpb1RyYWNrLHYsVyl9aWYoIUQuRDkoKSYmKFc9aVkobi52aWRlb1RyYWNrKSkpe2lmKCF4YyhuLG4udmlkZW9UcmFjayxELFcuaW5mbykpcmV0dXJuO0xDKG4sbi52aWRlb1RyYWNrLEQsVyl9fW4ubXh8fChuLm14PSgwLGcuUikoKSxuLnBvbGljeS5XJiZuLlUoImFwZHBzIix7cjpifSkpfWVsc2V7aWYobi5teCl7Yj1uLm14O3ZhciBrPSgwLGcuUikoKS1iO2xldCBoPW4uYXVkaW9UcmFjay56cyghMCkqMUUzLHg9bi52aWRlb1RyYWNrLnpzKCEwKSoxRTM7bi5wb2xpY3kuVyYmKG4uVSgiYXBkcGUiLHtkdXI6ay50b0ZpeGVkKCksYWJ1ZjpoLnRvRml4ZWQoKSx2YnVmOngudG9GaXhlZCgpfSksCmR1KG4ucG9saWN5KSYmKGs9Tlcobi5JZyksbi5VKCJzZHBzIix7Y3Q6YixhaDpoLnRvRml4ZWQoKSx2aDp4LnRvRml4ZWQoKSxtcjpwdihuLklnLG4uT24sayksYnc6ay50b0ZpeGVkKCksanM6bi5pc1NlZWtpbmcoKSxyZTorbi5Pbixwczoobi5wb2xpY3kuTTV8fCIiKS50b1N0cmluZygpLHJuOihuLnBvbGljeS5EQ3x8IiIpLnRvU3RyaW5nKCl9KSkpO24ubXg9MH1uLlF1JiYoYj1uLlF1LmhUKG4uYXVkaW9UcmFjayxnLnd5KG4ubWVkaWFTb3VyY2UuSi5aRigpKSkpJiZuLkwuc2Vla1RvKGIse0E5OiEwLHFkOiJwb2xsU3Vic2VnbWVudFJlYWRhaGVhZCIscWE6ITB9KTtiPSExO3B6aChuLG4udmlkZW9UcmFjayxEKSYmKGI9ITAsRD1uLnRpbWluZyxELld8fChELlc9KDAsZy5SKSgpLGcuRUcoInZkYSIsRC5XLEQuelIpLEQuSiYmKGcuRHkoKSxiUSg0KSkpLEQ9bi50aW1pbmcsRC5WUXx8KEQuVlE9KDAsZy5SKSgpLGcuRUcoInZyYl9mIixELlZRLEQuelIpKSk7VyYmIVcuUEEoKSYmCihwemgobixuLmF1ZGlvVHJhY2ssdikmJihiPSEwLHY9bi50aW1pbmcsdi5KfHwodi5KPSgwLGcuUikoKSxnLkVHKCJhZGEiLHYuSix2LnpSKSx2LlcmJihnLkR5KCksYlEoNCkpKSx2PW4udGltaW5nLHYuWXx8KHYuWT0oMCxnLlIpKCksZy5FRygiYXJiX2YiLHYuWSx2LnpSKSkpLCFuLnFOKCkmJm4ubWVkaWFTb3VyY2UmJighbi5wb2xpY3kuVjYmJm1kKG4udmlkZW9UcmFjaykmJm1kKG4uYXVkaW9UcmFjaykmJm42KFcpJiYhVy55dSgpJiYodj1JJChuLmF1ZGlvVHJhY2spLlBKLHY9PT1uLkt1Lk5bdi5pbmZvLmlkXSYmKG4uTC5HKCkuV1goKSYmbi5MLlUoInNlcyIse2VvczoxfSksbjYoVykmJihXLm1lZGlhU291cmNlP1cubWVkaWFTb3VyY2UuZW5kT2ZTdHJlYW0oKTpXLkVWLndlYmtpdFNvdXJjZUVuZE9mU3RyZWFtKFcuRVYuRU9TX05PX0VSUk9SKSksdj1uLnNjaGVkdWxlLHNuKGUwKHYpKSx2LmNKPSgwLGcuUikoKSx2Lk89ITAsdj0odj1uLnZpZGVvVHJhY2suUEopJiZ2LmluZGV4IGluc3RhbmNlb2YKZ1M/di5pbmRleC5LOnZvaWQgMCxuLkwuRygpLlp0KCkuTi5RUShZSmIpP3Y9PT0iZW1zZyImJm4ucG0oImUiKTpuLnBtKCJlIikpKSxiJiYoVy5OPyFXLk4uc3VwcG9ydHMoMCk6IWFkKCkpJiZnLkFnKG4pKSl9fTsKSFBiPWZ1bmN0aW9uKG4pe24ucG9saWN5LlY2PSExO3RyeXtYYihuKX1jYXRjaChXKXtnLlhqKFcpfX07CmZteD1mdW5jdGlvbihuLFc9ITEpe24ubWVkaWFTb3VyY2UmJm4ubWVkaWFTb3VyY2UuTiYmbi5tZWRpYVNvdXJjZS5KJiYobi5tZWRpYVNvdXJjZS5OLk05KG4uTEwsbiksbi5tZWRpYVNvdXJjZS5KLk05KG4uTEwsbikpO0tyKG4uYXVkaW9UcmFjayxudWxsLFcpO0tyKG4udmlkZW9UcmFjayxudWxsLFcpO24ubWVkaWFTb3VyY2UmJihuLm1lZGlhU291cmNlLlY9ITEpO24ubWVkaWFTb3VyY2U9bnVsbDtuLkFiPW51bGw7bi5MLlhTPy5yZXNldCgpfTsKSjdpPWZ1bmN0aW9uKG4sVyxEPSExLGI9ITEsdj0hMSl7S3Iobi52aWRlb1RyYWNrLFcuSnx8bnVsbCxiLHYpO0tyKG4uYXVkaW9UcmFjayxXLk58fG51bGwsYix2KTtuLm1lZGlhU291cmNlPVc7bi5tZWRpYVNvdXJjZS5WPSEwO0R8fG4ucmVzdW1lKCk7Vy5OLmgkKG4uTEwsbik7Vy5KLmgkKG4uTEwsbil9OwpJbWk9ZnVuY3Rpb24obixXLEQ9ITEsYj0hMSx2PSExKXtuLnBvbGljeS5UQyYmKG4ucG9saWN5LlZRJiZuLlUoImxvYWRlciIse3NldHNtYjowfSksbi56aSgpLG4ucG9saWN5LlRDPSExKTtmbXgobixiKTtpZighVy5YKCkpe3ZhciBrPWlZKG4udmlkZW9UcmFjayk7az1rP2suaW5mby5QSjpuLnZpZGVvVHJhY2suUEo7bGV0IGg9aVkobi5hdWRpb1RyYWNrKTtMS1UoVyxrLmluZm8sKGg/aC5pbmZvLlBKOm4uYXVkaW9UcmFjay5QSikuaW5mbyxuLnBvbGljeS5wUil9SjdpKG4sVyxELGIsdik7dHJ5e24uaFQoKX1jYXRjaChoKXtnLlhqKGgpfX07CnFtPWZ1bmN0aW9uKG4pe24ubWVkaWFTb3VyY2UmJm4ubWVkaWFTb3VyY2UuUEEoKSYmbi5LMSgpfTsKZ09DPWZ1bmN0aW9uKG4sVyl7VyYmR1gobi5MLG5ldyB0MihXLnZpZGVvLFcucmVhc29uKSk7bi5jVi5ISiYmKFc9WmV3KG4uY1YsImEiKSxuLkwuZ20obmV3IHQyKFcuYXVkaW8sVy5yZWFzb24pKSl9OwpBN3g9ZnVuY3Rpb24obil7bi5CdiYmIW4uaXNTdXNwZW5kZWQmJlRaKG4uc2NoZWR1bGUpJiYoU0paKG4sbi5Cdiksbi5Cdj0iIil9OwpzN3I9ZnVuY3Rpb24obixXKXtpWShXKT8uaXNMb2NrZWQmJm1CYihXKSYmKG4uTC5HKCkuV1goKSYmbi5VKCJlb3NsIix7bXVubG9jazppWShXKT8uaW5mby5nYSgpfSksJGMobixXPT09bi5hdWRpb1RyYWNrKSl9OwpOM0M9ZnVuY3Rpb24obil7aWYodGRqKG4udmlkZW9UcmFjaykpcmV0dXJuInNzZiI7aWYobi5wb2xpY3kubnUmJmlZKG4udmlkZW9UcmFjayk/LmlzTG9ja2VkJiZpWShuLmF1ZGlvVHJhY2spPy5pc0xvY2tlZClyZXR1cm4idXBkYXRlRW5kIjtpZihpUyhuLmF1ZGlvVHJhY2spfHxpUyhuLnZpZGVvVHJhY2spJiZuLnZpZGVvVHJhY2suUEouaW5mby5JQiE9PSJmIilyZXR1cm4iIjtpZihuLlhhLmlzU2Vla2luZygpKXt2YXIgVz1uLklnO3ZhciBEPW4udmlkZW9UcmFjazt2YXIgYj1uLmF1ZGlvVHJhY2s7aWYoVy5wb2xpY3kuTil7dmFyIHY9Vy5wb2xpY3kuV2M7ZHUoVy5wb2xpY3kpJiYodj1wdihXLCExLE5XKFcpKSk7Vz12O0Q9Yi56cyghMCk+PVcmJkQuenMoITApPj1XfWVsc2UgRC5KLmxlbmd0aHx8Yi5KLmxlbmd0aD8odj1ELlBKLmluZm8uTnMrYi5QSi5pbmZvLk5zLHY9MTAqKDEtTlcoVykvdiksVz1NYXRoLm1heCh2LFcucG9saWN5LldjKSxEPWIuenMoITApPj1XJiZELnpzKCEwKT49ClcpOkQ9ITA7aWYoIUQpcmV0dXJuImFiciI7RD1uLnZpZGVvVHJhY2s7aWYoRC5KLmxlbmd0aD4wJiZELlcua2koKT09PTEmJkQuVy5XMigpLmluZm8uSzxELlZRKXJldHVybiJzZWVrIn1pZihuLnBvbGljeS5VMSYmJFgxKG4udmlkZW9UcmFjayxuLkpDKSYmJFgxKG4uYXVkaW9UcmFjayxuLkpDKSlyZXR1cm4ic3NkYWkiO0Q9IW4ucG9saWN5LnRNfHxuLmdldEN1cnJlbnRUaW1lKCk8MTA7bi5wb2xpY3kuTnx8KEQ9RHx8bi52aWRlb1RyYWNrLlBKLmluZm8udmlkZW8ucXVhbGl0eU9yZGluYWw+MzYwKTtpZighbi5Pbnx8RClyZXR1cm4iIjtEPW4ucG9saWN5LnRNO2R1KG4ucG9saWN5KSYmKEQ9cHYobi5JZyxuLk9uLE5XKG4uSWcpKSk7RD1YMHQobi52aWRlb1RyYWNrLG4uZ2V0Q3VycmVudFRpbWUoKSxEKXx8WDB0KG4uYXVkaW9UcmFjayxuLmdldEN1cnJlbnRUaW1lKCksRCk7cmV0dXJuIGR1KG4ucG9saWN5KT9EPyJtYm5tIjoiIjoobi52aWRlb1RyYWNrLkoubGVuZ3RoPjB8fApuLmF1ZGlvVHJhY2suSi5sZW5ndGg+MHx8anEobi5OeSxuLnZpZGVvVHJhY2ssbi5hdWRpb1RyYWNrKXx8anEobi5OeSxuLmF1ZGlvVHJhY2ssbi52aWRlb1RyYWNrKSkmJkQ/Im5vcmQiOiIifTsKeGM9ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9SSQoVyk7IXZ8fHYuYVp8fGJUKHYsYil8fChELmFib3J0KCksbi5wb2xpY3kuZkMmJlcuVj8uWSgpLFcuSz8uVigpKTtpZighRC5LcygpfHxWVCgpKXRyeXtuLnBvbGljeS5Kaz9ELm5hKGIuUEouaW5mby5jb250YWluZXJUeXBlLGIuUEouaW5mby5JQikmJkQuVm8oYi5QSi5pbmZvLmNvbnRhaW5lclR5cGUsYi5QSi5pbmZvLklCLGIuUEouaW5mby5taW1lVHlwZSk6RC5qbihiLlBKLmluZm8uY29udGFpbmVyVHlwZSxiLlBKLmluZm8ubWltZVR5cGUpfWNhdGNoKGspe3JldHVybiBnLkdxKGspLG4uVSgiY3RleHAiLHtuYW1lOmsubmFtZSxtc2c6ay5tZXNzYWdlfSksITF9ZWxzZSBiLlBKLmluZm8uY29udGFpbmVyVHlwZSE9PUQuS3MoKSYmbi5VKCJjdHUiLHtjdDpWVCgpLHByZXZfYzpELktzKCksY3Vycl9jOmIuUEouaW5mby5jb250YWluZXJUeXBlfSk7Yj1iLlBKLlY7bi5wb2xpY3kuRFQmJmImJihXPTArYi5kdXJhdGlvbixiPS1iLk4sCjA9PT1ELk1yKCkmJlc9PT1ELktGKCl8fEQuZTcoMCxXKSxiIT09RC5TVygpJiYoRC55TyhiKSxzNCYmbi5hdWRpb1RyYWNrLlcuQlcoRC5pdygpKSkpO3JldHVybiEwfTsKTEM9ZnVuY3Rpb24obixXLEQsYil7Yi5pbmZvLlBKLk4oKTt2YXIgdj1iLmluZm8uUEouSjtpZighdnx8IUQuam8oKXx8RC5EOSgpPT09dilyZXR1cm4hMTt2YXIgaz12LGg9RC5MRigpO2lmKG4ucG9saWN5LktvJiZoJiZELmlzVmlldygpJiZnLlJCKGIuaW5mby5QSi5pbmZvKSl7bGV0IEw9bmV3IERhdGFWaWV3KHYuYnVmZmVyLHYuYnl0ZU9mZnNldCx2LmJ5dGVMZW5ndGgpOyhoPVBJQyhMLGgpKT9rPW5ldyBVaW50OEFycmF5KGguYnVmZmVyLGguYnl0ZU9mZnNldCxoLmJ5dGVMZW5ndGgpOm4uVSgiZmVuYyIse30pfW4ucG9saWN5LmtwJiYoaD1LVGkobixiLG5ldyBTNShba10pKSkmJihrPXRSKGgpKTt2YXIgeDsoaD1iLmluZm8uUEouWSgwLGIuaW5mby5jbGlwSWQpKSYmKHg9aC5Bd1swXSk7aWYoYj09PW4uaDcpe2lmKG4uQzErPTEsbi5MLmdldFZpZGVvRGF0YSgpLlMoImh0bWw1X3Nob3J0c19nYXBsZXNzX3Jlc3RhcnRfb25faW5pdF9zZWdfcmV0cmllcyIpJiZuLkMxPjUpcmV0dXJuIG4uQzE9CjAsbi5MLkdtKHtpbml0U2VnU3R1Y2s6MSxhczpiLmluZm8uZ2EoKX0pLCEwfWVsc2Ugbi5DMT0wLG4uaDc9YjtuLnBvbGljeS54aiYmKEQuYWJvcnQoKSxXLks/LlYoKSk7bi5BYiYmRC5pUSgpJiYoRC5hYm9ydCgpLFcuSz8uVigpKTt2PU9QMihuLEQsayx4LHYpO1cuSz8uRCh2LHgpO2lmKHYhPT0wKXJldHVybiBuLnBvbGljeS5aTiYmQUoobi5MLmdldFZpZGVvRGF0YSgpKT8obi5MLm9BKCl8fHJTKG4sInNlcEluaXQiLHYsYi5pbmZvKSxQOVUobi5MLCJzaWUiKSk6clMobiwic2VwSW5pdCIsdixiLmluZm8pLCEwO2IuaW5mby5mWSgpPyhXPW4udGltaW5nLFcuVEN8fChXLlRDPSgwLGcuUikoKSxnLkVHKCJ2aXNfYSIsVy5UQyxXLnpSKSkpOihXPW4udGltaW5nLFcuVnx8KFcuVj0oMCxnLlIpKCksZy5FRygiYWlzX2EiLFcuVixXLnpSKSkpOyhiPWIuaW5mby5QSi5TVSkmJm4uTC5XbihuZXcgcnUoYi5rZXksYi50eXBlKSk7cmV0dXJuIEQueXUoKX07CnB6aD1mdW5jdGlvbihuLFcsRCl7aWYobi5wb2xpY3kubnUmJmlZKFcpPy5pc0xvY2tlZClyZXR1cm4hMTtpZihELkRjKCkpcmV0dXJuITA7aWYoIUQuam8oKSlyZXR1cm4hMTt2YXIgYj1pWShXKTtpZighYnx8Yi5pbmZvLnR5cGU9PT02KXJldHVybiExO2lmKG4ucG9saWN5LmllfHxuLkpDPy5PKFcsYi5pbmZvLmokKSluLkxvPTA7ZWxzZSByZXR1cm4gbi5YYS5pc1NlZWtpbmcoKSYmZy5BZyhuKSxuLkxvPW4uTG98fCgwLGcuUikoKSwhMTtpZigheGMobixXLEQsYi5pbmZvKSlyZXR1cm4hMTtpZihuLkt1LlcmJmIuaW5mby5OPT09MCl7dmFyIHY7aWYoRC5EOSgpPT1udWxsKXt2YXIgaz1JJChXKTtpZighKHY9IWt8fGsuUEohPT1iLmluZm8uUEopKXtiOmlmKHY9ay5PLGs9Yi5pbmZvLk8sdi5sZW5ndGghPT1rLmxlbmd0aCl2PSExO2Vsc2V7Zm9yKGxldCBoPTA7aDx2Lmxlbmd0aDtoKyspaWYoIXY0KHZbaF0sa1toXSkpe3Y9ITE7YnJlYWsgYn12PSEwfXY9IXZ9fWVsc2Ugdj1ELkQ5KCksCmIuaW5mby5QSi5TJCgpJiZETyhiKSxrPWIuaW5mby5QSi5KLHY9diE9PWsmJiF2NCh2LGspO3YmJihrPUkkKFcpLG4uVSgiaW5pdGNoZyIse2l0OmIuaW5mby5QSi5pbmZvLmlkLHNyOiEhayYmay5QSj09PWIuaW5mby5QSix0eTpiLmluZm8udHlwZSxzZWc6Yi5pbmZvLmokfSkpO2s9Zy5SQihiLmluZm8uUEouaW5mbyk7bi5wb2xpY3kubWgmJmsmJiF2JiYoZy5SQihiLmluZm8uUEouaW5mbyk/KEdqKGcuV1IoYiksMTgzNjAxOTU3NCksR2ooZy5XUihiKSwxNzE4OTA5Mjk2KSk6KHY9bmV3IHRZKGcuV1IoYikpLE9ZKHYpLHNZKHYsNTI0NTMxMzE3LCEwKSxiLko9Yi5KLnNwbGl0KHYuc3RhcnQrdi5wb3MpLlk5KSxiLlY9ITEpfWs9bi5RdSYmISFuLlF1LlgmJlcuUEouaW5mby5hdWRpbzt2PW4uS3UuaXNNYW5pZmVzdGxlc3N8fGIuVjtpZighKG4uS3UuVyYmYi5pbmZvLk4hPT0wfHx2JiYhaykmJkxDKG4sVyxELGIpKXJldHVybiEwO2lmKGspcmV0dXJuITE7az1PYihuLFcpO2s9bi5nZXRDdXJyZW50VGltZSgpKwprO2lmKGIuaW5mby5YPmspcmV0dXJuIG4ucG9saWN5Lk4mJihXPT09bi52aWRlb1RyYWNrP24uYzc9bi5jN3x8KDAsZy5SKSgpOm4uTno9bi5Oenx8KDAsZy5SKSgpKSwhMTtXPT09bi52aWRlb1RyYWNrP24uYzc9MDpuLk56PTA7bi5wb2xpY3kuVTUmJkQ9PT1uLm1lZGlhU291cmNlPy5OJiZuLk9MJiYoRC5mRigpPT09MD8obi5PTD0hMSxuLnBvbGljeS5VNT0hMSk6bi5HSj1ELmZGKCkpO2lmKCFaUGoobixELGIsVykpcmV0dXJuITE7bi5wb2xpY3kubnUmJmIuaW5mby5WKCk/KG4uTC5HKCkuV1goKSYmbi5VKCJlb3NsIix7bHM6Yi5pbmZvLmdhKCl9KSxiLmlzTG9ja2VkPSEwKTooVy5aJChiKSxQQzIobi5jVixiLmluZm8pKTt2JiYoVz1iLmluZm8uUEouU1UpJiZuLkwuV24obmV3IHJ1KFcua2V5LFcudHlwZSkpO3JldHVybiEwfTsKWlBqPWZ1bmN0aW9uKG4sVyxELGIpe2lmKG4uTC5HKCkuWnQoKS5OLlFRKFVCYikmJkQuaW5mby5OJiYhVy5pUSgpKXJldHVybiBuLlUoImRyb3BfY2h1bmsiLHtzcTpELmluZm8uaiQsc3Q6RC5pbmZvLlh9KSwhMDt2YXIgdj1uLnBvbGljeS5SYT8oMCxnLlIpKCk6MCxrPUQuViYmRC5pbmZvLlBKLkp8fHZvaWQgMCxoPUQuSjtELlYmJihoPUtUaShuLEQsaCl8fGgpO3ZhciB4PXRSKGgpO2g9bi5wb2xpY3kuUmE/KDAsZy5SKSgpOjA7Vz1PUDIobixXLHgsRC5pbmZvLGspO2IuSz8uWShELmluZm8sVyxoLXYsKDAsZy5SKSgpLWgpO24uQzE9MDtpZihXPT09MClyZXR1cm4gbi5aRCYmKG4uWkQ9ITEsbi5xTz0hMSksbi5hQT0wLCEwO2lmKFc9PT0yfHxXPT09NSlyZXR1cm4gclMobiwiY2hlY2tlZCIsVyxELmluZm8pLCExO2lmKFc9PT0xKXtpZighbi5aRClyZXR1cm4gbi5aRD0hMCwhMTtpZighbi5xTylyZXR1cm4gbi5xTz0hMCxuLkwuc2Vla1RvKG4uZ2V0Q3VycmVudFRpbWUoKSx7cWQ6InF1b3RhRXhjZWVkZWQiLApxYTohMH0pLCExO0QuaW5mby5mWSgpPyhiPW4ucG9saWN5LGIuZSQ9TWF0aC5mbG9vcihiLmUkKi44KSxiLk89TWF0aC5mbG9vcihiLk8qLjgpKTooYj1uLnBvbGljeSxiLnZKPU1hdGguZmxvb3IoYi52SiouOCksYi5PPU1hdGguZmxvb3IoYi5PKi44KSk7bi5wb2xpY3kuTj9XbChuLms2LEQuaW5mby5QSik6YXEobi5jVixELmluZm8uUEopfW4uTC5HbSh7cmVhdHRhY2hPbkFwcGVuZDpXfSk7cmV0dXJuITF9OwpLVGk9ZnVuY3Rpb24obixXLEQpe3ZhciBiO2lmKGI9bi5wb2xpY3kua3AmJm4ubWVkaWFTb3VyY2UmJiFuLm1lZGlhU291cmNlLk8mJiFuLkwuUHAoKSlXPVcuaW5mby5QSi5pbmZvLGI9Vy5xSCgpJiZXLlgoKSYmVy52aWRlbyYmVy52aWRlby53aWR0aDwzODQwJiZXLnZpZGVvLndpZHRoPlcudmlkZW8uaGVpZ2h0O2lmKGImJihuLm1lZGlhU291cmNlLk89ITAsZHkoJ3ZpZGVvL3dlYm07IGNvZGVjcz0idnAwOS4wMC41MC4wOC4wMS4wMS4wMS4wMS4wMCI7IHdpZHRoPTM4NDA7IGhlaWdodD0yMTYwJykpKXJldHVybiBEPUROMShEKSxuLnBvbGljeS5XJiZuLlUoInNwNGsiLHtzOiEhRH0pLER9OwpPUDI9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1uLkFifHxuLm1lZGlhU291cmNlO3RyeXtsZXQgaD1XPT09ay5OP24uYXVkaW9UcmFjazpuLnZpZGVvVHJhY2s7aWYobi5wb2xpY3kubnUmJmI/LlYoKSl7aWYoYj8udHc+MSlyZXR1cm4gNjtoLmJkPW5ldyBnLmZfKCgpPT57dmFyIHg9aVkoaCk7bi5xTigpfHwheD8uaXNMb2NrZWQ/bi5MLkcoKS5XWCgpJiZuLlUoImVvc2wiLHtkZWxheUE6eD8uaW5mby5nYSgpfSk6bUJiKGgpPyhuLkwuRygpLldYKCkmJm4uVSgiZW9zbCIse2R1bmxvY2s6eD8uaW5mby5nYSgpfSksJGMobixoPT09bi5hdWRpb1RyYWNrKSk6KG4uVSgibnVlIix7bHM6eC5pbmZvLmdhKCl9KSx4LmluZm8udHcrPTEsbi5tZWRpYVNvdXJjZSYmWGIobikpfSwxRTQsbik7Cm4uTC5HKCkuV1goKSYmbi5VKCJlb3NsIix7ZGVsYXlTOmIuZ2EoKX0pO2guYmQuc3RhcnQoKX1uLnBvbGljeS5zMyYmYj8uUEogaW5zdGFuY2VvZiBkdCYmYi5WKCkmJm4uVSgicG9zZW9zIix7aXRhZzpiLlBKLmluZm8uaXRhZyxzZWc6Yi5qJCxsc2VnOmIuUEouaW5kZXgueCQoKSxlczpiLlBKLmluZGV4Lkt9KTtXLmFwcGVuZEJ1ZmZlcihELGIsdil9Y2F0Y2goaCl7aWYoaCBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbil7aWYoaC5uYW1lPT09IkludmFsaWRTdGF0ZUVycm9yInx8aC5jb2RlPT09MTEpcmV0dXJuIG4uTC5HKCkuV1goKSYmbi5VKCJhZWlzIix7bXNnOmcudXAoaC5tZXNzYWdlLDMpfSksMjtpZihoLm5hbWU9PT0iU3ludGF4RXJyb3IifHxoLmNvZGU9PT0xMilyZXR1cm4gNTtpZihoLm5hbWU9PT0iUXVvdGFFeGNlZWRlZEVycm9yInx8aC5jb2RlPT09MjJ8fGgubWVzc2FnZS5pbmRleE9mKCJOb3QgZW5vdWdoIHN0b3JhZ2UiKT09PTApcmV0dXJuIFc9T2JqZWN0LmFzc2lnbih7bmFtZToiUXVvdGFFeGNlZWRlZEVycm9yIiwKYnVmZmVyZWQ6cmsoVy5aRigpKS5yZXBsYWNlKC8sL2csIl8iKSx2aGVhcDpuLnZpZGVvVHJhY2suUnUoKSxhaGVhcDpuLmF1ZGlvVHJhY2suUnUoKSxtZXNzYWdlOmcudXAoaC5tZXNzYWdlLDMpLHRyYWNrOms/Vz09PWsuSj8idiI6ImEiOiJ1In0saFF4KCkpLG4uaGFuZGxlRXJyb3IoInBsYXllci5leGNlcHRpb24iLFcpLDE7Zy5YaihoKX1yZXR1cm4gNH1yZXR1cm4gay5QQSgpPzM6MH07CnJTPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PSJmbXQudW5wbGF5YWJsZSIsaz0xO0Q9PT01fHxEPT09Mz8odj0iZm10LnVucGFyc2VhYmxlIixuLnBvbGljeS5OPyFiLlBKLmluZm8udmlkZW98fHdDKG4uazYuTikuc2l6ZT4wfHxXbChuLms2LGIuUEopOiFiLlBKLmluZm8udmlkZW98fHdDKG4uY1Yuaikuc2l6ZT4wfHxhcShuLmNWLGIuUEopKTpEPT09MiYmKG4uYUE8MTU/KG4uYUErKyx2PSJodG1sNS5pbnZhbGlkc3RhdGUiLGs9MCk6dj0iZm10LnVucGxheWFibGUiKTtiPVh4KGIpO2IubXJzPW4ubWVkaWFTb3VyY2U/LlcoKTtiLm9yaWdpbj1XO2IucmVhc29uPUQ7Yi50cmc9ImFwcGVuZGVyciI7bi5oYW5kbGVFcnJvcih2LGIsayl9OwpOMj1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPW4uS3U7dmFyIGg9bi5wb2xpY3kuTix4PSExLEw9LTE7Zm9yKGxldCByIGluIGsuTil7dmFyIGU9ay5OW3JdLmluZm8uTigpfHxrLk5bcl0uaW5mby5mWSgpO2lmKGI9PT1lKWlmKGU9ay5OW3JdLmluZGV4LGUuTUkoVy5qJCkpe3t4PWU7dmFyIEc9VztsZXQgTj14LlcoRy5qJCk7TiYmTi5zdGFydFRpbWUhPT1HLnN0YXJ0VGltZT8oeC5zZWdtZW50cz1bXSx4LmooRykseD0hMCk6eD0hMX14P0w9Vy5qJDohVy5wZW5kaW5nJiZoJiYoRz1lLmdldER1cmF0aW9uKFcuaiQpLEchPT1XLmR1cmF0aW9uJiYoay5XSigiY2xpZW50dGVtcCIsIm1mbGR1clVwZGF0ZSIse2l0YWc6ay5OW3JdLmluZm8uaXRhZyxzZWc6Vy5qJCxvZDpHLG5kOlcuZHVyYXRpb259LCExKSxlLmooVykseD0hMCkpfWVsc2UgZS5qKFcpLHg9ITB9TD49MCYmay5XSigiY2xpZW50dGVtcCIsInJlc2V0TWZsSW5kZXgiLHtbYj8idiI6ImEiXTpMfSwhMSk7az14O0FhMihuLlhhLApXLGIsayk7bi5wb2xpY3kuRHx8bi5KQy5SMChXLEQsYix2KTtXLmokPT09bi5LdS5JdCYmayYmdUEobi5LdSkmJlcuc3RhcnRUaW1lPnVBKG4uS3UpJiYobi5LdS5KVT1XLnN0YXJ0VGltZSsoaXNOYU4obi50aW1lc3RhbXBPZmZzZXQpPzA6bi50aW1lc3RhbXBPZmZzZXQpLG4uWGEuaXNTZWVraW5nKCkmJm4uWGEudGFyZ2V0VGltZTxuLkt1LkxmKCkmJm4uWGEuc2VlayhuLkt1LkxmKCkse30pKX07CiRjPWZ1bmN0aW9uKG4sVyl7aWYobi5wb2xpY3kubnUmJm4ubWVkaWFTb3VyY2Upe3ZhciBEPVc/bi5tZWRpYVNvdXJjZT8uTjpuLm1lZGlhU291cmNlPy5KO2xldCBiPVc/bi5hdWRpb1RyYWNrOm4udmlkZW9UcmFjaztXPWlZKGIpO1c/LmlzTG9ja2VkJiYobi5MLkcoKS5XWCgpJiZuLlUoImVvc2wiLHt1bmxvY2s6Vy5pbmZvLmdhKCl9KSxiLmJkPy5zdG9wKCksVy5pc0xvY2tlZD0hMSxiLlokKFcpLFBDMihuLmNWLFcuaW5mbyksRD1EPy5aZygpLEQ/LmdhKCkhPT1XLmluZm8uZ2EoKSYmbi5VKCJvdWUiLHtibHM6RD8uZ2EoKSx0bHM6Vy5pbmZvLmdhKCl9KSl9fTsKU0paPWZ1bmN0aW9uKG4sVyl7cVcoVywiY21zIixEPT57bi5wb2xpY3kuVyYmbi5VKCJwYXRocHJvYmUiLEQpfSxEPT57bi5MLmhhbmRsZUVycm9yKEQpfSl9Owp5N2k9ZnVuY3Rpb24obixXKXtuLm1lZGlhU291cmNlJiZuLm1lZGlhU291cmNlLkomJihXLT1pc05hTihuLnRpbWVzdGFtcE9mZnNldCk/MDpuLnRpbWVzdGFtcE9mZnNldCxpc05hTihuLlE1KXx8bi5RNT09PVd8fG4ucmVzdW1lKCksbi5RNT1XKX07CkVPaD1mdW5jdGlvbihuLFcsRCxiKXtkaihuKSYmbi5ETyYmYiYmYj09PTk2JiYoYj1EP24uTC5sSyhXKTpXLG4uZnAoYil8fG4uRE8uTnx8bi5VKCJwcmVidWZmZXIiLHttaXNzOjEsdDpXLnRvRml4ZWQoMyksaXNVdGM6RH0pKX07CmlQUz1mdW5jdGlvbihuLFcpe3ZhciBEPVNxKG4udmlkZW9UcmFjaykuZmluZChiPT5iLnNlZ21lbnRTdGFydFRpbWU+PVcmJlh6aChuLGIuc2VnbWVudFN0YXJ0VGltZSwhMSkpOwpyZXR1cm4gRCYmRC5zZWdtZW50U3RhcnRUaW1lPFcrRC5XKjEuNT9ELnNlZ21lbnRTdGFydFRpbWUrLjE6MH07Cm1CYj1mdW5jdGlvbihuKXt2YXIgVz1pWShuKT8uaW5mbztyZXR1cm4hV3x8bi5mcChNYXRoLm1pbihXLlgrc1gsVy5qKSl9Owp1M3g9ZnVuY3Rpb24obil7aWYoIShuLmxlbmd0aDw9MjgpKWZvcih2YXIgVz0oMCxnLk5tKShbNjAsMCw3NSwwLDczLDAsNjgsMCw2MiwwXSksRD0yODtEPG4ubGVuZ3RoOyl7YTppZihuLmxlbmd0aC1EPFcubGVuZ3RoKXZhciBiPSExO2Vsc2V7Zm9yKGI9MDtiPFcubGVuZ3RoOysrYilpZihuW0QrYl0hPT1XW2JdKXtiPSExO2JyZWFrIGF9Yj0hMH1pZihiKXtEKz1XLmxlbmd0aDtpZihuLmxlbmd0aDw9RCs0OClicmVhaztXPW5ldyBVaW50OEFycmF5KDI0KTtmb3IoYj0wO2I8MjQ7KytiKVdbYl09bltEK2IqMl07bj1wUihXKTtuPWxwKG4pO2lmKCFuKWJyZWFrO0Q9blswXTtuWzBdPW5bM107blszXT1EO0Q9blsxXTtuWzFdPW5bMl07blsyXT1EO0Q9bls0XTtuWzRdPW5bNV07bls1XT1EO0Q9bls2XTtuWzZdPW5bN107bls3XT1EO3JldHVybiBufUQrK319OwpvT3g9ZnVuY3Rpb24obixXKXthOnt2YXIgRD1XLmNyeXB0b1BlcmlvZEluZGV4O2lmKGlzTmFOKEQpJiZuLlcuc2l6ZT4wKUQ9ITA7ZWxzZXtmb3IobGV0IGIgb2Ygbi5XLnZhbHVlcygpKWlmKGIuY3J5cHRvUGVyaW9kSW5kZXg9PT1EKXtEPSEwO2JyZWFrIGF9RD0hMX19bi5XSigibG9nX3FvZSIse3d2YWd0OiJyZXFuZXdzIixjYW5za2lwOkR9KTtEfHxuLldKKCJyb3RhdGVkX25lZWRfa2V5X2luZm9fcmVhZHkiLFcpfTsKZEJoPWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlICJEUk1fVFJBQ0tfVFlQRV9BVURJTyI6cmV0dXJuIDE7Y2FzZSAiRFJNX1RSQUNLX1RZUEVfU0QiOnJldHVybiAyO2Nhc2UgIkRSTV9UUkFDS19UWVBFX0hEIjpyZXR1cm4gMztjYXNlICJEUk1fVFJBQ0tfVFlQRV9VSEQxIjpyZXR1cm4gNDtjYXNlICJEUk1fVFJBQ0tfVFlQRV9VSEQyIjpyZXR1cm4gNTtkZWZhdWx0OnJldHVybiAwfX07ClQzaD1mdW5jdGlvbihuLFc9ITEpe3ZhciBEPW4uc3RhdHVzPT09IkxJQ0VOU0VfU1RBVFVTX09LIj8wOjk5OTksYj1udWxsO2lmKG4ubGljZW5zZSl0cnl7Yj1scChuLmxpY2Vuc2UpfWNhdGNoKHYpe2cuWGoodil9aWYoRD09PTAmJiFiKXJldHVybiBudWxsO2I9bmV3IHpEWihELGIpO0QhPT0wJiZuLnJlYXNvbiYmKGIuZXJyb3JNZXNzYWdlPW4ucmVhc29uKTtpZihuLmF1dGhvcml6ZWRGb3JtYXRzKXtEPXt9O2xldCB2PVtdLGs9e307Zm9yKGxldCBoIG9mIG4uYXV0aG9yaXplZEZvcm1hdHMpe2lmKCFoLnRyYWNrVHlwZXx8IWgua2V5SWQpY29udGludWU7VyYmYi5KLnB1c2goe3RyYWNrVHlwZTpkQmgoaC50cmFja1R5cGUpLGlzSGRyOiEhaC5pc0hkcn0pO2xldCB4PWxtVVtoLnRyYWNrVHlwZV07aWYoeCl7eD09PSJIRCImJm4uaXNIZDcyMCYmKHg9IkhENzIwIik7aC5pc0hkciYmKHgrPSJIRFIiKTtEW3hdfHwodi5wdXNoKHgpLERbeF09ITApO2xldCBMPW51bGw7dHJ5e0w9bHAoaC5rZXlJZCl9Y2F0Y2goZSl7Zy5YaihlKX1MJiYKKGtbZy5FQShMLDQpXT14KX19Yi5XPXY7Yi5OPWt9bi5uZXh0RmFpcnBsYXlLZXlJZCYmKGIubmV4dEZhaXJwbGF5S2V5SWQ9bi5uZXh0RmFpcnBsYXlLZXlJZCk7bi5zYWJyTGljZW5zZUNvbnN0cmFpbnQmJihiLnNhYnJMaWNlbnNlQ29uc3RyYWludD1scChuLnNhYnJMaWNlbnNlQ29uc3RyYWludCkpO3JldHVybiBifTsKajdqPWZ1bmN0aW9uKG4sVyxEKXtuLm9uU3VjY2Vzcz1XO24ub25FcnJvcj1EfTsKQzl4PWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PXt0aW1lb3V0OjNFNCxvblN1Y2Nlc3M6az0+e2lmKCFuLnFOKCkpaWYoZy5hTCgiZHJtX25ldF9yIix2b2lkIDAsbi50aW1lciksaz1UM2goayxuLkopKW4ub25TdWNjZXNzKGssbi5yZXF1ZXN0TnVtYmVyKTtlbHNlIG4ub25FcnJvcihuLCJkcm0ubmV0IiwidC5wO3AuaSIpfSwKb25FcnJvcjprPT57aWYoIW4ucU4oKSlpZihrJiZrLmVycm9yKWs9ay5lcnJvcixuLm9uRXJyb3IobiwiZHJtLm5ldC5iYWRzdGF0dXMiLGB0LnI7cC5pO2MuJHtrLmNvZGV9O3MuJHtrLnN0YXR1c31gLGsuY29kZSk7ZWxzZSBuLm9uRXJyb3IobiwiZHJtLm5ldC5iYWRzdGF0dXMiLCJ0LnI7cC5pO2MubiIpfSwKb25UaW1lb3V0OigpPT57bi5vbkVycm9yKG4sImRybS5uZXQiLGBydC5yZXEuJHtuLnJlcXVlc3ROdW1iZXJ9YCl9fTsKYiYmKHYuUDE9YEJlYXJlciAke2J9YCk7Zy5JSShELCJwbGF5ZXIvZ2V0X2RybV9saWNlbnNlIixXLHYpfTsKcEM9ZnVuY3Rpb24obixXLEQ9ITEpe2cuVEMoVyk7KER8fG4uQi5XWCgpKSYmbi5XSigiY3RtcCIsImRybWxvZyIsVyl9OwpCM3g9ZnVuY3Rpb24obil7dmFyIFc9bi5iYXNlVXJsO2hBaShXKXx8bi5lcnJvcigiZHJtLm5ldCIsMiwidC54Iik7aWYoIWcubGYoVywiZmV4cCIpKXtsZXQgRD1bIjIzODk4MzA3IiwiMjM5MTQwNjIiLCIyMzkxNjEwNiIsIjIzODgzMDk4Il0uZmlsdGVyKGI9Pm4uQi5leHBlcmltZW50cy5leHBlcmltZW50c1tiXSk7CkQubGVuZ3RoPjAmJihuLmouZmV4cD1ELmpvaW4oKSl9Zm9yKGxldCBEIG9mIE9iamVjdC5rZXlzKG4uaikpVz1LUzEoVyxELG4ualtEXSk7cmV0dXJuIFd9Owp3enI9ZnVuY3Rpb24obixXKXt2YXIgRD1udWxsO3RyeXtEPVcuY3JlYXRlU2Vzc2lvbihuLlksYj0+e3BDKG4se206Yn0pfSksRlR0KG4sRCl9Y2F0Y2goYil7Vz0idC5nIixiIGluc3RhbmNlb2YgRE9NRXhjZXB0aW9uJiYoVys9YDtjLiR7Yi5jb2RlfWApLG4uV0ooImxpY2Vuc2VlcnJvciIsImRybS51bmF2YWlsYWJsZSIsMSxXLCJIVE1MNV9OT19BVkFJTEFCTEVfRk9STUFUU19GQUxMQkFDSyIpfXJldHVybiBEfTsKRlR0PWZ1bmN0aW9uKG4sVyl7TTliKFcsKEQsYik9PntSRGoobixELGIpfSwoRCxiLHYpPT57bi5xTigpfHwoYj12b2lkIDAsZy5YVihuLkopJiZnLkRmKG4uQikmJm4uQi5TKCJodG1sNV9lbmFibGVfc2FmYXJpX2ZhaXJwbGF5IikmJnY9PT0xMjEyNDMzMjMyJiYoYj0iRVJST1JfSERDUCIpLG4uZXJyb3IoImRybS5rZXllcnJvciIsMSxELGIpKX0sKCk9PntuLnFOKCl8fChwQyhuLHtvbmt5YWRkOjF9KSxuLmNKfHwobi5XSigic2Vzc2lvbnJlYWR5Iiksbi5jSj0hMCkpfSxEPT57bi5ZVihEKX0pfTsKUkRqPWZ1bmN0aW9uKG4sVyxEKXtpZighbi5xTigpKWlmKFcpe3BDKG4se29ua210eXA6RH0pO24uc3RhdHVzPSJrbSI7c3dpdGNoKEQpe2Nhc2UgImxpY2Vuc2UtcmVuZXdhbCI6Y2FzZSAibGljZW5zZS1yZXF1ZXN0IjpjYXNlICJsaWNlbnNlLXJlbGVhc2UiOmJyZWFrO2Nhc2UgImluZGl2aWR1YWxpemF0aW9uLXJlcXVlc3QiOlE3MihuLFcpO3JldHVybjtkZWZhdWx0Om4uV0ooImN0bXAiLCJtZXNzYWdlX3R5cGUiLHt0OkQsbDpXLmJ5dGVMZW5ndGh9KX1uLnR3fHwoZy5hTCgiZHJtX2drX2YiLHZvaWQgMCxuLnZpZGVvRGF0YS56Uiksbi50dz0hMCxuLldKKCJuZXdzZXNzaW9uIixuKSk7aWYoTE4obi5KKSYmKFc9VjlpKFcpLCFXKSlyZXR1cm47dmFyIGI9ITE7aWYobi5CLlp0KCkuTi5RUShZYykpdHJ5e2I9bWsoVyx3T1opLnR5cGU9PT00fWNhdGNoKHYpe3BDKG4se2NlcnRfY2hlY2tfZmFpbGVkOjF9LCEwKX1pZihiJiZuLmRoPy5jZXJ0aWZpY2F0ZSl7cEMobix7Y2VydF9jYWNoZV9oaXQ6MX0sCiEwKTsrK24ucmVxdWVzdE51bWJlcjtsZXQgdj1uLmRoLmNlcnRpZmljYXRlO1Byb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PntjN3IobixuZXcgekRaKDAsdiksYil9KX1lbHNlIFc9bmV3IGFtcihXLCsrbi5yZXF1ZXN0TnVtYmVyLG4udmlkZW9EYXRhLnpSLG4uQi5TKCJodG1sNV9lbmFibGVfdnA5X2ZhaXJwbGF5IikpLGo3aihXLHY9PntjN3Iobix2LGIpfSwodixrLGgpPT57aWYoIW4ucU4oKSl7dmFyIHg9MDsKdi5OLko+PTMmJih4PTEsaz0iZHJtLm5ldC5yZXRyeWV4aGF1c3RlZCIpO3BDKG4se29ubGNzcnFlcnI6ayxpbmZvOmh9KTtuLmVycm9yKGsseCxoKTtuLnNob3VsZFJldHJ5KGoyKHgpLHYpJiZuUXcobix2KX19KSxnLnUobixXKSxXZzIobixXKX1lbHNlIG4uZXJyb3IoImRybS51bmF2YWlsYWJsZSIsMSwia20uZW1wdHkiKX07ClE3Mj1mdW5jdGlvbihuLFcpe3BDKG4se3NkcHZycToxfSk7bi5WPXBlcmZvcm1hbmNlLm5vdygpO2lmKG4uSi5mbGF2b3IhPT0id2lkZXZpbmUiKW4uZXJyb3IoImRybS5wcm92aXNpb24iLDEsYGUuZmxhdm9yO2YuJHtuLkouZmxhdm9yfTtsLiR7Vy5ieXRlTGVuZ3RofWApO2Vsc2V7dmFyIEQ9e2NwbjpuLnZpZGVvRGF0YS5jbGllbnRQbGF5YmFja05vbmNlfTtPYmplY3QuYXNzaWduKEQsbi5CLk4pO0Q9Zy5FVCgiaHR0cHM6Ly93d3cuZ29vZ2xlYXBpcy5jb20vY2VydGlmaWNhdGVwcm92aXNpb25pbmcvdjEvZGV2aWNlY2VydGlmaWNhdGVzL2NyZWF0ZT9rZXk9QUl6YVN5Qi01T0xLVHgyaVU1bWtvMThEZmR3SzU2MTFKSWpiVWhFIixEKTtXPXtmb3JtYXQ6IlJBVyIsaGVhZGVyczp7ImNvbnRlbnQtdHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxtZXRob2Q6IlBPU1QiLHBvc3RCb2R5OkpTT04uc3RyaW5naWZ5KHtzaWduZWRSZXF1ZXN0OlN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCwKVyl9KSxyZXNwb25zZVR5cGU6ImFycmF5YnVmZmVyIn07Zy5zeihELFcsMyw1MDApLnRoZW4oWXooYj0+e2I9Yi54aHI7aWYoIW4ucU4oKSl7Yj1uZXcgVWludDhBcnJheShiLnJlc3BvbnNlKTt2YXIgdj1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsYik7dHJ5e3ZhciBrPUpTT04ucGFyc2Uodil9Y2F0Y2goaCl7fWsmJmsuc2lnbmVkUmVzcG9uc2U/KG4uV0ooImN0bXAiLCJkcm1pbmZvIix7cHJvdmlzaW9uaW5nOjF9KSxrPShwZXJmb3JtYW5jZS5ub3coKS1uLlYpLzFFMyxuLlY9TmFOLG4uV0ooImN0bXAiLCJwcm92cyIse2V0OmsudG9GaXhlZCgzKX0pLG4uWCYmbi5YLnVwZGF0ZShiKSk6KGs9ayYmay5lcnJvciYmay5lcnJvci5tZXNzYWdlLGI9ImUucGFyc2UiLGsmJihiKz1gO20uJHtrfWApLG4uZXJyb3IoImRybS5wcm92aXNpb24iLDEsYikpfX0pLFl6KGI9PntuLnFOKCl8fG4uZXJyb3IoImRybS5wcm92aXNpb24iLDEsYGUuJHtiLmVycm9yQ29kZX07Yy4ke2IueGhyJiYKYi54aHIuc3RhdHVzfWApfSkpfX07CmM3cj1mdW5jdGlvbihuLFcsRCl7bi5xTigpfHwoKHBDKG4se29ubGNzcnNwOjF9KSxuLnN0YXR1cz0icnIiLFcuc3RhdHVzQ29kZSE9PTApP24uZXJyb3IoImRybS5hdXRoIiwxLGB0LmY7Yy4ke1cuc3RhdHVzQ29kZX1gLFcuZXJyb3JNZXNzYWdlfHx2b2lkIDApOihEJiZuLmRoJiZuLkIuWnQoKS5OLlFRKFljKSYmKG4uZGguY2VydGlmaWNhdGU9Vy5tZXNzYWdlKSxnLmFMKCJkcm1fa3JfcyIsdm9pZCAwLG4udmlkZW9EYXRhLnpSKSxXLmhlYXJ0YmVhdFBhcmFtcyYmVy5oZWFydGJlYXRQYXJhbXMudXJsJiZuLnZpZGVvRGF0YS5TKCJvdXRlcnR1YmVfc3RyZWFtaW5nX2RhdGFfYWx3YXlzX3VzZV9zdGFnaW5nX2xpY2Vuc2Vfc2VydmljZSIpJiYoRD1uLkouVy5tYXRjaCgvKC4qKXlvdXR1YmUuY29tL2cpKSYmKFcuaGVhcnRiZWF0UGFyYW1zLnVybD1EWzBdK1cuaGVhcnRiZWF0UGFyYW1zLnVybCksVy5oZWFydGJlYXRQYXJhbXMmJm4uV0ooIm5ld2xpY2Vuc2UiLFcuaGVhcnRiZWF0UGFyYW1zKSwKVy5XJiYobi5XPVcuVyxuLnZpZGVvRGF0YS5hTXx8bi5XSigibmV3bGljZW5zZSIsbmV3IERiaiksbi52aWRlb0RhdGEuYU09ITAsbi5LPWcub00obi5XLGI9PmIuaW5jbHVkZXMoIkhEUiIpKSksVy5KJiYobi5EPVcuSiksVy5OJiYobi5CLlMoImh0bWw1X2VuYWJsZV92cDlfZmFpcnBsYXkiKSYmbi5KLk4oKT8oRD1nLkVBKHhLKG4uZmFpcnBsYXlLZXlJZCksNCksbi5OW0RdPXt0eXBlOlcuTltEXSwKc3RhdHVzOiJ1bmtub3duIn0pOm4uTj1XeChXLk4sYj0+KHt0eXBlOmIsc3RhdHVzOiJ1bmtub3duIn0pKSksZzEobi5KKSYmKFcubWVzc2FnZT1hMjIoZy5FQShXLm1lc3NhZ2UpKSksbi5YJiYocEMobix7dXBkdGtzOjF9KSxuLnN0YXR1cz0ia3UiLG4uWC51cGRhdGUoVy5tZXNzYWdlKS50aGVuKCgpPT57Zy5hTCgiZHJtX2tyX2YiLHZvaWQgMCxuLnZpZGVvRGF0YS56Uik7CkhyKG4pfHwocEMobix7a3NBcGlVbnN1cDoxfSksbi5XSigia2V5c3RhdHVzZXNjaGFuZ2UiLG4pKX0sYj0+e2I9YG1zdWYucmVxLiR7bi5yZXF1ZXN0TnVtYmVyfTttc2cuJHtnLnVwKGIubWVzc2FnZSwzKX1gOwpuLmVycm9yKCJkcm0ua2V5ZXJyb3IiLDEsYil9KSksZy5YVihuLkopJiZuLldKKCJmYWlycGxheV9uZXh0X25lZWRfa2V5X2luZm8iLG4uYmFzZVVybCxXLm5leHRGYWlycGxheUtleUlkKSxuLkIuUygiaHRtbDVfZW5hYmxlX3ZwOV9mYWlycGxheSIpJiZuLkouTigpJiZuLldKKCJxdWFsaXR5Y2hhbmdlIixibWgobi5XKSksVy5zYWJyTGljZW5zZUNvbnN0cmFpbnQmJm4uV0ooInNhYnJsaWNlbnNlY29uc3RyYWludCIsVy5zYWJyTGljZW5zZUNvbnN0cmFpbnQpKSl9OwpXZzI9ZnVuY3Rpb24obixXKXtuLnN0YXR1cz0ia20iO2cuYUwoImRybV9uZXRfcyIsdm9pZCAwLG4udmlkZW9EYXRhLnpSKTt2YXIgRD1uZXcgZy5kNChuLkIuU1YpLGI9e2NvbnRleHQ6Zy5VSihELmNvbmZpZ198fGcuUzkoKSl9O2IuZHJtU3lzdGVtPXZRQ1tuLkouZmxhdm9yXTtiLnZpZGVvSWQ9bi52aWRlb0RhdGEudmlkZW9JZDtiLmNwbj1uLnZpZGVvRGF0YS5jbGllbnRQbGF5YmFja05vbmNlO2Iuc2Vzc2lvbklkPW4uc2Vzc2lvbklkO2IubGljZW5zZVJlcXVlc3Q9Zy5FQShXLm1lc3NhZ2UpO2IuZHJtUGFyYW1zPW4udmlkZW9EYXRhLmRybVBhcmFtcztpc05hTihuLmNyeXB0b1BlcmlvZEluZGV4KXx8KGIuaXNLZXlSb3RhdGVkPSEwLGIuY3J5cHRvUGVyaW9kSW5kZXg9bi5jcnlwdG9QZXJpb2RJbmRleCk7dmFyIHY9ISFuLnZpZGVvRGF0YS5KPy5LKCk/LmlzSGRyKCk7Yi5kcm1WaWRlb0ZlYXR1cmU9dj8iRFJNX1ZJREVPX0ZFQVRVUkVfUFJFRkVSX0hEUiI6IkRSTV9WSURFT19GRUFUVVJFX1NEUiI7Cm4uQi5leHBlcmltZW50cy5adCgpLk4uUVEoa1RiKSYmKGIuY29udGV4dD1nLm9UKG4udmlkZW9EYXRhKSk7aWYoYi5jb250ZXh0JiZiLmNvbnRleHQuY2xpZW50KXtpZih2PW4uQi5OKWIuY29udGV4dC5jbGllbnQuZGV2aWNlTWFrZT12LmNicmFuZCxiLmNvbnRleHQuY2xpZW50LmRldmljZU1vZGVsPXYuY21vZGVsLGIuY29udGV4dC5jbGllbnQuYnJvd3Nlck5hbWU9di5jYnIsYi5jb250ZXh0LmNsaWVudC5icm93c2VyVmVyc2lvbj12LmNicnZlcixiLmNvbnRleHQuY2xpZW50Lm9zTmFtZT12LmNvcyxiLmNvbnRleHQuY2xpZW50Lm9zVmVyc2lvbj12LmNvc3ZlcjtuLkIuZXhwZXJpbWVudHMuWnQoKS5OLlFRKGtUYil8fChiLmNvbnRleHQudXNlcj1iLmNvbnRleHQudXNlcnx8e30sbi52aWRlb0RhdGEuRCYmKGIuY29udGV4dC51c2VyLmNyZWRlbnRpYWxUcmFuc2ZlclRva2Vucz1be3Rva2VuOm4udmlkZW9EYXRhLkQsc2NvcGU6IlZJREVPIn1dKSxuLnZpZGVvRGF0YS5ISiYmKGIuY29udGV4dC51c2VyLmtpZHNQYXJlbnQ9CntvYXV0aFRva2VuOm4udmlkZW9EYXRhLkhKfSkpO2IuY29udGV4dC5yZXF1ZXN0PWIuY29udGV4dC5yZXF1ZXN0fHx7fTtiLmNvbnRleHQucmVxdWVzdC5tZHhFbnZpcm9ubWVudD1uLnZpZGVvRGF0YS5tZHhFbnZpcm9ubWVudHx8Yi5jb250ZXh0LnJlcXVlc3QubWR4RW52aXJvbm1lbnQ7Zy5YVihuLkopJiYoYi5mYWlycGxheUtleUlkPWcuRUEoeEsobi5mYWlycGxheUtleUlkKSkpO2cuSEUobi5CLG4udmlkZW9EYXRhLlYoKSkudGhlbihrPT57Qzl4KFcsYixELGspO24uc3RhdHVzPSJycyJ9KX1lbHNlIG4uZXJyb3IoImRybS5uZXQiLDIsInQucjtpYy4wIil9OwpoOE09ZnVuY3Rpb24obixXLEQpe3ZhciBiPXt9O2IuaXNIZHI9Vy5pbmNsdWRlcygiSERSIik7c3dpdGNoKFcucmVwbGFjZSgiSERSIiwiIikucmVwbGFjZSgiNzIwIiwiIikpe2Nhc2UgIkFVRElPIjpiLnRyYWNrVHlwZT0xO2JyZWFrO2Nhc2UgIlNEIjpiLnRyYWNrVHlwZT0yO2JyZWFrO2Nhc2UgIkhEIjpiLnRyYWNrVHlwZT0zO2JyZWFrO2Nhc2UgIlVIRDEiOmIudHJhY2tUeXBlPTQ7YnJlYWs7Y2FzZSAiVUhEMiI6Yi50cmFja1R5cGU9NTticmVhaztkZWZhdWx0OmIudHJhY2tUeXBlPTB9IWIudHJhY2tUeXBlfHxEW1ddfHxIcihuKSYmIWZDKG4sVyl8fChuLmF1dGhvcml6ZWRGb3JtYXRzLnB1c2goYiksRFtXXT0hMCl9Owp4Ymo9ZnVuY3Rpb24obixXKXt2YXIgRD1bXTtmb3IobGV0IGIgb2YgT2JqZWN0LmtleXMobi5OKSlELnB1c2goYCR7Yn1fJHtuLk5bYl0udHlwZX1fJHtuLk5bYl0uc3RhdHVzfWApO3JldHVybiBELmpvaW4oVyl9OwpIcj1mdW5jdGlvbihuKXt2YXIgVztpZihXPW4uTyYmbi5YIT1udWxsKW49bi5YLFc9ISghbi5OfHwhbi5OLmtleVN0YXR1c2VzKTtyZXR1cm4gV307Cm5Rdz1mdW5jdGlvbihuLFcpe3ZhciBEPVcuTi5nZXRWYWx1ZSgpO0Q9bmV3IGcuZl8oKCk9PntXZzIobixXKX0sRCk7CmcudShuLEQpO0Quc3RhcnQoKTtnLnhFKFcuTik7cEMobix7cnR5cnE6MX0pfTsKSjI9ZnVuY3Rpb24obil7dmFyIFc9e307V1tuLnN0YXR1c109SHIobik/eGJqKG4sIi4iKTpuLlcuam9pbigiLiIpO3JldHVybiBXfTsKZkM9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgaW4gbi5OKWlmKG4uTltEXS5zdGF0dXM9PT0idXNhYmxlIiYmbi5OW0RdLnR5cGU9PT1XKXJldHVybiEwO3JldHVybiExfTsKTGd3PWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIGluIG4uTilpZihuLk5bRF0udHlwZT09PVcpcmV0dXJuIG4uTltEXS5zdGF0dXN9OwplOHc9ZnVuY3Rpb24obil7dmFyIFc9blswXTtuWzBdPW5bM107blszXT1XO1c9blsxXTtuWzFdPW5bMl07blsyXT1XO1c9bls0XTtuWzRdPW5bNV07bls1XT1XO1c9bls2XTtuWzZdPW5bN107bls3XT1XfTsKYm1oPWZ1bmN0aW9uKG4pe3JldHVybiBnLmpqKG4sIlVIRDIiKXx8Zy5qaihuLCJVSEQySERSIik/ImhpZ2hyZXMiOmcuamoobiwiVUhEMSIpfHxnLmpqKG4sIlVIRDFIRFIiKT8iaGQyMTYwIjpnLmpqKG4sIkhEIil8fGcuamoobiwiSERIRFIiKT8iaGQxMDgwIjpnLmpqKG4sIkhENzIwIil8fGcuamoobiwiSEQ3MjBIRFIiKT8iaGQ3MjAiOiJsYXJnZSJ9OwpWOWk9ZnVuY3Rpb24obil7dmFyIFc9IiI7Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKz0yKVcrPVN0cmluZy5mcm9tQ2hhckNvZGUobltEXSk7bj1nLmdUKG5ldyBET01QYXJzZXIsZy5ITShXKSwidGV4dC94bWwiKTtpZighbilyZXR1cm4gbnVsbDsoVz1uLnF1ZXJ5U2VsZWN0b3IoIkNoYWxsZW5nZSIpKSYmVy5jaGlsZE5vZGVzJiZXLmNoaWxkTm9kZXMubGVuZ3RoIT09MD8obj1VaW50OEFycmF5LFc9emgoVy5jaGlsZE5vZGVzWzBdLm5vZGVWYWx1ZSksVz0oMCxnLk5tKShXKS5idWZmZXIsbj1uZXcgbihXKSk6bj1udWxsO3JldHVybiBufTsKTTliPWZ1bmN0aW9uKG4sVyxELGIsdil7bi5qPVc7bi5XPUQ7bi5WPWI7bi5LPXZ9OwpnUXc9ZnVuY3Rpb24obil7bi5OPyhuLlguTk4obi5OLCJtZXNzYWdlIixuLmJkKSxuLlguTk4obi5OLCJrZXlzdGF0dXNlc2NoYW5nZSIsbi5ZViksbi5OLmNsb3NlZCYmbi5OLmNsb3NlZC50aGVuKFl6KCgpPT57bi5xTigpfHxnLnViKCJ4Ym94b25lIikmJm4uVyYmbi5XKCJjbG9zZWRTaG91bGROb3RSZXRyeSIpfSksbnVsbCkpOm4uSiYmKEt5KG4uWCxuLkosWyJtc2tleW1lc3NhZ2UiLAoid2Via2l0a2V5bWVzc2FnZSJdLG4uY0opLEt5KG4uWCxuLkosWyJtc2tleWVycm9yIiwid2Via2l0a2V5ZXJyb3IiXSxuLk8pLEt5KG4uWCxuLkosWyJtc2tleWFkZGVkIiwid2Via2l0a2V5YWRkZWQiXSxuLkQpKX07ClhVUz1mdW5jdGlvbihuLFcsRCl7Zy5YaihEKTtuLlcmJihEIGluc3RhbmNlb2YgRE9NRXhjZXB0aW9uJiYoVys9YDtuLiR7RC5uYW1lfTttLiR7RC5tZXNzYWdlfWApLG4uVyhXKSl9OwpxY1U9ZnVuY3Rpb24obil7S3kobi5YLG4uZWxlbWVudCxbImtleW1lc3NhZ2UiLCJ3ZWJraXRrZXltZXNzYWdlIl0sbi5PKTtLeShuLlgsbi5lbGVtZW50LFsia2V5ZXJyb3IiLCJ3ZWJraXRrZXllcnJvciJdLG4uRCk7S3kobi5YLG4uZWxlbWVudCxbImtleWFkZGVkIiwid2Via2l0a2V5YWRkZWQiXSxuLlkpfTsKR1RTPWZ1bmN0aW9uKG4sVz1udWxsKXtpZihuLk4ua2V5U3lzdGVtQWNjZXNzKXJldHVybiBuLks9bi5LLnRoZW4oKCk9Pm4ubWVkaWFLZXlzP1Byb21pc2UucmVzb2x2ZSgpOlc/Lm1lZGlhS2V5cyYmVy5ZYT8ucGcoKT8obi5tZWRpYUtleXM9Vz8ubWVkaWFLZXlzLFByb21pc2UucmVzb2x2ZSgpKTpuLk4ua2V5U3lzdGVtQWNjZXNzLmNyZWF0ZU1lZGlhS2V5cygpLnRoZW4oRD0+e24ucU4oKXx8KG4ubWVkaWFLZXlzPUQsVz8uWWE/LnBnKCkmJihXLm1lZGlhS2V5cz1EKSl9KSkudGhlbigoKT0+e3ZhciBEPVc/LmVfKCk7CnJldHVybiBuLmVsZW1lbnQmJm4uZWxlbWVudCE9PUQmJm4uZWxlbWVudC5tZWRpYUtleXM/bi5lbGVtZW50LnNldE1lZGlhS2V5cyhudWxsKTpQcm9taXNlLnJlc29sdmUoKX0pLnRoZW4oKCk9PntuLmVsZW1lbnQ9Vz8uZV8oKTsKcmV0dXJuIG4uZWxlbWVudCYmbi5lbGVtZW50Lm1lZGlhS2V5cyE9PW4ubWVkaWFLZXlzP24uZWxlbWVudC5zZXRNZWRpYUtleXMobi5tZWRpYUtleXMpOlByb21pc2UucmVzb2x2ZSgpfSksbi5LOwp4aChuLk4pP24uSj1uZXcgKHZYKCkpKG4uTi5rZXlTeXN0ZW0pOmVUKG4uTik/KG4uSj1uZXcgKHZYKCkpKG4uTi5rZXlTeXN0ZW0pLG4uZWxlbWVudD8ud2Via2l0U2V0TWVkaWFLZXlzKG4uSikpOnFjVShuKTtyZXR1cm4gbnVsbH07CnR3TT1mdW5jdGlvbihuLFcpe3ZhciBEPW5ldyBVaW50OEFycmF5KDI3MCk7Zm9yKGxldCBiPTA7YjwxMzU7YisrKURbYioyXT0nPFBsYXlSZWFkeUNETURhdGEgdHlwZT0iTGljZW5zZUFjcXVpc2l0aW9uIj48TGljZW5zZUFjcXVpc2l0aW9uIHZlcnNpb249IjEuMCIgUHJvYWN0aXZlPSJ0cnVlIj48L0xpY2Vuc2VBY3F1aXNpdGlvbj48L1BsYXlSZWFkeUNETURhdGE+Jy5jaGFyQ29kZUF0KGIpO249bi5KLmNyZWF0ZVNlc3Npb24oInZpZGVvL21wNCIsVyxEKTtyZXR1cm4gbmV3IEl1KG51bGwsbnVsbCxudWxsLG51bGwsbil9OwpySTE9ZnVuY3Rpb24obixXKXtXPSRiWihXLG4uTi5DaSk7Vz1uLkouY3JlYXRlU2Vzc2lvbigidmlkZW8vbXA0IixXKTtyZXR1cm4gbmV3IEl1KG51bGwsbnVsbCxudWxsLG51bGwsVyxuLlYpfTsKUzA9ZnVuY3Rpb24obixXKXt2YXIgRD1uLmpbVy5zZXNzaW9uSWRdOyFEJiZuLlcmJihEPW4uVyxuLlc9bnVsbCxELnNlc3Npb25JZD1XLnNlc3Npb25JZCxuLmpbVy5zZXNzaW9uSWRdPUQpO3JldHVybiBEfTsKJGJaPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5zdWJhcnJheSg0KTtEPW5ldyBVaW50MTZBcnJheShELmJ1ZmZlcixELmJ5dGVPZmZzZXQsRC5ieXRlTGVuZ3RoLzIpO0Q9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLEQpLm1hdGNoKC9laz0oWzAtOWEtZl0rKS8pWzFdO3ZhciBiPSIiO2Zvcih2YXIgdj0wO3Y8RC5sZW5ndGg7dis9MiliKz1TdHJpbmcuZnJvbUNoYXJDb2RlKHBhcnNlSW50KEQuc3Vic3RyaW5nKHYsdisyKSwxNikpO0Q9YjtiPW5ldyBBcnJheUJ1ZmZlcihELmxlbmd0aCoyKTt2PW5ldyBVaW50MTZBcnJheShiKTtmb3IodmFyIGs9MDtrPEQubGVuZ3RoO2srKyl2W2tdPUQuY2hhckNvZGVBdChrKTtEPW5ldyBVaW50OEFycmF5KGIpO2I9MDtrPW5ldyBBcnJheUJ1ZmZlcihuLmJ5dGVMZW5ndGgrNCtELmJ5dGVMZW5ndGgrNCtXLmJ5dGVMZW5ndGgpO3Y9bmV3IFVpbnQ4QXJyYXkoayk7az1uZXcgRGF0YVZpZXcoayk7di5zZXQobik7Yis9bi5ieXRlTGVuZ3RoOwprLnNldFVpbnQzMihiLEQubGVuZ3RoLCEwKTtiKz00O3Yuc2V0KEQsYik7Yis9RC5sZW5ndGg7ay5zZXRVaW50MzIoYixXLmJ5dGVMZW5ndGgsITApO3Yuc2V0KFcsYis0KTtyZXR1cm4gdn07Ck5vQz1mdW5jdGlvbihuKXt2YXIgVz1HVFMobi5tZWRpYUtleXMsbi5tZWRpYUVsZW1lbnQpO1c/Vy50aGVuKFl6KCgpPT57c0lNKG4pfSksWXooRD0+e2lmKCFuLnFOKCkpe2cuWGooRCk7CnZhciBiPSJ0LmEiO0QgaW5zdGFuY2VvZiBET01FeGNlcHRpb24mJihiKz0iO24uIitELm5hbWUrIjttLiIrRC5tZXNzYWdlKTtuLldKKCJsaWNlbnNlZXJyb3IiLCJkcm0udW5hdmFpbGFibGUiLDEsYiwiSFRNTDVfTk9fQVZBSUxBQkxFX0ZPUk1BVFNfRkFMTEJBQ0siKX19KSk6KG4uSih7bWRrcmR5OjF9KSxuLkQ9ITApOwpuLk8mJihXPUdUUyhuLk8sbi5tZWRpYUVsZW1lbnQpKX07CnNJTT1mdW5jdGlvbihuKXtpZighbi5xTigpKWlmKG4uQi5TKCJodG1sNV9kcm1fc2V0X3NlcnZlcl9jZXJ0Iil8fG4uTi5OKCkpe2xldCBXPW4ubWVkaWFLZXlzLnNldFNlcnZlckNlcnRpZmljYXRlKCk7Vz9XLnRoZW4oWXooRD0+e24uQi5XWCgpJiZuLldKKCJjdG1wIiwic3NjIix7c3VjY2VzczpEfSl9KSxZeihEPT57bi5XSigiY3RtcCIsInNzY2UiLHtuOkQubmFtZSwKbTpELm1lc3NhZ2V9KX0pKS50aGVuKFl6KCgpPT57QTIobil9KSk6QTIobil9ZWxzZSBBMihuKX07ClljMT1mdW5jdGlvbihuLFcsRCl7bi5QWD0hMDtEPW5ldyBydShXLEQpO24uQi5TKCJodG1sNV9lbWVfbG9hZGVyX3N5bmMiKSYmKG4uVi5nZXQoVyl8fG4uVi5zZXQoVyxEKSk7cFVqKG4sRCl9OwpwVWo9ZnVuY3Rpb24obixXKXtpZighbi5xTigpKXtuLkooe29uSW5pdERhdGE6MX0pO2lmKG4uQi5TKCJodG1sNV9lbWVfbG9hZGVyX3N5bmMiKSYmbi52aWRlb0RhdGEuVyYmbi52aWRlb0RhdGEuVy5OKCkpe3ZhciBEPW4uSy5nZXQoVy5pbml0RGF0YSk7Vz1uLlYuZ2V0KFcuaW5pdERhdGEpO2lmKCFEfHwhVylyZXR1cm47Vz1EO0Q9Vy5pbml0RGF0YTtuLlYucmVtb3ZlKEQpO24uSy5yZW1vdmUoRCl9bi5KKHtpbml0ZDpXLmluaXREYXRhLmxlbmd0aCxjdDpXLmNvbnRlbnRUeXBlfSk7aWYobi5OLmZsYXZvcj09PSJ3aWRldmluZSIpaWYobi5WUSYmIW4udmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrKW1uKG4pO2Vsc2V7aWYoIShuLkIuUygidnA5X2RybV9saXZlIikmJm4udmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrJiZXLnFIKSl7bi5WUT0hMDtEPVcuY3J5cHRvUGVyaW9kSW5kZXg7dmFyIGI9Vy5OO1Z2dChXKTtXLnFIfHwoYiYmVy5OIT09Yj9uLldKKCJjdG1wIiwiY3BzbW0iLHtlbXNnOmIsCnBzc2g6Vy5OfSk6RCYmVy5jcnlwdG9QZXJpb2RJbmRleCE9PUQmJm4uV0ooImN0bXAiLCJjcGltbSIse2Vtc2c6RCxwc3NoOlcuY3J5cHRvUGVyaW9kSW5kZXh9KSk7bi5XSigid2lkZXZpbmVfc2V0X25lZWRfa2V5X2luZm8iLFcpfX1lbHNlIG4uUyQoVyl9fTsKbW49ZnVuY3Rpb24obil7aWYobi5QWCYmbi5EJiYhbi5iZCl7Zm9yKDtuLlgubGVuZ3RoOyl7bGV0IFc9bi5YWzBdLEQ9SG1TKG4pP2NraihXKTpnLkVBKFcuaW5pdERhdGEpO2lmKG4uTi5OKCkmJiFXLlVXKW4uWC5zaGlmdCgpO2Vsc2V7aWYobi5XLmdldChEKSlpZihuLk4uZmxhdm9yIT09ImZhaXJwbGF5Inx8bi5OLk4oKSl7bi5YLnNoaWZ0KCk7Y29udGludWV9ZWxzZSBuLlcuZGVsZXRlKEQpO1Z2dChXKTticmVha319bi5YLmxlbmd0aCYmbi5jcmVhdGVTZXNzaW9uKG4uWFswXSl9fTsKQTI9ZnVuY3Rpb24obil7bi5xTigpfHwobi5EPSEwLG4uSih7b25tZGtyZHk6MX0pLG1uKG4pKX07CkhtUz1mdW5jdGlvbihuKXtyZXR1cm4gbi5OLmZsYXZvcj09PSJ3aWRldmluZSImJm4udmlkZW9EYXRhLlMoImh0bWw1X2RybV9jcGlfbGljZW5zZV9rZXkiKX07CmY1eD1hc3luYyBmdW5jdGlvbihuKXtpZihnLmQ4KCkmJm4ubWVkaWFLZXlzLm1lZGlhS2V5cz8uZ2V0TWV0cmljcyl7dmFyIFc9YXdhaXQgbi5tZWRpYUtleXMuZ2V0TWV0cmljcygpO1cmJigoMCxnLkc5KShXKXx8KFc9Zy5IRyhXKSksL15bQS1aYS16MC05Xy1dKz17MCwzfSQvLnRlc3QoVyl8fChXPWcudXAoVyx2b2lkIDAsITApKSxuLldKKCJjdG1wIiwiZHJtIix7bWV0cmljczpXfSkpfX07CkpJYj1mdW5jdGlvbihuLFcpe2lmKG4udmlkZW9EYXRhLlkpcmV0dXJuITE7bi55US5udSs9MTtpZihuLnlRLm51PD0xMClyZXR1cm4hMTtXLmV4aWxlZD1gJHtuLnlRLm51fWA7bi5HcygicW9lLnN0YXJ0MTVzIixXKTtuLkwuV0ooInBsYXliYWNrc3RhbGxlZGF0c3RhcnQiKTtyZXR1cm4hMH07Ckk1Mj1mdW5jdGlvbihuKXtpZighbi5KKXtuLko9ITA7dmFyIFc9bi5MLmdldFBsYXllclN0YXRlKCk7Vz1XLmlzUGF1c2VkKCl8fFcuaXNTdXNwZW5kZWQoKTtuLkwub0ooKTtXJiYhT1Mobi52aWRlb0RhdGEpfHxuLkwuV0ooInNpZ25hdHVyZWV4cGlyZWQiKX19OwpLQz1mdW5jdGlvbihuLFcsRCl7dmFyIGI9bi52aWRlb0RhdGEuSix2PW4udmlkZW9EYXRhLlgsaz1uLnlRLlMoImh0bWw1X2Rpc2FibGVfY29kZWNfZmFsbGJhY2tfZm9yX2RybSIpJiZuLnZpZGVvRGF0YS5NaSgpO0FKKG4uTC5nZXRWaWRlb0RhdGEoKSkmJlA5VShuLkwsInBlIik7bi55US5adCgpLk4uUVEoU2N0KSYmKEQuYmtnPW4uTC5YTygpLmlzQmFja2dyb3VuZCgpPyIxIjoiMCIpO2lmKChXPT09InByb2dyZXNzaXZlLm5ldC5yZXRyeWV4aGF1c3RlZCJ8fFc9PT0iZm10LnVucGxheWFibGUifHxXPT09ImZtdC5kZWNvZGUiKSYmIW4uTC5oVS5qJiZiJiZiLml0YWc9PT0iMjIiKXJldHVybiBuLkwuaFUuaj0hMCxuLkdzKCJxb2UucmVzdGFydCIse3JlYXNvbjoiZm10LnVucGxheWFibGUuMjIifSksbi5MLlZ2KCksITA7dmFyIGg9ITE7aWYobi52aWRlb0RhdGEuaXNFeHRlcm5hbGx5SG9zdGVkUG9kY2FzdCl7aWYoaD1uLnZpZGVvRGF0YS5xdylELm1pbWVUeXBlPWgudHlwZSwKbi5VKCIzcHAiLHt1cmw6aC51cmx9KTtELm5zPSIzcHAiO24uTC5QVihXLDEsIlZJREVPX1VOQVZBSUxBQkxFIixnLlRDKChuZXcgZy5DaShXLEQsMSkpLmRldGFpbHMpKTtyZXR1cm4hMH12YXIgeD1uLmtzKzNFNDwoMCxnLlIpKCl8fG4uTi5pc0FjdGl2ZSgpO2lmKG4ueVEuUygiaHRtbDVfZW1wdHlfc3JjIikmJm4udmlkZW9EYXRhLmlzQWQoKSYmVz09PSJmbXQudW5wbGF5YWJsZSImJi9FbXB0eSBzcmMvLnRlc3QoYCR7RC5tc2d9YCkpcmV0dXJuIEQub3JpZ2luPSJlbXB0eXNyYyIsbi5HcygiYXV0aCIsRCksITA7dmFyIEw7aWYoTD0heClMPW4uTC5YTygpLEw9ISEoTC5CUCgpfHxMLmlzSW5saW5lKCl8fEwuaXNCYWNrZ3JvdW5kKCl8fEwuQW4oKXx8TC5qSSgpfHxMLlNJKCl8fEwuUTAoKSk7TCYmKEQubm9uZmc9InBhdXNlZCIseD0hMCxuLkwucGF1c2VWaWRlbygpKTtXIT09ImZtdC5kZWNvZGUiJiZXIT09ImZtdC51bnBsYXlhYmxlInx8IXY/LlYoKXx8KFNUKG4ueVEuVyx2LklCKSwKRC5hY2ZhbGxleHA9di5JQixoPXg9ITApOyF4JiZuLlc+MCYmKG4uTi5zdGFydCgpLHg9ITAsRC5kZWxheWVkPSIxIiwtLW4uVyk7dj1uLkwubG9hZGVyO3h8fCFiPy5NVygpJiYhYj8uWCgpfHxrfHwoU1Qobi55US5XLGIuSUIpLGg9eD0hMCxELmNmYWxsZXhwPWIuSUIpO2lmKCF4KXJldHVybiBKSWIobixEKTtrPSExO24uaj9uLmtzPSgwLGcuUikoKTprPW4uaj0hMDt4PW4udmlkZW9EYXRhO3guY0o/KHg9eC5jSi5qKCksTD1EYXRlLm5vdygpLzFFMysxODAwLHg9eDxMKTp4PSExO0QuZT1XO3gmJihELnN0YWxlcHJvZz0iMSIpO24uR3MoInFvZS5yZXN0YXJ0IixEKTtpZih4JiZuLlExKCkpcmV0dXJuIEk1MihuKSwhMDtpZighKCFnLnViKCJwaGlsaXBzIil8fFc9PT0iZm10LnVucGxheWFibGUiJiZ2JiZ2LkNIfHxuLnlRLk4uY3BsYXRmb3JtPT09IkdBTUVfQ09OU09MRSIpKXRyeXt3aW5kb3cuY2xvc2UoKX1jYXRjaHt9YiYmYi5NVygpJiYhbi55US5TKCJodG1sNV9hbGxvd19hdjFfcmV0cnlfaW5fc2Vzc2lvbiIpPwooaD1uLnlRLlcsaC5ZPSEwLGg9aC5OPSEwKTp2PyhXPW4ueVEuUygiaHRtbDVfZGlzYWJsZV9zdHVubmluZ19mb3Jfc2QiKSxEPW4udmlkZW9EYXRhLlcsRD1EPy52aWRlb0luZm9zPy5sZW5ndGg/RC52aWRlb0luZm9zW0QudmlkZW9JbmZvcy5sZW5ndGgtMV06bnVsbCxiPWImJkQmJmIudmlkZW8mJkQudmlkZW8mJmIudmlkZW8ucXVhbGl0eU9yZGluYWw9PT1ELnZpZGVvLnF1YWxpdHlPcmRpbmFsLGt8fFcmJmJ8fChiPShiPUkkKHYudmlkZW9UcmFjayl8fHYudmlkZW9UcmFjay5OKT9iLlBKOnYudmlkZW9UcmFjay5QSixiLkZGKz0xLHYucG9saWN5Lk4/V2wodi5rNixiLCEwKTphcSh2LmNWLGIsITApKSk6bi52aWRlb0RhdGEuY0omJm4udmlkZW9EYXRhLmNKLlgoKTtuLk4uaXNBY3RpdmUoKXx8bi5MLkJvKGgpO3JldHVybiEwfTsKQUlNPWZ1bmN0aW9uKG4sVyl7aWYoKG49bi5MLmg1KCkpJiYoVy5lcnJvckNvZGU9PT0iZm10LnVucGxheWFibGUifHxXLmVycm9yQ29kZT09PSJodG1sNS5pbnZhbGlkc3RhdGUiKSl7bGV0IEQ9bi5WRygpO1cuZGV0YWlscy5tZXJyPUQ/RC50b1N0cmluZygpOiIwIjtXLmRldGFpbHMubW1zZz1uLnM4KCl9fTsKbWJNPWZ1bmN0aW9uKG4pe3JldHVybiBuLmVycm9yQ29kZT09PSJuZXQuYmFkc3RhdHVzIiYmKG4uc2V2ZXJpdHk9PT0xfHwhIW4uZGV0YWlscy5mbXRfdW5hdil9OwpLZ3g9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi55US5TKCJodG1sNV91c2VfbmV0d29ya19lcnJvcl9jb2RlX2VudW1zIikmJlcuZGV0YWlscy5yYz09PTQwM3x8Vy5kZXRhaWxzLnJjPT09IjQwMyI/KG49Vy5lcnJvckNvZGUsbj09PSJuZXQuYmFkc3RhdHVzInx8bj09PSJtYW5pZmVzdC5uZXQucmV0cnlleGhhdXN0ZWQiKTohMX07Ck9YPWZ1bmN0aW9uKG4sVyxEKXt0cnl7Vz17ZGV0YWlsOmBwci4ke1d9YH0sZy54NihuLnlRKXx8bG8obi55USk9PT0iVFZIVE1MNV9GT1JfS0lEUyI/bi5MLlBWKCJxb2UucmVzdGFydCIsRD8xOjIsdm9pZCAwLGcuVEMoVyksIjciKToobi5HcygicW9lLnJlc3RhcnQiLFcpLHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKSl9Y2F0Y2h7fX07Ck9tMj1mdW5jdGlvbihuLFcpe2lmKCFLZ3gobixXKSYmIW4uSilyZXR1cm4hMTtXLmRldGFpbHMuc3RzPSIyMDY1NSI7aWYobi5RMSgpKXJldHVybiBqMihXLnNldmVyaXR5KSYmKFc9T2JqZWN0LmFzc2lnbih7ZTpXLmVycm9yQ29kZX0sVy5kZXRhaWxzKSxXPW5ldyBnLkNpKCJxb2UucmVzdGFydCIsVykpLG4uR3MoVy5lcnJvckNvZGUsVy5kZXRhaWxzKSxJNTIobiksITA7KDAsZy5SKSgpLW4ueVEuQ3U+NjA0OEU1JiZPWChuLCJzaWduYXR1cmUiLCEwKTtyZXR1cm4hMX07ClBNaj1mdW5jdGlvbihuKXtpZihuLnZpZGVvRGF0YS5lcnJvckRldGFpbD09PSI3IiYmZy5rNihuLnlRKSl7bGV0IFc9IW4udmlkZW9EYXRhLmlzSW5saW5lUGxheWJhY2tOb0FkO1cmJm4ueVEuVFErKztPWChuLCJpbm5lcnR1YmVfcGxheWVyX3JlbG9hZF9yZXF1aXJlZCIsVyYmbi55US5UUT4xKTtyZXR1cm4hMH1yZXR1cm4hMX07ClByPWZ1bmN0aW9uKG4sVz0iZm10Lm5vbmVhdmFpbGFibGUiKXt2YXIgRD1uLnlRLlc7RC5LPSExO0QuTj0hMDtuLkdzKCJxb2UucmVzdGFydCIse2U6VyxkZXRhaWw6ImhkciJ9KTtuLkwuQm8oITApfTsKWm1oPWZ1bmN0aW9uKG4pe2lmKG4uTC5YTygpLmlzSW5saW5lKCkpcmV0dXJuIFlaO249TGdbcDcoKV07cmV0dXJuIHZBKCJhdXRvIixuLCExLCJzIil9Owp5SXI9ZnVuY3Rpb24obixXKXt2YXIgRDthOmlmKChEPVcuTikmJkQudmlkZW9JbmZvcy5sZW5ndGgpe2Zvcih2YXIgYiBvZiBELnZpZGVvSW5mb3MpaWYoYi5qPy5zbW9vdGgpe0Q9Yi52aWRlby5xdWFsaXR5T3JkaW5hbDticmVhayBhfUQ9RC52aWRlb0luZm9zWzBdLnZpZGVvLnF1YWxpdHlPcmRpbmFsfWVsc2UgRD0wO2I9ITA7bi5CLlMoIndlYl9yZWxheF9hcm1fY2FwIikmJm5hdmlnYXRvci5KRiYmKGI9ITEpO2ImJihnLnViKCJhcm12NyIpfHxnLnViKCJhYXJjaDY0Iil8fGcudWIoImFuZHJvaWQiKSkmJiFnLms2KG4uQikmJlcuTi52aWRlb0luZm9zWzBdLlgoKSYmKEQ9TWF0aC5taW4oRCxORy5sYXJnZSkpO2I9Zy5kTShuLkIuZXhwZXJpbWVudHMsImh0bWw1X2NoaXBzZXRfc29mdF9jYXAiKTtiPjAmJihEPU1hdGgubWluKEQsYikpO2I9bi5CLncwKCkuTi5RUShVYlMpO2I+MCYmKEQ9TWF0aC5taW4oRCxiKSk7aWYoYj1nLmRNKG4uQi5leHBlcmltZW50cywiaHRtbDVfbWF4X3ZlcnRpY2FsX3Jlc29sdXRpb24iKSl7bGV0IGg9CjQzMjA7Zm9yKHZhciB2PTA7djxXLk4udmlkZW9JbmZvcy5sZW5ndGg7disrKXt2YXIgaz1XLk4udmlkZW9JbmZvc1t2XTtrLnZpZGVvLmhlaWdodD5iJiYoaD1NYXRoLm1pbihoLGsudmlkZW8ucXVhbGl0eU9yZGluYWwpKX1pZihoPDQzMjApe3Y9MDtmb3Ioaz0wO2s8Vy5OLnZpZGVvSW5mb3MubGVuZ3RoO2srKyl7bGV0IHg9Vy5OLnZpZGVvSW5mb3Nba10udmlkZW8ucXVhbGl0eU9yZGluYWw7eDxoJiYodj1NYXRoLm1heCh2LHgpKX12JiYoRD1NYXRoLm1pbih2LEQpKX1uLkwuVSgibXZyIix7aDpiLGNwOkR9KX1yZXR1cm4gbmV3IGIzKDAsRCwhMSwibyIpfTsKaW1yPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9NDMyMDshbi5CLmp8fGcuQ04obi5CKXx8bi5CLlMoImhsc19mb3Jfdm9kIil8fG4uQi5TKCJtd2ViX3JlbW92ZV8zNjBwX2NhcCIpfHwoRD1ORy5tZWRpdW0pO3ZhciBiPWcuZE0obi5CLmV4cGVyaW1lbnRzLCJodG1sNV9kZWZhdWx0X3F1YWxpdHlfY2FwIik7YiYmVy5OLk4oKSYmKG4uQi5TKCJodG1sNV9hbHdheXNfYXBwbHlfZGVmYXVsdF9xdWFsaXR5X2NhcCIpfHwhVy52aWRlb0RhdGEuaTUmJiFXLnZpZGVvRGF0YS5jb250ZW50UHJvdGVjdGlvbikmJihEPU1hdGgubWluKEQsYikpO2I9Zy5kTShuLkIuZXhwZXJpbWVudHMsImh0bWw1X3JhbmRvbV9wbGF5YmFja19jYXAiKTt2YXIgdj0vW2EtaF0kLztiJiZ2LnRlc3QoVy52aWRlb0RhdGEuY2xpZW50UGxheWJhY2tOb25jZSkmJihEPU1hdGgubWluKEQsYikpO2lmKHY9Yj1nLmRNKG4uQi5leHBlcmltZW50cywiaHRtbDVfaGZyX3F1YWxpdHlfY2FwIikpYTp7dj1XLk47aWYodi5OKCkpZm9yKHZhciBrIG9mIHYudmlkZW9JbmZvcylpZihrLnZpZGVvLkooKSl7dj0KITA7YnJlYWsgYX12PSExfXYmJihEPU1hdGgubWluKEQsYikpOyhrPWcuZE0obi5CLmV4cGVyaW1lbnRzLCJodG1sNV9saXZlX3F1YWxpdHlfY2FwIikpJiZXLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFjayYmKEQ9TWF0aC5taW4oRCxrKSk7RD1FUU0obixXLEQpO249Zy5kTShuLkIuZXhwZXJpbWVudHMsImh0bWw1X2J5dGVyYXRlX3NvZnRfY2FwIik7cmV0dXJuIG5ldyBiMygwLEQ9PT00MzIwPzA6RCwhMSwiZCIsbil9OwpaVj1mdW5jdGlvbihuLFcpe3ZhciBEPW4uTC5YTygpO3JldHVybiBELmlzSW5saW5lKCkmJiFXLnVuY2FwSW5saW5lUXVhbGl0eT9uZXcgYjMoMCw0ODAsITEsInYiKTpnLllOKFcpP1laOkQuaXNCYWNrZ3JvdW5kKCkmJmcudkkoKS8xRTM+NjAmJiFnLms2KG4uQik/bmV3IGIzKDAsMzYwLCExLCJ2Iik6WVp9OwpVWD1mdW5jdGlvbihuLFcsRCl7aWYobi5CLmV4cGVyaW1lbnRzLkVxKCJodG1sNV9kaXNhYmxlX2NsaWVudF9hdXRvbmF2X2NhcF9mb3Jfb25lc2llIikmJlcuaHEoKXx8Zy5rNihuLkIpJiYocDcoLTEpPj0xMDgwfHxXLm9zaWQpKXJldHVybiBZWjt2YXIgYj1nLmRNKG4uQi5leHBlcmltZW50cywiaHRtbDVfYXV0b25hdl9xdWFsaXR5X2NhcCIpLHY9Zy5kTShuLkIuZXhwZXJpbWVudHMsImh0bWw1X2F1dG9uYXZfY2FwX2lkbGVfc2VjcyIpO3JldHVybiBiJiZXLmlzQXV0b25hdiYmZy52SSgpLzFFMz52PyhEJiYoYj1FUU0obixELGIpKSxuZXcgYjMoMCxiLCExLCJlIikpOllafTsKeTM9ZnVuY3Rpb24obixXKXtpZighVy5OLk4oKSlyZXR1cm4gbi5qP25ldyBiMygwLDM2MCwhMSwiYiIpOllaO3ZhciBEPSExLGI9ITE7Zm9yKHZhciB2IG9mIFcuTi52aWRlb0luZm9zKXYuTVcoKT9EPSEwOmI9ITA7RD1EJiZiO2I9MDt2PWcuZE0obi5CLmV4cGVyaW1lbnRzLCJodG1sNV9wZXJmb3JtYW5jZV9jYXBfZmxvb3IiKTt2PW4uQi5qPzI0MDp2O2ZvcihsZXQgayBvZiBXLk4udmlkZW9JbmZvcyl7aWYoRCYmay5NVygpKWNvbnRpbnVlO1c9VkMoay5JQixrLnZpZGVvLmZwcyxuLlcpO2xldCBoPWsudmlkZW8ucXVhbGl0eU9yZGluYWw7aWYoTWF0aC5tYXgoVyx2KT49aCl7Yj1oO2JyZWFrfX1yZXR1cm4gbmV3IGIzKDAsYiwhMSwiYiIpfTsKaW09ZnVuY3Rpb24obixXKXt2YXIgRD1FWChuLFcuTj8udmlkZW9JbmZvcyksYj1uLkwuZ2V0UGxheWJhY2tSYXRlKCk7cmV0dXJuIGI+MSYmRD8obj1KeihuLkIuVyxXLk4udmlkZW9JbmZvcyxiKSxuZXcgYjMoMCxuLCEwLCJvIikpOm5ldyBiMygwLDAsITEsIm8iKX07CnVtPWZ1bmN0aW9uKG4sVyxEKXtnLms2KG4uQikmJihEPUQuY29tcG9zZShuLk1oKFcpKSk7cmV0dXJuIER9OwpFWD1mdW5jdGlvbihuLFcpe3JldHVybiBXJiZnLms2KG4uQik/Vy5zb21lKEQ9PkQudmlkZW8uSigpKTohMX07CkVRTT1mdW5jdGlvbihuLFcsRCl7aWYobi5TKCJodG1sNV9vcHRpbWFsaXR5X2RlZmF1bHRzX2Nob29zZXNfbmV4dF9oaWdoZXIiKSYmRClmb3Iobj1XLk4udmlkZW9JbmZvcyxXPTE7VzxuLmxlbmd0aDtXKyspaWYobltXXS52aWRlby5xdWFsaXR5T3JkaW5hbDxEKXJldHVybiBuW1ctMV0udmlkZW8ucXVhbGl0eU9yZGluYWw7cmV0dXJuIER9Owp1aWo9YXN5bmMgZnVuY3Rpb24obil7aWYoIW4uTi5OKCl8fHR5cGVvZiBuYXZpZ2F0b3IubWVkaWFDYXBhYmlsaXRpZXM/LmRlY29kaW5nSW5mbyE9PSJmdW5jdGlvbiIpcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO2F3YWl0IFByb21pc2UucmVzb2x2ZSgpO2ZvcihsZXQgVyBvZiBuLk4udmlkZW9JbmZvcylhd2FpdCBrM3IoVyl9OwpvUTI9ZnVuY3Rpb24obixXKXt2YXIgRD1XLklCLGI9Vy52aWRlby5mcHMsdj1XLnZpZGVvLnF1YWxpdHlPcmRpbmFsLTEsaz1uLlc7Vz1gJHtEfSR7Yj40OT8icDYwIjpiPjMyPyJwNDgiOiIifWA7RD1WQyhELGIsayk7dj4wJiYoRD1NYXRoLm1pbihELHYpKTshY0YuaGFzKFcpJiZKcygpLmluY2x1ZGVzKFcpPyhiPWY3KCksK2JbV10+MCYmKEQ9TWF0aC5taW4oK2JbV10sRCkpLGJbV10hPT1EJiYoYltXXT1ELGcuUEIoInl0LXBsYXllci1wZXJmb3JtYW5jZS1jYXAiLGIsMjU5MkUzKSkpOmNGLmhhcyhXKXx8az09bnVsbD8oYj1KcygpLnNsaWNlKCksYi5pbmNsdWRlcyhXKXx8KGIucHVzaChXKSxnLlBCKCJ5dC1wbGF5ZXItcGVyZm9ybWFuY2UtY2FwLWFjdGl2ZS1zZXQiLGIsMjU5MkUzKSksUUMuc2V0KFcsRCkpOihjRi5hZGQoVyksaz8uc2V0KFcsRCkpO24uTC5zVCgpfTsKZGJTPWZ1bmN0aW9uKCl7cmV0dXJuIFd4KGY3KCksbj0+YCR7bn1gKX07Cno4Mj1mdW5jdGlvbihuLFcsRCxiKXtpZighV3x8IUR8fCFXLnZpZGVvRGF0YS5KKXJldHVybiExO3ZhciB2PWcuZE0obi5CLmV4cGVyaW1lbnRzLCJodG1sNV9kZl9kb3duZ3JhZGVfdGhyZXNoIiksaz1uLlMoImh0bWw1X2xvZ19tZWRpYV9wZXJmX2luZm8iKTtpZighKCgwLGcuUikoKS1uLlg8NUUzPzA6a3x8dj4wKSlyZXR1cm4hMTt2YXIgaD0oKDAsZy5SKSgpLW4uWCkvMUUzO24uWD0oMCxnLlIpKCk7RD1ELmdldFZpZGVvUGxheWJhY2tRdWFsaXR5KCk7aWYoIUQpcmV0dXJuITE7dmFyIHg9RC5kcm9wcGVkVmlkZW9GcmFtZXMtbi5WLEw9RC50b3RhbFZpZGVvRnJhbWVzLW4udG90YWxGcmFtZXM7bi5WPUQuZHJvcHBlZFZpZGVvRnJhbWVzO24udG90YWxGcmFtZXM9RC50b3RhbFZpZGVvRnJhbWVzO3ZhciBlPUQuZGlzcGxheUNvbXBvc2l0ZWRWaWRlb0ZyYW1lcz09PTA/MDpELmRpc3BsYXlDb21wb3NpdGVkVmlkZW9GcmFtZXN8fC0xO2smJm4uQi5XWCgpJiZuLkwuVSgiZGRmIiwKe2RyOkQuZHJvcHBlZFZpZGVvRnJhbWVzLGRlOkQudG90YWxWaWRlb0ZyYW1lcyxjb21wOmV9KTtpZihiKXJldHVybiBuLk49MCwhMTtpZigoTC14KS9oPm4uWXx8IXZ8fGcuazYobi5CKSlyZXR1cm4hMTtuLk49KEw+NjA/eC9MOjApPnY/bi5OKzE6MDtpZihuLk4hPT0zKXJldHVybiExO29RMihuLFcudmlkZW9EYXRhLkopO24uTC5VKCJkZmQiLE9iamVjdC5hc3NpZ24oe2RyOkQuZHJvcHBlZFZpZGVvRnJhbWVzLGRlOkQudG90YWxWaWRlb0ZyYW1lc30sZGJTKCkpKTtyZXR1cm4hMH07Cmw1VT1mdW5jdGlvbihuLFcpe24uUygiaHRtbDVfbG9nX21lZGlhX3BlcmZfaW5mbyIpJiYobi5MLlUoInBlcmZkYiIsZGJTKCkpLG4uTC5VKCJzZXNzaW9ucGVyZmRiIixPYmplY3QuZnJvbUVudHJpZXMoUUMuZW50cmllcygpKSksbi5MLlUoInBsYXliYWNrcGVyZmRiIixPYmplY3QuZnJvbUVudHJpZXMobi5XLmVudHJpZXMoKSkpLG4uTC5VKCJod2MiLHtuY2g6bmF2aWdhdG9yLmhhcmR3YXJlQ29uY3VycmVuY3l9LCEwKSxXJiZuLkwuVSgibWNkYiIse2l0YWdzOlcuTi52aWRlb0luZm9zLmZpbHRlcihEPT5ELmo/LnNtb290aD09PSExKS5tYXAoRD0+RC5pdGFnKS5qb2luKCItIil9KSl9OwpiQT1mdW5jdGlvbihuLFcsRD0hMSl7bi5ZYT8uV1goKSYmbi5ZYS5VKCJybXMiLFcsRCl9OwpvdT1mdW5jdGlvbihuKXtuPW4uTygpO3JldHVybiBuLmxlbmd0aDwxP05hTjpuLmVuZChuLmxlbmd0aC0xKX07ClRvaT1mdW5jdGlvbihuLFcpe24uWGImJm4uWGIuZXF1YWxzKFcpfHwobi5YYiYmbi5YYi5kaXNwb3NlKCksbi5YYj1XKX07CmpJaj1mdW5jdGlvbihuKXshbi5XJiZjUigpJiYobi5qP24uai50aGVuKCgpPT5qSWoobikpOm4uWF8oKXx8KG4uVz1uLlV6KCkpKX07CkNNeD1mdW5jdGlvbihuLFcsRCl7bi5pc1BhdXNlZCgpfHxuLmdldEN1cnJlbnRUaW1lKCk+V3x8RD4xMHx8KG4ucGxheSgpLGcubiQoKCk9PntDTXgobixuLmdldEN1cnJlbnRUaW1lKCksRCsxKX0sNTAwKSl9OwpCb3Q9ZnVuY3Rpb24obixXKXtpZihuLlgoKT09PTB8fG4uaGFzRXJyb3IoKSlyZXR1cm4hMTt2YXIgRD1uLmdldEN1cnJlbnRUaW1lKCk+MDtyZXR1cm4gVz49MCYmKG49bi5PKCksbi5sZW5ndGh8fCFEKT9CUihuLFcpOkR9OwpkUz1mdW5jdGlvbihuKXtpZihuLlhfKCl8fG4uVEMoKSluLllhJiZuLllhLkNjKCJyc19zIiksZy5NTCYmbi5nZXRDdXJyZW50VGltZSgpPjAmJm4uc2Vla1RvKDApLG4uVlEoKSxuLmUkKCksbi5sb2FkKCksVG9pKG4sbnVsbCk7ZGVsZXRlIG4uan07CkZnYj1mdW5jdGlvbihuKXt2YXIgVz1uLkooKTtyZXR1cm4gTSQoVykmJm4uZ2V0RHVyYXRpb24oKT9XLmVuZChXLmxlbmd0aC0xKTowfTsKelg9ZnVuY3Rpb24obil7c3dpdGNoKG4uVkcoKSl7Y2FzZSAyOnJldHVybiJwcm9ncmVzc2l2ZS5uZXQucmV0cnlleGhhdXN0ZWQiO2Nhc2UgMzpyZXR1cm4gbj1uLnM4KCksbj8uaW5jbHVkZXMoIk1FRElBX0VSUl9DQVBBQklMSVRZX0NIQU5HRUQiKXx8d1VNJiZuPy5pbmNsdWRlcygiYXVkaW9fb3V0cHV0X2NoYW5nZSIpPyJjYXBhYmlsaXR5LmNoYW5nZWQiOiJmbXQuZGVjb2RlIjtjYXNlIDQ6cmV0dXJuImZtdC51bnBsYXlhYmxlIjtjYXNlIDU6cmV0dXJuImRybS51bmF2YWlsYWJsZSI7Y2FzZSAxRTM6cmV0dXJuImNhcGFiaWxpdHkuY2hhbmdlZCI7ZGVmYXVsdDpyZXR1cm4gbnVsbH19OwpNd2g9ZnVuY3Rpb24obil7dmFyIFc9bnVsbDtuWzRdJiYoVz1uWzRdLFc9e2Vycm9yQ29kZTpXWzVdLGVycm9yRGV0YWlsOldbNl0sZXJyb3JNZXNzYWdlOldbN10saHk6V1s4XSxUaDpXWzldLHdpOldbMTBdLEp4OldbMTFdLGNwbjpXWzEyXX0pO3JldHVybiBuZXcgZy5sbShuWzFdLFcsblsyXSxuWzNdKX07CmwxPWZ1bmN0aW9uKG4pe3JldHVybiBuLmlzUGxheWluZygpJiYhbi5OKDE2KSYmIW4uTigzMil9OwpUWD1mdW5jdGlvbihuKXtyZXR1cm4gbi5OKDEyOCk/LTE6bi5OKDIpPzA6bi5OKDIwNDgpPzM6bi5OKDY0KT8tMTpuLk4oMSkmJiFuLk4oMzIpPzM6bi5OKDgpPzE6bi5OKDQpPzI6LTF9OwpqMD1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKCEoVz09PW4uc3RhdGUmJkQ9PT1uLmhPJiZiPT09bi5zZWVrU291cmNlJiZ2PT09bi5zdG9wcGFnZVJlYXNvbnx8VyE9PXZvaWQgMCYmKFcmMTI4JiYhRHx8VyYyJiZXJjE2KSkpe3ZhciBrO2lmKGs9VylrPVd8fG4uc3RhdGUsaz0hIShrJjE2fHxrJjMyKTtuPW5ldyBnLmxtKFcsRCxrP2I/YjpuLnNlZWtTb3VyY2U6bnVsbCx2KX1yZXR1cm4gbn07CkNDPWZ1bmN0aW9uKG4sVyxEPSExKXtyZXR1cm4gUjhDKG4sVy5nZXRDdXJyZW50VGltZSgpLCgwLGcuUikoKSxXLnpzKCksRCl9OwpCcj1mdW5jdGlvbihuLFcsRD1udWxsLGI9bnVsbCl7cmV0dXJuIGowKG4sbi5zdGF0ZXxXLG51bGwsRCxiKX07CkZiPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGowKG4sbi5zdGF0ZSZ+VyxudWxsLG51bGwsbnVsbCl9Owp3Uz1mdW5jdGlvbihuLFcsRCxiPW51bGwsdj1udWxsKXtyZXR1cm4gajAobiwobi5zdGF0ZXxXKSZ+RCxudWxsLGIsdil9OwpRSVM9ZnVuY3Rpb24obixXKXtyZXR1cm4gVy5zdGF0ZT09PW4uc3RhdGUmJlcuaE89PT1uLmhPfTsKVndNPWZ1bmN0aW9uKG4pe3N3aXRjaChuLkIucGxheWVyQ2FuYXJ5U3RhZ2U/LnRvTG93ZXJDYXNlKCkpe2Nhc2UgInhzbWFsbCI6cmV0dXJuIkhUTUw1X1BMQVlFUl9DQU5BUllfU1RBR0VfWFNNQUxMIjtjYXNlICJzbWFsbCI6cmV0dXJuIkhUTUw1X1BMQVlFUl9DQU5BUllfU1RBR0VfU01BTEwiO2Nhc2UgIm1lZGl1bSI6cmV0dXJuIkhUTUw1X1BMQVlFUl9DQU5BUllfU1RBR0VfTUVESVVNIjtjYXNlICJsYXJnZSI6cmV0dXJuIkhUTUw1X1BMQVlFUl9DQU5BUllfU1RBR0VfTEFSR0UiO2Nhc2UgInhsYXJnZSI6cmV0dXJuIkhUTUw1X1BMQVlFUl9DQU5BUllfU1RBR0VfWExBUkdFIjtkZWZhdWx0OnJldHVybiJIVE1MNV9QTEFZRVJfQ0FOQVJZX1NUQUdFX1VOU1BFQ0lGSUVEIn19OwpjSWo9ZnVuY3Rpb24obil7bi5OPj0wfHwobi5wcm92aWRlci5MLmdldFZpc2liaWxpdHlTdGF0ZSgpPT09Mz9uLlY9ITA6KG4uTj1nLlJrKG4ucHJvdmlkZXIpLG4uZGVsYXkuc3RhcnQoKSkpfTsKYTVyPWZ1bmN0aW9uKG4pe2lmKCEobi5KPDApKXt2YXIgVz1nLlJrKG4ucHJvdmlkZXIpLEQ9Vy1uLmo7bi5qPVc7bi5wbGF5ZXJTdGF0ZS5KKCk/bi5wbGF5VGltZVNlY3MrPUQ6bi5wbGF5ZXJTdGF0ZS5pc0J1ZmZlcmluZygpJiYhbi5wbGF5ZXJTdGF0ZS5OKDE2KSYmKG4ucmVidWZmZXJUaW1lU2Vjcys9RCl9fTsKUnU9ZnVuY3Rpb24obixXPSExKXtuLk4uWD1XO24uTi5zdGFydFRpbWU9bi5XO24uTi5lbmRUaW1lPW4uSjtuLmpWPy5sZW5ndGgmJihuLk4ualY9bi5qVik7bi5yWD8ubGVuZ3RoJiYobi5OLnJYPW4uclgpO1c9ITE7dmFyIEQ9Zy5VTShuLnNlZ21lbnRzKTtuLnNlZ21lbnRzLmxlbmd0aCYmIUQ/LlgmJkQ/LmlzRW1wdHkoKT8obi5zZWdtZW50c1tuLnNlZ21lbnRzLmxlbmd0aC0xXS5wcmV2aW91c2x5RW5kZWQmJihuLk4ucHJldmlvdXNseUVuZGVkPSEwKSxuLnNlZ21lbnRzW24uc2VnbWVudHMubGVuZ3RoLTFdPW4uTixXPSEwKTpuLnNlZ21lbnRzLmxlbmd0aCYmbi5OLmlzRW1wdHkoKSYmIW4uTi5YfHwobi5zZWdtZW50cy5wdXNoKG4uTiksVz0hMCk7Vz8obi5OLmVuZFRpbWU9PT0wJiYobi5wcmV2aW91c2x5RW5kZWQ9ITEpLG4uTi5yWD8ubGVuZ3RoJiZuLnByb3ZpZGVyLkwuVSgic2RhaSIse2F0dGFjaF9tZXRhOjEsc3Q6bi5OLnN0YXJ0VGltZSxldDpuLk4uZW5kVGltZSxzZWdfaWR4Om4uc2VnbWVudHMubGVuZ3RoLQoxfSkpOm4uTi5wcmV2aW91c2x5RW5kZWQmJihuLnByZXZpb3VzbHlFbmRlZD0hMCk7bi5WKz1uLkotbi5XO24uTj1NbShuLnByb3ZpZGVyKTtuLk4ucHJldmlvdXNseUVuZGVkPW4ucHJldmlvdXNseUVuZGVkO24ucHJvdmlkZXIuQi5adCgpLk4uUVEobm9yKSYmKG4uais9SlNPTi5zdHJpbmdpZnkobi5OKS5sZW5ndGgpO24ucHJldmlvdXNseUVuZGVkPSExO24uVz1uLko7cmV0dXJuIFc/Zy5VTShuLnNlZ21lbnRzKTp2b2lkIDB9OwpXM1o9ZnVuY3Rpb24obil7RHIobi5LKTtuLks9TmFOfTsKRGoyPWZ1bmN0aW9uKG4pe1czWihuKTtuLks9VzAoKCk9PntuLnVwZGF0ZSgpfSwxMDApOwpuLnJ6PWcuUmsobi5wcm92aWRlcik7bi5OPU1tKG4ucHJvdmlkZXIpfTsKYlh0PWZ1bmN0aW9uKG4sVyxEKXtELT1uLnJ6O3JldHVybiBXPT09bi5KJiZEPi41fTsKZy5RMz1mdW5jdGlvbihuLFcpe3ZhciBEPW4uc2VuZFZpc2l0b3JJZEhlYWRlcj9uLnZpc2l0b3JEYXRhOnZvaWQgMDtyZXR1cm4gZy5IRShuLkIsbi5hY2Nlc3NUb2tlbikudGhlbihiPT5qUihuLnVyaSxuLkIsbi5wYWdlSWQsRCxiLFcpKX07Cmcudm9qPWZ1bmN0aW9uKG4pe24uaW5kZXhPZigid2F0Y2h0aW1lIikhPT0tMSYmZy56VSgiZ2VsRGVidWdnaW5nRXZlbnQiLHt2c3MzZGVidWdnaW5nRXZlbnQ6e3ZzczJQaW5nOm59fSl9OwprcGk9ZnVuY3Rpb24obixXKXtuLmF0dGVzdGF0aW9uUmVzcG9uc2UmJmcuUTMobikudGhlbihEPT57RD1EfHx7fTtELm1ldGhvZD0iUE9TVCI7RC5wb3N0UGFyYW1zPXthdHI6bi5hdHRlc3RhdGlvblJlc3BvbnNlfTtuLlMkP24uVlE/Zy5IVSgpLnNlbmRBbmRXcml0ZShXLEQpOmcuSFUoKS5zZW5kVGhlbldyaXRlKFcsRCk6Zy5lZChXLEQpfSl9OwpoeWk9ZnVuY3Rpb24obil7dmFyIFc9e08zOltdfTtpZihnLm9NKG4uc2VnbWVudHMsRD0+ISFELmpWfHwhIUQuclgpKXtmb3IobGV0IEQgb2Ygbi5zZWdtZW50cylXLk8zLnB1c2goe2pWOkQualZ8fFtdLApyWDpELnJYfHxbXX0pO249Zy5saCh7Ykw6V30sUV8xKTtyZXR1cm4gZy5FQShuLDQpfX07CmJKPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGcuaV8oVyxuLkopLmpvaW4oIiwiKX07CnZ5TT1mdW5jdGlvbihuLFcpe2lmKFcmJm4uail7dmFyIEQ9bmV3IFNldChbInEiLCJmZWF0dXJlIiwibW9zIl0pLGI9bmV3IFNldCgiYXV0b3BsYXkgY2wgbGVuIGZleHAgZGVsYXkgZWwgbnMgYWRmb3JtYXQiLnNwbGl0KCIgIikpLHY9bmV3IFNldChbImFxaSIsImF1dG9uYXYiLCJsaXN0Iiwic3NydCIsInVwdCJdKTtuLmoubnM9PT0iM3BwIiYmKFcubnM9IjNwcCIpO2ZvcihsZXQgayBvZiBPYmplY3Qua2V5cyhuLmopKWIuaGFzKGspfHxELmhhcyhrKXx8di5oYXMoaykmJiFuLmpba118fChXW2tdPW4ualtrXSl9fTsKeGpqPWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlICJwbGF5aW5nIjpyZXR1cm4iUExBWUVSX1BMQVlCQUNLX1NUQVRFX1BMQVlJTkciO2Nhc2UgInBhdXNlZCI6cmV0dXJuIlBMQVlFUl9QTEFZQkFDS19TVEFURV9QQVVTRUQiO2Nhc2UgImJ1ZmZlcmluZyI6cmV0dXJuIlBMQVlFUl9QTEFZQkFDS19TVEFURV9CVUZGRVJJTkciO2Nhc2UgInNlZWtpbmciOnJldHVybiJQTEFZRVJfUExBWUJBQ0tfU1RBVEVfU0VFS0lORyI7Y2FzZSAiZW5kZWQiOnJldHVybiJQTEFZRVJfUExBWUJBQ0tfU1RBVEVfRU5ERUQiO2Nhc2UgImVycm9yIjpyZXR1cm4iUExBWUVSX1BMQVlCQUNLX1NUQVRFX0VSUk9SIjtjYXNlICJzdXNwZW5kZWQiOnJldHVybiJQTEFZRVJfUExBWUJBQ0tfU1RBVEVfU1VTUEVOREVEIjtjYXNlICJ1bnN0YXJ0ZWQiOnJldHVybiJQTEFZRVJfUExBWUJBQ0tfU1RBVEVfVU5TVEFSVEVEIjtkZWZhdWx0OnJldHVybiJQTEFZRVJfUExBWUJBQ0tfU1RBVEVfVU5LTk9XTiJ9fTsKTDN4PWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlIDE6cmV0dXJuIlZJU19NSU5JTUlaRUQiO2Nhc2UgMjpyZXR1cm4iVklTX0ZVTExTQ1JFRU4iO2Nhc2UgMzpyZXR1cm4iVklTX0JBQ0tHUk9VTkQiO2Nhc2UgNDpyZXR1cm4iVklTX0FJUlBMQVkiO2Nhc2UgNTpyZXR1cm4iVklTX0lOTElORSI7Y2FzZSA2OnJldHVybiJWSVNfVlIiO2Nhc2UgNzpyZXR1cm4iVklTX1BJQ1RVUkVfSU5fUElDVFVSRSI7Y2FzZSA4OnJldHVybiJWSVNfSU1NRVJTSVZFX1BSRVZJRVciO2Nhc2UgOTpyZXR1cm4iVklTX1NRVUVFWkVCQUNLIjtjYXNlIDEwOnJldHVybiJWSVNfVEhFQVRFUiI7Y2FzZSAzMTpyZXR1cm4iVklTX0lOVkFMSUQiO2RlZmF1bHQ6cmV0dXJuIlZJU19ERUZBVUxUIn19OwpleWo9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgMTpyZXR1cm4iQ09OTl9VTktOT1dOIjtjYXNlIDI6cmV0dXJuIkNPTk5fTk9ORSI7Y2FzZSAzOnJldHVybiJDT05OX1dJRkkiO2Nhc2UgNDpyZXR1cm4iQ09OTl9DRUxMVUxBUl8yRyI7Y2FzZSA1OnJldHVybiJDT05OX0NFTExVTEFSXzNHIjtjYXNlIDY6cmV0dXJuIkNPTk5fQ0VMTFVMQVJfNEciO2Nhc2UgNzpyZXR1cm4iQ09OTl9DRUxMVUxBUl9VTktOT1dOIjtjYXNlIDg6cmV0dXJuIkNPTk5fRElTQ08iO2Nhc2UgOTpyZXR1cm4iQ09OTl9DRUxMVUxBUl81RyI7Y2FzZSAxMDpyZXR1cm4iQ09OTl9XSUZJX01FVEVSRUQiO2Nhc2UgMTE6cmV0dXJuIkNPTk5fQ0VMTFVMQVJfNUdfU0EiO2Nhc2UgMTI6cmV0dXJuIkNPTk5fQ0VMTFVMQVJfNUdfTlNBIjtjYXNlIDMwOnJldHVybiJDT05OX1dJUkVEIjtjYXNlIDMxOnJldHVybiJDT05OX0lOVkFMSUQiO2RlZmF1bHQ6cmV0dXJuIkNPTk5fREVGQVVMVCJ9fTsKZy5jcj1mdW5jdGlvbihuLFcpe3ZhciBEPVYzKG4ucHJvdmlkZXIpO09iamVjdC5hc3NpZ24oRCx7c3RhdGU6bi5YfSk7Vz1uZXcgZ29oKG4ucHJvdmlkZXIudmlkZW9EYXRhLG4ucHJvdmlkZXIuQixXLEQpO1cuTj1uLnByb3ZpZGVyLkwub3QoKTtEPW4ucHJvdmlkZXIudmlkZW9EYXRhLmNsaWVudFBsYXliYWNrTm9uY2U7Vy5OPW4ucHJvdmlkZXIuTC5vaChEKTtuLnByb3ZpZGVyLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFja3x8KFcuZSQ9bi5wcm92aWRlci5MLmdldER1cmF0aW9uKEQpKTtuLnByb3ZpZGVyLnZpZGVvRGF0YS5OJiYoRD1uLnByb3ZpZGVyLnZpZGVvRGF0YS5OLmhDKFcuTikpJiYoVy5ZPUQtVy5OKTtEPW4ucHJvdmlkZXIuTC5TVygpO1cuTis9RDtXLlkhPW51bGwmJihXLlktPUQpO1cud2E9Zy5SayhuLnByb3ZpZGVyKTtXLnNlZ21lbnRzPVtNbShuLnByb3ZpZGVyKV07cmV0dXJuIFd9OwpYSVo9ZnVuY3Rpb24obil7dmFyIFc9bi5wcm92aWRlci52aWRlb0RhdGEubFEsRD1uLnByb3ZpZGVyLnZpZGVvRGF0YS5IWSxiPVsxMCtXLDEwLDEwLDQwK0QtVyw0MF0sdj1uLnByb3ZpZGVyLnZpZGVvRGF0YS5nZXRQbGF5ZXJSZXNwb25zZSgpPy5wbGF5YmFja1RyYWNraW5nLGs9dj8udmlkZW9zdGF0c1NjaGVkdWxlZEZsdXNoV2FsbHRpbWVTZWNvbmRzO3Y9dj8udmlkZW9zdGF0c0RlZmF1bHRGbHVzaEludGVydmFsU2Vjb25kcztpZighKGsmJmsubGVuZ3RoPjAmJnYpKXJldHVybiBiO1c9W2tbMF0rVywuLi5rLnNsaWNlKDEpLm1hcCgoaCx4KT0+aC1rW3hdKSwKditELVcsdl07cmV0dXJuIFcuc29tZShoPT5oPDApPyhnLmNfKG4ubG9nZ2VyLDM0NzExMTg1NSxgTmVnIHZzcyBzY2hlZHVsZWQgcGluZ3MgJHtrfSAke3Z9YCksYik6V307CmF1PWZ1bmN0aW9uKG4sVz1OYU4pe3ZhciBEPWcuUmsobi5wcm92aWRlcik7Vz1pc05hTihXKT9EOlc7Vz1NYXRoLmNlaWwoVyk7dmFyIGI9bi5lJFtuLnR3XTtuLnR3KzE8bi5lJC5sZW5ndGgmJm4udHcrKzt2YXIgdj1XK2I7bi5ZPWcubiQoKCk9PntpZighbi5xTigpKXtuLlk9TmFOO3ZhciBrPW4uUyQoKSxoPXE5MShuLGspO2guTz12O3ZhciB4PW4ubnU+MUUzOyEoay5sZW5ndGg+MSkmJmtbMF0uaXNFbXB0eSgpfHx4fHwoaC5LPWF1KG4sdikpO2lmKG4uY0ope2s9a1trLmxlbmd0aC0xXTtpZih4PW4uVEMpe3g9azt2YXIgTD1uLlRDO3g9eC5zdGFydFRpbWU9PT1MLnN0YXJ0VGltZSYmeC5lbmRUaW1lPT09TC5lbmRUaW1lfXh8fG51KG4sW2tdKX1oLnNlbmQoKTtuLm51Kyt9fSwodi1EKSoxRTMpOwpyZXR1cm4gbi5KPXZ9OwpXZD1mdW5jdGlvbihuLFcpe3ZhciBEPW4ucHJvdmlkZXIuQjtnLkhFKG4ucHJvdmlkZXIuQixuLnByb3ZpZGVyLnZpZGVvRGF0YS5WKCkpLnRoZW4oYj0+e3ZhciB2PW4ucHJvdmlkZXIuQi5wYWdlSWQsaz1uLnByb3ZpZGVyLkIuc2VuZFZpc2l0b3JJZEhlYWRlcj9uLnByb3ZpZGVyLnZpZGVvRGF0YS52aXNpdG9yRGF0YTp2b2lkIDAsaD1uLnByb3ZpZGVyLkIuUygidnNzX3BpbmdzX3VzaW5nX25ldHdvcmtsZXNzIil8fG4ucHJvdmlkZXIuQi5TKCJrZXZsYXJfd29mZmxlIikseD1uLnByb3ZpZGVyLkIuUygiYWxsb3dfc2tpcF9uZXR3b3JrbGVzcyIpO2I9alIoVyxELHYsayxiKTtDRChXLGIse3Rva2VuOm4ucHJvdmlkZXIudmlkZW9EYXRhLmtXLHlvOm4ucHJvdmlkZXIudmlkZW9EYXRhLlF2LG1keEVudmlyb25tZW50Om4ucHJvdmlkZXIudmlkZW9EYXRhLm1keEVudmlyb25tZW50fSxELHZvaWQgMCxoJiYheCwhMSwhMCl9KX07CnE5MT1mdW5jdGlvbihuLFcpe3ZhciBEPWcuY3Iobiwid2F0Y2h0aW1lIik7RDcobikmJihELmRlbGF5VGhyZXNob2xkTWV0PSEwLG4uRHQ9ITApO2lmKG4uaj4wKXtsZXQgYj1uLnByb3ZpZGVyLkwuU1coKTtmb3IobGV0IHYgb2YgVyl2LnN0YXJ0VGltZS09bi5qK2Isdi5lbmRUaW1lLT1uLmorYjtELk4tPW4uaitifWVsc2UgRC5OPW4uTi5KO0Quc2VnbWVudHM9VztyZXR1cm4gRH07Cm51PWZ1bmN0aW9uKG4sVyxEPSExKXtmb3IobGV0IFt4LExdb2YgVy5lbnRyaWVzKCkpe2xldCBlPXgsRz1MO3ZhciBiPW4sdj1WMyhiLnByb3ZpZGVyKTtPYmplY3QuYXNzaWduKHYse3N0YXRlOmIuWH0pO09iamVjdC5hc3NpZ24odix7c2VxdWVuY2VJZDpiLnNlcXVlbmNlSWR9KTtiLnByb3ZpZGVyLkIuUygid2ViX3NlbmRfdnNzM19pc29sYXRlZF9wYXlsb2FkIikmJk9iamVjdC5hc3NpZ24odix7c2VuZElzb2xhdGVkUGF5bG9hZDohMH0pO3ZhciBrPWIsaD1rLnByb3ZpZGVyLnZpZGVvRGF0YS5nZXRQbGF5ZXJSZXNwb25zZSgpPy5wbGF5YmFja1RyYWNraW5nPy52c3MzQ29uZmlnPy52c3MzU2NoZWR1bGluZ0NvbmZpZztoJiYoaD1oLmVhcmx5U2VnbWVudFRocmVzaG9sZFNlY3MmJihEYXRlLm5vdygpLWsuR0MpLzFFMzxoLmVhcmx5U2VnbWVudFRocmVzaG9sZFNlY3M/aC5lYXJseVNlZ21lbnRNYXhpbXVtTGVuZ3RoU2VjczpoLmRlZmF1bHRTZWdtZW50TWF4aW11bUxlbmd0aFNlY3MsCkcuc2NoZWR1bGVkU2VnbWVudE1heGltdW1MZW5ndGhTZWNzPWsuVEM/Lm5leHRTY2hlZHVsZWRTZWdtZW50TWF4aW11bUxlbmd0aFNlY3M/P2gsRy5uZXh0U2NoZWR1bGVkU2VnbWVudE1heGltdW1MZW5ndGhTZWNzPWgpO2s9bmV3IEdwYihHLGIucHJvdmlkZXIudmlkZW9EYXRhLHYpO2IuSEomJihrLmlzRG91YmxlTG9nZ2VkPSExKTt2PWs7Yi5wcm92aWRlci52aWRlb0RhdGEuaXNMaXZlUGxheWJhY2t8fCh2Lm1lZGlhTGVuZ3RoU2VjPWIucHJvdmlkZXIuTC5nZXREdXJhdGlvbihiLnByb3ZpZGVyLnZpZGVvRGF0YS5jbGllbnRQbGF5YmFja05vbmNlKSk7aWYoYi5wcm92aWRlci52aWRlb0RhdGEuTil7aD1iLnByb3ZpZGVyLkwub3QoKTtsZXQgcj1iLnByb3ZpZGVyLnZpZGVvRGF0YS5OLmhDKGgpO3ImJih2LmxpdmVJbmdlc3Rpb25PZmZzZXRVc2VjPShyLWgpKjFFNil9RDcoYikmJih2LmRlbGF5VGhyZXNob2xkTWV0PSEwLGIuRHQ9ITApO0QmJmU9PT1XLmxlbmd0aC0xJiYoay5pc0ZpbmFsPQohMCxuLkZGPSEwKTtrLnNlbmQoKTtuLnNlcXVlbmNlSWQrKztuLlRDPUd9fTsKRDc9ZnVuY3Rpb24obil7dmFyIFc7aWYoVz1uLnByb3ZpZGVyLnZpZGVvRGF0YS5pc0xvYWRlZCgpJiZuLnByb3ZpZGVyLnZpZGVvRGF0YS5vRCYmbi5XJiYhbi5EdClXPW4uTixXPVcuVitXLm90KCktVy5XPj1uLnByb3ZpZGVyLnZpZGVvRGF0YS5vRDtyZXR1cm4hIVd9OwpiVj1mdW5jdGlvbihuLFcsRD0hMSl7RD1uLksoIWlzTmFOKG4uSiksITEsRCk7VyYmKG4uSj1OYU4pO3JldHVybiBEfTsKdFpNPWZ1bmN0aW9uKG4pe24ucHJvdmlkZXIudmlkZW9EYXRhLnlvdXR1YmVSZW1hcmtldGluZ1VybCYmIW4uQ3UmJihXZChuLG4ucHJvdmlkZXIudmlkZW9EYXRhLnlvdXR1YmVSZW1hcmtldGluZ1VybCksbi5DdT0hMCl9Owokalo9ZnVuY3Rpb24obil7bi5wcm92aWRlci52aWRlb0RhdGEuZ29vZ2xlUmVtYXJrZXRpbmdVcmwmJiFuLlBYJiYoV2QobixuLnByb3ZpZGVyLnZpZGVvRGF0YS5nb29nbGVSZW1hcmtldGluZ1VybCksbi5QWD0hMCl9Owp2ZD1mdW5jdGlvbihuKXtpZighbi5xTigpJiZuLlcpe24uWD0icGF1c2VkIjt2YXIgVz1iVihuLCExLCEwKTtXLmlzRmluYWw9ITA7Vy5zZW5kKCk7bi5kaXNwb3NlKCl9fTsKcnB0PWZ1bmN0aW9uKG4sVyxEKXtpZighbi52Sil7RHx8KEQ9Zy5jcihuLCJhdHIiKSk7RC5hdHRlc3RhdGlvblJlc3BvbnNlPVc7dHJ5e0Quc2VuZCgpfWNhdGNoKGIpe2lmKGIubWVzc2FnZSE9PSJVbmtub3duIEVycm9yIil0aHJvdyBiO31uLnZKPSEwfX07CmcuUms9ZnVuY3Rpb24obil7cmV0dXJuIGcuc2JyKG4pKCl9OwpjY1o9ZnVuY3Rpb24obil7dmFyIFc9bmF2aWdhdG9yLmNvbm5lY3Rpb24/LnR5cGV8fCIiO2lmKFcpcmV0dXJuIE5FcltXXXx8TkVyLm90aGVyO2lmKGcuazYobi5CKSl7bj1uYXZpZ2F0b3IudXNlckFnZW50O2lmKC9bV3ddaXJlbGVzc1spXS8udGVzdChuKSlyZXR1cm4gMztpZigvW1d3XWlyZWRbKV0vLnRlc3QobikpcmV0dXJuIDMwfXJldHVybiAwfTsKTW09ZnVuY3Rpb24obil7dmFyIFc9bmV3IHBJMjtXLko9VjMobikuY2M/LnRvU3RyaW5nKCl8fCItIjtXLnBsYXliYWNrUmF0ZT1uLkwuZ2V0UGxheWJhY2tSYXRlKCk7dmFyIEQ9bi5MLmdldFZpc2liaWxpdHlTdGF0ZSgpO0QhPT0wJiYoVy52aXNpYmlsaXR5U3RhdGU9RCk7bi5CLkR0JiYoVy5XPTEpO1cuaj1uLnZpZGVvRGF0YS5wUjtXLmNvbXBvc2l0ZUxpdmVTdGF0dXNUb2tlbj1uLnZpZGVvRGF0YS5jb21wb3NpdGVMaXZlU3RhdHVzVG9rZW47Vy5oZWFydGJlYXRMb2dnaW5nVG9rZW49bi52aWRlb0RhdGEuaGVhcnRiZWF0TG9nZ2luZ1Rva2VuO0Q9bi5MLmdldEF1ZGlvVHJhY2soKTtELmtaJiZELmtaLmlkJiZELmtaLmlkIT09InVuZCImJihXLmF1ZGlvSWQ9RC5rWi5pZCk7Vy5jb25uZWN0aW9uVHlwZT1jY1oobik7Vy52b2x1bWU9bi5MLmdldFZvbHVtZSgpO1cubXV0ZWQ9bi5MLmlzTXV0ZWQoKTtXLmNsaXBJZD1uLkwuRm4oKXx8Ii0iO1cuTj1uLnZpZGVvRGF0YS5WZnx8CiItIjtyZXR1cm4gV307ClYzPWZ1bmN0aW9uKG4pe3ZhciBXPW4uTC5oaCgpfHx7fTtXLmZzPW4uTC52MygpO1cudm9sdW1lPW4uTC5nZXRWb2x1bWUoKTtXLm11dGVkPW4uTC5pc011dGVkKCk/MTowO1cubW9zPVcubXV0ZWQ7Vy5jbGlwaWQ9bi5MLkZuKCk7Vy5wbGF5ZXJoZWlnaHQ9bi5MLmdldFBsYXllclNpemUoKT8uaGVpZ2h0fHwwO1cucGxheWVyd2lkdGg9bi5MLmdldFBsYXllclNpemUoKT8ud2lkdGh8fDA7bj1uLnZpZGVvRGF0YTt2YXIgRD17fTtuLkomJihELmZtdD1uLkouaXRhZyxuLlgmJihuLlZRP24uWC5pdGFnIT09bi5KLml0YWc6bi5YLml0YWchPW4uSi5pdGFnKSYmKEQuYWZtdD1uLlguaXRhZykpO0QuZWk9bi5ldmVudElkO0QubGlzdD1uLnBsYXlsaXN0SWQ7RC5jcG49bi5jbGllbnRQbGF5YmFja05vbmNlO24udmlkZW9JZCYmKEQudj1uLnZpZGVvSWQpO24ueWwmJihELmluZnJpbmdlPTEpOyhuLmZCPzA6bi5QWCkmJihELnNwbGF5PTEpO3ZhciBiPXJsKG4pO2ImJihELmxpdmU9Yik7bi5WVCYmCihELnNhdXRvcGxheT0xKTtuLkd1JiYoRC5hdXRvcGxheT0xKTtuLnd1JiYoRC5zZGV0YWlsPW4ud3UpO24ucGFydG5lcklkJiYoRC5wYXJ0bmVyaWQ9bi5wYXJ0bmVySWQpO24ub3NpZCYmKEQub3NpZD1uLm9zaWQpO24uWm0mJihELmNjPWcubmcobi5abSkpO3JldHVybiBPYmplY3QuYXNzaWduKFcsRCl9OwpnLnNicj1mdW5jdGlvbihuKXtpZighbi5OKXtsZXQgVz0oMCxnLlIpKCk7bi5OPSgpPT5NYXRoLnJvdW5kKCgwLGcuUikoKS1XKS8xRTM7Cm4uTC5RYigpfXJldHVybiBuLk59OwpnLmswPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4uc3RhdGUuTihXKSYmIW4ub2xkU3RhdGUuTihXKT8xOiFuLnN0YXRlLk4oVykmJm4ub2xkU3RhdGUuTihXKT8tMTowfTsKaEM9ZnVuY3Rpb24obil7bi5KJiZjSWoobi5KKTtuLnFvZSYmeEJoKG4ucW9lKX07CkhYMj1mdW5jdGlvbihuLFcsRCxiKXtELmFkRm9ybWF0PUQuRkY7dmFyIHY9Vy5MO1c9bmV3IGcueDAobmV3IFk5UyhELFcuQix7Z2V0RHVyYXRpb246KCk9PkQubGVuZ3RoU2Vjb25kcywKZ2V0Q3VycmVudFRpbWU6KCk9PnYuZ2V0Q3VycmVudFRpbWUoKSwKb3Q6KCk9PnYub3QoKSwKb2g6KCk9PnYub2goKSwKSEs6KCk9PnYuSEsoKSwKZ2V0UGxheWVyU2l6ZTooKT0+di5nZXRQbGF5ZXJTaXplKCksCmdldEF1ZGlvVHJhY2s6KCk9PkQuZ2V0QXVkaW9UcmFjaygpLApnZXRQbGF5YmFja1JhdGU6KCk9PnYuZ2V0UGxheWJhY2tSYXRlKCksCkVjOigpPT52LkVjKCksCmdldFZpc2liaWxpdHlTdGF0ZTooKT0+di5nZXRWaXNpYmlsaXR5U3RhdGUoKSwKZUc6KCk9PnYuZUcoKSwKaGg6KCk9PnYuaGgoKSwKZ2V0Vm9sdW1lOigpPT52LmdldFZvbHVtZSgpLAppc011dGVkOigpPT52LmlzTXV0ZWQoKSwKdjM6KCk9PnYudjMoKSwKRm46KCk9PnYuRm4oKSwKZ2V0UHJveGltYUxhdGVuY3lQcmVmZXJlbmNlOigpPT52LmdldFByb3hpbWFMYXRlbmN5UHJlZmVyZW5jZSgpLApRYigpe3YuUWIoKX0sVShrLGgpe3YuVShrLGgpfSxPMDooKT0+di5PMCgpLApTVzooKT0+di5TVygpLAp6czprPT52LnpzKGspfSkpOwpXLmo9YjtnLnUobixXKTtyZXR1cm4gV307CmZBdD1mdW5jdGlvbihuKXtuLkomJm4uSi5zZW5kKCk7aWYobi5xb2Upe3ZhciBXPW4ucW9lO2lmKFcuVil7Vy5OPT09IlBMIiYmKFcuTj0iTiIpO3ZhciBEPWcuUmsoVy5wcm92aWRlcik7Zy53aihXLEQsInZwcyIsW1cuTl0pO1cuRHx8KFcuWD49MCYmVy5KLnNldCgidXNlcl9pbnRlbnQiLFtXLlgudG9TdHJpbmcoKV0pLFcuRD0hMCk7Vy5wcm92aWRlci5CLldYKCkmJlcuVSgiZmluYWxpemVkIix7fSk7Vy5TJD0hMDtXLnJlcG9ydFN0YXRzKEQpfX1pZihuLnByb3ZpZGVyLnZpZGVvRGF0YS5lbmFibGVTZXJ2ZXJTdGl0Y2hlZERhaSlmb3IobGV0IGIgb2Ygbi5XLnZhbHVlcygpKXZkKGIpO2Vsc2Ugbi5OJiZ2ZChuLk4pO24uZGlzcG9zZSgpfTsKSnBVPWZ1bmN0aW9uKG4pe2lmKCFuLk4pcmV0dXJuIG51bGw7dmFyIFc9Zy5jcihuLk4sImF0ciIpO3JldHVybiBEPT57bi5OJiZycHQobi5OLEQsVyl9fTsKSUFoPWZ1bmN0aW9uKG4sVyl7bj1EZShuLmFycmF5LEQ9PlctRC5zdGFydHx8MSk7CnJldHVybiBuPDA/LShuKzEpOm59OwpTOWI9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVtdO2ZvcihXPUlBaChuLFcpO1c8bi5hcnJheS5sZW5ndGg7KytXKXtsZXQgdj1uLmFycmF5W1ddOyh2LmVuZDw9RHx8di5jb250YWlucyhEKSkmJmIucHVzaCh2KTtpZih2LnN0YXJ0PkQpYnJlYWt9cmV0dXJuIGJ9OwpnLkx1PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9W107Zm9yKGxldCBiIG9mIG4uYXJyYXkpaWYoYi5jb250YWlucyhXKSYmRC5wdXNoKGIpLGIuc3RhcnQ+VylicmVhaztyZXR1cm4gRH07CkFwaj1mdW5jdGlvbihuKXtyZXR1cm4gbi5hcnJheS5zbGljZShJQWgobiwweDdmZmZmZmZmZmZmZmYpLG4uYXJyYXkubGVuZ3RoKX07Cm1qdD1mdW5jdGlvbihuLFcpe3ZhciBEPU5hTjtmb3IobGV0IGIgb2Ygbi5hcnJheSlpZihiLmNvbnRhaW5zKFcpJiYoaXNOYU4oRCl8fGIuZW5kPEQpJiYoRD1iLmVuZCksYi5zdGFydD5XJiYoaXNOYU4oRCl8fGIuc3RhcnQ8RCkpe0Q9Yi5zdGFydDticmVha31yZXR1cm4gRH07CkszVT1mdW5jdGlvbihuLFcpe24uYXJyYXk9bi5hcnJheS5maWx0ZXIoRD0+IVcuaGFzKEQpKX07Ck9YMj1mdW5jdGlvbihuKXtyZXR1cm4gbi5MLmdldFBsYXllclN0YXRlKCkuTigyKT8weDgwMDAwMDAwMDAwMDA6bi5MLmdldEN1cnJlbnRUaW1lKCkqMUUzfTsKZWg9ZnVuY3Rpb24obixXKXt2YXIgRD1bXTtpZighVy5sZW5ndGgpcmV0dXJuIEQ7Zm9yKGxldCBiPTA7YjxXLmxlbmd0aDtiKyspe2xldCB2PVdbYl07di5hY3RpdmUmJm4uVy5pbmRleE9mKHYpPT09LTEmJihuLlcucHVzaCh2KSxELnB1c2goWzEsdl0pKX1yZXR1cm4gRH07CmdzPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIG9mIFcpVz1EWzFdLERbMF09PT0xP24uTC5DSihnLm95KFcubmFtZXNwYWNlKSxXKTpuLkwuQ0ooZy5kdihXLm5hbWVzcGFjZSksVyl9OwpYSj1mdW5jdGlvbihuLFcpe3ZhciBEPVtdO2lmKCFXLmxlbmd0aClyZXR1cm4gRDtXLnNvcnQoZy51NSk7Zm9yKGxldCBiIG9mIFcpbi5XLnNwbGljZShuLlcuaW5kZXhPZihiKSwxKSxELnB1c2goWzIsYl0pO3JldHVybiBEfTsKUHlDPWZ1bmN0aW9uKG4pe2lmKG4uc3RhcnRlZCYmIW4ucU4oKSl7bi5qLnN0b3AoKTt2YXIgVz1uLkwuZ2V0UGxheWVyU3RhdGUoKTtXLk4oMzIpJiZuLlkuc3RhcnQoKTt2YXIgRD1PWDIobiksYj1uLmlzRW5kZWQoVyxEKSx2PVtdLGs9W107Zm9yKHZhciBoIG9mIG4uVyloLmFjdGl2ZSYmKGI/aC5lbmQ8MHg4MDAwMDAwMDAwMDAwOiFoLmNvbnRhaW5zKEQpKSYmay5wdXNoKGgpO3Y9di5jb25jYXQoWEoobixrKSk7aD1rPW51bGw7Yj8oVz1nLkx1KG4uTiwweDdmZmZmZmZmZmZmZmYpLGs9Vy5maWx0ZXIoeD0+eC5lbmQ8MHg4MDAwMDAwMDAwMDAwKSxoPUFwaihuLk4pKTpXPW4uWDw9RCYmbDEoVyk/UzliKG4uTixuLlgsRCk6Zy5MdShuLk4sRCk7CnY9di5jb25jYXQoZWgobixXKSk7ayYmKHY9di5jb25jYXQoWEoobixrKSkpO2gmJih2PXYuY29uY2F0KGVoKG4saCkpKTtuLlg9RDtncyhuLHYpfX07CnE5PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFc+bi5tZWRpYVRpbWUrbi5YJiZXPG4ubWVkaWFUaW1lKzV9OwpSOEM9ZnVuY3Rpb24obixXLEQsYix2PSExKXtpZihuLmxuJiYhaXNGaW5pdGUoVykpcmV0dXJuITE7aWYoYj1iPjEpbi5XPSEwO2lmKHZ8fGlzTmFOKG4uTikpbi5OPVc7aWYobi5zZWVraW5nKVchPT1uLm1lZGlhVGltZSYmKG4uc2Vla2luZz0hMSk7ZWxzZSBpZihXPjAmJm4ubWVkaWFUaW1lPT09Vyl7dj0xNTAwO2lmKG4uQi5TKCJodG1sNV9idWZmZXJfdW5kZXJydW5fdHJhbnNpdGlvbl9maXgiKSl7dj1nLmRNKG4uQi5leHBlcmltZW50cywiaHRtbDVfbWluX3BsYXliYWNrX2FkdmFuY2VfZm9yX3N0ZWFkeV9zdGF0ZV9zZWNzIik7bGV0IGs9Zy5kTShuLkIuZXhwZXJpbWVudHMsImh0bWw1X21pbl91bmRlcnJ1bl9idWZmZXJlZF9wcmVfc3RlYWR5X3N0YXRlX21zIik7dj12PjAmJms+MCYmTWF0aC5hYnMoVy1uLk4pPHY/azoxNTAwfXJldHVybiBELW4uSj4oYnx8IW4uVz92OjQwMCl9bi5tZWRpYVRpbWU9VztuLko9RDtyZXR1cm4hMX07ClVqdz1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIFcudEEoRCkudGhlbigoKT0+Zy5IMChuZXcgWlhoKFcsVy5XKSksYj0+e2IgaW5zdGFuY2VvZiBFcnJvciYmZy5HcShiKTsKdmFyIHY9dTgoJ3ZpZGVvL21wNDsgY29kZWNzPSJhdmMxLjQyMDAxRSwgbXA0YS40MC4yIicpLGs9ZHkoJ2F1ZGlvL21wNDsgY29kZWNzPSJtcDRhLjQwLjIiJyksaD12fHxrLHg9Vy5pc0xpdmVQbGF5YmFjayYmIWcuSW4obi5XLCEwKTtiPSJmbXQubm9uZWF2YWlsYWJsZSI7eD9iPSJodG1sNS51bnN1cHBvcnRlZGxpdmUiOmh8fChiPSJodG1sNS5taXNzaW5nYXBpIik7aD14fHwhaD8yOjE7dj17YnVpbGRSZWo6IjEiLGE6Vy5JcCgpLGQ6ISFXLlRmLGRybTpXLk1pKCksZjE4OlcuY2YuaW5kZXhPZigiaXRhZz0xOCIpPj0wLGMxODp2fTtXLk4mJihXLk1pKCk/KHYuZjE0Mj0hIVcuTi5OWyIxNDIiXSx2LmYxNDk9ISFXLk4uTlsiMTQ5Il0sdi5mMjc5PSEhVy5OLk5bIjI3OSJdKToodi5mMTMzPSEhVy5OLk5bIjEzMyJdLHYuZjE0MD0hIVcuTi5OWyIxNDAiXSx2LmYyNDI9ISFXLk4uTlsiMjQyIl0pLHYuY0FBQz1rLHYuY0FWQz1keSgndmlkZW8vbXA0OyBjb2RlY3M9ImF2YzEuNDIwMDFFIicpLAp2LmNWUDk9ZHkoJ3ZpZGVvL3dlYm07IGNvZGVjcz0idnA5IicpKTtXLmomJih2LmRybXN5cz1XLmoua2V5U3lzdGVtLGs9MCxXLmouSiYmKGs9T2JqZWN0LmtleXMoVy5qLkopLmxlbmd0aCksdi5kcm1zdD1rKTtyZXR1cm4gbmV3IGcuQ2koYix2LGgpfSl9Owp0Qz1mdW5jdGlvbihuLFcpe1c9TWF0aC5tYXgoTWF0aC5tYXgoMSxNYXRoLmNlaWwobi5wb2xpY3kuWC9HWShuKSkpLFcpO3JldHVybiBNYXRoLm1pbihNYXRoLm1pbig4LE1hdGguZmxvb3Iobi5wb2xpY3kuRC9HWShuKSkpLFcpfTsKR1k9ZnVuY3Rpb24obil7cmV0dXJuIG4udmlkZW9EYXRhLk4/b28obi52aWRlb0RhdGEuTil8fDU6NX07CiQwPWZ1bmN0aW9uKG4pe3JldHVybiBHWShuKSpuLk59OwpFb2k9ZnVuY3Rpb24obixXKXtpZihXKXJldHVybiBXPW4udmlkZW9EYXRhLFc9eXBiKG4saXNOYU4oVy5saXZlQ2h1bmtSZWFkYWhlYWQpPzM6Vy5saXZlQ2h1bmtSZWFkYWhlYWQsVyksdEMobixXKTtpZihuLkoubGVuZ3RoKXtpZihNYXRoLm1pbi5hcHBseShudWxsLG4uSik+MSlyZXR1cm4gdEMobixuLk4tMSk7aWYobi5wb2xpY3kuWSlyZXR1cm4gdEMobixuLk4rMSl9cmV0dXJuIG4uTn07CmlYUz1mdW5jdGlvbihuLFc9ITEpe2lmKCFuLkoubGVuZ3RoKXJldHVybiExO3ZhciBEPW4uTjtuLk49RW9pKG4sVyk7aWYoVz1EIT09bi5OKW4uSj1bXSxuLmp4PTA7cmV0dXJuIFd9Owpycz1mdW5jdGlvbihuKXt2YXIgVz1uLnBvbGljeS5OO24uWHx8KFc9TWF0aC5tYXgoVy0xLDApKTtyZXR1cm4gVypHWShuKX07CnNCPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFc+PW4uTlcoKS1ycyhuKX07CnlwYj1mdW5jdGlvbihuLFcsRCl7RC5JUiYmVy0tO2hEKEQpJiYoVz0xKTt4cChEKSE9PTAmJihuPWcuZE0obi5leHBlcmltZW50cywiaHRtbDVfbGl2ZV9jaHVua19yZWFkYWhlYWRfcHJveGltYV9vdmVycmlkZSIpKSYmKFc9bixELk4/Lm51KCkmJlcrKyk7cmV0dXJuIFd9OwpwdT1mdW5jdGlvbihuLFcsRD1udWxsKXtyZXR1cm4gbmV3IE45KGcuZE0obi5CLmV4cGVyaW1lbnRzLFcpfHwwLEQ/bi5CLlMoRCk6ITEpfTsKdTRiPWZ1bmN0aW9uKG4sVyl7bi5OPVd9OwpZMD1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgpe1c/Vy50ZXN0KEQpPyhuLkdzKHYsVyxoKSxXLlZ8fGsoKSk6KCFXLkp8fFcuWD9EPSExOihEPSgwLGcuUikoKSxiP1cuTnx8KFcuTj1EKTpXLk49MCxrPSFiJiZELVcuSj4zRTQsRD1XLk4mJkQtVy5OPjFFM3x8az9XLlg9ITA6ITEpLEQmJih4PXsuLi5uLnlyKFcpLC4uLnh9LHgud249aCx4LndlPXYseC53c3VjPWIsbi5MLlUoIndvcmthcm91bmRSZXBvcnQiLHgpLGImJihXLnJlc2V0KCksbi5YW3ZdPSExKSkpOm4uTC5QVigiYXV0aCIsMiwiQlJPV1NFUl9PUl9FWFRFTlNJT05fRVJST1IiLGcuVEMoe3NvdXJjZToid2F0Y2hkb2ciLG5hbWU6aH0pKX07Cm9veD1mdW5jdGlvbihuLFcpe2lmKG4uTil7dmFyIEQ9bi5OO3ZhciBiPW4uZ2V0Q3VycmVudFRpbWUoKSx2PUQuTlcoKTt2YXIgaz1ELnBvbGljeS5KO0QuWHx8KGs9TWF0aC5tYXgoay0xLDApKTtrKj1HWShEKTtiPj12LWt8fCFELmpYKCk/RD1iPEQudmlkZW9EYXRhLkxmKCk/TWF0aC5taW4oRC52aWRlb0RhdGEuTGYoKSsxMCxELk5XKCkpOk5hTjooRC5wb2xpY3kuaiYmKEQucG9saWN5Lk8/KEQucG9saWN5Lko9TWF0aC5taW4oRC5wb2xpY3kuSitELnBvbGljeS5LLEQucG9saWN5LlYpLEQucG9saWN5Lk49TWF0aC5taW4oRC5wb2xpY3kuTisxLDEwKSk6KEQucG9saWN5Lko9TWF0aC5tYXgoRC5wb2xpY3kuSisxLEQucG9saWN5LlYpLEQucG9saWN5Lk49TWF0aC5tYXgoRC5wb2xpY3kuTisxLDEwKSkpLEQ9SW5maW5pdHkpO2lmKCFpc05hTihEKSl7aWYobi5sb2FkZXImJlcmJihXPW4uUyQuaXNBY3RpdmUoKSxiPW4uTi5OVygpLChiPWlQUyhuLmxvYWRlcixiLW4uU1coKSkpJiYKIVcpKXtuLlMkLnN0YXJ0KCk7bi5MLlUoImluQnVmZmVyUHRsIix7Y210Om4uZ2V0Q3VycmVudFRpbWUoKSxzZWVrVG86YituLlNXKCl9KTtuLnNlZWtUbyhiK24uU1coKSx7cWQ6InNlZWt0aW1lbGluZV9pbkJ1ZmZlclNlZWsiLHNlZWtTb3VyY2U6MzR9KTtyZXR1cm59bi5zZWVrVG8oRCx7cWQ6InNlZWt0aW1lbGluZV9wZWdUb0xpdmUiLHNlZWtTb3VyY2U6MzR9KX19fTsKZnU9ZnVuY3Rpb24obixXKXtpZihuLlgpe24udmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrJiZuLnZpZGVvRGF0YS5XJiYhbi52aWRlb0RhdGEuVy5OKCkmJm4ubWVkaWFFbGVtZW50JiZuLm1lZGlhRWxlbWVudC5YKCk+MCYmb3Uobi5tZWRpYUVsZW1lbnQpPjAmJihuLko9SGQobixuLkosITEpKTt2YXIgRD1uLlMoImh0bWw1X3BzZXVkb2dhcGxlc3Nfc2hvcnRzX3NlZWtfdG9fbmV4dF9zdGFydCIpJiZXPy5zZWVrU291cmNlPT09NjA7aWYoIW4ubWVkaWFFbGVtZW50fHwhZGpyKG4sRCkpbi5SYS5zdGFydCg3NTApO2Vsc2UgaWYoIWlzTmFOKG4uSikmJmlzRmluaXRlKG4uSikmJihEPW4uSEotKG4uSi1uLnRpbWVzdGFtcE9mZnNldCksIShEPT09MHx8TWF0aC5hYnMoRCk8LjAwNSkpKWlmKEQ9bi5tZWRpYUVsZW1lbnQuZ2V0Q3VycmVudFRpbWUoKS1uLkosTWF0aC5hYnMoRCk8PW4uRHR8fE1hdGguYWJzKEQpPC4wMDUpenkxKG4pO2Vsc2V7aWYobi52aWRlb0RhdGEuTWwpbi52aWRlb0RhdGEuTWw9CiExO2Vsc2UgaWYoIWcuRFAobi52aWRlb0RhdGEpJiZuLko+PW4uckkoKS0uMSYmKG4uckkoKSE9PTB8fFc/LnFkIT09InNlZWt0aW1lbGluZV9zZXR1cE1lZGlhRWxlbWVudCIpKXtuLko9bi5ySSgpO24uWC5yZXNvbHZlKG4uckkoKSk7bi5CLldYKCkmJm4uTC5VKCJzZXRFbmRlZEluU2VlayIse3RndDpgJHtuLkp9YCxtYXhzdDpgJHtuLnJJKCl9YH0pO24uTC5rTigpO3JldHVybn10cnl7bGV0IGI9bi5KLW4udGltZXN0YW1wT2Zmc2V0O24ubWVkaWFFbGVtZW50LnNlZWtUbyhiKTtuLk8uTj1iO24uSEo9YjtuLlc9bi5KO24uY0o9ITF9Y2F0Y2goYil7fX19fTsKVEUyPWZ1bmN0aW9uKG4sVyl7bi5UQz0hMDtuLmxuKCkmJihuLko9bi5WLG4uVz1uLkosbi5WPU5hTik7bEF0KG4sVyl9OwpqYjI9ZnVuY3Rpb24obil7dmFyIFc9MCxEPU5hTixiPSIiO2lmKCFuLkQpcmV0dXJue3N0YXJ0U2Vjb25kczpXLE12OkQsc291cmNlOmJ9O24udmlkZW9EYXRhLlJJP1c9bi52aWRlb0RhdGEuSlU6Zy5EUChuLnZpZGVvRGF0YSkmJihXPUluZmluaXR5KTtpZihnLnBBKG4udmlkZW9EYXRhKSlyZXR1cm57c3RhcnRTZWNvbmRzOlcsTXY6RCxzb3VyY2U6Yn07bi52aWRlb0RhdGEuc3RhcnRTZWNvbmRzPyhiPSJzcyIsVz1uLnZpZGVvRGF0YS5zdGFydFNlY29uZHMpOm4udmlkZW9EYXRhLlVyJiYoYj0ic3RzcyIsVz1uLnZpZGVvRGF0YS5Vcik7bi52aWRlb0RhdGEubGl2ZVV0Y1N0YXJ0U2Vjb25kcyYmKEQ9bi52aWRlb0RhdGEubGl2ZVV0Y1N0YXJ0U2Vjb25kcyk7aWYoaXNGaW5pdGUoVykmJihXPm4uckkoKXx8VzxuLkxmKCkpKXtsZXQgdj17fTt2Lm1pblNlZWthYmxlVGltZT1uLkxmKCk7di5tYXhTZWVrYWJsZVRpbWU9bi5ySSgpO3YuY210PW4uZ2V0Q3VycmVudFRpbWUoKTt2LnNzPQpXO3YudXRjPUQ7di5zcmM9YjtuLkwuVSgic3RhcnRTZWNvbmRzT3V0T2ZCb3VuZHMiLHYpO24udmlkZW9EYXRhLnpXKCkmJihXPUhkKG4sVywhMSkpfXJldHVybntzdGFydFNlY29uZHM6VyxNdjpELHNvdXJjZTpifX07CkpDPWZ1bmN0aW9uKG4pe3JldHVybiEhbi52aWRlb0RhdGEuc3RhcnRTZWNvbmRzJiZpc0Zpbml0ZShuLnZpZGVvRGF0YS5zdGFydFNlY29uZHMpJiZuLnZpZGVvRGF0YS5zdGFydFNlY29uZHM+MUU5fTsKRjNiPWZ1bmN0aW9uKG4sVyl7bi5wbGF5YmFja0RhdGE9VztuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFjayYmKG4uWT1uZXcgQ3laKCgpPT57YTp7aWYobi5wbGF5YmFja0RhdGEmJm4ucGxheWJhY2tEYXRhLk4uTigpKXtpZihJNChuLnZpZGVvRGF0YSkmJm4ubG9hZGVyKXt2YXIgRD1uLmxvYWRlci5xaCgpO2JyZWFrIGF9aWYobi52aWRlb0RhdGEuTil7RD1uLnZpZGVvRGF0YS5OLnFoKCk7YnJlYWsgYX19RD0wfXJldHVybiBEfSksbi5OPW5ldyBCRWIobi52aWRlb0RhdGEsbi5CLmV4cGVyaW1lbnRzLCgpPT5uLnJJKCEwKSkpOwpJYyhuLkwpPyhuLnZpZGVvRGF0YS5nVD8uQWp8fChXPWpiMihuKSxXLk12PyhnLllOKG4udmlkZW9EYXRhKSYmbi5odShXLk12LFcuc3RhcnRTZWNvbmRzKSxuLlc9Vy5zdGFydFNlY29uZHMpOlcuc3RhcnRTZWNvbmRzPjAmJm4uc2Vla1RvKFcuc3RhcnRTZWNvbmRzLHtxZDoic2Vla3RpbWVsaW5lX3N0YXJ0UGxheWJhY2siLHNlZWtTb3VyY2U6MTUsQU06ITB9KSksbi5EPSExKTpKQyhuKXx8KG4uVz1uLld8fG4udmlkZW9EYXRhLnN0YXJ0U2Vjb25kc3x8MCxuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFja3x8KFc9bi5MLnZpZGVvRGF0YS5ySSgpLG4uVz5XJiYobi5TKCJodG1sNV9zYWJyX2xvZ19pbnZhbGlkX3NhYnJfY3VycmVudF90aW1lIikmJm4uTC5VKCJpbnZhbGlkU2FickNtdFN0YXJ0Iix7cnQ6bi5XLG1zdDpXfSksbi5TKCJodG1sNV9zYWJyX3ZvZF9pbnZhbGlkX3N0YXJ0X3RpbWVfZmFsbGJhY2siKSYmKG4uVz0wKSkpKX07ClNoPWZ1bmN0aW9uKG4sVyl7aWYobi5OJiZuLmxvYWRlcil7dmFyIEQ9ITE7Vz9EPSEwOlN4KG4udmlkZW9EYXRhKT9EPWlYUyhuLk4pOm4uQ3UmJihuLkN1PSExLEQ9aVhTKG4uTiwhMCkpO0QmJihEPW4uTC5CWCxXPSQwKG4uTiksRC5xb2UmJihEPUQucW9lLGcud2ooRCxnLlJrKEQucHJvdmlkZXIpLCJscmEiLFtXXSksRC5VKCJsaXZlLXJlYWRhaGVhZC1zZWNvbmRzIix7djpXfSkpKTtXPW4ubG9hZGVyO0Q9bi5OLk47bj1uLk47bj0obi5OLTErbi5wb2xpY3kuTikqR1kobik7dmFyIGI9TmFOO3ZhciB2PVcuVHI7dj09PTJ8fHY9PT0tMT8odj1ELGhEKFcuTC5nZXRWaWRlb0RhdGEoKSkmJihiPVcucG9saWN5LnpQKSk6dj1ELTE7dj1NYXRoLm1heCh2LDApO0Q9Vy5OeTtELlpBPXY7RC5YPWI7Vy5RdSYmKFcuUXUuTz1uKX19Owptbz1mdW5jdGlvbihuLFcpeyhuLmxvYWRlcj1XKT9TaChuLCEwKTpnLkFDKG4pfTsKZGpyPWZ1bmN0aW9uKG4sVz0hMSl7aWYoIW4ubWVkaWFFbGVtZW50fHxuLm1lZGlhRWxlbWVudC5YKCk9PT0wfHxuLm1lZGlhRWxlbWVudC5oYXNFcnJvcigpKXJldHVybiExO3ZhciBEPW4ubWVkaWFFbGVtZW50LmdldEN1cnJlbnRUaW1lKCk+MDtyZXR1cm4gbi52aWRlb0RhdGEuVyYmbi52aWRlb0RhdGEuVy5OKCl8fG4udmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrfHwhbi52aWRlb0RhdGEuTWkoKT9uLko+PTAmJiFXJiYoVz1uLm1lZGlhRWxlbWVudC5PKCksVy5sZW5ndGh8fCFEKT9CUihXLG4uSi1uLnRpbWVzdGFtcE9mZnNldCk6RDpEfTsKTVoxPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5nZXRDdXJyZW50VGltZSgpLGI9bi5pc0F0TGl2ZUhlYWQoRCk7aWYobi5ZJiZiKXt2YXIgdj1uLlk7aWYodi5OJiYhKEQ+PXYuSiYmRDx2LlgpKXt2YXIgaz12Lk4uUjMoRCk7ayE9PS0xJiYodi5KPXYuTi5nZXRTdGFydFRpbWUoayksdi5YPXYuSit2Lk4uZ2V0RHVyYXRpb24oayksaz0oMCxnLlIpKCkvMUUzLXYuTi5oQyhrKSxrLT12LmooKSx2LlcuYWRkKGspKX19bi5OJiYoYiYmKHY9bi5OLGs9bi56cygpLHYuangrKyx2Lmp4PDN8fERhdGUubm93KCktdi5WPDNFM3x8KHYuVj1EYXRlLm5vdygpLHYuSi5wdXNoKGspLHYuSi5sZW5ndGg+NTAmJnYuSi5zaGlmdCgpKSksbi5OLlUzKEQsVyksVyYmb294KG4sITApKTtiIT09bi5QWCYmKG4uQi5adCgpLk4uUVEod0kxKSYmbi52aWRlb0RhdGEuUkk/bi5QWD1iOihXPShuLkIuWnQoKS5OLlFRKHdJMSk/KG4uZ2V0Q3VycmVudFRpbWUoKS1uLkdDKSoxRTM6bi5nZXRDdXJyZW50VGltZSgpLQpuLkdDKTw9NTAwLEQ9bi5ZWj49MUUzLFd8fER8fChXPW4uTC5CWCxXLnFvZSYmKFc9Vy5xb2UsRD1nLlJrKFcucHJvdmlkZXIpLGcud2ooVyxELCJsaCIsW2I/IjEiOiIwIl0pKSxuLlBYPWIsbi5ZWisrLG4uR0M9bi5nZXRDdXJyZW50VGltZSgpKSkpfTsKZy5LdT1mdW5jdGlvbihuLFcpe3ZhciBEPW4uWDtEfHwobi5YPW5ldyBZNixEPW4uWCxmdShuLFcpKTtyZXR1cm4gRH07CkhkPWZ1bmN0aW9uKG4sVyxEKXtpZihpc05hTihXKSlyZXR1cm4gTmFOO3ZhciBiPW4uTGYoKTtEPW4uckkoRCk7cmV0dXJuIG4uUygiaHRtbDVfY2xhbXBfaW52YWxpZF9zZWVrX3RvX21pbl9zZWVrYWJsZV90aW1lIikmJiFuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFjayYmVz5EKzEmJlc8SW5maW5pdHk/KG4uQi5XWCgpJiZuLkwuVSgiY2xhbXBJbnZhbGlkU2VlayIse3RndDpgJHtXfWAsbWF4c3Q6YCR7RH1gfSksYik6Zy5GZihXLGIsRCl9OwpSeWk9ZnVuY3Rpb24obixXKXtuLlc9V307ClFidz1mdW5jdGlvbihuLFc9ITEpe24uanx8IShuLlc+MCl8fG4ubWVkaWFFbGVtZW50JiZuLm1lZGlhRWxlbWVudC5nZXRDdXJyZW50VGltZSgpPjB8fChXPXtxZDoic2Vla3RpbWVsaW5lX3Jlc3VtZVRpbWUiLEFNOld9LG4udmlkZW9EYXRhLll8fChXLnNlZWtTb3VyY2U9MTUpLG4uc2Vla1RvKG4uVyxXKSl9OwpsQXQ9ZnVuY3Rpb24obixXKXtWWmkobixXKS50aGVuKHZvaWQgMCwoKT0+e2cuQUMobil9KTsKZy5LdShuLFcpLnRoZW4oRD0+e2cuT0IobixEKX0sKCk9PntnLkFDKG4pfSk7Cm4uTC53WShXKTtuLkIuV1goKSYmKFc9bi55cigpLFdbIm5hdGl2ZSJdPWAkeytuLmNKfWAsVy50Z3Q9YCR7bi5KfWAsVy5vdGd0PWAke24uSituLnRpbWVzdGFtcE9mZnNldH1gLFcubWF4c3Q9YCR7bi5ySSgpfWAsbi5OJiZuLlMoImh0bWw1X2hpZ2hfcmVzX3NlZWtfbG9nZ2luZyIpJiYoVy50aHQ9YCR7bi5OLmooKX1gLFcuaHQ9YCR7bi5OLk5XKCl9YCxXLmFkZnQ9YCR7cnMobi5OKX1gKSxuLlMoImh0bWw1X3NhYnJfcGFyc2VfbGl2ZV9tZXRhZGF0YV9wbGF5YmFja19ib3VuZGFyaWVzIikmJm4udmlkZW9EYXRhLk4mJmcuWU4obi52aWRlb0RhdGEpJiYoVy5taW5zdD1gJHtuLnZpZGVvRGF0YS5OLkgyfWAsVy5jbWluc3Q9YCR7bi52aWRlb0RhdGEuTi5MZigpK24udGltZXN0YW1wT2Zmc2V0fWAsVy5tYXhzdD1gJHtuLnZpZGVvRGF0YS5OLldNfWAsVy5odHM9YCR7bi52aWRlb0RhdGEuTi50d31gLFcuY21heHN0PWAke24udmlkZW9EYXRhLk4uckkoKStuLnRpbWVzdGFtcE9mZnNldH1gKSwKbi5MLlUoInN0YXJ0U2VlayIsVykpfTsKVlppPWZ1bmN0aW9uKG4sVyl7bi50d3x8KG4ubG9hZGVyP2lzRmluaXRlKG4uSik/bi50dz1uLmxvYWRlci5zZWVrKG4uSi1uLnRpbWVzdGFtcE9mZnNldCxXKTooZy5EUChuLnZpZGVvRGF0YSksbi5MLmhhPTAsbi50dz1SJChuLmxvYWRlcikscEwobi52aWRlb0RhdGEpfHwobi5KPW4ubG9hZGVyLmdldEN1cnJlbnRUaW1lKCkrbi50aW1lc3RhbXBPZmZzZXQpKTpuLnR3PSRHKG4uSi1uLnRpbWVzdGFtcE9mZnNldCkpO3JldHVybiBuLnR3fTsKZy5PQj1mdW5jdGlvbihuLFcpe24uaiYmKG4uai5yZXNvbHZlKFcpLG4uTC5LdCgpLG4uQi5XWCgpJiYoVz1uLnlyKCksV1sibmF0aXZlIl09YCR7K24uY0p9YCxXLm90Z3Q9YCR7bi5KK24udGltZXN0YW1wT2Zmc2V0fWAsbi5MLlUoInNlZWtFbmQiLFcpKSk7Zy5BQyhuKX07Cnp5MT1mdW5jdGlvbihuKXtuLlgmJihuLlgucmVzb2x2ZShuLm1lZGlhRWxlbWVudC5nZXRDdXJyZW50VGltZSgpKSxuLk8uSj1udWxsKX07CmcuQUM9ZnVuY3Rpb24obil7bi5KPU5hTjtuLlY9TmFOO24uSEo9TmFOO24uWD1udWxsO24udHc9bnVsbDtuLmo9bnVsbDtuLlRDPSExO24uY0o9ITE7bi5EdD0wO24uUyQuc3RvcCgpO24ubnUuc3RvcCgpfTsKYUF3PWZ1bmN0aW9uKG4pe2lmKG4uRClpZihuLnZpZGVvRGF0YS5nVD8uQWopbi5EPSExO2Vsc2UgaWYoZy5wQShuLnZpZGVvRGF0YSkpbi5EPSExO2Vsc2V7dmFyIFc9InNzIixEPTA7bi52aWRlb0RhdGEuTj8uaXNNYW5pZmVzdGxlc3MmJm4udmlkZW9EYXRhLlRDJiYhSkMobikmJihXPSJtc3MiLEQ9bi52aWRlb0RhdGEuVEMpOyhuLnZpZGVvRGF0YS5SST9uLlMoImh0bWw1X3ByaW9yaXRpemVfd2luZG93ZWRfc3Rfc3RhcnRfc2Vjb25kcyIpOm4uUygiaHRtbDVfcHJpb3JpdGl6ZV9zdF9zdGFydF9zZWNvbmRzIikpJiYhRCYmbi52aWRlb0RhdGEuVXImJihXPSJzdHNzIixEPW4udmlkZW9EYXRhLlVyKTshRCYmY3B0KG4pJiYoRD1uLnZpZGVvRGF0YS5saXZlVXRjU3RhcnRTZWNvbmRzfHxuLnZpZGVvRGF0YS5UQyxXPSJ1dGMiLEQ9bi5ySSgpLW4uaEMobi5ySSgpKStEKTshRCYmbi52aWRlb0RhdGEuelcoKSYmbi52aWRlb0RhdGEuVXImJihXPSJzdHNzIixEPW4udmlkZW9EYXRhLlVyKTsKdmFyIGI9e307aWYoRCl7aWYoRD5uLnJJKCl8fEQ8bi5MZigpKWIubWluU2Vla2FibGVUaW1lPW4uTGYoKSxiLm1heFNlZWthYmxlVGltZT1uLnJJKCksYi5jbXQ9bi5nZXRDdXJyZW50VGltZSgpLGIuaXQ9bi5oQyhuLmdldEN1cnJlbnRUaW1lKCkpLGIuc3M9RCxiLnV0Yz1jcHQobik/bi52aWRlb0RhdGEubGl2ZVV0Y1N0YXJ0U2Vjb25kc3x8bi52aWRlb0RhdGEuVEM6MCxuLkwuVSgic3RhcnRTZWNvbmRzT3V0T2ZCb3VuZHMiLGIpLG4udmlkZW9EYXRhLnpXKCkmJihEPUhkKG4sRCwhMSkpO24uc2Vla1RvKEQse3FkOiJzZWVrdGltZWxpbmVfc3RhcnRTZWNvbmRzIn0pO2JbV109RDtuLkwuVSgic3RhcnRTZWNvbmRzIixiKTtuLkQ9ITF9ZWxzZSBuLnZpZGVvRGF0YS5UQyYmKGJbV109bi52aWRlb0RhdGEuVEMrbi5TVygpLG4uTC5VKCJzdGFydFNlY29uZHMiLGIpKX19OwpuQXg9ZnVuY3Rpb24obixXKXt2YXIgRD1uLm1lZGlhRWxlbWVudCxiPVcudHlwZTtzd2l0Y2goYil7Y2FzZSAic2Vla2luZyI6bGV0IHY9RC5nZXRDdXJyZW50VGltZSgpK24udGltZXN0YW1wT2Zmc2V0O2lmKCFuLlh8fG4uY0omJnYhPT1uLkopbi5YPW5ldyBZNixuLlgudGhlbihrPT57Zy5PQihuLGspfSwoKT0+e2cuQUMobil9KSxuLnZpZGVvRGF0YS5pc0FkKCkmJm5uMSh7YWRDcG46bi52aWRlb0RhdGEuY2xpZW50UGxheWJhY2tOb25jZSwKY29udGVudENwbjpuLnZpZGVvRGF0YS5ob3N0Q3BuPz8iIn0sVy5OKSxuLkhKPXYsdTRiKG4uTyxELmdldEN1cnJlbnRUaW1lKCkpLG4uc2Vla1RvKHYse3NlZWtTb3VyY2U6MTA0LHFkOiJzZWVrdGltZWxpbmVfbWVkaWFFbGVtZW50RXZlbnQifSksbi5jSj0hMDticmVhaztjYXNlICJzZWVrZWQiOnp5MShuKTticmVhaztjYXNlICJsb2FkZWRtZXRhZGF0YSI6SWMobi5MKXx8YUF3KG4pO2Z1KG4pO2JyZWFrO2Nhc2UgInByb2dyZXNzIjpmdShuKTticmVhaztjYXNlICJwYXVzZSI6bi5LPW4uZ2V0Q3VycmVudFRpbWUoKX1uLksmJigoYj09PSJwbGF5Inx8Yj09PSJwbGF5aW5nInx8Yj09PSJ0aW1ldXBkYXRlInx8Yj09PSJwcm9ncmVzcyIpJiZuLmdldEN1cnJlbnRUaW1lKCktbi5LPjEwJiYobi5TKCJodG1sNV9za3lfc2tpcF9wYXVzZV9qdW1wIik/bi5MLlUoInNraXBQYXVzZUp1bXAiLHtldnQ6YixjbXQ6bi5nZXRDdXJyZW50VGltZSgpLGxwdDpuLkt9KTpuLnNlZWtUbyhuLkssCntxZDoicGF1c2VKdW1wIn0pKSxiIT09InBhdXNlIiYmYiE9PSJwbGF5IiYmYiE9PSJwbGF5aW5nIiYmYiE9PSJwcm9ncmVzcyImJihuLks9MCkpfTsKY3B0PWZ1bmN0aW9uKG4pe3JldHVybihZcChuLnZpZGVvRGF0YSl8fCEhbi52aWRlb0RhdGEubGl2ZVV0Y1N0YXJ0U2Vjb25kcykmJighIW4udmlkZW9EYXRhLmxpdmVVdGNTdGFydFNlY29uZHN8fEpDKG4pKSYmISFuLnZpZGVvRGF0YS5OfTsKUGQ9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5OLmdldChXKT8uYnVmZmVyLlcoKXx8W119OwpaNz1mdW5jdGlvbihuLFcpe3JldHVybiBuLk4uZ2V0KFcpPy5idWZmZXIuWCgpfHwwfTsKTHIxPWZ1bmN0aW9uKG4sVyl7ZnVuY3Rpb24gRChrKXtyZXR1cm4gYi5WIT09Inl0IiYmKHYucGFydG5lcklkPT09MzgmJmIucGxheWVyU3R5bGU9PT0iYm9va3MifHx2LnBhcnRuZXJJZD09PTMwJiZiLnBsYXllclN0eWxlPT09ImRvY3MifHx2LnBhcnRuZXJJZD09PTMzJiZiLnBsYXllclN0eWxlPT09Imdvb2dsZS1saXZlIik/V3JoKG4sdixrKTpEMXQobix2KS50aGVuKCgpPT57Yi5TKCJlbWJlZHNfZW5hYmxlX3Nob3J0cyIpJiZuLkcoKS5UNyYmdi5pc0VtYmVkc1Nob3J0c01vZGUobmV3IGcuUWUoMCwwKSwhIXYucGxheWxpc3RJZCk/YlVVKG4sdik6VUIobix2KX0saD0+e1VCKG4sdiwhMCk7CnRocm93IGg7fSl9CnZhciBiPW4uRygpLHY9bi5nZXRWaWRlb0RhdGEoKTt2LnFOKCk7di5sb2FkaW5nPSEwO3JldHVybiB2QWoobik/a1VpKG4sdixXKS50aGVuKCgpPT57VUIobix2KX0saz0+e2s9QiQoayk7CmlmKGoyKGsuc2V2ZXJpdHkpKXJldHVybiBVQihuLHYsITApLFByb21pc2UucmVqZWN0KGspO2suZXJyb3JDb2RlPT09Im9uZXNpZS5yZXNwb25zZS5iYWRwcm94eXN0YXR1cyImJmAke2suZGV0YWlscy5zdH1gPT09IjMiJiYoaHBTPSEwKTtuLmhhbmRsZUVycm9yKGspO3JldHVybiBEKCJvbmVzaWUiKX0pOmIuUygiZW1iZWRzX2VuYWJsZV9zaG9ydHMiKSYmYi5UNz94MVUobix2KS50aGVuKCgpPT5EKCJndmkiKSk6RCgiZ3ZpIil9Owp2QWo9ZnVuY3Rpb24obil7dmFyIFc9bi5HKCk7aWYoVy5TKCJodG1sNV9kaXNhYmxlX29uZXNpZSIpfHwhVy5TKCJodG1sNV9vbmVzaWUiKXx8IVcuUygiaHRtbDVfb25lc2llX2lubGluZSIpJiZuLmdldFZpc2liaWxpdHlTdGF0ZSgpPT09NXx8Vy5WIT09Inl0IilyZXR1cm4hMTt2YXIgRD1XLlBYO2lmKCFEfHwhRC5OKXJldHVybiBuLmhhbmRsZUVycm9yKG5ldyBnLkNpKCJvbmVzaWUudW5hdmFpbGFibGUuaG90Y29uZmlnIix7a2V5OiIwIn0pKSwhMTtpZihELk4uSzwoMCxnLlIpKCkmJihuLlUoIm9rZXhwIiwiMSIpLChEPW4uVTQoKSkmJlcuUygiaHRtbDVfcHJlZmVyX3RydXN0ZWRfaG9zdF9vbl9rZXlfZXhwaXJhdGlvbiIpKSl7RC5KPSEwO2xldCBiPUQuTi5nZXQoMCk/Lk4oKTtiJiYheHcoYikmJkQuTi5kZWxldGUoMCl9aWYoaHBTKXJldHVybiBuLlUoIm9zdDMiLCIxIiksITE7RD17fTtyZXR1cm4gT2JqZWN0LmtleXMoRCkubGVuZ3RoPjA/KEQub25lc2llPSIwIixuLmhhbmRsZUVycm9yKG5ldyBnLkNpKCJodG1sNS5taXNzaW5nYXBpIiwKRCkpLCExKTpuLmdldFZpZGVvRGF0YSgpLmxpdmVQcmVsb2FkJiZXLlp0KCkuTi5RUShIcCk/ITE6ITB9Owp5YT1mdW5jdGlvbihuLFcpe3ZhciBEPWcucDIoKTtnLllGKEQsVyk7cmV0dXJuIG5jKEQsaVooKSx7b1M6bi5KLGNsaWVudEludGVyZmFjZTpsbyhuKX0pfTsKZXBaPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGcuazYobi5HKCkpJiZXLnZKKCk/YCR7bi5nZXRQbGF5ZXJUeXBlKCl9XyR7Vy52aWRlb0lkfV8ke1cuS2Z9YDpgJHtuLmdldFBsYXllclR5cGUoKX1fJHtXLnZpZGVvSWR9XyR7Vy5LZn1fJHsrVy5pc0F1dG9uYXZ9JHsrVy5WVH1gfTsKa1VpPWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXtXLmZldGNoVHlwZT0ib25lc2llIjt2YXIgYj12b2lkIDA7aWYoeVUoVykpaWYoYj1uLmk3KXt2YXIgdj1lcFoobixXKTtiPWIuZ2V0KHYpfWVsc2UgYj12b2lkIDA7dj1uLnRiLlFwO2lmKGIpe2lmKFcubG9hZGluZz0hMSxXLk5WPSEwLHpmKFcse3BsYXllcl9yZXNwb25zZTpifSwhMCksVy5sb2FkaW5nfHxIaihXKSlyZXR1cm4gbi5VKCJwcnIiLCIxIiksUHJvbWlzZS5yZXNvbHZlKCl9ZWxzZXtiPWxGKFcsbi5nZXRQbGF5ZXJTaXplKCksbi5nZXRWaXNpYmlsaXR5U3RhdGUoKSk7RD1uZXcgS0QobixiLEQpO2I9YXdhaXQgRC5mZXRjaCgpO2xldCBoPXtwbGF5ZXJfcmVzcG9uc2U6Yn07Vy5sb2FkaW5nPSExO2lmKEQubkEpe2ZvcihsZXQgW3gsTF1vZiBELm5BLmVudHJpZXMoKSl7dmFyIGs9eDtsZXQgZT1MO3YuTi5zZXQoayxlLDE4MCk7az09PVcudmlkZW9JZCYmKGs9ZS5TSigpLFcub009ayl9di5VZz1EfWZvcihsZXQgW3gsTF1vZiBELnQwLmVudHJpZXMoKSl2Lkouc2V0KHgsCkwsMTgwKTt6ZihXLGgsITApO2lmKFcubG9hZGluZ3x8SGooVykpcmV0dXJuIHlVKFcpJiYodj1lcFoobixXKSxXPVcuZ2V0UGxheWVyUmVzcG9uc2UoKSkmJihXPVcucmVzcG9uc2VDb250ZXh0Py5jYWNoZUluc3RydWN0aW9uPy5tYXhBZ2VTZWNvbmRzPz9XLnJlc3BvbnNlQ29udGV4dD8ubWF4QWdlU2Vjb25kcz8/dm9pZCAwLG4uaTc/LnB1dCh2LGIsVykpLFByb21pc2UucmVzb2x2ZSgpfXYuTi5UaSgpO3YuSi5UaSgpO1cub009W107bj17fTt2PSJvbmVzaWUucmVzcG9uc2UiO0Q9MDtXLmVycm9yQ29kZT8odj0iYXV0aCIsbi5lYz1XLmVycm9yQ29kZSxuLmVkPVcuZXJyb3JEZXRhaWwsbi5lcz1XLndpfHwiIixEPTIpOihuLnN1Y2Nlc3NCdXRVbnBsYXlhYmxlPSIxIixuLmRpc3Bvc2VkPWAkeytXLnFOKCl9YCxuLmFmbXRzPWAkeysvYWRhcHRpdmVGb3JtYXRzLy50ZXN0KGIpfWAsbi5jcG49Vy5jbGllbnRQbGF5YmFja05vbmNlKTtyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IGcuQ2kodiwKbixEKSl9OwpEMXQ9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD1XLmlzQWQoKSxiPSFELHY9RD8xOjM7Zm9yKGxldCBoPTA7aDx2O2grKyl7aWYoaD4wKXthd2FpdCBnLlV1KDVFMyk7dmFyIGs9bmV3IGcuUXgoIlJldHJ5aW5nIE9uZVBsYXRmb3JtIHJlcXVlc3QiLHthdHRlbXB0Omh9KTtnLkdxKGspfXRyeXthd2FpdCBnQWkobixXKTtyZXR1cm59Y2F0Y2goeCl7bGV0IEw9QiQoeCk7az1MLmVycm9yQ29kZTtsZXQgZT1uLkcoKS5TKCJodG1sNV91c2VfbmV0d29ya19lcnJvcl9jb2RlX2VudW1zIik/NDAxOiI0MDEiO2ImJms9PT0ibWFuaWZlc3QubmV0LmJhZHN0YXR1cyImJkwuZGV0YWlscy5yYz09PWUmJihiPSExLGg9PT12LTEmJih2Kz0xKSk7aWYoaD09PXYtMSlyZXR1cm4gbj1Yc2koRCxMLmRldGFpbHMpLG4uZGV0YWlscy5iYWNrZW5kPSJvcCIsbi5kZXRhaWxzLm9yaWdpbmVjPWssUHJvbWlzZS5yZWplY3Qobik7aWYoaz09PSJhdXRoInx8az09PSJtYW5pZmVzdC5uZXQucmV0cnlleGhhdXN0ZWQifHwKZy5DTihuLkcoKSkpcmV0dXJuIFByb21pc2UucmVqZWN0KEwpO24uaGFuZGxlRXJyb3IoTCk7aWYoajIoTC5zZXZlcml0eSkpYnJlYWt9fXJldHVybiBQcm9taXNlLnJlamVjdChYc2koRCx7YmFja2VuZDoib3AifSkpfTsKZ0FpPWFzeW5jIGZ1bmN0aW9uKG4sVyl7Vy5mZXRjaFR5cGU9ImdwIjt2YXIgRD1uLkcoKSxiPWcuSEUoRCxXLlYoKSk7Yj1iLk4/YXdhaXQgYi5OOmIuZ2V0VmFsdWUoKTt2YXIgdj15YShELGIpLGs9bEYoVyxuLmdldFBsYXllclNpemUoKSxuLmdldFZpc2liaWxpdHlTdGF0ZSgpKSxoPUxCKHF5aikseD1XLlYoKSxMPSgwLGcuUikoKSxlPSExLEc9ImVtcHR5IjtiPTA7bi5EaygicHNucyIpO3ZhciByPXtsZzpmdW5jdGlvbihOKXtOLnJlYWR5U3RhdGU9PT0yJiZuLkRrKCJwc19jIil9fTsKaWYoRC5KKXtsZXQgTj17dmlkZW9JZDpTdHJpbmcoVy52aWRlb0lkKX0sSD1kbChXLmdldFJlc29sdmVVcmxSZXNwb25zZSgpKTtIJiYoTi5wYXJhbXM9SCk7Vy5wbGF5bGlzdElkJiYoTi5wbGF5bGlzdElkPVN0cmluZyhXLnBsYXlsaXN0SWQpKTtyLkhuPXtSTDp5SCgicGxheWVyIixOKX19dj1hd2FpdCBnLnJfKHYsayxoLHZvaWQgMCxyKTtuLkRrKCJwc25yIik7aWYoIVcucU4oKSl7dj8iZXJyb3IiaW4gdiYmdi5lcnJvcj8oZT0hMCxHPWBlc2Y6JHt2LmVycm9yLm1lc3NhZ2V9YCxiPXYuZXJyb3IuY29kZSk6di5lcnJvck1ldGFkYXRhJiYoZT0hMCxHPSJpdHMiLGI9di5lcnJvck1ldGFkYXRhLnN0YXR1cyk6ZT0hMDtpZihlKXJldHVybiBlPTAsdj0oKDAsZy5SKSgpLUwpLnRvRml4ZWQoKSxMPXt9LEw9RC5TKCJodG1sNV91c2VfbmV0d29ya19lcnJvcl9jb2RlX2VudW1zIik/e2JhY2tlbmQ6Im9wIixyYzpiLHJ0OnYscmVhc29uOkcsaGFzX2twdDpXLkhKPyIxIjoiMCIsaGFzX21keF9lbnY6Vy5tZHhFbnZpcm9ubWVudD8KIjEiOiIwIixoYXNfb21pdF9rZXlfZmxhZzpnLkFyKCJJTk5FUlRVQkVfT01JVF9BUElfS0VZX1dIRU5fQVVUSF9IRUFERVJfSVNfUFJFU0VOVCIpPyIxIjoiMCIsaGFzX3BhZ2VfaWQ6RC5wYWdlSWQ/IjEiOiIwIixoYXNfdG9rZW46eD8iMSI6IjAiLGhhc192dnQ6Vy5EPyIxIjoiMCIsaXNfbWR4OlcuaXNNZHhQbGF5YmFjaz8iMSI6IjAiLG1keF9jdHJsOlcuaTV8fCIiLHRva2VuX2VxOng9PT1XLlYoKT8iMSI6IjAifTp7YmFja2VuZDoib3AiLHJjOmAke2J9YCxydDp2LHJlYXNvbjpHLGhhc19rcHQ6Vy5ISj8iMSI6IjAiLGhhc19tZHhfZW52OlcubWR4RW52aXJvbm1lbnQ/IjEiOiIwIixoYXNfb21pdF9rZXlfZmxhZzpnLkFyKCJJTk5FUlRVQkVfT01JVF9BUElfS0VZX1dIRU5fQVVUSF9IRUFERVJfSVNfUFJFU0VOVCIpPyIxIjoiMCIsaGFzX3BhZ2VfaWQ6RC5wYWdlSWQ/IjEiOiIwIixoYXNfdG9rZW46eD8iMSI6IjAiLGhhc192dnQ6Vy5EPyIxIjoiMCIsaXNfbWR4OlcuaXNNZHhQbGF5YmFjaz8KIjEiOiIwIixtZHhfY3RybDpXLmk1fHwiIix0b2tlbl9lcTp4PT09Vy5WKCk/IjEiOiIwIn0sVz0ibWFuaWZlc3QubmV0LmNvbm5lY3QiLGI9PT00Mjk/KFc9ImF1dGgiLGU9Mik6Yj4yMDAmJihXPSJtYW5pZmVzdC5uZXQuYmFkc3RhdHVzIixiPT09NDAwJiYoZT0yKSksUHJvbWlzZS5yZWplY3QobmV3IGcuQ2koVyxMLGUpKTtXLmxvYWRpbmc9ITE7emYoVyx7cmF3X3BsYXllcl9yZXNwb25zZTp2fSwhMCk7Zy5DTihXLkcoKSkmJnYmJnYudHJhY2tpbmdQYXJhbXMmJmcueXIodi50cmFja2luZ1BhcmFtcyk7aWYoVy5lcnJvckNvZGUpcmV0dXJuIEQ9e2VjOlcuZXJyb3JDb2RlLGVkOlcuZXJyb3JEZXRhaWwsZXM6Vy53aXx8IiJ9LGI9ImF1dGgiLGcuQ04oVy5HKCkpJiZXLmVycm9yQ29kZSYmKGI9Vy5lcnJvckNvZGUpLFByb21pc2UucmVqZWN0KG5ldyBnLkNpKGIsRCwyKSk7aWYoIVcubG9hZGluZyYmIUhqKFcpKXJldHVybiBEPVcuaXNBZCgpPyJhdXRoIjoibWFuaWZlc3QubmV0LnJldHJ5ZXhoYXVzdGVkIiwKUHJvbWlzZS5yZWplY3QobmV3IGcuQ2koRCx7c3VjY2Vzc0J1dFVucGxheWFibGU6IjEiLGhhc01lZGlhOmcuWUwoVyk/IjEiOiIwIn0sMikpfX07CldyaD1hc3luYyBmdW5jdGlvbihuLFcsRCl7ZnVuY3Rpb24gYigpe3JldHVybiEwfQpmdW5jdGlvbiB2KGUpe2U9QiQoZSk7aWYoajIoZS5zZXZlcml0eSkpcmV0dXJuIFByb21pc2UucmVqZWN0KGUpO24uaGFuZGxlRXJyb3IoZSk7cmV0dXJuITF9CnZhciBrPXNfMihuLkcoKSxXLG4uZ2V0UGxheWVyU2l6ZSgpLG4uZ2V0VmlzaWJpbGl0eVN0YXRlKCksbi5pc0Z1bGxzY3JlZW4oKSksaD1XLmlzQWQoKSx4PWg/MTozO2ZvcihsZXQgZT0wO2U8eDtlKyspe3ZhciBMPWs7ZT4wJiYoYXdhaXQgZy5VdSg1RTMpLEw9e3BsYXllcnJldHJ5OmUscGxheWVycmV0cnlzcmM6RH0saHx8KEwucmVjb3Zlcj0iZW1iZWRkZWQiKSxMPWcubHcoayxMKSk7aWYoYXdhaXQgR1UxKFcsTCkudGhlbihiLHYpKXJldHVybn1XPWg/ImF1dGgiOiJtYW5pZmVzdC5uZXQucmV0cnlleGhhdXN0ZWQiO0Q9aD8yOjE7aWYoIWgmJk1hdGgucmFuZG9tKCk8MUUtNCl0cnl7Zy5HcShuZXcgZy5ReCgiYi8xNTIxMzE1NzEiLGJ0b2EoaykpKX1jYXRjaHt9cmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBnLkNpKFcse2JhY2tlbmQ6Imd2aSJ9LEQpKX07CkdVMT1hc3luYyBmdW5jdGlvbihuLFcpe2Z1bmN0aW9uIEQoTCl7aWYoIW4ucU4oKSl7TD1MP0wuc3RhdHVzOi0xO3ZhciBlPTAsRz0oKDAsZy5SKSgpLXgpLnRvRml4ZWQoKTtHPWIuUygiaHRtbDVfdXNlX25ldHdvcmtfZXJyb3JfY29kZV9lbnVtcyIpP3tiYWNrZW5kOiJndmkiLHJjOkwscnQ6R306e2JhY2tlbmQ6Imd2aSIscmM6YCR7TH1gLHJ0Okd9O3ZhciByPSJtYW5pZmVzdC5uZXQuY29ubmVjdCI7TD09PTQyOT8ocj0iYXV0aCIsZT0yKTpMPjIwMCYmKHI9Im1hbmlmZXN0Lm5ldC5iYWRzdGF0dXMiLEw9PT00MDAmJihlPTIpKTtyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IGcuQ2kocixHLGUpKX19Cm4uZmV0Y2hUeXBlPSJndmkiO3ZhciBiPW4uRygpLHY7KHY9TlFpKG4pKT8odj17Zm9ybWF0OiJSQVciLG1ldGhvZDoiUE9TVCIsd2l0aENyZWRlbnRpYWxzOiEwLHRpbWVvdXQ6M0U0LHBvc3RQYXJhbXM6dn0sVz1nLmx3KFcse2FjdGlvbl9kaXNwbGF5X3Bvc3Q6MX0pKTp2PXtmb3JtYXQ6IlJBVyIsbWV0aG9kOiJHRVQiLHdpdGhDcmVkZW50aWFsczohMCx0aW1lb3V0OjNFNH07dmFyIGs9e307Yi5zZW5kVmlzaXRvcklkSGVhZGVyJiZuLnZpc2l0b3JEYXRhJiYoa1siWC1Hb29nLVZpc2l0b3ItSWQiXT1uLnZpc2l0b3JEYXRhKTt2YXIgaD1nLlloKGIuZXhwZXJpbWVudHMsImRlYnVnX3NoZXJsb2dfdXNlcm5hbWUiKTtoJiYoa1siWC1Zb3V0dWJlLVNoZXJsb2ctVXNlcm5hbWUiXT1oKTtPYmplY3Qua2V5cyhrKS5sZW5ndGg+MCYmKHYuaGVhZGVycz1rKTt2YXIgeD0oMCxnLlIpKCk7dj1hd2FpdCBlNChnLnI4LFcsdikudGhlbih2b2lkIDAsZnVuY3Rpb24oTCl7cmV0dXJuIEQoTC54aHIpfSk7CmlmKCF2fHwhdi5yZXNwb25zZVRleHQpcmV0dXJuIEQodik7bi5sb2FkaW5nPSExO3Y9Zy5pdyh2LnJlc3BvbnNlVGV4dCk7emYobix2LCEwKTtpZihuLmVycm9yQ29kZSlyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IGcuQ2koImF1dGgiLHtlYzpuLmVycm9yQ29kZSxlZDpuLmVycm9yRGV0YWlsLGVzOm4ud2l8fCIifSwyKSk7aWYoIW4ubG9hZGluZyYmIUhqKG4pKXJldHVybiB2PW4uaXNBZCgpPyJhdXRoIjoibWFuaWZlc3QubmV0LnJldHJ5ZXhoYXVzdGVkIixQcm9taXNlLnJlamVjdChuZXcgZy5DaSh2LHtzdWNjZXNzQnV0VW5wbGF5YWJsZToiMSJ9LDIpKX07ClhzaT1mdW5jdGlvbihuLFcpe3JldHVybiBuZXcgZy5DaShuPyJhdXRoIjoibWFuaWZlc3QubmV0LnJldHJ5ZXhoYXVzdGVkIixXLG4/MjoxKX07ClVCPWFzeW5jIGZ1bmN0aW9uKG4sVyxEPSExKXt2YXIgYj1uLkcoKTtEJiYoIWcuJDYoYil8fElUKFcpIT09ImVtYmVkZGVkIil8fFcuZkN8fElUKFcpIT09ImFkdW5pdCImJihnLms2KGIpfHxnLlhDKGIpfHxnLk1WKGIpfHx0dShiKXx8Zy5EZihiKXx8bG8oYik9PT0iV0VCX0NSRUFUT1IiKXx8KEQ9Zy5IRShiLFcuVigpKSxEPUQuTj9hd2FpdCBELk46RC5nZXRWYWx1ZSgpLHR5MihuLFcsRCkpfTsKdHkyPWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXt0cnl7bGV0IGs9bi5HKCksaD15YShrLEQpO3ZhciBiPVcuRygpO2xldCB4PWcubzkoKSxMPXtjb250ZXh0Omcub1QoVyksdmlkZW9JZDpXLnZpZGVvSWQscmFjeUNoZWNrT2s6Vy5yYWN5Q2hlY2tPayxjb250ZW50Q2hlY2tPazpXLmNvbnRlbnRDaGVja09rLGF1dG9uYXZTdGF0ZToiU1RBVEVfTk9ORSJ9O0lUKFcpPT09ImFkdW5pdCImJihMLmlzQWRQbGF5YmFjaz0hMCk7Yi5lbWJlZENvbmZpZyYmKEwuc2VyaWFsaXplZFRoaXJkUGFydHlFbWJlZENvbmZpZz1iLmVtYmVkQ29uZmlnKTtiLlluJiYoTC5zaG93Q29udGVudE93bmVyT25seT0hMCk7Vy5TYSYmKEwuc2hvd1Nob3J0c09ubHk9ITApO3guUVEoMTQxKSYmKEwuYXV0b25hdlN0YXRlPXguUVEoMTQwKT8iU1RBVEVfT0ZGIjoiU1RBVEVfT04iKTtpZihnLmVNKGIpKXtsZXQgTj14LlFRKDY1KTtEPU4hPW51bGw/IU46ITE7bGV0IEg9ISFnLlpJKCJ5dC1wbGF5ZXItc3RpY2t5LWNhcHRpb24iKTsKTC5jYXB0aW9uc1JlcXVlc3RlZD1EJiZIfWxldCBlPWIuZ2V0V2ViUGxheWVyQ29udGV4dENvbmZpZygpPy5lbmNyeXB0ZWRIb3N0RmxhZ3M7ZSYmKEwucGxheWJhY2tDb250ZXh0PXtlbmNyeXB0ZWRIb3N0RmxhZ3M6ZX0pO3ZhciB2PUw7bGV0IEc9TEIoJDFDKTtuLkRrKCJ3bl9zIik7Yj17fTtrLkomJihiLkhuPXtSTDp5SCgibmV4dCIse3ZpZGVvSWQ6U3RyaW5nKFcudmlkZW9JZCl9KX0pO2xldCByPWF3YWl0IGcucl8oaCx2LEcsdm9pZCAwLGIpO24uRGsoInduX3IiKTshcnx8ImVycm9yImluIHImJnIuZXJyb3J8fChnLkNOKFcuRygpKSYmci50cmFja2luZ1BhcmFtcyYmZy55cihyLnRyYWNraW5nUGFyYW1zKSx6ZihXLHtyYXdfd2F0Y2hfbmV4dF9yZXNwb25zZTpyfSwhMSkpfWNhdGNoKGspe319OwpiVVU9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD1nLkhFKG4uRygpLFcuVigpKTtEPUQuTj9hd2FpdCBELk46RC5nZXRWYWx1ZSgpO3I2dyhuLFcsRCl9OwpyNnc9YXN5bmMgZnVuY3Rpb24obixXLEQpe249bi5HKCk7dHJ5e2xldCBoPXlhKG4sRCk7bGV0IHg9e2NvbnRleHQ6Zy5vVChXKSxwbGF5ZXJSZXF1ZXN0Ont2aWRlb0lkOlcudmlkZW9JZH0sZGlzYWJsZVBsYXllclJlc3BvbnNlOiEwfSxMPVcuZ2V0UmVzb2x2ZVVybFJlc3BvbnNlKCk7aWYoTCl7bGV0IHI9ZGwoTCk7ciYmKHgucGxheWVyUmVxdWVzdC5wYXJhbXM9cik7bGV0IE49ajcoTCk/LnBhcmFtcztOJiYoeC5wYXJhbXM9Til9dmFyIGI9eDtsZXQgZT1MQihzdjIpO0Q9e307aWYobi5KKXtsZXQgcj17dmlkZW9JZDpTdHJpbmcoVy52aWRlb0lkKX07dmFyIHYsaz1XLmdldFJlc29sdmVVcmxSZXNwb25zZSgpOyh2PWo3KGspPy5wYXJhbXMpJiYoci5wYXJhbXM9dik7RC5Ibj17Ukw6eUgoInJlZWxfaXRlbV93YXRjaCIscil9fWxldCBHPWF3YWl0IGcucl8oaCxiLGUsdm9pZCAwLEQpOyFHfHwiZXJyb3IiaW4gRyYmRy5lcnJvcnx8emYoVyx7cmF3X3JlZWxfaXRlbV93YXRjaF9yZXNwb25zZTpHfSl9Y2F0Y2goaCl7fX07CngxVT1hc3luYyBmdW5jdGlvbihuLFcpe3RyeXtsZXQgaz1uLkcoKSxoPWcuSEUoayxXLlYoKSkseD1oLk4/YXdhaXQgaC5OOmguZ2V0VmFsdWUoKSxMPXlhKGsseCk7dmFyIEQ9bi5nZXRQbGF5ZXJTaXplKCksYj1uLmdldFZpc2liaWxpdHlTdGF0ZSgpO3ZhciB2PXtjb250ZXh0Omcub1QoVyksdXJsOmBodHRwczovL3d3dy55b3V0dWJlLmNvbS9lbWJlZC8ke1cudmlkZW9JZH1gLHBsYXliYWNrQ29udGV4dDp7Y29udGVudFBsYXliYWNrQ29udGV4dDpkayhXLEQsYil9fTtsZXQgZT1MQihONGgpLEc9YXdhaXQgZy5yXyhMLHYsZSk7Vy5xTigpfHxHJiZ6ZihXLHtyYXdfcmVzb2x2ZV91cmxfcmVzcG9uc2U6R30sITApfWNhdGNoKGspe319Owpwc3I9ZnVuY3Rpb24obixXKXtuLkRrKCJ2aXIiKTtuLkRrKCJwc19zIik7Zy5nXygidmlyIix2b2lkIDAsInZpZGVvX3RvX2FkIik7Vz1McjEobixXKTtXLnRoZW4oZnVuY3Rpb24oKXtuLkRrKCJ2aXJjIik7Zy5nXygidmlyYyIsdm9pZCAwLCJ2aWRlb190b19hZCIpO24uRGsoInBzX3IiKTtnLmdfKCJwc19yIix2b2lkIDAsInZpZGVvX3RvX2FkIil9LGZ1bmN0aW9uKCl7bi5EaygidmlyYyIpOwpnLmdfKCJ2aXJjIix2b2lkIDAsInZpZGVvX3RvX2FkIil9KTsKcmV0dXJuIFd9OwpFQj1mdW5jdGlvbigpe3ZhciBuPUcxKCk7cmV0dXJuISghbnx8bj09PSJ2aXNpYmxlIil9OwpIVWk9ZnVuY3Rpb24obil7dmFyIFc9WXlpKCk7VyYmZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihXLG4sITEpfTsKZnZpPWZ1bmN0aW9uKG4pe3ZhciBXPVl5aSgpO1cmJmRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoVyxuLCExKX07Cll5aT1mdW5jdGlvbigpe2lmKGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSl2YXIgbj0idmlzaWJpbGl0eWNoYW5nZSI7ZWxzZXtpZighZG9jdW1lbnRbcTArIlZpc2liaWxpdHlTdGF0ZSJdKXJldHVybiIiO249cTArInZpc2liaWxpdHljaGFuZ2UifXJldHVybiBufTsKSXZoPWZ1bmN0aW9uKG4pe0o2cj1ufTsKU3lyPWZ1bmN0aW9uKG4pe2lWPW59OwpTUE09ZnVuY3Rpb24obil7dmFyIFc9bi5oVTtuPW4udmlkZW9EYXRhO3ZhciBEPVpWKFcsbik7Vy5TKCJodG1sNV9kaXNhYmxlX2NsaWVudF9hdXRvbmF2X2NhcF9mb3Jfb25lc2llIil8fEQuY29tcG9zZShVWChXLG4pKTtyZXR1cm4gRH07CkdYPWZ1bmN0aW9uKG4sVyl7dVYobixXLnJlYXNvbixXLk4uaW5mbyxXLnNvdXJjZSxXLnRva2VuKX07Cm9jPWZ1bmN0aW9uKG4sVyl7bi5XSigibG9jYWxtZWRpYWNoYW5nZSIsVyl9OwpQOVU9ZnVuY3Rpb24obixXKXtuLnRiLmRUKCl8fChuLlUoInNnYXAiLHtmOld9KSxuLnRiLmNsZWFyUXVldWUoITEsVz09PSJwZSIpKX07Cm0xVT1mdW5jdGlvbihuKXtuLm1lZGlhRWxlbWVudCYmKG4ubWVkaWFTb3VyY2U/KGRzKG4pLG4ubXkoKSxBNmoobiwhMSkpOihuLnZpZGVvRGF0YS5jSiYmbi52aWRlb0RhdGEuY0ouWCgpLG4ubWVkaWFFbGVtZW50LnN0b3BWaWRlbygpKSxuLnBsYXlWaWRlbygpKX07CkljPWZ1bmN0aW9uKG4pe3JldHVybiBuLlMoImh0bWw1X2Rpc2FibGVfdmlkZW9fcGxheWVyX2luaXRpYXRlZF9zZWVrcyIpJiZnLllOKG4udmlkZW9EYXRhKX07CmxWPWZ1bmN0aW9uKG4sVyl7bi54byYmelkobik7bi54bz1uZXcgZy5sNShXKjFFMywweDdmZmZmZmZmZmZmZmYpO24ueG8ubmFtZXNwYWNlPSJlbmRjciI7bi5hZGRDdWVSYW5nZShuLnhvKX07CnpZPWZ1bmN0aW9uKG4pe24ucmVtb3ZlQ3VlUmFuZ2Uobi54byk7bi54bz1udWxsfTsKamg9ZnVuY3Rpb24obil7aWYobi52aWRlb0RhdGEuVyYmbi52aWRlb0RhdGEuVy5OKCkpe3ZhciBXPVRZKG4pO24ubG9hZGVyJiZuLmxvYWRlci5tbyhXKX19OwpCZD1mdW5jdGlvbihuLFc9ITApe24uQi5BbSYmIW4udmlkZW9EYXRhLmJhY2tncm91bmRhYmxlJiZuLm1lZGlhRWxlbWVudCYmIW4uRTgoKSYmKG4uaXNCYWNrZ3JvdW5kKCkmJm4ubWVkaWFFbGVtZW50LkdDKCk/KG4uVSgiYmdtb2JpbGUiLHtzdXNwZW5kOjF9KSxuLm9KKCEwLCEwKSk6IW4uaXNCYWNrZ3JvdW5kKCkmJlcmJkN1KG4pJiZuLlUoImJnbW9iaWxlIix7cmVzdW1lOjF9KSl9OwpGSj1mdW5jdGlvbihuKXtpZighZy5EUChuLnZpZGVvRGF0YSkpcmV0dXJuIE5hTjt2YXIgVz0wO24ubG9hZGVyJiZuLnZpZGVvRGF0YS5OJiYoVz1JNChuLnZpZGVvRGF0YSk/bi5sb2FkZXIucWgoKTpuLnZpZGVvRGF0YS5OLnFoKCkpO3JldHVybigwLGcuUikoKS8xRTMtbi5oQygpLVd9OwpLcmI9ZnVuY3Rpb24obixXKXtpZihuLnBsYXllclR5cGU9PT0yfHxuLkIuQ20pVy5vYz0hMDt2YXIgRD1UbChXLkZGLFcuRncsbi5CLkosbi5CLkspO0QmJihXLmFkRm9ybWF0PUQpO24ucGxheWVyVHlwZT09PTImJihXLkd1PSEwKTtpZihuLmlzRnVsbHNjcmVlbigpfHxuLkIuSilEPWcuWkkoInl0LXBsYXllci1hdXRvbmF2c3RhdGUiKSxXLmF1dG9uYXZTdGF0ZT1EfHwobi5CLko/MjpuLnZpZGVvRGF0YS5hdXRvbmF2U3RhdGUpO1cuZW5kU2Vjb25kcyYmVy5lbmRTZWNvbmRzPlcuc3RhcnRTZWNvbmRzJiZsVihuLFcuZW5kU2Vjb25kcyl9Owp3cz1mdW5jdGlvbihuKXtuLmxvYWRlciYmKG4ubG9hZGVyLmRpc3Bvc2UoKSxuLmxvYWRlcj1udWxsLG1vKG4uZGEsbnVsbCkpO24ucGcoKT9PVWgobik6bi5teSgpfTsKVTFpPWZ1bmN0aW9uKG4pe2lmKCFuLnBsYXllclN0YXRlLk4oMTI4KSlpZihuLnZpZGVvRGF0YS5pc0xvYWRlZCgpLG4uaWw9Zy5STShuLnZpZGVvRGF0YS5JSiksZy5ZTChuLnZpZGVvRGF0YSkpe24ubVEudGljaygiYnBkX3MiKTtNOShuKS50aGVuKCgpPT57bi5tUS50aWNrKCJicGRfYyIpO2lmKCFuLnFOKCkpe24uTkwmJihuLkJOKEJyKEJyKG4ucGxheWVyU3RhdGUsNTEyKSwxKSksQ3UobikpO3ZhciBEPW4udmlkZW9EYXRhO0QuZW5kU2Vjb25kcyYmRC5lbmRTZWNvbmRzPkQuc3RhcnRTZWNvbmRzJiZsVihuLEQuZW5kU2Vjb25kcyk7bi5MUi5maW5pc2hlZD0hMDtSYyhuLCJkYXRhbG9hZGVkIik7bi5qSC5zdGFydGVkJiZRYShuKTtsNVUobi5oVSxuLkRoKX19KTsKbi5TKCJodG1sNV9sb2dfbWVkaWFfcGVyZl9pbmZvIikmJm4uVSgibG91ZG5lc3MiLHt2Om4udmlkZW9EYXRhLllLLnRvRml4ZWQoMyl9LCEwKTt2YXIgVz1uLm1lZGlhRWxlbWVudD8uZV8oKTtpZihXJiYiZGlzYWJsZVBpY3R1cmVJblBpY3R1cmUiaW4gVyYmbi5CLkh4KXRyeXtXLmRpc2FibGVQaWN0dXJlSW5QaWN0dXJlPW4uQi5MQiYmIW4udmlkZW9EYXRhLmJhY2tncm91bmRhYmxlfWNhdGNoKEQpe2cuR3EoRCl9UFJiKG4pO24uQkg9bmV3IFpVcihuLnZpZGVvRGF0YSl9ZWxzZSBSYyhuLCJkYXRhbG9hZGVkIil9Owp5Nlo9ZnVuY3Rpb24obil7dmFyIFc9bi52aWRlb0RhdGE7cHNyKG4sbi5paikudGhlbih2b2lkIDAsRD0+e24udmlkZW9EYXRhIT09V3x8Vy5xTigpfHwoRD1CJChEKSxELmVycm9yQ29kZT09PSJhdXRoIiYmbi52aWRlb0RhdGEuZXJyb3JEZXRhaWwmJm4udmlkZW9EYXRhLmVycm9yRGV0YWlsIT09IjciP24uUFYoRC5lcnJvckNvZGUsMix1bmVzY2FwZShuLnZpZGVvRGF0YS5lcnJvclJlYXNvbiksZy5UQyhELmRldGFpbHMpLG4udmlkZW9EYXRhLmVycm9yRGV0YWlsLG4udmlkZW9EYXRhLndpfHx2b2lkIDApOm4uaGFuZGxlRXJyb3IoRCkpfSl9OwpFQUM9ZnVuY3Rpb24obil7cmV0dXJuIGcuazYobi5CKSYmbi52aWRlb0RhdGEuaXNMaXZlUGxheWJhY2smJighbi5CLlMoImh0bWw1X2FsbG93X211bHRpdmlld190aWxlX3ByZWxvYWQiKXx8IW4udmlkZW9EYXRhLmxpdmVQcmVsb2FkKX07Ck05PWZ1bmN0aW9uKG4pe3dzKG4pO24uRGg9bnVsbDt2YXIgVz1Vancobi5CLG4udmlkZW9EYXRhLG4uRTgoKSk7bi50Uj1XO24udFIudGhlbihEPT57aVV0KG4sRCl9LEQ9PntuLnFOKCl8fChEPUIkKEQpLG4udmlzaWJpbGl0eS5pc0JhY2tncm91bmQoKT8oVmEobiwidnBfbm9uZV9hdmFpbCIpLG4udFI9bnVsbCxuLkxSLnJlc2V0KCkpOihuLkxSLmZpbmlzaGVkPSEwLG4uUFYoRC5lcnJvckNvZGUsRC5zZXZlcml0eSwiSFRNTDVfTk9fQVZBSUxBQkxFX0ZPUk1BVFNfRkFMTEJBQ0siLGcuVEMoRC5kZXRhaWxzKSkpKX0pOwpyZXR1cm4gV307ClBSYj1mdW5jdGlvbihuKXtpZihLeihuLnZpZGVvRGF0YSwiaHRtbDVfc2V0X2RlYnVnZ2luZ19vcHRfaW4iKSl7bGV0IFc9Zy5vOSgpO2lmKCFXLlFRKDE4Mykpe249YGYke01hdGguZmxvb3IoMTgzLzMxKSsxfWA7bGV0IEQ9VDEobil8fDA7RHw9MjY4NDM1NDU2O0Q9PT0wP2RlbGV0ZSBsT1tuXTpsT1tuXT1ELnRvU3RyaW5nKDE2KS50b1N0cmluZygpO1cuc2F2ZSgpfX19OwpSYz1mdW5jdGlvbihuLFc9ImRhdGF1cGRhdGVkIil7bi5XSigiaW50ZXJuYWx2aWRlb2RhdGFjaGFuZ2UiLFcsbi52aWRlb0RhdGEpfTsKaVV0PWZ1bmN0aW9uKG4sVyl7aWYoIW4ucU4oKSYmIVcudmlkZW9EYXRhLnFOKCkpe24uRGg9VztGM2Iobi5kYSxuLkRoKTtpZihuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFjayl7dmFyIEQ9dVJyKG4udGIuUXAsbi52aWRlb0RhdGEudmlkZW9JZCl8fG4ubG9hZGVyJiYhaXNOYU4obi5sb2FkZXIuQ0gpO0Q9bi5TKCJodG1sNV9vbmVzaWVfbGl2ZSIpJiZEO0ljKG4pfHxuLnZpZGVvRGF0YS5UQz4wJiYhSTQobi52aWRlb0RhdGEpfHxEfHxuLnNlZWtUbyhuLnJJKCkse3FkOiJ2aWRlb3BsYXllcl9wbGF5YmFja0RhdGEiLHNlZWtTb3VyY2U6MTh9KX1pZihuLnZpZGVvRGF0YS5XLk4oKSl7aWYoVGhpKG4udmlkZW9EYXRhKSl7bi5QVigiZm10Lm1pc3NpbmciLDIsIkJST1dTRVJfT1JfRVhURU5TSU9OX0VSUk9SIixnLlRDKHttaXNzYWJydXJsOjF9KSk7cmV0dXJufWlmKG4ubG9hZGVyKWcuR3EoRXJyb3IoIkR1cGxpY2F0ZWQgTG9hZGVyIikpO2Vsc2V7RD1nLmRNKG4uQi5leHBlcmltZW50cywKImh0bWw1X29uZXNpZV9kZWZlcl9jb250ZW50X2xvYWRlcl9tcyIpO2xldCBiPSgpPT57Y2QobiwoKT0+e24ucU4oKXx8bi5sb2FkZXJ8fG9BdChuKX0pfTsKRCYmbi5PUCgpJiZ1UnIobi50Yi5RcCxuLnZpZGVvRGF0YS5Xaik/Zy5uJChiLEQpOmIoKX19ZWxzZSFuLnZpZGVvRGF0YS5XLk4oKSYmT1Mobi52aWRlb0RhdGEpJiZvYyhuLG5ldyBhYyhuLnZpZGVvRGF0YS52aWRlb0lkfHwiIiw0KSk7bi51digpO3VpaihXKS50aGVuKCgpPT57dmFyIGI9e307bi5zVChiKTtuLkIuV1goKSYmbi5TKCJodG1sNV9sb2dfbWVkaWFfcGVyZl9pbmZvIikmJm4uVSgiYXYxSW5mbyIsYik7amgobil9KX19OwpDdT1mdW5jdGlvbihuLFc9ITEpe2lmKCFuLm1lZGlhRWxlbWVudHx8IW4udmlkZW9EYXRhLlcpcmV0dXJuITE7dmFyIEQ9ZDEyKG4sVyksYj1uLm1lZGlhRWxlbWVudC5HQygpLHY9ITE7YiYmYi5lcXVhbHMoRCl8fCh6cGkobixEKSx2PSEwKTtuLnBsYXllclN0YXRlLk4oMil8fFFidyhuLmRhLFcpO2E6e1c9djtpZihnLllOKG4udmlkZW9EYXRhKSl7aWYoIW4udmlkZW9EYXRhLk1pKCkpYnJlYWsgYX1lbHNlIGlmKCFnLnF1KG4udmlkZW9EYXRhKSlicmVhayBhO2lmKG4ubWVkaWFFbGVtZW50KWlmKChEPW4udmlkZW9EYXRhLmopJiZuLm1lZGlhRWxlbWVudC5LKCkpe2I9bi5tZWRpYUVsZW1lbnQuZV8oKTtpZihuLkxBKWlmKGIhPT1uLkxBLmVsZW1lbnQpZHMobik7ZWxzZSBpZihXJiZELmZsYXZvcj09PSJmYWlycGxheSImJiF6USgpKWRzKG4pO2Vsc2UgYnJlYWsgYTtpZihuLlMoImh0bWw1X3JlcG9ydF9lcnJvcl9mb3JfdW5zdXBwb3J0ZWRfdHZvc193aWRldmluZSIpJiZ6USgpJiYKRC5mbGF2b3I9PT0id2lkZXZpbmUiKW4uUFYoImZtdC51bnBsYXlhYmxlIiwxLCJIVE1MNV9OT19BVkFJTEFCTEVfRk9STUFUU19GQUxMQkFDSyIsInRyZy51bnNwdHR2b3N3aWRldmluZSIpO2Vsc2V7bi5MQT1uZXcgbHZ3KGIsbi52aWRlb0RhdGEsbi5CLG4ubWVkaWFFbGVtZW50LG4uZGgpO24uTEEuc3Vic2NyaWJlKCJsaWNlbnNlZXJyb3IiLG4uYm8sbik7bi5MQS5zdWJzY3JpYmUoInF1YWxpdHljaGFuZ2UiLG4uVzQsbik7bi5MQS5zdWJzY3JpYmUoImhlYXJ0YmVhdHBhcmFtcyIsbi5iWixuKTtuLkxBLnN1YnNjcmliZSgia2V5c3RhdHVzZXNjaGFuZ2UiLG4uWVYsbik7bi5MQS5zdWJzY3JpYmUoImN0bXAiLG4uVSxuKTtmb3IobGV0IGsgb2Ygbi5EYi5rZXlzKVc9bi5EYi5nZXQoayksbi5MQS5XbihXKTtuLlMoImh0bWw1X2VtZV9sb2FkZXJfc3luYyIpfHxuLkRiLlRpKCl9fWVsc2Ugbi5QVigiZm10LnVucGxheWFibGUiLDEsIkhUTUw1X05PX0FWQUlMQUJMRV9GT1JNQVRTX0ZBTExCQUNLIiwKInRyZy51cGRhdGVkcm0iKX1yZXR1cm4gdn07CmNkPWZ1bmN0aW9uKG4sVyl7bi5CLmVCJiZuLkIuWnQoKS5OLlFRKG5hKT9TayhuLkIuZUIsVywoKT0+e0p1KG4uQik7bi5CLmVCPXZvaWQgMDtXKCl9KTpXKCl9OwpvQXQ9ZnVuY3Rpb24obil7dmFyIFc9bi52aWRlb0RhdGEuTixEPXtjcG46bi52aWRlb0RhdGEuY2xpZW50UGxheWJhY2tOb25jZSxjOm4uQi5OLmMsY3ZlcjpuLkIuTi5jdmVyfTtmb3IobGV0IFtoLHhdb2YgT2JqZWN0LmVudHJpZXMoRCkpe0Q9aDt2YXIgYj14O2Zvcih2YXIgdiBvZiBPYmplY3QudmFsdWVzKFcuTikpdi5YYi5jSihELGIpO1cuWT8uY0ooRCxiKX12PW4uQjtEPW4udmlkZW9EYXRhO2I9bi5pajtXPW5ldyBnLlQ0Mih2KTt2YXIgaz1OOFooe2hhc1N1YmZyYWdtZW50ZWRGbXA0OkQuaGFzU3ViZnJhZ21lbnRlZEZtcDQsSTI6RC5JMn0pO1cuVj1rO1cuTz1ELm1heFJlYWRBaGVhZE1lZGlhVGltZU1zLzFFM3x8Vy5PO2IuWC5MZygpPT09Yi5wb2xpY3kuTj9XLmpXPTEwOlcualc9RC5taW5SZWFkQWhlYWRNZWRpYVRpbWVNcy8xRTN8fFcualc7Vy5MSz1ELnJlYWRBaGVhZEdyb3d0aFJhdGVNcy8xRTN8fFcuTEs7RC5RNiYmKFcuWD0hMCk7Vy5OZj0hYWQoKTtnLms2KHYpfHwKIWFkKCk/KFcuZSQ9ODM4ODYwOCxXLnZKPTUyNDI4OCxXLklNPTUsVy5ISj0xMDQ4NTc2LFcuVDQ9MS41LFcuTnM9NDU4NzUyMCxsYigpJiYoVy5Ocz03ODY0MzIpLFcuSyo9MS4xLFcuY0oqPTEuMSxXLm1oPSEwKTp2LmomJihXLksqPTEuMyxXLmNKKj0xLjMpO2cub2QmJmcudWIoImNya2V5IikmJihrPXYuTi5jbW9kZWw9PT0iQ0hST01FQ0FTVC9BTkNIT1ZZIixXLmUkPTIwOTcxNTIwLFcudko9MTU3Mjg2NCxrJiYoVy5Ocz04MTI1MDAsVy5iTj0xRTMsVy5Saz01LFcuSEo9MjA5NzE1MikpO2cuYW8mJihXLm1oPSEwKTt2LnN1cHBvcnRzR2FwbGVzc0F1ZGlvKCl8fChXLkRUPSExKTtnLldYJiYoVy5ZJD0hMCk7Vy5zVj12LlMoImh0bWw1X3BlYWtfc2hhdmUiKTtELmhxKCkmJnYuUygiaHRtbDVfZGlzYWJsZV9wZWFrX3NoYXZlX2Zvcl9vbmVzaWUiKSYmKFcuc1Y9ITEpO2s9RC5OPy5YKCk7aWYoSTQoRCkpe1cuZVY9ITA7Vy5VVHx8KFcuZlI9ITApO1cuUFg9ITA7Vy5TVj0hMDtXLllyPQohMDtpZihELmxhdGVuY3lDbGFzcz09PSJVTFRSQUxPVyJ8fEQubGF0ZW5jeUNsYXNzPT09IkxPVyImJiF2LlMoImh0bWw1X2Rpc2FibGVfbG93X3BpcGVsaW5lIikpVy53bz0yLFcuQ3k9NDtXLnNKPUQuZGVmcmFnZ2VkRnJvbVN1YmZyYWdtZW50cztnLnBBKEQpJiYoVy5CVj0hMSk7Vy5DbT1nLkdsKHYpfUQuaXNBZCgpJiYoVy50TT0wLFcuSFk9MCk7Vy5UNz12LlMoImh0bWw1X3VsdHJhX2xvd19sYXRlbmN5X3N1YnNlZ21lbnRfcmVhZGFoZWFkIikmJkQubGF0ZW5jeUNsYXNzPT09IlVMVFJBTE9XIjtXLlc9di5XWCgpO2IuSi5YPUk0KEQpPy41OjA7RC5pc0xpdmVQbGF5YmFjayYmKFcuV2M9Zy5kTSh2LmV4cGVyaW1lbnRzLCJodG1sNV9taW5fc3RhcnR1cF9idWZmZXJlZF9tZWRpYV9kdXJhdGlvbl9mb3JfbGl2ZV9zZWNzIil8fC4yNSxXLm51PSExKTtELk1pKCkmJihXLm51PSExKTtXLnFqPSF2LlMoImh0bWw1X3NhYnJfa2VlcF9hbGxfcXVhbGl0eV9jb25zdHJhaW50cyIpO1cuQjM9CkxBKEQpO2hEKEQpJiYoVy5UNz0hMCxELmxhdGVuY3lDbGFzcz09PSJMT1ciP1cud2E9Zy5kTSh2LmV4cGVyaW1lbnRzLCJodG1sNV9qdW1ib19tb2JpbGVfc3Vic2VnbWVudF9yZWFkYWhlYWRfdGFyZ2V0Iik6RC5sYXRlbmN5Q2xhc3M9PT0iVUxUUkFMT1ciJiYoVy53YT1nLmRNKHYuZXhwZXJpbWVudHMsImh0bWw1X2p1bWJvX3VsbF9zdWJzZWdtZW50X3JlYWRhaGVhZF90YXJnZXQiKSksVy5iQj0hMCk7RC56VygpJiYoVy53eT0xLjMpO1cuWSQ9Vy5ZJHx8RC5mUjtXLkhpPShXLkhpfHxELkhpKSYmdi5LO1cuVjY9RC5LO3YuV1goKSYmKFcuUmE9ITApO0QuSyYmIWsmJihXLktvPSEwKTtELksmJkQuaXNBZCgpJiYoVy5LKj0xLjYsVy5jSio9MS42KTtPUyhEKSYmKFcuSj1ELnZpZGVvSWQsVy52bj0hMCxXLnN6PTEwMCxELnhoJiZELnhoLmxlbmd0aD4wJiYoVy5iVj1ELnhoKSk7Vy5lQj1ELlo5O1cublM9REsodix7fSxELld8fHZvaWQgMCxReihEKSk7Vy5iZD1SUShEKSYmKGcuTVYodil8fAp0dSh2KSk7Zy5ZTihEKSYmKFcuaj0hMCxXLkU1PWcuazYodikmJiFnLmQ4KCk/ITE6ITAsIVcuZTQmJnYuUygiaHRtbDVfc2Ficl9ub25fc3RyZWFtaW5nX3hocl9jbGllbnRfcmVxdWVzdF9jYW5jZWxsYXRpb24iKSYmKFcudlg9ITAsVy5DdT0hMCxXLlRJPWcuZE0odi5leHBlcmltZW50cywiaHRtbDVfc2Ficl9ub25fc3RyZWFtaW5nX3hocl9yZXF1ZXN0X2NhbmNlbGxhdGlvbl90aW1lb3V0X21zIil8fDhFMyxXLnN6PWcuZE0odi5leHBlcmltZW50cywiaHRtbDVfc2Ficl9ub25fc3RyZWFtaW5nX3hocl90aW1lb3V0X3JldHJ5X2xpbWl0Iil8fDMpLHYuUygiaHRtbDVfc2Ficl9yZXBvcnRfcGFydGlhbF9zZWdtZW50X2VzdGltYXRlZF9kdXJhdGlvbiIpJiYoVy5SRD0hMCksVy5OPSEwLFcudkY9di5TKCJodG1sNV90cmlnZ2VyX2xvYWRlcl93aGVuX2lkbGVfbmV0d29yayIpLFcuSjg9di5TKCJodG1sNV9zYWJyX3BhcnNlX2xpdmVfbWV0YWRhdGFfcGxheWJhY2tfYm91bmRhcmllcyIpLApXLmNMPXYuUygiaHRtbDVfY29uc3VtZV9vbmVzaWVfbmV4dF9yZXF1ZXN0X3BvbGljeV9mb3Jfc2FiciIpLFcuQVY9di5TKCJodG1sNV9sb2dfaGlnaF9yZXNfYnVmZmVyX3RpbWVsaW5lIikmJnYuV1goKSxXLmZDPXYuUygiaHRtbDVfZ2FwbGVzc19zYWJyX2J0bF9sYXN0X3NsaWNlIikmJkFKKEQpLFcucG89di5TKCJodG1sNV9yZXNldF9sYXN0X2FwcGVuZGVkX3NsaWNlX29uX3NlZWsiKSYmQUooRCksSTQoRCkmJihXLlZIPSEwLFcuUyQ9ITAsdi5TKCJodG1sNV9zaW1wbGlmaWVkX2JhY2t1cF90aW1lb3V0X3NhYnJfbGl2ZSIpJiYoVy5DdT0hMCxXLmJOPVcuZlopKSxXLmg4PXYuUygiaHRtbDVfc2VydmVfc3RhcnRfc2Vjb25kc19zZWVrX2Zvcl9wb3N0X2xpdmVfc2FiciIpLFcuczU9di5TKCJodG1sNV9mbHVzaF9pbmRleF9vbl91cGRhdGVkX3RpbWVzdGFtcF9vZmZzZXQiKSxXLlk9Zy5ZTihEKSxXLm9UPXYuUygiaHRtbDVfaWdub3JlX3BhcnRpYWxfc2VnbWVudF9mcm9tX2xpdmVfcmVhZGFoZWFkIiksCnYuUygiaHRtbDVfaW5jbHVkZV9wYXJ0aWFsX3NlZ21lbnRfZm9yX2p1bWJvX2xsIikmJmhEKEQpJiYoVy5vVD0hMSksVy5zMz12LlMoImh0bWw1X3VzZV9ub25fYWN0aXZlX2Jyb2FkY2FzdF9mb3JfcG9zdF9saXZlIiksVy5sbj12LlMoImh0bWw1X2NlbnRyYWxpemVkX3BsYXllcl90aW1lX2xpdmUiKSYmZy5ZTihEKSYmRC5pc0xpdmVQbGF5YmFja3x8di5TKCJodG1sNV91c2VfY2VudHJhbGl6ZWRfcGxheWVyX3RpbWUiKSYmZy5ZTihEKSxXLkdDPXYuUygiaHRtbDVfbG9nX2NlbnRyYWxpemVkX3BsYXllcl90aW1lIiksVy5BeD12LlMoImh0bWw1X3VzZV9jZW50cmFsaXplZF9wbGF5ZXJfdGltZV9maXhlcyIpJiZnLllOKEQpLFcuclc9di5TKCJodG1sNV9jb25zdW1lX29uZXNpZV9zYWJyX3NlZWsiKSxXLnR3PXYuUygiaHRtbDVfZW5hYmxlX3NhYnJfc2Vla19sb2FkZXJfcmVmYWN0b3IiKSxELmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpJiYoVy5VMT0hMCxXLldLPXYuUygiaHRtbDVfcmVzZXRfc2VydmVyX3N0aXRjaF9zdGF0ZV9mb3Jfbm9uX3NhYnJfc2VlayIpLApXLmllPXYuUygiaHRtbDVfcmVtb3ZlX3NzZGFpX2FwcGVuZF9wYXVzZSIpJiYhRC5ERigpLFcueXc9di5TKCJodG1sNV9zc2RhaV9sb2dfc3NldnRfaW5fbG9hZGVyX3RpbWVycyIpKSxXLkVaPXYuV1goKSxXLmxhdGVuY3lDbGFzcz1ELmxhdGVuY3lDbGFzcyxXLm1EPSFELnpXKCkmJnYuUygiaHRtbDVfcHJlYnVmZmVyX2luc3RyZWFtX21lZGlhX3ZvZCIpKTtXLnlFPWcubU8oRCk7Vy5Rcj12LlMoImh0bWw1X2VuYWJsZV9zYWJyX290Zl9pbl9jbGllbnQiKTtpZihELk5QKCl8fEQuaXNBZCgpKVcuZ089ITE7RC56VygpJiZ2LmV4cGVyaW1lbnRzLlp0KCkuTi5RUShqdk0pJiYoYj1ELmxDPy5nZXQoImlkIikpJiZiLmluY2x1ZGVzKCIlN0UiKSYmKFcuV2k9ITApO1NKKHYuVyxBVC5CSVRSQVRFKSYmKFcuTnM9TmFOKTtpZihiPWcuZE0odi5leHBlcmltZW50cywiaHRtbDVfcmVxdWVzdF9zaXplX21heF9rYiIpKVcuSEo9YioxMDI0O2lmKHYuVy5KKVcucFI9IjsgIitBVC5FWFBFUklNRU5UQUwubmFtZSsKIj1hbGxvd2VkIjtlbHNlIGlmKHYuZXhwZXJpbWVudHMudzAoKS5OLlFRKENSaSkmJmcuZDgoKSl7bGV0IHtuYW1lOmgsdmFsaWQ6eH09QVQuVFVOTkVMTU9ERTtXLnBSPWA7ICR7aH09JHt4fWB9dj1ELnNlcnZlclBsYXliYWNrU3RhcnRDb25maWc7dj8uZW5hYmxlJiZ2Py5wbGF5YmFja1N0YXJ0UG9saWN5JiYoVy5GZT0hMCxsUyhXLHYucGxheWJhY2tTdGFydFBvbGljeSwyKSk7dj1CNFUobik7bi5EYi5UaSgpO2E6e0Q9bi50Yi5RcDtpZihiPW4udmlkZW9EYXRhLnZpZGVvSWQpaWYoaz1ELk4uZ2V0KGIpKXtELk4ucmVtb3ZlKGIpO0Q9azticmVhayBhfUQ9dm9pZCAwfW4ubG9hZGVyPW5ldyBnLlc4KG4sbi5paixXLG4udmlkZW9EYXRhLk4sbi52aWRlb0RhdGEuVyxUWShuKSx2LG4udmlkZW9EYXRhLmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpLEQsbi52aWRlb0RhdGEuelIpO2lmKG4udmlkZW9EYXRhLlMoImh0bWw1X2Rpc2FibGVfcHJlbG9hZF9mb3Jfc3NkYWlfd2l0aF9wcmVyb2xsIikmJgpuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFjayYmbi5PUCgpKVc9ITA7ZWxzZSBpZihXPW4uTkwpVz1nLms2KG4uQikmJm4udmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrJiYoIW4uQi5TKCJodG1sNV9hbGxvd19tdWx0aXZpZXdfdGlsZV9wcmVsb2FkIil8fCFuLnZpZGVvRGF0YS5saXZlUHJlbG9hZHx8bi5CLlp0KCkuTi5RUShIcCkpO24ubG9hZGVyLmluaXRpYWxpemUobi5nZXRDdXJyZW50VGltZSgpLFRZKG4pLFcpO24udmlkZW9EYXRhLnByb2JlVXJsJiYobi5sb2FkZXIuQnY9bi52aWRlb0RhdGEucHJvYmVVcmwpO2lmKG4uaWwubGVuZ3RofHxuLk5MKW4udmlkZW9EYXRhLmNvdG58fG4ucEMoITEpO21vKG4uZGEsbi5sb2FkZXIpO24uc1UmJihuLmxvYWRlci5FVyhuLnNVKSxuLlUoInNkYWkiLHtzZGw6MX0pKTtnLm1NKG4udmlkZW9EYXRhKSYmKG49bi5sb2FkZXIsbi5wb2xpY3kueGg9bi5wb2xpY3kuVnMpfTsKUWE9ZnVuY3Rpb24obil7bi5xTigpO2lmKCFuLmpILmZpbmlzaGVkJiZuLkxSLmZpbmlzaGVkJiYhbi5wbGF5ZXJTdGF0ZS5OKDEyOCkmJiFuLmlsLmxlbmd0aCl7aWYoIW4ud0kuc3RhcnRlZCl7dmFyIFc9bi53STtXLnN0YXJ0ZWQ9ITA7Vy5KKCl9aWYoIW4uSm4oKSl7bi5sb2FkZXImJihuLm5VPW4ubG9hZGVyLnpzKCEwKT4wKTtuLmpILmZpbmlzaGVkfHwobi5qSC5maW5pc2hlZD0hMCk7Vz1uLlMoImh0bWw1X29uZXNpZV9saXZlIikmJm4ubG9hZGVyJiYhaXNOYU4obi5sb2FkZXIuQ0gpOyFuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFja3x8bi52aWRlb0RhdGEuVEM+MCYmIUk0KG4udmlkZW9EYXRhKXx8V3x8SWMobil8fChuLnNlZWtUbyhuLnJJKCkse3FkOiJ2aWRlb3BsYXllcl9yZWFkeWluZyIsc2Vla1NvdXJjZToxOH0pLG4uaXNCYWNrZ3JvdW5kKCkmJihuLlRsPSEwKSk7Vz1uLkJYO2lmKFcucW9lKXtXPVcucW9lO2xldCBiPVcucHJvdmlkZXIudmlkZW9EYXRhLHY9Vy5wcm92aWRlci5COwpmb3IodmFyIEQgb2Ygdi5reSluQyhXLEQpO2lmKFcucHJvdmlkZXIuUygiaHRtbDVfZW5hYmxlX3FvZV9jYXRfbGlzdCIpKWZvcihsZXQgayBvZiBiLmtLKW5DKFcsayk7ZWxzZSBiLmt5JiZuQyhXLFcucHJvdmlkZXIudmlkZW9EYXRhLmt5KTtiLnpXKCkmJihEPWIuTixJNChiKSYmbkMoVywibWFuaWZlc3RsZXNzIiksRCYmb28oRCkmJm5DKFcsYGxpdmUtc2VnbWVudC0ke29vKEQpLnRvRml4ZWQoMSl9YCkpO2cuWU4oYik/bkMoVywic2FiciIpOlcueiQoeHAoYikpO2lmKHB6KGIpfHxiLkRGKCkpYi5ERigpJiZuQyhXLCJzc2EiKSxuQyhXLCJsaWZhIik7TkkoYikmJm5DKFcsImNkbSIpO2IuZ2F0ZXdheUV4cGVyaW1lbnRHcm91cCYmKEQ9Yi5nYXRld2F5RXhwZXJpbWVudEdyb3VwLEQ9PT0iRVhQRVJJTUVOVF9HUk9VUF9TUElLWV9BRF9CUkVBS19FWFBFUklNRU5UIj9EPSJzcGthZHRydCI6RD09PSJFWFBFUklNRU5UX0dST1VQX1NQSUtZX0FEX0JSRUFLX0NPTlRST0wiJiYoRD0KInNwa2FkY3RybCIpLG5DKFcsRCkpO3YuViE9PSJ5dCImJlcuSi5zZXQoImxlbiIsW2IubGVuZ3RoU2Vjb25kcy50b0ZpeGVkKDIpXSk7Yi5jb3RuJiYhT1MoYikmJlF1KFcsITApO3YuV1goKSYmKEQ9UlFVKCkpJiZXLlUoImNibHQiLHttOkR9KTt2LlMoImh0bWw1X2xvZ19zY3JlZW5fZGlhZ29uYWwiKSYmVy5VKCJjYmx0ZGlhZyIse3Y6d2luZG93Lkg1dmNjU2NyZWVuPy5HZXREaWFnb25hbD93aW5kb3cuSDV2Y2NTY3JlZW4uR2V0RGlhZ29uYWwoKTowfSl9bi5XSigicGxheWJhY2tyZWFkeSIpO2cudlAoInBsX2MiLG4ubVEudGltZXJOYW1lKXx8KG4ubVEudGljaygicGxfYyIpLGcuZ18oInBsX2MiLHZvaWQgMCwidmlkZW9fdG9fYWQiKSk7Zy52UCgicGJyIixuLm1RLnRpbWVyTmFtZSl8fChuLm1RLnRpY2soInBiciIpLGcuZ18oInBiciIsdm9pZCAwLCJ2aWRlb190b19hZCIpKX19fTsKVmE9ZnVuY3Rpb24obixXKXtuLnBsYXllclN0YXRlLk4oMTI4KXx8KG4uQk4od1Mobi5wbGF5ZXJTdGF0ZSwxMDI4LDkpKSxuLlUoImRvbXBhdXNlZCIse3I6V30pLG4uV0ooIm9uQXV0b3BsYXlCbG9ja2VkIikpfTsKZy5EVD1mdW5jdGlvbihuKXt2YXIgVz1UWShuKTtyZXR1cm4geEooVyl8fCFuLkRoP251bGw6Zy5sXyhuLkRoLk4udmlkZW9JbmZvcyxEPT5XLlgoRCkpfTsKdVY9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1uLkJYLGg9bi52aWRlb0RhdGE7aC5KPUQ7dmFyIHg9Zy5EVChuKTtEPW5ldyBGck0oRCxXLHg/eC5pdGFnOiIiLGIsdik7aWYoay5xb2Upe2s9ay5xb2U7Yj12PWcuUmsoay5wcm92aWRlcik7eD1bRC5OLmlkLEQuSixrLnM1LEQucmVhc29uXTtrLkR0fHx4LnB1c2goTFRiKGssRCkpO0QudG9rZW4mJngucHVzaChELnRva2VuKTtnLndqKGssYiwidmZzIix4KTtrLnM1PUQuTi5pZDt4PWsucHJvdmlkZXIuTC5nZXRQbGF5ZXJTaXplKCk7aWYoeC53aWR0aD4wJiZ4LmhlaWdodD4wKXt4PVtNYXRoLnJvdW5kKHgud2lkdGgpLE1hdGgucm91bmQoeC5oZWlnaHQpXTtsZXQgTD1nLkhfKCk7TD4xJiZ4LnB1c2goTCk7Zy53aihrLGIsInZpZXciLHgpfWsuRHR8fChrLnByb3ZpZGVyLkIuV1goKSYmKG5DKGssInJxcyIpLG5DKGssInJxczIiKSksay5wcm92aWRlci52aWRlb0RhdGEuTiYmR18oay5wcm92aWRlci52aWRlb0RhdGEuTikmJmsuSi5zZXQoInByZWxvYWQiLApbIjEiXSkpO2suRHQ9ITA7ay5WPSEwO0QucmVhc29uPT09Im0iJiYrK2suc1Y9PT0xMDAmJmJtKGssMik7Zy53aihrLHYsInZwcyIsW2suTl0pO2suZSR8fGsucmVwb3J0U3RhdHModil9RD1uLmhVO0QuSj0wO0QuTj0wO24uV0ooImludGVybmFsdmlkZW9mb3JtYXRjaGFuZ2UiLGgsVz09PSJtIil9OwpUWT1mdW5jdGlvbihuKXtpZihuLkRoKXt2YXIgVz1uLmhVO3ZhciBEPW4uRGg7bj1uLmcwKCk7dmFyIGI9Wm1oKFcpO2lmKHhKKGIpKXtpZihiPVcuTWgoRCkuY29tcG9zZSh5SXIoVyxEKSkuY29tcG9zZShpbXIoVyxEKSkuY29tcG9zZShaVihXLEQudmlkZW9EYXRhKSkuY29tcG9zZShVWChXLEQudmlkZW9EYXRhLEQpKS5jb21wb3NlKHkzKFcsRCkpLmNvbXBvc2UoaW0oVyxEKSkseEoobil8fFcuUygiaHRtbDVfYXBwbHlfcGJyX2NhcF9mb3JfZHJtIikpe3ZhciB2PWIuY29tcG9zZTtpZihXLlMoImh0bWw1X2Rpc2FibGVfdXN0cmVhbWVyX2NvbnN0cmFpbnRfZm9yX3NhYnIiKSYmZy5ZTihELnZpZGVvRGF0YSkpdmFyIGs9WVo7ZWxzZSBrPVcuTC51dSgpLFcuUygiaHRtbDVfdXNlX3ZpZGVvX3F1YWxpdHlfY2FwX2Zvcl91c3RyZWFtZXJfY29uc3RyYWludCIpJiZrJiZrLlFvPjAmJnhKKEQudmlkZW9EYXRhLkIzKSYmKGs9ay5RbyxELnZpZGVvRGF0YS5CMz1uZXcgYjMoMCxrLCExLAoidSIpKSxrPUQudmlkZW9EYXRhLkIzO2I9di5jYWxsKGIsayl9fWVsc2UgVy5TKCJodG1sNV9wZXJmX2NhcF9vdmVycmlkZV9zdGlja3kiKSYmKGI9Yi5jb21wb3NlKHkzKFcsRCkpKTtiPWIuY29tcG9zZShpbShXLEQpKTtXPUQudmlkZW9EYXRhLkxLLmNvbXBvc2UoYikuY29tcG9zZShELnZpZGVvRGF0YS5MSCkuY29tcG9zZShuKX1lbHNlIFc9WVo7cmV0dXJuIFd9Owp3c2k9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1uLkJYLGg9bi52aWRlb0RhdGE7aWYoRCE9PWguWCl7dmFyIHg9IWguWDtoLlg9RDt2YXIgTD1XPT09Im0ifHxXPT09InQiO0x8fChXPXg/ImkiOiJhIik7Vz1uZXcgRnJNKEQsVywiIixiLHYpO2lmKGsucW9lKXtrPWsucW9lO0Q9Zy5SayhrLnByb3ZpZGVyKTtsZXQgRz1bXTtpZihXLk4uaWQhPT1rLkZGKXtiPVtXLk4uaWQsay5GRixXLnJlYXNvbl07dj1HO3ZhciBlPXYucHVzaDtsZXQgcj1bXSxOPWsucHJvdmlkZXIudmlkZW9EYXRhLmhnLk4sSD1XLk4uYXVkaW8/Lko/P04/LlFPO0g9PW51bGx8fGlzTmFOKEgpfHxyLnB1c2goYGZsLiR7SH1gKTtOJiYoTi5mb3JtYXRJZCYmTi5mb3JtYXRJZCE9PVcuTi5pZCYmay5VKCJhZ2MiLHtxb2VtaXNtYXRjaDoiMSIsYWdjX2ZtdDpOLmZvcm1hdElkLGFmbXQ6Vy5OLmlkfSksTi5weT09bnVsbHx8aXNOYU4oTi5weSl8fHIucHVzaChgdGwuJHtOLnB5fWApLE4uRHk9PW51bGx8fGlzTmFOKE4uRHkpfHwKci5wdXNoKGB2Zy4ke04uRHl9YCksTi53RyE9PTAmJnIucHVzaChgbm0uJHtOLndHfWApKTtlLmNhbGwodiwuLi5yKTtXLnJlYXNvbj09PSJpIiYmRy5wdXNoKExUYihrLFcpKTtHLmxlbmd0aD4wJiZiLnB1c2goRy5qb2luKCI7IikpO1cudG9rZW4mJmIucHVzaChXLnRva2VuKTtnLndqKGssRCwiYWZzIixiKTtrLkZGPVcuTi5pZH19bi5XSigiaW50ZXJuYWxhdWRpb2Zvcm1hdGNoYW5nZSIsaCwheCYmTCl9fTsKTXl4PWZ1bmN0aW9uKG4pe3ZhciBXPSJsb2Fkc3RhcnQgbG9hZGVkbWV0YWRhdGEgcGxheSBwbGF5aW5nIHByb2dyZXNzIHBhdXNlIGVuZGVkIHN1c3BlbmQgc2Vla2luZyBzZWVrZWQgdGltZXVwZGF0ZSBkdXJhdGlvbmNoYW5nZSByYXRlY2hhbmdlIGVycm9yIHdhaXRpbmcgcmVzaXplIi5zcGxpdCgiICIpO2ZvcihsZXQgRCBvZiBXKW4uczkuTk4obi5tZWRpYUVsZW1lbnQsRCxuLmlVLG4pO24uQi5EVCYmbi5tZWRpYUVsZW1lbnQuSygpJiYobi5zOS5OTihuLm1lZGlhRWxlbWVudCwid2Via2l0cGxheWJhY2t0YXJnZXRhdmFpbGFiaWxpdHljaGFuZ2VkIixuLnZrLG4pLG4uczkuTk4obi5tZWRpYUVsZW1lbnQsIndlYmtpdGN1cnJlbnRwbGF5YmFja3RhcmdldGlzd2lyZWxlc3NjaGFuZ2VkIixuLk9rLG4pKX07Ck9VaD1mdW5jdGlvbihuKXtpZihuLm1lZGlhU291cmNlKWlmKG4uSzEoKSxuLm1lZGlhU291cmNlLkspdHJ5e24uQi5XWCgpJiZuLlUoInJtcyIse2w6InZwcm1zIixzcjpuLnBnKCkscnM6bi5tZWRpYVNvdXJjZS5XKCl9KSxuLm1lZGlhU291cmNlLmNsZWFyKCksbi5tZWRpYUVsZW1lbnQ/LkhKKG4ubWVkaWFTb3VyY2UpLG4ubWVkaWFTb3VyY2U9bnVsbH1jYXRjaChEKXt2YXIgVz1uZXcgZy5ReChgRXJyb3Igd2hpbGUgY2xlYXJpbmcgTWVkaWEgU291cmNlIGluIFZpZGVvUGxheWVyOiAke0QubmFtZX0sICR7RC5tZXNzYWdlfWApO1c9QiQoVyk7bi5oYW5kbGVFcnJvcihXKTtuLm15KCl9ZWxzZSBuLm15KCl9Owpkcz1mdW5jdGlvbihuKXtuLkxBJiYobi5MQS5kaXNwb3NlKCksbi5MQT1udWxsKX07ClJwVT1mdW5jdGlvbihuKXtuLm1lZGlhRWxlbWVudCYmbi5tZWRpYUVsZW1lbnQuRTgoKSYmKG4uVFY9KDAsZy5SKSgpKTtuLkIudEc/Zy5uJCgoKT0+e2J2KG4pfSwwKTpidihuKX07CmJ2PWZ1bmN0aW9uKG4pe2lmKCFuLm1lZGlhU291cmNlPy5nWCgpKXtpZihuLm1lZGlhRWxlbWVudCl0cnl7bi5Mdz1uLm1lZGlhRWxlbWVudC5wbGF5VmlkZW8oKX1jYXRjaChXKXtWYShuLGBlcnIuJHtXfWApfWlmKG4uTHcpe2xldCBXPW4uTHc7Vy50aGVuKHZvaWQgMCxEPT57aWYoIShuLnBsYXllclN0YXRlLk4oNCl8fG4ucGxheWVyU3RhdGUuTigyNTYpfHxuLkx3IT09V3x8RCYmRC5uYW1lPT09IkFib3J0RXJyb3IiJiZELm1lc3NhZ2UmJkQubWVzc2FnZS5pbmNsdWRlcygibG9hZCIpKSl7bGV0IGI9InByb21pc2UiO0QmJkQubmFtZSYmKGIrPWA7bS4ke0QubmFtZX1gKTtWYShuLGIpO24uVzE9ITA7bi52aWRlb0RhdGEuZkI9ITB9fSl9fX07CkE2aj1mdW5jdGlvbihuLFc9ITEpe2lmKG4ubWVkaWFTb3VyY2UpcmV0dXJuIG4ubWVkaWFTb3VyY2UuajtRdmkobixXKTtyZXR1cm4gbi5VeigpPy50dygpfHxudWxsfTsKZDEyPWZ1bmN0aW9uKG4sVz0hMSl7dmFyIEQ9bnVsbDtuLnZpZGVvRGF0YS5XPy5OKCk/KEQ9QTZqKG4sVyksbi5sb2FkZXI/LnJlc3VtZSgpKTood3Mobiksbi52aWRlb0RhdGEuY0omJihEPW4udmlkZW9EYXRhLmNKLkooKSkpO3JldHVybiBEfTsKYXZaPWZ1bmN0aW9uKG4sVyl7aWYoVy5OLnZpZGVvLnF1YWxpdHk9PT0iYXV0byImJlcua0woKS5XKCkpaWYobi5TKCJodG1sNV9obHNfcmVwb3J0X3BzZXVkb19pdGFnIikmJm4udmlkZW9EYXRhLmhsc3ZwKXt2YXIgRD1uLlVKKCk7aWYoRCYmRC52aWRlb0hlaWdodD4wJiZELnZpZGVvV2lkdGg+MCl7dmFyIGI9RC52aWRlb0hlaWdodDtEPUQudmlkZW9XaWR0aDthOntuPW4uTEE/Lk4uZmxhdm9yPT09ImZhaXJwbGF5Ij9WeVU6YzZaO2Zvcih2IG9mIG4paWYoYj49di5taW5IZWlnaHQpe3ZhciB2PXYuaXRhZzticmVhayBhfXY9IiJ9aWYodilyZXR1cm4gbmV3IG11KHYsImFwcGxpY2F0aW9uL3gtbXBlZ1VSTCIse3ZpZGVvOm5ldyBIUihELGIpfSl9fWVsc2UgaWYobi52aWRlb0RhdGEubnUpZm9yKGIgb2Ygbi52aWRlb0RhdGEubnUpaWYoYi5nZXRIZWlnaHQoKT09PW4uejEmJmIuTi52aWRlby5xdWFsaXR5IT09ImF1dG8iKXJldHVybiBiLmtMKCk7cmV0dXJuIFcua0woKX07Cm5CQz1mdW5jdGlvbihuKXtyZXR1cm4hIShuLlMoImh0bWw1X25hdGl2ZV9hdWRpb190cmFja19zd2l0Y2hpbmciKSYmZy5HbiYmbi52aWRlb0RhdGEuSj8uVygpKX07ClcxaT1mdW5jdGlvbihuKXtpZighbkJDKG4pKXJldHVybiExO249bi5tZWRpYUVsZW1lbnQ/LmF1ZGlvVHJhY2tzKCk7cmV0dXJuISEobiYmbi5sZW5ndGg+MSl9OwpiNHQ9ZnVuY3Rpb24obil7dmFyIFc9RGdDKG4pO2lmKFcpe3ZhciBEPXY4W1ddfHxXO3JldHVybiBuLnZpZGVvRGF0YS5nZXRBdmFpbGFibGVBdWRpb1RyYWNrcygpLmZpbmQoYj0+Yi5rWi5nZXROYW1lKCk9PT1EKX19OwpEZ0M9ZnVuY3Rpb24obil7aWYobj1uLm1lZGlhRWxlbWVudD8uYXVkaW9UcmFja3MoKSlmb3IobGV0IFc9MDtXPG4ubGVuZ3RoOysrVyl7bGV0IEQ9bltXXTtpZihELmVuYWJsZWQpcmV0dXJuIEQubGFiZWx9fTsKdkIyPWZ1bmN0aW9uKG4pe3ZhciBXPW4ubWVkaWFFbGVtZW50Py5hdWRpb1RyYWNrcygpO2lmKFcpe3ZhciBEPVtdO2ZvcihsZXQgdj0wO3Y8Vy5sZW5ndGg7Kyt2KXt2YXIgYj1XW3ZdO2I9bmV3IFdBKGIubGFiZWwsbmV3IHdQKHY4W2IubGFiZWxdfHxiLmxhYmVsLGIubGFiZWwsITEpKTtELnB1c2goYil9bi52aWRlb0RhdGEudm49RH19OwpCNFU9ZnVuY3Rpb24obil7dmFyIFcsRD1uLnZpZGVvRGF0YS5nZXRBdmFpbGFibGVBdWRpb1RyYWNrcygpLGI9bi5CLkhKO2ImJihXPUQuZmluZCh2PT52LmdldExhbmd1YWdlSW5mbygpLmlkPT09YikpOwppZihuLkIuZXhwZXJpbWVudHMuRXEoImVuYWJsZV9hdWRpb19kZXNjcmlwdGlvbl9zZXR0aW5nIikmJmcubzkoKS5RUSgxOTgpKWZvcihsZXQgdiBvZiBEKWlmKHYuail7Vz12O2JyZWFrfW4uWnQoKS5OLlFRKGtxTSkmJm4udmlkZW9EYXRhLmNvdG4mJihXPUQuZmluZCh2PT4hIXYuVikpOwpXfHwobj1uLmdldEF1ZGlvVHJhY2soKSxXPW4ua1ouaXNEZWZhdWx0P3ZvaWQgMDpuKTtyZXR1cm4gV307ClF2aT1mdW5jdGlvbihuLFc9ITEpe3RyeXtnLmQ4KCkmJm4udmlkZW9EYXRhLm1WKCkmJm4ubWVkaWFFbGVtZW50LlBYKCk7bGV0IGI9bi5veSgpLHY9bi5DZCgpO2lmKG4ubWVkaWFFbGVtZW50LmlzVmlldygpJiZuLm1lZGlhRWxlbWVudC5NZCYmKCFuLkZTKCl8fCFuLm1lZGlhRWxlbWVudC5ZJChiLHYpKSl7bi5CLldYKCkmJm4uVSgidXNtIix7ZmFsbGJhY2s6ITAscmVhc29uOm4uRlMoKT8iY29kZWMiOiJwb2xpY3kifSk7bGV0IGs9bi5tZWRpYUVsZW1lbnQubWVkaWFFbGVtZW50O2s/LlBYKCk7az8uc3RvcFZpZGVvKCk7bi5kYS5zZXRNZWRpYUVsZW1lbnQobnVsbCk7bi5zZXRNZWRpYUVsZW1lbnQoaywhMCl9dmFyIEQ9bi5tZWRpYUVsZW1lbnQuVXooYix2KX1jYXRjaChiKXtpZihLQyhuLkFJLCJodG1sNS5taXNzaW5nYXBpIix7dXBkYXRlTXM6IjEifSkpcmV0dXJuO2NvbnNvbGUuZXJyb3IoIndpbmRvdy5VUkwgb2JqZWN0IG92ZXJ3cml0dGVuIGJ5IGV4dGVybmFsIGNvZGUiLApiKTtuLlBWKCJodG1sNS5taXNzaW5nYXBpIiwyLCJIVE1MNV9OT19BVkFJTEFCTEVfRk9STUFUU19GQUxMQkFDSyIsInVwZGF0ZU1zLjEiKTtyZXR1cm59bi5ubShELCExLCExLFcpfTsKaExaPWZ1bmN0aW9uKG4sVz0hMSl7aWYobi5sb2FkZXIpe24udmlkZW9EYXRhLmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpJiZuLmxvYWRlci5rSSgpO2xldCBEPW4uZ2V0Q3VycmVudFRpbWUoKS1uLlNXKCk7bi5sb2FkZXIuc2VlayhELHtBTTpXfSkuc1AoKCk9Pnt9KX1lbHNlIGNkKG4sKCk9PntuLnFOKCl8fG4ubG9hZGVyfHxvQXQobil9KX07CkwxYj1mdW5jdGlvbihuLFcsRD0hMSxiPSExLHY9ITEpeyFuLm1lZGlhU291cmNlfHxXJiZuLm1lZGlhU291cmNlIT09V3x8KFc9bi5nZXREdXJhdGlvbigpLCFXJiZJNChuLnZpZGVvRGF0YSkmJihXPTI1MjAwLG4ubG4oKSYmKFc9NDY4MDApKSxuLm1lZGlhU291cmNlLmlzVmlldz9XPm4ubWVkaWFTb3VyY2UuZ2V0RHVyYXRpb24oKSYmeGdaKG4sVyk6eGdaKG4sVyksVz0oKT0+e24ucU4oKXx8KEltaShuLmxvYWRlcixuLm1lZGlhU291cmNlLEQsYix2KSxuLldKKCJtZWRpYXNvdXJjZWF0dGFjaGVkIikpfSxuLmxvYWRlcj9XKCk6Y2QobixXKSl9Owp4Z1o9ZnVuY3Rpb24obixXKXtuLm1lZGlhU291cmNlJiYobi5tZWRpYVNvdXJjZS5hVChXKSxuLmxvYWRlcj8uaFcoVykpfTsKZUxoPWZ1bmN0aW9uKG4sVyl7aWYobi5CLldYKCkmJm4ubWVkaWFFbGVtZW50KXtsZXQgRD1uLm1lZGlhRWxlbWVudC55cigpO0Qub210PShuLm1lZGlhRWxlbWVudC5nZXRDdXJyZW50VGltZSgpK24uU1coKSkudG9GaXhlZCgzKTtELnBzPW4ucGxheWVyU3RhdGUuc3RhdGUudG9TdHJpbmcoMTYpO0QucnQ9KGcuUmsobi5CWC5wcm92aWRlcikqMUUzKS50b0ZpeGVkKCk7RC5lPVc7bi5CRltuLmtRKyslNV09RH19OwpnQnI9ZnVuY3Rpb24obil7aWYoZy51YigiY29iYWx0IikmJmcudWIoIm5pbnRlbmRvIHN3aXRjaCIpKXt2YXIgVz0hd2luZG93Lm1hdGNoTWVkaWEoInNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDcyMHB4KSBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyMDBkcGkpIikubWF0Y2hlcztuLlUoIm54ZG9jayIse2Q6V30pfX07ClhhUz1mdW5jdGlvbihuKXtEcihuLm53KTtrUChuKXx8KG4ubnc9VzAoKCk9PmtQKG4pLDEwMCkpfTsKa1A9ZnVuY3Rpb24obil7dmFyIFc9bi5tZWRpYUVsZW1lbnQ7VyYmbi5BbCYmIW4udmlkZW9EYXRhLlkmJiFnLnZQKCJ2ZnAiLG4ubVEudGltZXJOYW1lKSYmVy5YKCk+PTImJiFXLmlzRW5kZWQoKSYmTSQoVy5KKCkpJiZuLm1RLnRpY2soInZmcCIpO3JldHVybihXPW4ubWVkaWFFbGVtZW50KSYmIW4udmlkZW9EYXRhLlkmJlcuZ2V0RHVyYXRpb24oKT4wJiYoVy5pc1BhdXNlZCgpJiZXLlgoKT49MiYmTSQoVy5KKCkpJiYoZy52UCgicGJwIixuLm1RLnRpbWVyTmFtZSl8fG4ubVEudGljaygicGJwIiksIW4udmlkZW9EYXRhLkR0fHxuLlZ0fHxXLmlzU2Vla2luZygpfHwobi5WdD0hMCxuLldKKCJvblBsYXliYWNrUGF1c2VBdFN0YXJ0IikpKSxXPVcuZ2V0Q3VycmVudFRpbWUoKSxxOShuLlZlLFcpJiYoIW4udmlkZW9EYXRhLlJvfHwhbi5wbGF5ZXJTdGF0ZS5OKDE2KSkpPyhuLmUyKCksITApOiExfTsKaDU9ZnVuY3Rpb24obixXKXtuLkIuUygiaHRtbDVfbG9nX3JlYnVmZmVyX3JlYXNvbiIpJiYoVz17cjpXLGxhY3Q6Zy52SSgpfSxuLm1lZGlhRWxlbWVudCYmKFcuYmg9bi5tZWRpYUVsZW1lbnQuenMoKSksbi5VKCJidWZyZWFzb24iLFcpKX07CnFhVT1mdW5jdGlvbihuKXtuLkJYLm9uUHJvZ3Jlc3MoKTtpZihnLkRQKG4udmlkZW9EYXRhKSYmRGF0ZS5ub3coKT5uLmhhKzYyODMpe2lmKG4udmlkZW9EYXRhLk4mJiFFayhuLnZpZGVvRGF0YS5OKSl7dmFyIFc9bi5CWDtpZihXLnFvZSl7Vz1XLnFvZTt2YXIgRD1XLnByb3ZpZGVyLkwuSEsoKSxiPWcuUmsoVy5wcm92aWRlcik7VnUoVyxiLEQpO2xldCB2PUQuVztEPUQuWDtpc05hTih2KXx8KCFpc05hTihEKSYmRD9nLndqKFcsYiwiZTJlbCIsW3YudG9GaXhlZCgzKSxELnRvRml4ZWQoMyldKTpnLndqKFcsYiwiZTJlbCIsW3YudG9GaXhlZCgzKV0pKX19Vz1nLkdsKG4uQik7Yj1uLlMoImh0bWw1X2Fsd2F5c19sb2dfcmF3bGF0Iik7KFd8fGIpJiZuLlUoInJhd2xhdCIse2w6Wjcobi5GNSwicmF3bGl2ZWxhdGVuY3kiKS50b0ZpeGVkKDMpfSk7bi5oYT1EYXRlLm5vdygpfW4udmlkZW9EYXRhLkomJm4udmlkZW9EYXRhLkouVygpJiYoVz1uLlVKKCkpJiZXLnZpZGVvSGVpZ2h0IT09Cm4uejEmJihuLnoxPVcudmlkZW9IZWlnaHQsdVYobiwiYSIsYXZaKG4sbi52aWRlb0RhdGEuY0opKSl9OwpHcU09ZnVuY3Rpb24obil7aWYobi5CLldYKCkpe24uQkYuc29ydCgoVyxEKT0+K1cucnQtK0QucnQpOwpmb3IobGV0IFcgb2Ygbi5CRiluLlUoInZwZSIsT2JqZWN0LmFzc2lnbih7dDpXLnJ0fSxXKSk7bi5CRj1bXTtuLmtRPTB9fTsKenBpPWZ1bmN0aW9uKG4sVyl7bi5tUS50aWNrKCJ2dGEiKTtnLmdfKCJ2dGEiLHZvaWQgMCwidmlkZW9fdG9fYWQiKTtuLmdldEN1cnJlbnRUaW1lKCk+MCYmUnlpKG4uZGEsbi5nZXRDdXJyZW50VGltZSgpKTtuLm1lZGlhRWxlbWVudC5EKFcpO24ubWVkaWFTb3VyY2UmJmJRKDQpOyFuLnZpZGVvRGF0YS5ZJiZuLnBsYXllclN0YXRlLmlzT3JXaWxsQmVQbGF5aW5nKCkmJm4uQl8uc3RhcnQoKTtuQkMobikmJihXPW4ubWVkaWFFbGVtZW50Py5hdWRpb1RyYWNrcygpKSYmKFcub25hZGR0cmFjaz0oKT0+e3ZCMihuKX0sVy5vbnJlbW92ZXRyYWNrPSgpPT57dkIyKG4pfSxXLm9uY2hhbmdlPSgpPT57bi5XSigiaW50ZXJuYWxhdWRpb2Zvcm1hdGNoYW5nZSIsbi52aWRlb0RhdGEsITApfSl9Owp0aVM9ZnVuY3Rpb24obil7bj1uLmFwaS5nZXRQbGF5ZXJTdGF0ZU9iamVjdCgpO249bi5pc0N1ZWQoKXx8bi5pc0Vycm9yKCk/Im5vbmUiOm4uaXNPcldpbGxCZVBsYXlpbmcoKT8icGxheWluZyI6InBhdXNlZCI7bmF2aWdhdG9yLm1lZGlhU2Vzc2lvbi5wbGF5YmFja1N0YXRlPW59OwokZ0M9ZnVuY3Rpb24obil7aWYobi5OKWlmKG4uYXBpLmdldFZpZGVvRGF0YSgpLmlzTGl2ZVBsYXliYWNrKXRyeXt4UCh7ZHVyYXRpb246SW5maW5pdHl9KX1jYXRjaChXKXt4UCgpfWVsc2V7aWYobi5hcGkuZ2V0VmlkZW9EYXRhKCk/LnpLKCkpe2xldCBXPW4uYXBpLmdldFByb2dyZXNzU3RhdGUoKS5zZWVrYWJsZUVuZCxEPU1hdGgubWluKG4uYXBpLmdldEN1cnJlbnRUaW1lKCksVyk7aWYoVyYmTnVtYmVyLmlzRmluaXRlKEQpKXt4UCh7ZHVyYXRpb246VyxwbGF5YmFja1JhdGU6bi5hcGkuZ2V0UGxheWJhY2tSYXRlKCkscG9zaXRpb246RH0pO3JldHVybn19eFAoKX19OwpMYT1mdW5jdGlvbihuLFcpe3RyeXtuYXZpZ2F0b3IubWVkaWFTZXNzaW9uLnNldEFjdGlvbkhhbmRsZXIobixXKX1jYXRjaChEKXt9fTsKclBoPWZ1bmN0aW9uKG4pe3ZhciBXPVtdO2lmKCFufHwhbi50aHVtYm5haWxzKXJldHVybiBXO2ZvcihsZXQgRCBvZiBuLnRodW1ibmFpbHMpRC51cmwmJighRC53aWR0aHx8RC53aWR0aDw9MHx8IUQuaGVpZ2h0fHxELmhlaWdodDw9MHx8Zy5qSShELnVybCkmJlcucHVzaCh7c3JjOkQudXJsfHwiIixzaXplczpgJHtELndpZHRofXgke0QuaGVpZ2h0fWAsdHlwZToiaW1hZ2UvanBlZyJ9KSk7cmV0dXJuIFd9OwpzVVM9ZnVuY3Rpb24obil7TGEoInBsYXkiLCgpPT57bi5hcGkucGxheVZpZGVvKCk7ZWwobil9KTsKTGEoInBhdXNlIiwoKT0+e24uYXBpLnBhdXNlVmlkZW8oKTtlbChuKX0pOwpMYSgic2Vla2JhY2t3YXJkIiwoKT0+e24uYXBpLnNlZWtCeSgtNSpuLmFwaS5nZXRQbGF5YmFja1JhdGUoKSk7ZWwobil9KTsKTGEoInNlZWtmb3J3YXJkIiwoKT0+e24uYXBpLnNlZWtCeSg1Km4uYXBpLmdldFBsYXliYWNrUmF0ZSgpKTtlbChuKX0pOwpMYSgic2Vla3RvIixXPT57Vz1XLnNlZWtUaW1lO1chPW51bGwmJm4uYXBpLnNlZWtUbyhXKTtlbChuKX0pfTsKZWw9ZnVuY3Rpb24obil7bi5hcGkuUygid2ViX3Jlc2V0X2xhY3Rfb25fbWVkaWFfYWN0aW9ucyIpJiZuLmFwaS51cGRhdGVMYXN0QWN0aXZlVGltZSgpfTsKeFA9ZnVuY3Rpb24obil7bmF2aWdhdG9yLm1lZGlhU2Vzc2lvbi5zZXRQb3NpdGlvblN0YXRlKG4pfTsKcGFNPWZ1bmN0aW9uKG4pe2lmKG49bi5hcGkuZ2V0VmlkZW9EYXRhKCk/LmdldFBsYXllclJlc3BvbnNlKCk/Lm92ZXJsYXk/LnBsYXllckNvbnRyb2xzT3ZlcmxheVJlbmRlcmVyKWlmKG49Zy53KG4uY29tcG9zaXRlVmlkZW9PdmVybGF5LE5LeCksbj8uc291cmNlcz8ubGVuZ3RoKWZvcihsZXQgVyBvZiBuPy5zb3VyY2VzKWlmKFcuaXNBY3RpdmUpcmV0dXJuIFd9OwpnOT1mdW5jdGlvbihuKXtuLk49dm9pZCAwO24uVy5jbGVhcigpO24uYXBpLk5wKCJjb21wb3NpdGVlbWJhcmdvIiwxKX07ClhZPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIG9mIFcpe1c9TnVtYmVyKEQucGxheWJhY2tSZWxhdGl2ZVBvc2l0aW9uPy51dGNUaW1lTXMpLzFFMztsZXQgYj1XK051bWJlcihELmR1cmF0aW9uPy5zZWNvbmRzKSx2PWBjb21wb3NpdGVfZW1iYXJnb18ke1d9YDtpZihELm9uRW50ZXIpe2xldCBrPUQub25FbnRlci5maWx0ZXIobi5WKTtrLmxlbmd0aCYmKG4uVy5zZXQodixrKSxuLmFwaS5hZGRVdGNDdWVSYW5nZSh2LFcsYiwiY29tcG9zaXRlZW1iYXJnbyIsITEpKX19fTsKSDR0PWZ1bmN0aW9uKG4sVyl7aWYobi5OPy5pZCE9PVcuaWQmJihuLmFwaS5xVyghMCksbi5XLmhhcyhXLmlkKSkpe3ZhciBEPW4uVy5nZXQoVy5pZCksYj1uLmFwaS5nZXRWaWRlb0RhdGEoKTtmb3IobGV0IHYgb2YgRClEPXYuY29tcG9zaXRlRW1iYXJnbz8uZW1iYXJnb1N0YXR1c1Rva2VuLGIucFIhPT1EJiYoYi5wUj1ELG4uYXBpLm5DKCkpLFlhVShuLFcpfX07CmZwaT1mdW5jdGlvbihuLFcpe2lmKG4uTj8uaWQ9PT1XLmlkJiYobi5hcGkucVcoITEpLG4uVy5oYXMoVy5pZCkpKXtpZihXPW4uYXBpLmdldFZpZGVvRGF0YSgpKVcucFI9dm9pZCAwO24uYXBpLm5DKCk7WWFVKG4pfX07CkpQTT1mdW5jdGlvbihuLFcpe24uY29tcG9zaXRlVmlkZW9TdGF0ZSE9PW51bGwmJihXLnBsYXliYWNrU3RhdGV8fChXLnBsYXliYWNrU3RhdGU9e30pLFcucGxheWJhY2tTdGF0ZS5jb21wb3NpdGVWaWRlb1N0YXRlPW4uY29tcG9zaXRlVmlkZW9TdGF0ZSl9OwpJcEM9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uYXBpLmdldFZpZGVvRGF0YSh7dm86ITF9KTtiPy5VKCJhdHJrY2hnIix7aWQ6VyxtOkR9KTtpZihiJiYhYi5JTSgpKXtEPW4uYXBpLmdldEF2YWlsYWJsZUF1ZGlvVHJhY2tzKCk7Zm9yKGxldCB2IG9mIEQpaWYodi5nZXRMYW5ndWFnZUluZm8oKS5nZXRJZCgpPT09Vyl7bi5hcGkuRygpLkhKPVc7YnJlYWt9fX07ClNhTT1mdW5jdGlvbihuLFcpe1chPT1uLksmJihuLks9VyxuLkouSigpLFcmJihuLkouTk4obi5hcGksIm1vZHVsZWNyZWF0ZWQiLEQ9Pnt2YXIgYj1wYU0obik7RD09PSJjYXB0aW9ucyImJmI/LnRvcExlZnRDb3JuZXJYIT09dm9pZCAwJiZiPy50b3BMZWZ0Q29ybmVyWSE9PXZvaWQgMCYmYj8ud2lkdGghPT12b2lkIDAmJmI/LmhlaWdodCE9PXZvaWQgMCYmbi5hcGkuVG4oe3RvcDpiLnRvcExlZnRDb3JuZXJZLHJpZ2h0OjEtYi50b3BMZWZ0Q29ybmVyWC1iLndpZHRoLGJvdHRvbToxLWIudG9wTGVmdENvcm5lclktYi5oZWlnaHQsbGVmdDpiLnRvcExlZnRDb3JuZXJYfSl9KSxuLkouTk4obi5hcGksZy5veSgiY29tcG9zaXRlZW1iYXJnbyIpLEQ9PntINHQobixEKX0pLG4uSi5OTihuLmFwaSxnLmR2KCJjb21wb3NpdGVlbWJhcmdvIiksRD0+e2ZwaShuLEQpfSksbi5KLk5OKG4uYXBpLCJoZWFydGJlYXRSZXF1ZXN0IixEPT57SlBNKG4sRCl9KSxuLkouTk4obi5hcGksImludGVybmFsYXVkaW9mb3JtYXRjaGFuZ2UiLAooRCxiKT0+e0lwQyhuLEQsYil9KSxuLkouTk4obi5hcGksIm9uUGxheWJhY2tBdWRpb0NoYW5nZSIsKCk9PntuLmFwaS5uQygpfSkpKX07CllhVT1mdW5jdGlvbihuLFcpe24uTj8uaWQhPT1XPy5pZCYmKG4uTiYmKG4uVy5kZWxldGUobi5OLmlkKSxuLmFwaS5VTyhbbi5OXSwxKSksbi5OPVcpfTsKQVAyPWZ1bmN0aW9uKG4pe249bj8ucXVhbGl0eURldGFpbHN8fFtdO3JldHVybiBnLmZ0KG4pJiYhQXJyYXkuaXNBcnJheShuKT9uOm4ucmVkdWNlKChXLHtrZXk6RCx2YWx1ZTpifSk9PntEJiZiJiYoV1tEXT1iKTtyZXR1cm4gV30se30pfTsKbWdoPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1bXSx2PVc/MTU2NTk1OjE1MTg3NDtmb3IobGV0IGggb2Ygbil7dmFyIGs9aC52aWRlbztuPXtmb3JtYXRJZDpoLmlkLHF1YWxpdHlMYWJlbDprLnF1YWxpdHlMYWJlbCxxdWFsaXR5OmsucXVhbGl0eSxpc1BsYXlhYmxlOld9O2lmKGs9RFtrLnF1YWxpdHlMYWJlbF0pbi5wYXlnYXRlZFF1YWxpdHlEZXRhaWxzPXtwYXlnYXRlZEluZGljYXRvclRleHQ6ay5wYXlnYXRlZEluZGljYXRvclRleHQsZW5kcG9pbnQ6ay5lbmRwb2ludCx2ZVR5cGU6dix0cmFja2luZ1BhcmFtczprLnRyYWNraW5nUGFyYW1zfTtiLnB1c2gobil9cmV0dXJuIGJ9OwpPNEM9ZnVuY3Rpb24obil7cVQoKSYmKG4ubVE9bi5hcGkuZUcoKSxuLk49bmV3IFk2LG4uVz0yLG4ubVEuU2woInB0X3Bpc2giKSx3aW5kb3cucmVxdWVzdElkbGVDYWxsYmFjaz93aW5kb3cucmVxdWVzdElkbGVDYWxsYmFjaygoKT0+e0sxVShuKX0pOksxVShuKSl9OwpxVD1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cuYW5kcm9pZCYmd2luZG93LmFuZHJvaWQud2VidmlldyYmd2luZG93LmFuZHJvaWQud2Vidmlldy5nZXRFeHBlcmltZW50YWxNZWRpYUludGVncml0eVRva2VuUHJvdmlkZXJ9OwpLMVU9ZnVuY3Rpb24obil7aWYocVQoKSl7bi5tUT1uLmFwaS5lRygpO24ubVEuU2woInB0X3BpcyIpO3RyeXt3aW5kb3cuYW5kcm9pZC53ZWJ2aWV3LmdldEV4cGVyaW1lbnRhbE1lZGlhSW50ZWdyaXR5VG9rZW5Qcm92aWRlcih7Y2xvdWRQcm9qZWN0TnVtYmVyOjg2ODYxODY3Njk1Mn0pLnRoZW4oVz0+e24uSj1XO24uTj8ucmVzb2x2ZSgpO24ubVEuU2woInB0X3BpZiIpfSkuY2F0Y2goVz0+e0dHKFcsInBsYXllcl9zdGFydCIpOwpuLm1RLlNsKCJwdF9waWUiKTtuLk4/LnJlamVjdChXKX0pfWNhdGNoKFcpe0dHKFcsInBsYXllcl9zdGFydF9jYXRjaCIpLG4uYXBpLlUoInBmZXMiLHt9KSxuLk4/LnJlamVjdChXKX19fTsKR0c9ZnVuY3Rpb24obixXKXtuLm1lc3NhZ2UmJmcuR3EoRXJyb3IoYCR7V31fJHtuLm1lc3NhZ2V9YCkpfTsKUGd4PWZ1bmN0aW9uKG4sVyl7aWYobi5KKXt2YXIgRD1XLnZpZGVvSWQ7bi5XPTM7bi5tUS5TbCgicHRfbXMiKTt0cnl7bi5KLnJlcXVlc3RUb2tlbihEKS50aGVuKGI9PntuLm1RLlNsKCJwdF9tZiIpO2lmKGI9Zy5kMShiKSlXLnpmPXtZdDpifX0pLmNhdGNoKGI9PntuLm1RLlNsKCJwdF9tZSIpOwpHRyhiLCJwbGF5ZXJfZ2VuZXJhdGUiKTtuLmhhbmRsZUVycm9yKGIsVyl9KX1jYXRjaChiKXtHRyhiLCJwbGF5ZXJfZ2VuZXJhdGVfY2F0Y2giKSxuLmhhbmRsZUVycm9yKGIsVyl9fX07Clo0eD1mdW5jdGlvbihuLFcpe2cueDYobi5hcGkuRygpKSYmKFc/bi5qLnNob3coKTpuLmouaGlkZSgpKX07CnlQaj1mdW5jdGlvbihuKXtuLlg8bi5KLmxlbmd0aD9VZzIobik6KG4uYXBpLmdldFBsYXllclN0YXRlT2JqZWN0KDEpLk4oMikmJihuLlY9ITApLG4uTj0hMCxuLlg9MCxuLkoubGVuZ3RoPTAsbi5hcGkuWDkoKSxuLk49ITEpfTsKRUJDPWZ1bmN0aW9uKG4pe3ZhciB7aW50ZXJzdGl0aWFsczpXfT1uLmFwaS5nZXRWaWRlb0RhdGEoKSxEPVtdO2ZvcihsZXQgTCBvZiBXKXtXPUQ7dmFyIGI9Vy5wdXNoLHY9bixrPUwucGxheWVyVmFycyxoPUwua3EseD1MLnRpbWU7bGV0IGU9YHl0by0ke3YuWSsrfWA7eD1uZXcgZy5sNSh4LHgse2lkOmUscHJpb3JpdHk6NyxuYW1lc3BhY2U6Inl0byJ9KTt2LktbZV09e3BsYXllclZhcnM6ayxwbGF5ZXJUeXBlOmh9O2IuY2FsbChXLHgpO1c9bi5hcGkuZ2V0VmlkZW9EYXRhKHtwbGF5ZXJUeXBlOjF9KTtXPU9iamVjdC5hc3NpZ24oe29hdXRoX3Rva2VuOlcub2F1dGhUb2tlbn0sTC5wbGF5ZXJWYXJzKTtuLmFwaS5wcmVsb2FkVmlkZW9CeVBsYXllclZhcnMoVyxMLmtxKX1uLmFwaS5naChELDEpfTsKVWcyPWZ1bmN0aW9uKG4pe3ZhciBXPW4uSltuLlhdO2lmKFcpe3ZhciB7cGxheWVyVmFyczpELHBsYXllclR5cGU6Yn09bi5LW1ddO24uTj0hMDtuLlgrKztXPW4uYXBpLmdldFZpZGVvRGF0YSh7cGxheWVyVHlwZToxfSk7Vz1PYmplY3QuYXNzaWduKHtvYXV0aF90b2tlbjpXLm9hdXRoVG9rZW59LEQpO24uYXBpLmxvYWRWaWRlb0J5UGxheWVyVmFycyhXLCEwLGIsITApO24uTj0hMX19OwpvQnI9YXN5bmMgZnVuY3Rpb24obixXLEQsYil7aWYoYXdhaXQgaTRVKG4pKXRyeXtsZXQgdj17a2V5Om5mKFcsInZpZGVvUGxheWJhY2tQb3NpdGlvbkVudGl0eSIpLHZpZGVvSWQ6VyxsYXN0UGxheWJhY2tQb3NpdGlvblNlY29uZHM6RC50b1N0cmluZygpLGxhc3RVcGRhdGVkQ2xpZW50VGltZXN0YW1wTXM6Yi50b1N0cmluZygpfTthd2FpdCBweXQobi5OLHYpO24uSiE9PVcmJihhd2FpdCB1angobiksbi5KPVcpfWNhdGNoKHYpe24uaGFuZGxlRXJyb3IoIkZhaWxlZCB0byBhZGQgb3IgdXBkYXRlIHBsYXliYWNrIHBvc2l0aW9uIix2KX1lbHNlIG4uYXBpLlUoInZwcGUiLHtwdToiYXUifSl9OwpkZ3c9ZnVuY3Rpb24obil7dmFyIFc9bi5hcGkuZ2V0VmlkZW9EYXRhKCk/LnZpZGVvSWQ7aWYoVyl7dmFyIEQ9bi5hcGkuZ2V0Q3VycmVudFRpbWUoKSxiPURhdGUubm93KCk7b0JyKG4sVyxELGIpfX07Cmk0VT1hc3luYyBmdW5jdGlvbihuKXtpZighbi5OKXt0NXx8KHQ1PUk5MigpKTtsZXQgVz1hd2FpdCB0NTtpZighVylyZXR1cm4hMTtuLk49V31yZXR1cm4hMH07CnVqeD1hc3luYyBmdW5jdGlvbihuKXtpZihuLk4pdHJ5e3ZhciBXPWF3YWl0IFVlKG4uTiwidmlkZW9QbGF5YmFja1Bvc2l0aW9uRW50aXR5IiksRD1hd2FpdCBVZShuLk4sIm1haW5WaWRlb0VudGl0eSIpO2xldCBiPW5ldyBTZXQoRC5tYXAoaD0+aC52aWRlb0lkKSksdj1XLmZpbHRlcihoPT4hYi5oYXMoaC52aWRlb0lkKSk7CnYuc29ydCgoaCx4KT0+TnVtYmVyKHgubGFzdFVwZGF0ZWRDbGllbnRUaW1lc3RhbXBNcyktTnVtYmVyKGgubGFzdFVwZGF0ZWRDbGllbnRUaW1lc3RhbXBNcykpOwpsZXQgaz1EYXRlLm5vdygpLTg2NEU1O1c9W107Zm9yKEQ9MDtEPHYubGVuZ3RoO0QrKyl7bGV0IGg9dltEXTsoRD49bi5XfHxOdW1iZXIoaC5sYXN0VXBkYXRlZENsaWVudFRpbWVzdGFtcE1zKTxrKSYmaC5rZXkmJlcucHVzaChoLmtleSl9Vy5sZW5ndGg+MCYmKG4uYXBpLlUoInZwcGUiLHtleHA6Vy5sZW5ndGh9KSxhd2FpdCBIaHcobi5OLFcpKX1jYXRjaChiKXtuLmhhbmRsZUVycm9yKCJGYWlsZWQgdG8gZXhwaXJlIHBsYXliYWNrIHBvc2l0aW9uIixiKX19Owp6TFo9ZnVuY3Rpb24obil7L1teYS16QS1aMC05Oy4hXy1dLy50ZXN0KG4pJiYobj1uLnJlcGxhY2UoL1srXS9nLCItIikucmVwbGFjZSgvW15hLXpBLVowLTk7LiFfLV0vZywiXyIpKTtyZXR1cm4gbn07CmxwMj1mdW5jdGlvbihuKXtyZXR1cm4gd2luZG93LlByb2ZpbGVyJiZuZXcgd2luZG93LlByb2ZpbGVyKG4pfTsKalVVPWZ1bmN0aW9uKG4pe3ZhciBXPW4uc2FtcGxlSW50ZXJ2YWwsRD1uLm1heEJ1ZmZlclNpemU7aWYoIW4ucU4oKSYmVz4wJiZEPjAmJiFuLk4mJm4uVzwxRTcpdHJ5e24uWD1scDIoe3NhbXBsZUludGVydmFsOlcsbWF4QnVmZmVyU2l6ZTpEfSksbi5YPy5hZGRFdmVudExpc3RlbmVyKCJzYW1wbGVidWZmZXJmdWxsIixhc3luYygpPT57YXdhaXQgVEt3KG4pO2pVVShuKX0pfWNhdGNoKGIpe24uTj16TFooYi5tZXNzYWdlKSxuLkooKX19OwpUS3c9YXN5bmMgZnVuY3Rpb24obil7dHJ5e2xldCBXPWF3YWl0IG4uWD8uc3RvcCgpO1cmJm4ubG9nVHJhY2UoVyl9Y2F0Y2goVyl7bi5OPXpMWihXLm1lc3NhZ2UpLG4uSigpfX07ClJMdD1mdW5jdGlvbihuLFcsRCl7aWYoRCl7dmFyIGI9IiI7Q2d0KG4sVykmJihiPVcsbi5hcGkuRygpLkhKPVcpO2ImJkJLQyhuLGIpJiYodnRDKG4uYXBpLGIpLFNrKGZFKG4uYXBpLkcoKSxuLmFwaS5nZXRWaWRlb0RhdGEoKT8uVigpKSx2PT57dmFyIGs9YjtGMXcodikhPT1rJiZ3YVMobixNaWkodikse3N0cmluZ1ZhbHVlOmt9KX0pKX19OwpRVVo9ZnVuY3Rpb24obil7QXMoKT8uc2l6ZSYmU2soZkUobi5hcGkuRygpLG4uYXBpLmdldFZpZGVvRGF0YSgpPy5WKCkpLFc9PnsoVz1GMXcoVykpJiZCS0MobixXKSYmKG4uYXBpLkcoKS5ISj1XKX0pfTsKQ2d0PWZ1bmN0aW9uKG4sVyl7bj1uLmFwaS5nZXRBdmFpbGFibGVBdWRpb1RyYWNrcygpO2ZvcihsZXQgRCBvZiBuKWlmKEQuZ2V0TGFuZ3VhZ2VJbmZvKCkuZ2V0SWQoKT09PVcpcmV0dXJuIEQ7cmV0dXJuIG51bGx9OwpCS0M9ZnVuY3Rpb24obixXKXtyZXR1cm4gVy5zcGxpdCgiLiIpWzBdIT09IiImJm4uYXBpLmdldFZpZGVvRGF0YSgpPy5JTSgpfTsKRjF3PWZ1bmN0aW9uKG4pe3tuPU1paShuKTtsZXQgVz1BcygpO249Vz9XLmdldChuKTp2b2lkIDB9cmV0dXJuIG4mJm4uc3RyaW5nVmFsdWU/bi5zdHJpbmdWYWx1ZToiIn07CndhUz1mdW5jdGlvbihuLFcsRCl7VmliKFt7c2V0dGluZ0l0ZW1JZDpXLHNldHRpbmdPcHRpb25WYWx1ZTpEfV0pO1NrKG4uWW8oKSxiPT57QkdNKGIsVyxEKX0pfTsKTWlpPWZ1bmN0aW9uKG4pe3ZhciBXPSg0ODQpLnRvU3RyaW5nKCk7biYmKFc9KDQ4MykudG9TdHJpbmcoKSk7cmV0dXJuIFd9OwpWaWI9ZnVuY3Rpb24obil7dmFyIFc9QXMoKTtXfHwoVz1uZXcgTWFwKTtmb3IobGV0IEQgb2YgbilXLnNldChELnNldHRpbmdJdGVtSWQsRC5zZXR0aW5nT3B0aW9uVmFsdWUpO249SlNPTi5zdHJpbmdpZnkoT2JqZWN0LmZyb21FbnRyaWVzKFcpKTtnLlBCKCJ5dC1wbGF5ZXItdXNlci1zZXR0aW5ncyIsbiwyNTkyRTMpfTsKcjk9ZnVuY3Rpb24obil7bi5qPW51bGw7bi5LPW51bGw7bi5OTigkUCgib3ZlciIpLG4uWjEpO24uTk4oInRvdWNoc3RhcnQiLG4uWSk7bi5OJiZuLk5OKCRQKCJkb3duIiksbi5WUSl9Owpzcj1mdW5jdGlvbihuKXtuLlguSighbi5OKX07CiRQPWZ1bmN0aW9uKG4pe3JldHVybiB3aW5kb3cubmF2aWdhdG9yLm1zUG9pbnRlckVuYWJsZWQ/YE1TUG9pbnRlciR7bi5jaGFyQXQoMCkudG9VcHBlckNhc2UoKX0ke24uc3Vic3RyaW5nKDEpfWA6YG1vdXNlJHtufWB9OwpOVD1mdW5jdGlvbihuKXtyZXR1cm4gbiYmY1BiP2cuSksobil8fGRvY3VtZW50OmRvY3VtZW50fTsKYXB4PWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEPTA7RDxXLmNoYW5nZWRUb3VjaGVzLmxlbmd0aDtEKyspe2xldCBiPVcuY2hhbmdlZFRvdWNoZXNbRF07aWYoYi5pZGVudGlmaWVyPT09bi5LKXJldHVybiBifXJldHVybiBudWxsfTsKblZyPWZ1bmN0aW9uKG4pe2NQYj1ufTsKV3F4PWZ1bmN0aW9uKG4sVyxEKXtmb3IobGV0IGIgb2YgVyl7Vz1OdW1iZXIoYi5wbGF5YmFja1JlbGF0aXZlUG9zaXRpb24/LnV0Y1RpbWVNcykvMUUzO2xldCB2PVcrTnVtYmVyKGIuZHVyYXRpb24/LnNlY29uZHMpLGs9YHN0YXRpb25zOiR7RH06JHtXfWA7bi5KLmhhcyhrKXx8KG4uSi5hZGQoayksYi5vbkVudGVyJiYobi5OW2tdPWIub25FbnRlciksbi5hcGkuYWRkVXRjQ3VlUmFuZ2UoayxXLHYsRCwhMSkpfX07CkpKPWZ1bmN0aW9uKG4pe3ZhciBXPS9jb2RlY3M9IihbXiJdKikiLy5leGVjKG4ubWltZVR5cGUpO3JldHVybiBXJiZXWzFdP1dbMV0rIiAoIituLml0YWcrIikiOm4uaXRhZ307CnBhPWZ1bmN0aW9uKG4sVyl7aWYobi5oZWlnaHRQeD09PS0xKXt2YXIgRD1udWxsO3RyeXtEPWcuekYoIkNBTlZBUyIpLG4uVz1ELmdldENvbnRleHQoIjJkIil9Y2F0Y2goaCl7fWlmKG4uVyl7dmFyIGI9bi5OKm4uc2FtcGxlQ291bnQ7bi5qPUQ7bi5qLndpZHRoPWI7bi5qLnN0eWxlLndpZHRoPWAke2J9cHhgO24uZWxlbWVudC5hcHBlbmRDaGlsZChuLmopfWVsc2UgZm9yKG4uc2FtcGxlQ291bnQ9TWF0aC5mbG9vcihuLnNhbXBsZUNvdW50LzQpLG4uTio9NCxEPTA7RDxuLnNhbXBsZUNvdW50O0QrKyliPWcuekYoIlNQQU4iKSxiLnN0eWxlLndpZHRoPWAke24uTn1weGAsYi5zdHlsZS5sZWZ0PWAke24uTipEfXB4YCxuLmVsZW1lbnQuYXBwZW5kQ2hpbGQoYil9RD1uLmVsZW1lbnQuY2xpZW50SGVpZ2h0fHwyNDtEIT09bi5oZWlnaHRQeCYmKG4uaGVpZ2h0UHg9RCxuLlcmJihEPSh3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MSk+MT8yOjEsbi5qLmhlaWdodD1uLmhlaWdodFB4KgpELG4uai5zdHlsZS5oZWlnaHQ9YCR7bi5oZWlnaHRQeH1weGAsbi5XLnNjYWxlKDEsRCkpKTtmb3IodmFyIHYgb2YgVyl7Vz1uO3ZhciBrPW4uaW5kZXg7Zm9yKEQ9MDtEKzI8Vy5WLmxlbmd0aCYmVy5WW0QrMV08djspRCsrO2I9TWF0aC5taW4oMSwodi1XLlZbRF0pLyhXLlZbRCsxXS1XLlZbRF0pKTtpZihXLlcpVy5XLmZpbGxTdHlsZT1XLktbRF0sVy5XLmZpbGxSZWN0KGsqVy5OLDAsVy5OLFcuaGVpZ2h0UHgpLFcuVy5maWxsU3R5bGU9Vy5LW0QrMV0sVy5XLmZpbGxSZWN0KGsqVy5OLFcuaGVpZ2h0UHgqKDEtYiksVy5OLFcuaGVpZ2h0UHgpO2Vsc2V7az1XLmVsZW1lbnQuY2hpbGRyZW5ba107bGV0IGg9d2luZG93LmRldmljZVBpeGVsUmF0aW98fDE7Yj1NYXRoLm1pbihXLmhlaWdodFB4LE1hdGgucm91bmQoVy5oZWlnaHRQeCpiKmgpL2gpfHwwO2suc3R5bGUuaGVpZ2h0PWAke2J9cHhgO2suc3R5bGUuYmFja2dyb3VuZENvbG9yPVcuS1tEKzFdO2suc3R5bGUuYm9yZGVyVG9wPQpgc29saWQgJHtXLmhlaWdodFB4LWJ9cHggJHtXLktbRF19YH1uLmluZGV4PShuLmluZGV4KzEpJW4uc2FtcGxlQ291bnR9dj1uLmluZGV4O24uVz9uLlcuY2xlYXJSZWN0KHYqbi5OLDAsbi5OLG4uaGVpZ2h0UHgpOihuPW4uZWxlbWVudC5jaGlsZHJlblt2XSxuLnN0eWxlLmhlaWdodD0iMHB4IixuLnN0eWxlLmJvcmRlclRvcD0iIil9OwpiQng9ZnVuY3Rpb24obixXKXt2YXIgRD0hIW4uTj8uRTUoKTtuLk58fChuLk49bmV3IERRTShuLmFwaSksZy51KG4sbi5OKSxnLnJ2KG4uYXBpLG4uTi5lbGVtZW50LDQpKTtuLk4uTUwoVyk7dmFyIGI9R3Uobi5hcGkuSjUoKSk7YiYmYi5sb2FkZWQmJkQhPT1XJiZiLm5HKCk7VyYmbi5hcGkuVSgic2ZuIix7fSwhMCl9Owp2VjI9ZnVuY3Rpb24obixXKXtpZihuLlc9PT12b2lkIDApcmV0dXJuITE7aWYoVy5zZWVrRGlyZWN0aW9uPT09IlRJTUVMWV9BQ1RJT05fVFJJR0dFUl9ESVJFQ1RJT05fRk9SV0FSRCImJk51bWJlcihXLnNlZWtMZW5ndGhNaWxsaXNlY29uZHMpPT09NUUzKXtpZihXPW4uVz09PTcyKW4uWD0iVElNRUxZX0FDVElPTl9UUklHR0VSX1NPVVJDRV9LRVlCT0FSRF9GT1JXQVJEX1NFRUtfRklWRV9TRUNPTkRTIjtyZXR1cm4gV31pZihXLnNlZWtEaXJlY3Rpb249PT0iVElNRUxZX0FDVElPTl9UUklHR0VSX0RJUkVDVElPTl9GT1JXQVJEIiYmTnVtYmVyKFcuc2Vla0xlbmd0aE1pbGxpc2Vjb25kcyk9PT0xRTQpe2lmKFc9bi5XPT09NzQpbi5YPSJUSU1FTFlfQUNUSU9OX1RSSUdHRVJfU09VUkNFX0tFWUJPQVJEX0ZPUldBUkRfU0VFS19URU5fU0VDT05EUyI7cmV0dXJuIFd9cmV0dXJuIFcuc2Vla0RpcmVjdGlvbj09PSJUSU1FTFlfQUNUSU9OX1RSSUdHRVJfRElSRUNUSU9OX0JBQ0tXQVJEIiYmCk51bWJlcihXLnNlZWtMZW5ndGhNaWxsaXNlY29uZHMpPT09NUUzP24uVz09PTcxOlcuc2Vla0RpcmVjdGlvbj09PSJUSU1FTFlfQUNUSU9OX1RSSUdHRVJfRElSRUNUSU9OX0JBQ0tXQVJEIiYmTnVtYmVyKFcuc2Vla0xlbmd0aE1pbGxpc2Vjb25kcyk9PT0xRTQ/bi5XPT09NzM6ITF9Owprd3c9ZnVuY3Rpb24obil7bi50aW1lbHlBY3Rpb25zJiYobi5qPW4udGltZWx5QWN0aW9ucy5yZWR1Y2UoKFcsRCk9PntpZihELmN1ZVJhbmdlSWQ9PT12b2lkIDApcmV0dXJuIFc7V1tELmN1ZVJhbmdlSWRdPTA7cmV0dXJuIFd9LHt9KSl9OwpZUD1mdW5jdGlvbihuKXtuLmNKJiZjbGVhclRpbWVvdXQobi5jSik7bi5jSj12b2lkIDA7bi5PPSExfTsKZmE9ZnVuY3Rpb24obil7aWYobi5OIT09dm9pZCAwKXt2YXIgVz0oVz1IOChuLG4uTikpJiZXLm9uQ3VlUmFuZ2VFbnRlcj9nLk40KFcub25DdWVSYW5nZUVudGVyKTp2b2lkIDA7dmFyIEQ9SDgobixuLk4pO2E6aWYoRCYmRC5hZGRpdGlvbmFsVHJpZ2dlcil7Zm9yKGIgb2YgRC5hZGRpdGlvbmFsVHJpZ2dlcilpZihiLnR5cGUmJigwLG4uYmRbYi50eXBlXSk/LihiLmFyZ3M/P3t9KSl7dmFyIGI9ITA7YnJlYWsgYX1iPSExfWVsc2UgYj0hMDtXJiZiJiYoZy5SVChuLmFwaSwiaW5uZXJ0dWJlQ29tbWFuZCIsVyksaGJqKG4sRCksbi5qW24uTl0hPT12b2lkIDAmJm4ualtuLk5dKyssbi5PPSEwKX19OwpIOD1mdW5jdGlvbihuLFcpe2lmKG4udGltZWx5QWN0aW9ucylmb3IobGV0IEQgb2Ygbi50aW1lbHlBY3Rpb25zKWlmKEQuY3VlUmFuZ2VJZD09PVcpcmV0dXJuIER9Owp4UXc9ZnVuY3Rpb24obixXKXtpZigobj1IOChuLFcpKSYmbi5vbkN1ZVJhbmdlRXhpdClyZXR1cm4gZy5ONChuLm9uQ3VlUmFuZ2VFeGl0KX07Cmhiaj1mdW5jdGlvbihuLFcpe3ZhciBEPU51bWJlcihXPy5tYXhWaXNpYmxlRHVyYXRpb25NaWxsaXNlY29uZHMpO0QmJihZUChuKSxuLmNKPXNldFRpbWVvdXQoKCk9PntpZihuLk4hPT12b2lkIDAmJlc/LmN1ZVJhbmdlSWQ9PT1uLk4pe24uTz0hMTtuLlg9dm9pZCAwO3ZhciBiPXhRdyhuLG4uTik7YiYmZy5SVChuLmFwaSwiaW5uZXJ0dWJlQ29tbWFuZCIsYil9fSxEKSl9Owp2YXIgZmFpPWZ1bmN0aW9uKG4sVyxELGIsdixrKXtyZXR1cm4gaXBbSVsxMF1dKHRoaXMsNCw1ODg5LG4sVyxELGIsdixrKX07CmdWaD1mdW5jdGlvbihuKXtpZihuPW4uZ2V0V2F0Y2hOZXh0UmVzcG9uc2UoKSlpZihuPWcudyhuLnBsYXllck92ZXJsYXlzPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXI/LnRpbWVseUFjdGlvbnNPdmVybGF5Vmlld01vZGVsLExxQyksbj8udGltZWx5QWN0aW9ucylyZXR1cm4gbj8udGltZWx5QWN0aW9ucy5tYXAoVz0+Zy53KFcsZWJyKSkuZmlsdGVyKFc9PiEhVyl9OwpKNT1mdW5jdGlvbihuKXtuLk4hPT1udWxsJiYoY2xlYXJUaW1lb3V0KG4uTiksbi5OPW51bGwpfTsKUjA9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1XXm47KG48PDEmMTUpPT0yJiZEW0lbMjVdXSgpO2lmKChuLTh8MTcpPG4mJihuLTZeMjIpPj1uKXt2YXIgaD1EW2JdLHg9aFtJW2teNzM1NF1dKElba143MzA5XSk7eD4wP0VjKGteNzM1NSxrXjEyOTAsdixoW0lba143MzU5XV0oMCx4KSxoW0lba143MzU5XV0oeCsxKSk6aCYmKHZbaF09SVtrXjczNTddKTt2YXIgTD1bXX1pZigobiYyNyk9PW4pe2lmKCEoZ1goRFtJW2teNzUzMl1dKXx8RFtJW2teNzUzMl1dW0lba143NTE4XV0oSVtrXjc0OTBdKXx8RFtJW2teNzUzMl1dW0lba143NTE4XV0oSVtrXjc0NzZdKXx8RFtJW2teNzUzMl1dW0lba143NTE4XV0oSVtrXjc1MzNdKSkpdGhyb3cgbmV3IGcuUXgoSVtrXjc0ODBdLERbSVtrXjc1MzJdXSk7aD1scihEW0lba143NTMyXV0pO0RbSVtrXjc1MjddXT1oW0lba143NTQwXV07RFtJW2teNzUxNF1dPWhbSVsxXV0rKGhbSVtrXjc1MDhdXSE9bnVsbD9gOiR7aFtJW2teNzUwOF1dfWA6Cklba143NTI4XSk7eD1oW0lba143NTMyXV07eFtJW2teNzUxOF1dKElba143NTM4XSk/KERbSVtrXjc1MjFdXT1JW2teNzUzOF0seD14W0lba143NTMwXV0oa143NTM5KSk6eFtJW2teNzUxOF1dKElba143NTIzXSk/KERbSVtrXjc1MjFdXT1JW2teNzUyM10seD14W0lba143NTMwXV0oa143NTM2KSk6eFtJW2teNzUxOF1dKElba143NDc1XSk/KHg9aXAoa143NTI5LGteODgwLHgsRCkseD14WzBdKTooRFtJW2teNzUyMV1dPXgseD1JW2teNzUyOF0pO3ZhciBlPURbSVsxXV07RFtJWzFdXT1pcChrXjc1MzMsa143NzcxLHgpO09iamVjdFtJW2teNzUzOV1dKERbSVsxXV0sZzcoMixrXjc1MDAsaFtJW2teNzUxNF1dW0lbMF1dKCkpKTtPYmplY3RbSVtrXjc1MzldXShEW0lbMV1dLGUpO0RbSVsxXV1bSVtrXjc0NzNdXT09PUlba143NTAxXSYmKGRlbGV0ZSBEW0lbMV1dW0lba143NDczXV0sRFtJW2teNzUyMV1dKz1JW2teNzQ4N10pO0RbSVtrXjc1MzJdXT1JW2teNzUyOF07RFtJW2teNzUyMF1dPQpJW2teNzUyOF07RFtJW2teNzU0MF1dJiYoaD1YRChrXjc0OTIsa14zMjg1LEQpKTtMPVtdfShuJjk5KT09biYmKGVYKGteMzQ4NSxrXjQ1NDIsRCksTD1EW0lba14zNTExXV0pO24rMyYxNXx8KEw9ZW5jb2RlVVJJQ29tcG9uZW50KEQpKTtyZXR1cm4gTH07ClhiaD1mdW5jdGlvbihuKXtKNShuKTtuLk49c2V0VGltZW91dCgoKT0+e24uaGlkZSgpfSwzRTMpfTsKSUc9ZnVuY3Rpb24obil7dmFyIFc9bi5hcGkuVUooKTtpZihXKXtsZXQgRD1uLmFwaS5nZXRQbGF5ZXJTaXplKCk7Vy5zdHlsZS50cmFuc2Zvcm09YHRyYW5zbGF0ZSgke24uTipELndpZHRoKigxLW4uc2NhbGUpfXB4LCAke24uSipELmhlaWdodCooMS1uLnNjYWxlKX1weCkgc2NhbGUoJHtuLnNjYWxlfSlgO1cuc3R5bGUudHJhbnNmb3JtT3JpZ2luPSIwIDAiO1c9bi5pbmRpY2F0b3I7Vy5XLnRleHRDb250ZW50PWAke051bWJlcihuLnNjYWxlLnRvRml4ZWQoMSkpfXhgO1cuTj09PW51bGwmJlhiaChXKTtuLnNjYWxlPjE/bi5pbmRpY2F0b3Iuc2hvdygpOm4uaW5kaWNhdG9yLmhpZGUoKTtXPW4uc2NhbGU+MT8iWk9PTV9TVEFURV9GUkVFIjoiWk9PTV9TVEFURV9PUklHSU5BTCI7VyE9PW4uem9vbVN0YXRlJiYobi56b29tU3RhdGU9VyxnLnpVKCJ3YXRjaFpvb21TdGF0ZUNoYW5nZSIse3pvb21TdGF0ZTpuLnpvb21TdGF0ZX0pKX19OwpxSDE9ZnVuY3Rpb24obil7bj1uLldEKCk7aWYoIW4pcmV0dXJuITE7bj1nLm9FKG4pLmV4cHx8IiI7cmV0dXJuIG4uaW5jbHVkZXMoInhwdiIpfHxuLmluY2x1ZGVzKCJ4cGUiKX07Ckd3VT1mdW5jdGlvbihuKXtmb3IobGV0IFcgb2Ygbi5OKCEwKSlpZihxSDEoVykpcmV0dXJuITA7cmV0dXJuITF9Owp0THg9ZnVuY3Rpb24obixXKXtmb3IobGV0IGIgb2Ygbi5OKCEwKSlpZihxSDEoYikpe249Yjt2YXIgRD17cG90YzoiMSIscG90Old9O24udXJsJiYobi51cmw9Zy56ZChuLnVybCxEKSl9fTsKJFF4PWFzeW5jIGZ1bmN0aW9uKG4pe3RyeXthd2FpdCBufWNhdGNoKFcpe319OwpybU09ZnVuY3Rpb24obil7dmFyIFc9bmV3IHF3LEQ9e1siWC1Hb29nLUFwaS1LZXkiXToiQUl6YVN5RHlUNVcwSmg0OUYzMFBxcXR5ZmRmN3BETEZLTEpvQW53In07cmV0dXJuIG5ldyBmVihXLG4sKCk9PkQpfTsKc0xiPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgVEgobil9OwpOYmI9ZnVuY3Rpb24obil7bi5KJiYobi5YPW5ldyBZNixuLmoucHJvbWlzZS50aGVuKCgpPT57bi5tUS5TbCgicG90X2lmIik7U2wobil9KSl9OwpIQnc9ZnVuY3Rpb24obil7dmFyIFc9KG4uUygiaHRtbDVfZ2VuZXJhdGVfc2Vzc2lvbl9wb190b2tlbiIpfHxuLlMoImh0bWw1X2dlbmVyYXRlX2NvbnRlbnRfcG9fdG9rZW4iKSkmJiFuLnVzZUxpdmluZ1Jvb21Qb1Rva2VuO3RyeXtpZihuLlMoImh0bWw1X3VzZV9zaGFyZWRfb3dsX2luc3RhbmNlIil8fG4uYXBpLkcoKS5adCgpLk4uUVEocGJNKSlZSGkobik7ZWxzZSBpZihXKXtuLm1RLlNsKCJwb3RfaXNjIik7bGV0IEQ9Zy5kTShuLmFwaS5HKCkuZXhwZXJpbWVudHMsImh0bWw1X3dlYnBvX2thaW9zX2RlZmVyX3RpbWVvdXRfbXMiKTtEPyhBNShuKSxnLm4kKCgpPT57bUEobil9LEQpKTpuLlMoImh0bWw1X3dlYnBvX2lkbGVfcHJpb3JpdHlfam9iIik/KEE1KG4pLGcuY0IoZy5EeSgpLCgpPT57bUEobil9KSk6bUEobil9fWNhdGNoKEQpe0QgaW5zdGFuY2VvZiBFcnJvciYmZy5HcShEKX19OwpZSGk9YXN5bmMgZnVuY3Rpb24obil7S2Eobiwic3dwb19pIik7QTUobik7U2wobik7dmFyIFc9YXdhaXQgZy5NaChnLkQ2KCkpO0thKG4sInN3cG9fY28iKTtXPWF3YWl0IFp0WihXKTtuLlMoImh0bWw1X3dlYl9wb190b2tlbl9kaXNhYmxlX2NhY2hpbmciKXx8Vy55aCgxNTApO24uSj1XO0thKG4sInN3cG9fY2MiKTskUXgoVy5IJCgpKS50aGVuKCgpPT57bi5OPSEwO24uai5yZXNvbHZlKCk7S2Eobiwic3dwb19yZSIpfSk7CmcubiQoKCk9PnttQShuKTtLYShuLCJzd3BvX3NpIil9LDApfTsKQTU9ZnVuY3Rpb24obil7bi5XfHwobi5XPW5XKCkpfTsKbUE9ZnVuY3Rpb24obil7dmFyIFc9bi5hcGkuRygpO24ubVEuU2woInBvdF9pc3QiKTtuLkp8fGZNMShuKTtuLlMoImh0bWw1X2JhbmRhaWRfYXR0YWNoX2NvbnRlbnRfcG9fdG9rZW4iKXx8KG4uUygiaHRtbDVfZ2VuZXJhdGVfc2Vzc2lvbl9wb190b2tlbiIpJiYoU2wobiksTmJiKG4pKSxXPWcuZE0oVy5leHBlcmltZW50cywiaHRtbDVfc2Vzc2lvbl9wb190b2tlbl9pbnRlcnZhbF90aW1lX21zIil8fDAsVz4wJiYobi5ZPVcwKCgpPT57U2wobil9LFcpKSxuLks9ITApfTsKSm14PWZ1bmN0aW9uKG4pe3ZhciBXPWcuWWgobi5leHBlcmltZW50cywiaHRtbDVfd2ViX3BvX3JlcXVlc3Rfa2V5Iik7cmV0dXJuIFc/VzpnLms2KG4pPyJaMWVsTmtBS0xwU1Izb1BPVU1TTiI6Ik80M3owZHBqaGdYMjBTQ3g0S0FvIn07CkthPWZ1bmN0aW9uKG4sVyl7bi5TKCJodG1sNV93ZWJwb19iZ2VfY3RtcCIpJiZuLmFwaS5VKFcse2h3cG86ISFuLkosaHdwb3I6bi5OfSl9OwpTbD1hc3luYyBmdW5jdGlvbihuKXtpZihuLlMoImh0bWw1X2dlbmVyYXRlX3Nlc3Npb25fcG9fdG9rZW4iKSYmIW4udXNlTGl2aW5nUm9vbVBvVG9rZW4pe3ZhciBXPW4uYXBpLkcoKSxEPWcuQXIoIkVPTV9WSVNJVE9SX0RBVEEiKXx8Zy5BcigiVklTSVRPUl9EQVRBIik7RD1XLllyP1cuZGF0YXN5bmNJZDpEO0Q9Zy5ZaChXLmV4cGVyaW1lbnRzLCJodG1sNV9tb2NrX2NvbnRlbnRfYmluZGluZ19mb3Jfc2Vzc2lvbl90b2tlbiIpfHxXLmxpdmluZ1Jvb21Qb1Rva2VuSWR8fEQ7Vy5qVz1PcihuLEQpfX07CmZNMT1mdW5jdGlvbihuKXt2YXIgVz1uLmFwaS5HKCksRD1KbXgoVyk7RD1ybU0oRCk7dmFyIGI9RC5aai5iaW5kKEQpO0QuWmo9YXN5bmMgaz0+e2s9YXdhaXQgYihrKTtuLmFwaS5VKCJpdHIiLHt9KTtyZXR1cm4ga307CnRyeXt2YXIgdj1zTGIoe1VnOkQsa2Q6e21heEF0dGVtcHRzOjV9LHgzOntWajoiQ0xFbiIsZGlzYWJsZTpXLmV4cGVyaW1lbnRzLkVxKCJodG1sNV93ZWJfcG9fZGlzYWJsZV9yZW1vdGVfbG9nZ2luZyIpLEpwOlRwYihXLmV4cGVyaW1lbnRzKSxybzpoPT57dmFyIHg9SU0yLmdldChoKTt4fHwoeD1uZXcgU0hpKGgpLHg9bmV3IGhxKHgpLElNMi5zZXQoaCx4KSk7cmV0dXJuIHh9LApSaTpuLlMoIndwb19kaXNfbGZkbXMiKT8wOjFFM30sdDY6Zy5HcX0pO2xldCBrPW5ldyBBbXQoe08xOnYsVWc6RCxvbkVycm9yOmcuR3F9KTskUXgoay5IJCgpKS50aGVuKCgpPT57bi5OPSEwO24uai5yZXNvbHZlKCl9KTsKbi5TKCJodG1sNV93ZWJfcG9fdG9rZW5fZGlzYWJsZV9jYWNoaW5nIil8fGsueWgoMTUwKTtnLnUobix2KTtnLnUobixrKTtuLko9a31jYXRjaChrKXtnLkdxKGspLHY/LmRpc3Bvc2UoKX19OwpPcj1mdW5jdGlvbihuLFcpe2lmKCFuLkope2lmKG4uVyl0cnl7cmV0dXJuIG4uVyhXKX1jYXRjaChEKXtnLkdxKEQpfXJldHVybiIifXRyeXtuLm1RLlNsKG4uTj8icG90X2NtcyI6InBvdF9jc21zIik7bGV0IEQ9e0dyOiEwLEVSOiEwLHdfOld9O24uUygiaHRtbDVfd2ViX3BvX3Rva2VuX2Rpc2FibGVfY2FjaGluZyIpfHwoRC5oRz17YW06VyxBQjohMCxyMzohMH0pO2xldCBiPW4uSi5aUihEKTtuLm1RLlNsKG4uTj8icG90X2NtZiI6InBvdF9jc21mIik7bi5OJiYobi5YPy5yZXNvbHZlKCksbi5YPW51bGwsbi5WJiYobi5WPSExLG4uYXBpLmFwcC5NTigpLmpEKCExKSkpO3JldHVybiBifWNhdGNoKEQpe3JldHVybiBnLkdxKEQpLCIifX07Cktxcj1mdW5jdGlvbihuKXt2YXIgVz1nLnFqKCk7bi5KJiZnLnhvKFcse05IOlFXLFlMOm1RU30pfTsKZy5QOD1mdW5jdGlvbihuLFcsRCl7Zy5hTCgicGJzIixXPz8oMCxnLlIpKCksRD8/bi50aW1lck5hbWUpfTsKZy5PQk09ZnVuY3Rpb24obixXLEQpe3ZhciBiPWcuQ04oVy55USkmJiFXLnlRLlg7aWYoVy55US5lViYmKEZWKFcueVEpfHxXLnlRLlk9PT0ic2hvcnRzcGFnZSJ8fFcueVEuWT09PSJsZWFuYmFjayJ8fGIpJiYhbi5XKXtuLlc9ITA7bi5WPVcuY2xpZW50UGxheWJhY2tOb25jZTtnLkFyKCJUSU1JTkdfQUNUSU9OIil8fGcuU0goIlRJTUlOR19BQ1RJT04iLG4uQi5jc2lQYWdlVHlwZSk7bi5CLmNzaVNlcnZpY2VOYW1lJiZnLlNIKCJDU0lfU0VSVklDRV9OQU1FIixuLkIuY3NpU2VydmljZU5hbWUpO2lmKG4uTil7Yj1uLk4uZUcoKTtmb3IodmFyIHYgb2YgT2JqZWN0LmtleXMoYikpZy5hTCh2LGJbdl0sbi50aW1lck5hbWUpO3Y9UFYoQ0IpKG4uTi5Idik7Zy5ubCh2LG4udGltZXJOYW1lKTt2PW4uTjt2Lko9e307di5Idj17fX1nLm5sKHtwbGF5ZXJJbmZvOnt2aXNpYmlsaXR5U3RhdGU6UFYoakwpKCl9LHBsYXllclR5cGU6IkxBVEVOQ1lfUExBWUVSX0hUTUw1In0sbi50aW1lck5hbWUpOwpuLmohPT1XLmNsaWVudFBsYXliYWNrTm9uY2V8fE51bWJlci5pc05hTihuLkopfHwoZy52UCgiX3N0YXJ0IixuLnRpbWVyTmFtZSk/RD1QVihvTCkoIl9zdGFydCIsbi50aW1lck5hbWUpK24uSjpnLkdxKG5ldyBnLlF4KCJhdHRlbXB0ZWQgdG8gbG9nIGdhcGxlc3MgcGJzIGJlZm9yZSBDU0kgdGltZWxpbmUgc3RhcnRlZCIse2NwbjpXLmNsaWVudFBsYXliYWNrTm9uY2V9KSkpOyFEfHxnLnZQKCJwYnMiLG4udGltZXJOYW1lKXx8Vy5HU3x8Zy5QOChuLEQpfX07ClAkQz1mdW5jdGlvbihuKXtXUCgpO2NiKCJ3YXRjaCIsWyJwYnMiLCJwYnUiXSk7bi50aW1lck5hbWU9IiJ9OwpaQmo9ZnVuY3Rpb24obil7aWYobi5OKXt2YXIgVz1uLk47Vy5KPXt9O1cuSHY9e319bi5XPSExO24uaj12b2lkIDA7bi5KPU5hTn07ClVRaT1mdW5jdGlvbihuLFcpe3ZhciBEPSExLGI9bi5xdWV1ZS5maW5kSW5kZXgodj0+di5ncz09PVcpOwpiPj0wJiYobi5xdWV1ZS5zcGxpY2UoYiwxKSxEPSEwLFcucU4oKXx8Vy51bnN1YnNjcmliZSgicmVxdWVzdGNvbXBsZXRlZCIsbi5XLG4pLG4uVShXLCJkZXFfcXVldWUiLHt0Y3BuOlcuV04oKXx8Im5vbmUifSkpO2I9bi5KLmZpbmRJbmRleCh2PT52LmdzPT09Vyk7CmI+PTAmJihuLkouc3BsaWNlKGIsMSksRD0hMCxXLnFOKCl8fFcudW5zdWJzY3JpYmUoInJlcXVlc3Rjb21wbGV0ZWQiLG4uVyxuKSxuLlUoVywiZGVxX3dhaXQiLHt0Y3BuOlcuV04oKXx8Im5vbmUifSkpO3JldHVybiBEfTsKeW1pPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBvZiBuLnF1ZXVlKVcuZ3MucU4oKXx8bi51bnN1YnNjcmliZShXLmdzKTtmb3IobGV0IFcgb2Ygbi5KKVcuZ3MucU4oKXx8bi51bnN1YnNjcmliZShXLmdzKTtuLnF1ZXVlPVtdO24uSj1bXX07CkVWYj1mdW5jdGlvbihuLFcpe24uVShXLCJyZXFfbG9hZCIse3RjcG46Vy5XTigpfHwibm9uZSIsdHlwZToicHJlIn0pO2lmKCFuLnF1ZXVlLnNvbWUoYj0+Yi5ncz09PVcpJiYhbi5KLnNvbWUoYj0+Yi5ncz09PVcpKXt2YXIgRD17Z3M6VywKc3RhcnRlZDohMX07bi5xdWV1ZS5sZW5ndGg8bi5wb2xpY3kuTj9uLnF1ZXVlLnB1c2goRCk6KG4uSi5wdXNoKEQpLG4uVShXLCJ3YWl0Iix7dGNwbjpXLldOKCl8fCJub25lIn0pKTtuLlcoKX19OwppQlM9ZnVuY3Rpb24obil7dmFyIFc9bi5OP24uTi5XTigpfHwibm9uZSI6Im5vbmUiLEQ9bi5xdWV1ZS5tYXAoYj0+Yi5ncy5XTigpfHwibm9uZSIpLmpvaW4oIiwiKTsKcmV0dXJue3BjcG46Vyx3czpuLkoubGVuZ3RoLGNwbnM6RH19OwpaVD1mdW5jdGlvbihuKXtyZXR1cm4hIShuLnBsYXlsaXN0fHxuLmxpc3R8fG4uYXBpKX07Cml2PWZ1bmN0aW9uKG4sVyxELGIpe1c9VyE9PXZvaWQgMD9XOm4uaW5kZXg7Vz1uLml0ZW1zJiZXIGluIG4uaXRlbXM/bi5pdGVtc1tuLm9yZGVyW1ddXTpudWxsO3ZhciB2PW51bGw7VyYmKEQmJihXLmF1dG9wbGF5PSIxIiksYiYmKFcuYXV0b25hdj0iMSIpLHY9bmV3IGcuVXIobi55USxXKSxnLnUobix2KSx2Lk1kPSEwLHYuc3RhcnRTZWNvbmRzPW4uc3RhcnRTZWNvbmRzfHx2LmNsaXBTdGFydHx8MCxuLmxpc3RJZCYmKHYucGxheWxpc3RJZD1uLmxpc3RJZC50b1N0cmluZygpKSk7cmV0dXJuIHZ9Owp1QXQ9ZnVuY3Rpb24obixXKXtpZihXLnZpZGVvJiZXLnZpZGVvLmxlbmd0aCl7bi50aXRsZT1XLnRpdGxlfHwiIjtuLmRlc2NyaXB0aW9uPVcuZGVzY3JpcHRpb247bi52aWV3cz1XLnZpZXdzO24ubGlrZXM9Vy5saWtlcztuLmRpc2xpa2VzPVcuZGlzbGlrZXM7bi5hdXRob3I9Vy5hdXRob3J8fCIiO3ZhciBEPVcubG9vcDtEJiYobi5sb29wPUQpO0Q9aXYobik7bi5pdGVtcz1bXTtmb3IobGV0IGIgb2YgVy52aWRlbyliJiYoYi52aWRlb19pZD1iLmVuY3J5cHRlZF9pZCxuLml0ZW1zLnB1c2goYikpO24ubGVuZ3RoPW4uaXRlbXMubGVuZ3RoOyhXPVcuaW5kZXgpP24uaW5kZXg9VzpuLmZpbmRJbmRleChEKTtuLnNldFNodWZmbGUoITEpO24ubG9hZGVkPSEwO24uTiYmbi5OKCl9fTsKdXY9ZnVuY3Rpb24obixXKXtuLmluZGV4PWcuRmYoVywwLG4ubGVuZ3RoLTEpO24uc3RhcnRTZWNvbmRzPTB9Owp6YnI9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD1uYygpLGI9bi5HKCksdj17Y29udGV4dDpnLm9UKG4pLHBsYXliYWNrQ29udGV4dDp7Y29udGVudFBsYXliYWNrQ29udGV4dDp7YW5jZXN0b3JPcmlnaW5zOmIuYW5jZXN0b3JPcmlnaW5zfX19LGs9Yi5nZXRXZWJQbGF5ZXJDb250ZXh0Q29uZmlnKCk7az8uZW5jcnlwdGVkSG9zdEZsYWdzJiYodi5wbGF5YmFja0NvbnRleHQuY29udGVudFBsYXliYWNrQ29udGV4dC5lbmNyeXB0ZWRIb3N0RmxhZ3M9ay5lbmNyeXB0ZWRIb3N0RmxhZ3MpO2s/LmhpZGVJbmZvJiYodi5wbGF5ZXJQYXJhbXM9e3Nob3dpbmZvOiExfSk7Yj1iLmVtYmVkQ29uZmlnO2s9bi5OZDt2YXIgaD1XLmRvY2lkfHxXLnZpZGVvX2lkfHxXLnZpZGVvSWR8fFcuaWQ7aWYoIWgpe2g9Vy5yYXdfZW1iZWRkZWRfcGxheWVyX3Jlc3BvbnNlO2lmKCFoKXt2YXIgeD1XLmVtYmVkZGVkX3BsYXllcl9yZXNwb25zZTt4JiYoaD1KU09OLnBhcnNlKHgpKX1oPWg/Zy53KGg/LmVtYmVkUHJldmlldz8udGh1bWJuYWlsUHJldmlld1JlbmRlcmVyPy5wbGF5QnV0dG9uPy5idXR0b25SZW5kZXJlcj8ubmF2aWdhdGlvbkVuZHBvaW50LApnLklRKT8udmlkZW9JZHx8bnVsbDpudWxsfWg9aD9oOnZvaWQgMDt4PW4ucGxheWxpc3RJZD9uLnBsYXlsaXN0SWQ6Vy5saXN0O3ZhciBMPVcubGlzdFR5cGU7aWYoeCl7dmFyIGU7TD09PSJ1c2VyX3VwbG9hZHMiP2U9e3VzZXJuYW1lOnh9OmU9e3BsYXlsaXN0SWQ6eH07b1YyKGIsayxoLFcsZSk7di5wbGF5bGlzdFJlcXVlc3Q9ZX1lbHNlIFcucGxheWxpc3Q/KGU9e3RlbXBsaXN0VmlkZW9JZHM6Vy5wbGF5bGlzdC50b1N0cmluZygpLnNwbGl0KCIsIil9LG9WMihiLGssaCxXLGUpLHYucGxheWxpc3RSZXF1ZXN0PWUpOmgmJihlPXt2aWRlb0lkOmh9LGs/ZS5zZXJpYWxpemVkVGhpcmRQYXJ0eUVtYmVkQ29uZmlnPWs6YiYmKGUuc2VyaWFsaXplZFRoaXJkUGFydHlFbWJlZENvbmZpZz1iKSx2LnNpbmdsZVZpZGVvUmVxdWVzdD1lKTtiPUxCKGRRWik7dHJ5e2xldCBHPWF3YWl0IGcucl8oRCx2LGIpLHI9bi5HKCk7Vy5yYXdfZW1iZWRkZWRfcGxheWVyX3Jlc3BvbnNlPUc7ci5jSj0KaE8oVyxnLm80KHIpKTtyLkQ9ci5jSj09PSJFTUJFRERFRF9QTEFZRVJfTU9ERV9QRkwiO0cmJkcudHJhY2tpbmdQYXJhbXMmJmcueXIoRy50cmFja2luZ1BhcmFtcyk7cmV0dXJuIG5ldyBnLlVyKHIsVyl9Y2F0Y2goRyl7cmV0dXJuIEcgaW5zdGFuY2VvZiBFcnJvcnx8KEc9RXJyb3IoImIyNTk4MDI3NDgiKSksZy5YaihHKSxufX07Cm9WMj1mdW5jdGlvbihuLFcsRCxiLHYpe2IuaW5kZXgmJih2LnBsYXlsaXN0SW5kZXg9U3RyaW5nKE51bWJlcihiLmluZGV4KSsxKSk7di52aWRlb0lkPUQ/RDoiIjtXP3Yuc2VyaWFsaXplZFRoaXJkUGFydHlFbWJlZENvbmZpZz1XOm4mJih2LnNlcmlhbGl6ZWRUaGlyZFBhcnR5RW1iZWRDb25maWc9bil9OwpnLmQ5PWZ1bmN0aW9uKG4sVyl7b0cuZ2V0KG4pO29HLnNldChuLFcpfTsKZy5sTVU9ZnVuY3Rpb24obixXKXtyZXR1cm4gVy5HKCkuUygiaHRtbDVfdXNlX2hsc19uYXRpdmVfY2FwdGlvbnMiKSYmZy5HbiYmbi56VygpJiYhIW4uSj8uVygpfTsKZy56Rz1mdW5jdGlvbihuLFcpe3JldHVybiBuLkcoKS5TKCJzYWZhcmlfbGl2ZV9kcm1fY2FwdGlvbnNfZml4IikmJm4uZ2V0VmlkZW9EYXRhKCk/Lk1pKCk/ITE6Zy5HbChuLkcoKSkmJiFXLmlzTWFuaWZlc3RsZXNzfTsKZy5sdj1mdW5jdGlvbihuLFcpe3JldHVybiBuLmluZm8uTigpP1c/bi5pbmZvLml0YWc9PT1XOiEwOiExfTsKZy5UYmk9ZnVuY3Rpb24obixXKXtpZihuLk4hPW51bGwmJmcuekcoVyxuLk4pJiZuLk4uTi5yYXdjYyE9bnVsbClyZXR1cm4hMDtpZighbi56VygpKXJldHVybiExO1c9ISFuLk4mJm4uTi5pc01hbmlmZXN0bGVzcyYmT2JqZWN0LnZhbHVlcyhuLk4uTikuc29tZShEPT5nLmx2KEQsIjM4NiIpKTsKbj0hIW4uTiYmIW4uTi5pc01hbmlmZXN0bGVzcyYmZy5tSChuLk4pO3JldHVybiBXfHxufTsKRCQ9ZnVuY3Rpb24obil7aWYobi5BLkcoKS5lJClyZXR1cm4gbi5OaS5nZXQoInV4Iil9OwpURz1mdW5jdGlvbihuKXtyZXR1cm4gbi5OaS5nZXQoImFkIil9OwpqbD1mdW5jdGlvbihuKXtyZXR1cm4gbi5OaS5nZXQoImNhcHRpb25zIil9OwpDYT1mdW5jdGlvbihuKXtyZXR1cm4gbi5OaS5nZXQoImFubm90YXRpb25zX21vZHVsZSIpfTsKR3U9ZnVuY3Rpb24obil7aWYobi5BLkcoKS5GZSlyZXR1cm4gbi5OaS5nZXQoInJlbW90ZSIpfTsKQjg9ZnVuY3Rpb24obil7cmV0dXJuIG4uTmkuZ2V0KCJjcmVhdG9yZW5kc2NyZWVuIil9OwpGWT1mdW5jdGlvbihuKXtpZihnLlhDKG4uQS5HKCkpKXJldHVybiBuLk5pLmdldCgia2lkcyIpfTsKZy4kRj1mdW5jdGlvbihuKXtyZXR1cm4gbi5OaS5nZXQoIndlYmdsIil9OwpqTGo9ZnVuY3Rpb24obixXKXtuLlc9V307CkMkdz1mdW5jdGlvbihuKXt2YXIgVz1uLkEuZ2V0VmlkZW9EYXRhKCk7cmV0dXJuIGcubE1VKFcsbi5BKXx8ISFXLndhfHwhIVcuY2FwdGlvblRyYWNrcy5sZW5ndGh8fGcuVGJpKFcsbi5BKX07Cnc5PWZ1bmN0aW9uKG4sVyxEPSExLGI9ITEsdil7dmFyIGssaD1uLk5pLmdldChXKTtpZighaHx8YilpZih2fHwodj0oKT0+e3c5KG4sVyxELGIpfSksa3x8KGs9KCk9PntNVChuLFcpfSksaD1ofHxCYmgobixXLEZxTShuLFcpLHYsaykpbi5OaS5zZXQoVyxoKSxoLmNyZWF0ZSgpLG4uQS5XSigibW9kdWxlY3JlYXRlZCIsVyksRCYmZy5WVShuLkEsIm9uQXBpQ2hhbmdlIil9OwpSRz1mdW5jdGlvbihuKXtpZihuLkEuRygpLkQpcmV0dXJuITE7aWYobj1uLkEuZ2V0VmlkZW9EYXRhKHtwbGF5ZXJUeXBlOjF9KS5nZXRQbGF5ZXJSZXNwb25zZSgpKXtsZXQgVz1uLmFkUGxhY2VtZW50cztpZihXKWZvcihsZXQgRD0wO0Q8Vy5sZW5ndGg7RCsrKWlmKFdbRF0uYWRQbGFjZW1lbnRSZW5kZXJlcilyZXR1cm4hMDtpZihuLmFkU2xvdHMpcmV0dXJuITB9cmV0dXJuITF9OwpRWT1mdW5jdGlvbihuKXtyZXR1cm4gbi5BLkcoKS5TKCJodG1sNV9hbGxvd19hc21qcyIpfHxuLkEuRygpLlp0KCkuTi5RUSh3YlMpfTsKRnFNPWZ1bmN0aW9uKG4sVyl7c3dpdGNoKFcpe2Nhc2UgImFkIjpyZXR1cm4gUkcobik7Y2FzZSAiYW5ub3RhdGlvbnNfbW9kdWxlIjpyZXR1cm4hMTtjYXNlICJhc21qcyI6cmV0dXJuIFFZKG4pO2Nhc2UgImNyZWF0b3JlbmRzY3JlZW4iOnJldHVybiExO2Nhc2UgImVtYmVkIjpyZXR1cm4gZy5vNChuLkEuRygpKTtjYXNlICJlbmRzY3JlZW4iOnJldHVybiExO2Nhc2UgImhlYXJ0YmVhdCI6cmV0dXJuIG4ueVAoKTtjYXNlICJraWRzIjpyZXR1cm4gZy5YQyhuLkEuRygpKTtjYXNlICJyZW1vdGUiOnJldHVybiBuLkEuRygpLkZlO2Nhc2UgIm1pbmlwbGF5ZXIiOnJldHVybiBuLkEuRygpLnNob3dNaW5pcGxheWVyVWlXaGVuTWluaW1pemVkO2Nhc2UgIm9mZmxpbmUiOnJldHVybiBuLkEuRygpLlpoO2Nhc2UgImNhcHRpb25zIjpyZXR1cm4gQyR3KG4pO2Nhc2UgInVucGx1Z2dlZCI6cmV0dXJuIGcuRGYobi5BLkcoKSk7Y2FzZSAidXgiOnJldHVybiBuLkEuRygpLmUkO2Nhc2UgIndlYmdsIjpXPQpuLkEuZ2V0VmlkZW9EYXRhKCk7dmFyIEQ9bi5BLkcoKTtuPWcuamQoKTtsZXQgYj1nLm5OKEQpLHY9Vy5KPy52aWRlbz8uaXNIZHIoKTtEPSFnLnF1KFcpJiYhdiYmRC5TKCJlbmFibGVfd2ViZ2xfbm9vcCIpO3JldHVybiBnLkpEKFcpfHxnLkhUKFcpfHxnLmZBKFcpP258fGI6Zy5rcChXKT9iOkQ/YjohMTtjYXNlICJ5cGMiOnJldHVybiBuLklWKCk7ZGVmYXVsdDpyZXR1cm4gZy5YaihFcnJvcihgTW9kdWxlIGRlc2NyaXB0b3IgJHtXfSBkb2VzIG5vdCBtYXRjaGApKSwhMX19OwpNVD1mdW5jdGlvbihuLFcpe1c9TUxiW1ddO2ZvcihsZXQgRCBvZiBXKW4uQS5HaShEKX07CkJiaD1mdW5jdGlvbihuLFcsRCxiLHYpe3RyeXtpZihEKXtsZXQgaz1vRy5nZXQoVyk7aWYoaylyZXR1cm4gbmV3IGsobi5BKTtSYngobixXLGIsdil9ZWxzZSBNVChuLFcpfWNhdGNoKGspe01UKG4sVyksZy5YaihrKX1yZXR1cm4gbnVsbH07ClJieD1mdW5jdGlvbihuLFcsRCxiKXtpZihuLkQpe3ZhciB2PVFMaVtXXTtXPW4uRCt2O24uSyYmKFcrPWA/Y2I9JHtuLkt9YCk7VkxNKG4sVywoKT0+e24uai5hZGQodik7RC5jYWxsKG4pfSxiKX19OwpjbWI9YXN5bmMgZnVuY3Rpb24obil7dmFyIFc9bi5OaS5nZXQoImFzbWpzIik7aWYoVylyZXR1cm4gVztXPW9HLmdldCgiYXNtanMiKT8/YXdhaXQgbmV3IFByb21pc2UoKEQsYik9PntSYngobiwiYXNtanMiLCgpPT57dmFyIHY9b0cuZ2V0KCJhc21qcyIpO3Y/RCh2KTpiKCJjYW5ub3QgbG9hZCBtb2R1bGUgYXNtanMiKX0sYil9KTsKaWYoIVcpcmV0dXJuIFByb21pc2UucmVqZWN0KCJjYW5ub3QgbG9hZCBtb2R1bGUgYXNtanMiKTtXPW5ldyBXKG4uQSk7bi5OaS5zZXQoImFzbWpzIixXKTtXLmNyZWF0ZSgpO3JldHVybiBXfTsKVlk9ZnVuY3Rpb24obil7dmFyIFc9bi5BLmdldFZpZGVvRGF0YSgpO2lmKG49Vy5TKCJ3ZWJfcGxheWVyX2RlZmVyX2FkIikpe2lmKGcuamooVy5JSiwiYWQiKXx8dzYoVyl8fFcuZW5hYmxlU2VydmVyU3RpdGNoZWREYWkpdmFyIEQ9ITE7ZWxzZXtuPVcuc3RhcnRTZWNvbmRzO3ZhciBiPVcucGxheWVyUmVzcG9uc2U/LmFkUGxhY2VtZW50cztpZihXPWIpe1c9TnVtYmVyLk1BWF9WQUxVRTtmb3IoRCBvZiBiKWlmKGI9RC5hZFBsYWNlbWVudFJlbmRlcmVyKXtsZXQgdj1iLmNvbmZpZz8uYWRQbGFjZW1lbnRDb25maWc7dj8ua2luZD09PSJBRF9QTEFDRU1FTlRfS0lORF9NSUxMSVNFQ09ORFMiJiYoYj0oTnVtYmVyKHY/LmFkVGltZU9mZnNldD8ub2Zmc2V0U3RhcnRNaWxsaXNlY29uZHMpfHwwKS1OdW1iZXIoYi5yZW5kZXJlcj8uYWRCcmVha1NlcnZpY2VSZW5kZXJlcj8ucHJlZmV0Y2hNaWxsaXNlY29uZHN8fDApLGI8VyYmKFc9YikpfVc9Vy01RTM8PW4qMUUzfUQ9Vz8hMTohMH1uPQpEfXJldHVybiBufTsKYU1VPWFzeW5jIGZ1bmN0aW9uKG4pe3JldHVybiBhd2FpdCBjbWIobil9OwpuRGo9ZnVuY3Rpb24obil7dmFyIFc9bi5BLmdldFZpZGVvRGF0YSgpLEQ9bi5PJiYhVy5pc0lubGluZVBsYXliYWNrTm9BZDtuLkEuUygiaHRtbDVfZGVmZXJfbW9kdWxlc19vbl9hZHNfb25seSIpJiYhVy5pc0FkKCkmJihEPSExKTtyZXR1cm4gRH07CmcuYzg9ZnVuY3Rpb24obil7VlkobikmJm4uWCgpO25EaihuKSYmKHc5KG4sImNhcHRpb25zIiwhMCksdzkobiwiZW5kc2NyZWVuIiksbi5OKCksdzkobiwiY3JlYXRvcmVuZHNjcmVlbiIsITApKX07CmFHPWZ1bmN0aW9uKG4sVyxEKXtmb3IobGV0IGIgb2YgV0VpKXtsZXQgdj1uLk5pLmdldChiKTt2JiYoRHx8di5oVihXKSkmJihnLkNwKHYpLG4uTmkuZGVsZXRlKGIpKX1uLkEuV0ooIm1vZHVsZXNEZXN0cm95ZWQiLFcpfTsKRHJaPWZ1bmN0aW9uKG4pe3JldHVybiBKZSgoKT0+bi5OaS5nZXQoImFzbWpzIik/P2FNVShuKSl9OwpWTE09ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIlNDUklQVCIpLGs9ITE7Zm9yKGxldCBIPTA7SDx2Lmxlbmd0aDtIKyspe2xldCBBPXZbSF07aWYoQS5zcmM9PT1XfHxBLmdldEF0dHJpYnV0ZSgiZGF0YS1vcmlnaW5hbC1zcmMiKT09PVcpdmFyIGg9QX1ofHwoaD1nLnpGKCJTQ1JJUFQiKSxoLnNldEF0dHJpYnV0ZSgiZGF0YS1vcmlnaW5hbC1zcmMiLFcpLGs9ITApO3ZhciB4PSgpPT57bi5xTigpfHxELmNhbGwobil9LEw9KCk9PntuLnFOKCl8fGIuY2FsbChuKX0sZT1oLm9ubG9hZDsKaC5vbmxvYWQ9SD0+e2cuVDcoeCk7ZSYmZS5hcHBseSh3aW5kb3csW0hdKX07CnZhciBHPWgub25lcnJvcjtoLm9uZXJyb3I9SD0+e2lmKE1hdGgucmFuZG9tKCk8LjAxKXtsZXQgQT1uZXcgZy5ReCgiVW5hYmxlIHRvIGxvYWQgcGxheWVyIG1vZHVsZSIsVyxkb2N1bWVudC5sb2NhdGlvbiYmZG9jdW1lbnQubG9jYXRpb24ub3JpZ2luKTtnLlhqKEEpfWcuVDcoTCk7RyYmRyhIKX07CnZhciByPWgsTj1yLm9ucmVhZHlzdGF0ZWNoYW5nZTtyLm9ucmVhZHlzdGF0ZWNoYW5nZT1IPT57c3dpdGNoKHIucmVhZHlTdGF0ZSl7Y2FzZSAibG9hZGVkIjpjYXNlICJjb21wbGV0ZSI6Zy5UNyh4KX1OJiZOKEgpfTsKayYmKCh2PW4uQS5HKCkuY3NwTm9uY2UpJiZoLnNldEF0dHJpYnV0ZSgibm9uY2UiLHYpLGcuUE0oaCxmdyhXKSksdj1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiSEVBRCIpWzBdfHxkb2N1bWVudC5ib2R5LHYuaW5zZXJ0QmVmb3JlKGgsdi5maXJzdENoaWxkKSxuLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57aC5wYXJlbnROb2RlJiZoLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoaCl9KSl9OwpXYz1mdW5jdGlvbihuLFcsRCl7bi5xTigpO3ZhciBiPW5PKG4pO0Q/KG4uSnw9VyxXJjEmJm4uRC5zdGFydCgpLFcmMiYmbi5PLnN0YXJ0KCksVyYyMDQ4JiZuLmNKLnN0YXJ0KCkpOihuLkomPX5XLFcmMSYmbi5ELnN0b3AoKSxXJjImJm4uTy5zdG9wKCksVyYyMDQ4JiZuLmNKLnN0b3AoKSxXJjUxMiYmbi50dy5zdG9wKCkpO24uSiY1MTImJiEobi5KJjEyOCkmJmcuSmEobi50dyxuLlZRKTtXPW5PKG4pO2IhPT1XJiZuLldKKCJhdXRvaGlkZXVwZGF0ZSIsVyl9OwpibFo9ZnVuY3Rpb24obil7V2Mobiw0LCExKTtuLksmJihuLk4ud0gobi5LKSxuLks9bnVsbCxuLlc9bi5OLk5OKG4udGFyZ2V0LCJtb3VzZW92ZXIiLG4uWjEpKTtuLlcmJihuLk4ud0gobi5XKSxuLlc9bi5OLk5OKG4udGFyZ2V0LCJtb3VzZW92ZXIiLG4uWjEpKX07Cm5PPWZ1bmN0aW9uKG4pe3ZhciBXPW4uSjtuLmFwaS5HKCkuZlImJihXJj0tMTI5KTtuLmFwaS5TKCJ3ZWJfcGxheWVyX2RlZmF1bHRfYXV0b2hpZGUiKSYmKFcmPS01MTMpO3JldHVybiFXfTsKdkQxPWZ1bmN0aW9uKG4sLi4uVyl7dmFyIEQ9bi5hcGkuRygpO2ZvcihsZXQgayBvZiBXKXtpZigha3x8ayBpbnN0YW5jZW9mIGcuVXImJiFrLnZpZGVvSWQpY29udGludWU7dmFyIGI9bi5hcGkubGooKS5nZXRQbGF5ZXJTaXplKCk7dmFyIHY9Zy5IXygpO1c9Yi53aWR0aCp2O3YqPWIuaGVpZ2h0O2lmKFc+MTI4MHx8dj43MjApaWYoYj1rLkdCKCJtYXhyZXNkZWZhdWx0LmpwZyIpKWJyZWFrO2lmKFc+NjQwfHx2PjQ4MClpZihiPWsuR0IoIm1heHJlc2RlZmF1bHQuanBnIikpYnJlYWs7aWYoVz4zMjB8fHY+MTgwKWlmKGI9ay5HQigic2RkZWZhdWx0LmpwZyIpfHxrLkdCKCJocWRlZmF1bHQuanBnIil8fGsuR0IoIm1xZGVmYXVsdC5qcGciKSlicmVhaztpZihiPWsuR0IoImRlZmF1bHQuanBnIikpYnJlYWt9Zy4kNihEKSYmKEQ9bmV3IEltYWdlLEQuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsKCk9Pnt5U2goKX0pLEQuc3JjPWI/YjoiIixuLmFwaS5lRygpLnRpY2soImZ0ciIpKTsKbi5ZLnN0eWxlLmJhY2tncm91bmRJbWFnZT1iP2B1cmwoJHtifSlgOiIifTsKa1cxPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVz0wO1c8bi5rZXlzLmxlbmd0aDtXKyspbi53SChuLmtleXNbV10pO24ua2V5cz1bXX07CmJzPWZ1bmN0aW9uKG4sVyxELGI9ITEsdj0hMSxrLGg9ITApe3Z8fCh2PW4uYXBpLkcoKS5KKTt2YXIgeD1uLmFwaS5nZXRWaWRlb0RhdGEoKTtXPWVCKGcuRHVbV118fCIiLGI/e0NQTjp4LmNsaWVudFBsYXliYWNrTm9uY2V9Ont9KS5zcGxpdCgvXCQoQkVHSU58RU5EKV9MSU5LLyk7Yj1bXTtrJiZiLnB1c2goe1o6ImgyIixPcTprfSk7Yi5wdXNoKFdbMF0pO2gmJmIucHVzaCh7WjoiYnIifSk7Yi5wdXNoKHtaOiJhIix4YTp7aHJlZjpELHRhcmdldDp2PyJfYmxhbmsiOm51bGx9LEp3OiJ5dHAtZXJyb3ItbGluayIsT3E6V1syXX0pO24uaj0hMDtiLnB1c2goV1s0XSk7cmV0dXJue1o6InNwYW4iLFhGOmJ9fTsKdmM9ZnVuY3Rpb24obil7bj1uLnNwbGl0KGgwWik7dmFyIFc9W107Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKz0zKXtsZXQgYj1uW0QrK10uc3BsaXQoIlxuIik7Vy5wdXNoKGJbMF0pO2ZvcihsZXQgdj0xO3Y8Yi5sZW5ndGg7disrKVcucHVzaCh7WjoiYnIifSksVy5wdXNoKGJbdl0pO0Q8bi5sZW5ndGgmJlcucHVzaCh7WjoiYSIseGE6e2hyZWY6bltEXSx0YXJnZXQ6bltEKzFdfSxPcTpuW0QrMl19KX1yZXR1cm57Wjoic3BhbiIsWEY6V319Owp4cnQ9ZnVuY3Rpb24obixXKXt2YXIgRD1uLmVsZW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImEiKTtmb3IobGV0IGI9MDtiPEQubGVuZ3RoO2IrKyl7bGV0IHY9bi5OTihEW2JdLCJjbGljayIsVyk7bi5rZXlzLnB1c2godil9fTsKa0k9ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9TnVtYmVyKFcuZ2V0QXR0cmlidXRlKCJkYXRhLW92ZXJsYXktb3JkZXIiKSl8fDAsaz0wLGg9bnVsbDtmb3IobGV0IHggb2YgRC5jaGlsZHJlbil7aWYoYiYmeC5jbGFzc0xpc3QuY29udGFpbnMoInl0cC1vdmVybGF5LWlubGluZS1jb250YWluZXIiKSl7aD14O2JyZWFrfWlmKHY8KE51bWJlcih4LmdldEF0dHJpYnV0ZSgiZGF0YS1vdmVybGF5LW9yZGVyIikpfHwwKSlicmVhaztrKyt9aD9rSShuLFcsaCwhMSk6Yj8obj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxuLmNsYXNzTGlzdC5hZGQoInl0cC1vdmVybGF5LWlubGluZS1jb250YWluZXIiKSxuLnNldEF0dHJpYnV0ZSgiZGF0YS1vdmVybGF5LW9yZGVyIixgJHt2fWApLGg9bixoLmFwcGVuZENoaWxkKFcpLGcuanAoRCxoLGspKTpnLmpwKEQsVyxrKX07CmUwQz1mdW5jdGlvbihuLFcpe3ZhciBEPXREKFcpLGI9JHAoVyk7Vy5EbCYmbi5BLkpuKCl8fChuLk58fG4uQS5TKCJlbmFibGVfcGFpZF9jb250ZW50X292ZXJsYXlfYnVnZml4Iik/Vy52aWRlb0lkJiZXLnZpZGVvSWQhPT1uLnZpZGVvSWQmJihuLk4/LmplKCksIW4uQS5TKCJlbmFibGVfcGFpZF9jb250ZW50X292ZXJsYXlfYnVnZml4Iil8fEQmJmI/KG4udmlkZW9JZD1XLnZpZGVvSWQsbi5LPSEhYixuLksmJkQmJkxFcihuLGIsRCxXKSk6bi5LPSExKTpEJiZiJiYhbi5BLlMoImVuYWJsZV9wYWlkX2NvbnRlbnRfb3ZlcmxheV9idWdmaXgiKSYmTEVyKG4sYixELFcpKX07CmdEeD1mdW5jdGlvbihuLFcpe24uTiYmKFcuTig4KSYmbi5LPyhuLks9ITEsbi5XP24uVy5zdGFydCgpOm4uaigpKTooVy5OKDIpfHxXLk4oNjQpKSYmbi52aWRlb0lkJiYobi52aWRlb0lkPW51bGwsbi5XJiZuLlcuc3RvcCgpKSl9OwpMRXI9ZnVuY3Rpb24obixXLEQsYil7bi5OJiZuLk4uZGlzcG9zZSgpO24uTj1uZXcgZy5mXyhuLnV5LFcsbik7Zy51KG4sbi5OKTtiPUdlKGIpO1c9Yj8ubmF2aWdhdGlvbkVuZHBvaW50O2I9Yj8uaWNvbj8uaWNvblR5cGU7dmFyIHY9Zy53KFcsZy5Qaik/LnVybDtuLkEuc2V0VHJhY2tpbmdQYXJhbXMobi5lbGVtZW50LFc/LmNsaWNrVHJhY2tpbmdQYXJhbXN8fG51bGwpO1cmJiF2PyhuLmlubmVydHViZUNvbW1hbmQ9Vyx2PSIjISIpOm4uaW5uZXJ0dWJlQ29tbWFuZD1udWxsO24uVi51cGRhdGUoe2hyZWY6dj8/IiMiLHRleHQ6RCxpY29uOmI9PT0iTU9ORVlfSEFORCI/e1o6InN2ZyIseGE6e2ZpbGw6Im5vbmUiLGhlaWdodDoiMTAwJSIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMTAwJSJ9LFhGOlt7WjoicGF0aCIseGE6e2Q6Ik02IDlINVY1VjRINkgxOVY1SDZWOVpNMjEuNzIgMTYuMDRDMjEuNTYgMTYuOCAyMS4xNSAxNy41IDIwLjU1IDE4LjA1QzIwLjQ3IDE4LjEzIDE4LjQyIDIwLjAxIDE0LjAzIDIwLjAxQzEzLjg1IDIwLjAxIDEzLjY3IDIwLjAxIDEzLjQ4IDIwQzExLjMgMTkuOTIgOC41MSAxOS4yMyA1LjQgMThIMlYxMEg1SDZIN1Y2SDIxVjEzSDE2LjcyQzE2LjM3IDEzLjU5IDE1Ljc0IDE0IDE1IDE0SDEyLjdDMTMuMDEgMTQuNDYgMTMuNTYgMTUgMTQuNSAxNUgxNS4wMkMxNi4wNyAxNSAxNy4xIDE0LjY0IDE3LjkyIDEzLjk4QzE4LjgyIDEzLjI2IDIwLjAzIDEzLjIyIDIwLjkxIDEzLjg0QzIxLjU4IDE0LjMyIDIxLjkgMTUuMTkgMjEuNzIgMTYuMDRaTTE1IDEwQzE1IDkuNDUgMTQuNTUgOSAxNCA5QzEzLjQ1IDkgMTMgOS40NSAxMyAxMEgxNVpNMjAgMTFDMTkuNDUgMTEgMTkgMTEuNDUgMTkgMTJIMjBWMTFaTTE5IDdDMTkgNy41NSAxOS40NSA4IDIwIDhWN0gxOVpNOCA4QzguNTUgOCA5IDcuNTUgOSA3SDhWOFpNOCAxMEgxMkMxMiA4LjkgMTIuOSA4IDE0IDhDMTUuMSA4IDE2IDguOSAxNiAxMFYxMC4yOEMxNi41OSAxMC42MyAxNyAxMS4yNiAxNyAxMkgxOEMxOCAxMC45IDE4LjkgMTAgMjAgMTBWOUMxOC45IDkgMTggOC4xIDE4IDdIMTBDMTAgOC4xIDkuMSA5IDggOVYxMFpNNSAxMy41VjExSDNWMTdINVYxMy41Wk0yMC4zMyAxNC42NkMxOS44MSAxNC4yOSAxOS4xIDE0LjMxIDE4LjYgMTQuNzFDMTcuNTUgMTUuNTYgMTYuMjkgMTYgMTUuMDIgMTZIMTQuNUMxMi42MiAxNiAxMS42NyAxNC40NiAxMS40MyAxMy42NEwxMS4yNCAxM0gxNUMxNS41NSAxMyAxNiAxMi41NSAxNiAxMkMxNiAxMS40NSAxNS41NSAxMSAxNSAxMUg2VjEzLjVWMTcuMTZDOC45IDE4LjI5IDExLjUgMTguOTMgMTMuNTIgMTlDMTcuODUgMTkuMTUgMTkuODUgMTcuMzQgMTkuODcgMTcuMzJDMjAuMzMgMTYuOSAyMC42MiAxNi40IDIwLjc0IDE1Ljg0QzIwLjg0IDE1LjM3IDIwLjY4IDE0LjkxIDIwLjMzIDE0LjY2WiIsCmZpbGw6IndoaXRlIn19XX06bnVsbCxjaGV2cm9uOnZ8fG4uaW5uZXJ0dWJlQ29tbWFuZD9nLk9GKCk6bnVsbH0pfTsKWFBpPWZ1bmN0aW9uKG4pe24uVnx8KG4uVj0hMCxuLmFwaS5sb2dWaXNpYmlsaXR5KG4uZWxlbWVudCwhMCkpfTsKcW8yPWZ1bmN0aW9uKG4pe3ZhciBXPW9LKCkmJkV6KCk+PTY3JiYhbi5hcGkuRygpLnR3O249bi5hcGkuRygpLmRpc2FibGVPcmdhbmljVWk7cmV0dXJuIWcudWIoInRpemVuIikmJiFnLldYJiYhVyYmIW59OwpoaD1mdW5jdGlvbihuKXt2YXIgVz0hIW4uVjImJiFYeihuLmFwaSkmJiFuLmt0O3ZhciBEPW4uYXBpLmdldFByZXNlbnRpbmdQbGF5ZXJUeXBlKCk9PT0yLGI9bi5hcGkuRygpO0Q/KGI9VEcobi5hcGkuSjUoKSksVz1XJiZiLmpRKCkpOihEPWIuUygid2ViX3BsYXllcl9pbWF4X3RoZWF0ZXJfbW9kZSIpJiZuLmFwaS5RMCgpJiYhbi5hcGkuaXNJbmxpbmUoKSxXPVcmJihiLnNafHxEfHxuLmFwaS5pc0Z1bGxzY3JlZW4oKXx8Yi5neSkpO24uQTAhPT1XJiYobi5BMD1XLGcuaUgobi5hcGkuZ2V0Um9vdE5vZGUoKSwieXRwLWhpZGUtaW5mby1iYXIiLCFXKSl9OwpHV2I9ZnVuY3Rpb24obixXKXtpZighVylyZXR1cm4hMTt2YXIgRD1uLmFwaS5oNSgpO2lmKEQuSygpJiYoRD1ELmVfKCkpJiZnLkJ4KEQsVykpcmV0dXJuIEQuY29udHJvbHM7Zm9yKEQ9MDtEPG4uSW4ubGVuZ3RoO0QrKylpZihnLkJ4KG4uSW5bRF0sVykpcmV0dXJuITE7Zm9yKGxldCBiIG9mIG4ua1gpaWYoZy5LXyhXLGIpKXJldHVybiExO3JldHVybiBXPT09bi5hcGkuZ2V0Um9vdE5vZGUoKT8hMTohMH07CnRrMT1mdW5jdGlvbihuKXt2YXIgVz1uLmFwaS5nZXRQcmVzZW50aW5nUGxheWVyVHlwZSgpPT09MiYmKG4uYXBpLmxqKCkud0Z8fG4uYXBpLkcoKS5kaXNhYmxlT3JnYW5pY1VpKSYmbi5hcGkuRygpLmomJnhJJiZ2aj49MTE7bj1uLmFwaS5HKCkudHcmJnhJO3JldHVybiEoIVcmJiFuKX07CkxPPWZ1bmN0aW9uKG4sVyl7bi5qSi5MaigpO2lmKG4uYlcmJm4uUCQpbi5QJD0hMTtlbHNlIGlmKCFuLmFwaS5HKCkuc1YmJiFuLmVoKCkpe2xldCBEPW4uYXBpLmdldFBsYXllclN0YXRlT2JqZWN0KCk7RC5OKDIpJiZxcChuLmFwaSl8fG4uc2hvd1BsYXliYWNrSWNvbihEKTtXJiYkck0obixXKT9yZVMobik6IW4uYXBpLkcoKS5SdHx8RC5pc0N1ZWQoKXx8RC5OKDEwMjQpP24uUGIoKTpuLmVOLmlzQWN0aXZlKCk/bi5lTi5zdG9wKCk6bi5lTi5zdGFydCgpfX07CmVzPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIW4uYXBpLmlzSW5saW5lKCkmJiFHV2IobixBTyhXKSkmJmYyKFcpfTsKZ2Y9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5hcGkuZ2V0VmlkZW9EYXRhKCk/Lm11dGVkQXV0b3BsYXkmJlcudGFyZ2V0Py5jbGFzc05hbWU/LmluY2x1ZGVzKCJ5dHAtaW5mby1wYW5lbCIpPyExOmYyKFcpJiZuLmFwaS5pc011dGVkQnlNdXRlZEF1dG9wbGF5KCk/KG4uYXBpLnVuTXV0ZSgpLG4uYXBpLmdldFByZXNlbnRpbmdQbGF5ZXJUeXBlKCk9PT0yJiZuLmFwaS5wbGF5VmlkZW8oKSxXPW4uYXBpLmdldFBsYXllclN0YXRlT2JqZWN0KCksIVcuTig0KXx8Vy5OKDgpfHxXLk4oMil8fG4uUGIoKSwhMCk6ITF9Owokck09ZnVuY3Rpb24obixXKXtpZighbi5hcGkuRygpLlMoIndlYl9wbGF5ZXJfaW52aXNpYmxlX2Z1bGxzY3JlZW5fYnV0dG9uIikpcmV0dXJuITE7dmFyIEQ9bi5hcGkuZ2V0Um9vdE5vZGUoKS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihXLnRhcmdldFRvdWNoZXMmJlcudGFyZ2V0VG91Y2hlcy5sZW5ndGgpe3ZhciBiPVcudGFyZ2V0VG91Y2hlc1swXS5jbGllbnRYO3ZhciB2PVcudGFyZ2V0VG91Y2hlc1swXS5jbGllbnRZfWVsc2UgVy5jbGllbnRYIT09dm9pZCAwJiYoYj1XLmNsaWVudFgsdj1XLmNsaWVudFkpO3JldHVybiBiIT09dm9pZCAwJiZ2IT09dm9pZCAwJiYoVz1iLUQubGVmdCxEPXYtRC50b3Asbj1uLmFwaS5nZXRQbGF5ZXJTaXplKCksRD49bi5oZWlnaHQtNDAmJlc+PW4ud2lkdGgtNDApPyEwOiExfTsKcmVTPWZ1bmN0aW9uKG4pe2lmKG4uYXBpLkcoKS5SdCYmbi5hcGkuZ2V0UHJlc2VudGluZ1BsYXllclR5cGUoKSE9PTMpdHJ5e24uYXBpLnRvZ2dsZUZ1bGxzY3JlZW4oKS5jYXRjaChXPT57c2pTKFcpfSksbi5hcGkuUygid2ViX3BsYXllcl9mdWxsc2NyZWVuX2RvdWJsZV9jbGlja192ZSIpJiZuLmFwaS5sb2dDbGljayhuLmFwaS5saigpLmVsZW1lbnQpfWNhdGNoKFcpe3NqUyhXKX19OwpzalM9ZnVuY3Rpb24obil7U3RyaW5nKG4pLmluY2x1ZGVzKCJmdWxsc2NyZWVuIGVycm9yIik/Zy5HcShuKTpnLlhqKG4pfTsKTl9oPWZ1bmN0aW9uKG4sVyxEKXtuLmFwaS5pc0Z1bGxzY3JlZW4oKT9EPDEtVyYmbi5hcGkudG9nZ2xlRnVsbHNjcmVlbigpOkQ+MStXJiZuLmFwaS50b2dnbGVGdWxsc2NyZWVuKCl9OwpZb0M9ZnVuY3Rpb24oKXtwUGp8fCh3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihYdz8idG91Y2hzdGFydCI6ImNsaWNrIiwoKT0+e2ZvcihsZXQgbj1xSy5sZW5ndGg7bjw0O24rKyl7bGV0IFc9Zy56RigiVklERU8iKTtXLmxvYWQoKTtxSy5wdXNoKG5ldyBnLkdWKFcpKX19LHtjYXB0dXJlOiEwLApwYXNzaXZlOiEwfSkscFBqPSEwKX07CnRoPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PUQuZ2V0VmlkZW9EYXRhKCksaz1XLmdldFZpZGVvRGF0YSgpO2lmKEQuZ2V0UGxheWVyU3RhdGUoKS5pc0Vycm9yKCkpcmV0dXJue21zZzoicGxheWVyLWVycm9yIn07dmFyIGg9ay5XO2lmKFcub3QoKT5iLzFFMysxKXJldHVybnttc2c6ImluLXRoZS1wYXN0In07aWYoay5pc0xpdmVQbGF5YmFjayYmIWlzRmluaXRlKGIpKXJldHVybnttc2c6ImxpdmUtaW5maW5pdGUifTtiPVcuaDUoKTt2YXIgeD1udWxsO2ImJih4PWIuaXNWaWV3KCk/Yi5tZWRpYUVsZW1lbnQuVigpOmIuVigpKTtpZih4JiZ4Lmxlbmd0aD4xMiYmZy5xdSh2KSlyZXR1cm57bXNnOiJwbGF5ZWQtcmFuZ2VzIn07aWYoIXYuVylyZXR1cm4gbnVsbDtpZighaClyZXR1cm57bXNnOiJuby1wdmQtZm9ybWF0cyJ9O2lmKCF2LlcuTigpfHwhaC5OKCkpcmV0dXJue21zZzoibm9uLWRhc2gifTtiPWgudmlkZW9JbmZvc1swXTt4PXYuVy52aWRlb0luZm9zWzBdO24uVEMmJkFKKGspJiYKKGI9Vy5veSgpLHg9RC5veSgpKTtpZighYnx8IXgpcmV0dXJue21zZzoibm8tdmlkZW8taW5mbyJ9O2lmKG4uTyYmKGIuTVcoKXx8eC5NVygpKSlyZXR1cm57bXNnOiJhdjEifTtXPW4uWSYmay5OUCgpJiZWVCgpO2lmKHguY29udGFpbmVyVHlwZSE9PWIuY29udGFpbmVyVHlwZSlpZihXKWsuVSgic2dhcCIse2llcnI6ImNvbnRhaW5lciJ9KTtlbHNlIHJldHVybnttc2c6ImNvbnRhaW5lciJ9O2lmKG4uRCYmIVcmJih4LklCIT09Yi5JQnx8eC5JQj09PSIifHxiLklCPT09IiIpKXJldHVybnttc2c6ImNvZGVjIn07aWYobi5jSiYmeC52aWRlbyYmYi52aWRlbyYmTWF0aC5hYnMoeC52aWRlby53aWR0aC94LnZpZGVvLmhlaWdodC1iLnZpZGVvLndpZHRoL2IudmlkZW8uaGVpZ2h0KT4uMDEpcmV0dXJue21zZzoicmF0aW8ifTtpZihnLnF1KGspJiZnLnF1KHYpKXJldHVybnttc2c6ImNvbnRlbnQtcHJvdGVjdGlvbiJ9O2g9aC5KWzBdO3Y9di5XLkpbMF07RD1oLmF1ZGlvO3ZhciBMPXYuYXVkaW87CmlmKEQuc2FtcGxlUmF0ZSE9PUwuc2FtcGxlUmF0ZSYmIWcub2QpaWYoVylrLlUoInNnYXAiLHtpZXJyOiJzcmF0ZSJ9KTtlbHNlIHJldHVybnttc2c6InNhbXBsZS1yYXRlIixjaTpoLml0YWcsY3I6RC5zYW1wbGVSYXRlLG5pOnYuaXRhZyxucjpMLnNhbXBsZVJhdGV9O3JldHVybihELm51bUNoYW5uZWxzfHwyKSE9PShMLm51bUNoYW5uZWxzfHwyKT97bXNnOiJjaGFubmVsLWNvdW50In06bi50dyYmay5OUCgpJiZiLnZpZGVvLmZwcyE9PXgudmlkZW8uZnBzP3ttc2c6ImZwcyJ9Om51bGx9OwpIbEM9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uZ2V0VmlkZW9EYXRhKCksdj1XLmdldFZpZGVvRGF0YSgpO2lmKCFiLkcoKS5zdXBwb3J0c0dhcGxlc3NTaG9ydHMoKSlyZXR1cm57bnE6ImVudiJ9O2lmKCEoRC5iZCYmIShiLkd1JiYhYi5pc0FkKCl8fHYuR3UmJiF2LmlzQWQoKSl8fEQuViYmKCFiLkd1fHxiLmlzQWQoKSkmJiF2Lkd1fHxELksmJighdi5HdXx8di5pc0FkKCkpJiYhYi5HdXx8Yi52SigpJiZ2LnZKKCkmJiFiLmlzQWQoKXx8IWIuR3UmJiF2Lkd1KSlyZXR1cm57bnE6ImF1dG9wbGF5In07aWYoYi5lbmRTZWNvbmRzPjApcmV0dXJue25xOiJlbmRjciJ9O2lmKCFiLkspcmV0dXJue25xOiJjbGllbnQifTtpZighbi5kVCgpKXJldHVybntucToibm8tZW1wdHkifTtuPXRoKEQsbixXLEluZmluaXR5KTtyZXR1cm4gbiE9bnVsbD97bnE6bi5tc2d9Om51bGx9OwokST1mdW5jdGlvbihuKXtuLkomJm4uTiYmKG4uSi51bnN1YnNjcmliZSgiaW50ZXJuYWx2aWRlb2Zvcm1hdGNoYW5nZSIsbi5YLG4pLG4uTi51bnN1YnNjcmliZSgiZGF0YWxvYWRlZCIsbi5YLG4pKX07CkFldD1mdW5jdGlvbihuKXt2YXIgVz1uZXcgZlloO1cuWT1uLlMoImg1X2dhcGxlc3Nfc3VwcG9ydF90eXBlc19kaWZmIik7Vy50dz0hMTtXLlRDPW4uUygiaHRtbDVfZ2FwbGVzc191c2VfZm9ybWF0X2luZm9fZml4Iik7Vy5PPW4uUygiaHRtbDVfZ2FwbGVzc19kaXNhYmxlX29uX2F2MSIpJiYhbi5TKCJodG1sNV9nYXBsZXNzX2VuYWJsZV9vbl9hdjEiKTtXLkQ9bi5TKCJodG1sNV9nYXBsZXNzX2NoZWNrX2NvZGVjX2RpZmZfc3RyaWN0bHkiKTtXLmJkPW4uUygiaHRtbDVfZ2FwbGVzc19vbl9hZF9hdXRvcGxheSIpO1cuY0o9bi5TKCJodG1sNV9nYXBsZXNzX2Rpc2FibGVfZGlmZl9hc3BlY3RfcmFkaW8iKTtXLlY9bi5TKCJodG1sNV9nYXBsZXNzX2FkX2F1dG9wbGF5X29uX2FkX3RvX3ZpZGVvX29ubHkiKSYmIW4uUygiaHRtbDVfZGlzYWJsZV9sb29wX3JhbmdlX2Zvcl9zaG9ydHNfYWRzIik7Vy5XPW4uUygiaHRtbDVfcHNldWRvZ2FwbGVzc19zaG9ydHNfc2Vla190b19uZXh0X3N0YXJ0Iik7Clcuaj1uLlp0KCkuTi5RUShKZTEpO1cuSz1uLlMoImh0bWw1X2dhcGxlc3NfYWRfYXV0b3BsYXlfb25fdmlkZW9fdG9fYWRfb25seSIpO1cuTj1OdW1iZXIobi5adCgpLk4uUVEoSVlpKSk7Vy5KPWcuZE0obi5leHBlcmltZW50cywiaHRtbDVfc2hvcnRzX2dhcGxlc3NfbmV4dF9idWZmZXJfaW5fc2Vjb25kcyIpPz9XLko7Vy5YPU51bWJlcihuLlp0KCkuTi5RUShTb1MpPz9XLlgpO3JldHVybiBXfTsKcmY9ZnVuY3Rpb24obixXKXtXPD1uLnN0YXR1cy5zdGF0dXN8fChuLnN0YXR1cz17c3RhdHVzOlcsZXJyb3I6bnVsbH0sVz09PTUmJm4uQ1IucmVzb2x2ZSgpKX07Cm1yaj1mdW5jdGlvbihuLFcsRCxiKXtuPW4uaXNWaWV3KCk/bi5tZWRpYUVsZW1lbnQ6bjtyZXR1cm4gbmV3IGcuc2cobixXLEQsYil9OwpLRWg9YXN5bmMgZnVuY3Rpb24obil7aWYobi5xTigpKXJldHVybiBQcm9taXNlLnJlamVjdChFcnJvcihuLnN0YXR1cy5lcnJvcnx8ImRpc3Bvc2VkIikpO24udGltZW91dC5zdGFydCgpO2F3YWl0IG4uQ1I7dmFyIFc9bi5OLmg1KCk7aWYoVy5pc0VuZGVkKCkpcmV0dXJuIG4uS2coImVuZGVkX2luX2ZpbmlzaFRyYW5zaXRpb24iKSxQcm9taXNlLnJlamVjdChFcnJvcihuLnN0YXR1cy5lcnJvcnx8IiIpKTtpZighbi5BYnx8IW42KG4uQWIpKXJldHVybiBuLlYmJm4uTi5VKCJubWMiLHtubXM6ISFuLkFiLG5tcnM6bi5BYj8uVygpfSksbi5LZygibmV4dF9tc2VfY2xvc2VkIiksUHJvbWlzZS5yZWplY3QoRXJyb3Iobi5zdGF0dXMuZXJyb3J8fCIiKSk7aWYobi5KLlV6KCkhPT1uLkFiKXJldHVybiBuLktnKCJuZXh0X21zZV9taXNtYXRjaCIpLFByb21pc2UucmVqZWN0KEVycm9yKG4uc3RhdHVzLmVycm9yfHwiIikpO3ZhciB7SF86RCxSOTpiLEYzOnZ9PW4uSygpO24uTi5jUCghMSwKITApO2lmKG4uVil7dmFyIGs9bi5BYi5OLGg9bi5BYi5KO2suVnUoITApO2guVnUoITApO2lmKGsuaVEoKSl7dmFyIHg9ay5aZygpO2xldCBMPWsuayQuTXIoKTt4JiZ4LnNlZ21lbnRTdGFydFRpbWUrTDxEJiZrLmFib3J0KCl9aC5pUSgpJiYoaz1oLlpnKCkseD1oLmskLk1yKCksayYmay5zZWdtZW50U3RhcnRUaW1lK3g8RCYmaC5hYm9ydCgpKX1uLnBvbGljeS5OPjAmJihuLlZ1KG4uQWIsITApLG4uSi51bCgpKTtoPW1yaihXLEQsdiwhbi5KLmdldFZpZGVvRGF0YSgpLmlzQWQoKSk7bi5KLnNldE1lZGlhRWxlbWVudChoKTsoaz1uLk4uTHAoKSkmJm4uSi5CbihrLkFvLGsud08pO24udHcmJihuLnBvbGljeS5XfHxuLkouc2Vla1RvKG4uSi5nZXRDdXJyZW50VGltZSgpKy4wMDEse0E5OiEwLFpVOjMscWQ6ImdhcGxlc3NfcHNldWRvIn0pLGgucGxheSgpKTtXPVcueXIoKTtXLmNwbj1uLk4uZ2V0VmlkZW9EYXRhKCkuY2xpZW50UGxheWJhY2tOb25jZTtXLnN0PWAke0R9YDtXLmV0PQpgJHt2fWA7bi5KLlUoImdhcGxlc3MiLFcpO24uTi5VKCJnYXBsZXNzVG8iLHtjcG46bi5KLmdldFZpZGVvRGF0YSgpLmNsaWVudFBsYXliYWNrTm9uY2V9KTtXPW4uTi5nZXRQbGF5ZXJUeXBlKCk9PT1uLkouZ2V0UGxheWVyVHlwZSgpO24uTi5OMihiLCEwLCExLFcsbi5KLmdldFZpZGVvRGF0YSgpLmNsaWVudFBsYXliYWNrTm9uY2Usbi5KLmdldFZpZGVvRGF0YSgpLnZpZGVvSWQpO24uSi5OMihuLkouZ2V0Q3VycmVudFRpbWUoKSwhMCwhMCxXLG4uTi5nZXRWaWRlb0RhdGEoKS5jbGllbnRQbGF5YmFja05vbmNlLG4uTi5nZXRWaWRlb0RhdGEoKS52aWRlb0lkKTtuLkouUDIoKTtnLm1LKCgpPT57IW4uSi5nZXRWaWRlb0RhdGEoKS5ZJiZuLkouZ2V0UGxheWVyU3RhdGUoKS5pc09yV2lsbEJlUGxheWluZygpJiZuLkouZTIoKX0pOwpyZihuLDYpO24uZGlzcG9zZSgpO3JldHVybiBQcm9taXNlLnJlc29sdmUoKX07ClBkWj1mdW5jdGlvbihuKXtpZihuLkouZ2V0VmlkZW9EYXRhKCkuVyl7dmFyIFc9bi50Yi5HKCkuUygiaHRtbDVfZ2FwbGVzc19zdXNwZW5kX25leHRfbG9hZGVyIikmJm4uaj09PTE7bi5KLm5tKG4uQWIsVyxuLmo9PT0xJiZnLllOKG4uTi5nZXRWaWRlb0RhdGEoKSkpO3JmKG4sMyk7T2xNKG4pO3ZhciB7Z2Q6RCxUYzpifT1OSyhuKTtELnN1YnNjcmliZSgidXBkYXRlZW5kIixuLmVYLG4pO2Iuc3Vic2NyaWJlKCJ1cGRhdGVlbmQiLG4uZVgsbik7bi5lWChEKTtuLmVYKGIpfX07Ck9sTT1mdW5jdGlvbihuKXtuLk4udW5zdWJzY3JpYmUoImludGVybmFsdmlkZW9kYXRhY2hhbmdlIixuLlgsbik7bi5KLnVuc3Vic2NyaWJlKCJpbnRlcm5hbHZpZGVvZGF0YWNoYW5nZSIsbi5YLG4pO24udGIuRygpLlMoImh0bWw1X2dhcGxlc3NfdXNlX2Zvcm1hdF9pbmZvX2ZpeCIpJiYobi5OLnVuc3Vic2NyaWJlKCJpbnRlcm5hbHZpZGVvZm9ybWF0Y2hhbmdlIixuLlgsbiksbi5KLnVuc3Vic2NyaWJlKCJpbnRlcm5hbHZpZGVvZm9ybWF0Y2hhbmdlIixuLlgsbikpO24uTi51bnN1YnNjcmliZSgibWVkaWFzb3VyY2VhdHRhY2hlZCIsbi5YLG4pO24uSi51bnN1YnNjcmliZSgic3RhdGVjaGFuZ2UiLG4uVEMsbil9OwpOSz1mdW5jdGlvbihuKXtyZXR1cm57Z2Q6bi5XLk4uayQsVGM6bi5XLkouayR9fTsKcE89ZnVuY3Rpb24obixXKXtpZighbilyZXR1cm4hMTt2YXIgRD1uLko7cmV0dXJuIEJSKG4uTj8uWkYoKSxXKSYmQlIoRD8uWkYoKSxXKX07ClpsaT1mdW5jdGlvbihuKXtpZighbilyZXR1cm4hMTt2YXIgVz1uLko7cmV0dXJuIG4uTj8uaVEoKXx8Vz8uaVEoKX07CkVEaj1hc3luYyBmdW5jdGlvbihuKXtpZighbi5xTigpJiZuLlgmJm4uTil7bi5PJiZuLmFwcC5NTigpLmtOKCEwLCExKTt2YXIgVz1udWxsO2lmKG4uVyl0cnl7YXdhaXQgS0VoKG4uVyl9Y2F0Y2goYil7Vz1ifWlmKG4uTiYmKFVydy5jVygidnFzcCIsKCk9PntuLmFwcC5RVChuLk4pfSksbi5OKSl7dmFyIEQ9bi5OLmg1KCk7Cm4uYXBwLkcoKS5TKCJodG1sNV9nYXBsZXNzX3NlZWtfb25fbmVnYXRpdmVfdGltZSIpJiZEJiZELmdldEN1cnJlbnRUaW1lKCk8LS4wMSYmbi5OLnNlZWtUbygwKTtVcncuY1coInZxcHYiLCgpPT57bi5hcHAucGxheVZpZGVvKCl9KTsKVyYmKG4uTj8oVz1XP1cubWVzc2FnZToiZm9yY2VkIixuLko/LlUoImdhcGZ1bGZiayIse3I6V30pLG4uYXBwLkcoKS5adCgpLk4uUVEoeWVpKSYmKG4uTi5nZXRWaWRlb0RhdGEoKS5HUz0hMSksbi5OLk9jKFcpKTpuLko/LlUoImdhcHNwIix7fSkpO1c9bi5YO1lJKG4pO1cmJlcucmVzb2x2ZSgpO1Byb21pc2UucmVzb2x2ZSgpfX19OwpIYz1mdW5jdGlvbihuKXtuLkQmJm4uaiYmbi5ELnJlbW92ZUV2ZW50TGlzdGVuZXIoInRpbWV1cGRhdGUiLG4uaik7bi5qPW51bGw7bi5EPW51bGx9OwpZST1mdW5jdGlvbihuLFc9ITEpe2lmKG4uSil7aWYobi5WKXt2YXIgRD1uLko7bi5hcHAuUkIucmVtb3ZlRXZlbnRMaXN0ZW5lcihnLm95KCJ2cXVldWVkIiksbi5ZKTtELnJlbW92ZUN1ZVJhbmdlKG4uVil9bi5KPW51bGw7bi5WPW51bGx9bi5XJiYobi5XLnN0YXR1cy5zdGF0dXMhPT02JiYoRD1uLlcsRC5zdGF0dXMuc3RhdHVzIT09SW5maW5pdHkmJkQuaiE9PTEmJkQuS2coIkNhbmNlbGVkIikpLG4uVz1udWxsKTtuLlg9bnVsbDtuLk4mJiFXJiZuLk4hPT1uLmFwcC5jWCgpJiZuLk4hPT1uLmFwcC5NTigpJiZuLk4uZGlzcG9zZSgpO24uTiYmVyYmbi5OLm15KCk7bi5OPW51bGw7bi5PPSExfTsKdTd0PWZ1bmN0aW9uKG4sVyxEPSEwKXt2YXIgYj1uLmFwcC5NTigpLHY9Yi5nZXRWaWRlb0RhdGEoKS5pc0xpdmVQbGF5YmFjaz9JbmZpbml0eTpiLlBHKCEwKSoxRTM7Vz52JiYoVz12LTIwMCwhbi5hcHAuRygpLlp0KCkuTi5RUShpbGkpfHxEKSYmKG4uTz0hMCk7RCYmYi5nZXRDdXJyZW50VGltZSgpPj1XLzFFMz9uLlkoKToobi5KPWIsRCYmKEQ9VyxXPW4uSixuLmFwcC5SQi5hZGRFdmVudExpc3RlbmVyKGcub3koInZxdWV1ZWQiKSxuLlkpLEQ9aXNGaW5pdGUoRCl8fEQvMUUzPlcuZ2V0RHVyYXRpb24oKT9EOjB4ODAwMDAwMDAwMDAwMCxuLlY9bmV3IGcubDUoRCwweDgwMDAwMDAwMDAwMDAse25hbWVzcGFjZToidnF1ZXVlZCJ9KSxXLmFkZEN1ZVJhbmdlKG4uVikpKX07CmRyTT1mdW5jdGlvbihuLFcsRCxiPTAsdj0wKXtuLmRUKCl8fChIYyhuKSxZSShuKSk7bi5YPW5ldyBZNjtuLk49Vzt1N3QobixELHY9PT0wKTt2YXIgaz1iLz0xRTMsaD1XLmdldFZpZGVvRGF0YSgpLk47aWYoYiYmaCYmbi5KKXtsZXQgeD1iLEw9MDtXLmdldFZpZGVvRGF0YSgpLmlzTGl2ZVBsYXliYWNrJiYoaz1NYXRoLm1pbihELzFFMyxuLkouUEcoITApKSxMPU1hdGgubWF4KDAsay1uLkouZ2V0Q3VycmVudFRpbWUoKSkseD1NYXRoLm1pbihiLFcuUEcoKStMKSk7az1tOHQoaCx4KXx8YjtrIT09YiYmbi5OLlUoInF2YWxuIix7c3Q6YixhdDprLHJtOkwsY3Q6eH0pfVc9aztiPW4uTjtiLmdldFZpZGVvRGF0YSgpLllaPSEwO2IuZ2V0VmlkZW9EYXRhKCkuSz0hMDtiLmd6KCEwKTtoPXt9O24uSiYmKGg9bi5KLmw1KCksaz1uLkouZ2V0VmlkZW9EYXRhKCkuY2xpZW50UGxheWJhY2tOb25jZSxoPXtjcnQ6KGgqMUUzKS50b0ZpeGVkKCksY3BuOmt9KTtiLlUoInF1ZXVlZCIsaCk7VyE9PQowJiZiLnNlZWtUbyhXKy4wMSx7QTk6ITAsWlU6MyxxZDoidmlkZW9xdWV1ZXJfcXVldWVkIn0pO24uVz1uZXcgb0RiKG4uSyxuLmFwcC5NTigpLG4uTixELG4uYXBwLHYpO0Q9bi5XO0Quc3RhdHVzLnN0YXR1cyE9PUluZmluaXR5JiYocmYoRCwxKSxELk4uc3Vic2NyaWJlKCJpbnRlcm5hbHZpZGVvZGF0YWNoYW5nZSIsRC5YLEQpLEQuSi5zdWJzY3JpYmUoImludGVybmFsdmlkZW9kYXRhY2hhbmdlIixELlgsRCksRC50Yi5HKCkuUygiaHRtbDVfZ2FwbGVzc191c2VfZm9ybWF0X2luZm9fZml4IikmJihELk4uc3Vic2NyaWJlKCJpbnRlcm5hbHZpZGVvZm9ybWF0Y2hhbmdlIixELlgsRCksRC5KLnN1YnNjcmliZSgiaW50ZXJuYWx2aWRlb2Zvcm1hdGNoYW5nZSIsRC5YLEQpKSxELk4uc3Vic2NyaWJlKCJtZWRpYXNvdXJjZWF0dGFjaGVkIixELlgsRCksRC5KLnN1YnNjcmliZSgic3RhdGVjaGFuZ2UiLEQuVEMsRCksRC5OLnN1YnNjcmliZSgibmV3ZWxlbWVudHJlcXVpcmVkIixELlZRLApEKSxELlgoKSk7cmV0dXJuIG4uWH07CmpqeD1mdW5jdGlvbihuLFcpe2lmKG4uYXBwLkcoKS5adCgpLk4uUVEoejBpKSl7dmFyIEQ9bi5hcHAuRygpLlp0KCkuTi5RUShsWWgpO2lmKCEoRDw9MCkpe0hjKG4pO3ZhciBiPW4uYXBwLk1OKCk/Lmg1KCk7YiYmbi5OJiYobi5hcHAuRygpLlp0KCkuTi5RUShUX0MpP24uTi5nZXRWaWRlb0RhdGEoKS5Sbz0hMDpuLk4uZ2V0VmlkZW9EYXRhKCkuR1M9ITAsbi5qPSgpPT57dmFyIHY9Yi5nZXRDdXJyZW50VGltZSgpO3Y+PVcrRC8xRTMmJih2PURhdGUubm93KCktKHYtVykqMUUzLG4uYXBwLmVHKCkudGljaygicGJzIix2KSxIYyhuKSl9LG4uRD1iLGIuYWRkRXZlbnRMaXN0ZW5lcigidGltZXVwZGF0ZSIsbi5qKSl9fX07CkNkaj1mdW5jdGlvbihuLFcsRCl7aWYobi5kVCgpKXJldHVybiJxaWUiO2lmKG4uTj09bnVsbHx8bi5OLnFOKCl8fG4uTi5nZXRWaWRlb0RhdGEoKT09bnVsbClyZXR1cm4icXBkIjtpZihXLnZpZGVvSWQhPT1uLk4uRTEoKSlyZXR1cm4idmlubSI7aWYoKG4uVz8uYmQoKXx8LTEpPD0wKXJldHVybiJpdmQiO2lmKEQhPT0xKXJldHVybiJ1cHQiO249bi5XPy5lJCgpO3JldHVybiBuIT1udWxsP246bnVsbH07CkpoPWZ1bmN0aW9uKG4pe3ZhciBXPSgwLGcuUikoKTtuLmRhdGEuZm9yRWFjaChEPT57RC5leHBpcmU8VyYmZk8obixELCEwKX0pOwpuLmRhdGE9Zy5FTShuLmRhdGEsRD0+IShELmV4cGlyZTxXKSl9OwpJZT1mdW5jdGlvbihuKXtuLk4uc3RvcCgpO3ZhciBXPUluZmluaXR5O2ZvcihsZXQgRCBvZiBuLmRhdGEpRC5leHBpcmU8VyYmKFc9RC5leHBpcmUpO1cmJmlzRmluaXRlKFcpJiYoVz1NYXRoLm1heChXLURhdGUubm93KCksMTAwKSxuLk4uc3RhcnQoVykpfTsKQl9DPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLmRhdGEuZmluZCh2PT52LmtleT09PVcpOwpiJiYoRCo9MUUzLGIuZXhwaXJlPSgwLGcuUikoKStELEllKG4pKX07CnNGPWZ1bmN0aW9uKG4pe0poKG4pO3JldHVybiBuLmRhdGEubWFwKFc9PlcudmFsdWUpfTsKZk89ZnVuY3Rpb24obixXLEQpe0QmJm4uSiYmbi5KKFcudmFsdWUpfTsKRkVaPWZ1bmN0aW9uKG4pe3ZhciBXPW4uTj9bbi5OXTpbXTtmb3IobGV0IEQgb2YgT2JqZWN0LnZhbHVlcyhuLmopKUQuZGlzcG9zZSgpLG4uS3x8ZGVsZXRlIG4uVltELldOKCldO24uaj17fTtuLk49bnVsbDtuLlk9bnVsbDtuLkQuY2xlYXIoKTtTcyhuLFtdLFcpfTsKU3M9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVtuLkpdO24uTiYmYi5wdXNoKG4uTik7bi5hcGkuV0ooInBsYXliYWNrQ2hhbmdlIix7YWN0aXZlOmIuZmlsdGVyKHY9PnYuZ2V0UGxheWVyVHlwZSgpIT09MCkubWFwKHY9Pih7Y3BuOnYuV04oKX0pKSwKc3RhcnRlZDpXLmZpbHRlcih2PT52LmdldFBsYXllclR5cGUoKSE9PTApLm1hcCh2PT4oe2Nwbjp2LldOKCl9KSksCmVuZGVkOkQuZmlsdGVyKHY9PnYuZ2V0UGxheWVyVHlwZSgpIT09MCkubWFwKHY9Pih7Y3BuOnYuV04oKX0pKX0pfTsKd1AxPWZ1bmN0aW9uKG4sVyl7aWYobi5LKXtmb3IobGV0IEQgb2YgT2JqZWN0LnZhbHVlcyhuLlcpKWlmKEQuV04oKT09PVcpcmV0dXJuIEQ7aWYobi5PPy5XTigpPT09VylyZXR1cm4gbi5PO2lmKHZvaWQgMD09PVcpcmV0dXJuIG51bGw7aWYobi5qW1ddKXJldHVybiBuLmpbV107Zm9yKGxldCBEIG9mIHNGKG4uWCkpaWYoRC5XTigpPT09VylyZXR1cm4gRDtyZXR1cm4gbnVsbH1pZihuLmFwaS5HKCkuWnQoKS5OLlFRKGcuQWgpKXJldHVybiBuLlZbV118fG51bGw7Zm9yKGxldCBEIG9mIE9iamVjdC52YWx1ZXMobi5XKSlpZihELldOKCk9PT1XKXJldHVybiBEO3JldHVybiBuLmpbV118fG51bGx9OwpNa009ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9RC5nZXRWaWRlb0RhdGEoKTtpZighdi5saXZlUHJlbG9hZCl7dmFyIGs9KCk9PntpZihuLlguZ2V0KFcpPT09RCl7dmFyIGg9di5nZXRQbGF5ZXJSZXNwb25zZSgpO2gmJihoPWgucmVzcG9uc2VDb250ZXh0Py5jYWNoZUluc3RydWN0aW9uPy5tYXhBZ2VTZWNvbmRzPz9oLnJlc3BvbnNlQ29udGV4dD8ubWF4QWdlU2Vjb25kcz8/dm9pZCAwLGghPT12b2lkIDAmJihoPGImJkQuVSgidHRsZCIse3ByZXY6Yi50b1N0cmluZygpLCJuZXciOmgudG9TdHJpbmcoKX0pLGg9PT0wP24uWC5yZW1vdmUoVywhMCk6Ql9DKG4uWCxXLGgpKSl9fTsKaWYodi5pc0xvYWRlZCgpKWsoKTtlbHNle2xldCBoPSgpPT57aygpO3YudW5zdWJzY3JpYmUoImRhdGFsb2FkZWQiLGgpfTsKdi5zdWJzY3JpYmUoImRhdGFsb2FkZWQiLGgpfX19OwptUj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9W1ddLHY9bi5OP1tuLk5dOltdO24ualtXLldOKCldPVc7bi5LfHwobi5WW1cuV04oKV09Vyk7bi5OPVc7RCYmKG4uWT1XKTtuLkQuc2V0KCIiLFcpO1NzKG4sYix2KX07CmNlYj1mdW5jdGlvbihuKXt2YXIgVz1uLmV4cGVyaW1lbnRzLEQ9Vy5FcS5iaW5kKFcpO0tPPUQoImh0bWw1X3VzZV9hc3luY19zdG9wVmlkZW8iKTtSMGk9RCgiaHRtbDVfcGF1c2VfZm9yX2FzeW5jX3N0b3BWaWRlbyIpO09nPUQoImh0bWw1X25vdF9yZXNldF9tZWRpYV9zb3VyY2UiKXx8RCgiaHRtbDVfbm90X3Jlc2V0X21lZGlhX3NvdXJjZV9ub25fZHJtX3ZvZCIpO0QoImh0bWw1X2xpc3Rlbl9mb3JfYXVkaW9fb3V0cHV0X2NoYW5nZWQiKSYmKHdVTT0hMCk7REg9RCgiaHRtbDVfbm90X3Jlc2V0X21lZGlhX3NvdXJjZSIpfHxEKCJodG1sNV9ub3RfcmVzZXRfbWVkaWFfc291cmNlX25vbl9kcm1fdm9kIik7UWpaPUQoImh0bWw1X25vdF9yZXNldF9tZWRpYV9zb3VyY2UiKXx8RCgiaHRtbDVfbm90X3Jlc2V0X21lZGlhX3NvdXJjZV9ub25fZHJtX3ZvZCIpO1BjPUQoImh0bWw1X3JldGFpbl9zb3VyY2VfYnVmZmVyX2FwcGVuZHNfZm9yX2RlYnVnZ2luZyIpO25WcihEKCJ3ZWJfd2F0Y2hfcGlwIil8fApEKCJ3ZWJfc2hvcnRzX3BpcCIpKTtJdmgoRCgibG9nX2ZvcmVncm91bmRfbm90X2ZvY3VzZWRfYXNfYmFja2dyb3VuZCIpKTtTeXIoRCgid2ViX3BsYXllcl9waXBfbG9nZ2luZ19maXgiKSk7RCgiaHRtbDVfbWVkaWFzdHJlYW1fYXBwbGllc190aW1lc3RhbXBfb2Zmc2V0IikmJihzND0hMCk7bi5XWCgpJiZNRngoKTtFcnJvci5zdGFja1RyYWNlTGltaXQ9NTA7dmFyIGI9Zy5kTShXLCJodG1sNV9pZGxlX3JhdGVfbGltaXRfbXMiKTtiJiZPYmplY3QuZGVmaW5lUHJvcGVydHkod2luZG93LCJyZXF1ZXN0SWRsZUNhbGxiYWNrIix7dmFsdWU6dj0+d2luZG93LnNldFRpbWVvdXQodixiKX0pOwp3Sngobi5XKTthaU0oRCgiaHRtbDVfdXNlX3VtcF9yZXF1ZXN0X3NsaWNlciIpKTtEKCJodG1sNV9kaXNhYmxlX3N0cmVhbWluZ194aHIiKSYmKE5zPSExKTtEKCJodG1sNV9ieXRlcmF0ZV9jb25zdHJhaW50cyIpJiYoaFQ9ITApO0QoImh0bWw1X3VzZV9ub25fYWN0aXZlX2Jyb2FkY2FzdF9mb3JfcG9zdF9saXZlIikmJihadT0hMCk7RCgiaHRtbDVfZW5hYmxlX2VuY3J5cHRlZF9hdjEiKSYmKFBSPSEwKTtXLlp0KCkuTi5RUShWa3cpJiYoRU49ITApO01wQyhnLmRNKG4uZXhwZXJpbWVudHMsImh0bWw1X3N0aWNreV9kdXJhdGlvbl9tb3MiKSl9Owp5UjE9ZnVuY3Rpb24obil7dmFyIFc9e30sRD1uLmV4cGVyaW1lbnRzLncwKCksYj1bXTtuPShrLGgseCk9PntiLnB1c2goU2soaCh4KSxMPT57V1trXT1MfSkpfTsKdmFyIHY9RC5OLlFRKGFZeCk7diYmbigiTWVkaWFTb3VyY2UuRW5hYmxlVXNpbmdNZWRpYVNvdXJjZUJ1ZmZlcmVkUmFuZ2UiLHFScix2PT09MSk7KHY9RC5OLlFRKG5NdykpJiZuKCJIVFRQMyIsR253LHY9PT0xKTsodj1ELk4uUVEoV2t0KSkmJm4oIk1lZGlhU291cmNlLkVuYWJsZVVzaW5nTWVkaWFTb3VyY2VBdHRhY2htZW50TWV0aG9kcyIsdEZ4LHY9PT0xKTsodj1ELk4uUVEoRERaKSkmJm4oIlFVSUMiLCRMQyx2PT09MSk7KHY9RC5OLlFRKGJSdykpJiZuKCJNZWRpYS5QbGF5ZXJDb25maWd1cmF0aW9uLkRlY29kZVRvVGV4dHVyZVByZWZlcnJlZCIsc2d3LHY9PT0xKTsodj1ELk4uUVEodk1TKSkmJm4oIk1lZGlhLkF1ZGlvV3JpdGVEdXJhdGlvbkxvY2FsIixyYzIsTnVtYmVyKHYpKTsodj1ELk4uUVEoazZ3KSkmJm4oIk1lZGlhLkV4cGVyaW1lbnRhbE1heFBlbmRpbmdCeXRlc1BlclBhcnNlIixLWFosTnVtYmVyKHYpKTsodj1ELk4uUVEoaFVpKSkmJm4oIk1lZGlhLkVuYWJsZUZsdXNoRHVyaW5nU2VlayIsCkpjYixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoeERaKSkmJm4oIkRlY29kZXJCdWZmZXIuRW5hYmxlQ29uZmlndXJhYmxlRGVjb21taXRTdHJhdGVneSIsSXl3LE51bWJlcih2KSk7KHY9RC5OLlFRKExrQykpJiZuKCJEZWNvZGVyQnVmZmVyLlJlbGVhc2VNZW1vcnlPbkJhY2tncm91bmQiLFNSdCxOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoZVVVKSkmJm4oIk1lZGlhLkRlY29kZWRBdWRpb0J1ZmZlclBvb2wiLEFjWixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoZ014KSkmJm4oIk1lZGlhLlZpZGVvRnJhbWVJbXBsUG9vbCIsbUwyLE51bWJlcih2KT09PTEpOyh2PUQuTi5RUShYR1UpKSYmbigiTWVkaWEuRW5hYmxlUmVzZXRBdWRpb0RlY29kZXIiLGZ5VSxOdW1iZXIodik9PT0xKTsodj1ELk4uUVEocXhoKSkmJm4oIk1lZGlhLkluY3JlbWVudGFsUGFyc2VMb29rQWhlYWQiLEhGWixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoRzYyKSkmJm4oIk1lZGlhLk1heFNhbXBsZXNQZXJXcml0ZSIsCk9GQyxOdW1iZXIodikpOyh2PUQuTi5RUSh0NWkpKSYmbigiTWVkaWEuVmlkZW9EZWNvZGVySW5pdGlhbFByZXJvbGxDb3VudCIsTjBTLHYpOyh2PUQuTi5RUSgkRDEpKSYmbigiTWVkaWEuTWVkaWFDb2RlY1Jlc2V0RGVsYXlNcyIsUFFyLHYpOyh2PUQuTi5RUShyUmkpKSYmbigiTWVkaWEuVmlkZW9SZW5kZXJlck1pbklucHV0QnVmZmVycyIscE50LHYpOyh2PUQuTi5RUShzd2kpKSYmbigiTWVkaWEuVmlkZW9SZW5kZXJlck1pbkRlY29kZWRGcmFtZXMiLFlSdyx2KTsodj1ELk4uUVEoTmRTKSkmJm4oIk1lZGlhLlVzZUR1YWxUaHJlYWRzRm9yVmlkZW8iLHljMixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEocEcxKSkmJm4oIk1lZGlhLlZpZGVvQnVmZmVyU2l6ZUNsYW1wTWIiLEV1dCx2KTsodj1ELk4uUVEoWXhyKSkmJm4oIk1lZGlhLjcyMHBWaWRlb0J1ZmZlclNpemVDbGFtcE1iIixpRlUsdik7KHY9RC5OLlFRKEhScikpJiZuKCJNZWRpYS5EaXNhYmxlTG93UGVyZm9ybWFuY2VTb2Z0d2FyZURlY29kZSIsClpGdCxOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoZndqKSkmJm4oIk1lZGlhLkVuYWJsZUF2MVN0YXJ0dXBPcHRpbWl6YXRpb24iLFVMMixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoSlIxKSkmJm4oIk1lZGlhLkVuYWJsZUxvd0xhdGVuY3kiLGRMaSxOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoSXd4KSkmJm4oIk1lZGlhLkZvcmNlRGVjb2RlVG9UZXh0dXJlIix1cXQsTnVtYmVyKHYpPT09MSk7KHY9RC5OLlFRKFN4aSkpJiZuKCJNZWRpYS5Gb3JjZUNsZWFyU3VyZmFjZVZpZXciLG91MixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoQVJNKSkmJm4oIk1lZGlhLlNraXBGbHVzaE9uRGVjb2RlclRlYXJkb3duIix6UVMsTnVtYmVyKHYpPT09MSk7KHY9RC5OLlFRKG1EaCkpJiZuKCJNZWRpYS5BbGxvd0F1ZGlvV3JpdGluZ09uUGF1c2UiLGx5MixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoS2tpKSkmJm4oIk1lZGlhLkVuYWJsZVZpZGVvUmVuZGVyZXJWc3BBZGp1c3RtZW50IixUMFUsTnVtYmVyKHYpPT09CjEpOyh2PUQuTi5RUShPUlUpKSYmbigiTWVkaWEuU2tpcFZpZGVvRnJhbWVzT3ZlcjYwRnBzIixqZ2gsTnVtYmVyKHYpPT09MSk7KHY9RC5OLlFRKFBoaikpJiZuKCJNZWRpYS5GbHVzaEF1ZGlvVHJhY2tEdXJpbmdTZWVrIixDUUMsTnVtYmVyKHYpPT09MSk7KHY9RC5OLlFRKFpSeCkpJiZuKCJNZWRpYS5CeXBhc3NNb2pvRm9yTWVkaWEiLEIwaixOdW1iZXIodik9PT0xKTsoRD1ELk4uUVEoVUQyKSkmJm4oIk1lZGlhLklnbm9yZU1lZGlhQ29kZWNDYWxsYmFja3NEdXJpbmdGbHVzaGluZyIsRlgyLE51bWJlcihEKT09PTEpO3JldHVybiBTayhGTngoYiksKCk9PlcpfTsKR0Q9ZnVuY3Rpb24obixXPSExLEQ9MTA0ODU3Nil7dmFyIGI9VWcobik7Yj0xLygobi5LLkxnKCl8fDApKm4ucG9saWN5LkQrMS9iKTt2YXIgdj1uLlMkLkxnKCk7dj12PjA/djoxO3ZhciBrPU1hdGgubWF4KGIsdik7bi5wb2xpY3kuWD4wJiZ2PGImJihrPU1hdGgubWluKG4ucG9saWN5LlgsMSksaz0oMS1rKSpiK2sqdik7aWYoIVcpcmV0dXJuIGs7Vz0xRS05KyRzKG4pO0Q9aypNYXRoLm1pbigxLEQvKGsqVykpO24ucG9saWN5Lkp8fChuPSgobi5ELnBlcmNlbnRpbGUoLjk4KXx8MCktMSkvMixuPU1hdGgubWF4KDAsTWF0aC5taW4oMSxuKSksRCo9MS0uNSpuKTtyZXR1cm4gRH07CiRzPWZ1bmN0aW9uKG4pe3ZhciBXPW4uWS5MZygpK24uVEMuTGcoKXx8MDtXPWlzTmFOKFcpPy41Olc7bi5wb2xpY3kuVDY+PTAmJihXPU1hdGgubWluKFcsbi5wb2xpY3kuVDYpKTtyZXR1cm4gV307CmUwPWZ1bmN0aW9uKG4pe3ZhciBXPXtkZWxheTokcyhuKSxzdGFsbDpuLksuTGcoKXx8MCxieXRlcmF0ZTpVZyhuKSxpbml0Om4uVlF9LEQ9bi5XWzBdO0Quc3RhbXA9TWF0aC5yb3VuZChuLlYvMzZFNSkqMzZFNTtELm5ldD1NYXRoLmNlaWwobi5iZCk7RC5tYXg9bi5pbnRlcnJ1cHRpb25zWzBdfHwwO1cuaW50ZXJydXB0aW9ucz1uLlc7cmV0dXJuIFd9Owp6RD1mdW5jdGlvbihuLFcpe2lmKG4uail7bGV0IEQ9Vy1uLmo7aWYoRDw2RTQpe2lmKEQ+MUUzKXtsZXQgYj1uLmludGVycnVwdGlvbnM7Yi5wdXNoKE1hdGguY2VpbChEKSk7Yi5zb3J0KCh2LGspPT5rLXYpOwpiLmxlbmd0aD4xNiYmYi5wb3AoKX1uLmJkKz1EfX1uLmo9V307CnlTPWZ1bmN0aW9uKG4sVyxEKXtpc05hTihEKXx8KG4udHcrPUQpO2lzTmFOKFcpfHwobi5EdCs9Vyl9OwpCdT1mdW5jdGlvbihuLFcsRCxiPVcpe24uWC5JSShiLEQvVyk7bi5WPSgwLGcuUikoKX07CkVnPWZ1bmN0aW9uKG4sVyxEKXtXPU1hdGgubWF4KFcsbi5KLk4pO24uSy5JSSgxLEQvVyl9Owppcz1mdW5jdGlvbihuLFcsRCxiLHYsaz0hMSl7bi5TJC5JSShXLEQvVyk7bi5WPSgwLGcuUikoKTt2fHxuLkQuSUkoMSxXLWIpO2t8fChuLmo9MCk7bi5jSj4tMSYmKDAsZy5SKSgpLW4uY0o+M0U0JiYoc24oZTAobikpLG4uY0o9KDAsZy5SKSgpLG4uTz0hMCl9OwpUWj1mdW5jdGlvbihuKXtyZXR1cm4oMCxnLlIpKCktbi5WPj00RTN9OwpVZz1mdW5jdGlvbihuKXtuPW4uWC5MZygpO3JldHVybiBuPjA/bjoxfTsKaVJaPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uZXcgRU1NKEQpO24mJihiLlc9ITAsYi5qPS4xKTtELkVxKCJodG1sNV9tZWRpYV90aW1lX3dlaWdodCIpJiYoYi5XPSExKTtXJiYoYi5OPVcvOCk7Yi5KPXA3KCk+PTQ4MDtyZXR1cm4gYn07CnVzPWZ1bmN0aW9uKG4pe24uTi5jbGVhcigpO24uVy5jbGVhcigpO24uSi5jbGVhcigpfTsKdWFVPWZ1bmN0aW9uKG4sVyxEKXtuPW4uSjt2YXIgYj1nLlc0KG4se29hOld9LCh2LGspPT52Lm9hLWsub2EpOwpiPWI8MD8oYisyKSotMTpiO2lmKGI+PTApZm9yKGxldCB2PWI7djw9YisxJiZ2PG4ubGVuZ3RoO3YrKyl7bGV0IGs9blt2XTtpZihXPj1rLm9hLUQmJlc8PWsuZEkrRClyZXR1cm4ga319OwpvTWg9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uTi5nZXQoVyk7Yj8oYi5wdXNoKEQpLGcuYmYoYiwodixrKT0+di5vYS1rLm9hKSk6bi5OLnNldChXLFtEXSl9OwpkRGI9ZnVuY3Rpb24obixXKXt2YXIgRD1bXTtmb3IobGV0IGIgb2Ygbi5KKVcoYil8fEQucHVzaChiKTtpZihuLkIuUygiaHRtbDVfc3N0bV9maXhlcyIpKWZvcihsZXQgYiBvZiBuLkopVyhiKSYmbi5XLmRlbGV0ZShiLmNwbik7bi5KPUR9Owp6VWg9ZnVuY3Rpb24obixXKXt2YXIgRD1uLkouaW5kZXhPZihXKTtEPj0wJiZuLkouc3BsaWNlKEQsMSk7bi5XLmRlbGV0ZShXLmNwbil9Owp0dmk9ZnVuY3Rpb24obixXKXtpZihuLnVLfHxXLmlkZW50aWZpZXImJm4ueXcuaGFzKFcuaWRlbnRpZmllcikpbi5iaih7c3RhcnRub2FkOlcuaWRlbnRpZmllcn0pLGcub2Uobik7ZWxzZSBpZihnLm9NKG4uY0osRD0+RC5pZGVudGlmaWVyPT09Vy5pZGVudGlmaWVyKSluLmJqKHt0aW1lZG91dGNwOjF9KSxuLlkuc3RhcnQoMCk7CmVsc2UgaWYoZy5vTShuLkR0LEQ9PkQuaWRlbnRpZmllcj09PVcuaWRlbnRpZmllcikpbi5iaih7ZmV0Y2hlZGNwOjF9KSxnLm9lKG4pOwplbHNlIGlmKG4uWS5pc0FjdGl2ZSgpKW4uYmooe3JhY2luZ2NwOmAke24uVj8uaWRlbnRpZmllcn1fJHtXLmlkZW50aWZpZXJ9YH0pO2Vsc2V7bi5DdT0obmV3IERhdGUpLmdldFRpbWUoKS8xRTM7bi5iaih7YWRmOjF9KTtsZXQgRD01RTM7RCYmVy5ldmVudD09PSJwcmVkaWN0U3RhcnQiJiYoRC09Vy5OKTtuLnZKPU1hdGgubWF4KEQsMTVFMyk7bi5EPSExO24uWS5zdGFydChuLnZKKTtuLlY9Vzt1cyhuLlRDKTtuLkZGPVtdfX07CmcuSnlpPWZ1bmN0aW9uKG4sVyxELGIsdixrLGgpe3ZhciB4PXY9PT0zLEw9bHdaKG4sVyxELHYsYixoKTtpZighTClyZXR1cm4gZGYobixELHgpLEw9Zy56VihuLEQpPyJ1bmRlYyI6Im5jcCIsbi5iaih7Z3ZwcnA6TCxtdDpXLHNlZzpELHR0OnYsaXRhZzpiLGNlOmh9KSxudWxsO3h8fG4uWXEuc2V0KEQsTCk7aD1MLnZQO3Y9bi5HTShELTEsdixrKT8uQmZ8fCIiO3Y9PT0iIiYmbi5iaih7ZWRzOjF9KTtrPVRkaihuLEwuc3NkYWlBZHNDb25maWcpO3g9bi5ncy5nZXRWaWRlb0RhdGEoKTt4PXguYkJbeC5KPy5jb250YWluZXJUeXBlfHwwXTtMPUwubUYmJkQ+PUwubUY/TC5tRjp2b2lkIDA7dj17YUQ6aD9scyhuLGgpOltdLGFkc0NvbmZpZzprLEJmOnYsREo6TCxvdjpnLk5oKHguc3BsaXQoIjsiKVswXSksZDM6eC5zcGxpdCgiOyIpWzFdfHwiIn07TD17TXk6dn07bi5HQyYmKFc9e2d2cHJwcm86InYiLHNxOkQsbXQ6Vy50b0ZpeGVkKDMpLGl0YWc6YixhY3Buczp2LmFEPy5qb2luKCJfIil8fAoibm9uZSIsYWJpZDpofSxuLmJqKFcpKTtyZXR1cm4gTH07Ck0yPWZ1bmN0aW9uKG4sVyxELGIsdil7Yj1ifHx7cmVhc29uOiJkaXNhYmxlc3NkYWkifTtpZihXJiZEKXtpZighZy5UVihuLFcsRCkpcmV0dXJuITE7Yi5zcT1EfWlmKG4udUspcmV0dXJuITE7bi51Sz0hMDtuLnVmPjAmJihuLnVmPTAsbi51Tj0iIixqcyhuLG4uZ3MuV04oKSwwKSxuLmFwaS5XSigic2VydmVyc3RpdGNoZWR2aWRlb2NoYW5nZSIpKTtuLmdzLmRuKGIsdik7cmV0dXJuITB9Owpqd2o9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uald8fG4uYXBwLk1OKCkuZ2V0UGxheWVyU3RhdGUoKTtDTyhuLCEwKTtuLmdzLnNlZWtUbyhXLEQpO249bi5hcHAuTU4oKTtXPW4uZ2V0UGxheWVyU3RhdGUoKTtiLmlzT3JXaWxsQmVQbGF5aW5nKCkmJiFXLmlzT3JXaWxsQmVQbGF5aW5nKCk/bi5wbGF5VmlkZW8oKTpiLmlzUGF1c2VkKCkmJiFXLmlzUGF1c2VkKCkmJm4ucGF1c2VWaWRlbygpfTsKZy5CYz1mdW5jdGlvbihuKXtuLkdDJiZuLmJqKHthZGY6YDBfJHsobmV3IERhdGUpLmdldFRpbWUoKS8xRTMtbi5DdX1faXNUaW1lb3V0XyR7bi5EfWB9KX07Cmcub2U9ZnVuY3Rpb24obil7bi5EPSExO24uWS5pc0FjdGl2ZSgpJiZnLkJjKG4pO24uWS5zdG9wKCk7bi5SZighMSl9OwpGdz1mdW5jdGlvbihuLFcsRCl7cmV0dXJue3NzdmM6VyxjcG46RD8uY3BufHwiIix2aWQ6RD8udmlkZW9EYXRhLnZpZGVvSWR8fCIiLGN0OihuLmdzLmdldEN1cnJlbnRUaW1lKCl8fDApLnRvRml4ZWQoMyksY210OihuLmdzLm90KCl8fDApLnRvRml4ZWQoMyl9fTsKQ2gxPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gbmV3IGcubDUobixXLHtpZDpELG5hbWVzcGFjZToic2VydmVyc3RpdGNoZWRjdWVyYW5nZSIscHJpb3JpdHk6OX0pfTsKZy53Zj1mdW5jdGlvbihuKXtyZXR1cm57Y3BuOm4uZ3MuV04oKSxkdXJhdGlvbk1zOjAsb2E6MCxwbGF5ZXJUeXBlOjEsZEk6MCx2aWRlb0RhdGE6bi5ncy5nZXRWaWRlb0RhdGEoKSxlcnJvckNvdW50OjAsdlA6IiJ9fTsKTUs9ZnVuY3Rpb24obixXLEQsYil7bi5CLlMoImh0bWw1X3NzZGFpX2xvZ19zc2V2dF9pbl9sb2FkZXJfdGltZXJzIikmJihiPW4uYmQ/MDpNYXRoLnJvdW5kKChiLUQpKjFFMyksbi5ncy5VKCJzc2V2dCIse3RhZzoic3N0bWUiLGFkOlchPT1uLmdzLldOKCksY3BuOlcsc3Q6RC1uLmdzLkgzKCksbGF0ZTpifSkpfTsKZy5RUz1mdW5jdGlvbihuLFcpe24uanx8bi5iZHx8Zy5SZShuLG4udU4pO3ZhciBEPVcucUQsYj1XLnpZO2lmKGIuY3BuPT09bi51TiluLmJqKHtpZ3RyYW5zc2FtZToxLGVudGVyOmIuY3BuLGV4aXQ6RC5jcG59KTtlbHNle3ZhciB2PW4uYmQsaz0hIW4uajtuLmo9IiI7dmFyIGg9Vy5tNyx4PUQucGxheWVyVHlwZT09PTI/RC5vYS8xRTMrRC52aWRlb0RhdGEuR0M6Zy53ZihuKS52aWRlb0RhdGEuR0M7bi5hcGkuUygiaHRtbDVfc3NkYWlfZW5hYmxlX21lZGlhX2VuZF9jdWVfcmFuZ2UiKSYmKGt8fHZ8fEQucGxheWVyVHlwZSE9PTI/KHZ8fGspJiZuLmJqKHttZWNyOjAsc2Vlazp2LHNraXA6a30pOm4uYXBpLk5hKEQuY3BuKSk7aWYoRC5wbGF5ZXJUeXBlPT09MiYmYi5wbGF5ZXJUeXBlPT09MilrP24uYmooe2lndHJhbnNza2lwOjEsZW50ZXI6Yi5jcG4sZXhpdDpELmNwbixzZWVrOnYsc2tpcDpuLmp9KTpnLkJkdChuLEQsYix4LGgsdixrKTtlbHNle24udU49Yi5jcG47anMobixiLmNwbiwKYi5zdGFydFRpbWVTZWNzfHxoKTtXPVcuUXg7aWYoRC5wbGF5ZXJUeXBlPT09MSYmYi5wbGF5ZXJUeXBlPT09Mil7bi5TJD0wO0ZraihuLGIpO3ZhciBMPUZ3KG4sImMyYSIsYik7bi5iaihMKTtuLnVmKyt9ZWxzZSBpZihELnBsYXllclR5cGU9PT0yJiZiLnBsYXllclR5cGU9PT0xKXtuLmFwaS5XSigic2VydmVyc3RpdGNoZWR2aWRlb2NoYW5nZSIpO0w9RncobiwiYTJjIik7bi5iaihMKTtuLnVmPTA7bi5TJD14O0w9RC5jcG47dmFyIGU9bi5TJDtpZihMIT09bi5ncy5XTigpKXtsZXQgRz1uLnR3LmdldChMKTtHP0cuTj1lOm4uYmooe25vcF9lOkx9KX1nLndHMShuLEQudlApfUw9TTVpKG4pO24uZ3MuY00oRCxiLHgsaCx2LGssVyxMKX1nLlJVaShuKX19OwppcD1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgpe3ZhciBMPVdebjtpZigobi0xXjI3KT49biYmKG4rMV4yNCk8bil7dmFyIGU9RFtJW0xeNzg2XV0oSVtMXjgxN10pLEc9MDtlWzBdfHxHKys7bGV0IE49e307Zm9yKDtHPGVbSVs1XV07Rys9MillW0ddJiZFYyg1LExeNjc4NixOLGVbR10sZVtHKzFdKTt2YXIgcj1OfShuXjEzKTwyNiYmbi0yPj0xOCYmKGU9RFtJW0xeNzY5MV1dKElbTF43NzEwXSxMXjc3MDEpLEc9RFtJW0xeNzY5MV1dKElbTF43NzEwXSxlKzEpLGU+MCYmRz4wPyhiW0lbTF43Njg1XV09RFtJW0xeNzY5NF1dKDAsRyksRD1EW0lbTF43Njk0XV0oRysxKSk6KGJbSVtMXjc2ODVdXT1ELEQ9SVtMXjc2OTJdKSxyPVtEXSk7bi0zPj4zfHwocj1iKGssaCx4KSk7bj4+MiY3fHwoRD0oRCViW0lbNV1dK2JbSVs1XV0pJWJbSVs1XV0sYltJWzNdXSgtRClbSVtMXjE3MTZdXSgpW0lbTF4xNjgxXV0oZnVuY3Rpb24oTil7YltJW0xeMTY3MF1dKE4pfSkpOwpyZXR1cm4gcn07CmpzPWZ1bmN0aW9uKG4sVyxEKXtpZihXPT09bi5ncy5XTigpKW1SKG4uYXBwLlZyLG4uZ3MsITEpO2Vsc2V7bGV0IGI9bi50dy5nZXQoVyk7Yj8oVz1iLFcuTj0wLFcuc3RhcnRUaW1lU2Vjcz1ELG1SKG4uYXBwLlZyLGIsITApKTpuLmJqKHtub3BfczpXfSl9fTsKRmtqPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5hcHA7UFQoVlMoRCkpJiZELlZyLldbMl0mJmcuY18obi5sb2dnZXIsMzYwNzE3ODA2LCJTU1RNIGxpbmdlcmluZyBwbGF5YmFjayIpO24uYXBpLlNvKCk7bi5hcGkuV0ooInNlcnZlcnN0aXRjaGVkdmlkZW9jaGFuZ2UiLFcuY3BuLFcuTDMpfTsKY2M9ZnVuY3Rpb24obixXLEQ9MCl7cmV0dXJue0lEOnVhVShuLk4sVyoxRTMsRCoxRTMpLEJFOld9fTsKZy5SZT1mdW5jdGlvbihuLFcpe3ZhciBEPVd8fG4udU4sYj1uLk4uVkUoRCk7Yj8oVz1iLnZpZGVvRGF0YSxEPWIuTDN8fChuLlcuZ2V0KEQpPy5zdGFydD8/MCkvMUUzLG49bi5ncy5nZXRDdXJyZW50VGltZSgpLUQsVy5HQz1uPjA/bjowKTpnLndmKG4pLnZpZGVvRGF0YS5HQz1uLmdzLmdldEN1cnJlbnRUaW1lKCl9OwpnLlF3aT1mdW5jdGlvbihuLFcsRCl7bi5ncy5CbygpO24uZ3Muc2Vla1RvKFcsRCk7bi5ncy5wbGF5VmlkZW8oKX07CkNPPWZ1bmN0aW9uKG4sVyl7bi5MQj1OYU47bi5mQj1udWxsO24uUmEuc3RvcCgpO24uZSQmJlcmJm4uZSQuR18oKTtuLmpXPW51bGw7bi5lJD1udWxsfTsKbko9ZnVuY3Rpb24obil7VjVoKG4pO2Zvcih2YXIgVyBvZiBuLlcudmFsdWVzKCkpVy5zdGFydD49LTEmJlcuZW5kPD1JbmZpbml0eSYmKG4uZ3MucmVtb3ZlQ3VlUmFuZ2UoVyksbi5XLmRlbGV0ZShXLmdldElkKCkpLG4uYmooe3JtQWRDUjoxfSkpO3ZhciB7SUQ6RCxCRTpifT1jYyhuLC0uMDAxKTtEJiYoVz1iKjFFMy1ELm9hLGcuYWUobixELFcsRC5vYStXKSxXPW4uVy5nZXQoRC5jcG4pKSYmKFcuc3RhcnQ9RC5vYSxXLmVuZD1ELm9hK0QuZHVyYXRpb25Ncyk7KHtJRDpXfT1jYyhuLEluZmluaXR5KSk7VyYmbi5KKGBJbnZhbGlkX2NsZWFyRW5kVGltZU1zXyR7SW5maW5pdHl9X3RoYXRfZmFsbHNfZHVyaW5nXyR7YHBsYXliYWNrX2Nwbl8ke1cuY3BufV92aWRlb19pZF8ke1cudmlkZW9EYXRhPy52aWRlb0lkfV9kdXJhdGlvbk1zXyR7Vy5kdXJhdGlvbk1zfV9lbnRlclRpbWVNc18ke1cub2F9X3BhcmVudFJldHVyblRpbWVNc18ke1cuZEl9YH0uX0NoaWxkX3BsYXliYWNrc19jYW5fb25seV9oYXZlX2R1cmF0aW9uX3VwZGF0ZWRfbm90X3RoZWlyX3N0YXJ0LmApfTsKY1JiPWZ1bmN0aW9uKG4pe3VzKG4uVEMpO24uVy5jbGVhcigpO24uTi5jbGVhcigpO24uWXEuY2xlYXIoKTtuLkZGPVtdO24uVj1udWxsO24ueXcuY2xlYXIoKTtuLm51LmNsZWFyKCk7bi5jSj1bXTtuLkR0PVtdO24uczU9W107bi5FNT1bXTtuLlFyLmNsZWFyKCk7bi5NZC5jbGVhcigpO24uVTUuY2xlYXIoKTtuLnlFLmNsZWFyKCk7bi5EPSExO24uUyQ9MDtuLmJkPSExO24uWVo9ITE7bi51Zj0wO24uQ3U9MDtuLlkkPSExO24udUs9ITE7bi5qPSIiO0ZFWihuLmFwcC5Wcik7bVIobi5hcHAuVnIsbi5ncywhMSk7aWYobi5CLlp0KCk/LkooKSlmb3IobGV0IFcgb2Ygbi50dy52YWx1ZXMoKSlXLmRpc3Bvc2UoKTtuLnR3LmNsZWFyKCk7bi5ZLmlzQWN0aXZlKCkmJmcub2Uobil9OwpWNWg9ZnVuY3Rpb24obil7ZERiKG4uTixXPT5XLm9hPj0tMSYmVy5kSTw9SW5maW5pdHkpfTsKZy5hZT1mdW5jdGlvbihuLFcsRCxiKXtXLmR1cmF0aW9uTXM9RDtXLmRJPWI7KGI9bi50dy5nZXQoVy5jcG4pKT9iLmFUKEQvMUUzKTpuLmJqKHtub3BfZDpXLmNwbn0pfTsKZy56Vj1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRCBvZiBuLkZGKWlmKFc+PUQuc3RhcnQmJlc8PUQuZW5kKXJldHVybiEwO3JldHVybiExfTsKZy5UVj1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPW4uWXEuZ2V0KEQpO2lmKCFrKXtpZihrPVdmKG4sVykpcmV0dXJuIGs7Vz1uLkdNKEQtMSxiPz8yKTtpZih2KXJldHVybiBuLmJqKHttaXNzY3VlOnYsc3E6RCx0eXBlOmIscHJldnNzdGF0ZTpXPy5zbCxwcmV2cmVjb3JkOm4uWXEuaGFzKEQtMSl9KSxuLllxLmdldChELTEpO2lmKFc/LnNsPT09MilyZXR1cm4gbi5iaih7YWRuZjoxLHNxOkQsdHlwZTpiLHByZXZyZWNvcmQ6bi5ZcS5oYXMoRC0xKX0pLG4uWXEuZ2V0KEQtMSl9cmV0dXJuIGt9Owpsd1o9ZnVuY3Rpb24obixXLEQsYix2LGspe2lmKCFuLnVLKWlmKGcuelYobixEKSluLmJqKHtnZHU6InVuZGVjIixzZWc6RCxpdGFnOnZ9KTtlbHNlIGlmKFc9Zy5UVihuLFcsRCxiLGspLCFuLmdzLmdldFZpZGVvRGF0YSgpLkRGKCl8fCFXPy5QTylyZXR1cm4gV307CldmPWZ1bmN0aW9uKG4sVyl7Vys9bi5IMygpO2lmKG4uZ3MuZ2V0VmlkZW9EYXRhKCkuREYoKSl7YTp7dmFyIEQ9bi5OO249VyoxRTM7Zm9yKGIgb2YgRC5KKWlmKEQ9Yi5MMz9iLkwzKjFFMzpiLm9hLG4+PWIub2EtMUUzJiZuPD1EK2IuZHVyYXRpb25NcysxRTMpYnJlYWsgYTt2YXIgYj12b2lkIDB9Yj17SUQ6YixCRTpXfX1lbHNlIGI9Y2MobixXKSxiPy5JRHx8KGI9Y2MobixXLDEpKTtyZXR1cm4gYj8uSUR9OwpkZj1mdW5jdGlvbihuLFcsRD0hMSl7aWYoIUQpe2ZvcihsZXQgYiBvZiBuLkZGKXtpZihXPj1iLnN0YXJ0JiZXPD1iLmVuZClyZXR1cm47aWYoVz09PWIuZW5kKzEpe2IuZW5kKz0xO3JldHVybn19bi5GRi5wdXNoKG5ldyBhd1MoVykpfX07ClRkaj1mdW5jdGlvbihuLFc9IiIpe3ZhciBEPWcuZDEoVyl8fHZvaWQgMDtXJiZEfHxuLmJqKHthZGNmZzpXPy5sZW5ndGgsZGNmZzpEPy5sZW5ndGh9KTtyZXR1cm4gRH07CmxzPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9W107bj1uLk4uTi5nZXQoVyk7aWYoIW4pcmV0dXJuW107Zm9yKGxldCBiIG9mIG4pYi5jcG4mJkQucHVzaChiLmNwbik7cmV0dXJuIER9OwpuJE09ZnVuY3Rpb24obixXLEQpe3ZhciBiPSExO2lmKEQ9bi5OLk4uZ2V0KEQpKWZvcihsZXQgdiBvZiBEKXYuZHVyYXRpb25NcyE9PTAmJnYuZEkhPT12Lm9hJiYoRD12LmNwbixXPT09RCYmKGI9ITApLGImJiFuLk1kLmhhcyhEKSYmKG4uYmooe2RlY29yYXRlZEFkOkR9KSxuLk1kLmFkZChEKSkpfTsKdmFyIElhMj1mdW5jdGlvbihuLFcpe3JldHVybiBvU1tJWzEwXV0odGhpcywyLDQ0MzksbixXKX07CldMcj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9MDtuPW4uTi5OLmdldChEKTtpZighbilyZXR1cm4tMTtmb3IobGV0IHYgb2Ygbil7aWYodi5jcG49PT1XKXJldHVybiBiO2IrK31yZXR1cm4tMX07CkRhcj1mdW5jdGlvbihuLFcpe3ZhciBEPTA7bj1uLk4uTi5nZXQoVyk7aWYoIW4pcmV0dXJuIDA7Zm9yKGxldCBiIG9mIG4pYi5kdXJhdGlvbk1zIT09MCYmYi5kSSE9PWIub2EmJkQrKztyZXR1cm4gRH07CmcuYmZ4PWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBvZiBuLlcudmFsdWVzKCkpbi5ncy5yZW1vdmVDdWVSYW5nZShXKTtuLlcuY2xlYXIoKTt1cyhuLlRDKX07Ck01aT1mdW5jdGlvbihuKXt2YXIgVz1BcnJheS5mcm9tKG4uYXBwLlZyLkQudmFsdWVzKCkpLEQ9W10sYj1bXSx2PVtdLGs9W10saD1bXSx4PVtdO2Zvcih2YXIgTCBvZiBXKWlmKFc9bi5OLlZFKEwuV04oKSkpbi5iaih7YXR0YWNoX3RyYW5zX21ldGE6Vy5jcG4saGFzX3ZfbWV0YTpXLnNmPzE6MCxoYXNfYV9tZXRhOlcuWU0/MTowLGhhc19jdHhfbWV0YTpXLmpWPzE6MH0pLFcualYmJkQucHVzaChXLmpWKSxXLnNmJiZiLnB1c2goVy5zZiksVy5ZTSYmYi5wdXNoKFcuWU0pLGsucHVzaChXLmNwbiksaC5wdXNoKFcudmlkZW9EYXRhLnZpZGVvSWR8fCIiKSx4LnB1c2goVy52aWRlb0RhdGEuYWRGb3JtYXR8fFcudmlkZW9EYXRhLkZGKSxXLnNlcmlhbGl6ZWRRb2VDb250ZXh0RGF0YSE9bnVsbCYmdi5wdXNoKFcuc2VyaWFsaXplZFFvZUNvbnRleHREYXRhKTtMPXZvaWQgMDtuLnZYJiYobi5iaih7aGFzX2N0eF9saXN0OkQubGVuZ3RoPzE6MCxoYXNfY2xpcF9saXN0OmIubGVuZ3RoPwoxOjB9KSxMPXtqVjpELHJYOmJ9KTtyZXR1cm57UHc6TCxSUDp7YUQ6ayxhcTpoLGFkRm9ybWF0czp4LHNlcmlhbGl6ZWRRb2VDb250ZXh0RGF0YTp2fX19OwpnLkJkdD1mdW5jdGlvbihuLFcsRCxiLHYsayxoKXtpZihXJiZEKXtuLnVOPUQuY3BuO2pzKG4sRC5jcG4sRC5zdGFydFRpbWVTZWNzfHx2KTtGa2oobixEKTt2YXIgeD1GdyhuLCJhMmEiLEQpO24uYmooeCk7bi51ZisrO3g9TTVpKG4pO24uZ3MuY00oVyxELGJ8fDAsdnx8MCwhIWssISFoLHZvaWQgMCx4KX1lbHNlIG4uYmooe21pc3NwYmtvbmFkdHJhbnM6MSxlbnRlcjpEPy5jcG58fCIiLGV4aXQ6Vz8uY3BufHwiIixzZWVrOmssc2tpcDpofSl9OwpnLlJVaT1mdW5jdGlvbihuKXtuLnlFLmFkZChuLmopO24uaj0iIjtuLmJkPSExfTsKdiRoPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYjtpZihiPW4uZ3MuZ2V0VmlkZW9EYXRhKCkuREYoKSliPShiPW4uTi5WRShXKSkmJmIudlA/KG49bi5OLk4uZ2V0KGI/LnZQKSkmJm4uc2xpY2UoLTEpWzBdLmNwbj09PVc6ITE7cmV0dXJuIGImJkQ9PT0yPzFFMzowfTsKZy53RzE9ZnVuY3Rpb24obixXKXtpZihuLmdzLmdldFZpZGVvRGF0YSgpLkRGKCkpe3ZhciBEPW4uTi5OLmdldChXKTtpZihEKXtmb3IodmFyIGIgb2YgRCl7bi5iaih7cmVtX21ldGE6Yi5jcG59KTtEPW47bGV0IHY9RC5XLmdldChiLmNwbik7RC5XLmRlbGV0ZShiLmNwbik7diYmRC5ncy5yZW1vdmVDdWVSYW5nZSh2KTt6VWgoRC5OLGIpfW4uWXEuY2xlYXIoKTtiPW4uTjtEPWIuTi5nZXQoVyk/P1tdO2ZvcihsZXQgdiBvZiBEKXpVaChiLHYpO2IuTi5kZWxldGUoVyk7KFc9bi5aaC5nZXQoVykpJiZuLlJ0JiZuLmdzLll5KFcpfX19OwpodnI9ZnVuY3Rpb24obixXLEQ9e30pe3ZhciBiPW4uVnx8bi5hcHAuTU4oKS5nZXRQbGF5ZXJTdGF0ZSgpO0RMKG4sITApO1c9aXNGaW5pdGUoVyk/VzpuLk4uTlcoKTt2YXIge0lEOnYsQkU6a309YmwobixXKTtXPXYmJiF2ZihuLHYpfHwhdiYmbi5OIT09bi5hcHAuTU4oKTt2YXIgaD1rKjFFMztoPW4uVyYmbi5XLnN0YXJ0PD1oJiZoPD1uLlcuZW5kOyFXJiZofHxrcihuKTt2P2cua3JaKG4sdixrLEQsYik6eHIobixrLEQsYiwiX2V4ZWN1dGUiKX07CmcuTEo9ZnVuY3Rpb24obixXLEQsYil7bi5OLlUoInRpbWVsaW5lZXJyb3IiLHtlOlcsY3BuOkQ/RDp2b2lkIDAsdmlkZW9JZDpiP2I6dm9pZCAwfSl9OwpnLmVhPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG5ldyBnLmw1KE1hdGgubWF4KDAsbi01RTMpLFc/MHg4MDAwMDAwMDAwMDAwOm4tMSx7bmFtZXNwYWNlOiJjaGlsZHBsYXliYWNrIixwcmlvcml0eTo5fSl9OwpnLnhhaT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Vy5MeDtXLkx4PUQ7dmYobixXKSYmKEQ9bi5hcHAuTU4oKSxiLm9JPT09bi5XJiZrcihuKSxELnJlbW92ZUN1ZVJhbmdlKGIub0kpLEQuYWRkQ3VlUmFuZ2UoVy5MeC5vSSkpfTsKZy5rclo9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz12ZihuLFcpO2lmKCFrKXtXLnBsYXllclZhcnMucHJlZmVyX2dhcGxlc3M9ITA7dmFyIGg9bmV3IGcuVXIobi5CLFcucGxheWVyVmFycyk7aC5LZj1XLktmO24uYXBpLnoyKGgsVy5wbGF5ZXJUeXBlKX1oPW4uYXBwLk1OKCk7a3x8aC5hZGRDdWVSYW5nZShXLkx4Lm9JKTtoLnNlZWtUbyhELHtxZDoiYXBwbGljYXRpb25fdGltZWxpbmVtYW5hZ2VyIiwuLi5ifSk7TEwyKG4sdil9OwpldnQ9ZnVuY3Rpb24obixXLEQsYil7bi5XPWI7Yj1XLktmO3ZhciB2PVcucGxheWVyVmFycyxrPVcucGxheWVyVHlwZTtuLks9Vzt2JiZuLmFwaS5lbnF1ZXVlVmlkZW9CeVBsYXllclZhcnModixrLEQsYil9OwpnJFM9ZnVuY3Rpb24obixXLEQsYil7bi5XPWI7bi5hcGkuV3Aobi5OLEQsVyl9Owprcj1mdW5jdGlvbihuKXtuLks9bnVsbDtuLlc9bnVsbDtuLmFwaS5kVCgpfHxuLmFwaS5jbGVhclF1ZXVlKCl9Owp2Zj1mdW5jdGlvbihuLFcpe249bi5hcHAuTU4oKTtyZXR1cm4hIW4mJm4uZ2V0VmlkZW9EYXRhKCkuS2Y9PT1XLktmfTsKWGVqPWZ1bmN0aW9uKG4sVyl7dmYobixXKXx8Zy5MSihuLCJjaGlsZFBsYXliYWNrSXNOb3RQcmVzZW50aW5nIik7cmV0dXJuIFcuZEk9PT1XLm9hK1cuZHVyYXRpb25Ncz9XLm9hK24uYXBwLk1OKCkuZ2V0Q3VycmVudFRpbWUoKSoxRTM6Vy5kSX07CmJsPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9MDtmb3IobGV0IGIgb2Ygbi5KKXtuPWIub2EvMUUzK0Q7bGV0IHY9bitiLmR1cmF0aW9uTXMvMUUzO2lmKG4+VylicmVhaztpZih2PlcpcmV0dXJue0lEOmIsQkU6Vy1ufTtEPXYtYi5kSS8xRTN9cmV0dXJue0lEOm51bGwsQkU6Vy1EfX07CkRMPWZ1bmN0aW9uKG4sVyl7bi5PPU5hTjtuLkQ9bnVsbDtuLlkuc3RvcCgpO24uWCYmVyYmbi5YLkdfKCk7bi5WPW51bGw7bi5YPW51bGx9Owp4cj1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPW4uTjtrIT09bi5hcHAuTU4oKSYmbi5hcHAuWDkoKTtuLkIuUygiaHRtbDVfc2Ficl9jc2RhaV9zZWVrX2xvZyIpfHwodj0iIik7ay5zZWVrVG8oVyx7cWQ6ImFwcGxpY2F0aW9uX3RpbWVsaW5lbWFuYWdlciIrKHY/PyIiKSwuLi5EfSk7TEwyKG4sYil9OwpMTDI9ZnVuY3Rpb24obixXKXtuPW4uYXBwLk1OKCk7dmFyIEQ9bi5nZXRQbGF5ZXJTdGF0ZSgpO1cuaXNPcldpbGxCZVBsYXlpbmcoKSYmIUQuaXNPcldpbGxCZVBsYXlpbmcoKT9uLnBsYXlWaWRlbygpOlcuaXNQYXVzZWQoKSYmIUQuaXNQYXVzZWQoKSYmbi5wYXVzZVZpZGVvKCl9OwpxZWk9ZnVuY3Rpb24obil7dmFyIFc9bi5KLmZpbmQoRD0+dmYobixEKSk7CmlmKFcpe2xldCBEPW4uYXBwLk1OKCk7a3Iobik7bGV0IGI9bmV3IGcubG0oOCk7Vz1YZWoobixXKS8xRTM7eHIobixXLHt9LGIsIl9mb3JjZSIpO0QuVSgiZm9yY2VQYXJlbnRUcmFuc2l0aW9uIix7Y2hpbGRQbGF5YmFjazoxfSk7bi5OLlUoImZvcmNlUGFyZW50VHJhbnNpdGlvbiIse3BhcmVudFBsYXliYWNrOjF9KX19OwpnLmc1PWZ1bmN0aW9uKG4sVz0tMSxEPUluZmluaXR5KXtmb3IobGV0IFt4LExdb2Ygbi5qKXt2YXIgYj14LHY9TDt2LnFJPj1XJiZ2LnRhcmdldCYmdi50YXJnZXQuZEk8PUQmJihuLk4ucmVtb3ZlQ3VlUmFuZ2UoYiksbi5qLmRlbGV0ZShiKSl9Yj1bXTtmb3IobGV0IHggb2Ygbi5KKXgub2E+PVcmJnguZEk8PUQ/KHY9bix2Lks9PT14JiZrcih2KSx2Zih2LHgpJiZ2LmFwcC5YOSgpKTpiLnB1c2goeCk7bi5KPWI7dmFyIHtJRDprLEJFOmh9PWJsKG4sVy8xRTMpO2smJihXPWgqMUUzLGcuR3IxKG4sayxXLGsuZEk9PT1rLm9hK2suZHVyYXRpb25Ncz9rLm9hK1c6ay5kSSkpOyh7SUQ6V309YmwobixELzFFMykpO1cmJmcuTEoobixgSW52YWxpZCBjbGVhckVuZFRpbWVNcz0ke0R9IHRoYXQgZmFsbHMgZHVyaW5nICR7YHBsYXliYWNrPXt0aW1lbGluZVBsYXliYWNrSWQ9JHtXLktmfSB2aWRlb19pZD0ke1cucGxheWVyVmFycy52aWRlb19pZH0gZHVyYXRpb25Ncz0ke1cuZHVyYXRpb25Nc30gZW50ZXJUaW1lTXM9JHtXLm9hfSBwYXJlbnRSZXR1cm5UaW1lTXM9JHtXLmRJfX1gfS5DaGlsZCBwbGF5YmFja3MgY2FuIG9ubHkgaGF2ZSBkdXJhdGlvbiB1cGRhdGVkIG5vdCB0aGVpciBzdGFydC5gKX07CmcuR3IxPWZ1bmN0aW9uKG4sVyxELGIpe1cuZHVyYXRpb25Ncz1EO1cuZEk9YjtiPXtvSTpnLmVhKEQsITApLHFJOkQsdGFyZ2V0Om51bGx9O2cueGFpKG4sVyxiKTt2ZihuLFcpJiZuLmFwcC5NTigpLmdldEN1cnJlbnRUaW1lKCkqMUUzPkQmJihXPVhlaihuLFcpLzFFMyxEPW4uYXBwLk1OKCkuZ2V0UGxheWVyU3RhdGUoKSx4cihuLFcse30sRCwiX3VwZGF0ZSIpKX07CiRhcj1mdW5jdGlvbihuKXtuJiZuIT09IndlYiImJnRZaS5pbmNsdWRlcyhuKX07CnVScj1mdW5jdGlvbihuLFcpe3JldHVybiBXPyEhbi5OLmdldChXKTohMX07CnJFUz1mdW5jdGlvbihuLFcpe24uZGF0YXNldC52ZXJzaW9uPVd9OwpzOHI9ZnVuY3Rpb24obil7dmFyIFc9bi5hcHAuUkIsRD0oKT0+e24uRU49bmV3IGcuYnIoMCwwLDAsMCk7bi5JMD1uZXcgZy5icigwLDAsMCwwKX0sYj1oPT57aC5nZXRWaWRlb0RhdGEoKSYmbi51cGRhdGVWaWRlb0RhdGEoaC5nZXRWaWRlb0RhdGEoKSl9LHY9KGgseCk9PntuLmYxKGgseCl9LGs9aD0+e24ubkImJlhTKG4pOwpxNyhuKSE9PW4uUDAmJm4ucmVzaXplKCk7bi5hcHAuRygpLlMoIndlYl9lbmFibGVfc21hcnRfem9vbSIpJiZuLm04JiYoaC5zdGF0ZS5pc1BhdXNlZCgpP24ubTgucGF1c2UoKTpoLlhRKDgpJiZuLm04LnBsYXlTdGF0ZT09PSJwYXVzZWQiJiZuLm04LnBsYXkoKSl9OwpXLmFkZEV2ZW50TGlzdGVuZXIoImluaXRpYWxpemluZ21vZGUiLEQpO1cuYWRkRXZlbnRMaXN0ZW5lcigidmlkZW9wbGF5ZXJyZXNldCIsYik7Vy5hZGRFdmVudExpc3RlbmVyKCJ2aWRlb2RhdGFjaGFuZ2UiLHYpO1cuYWRkRXZlbnRMaXN0ZW5lcigicHJlc2VudGluZ3BsYXllcnN0YXRlY2hhbmdlIixrKTtuLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57Vy5yZW1vdmVFdmVudExpc3RlbmVyKCJpbml0aWFsaXppbmdtb2RlIixEKTtXLnJlbW92ZUV2ZW50TGlzdGVuZXIoInZpZGVvcGxheWVycmVzZXQiLGIpO1cucmVtb3ZlRXZlbnRMaXN0ZW5lcigidmlkZW9kYXRhY2hhbmdlIix2KTtXLnJlbW92ZUV2ZW50TGlzdGVuZXIoInByZXNlbnRpbmdwbGF5ZXJzdGF0ZWNoYW5nZSIsayl9KX07ClllaT1mdW5jdGlvbihuKXt2YXIgVz1uLkV6KCksRD0xLGI9ITEsdj1OTncobixXLG4uZ2V0VmlkZW9Bc3BlY3RSYXRpbygpKSxrPW4uYXBwLkcoKSxoPWsuUygiZW5hYmxlX2Rlc2t0b3BfcGxheWVyX3VuZGVybGF5IikseD1GbigpLEw9Zy5kTShrLmV4cGVyaW1lbnRzLCJwbGF5ZXJfdW5kZXJsYXlfbWluX3BsYXllcl93aWR0aCIpO0w9aCYmbi5hSCYmbi5nZXRQbGF5ZXJTaXplKCkud2lkdGg+TDtpZihxNyhuKSl7dmFyIGU9cGVVKG4pO3ZhciBHPWlzTmFOKGUpfHxnLlJnfHxuciYmZy5Hbnx8TDtnLk1MJiYhZy5aWCg2MDEpP2U9di5hc3BlY3RSYXRpbzpHPUd8fGsuY29udHJvbHNUeXBlPT09IjMiO0c/TD8oRz1rLlMoInBsYWNlX3NocnVua2VuX3ZpZGVvX29uX2xlZnRfb2ZfcGxheWVyIik/MTY6bi5nZXRQbGF5ZXJTaXplKCkud2lkdGgtVy53aWR0aC0xNixlPU1hdGgubWF4KChuLmdldFBsYXllclNpemUoKS5oZWlnaHQtVy5oZWlnaHQpLzIsMCksRz1uZXcgZy5icihHLGUsVy53aWR0aCwKVy5oZWlnaHQpLG4ubkIuc3R5bGUuc2V0UHJvcGVydHkoImJvcmRlci1yYWRpdXMiLCIxMnB4IikpOkc9bmV3IGcuYnIoMCwwLFcud2lkdGgsVy5oZWlnaHQpOihEPXYuYXNwZWN0UmF0aW8vZSxHPW5ldyBnLmJyKChXLndpZHRoLXYud2lkdGgvRCkvMiwoVy5oZWlnaHQtdi5oZWlnaHQpLzIsdi53aWR0aC9ELHYuaGVpZ2h0KSxEPT09MSYmZy5HbiYmKGU9Ry53aWR0aC1XLmhlaWdodCplLGU+MCYmKEcud2lkdGgrPWUsRy5oZWlnaHQrPWUpKSk7Zy5pSChuLmVsZW1lbnQsInl0cC1maXQtY292ZXItdmlkZW8iLE1hdGgubWF4KEcud2lkdGgtdi53aWR0aCxHLmhlaWdodC12LmhlaWdodCk8MSk7aWYoeHx8bi5jSSluLm5CLnN0eWxlLmRpc3BsYXk9IiI7bi5QMD0hMH1lbHNle0c9LVcuaGVpZ2h0O2cuTUw/Ryo9d2luZG93LmRldmljZVBpeGVsUmF0aW86Zy5zbSYmKEctPXdpbmRvdy5zY3JlZW4uaGVpZ2h0KTtHPW5ldyBnLmJyKDAsRyxXLndpZHRoLFcuaGVpZ2h0KTtpZih4fHxuLmNJKW4ubkIuc3R5bGUuZGlzcGxheT0KIm5vbmUiO24uUDA9ITF9dlkobi5FTixHKXx8KG4uRU49RyxnLkRmKGspPyhuLm5CLnN0eWxlLnNldFByb3BlcnR5KCJ3aWR0aCIsRy53aWR0aCsicHgiLCJpbXBvcnRhbnQiKSxuLm5CLnN0eWxlLnNldFByb3BlcnR5KCJoZWlnaHQiLEcuaGVpZ2h0KyJweCIsImltcG9ydGFudCIpKTpOdChuLm5CLEcuZ2V0U2l6ZSgpKSxHPW5ldyBnLk1ZKEcubGVmdCxHLnRvcCksYj1uLm5CLHg9TWF0aC5yb3VuZChHLngpLHggaW5zdGFuY2VvZiBnLk1ZPyhrPXgueCx4PXgueSk6KGs9eCx4PU1hdGgucm91bmQoRy55KSksYi5zdHlsZS5sZWZ0PXNqKGssITEpLGIuc3R5bGUudG9wPXNqKHgsITEpLGI9ITApO1c9bmV3IGcuYnIoKFcud2lkdGgtdi53aWR0aCkvMiwoVy5oZWlnaHQtdi5oZWlnaHQpLzIsdi53aWR0aCx2LmhlaWdodCk7dlkobi5JMCxXKXx8KG4uSTA9VyxiPSEwKTtnLmgxKG4ubkIsInRyYW5zZm9ybSIsRD09PTE/IiI6YHNjYWxlWCgke0R9KWApO2gmJkwhPT1uLlp4JiYoTCYmKG4ubkIuYWRkRXZlbnRMaXN0ZW5lcihHQSwKbi5reiksbi5uQi5hZGRFdmVudExpc3RlbmVyKCJ0cmFuc2l0aW9uY2FuY2VsIixuLmt6KSxuLm5CLmNsYXNzTGlzdC5hZGQoZy5Pbi5WSURFT19DT05UQUlORVJfVFJBTlNJVElPTklORykpLG4uWng9TCxuLmFwcC5SQi5XSigicGxheWVyVW5kZXJsYXlWaXNpYmlsaXR5Q2hhbmdlIixuLlp4PyJ0cmFuc2l0aW9uaW5nIjoiaGlkZGVuIikpO3JldHVybiBifTsKWFM9ZnVuY3Rpb24obil7dmFyIFc9bi5hcHAuRygpLmNvbnRyb2xzVHlwZT09PSIzIiYmIW4ud0YmJnE3KG4pJiYhbi5hcHAuc2p8fCExO24ubkIuY29udHJvbHM9VztuLm5CLnRhYkluZGV4PVc/MDotMTtuLmFwcC5HKCkuSiYmKG4ubkIuYXJpYUhpZGRlbj0idHJ1ZSIpO1c/bi5uQi5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1cyIsbi5KdCk6bi5uQi5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsbi5KdCl9OwpwZVU9ZnVuY3Rpb24obil7dmFyIFc9bi5hcHAuTU4oKTtpZihXPVc/Vy5nZXRWaWRlb0RhdGEoKTpudWxsKXtpZihnLkhUKFcpfHxnLmZBKFcpfHxnLkpEKFcpKXJldHVybiAxNi85O2lmKE1zKFcpJiZXLlcuTigpKXJldHVybiBuPVcuVy52aWRlb0luZm9zWzBdLnZpZGVvLHRiKG4ud2lkdGgsbi5oZWlnaHQpfXJldHVybihuPW4ubkIpP3RiKG4udmlkZW9XaWR0aCxuLnZpZGVvSGVpZ2h0KToxNi85fTsKdGI9ZnVuY3Rpb24obixXKXtyZXR1cm4gTWF0aC5hYnMoJHIqVy1uKTwxfHxNYXRoLmFicygkci9uLVcpPDE/JHI6bi9XfTsKTk53PWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PUQsaz10YihXLndpZHRoLFcuaGVpZ2h0KTtuLnJVP3Y9RDxrP0luZmluaXR5OjA6aXNOYU4obi5WUik/aXNOYU4obi5mVCl8fCh2PW4uZlQpOnY9bi5WUjtpc0Zpbml0ZSh2KT92PT09MCYmbi5hcHAuRygpLlp0KCkuTi5RUShIZngpJiYodj1NYXRoLm1pbihELGspKTp2PU1hdGgubWF4KEQsayk7bj12Pms/e3dpZHRoOlcud2lkdGgsaGVpZ2h0Olcud2lkdGgvdixhc3BlY3RSYXRpbzp2fTp2PGs/e3dpZHRoOlcuaGVpZ2h0KnYsaGVpZ2h0OlcuaGVpZ2h0LGFzcGVjdFJhdGlvOnZ9Ont3aWR0aDpXLndpZHRoLGhlaWdodDpXLmhlaWdodCxhc3BlY3RSYXRpbzprfTtifHxpc05hTihEKXx8KEQ+dj9uLndpZHRoPW4uaGVpZ2h0KkQ6RDx2JiYobi5oZWlnaHQ9bi53aWR0aC9EKSxuLmFzcGVjdFJhdGlvPUQpO3JldHVybiBufTsKcTc9ZnVuY3Rpb24obil7aWYobi5hcHAuZ2V0QXBwU3RhdGUoKT09PTEpcmV0dXJuITE7aWYobi5hcHAuZ2V0QXBwU3RhdGUoKT09PTYpcmV0dXJuITA7dmFyIFc9bi5hcHAuTU4oKTtpZighV3x8Vy5KbigpKXJldHVybiExO249bi5hcHAuUkIuZ2V0UGxheWVyU3RhdGVPYmplY3QoKTtXPSFuLk4oMil8fFcmJlcuZ2V0VmlkZW9EYXRhKCkuSzt2YXIgRD1uLk4oMTAyNCk7cmV0dXJuIG4mJlcmJiFEJiYhbi5pc0N1ZWQoKX07CmZHUz1mdW5jdGlvbihuKXtpZihuLmNzbiE9PWcuUnYoKSlpZihuLmNzbj09PSJVTkRFRklORURfQ1NOIiluLmNzbj1nLlJ2KCk7ZWxzZXt2YXIgVz1nLlJ2KCksRD13NCgpO2lmKFcmJkQpe24uY3NuPVc7Zm9yKGxldCBiIG9mIG4uZWxlbWVudHMpe2xldCB2PWIudmlzdWFsRWxlbWVudDt2JiZ2LmlzQ2xpZW50VmUoKSYmVyYmRCYmKGcubCgiY29tYmluZV92ZV9ncmFmdHMiKT9PMyhJZigpLHYsRCk6UFYodWcpKHZvaWQgMCxXLEQsdikpfX1pZihXKWZvcihsZXQgYiBvZiBuLk4pKG49Yi52aXN1YWxFbGVtZW50KSYmbi5pc0NsaWVudFZlKCkmJkZqKFcsbil9fTsKSkViPWFzeW5jIGZ1bmN0aW9uKG4pe2lmKCFuLlk2KXtuLlk2PW4uRChuLlkpO3RyeXtsZXQgRD1Qcm9taXNlLndpdGhSZXNvbHZlcnMoKTt2YXIgVz1zZXRUaW1lb3V0KCgpPT57RC5yZWplY3QoInRpbWVvdXQiKX0sMUU0KTsKbi5ZNi5vbmVycm9yPSgpPT57RC5yZWplY3QoImVycm9yIil9OwpuLlk2Lm9ubWVzc2FnZT0oKT0+e0QucmVzb2x2ZSgpO2NsZWFyVGltZW91dChXKX07CmF3YWl0IEQucHJvbWlzZTtuLlk2Lm9ubWVzc2FnZT1udWxsO24uWTYub25lcnJvcj1udWxsO24uWTYuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsYj0+dm9pZCBuLnJlY2VpdmUoYikpOwpuLlUoIndvcmtlckN0b3IiLHt9KX1jYXRjaChEKXtjbGVhclRpbWVvdXQoVyksbi5ZNj8udGVybWluYXRlKCksbi5ZNi5vbm1lc3NhZ2U9bnVsbCxuLlk2Lm9uZXJyb3I9bnVsbCxuLlk2PXZvaWQgMCxuLlUoIndvcmtlckVyciIse2U6YCR7RH1gfSl9fX07CklHdz1mdW5jdGlvbihuLFcpe2lmKG4uTiYmbi5OLmJ5dGVMZW5ndGg9PT1XKXJldHVybiBuLk47Zm9yKHZhciBEPW5ldyBVaW50OEFycmF5KFcpLGI9MDtXPjA7KXtsZXQgdj1uZXcgVWludDhBcnJheShNYXRoLm1pbihXLDY1NTM2KSk7Y3J5cHRvLmdldFJhbmRvbVZhbHVlcyh2KTtELnNldCh2LGIpO1ctPXYubGVuZ3RoO2IrPXYubGVuZ3RofXJldHVybiBuLk49RH07ClNlMT1mdW5jdGlvbihuLFcpe24uWTYmJihXPUlHdyhuLFcpLFcubGVuZ3RoPjAmJldbMF0rKyxXPXtxTDpwZXJmb3JtYW5jZS5ub3coKSx0eXBlOjEsYTk6e2RhdGE6V319LG4ucmVxdWVzdChXKSl9OwpBRWk9YXN5bmMgZnVuY3Rpb24obil7bi5KIT09dm9pZCAwfHxuLld8fChuLlc9ITAsYXdhaXQgSkViKG4pLG4uVz0hMSxuLlk2JiYoU2UxKG4sbi5LKSxuLko9c2V0SW50ZXJ2YWwoKCk9Pnt2YXIgVz1bMSwyLDMsNF07bi5CQiYmKFcucHVzaCg1KSxuLlgmJlcucHVzaCg2KSk7c3dpdGNoKFdbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKlcubGVuZ3RoKV0pe2Nhc2UgMTpTZTEobixuLmopO2JyZWFrO2Nhc2UgMjpuLlk2JiYoVz17cUw6cGVyZm9ybWFuY2Uubm93KCksdHlwZToyLGx4OntwbGFjZWhvbGRlcjohMH19LG4ucmVxdWVzdChXKSk7YnJlYWs7Y2FzZSAzOlc9bi5NdztuLlk2JiYoVz17cUw6cGVyZm9ybWFuY2Uubm93KCksdHlwZTozLHEwOntNdzpXfX0sbi5yZXF1ZXN0KFcpKTticmVhaztjYXNlIDQ6bi5ZNiYmKFc9e3FMOnBlcmZvcm1hbmNlLm5vdygpLHR5cGU6NCxpc1R5cGVTdXBwb3J0ZWQ6e3BsYWNlaG9sZGVyOiEwfX0sbi5yZXF1ZXN0KFcpKTticmVhaztjYXNlIDU6bi5CQiYmCihXPXtxTDpwZXJmb3JtYW5jZS5ub3coKSx0eXBlOjUseTg6e0JCOm4uQkJ9fSxuLnJlcXVlc3QoVykpO2JyZWFrO2Nhc2UgNjp2YXIgRD1uLmo7Vz1uLlM3O24uWTYmJihEPUlHdyhuLEQpLFc9e3FMOnBlcmZvcm1hbmNlLm5vdygpLHR5cGU6NixKTDp7ZGF0YTpELFM3Old9fSxuLnJlcXVlc3QoVykpfX0sbi5pbnRlcnZhbE1zKSkpfTsKcjU9ZnVuY3Rpb24obixXLEQpe24uc2VuZE1lc3NhZ2Uoe1sxNjFdOjIsWzExNl06VyxbMTM5XTpEfSl9OwpaZnc9YXN5bmMgZnVuY3Rpb24obil7dmFyIFc9bi50Yi5HKCksRD1XLmdldFdlYlBsYXllckNvbnRleHRDb25maWcoKS50cnVzdGVkUGxheWJhY2tXb3JrZXJVcmw7aWYoRD1wdyhEfHxudWxsKSluLlk2PVhNKEQpLG4uTj1uZXcgbWFVKG4uWTYpLG4uWTYuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGI9PntnLlhqKGIuZXJyb3IpfSksbi5ZNi5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixiPT57dmFyIHY9Yi5kYXRhOwpiPXZbMTE4XTt2YXIgaz12WzE4MF07aWYoaylmb3IodmFyIGggb2Yga1sxMjJdKShrPW4uVy5nZXQoaFsxMTldKSkmJktMWihrLGhbMTUxXSk7c3dpdGNoKGJbMTYxXSl7Y2FzZSAxOmxldCB7WzEwM106ZSxbM106R309YlsxN107c3dpdGNoKGUpe2Nhc2UgMTpsZXQgW3IsTl09RztuLnRiLmNsZWFyUXVldWUocixOKTticmVhaztjYXNlIDI6W2JdPUc7bi50Yi5vblBsYXllclJlcXVlc3RTZW50KGIpO2JyZWFrO2Nhc2UgMzpsZXQgW0gsQSx5XT1HO2lmKGI9eT9uLkouZ2V0KHkpOm51bGwpYj1iLmdldFZpZGVvRGF0YSgpLG4udGIuVmEoSCxBLGIpO2JyZWFrO2Nhc2UgNDpsZXQgW1QseixDXT1HO2I9bi5YLmdldCh6KTtpZighYil0aHJvdyBFcnJvcihgVW5rbm93biBtaXJyb3JlZCBDdWVSYW5nZTogJHt6fWApO24udGIuQ0ooVCxiLEMpO2JyZWFrO2Nhc2UgNTpbYl09RzsoYj1uLkouZ2V0KGIpKSYmbi50Yi5ueShiLmdldFZpZGVvRGF0YSgpKTticmVhaztjYXNlIDY6W2JdPUc7KGI9Cm4uSi5nZXQoYikpJiZuLnRiLmZMKGIuZ2V0VmlkZW9EYXRhKCkpO2JyZWFrO2Nhc2UgNzpuLnRiLkdjKCk7YnJlYWs7ZGVmYXVsdDpnLnBiKGUsdm9pZCAwKX1icmVhaztjYXNlIDI6dj1uLk47aD1iWzExNl07Yj1iWzEzOV07az12Lk4uZ2V0KGgpO3RyeXtrJiZrLnJlamVjdChiKX1maW5hbGx5e3YuTi5kZWxldGUoaCl9YnJlYWs7Y2FzZSAzOnY9bi5OO2g9YlsxMTZdO2I9YlsxMzldO2s9di5OLmdldChoKTt0cnl7ayYmay5yZXNvbHZlKGIpfWZpbmFsbHl7di5OLmRlbGV0ZShoKX1icmVhaztjYXNlIDQ6T2Z0KG4sdik7YnJlYWs7Y2FzZSA1OmJyZWFrO2Nhc2UgNjpiPXZbMTE4XTtoPW4uSy5nZXQoYls5OF0pO3Y9dlsxMzhdO2lmKGgpe2xldCB7WzEwM106cixbM106Tn09YlsxN107c3dpdGNoKHIpe2Nhc2UgImxvYWQiOmgubG9hZCguLi5OKTt2JiZyNShuLk4sdik7YnJlYWs7Y2FzZSAicGxheSI6Yj1oLnBsYXkoLi4uTik7diYmc1oobix2LGJ8fHZvaWQgMCk7YnJlYWs7Y2FzZSAicGF1c2UiOmgucGF1c2UoLi4uTiksCnYmJnI1KG4uTix2KX19YnJlYWs7Y2FzZSA3OmlmKHY9bi5LLmdldChiWzk4XSkpe3ZhciB7WzEzNV06eCxbMTY1XTpMfT1iWzE0NF07Yj12LmVfKCk7c3dpdGNoKHgpe2Nhc2UgImN1cnJlbnRUaW1lIjpiLmN1cnJlbnRUaW1lPUw7YnJlYWs7Y2FzZSAiZGVmYXVsdFBsYXliYWNrUmF0ZSI6Yi5kZWZhdWx0UGxheWJhY2tSYXRlPUw7YnJlYWs7Y2FzZSAibG9vcCI6Yi5sb29wPUw7YnJlYWs7Y2FzZSAibXV0ZWQiOmIubXV0ZWQ9TDticmVhaztjYXNlICJwbGF5YmFja1JhdGUiOmIucGxheWJhY2tSYXRlPUw7YnJlYWs7Y2FzZSAic3JjIjpMPyhiPW4uRC5nZXQoTCkpJiZ2LnM1KGIpOih2LlZRKCksdi5lJCgpKTticmVhaztkZWZhdWx0OmcucGIoeCx2b2lkIDApfX1icmVhaztjYXNlIDg6aWYodj1uLlcuZ2V0KGJbMTE5XSkpe2xldCB7dHlwZTpyLGFyZ3M6TixsVDpIfT17dHlwZTpiWzQ3XVsxNjFdLGFyZ3M6Yls0N11bM10sbFQ6Wy4uLmJbNDddWzNdXX07c3dpdGNoKHIpe2Nhc2UgImludGVybmFsYXVkaW9mb3JtYXRjaGFuZ2UiOmI9Ck5bMF1bNV07di52aWRlb0RhdGEuWD1iP09OKGIpOm51bGw7SFswXT12LnZpZGVvRGF0YTticmVhaztjYXNlICJpbnRlcm5hbHZpZGVvZm9ybWF0Y2hhbmdlIjpiPU5bMF1bNDhdO3YudmlkZW9EYXRhLko9Yj9PTihiKTpudWxsO0hbMF09di52aWRlb0RhdGE7YnJlYWs7Y2FzZSAiaW50ZXJuYWx2aWRlb2RhdGFjaGFuZ2UiOmI9TlsxXTtoPSEhdi52aWRlb0RhdGEuZ2V0UGxheWVyUmVzcG9uc2UoKTt6Zih2LnZpZGVvRGF0YSx7cmF3X3BsYXllcl9yZXNwb25zZTpiWzEyNV18fHZvaWQgMH0sIWgsITEpO0hbMV09di52aWRlb0RhdGE7YnJlYWs7Y2FzZSAiaGVhcnRiZWF0cGFyYW1zIjpiPU5bMF07SFswXT17dXJsOmJbMTYyXSxpbnRlcnZhbDpiWzU2XSxyZXRyaWVzOmJbMTQwXX07YnJlYWs7Y2FzZSAibm9uZmF0YWxlcnJvciI6Yj1OWzBdO0hbMF09bmV3IGcuQ2koYls0NV0sYlszOF0sYlsxNDVdKTticmVhaztjYXNlICJzdGF0ZWNoYW5nZSI6Yj1OWzBdO2g9TXdoKGJbMTUxXSk7SFswXT0KbmV3IGcuTjcoaCxNd2goYlsxMTNdKSk7di5wbGF5ZXJTdGF0ZT1oO2JyZWFrO2Nhc2UgInZpZGVvZWxlbWVudGV2ZW50IjpIWzBdPW5ldyBQQlModi5tZWRpYUVsZW1lbnQsTlswXVsxNjFdKX12LmV2ZW50cy5XSihyLC4uLkgpfWJyZWFrO2Nhc2UgOTpuLkQuc2V0KGJbMTAxXSxiWzEwMF0pO2JyZWFrO2RlZmF1bHQ6Zy5wYihiLHZvaWQgMCl9fSksbi5ZNi5wb3N0TWVzc2FnZSh7dHlwZToiQk9PVFNUUkFQIiwKZGF0YTp7aG9zdG5hbWU6d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLGhyZWY6d2luZG93LmxvY2F0aW9uLmhyZWYscHJvdG9jb2w6d2luZG93LmxvY2F0aW9uLnByb3RvY29sLHNlYXJjaDp3aW5kb3cubG9jYXRpb24uc2VhcmNoLHl0Q29uZmlnOntJTk5FUlRVQkVfSE9TVF9PVkVSUklERTp3aW5kb3cubG9jYXRpb24ub3JpZ2luLC4uLmcucWkueXQuY29uZmlnX319fSksbi5zZW5kTWVzc2FnZSh7WzE2MV06MyxbMTc1XTpXLmdldFdlYlBsYXllckNvbnRleHRDb25maWcoKX0pfTsKc1o9ZnVuY3Rpb24obixXLEQpe0Q/RC50aGVuKGI9PntyNShuLk4sVyxiKX0sYj0+e24uTi5zZW5kTWVzc2FnZSh7WzE2MV06MSwKWzExNl06VyxbMTM5XTpifSl9KTpyNShuLk4sVyxudWxsKX07Ck9mdD1mdW5jdGlvbihuLFcpe3ZhciBEPVdbMTE4XTtzd2l0Y2goRFsxMDNdKXtjYXNlIDE6bGV0IFtiLHYsa109RFszXTtEPW4udGIuZFEoYix2LGspOyhXPVdbMTM4XSkmJnNaKG4sVyxEKTticmVhaztjYXNlIDI6bGV0IFtoLHhdPURbM107RD1VYWgoeCxoKTsoVz1XWzEzOF0pJiZzWihuLFcsQWUoU2soRCxMPT4oe1sxNl06Zy5sWihMKSxbMTQ2XToiYzFhImluIEwuUlI/IWcudVouaXNJbml0aWFsaXplZCgpOiExfSkpKSk7CmJyZWFrO2Nhc2UgMzpEPW4udGIueWYoKTsoVz1XWzEzOF0pJiZzWihuLFcsRCk7YnJlYWs7ZGVmYXVsdDpnLnBiKERbMTAzXSx2b2lkIDApfX07CnlFMj1mdW5jdGlvbihuKXt2YXIgVz1uLnRiLkcoKSxEPW4udGIubGooKSxiPW4udGIuaGgoKSx2PUQuZ2V0UGxheWVyU2l6ZSgpO0Q9RC5FeigpO1c9e1syM106bi50Yi5GbigpLFs0NF06e1sxXTpXLlMkLFsxMjRdOlcuQ3UsWzEzMV06Vy55RSxbMTQzXTpXLmpXLFsxNTVdOlcuRVp9LFs1OV06bi50Yi5FOCgpLFs2MV06bi50Yi52MygpLFs2Nl06bi50Yi5pc0Z1bGxzY3JlZW4oKSxbNjddOiExLFs3MF06bi50Yi5qSSgpLFs3MV06bi50Yi5pc0lubGluZSgpLFs3Ml06bi50Yi5CUCgpLFs3M106bi50Yi5pc011dGVkKCksWzc1XTpuLnRiLmlzT3JjaGVzdHJhdGlvbkxlYWRlcigpLFs3N106bi50Yi5BbigpLFs4MF06ITEsWzgyXTohMSxbODNdOm4udGIuU0koKSxbODRdOm4udGIuUTAoKSxbMTA2XTpuLnRiLmlzTXV0ZWQoKSxbMTI2XTp7WzE3OV06di53aWR0aCxbNTNdOnYuaGVpZ2h0fSxbMTMzXTpuLnRiLk1OKCkuSEwoKSxbMTM0XTpuLnRiLk1OKCkuVXUoKSxbMTY2XTp7WzE3OV06RC53aWR0aCwKWzUzXTpELmhlaWdodH0sWzE3MV06YixbMTc0XTpuLnRiLmdldFZvbHVtZSgpfTtiPVtdO2ZvcihsZXQgW2ssaF1vZiBuLlcuZW50cmllcygpKXY9ayxEPWguZ2V0VmlkZW9EYXRhKCksYi5wdXNoKHtbMTE5XTp2LFsxNTFdOntbMTY3XTp7WzI1XTpELlJEfX19KTtuLlkmJk9iamVjdC5hc3NpZ24oVyx7WzY3XTpuLnRiLkhvKCksWzgwXTpuLnRiLmdXKCksWzgyXTpuLnRiLmRUKCl9KTtyZXR1cm57WzJdOlcsWzEyMl06Yn19OwpFJE09ZnVuY3Rpb24obixXKXt2YXIgRD1gbWFpbi5jdWVSYW5nZToke24uTysrfWA7aWYobi5YLmdldChEKSlyZXR1cm4gRDtuLlguc2V0KEQsVyk7bi5qLnNldChXLEQpO3JldHVybiBEfTsKaWZDPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5qLmdldChXKTtpZihEKXJldHVybiBuLmouZGVsZXRlKFcpLG4uWC5kZWxldGUoRCksRH07CktMWj1mdW5jdGlvbihuLFcpe1cmJihPYmplY3QuYXNzaWduKG4uTixXKSxuLmF1ZGlvVHJhY2s9RGMoV1s3XSksbi5YPVhMUyhXWzE0N10pLFc9V1sxNjddKSYmKG4udmlkZW9EYXRhLlR3PVdbMThdLG4udmlkZW9EYXRhLmNhcHRpb25UcmFja3M9V1syMF0ubWFwKEQ9PlZ3KEQpKSxuLnZpZGVvRGF0YS53YT1XWzIxXSxuLnZpZGVvRGF0YS5PJD1XWzE5XSxuLnZpZGVvRGF0YS5HQz1XWzMwXSxuLnZpZGVvRGF0YS52WD1EYyhXWzM1XSksbi52aWRlb0RhdGEuU3c9V1sxNzZdKX07CnU4Yj1hc3luYyBmdW5jdGlvbihuLFcsRCl7Vz17WzEwM106VyxbM106RH07RD1uLmZnLk5lLmdldChuKTtyZXR1cm4gbi5mYSh7WzE2MV06OSxbMTddOlcsWzExOV06RH0pfTsKZy5wSj1mdW5jdGlvbihuLFcsRCl7Vz17WzEwM106VyxbM106RH07RD1uLmZnLk5lLmdldChuKTtuLnNlbmRNZXNzYWdlKHtbMTYxXTo5LFsxN106VyxbMTE5XTpEfSl9OwpZcj1mdW5jdGlvbihuKXt2YXIgVz1bXTtmb3IobGV0IEQ9MDtEPG4ubGVuZ3RoO0QrKylXLnB1c2goe1sxNTBdOm4uc3RhcnQoRCksWzQyXTpuLmVuZChEKX0pO3JldHVybiBXfTsKbyRVPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4uZ2V0VmlkZW9EYXRhKCkuZW5hYmxlU2VydmVyU3RpdGNoZWREYWkmJlc9PT0yPyhuLkIuWnQoKS5OLlFRKEhmKT9uLlZyLk4/LmlzQWQoKT8/ITE6bi5Rdz8uTmQobi5nZXRDdXJyZW50VGltZSgpKSk/bi5pdTotMTpXIT09Mnx8bi5MWSgpP24uaXU6bi5CJH07CnY3PWZ1bmN0aW9uKG4pe3JldHVybiBuLnNqJiZuLmdldFZpZGVvRGF0YSgpLm11dGVkQXV0b3BsYXl9Owp2YXIgbXR4PWZ1bmN0aW9uKG4pe3JldHVybiBYRFtJWzEwXV0odGhpcywxNiw0MDI5LG4pfTsKZko9ZnVuY3Rpb24obixXLEQpe1cmJihXPW4uVkUoe3BsYXllclR5cGU6RH0pLFc9PT1uLmNYKCkmJihXLmdldFZpZGVvRGF0YSgpLlBYPSEwKSl9OwpKYj1mdW5jdGlvbihuLFcsRD0hMCxiLHYsayl7dmFyIGg9bi5WRSh7cGxheWVyVHlwZTp2fSkseD1oLmdldFZpZGVvRGF0YSgpO2guZ2V0UGxheWVyVHlwZSgpPT09MiYmIW4uTFkoaCkmJiF4LmlzU2Vla2FibGV8fGcucEEoeCl8fChoJiZoPT09bi5jWCgpJiZuLkhOJiYhZGF0KG4sVykmJm4uc2V0TG9vcFJhbmdlKG51bGwpLG4uc2Vla1RvKFcsRCxiLHYsaywiX3JlcXVlc3QiKSl9OwpBYj1mdW5jdGlvbihuLFcpe1c9bi5WRSh7cGxheWVyVHlwZTpXfSk7Vz1nLklYKG4sVyk7cmV0dXJuIFNhKG4sVy5QRygpLFcpfTsKUGY9ZnVuY3Rpb24obixXLEQpe24uQi5iTiYmKG4uRl89VyxXLm11dGVkfHxLSihuLCExKSxEJiZuLkIuc3RvcmVVc2VyVm9sdW1lJiYhbi5CLnM1JiYoRD17dm9sdW1lOk1hdGguZmxvb3IoVy52b2x1bWUpLG11dGVkOlcubXV0ZWR9LEQudW5zdG9yYWJsZXx8KGcuUEIoInl0LXBsYXllci12b2x1bWUiLEQpLGcuUEIoInl0LXBsYXllci12b2x1bWUiLEQsMjU5MkUzKSkpLE9aKG4pLEQ9Zy5vZCYmbi5tZWRpYUVsZW1lbnQmJiFuLm1lZGlhRWxlbWVudC5YXygpJiYhbi5tZWRpYUVsZW1lbnQuVEMoKSxuLkIuczUmJiFEfHxnLlZVKG4uUkIsIm9uVm9sdW1lQ2hhbmdlIix7bXV0ZWQ6Vy5tdXRlZCx2b2x1bWU6Vy52b2x1bWUsdW5zdG9yYWJsZTohbi5CLnN0b3JlVXNlclZvbHVtZX0pKX07ClZTPWZ1bmN0aW9uKG4pe3JldHVybiBuLmNYKCkuZ2V0VmlkZW9EYXRhKCl9Owp6djI9ZnVuY3Rpb24obixXPSExKXt2YXIgRD0hMTtuLkIuR0MmJihuLlJCLldKKCJwYWdlVHJhbnNpdGlvbiIpLEQ9ITApO24uc3RvcFZpZGVvKEQsVyl9OwpVWj1mdW5jdGlvbihuLFcsRCxiLHYsayxoKXtXPXtpZDpXLG5hbWVzcGFjZTpoPz8iYXBwYXBpIn07az09PSJjaGFwdGVyIj8oVy5zdHlsZT1aTC5DSEFQVEVSX01BUktFUixXLnZpc2libGU9ITApOmlzTmFOKHYpfHwoaz09PSJhZCI/Vy5zdHlsZT1aTC5BRF9NQVJLRVI6KFcuc3R5bGU9WkwuVElNRV9NQVJLRVIsVy5jb2xvcj12KSxXLnZpc2libGU9ITApO24uWEgoW25ldyBnLmw1KEQqMUUzLGIqMUUzLFcpXSwxKTtyZXR1cm4hMH07CmxHdz1mdW5jdGlvbihuLFcsRD0hMCxiLHYpe3ZhciBrPW4uVkUoe3BsYXllclR5cGU6MX0pLGg9MDtrLmdldFN0cmVhbVRpbWVPZmZzZXQoKSYmIWsuU1coKSYmKGg9ay5nZXRTdHJlYW1UaW1lT2Zmc2V0KCkpO0piKG4sVy1oLEQsYiwxLHYpfTsKajgyPWZ1bmN0aW9uKG4pe2lmKG4uQi5zdG9yZVVzZXJWb2x1bWUpcmV0dXJuIHJQKCk7dmFyIFc9bi5pc0lubGluZSgpfHxuLndlYlBsYXllckNvbnRleHRDb25maWcuY29udGV4dElkPT09IldFQl9QTEFZRVJfQ09OVEVYVF9DT05GSUdfSURfS0VWTEFSX0lOTElORV9QUkVWSUVXIjtyZXR1cm4gbi5adCgpLk4uUVEoVE5DKSYmVz97dm9sdW1lOnJQKCkudm9sdW1lLG11dGVkOm4uQi5tdXRlfTp7dm9sdW1lOjEwMCxtdXRlZDpuLkIubXV0ZX19OwpDQlM9ZnVuY3Rpb24obixXLEQsYix2LGs9ITApe3ZhciBoPW4uaEMoKTtpZighaClyZXR1cm4gayYmbi5nZXRWaWRlb0RhdGEoKS5pc0xpdmVQbGF5YmFjayYmbi5KVi5wdXNoKHtpZDpXLFd1OkQsdHY6Yn0pLCExO2s9aC1uLmdldEN1cnJlbnRUaW1lKCk7cmV0dXJuIFVaKG4sVyxELWssYi1rLHZvaWQgMCx2b2lkIDAsdil9Owp5Wj1mdW5jdGlvbihuLFcpe24ucGxheWxpc3QmJihnLkNwKG4ucGxheWxpc3QpLG4ucGxheWxpc3Q9bnVsbCk7VyYmKG4uWlYmJihXLmZldGNoPTApLG4ucGxheWxpc3Q9bmV3IEJOYihuLkIsVykpfTsKaWw9ZnVuY3Rpb24obixXLEQpe1c9bi5WRSh7cGxheWVyVHlwZTpEfSkuTnAoVyk7RCYmbi5nZXRQcmVzZW50aW5nUGxheWVyVHlwZSgpIT09RHx8RVoobiwiY3VlcmFuZ2VzcmVtb3ZlZCIsVyl9OwpVYWg9ZnVuY3Rpb24obixXKXtyZXR1cm4gSFAobmV3IGcuRkxVKHtwSzpXLGNsaWVudFBsYXliYWNrTm9uY2U6bn0pKX07CndlVT1mdW5jdGlvbihuLFcsRCxiPUluZmluaXR5LHY9MCl7dmFyIGs9bi5NTigpO0Q9RHx8ay5nZXRQbGF5ZXJUeXBlKCk7KGs9dWwobixELFcsITApKXx8KGs9b1gobixELFcsITApKTtXPW4uY1goKTtEPT09MiYmVyYmKEQ9ay5nZXRWaWRlb0RhdGEoKSxXLlV5KEQuY2xpZW50UGxheWJhY2tOb25jZSxELkZGfHwiIixELmJyZWFrVHlwZXx8MCxELllLLEQudmlkZW9JZHx8IiIpKTtuLldwKGssYiwwLHYpfTsKTVlNPWZ1bmN0aW9uKG4pe3ZhciBXPW4ud2ViUGxheWVyQ29udGV4dENvbmZpZy50cnVzdGVkSnNVcmw7cmV0dXJuIFc/cHcoVykudG9TdHJpbmcoKTpuLndlYlBsYXllckNvbnRleHRDb25maWcuanNVcmx9OwpSdlo9ZnVuY3Rpb24obil7dmFyIFc9IiIsRD0iIixiPU1ZTShuKSx2PWcubGYoYiwiY2IiKTt2JiYvXltcdy1dKyQvLnRlc3QodikmJihEPXYpO2IuaW5kZXhPZigiLy8iKT09PTAmJihiPW4uQi5wcm90b2NvbCsiOiIrYik7dj1iLmxhc3RJbmRleE9mKCIvYmFzZS5qcyIpO3YhPT0tMSYmKFc9Yi5zdWJzdHJpbmcoMCx2KzEpKTtpZihiPUVycm9yKCkuc3RhY2spaWYoYj1iLm1hdGNoKC9cKCguKj9cLyhkZWJ1Zy0pP3BsYXllci0uKj8pOlxkKzpcZCtcKS8pKWI9YlsxXSxiLmluY2x1ZGVzKFcpfHxnLkdxKEVycm9yKGBQbGF5ZXIgbW9kdWxlIFVSTCBtaXNtYXRjaDogJHtifSB2cyAke1d9LmApKTtXPW5ldyBnLmQ1KG4uUkIsVyxEKTtqTGooVyx7ZGVzdHJveWVkOigpPT57bi5vbkFwaUNoYW5nZSgpfX0pOwpyZXR1cm4gV307ClE4eD1mdW5jdGlvbihuKXtpZihuLkIuWnQoKS5OLlFRKG5hKSl7bi5tUS50aWNrKCJ3YXNtX3MiKTtsZXQgVz1FZChuLndlYlBsYXllckNvbnRleHRDb25maWcud2FzbU1vZHVsZVVybCx2b2lkIDAsbi5JbC5iaW5kKG4pKTtuLkIuZUI9U2soVyxEPT57bi5tUS50aWNrKEQuaXNBc21qcz8id2FzbV9mYSI6Indhc21fZnciKTtKdShuLkIsRCk7cmV0dXJuIER9LEQ9PntuLm1RLnRpY2soIndhc21fZmVyciIpOwp0aHJvdyBEO30pfWVsc2UgT28obixmdW5jdGlvbigpe3ZhciBXPXRoaXM7CnJldHVybiBmdW5jdGlvbiooKXtXLm1RLnRpY2soIndhc21fcyIpO3ZhciBEPVFZKFcueDYpP2I9PlNrKERyWihXLng2KSx2PT52LmdCKGIpKTp2b2lkIDA7CnRyeXtsZXQgYj1FZChXLndlYlBsYXllckNvbnRleHRDb25maWcud2FzbU1vZHVsZVVybCxELFcuSWwuYmluZChXKSksdj15aWVsZCpQUChiKTtXLm1RLnRpY2sodi5pc0FzbWpzPyJ3YXNtX2ZhIjoid2FzbV9mdyIpO0p1KFcuQix2KX1jYXRjaChiKXtXLm1RLnRpY2soIndhc21fZmVyciIpfX0oKX0pfTsKVll4PWZ1bmN0aW9uKG4pe3ZhciBXPW5ldyBnLlVyKG4uQixuLk5RKTtuLlJCLldKKCJpbml0aWFsdmlkZW9kYXRhY3JlYXRlZCIsVyk7cmV0dXJuIG9YKG4sMSxXLCExKX07CmFHMT1mdW5jdGlvbihuKXt2YXIgVz1uLmNYKCk7Vy5zZXRQbGF5YmFja1JhdGUobi5CLko/MTpjRXIobixOdW1iZXIoZy5aSSgieXQtcGxheWVyLXBsYXliYWNrLXJhdGUiKSl8fDEpKTtXLmgkKG4uWkwsbik7Vy5zbSgpfTsKVzJ3PWZ1bmN0aW9uKG4pe24uamgoKTt2YXIgVz1uLk5RO3pBKG4pO24uZXZlbnRzLk5OKHdpbmRvdywicmVzaXplIixuLkE2KTt2YXIgRD1WUyhuKTtnLlZVKG4uUkIsIm9uVm9sdW1lQ2hhbmdlIixuLkZfKTtpZihXJiZaVChXKSl7bGV0IGI9dkUobi5CKTtiJiYhbi5aViYmKFcuZmV0Y2g9MCk7bGV0IHY9Zy5vNChuLkIpO3YmJiFuLlpWJiYoVy5mZXRjaD0wKTt5WihuLFcpO2cubzQobi5CKSYmbi5tUS50aWNrKCJlcF9wcl9zIik7aWYoIWJ8fG4uWlYpaWYodiYmIW4uWlYpbGwobik7ZWxzZSBpZighRC5PVigpKW4ucGxheWxpc3Qub25SZWFkeSgoKT0+e1RBKG4pfSl9bi5RVChuLmNYKCksITEsITApOwpuLmNYKCkuZ2V0UGxheWVyU3RhdGUoKS5OKDEyOCl8fChXPWhnUyghbi5CLmRldmljZUlzQXVkaW9Pbmx5KSxXPT09ImZtdC5ub25lYXZhaWxhYmxlIj9uLktnKCJodG1sNS5taXNzaW5nYXBpIiwyLCJIVE1MNV9OT19BVkFJTEFCTEVfRk9STUFUU19GQUxMQkFDSyIsIm5vY29kZWNzLjEiKTpXPT09Imh0bWw1Lm1pc3NpbmdhcGkiP24uS2coVywyLCJVTlNVUFBPUlRFRF9ERVZJQ0UiLCJub2NhbnBsYXltZWRpYS4xIik6RCYmRC5PVigpJiZDSihuKSYmKG4uQi5VNXx8bi5CLk1kKT9CZihuKTpELkpHP24uUkIubXV0ZWRBdXRvcGxheSh7ZHVyYXRpb25Nb2RlOkQubXV0ZWRBdXRvcGxheUR1cmF0aW9uTW9kZX0pOmcuWkkoInl0LXBsYXllci1wbGF5YmFjay1vbi1yZWxvYWQiKT8oZy56VSgiZW1iZWRzSXRwUGxheWVkT25SZWxvYWQiLHtwbGF5ZWRPblJlbG9hZDohMCxpc0xvZ2dlZEluOiEhbi5CLlRDfSksZy5QQigieXQtcGxheWVyLXBsYXliYWNrLW9uLXJlbG9hZCIsITEpLEJmKG4pKToKbi5CLlk9PT0ibGVhbmJhY2sifHxuNWoobiksZy5lTShuLkIpfHxnLnNkKG4uQik/KGcuY0IoZy5EeSgpLCgpPT57RlMobil9KSxnLmNCKGcuRHkoKSwoKT0+e3g1KCl9KSk6KEZTKG4pLHg1KCkpKX07CkRlYj1mdW5jdGlvbihuKXt2YXIgVz1EPT57RC5zdGFjayYmRC5zdGFjay5pbmRleE9mKCJwbGF5ZXIiKSE9PS0xJiZuLk1OKCkuVWUoRCl9OwpTaS5zdWJzY3JpYmUoImhhbmRsZUVycm9yIixXKTtLdy5wdXNoKFcpO3JldHVybigpPT57U2kudW5zdWJzY3JpYmUoImhhbmRsZUVycm9yIixXKTt2YXIgRD1Ldy5pbmRleE9mKFcpO0QhPT0tMSYmS3cuc3BsaWNlKEQsMSl9fTsKb1g9ZnVuY3Rpb24obixXLEQsYix2KXtpZihuLmZnJiZELk9WKCkpbj1uZXcgZy53NShuLkIsbi5mZyxXLEQpO2Vsc2V7bGV0IGs9bi5tUTtXPT09MiYmKGs9bmV3IGJjUyhuLkIpKTtXPW5ldyBnLk03KG4sbi5CLFcsayxuLnRlbXBsYXRlLG4udmlzaWJpbGl0eSxuLmlqLEQsdixuLmRoLG4uaTcpO24uQi5adCgpLk4uUVEodjVpKSYmbi5uVChELmNsaWVudFBsYXliYWNrTm9uY2UpO249bmV3IGcuUlgoVyl9YiYmbi5zbSgpO3JldHVybiBufTsKY0VyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5SQi5nZXRBdmFpbGFibGVQbGF5YmFja1JhdGVzKCk7Vz1OdW1iZXIoVy50b0ZpeGVkKDIpKTtuPURbMF07RD1EW0QubGVuZ3RoLTFdO1c8PW4/Vz1uOlc+PUQ/Vz1EOihuPU1hdGguZmxvb3IoVyoxMDArLjAwMSklNSxuIT09MCYmKFctPW4qLjAxLFc9TWF0aC5mbG9vcihXKjEwMCsuMDAxKS8xMDApKTtyZXR1cm4gV307ClZaPWZ1bmN0aW9uKG4pe1FaKG4pO24uc2V0TG9vcFZpZGVvKCExKTtuLnNldExvb3BSYW5nZShudWxsKTtuLlJCLldKKCJsZWdhY3lhZHRyYWNraW5ncGluZ3Jlc2V0Iik7bi5hbD17fTtuLkpWPVtdO1pCaihuLm1RKTtpZihuLlF3KXt2YXIgVz1uLlF3LEQ9bi5jWCgpO0QuZ2V0UGxheWVyVHlwZSgpO0NPKFcsITEpO25KKFcpO2NSYihXKTtXLmdzPUR9Vz1uLnNVO249bi5jWCgpO24uZ2V0UGxheWVyVHlwZSgpIT09MSYmZy5MSihXLCJpbnZhbGlkUGFyZW50VmlkZW9QbGF5ZXJUeXBlIik7REwoVywhMSk7Zy5nNShXKTtXLk49bn07Cmswaj1mdW5jdGlvbihuKXt2YXIgVz1uLm1lZGlhRWxlbWVudDt6aSgpP24ua1YuTk4oVywid2Via2l0cHJlc2VudGF0aW9ubW9kZWNoYW5nZWQiLG4udFcpOndpbmRvdy5kb2N1bWVudC5waWN0dXJlSW5QaWN0dXJlRW5hYmxlZCYmKG4ua1YuTk4oVywiZW50ZXJwaWN0dXJlaW5waWN0dXJlIiwoKT0+e24ucEwoITApfSksbi5rVi5OTihXLCJsZWF2ZXBpY3R1cmVpbnBpY3R1cmUiLCgpPT57bi5wTCghMSl9KSk7Cnc4JiYobi5rVi5OTihXLCJ3ZWJraXRiZWdpbmZ1bGxzY3JlZW4iLCgpPT57bi5GTygzKX0pLG4ua1YuTk4oVywid2Via2l0ZW5kZnVsbHNjcmVlbiIsKCk9PntuLkZPKDApfSkpfTsKekE9ZnVuY3Rpb24obil7bi5tZWRpYUVsZW1lbnQ9bi5CLmRldmljZUlzQXVkaW9Pbmx5P25ldyBnLkdWKGcuekYoIkFVRElPIikpOnFLLnBvcCgpfHxuZXcgZy5HVihnLnpGKCJWSURFTyIpKTtuLkIuWnQoKS5OLlFRKGNmKXx8Zy51KG4sbi5tZWRpYUVsZW1lbnQpO24uTU4oKS5zZXRNZWRpYUVsZW1lbnQobi5tZWRpYUVsZW1lbnQpO3RyeXtuLkIuczU/KG4uR3YmJm4uZXZlbnRzLndIKG4uR3YpLG4uR3Y9bi5ldmVudHMuTk4obi5tZWRpYUVsZW1lbnQsInZvbHVtZWNoYW5nZSIsbi56ZCkpOihuLm1lZGlhRWxlbWVudC5jSihuLkZfLm11dGVkKSxuLm1lZGlhRWxlbWVudC5zZXRWb2x1bWUobi5GXy52b2x1bWUvMTAwKSl9Y2F0Y2godil7bi5LZygiaHRtbDUubWlzc2luZ2FwaSIsMiwiVU5TVVBQT1JURURfREVWSUNFIixgc2V0dm9sdW1lLjE7ZW1zZy4ke3YmJnR5cGVvZiB2PT09Im9iamVjdCImJiJtZXNzYWdlImluIHYmJnR5cGVvZiB2Lm1lc3NhZ2U9PT0ic3RyaW5nIiYmdi5tZXNzYWdlLnJlcGxhY2UoL1s7OixdL2csCiJfIil9YCk7cmV0dXJufW4ua1YuSigpO2swaihuKTt2YXIgVz1uLnRlbXBsYXRlLEQ9bi5tZWRpYUVsZW1lbnQuZV8oKTtXLm5CPUQ7Vy53Rj0hMTtXLm5CLnBhcmVudE5vZGV8fGcuanAoVy5WUCxXLm5CLDApO1cuRU49bmV3IGcuYnIoMCwwLDAsMCk7WWVpKFcpO1hTKFcpO0Q9Vy5uQjtnLlVJKEQsInZpZGVvLXN0cmVhbSIpO2cuVUkoRCxnLk9uLk1BSU5fVklERU8pO3ZhciBiPVcuYXBwLkcoKTtiLmxRJiZELnNldEF0dHJpYnV0ZSgiZGF0YS1uby1mdWxsc2NyZWVuIiwidHJ1ZSIpO2IueGgmJihELnNldEF0dHJpYnV0ZSgid2Via2l0LXBsYXlzaW5saW5lIiwiIiksRC5zZXRBdHRyaWJ1dGUoInBsYXlzaW5saW5lIiwiIikpO2IuSkcmJlcubkImJlcuTk4oRCwiY2xpY2siLEQucGxheSxEKTt0cnl7bi5tZWRpYUVsZW1lbnQuRCgpfWNhdGNoKHYpe24uS2coImh0bWw1Lm1pc3NpbmdhcGkiLDIsIlVOU1VQUE9SVEVEX0RFVklDRSIsYGFjdGl2YXRlLjE7ZW1zZy4ke3YmJnR5cGVvZiB2PT09CiJvYmplY3QiJiYibWVzc2FnZSJpbiB2JiZ0eXBlb2Ygdi5tZXNzYWdlPT09InN0cmluZyImJnYubWVzc2FnZS5yZXBsYWNlKC9bOzosXS9nLCJfIil9YCl9fTsKRVo9ZnVuY3Rpb24obixXLEQpe24uUkIuV0ooVyxEKTt2YXIgYj1nLms2KG4uQil8fGcuRGYobi5CKXx8Zy5NVihuLkIpO2lmKEQmJmIpe2xldCB2O3N3aXRjaChXKXtjYXNlICJjdWVyYW5nZW1hcmtlcnN1cGRhdGVkIjp2PSJvbkN1ZVJhbmdlTWFya2Vyc1VwZGF0ZWQiO2JyZWFrO2Nhc2UgImN1ZXJhbmdlc2FkZGVkIjp2PSJvbkN1ZVJhbmdlc0FkZGVkIjticmVhaztjYXNlICJjdWVyYW5nZXNyZW1vdmVkIjp2PSJvbkN1ZVJhbmdlc1JlbW92ZWQifXYmJmcuUlQobi5SQix2LEQubWFwKGs9Pih7Z2V0SWQoKXtyZXR1cm4gdGhpcy5pZH0sZW5kOmsuZW5kLGlkOmsuZ2V0SWQoKSxuYW1lc3BhY2U6ay5uYW1lc3BhY2U9PT0iYWQiPyJhZCI6IiIsc3RhcnQ6ay5zdGFydCxzdHlsZTprLnN0eWxlLHZpc2libGU6ay52aXNpYmxlLG1hcmtlclBvc2l0aW9uTXM6ay5tYXJrZXJQb3NpdGlvbk1zfSkpKX19OwpoZDE9ZnVuY3Rpb24obixXPSEwKXt2YXIgRDtpZihEPW4uckgpe0Q9bi5ySDt2YXIgYj1uLm1lZGlhRWxlbWVudDtEPSEhYiYmYj09PUQubWVkaWFFbGVtZW50fUQmJihuLmNQKCksekEobikpO0Q9bi5NTigpO0QuY1AoIVcpO0QuTTkobi5zRixuKTtELmdldFBsYXllclR5cGUoKSE9PTEmJkQuZGlzcG9zZSgpO249bi5WcjtXPVtuLkpdO24uSj1uLmNKO1NzKG4sW10sVyl9OwpueD1mdW5jdGlvbihuLFcsRCxiKXtEJiYobi5jUCgpLHpBKG4pKTtEPW4uTU4oKTtELnhLKFcpO3ZhciB2PW4uZ2V0VmlkZW9EYXRhKCksaz17fTtrLnZpZGVvX2lkPXYudmlkZW9JZDtrLmFkZm9ybWF0PXYuYWRGb3JtYXQ7di5pc0xpdmVQbGF5YmFja3x8KGsuc3RhcnQ9RC5nZXRDdXJyZW50VGltZSgpLGsucmVzdW1lPSIxIik7di5pc0xpdmVQbGF5YmFjayYmSTQodikmJmcuR2wobi5CKSYmKGsubGl2ZV91dGNfc3RhcnQ9RC5oQygpLGsucmVzdW1lPSIxIik7di5EJiYoay52dnQ9di5EKTt2LmtXJiYoay52c3NfY3JlZGVudGlhbHNfdG9rZW49di5rVyxrLnZzc19jcmVkZW50aWFsc190b2tlbl90eXBlPXYuUXYpO3Yub2F1dGhUb2tlbiYmKGsub2F1dGhfdG9rZW49di5vYXV0aFRva2VuKTtrLmF1dG9wbGF5PTE7ay5yZWxvYWRfY291bnQ9di5TJCsxO2sucmVsb2FkX3JlYXNvbj1XO3Yub1QmJihrLnVucGx1Z2dlZF9wYXJ0bmVyX29wdF9vdXQ9di5vVCk7di5MQiYmKGsueXBjX2lzX3ByZW1pZXJlX3RyYWlsZXI9CnYuTEIpO3YucGxheWVyUGFyYW1zJiYoay5wbGF5ZXJfcGFyYW1zPXYucGxheWVyUGFyYW1zKTt2LnR3JiYoay5pdGN0PXYudHcpO24ubG9hZFZpZGVvQnlQbGF5ZXJWYXJzKGssdm9pZCAwLCEwLHZvaWQgMCx2b2lkIDAsYik7Vz09PSJzaWduYXR1cmUiJiZuLlF3JiZhWChuKX07CkwyTT1mdW5jdGlvbihuKXtpZigheGVyKG4pKXt2YXIgVz1uLmNYKCkuaDUoKTtXJiYoVz1XLmJkKCksVyBpbnN0YW5jZW9mIFByb21pc2UmJlcuY2F0Y2goKCk9Pnt9KSk7CldxKG4sVFgobi5nZXRQbGF5ZXJTdGF0ZU9iamVjdCgpKSl9fTsKeGVyPWZ1bmN0aW9uKG4pe3JldHVybiBuLnBsYXlsaXN0JiYoZy5DTihuLkIpfHxuLkIuWT09PSJiYWNrZ3JvdW5kX2F1ZGlvX3BsYXliYWNrIikmJm4ueGwoKT8obi5uZXh0VmlkZW8oITEsITApLCEwKTohMX07CldxPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5NTigpLGI9RC5nZXRQbGF5ZXJUeXBlKCk7aWYoYiE9PTJ8fG4uTFkoKSl7aWYoYj09PTImJm4uTFkoKXx8Yj09PTV8fGI9PT02fHxiPT09NylpZihXPT09LTF8fFc9PT0wfHxXPT09NSlyZXR1cm47aWYoVz09PTApe2lmKG4uSE4pcmV0dXJuO2lmKEQuY0coKSYmZy5rNihuLkIpKXtuLnBsYXlWaWRlbygpO3JldHVybn19bi5pdSE9PVcmJihuLml1PVcsZy5WVShuLlJCLCJvblN0YXRlQ2hhbmdlIixXKSl9ZWxzZSBuLkIkIT09VyYmKG4uQiQ9VyxnLlZVKG4uUkIsIm9uQWRTdGF0ZUNoYW5nZSIsVykpfTsKREY9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5Wci5WRShXKX07CmcuSVg9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5MWShXKT9uLmNYKCk6V307CmJVPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5NTigpO3JldHVybiBXPT09bi5jWCgpJiZuLkxZKFcpJiZuLkxZKEQpP0Q6V307CnZxPWZ1bmN0aW9uKG4pe249R3Uobi54Nik7cmV0dXJuISFuJiZuLmxvYWRlZH07CmVkUz1mdW5jdGlvbihuKXt2YXIgVz1uLmdldFZpZGVvRGF0YSgpLEQ9bi54NjtWWShEKXx8RC5YKCk7IVVkJiZRWShEKSYmYU1VKEQpO3c5KEQsImVtYmVkIik7dzkoRCwia2lkcyIpO3c5KEQsInJlbW90ZSIpO3c5KEQsIm1pbmlwbGF5ZXIiKTt3OShELCJvZmZsaW5lIik7dzkoRCwidW5wbHVnZ2VkIik7dzkoRCwieXBjIiwhMSwhMCk7dzkoRCwid2ViZ2wiLCExLCEwKTtuRGooRCl8fCh3OShELCJjYXB0aW9ucyIsITApLHc5KEQsImVuZHNjcmVlbiIpLEQuTigpLHc5KEQsImNyZWF0b3JlbmRzY3JlZW4iLCEwKSk7RC5ZKCk7RC5BLldKKCJtb2R1bGVzQ3JlYXRlZCIpO24uUkIuV0ooInZpZGVvcmVhZHkiLFcpfTsKYVg9ZnVuY3Rpb24obil7aWYoIXZxKG4pKXtsZXQgVz1URyhuLng2KTtXJiYhVy5jcmVhdGVkJiZSRyhuLng2KSYmVy5jcmVhdGUoKX19OwpPWj1mdW5jdGlvbihuKXt2YXIgVz1uLmdldFZpZGVvRGF0YSgpO2lmKCFXLnlsKXt2YXIgRDtuLkIuZXhwZXJpbWVudHMuRXEoImh0bWw1X3N0YXRlZnVsX2F1ZGlvX25vcm1hbGl6YXRpb24iKSYmVy5ob3N0Q3BuJiYoRD1raShuLFcuaG9zdENwbik/LmdldFZpZGVvRGF0YSgpLmhnLmooKSk7Vz1uLkIuczU/MTpyNihXLmhnLEQpO0Q9bi5tZWRpYUVsZW1lbnQ7RC5jSihuLkZfLm11dGVkKTt0cnl7RC5zZXRWb2x1bWUobi5GXy52b2x1bWUqVy8xMDApfWNhdGNoe2cuR3EobmV3IGcuUXgoImIxODM3NDIzMDciLGBtdWx0aXBsaWVyOiAke1d9LCB2b2x1bWU6ICR7bi5GXy52b2x1bWV9YCkpfX19Owp2YXIgSjFaPWZ1bmN0aW9uKCl7cmV0dXJuIGVYW0lbMTBdXSh0aGlzLDY3LDQ4NDkpfTsKQ0o9ZnVuY3Rpb24obil7bj1WUyhuKTtuLk9WKCk7cmV0dXJuIEFEKG4pfTsKbGw9ZnVuY3Rpb24obixXKXt2YXIgRD0oVz9XOlZTKG4pKS5RNztuLm1RLnRpY2soImVwX3ByX3IiKTtpZihEIT1udWxsJiYodUF0KG4ucGxheWxpc3QsRCksbi5sSikpbi5wbGF5bGlzdC5vblJlYWR5KCgpPT57VEEobixXKX0pfTsKVEE9ZnVuY3Rpb24obixXKXt2YXIgRD1nLm80KG4uQikmJiFuLkIuTyxiPUQmJlc/VzppdihuLnBsYXlsaXN0KTtXPUQmJlc/VzpuLmdldFZpZGVvRGF0YSgpO2ImJihXLkd1JiYobi5CLlU1fHxuLkIuTWQpfHwhbi5LSD8oVz1XLlBYLGI9bi56MihiLDEpLFcmJmZKKG4sYikpOmhWKG4sYiwxKSk7Zy5vNChuLkIpJiZuLm1RLnRpY2soImVwX3BfbCIpO24ubEo9ITE7Zy5RVShuLlJCLCJvblBsYXlsaXN0VXBkYXRlIil9OwpCZj1mdW5jdGlvbihuKXt2YXIgVz1uLmNYKCk7aWYoVy5nZXRQbGF5ZXJTdGF0ZSgpLk4oMTI4KSlyZXR1cm4hMTtXPVcuZ2V0VmlkZW9EYXRhKCk7Q0oobikmJm4uQi5NZCYmKHFLLmxlbmd0aCYmbi5zaj8oUGYobix7bXV0ZWQ6ITEsdm9sdW1lOm4uRl8udm9sdW1lfSwhMSksS0oobiwhMSkpOnFLLmxlbmd0aHx8bi5GXy5tdXRlZHx8KFBmKG4se211dGVkOiEwLHZvbHVtZTpuLkZfLnZvbHVtZX0sITEpLEtKKG4sITApKSk7Q0oobikmJmcubzQobi5CKSYmVy5tdXRlZEF1dG9wbGF5JiYoUGYobix7bXV0ZWQ6ITAsdm9sdW1lOm4uRl8udm9sdW1lfSwhMSksS0oobiwhMCkpO1cuTjAmJlBmKG4se211dGVkOiEwLHZvbHVtZTpuLkZfLnZvbHVtZX0sITEpO3VsKG4sMSxXLCExKTt2YXIgRD1uLmNYKCk7bi5SQi5XSigiaW5pdGlhbGl6aW5nbW9kZSIpO24uUVQoRCk7bi5HMigzKTt2YXIgYjtpZighKGI9IW4uQi5HUykpe2lmKGI9bi5ySCl7Yj1uLnJIO3ZhciB2PW4ubWVkaWFFbGVtZW50OwpiPSEhdiYmdj09PWIubWVkaWFFbGVtZW50fWI9YiYmbi5hQ31iJiYobi5jUCgpLHpBKG4pLEQuc2V0TWVkaWFFbGVtZW50KG4ubWVkaWFFbGVtZW50KSk7RC5uTCgpO2lmKEQuZ2V0UGxheWVyU3RhdGUoKS5OKDEyOCkpcmV0dXJuITE7Vy5EdHx8V3EobiwzKTtyZXR1cm4gbi5hQz0hMH07Cm41aj1mdW5jdGlvbihuKXtuLlJCLldKKCJpbml0aWFsaXppbmdtb2RlIik7bi5HMigyKTt3OShuLng2LCJyZW1vdGUiKTt3OShuLng2LCJtaW5pcGxheWVyIil9OwpGUz1mdW5jdGlvbihuKXtpZighbi5TKCJ1c2VfcnRhX2Zvcl9wbGF5ZXIiKSlpZihuLlMoImZldGNoX2F0dF9pbmRlcGVuZGVudGx5IikpZy5KYShuLkNOKTtlbHNle3ZhciBXPW4uZ2V0VmlkZW9EYXRhKCkuYm90Z3VhcmREYXRhO1cmJmcuekMoVyxuLkIsbi5nZXRWaWRlb0RhdGEoKS5wS3x8IiIpfX07CktKPWZ1bmN0aW9uKG4sVyl7VyE9PW4uc2omJihuLnNqPVcsZy5RVShuLlJCLCJvbk11dGVkQXV0b3BsYXlDaGFuZ2UiLFcpKX07CnVsPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PXhpKG4sVyxEKSxrPW4uVnIuWC5nZXQodil8fG51bGw7aWYoIWspcmV0dXJuIG51bGw7bi5Wci5YLnJlbW92ZSh2KTtpZihrLnFOKCkpcmV0dXJuIG51bGw7aWYoay5nZXRQbGF5ZXJTdGF0ZSgpLk4oMTI4KSlyZXR1cm4gay5kaXNwb3NlKCksbnVsbDtpZihrPT09REYobix7cGxheWVyVHlwZTpXfSkpcmV0dXJuIG4ubVEuaW5mb0dlbCh7aXNDYWNoZUhpdDohMH0pLGs7aWYoKGsuZ2V0VmlkZW9EYXRhKCkub2F1dGhUb2tlbnx8RC5vYXV0aFRva2VuKSYmay5nZXRWaWRlb0RhdGEoKS5vYXV0aFRva2VuIT09RC5vYXV0aFRva2VuKXJldHVybiBudWxsO1c9PT0xJiYoVz1uLk1OKCkuZ2V0VmlkZW9EYXRhKCksQUooVykmJlcuaXNBZCgpJiZifHxRWihuKSk7Ynx8bi5RVChrLCEwKTtuLm1RLmluZm9HZWwoe2lzQ2FjaGVIaXQ6ITB9KTtyZXR1cm4ga307CmcuZzVoPWZ1bmN0aW9uKG4pe3ZhciBXPSgwLGcuUikoKSxEPW4uZ2V0Q3VycmVudFRpbWUoKTtuPW4uZ2V0VmlkZW9EYXRhKCk7RD0xRTMqKEQtbi5zdGFydFNlY29uZHMpO24uaXNMaXZlUGxheWJhY2smJihEPTApO3JldHVybiBXLU1hdGgubWF4KEQsMCl9OwpkYXQ9ZnVuY3Rpb24obixXKXtpZighbi5ITilyZXR1cm4hMTt2YXIgRD1uLkhOLnN0YXJ0VGltZU1zKi4wMDEtMSxiPW4uSE4uZW5kVGltZU1zKi4wMDE7bi5ITi50eXBlPT09InJlcGVhdENoYXB0ZXIiJiZiLS07cmV0dXJuIE1hdGguYWJzKFctRCk8PTFFLTZ8fE1hdGguYWJzKFctYik8PTFFLTZ8fFc+PUQmJlc8PWJ9OwpYUXg9ZnVuY3Rpb24obil7dmFyIFc9bi5NTigpO2lmKG4uUygiaHRtbDVfZGlzYWJsZV9sb29wX3JhbmdlX2Zvcl9zaG9ydHNfYWRzIikmJlcuZ2V0VmlkZW9EYXRhKCkuaXNBZCgpPzA6QUooVy5nZXRWaWRlb0RhdGEoKSkmJiFXLklLKCkpVz1BYihuKSoxRTMtbi5nZXRWaWRlb0RhdGEoKS5QTCxuPW4uVGUsaWwobi5hcHAsImdhcGxlc3NzaG9ydHNsb29wcmFuZ2UiKSxXPW5ldyBnLmw1KDAsVyx7aWQ6ImdhcGxlc3Nsb29wcmFuZ2UiLG5hbWVzcGFjZToiZ2FwbGVzc3Nob3J0c2xvb3ByYW5nZSJ9KSwobj1uLmFwcC5NTigpKSYmbi5hZGRDdWVSYW5nZShXKX07Ckcwaj1mdW5jdGlvbihuKXt2YXIgVz1uLmNYKCk7aWYoIShXLmdldFBsYXllclN0YXRlKCkuTig2NCkmJlZTKG4pLmlzTGl2ZVBsYXliYWNrJiZuLkhOLnN0YXJ0VGltZU1zPDVFMykpe2lmKG4uSE4udHlwZT09PSJyZXBlYXRDaGFwdGVyIil7dmFyIEQ9RCQobi5KNSgpKT8uQjcoKTtsZXQgYj1uLmdldFZpZGVvRGF0YSgpPy5iJDtpZihEIGluc3RhbmNlb2YgcWhTJiZiKXtsZXQgdj0wO2ZvcihsZXQgayBvZiBiKXtpZihrLnN0YXJ0VGltZT5uLkhOLnN0YXJ0VGltZU1zKWJyZWFrO3YrK31ELnJlbmRlckNoYXB0ZXJTZWVraW5nQW5pbWF0aW9uKDAsYlt2PT09MD92OnYtMV0udGl0bGUpfWlzTmFOKE51bWJlcihuLkhOLmxvb3BDb3VudCkpP24uSE4ubG9vcENvdW50PTA6bi5ITi5sb29wQ291bnQrKztuLkhOLmxvb3BDb3VudD09PTEmJmcuUlQobi5SQiwiaW5uZXJ0dWJlQ29tbWFuZCIsbi5nZXRWaWRlb0RhdGEoKS5aTil9RD17cWQ6ImFwcGxpY2F0aW9uX2xvb3BSYW5nZVN0YXJ0In07CmlmKG4uSE4udHlwZT09PSJjbGlwcyJ8fG4uSE4udHlwZT09PSJzaG9ydHNMb29wIilELnNlZWtTb3VyY2U9NTg7Vy5zZWVrVG8obi5ITi5zdGFydFRpbWVNcyouMDAxLEQpfX07ClNhPWZ1bmN0aW9uKG4sVyxEKXtpZihuLkxZKEQpJiYoRD1ELmdldFZpZGVvRGF0YSgpLCFnLkx4KG4pKSl7bj1uLnNVO2Zvcih2YXIgYiBvZiBuLkopaWYoRC5LZj09PWIuS2Ype1crPWIub2EvMUUzO2JyZWFrfWI9Vztmb3IobGV0IHYgb2Ygbi5KKXtpZihELktmPT09di5LZilicmVhaztuPXYub2EvMUUzO2lmKG48VyliKz12LmR1cmF0aW9uTXMvMUUzK24tdi5kSS8xRTM7ZWxzZSBicmVha31yZXR1cm4gYn1yZXR1cm4gV307CmcuTHg9ZnVuY3Rpb24obil7cmV0dXJuIG4uZ2V0VmlkZW9EYXRhKCkuZW5hYmxlU2VydmVyU3RpdGNoZWREYWkmJiEhbi5Rd307ClFaPWZ1bmN0aW9uKG4peyhuPVRHKG4uSjUoKSkpJiZuLmNyZWF0ZWQmJm4uZGVzdHJveSgpfTsKdHR3PWZ1bmN0aW9uKG4pe3ZhciBXPW4uZ2V0VmlkZW9EYXRhKCkueWwsRD1uLkIuRHQsYj1uLmlzSW5saW5lKCkmJiFuLmdldFZpZGVvRGF0YSgpLnYxLHY9bi5tZWRpYUVsZW1lbnQ7V3x8RHx8Yj92LmZCKCk6KHYuTEIoKSxQZihuLG4uRl8pKX07CiRlVT1mdW5jdGlvbihuKXtyZXR1cm4gbi5TKCJ3ZWJfZW5hYmxlX2RpYnNfaW1wbGVtZW50YXRpb24iKSYmZy5lTShuLkIpfHxuLlMoIm13ZWJfZW5hYmxlX2RpYnNfaW1wbGVtZW50YXRpb24iKSYmZy5zZChuLkIpfTsKeGk9ZnVuY3Rpb24obixXLEQpe3JldHVybiBnLms2KG4uQikmJkQudkooKT9gJHtXfV8ke0QudmlkZW9JZH1fJHtELktmfWA6YCR7V31fJHtELnZpZGVvSWR9XyR7RC5LZn1fJHsrRC5pc0F1dG9uYXZ9JHsrRC5WVH1gfTsKcmpqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFcmJm4uQi5MQiYmIW4uZ2V0VmlkZW9EYXRhKCk/LmJhY2tncm91bmRhYmxlPyhuLkZqP24uRmouc3RhcnQoKTpuLlZLKCksITApOiExfTsKc2FpPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9MDtpZihXKXRyeXtsZXQgaz1kZWNvZGVVUklDb21wb25lbnQoVyksaD1scChrKTt2YXIgYj1uZXcgQVIobmV3IFM1KFtoXSkpO3ZhciB2PVBHKGIsMzIpO0Q9TnVtYmVyKHZ8fDApfWNhdGNoKGspe24uY1goKS5VKCJnZXRfbHVzdHNfZXJyIix7fSl9cmV0dXJuIER9OwpoVj1mdW5jdGlvbihuLFcsRD0xKXtpZihXLk9WKCkpe3ZhciBiPW9YKG4sRCxXLCExKTtuLmNhbmNlbFBsYXliYWNrKDQsRCk7bi5RVChiKTtiLnNtKCk7RD09PTEmJihuLkcyKDEpLGcubzQobi5CKSYmIVpQKFcpPyhXLmRpc3Bvc2UoKSxuLmNYKCkuZGlzcG9zZSgpKTpuNWoobikpfWVsc2UgVy5kaXNwb3NlKCksKFc9REYobix7cGxheWVyVHlwZTpEfSkpJiZXLmRpc3Bvc2UoKSxQVChWUyhuKSkmJkQ9PT0yJiZuLlNvKCl9OwpOYWI9ZnVuY3Rpb24obixXLEQsYix2KXtXPVFzUyhXLEQsYix2KTsoRD1nLm80KG4uQikmJiFuLkIuTykmJiFuLlpWJiYoVy5mZXRjaD0wKTt5WihuLFcpO2cubzQobi5CKSYmbi5tUS50aWNrKCJlcF9hX3ByX3MiKTtpZihEJiYhbi5aVilEPVZTKG4pLHpicihELFcpLnRoZW4oaz0+e24ubEo9ITA7bGwobixrKX0pOwplbHNlIG4ucGxheWxpc3Qub25SZWFkeSgoKT0+e1RBKG4pfSk7CmcubzQobi5CKSYmbi5tUS50aWNrKCJlcF9hX3ByX3IiKX07CmtpPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9REYobix7cGxheWVyVHlwZToxfSk7aWYoRCl7aWYoRC5nZXRWaWRlb0RhdGEoKS5jbGllbnRQbGF5YmFja05vbmNlPT09VylyZXR1cm4gRDtpZigobj1uLlNHLk4pJiZuLmdldFZpZGVvRGF0YSgpLmNsaWVudFBsYXliYWNrTm9uY2U9PT1XKXJldHVybiBufXJldHVybiBudWxsfTsKZW89ZnVuY3Rpb24obil7dmFyIFc9c1AoITApO3JldHVybiBXJiYoVz09PW4udGVtcGxhdGUuZWxlbWVudHx8bi5tZWRpYUVsZW1lbnQmJlc9PT1uLm1lZGlhRWxlbWVudC5lXygpKT9XOm51bGx9OwpZaGk9ZnVuY3Rpb24obixXKXt2YXIgRD13aW5kb3cuc2NyZWVuPy5vcmllbnRhdGlvbjtpZihuLkIudHcmJkQmJkQubG9jayYmKCFnLm9kfHwhcFFqKSlpZihXKXtXPUQudHlwZS5pbmRleE9mKCJwb3J0cmFpdCIpPT09MDtsZXQgYj1uLnRlbXBsYXRlLmdldFZpZGVvQXNwZWN0UmF0aW8oKSx2PVc7YjwxP3Y9ITA6Yj4xJiYodj0hMSk7bi5KUiYmdj09PVd8fChEPUQubG9jayh2PyJwb3J0cmFpdCI6ImxhbmRzY2FwZSIpLEQhPW51bGwmJkQuY2F0Y2goKCk9Pnt9KSxuLkpSPSEwKX1lbHNlIG4uSlImJihuLkpSPSExLEQudW5sb2NrKCkpfTsKSGN0PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Vy5VeigpLGI9Vy5oNSgpO2lmKEQmJmImJm42KEQpKXt2YXIgdj1iLmlzVmlldygpP2IubWVkaWFFbGVtZW50OmI7bGV0IGg9Yi5pc1ZpZXcoKT9iLnN0YXJ0OjA7Yj1GZ2IoYikraDt2YXIgaz1MNihELGgsYiwhMCk7bGV0IHg9bmV3IGcuc2codixoLGIsITApO1cubm0oaywhMSwhMCwhMSk7Vy5zZXRNZWRpYUVsZW1lbnQoeCk7az1iKzEwO0Q9TDYoRCxrLEluZmluaXR5LCEwKTt2PW5ldyBnLnNnKHYsayxJbmZpbml0eSwhMSwhMCk7di5ISihEKTtuLlZxPXY7bi5CLldYKCkmJlcuVSgidXNtIix7cG1lOiEwLGNzOmgsY2U6YixuczprfSk7cmV0dXJuITB9cmV0dXJuITF9OwpmNmg9ZnVuY3Rpb24obixXKXtXLmJvdW5kcz1uLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3ZhciBEPVsiZGlzcGxheSIsIm9wYWNpdHkiLCJ2aXNpYmlsaXR5IiwiekluZGV4Il07Zm9yKGxldCBiIG9mIEQpV1tiXT1YbShuLGIpO1cuaGlkZGVuPSEhbi5oaWRkZW59Owp2YXIgU2pVPWZ1bmN0aW9uKCl7cmV0dXJuIFhEW0lbMTBdXSh0aGlzLDQsMzA5NCl9Owp2YXIgSmoyPWZ1bmN0aW9uKG4pe3JldHVybiBuLm5hbWU9PT0iVHlwZUVycm9yIiYmbi5zdGFjay5pbmNsdWRlcygiL3MvcGxheWVyLyIpJiZFeigpPD0xMDV9LGdxPWZ1bmN0aW9uKG4sVyl7aWYobi5hcGkuRygpLlMoIndlYl9wbGF5ZXJfbG9nX2NsaWNrX2JlZm9yZV9nZW5lcmF0aW5nX3ZlX2NvbnZlcnNpb25fcGFyYW1zIikpe3ZhciBEPU1hdGguZmxvb3IoLW4uc2Nyb2xsUG9zaXRpb24vKG4uaituLlcpKTsKbGV0IGI9TWF0aC5taW4oRCtuLmNvbHVtbnMsbi5zdWdnZXN0aW9uRGF0YS5sZW5ndGgpLTE7Zm9yKDtEPD1iO0QrKyluLmFwaS5sb2dWaXNpYmlsaXR5KG4uTltEXS5lbGVtZW50LFcpfX0sWFA9ZnVuY3Rpb24obil7bi5uZXh0LmVsZW1lbnQuc3R5bGUuYm90dG9tPWAke24uS31weGA7Cm4ucHJldmlvdXMuZWxlbWVudC5zdHlsZS5ib3R0b209YCR7bi5LfXB4YDt2YXIgVz1uLnNjcm9sbFBvc2l0aW9uLEQ9bi5jb250YWluZXJXaWR0aC1uLnN1Z2dlc3Rpb25EYXRhLmxlbmd0aCoobi5qK24uVyk7Zy5pSChuLmVsZW1lbnQsInl0cC1zY3JvbGwtbWluIixXPj0wKTtnLmlIKG4uZWxlbWVudCwieXRwLXNjcm9sbC1tYXgiLFc8PUQpfSxJNlo9ZnVuY3Rpb24obil7Zm9yKHZhciBXPTA7VzxuLnN1Z2dlc3Rpb25EYXRhLmxlbmd0aDtXKyspe3ZhciBEPW4uc3VnZ2VzdGlvbkRhdGFbV107CmxldCBrPW4uTltXXTt2YXIgYj1ELnNob3J0Vmlld0NvdW50P0Quc2hvcnRWaWV3Q291bnQ6RC5hdXRob3I7bGV0IGg9RC5NZigpLHg9bi5hcGkuRygpO2lmKGcubzQoeCkmJiF4LlMoIndlYl9wbGF5ZXJfbG9nX2NsaWNrX2JlZm9yZV9nZW5lcmF0aW5nX3ZlX2NvbnZlcnNpb25fcGFyYW1zIikpe3ZhciB2PXt9O011KG4uYXBpLFt2XSk7aD1nLkVUKGgsdil9ay5lbGVtZW50LnN0eWxlLmRpc3BsYXk9IiI7dj1rLkJKKCJ5dHAtc3VnZ2VzdGlvbi10aXRsZSIpO3FsLnRlc3QuY2FsbChxbCxELnRpdGxlKT92LmRpcj0icnRsIjpHZy50ZXN0LmNhbGwoR2csRC50aXRsZSkmJih2LmRpcj0ibHRyIik7dj1rLkJKKCJ5dHAtc3VnZ2VzdGlvbi1hdXRob3IiKTtxbC50ZXN0LmNhbGwocWwsYik/di5kaXI9InJ0bCI6R2cudGVzdC5jYWxsKEdnLGIpJiYodi5kaXI9Imx0ciIpO2sudXBkYXRlKHt2aWV3c19vcl9hdXRob3I6YixkdXJhdGlvbjpELmlzTGl2ZVBsYXliYWNrPyJMaXZlIjpELmxlbmd0aFNlY29uZHM/CmcuSDcoRC5sZW5ndGhTZWNvbmRzKToiIixsaW5rOmgsaG92ZXJfdGl0bGU6RC50aXRsZSx0aXRsZTpELnRpdGxlLGFyaWFfbGFiZWw6RC5hcmlhTGFiZWx8fG51bGwsaXNfbGl2ZTpELmlzTGl2ZVBsYXliYWNrfSk7Yj1ELkdCKCk7ay5CSigieXRwLXN1Z2dlc3Rpb24taW1hZ2UiKS5zdHlsZS5iYWNrZ3JvdW5kSW1hZ2U9Yj9gdXJsKCR7Yn0pYDoiIjt4LlMoIndlYl9wbGF5ZXJfbG9nX2NsaWNrX2JlZm9yZV9nZW5lcmF0aW5nX3ZlX2NvbnZlcnNpb25fcGFyYW1zIikmJihuLmFwaS5jcmVhdGVTZXJ2ZXJWZShrLmVsZW1lbnQsayksKEQ9KEQ9RC5zZXNzaW9uRGF0YSkmJkQuaXRjdCkmJm4uYXBpLnNldFRyYWNraW5nUGFyYW1zKGsuZWxlbWVudCxEKSl9Zm9yKDtXPG4uTi5sZW5ndGg7VysrKW4uTltXXS5lbGVtZW50LnN0eWxlLmRpc3BsYXk9Im5vbmUiO1hQKG4pfSxTaFU9ZnVuY3Rpb24obixXLEQpe1cucHJldmVudERlZmF1bHQoKTsKbi5hcGkubG9nQ2xpY2soRCk7Vz1ELmdldEF0dHJpYnV0ZSgiaHJlZiIpO0Q9e307TXUobi5hcGksW0RdKTtXPWcuR0YoRCk/VzpnLkVUKFcsRCk7SkYoVyl9LEFqTT1mdW5jdGlvbihuLFcpe24uQkooInl0cC1lcnJvci1jb250ZW50Iikuc3R5bGUucGFkZGluZ1RvcD0iMHB4IjsKdmFyIEQ9bi5CSigieXRwLWVycm9yLWNvbnRlbnQiKSxiPUQuY2xpZW50SGVpZ2h0O24uTiYmbi5OLnJlc2l6ZShXLFcuaGVpZ2h0LWIpO0Quc3R5bGUucGFkZGluZ1RvcD1gJHsoVy5oZWlnaHQtKG4uTj9uLk4uZWxlbWVudC5jbGllbnRIZWlnaHQ6MCkpLzItYi8yfXB4YH0sSzJVPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5hcGkuRygpLGI7ClcucmVhc29uJiYodFYoVy5yZWFzb24pP2I9Zy5iZyhXLnJlYXNvbik6Yj12YyhnLkRwKFcucmVhc29uKSksbi5YKGIsImNvbnRlbnQiKSk7dmFyIHY7Vy5zdWJyZWFzb24mJih0VihXLnN1YnJlYXNvbik/dj1nLmJnKFcuc3VicmVhc29uKTp2PXZjKGcuRHAoVy5zdWJyZWFzb24pKSxuLlgodiwic3VicmVhc29uIikpO2lmKFcucHJvY2VlZEJ1dHRvbiYmVy5wcm9jZWVkQnV0dG9uLmJ1dHRvblJlbmRlcmVyKXtiPW4uQkooInl0cC1lcnJvci1jb250ZW50LXdyYXAtc3VicmVhc29uIik7Vz1XLnByb2NlZWRCdXR0b24uYnV0dG9uUmVuZGVyZXI7bGV0IGs9Zy56RigiQSIpO1cudGV4dCYmVy50ZXh0LnNpbXBsZVRleHQmJih2PVcudGV4dC5zaW1wbGVUZXh0LGsudGV4dENvbnRlbnQ9dixtZVUoYix2KXx8RC5EJiYhRC5lbWJlZHNFcnJvckxpbmtzfHwoRD1nLncoVz8ubmF2aWdhdGlvbkVuZHBvaW50LGcuUGopPy51cmwsVz1nLncoVz8ubmF2aWdhdGlvbkVuZHBvaW50LGcuUGopPy50YXJnZXQsCkQmJihrLnNldEF0dHJpYnV0ZSgiaHJlZiIsRCksbi5hcGkuY3JlYXRlQ2xpZW50VmUoayxuLDE3ODQyNCksbi5OTihrLCJjbGljayIsaD0+e1NoVShuLGgsayl9KSksVyYmay5zZXRBdHRyaWJ1dGUoInRhcmdldCIsVyksRD1nLnpGKCJESVYiKSxELmFwcGVuZENoaWxkKGspLGIuYXBwZW5kQ2hpbGQoRCkpKX19LHRWPWZ1bmN0aW9uKG4pe2lmKG4ucnVucylmb3IobGV0IFc9MDtXPG4ucnVucy5sZW5ndGg7VysrKWlmKG4ucnVuc1tXXS5uYXZpZ2F0aW9uRW5kcG9pbnQpcmV0dXJuITA7CnJldHVybiExfSxtZVU9ZnVuY3Rpb24obixXKXtuPShufHxkb2N1bWVudCkuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIkEiKTsKZm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKyspaWYobltEXS50ZXh0Q29udGVudD09PVcpcmV0dXJuITA7cmV0dXJuITF9LE9jYj1mdW5jdGlvbihuKXt2YXIgVz17fTsKTXUobi5hcGksW1ddKTtuPW4uYXBpLmdldFZpZGVvVXJsKCk7cmV0dXJuIG49Zy5FVChuLFcpfSxQMHQ9ZnVuY3Rpb24obil7dmFyIFc9bi5hcGkuZ2V0VmlkZW9EYXRhKCksRD1uLmFwaS5HKCkuYlYmJiFuLnN0YXRlLk4oMikmJiFuLmFwaS5nZXRWaWRlb0RhdGEoe3BsYXllclR5cGU6MX0pLmlOOwpXLm11dGVkQXV0b3BsYXl8fG4uTUwoRCk7bi5hcGkubG9nVmlzaWJpbGl0eShuLmVsZW1lbnQsRCl9LFVlaj1mdW5jdGlvbihuKXtuLndhdGVybWFya3x8KG4ud2F0ZXJtYXJrPW5ldyBaY3Iobi5hcGkpLGcudShuLG4ud2F0ZXJtYXJrKSxuLndhdGVybWFyay5MdShuLmJvdHRvbUJ1dHRvbnMsMCksZy5pSChuLndhdGVybWFyay5lbGVtZW50LCJ5dHAtbXV0ZWQtYXV0b3BsYXktd2F0ZXJtYXJrIiwhMCksbi5OPW5ldyBnLiRpKG4ud2F0ZXJtYXJrLDAsITAsMTAwKSxnLnUobixuLk4pKX0seWpqPWZ1bmN0aW9uKG4pe24uSiYmbi5OJiYobi5OLnNob3coKSxuLlYuc3RhcnQoKSl9LEU1VT1mdW5jdGlvbihuKXtmb3IobGV0IFc9MDtXPDE2OysrVyl7bGV0IEQ9bmV3IGcucnEoe1o6ImEiLApKdzoieXRwLXN1Z2dlc3Rpb24tbGluayIseGE6e2hyZWY6Int7bGlua319Iix0YXJnZXQ6bi5hcGkuRygpLllaLCJhcmlhLWxhYmVsIjoie3thcmlhX2xhYmVsfX0ifSxYRjpbe1o6ImRpdiIsSnc6Inl0cC1zdWdnZXN0aW9uLWltYWdlIn0se1o6ImRpdiIsSnc6Inl0cC1zdWdnZXN0aW9uLW92ZXJsYXkiLHhhOntzdHlsZToie3tibGlua19yZW5kZXJpbmdfaGFja319IiwiYXJpYS1oaWRkZW4iOiJ7e2FyaWFfaGlkZGVufX0ifSxYRjpbe1o6ImRpdiIsSnc6Inl0cC1zdWdnZXN0aW9uLXRpdGxlIixPcToie3t0aXRsZX19In0se1o6ImRpdiIsSnc6Inl0cC1zdWdnZXN0aW9uLWF1dGhvciIsT3E6Int7YXV0aG9yX2FuZF92aWV3c319In0se1o6ImRpdiIseGE6eyJkYXRhLWlzLWxpdmUiOiJ7e2lzX2xpdmV9fSJ9LEp3OiJ5dHAtc3VnZ2VzdGlvbi1kdXJhdGlvbiIsT3E6Int7ZHVyYXRpb259fSJ9XX1dfSk7Zy51KG4sRCk7bGV0IGI9RC5CSigieXRwLXN1Z2dlc3Rpb24tbGluayIpO2cuaDEoYiwKInRyYW5zaXRpb25EZWxheSIsYCR7Vy8yMH1zYCk7bi5qLk5OKGIsImNsaWNrIix2PT57dmFyIGs9VztpZihuLlcpe3ZhciBoPW4uc3VnZ2VzdGlvbkRhdGFba10seD1oLnNlc3Npb25EYXRhO24uSyYmbi5hcGkuUygid2ViX3BsYXllcl9sb2dfY2xpY2tfYmVmb3JlX2dlbmVyYXRpbmdfdmVfY29udmVyc2lvbl9wYXJhbXMiKT8obi5hcGkubG9nQ2xpY2sobi5OW2tdLmVsZW1lbnQpLGs9aC5NZigpLGg9e30sTXUobi5hcGksW2hdKSxrPWcuRVQoayxoKSxSeShrLG4uYXBpLHYpKTpNcCh2LG4uYXBpLG4uSyx4fHx2b2lkIDApJiZuLmFwaS5NMihoLnZpZGVvSWQseCxoLnBsYXlsaXN0SWQpfWVsc2Ugdi5wcmV2ZW50RGVmYXVsdCgpLGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQuYmx1cigpfSk7CkQuTHUobi5zdWdnZXN0aW9ucy5lbGVtZW50KTtuLk4ucHVzaChEKTtuLmFwaS5jcmVhdGVTZXJ2ZXJWZShELmVsZW1lbnQsRCl9fSxpY3I9ZnVuY3Rpb24obil7aWYobi5hcGkuRygpLlMoIndlYl9wbGF5ZXJfbG9nX2NsaWNrX2JlZm9yZV9nZW5lcmF0aW5nX3ZlX2NvbnZlcnNpb25fcGFyYW1zIikpe3ZhciBXPU1hdGguZmxvb3IoLW4uc2Nyb2xsUG9zaXRpb24vKG4uVis4KSk7CmxldCBEPU1hdGgubWluKFcrbi5jb2x1bW5zLG4uc3VnZ2VzdGlvbkRhdGEubGVuZ3RoKS0xO2Zvcig7Vzw9RDtXKyspbi5hcGkubG9nVmlzaWJpbGl0eShuLk5bV10uZWxlbWVudCwhMCl9fSxzNj1mdW5jdGlvbihuKXt2YXIgVz1uLmFwaS55WigpPzMyOjE2OwpXPW4uRC8yK1c7bi5uZXh0LmVsZW1lbnQuc3R5bGUuYm90dG9tPWAke1d9cHhgO24ucHJldmlvdXMuZWxlbWVudC5zdHlsZS5ib3R0b209YCR7V31weGA7Vz1uLnNjcm9sbFBvc2l0aW9uO3ZhciBEPW4uY29udGFpbmVyV2lkdGgtbi5zdWdnZXN0aW9uRGF0YS5sZW5ndGgqKG4uVis4KTtnLmlIKG4uZWxlbWVudCwieXRwLXNjcm9sbC1taW4iLFc+PTApO2cuaUgobi5lbGVtZW50LCJ5dHAtc2Nyb2xsLW1heCIsVzw9RCl9LG81dz1mdW5jdGlvbihuKXt2YXIgVz1uLnN1Z2dlc3Rpb25EYXRhLmxlbmd0aDsKZm9yKGxldCBrPTA7azxXOysrayl7dmFyIEQ9dm9pZCAwLGI9dm9pZCAwO2xldCBoPXZvaWQgMDtEPW47dmFyIHY9RC5hcGkuRygpO2xldCB4PUQuc3VnZ2VzdGlvbkRhdGFba10sTD1ELk5ba107aD1ELmFwaS5pc0VtYmVkc1Nob3J0c01vZGUoKT94LnNob3J0Vmlld0NvdW50fHwiIjp4LnNob3J0Vmlld0NvdW50P2Ake3guYXV0aG9yfSBcdTIwMjIgJHt4LnNob3J0Vmlld0NvdW50fWA6eC5hdXRob3I7TC5lbGVtZW50LnN0eWxlLmRpc3BsYXk9IiI7Zy5oMShMLkJKKCJ5dHAtc3VnZ2VzdGlvbi1saW5rIiksImRpc3BsYXkiLCJpbmxpbmUtYmxvY2siKTt1eWkudGVzdCh4LnRpdGxlKSYmKEwuQkooInl0cC1zdWdnZXN0aW9uLXRpdGxlIikuZGlyPSJydGwiKTt1eWkudGVzdChoKSYmKEwuQkooInl0cC1zdWdnZXN0aW9uLWF1dGhvciIpLmRpcj0icnRsIik7Yj14LmlzTGl2ZVBsYXliYWNrPyJMaXZlIjp4Lmxlbmd0aFNlY29uZHM/Zy5INyh4Lmxlbmd0aFNlY29uZHMpOiIiO2xldCBlPQp4Lk1mKEQuYXBpLmlzRW1iZWRzU2hvcnRzTW9kZSgpKTtpZihnLm80KHYpJiYhdi5TKCJ3ZWJfcGxheWVyX2xvZ19jbGlja19iZWZvcmVfZ2VuZXJhdGluZ192ZV9jb252ZXJzaW9uX3BhcmFtcyIpKXtsZXQgRz17fTtNdShELmFwaSxbR10pO2U9Zy5FVChlLEcpfXYuUygid2ViX3BsYXllcl9sb2dfY2xpY2tfYmVmb3JlX2dlbmVyYXRpbmdfdmVfY29udmVyc2lvbl9wYXJhbXMiKSYmKHY9KHY9eC5zZXNzaW9uRGF0YSkmJnYuaXRjdCkmJkQuYXBpLnNldFRyYWNraW5nUGFyYW1zKEwuZWxlbWVudCx2KTtMLnVwZGF0ZSh7YXV0aG9yX2FuZF92aWV3czpoLGR1cmF0aW9uOmIsbGluazplLHRpdGxlOngudGl0bGUsYXJpYV9sYWJlbDp4LmFyaWFMYWJlbHx8eC50aXRsZSxpc19saXZlOnguaXNMaXZlUGxheWJhY2ssYXJpYV9oaWRkZW46ISF4LmFyaWFMYWJlbCxibGlua19yZW5kZXJpbmdfaGFjazpnLm9kfHxyYz8id2lsbC1jaGFuZ2U6IG9wYWNpdHkiOnZvaWQgMH0pO2I9TC5CSigieXRwLXN1Z2dlc3Rpb24taW1hZ2UiKTsKRD1ELmFwaS5pc0VtYmVkc1Nob3J0c01vZGUoKT94LkdCKCJocTIuanBnIik6eC5HQigpO2Iuc3R5bGUuYmFja2dyb3VuZEltYWdlPUQ/YHVybCgke0R9KWA6IiJ9aWYoVzwxNilmb3IoO1c8MTY7KytXKWcuaDEobi5OW1ddLkJKKCJ5dHAtc3VnZ2VzdGlvbi1saW5rIiksImRpc3BsYXkiLCJub25lIik7czYobil9LE5sPWZ1bmN0aW9uKG4pe2lmKCFuLlcpe3ZhciBXPU1hdGgubWluKCgwLGcuUikoKS1uLlYsbi5qKTsKdmFyIEQ9bi5qLVc7Vz1uLmo9PT0wPzA6TWF0aC5tYXgoRC9uLmosMCk7RD1NYXRoLnJvdW5kKEQvMUUzKTtuLlkuc2V0QXR0cmlidXRlKCJzdHJva2UtZGFzaG9mZnNldCIsYCR7LTIxMSooVysxKX1gKTtuLnVwZGF0ZVZhbHVlKCJkdXJhdGlvbiIsRCk7Vzw9MCYmbi5OP24uc3RvcFRpbWVyKCk6bi5OJiZuLk4uc3RhcnQoKX19LGRleD1mdW5jdGlvbihuKXtuLk58fChuLmo9NUUzLG4uVj0oMCxnLlIpKCksbi5OPW5ldyBnLnBfKCgpPT57Tmwobil9LG51bGwpLE5sKG4pKX0scHg9ZnVuY3Rpb24obil7dmFyIFc9bi5BOwpuPSEhVy5pc0VtYmVkc1Nob3J0c01vZGUoKTtnLmlIKFcuZ2V0Um9vdE5vZGUoKSwieXRwLXNob3J0cy1tb2RlIixuKTtpZihXPVcuZ2V0VmlkZW9EYXRhKCkpVy5TYT1ufSxUYXg9ZnVuY3Rpb24obil7e3ZhciBXPW4uQTsKbGV0IEQ9Vy5HKCk7RC5XaSYmIUQuRCYmZy5vNChEKT9XLmlzRW1iZWRzU2hvcnRzTW9kZSgpPyhXPVcuRTQoKSxXPU1hdGgubWluKFcud2lkdGgsVy5oZWlnaHQpPj0zMTUpOlc9IVcuejYoKTpXPSExfVchPT1uLkQmJihuLkQ9VyxuLmomJihuLmouZGlzcG9zZSgpLG4uaj1udWxsKSxuLlcmJihuLlcuZGlzcG9zZSgpLG4uVz1udWxsKSxuLlgmJihuLlguZGlzcG9zZSgpLG4uWD1udWxsKSxuLkomJihuLkouc3RvcCgpLG4uSi5kaXNwb3NlKCksbi5KPW51bGwpLFcmJihnLmI1KG4uQSksbi5BLmlzRW1iZWRzU2hvcnRzTW9kZSgpJiYobi5YPW5ldyBnLnJxKHtaOiJkaXYiLEp3OiJ5dHAtcGF1c2Utb3ZlcmxheS1iYWNrZHJvcCIseGE6e3RhYkluZGV4OiItMSJ9fSksZy51KG4sbi5YKSxnLnJ2KG4uQSxuLlguZWxlbWVudCw0KSxuLko9bmV3IGcuJGkobi5YLDFFMywhMSwxMDApLGcudShuLG4uSiksbi5YLmhpZGUoKSksbi5qPW5ldyBnLnJxKHtaOiJkaXYiLEp3OiJ5dHAtcGF1c2Utb3ZlcmxheS1jb250YWluZXIiLAp4YTp7dGFiSW5kZXg6Ii0xIn19KSxnLnUobixuLmopLG4uVz1uZXcgemRVKG4uQSksZy51KG4sbi5XKSxuLlcuTHUobi5qLmVsZW1lbnQpLGcucnYobi5BLG4uai5lbGVtZW50LDQpLGw2QyhuLG4uQS5nZXRQbGF5ZXJTdGF0ZU9iamVjdCgpKSkpfSxsNkM9ZnVuY3Rpb24obixXKXtuLkomJighVy5OKDQpJiYhVy5OKDIpfHxXLk4oMTAyNCk/bi5KLmhpZGUoKTpuLkouc2hvdygpKX0sWWk9ZnVuY3Rpb24obixXKXt2YXIgRD1uLkEuRygpOwpuPXthZFNvdXJjZToiRU1CRURTX0FEX1NPVVJDRV9ZT1VUVUJFIixicmVha1R5cGU6bi5BLmdldEN1cnJlbnRUaW1lKCk9PT0wPyJFTUJFRFNfQURfQlJFQUtfVFlQRV9QUkVfUk9MTCI6bi5BLmdldFBsYXllclN0YXRlKCk9PT0wPyJFTUJFRFNfQURfQlJFQUtfVFlQRV9QT1NUX1JPTEwiOiJFTUJFRFNfQURfQlJFQUtfVFlQRV9NSURfUk9MTCIsZW1iZWRVcmw6QUEobi5BLkcoKS5sb2FkZXJVcmwpLGV2ZW50VHlwZTpXLHlvdXR1YmVIb3N0OmcuSVAobi5BLkcoKS5EYSl8fCIifTtuLmVtYmVkZGVkUGxheWVyTW9kZT1ELmNKO2cuelUoImVtYmVkc0FkRXZlbnQiLG4pfSxudD1bXSxEaXg9dHlwZW9mIE9iamVjdC5jcmVhdGU9PSJmdW5jdGlvbiI/T2JqZWN0LmNyZWF0ZTpmdW5jdGlvbihuKXtmdW5jdGlvbiBXKCl7fQpXLnByb3RvdHlwZT1uO3JldHVybiBuZXcgV30sV1NDPXR5cGVvZiBPYmplY3QuZGVmaW5lUHJvcGVydGllcz09ImZ1bmN0aW9uIj9PYmplY3QuZGVmaW5lUHJvcGVydHk6ZnVuY3Rpb24obixXLEQpe2lmKG49PUFycmF5LnByb3RvdHlwZXx8bj09T2JqZWN0LnByb3RvdHlwZSlyZXR1cm4gbjsKbltXXT1ELnZhbHVlO3JldHVybiBufSx4Mj1nbG9iYWxUaGlzLHZaPSJJbnQ4IFVpbnQ4IFVpbnQ4Q2xhbXBlZCBJbnQxNiBVaW50MTYgSW50MzIgVWludDMyIEZsb2F0MzIgRmxvYXQ2NCIuc3BsaXQoIiAiKTsKeDIuQmlnSW50NjRBcnJheSYmKHZaLnB1c2goIkJpZ0ludDY0IiksdloucHVzaCgiQmlnVWludDY0IikpO3ZhciBidFM9T2JqZWN0LnNldFByb3RvdHlwZU9mO2hpKCJTeW1ib2wuZGlzcG9zZSIsZnVuY3Rpb24obil7cmV0dXJuIG4/bjpTeW1ib2woIlN5bWJvbC5kaXNwb3NlIil9KTsKaGkoIlN1cHByZXNzZWRFcnJvciIsZnVuY3Rpb24obil7ZnVuY3Rpb24gVyhELGIsdil7aWYoISh0aGlzIGluc3RhbmNlb2YgVykpcmV0dXJuIG5ldyBXKEQsYix2KTt2PUVycm9yKHYpOyJzdGFjayJpbiB2JiYodGhpcy5zdGFjaz12LnN0YWNrKTt0aGlzLm1lc3NhZ2U9di5tZXNzYWdlO3RoaXMuZXJyb3I9RDt0aGlzLnN1cHByZXNzZWQ9Yn0KaWYobilyZXR1cm4gbjt2MkMoVyxFcnJvcik7Vy5wcm90b3R5cGUubmFtZT0iU3VwcHJlc3NlZEVycm9yIjtyZXR1cm4gV30pOwpoaSgiU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlQWxsIixmdW5jdGlvbihuKXtyZXR1cm4gbj9uOmZ1bmN0aW9uKFcsRCl7aWYoVyBpbnN0YW5jZW9mIFJlZ0V4cCYmIVcuZ2xvYmFsKXRocm93IG5ldyBUeXBlRXJyb3IoIlN0cmluZy5wcm90b3R5cGUucmVwbGFjZUFsbCBjYWxsZWQgd2l0aCBhIG5vbi1nbG9iYWwgUmVnRXhwIGFyZ3VtZW50LiIpO3JldHVybiBXIGluc3RhbmNlb2YgUmVnRXhwP3RoaXMucmVwbGFjZShXLEQpOnRoaXMucmVwbGFjZShuZXcgUmVnRXhwKFN0cmluZyhXKS5yZXBsYWNlKC8oWy0oKVxbXF17fSs/Ki4kXF58LDojPCFcXF0pL2csIlxcJDEiKS5yZXBsYWNlKC9ceDA4L2csIlxceDA4IiksImciKSxEKX19KTsKaGkoIkFycmF5LnByb3RvdHlwZS5hdCIsZnVuY3Rpb24obil7cmV0dXJuIG4/bjplVX0pOwpuMncoImF0IixmdW5jdGlvbihuKXtyZXR1cm4gbj9uOmVVfSk7CmhpKCJTdHJpbmcucHJvdG90eXBlLmF0IixmdW5jdGlvbihuKXtyZXR1cm4gbj9uOmVVfSk7CmhpKCJQcm9taXNlLndpdGhSZXNvbHZlcnMiLGZ1bmN0aW9uKG4pe3JldHVybiBuP246ZnVuY3Rpb24oKXt2YXIgVyxEO3JldHVybntwcm9taXNlOm5ldyBQcm9taXNlKGZ1bmN0aW9uKGIsdil7Vz1iO0Q9dn0pLApyZXNvbHZlOlcscmVqZWN0OkR9fX0pO3ZhciBjSixTVSxrYnQ7Y0o9Y0p8fHt9O2cucWk9dGhpc3x8c2VsZjtTVT0iY2xvc3VyZV91aWRfIisoTWF0aC5yYW5kb20oKSoxRTk+Pj4wKTtrYnQ9MDt2YXIgZV93PWNsYXNze2NvbnN0cnVjdG9yKHt1cmw6bixadjpXfSl7dGhpcy5KPW47dGhpcy5YPVc7dGhpcy5XPShuZXcgRGF0ZSkuZ2V0VGltZSgpLTE3MDQwNjcyRTU7dGhpcy5OPXt9O2Zvcih2YXIgRD0vWz8mXShbXiY9XSspPShbXiZdKikvZztXPUQuZXhlYyhuKTspdGhpcy5OW1dbMV1dPVdbMl19fTtnLml4KGcuVGIsRXJyb3IpO2cuVGIucHJvdG90eXBlLm5hbWU9IkN1c3RvbUVycm9yIjt2YXIgSWg7dmFyIE5yaD0vJi9nLHBadz0vPC9nLFl3aT0vPi9nLEh0VT0vIi9nLGYxUz0vJy9nLEppWj0vXHgwMC9nLHNDaD0vW1x4MDAmPD4iJ10vO3ZhciBuYj1nbG9iYWxUaGlzLnRydXN0ZWRUeXBlcyxXTTt2YXIgYl89Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5OKyIifX07Zy5laj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn10b1N0cmluZygpe3JldHVybiB0aGlzLk59fTtnLlY1PW5ldyBnLmVqKCJhYm91dDppbnZhbGlkI3pDbG9zdXJleiIpO3ZhciBYSSxnMmo7WEk9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5PVj1ufX07Zy5HND1bcVUoImRhdGEiKSxxVSgiaHR0cCIpLHFVKCJodHRwcyIpLHFVKCJtYWlsdG8iKSxxVSgiZnRwIiksbmV3IFhJKG49Pi9eW146XSooWy8/I118JCkvLnRlc3QobikpXTsKZzJqPS9eXHMqKD8hamF2YXNjcmlwdDopKD86W1x3Ky4tXSs6fFteOi8/I10qKD86Wy8/I118JCkpL2k7Zy5ZMz1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn10b1N0cmluZygpe3JldHVybiB0aGlzLk4rIiJ9fTt2YXIgQUY9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5OKyIifX07dmFyIFo0PWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuTj1ufXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuTn19O3ZhciBMcD17fTt2YXIgQWlyLG1pMTtBaXI9UmVnRXhwKCJeKD86KFteOi8/Iy5dKyk6KT8oPzovLyg/OihbXlxcXFwvPyNdKilAKT8oW15cXFxcLz8jXSo/KSg/OjooWzAtOV0rKSk/KD89W1xcXFwvPyNdfCQpKT8oW14/I10rKT8oPzpcXD8oW14jXSopKT8oPzojKFtcXHNcXFNdKikpPyQiKTtnLno1PS8jfCQvO21pMT0vWz8mXSgkfCMpLzt2YXIgUUc9Y2xhc3MgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihuLFcsRD1FcnJvcigpKXtzdXBlcigpO3RoaXMuY29kZT1uO1crPSI6IjtEIGluc3RhbmNlb2YgRXJyb3I/KHRoaXMubWVzc2FnZT1XK0QubWVzc2FnZSx0aGlzLnN0YWNrPUQuc3RhY2t8fCIiKToodGhpcy5tZXNzYWdlPVcrU3RyaW5nKEQpLHRoaXMuc3RhY2s9IiIpO09iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLG5ldy50YXJnZXQucHJvdG90eXBlKX19O2cuRk0ucHJvdG90eXBlLkhEPSExO2cuRk0ucHJvdG90eXBlLnFOPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSER9OwpnLkZNLnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7dGhpcy5IRHx8KHRoaXMuSEQ9ITAsdGhpcy5tQSgpKX07CmcuRk0ucHJvdG90eXBlW1N5bWJvbC5kaXNwb3NlXT1mdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpfTsKZy5GTS5wcm90b3R5cGUuYWRkT25EaXNwb3NlQ2FsbGJhY2s9ZnVuY3Rpb24obixXKXt0aGlzLkhEP1chPT12b2lkIDA/bi5jYWxsKFcpOm4oKToodGhpcy5CVnx8KHRoaXMuQlY9W10pLFcmJihuPW4uYmluZChXKSksdGhpcy5CVi5wdXNoKG4pKX07CmcuRk0ucHJvdG90eXBlLm1BPWZ1bmN0aW9uKCl7aWYodGhpcy5CVilmb3IoO3RoaXMuQlYubGVuZ3RoOyl0aGlzLkJWLnNoaWZ0KCkoKX07dmFyIFB4Uz1jbGFzcyBleHRlbmRzIGcuRk17Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLndwYz1ufUgkKCl7cmV0dXJuIHRoaXMud3BjLmYoKX15aChuKXt0aGlzLndwYy5jKG4pfVcobil7cmV0dXJuIHRoaXMud3BjLm0oUlAobikpfVpSKG4pe3JldHVybiB0aGlzLndwYy5td3MoUlAobikpfX0sd1Q9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKG4pe3N1cGVyKCk7dGhpcy5PMT1uO3RoaXMuVz0ia2V5ZG93biBrZXlwcmVzcyBrZXl1cCBpbnB1dCBmb2N1c2luIGZvY3Vzb3V0IHNlbGVjdCBjb3B5IGN1dCBwYXN0ZSBjaGFuZ2UgY2xpY2sgZGJsY2xpY2sgYXV4Y2xpY2sgcG9pbnRlcm92ZXIgcG9pbnRlcmRvd24gcG9pbnRlcnVwIHBvaW50ZXJtb3ZlIHBvaW50ZXJvdXQgZHJhZ2VudGVyIGRyYWdsZWF2ZSBkcmFnIGRyYWdlbmQgbW91c2VvdmVyIG1vdXNlZG93biBtb3VzZXVwIG1vdXNlbW92ZSBtb3VzZW91dCB0b3VjaHN0YXJ0IHRvdWNoZW5kIHRvdWNobW92ZSB3aGVlbCIuc3BsaXQoIiAiKTsKdGhpcy5KPXZvaWQgMDt0aGlzLk92PXRoaXMuTzEucDt0aGlzLlg9dGhpcy5TMS5iaW5kKHRoaXMpO3RoaXMuYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9PnZvaWQgT3RpKHRoaXMpKX1zbmFwc2hvdChuKXtyZXR1cm4gdGhpcy5PMS5zKHsuLi4obi53XyYme2M6bi53X30pLAouLi4obi5HbCYme3M6bi5HbH0pLC4uLihuLk1PIT09dm9pZCAwJiZ7cDpuLk1PfSl9KX1TMShuKXt0aGlzLk8xLmUobil9UUQoKXtyZXR1cm4gdGhpcy5PMS5sKCl9fTt2YXIgamExPWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyk7dGhpcy5iZD0xfXNoYXJlKCl7aWYodGhpcy5xTigpKXRocm93IEVycm9yKCJFOkFEIik7dGhpcy5iZCsrO3JldHVybiB0aGlzfWRpc3Bvc2UoKXstLXRoaXMuYmR8fHN1cGVyLmRpc3Bvc2UoKX19O3ZhciBDMHg9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5KPW47RXUobiwiL2NsaWVudF9zdHJlYW16L2JnL2ZycyIsYnAoIm1rIikpfWRFKG4sVyl7dGhpcy5KLmRFKCIvY2xpZW50X3N0cmVhbXovYmcvZnJzIixuLFcpfU4oKXtyZXR1cm4gdGhpcy5KLk4oIi9jbGllbnRfc3RyZWFtei9iZy9mcnMiKX19LEJhaT1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLko9bjtFdShuLCIvY2xpZW50X3N0cmVhbXovYmcvd3JsIixicCgibW4iKSxEWCgiYWMiKSxEWCgic2MiKSxicCgicmsiKSxicCgibWsiKSl9ZEUobixXLEQsYix2LGspe3RoaXMuSi5kRSgiL2NsaWVudF9zdHJlYW16L2JnL3dybCIsbixXLEQsYix2LGspfU4oKXtyZXR1cm4gdGhpcy5KLk4oIi9jbGllbnRfc3RyZWFtei9iZy93cmwiKX19LEYyWj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLlc9bjt1ZShuLCIvY2xpZW50X3N0cmVhbXovYmcvZWMiLGJwKCJlbiIpLGJwKCJtayIpKX1KKG4sVyl7ZHAodGhpcy5XLCIvY2xpZW50X3N0cmVhbXovYmcvZWMiLApuLFcpfU4oKXtyZXR1cm4gdGhpcy5XLk4oIi9jbGllbnRfc3RyZWFtei9iZy9lYyIpfX0sd1FyPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuSj1uO0V1KG4sIi9jbGllbnRfc3RyZWFtei9iZy9lbCIsYnAoImVuIiksYnAoIm1rIikpfWRFKG4sVyxEKXt0aGlzLkouZEUoIi9jbGllbnRfc3RyZWFtei9iZy9lbCIsbixXLEQpfU4oKXtyZXR1cm4gdGhpcy5KLk4oIi9jbGllbnRfc3RyZWFtei9iZy9lbCIpfX0sTXQxPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuVz1uO3VlKG4sIi9jbGllbnRfc3RyZWFtei9iZy9jZWMiLERYKCJlYyIpLGJwKCJtayIpKX1KKG4sVyl7ZHAodGhpcy5XLCIvY2xpZW50X3N0cmVhbXovYmcvY2VjIixuLFcpfU4oKXtyZXR1cm4gdGhpcy5XLk4oIi9jbGllbnRfc3RyZWFtei9iZy9jZWMiKX19LFJkYj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLlc9bjt1ZShuLCIvY2xpZW50X3N0cmVhbXovYmcvcG8vY3NjIixEWCgiY3MiKSxicCgibWsiKSl9SihuLFcpe2RwKHRoaXMuVywKIi9jbGllbnRfc3RyZWFtei9iZy9wby9jc2MiLG4sVyl9Tigpe3JldHVybiB0aGlzLlcuTigiL2NsaWVudF9zdHJlYW16L2JnL3BvL2NzYyIpfX0sUWF4PWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuVz1uO3VlKG4sIi9jbGllbnRfc3RyZWFtei9iZy9wby9jdGF2IixicCgiYXYiKSxicCgibWsiKSl9SihuLFcpe2RwKHRoaXMuVywiL2NsaWVudF9zdHJlYW16L2JnL3BvL2N0YXYiLG4sVyl9Tigpe3JldHVybiB0aGlzLlcuTigiL2NsaWVudF9zdHJlYW16L2JnL3BvL2N0YXYiKX19LFZ0aT1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLlc9bjt1ZShuLCIvY2xpZW50X3N0cmVhbXovYmcvcG8vY3dzYyIsYnAoInN1IiksYnAoIm1rIikpfUoobixXKXtkcCh0aGlzLlcsIi9jbGllbnRfc3RyZWFtei9iZy9wby9jd3NjIixuLFcpfU4oKXtyZXR1cm4gdGhpcy5XLk4oIi9jbGllbnRfc3RyZWFtei9iZy9wby9jd3NjIil9fSxjang9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5KPW47RXUobiwKIi9jbGllbnRfc3RyZWFtei9iZy9vZC9wIixicCgibWsiKSl9ZEUobixXKXt0aGlzLkouZEUoIi9jbGllbnRfc3RyZWFtei9iZy9vZC9wIixuLFcpfU4oKXtyZXR1cm4gdGhpcy5KLk4oIi9jbGllbnRfc3RyZWFtei9iZy9vZC9wIil9fSxhNnc9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5KPW47RXUobiwiL2NsaWVudF9zdHJlYW16L2JnL29kL24iLGJwKCJldCIpLGJwKCJtayIpKX1kRShuLFcsRCl7dGhpcy5KLmRFKCIvY2xpZW50X3N0cmVhbXovYmcvb2QvbiIsbixXLEQpfU4oKXtyZXR1cm4gdGhpcy5KLk4oIi9jbGllbnRfc3RyZWFtei9iZy9vZC9uIil9fTt2YXIgY1c9ITAsVjEsdjI7dmFyIEhxO0hxPU5pKDEsITApO2cucXg9TmkoNjEwNDAxMzAxLCExKTtOaSg4OTk1ODg0MzcsITEpO05pKDc3MjY1Nzc2OCwhMCk7TmkoNTEzNjU5NTIzLCExKTtOaSg1NjgzMzM5NDUsITApO05pKDEzMzE3NjE0MDMsITApO05pKDY1MTE3NTgyOCwhMSk7TmkoNzIyNzY0NTQyLCExKTtOaSg3NDg0MDIxNDUsITEpO05pKDc0ODQwMjE0NiwhMSk7dmFyIEF2PU5pKDc0ODQwMjE0NywhMCk7TmkoMTYwMjYxMzE4NSwhMSk7TmkoODYxMzc3NzIzLCExKTtOaSg4NjEzNzc3MjQsSHEpO05pKDg2OTMzNjkwMywhMSk7TmkoODgyNjc0NTA3LCExKTtOaSg4NjkzMzY5MDQsSHEpO05pKDg2OTMzNjkwNSxIcSk7TmkoMjgzOTUzMTU1LCExKTtOaSg5MTk0NDQ4MjQsITEpO05pKDkzMTQ2ODA0NywhMSk7TmkoOTI4ODc1Mzk4LCExKTtOaSg2ODM3NDkyMDEsITEpO05pKDIxNDc0ODM2NDQsITEpO05pKDIxNDc0ODM2NDUsITEpO05pKDIxNDc0ODM2NDYsSHEpO05pKDIxNDc0ODM2NDcsITApO2cuR2g9ISFnLnJyKCJ5dC5jb25maWdfLkVYUEVSSU1FTlRTX0ZMQUdTLmh0bWw1X2VuYWJsZV9jbGllbnRfaGludHNfb3ZlcnJpZGUiKTt2YXIgbnpiO256Yj1nLnFpLm5hdmlnYXRvcjtnLnQ0PW56Yj9uemIudXNlckFnZW50RGF0YXx8bnVsbDpudWxsO2cuT0FbIiAiXT1mdW5jdGlvbigpe307dmFyIHJjLG5yLHBRaixXVVosRDRpLGJpVSxYdyxmeDtyYz1OeCgpO2cua2g9c0EoKT8hMTpnLnJXKCJUcmlkZW50Iil8fGcuclcoIk1TSUUiKTtnLlJnPWcuclcoIkVkZ2UiKTtnLnNtPWcuUmd8fGcua2g7Zy5lUz1nLnJXKCJHZWNrbyIpJiYhKGcud3IoZy5YUSgpLCJXZWJLaXQiKSYmIWcuclcoIkVkZ2UiKSkmJiEoZy5yVygiVHJpZGVudCIpfHxnLnJXKCJNU0lFIikpJiYhZy5yVygiRWRnZSIpO2cuWmw9Zy53cihnLlhRKCksIldlYktpdCIpJiYhZy5yVygiRWRnZSIpO25yPWcubXgoKTtwUWo9Zy5LMCgpO2cuUUg9Zy5JMigpO1dVWj1TdSgpO0Q0aT1nLnJXKCJpUGFkIik7YmlVPWcuclcoImlQb2QiKTtYdz1nLkE0KCk7Zy5XWD1nLndyKGcuWFEoKSwiS2FpT1MiKTsKYTp7bGV0IG49IiIsVz1mdW5jdGlvbigpe3ZhciBEPWcuWFEoKTtpZihnLmVTKXJldHVybi9ydjooW15cKTtdKykoXCl8OykvLmV4ZWMoRCk7aWYoZy5SZylyZXR1cm4vRWRnZVwvKFtcZFwuXSspLy5leGVjKEQpO2lmKGcua2gpcmV0dXJuL1xiKD86TVNJRXxydilbOiBdKFteXCk7XSspKFwpfDspLy5leGVjKEQpO2lmKGcuWmwpcmV0dXJuL1dlYktpdFwvKFxTKykvLmV4ZWMoRCk7aWYocmMpcmV0dXJuLyg/OlZlcnNpb24pWyBcL10/KFxTKykvLmV4ZWMoRCl9KCk7ClcmJihuPVc/V1sxXToiIik7aWYoZy5raCl7dmFyIEpWO2xldCBEPWcucWkuZG9jdW1lbnQ7SlY9RD9ELmRvY3VtZW50TW9kZTp2b2lkIDA7aWYoSlYhPW51bGwmJkpWPnBhcnNlRmxvYXQobikpe2Z4PVN0cmluZyhKVik7YnJlYWsgYX19Zng9bn12YXIgUDI9ZngsaXR4PXt9O3ZhciB3OCxNWDtnLmFvPXAwKCk7dzg9U3UoKXx8Zy5yVygiaVBvZCIpO01YPWcuclcoImlQYWQiKTtnLkltPWcuclcoIkFuZHJvaWQiKSYmIShZSygpfHxwMCgpfHxOeCgpfHxnLnJXKCJTaWxrIikpO2cub2Q9WUsoKTtnLkduPWcuSDIoKSYmIWcuQTQoKTt2YXIgeWw9e30sVGg9bnVsbDt2YXIganU9L1stXy5dL2csZGlVPXsiLSI6IisiLF86Ii8iLCIuIjoiPSJ9LHdXPXt9O3ZhciBGUT1jbGFzc3tpc0VtcHR5KCl7cmV0dXJuIHRoaXMuTj09bnVsbH1zaXplQnl0ZXMoKXt2YXIgbj1RbCh0aGlzKTtyZXR1cm4gbj9uLmxlbmd0aDowfWNvbnN0cnVjdG9yKG4sVyl7UjIoVyk7dGhpcy5OPW47aWYobiE9bnVsbCYmbi5sZW5ndGg9PT0wKXRocm93IEVycm9yKCJCeXRlU3RyaW5nIHNob3VsZCBiZSBjb25zdHJ1Y3RlZCB3aXRoIG5vbi1lbXB0eSB2YWx1ZXMiKTt9fSxCMjt2YXIgYTI9dm9pZCAwO3ZhciBiND1XOSgiamFzIiwhMCksTG49VzkoKSxrOT1XOSgpLExHPVc5KCksUk1iPVc5KCksUUNpPVc5KCksRzRTPVc5KCksRFVpPVc5KCksdkg9VzkoIm1fbSIsITApLGNpVT1XOSgpLHFFPVc5KCk7Wy4uLk9iamVjdC52YWx1ZXMoe014OjEsRVk6MixHTDo0LFltOjgsalo6MTYsVFQ6MzIsUFE6NjQsTng6MTI4LGZoOjI1NixhTjo1MTIsYVU6MTAyNCxQbToyMDQ4LHI0OjQwOTYsYU86ODE5Mn0pXTt2YXIgenosdnp4PVtdO3Z6eFtiNF09Nzt6ej1PYmplY3QuZnJlZXplKHZ6eCk7dmFyIGt2PXt9LERCPXt9LEckPU9iamVjdC5mcmVlemUoe30pLFNvPXt9LHhVPXt9O3ZhciBZbyx3V2osa0N4O2cudF89cTMobj0+dHlwZW9mIG49PT0ibnVtYmVyIik7CmcuRzk9cTMobj0+dHlwZW9mIG49PT0ic3RyaW5nIik7CllvPXEzKG49Pm4hPW51bGwmJnR5cGVvZiBuPT09Im9iamVjdCImJnR5cGVvZiBuLnRoZW49PT0iZnVuY3Rpb24iKTsKd1dqPXEzKG49PnR5cGVvZiBuPT09ImZ1bmN0aW9uIik7CmtDeD1xMyhuPT4hIW4mJih0eXBlb2Ygbj09PSJvYmplY3QifHx0eXBlb2Ygbj09PSJmdW5jdGlvbiIpKTt2YXIgc0s9cTMobj0+bj49aDNqJiZuPD14NGopLGgzaj1CaWdJbnQoTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVIpLHg0aj1CaWdJbnQoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpO3ZhciByWj0wLHNfPTAsR3Y7dmFyIGRaPXR5cGVvZiBCaWdJbnQ9PT0iZnVuY3Rpb24iP0JpZ0ludC5hc0ludE46dm9pZCAwLEJyaD10eXBlb2YgQmlnSW50PT09ImZ1bmN0aW9uIj9CaWdJbnQuYXNVaW50Tjp2b2lkIDAsalg9TnVtYmVyLmlzU2FmZUludGVnZXIsUDk9TnVtYmVyLmlzRmluaXRlLFQ5PU1hdGgudHJ1bmMsbDEyPS9eLT8oWzEtOV1bMC05XSp8MCkoXC5bMC05XSspPyQvO3ZhciBhMVU9e307dmFyIFhGPWNsYXNze30sTVVpPXtKUzohMH07dmFyICR2O3ZhciBISCxmRzt2YXIgdjNpPWcuJFUoMCksZm49e307dmFyIE9WPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxEKXt0aGlzLmJ1ZmZlcj1uO2lmKEQmJiFXKXRocm93IEVycm9yKCk7dGhpcy5OPVd9fTt2YXIgTFVyPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxELGIpe3RoaXMuSj1udWxsO3RoaXMuVj0hMTt0aGlzLmo9bnVsbDt0aGlzLk49dGhpcy5XPXRoaXMuWD0wO3RoaXMuaW5pdChuLFcsRCxiKX1pbml0KG4sVyxELHtuXzpiPSExLGhCOnY9ITF9PXt9KXt0aGlzLm5fPWI7dGhpcy5oQj12O24mJihuPVBXKG4sdGhpcy5oQiksdGhpcy5KPW4uYnVmZmVyLHRoaXMuVj1uLk4sdGhpcy5qPW51bGwsdGhpcy5YPVd8fDAsdGhpcy5XPUQhPT12b2lkIDA/dGhpcy5YK0Q6dGhpcy5KLmxlbmd0aCx0aGlzLk49dGhpcy5YKX1mcmVlKCl7dGhpcy5jbGVhcigpO0FWLmxlbmd0aDwxMDAmJkFWLnB1c2godGhpcyl9Y2xlYXIoKXt0aGlzLko9bnVsbDt0aGlzLlY9ITE7dGhpcy5qPW51bGw7dGhpcy5OPXRoaXMuVz10aGlzLlg9MDt0aGlzLm5fPSExfXJlc2V0KCl7dGhpcy5OPXRoaXMuWH19LEFWPVtdO3ZhciBSWT0wLGhCUz1jbGFzc3tjb25zdHJ1Y3RvcihuLFcsRCxiKXtpZihBVi5sZW5ndGgpe2xldCB2PUFWLnBvcCgpO3YuaW5pdChuLFcsRCxiKTtuPXZ9ZWxzZSBuPW5ldyBMVXIobixXLEQsYik7dGhpcy5OPW47dGhpcy5YPXRoaXMuTi5OO3RoaXMuSj10aGlzLlc9LTE7akUodGhpcyxiKX1mcmVlKCl7dGhpcy5OLmNsZWFyKCk7dGhpcy5KPXRoaXMuVz0tMTtUJC5sZW5ndGg8MTAwJiZUJC5wdXNoKHRoaXMpfXJlc2V0KCl7dGhpcy5OLnJlc2V0KCk7dGhpcy5YPXRoaXMuTi5OO3RoaXMuSj10aGlzLlc9LTF9fSxUJD1bXTt2YXIgZTNyPWNsYXNze2NvbnN0cnVjdG9yKCl7aWYoU28hPT1Tbyl0aHJvdyBFcnJvcigpO319O3ZhciB2eT1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuSj1uPj4+MDt0aGlzLk49Vz4+PjB9fSxoMyxlQz1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuSj1uPj4+MDt0aGlzLk49Vz4+PjB9fSxnRyxyRyxOZixwaCwkbSx0MyxxZixHUzt2YXIgZ3pNPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5OPVtdfWxlbmd0aCgpe3JldHVybiB0aGlzLk4ubGVuZ3RofWVuZCgpe3ZhciBuPXRoaXMuTjt0aGlzLk49W107cmV0dXJuIG59fTt2YXIgWCQyPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5XPVtdO3RoaXMuSj0wO3RoaXMuTj1uZXcgZ3pNfX07dmFyIGxHLHEzWixtNyxHQzIsdDJoLCQ0aSxyWEMsUHEsc2YyLE5NVSxwJFU7bEc9b3goKTtxM1o9b3goKTttNz1veCgpO2cuS3g9b3goKTtHQzI9b3goKTt0Mmg9b3goKTskNGk9b3goKTtnLk82PW94KCk7clhDPW94KCk7UHE9b3goKTtzZjI9b3goKTtnLlpGPW94KCk7Tk1VPW94KCk7cCRVPW94KCk7Zy5RbT1jbGFzc3tjb25zdHJ1Y3RvcihuLFcsRCl7dGhpcy5sOT1KdihuLFcsRCwyMDQ4KX10b0pTT04oKXtyZXR1cm4gWXYodGhpcyl9Ylkobil7cmV0dXJuIEpTT04uc3RyaW5naWZ5KFl2KHRoaXMsbikpfWNsb25lKCl7dmFyIG49dGhpcy5sOSxXPW5bYjRdfDA7cmV0dXJuIEtHKHRoaXMsbixXKT9PSyh0aGlzLG4sITApOm5ldyB0aGlzLmNvbnN0cnVjdG9yKG1fKG4sVywhMSkpfX07Zy5RbS5wcm90b3R5cGVbdkhdPWt2O2cuUW0ucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubDkudG9TdHJpbmcoKX07dmFyIHpTPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxEKXt0aGlzLmNqPW47dGhpcy5Qaj1XO249RXcobEcpO3RoaXMuTj0hIW4mJkQ9PT1ufHwhMX19LExjdD1UUyhmdW5jdGlvbihuLFcsRCxiLHYpe2lmKG4uSiE9PTIpcmV0dXJuITE7UTEobixoUyhXLGIsRCksdik7cmV0dXJuITB9LENoKSxlQnQ9VFMoZnVuY3Rpb24obixXLEQsYix2KXtpZihuLkohPT0yKXJldHVybiExOwpRMShuLGhTKFcsYixEKSx2KTtyZXR1cm4hMH0sQ2gpLHZPPVN5bWJvbCgpLGN5PVN5bWJvbCgpLFdPPVN5bWJvbCgpLHhuPVN5bWJvbCgpLEQ4PVN5bWJvbCgpLEJ5LEZ0O3ZhciBTNixVNix5cCxZM0MsaVUsSGl3LGZxdyx1VSx6ZyxsVSxUZyxqbyxKWFMsSXFqO1M2PShuLFcpPT57dmFyIEQ9bmV3IFgkMjtMOChuLmw5LEQsd0codk8sYjYsa24sVykpO0EzKEQsRC5OLmVuZCgpKTtuPW5ldyBVaW50OEFycmF5KEQuSik7Vz1ELlc7dmFyIGI9Vy5sZW5ndGgsdj0wO2ZvcihsZXQgaz0wO2s8YjtrKyspe2xldCBoPVdba107bi5zZXQoaCx2KTt2Kz1oLmxlbmd0aH1ELlc9W25dO3JldHVybiBufTsKVTY9Zy5nUShmdW5jdGlvbihuLFcsRCl7aWYobi5KIT09MSlyZXR1cm4hMTtnLnFZKFcsRCxnLmRlKG4uTikpO3JldHVybiEwfSxnLnQ5LGcuWkYpOwp5cD1nLmdRKGZ1bmN0aW9uKG4sVyxEKXtpZihuLkohPT01KXJldHVybiExO3ZhciBiPXVhKG4uTik7bj0oYj4+MzEpKjIrMTt2YXIgdj1iPj4+MjMmMjU1O2ImPTgzODg2MDc7Zy5xWShXLEQsdj09MjU1P2I/TmFOOm4qSW5maW5pdHk6dj09MD9uKjEuNDAxMjk4NDY0MzI0ODE3RS00NSpiOm4qTWF0aC5wb3coMix2LTE1MCkqKGIrODM4ODYwOCkpO3JldHVybiEwfSxmdW5jdGlvbihuLFcsRCl7Vz1tMChXKTsKVyE9bnVsbCYmKG00KG4sRCw1KSxuPW4uTixEPUd2fHwoR3Y9bmV3IERhdGFWaWV3KG5ldyBBcnJheUJ1ZmZlcig4KSkpLEQuc2V0RmxvYXQzMigwLCtXLCEwKSxzXz0wLHJaPUQuZ2V0VWludDMyKDAsITApLEozKG4sclopKX0sc2YyKTsKZy5FNj1nLmdRKGZ1bmN0aW9uKG4sVyxEKXtuLkohPT0wP249ITE6KGcucVkoVyxELGcuVVYobi5OLGcuSl8pKSxuPSEwKTtyZXR1cm4gbn0sZy4kbixnLk82KTsKWTNDPWcuZ1EoZnVuY3Rpb24obixXLEQpe24uSiE9PTA/bj0hMTooZy5xWShXLEQsZy5VVihuLk4sZjUpKSxuPSEwKTtyZXR1cm4gbn0sZnVuY3Rpb24obixXLEQpe1c9YTAoVyk7CmlmKFchPW51bGwmJihQeShXKSxXIT1udWxsKSlzd2l0Y2gobTQobixELDApLHR5cGVvZiBXKXtjYXNlICJudW1iZXIiOm49bi5OO3A1KFcpO0h5KG4sclosc18pO2JyZWFrO2Nhc2UgImJpZ2ludCI6RD1ZbShXLHZ5LGttKTtIeShuLk4sRC5KLEQuTik7YnJlYWs7ZGVmYXVsdDpEPXhtKFcpLEh5KG4uTixELkosRC5OKX19LHJYQyk7CmlVPWcuZ1EoZnVuY3Rpb24obixXLEQpe2lmKG4uSiE9PTApcmV0dXJuITE7Zy5xWShXLEQsZy5FVihuLk4pKTtyZXR1cm4hMH0sZy5yUSxnLkt4KTsKSGl3PWcuZ1EoZnVuY3Rpb24obixXLEQpe3JldHVybiBKOShuLFcsRCl9LGZ1bmN0aW9uKG4sVyxEKXtXPWEwKFcpOwppZihXIT1udWxsKXN3aXRjaCh1RyhXKSxtNChuLEQsMSksbj1uLk4sdUcoVyksdHlwZW9mIFcpe2Nhc2UgIm51bWJlciI6VzwwPyhXPUxoKGttKC1XKSksRD1XLk4sSjMobixXLkopLEozKG4sRCkpOihOMyhXKSxKMyhuLHJaKSxKMyhuLHNfKSk7YnJlYWs7Y2FzZSAiYmlnaW50IjpXPVc8QmlnSW50KDApP0xoKFltKC1XLHZ5LGttKSk6WW0oVyx2eSxrbSk7RD1XLk47SjMobixXLkopO0ozKG4sRCk7YnJlYWs7ZGVmYXVsdDpXPVcubGVuZ3RoJiZXWzBdPT09Ii0iP0xoKHhtKFcuc3Vic3RyaW5nKDEpKSk6eG0oVyksRD1XLk4sSjMobixXLkopLEozKG4sRCl9fSxQcSk7CmZxdz1nLmdRKGZ1bmN0aW9uKG4sVyxEKXtpZihuLkohPT01KXJldHVybiExO2cucVkoVyxELHVhKG4uTikpO3JldHVybiEwfSxmdW5jdGlvbihuLFcsRCl7Vz11NChXKTsKVyE9bnVsbCYmKG00KG4sRCw1KSxKMyhuLk4sVykpfSx0MmgpOwp1VT1nLmdRKGZ1bmN0aW9uKG4sVyxEKXtpZihuLkohPT0wKXJldHVybiExO2cucVkoVyxELHkxKG4uTikpO3JldHVybiEwfSxzZixxM1opOwpnLm9tPWcuZ1EoZnVuY3Rpb24obixXLEQpe2lmKG4uSiE9PTIpcmV0dXJuITE7Zy5xWShXLEQsYVkobikpO3JldHVybiEwfSxOWSxtNyk7CmcuZHE9ZnVuY3Rpb24obixXLEQ9bEcpe3JldHVybiBuZXcgelMobixXLEQpfShmdW5jdGlvbihuLFcsRCxiLHYpe2lmKG4uSiE9PTIpcmV0dXJuITE7CmI9U1codm9pZCAwLGIpO2NIKFcsV1tiNF18MCxEKS5wdXNoKGIpO1ExKG4sYix2KTtyZXR1cm4hMH0sZnVuY3Rpb24obixXLEQsYix2KXtpZihBcnJheS5pc0FycmF5KFcpKXtmb3IobGV0IGs9MDtrPFcubGVuZ3RoO2srKylwOChuLFdba10sRCxiLHYpOwpuPVdbYjRdfDA7biYxfHwoV1tiNF09bnwxKX19KTsKemc9VFMoZnVuY3Rpb24obixXLEQsYix2LGspe2lmKG4uSiE9PTIpcmV0dXJuITE7dmFyIGg9V1tiNF18MDtXVyhXLGgsayxELEw1KGgpKTtXPWhTKFcsYixEKTtRMShuLFcsdik7cmV0dXJuITB9LHA4KTsKbFU9Zy5nUShmdW5jdGlvbihuLFcsRCl7aWYobi5KIT09MilyZXR1cm4hMTtnLnFZKFcsRCxEOShuKSk7cmV0dXJuITB9LGZ1bmN0aW9uKG4sVyxEKXtXPW5HKFcpOwpXIT1udWxsJiZpRyhuLEQsUFcoVywhMCkuYnVmZmVyKX0sTk1VKTsKVGc9WGYoZnVuY3Rpb24obixXLEQpe2lmKG4uSiE9PTIpcmV0dXJuITE7bj1EOShuKTtjSChXLFdbYjRdfDAsRCkucHVzaChuKTtyZXR1cm4hMH0sZnVuY3Rpb24obixXLEQpe1c9ZTYobkcsVywhMSk7CmlmKFchPW51bGwpZm9yKGxldCBoPTA7aDxXLmxlbmd0aDtoKyspe3ZhciBiPW4sdj1ELGs9V1toXTtrIT1udWxsJiZpRyhiLHYsUFcoaywhMCkuYnVmZmVyKX19LE5NVSk7CmpvPWcuZ1EoZnVuY3Rpb24obixXLEQpe2lmKG4uSiE9PTApcmV0dXJuITE7Zy5xWShXLEQsZy5FVihuLk4pPj4+MCk7cmV0dXJuITB9LGZ1bmN0aW9uKG4sVyxEKXtXPXU0KFcpOwpXIT1udWxsJiZXIT1udWxsJiYobTQobixELDApLEl4KG4uTixXKSl9LEdDMik7CmcuQ3g9Zy5nUShmdW5jdGlvbihuLFcsRCl7aWYobi5KIT09MClyZXR1cm4hMTtnLnFZKFcsRCxnLkVWKG4uTikpO3JldHVybiEwfSxmdW5jdGlvbihuLFcsRCl7RXMobixELEVfKFcpKX0scCRVKTsKSlhTPVhmKGZ1bmN0aW9uKG4sVyxEKXtpZihuLkohPT0wJiZuLkohPT0yKXJldHVybiExO1c9Y0goVyxXW2I0XXwwLEQpO24uSj09Mj9iRyhuLGs0MixXKTpXLnB1c2goZy5FVihuLk4pKTtyZXR1cm4hMH0sZnVuY3Rpb24obixXLEQpe1c9ZTYoRV8sVywhMCk7CmlmKFchPW51bGwpZm9yKGxldCBiPTA7YjxXLmxlbmd0aDtiKyspRXMobixELFdbYl0pfSxwJFUpOwpJcWo9Zy5nUShmdW5jdGlvbihuLFcsRCl7aWYobi5KIT09NSlyZXR1cm4hMTtuPW4uTjt2YXIgYj1uLkosdj1uLk4saz1iW3YrMF0saD1iW3YrMV0seD1iW3YrMl07Yj1iW3YrM107aWEobiw0KTtnLnFZKFcsRCxrPDwwfGg8PDh8eDw8MTZ8Yjw8MjQpO3JldHVybiEwfSxmdW5jdGlvbihuLFcsRCl7Vz1FXyhXKTsKVyE9bnVsbCYmKG00KG4sRCw1KSxuPW4uTixuLk4ucHVzaChXPj4+MCYyNTUpLG4uTi5wdXNoKFc+Pj44JjI1NSksbi5OLnB1c2goVz4+PjE2JjI1NSksbi5OLnB1c2goVz4+PjI0JjI1NSkpfSwkNGkpO3ZhciBTMzE9bmV3IE1hcCxBWHg9Y2xhc3MgZXh0ZW5kcyBlM3J7Y29uc3RydWN0b3IobixXKXtzdXBlcigpO3RoaXMudHlwZU5hbWU9bjt0aGlzLk49VztpZihTbyE9PVNvKXRocm93IEVycm9yKCk7UzMxLnNldChuLHRoaXMpfX07dmFyIG00Wj1jbGFzc3tjb25zdHJ1Y3RvcihuLFcsRCl7dGhpcy5OPW47dGhpcy5KPUQ7dGhpcy5pc1JlcGVhdGVkPTA7dGhpcy5YPWdlO3RoaXMuZGVmYXVsdFZhbHVlPXZvaWQgMDt0aGlzLlc9Vy5tZXNzYWdlSWQhPW51bGw/eFU6dm9pZCAwfXJlZ2lzdGVyKCl7Zy5PQSh0aGlzKX19O3ZhciBjRlo9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIEVmPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19LGk2PVsxLDIsM107dmFyIFo4PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19LFVmPVsxLDIsM107dmFyIHllPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBLVUM9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIE9peD1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fSxQWmg9WzEsMiwzXTtnLk9mPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O2cuT2YucHJvdG90eXBlLkpoPVdaKDApO2cuT2YucHJvdG90eXBlLko9Zy5tRChbMCxnLm9tLFswLFBaaCx6ZyxbMCxnLm9tLC0xLHVVXSx6ZyxbMCxnLm9tLC0xLGlVLHVVXSx6ZyxbMCxnLm9tXV0sWGYoZnVuY3Rpb24obixXLEQpe2lmKG4uSiE9PTIpcmV0dXJuITE7bj1hWShuKTtjSChXLFdbYjRdfDAsRCkucHVzaChuKTtyZXR1cm4hMH0sZnVuY3Rpb24obixXLEQpe1c9ZTYoZy5EUixXLCEwKTsKaWYoVyE9bnVsbClmb3IobGV0IGg9MDtoPFcubGVuZ3RoO2grKyl7dmFyIGI9bix2PUQsaz1XW2hdO2shPW51bGwmJmlHKGIsdixrSyhrKSl9fSxtNyksCmcuZHEsWzAsZy5kcSxbMCxpNixnLmdRKGZ1bmN0aW9uKG4sVyxELGIpe2lmKG4uSiE9PTIpcmV0dXJuITE7YmEoVyxELGIsYVkobikpO3JldHVybiEwfSxOWSxtNyksCmcuZ1EoZnVuY3Rpb24obixXLEQsYil7aWYobi5KIT09MClyZXR1cm4hMTtiYShXLEQsYixnLkVWKG4uTikpO3JldHVybiEwfSxnLnJRLGcuS3gpLApnLmdRKGZ1bmN0aW9uKG4sVyxELGIpe2lmKG4uSiE9PTApcmV0dXJuITE7YmEoVyxELGIseTEobi5OKSk7cmV0dXJuITB9LHNmLHEzWildLApbMCxVZixnLmdRKGZ1bmN0aW9uKG4sVyxELGIpe24uSiE9PTA/bj0hMTooYmEoVyxELGIsZy5VVihuLk4sZy5KXykpLG49ITApO3JldHVybiBufSxnLiRuLGcuTzYpLApnLmdRKGZ1bmN0aW9uKG4sVyxELGIpe2lmKG4uSiE9PTEpcmV0dXJuITE7YmEoVyxELGIsZy5kZShuLk4pKTtyZXR1cm4hMH0sZy50OSxnLlpGKSwKemcsWzAsZy5kcSxbMCxVNixnLkU2XV1dXSxnLmdRKGZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gSjkobixXLEQpfSxmdW5jdGlvbihuLFcsRCl7eW0obixELGEwKFcpKX0sUHEpLApYZihmdW5jdGlvbihuLFcsRCl7bi5KIT09MSYmbi5KIT09Mj9uPSExOihXPWNIKFcsV1tiNF18MCxEKSxuLko9PTI/YkcobixvWSxXKTpXLnB1c2gob1kobi5OKSksbj0hMCk7cmV0dXJuIG59LGZ1bmN0aW9uKG4sVyxEKXtXPWU2KGEwLFcsITEpOwppZihXIT1udWxsKWZvcihsZXQgYj0wO2I8Vy5sZW5ndGg7YisrKXltKG4sRCxXW2JdKX0sUHEpXSk7dmFyIFppeD1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTtnLkU9bDYucHJvdG90eXBlO2cuRS5pc0VuYWJsZWQ9ZnVuY3Rpb24oKXtpZighZy5xaS5uYXZpZ2F0b3IuY29va2llRW5hYmxlZClyZXR1cm4hMTtpZighdGhpcy5pc0VtcHR5KCkpcmV0dXJuITA7dGhpcy5zZXQoIlRFU1RDT09LSUVTRU5BQkxFRCIsIjEiLHtuejo2MH0pO2lmKHRoaXMuZ2V0KCJURVNUQ09PS0lFU0VOQUJMRUQiKSE9PSIxIilyZXR1cm4hMTt0aGlzLnJlbW92ZSgiVEVTVENPT0tJRVNFTkFCTEVEIik7cmV0dXJuITB9OwpnLkUuc2V0PWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj0hMTtpZih0eXBlb2YgRD09PSJvYmplY3QiKXt2YXIgdj1ELnNhbWVTaXRlO2I9RC5zZWN1cmV8fCExO3ZhciBrPUQuZG9tYWlufHx2b2lkIDA7dmFyIGg9RC5wYXRofHx2b2lkIDA7dmFyIHg9RC5uen1pZigvWzs9XHNdLy50ZXN0KG4pKXRocm93IEVycm9yKCdJbnZhbGlkIGNvb2tpZSBuYW1lICInK24rJyInKTtpZigvWztcclxuXS8udGVzdChXKSl0aHJvdyBFcnJvcignSW52YWxpZCBjb29raWUgdmFsdWUgIicrVysnIicpO3g9PT12b2lkIDAmJih4PS0xKTtEPWs/Ijtkb21haW49IitrOiIiO2g9aD8iO3BhdGg9IitoOiIiO2I9Yj8iO3NlY3VyZSI6IiI7eD14PDA/IiI6eD09MD8iO2V4cGlyZXM9IisobmV3IERhdGUoMTk3MCwxLDEpKS50b1VUQ1N0cmluZygpOiI7ZXhwaXJlcz0iKyhuZXcgRGF0ZShEYXRlLm5vdygpK3gqMUUzKSkudG9VVENTdHJpbmcoKTt0aGlzLk4uY29va2llPW4rIj0iK1crRCtoK3grYisodiE9bnVsbD8KIjtzYW1lc2l0ZT0iK3Y6IiIpfTsKZy5FLmdldD1mdW5jdGlvbihuLFcpe3ZhciBEPW4rIj0iLGI9KHRoaXMuTi5jb29raWV8fCIiKS5zcGxpdCgiOyIpO2ZvcihsZXQgdj0wLGs7djxiLmxlbmd0aDt2Kyspe2s9Ylt2XS50cmltKCk7aWYoay5sYXN0SW5kZXhPZihELDApPT0wKXJldHVybiBrLnNsaWNlKEQubGVuZ3RoKTtpZihrPT1uKXJldHVybiIifXJldHVybiBXfTsKZy5FLnJlbW92ZT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9dGhpcy5nZXQobikhPT12b2lkIDA7dGhpcy5zZXQobiwiIix7bno6MCxwYXRoOlcsZG9tYWluOkR9KTtyZXR1cm4gYn07CmcuRS51Qj1mdW5jdGlvbigpe3JldHVybiBUdih0aGlzKS5rZXlzfTsKZy5FLno3PWZ1bmN0aW9uKCl7cmV0dXJuIFR2KHRoaXMpLnZhbHVlc307CmcuRS5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIXRoaXMuTi5jb29raWV9OwpnLkUuY2xlYXI9ZnVuY3Rpb24oKXt2YXIgbj1Udih0aGlzKS5rZXlzO2ZvcihsZXQgVz1uLmxlbmd0aC0xO1c+PTA7Vy0tKXRoaXMucmVtb3ZlKG5bV10pfTsKdmFyIEp5PW5ldyBsNih0eXBlb2YgZG9jdW1lbnQ9PSJ1bmRlZmluZWQiP251bGw6ZG9jdW1lbnQpO3ZhciBVNHg9Y2xhc3N7YXN5bmMgY29tcHJlc3Mobil7dmFyIFc9bmV3IENvbXByZXNzaW9uU3RyZWFtKCJnemlwIiksRD0obmV3IFJlc3BvbnNlKFcucmVhZGFibGUpKS5hcnJheUJ1ZmZlcigpO1c9Vy53cml0YWJsZS5nZXRXcml0ZXIoKTthd2FpdCBXLndyaXRlKChuZXcgVGV4dEVuY29kZXIpLmVuY29kZShuKSk7YXdhaXQgVy5jbG9zZSgpO3JldHVybiBuZXcgVWludDhBcnJheShhd2FpdCBEKX1pc1N1cHBvcnRlZChuKXtyZXR1cm4gbjwxMDI0PyExOnR5cGVvZiBDb21wcmVzc2lvblN0cmVhbSE9PSJ1bmRlZmluZWQifX07dmFyIHlYTT1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTt2YXIgRXppPWNsYXNze2NvbnN0cnVjdG9yKG4sVyl7dGhpcy5pbnRlcnZhbE1zPW47dGhpcy5jYWxsYmFjaz1XO3RoaXMuZW5hYmxlZD0hMTt0aGlzLk49KCk9PmcuVXcoKTsKdGhpcy5KPXRoaXMuTigpfXNldEludGVydmFsKG4pe3RoaXMuaW50ZXJ2YWxNcz1uO3RoaXMudGltZXImJnRoaXMuZW5hYmxlZD8odGhpcy5zdG9wKCksdGhpcy5zdGFydCgpKTp0aGlzLnRpbWVyJiZ0aGlzLnN0b3AoKX1zdGFydCgpe3RoaXMuZW5hYmxlZD0hMDt0aGlzLnRpbWVyfHwodGhpcy50aW1lcj1zZXRUaW1lb3V0KCgpPT57dGhpcy50aWNrKCl9LHRoaXMuaW50ZXJ2YWxNcyksdGhpcy5KPXRoaXMuTigpKX1zdG9wKCl7dGhpcy5lbmFibGVkPSExOwp0aGlzLnRpbWVyJiYoY2xlYXJUaW1lb3V0KHRoaXMudGltZXIpLHRoaXMudGltZXI9dm9pZCAwKX10aWNrKCl7aWYodGhpcy5lbmFibGVkKXtsZXQgbj1NYXRoLm1heCh0aGlzLk4oKS10aGlzLkosMCk7bjx0aGlzLmludGVydmFsTXMqLjg/dGhpcy50aW1lcj1zZXRUaW1lb3V0KCgpPT57dGhpcy50aWNrKCl9LHRoaXMuaW50ZXJ2YWxNcy1uKToodGhpcy50aW1lciYmKGNsZWFyVGltZW91dCh0aGlzLnRpbWVyKSx0aGlzLnRpbWVyPXZvaWQgMCksdGhpcy5jYWxsYmFjaygpLHRoaXMuZW5hYmxlZCYmKHRoaXMuc3RvcCgpLHRoaXMuc3RhcnQoKSkpfWVsc2UgdGhpcy50aW1lcj12b2lkIDB9fTt2YXIgaWl4PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciB1R2I9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07Zy5FPWcuTVkucHJvdG90eXBlO2cuRS5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBuZXcgZy5NWSh0aGlzLngsdGhpcy55KX07CmcuRS5lcXVhbHM9ZnVuY3Rpb24obil7cmV0dXJuIG4gaW5zdGFuY2VvZiBnLk1ZJiZSXyh0aGlzLG4pfTsKZy5FLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLng9TWF0aC5jZWlsKHRoaXMueCk7dGhpcy55PU1hdGguY2VpbCh0aGlzLnkpO3JldHVybiB0aGlzfTsKZy5FLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGguZmxvb3IodGhpcy54KTt0aGlzLnk9TWF0aC5mbG9vcih0aGlzLnkpO3JldHVybiB0aGlzfTsKZy5FLnJvdW5kPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGgucm91bmQodGhpcy54KTt0aGlzLnk9TWF0aC5yb3VuZCh0aGlzLnkpO3JldHVybiB0aGlzfTsKZy5FLnNjYWxlPWZ1bmN0aW9uKG4sVyl7dGhpcy54Kj1uO3RoaXMueSo9dHlwZW9mIFc9PT0ibnVtYmVyIj9XOm47cmV0dXJuIHRoaXN9O2cuRT1nLlFlLnByb3RvdHlwZTtnLkUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGcuUWUodGhpcy53aWR0aCx0aGlzLmhlaWdodCl9OwpnLkUuYXNwZWN0UmF0aW89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy53aWR0aC90aGlzLmhlaWdodH07CmcuRS5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIWNPKHRoaXMpfTsKZy5FLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLndpZHRoPU1hdGguY2VpbCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmNlaWwodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTsKZy5FLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLmZsb29yKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGguZmxvb3IodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTsKZy5FLnJvdW5kPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLnJvdW5kKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGgucm91bmQodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTsKZy5FLnNjYWxlPWZ1bmN0aW9uKG4sVyl7dGhpcy53aWR0aCo9bjt0aGlzLmhlaWdodCo9dHlwZW9mIFc9PT0ibnVtYmVyIj9XOm47cmV0dXJuIHRoaXN9O3ZhciBwVD0iY29uc3RydWN0b3IgaGFzT3duUHJvcGVydHkgaXNQcm90b3R5cGVPZiBwcm9wZXJ0eUlzRW51bWVyYWJsZSB0b0xvY2FsZVN0cmluZyB0b1N0cmluZyB2YWx1ZU9mIi5zcGxpdCgiICIpO3ZhciAkQj1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuTj1uPT09cksmJld8fCIifXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuTn19LHJLPXt9O25ldyAkQihySywiIik7dmFyIE8wPXtjZWxscGFkZGluZzoiY2VsbFBhZGRpbmciLGNlbGxzcGFjaW5nOiJjZWxsU3BhY2luZyIsY29sc3BhbjoiY29sU3BhbiIsZnJhbWVib3JkZXI6ImZyYW1lQm9yZGVyIixoZWlnaHQ6ImhlaWdodCIsbWF4bGVuZ3RoOiJtYXhMZW5ndGgiLG5vbmNlOiJub25jZSIscm9sZToicm9sZSIscm93c3Bhbjoicm93U3BhbiIsdHlwZToidHlwZSIsdXNlbWFwOiJ1c2VNYXAiLHZhbGlnbjoidkFsaWduIix3aWR0aDoid2lkdGgifTtnLkU9ZlQucHJvdG90eXBlO2cuRS5lXz1mdW5jdGlvbigpe3JldHVybiBBSyh0aGlzLk4pfTsKZy5FLmdldEVsZW1lbnRzQnlUYWdOYW1lPWZ1bmN0aW9uKG4sVyl7cmV0dXJuKFd8fHRoaXMuTikuZ2V0RWxlbWVudHNCeVRhZ05hbWUoU3RyaW5nKG4pKX07CmcuRS5CSj1mdW5jdGlvbihuKXtyZXR1cm4gZy5LVChuLHRoaXMuTil9OwpnLkUuY3JlYXRlRWxlbWVudD1mdW5jdGlvbihuKXtyZXR1cm4gdWsodGhpcy5OLG4pfTsKZy5FLmFwcGVuZENoaWxkPWZ1bmN0aW9uKG4sVyl7bi5hcHBlbmRDaGlsZChXKX07CmcuRS5hcHBlbmQ9ZnVuY3Rpb24obixXKXtvaChnLkpLKG4pLG4sYXJndW1lbnRzLDEpfTsKZy5FLmNhbkhhdmVDaGlsZHJlbj1mdW5jdGlvbihuKXtpZihuLm5vZGVUeXBlIT0xKXJldHVybiExO3N3aXRjaChuLnRhZ05hbWUpe2Nhc2UgIkFQUExFVCI6Y2FzZSAiQVJFQSI6Y2FzZSAiQkFTRSI6Y2FzZSAiQlIiOmNhc2UgIkNPTCI6Y2FzZSAiQ09NTUFORCI6Y2FzZSAiRU1CRUQiOmNhc2UgIkZSQU1FIjpjYXNlICJIUiI6Y2FzZSAiSU1HIjpjYXNlICJJTlBVVCI6Y2FzZSAiSUZSQU1FIjpjYXNlICJJU0lOREVYIjpjYXNlICJLRVlHRU4iOmNhc2UgIkxJTksiOmNhc2UgIk5PRlJBTUVTIjpjYXNlICJOT1NDUklQVCI6Y2FzZSAiTUVUQSI6Y2FzZSAiT0JKRUNUIjpjYXNlICJQQVJBTSI6Y2FzZSAiU0NSSVBUIjpjYXNlICJTT1VSQ0UiOmNhc2UgIlNUWUxFIjpjYXNlICJUUkFDSyI6Y2FzZSAiV0JSIjpyZXR1cm4hMX1yZXR1cm4hMH07CmcuRS5yZW1vdmVOb2RlPWcuQ1Q7Zy5FLmNvbnRhaW5zPWcuQng7Zy5FLmlzRm9jdXNhYmxlPU1jO3ZhciBvek09Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfUdZKCl7cmV0dXJuIEhXKHRoaXMsMSl9fTt2YXIgVlE9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIGJJPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19LGY0Mj1LOChiSSk7dmFyIGtFPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBjeD1bInBsYXRmb3JtIiwicGxhdGZvcm1WZXJzaW9uIiwiYXJjaGl0ZWN0dXJlIiwibW9kZWwiLCJ1YUZ1bGxWZXJzaW9uIl0sUVE9bmV3IGJJLGFoPW51bGw7dmFyIFdMPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBkNGg9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIHozdD1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobiw0KX19O3ZhciBCcT1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobiwzNyl9Uygpe3ZhciBuPXRoaXMubDk7cmV0dXJuIHg5KG4sbltiNF18MCxkNGgsNykhPT12b2lkIDB9fTt2YXIgbHF0PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuLDE5KX1hVihuKXtyZXR1cm4gS24odGhpcywyLG4pfX07dmFyIFRNQz1jbGFzc3tjb25zdHJ1Y3RvcihuLFc9ITEpe3RoaXMuZ1I9Vzt0aGlzLnVhY2g9dGhpcy5sb2NhbGU9bnVsbDt0aGlzLko9MDt0aGlzLmlzRmluYWw9ITE7dGhpcy5OPW5ldyBscXQ7TnVtYmVyLmlzSW50ZWdlcihuKSYmdGhpcy5OLmFWKG4pO1d8fCh0aGlzLmxvY2FsZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJsYW5nIikpO3ZMKHRoaXMsbmV3IFdMKX1hVihuKXt0aGlzLk4uYVYobik7cmV0dXJuIHRoaXN9YnVpbGQobixXPTAsRD0wLGI9bnVsbCx2PTAsaz0wKXtpZighdGhpcy5nUil7dmFyIGg9REQodGhpcyk7dmFyIHg9bmV3IG96TTt4PUtuKHgsMSx0aGlzLkopO3g9b3ooeCwyLE9fKHRoaXMuaXNGaW5hbCkpO0Q9b3ooeCwzLGcueVAoRD4wP0Q6dm9pZCAwKSk7dj1veihELDQsZy55UCh2PjA/djp2b2lkIDApKTtrPW96KHYsNSxnLnlQKGs+MD9rOnZvaWQgMCkpO3Y9ay5sOTtEPXZbYjRdfDA7az12OShrLEQpP2s6S0coayx2LEQpP09LKGssCnYpOm5ldyBrLmNvbnN0cnVjdG9yKG1fKHYsRCwhMCkpOyQ5KGgsb3pNLDEwLGspfWg9dGhpcy5OLmNsb25lKCk7az1EYXRlLm5vdygpLnRvU3RyaW5nKCk7aD1veihoLDQsZy5sNChrKSk7bj1uLnNsaWNlKCk7bj1zVihoLEJxLDMsbik7YiYmKGg9bmV3IGlpeCxiPW96KGgsMTMsZy55UChiKSksaD1uZXcgdUdiLGI9JDkoaCxpaXgsMixiKSxoPW5ldyB6M3QsYj0kOShoLHVHYiwxLGIpLGI9S24oYiwyLDkpLCQ5KG4sejN0LDE4LGIpKTtXJiZJWShuLDE0LFcpO3JldHVybiBufX07dmFyIEdBO0dBPWcuWmw/IndlYmtpdFRyYW5zaXRpb25FbmQiOiJ0cmFuc2l0aW9uZW5kIjtnLmhILnByb3RvdHlwZS5KPTA7Zy5oSC5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt0aGlzLk49dGhpcy5XPXRoaXMuWDt0aGlzLko9MH07CmcuaEgucHJvdG90eXBlLmdldFZhbHVlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuV307dmFyIGpmdz1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobiw4KX19LENaaD1LOChqZncpO3ZhciBGUDtGUD1uZXcgbTRaKDE3NTIzNzM3NSxqZncsY2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX0pO3ZhciBCTVo9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKG4pe3N1cGVyKCk7dGhpcy5jb21wb25lbnRJZD0iIjt0aGlzLk49W107dGhpcy5WUT0iIjt0aGlzLnBhZ2VJZD1udWxsO3RoaXMuZSQ9dGhpcy50dz0tMTt0aGlzLks9dGhpcy5leHBlcmltZW50SWRzPW51bGw7dGhpcy5PPXRoaXMuY0o9dGhpcy5WPXRoaXMuWD0wO3RoaXMuSEo9MTt0aGlzLnRpbWVvdXRNaWxsaXM9MDt0aGlzLmJkPSExO3RoaXMubG9nU291cmNlPW4ubG9nU291cmNlO3RoaXMubjE9bi5uMXx8KCgpPT57fSk7CnRoaXMuVz1uZXcgVE1DKG4ubG9nU291cmNlLG4uZ1IpO3RoaXMubmV0d29yaz1uLm5ldHdvcmt8fG51bGw7dGhpcy5QZz1uLlBnfHxudWxsO3RoaXMuWT1uLmN1fHxudWxsO3RoaXMuc2Vzc2lvbkluZGV4PW4uc2Vzc2lvbkluZGV4fHxudWxsO3RoaXMub3g9bi5veHx8ITE7dGhpcy5sb2dnZXI9bnVsbDt0aGlzLndpdGhDcmVkZW50aWFscz0hbi5rQzt0aGlzLmdSPW4uZ1J8fCExO3RoaXMuRD0hdGhpcy5nUiYmISFnLmlrKCkmJiEhZy5paygpLm5hdmlnYXRvciYmZy5paygpLm5hdmlnYXRvci5zZW5kQmVhY29uIT09dm9pZCAwO3RoaXMuUyQ9dHlwZW9mIFVSTFNlYXJjaFBhcmFtcyE9PSJ1bmRlZmluZWQiJiYhIShuZXcgVVJMKExLKCkpKS5zZWFyY2hQYXJhbXMmJiEhKG5ldyBVUkwoTEsoKSkpLnNlYXJjaFBhcmFtcy5zZXQ7dmFyIFc9bksobmV3IFdMKTt2TCh0aGlzLlcsVyk7dGhpcy5qPW5ldyBnLmhIKDFFNCwzRTUsLjEpO249STRTKHRoaXMsbi5iMSk7dGhpcy5KPW5ldyBFemkodGhpcy5qLmdldFZhbHVlKCksCm4pO3RoaXMuVEM9bmV3IEV6aSg2RTUsbik7dGhpcy5veHx8dGhpcy5UQy5zdGFydCgpO3RoaXMuZ1J8fChkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIiwoKT0+e2RvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT09PSJoaWRkZW4iJiZlZyh0aGlzKX0pLGcuaWsoKT8uYWRkRXZlbnRMaXN0ZW5lcj8uKCJwYWdlaGlkZSIsKCk9PntlZyh0aGlzKX0pKX1tQSgpe2VnKHRoaXMpOwp0aGlzLkouc3RvcCgpO3RoaXMuVEMuc3RvcCgpO3N1cGVyLm1BKCl9ZGlzcGF0Y2gobil7aWYobiBpbnN0YW5jZW9mIEJxKXRoaXMubG9nKG4pO2Vsc2UgdHJ5e3ZhciBXPW5ldyBCcSxEPW4uYlkoKTt2YXIgYj1nLlNFKFcsOCxEKTt0aGlzLmxvZyhiKX1jYXRjaHt9fWxvZyhuKXtpZih0aGlzLlMkKXtuPW4uY2xvbmUoKTt2YXIgVz10aGlzLkhKKys7bj1JWShuLDIxLFcpO3RoaXMuY29tcG9uZW50SWQmJmcuU0UobiwyNix0aGlzLmNvbXBvbmVudElkKTtXPW47e3ZhciBEPWlXKFcsMSk7bGV0IGI9dHlwZW9mIEQ7RD1EPT1udWxsP0Q6Yj09PSJiaWdpbnQiP1N0cmluZyhkWig2NCxEKSk6WkIoRCk/Yj09PSJzdHJpbmciP0I5KEQpOkM1KEQpOnZvaWQgMH1EPT1udWxsJiYoRD1EYXRlLm5vdygpLEQ9TnVtYmVyLmlzRmluaXRlKEQpP0QudG9TdHJpbmcoKToiMCIsb3ooVywxLGcubDQoRCkpKTtEPWlXKFcsMTUsdm9pZCAwLHZvaWQgMCxGRCk7RCE9bnVsbCYmKHR5cGVvZiBEPT09ImJpZ2ludCI/CnNLKEQpP0Q9TnVtYmVyKEQpOihEPWRaKDY0LEQpLEQ9c0soRCk/TnVtYmVyKEQpOlN0cmluZyhEKSk6RD1aQihEKT90eXBlb2YgRD09PSJudW1iZXIiP0M1KEQpOkI5KEQpOnZvaWQgMCk7RCE9bnVsbHx8SVkoVywxNSwobmV3IERhdGUpLmdldFRpbWV6b25lT2Zmc2V0KCkqNjApO3RoaXMuZXhwZXJpbWVudElkcyYmKEQ9dGhpcy5leHBlcmltZW50SWRzLmNsb25lKCksJDkoVyx5WE0sMTYsRCkpO1c9dGhpcy5OLmxlbmd0aC0xRTMrMTtXPjAmJih0aGlzLk4uc3BsaWNlKDAsVyksdGhpcy5YKz1XKTt0aGlzLk4ucHVzaChuKTt0aGlzLm94fHx0aGlzLkouZW5hYmxlZHx8dGhpcy5KLnN0YXJ0KCl9fWZsdXNoKG4sVyl7aWYodGhpcy5OLmxlbmd0aD09PTApbiYmbigpO2Vsc2UgaWYodGhpcy5iZCYmdGhpcy5EKXRoaXMuVy5KPTMsQUZaKHRoaXMpO2Vsc2V7dmFyIEQ9RGF0ZS5ub3coKTtpZih0aGlzLmUkPkQmJnRoaXMudHc8RClXJiZXKCJ0aHJvdHRsZWQiKTtlbHNle3RoaXMubmV0d29yayYmCih0eXBlb2YgdGhpcy5uZXR3b3JrLkdZPT09ImZ1bmN0aW9uIj9IYlModGhpcy5XLHRoaXMubmV0d29yay5HWSgpKTp0aGlzLlcuSj0wKTt2YXIgYj10aGlzLlcuYnVpbGQodGhpcy5OLHRoaXMuWCx0aGlzLlYsdGhpcy5QZyx0aGlzLmNKLHRoaXMuTyksdj10aGlzLm4xKCk7aWYodiYmdGhpcy5WUT09PXYpVyYmVygic3RhbGUtYXV0aC10b2tlbiIpO2Vsc2V7dGhpcy5OPVtdO3RoaXMuSi5lbmFibGVkJiZ0aGlzLkouc3RvcCgpO3RoaXMuWD0wO0Q9Yi5iWSgpO2xldCBrO3RoaXMuSyYmdGhpcy5LLmlzU3VwcG9ydGVkKEQubGVuZ3RoKSYmKGs9dGhpcy5LLmNvbXByZXNzKEQpKTtsZXQgaD1tVXcodGhpcyxELHYpLHg9Rz0+e3RoaXMuai5yZXNldCgpO3RoaXMuSi5zZXRJbnRlcnZhbCh0aGlzLmouZ2V0VmFsdWUoKSk7aWYoRyl7dmFyIHI9bnVsbDt0cnl7bGV0IE49SlNPTi5zdHJpbmdpZnkoSlNPTi5wYXJzZShHLnJlcGxhY2UoIildfSdcbiIsIiIpKSk7cj1DWmgoTil9Y2F0Y2goTil7fXImJgooRz1OdW1iZXIocG4ociwxLGcuJFUoIi0xIikpKSxHPjAmJih0aGlzLnR3PURhdGUubm93KCksdGhpcy5lJD10aGlzLnR3K0cpLHR2KHIubDksRlAuTiksR3oocixGUC5OKSxyPUZQLko/RlAuWChyLEZQLkosRlAuTixGUC5XKTpGUC5YKHIsRlAuTixudWxsLEZQLlcpLHI9cj09PW51bGw/dm9pZCAwOnIpJiYocj1hUChyLDEsLTEpLHIhPT0tMSYmKHRoaXMuaj1uZXcgZy5oSChyPDE/MTpyLDNFNSwuMSksdGhpcy5KLnNldEludGVydmFsKHRoaXMuai5nZXRWYWx1ZSgpKSkpfW4mJm4oKTt0aGlzLlY9MH0sTD0oRyxyKT0+e3ZhciBOPVZHKGIsQnEsMyk7CnZhciBIPU51bWJlcihwbihiLDE0KSk7Zy54RSh0aGlzLmopO3RoaXMuSi5zZXRJbnRlcnZhbCh0aGlzLmouZ2V0VmFsdWUoKSk7Rz09PTQwMSYmdiYmKHRoaXMuVlE9dik7SCYmKHRoaXMuWCs9SCk7cj09PXZvaWQgMCYmKHI9dGhpcy5pc1JldHJ5YWJsZShHKSk7ciYmKHRoaXMuTj1OLmNvbmNhdCh0aGlzLk4pLHRoaXMub3h8fHRoaXMuSi5lbmFibGVkfHx0aGlzLkouc3RhcnQoKSk7VyYmVygibmV0LXNlbmQtZmFpbGVkIixHKTsrK3RoaXMuVn0sZT0oKT0+e3RoaXMubmV0d29yayYmdGhpcy5uZXR3b3JrLnNlbmQoaCx4LEwpfTsKaz9rLnRoZW4oRz0+e2guWkpbIkNvbnRlbnQtRW5jb2RpbmciXT0iZ3ppcCI7aC5aSlsiQ29udGVudC1UeXBlIl09ImFwcGxpY2F0aW9uL2JpbmFyeSI7aC5ib2R5PUc7aC5vJD0yO2UoKX0sKCk9PntlKCl9KTplKCl9fX19aXNSZXRyeWFibGUobil7cmV0dXJuIDUwMDw9biYmbjw2MDB8fG49PT00MDF8fG49PT0wfX07dmFyIEZVaj1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuUiQ9dHlwZW9mIEFib3J0Q29udHJvbGxlciE9PSJ1bmRlZmluZWQifWFzeW5jIHNlbmQobixXLEQpe3ZhciBiPXRoaXMuUiQ/bmV3IEFib3J0Q29udHJvbGxlcjp2b2lkIDAsdj1iJiZuLnRpbWVvdXRNaWxsaXM+MD9zZXRUaW1lb3V0KCgpPT57Yi5hYm9ydCgpfSxuLnRpbWVvdXRNaWxsaXMpOnZvaWQgMDsKdHJ5e2xldCBrPWF3YWl0IGZldGNoKG4udXJsLHttZXRob2Q6bi5yZXF1ZXN0VHlwZSxoZWFkZXJzOnsuLi5uLlpKfSwuLi4obi5ib2R5JiZ7Ym9keTpuLmJvZHl9KSwuLi4obi53aXRoQ3JlZGVudGlhbHMmJntjcmVkZW50aWFsczoiaW5jbHVkZSJ9KSxzaWduYWw6bi50aW1lb3V0TWlsbGlzJiZiP2Iuc2lnbmFsOm51bGx9KTtrLnN0YXR1cz09PTIwMD9XPy4oYXdhaXQgay50ZXh0KCkpOkQ/LihrLnN0YXR1cyl9Y2F0Y2goayl7c3dpdGNoKGs/Lm5hbWUpe2Nhc2UgIkFib3J0RXJyb3IiOkQ/Lig0MDgpO2JyZWFrO2RlZmF1bHQ6RD8uKDQwMCl9fWZpbmFsbHl7Y2xlYXJUaW1lb3V0KHYpfX1HWSgpe3JldHVybiA0fX07dmFyIGtZPWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCk7dGhpcy5sb2dTb3VyY2U9MTgyODt0aGlzLnNlc3Npb25JbmRleD0iMCI7dGhpcy5Saj0iaHR0cHM6Ly9wbGF5Lmdvb2dsZS5jb20vbG9nP2Zvcm1hdD1qc29uJmhhc2Zhc3Q9dHJ1ZSI7dGhpcy5uZXR3b3JrPXRoaXMuYnVpbGRMYWJlbD1udWxsO3RoaXMuY29tcG9uZW50SWQ9IiI7dGhpcy5OPXRoaXMuUGc9bnVsbDt0aGlzLko9ITE7dGhpcy5sb2dnZXI9dGhpcy5wYWdlSWQ9bnVsbH1rQygpe3RoaXMuVz0hMDtyZXR1cm4gdGhpc31idWlsZCgpe3RoaXMubmV0d29ya3x8KHRoaXMubmV0d29yaz1uZXcgRlVqKTt2YXIgbj1uZXcgQk1aKHtsb2dTb3VyY2U6dGhpcy5sb2dTb3VyY2UsbjE6dGhpcy5uMT90aGlzLm4xOkJPLHNlc3Npb25JbmRleDp0aGlzLnNlc3Npb25JbmRleCxjdTp0aGlzLlJqLGdSOiExLG94OiExLGtDOnRoaXMuVyxiMTp0aGlzLmIxLG5ldHdvcms6dGhpcy5uZXR3b3JrfSk7Zy51KHRoaXMsCm4pO2lmKHRoaXMuYnVpbGRMYWJlbCl7dmFyIFc9dGhpcy5idWlsZExhYmVsLEQ9REQobi5XKTtnLlNFKEQsNyxXKX1uLks9bmV3IFU0eDt0aGlzLmNvbXBvbmVudElkJiYobi5jb21wb25lbnRJZD10aGlzLmNvbXBvbmVudElkKTt0aGlzLlBnJiYobi5QZz10aGlzLlBnKTt0aGlzLnBhZ2VJZCYmKG4ucGFnZUlkPXRoaXMucGFnZUlkKTt0aGlzLk4mJigoRD10aGlzLk4pPyhuLmV4cGVyaW1lbnRJZHN8fChuLmV4cGVyaW1lbnRJZHM9bmV3IHlYTSksVz1uLmV4cGVyaW1lbnRJZHMsRD1ELmJZKCksZy5TRShXLDQsRCkpOm4uZXhwZXJpbWVudElkcyYmb3oobi5leHBlcmltZW50SWRzLDQpKTt0aGlzLkomJihuLmJkPW4uRCk7SkZaKG4uVyk7dGhpcy5uZXR3b3JrLmFWJiZ0aGlzLm5ldHdvcmsuYVYodGhpcy5sb2dTb3VyY2UpO3RoaXMubmV0d29yay5oUyYmdGhpcy5uZXR3b3JrLmhTKG4pO3JldHVybiBufX07dmFyIGE0aj1jbGFzcyBleHRlbmRzIGcuRk17Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLmxvZ1NvdXJjZT0xODI4O3RoaXMuY29tcG9uZW50SWQ9IiI7bnx8KG49bmV3IGtZLG4uY29tcG9uZW50SWQ9IiIsZy51KHRoaXMsbiksbj1uLmJ1aWxkKCkpO3RoaXMuTj1ufWZsdXNoKG4pe249bnx8W107aWYobi5sZW5ndGgpe2xldCBXPW5ldyBaaXgsRD1bXTtmb3IobGV0IGI9MDtiPG4ubGVuZ3RoO2IrKyl7bGV0IHY9bltiXSxrPXU2KHYpO0QucHVzaChrKTt2LmNsZWFyKCl9c1YoVyxnLk9mLDEsRCk7dGhpcy5OLmRpc3BhdGNoKFcpO3RoaXMuTi5mbHVzaCgpfX19O3ZhciBxNT1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn19O3ZhciB3JGI9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQpe3RoaXMuSj1uO3RoaXMuVz1XO3RoaXMuZmllbGRzPUR8fFtdO3RoaXMuTj1uZXcgTWFwfWNsZWFyKCl7dGhpcy5OLmNsZWFyKCl9fTt2YXIgaWU9Y2xhc3MgZXh0ZW5kcyB3JGJ7Y29uc3RydWN0b3IobixXKXtzdXBlcihuLDMsVyl9fTt2YXIgeTg9Y2xhc3MgZXh0ZW5kcyB3JGJ7Y29uc3RydWN0b3IobixXKXtzdXBlcihuLDIsVyl9ZEUobiwuLi5XKXt5RloodGhpcyxuLC4uLlcpfX07JEUucHJvdG90eXBlLnN0b3BQcm9wYWdhdGlvbj1mdW5jdGlvbigpe3RoaXMuSj0hMH07CiRFLnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbigpe3RoaXMuZGVmYXVsdFByZXZlbnRlZD0hMH07Zy5peChyRCwkRSk7CnJELnByb3RvdHlwZS5pbml0PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9dGhpcy50eXBlPW4udHlwZSxiPW4uY2hhbmdlZFRvdWNoZXMmJm4uY2hhbmdlZFRvdWNoZXMubGVuZ3RoP24uY2hhbmdlZFRvdWNoZXNbMF06bnVsbDt0aGlzLnRhcmdldD1uLnRhcmdldHx8bi5zcmNFbGVtZW50O3RoaXMuY3VycmVudFRhcmdldD1XO1c9bi5yZWxhdGVkVGFyZ2V0O1d8fChEPT0ibW91c2VvdmVyIj9XPW4uZnJvbUVsZW1lbnQ6RD09Im1vdXNlb3V0IiYmKFc9bi50b0VsZW1lbnQpKTt0aGlzLnJlbGF0ZWRUYXJnZXQ9VztiPyh0aGlzLmNsaWVudFg9Yi5jbGllbnRYIT09dm9pZCAwP2IuY2xpZW50WDpiLnBhZ2VYLHRoaXMuY2xpZW50WT1iLmNsaWVudFkhPT12b2lkIDA/Yi5jbGllbnRZOmIucGFnZVksdGhpcy5zY3JlZW5YPWIuc2NyZWVuWHx8MCx0aGlzLnNjcmVlblk9Yi5zY3JlZW5ZfHwwKToodGhpcy5jbGllbnRYPW4uY2xpZW50WCE9PXZvaWQgMD9uLmNsaWVudFg6bi5wYWdlWCx0aGlzLmNsaWVudFk9Cm4uY2xpZW50WSE9PXZvaWQgMD9uLmNsaWVudFk6bi5wYWdlWSx0aGlzLnNjcmVlblg9bi5zY3JlZW5YfHwwLHRoaXMuc2NyZWVuWT1uLnNjcmVlbll8fDApO3RoaXMuYnV0dG9uPW4uYnV0dG9uO3RoaXMua2V5Q29kZT1uLmtleUNvZGV8fDA7dGhpcy5rZXk9bi5rZXl8fCIiO3RoaXMuY2hhckNvZGU9bi5jaGFyQ29kZXx8KEQ9PSJrZXlwcmVzcyI/bi5rZXlDb2RlOjApO3RoaXMuY3RybEtleT1uLmN0cmxLZXk7dGhpcy5hbHRLZXk9bi5hbHRLZXk7dGhpcy5zaGlmdEtleT1uLnNoaWZ0S2V5O3RoaXMubWV0YUtleT1uLm1ldGFLZXk7dGhpcy5wb2ludGVySWQ9bi5wb2ludGVySWR8fDA7dGhpcy5wb2ludGVyVHlwZT1uLnBvaW50ZXJUeXBlO3RoaXMuc3RhdGU9bi5zdGF0ZTt0aGlzLk49bjtuLmRlZmF1bHRQcmV2ZW50ZWQmJnJELlRCLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyl9OwpyRC5wcm90b3R5cGUuc3RvcFByb3BhZ2F0aW9uPWZ1bmN0aW9uKCl7ckQuVEIuc3RvcFByb3BhZ2F0aW9uLmNhbGwodGhpcyk7dGhpcy5OLnN0b3BQcm9wYWdhdGlvbj90aGlzLk4uc3RvcFByb3BhZ2F0aW9uKCk6dGhpcy5OLmNhbmNlbEJ1YmJsZT0hMH07CnJELnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbigpe3JELlRCLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyk7dmFyIG49dGhpcy5OO24ucHJldmVudERlZmF1bHQ/bi5wcmV2ZW50RGVmYXVsdCgpOm4ucmV0dXJuVmFsdWU9ITF9O3ZhciBzMj0iY2xvc3VyZV9saXN0ZW5hYmxlXyIrKE1hdGgucmFuZG9tKCkqMUU2fDApO3ZhciB1SWg9MDtnLkU9ZksucHJvdG90eXBlO2cuRS5hZGQ9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1uLnRvU3RyaW5nKCk7bj10aGlzLmxpc3RlbmVyc1trXTtufHwobj10aGlzLmxpc3RlbmVyc1trXT1bXSx0aGlzLk4rKyk7dmFyIGg9SVcobixXLGIsdik7aD4tMT8oVz1uW2hdLER8fChXLnFfPSExKSk6KFc9bmV3IG8zYihXLHRoaXMuc3JjLGssISFiLHYpLFcucV89RCxuLnB1c2goVykpO3JldHVybiBXfTsKZy5FLnJlbW92ZT1mdW5jdGlvbihuLFcsRCxiKXtuPW4udG9TdHJpbmcoKTtpZighKG4gaW4gdGhpcy5saXN0ZW5lcnMpKXJldHVybiExO3ZhciB2PXRoaXMubGlzdGVuZXJzW25dO1c9SVcodixXLEQsYik7cmV0dXJuIFc+LTE/KEhMKHZbV10pLGcuQk0odixXKSx2Lmxlbmd0aD09MCYmKGRlbGV0ZSB0aGlzLmxpc3RlbmVyc1tuXSx0aGlzLk4tLSksITApOiExfTsKZy5FLlRpPWZ1bmN0aW9uKCl7dmFyIG49MDtmb3IobGV0IFcgaW4gdGhpcy5saXN0ZW5lcnMpe2xldCBEPXRoaXMubGlzdGVuZXJzW1ddO2ZvcihsZXQgYj0wO2I8RC5sZW5ndGg7YisrKSsrbixITChEW2JdKTtkZWxldGUgdGhpcy5saXN0ZW5lcnNbV107dGhpcy5OLS19fTsKZy5FLnNjPWZ1bmN0aW9uKG4sVyxELGIpe249dGhpcy5saXN0ZW5lcnNbbi50b1N0cmluZygpXTt2YXIgdj0tMTtuJiYodj1JVyhuLFcsRCxiKSk7cmV0dXJuIHY+LTE/blt2XTpudWxsfTsKZy5FLmhhc0xpc3RlbmVyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9biE9PXZvaWQgMCxiPUQ/bi50b1N0cmluZygpOiIiLHY9VyE9PXZvaWQgMDtyZXR1cm4gZy5EbCh0aGlzLmxpc3RlbmVycyxmdW5jdGlvbihrKXtmb3IobGV0IGg9MDtoPGsubGVuZ3RoOysraClpZighKEQmJmtbaF0udHlwZSE9Ynx8diYma1toXS5jYXB0dXJlIT1XKSlyZXR1cm4hMDtyZXR1cm4hMX0pfTt2YXIgUEw9ImNsb3N1cmVfbG1fIisoTWF0aC5yYW5kb20oKSoxRTZ8MCksaUk9e30sVTI9MCx1ST0iX19jbG9zdXJlX2V2ZW50c19mbl8iKyhNYXRoLnJhbmRvbSgpKjFFOT4+PjApO2cuaXgoZy5vVyxnLkZNKTtnLm9XLnByb3RvdHlwZVtzMl09ITA7Zy5FPWcub1cucHJvdG90eXBlO2cuRS5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKG4sVyxELGIpe0FIKHRoaXMsbixXLEQsYil9OwpnLkUucmVtb3ZlRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihuLFcsRCxiKXt5Nyh0aGlzLG4sVyxELGIpfTsKZy5FLmRpc3BhdGNoRXZlbnQ9ZnVuY3Rpb24obil7dmFyIFc9dGhpcy5sWjtpZihXKXt2YXIgRD1bXTtmb3IodmFyIGI9MTtXO1c9Vy5sWilELnB1c2goVyksKytifVc9dGhpcy5IZDtiPW4udHlwZXx8bjtpZih0eXBlb2Ygbj09PSJzdHJpbmciKW49bmV3ICRFKG4sVyk7ZWxzZSBpZihuIGluc3RhbmNlb2YgJEUpbi50YXJnZXQ9bi50YXJnZXR8fFc7ZWxzZXt2YXIgdj1uO249bmV3ICRFKGIsVyk7Zy5ZeShuLHYpfXY9ITA7dmFyIGs7aWYoRClmb3Ioaz1ELmxlbmd0aC0xOyFuLkomJms+PTA7ay0tKXt2YXIgaD1uLmN1cnJlbnRUYXJnZXQ9RFtrXTt2PWREKGgsYiwhMCxuKSYmdn1uLkp8fChoPW4uY3VycmVudFRhcmdldD1XLHY9ZEQoaCxiLCEwLG4pJiZ2LG4uSnx8KHY9ZEQoaCxiLCExLG4pJiZ2KSk7aWYoRClmb3Ioaz0wOyFuLkomJms8RC5sZW5ndGg7aysrKWg9bi5jdXJyZW50VGFyZ2V0PURba10sdj1kRChoLGIsITEsbikmJnY7cmV0dXJuIHZ9OwpnLkUubUE9ZnVuY3Rpb24oKXtnLm9XLlRCLm1BLmNhbGwodGhpcyk7dGhpcy5kXyYmdGhpcy5kXy5UaSgpO3RoaXMubFo9bnVsbH07CmcuRS5TXz1mdW5jdGlvbihuLFcsRCxiKXtyZXR1cm4gdGhpcy5kXy5hZGQoU3RyaW5nKG4pLFcsITEsRCxiKX07CmcuRS5lRj1mdW5jdGlvbihuLFcsRCxiKXtyZXR1cm4gdGhpcy5kXy5hZGQoU3RyaW5nKG4pLFcsITAsRCxiKX07CmcuRS53SD1mdW5jdGlvbihuLFcsRCxiKXt0aGlzLmRfLnJlbW92ZShTdHJpbmcobiksVyxELGIpfTsKZy5FLnNjPWZ1bmN0aW9uKG4sVyxELGIpe3JldHVybiB0aGlzLmRfLnNjKFN0cmluZyhuKSxXLEQsYil9OwpnLkUuaGFzTGlzdGVuZXI9ZnVuY3Rpb24obixXKXtyZXR1cm4gdGhpcy5kXy5oYXNMaXN0ZW5lcihuIT09dm9pZCAwP1N0cmluZyhuKTp2b2lkIDAsVyl9O2cuejc9dHlwZW9mIEFzeW5jQ29udGV4dCE9PSJ1bmRlZmluZWQiJiZ0eXBlb2YgQXN5bmNDb250ZXh0LlNuYXBzaG90PT09ImZ1bmN0aW9uIj9uPT5uJiZBc3luY0NvbnRleHQuU25hcHNob3Qud3JhcChuKTpuPT5uO3ZhciBNMlM9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLlc9bjt0aGlzLlg9Vzt0aGlzLko9MDt0aGlzLk49bnVsbH1nZXQoKXtpZih0aGlzLko+MCl7dGhpcy5KLS07dmFyIG49dGhpcy5OO3RoaXMuTj1uLm5leHQ7bi5uZXh0PW51bGx9ZWxzZSBuPXRoaXMuVygpO3JldHVybiBufXB1dChuKXt0aGlzLlgobik7dGhpcy5KPDEwMCYmKHRoaXMuSisrLG4ubmV4dD10aGlzLk4sdGhpcy5OPW4pfX07dmFyIGxJO3ZhciBSM2I9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLko9dGhpcy5OPW51bGx9YWRkKG4sVyl7dmFyIEQ9Q0suZ2V0KCk7RC5zZXQobixXKTt0aGlzLko/dGhpcy5KLm5leHQ9RDp0aGlzLk49RDt0aGlzLko9RH1yZW1vdmUoKXt2YXIgbj1udWxsO3RoaXMuTiYmKG49dGhpcy5OLHRoaXMuTj10aGlzLk4ubmV4dCx0aGlzLk58fCh0aGlzLko9bnVsbCksbi5uZXh0PW51bGwpO3JldHVybiBufX0sQ0s9bmV3IE0yUygoKT0+bmV3IFFmMSxuPT5uLnJlc2V0KCkpLFFmMT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMubmV4dD10aGlzLnNjb3BlPXRoaXMuTj1udWxsfXNldChuLFcpe3RoaXMuTj1uOwp0aGlzLnNjb3BlPVc7dGhpcy5uZXh0PW51bGx9cmVzZXQoKXt0aGlzLm5leHQ9dGhpcy5zY29wZT10aGlzLk49bnVsbH19O3ZhciB3cSxCTCxqZyxWMng7Qkw9ITE7amc9bmV3IFIzYjtnLm1LPShuLFcpPT57d3F8fFYyeCgpO0JMfHwod3EoKSxCTD0hMCk7amcuYWRkKG4sVyl9OwpWMng9KCk9Pnt2YXIgbj1Qcm9taXNlLnJlc29sdmUodm9pZCAwKTt3cT0oKT0+e24udGhlbihUenIpfX07cTgucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5jb250ZXh0PXRoaXMuSj10aGlzLlc9dGhpcy5OPW51bGw7dGhpcy5YPSExfTsKdmFyIEczPW5ldyBNMlMoZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHE4fSxmdW5jdGlvbihuKXtuLnJlc2V0KCl9KTsKZy5YMS5wcm90b3R5cGUudGhlbj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIFNPKHRoaXMsKDAsZy56NykodHlwZW9mIG49PT0iZnVuY3Rpb24iP246bnVsbCksKDAsZy56NykodHlwZW9mIFc9PT0iZnVuY3Rpb24iP1c6bnVsbCksRCl9OwpnLlgxLnByb3RvdHlwZS4kZ29vZ19UaGVuYWJsZT0hMDtnLkU9Zy5YMS5wcm90b3R5cGU7Zy5FLmZpbmFsbHk9ZnVuY3Rpb24obil7bj0oMCxnLno3KShuKTtyZXR1cm4gbmV3IGcuWDEoKFcsRCk9PntwcSh0aGlzLGI9PntuKCk7VyhiKX0sYj0+e24oKTsKRChiKX0pfSl9OwpnLkUuc1A9ZnVuY3Rpb24obixXKXtyZXR1cm4gU08odGhpcyxudWxsLCgwLGcuejcpKG4pLFcpfTsKZy5FLmNhdGNoPWcuWDEucHJvdG90eXBlLnNQO2cuRS5jYW5jZWw9ZnVuY3Rpb24obil7aWYodGhpcy5OPT0wKXtsZXQgVz1uZXcgZy5JNShuKTtnLm1LKGZ1bmN0aW9uKCl7WUcodGhpcyxXKX0sdGhpcyl9fTsKZy5FLklRPWZ1bmN0aW9uKG4pe3RoaXMuTj0wO2dwKHRoaXMsMixuKX07CmcuRS5BUz1mdW5jdGlvbihuKXt0aGlzLk49MDtncCh0aGlzLDMsbil9OwpnLkUueXM9ZnVuY3Rpb24oKXtmb3IodmFyIG47bj1ISih0aGlzKTspZnEodGhpcyxuLHRoaXMuTix0aGlzLkspO3RoaXMuVj0hMX07CnZhciBPdT1oNDtnLml4KGcuSTUsZy5UYik7Zy5JNS5wcm90b3R5cGUubmFtZT0iY2FuY2VsIjtnLml4KGcuUEosZy5vVyk7Zy5FPWcuUEoucHJvdG90eXBlO2cuRS5lbmFibGVkPSExO2cuRS5aNj1udWxsO2cuRS5zZXRJbnRlcnZhbD1mdW5jdGlvbihuKXt0aGlzLmd0PW47dGhpcy5aNiYmdGhpcy5lbmFibGVkPyh0aGlzLnN0b3AoKSx0aGlzLnN0YXJ0KCkpOnRoaXMuWjYmJnRoaXMuc3RvcCgpfTsKZy5FLlJRPWZ1bmN0aW9uKCl7aWYodGhpcy5lbmFibGVkKXtsZXQgbj1nLlV3KCktdGhpcy5qYjtuPjAmJm48dGhpcy5ndCouOD90aGlzLlo2PXRoaXMuVjcuc2V0VGltZW91dCh0aGlzLmhFLHRoaXMuZ3Qtbik6KHRoaXMuWjYmJih0aGlzLlY3LmNsZWFyVGltZW91dCh0aGlzLlo2KSx0aGlzLlo2PW51bGwpLHRoaXMuZGlzcGF0Y2hFdmVudCgidGljayIpLHRoaXMuZW5hYmxlZCYmKHRoaXMuc3RvcCgpLHRoaXMuc3RhcnQoKSkpfX07CmcuRS5zdGFydD1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hMDt0aGlzLlo2fHwodGhpcy5aNj10aGlzLlY3LnNldFRpbWVvdXQodGhpcy5oRSx0aGlzLmd0KSx0aGlzLmpiPWcuVXcoKSl9OwpnLkUuc3RvcD1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hMTt0aGlzLlo2JiYodGhpcy5WNy5jbGVhclRpbWVvdXQodGhpcy5aNiksdGhpcy5aNj1udWxsKX07CmcuRS5tQT1mdW5jdGlvbigpe2cuUEouVEIubUEuY2FsbCh0aGlzKTt0aGlzLnN0b3AoKTtkZWxldGUgdGhpcy5WN307dmFyIGhxPWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMuRD1uO3RoaXMuVj0wO3RoaXMuWD0xMDA7dGhpcy5LPSExO3RoaXMuVz1uZXcgTWFwO3RoaXMuWT1uZXcgU2V0O3RoaXMuZmx1c2hJbnRlcnZhbD0zRTQ7dGhpcy5KPW5ldyBnLlBKKHRoaXMuZmx1c2hJbnRlcnZhbCk7dGhpcy5KLlNfKCJ0aWNrIix0aGlzLmosITEsdGhpcyk7Zy51KHRoaXMsdGhpcy5KKX1zZW5kSXNvbGF0ZWRQYXlsb2FkKG4pe3RoaXMuSz1uO3RoaXMuWD0xfWooKXt2YXIgbj1bLi4udGhpcy5XLnZhbHVlcygpXS5maWx0ZXIoVz0+Vy5OLnNpemUpOwpuLmxlbmd0aCYmdGhpcy5ELmZsdXNoKG4sdGhpcy5LKTtGY2Iobik7dGhpcy5WPTA7dGhpcy5KLmVuYWJsZWQmJnRoaXMuSi5zdG9wKCl9TihuKXtyZXR1cm4gdGhpcy5ZLmhhcyhuKT92b2lkIDA6dGhpcy5XLmdldChuKX1kRShuLFcsLi4uRCl7KG49dGhpcy5OKG4pKSYmbiBpbnN0YW5jZW9mIHk4JiYobi5kRShXLC4uLkQpLG81KHRoaXMpKX19O3ZhciBDVj1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKG4sVyxEPXt9KXtzdXBlcihXKTt0aGlzLmNvZGU9bjt0aGlzLm1ldGFkYXRhPUQ7dGhpcy5uYW1lPSJScGNFcnJvciI7T2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsbmV3LnRhcmdldC5wcm90b3R5cGUpfXRvU3RyaW5nKCl7dmFyIG49YFJwY0Vycm9yKCR7d01TKHRoaXMuY29kZSl8fFN0cmluZyh0aGlzLmNvZGUpfSlgO3RoaXMubWVzc2FnZSYmKG4rPSI6ICIrdGhpcy5tZXNzYWdlKTtyZXR1cm4gbn19O2xlLnByb3RvdHlwZS5iWT1mdW5jdGlvbihuKXt2YXIgVz1bXTtUMyh0aGlzLG4sVyk7cmV0dXJuIFcuam9pbigiIil9Owp2YXIgQ3E9eyciJzonXFwiJywiXFwiOiJcXFxcIiwiLyI6IlxcLyIsIlxiIjoiXFxiIiwiXGYiOiJcXGYiLCJcbiI6IlxcbiIsIlxyIjoiXFxyIiwiXHQiOiJcXHQiLCJcdiI6IlxcdTAwMGIifSxNalo9L1x1ZmZmZi8udGVzdCgiXHVmZmZmIik/L1tcXCJceDAwLVx4MWZceDdmLVx1ZmZmZl0vZzovW1xcIlx4MDAtXHgxZlx4N2YtXHhmZl0vZzt2YXIgY1hDO2cuaXgoRjEsQkopO0YxLnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBYTUxIdHRwUmVxdWVzdH07CmNYQz1uZXcgRjE7Zy5peCh3cCxnLm9XKTt2YXIgYXEyPS9eaHR0cHM/JC9pLG5kTT1bIlBPU1QiLCJQVVQiXSxNOD1bXTtnLkU9d3AucHJvdG90eXBlO2cuRS5XVT1mdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpO2cuRkkoTTgsdGhpcyl9OwpnLkUuc2VuZD1mdW5jdGlvbihuLFcsRCxiKXtpZih0aGlzLk4pdGhyb3cgRXJyb3IoIltnb29nLm5ldC5YaHJJb10gT2JqZWN0IGlzIGFjdGl2ZSB3aXRoIGFub3RoZXIgcmVxdWVzdD0iK3RoaXMuSysiOyBuZXdVcmk9IituKTtXPVc/Vy50b1VwcGVyQ2FzZSgpOiJHRVQiO3RoaXMuSz1uO3RoaXMuaj0iIjt0aGlzLlc9MDt0aGlzLmNKPSExO3RoaXMuSj0hMDt0aGlzLk49dGhpcy5UQz90aGlzLlRDLk4oKTpjWEMuTigpO3RoaXMuTi5vbnJlYWR5c3RhdGVjaGFuZ2U9KDAsZy56NykoKDAsZy5LdCkodGhpcy5OOCx0aGlzKSk7dHJ5e3RoaXMuZ2V0U3RhdHVzKCksdGhpcy50dz0hMCx0aGlzLk4ub3BlbihXLFN0cmluZyhuKSwhMCksdGhpcy50dz0hMX1jYXRjaChrKXt0aGlzLmdldFN0YXR1cygpO1Y4KHRoaXMsayk7cmV0dXJufW49RHx8IiI7RD1uZXcgTWFwKHRoaXMuaGVhZGVycyk7aWYoYilpZihPYmplY3QuZ2V0UHJvdG90eXBlT2YoYik9PT1PYmplY3QucHJvdG90eXBlKWZvcih2YXIgdiBpbiBiKUQuc2V0KHYsCmJbdl0pO2Vsc2UgaWYodHlwZW9mIGIua2V5cz09PSJmdW5jdGlvbiImJnR5cGVvZiBiLmdldD09PSJmdW5jdGlvbiIpZm9yKGxldCBrIG9mIGIua2V5cygpKUQuc2V0KGssYi5nZXQoaykpO2Vsc2UgdGhyb3cgRXJyb3IoIlVua25vd24gaW5wdXQgdHlwZSBmb3Igb3B0X2hlYWRlcnM6ICIrU3RyaW5nKGIpKTtiPUFycmF5LmZyb20oRC5rZXlzKCkpLmZpbmQoaz0+ImNvbnRlbnQtdHlwZSI9PWsudG9Mb3dlckNhc2UoKSk7CnY9Zy5xaS5Gb3JtRGF0YSYmbiBpbnN0YW5jZW9mIGcucWkuRm9ybURhdGE7IWcuamoobmRNLFcpfHxifHx2fHxELnNldCgiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkO2NoYXJzZXQ9dXRmLTgiKTtmb3IobGV0IFtrLGhdb2YgRCl0aGlzLk4uc2V0UmVxdWVzdEhlYWRlcihrLGgpO3RoaXMuYmQmJih0aGlzLk4ucmVzcG9uc2VUeXBlPXRoaXMuYmQpOyJ3aXRoQ3JlZGVudGlhbHMiaW4gdGhpcy5OJiZ0aGlzLk4ud2l0aENyZWRlbnRpYWxzIT09dGhpcy5PJiYodGhpcy5OLndpdGhDcmVkZW50aWFscz10aGlzLk8pO3RyeXt0aGlzLlYmJihjbGVhclRpbWVvdXQodGhpcy5WKSx0aGlzLlY9bnVsbCksdGhpcy5EPjAmJih0aGlzLmdldFN0YXR1cygpLHRoaXMuVj1zZXRUaW1lb3V0KHRoaXMuVTIuYmluZCh0aGlzKSx0aGlzLkQpKSx0aGlzLmdldFN0YXR1cygpLHRoaXMuWT0hMCx0aGlzLk4uc2VuZChuKSx0aGlzLlk9ITF9Y2F0Y2goayl7dGhpcy5nZXRTdGF0dXMoKSwKVjgodGhpcyxrKX19OwpnLkUuVTI9ZnVuY3Rpb24oKXt0eXBlb2YgY0ohPSJ1bmRlZmluZWQiJiZ0aGlzLk4mJih0aGlzLmo9IlRpbWVkIG91dCBhZnRlciAiK3RoaXMuRCsibXMsIGFib3J0aW5nIix0aGlzLlc9OCx0aGlzLmdldFN0YXR1cygpLHRoaXMuZGlzcGF0Y2hFdmVudCgidGltZW91dCIpLHRoaXMuYWJvcnQoOCkpfTsKZy5FLmFib3J0PWZ1bmN0aW9uKG4pe3RoaXMuTiYmdGhpcy5KJiYodGhpcy5nZXRTdGF0dXMoKSx0aGlzLko9ITEsdGhpcy5YPSEwLHRoaXMuTi5hYm9ydCgpLHRoaXMuWD0hMSx0aGlzLlc9bnx8Nyx0aGlzLmRpc3BhdGNoRXZlbnQoImNvbXBsZXRlIiksdGhpcy5kaXNwYXRjaEV2ZW50KCJhYm9ydCIpLFE4KHRoaXMpKX07CmcuRS5tQT1mdW5jdGlvbigpe3RoaXMuTiYmKHRoaXMuSiYmKHRoaXMuSj0hMSx0aGlzLlg9ITAsdGhpcy5OLmFib3J0KCksdGhpcy5YPSExKSxROCh0aGlzLCEwKSk7d3AuVEIubUEuY2FsbCh0aGlzKX07CmcuRS5OOD1mdW5jdGlvbigpe3RoaXMucU4oKXx8KHRoaXMudHd8fHRoaXMuWXx8dGhpcy5YP25WKHRoaXMpOnRoaXMuZ0soKSl9OwpnLkUuZ0s9ZnVuY3Rpb24oKXtuVih0aGlzKX07CmcuRS5pc0FjdGl2ZT1mdW5jdGlvbigpe3JldHVybiEhdGhpcy5OfTsKZy5FLmlzQ29tcGxldGU9ZnVuY3Rpb24oKXtyZXR1cm4gYTUodGhpcyk9PTR9OwpnLkUuaXNTdWNjZXNzPWZ1bmN0aW9uKCl7dmFyIG49dGhpcy5nZXRTdGF0dXMoKTthOnN3aXRjaChuKXtjYXNlIDIwMDpjYXNlIDIwMTpjYXNlIDIwMjpjYXNlIDIwNDpjYXNlIDIwNjpjYXNlIDMwNDpjYXNlIDEyMjM6dmFyIFc9ITA7YnJlYWsgYTtkZWZhdWx0Olc9ITF9aWYoIVcpe2lmKG49bj09PTApbj1nLmZwKFN0cmluZyh0aGlzLkspKVsxXXx8bnVsbCwhbiYmZy5xaS5zZWxmJiZnLnFpLnNlbGYubG9jYXRpb24mJihuPWcucWkuc2VsZi5sb2NhdGlvbi5wcm90b2NvbC5zbGljZSgwLC0xKSksbj0hYXEyLnRlc3Qobj9uLnRvTG93ZXJDYXNlKCk6IiIpO1c9bn1yZXR1cm4gV307CmcuRS5nZXRTdGF0dXM9ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIGE1KHRoaXMpPjI/dGhpcy5OLnN0YXR1czotMX1jYXRjaChuKXtyZXR1cm4tMX19OwpnLkUuZ2V0UmVzcG9uc2VIZWFkZXI9ZnVuY3Rpb24obil7aWYodGhpcy5OJiZ0aGlzLmlzQ29tcGxldGUoKSlyZXR1cm4gbj10aGlzLk4uZ2V0UmVzcG9uc2VIZWFkZXIobiksbj09PW51bGw/dm9pZCAwOm59OwpnLkUuZ2V0TGFzdEVycm9yPWZ1bmN0aW9uKCl7cmV0dXJuIHR5cGVvZiB0aGlzLmo9PT0ic3RyaW5nIj90aGlzLmo6U3RyaW5nKHRoaXMuail9O3ZhciBPYjE9Y2xhc3N7c2VuZChuLFc9KCk9Pnt9LEQ9KCk9Pnt9KXtRTVUobi51cmwsYj0+e2I9Yi50YXJnZXQ7CmIuaXNTdWNjZXNzKCk/VyhXMyhiKSk6RChiLmdldFN0YXR1cygpKX0sbi5yZXF1ZXN0VHlwZSxuLmJvZHksbi5aSixuLnRpbWVvdXRNaWxsaXMsbi53aXRoQ3JlZGVudGlhbHMpfUdZKCl7cmV0dXJuIDF9fTt2YXIgTWw9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLmxvZ2dlcj1uO3RoaXMuZXZlbnQ9Vzt0aGlzLnN0YXJ0VGltZT1ibigpfWRvbmUoKXt0aGlzLmxvZ2dlci5YKHRoaXMuZXZlbnQsYm4oKS10aGlzLnN0YXJ0VGltZSl9fSxSbT1jbGFzcyBleHRlbmRzIGphMXtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyl9fSx4WT1jbGFzcyBleHRlbmRzIFJte2ooKXt9Tigpe31YKCl7fUooKXt9RCgpe31ZKCl7fVcoKXt9VihuLFcsRCxiKXtyZXR1cm4gYn1jSigpe31LKCl7fU8oKXt9fSxXNTE9Y2xhc3MgZXh0ZW5kcyBSbXtjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMubG9nZ2VyPW47dGhpcy5hZGRPbkRpc3Bvc2VDYWxsYmFjaygoKT0+dm9pZCB0aGlzLmxvZ2dlci5kaXNwb3NlKCkpfXVwZGF0ZShuKXt0aGlzLmxvZ2dlci5kaXNwb3NlKCk7CnRoaXMubG9nZ2VyPW59TihuKXt0aGlzLmxvZ2dlci5OKG4pfVgobixXKXt0aGlzLmxvZ2dlci5YKG4sVyl9SihuKXt0aGlzLmxvZ2dlci5KKG4pfUQobil7dGhpcy5sb2dnZXIuRChuKX1ZKG4sVyl7dGhpcy5sb2dnZXIuWShuLFcpfVcoKXt0aGlzLmxvZ2dlci5XKCl9VihuLFcsRCxiKXtyZXR1cm4gdGhpcy5sb2dnZXIuVihuLFcsRCxiKX1jSihuKXt0aGlzLmxvZ2dlci5jSihuKX1LKG4pe3RoaXMubG9nZ2VyLksobil9TyhuKXt0aGlzLmxvZ2dlci5PKG4pfWoobil7dGhpcy5sb2dnZXIuaihuKX19LERHUz1jbGFzcyBleHRlbmRzIGcuRk17Y29uc3RydWN0b3IobixXKXtzdXBlcigpO3RoaXMuY2FsbGJhY2s9bjt0aGlzLko9Vzt0aGlzLk49LVc7dGhpcy5hZGRPbkRpc3Bvc2VDYWxsYmFjaygoKT0+dm9pZCBjbGVhclRpbWVvdXQodGhpcy50aW1lcikpfX0sYjdpPWNsYXNzIGV4dGVuZHMgUm17Y29uc3RydWN0b3IobixXKXtzdXBlcigpOwp0aGlzLm1ldHJpY3M9bjt0aGlzLlZqPVd9aihuKXt0aGlzLm1ldHJpY3MuVGsuZEUobix0aGlzLlZqKX1OKG4pe3RoaXMubWV0cmljcy5ldmVudENvdW50Lkoobix0aGlzLlZqKX1YKG4sVyl7dGhpcy5tZXRyaWNzLlBULmRFKFcsbix0aGlzLlZqKX1KKG4pe3RoaXMubWV0cmljcy5lcnJvckNvdW50Lkoobix0aGlzLlZqKX1WKG4sVyxELGIpe3ZhciB2PWJuKCksaz1oPT57aWYoIXRoaXMucU4oKSl7dmFyIHg9Ym4oKS12O3RoaXMubWV0cmljcy5pTC5kRSh4LG4sRCxoLFcsdGhpcy5Wail9fTsKYi50aGVuKCgpPT52b2lkIGsoMCksaD0+dm9pZCBrKGggaW5zdGFuY2VvZiBDVj9oLmNvZGU6LTEpKTsKcmV0dXJuIGJ9Y0oobil7dGhpcy5tZXRyaWNzLlZKLkoobix0aGlzLlZqKX1LKG4pe3RoaXMubWV0cmljcy5jVS5KKG4sdGhpcy5Wail9TyhuKXt0aGlzLm1ldHJpY3MuakMuSihuLHRoaXMuVmopfUQobil7dGhpcy5tZXRyaWNzLnBheWxvYWRTaXplLmRFKG4sdGhpcy5Wail9WShuLFcpe3RoaXMubWV0cmljcy5mNi5kRShXLG4sdGhpcy5Wail9fSxEaHg9Y2xhc3MgZXh0ZW5kcyBiN2l7Y29uc3RydWN0b3IobixXPVtdKXt2YXIgRD17Vmo6bi5Wanx8Il8iLFJoOm4uUmh8fFtdLExUOm4uTFR8MCxSajpuLlJqLHREOm4udER8fCgoKT0+e30pLApybzpuLnJvfHwoKHYsayk9Pm5sMSh2LGssRC50RCxELlJqKSl9LGI9RC5ybygiNTMiLEQuUmguY29uY2F0KFcpKTsKc3VwZXIoe1RrOm5ldyBDMHgoYiksZXJyb3JDb3VudDpuZXcgTXQxKGIpLGV2ZW50Q291bnQ6bmV3IEYyWihiKSxQVDpuZXcgd1FyKGIpLGlMOm5ldyBCYWkoYiksVko6bmV3IFJkYihiKSxjVTpuZXcgUWF4KGIpLGpDOm5ldyBWdGkoYikscGF5bG9hZFNpemU6bmV3IGNqeChiKSxmNjpuZXcgYTZ3KGIpfSxELlZqKTt0aGlzLm9wdGlvbnM9RDt0aGlzLnNlcnZpY2U9Yjt0aGlzLlRDPSFuLnJvO3RoaXMudHc9bmV3IERHUygoKT0+dm9pZCB0aGlzLnNlcnZpY2UuaigpLEQuTFQpOwp0aGlzLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57dGhpcy50dy5kaXNwb3NlKCk7dGhpcy5UQyYmdGhpcy5zZXJ2aWNlLmRpc3Bvc2UoKX0pOwpnLmJmKFcuc2xpY2UoKSl9Vygpe1dXcih0aGlzLnR3KX19O3ZhciBxdj1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTt2YXIgR0g9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIHIkPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuLDAsciQubWVzc2FnZUlkKX19LFg0Wj1LOChyJCksdmRiPWZ1bmN0aW9uKG4pe3JldHVybiBxMyhXPT5XIGluc3RhbmNlb2YgbiYmIXY5KFcpKX0ociQpOwpyJC5tZXNzYWdlSWQ9ImJma2oiO3ZhciBjND1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTt2YXIga0VpPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19LGhZWj1LOChrRWkpO2cuS1Y9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnByb21pc2U9bmV3IFByb21pc2UoKG4sVyk9Pnt0aGlzLnJlc29sdmU9bjt0aGlzLnJlamVjdD1XfSl9fTt2YXIgQXE9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKG4pe3N1cGVyKCk7dGhpcy5KPU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoyMDApO3RoaXMuTj1uZXcga0VpO2lmKCJjaGFsbGVuZ2UiaW4gbiYmdmRiKG4uY2hhbGxlbmdlKSl7dmFyIFc9WTkobi5jaGFsbGVuZ2UsNCx2b2lkIDAseFUpO3ZhciBEPVk5KG4uY2hhbGxlbmdlLDUsdm9pZCAwLHhVKTtZOShuLmNoYWxsZW5nZSw3LHZvaWQgMCx4VSkmJih0aGlzLk49aFlaKFk5KG4uY2hhbGxlbmdlLDcsdm9pZCAwLHhVKSkpfWVsc2Uoe3Byb2dyYW06VyxnbG9iYWxOYW1lOkR9PW4pO3RoaXMuYWRkT25EaXNwb3NlQ2FsbGJhY2soYXN5bmMoKT0+e3ZhciB7Vng6R309YXdhaXQgdGhpcy5XO0c/LigpfSk7CnRoaXMubG9nZ2VyPUxWKG4ueDN8fHt9LHRoaXMuTik7Zy51KHRoaXMsdGhpcy5sb2dnZXIpO3ZhciBiPW5ldyBnLktWO3RoaXMuVz1iLnByb21pc2U7dGhpcy5sb2dnZXIuTigidCIpO3ZhciB2PXRoaXMubG9nZ2VyLnNoYXJlKCksaz1uZXcgTWwodiwidCIpLGg9KEcscixOLEgpPT57aWYoIXRoaXMubG9nZ2VyLnFOKCkpe3ZhciBBPSJrIjtyP0E9ImgiOk4mJihBPSJ1Iik7QSE9PSJrIj9IIT09MCYmKHRoaXMubG9nZ2VyLk4oQSksdGhpcy5sb2dnZXIuWChBLEcpKTp0aGlzLko8PTA/KHRoaXMubG9nZ2VyLk4oQSksdGhpcy5sb2dnZXIuWChBLEcpLHRoaXMuSj1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMjAwKSk6dGhpcy5KLS19fSx4PShHLHIsTixIKT0+e1Byb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PntrLmRvbmUoKTsKdi5XKCk7di5kaXNwb3NlKCk7Yi5yZXNvbHZlKHtGeTpHLFZ4OnIscDU6Tix4VTpIfSl9KX0sTD1bKEcscik9Pnt0aGlzLmxvZ2dlci5YKEcscil9LApHPT57dGhpcy5sb2dnZXIuSihHKX0sCkc9Pnt0aGlzLmxvZ2dlci5EKEcpfSwKKEcscik9Pnt0aGlzLmxvZ2dlci5ZKEcscil9XTsKaWYoIWcucWlbRF0pdGhyb3cgdGhpcy5sb2dnZXIuSigyNSksRXJyb3IoIkVHT1UiKTtpZighZy5xaVtEXS5hKXRocm93IHRoaXMubG9nZ2VyLkooMjYpLEVycm9yKCJFTElVIik7dHJ5e2xldCBHPWcucWlbRF0uYTtEPVtdO2xldCByPVtdO3ZhciBlPW4wKHRoaXMuTik7Zm9yKGxldCBBPTA7QTxlLmxlbmd0aDtBKyspRC5wdXNoKGVbQV0pLHIucHVzaCgxKTtsZXQgTj1VaXcodGhpcy5OKTtmb3IoZT0wO2U8Ti5sZW5ndGg7ZSsrKUQucHVzaChOW2VdKSxyLnB1c2goMik7bGV0IFtIXT1HKFcseCwhMCxuLnczLGgsW0Qscl0sWTkodGhpcy5OLDUpLCExLEwpO3RoaXMuWD1IO3RoaXMuT3Y9Yi5wcm9taXNlLnRoZW4oKCk9Pnt9KX1jYXRjaChHKXt0aHJvdyB0aGlzLmxvZ2dlci5KKDI4KSxHOwp9fXNuYXBzaG90KG4pe2lmKHRoaXMucU4oKSl0aHJvdyBFcnJvcigiQWxyZWFkeSBkaXNwb3NlZCIpO3RoaXMubG9nZ2VyLk4oIm4iKTt2YXIgVz10aGlzLmxvZ2dlci5zaGFyZSgpO3JldHVybiB0aGlzLlcudGhlbigoe0Z5OkR9KT0+bmV3IFByb21pc2UoYj0+e3ZhciB2PW5ldyBNbChXLCJuIik7RChrPT57di5kb25lKCk7Vy5qKGsubGVuZ3RoKTtXLlcoKTtXLmRpc3Bvc2UoKTtiKGspfSxbbi53XywKbi5HbCxuLnRMLG4uTU9dKX0pKX1tNShuKXtpZih0aGlzLnFOKCkpdGhyb3cgRXJyb3IoIkFscmVhZHkgZGlzcG9zZWQiKTsKdGhpcy5sb2dnZXIuTigibiIpO3ZhciBXPXYzKHRoaXMubG9nZ2VyLCgpPT50aGlzLlgoW24ud18sbi5HbCxuLnRMLG4uTU9dKSwibiIpOwp0aGlzLmxvZ2dlci5qKFcubGVuZ3RoKTt0aGlzLmxvZ2dlci5XKCk7cmV0dXJuIFd9UzEobil7dGhpcy5XLnRoZW4oKHtwNTpXfSk9PntXPy4obil9KX1RRCgpe3JldHVybiB0aGlzLmxvZ2dlci5zaGFyZSgpfX07dmFyIGVtPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5KPXt9O3RoaXMuTj1udWxsfX07dmFyICRZPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBOdj1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTt2YXIgZlY9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQpe3RoaXMuY2xpZW50PW47dGhpcy5yZXF1ZXN0S2V5PVc7dGhpcy5OPUR9Wmoobil7cmV0dXJuIEgzKHRoaXMsbixuZXcgeFksMCl9fTt2YXIgVEg9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKG4pe3N1cGVyKCk7dGhpcy5vcHRpb25zPW47dGhpcy5WPW5ldyBnLktWO3RoaXMuT3Y9dGhpcy5WLnByb21pc2U7dGhpcy5qPW5ldyBnLktWO3RoaXMuWT0xO3RoaXMuSj1uZXcgZy5LVjt0aGlzLlg9W107dGhpcy5pc1BhdXNlZD0hMTt0aGlzLnFKPW4ucUp8fCgoKT0+e30pOwp0aGlzLmxvZ2dlcj1uZXcgVzUxKExWKG4ueDN8fHt9KSk7ckFiKHRoaXMsbi5VZyxuLnFULG4ucVUsbi5USCx7Li4ueEdqLC4uLihuLmtkfHx7fSl9KTt0aGlzLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT52b2lkIHNQMih0aGlzKSl9YXN5bmMgc25hcHNob3Qobil7aWYodGhpcy5xTigpKXRocm93IEVycm9yKCJBbHJlYWR5IGRpc3Bvc2VkIik7CnRoaXMuV3x8dGhpcy5LfHxhd2FpdCB0aGlzLmoucHJvbWlzZTtpZih0aGlzLlcpcmV0dXJuIGF3YWl0IHRoaXMuVy5zbmFwc2hvdChuKTt0aHJvdyB0aGlzLks7fXBhdXNlKCl7dGhpcy5xTigpfHx0aGlzLmlzUGF1c2VkfHwodGhpcy5pc1BhdXNlZD0hMCx0aGlzLk4mJnRoaXMuTi5wYXVzZSgpKX1yZXN1bWUoKXshdGhpcy5xTigpJiZ0aGlzLmlzUGF1c2VkJiYodGhpcy5pc1BhdXNlZD0hMSx0aGlzLk4mJnRoaXMuTi5yZXN1bWUoKSl9YXN5bmMgY2hlY2tGb3JSZWZyZXNoKCl7aWYodGhpcy5xTigpKXRocm93IEVycm9yKCJBbHJlYWR5IGRpc3Bvc2VkIik7aWYodGhpcy5OKXt2YXIgbj10aGlzLk47bi5pc0V4cGlyZWQoKT8oT2wobiksbi5RNCgwKSxuPSEwKTpuPSExO24mJmF3YWl0IHRoaXMuSi5wcm9taXNlfWVsc2UgYXdhaXQgdGhpcy5KLnByb21pc2V9UzEobil7dGhpcy5XPy5TMT8uKG4pfWhhbmRsZUVycm9yKG4pe3RoaXMucU4oKXx8KHRoaXMuSz1uLHRoaXMuai5yZXNvbHZlKCksCnRoaXMub3B0aW9ucy50Nj8uKG4pKX1RRCgpe3JldHVybiB0aGlzLmxvZ2dlci5zaGFyZSgpfX0seEdqPXtGWjo0MzJFNSx1bTozRTUsbmI6MTAsamQ6MUU0LGhwOjNFNCxRWDozRTQscUs6NkU0LENxOjFFMyx3ODo2RTQsb3o6NkU1LGQ4Oi4yNSxBaToyLG1heEF0dGVtcHRzOjEwfSxTbT1jbGFzc3tjb25zdHJ1Y3RvcihuLFcsRCl7dGhpcy5lbmRUaW1lTXM9MDt0aGlzLk49bnVsbDt0aGlzLmlzUGF1c2VkPSExO3RoaXMudGljaz0oKT0+e2lmKCF0aGlzLmlzUGF1c2VkKXt2YXIgYj10aGlzLmVuZFRpbWVNcy1EYXRlLm5vdygpO2I8PXRoaXMuVz8odGhpcy5OPW51bGwsdGhpcy5RNCgwKSk6dGhpcy5OPXNldFRpbWVvdXQodGhpcy50aWNrLE1hdGgubWluKGIsdGhpcy51bSkpfX07CnRoaXMudW09Vzt0aGlzLlc9RDt0aGlzLnByb21pc2U9bmV3IFByb21pc2UoYj0+e3RoaXMuUTQ9Yn0pOwpZVFUodGhpcyxuKX1wYXVzZSgpe3RoaXMuaXNQYXVzZWR8fCh0aGlzLmlzUGF1c2VkPSEwLE9sKHRoaXMpKX1yZXN1bWUoKXt0aGlzLmlzUGF1c2VkJiYodGhpcy5pc1BhdXNlZD0hMSx0aGlzLnRpY2soKSl9Sigpe09sKHRoaXMpO3RoaXMuZW5kVGltZU1zPTA7dGhpcy5pc1BhdXNlZD0hMTt0aGlzLlE0KDEpfWlzRXhwaXJlZCgpe3JldHVybiBEYXRlLm5vdygpPnRoaXMuZW5kVGltZU1zfX07dmFyIEhwaT1NYXRoLmltdWw/PygobixXKT0+bipXfDApLFVsPVsxOTYsCjIwMCwyMjQsMThdLHVuPWNsYXNze2NvbnN0cnVjdG9yKG4sVz0wLEQ9W10pe3RoaXMubWF4SXRlbXM9bjt0aGlzLk49Vzt0aGlzLko9RH1iWSgpe3JldHVybiBTdHJpbmcodGhpcy5OKSsiLCIrdGhpcy5KLmpvaW4oKX1xcChuLFcpe3ZhciBEPXZvaWQgMDtpZih0aGlzLkpbdGhpcy5OXSE9PW4pe2xldCBiPXRoaXMuSi5pbmRleE9mKG4pO2IhPT0tMT8odGhpcy5KLnNwbGljZShiLDEpLGI8dGhpcy5OJiZ0aGlzLk4tLSx0aGlzLkouc3BsaWNlKHRoaXMuTiwwLG4pKTooRD10aGlzLkpbdGhpcy5OXSx0aGlzLkpbdGhpcy5OXT1uKX10aGlzLk49KHRoaXMuTisxKSV0aGlzLm1heEl0ZW1zO249UDMoImlVNXEtIU85QCQiLHRoaXMuYlkoKSk7RCYmbiYmVyhEKTtyZXR1cm4gbn19LEw1Uz1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMubG9nZ2VyPVc7dHJ5e3ZhciBEPWdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UmJiEhZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtJiYhIWdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSYmCiEhZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtfWNhdGNoKGIpe0Q9ITF9RCYmKHRoaXMuaW5kZXg9SWV3KG4pKX1OKG4sVyxELGIpe3ZhciB2PXRoaXMuaW5kZXg/djModGhpcy5sb2dnZXIsKCk9PmZlYih0aGlzLmluZGV4LHlpKG4pLFcsRCxiKSwiVyIpOiJ1IjsKdGhpcy5sb2dnZXIuTyh2KX1KKG4sVyl7dmFyIFtELGJdPXRoaXMuaW5kZXg/djModGhpcy5sb2dnZXIsKCk9PkpBdyh5aShuKSxXKSwiUiIpOlsidSJdOwp0aGlzLmxvZ2dlci5LKEQpO3JldHVybiBifX07dmFyIEFBUz17dG9TdHJpbmc6ZnVuY3Rpb24obil7dmFyIFc9W10sRD0wO24tPS0yMTQ3NDgzNjQ4O1dbRCsrXT0iYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiIuY2hhckF0KG4lNTIpO2ZvcihuPU1hdGguZmxvb3Iobi81Mik7bj4wOylXW0QrK109ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVowMTIzNDU2Nzg5Ii5jaGFyQXQobiU2Miksbj1NYXRoLmZsb29yKG4vNjIpO3JldHVybiBXLmpvaW4oIiIpfX07dmFyIFFwPWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMubG9nZ2VyPW47dGhpcy5YPW5ldyBnLktWfVpSKG4sVyl7dmFyIEQ9dGhpcy5XKG4pO1c/LihEKTtyZXR1cm4gdjModGhpcy5sb2dnZXIsKCk9PmcuRUEoRCwyKSx0aGlzLkopfUZwKG4sVyxEKXtyZXR1cm4gdjModGhpcy5sb2dnZXIsKCk9Plc/dGhpcy5aUihuLEQpOnRoaXMuVyhuLEQpLHRoaXMuTil9fSxGNj1jbGFzcyBleHRlbmRzIFFwe2NvbnN0cnVjdG9yKG4sVyxELGIpe3N1cGVyKG4pOwp0aGlzLmo9Vzt0aGlzLks9RDt0aGlzLk49Im0iO3RoaXMuSj0ieCI7dGhpcy5WPTA7ZCQodGhpcyxiKX1XKG4sVyl7dGhpcy5sb2dnZXIuTih0aGlzLk4pOysrdGhpcy5WPj10aGlzLksmJnRoaXMuWC5yZXNvbHZlKCk7dmFyIEQ9bigpO249djModGhpcy5sb2dnZXIsKCk9PnRoaXMuaihEKSwiQyIpOwppZihuPT09dm9pZCAwKXRocm93IG5ldyBRRygxNywiWU5KOlVuZGVmaW5lZCIpO2lmKCEobiBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpKXRocm93IG5ldyBRRygxOCwiT0RNOkludmFsaWQiKTtXPy4obik7cmV0dXJuIG59fSxVaGo9Y2xhc3MgZXh0ZW5kcyBRcHtjb25zdHJ1Y3RvcihuLFcsRCl7c3VwZXIobik7dGhpcy5qPVc7dGhpcy5OPSJmIjt0aGlzLko9InoiO2QkKHRoaXMsRCl9Vygpe3JldHVybiB0aGlzLmp9fSxacHQ9Y2xhc3MgZXh0ZW5kcyBRcHtjb25zdHJ1Y3RvcihuLFcsRCl7c3VwZXIobik7dGhpcy5qPVc7dGhpcy5OPSJ3Ijt0aGlzLko9InoiO2QkKHRoaXMsRCl9Vygpe3JldHVybiB2Myh0aGlzLmxvZ2dlciwoKT0+bHAodGhpcy5qKSwiZCIpfVpSKCl7cmV0dXJuIHRoaXMuan19LG9sdz1jbGFzcyBleHRlbmRzIFFwe2NvbnN0cnVjdG9yKG4sVyl7c3VwZXIobik7CnRoaXMuZXJyb3I9Vzt0aGlzLk49ImUiO3RoaXMuSj0ieSJ9Vygpe2lmKHRoaXMuailyZXR1cm4gdGhpcy5qO3RoaXMuaj1sbih0aGlzLG49PiJfIittaHcobikpOwpyZXR1cm4gbG4odGhpcyxuPT5uKX19LFFpPWNsYXNzIGV4dGVuZHMgUXB7Y29uc3RydWN0b3IobixXLEQpe3N1cGVyKG4pOwp0aGlzLmo9Vzt0aGlzLmNsaWVudFN0YXRlPUQ7dGhpcy5OPSJTIjt0aGlzLko9InEifVcoKXt2YXIgbj1NYXRoLmZsb29yKERhdGUubm93KCkvMUUzKSxXPVtNYXRoLnJhbmRvbSgpKjI1NSxNYXRoLnJhbmRvbSgpKjI1NV0sRD1XLmNvbmNhdChbdGhpcy5qJjI1NSx0aGlzLmNsaWVudFN0YXRlXSxbbj4+MjQmMjU1LG4+PjE2JjI1NSxuPj44JjI1NSxuJjI1NV0pO249bmV3IFVpbnQ4QXJyYXkoMitELmxlbmd0aCk7blswXT0zNDtuWzFdPUQubGVuZ3RoO24uc2V0KEQsMik7RD1uLnN1YmFycmF5KDIpO1c9Vy5sZW5ndGg7Zm9yKGxldCBiPVc7YjxELmxlbmd0aDsrK2IpRFtiXV49RFtiJVddO3RoaXMubG9nZ2VyLmNKKHRoaXMuY2xpZW50U3RhdGUpO3JldHVybiBufX07dmFyIGVZaT17WFU6M0U0LHJTOjJFNH0sQW10PWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMuWD1uZXcgZy5LVjt0aGlzLmo9MDt0aGlzLko9dm9pZCAwO3RoaXMuc3RhdGU9Mjt0aGlzLk8xPW4uTzE7dGhpcy5VZz1uLlVnO3RoaXMua2Q9ey4uLmVZaSwuLi4obi5rZHx8e30pfTt0aGlzLmxvZ2dlcj1uLk8xLlFEKCk7dGhpcy5vbkVycm9yPW4ub25FcnJvcj8/KCgpPT57fSk7CnRoaXMuWGw9bi5YbHx8ITE7aWYoZ2R0KG4pKXtsZXQgYj10aGlzLk8xO3RoaXMuVj0oKT0+TlR0KGIpLmNhdGNoKHY9Pnt0aGlzLko9dj10aGlzLnJlcG9ydEVycm9yKG5ldyBRRyh0aGlzLk4/MjA6MzIsIlRSRzpEaXNwb3NlZCIsdikpO3RoaXMuTj8uZGlzcG9zZSgpO3RoaXMuTj12b2lkIDA7dGhpcy5YLnJlamVjdCh2KX0pOwpwNGkoYiwoKT0+dm9pZCBCMyh0aGlzKSk7CmIuWT09PTImJkIzKHRoaXMpfWVsc2UgdGhpcy5WPW4uRTYsQjModGhpcyk7dmFyIFc9dGhpcy5sb2dnZXIuc2hhcmUoKTtXLk4oIm8iKTt2YXIgRD1uZXcgTWwoVywibyIpO3RoaXMuWC5wcm9taXNlLnRoZW4oKCk9PntELmRvbmUoKTtXLlcoKTtXLmRpc3Bvc2UoKX0sKCk9PnZvaWQgVy5kaXNwb3NlKCkpOwp0aGlzLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57dGhpcy5OPyh0aGlzLk4uZGlzcG9zZSgpLHRoaXMuTj12b2lkIDApOnRoaXMuSj90aGlzLmxvZ2dlci5XKCk6KHRoaXMuSj10aGlzLnJlcG9ydEVycm9yKG5ldyBRRygzMiwiVE5QOkRpc3Bvc2VkIikpLHRoaXMubG9nZ2VyLlcoKSx0aGlzLlgucmVqZWN0KHRoaXMuSikpfSk7CmcudSh0aGlzLHRoaXMubG9nZ2VyKX1IJCgpe3JldHVybiB0aGlzLlgucHJvbWlzZX1XKG4pe3JldHVybiBNdih0aGlzLHsuLi5ufSwhMSl9WlIobil7cmV0dXJuIE12KHRoaXMsey4uLm59LCEwKX15aChuKXtpZighKG4+MTUwKSl0cnl7dGhpcy5jYWNoZT1uZXcgTDVTKG4sdGhpcy5sb2dnZXIpfWNhdGNoKFcpe3RoaXMucmVwb3J0RXJyb3IobmV3IFFHKDIyLCJHQko6aW5pdCIsVykpfX1yZXBvcnRFcnJvcihuKXt0aGlzLmxvZ2dlci5KKG4uY29kZSk7dGhpcy5vbkVycm9yKG4pO3JldHVybiBufX0sZ2R0PWZ1bmN0aW9uKG4pe3JldHVybiBxMyhXPT57aWYoIWtDeChXKSlyZXR1cm4hMTtmb3IobGV0IFtELGJdb2YgT2JqZWN0LmVudHJpZXMobikpe2xldCB2PUQsaz1iO2lmKCEodiBpbiBXKSl7aWYoay5LUD09PSEwKWNvbnRpbnVlO3JldHVybiExfWlmKCFrKFdbdl0pKXJldHVybiExfXJldHVybiEwfSl9KHtPMTpxMyhuPT5uIGluc3RhbmNlb2YgVEgpfSwiIik7dmFyIHFuaT1jbGFzc3tjb25zdHJ1Y3Rvcigpe2lmKCFWcCl7VnA9bmV3IGhxKG5ldyBYbkMpO3ZhciBuPXYwKCJjbGllbnRfc3RyZWFtel93ZWJfZmx1c2hfY291bnQiLC0xKTtuIT09LTEmJihWcC5YPW4pfXRoaXMuVz1uPVZwO3VlKG4sIi9jbGllbnRfc3RyZWFtei95b3V0dWJlL2FiYS9nYWMiLERYKCJ0eXBlIiksRFgoInNlcXVlbmNlIikpfUoobixXKXtkcCh0aGlzLlcsIi9jbGllbnRfc3RyZWFtei95b3V0dWJlL2FiYS9nYWMiLG4sVyl9Tigpe3JldHVybiB0aGlzLlcuTigiL2NsaWVudF9zdHJlYW16L3lvdXR1YmUvYWJhL2dhYyIpfX07Zy5jcT1kb2N1bWVudDtnLncyPXdpbmRvdzt2YXIgZGhaPXtIdToiYWxsb3ctZm9ybXMiLFVpOiJhbGxvdy1tb2RhbHMiLEdvOiJhbGxvdy1vcmllbnRhdGlvbi1sb2NrIixFaToiYWxsb3ctcG9pbnRlci1sb2NrIixNTToiYWxsb3ctcG9wdXBzIixmRToiYWxsb3ctcG9wdXBzLXRvLWVzY2FwZS1zYW5kYm94IixGODoiYWxsb3ctcHJlc2VudGF0aW9uIixEczoiYWxsb3ctc2FtZS1vcmlnaW4iLHZ1OiJhbGxvdy1zY3JpcHRzIixPaToiYWxsb3ctdG9wLW5hdmlnYXRpb24iLGdNOiJhbGxvdy10b3AtbmF2aWdhdGlvbi1ieS11c2VyLWFjdGl2YXRpb24ifSxsZVM9Zy53RCgoKT0+ekhpKCkpO2cuRT1nLmJyLnByb3RvdHlwZTtnLkUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGcuYnIodGhpcy5sZWZ0LHRoaXMudG9wLHRoaXMud2lkdGgsdGhpcy5oZWlnaHQpfTsKZy5FLmNvbnRhaW5zPWZ1bmN0aW9uKG4pe3JldHVybiBuIGluc3RhbmNlb2YgZy5NWT9uLng+PXRoaXMubGVmdCYmbi54PD10aGlzLmxlZnQrdGhpcy53aWR0aCYmbi55Pj10aGlzLnRvcCYmbi55PD10aGlzLnRvcCt0aGlzLmhlaWdodDp0aGlzLmxlZnQ8PW4ubGVmdCYmdGhpcy5sZWZ0K3RoaXMud2lkdGg+PW4ubGVmdCtuLndpZHRoJiZ0aGlzLnRvcDw9bi50b3AmJnRoaXMudG9wK3RoaXMuaGVpZ2h0Pj1uLnRvcCtuLmhlaWdodH07CmcuRS5nZXRTaXplPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBnLlFlKHRoaXMud2lkdGgsdGhpcy5oZWlnaHQpfTsKZy5FLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLmxlZnQ9TWF0aC5jZWlsKHRoaXMubGVmdCk7dGhpcy50b3A9TWF0aC5jZWlsKHRoaXMudG9wKTt0aGlzLndpZHRoPU1hdGguY2VpbCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmNlaWwodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTsKZy5FLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy5sZWZ0PU1hdGguZmxvb3IodGhpcy5sZWZ0KTt0aGlzLnRvcD1NYXRoLmZsb29yKHRoaXMudG9wKTt0aGlzLndpZHRoPU1hdGguZmxvb3IodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5mbG9vcih0aGlzLmhlaWdodCk7cmV0dXJuIHRoaXN9OwpnLkUucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLmxlZnQ9TWF0aC5yb3VuZCh0aGlzLmxlZnQpO3RoaXMudG9wPU1hdGgucm91bmQodGhpcy50b3ApO3RoaXMud2lkdGg9TWF0aC5yb3VuZCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLnJvdW5kKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307CmcuRS5zY2FsZT1mdW5jdGlvbihuLFcpe1c9dHlwZW9mIFc9PT0ibnVtYmVyIj9XOm47dGhpcy5sZWZ0Kj1uO3RoaXMud2lkdGgqPW47dGhpcy50b3AqPVc7dGhpcy5oZWlnaHQqPVc7cmV0dXJuIHRoaXN9O3ZhciBqUEM9L14tLS4rLyxMVz17fTtnLkdFMj1nLndEKCgpPT57dmFyIG49ITE7dHJ5e2xldCBXPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwicGFzc2l2ZSIse2dldCgpe249ITB9fSk7Zy5xaS5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0IixudWxsLFcpfWNhdGNoKFcpe31yZXR1cm4gbn0pO3ZhciB6Q3c9KG5ldyBEYXRlKS5nZXRUaW1lKCk7dmFyIHRJdD1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTt2YXIgJEcxPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxEKXt0aGlzLmZ2PW47dGhpcy5sMD1XO3RoaXMubWV0YWRhdGE9RH1nZXRNZXRhZGF0YSgpe3JldHVybiB0aGlzLm1ldGFkYXRhfX07dmFyIEJUdD1jbGFzc3tjb25zdHJ1Y3RvcihuLFc9e30pe3RoaXMuUHo9bjt0aGlzLm1ldGFkYXRhPVc7dGhpcy5zdGF0dXM9bnVsbH1nZXRNZXRhZGF0YSgpe3JldHVybiB0aGlzLm1ldGFkYXRhfWdldFN0YXR1cygpe3JldHVybiB0aGlzLnN0YXR1c319O3ZhciByc3c9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYix2KXt0aGlzLm5hbWU9bjt0aGlzLm1ldGhvZFR5cGU9InVuYXJ5Ijt0aGlzLnJlcXVlc3RUeXBlPVc7dGhpcy5yZXNwb25zZVR5cGU9RDt0aGlzLk49Yjt0aGlzLlc9dn1KKG4sVz17fSl7cmV0dXJuIG5ldyAkRzEobix0aGlzLFcpfWdldE5hbWUoKXtyZXR1cm4gdGhpcy5uYW1lfX07dmFyIHNPTT1uZXcgcnN3KCIvZ29vZ2xlLmludGVybmFsLndhYS52MS5XYWEvQ3JlYXRlIiwkWSx0SXQsbj0+bi5iWSgpLEs4KHRJdCkpO3ZhciBOUDI9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIHFUUz1uZXcgcnN3KCIvZ29vZ2xlLmludGVybmFsLndhYS52MS5XYWEvR2VuZXJhdGVJVCIsTnYsTlAyLG49Pm4uYlkoKSxLOChOUDIpKTt2YXIgWDJyPW5ldyBTZXQoWyJTQVBJU0lESEFTSCIsIkFQSVNJREhBU0giXSk7dmFyIFJIaT1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9Z2V0VmFsdWUoKXt2YXIgbj1pVyh0aGlzLDIpO2lmKEFycmF5LmlzQXJyYXkobil8fG4gaW5zdGFuY2VvZiBnLlFtKXRocm93IEVycm9yKCJDYW5ub3QgYWNjZXNzIHRoZSBBbnkudmFsdWUgZmllbGQgb24gQW55IHByb3RvcyBlbmNvZGVkIHVzaW5nIHRoZSBqc3BiIGZvcm1hdCwgY2FsbCB1bnBhY2tKc3BiIGluc3RlYWQiKTtyZXR1cm4gUnoodGhpcywyKX19O3ZhciBNMWI9SzgoY2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfWdldE1lc3NhZ2UoKXtyZXR1cm4gWTkodGhpcywyKX19KTt2YXIgdHUxPWNsYXNze2NvbnN0cnVjdG9yKG4sVyl7dGhpcy5KPVtdO3RoaXMuWD1bXTt0aGlzLmo9W107dGhpcy5XPVtdO3RoaXMuTj1bXTt0aGlzLlY9bi5NRTt0aGlzLks9Vzt0aGlzLnhocj1uLnhocjt0aGlzLlYmJnc0cih0aGlzKX14VihuLFcpe249PT0iZGF0YSI/dGhpcy5KLnB1c2goVyk6bj09PSJtZXRhZGF0YSI/dGhpcy5YLnB1c2goVyk6bj09PSJzdGF0dXMiP3RoaXMuai5wdXNoKFcpOm49PT0iZW5kIj90aGlzLlcucHVzaChXKTpuPT09ImVycm9yIiYmdGhpcy5OLnB1c2goVyl9cmVtb3ZlTGlzdGVuZXIobixXKXtuPT09ImRhdGEiP0ExKHRoaXMuSixXKTpuPT09Im1ldGFkYXRhIj9BMSh0aGlzLlgsVyk6bj09PSJzdGF0dXMiP0ExKHRoaXMuaixXKTpuPT09ImVuZCI/QTEodGhpcy5XLFcpOm49PT0iZXJyb3IiJiZBMSh0aGlzLk4sVyk7cmV0dXJuIHRoaXN9Y2FuY2VsKCl7dGhpcy54aHIuYWJvcnQoKX19LFFQUz1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKCl7c3VwZXIoKTsKdGhpcy5uYW1lPSJBc3luY1N0YWNrIjtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxuZXcudGFyZ2V0LnByb3RvdHlwZSl9fTtnLml4KG1HLEJKKTttRy5wcm90b3R5cGUuTj1mdW5jdGlvbigpe3ZhciBuPW5ldyBLVyh0aGlzLlgsdGhpcy5XKTt0aGlzLkomJm4uc2V0Q3JlZGVudGlhbHNNb2RlKHRoaXMuSik7cmV0dXJuIG59OwptRy5wcm90b3R5cGUuc2V0Q3JlZGVudGlhbHNNb2RlPWZ1bmN0aW9uKG4pe3RoaXMuSj1ufTsKZy5peChLVyxnLm9XKTtnLkU9S1cucHJvdG90eXBlO2cuRS5vcGVuPWZ1bmN0aW9uKG4sVyl7aWYodGhpcy5yZWFkeVN0YXRlIT0wKXRocm93IHRoaXMuYWJvcnQoKSxFcnJvcigiRXJyb3IgcmVvcGVuaW5nIGEgY29ubmVjdGlvbiIpO3RoaXMuY0o9bjt0aGlzLk89Vzt0aGlzLnJlYWR5U3RhdGU9MTtQWSh0aGlzKX07CmcuRS5zZW5kPWZ1bmN0aW9uKG4pe2lmKHRoaXMucmVhZHlTdGF0ZSE9MSl0aHJvdyB0aGlzLmFib3J0KCksRXJyb3IoIm5lZWQgdG8gY2FsbCBvcGVuKCkgZmlyc3QuICIpO2lmKHRoaXMuWS5zaWduYWwuYWJvcnRlZCl0aHJvdyB0aGlzLmFib3J0KCksRXJyb3IoIlJlcXVlc3Qgd2FzIGFib3J0ZWQuIik7dGhpcy5OPSEwO3ZhciBXPXtoZWFkZXJzOnRoaXMuRCxtZXRob2Q6dGhpcy5jSixjcmVkZW50aWFsczp0aGlzLmosY2FjaGU6dm9pZCAwLHNpZ25hbDp0aGlzLlkuc2lnbmFsfTtuJiYoVy5ib2R5PW4pOyh0aGlzLnR3fHxnLnFpKS5mZXRjaChuZXcgUmVxdWVzdCh0aGlzLk8sVykpLnRoZW4odGhpcy5HRS5iaW5kKHRoaXMpLHRoaXMuRFAuYmluZCh0aGlzKSl9OwpnLkUuYWJvcnQ9ZnVuY3Rpb24oKXt0aGlzLnJlc3BvbnNlPXRoaXMucmVzcG9uc2VUZXh0PSIiO3RoaXMuRD1uZXcgSGVhZGVyczt0aGlzLnN0YXR1cz0wO3RoaXMuWS5hYm9ydCgiUmVxdWVzdCB3YXMgYWJvcnRlZC4iKTt0aGlzLlcmJnRoaXMuVy5jYW5jZWwoIlJlcXVlc3Qgd2FzIGFib3J0ZWQuIikuY2F0Y2goKCk9Pnt9KTsKdGhpcy5yZWFkeVN0YXRlPj0xJiZ0aGlzLk4mJnRoaXMucmVhZHlTdGF0ZSE9NCYmKHRoaXMuTj0hMSxaYSh0aGlzKSk7dGhpcy5yZWFkeVN0YXRlPTB9OwpnLkUuR0U9ZnVuY3Rpb24obil7aWYodGhpcy5OJiYodGhpcy5YPW4sdGhpcy5KfHwodGhpcy5zdGF0dXM9dGhpcy5YLnN0YXR1cyx0aGlzLnN0YXR1c1RleHQ9dGhpcy5YLnN0YXR1c1RleHQsdGhpcy5KPW4uaGVhZGVycyx0aGlzLnJlYWR5U3RhdGU9MixQWSh0aGlzKSksdGhpcy5OJiYodGhpcy5yZWFkeVN0YXRlPTMsUFkodGhpcyksdGhpcy5OKSkpaWYodGhpcy5yZXNwb25zZVR5cGU9PT0iYXJyYXlidWZmZXIiKW4uYXJyYXlCdWZmZXIoKS50aGVuKHRoaXMuSFQuYmluZCh0aGlzKSx0aGlzLkRQLmJpbmQodGhpcykpO2Vsc2UgaWYodHlwZW9mIGcucWkuUmVhZGFibGVTdHJlYW0hPT0idW5kZWZpbmVkIiYmImJvZHkiaW4gbil7dGhpcy5XPW4uYm9keS5nZXRSZWFkZXIoKTtpZih0aGlzLlYpe2lmKHRoaXMucmVzcG9uc2VUeXBlKXRocm93IEVycm9yKCdyZXNwb25zZVR5cGUgbXVzdCBiZSBlbXB0eSBmb3IgInN0cmVhbUJpbmFyeUNodW5rcyIgbW9kZSByZXNwb25zZXMuJyk7dGhpcy5yZXNwb25zZT0KW119ZWxzZSB0aGlzLnJlc3BvbnNlPXRoaXMucmVzcG9uc2VUZXh0PSIiLHRoaXMuSz1uZXcgVGV4dERlY29kZXI7T2oodGhpcyl9ZWxzZSBuLnRleHQoKS50aGVuKHRoaXMuVUQuYmluZCh0aGlzKSx0aGlzLkRQLmJpbmQodGhpcykpfTsKZy5FLmxFPWZ1bmN0aW9uKG4pe2lmKHRoaXMuTil7aWYodGhpcy5WJiZuLnZhbHVlKXRoaXMucmVzcG9uc2UucHVzaChuLnZhbHVlKTtlbHNlIGlmKCF0aGlzLlYpe3ZhciBXPW4udmFsdWU/bi52YWx1ZTpuZXcgVWludDhBcnJheSgwKTtpZihXPXRoaXMuSy5kZWNvZGUoVyx7c3RyZWFtOiFuLmRvbmV9KSl0aGlzLnJlc3BvbnNlPXRoaXMucmVzcG9uc2VUZXh0Kz1XfW4uZG9uZT9aYSh0aGlzKTpQWSh0aGlzKTt0aGlzLnJlYWR5U3RhdGU9PTMmJk9qKHRoaXMpfX07CmcuRS5VRD1mdW5jdGlvbihuKXt0aGlzLk4mJih0aGlzLnJlc3BvbnNlPXRoaXMucmVzcG9uc2VUZXh0PW4sWmEodGhpcykpfTsKZy5FLkhUPWZ1bmN0aW9uKG4pe3RoaXMuTiYmKHRoaXMucmVzcG9uc2U9bixaYSh0aGlzKSl9OwpnLkUuRFA9ZnVuY3Rpb24oKXt0aGlzLk4mJlphKHRoaXMpfTsKZy5FLnNldFJlcXVlc3RIZWFkZXI9ZnVuY3Rpb24obixXKXt0aGlzLkQuYXBwZW5kKG4sVyl9OwpnLkUuZ2V0UmVzcG9uc2VIZWFkZXI9ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMuSj90aGlzLkouZ2V0KG4udG9Mb3dlckNhc2UoKSl8fCIiOiIifTsKZy5FLmdldEFsbFJlc3BvbnNlSGVhZGVycz1mdW5jdGlvbigpe2lmKCF0aGlzLkopcmV0dXJuIiI7Zm9yKHZhciBuPVtdLFc9dGhpcy5KLmVudHJpZXMoKSxEPVcubmV4dCgpOyFELmRvbmU7KUQ9RC52YWx1ZSxuLnB1c2goRFswXSsiOiAiK0RbMV0pLEQ9Vy5uZXh0KCk7cmV0dXJuIG4uam9pbigiXHJcbiIpfTsKZy5FLnNldENyZWRlbnRpYWxzTW9kZT1mdW5jdGlvbihuKXt0aGlzLmo9bn07Ck9iamVjdC5kZWZpbmVQcm9wZXJ0eShLVy5wcm90b3R5cGUsIndpdGhDcmVkZW50aWFscyIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmo9PT0iaW5jbHVkZSJ9LApzZXQ6ZnVuY3Rpb24obil7dGhpcy5zZXRDcmVkZW50aWFsc01vZGUobj8iaW5jbHVkZSI6InNhbWUtb3JpZ2luIil9fSk7Zy5Vai5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXt2YXIgbj1bXSxXPXRoaXMuWDtXJiZuLnB1c2goek4oVyxwbngsITApLCI6Iik7dmFyIEQ9dGhpcy5OO2lmKER8fFc9PSJmaWxlIiluLnB1c2goIi8vIiksKFc9dGhpcy5ZKSYmbi5wdXNoKHpOKFcscG54LCEwKSwiQCIpLG4ucHVzaChxaChEKS5yZXBsYWNlKC8lMjUoWzAtOWEtZkEtRl17Mn0pL2csIiUkMSIpKSxEPXRoaXMuVixEIT1udWxsJiZuLnB1c2goIjoiLFN0cmluZyhEKSk7aWYoRD10aGlzLkopdGhpcy5OJiZELmNoYXJBdCgwKSE9Ii8iJiZuLnB1c2goIi8iKSxuLnB1c2goek4oRCxELmNoYXJBdCgwKT09Ii8iP1luTTpIN2osITApKTsoRD10aGlzLlcudG9TdHJpbmcoKSkmJm4ucHVzaCgiPyIsRCk7KEQ9dGhpcy5qKSYmbi5wdXNoKCIjIix6TihELGZVYikpO3JldHVybiBuLmpvaW4oIiIpfTsKZy5Vai5wcm90b3R5cGUucmVzb2x2ZT1mdW5jdGlvbihuKXt2YXIgVz10aGlzLmNsb25lKCksRD0hIW4uWDtEP3lOKFcsbi5YKTpEPSEhbi5ZO0Q/Vy5ZPW4uWTpEPSEhbi5OO0Q/RWooVyxuLk4pOkQ9bi5WIT1udWxsO3ZhciBiPW4uSjtpZihEKWlyKFcsbi5WKTtlbHNlIGlmKEQ9ISFuLkope2lmKGIuY2hhckF0KDApIT0iLyIpaWYodGhpcy5OJiYhdGhpcy5KKWI9Ii8iK2I7ZWxzZXt2YXIgdj1XLkoubGFzdEluZGV4T2YoIi8iKTt2IT0tMSYmKGI9Vy5KLnNsaWNlKDAsdisxKStiKX12PWI7aWYodj09Ii4uInx8dj09Ii4iKWI9IiI7ZWxzZSBpZih2LmluZGV4T2YoIi4vIikhPS0xfHx2LmluZGV4T2YoIi8uIikhPS0xKXtiPWcualUodiwiLyIpO3Y9di5zcGxpdCgiLyIpO2xldCBrPVtdO2ZvcihsZXQgaD0wO2g8di5sZW5ndGg7KXtsZXQgeD12W2grK107eD09Ii4iP2ImJmg9PXYubGVuZ3RoJiZrLnB1c2goIiIpOng9PSIuLiI/KChrLmxlbmd0aD4xfHxrLmxlbmd0aD09MSYma1swXSE9CiIiKSYmay5wb3AoKSxiJiZoPT12Lmxlbmd0aCYmay5wdXNoKCIiKSk6KGsucHVzaCh4KSxiPSEwKX1iPWsuam9pbigiLyIpfWVsc2UgYj12fUQ/Vy5KPWI6RD1uLlcudG9TdHJpbmcoKSE9PSIiO0Q/dXIoVyxuLlcuY2xvbmUoKSk6RD0hIW4uajtEJiYoVy5qPW4uaik7cmV0dXJuIFd9OwpnLlVqLnByb3RvdHlwZS5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBuZXcgZy5Vaih0aGlzKX07CnZhciBwbng9L1sjXC9cP0BdL2csSDdqPS9bI1w/Ol0vZyxZbk09L1sjXD9dL2csRHhTPS9bI1w/QF0vZyxmVWI9LyMvZztnLkU9ZGgucHJvdG90eXBlO2cuRS5hZGQ9ZnVuY3Rpb24obixXKXtUTih0aGlzKTt0aGlzLlc9bnVsbDtuPWpTKHRoaXMsbik7dmFyIEQ9dGhpcy5OLmdldChuKTtEfHx0aGlzLk4uc2V0KG4sRD1bXSk7RC5wdXNoKFcpO3RoaXMuSj10aGlzLkorMTtyZXR1cm4gdGhpc307CmcuRS5yZW1vdmU9ZnVuY3Rpb24obil7VE4odGhpcyk7bj1qUyh0aGlzLG4pO3JldHVybiB0aGlzLk4uaGFzKG4pPyh0aGlzLlc9bnVsbCx0aGlzLko9dGhpcy5KLXRoaXMuTi5nZXQobikubGVuZ3RoLHRoaXMuTi5kZWxldGUobikpOiExfTsKZy5FLmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy5OPXRoaXMuVz1udWxsO3RoaXMuSj0wfTsKZy5FLmlzRW1wdHk9ZnVuY3Rpb24oKXtUTih0aGlzKTtyZXR1cm4gdGhpcy5KPT0wfTsKZy5FLmZvckVhY2g9ZnVuY3Rpb24obixXKXtUTih0aGlzKTt0aGlzLk4uZm9yRWFjaChmdW5jdGlvbihELGIpe0QuZm9yRWFjaChmdW5jdGlvbih2KXtuLmNhbGwoVyx2LGIsdGhpcyl9LHRoaXMpfSx0aGlzKX07CmcuRS51Qj1mdW5jdGlvbigpe1ROKHRoaXMpO3ZhciBuPUFycmF5LmZyb20odGhpcy5OLnZhbHVlcygpKSxXPUFycmF5LmZyb20odGhpcy5OLmtleXMoKSksRD1bXTtmb3IobGV0IGI9MDtiPFcubGVuZ3RoO2IrKyl7bGV0IHY9bltiXTtmb3IobGV0IGs9MDtrPHYubGVuZ3RoO2srKylELnB1c2goV1tiXSl9cmV0dXJuIER9OwpnLkUuejc9ZnVuY3Rpb24obil7VE4odGhpcyk7dmFyIFc9W107aWYodHlwZW9mIG49PT0ic3RyaW5nIilDVyh0aGlzLG4pJiYoVz1XLmNvbmNhdCh0aGlzLk4uZ2V0KGpTKHRoaXMsbikpKSk7ZWxzZXtuPUFycmF5LmZyb20odGhpcy5OLnZhbHVlcygpKTtmb3IobGV0IEQ9MDtEPG4ubGVuZ3RoO0QrKylXPVcuY29uY2F0KG5bRF0pfXJldHVybiBXfTsKZy5FLnNldD1mdW5jdGlvbihuLFcpe1ROKHRoaXMpO3RoaXMuVz1udWxsO249alModGhpcyxuKTtDVyh0aGlzLG4pJiYodGhpcy5KPXRoaXMuSi10aGlzLk4uZ2V0KG4pLmxlbmd0aCk7dGhpcy5OLnNldChuLFtXXSk7dGhpcy5KPXRoaXMuSisxO3JldHVybiB0aGlzfTsKZy5FLmdldD1mdW5jdGlvbihuLFcpe2lmKCFuKXJldHVybiBXO249dGhpcy56NyhuKTtyZXR1cm4gbi5sZW5ndGg+MD9TdHJpbmcoblswXSk6V307CmcuRS50b1N0cmluZz1mdW5jdGlvbigpe2lmKHRoaXMuVylyZXR1cm4gdGhpcy5XO2lmKCF0aGlzLk4pcmV0dXJuIiI7dmFyIG49W10sVz1BcnJheS5mcm9tKHRoaXMuTi5rZXlzKCkpO2ZvcihsZXQgYj0wO2I8Vy5sZW5ndGg7YisrKXt2YXIgRD1XW2JdO2xldCB2PXFoKEQpO0Q9dGhpcy56NyhEKTtmb3IobGV0IGs9MDtrPEQubGVuZ3RoO2srKyl7bGV0IGg9djtEW2tdIT09IiImJihoKz0iPSIrcWgoRFtrXSkpO24ucHVzaChoKX19cmV0dXJuIHRoaXMuVz1uLmpvaW4oIiYiKX07CmcuRS5jbG9uZT1mdW5jdGlvbigpe3ZhciBuPW5ldyBkaDtuLlc9dGhpcy5XO3RoaXMuTiYmKG4uTj1uZXcgTWFwKHRoaXMuTiksbi5KPXRoaXMuSik7cmV0dXJuIG59OwpnLkUuZXh0ZW5kPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVz0wO1c8YXJndW1lbnRzLmxlbmd0aDtXKyspbktpKGFyZ3VtZW50c1tXXSxmdW5jdGlvbihELGIpe3RoaXMuYWRkKGIsRCl9LHRoaXMpfTtnLml4KEJZLGcuRk0pO3ZhciBKc2o9W107Zy5FPUJZLnByb3RvdHlwZTtnLkUuU189ZnVuY3Rpb24obixXLEQsYil7QXJyYXkuaXNBcnJheShXKXx8KFcmJihKc2pbMF09Vy50b1N0cmluZygpKSxXPUpzaik7Zm9yKGxldCB2PTA7djxXLmxlbmd0aDt2Kyspe2xldCBrPUFIKG4sV1t2XSxEfHx0aGlzLmhhbmRsZUV2ZW50LGJ8fCExLHRoaXMuSnx8dGhpcyk7aWYoIWspYnJlYWs7dGhpcy5OW2sua2V5XT1rfXJldHVybiB0aGlzfTsKZy5FLmVGPWZ1bmN0aW9uKG4sVyxELGIpe3JldHVybiBGbSh0aGlzLG4sVyxELGIpfTsKZy5FLndIPWZ1bmN0aW9uKG4sVyxELGIsdil7aWYoQXJyYXkuaXNBcnJheShXKSlmb3IobGV0IGs9MDtrPFcubGVuZ3RoO2srKyl0aGlzLndIKG4sV1trXSxELGIsdik7ZWxzZSBEPUR8fHRoaXMuaGFuZGxlRXZlbnQsYj1nLmZ0KGIpPyEhYi5jYXB0dXJlOiEhYix2PXZ8fHRoaXMuSnx8dGhpcyxEPW1oKEQpLGI9ISFiLFc9TjUobik/bi5zYyhXLEQsYix2KTpuPyhuPU8yKG4pKT9uLnNjKFcsRCxiLHYpOm51bGw6bnVsbCxXJiYoRTIoVyksZGVsZXRlIHRoaXMuTltXLmtleV0pfTsKZy5FLlRpPWZ1bmN0aW9uKCl7Zy5hXyh0aGlzLk4sZnVuY3Rpb24obixXKXt0aGlzLk4uaGFzT3duUHJvcGVydHkoVykmJkUyKG4pfSx0aGlzKTsKdGhpcy5OPXt9fTsKZy5FLm1BPWZ1bmN0aW9uKCl7QlkuVEIubUEuY2FsbCh0aGlzKTt0aGlzLlRpKCl9OwpnLkUuaGFuZGxlRXZlbnQ9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiRXZlbnRIYW5kbGVyLmhhbmRsZUV2ZW50IG5vdCBpbXBsZW1lbnRlZCIpO307dmFyIGtoUz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuVz0hMDt0aGlzLko9MDt0aGlzLk49IiJ9aXNJbnB1dFZhbGlkKCl7cmV0dXJuIHRoaXMuV319O010LnByb3RvdHlwZS5pc0lucHV0VmFsaWQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OIT0zfTsKTXQucHJvdG90eXBlLnM4PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuVn07Ck10LnByb3RvdHlwZS5hbz1mdW5jdGlvbigpe3JldHVybiEwfTsKTXQucHJvdG90eXBlLnBhcnNlPWZ1bmN0aW9uKG4pe2Z1bmN0aW9uIFcoTCl7TCYxMjgmJlJzKGssaCx4LCJpbnZhbGlkIHRhZyIpOyhMJjcpIT0yJiZScyhrLGgseCwiaW52YWxpZCB3aXJlIHR5cGUiKTtrLlc9TD4+PjM7ay5XIT0xJiZrLlchPTImJmsuVyE9MTUmJlJzKGssaCx4LCJ1bmV4cGVjdGVkIHRhZyIpO2suTj0xO2suSj0wO2suWD0wfQpmdW5jdGlvbiBEKEwpe2suWCsrO2suWD09NSYmTCYyNDAmJlJzKGssaCx4LCJtZXNzYWdlIGxlbmd0aCB0b28gbG9uZyIpO2suSnw9KEwmMTI3KTw8KGsuWC0xKSo3O0wmMTI4fHwoay5OPTIsay5ZPTAsdHlwZW9mIFVpbnQ4QXJyYXkhPT0idW5kZWZpbmVkIj9rLmo9bmV3IFVpbnQ4QXJyYXkoay5KKTprLmo9QXJyYXkoay5KKSxrLko9PTAmJnYoKSl9CmZ1bmN0aW9uIGIoTCl7ay5qW2suWSsrXT1MO2suWT09ay5KJiZ2KCl9CmZ1bmN0aW9uIHYoKXtpZihrLlc8MTUpe2xldCBMPXt9O0xbay5XXT1rLmo7ay5LLnB1c2goTCl9ay5OPTB9CmZvcih2YXIgaz10aGlzLGg9biBpbnN0YW5jZW9mIEFycmF5P246bmV3IFVpbnQ4QXJyYXkobikseD0wO3g8aC5sZW5ndGg7KXtzd2l0Y2goay5OKXtjYXNlIDM6UnMoayxoLHgsInN0cmVhbSBhbHJlYWR5IGJyb2tlbiIpO2JyZWFrO2Nhc2UgMDpXKGhbeF0pO2JyZWFrO2Nhc2UgMTpEKGhbeF0pO2JyZWFrO2Nhc2UgMjpiKGhbeF0pO2JyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoInVuZXhwZWN0ZWQgcGFyc2VyIHN0YXRlOiAiK2suTik7fWsuRCsrO3grK31uPWsuSztrLks9W107cmV0dXJuIG4ubGVuZ3RoPjA/bjpudWxsfTtRTi5wcm90b3R5cGUuaXNJbnB1dFZhbGlkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTj09PW51bGx9OwpRTi5wcm90b3R5cGUuczg9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OfTsKUU4ucHJvdG90eXBlLmFvPWZ1bmN0aW9uKCl7cmV0dXJuITF9OwpRTi5wcm90b3R5cGUucGFyc2U9ZnVuY3Rpb24obil7dGhpcy5OIT09bnVsbCYmVk4odGhpcyxuLCJzdHJlYW0gYWxyZWFkeSBicm9rZW4iKTt2YXIgVz1udWxsO3RyeXt7dmFyIEQ9dGhpcy5XO0QuV3x8d2goRCxuLCJzdHJlYW0gYWxyZWFkeSBicm9rZW4iKTtELk4rPW47bGV0IGs9TWF0aC5mbG9vcihELk4ubGVuZ3RoLzQpO2lmKGs9PTApdmFyIGI9bnVsbDtlbHNle3RyeXt2YXIgdj16aChELk4uc2xpY2UoMCxrKjQpKX1jYXRjaChoKXt3aChELEQuTixoLm1lc3NhZ2UpfUQuSis9ayo0O0QuTj1ELk4uc2xpY2Uoayo0KTtiPXZ9fVc9Yj09PW51bGw/bnVsbDp0aGlzLlgucGFyc2UoYil9Y2F0Y2goayl7Vk4odGhpcyxuLGsubWVzc2FnZSl9dGhpcy5KKz1uLmxlbmd0aDtyZXR1cm4gV307Zy5FPWFzLnByb3RvdHlwZTtnLkUuaXNJbnB1dFZhbGlkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaiE9M307CmcuRS5zOD1mdW5jdGlvbigpe3JldHVybiB0aGlzLkR9OwpnLkUuZG9uZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmo9PT0yfTsKZy5FLmFvPWZ1bmN0aW9uKCl7cmV0dXJuITF9OwpnLkUucGFyc2U9ZnVuY3Rpb24obil7ZnVuY3Rpb24gVygpe2Zvcig7cjxuLmxlbmd0aDspaWYoY1kobltyXSkpcisrLGsuVysrO2Vsc2UgYnJlYWs7cmV0dXJuIHI8TH0KZnVuY3Rpb24gRCgpe2Zvcih2YXIgSDs7KXtIPW5bcisrXTtpZighSClicmVhaztrLlcrKztzd2l0Y2goay5OKXtjYXNlIDA6SD09PSJ7Ij9rLk49MjpIPT09IlsiP2suTj00OmNZKEgpfHxuXyhrLG4scik7Y29udGludWU7Y2FzZSA3OmNhc2UgMjppZihjWShIKSljb250aW51ZTtpZihrLk49PT03KWgucHVzaCg4KTtlbHNlIGlmKEg9PT0ifSIpe3YoInt9Iik7ay5OPWIoKTtjb250aW51ZX1lbHNlIGgucHVzaCgzKTtIPT09JyInP2suTj02Om5fKGssbixyKTtjb250aW51ZTtjYXNlIDg6Y2FzZSAzOmlmKGNZKEgpKWNvbnRpbnVlO0g9PT0iOiI/KGsuTj09PTMmJihoLnB1c2goMyksay5KKyspLGsuTj0xKTpIPT09In0iPyhrLkotLSx2KCksay5OPWIoKSk6SD09PSIsIj8oay5OPT09MyYmaC5wdXNoKDMpLGsuTj03KTpuXyhrLG4scik7Y29udGludWU7Y2FzZSA0OmNhc2UgMTppZihjWShIKSljb250aW51ZTtpZihrLk49PT00KWlmKGsuSisrLGsuTj0xLEg9PT0iXSIpe2suSi0tO2lmKGsuSj09PQowKXtrLk49NTtyZXR1cm59digiW10iKTtrLk49YigpO2NvbnRpbnVlfWVsc2UgaC5wdXNoKDUpO0g9PT0nIic/ay5OPTY6SD09PSJ7Ij9rLk49MjpIPT09IlsiP2suTj00Okg9PT0idCI/ay5OPTk6SD09PSJmIj9rLk49MTI6SD09PSJuIj9rLk49MTY6SCE9PSItIiYmKCIwMTIzNDU2Nzg5Ii5pbmRleE9mKEgpIT09LTE/ay5OPTIwOm5fKGssbixyKSk7Y29udGludWU7Y2FzZSA1OmlmKEg9PT0iLCIpaC5wdXNoKDUpLGsuTj0xLGsuSj09PTEmJihHPXIpO2Vsc2UgaWYoSD09PSJdIil7ay5KLS07aWYoay5KPT09MClyZXR1cm47digpO2suTj1iKCl9ZWxzZSBpZihjWShIKSljb250aW51ZTtlbHNlIG5fKGssbixyKTtjb250aW51ZTtjYXNlIDY6bGV0IEE9cjthOmZvcig7Oyl7Zm9yKDtrLlk+MDspaWYoSD1uW3IrK10say5ZPT09ND9rLlk9MDprLlkrKywhSClicmVhayBhO2lmKEg9PT0nIicmJiFrLkspe2suTj1iKCk7YnJlYWt9aWYoSD09PSJcXCImJiFrLksmJihrLks9ITAsSD1uW3IrK10sCiFIKSlicmVhaztpZihrLkspaWYoay5LPSExLEg9PT0idSImJihrLlk9MSksSD1uW3IrK10pY29udGludWU7ZWxzZSBicmVhazt4Lmxhc3RJbmRleD1yO0g9eC5leGVjKG4pO2lmKCFIKXtyPW4ubGVuZ3RoKzE7YnJlYWt9cj1ILmluZGV4KzE7SD1uW0guaW5kZXhdO2lmKCFIKWJyZWFrfWsuVys9ci1BO2NvbnRpbnVlO2Nhc2UgOTppZighSCljb250aW51ZTtIPT09InIiP2suTj0xMDpuXyhrLG4scik7Y29udGludWU7Y2FzZSAxMDppZighSCljb250aW51ZTtIPT09InUiP2suTj0xMTpuXyhrLG4scik7Y29udGludWU7Y2FzZSAxMTppZighSCljb250aW51ZTtIPT09ImUiP2suTj1iKCk6bl8oayxuLHIpO2NvbnRpbnVlO2Nhc2UgMTI6aWYoIUgpY29udGludWU7SD09PSJhIj9rLk49MTM6bl8oayxuLHIpO2NvbnRpbnVlO2Nhc2UgMTM6aWYoIUgpY29udGludWU7SD09PSJsIj9rLk49MTQ6bl8oayxuLHIpO2NvbnRpbnVlO2Nhc2UgMTQ6aWYoIUgpY29udGludWU7SD09PSJzIj9rLk49MTU6Cm5fKGssbixyKTtjb250aW51ZTtjYXNlIDE1OmlmKCFIKWNvbnRpbnVlO0g9PT0iZSI/ay5OPWIoKTpuXyhrLG4scik7Y29udGludWU7Y2FzZSAxNjppZighSCljb250aW51ZTtIPT09InUiP2suTj0xNzpuXyhrLG4scik7Y29udGludWU7Y2FzZSAxNzppZighSCljb250aW51ZTtIPT09ImwiP2suTj0xODpuXyhrLG4scik7Y29udGludWU7Y2FzZSAxODppZighSCljb250aW51ZTtIPT09ImwiP2suTj1iKCk6bl8oayxuLHIpO2NvbnRpbnVlO2Nhc2UgMTk6SD09PSIuIj9rLk49MjA6bl8oayxuLHIpO2NvbnRpbnVlO2Nhc2UgMjA6aWYoIjAxMjM0NTY3ODkuZUUrLSIuaW5kZXhPZihIKSE9PS0xKWNvbnRpbnVlO2Vsc2Ugci0tLGsuVy0tLGsuTj1iKCk7Y29udGludWU7ZGVmYXVsdDpuXyhrLG4scil9fX0KZnVuY3Rpb24gYigpe3ZhciBIPWgucG9wKCk7cmV0dXJuIEghPW51bGw/SDoxfQpmdW5jdGlvbiB2KEgpe2suSj4xfHwoSHx8KEg9Rz09PS0xP2suWCtuLnN1YnN0cmluZyhlLHIpOm4uc3Vic3RyaW5nKEcscikpLGsuTz9rLlYucHVzaChIKTprLlYucHVzaChKU09OLnBhcnNlKEgpKSxHPXIpfQpmb3IodmFyIGs9dGhpcyxoPWsuY0oseD1rLnR3LEw9bi5sZW5ndGgsZT0wLEc9LTEscj0wO3I8TDspc3dpdGNoKGsuail7Y2FzZSAzOnJldHVybiBuXyhrLG4sciksbnVsbDtjYXNlIDI6cmV0dXJuIFcoKSYmbl8oayxuLHIpLG51bGw7Y2FzZSAwOmlmKFcoKSl7dmFyIE49bltyKytdO2suVysrO2lmKE49PT0iWyIpe2suaj0xO2U9cjtrLk49NDtjb250aW51ZX1lbHNlIG5fKGssbixyKX1yZXR1cm4gbnVsbDtjYXNlIDE6cmV0dXJuIEQoKSxrLko9PT0wJiZrLk49PTU/KGsuaj0yLGsuWD1uLnN1YnN0cmluZyhyKSk6ay5YPUc9PT0tMT9rLlgrbi5zdWJzdHJpbmcoZSk6bi5zdWJzdHJpbmcoRyksay5WLmxlbmd0aD4wPyhOPWsuVixrLlY9W10sTik6bnVsbH1yZXR1cm4gbnVsbH07V0sucHJvdG90eXBlLmlzSW5wdXRWYWxpZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmo9PT1udWxsfTsKV0sucHJvdG90eXBlLnM4PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuan07CldLLnByb3RvdHlwZS5hbz1mdW5jdGlvbigpe3JldHVybiExfTsKV0sucHJvdG90eXBlLnBhcnNlPWZ1bmN0aW9uKG4pe2Z1bmN0aW9uIFcoTCl7ay5KPTY7ay5qPSJUaGUgc3RyZWFtIGlzIGJyb2tlbiBAIitrLk4rIi8iK2grIi4gRXJyb3I6ICIrTCsiLiBXaXRoIGlucHV0OlxuIjt0aHJvdyBFcnJvcihrLmopO30KZnVuY3Rpb24gRCgpe2suVz1uZXcgYXMoe1ZMOiEwLFpIOiEwfSl9CmZ1bmN0aW9uIGIoTCl7aWYoTClmb3IobGV0IGU9MDtlPEwubGVuZ3RoO2UrKyl7bGV0IEc9e307R1sxXT1MW2VdO2suWC5wdXNoKEcpfX0KZnVuY3Rpb24gdihMKXtpZihMKXsoay5WfHxMLmxlbmd0aD4xKSYmVygiZXh0cmEgc3RhdHVzOiAiK0wpO2suVj0hMDtsZXQgZT17fTtlWzJdPUxbMF07ay5YLnB1c2goZSl9fQpmb3IodmFyIGs9dGhpcyxoPTA7aDxuLmxlbmd0aDspe3ZhciB4O2lmKHg9ay5KIT09Mil7YTp7Zm9yKDtoPG4ubGVuZ3RoOyl7aWYoIWNZKG5baF0pKXt4PSEwO2JyZWFrIGF9aCsrO2suTisrfXg9ITF9eD0heH1pZih4KXJldHVybiBudWxsO3N3aXRjaChrLkope2Nhc2UgNjpXKCJzdHJlYW0gYWxyZWFkeSBicm9rZW4iKTticmVhaztjYXNlIDA6bltoXT09PSJbIj8oay5KPTEsaCsrLGsuTisrKTpXKCJ1bmV4cGVjdGVkIGlucHV0IHRva2VuIik7YnJlYWs7Y2FzZSAxOm5baF09PT0iWyI/KGsuSj0yLEQoKSk6bltoXT09PSIsInx8bi5zbGljZShoLGgrNSk9PSJudWxsLCI/ay5KPTM6bltoXT09PSJdIj8oay5KPTUsaCsrLGsuTisrKTpXKCJ1bmV4cGVjdGVkIGlucHV0IHRva2VuIik7YnJlYWs7Y2FzZSAyOng9ay5XLnBhcnNlKG4uc3Vic3RyaW5nKGgpKTtiKHgpO2suVy5kb25lKCk/KGsuSj0zLHg9ay5XLlgsay5OKz1uLmxlbmd0aC1oLXgubGVuZ3RoLG49eCxoPTApOihrLk4rPW4ubGVuZ3RoLQpoLGg9bi5sZW5ndGgpO2JyZWFrO2Nhc2UgMzpuW2hdPT09IiwifHxuLnNsaWNlKGgsaCs1KT09Im51bGwsIj8oay5KPTQsRCgpLGsuVy5wYXJzZSgiWyIpLGgrPW5baF09PT0iLCI/MTo1LGsuTisrKTpuW2hdPT09Il0iJiYoay5KPTUsaCsrLGsuTisrKTticmVhaztjYXNlIDQ6eD1rLlcucGFyc2Uobi5zdWJzdHJpbmcoaCkpO3YoeCk7ay5XLmRvbmUoKT8oay5KPTUseD1rLlcuWCxrLk4rPW4ubGVuZ3RoLWgteC5sZW5ndGgsbj14LGg9MCk6KGsuTis9bi5sZW5ndGgtaCxoPW4ubGVuZ3RoKTticmVhaztjYXNlIDU6VygiZXh0cmEgaW5wdXQgYWZ0ZXIgc3RyZWFtIGVuZCIpfX1yZXR1cm4gay5YLmxlbmd0aD4wPyhuPWsuWCxrLlg9W10sbik6bnVsbH07dmFyIHFBdD1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bjt0aGlzLko9bnVsbDt0aGlzLmo9dGhpcy5XPTA7dGhpcy5EPSExO3RoaXMuWD10aGlzLks9dGhpcy5WPW51bGw7dGhpcy5ZPW5ldyBCWSh0aGlzKTt0aGlzLlkuU18odGhpcy5OLCJyZWFkeXN0YXRlY2hhbmdlIix0aGlzLk8pfWdldFN0YXR1cygpe3JldHVybiB0aGlzLmp9TyhuKXtuPW4udGFyZ2V0O3RyeXtpZihuPT10aGlzLk4pYTp7bGV0IGs9YTUodGhpcy5OKTt2YXIgVz10aGlzLk4uVyxEPXRoaXMuTi5nZXRTdGF0dXMoKTtsZXQgaD1XMyh0aGlzLk4pO249W107aWYoRG8odGhpcy5OKWluc3RhbmNlb2YgQXJyYXkpe2xldCB4PURvKHRoaXMuTik7eC5sZW5ndGg+MCYmeFswXWluc3RhbmNlb2YgVWludDhBcnJheSYmKHRoaXMuRD0hMCxuPXgpfWlmKCEoazwzfHxrPT0zJiYhaCYmbi5sZW5ndGg9PTApKWlmKEQ9RD09MjAwfHxEPT0yMDYsaz09NCYmKFc9PTg/RGkodGhpcyw3KTpXPT03P0RpKHRoaXMsOCk6RHx8CkRpKHRoaXMsMykpLHRoaXMuSnx8KHRoaXMuSj1oQ3godGhpcy5OKSx0aGlzLko9PW51bGwmJkRpKHRoaXMsNSkpLHRoaXMuaj4yKWJIKHRoaXMpO2Vsc2V7aWYobi5sZW5ndGg+dGhpcy5XKXtsZXQgeD1uLmxlbmd0aDtXPVtdO3RyeXtpZih0aGlzLkouYW8oKSlmb3IodmFyIGI9MDtiPHg7YisrKXt2YXIgdj10aGlzLkoucGFyc2UoQXJyYXkuZnJvbShuW2JdKSk7diYmKFc9Vy5jb25jYXQodikpfWVsc2V7dj0iIjtpZighdGhpcy5WKXtpZih0eXBlb2YgVGV4dERlY29kZXI9PT0idW5kZWZpbmVkIil0aHJvdyBFcnJvcigiVGV4dERlY29kZXIgaXMgbm90IHN1cHBvcnRlZCBieSB0aGlzIGJyb3dzZXIuIik7dGhpcy5WPW5ldyBUZXh0RGVjb2Rlcn1mb3IoYj0wO2I8eDtiKyspdis9dGhpcy5WLmRlY29kZShuW2JdLHtzdHJlYW06az09NCYmYj09eC0xfSk7Vz10aGlzLkoucGFyc2Uodil9bi5zcGxpY2UoMCx4KTtXJiZ0aGlzLlgoVyl9Y2F0Y2goTCl7RGkodGhpcyw1KTtiSCh0aGlzKTsKYnJlYWsgYX19ZWxzZSBpZihoLmxlbmd0aD50aGlzLlcpe2I9aC5zbGljZSh0aGlzLlcpO3RoaXMuVz1oLmxlbmd0aDt0cnl7bGV0IHg9dGhpcy5KLnBhcnNlKGIpO3ghPW51bGwmJnRoaXMuWCYmdGhpcy5YKHgpfWNhdGNoKHgpe0RpKHRoaXMsNSk7YkgodGhpcyk7YnJlYWsgYX19az09ND8oaC5sZW5ndGghPTB8fHRoaXMuRD9EaSh0aGlzLDIpOkRpKHRoaXMsNCksYkgodGhpcykpOkRpKHRoaXMsMSl9fX1jYXRjaChrKXtEaSh0aGlzLDYpLGJIKHRoaXMpfX19O3ZhciBHaGk9Y2xhc3N7Y29uc3RydWN0b3Iobil7bj10aGlzLlc9bjt2YXIgVz0oMCxnLkt0KSh0aGlzLlgsdGhpcyk7bi5YPVc7bj10aGlzLlc7Vz0oMCxnLkt0KSh0aGlzLmosdGhpcyk7bi5LPVc7dGhpcy5KPXt9O3RoaXMuTj17fX14VihuLFcpe3ZhciBEPXRoaXMuSltuXTtEfHwoRD1bXSx0aGlzLkpbbl09RCk7RC5wdXNoKFcpfWFkZExpc3RlbmVyKG4sVyl7dGhpcy54VihuLFcpO3JldHVybiB0aGlzfXJlbW92ZUxpc3RlbmVyKG4sVyl7dmFyIEQ9dGhpcy5KW25dO0QmJmcuRkkoRCxXKTsobj10aGlzLk5bbl0pJiZnLkZJKG4sVyk7cmV0dXJuIHRoaXN9b25jZShuLFcpe3ZhciBEPXRoaXMuTltuXTtEfHwoRD1bXSx0aGlzLk5bbl09RCk7RC5wdXNoKFcpO3JldHVybiB0aGlzfVgobil7dmFyIFc9dGhpcy5KLmRhdGE7VyYmdksobixXKTsoVz10aGlzLk4uZGF0YSkmJnZLKG4sVyk7dGhpcy5OLmRhdGE9W119aigpe3N3aXRjaCh0aGlzLlcuZ2V0U3RhdHVzKCkpe2Nhc2UgMTprdCh0aGlzLAoicmVhZGFibGUiKTticmVhaztjYXNlIDU6Y2FzZSA2OmNhc2UgNDpjYXNlIDc6Y2FzZSAzOmt0KHRoaXMsImVycm9yIik7YnJlYWs7Y2FzZSA4Omt0KHRoaXMsImNsb3NlIik7YnJlYWs7Y2FzZSAyOmt0KHRoaXMsImVuZCIpfX19O3ZhciAkeGg9Y2xhc3N7Y29uc3RydWN0b3IoKXt2YXIgbj17Zm9ybWF0OiJqc3BiIn07dGhpcy5ZTz1uLllPfHxnLnJyKCJzdXBwcmVzc0NvcnNQcmVmbGlnaHQiLG4pfHwhMTt0aGlzLndpdGhDcmVkZW50aWFscz1uLndpdGhDcmVkZW50aWFsc3x8Zy5ycigid2l0aENyZWRlbnRpYWxzIixuKXx8ITE7dGhpcy5LYj1uLktifHxbXTt0aGlzLkZOPW4uRk58fFtdO3RoaXMuU249bi5Tbjt0aGlzLk49bi5sSXx8ITF9c2VydmVyU3RyZWFtaW5nKG4sVyxELGIpe3ZhciB2PW4uc3Vic3RyaW5nKDAsbi5sZW5ndGgtYi5uYW1lLmxlbmd0aCk7cmV0dXJuIHh4aihrPT57dmFyIGg9ay5sMCx4PWsuZ2V0TWV0YWRhdGEoKSxMPWhhKHRoaXMsITEpO3g9eHQodGhpcyx4LEwsditoLmdldE5hbWUoKSk7dmFyIGU9TF8oTCxoLlcsITApO2s9aC5OKGsuZnYpO0wuc2VuZCh4LCJQT1NUIixrKTtyZXR1cm4gZX0sdGhpcy5LYikuY2FsbCh0aGlzLGIuSihXLEQpKX19O3F3LnByb3RvdHlwZS5jcmVhdGU9ZnVuY3Rpb24obixXLEQpe3JldHVybiBZWSh0aGlzLk4sdGhpcy5KKyIvJHJwYy9nb29nbGUuaW50ZXJuYWwud2FhLnYxLldhYS9DcmVhdGUiLG4sV3x8e30sc09NLEQpfTt2YXIgYW09Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLmQ1PTM7dGhpcy5ueD1uO3RoaXMuZGVmYXVsdFZhbHVlPVc7dGhpcy5VMD0iYm9vbCJ9fSxuaj1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuZDU9Mzt0aGlzLm54PW47dGhpcy5kZWZhdWx0VmFsdWU9Vzt0aGlzLlUwPSJpbnQifX0sV0M9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLmQ1PTM7dGhpcy5ueD1uO3RoaXMuZGVmYXVsdFZhbHVlPVc7dGhpcy5VMD0iZG91YmxlIn19O3ZhciBTY3QsSVV3LFljLEFzVSxub3IsV0lNLG1HWixLNVUsTzcxLEhwLFo3VSxVR0MsUHJpLHlzeCxFZGksaTdDLHVOYixVQmIsZEd0LHpZaSxsVXIsVFBVLGpPaSxDSmksa3FNLERaLEY1aSxjZix3bjIsSGZ4LFNvUyxJWWksTUl4LHowaSxsWWgsVE5DLEJwdCxSWXcsUU94LFZJaixpbGksa1RiLFZrdyxjc3IsYVVNLGJELG5KaSxXRlMsbmEsRGRTLGJnaSx2NWksdkpDLFRfQyx0UzIsa19pLGhGaix4ZGgsZUZVLGdKMSxYQU0scURTLEdfcix0SlMsJGQyLHJUaixzcjIsanNaLE5GVSxHb00seSRqLHllaSxwQXQsanZNLEtZeCxZRFosSGdaLHZDLEplMSxmY3Qsa05qLEpUeCxJY2ksSGYsaldTLFNEUyxZSmIsQVRaLG1kdyxsaVosS0ZyLE9nMixwYk0sd2JTLFpnTSx5VDIsRUpNLHdJMTtTY3Q9bmV3IGFtKDQ1NzU5NTgwLCExKTtJVXc9bmV3IGFtKDQ1NzY2MjczLCExKTtnLlNuaj1uZXcgYW0oNDU3NTc4NzgsITEpO1ljPW5ldyBhbSg0NTc0OTM5NiwhMSk7CkFzVT1uZXcgYW0oNDU4MDg1MjgsITEpO25vcj1uZXcgYW0oNDU3NDIxMTksITEpO1dJTT1uZXcgYW0oNDU3ODQxNjgsITEpO21HWj1uZXcgYW0oNDU4MDEwNjgsITEpO0s1VT1uZXcgYW0oNDU3Nzg2OTYsITEpO083MT1uZXcgYW0oNDU3NTY0NDYsITEpO2cuUEpNPW5ldyBhbSg0NTgwODE1MCwhMSk7SHA9bmV3IGFtKDQ1ODA3NzY0LCExKTtaN1U9bmV3IGFtKDQ1Nzk3NzIxLCExKTtVR0M9bmV3IGFtKDQ1Nzk4OTMyLCExKTtQcmk9bmV3IGFtKDQ1NzYwMDE4LCExKTt5c3g9bmV3IGFtKDQ1NzM5MTk2LCExKTtFZGk9bmV3IGFtKDQ1Nzk0ODY4LCExKTtpN0M9bmV3IGFtKDQ1NzM5MTk4LCExKTt1TmI9bmV3IGFtKDQ1Nzk0ODY3LCExKTtVQmI9bmV3IGFtKDQ1Nzc3MzU2LCExKTtnLm9kWj1uZXcgbmooNDU3NTA5NDcsZy4kVSgiMCIpKTtkR3Q9bmV3IGFtKDQ1Nzk5OTEyLCExKTt6WWk9bmV3IFdDKDQ1NzQ2OTY2LDApO2xVcj1uZXcgV0MoNDU3NDY5NjcsMCk7ClRQVT1uZXcgV0MoNDU3Mzc0ODgsMCk7ak9pPW5ldyBXQyg0NTczNzQ4OSwwKTtDSmk9bmV3IGFtKDQ1Nzk1NTczLCExKTtnLkJQUz1uZXcgYW0oNDU3NjU2ODAsITEpO2txTT1uZXcgYW0oNDU3MzI3OTEsITApO0RaPW5ldyBhbSg0NTc4MTExMiwhMSk7RjVpPW5ldyBhbSg0NTgwODY1MCwhMSk7Y2Y9bmV3IGFtKDQ1ODExODU3LCExKTt3bjI9bmV3IGFtKDQ1ODA1OTY4LCExKTtIZng9bmV3IGFtKDQ1NzY5MTE5LCEwKTtTb1M9bmV3IG5qKDQ1ODA2NTU1LGcuJFUoIjIiKSk7SVlpPW5ldyBuaig0NTc4NDQzOSxnLiRVKCIwIikpO01JeD1uZXcgYW0oNDU4MTc0MDksITEpO3owaT1uZXcgYW0oNDU3Mzc0ODIsITEpO2xZaD1uZXcgV0MoNDU3NDE3NzMsMCk7VE5DPW5ldyBhbSg0NTgwNTg0OCwhMSk7QnB0PW5ldyBhbSg0NTc3MzY3MywhMSk7Ull3PW5ldyBhbSg0NTgwMDYzMywhMSk7UU94PW5ldyBhbSg0NTc5ODA3OCwhMSk7VklqPW5ldyBhbSg0NTczMTA4MywhMSk7CmlsaT1uZXcgYW0oNDU3OTcyNzksITEpO2tUYj1uZXcgYW0oNDU3Mjg1NTMsITEpO1Zrdz1uZXcgYW0oNDU3OTY3NTAsITEpO2Nzcj1uZXcgYW0oNDU3OTQ2ODAsITEpO2FVTT1uZXcgYW0oNDU4MTMwMjcsITEpO2JEPW5ldyBhbSg0NTczNDE5MSwhMSk7bkppPW5ldyBhbSg0NTc5Njc3NywhMSk7V0ZTPW5ldyBhbSg0NTc5Njc3OCwhMSk7bmE9bmV3IGFtKDQ1ODEwNjYxLCExKTtnLkFoPW5ldyBhbSg0NTc0NTYxMCwhMSk7RGRTPW5ldyBhbSg0NTgxNjU3MSwhMSk7YmdpPW5ldyBhbSg0NTc3MzI3MywhMSk7djVpPW5ldyBhbSg0NTc1NjYxOSwhMSk7dkpDPW5ldyBhbSg0NTc1ODI5MCwhMSk7VF9DPW5ldyBhbSg0NTgxMzgzMSwhMSk7dFMyPW5ldyBhbSg0NTczNTUyMywhMSk7a19pPW5ldyBXQyg0NTc3MTg5MCwwKTtoRmo9bmV3IFdDKDQ1ODA3NzczLDApO3hkaD1uZXcgV0MoNDU3MzU0MjgsNEUzKTtnLkxGaT1uZXcgYW0oNDU3ODkwNzcsITEpO2VGVT1uZXcgYW0oNDU3NDgwMDksITEpOwpnSjE9bmV3IGFtKDQ1NzUyNjA0LCExKTtYQU09bmV3IFdDKDQ1NzY5MjE0LDApO3FEUz1uZXcgYW0oNDU3MzU0NjIsITEpO0dfcj1uZXcgYW0oNDU4MTUwNzMsITEpO3RKUz1uZXcgYW0oNDU3NTE5NDMsITEpOyRkMj1uZXcgYW0oNDU3NTE5NDQsITEpO3JUaj1uZXcgYW0oNDU3NTE5NDUsITEpO3NyMj1uZXcgbmooNDU4MDg3NjIsZy4kVSgiMCIpKTtqc1o9bmV3IGFtKDQ1NzY0NTkyLCExKTtORlU9bmV3IFdDKDQ1NzY0NTkzLDApO0dvTT1uZXcgYW0oNDU3NjY1MTEsITEpO3kkaj1uZXcgYW0oNDU4MDYzODgsITEpO3llaT1uZXcgYW0oNDU4MDYzNjMsITEpO3BBdD1uZXcgYW0oNDU4MTU1OTIsITEpO2p2TT1uZXcgYW0oNDU4MTQ0ODAsITEpO0tZeD1uZXcgYW0oNDU4MTA0NjcsITEpO1lEWj1uZXcgYW0oNDU3OTEzMjYsITEpO0hnWj1uZXcgYW0oNDU3ODc3NzEsITEpO3ZDPW5ldyBhbSg0NTc5MTA4NywhMSk7SmUxPW5ldyBhbSg0NTc3Mjg5MSwhMSk7CmZjdD1uZXcgYW0oNDU3OTU4NDQsITEpO2tOaj1uZXcgYW0oNDU3ODM4NzUsITApO0pUeD1uZXcgYW0oNDU3OTU1NzQsITEpO0ljaT1uZXcgYW0oNDU3NzE4OTEsITEpO0hmPW5ldyBhbSg0NTcyODE4MSwhMSk7aldTPW5ldyBhbSg0NTc1NjU0MywhMSk7U0RTPW5ldyBhbSg0NTc1NjYyMCwhMSk7WUpiPW5ldyBhbSg0NTgwODc1NCwhMSk7QVRaPW5ldyBuaig0NTc2MTc2MCxnLiRVKCIyMDAiKSk7bWR3PW5ldyBhbSg0NTc3NjgzMiwhMSk7bGlaPW5ldyBXQyg0NTc2ODQzMCwwKTtLRnI9bmV3IGFtKDQ1Nzc2NTgwLCExKTtPZzI9bmV3IGFtKDQ1NzU1NzYwLCExKTtwYk09bmV3IGFtKDQ1NzYwMDE3LCExKTt3YlM9bmV3IGFtKDQ1NzMyNzc1LCExKTtnLlAzMT1uZXcgYW0oNDU3ODc5NDgsITEpO1pnTT1uZXcgYW0oNDU3NjU4MTgsITEpO2cuVWRDPW5ldyBhbSg0NTczNDc3NiwhMSk7eVQyPW5ldyBhbSg0NTgxNjgxMSwhMSk7RUpNPW5ldyBhbSg0NTc2MDEyMCwhMSk7Cmcua0g9bmV3IGFtKDQ1NzcwNDc2LCExKTt3STE9bmV3IGFtKDQ1ODA4MDUzLCExKTt2YXIgWXhyPW5ldyBXQyg0NTgwMzc1NCwwKSxtRGg9bmV3IFdDKDQ1NzkxMTE3LDApLHZNUz1uZXcgV0MoNDU3MjU1NDIsMCksWlJ4PW5ldyBXQyg0NTc5NDQ0MSwwKSxlVVU9bmV3IFdDKDQ1ODA3NzcxLDApLEhScj1uZXcgV0MoNDU3NzM2MDMsMCksZndqPW5ldyBXQyg0NTc3MzYwNCwwKSx4RFo9bmV3IFdDKDQ1Nzk3OTYzLDApLGJSdz1uZXcgV0MoNDU3MjU1NDMsMCksUGhqPW5ldyBXQyg0NTc5MzcxMCwwKSxoVWk9bmV3IFdDKDQ1NzU3NDI2LDApLG5Ndz1uZXcgV0MoNDU3MjU1MzksMCksSlIxPW5ldyBXQyg0NTgwNTY5NSwwKSxERFo9bmV3IFdDKDQ1NzI1NTQxLDApLFhHVT1uZXcgV0MoNDU3NTc0MjcsMCksQ1JpPW5ldyBhbSg0NTc5MTIwNiwhMSksV2t0PW5ldyBXQyg0NTcyNTU0MCwwKSxhWXg9bmV3IFdDKDQ1NzI1NTM4LDApLEtraT1uZXcgV0MoNDU3OTExMTgsMCksazZ3PW5ldyBXQyg0NTc2NDUyMywwKSxTeGk9bmV3IFdDKDQ1ODA0NzcxLDApLEl3eD1uZXcgV0MoNDU3ODY0NDMsCjApLFVEMj1uZXcgV0MoNDU4MDIxMjMsMCkscXhoPW5ldyBXQyg0NTc2NDIxNywwKSxHNjI9bmV3IFdDKDQ1NzY0NTI0LDApLCREMT1uZXcgV0MoNDU3NjU2MDIsMCksTGtDPW5ldyBXQyg0NTgwNzQzMiwwKSxBUk09bmV3IFdDKDQ1Nzc2MTkwLDApLE9SVT1uZXcgV0MoNDU3OTExMTksMCksVWJTPW5ldyBXQyg0NTgxNTAxMSwwKSxOZFM9bmV3IFdDKDQ1Nzc4NjcxLDApLHBHMT1uZXcgV0MoNDU3NDEzMzksMCksdDVpPW5ldyBXQyg0NTc2Nzc2MywwKSxnTXg9bmV3IFdDKDQ1ODA3NzcyLDApLHN3aT1uZXcgV0MoNDU3NzAwMDIsMCksclJpPW5ldyBXQyg0NTc3MDAwMSwwKTt2YXIgaWd0PWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuTj1ufX07dmFyIHVwMj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn1KKCl7cmV0dXJuIHRoaXMuTi5RUShHX3IpfX07dmFyIHI0Mj0vKD86XFt8JTVCKShbYS16QS1aMC05X10rKSg/OlxdfCU1RCkvZzt2YXIgb0pVPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuLDUwMCl9fTt2YXIgaEw9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4sNTAwKX19O3ZhciBkZFM9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfWdldE5hbWUoKXtyZXR1cm4gWTkodGhpcywxKX1nZXRPcHRpb25zKCl7cmV0dXJuIGdlKHRoaXMsaEwsMyl9Y2xlYXJPcHRpb25zKCl7cmV0dXJuIG96KHRoaXMsMyl9fTt2YXIgekZpPWZ1bmN0aW9uKG4pe3JldHVybiBXPT57Vz1KU09OLnBhcnNlKFcpO2lmKCFBcnJheS5pc0FycmF5KFcpKXRocm93IEVycm9yKCJFeHBlY3RlZCBqc3BiIGRhdGEgdG8gYmUgYW4gYXJyYXksIGdvdCAiK3B0KFcpKyI6ICIrVyk7V1tiNF18PTM0O3JldHVybiBuZXcgbihXKX19KGNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX1nZXROYW1lKCl7cmV0dXJuIFk5KHRoaXMsMSl9Z2V0T3B0aW9ucygpe3JldHVybiBnZSh0aGlzLG9KVSwzKX1jbGVhck9wdGlvbnMoKXtyZXR1cm4gb3oodGhpcywzKX1YTygpe3JldHVybiBIVyh0aGlzLDYpfU1MKG4pe0tuKHRoaXMsNixuKX19KTt2YXIgbGNyPVN5bWJvbCgpO3ZhciBURnI7VEZyPW5ldyBtNFooOTk4LGhMLGNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19KTt2YXIgeEg9U3ltYm9sKCk7dmFyICR0PWNsYXNzIGV4dGVuZHMgZy5vV3tjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMuWD10aGlzLk49MDt0aGlzLkEkPW4/P3tMUzooVyxEKT0+c2V0VGltZW91dChXLEQpLApzTzpXPT57Y2xlYXJUaW1lb3V0KFcpfX07CnRoaXMuaXNPbmxpbmU9d2luZG93Lm5hdmlnYXRvcj8ub25MaW5lPz8hMDt0aGlzLko9YXN5bmMoKT0+e2F3YWl0IHJYKHRoaXMpfTsKd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9mZmxpbmUiLHRoaXMuSik7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9ubGluZSIsdGhpcy5KKTt0aGlzLlh8fHRoaXMuaFQoKX1kaXNwb3NlKCl7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9mZmxpbmUiLHRoaXMuSik7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9ubGluZSIsdGhpcy5KKTt0aGlzLkEkLnNPKHRoaXMuWCk7ZGVsZXRlICR0Lmluc3RhbmNlfVdHKCl7cmV0dXJuIHRoaXMuaXNPbmxpbmV9aFQoKXt0aGlzLlg9dGhpcy5BJC5MUyhhc3luYygpPT57dGhpcy5pc09ubGluZT93aW5kb3cubmF2aWdhdG9yPy5vbkxpbmV8fGF3YWl0IHJYKHRoaXMpOmF3YWl0IHJYKHRoaXMpO3RoaXMuaFQoKX0sM0U0KX19O3ZhciBqcjI9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIEMzcj1bMCxJcWosLTFdO3ZhciBMaj1bMCxIaXcsLTFdO3ZhciBCRnQ9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIEZGaT1nLkE5KFswLGcuQ3gsLTEsZy5FNixnLm9tLEMzciwtMSx5cCxpVSxnLkN4LExqLGcub20sZy5DeCwtMSxbMCxDM3IsLTFdLGlVLFkzQyxMaix5cCxbMCwxLGlVLC00LFU2LFswLHlwLC0xLGlVXSxnLm9tLHlwLGcuZHEsWzAsZy5DeCxpVV0saVUsLTEsZy5DeCwtMix5cCwtMSxnLkN4LHlwLGcuQ3gsaVUsWzAsMyxpVSwtMSw0LFRnXSxVNixqbyxbMCxnLkN4LC0xLGcub21dLHVVXSxnLm9tLEpYUyxnLmRxLFswLExqLGcuZHEsWzAsZy5vbSxnLkN4XSx5cCxnLkN4LC0xXSwxLGcuZHEsWzAsWTNDLC0xLGpvXSxnLkN4LExqXSk7dmFyIFV2Mj1JXyhjbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9Sigpe3JldHVybiBIVyh0aGlzLDUpfX0sWzAsZy5DeCxbMCxnLkU2LGZxdywtMV0saVUsZy5DeCwtMixpVSxnLkU2XSk7dmFyIGxYcj1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuZGF0YT1bXTt0aGlzLk49LTF9c2V0KG4sVz0hMCl7MDw9biYmbjw1MiYmTnVtYmVyLmlzSW50ZWdlcihuKSYmdGhpcy5kYXRhW25dIT09VyYmKHRoaXMuZGF0YVtuXT1XLHRoaXMuTj0tMSl9Z2V0KG4pe3JldHVybiEhdGhpcy5kYXRhW25dfX07Zy5peChnLnBfLGcuRk0pO2cuRT1nLnBfLnByb3RvdHlwZTtnLkUuc3RhcnQ9ZnVuY3Rpb24oKXt0aGlzLnN0b3AoKTt0aGlzLlg9ITE7dmFyIG49WXQodGhpcyksVz1ISyh0aGlzKTtuJiYhVyYmdGhpcy5KLm1velJlcXVlc3RBbmltYXRpb25GcmFtZT8odGhpcy5OPUFIKHRoaXMuSiwiTW96QmVmb3JlUGFpbnQiLHRoaXMuVyksdGhpcy5KLm1velJlcXVlc3RBbmltYXRpb25GcmFtZShudWxsKSx0aGlzLlg9ITApOnRoaXMuTj1uJiZXP24uY2FsbCh0aGlzLkosdGhpcy5XKTp0aGlzLkouc2V0VGltZW91dChqTWgodGhpcy5XKSwyMCl9OwpnLkUuc3RvcD1mdW5jdGlvbigpe2lmKHRoaXMuaXNBY3RpdmUoKSl7bGV0IG49WXQodGhpcyksVz1ISyh0aGlzKTtuJiYhVyYmdGhpcy5KLm1velJlcXVlc3RBbmltYXRpb25GcmFtZT9FMih0aGlzLk4pOm4mJlc/Vy5jYWxsKHRoaXMuSix0aGlzLk4pOnRoaXMuSi5jbGVhclRpbWVvdXQodGhpcy5OKX10aGlzLk49bnVsbH07CmcuRS5pc0FjdGl2ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLk4hPW51bGx9OwpnLkUuT3Q9ZnVuY3Rpb24oKXt0aGlzLlgmJnRoaXMuTiYmRTIodGhpcy5OKTt0aGlzLk49bnVsbDt0aGlzLlYuY2FsbCh0aGlzLmosZy5VdygpKX07CmcuRS5tQT1mdW5jdGlvbigpe3RoaXMuc3RvcCgpO2cucF8uVEIubUEuY2FsbCh0aGlzKX07Zy5peChnLmZfLGcuRk0pO2cuRT1nLmZfLnByb3RvdHlwZTtnLkUudDg9MDtnLkUubUE9ZnVuY3Rpb24oKXtnLmZfLlRCLm1BLmNhbGwodGhpcyk7dGhpcy5zdG9wKCk7ZGVsZXRlIHRoaXMuTjtkZWxldGUgdGhpcy5KfTsKZy5FLnN0YXJ0PWZ1bmN0aW9uKG4pe3RoaXMuc3RvcCgpO3RoaXMudDg9Zy5adCh0aGlzLlcsbiE9PXZvaWQgMD9uOnRoaXMuZ3QpfTsKZy5FLnN0b3A9ZnVuY3Rpb24oKXt0aGlzLmlzQWN0aXZlKCkmJmcucWkuY2xlYXJUaW1lb3V0KHRoaXMudDgpO3RoaXMudDg9MH07CmcuRS5qZT1mdW5jdGlvbigpe3RoaXMuaXNBY3RpdmUoKSYmKHRoaXMuc3RvcCgpLHRoaXMuaSQoKSl9OwpnLkUuaXNBY3RpdmU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50OCE9MH07CmcuRS5pJD1mdW5jdGlvbigpe3RoaXMudDg9MDt0aGlzLk4mJnRoaXMuTi5jYWxsKHRoaXMuSil9O3ZhciB3QWk9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKG4sVyl7c3VwZXIoKTt0aGlzLlg9VyE9bnVsbD9uLmJpbmQoVyk6bjt0aGlzLmd0PTM1MDt0aGlzLlc9bnVsbDt0aGlzLk49ITE7dGhpcy5KPTA7dGhpcy5aNj1udWxsfWoobil7dGhpcy5XPWFyZ3VtZW50czt0aGlzLlo2fHx0aGlzLko/dGhpcy5OPSEwOklGKHRoaXMpfXN0b3AoKXt0aGlzLlo2JiYoZy5xaS5jbGVhclRpbWVvdXQodGhpcy5aNiksdGhpcy5aNj1udWxsLHRoaXMuTj0hMSx0aGlzLlc9bnVsbCl9cGF1c2UoKXt0aGlzLkorK31yZXN1bWUoKXt0aGlzLkotLTt0aGlzLkp8fCF0aGlzLk58fHRoaXMuWjZ8fCh0aGlzLk49ITEsSUYodGhpcykpfW1BKCl7c3VwZXIubUEoKTt0aGlzLnN0b3AoKX19O3ZhciB1eWksR2cscWw7dXlpPVJlZ0V4cCgiXltcdTA1OTEtXHUwNmVmXHUwNmZhLVx1MDhmZlx1MjAwZlx1ZDgwMi1cdWQ4MDNcdWQ4M2EtXHVkODNiXHVmYjFkLVx1ZmRmZlx1ZmU3MC1cdWZlZmNdIik7R2c9UmVnRXhwKCJeW15cdTA1OTEtXHUwNmVmXHUwNmZhLVx1MDhmZlx1MjAwZlx1ZDgwMi1cdWQ4MDNcdWQ4M2EtXHVkODNiXHVmYjFkLVx1ZmRmZlx1ZmU3MC1cdWZlZmNdKltBLVphLXpcdTAwYzAtXHUwMGQ2XHUwMGQ4LVx1MDBmNlx1MDBmOC1cdTAyYjhcdTAzMDAtXHUwNTkwXHUwOTAwLVx1MWZmZlx1MjAwZVx1MmMwMC1cdWQ4MDFcdWQ4MDQtXHVkODM5XHVkODNjLVx1ZGJmZlx1ZjkwMC1cdWZiMWNcdWZlMDAtXHVmZTZmXHVmZWZkLVx1ZmZmZl0iKTtxbD1SZWdFeHAoIl5bXkEtWmEtelx1MDBjMC1cdTAwZDZcdTAwZDgtXHUwMGY2XHUwMGY4LVx1MDJiOFx1MDMwMC1cdTA1OTBcdTA5MDAtXHUxZmZmXHUyMDBlXHUyYzAwLVx1ZDgwMVx1ZDgwNC1cdWQ4MzlcdWQ4M2MtXHVkYmZmXHVmOTAwLVx1ZmIxY1x1ZmUwMC1cdWZlNmZcdWZlZmQtXHVmZmZmXSpbXHUwNTkxLVx1MDZlZlx1MDZmYS1cdTA4ZmZcdTIwMGZcdWQ4MDItXHVkODAzXHVkODNhLVx1ZDgzYlx1ZmIxZC1cdWZkZmZcdWZlNzAtXHVmZWZjXSIpOwpnLk1KaT1SZWdFeHAoIl4oYXJ8Y2tifGR2fGhlfGl3fGZhfG5xb3xwc3xzZHx1Z3x1cnx5aXwuKlstX10oQWRsbXxBcmFifEhlYnJ8Tmtvb3xSb2hnfFRoYWEpKSg/IS4qWy1fXShMYXRufEN5cmwpKCR8LXxfKSkoJHwtfF8pIiwiaSIpO0ludGwuTnVtYmVyRm9ybWF0LnN1cHBvcnRlZExvY2FsZXNPZihbImVuIi5yZXBsYWNlKCJfIiwiLSIpXSk7dUgucHJvdG90eXBlLm5leHQ9ZnVuY3Rpb24oKXtyZXR1cm4gUkZNfTsKdmFyIFJGTT17ZG9uZTohMCx2YWx1ZTp2b2lkIDB9O3VILnByb3RvdHlwZS5ncT1mdW5jdGlvbigpe3JldHVybiB0aGlzfTt2YXIgb0Y9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59Z3EoKXtyZXR1cm4gbmV3IGRYKHRoaXMuTigpKX1bU3ltYm9sLml0ZXJhdG9yXSgpe3JldHVybiBuZXcgeksodGhpcy5OKCkpfUooKXtyZXR1cm4gbmV3IHpLKHRoaXMuTigpKX19LGRYPWNsYXNzIGV4dGVuZHMgdUh7Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLk49bn1uZXh0KCl7cmV0dXJuIHRoaXMuTi5uZXh0KCl9W1N5bWJvbC5pdGVyYXRvcl0oKXtyZXR1cm4gbmV3IHpLKHRoaXMuTil9Sigpe3JldHVybiBuZXcgeksodGhpcy5OKX19LHpLPWNsYXNzIGV4dGVuZHMgb0Z7Y29uc3RydWN0b3Iobil7c3VwZXIoKCk9Pm4pOwp0aGlzLlc9bn1uZXh0KCl7cmV0dXJuIHRoaXMuVy5uZXh0KCl9fTtsSC5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGxIKHRoaXMuTix0aGlzLkssdGhpcy5XLHRoaXMuaix0aGlzLlgsdGhpcy5WLHRoaXMuSix0aGlzLlkpfTsKbEgucHJvdG90eXBlLmVxdWFscz1mdW5jdGlvbihuKXtyZXR1cm4gdGhpcy5OPT1uLk4mJnRoaXMuSz09bi5LJiZ0aGlzLlc9PW4uVyYmdGhpcy5qPT1uLmomJnRoaXMuWD09bi5YJiZ0aGlzLlY9PW4uViYmdGhpcy5KPT1uLkomJnRoaXMuWT09bi5ZfTsoZnVuY3Rpb24oKXtpZihwUWope3ZhciBuPS9XaW5kb3dzIE5UIChbMC05Ll0rKS87cmV0dXJuKG49bi5leGVjKGcuWFEoKSkpP25bMV06IjAifXJldHVybiBucj8obj0vMVswfDFdW18uXVswLTlfLl0rLywobj1uLmV4ZWMoZy5YUSgpKSk/blswXS5yZXBsYWNlKC9fL2csIi4iKToiMTAiKTpnLlFIPyhuPS9BbmRyb2lkXHMrKFteXCk7XSspKFwpfDspLywobj1uLmV4ZWMoZy5YUSgpKSk/blsxXToiIik6V1VafHxENGl8fGJpVT8obj0vKD86aVBob25lfENQVSlccytPU1xzKyhcUyspLywobj1uLmV4ZWMoZy5YUSgpKSk/blsxXS5yZXBsYWNlKC9fL2csIi4iKToiIik6IiJ9KSgpO3ZhciBmWDI9ZnVuY3Rpb24oKXtpZihnLmFvKXJldHVybiBqQSgvRmlyZWZveFwvKFswLTkuXSspLyk7aWYoZy5raHx8Zy5SZ3x8cmMpcmV0dXJuIFAyO2lmKGcub2Qpe2lmKGcuQTQoKXx8Zy5teCgpKXt2YXIgbj1qQSgvQ3JpT1NcLyhbMC05Ll0rKS8pO2lmKG4pcmV0dXJuIG59cmV0dXJuIGpBKC9DaHJvbWVcLyhbMC05Ll0rKS8pfWlmKGcuR24mJiFnLkE0KCkpcmV0dXJuIGpBKC9WZXJzaW9uXC8oWzAtOS5dKykvKTtpZih3OHx8TVgpe2lmKG49L1ZlcnNpb25cLyhcUyspLipNb2JpbGVcLyhcUyspLy5leGVjKGcuWFEoKSkpcmV0dXJuIG5bMV0rIi4iK25bMl19ZWxzZSBpZihnLkltKXJldHVybihuPWpBKC9BbmRyb2lkXHMrKFswLTkuXSspLykpP246akEoL1ZlcnNpb25cLyhbMC05Ll0rKS8pO3JldHVybiIifSgpO2cuaXgoQkssZy5GTSk7Zy5FPUJLLnByb3RvdHlwZTtnLkUuc3Vic2NyaWJlPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj10aGlzLkpbbl07Ynx8KGI9dGhpcy5KW25dPVtdKTt2YXIgdj10aGlzLlY7dGhpcy5OW3ZdPW47dGhpcy5OW3YrMV09Vzt0aGlzLk5bdisyXT1EO3RoaXMuVj12KzM7Yi5wdXNoKHYpO3JldHVybiB2fTsKZy5FLnVuc3Vic2NyaWJlPWZ1bmN0aW9uKG4sVyxEKXtpZihuPXRoaXMuSltuXSl7bGV0IGI9dGhpcy5OO2lmKG49bi5maW5kKGZ1bmN0aW9uKHYpe3JldHVybiBiW3YrMV09PVcmJmJbdisyXT09RH0pKXJldHVybiB0aGlzLmpLKG4pfXJldHVybiExfTsKZy5FLmpLPWZ1bmN0aW9uKG4pe3ZhciBXPXRoaXMuTltuXTtpZihXKXtsZXQgRD10aGlzLkpbV107dGhpcy5YIT0wPyh0aGlzLlcucHVzaChuKSx0aGlzLk5bbisxXT0oKT0+e30pOihEJiZnLkZJKEQsbiksZGVsZXRlIHRoaXMuTltuXSxkZWxldGUgdGhpcy5OW24rMV0sZGVsZXRlIHRoaXMuTltuKzJdKX1yZXR1cm4hIVd9OwpnLkUuV0o9ZnVuY3Rpb24obixXKXt2YXIgRD10aGlzLkpbbl07aWYoRCl7bGV0IHY9QXJyYXkoYXJndW1lbnRzLmxlbmd0aC0xKTt2YXIgYj1hcmd1bWVudHMubGVuZ3RoO2xldCBrO2ZvcihrPTE7azxiO2srKyl2W2stMV09YXJndW1lbnRzW2tdO2lmKHRoaXMuSylmb3Ioaz0wO2s8RC5sZW5ndGg7aysrKWI9RFtrXSxKNHIodGhpcy5OW2IrMV0sdGhpcy5OW2IrMl0sdik7ZWxzZXt0aGlzLlgrKzt0cnl7Zm9yKGs9MCxiPUQubGVuZ3RoO2s8YiYmIXRoaXMucU4oKTtrKyspe2xldCBoPURba107dGhpcy5OW2grMV0uYXBwbHkodGhpcy5OW2grMl0sdil9fWZpbmFsbHl7aWYodGhpcy5YLS0sdGhpcy5XLmxlbmd0aD4wJiZ0aGlzLlg9PTApZm9yKDtEPXRoaXMuVy5wb3AoKTspdGhpcy5qSyhEKX19cmV0dXJuIGshPTB9cmV0dXJuITF9OwpnLkUuY2xlYXI9ZnVuY3Rpb24obil7aWYobil7bGV0IFc9dGhpcy5KW25dO1cmJihXLmZvckVhY2godGhpcy5qSyx0aGlzKSxkZWxldGUgdGhpcy5KW25dKX1lbHNlIHRoaXMuTi5sZW5ndGg9MCx0aGlzLko9e319OwpnLkUubUE9ZnVuY3Rpb24oKXtCSy5UQi5tQS5jYWxsKHRoaXMpO3RoaXMuY2xlYXIoKTt0aGlzLlcubGVuZ3RoPTB9O2cuRmQucHJvdG90eXBlLnNldD1mdW5jdGlvbihuLFcpe1c9PT12b2lkIDA/dGhpcy5OLnJlbW92ZShuKTp0aGlzLk4uc2V0KG4sKG5ldyBsZSkuYlkoVykpfTsKZy5GZC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKG4pe3RyeXt2YXIgVz10aGlzLk4uZ2V0KG4pfWNhdGNoKEQpe3JldHVybn1pZihXIT09bnVsbCl0cnl7cmV0dXJuIEpTT04ucGFyc2UoVyl9Y2F0Y2goRCl7dGhyb3ciU3RvcmFnZTogSW52YWxpZCB2YWx1ZSB3YXMgZW5jb3VudGVyZWQiO319OwpnLkZkLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24obil7dGhpcy5OLnJlbW92ZShuKX07Zy5peCh3WCxnLkZkKTt3WC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKG4sVyl7d1guVEIuc2V0LmNhbGwodGhpcyxuLFJGKFcpKX07CndYLnByb3RvdHlwZS5NRD1mdW5jdGlvbihuKXtuPXdYLlRCLmdldC5jYWxsKHRoaXMsbik7aWYobj09PXZvaWQgMHx8biBpbnN0YW5jZW9mIE9iamVjdClyZXR1cm4gbjt0aHJvdyJTdG9yYWdlOiBJbnZhbGlkIHZhbHVlIHdhcyBlbmNvdW50ZXJlZCI7fTsKd1gucHJvdG90eXBlLmdldD1mdW5jdGlvbihuKXtpZihuPXRoaXMuTUQobikpe2lmKG49bi5kYXRhLG49PT12b2lkIDApdGhyb3ciU3RvcmFnZTogSW52YWxpZCB2YWx1ZSB3YXMgZW5jb3VudGVyZWQiO31lbHNlIG49dm9pZCAwO3JldHVybiBufTtnLml4KFFLLHdYKTtRSy5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKG4sVyxEKXtpZihXPVJGKFcpKXtpZihEKXtpZihEPGcuVXcoKSl7UUsucHJvdG90eXBlLnJlbW92ZS5jYWxsKHRoaXMsbik7cmV0dXJufVcuZXhwaXJhdGlvbj1EfVcuY3JlYXRpb249Zy5VdygpfVFLLlRCLnNldC5jYWxsKHRoaXMsbixXKX07ClFLLnByb3RvdHlwZS5NRD1mdW5jdGlvbihuKXt2YXIgVz1RSy5UQi5NRC5jYWxsKHRoaXMsbik7aWYoVyl7bGV0IEQ9Vy5jcmVhdGlvbixiPVcuZXhwaXJhdGlvbjtpZihiJiZiPGcuVXcoKXx8RCYmRD5nLlV3KCkpUUsucHJvdG90eXBlLnJlbW92ZS5jYWxsKHRoaXMsbik7ZWxzZSByZXR1cm4gV319O2cuaXgoVkssUUspO2cuaXgoY0ssSVgxKTtjSy5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiBZQTEodGhpcy5ncSghMCkpLkooKX07CmNLLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3ZhciBuPUFycmF5LmZyb20odGhpcyk7Zm9yKGxldCBXIG9mIG4pdGhpcy5yZW1vdmUoVyl9O2cuaXgoYUYsY0spO2cuRT1hRi5wcm90b3R5cGU7Zy5FLmlzQXZhaWxhYmxlPWZ1bmN0aW9uKCl7aWYodGhpcy5KPT09bnVsbCl7dmFyIG49dGhpcy5OO2lmKG4pdHJ5e24uc2V0SXRlbSgiX19zYWsiLCIxIik7bi5yZW1vdmVJdGVtKCJfX3NhayIpO3ZhciBXPSEwfWNhdGNoKEQpe1c9RCBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiYmKEQubmFtZT09PSJRdW90YUV4Y2VlZGVkRXJyb3IifHxELmNvZGU9PT0yMnx8RC5jb2RlPT09MTAxNHx8RC5uYW1lPT09Ik5TX0VSUk9SX0RPTV9RVU9UQV9SRUFDSEVEIikmJm4mJm4ubGVuZ3RoIT09MH1lbHNlIFc9ITE7dGhpcy5KPVd9cmV0dXJuIHRoaXMuSn07CmcuRS5zZXQ9ZnVuY3Rpb24obixXKXtuZSh0aGlzKTt0cnl7dGhpcy5OLnNldEl0ZW0obixXKX1jYXRjaChEKXtpZih0aGlzLk4ubGVuZ3RoPT0wKXRocm93IlN0b3JhZ2UgbWVjaGFuaXNtOiBTdG9yYWdlIGRpc2FibGVkIjt0aHJvdyJTdG9yYWdlIG1lY2hhbmlzbTogUXVvdGEgZXhjZWVkZWQiO319OwpnLkUuZ2V0PWZ1bmN0aW9uKG4pe25lKHRoaXMpO249dGhpcy5OLmdldEl0ZW0obik7aWYodHlwZW9mIG4hPT0ic3RyaW5nIiYmbiE9PW51bGwpdGhyb3ciU3RvcmFnZSBtZWNoYW5pc206IEludmFsaWQgdmFsdWUgd2FzIGVuY291bnRlcmVkIjtyZXR1cm4gbn07CmcuRS5yZW1vdmU9ZnVuY3Rpb24obil7bmUodGhpcyk7dGhpcy5OLnJlbW92ZUl0ZW0obil9OwpnLkUuZ3E9ZnVuY3Rpb24obil7bmUodGhpcyk7dmFyIFc9MCxEPXRoaXMuTixiPW5ldyB1SDtiLm5leHQ9ZnVuY3Rpb24oKXtpZihXPj1ELmxlbmd0aClyZXR1cm4gUkZNO3ZhciB2PUQua2V5KFcrKyk7aWYobilyZXR1cm57dmFsdWU6dixkb25lOiExfTt2PUQuZ2V0SXRlbSh2KTtpZih0eXBlb2YgdiE9PSJzdHJpbmciKXRocm93IlN0b3JhZ2UgbWVjaGFuaXNtOiBJbnZhbGlkIHZhbHVlIHdhcyBlbmNvdW50ZXJlZCI7cmV0dXJue3ZhbHVlOnYsZG9uZTohMX19OwpyZXR1cm4gYn07CmcuRS5jbGVhcj1mdW5jdGlvbigpe25lKHRoaXMpO3RoaXMuTi5jbGVhcigpfTsKZy5FLmtleT1mdW5jdGlvbihuKXtuZSh0aGlzKTtyZXR1cm4gdGhpcy5OLmtleShuKX07Zy5peChXUyxhRik7Zy5peChEUSxhRik7Zy5peChiQyxjSyk7YkMucHJvdG90eXBlLnNldD1mdW5jdGlvbihuLFcpe3RoaXMuSi5zZXQodGhpcy5OK24sVyl9OwpiQy5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKG4pe3JldHVybiB0aGlzLkouZ2V0KHRoaXMuTituKX07CmJDLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24obil7dGhpcy5KLnJlbW92ZSh0aGlzLk4rbil9OwpiQy5wcm90b3R5cGUuZ3E9ZnVuY3Rpb24obil7dmFyIFc9dGhpcy5KW1N5bWJvbC5pdGVyYXRvcl0oKSxEPXRoaXMsYj1uZXcgdUg7Yi5uZXh0PWZ1bmN0aW9uKCl7dmFyIHY9Vy5uZXh0KCk7aWYodi5kb25lKXJldHVybiB2O2Zvcih2PXYudmFsdWU7di5zbGljZSgwLEQuTi5sZW5ndGgpIT1ELk47KXt2PVcubmV4dCgpO2lmKHYuZG9uZSlyZXR1cm4gdjt2PXYudmFsdWV9cmV0dXJue3ZhbHVlOm4/di5zbGljZShELk4ubGVuZ3RoKTpELkouZ2V0KHYpLGRvbmU6ITF9fTsKcmV0dXJuIGJ9O2tqLnByb3RvdHlwZS5nZXRWYWx1ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkp9Owprai5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGtqKHRoaXMuTix0aGlzLkopfTt2YXIgZWM9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPVtdO2lmKG4pYTp7bGV0IEQ7aWYobiBpbnN0YW5jZW9mIGVjKXtpZihEPW4udUIoKSxuPW4uejcoKSx0aGlzLk4ubGVuZ3RoPD0wKXt2YXIgVz10aGlzLk47Zm9yKGxldCBiPTA7YjxELmxlbmd0aDtiKyspVy5wdXNoKG5ldyBraihEW2JdLG5bYl0pKTticmVhayBhfX1lbHNlIEQ9Zy5MVChuKSxuPWhLKG4pO2ZvcihXPTA7VzxELmxlbmd0aDtXKyspdGhpcy5xcChEW1ddLG5bV10pfX1xcChuLFcpe3ZhciBEPXRoaXMuTjtELnB1c2gobmV3IGtqKG4sVykpO249RC5sZW5ndGgtMTtXPXRoaXMuTjtmb3IoRD1XW25dO24+MDspe2xldCBiPW4tMT4+MTtpZihXW2JdLk4+RC5OKVdbbl09V1tiXSxuPWI7ZWxzZSBicmVha31XW25dPUR9cmVtb3ZlKCl7dmFyIG49dGhpcy5OLFc9bi5sZW5ndGgsRD1uWzBdO2lmKCEoVzw9MCkpe2lmKFc9PTEpbi5sZW5ndGg9MDtlbHNle25bMF09bi5wb3AoKTtuPTA7Vz10aGlzLk47bGV0IHY9Vy5sZW5ndGgsCms9V1tuXTtmb3IoO248dj4+MTspe3ZhciBiPW4qMisxO2xldCBoPW4qMisyO2I9aDx2JiZXW2hdLk48V1tiXS5OP2g6YjtpZihXW2JdLk4+ay5OKWJyZWFrO1dbbl09V1tiXTtuPWJ9V1tuXT1rfXJldHVybiBELmdldFZhbHVlKCl9fXo3KCl7dmFyIG49dGhpcy5OLFc9W10sRD1uLmxlbmd0aDtmb3IobGV0IGI9MDtiPEQ7YisrKVcucHVzaChuW2JdLmdldFZhbHVlKCkpO3JldHVybiBXfXVCKCl7dmFyIG49dGhpcy5OLFc9W10sRD1uLmxlbmd0aDtmb3IobGV0IGI9MDtiPEQ7YisrKVcucHVzaChuW2JdLk4pO3JldHVybiBXfWNsb25lKCl7cmV0dXJuIG5ldyBlYyh0aGlzKX1pc0VtcHR5KCl7cmV0dXJuIHRoaXMuTi5sZW5ndGg9PT0wfWNsZWFyKCl7dGhpcy5OLmxlbmd0aD0wfX07dmFyIFFyaD1jbGFzcyBleHRlbmRzIGVje307dmFyIGhrPXt9LFZKaT10eXBlb2YgVWludDhBcnJheSE9PSJ1bmRlZmluZWQiJiZ0eXBlb2YgVWludDE2QXJyYXkhPT0idW5kZWZpbmVkIiYmdHlwZW9mIEludDMyQXJyYXkhPT0idW5kZWZpbmVkIjtoay5hc3NpZ249ZnVuY3Rpb24obil7Zm9yKHZhciBXPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKTtXLmxlbmd0aDspe3ZhciBEPVcuc2hpZnQoKTtpZihEKXtpZih0eXBlb2YgRCE9PSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoRCsibXVzdCBiZSBub24tb2JqZWN0Iik7Zm9yKHZhciBiIGluIEQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEQsYikmJihuW2JdPURbYl0pfX1yZXR1cm4gbn07CmhrLlVmPWZ1bmN0aW9uKG4sVyl7aWYobi5sZW5ndGg9PT1XKXJldHVybiBuO2lmKG4uc3ViYXJyYXkpcmV0dXJuIG4uc3ViYXJyYXkoMCxXKTtuLmxlbmd0aD1XO3JldHVybiBufTsKdmFyIGNUMj17UDc6ZnVuY3Rpb24obixXLEQsYix2KXtpZihXLnN1YmFycmF5JiZuLnN1YmFycmF5KW4uc2V0KFcuc3ViYXJyYXkoRCxEK2IpLHYpO2Vsc2UgZm9yKHZhciBrPTA7azxiO2srKyluW3Yra109V1tEK2tdfSwKUDY6ZnVuY3Rpb24obil7dmFyIFcsRDt2YXIgYj1EPTA7Zm9yKFc9bi5sZW5ndGg7YjxXO2IrKylEKz1uW2JdLmxlbmd0aDt2YXIgdj1uZXcgVWludDhBcnJheShEKTtiPUQ9MDtmb3IoVz1uLmxlbmd0aDtiPFc7YisrKXt2YXIgaz1uW2JdO3Yuc2V0KGssRCk7RCs9ay5sZW5ndGh9cmV0dXJuIHZ9fSxhY0M9e1A3OmZ1bmN0aW9uKG4sVyxELGIsdil7Zm9yKHZhciBrPTA7azxiO2srKyluW3Yra109V1tEK2tdfSwKUDY6ZnVuY3Rpb24obil7cmV0dXJuW10uY29uY2F0LmFwcGx5KFtdLG4pfX07CmhrLlhHPWZ1bmN0aW9uKCl7VkppPyhoay5PbT1VaW50OEFycmF5LGhrLm1LPVVpbnQxNkFycmF5LGhrLlN2PUludDMyQXJyYXksaGsuYXNzaWduKGhrLGNUMikpOihoay5PbT1BcnJheSxoay5tSz1BcnJheSxoay5Tdj1BcnJheSxoay5hc3NpZ24oaGssYWNDKSl9Owpoay5YRygpO3ZhciBueGk9ITA7dHJ5e25ldyBVaW50OEFycmF5KDEpfWNhdGNoKG4pe254aT0hMX07dmFyIFZ0PXt9O1Z0PWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PW4mNjU1MzV8MDtuPW4+Pj4xNiY2NTUzNXwwO2Zvcih2YXIgaztEIT09MDspe2s9RD4yRTM/MkUzOkQ7RC09aztkbyB2PXYrV1tiKytdfDAsbj1uK3Z8MDt3aGlsZSgtLWspO3YlPTY1NTIxO24lPTY1NTIxfXJldHVybiB2fG48PDE2fDB9O2Zvcih2YXIgY1M9e30sZ24sV3RyPVtdLFhzPTA7WHM8MjU2O1hzKyspe2duPVhzO2Zvcih2YXIgRGtaPTA7RGtaPDg7RGtaKyspZ249Z24mMT8zOTg4MjkyMzg0XmduPj4+MTpnbj4+PjE7V3RyW1hzXT1nbn1jUz1mdW5jdGlvbihuLFcsRCxiKXtEPWIrRDtmb3Iobl49LTE7YjxEO2IrKyluPW4+Pj44Xld0clsobl5XW2JdKSYyNTVdO3JldHVybiBuXi0xfTt2YXIgekI9e307ekI9ezI6Im5lZWQgZGljdGlvbmFyeSIsMToic3RyZWFtIGVuZCIsMDoiIiwiLTEiOiJmaWxlIGVycm9yIiwiLTIiOiJzdHJlYW0gZXJyb3IiLCItMyI6ImRhdGEgZXJyb3IiLCItNCI6Imluc3VmZmljaWVudCBtZW1vcnkiLCItNSI6ImJ1ZmZlciBlcnJvciIsIi02IjoiaW5jb21wYXRpYmxlIHZlcnNpb24ifTt2YXIgbSQ9WzAsMCwwLDAsMCwwLDAsMCwxLDEsMSwxLDIsMiwyLDIsMywzLDMsMyw0LDQsNCw0LDUsNSw1LDUsMF0sUFM9WzAsMCwwLDAsMSwxLDIsMiwzLDMsNCw0LDUsNSw2LDYsNyw3LDgsOCw5LDksMTAsMTAsMTEsMTEsMTIsMTIsMTMsMTNdLFowdz1bMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwyLDMsN10sQ2U9WzE2LDE3LDE4LDAsOCw3LDksNiwxMCw1LDExLDQsMTIsMywxMywyLDE0LDEsMTVdLEJTPUFycmF5KDU3Nik7TGUoQlMpO3ZhciBGOT1BcnJheSg2MCk7TGUoRjkpO3ZhciBPJD1BcnJheSg1MTIpO0xlKE8kKTt2YXIgQWs9QXJyYXkoMjU2KTtMZShBayk7dmFyIEtlPUFycmF5KDI5KTtMZShLZSk7dmFyIFpRPUFycmF5KDMwKTtMZShaUSk7dmFyIHhmLEx3LGVILGhyPSExO3ZhciBidztidz1bbmV3IERFKDAsMCwwLDAsZnVuY3Rpb24obixXKXt2YXIgRD02NTUzNTtmb3IoRD5uLnl2LTUmJihEPW4ueXYtNSk7Oyl7aWYobi5HVzw9MSl7YVMobik7aWYobi5HVz09PTAmJlc9PT0wKXJldHVybiAxO2lmKG4uR1c9PT0wKWJyZWFrfW4ucXMrPW4uR1c7bi5HVz0wO3ZhciBiPW4uT0srRDtpZihuLnFzPT09MHx8bi5xcz49YilpZihuLkdXPW4ucXMtYixuLnFzPWIsdzcobiwhMSksbi5UUi51Uj09PTApcmV0dXJuIDE7aWYobi5xcy1uLk9LPj1uLnhyLTI2MiYmKHc3KG4sITEpLG4uVFIudVI9PT0wKSlyZXR1cm4gMX1uLnFwPTA7aWYoVz09PTQpcmV0dXJuIHc3KG4sITApLG4uVFIudVI9PT0wPzM6NDtuLnFzPm4uT0smJnc3KG4sITEpO3JldHVybiAxfSksCm5ldyBERSg0LDQsOCw0LG53KSxuZXcgREUoNCw1LDE2LDgsbncpLG5ldyBERSg0LDYsMzIsMzIsbncpLG5ldyBERSg0LDQsMTYsMTYsV1YpLG5ldyBERSg4LDE2LDMyLDMyLFdWKSxuZXcgREUoOCwxNiwxMjgsMTI4LFdWKSxuZXcgREUoOCwzMiwxMjgsMjU2LFdWKSxuZXcgREUoMzIsMTI4LDI1OCwxMDI0LFdWKSxuZXcgREUoMzIsMjU4LDI1OCw0MDk2LFdWKV07dmFyIGtmPXt9O2tmPWZ1bmN0aW9uKCl7dGhpcy5pbnB1dD1udWxsO3RoaXMuRW09dGhpcy5CQT10aGlzLlVaPTA7dGhpcy5vdXRwdXQ9bnVsbDt0aGlzLnRCPXRoaXMudVI9dGhpcy51Zz0wO3RoaXMubXNnPSIiO3RoaXMuc3RhdGU9bnVsbDt0aGlzLnFTPTI7dGhpcy5nST0wfTt2YXIgZzI9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzsKdlYucHJvdG90eXBlLnB1c2g9ZnVuY3Rpb24obixXKXt2YXIgRD10aGlzLlRSLGI9dGhpcy5vcHRpb25zLmNodW5rU2l6ZTtpZih0aGlzLmVuZGVkKXJldHVybiExO3ZhciB2PVc9PT1+flc/VzpXPT09ITA/NDowO3R5cGVvZiBuPT09InN0cmluZyI/RC5pbnB1dD14aihuKTpnMi5jYWxsKG4pPT09IltvYmplY3QgQXJyYXlCdWZmZXJdIj9ELmlucHV0PW5ldyBVaW50OEFycmF5KG4pOkQuaW5wdXQ9bjtELlVaPTA7RC5CQT1ELmlucHV0Lmxlbmd0aDtkb3tELnVSPT09MCYmKEQub3V0cHV0PW5ldyBoay5PbShiKSxELnVnPTAsRC51Uj1iKTtuPVBwMShELHYpO2lmKG4hPT0xJiZuIT09MClyZXR1cm4gdGhpcy5IdChuKSx0aGlzLmVuZGVkPSEwLCExO2lmKEQudVI9PT0wfHxELkJBPT09MCYmKHY9PT00fHx2PT09MikpaWYodGhpcy5vcHRpb25zLnRvPT09InN0cmluZyIpe3ZhciBrPWhrLlVmKEQub3V0cHV0LEQudWcpO1c9aztrPWsubGVuZ3RoO2lmKGs8NjU1MzcmJihXLnN1YmFycmF5JiYKbnhpfHwhVy5zdWJhcnJheSkpVz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsaGsuVWYoVyxrKSk7ZWxzZXtmb3IodmFyIGg9IiIseD0wO3g8azt4KyspaCs9U3RyaW5nLmZyb21DaGFyQ29kZShXW3hdKTtXPWh9dGhpcy5jaHVua3MucHVzaChXKX1lbHNlIFc9aGsuVWYoRC5vdXRwdXQsRC51ZyksdGhpcy5jaHVua3MucHVzaChXKX13aGlsZSgoRC5CQT4wfHxELnVSPT09MCkmJm4hPT0xKTtpZih2PT09NClyZXR1cm4oRD10aGlzLlRSKSYmRC5zdGF0ZT8oYj1ELnN0YXRlLnN0YXR1cyxiIT09NDImJmIhPT02OSYmYiE9PTczJiZiIT09OTEmJmIhPT0xMDMmJmIhPT0xMTMmJmIhPT02NjY/bj1sQyhELC0yKTooRC5zdGF0ZT1udWxsLG49Yj09PTExMz9sQyhELC0zKTowKSk6bj0tMix0aGlzLkh0KG4pLHRoaXMuZW5kZWQ9ITAsbj09PTA7dj09PTImJih0aGlzLkh0KDApLEQudVI9MCk7cmV0dXJuITB9Owp2Vi5wcm90b3R5cGUuSHQ9ZnVuY3Rpb24obil7bj09PTAmJih0aGlzLnJlc3VsdD10aGlzLm9wdGlvbnMudG89PT0ic3RyaW5nIj90aGlzLmNodW5rcy5qb2luKCIiKTpoay5QNih0aGlzLmNodW5rcykpO3RoaXMuY2h1bmtzPVtdO3RoaXMuZXJyPW47dGhpcy5tc2c9dGhpcy5UUi5tc2d9O3ZhciB0cj0oKT0+TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDcpLnNwbGl0KCIiKS5qb2luKCIuIiksR2Q9YEBAcmVkdXgvSU5JVCR7dHIoKX1gLEVLQz1gQEByZWR1eC9SRVBMQUNFJHt0cigpfWA7dmFyIHIyPXR5cGVvZiBTeW1ib2w9PT0iZnVuY3Rpb24iJiZTeW1ib2wub2JzZXJ2YWJsZXx8IkBAb2JzZXJ2YWJsZSI7dmFyIFFTeD1JXyhjbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fSxbMCxnLkN4LFRnLGcub20sbFUsZy5vbSwtMSxqbyxsVSxqbywtMSxnLkN4LGpvLFRnLGcuZHEsWzAsbFUsLTMsam9dLGcub20sLTEsam9dKTt2YXIgS0d0PS0zMDE3MTcyMTc7dmFyIGJzdD1mdW5jdGlvbihuLFcpe3JldHVybigoKT0+e3ZhciBEPW5ldyBBWHgobixXKTtyZXR1cm4oKT0+RH0pKCl9KCJ5b3V0dWJlLmFwaS5pbm5lcnR1YmUuQXR0ZXN0YXRpb25FcnJvciIsJ1tudWxsLFtbIkFUVEVTVEFUSU9OX0VSUk9SX1VOS05PV04iLDBdLFsiQVRURVNUQVRJT05fRVJST1JfVk1fTk9UX0lOSVRJQUxJWkVEIiwxXSxbIkFUVEVTVEFUSU9OX0VSUk9SX1ZNX05PX1JFU1BPTlNFIiwyXSxbIkFUVEVTVEFUSU9OX0VSUk9SX1ZNX1RJTUVPVVQiLDNdLFsiQVRURVNUQVRJT05fRVJST1JfVk1fSU5URVJOQUxfRVJST1IiLDRdLFsiQVRURVNUQVRJT05fRVJST1JfUFJFRkVUQ0hfQ0hBTExFTkdFX0lOVkFMSUQiLDVdLFsiQVRURVNUQVRJT05fRVJST1JfUFJFRkVUQ0hfQ0hBTExFTkdFX05FVFdPUktfRVJST1IiLDZdLFsiQVRURVNUQVRJT05fRVJST1JfUFJFRkVUQ0hfQ0hBTExFTkdFX09GRkxJTkUiLDddLFsiQVRURVNUQVRJT05fRVJST1JfUFJFRkVUQ0hfQ0hBTExFTkdFX0lOVEVSTkFMX0VSUk9SIiw4XSxbIkFUVEVTVEFUSU9OX0VSUk9SX0FQSV9OT1RfUkVBRFkiLDldLFsiQVRURVNUQVRJT05fRVJST1JfREVWSUNFX09GRkxJTkUiLDEwXSxbIkFUVEVTVEFUSU9OX0VSUk9SX0tFWV9QQUlSX0lOSVRfRkFJTEVEIiwxMl0sWyJBVFRFU1RBVElPTl9FUlJPUl9TSUdOSU5HX0RBVEFfTUlTU0lORyIsMTNdLFsiQVRURVNUQVRJT05fRVJST1JfU0lHTklOR19GQUlMRUQiLDE0XSxbIkFUVEVTVEFUSU9OX0VSUk9SX0NFUlRfQ0hBSU5fUkVUUklFVkFMX0ZBSUxFRCIsMTVdXSxudWxsLFtbMTEsMTFdXV0nKTtnLnFNPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMubmFtZT1ufX07Zy5TdD1uZXcgZy5xTSgiYWN0aW9uQ29tcGFuaW9uQWRSZW5kZXJlciIpO2cuVWg9bmV3IGcucU0oImFkQWN0aW9uSW50ZXJzdGl0aWFsUmVuZGVyZXIiKTtnLm0yPW5ldyBnLnFNKCJhZHNFbmdhZ2VtZW50UGFuZWxSZW5kZXJlciIpO2cuVyQ9bmV3IGcucU0oImRpc21pc3NhYmxlUGFuZWxUZXh0UG9ydHJhaXRJbWFnZVJlbmRlcmVyIik7Zy5vYT1uZXcgZy5xTSgiYWRzRW5nYWdlbWVudFBhbmVsU2VjdGlvbkxpc3RWaWV3TW9kZWwiKTtnLkFqPW5ldyBnLnFNKCJpbWFnZUNvbXBhbmlvbkFkUmVuZGVyZXIiKTtnLkVoPW5ldyBnLnFNKCJpbnN0cmVhbUFkUGxheWVyT3ZlcmxheVJlbmRlcmVyIik7Zy5GeT1uZXcgZy5xTSgiaW5zdHJlYW1TdXJ2ZXlBZFJlbmRlcmVyIik7Zy5HOD1uZXcgZy5xTSgiaW5zdHJlYW1TdXJ2ZXlBZFNpbmdsZVNlbGVjdFF1ZXN0aW9uUmVuZGVyZXIiKTtnLnRMPW5ldyBnLnFNKCJpbnN0cmVhbVN1cnZleUFkTXVsdGlTZWxlY3RRdWVzdGlvblJlbmRlcmVyIik7Zy4kSD1uZXcgZy5xTSgiaW5zdHJlYW1TdXJ2ZXlBZEFuc3dlclJlbmRlcmVyIik7Zy52eHg9bmV3IGcucU0oImluc3RyZWFtU3VydmV5QWRBbnN3ZXJOb25lT2ZUaGVBYm92ZVJlbmRlcmVyIik7Zy5DYz1uZXcgZy5xTSgiaW5zdHJlYW1WaWRlb0FkUmVuZGVyZXIiKTtnLmkwPW5ldyBnLnFNKCJwbGF5ZXJPdmVybGF5TGF5b3V0UmVuZGVyZXIiKTtnLnlWPW5ldyBnLnFNKCJ2aWRlb0ludGVyc3RpdGlhbEJ1dHRvbmVkQ2VudGVyZWRMYXlvdXRSZW5kZXJlciIpO2cuaFg9bmV3IGcucU0oImFib3ZlRmVlZEFkTGF5b3V0UmVuZGVyZXIiKTtnLnh6PW5ldyBnLnFNKCJiZWxvd1BsYXllckFkTGF5b3V0UmVuZGVyZXIiKTtnLmt6PW5ldyBnLnFNKCJpblBsYXllckFkTGF5b3V0UmVuZGVyZXIiKTtnLmUyPW5ldyBnLnFNKCJpblBsYXllck9yZ2FuaWNPdmVybGF5QWRMYXlvdXRSZW5kZXJlciIpO2cuUmE9bmV3IGcucU0oInBsYXllckJ5dGVzQWRMYXlvdXRSZW5kZXJlciIpO2cuTGk9bmV3IGcucU0oInBsYXllckJ5dGVzU2VxdWVuY2VJdGVtQWRMYXlvdXRSZW5kZXJlciIpO2cudiQ9bmV3IGcucU0oInBsYXllclVuZGVybGF5QWRMYXlvdXRSZW5kZXJlciIpO2cuQlE9bmV3IGcucU0oImFkSW50cm9SZW5kZXJlciIpO2cuVDA9bmV3IGcucU0oInBsYXllckJ5dGVzU2VxdWVudGlhbExheW91dFJlbmRlcmVyIik7Zy53YT1uZXcgZy5xTSgic3VydmV5VGV4dEludGVyc3RpdGlhbFJlbmRlcmVyIik7Zy5RVj1uZXcgZy5xTSgidmlkZW9BZFRyYWNraW5nUmVuZGVyZXIiKTt2YXIgUXhNPW5ldyBnLnFNKCJ2aWRlb0ludGVyc3RpdGlhbENlbnRlcmVkTGF5b3V0Vmlld01vZGVsIik7Zy5kYT1uZXcgZy5xTSgicGxheWVyT3JnYW5pY1RyYW5zaXRpb25PdmVybGF5UmVuZGVyZXIiKTtnLlhHPW5ldyBnLnFNKCJhZFNsb3RSZW5kZXJlciIpO2cuYWE9bmV3IGcucU0oInNxdWVlemViYWNrUGxheWVyU2lkZVBhbmVsUmVuZGVyZXIiKTtnLktjPW5ldyBnLnFNKCJiYW5uZXJJbWFnZUxheW91dFZpZXdNb2RlbCIpO2cuT2g9bmV3IGcucU0oInRvcEJhbm5lckltYWdlVGV4dEljb25CdXR0b25lZExheW91dFZpZXdNb2RlbCIpO2cuUFE9bmV3IGcucU0oImFkc0VuZ2FnZW1lbnRQYW5lbExheW91dFZpZXdNb2RlbCIpO2cubmk9bmV3IGcucU0oImRpc3BsYXlVbmRlcmxheVRleHRHcmlkQ2FyZHNMYXlvdXRWaWV3TW9kZWwiKTt2YXIgcm49Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59fSxzQz1jbGFzcyBleHRlbmRzIHJue2dldCBlbnRpdHlNZXRhZGF0YSgpe3JldHVybiB0aGlzLk4uZW50aXR5TWV0YWRhdGF9c2V0IGVudGl0eU1ldGFkYXRhKG4pe3RoaXMuTi5lbnRpdHlNZXRhZGF0YT1ufX07dmFyIGtqTT1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBoNGo9bmV3IGcucU0oImNvbW1hbmRDb250ZXh0Iik7dmFyIHhrdD1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBMdHc9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgZEUyPW5ldyBnLnFNKCJyYXdDb2xkQ29uZmlnR3JvdXAiKTt2YXIgb3Z0PW5ldyBnLnFNKCJyYXdIb3RDb25maWdHcm91cCIpO2cuTk09bmV3IGcucU0oImNvbW1hbmRFeGVjdXRvckNvbW1hbmQiKTt2YXIgZTR3PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBneHQ9e1ZDOjAsZVo6MSxFcDozMixPcDo2MSxkNzo2NyxBSzoxMDMsSVg6ODYsR0E6NDIsTVg6NjAsTEk6NjIsRGk6NzMsYVg6NzYsdzc6ODgsQ0k6OTAsTjY6OTksSHI6OTgsb1g6MTAwLEZBOjEwMixjODo0MSxQODo2OSx5TDo3MCxKcjo3MSx5TToyLEs0OjI3LEFORFJPSUQ6MyxBdjo1NCx3TToxNCx6ejo5MSxDRTo1NSxkTToyNCxOdToxMDUsYzk6MjAsUDk6MTgsSkg6MjEsdEg6MTA0LFg2OjMwLGpMOjI5LFYzOjI4LHBJOjEwMSxtQjoxMDcsa0Q6MzQsaEg6MzYseTM6MzgsSU9TOjUsVEw6MTUsblE6OTIscmo6NDAscFE6MjUseDc6MTA2LFNBOjE3LFk3OjE5LHNZOjY0LHVPOjY2LGVBOjI2LFpwOjIyLGxPOjMzLEhtOjY4LFVZOjM1LExROjUzLEJtOjEwOCxSTzozNyxLUTozOSxkMjo3LFByOjU3LHlDOjQzLHRLOjU5LEpLOjkzLGlwOjc0LFdyOjc1LGJGOjg1LHpBOjY1LGhLOjgwLFhBOjgsQ006MTAsaUY6NTgscVg6NjMsbVU6NzIscXU6MjMsYkE6MTEselU6MTMsd0o6MTIsCm9OOjE2LFVwOjU2LGc3OjMxLGttOjc3LEFROjg0LGZJOjg3LENoOjg5LHdMOjk0LHpUOjk1LGxMOjEwOX07dmFyIGk5PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX1XKG4pe2cuU0UodGhpcyw1LG4pfX07dmFyIHlkPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBYd1U9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIEhzPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX1nZXRQbGF5ZXJUeXBlKCl7cmV0dXJuIEhXKHRoaXMsMzYpfXNldEhvbWVHcm91cEluZm8obil7cmV0dXJuICQ5KHRoaXMsWHdVLDgxLG4pfWNsZWFyTG9jYXRpb25QbGF5YWJpbGl0eVRva2VuKCl7cmV0dXJuIG96KHRoaXMsODkpfX07dmFyIEo2PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX1nZXRWYWx1ZSgpe3JldHVybiBZOSh0aGlzLHZXKHRoaXMsSXYsMikpfX0sSXY9WzIsMyw0LDUsNl07dmFyIHFZUz1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9c2V0VHJhY2tpbmdQYXJhbXMobil7cmV0dXJuIG96KHRoaXMsMSxrVShuLCExKSl9fTt2YXIgZlU9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIEVKPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBBNj1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9c2V0VG9rZW4obil7cmV0dXJuIGcuU0UodGhpcywyLG4pfX07dmFyIFN5PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX1zZXRTYWZldHlNb2RlKG4pe3JldHVybiBLbih0aGlzLDUsbil9fTt2YXIgWUE9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfVcobil7cmV0dXJuICQ5KHRoaXMsSHMsMSxuKX19O3ZhciBHajE9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgdFBVPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyICRrYj1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBSVGg9bmV3IGcucU0oImNvbnRpbnVhdGlvbkNvbW1hbmQiKTtnLmNFPW5ldyBnLnFNKCJzaWduYWxBY3Rpb24iKTt2YXIgcGo9bmV3IGcucU0oIndlYkNvbW1hbmRNZXRhZGF0YSIpO3ZhciBoazI9bmV3IGcucU0oIm1ldGFkYXRhQmFkZ2VSZW5kZXJlciIpO3ZhciBRWU09bmV3IGcucU0oInNpZ25hbFNlcnZpY2VFbmRwb2ludCIpO3ZhciAkej1uZXcgZy5xTSgiaW5uZXJ0dWJlQ29tbWFuZCIpO3ZhciBEMzE9e1NUOiJFTUJFRERFRF9QTEFZRVJfTU9ERV9VTktOT1dOIixyTDoiRU1CRURERURfUExBWUVSX01PREVfREVGQVVMVCIseHc6IkVNQkVEREVEX1BMQVlFUl9NT0RFX1BGUCIsS2g6IkVNQkVEREVEX1BMQVlFUl9NT0RFX1BGTCJ9O3ZhciAkdE09bmV3IGcucU0oImNoYW5uZWxUaHVtYm5haWxFbmRwb2ludCIpO3ZhciBEdEM9bmV3IGcucU0oImVtYmVkZGVkUGxheWVyRXJyb3JNZXNzYWdlUmVuZGVyZXIiKTt2YXIgYW9VPW5ldyBnLnFNKCJlbWJlZGRlZFBsYXllck92ZXJsYXlWaWRlb0RldGFpbHNSZW5kZXJlciIpLHIxcj1uZXcgZy5xTSgiZW1iZWRkZWRQbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzQ29sbGFwc2VkUmVuZGVyZXIiKSxzc0M9bmV3IGcucU0oImVtYmVkZGVkUGxheWVyT3ZlcmxheVZpZGVvRGV0YWlsc0V4cGFuZGVkUmVuZGVyZXIiKTt2YXIgUyQ9bmV3IGcucU0oImVtYmVkc0luZm9QYW5lbFJlbmRlcmVyIik7dmFyIHJZcj1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBzQng9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgTkEyPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIHB3Qz1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uYWx0ZXJuYXRlQ2hhbm5lbCYmbi5wdXNoKHRoaXMuTi5hbHRlcm5hdGVDaGFubmVsKTt0aGlzLk4uYWx0ZXJuYXRlQ2hhbm5lbExpc3QmJm4ucHVzaCguLi50aGlzLk4uYWx0ZXJuYXRlQ2hhbm5lbExpc3QpO3RoaXMuTi5vbmVvZkNoYW5uZWxFbnRpdHkmJm4ucHVzaCh0aGlzLk4ub25lb2ZDaGFubmVsRW50aXR5KTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBZWXI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLmVudHJ5Q29sbGVjdGlvbiYmbi5wdXNoKHRoaXMuTi5lbnRyeUNvbGxlY3Rpb24pO3JldHVyblsuLi4obmV3IFNldChuKSldfX0sZl94PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5wYXJlbnRQbGF5bGlzdCYmbi5wdXNoKHRoaXMuTi5wYXJlbnRQbGF5bGlzdCk7aWYodGhpcy5OLmVudHJpZXMpZm9yKGxldCBXIG9mIHRoaXMuTi5lbnRyaWVzKW4ucHVzaCguLi4obmV3IEhzaChXKSkuSigpKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19LEhzaD1jbGFzcyBleHRlbmRzIHJue0ooKXt2YXIgbj1bXTt0aGlzLk4udmlkZW8mJm4ucHVzaCh0aGlzLk4udmlkZW8pO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIEpZYj1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uZGVzY3JpcHRpb25FbnRpdHkmJm4ucHVzaCh0aGlzLk4uZGVzY3JpcHRpb25FbnRpdHkpO3RoaXMuTi5jcmVhdG9ycyYmbi5wdXNoKC4uLnRoaXMuTi5jcmVhdG9ycyk7dGhpcy5OLnRoZUJpZ2dlc3RGYW4mJm4ucHVzaCh0aGlzLk4udGhlQmlnZ2VzdEZhbik7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fSxJX3c9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgU1l3PW5ldyBnLnFNKCJmZWVkYmFja0VuZHBvaW50Iik7dmFyIEFZeD1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBta2g9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgS3R4PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIE9zaT1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBQTHI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgWnNyPW5ldyBnLnFNKCJpbnRlcmFjdGlvbkxvZ2dpbmdDb21tYW5kTWV0YWRhdGEiKTt2YXIgZDNqPXtsRjoiV0VCX0RJU1BMQVlfTU9ERV9VTktOT1dOIixuSToiV0VCX0RJU1BMQVlfTU9ERV9CUk9XU0VSIixSWDoiV0VCX0RJU1BMQVlfTU9ERV9NSU5JTUFMX1VJIixaaToiV0VCX0RJU1BMQVlfTU9ERV9TVEFOREFMT05FIixCcjoiV0VCX0RJU1BMQVlfTU9ERV9GVUxMU0NSRUVOIn07dmFyIFVrcj1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9Z2V0UGxheWVyVHlwZSgpe3JldHVybiBIVyh0aGlzLDcpfUUxKCl7cmV0dXJuIFk5KHRoaXMsMTkpfXNldFZpZGVvSWQobil7cmV0dXJuIGcuU0UodGhpcywxOSxuKX19O3ZhciBBbT1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTt2YXIgU0w9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIFp2PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuLDUwMCl9fSx5WTE9WzIsMyw1LDYsNywxMSwxMywyMCwyMSwyMiwyMywyNCwyOCwzMiwzNyw0NSw1OSw3Miw3Myw3NCw3Niw3OCw3OSw4MCw4NSw5MSw5NywxMDAsMTAyLDEwNSwxMTEsMTE3LDExOSwxMjYsMTI3LDEzNiwxNDYsMTQ4LDE1MSwxNTYsMTU3LDE1OCwxNTksMTYzLDE2NCwxNjgsMTc2LDE3NywxNzgsMTc5LDE4NCwxODgsMTg5LDE5MCwxOTEsMTkzLDE5NCwxOTUsMTk2LDE5NywxOTgsMTk5LDIwMCwyMDEsMjAyLDIwMywyMDQsMjA1LDIwNiwyMDgsMjA5LDIxNSwyMTksMjIyLDIyNSwyMjYsMjI3LDIyOSwyMzIsMjMzLDIzNCwyNDAsMjQxLDI0NCwyNDcsMjQ4LDI0OSwyNTEsMjU0LDI1NSwyNTYsMjU3LDI1OCwyNTksMjYwLDI2MSwyNjYsMjcwLDI3MiwyNzgsMjg4LDI5MSwyOTMsMzAwLDMwNCwzMDgsMzA5LDMxMCwzMTEsMzEzLDMxNCwzMTksMzIwLDMyMSwzMjMsMzI0LDMyNywzMjgsCjMzMCwzMzEsMzMyLDMzNCwzMzcsMzM4LDM0MCwzNDQsMzQ4LDM1MCwzNTEsMzUyLDM1MywzNTQsMzU1LDM1NiwzNTcsMzU4LDM2MSwzNjMsMzY0LDM2OCwzNjksMzcwLDM3MywzNzQsMzc1LDM3OCwzODAsMzgxLDM4MywzODgsMzg5LDM5OSw0MDIsNDAzLDQxMCw0MTEsNDEyLDQxMyw0MTQsNDE1LDQxNiw0MTcsNDE4LDQyMyw0MjQsNDI1LDQyNiw0MjcsNDI5LDQzMCw0MzEsNDM5LDQ0MSw0NDQsNDQ4LDQ1OCw0NjksNDcxLDQ3Myw0NzQsNDgwLDQ4MSw0ODIsNDg0LDQ4NSw0ODYsNDkxLDQ5NSw0OTYsNTA2LDUwNyw1MDksNTExLDUxMiw1MTMsNTE0LDUxNSw1MTYsNTE3LDUxOCw1MTksNTIwLDUyMiw1MjMsNTI0LDUyNSw1MjYsNTI3LDUyOCw1MjksNTMwLDUzMSw1MzYsNTM3LDUzOCw1MzksNTQxLDU0NSw1NDcsNTQ4LDU0OSw1NTAsNTUxLDU1Miw1NTMsNTU0LDU1N107Zy5FeGk9bmV3IGcucU0oImxvZ2dpbmdDb250ZXh0Iik7dmFyIE95PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBoNj1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9RTEoKXtyZXR1cm4gSlModGhpcyx2Vyh0aGlzLHhBLDEpKX1zZXRWaWRlb0lkKG4pe3JldHVybiBEMih0aGlzLDEseEEsV0gobikpfWdldFBsYXlsaXN0SWQoKXtyZXR1cm4gSlModGhpcyx2Vyh0aGlzLHhBLDIpKX19LHhBPVsxLDJdO3ZhciB1RjI9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIGlzWj1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciB1NXQ9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgb3hoPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIGRrdD1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uZG93bmxvYWRzTGlzdCYmbi5wdXNoKHRoaXMuTi5kb3dubG9hZHNMaXN0KTt0aGlzLk4uc21hcnREb3dubG9hZHNMaXN0JiZuLnB1c2godGhpcy5OLnNtYXJ0RG93bmxvYWRzTGlzdCk7dGhpcy5OLnJlY29tbWVuZGVkRG93bmxvYWRzTGlzdCYmbi5wdXNoKHRoaXMuTi5yZWNvbW1lbmRlZERvd25sb2Fkc0xpc3QpO3RoaXMuTi5yZWZyZXNoJiZuLnB1c2godGhpcy5OLnJlZnJlc2gpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIGxfWj1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4ucmVmcmVzaCYmbi5wdXNoKHRoaXMuTi5yZWZyZXNoKTtpZih0aGlzLk4uZG93bmxvYWRzKWZvcihsZXQgVyBvZiB0aGlzLk4uZG93bmxvYWRzKW4ucHVzaCguLi4obmV3IHo0dyhXKSkuSigpKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19LHo0dz1jbGFzcyBleHRlbmRzIHJue0ooKXt2YXIgbj1bXTt0aGlzLk4udmlkZW8mJm4ucHVzaCh0aGlzLk4udmlkZW8pO3RoaXMuTi5wbGF5bGlzdCYmbi5wdXNoKHRoaXMuTi5wbGF5bGlzdCk7dGhpcy5OLnZpZGVvSXRlbSYmbi5wdXNoKHRoaXMuTi52aWRlb0l0ZW0pO3RoaXMuTi5wbGF5bGlzdEl0ZW0mJm4ucHVzaCh0aGlzLk4ucGxheWxpc3RJdGVtKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBUQTE9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLmxvY2FsSW1hZ2VFbnRpdGllcyYmbi5wdXNoKC4uLnRoaXMuTi5sb2NhbEltYWdlRW50aXRpZXMpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIGpCaT1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4ucGxheWJhY2tEYXRhJiZuLnB1c2godGhpcy5OLnBsYXliYWNrRGF0YSk7dGhpcy5OLmxvY2FsSW1hZ2VFbnRpdGllcyYmbi5wdXNoKC4uLnRoaXMuTi5sb2NhbEltYWdlRW50aXRpZXMpO3RoaXMuTi52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSYmbi5wdXNoKHRoaXMuTi52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgQ0xpPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIEJBVT1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uZmFrZUNoaWxkcmVuJiZuLnB1c2goLi4udGhpcy5OLmZha2VDaGlsZHJlbik7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgRnRoPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi52aWRlbyYmbi5wdXNoKHRoaXMuTi52aWRlbyk7dGhpcy5OLnBsYXliYWNrRGF0YSYmbi5wdXNoKHRoaXMuTi5wbGF5YmFja0RhdGEpO3RoaXMuTi5vZmZsaW5lVmlkZW9Qb2xpY3kmJm4ucHVzaCh0aGlzLk4ub2ZmbGluZVZpZGVvUG9saWN5KTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciB3d1M9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgTVB3PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5jaGFubmVsT3duZXImJm4ucHVzaCh0aGlzLk4uY2hhbm5lbE93bmVyKTt0aGlzLk4udmlkZW9zJiZuLnB1c2goLi4udGhpcy5OLnZpZGVvcyk7dGhpcy5OLmNvbGxhYm9yYXRvckNoYW5uZWxzJiZuLnB1c2goLi4udGhpcy5OLmNvbGxhYm9yYXRvckNoYW5uZWxzKTt0aGlzLk4uZG93bmxvYWRTdGF0ZSYmbi5wdXNoKHRoaXMuTi5kb3dubG9hZFN0YXRlKTt0aGlzLk4ucmVmcmVzaCYmbi5wdXNoKHRoaXMuTi5yZWZyZXNoKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBSNGk9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLnZpZGVvJiZuLnB1c2godGhpcy5OLnZpZGVvKTt0aGlzLk4uY2hhbm5lbENvbnRyaWJ1dG9yJiZuLnB1c2godGhpcy5OLmNoYW5uZWxDb250cmlidXRvcik7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgVlBVPWNsYXNzIGV4dGVuZHMgcm57Sigpe3ZhciBuPVtdO3RoaXMuTi5yZWNvbW1lbmRlZFZpZGVvTWV0YWRhdGEmJm4ucHVzaCguLi4obmV3IFFCcih0aGlzLk4ucmVjb21tZW5kZWRWaWRlb01ldGFkYXRhKSkuSigpKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19LFFCcj1jbGFzcyBleHRlbmRzIHJue0ooKXt2YXIgbj1bXTt0aGlzLk4ubG9jYWxJbWFnZUVudGl0aWVzJiZuLnB1c2goLi4udGhpcy5OLmxvY2FsSW1hZ2VFbnRpdGllcyk7dGhpcy5OLnZpZGVvRG93bmxvYWRDb250ZXh0RW50aXR5JiZuLnB1c2godGhpcy5OLnZpZGVvRG93bmxvYWRDb250ZXh0RW50aXR5KTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBjWWk9Y2xhc3MgZXh0ZW5kcyBybntKKCl7dmFyIG49W107dGhpcy5OLnBsYXliYWNrUG9zaXRpb24mJm4ucHVzaCh0aGlzLk4ucGxheWJhY2tQb3NpdGlvbik7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgYV9qPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5vd25lciYmbi5wdXNoKHRoaXMuTi5vd25lcik7dGhpcy5OLmRvd25sb2FkU3RhdGUmJm4ucHVzaCh0aGlzLk4uZG93bmxvYWRTdGF0ZSk7dGhpcy5OLnVzZXJTdGF0ZSYmbi5wdXNoKC4uLihuZXcgY1lpKHRoaXMuTi51c2VyU3RhdGUpKS5KKCkpO3RoaXMuTi5hZGRpdGlvbmFsTWV0YWRhdGEmJm4ucHVzaCguLi4obmV3IFZQVSh0aGlzLk4uYWRkaXRpb25hbE1ldGFkYXRhKSkuSigpKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBuTjI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLnVzZXJDaGFubmVsRGV0YWlscyYmbi5wdXNoKHRoaXMuTi51c2VyQ2hhbm5lbERldGFpbHMpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIFdNWj1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uY2hhbm5lbE93bmVyJiZuLnB1c2godGhpcy5OLmNoYW5uZWxPd25lcik7dGhpcy5OLnBsYXliYWNrUG9zaXRpb24mJm4ucHVzaCh0aGlzLk4ucGxheWJhY2tQb3NpdGlvbik7dGhpcy5OLmxvY2FsSW1hZ2VFbnRpdGllcyYmbi5wdXNoKC4uLnRoaXMuTi5sb2NhbEltYWdlRW50aXRpZXMpO3RoaXMuTi5kb3dubG9hZFN0YXR1cyYmbi5wdXNoKHRoaXMuTi5kb3dubG9hZFN0YXR1cyk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgREkxPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIGJ6dD1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciB2TnQ9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIga1ByPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIGhPdD1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciB4SVo9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgTE13PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIGVPcj1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBnTnI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgVVU9bmV3IGcucU0oImNoYW5nZUtleWVkTWFya2Vyc1Zpc2liaWxpdHlDb21tYW5kIik7dmFyIHh0TT1uZXcgZy5xTSgibG9hZE1hcmtlcnNDb21tYW5kIik7dmFyIGVicj1uZXcgZy5xTSgidGltZWx5QWN0aW9uVmlld01vZGVsIik7dmFyIExxQz1uZXcgZy5xTSgidGltZWx5QWN0aW9uc092ZXJsYXlWaWV3TW9kZWwiKTt2YXIgWF9TPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIHF2Qz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBHUE09Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgdHhqPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyICRJTT1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBySmI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLmNvbXBvc2l0ZVNvdXJjZUtleXMmJm4ucHVzaCguLi50aGlzLk4uY29tcG9zaXRlU291cmNlS2V5cyk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgczR0PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi50cmFja0Rvd25sb2FkTWV0YWRhdGFzJiZuLnB1c2goLi4udGhpcy5OLnRyYWNrRG93bmxvYWRNZXRhZGF0YXMpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIE5rUz1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uZG93bmxvYWRlZFRyYWNrcyYmbi5wdXNoKC4uLnRoaXMuTi5kb3dubG9hZGVkVHJhY2tzKTt0aGlzLk4uc21hcnREb3dubG9hZGVkVHJhY2tzJiZuLnB1c2goLi4udGhpcy5OLnNtYXJ0RG93bmxvYWRlZFRyYWNrcyk7dGhpcy5OLmRvd25sb2FkZWRFcGlzb2RlcyYmbi5wdXNoKC4uLnRoaXMuTi5kb3dubG9hZGVkRXBpc29kZXMpO3RoaXMuTi5kb3dubG9hZGVkQWxidW1SZWxlYXNlcyYmbi5wdXNoKC4uLnRoaXMuTi5kb3dubG9hZGVkQWxidW1SZWxlYXNlcyk7dGhpcy5OLnNtYXJ0RG93bmxvYWRlZEFsYnVtUmVsZWFzZXMmJm4ucHVzaCguLi50aGlzLk4uc21hcnREb3dubG9hZGVkQWxidW1SZWxlYXNlcyk7dGhpcy5OLmRvd25sb2FkZWRQbGF5bGlzdHMmJm4ucHVzaCguLi50aGlzLk4uZG93bmxvYWRlZFBsYXlsaXN0cyk7dGhpcy5OLnNtYXJ0RG93bmxvYWRlZFBsYXlsaXN0cyYmbi5wdXNoKC4uLnRoaXMuTi5zbWFydERvd25sb2FkZWRQbGF5bGlzdHMpOwp0aGlzLk4ubWV0YWRhdGFPbmx5VHJhY2tzJiZuLnB1c2goLi4udGhpcy5OLm1ldGFkYXRhT25seVRyYWNrcyk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgcF9yPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi50cmFja0Rvd25sb2FkTWV0YWRhdGFzJiZuLnB1c2goLi4udGhpcy5OLnRyYWNrRG93bmxvYWRNZXRhZGF0YXMpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIFl2dD1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4ucGxheWJhY2tEYXRhJiZuLnB1c2godGhpcy5OLnBsYXliYWNrRGF0YSk7dGhpcy5OLmxvY2FsSW1hZ2VFbnRpdGllcyYmbi5wdXNoKC4uLnRoaXMuTi5sb2NhbEltYWdlRW50aXRpZXMpO3RoaXMuTi52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSYmbi5wdXNoKHRoaXMuTi52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgSHppPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5tdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHkmJm4ucHVzaCh0aGlzLk4ubXVzaWNMaWJyYXJ5U3RhdHVzRW50aXR5KTt0aGlzLk4ucHJpbWFyeUFydGlzdHMmJm4ucHVzaCguLi50aGlzLk4ucHJpbWFyeUFydGlzdHMpO3RoaXMuTi5kZXRhaWxzJiZuLnB1c2godGhpcy5OLmRldGFpbHMpO3RoaXMuTi51c2VyRGV0YWlscyYmbi5wdXNoKHRoaXMuTi51c2VyRGV0YWlscyk7dGhpcy5OLnRyYWNrcyYmbi5wdXNoKC4uLnRoaXMuTi50cmFja3MpO3RoaXMuTi5zaGFyZSYmbi5wdXNoKHRoaXMuTi5zaGFyZSk7dGhpcy5OLmRvd25sb2FkTWV0YWRhdGEmJm4ucHVzaCh0aGlzLk4uZG93bmxvYWRNZXRhZGF0YSk7dGhpcy5OLnJlZnJlc2gmJm4ucHVzaCh0aGlzLk4ucmVmcmVzaCk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fSxmSlU9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLmFsYnVtUmVsZWFzZSYmCm4ucHVzaCh0aGlzLk4uYWxidW1SZWxlYXNlKTt0aGlzLk4udHJhY2tzJiZuLnB1c2goLi4udGhpcy5OLnRyYWNrcyk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fSxKSjE9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLmFsYnVtUmVsZWFzZSYmbi5wdXNoKHRoaXMuTi5hbGJ1bVJlbGVhc2UpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIElKVT1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uZGV0YWlscyYmbi5wdXNoKHRoaXMuTi5kZXRhaWxzKTt0aGlzLk4udXNlckRldGFpbHMmJm4ucHVzaCh0aGlzLk4udXNlckRldGFpbHMpO3JldHVyblsuLi4obmV3IFNldChuKSldfX0sU3ZaPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5wYXJlbnRBcnRpc3QmJm4ucHVzaCh0aGlzLk4ucGFyZW50QXJ0aXN0KTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19LEFKaT1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4ucGFyZW50QXJ0aXN0JiZuLnB1c2godGhpcy5OLnBhcmVudEFydGlzdCk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgbUliPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIEtNdz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBQVHg9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLnRyYWNrcyYmbi5wdXNoKC4uLnRoaXMuTi50cmFja3MpO3RoaXMuTi5yZWZyZXNoJiZuLnB1c2godGhpcy5OLnJlZnJlc2gpO3RoaXMuTi5tdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHkmJm4ucHVzaCh0aGlzLk4ubXVzaWNMaWJyYXJ5U3RhdHVzRW50aXR5KTt0aGlzLk4uZGV0YWlscyYmbi5wdXNoKHRoaXMuTi5kZXRhaWxzKTt0aGlzLk4uZG93bmxvYWRNZXRhZGF0YSYmbi5wdXNoKHRoaXMuTi5kb3dubG9hZE1ldGFkYXRhKTt0aGlzLk4uc2lkZWxvYWRNZXRhZGF0YSYmbi5wdXNoKHRoaXMuTi5zaWRlbG9hZE1ldGFkYXRhKTt0aGlzLk4udXNlckRldGFpbHMmJm4ucHVzaCh0aGlzLk4udXNlckRldGFpbHMpO3RoaXMuTi5lbnRyeUNvbGxlY3Rpb24mJm4ucHVzaCh0aGlzLk4uZW50cnlDb2xsZWN0aW9uKTt0aGlzLk4uc2hhcmUmJm4ucHVzaCh0aGlzLk4uc2hhcmUpO3RoaXMuTi5wb2RjYXN0U2hvd0FkZGl0aW9uYWxNZXRhZGF0YSYmCm4ucHVzaCguLi4obmV3IE96aSh0aGlzLk4ucG9kY2FzdFNob3dBZGRpdGlvbmFsTWV0YWRhdGEpKS5KKCkpO3JldHVyblsuLi4obmV3IFNldChuKSldfX0sT3ppPWNsYXNzIGV4dGVuZHMgcm57Sigpe3ZhciBuPVtdO3RoaXMuTi5jcmVhdG9yRW50aXR5JiZuLnB1c2godGhpcy5OLmNyZWF0b3JFbnRpdHkpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIFp6aT1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBVSVo9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLm11c2ljTGlicmFyeVN0YXR1c0VudGl0eSYmbi5wdXNoKHRoaXMuTi5tdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHkpO3RoaXMuTi5hcnRpc3RzJiZuLnB1c2goLi4udGhpcy5OLmFydGlzdHMpO3RoaXMuTi5hdWRpb01vZGVWZXJzaW9uJiZuLnB1c2godGhpcy5OLmF1ZGlvTW9kZVZlcnNpb24pO3RoaXMuTi52aWRlb01vZGVWZXJzaW9uJiZuLnB1c2godGhpcy5OLnZpZGVvTW9kZVZlcnNpb24pO3RoaXMuTi51c2VyRGV0YWlscyYmbi5wdXNoKHRoaXMuTi51c2VyRGV0YWlscyk7dGhpcy5OLmRldGFpbHMmJm4ucHVzaCh0aGlzLk4uZGV0YWlscyk7dGhpcy5OLmFsYnVtUmVsZWFzZSYmbi5wdXNoKHRoaXMuTi5hbGJ1bVJlbGVhc2UpO3RoaXMuTi5zaGFyZSYmbi5wdXNoKHRoaXMuTi5zaGFyZSk7dGhpcy5OLmxpYnJhcnlFZGl0JiZuLnB1c2godGhpcy5OLmxpYnJhcnlFZGl0KTt0aGlzLk4uZG93bmxvYWRNZXRhZGF0YSYmCm4ucHVzaCh0aGlzLk4uZG93bmxvYWRNZXRhZGF0YSk7dGhpcy5OLnBsYXliYWNrUG9zaXRpb24mJm4ucHVzaCh0aGlzLk4ucGxheWJhY2tQb3NpdGlvbik7dGhpcy5OLmx5cmljcyYmbi5wdXNoKHRoaXMuTi5seXJpY3MpO3JldHVyblsuLi4obmV3IFNldChuKSldfX0seUpTPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5wYXJlbnRUcmFjayYmbi5wdXNoKHRoaXMuTi5wYXJlbnRUcmFjayk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fSxFTng9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLnBhcmVudFRyYWNrJiZuLnB1c2godGhpcy5OLnBhcmVudFRyYWNrKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBucU09bmV3IGcucU0oIm11c2ljRW1iZWRkZWRQbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzUmVuZGVyZXIiKTt2YXIgaXpTPW5ldyBnLnFNKCJzaGFyZUVuZHBvaW50IiksdXhDPW5ldyBnLnFNKCJzaGFyZUVudGl0eUVuZHBvaW50Iiksb05pPW5ldyBnLnFNKCJzaGFyZUVudGl0eVNlcnZpY2VFbmRwb2ludCIpLGRJeD1uZXcgZy5xTSgid2ViUGxheWVyU2hhcmVFbnRpdHlTZXJ2aWNlRW5kcG9pbnQiKTtnLlBqPW5ldyBnLnFNKCJ1cmxFbmRwb2ludCIpO2cuSVE9bmV3IGcucU0oIndhdGNoRW5kcG9pbnQiKTt2YXIgek93PW5ldyBnLnFNKCJ3YXRjaFBsYXlsaXN0RW5kcG9pbnQiKTt2YXIgbEoyPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIFRrdz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBqNFo9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgQ1R3PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIEJrdz1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4udHJhbnNmZXImJm4ucHVzaCh0aGlzLk4udHJhbnNmZXIpO3RoaXMuTi5hZHNQbGF5YmFja0RhdGEmJm4ucHVzaCguLi50aGlzLk4uYWRzUGxheWJhY2tEYXRhKTt0aGlzLk4uZHJtTGljZW5zZSYmbi5wdXNoKHRoaXMuTi5kcm1MaWNlbnNlKTt0aGlzLk4ub2ZmbGluZVZpZGVvUG9saWN5JiZuLnB1c2godGhpcy5OLm9mZmxpbmVWaWRlb1BvbGljeSk7dGhpcy5OLnZpZGVvRG93bmxvYWRDb250ZXh0RW50aXR5JiZuLnB1c2godGhpcy5OLnZpZGVvRG93bmxvYWRDb250ZXh0RW50aXR5KTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBGTXc9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgd19NPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5vZmZsaW5lVmlkZW9TdHJlYW1zJiZuLnB1c2goLi4udGhpcy5OLm9mZmxpbmVWaWRlb1N0cmVhbXMpO3RoaXMuTi5jYXB0aW9uVHJhY2smJm4ucHVzaCguLi50aGlzLk4uY2FwdGlvblRyYWNrKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBNeFM9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgUk8xPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIFE0cj1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBWeGI9bmV3IGcucU0oInByZWZldGNoV2F0Y2hDb21tYW5kIik7dmFyIGNKWj1uZXcgZy5xTSgidXBkYXRlUHJvZ3Jlc3NCYXJDb21tYW5kIik7dmFyIE5LeD1uZXcgZy5xTSgiY29tcG9zaXRlVmlkZW9PdmVybGF5UmVuZGVyZXIiKTt2YXIgbGFTPW5ldyBnLnFNKCJwYWlkQ29udGVudE92ZXJsYXlSZW5kZXJlciIpO3ZhciBLSTE9bmV3IGcucU0oInBsYXllck11dGVkQXV0b3BsYXlPdmVybGF5UmVuZGVyZXIiKSxPVng9bmV3IGcucU0oInBsYXllck11dGVkQXV0b3BsYXlFbmRTY3JlZW5SZW5kZXJlciIpO3ZhciBJb2I9bmV3IGcucU0oInVuc2VyaWFsaXplZFBsYXllclJlc3BvbnNlIiksRHo9bmV3IGcucU0oInVuc2VyaWFsaXplZFBsYXllclJlc3BvbnNlIiksYUp3PW5ldyBnLnFNKCJwbGF5ZXJSZXNwb25zZSIpO3ZhciBuWEM9bmV3IGcucU0oInBsYXlsaXN0RWRpdEVuZHBvaW50Iik7dmFyIFd1Wj1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBUZT1uZXcgZy5xTSgicmVlbFdhdGNoRW5kcG9pbnQiKTt2YXIgRCRyPW5ldyBnLnFNKCJyZWVsSXRlbVdhdGNoUmVzcG9uc2UiKTtnLllIPW5ldyBnLnFNKCJidXR0b25SZW5kZXJlciIpO2cuSEM9bmV3IGcucU0oInRvZ2dsZUJ1dHRvblJlbmRlcmVyIik7Zy5jUT1uZXcgZy5xTSgiY291bnRlcmZhY3R1YWxSZW5kZXJlciIpO3ZhciBiTXI9bmV3IGcucU0oInJlc29sdmVVcmxDb21tYW5kTWV0YWRhdGEiKTt2YXIgdlhqPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIGtpdz1uZXcgZy5xTSgibW9kaWZ5Q2hhbm5lbE5vdGlmaWNhdGlvblByZWZlcmVuY2VFbmRwb2ludCIpO3ZhciBoblU9bmV3IGcucU0oInVuc3Vic2NyaWJlRW5kcG9pbnQiKTt2YXIgeCRaPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIE5oMT1uZXcgZy5xTSgic3Vic2NyaWJlQnV0dG9uUmVuZGVyZXIiKTt2YXIgTHUxPW5ldyBnLnFNKCJzdWJzY3JpYmVFbmRwb2ludCIpO3ZhciBlbmk9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgZ1hVPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIFhSUz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBxTlo9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgR2lNPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIHRHdD1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciAkJDI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgck0xPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIHNkaT1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBOeTE9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgcFJ0PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIFZDMj1uZXcgZy5xTSgicXJDb2RlUmVuZGVyZXIiKTt2YXIgWU5aPXtkajoiTElWSU5HX1JPT01fQVBQX01PREVfVU5TUEVDSUZJRUQiLHdqOiJMSVZJTkdfUk9PTV9BUFBfTU9ERV9NQUlOIixBXzoiTElWSU5HX1JPT01fQVBQX01PREVfS0lEUyIsQ1E6IkxJVklOR19ST09NX0FQUF9NT0RFX01VU0lDIixvTzoiTElWSU5HX1JPT01fQVBQX01PREVfVU5QTFVHR0VEIixJTzoiTElWSU5HX1JPT01fQVBQX01PREVfR0FNSU5HIn07dmFyIEhNdD1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBmTzI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgSk0yPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIGJXWj1uZXcgZy5xTSgiYXV0b3BsYXlTd2l0Y2hCdXR0b25SZW5kZXJlciIpO3ZhciB2cXQ9bmV3IGcucU0oImRlc2t0b3BPdmVybGF5Q29uZmlnUmVuZGVyZXIiKTt2YXIgYzNoPW5ldyBnLnFNKCJlbmdhZ2VtZW50UGFuZWxTZWN0aW9uTGlzdFJlbmRlcmVyIik7dmFyIFdHaT1uZXcgZy5xTSgicGxheWxpc3RQYW5lbFJlbmRlcmVyIik7dmFyIElPdz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBTTng9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgQU14PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIG0kUz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBLdWo9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgT01qPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIFA4dz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBaTWo9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgcFlaPW5ldyBnLnFNKCJjaXBoZXIiKTt2YXIgU2xNPW5ldyBnLnFNKCJwbGF5ZXJWYXJzIik7dmFyIGR2aT1uZXcgZy5xTSgicGxheWVyVmFycyIpO3ZhciBVJFU9Zy5xaS53aW5kb3csSUU9VSRVPy55dD8uY29uZmlnX3x8VSRVPy55dGNmZz8uZGF0YV98fHt9O2cuR2IoInl0LmNvbmZpZ18iLElFKTt2YXIgS3c9W107dmFyIGR4aT0vXltcdy5dKiQvLG9LaT17cTohMCxzZWFyY2hfcXVlcnk6ITB9LHVRaD1TdHJpbmcoeUYpO2cuUkU9bmV3IGNsYXNze2NvbnN0cnVjdG9yKG4sVyl7dGhpcy5OPW47dGhpcy5KPVd9fSh3aW5kb3csd2luZG93LmRvY3VtZW50KTtnLkdiKCJ5dC5hZHNfLnNpZ25hbHNfLmdldEFkU2lnbmFsc1N0cmluZyIsZnVuY3Rpb24obil7cmV0dXJuIGcuRXQoZy5RRihuKSl9KTtnLlV3KCk7dmFyIFZGPSJYTUxIdHRwUmVxdWVzdCJpbiBnLnFpPygpPT5uZXcgWE1MSHR0cFJlcXVlc3Q6bnVsbDt2YXIgeU1TPSJhYnNvbHV0ZV9leHBlcmltZW50cyBjbGllbnRfZGV2X2RvbWFpbiBjbGllbnRfZGV2X2V4cGZsYWcgY2xpZW50X2Rldl9yZWdleF9tYXAgY2xpZW50X2Rldl9yb290X3VybCBjbGllbnRfcm9sbG91dF9vdmVycmlkZSBleHBmbGFnIGZvcmNlZENhcGFiaWxpdHkganNmZWF0IGpzbW9kZSBtb2RzIHRoZW1lIi5zcGxpdCgiICIpO1suLi55TVNdO3ZhciBMJD17QXV0aG9yaXphdGlvbjoiQVVUSE9SSVpBVElPTiIsIlgtR29vZy1FT00tVmlzaXRvci1JZCI6IkVPTV9WSVNJVE9SX0RBVEEiLCJYLUdvb2ctVmlzaXRvci1JZCI6IlNBTkRCT1hFRF9WSVNJVE9SX0lEIiwiWC1Zb3V0dWJlLURvbWFpbi1BZG1pbi1TdGF0ZSI6IkRPTUFJTl9BRE1JTl9TVEFURSIsIlgtWW91dHViZS1DaHJvbWUtQ29ubmVjdGVkIjoiQ0hST01FX0NPTk5FQ1RFRF9IRUFERVIiLCJYLVlvdVR1YmUtQ2xpZW50LU5hbWUiOiJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsIlgtWW91VHViZS1DbGllbnQtVmVyc2lvbiI6IklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9WRVJTSU9OIiwiWC1Zb3VUdWJlLURlbGVnYXRpb24tQ29udGV4dCI6IklOTkVSVFVCRV9DT05URVhUX1NFUklBTElaRURfREVMRUdBVElPTl9DT05URVhUIiwiWC1Zb3VUdWJlLURldmljZSI6IkRFVklDRSIsIlgtWW91dHViZS1JZGVudGl0eS1Ub2tlbiI6IklEX1RPS0VOIiwiWC1Zb3VUdWJlLVBhZ2UtQ0wiOiJQQUdFX0NMIiwKIlgtWW91VHViZS1QYWdlLUxhYmVsIjoiUEFHRV9CVUlMRF9MQUJFTCIsIlgtR29vZy1BdXRoVXNlciI6IlNFU1NJT05fSU5ERVgiLCJYLUdvb2ctUGFnZUlkIjoiREVMRUdBVEVEX1NFU1NJT05fSUQifSxWdWI9WyJhcHAiLCJkZWJ1Z2NzcyIsImRlYnVnanMiLCJleHBmbGFnIiwiZm9yY2VfYWRfcGFyYW1zIiwiZm9yY2VfYWRfZW5jcnlwdGVkIiwiZm9yY2VfdmlyYWxfYWRfcmVzcG9uc2VfcGFyYW1zIiwiZm9yY2VkX2V4cGVyaW1lbnRzIiwiaW5uZXJ0dWJlX3NuYXBzaG90cyIsImlubmVydHViZV9nb2xkZW5zIiwiaW50ZXJuYWxjb3VudHJ5Y29kZSIsImludGVybmFsaXBvdmVycmlkZSIsImFic29sdXRlX2V4cGVyaW1lbnRzIiwiY29uZGl0aW9uYWxfZXhwZXJpbWVudHMiLCJzYmIiLCJzcl9ibnNfYWRkcmVzcyIsLi4ueU1TXSxHUT0hMSxGeDE9eFQ7dmFyIGM0VTtnLiRUPWNsYXNzIGV4dGVuZHMgZy5UYntjb25zdHJ1Y3RvcihuLFcsRCl7c3VwZXIoYCR7bn0sIGVycm9yQ29kZT0ke1d9YCk7dGhpcy5lcnJvckNvZGU9Vzt0aGlzLnhocj1EO3RoaXMubmFtZT0iUHJvbWlzZUFqYXhFcnJvciJ9fTtjNFU9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy54aHI9bn19O3ZhciBOWD1jbGFzc3tjb25zdHJ1Y3RvcihuPW51bGwpe3RoaXMuTj1uO3RoaXMuVz0wO3RoaXMuSj1udWxsfXRoZW4obixXLEQpe3JldHVybiB0aGlzLk4/dGhpcy5OLnRoZW4obixXLEQpOnRoaXMuVz09PTEmJm4/KG49bi5jYWxsKEQsdGhpcy5KKSkmJnR5cGVvZiBuLnRoZW49PT0iZnVuY3Rpb24iP246Zy5IMChuKTp0aGlzLlc9PT0yJiZXPyhuPVcuY2FsbChELHRoaXMuSikpJiZ0eXBlb2Ygbi50aGVuPT09ImZ1bmN0aW9uIj9uOmcucCQobik6dGhpc31nZXRWYWx1ZSgpe3JldHVybiB0aGlzLkp9fTtOWC5wcm90b3R5cGUuJGdvb2dfVGhlbmFibGU9ITA7dmFyIGYkPSExO2cuTUw9dzh8fE1YO3ZhciBXMDE9L14oWzAtOVwuXSspOihbMC05XC5dKykkLzt2YXIgWGs9e307dmFyIEVYaD0wLHEwPWcuWmw/IndlYmtpdCI6Zy5lUz8ibW96IjpnLmtoPyJtcyI6cmM/Im8iOiIiLGlNeD1nLnJyKCJ5dERvbURvbUdldE5leHRJZCIpfHwoKCk9PisrRVhoKTsKZy5HYigieXREb21Eb21HZXROZXh0SWQiLGlNeCk7dmFyIHVaYj17c3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uOjEsc3RvcFByb3BhZ2F0aW9uOjEscHJldmVudE1vdXNlRXZlbnQ6MSxwcmV2ZW50TWFuaXB1bGF0aW9uOjEscHJldmVudERlZmF1bHQ6MSxsYXllclg6MSxsYXllclk6MSxzY3JlZW5YOjEsc2NyZWVuWToxLHNjYWxlOjEscm90YXRpb246MSx3ZWJraXRNb3ZlbWVudFg6MSx3ZWJraXRNb3ZlbWVudFk6MX0sZnk9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy50eXBlPSIiO3RoaXMuc3RhdGU9dGhpcy5zb3VyY2U9dGhpcy5kYXRhPXRoaXMuY3VycmVudFRhcmdldD10aGlzLnJlbGF0ZWRUYXJnZXQ9dGhpcy50YXJnZXQ9bnVsbDt0aGlzLmNoYXJDb2RlPXRoaXMua2V5Q29kZT0wO3RoaXMubWV0YUtleT10aGlzLnNoaWZ0S2V5PXRoaXMuY3RybEtleT10aGlzLmFsdEtleT0hMTt0aGlzLnJvdGF0aW9uPXRoaXMuY2xpZW50WT10aGlzLmNsaWVudFg9MDt0aGlzLnNjYWxlPTE7dGhpcy5jaGFuZ2VkVG91Y2hlcz10aGlzLnRvdWNoZXM9Cm51bGw7dHJ5e2lmKG49bnx8d2luZG93LmV2ZW50KXt0aGlzLmV2ZW50PW47Zm9yKGxldCBiIGluIG4pYiBpbiB1WmJ8fCh0aGlzW2JdPW5bYl0pO3RoaXMuc2NhbGU9bi5zY2FsZTt0aGlzLnJvdGF0aW9uPW4ucm90YXRpb247dmFyIFc9bi50YXJnZXR8fG4uc3JjRWxlbWVudDtXJiZXLm5vZGVUeXBlPT0zJiYoVz1XLnBhcmVudE5vZGUpO3RoaXMudGFyZ2V0PVc7dmFyIEQ9bi5yZWxhdGVkVGFyZ2V0O2lmKEQpdHJ5e0Q9RC5ub2RlTmFtZT9EOm51bGx9Y2F0Y2goYil7RD1udWxsfWVsc2UgdGhpcy50eXBlPT0ibW91c2VvdmVyIj9EPW4uZnJvbUVsZW1lbnQ6dGhpcy50eXBlPT0ibW91c2VvdXQiJiYoRD1uLnRvRWxlbWVudCk7dGhpcy5yZWxhdGVkVGFyZ2V0PUQ7dGhpcy5jbGllbnRYPW4uY2xpZW50WCE9dm9pZCAwP24uY2xpZW50WDpuLnBhZ2VYO3RoaXMuY2xpZW50WT1uLmNsaWVudFkhPXZvaWQgMD9uLmNsaWVudFk6bi5wYWdlWTt0aGlzLmtleUNvZGU9bi5rZXlDb2RlP24ua2V5Q29kZToKbi53aGljaDt0aGlzLmNoYXJDb2RlPW4uY2hhckNvZGV8fCh0aGlzLnR5cGU9PSJrZXlwcmVzcyI/dGhpcy5rZXlDb2RlOjApO3RoaXMuYWx0S2V5PW4uYWx0S2V5O3RoaXMuY3RybEtleT1uLmN0cmxLZXk7dGhpcy5zaGlmdEtleT1uLnNoaWZ0S2V5O3RoaXMubWV0YUtleT1uLm1ldGFLZXk7dGhpcy5OPW4ucGFnZVg7dGhpcy5KPW4ucGFnZVl9fWNhdGNoKGIpe319cHJldmVudERlZmF1bHQoKXt0aGlzLmV2ZW50JiYodGhpcy5ldmVudC5yZXR1cm5WYWx1ZT0hMSx0aGlzLmV2ZW50LnByZXZlbnREZWZhdWx0JiZ0aGlzLmV2ZW50LnByZXZlbnREZWZhdWx0KCkpfXN0b3BQcm9wYWdhdGlvbigpe3RoaXMuZXZlbnQmJih0aGlzLmV2ZW50LmNhbmNlbEJ1YmJsZT0hMCx0aGlzLmV2ZW50LnN0b3BQcm9wYWdhdGlvbiYmdGhpcy5ldmVudC5zdG9wUHJvcGFnYXRpb24oKSl9c3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCl7dGhpcy5ldmVudCYmKHRoaXMuZXZlbnQuY2FuY2VsQnViYmxlPSEwLAp0aGlzLmV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbiYmdGhpcy5ldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSl9fTtnLllSPWcucWkueXRFdmVudHNFdmVudHNMaXN0ZW5lcnN8fHt9O2cuR2IoInl0RXZlbnRzRXZlbnRzTGlzdGVuZXJzIixnLllSKTt2YXIgSEI9Zy5xaS55dEV2ZW50c0V2ZW50c0NvdW50ZXJ8fHtjb3VudDowfTtnLkdiKCJ5dEV2ZW50c0V2ZW50c0NvdW50ZXIiLEhCKTt2YXIgb1hoPWcud0QoZnVuY3Rpb24oKXt2YXIgbj0hMTt0cnl7bGV0IFc9T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7bj0hMH19KTsKd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLG51bGwsVyl9Y2F0Y2goVyl7fXJldHVybiBufSksSk89Zy53RChmdW5jdGlvbigpe3ZhciBuPSExOwp0cnl7bGV0IFc9T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJjYXB0dXJlIix7Z2V0OmZ1bmN0aW9uKCl7bj0hMH19KTsKd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLG51bGwsVyl9Y2F0Y2goVyl7fXJldHVybiBufSk7dmFyIGZqO2ZqPXdpbmRvdztnLlI9ZmoueXRjc2kmJmZqLnl0Y3NpLm5vdz9mai55dGNzaS5ub3c6ZmoucGVyZm9ybWFuY2UmJmZqLnBlcmZvcm1hbmNlLnRpbWluZyYmZmoucGVyZm9ybWFuY2Uubm93JiZmai5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0PygpPT5mai5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0K2ZqLnBlcmZvcm1hbmNlLm5vdygpOigpPT4obmV3IERhdGUpLmdldFRpbWUoKTtnLml4KG1ZLGcuRk0pO21ZLnByb3RvdHlwZS5EPWZ1bmN0aW9uKG4pe24uTj09PXZvaWQgMCYmcHkobik7dmFyIFc9bi5OO24uSj09PXZvaWQgMCYmcHkobik7dGhpcy5OPW5ldyBnLk1ZKFcsbi5KKX07Cm1ZLnByb3RvdHlwZS5FdT1mdW5jdGlvbigpe3JldHVybiB0aGlzLk58fG5ldyBnLk1ZfTsKbVkucHJvdG90eXBlLk89ZnVuY3Rpb24oKXtpZih0aGlzLk4pe3ZhciBuPSgwLGcuUikoKTtpZih0aGlzLlghPTApe3ZhciBXPXRoaXMuVixEPXRoaXMuTixiPVcueC1ELng7Vz1XLnktRC55O2I9TWF0aC5zcXJ0KGIqYitXKlcpLyhuLXRoaXMuWCk7dGhpcy5KW3RoaXMuV109TWF0aC5hYnMoKGItdGhpcy5qKS90aGlzLmopPi41PzE6MDtXPTA7Zm9yKEQ9MDtEPDQ7RCsrKVcrPXRoaXMuSltEXXx8MDtXPj0zJiZ0aGlzLksoKTt0aGlzLmo9Yn10aGlzLlg9bjt0aGlzLlY9dGhpcy5OO3RoaXMuVz0odGhpcy5XKzEpJTR9fTsKbVkucHJvdG90eXBlLm1BPWZ1bmN0aW9uKCl7RHIodGhpcy5ZKTtnLlNfKHRoaXMuY0opfTtnLkpMPWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMuVz1bXTt0aGlzLks9bnx8dGhpc31OTihuLFcsRCxiLHYpe0Q9UFYoKDAsZy5LdCkoRCxifHx0aGlzLkspKTtEPXt0YXJnZXQ6bixuYW1lOlcsY2FsbGJhY2s6RH07dmFyIGs7diYmb1hoKCkmJihrPXtwYXNzaXZlOiEwfSk7bi5hZGRFdmVudExpc3RlbmVyKFcsRC5jYWxsYmFjayxrKTt0aGlzLlcucHVzaChEKTtyZXR1cm4gRH13SChuKXtmb3IobGV0IFc9MDtXPHRoaXMuVy5sZW5ndGg7VysrKWlmKHRoaXMuV1tXXT09bil7dGhpcy5XLnNwbGljZShXLDEpO24udGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIobi5uYW1lLG4uY2FsbGJhY2spO2JyZWFrfX1KKG4pe2Zvcig7dGhpcy5XLmxlbmd0aDspe2xldCBXPXRoaXMuVy5wb3AoKSxEO24mJm9YaCgpJiYoRD17cGFzc2l2ZTohMH0pO1cudGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoVy5uYW1lLFcuY2FsbGJhY2ssRCl9fW1BKCl7dGhpcy5KKCk7CnN1cGVyLm1BKCl9fTt2YXIgd1laPVsiYXR0L2dldCJdLGRRWj1bImVtYmVkZGVkX3BsYXllciJdLGQkUz1bInNoYXJlL2dldF9zaGFyZV9wYW5lbCJdLHpudD1bInNoYXJlL2dldF93ZWJfcGxheWVyX3NoYXJlX3BhbmVsIl0sbE9NPVsiZmVlZGJhY2siXSxUeXc9WyJub3RpZmljYXRpb24vbW9kaWZ5X2NoYW5uZWxfcHJlZmVyZW5jZSJdLHF5aj1bInBsYXllciJdLGpkeD1bImJyb3dzZS9lZGl0X3BsYXlsaXN0Il0sc3YyPVsicmVlbC9yZWVsX2l0ZW1fd2F0Y2giXSxONGg9WyJuYXZpZ2F0aW9uL3Jlc29sdmVfdXJsIl0sQ0diPVsiYWNjb3VudC9zZXRfc2V0dGluZyJdLEM4Yj1bInN1YnNjcmlwdGlvbi9zdWJzY3JpYmUiXSxCeWk9WyJzdWJzY3JpcHRpb24vdW5zdWJzY3JpYmUiXSwkMUM9WyJuZXh0IiwidW5wbHVnZ2VkL3dhdGNoX25leHQiXTt2YXIgT1A9e0JwOmcud0QoZnVuY3Rpb24oKXt0cnl7bGV0IFc9bmV3IFdTO3ZhciBuPVcuaXNBdmFpbGFibGUoKT9XOm51bGx9Y2F0Y2goVyl7cmV0dXJuIG51bGx9cmV0dXJuIG4/bmV3IFZLKG4pOm51bGx9KSwKcWI6Zy53RChmdW5jdGlvbigpe3ZhciBuPW5ldyBEUTtyZXR1cm4gbi5pc0F2YWlsYWJsZSgpP25ldyBWSyhuKTpudWxsfSl9O2cuSVY9d2luZG93Lnl0JiZ3aW5kb3cueXQubXNnc198fHdpbmRvdy55dGNmZyYmd2luZG93Lnl0Y2ZnLm1zZ3N8fHt9O2cuR2IoInl0Lm1zZ3NfIixnLklWKTt2YXIgV2I9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5KPXZvaWQgMDt0aGlzLk49ITE7bi5hZGRFdmVudExpc3RlbmVyKCJiZWZvcmVpbnN0YWxscHJvbXB0IixXPT57Vy5wcmV2ZW50RGVmYXVsdCgpO3RoaXMuSj1XfSk7Cm4uYWRkRXZlbnRMaXN0ZW5lcigiYXBwaW5zdGFsbGVkIiwoKT0+e3RoaXMuTj0hMH0se29uY2U6ITB9KX19O3ZhciBFUD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuc0I9ITB9YWoobixXKXtuPXt9O3ZhciBEPVtdOyJVU0VSX1NFU1NJT05fSUQiaW4gSUUmJkQucHVzaCh7a2V5OiJ1Iix2YWx1ZTpnLkFyKCJVU0VSX1NFU1NJT05fSUQiKX0pO2lmKEQ9Qk8oRCkpbi5BdXRob3JpemF0aW9uPUQsRD1XPVc/LnNlc3Npb25JbmRleCxEPT09dm9pZCAwJiYoRD1OdW1iZXIoZy5BcigiU0VTU0lPTl9JTkRFWCIsMCkpLEQ9aXNOYU4oRCk/MDpEKSxnLmwoInZvaWNlX3NlYXJjaF9hdXRoX2hlYWRlcl9yZW1vdmFsIil8fChuWyJYLUdvb2ctQXV0aFVzZXIiXT1ELnRvU3RyaW5nKCkpLCJJTk5FUlRVQkVfSE9TVF9PVkVSUklERSJpbiBJRXx8KG5bIlgtT3JpZ2luIl09d2luZG93LmxvY2F0aW9uLm9yaWdpbiksVz09PXZvaWQgMCYmIkRFTEVHQVRFRF9TRVNTSU9OX0lEImluIElFJiYoblsiWC1Hb29nLVBhZ2VJZCJdPWcuQXIoIkRFTEVHQVRFRF9TRVNTSU9OX0lEIikpO3JldHVybiBufX07dmFyIHU5PXtpZGVudGl0eVR5cGU6IlVOQVVUSEVOVElDQVRFRF9JREVOVElUWV9UWVBFX1VOS05PV04ifTt2YXIgbE89Zy5ycigieXRnbG9iYWwucHJlZnNVc2VyUHJlZnNQcmVmc18iKXx8e307Zy5HYigieXRnbG9iYWwucHJlZnNVc2VyUHJlZnNQcmVmc18iLGxPKTsKdmFyIHgzYj1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuTj1nLkFyKCJBTFRfUFJFRl9DT09LSUVfTkFNRSIsIlBSRUYiKTt0aGlzLko9Zy5BcigiQUxUX1BSRUZfQ09PS0lFX0RPTUFJTiIsInlvdXR1YmUuY29tIik7dmFyIG49Zy5TZCh0aGlzLk4pO24mJnRoaXMucGFyc2Uobil9Z2V0KG4sVyl7ejEobik7ZEoobik7bj1sT1tuXSE9PXZvaWQgMD9sT1tuXS50b1N0cmluZygpOm51bGw7cmV0dXJuIG4hPW51bGw/bjpXP1c6IiJ9c2V0KG4sVyl7ejEobik7ZEoobik7aWYoVz09bnVsbCl0aHJvdyBFcnJvcigiRXhwZWN0ZWROb3ROdWxsIik7bE9bbl09Vy50b1N0cmluZygpfVFRKG4pe3JldHVybiEhKChUMShgZiR7TWF0aC5mbG9vcihuLzMxKSsxfWApfHwwKSYxPDxuJTMxKX1yZW1vdmUobil7ejEobik7ZEoobik7ZGVsZXRlIGxPW25dfXNhdmUoKXtJSyh0aGlzLk4sdGhpcy5kdW1wKCksNjMwNzJFMyx0aGlzLkosITApfWNsZWFyKCl7Zy50SyhsTyl9ZHVtcCgpe3ZhciBuPVtdO2ZvcihsZXQgVyBpbiBsTylsTy5oYXNPd25Qcm9wZXJ0eShXKSYmCm4ucHVzaChgJHtXfT1gK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcobE9bV10pKSk7cmV0dXJuIG4uam9pbigiJiIpfXBhcnNlKG4pe249ZGVjb2RlVVJJQ29tcG9uZW50KG4pLnNwbGl0KCImIik7Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKyspe3ZhciBXPW5bRF0uc3BsaXQoIj0iKTtsZXQgYj1XWzBdOyhXPVdbMV0pJiYobE9bYl09Vy50b1N0cmluZygpKX19fSx1Tzt2YXIgQ3k9e2JsdWV0b290aDoiQ09OTl9ESVNDTyIsY2VsbHVsYXI6IkNPTk5fQ0VMTFVMQVJfVU5LTk9XTiIsZXRoZXJuZXQ6IkNPTk5fV0lGSSIsbm9uZToiQ09OTl9OT05FIix3aWZpOiJDT05OX1dJRkkiLHdpbWF4OiJDT05OX0NFTExVTEFSXzRHIixvdGhlcjoiQ09OTl9VTktOT1dOIix1bmtub3duOiJDT05OX1VOS05PV04iLCJzbG93LTJnIjoiQ09OTl9DRUxMVUxBUl8yRyIsIjJnIjoiQ09OTl9DRUxMVUxBUl8yRyIsIjNnIjoiQ09OTl9DRUxMVUxBUl8zRyIsIjRnIjoiQ09OTl9DRUxMVUxBUl80RyJ9LHpxdz17Q09OTl9ERUZBVUxUOjAsQ09OTl9VTktOT1dOOjEsQ09OTl9OT05FOjIsQ09OTl9XSUZJOjMsQ09OTl9DRUxMVUxBUl8yRzo0LENPTk5fQ0VMTFVMQVJfM0c6NSxDT05OX0NFTExVTEFSXzRHOjYsQ09OTl9DRUxMVUxBUl9VTktOT1dOOjcsQ09OTl9ESVNDTzo4LENPTk5fQ0VMTFVMQVJfNUc6OSxDT05OX1dJRklfTUVURVJFRDoxMCxDT05OX0NFTExVTEFSXzVHX1NBOjExLApDT05OX0NFTExVTEFSXzVHX05TQToxMixDT05OX1dJUkVEOjMwLENPTk5fSU5WQUxJRDozMX0sbEJyPXtFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFX1VOS05PV046MCxFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFX09GRkxJTkU6MSxFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFX1NMT1dfMkc6MixFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFXzJHOjMsRUZGRUNUSVZFX0NPTk5FQ1RJT05fVFlQRV8zRzo0LEVGRkVDVElWRV9DT05ORUNUSU9OX1RZUEVfNEc6NX0sRms9eyJzbG93LTJnIjoiRUZGRUNUSVZFX0NPTk5FQ1RJT05fVFlQRV9TTE9XXzJHIiwiMmciOiJFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFXzJHIiwiM2ciOiJFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFXzNHIiwiNGciOiJFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFXzRHIn07Zy5ReD1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKG4sLi4uVyl7c3VwZXIobik7dGhpcy5hcmdzPVsuLi5XXTtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxuZXcudGFyZ2V0LnByb3RvdHlwZSl9fTt2YXIgRnVNPWNsYXNze0xTKG4sVyl7cmV0dXJuIGcuVngoMCxuLDEsVyl9fTtnLnJyKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UudGltZXJJZE1hcF8iKTt2YXIgV049Y2xhc3MgZXh0ZW5kcyBGdU17c08obil7aWYobj09PXZvaWQgMHx8IU51bWJlci5pc05hTihOdW1iZXIobikpKXt2YXIgVz1nLnJyKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuY2FuY2VsSm9iIik7Vz9XKG4pOndpbmRvdy5jbGVhclRpbWVvdXQobil9fXN0YXJ0KCl7dmFyIG49Zy5ycigieXQuc2NoZWR1bGVyLmluc3RhbmNlLnN0YXJ0Iik7biYmbigpfXBhdXNlKCl7dmFyIG49Zy5ycigieXQuc2NoZWR1bGVyLmluc3RhbmNlLnBhdXNlIik7biYmbigpfX0sdGE9Zy5EeSgpO3ZhciB0ST1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49KG49Zy52UyhuKSk/bmV3IFFLKG4pOm51bGw7dGhpcy5XPWRvY3VtZW50LmRvbWFpbnx8d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lfUooKXtyZXR1cm4hIXRoaXMuTn1zZXQobixXLEQsYil7RD1EfHwzMTEwNEUzO3RoaXMucmVtb3ZlKG4pO2lmKHRoaXMuSigpKXRyeXt0aGlzLk4uc2V0KG4sVyxEYXRlLm5vdygpK0QqMUUzKTtyZXR1cm59Y2F0Y2goayl7fXZhciB2PSIiO2lmKGIpdHJ5e3Y9ZXNjYXBlKChuZXcgbGUpLmJZKFcpKX1jYXRjaChrKXtyZXR1cm59ZWxzZSB2PWVzY2FwZShXKTtJSyhuLHYsRCx0aGlzLlcpfWdldChuLFcpe3ZhciBEPXZvaWQgMCxiPSF0aGlzLkooKTtpZighYil0cnl7RD10aGlzLk4uZ2V0KG4pfWNhdGNoKHYpe2I9ITB9aWYoYiYmKEQ9Zy5TZChuKSkmJihEPXVuZXNjYXBlKEQpLFcpKXRyeXtEPUpTT04ucGFyc2UoRCl9Y2F0Y2godil7dGhpcy5yZW1vdmUobiksRD12b2lkIDB9cmV0dXJuIER9cmVtb3ZlKG4pe3RoaXMuSigpJiYKdGhpcy5OLnJlbW92ZShuKTtBeShuLCIvIix0aGlzLlcpfX07dmFyIHZOPSgoKT0+e3ZhciBuO3JldHVybigpPT57bnx8KG49bmV3IHRJKCJ5dGlkYiIpKTtyZXR1cm4gbn19KSgpO3ZhciB4dT1bXSxoYz0hMTt2YXIgd1JNPXtBVVRIX0lOVkFMSUQ6Ik5vIHVzZXIgaWRlbnRpZmllciBzcGVjaWZpZWQuIixFWFBMSUNJVF9BQk9SVDoiVHJhbnNhY3Rpb24gd2FzIGV4cGxpY2l0bHkgYWJvcnRlZC4iLElEQl9OT1RfU1VQUE9SVEVEOiJJbmRleGVkREIgaXMgbm90IHN1cHBvcnRlZC4iLE1JU1NJTkdfSU5ERVg6IkluZGV4IG5vdCBjcmVhdGVkLiIsTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiJPYmplY3Qgc3RvcmVzIG5vdCBjcmVhdGVkLiIsREJfREVMRVRFRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVM6IkRhdGFiYXNlIGlzIGRlbGV0ZWQgYmVjYXVzZSBleHBlY3RlZCBvYmplY3Qgc3RvcmVzIHdlcmUgbm90IGNyZWF0ZWQuIixEQl9SRU9QRU5FRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVM6IkRhdGFiYXNlIGlzIHJlb3BlbmVkIGJlY2F1c2UgZXhwZWN0ZWQgb2JqZWN0IHN0b3JlcyB3ZXJlIG5vdCBjcmVhdGVkLiIsVU5LTk9XTl9BQk9SVDoiVHJhbnNhY3Rpb24gd2FzIGFib3J0ZWQgZm9yIHVua25vd24gcmVhc29ucy4iLApRVU9UQV9FWENFRURFRDoiVGhlIGN1cnJlbnQgdHJhbnNhY3Rpb24gZXhjZWVkZWQgaXRzIHF1b3RhIGxpbWl0YXRpb25zLiIsUVVPVEFfTUFZQkVfRVhDRUVERUQ6IlRoZSBjdXJyZW50IHRyYW5zYWN0aW9uIG1heSBoYXZlIGZhaWxlZCBiZWNhdXNlIG9mIGV4Y2VlZGluZyBxdW90YSBsaW1pdGF0aW9ucy4iLEVYRUNVVEVfVFJBTlNBQ1RJT05fT05fQ0xPU0VEX0RCOiJDYW4ndCBzdGFydCBhIHRyYW5zYWN0aW9uIG9uIGEgY2xvc2VkIGRhdGFiYXNlIixJTkNPTVBBVElCTEVfREJfVkVSU0lPTjoiVGhlIGJpbmFyeSBpcyBpbmNvbXBhdGlibGUgd2l0aCB0aGUgZGF0YWJhc2UgdmVyc2lvbiJ9LE1HUz17QVVUSF9JTlZBTElEOiJFUlJPUiIsRVhFQ1VURV9UUkFOU0FDVElPTl9PTl9DTE9TRURfREI6IldBUk5JTkciLEVYUExJQ0lUX0FCT1JUOiJJR05PUkVEIixJREJfTk9UX1NVUFBPUlRFRDoiRVJST1IiLE1JU1NJTkdfSU5ERVg6IldBUk5JTkciLE1JU1NJTkdfT0JKRUNUX1NUT1JFUzoiRVJST1IiLApEQl9ERUxFVEVEX0JZX01JU1NJTkdfT0JKRUNUX1NUT1JFUzoiV0FSTklORyIsREJfUkVPUEVORURfQllfTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiJXQVJOSU5HIixRVU9UQV9FWENFRURFRDoiV0FSTklORyIsUVVPVEFfTUFZQkVfRVhDRUVERUQ6IldBUk5JTkciLFVOS05PV05fQUJPUlQ6IldBUk5JTkciLElOQ09NUEFUSUJMRV9EQl9WRVJTSU9OOiJXQVJOSU5HIn0sUm5pPXtBVVRIX0lOVkFMSUQ6ITEsRVhFQ1VURV9UUkFOU0FDVElPTl9PTl9DTE9TRURfREI6ITEsRVhQTElDSVRfQUJPUlQ6ITEsSURCX05PVF9TVVBQT1JURUQ6ITEsTUlTU0lOR19JTkRFWDohMSxNSVNTSU5HX09CSkVDVF9TVE9SRVM6ITEsREJfREVMRVRFRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVM6ITEsREJfUkVPUEVORURfQllfTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiExLFFVT1RBX0VYQ0VFREVEOiExLFFVT1RBX01BWUJFX0VYQ0VFREVEOiEwLFVOS05PV05fQUJPUlQ6ITAsSU5DT01QQVRJQkxFX0RCX1ZFUlNJT046ITF9LApxTD1jbGFzcyBleHRlbmRzIGcuUXh7Y29uc3RydWN0b3IobixXPXt9LEQ9d1JNW25dLGI9TUdTW25dLHY9Um5pW25dKXtzdXBlcihELHtuYW1lOiJZdElkYktub3duRXJyb3IiLGlzU3c6c2VsZi5kb2N1bWVudD09PXZvaWQgMCxpc0lmcmFtZTpzZWxmIT09c2VsZi50b3AsdHlwZTpuLC4uLld9KTt0aGlzLnR5cGU9bjt0aGlzLm1lc3NhZ2U9RDt0aGlzLmxldmVsPWI7dGhpcy5OPXY7T2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMscUwucHJvdG90eXBlKX19LFFkUz1jbGFzcyBleHRlbmRzIHFMe2NvbnN0cnVjdG9yKG4sVyl7c3VwZXIoIk1JU1NJTkdfT0JKRUNUX1NUT1JFUyIse2V4cGVjdGVkT2JqZWN0U3RvcmVzOlcsZm91bmRPYmplY3RTdG9yZXM6bn0sd1JNLk1JU1NJTkdfT0JKRUNUX1NUT1JFUyk7T2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsUWRTLnByb3RvdHlwZSl9fSx0Yz1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKG4sVyl7c3VwZXIoKTt0aGlzLmluZGV4PQpuO3RoaXMub2JqZWN0U3RvcmU9VztPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyx0Yy5wcm90b3R5cGUpfX0sTDBpPVsiVGhlIGRhdGFiYXNlIGNvbm5lY3Rpb24gaXMgY2xvc2luZyIsIkNhbid0IHN0YXJ0IGEgdHJhbnNhY3Rpb24gb24gYSBjbG9zZWQgZGF0YWJhc2UiLCJBIG11dGF0aW9uIG9wZXJhdGlvbiB3YXMgYXR0ZW1wdGVkIG9uIGEgZGF0YWJhc2UgdGhhdCBkaWQgbm90IGFsbG93IG11dGF0aW9ucyJdO3ZhciBmRj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn19LHNSPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuc3RhdGU9e3N0YXR1czoiUEVORElORyJ9O3RoaXMuTj1bXTt0aGlzLko9W107bj1uLk47dmFyIFc9Yj0+e2lmKHRoaXMuc3RhdGUuc3RhdHVzPT09IlBFTkRJTkciKXt0aGlzLnN0YXRlPXtzdGF0dXM6IkZVTEZJTExFRCIsdmFsdWU6Yn07Zm9yKGxldCB2IG9mIHRoaXMuTil2KCl9fSxEPWI9PntpZih0aGlzLnN0YXRlLnN0YXR1cz09PSJQRU5ESU5HIil7dGhpcy5zdGF0ZT17c3RhdHVzOiJSRUpFQ1RFRCIsCnJlYXNvbjpifTtmb3IobGV0IHYgb2YgdGhpcy5KKXYoKX19Owp0cnl7bihXLEQpfWNhdGNoKGIpe0QoYil9fXN0YXRpYyBhbGwobil7cmV0dXJuIG5ldyBzUihuZXcgZkYoKFcsRCk9Pnt2YXIgYj1bXSx2PW4ubGVuZ3RoO3Y9PT0wJiZXKGIpO2ZvcihsZXQgaz0wO2s8bi5sZW5ndGg7KytrKXNSLnJlc29sdmUobltrXSkudGhlbihoPT57YltrXT1oO3YtLTt2PT09MCYmVyhiKX0pLmNhdGNoKGg9PntEKGgpfSl9KSl9c3RhdGljIHJlc29sdmUobil7cmV0dXJuIG5ldyBzUihuZXcgZkYoKFcsRCk9PntuIGluc3RhbmNlb2Ygc1I/bi50aGVuKFcsRCk6VyhuKX0pKX1zdGF0aWMgcmVqZWN0KG4pe3JldHVybiBuZXcgc1IobmV3IGZGKChXLEQpPT57RChuKX0pKX10aGVuKG4sVyl7dmFyIEQ9bj8/Z1VyLGI9Vz8/ZXExOwpyZXR1cm4gbmV3IHNSKG5ldyBmRigodixrKT0+e3RoaXMuc3RhdGUuc3RhdHVzPT09IlBFTkRJTkciPyh0aGlzLk4ucHVzaCgoKT0+e3BGKHRoaXMsdGhpcyxELHYsayl9KSx0aGlzLkoucHVzaCgoKT0+e1l1KHRoaXMsdGhpcyxiLHYsayl9KSk6dGhpcy5zdGF0ZS5zdGF0dXM9PT0iRlVMRklMTEVEIj9wRih0aGlzLHRoaXMsRCx2LGspOnRoaXMuc3RhdGUuc3RhdHVzPT09IlJFSkVDVEVEIiYmWXUodGhpcyx0aGlzLGIsdixrKX0pKX1jYXRjaChuKXtyZXR1cm4gdGhpcy50aGVuKHZvaWQgMCxuKX19O3ZhciBxXzI9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLnJlcXVlc3Q9bjt0aGlzLmN1cnNvcj1XfX07dmFyIFlfcj1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuTj1uO3RoaXMub3B0aW9ucz1XO3RoaXMudHJhbnNhY3Rpb25Db3VudD0wO3RoaXMuVz1NYXRoLnJvdW5kKCgwLGcuUikoKSk7dGhpcy5KPSExfWFkZChuLFcsRCl7cmV0dXJuIE9SKHRoaXMsW25dLHttb2RlOiJyZWFkd3JpdGUiLEdROiEwLGNvbW1pdDpBYygpfSxiPT5iLm9iamVjdFN0b3JlKG4pLmFkZChXLEQpKX1jbGVhcihuKXtyZXR1cm4gT1IodGhpcyxbbl0se21vZGU6InJlYWR3cml0ZSIsCkdROiEwfSxXPT5XLm9iamVjdFN0b3JlKG4pLmNsZWFyKCkpfWNsb3NlKCl7dGhpcy5OLmNsb3NlKCk7CnRoaXMub3B0aW9ucz8uY2xvc2VkJiZ0aGlzLm9wdGlvbnMuY2xvc2VkKCl9Y291bnQobixXKXtyZXR1cm4gT1IodGhpcyxbbl0se21vZGU6InJlYWRvbmx5IixHUTohMCxjb21taXQ6QWMoKX0sRD0+RC5vYmplY3RTdG9yZShuKS5jb3VudChXKSl9ZGVsZXRlKG4sVyl7cmV0dXJuIE9SKHRoaXMsW25dLHttb2RlOiJyZWFkd3JpdGUiLApHUTohMCxjb21taXQ6QWMoKSYmIShXIGluc3RhbmNlb2YgSURCS2V5UmFuZ2UpfSxEPT5ELm9iamVjdFN0b3JlKG4pLmRlbGV0ZShXKSl9Z2V0KG4sVyl7cmV0dXJuIE9SKHRoaXMsW25dLHttb2RlOiJyZWFkb25seSIsCkdROiEwLGNvbW1pdDpBYygpfSxEPT5ELm9iamVjdFN0b3JlKG4pLmdldChXKSl9Z2V0QWxsKG4sVyxEKXtyZXR1cm4gT1IodGhpcyxbbl0se21vZGU6InJlYWRvbmx5IiwKR1E6ITB9LGI9PmIub2JqZWN0U3RvcmUobikuZ2V0QWxsKFcsRCkpfXB1dChuLFcsRCl7cmV0dXJuIE9SKHRoaXMsW25dLHttb2RlOiJyZWFkd3JpdGUiLApHUTohMCxjb21taXQ6QWMoKX0sYj0+Yi5vYmplY3RTdG9yZShuKS5wdXQoVyxEKSl9b2JqZWN0U3RvcmVOYW1lcygpe3JldHVybiBBcnJheS5mcm9tKHRoaXMuTi5vYmplY3RTdG9yZU5hbWVzKX1nZXROYW1lKCl7cmV0dXJuIHRoaXMuTi5uYW1lfX0sUE49Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59YWRkKG4sVyl7cmV0dXJuIEpjKHRoaXMuTi5hZGQobixXKSl9YXV0b0luY3JlbWVudCgpe3JldHVybiB0aGlzLk4uYXV0b0luY3JlbWVudH1jbGVhcigpe3JldHVybiBKYyh0aGlzLk4uY2xlYXIoKSkudGhlbigoKT0+e30pfWNvdW50KG4pe3JldHVybiBKYyh0aGlzLk4uY291bnQobikpfWRlbGV0ZShuKXtyZXR1cm4gbiBpbnN0YW5jZW9mIElEQktleVJhbmdlP3RYVSh0aGlzLG4pOkpjKHRoaXMuTi5kZWxldGUobikpfWdldChuKXtyZXR1cm4gSmModGhpcy5OLmdldChuKSl9Z2V0QWxsKG4sVyl7cmV0dXJuImdldEFsbCJpbiBJREJPYmplY3RTdG9yZS5wcm90b3R5cGU/SmModGhpcy5OLmdldEFsbChuLApXKSk6JDN4KHRoaXMsbixXKX1pbmRleChuKXt0cnl7cmV0dXJuIG5ldyBWR2godGhpcy5OLmluZGV4KG4pKX1jYXRjaChXKXtpZihXIGluc3RhbmNlb2YgRXJyb3ImJlcubmFtZT09PSJOb3RGb3VuZEVycm9yIil0aHJvdyBuZXcgdGMobix0aGlzLk4ubmFtZSk7CnRocm93IFc7fX1nZXROYW1lKCl7cmV0dXJuIHRoaXMuTi5uYW1lfWtleVBhdGgoKXtyZXR1cm4gdGhpcy5OLmtleVBhdGh9cHV0KG4sVyl7cmV0dXJuIEpjKHRoaXMuTi5wdXQobixXKSl9fSxtWD1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bjt0aGlzLko9bmV3IE1hcDt0aGlzLmFib3J0ZWQ9ITE7dGhpcy5kb25lPW5ldyBQcm9taXNlKChXLEQpPT57dGhpcy5OLmFkZEV2ZW50TGlzdGVuZXIoImNvbXBsZXRlIiwoKT0+e1coKX0pOwp0aGlzLk4uYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGI9PntiLmN1cnJlbnRUYXJnZXQ9PT1iLnRhcmdldCYmRCh0aGlzLk4uZXJyb3IpfSk7CnRoaXMuTi5hZGRFdmVudExpc3RlbmVyKCJhYm9ydCIsKCk9Pnt2YXIgYj10aGlzLk4uZXJyb3I7aWYoYilEKGIpO2Vsc2UgaWYoIXRoaXMuYWJvcnRlZCl7Yj1xTDt2YXIgdj10aGlzLk4ub2JqZWN0U3RvcmVOYW1lcztsZXQgaz1bXTtmb3IobGV0IGg9MDtoPHYubGVuZ3RoO2grKyl7bGV0IHg9di5pdGVtKGgpO2lmKHg9PT1udWxsKXRocm93IEVycm9yKCJJbnZhcmlhbnQ6IGl0ZW0gaW4gRE9NU3RyaW5nTGlzdCBpcyBudWxsIik7ay5wdXNoKHgpfWI9bmV3IGIoIlVOS05PV05fQUJPUlQiLHtvYmplY3RTdG9yZU5hbWVzOmsuam9pbigpLGRiTmFtZTp0aGlzLk4uZGIubmFtZSxtb2RlOnRoaXMuTi5tb2RlfSk7RChiKX19KX0pfWFib3J0KCl7dGhpcy5OLmFib3J0KCk7CnRoaXMuYWJvcnRlZD0hMDt0aHJvdyBuZXcgcUwoIkVYUExJQ0lUX0FCT1JUIik7fWNvbW1pdCgpe3RoaXMuYWJvcnRlZHx8dGhpcy5OLmNvbW1pdD8uKCl9b2JqZWN0U3RvcmUobil7bj10aGlzLk4ub2JqZWN0U3RvcmUobik7dmFyIFc9dGhpcy5KLmdldChuKTtXfHwoVz1uZXcgUE4obiksdGhpcy5KLnNldChuLFcpKTtyZXR1cm4gV319LFZHaD1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn1jb3VudChuKXtyZXR1cm4gSmModGhpcy5OLmNvdW50KG4pKX1kZWxldGUobil7cmV0dXJuIHpuKHRoaXMse3F1ZXJ5Om59LFc9PlcuZGVsZXRlKCkudGhlbigoKT0+b2coVykpKX1nZXQobil7cmV0dXJuIEpjKHRoaXMuTi5nZXQobikpfWdldEFsbChuLFcpe3JldHVybiJnZXRBbGwiaW4gSURCSW5kZXgucHJvdG90eXBlP0pjKHRoaXMuTi5nZXRBbGwobixXKSk6TlppKHRoaXMsbixXKX1rZXlQYXRoKCl7cmV0dXJuIHRoaXMuTi5rZXlQYXRofXVuaXF1ZSgpe3JldHVybiB0aGlzLk4udW5pcXVlfX0sCnA5eD1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMucmVxdWVzdD1uOwp0aGlzLmN1cnNvcj1XfWRlbGV0ZSgpe3JldHVybiBKYyh0aGlzLmN1cnNvci5kZWxldGUoKSkudGhlbigoKT0+e30pfWdldFZhbHVlKCl7cmV0dXJuIHRoaXMuY3Vyc29yLnZhbHVlfXVwZGF0ZShuKXtyZXR1cm4gSmModGhpcy5jdXJzb3IudXBkYXRlKG4pKX19O3ZhciBjTTE9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLm5hbWU9bjt0aGlzLm9wdGlvbnM9Vzt0aGlzLlc9ITA7dGhpcy5qPXRoaXMuWD0wfUoobixXLEQ9e30pe3JldHVybiBsUShuLFcsRCl9ZGVsZXRlKG49e30pe3JldHVybiBUbih0aGlzLm5hbWUsbil9b3Blbigpe2lmKCF0aGlzLlcpdGhyb3cgakYodGhpcyk7aWYodGhpcy5OKXJldHVybiB0aGlzLk47dmFyIG4sVz0oKT0+e3RoaXMuTj09PW4mJih0aGlzLk49dm9pZCAwKX0sRD17YmxvY2tpbmc6dj0+e3YuY2xvc2UoKX0sCmNsb3NlZDpXLEJ6OlcsdXBncmFkZTp0aGlzLm9wdGlvbnMudXBncmFkZX0sYj1hc3luYygpPT57dmFyIHY9RXJyb3IoKS5zdGFjaz8/IiI7dHJ5e2xldCB4PWF3YWl0IHRoaXMuSih0aGlzLm5hbWUsdGhpcy5vcHRpb25zLnZlcnNpb24sRCk7dmFyIGs9eCxoPXRoaXMub3B0aW9ucztsZXQgTD1bXTtmb3IobGV0IGUgb2YgT2JqZWN0LmtleXMoaC5LYykpe2xldCB7dng6RyxtUjpyPU51bWJlci5NQVhfVkFMVUV9PWguS2NbZV07IShrLk4udmVyc2lvbj49Ryl8fGsuTi52ZXJzaW9uPj1yfHxrLk4ub2JqZWN0U3RvcmVOYW1lcy5jb250YWlucyhlKXx8TC5wdXNoKGUpfWlmKEwubGVuZ3RoIT09MCl7bGV0IGU9T2JqZWN0LmtleXModGhpcy5vcHRpb25zLktjKSxHPXgub2JqZWN0U3RvcmVOYW1lcygpO2lmKHRoaXMuajx2MCgieXRpZGJfcmVvcGVuX2RiX3JldHJpZXMiLDApKXJldHVybiB0aGlzLmorKyx4LmNsb3NlKCksTEYobmV3IHFMKCJEQl9SRU9QRU5FRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVMiLAp7ZGJOYW1lOnRoaXMubmFtZSxleHBlY3RlZE9iamVjdFN0b3JlczplLGZvdW5kT2JqZWN0U3RvcmVzOkd9KSksYigpO2lmKHRoaXMuWDx2MCgieXRpZGJfcmVtYWtlX2RiX3JldHJpZXMiLDEpKXJldHVybiB0aGlzLlgrKyxhd2FpdCB0aGlzLmRlbGV0ZSgpLExGKG5ldyBxTCgiREJfREVMRVRFRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVMiLHtkYk5hbWU6dGhpcy5uYW1lLGV4cGVjdGVkT2JqZWN0U3RvcmVzOmUsZm91bmRPYmplY3RTdG9yZXM6R30pKSxiKCk7dGhyb3cgbmV3IFFkUyhHLGUpO31yZXR1cm4geH1jYXRjaCh4KXtpZih4IGluc3RhbmNlb2YgRE9NRXhjZXB0aW9uP3gubmFtZT09PSJWZXJzaW9uRXJyb3IiOiJET01FcnJvciJpbiBzZWxmJiZ4IGluc3RhbmNlb2YgRE9NRXJyb3I/eC5uYW1lPT09IlZlcnNpb25FcnJvciI6eCBpbnN0YW5jZW9mIE9iamVjdCYmIm1lc3NhZ2UiaW4geCYmeC5tZXNzYWdlPT09IkFuIGF0dGVtcHQgd2FzIG1hZGUgdG8gb3BlbiBhIGRhdGFiYXNlIHVzaW5nIGEgbG93ZXIgdmVyc2lvbiB0aGFuIHRoZSBleGlzdGluZyB2ZXJzaW9uLiIpe3Y9CmF3YWl0IHRoaXMuSih0aGlzLm5hbWUsdm9pZCAwLHsuLi5ELHVwZ3JhZGU6dm9pZCAwfSk7az12Lk4udmVyc2lvbjtpZih0aGlzLm9wdGlvbnMudmVyc2lvbiE9PXZvaWQgMCYmaz50aGlzLm9wdGlvbnMudmVyc2lvbisxKXRocm93IHYuY2xvc2UoKSx0aGlzLlc9ITEsakYodGhpcyxrKTtyZXR1cm4gdn1XKCk7eCBpbnN0YW5jZW9mIEVycm9yJiYhZy5sKCJ5dGlkYl9hc3luY19zdGFja19raWxsc3dpdGNoIikmJih4LnN0YWNrPWAke3guc3RhY2t9XG4ke3Yuc3Vic3RyaW5nKHYuaW5kZXhPZigiXG4iKSsxKX1gKTt0aHJvdyAkdSh4LHRoaXMubmFtZSwiIix0aGlzLm9wdGlvbnMudmVyc2lvbj8/LTEpO319OwpyZXR1cm4gdGhpcy5OPW49YigpfX07dmFyIEJOPW5ldyBjTTEoIll0SWRiTWV0YSIse0tjOntkYXRhYmFzZXM6e3Z4OjF9fSx1cGdyYWRlKG4sVyl7VygxKSYmWnkobiwiZGF0YWJhc2VzIix7a2V5UGF0aDoiYWN0dWFsTmFtZSJ9KX19KTt2YXIgVmMsUWM9bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7fX0obmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7fX0pO25ldyBnLktWO3ZhciBPNXQ9Y2xhc3MgZXh0ZW5kcyBjTTF7Y29uc3RydWN0b3IobixXKXtzdXBlcihuLFcpO3RoaXMub3B0aW9ucz1XO2cwKG4pfUoobixXLEQ9e30pe3JldHVybih0aGlzLm9wdGlvbnMuc2hhcmVkP0FfcjpTX1opKG4sVyx7Li4uRH0pfWRlbGV0ZShuPXt9KXtyZXR1cm4odGhpcy5vcHRpb25zLnNoYXJlZD92ejptM3cpKHRoaXMubmFtZSxuKX19O3ZhciBaNUM9a08oInl0R2NmQ29uZmlnIix7S2M6e2NvbGRDb25maWdTdG9yZTp7dng6MX0saG90Q29uZmlnU3RvcmU6e3Z4OjF9fSxzaGFyZWQ6ITEsdXBncmFkZShuLFcpe1coMSkmJihFUihaeShuLCJob3RDb25maWdTdG9yZSIse2tleVBhdGg6ImtleSIsYXV0b0luY3JlbWVudDohMH0pLCJob3RUaW1lc3RhbXBJbmRleCIsInRpbWVzdGFtcCIpLEVSKFp5KG4sImNvbGRDb25maWdTdG9yZSIse2tleVBhdGg6ImtleSIsYXV0b0luY3JlbWVudDohMH0pLCJjb2xkVGltZXN0YW1wSW5kZXgiLCJ0aW1lc3RhbXAiKSl9LHZlcnNpb246MX0pO3ZhciBhTzE9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKCl7c3VwZXIoKTt0aGlzLko9W107dGhpcy5OPVtdO3ZhciBuPWcucnIoInl0LmdjZi5jb25maWcuaG90VXBkYXRlQ2FsbGJhY2tzIik7bj8odGhpcy5KPVsuLi5uXSx0aGlzLk49bik6KHRoaXMuTj1bXSxnLkdiKCJ5dC5nY2YuY29uZmlnLmhvdFVwZGF0ZUNhbGxiYWNrcyIsdGhpcy5OKSl9bUEoKXtmb3IobGV0IFcgb2YgdGhpcy5KKXt2YXIgbj10aGlzLk47bGV0IEQ9bi5pbmRleE9mKFcpO0Q+PTAmJm4uc3BsaWNlKEQsMSl9dGhpcy5KLmxlbmd0aD0wO3N1cGVyLm1BKCl9fTtnLlgzPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5WPSExO3RoaXMuaj10aGlzLlg9MDt0aGlzLks9bmV3IGFPMX1MWCgpe3JldHVybiAkTygpPz9nLkFyKCJSQVdfSE9UX0NPTkZJR19HUk9VUCIpfVcobil7dGhpcy5ob3RIYXNoRGF0YT1uO2cuR2IoInl0LmdjZi5jb25maWcuaG90SGFzaERhdGEiLHRoaXMuaG90SGFzaERhdGF8fG51bGwpfX07dmFyIG5naD10eXBlb2YgVGV4dEVuY29kZXIhPT0idW5kZWZpbmVkIj9uZXcgVGV4dEVuY29kZXI6bnVsbCxRZD1uZ2g/bj0+bmdoLmVuY29kZShuKTpuPT57bj1MMChuKTsKdmFyIFc9bmV3IFVpbnQ4QXJyYXkobi5sZW5ndGgpO2ZvcihsZXQgRD0wO0Q8Vy5sZW5ndGg7RCsrKVdbRF09bltEXTtyZXR1cm4gV307dmFyIGhlPXtuZXh0OiJ3bl9zIixicm93c2U6ImJyX3MiLHNlYXJjaDoic3JfcyIscmVlbDoicl93cnMiLHBsYXllcjoicHNfcyJ9LFVITT17bmV4dDoid25fciIsYnJvd3NlOiJicl9yIixzZWFyY2g6InNyX3IiLHJlZWw6InJfd3JyIixwbGF5ZXI6InBzX3IifTtvNy5wcm90b3R5cGUuYlk9ZnVuY3Rpb24oKXtyZXR1cm57dmVyc2lvbjp0aGlzLnZlcnNpb24sYXJnczp0aGlzLmFyZ3N9fTtkMy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50b3BpY307dmFyIFdIUz1nLnJyKCJ5dFB1YnN1YjJQdWJzdWIySW5zdGFuY2UiKXx8bmV3IEJLO0JLLnByb3RvdHlwZS5zdWJzY3JpYmU9QksucHJvdG90eXBlLnN1YnNjcmliZTtCSy5wcm90b3R5cGUudW5zdWJzY3JpYmVCeUtleT1CSy5wcm90b3R5cGUuaks7QksucHJvdG90eXBlLnB1Ymxpc2g9QksucHJvdG90eXBlLldKO0JLLnByb3RvdHlwZS5jbGVhcj1CSy5wcm90b3R5cGUuY2xlYXI7Zy5HYigieXRQdWJzdWIyUHVic3ViMkluc3RhbmNlIixXSFMpO3ZhciBqOT1nLnJyKCJ5dFB1YnN1YjJQdWJzdWIyU3Vic2NyaWJlZEtleXMiKXx8e307Zy5HYigieXRQdWJzdWIyUHVic3ViMlN1YnNjcmliZWRLZXlzIixqOSk7dmFyIEJ6PWcucnIoInl0UHVic3ViMlB1YnN1YjJUb3BpY1RvS2V5cyIpfHx7fTtnLkdiKCJ5dFB1YnN1YjJQdWJzdWIyVG9waWNUb0tleXMiLEJ6KTt2YXIgQ1A9Zy5ycigieXRQdWJzdWIyUHVic3ViMklzQXN5bmMiKXx8e307CmcuR2IoInl0UHVic3ViMlB1YnN1YjJJc0FzeW5jIixDUCk7Zy5HYigieXRQdWJzdWIyUHVic3ViMlNraXBTdWJLZXkiLG51bGwpO3ZhciBNQj12MCgibWF4X2JvZHlfc2l6ZV90b19jb21wcmVzcyIsNUU1KSxSNz12MCgibWluX2JvZHlfc2l6ZV90b19jb21wcmVzcyIsNTAwKSx3OWo9MDt2YXIgRHoxPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuV3Y9dGhpcy5OPSExO3RoaXMucG90ZW50aWFsRXNmRXJyb3JDb3VudGVyPXRoaXMuSj0wO3RoaXMuaGFuZGxlRXJyb3I9KCk9Pnt9Owp0aGlzLkYyPSgpPT57fTsKdGhpcy5ub3c9RGF0ZS5ub3c7dGhpcy5OaD0hMTt0aGlzLnV4PW4udXg/PzEwMDt0aGlzLkExPW4uQTE/PzE7dGhpcy5HeT1uLkd5Pz8yNTkyRTY7dGhpcy5aND1uLlo0Pz8xMkU0O3RoaXMuSVA9bi5JUD8/NUUzO3RoaXMuWVc9bi5ZVz8/dm9pZCAwO3RoaXMuQ3I9ISFuLkNyO3RoaXMuS3I9bi5Lcj8/LjE7dGhpcy5IRj1uLkhGPz8xMDtuLmhhbmRsZUVycm9yJiYodGhpcy5oYW5kbGVFcnJvcj1uLmhhbmRsZUVycm9yKTtuLkYyJiYodGhpcy5GMj1uLkYyKTtuLk5oJiYodGhpcy5OaD1uLk5oKTtuLld2JiYodGhpcy5Xdj1uLld2KTt0aGlzLkVxPW4uRXE7dGhpcy5BJD1uLkEkO3RoaXMuZ0U9bi5nRTt0aGlzLnlHPW4ueUc7dGhpcy5MbT1uLkxtO3RoaXMudVo9bi51Wjt0aGlzLk5BPW4uTkE7Y3oodGhpcykmJighdGhpcy5FcXx8dGhpcy5FcSgibmV0d29ya2xlc3NfbG9nZ2luZyIpKSYmbm0odGhpcyl9d3JpdGVUaGVuU2VuZChuLFc9e30pe2lmKGN6KHRoaXMpJiZ0aGlzLk4pe2xldCBEPQp7dXJsOm4sb3B0aW9uczpXLHRpbWVzdGFtcDp0aGlzLm5vdygpLHN0YXR1czoiTkVXIixzZW5kQ291bnQ6MH07dGhpcy5nRS5zZXQoRCx0aGlzLllXKS50aGVuKGI9PntELmlkPWI7dGhpcy55Ry5XRygpJiZENSh0aGlzLEQpfSkuY2F0Y2goYj0+e0Q1KHRoaXMsRCk7CmJNKHRoaXMsYil9KX1lbHNlIHRoaXMuTG0obixXKX1zZW5kVGhlbldyaXRlKG4sVz17fSxEKXtpZihjeih0aGlzKSYmdGhpcy5OKXtsZXQgYj17dXJsOm4sCm9wdGlvbnM6Vyx0aW1lc3RhbXA6dGhpcy5ub3coKSxzdGF0dXM6Ik5FVyIsc2VuZENvdW50OjB9O3RoaXMuRXEmJnRoaXMuRXEoIm53bF9za2lwX3JldHJ5IikmJihiLnNraXBSZXRyeT1EKTtpZih0aGlzLnlHLldHKCl8fHRoaXMuRXEmJnRoaXMuRXEoIm53bF9hZ2dyZXNzaXZlX3NlbmRfdGhlbl93cml0ZSIpJiYhYi5za2lwUmV0cnkpe2lmKCFiLnNraXBSZXRyeSl7bGV0IHY9Vy5vbkVycm9yP1cub25FcnJvcjooKT0+e307Clcub25FcnJvcj1hc3luYyhrLGgpPT57YXdhaXQgdGhpcy5nRS5zZXQoYix0aGlzLllXKS5jYXRjaCh4PT57Yk0odGhpcyx4KX0pOwp2KGssaCl9fXRoaXMuTG0obixXLGIuc2tpcFJldHJ5KX1lbHNlIHRoaXMuZ0Uuc2V0KGIsdGhpcy5ZVykuY2F0Y2godj0+e3RoaXMuTG0obixXLGIuc2tpcFJldHJ5KTsKYk0odGhpcyx2KX0pfWVsc2UgRD10aGlzLkVxJiZ0aGlzLkVxKCJud2xfc2tpcF9yZXRyeSIpJiZELHRoaXMuTG0obixXLEQpfXNlbmRBbmRXcml0ZShuLFc9e30pe2lmKGN6KHRoaXMpJiZ0aGlzLk4pe2xldCBEPXt1cmw6biwKb3B0aW9uczpXLHRpbWVzdGFtcDp0aGlzLm5vdygpLHN0YXR1czoiTkVXIixzZW5kQ291bnQ6MH0sYj0hMSx2PVcub25TdWNjZXNzP1cub25TdWNjZXNzOigpPT57fTsKRC5vcHRpb25zLm9uU3VjY2Vzcz0oayxoKT0+e0QuaWQhPT12b2lkIDA/dGhpcy5nRS5UTShELmlkLHRoaXMuWVcpOmI9ITA7dGhpcy55Ry5sYyYmdGhpcy5FcSYmdGhpcy5FcSgidnNzX25ldHdvcmtfaGludCIpJiZ0aGlzLnlHLmxjKCEwKTt2KGssaCl9Owp0aGlzLkxtKEQudXJsLEQub3B0aW9ucyx2b2lkIDAsITApO3RoaXMuZ0Uuc2V0KEQsdGhpcy5ZVykudGhlbihrPT57RC5pZD1rO2ImJnRoaXMuZ0UuVE0oRC5pZCx0aGlzLllXKX0pLmNhdGNoKGs9PntiTSh0aGlzLGspfSl9ZWxzZSB0aGlzLkxtKG4sVyx2b2lkIDAsITApfVcoKXtpZighY3oodGhpcykpdGhyb3cgRXJyb3IoIkluZGV4ZWREQiBpcyBub3Qgc3VwcG9ydGVkOiB0aHJvdHRsZVNlbmQiKTsKdGhpcy5KfHwodGhpcy5KPXRoaXMuQSQuTFMoYXN5bmMoKT0+e3ZhciBuPWF3YWl0IHRoaXMuZ0UuaTQoIk5FVyIsdGhpcy5ZVyk7bj8oYXdhaXQgRDUodGhpcyxuKSx0aGlzLkomJih0aGlzLko9MCx0aGlzLlcoKSkpOnRoaXMuWCgpfSx0aGlzLnV4KSl9WCgpe3RoaXMuQSQuc08odGhpcy5KKTsKdGhpcy5KPTB9fTt2YXIgdlU7dmFyIHk0PXthY2NvdW50U3RhdGVDaGFuZ2VTaWduZWRJbjoyMyxhY2NvdW50U3RhdGVDaGFuZ2VTaWduZWRPdXQ6MjQsZGVsYXllZEV2ZW50TWV0cmljQ2FwdHVyZWQ6MTEsbGF0ZW5jeUFjdGlvbkJhc2VsaW5lZDo2LGxhdGVuY3lBY3Rpb25JbmZvOjcsbGF0ZW5jeUFjdGlvblRpY2tlZDo1LG9mZmxpbmVUcmFuc2ZlclN0YXR1c0NoYW5nZWQ6MixvZmZsaW5lSW1hZ2VEb3dubG9hZDozMzUscGxheWJhY2tTdGFydFN0YXRlQ2hhbmdlZDo5LHN5c3RlbUhlYWx0aENhcHR1cmVkOjMsbWFuZ29PbmJvYXJkaW5nQ29tcGxldGVkOjEwLG1hbmdvUHVzaE5vdGlmaWNhdGlvblJlY2VpdmVkOjIzMCxtYW5nb1VuZm9ya0RiTWlncmF0aW9uRXJyb3I6MTIxLG1hbmdvVW5mb3JrRGJNaWdyYXRpb25TdW1tYXJ5OjEyMixtYW5nb1VuZm9ya0RiTWlncmF0aW9uUHJldW5mb3JrRGJWZXJzaW9uTnVtYmVyOjEzMyxtYW5nb1VuZm9ya0RiTWlncmF0aW9uUGhvbmVNZXRhZGF0YToxMzQsbWFuZ29VbmZvcmtEYk1pZ3JhdGlvblBob25lU3RvcmFnZToxMzUsCm1hbmdvVW5mb3JrRGJNaWdyYXRpb25TdGVwOjE0MixtYW5nb0FzeW5jQXBpTWlncmF0aW9uRXZlbnQ6MjIzLG1hbmdvRG93bmxvYWRWaWRlb1Jlc3VsdDoyMjQsbWFuZ29Ib21lcGFnZVZpZGVvQ291bnQ6Mjc5LG1hbmdvSG9tZVYzU3RhdGU6Mjk1LG1hbmdvSW1hZ2VDbGllbnRDYWNoZUhpdEV2ZW50OjI3MyxzZENhcmRTdGF0dXNDaGFuZ2VkOjk4LGZyYW1lc0Ryb3BwZWQ6MTIsdGh1bWJuYWlsSG92ZXJlZDoxMyxkZXZpY2VSZXRlbnRpb25JbmZvQ2FwdHVyZWQ6MTQsdGh1bWJuYWlsTG9hZGVkOjE1LGJhY2tUb0FwcEV2ZW50OjMxOCxzdHJlYW1pbmdTdGF0c0NhcHR1cmVkOjE3LG9mZmxpbmVWaWRlb1NoYXJlZDoxOSxhcHBDcmFzaGVkOjIwLHlvdVRoZXJlOjIxLG9mZmxpbmVTdGF0ZVNuYXBzaG90OjIyLG1keFNlc3Npb25TdGFydGVkOjI1LG1keFNlc3Npb25Db25uZWN0ZWQ6MjYsbWR4U2Vzc2lvbkRpc2Nvbm5lY3RlZDoyNyxiZWRyb2NrUmVzb3VyY2VDb25zdW1wdGlvblNuYXBzaG90OjI4LApuZXh0R2VuV2F0Y2hXYXRjaFN3aXBlZDoyOSxraWRzQWNjb3VudHNTbmFwc2hvdDozMCx6ZXJvU3RlcENoYW5uZWxDcmVhdGVkOjMxLHR2aHRtbDVTZWFyY2hDb21wbGV0ZWQ6MzIsb2ZmbGluZVNoYXJlUGFpcmluZzozNCxvZmZsaW5lU2hhcmVVbmxvY2s6MzUsbWR4Um91dGVEaXN0cmlidXRpb25TbmFwc2hvdDozNixiZWRyb2NrUmVwZXRpdGl2ZUFjdGlvblRpbWVkOjM3LHVucGx1Z2dlZERlZ3JhZGF0aW9uSW5mbzoyMjksdXBsb2FkTXA0SGVhZGVyTW92ZWQ6MzgsdXBsb2FkVmlkZW9UcmFuc2NvZGVkOjM5LHVwbG9hZFByb2Nlc3NvclN0YXJ0ZWQ6NDYsdXBsb2FkUHJvY2Vzc29yRW5kZWQ6NDcsdXBsb2FkUHJvY2Vzc29yUmVhZHk6OTQsdXBsb2FkUHJvY2Vzc29yUmVxdWlyZW1lbnRQZW5kaW5nOjk1LHVwbG9hZFByb2Nlc3NvckludGVycnVwdGVkOjk2LHVwbG9hZEZyb250ZW5kRXZlbnQ6MjQxLGFzc2V0UGFja0Rvd25sb2FkU3RhcnRlZDo0MSxhc3NldFBhY2tEb3dubG9hZGVkOjQyLAphc3NldFBhY2tBcHBsaWVkOjQzLGFzc2V0UGFja0RlbGV0ZWQ6NDQsYXBwSW5zdGFsbEF0dHJpYnV0aW9uRXZlbnQ6NDU5LHBsYXliYWNrU2Vzc2lvblN0b3BwZWQ6NDUsYWRCbG9ja2VyTWVzc2FnaW5nU2hvd246NDgsZGlzdHJpYnV0aW9uQ2hhbm5lbENhcHR1cmVkOjQ5LGRhdGFQbGFuQ3BpZFJlcXVlc3RlZDo1MSxkZXRhaWxlZE5ldHdvcmtUeXBlQ2FwdHVyZWQ6NTIsc2VuZFN0YXRlVXBkYXRlZDo1MyxyZWNlaXZlU3RhdGVVcGRhdGVkOjU0LHNlbmREZWJ1Z1N0YXRlVXBkYXRlZDo1NSxyZWNlaXZlRGVidWdTdGF0ZVVwZGF0ZWQ6NTYsa2lkc0Vycm9yZWQ6NTcsbWR4TXNuU2Vzc2lvblN0YXRzRmluaXNoZWQ6NTgsYXBwU2V0dGluZ3NDYXB0dXJlZDo1OSxtZHhXZWJTb2NrZXRTZXJ2ZXJIdHRwRXJyb3I6NjAsbWR4V2ViU29ja2V0U2VydmVyOjYxLHN0YXJ0dXBDcmFzaGVzRGV0ZWN0ZWQ6NjIsY29sZFN0YXJ0SW5mbzo0MzUsb2ZmbGluZVBsYXliYWNrU3RhcnRlZDo2MyxsaXZlQ2hhdE1lc3NhZ2VTZW50OjIyNSwKbGl2ZUNoYXRVc2VyUHJlc2VudDo0MzQsbGl2ZUNoYXRCZWluZ01vZGVyYXRlZDo0NTcsbGl2ZUNoYXRHaWZ0QnV0dG9uSW1wcmVzc2VkOjU1OCxsaXZlQ3JlYXRpb25DYW1lcmFVcGRhdGVkOjY0LGxpdmVDcmVhdGlvbkVuY29kaW5nQ2FwdHVyZWQ6NjUsbGl2ZUNyZWF0aW9uRXJyb3I6NjYsbGl2ZUNyZWF0aW9uSGVhbHRoVXBkYXRlZDo2NyxsaXZlQ3JlYXRpb25WaWRlb0VmZmVjdHNDYXB0dXJlZDo2OCxsaXZlQ3JlYXRpb25TdGFnZU9jY3VyZWQ6NzUsb2ZmbGluZVN5c3RlbUZhaWx1cmU6NTQ2LGxpdmVDcmVhdGlvbkJyb2FkY2FzdFNjaGVkdWxlZDoxMjMsbGl2ZUNyZWF0aW9uQXJjaGl2ZVJlcGxhY2VtZW50OjE0OSxsaXZlQ3JlYXRpb25Db3N0cmVhbWluZ0Nvbm5lY3Rpb246NDIxLGxpdmVDcmVhdGlvblBsYXlhYmxlc01ldHJpY3M6NTMzLGxpdmVDcmVhdGlvblN0cmVhbVdlYnJ0Y1N0YXRzOjI4OCxsaXZlQ3JlYXRpb25XZWJydGNFcnJvcjo1MjYsbWR4U2Vzc2lvblJlY292ZXJ5U3RhcnRlZDo2OSwKbWR4U2Vzc2lvblJlY292ZXJ5Q29tcGxldGVkOjcwLG1keFNlc3Npb25SZWNvdmVyeVN0b3BwZWQ6NzEsdmlzdWFsRWxlbWVudFNob3duOjcyLHZpc3VhbEVsZW1lbnRIaWRkZW46NzMsdmlzdWFsRWxlbWVudEdlc3R1cmVkOjc4LHZpc3VhbEVsZW1lbnRTdGF0ZUNoYW5nZWQ6MjA4LHNjcmVlbkNyZWF0ZWQ6MTU2LHBsYXliYWNrQXNzb2NpYXRlZDoyMDIsdmlzdWFsRWxlbWVudEF0dGFjaGVkOjIxNSxwbGF5YmFja0NvbnRleHRFdmVudDoyMTQsY2xvdWRDYXN0aW5nUGxheWJhY2tTdGFydGVkOjc0LHdlYlBsYXllckFwaUNhbGxlZDo3Nix0dmh0bWw1QWNjb3VudERpYWxvZ09wZW5lZDo3OSxmb3JlZ3JvdW5kSGVhcnRiZWF0OjgwLGZvcmVncm91bmRIZWFydGJlYXRTY3JlZW5Bc3NvY2lhdGVkOjExMSxraWRzT2ZmbGluZVNuYXBzaG90OjgxLG1keEVuY3J5cHRpb25TZXNzaW9uU3RhdHNGaW5pc2hlZDo4MixwbGF5ZXJSZXF1ZXN0Q29tcGxldGVkOjgzLGxpdGVTY2hlZHVsZXJTdGF0aXN0aWNzOjg0LAptZHhTaWduSW46ODUsc3BhY2VjYXN0TWV0YWRhdGFMb29rdXBSZXF1ZXN0ZWQ6ODYsc3BhY2VjYXN0QmF0Y2hMb29rdXBSZXF1ZXN0ZWQ6ODcsc3BhY2VjYXN0U3VtbWFyeVJlcXVlc3RlZDo4OCxzcGFjZWNhc3RQbGF5YmFjazo4OSxzcGFjZWNhc3REaXNjb3Zlcnk6OTAsdHZodG1sNUxhdW5jaFVybENvbXBvbmVudENoYW5nZWQ6OTEsbWR4QmFja2dyb3VuZFBsYXliYWNrUmVxdWVzdENvbXBsZXRlZDo5MixtZHhCcm9rZW5BZGRpdGlvbmFsRGF0YURldmljZURldGVjdGVkOjkzLHR2aHRtbDVMb2NhbFN0b3JhZ2U6OTcsdHZodG1sNURldmljZVN0b3JhZ2VTdGF0dXM6MTQ3LGF1dG9DYXB0aW9uc0F2YWlsYWJsZTo5OSxwbGF5YmFja1NjcnViYmluZ0V2ZW50OjMzOSxmbGV4eVN0YXRlOjEwMCxpbnRlcmZhY2VPcmllbnRhdGlvbkNhcHR1cmVkOjEwMSxtYWluQXBwQnJvd3NlRnJhZ21lbnRDYWNoZToxMDIsb2ZmbGluZUNhY2hlVmVyaWZpY2F0aW9uRmFpbHVyZToxMDMsb2ZmbGluZVBsYXliYWNrRXhjZXB0aW9uRGlnZXN0OjIxNywKdnJDb3ByZXNlbmNlU3RhdHM6MTA0LHZyQ29wcmVzZW5jZVN5bmNTdGF0czoxMzAsdnJDb3ByZXNlbmNlQ29tbXNTdGF0czoxMzcsdnJDb3ByZXNlbmNlUGFydHlTdGF0czoxNTMsdnJDb3ByZXNlbmNlRW1vamlTdGF0czoyMTMsdnJDb3ByZXNlbmNlRXZlbnQ6MTQxLHZyQ29wcmVzZW5jZUZsb3dUcmFuc2l0RXZlbnQ6MTYwLHZyQ293YXRjaFBhcnR5RXZlbnQ6NDkyLHZyQ293YXRjaFVzZXJTdGFydE9ySm9pbkV2ZW50OjUwNCx2clBsYXliYWNrRXZlbnQ6MzQ1LGtpZHNBZ2VHYXRlVHJhY2tpbmc6MTA1LG9mZmxpbmVEZWxheUFsbG93ZWRUcmFja2luZzoxMDYsbWFpbkFwcEF1dG9PZmZsaW5lU3RhdGU6MTA3LHZpZGVvQXNUaHVtYm5haWxEb3dubG9hZDoxMDgsdmlkZW9Bc1RodW1ibmFpbFBsYXliYWNrOjEwOSxsaXRlU2hvd01vcmU6MTEwLHJlbmRlcmluZ0Vycm9yOjExOCxraWRzUHJvZmlsZVBpbkdhdGVUcmFja2luZzoxMTksYWJyVHJhamVjdG9yeToxMjQsc2Nyb2xsRXZlbnQ6MTI1LApzdHJlYW16SW5jcmVtZW50ZWQ6MTI2LGtpZHNQcm9maWxlU3dpdGNoZXJUcmFja2luZzoxMjcsa2lkc1Byb2ZpbGVDcmVhdGlvblRyYWNraW5nOjEyOSxidXlGbG93U3RhcnRlZDoxMzYsaW50ZWdyYXRpb25BdHRyaWJ1dGlvbkV2ZW50OjU1NixtYnNDb25uZWN0aW9uSW5pdGlhdGVkOjEzOCxtYnNQbGF5YmFja0luaXRpYXRlZDoxMzksbWJzTG9hZENoaWxkcmVuOjE0MCxsaXRlUHJvZmlsZUZldGNoZXI6MTQ0LG1keFJlbW90ZVRyYW5zYWN0aW9uOjE0NixyZWVsUGxheWJhY2tFcnJvcjoxNDgscmVhY2hhYmlsaXR5RGV0ZWN0aW9uRXZlbnQ6MTUwLG1vYmlsZVBsYXliYWNrRXZlbnQ6MTUxLGNvdXJ0c2lkZVBsYXllclN0YXRlQ2hhbmdlZDoxNTIsbXVzaWNQZXJzaXN0ZW50Q2FjaGVDaGVja2VkOjE1NCxtdXNpY1BlcnNpc3RlbnRDYWNoZUNsZWFyZWQ6MTU1LHBsYXliYWNrSW50ZXJydXB0ZWQ6MTU3LHBsYXliYWNrSW50ZXJydXB0aW9uUmVzb2x2ZWQ6MTU4LGZpeEZvcEZsb3c6MTU5LAphbnJEZXRlY3Rpb246MTYxLGJhY2tzdGFnZVBvc3RDcmVhdGlvbkZsb3dFbmRlZDoxNjIsY2xpZW50RXJyb3I6MTYzLGdhbWluZ0FjY291bnRMaW5rU3RhdHVzQ2hhbmdlZDoxNjQsbGl0ZUhvdXNld2FybWluZzoxNjUsYnV5Rmxvd0V2ZW50OjE2NyxraWRzUGFyZW50YWxHYXRlVHJhY2tpbmc6MTY4LGtpZHNTaWduZWRPdXRTZXR0aW5nc1N0YXR1czo0Mzcsa2lkc1NpZ25lZE91dFBhdXNlSGlzdG9yeUZpeFN0YXR1czo0MzgsdHZodG1sNVdhdGNoZG9nVmlvbGF0aW9uOjQ0NCx5cGNVcGdyYWRlRmxvdzoxNjkseW9uZ2xlU3R1ZHk6MTcwLHlwY1VwZGF0ZUZsb3dTdGFydGVkOjE3MSx5cGNVcGRhdGVGbG93Q2FuY2VsbGVkOjE3Mix5cGNVcGRhdGVGbG93U3VjY2VlZGVkOjE3Myx5cGNVcGRhdGVGbG93RmFpbGVkOjE3NCxsaXRlR3Jvd3Roa2l0UHJvbW86MTc1LHBheW1lbnRGbG93U3RhcnRlZDozNDEsdHJhbnNhY3Rpb25GbG93U2hvd1BheW1lbnREaWFsb2c6NDA1LHRyYW5zYWN0aW9uRmxvd1N0YXJ0ZWQ6MTc2LAp0cmFuc2FjdGlvbkZsb3dTZWNvbmRhcnlEZXZpY2VTdGFydGVkOjIyMix0cmFuc2FjdGlvbkZsb3dTZWNvbmRhcnlEZXZpY2VTaWduZWRPdXRTdGFydGVkOjM4Myx0cmFuc2FjdGlvbkZsb3dDYW5jZWxsZWQ6MTc3LHRyYW5zYWN0aW9uRmxvd1BheW1lbnRDYWxsQmFja1JlY2VpdmVkOjM4Nyx0cmFuc2FjdGlvbkZsb3dQYXltZW50U3VibWl0dGVkOjQ2MCx0cmFuc2FjdGlvbkZsb3dQYXltZW50U3VjY2VlZGVkOjMyOSx0cmFuc2FjdGlvbkZsb3dTdWNjZWVkZWQ6MTc4LHRyYW5zYWN0aW9uRmxvd0ZhaWxlZDoxNzksdHJhbnNhY3Rpb25GbG93UGxheUJpbGxpbmdDb25uZWN0aW9uU3RhcnRFdmVudDo0MjgsdHJhbnNhY3Rpb25GbG93U2Vjb25kYXJ5RGV2aWNlU3VjY2Vzczo0NTgsdHJhbnNhY3Rpb25GbG93RXJyb3JFdmVudDo0MTEsbGl0ZVZpZGVvUXVhbGl0eUNoYW5nZWQ6MTgwLHdhdGNoQnJlYWtFbmFibGVtZW50U2V0dGluZ0V2ZW50OjE4MSx3YXRjaEJyZWFrRnJlcXVlbmN5U2V0dGluZ0V2ZW50OjE4MiwKdmlkZW9FZmZlY3RzQ2FtZXJhUGVyZm9ybWFuY2VNZXRyaWNzOjE4MyxhZE5vdGlmeToxODQsc3RhcnR1cFRlbGVtZXRyeToxODUscGxheWJhY2tPZmZsaW5lRmFsbGJhY2tVc2VkOjE4NixvdXRPZk1lbW9yeToxODcseXBjUGF1c2VGbG93U3RhcnRlZDoxODgseXBjUGF1c2VGbG93Q2FuY2VsbGVkOjE4OSx5cGNQYXVzZUZsb3dTdWNjZWVkZWQ6MTkwLHlwY1BhdXNlRmxvd0ZhaWxlZDoxOTEsdXBsb2FkRmlsZVNlbGVjdGVkOjE5Mix5cGNSZXN1bWVGbG93U3RhcnRlZDoxOTMseXBjUmVzdW1lRmxvd0NhbmNlbGxlZDoxOTQseXBjUmVzdW1lRmxvd1N1Y2NlZWRlZDoxOTUseXBjUmVzdW1lRmxvd0ZhaWxlZDoxOTYsYWRzQ2xpZW50U3RhdGVDaGFuZ2U6MTk3LHlwY0NhbmNlbEZsb3dTdGFydGVkOjE5OCx5cGNDYW5jZWxGbG93Q2FuY2VsbGVkOjE5OSx5cGNDYW5jZWxGbG93U3VjY2VlZGVkOjIwMCx5cGNDYW5jZWxGbG93RmFpbGVkOjIwMSx5cGNDYW5jZWxGbG93R29Ub1BheW1lbnRQcm9jZXNzb3I6NDAyLAp5cGNEZWFjdGl2YXRlRmxvd1N0YXJ0ZWQ6MzIwLHlwY1JlZGVlbUZsb3dTdGFydGVkOjIwMyx5cGNSZWRlZW1GbG93Q2FuY2VsbGVkOjIwNCx5cGNSZWRlZW1GbG93U3VjY2VlZGVkOjIwNSx5cGNSZWRlZW1GbG93RmFpbGVkOjIwNix5cGNGYW1pbHlDcmVhdGVGbG93U3RhcnRlZDoyNTgseXBjRmFtaWx5Q3JlYXRlRmxvd0NhbmNlbGxlZDoyNTkseXBjRmFtaWx5Q3JlYXRlRmxvd1N1Y2NlZWRlZDoyNjAseXBjRmFtaWx5Q3JlYXRlRmxvd0ZhaWxlZDoyNjEseXBjRmFtaWx5TWFuYWdlRmxvd1N0YXJ0ZWQ6MjYyLHlwY0ZhbWlseU1hbmFnZUZsb3dDYW5jZWxsZWQ6MjYzLHlwY0ZhbWlseU1hbmFnZUZsb3dTdWNjZWVkZWQ6MjY0LHlwY0ZhbWlseU1hbmFnZUZsb3dGYWlsZWQ6MjY1LHJlc3RvcmVDb250ZXh0RXZlbnQ6MjA3LGVtYmVkc0FkRXZlbnQ6MzI3LGF1dG9wbGF5VHJpZ2dlcmVkOjIwOSxjbGllbnREYXRhRXJyb3JFdmVudDoyMTAsZXhwZXJpbWVudGFsVnNzVmFsaWRhdGlvbjoyMTEsCnR2aHRtbDVUcmlnZ2VyZWRFdmVudDoyMTIsdHZodG1sNUZyYW1ld29ya3NGaWVsZFRyaWFsUmVzdWx0OjIxNix0dmh0bWw1RnJhbWV3b3Jrc0ZpZWxkVHJpYWxTdGFydDoyMjAsbXVzaWNPZmZsaW5lUHJlZmVyZW5jZXM6MjE4LHdhdGNoVGltZVNlZ21lbnQ6MjE5LGFwcFdpZHRoTGF5b3V0RXJyb3I6MjIxLGFjY291bnRSZWdpc3RyeUNoYW5nZToyMjYsdXNlck1lbnRpb25BdXRvQ29tcGxldGVCb3hFdmVudDoyMjcsZG93bmxvYWRSZWNvbW1lbmRhdGlvbkVuYWJsZW1lbnRTZXR0aW5nRXZlbnQ6MjI4LG11c2ljUGxheWJhY2tDb250ZW50TW9kZUNoYW5nZUV2ZW50OjIzMSxvZmZsaW5lRGJPcGVuQ29tcGxldGVkOjIzMixraWRzRmxvd0V2ZW50OjIzMyxraWRzRmxvd0NvcnB1c1NlbGVjdGVkRXZlbnQ6MjM0LHZpZGVvRWZmZWN0c0V2ZW50OjIzNSx1bnBsdWdnZWRPcHNFb2dBbmFseXRpY3NFdmVudDoyMzYscGxheWJhY2tBdWRpb1JvdXRlRXZlbnQ6MjM3LGludGVyYWN0aW9uTG9nZ2luZ0RlYnVnTW9kZUVycm9yOjIzOCwKb2ZmbGluZVl0YlJlZnJlc2hlZDoyMzksa2lkc0Zsb3dFcnJvcjoyNDAsbXVzaWNBdXRvcGxheU9uTGF1bmNoQXR0ZW1wdGVkOjI0MixkZXZpY2VDb250ZXh0QWN0aXZpdHlFdmVudDoyNDMsZGV2aWNlQ29udGV4dEV2ZW50OjI0NCx0ZW1wbGF0ZVJlc29sdXRpb25FeGNlcHRpb246MjQ1LG11c2ljU2lkZWxvYWRlZFBsYXlsaXN0U2VydmljZUNhbGxlZDoyNDYsZW1iZWRzU3RvcmFnZUFjY2Vzc05vdENoZWNrZWQ6MjQ3LGVtYmVkc0hhc1N0b3JhZ2VBY2Nlc3NSZXN1bHQ6MjQ4LGVtYmVkc0l0cFBsYXllZE9uUmVsb2FkOjI0OSxlbWJlZHNSZXF1ZXN0U3RvcmFnZUFjY2Vzc1Jlc3VsdDoyNTAsZW1iZWRzU2hvdWxkUmVxdWVzdFN0b3JhZ2VBY2Nlc3NSZXN1bHQ6MjUxLGVtYmVkc1JlcXVlc3RTdG9yYWdlQWNjZXNzU3RhdGU6MjU2LGVtYmVkc1JlcXVlc3RTdG9yYWdlQWNjZXNzRmFpbGVkU3RhdGU6MjU3LGVtYmVkc0l0cFdhdGNoTGF0ZXJSZXN1bHQ6MjY2LHNlYXJjaFN1Z2dlc3REZWNvZGluZ1BheWxvYWRGYWlsdXJlOjI1MiwKc2lyaVNob3J0Y3V0QWN0aXZhdGVkOjI1Myx0dmh0bWw1S2V5Ym9hcmRQZXJmb3JtYW5jZToyNTQsbGF0ZW5jeUFjdGlvblNwYW46MjU1LGVsZW1lbnRzTG9nOjI2Nyx5dGJGaWxlT3BlbmVkOjI2OCx0ZmxpdGVNb2RlbEVycm9yOjI2OSxhcGlUZXN0OjI3MCx5b25nbGVVc2JTZXR1cDoyNzEsdG91U3RyaWtlSW50ZXJzdGl0aWFsRXZlbnQ6MjcyLGxpdGVTdHJlYW1Ub1NhdmU6Mjc0LGFwcEJ1bmRsZUNsaWVudEV2ZW50OjI3NSx5dGJGaWxlQ3JlYXRpb25GYWlsZWQ6Mjc2LGFkTm90aWZ5RmFpbHVyZToyNzgseXRiVHJhbnNmZXJGYWlsZWQ6MjgwLGJsb2NraW5nUmVxdWVzdEZhaWxlZDoyODEsbGl0ZUFjY291bnRTZWxlY3RvcjoyODIsbGl0ZUFjY291bnRVaUNhbGxiYWNrczoyODMsZHVtbXlQYXlsb2FkOjI4NCxicm93c2VSZXNwb25zZVZhbGlkYXRpb25FdmVudDoyODUsZW50aXRpZXNFcnJvcjoyODYsbXVzaWNJb3NCYWNrZ3JvdW5kRmV0Y2g6Mjg3LG1keE5vdGlmaWNhdGlvbkV2ZW50OjI4OSwKbGF5ZXJzVmFsaWRhdGlvbkVycm9yOjI5MCxtdXNpY1B3YUluc3RhbGxlZDoyOTEsbGl0ZUFjY291bnRDbGVhbnVwOjI5MixodG1sNVBsYXllckhlYWx0aEV2ZW50OjI5Myx3YXRjaFJlc3RvcmVBdHRlbXB0OjI5NCxsaXRlQWNjb3VudFNpZ25JbjoyOTYsbm90YWlyZUV2ZW50OjI5OCxraWRzVm9pY2VTZWFyY2hFdmVudDoyOTksYWROb3RpZnlGaWxsZWQ6MzAwLGRlbGF5ZWRFdmVudERyb3BwZWQ6MzAxLGFuYWx5dGljc1NlYXJjaEV2ZW50OjMwMixzeXN0ZW1EYXJrVGhlbWVPcHRPdXRFdmVudDozMDMsZmxvd0V2ZW50OjMwNCxuZXR3b3JrQ29ubmVjdGl2aXR5QmFzZWxpbmVFdmVudDozMDUseXRiRmlsZUltcG9ydGVkOjMwNixkb3dubG9hZFN0cmVhbVVybEV4cGlyZWQ6MzA3LGRpcmVjdFNpZ25JbkV2ZW50OjMwOCxseXJpY0ltcHJlc3Npb25FdmVudDozMDksYWNjZXNzaWJpbGl0eVN0YXRlRXZlbnQ6MzEwLHRva2VuUmVmcmVzaEV2ZW50OjMxMSxnZW5lcmljQXR0ZXN0YXRpb25FeGVjdXRpb246MzEyLAp0dmh0bWw1VmlkZW9TZWVrOjMxMyx1bnBsdWdnZWRBdXRvUGF1c2U6MzE0LHNjcnViYmluZ0V2ZW50OjMxNSxiZWR0aW1lUmVtaW5kZXJFdmVudDozMTcsdHZodG1sNVVuZXhwZWN0ZWRSZXN0YXJ0OjMxOSx0dmh0bWw1RGV2aWNlU3RvcmFnZVN0YXRzOjUzNSx0dmh0bWw1U3RhYmlsaXR5VHJhY2VFdmVudDo0NzgsdHZodG1sNU9wZXJhdGlvbkhlYWx0aDo0NjcsdHZodG1sNVdhdGNoS2V5RXZlbnQ6MzIxLHZvaWNlTGFuZ3VhZ2VDaGFuZ2VkOjMyMix0dmh0bWw1TGl2ZUNoYXRTdGF0dXM6MzIzLHBhcmVudFRvb2xzQ29ycHVzU2VsZWN0ZWRFdmVudDozMjQsb2ZmZXJBZHNFbnJvbGxtZW50SW5pdGlhdGVkOjMyNSxuZXR3b3JrUXVhbGl0eUludGVydmFsRXZlbnQ6MzI2LGRldmljZVN0YXJ0dXBNZXRyaWNzOjMyOCxoZWFydGJlYXRBY3Rpb25QbGF5ZXJUcmFuc2l0aW9uZWQ6MzMwLHR2aHRtbDVMaWZlY3ljbGU6MzMxLGhlYXJ0YmVhdEFjdGlvblBsYXllckhhbHRlZDozMzIsYWRhcHRpdmVJbmxpbmVNdXRlZFNldHRpbmdFdmVudDozMzMsCm1haW5BcHBMaWJyYXJ5TG9hZGluZ1N0YXRlOjMzNCx0aGlyZFBhcnR5TG9nTW9uaXRvcmluZ0V2ZW50OjMzNixhcHBTaGVsbEFzc2V0TG9hZFJlcG9ydDozMzcsdHZodG1sNUFuZHJvaWRBdHRlc3RhdGlvbjozMzgsdHZodG1sNVN0YXJ0dXBTb3VuZEV2ZW50OjM0MCxpb3NCYWNrZ3JvdW5kUmVmcmVzaFRhc2s6MzQyLGlvc0JhY2tncm91bmRQcm9jZXNzaW5nVGFzazozNDMsc2xpRXZlbnRCYXRjaDozNDQscG9zdEltcHJlc3Npb25FdmVudDozNDYsbXVzaWNTaWRlbG9hZGVkUGxheWxpc3RFeHBvcnQ6MzQ3LGlkYlVuZXhwZWN0ZWRseUNsb3NlZDozNDgsdm9pY2VTZWFyY2hFdmVudDozNDksbWR4U2Vzc2lvbkNhc3RFdmVudDozNTAsaWRiUXVvdGFFeGNlZWRlZDozNTEsaWRiVHJhbnNhY3Rpb25FbmRlZDozNTIsaWRiVHJhbnNhY3Rpb25BYm9ydGVkOjM1Myx0dmh0bWw1S2V5Ym9hcmRMb2dnaW5nOjM1NCxpZGJJc1N1cHBvcnRlZENvbXBsZXRlZDozNTUsY3JlYXRvclN0dWRpb01vYmlsZUV2ZW50OjM1NiwKaWRiRGF0YUNvcnJ1cHRlZDozNTcscGFyZW50VG9vbHNBcHBDaG9zZW5FdmVudDozNTgsd2ViVmlld0JvdHRvbVNoZWV0UmVzaXplZDozNTksYWN0aXZlU3RhdGVDb250cm9sbGVyU2Nyb2xsUGVyZm9ybWFuY2VTdW1tYXJ5OjM2MCxuYXZpZ2F0b3JWYWxpZGF0aW9uOjM2MSxtZHhTZXNzaW9uSGVhcnRiZWF0OjM2MixjbGllbnRIaW50c1BvbHlmaWxsRGlhZ25vc3RpY3M6MzYzLGNsaWVudEhpbnRzUG9seWZpbGxFdmVudDozNjQscHJvb2ZPZk9yaWdpblRva2VuRXJyb3I6MzY1LGtpZHNBZGRlZEFjY291bnRTdW1tYXJ5OjM2NixtdXNpY1dlYXJhYmxlRGV2aWNlOjM2Nyx5cGNSZWZ1bmRGbG93RXZlbnQ6MzY4LHR2aHRtbDVQbGF5YmFja01lYXN1cmVtZW50RXZlbnQ6MzY5LHR2aHRtbDVXYXRlcm1hcmtNZWFzdXJlbWVudEV2ZW50OjM3MCxjbGllbnRFeHBHY2ZQcm9wYWdhdGlvbkV2ZW50OjM3MSxtYWluQXBwUmVmZXJyZXJJbnRlbnQ6MzcyLGxlYWRlckxvY2tFbmRlZDozNzMsbGVhZGVyTG9ja0FjcXVpcmVkOjM3NCwKZ29vZ2xlSGF0c0V2ZW50OjM3NSxwZXJzaXN0ZW50TGVuc0xhdW5jaEV2ZW50OjM3NixwYXJlbnRUb29sc0NoaWxkV2VsY29tZUNob3NlbkV2ZW50OjM3OCxicm93c2VUaHVtYm5haWxQcmVsb2FkRXZlbnQ6Mzc5LGZpbmFsUGF5bG9hZDozODAsbWR4RGlhbEFkZGl0aW9uYWxEYXRhVXBkYXRlRXZlbnQ6MzgxLHdlYk9yY2hlc3RyYXRpb25UYXNrTGlmZWN5Y2xlUmVjb3JkOjM4MixzdGFydHVwU2lnbmFsRXZlbnQ6Mzg0LGFjY291bnRFcnJvcjozODUsZ21zRGV2aWNlQ2hlY2tFdmVudDozODYsYWNjb3VudFNlbGVjdG9yRXZlbnQ6Mzg4LGFjY291bnRVaUNhbGxiYWNrczozODksbWR4RGlhbEFkZGl0aW9uYWxEYXRhUHJvYmVFdmVudDozOTAsZG93bmxvYWRzU2VhcmNoSWNpbmdBcGlTdGF0czozOTEsZG93bmxvYWRzU2VhcmNoSW5kZXhVcGRhdGVkRXZlbnQ6Mzk3LGRvd25sb2Fkc1NlYXJjaEluZGV4U25hcHNob3Q6Mzk4LGRhdGFQdXNoQ2xpZW50RXZlbnQ6MzkyLGtpZHNDYXRlZ29yeVNlbGVjdGVkRXZlbnQ6MzkzLAptZHhEZXZpY2VNYW5hZ2VtZW50U25hcHNob3RFdmVudDozOTQscHJlZmV0Y2hSZXF1ZXN0ZWQ6Mzk1LHByZWZldGNoYWJsZUNvbW1hbmRFeGVjdXRlZDozOTYsZ2VsRGVidWdnaW5nRXZlbnQ6Mzk5LHdlYkxpbmtUdHNQbGF5RW5kOjQwMCxjbGlwVmlld0ludmFsaWQ6NDAxLHBlcnNpc3RlbnRTdG9yYWdlU3RhdGVDaGVja2VkOjQwMyxjYWNoZVdpcGVvdXRFdmVudDo0MDQscGxheWVyRXZlbnQ6NDEwLHNmdkVmZmVjdFBpcGVsaW5lU3RhcnRlZEV2ZW50OjQxMixzZnZFZmZlY3RQaXBlbGluZVBhdXNlZEV2ZW50OjQyOSxzZnZFZmZlY3RQaXBlbGluZUVuZGVkRXZlbnQ6NDEzLHNmdkVmZmVjdENob3NlbkV2ZW50OjQxNCxzZnZFZmZlY3RMb2FkZWRFdmVudDo0MTUsc2Z2RWZmZWN0VXNlckludGVyYWN0aW9uRXZlbnQ6NDY1LHNmdkVmZmVjdEZpcnN0RnJhbWVQcm9jZXNzZWRMYXRlbmN5RXZlbnQ6NDE2LHNmdkVmZmVjdEFnZ3JlZ2F0ZWRGcmFtZXNQcm9jZXNzZWRMYXRlbmN5RXZlbnQ6NDE3LApzZnZFZmZlY3RBZ2dyZWdhdGVkRnJhbWVzRHJvcHBlZEV2ZW50OjQxOCxzZnZFZmZlY3RQaXBlbGluZUVycm9yRXZlbnQ6NDMwLHNmdkVmZmVjdEdyYXBoRnJvemVuRXZlbnQ6NDE5LHNmdkVmZmVjdEdsVGhyZWFkQmxvY2tlZEV2ZW50OjQyMCxtZGVRb3NFdmVudDo1MTAsbWRlVmlkZW9DaGFuZ2VkRXZlbnQ6NDQyLG1kZVBsYXllclBlcmZvcm1hbmNlTWV0cmljczo0NzIsbWRlRXhwb3J0ZXJFdmVudDo0OTcsZ2VuZXJpY0NsaWVudEV4cGVyaW1lbnRFdmVudDo0MjMsaG9tZVByZWxvYWRUYXNrU2NoZWR1bGVkOjQyNCxob21lUHJlbG9hZFRhc2tFeGVjdXRlZDo0MjUsaG9tZVByZWxvYWRDYWNoZUhpdDo0MjYscG9seW1lclByb3BlcnR5Q2hhbmdlZEluT2JzZXJ2ZXI6NDI3LGFwcGxpY2F0aW9uU3RhcnRlZDo0MzEsbmV0d29ya0Nyb25ldFJ0dEJhdGNoOjQzMixuZXR3b3JrQ3JvbmV0UnR0U3VtbWFyeTo0MzMscmVwZWF0Q2hhcHRlckxvb3BFdmVudDo0MzYsc2Vla0NhbmNlbGxhdGlvbkV2ZW50OjQ2MiwKbG9ja01vZGVUaW1lb3V0RXZlbnQ6NDgzLGV4dGVybmFsVmlkZW9TaGFyZVRvWW91dHViZUF0dGVtcHQ6NTAxLHBhcmVudENvZGVFdmVudDo1MDIsb2ZmbGluZVRyYW5zZmVyU3RhcnRlZDo0LG11c2ljT2ZmbGluZU1peHRhcGVQcmVmZXJlbmNlc0NoYW5nZWQ6MTYsbWFuZ29EYWlseU5ld1ZpZGVvc05vdGlmaWNhdGlvbkF0dGVtcHQ6NDAsbWFuZ29EYWlseU5ld1ZpZGVvc05vdGlmaWNhdGlvbkVycm9yOjc3LGR0d3NQbGF5YmFja1N0YXJ0ZWQ6MTEyLGR0d3NUaWxlRmV0Y2hTdGFydGVkOjExMyxkdHdzVGlsZUZldGNoQ29tcGxldGVkOjExNCxkdHdzVGlsZUZldGNoU3RhdHVzQ2hhbmdlZDoxNDUsZHR3c0tleWZyYW1lRGVjb2RlckJ1ZmZlclNlbnQ6MTE1LGR0d3NUaWxlVW5kZXJmbG93ZWRPbk5vbmtleWZyYW1lOjExNixkdHdzQmFja2ZpbGxGZXRjaFN0YXR1c0NoYW5nZWQ6MTQzLGR0d3NCYWNrZmlsbFVuZGVyZmxvd2VkOjExNyxkdHdzQWRhcHRpdmVMZXZlbENoYW5nZWQ6MTI4LApibG9ja2luZ1Zpc2l0b3JJZFRpbWVvdXQ6Mjc3LGxpdGVTb2NpYWw6MTgsbW9iaWxlSnNJbnZvY2F0aW9uOjI5NyxiaXNjb3R0aUJhc2VkRGV0ZWN0aW9uOjQzOSxjb1dhdGNoU3RhdGVDaGFuZ2U6NDQwLGVtYmVkc1ZpZGVvRGF0YURpZENoYW5nZTo0NDEsc2hvcnRzRmlyc3Q6NDQzLGNydWlzZUNvbnRyb2xFdmVudDo0NDUscW9lQ2xpZW50TG9nZ2luZ0NvbnRleHQ6NDQ2LGF0dlJlY29tbWVuZGF0aW9uSm9iRXhlY3V0ZWQ6NDQ3LHR2aHRtbDVVc2VyRmVlZGJhY2s6NDQ4LHByb2R1Y2VyUHJvamVjdENyZWF0ZWQ6NDQ5LHByb2R1Y2VyUHJvamVjdE9wZW5lZDo0NTAscHJvZHVjZXJQcm9qZWN0RGVsZXRlZDo0NTEscHJvZHVjZXJQcm9qZWN0RWxlbWVudEFkZGVkOjQ1Myxwcm9kdWNlclByb2plY3RFbGVtZW50UmVtb3ZlZDo0NTQscHJvZHVjZXJBcHBTdGF0ZUNoYW5nZTo1MDkscHJvZHVjZXJQcm9qZWN0RGlza0luc3VmZmljaWVudEV4cG9ydEZhaWx1cmU6NTE2LHByb2R1Y2VyTWVkaWFTZXJ2aWNlc1Jlc2V0RGV0YWlsczo1MjIsCnR2aHRtbDVTaG93Q2xvY2tFdmVudDo0NTUsZGV2aWNlQ2FwYWJpbGl0eUNoZWNrTWV0cmljczo0NTYseW91dHViZUNsZWFyY3V0RXZlbnQ6NDYxLG9mZmxpbmVCcm93c2VGYWxsYmFja0V2ZW50OjQ2MyxnZXRDdHZUb2tlbkV2ZW50OjQ2NCxzdGFydHVwRHJvcHBlZEZyYW1lc1N1bW1hcnk6NDY2LHNjcmVlbnNob3RFdmVudDo0NjgsbWluaUFwcFBsYXlFdmVudDo0NjksZWxlbWVudHNEZWJ1Z0NvdW50ZXJzOjQ3MCxmb250TG9hZEV2ZW50OjQ3MSx3ZWJLaWxsc3dpdGNoUmVjZWl2ZWQ6NDczLHdlYktpbGxzd2l0Y2hFeGVjdXRlZDo0NzQsY2FtZXJhT3BlbkV2ZW50OjQ3NSxtYW51YWxTbW9vdGhuZXNzTWVhc3VyZW1lbnQ6NDc2LHR2aHRtbDVBcHBRdWFsaXR5RXZlbnQ6NDc3LHBvbHltZXJQcm9wZXJ0eUFjY2Vzc0V2ZW50OjQ3OSxtaW5pQXBwU2RrVXNhZ2U6NDgwLGNvYmFsdFRlbGVtZXRyeUV2ZW50OjQ4MSxjcm9zc0RldmljZVBsYXliYWNrOjQ4MixjaGFubmVsQ3JlYXRlZFdpdGhPYmFrZUltYWdlOjQ4NCwKY2hhbm5lbEVkaXRlZFdpdGhPYmFrZUltYWdlOjQ4NSxvZmZsaW5lRGVsZXRlRXZlbnQ6NDg2LGNyb3NzRGV2aWNlTm90aWZpY2F0aW9uVHJhbnNmZXI6NDg3LGFuZHJvaWRJbnRlbnRFdmVudDo0ODgsdW5wbHVnZ2VkQW1iaWVudEludGVybHVkZXNDb3VudGVyZmFjdHVhbEV2ZW50OjQ4OSxrZXlQbGF5c1BsYXliYWNrOjQ5MCxzaG9ydHNDcmVhdGlvbkZhbGxiYWNrRXZlbnQ6NDkzLHZzc0RhdGE6NDkxLGNhc3RNYXRjaDo0OTQsbWluaUFwcFBlcmZvcm1hbmNlTWV0cmljczo0OTUsdXNlckZlZWRiYWNrRXZlbnQ6NDk2LGtpZHNHdWVzdFNlc3Npb25NaXNtYXRjaDo0OTgsbXVzaWNTaWRlbG9hZGVkUGxheWxpc3RNaWdyYXRpb25FdmVudDo0OTksc2xlZXBUaW1lclNlc3Npb25GaW5pc2hFdmVudDo1MDAsd2F0Y2hFcFByb21vQ29uZmxpY3Q6NTAzLGlubmVydHViZVJlc3BvbnNlQ2FjaGVNZXRyaWNzOjUwNSxtaW5pQXBwQWRFdmVudDo1MDYsZGF0YVBsYW5VcHNlbGxFdmVudDo1MDcsCnByb2R1Y2VyUHJvamVjdFJlbmFtZWQ6NTA4LHByb2R1Y2VyTWVkaWFTZWxlY3Rpb25FdmVudDo1MTEsZW1iZWRzQXV0b3BsYXlTdGF0dXNDaGFuZ2VkOjUxMixyZW1vdGVDb25uZWN0RXZlbnQ6NTEzLGNvbm5lY3RlZFNlc3Npb25NaXNhdHRyaWJ1dGlvbkV2ZW50OjUxNCxwcm9kdWNlclByb2plY3RFbGVtZW50TW9kaWZpZWQ6NTE1LGFkc1NlZW5DbGllbnRMb2dnaW5nOjUxNyxwcm9kdWNlckV2ZW50OjUxOCx0dmh0bWw1Q2xlYW5TdGFydDo1MTksZGV2aWNlQWNjb3VudE1ldHJpY3NFdmVudDo1MjAsZGVycExvZ0V2ZW50OjUyMSxwbGF5YWJsZXNQb3J0YWxFdmVudDo1MjMsaXBWYWxpZGF0aW9uU3RhcnRlZDo1MjQsaXBWYWxpZGF0aW9uUmVjZWl2ZWQ6NTI1LHJlZWxzU2VxdWVuY2VNdXRhdGlvbkV2ZW50OjUyNyx3YXRjaFpvb21TdGF0ZUNoYW5nZTo1MjgsbWV0YWRhdGFFZGl0b3JFdmVudDo1Mjksa2lkc1ByaXNtYURlZXBsaW5rc0V2ZW50OjUzMCxjcmVhdGlvbk9yY2hlc3RyYXRpb25FdmVudDo1MzEsCmNvb3JkaW5hdGVkU2FtcGxpbmdUcmlnZ2VyZWQ6NTMyLHJlY2FwU2NyZWVuc2hvdEV2ZW50OjUzNCxtZHhMb2NhbE5ldHdvcmtQZXJtaXNzaW9uUmVxdWVzdEV2ZW50OjUzNixtZHhMb2NhbE5ldHdvcmtQZXJtaXNzaW9uUmVzcG9uc2VFdmVudDo1Mzcsc2Vzc2lvblJlcGxheUV2ZW50OjUzOCxzZXNzaW9uUmVwbGF5U3RhdHVzRXZlbnQ6NTM5LGxvZ2dpbmdSZWxpYWJpbGl0eVByb2JlOjU0MCxrZXlWYWx1ZVN0b3JlU3RhdHNFdmVudDo1NDEsZGV2aWNlTG9jYXRpb25QZXJtaXNzaW9uRXZlbnQ6NTQyLHJlbW90ZUNvbnRyb2xTdGFydGVkOjU0MyxyZW1vdGVDb250cm9sQ29tcGxldGVkOjU0NCxyZWVsc0Fkc0V2ZW50czo1NDUseXRsckxvYWRlclRlc3RIYXJuZXNzRXZlbnQ6NTQ3LGJpb21ldHJpY0F1dGhlbnRpY2F0aW9uRXZlbnQ6NTQ4LG1haW5BcHBMaWZlY3ljbGVFdmVudDo1NDksbXVzaWNEb3dubG9hZEJhY2tncm91bmRDb250aW51ZWRQcm9jZXNzaW5nVGFzazo1NTAsbXVzaWNNZXRhZGF0YU1pc21hdGNoRXZlbnQ6NTUxLApzY3JvbGxUb0NvbXBvbmVudENvbXBsZXRlZDo1NTIsZW50aXR5U3RvcmVUZWxlbWV0cnk6NTUzLHN0cmVhbWluZ0RhcmtMYXVuY2hFdmVudDo1NTQsY2hpbGRBY2NvdW50c0Rpc3BsYXlFdmVudDo1NTUsdHZmYXNQbGF5YmFja0NvbnRleHQ6NTU3LG1kZUMyUGFFdmVudDo1NTl9O3ZhciBoX3g9a08oIlNlcnZpY2VXb3JrZXJMb2dzRGF0YWJhc2UiLHtLYzp7U1dIZWFsdGhMb2c6e3Z4OjF9fSxzaGFyZWQ6ITAsdXBncmFkZToobixXKT0+e1coMSkmJkVSKFp5KG4sIlNXSGVhbHRoTG9nIix7a2V5UGF0aDoiaWQiLGF1dG9JbmNyZW1lbnQ6ITB9KSwic3dIZWFsdGhOZXdSZXF1ZXN0IixbImludGVyZmFjZSIsInRpbWVzdGFtcCJdKX0sCnZlcnNpb246MX0pO3ZhciBYaT17fSxYSHc9MDt2YXIgR1Q7dmFyIHJvPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5OPW5ldyBNYXA7dGhpcy5KPSExfXJlcXVlc3RDb21wbGV0ZShuLFcpe1cmJih0aGlzLko9ITApO249dGhpcy5yZW1vdmVQYXJhbXMobik7dGhpcy5OLmdldChuKXx8dGhpcy5OLnNldChuLFcpfWlzRW5kcG9pbnRDRlIobil7bj10aGlzLnJlbW92ZVBhcmFtcyhuKTtyZXR1cm4obj10aGlzLk4uZ2V0KG4pKT8hMTpuPT09ITEmJnRoaXMuSj8hMDpudWxsfXJlbW92ZVBhcmFtcyhuKXtyZXR1cm4gbi5zcGxpdCgiPyIpWzBdfX07cm8ucHJvdG90eXBlLnJlbW92ZVBhcmFtcz1yby5wcm90b3R5cGUucmVtb3ZlUGFyYW1zO3JvLnByb3RvdHlwZS5pc0VuZHBvaW50Q0ZSPXJvLnByb3RvdHlwZS5pc0VuZHBvaW50Q0ZSO3JvLnByb3RvdHlwZS5yZXF1ZXN0Q29tcGxldGU9cm8ucHJvdG90eXBlLnJlcXVlc3RDb21wbGV0ZTtyby5nZXRJbnN0YW5jZT1zYzt2YXIgTmI9Y2xhc3MgZXh0ZW5kcyBnLm9Xe2NvbnN0cnVjdG9yKCl7c3VwZXIoKTt0aGlzLko9ITE7dGhpcy5OPXMydygpO3RoaXMuTi5TXygibmV0d29ya3N0YXR1cy1vbmxpbmUiLCgpPT57aWYodGhpcy5KJiZnLmwoIm9mZmxpbmVfZXJyb3JfaGFuZGxpbmciKSl7dmFyIG49JFEoKS5nZXQoImVycm9ycyIsITApO2lmKG4pe2ZvcihsZXQgVyBpbiBuKWlmKG5bV10pe2xldCBEPW5ldyBnLlF4KFcsInNlbnQgdmlhIG9mZmxpbmVfZXJyb3JzIik7RC5uYW1lPW5bV10ubmFtZTtELnN0YWNrPW5bV10uc3RhY2s7RC5sZXZlbD1uW1ddLmxldmVsO090KEQpfSRRKCkuc2V0KCJlcnJvcnMiLHt9LDI1OTJFMywhMCl9fX0pfVdHKCl7cmV0dXJuIHRoaXMuTi5XRygpfWxjKG4pe3RoaXMuTi5pc09ubGluZT1ufUxrKCl7dmFyIG49d2luZG93Lm5hdmlnYXRvci5vbkxpbmU7CnJldHVybiBuPT09dm9pZCAwPyEwOm59REgoKXt0aGlzLko9ITB9U18obixXKXtyZXR1cm4gdGhpcy5OLlNfKG4sVyl9aEoobil7cmV0dXJuIHJYKHRoaXMuTixuKX19O05iLnByb3RvdHlwZS5zZW5kTmV0d29ya0NoZWNrUmVxdWVzdD1OYi5wcm90b3R5cGUuaEo7TmIucHJvdG90eXBlLmxpc3Rlbj1OYi5wcm90b3R5cGUuU187TmIucHJvdG90eXBlLmVuYWJsZUVycm9yRmx1c2hpbmc9TmIucHJvdG90eXBlLkRIO05iLnByb3RvdHlwZS5nZXRXaW5kb3dTdGF0dXM9TmIucHJvdG90eXBlLkxrO05iLnByb3RvdHlwZS5uZXR3b3JrU3RhdHVzSGludD1OYi5wcm90b3R5cGUubGM7TmIucHJvdG90eXBlLmlzTmV0d29ya0F2YWlsYWJsZT1OYi5wcm90b3R5cGUuV0c7TmIuZ2V0SW5zdGFuY2U9cG07dmFyIGI2Wj1jbGFzcyBleHRlbmRzIGcub1d7Y29uc3RydWN0b3IoKXt2YXIgbj17dTI6ITAsRW86ITB9O3N1cGVyKCk7dGhpcy5OPXRoaXMuWD0wO3RoaXMuSj1wbSgpO3ZhciBXPWcucnIoInl0Lm5ldHdvcmtTdGF0dXNNYW5hZ2VyLmluc3RhbmNlLmxpc3RlbiIpLmJpbmQodGhpcy5KKTtXJiYobi5yYXRlTGltaXQ/KHRoaXMucmF0ZUxpbWl0PW4ucmF0ZUxpbWl0LFcoIm5ldHdvcmtzdGF0dXMtb25saW5lIiwoKT0+e1lRKHRoaXMsInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vbmxpbmUiKX0pLFcoIm5ldHdvcmtzdGF0dXMtb2ZmbGluZSIsKCk9PntZUSh0aGlzLCJwdWJsaWN5dG5ldHdvcmtzdGF0dXMtb2ZmbGluZSIpfSkpOihXKCJuZXR3b3Jrc3RhdHVzLW9ubGluZSIsKCk9Pnt0aGlzLmRpc3BhdGNoRXZlbnQoInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vbmxpbmUiKX0pLFcoIm5ldHdvcmtzdGF0dXMtb2ZmbGluZSIsKCk9Pnt0aGlzLmRpc3BhdGNoRXZlbnQoInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vZmZsaW5lIil9KSkpfVdHKCl7dmFyIG49CmcucnIoInl0Lm5ldHdvcmtTdGF0dXNNYW5hZ2VyLmluc3RhbmNlLmlzTmV0d29ya0F2YWlsYWJsZSIpOwpyZXR1cm4gbj9uLmJpbmQodGhpcy5KKSgpOiEwfWxjKG4pe3ZhciBXPWcucnIoInl0Lm5ldHdvcmtTdGF0dXNNYW5hZ2VyLmluc3RhbmNlLm5ldHdvcmtTdGF0dXNIaW50IikuYmluZCh0aGlzLkopO1cmJlcobil9YXN5bmMgaEoobil7dmFyIFc9Zy5ycigieXQubmV0d29ya1N0YXR1c01hbmFnZXIuaW5zdGFuY2Uuc2VuZE5ldHdvcmtDaGVja1JlcXVlc3QiKS5iaW5kKHRoaXMuSik7cmV0dXJuIGcubCgic2tpcF9uZXR3b3JrX2NoZWNrX2lmX2NmciIpJiZzYygpLmlzRW5kcG9pbnRDRlIoImdlbmVyYXRlXzIwNCIpP25ldyBQcm9taXNlKEQ9Pnt0aGlzLmxjKHdpbmRvdy5uYXZpZ2F0b3I/Lm9uTGluZXx8ITApO0QodGhpcy5XRygpKX0pOlc/VyhuKTohMH19O3ZhciBTYyxHemg9Y2xhc3MgZXh0ZW5kcyBEejF7Y29uc3RydWN0b3IoKXtTY3x8KFNjPW5ldyBiNlopO3N1cGVyKHtnRTp7dGk6dnZpLFRNOmJHQyxpNDpudjIsSzY6V19DLGhZOkRFeCxzZXQ6YUJTfSx5RzpTYyxoYW5kbGVFcnJvcjoobixXLEQpPT57dmFyIGI9RD8uZXJyb3I/LmNvZGU7Yj09PTQwMHx8Yj09PTQxNT8obj1uZXcgZy5ReChuLm1lc3NhZ2UsVyxEPy5lcnJvcj8uY29kZSksWkUobix2b2lkIDAsdm9pZCAwLHZvaWQgMCwhMCkpOk90KG4pfSwKRjI6WkUsTG06JEV0LG5vdzpnLlIsaEw6cUt3LEEkOmcuRHkoKSx1WjoicHVibGljeXRuZXR3b3Jrc3RhdHVzLW9ubGluZSIsTkE6InB1YmxpY3l0bmV0d29ya3N0YXR1cy1vZmZsaW5lIixDcjohMCxLcjouMSxIRjp2MCgicG90ZW50aWFsX2VzZl9lcnJvcl9saW1pdCIsMTApLEVxOmcubCxOaDohKFI5KCkmJmcuSVAoZG9jdW1lbnQubG9jYXRpb24udG9TdHJpbmcoKSkhPT0id3d3LnlvdXR1YmUtbm9jb29raWUuY29tIil9KTt0aGlzLmo9bmV3IGcuS1Y7Zy5sKCJuZXR3b3JrbGVzc19pbW1lZGlhdGVseV9kcm9wX2FsbF9yZXF1ZXN0cyIpJiZremkoKTt2eigiTG9nc0RhdGFiYXNlVjIiKX13cml0ZVRoZW5TZW5kKG4sVyl7V3x8KFc9e30pO1c9Zm0obixXKTtSOSgpfHwodGhpcy5OPSExKTtzdXBlci53cml0ZVRoZW5TZW5kKG4sVyl9c2VuZFRoZW5Xcml0ZShuLFcsRCl7V3x8KFc9e30pO1c9Zm0obixXKTtSOSgpfHwodGhpcy5OPSExKTtzdXBlci5zZW5kVGhlbldyaXRlKG4sVyxEKX1zZW5kQW5kV3JpdGUobiwKVyl7V3x8KFc9e30pO1c9Zm0obixXKTtSOSgpfHwodGhpcy5OPSExKTtzdXBlci5zZW5kQW5kV3JpdGUobixXKX1hd2FpdEluaXRpYWxpemF0aW9uKCl7cmV0dXJuIHRoaXMuai5wcm9taXNlfX07dmFyIEpJPWcucWkueXROZXR3b3JrbGVzc0xvZ2dpbmdJbml0aWFsaXphdGlvbk9wdGlvbnN8fHtpc053bEluaXRpYWxpemVkOiExfTtnLkdiKCJ5dE5ldHdvcmtsZXNzTG9nZ2luZ0luaXRpYWxpemF0aW9uT3B0aW9ucyIsSkkpO2cuZDQ9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5jb25maWdfPW51bGw7bj90aGlzLmNvbmZpZ189bjpJNygpJiYodGhpcy5jb25maWdfPWcuUzkoKSl9aXNSZWFkeSgpeyF0aGlzLmNvbmZpZ18mJkk3KCkmJih0aGlzLmNvbmZpZ189Zy5TOSgpKTtyZXR1cm4hIXRoaXMuY29uZmlnX319O3ZhciB2Z3c9Zy5xaS55dFB1YnN1YlB1YnN1Ykluc3RhbmNlfHxuZXcgQkssQUk9Zy5xaS55dFB1YnN1YlB1YnN1YlN1YnNjcmliZWRLZXlzfHx7fSxLbT1nLnFpLnl0UHVic3ViUHVic3ViVG9waWNUb0tleXN8fHt9LG1nPWcucWkueXRQdWJzdWJQdWJzdWJJc1N5bmNocm9ub3VzfHx7fTtCSy5wcm90b3R5cGUuc3Vic2NyaWJlPUJLLnByb3RvdHlwZS5zdWJzY3JpYmU7QksucHJvdG90eXBlLnVuc3Vic2NyaWJlQnlLZXk9QksucHJvdG90eXBlLmpLO0JLLnByb3RvdHlwZS5wdWJsaXNoPUJLLnByb3RvdHlwZS5XSjtCSy5wcm90b3R5cGUuY2xlYXI9QksucHJvdG90eXBlLmNsZWFyO2cuR2IoInl0UHVic3ViUHVic3ViSW5zdGFuY2UiLHZndyk7Zy5HYigieXRQdWJzdWJQdWJzdWJUb3BpY1RvS2V5cyIsS20pO2cuR2IoInl0UHVic3ViUHVic3ViSXNTeW5jaHJvbm91cyIsbWcpO2cuR2IoInl0UHVic3ViUHVic3ViU3Vic2NyaWJlZEtleXMiLEFJKTt2YXIgb0k9e307Zy5peChnLkZpLGcuRk0pO2cuRT1nLkZpLnByb3RvdHlwZTtnLkUuc3Vic2NyaWJlPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gdGhpcy5xTigpPzA6dGhpcy5ZJC5zdWJzY3JpYmUobixXLEQpfTsKZy5FLnVuc3Vic2NyaWJlPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gdGhpcy5xTigpPyExOnRoaXMuWSQudW5zdWJzY3JpYmUobixXLEQpfTsKZy5FLmpLPWZ1bmN0aW9uKG4pe3JldHVybiB0aGlzLnFOKCk/ITE6dGhpcy5ZJC5qSyhuKX07CmcuRS5XSj1mdW5jdGlvbihuLFcpe3JldHVybiB0aGlzLnFOKCk/ITE6dGhpcy5ZJC5XSi5hcHBseSh0aGlzLlkkLGFyZ3VtZW50cyl9OwpnLkUuaCQ9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgaW4gbil0aGlzLnN1YnNjcmliZShELG5bRF0sVyl9OwpnLkUuTTk9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgaW4gbil0aGlzLnVuc3Vic2NyaWJlKEQsbltEXSxXKX07dmFyIHdvPURhdGUubm93KCkudG9TdHJpbmcoKTt2YXIgYnk9e307Zy5MWD1TeW1ib2woImluamVjdGlvbkRlcHMiKTt2YXIga289Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5rZXk9bn19O3ZhciBwSHI9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLko9bmV3IE1hcDt0aGlzLlc9bmV3IE1hcDt0aGlzLk49bmV3IE1hcH1yZXNvbHZlKG4pe3JldHVybiBuIGluc3RhbmNlb2Yga28/Z0UodGhpcyxuLmtleSxbXSwhMCk6Z0UodGhpcyxuLFtdKX19O2cuQUw9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5uYW1lPW59dG9TdHJpbmcoKXtyZXR1cm5gSW5qZWN0aW9uVG9rZW4oJHt0aGlzLm5hbWV9KWB9fTt2YXIgWDQ7dmFyIEdwPXdpbmRvdzt2YXIgZlg9Zy5sKCJ3ZWJfZW5hYmxlX2xpZmVjeWNsZV9tb25pdG9yaW5nIikmJnRwKCkhPT0wLEhHdD1nLmwoIndlYl9lbmFibGVfbGlmZWN5Y2xlX21vbml0b3JpbmciKTt2YXIgQXZqPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuc2NoZWR1bGVyPWcuRHkoKTt0aGlzLko9bmV3IGcuS1Y7dGhpcy5OPW47Zm9yKGxldCBXPTA7Vzx0aGlzLk4ubGVuZ3RoO1crKyl7bGV0IEQ9dGhpcy5OW1ddO249KCk9PntELkphKCk7dGhpcy5OW1ddLk1KPSEwO3RoaXMuTi5ldmVyeSh2PT52Lk1KPT09ITApJiZ0aGlzLkoucmVzb2x2ZSgpfTsKbGV0IGI9Zy5WeCgwLG4sRC5wcmlvcml0eT8/MCk7dGhpcy5OW1ddPXsuLi5ELEphOm4sam9iSWQ6Yn19fWNhbmNlbCgpe2ZvcihsZXQgbiBvZiB0aGlzLk4pbi5qb2JJZD09PXZvaWQgMHx8bi5NSnx8dGhpcy5zY2hlZHVsZXIuc08obi5qb2JJZCksbi5NSj0hMDt0aGlzLkoucmVzb2x2ZSgpfX07dmFyIGt4aD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuc3RhdGU9Im5vbmUiO3RoaXMucGx1Z2lucz1bXTt0aGlzLko9dm9pZCAwO3RoaXMuWD17fTtmWCYmJG8odGhpcy5zdGF0ZSl9Z2V0IGN1cnJlbnRTdGF0ZSgpe3JldHVybiB0aGlzLnN0YXRlfWluc3RhbGwobil7dGhpcy5wbHVnaW5zLnB1c2gobik7cmV0dXJuIHRoaXN9dW5pbnN0YWxsKC4uLm4pe24uZm9yRWFjaChXPT57Vz10aGlzLnBsdWdpbnMuaW5kZXhPZihXKTtXPi0xJiZ0aGlzLnBsdWdpbnMuc3BsaWNlKFcsMSl9KX10cmFuc2l0aW9uKG4sVyl7ZlgmJnJFKHRoaXMuc3RhdGUpOwp2YXIgRD10aGlzLnRyYW5zaXRpb25zLmZpbmQoYj0+QXJyYXkuaXNBcnJheShiLmZyb20pP2IuZnJvbS5maW5kKHY9PnY9PT10aGlzLnN0YXRlJiZiLnRvPT09bik6Yi5mcm9tPT09dGhpcy5zdGF0ZSYmYi50bz09PW4pOwppZihEKXt0aGlzLlcmJihZS2oodGhpcy5XKSx0aGlzLlc9dm9pZCAwKTtmUjIodGhpcyxuLFcpO3RoaXMuc3RhdGU9bjtmWCYmJG8odGhpcy5zdGF0ZSk7RD1ELmFjdGlvbi5iaW5kKHRoaXMpO2xldCBiPXRoaXMucGx1Z2lucy5maWx0ZXIodj0+dltuXSkubWFwKHY9PnZbbl0pOwpEKFNLQyh0aGlzLGIpLFcpfWVsc2UgdGhyb3cgRXJyb3IoYG5vIHRyYW5zaXRpb24gc3BlY2lmaWVkIGZyb20gJHt0aGlzLnN0YXRlfSB0byAke259YCk7fX07dmFyIG1Fdz1jbGFzcyBleHRlbmRzIGt4aHtjb25zdHJ1Y3Rvcigpe3N1cGVyKCk7dGhpcy5OPW51bGw7dGhpcy5KPTEwO3RoaXMudHJhbnNpdGlvbnM9W3tmcm9tOiJub25lIix0bzoiYXBwbGljYXRpb25fbmF2aWdhdGluZyIsYWN0aW9uOnRoaXMuan0se2Zyb206ImFwcGxpY2F0aW9uX25hdmlnYXRpbmciLHRvOiJub25lIixhY3Rpb246dGhpcy5WfSx7ZnJvbToiYXBwbGljYXRpb25fbmF2aWdhdGluZyIsdG86ImFwcGxpY2F0aW9uX25hdmlnYXRpbmciLGFjdGlvbjooKT0+e319LAp7ZnJvbToibm9uZSIsdG86Im5vbmUiLGFjdGlvbjooKT0+e319XX1qKG4sVyl7dGhpcy5OPWcuY0IoMCwoKT0+e3RoaXMuY3VycmVudFN0YXRlPT09ImFwcGxpY2F0aW9uX25hdmlnYXRpbmciJiZ0aGlzLnRyYW5zaXRpb24oIm5vbmUiKX0sNUUzKTsKbihXPy5ldmVudCl9VihuLFcpe3RoaXMuTiYmKHRhLnNPKHRoaXMuTiksdGhpcy5OPW51bGwpO24oVz8uZXZlbnQpfX0sSnA7dmFyIFV5PVtdO2cuR2IoInl0LmxvZ2dpbmcudHJhbnNwb3J0LmdldFNjcmFwZWRHZWxQYXlsb2FkcyIsZnVuY3Rpb24oKXtyZXR1cm4gVXl9KTt2YXIgbTM9dm9pZCAwLFNaPXZvaWQgMDt2YXIgb2I9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnN0b3JlPXt9O3RoaXMuTj17fX1zdG9yZVBheWxvYWQobixXKXtuPU85KG4pO3RoaXMuc3RvcmVbbl0/dGhpcy5zdG9yZVtuXS5wdXNoKFcpOih0aGlzLk49e30sdGhpcy5zdG9yZVtuXT1bV10pO2cubCgibW9yZV9hY2N1cmF0ZV9nZWxfcGFyc2VyIikmJihXPW5ldyBDdXN0b21FdmVudCgiVFJBTlNQT1JUSU5HX05FV19FVkVOVCIpLHdpbmRvdy5kaXNwYXRjaEV2ZW50KFcpKTtyZXR1cm4gbn1zbWFydEV4dHJhY3RNYXRjaGluZ0VudHJpZXMobil7aWYoIW4ua2V5cy5sZW5ndGgpcmV0dXJuW107dmFyIFc9WkEodGhpcyxuLmtleXMuc3BsaWNlKDAsMSlbMF0pLEQ9W107Zm9yKGxldCBiPTA7YjxXLmxlbmd0aDtiKyspdGhpcy5zdG9yZVtXW2JdXSYmbi5zaXplTGltaXQmJih0aGlzLnN0b3JlW1dbYl1dLmxlbmd0aDw9bi5zaXplTGltaXQ/KEQucHVzaCguLi50aGlzLnN0b3JlW1dbYl1dKSxkZWxldGUgdGhpcy5zdG9yZVtXW2JdXSk6CkQucHVzaCguLi50aGlzLnN0b3JlW1dbYl1dLnNwbGljZSgwLG4uc2l6ZUxpbWl0KSkpO24/LnNpemVMaW1pdCYmRC5sZW5ndGg8bj8uc2l6ZUxpbWl0JiYobi5zaXplTGltaXQtPUQubGVuZ3RoLEQucHVzaCguLi50aGlzLnNtYXJ0RXh0cmFjdE1hdGNoaW5nRW50cmllcyhuKSkpO3JldHVybiBEfWV4dHJhY3RNYXRjaGluZ0VudHJpZXMobil7bj1aQSh0aGlzLG4pO3ZhciBXPVtdO2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7RCsrKXRoaXMuc3RvcmVbbltEXV0mJihXLnB1c2goLi4udGhpcy5zdG9yZVtuW0RdXSksZGVsZXRlIHRoaXMuc3RvcmVbbltEXV0pO3JldHVybiBXfWdldFNlcXVlbmNlQ291bnQobil7bj1aQSh0aGlzLG4pO3ZhciBXPTA7Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKyspVys9dGhpcy5zdG9yZVtuW0RdXT8ubGVuZ3RofHwwO3JldHVybiBXfX07b2IucHJvdG90eXBlLmdldFNlcXVlbmNlQ291bnQ9b2IucHJvdG90eXBlLmdldFNlcXVlbmNlQ291bnQ7Cm9iLnByb3RvdHlwZS5leHRyYWN0TWF0Y2hpbmdFbnRyaWVzPW9iLnByb3RvdHlwZS5leHRyYWN0TWF0Y2hpbmdFbnRyaWVzO29iLnByb3RvdHlwZS5zbWFydEV4dHJhY3RNYXRjaGluZ0VudHJpZXM9b2IucHJvdG90eXBlLnNtYXJ0RXh0cmFjdE1hdGNoaW5nRW50cmllcztvYi5wcm90b3R5cGUuc3RvcmVQYXlsb2FkPW9iLnByb3RvdHlwZS5zdG9yZVBheWxvYWQ7dmFyIHpfdD1uZXcgZy5BTCgiRmluY2hDb25maWdNYW5hZ2VyU2VydmljZSIpO3ZhciBVRXc9djAoImluaXRpYWxfZ2VsX2JhdGNoX3RpbWVvdXQiLDJFMyksWkdaPXYwKCJnZWxfcXVldWVfdGltZW91dF9tYXhfbXMiLDZFNCkseXZTPXYwKCJnZWxfbWluX2JhdGNoX3NpemUiLDUpLEU5PXZvaWQgMCx5Uj1udWxsLG1zPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5YPXRoaXMuSj10aGlzLlc9MDt0aGlzLk49ITF9fSxUZ2k9bmV3IG1zLGxSQz1uZXcgbXMsdDY9bmV3IG1zLEdVPW5ldyBtcyxXcywkQT0hMCxQcz0xLGx5PW5ldyBNYXAsZXk9Zy5xaS55dExvZ2dpbmdUcmFuc3BvcnRUb2tlbnNUb0N0dFRhcmdldElkc198fHt9O2cuR2IoInl0TG9nZ2luZ1RyYW5zcG9ydFRva2Vuc1RvQ3R0VGFyZ2V0SWRzXyIsZXkpO3ZhciBMVT1nLnFpLnl0TG9nZ2luZ1RyYW5zcG9ydFRva2Vuc1RvSnNwYkN0dFRhcmdldElkc198fHt9O2cuR2IoInl0TG9nZ2luZ1RyYW5zcG9ydFRva2Vuc1RvSnNwYkN0dFRhcmdldElkc18iLExVKTt2YXIgUmI9e30senA9ITE7dmFyIGlSPWcucWkueXRMb2dnaW5nR2VsU2VxdWVuY2VJZE9ial98fHt9O2cuR2IoInl0TG9nZ2luZ0dlbFNlcXVlbmNlSWRPYmpfIixpUik7dmFyIG0xPVtdO3ZhciBWNCxLaj1nLnFpLnl0TG9nZ2luZ0RvY0RvY3VtZW50Tm9uY2VfO0tqfHwoS2o9Zy5SSSgxNiksZy5HYigieXRMb2dnaW5nRG9jRG9jdW1lbnROb25jZV8iLEtqKSk7VjQ9S2o7dmFyIEZfVT17Qnc6MCxGNjoxLFdROjIsTjM6MyxxdDo0LFlTOjUsUWM6NixMTTo3LEk2Ojgsc0M6OSxaTToxMCxiUzoxMSwwOiJERUZBVUxUIiwxOiJDSEFUIiwyOiJDT05WRVJTQVRJT05TIiwzOiJNSU5JUExBWUVSIiw0OiJESUFMT0ciLDU6IlZPWiIsNjoiTVVTSUNfV0FUQ0hfVEFCUyIsNzoiU0hBUkUiLDg6IlBVU0hfTk9USUZJQ0FUSU9OUyIsOToiUklDSF9HUklEX1dBVENIIiwxMDoiUElDVFVSRV9JTl9QSUNUVVJFIiwxMToiTUVESUFfQ0xJRU5UIn07dmFyIGp6Wj0xLGxSPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuTj1ufWdldEFzSnNvbigpe3ZhciBuPXt9O3RoaXMuTi50cmFja2luZ1BhcmFtcyE9PXZvaWQgMD9uLnRyYWNraW5nUGFyYW1zPXRoaXMuTi50cmFja2luZ1BhcmFtczoobi52ZVR5cGU9dGhpcy5OLnZlVHlwZSx0aGlzLk4udmVDb3VudGVyIT09dm9pZCAwJiYobi52ZUNvdW50ZXI9dGhpcy5OLnZlQ291bnRlciksdGhpcy5OLmVsZW1lbnRJbmRleCE9PXZvaWQgMCYmKG4uZWxlbWVudEluZGV4PXRoaXMuTi5lbGVtZW50SW5kZXgpKTt0aGlzLk4uZGF0YUVsZW1lbnQhPT12b2lkIDAmJihuLmRhdGFFbGVtZW50PXRoaXMuTi5kYXRhRWxlbWVudC5nZXRBc0pzb24oKSk7dGhpcy5OLnlvdXR1YmVEYXRhIT09dm9pZCAwJiYobi55b3V0dWJlRGF0YT10aGlzLk4ueW91dHViZURhdGEpO3RoaXMuTi5pc0NvdW50ZXJmYWN0dWFsJiYobi5pc0NvdW50ZXJmYWN0dWFsPSEwKTtyZXR1cm4gbn1nZXRBc0pzcGIoKXt2YXIgbj1uZXcgcVlTOwp0aGlzLk4udHJhY2tpbmdQYXJhbXMhPT12b2lkIDA/bi5zZXRUcmFja2luZ1BhcmFtcyh0aGlzLk4udHJhY2tpbmdQYXJhbXMpOih0aGlzLk4udmVUeXBlIT09dm9pZCAwJiZveihuLDIsZy55UCh0aGlzLk4udmVUeXBlKSksdGhpcy5OLnZlQ291bnRlciE9PXZvaWQgMCYmb3oobiw2LGcueVAodGhpcy5OLnZlQ291bnRlcikpLHRoaXMuTi5lbGVtZW50SW5kZXghPT12b2lkIDAmJm96KG4sMyxnLnlQKHRoaXMuTi5lbGVtZW50SW5kZXgpKSx0aGlzLk4uaXNDb3VudGVyZmFjdHVhbCYmb3oobiw1LE9fKCEwKSkpO2lmKHRoaXMuTi5kYXRhRWxlbWVudCE9PXZvaWQgMCl7dmFyIFc9dGhpcy5OLmRhdGFFbGVtZW50LmdldEFzSnNwYigpOyQ5KG4scVlTLDcsVyl9dGhpcy5OLnlvdXR1YmVEYXRhIT09dm9pZCAwJiYkOShuLGU0dyw4LHRoaXMuTi5qc3BiWW91dHViZURhdGEpO3JldHVybiBufXRvU3RyaW5nKCl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMuZ2V0QXNKc29uKCkpfWlzQ2xpZW50VmUoKXtyZXR1cm4hdGhpcy5OLnRyYWNraW5nUGFyYW1zJiYKISF0aGlzLk4udmVUeXBlfWdldExvZ2dpbmdEaXJlY3RpdmVzKCl7cmV0dXJuIHRoaXMuTi5sb2dnaW5nRGlyZWN0aXZlc319O2cuR2IoInl0X2xvZ2dpbmdfc2NyZWVuLmdldFJvb3RWZVR5cGUiLEZSKTtnLkdiKCJ5dF9sb2dnaW5nX3NjcmVlbi5nZXRDdXJyZW50Q3NuIixnLlJ2KTtnLkdiKCJ5dF9sb2dnaW5nX3NjcmVlbi5nZXRDdHRBdXRoSW5mbyIsUTQpO2cuR2IoInl0X2xvZ2dpbmdfc2NyZWVuLnNldEN1cnJlbnRTY3JlZW4iLGNzKTt2YXIgUl9NPSJhYnNvbHV0ZV9leHBlcmltZW50cyBhcHAgY29uZGl0aW9uYWxfZXhwZXJpbWVudHMgZGVidWdjc3MgZGVidWdqcyBleHBmbGFnIGZvcmNlZF9leHBlcmltZW50cyBwYmogcGJqcmVsb2FkIHNiYiBzcGYgc3BmcmVsb2FkIHNyX2Juc19hZGRyZXNzIHN0dGljayIuc3BsaXQoIiAiKTt2YXIgayRiPVt7RzE6bj0+YENhbm5vdCByZWFkIHByb3BlcnR5ICcke24ua2V5fSdgLApZejp7RXJyb3I6W3t3YjovKFBlcm1pc3Npb24gZGVuaWVkKSB0byBhY2Nlc3MgcHJvcGVydHkgIihbXiddKykiLyxncm91cHM6WyJyZWFzb24iLCJrZXkiXX1dLFR5cGVFcnJvcjpbe3diOi9DYW5ub3QgcmVhZCBwcm9wZXJ0eSAnKFteJ10rKScgb2YgKG51bGx8dW5kZWZpbmVkKS8sZ3JvdXBzOlsia2V5IiwidmFsdWUiXX0se3diOi9cdTY1ZTBcdTZjZDVcdTgzYjdcdTUzZDZcdTY3MmFcdTViOWFcdTRlNDlcdTYyMTYgKG51bGx8dW5kZWZpbmVkKSBcdTVmMTVcdTc1MjhcdTc2ODRcdTVjNWVcdTYwMjdcdTIwMWMoW15cdTIwMWRdKylcdTIwMWQvLGdyb3VwczpbInZhbHVlIiwia2V5Il19LHt3YjovXHVjODE1XHVjNzU4XHViNDE4XHVjOWMwIFx1YzU0YVx1Yzc0YyBcdWI2MTBcdWIyOTQgKG51bGx8dW5kZWZpbmVkKSBcdWNjMzhcdWM4NzBcdWM3NzggJyhbXiddKyknIFx1YzE4ZFx1YzEzMVx1Yzc0NCBcdWFjMDBcdWM4MzhcdWM2MmMgXHVjMjE4IFx1YzVjNlx1YzJiNVx1YjJjOFx1YjJlNC4vLApncm91cHM6WyJ2YWx1ZSIsImtleSJdfSx7d2I6L05vIHNlIHB1ZWRlIG9idGVuZXIgbGEgcHJvcGllZGFkICcoW14nXSspJyBkZSByZWZlcmVuY2lhIG51bGEgbyBzaW4gZGVmaW5pci8sZ3JvdXBzOlsia2V5Il19LHt3YjovVW5hYmxlIHRvIGdldCBwcm9wZXJ0eSAnKFteJ10rKScgb2YgKHVuZGVmaW5lZCBvciBudWxsKSByZWZlcmVuY2UvLGdyb3VwczpbImtleSIsInZhbHVlIl19LHt3YjovKG51bGwpIGlzIG5vdCBhbiBvYmplY3QgXChldmFsdWF0aW5nICcoPzooW14uXSspXC4pPyhbXiddKyknXCkvLGdyb3VwczpbInZhbHVlIiwiYmFzZSIsImtleSJdfV19fSx7RzE6bj0+YENhbm5vdCBjYWxsICcke24ua2V5fSdgLApZejp7VHlwZUVycm9yOlt7d2I6Lyg/OihbXiBdKyk/XC4pPyhbXiBdKykgaXMgbm90IGEgZnVuY3Rpb24vLGdyb3VwczpbImJhc2UiLCJrZXkiXX0se3diOi8oW14gXSspIGNhbGxlZCBvbiAobnVsbCBvciB1bmRlZmluZWQpLyxncm91cHM6WyJrZXkiLCJ2YWx1ZSJdfSx7d2I6L09iamVjdCAoLiopIGhhcyBubyBtZXRob2QgJyhbXiBdKyknLyxncm91cHM6WyJiYXNlIiwia2V5Il19LHt3YjovT2JqZWN0IGRvZXNuJ3Qgc3VwcG9ydCBwcm9wZXJ0eSBvciBtZXRob2QgJyhbXiBdKyknLyxncm91cHM6WyJrZXkiXX0se3diOi9cdTMwYWFcdTMwZDZcdTMwYjhcdTMwYTdcdTMwYWZcdTMwYzhcdTMwNmYgJyhbXiddKyknIFx1MzBkN1x1MzBlZFx1MzBkMVx1MzBjNlx1MzBhM1x1MzA3ZVx1MzA1Zlx1MzA2Zlx1MzBlMVx1MzBiZFx1MzBjM1x1MzBjOVx1MzA5Mlx1MzBiNVx1MzBkZFx1MzBmY1x1MzBjOFx1MzA1N1x1MzA2Nlx1MzA0NFx1MzA3ZVx1MzA1Ylx1MzA5My8sZ3JvdXBzOlsia2V5Il19LAp7d2I6L1x1YWMxY1x1Y2NiNFx1YWMwMCAnKFteJ10rKScgXHVjMThkXHVjMTMxXHVjNzc0XHViMDk4IFx1YmE1NFx1YzExY1x1YjRkY1x1Yjk3YyBcdWM5YzBcdWM2ZDBcdWQ1NThcdWM5YzAgXHVjNTRhXHVjMmI1XHViMmM4XHViMmU0Li8sZ3JvdXBzOlsia2V5Il19XX19LHtHMTpuPT5gJHtuLmtleX0gaXMgbm90IGRlZmluZWRgLApZejp7UmVmZXJlbmNlRXJyb3I6W3t3YjovKC4qKSBpcyBub3QgZGVmaW5lZC8sZ3JvdXBzOlsia2V5Il19LHt3YjovQ2FuJ3QgZmluZCB2YXJpYWJsZTogKC4qKS8sZ3JvdXBzOlsia2V5Il19XX19XTt2YXIgYVJTPXtOOTpbXSxrbzpbe2NhbGxiYWNrOlF6MSx3ZWlnaHQ6NTAwfSx7Y2FsbGJhY2s6Vld4LHdlaWdodDo1MDB9XX07dmFyIGN2aD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMua289W107dGhpcy5OOT1bXX19LHZhO3ZhciBTaT1uZXcgQks7dmFyIElVPW5ldyBTZXQsdFA9MCx4SE09MCxBUD0wLHY5Mj1bXSxibjI9W10sTE5DPVsiUGhhbnRvbUpTIiwiR29vZ2xlYm90IiwiVE8gU1RPUCBUSElTIFNFQ1VSSVRZIFNDQU4gZ28vc2NhbiJdO0RhdGUubm93KCk7dmFyIFpwPWNsYXNzIGV4dGVuZHMgbzd7Y29uc3RydWN0b3Iobil7c3VwZXIoYXJndW1lbnRzKTt0aGlzLmNzbj1ufX0sVG89bmV3IGQzKCJzY3JlZW4tY3JlYXRlZCIsWnApLEM0PVtdLGVUaD1HJGosQmE9MCxVYT1uZXcgTWFwLHk1PW5ldyBNYXAsRWE9bmV3IE1hcDt2YXIgaHIyPWNsYXNze2ZsdXNoKG49W10sVz0hMSl7aWYoZy5sKCJlbmFibGVfY2xpZW50X3N0cmVhbXpfd2ViIikpZm9yKGxldCBEIG9mIG4pbj11NihEKSx0aGlzLk4mJiQ5KG4sT2l4LDIsdGhpcy5OKSxuPXtzZXJpYWxpemVkSW5jcmVtZW50QmF0Y2g6Zy5FQShuLkooKSl9LGcuelUoInN0cmVhbXpJbmNyZW1lbnRlZCIsbix7c2VuZElzb2xhdGVkUGF5bG9hZDpXfSl9fSxYbkM9Y2xhc3MgZXh0ZW5kcyBocjJ7Y29uc3RydWN0b3IoKXtzdXBlcigpfX0sU0hpPWNsYXNzIGV4dGVuZHMgaHIye2NvbnN0cnVjdG9yKG4pe3N1cGVyKCk7dmFyIFc9bmV3IE9peDt2YXIgRD1uZXcgS1VDO0Q9Zy5TRShELDEsImJvdGd1YXJkIik7bj1nLlNFKEQsMixuKTt0aGlzLk49cmUoVyxLVUMsMSxQWmgsbil9fTt2YXIgVnAsSU0yPW5ldyBNYXA7dmFyIFQkYj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bmV3IFFLKG4pfXNldChuLFcsRCl7RD1EIT09dm9pZCAwP0RhdGUubm93KCkrRDp2b2lkIDA7dGhpcy5OLnNldChuLFcsRCl9Z2V0KG4pe3JldHVybiB0aGlzLk4uZ2V0KG4pfXJlbW92ZShuKXt0aGlzLk4ucmVtb3ZlKG4pfX07dmFyIHJTaD1udWxsO3ZhciBzbz0idG9rZW5zIGNvbnNpc3RlbmN5IHNlcnZpY2VfcGFyYW1zIG1zcyBjbGllbnRfbG9jYXRpb24gZW50aXRpZXMgYWRibG9ja19kZXRlY3Rpb24gcmVzcG9uc2VfcmVjZWl2ZWRfY29tbWFuZHMgc3RvcmUgbWFuaWZlc3QgcGxheWVyX3ByZWxvYWQgc2hvcnRzX3ByZWZldGNoIHJlc29sdmVfdXJsX3ByZWZldGNoIi5zcGxpdCgiICIpO3ZhciBzWVU9bmV3IE1hcChbWyJkYXJrIiwiVVNFUl9JTlRFUkZBQ0VfVEhFTUVfREFSSyJdLFsibGlnaHQiLCJVU0VSX0lOVEVSRkFDRV9USEVNRV9MSUdIVCJdXSk7dmFyIERNPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5OPXt9O2lmKHRoaXMuSj1nLm1qKCkpe2xldCBuPWcuU2QoIkNPTlNJU1RFTkNZIik7biYmYVUodGhpcyx7ZW5jcnlwdGVkVG9rZW5KYXJDb250ZW50czpufSl9fWhhbmRsZVJlc3BvbnNlKG4sVyl7aWYoIVcpdGhyb3cgRXJyb3IoInJlcXVlc3QgbmVlZHMgdG8gYmUgcGFzc2VkIGludG8gQ29uc2lzdGVuY3lTZXJ2aWNlIik7Vz1XLmlubmVyVHViZVJlcXVlc3QuY29udGV4dD8ucmVxdWVzdD8uY29uc2lzdGVuY3lUb2tlbkphcnN8fFtdOyhuPW4ucmVzcG9uc2VDb250ZXh0Py5jb25zaXN0ZW5jeVRva2VuSmFyKSYmdGhpcy5yZXBsYWNlKFcsbil9cmVwbGFjZShuLFcpe2ZvcihsZXQgRCBvZiBuKWRlbGV0ZSB0aGlzLk5bRC5lbmNyeXB0ZWRUb2tlbkphckNvbnRlbnRzXTthVSh0aGlzLFcpfX07dmFyIHh6cj13aW5kb3cubG9jYXRpb24uaG9zdG5hbWUuc3BsaXQoIi4iKS5zbGljZSgtMikuam9pbigiLiIpLGIkPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5XPS0xO3ZhciBuPWcuQXIoIkxPQ0FUSU9OX1BMQVlBQklMSVRZX1RPS0VOIik7Zy5BcigiSU5ORVJUVUJFX0NMSUVOVF9OQU1FIik9PT0iVFZIVE1MNSImJih0aGlzLmxvY2FsU3RvcmFnZT1uQih0aGlzKSkmJihuPXRoaXMubG9jYWxTdG9yYWdlLmdldCgieXQtbG9jYXRpb24tcGxheWFiaWxpdHktdG9rZW4iKSk7biYmKHRoaXMubG9jYXRpb25QbGF5YWJpbGl0eVRva2VuPW4sdGhpcy5KPXRoaXMuTj12b2lkIDApfXN0YXRpYyBnZXRJbnN0YW5jZSgpe09DPWcucnIoInl0LmNsaWVudExvY2F0aW9uU2VydmljZS5pbnN0YW5jZSIpO09DfHwoT0M9bmV3IGIkLGcuR2IoInl0LmNsaWVudExvY2F0aW9uU2VydmljZS5pbnN0YW5jZSIsT0MpKTtyZXR1cm4gT0N9c2V0TG9jYXRpb25PbklubmVyVHViZUNvbnRleHQobil7bi5jbGllbnR8fAoobi5jbGllbnQ9e30pO2lmKHRoaXMuTiluLmNsaWVudC5sb2NhdGlvbkluZm98fChuLmNsaWVudC5sb2NhdGlvbkluZm89e30pLG4uY2xpZW50LmxvY2F0aW9uSW5mby5sYXRpdHVkZUU3PU1hdGguZmxvb3IodGhpcy5OLmNvb3Jkcy5sYXRpdHVkZSoxRTcpLG4uY2xpZW50LmxvY2F0aW9uSW5mby5sb25naXR1ZGVFNz1NYXRoLmZsb29yKHRoaXMuTi5jb29yZHMubG9uZ2l0dWRlKjFFNyksbi5jbGllbnQubG9jYXRpb25JbmZvLmhvcml6b250YWxBY2N1cmFjeU1ldGVycz1NYXRoLnJvdW5kKHRoaXMuTi5jb29yZHMuYWNjdXJhY3kpLG4uY2xpZW50LmxvY2F0aW9uSW5mby5mb3JjZUxvY2F0aW9uUGxheWFiaWxpdHlUb2tlblJlZnJlc2g9ITA7ZWxzZSBpZih0aGlzLlh8fHRoaXMubG9jYXRpb25QbGF5YWJpbGl0eVRva2VuKW4uY2xpZW50LmxvY2F0aW9uUGxheWFiaWxpdHlUb2tlbj10aGlzLlh8fHRoaXMubG9jYXRpb25QbGF5YWJpbGl0eVRva2VufWdldFhHZW9IZWFkZXIoKXtpZih0aGlzLkope3ZhciBuPQp0aGlzLko7dmFyIFc9TWF0aC5mbG9vcihuLmNvb3Jkcy5sb25naXR1ZGUqMUU3KTt2YXIgRD1NYXRoLmZsb29yKG4uY29vcmRzLmxhdGl0dWRlKjFFNyk7dmFyIGI9bmV3IGpyMjtEPW96KGIsMSxnLnlQKEQpKTtXPW96KEQsMixnLnlQKFcpKTtEPW5ldyBCRnQ7RD1LbihELDEsMSk7RD1LbihELDIsMTIpO0Q9S24oRCw5LDgpO0Q9SVkoRCwzLG4udGltZXN0YW1wKjFFMyk7bj1veihELDcsZy5BXyhuLmNvb3Jkcy5hY2N1cmFjeSoxRTMpKTtuPUtuKG4sMjUsMik7bj0kOShuLGpyMiw1LFcpO249YHcgJHtnLkVBKEZGaShuKSw0KX1gfWVsc2Ugbj1udWxsO3JldHVybiBufWhhbmRsZVJlc3BvbnNlKG4pe249bi5yZXNwb25zZUNvbnRleHQ/LmxvY2F0aW9uUGxheWFiaWxpdHlUb2tlbjtuIT09dm9pZCAwJiYodGhpcy5sb2NhdGlvblBsYXlhYmlsaXR5VG9rZW49bix0aGlzLko9dGhpcy5OPXZvaWQgMCxnLkFyKCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJUVkhUTUw1Ij8odGhpcy5sb2NhbFN0b3JhZ2U9Cm5CKHRoaXMpKSYmdGhpcy5sb2NhbFN0b3JhZ2Uuc2V0KCJ5dC1sb2NhdGlvbi1wbGF5YWJpbGl0eS10b2tlbiIsbiwxNTU1MkUzKTpJSygiWVRfQ0wiLEpTT04uc3RyaW5naWZ5KHtsb2N0b2s6bn0pLDE1NTUyRTMseHpyLCEwKSl9Y2xlYXJMb2NhdGlvblBsYXlhYmlsaXR5VG9rZW4obil7bj09PSJUVkhUTUw1Ij8odGhpcy5sb2NhbFN0b3JhZ2U9bkIodGhpcykpJiZ0aGlzLmxvY2FsU3RvcmFnZS5yZW1vdmUoInl0LWxvY2F0aW9uLXBsYXlhYmlsaXR5LXRva2VuIik6QXkoIllUX0NMIik7dGhpcy5YPXZvaWQgMDt0aGlzLlchPT0tMSYmKGNsZWFyVGltZW91dCh0aGlzLlcpLHRoaXMuVz0tMSl9Y2xlYXJDdXJyZW50UG9zaXRpb24oKXt0aGlzLko9dGhpcy5OPXZvaWQgMH1nZXRDdXJyZW50UG9zaXRpb25Gcm9tR2VvbG9jYXRpb24obil7aWYoIShuYXZpZ2F0b3ImJm5hdmlnYXRvci5nZW9sb2NhdGlvbiYmbmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbikpcmV0dXJuIFByb21pc2UucmVqZWN0KEVycm9yKCJHZW9sb2NhdGlvbiB1bnN1cHBvcnRlZCIpKTsKdmFyIFc9ITEsRD0xRTQ7Zy5BcigiSU5ORVJUVUJFX0NMSUVOVF9OQU1FIik9PT0iTVdFQiImJihXPSEwLEQ9MTVFMyk7cmV0dXJuIG5ldyBQcm9taXNlKChiLHYpPT57bmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbihrPT57dGhpcy5KPW4/LmFkZFRvSGVhZGVycz9rOnZvaWQgMDt0aGlzLk49aztiKGspfSxrPT57dihrKX0se2VuYWJsZUhpZ2hBY2N1cmFjeTpXLAptYXhpbXVtQWdlOjAsdGltZW91dDpEfSl9KX1jcmVhdGVVbnBsdWdnZWRMb2NhdGlvbkluZm8obil7dmFyIFc9e307Cm49bi5jb29yZHM7bj8ubGF0aXR1ZGUmJihXLmxhdGl0dWRlRTc9TWF0aC5mbG9vcihuLmxhdGl0dWRlKjFFNykpO24/LmxvbmdpdHVkZSYmKFcubG9uZ2l0dWRlRTc9TWF0aC5mbG9vcihuLmxvbmdpdHVkZSoxRTcpKTtuPy5hY2N1cmFjeSYmKFcubG9jYXRpb25SYWRpdXNNZXRlcnM9TWF0aC5yb3VuZChuLmFjY3VyYWN5KSk7cmV0dXJuIFd9Y3JlYXRlTG9jYXRpb25JbmZvKG4pe3ZhciBXPXt9O249bi5jb29yZHM7bj8ubGF0aXR1ZGUmJihXLmxhdGl0dWRlRTc9TWF0aC5mbG9vcihuLmxhdGl0dWRlKjFFNykpO24/LmxvbmdpdHVkZSYmKFcubG9uZ2l0dWRlRTc9TWF0aC5mbG9vcihuLmxvbmdpdHVkZSoxRTcpKTtyZXR1cm4gV319LE9DO3ZhciBMSHI9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLk49e319Y29udGFpbnMobil7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLk4sbil9Z2V0KG4pe2lmKHRoaXMuY29udGFpbnMobikpcmV0dXJuIHRoaXMuTltuXX1zZXQobixXKXt0aGlzLk5bbl09V311Qigpe3JldHVybiBPYmplY3Qua2V5cyh0aGlzLk4pfXJlbW92ZShuKXtkZWxldGUgdGhpcy5OW25dfX07bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5tYXBwaW5ncz1uZXcgTEhyfWdldChuKXthOnt2YXIgVz10aGlzLm1hcHBpbmdzLmdldChuLnRvU3RyaW5nKCkpO3N3aXRjaChXLnR5cGUpe2Nhc2UgIm1hcHBpbmciOm49Vy52YWx1ZTticmVhayBhO2Nhc2UgImZhY3RvcnkiOlc9Vy52YWx1ZSgpO3RoaXMubWFwcGluZ3Muc2V0KG4udG9TdHJpbmcoKSx7dHlwZToibWFwcGluZyIsdmFsdWU6V30pO249VzticmVhayBhO2RlZmF1bHQ6bj1nLnBiKFcsdm9pZCAwKX19cmV0dXJuIG59fTt2YXIgeFY9e1dFQl9VTlBMVUdHRUQ6Il51bnBsdWdnZWQvIixXRUJfVU5QTFVHR0VEX09OQk9BUkRJTkc6Il51bnBsdWdnZWQvIixXRUJfVU5QTFVHR0VEX09QUzoiXnVucGx1Z2dlZC8iLFdFQl9VTlBMVUdHRURfUFVCTElDOiJedW5wbHVnZ2VkLyIsV0VCX0NSRUFUT1I6Il5jcmVhdG9yLyIsV0VCX0tJRFM6Il5raWRzLyIsV0VCX0VYUEVSSU1FTlRTOiJeZXhwZXJpbWVudHMvIixXRUJfTVVTSUM6Il5tdXNpYy8iLFdFQl9SRU1JWDoiXm11c2ljLyIsV0VCX01VU0lDX0VNQkVEREVEX1BMQVlFUjoiXm11c2ljLyIsV0VCX01VU0lDX0VNQkVEREVEX1BMQVlFUjoiXm1haW5fYXBwL3xec2Z2LyJ9O3ZhciBlcjE9Y2xhc3N7RChuLFc9e30sRD11OSl7dmFyIGI9e2NvbnRleHQ6dGhpcy5PKCk/Zy52YihuLmNsaWNrVHJhY2tpbmdQYXJhbXMsITAsITEsZy53KG4/LmNvbW1hbmRNZXRhZGF0YSxwaik/LnVybCx0aGlzLksoVykpOmcudmIobi5jbGlja1RyYWNraW5nUGFyYW1zLCExLHRoaXMuail9O3ZhciB2PXRoaXMuTihuKTtpZih2KXt0aGlzLkooYix2LFcpO3Y9TEIodGhpcy5XKCkpO3ZhciBrPWcudyhuLmNvbW1hbmRNZXRhZGF0YSxwaik/LmFwaVVybDtrJiYodj1rKTt2PVpyKEskKHYpKTtrPXtjb21tYW5kOm4sLi4udGhpcy5WKG4pfTtiPXtpbnB1dDp2LFBpOlV6KHYpLGlubmVyVHViZVJlcXVlc3Q6Yixjb25maWc6a307Yi5jb25maWcuQkc/Yi5jb25maWcuQkcuaWRlbnRpdHk9RDpiLmNvbmZpZy5CRz17aWRlbnRpdHk6RH07KG49dGhpcy5ZKG4pKSYmIWIuY29uZmlnLnJlcXVlc3RLZXkmJihiLmNvbmZpZy5yZXF1ZXN0S2V5PW4pO1cuYWJvcnRTaWduYWwmJihiLlBpLnNpZ25hbD0KVy5hYm9ydFNpZ25hbCk7cmV0dXJuIGJ9Vz1uZXcgZy5ReCgiRXJyb3I6IEZhaWxlZCB0byBjcmVhdGUgUmVxdWVzdCBmcm9tIENvbW1hbmQuIixuKTtnLlhqKFcpfU8oKXtyZXR1cm4hMX1nZXQgaigpe3JldHVybiExfUsoKXt9WSgpe31WKCl7fX0sUEM9Y2xhc3MgZXh0ZW5kcyBlcjF7WCgpe31ZKG4pe2cubCgid2ViX2VuYWJsZV9yZXF1ZXN0X2tleV9raWxsc3dpdGNoIikmJnRoaXMuWChuKTtyZXR1cm4gZy53KG4uY29tbWFuZE1ldGFkYXRhLHBqKT8ucmVxdWVzdEtleT8/dGhpcy5YKG4pfX07dmFyIGdnMT17R0VUX0RBVEFTWU5DX0lEUzpobShjbGFzcyBleHRlbmRzIFBDe0QoKXtyZXR1cm57aW5wdXQ6Ii9nZXREYXRhc3luY0lkc0VuZHBvaW50IixQaTpVeigiL2dldERhdGFzeW5jSWRzRW5kcG9pbnQiLCJHRVQiKSxpbm5lclR1YmVSZXF1ZXN0Ont9fX1XKCl7cmV0dXJuW119Tigpe31KKCl7fX0pfTt2YXIgd189bmV3IGcuQUwoIlJFUVVFU1RfTUFDSElORV9SRUdJU1RSWV9UT0tFTiIpLCREPW5ldyBnLkFMKCJSRVFVRVNUX01BQ0hJTkVfRkFDVE9SWV9UT0tFTiIpLGlkPW5ldyBnLkFMKCJJTkZMSUdIVF9SRVFVRVNUX01BUF9UT0tFTiIpO3ZhciBOUT12MCgieXRjc2lfZGVidWdfbWF4X3NpemUiLDEwMCk7dmFyIEptPXthdXRvX3NlYXJjaDoiTEFURU5DWV9BQ1RJT05fQVVUT19TRUFSQ0giLGFkX3RvX2FkOiJMQVRFTkNZX0FDVElPTl9BRF9UT19BRCIsYWRfdG9fdmlkZW86IkxBVEVOQ1lfQUNUSU9OX0FEX1RPX1ZJREVPIixhcHBfc3RhcnR1cDoiTEFURU5DWV9BQ1RJT05fQVBQX1NUQVJUVVAiLGJyb3dzZToiTEFURU5DWV9BQ1RJT05fQlJPV1NFIixjYXN0X3NwbGFzaDoiTEFURU5DWV9BQ1RJT05fQ0FTVF9TUExBU0giLGNhbGxfdG9fY2FzdDoiTEFURU5DWV9BQ1RJT05fQ0FMTF9UT19DQVNUIixjaGFubmVsX2FjdGl2aXR5OiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX0NIQU5ORUxfQUNUSVZJVFkiLGNoYW5uZWxzOiJMQVRFTkNZX0FDVElPTl9DSEFOTkVMUyIsY2hpcHM6IkxBVEVOQ1lfQUNUSU9OX0NISVBTIixjb21tZXJjZV90cmFuc2FjdGlvbjoiTEFURU5DWV9BQ1RJT05fQ09NTUVSQ0VfVFJBTlNBQ1RJT04iLGRpcmVjdF9wbGF5YmFjazoiTEFURU5DWV9BQ1RJT05fRElSRUNUX1BMQVlCQUNLIiwKZWRpdG9yOiJMQVRFTkNZX0FDVElPTl9FRElUT1IiLGVtYmVkOiJMQVRFTkNZX0FDVElPTl9FTUJFRCIsZW1iZWRfbm9fdmlkZW86IkxBVEVOQ1lfQUNUSU9OX0VNQkVEX05PX1ZJREVPIixlbnRpdHlfa2V5X3NlcmlhbGl6YXRpb25fcGVyZjoiTEFURU5DWV9BQ1RJT05fRU5USVRZX0tFWV9TRVJJQUxJWkFUSU9OX1BFUkYiLGVudGl0eV9rZXlfZGVzZXJpYWxpemF0aW9uX3BlcmY6IkxBVEVOQ1lfQUNUSU9OX0VOVElUWV9LRVlfREVTRVJJQUxJWkFUSU9OX1BFUkYiLGV4cGxvcmU6IkxBVEVOQ1lfQUNUSU9OX0VYUExPUkUiLGZhdm9yaXRlczoiTEFURU5DWV9BQ1RJT05fRkFWT1JJVEVTIixob21lOiJMQVRFTkNZX0FDVElPTl9IT01FIixpbmJvYXJkaW5nOiJMQVRFTkNZX0FDVElPTl9JTkJPQVJESU5HIixsYW5kaW5nOiJMQVRFTkNZX0FDVElPTl9MQU5ESU5HIixsZWFybmluZzoiTEFURU5DWV9BQ1RJT05fTEVBUk5JTkciLGxlYXJuaW5nX2pvdXJuZXlfYnJvd3NlOiJMQVRFTkNZX0FDVElPTl9MRUFSTklOR19KT1VSTkVZX0JST1dTRSIsCmxlYXJuaW5nX2pvdXJuZXlfd2F0Y2g6IkxBVEVOQ1lfQUNUSU9OX0xFQVJOSU5HX0pPVVJORVlfV0FUQ0giLGxpYnJhcnk6IkxBVEVOQ1lfQUNUSU9OX0xJQlJBUlkiLGxpdmU6IkxBVEVOQ1lfQUNUSU9OX0xJVkUiLGxpdmVfcGFnaW5hdGlvbjoiTEFURU5DWV9BQ1RJT05fTElWRV9QQUdJTkFUSU9OIixtYW5hZ2VtZW50OiJMQVRFTkNZX0FDVElPTl9NQU5BR0VNRU5UIixtaW5pX2FwcDoiTEFURU5DWV9BQ1RJT05fTUlOSV9BUFBfUExBWSIsbm90aWZpY2F0aW9uX3NldHRpbmdzOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX05PVElGSUNBVElPTl9TRVRUSU5HUyIsb25ib2FyZGluZzoiTEFURU5DWV9BQ1RJT05fT05CT0FSRElORyIscGFyZW50X3Byb2ZpbGVfc2V0dGluZ3M6IkxBVEVOQ1lfQUNUSU9OX0tJRFNfUEFSRU5UX1BST0ZJTEVfU0VUVElOR1MiLHBhcmVudF90b29sc19jb2xsZWN0aW9uOiJMQVRFTkNZX0FDVElPTl9QQVJFTlRfVE9PTFNfQ09MTEVDVElPTiIscGFyZW50X3Rvb2xzX2Rhc2hib2FyZDoiTEFURU5DWV9BQ1RJT05fUEFSRU5UX1RPT0xTX0RBU0hCT0FSRCIsCnBsYXllcl9hdHQ6IkxBVEVOQ1lfQUNUSU9OX1BMQVlFUl9BVFRFU1RBVElPTiIscHJlYnVmZmVyOiJMQVRFTkNZX0FDVElPTl9QUkVCVUZGRVIiLHByZWZldGNoOiJMQVRFTkNZX0FDVElPTl9QUkVGRVRDSCIscHJvZmlsZV9zZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fS0lEU19QUk9GSUxFX1NFVFRJTkdTIixwcm9maWxlX3N3aXRjaGVyOiJMQVRFTkNZX0FDVElPTl9MT0dJTiIscHJvamVjdHM6IkxBVEVOQ1lfQUNUSU9OX1BST0pFQ1RTIixyZWVsX3dhdGNoOiJMQVRFTkNZX0FDVElPTl9SRUVMX1dBVENIIixyZXN1bHRzOiJMQVRFTkNZX0FDVElPTl9SRVNVTFRTIixyZWQ6IkxBVEVOQ1lfQUNUSU9OX1BSRU1JVU1fUEFHRV9HRVRfQlJPV1NFIixwcmVtaXVtOiJMQVRFTkNZX0FDVElPTl9QUkVNSVVNX1BBR0VfR0VUX0JST1dTRSIscHJlbWl1bV9saXRlX3Vwc2VsbDoiTEFURU5DWV9BQ1RJT05fUFJFTUlVTV9MSVRFX1VQU0VMTCIscHJpdmFjeV9wb2xpY3k6IkxBVEVOQ1lfQUNUSU9OX0ZBTUlMWV9DRU5URVJfUFJJVkFDWV9QT0xJQ1kiLApyZXZpZXc6IkxBVEVOQ1lfQUNUSU9OX1JFVklFVyIsc2VhcmNoX292ZXJ2aWV3X2Fuc3dlcjoiTEFURU5DWV9BQ1RJT05fU0VBUkNIX09WRVJWSUVXX0FOU1dFUiIsc2VhcmNoX3VpOiJMQVRFTkNZX0FDVElPTl9TRUFSQ0hfVUkiLHNlYXJjaF9zdWdnZXN0OiJMQVRFTkNZX0FDVElPTl9TVUdHRVNUIixzZWFyY2hfemVyb19zdGF0ZToiTEFURU5DWV9BQ1RJT05fU0VBUkNIX1pFUk9fU1RBVEUiLHNlY3JldF9jb2RlOiJMQVRFTkNZX0FDVElPTl9LSURTX1NFQ1JFVF9DT0RFIixzd2l0Y2hwbGFuOiJMQVRFTkNZX0FDVElPTl9VTlBMVUdHRURfU1dJVENIX1BMQU4iLHNlZWs6IkxBVEVOQ1lfQUNUSU9OX1BMQVlFUl9TRUVLIixzZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fU0VUVElOR1MiLHN0b3JlOiJMQVRFTkNZX0FDVElPTl9TVE9SRSIsc3VwZXJ2aXNpb25fZGFzaGJvYXJkOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX1NVUEVSVklTSU9OX0RBU0hCT0FSRCIsYmVkdGltZV9yZW1pbmRlcl9zZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9CRURUSU1FX1JFTUlOREVSX1NFVFRJTkdTIiwKYnJlYWtfcmVtaW5kZXJfc2V0dGluZ3M6IkxBVEVOQ1lfQUNUSU9OX0ZBTUlMWV9DRU5URVJfQlJFQUtfUkVNSU5ERVJfU0VUVElOR1MiLHN1cGVydmlzaW9uX3NldHRpbmdzX2Rhc2hib2FyZDoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9TVVBFUlZJU0lPTl9TRVRUSU5HU19EQVNIQk9BUkQiLHRpbWVfbWFuYWdlbWVudDoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9USU1FX01BTkFHRU1FTlQiLHVwZGF0ZV9wcm9maWxlOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX1VQREFURV9QUk9GSUxFIix2aWV3aW5nX3Blcm1pc3Npb25zOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX1ZJRVdJTkdfUEVSTUlTU0lPTlMiLHNob3J0c19zZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9TSE9SVFNfU0VUVElOR1MiLHByaXZhY3lfc2V0dGluZ3M6IkxBVEVOQ1lfQUNUSU9OX0ZBTUlMWV9DRU5URVJfUFJJVkFDWV9TRVRUSU5HUyIsdGVueDoiTEFURU5DWV9BQ1RJT05fVEVOWCIsCnZpZGVvX3ByZXZpZXc6IkxBVEVOQ1lfQUNUSU9OX1ZJREVPX1BSRVZJRVciLHZpZGVvX3RvX2FkOiJMQVRFTkNZX0FDVElPTl9WSURFT19UT19BRCIsd2F0Y2g6IkxBVEVOQ1lfQUNUSU9OX1dBVENIIix3YXRjaF9pdF9hZ2FpbjoiTEFURU5DWV9BQ1RJT05fS0lEU19XQVRDSF9JVF9BR0FJTiIsIndhdGNoLHdhdGNoNyI6IkxBVEVOQ1lfQUNUSU9OX1dBVENIIiwid2F0Y2gsd2F0Y2g3X2h0bWw1IjoiTEFURU5DWV9BQ1RJT05fV0FUQ0giLCJ3YXRjaCx3YXRjaDdhZCI6IkxBVEVOQ1lfQUNUSU9OX1dBVENIIiwid2F0Y2gsd2F0Y2g3YWRfaHRtbDUiOiJMQVRFTkNZX0FDVElPTl9XQVRDSCIsd25fY29tbWVudHM6IkxBVEVOQ1lfQUNUSU9OX0xPQURfQ09NTUVOVFMiLHd3X3JxczoiTEFURU5DWV9BQ1RJT05fV0hPX0lTX1dBVENISU5HIix2b2ljZV9hc3Npc3RhbnQ6IkxBVEVOQ1lfQUNUSU9OX1ZPSUNFX0FTU0lTVEFOVCIsY2FzdF9sb2FkX2J5X2VudGl0eV90b193YXRjaDoiTEFURU5DWV9BQ1RJT05fQ0FTVF9MT0FEX0JZX0VOVElUWV9UT19XQVRDSCIsCm5ldHdvcmtsZXNzX3BlcmZvcm1hbmNlOiJMQVRFTkNZX0FDVElPTl9ORVRXT1JLTEVTU19QRVJGT1JNQU5DRSIsZ2VsX2NvbXByZXNzaW9uOiJMQVRFTkNZX0FDVElPTl9HRUxfQ09NUFJFU1NJT04iLGdlbF9qc3BiX3NlcmlhbGl6ZToiTEFURU5DWV9BQ1RJT05fR0VMX0pTUEJfU0VSSUFMSVpFIixhdHRlc3RhdGlvbl9jaGFsbGVuZ2VfZmV0Y2g6IkxBVEVOQ1lfQUNUSU9OX0FUVEVTVEFUSU9OX0NIQUxMRU5HRV9GRVRDSCJ9OwpPYmplY3QuYXNzaWduKEptLHsiYW5hbHl0aWNzLmV4cGxvcmUiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0FOQUxZVElDU19FWFBMT1JFIiwiYXJ0aXN0LmFuYWx5dGljcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQVJUSVNUX0FOQUxZVElDUyIsImFydGlzdC5ldmVudHMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0FSVElTVF9DT05DRVJUUyIsImFydGlzdC5wcmVzc2tpdCI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQVJUSVNUX1BST0ZJTEUiLCJhc3NldC5jbGFpbWVkX3ZpZGVvcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0NMQUlNRURfVklERU9TIiwiYXNzZXQuY29tcG9zaXRpb24iOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19BU1NFVF9DT01QT1NJVElPTiIsImFzc2V0LmNvbXBvc2l0aW9uX293bmVyc2hpcCI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0NPTVBPU0lUSU9OX09XTkVSU0hJUCIsImFzc2V0LmNvbXBvc2l0aW9uX3BvbGljeSI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0NPTVBPU0lUSU9OX1BPTElDWSIsCiJhc3NldC5lbWJlZHMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19BU1NFVF9FTUJFRFMiLCJhc3NldC5oaXN0b3J5IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVNTRVRfSElTVE9SWSIsImFzc2V0Lmlzc3VlcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0lTU1VFUyIsImFzc2V0LmxpY2Vuc2VzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVNTRVRfTElDRU5TRVMiLCJhc3NldC5tZXRhZGF0YSI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX01FVEFEQVRBIiwiYXNzZXQub3duZXJzaGlwIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVNTRVRfT1dORVJTSElQIiwiYXNzZXQucG90ZW50aWFsX2VtYmVkcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX1BPVEVOVElBTF9FTUJFRFMiLCJhc3NldC5wb2xpY3kiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19BU1NFVF9QT0xJQ1kiLCJhc3NldC5yZWZlcmVuY2VzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVNTRVRfUkVGRVJFTkNFUyIsCiJhc3NldC5zaGFyZXMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19BU1NFVF9TSEFSRVMiLCJhc3NldC5zb3VuZF9yZWNvcmRpbmdzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVNTRVRfU09VTkRfUkVDT1JESU5HUyIsImFzc2V0X2dyb3VwLmFzc2V0cyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0dST1VQX0FTU0VUUyIsImFzc2V0X2dyb3VwLmNhbXBhaWducyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0dST1VQX0NBTVBBSUdOUyIsImFzc2V0X2dyb3VwLmNsYWltZWRfdmlkZW9zIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVNTRVRfR1JPVVBfQ0xBSU1FRF9WSURFT1MiLCJhc3NldF9ncm91cC5tZXRhZGF0YSI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0dST1VQX01FVEFEQVRBIiwic29uZy5hbmFseXRpY3MiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1NPTkdfQU5BTFlUSUNTIixjcmVhdG9yX2NoYW5uZWxfZGFzaGJvYXJkOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NIQU5ORUxfREFTSEJPQVJEIiwKImNoYW5uZWwuYW5hbHl0aWNzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DSEFOTkVMX0FOQUxZVElDUyIsY2hhbm5lbF9hcHBlYWw6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ0hBTk5FTF9BUFBFQUwiLCJjaGFubmVsLmNvbW1lbnRzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DSEFOTkVMX0NPTU1FTlRTIiwiY2hhbm5lbC5jb250ZW50IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DT05URU5UIiwiY2hhbm5lbC5jb250ZW50LnBvc3RzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9QT1NUX0xJU1QiLCJjaGFubmVsLmNvbnRlbnQucHJvbW90aW9ucyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfUFJPTU9USU9OX0xJU1QiLCJjaGFubmVsLmNvcHlyaWdodCI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ0hBTk5FTF9DT1BZUklHSFQiLCJjaGFubmVsLmVkaXRpbmciOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NIQU5ORUxfRURJVElORyIsImNoYW5uZWwubW9uZXRpemF0aW9uIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DSEFOTkVMX01PTkVUSVpBVElPTiIsCiJjaGFubmVsLm11c2ljIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DSEFOTkVMX01VU0lDIiwiY2hhbm5lbC5tdXNpY19zdG9yZWZyb250IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DSEFOTkVMX01VU0lDX1NUT1JFRlJPTlQiLCJjaGFubmVsLnBsYXlsaXN0cyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ0hBTk5FTF9QTEFZTElTVFMiLCJjaGFubmVsLnRyYW5zbGF0aW9ucyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ0hBTk5FTF9UUkFOU0xBVElPTlMiLCJjaGFubmVsLnZpZGVvcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ0hBTk5FTF9WSURFT1MiLCJjaGFubmVsLmxpdmVfc3RyZWFtaW5nIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9MSVZFX1NUUkVBTUlORyIsImRpYWxvZy5jb3B5cmlnaHRfc3RyaWtlcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfRElBTE9HX0NPUFlSSUdIVF9TVFJJS0VTIiwiZGlhbG9nLnZpZGVvX2NvcHlyaWdodCI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfRElBTE9HX1ZJREVPX0NPUFlSSUdIVCIsCiJkaWFsb2cudXBsb2FkcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfRElBTE9HX1VQTE9BRFMiLG93bmVyOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19EQVNIQk9BUkQiLCJvd25lci5hbGxvd2xpc3QiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19BTExPV0xJU1QiLCJvd25lci5hbmFseXRpY3MiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19BTkFMWVRJQ1MiLCJvd25lci5hcnRfdHJhY2tzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVJUX1RSQUNLUyIsIm93bmVyLmFzc2V0cyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUUyIsIm93bmVyLmFzc2V0X2dyb3VwcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0dST1VQUyIsIm93bmVyLmJ1bGsiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19CVUxLX0hJU1RPUlkiLCJvd25lci5jYW1wYWlnbnMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19DQU1QQUlHTlMiLAoib3duZXIuY2hhbm5lbF9pbnZpdGVzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQ0hBTk5FTF9JTlZJVEVTIiwib3duZXIuY2hhbm5lbHMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19DSEFOTkVMUyIsIm93bmVyLmNsYWltZWRfdmlkZW9zIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQ0xBSU1FRF9WSURFT1MiLCJvd25lci5jbGFpbXMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19NQU5VQUxfQ0xBSU1JTkciLCJvd25lci5jbGFpbXMubWFudWFsIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfTUFOVUFMX0NMQUlNSU5HIiwib3duZXIuZGVsaXZlcnkiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19DT05URU5UX0RFTElWRVJZIiwib3duZXIuZGVsaXZlcnlfdGVtcGxhdGVzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfREVMSVZFUllfVEVNUExBVEVTIiwib3duZXIuaXNzdWVzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfSVNTVUVTIiwKIm93bmVyLmxpY2Vuc2VzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfTElDRU5TRVMiLCJvd25lci5waXRjaF9tdXNpYyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX1BJVENIX01VU0lDIiwib3duZXIucG9saWNpZXMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19QT0xJQ0lFUyIsIm93bmVyLnJlbGVhc2VzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfUkVMRUFTRVMiLCJvd25lci5yZXBvcnRzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfUkVQT1JUUyIsIm93bmVyLnZpZGVvcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX1ZJREVPUyIsInBsYXlsaXN0LnZpZGVvcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfUExBWUxJU1RfVklERU9fTElTVCIsInBvc3QuY29tbWVudHMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1BPU1RfQ09NTUVOVFMiLCJwb3N0LmVkaXQiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1BPU1RfRURJVCIsInByb21vdGlvbi5lZGl0IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9QUk9NT1RJT05fRURJVCIsCiJ2aWRlby5hbmFseXRpY3MiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1ZJREVPX0FOQUxZVElDUyIsInZpZGVvLmNsYWltcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfVklERU9fQ0xBSU1TIiwidmlkZW8uY29tbWVudHMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1ZJREVPX0NPTU1FTlRTIiwidmlkZW8uY29weXJpZ2h0IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9WSURFT19DT1BZUklHSFQiLCJ2aWRlby5lZGl0IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9WSURFT19FRElUIiwidmlkZW8uZWRpdG9yIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9WSURFT19FRElUT1IiLCJ2aWRlby5lZGl0b3JfYXN5bmMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1ZJREVPX0VESVRPUl9BU1lOQyIsInZpZGVvLmxpdmVfc2V0dGluZ3MiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1ZJREVPX0xJVkVfU0VUVElOR1MiLCJ2aWRlby5saXZlX3N0cmVhbWluZyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfVklERU9fTElWRV9TVFJFQU1JTkciLAoidmlkZW8ubW9uZXRpemF0aW9uIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9WSURFT19NT05FVElaQVRJT04iLCJ2aWRlby5wb2xpY3kiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1ZJREVPX1BPTElDWSIsInZpZGVvLnJpZ2h0c19tYW5hZ2VtZW50IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9WSURFT19SSUdIVFNfTUFOQUdFTUVOVCIsInZpZGVvLnRyYW5zbGF0aW9ucyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfVklERU9fVFJBTlNMQVRJT05TIn0pO3ZhciBNUT1jbGFzcyBleHRlbmRzIG83e2NvbnN0cnVjdG9yKG4sVyl7c3VwZXIoYXJndW1lbnRzKTt0aGlzLk49bjt0aGlzLnRpbWVyPVd9fSxPbnQ9bmV3IGQzKCJhZnQtcmVjb3JkZWQiLE1RKTt2YXIgWEZ0PXthX2JpZF9mOjQ4MixhX2JpZF9zOjQ4MSxhYToyLGFhY2k6NDMzLGFhY3I6NDM0LGFiX3I6MTEsYWJfczoxMCxhYmM6NTc5LGFjOjE5MyxhY2M6NTExLGFjaTo1MTIsYWRfMF9lOjEzLGFkXzBfczoxMixhZF9ibDoxNCxhZF9pOjE1LGFkX21iczoxNixhZF9wcjo1NjIsYWRfdmk6MTcsYWRfdmlyOjE4LGFkYToxOTQsYWRiY19mOjU3NixhZGM6MTk1LGFkZmxfZjoxOSxhZGZsX3M6MjAsYWRsOjE5NixhZG5zOjE5NyxhZHNfZToyMixhZHNfczoyMSxhZmI6NTEzLGFmYzoxOTgsYWZsOjE5OSxhZnQ6MSxhaGI6NTE0LGFpOjIwMCxhaXNfYTo1MDMsYWlzX3I6NTAyLGFpc2Y6MjMsYWlzaToyNCxhaXNyOjI1LGFpc3M6MjYsYW1sOjIwMSxhcGFfYToyMDMsYXBhX2I6MjAyLGFwYnM6MjA0LGFwcF9sOjMsYXBwX3NpOjYxMixhcHBfc2llOjY2MSxhcHBkZWxfaToyNyxhcHBpX2U6NjE2LGFwcGlfczo2MTUsYXByOjIwNSxhcHJlczo0MzYsYXBzdXM6NDM1LGFyOjIwNixhcjQwazoyOCwKYXJiX2Y6NTA0LGFyYzoyMDcsYXJlcToyMDgsYXJmYjoyOSxhcmk6NCxhcnI6MjA5LGFycmg6MzAsYXNjZTo3ODgsYXNjZjo3ODksYXNjczo3ODcsYXNpc2ZiOjMxLGFzaXNyOjMyLGFzaXNyaDozMyxhc2lzczozNCxhc3I6MjEwLGFzeW5jX29yY2hfdF9hY3Q6NzEyLGFzeW5jX29yY2hfdF9ub3RpZnk6NzExLGF0cnI6NTE1LGF0cnM6NTE2LGF0dF9lOjIxMSxhdHRfZjoyMTIsYXR0X2ZjOjc5NyxhdHRfZnJyOjc5NixhdHRfZnM6NzkzLGF0dF9mc3I6Nzk1LGF0dF9wbmE6Nzk0LGF0dF9zOjIxMyxhdHRfd2I6MjE0LGF3ZmxfZjo1NTcsYXdmbF9zOjU1OCxiYXNlX2pzX3I6NDQxLGJjcDoyMTUsYmY6MjE2LGJnX2U6MjE3LGJnX2k6MjE4LGJnX2w6MjIwLGJnX3M6MjIxLGJnX3Y6MjE5LGJwZF9jOjQ4NCxicGRfczo0ODMsYnB0OjIyMyxicl9lOjM3LGJyX2xkOjM4LGJyX2xycHI6MzksYnJfbHJyOjQwLGJyX2x3bTo1NzcsYnJfcjo0MSxicl9zOjQyLGJyZXI6MzUsYnJlczozNixicm5yOjQzLApicm5zOjQ0LGJycGU6NDUsYnJwczo0NixicnJfZTo0NyxicnJfaTo0OCxicnJfaXVzOjQ5LGJzOjIyMixjX2M6NTAsY19jczo1MSxjX2NzZnM6NTIsY19kOjUzLGNfbGFmOjU5LGNfbGFzOjU4LGNfcm5mOjQzOCxjX3Juczo0MzcsY2M6NDY3LGNjX2M6NTQsY2NfY2Y6NTYsY2NfY3NhbGE6NTUsY2NfbGE6NTcsY2ZnOjIyNCxjaGxzOjIyNSxjaHBzOjIyNixjbDo0ODAsY21jOjIyNyxjbWRfaDo2MjksY21obDoyMjksY21pOjIyOCxjbWw6MjMwLGNtcDo3NzksY212OjIzMSxjcHQ6MjMyLGNyOjM2NCxjcl9lcnI6NjY5LGNyX3I6NjcwLGNyX3M6NjY4LGNzbDoyMzMsY3NyX3Q6NjMxLGN0OjUsY3RfbGk6NjAsZF9sOjYxLGRfbGFmOjYyLGRfbGFyOjYzLGRfbGFzOjY0LGRfbGY6NjUsZF9sczo2NixkX2x3OjY3LGRfbHdmOjY4LGRfbHdzOjY5LGRhc19jOjM2NixkYXNfczozNjUsZGNwOjIzNCxkZ19wYl9jOjIzNixkZ19wYl9yOjIzNyxkZ19wYl9zOjIzNSxkaGljOjIzOCxkbDoyMzksZG5zXzoyNDAsCmRybV9na19mOjM4OCxkcm1fZ2tfczozODcsZHJtX2tyX3I6MzkyLGRybV9rcl9zOjM5MSxkcm1fbmV0X3I6MzkwLGRybV9uZXRfczozODksZHJtX3BiX2Y6Mzg2LGRybV9wYl9zOjM4NSxkc19hYzo3MzYsZHNfYXM6NzM1LGRzX2NsYzo3NDAsZHNfY3M6NzM3LGRzX2RjOjczOSxkc19kczo3MzgsZW1wYTo0MzIsZW1wdTo0MzEsZW5wX2Vycjo2ODUsZW5wX2ZpOjY4NCxlbnBfc3Q6NjgzLGVvcHJfcjo2NzMsZXBfYV9wcl9yOjUzMixlcF9hX3ByX3M6NTMxLGVwX2hhdl9lbmQ6NTI2LGVwX2hhdl9zdGFydDo1MjUsZXBfaW5pdF9hcjo2OTksZXBfaW5pdF9jdWU6NjM1LGVwX2luaXRfY3VzOjYzNCxlcF9pbml0X2VwZTo2MzcsZXBfaW5pdF9lcHM6NjM2LGVwX2luaXRfaWplOjYzOSxlcF9pbml0X2lqczo2MzgsZXBfaW5pdF9wcjo1MjcsZXBfaW5pdF9yZTo2NDEsZXBfaW5pdF9yczo2NDAsZXBfaW5pdF93ZWU6NjQzLGVwX2luaXRfd2VzOjY0MixlcF9tYV9yZXByOjU0MyxlcF9tYV9ycjo1MzMsCmVwX21hX3NlcHI6NTQyLGVwX21hX3Nwcjo1MzQsZXBfcF9sOjUzMCxlcF9wcl9yOjUyOSxlcF9wcl9zOjUyOCxlcF9yX3ByZV9yOjU0MSxlcF9yX3JyOjUzNSxlcF9yX3NtYXI6NTM2LGVwX3JlY19lbmQ6NTM4LGVwX3JlY19zdGFydDo1MzcsZXBfcmVwc19lbmQ6NTQwLGVwX3JlcHNfc3RhcnQ6NTM5LGVwZTo2MTgsZXBzOjYxNyxlcl9jbDo2NTMsZXJfbnM6NjUyLGVyX3BlOjY1MCxlcl9wczo2NDksZXJfczo2NDgsZXJfc19ucjo3OTAsZXJfc19uczo3ODQsZXJfdDo2NTEsZmFiX3I6MjQ2LGZjYl9yOjUwNixmaXJlOjcwLGZpcnM6NzEsZm10aDoyNDEsZm9vdF9qczoyNDIsZnB0OjI0Myxmcl9zOjU2MSxmczoyNDQsZnNjOjI0NSxmc3NiMF9hOjc1LGZzc2IwX2ZyOjc0LGZzc2IwX25yOjczLGZzc2IwX25zOjcyLGZ0Xzo0MzksZnRsOjcsZnRyOjQ3NSxmdmJfcjoyNDcsZnZmOjI0OCxmeWRfZ2Y6NzY3LGZ5ZF9nczo3NjYsZ2NjOjI0OSxnY2ZsOjI1MCxnY3NyOjc2LGdlcF9lcnI6ODAwLApnZXBfcmVxOjc5OCxnZXBfcmVzOjc5OSxnZ3NyOjc3LGdpd2FfYTo2MjcsZ2l3YV9kOjYyOCxnbGM6NTkzLGdsZToyNTEsZ2xzOjI1MixncGU6MjUzLGdyYzoyNTQsZ3Jpd19ucjo3ODYsZ3Jpd19uczo3ODUsZ3Nfcjo3MzQsZ3Nfczo3MzMsZ3NtZDo1ODYsZ3Vfcjo2MjAsZ3Y6NDg1LGd3X2FpZXI6NzcxLGd3X2FyZjo3NzIsZ3dfYXJuYWY6Nzc1LGd3X2Fybm5hZjo3NzYsZ3dfYXJuczo3NzcsZ3dfYXJuc3U6Nzc4LGd3X2Fyczo3NzQsZ3dfYXJzdTo3NzMsZ3dfbWFhZjo2MzMsZ3dfbWFhczo2MzIsaGJmZzo2NzcsaGdjcjoyNTUsaHI6MjU2LGhyZTozNjMsaHJzOjM2MixoczozNzMsaHRtbF9mYl9yOjc1NSxodG1sX2ZlOjc0OCxodG1sX2ZzOjc0NyxodG1sX2Z3ZTo3NTIsaHRtbF9md3M6NzUxLGh0bWxfamNlOjc1NCxodG1sX2pjczo3NTMsaHRtbF9sYl9yOjc1NixodG1sX3NlOjc1MCxodG1sX3NzOjc0OSxpX3JwOjQ3NyxpX3JxOjQ3NixpcF9zOjY0NixpcGM6MjU3LGlwczoyNTgsCmlzbXBfYTo4MzYsaXNtcF9jOjgzOCxpc21wX2Q6ODM5LGlzbXBfaTo4MzUsaXNtcF9wOjg0MCxpc21wX3JjOjgzNyxpdF9ncDo3OCxpdl9zOjUwNSxqc3A6MjU5LGpzcjoyNjAsa1lUTGF0ZW5jeU1ERVByb2R1Y3RTdGlja2VyRWRpdG9yQ2FuY2VsbGVkOjgwMSxrWVRMYXRlbmN5TURFUHJvZHVjdFN0aWNrZXJFZGl0b3JGaW5pc2hlZDo4MDIsbDJzOjI2MSxsY19mcnI6NjYwLGxjX3Nfczo2NTksbGNfc191OjY1OCxsY3A6MjYyLGxkX3M6NDQwLGxpbToyNjMsbHBjZjoyNjQsbHBjczoyNjUsbHBzOjI2Nixsc19jOjM2OCxsc19zOjM2Nyxsc3M6MjY3LGx2OjI2OCxtYV9jbDo1NTEsbWFfZmZyOjU1MixtYV9mdWE6NTU0LG1hX2dyOjU1MyxtYV9pbDo1NzMsbWFpbjo3OSxtYWluX2pzX3I6NDQyLG1haW5fanNfcnE6NDQzLG1iX3M6NTA3LG1iYXBfYzozODQsbWJjX2FsYzo3MzIsbWJjX2FzbDo3MzEsbWJjX2M6Mzc1LG1iY19zOjM3NCxtYmdjaGlkX3JyOjc0NCxtYmdjaGlkX3JzOjc0NiwKbWJncl9yZjo2NTcsbWJncl9ycjozNzksbWJncl9yczozNzgsbWJsY19jOjM3NyxtYmxjX3M6Mzc2LG1ibGNoaWRfYzo3NDUsbWJsY2hpZF9zOjc0MyxtYmxjcmlkX2M6NzQyLG1ibGNyaWRfczo3NDEsbWJzX2M6MzgxLG1ic19ycjozODMsbWJzX3JzOjM4MixtYnNfczozODAsbWR4X2NjcDo4MCxtZHhfY2NzOjgxLG1keF9jY3N0OjgyLG1keF9jcjo4MyxtZHhfY3M6ODQsbWR4X2xzOjg1LG1keF9vZmY6ODYsbWR4X3NjOjg3LG1lX2I6NTU1LG1lX2M6Njg3LG1lX2Y6NTU2LG1lX2ZhOjY4OCxtZXN2X3M6NTA5LG1tX2llOjcyMCxtbV9pczo3MTksbXJjOjI2OSxtcnM6MjcwLG1zYToyNzEsbXN0aTo4OCxtc3RyOjg5LG5fY3Q6NzAyLG5fc3I6Njk3LG5fc3c6Njk4LCJuY1swLTldIjoyNzIsbmNsOjI3MyxuY3Q6Mjc0LG5kOjI3NSxuZG5zZToyNzYsbmRuc3M6Mjc3LCJucFswLTldIjoyNzgsbnI6Mjc5LG5yZToyODAsbnJlcXM6MjgxLG5yZXNlOjI4MixucmVzczoyODMsbnJycHM6OTAsCm5yczoyODQsbnN0Y3BzOjI4NSxudGNwZToyODYsbnRjcHM6Mjg3LG53cDoyODgsb2FkMnM6NDI1LG9hZnNfcjo0MDcsb2Fmc19ycDo0MDksb2Fpc3I6NDA1LG9hcjJzOjQxMixvYXJwMnM6NDI3LG9jc2lfejo5MSxvY3RrOjYyMSxvY3RwOjYyMixvZmFycDo0MjMsb2Zkbzo0MDAsb2Zkb3M6Mzk4LG9mcjo0MTcsb2Z2cnA6NDI0LG9nc2ZfYzozOTUsb2dzZl9zOjM5NCxvaHJfcjo3NjUsb2hyX3M6NzY0LG9sOjYsb2xfaTo4LG9sb2NfZTo4MzAsb2xvY19zYTo4Mjksb2xvY19zczo4Mjgsb21kX2M6NDIyLG9tZF9zOjQyMSxvbXBfYzo0MTksb21wX3I6NDE4LG9wZmM6NjgwLG9wcl9yOjQxNCxvcHJkX3M6NDE1LG9wcmd6Ml9lOjg0MixvcHJnejJfZjo4NDMsb3ByZ3oyX3M6ODQxLG9wcmd6X3M6Njg5LG9wcnI6NDE2LG9yMTAwazo0MTEsb3JfZmU6NDI5LG9yX2ZzOjQzMCxvcl9pOjM5Myxvcl9wOjM5NyxvcmNoX3JfZDo2OTQsb3JjaF9yX3M6Njk1LG9yY2hfdF9wbWQ6NzcwLG9yY2hfdF9wbXM6NzY5LApvcmNoX3RfdGNlZDo3MDgsb3JjaF90X3RjZXM6NzA1LG9yY2hfdF90ZDo2OTIsb3JjaF90X3RtZDo4MDQsb3JjaF90X3Rtczo4MDMsb3JjaF90X3VkOjY5MyxvcmNoX3RfdXM6Njk2LG9yZmI6NDA0LG9yaF9yOjQwMyxvcm1rOjQyMCxvcnFwYl9hOjgzMSxvcnFwYl9lOjgzNCxvcnFwYl9zOjgzMixvcnFwYl93OjgzMyxvc2RvOjQwMSxvc2RvZjo0MDIsb3Nkb3M6Mzk5LG9zb3I6Mzk2LG92ZDJzOjQyNixvdmZzX3I6NDA4LG92ZnNfcnA6NDEwLG92aXNyOjQwNixvdnIyczo0MTMsb3ZycDJzOjQyOCxwYWM6Mjg5LHBhcmk6NTE3LHBhdDoyOTAscGIwX3M6NjExLHBiX3JxX2F1dGh6OjQ0NixwYl9ycV9jdHRfY2ZtOjQ0NyxwYmNfZTo2NjMscGJjX3M6NjYyLHBiZl9jOjkyLHBicDo0ODYscGJyZXN1bWU6MjkyLHBiczo0ODcscGJ1OjI5MyxwYzo0ODgscGNjOjU0NixwY2U6NTQ3LHBjcTo1NDQscGNyOjU0NSxwY3VfYXA6ODA5LHBjdV9jZTo1ODEscGN1X2NzOjU4MCxwY3VfcmU6ODA4LHBjdV9yczo4MDcsCnBjdV9zOjgwNSxwY3Vfc2U6ODA2LHBkYToyOTQscGRjOjI5NSxwZHI6Mjk2LHBlOjI5NyxwZW1fcjo0NDQscGVtX3JxOjQ0NSxwZmplOjMwOSxwZnJyOjMwNSxwZnJzOjMwNixwZnM6MzA3LHBmdDozMDgscGZ0X2k6OTMscGxfYzoyOTEscGxfaTo0ODkscGxfaW50OjQ5MCxwbF9yOjQ5MSxwbF9yYzo3MDMscGxfczo0OTIscGxfc3M6NDkzLHBsZXY6MzEwLHBsanNfcjo0NDgscGxqc19ycTo0NDkscGx2czo3MjMscG90X2FmOjk3LHBvdF9hczo5Nixwb3RfY21lOjU2OSxwb3RfY21mOjI5OSxwb3RfY21zOjI5OCxwb3RfY3NtZTo1NzAscG90X2NzbWY6MzAxLHBvdF9jc21zOjMwMCxwb3RfaWY6MzA0LHBvdF9pbml0Zjo5NSxwb3RfaXNjOjMwMixwb3RfaXN0OjMwMyxwb3Rfc2U6NTY1LHBvdF9zZjo1NjQscG90X3NzOjU2Myxwb3RfeGU6NTY4LHBvdF94Zjo1NjcscG90X3hzOjU2Nixwb3RwZTo5NCxwcHU6OTgscHJvY19rOjYxMyxwcm9jX2tfbDo2MTQscHM6MzExLHBzX2JzOjY0Nyxwc19jOjQ5NCwKcHNfZXM6OTkscHNfcGE6NjgxLHBzX3BpaGY6NTk3LHBzX3BpaHM6NTk2LHBzX3I6MzYwLHBzX3M6MzYxLHBzX3NnZjo1OTUscHNfc2dzOjU5NCxwc25yOjQ5NSxwc25zOjQ5Nixwc3BlOjEwMCxwc3BzOjEwMSxwdF9tZTo4MTUscHRfbWY6ODE0LHB0X21zOjgxMyxwdF9waWU6ODEyLHB0X3BpZjo4MTEscHRfcGlzOjgxMCxwdF9waXNoOjYwNixwdnJpOjUxOCxwd2M6MzEyLHFvZXM6MzEzLHJfY19zbGQ6NDUwLHJfY19zcnE6NDUxLHJfY29ubmVjdF9iYWNrZW5kOjQ1MixyX2Nvbm5lY3RfYmFja2VuZF9zdWNjZXNzOjQ1MyxyX2Nvbm5lY3RlZDo0NTQscl9jb25zdHJ1Y3Rpb246NDU1LHJfZGlzY29ubmVjdGVkOjQ1NixyX2ViaTo2NjQscl9lb2Q6NTg1LHJfZjo0NTcscl9vcjo3MTMscl9wbDoxMDUscl9wczoxMDYscl9ycV9wbHk6NDU4LHJfc19wbHlsc3Q6NDU5LHJfc192aWQ6NDYwLHJfc3RhdHVzX3VwZGF0ZTo0NjEscl90cjoxMDcscl92dGM6MTA0LHJfd2lwYmM6NTg0LHJfd25yOjc5MiwKcl93bnM6NzkxLHJfd3JyOjEwMyxyX3dyczoxMDIscl93c3JwOjYwOSxyX3dzcnI6NjA4LHJfd3Nyczo2MDcscmN2XzozMTQscmVtb3ZlX3NwbGFzaDo0NjIscmVxXzozMTUscmZnOjMxNixyZ3JfbnJmOjYwMCxyZ3Jfczo1OTkscnBlOjgxNixycGx5X3JxZDo0NjMscnBzOjgxNyxyc19zOjUwOCxyc2FlX3BjOjMzMixyc2FlX3BlajozMzQscnNhZV9wajozMzMscnNiZV9wYzozMjMscnNiZV9wZWo6MzI1LHJzYmVfcGo6MzI0LHJzZV9wYzozMjAscnNlX3BlajozMjIscnNlX3BqOjMyMSxyc2VmX3BjOjMyOSxyc2VmX3BlajozMzEscnNlZl9wajozMzAscnNlc19wYzozMjYscnNlc19wZWo6MzI4LHJzZXNfcGo6MzI3LHJzZl9wYzozMTcscnNmX3BlajozMTkscnNmX3BqOjMxOCxydGltZV86MzM1LHJ1cmxfZToxMDgscnVybF9yOjEwOSxydXJsX3M6MTEwLHJ1cmxwZToxMTEscnVybHBzOjExMixzM3Rfcjo0NzIsc2FfZjo2MjQsc2FfZm86NjI1LHNhX3M6NjIzLHNhZl9mcDo2NjUsc2FmX3I6NjY2LApzYWZfcmU6NjY3LHNhc19pOjYyNixzY2dhdF9mZnM6NTYwLHNjZ2F0X2ZzOjU1OSxzZGFfZjo2MDUsc2RhX2k6NjA0LHNkYV9yZWNwOjYwMSxzZGFfcnNwcDo2MDMsc2RhX3JzcHI6NjAyLHNkbF9lOjY1NSxzZGxfczo2NTQsc2RsX3Q6NjU2LHNmX2k6MTEzLHNnc2Nfcjo3ODEsc2dzY19zOjc4MCxzaG93X2NhbGxfdG9fY2FzdDo0NjQsc2hyYl9jOjE2NSxzaHJvX2M6MTcwLHNocm9fcjoxNjcsc2hycF9jOjE2OSxzaHJwX2xkOjE2NixzaHJwX3A6MTY4LHNvX3I6MTE5LHNvX3JlOjExOCxzb19ycToxMjAsc3BhOjExNCxzcGQ6MTE1LHNwZjoxMTYsc3Bucl9oOjY3MixzcG5yX3M6NjcxLHNwcjo2Nzgsc3JfZToxMTcsc3JfcDoxMjEsc3JfcGE6MTIyLHNyX3I6MTIzLHNyX3JlOjEyNCxzcl9zOjEyNSxzcl91aToxMjYsc3J0OjMzNixzc19yOjQ2OSxzc19zOjQ2OCxzc19zZl9zOjcyNCxzc19zZl93OjcyNSxzc25yOjEyNyxzc25zOjEyOCxzdGNwXzozMzcsc3RlX2FsZjo1ODksc3RlX2M6NTkyLApzdGVfZWxmOjU5MCxzdGVfZjo1OTEsc3RlX2Z0bDo1ODgsc3RlX2w6NTg3LHN0dHNfYjo1ODIsc3R0c19mOjU4MyxzdHZzX2Y6NjkxLHN0dnNfczo2OTAsc3ZlOjQ2NixzdnM6NDY1LHN3X2ZiOjUxMCxzd19pOjc4Myxzd19yOjQ5Nyxzd19zOjQ5OCxzd3Nucjo4MTksc3dzbnM6ODE4LHN3c3BlOjgyMSxzd3Nwczo4MjAsdGNwXzozMzgsdGVueF9sOjQ3MSx0ZW54X3I6NDcwLHRoMF9oOjYxMCx0aDBfbmM6Njc1LHRoMF9uZTo2NzYsdGgwX25yOjEyOSx0aDBfbnM6Njc0LHRoX2NfMTo3MDksdGhfZF8xOjcxMCx0aF9sXzE6MTMwLHRoX3NfMTo1NzgsdGhzYjBfZnI6MTM0LHRoc2IwX25lOjEzMSx0aHNiMF9ucjoxMzIsdGhzYjBfbnM6MTMzLHR0YzozMzksdHRjcjozNDAsdWlfbDoxMzUsdWliZl9jOjE0MSx1aWJmX3I6MTQzLHVpYmZfczoxNDIsdWlzZl9yOjE0NCx1aXd3YV9iYzo2MTksdWl3d2FfYzoxMzYsdWl3d2FfZToxNDAsdWl3d2FfcHI6MTM5LHVpd3dhX3I6MTM4LHVpd3dhX3M6MTM3LAp1bHJzX2M6MzcwLHVscnNfczozNjksdW5rbm93bjowLHVyOjM0MSx2Yzo2ODIsdmNjOjUxOSx2Y2k6NTIwLHZkYTozNDIsdmRldWM6MzQzLHZkZXVyOjM0NCx2ZGV1czozNDUsdmRuczozNDYsdmZiOjUyMSx2ZnA6MzQ3LHZoYjo1MjIsdmlyOjM0OCx2aXJjOjM0OSx2aXNfYTo1MDAsdmlzX3I6NDk5LHZpc2Y6MTQ1LHZpc2k6MTQ2LHZpc3I6MTQ3LHZpc3M6MTQ4LHZvel9jeDoxNzksdm96X2VvdToxODcsdm96X2VycjoxODQsdm96X2Vycl9tczoxODAsdm96X2Vycl9ubXA6MTgxLHZvel9lcnJfb2ZmOjE4Myx2b3pfZXJyX3VhcjoxODIsdm96X2Z0cjoxODgsdm96X2Z2YzoxODksdm96X2xyX2xzbzoxODUsdm96X2xyX21kOjE4Nix2b3pfbWY6MTcyLHZvel9tczoxNzEsdm96X3JxZjoxNzQsdm96X3JxczoxNzMsdm96X3NmOjE3OCx2b3pfc3M6MTc3LHZvel92cDoxNzUsdm96X3Z0OjE3Nix2cGw6MzUwLHZyOjM1MSx2cjEwMGs6MTQ5LHZyYl9mOjUwMSx2cmM6MzUyLHZyZXE6MzUzLHZyZmI6MTUwLAp2cmk6OSx2cnI6MzU0LHZycl9yOjQ3NCx2cnJfczo0NzMsdnJyaDoxNTEsdnNpc2ZiOjE1Mix2c2lzcjoxNTMsdnNpc3JoOjE1NCx2c2lzczoxNTUsdnRhOjM1NSx2dHJyOjUyMyx2dHJzOjUyNCx3X3N0OjE1Nix3YXNtX2ZhOjgyNix3YXNtX2ZlcnI6ODI3LHdhc21fZnc6ODI1LHdhc21fczo4MjQsd2M6MzcyLHdjcjozNTYsd2ViZmVfZTo3Mjgsd2ViZmVfZ2JtX3I6NzU4LHdlYmZlX2dibV9zOjc1Nyx3ZWJmZV9nbF9yOjc2Mix3ZWJmZV9nbF9zOjc2MSx3ZWJmZV9nc19yOjc2MCx3ZWJmZV9nc19zOjc1OSx3ZWJmZV9ndXNfcjo3MzAsd2ViZmVfZ3VzX3M6NzI5LHdlYmZlX2d2bV9zOjc2Myx3ZWJmZV9zOjcyNyx3ZmZlOjM1Nyx3ZmZzOjM1OCx3Zmc6MzU5LHduX2U6MTYyLHduX2w6MzcxLHduX3I6MTU5LHduX3JwOjQ3OCx3bl9zOjE2MCx3bl9zbDoxNjEsd25sOjE1OCx3bmxfZDo4MjMsd25sX21wOjU3MSx3bmxfcGQ6ODIyLHdubHI6NTcyLHdubHM6MTU3LHducGU6MTYzLHducHM6MTY0LAp3cDo0Nzksd3NfY2U6MTkwLHdzX3NzOjE5MSx3c19zc3I6MTkyLHljZWM6NTQ5LHljZWY6NTQ4LHljZnRyOjY0NSx5Y2lmOjU1MCx5Y21zZjo2NDQseWNyYzo3MTgseWNyZjo3MTcseWNyczo3MTQseWNyc2M6NzE1LHljcnVlYTo3MTZ9O3ZhciBtcT1nLnFpLnl0TG9nZ2luZ0dlbFNlcXVlbmNlSWRPYmpffHx7fTtnLkdiKCJ5dExvZ2dpbmdHZWxTZXF1ZW5jZUlkT2JqXyIsbXEpO3ZhciBQYj1nLnFpLnl0TG9nZ2luZ0xhdGVuY3lVc2FnZVN0YXRzX3x8e307Zy5HYigieXRMb2dnaW5nTGF0ZW5jeVVzYWdlU3RhdHNfIixQYik7CnZhciBLQj1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuTj0wfXRpY2sobixXLEQsYil7Wk0odGhpcyxgdGlja18ke259XyR7V31gKXx8KEQ9e3RpbWVzdGFtcDpELGN0dEF1dGhJbmZvOmJ9LFc9e3RpY2tOYW1lOm4sY2xpZW50QWN0aW9uTm9uY2U6V30sZy5sKCJ5b3V0dWJlX3dlYl9jc2lfdGlja3NfbWlncmF0aW9uIikmJihuPVhGdFtuXSxuIT09dm9pZCAwJiYoVy50aWNrPW4sZGVsZXRlIFcudGlja05hbWUpKSxnLnpVKCJsYXRlbmN5QWN0aW9uVGlja2VkIixXLEQpKX1pbmZvKG4sVyxEKXt2YXIgYj1PYmplY3Qua2V5cyhuKS5qb2luKCIiKTtaTSh0aGlzLGBpbmZvXyR7Yn1fJHtXfWApfHwobj1PYmplY3QuYXNzaWduKHt9LG4pLG4uY2xpZW50QWN0aW9uTm9uY2U9VyxnLnpVKCJsYXRlbmN5QWN0aW9uSW5mbyIsbix7Y3R0QXV0aEluZm86RH0pKX1qc3BiSW5mbyhuLFcsRCl7dmFyIGI9IiI7Zm9yKGxldCB2PTA7djxZdihuKS5sZW5ndGg7disrKVl2KG4pW3ZdIT09dm9pZCAwJiYKKGI9dj09PTA/Yi5jb25jYXQoYCR7dn1gKTpiLmNvbmNhdChgXyR7dn1gKSk7Wk0odGhpcyxgaW5mb18ke2J9XyR7V31gKXx8KGcuU0UobiwyLFcpLFc9e2N0dEF1dGhJbmZvOkR9LEQ9Zy5sKCJqc3BiX3NwYXJzZV9lbmNvZGVkX3Bpdm90Iik/bmV3IFp2KFt7fV0pOm5ldyBadixyZShELFVrciw3LHlZMSxuKSxmMmooRCxXKSl9c3BhbihuLFcsRCxiKXt2YXIgdj1PYmplY3Qua2V5cyhuKS5qb2luKCIiKTtpZihifHwhWk0odGhpcyxgc3Bhbl8ke3Z9XyR7V31gKSluLmNsaWVudEFjdGlvbk5vbmNlPVcsZy56VSgibGF0ZW5jeUFjdGlvblNwYW4iLG4se2N0dEF1dGhJbmZvOkR9KX19O3ZhciBaWj13aW5kb3cscWtyPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy50aW1pbmc9e307dGhpcy5jbGVhclJlc291cmNlVGltaW5ncz0oKT0+e307CnRoaXMud2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3M9KCk9Pnt9Owp0aGlzLm1vekNsZWFyUmVzb3VyY2VUaW1pbmdzPSgpPT57fTsKdGhpcy5tc0NsZWFyUmVzb3VyY2VUaW1pbmdzPSgpPT57fTsKdGhpcy5vQ2xlYXJSZXNvdXJjZVRpbWluZ3M9KCk9Pnt9fX0sVUg9WloucGVyZm9ybWFuY2V8fFpaLm1velBlcmZvcm1hbmNlfHxaWi5tc1BlcmZvcm1hbmNlfHxaWi53ZWJraXRQZXJmb3JtYW5jZXx8bmV3IHFrcjt2YXIgd2I9ITEsbCQ9ITEsUXY9eydzY3JpcHRbbmFtZT0ic2NoZWR1bGVyL3NjaGVkdWxlciJdJzoic2oiLCdzY3JpcHRbbmFtZT0icGxheWVyL2Jhc2UiXSc6InBqIiwnbGlua1tyZWw9InByZWxvYWQiXVtuYW1lPSJwbGF5ZXIvZW1iZWQiXSc6InBlaiIsJ2xpbmtbcmVsPSJzdHlsZXNoZWV0Il1bbmFtZT0id3d3LXBsYXllciJdJzoicGMiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9InBsYXllci93d3ctcGxheWVyIl0nOiJwYyIsJ3NjcmlwdFtuYW1lPSJkZXNrdG9wX3BvbHltZXIvZGVza3RvcF9wb2x5bWVyIl0nOiJkcGoiLCdsaW5rW3JlbD0iaW1wb3J0Il1bbmFtZT0iZGVza3RvcF9wb2x5bWVyIl0nOiJkcGgiLCdzY3JpcHRbbmFtZT0ibW9iaWxlLWMzIl0nOiJtY2oiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9Im1vYmlsZS1jMyJdJzoibWNjIiwnc2NyaXB0W25hbWU9InBsYXllci1wbGFzbWEtaWFzLXBob25lL2Jhc2UiXSc6Im1jcHBqIiwnc2NyaXB0W25hbWU9InBsYXllci1wbGFzbWEtaWFzLXRhYmxldC9iYXNlIl0nOiJtY3B0aiIsCidsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9Im1vYmlsZS1wb2x5bWVyLXBsYXllci1pYXMiXSc6Im1jcGMiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9Im1vYmlsZS1wb2x5bWVyLXBsYXllci1zdmctaWFzIl0nOiJtY3BzYyIsJ3NjcmlwdFtuYW1lPSJtb2JpbGVfYmxhemVyX2NvcmVfbW9kIl0nOiJtYmNqIiwnbGlua1tyZWw9InN0eWxlc2hlZXQiXVtuYW1lPSJtb2JpbGVfYmxhemVyX2NzcyJdJzoibWJjIiwnc2NyaXB0W25hbWU9Im1vYmlsZV9ibGF6ZXJfbG9nZ2VkX2luX3VzZXJzX21vZCJdJzoibWJsaXVqIiwnc2NyaXB0W25hbWU9Im1vYmlsZV9ibGF6ZXJfbG9nZ2VkX291dF91c2Vyc19tb2QiXSc6Im1ibG91aiIsJ3NjcmlwdFtuYW1lPSJtb2JpbGVfYmxhemVyX25vbmNvcmVfbW9kIl0nOiJtYm5qIiwiI3BsYXllcl9jc3MiOiJtYnBjIiwnc2NyaXB0W25hbWU9Im1vYmlsZV9ibGF6ZXJfZGVza3RvcHBsYXllcl9tb2QiXSc6Im1icGoiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9Im1vYmlsZV9ibGF6ZXJfdGFibGV0X2NzcyJdJzoibWJ0YyIsCidzY3JpcHRbbmFtZT0ibW9iaWxlX2JsYXplcl93YXRjaF9tb2QiXSc6Im1id2oiLCdzY3JpcHRbbmFtZT0iZW1iZWRfY2xpZW50Il0nOiJlY2oiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9ImVtYmVkLXVpIl0nOiJlY2MifSxabmk9KDAsZy5LdCkoVUguY2xlYXJSZXNvdXJjZVRpbWluZ3N8fFVILndlYmtpdENsZWFyUmVzb3VyY2VUaW1pbmdzfHxVSC5tb3pDbGVhclJlc291cmNlVGltaW5nc3x8VUgubXNDbGVhclJlc291cmNlVGltaW5nc3x8VUgub0NsZWFyUmVzb3VyY2VUaW1pbmdzfHxnLkZULFVIKTt2YXIgVUM9d2luZG93O1VDLnl0Y3NpJiYoVUMueXRjc2kuaW5mb0dlbD1nLm5sLFVDLnl0Y3NpLnRpY2s9Zy5hTCk7dmFyIG85aj1bInR5cGUuZ29vZ2xlYXBpcy5jb20veW91dHViZS5hcGkucGZpaW5uZXJ0dWJlLllvdXR1YmVBcGlJbm5lcnR1YmUuQnJvd3NlUmVzcG9uc2UiLCJ0eXBlLmdvb2dsZWFwaXMuY29tL3lvdXR1YmUuYXBpLnBmaWlubmVydHViZS5Zb3V0dWJlQXBpSW5uZXJ0dWJlLlBsYXllclJlc3BvbnNlIiwidHlwZS5nb29nbGVhcGlzLmNvbS95b3V0dWJlLmFwaS5wZmlpbm5lcnR1YmUuWW91dHViZUFwaUlubmVydHViZS5QYW5lbFJlc3BvbnNlIl0sWDc9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYix2KXt0aGlzLmo9bjt0aGlzLnlHPVc7dGhpcy5XPUQ7dGhpcy5YPWI7dGhpcy5KPXY7dGhpcy5OPW5ldyBNYXA7bi53ZHx8KG4ud2Q9e30pO24ud2Q9ey4uLmdnMSwuLi5uLndkfX19O3ZhciBhOD1uZXcgZy5BTCgiSU5ORVJUVUJFX1RSQU5TUE9SVF9UT0tFTiIpLFZXPW5ldyBnLkFMKCJSRVNQT05TRV9QUk9DRVNTT1JfTUFQX1RPS0VOIik7dmFyIE1hPW5ldyBnLkFMKCJFTkRQT0lOVF9NQVAiKTt2YXIgeVg9Y2xhc3N7fTt2YXIgTnI9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPSJwZW5kaW5nIjt0aGlzLko9W107dGhpcy5XPVtdO3RyeXtuKHRoaXMuWC5iaW5kKHRoaXMpLHRoaXMucmVqZWN0LmJpbmQodGhpcykpfWNhdGNoKFcpe3RoaXMucmVqZWN0KFcpfX1zdGF0ZSgpe3JldHVybiB0aGlzLk49PT0iZnVsZmlsbGVkIj97c3RhdGU6ImZ1bGZpbGxlZCIsdmFsdWU6dGhpcy5yZXN1bHR9OnRoaXMuTj09PSJyZWplY3RlZCI/e3N0YXRlOiJyZWplY3RlZCIscmVhc29uOnRoaXMuZXJyb3J9OntzdGF0ZToicGVuZGluZyJ9fVgobil7WW8obil8fFlEKG4pP1NrKEhQKG4pLHRoaXMuWC5iaW5kKHRoaXMpLHRoaXMucmVqZWN0LmJpbmQodGhpcykpOih0aGlzLk49ImZ1bGZpbGxlZCIsdGhpcy5yZXN1bHQ9bixtRSh0aGlzKSl9cmVqZWN0KG4pe3RoaXMuTj0icmVqZWN0ZWQiO3RoaXMuZXJyb3I9bjttRSh0aGlzKX19LFlEPXEzKG49PmtDeChuKT9uIGluc3RhbmNlb2YgTnI6ITEpO3ZhciBjZT1uZXcgZy5BTCgiQVVUSF9TRVJWSUNFX1RPS0VOIik7dmFyIHVkPWNsYXNzIGV4dGVuZHMgeVh7Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLk49bn1leGVjdXRlKG4pe3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7dmFyIFc9dGhpcztyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIEQ9bi55dFJlcXVlc3Q7Zy5SVShELmlucHV0KTt2YXIgYj1ELlBpPy5tb2RlPT09ImNvcnMiPyJjb3JzIjp2b2lkIDA7aWYoVy5OLnNCKXt2YXIgdj1ELmNvbmZpZzt2PVcuTi5haih2Py5CRz8uaWRlbnRpdHl8fHU5LHtzZXNzaW9uSW5kZXg6dj8uQkc/LnNlc3Npb25JbmRleH0pO2I9ey4uLmtWKGIpLC4uLnZ9fWVsc2UgYj15aWVsZCpQUChNRXcoVyxELmNvbmZpZyxiKSk7RC5QaT17Li4uRC5QaSxoZWFkZXJzOnsuLi4oRC5QaT8uaGVhZGVycz8/e30pLC4uLmJ9fTtyZXR1cm57bmV4dFN0YXRlOiJERURVUEUiLHBhcmFtczpufX0oKX0pfX07CnVkW2cuTFhdPVtjZV07dmFyIGFqPW5ldyBnLkFMKCJSRVNQT05TRV9NQUNISU5FX1JFR0lTVFJZX1RPS0VOIiksblI9bmV3IGcuQUwoIlJFU1BPTlNFX01BQ0hJTkVfRkFDVE9SWV9UT0tFTiIpO3ZhciBCZT1uZXcgZy5BTCgiRVBIRU1FUkFMX1NUT1JFX1RPS0VOIik7dmFyIG9qPWNsYXNzIGV4dGVuZHMgeVh7Y29uc3RydWN0b3IobixXKXtzdXBlcigpO3RoaXMuTj1uO3RoaXMuSj1XfWV4ZWN1dGUobil7dmFyIFc9dGhpcy5KLEQ9dGhpcy5OO3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBiPW4ueXRSZXF1ZXN0LHY9Yi5jb25maWc/LkhuPy5STDtpZih2JiZXJiZXLmhhcyh2KSYmIWIuY29uZmlnPy5Ibj8uZGlzYWJsZUNhY2hlKXt2YXIgaz15aWVsZCpQUChIUChXLmdldCh2KSkpO2lmKGsmJiFrLmlzRXhwaXJlZCgpKXJldHVybiBiPXFyKGspLGcubCgid2ViX3Byb2Nlc3NfcmVzcG9uc2Vfc3RvcmVfcmVzcG9uc2VzIikmJiFrLmlzUHJvY2Vzc2VkKCk/KGs9RCgpLGI9eWllbGQqUFAoeXEoayx7d2lyZVJlc3BvbnNlOmIseXRSZXF1ZXN0Om4ueXRSZXF1ZXN0LGNodW5rQ2FsbGJhY2s6bi5jaHVua0NhbGxiYWNrLHJlc3BvbnNlUGF5bG9hZDp7dHlwZToiUEFHRV9DT05UUkFDVCJ9LGV4dHJhY3RlZFJlc3BvbnNlOmJ9KSksCnlpZWxkKlBQKEhQKHRlKFcsdikpKSx7bmV4dFN0YXRlOiJET05FIix2YWx1ZTpifSk6e25leHRTdGF0ZToiRE9ORSIsdmFsdWU6Yn19cmV0dXJue25leHRTdGF0ZToiTE9DQUxfUk9VVEVSIixwYXJhbXM6bn19KCl9KX19OwpvaltnLkxYXT1bblIsZy5ocChCZSldO3ZhciBkXz1jbGFzcyBleHRlbmRzIHlYe2NvbnN0cnVjdG9yKG4sVyl7c3VwZXIoKTt0aGlzLko9bjt0aGlzLk49V31leGVjdXRlKG4pe3ZhciBXPXRoaXMuSixEPXRoaXMuTixiPW4ueXRSZXF1ZXN0LHY9Yj8uaW5uZXJUdWJlUmVxdWVzdD8uY29udGV4dDtpZighdilyZXR1cm4gSFAoe25leHRTdGF0ZToiQVVUSCIscGFyYW1zOm59KTt2YXIgaz1bXTtpZihEJiZELmxlbmd0aD4wKWZvcihsZXQgaCBvZiBEKUQ9aC5CcyhiKSxELk4mJmsucHVzaChELk4pO2ZvcihsZXQgaCBvZiBXfHxbXSloLkJzKHYpO3JldHVybiBrLmxlbmd0aD4wP09vKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7eWllbGQqUFAoSFAoUHJvbWlzZS5hbGwoaykpKTtyZXR1cm57bmV4dFN0YXRlOiJBVVRIIixwYXJhbXM6bn19KCl9KTpIUCh7bmV4dFN0YXRlOiJBVVRIIiwKcGFyYW1zOm59KX19O2RfW2cuTFhdPVtnLmhwKG5ldyBnLkFMKCJDT05URVhUX1BST0NFU1NPUl9NQVAiKSksZy5ocChuZXcgZy5BTCgiQVNZTkNfQ09OVEVYVF9QUk9DRVNTT1JfTUFQIikpXTt2YXIgelc9Y2xhc3MgZXh0ZW5kcyB5WHtjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMuTj1ufWV4ZWN1dGUobil7dmFyIFc9dGhpcy5OO3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBEPW4ueXRSZXF1ZXN0LmNvbmZpZz8ucmVxdWVzdEtleTtyZXR1cm4gRCYmVy5oYXMoRCkmJihEPVcuZ2V0KEQpLEQ9eWllbGQqUFAoSFAoRCkpKT97bmV4dFN0YXRlOiJET05FIix2YWx1ZTpEfTp7bmV4dFN0YXRlOiJGRVRDSCIscGFyYW1zOm59fSgpfSl9fTsKeldbZy5MWF09W2lkXTt2YXIgR3h0PW5ldyBnLkFMKCJMT0NBTF9JTk5FUlRVQkVfUk9VVEVSX1RPS0VOIik7dmFyIGxkPWNsYXNzIGV4dGVuZHMgeVh7Y29uc3RydWN0b3IobixXKXtzdXBlcigpO3RoaXMuSj1uO3RoaXMuTj1XfWV4ZWN1dGUobil7dmFyIFc9dGhpcy5OLEQ9dGhpcy5KO3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBiPW4ueXRSZXF1ZXN0LHY9bi5jaHVua0NhbGxiYWNrLGs9e3R5cGU6IlBBR0VfQ09OVFJBQ1QifTtpZihXPy5yNihiLmlucHV0LGIuaW5uZXJUdWJlUmVxdWVzdCkpe2xldCB4PXlpZWxkKlBQKEhQKFcuWVIoYi5pbnB1dCxiLmlubmVyVHViZVJlcXVlc3QpKSk7aWYoeCl7bGV0IEw9ITE7dmFyIGg9ZnVuY3Rpb24oZSxHKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIHI9RCgpO3lpZWxkKlBQKHlxKHIse3dpcmVSZXNwb25zZTpHLHl0UmVxdWVzdDpiLGNodW5rQ2FsbGJhY2s6dixyZXNwb25zZVBheWxvYWQ6a30pKTtMPSEwfSgpfTsKeC5wbGF5ZXJSZXNwb25zZSYmKHlpZWxkKmgoeC5wbGF5ZXJSZXNwb25zZSx7cGxheWVyUmVzcG9uc2U6eC5wbGF5ZXJSZXNwb25zZX0pKTt4LndhdGNoTmV4dFJlc3BvbnNlJiYoeWllbGQqaCh4LndhdGNoTmV4dFJlc3BvbnNlLHt3YXRjaE5leHRSZXNwb25zZTp4LndhdGNoTmV4dFJlc3BvbnNlfSkpO0x8fChoPUQoKSx5aWVsZCpQUCh5cShoLHt3aXJlUmVzcG9uc2U6eCx5dFJlcXVlc3Q6YixjaHVua0NhbGxiYWNrOnYscmVzcG9uc2VQYXlsb2FkOmt9KSkpO2lmKHYpcmV0dXJue25leHRTdGF0ZToiRE9ORSIsdmFsdWU6a307aD1rLmNvbnRlbnR8fGsucGxheWVyfHxrLnlCO3JldHVybiBrLnR5cGU9PT0iUEFHRV9DT05UUkFDVCImJmg/e25leHRTdGF0ZToiRE9ORSIsdmFsdWU6aH06e25leHRTdGF0ZToiRE9ORSIsdmFsdWU6eH19fXJldHVybntuZXh0U3RhdGU6IkZBSUxFRCIsZXJyb3I6RXJyb3IoIkZhbGxiYWNrTm9kZSBmYWlsZWQgdG8gcHJvZHVjZSBhIHZhbGlkIHJlc3BvbnNlIil9fSgpfSl9fTsKbGRbZy5MWF09W25SLGcuaHAoR3h0KV07dmFyIEVDPWNsYXNzIGV4dGVuZHMgZy5ReHtjb25zdHJ1Y3RvcihuLFcsRCl7c3VwZXIoVyx7c3RhdHVzOkQsLi4uW119KTt0aGlzLnR5cGU9bjt0aGlzLnN0YXR1cz1EO09iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLG5ldy50YXJnZXQucHJvdG90eXBlKX19O3ZhciBsQj1uZXcgZy5BTCgiTkVUV09SS19NQU5BR0VSX1RPS0VOIik7dmFyIFRXPWNsYXNzIGV4dGVuZHMgeVh7Y29uc3RydWN0b3IobixXLEQsYil7c3VwZXIoKTt0aGlzLnlHPW47dGhpcy5OPVc7dGhpcy5XPUQ7dGhpcy5KPWJ9ZXhlY3V0ZShuKXt2YXIgVz10aGlzLnlHLEQ9dGhpcy5OLGI9dGhpcy5XLHY9dGhpcy5KO3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBrPW4ueXRSZXF1ZXN0LGg9bi5jaHVua0NhbGxiYWNrLHg9ay5jb25maWc/LnJlcXVlc3RLZXksTD1KU09OLnN0cmluZ2lmeShrLmlubmVyVHViZVJlcXVlc3QpLGU9ey4uLmsuUGksYm9keTprLlBpLm1ldGhvZD09PSJQT1NUIj9MOnZvaWQgMH07ay5jb25maWc/LkxhJiZnLmFMKGsuY29uZmlnLkxhKTt2YXIgRz17dHlwZToiUEFHRV9DT05UUkFDVCJ9LHI9MCxOPXk9PntFbyhiKCkse3dpcmVSZXNwb25zZTp5LHl0UmVxdWVzdDprLGNodW5rQ2FsbGJhY2s6aCxyZXNwb25zZVBheWxvYWQ6R30scisrKX07Ckw9KCk9Pmg/Vy5mZXRjaChrLmlucHV0LGUsay5jb25maWcsTik6Vy5mZXRjaChrLmlucHV0LGUsay5jb25maWcpOwp0cnl7dmFyIEg9dj92LlFOKGssTCk6TCgpfWNhdGNoKHkpe0g9UHJvbWlzZS5yZWplY3QoeSl9eCYmRCYmRC5zZXQoeCxIKTt0cnl7dmFyIEE9eWllbGQqUFAoSFAoSCkpfWNhdGNoKHkpe3JldHVybiBnLmwoIndlYl9lbmFibGVfcmV0cmllcyIpJiYoQT15IGluc3RhbmNlb2YgVHlwZUVycm9yJiZ5Lm1lc3NhZ2U9PT0iRmFpbGVkIHRvIGZldGNoIj8xOjAsVW8oQSkpP3tuZXh0U3RhdGU6IlJFVFJZIixwYXJhbXM6ey4uLm4sZXJyb3I6bmV3IEVDKEEseS5tZXNzYWdlKSxhdHRlbXB0OihuLmF0dGVtcHR8fDApKzF9fTp7bmV4dFN0YXRlOiJGQUxMQkFDSyIscGFyYW1zOnsuLi5ufX19eCYmRCYmRC5kZWxldGUoeCk7ZWsoeEQoay5pbnB1dCkpKCk7ay5jb25maWc/LlJWJiZnLmFMKGsuY29uZmlnLlJWKTtpZighQSlyZXR1cm57bmV4dFN0YXRlOiJGQUxMQkFDSyIscGFyYW1zOnsuLi5ufX07aWYoQSYmdHlwZW9mIEE9PT0ib2JqZWN0IiYmIUFycmF5LmlzQXJyYXkoQSkmJih4PUEseC5lcnJvck1ldGFkYXRhPy5zdGF0dXMmJgooeD14LmVycm9yTWV0YWRhdGEuc3RhdHVzLEg9eD09PTUwM3x8eD09PTUwNHx8eD09PTQyOT8yOng+PTQwMCYmeDw1MDB8fHg+PTUwMD8zOjAsVW8oSCkmJmcubCgid2ViX2VuYWJsZV9yZXRyaWVzIikpKSlyZXR1cm57bmV4dFN0YXRlOiJSRVRSWSIscGFyYW1zOnsuLi5uLGVycm9yOm5ldyBFQyhILGBIVFRQIFN0YXR1cyAke3h9YCx4KSxhdHRlbXB0OihuLmF0dGVtcHR8fDApKzF9fTshaCYmQSYmKHg9YigpLHg9eWllbGQqUFAoRW8oeCx7d2lyZVJlc3BvbnNlOkEseXRSZXF1ZXN0OmsscmVzcG9uc2VQYXlsb2FkOnt0eXBlOiJQQUdFX0NPTlRSQUNUIn19KSksSD14LmNvbnRlbnR8fHgucGxheWVyfHx4LnlCLHgudHlwZT09PSJQQUdFX0NPTlRSQUNUIiYmSCYmKEE9SCkpO3g9QTtpZihBcnJheS5pc0FycmF5KEEpKWlmKEE9QS5maWx0ZXIoeT0+ISh5LnBsYXllclJlc3BvbnNlfHx5LndhdGNoTmV4dFJlc3BvbnNlfHx5KS5yZXNwb25zZUNvbnRleHQ/LmZyYW1ld29ya09ubHkpLEEubGVuZ3RoPT09CjEpeD1BWzBdOwplbHNlIGlmKEEubGVuZ3RoPjEpeD1BLmZpbmQoeT0+eS53YXRjaE5leHRSZXNwb25zZSl8fEFbMF07CmVsc2UgcmV0dXJue25leHRTdGF0ZToiRkFJTEVEIixlcnJvcjpFcnJvcigiRmV0Y2hOb2RlIHByb2R1Y2VkIG9ubHkgZnJhbWV3b3JrLW9ubHkgcmVzcG9uc2VzIil9O3JldHVybntuZXh0U3RhdGU6IkRPTkUiLHZhbHVlOmgmJiFnLmwoIndlYl9ubV9mZXRjaF9jaHVua19jYWxsYmFja19rcyIpP0c6eH19KCl9KX19OwpUV1tnLkxYXT1bbEIsaWQsblIsZy5ocChuZXcgZy5BTCgiUkVRVUVTVF9TRVFVRU5DSU5HIikpXTt2YXIgams9Y2xhc3MgZXh0ZW5kcyB5WHtjb25zdHJ1Y3RvcihuLFcpe3N1cGVyKCk7dGhpcy5KPW47dGhpcy5OPVd9ZXhlY3V0ZShuKXt2YXIgVz10aGlzLk4sRD10aGlzLkosYj1uLnl0UmVxdWVzdDtyZXR1cm4gVz8uckEoYi5pbnB1dCxiLmlubmVyVHViZVJlcXVlc3QpP09vKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIHY9eWllbGQqUFAoSFAoVy5zNihiLmlucHV0LGIuaW5uZXJUdWJlUmVxdWVzdCkpKTt2YXIgaz1EKCk7di5wbGF5ZXJSZXNwb25zZSYmdi53YXRjaE5leHRSZXNwb25zZT8oeWllbGQqUFAoeXEoayx7d2lyZVJlc3BvbnNlOntwbGF5ZXJSZXNwb25zZTp2LnBsYXllclJlc3BvbnNlfSx5dFJlcXVlc3Q6bi55dFJlcXVlc3QsY2h1bmtDYWxsYmFjazpuLmNodW5rQ2FsbGJhY2sscmVzcG9uc2VQYXlsb2FkOnt0eXBlOiJQQUdFX0NPTlRSQUNUIn0sZXh0cmFjdGVkUmVzcG9uc2U6di5wbGF5ZXJSZXNwb25zZX0pKSxrPXlpZWxkKlBQKHlxKGssCnt3aXJlUmVzcG9uc2U6e3dhdGNoTmV4dFJlc3BvbnNlOnYud2F0Y2hOZXh0UmVzcG9uc2V9LHl0UmVxdWVzdDpuLnl0UmVxdWVzdCxjaHVua0NhbGxiYWNrOm4uY2h1bmtDYWxsYmFjayxyZXNwb25zZVBheWxvYWQ6e3R5cGU6IlBBR0VfQ09OVFJBQ1QifSxleHRyYWN0ZWRSZXNwb25zZTp2LndhdGNoTmV4dFJlc3BvbnNlfSkpKTprPXlpZWxkKlBQKHlxKGsse3dpcmVSZXNwb25zZTp2LHl0UmVxdWVzdDpuLnl0UmVxdWVzdCxjaHVua0NhbGxiYWNrOm4uY2h1bmtDYWxsYmFjayxyZXNwb25zZVBheWxvYWQ6e3R5cGU6IlBBR0VfQ09OVFJBQ1QifSxleHRyYWN0ZWRSZXNwb25zZTp2fSkpO3ZhciBoPWsuY29udGVudHx8ay5wbGF5ZXJ8fGsueUI7ay50eXBlPT09IlBBR0VfQ09OVFJBQ1QiJiZoJiYodj1oKTtyZXR1cm57bmV4dFN0YXRlOiJET05FIix2YWx1ZTp2fX0oKX0pOkhQKHtuZXh0U3RhdGU6IkNPTlRFWFQiLApwYXJhbXM6bn0pfX07amtbZy5MWF09W25SLGcuaHAoR3h0KV07dmFyIENsPWNsYXNzIGV4dGVuZHMgeVh7Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLk49bn1leGVjdXRlKG4pe3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7dmFyIFc9dGhpcztyZXR1cm4gZnVuY3Rpb24qKCl7dHJ5e3ZhciBEPXlpZWxkKlBQKFZFMihXLG4uY29tbWFuZCwhIW4uY2h1bmtDYWxsYmFjaykpfWNhdGNoKGIpe3JldHVybntuZXh0U3RhdGU6IkZBSUxFRCIsZXJyb3I6Yn19cmV0dXJuKEQ9RC5EKG4uY29tbWFuZCxuLmZvcm0sbi5pZGVudGl0eSkpP3tuZXh0U3RhdGU6IkNBQ0hFIixwYXJhbXM6e3l0UmVxdWVzdDpELGNodW5rQ2FsbGJhY2s6bi5jaHVua0NhbGxiYWNrfX06e25leHRTdGF0ZToiRkFJTEVEIixlcnJvcjpFcnJvcigiRmFpbGVkIHRvIGJ1aWxkIHJlcXVlc3QgZm9yIGNvbW1hbmQiKX19KCl9KX19OwpDbFtnLkxYXT1bTWFdO3ZhciBCUD1jbGFzcyBleHRlbmRzIHlYe2V4ZWN1dGUobil7cmV0dXJuIE9vKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIHtpbm5lclR1YmVSZXF1ZXN0OlcsYXBpUGF0aDpELGNsaWNrVHJhY2tpbmdQYXJhbXM6Yixjb25maWc6dj17Qkc6e2lkZW50aXR5OnU5fX0saW5jbHVkZUN1cnJlbnRTY3JlZW5Ob25jZTprPSEwLGNodW5rQ2FsbGJhY2s6aH09bjtXLmNvbnRleHR8fChXLmNvbnRleHQ9Zy52YihiLGspKTt2YXIgeD1acihLJChEKSk7cmV0dXJue25leHRTdGF0ZToiQ0FDSEUiLHBhcmFtczp7eXRSZXF1ZXN0OntpbnB1dDp4LFBpOlV6KHgpLGlubmVyVHViZVJlcXVlc3Q6Vyxjb25maWc6dn0sY2h1bmtDYWxsYmFjazpofX19KCl9KX19O3ZhciB0NE09Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy50ZT1ufXJ1bihuLFcpe3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7dmFyIEQ9dGhpcztyZXR1cm4gZnVuY3Rpb24qKCl7Zm9yKHZhciBiPW4sdj1XLGs9W107Oyl7ay5wdXNoKFN0cmluZyhiKSk7dj15aWVsZCpQUChELnRlW2JdLmV4ZWN1dGUodikpO2lmKHYubmV4dFN0YXRlPT09IkRPTkUiKXJldHVybiBrLnB1c2goIkRPTkUiKSx2LnZhbHVlO2lmKHYubmV4dFN0YXRlPT09IkZBSUxFRCIpdGhyb3cgay5wdXNoKGBGQUlMRUQoJHt2LmVycm9yLm1lc3NhZ2V8fCJlcnJvciJ9KWApLHYuZXJyb3I7Yj12Lm5leHRTdGF0ZTt2PXYucGFyYW1zfX0oKX0pfX07Zy5Ncj1jbGFzcyBleHRlbmRzIHQ0TXt9O2cuTXIucHJvdG90eXBlLkQ9V1ooMSk7Zy5NcltnLkxYXT1bd19dO3ZhciBGNz1jbGFzcyBleHRlbmRzIHlYe2V4ZWN1dGUobil7cmV0dXJuIE9vKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIFc9bi55dFJlcXVlc3QsRD1uLmVycm9yLGI9bi5hdHRlbXB0LHY9bi5jaHVua0NhbGxiYWNrLGs9Vy5jb25maWc/Llh4O2lmKCEoayYmRCBpbnN0YW5jZW9mIEVDJiZVbyhELnR5cGUpKXx8Yj4oay5tYXhSZXRyaWVzPz8wKSlyZXR1cm57bmV4dFN0YXRlOiJGQUxMQkFDSyIscGFyYW1zOnt5dFJlcXVlc3Q6VyxjaHVua0NhbGxiYWNrOnZ9fTt2YXIgaD0oRD1rLmtVKT9ELlBaKGIpOi0xO2g9PT0tMSYmKGg9MUUzKTtrLlQ2IT09dm9pZCAwJiYoaD1NYXRoLm1pbihoLGsuVDYpKTt5aWVsZCpQUChIUChuZXcgUHJvbWlzZSh4PT57Zy5WeCgwLHgsNCxoKX0pKSk7CnJldHVybntuZXh0U3RhdGU6IkZFVENIIixwYXJhbXM6e3l0UmVxdWVzdDpXLGNodW5rQ2FsbGJhY2s6dixhdHRlbXB0OmJ9fX0oKX0pfX07dmFyIFJqPWNsYXNzIGV4dGVuZHMgeVh7ZXhlY3V0ZShuKXtyZXR1cm4gT28odGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgVz1uLmNodW5rQ2FsbGJhY2ssRD1uLnJlc3BvbnNlUGF5bG9hZCxiPW4ud2lyZVJlc3BvbnNlO1cmJihXKEQpLCJwbGF5ZXJSZXNwb25zZSJpbiBiJiZiLnBsYXllclJlc3BvbnNlJiYoZy5EeSgpLGJRKDQpKSk7cmV0dXJue25leHRTdGF0ZToiRE9ORSIsdmFsdWU6RH19KCl9KX19O3ZhciAkejI9WyJ0eXBlLmdvb2dsZWFwaXMuY29tL3lvdXR1YmUuYXBpLnBmaWlubmVydHViZS5Zb3V0dWJlQXBpSW5uZXJ0dWJlLkJyb3dzZVJlc3BvbnNlIiwidHlwZS5nb29nbGVhcGlzLmNvbS95b3V0dWJlLmFwaS5wZmlpbm5lcnR1YmUuWW91dHViZUFwaUlubmVydHViZS5QbGF5ZXJSZXNwb25zZSIsInR5cGUuZ29vZ2xlYXBpcy5jb20veW91dHViZS5hcGkucGZpaW5uZXJ0dWJlLllvdXR1YmVBcGlJbm5lcnR1YmUuUGFuZWxSZXNwb25zZSJdLFFxPWNsYXNzIGV4dGVuZHMgeVh7ZXhlY3V0ZShuKXtyZXR1cm4gT28odGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgVz1uLm9uZVBsYXRmb3JtRXJyb3I7aWYoVyYmImRldGFpbHMiaW4gVyYmVy5kZXRhaWxzKXtXPVcuZGV0YWlscztmb3IobGV0IEQgb2YgVylpZigoVz1EWyJAdHlwZSJdKSYmJHoyLmluZGV4T2YoVyk+LTEpcmV0dXJuIGRlbGV0ZSBEWyJAdHlwZSJdLHtuZXh0U3RhdGU6IlBST0NFU1NfUkVTUE9OU0UiLApwYXJhbXM6ey4uLm4sZXh0cmFjdGVkUmVzcG9uc2U6RH19fXJldHVybntuZXh0U3RhdGU6IkZBSUxFRCIsZXJyb3I6RXJyb3IoIkVycm9yIHJlc3BvbnNlIGNvdWxkIG5vdCBiZSB1bnBhY2tlZCIpfX0oKX0pfX07dmFyIFZxPWNsYXNzIGV4dGVuZHMgeVh7Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLk49bn1leGVjdXRlKG4pe3ZhciBXPXRoaXMuTjtyZXR1cm4gT28odGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgRD1uLmV4dHJhY3RlZFJlc3BvbnNlLGI9bi55dFJlcXVlc3Qsdj1uLnJlc3BvbnNlUGF5bG9hZCxrPW4ud2lyZVJlc3BvbnNlO2lmKEQmJiEoImNvZGUiaW4gRHx8ImVycm9yImluIEQpJiYhRC5zZXF1ZW5jZU1ldGFEYXRhPy5za2lwUHJvY2Vzc2luZylmb3IobGV0IGggb2Ygc28pV1toXSYmV1toXS5oYW5kbGVSZXNwb25zZShELGIpO2sud2F0Y2hOZXh0UmVzcG9uc2V8fGsucmVlbEl0ZW1XYXRjaFJlc3BvbnNlP2sud2F0Y2hOZXh0UmVzcG9uc2U/di5jb250ZW50PWsud2F0Y2hOZXh0UmVzcG9uc2U6di5jb250ZW50PWsucmVlbEl0ZW1XYXRjaFJlc3BvbnNlOmsucGxheWVyUmVzcG9uc2U/di5wbGF5ZXI9ay5wbGF5ZXJSZXNwb25zZTprLnJlZWxXYXRjaFNlcXVlbmNlUmVzcG9uc2U/CnYueUI9ay5yZWVsV2F0Y2hTZXF1ZW5jZVJlc3BvbnNlOnYuY29udGVudD1rO3JldHVybntuZXh0U3RhdGU6IkNBTExCQUNLX0RJU1BBVENIRVIiLHBhcmFtczpufX0oKX0pfX07ClZxW2cuTFhdPVtWV107dmFyIFdHPWNsYXNzIGV4dGVuZHMgdDRNe307V0dbZy5MWF09W2FqXTt2YXIgY1A9Y2xhc3MgZXh0ZW5kcyB5WHtleGVjdXRlKG4pe3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBXPW4ud2lyZVJlc3BvbnNlLEQ7QXJyYXkuaXNBcnJheShXKT9EPVdbMF06dHlwZW9mIFc9PT0ib2JqZWN0IiYmVyE9PW51bGwmJigicGxheWVyUmVzcG9uc2UiaW4gV3x8IndhdGNoTmV4dFJlc3BvbnNlImluIFd8fCJyZWVsSXRlbVdhdGNoUmVzcG9uc2UiaW4gV3x8InJlZWxXYXRjaFNlcXVlbmNlUmVzcG9uc2UiaW4gVyk/RD1XLnBsYXllclJlc3BvbnNlfHxXLndhdGNoTmV4dFJlc3BvbnNlfHxXLnJlZWxJdGVtV2F0Y2hSZXNwb25zZXx8Vy5yZWVsV2F0Y2hTZXF1ZW5jZVJlc3BvbnNlOkQ9VztyZXR1cm4gRCYmImVycm9yImluIEQ/e25leHRTdGF0ZToiRVJST1JfVU5QQUNLRVIiLHBhcmFtczp7Li4ubixvbmVQbGF0Zm9ybUVycm9yOkQuZXJyb3J9fTp7bmV4dFN0YXRlOiJQUk9DRVNTX1JFU1BPTlNFIixwYXJhbXM6ey4uLm4sZXh0cmFjdGVkUmVzcG9uc2U6RH19fSgpfSl9fTt2YXIgUEd4PWNsYXNzIGV4dGVuZHMgUEN7Vygpe3JldHVybiBDOGJ9Z2V0IGooKXtyZXR1cm4hMH1OKG4pe3JldHVybiBnLncobixMdTEpfHx2b2lkIDB9SihuLFcsRD17fSl7Vy5jaGFubmVsSWRzJiYobi5jaGFubmVsSWRzPVcuY2hhbm5lbElkcyk7Vy5zaWxvTmFtZSYmKG4uc2lsb05hbWU9Vy5zaWxvTmFtZSk7Vy5wYXJhbXMmJihuLnBhcmFtcz1XLnBhcmFtcyk7RC5ib3RndWFyZFJlc3BvbnNlJiYobi5ib3RndWFyZFJlc3BvbnNlPUQuYm90Z3VhcmRSZXNwb25zZSk7RC5mZWF0dXJlJiYobi5jbGllbnRGZWF0dXJlPUQuZmVhdHVyZSl9fTt2YXIgWmh0PWNsYXNzIGV4dGVuZHMgUEN7Vygpe3JldHVybiBCeWl9Z2V0IGooKXtyZXR1cm4hMH1OKG4pe3JldHVybiBnLncobixoblUpfHx2b2lkIDB9SihuLFcpe1cuY2hhbm5lbElkcyYmKG4uY2hhbm5lbElkcz1XLmNoYW5uZWxJZHMpO1cuc2lsb05hbWUmJihuLnNpbG9OYW1lPVcuc2lsb05hbWUpO1cucGFyYW1zJiYobi5wYXJhbXM9Vy5wYXJhbXMpfX07dmFyIFI4PWNsYXNzIGV4dGVuZHMgUEN7Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLmNKPW59Vygpe3JldHVybiBkJFN9TihuKXtyZXR1cm4gZy53KG4sdXhDKXx8Zy53KG4sb05pKXx8Zy53KG4saXpTKX1KKG4sVyl7Vy5zZXJpYWxpemVkU2hhcmVFbnRpdHkmJihuLnNlcmlhbGl6ZWRTaGFyZWRFbnRpdHk9Vy5zZXJpYWxpemVkU2hhcmVFbnRpdHkpO1cuY2xpZW50UGFyYW1JZGVudGlmaWVyJiZ0aGlzLmNKPy5OKFcuY2xpZW50UGFyYW1JZGVudGlmaWVyKSYmKG4uY2xpZW50UGFyYW1zPXRoaXMuY0ouSihXLmNsaWVudFBhcmFtSWRlbnRpZmllcikpfX07UjhbZy5MWF09W25ldyBnLkFMKCJTSEFSRV9DTElFTlRfUEFSQU1TX1BST1ZJREVSX1RPS0VOIildO3ZhciBtZlM9Y2xhc3MgZXh0ZW5kcyBQQ3tXKCl7cmV0dXJuIGxPTX1nZXQgaigpe3JldHVybiEwfU4obil7cmV0dXJuIGcudyhuLFNZdyl8fHZvaWQgMH1KKG4sVyxEKXtuLmZlZWRiYWNrVG9rZW5zPVtdO1cuZmVlZGJhY2tUb2tlbiYmbi5mZWVkYmFja1Rva2Vucy5wdXNoKFcuZmVlZGJhY2tUb2tlbik7aWYoVz1XLmNwbnx8RC5jcG4pbi5mZWVkYmFja0NvbnRleHQ9e2NwbjpXfTtuLmlzRmVlZGJhY2tUb2tlblVuZW5jcnlwdGVkPSEhRC5pc19mZWVkYmFja190b2tlbl91bmVuY3J5cHRlZDtuLnNob3VsZE1lcmdlPSExO0QuZXh0cmFfZmVlZGJhY2tfdG9rZW5zJiYobi5zaG91bGRNZXJnZT0hMCxuLmZlZWRiYWNrVG9rZW5zPW4uZmVlZGJhY2tUb2tlbnMuY29uY2F0KEQuZXh0cmFfZmVlZGJhY2tfdG9rZW5zKSl9fTt2YXIgSzRpPWNsYXNzIGV4dGVuZHMgUEN7Vygpe3JldHVybiBUeXd9TihuKXtyZXR1cm4gZy53KG4sa2l3KXx8dm9pZCAwfUoobixXKXtXLnBhcmFtcyYmKG4ucGFyYW1zPVcucGFyYW1zKTtXLnNlY29uZGFyeVBhcmFtcyYmKG4uc2Vjb25kYXJ5UGFyYW1zPVcuc2Vjb25kYXJ5UGFyYW1zKX19O3ZhciBPaHI9Y2xhc3MgZXh0ZW5kcyBQQ3tXKCl7cmV0dXJuIGpkeH1OKG4pe3JldHVybiBnLncobixuWEMpfHx2b2lkIDB9SihuLFcpe1cuYWN0aW9ucyYmKG4uYWN0aW9ucz1XLmFjdGlvbnMpO1cucGFyYW1zJiYobi5wYXJhbXM9Vy5wYXJhbXMpO1cucGxheWxpc3RJZCYmKG4ucGxheWxpc3RJZD1XLnBsYXlsaXN0SWQpfX07dmFyIFVmWj1jbGFzcyBleHRlbmRzIFBDe1coKXtyZXR1cm4gem50fU4obil7cmV0dXJuIGcudyhuLGRJeCl9SihuLFcsRD17fSl7Vy5zZXJpYWxpemVkU2hhcmVFbnRpdHkmJihuLnNlcmlhbGl6ZWRTaGFyZWRFbnRpdHk9Vy5zZXJpYWxpemVkU2hhcmVFbnRpdHkpO0QuaW5jbHVkZUxpc3RJZCYmKG4uaW5jbHVkZUxpc3RJZD0hMCl9fTt2YXIgUVc9bmV3IGcuQUwoIlJFU09MVkVfVVJMX1BSRUZFVENIX1RPS0VOIik7dmFyIGpZPW5ldyBnLkFMKCJDTElFTlRfTkFNRV9UT0tFTiIpO3ZhciBDZj1uZXcgZy5BTCgiREVGQVVMVF9TVE9SRV9FWFBJUkFUSU9OX1RPS0VOIik7dmFyIHJaaD1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuY2xpZW50TmFtZT1uO3RoaXMuSj1XfWFzeW5jIHB1dChuLFcpe1c9ey4uLlcuZGF0YX07Vy5rZXk9bjtXLmNsaWVudE5hbWU9dGhpcy5jbGllbnROYW1lO1cuZXhwaXJlVGltZXN0YW1wTXM9PT12b2lkIDAmJihXLmV4cGlyZVRpbWVzdGFtcE1zPShNYXRoLnJvdW5kKCgwLGcuUikoKSkrdGhpcy5KKS50b1N0cmluZygpKTtyZXR1cm4gRHcodGhpcyxuLFcpfX07clpoW2cuTFhdPVtqWSxDZl07dmFyIGJoPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuZGF0YT17Li4ubn07ZGVsZXRlIHRoaXMuZGF0YS5pbm5lcnR1YmVSZXNwb25zZT8uZnJhbWV3b3JrVXBkYXRlc31pc0V4cGlyZWQoKXtyZXR1cm4gTnVtYmVyKHRoaXMuZGF0YS5leHBpcmVUaW1lc3RhbXBNc3x8MCk8KDAsZy5SKSgpfWlzUHJvY2Vzc2VkKCl7cmV0dXJuISF0aGlzLmRhdGEuaXNQcm9jZXNzZWR9fTt2YXIgQTNqPWNsYXNzIGV4dGVuZHMgclpoe2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKTt0aGlzLk49bmV3IE1hcH1hc3luYyBnZXQobil7cmV0dXJuIHZHKHRoaXMsbil9YXN5bmMgcmVtb3ZlKG4pe2tNKHRoaXMsbil9YXN5bmMgVGkoKXt0aGlzLk4uZm9yRWFjaChuPT57Y2xlYXJUaW1lb3V0KG4udGltZXIpfSk7CnRoaXMuTi5jbGVhcigpfWhhcyhuKXtyZXR1cm4hIXRoaXMuTi5nZXQobil9dUIoKXtyZXR1cm4gdGhpcy5OLmtleXMoKX19O3ZhciBzb2I9Y2xhc3MgZXh0ZW5kcyBQQ3tXKCl7cmV0dXJuIHN2Mn1OKG4pe3JldHVybiBnLncobixUZSl9SihuLFcpe1cudmlkZW9JZCYmKG4ucGxheWVyUmVxdWVzdD17dmlkZW9JZDpXLnZpZGVvSWR9LFcucGxheWVyUGFyYW1zJiYobi5wbGF5ZXJSZXF1ZXN0LnBhcmFtcz1XLnBsYXllclBhcmFtcyksVy5yYWN5Q2hlY2tPayYmKG4ucGxheWVyUmVxdWVzdC5yYWN5Q2hlY2tPaz0hIVcucmFjeUNoZWNrT2spLFcuY29udGVudENoZWNrT2smJihuLnBsYXllclJlcXVlc3QuY29udGVudENoZWNrT2s9ISFXLmNvbnRlbnRDaGVja09rKSk7Vy5wYXJhbXMmJihuLnBhcmFtcz1XLnBhcmFtcyk7Vy5pbnB1dFR5cGUmJihuLmlucHV0VHlwZT1XLmlucHV0VHlwZSk7bi5kaXNhYmxlUGxheWVyUmVzcG9uc2U9ITB9VihuKXt2YXIgVzsobj10aGlzLlgobikpJiYoVz17SG46e1JMOm59fSk7Zy5sKCJ3ZWJfbG9nX3JlZWxzX3RpY2tzIikmJihXPVd8fHt9LFcuTGE9InJfd3JzIixXLlJWPSJyX3dyciIpOwpyZXR1cm4gV31YKG4pe249dGhpcy5OKG4pO2lmKG4/LnZpZGVvSWQpe3ZhciBXPXt2aWRlb0lkOm4udmlkZW9JZH07bi5wYXJhbXMmJihXLnBhcmFtcz1uLnBhcmFtcyk7cmV0dXJuIHlIKCJyZWVsX2l0ZW1fd2F0Y2giLFcpfX19O3ZhciBOdE09bmV3IGcuQUwoIkVOVElUWV9TVEFURV9UT0tFTiIpO3ZhciBZa1M9Y2xhc3N7Y29uc3RydWN0b3IoKXt2YXIgbj1wRmksVz1xTihVeGooKSk7dGhpcy5zdG9yZT0kZihuLHZvaWQgMCxXKX1nZXRTdGF0ZSgpe3JldHVybiB0aGlzLnN0b3JlLmdldFN0YXRlKCl9ZGlzcGF0Y2gobil7cmV0dXJuIHRoaXMuc3RvcmUuZGlzcGF0Y2gobil9c3Vic2NyaWJlKG4pe3JldHVybiB0aGlzLnN0b3JlLnN1YnNjcmliZShuKX1yZXBsYWNlUmVkdWNlcihuKXtyZXR1cm4gdGhpcy5zdG9yZS5yZXBsYWNlUmVkdWNlcihuKX1bU3ltYm9sLm9ic2VydmFibGVdKCl7cmV0dXJuIHRoaXMuc3RvcmVbU3ltYm9sLm9ic2VydmFibGVdKCl9fTt2YXIgUzU9Y2xhc3N7Y29uc3RydWN0b3Iobj1bXSl7dGhpcy5OPVtdO3RoaXMuVz10aGlzLko9MDt0aGlzLlg9dm9pZCAwO3RoaXMudG90YWxMZW5ndGg9MDtuLmZvckVhY2goVz0+e3RoaXMuYXBwZW5kKFcpfSl9aigpe3JldHVybiB0aGlzLnRvdGFsTGVuZ3RofWFwcGVuZChuKXtpZih4TSh0aGlzLG4pKXtsZXQgVz10aGlzLk5bdGhpcy5OLmxlbmd0aC0xXTsKdGhpcy5OW3RoaXMuTi5sZW5ndGgtMV09bmV3IFVpbnQ4QXJyYXkoVy5idWZmZXIsVy5ieXRlT2Zmc2V0LFcubGVuZ3RoK24ubGVuZ3RoKTtMUih0aGlzKX1lbHNlIHRoaXMuTi5wdXNoKG4pO3RoaXMudG90YWxMZW5ndGgrPW4ubGVuZ3RofXNwbGl0KG4pe3ZhciBXPW5ldyBTNSxEPW5ldyBTNTtmb3IobGV0IGIgb2YgdGhpcy5OKW4+PWIubGVuZ3RoPyhXLmFwcGVuZChiKSxuLT1iLmxlbmd0aCk6bj8oVy5hcHBlbmQobmV3IFVpbnQ4QXJyYXkoYi5idWZmZXIsYi5ieXRlT2Zmc2V0LG4pKSxELmFwcGVuZChuZXcgVWludDhBcnJheShiLmJ1ZmZlcixiLmJ5dGVPZmZzZXQrbixiLmxlbmd0aC1uKSksbj0wKTpELmFwcGVuZChiKTtyZXR1cm57Q3M6VyxZOTpEfX1pc0ZvY3VzZWQobil7cmV0dXJuIG4+PXRoaXMuVyYmbjx0aGlzLlcrdGhpcy5OW3RoaXMuSl0ubGVuZ3RofWZvY3VzKG4pe2lmKCF0aGlzLmlzRm9jdXNlZChuKSl7Zm9yKG48dGhpcy5XJiZMUih0aGlzKTt0aGlzLlcrdGhpcy5OW3RoaXMuSl0ubGVuZ3RoPD0KbiYmdGhpcy5KPHRoaXMuTi5sZW5ndGg7KXRoaXMuVys9dGhpcy5OW3RoaXMuSl0ubGVuZ3RoLHRoaXMuSis9MTt0aGlzLlg9dm9pZCAwfX19O3ZhciBZTSxORCxmUjtnLk5tPSgoKT0+e3ZhciBuPWI9Pm5ldyBVaW50OEFycmF5KGIpLFc9Yj0+e3ZhciB2PW5ldyBVaW50OEFycmF5KGIubGVuZ3RoKTsKZm9yKGxldCBrPTA7azxiLmxlbmd0aDtrKyspdltrXT1iW2tdO3JldHVybiB2fSxEPW5ldyBVaW50OEFycmF5KFsxXSk7CnJldHVybiBELmxlbmd0aD09PTEmJkRbMF09PT0xP246V30pKCk7CllNPUFycmF5KDEwMjQpO05EPXR5cGVvZiBUZXh0RGVjb2RlciE9PSJ1bmRlZmluZWQiP25ldyBUZXh0RGVjb2Rlcjp2b2lkIDA7ZlI9dHlwZW9mIFRleHRFbmNvZGVyIT09InVuZGVmaW5lZCI/bmV3IFRleHRFbmNvZGVyOnZvaWQgMDt2YXIgQVI9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW47dGhpcy5wb3M9MDt0aGlzLko9LTF9fTt2YXIgejY9Y2xhc3N7Y29uc3RydWN0b3Iobj00MDk2KXt0aGlzLldWPXZvaWQgMDt0aGlzLnBvcz0wO3RoaXMuSj1bXTt0aGlzLk49ZGQobik7dGhpcy52aWV3PW5ldyBEYXRhVmlldyh0aGlzLk4uYnVmZmVyLHRoaXMuTi5ieXRlT2Zmc2V0LHRoaXMuTi5ieXRlTGVuZ3RoKX19O3ZhciBhdz17YW5pbWF0aW9uRW50aXR5OjMwMixhY2NvdW50TGlua1N0YXR1c0VudGl0eToxMjIsYXNrU3R1ZGlvR2VuZXJhdGVkRGF0YUVudGl0eTo2MzAsYm9vbGVhbkVudGl0eTozMDcsYXNrU3R1ZGlvQ29udmVyc2F0aW9uU3VtbWFyeUVudGl0eTo2MzcsYnV0dG9uRW50aXR5OjM1OCxjYXB0aW9uVHJhY2s6MjI1LGNoYW5uZWxIYW5kbGU6Mjc1LGNoaXBFbnRpdHk6NDk4LGNvbW1lcmNlQWNxdWlzaXRpb25DbGllbnRQYXlsb2FkRW50aXR5OjI3Nixjb21tZXJjZUNhcnRMaXN0RW50aXR5OjIzNixjb21tZXJjZVRva2VuQmFsYW5jZUVudGl0eTo1MzIsY29tcG9zaXRlU291cmNlRW50aXR5OjU5NCxjb250ZXh0Tm90ZUZlZWRFbnRpdHlQYXlsb2FkOjQ4Myxjb250ZXh0Tm90ZVVzZXJSYXRpbmdFbnRpdHlQYXlsb2FkOjU3Nixjb250aW51YXRpb25Ub2tlbkVudGl0eTo0MDYsZG93bmxvYWRRdWFsaXR5UGlja2VyRW50aXR5OjIwMixkb3dubG9hZHNQYWdlUmVmcmVzaFRva2VuRW50aXR5OjI5OSwKZG93bmxvYWRzUGFnZVZpZXdDb25maWd1cmF0aW9uRW50aXR5OjI2NCxkb3dubG9hZFN0YXR1c0VudGl0eToxNDEsZGlzbWlzc1N0YXRlOjU0MCxzZnZBdWRpb0l0ZW1DdXJyZW50bHlQbGF5aW5nRW50aXR5OjE4NixlbW9qaUZvdW50YWluRGF0YUVudGl0eTozOTMsZW1vamlDdXN0b21pemF0aW9uU2V0RW50aXR5OjQ5NixmYWtlQ2hhbm5lbDoyLGZha2VQbGF5bGlzdDoyNzksZmFrZVBsYXlsaXN0RW50cnlDb2xsZWN0aW9uOjI4MCxmYWtlVmlkZW86MTgyLGZha2VWaWRlb0Rlc2NyaXB0aW9uOjI3OCxmZWF0dXJlZFByb2R1Y3RzRW50aXR5OjM5MixzYXZlZFByb2R1Y3RzU3RhdGVFbnRpdHk6NTk4LGZsb3dTdGF0ZUVudGl0eToyNTIsaWNvbkJhZGdlRW50aXR5OjIyOSxpbnRlcnN0aXRpYWxJbnRlcmFjdGlvblN0YXRlRW50aXR5OjQ0MyxsaWtlQnV0dG9uQW5pbWF0aW9uRW50aXR5OjU2NyxsaXZlQ2hhdFBvbGxTdGF0ZUVudGl0eToyMTcsbGl2ZVZpZXdlckxlYWRlcmJvYXJkQ2hhdEVudHJ5UG9pbnRTdGF0ZUVudGl0eTo1NjMsCmxpdmVWaWV3ZXJMZWFkZXJib2FyZFBvaW50c0VudGl0eTo1NjQsbGl2ZVJlYWN0aW9uc0RhdGFFbnRpdHk6NTAzLGxvZ29FbnRpdHk6MjQ1LG1hY3JvTWFya2VyRW50aXR5OjMyOSxtYWluRG93bmxvYWRzTGlicmFyeUVudGl0eToxNTgsbWFpbkRvd25sb2Fkc0xpc3RFbnRpdHk6MTY0LG1haW5QbGF5bGlzdERvd25sb2FkU3RhdGVFbnRpdHk6MzczLG1haW5QbGF5bGlzdEVudGl0eTozMDYsbWFpblBsYXlsaXN0VmlkZW9FbnRpdHk6MzY4LG1haW5WaWRlb0Rvd25sb2FkU3RhdGVFbnRpdHk6MjYyLG1haW5WaWRlb0VudGl0eToyNjEsbWFya2Vyc0VuZ2FnZW1lbnRQYW5lbFN5bmNFbnRpdHk6MTk2LG1hcmtlcnNWaXNpYmlsaXR5T3ZlcnJpZGVFbnRpdHk6MzEyLG11c2ljQWxidW1SZWxlYXNlRGV0YWlsOjE4LG11c2ljQWxidW1SZWxlYXNlRG93bmxvYWRNZXRhZGF0YUVudGl0eToyNTksbXVzaWNBbGJ1bVJlbGVhc2U6MTcsbXVzaWNBbGJ1bVJlbGVhc2VVc2VyRGV0YWlsOjE5LG11c2ljQXJ0aXN0RGV0YWlsOjIxLAptdXNpY0FydGlzdDoyMCxtdXNpY0FydGlzdFVzZXJEZXRhaWw6MjIsbXVzaWNEb3dubG9hZHNMaWJyYXJ5RW50aXR5OjI1NyxtdXNpY0xpYnJhcnlFZGl0OjEyMSxtdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHk6MzE4LG11c2ljUGxheWxpc3Q6MjQsbXVzaWNQbGF5bGlzdERvd25sb2FkTWV0YWRhdGFFbnRpdHk6MjQ4LG11c2ljU2hhcmU6MTAwLG11c2ljVHJhY2tEZXRhaWw6MjksbXVzaWNUcmFja0Rvd25sb2FkTWV0YWRhdGFFbnRpdHk6MjM0LG11c2ljVHJhY2s6MjgsbXVzaWNUcmFja1VzZXJEZXRhaWw6MzAsb2ZmbGluZU9yY2hlc3RyYXRpb25BY3Rpb25XcmFwcGVyRW50aXR5OjE2OSxvZmZsaW5lVmlkZW9Qb2xpY3k6MTMwLG9mZmxpbmVWaWRlb1N0cmVhbXM6MTk4LG9mZmxpbmVhYmlsaXR5RW50aXR5OjI0NixvcmNoZXN0cmF0aW9uV2ViU2FtcGxpbmdFbnRpdHk6MjQyLHBhZ2VIZWFkZXJFbnRpdHk6NDk1LHBhcnR5R2FtZVBhbmVsRW50aXR5OjYxOCxzbGlkZXJHYW1lUGFuZWxFbnRpdHk6NjMzLApwZHBTdGF0ZUVudGl0eTo1MjQscGlubmVkUHJvZHVjdEVudGl0eToyNzMscGxheWJhY2tEYXRhOjExOSxwbGF5ZXJTdGF0ZUVudGl0eTozMjMscGxheWxpc3RUaHVtYm5haWxFZGl0c0VudGl0eTo1MzkscXVhbnRpdHlJbmNyZW1lbnRlckVudGl0eTozNTYscmVmcmVzaDoxNDgsc2F2ZVRvUGxheWxpc3RMaXN0RW50aXR5OjIzMSxzZWxlY3RlZENoaXBJbmRleEVudGl0eVBheWxvYWQ6NDc5LHNlbGVjdGlvblZhbHVlTGlzdEVudGl0eTo2MzQsc2V0dGluZ0VudGl0eToyOTcsc3RyaW5nRW50aXR5OjM4MixzdWdnZXN0ZWRGZWVkYmFja0NoaXBTdGF0ZUVudGl0eTo0ODUsdHJhbnNmZXI6MTIwLHRyZW5kaW5nT2ZmZXJFbnRpdHk6NDY5LHVucGx1Z2dlZFNpZGVzaGVldEhlYWRlclN0YXRlRW50aXR5OjYzNSx2aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eTo0NjEsdmlkZW9PdmVydmlld0FzeW5jRGF0YUVudGl0eTo1NDUsdmlkZW9QbGF5YmFja1Bvc2l0aW9uRW50aXR5Ojc2LHZvdGluZ0VudGl0eTo1NjEsCnl0TWFpbkNoYW5uZWxFbnRpdHk6MTUyLHlvdWNoYXRQZW5kaW5nUmVzcG9uc2VFbnRpdHk6NTUzLHl0TWFpbkRvd25sb2FkZWRWaWRlb0VudGl0eToxNTUseXRNYWluVmlkZW9FbnRpdHk6MTUxfSxWQT17fTtmb3IobGV0IFtuLFddb2YgT2JqZWN0LmVudHJpZXMoYXcpKXtsZXQgRD1uLGI9VztiJiYoVkFbYl09RCl9O3ZhciB2ZTt2YXIgSDZ0PSExLGdOLGhFLHgkLExmLGVZLGZIYj1jbGFzcyBleHRlbmRzIGcuRk17Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLmNvdW50ZXI9WzAsMCwwLDBdO3RoaXMuSj1uZXcgVWludDhBcnJheSgxNik7dGhpcy5OPTE2O2lmKCFINnQpe3ZhciBXLEQ9bmV3IFVpbnQ4QXJyYXkoMjU2KSxiPW5ldyBVaW50OEFycmF5KDI1Nik7dmFyIHY9MTtmb3IoVz0wO1c8MjU2O1crKylEW3ZdPVcsYltXXT12LHZePXY8PDFeKHY+PjcmJjI4Myk7Z049bmV3IFVpbnQ4QXJyYXkoMjU2KTtoRT1rJCgyNTYpO3gkPWskKDI1Nik7TGY9ayQoMjU2KTtlWT1rJCgyNTYpO2ZvcihsZXQgaD0wO2g8MjU2O2grKyl7dj1oP2JbMjU1XkRbaF1dOjA7dl49djw8MV52PDwyXnY8PDNedjw8NDt2PXYmMjU1XnY+Pj44Xjk5O2dOW2hdPXY7Vz12PDwxXih2Pj43JiYyODMpO3ZhciBrPVdedjtoRVtoXT1XPDwyNHx2PDwxNnx2PDw4fGs7eCRbaF09azw8MjR8aEVbaF0+Pj44O0xmW2hdPXY8PDI0fHgkW2hdPj4+Cjg7ZVlbaF09djw8MjR8TGZbaF0+Pj44fUg2dD0hMH12PWskKDQ0KTtmb3IoRD0wO0Q8NDtEKyspdltEXT1uWzQqRF08PDI0fG5bNCpEKzFdPDwxNnxuWzQqRCsyXTw8OHxuWzQqRCszXTtmb3IoYj0xO0Q8NDQ7RCsrKW49dltELTFdLEQlNHx8KG49KGdOW24+PjE2JjI1NV1eYik8PDI0fGdOW24+PjgmMjU1XTw8MTZ8Z05bbiYyNTVdPDw4fGdOW24+Pj4yNF0sYj1iPDwxXihiPj43JiYyODMpKSx2W0RdPXZbRC00XV5uO3RoaXMua2V5PXZ9ZW5jcnlwdChuKXt2YXIgVz1uLmxlbmd0aDtuPW5ldyBVaW50OEFycmF5KG4uYnVmZmVyLnNsaWNlKG4uYnl0ZU9mZnNldCxuLmJ5dGVPZmZzZXQrVykpO2Zvcih2YXIgRD10aGlzLkosYj0wO2I8VyYmdGhpcy5OPDE2OyluW2IrK11ePURbdGhpcy5OKytdO2Zvcih2YXIgdj1XLShXLWIpJTE2O2I8djspWDgodGhpcyksbltiKytdXj1EWzBdLG5bYisrXV49RFsxXSxuW2IrK11ePURbMl0sbltiKytdXj1EWzNdLG5bYisrXV49RFs0XSxuW2IrK11ePQpEWzVdLG5bYisrXV49RFs2XSxuW2IrK11ePURbN10sbltiKytdXj1EWzhdLG5bYisrXV49RFs5XSxuW2IrK11ePURbMTBdLG5bYisrXV49RFsxMV0sbltiKytdXj1EWzEyXSxuW2IrK11ePURbMTNdLG5bYisrXV49RFsxNF0sbltiKytdXj1EWzE1XTtpZihiPFcpZm9yKFg4KHRoaXMpLHRoaXMuTj0wO2I8VzspbltiKytdXj1EW3RoaXMuTisrXTtyZXR1cm4gbn19O3ZhciBxYT0hMTsoKCk9Pnt2YXIgbj1iPT5uZXcgVWludDhBcnJheShiKSxXPWI9Pnt2YXIgdj1uZXcgVWludDhBcnJheShiLmxlbmd0aCk7CmZvcihsZXQgaz0wO2s8Yi5sZW5ndGg7aysrKXZba109YltrXTtyZXR1cm4gdn0sRD1uZXcgVWludDhBcnJheShbMV0pOwpyZXR1cm4gRC5sZW5ndGg9PT0xJiZEWzBdPT09MT9uOld9KSgpOwp2YXIgR3I7dmFyIHVvPWNsYXNze2NvbnN0cnVjdG9yKG4pe3ZhciBXPXRFKCk7VyYmKHRoaXMuTj1uZXcgZFhNKG4sVykpO3RoaXMuSj1uZXcgYjEobil9YXN5bmMgZW5jcnlwdChuLFcpe2lmKHRoaXMuTil0cnl7cmV0dXJuIGF3YWl0IHRoaXMuTi5lbmNyeXB0KG4sVyl9Y2F0Y2goRCl7Zy5HcShEKSxxYT0hMCx0aGlzLk49dm9pZCAwfXJldHVybiB0aGlzLkouZW5jcnlwdChuLFcpfWRlY3J5cHQobixXKXtyZXR1cm4gdGhpcy5lbmNyeXB0KG4sVyl9fSxkWE09Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLlc9bjt0aGlzLko9V31hc3luYyBlbmNyeXB0KG4sVyl7dHJ5e3JldHVybiBhd2FpdCBiaDEodGhpcyxuLFcpfWNhdGNoKEQpe3Rocm93IGcuR3EoRCkscWE9ITAsRDt9fX0sYjE9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5KPW59ZW5jcnlwdChuLFcpe3RoaXMuTnx8KHRoaXMuTj1uZXcgZkhiKHRoaXMuSikpO3ZhciBEPXRoaXMuTjtmb3IobGV0IGI9MDtiPDQ7YisrKUQuY291bnRlcltiXT0KV1tiKjRdPDwyNHxXW2IqNCsxXTw8MTZ8V1tiKjQrMl08PDh8V1tiKjQrM107RC5OPTE2O3JldHVybiB0aGlzLk4uZW5jcnlwdChuKX1kZWNyeXB0KG4sVyl7cmV0dXJuIHRoaXMuZW5jcnlwdChuLFcpfX07dmFyIHZtaT1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLmo9bmV3IFVpbnQ4QXJyYXkoNjQpO3RoaXMuVz1uZXcgVWludDhBcnJheSg2NCk7dGhpcy5YPTA7dGhpcy5WPW5ldyBVaW50OEFycmF5KDY0KTt0aGlzLko9MDt0aGlzLmouc2V0KG4pO3RoaXMuVy5zZXQobik7Zm9yKG49MDtuPDY0O24rKyl0aGlzLmpbbl1ePTkyLHRoaXMuV1tuXV49NTQ7dGhpcy5yZXNldCgpfXJlc2V0KCl7JCQodGhpcyk7dGhpcy51cGRhdGUodGhpcy5XKX11cGRhdGUobil7dmFyIFc9MCxEPW4ubGVuZ3RoO3RoaXMuWCs9RDt0aGlzLkomJnRoaXMuSitEPj02NCYmKHRoaXMuVi5zZXQobi5zdWJhcnJheSgwLDY0LXRoaXMuSiksdGhpcy5KKSxXPTY0LXRoaXMuSix0aGlzLko9MCxzZSh0aGlzLHRoaXMuViwwKSk7Zm9yKDtXKzY0PD1EO1crPTY0KXNlKHRoaXMsbixXKTtXPEQmJihuPW4uc3ViYXJyYXkoVyksdGhpcy5WLnNldChuLHRoaXMuSiksdGhpcy5KKz1uLmxlbmd0aCl9fSxyTj1bMTExNjM1MjQwOCwKMTg5OTQ0NzQ0MSwzMDQ5MzIzNDcxLDM5MjEwMDk1NzMsOTYxOTg3MTYzLDE1MDg5NzA5OTMsMjQ1MzYzNTc0OCwyODcwNzYzMjIxLDM2MjQzODEwODAsMzEwNTk4NDAxLDYwNzIyNTI3OCwxNDI2ODgxOTg3LDE5MjUwNzgzODgsMjE2MjA3ODIwNiwyNjE0ODg4MTAzLDMyNDgyMjI1ODAsMzgzNTM5MDQwMSw0MDIyMjI0Nzc0LDI2NDM0NzA3OCw2MDQ4MDc2MjgsNzcwMjU1OTgzLDEyNDkxNTAxMjIsMTU1NTA4MTY5MiwxOTk2MDY0OTg2LDI1NTQyMjA4ODIsMjgyMTgzNDM0OSwyOTUyOTk2ODA4LDMyMTAzMTM2NzEsMzMzNjU3MTg5MSwzNTg0NTI4NzExLDExMzkyNjk5MywzMzgyNDE4OTUsNjY2MzA3MjA1LDc3MzUyOTkxMiwxMjk0NzU3MzcyLDEzOTYxODIyOTEsMTY5NTE4MzcwMCwxOTg2NjYxMDUxLDIxNzcwMjYzNTAsMjQ1Njk1NjAzNywyNzMwNDg1OTIxLDI4MjAzMDI0MTEsMzI1OTczMDgwMCwzMzQ1NzY0NzcxLDM1MTYwNjU4MTcsMzYwMDM1MjgwNCw0MDk0NTcxOTA5LDI3NTQyMzM0NCwKNDMwMjI3NzM0LDUwNjk0ODYxNiw2NTkwNjA1NTYsODgzOTk3ODc3LDk1ODEzOTU3MSwxMzIyODIyMjE4LDE1MzcwMDIwNjMsMTc0Nzg3Mzc3OSwxOTU1NTYyMjIyLDIwMjQxMDQ4MTUsMjIyNzczMDQ1MiwyMzYxODUyNDI0LDI0Mjg0MzY0NzQsMjc1NjczNDE4NywzMjA0MDMxNDc5LDMzMjkzMjUyOThdO3ZhciBZJD1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn19LGhhdz1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuVz1uO3RoaXMuSj1XfX0saksxPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuTj1ufX07dmFyIEpacj17SU5WQUxJRF9FTkNPREVSX1ZFUlNJT046IkludmFsaWQgZW5jb2RlciB2ZXJzaW9uIixLRVlfQ1JFQVRJT05fRkFJTEVEOiJGYWlsZWQgdG8gY3JlYXRlIGVuY29kZXIga2V5IixVTktOT1dOX0RFQ09ERV9FUlJPUjoiRmFpbGVkIHRvIGRlY29kZSBQRVMgZGF0YSIsVU5LTk9XTl9FTkNPREVfRVJST1I6IkZhaWxlZCB0byBlbmNvZGUgUEVTIGRhdGEiLFdST05HX0RBVEFfVFlQRToiRW5jb2RlciBjYW5ub3QgcHJvY2VzcyB0aGUgZGF0YSB0eXBlIn0sZmY9Y2xhc3MgZXh0ZW5kcyBnLlF4e2NvbnN0cnVjdG9yKG4sVz17fSl7c3VwZXIoSlpyW25dLHtuYW1lOiJQRVNFbmNvZGVyRXJyb3IiLHR5cGU6biwuLi5XfSk7dGhpcy50eXBlPW47dGhpcy5sZXZlbD0iV0FSTklORyI7T2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsZmYucHJvdG90eXBlKX19O3ZhciBJSGk9Y2xhc3N7fTt2YXIgU2t0PWNsYXNzIGV4dGVuZHMgSUhpe2NvbnN0cnVjdG9yKG4pe3N1cGVyKCk7dGhpcy5OPW59VyhuLFcpe1c9STgoVyk7bj0obmV3IFRleHRFbmNvZGVyKS5lbmNvZGUoSlNPTi5zdHJpbmdpZnkobikpO3JldHVybiB0aGlzLk4uZW5jcnlwdChuLFcpfUoobixXKXtpZighKG4gaW5zdGFuY2VvZiBVaW50OEFycmF5KSl0aHJvdyBuZXcgZmYoIldST05HX0RBVEFfVFlQRSIse09BOjF9KTt2YXIgRD1uZXcgVGV4dERlY29kZXI7Vz1JOChXKTtuPXRoaXMuTi5kZWNyeXB0KG4sVyk7cmV0dXJuIEpTT04ucGFyc2UoRC5kZWNvZGUobikpfX07dmFyIFh5VT17YW5pbWF0aW9uRW50aXR5OmVuaSxhY2NvdW50TGlua1N0YXR1c0VudGl0eTpta2gsYXNrU3R1ZGlvR2VuZXJhdGVkRGF0YUVudGl0eTp0UFUsYm9vbGVhbkVudGl0eTpyWXIsYnV0dG9uRW50aXR5OkhNdCxjYXB0aW9uVHJhY2s6bEoyLGNoYW5uZWxIYW5kbGU6a2pNLGNoYXRMb2FkaW5nU3RhdGVFbnRpdHk6SU93LGFza1N0dWRpb0NvbnZlcnNhdGlvblN1bW1hcnlFbnRpdHk6R2oxLGNoaXBFbnRpdHk6Z1hVLGNvbW1lcmNlQWNxdWlzaXRpb25DbGllbnRQYXlsb2FkRW50aXR5OlNOeCxjb21tZXJjZUNhcnRMaXN0RW50aXR5OkFNeCxjb21tZXJjZVRva2VuQmFsYW5jZUVudGl0eTptJFMsY29tcG9zaXRlU291cmNlRW50aXR5OiRJTSxtdWx0aXZpZXdTdGFnaW5nRW50aXR5OnJKYixjb250ZXh0Tm90ZUZlZWRFbnRpdHlQYXlsb2FkOnhrdCxjb250ZXh0Tm90ZVVzZXJSYXRpbmdFbnRpdHlQYXlsb2FkOkx0dyxjb250aW51YXRpb25Ub2tlbkVudGl0eTp3d1MsZG93bmxvYWRRdWFsaXR5UGlja2VyRW50aXR5OmlzWiwKZG93bmxvYWRzUGFnZVJlZnJlc2hUb2tlbkVudGl0eTpveGgsZG93bmxvYWRzUGFnZVZpZXdDb25maWd1cmF0aW9uRW50aXR5OkRJMSxkb3dubG9hZFN0YXR1c0VudGl0eTp1NXQsZGlzbWlzc1N0YXRlOlhSUyxzZnZBdWRpb0l0ZW1DdXJyZW50bHlQbGF5aW5nRW50aXR5Old1WixlbW9qaUZvdW50YWluRGF0YUVudGl0eTpyTTEsZW1vamlDdXN0b21pemF0aW9uU2V0RW50aXR5OiQkMixmYWtlQ2hhbm5lbDpwd0MsZmFrZVBsYXlsaXN0OllZcixmYWtlUGxheWxpc3RFbnRyeUNvbGxlY3Rpb246Zl94LGZha2VWaWRlbzpKWWIsZmFrZVZpZGVvRGVzY3JpcHRpb246SV93LGZlYXR1cmVkUHJvZHVjdHNFbnRpdHk6cXZDLHNhdmVkUHJvZHVjdHNTdGF0ZUVudGl0eTpYX1MsZmxvd1N0YXRlRW50aXR5OkFZeCxpY29uQmFkZ2VFbnRpdHk6S3VqLGludGVyc3RpdGlhbEludGVyYWN0aW9uU3RhdGVFbnRpdHk6T3NpLGxpa2VCdXR0b25BbmltYXRpb25FbnRpdHk6Ynp0LGxpdmVDaGF0UG9sbFN0YXRlRW50aXR5OlBMciwKZGF0YUZyZXNobmVzc0VudGl0eTp0R3QsbGl2ZVZpZXdlckxlYWRlcmJvYXJkQ2hhdEVudHJ5UG9pbnRTdGF0ZUVudGl0eTpSTzEsbGl2ZVZpZXdlckxlYWRlcmJvYXJkUG9pbnRzRW50aXR5OlE0cixsaXZlUmVhY3Rpb25zRGF0YUVudGl0eTpzZGksbG9nb0VudGl0eTpLdHgsbWFjcm9NYXJrZXJFbnRpdHk6dk50LG1haW5Eb3dubG9hZHNMaWJyYXJ5RW50aXR5OmRrdCxtYWluRG93bmxvYWRzTGlzdEVudGl0eTpsX1osbWFpblBsYXlsaXN0RG93bmxvYWRTdGF0ZUVudGl0eTpUQTEsbWFpblBsYXlsaXN0RW50aXR5Ok1QdyxtYWluUGxheWxpc3RWaWRlb0VudGl0eTpSNGksbWFpblZpZGVvRG93bmxvYWRTdGF0ZUVudGl0eTpqQmksbWFpblZpZGVvRW50aXR5OmFfaixtYXJrZXJzRW5nYWdlbWVudFBhbmVsU3luY0VudGl0eTprUHIsbWFya2Vyc1Zpc2liaWxpdHlPdmVycmlkZUVudGl0eTpoT3QsbXVzaWNBbGJ1bVJlbGVhc2VEZXRhaWw6ZkpVLG11c2ljQWxidW1SZWxlYXNlRG93bmxvYWRNZXRhZGF0YUVudGl0eTpzNHQsCm11c2ljQWxidW1SZWxlYXNlOkh6aSxtdXNpY0FsYnVtUmVsZWFzZVVzZXJEZXRhaWw6SkoxLG11c2ljQXJ0aXN0RGV0YWlsOlN2WixtdXNpY0FydGlzdDpJSlUsbXVzaWNBcnRpc3RVc2VyRGV0YWlsOkFKaSxtdXNpY0Rvd25sb2Fkc0xpYnJhcnlFbnRpdHk6TmtTLG11c2ljTGlicmFyeUVkaXQ6bUliLG11c2ljTGlicmFyeVN0YXR1c0VudGl0eTpLTXcsbXVzaWNQbGF5bGlzdDpQVHgsbXVzaWNQbGF5bGlzdERvd25sb2FkTWV0YWRhdGFFbnRpdHk6cF9yLG11c2ljU2hhcmU6WnppLG11c2ljVHJhY2tEZXRhaWw6eUpTLG11c2ljVHJhY2tEb3dubG9hZE1ldGFkYXRhRW50aXR5Oll2dCxtdXNpY1RyYWNrOlVJWixtdXNpY1RyYWNrVXNlckRldGFpbDpFTngsb2ZmbGluZU9yY2hlc3RyYXRpb25BY3Rpb25XcmFwcGVyRW50aXR5OlRrdyxvZmZsaW5lVmlkZW9Qb2xpY3k6ajRaLG9mZmxpbmVWaWRlb1N0cmVhbXM6Q1R3LG9mZmxpbmVhYmlsaXR5RW50aXR5OkNMaSxvcmNoZXN0cmF0aW9uV2ViU2FtcGxpbmdFbnRpdHk6QkFVLApwYWdlSGVhZGVyRW50aXR5OnFOWixwYXJ0eUdhbWVQYW5lbEVudGl0eTpwUnQsc2xpZGVyR2FtZVBhbmVsRW50aXR5Ok55MSxwZHBTdGF0ZUVudGl0eTpPTWoscGlubmVkUHJvZHVjdEVudGl0eTpHUE0scGxheWJhY2tEYXRhOkJrdyxwbGF5ZXJTdGF0ZUVudGl0eTp4SVoscGxheWxpc3RUaHVtYm5haWxFZGl0c0VudGl0eToka2IscXVhbnRpdHlJbmNyZW1lbnRlckVudGl0eTpQOHcscmVmcmVzaDpGTXcsc2F2ZVRvUGxheWxpc3RMaXN0RW50aXR5OnZYaixzZWxlY3RlZENoaXBJbmRleEVudGl0eVBheWxvYWQ6TE13LHNlbGVjdGlvblZhbHVlTGlzdEVudGl0eTpzQngsc2V0dGluZ0VudGl0eTp4JFosc3RyaW5nRW50aXR5Ok5BMixzdWdnZXN0ZWRGZWVkYmFja0NoaXBTdGF0ZUVudGl0eTplT3IsdHJhbnNmZXI6d19NLHRyZW5kaW5nT2ZmZXJFbnRpdHk6dHhqLHVucGx1Z2dlZFNpZGVzaGVldEhlYWRlclN0YXRlRW50aXR5OmZPMix2aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eTpNeFMsCnZpZGVvT3ZlcnZpZXdBc3luY0RhdGFFbnRpdHk6Wk1qLHZpZGVvUGxheWJhY2tQb3NpdGlvbkVudGl0eTpKTTIsdm90aW5nRW50aXR5OkdpTSx5dE1haW5DaGFubmVsRW50aXR5Om5OMix5b3VjaGF0UGVuZGluZ1Jlc3BvbnNlRW50aXR5OmdOcix5dE1haW5Eb3dubG9hZGVkVmlkZW9FbnRpdHk6RnRoLHl0TWFpblZpZGVvRW50aXR5OldNWn07dmFyIE5Hdz1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuTj1uO3RoaXMuVz1XO3RoaXMuSj17fX19O3ZhciBBWlo9Y2xhc3MgZXh0ZW5kcyBJSGl7VyhuKXtyZXR1cm4gbn1KKG4pe2lmKG4gaW5zdGFuY2VvZiBVaW50OEFycmF5KXRocm93IG5ldyBmZigiV1JPTkdfREFUQV9UWVBFIix7T0E6MH0pO3JldHVybiBufX07dmFyIGY5aT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuTj17fTt0aGlzLk5bMF09bmV3IEFaWjtpZighZy5sKCJhZXNfcGVzX2VuY29kZXJfa2lsbHN3aXRjaCIpKXt2YXIgbj10aGlzLk47dHJ5e2xldCBiPU0wKCk7dmFyIFc9STgoYik7dmFyIEQ9bmV3IFNrdChuZXcgYjEoVyksbmV3IHVvKFcpKX1jYXRjaChiKXt0aHJvdyBuPWIgaW5zdGFuY2VvZiBFcnJvcj9uZXcgZmYoIktFWV9DUkVBVElPTl9GQUlMRUQiLHtvcmlnaW5hbE1lc3NhZ2U6Yi5tZXNzYWdlfSk6bmV3IGZmKCJLRVlfQ1JFQVRJT05fRkFJTEVEIiksZy5YaihuKSxuO31uWzFdPUR9fX07dmFyIEozaT1jbGFzcyBleHRlbmRzIGcuRk17Y29uc3RydWN0b3IobixXKXtzdXBlcigpO3RoaXMudG9rZW49bjt0aGlzLk49Vzt0aGlzLm9ic2VydmVycz1bXTtuPW5ldyBnLnFpLkJyb2FkY2FzdENoYW5uZWwoYFBFUlNJU1RFTlRfRU5USVRZX1NUT1JFX1NZTkM6JHtNMCgpfWApO24ub25tZXNzYWdlPXRoaXMuSi5iaW5kKHRoaXMpO3RoaXMuY2hhbm5lbD1ufW9ic2VydmUobil7dGhpcy5vYnNlcnZlcnMucHVzaChuKTtyZXR1cm4oKT0+e3ZhciBXPXRoaXMub2JzZXJ2ZXJzLmluZGV4T2Yobik7Vz49MCYmdGhpcy5vYnNlcnZlcnMuc3BsaWNlKFcsMSl9fUoobil7UGUodGhpcyxuLmRhdGEpfW1BKCl7dGhpcy5jaGFubmVsLmNsb3NlKCl9fSx0NTt2YXIgbXpiPWcud0QoKCk9PntpZih3aW5kb3cuTWVkaWFTb3VyY2UmJnR5cGVvZiB3aW5kb3cuTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkPT09ImZ1bmN0aW9uIilyZXR1cm4gd2luZG93Lk1lZGlhU291cmNlLmlzVHlwZVN1cHBvcnRlZCgndmlkZW8vd2VibTsgY29kZWNzPSJ2cDA5LjAwLjUxLjA4LjAxLjAxLjAxLjAxLjAwIicpO2lmKHdpbmRvdy5NYW5hZ2VkTWVkaWFTb3VyY2UmJnR5cGVvZiB3aW5kb3cuTWFuYWdlZE1lZGlhU291cmNlLmlzVHlwZVN1cHBvcnRlZD09PSJmdW5jdGlvbiIpcmV0dXJuIHdpbmRvdy5NYW5hZ2VkTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkKCd2aWRlby93ZWJtOyBjb2RlY3M9InZwMDkuMDAuNTEuMDguMDEuMDEuMDEuMDEuMDAiJyk7dmFyIG49Zy5ycigieXQud2ViLmNvbnRyaWIuaW5uZXJ0dWJlLnJlcXVlc3RzLndhdGNoX3VpLnV0aWxzLnZpZGVvRWxlbWVudF8iKTtufHwobj1nLnpGKCJWSURFTyIpLGcuR2IoInl0LndlYi5jb250cmliLmlubmVydHViZS5yZXF1ZXN0cy53YXRjaF91aS51dGlscy52aWRlb0VsZW1lbnRfIiwKbikpO3JldHVybiEhKG4mJm4uY2FuUGxheVR5cGUmJm4uY2FuUGxheVR5cGUoJ3ZpZGVvL3dlYm07IGNvZGVjcz0idnAwOS4wMC41MS4wOC4wMS4wMS4wMS4wMS4wMCInKSl9KTt2YXIgTnM9eVcoKT8hMDp0eXBlb2Ygd2luZG93LmZldGNoPT09ImZ1bmN0aW9uIiYmd2luZG93LlJlYWRhYmxlU3RyZWFtJiZ3aW5kb3cuQWJvcnRDb250cm9sbGVyJiYhZy5SZz8hMDohMTt2YXIgS0hTPWNsYXNzIGV4dGVuZHMgUEN7Y29uc3RydWN0b3IoKXtzdXBlcigpfVcoKXtyZXR1cm4gcXlqfU4obil7cmV0dXJuIGcudyhuLGcuSVEpfHxnLncobixUZSl8fGcudyhuLFZ4Yil9Tygpe3JldHVybiEwfVgobil7aWYoKGcubCgia2V2bGFyX2NhY2hlX29uX3R0bF9wbGF5ZXIiKXx8Zy5sKCJtd2ViX2VuYWJsZV9zaG9ydHNfaW5uZXJ0dWJlX3BsYXllcl9wcmVmZXRjaCIpfHxnLmwoIndlYl9zaG9ydHNfcHJlZmV0Y2hfc2VydmljZV9lbmFibGVkIil8fGcubCgiZW1iZWRzX2VuYWJsZV9wcmVmZXRjaF92aWFfcmVzb2x2ZV91cmwiKSkmJihuPXRoaXMuTihuKSkmJm4udmlkZW9JZCl7dmFyIFc9e3ZpZGVvSWQ6bi52aWRlb0lkfTtuLnBsYXlsaXN0SWQmJihXLnBsYXlsaXN0SWQ9bi5wbGF5bGlzdElkKTtuLnBsYXllclBhcmFtcyYmKFcucGFyYW1zPW4ucGxheWVyUGFyYW1zKTtyZXR1cm4geUgoInBsYXllciIsVyl9fUsobil7cmV0dXJuIG4uY29udGVudFBsYXliYWNrQ29udGV4dD8udmlzPT09CjI/IldBVENIX0ZVTExfU0NSRUVOIjoiV0FUQ0gifUoobixXLEQpe2lmKGcubCgiZW5hYmxlX2ludGVyc3RpdGlhbF9lbnRpdHlfY2hlY2siKSYmVy52aWRlb0lkKWZvcih2YXIgYiBvZlsiQ09OVEVOVF9DSEVDS19SRVFVSVJFRCIsIkFHRV9DSEVDS19SRVFVSVJFRCJdKTtXLnZpZGVvSWQmJihuLnZpZGVvSWQ9Vy52aWRlb0lkKTtXLnBsYXlsaXN0SWQmJihuLnBsYXlsaXN0SWQ9Vy5wbGF5bGlzdElkKTtXLmluZGV4IT09dm9pZCAwJiYobi5wbGF5bGlzdEluZGV4PVcuaW5kZXgrMSk7Vy5wbGF5ZXJQYXJhbXMmJihuLnBhcmFtcz1XLnBsYXllclBhcmFtcyk7InN0YXJ0VGltZVNlY29uZHMiaW4gVyYmVy5zdGFydFRpbWVTZWNvbmRzJiYoZy5sKCJlbmFibGVfcGxheWVyX3JlcXVlc3RfYnVpbGRlcl9zdGFydF90aW1lX2Zsb29yIik/bi5zdGFydFRpbWVTZWNzPU1hdGguZmxvb3IoVy5zdGFydFRpbWVTZWNvbmRzKTpuLnN0YXJ0VGltZVNlY3M9Vy5zdGFydFRpbWVTZWNvbmRzKTtELmNvbnRlbnRQbGF5YmFja0NvbnRleHQmJgoobi5wbGF5YmFja0NvbnRleHQ9e2NvbnRlbnRQbGF5YmFja0NvbnRleHQ6RC5jb250ZW50UGxheWJhY2tDb250ZXh0fSk7RC5wcmVmZXRjaFBsYXliYWNrQ29udGV4dCYmKG4ucGxheWJhY2tDb250ZXh0PXsuLi5uLnBsYXliYWNrQ29udGV4dCxwcmVmZXRjaFBsYXliYWNrQ29udGV4dDpELnByZWZldGNoUGxheWJhY2tDb250ZXh0fSxuLmNvbnRleHQucmVxdWVzdHx8KG4uY29udGV4dC5yZXF1ZXN0PXt9KSxuLmNvbnRleHQucmVxdWVzdC5pc1ByZWZldGNoPSEwKTtuLnBsYXliYWNrQ29udGV4dHx8KG4ucGxheWJhY2tDb250ZXh0PXt9KTtiPW16YigpO24ucGxheWJhY2tDb250ZXh0LmRldmljZVBsYXliYWNrQ2FwYWJpbGl0aWVzPXtzdXBwb3J0c1ZwOUVuY29kaW5nOiEhYixzdXBwb3J0WGhyOk5zfTtELm92ZXJyaWRlTXV0ZWRBdFN0YXJ0JiYobi5vdmVycmlkZU11dGVkQXRTdGFydD1ELm92ZXJyaWRlTXV0ZWRBdFN0YXJ0KTtuLnJhY3lDaGVja09rPSEhVy5yYWN5Q2hlY2tPazsKbi5jb250ZW50Q2hlY2tPaz0hIVcuY29udGVudENoZWNrT2s7Zy5sKCJjYXB0aW9uc19wcmVmc19raWxsc3dpdGNoIil8fChEPShEPWcuWkkoInl0LXBsYXllci1jYXB0aW9uLWxhbmd1YWdlLXByZWZlcmVuY2VzIikpP0Q6W10sVz1nLmwoIndlYl9lbmFibGVfcGxheWVyX3JlcXVlc3RfY2FwdGlvbnNfbGFzdF9sYW5ndWFnZV9vbmx5IiksRD8ubGVuZ3RoJiYoRD1XP1tELmF0KC0xKV06RCxuLmNhcHRpb25QYXJhbXM9e3ZpZXdlclNlbGVjdGVkQ2FwdGlvbkxhbmdzOkR9KSl9VihuKXtuPXRoaXMuWChuKTt2YXIgVztuJiYoVz17SG46e1JMOm59fSk7Zy5sKCJ3ZWJfbG9nX3BsYXllcl93YXRjaF9uZXh0X3RpY2tzIikmJihXPVd8fHt9LFcuTGE9InBzX3MiLFcuUlY9InBzX3IiKTtyZXR1cm4gV319O0tIU1tnLkxYXT1bTnRNXTt2YXIgaUI9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW4ucmVzcG9uc2VDb250ZXh0Py5zdGF0ZVRhZ3N9fTt2YXIgd049Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59aGFuZGxlUmVzcG9uc2UobixXKXtpZighVyl0aHJvdyBFcnJvcigicmVxdWVzdCBuZWVkcyB0byBiZSBwYXNzZWQgaW50byBTdG9yZVJlc3BvbnNlUHJvY2Vzc29yU2VydmljZSIpO3VCKHRoaXMsbixXLmNvbmZpZz8uSG4/LlJMKX19O3dOW2cuTFhdPVtCZV07dmFyIEY4PW5ldyBnLkFMKCJTVE9SRV9SRVNQT05TRV9QUk9DRVNTT1JfVE9LRU4iKTt2YXIgbzg9Y2xhc3MgZXh0ZW5kcyBnLlF4e2NvbnN0cnVjdG9yKG4sLi4uVyl7c3VwZXIobixXKTt0aGlzLmVycm9yVHlwZT0xO09iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLG5ldy50YXJnZXQucHJvdG90eXBlKX19O3ZhciBUcj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn1hc3luYyBmZXRjaChuLFcsRCxiKXtuPVNzWih0aGlzLG4sVyk7dHJ5e2xldCB2PWF3YWl0IGZldGNoKG4pO2lmKGImJnYub2smJnYuYm9keSYmdHlwZW9mIHYuYm9keS5nZXRSZWFkZXI9PT0iZnVuY3Rpb24iKXtsZXQgaz12LmNsb25lKCkuYm9keS5nZXRSZWFkZXIoKSx7dmFsdWU6aH09YXdhaXQgay5yZWFkKCk7ay5jYW5jZWwoKS5jYXRjaCgoKT0+e30pOwppZihoJiZoWzBdPT09OTEpe2xldCB4PXYuYm9keS5waXBlVGhyb3VnaChuZXcgVGV4dERlY29kZXJTdHJlYW0pLmdldFJlYWRlcigpO3JldHVybiBkTih0aGlzLHgsbmV3IGFzLFtdLGIpfX1yZXR1cm4gYXdhaXQgdGhpcy5oYW5kbGVSZXNwb25zZSh2LEQpfWNhdGNoKHYpe2lmKGcuR3EodiksRD8uTGQmJnYgaW5zdGFuY2VvZiBvOCYmdi5lcnJvclR5cGU9PT0xKXRocm93IHY7fX1oYW5kbGVSZXNwb25zZShuLFcpe3ZhciBEPW4udGV4dCgpLnRoZW4oYj0+e2lmKFc/LmhQJiZuLm9rKXJldHVybiBkRyhXLmhQLGIpO2I9Yi5yZXBsYWNlKCIpXX0nIiwiIik7aWYoVz8uTGQmJmIpdHJ5e3ZhciB2PUpTT04ucGFyc2UoYil9Y2F0Y2goayl7dGhyb3cgbmV3IG84KCJKU09OIHBhcnNpbmcgZmFpbGVkIGFmdGVyIGZldGNoIik7fXJldHVybiB2Pz9KU09OLnBhcnNlKGIpfSk7Cm4ucmVkaXJlY3RlZHx8bi5vaz90aGlzLk4mJnRoaXMuTi5zdWNjZXNzKCk6KHRoaXMuTiYmdGhpcy5OLm9ZKCksRD1ELnRoZW4oYj0+e2cuR3EobmV3IGcuUXgoIkVycm9yOiBBUEkgZmV0Y2ggZmFpbGVkIixuLnN0YXR1cyxuLnVybCxiKSk7cmV0dXJuey4uLmIsZXJyb3JNZXRhZGF0YTp7c3RhdHVzOm4uc3RhdHVzfX19KSk7CnJldHVybiBEfX07VHJbZy5MWF09W2cuaHAobmV3IGcuQUwoIk5FVFdPUktfU0xJX1RPS0VOIikpXTt2YXIgenI7dmFyIERZcj1uZXcgZy5xTSgicGFyYWxsZWxDb21tYW5kIik7dmFyIHZuTT1uZXcgZy5xTSgicGVyZm9ybU9uY2VDb21tYW5kIik7dmFyIGI4Yj1uZXcgZy5xTSgic2VyaWFsQ29tbWFuZCIpO3ZhciB2UT1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn1iaW5kSW5uZXJ0dWJlQ2hhbGxlbmdlRmV0Y2hlcihuKXt0aGlzLk4uYmljZihuKX1yZWdpc3RlckNoYWxsZW5nZUZldGNoZWRDYWxsYmFjayhuKXt0aGlzLk4uYmNyKG4pfWdldExhdGVzdENoYWxsZW5nZVJlc3BvbnNlKCl7cmV0dXJuIHRoaXMuTi5ibGMoKX19O3ZhciBpaEM9W10saGo9KDAsZy5IeClgaHR0cHM6Ly9zdGF0aWMuZG91YmxlY2xpY2submV0L2luc3RyZWFtL2FkX3N0YXR1cy5qc2AsazU9ITE7dmFyIGlEPWNsYXNze2NvbnN0cnVjdG9yKG4sVyl7dGhpcy5KPW47dGhpcy5OPVd9fSxXREM9W25ldyBpRCgiYi5mXyIsMCksbmV3IGlEKCJqLnNfIiwyKSxuZXcgaUQoInIuc18iLDQpLG5ldyBpRCgiZS5oXyIsNiksbmV3IGlEKCJpLnNfIiw4KSxuZXcgaUQoInMudF8iLDEwKSxuZXcgaUQoInAuaF8iLDEyKSxuZXcgaUQoInMuaV8iLDE0KSxuZXcgaUQoImYuaV8iLDE2KSxuZXcgaUQoImEuYl8iLDE4KSxuZXcgaUQoImEub18iKSxuZXcgaUQoImcub18iLDIyKSxuZXcgaUQoInAuaV8iLDI0KSxuZXcgaUQoInAubV8iKSxuZXcgaUQoIm4ua18iLDIwKSxuZXcgaUQoImkuZl8iKSxuZXcgaUQoImEuc18iKSxuZXcgaUQoIm0uY18iKSxuZXcgaUQoIm4uaF8iLDI2KSxuZXcgaUQoIm8ucF8iKSxuZXcgaUQoIm0ucF8iLDI4KSxuZXcgaUQoIm8uYV8iKSxuZXcgaUQoImQucF8iKSxuZXcgaUQoImUuaV8iKV0ucmVkdWNlKChuLFcpPT57bltXLkpdPVc7cmV0dXJuIG59LHt9KTt2YXIgTmU9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQpe3RoaXMubmV0d29yaz1uO3RoaXMub3B0aW9ucz1XO3RoaXMuWD1EO3RoaXMuVz0wO3RoaXMuTj1udWxsO3RoaXMuSj1uZXcgcW5pO1cuUHU/ZXQodGhpcyxvbU0odGhpcykpOlcucHJlbG9hZCYmZXQodGhpcyxuZXcgUHJvbWlzZShiPT57Zy5jQigwLCgpPT57Yih0aih0aGlzKSl9LDApfSkpfWFzeW5jIHlmKCl7cmV0dXJuISFhd2FpdCBQcm9taXNlLnJhY2UoW3RoaXMuTiwKbnVsbF0pfWFzeW5jIGRRKG4sVyxEKXt0aGlzLk49PT1udWxsJiZldCh0aGlzLHRqKHRoaXMpKTt2YXIgYj0hMSx2PXt9O3JldHVybiBQcm9taXNlLnJhY2UoWyhhc3luYygpPT57dGhpcy5vcHRpb25zLkZoJiZ0aGlzLm9wdGlvbnMuUHUmJmF3YWl0IChhd2FpdCB5M3IoKSk/LmNoZWNrRm9yUmVmcmVzaCgpO3ZhciBrPWF3YWl0IHRoaXMuTjt2LmNoYWxsZW5nZT1rLmNoYWxsZW5nZTtpZihrLk8xKXt2YXIgaD17YzprLmNoYWxsZW5nZSxlOm4sLi4uV307dHJ5e2I9ITA7bGV0IHg7KHg9YXdhaXQgay5PMS5zbmFwc2hvdCh7d186aH0pKT92LndlYlJlc3BvbnNlPXg6di5lcnJvcj0iQVRURVNUQVRJT05fRVJST1JfVk1fTk9fUkVTUE9OU0UifWNhdGNoe3YuZXJyb3I9IkFUVEVTVEFUSU9OX0VSUk9SX1ZNX0lOVEVSTkFMX0VSUk9SIn19ZWxzZSJjMWEiaW4gay5SUiYmKHYuZXJyb3I9IkFUVEVTVEFUSU9OX0VSUk9SX1ZNX05PVF9JTklUSUFMSVpFRCIpO249PT0iRU5HQUdFTUVOVF9UWVBFX1BMQVlCQUNLIiYmCihrPWsuUlIsaD17fSxrLmM2YSYmKGgucmVwb3J0aW5nU3RhdHVzPVN0cmluZyhOdW1iZXIoay5jKV5MYygpKSksay5jNmImJihoLmJyb2FkU3BlY3RydW1EZXRlY3Rpb25SZXN1bHQ9U3RyaW5nKE51bWJlcihrLmMpXk51bWJlcihnLkFyKCJDQVRTVEFUIiwwKSkpKSx2LmFkYmxvY2tSZXBvcnRpbmc9aCk7cmV0dXJuIHZ9KSgpLApUR2goRCwoKT0+e3ZhciBrPU9iamVjdC5hc3NpZ24oe30sdik7YiYmKGsuZXJyb3I9IkFUVEVTVEFUSU9OX0VSUk9SX1ZNX1RJTUVPVVQiKTtyZXR1cm4ga30pXSl9fTt2YXIganhTPVsiQVBQX1NUQVRFIiwiUEkiXTt2YXIga3ZNPVszNjExLDI3Njg2LDIyMTA1OCw4NTAxMywyMzQ2MiwyNDExODcsMTU3NTU3LDQyMDE2LDI2OTI2LDUxMjM2LDc5MTQ4LDUwMTYwLDc3NTA0LDMxMDI4MSwxNTM1ODcsODc5MDcsMTg2MzAsMTc3MDE4LDE3NzAyMyw1NDQ0NSwzMjE2NjYsMzI2MzUzLDMyNjM1NCw4MDkzNSwxNTIxNzIsMTg0NTUzLDEwNTY3NSwxNTA3MjMsMzc1MjEsMTQ3Mjg1LDQ3Nzg2LDIzMTI1NSwyMzEyNTQsMjMxMjU4LDIzMTI1OSw5ODM0OSwyMzcyOTksMTY4MjcxLDE2ODk1NCwxNjgyNzcsMTY4MjczLDE2ODI3MCwxMjM2OTUsMjcyMDE4LDMzODQ5NywyMjY5ODcsMjI2OTkwLDIyNjk4OCw2ODI3LDI5NDM0LDI1NTAxMCwxNzEzODgsMjQ0MTg5LDIzNjIwOCw3MjgyLDEyNDQ0OCwyOTk5MDMsMjk5ODk3LDI5OTkwNCwyOTk5MDEsMjk5ODk5LDI5OTkwMiwyOTk5MDAsMjk5ODk4LDE5NjA4OCwyNTA4OTcsMTk4MTA0LDMyMjc2LDE5NTExNSwxOTUxMTQsNzYyNzgsMjAwNjM1LDIzMDU5NCwxNDc4NjgsCjE0Nzg2OSwyNzYyNDMsOTM5MTEsMjc0MTg4LDI3NjY1MSwzMTM2ODAsMTA2NTMxLDI1NzIzNCwyNTI1OTgsMjUyNTk3LDI1MjYwMCwyNTI1OTksMjUyNTk2LDIyNTAzMSwxNzc4NDMsMjcyNTksMjcyNjIsMjcyNjMsMjE3NTksMjgzNjcwLDE2MDg2NiwyMDQyNDksMjIyOTAwLDIwNDI1MCwxODA2MjYsMTc3OTU5LDE3Nzk1NywxODA2MjgsMjA1NzE2LDE5Nzg3OCwyNzM3NjYsMTcxMjQzLDE2MDc4OSwxNzEyNDQsMTcxMjQxLDE3MTI0NSwxNzEyNDIsMjI1NTYwLDE4MDYyNywxNzc5NjAsMjMxNTg5LDE3Nzk1OCwxODA2MjksMjA1NzE3LDE5Nzg3OSwxNzc1NjUsMjEyNTczLDIxMDcwOSw5OTQ0MTIsMjMwNjg0LDIyOTgwMSwyMzA2ODUsMzM0MzEwLDMzNDMxMSwzMzQzMTIsMTk3MzM3LDIwOTAxMCwxOTczMzYsMTk3MzM4LDE5ODYxOCwzMDA4ODQsMTc1NDkyLDE5ODA1MiwxOTgwNTEsMTk3ODUyLDE5Nzk3NiwzMTczNzcsMTc1NDkzLDE3NTQ5NCwxNzU0OTUsMTg5MjU0LDE3NTQ5NiwxNzU0OTcsCjM4NDA4LDE3NTQ5OCwxNzU1MDMsMTc1NTA0LDE3NTUwNSwxNzU1MDYsMTc1NTA3LDE3NTUwOCw4MDYzNyw2ODcyNywyMDY5MzMsMjA3OTQ0LDIwNjkzNCwzMDMxMjMsMjA2OTI5LDIyMTU3NSw2ODcyOCwyMjE1NzYsODAzNTMsODAzNTYsMzA4MDMzLDI0OTEwNywxODA2MzUsNzQ2MTAsNDU3MDcsODM5NjIsODM5NzAsNDY3MTMsMTY2NTkxLDg5NzExLDc0NjEyLDIxMzgwOSwxNzk2MDcsMjQ1MDA2LDE1NTc5Miw5MzI2NSw3NDYxMSwxMzEzODAsMTI4OTc5LDEzOTMxMSwxMjg5NzgsMTMxMzkxLDEwNTM1MCwxMzkzMTIsMzMzNjM3LDEzNDgwMCwxMzEzOTIsMTEzNTMzLDIyOTI5OCw5MzI1Miw5OTM1Nyw5NDUyMSwxMTQyNTIsMTEzNTMyLDk0NTIyLDk0NTgzLDIwMjM3MSw4OEUzLDEzOTU4MCw5MzI1Myw5MzI1NCw5NDM4Nyw5NDM4OCw5MzI1NSw5NzQyNCw3MjUwMiwyMTk4NjgsMjEyOTkxLDExMDExMSw3NjAxOSwxMTcwOTIsMTE3MDkzLDg5NDMxLDE5MTgzMSwxMTA0NjYsMjMxMzQ2LAo3NzI0MCw2MDUwOCwxODYwOTEsMTQ4MTIzLDE0ODEyNCwxMzc0MDEsMTM3NDAyLDEzNzA0Niw3MzM5MywyNDY3NzYsMTEzNTM0LDI3NjIwMCw5MjA5OCwxMzEzODEsODQ1MTcsODM3NTksMzA5NTgwLDIzMDY3NiwyNDkxODMsMjMwNjc5LDIzMDY3OCwyMzA2NzcsMjMwNjgxLDIzMDY4MCwxNjI3MTEsMjM1MjM0LDE2MjcxMiw4MDM1Nyw5OTQ0MTEsMjQzMzE1LDMxMzUwNiwzMjE5NjQsODYxMTMsNzI1OTgsMTY4NDEzLDcyNzMzLDEwNzM0OSwxMjQyNzUsMTE4MjAzLDIwMDQxMCwxMzMyNzUsMTYwMTU3LDE1MjU2OSwxNTY2NTEsMTMzMjc0LDE2MDE1OSwxNjAxNTgsMTMzMjcyLDEzMzI3MywxMzMyNzYsMTQ0NTA3LDE0MzI0NywxNzU5OTQsMTU2NjUyLDE0MzI0OCwxNDMyNDksMTQzMjUwLDE0MzI1MSwxODk4OTIsMTg5ODk0LDE4OTg5MywxNTY2NTMsMjE0MjM2LDE0NDQwMSwxMTc0MzEsMTMzNzk3LDIyNTEzNywyNzM5MDUsMjIyNjEyLDIyMjYxMywxNTM5NjQsMjAxMTMzLDIwMTEzNCwKMjAxMTM1LDIwMTEzNiwyMDExMzcsMTI4NTcyLDIwMDQxMSwyMDA0MTIsMTkwMzM3LDEzMzQwNSwxMTc0MjksMTE3NDMwLDE3Nzk1MCwxNzQ3MzQsMTc3OTUxLDIwMTEzOCwyMDExMzksMjAxMTQwLDIwMTE0MSwyMDExNDIsMTE3NDMyLDE3Mzk5NiwxNzM5OTUsMTc0OTUzLDE3Mzk5NCwxNzM5OTcsMTIwMDgwLDExNzI1OSwxNzg1NDYsMjk3NzUyLDE5Nzg5MSwxNTY2NTUsMTU2NjU0LDEyMTY5MiwyMTE0MTQsMjExNDExLDIxMTQxMiwyMTE0MTMsMjExNDAzLDE4NDg0NiwxODU5OTMsMzM1MDQ4LDE0NTY1NiwxNTY2NTYsMTQ1NjU1LDE0NTY1MywxNDU2NTQsMTQ1NjU3LDEzMjk3MiwxMzMwNTEsMTMzNjU4LDEzMjk3MSwzMzY3MjgsOTc2MTUsMTgxMjYyLDE5MDc2MiwyNTAzNDQsMjU0MDI3LDE0MzM1OSwxNDMzNTYsMTQzMzYxLDE0MzM1OCwxNDMzNjAsMTQzMzU3LDE0MjMwMywxNDMzNTMsMjgyMTU5LDE3Mjg1OSwxNDMzNTQsMTQ0NDc5LDE0MzM1NSwzMTQwMiwxODE1OTAsMTMzNjI0LAoxNDY0NzcsMTMzNjIzLDEzMzYyMiwxMzM2MjEsMTkyNDE4LDg0Nzc0LDMwNDc3NiwxOTc5OTMsMjQxNDYwLDE2MDgwMSwxOTc5OTUsOTUxMTcsMTcyNzIxLDE1MDQ5Nyw5ODkzMCw5ODkzMSw5ODkzMiwzMzg1NzAsMzM4NDc0LDMzODQ3OCwzMzg0NzMsMTUzMzIwLDE1MzMyMSw0MzM0NywzMDUyNjgsMjQ5Mjk1LDIxMDAxNiwyMTAwMTcsMjYyNjg2LDIxMTg1MSwyMTE4NTIsMzA3MjE5LDIxMTg1MywzMjc4MTAsMTI5ODg5LDE5Nzg4OCwxOTc4ODksMTQ5MTIzLDIyMTk1OSwyMjE2MjcsMjIxOTU4LDQ1NDc0LDEwMDM1Miw5ODQ0MywxMTc5ODUsMzMzNzA4LDc0NjEzLDE1NTkxMSw3NDYxNCw2NDUwMiwxMzYwMzIsNzQ2MTUsNzQ2MTYsMTIyMjI0LDc0NjE3LDc3ODIwLDc0NjE4LDI2Mjk4OCwyNjI5ODksMjI2OTgxLDkzMjc4LDkzMjc0LDkzMjc1LDkzMjc2LDIwMDY4OCwyMDA2ODYsMjAwNjg3LDE5OTg0MSwyMjExMCwyOTQzMywxMzM3OTgsMTMyMjk1LDI4MTMzMiwxMjA1NDEsMjIyMTEyLAo4MjA0NywxMTM1NTAsNzU4MzYsNzU4MzcsMzAzODgyLDE5MjQwOSwyMDMyMjEsNDIzNTIsODQ1MTIsNzYwNjUsNzU5ODksMjA1OTExLDIwNTkxMiwyNTI2NDksMjA1OTEzLDI1MjY1MCwyNTI2NTEsNTE4NzksMTY2MjMsMzI1OTQsMjcyNDAsMzM4MTA5LDI5MzMyNCwzMjYzMyw3NDg1OCwzMDQxNTAsMjk3MDQ1LDI3NTE5OCwyNzE4ODQsMjIyOTMyLDI3OTExOSwzMTI1ODEsMjcxODg2LDIxMzkxNSwyNzUxOTksMzEwNzQ4LDIyNTIxNiwyNTEyNDQsMjU4MjUxLDIxODY3NCwyNTEyNjYsMjU4MjUwLDI1MTI2NSwzMDE2NjIsMjUxMjQ1LDI3MTg4NSwzMTU4MTgsMTU2OTk5LDM5NDUsMTY5ODksNDU1MjAsMjU0ODgsMjU0OTIsMjU0OTQsMjMyMTEzLDU1NzYwLDE0MDU3LDE4NDUxLDU3MjA0LDU3MjAzLDE3ODk3LDE4MTk4LDE3ODk4LDE3OTA5LDQzOTgwLDIyMTA1MywxOTU1MjksMTg5NjYwLDMwODA4OCwzMDY0NDgsMzA2NDQ3LDMwODA4NywzMDgwODYsNDYyMjAsMTE3MjEsMTQ3OTk0LDQ5OTU0LAo5NjM2OSwzODU0LDIxNzY0MCwxNTE2MzMsNTYyNTEsMjA1MTkyLDIxNjc5NywxNTkxMDgsMTgxNTY4LDIzNDc4OSwyNTYyNCwxNTIwMzYsMTY5MDYsOTk5OTksNjgxNzIsNDc5NzMsNzI3NzMsMjY5NzAsMjY5NzEsOTY4MDUsMTc3NTIsMjgyMTgxLDI3ODkyNiw3MzIzMywyMDU5MjMsMTA5NTEyLDIyMjU2LDE0MTE1LDIyNjk2LDIzNDQwOSwyMzQ0MDgsODkyNzgsODkyNzcsMTk1NzQ1LDEwOTUxMyw0MzI3OCw0MzQ1OSw0MzQ2NCw4OTI3OSw0MzcxNyw1NTc2NCwyMjI1NSwxNDc5MTIsODkyODEsNDA5NjMsNDMyNzcsNDM0NDIsOTE4MjQsMjgzODk4LDEyMDEzNywxODYzNTAsMTg2MzUxLDI1NjY5MCwyNjQzNDksMjY0MzUxLDI2NDM1MCwyNjQzNTIsMjExMDI2LDI1MDg5Niw5NjM2NywzNjg1MCw3MjY5NCwzNzQxNCwzNjg1MSwxMjQ4NjMsMTIxMzQzLDczNDkxLDU0NDczLDE2Njg2MSw0MzM3NSw0NjY3NCwzMDI2MzEsMzMxNDczLDI0MjUyOCwxNDM4MTUsMTM5MDk1LDE0NDQwMiwxNDk5NjgsCjE0OTk2OSwzMjQ3Myw3MjkwMSw3MjkwNiw1MDYxMiw1MDYxMyw1MDk0Miw4NDkzOCw4NDk0Myw4NDkzOSw4NDk0MSw4NDk0NCw4NDk0MCw4NDk0MiwzNTU4NSw1MTkyNiw3OTk4MywxODkyMSw1Nzg5Myw0MTE4MiwxMzU3MzIsMzM0MjQsMjIyMDcsMzYyMjksMjIyMDYsMjIyMDUsNDQ3NjMsMzM0MjcsNjc3OTMsMjIxODIsMzcwOTEsMzQ2NTAsNTA2MTcsMjIyODcsMjUxNDQsOTc5MTcsMjIwMTIyLDYyMzk3LDE1MDg3MSwxNTA4NzQsMTI1NTk4LDEzNzkzNSwzNjk2MSwxMDgwMzUsMzIzNDkzLDI3NDI2LDI3ODU3LDI3ODQ2LDI3ODU0LDY5NjkyLDYxNDExLDM5Mjk5LDM4Njk2LDYyNTIwLDM2MzgyLDEwODcwMSwxOTI2ODIsMjc5NTMxLDUwNjYzLDM2Mzg3LDE0OTA4LDM3NTMzLDEwNTQ0Myw2MTYzNSw2MjI3NCwxNjE2NzAsMTMzODE4LDE4MjExOSw2NTcwMiw2NTcwMyw2NTcwMSwzMjA0NjQsNzYyNTYsMjk4MTU3LDI2Mzg0MywzMTUyMzQsMTk2MDc1LDE5NDc2OCwyNTIyMDEsMTk0NzY5LAoxOTE4ODUsMjgxNDgwLDIzMzYzNCwyNjU4MTAsMTk0NzcwLDI5NjkzMywxOTUzNTAsMzI3Mzg1LDMyNDU4NiwzMDE2MDcsMTk1MzQ5LDE5NDc3MSwyOTMwNDEsMzAxMTIxLDI5MzA0MiwyOTMwNDMsMzAxMTE2LDE2NjM4MiwzNzY3MSw0OTk1MywyMjA2NjksNjAwMDAxLDYwMDAwMiw2RTUsMzM1MTM0LDI0OTIyOSwyMTM3NzQsMjA0NTcyLDE5MTM4OSwyNzIyNTQsMjcyMjUzLDI1MzgzMCwyNTM4MzEsMjUzODMyLDI3MjI1MiwyNTM4MzMsMjUzODM0LDIwNDU3NCwxOTEzOTAsMTc5NTU2LDIzODU5NiwyMTI2NjEsMTkxMzkyLDE5NzgyNiwxOTEzOTMsMjA0NTczLDM2MjE2LDI4MjM3LDI0MTIxMiwyNzIwNDksMTczNzE4LDM5NTUzLDE5MjU0NywyOTIyMiwzMDQ4NDUsMjYxMDcsMjQxMjExLDM4MDUwLDI2MTA4LDI3NTgxMCwxMjA3NDUsMjYxMDksMjYxMTAsNjY4ODEsMjgyMzYsMTQ1ODYsMjk3NjcyLDE2MDU5OCw1NzkyOSwyMjY3MzYsNzQ3MjMsNDQwOTgsMTczNjg5LDQ0MDk5LDIzNTI4LAo2MTY5OSwxMzQxMDQsMTM0MTAzLDE5ODMxMyw1OTE0OSwxODEwMTMsMjc4MzA2LDI4MjQ3MiwyNzc4NDgsMTczMTkxLDE3MzE5MiwxNzMxOTMsMTAxOTUxLDE3MTUwMiwxOTYwNDMsMTk4MzA1LDk3MzQ2LDExODA1MSw5NTEwMiw2NDg4MiwxMTk1MDUsNjM1OTUsMjk0MTE5LDI1NzI2OCw2MzM0OSwyODExMjcsMjQwNTUzLDk1MTAxLDc1MjQwLDI3MDM5LDY4ODIzLDIxNTM3LDgzNDY0LDc1NzA3LDI1MjkwNCwxNzAyMTUsMjIzMDMzLDgzMTEzLDEwMTk1MiwxMDE5NTMsNzk2MTAsMTI1NzU1LDI0NDAyLDI0NDAwLDMyOTI1LDE5MzQwNiw1NzE3MywxODMzNTEsMTU2NDIxLDEyMjUwMiwxNDUyNjgsMTM4NDgwLDY0NDIzLDY0NDI0LDMzOTg2LDEwMDgyOCwxMjkwODksMjk5NTQxLDIxNDA5LDI4MjIxOCwyOTk1MDYsMzMzOTU2LDI5OTU0MCwyOTk1MDcsMjk5NTA5LDI5OTUzOSwyOTk1MDgsMjk5NTEwLDE4NTYxMiwyMjI4MjUsMzIzMzMxLDI0NTM2NiwxMzUxNTUsMTM1MTU2LDEzNTE1NywKMTM1MTU4LDE1ODIyNSwxMzUxNTksMTM1MTYwLDE2NzY1MSwxMzUxNjEsMTM1MTYyLDEzNTE2MywxNTgyMjYsMTU4MjI3LDEzNTE2NCwxMzUxNjUsMTM1MTY2LDExMDcwLDExMDc0LDE3ODgwLDI3MDU2MCwzMDcwOSwzMDcwNywzMDcxMSwzMDcxMCwzMDcwOCwxODUyMTMsMTg1MjczLDE0NjE0Myw2MzY0OCw2MzY0OSwyMjEwNTYsMjY0NDkwLDIxMTE4OSwxMTEwNTksMjExMTg4LDU3NTQsMjY0NDkxLDIwNDQ1LDIzMzQ3MSwxNTEzMDgsMzEzNzUwLDE1MTE1MiwyMjgwNjcsMTMwOTc1LDEzMDk3NiwyNDcyNDQsMjcxNjIyLDI3MTgxMywyNjEyMTAsMjEwODE1LDI5NTA2OSwyNDYxMjcsMzE2ODU4LDI0NTI1NiwyNDQ5NTAsMTkxOTI1LDE2NzYzNywyMzQ1NDUsMTk3MTk2LDMwMjczNSwyMTQyOTUsMTEwMzg2LDIyMTA1NCwyNzM5NjAsMjgyMTExLDMxMjI5MCwxMTM3NDYsMzI1NTkzLDI2ODg4Niw2NjU1NywxODMyMTUsMTczMTAsMjg2MzEsMjAxOTM1LDIxNTg5LDI0MjAzNiwyMzgzNTEsCjE2NDgxNywxNjgwMTEsMTU0OTQ2LDY4MDEyLDE2MjYxNyw2MDQ4MCwxODQ0MzEsMTM4NjY0LDI5NDA4OSwyNDk4MjcsMTk0RTMsMTQxMTIxLDE2NDUwMiwzMTU3MSwxOTUwMDIsMjA2NzkzLDE0MTk3OCwyMzM5ODUsMjUwODk1LDI1NDA1MiwyNTQwNTMsMjU0MDU0LDI1NDA1MSwyNTQwNTAsMjU0MDU1LDE1MDEwNSwzMDQxNjksMTUwMTA2LDE1MDEwNywxNTAxMDgsNzY5ODAsNDE1NzcsNDU0NjksMzg2NjksMTM3NjgsMTM3NzcsMTQxODQyLDYyOTg1LDIxMzE5MCw0NzI0LDIyMzA1Miw1OTM2OSw0MzkyNyw0MzkyOCwxMjkyNCwxOTc4NTMsMTAwMzU1LDU2MjE5LDI3NjY5LDIwOTkyOCwxMDMzNywyMDM2NDgsMjAzNjQ5LDQ3ODk2LDMyNjkzNywxMjI2MjksMTg2MjA0LDIyMjgyNCwyNzU4NjksMzEyMjk1LDI3MTY3MywyNzQ2MzcsMzE3NDYyLDEzOTcyMywxMzk3MjIsMTIxMjU4LDI1Mzc4OSwyNTM3ODcsMjUzNzg2LDI1Mzc4OCwyNTM3OTAsMTA3NTk4LDEyNzk5MSw5NjYzOSwxMDc1MzYsCjEzMDE2OSwyMTY1MjIsMjk2MzE2LDk2NjYxLDE0NTE4OCwzMjA0MjgsMjEzOTA0LDI2OTM0Miw5NjY1OCwxMTY2NDYsMTU5NDI4LDE2ODYxMSwxNjg2MTIsMTIxMTIyLDIxOTg2Miw5NjY2MCwyODIyMDgsMTI3NzM4LDEyNzA4MywxNTUyODEsMTYyOTU5LDIyMDg4NiwyMjczNTYsMjQ4MDA3LDE2MzU2NiwzMDc2NDYsMTg2NjQxLDE0Nzg0MiwyNzM2NDYsMjczNjQ3LDIxNzkzMiwxMDQ0NDMsOTY2NTksMTQ3NTk1LDEwNjQ0MiwyNDcxNjIsMjMxNDkzLDIxMzQyNywyOTY4MTMsMjQ2NTc1LDE4MjQyMywxNjI3NzYsMjI4OTA4LDEzNDg0MCw2MzY2Nyw2MzY2OCw2MzY2OSwxMzA2ODYsMjQ4MzgxLDE0NzAzNiwyMzkwOTQsMjYyNzQzLDE4OTgxMCwyMzkwOTUsNzgzMTQsMTQ3Nzk5LDMwNTkxOSwzMDU5MjQsMjM3MTQ2LDE3NDA0OSwxNDg2NDksNTU3NjEsMTI3MDk4LDEzNDg0MSw5NjM2OCw2NzM3NCw0ODk5MiwxNDYxNzYsMTc2MTA1LDMyMzMyMSwzMjMzMjIsMjMzMDM1LDQ5OTU2LDI2NzY0NSwKMjc1NzgyLDE5MDE5MCwyMjU3MzksMzE5NjEsMjYzODgsMjM4MTEsNUU0LDEyNjI1MCw5NjM3MCwyMTA1NDksMzI5NDkwLDQ3MzU1LDQ3MzU2LDM3OTM1LDQ1NTIxLDMzMTUzNiwzMzE1MzQsMzMxNTM1LDMzMTUzMywyMTc2MCw4Mzc2OSw0OTk3Nyw0OTk3NCw5MzQ5Nyw5MzQ5OCwzNDMyNSwxNDA3NTksMTE1ODAzLDEyMzcwNywxMDAwODEsMzUzMDksMjM3NzA2LDY4MzE0LDI1NjAyLDEwMDMzOSwxNzA4NzMsMTQzNTE2LDI5OTI0NywxNzg5MjEsMjY4NTc0LDI1NDg4NCwyNTgyMzIsNTkwMTgsMTgyNDgsNTA2MjUsOTcyOSwzNzE2OCwzNzE2OSwyMTY2NywxNjc0OSwxODYzNSwzOTMwNSwxODA0NiwyMjEwNTcsMzAxODk3LDMwMTkwMCwyNjk5OTAsNTM5NjksODIxMyw5MzkyNiwyMjEwNTUsMjEwNTQyLDIxMjU1MiwxMDI4NTIsMTEwMDk5LDIyNjc4LDY5MDc2LDEzNzU3NSwxMzkyMjQsMTAwODU2LDIzNTc3MCwxNTQ0MzAsMjM1ODYxLDIwOTc1NywxNzczNiwzODMyLDE0NzExMSw1NTc1OSwKNjQwMzEsMjM0NzQ2LDkzMDQ0LDkzMDQ1LDI4MTMwMiwxNzA3MDEsMTcwNzAyLDE5NDc5NiwzNDM4OCwxNjc4NDEsMTcwNDE5LDE3NjU3LDE3NjU1LDM5NTc5LDM5NTc4LDE3MDQxMiw3NzQ0OCw4MTk2LDExMzU3LDY5ODc3LDgxOTcsMTY4NTAxLDE1NjUxMiwxNjE2MTMsMTU2NTA5LDIwODI3NCwxNjE2MTIsMTYxNjE0LDI2NzY5MiwyNjc4NTEsMjY3NTc3LDI3OTc1NSwyNjc2OTMsMjY3Njk0LDI2NzU3OCwyNjI4MDEsMzM0NDk2LDMzNTg0NCwyNzEyMTgsMjY2MTMxLDI2NjEzMiwyNjc5NzcsMjY3NTc5LDI2MjgwMCwyNjI3OTksMjYyODAyLDI2NzU4MCwyNjI3OTgsMjY3Njk1LDI2NzU4MSwyNzMyMzIsODIwMzldO3ZhciBtUVM9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59aGFuZGxlUmVzcG9uc2UobixXKXtpZihXLmlucHV0Lm1hdGNoKExCKE40aCkpKXt2YXIgRD1uPy5lbmRwb2ludDtXPWcudyhELFRlKT8udW5zZXJpYWxpemVkUHJlZmV0Y2hEYXRhO2lmKEQmJlcpe249dGhpcy5OO3ZhciBiPShuZXcgc29iKS5YKEQpLHY9Zy53KFcsRCRyKTtsZXQgaz12Py5yZXNwb25zZUNvbnRleHQ/Lm1heEFnZVNlY29uZHMmJk51bWJlcih2Py5yZXNwb25zZUNvbnRleHQ/Lm1heEFnZVNlY29uZHMpPjA/TnVtYmVyKHY/LnJlc3BvbnNlQ29udGV4dD8ubWF4QWdlU2Vjb25kcyk6NjAwO3YmJmImJms+MCYmKHY9RWUodixrKSxuLnB1dChiLG5ldyBiaCh2KSkpO0Q9KG5ldyBLSFMpLlgoRCk7Vz1nLncoVyxhSncpO2I9Vz8ucmVzcG9uc2VDb250ZXh0Py5tYXhBZ2VTZWNvbmRzJiZOdW1iZXIoVz8ucmVzcG9uc2VDb250ZXh0Py5tYXhBZ2VTZWNvbmRzKT4wP051bWJlcihXPy5yZXNwb25zZUNvbnRleHQ/Lm1heEFnZVNlY29uZHMpOgo2MDA7VyYmRCYmYj4wJiYoVz1FZShXLGIpLG4ucHV0KEQsbmV3IGJoKFcpKSl9fX19O21RU1tnLkxYXT1bQmVdO25mKCIiLCJkb3dubG9hZHNQYWdlVmlld0NvbmZpZ3VyYXRpb25FbnRpdHkiKTtuZigiRE9XTkxPQURTX0xJU1RfRU5USVRZX0lEX01BTlVBTF9ET1dOTE9BRFMiLCJtYWluRG93bmxvYWRzTGlzdEVudGl0eSIpO25mKCJET1dOTE9BRFNfTElTVF9FTlRJVFlfSURfU01BUlRfRE9XTkxPQURTIiwibWFpbkRvd25sb2Fkc0xpc3RFbnRpdHkiKTtuZigiRE9XTkxPQURTX0xJU1RfRU5USVRZX0lEX1NNQVJUX0RPV05MT0FEUyIsInJlZnJlc2giKTtuZigiU01BUlRfRE9XTkxPQURTX0VOQUJMRUQiLCJzZXR0aW5nRW50aXR5Iik7dmFyIHd5aD1bInd3dy55b3V0dWJlLW5vY29va2llLmNvbSIsInd3dy55b3V0dWJlZWR1Y2F0aW9uLmNvbSIsInlvdXR1YmUuZ29vZ2xlYXBpcy5jb20iXSxPNng9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnN0YXRlPTE7dGhpcy5PMT1udWxsO3RoaXMuRGE9dm9pZCAwfWluaXRpYWxpemUobixXLEQsYil7dGhpcy5EYT1iO2lmKG4ucHJvZ3JhbSl7dmFyIHY7Yj1uLmludGVycHJldGVyVXJsPz9udWxsO24uaW50ZXJwcmV0ZXJTYWZlU2NyaXB0P3Y9Tk4obi5pbnRlcnByZXRlclNhZmVTY3JpcHQpOnY9bi5pbnRlcnByZXRlclNjcmlwdD8/bnVsbDtuLmludGVycHJldGVyU2FmZVVybCYmKGI9cHcobi5pbnRlcnByZXRlclNhZmVVcmwpLnRvU3RyaW5nKCkpO0Y0Yih0aGlzLHYsYixuLnByb2dyYW0sVyxEKX1lbHNlIGcuR3EoRXJyb3IoIkJMOkNJUCIpKX1pc0luaXRpYWxpemVkKCl7cmV0dXJuIHRoaXMuSigpfWdldFN0YXRlKCl7cmV0dXJuIHRoaXMuc3RhdGV9aXNMb2FkaW5nKCl7cmV0dXJuIHRoaXMuc3RhdGU9PT0KMn1pbnZva2Uobj17fSl7cmV0dXJuIHRoaXMuSigpP3RoaXMuVyh7d186bn0pOm51bGx9ZGlzcG9zZSgpe3RoaXMuTihudWxsKTt0aGlzLnZWKDgpfUooKXtyZXR1cm4hIXRoaXMuTzF9VyhuKXtyZXR1cm4gdGhpcy5PMS5tNShuKX1OKG4pe2cuQ3AodGhpcy5PMSk7dGhpcy5PMT1ufXZWKG4pe3RoaXMuc3RhdGU9bn19O3ZhciBQQU09Y2xhc3MgZXh0ZW5kcyBPNnh7TihuKXtKaigpPy5iZ3ZtYSgpO2lmKG4pe2xldCBXPXtiZ3ZtYTpuLmRpc3Bvc2UuYmluZChuKSxiZ3ZtYjpuLnNuYXBzaG90LmJpbmQobiksYmd2bWM6bi5tNS5iaW5kKG4pfTtnLkdiKCJ5dC5hYnVzZS5wbGF5ZXJBdHRMb2FkZXIiLFcpO2cueWooRD0+bi5zbmFwc2hvdChEKSl9ZWxzZSBnLkdiKCJ5dC5hYnVzZS5wbGF5ZXJBdHRMb2FkZXIiLG51bGwpLGcuR2IoInl0LmFidXNlLnBsYXllckF0dExvYWRlclJ1biIsbnVsbCl9Sigpe3JldHVybiEhSmooKX1XKG4pe3JldHVybiBKaigpLmJndm1jKG4pfX07dmFyIFpMPXtBRF9NQVJLRVI6Inl0cC1hZC1wcm9ncmVzcyIsQ0hBUFRFUl9NQVJLRVI6Inl0cC1jaGFwdGVyLW1hcmtlciIsVElNRV9NQVJLRVI6Inl0cC10aW1lLW1hcmtlciJ9O3ZhciBzMz12b2lkIDA7dmFyIEgkPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5YPW5ldyBTZXQ7dGhpcy5KPW5ldyBTZXQ7dGhpcy5qPW5ldyBNYXA7dGhpcy5jbGllbnQ9dm9pZCAwO3RoaXMuY3NuPW51bGx9VyhuKXt0aGlzLmNsaWVudD1ufU4oKXt0aGlzLmNsZWFyKCk7dGhpcy5jc249Zy5SdigpfWNsZWFyKCl7dGhpcy5YLmNsZWFyKCk7dGhpcy5KLmNsZWFyKCk7dGhpcy5qLmNsZWFyKCk7dGhpcy5jc249bnVsbH19O3ZhciBVMz1jbGFzc3tXKG4pe1BWKGZpKCkuVykuYmluZChmaSgpKShuKX1jbGVhcigpe1BWKGZpKCkuY2xlYXIpLmJpbmQoZmkoKSkoKX19O3ZhciBKWD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuRD1bXTt0aGlzLk89W107dGhpcy5LPW5ldyBNYXA7dGhpcy5UQz1uZXcgTWFwO3RoaXMuVj1bXTt0aGlzLmNKPVtdO3RoaXMuWD1uZXcgTWFwO3RoaXMuWT1uZXcgTWFwO3RoaXMuSj1uZXcgTWFwO3RoaXMuTj1uZXcgU2V0O3RoaXMuUyQ9bmV3IE1hcH1XKG4pe3RoaXMuY2xpZW50PW59YmQobixXPXt9KXtQVigoKT0+e3ZhciBEPWcudyhuPy5jb21tYW5kTWV0YWRhdGEscGopPy5yb290VmV8fGcudyhuPy5jb21tYW5kTWV0YWRhdGEsWnNyKT8uc2NyZWVuVmlzdWFsRWxlbWVudD8udWlUeXBlO2lmKEQpe3ZhciBiPWcudyhuPy5jb21tYW5kTWV0YWRhdGEsYk1yKTtpZihiPy5wYXJlbnRUcmFja2luZ1BhcmFtcyl7dmFyIHY9VFUoYi5wYXJlbnRUcmFja2luZ1BhcmFtcyk7aWYoYi5wYXJlbnRDc24pdmFyIGs9Yi5wYXJlbnRDc259ZWxzZSBXLmNsaWNrZWRWaXN1YWxFbGVtZW50P3Y9Vy5jbGlja2VkVmlzdWFsRWxlbWVudDpuLmNsaWNrVHJhY2tpbmdQYXJhbXMmJgoodj1UVShuLmNsaWNrVHJhY2tpbmdQYXJhbXMpKTthOntiPWcudyhuLGcuSVEpO3ZhciBoPWcudyhuLHpPdyk7aWYoYil7aWYoaD10WChiLCJWSURFTyIpKXtiPXt0b2tlbjpoLHZpZGVvSWQ6Yi52aWRlb0lkfTticmVhayBhfX1lbHNlIGlmKGgmJihiPXRYKGgsIlBMQVlMSVNUIikpKXtiPXt0b2tlbjpiLHBsYXlsaXN0SWQ6aC5wbGF5bGlzdElkfTticmVhayBhfWI9dm9pZCAwfVc9e2N0dEF1dGhJbmZvOmIscGFyZW50Q3NuOmssLi4uV307Zy5sKCJleHBlY3RhdGlvbl9sb2dnaW5nIikmJihXLmxvZ2dpbmdFeHBlY3RhdGlvbnM9Zy53KG4/LmNvbW1hbmRNZXRhZGF0YSxac3IpPy5sb2dnaW5nRXhwZWN0YXRpb25zfHx2b2lkIDApO21VKHRoaXMsRCx2LFcpfWVsc2UgZy5HcShuZXcgZy5ReCgiRXJyb3I6IFRyeWluZyB0byBjcmVhdGUgYSBuZXcgc2NyZWVuIHdpdGhvdXQgYSByb290VmVUeXBlIixuKSl9KSgpfWNsaWNrQ29tbWFuZChuLFcsRD0wKXtyZXR1cm4gZ25aKHRoaXMsbi5jbGlja1RyYWNraW5nUGFyYW1zLApXLEQpfXN0YXRlQ2hhbmdlZChuLFcsRD0wKXt0aGlzLnZpc3VhbEVsZW1lbnRTdGF0ZUNoYW5nZWQoVFUobiksVyxEKX12aXN1YWxFbGVtZW50U3RhdGVDaGFuZ2VkKG4sVyxEPTApe0Q9PT0wJiZ0aGlzLk4uaGFzKEQpP3RoaXMuTy5wdXNoKFtuLApXXSk6UCQodGhpcyxuLFcsRCl9blQobil7dmFyIFc9bi5jcG4sRD1TMih0aGlzLDApO2lmKEQubGVuZ3RoJiZEW0QubGVuZ3RoLTJdPy5jcG4hPT1XJiYoRD1nLlJ2KCksVyYmRCYmRCE9PSJVTkRFRklORURfQ1NOIikpe3ZhciBiO24uaXRjdCYmKGI9VFUobi5pdGN0fHwiIikpO2xldCB2PXt9O2cubCgid2ViX3BsYXliYWNrX2Fzc29jaWF0ZWRfbG9nX2N0dCIpJiZuLmtXJiYodi5jdHRBdXRoSW5mbz17dG9rZW46bi5rVyx2aWRlb0lkOm4udmlkZW9JZH0pO249e2NwbjpXLGNzbjpEfTtnLmwoIndlYl9wbGF5YmFja19hc3NvY2lhdGVkX3ZlIikmJmImJihGaihELGIpLG4ucGxheWJhY2tWZT1iLmdldEFzSnNvbigpKTtnLnpVKCJwbGF5YmFja0Fzc29jaWF0ZWQiLG4sdik7Yj1TMih0aGlzLDApO2JbYi5sZW5ndGgtMV0uY3BuPVd9fX07dmFyIEUzPWNsYXNze2ZldGNoKG4sVyxEKXt2YXIgYj1YT2IobixXLEQpO3JldHVybiBuZXcgUHJvbWlzZSgodixrKT0+e3ZhciBoPSgpPT57aWYoRD8uTGQpdHJ5e2xldCB4PXRoaXMuaGFuZGxlUmVzcG9uc2UobixiLnN0YXR1cyxiLnJlc3BvbnNlLEQpO3YoeCl9Y2F0Y2goeCl7ayh4KX1lbHNlIHYodGhpcy5oYW5kbGVSZXNwb25zZShuLGIuc3RhdHVzLGIucmVzcG9uc2UsRCkpfTsKYi5vbmVycm9yPWg7Yi5vbmxvYWQ9aDtiLnNlbmQoVy5ib2R5Pz9udWxsKX0pfWhhbmRsZVJlc3BvbnNlKG4sVyxELGIpe0Q9KER8fCIiKS5yZXBsYWNlKCIpXX0nIiwiIik7CnRyeXt2YXIgdj1KU09OLnBhcnNlKEQpfWNhdGNoKGspe2cuR3EobmV3IGcuUXgoIkpTT04gcGFyc2luZyBmYWlsZWQgYWZ0ZXIgWEhSIGZldGNoIixuLFcsRCkpO2lmKGI/LkxkJiZEKXRocm93IG5ldyBvOCgiSlNPTiBwYXJzaW5nIGZhaWxlZCBhZnRlciBYSFIgZmV0Y2giKTt2PXt9fVchPT0yMDAmJihnLkdxKG5ldyBnLlF4KCJYSFIgQVBJIGZldGNoIGZhaWxlZCIsbixXLEQpKSx2PXsuLi52LGVycm9yTWV0YWRhdGE6e3N0YXR1czpXfX0pO3JldHVybiB2fX07dmFyIFo2aj1jbGFzc3tzdGF0aWMgZ2V0SW5zdGFuY2UoKXt2YXIgbj1nLnJyKCJ5dGdsb2JhbC5zdG9yYWdlXyIpO258fChuPW5ldyBaNmosZy5HYigieXRnbG9iYWwuc3RvcmFnZV8iLG4pKTtyZXR1cm4gbn1hc3luYyBlc3RpbWF0ZSgpe3ZhciBuPW5hdmlnYXRvcjtpZihuLnN0b3JhZ2U/LmVzdGltYXRlKXJldHVybiBuLnN0b3JhZ2UuZXN0aW1hdGUoKTtpZihuLndlYmtpdFRlbXBvcmFyeVN0b3JhZ2U/LnF1ZXJ5VXNhZ2VBbmRRdW90YSlyZXR1cm4gcWZTKCl9fTtnLkdiKCJ5dGdsb2JhbC5zdG9yYWdlQ2xhc3NfIixaNmopO3ZhciBqaVU9a08oInl0LXBsYXllci1sb2NhbC1tZWRpYSIse0tjOntpbmRleDp7dng6Mn0sbWVkaWE6e3Z4OjJ9LGNhcHRpb25zOnt2eDo1fX0sc2hhcmVkOiExLHVwZ3JhZGUobixXKXtXKDIpJiYoWnkobiwiaW5kZXgiKSxaeShuLCJtZWRpYSIpKTtXKDUpJiZaeShuLCJjYXB0aW9ucyIpO1coNikmJihVUihuLCJtZXRhZGF0YSIpLFVSKG4sInBsYXllcmRhdGEiKSl9LHZlcnNpb246NX0pO3ZhciBVeng9e2N1cGNha2U6MS41LGRvbnV0OjEuNixlY2xhaXI6Mixmcm95bzoyLjIsZ2luZ2VyYnJlYWQ6Mi4zLGhvbmV5Y29tYjozLCJpY2UgY3JlYW0gc2FuZHdpY2giOjQsamVsbHliZWFuOjQuMSxraXRrYXQ6NC40LGxvbGxpcG9wOjUuMSxtYXJzaG1hbGxvdzo2LG5vdWdhdDo3LjF9LHVEO2E6e3ZhciBvVj1nLlhRKCk7b1Y9b1YudG9Mb3dlckNhc2UoKTtpZihvVi5pbmRleE9mKCJhbmRyb2lkIikhPS0xKXt2YXIgeVpoPW9WLm1hdGNoKC9hbmRyb2lkXHMqKFxkKyhcLlxkKyk/KVteO3wpXSpbOyldLyk7aWYoeVpoKXtsZXQgbj1wYXJzZUZsb2F0KHlaaFsxXSk7aWYobjwxMDApe3VEPW47YnJlYWsgYX19dmFyIEVnYj1vVi5tYXRjaCgiKCIrT2JqZWN0LmtleXMoVXp4KS5qb2luKCJ8IikrIikiKTt1RD1FZ2I/VXp4W0VnYlswXV06MH1lbHNlIHVEPXZvaWQgMH12YXIgZG49dUQsTkY9ZG4+PTA7dmFyIHo4O3t2YXIgaTZoPWcuWFEoKTtsZXQgbj1pNmgubWF0Y2goL1woKGlQYWR8aVBob25lfGlQb2QpKCBTaW11bGF0b3IpPzsvKTtpZighbnx8bi5sZW5ndGg8Mil6OD12b2lkIDA7ZWxzZXt2YXIgbEQ9aTZoLm1hdGNoKC9cKChpUGFkfGlQaG9uZXxpUG9kKSggU2ltdWxhdG9yKT87IChVOyApP0NQVSAoaVBob25lICk/T1MgKFxkK19cZClbXyBdLyk7ejg9bEQmJmxELmxlbmd0aD09PTY/TnVtYmVyKGxEWzVdLnJlcGxhY2UoIl8iLCIuIikpOjB9fXZhciB2aj16OCx4ST12aj49MDt2YXIgb2Y7Zy51Wj1uZXcgUEFNO29mPTA7Zy5GTFU9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy52aWRlb0RhdGE9bjt0aGlzLk49e2MxYTooKT0+e3ZhciBXPVtdO2lmKGcudVouaXNJbml0aWFsaXplZCgpKXt2YXIgRD0iIjt0aGlzLnZpZGVvRGF0YSYmdGhpcy52aWRlb0RhdGEucEsmJihEPXRoaXMudmlkZW9EYXRhLnBLK2AmcjFiPSR7dGhpcy52aWRlb0RhdGEuY2xpZW50UGxheWJhY2tOb25jZX1gKTtEPXthdHJfY2hhbGxlbmdlOkR9O2cuZ18oImJnX3YiLHZvaWQgMCwicGxheWVyX2F0dCIpOyhEPXI5UyhEKSk/KGcuZ18oImJnX3MiLHZvaWQgMCwicGxheWVyX2F0dCIpLFcucHVzaChgcjFhPSR7RH1gKSk6KGcuZ18oImJnX2UiLHZvaWQgMCwicGxheWVyX2F0dCIpLFcucHVzaCgicjFjPTIiKSl9ZWxzZSBnLmdfKCJiZ19lIix2b2lkIDAsInBsYXllcl9hdHQiKSx3aW5kb3cudHJheXJpZGV8fHdpbmRvdy5ib3RndWFyZD9XLnB1c2goInIxYz0xIik6Vy5wdXNoKCJyMWM9NCIpO1cucHVzaChgcjFkPSR7Zy51Wi5nZXRTdGF0ZSgpfWApOwpyZXR1cm4gVy5qb2luKCImIil9LApjNmE6Vz0+InI2YT0iKyhOdW1iZXIoVy5jKV5MYygpKSwKYzZiOlc9PmByNmI9JHtOdW1iZXIoVy5jKV5OdW1iZXIoZy5BcigiQ0FUU1RBVCIsMCkpfWB9Owp0aGlzLnZpZGVvRGF0YSYmdGhpcy52aWRlb0RhdGEucEs/dGhpcy5SUj1nLml3KHRoaXMudmlkZW9EYXRhLnBLKTp0aGlzLlJSPXt9fX07Zy5DaT1jbGFzc3tjb25zdHJ1Y3RvcihuLFc9e30sRD0wKXt0aGlzLmVycm9yQ29kZT1uO3RoaXMuZGV0YWlscz1XO3RoaXMuc2V2ZXJpdHk9RH19O3ZhciB0SD17RUk6ZnVuY3Rpb24obixXKXt2YXIgRD1uWzBdO25bMF09bltXJW5bSVs1XV1dO25bVyVuW0lbNV1dXT1EfSwKT1c6ZnVuY3Rpb24obixXKXtuW0lbM11dKDAsVyl9LApHRzpmdW5jdGlvbihuKXtuW0lbMjVdXSgpfX07dmFyIHV2TT17UmQ6ImFkdW5pdCIsaFE6ImRldGFpbHBhZ2UiLGt3OiJlZGl0cGFnZSIsVE86ImVtYmVkZGVkIixEcDoibGVhbmJhY2siLEY3OiJwcmV2aWV3cGFnZSIsRE06InByb2ZpbGVwYWdlIixrUzoidW5wbHVnZ2VkIixNbjoicGxheWxpc3RvdmVydmlldyIsVUM6InNwb25zb3JzaGlwc29mZmVyIixCYToic2hvcnRzcGFnZSIsZEw6ImhhbmRsZXNjbGFpbWluZyIsaF86ImltbWVyc2l2ZWxpdmVwYWdlIix6TzoiY3JlYXRvcm11c2ljIixYSjoiaW1tZXJzaXZlbGl2ZXByZXZpZXdwYWdlIixZWDoiYWRtaW50b29seXVydCIsbk06InNob3J0c2F1ZGlvcGl2b3QiLHlfOiJjb25zdW1wdGlvbiIsZUw6ImJhY2tncm91bmRfYXVkaW9fcGxheWJhY2siLFVfOiJmYW1pbHlfY2VudGVyX3N1cGVydmlzZWVfaW50ZXJlc3RzX3BhZ2UiLEdPOiJmYW1pbHlfY2VudGVyX3N1cGVydmlzZWVfaW50ZXJlc3RfZGV0YWlsc19wYWdlIn07dmFyIG9nMj1bImgiLCJIIl0sZHppPVsiOSIsIigiXSx6cmg9WyI5aCIsIihoIl0sbEhoPVsiOCIsIioiXSxUdGk9WyJhIiwiQSJdLGpvaT1bIm8iLCJPIl0sQ0FiPVsibSIsIk0iXSxCdGk9WyJtYWMzIiwiTUFDMyJdLEZIdz1bIm1lYWMzIiwiTUVBQzMiXSxibz17aDpvZzIsSDpvZzIsWyI5Il06ZHppLFsiKCJdOmR6aSxbIjloIl06enJoLFsiKGgiXTp6cmgsWyI4Il06bEhoLFsiKiJdOmxIaCxhOlR0aSxBOlR0aSxvOmpvaSxPOmpvaSxtOkNBYixNOkNBYixtYWMzOkJ0aSxNQUMzOkJ0aSxtZWFjMzpGSHcsTUVBQzM6Rkh3fSx3Rlo9bmV3IFNldCgibyBPIGEgYWggQSBtIE0gbWFjMyBNQUMzIG1lYWMzIE1FQUMzIHNvIHNhIi5zcGxpdCgiICIpKSxwTGo9bmV3IFNldCgibSBNIG1hYzMgTUFDMyBtZWFjMyBNRUFDMyIuc3BsaXQoIiAiKSk7dmFyIEZCVT17ak06MCxObToxMjQsZDQ6MTQ0LEp6OjIyMCx5VjoyNDAsYjY6MzQwLFdhOjM2MCx6NTo0ODAsaHo6NTg4LG1wOjYwOCxYczo3MjAscW06NzQwLHc0OjEwODAsQzQ6MTEwMCxvNjoxNDQwLFBhOjIxNjAsaTY6OTk5OSwwOiJRVUFMSVRZX09SRElOQUxfVU5LTk9XTiIsMTI0OiJRVUFMSVRZX09SRElOQUxfMTQ0UF9TQVZFUiIsMTQ0OiJRVUFMSVRZX09SRElOQUxfMTQ0UCIsMjIwOiJRVUFMSVRZX09SRElOQUxfMjQwUF9TQVZFUiIsMjQwOiJRVUFMSVRZX09SRElOQUxfMjQwUCIsMzQwOiJRVUFMSVRZX09SRElOQUxfMzYwUF9TQVZFUiIsMzYwOiJRVUFMSVRZX09SRElOQUxfMzYwUCIsNDgwOiJRVUFMSVRZX09SRElOQUxfNDgwUCIsNTg4OiJRVUFMSVRZX09SRElOQUxfNjA4UF9TQVZFUiIsNjA4OiJRVUFMSVRZX09SRElOQUxfNjA4UCIsNzIwOiJRVUFMSVRZX09SRElOQUxfNzIwUCIsNzQwOiJRVUFMSVRZX09SRElOQUxfNzIwUF9FTkhBTkNFRCIsMTA4MDoiUVVBTElUWV9PUkRJTkFMXzEwODBQIiwKMTEwMDoiUVVBTElUWV9PUkRJTkFMXzEwODBQX0VOSEFOQ0VEIiwxNDQwOiJRVUFMSVRZX09SRElOQUxfMTQ0MFAiLDIxNjA6IlFVQUxJVFlfT1JESU5BTF8yMTYwUCIsOTk5OToiUVVBTElUWV9PUkRJTkFMX0hJR0hSRVMifTt2YXIgTkc9e2F1dG86MCx0aW55OjE0NCxsaWdodDoxNDQsc21hbGw6MjQwLG1lZGl1bTozNjAsbGFyZ2U6NDgwLGhkNzIwOjcyMCxoZDEwODA6MTA4MCxoZDE0NDA6MTQ0MCxoZDIxNjA6MjE2MCxoZDI4ODA6Mjg4MCxoaWdocmVzOjQzMjB9LExnPXswOiJhdXRvIiwxNDQ6InRpbnkiLDI0MDoic21hbGwiLDM2MDoibWVkaXVtIiw0ODA6ImxhcmdlIiw3MjA6ImhkNzIwIiwxMDgwOiJoZDEwODAiLDE0NDA6ImhkMTQ0MCIsMjE2MDoiaGQyMTYwIiwyODgwOiJoZDI4ODAiLDQzMjA6ImhpZ2hyZXMifSxOej17UVVBTElUWV9PUkRJTkFMX1VOS05PV046MCxRVUFMSVRZX09SRElOQUxfMTQ0UF9TQVZFUjoxMjQsUVVBTElUWV9PUkRJTkFMXzE0NFA6MTQ0LFFVQUxJVFlfT1JESU5BTF8yNDBQX1NBVkVSOjIyMCxRVUFMSVRZX09SRElOQUxfMjQwUDoyNDAsUVVBTElUWV9PUkRJTkFMXzM2MFBfU0FWRVI6MzQwLFFVQUxJVFlfT1JESU5BTF8zNjBQOjM2MCxRVUFMSVRZX09SRElOQUxfNDgwUDo0ODAsClFVQUxJVFlfT1JESU5BTF82MDhQX1NBVkVSOjU4OCxRVUFMSVRZX09SRElOQUxfNjA4UDo2MDgsUVVBTElUWV9PUkRJTkFMXzcyMFA6NzIwLFFVQUxJVFlfT1JESU5BTF83MjBQX0VOSEFOQ0VEOjc0MCxRVUFMSVRZX09SRElOQUxfMTA4MFA6MTA4MCxRVUFMSVRZX09SRElOQUxfMTA4MFBfRU5IQU5DRUQ6MTEwMCxRVUFMSVRZX09SRElOQUxfMTQ0MFA6MTQ0MCxRVUFMSVRZX09SRElOQUxfMjE2MFA6MjE2MCxRVUFMSVRZX09SRElOQUxfSElHSFJFUzo5OTk5fTt2YXIgJGQ9MjU5MkUzO2cuT249e1NUT1BfRVZFTlRfUFJPUEFHQVRJT046Imh0bWw1LXN0b3AtcHJvcGFnYXRpb24iLElWX0RSQVdFUl9FTkFCTEVEOiJ5dHAtaXYtZHJhd2VyLWVuYWJsZWQiLElWX0RSQVdFUl9PUEVOOiJ5dHAtaXYtZHJhd2VyLW9wZW4iLE1BSU5fVklERU86Imh0bWw1LW1haW4tdmlkZW8iLFZJREVPX0NPTlRBSU5FUjoiaHRtbDUtdmlkZW8tY29udGFpbmVyIixWSURFT19DT05UQUlORVJfVFJBTlNJVElPTklORzoiaHRtbDUtdmlkZW8tY29udGFpbmVyLXRyYW5zaXRpb25pbmciLEhPVVNFX0JSQU5EOiJob3VzZS1icmFuZCJ9O3ZhciBQbj17YWxsb3dlZDoiQVVUT1BMQVlfQlJPV1NFUl9QT0xJQ1lfQUxMT1dFRCIsImFsbG93ZWQtbXV0ZWQiOiJBVVRPUExBWV9CUk9XU0VSX1BPTElDWV9BTExPV0VEX01VVEVEIixkaXNhbGxvd2VkOiJBVVRPUExBWV9CUk9XU0VSX1BPTElDWV9ESVNBTExPV0VEIn07dmFyIGNLTT17QU5EUk9JRDozLEFORFJPSURfS0lEUzoxOCxBTkRST0lEX01VU0lDOjIxLEFORFJPSURfVU5QTFVHR0VEOjI5LFdFQjoxLFdFQl9SRU1JWDo2NyxXRUJfVU5QTFVHR0VEOjQxLElPUzo1LElPU19LSURTOjE5LElPU19NVVNJQzoyNixJT1NfVU5QTFVHR0VEOjMzfSx1Sj17YW5kcm9pZDoiQU5EUk9JRCIsImFuZHJvaWQuayI6IkFORFJPSURfS0lEUyIsImFuZHJvaWQubSI6IkFORFJPSURfTVVTSUMiLCJhbmRyb2lkLnVwIjoiQU5EUk9JRF9VTlBMVUdHRUQiLHlvdXR1YmU6IldFQiIsInlvdXR1YmUubSI6IldFQl9SRU1JWCIsInlvdXR1YmUudXAiOiJXRUJfVU5QTFVHR0VEIix5dGlvczoiSU9TIiwieXRpb3MuayI6IklPU19LSURTIiwieXRpb3MubSI6IklPU19NVVNJQyIsInl0aW9zLnVwIjoiSU9TX1VOUExVR0dFRCJ9LE00Uz17Im1keC1wYWlyIjoxLCJtZHgtZGlhbCI6MiwibWR4LWNhc3QiOjMsIm1keC12b2ljZSI6NCwibWR4LWluYXBwZGlhbCI6NX07dmFyIExHMT17aV86MSxZdzoyLFBBVVNFRDozLDE6IkRJU0FCTEVEIiwyOiJFTkFCTEVEIiwzOiJQQVVTRUQifTt2YXIgZXh4PVJlZ0V4cCgiXmh0dHBzPzovLyhbXi5dKlxcLm1vYXRhZHNcXC5jb20vfGVbMC05XStcXC55dFxcLnNyc1xcLmRvdWJsZXZlcmlmeVxcLmNvbXxwYWdlYWQyXFwuZ29vZ2xlc3luZGljYXRpb25cXC5jb20vcGFnZWFkL2dlbl8yMDRcXD9pZD15dDNwJnNyPTEmfHBtXFwuYWRzYWZlcHJvdGVjdGVkXFwuY29tL3lvdXR1YmV8cG1cXC50ZXN0LWFkc2FmZXByb3RlY3RlZFxcLmNvbS95b3V0dWJlfHlvdXR1YmVbMC05XStcXC5tb2F0cGl4ZWxcXC5jb20vKSIpLGxKPVJlZ0V4cCgiXmh0dHBzOi8vKFthLXpdK1xcLik/WzAtOWEtZl17MSw2M31cXC5zc2xwcm94eVxcLmNvcnBcXC5nb29nbGVcXC5jb20vfF5odHRwczovLyhbYS16XStcXC4pP1thLXowLTlcXC1dezEsNjN9XFwuZGVtb3NcXC5jb3JwXFwuZ29vZ2xlXFwuY29tL3xeaHR0cHM6Ly9bMC05YS1mXXsxLDYzfVxcLnByb3h5XFwuZ29vZ2xlcHJvZFxcLmNvbS98Xmh0dHBzPzovLygoWy1cXHddKnd3d1stXFx3XSpcXC58Wy1cXHddKndlYlstXFx3XSpcXC58Wy1cXHddKmNhbmFyeVstXFx3XSpcXC58Wy1cXHddKmRldlstXFx3XSpcXC58Wy1cXHddezEsM31cXC4pKyhjb3JwXFwuKT95b3V0dWJlKC1ub2Nvb2tpZXxraWRzfGVkdWNhdGlvbik/XFwuY29tL3woW0EtWmEtejAtOS1dezEsNjN9XFwuKSooeW91dHViZVxcLmdvb2dsZWFwaXNcXC5jb20pWy5dPyg6WzAtOV0rKT8vfChbYS16XStcXC4pP1thLXowLTlcXC1dezEsNjN9XFwuKFthLXpdezN9fGkpXFwuY29ycFxcLmdvb2dsZVxcLmNvbSg6WzAtOV0rKT8vfChbYS16XStcXC4pP1thLXowLTlcXC1dezEsNjN9XFwuY1xcLmdvb2dsZXJzXFwuY29tKDpbMC05XSspPy98KGRvY3N8ZHJpdmUpXFwuZ29vZ2xlXFwuY29tLyhhL1teL1xcXFwlXSsvfCl8KG11c2ljfG11c2ljLWdyZWVuLXFhfG11c2ljLXJlbGVhc2UtcWF8eXQtbXVzaWMtZ3JlZW5cXC5jb3JwKVxcLnlvdXR1YmVcXC5jb20vfCh0dnx0di1ncmVlbi1xYXx0di1ncmVlbi1xYVxcLmNvcnB8dHYtcmVsZWFzZS1xYXx0di1yZWxlYXNlLXFhXFwuY29ycHx0di1pbnRlZ3JhdGlvbi1xYXx0di1pbnRlZ3JhdGlvbi1xYVxcLmNvcnB8eXQtdHYtYXV0b3B1c2hcXC5jb3JwfHl0LXR2LWludGVncmF0aW9uXFwuY29ycHx5dC10di1zdGFnaW5nXFwuY29ycClcXC55b3V0dWJlXFwuY29tL3xbQS1aYS16MC05LV0rXFwucHJvZFxcLmdvb2dsZVxcLmNvbSg6WzAtOV0rKT8vKSIpLApndGo9UmVnRXhwKCJeaHR0cHM/Oi8vKHd3d1xcLmdvb2dsZVxcLmNvbS9wYWdlYWQveHN1bHx3d3dcXC55b3V0dWJlXFwuY29tL3BhZ2VhZC9zbGF2KSIpLHg1cj1SZWdFeHAoIl5odHRwczovLyhbQS1aYS16MC05LV17MSw2M31cXC4pK2RlbW9zXFwuY29ycFxcLmdvb2dsZVxcLmNvbSgvKD8hdXJsXFxiKXwkKXxeaHR0cHM6Ly8oW0EtWmEtejAtOS1dezEsNjN9XFwuKStzc2xwcm94eVxcLmNvcnBcXC5nb29nbGVcXC5jb20oL3wkKXxeaHR0cHM/Oi8vKChbQS1aYS16MC05LV17MSw2M31cXC4pKihjb3JwXFwuZ29vZ2xlXFwuY29tfHByb3h5XFwuZ29vZ2xlcHJvZFxcLmNvbXxjXFwuZ29vZ2xlcnNcXC5jb218cHJveHlcXC5nb29nbGVyc1xcLmNvbXxkb2NzXFwuZ29vZ2xlXFwuY29tfGRyaXZlXFwuZ29vZ2xlXFwuY29tfHByb2RcXC5nb29nbGVcXC5jb218bWFpbFxcLmdvb2dsZVxcLmNvbXx5b3V0dWJlXFwuY29tfHlvdXR1YmVlZHVjYXRpb25cXC5jb218eW91dHViZVxcLW5vY29va2llXFwuY29tfHlvdXR1YmVraWRzXFwuY29tKVsuXT8oOlswLTldKyk/L3woW0EtWmEtejAtOS1dezEsNjN9XFwuKSooc2FuZGJveFxcLmdvb2dsZVxcLmNvbSkoOlswLTldKyk/KC8oPyF1cmxcXGIpfCQpKSIpLApMaHQ9UmVnRXhwKCJeaHR0cHM/Oi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGN1cnJlbnRzXFwuZ29vZ2xlXFwuY29tKVsuXT8oOlswLTldKyk/LyIpLGs3cj1SZWdFeHAoIl5odHRwczovLyhbQS1aYS16MC05LV17MSw2M31cXC4pK2RlbW9zXFwuY29ycFxcLmdvb2dsZVxcLmNvbSgvKD8hdXJsXFxiKXwkKXxeaHR0cHM6Ly8oW0EtWmEtejAtOS1dezEsNjN9XFwuKStzc2xwcm94eVxcLmNvcnBcXC5nb29nbGVcXC5jb20oL3wkKXxeaHR0cHM/Oi8vKChbQS1aYS16MC05LV17MSw2M31cXC4pKihjb3JwXFwuZ29vZ2xlXFwuY29tfHByb3h5XFwuZ29vZ2xlcHJvZFxcLmNvbXxjXFwuZ29vZ2xlcnNcXC5jb218cHJveHlcXC5nb29nbGVyc1xcLmNvbXxib3JnXFwuZ29vZ2xlXFwuY29tfHByb2RcXC5nb29nbGVcXC5jb218eW91dHViZVxcLmNvbXx5b3V0dWJla2lkc1xcLmNvbSlbLl0/KDpbMC05XSspPy98KFtBLVphLXowLTktXXsxLDYzfVxcLikqKHNhbmRib3hcXC5nb29nbGVcXC5jb20pKDpbMC05XSspPygvKD8hdXJsXFxiKXwkKSkiKSwKRDVVPVJlZ0V4cCgiXigoaHR0cChzKT8pOik/XFwvXFwvKCgoKGxoWzMtNl0oLXR0fC1kW2EtZyx6XSk/XFwuKChnZ3BodCl8KGdvb2dsZXVzZXJjb250ZW50KXwoZ29vZ2xlKXwoc2FuZGJveFxcLmdvb2dsZSkpKXwobGg3XFwtKGV1fHVzfHF3fHJ0fHh4KVxcLigoZ29vZ2xldXNlcmNvbnRlbnQpfChnb29nbGUpKSl8KChwaG90b3N8dGVzdG9ubHl8d29yaylcXC5maWZlXFwudXNlcmNvbnRlbnRcXC5nb29nbGUpfChbXFx3XFwtXStcXC5maWZlXFwudXNlcmNvbnRlbnRcXC5nb29nbGUpfCgoWzEtNF1cXC5icFxcLmJsb2dzcG90KXwoYnBbMC0zXVxcLmJsb2dnZXIpKXwoY2NwLWxoXFwuZ29vZ2xldXNlcmNvbnRlbnQpfCgoKChjcHxjaXxncClbMy02XSl8KGFwWzEtMl0pKVxcLihnZ3BodHxnb29nbGV1c2VyY29udGVudCkpfChnbVsxLTRdXFwuZ2dwaHQpfChwbGF5LSh0aS0pP2xoXFwuZ29vZ2xldXNlcmNvbnRlbnQpfChnelswLTFdXFwuZ29vZ2xldXNlcmNvbnRlbnQpfChsaDNcXC1nbVxcLmdvb2dsZSl8KCgoeXRbMy00XSl8KHNwWzEtM10pKVxcLihnZ3BodHxnb29nbGV1c2VyY29udGVudCkpKVxcLmNvbSl8KGRyaXZlXFwuZ29vZ2xlXFwuY29tXFwvZHJpdmVcXC0odXNlcmNvbnRlbnR8dmlld2VyKSl8KGRwWzMtNl1cXC5nb29nbGV1c2VyY29udGVudFxcLmNuKXwoZHA0XFwuZ29vZ2xldXNlcmNvbnRlbnRcXC5jb20pfCgocGhvdG9zfGRyaXZlfGNvbnRyaWJ1dGlvbilcXC1pbWFnZVxcLShkZXZ8cWEpKC11c3wtZXUpPygtYXV0aHwtY29va2llKT9cXC5jb3JwXFwuZ29vZ2xlXFwuY29tKXwocGhvdG9zXFwtaW1hZ2VcXC1kZXZcXC1kbFxcLShhdXRofGV1fHVzKVxcLmNvcnBcXC5nb29nbGVcXC5jb20pfCgoZGV2fGRldjJ8ZGV2M3xxYXxxYTJ8cWEzfHFhLXJlZHxxYS1ibHVlfGNhbmFyeSlbLS5dbGlnaHRob3VzZVxcLnNhbmRib3hcXC5nb29nbGVcXC5jb21cXC9pbWFnZSl8KGltYWdlXFwtKGRldnxxYSlcXC1saWdodGhvdXNlKC1hdXRoKT9cXC5zYW5kYm94XFwuZ29vZ2xlXFwuY29tKFxcL2ltYWdlKT8pfChkcml2ZVxcLXFhXFwuY29ycFxcLmdvb2dsZVxcLmNvbVxcL2RyaXZlXFwtKHVzZXJjb250ZW50fHZpZXdlcikpfChkb2NzKFxcLShkZXZ8cWEpXFwuY29ycCk/XFwuZ29vZ2xlXFwuY29tXFwvKHVcXC9bMC05XStcXC8pPyhkb2NzfHNoZWV0c3xzbGlkZXN8ZHJhd2luZ3N8Zm9ybXN8dmlkZW9zfHBpY3R1cmVzKVxcLWltYWdlc1xcLShydHxxdykpfChkb2NzXFwuc2FuZGJveFxcLmdvb2dsZVxcLmNvbVxcLyh1XFwvWzAtOV0rXFwvKT8oZG9jc3xzaGVldHN8c2xpZGVzfGRyYXdpbmdzfGZvcm1zfHZpZGVvc3xwaWN0dXJlcylcXC1pbWFnZXMpfChzaXRlc1xcLmdvb2dsZVxcLmNvbVxcLyh1XFwvWzAtOV0rXFwvKT9zaXRlcyh2KT9cXC1pbWFnZXNcXC0ocnR8cXcpKXwoYXRhcmktZ3JlZW4tdGVzdFxcLmNvcnBcXC5nb29nbGVcXC5jb21cXC8odVxcL1swLTldK1xcLyk/c2l0ZXModik/XFwtaW1hZ2VzXFwtKHJ0fHF3KSl8KHNpdGVzXFwuc2FuZGJveFxcLmdvb2dsZVxcLmNvbVxcLyh1XFwvWzAtOV0rXFwvKT9zaXRlcyh2KT9cXC1pbWFnZXMpKVxcL3xeaHR0cHM6Ly8oW0EtWmEtejAtOS1dezEsNjN9XFwuKStkZW1vc1xcLmNvcnBcXC5nb29nbGVcXC5jb20oLyg/IXVybFxcYil8JCl8Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikrc3NscHJveHlcXC5jb3JwXFwuZ29vZ2xlXFwuY29tKC98JCl8Xmh0dHBzPzovLygoW0EtWmEtejAtOS1dezEsNjN9XFwuKSooY29ycFxcLmdvb2dsZVxcLmNvbXxwcm94eVxcLmdvb2dsZXByb2RcXC5jb218Y1xcLmdvb2dsZXJzXFwuY29tfHByb3h5XFwuZ29vZ2xlcnNcXC5jb218Ym9yZ1xcLmdvb2dsZVxcLmNvbXxkb2NzXFwuZ29vZ2xlXFwuY29tfGRyaXZlXFwuZ29vZ2xlXFwuY29tfGdvb2dsZXBsZXhcXC5jb218cGxheVxcLmdvb2dsZVxcLmNvbXxwcm9kXFwuZ29vZ2xlXFwuY29tfHZpZGVvXFwuZ29vZ2xlXFwuY29tfHlvdXR1YmVcXC5jb218eXRpbWdcXC5jb218eXRpbWdcXC5zYW5kYm94XFwuZ29vZ2xlXFwuY29tfGNoYXRcXC5nb29nbGVcXC5jb20pWy5dPyg6WzAtOV0rKT8vfChbQS1aYS16MC05LV17MSw2M31cXC4pKihzYW5kYm94XFwuZ29vZ2xlXFwuY29tKSg6WzAtOV0rKT8oLyg/IXVybFxcYil8JCl8czJcXC5nb29nbGV1c2VyY29udGVudFxcLmNvbS9zMi9mYXZpY29uc1xcP3x5dFszLTRdXFwuZ2dwaHRcXC5jb20vKSIpLApiS1o9UmVnRXhwKCJeaHR0cHM/Oi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGN1cnJlbnRzXFwuZ29vZ2xlXFwuY29tKVsuXT8oOlswLTldKyk/LyIpLFhLMj1SZWdFeHAoIl5odHRwcz8uKiNvY3IkfF5odHRwcz86Ly8oYWtzZWN1cmVcXC5pbXJ3b3JsZHdpZGVcXC5jb20vfGNkblxcLmltcndvcmxkd2lkZVxcLmNvbS98c2VjdXJlXFwtLi5cXC5pbXJ3b3JsZHdpZGVcXC5jb20vKSIpLHZFaD1SZWdFeHAoIl5odHRwcz86Ly8oZ29vZ2xlYWRzXFwuZ1xcLmRvdWJsZWNsaWNrXFwubmV0LyhhY2xrfHBhZ2VhZC9jb252ZXJzaW9uKXx3d3dcXC5nb29nbGVcXC5jb20vKGFjbGt8cGFnZWFkL2NvbnZlcnNpb24pfHd3d1xcLmdvb2dsZWFkc2VydmljZXNcXC5jb20vKGFjbGt8cGFnZWFkLyhhY2xrfGNvbnZlcnNpb24pKXx3d3dcXC55b3V0dWJlXFwuY29tL3BhZ2VhZC9jb252ZXJzaW9uKSIpLG5Fdz1SZWdFeHAoIl4oKGh0dHAocyk/KTopP1xcL1xcLygoKChsaFszLTZdKC10dHwtZFthLWcsel0pP1xcLigoZ2dwaHQpfChnb29nbGV1c2VyY29udGVudCl8KGdvb2dsZSl8KHNhbmRib3hcXC5nb29nbGUpKSl8KGxoN1xcLShldXx1c3xxd3xydHx4eClcXC4oKGdvb2dsZXVzZXJjb250ZW50KXwoZ29vZ2xlKSkpfCgocGhvdG9zfHRlc3Rvbmx5fHdvcmspXFwuZmlmZVxcLnVzZXJjb250ZW50XFwuZ29vZ2xlKXwoW1xcd1xcLV0rXFwuZmlmZVxcLnVzZXJjb250ZW50XFwuZ29vZ2xlKXwoKFsxLTRdXFwuYnBcXC5ibG9nc3BvdCl8KGJwWzAtM11cXC5ibG9nZ2VyKSl8KGNjcC1saFxcLmdvb2dsZXVzZXJjb250ZW50KXwoKCgoY3B8Y2l8Z3ApWzMtNl0pfChhcFsxLTJdKSlcXC4oZ2dwaHR8Z29vZ2xldXNlcmNvbnRlbnQpKXwoZ21bMS00XVxcLmdncGh0KXwocGxheS0odGktKT9saFxcLmdvb2dsZXVzZXJjb250ZW50KXwoZ3pbMC0xXVxcLmdvb2dsZXVzZXJjb250ZW50KXwobGgzXFwtZ21cXC5nb29nbGUpfCgoKHl0WzMtNF0pfChzcFsxLTNdKSlcXC4oZ2dwaHR8Z29vZ2xldXNlcmNvbnRlbnQpKSlcXC5jb20pfChkcml2ZVxcLmdvb2dsZVxcLmNvbVxcL2RyaXZlXFwtKHVzZXJjb250ZW50fHZpZXdlcikpfChkcFszLTZdXFwuZ29vZ2xldXNlcmNvbnRlbnRcXC5jbil8KGRwNFxcLmdvb2dsZXVzZXJjb250ZW50XFwuY29tKXwoKHBob3Rvc3xkcml2ZXxjb250cmlidXRpb24pXFwtaW1hZ2VcXC0oZGV2fHFhKSgtdXN8LWV1KT8oLWF1dGh8LWNvb2tpZSk/XFwuY29ycFxcLmdvb2dsZVxcLmNvbSl8KHBob3Rvc1xcLWltYWdlXFwtZGV2XFwtZGxcXC0oYXV0aHxldXx1cylcXC5jb3JwXFwuZ29vZ2xlXFwuY29tKXwoKGRldnxkZXYyfGRldjN8cWF8cWEyfHFhM3xxYS1yZWR8cWEtYmx1ZXxjYW5hcnkpWy0uXWxpZ2h0aG91c2VcXC5zYW5kYm94XFwuZ29vZ2xlXFwuY29tXFwvaW1hZ2UpfChpbWFnZVxcLShkZXZ8cWEpXFwtbGlnaHRob3VzZSgtYXV0aCk/XFwuc2FuZGJveFxcLmdvb2dsZVxcLmNvbShcXC9pbWFnZSk/KXwoZHJpdmVcXC1xYVxcLmNvcnBcXC5nb29nbGVcXC5jb21cXC9kcml2ZVxcLSh1c2VyY29udGVudHx2aWV3ZXIpKXwoZG9jcyhcXC0oZGV2fHFhKVxcLmNvcnApP1xcLmdvb2dsZVxcLmNvbVxcLyh1XFwvWzAtOV0rXFwvKT8oZG9jc3xzaGVldHN8c2xpZGVzfGRyYXdpbmdzfGZvcm1zfHZpZGVvc3xwaWN0dXJlcylcXC1pbWFnZXNcXC0ocnR8cXcpKXwoZG9jc1xcLnNhbmRib3hcXC5nb29nbGVcXC5jb21cXC8odVxcL1swLTldK1xcLyk/KGRvY3N8c2hlZXRzfHNsaWRlc3xkcmF3aW5nc3xmb3Jtc3x2aWRlb3N8cGljdHVyZXMpXFwtaW1hZ2VzKXwoc2l0ZXNcXC5nb29nbGVcXC5jb21cXC8odVxcL1swLTldK1xcLyk/c2l0ZXModik/XFwtaW1hZ2VzXFwtKHJ0fHF3KSl8KGF0YXJpLWdyZWVuLXRlc3RcXC5jb3JwXFwuZ29vZ2xlXFwuY29tXFwvKHVcXC9bMC05XStcXC8pP3NpdGVzKHYpP1xcLWltYWdlc1xcLShydHxxdykpfChzaXRlc1xcLnNhbmRib3hcXC5nb29nbGVcXC5jb21cXC8odVxcL1swLTldK1xcLyk/c2l0ZXModik/XFwtaW1hZ2VzKSlcXC98Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikrZGVtb3NcXC5jb3JwXFwuZ29vZ2xlXFwuY29tKC8oPyF1cmxcXGIpfCQpfF5odHRwczovLyhbQS1aYS16MC05LV17MSw2M31cXC4pK3NzbHByb3h5XFwuY29ycFxcLmdvb2dsZVxcLmNvbSgvfCQpfF5odHRwcz86Ly8oKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGNvcnBcXC5nb29nbGVcXC5jb218cHJveHlcXC5nb29nbGVwcm9kXFwuY29tfGNcXC5nb29nbGVyc1xcLmNvbXxwcm94eVxcLmdvb2dsZXJzXFwuY29tfGJvcmdcXC5nb29nbGVcXC5jb218ZG9jc1xcLmdvb2dsZVxcLmNvbXxkcml2ZVxcLmdvb2dsZVxcLmNvbXxnb29nbGVwbGV4XFwuY29tfGdvb2dsZXZpZGVvXFwuY29tfHByb2RcXC5nb29nbGVcXC5jb218bGgzXFwucGhvdG9zXFwuZ29vZ2xlXFwuY29tfG1haWxcXC5nb29nbGVcXC5jb218eW91dHViZVxcLmNvbXx5dFxcLmFrYW1haXplZFxcLm5ldHxjaGF0XFwuZ29vZ2xlXFwuY29tKVsuXT8oOlswLTldKyk/L3woW0EtWmEtejAtOS1dezEsNjN9XFwuKSooc2FuZGJveFxcLmdvb2dsZVxcLmNvbSkoOlswLTldKyk/KC8oPyF1cmxcXGIpfCQpfChbQS1aYS16MC05LV17MSw2M31cXC4pKmNcXC5saDMoLWRbYS1neXpdfC10ZXN0b25seSk/XFwuKGdvb2dsZXVzZXJjb250ZW50fHBob3Rvc1xcLmdvb2dsZSlcXC5jb20vLiokKSIpLApXaFo9UmVnRXhwKCJeaHR0cHM/Oi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGN1cnJlbnRzXFwuZ29vZ2xlXFwuY29tKVsuXT8oOlswLTldKyk/LyIpLFJyaT1SZWdFeHAoIl5odHRwcz86Ly8oKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGltYXNka1xcLmdvb2dsZWFwaXNcXC5jb218Mm1kblxcLm5ldHxnb29nbGVzeW5kaWNhdGlvblxcLmNvbXxjb3JwXFwuZ29vZ2xlXFwuY29tfHByb3h5XFwuZ29vZ2xlcHJvZFxcLmNvbXxjXFwuZ29vZ2xlcnNcXC5jb218cHJveHlcXC5nb29nbGVyc1xcLmNvbXxib3JnXFwuZ29vZ2xlXFwuY29tfGdvb2dsZWFkc1xcLmdcXC5kb3VibGVjbGlja1xcLm5ldHxwcm9kXFwuZ29vZ2xlXFwuY29tfHN0YXRpY1xcLmRvdWJsZWNsaWNrXFwubmV0fHN0YXRpY1xcLmdvb2dsZWFkc3NlcnZpbmdcXC5jbnxzdHVkaW9hcGlcXC5kb3VibGVjbGlja1xcLm5ldHx5b3V0dWJlXFwuY29tfHlvdXR1YmVcXC5nb29nbGVhcGlzXFwuY29tfHlvdXR1YmVcXC1ub2Nvb2tpZVxcLmNvbXx5b3V0dWJla2lkc1xcLmNvbXx5dGltZ1xcLmNvbXx5dGltZ1xcLnNhbmRib3hcXC5nb29nbGVcXC5jb20pWy5dPyg6WzAtOV0rKT8vfGxpZ2h0Ym94LShkZW1vc3xidWlsZGVyKVxcLmFwcHNwb3RcXC5jb20vfHNbMDFdKHFhKT9cXC4ybWRuXFwubmV0L2Fkcy9yaWNobWVkaWEvc3R1ZGlvL211L3RlbXBsYXRlcy90ZXRyaXN8d3d3XFwuZ3N0YXRpY1xcLmNvbS9kb3VibGVjbGljay9zdHVkaW8vaW5ub3ZhdGlvbi9oNS9sYXlvdXRzL3RldHJpc3x3d3dcXC5nc3RhdGljXFwuY29tL2RvdWJsZWNsaWNrL3N0dWRpby9pbm5vdmF0aW9uL3l0cGxheWVyKSIpLApRb009UmVnRXhwKCJeaHR0cHM6Ly8oW0EtWmEtejAtOS1dezEsNjN9XFwuKSooY3Jvd2Rzb3VyY2V8ZGF0YWNvbXB1dGUpXFwuZ29vZ2xlXFwuY29tL3xeaHR0cHM6Ly8oW0EtWmEtejAtOS1dezEsNjN9XFwuKStkZW1vc1xcLmNvcnBcXC5nb29nbGVcXC5jb20oLyg/IXVybFxcYil8JCl8Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikrc3NscHJveHlcXC5jb3JwXFwuZ29vZ2xlXFwuY29tKC98JCl8Xmh0dHBzOi8vKGFkc3xhZHdvcmRzXFwuY29ycClcXC5nb29nbGVcXC5jb20vKGF3Lyhhc3NldGdyb3VwLyhlZGl0fG5ldyl8Y2FtcGFpZ25zLyhuZXcvKHBlcmZvcm1hbmNlbWF4fGRlbWFuZGdlbil8ZWRpdC9kZW1hbmRnZW4pKXwkKXxeaHR0cHM6Ly8oYWR3b3Jkcy0pP2NhbmFyeVxcLnFhXFwuYWR6XFwuZ29vZ2xlXFwuY29tLyhhdy8oYXNzZXRncm91cC8oZWRpdHxuZXcpfGNhbXBhaWducy8obmV3LyhwZXJmb3JtYW5jZW1heHxkZW1hbmRnZW4pfGVkaXQvZGVtYW5kZ2VuKSl8JCl8Xmh0dHBzOi8vKGJvb2tzfHBsYXktYm9va3MtKGF1dG9wdXNofGludGVybmFsfHByZXByb2R8c3RhZ2luZykoLXNhbmRib3h8XFwuY29ycCkpXFwuZ29vZ2xldXNlcmNvbnRlbnRcXC5jb20oL3wkKXxeaHR0cHM6Ly9hZHMoLWV4dGVybmFsKT8tcHJvZFxcLnFhXFwuYWR6XFwuZ29vZ2xlXFwuY29tLyhhdy8oYXNzZXRncm91cC8oZWRpdHxuZXcpfGNhbXBhaWducy8obmV3LyhwZXJmb3JtYW5jZW1heHxkZW1hbmRnZW4pfGVkaXQvZGVtYW5kZ2VuKSl8JCl8Xmh0dHBzOi8vY2FudmFzdGVzdGVyLTNmZDBiXFwuYXBwc3BvdFxcLmNvbSgvfCQpfF5odHRwczovL2xvY2FsaG9zdFxcLmdvb2dsZXVzZXJjb250ZW50XFwuY29tKDpcXGQrKT8oL3wkKXxeaHR0cHM6Ly9uYXJyYXRpdmUtbmV3cy1jYXN0LXJlY2VpdmVyLWRcXC5hcHBzcG90XFwuY29tKC98JCl8Xmh0dHBzOi8vbmFycmF0aXZlLW5ld3MtY2FzdC1yZWNlaXZlci1mXFwuYXBwc3BvdFxcLmNvbSgvfCQpfF5odHRwczovL29uZVxcLmdvb2dsZVxcLmNvbSgvfCQpfF5odHRwczovL3d3d1xcLmdvb2dsZVxcLmNvbS9jdWx0dXJhbGluc3RpdHV0ZS9tYW5hZ2UvLiokfF5odHRwczovL3d3d1xcLmdzdGF0aWNcXC5jb20vYW9nX2hvd3RvfF5odHRwczovL3d3d1xcLmdzdGF0aWNcXC5jb20vbmFycmF0aXZlX2Nhc3RfcmVjZWl2ZXIvbmV3c3xeaHR0cHM/Oi8vKChbQS1aYS16MC05LV17MSw2M31cXC4pKihpbWFzZGtcXC5nb29nbGVhcGlzXFwuY29tfGNvcnBcXC5nb29nbGVcXC5jb218cHJveHlcXC5nb29nbGVwcm9kXFwuY29tfGNcXC5nb29nbGVyc1xcLmNvbXxwcm94eVxcLmdvb2dsZXJzXFwuY29tfGJvcmdcXC5nb29nbGVcXC5jb218ZG9jc1xcLmdvb2dsZVxcLmNvbXxkcml2ZVxcLmdvb2dsZVxcLmNvbXxnb29nbGVhZHNcXC5nXFwuZG91YmxlY2xpY2tcXC5uZXR8Z29vZ2xlcGxleFxcLmNvbXxwbGF5XFwuZ29vZ2xlXFwuY29tfHByb2RcXC5nb29nbGVcXC5jb218cGhvdG9zXFwuZ29vZ2xlXFwuY29tfGdldFxcLmdvb2dsZVxcLmNvbXxibG9nZ2VyXFwuY29tfG1haWxcXC5nb29nbGVcXC5jb218c3VydmV5XFwuZ1xcLmRvdWJsZWNsaWNrXFwubmV0fHlvdXR1YmVcXC5jb218eW91dHViZVxcLmdvb2dsZWFwaXNcXC5jb218eW91dHViZWVkdWNhdGlvblxcLmNvbXx5b3V0dWJlXFwtbm9jb29raWVcXC5jb218eXRcXC13ZWJcXC1lbWJlZGRlZFxcLXBsYXllclxcLmFwcHNwb3RcXC5jb218eW91dHViZWtpZHNcXC5jb218dmV2b1xcLmNvbXxjaGF0XFwuZ29vZ2xlXFwuY29tfG1lZXRcXC5nb29nbGVcXC5jb218YXJ0c2FuZGN1bHR1cmVcXC5nb29nbGVcXC5jb20pWy5dPyg6WzAtOV0rKT8oL3wkKXwoW0EtWmEtejAtOS1dezEsNjN9XFwuKSooc2FuZGJveFxcLmdvb2dsZVxcLmNvbSkoOlswLTldKyk/KC8oPyF1cmxcXGIpfCQpfCh3d3dcXC58ZW5jcnlwdGVkXFwuKT9nb29nbGVcXC4oY2F0fGNvbShcXC4oYVtmZ2lydV18YltkaG5vcnpdfGNbb3V5XXxkb3xlW2NndF18Zmp8Z1toaXRdfGhrfGptfGtofGt3fGxbYmN5XXxtW210eHldfG5bYWZnaXBdfG9tfHBbYWVnaGtyeV18cWF8c1thYmdsdl18dFtqbnJ3XXx1YXx1eXx2Y3x2bikpP3xhW2NkZWxtc3R6XXxjW2FjZGZnaGlsbW52el18YlthZWZnaWpzdHldfGVlfGVzfGRbZWprbXpdfGdbYWVmZ2xtcHJ5XXxmW2ltcl18aVtlbW9xcnN0XXxoW25ydHVdfGtbZ2l6XXxqZXxqb3xtW2RlZ2tsbnN1dnddfGxbYWlrdHV2XXxuW2Vsb3J1XXxwW2xuc3RdfHNbY2VoaWttbm9ydF18cltvc3V3XXx1c3x0W2Rna2xtbm90XXx3c3x2Z3x2dXxjb1xcLihhb3xid3xja3xjcnxpW2Rsbl18anB8a2V8a3J8bHN8bWF8bXp8bnp8dGh8dHp8dVtna3pdfHZlfHZpfHpbYW13XSkpLyhzZWFyY2h8d2ViaHApXFw/fCh3d3dcXC58ZW5jcnlwdGVkXFwuKWdvb2dsZVxcLihjYXR8Y29tKFxcLihhW2ZnaXJ1XXxiW2Robm9yel18Y1tvdXldfGRvfGVbY2d0XXxmanxnW2hpdF18aGt8am18a2h8a3d8bFtiY3ldfG1bbXR4eV18blthZmdpcF18b218cFthZWdoa3J5XXxxYXxzW2FiZ2x2XXx0W2pucnddfHVhfHV5fHZjfHZuKSk/fGFbY2RlbG1zdHpdfGNbYWNkZmdoaWxtbnZ6XXxiW2FlZmdpanN0eV18ZWV8ZXN8ZFtlamttel18Z1thZWZnbG1wcnldfGZbaW1yXXxpW2Vtb3Fyc3RdfGhbbnJ0dV18a1tnaXpdfGplfGpvfG1bZGVna2xuc3V2d118bFthaWt0dXZdfG5bZWxvcnVdfHBbbG5zdF18c1tjZWhpa21ub3J0XXxyW29zdXddfHVzfHRbZGdrbG1ub3RdfHdzfHZnfHZ1fGNvXFwuKGFvfGJ3fGNrfGNyfGlbZGxuXXxqcHxrZXxrcnxsc3xtYXxtenxuenx0aHx0enx1W2drel18dmV8dml8elthbXddKSkvPyR8bGlnaHRib3gtKGRlbW9zfGJ1aWxkZXIpXFwuYXBwc3BvdFxcLmNvbS98czBcXC4ybWRuXFwubmV0L2luc3RyZWFtL2h0bWw1L25hdGl2ZS98c1swMV0ocWEpP1xcLjJtZG5cXC5uZXQvYWRzL3JpY2htZWRpYS9zdHVkaW8vbXUvdGVtcGxhdGVzL3RldHJpc3x3d3dcXC5nc3RhdGljXFwuY29tL2RvdWJsZWNsaWNrL3N0dWRpby9pbm5vdmF0aW9uL2g1L2xheW91dHMvdGV0cmlzKSIpLApWNGk9UmVnRXhwKCJeaHR0cHM/Oi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGN1cnJlbnRzXFwuZ29vZ2xlXFwuY29tKVsuXT8oOlswLTldKyk/KC98JCkiKSxjWlM9UmVnRXhwKCJeKGh0dHBzOi8vcGxheVxcLmdvb2dsZVxcLmNvbXxodHRwczovL3Bob3Rvc1xcLmdvb2dsZVxcLmNvbXxodHRwczovL2dldFxcLmdvb2dsZVxcLmNvbXxodHRwczovL21haWxcXC5nb29nbGVcXC5jb218aHR0cHM6Ly95dFxcLXdlYlxcLWVtYmVkZGVkXFwtcGxheWVyXFwuYXBwc3BvdFxcLmNvbXxodHRwOi8veXRcXC13ZWJcXC1lbWJlZGRlZFxcLXBsYXllclxcLmFwcHNwb3RcXC5jb218aHR0cHM6Ly9jaGF0XFwuZ29vZ2xlXFwuY29tfGh0dHBzOi8vb25lXFwuZ29vZ2xlXFwuY29tfGh0dHBzOi8vYXJ0c2FuZGN1bHR1cmVcXC5nb29nbGVcXC5jb218aHR0cHM6Ly9hZHN0cmFuc3BhcmVuY3lcXC5nb29nbGVcXC5jb218aHR0cHM6Ly9hZHNcXC5nb29nbGVcXC5jb218aHR0cHM6Ly9hZHdvcmRzXFwuY29ycFxcLmdvb2dsZVxcLmNvbXxodHRwczovL2Fkc1xcLWV4dGVybmFsXFwtcHJvZFxcLnFhXFwuYWR6XFwuZ29vZ2xlXFwuY29tfGh0dHBzOi8vYWRzXFwtcHJvZFxcLnFhXFwuYWR6XFwuZ29vZ2xlXFwuY29tfGh0dHBzOi8vYWR3b3Jkc1xcLWNhbmFyeVxcLnFhXFwuYWR6XFwuZ29vZ2xlXFwuY29tfGh0dHBzOi8vY2FuYXJ5XFwucWFcXC5hZHpcXC5nb29nbGVcXC5jb20pJHxeaHR0cDovL1swLTldK1xcLlthLXowLTlcXC1fXStcXC5bYS16MC05XFwtX10rXFwuW2EtejAtOVxcLV9dK1xcLihbYS16XXsyfXxpKVxcLmJvcmdcXC5nb29nbGVcXC5jb20oOlswLTldKyk/JHxeaHR0cHM6Ly8oKGF1dG9wdXNofGJldGEtbG9va3VwfGRhaWx5LVswLTZdfG1hbnVhbC1xdWFsfHByZXByb2R8c3RyZWFtKVxcLik/bWVldFxcLmdvb2dsZVxcLmNvbSR8Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGNyb3dkc291cmNlfGRhdGFjb21wdXRlKVxcLmdvb2dsZVxcLmNvbSR8Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikqKHlvdXR1YmV8eW91dHViZWtpZHN8eW91dHViZWVkdWNhdGlvbilcXC5jb20kfF5odHRwczovLyhbQS1aYS16MC05LV17MSw2M31cXC4pK2RlbW9zXFwuY29ycFxcLmdvb2dsZVxcLmNvbSR8Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikrc2FuZGJveFxcLmdvb2dsZVxcLmNvbSR8Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikrc3NscHJveHlcXC5jb3JwXFwuZ29vZ2xlXFwuY29tJHxeaHR0cHM6Ly8oYm9va3N8cGxheS1ib29rcy0oYXV0b3B1c2h8aW50ZXJuYWx8cHJlcHJvZHxzdGFnaW5nKSgtc2FuZGJveHxcXC5jb3JwKSlcXC5nb29nbGV1c2VyY29udGVudFxcLmNvbSR8Xmh0dHBzOi8vKGRyYWZ0fHd3d3wod3d3XFwuKT9kZXZcXC5zYW5kYm94fCh3d3dcXC4pP2F1dG9wdXNoXFwuc2FuZGJveHwod3d3XFwuKT9zdGFnaW5nXFwuc2FuZGJveHwod3d3XFwuKT9yZXN0b3JlXFwuc2FuZGJveClcXC5ibG9nZ2VyXFwuY29tJHxeaHR0cHM6Ly9bMC05YS1mXXsxLDYzfVxcLnByb3h5XFwuZ29vZ2xlcHJvZFxcLmNvbSR8Xmh0dHBzOi8vbG9jYWxob3N0XFwuZ29vZ2xldXNlcmNvbnRlbnRcXC5jb20oOlxcZCspPyR8Xmh0dHBzPzovLygoKGRvY3N8bXxzaW5nfHNzfHNzc3x3d3cpXFwuKT9kcml2ZVxcLmdvb2dsZVxcLmNvbSR8KFtBLVphLXowLTktXXsxLDYzfVxcLikqY1xcLmdvb2dsZXJzXFwuY29tKDpbMC05XSspPyR8KFtBLVphLXowLTktXXsxLDYzfVxcLikqY29ycFxcLmdvb2dsZVxcLmNvbSg6WzAtOV0rKT8kfChbQS1aYS16MC05LV17MSw2M31cXC4pKmdvb2dsZXBsZXhcXC5jb20oOlswLTldKyk/JHwoW0EtWmEtejAtOS1dezEsNjN9XFwuKSpwcm94eVxcLmdvb2dsZXJzXFwuY29tKDpbMC05XSspPyR8KHd3d1xcLnxlbmNyeXB0ZWRcXC4pZ29vZ2xlXFwuKGNhdHxjb20oXFwuKGFbZmdpcnVdfGJbZGhub3J6XXxjW291eV18ZG98ZVtjZ3RdfGZqfGdbaGl0XXxoa3xqbXxraHxrd3xsW2JjeV18bVttdHh5XXxuW2FmZ2lwXXxvbXxwW2FlZ2hrcnldfHFhfHNbYWJnbHZdfHRbam5yd118dWF8dXl8dmN8dm4pKT98YVtjZGVsbXN0el18Y1thY2RmZ2hpbG1udnpdfGJbYWVmZ2lqc3R5XXxlZXxlc3xkW2Vqa216XXxnW2FlZmdsbXByeV18ZltpbXJdfGlbZW1vcXJzdF18aFtucnR1XXxrW2dpel18amV8am98bVtkZWdrbG5zdXZ3XXxsW2Fpa3R1dl18bltlbG9ydV18cFtsbnN0XXxzW2NlaGlrbW5vcnRdfHJbb3N1d118dXN8dFtkZ2tsbW5vdF18d3N8dmd8dnV8Y29cXC4oYW98Ynd8Y2t8Y3J8aVtkbG5dfGpwfGtlfGtyfGxzfG1hfG16fG56fHRofHR6fHVbZ2t6XXx2ZXx2aXx6W2Ftd10pKS8/JHxbQS1aYS16MC05LV0rXFwucHJvZFxcLmdvb2dsZVxcLmNvbSg6WzAtOV0rKT8kfGRvY3NcXC5nb29nbGVcXC5jb20kKSIpLAphSFU9UmVnRXhwKCJeKGh0dHBzOi8vY3VycmVudHNcXC5nb29nbGVcXC5jb20pJCIpO3ZhciBkUD0hMTtnLndaPWNsYXNze2NvbnN0cnVjdG9yKG4sVz0hMSl7dGhpc1tJWzE3XV09bjt0aGlzW0lbOV1dPVc7dGhpc1tJWzM5XV09dGhpc1tJWzI4XV09dGhpc1tJWzI2XV09SVsyMV07dGhpc1tJWzFdXT17fTt0aGlzW0lbMjldXT1JWzIxXX1zZXQobixXKXt0aGlzW0lbMV1dW25dIT09VyYmKHRoaXNbSVsxXV1bbl09Vyx0aGlzW0lbMjldXT1JWzIxXSl9Z2V0KG4pe2VYKDE0LDcyMTMsdGhpcyk7cmV0dXJuIHRoaXNbSVsxXV1bbl18fG51bGx9V0QoKXt0aGlzW0lbMjldXXx8KHRoaXNbSVsyOV1dPUVjKDYsMjk5OCx0aGlzKSk7cmV0dXJuIHRoaXNbSVsyOV1dfWNsb25lKCl7dmFyIG49bmV3IGcud1oodGhpc1tJWzE3XV0sdGhpc1tJWzldXSk7bltJWzI2XV09dGhpc1tJWzI2XV07bltJWzI4XV09dGhpc1tJWzI4XV07bltJWzM5XV09dGhpc1tJWzM5XV07bltJWzFdXT1nLnMwKHRoaXNbSVsxXV0pO25bSVsyOV1dPXRoaXNbSVsyOV1dO3JldHVybiBufX07dmFyIEpaPXtGQUlSUExBWToiZmFpcnBsYXkiLFBMQVlSRUFEWToicGxheXJlYWR5IixXSURFVklORToid2lkZXZpbmUiLENMRUFSS0VZOm51bGwsRkxBU0hBQ0NFU1M6bnVsbCxVTktOT1dOOm51bGwsV0lERVZJTkVfQ0xBU1NJQzpudWxsfTt2YXIgd1A9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYj0hMSl7dGhpcy5uYW1lPW47dGhpcy5pZD1XO3RoaXMuaXNEZWZhdWx0PUQ7dGhpcy5pc0F1dG9EdWJiZWQ9Yn1nZXROYW1lKCl7cmV0dXJuIHRoaXMubmFtZX1nZXRJZCgpe3JldHVybiB0aGlzLmlkfWdldElzRGVmYXVsdCgpe3JldHVybiB0aGlzLmlzRGVmYXVsdH1nZXRJc0F1dG9EdWJiZWQoKXtyZXR1cm4gdGhpcy5pc0F1dG9EdWJiZWR9dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5uYW1lfX07d1AucHJvdG90eXBlLmdldE5hbWU9d1AucHJvdG90eXBlLmdldE5hbWU7d1AucHJvdG90eXBlLmdldElkPXdQLnByb3RvdHlwZS5nZXRJZDt3UC5wcm90b3R5cGUuZ2V0SXNEZWZhdWx0PXdQLnByb3RvdHlwZS5nZXRJc0RlZmF1bHQ7d1AucHJvdG90eXBlLmdldElzQXV0b0R1YmJlZD13UC5wcm90b3R5cGUuZ2V0SXNBdXRvRHViYmVkO2cuUXc9Y2xhc3N7Y29uc3RydWN0b3Iobj17fSl7dGhpcy5sYW5ndWFnZUNvZGU9bi5sYW5ndWFnZUNvZGV8fCIiO3RoaXMubGFuZ3VhZ2VOYW1lPW4ubGFuZ3VhZ2VOYW1lfHxudWxsO3RoaXMua2luZD1uLmtpbmR8fCIiO3RoaXMubmFtZT1uLm5hbWU9PT12b2lkIDA/bnVsbDpuLm5hbWU7dGhpcy5kaXNwbGF5TmFtZT1uLmRpc3BsYXlOYW1lfHxudWxsO3RoaXMuaWQ9bi5pZHx8bnVsbDt0aGlzLk49bi5pc19zZXJ2YWJsZXx8ITE7dGhpcy5pc1RyYW5zbGF0ZWFibGU9bi5pc190cmFuc2xhdGVhYmxlfHwhMTt0aGlzLnVybD1uLnVybHx8bnVsbDt0aGlzLnZzc0lkPW4udnNzX2lkfHwiIjt0aGlzLmlzRGVmYXVsdD1uLmlzX2RlZmF1bHR8fCExO3RoaXMudHJhbnNsYXRpb25MYW5ndWFnZT1uLnRyYW5zbGF0aW9uTGFuZ3VhZ2V8fG51bGw7dGhpcy54dGFncz1uLnh0YWdzfHwiIjt0aGlzLmNhcHRpb25JZD1uLmNhcHRpb25JZHx8IiJ9Z2V0SWQoKXtyZXR1cm4gdGhpcy5pZH1nZXROYW1lKCl7cmV0dXJuIHRoaXMubmFtZX1pc1NlcnZhYmxlKCl7cmV0dXJuIHRoaXMuTn1XRCgpe3JldHVybiB0aGlzLnVybH1nZXRYdGFncygpe3JldHVybiB0aGlzLnh0YWdzfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMubGFuZ3VhZ2VDb2RlKwoiOiAiK2cuY24odGhpcykrIiAtICIrdGhpcy52c3NJZCsiIC0gIisodGhpcy5jYXB0aW9uSWR8fCIiKX1lcXVhbHMobil7cmV0dXJuIG4/dGhpcy50b1N0cmluZygpPT09bi50b1N0cmluZygpOiExfU9WKCl7cmV0dXJuISghdGhpcy5sYW5ndWFnZUNvZGV8fHRoaXMudHJhbnNsYXRpb25MYW5ndWFnZSYmIXRoaXMudHJhbnNsYXRpb25MYW5ndWFnZS5sYW5ndWFnZUNvZGUpfX07dmFyIFdBPWNsYXNze2NvbnN0cnVjdG9yKG4sVyl7dGhpcy5pZD1uO3RoaXMua1o9Vzt0aGlzLmNhcHRpb25UcmFja3M9W107dGhpcy5XPXRoaXMuWD1udWxsO3RoaXMueHRhZ3M9IiI7dGhpcy5WPXRoaXMuaj0hMTt0aGlzLk49bnVsbDt0aGlzLko9IlVOS05PV04iO3RoaXMuY2FwdGlvbnNJbml0aWFsU3RhdGU9IkNBUFRJT05TX0lOSVRJQUxfU1RBVEVfVU5LTk9XTiI7bj10aGlzLmtaLmlkLnNwbGl0KCIuIik7bi5sZW5ndGg+MSYmKHRoaXMuaj1uWzFdPT09IjIiLHRoaXMuVj1uWzFdPT09IjQiKX1nZXRMYW5ndWFnZUluZm8oKXtyZXR1cm4gdGhpcy5rWn1nZXRYdGFncygpe2lmKCF0aGlzLnh0YWdzKXtsZXQgbj10aGlzLmlkLnNwbGl0KCI7Iik7bi5sZW5ndGg+MSYmKHRoaXMueHRhZ3M9blsxXSl9cmV0dXJuIHRoaXMueHRhZ3N9dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5rWi5uYW1lfWlzQXV0b0R1YmJlZCgpe3JldHVybiB0aGlzLmtaLmdldElzQXV0b0R1YmJlZCgpfX07CldBLnByb3RvdHlwZS5nZXRMYW5ndWFnZUluZm89V0EucHJvdG90eXBlLmdldExhbmd1YWdlSW5mbztXQS5wcm90b3R5cGUuaXNBdXRvRHViYmVkPVdBLnByb3RvdHlwZS5pc0F1dG9EdWJiZWQ7dmFyIGIzPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxELGIsdj0wKXt0aGlzLko9bjt0aGlzLk49Vzt0aGlzLlc9RDt0aGlzLnJlYXNvbj1iO3RoaXMuTnM9dn1lcXVhbHMobil7cmV0dXJuIHRoaXMuSj09PW4uSiYmdGhpcy5OPT09bi5OJiZ0aGlzLlc9PT1uLlcmJnRoaXMucmVhc29uPT09bi5yZWFzb24mJighaFR8fHRoaXMuTnM9PT1uLk5zKX1pc0xvY2tlZCgpe3JldHVybiB0aGlzLlcmJiEhdGhpcy5KJiZ0aGlzLko9PT10aGlzLk59Y29tcG9zZShuKXtpZihuLlcmJnhKKG4pKXJldHVybiBZWjtpZihuLld8fHhKKHRoaXMpKXJldHVybiBuO2lmKHRoaXMuV3x8eEoobikpcmV0dXJuIHRoaXM7dmFyIFc9dGhpcy5KJiZuLko/TWF0aC5tYXgodGhpcy5KLG4uSik6dGhpcy5KfHxuLkosRD10aGlzLk4mJm4uTj9NYXRoLm1pbih0aGlzLk4sbi5OKTp0aGlzLk58fG4uTjtXPU1hdGgubWluKFcsRCk7dmFyIGI9MDtoVCYmKGI9dGhpcy5OcyE9PTAmJm4uTnMhPT0wP01hdGgubWluKHRoaXMuTnMsCm4uTnMpOnRoaXMuTnM9PT0wP24uTnM6dGhpcy5Ocyk7cmV0dXJuIGhUJiZXPT09dGhpcy5KJiZEPT09dGhpcy5OJiZiPT09dGhpcy5Oc3x8IWhUJiZXPT09dGhpcy5KJiZEPT09dGhpcy5OP3RoaXM6aFQ/bmV3IGIzKFcsRCwhMSxEPT09dGhpcy5OJiZiPT09dGhpcy5Ocz90aGlzLnJlYXNvbjpuLnJlYXNvbixiKTpuZXcgYjMoVyxELCExLEQ9PT10aGlzLk4/dGhpcy5yZWFzb246bi5yZWFzb24pfVgobil7cmV0dXJuIW4udmlkZW98fGhUJiZ0aGlzLk5zIT09MCYmdGhpcy5OczxuLk5zPyExOmdGKHRoaXMsbi52aWRlby5xdWFsaXR5KX19LG5oVT12QSgiYXV0byIsImhkMTA4MCIsITEsImwiKSxUOD12QSgiYXV0byIsImxhcmdlIiwhMSwibCIpLFlaPXZBKCJhdXRvIiwiYXV0byIsITEsInAiKSxoVD0hMTt2YXIgcGc9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYil7dGhpcy52aWRlb0luZm9zPW47dGhpcy5KPVc7dGhpcy5hdWRpb1RyYWNrcz1bXTt0aGlzLlc9Ynx8W107aWYodGhpcy5KKXtuPW5ldyBTZXQ7RD8uKHthaW5mb2xlbjp0aGlzLkoubGVuZ3RofSk7Zm9yKGxldCB2IG9mIHRoaXMuSil7aWYoIXYua1p8fG4uaGFzKHYua1ouaWQpKXtEPy4oe2F0a2VycjohIXYua1osaXRhZzp2Lml0YWcseHRhZzp2LkosbGFuZzp2LmtaPy5uYW1lfHwiIixsYW5naWQ6di5rWj8uaWR8fCIifSk7Y29udGludWV9Vz1uZXcgV0Eodi5pZCx2LmtaKTtuLmFkZCh2LmtaLmlkKTt0aGlzLmF1ZGlvVHJhY2tzLnB1c2goVyl9RD8uKHthdGtsZW46dGhpcy5hdWRpb1RyYWNrcy5sZW5ndGh9KX19Y1kobil7bj1ufHxZWjt2YXIgVz1nLkVNKHRoaXMudmlkZW9JbmZvcyx2PT5uLlgodikpLEQ9W10sYj17fTsKZm9yKGxldCB2PTA7djxXLmxlbmd0aDt2Kyspe2xldCBrPVdbdl0udmlkZW87YltrLnF1YWxpdHldfHwoRC5wdXNoKGspLGJbay5xdWFsaXR5XT0hMCl9cmV0dXJuIER9TnEobil7bj1ufHxZWjtyZXR1cm4gZy5FTSh0aGlzLnZpZGVvSW5mb3MsVz0+bi5YKFcpKX1nZXRBdmFpbGFibGVBdWRpb1RyYWNrcygpe3JldHVybiB0aGlzLmF1ZGlvVHJhY2tzfU4oKXtyZXR1cm4hIXRoaXMuSn19O3ZhciBBSFM9bmV3IFNldChbIjM1NiIsIjcyMSJdKSxXVnI9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKTt0aGlzLko9bnVsbDt0aGlzLk49bmV3IE1hcH1tQSgpe3N1cGVyLm1BKCl9fTt2YXIgUjQ9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYix2LGssaCx4LEwsZSl7dGhpcy5qJD1uO3RoaXMuc3RhcnRUaW1lPVc7dGhpcy5kdXJhdGlvbj1EO3RoaXMuaW5nZXN0aW9uVGltZT1iO3RoaXMuc291cmNlVVJMPXY7dGhpcy5mZj1MO3RoaXMuUU89ZTt0aGlzLmVuZFRpbWU9VytEO3RoaXMuTj1ofHwwO3RoaXMucmFuZ2U9a3x8bnVsbDt0aGlzLnBlbmRpbmc9eHx8ITE7dGhpcy5mZj1MfHxudWxsfX07Zy5qYz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuc2VnbWVudHM9W107dGhpcy5KPW51bGw7dGhpcy5ZPSEwO3RoaXMuSz0iIn1qKG4pe3RoaXMuc2VnbWVudHMucHVzaChuKX1NSShuKXtyZXR1cm4hIXRoaXMuVyhuKX1nZXREdXJhdGlvbihuKXtyZXR1cm4obj10aGlzLlcobikpP24uZHVyYXRpb246MH1EKG4pe3JldHVybiB0aGlzLmdldER1cmF0aW9uKG4pfVVjKCl7cmV0dXJuIDB9Wk8oKXtyZXR1cm4gdGhpcy5zZWdtZW50cy5sZW5ndGg/dGhpcy5zZWdtZW50c1swXS5qJDotMX1oQyhuKXtyZXR1cm4obj10aGlzLlcobikpP24uaW5nZXN0aW9uVGltZTpOYU59eCQoKXtyZXR1cm4gdGhpcy5zZWdtZW50cy5sZW5ndGg/dGhpcy5zZWdtZW50c1t0aGlzLnNlZ21lbnRzLmxlbmd0aC0xXS5qJDotMX1xZShuKXtyZXR1cm4gdGhpcy54JCgpPT09biYmIXRoaXMuWSYmbj49MH1iUSgpe3ZhciBuPXRoaXMuc2VnbWVudHNbdGhpcy5zZWdtZW50cy5sZW5ndGgtMV07cmV0dXJuIG4/bi5lbmRUaW1lOgpOYU59TGYoKXtyZXR1cm4gdGhpcy5zZWdtZW50c1swXS5zdGFydFRpbWV9SDcoKXtyZXR1cm4gdGhpcy5zZWdtZW50cy5sZW5ndGh9Tigpe3JldHVybiAwfVIzKG4pe3JldHVybihuPXRoaXMuWChuKSk/bi5qJDotMX1WKG4pe3JldHVybihuPXRoaXMuVyhuKSk/bi5zb3VyY2VVUkw6IiJ9Z2V0U3RhcnRUaW1lKG4pe3JldHVybihuPXRoaXMuVyhuKSk/bi5zdGFydFRpbWU6MH1qRShuKXtyZXR1cm4gdGhpcy5nZXRTdGFydFRpbWUobikrdGhpcy5nZXREdXJhdGlvbihuKX1pc0xvYWRlZCgpe3JldHVybiB0aGlzLnNlZ21lbnRzLmxlbmd0aD4wfVcobil7aWYodGhpcy5KJiZ0aGlzLkouaiQ9PT1uKXJldHVybiB0aGlzLko7bj1nLlc0KHRoaXMuc2VnbWVudHMsbmV3IFI0KG4sMCwwLDAsIiIpLChXLEQpPT5XLmokLUQuaiQpOwpyZXR1cm4gdGhpcy5KPW4+PTA/dGhpcy5zZWdtZW50c1tuXTpudWxsfVgobil7aWYodGhpcy5KJiZ0aGlzLkouc3RhcnRUaW1lPD1uJiZuPHRoaXMuSi5zdGFydFRpbWUrdGhpcy5KLmR1cmF0aW9uKXJldHVybiB0aGlzLko7bj1nLlc0KHRoaXMuc2VnbWVudHMse3N0YXJ0VGltZTpufSwoVyxEKT0+Vy5zdGFydFRpbWUtRC5zdGFydFRpbWUpOwpyZXR1cm4gdGhpcy5KPW4+PTA/dGhpcy5zZWdtZW50c1tuXTp0aGlzLnNlZ21lbnRzW01hdGgubWF4KDAsLW4tMildfWFwcGVuZChuKXtpZihuLmxlbmd0aClpZihuPWcuUk0obiksdGhpcy5zZWdtZW50cy5sZW5ndGgpe3ZhciBXPXRoaXMuc2VnbWVudHMubGVuZ3RoP2cuVU0odGhpcy5zZWdtZW50cykuZW5kVGltZTowLEQ9blswXS5qJC10aGlzLngkKCk7RD4xJiZnLkNiKHRoaXMuc2VnbWVudHMpO0Q9RD4wPzA6LUQrMTtmb3IobGV0IGI9RDtiPG4ubGVuZ3RoO2IrKylEPW5bYl0sRC5zdGFydFRpbWU9VyxELmVuZFRpbWU9RC5zdGFydFRpbWUrRC5kdXJhdGlvbixXKz1uW2JdLmR1cmF0aW9uLHRoaXMuc2VnbWVudHMucHVzaChuW2JdKX1lbHNlIHRoaXMuc2VnbWVudHM9bn1YZCgpe3JldHVybiAwfXR3KG4sVyl7dGhpcy5ZPW47dGhpcy5LPVd9fTtnLmpjLnByb3RvdHlwZS5VNz1XWigzKTt2YXIgRF89Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYix2PSExKXt0aGlzLmRhdGE9bjt0aGlzLm9mZnNldD1XO3RoaXMuc2l6ZT1EO3RoaXMudHlwZT1iO3RoaXMuTj0odGhpcy5KPXYpPzA6ODt0aGlzLmRhdGFPZmZzZXQ9dGhpcy5vZmZzZXQrdGhpcy5OfXNraXAobil7dGhpcy5OKz1ufX07dmFyIE9LdD1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLm9mZnNldD0wO3RoaXMuZGF0YT1uZXcgRGF0YVZpZXcobmV3IEFycmF5QnVmZmVyKG4pKX19O3ZhciBEVmk7Zy5sMz1jbGFzc3tjb25zdHJ1Y3RvcihuLFcsRCxiLHYsayxoKXt0aGlzLnN0YXJ0U2Vjcz1uO3RoaXMuQ2Y9Vzt0aGlzLmNvbnRleHQ9RDt0aGlzLmlkZW50aWZpZXI9Yjt0aGlzLmV2ZW50PXY7dGhpcy5OPWs7dGhpcy50aWxlQ29udGV4dD1ofX07RFZpPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxEKXt0aGlzLlBCPW47dGhpcy5vcHBvcnR1bml0eUlkPVc7dGhpcy5zZXJpYWxpemVkUHJlZmV0Y2hDb250ZXh0PUR9fTt2YXIgYk5VPXtwcmVkaWN0U3RhcnQ6InByZWRpY3RTdGFydCIsc3RhcnQ6InN0YXJ0IixbImNvbnRpbnVlIl06ImNvbnRpbnVlIixzdG9wOiJzdG9wIixwcmVmZXRjaDoicHJlZmV0Y2gifSxtNWo9e0VWRU5UX1BSRURJQ1RfU1RBUlQ6InByZWRpY3RTdGFydCIsRVZFTlRfU1RBUlQ6InN0YXJ0IixFVkVOVF9DT05USU5VRToiY29udGludWUiLEVWRU5UX1NUT1A6InN0b3AiLEVWRU5UX1BSRUZFVENIOiJwcmVmZXRjaCJ9O3ZhciBYNT1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuZGF0YT1uO3RoaXMudXJpPVd8fCJodHRwOi8veW91dHViZS5jb20vc3RyZWFtaW5nL21ldGFkYXRhL3NlZ21lbnQvMTAyMDE1Ijt0aGlzLnNlZ21lbnROdW1iZXI9el8odGhpcywiU2VxdWVuY2UtTnVtYmVyIik7dGhpcy5qPXpfKHRoaXMsIlNlZ21lbnQtQ291bnQiKTt0aGlzLks9dGhpcy5kYXRhWyJTZWdtZW50LUR1cmF0aW9ucy1NcyJdfHwiIjt0aGlzLmluZ2VzdGlvblRpbWU9el8odGhpcywiSW5nZXN0aW9uLVdhbGx0aW1lLVVzIikvMUU2O3RoaXMuVz0oel8odGhpcywiRmlyc3QtRnJhbWUtVGltZS1VcyIpK3pfKHRoaXMsIkZpcnN0LUZyYW1lLVVuY2VydGFpbnR5LVVzIikpLzFFNjt0aGlzLnJiPXpfKHRoaXMsIlRhcmdldC1EdXJhdGlvbi1VcyIpLzFFNjt0aGlzLlY9dGhpcy5kYXRhWyJTdHJlYW0tRmluaXNoZWQiXT09PSJUIjt0aGlzLmlzU3RyZWFtaW5nPXRoaXMuZGF0YS5TdHJlYW1hYmxlPT09IlQiO3RoaXMuY3J5cHRvUGVyaW9kSW5kZXg9CnpfKHRoaXMsIkNyeXB0by1QZXJpb2QtSW5kZXgiKTt0aGlzLlg9el8odGhpcywiQ3J5cHRvLVBlcmlvZC1TZWNvbmRzIik7dGhpcy5OPSJDdXJyZW50LUFic29sdXRlLUxvdWRuZXNzLUxrZnMiaW4gdGhpcy5kYXRhP051bWJlcih0aGlzLmRhdGFbIkN1cnJlbnQtQWJzb2x1dGUtTG91ZG5lc3MtTGtmcyJdKXx8MDpudWxsfUooKXtyZXR1cm4gdGhpcy5kYXRhWyJTdGl0Y2hlZC1WaWRlby1DcG4iXT90aGlzLmRhdGFbIlN0aXRjaGVkLVZpZGVvLUNwbiJdLnNwbGl0KCIsIikuc2xpY2UoMCwtMSk6W119ZksoKXtyZXR1cm4hISh0aGlzLmRhdGFbIlN0aXRjaGVkLVZpZGVvLUlkIl18fHRoaXMuZGF0YVsiU3RpdGNoZWQtVmlkZW8tQ3BuIl18fHRoaXMuZGF0YVsiU3RpdGNoZWQtVmlkZW8tRHVyYXRpb24tVXMiXXx8dGhpcy5kYXRhWyJTdGl0Y2hlZC1WaWRlby1TdGFydC1GcmFtZS1JbmRleCJdfHx0aGlzLmRhdGFbIlN0aXRjaGVkLVZpZGVvLUFic29sdXRlLUxvdWRuZXNzLUxrZnMiXXx8CnRoaXMuZGF0YVsiU2VyaWFsaXplZC1TdGF0ZSJdfHx0aGlzLmRhdGFbIklzLUFkLUJyZWFrLUZpbmlzaGVkIl0pfX07dmFyIFJlaD1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuTj1uO3RoaXMuZHVyYXRpb249V319O3ZhciAkOHg9e1NURVJFT19MQVlPVVRfVU5LTk9XTjowLFNURVJFT19MQVlPVVRfTEVGVF9SSUdIVDoxLFNURVJFT19MQVlPVVRfVE9QX0JPVFRPTToyfTt2YXIgaFk9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYix2KXt0aGlzLko9djt0aGlzLk49bnx8MDt0aGlzLnBpdGNoPVd8fDA7dGhpcy55YXc9RHx8MDt0aGlzLnJvbGw9Ynx8MDt2LmdldFVpbnQzMig0KX19O3ZhciB0WT1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuTj1uO3RoaXMucG9zPTA7dGhpcy5zdGFydD1XfHwwfU9KKCl7dmFyIG49dGhpcy5wb3M7dGhpcy5wb3M9MDt2YXIgVz0hMTt0cnl7c1kodGhpcyw0NDA3ODY4NTEpJiYodGhpcy5wb3M9MCxzWSh0aGlzLDQwODEyNTU0MykmJihXPSEwKSl9Y2F0Y2goRCl7aWYoRCBpbnN0YW5jZW9mIFJhbmdlRXJyb3IpdGhpcy5wb3M9MCxXPSExLGcuR3EoRCk7ZWxzZSB0aHJvdyBEO310aGlzLnBvcz1uO3JldHVybiBXfX07dmFyIENzPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuQU89bjt0aGlzLk49e307dGhpcy51cmw9IiJ9c2V0KG4sVyl7dGhpcy5BTy5nZXQobik7dGhpcy5OW25dPVc7dGhpcy51cmw9IiJ9Z2V0KG4pe3JldHVybiB0aGlzLk5bbl18fHRoaXMuQU8uZ2V0KG4pfVdEKCl7dGhpcy51cmx8fCh0aGlzLnVybD1pS1UodGhpcykpO3JldHVybiB0aGlzLnVybH19O3ZhciB1VGk9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLko9dGhpcy5YPXRoaXMuVz10aGlzLk49dGhpcy50aW1lZE91dD10aGlzLnN0YXJ0ZWQ9dGhpcy5WPXRoaXMuaj0wfX07dmFyIHZUPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuTz10aGlzLkQ9dGhpcy5WPXRoaXMuSj0wO3RoaXMuaj10aGlzLks9ITE7dGhpcy5OPW47dGhpcy5XPW4uY2xvbmUoKX1wUyhuLFcpe3JldHVybiBuLllaP3RoaXMuaj90aGlzLks9ITA6dGhpcy5LPWpQKHRoaXMsbixXKTpqUCh0aGlzLG4sVyl9WShuLFcsRD0wKXtEPjE/bj1uLk1jOihXPVVZKFcsRjUodGhpcyx0aGlzLnBTKG4sVyksbikpLG49TWF0aC5tYXgodGhpcy5WLFcudGltZWRPdXQpK24uVFoqKHRoaXMuSi10aGlzLlYpKy4yNSp0aGlzLkQsbj1uPjM/MUUzKjEuNioqKG4tMyk6MCk7cmV0dXJuIG49PT0wPyEwOnRoaXMuTytuPCgwLGcuUikoKX1jSihuLFcpe3RoaXMuTi5zZXQobixXKTt0aGlzLlcuc2V0KG4sVyk7dGhpcy5YJiZ0aGlzLlguc2V0KG4sVyl9V04oKXtyZXR1cm4gdGhpcy5XLmdldCgiY3BuIil8fCIifVo1KG4sVyl7bi5BTz09PXRoaXMuTiYmKHRoaXMuTj1uWChuLFcpKTtuLkFPPT09dGhpcy5YJiYodGhpcy5YPQpuWChuLFcpKX10dygpe3RoaXMuaj0hMH1yMCgpe3JldHVybiB0aGlzLk4hPT10aGlzLlgmJiF0aGlzLkt9fTt2YXIgQ2o9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYil7dGhpcy5pbml0UmFuZ2U9RDt0aGlzLmluZGV4UmFuZ2U9Yjt0aGlzLko9bnVsbDt0aGlzLmNKPSExO3RoaXMuRkY9MDt0aGlzLlY9dGhpcy5TVT10aGlzLk89bnVsbDt0aGlzLmluZm89Vzt0aGlzLlhiPW5ldyB2VChuKX1OKCl7cmV0dXJuISF0aGlzLkomJnRoaXMuaW5kZXguaXNMb2FkZWQoKX1TJCgpe3JldHVybiExfUdDKG4pe3JldHVybltuXX1WUShuKXtyZXR1cm5bbl19fTt2YXIgYUI9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLnN0YXJ0PW47dGhpcy5lbmQ9Vzt0aGlzLmxlbmd0aD1XLW4rMX10b1N0cmluZygpe3JldHVybiB0aGlzLnN0YXJ0KyItIisodGhpcy5lbmQ9PW51bGw/IiI6dGhpcy5lbmQpfU4oKXtyZXR1cm4gdGhpcy5lbmQ9PW51bGw/e3N0YXJ0OlN0cmluZyh0aGlzLnN0YXJ0KX06e3N0YXJ0OlN0cmluZyh0aGlzLnN0YXJ0KSxlbmQ6U3RyaW5nKHRoaXMuZW5kKX19fTt2YXIgcUk9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYj0iIix2LGssaCx4LEwsZSxHLHI9IiIsTixILEEpe3RoaXMudHlwZT1uO3RoaXMuUEo9Vzt0aGlzLnJhbmdlPUQ7dGhpcy5zb3VyY2U9Yjt0aGlzLnZEPUc7dGhpcy5jbGlwSWQ9cjt0aGlzLkQ9Tjt0aGlzLmJkPUg7dGhpcy5yZXF1ZXN0VG9rZW49QTt0aGlzLk89W107dGhpcy5ZPSIiO3RoaXMuaiQ9LTE7dGhpcy50dz0wO3RoaXMuWT1iO3RoaXMuaiQ9dj49MD92Oi0xO3RoaXMuc2VnbWVudFN0YXJ0VGltZT1rfHwwO3RoaXMuVz1ofHwwO3RoaXMuTj14fHwwO3RoaXMuSj1MPj0wP0w6dGhpcy5yYW5nZT90aGlzLnJhbmdlLmxlbmd0aDpOYU47dGhpcy5yYW5nZT8obj10aGlzLk4rdGhpcy5KPT09dGhpcy5yYW5nZS5sZW5ndGgsZT10aGlzLnNvdXJjZT09PSJ3YXNtIj9lPz9uOm4pOmU9ZT09PXZvaWQgMD8hIXRoaXMuSjplO3RoaXMuYVo9ZTt0aGlzLnJhbmdlPyh0aGlzLlg9dGhpcy5zZWdtZW50U3RhcnRUaW1lK3RoaXMuVyoKdGhpcy5OL3RoaXMucmFuZ2UubGVuZ3RoLHRoaXMuSz10aGlzLlcqdGhpcy5KL3RoaXMucmFuZ2UubGVuZ3RoLHRoaXMuaj10aGlzLlgrdGhpcy5LKTp2Xyh0aGlzKX1WKCl7cmV0dXJuIHRoaXMuYVomJnRoaXMuUEouaW5kZXgucWUodGhpcy5qJCl9a2Yobil7cmV0dXJuIG4+PXRoaXMuWCYmbjw9dGhpcy5qfWlzRW5jcnlwdGVkKCl7cmV0dXJuIHRoaXMuUEouaW5mby5pc0VuY3J5cHRlZCgpfWVxdWFscyhuKXtyZXR1cm4hKCFufHxuLlBKIT09dGhpcy5QSnx8bi50eXBlIT09dGhpcy50eXBlfHwodGhpcy5yYW5nZSYmbi5yYW5nZT9uLnJhbmdlLnN0YXJ0IT09dGhpcy5yYW5nZS5zdGFydHx8bi5yYW5nZS5lbmQhPT10aGlzLnJhbmdlLmVuZDpuLnJhbmdlIT09dGhpcy5yYW5nZSl8fG4uaiQhPT10aGlzLmokfHxuLk4hPT10aGlzLk58fG4uSiE9PXRoaXMuSil9Y0ooKXtyZXR1cm4gdGhpcy50eXBlPT09NH1mWSgpe3JldHVybiEhdGhpcy5QSi5pbmZvLnZpZGVvfVRDKCl7cmV0dXJuIHRoaXMuaiR9Z2EoKXt2YXIgbj0KWHgodGhpcyksVz0iIjtnLmFfKG4sKEQsYik9PntXKz1gJHtifV8ke0R9X2B9KTsKcmV0dXJuIFcuc2xpY2UoMCwtMSl9Y2xvbmUoKXt2YXIgbj1uZXcgcUkodGhpcy50eXBlLHRoaXMuUEosdGhpcy5yYW5nZSx0aGlzLnNvdXJjZSx0aGlzLmokLHRoaXMuc2VnbWVudFN0YXJ0VGltZSx0aGlzLlcsdGhpcy5OLHRoaXMuSix0aGlzLmFaLHRoaXMudkQsdGhpcy5jbGlwSWQsdGhpcy5ELHRoaXMuYmQsdGhpcy5yZXF1ZXN0VG9rZW4pO24uWT10aGlzLlk7dGhpcy5PLmxlbmd0aD4wJiYobi5PPVsuLi50aGlzLk9dKTtuLlg9dGhpcy5YO24uSz10aGlzLks7bi5qPXRoaXMuajtuLnR3PXRoaXMudHc7cmV0dXJuIG59fTt2YXIgd2s9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLkF3PW47dGhpcy5YPXRoaXMuTj1udWxsO3RoaXMuaj10aGlzLlpBPU5hTjt0aGlzLnBTPXRoaXMucmVxdWVzdElkPW51bGw7dGhpcy5YYj1uWzBdLlBKLlhiO3RoaXMuSj1XfHwiIjtpZih0aGlzLkF3WzBdLnJhbmdlJiZ0aGlzLkF3WzBdLko+MCl7YTp7Zm9yKFc9MTtXPG4ubGVuZ3RoO1crKylpZighYlQobltXLTFdLG5bV10pKXtXPSExO2JyZWFrIGF9Vz0hMH1pZihXKXRoaXMucmFuZ2U9ZDV3KG4pLHRoaXMuVz10aGlzLnJhbmdlLmxlbmd0aDtlbHNle3RoaXMucmFuZ2U9dGhpcy5Bd1t0aGlzLkF3Lmxlbmd0aC0xXS5yYW5nZTtXPTA7Zm9yKGxldCBEIG9mIG4pVys9RC5yYW5nZS5sZW5ndGg7dGhpcy5XPVd9fX1ZbCgpe3JldHVybiB0aGlzLk4/dGhpcy5OLldEKCk6IiJ9aXNEZWNvcmF0ZWQoKXtyZXR1cm4hISh0aGlzLk58fHRoaXMuWCYmdGhpcy5YLk15KX1Rbigpe3JldHVybiBoSih0aGlzLkF3WzBdKX1rZihuKXtmb3IobGV0IFcgb2YgdGhpcy5BdylpZihXLnR5cGU9PT0KMyYmVy5rZihuKSlyZXR1cm4hMDtyZXR1cm4hMX1aNShuLFcpe3RoaXMuWGIuWjUobixXKTtpZih0aGlzLk4pe3RoaXMuTj1uWChuLFcpO2ZvcihsZXQgRCBvZlsiYWNwbnMiLCJjcG4iLCJkYWlzdGF0ZSIsInNraXBzcSJdKXRoaXMuTlsic2V0Il0oRCxudWxsKX10aGlzLnJlcXVlc3RJZD1uLmdldCgicmVxX2lkIil9fTt2YXIgZHQ9Y2xhc3MgZXh0ZW5kcyBDantjb25zdHJ1Y3RvcihuLFcsRCxiLHYsaz0wKXtzdXBlcihuLFcsYik7dGhpcy52Sj1EO3RoaXMucmI9azt0aGlzLmluZGV4PXZ8fG5ldyBnLmpjfVcoKXtyZXR1cm4hMX1EKCl7cmV0dXJuITB9VEMoKXtyZXR1cm4hMX1TJCgpe3JldHVybiF0aGlzLnZKfVkoKXtyZXR1cm4gbmV3IHdrKFtuZXcgcUkoMSx0aGlzLHRoaXMuaW5pdFJhbmdlLCJnZXRNZXRhZGF0YVJlcXVlc3RJbmZvIildLHRoaXMudkopfWJkKCl7cmV0dXJuIG51bGx9ZSQobil7dGhpcy5YKG4pO3JldHVybiB0aGlzLkQoKSYmbi5KJiYhbi5hWj9uZXcgd2soW25ldyBxSShuLnR5cGUsbi5QSixuLnJhbmdlLCJsaXZlR2V0TmV4dFJlcXVlc3RJbmZvQnlTZWdtZW50IixuLmokLG4uc2VnbWVudFN0YXJ0VGltZSxuLlcsbi5OK24uSixOYU4sITApXSx0aGlzLmluZGV4LlYobi5qJCkpOnRoaXMuaihnayhuKSwhMSl9SyhuLFc9ITEpe249dGhpcy5pbmRleC5SMyhuKTtXJiYobj1NYXRoLm1pbih0aGlzLmluZGV4LngkKCksCm4rMSkpO3JldHVybiB0aGlzLmoobiwhMCl9RHQobil7RE8obil9WChuKXtyZXR1cm4gbi5KPT09MD8hMDp0aGlzLmluZGV4LngkKCk+bi5qJCYmdGhpcy5pbmRleC5aTygpPD1uLmokKzF9dXBkYXRlKG4sVyxEKXt0aGlzLmluZGV4LmFwcGVuZChuKTtQQSh0aGlzLmluZGV4LEQpO3RoaXMudHcoVywidXBkYXRlIil9Tigpe3JldHVybiB0aGlzLlMkKCk/ITA6c3VwZXIuTigpfWoobixXKXt2YXIgRD10aGlzLmluZGV4LlYobiksYj10aGlzLmluZGV4LmdldFN0YXJ0VGltZShuKSx2PXRoaXMuaW5kZXguZ2V0RHVyYXRpb24obiksaztXP3Y9az0wOms9dGhpcy5pbmZvLk5zPjA/dGhpcy5pbmZvLk5zKnY6MUUzO3JldHVybiBuZXcgd2soW25ldyBxSSgzLHRoaXMsdm9pZCAwLCJsaXZlQ3JlYXRlUmVxdWVzdEluZm9Gb3JTZWdtZW50IixuLGIsdiwwLGssIVcpXSxEKX1ISigpe3JldHVybiB0aGlzLlMkKCk/MDp0aGlzLmluaXRSYW5nZS5sZW5ndGh9bnUoKXtyZXR1cm4hMX10dyhuLFcpe3RoaXMuaW5kZXgudHcobiwKVyl9fTt2YXIgdmhiPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxELGIsdil7dGhpcy5qJD1uO3RoaXMuc3RhcnRTZWNzPVc7dGhpcy5DZj1EO3RoaXMuTj1ifHxOYU47dGhpcy5KPXZ8fE5hTn19O3ZhciBCXz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuTj1bXTt0aGlzLko9bnVsbDt0aGlzLlY9MDt0aGlzLlc9W107dGhpcy5qPSExO3RoaXMuSz0iIjt0aGlzLlg9LTF9dXBkYXRlKG4pe3ZhciBXPXZvaWQgMDt0aGlzLkomJihXPXRoaXMuSik7e2xldCBBPW5ldyBCXzt2YXIgRD1BcnJheS5mcm9tKG4uZ2V0RWxlbWVudHNCeVRhZ05hbWUoIlMiKSk7aWYoRC5sZW5ndGgpe3ZhciBiPStsVChuLCJ0aW1lc2NhbGUiKXx8MSx2PSgrRFswXS5nZXRBdHRyaWJ1dGUoInQiKXx8MCkvYixrPStsVChuLCJzdGFydE51bWJlciIpfHwwO0EuWD12O3ZhciBoPVc/Vy5zdGFydFNlY3MrVy5DZjowLHg9RGF0ZS5wYXJzZShDeihsVChuLCJ5dDpzZWdtZW50SW5nZXN0VGltZSIpKSkvMUUzO0Euaj1uLnBhcmVudEVsZW1lbnQudGFnTmFtZT09PSJTZWdtZW50VGVtcGxhdGUiO0EuaiYmKEEuSz1sVChuLCJtZWRpYSIpKTtuPVc/ay1XLmokOjE7QS5WPW4+MD8wOi1uKzE7Zm9yKEggb2YgRCl7bj0rSC5nZXRBdHRyaWJ1dGUoImQiKS8KYjtEPSgrSC5nZXRBdHRyaWJ1dGUoInl0OnNpZCIpfHwwKS9iO2xldCB5PStILmdldEF0dHJpYnV0ZSgiciIpfHwwO2ZvcihsZXQgVD0wO1Q8PXk7VCsrKXtpZihXJiZrPD1XLmokKXtrKys7Y29udGludWV9dmFyIEw9bmV3IHZoYihrLGgsbix4K0Qsdik7QS5OLnB1c2goTCk7Yjp7dmFyIGU9SDt2YXIgRz1iLHI9TC5zdGFydFNlY3M7TD1lLmdldEF0dHJpYnV0ZSgieXQ6Y3VlcG9pbnRUaW1lT2Zmc2V0Iik7dmFyIE49ZS5nZXRBdHRyaWJ1dGUoInl0OmN1ZXBvaW50RHVyYXRpb24iKTtpZighTHx8IU4pe2U9bnVsbDticmVhayBifUw9TnVtYmVyKEwpO3I9LUwvRytyO0c9TnVtYmVyKE4pL0c7Tj1lLmdldEF0dHJpYnV0ZSgieXQ6Y3VlcG9pbnRDb250ZXh0Iil8fG51bGw7bGV0IHo9ZS5nZXRBdHRyaWJ1dGUoInl0OmN1ZXBvaW50SWRlbnRpZmllciIpfHwiIjtlPWUuZ2V0QXR0cmlidXRlKCJ5dDpjdWVwb2ludEV2ZW50Iil8fCIiO2U9bmV3IGcubDMocixHLE4seixiTlVbZV18fCJ1bmtub3duIiwKTCl9ZSYmQS5XLnB1c2goZSk7aysrO2grPW47dis9bjt4Kz1uK0R9fUEuTi5sZW5ndGgmJihBLko9Zy5VTShBLk4pKX12YXIgSD1BfXRoaXMuVj1ILlY7dGhpcy5KPUguSnx8dGhpcy5KO2cuUTIodGhpcy5OLEguTik7Zy5RMih0aGlzLlcsSC5XKTt0aGlzLmo9SC5qO3RoaXMuSz1ILks7dGhpcy5YPT09LTEmJih0aGlzLlg9SC5nZXRTdHJlYW1UaW1lT2Zmc2V0KCkpfWdldFN0cmVhbVRpbWVPZmZzZXQoKXtyZXR1cm4gdGhpcy5YPT09LTE/MDp0aGlzLlh9fTt2YXIga0xDPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5YPVtdO3RoaXMuTj1udWxsO3RoaXMuSj17fTt0aGlzLlc9e319fTt2YXIgZ1M9Y2xhc3MgZXh0ZW5kcyBnLmpje2NvbnN0cnVjdG9yKHtyYjpuPTAsT1Q6Vz0hMSx1YjpEPTAsSXQ6Yj0wLEhQOnY9SW5maW5pdHksdWs6az0wLFhnOmg9ITEsRTM6eD0hMX09e30pe3N1cGVyKCk7dGhpcy5Ebj10aGlzLnFxPS0xO3RoaXMuTzg9bjt0aGlzLnViPUQ7dGhpcy5PVD1XO3RoaXMuSXQ9Yjt0aGlzLkhQPXY7dGhpcy51az1rOygodGhpcy5YZz1oKXx8aXNGaW5pdGUodikmJnRoaXMuSFA+MCkmJlcmJlp1JiZ0aGlzLnR3KCExLCJwb3N0TGl2ZSIpO3RoaXMuRTM9eH1VYygpe3JldHVybiB0aGlzLk84fU1JKG4sVyl7bj1GeCh0aGlzLG4pO3JldHVybiBuPj0wJiYoV3x8IXRoaXMuc2VnbWVudHNbbl0ucGVuZGluZyl9Wk8oKXtyZXR1cm4gdGhpcy5PVD90aGlzLnNlZ21lbnRzLmxlbmd0aD90aGlzLlgodGhpcy5MZigpKS5qJDotMTpzdXBlci5aTygpfUxmKCl7aWYodGhpcy5YZylyZXR1cm4gMDtpZighdGhpcy5PVClyZXR1cm4gc3VwZXIuTGYoKTtpZighdGhpcy5zZWdtZW50cy5sZW5ndGgpcmV0dXJuIDA7CnZhciBuPU1hdGgubWF4KGcuVU0odGhpcy5zZWdtZW50cykuZW5kVGltZS10aGlzLnViLDApO3JldHVybiB0aGlzLkl0PjAmJnRoaXMuWChuKS5qJDx0aGlzLkl0P3RoaXMuVyh0aGlzLkl0KS5zdGFydFRpbWU6bn1iUSgpe2lmKHRoaXMuRTMmJnRoaXMuRG4mJnRoaXMuRG4+MClyZXR1cm4gdGhpcy5Ebi8xRTM7aWYoIXRoaXMuc2VnbWVudHMubGVuZ3RoKXJldHVybiBzdXBlci5iUSgpO3ZhciBuPXRoaXMueCQoKTtpZighdGhpcy5PVHx8bjw9dGhpcy5zZWdtZW50c1t0aGlzLnNlZ21lbnRzLmxlbmd0aC0xXS5qJCluPXRoaXMuc2VnbWVudHNbdGhpcy5zZWdtZW50cy5sZW5ndGgtMV07ZWxzZXt2YXIgVz10aGlzLnNlZ21lbnRzW3RoaXMuc2VnbWVudHMubGVuZ3RoLTFdO249bmV3IFI0KG4sTWF0aC5tYXgoMCxXLnN0YXJ0VGltZS0oVy5qJC1uKSp0aGlzLk84KSx0aGlzLk84LDAsYHNxLyR7bn1gLHZvaWQgMCx2b2lkIDAsITApfXJldHVybiB0aGlzLlhnP01hdGgubWluKHRoaXMudWIsCm4uZW5kVGltZSk6bi5lbmRUaW1lfUg3KCl7cmV0dXJuIHRoaXMuT1Q/dGhpcy5zZWdtZW50cy5sZW5ndGg/dGhpcy54JCgpLXRoaXMuWk8oKSsxOjA6c3VwZXIuSDcoKX14JCgpe3ZhciBuPU1hdGgubWluKHRoaXMuSFAsTWF0aC5tYXgoc3VwZXIueCQoKSx0aGlzLnFxKSksVz10aGlzLnViKjFFMztXPXRoaXMuRG4+MCYmdGhpcy5EbjxXO3RoaXMuWGcmJnRoaXMudWI+MCYmdGhpcy5xcT4wJiYhVyYmKFc9dGhpcy5YKHRoaXMudWIpKSYmKG49TWF0aC5taW4oVy5qJC0xLG4pKTtyZXR1cm4gbn1PZygpe3JldHVybiB0aGlzLnNlZ21lbnRzLmxlbmd0aD90aGlzLnNlZ21lbnRzW3RoaXMuc2VnbWVudHMubGVuZ3RoLTFdOm51bGx9aihuKXt2YXIgVz1GeCh0aGlzLG4uaiQpO2lmKFc+PTApdGhpcy5zZWdtZW50c1tXXT1uO2Vsc2UgaWYodGhpcy5zZWdtZW50cy5zcGxpY2UoLShXKzEpLDAsbiksdGhpcy51ayYmbi5qJCUoMzAwL3RoaXMuTzgpPT09MCl7dmFyIEQ9dGhpcy5zZWdtZW50c1swXS5qJCwKYj1NYXRoLmZsb29yKHRoaXMudWsvdGhpcy5POCk7bj1uLmokLWI7Vz0tKFcrMSktYjtXPjAmJm4+RCYmKHRoaXMuc2VnbWVudHM9dGhpcy5zZWdtZW50cy5zbGljZShXKSl9fU8obil7bj1GeCh0aGlzLG4pO24+PTAmJnRoaXMuc2VnbWVudHMuc3BsaWNlKG4sMSl9VFgoKXtyZXR1cm4gdGhpcy5xcX1xZShuKXtyZXR1cm4gWnU/IXRoaXMuWSYmbj49MCYmdGhpcy54JCgpPD1uOnN1cGVyLnFlKG4pfVgobil7aWYoIXRoaXMuT1QpcmV0dXJuIHN1cGVyLlgobik7aWYoIXRoaXMuc2VnbWVudHMubGVuZ3RoKXJldHVybiBudWxsO3ZhciBXPXRoaXMuc2VnbWVudHNbdGhpcy5zZWdtZW50cy5sZW5ndGgtMV07aWYobjx0aGlzLnNlZ21lbnRzWzBdLnN0YXJ0VGltZSlXPU1hdGgubWF4KDAsdGhpcy5zZWdtZW50c1swXS5qJC1NYXRoLmNlaWwoKHRoaXMuc2VnbWVudHNbMF0uc3RhcnRUaW1lLW4pL3RoaXMuTzgpKTtlbHNlIGlmKG4+PVcuZW5kVGltZSlXPVcuaiQrTWF0aC5mbG9vcigobi1XLmVuZFRpbWUpLwp0aGlzLk84KzEpO2Vsc2V7Vz1EZSh0aGlzLnNlZ21lbnRzLGI9Pm48Yi5zdGFydFRpbWU/LTE6bj49Yi5lbmRUaW1lPzE6MCk7CmlmKFc+PTApcmV0dXJuIHRoaXMuc2VnbWVudHNbV107dmFyIEQ9LShXKzEpO1c9dGhpcy5zZWdtZW50c1tELTFdO0Q9dGhpcy5zZWdtZW50c1tEXTtXPU1hdGguZmxvb3IoKG4tVy5lbmRUaW1lKS8oKEQuc3RhcnRUaW1lLVcuZW5kVGltZSkvKEQuaiQtVy5qJC0xKSkrMSkrVy5qJH1yZXR1cm4gdGhpcy5XKFcpfVcobil7aWYoIXRoaXMuT1QpcmV0dXJuIHN1cGVyLlcobik7aWYoIXRoaXMuc2VnbWVudHMubGVuZ3RoKXJldHVybiBudWxsO3ZhciBXPUZ4KHRoaXMsbik7aWYoVz49MClyZXR1cm4gdGhpcy5zZWdtZW50c1tXXTt2YXIgRD0tKFcrMSk7Vz10aGlzLk84O2lmKEQ9PT0wKXZhciBiPU1hdGgubWF4KDAsdGhpcy5zZWdtZW50c1swXS5zdGFydFRpbWUtKHRoaXMuc2VnbWVudHNbMF0uaiQtbikqVyk7ZWxzZSBEPT09dGhpcy5zZWdtZW50cy5sZW5ndGg/KGI9dGhpcy5zZWdtZW50c1t0aGlzLnNlZ21lbnRzLmxlbmd0aC0xXSxiPWIuZW5kVGltZSsobi1iLmokLTEpKlcpOihiPQp0aGlzLnNlZ21lbnRzW0QtMV0sVz10aGlzLnNlZ21lbnRzW0RdLFc9KFcuc3RhcnRUaW1lLWIuZW5kVGltZSkvKFcuaiQtYi5qJC0xKSxiPWIuZW5kVGltZSsobi1iLmokLTEpKlcpO3JldHVybiBuZXcgUjQobixiLFcsMCxgc3EvJHtufWAsdm9pZCAwLHZvaWQgMCwhMCl9fSxadT0hMTt2YXIgV1Q9Y2xhc3MgZXh0ZW5kcyBkdHtjb25zdHJ1Y3RvcihuLFcsRD17fSl7c3VwZXIobixXLCIiLHZvaWQgMCx2b2lkIDAsRC5yYnx8MCk7dGhpcy5pbmRleD1uZXcgZ1MoRCl9VEMoKXtyZXR1cm4hMH1OKCl7cmV0dXJuITB9WChuKXtyZXR1cm4gdGhpcy5EKCkmJm4uSiYmIW4uYVp8fCFuLlBKLmluZGV4LnFlKG4uaiQpfVkoKXt9SyhuLFc9ITEpe3JldHVybiB0eXBlb2YgbiE9PSJudW1iZXIifHxpc0Zpbml0ZShuKT9zdXBlci5LKG4sVyk6bmV3IHdrKFtuZXcgcUkoMyx0aGlzLHZvaWQgMCwibWxMaXZlR2V0UmVxSW5mb1N0dWJGb3JUaW1lIiwtMSx2b2lkIDAsdGhpcy5yYix2b2lkIDAsdGhpcy5yYip0aGlzLmluZm8uTnMpXSwiIil9aihuLFcpe2lmKHRoaXMuaW5kZXguTUkobikpcmV0dXJuIHN1cGVyLmoobixXKTt2YXIgRD10aGlzLmluZGV4LmdldFN0YXJ0VGltZShuKSxiPU1hdGgucm91bmQodGhpcy5yYip0aGlzLmluZm8uTnMpLHY9dGhpcy5yYjtXJiYodj1iPTApO3JldHVybiBuZXcgd2soW25ldyBxSSgzLAp0aGlzLHZvaWQgMCwibWxMaXZlQ3JlYXRlUmVxSW5mb0ZvclNlZyIsbixELHYsdm9pZCAwLGIsIVcpXSxuPj0wP2BzcS8ke259YDoiIil9fTt2YXIgcnQ9Y2xhc3MgZXh0ZW5kcyBDantjb25zdHJ1Y3RvcihuLFcpe3N1cGVyKG4sVyk7dGhpcy5pbmRleD1uZXcgZy5qYzt0aGlzLmluZGV4LnR3KCExLCJkIil9Vygpe3JldHVybiExfUQoKXtyZXR1cm4hMX1UQygpe3JldHVybiExfVkoKXtyZXR1cm4gbmV3IHdrKFtuZXcgcUkoMSx0aGlzLHZvaWQgMCwib3RmSW5pdCIpXSwic3EvMCIpfWJkKCl7cmV0dXJuIG51bGx9ZSQobil7dGhpcy5YKG4pO3JldHVybiBNSSh0aGlzLGdrKG4pLCExKX1LKG4sVz0hMSl7bj10aGlzLmluZGV4LlIzKG4pO1cmJihuPU1hdGgubWluKHRoaXMuaW5kZXgueCQoKSxuKzEpKTtyZXR1cm4gTUkodGhpcyxuLCEwKX1EdChuKXtuLmluZm8udHlwZT09PTEmJih0aGlzLkp8fCh0aGlzLko9JE0obi5KKSksbi5OJiZuLk4udXJpPT09Imh0dHA6Ly95b3V0dWJlLmNvbS9zdHJlYW1pbmcvb3RmL2R1cmF0aW9ucy8xMTIwMTUiJiZuR1ModGhpcyxuLk4pKX1YKG4pe3JldHVybiBuLko9PT0wPyEwOnRoaXMuaW5kZXgueCQoKT4Kbi5qJCYmdGhpcy5pbmRleC5aTygpPD1uLmokKzF9SEooKXtyZXR1cm4gMH1udSgpe3JldHVybiExfX07dmFyIGE0LGhoYixEODIsbk0sV0t3O2cuVnM9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy50YWc9bn19O2E0PW5ldyBNYXA7aGhiPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5OPW5ldyBNYXB9fTtEODI9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLk49MTA7dGhpcy5KPURhdGUubm93KCl9fTtuTT1uZXcgTWFwO1dLdz1uZXcgaGhiO3ZhciBiOD1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuaW5mbz1uO3RoaXMuSj1XO3RoaXMuTj1udWxsO3RoaXMuWD10aGlzLlc9LTE7dGhpcy50aW1lc3RhbXBPZmZzZXQ9MDt0aGlzLmlzTG9ja2VkPXRoaXMuSz0hMTt0aGlzLlY9dGhpcy5pbmZvLlBKLlMkKCkmJiF0aGlzLmluZm8uTn1qKG4sVz0hMSxEPTApe2lmKHRoaXMuaXNMb2NrZWR8fG4uaXNMb2NrZWR8fCFiVCh0aGlzLmluZm8sbi5pbmZvKXx8dGhpcy5pbmZvLmFaKXJldHVybiBudWxsO2lmKEQpe2lmKHRoaXMuSi50b3RhbExlbmd0aCtuLkoudG90YWxMZW5ndGg+RClyZXR1cm4gbnVsbH1lbHNlIGlmKFcmJihXPXRoaXMuSixEPW4uSixXPSEoRC5OLmxlbmd0aD94TShXLEQuTlswXSk6MSkpLFcpcmV0dXJuIG51bGw7Vz1uZXcgcUkodGhpcy5pbmZvLnR5cGUsdGhpcy5pbmZvLlBKLHRoaXMuaW5mby5yYW5nZSx0aGlzLmluZm8uWSx0aGlzLmluZm8uaiQsdGhpcy5pbmZvLnNlZ21lbnRTdGFydFRpbWUsdGhpcy5pbmZvLlcsCnRoaXMuaW5mby5OLHRoaXMuaW5mby5KLHRoaXMuaW5mby5hWix0aGlzLmluZm8udkQsdGhpcy5pbmZvLmNsaXBJZCx0aGlzLmluZm8uRCk7UF8oVyxuLmluZm8pO0Q9bmV3IFM1O2U1KEQsdGhpcy5KKTtlNShELG4uSik7Vz1uZXcgYjgoVyxEKTtXLk4hPW51bGwmJm4uTiE9bnVsbCYmZy5jXygiZGFzaCIsNDE0NjI3OTU3LGBtZXJnZWQgc2xpY2UgZW1zZyBvdmVycmlkZGVuOyBwcmV2OiAke1cuTi5mSygpfSBuZXh0OiAke24uTi5mSygpfWApO1cuTj1uLk58fHRoaXMuTjtXLlc9dGhpcy5XIT09LTE/dGhpcy5XOm4uVztXLlg9dGhpcy5YIT09LTE/dGhpcy5YOm4uWDtyZXR1cm4gV319O2cuQkM9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmNvdW50PTA7dGhpcy5KPTE7dGhpcy5XPSExO3RoaXMub2Zmc2V0cz1uZXcgRmxvYXQ2NEFycmF5KDEyOCk7dGhpcy5zdGFydFRpY2tzPW5ldyBGbG9hdDY0QXJyYXkoMTI4KX1NSShuKXtyZXR1cm4gbjw9dGhpcy54JCgpfU4obil7cmV0dXJuIHRoaXMub2Zmc2V0c1tuXX1nZXRTdGFydFRpbWUobil7cmV0dXJuIHRoaXMuc3RhcnRUaWNrc1tuXS90aGlzLkp9akUobil7cmV0dXJuIHRoaXMuZ2V0U3RhcnRUaW1lKG4pK3RoaXMuZ2V0RHVyYXRpb24obil9aEMoKXtyZXR1cm4gTmFOfWdldER1cmF0aW9uKG4pe249dGhpcy5EKG4pO3JldHVybiBuPj0wP24vdGhpcy5KOi0xfUQobil7cmV0dXJuIG4rMTx0aGlzLmNvdW50fHx0aGlzLlc/dGhpcy5zdGFydFRpY2tzW24rMV0tdGhpcy5zdGFydFRpY2tzW25dOi0xfVVjKCl7cmV0dXJuIDB9Wk8oKXtyZXR1cm4gMH14JCgpe3JldHVybiB0aGlzLmNvdW50LTF9cWUobil7cmV0dXJuIHRoaXMueCQoKT09PQpuJiZuPj0wfWJRKCl7cmV0dXJuIHRoaXMuVz90aGlzLnN0YXJ0VGlja3NbdGhpcy5jb3VudF0vdGhpcy5KOk5hTn1MZigpe3JldHVybiAwfUg3KCl7cmV0dXJuIHRoaXMuY291bnR9Vigpe3JldHVybiIifVIzKG4pe24qPXRoaXMuSjtuPWcuVzQodGhpcy5zdGFydFRpY2tzLnN1YmFycmF5KDAsdGhpcy5jb3VudCksbik7cmV0dXJuIG4+PTA/bjpNYXRoLm1heCgwLC1uLTIpfWlzTG9hZGVkKCl7cmV0dXJuIHRoaXMueCQoKT49MH1YZChuLFcpe2lmKG4+PXRoaXMueCQoKSlyZXR1cm4gMDt2YXIgRD0wO2ZvcihXPXRoaXMuZ2V0U3RhcnRUaW1lKG4pK1c7bjx0aGlzLngkKCkmJlc+dGhpcy5nZXRTdGFydFRpbWUobik7bisrKUQ9TWF0aC5tYXgoRCx0TSh0aGlzLG4pL3RoaXMuZ2V0RHVyYXRpb24obikpO3JldHVybiBEfXJlc2l6ZShuKXtuKz0yO3ZhciBXPXRoaXMub2Zmc2V0czt0aGlzLm9mZnNldHM9bmV3IEZsb2F0NjRBcnJheShuKzEpO3ZhciBEPXRoaXMuc3RhcnRUaWNrczt0aGlzLnN0YXJ0VGlja3M9Cm5ldyBGbG9hdDY0QXJyYXkobisxKTtmb3Iobj0wO248dGhpcy5jb3VudCsxO24rKyl0aGlzLm9mZnNldHNbbl09V1tuXSx0aGlzLnN0YXJ0VGlja3Nbbl09RFtuXX1jYXAobixXKXskWCh0aGlzKTt0aGlzLlc9ITA7dGhpcy5zdGFydFRpY2tzW3RoaXMuY291bnRdPVc7dGhpcy5vZmZzZXRzW3RoaXMuY291bnRdPW59fTtnLkJDLnByb3RvdHlwZS5VNz1XWigyKTt2YXIgc2s9Y2xhc3MgZXh0ZW5kcyBDantjb25zdHJ1Y3RvcihuLFcsRCxiKXtzdXBlcihuLFcsRCxiKTt0aGlzLmo9bnVsbDt0aGlzLmluZGV4PW5ldyBnLkJDfVkobixXKXt2YXIgRD1uZXcgcUkoMix0aGlzLHRoaXMuaW5kZXhSYW5nZSwiaW5kZXhJbmZvIix2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsVyksYj1bbmV3IHFJKDEsdGhpcyx0aGlzLmluaXRSYW5nZSwiaW5pdEluZm8iLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCxXKSxEXTt0aGlzLmluZm8uY29udGVudExlbmd0aD4wJiZuJiYoRD1ELnJhbmdlLmVuZCsxLG49TWF0aC5taW4obix0aGlzLmluZm8uY29udGVudExlbmd0aC1EKSxuPjAmJmIucHVzaChuZXcgcUkoNCx0aGlzLFdfKEQsbiksInRiZFJhbmdlIix2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsVykpKTtyZXR1cm4gbmV3IHdrKGIpfUR0KG4pe2lmKG4uaW5mby50eXBlPT09CjEpe2lmKHRoaXMuSilyZXR1cm47dGhpcy5KPSRNKG4uSil9ZWxzZSBpZihuLmluZm8udHlwZT09PTIpe2lmKHRoaXMuanx8dGhpcy5pbmRleC54JCgpPj0wKXJldHVybjtpZihnLlJCKHRoaXMuaW5mbykpe3ZhciBXPXRoaXMuaW5kZXgsRD1nLldSKG4pO249bi5pbmZvLnJhbmdlLnN0YXJ0O3ZhciBiPWcubnMoRCwwLDE5MzYyODY4NDApO0Q9THMoYik7Vy5KPUQudGltZXNjYWxlO3ZhciB2PUQuZjg7Vy5vZmZzZXRzWzBdPUQuTm8rbitiLnNpemU7Vy5zdGFydFRpY2tzWzBdPXY7Vy5XPSEwO249RC5xZy5sZW5ndGg7Zm9yKHY9MDt2PG47disrKXJ5KFcsRC5Ic1t2XSxELnFnW3ZdKX1lbHNlIHRoaXMuaj1nLldSKG4pfWlmKHRoaXMuaW5mby5xSCgpJiZ0aGlzLkomJnRoaXMuail7bj1uZXcgRGF0YVZpZXcodGhpcy5KLmJ1ZmZlcik7Vz10aGlzLmluZGV4O3Y9dGhpcy5qO0Q9dGhpcy5pbmRleFJhbmdlLmVuZDtiPW5ldyB0WShuKTtuPWI7Yj1uLnBvczt2YXIgaz17Qzk6MUU2LG84OjFFOSwKZHVyYXRpb246MCx4TTowLGJtOjB9O2lmKHNZKG4sNDA4MTI1NTQzKSlpZihrLnhNPU5rKG4sITApLGsuYm09bi5zdGFydCtuLnBvcyxzWShuLDM1NzE0OTAzMCkpe2Zvcih2YXIgaD1yQShuKTshSHcoaCk7KXt2YXIgeD1OayhoLCExKTt4PT09MjgwNzcyOT9rLkM5PWZzKGgpOng9PT0yODA3NzMwP2subzg9ZnMoaCk6eD09PTE3NTQ1P2suZHVyYXRpb249SUIoaCk6SlkoaCl9bi5wb3M9YjtuPWt9ZWxzZSBuLnBvcz1iLG49bnVsbDtlbHNlIG4ucG9zPWIsbj1udWxsO2lmKG4hPT1udWxsKXtXLko9bi5vOC9uLkM5O2I9bmV3IHRZKHYpO3Y9YjtoPW4uYm07Yj12LnBvcztrPVtdO2lmKHNZKHYsNDc1MjQ5NTE1KSl7Zm9yKHg9ckEodik7c1koeCwxODcpOyl7bGV0IEw9ckEoeCk7aWYoIXNZKEwsMTc5KSljb250aW51ZTtsZXQgZT1mcyhMKTtpZighc1koTCwxODMpKWNvbnRpbnVlO0w9ckEoTCk7bGV0IEc9aDtmb3IoO3NZKEwsMjQxKTspRz1mcyhMKStoO2sucHVzaCh7Zm86RyxuODplfSl9aWYoay5sZW5ndGg+CjAmJkQ9PT1rWzBdLmZvKWZvcihEPTA7RDxrLmxlbmd0aDtEKyspa1tEXS5mbys9MTt2LnBvcz1iO0Q9a31lbHNlIHYucG9zPWIsRD1udWxsO2lmKEQhPT1udWxsKXtmb3IobGV0IEwgb2YgRClEPVcsdj1MLmZvLGI9TC5uOCwkWChEKSxELm9mZnNldHNbRC5jb3VudF09dixELnN0YXJ0VGlja3NbRC5jb3VudF09YixELmNvdW50Kys7Vy5jYXAobi54TStuLmJtLG4uZHVyYXRpb24pfX10aGlzLmo9bnVsbH19R0Mobil7dmFyIFc9dGhpcy5WUShuLmluZm8pLEQ9bi5pbmZvLnJhbmdlLnN0YXJ0K24uaW5mby5OLGI9W107Zm9yKGxldCB2PTA7djxXLmxlbmd0aDt2Kyspe2xldCBrPWdkKG4uSixXW3ZdLnJhbmdlLnN0YXJ0K1dbdl0uTi1ELFdbdl0uSik7Yi5wdXNoKG5ldyBiOChXW3ZdLGspKX1yZXR1cm4gYn1WUShuKXtmb3IodmFyIFc9bi5yYW5nZS5zdGFydCtuLk4sRD0wO0Q8dGhpcy5pbmRleC54JCgpJiZXPj10aGlzLmluZGV4Lk4oRCsxKTspRCsrO3JldHVybiBzTih0aGlzLEQsVywKbi5KKS5Bd31YKG4pe24uVigpO3JldHVybiB0aGlzLk4oKT8hMDpuLnJhbmdlLmVuZCsxPHRoaXMuaW5mby5jb250ZW50TGVuZ3RofWJkKG4sVyl7dGhpcy5YKG4pO2lmKCF0aGlzLk4oKSlyZXR1cm4gVz1XXyhuLnJhbmdlLmVuZCsxLFcpLFcuZW5kKzE+dGhpcy5pbmZvLmNvbnRlbnRMZW5ndGgmJihXPW5ldyBhQihXLnN0YXJ0LHRoaXMuaW5mby5jb250ZW50TGVuZ3RoLTEpKSxuZXcgd2soW25ldyBxSSg0LG4uUEosVywiZ2V0TmV4dFJlcXVlc3RJbmZvQnlMZW5ndGgiLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCxuLmNsaXBJZCldKTtuLnR5cGU9PT00JiYobj10aGlzLlZRKG4pLG49bltuLmxlbmd0aC0xXSk7dmFyIEQ9MCxiPW4ucmFuZ2Uuc3RhcnQrbi5OK24uSjtuLnR5cGU9PT0zJiYobi5WKCksRD1uLmokLGI9PT1uLnJhbmdlLmVuZCsxJiYoRCs9MSkpO3JldHVybiBzTih0aGlzLEQsYixXKX1lJCgpe3JldHVybiBudWxsfUsobixXPQohMSl7bj10aGlzLmluZGV4LlIzKG4pO1cmJihuPU1hdGgubWluKHRoaXMuaW5kZXgueCQoKSxuKzEpKTtyZXR1cm4gc04odGhpcyxuLHRoaXMuaW5kZXguTihuKSwwKX1XKCl7cmV0dXJuITB9RCgpe3JldHVybiEwfVRDKCl7cmV0dXJuITF9SEooKXtyZXR1cm4gdGhpcy5pbmRleFJhbmdlLmxlbmd0aCt0aGlzLmluaXRSYW5nZS5sZW5ndGh9bnUoKXtyZXR1cm4gdGhpcy5pbmRleFJhbmdlJiZ0aGlzLmluaXRSYW5nZSYmdGhpcy5pbml0UmFuZ2UuZW5kKzE9PT10aGlzLmluZGV4UmFuZ2Uuc3RhcnQ/ITA6ITF9fTt2YXIgQU09Y2xhc3N7Y29uc3RydWN0b3Iobj0wLFc9MCxEPSJTUEFUSUFMX0FVRElPX1RZUEVfTk9ORSIsYj0hMSx2LGssaD0iQVVESU9fUVVBTElUWV9VTktOT1dOIix4PSExKXt0aGlzLnNhbXBsZVJhdGU9bjt0aGlzLm51bUNoYW5uZWxzPVc7dGhpcy5zcGF0aWFsQXVkaW9UeXBlPUQ7dGhpcy5XPWI7dGhpcy5YPXY7dGhpcy5KPWs7dGhpcy5hdWRpb1F1YWxpdHk9aDt0aGlzLk49eH1pc011bHRpQ2hhbm5lbEF1ZGlvKCl7cmV0dXJuIHRoaXMubnVtQ2hhbm5lbHM+Mn19O3ZhciBLTT1jbGFzc3tjb25zdHJ1Y3RvcihuLFcsRCxiPSIiLHY9IiIsaz0iIil7dGhpcy5kaXNwbGF5TmFtZT1uO3RoaXMudnNzSWQ9Vzt0aGlzLmxhbmd1YWdlQ29kZT1EO3RoaXMua2luZD1iO3RoaXMueHRhZ3M9djt0aGlzLmlkPWt9fTt2YXIgciR4PXtDT0xPUl9QUklNQVJJRVNfQlQ3MDk6ImJ0NzA5IixDT0xPUl9QUklNQVJJRVNfQlQyMDIwOiJidDIwMjAiLENPTE9SX1BSSU1BUklFU19VTktOT1dOOm51bGwsQ09MT1JfUFJJTUFSSUVTX1VOU1BFQ0lGSUVEOm51bGx9LGJxVT17Q09MT1JfVFJBTlNGRVJfQ0hBUkFDVEVSSVNUSUNTX0JUNzA5OiJidDcwOSIsQ09MT1JfVFJBTlNGRVJfQ0hBUkFDVEVSSVNUSUNTX0JUMjAyMF8xMDoiYnQyMDIwIixDT0xPUl9UUkFOU0ZFUl9DSEFSQUNURVJJU1RJQ1NfU01QVEVTVDIwODQ6InNtcHRlMjA4NCIsQ09MT1JfVFJBTlNGRVJfQ0hBUkFDVEVSSVNUSUNTX0FSSUJfU1REX0I2NzoiYXJpYi1zdGQtYjY3IixDT0xPUl9UUkFOU0ZFUl9DSEFSQUNURVJJU1RJQ1NfVU5LTk9XTjpudWxsLENPTE9SX1RSQU5TRkVSX0NIQVJBQ1RFUklTVElDU19VTlNQRUNJRklFRDpudWxsfTt2YXIgQVQ9e1dJRFRIOntuYW1lOiJ3aWR0aCIsdmlkZW86ITAsdmFsaWQ6NjQwLHZHOjk5OTk5fSxIRUlHSFQ6e25hbWU6ImhlaWdodCIsdmlkZW86ITAsdmFsaWQ6MzYwLHZHOjk5OTk5fSxGUkFNRVJBVEU6e25hbWU6ImZyYW1lcmF0ZSIsdmlkZW86ITAsdmFsaWQ6MzAsdkc6OTk5OX0sQklUUkFURTp7bmFtZToiYml0cmF0ZSIsdmlkZW86ITAsdmFsaWQ6M0U1LHZHOjJFOX0sRU9URjp7bmFtZToiZW90ZiIsdmlkZW86ITAsdmFsaWQ6ImJ0NzA5Iix2RzoiY2F0YXZpc2lvbiJ9LENIQU5ORUxTOntuYW1lOiJjaGFubmVscyIsdmlkZW86ITEsdmFsaWQ6Mix2Rzo5OX0sQ1JZUFRPQkxPQ0tGT1JNQVQ6e25hbWU6ImNyeXB0b2Jsb2NrZm9ybWF0Iix2aWRlbzohMCx2YWxpZDoic3Vic2FtcGxlIix2RzoiaW52YWxpZGZvcm1hdCJ9LERFQ09ERVRPVEVYVFVSRTp7bmFtZToiZGVjb2RlLXRvLXRleHR1cmUiLHZpZGVvOiEwLHZhbGlkOiJmYWxzZSIsdkc6Im5vcGUifSxBVjFfQ09ERUNTOntuYW1lOiJjb2RlY3MiLAp2aWRlbzohMCx2YWxpZDoiYXYwMS4wLjA1TS4wOCIsdkc6ImF2OTkuMC4wNU0uMDgifSxFWFBFUklNRU5UQUw6e25hbWU6ImV4cGVyaW1lbnRhbCIsdmlkZW86ITAsdmFsaWQ6ImFsbG93ZWQiLHZHOiJpbnZhbGlkIn0sVFVOTkVMTU9ERTp7bmFtZToidHVubmVsbW9kZSIsdmlkZW86ITAsdmFsaWQ6InRydWUiLHZHOiJmYWxzZSJ9fTt2YXIgWWc9e1siMCJdOiJmIixbIjE2MCJdOiJoIixbIjEzMyJdOiJoIixbIjEzNCJdOiJoIixbIjEzNSJdOiJoIixbIjEzNiJdOiJoIixbIjEzNyJdOiJoIixbIjI2NCJdOiJoIixbIjI2NiJdOiJoIixbIjEzOCJdOiJoIixbIjI5OCJdOiJoIixbIjI5OSJdOiJoIixbIjMwNCJdOiJoIixbIjMwNSJdOiJoIixbIjIxNCJdOiJoIixbIjIxNiJdOiJoIixbIjM3NCJdOiJoIixbIjM3NSJdOiJoIixbIjE0MCJdOiJhIixbIjE0MSJdOiJhIixbIjMyNyJdOiJzYSIsWyIyNTgiXToibSIsWyIzODAiXToibWFjMyIsWyIzMjgiXToibWVhYzMiLFsiMTYxIl06IkgiLFsiMTQyIl06IkgiLFsiMTQzIl06IkgiLFsiMTQ0Il06IkgiLFsiMjIyIl06IkgiLFsiMjIzIl06IkgiLFsiMTQ1Il06IkgiLFsiMjI0Il06IkgiLFsiMjI1Il06IkgiLFsiMTQ2Il06IkgiLFsiMjI2Il06IkgiLFsiMjI3Il06IkgiLFsiMTQ3Il06IkgiLFsiMzg0Il06IkgiLFsiMzc2Il06IkgiLFsiMzg1Il06IkgiLFsiMzc3Il06IkgiLApbIjE0OSJdOiJBIixbIjI2MSJdOiJNIixbIjM4MSJdOiJNQUMzIixbIjMyOSJdOiJNRUFDMyIsWyI1OTgiXToiOSIsWyIyNzgiXToiOSIsWyIyNDIiXToiOSIsWyIyNDMiXToiOSIsWyIyNDQiXToiOSIsWyI3NzUiXToiOSIsWyI3NzYiXToiOSIsWyI3NzciXToiOSIsWyI3NzgiXToiOSIsWyI3NzkiXToiOSIsWyI3ODAiXToiOSIsWyI3ODEiXToiOSIsWyI3ODIiXToiOSIsWyI3ODMiXToiOSIsWyIyNDciXToiOSIsWyIyNDgiXToiOSIsWyIzNTMiXToiOSIsWyIzNTUiXToiOSIsWyIzNTYiXToiOSIsWyIyNzEiXToiOSIsWyI1NzciXToiOSIsWyIzMTMiXToiOSIsWyI1NzkiXToiOSIsWyIyNzIiXToiOSIsWyIzMDIiXToiOSIsWyIzMDMiXToiOSIsWyI0MDciXToiOSIsWyI0MDgiXToiOSIsWyIzMDgiXToiOSIsWyIzMTUiXToiOSIsWyIzMzAiXToiOWgiLFsiMzMxIl06IjloIixbIjMzMiJdOiI5aCIsWyIzMzMiXToiOWgiLFsiMzM0Il06IjloIixbIjMzNSJdOiI5aCIsWyIzMzYiXToiOWgiLApbIjMzNyJdOiI5aCIsWyIzMzgiXToic28iLFsiNjAwIl06Im8iLFsiMjUwIl06Im8iLFsiMjUxIl06Im8iLFsiNzc0Il06Im8iLFsiMTk0Il06IioiLFsiMTk1Il06IioiLFsiMjIwIl06IioiLFsiMjIxIl06IioiLFsiMTk2Il06IioiLFsiMTk3Il06IioiLFsiMjc5Il06IigiLFsiMjgwIl06IigiLFsiMzE3Il06IigiLFsiMzE4Il06IigiLFsiMjczIl06IigiLFsiMjc0Il06IigiLFsiMzU3Il06IigiLFsiMzU4Il06IigiLFsiMjc1Il06IigiLFsiMzU5Il06IigiLFsiMzYwIl06IigiLFsiMjc2Il06IigiLFsiNTgzIl06IigiLFsiNTg0Il06IigiLFsiMzE0Il06IigiLFsiNTg1Il06IigiLFsiNTYxIl06IigiLFsiMjc3Il06IigiLFsiMzYxIl06IihoIixbIjM2MiJdOiIoaCIsWyIzNjMiXToiKGgiLFsiMzY0Il06IihoIixbIjM2NSJdOiIoaCIsWyIzNjYiXToiKGgiLFsiNTkxIl06IihoIixbIjU5MiJdOiIoaCIsWyIzNjciXToiKGgiLFsiNTg2Il06IihoIixbIjU4NyJdOiIoaCIsClsiMzY4Il06IihoIixbIjU4OCJdOiIoaCIsWyI1NjIiXToiKGgiLFsiNDA5Il06IigiLFsiNDEwIl06IigiLFsiNDExIl06IigiLFsiNDEyIl06IigiLFsiNTU3Il06IigiLFsiNTU4Il06IigiLFsiMzk0Il06IjEiLFsiMzk1Il06IjEiLFsiMzk2Il06IjEiLFsiMzk3Il06IjEiLFsiMzk4Il06IjEiLFsiMzk5Il06IjEiLFsiNzIwIl06IjEiLFsiNzIxIl06IjEiLFsiNDAwIl06IjEiLFsiNDAxIl06IjEiLFsiNTcxIl06IjEiLFsiNDAyIl06IjEiLFsiNjk0Il06IjFoIixbIjY5NSJdOiIxaCIsWyI2OTYiXToiMWgiLFsiNjk3Il06IjFoIixbIjY5OCJdOiIxaCIsWyI2OTkiXToiMWgiLFsiNzAwIl06IjFoIixbIjcwMSJdOiIxaCIsWyI3MDIiXToiMWgiLFsiNzAzIl06IjFoIixbIjM4NiJdOiIzIixbIjM4NyJdOiJ3IixbIjQwNiJdOiI2IixbIjc4NyJdOiIxIixbIjc4OCJdOiIxIixbIjU0OCJdOiIxZSIsWyI1NDkiXToiMWUiLFsiNTUwIl06IjFlIixbIjU1MSJdOiIxZSIsWyI4MDkiXToiMWUiLApbIjgxMCJdOiIxZSIsWyI1NTIiXToiMWUiLFsiODExIl06IjFlIixbIjgxMiJdOiIxZSIsWyI1NTMiXToiMWUiLFsiODEzIl06IjFlIixbIjgxNCJdOiIxZSIsWyI1NTQiXToiMWUiLFsiODE1Il06IjFlIixbIjgxNiJdOiIxZSIsWyI1NTUiXToiMWUiLFsiODE3Il06IjFlIixbIjgxOCJdOiIxZSIsWyI1NzIiXToiMWUiLFsiNTU2Il06IjFlIixbIjY0NSJdOiIoIixbIjY0NiJdOiIoIixbIjY0NyJdOiIoIixbIjY0OCJdOiIoIixbIjY0OSJdOiIoIixbIjY1MCJdOiIoIixbIjY1MSJdOiIoIixbIjY1MiJdOiIoIixbIjY1MyJdOiIoIixbIjY1NCJdOiIoIixbIjY1NSJdOiIoIixbIjY1NiJdOiIoIixbIjY1NyJdOiIoIixbIjY1OCJdOiIoIixbIjY1OSJdOiIoIixbIjY2MCJdOiIoIixbIjY2MSJdOiIoIixbIjY2MiJdOiIoIixbIjY2MyJdOiIoIixbIjY2NCJdOiIoIixbIjY2NSJdOiIoIixbIjY2NiJdOiIoIixbIjY2NyJdOiIoIixbIjY2OCJdOiIoIixbIjY2OSJdOiIoIixbIjY3MCJdOiIoIiwKWyI2NzEiXToiKCIsWyI2NzIiXToiKCIsWyI2NzMiXToiKCIsWyI2NzQiXToiKGgiLFsiNjc1Il06IihoIixbIjY3NiJdOiIoaCIsWyI2NzciXToiKGgiLFsiNjc4Il06IihoIixbIjY3OSJdOiIoaCIsWyI2ODAiXToiKGgiLFsiNjgxIl06IihoIixbIjY4MiJdOiIoaCIsWyI2ODMiXToiKGgiLFsiNjg0Il06IihoIixbIjY4NSJdOiIoaCIsWyI2ODYiXToiKGgiLFsiNjg3Il06IihoIixbIjY4OCJdOiJBIixbIjY4OSJdOiJBIixbIjY5MCJdOiJBIixbIjY5MSJdOiJNRUFDMyIsWyI3NzMiXToiaSIsWyI4MDYiXToiSSIsWyI4MDUiXToiSSIsWyI4MjkiXToiOSIsWyI4MzAiXToiOSIsWyI4MzEiXToiOSIsWyI4MzIiXToiOSIsWyI4MzMiXToiOSIsWyI4MzQiXToiOSIsWyI4MzUiXToiOSIsWyI4MzYiXToiOSIsWyI4OTIiXToiOSIsWyI4OTMiXToiOSIsWyI4MzciXToiOSIsWyI4MzgiXToiOSIsWyI4MzkiXToiOSIsWyI4NDAiXToiOSIsWyI4NDEiXToiKCIsWyI4NDIiXToiKCIsWyI4NDMiXToiKCIsClsiODQ0Il06IigiLFsiODQ1Il06IigiLFsiODQ2Il06IigiLFsiODQ3Il06IigiLFsiODQ4Il06IigiLFsiODk0Il06IigiLFsiODk1Il06IigiLFsiODQ5Il06IigiLFsiODUwIl06IigiLFsiODUxIl06IigiLFsiODUyIl06IigiLFsiODY1Il06IjkiLFsiODY2Il06IjkiLFsiODY3Il06IjkiLFsiODY4Il06IjkiLFsiODY5Il06IjkiLFsiODcwIl06IjkiLFsiODcxIl06IjkiLFsiODcyIl06IjkiLFsiODk2Il06IjkiLFsiODk3Il06IjkiLFsiODczIl06IjkiLFsiODc0Il06IjkiLFsiODc1Il06IjkiLFsiODc2Il06IjkiLFsiODc3Il06IigiLFsiODc4Il06IigiLFsiODc5Il06IigiLFsiODgwIl06IigiLFsiODgxIl06IigiLFsiODgyIl06IigiLFsiODgzIl06IigiLFsiODg0Il06IigiLFsiODk4Il06IigiLFsiODk5Il06IigiLFsiODg1Il06IigiLFsiODg2Il06IigiLFsiODg3Il06IigiLFsiODg4Il06IigiLFsiOTAwIl06IjIiLFsiOTAxIl06IjIiLFsiOTAyIl06IjIiLApbIjkwMyJdOiIyIixbIjkwNCJdOiIyIixbIjkwNSJdOiIyIixbIjkwNiJdOiIyIixbIjkwNyJdOiIyIixbIjkwOCJdOiIyIn07dmFyIHBNPSJoaWdocmVzIGhkMjg4MCBoZDIxNjAgaGQxNDQwIGhkMTA4MCBoZDcyMCBsYXJnZSBtZWRpdW0gc21hbGwgdGlueSIuc3BsaXQoIiAiKTt2YXIgSFI9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYix2LGssaCx4LEwsZSxHKXt0aGlzLndpZHRoPW47dGhpcy5oZWlnaHQ9Vzt0aGlzLlc9eDt0aGlzLnF1YWxpdHk9a3x8WVgobixXKTt0aGlzLnF1YWxpdHlPcmRpbmFsPU5HW3RoaXMucXVhbGl0eV07dGhpcy5mcHM9RHx8MDt0aGlzLnN0ZXJlb0xheW91dD0hdnx8YiE9bnVsbCYmYiE9PSJVTktOT1dOIiYmYiE9PSJSRUNUQU5HVUxBUiI/MDp2O3RoaXMucHJvamVjdGlvblR5cGU9Yj9iPT09IkVRVUlSRUNUQU5HVUxBUiImJnY9PT0yPyJFUVVJUkVDVEFOR1VMQVJfVEhSRUVEX1RPUF9CT1RUT00iOmI6IlVOS05PV04iOyhuPWgpfHwoRD1OR1t0aGlzLnF1YWxpdHldLEQ9PT0wP249IkF1dG8iOihuPXRoaXMucHJvamVjdGlvblR5cGUsVz10aGlzLmZwcyxuPUQudG9TdHJpbmcoKSsobj09PSJFUVVJUkVDVEFOR1VMQVIifHxuPT09IkVRVUlSRUNUQU5HVUxBUl9USFJFRURfVE9QX0JPVFRPTSJ8fG49PT0iTUVTSCI/InMiOiJwIikrCihXPjU1PyI2MCI6Vz40OT8iNTAiOlc+Mzk/IjQ4IjoiIikpKTt0aGlzLnF1YWxpdHlMYWJlbD1uO3RoaXMuTj1MfHwiIjt0aGlzLnByaW1hcmllcz1lfHwiIjt0aGlzLlg9Rz8/ITB9Sigpe3JldHVybiB0aGlzLmZwcz4zMn1pc0hkcigpe3JldHVybiB0aGlzLk49PT0ic21wdGUyMDg0Inx8dGhpcy5OPT09ImFyaWItc3RkLWI2NyJ9fTt2YXIgbXU9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQ9e30pe3RoaXMuaWQ9bjt0aGlzLm1pbWVUeXBlPVc7RC5Ocz4wfHwoRC5Ocz0xNkUzKTtPYmplY3QuYXNzaWduKHRoaXMsRCk7W3RoaXMuaXRhZyx0aGlzLkpdPXRoaXMuaWQuc3BsaXQoIjsiKTt0aGlzLmNvbnRhaW5lclR5cGU9Sk0oVyk7dGhpcy5JQj1ZZ1t0aGlzLml0YWddfHwiIn1LKCl7cmV0dXJuIHRoaXMudmlkZW99WSgpe3JldHVybiB0aGlzLmF1ZGlvfXFIKCl7cmV0dXJuIHRoaXMuY29udGFpbmVyVHlwZT09PTJ9WCgpe3JldHVybiB0aGlzLklCPT09IjkifHx0aGlzLklCPT09IigifHx0aGlzLklCPT09IjloInx8dGhpcy5JQj09PSIoaCJ9TVcoKXtyZXR1cm4gdGhpcy5JQj09PSIxInx8dGhpcy5JQj09PSIxaCJ8fFBSJiZ0aGlzLklCPT09IjFlIn1WKCl7cmV0dXJuIHRoaXMuSUI9PT0ibWFjMyJ8fHRoaXMuSUI9PT0ibWVhYzMifHx0aGlzLklCPT09Im0ifHx0aGlzLklCPT09ImkifHxtRih0aGlzKX1EKCl7cmV0dXJuIHRoaXMuSUI9PT0KIk1BQzMifHx0aGlzLklCPT09Im1hYzMifHx0aGlzLklCPT09Ik1FQUMzInx8dGhpcy5JQj09PSJtZWFjMyJ9aXNFbmNyeXB0ZWQoKXtyZXR1cm4hIXRoaXMuY29udGVudFByb3RlY3Rpb259ZVMoKXtyZXR1cm4hIXRoaXMuYXVkaW99ZlkoKXtyZXR1cm4hIXRoaXMudmlkZW99Vygpe3JldHVybiB0aGlzLm1pbWVUeXBlPT09ImFwcGxpY2F0aW9uL3gtbXBlZ1VSTCJ9Tigpe3ZhciBuPXRoaXMubWltZVR5cGU7cmV0dXJuIG4uaW5jbHVkZXMoInZ0dCIpfHxuLmluY2x1ZGVzKCJ0ZXh0L21wNCIpfWlzVmVydGljYWwoKXtyZXR1cm4hIXRoaXMudmlkZW8mJnRoaXMudmlkZW8ud2lkdGg8dGhpcy52aWRlby5oZWlnaHR9fSxQUj0hMSxFTj0hMTtnLkZzPWNsYXNzIGV4dGVuZHMgZy5KTHtOTihuLFcsRCxiLHYpe3JldHVybiBzdXBlci5OTihuLFcsRCxiLHYpfX07dmFyIHhnPWNsYXNzIGV4dGVuZHMgZy5GaXtjb25zdHJ1Y3RvcihuLFcsRCxiKXtzdXBlcigpO3RoaXMuayQ9bjt0aGlzLnN0YXJ0PVc7dGhpcy5lbmQ9RDt0aGlzLmlzQWN0aXZlPWI7dGhpcy5hcHBlbmRXaW5kb3dTdGFydD0wO3RoaXMuYXBwZW5kV2luZG93RW5kPUluZmluaXR5O3RoaXMudGltZXN0YW1wT2Zmc2V0PTA7dGhpcy5LVT17ZXJyb3I6KCk9PnshdGhpcy5xTigpJiZ0aGlzLmlzQWN0aXZlJiZ0aGlzLldKKCJlcnJvciIsdGhpcyl9LAp1cGRhdGVlbmQ6KCk9PnshdGhpcy5xTigpJiZ0aGlzLmlzQWN0aXZlJiZ0aGlzLldKKCJ1cGRhdGVlbmQiLHRoaXMpfX07CnRoaXMuayQuaCQodGhpcy5LVSk7dGhpcy5wTj10aGlzLmlzQWN0aXZlfWFwcGVuZEJ1ZmZlcihuLFcsRCl7aWYodGhpcy5rJC5NcigpIT09dGhpcy5hcHBlbmRXaW5kb3dTdGFydCt0aGlzLnN0YXJ0fHx0aGlzLmskLktGKCkhPT10aGlzLmFwcGVuZFdpbmRvd0VuZCt0aGlzLnN0YXJ0fHx0aGlzLmskLlNXKCkhPT10aGlzLnRpbWVzdGFtcE9mZnNldCt0aGlzLnN0YXJ0KXRoaXMuayQuc3VwcG9ydHMoMSksdGhpcy5rJC5lNyh0aGlzLmFwcGVuZFdpbmRvd1N0YXJ0K3RoaXMuc3RhcnQsdGhpcy5hcHBlbmRXaW5kb3dFbmQrdGhpcy5zdGFydCksdGhpcy5rJC55Tyh0aGlzLnRpbWVzdGFtcE9mZnNldCt0aGlzLnN0YXJ0KTt0aGlzLmskLmFwcGVuZEJ1ZmZlcihuLFcsRCl9YWJvcnQoKXt0aGlzLmskLmFib3J0KCl9cmVtb3ZlKG4sVyl7dGhpcy5rJC5yZW1vdmUobit0aGlzLnN0YXJ0LFcrdGhpcy5zdGFydCl9VGkoKXt0aGlzLnJlbW92ZSh0aGlzLmFwcGVuZFdpbmRvd1N0YXJ0LHRoaXMuYXBwZW5kV2luZG93RW5kKX1jbGVhcigpe3RoaXMuayQuY2xlYXIoKX1lNyhuLApXKXt0aGlzLmFwcGVuZFdpbmRvd1N0YXJ0PW47dGhpcy5hcHBlbmRXaW5kb3dFbmQ9V31pdygpe3JldHVybiB0aGlzLnRpbWVzdGFtcE9mZnNldCt0aGlzLnN0YXJ0fU1yKCl7cmV0dXJuIHRoaXMuYXBwZW5kV2luZG93U3RhcnR9S0YoKXtyZXR1cm4gdGhpcy5hcHBlbmRXaW5kb3dFbmR9eU8obil7dGhpcy50aW1lc3RhbXBPZmZzZXQ9bn1TVygpe3JldHVybiB0aGlzLnRpbWVzdGFtcE9mZnNldH1aRihuPSExKXtuPXRoaXMuayQuWkYobik7cmV0dXJuIFFUKG4sdGhpcy5zdGFydCx0aGlzLmVuZCl9eXUoKXtyZXR1cm4gdGhpcy5rJC55dSgpfWZGKCl7cmV0dXJuIHRoaXMuayQuZkYoKX1nWCgpe3JldHVybiB0aGlzLmskLmdYKCl9RGMoKXtyZXR1cm4gdGhpcy5rJC5EYygpfWg5KCl7dGhpcy5rJC5oOSgpfXRaKG4pe3JldHVybiB0aGlzLmskLnRaKG4pfUQ5KCl7cmV0dXJuIHRoaXMuayQuRDkoKX1MRigpe3JldHVybiB0aGlzLmskLkxGKCl9am4obixXLEQpe3RoaXMuayQuam4obiwKVyxEKX1WbyhuLFcsRCl7dGhpcy5rJC5WbyhuLFcsRCl9bmEobixXKXtyZXR1cm4gdGhpcy5rJC5uYShuLFcpfXN1cHBvcnRzKG4pe3JldHVybiB0aGlzLmskLnN1cHBvcnRzKG4pfVpnKCl7cmV0dXJuIHRoaXMuayQuWmcoKX1pUSgpe3JldHVybiB0aGlzLmskLmlRKCl9aXNWaWV3KCl7cmV0dXJuITB9am8oKXtyZXR1cm4gdGhpcy5rJC5qbygpP3RoaXMuaXNBY3RpdmU6ITF9aXNMb2NrZWQoKXtyZXR1cm4gdGhpcy5wTiYmIXRoaXMuaXNBY3RpdmV9eXIobil7bj10aGlzLmskLnlyKG4pO24udnc9YCR7dGhpcy5zdGFydH0tJHt0aGlzLmVuZH1gO3JldHVybiBufW5GKCl7cmV0dXJuIHRoaXMuayQubkYoKX1Lcygpe3JldHVybiB0aGlzLmskLktzKCl9ejAoKXtyZXR1cm4gdGhpcy5rJC56MCgpfW1BKCl7dGhpcy5rJC5NOSh0aGlzLktVKTtzdXBlci5tQSgpfUtpKCl7cmV0dXJuIHRoaXMuaXNBY3RpdmV9VnUobil7dGhpcy5pc0FjdGl2ZT1uO3RoaXMucE49dGhpcy5wTnx8dGhpcy5pc0FjdGl2ZX19O3ZhciBzND0hMTt2YXIga2c9Y2xhc3MgZXh0ZW5kcyBnLkZpe2NvbnN0cnVjdG9yKG4sVyxELGIsdixrKXtzdXBlcigpO3RoaXMuUUU9bjt0aGlzLkVWPVc7dGhpcy5pZD1EO3RoaXMuY29udGFpbmVyVHlwZT1iO3RoaXMuSUI9djt0aGlzLmZZPWs7dGhpcy5tTz10aGlzLmpxPXRoaXMuZEg9bnVsbDt0aGlzLmVvPSExO3RoaXMuYXBwZW5kV2luZG93U3RhcnQ9dGhpcy50aW1lc3RhbXBPZmZzZXQ9MDt0aGlzLkY0PVRpKFtdLFtdKTt0aGlzLkhIPSExO3RoaXMuaWs9W107dGhpcy55Nj1QYz9bXTp2b2lkIDA7dGhpcy5oYW5kbGVyPWg9PnRoaXMuV0ooaC50eXBlLHRoaXMpOwp0aGlzLlFFPy5hZGRFdmVudExpc3RlbmVyJiYodGhpcy5RRS5hZGRFdmVudExpc3RlbmVyKCJ1cGRhdGVlbmQiLHRoaXMuaGFuZGxlciksdGhpcy5RRS5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsdGhpcy5oYW5kbGVyKSl9YXBwZW5kQnVmZmVyKG4sVyxEKXt0aGlzLkhIPSExO0QmJih0aGlzLmpxPUQpO24ubGVuZ3RoJiYodGhpcy5RRT8uYXBwZW5kQnVmZmVyP3RoaXMuUUUuYXBwZW5kQnVmZmVyKG4pOnRoaXMuUUU/dGhpcy5RRS5hcHBlbmQobik6dGhpcy5FViYmdGhpcy5FVi53ZWJraXRTb3VyY2VBcHBlbmQodGhpcy5pZCxuKSk7VyYmKFcuaXNFbmNyeXB0ZWQoKSYmKHRoaXMubU89dGhpcy5qcSksVy50eXBlPT09MyYmKHRoaXMuZEg9VyksdGhpcy5pay5wdXNoKFcuZ2EoKSksdGhpcy5pay5sZW5ndGg+NCYmdGhpcy5pay5zaGlmdCgpKTt0aGlzLnk2JiYodGhpcy55Ni5sZW5ndGg+PTJ8fG4ubGVuZ3RoPjEwNDg1NzY/ZGVsZXRlIHRoaXMueTY6dGhpcy55Ni5wdXNoKG4pKX1hYm9ydCgpe3RyeXt0aGlzLlFFPwp0aGlzLlFFLmFib3J0KCk6dGhpcy5FViYmdGhpcy5FVi53ZWJraXRTb3VyY2VBYm9ydCh0aGlzLmlkKX1jYXRjaChuKXtRalomJmcuR3EobmV3IGcuUXgoYEVycm9yIHdoaWxlIGFib3J0IHRoZSBzb3VyY2UgYnVmZmVyOiAke24ubmFtZX0sICR7bi5tZXNzYWdlfWApKX10aGlzLmpxPXRoaXMuZEg9bnVsbH1yZW1vdmUobixXLEQpe3RoaXMuSEg9ITE7dGhpcy5RRT8ucmVtb3ZlJiYoRCYmRCh7Yjpyayh0aGlzLlpGKCkpLHM6bixlOld9KSx0aGlzLlFFLnJlbW92ZShuLFcpKX1UaSgpe3RoaXMucmVtb3ZlKHRoaXMuTXIoKSx0aGlzLktGKCkpfWNsZWFyKCl7dGhpcy5nWCgpfHwodGhpcy5hYm9ydCgpLHRoaXMuVGkoKSx0aGlzLm1PPXRoaXMuanE9dGhpcy5kSD1udWxsLHRoaXMuYXBwZW5kV2luZG93U3RhcnQ9dGhpcy50aW1lc3RhbXBPZmZzZXQ9MCx0aGlzLkY0PVRpKFtdLFtdKSx0aGlzLkhIPSExLHRoaXMueTY9UGM/W106dm9pZCAwLHRoaXMuZW89ITApfU1yKCl7cmV0dXJuIHM0JiYKdGhpcy5mWT90aGlzLmFwcGVuZFdpbmRvd1N0YXJ0OnRoaXMuUUU/LmFwcGVuZFdpbmRvd1N0YXJ0fHwwfUtGKCl7cmV0dXJuIHRoaXMuUUU/LmFwcGVuZFdpbmRvd0VuZHx8MH1lNyhuLFcpe3RoaXMuUUUmJihzNCYmdGhpcy5mWT8odGhpcy5hcHBlbmRXaW5kb3dTdGFydD1uLHRoaXMuUUUuYXBwZW5kV2luZG93RW5kPVcpOm4+dGhpcy5NcigpPyh0aGlzLlFFLmFwcGVuZFdpbmRvd0VuZD1XLHRoaXMuUUUuYXBwZW5kV2luZG93U3RhcnQ9bik6KHRoaXMuUUUuYXBwZW5kV2luZG93U3RhcnQ9bix0aGlzLlFFLmFwcGVuZFdpbmRvd0VuZD1XKSl9aXcoKXtyZXR1cm4gdGhpcy50aW1lc3RhbXBPZmZzZXR9eU8obil7czQ/dGhpcy50aW1lc3RhbXBPZmZzZXQ9bjp0aGlzLnN1cHBvcnRzKDEpJiYodGhpcy5RRS50aW1lc3RhbXBPZmZzZXQ9bil9U1coKXtyZXR1cm4gczQ/dGhpcy50aW1lc3RhbXBPZmZzZXQ6dGhpcy5zdXBwb3J0cygxKT90aGlzLlFFLnRpbWVzdGFtcE9mZnNldDowfVpGKG49CiExKXtpZihuKXJldHVybiB0aGlzLkhIfHx0aGlzLnl1KCl8fCh0aGlzLkY0PXRoaXMuWkYoITEpLHRoaXMuSEg9ITApLHRoaXMuRjQ7dHJ5e3JldHVybiB0aGlzLlFFP3RoaXMuUUUuYnVmZmVyZWQ6dGhpcy5FVj90aGlzLkVWLndlYmtpdFNvdXJjZUJ1ZmZlcmVkKHRoaXMuaWQpOlRpKFswXSxbSW5maW5pdHldKX1jYXRjaChXKXtyZXR1cm4gVGkoW10sW10pfX15dSgpe3JldHVybiB0aGlzLlFFPy51cGRhdGluZ3x8ITF9Z1goKXtyZXR1cm4gdGhpcy5lb31EYygpe3JldHVybiF0aGlzLmVvJiZ0aGlzLnl1KCl9aDkoKXt0aGlzLmVvPSExfXRaKG4pe3ZhciBXPW4/LklCO249bj8uY29udGFpbmVyVHlwZTtyZXR1cm4hVyYmIW58fFc9PT10aGlzLklCJiZuPT09dGhpcy5jb250YWluZXJUeXBlfUQ5KCl7cmV0dXJuIHRoaXMuanF9TEYoKXtyZXR1cm4gdGhpcy5tT31uYShuLFcpe3JldHVybiB0aGlzLmNvbnRhaW5lclR5cGUhPT1ufHx0aGlzLklCIT09V31qbihuLFcsRCl7aWYodGhpcy5jb250YWluZXJUeXBlIT09Cm58fEQmJnRoaXMubmEobixEKSl0aGlzLnN1cHBvcnRzKDQpLFZUKCkmJnRoaXMuUUUuY2hhbmdlVHlwZShXKSxEJiYodGhpcy5JQj1EKTt0aGlzLmNvbnRhaW5lclR5cGU9bn1WbyhuLFcsRCl7dGhpcy5jb250YWluZXJUeXBlJiZ0aGlzLm5hKG4sVykmJlZUKCkmJnRoaXMuUUUuY2hhbmdlVHlwZShEKTt0aGlzLmNvbnRhaW5lclR5cGU9bjt0aGlzLklCPVd9WmcoKXtyZXR1cm4gdGhpcy5kSH1pUSgpe3JldHVybiEhdGhpcy5kSCYmIXRoaXMuZEguYVp9aXNWaWV3KCl7cmV0dXJuITF9c3VwcG9ydHMobil7c3dpdGNoKG4pe2Nhc2UgMTpyZXR1cm4gdGhpcy5RRT8udGltZXN0YW1wT2Zmc2V0IT09dm9pZCAwO2Nhc2UgMDpyZXR1cm4hIXRoaXMuUUU/LmFwcGVuZEJ1ZmZlcjtjYXNlIDI6cmV0dXJuISF0aGlzLlFFPy5yZW1vdmU7Y2FzZSAzOnJldHVybiEoIXRoaXMuUUU/LmFkZEV2ZW50TGlzdGVuZXJ8fCF0aGlzLlFFPy5yZW1vdmVFdmVudExpc3RlbmVyKTtjYXNlIDQ6cmV0dXJuISghdGhpcy5RRXx8CiF0aGlzLlFFLmNoYW5nZVR5cGUpO2RlZmF1bHQ6cmV0dXJuITF9fWpvKCl7cmV0dXJuIXRoaXMueXUoKX1pc0xvY2tlZCgpe3JldHVybiExfXlyKG4pe24udG89dGhpcy5TVygpO24udXA9dGhpcy55dSgpO24uYXc9YCR7KHRoaXMuUUU/LmFwcGVuZFdpbmRvd1N0YXJ0fHwwKS50b0ZpeGVkKDMpfS0keyh0aGlzLlFFPy5hcHBlbmRXaW5kb3dFbmR8fEluZmluaXR5KS50b0ZpeGVkKDMpfWA7cmV0dXJuIG59ZkYoKXtyZXR1cm4gdGhpcy5RRT8ud3JpdGVIZWFkfHwwfW5GKCl7dmFyIG49e307Zm9yKGxldCBXPTA7Vzx0aGlzLmlrLmxlbmd0aDtXKyspbltgcyR7V31gXT10aGlzLmlrW1ddO3JldHVybiBufW1BKCl7dGhpcy5zdXBwb3J0cygzKSYmKHRoaXMuUUUucmVtb3ZlRXZlbnRMaXN0ZW5lcigidXBkYXRlZW5kIix0aGlzLmhhbmRsZXIpLHRoaXMuUUUucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZXJyb3IiLHRoaXMuaGFuZGxlcikpO3N1cGVyLm1BKCl9S3MoKXtyZXR1cm4gdGhpcy5jb250YWluZXJUeXBlfXowKCl7cmV0dXJuIHRoaXMueTZ9fSwKUGM9ITEsUWpaPSExO3ZhciB3bj1jbGFzc3tjb25zdHJ1Y3RvcihuLFc9ITEpe3RoaXMuWGI9bjt0aGlzLk49Vzt0aGlzLko9ITF9ZGlzcG9zZSgpe2lmKCF0aGlzLnFOKCkpe2lmKHRoaXMuTil0cnl7VVJMLnJldm9rZU9iamVjdFVSTCh0aGlzLlhiKX1jYXRjaChuKXt9dGhpcy5KPSEwfX1xTigpe3JldHVybiB0aGlzLkp9Vygpe3JldHVybiB0aGlzLk59ZXF1YWxzKG4pe3JldHVybiBuIT09bnVsbCYmbi5YYj09PXRoaXMuWGJ9dG9TdHJpbmcoKXtyZXR1cm5gTWVkaWFSZXNvdXJjZSB7JHt0aGlzLlhifX1gfX07dmFyIGhaPWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3RvcihuLFcsRD0hMSl7c3VwZXIoKTt0aGlzLm1lZGlhRWxlbWVudD1uO3RoaXMubWVkaWFTb3VyY2U9Vzt0aGlzLmlzVmlldz1EO3RoaXMuWT0wO3RoaXMuVj0hMTt0aGlzLks9ITA7dGhpcy5jSj0wO3RoaXMuY2FsbGJhY2s9bnVsbDt0aGlzLk89ITE7dGhpcy5tZWRpYVNvdXJjZXx8KHRoaXMuRVY9dGhpcy5tZWRpYUVsZW1lbnQuZV8oKSk7dGhpcy5ldmVudHM9bmV3IGcuRnModGhpcyk7Zy51KHRoaXMsdGhpcy5ldmVudHMpO3RoaXMuaj1uZXcgd24odGhpcy5tZWRpYVNvdXJjZT93aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTCh0aGlzLm1lZGlhU291cmNlKTp0aGlzLkVWLndlYmtpdE1lZGlhU291cmNlVVJMLCEwKTtuPXRoaXMubWVkaWFTb3VyY2V8fHRoaXMuRVY7S3kodGhpcy5ldmVudHMsbixbInNvdXJjZW9wZW4iLCJ3ZWJraXRzb3VyY2VvcGVuIl0sdGhpcy5TJCk7S3kodGhpcy5ldmVudHMsbixbInNvdXJjZWNsb3NlIiwKIndlYmtpdHNvdXJjZWNsb3NlIl0sdGhpcy5UQyk7dGhpcy5MTD17dXBkYXRlZW5kOnRoaXMuZVh9fXR3KCl7cmV0dXJuIHRoaXMuan1nZXREdXJhdGlvbigpe3JldHVybiB0aGlzLm1lZGlhU291cmNlPy5kdXJhdGlvbnx8dGhpcy5jSn1hVChuKXt0cnl7dGhpcy5tZWRpYVNvdXJjZT90aGlzLm1lZGlhU291cmNlLmR1cmF0aW9uPW46KHRoaXMuY0o9bix0aGlzLkVWLndlYmtpdFNvdXJjZVNldER1cmF0aW9uKG4pKX1jYXRjaChXKXt9fVgoKXtyZXR1cm4hIXRoaXMuTnx8ISF0aGlzLkp9UEEoKXt0cnl7cmV0dXJuIHRoaXMuVygpPT09ImNsb3NlZCJ9Y2F0Y2gobil7cmV0dXJuITB9fVcoKXtpZih0aGlzLm1lZGlhU291cmNlKXJldHVybiB0aGlzLm1lZGlhU291cmNlLnJlYWR5U3RhdGU7c3dpdGNoKHRoaXMuRVYud2Via2l0U291cmNlU3RhdGUpe2Nhc2UgdGhpcy5FVi5TT1VSQ0VfT1BFTjpyZXR1cm4ib3BlbiI7Y2FzZSB0aGlzLkVWLlNPVVJDRV9FTkRFRDpyZXR1cm4iZW5kZWQiOwpkZWZhdWx0OnJldHVybiJjbG9zZWQifX15dSgpe3JldHVybiEhKHRoaXMuTiYmdGhpcy5OLnl1KCl8fHRoaXMuSiYmdGhpcy5KLnl1KCkpfVMkKCl7IXRoaXMucU4oKSYmbjYodGhpcykmJnRoaXMuY2FsbGJhY2smJih0aGlzLmNhbGxiYWNrKHRoaXMpLHRoaXMuY2FsbGJhY2s9bnVsbCl9VEMoKXt0aGlzLmRpc3Bvc2UoKX1lWChuKXtESCYmIXRoaXMuViYmbi5nWCgpJiZuLlpGKCkubGVuZ3RoPT09MCYmKGJBKHRoaXMubWVkaWFFbGVtZW50LHtsOiJtc3dvdWUiLHNyOnRoaXMubWVkaWFFbGVtZW50LllhPy5wZygpfSwhMSksbi5oOSgpLHRoaXMuZ1goKXx8KHRoaXMubWVkaWFFbGVtZW50LkNGPSEwLHRoaXMubWVkaWFFbGVtZW50LnNldEN1cnJlbnRUaW1lKDApKSl9Y2xlYXIoKXtXRih0aGlzLCgpPT57fSk7CnRoaXMuTj8uY2xlYXIoKTt0aGlzLko/LmNsZWFyKCl9RCgpe3RoaXMuTj8uaDkoKTt0aGlzLko/Lmg5KCk7dGhpcy5LPSExfWdYKCl7cmV0dXJuIHRoaXMuSj8uZ1goKXx8dGhpcy5OPy5nWCgpfXRaKG4sVyl7cmV0dXJuISF0aGlzLk4mJiEhdGhpcy5KJiZ0aGlzLk4udFooVykmJnRoaXMuSi50WihuKX1iZCgpe3JldHVybiEhdGhpcy5tZWRpYVNvdXJjZSYmdGhpcy5tZWRpYVNvdXJjZS5zdHJlYW1pbmc9PT0hMX19LERIPSExO3ZhciBnR3I9L2FjdGlvbl9kaXNwbGF5X3Bvc3QvO2cuR3g9Y2xhc3MgZXh0ZW5kcyBnLkZpe2NvbnN0cnVjdG9yKG49IiIsVz1udWxsLEQ9ITEpe3N1cGVyKCk7dGhpcy5zb3VyY2VVcmw9bjt0aGlzLmlzTGl2ZVBsYXliYWNrPUQ7dGhpcy5ISj10aGlzLmR1cmF0aW9uPTA7dGhpcy5pc1ByZW1pZXJlPXRoaXMuWGc9dGhpcy5pc1dpbmRvd2VkTGl2ZT10aGlzLmlzTGl2ZUhlYWRQbGF5YWJsZT10aGlzLmlzTGl2ZT10aGlzLlc9ITE7dGhpcy5IUD10aGlzLkl0PTA7dGhpcy5pc090Zj10aGlzLnpXPSExO3RoaXMuUyQ9KDAsZy5SKSgpO3RoaXMuY0o9SW5maW5pdHk7dGhpcy5OPXt9O3RoaXMuSj1uZXcgTWFwO3RoaXMuc3RhdGU9dGhpcy5sTj0wO3RoaXMuVj1udWxsO3RoaXMuaXNNYW5pZmVzdGxlc3M9ITE7dGhpcy5iZD1bXTt0aGlzLks9bnVsbDt0aGlzLmUkPTA7dGhpcy5qPSIiO3RoaXMuVEM9TmFOO3RoaXMuSlU9dGhpcy5vUj10aGlzLnRpbWVzdGFtcE9mZnNldD10aGlzLkQ9MDt0aGlzLldNPXRoaXMuSDI9TmFOO3RoaXMuSVQ9MDsKdGhpcy5WUT10aGlzLk89ITE7dGhpcy5HQz1bXTt0aGlzLnZKPXt9O3RoaXMuUFg9dGhpcy50dz1OYU47dGhpcy5DdT1XPy5FcSgiaHRtbDVfdXNlX25ldHdvcmtfZXJyb3JfY29kZV9lbnVtcyIpO016PSEhVyYmVy5FcSgiaHRtbDVfbW9kZXJuX3ZwOV9taW1lX3R5cGUiKTtIRj0hIVc/LkVxKCJodG1sNV9lbmFibGVfZmx1c2hfZHVyaW5nX3NlZWsiKSYmZy5kOCgpO2Y2PSEhVz8uRXEoImh0bWw1X2VuYWJsZV9yZXNldF9hdWRpb19kZWNvZGVyIikmJmcuZDgoKX1pc0xvYWRpbmcoKXtyZXR1cm4gdGhpcy5zdGF0ZT09PTF9dG4oKXtyZXR1cm4gdGhpcy5zdGF0ZT09PTN9bnUoKXtyZXR1cm4gZy5EbCh0aGlzLk4sbj0+ISFuLmluZm8udmlkZW8mJm4uaW5mby52aWRlby5xdWFsaXR5T3JkaW5hbD49MjE2MCl9WCgpe3JldHVybiBnLkRsKHRoaXMuTixuPT4hIW4uaW5mby5jb250ZW50UHJvdGVjdGlvbil9eUUobil7dmFyIFc9bi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiUmVwcmVzZW50YXRpb24iKTsKaWYobi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiU2VnbWVudExpc3QiKS5sZW5ndGg+MHx8bi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiU2VnbWVudFRlbXBsYXRlIikubGVuZ3RoPjApe3RoaXMuelc9dGhpcy5XPSEwO3RoaXMuVnx8KHRoaXMuVj1uZXcga0xDKTtjSGoodGhpcy5WLG4pO3RoaXMuV0ooInJlZnJlc2giKTtmb3Iobj0wO248Vy5sZW5ndGg7bisrKXt2YXIgRD15Qyh0aGlzLFdbbl0pO2lmKCF0aGlzLk5bRC5pZF0pe3ZhciBiPVJ4KFRQKFdbbl0sIkJhc2VVUkwiKS50ZXh0Q29udGVudCksdj1UUChXW25dLCJJbml0aWFsaXphdGlvbiIpLGs9bFQodiwic291cmNlVVJMIik7dj1ueihsVCh2LCJyYW5nZSIpKTt0aGlzLk5bRC5pZF09bmV3IGR0KGIsRCxrLHYpfUQ9dGhpcy5OW0QuaWRdO2s9bFQoV1tuXSwiaWQiLCJBZGFwdGF0aW9uU2V0Iik7az1rIT09IiI/azpsVChXW25dLCJtaW1ldHlwZSIsIkFkYXB0YXRpb25TZXQiKTtiPXRoaXMuVjtrPWIuV1tELmluZm8uaWRdfHxiLkpba118fApiLk58fG51bGw7Yj1rLk47IXRoaXMuRCYmay5nZXRTdHJlYW1UaW1lT2Zmc2V0KCkmJih0aGlzLkQ9ay5nZXRTdHJlYW1UaW1lT2Zmc2V0KCkpO2lmKGsuail7dj1bXTtmb3IodmFyIGggb2YgYil7Yj1ELmluZm8uaWQ7dmFyIHg9RC5pbmZvLk5zKjgsTD1oLmokLGU9aC5zdGFydFNlY3MsRz1rLksuc3BsaXQoIiQkIik7Zm9yKHZhciByPTA7cjxHLmxlbmd0aDtyKyspR1tyXT1HW3JdLnJlcGxhY2UoIiRSZXByZXNlbnRhdGlvbklEJCIsYiksR1tyXT1HW3JdLnJlcGxhY2UoIiROdW1iZXIkIixMLnRvU3RyaW5nKCkpLEdbcl09R1tyXS5yZXBsYWNlKCIkQmFuZHdpZHRoJCIseC50b1N0cmluZygpKSxHW3JdPUdbcl0ucmVwbGFjZSgiJFRpbWUkIixlLnRvU3RyaW5nKCkpO2I9Ry5qb2luKCIkIik7di5wdXNoKG5ldyBSNChoLmokLGguc3RhcnRTZWNzLGguQ2YsaC5OLGIsbnVsbCxoLkopKX1iPXZ9ZWxzZXtMPVYyKFRQKFdbbl0sIlNlZ21lbnRMaXN0IikuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIlNlZ21lbnRVUkwiKSwKay5WKTtlPVtdO2ZvcihHPTA7RzxMLmxlbmd0aDtHKyspe2s9ZTt2PWsucHVzaDtyPXZvaWQgMDt2YXIgTj1MW0ddO3g9YltHXTtsZXQgSD1OLmdldEF0dHJpYnV0ZSgibWVkaWEiKTtpZihOPU4uZ2V0QXR0cmlidXRlKCJtZWRpYVJhbmdlIikpe2xldCBBPU4uc3BsaXQoIi0iKTtBWzFdJiZOdW1iZXIoQVsxXSk+PTA/cj1ueihOKTpIPWAke0h9P3JhbmdlPSR7Tn1gfXYuY2FsbChrLG5ldyBSNCh4LmokLHguc3RhcnRTZWNzLHguQ2YseC5OLEgscix4LkopKX1iPWV9RC51cGRhdGUoYix0aGlzLmlzTGl2ZSx0aGlzLkhKKX1hRFUodGhpcy5WKTtyZXR1cm4hMH10aGlzLmR1cmF0aW9uPWp4KGxUKG4sIm1lZGlhUHJlc2VudGF0aW9uRHVyYXRpb24iKSk7YTp7Zm9yKGg9MDtoPFcubGVuZ3RoO2grKyl7Yj1XW2hdO249eUModGhpcyxiKTtEPVJ4KFRQKGIsIkJhc2VVUkwiKS50ZXh0Q29udGVudCk7az1UUChiLCJTZWdtZW50QmFzZSIpO2I9bnooay5hdHRyaWJ1dGVzLmdldE5hbWVkSXRlbSgiaW5kZXhSYW5nZSIpLnZhbHVlKTsKaz1ueihrLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJJbml0aWFsaXphdGlvbiIpWzBdLmF0dHJpYnV0ZXMuZ2V0TmFtZWRJdGVtKCJyYW5nZSIpLnZhbHVlKTtuPW5ldyBzayhELG4sayxiKTtpZighbil7Vz0hMTticmVhayBhfSRnKHRoaXMsbil9Vz0hMH1yZXR1cm4gV31EdChuKXtyZXR1cm4gdGhpcy5WP1YyKHRoaXMuVi5YLG4pOnRoaXMuYmQubGVuZ3RoP1YyKHRoaXMuYmQsbik6W119cmVmcmVzaCgpe2lmKCF0aGlzLmlzTG9hZGluZygpJiYhdGhpcy5xTigpKXt2YXIgbj1nLkVUKHRoaXMuc291cmNlVXJsLHtzdGFydF9zZXE6QSRpKHRoaXMpLnRvU3RyaW5nKCl9KTtTNCh0aGlzLG4pLnNQKCgpPT57fSl9fXN1c3BlbmQoKXt0aGlzLksmJnRoaXMuSy5zdG9wKCl9cmVzdW1lKCl7QVoodGhpcyl9ckkoKXtpZih0aGlzLmlzTWFuaWZlc3RsZXNzJiZ0aGlzLmlzV2luZG93ZWRMaXZlJiZpQSh0aGlzKSlyZXR1cm4gaUEodGhpcyk7CnZhciBuPXRoaXMuTixXPSExLEQ9TmFOLGI9TmFOO2ZvcihsZXQgayBpbiBuKXtsZXQgaD1uW2tdO3ZhciB2PWguaW5kZXg7aWYoIXYuaXNMb2FkZWQoKXx8aC5pbmZvLk4oKSljb250aW51ZTtoLlYmJihXPSEwKTt2PXYuYlEoKTtoLmluZm8uZVMoKSYmKGlzTmFOKEQpfHx2PEQpP0Q9djpoLmluZm8uZlkoKSYmKGlzTmFOKGIpfHx2PGIpJiYoYj12KX1yZXR1cm4gV3x8aXNOYU4oYik/RDpNYXRoLm1pbihELGIpfUxmKCl7aWYodGhpcy5pc01hbmlmZXN0bGVzcyl7aWYodUEodGhpcykpcmV0dXJuIHVBKHRoaXMpO2lmKHRoaXMuSVQpe3ZhciBuPXRoaXMuaEModGhpcy5ySSgpKTtpZihuJiYobi09dGhpcy5JVCxuPjApKXJldHVybiB0aGlzLnJJKCktbn19bj10aGlzLk47Zm9yKGxldCBXIGluIG4pe2xldCBEPW5bV10uaW5kZXg7aWYoRC5pc0xvYWRlZCgpJiYhbltXXS5pbmZvLk4oKSlyZXR1cm4gRC5MZigpfXJldHVybiAwfWdldFN0cmVhbVRpbWVPZmZzZXQoKXtyZXR1cm4gdGhpcy5EfWhDKG4pe2ZvcihsZXQgVyBpbiB0aGlzLk4pe2xldCBEPQp0aGlzLk5bV10uaW5kZXg7aWYoRC5pc0xvYWRlZCgpKXtsZXQgYj1ELlIzKG4pLHY9RC5oQyhiKTtpZih2KXJldHVybiB2K24tRC5nZXRTdGFydFRpbWUoYil9fXJldHVybiBOYU59cWgoKXtyZXR1cm4gdGhpcy5lJH1qVygpe2ZvcihsZXQgbiBpbiB0aGlzLk4pdGhpcy5OLmhhc093blByb3BlcnR5KG4pJiYodGhpcy5OW25dLko9bnVsbCx0aGlzLk5bbl0uY0o9ITEpfX07Zy5HeC5wcm90b3R5cGUuRkY9V1ooNCk7dmFyIE16LEhGLGY2LHd0PW51bGwsUm89ISFuYXZpZ2F0b3IubWVkaWFDYXBhYmlsaXRpZXM/LmRlY29kaW5nSW5mbyxVaz17Y29tbWVudGFyeToxLGFsdGVybmF0ZToyLGR1YjozLG1haW46NH07dmFyIGNGPW5ldyBTZXQsUUM9bmV3IE1hcDt2YXIgUGVNPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMueVE9bjt0aGlzLk5kPXRoaXMuYnY9dGhpcy5ISj10aGlzLlY9dGhpcy5qPXRoaXMuSGk9dGhpcy5HQz10aGlzLmNKPSExO3RoaXMuWT10aGlzLks9MDt0aGlzLkN1PSExO3RoaXMudHc9ITA7dGhpcy5QWD0hMTt0aGlzLm5TPTA7dGhpcy5GRj10aGlzLm51PXRoaXMub0w9dGhpcy5lJD0hMTt0aGlzLk49e307dGhpcy5qVz10aGlzLlJhPXRoaXMudlg9dGhpcy5kaXNhYmxlQXYxPXRoaXMuYmQ9dGhpcy5Rcj10aGlzLnlFPXRoaXMuWVo9dGhpcy5CVj10aGlzLko9dGhpcy5XPXRoaXMuRD0hMTt0aGlzLlMkPTA7dGhpcy5UQz0hMTt0aGlzLnM1PXRoaXMueVEuUygiaHRtbDVfZGlzYWJsZV9hYWNfcHJlZmVyZW5jZSIpO3RoaXMud2E9SW5maW5pdHk7dGhpcy54ZD0wO3RoaXMuTEI9dGhpcy55US5XWCgpO3RoaXMuSEQ9dGhpcy55US5leHBlcmltZW50cy5FcSgiaHRtbDVfZW5hYmxlX3ZwOV9mYWlycGxheSIpO3RoaXMuTWQ9dGhpcy55US5TKCJodG1sNV9mb3JjZV9hdjFfZm9yX3Rlc3RpbmciKTsKdGhpcy55dz10aGlzLnlRLlp0KCkuTi5RUShWSWopO3RoaXMudko9Zy5kTSh0aGlzLnlRLmV4cGVyaW1lbnRzLCJodG1sNV9hdjFfb3JkaW5hbF9jYXAiKTt0aGlzLlU1PXRoaXMueVEuUygiaHRtbDVfZGlzYWJsZV9oZnJfd2hlbl92cDlfZW5jcnlwdGVkXzJrNGtfdW5zdXBwb3J0ZWQiKTt0aGlzLkU1PXRoaXMueVEuUygiaHRtbDVfYWNjb3VudF9vbmVzaWVfZm9ybWF0X3NlbGVjdGlvbl9kdXJpbmdfZm9ybWF0X2ZpbHRlciIpO3RoaXMuTnM9Zy5kTSh0aGlzLnlRLmV4cGVyaW1lbnRzLCJodG1sNV9tYXhfYnl0ZXJhdGUiKTt0aGlzLlZRPXRoaXMueVEuUygiaHRtbDVfZW5hYmxlX2lhbWZfYXVkaW8iKTt0aGlzLmZCPXRoaXMueVEuWnQoKS5OLlFRKFFPeCk7dGhpcy5EdD10aGlzLnlRLmV4cGVyaW1lbnRzLkVxKCJodG1sNV9hbGxvd19jYXBhYmlsaXR5X21lcmdlIik7dGhpcy5ZJD10aGlzLnlRLlMoImh0bWw1X2VuYWJsZV9lbmNyeXB0ZWRfYXYxIik7dGhpcy5ZWj10aGlzLnlRLlp0KCkuTi5RUShaN1UpfHwKdGhpcy55US5TKCJkaXNhYmxlX3ByZWZlcl9oYnJfdnA5Iil9fTt2YXIgcjE9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYil7dGhpcy5mbGF2b3I9bjt0aGlzLmtleVN5c3RlbT1XO3RoaXMuVz1EO3RoaXMuZXhwZXJpbWVudHM9Yjt0aGlzLko9e307dGhpcy5DaT10aGlzLmtleVN5c3RlbUFjY2Vzcz1udWxsO3RoaXMuamk9dGhpcy5WOT0tMTt0aGlzLkZjPW51bGw7dGhpcy5YPSEhYiYmYi5FcSgiZWRnZV9ub25wcmVmaXhlZF9lbWUiKTtiJiZiLkVxKCJodG1sNV9lbmFibGVfdnA5X2ZhaXJwbGF5Iil9Y2xvbmUobil7cmV0dXJuIG5ldyByMSh0aGlzLmZsYXZvcixuLHRoaXMuVyx0aGlzLmV4cGVyaW1lbnRzKX1OKCl7cmV0dXJuIHRoaXMua2V5U3lzdGVtPT09ImNvbS55b3V0dWJlLmZhaXJwbGF5LnNiZGwifXlyKCl7cmV0dXJue2ZsYXZvcjp0aGlzLmZsYXZvcixrZXlTeXN0ZW06dGhpcy5rZXlTeXN0ZW19fWtMKCl7c3dpdGNoKHRoaXMua2V5U3lzdGVtKXtjYXNlICJjb20ueW91dHViZS5wbGF5cmVhZHkiOnJldHVybiJQUlkiO2Nhc2UgImNvbS5taWNyb3NvZnQucGxheXJlYWR5IjpyZXR1cm4iUFJNIjsKY2FzZSAiY29tLndpZGV2aW5lLmFscGhhIjpyZXR1cm4iV1ZBIjtjYXNlICJjb20ueW91dHViZS53aWRldmluZS5sMyI6cmV0dXJuIldWWSI7Y2FzZSAiY29tLnlvdXR1YmUuZmFpcnBsYXkiOnJldHVybiJGUFkiO2Nhc2UgImNvbS55b3V0dWJlLmZhaXJwbGF5LnNiZGwiOnJldHVybiJGUEMiO2Nhc2UgImNvbS5hcHBsZS5mcHMuMV8wIjpyZXR1cm4iRlBBIjtkZWZhdWx0OnJldHVybiB0aGlzLmtleVN5c3RlbX19fSxxVj17cGxheXJlYWR5OlsiY29tLnlvdXR1YmUucGxheXJlYWR5IiwiY29tLm1pY3Jvc29mdC5wbGF5cmVhZHkiXSx3aWRldmluZTpbImNvbS55b3V0dWJlLndpZGV2aW5lLmwzIiwiY29tLndpZGV2aW5lLmFscGhhIl19LHZRQz17d2lkZXZpbmU6IkRSTV9TWVNURU1fV0lERVZJTkUiLGZhaXJwbGF5OiJEUk1fU1lTVEVNX0ZBSVJQTEFZIixwbGF5cmVhZHk6IkRSTV9TWVNURU1fUExBWVJFQURZIn0seFZpPXt3aWRldmluZToxLGZhaXJwbGF5OjIscGxheXJlYWR5OjN9O3ZhciBaV1M9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKG4sVyxELGI9ITEsdil7c3VwZXIoKTt0aGlzLnlRPVc7dGhpcy51c2VDb2JhbHRXaWRldmluZT1iO3RoaXMuVT12O3RoaXMuSj1bXTt0aGlzLlc9e307dGhpcy5OPXt9O3RoaXMuY2FsbGJhY2s9bnVsbDt0aGlzLmo9ITE7dGhpcy5YPVtdO3RoaXMuaW5pdGlhbGl6ZShuLCFEKX1pbml0aWFsaXplKG4sVyl7Zm9yKGxldCBiIG9mIE9iamVjdC5rZXlzKG4pKXt2YXIgRD1iO2ZvcihsZXQgdiBvZiBuW0RdKWlmKHYuY29udGVudFByb3RlY3Rpb24pZm9yKGxldCBrIG9mIE9iamVjdC5rZXlzKHYuY29udGVudFByb3RlY3Rpb24pKXtEPWs7bGV0IGg9cVZba107IWgmJnRoaXMuUygiaHRtbA=="}},"time_used":45,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":18,"receive":27,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/_/translate_http/_/ss/k=translate_http.tr.B7Dih9Jyjnw.L.F4.O/am=BIAABw/d=0/rs=AN8SPfpC04vrrzQXgs_TCM5EtruwfPzNtQ/m=el_main_css","fqdn":"www.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.643Z","timestamp":1785158433643,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /_/translate_http/_/ss/k=translate_http.tr.B7Dih9Jyjnw.L.F4.O/am=BIAABw/d=0/rs=AN8SPfpC04vrrzQXgs_TCM5EtruwfPzNtQ/m=el_main_css HTTP/1.1\r\nHost: www.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\ncontent-encoding: gzip\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/rosetta\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"rosetta\"\r\nreport-to: {\"group\":\"rosetta\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/rosetta\"}]}\r\ncontent-length: 3967\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:10:44 GMT\r\nexpires: Thu, 22 Jul 2027 13:10:44 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Thu, 09 Apr 2026 01:12:55 GMT\r\ncontent-type: text/css; charset=UTF-8\r\nvary: Accept-Encoding\r\nage: 432589\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":20284,"size_decoded":4799,"mime_type":"text/css; charset=UTF-8","magic":"ASCII text, with very long lines (20284), with no line terminators","md5":"fde4f72b90fe807270db3c332dd058df","sha1":"7ef4d70af01c38a7f80a7650be25f63aff4ba751","sha256":"ab31c9be358d2107fc1158434c7aeaaf15f82e3e405ed67ab236b5ac232ed159","sha512":"9bef39350af557afeb10cb71068426ab28befaf5295359954787be06a5ce0993d69e8f5018a5a17c44311d294dd1a87a6f82edd0f5743df0149b8e4e53061695","ssdeep":"192:nvqx/EhZINcrXsfg0SgG8CqA3uku9SJFzvQVMbnUIfIxIVVpTrecfzPtcmt4v78l:gMF8Sb3i0JFzourUqWMVpTrdfzPtcBG","tlshash":"c492872057aed01967efa82364d36dff71d444db90123eeaaf5a7352cd821f231ea214","first_seen":"2026-04-13T20:43:22.641436Z","last_seen":"2026-08-17T21:53:38.004931Z","times_seen":20531,"resource_available":false,"data":"LlZJcGdKZC1aVmk5b2QtT1JIYi1PRVZtY2R7bGVmdDowO3RvcDowO2hlaWdodDozOXB4O3dpZHRoOjEwMCU7ei1pbmRleDoxMDAwMDAwMTtwb3NpdGlvbjpmaXhlZDtib3JkZXI6bm9uZTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNkI5MERBO21hcmdpbjowO2JveC1zaGFkb3c6MCAwIDhweCAxcHggIzk5OX0uVklwZ0pkLVpWaTlvZC14bDA3T2ItT0VWbWNke3otaW5kZXg6MTAwMDAwMDI7Ym9yZGVyOm5vbmU7cG9zaXRpb246Zml4ZWQ7Ym94LXNoYWRvdzowIDNweCA4cHggMnB4ICM5OTl9LlZJcGdKZC1aVmk5b2QtU21mWi1PRVZtY2R7ei1pbmRleDoxMDAwMDAwMDtib3JkZXI6bm9uZTttYXJnaW46MH0uZ29vZy10ZS1nYWRnZXR7Zm9udC1mYW1pbHk6YXJpYWw7Zm9udC1zaXplOjExcHg7Y29sb3I6IzY2Njt3aGl0ZS1zcGFjZTpub3dyYXB9Lmdvb2ctdGUtZ2FkZ2V0IGltZ3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Ym9yZGVyOm5vbmV9Lmdvb2ctdGUtZ2FkZ2V0LXNpbXBsZXtiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICNENUQ1RDU7Ym9yZGVyLXRvcDoxcHggc29saWQgIzlCOUI5Qjtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjRThFOEU4O2JvcmRlci1yaWdodDoxcHggc29saWQgI0Q1RDVENTtmb250LXNpemU6MTBwdDtkaXNwbGF5OmlubGluZS1ibG9jaztwYWRkaW5nLXRvcDoxcHg7cGFkZGluZy1ib3R0b206MnB4O2N1cnNvcjpwb2ludGVyfS5nb29nLXRlLWdhZGdldC1pY29ue21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4O3dpZHRoOjE5cHg7aGVpZ2h0OjE5cHg7Ym9yZGVyOm5vbmU7dmVydGljYWwtYWxpZ246bWlkZGxlfS5nb29nLXRlLWNvbWJve21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4O3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS5nb29nLXRlLWdhZGdldCAuZ29vZy10ZS1jb21ib3ttYXJnaW46NHB4IDB9LlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDphY3RpdmUsLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkOmhvdmVyLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDpsaW5rLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDp2aXNpdGVke2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojNDQ0O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLU9SSGIgLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkLC5WSXBnSmQtWlZpOW9kLVR2RDlQYy1oU1JHUGR7ZGlzcGxheTpibG9jazttYXJnaW46MCAxMHB4fS5WSXBnSmQtWlZpOW9kLU9SSGIgLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1Bke3BhZGRpbmctdG9wOjJweDtwYWRkaW5nLWxlZnQ6NHB4fS5WSXBnSmQtWlZpOW9kLU9SSGIgKiwuVklwZ0pkLVpWaTlvZC1TbWZaICosLlZJcGdKZC1aVmk5b2QtbDl4a3RmICosLlZJcGdKZC1aVmk5b2QtdkgxR21mICosLlZJcGdKZC1aVmk5b2QteGwwN09iICosLmdvb2ctdGUtY29tYm97Zm9udC1mYW1pbHk6YXJpYWw7Zm9udC1zaXplOjEwcHR9LlZJcGdKZC1aVmk5b2QtT1JIYnttYXJnaW46MDtiYWNrZ3JvdW5kLWNvbG9yOiNFNEVGRkI7b3ZlcmZsb3c6aGlkZGVufS5WSXBnSmQtWlZpOW9kLU9SSGIgaW1ne2JvcmRlcjpub25lfS5WSXBnSmQtWlZpOW9kLU9SSGItYk45N1Bje2NvbG9yOiMwMDB9LlZJcGdKZC1aVmk5b2QtT1JIYi1iTjk3UGMgaW1ne3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uVklwZ0pkLVpWaTlvZC1PUkhiLVRzd3YxYntjb2xvcjojNjY2O3ZlcnRpY2FsLWFsaWduOnRvcDttYXJnaW4tdG9wOjA7Zm9udC1zaXplOjdwdH0uVklwZ0pkLVpWaTlvZC1PUkhiLUtFNnZxZXt3aWR0aDo4cHh9LlZJcGdKZC1aVmk5b2QtTGdic1Nle2JvcmRlci1jb2xvcjojRTdFN0U3O2JvcmRlci1zdHlsZTpub25lIHNvbGlkIHNvbGlkIG5vbmU7Ym9yZGVyLXdpZHRoOjAgMXB4IDFweCAwfS5WSXBnSmQtWlZpOW9kLUxnYnNTZSBkaXZ7Ym9yZGVyLWNvbG9yOiNDQ0MgIzk5OSAjOTk5ICNDQ0M7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjOTk5O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O2hlaWdodDoyMHB4fS5WSXBnSmQtWlZpOW9kLUxnYnNTZSBidXR0b257YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtjdXJzb3I6cG9pbnRlcjtoZWlnaHQ6MjBweDtvdmVyZmxvdzpoaWRkZW47bWFyZ2luOjA7dmVydGljYWwtYWxpZ246dG9wO3doaXRlLXNwYWNlOm5vd3JhcH0uVklwZ0pkLVpWaTlvZC1MZ2JzU2UgYnV0dG9uOmFjdGl2ZXtiYWNrZ3JvdW5kOm5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgI0NDQ30uVklwZ0pkLVpWaTlvZC1TbWZae21hcmdpbjowO2JhY2tncm91bmQtY29sb3I6I0ZGRjt3aGl0ZS1zcGFjZTpub3dyYXB9LlZJcGdKZC1aVmk5b2QtU21mWi1oU1JHUGR7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtc2l6ZToxMHB0O2JvcmRlcjoxcHggb3V0c2V0ICM4ODg7cGFkZGluZzo2cHggMTBweDt3aGl0ZS1zcGFjZTpub3dyYXA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowfS5WSXBnSmQtWlZpOW9kLVNtZlotaFNSR1BkIGltZ3ttYXJnaW4tbGVmdDoycHg7bWFyZ2luLXJpZ2h0OjJweDt3aWR0aDoxOXB4O2hlaWdodDoxOXB4O2JvcmRlcjpub25lO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZCBzcGFue3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7bWFyZ2luLWxlZnQ6MnB4O21hcmdpbi1yaWdodDoycHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS5nb29nLXRlLWZsb2F0LXRvcCAuVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZHtwYWRkaW5nOjJweDtib3JkZXItdG9wLXdpZHRoOjB9Lmdvb2ctdGUtZmxvYXQtYm90dG9tIC5WSXBnSmQtWlZpOW9kLVNtZlotaFNSR1Bke3BhZGRpbmc6MnB4O2JvcmRlci1ib3R0b20td2lkdGg6MH0uVklwZ0pkLVpWaTlvZC14bDA3T2ItbFRCeGVke3RleHQtZGVjb3JhdGlvbjpub25lO2NvbG9yOiMwMEM7d2hpdGUtc3BhY2U6bm93cmFwO21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4fS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQgc3Bhbnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQgaW1ne21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4fS5nb29nLXRlLWdhZGdldC1zaW1wbGUgLlZJcGdKZC1aVmk5b2QteGwwN09iLWxUQnhlZHtjb2xvcjojMDAwfS5nb29nLXRlLWdhZGdldC1zaW1wbGUgLlZJcGdKZC1aVmk5b2QteGwwN09iLWxUQnhlZCBzcGFue3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYntiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Ym9yZGVyOjJweCBzb2xpZCAjQzNEOUZGO292ZXJmbG93LXk6c2Nyb2xsO292ZXJmbG93LXg6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MH0uVklwZ0pkLVpWaTlvZC14bDA3T2ItaWJuQzZie3BhZGRpbmc6M3B4O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmIsLlZJcGdKZC1aVmk5b2QteGwwN09iLWlibkM2YjpsaW5re2NvbG9yOiMwMEM7YmFja2dyb3VuZDojRkZGfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6dmlzaXRlZHtjb2xvcjojNTUxQThCfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6aG92ZXJ7YmFja2dyb3VuZDojQzNEOUZGfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6YWN0aXZle2NvbG9yOiMwMEN9LlZJcGdKZC1aVmk5b2QtdkgxR21me2JhY2tncm91bmQtY29sb3I6I0ZGRjt0ZXh0LWRlY29yYXRpb246bm9uZTtib3JkZXI6MXB4IHNvbGlkICM2QjkwREE7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6NHB4fS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1LcmhQTmJ7d2lkdGg6MTZweH0uVklwZ0pkLVpWaTlvZC12SDFHbWYtaGdEVXdle21hcmdpbjo2cHggMDtoZWlnaHQ6MXB4O2JhY2tncm91bmQtY29sb3I6I2FhYTtvdmVyZmxvdzpoaWRkZW59LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YiBkaXYsLlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQgZGl2e3BhZGRpbmc6NHB4fS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmIgLnVERUZnZXtkaXNwbGF5Om5vbmV9LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQgLmZtY21Te3BhZGRpbmctbGVmdDo0cHg7cGFkZGluZy1yaWdodDo0cHh9LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZHt0ZXh0LWRlY29yYXRpb246bm9uZX0uVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiOmFjdGl2ZSBkaXYsLlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YjpsaW5rIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiOnZpc2l0ZWQgZGl2e2NvbG9yOiMwMEM7YmFja2dyb3VuZDojRkZGfS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmI6aG92ZXIgZGl2e2NvbG9yOiNGRkY7YmFja2dyb3VuZDojMzZDfS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDphY3RpdmUgZGl2LC5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kOmhvdmVyIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDpsaW5rIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDp2aXNpdGVkIGRpdntjb2xvcjojMDAwO2ZvbnQtd2VpZ2h0OjcwMH0uVklwZ0pkLVpWaTlvZC1sOXhrdGZ7YmFja2dyb3VuZC1jb2xvcjojRkZGO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjhweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjEwcHh9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLU9FVm1jZHtiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7Ym9yZGVyOjFweCBzb2xpZCAjNkI5MERBO2JveC1zaGFkb3c6MCAzcHggOHB4IDJweCAjOTk5O2JvcmRlci1yYWRpdXM6OHB4fS5WSXBnSmQtWlZpOW9kLWw5eGt0ZiBpbWd7Ym9yZGVyOm5vbmV9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLWZtY21Te21hcmdpbi10b3A6NnB4fS5WSXBnSmQtWlZpOW9kLWw5eGt0Zi1WZ3dKbGN7bWFyZ2luLXRvcDo2cHg7d2hpdGUtc3BhY2U6bm93cmFwfS5WSXBnSmQtWlZpOW9kLWw5eGt0Zi1WZ3dKbGMgKnt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLVZnd0psYyAuRFVHSmlle2JhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vd3d3Jmdvb2dsZS5jb20vaW1hZ2VzL3ppcHB5X21pbnVzX3NtLmdpZil9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLVZnd0psYyAuVGR5VERle2JhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vd3d3Jmdvb2dsZS5jb20vaW1hZ2VzL3ppcHB5X3BsdXNfc20uZ2lmKX0uVklwZ0pkLVpWaTlvZC1sOXhrdGYtVmd3SmxjIHNwYW57Y29sb3I6IzAwQzt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO2N1cnNvcjpwb2ludGVyO21hcmdpbjowIDRweH0uVklwZ0pkLVpWaTlvZC1sOXhrdGYtSTlHTHB7bWFyZ2luOjZweCAwIDB9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLUk5R0xwIGZvcm17bWFyZ2luOjB9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLUk5R0xwIGZvcm0gdGV4dGFyZWF7bWFyZ2luLWJvdHRvbTo0cHg7d2lkdGg6MTAwJX0uVklwZ0pkLVpWaTlvZC1sOXhrdGYteWVQZTVje21hcmdpbjo2cHggMCA0cHh9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLXdPSE15Znt6LWluZGV4OjEwMDA7cG9zaXRpb246Zml4ZWQ7dHJhbnNpdGlvbi1kZWxheTouNnM7bGVmdDotMTAwMHB4O3RvcDotMTAwMHB4fS5WSXBnSmQtWlZpOW9kLWFaMndFZS13T0hNeWYtdGk2aEdje3RyYW5zaXRpb24tZGVsYXk6MHM7bGVmdDotMTRweDt0b3A6LTE0cHh9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDRweDtoZWlnaHQ6MTA0cHg7Ym9yZGVyLXJhZGl1czo1MHB4O2JhY2tncm91bmQ6I0ZGRiB1cmwoaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL3Byb2R1Y3QvMngvdHJhbnNsYXRlXzI0ZHAucG5nKSA1MCUgNTAlIG5vLXJlcGVhdDt0cmFuc2l0aW9uOmFsbCAuNnMgZWFzZS1pbi1vdXQ7dHJhbnNmb3JtOnNjYWxlKC40KTtvcGFjaXR5OjB9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPLXRpNmhHY3t0cmFuc2Zvcm06c2NhbGUoLjUpO29wYWNpdHk6MX0uVklwZ0pkLVpWaTlvZC1hWjJ3RWV7bWFyZ2luOjJweCAwIDAgMnB4O2FuaW1hdGlvbjpzcGlubmVyLXJvdGF0b3IgMS40cyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyBzcGlubmVyLXJvdGF0b3J7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDI3MGRlZyl9fS5WSXBnSmQtWlZpOW9kLWFaMndFZS1KdDVjS3tzdHJva2UtZGFzaGFycmF5OjE4NztzdHJva2UtZGFzaG9mZnNldDowO3N0cm9rZTojNDI4NUY0O3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO2FuaW1hdGlvbjpzcGlubmVyLWRhc2ggMS40cyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHNwaW5uZXItZGFzaHswJXtzdHJva2UtZGFzaG9mZnNldDoxODd9NTAle3N0cm9rZS1kYXNob2Zmc2V0OjQ2Ljc1O3RyYW5zZm9ybTpyb3RhdGUoMTM1ZGVnKX10b3tzdHJva2UtZGFzaG9mZnNldDoxODc7dHJhbnNmb3JtOnJvdGF0ZSg0NTBkZWcpfX0uVklwZ0pkLXlBV05FYi1MN2xia2IgYSwuVklwZ0pkLXlBV05FYi1MN2xia2IgYm9keSwuVklwZ0pkLXlBV05FYi1MN2xia2IgZGl2LC5WSXBnSmQteUFXTkViLUw3bGJrYiBmb3JtLC5WSXBnSmQteUFXTkViLUw3bGJrYiBoMSwuVklwZ0pkLXlBV05FYi1MN2xia2IgaDIsLlZJcGdKZC15QVdORWItTDdsYmtiIGgzLC5WSXBnSmQteUFXTkViLUw3bGJrYiBoNCwuVklwZ0pkLXlBV05FYi1MN2xia2IgaDUsLlZJcGdKZC15QVdORWItTDdsYmtiIGg2LC5WSXBnSmQteUFXTkViLUw3bGJrYiBodG1sLC5WSXBnSmQteUFXTkViLUw3bGJrYiBpZnJhbWUsLlZJcGdKZC15QVdORWItTDdsYmtiIGltZywuVklwZ0pkLXlBV05FYi1MN2xia2IgbGksLlZJcGdKZC15QVdORWItTDdsYmtiIG9sLC5WSXBnSmQteUFXTkViLUw3bGJrYiBwLC5WSXBnSmQteUFXTkViLUw3bGJrYiBzcGFuLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0YWJsZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgdGJvZHksLlZJcGdKZC15QVdORWItTDdsYmtiIHRkLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0ciwuVklwZ0pkLXlBV05FYi1MN2xia2IgdWx7YWxsOnVuc2V0O2ZvbnQtc2l6ZToxMDAlO2xpbmUtaGVpZ2h0Om5vcm1hbH0uVklwZ0pkLXlBV05FYi1MN2xia2Igb2wsLlZJcGdKZC15QVdORWItTDdsYmtiIHVse2xpc3Qtc3R5bGU6bm9uZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgdGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9LlZJcGdKZC15QVdORWItTDdsYmtiIGNhcHRpb24sLlZJcGdKZC15QVdORWItTDdsYmtiIHRkLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0aHt0ZXh0LWFsaWduOmxlZnQ7Zm9udC13ZWlnaHQ6NDAwfS5WSXBnSmQteUFXTkViLUw3bGJrYiBpbnB1dDo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MH1kaXY+LlZJcGdKZC15QVdORWItTDdsYmtie3BhZGRpbmc6MTBweCAxNHB4fS5WSXBnSmQteUFXTkViLUw3bGJrYntjb2xvcjojMjIyO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNlZWU7Ym94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpOy1tb3otYm94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpOy13ZWJraXQtYm94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpO2Rpc3BsYXk6bm9uZTtmb250LWZhbWlseTphcmlhbDtmb250LXNpemU6MTBwdDt3aWR0aDo0MjBweDtwYWRkaW5nOjEycHg7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMDAwMH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItblZNZmNkLWZtY21TLC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtcGJUVFlle2NsZWFyOmJvdGg7Zm9udC1zaXplOjEwcHQ7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpqdXN0aWZ5O3dpZHRoOjEwMCV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXI0bmtle2NvbG9yOiM5OTk7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjttYXJnaW46NHB4IDA7dGV4dC1hbGlnbjpsZWZ0fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UdkQ5UGMtTGdic1Nle2Rpc3BsYXk6bm9uZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItbDRlSFh7ZmxvYXQ6bGVmdDttYXJnaW46MH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItWjBBcnFmLVBMRGJiZntkaXNwbGF5OmlubGluZS1ibG9ja30uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItZnc0MlplLVowQXJxZi1oYUFjbGZ7ZGlzcGxheTpub25lO3dpZHRoOjEwMCV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVowQXJxZi1IOXREdHttYXJnaW4tdG9wOjIwcHh9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUxLNXl1e2Zsb2F0OmxlZnR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXF3VThNZXtmbG9hdDpyaWdodH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItY0dNSTJie21pbi1oZWlnaHQ6MTVweDtwb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MSV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLWpPZmtNYi1OZTNzRmZ7YmFja2dyb3VuZDotbXMtbGluZWFyLWdyYWRpZW50KHRvcCwjMjk5MTBkIDAsIzIwYWYwZSAxMDAlKTtiYWNrZ3JvdW5kOiMyOTkxMGQ7Ym9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDstd2Via2l0LWJvcmRlci1yYWRpdXM6NHB4O2JveC1zaGFkb3c6aW5zZXQgMCAycHggMnB4ICMxZTY2MDk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMnB4IDJweCAjMWU2NjA5Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDJweCAycHggIzFlNjYwOTtjb2xvcjp3aGl0ZTtmb250LXNpemU6OXB0O2ZvbnQtd2VpZ2h0OmJvbGRlcjttYXJnaW4tdG9wOjEycHg7cGFkZGluZzo2cHg7dGV4dC1zaGFkb3c6MXB4IDFweCAxcHggIzFlNjYwOX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItWjBBcnFmLWhTUkdQZHtjb2xvcjojMTVjO2N1cnNvcjpwb2ludGVyO2ZvbnQtZmFtaWx5OmFyaWFsO2ZvbnQtc2l6ZToxMXB4O21hcmdpbi1yaWdodDoxNXB4O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQteUFXTkViLUw3bGJrYj50ZXh0YXJlYXtmb250LWZhbWlseTphcmlhbDtyZXNpemU6dmVydGljYWw7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjEwcHg7Ym9yZGVyLXJhZGl1czoxcHg7Ym9yZGVyOjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci10b3A6MXB4IHNvbGlkIHNpbHZlcjtmb250LXNpemU6MTNweDtoZWlnaHQ6YXV0bztvdmVyZmxvdy15OmF1dG87cGFkZGluZzoxcHh9LlZJcGdKZC15QVdORWItTDdsYmtiIHRleHRhcmVhOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjMpO2JvcmRlcjoxcHggc29saWQgIzRkOTBmZTtvdXRsaW5lOm5vbmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVowQXJxZi1JYkUwU3ttYXJnaW4tcmlnaHQ6MTBweH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwe21pbi1oZWlnaHQ6MjVweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7cGFkZGluZy10b3A6OHB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwe21hcmdpbi1ib3R0b206NXB4O21hcmdpbi1ib3R0b206MH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dHtkaXNwbGF5OmlubGluZS1ibG9jazttaW4td2lkdGg6NTRweDsqbWluLXdpZHRoOjcwcHg7Ym9yZGVyOjFweCBzb2xpZCAjZGNkY2RjO2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwuMSk7dGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6IzQ0NDtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo3MDA7aGVpZ2h0OjI3cHg7b3V0bGluZTowO3BhZGRpbmc6MCA4cHg7dmVydGljYWwtYWxpZ246bWlkZGxlO2xpbmUtaGVpZ2h0OjI3cHg7bWFyZ2luOjAgMTZweCAwIDA7Ym94LXNoYWRvdzowIDFweCAycHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKTstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246YWxsIC4yMThzO2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2Y1ZjVmNSwjZjFmMWYxKTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lO2N1cnNvcjpkZWZhdWx0fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmhvdmVye2JvcmRlcjoxcHggc29saWQgI2M2YzZjNjtjb2xvcjojMjIyO3RyYW5zaXRpb246YWxsIDBzO2JhY2tncm91bmQtY29sb3I6I2Y4ZjhmODtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2Y4ZjhmOCwjZjFmMWYxKX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDphY3RpdmV7Ym9yZGVyOjFweCBzb2xpZCAjYzZjNmM2O2NvbG9yOiMzMzM7YmFja2dyb3VuZC1jb2xvcjojZjZmNmY2O2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KHRvcCwjZjZmNmY2LCNmMWYxZjEpfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmZvY3VzIC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0LkFIbXV3ZSAuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDphY3RpdmUsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQ6Zm9jdXM6YWN0aXZle2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4IHJnYmEoMjU1LDI1NSwyNTUsLjUpOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggcmdiYSgyNTUsMjU1LDI1NSwuNSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCByZ2JhKDI1NSwyNTUsMjU1LC41KX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dC5BSG11d2UsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQ6Zm9jdXN7b3V0bGluZTpub25lO2JvcmRlcjoxcHggc29saWQgIzRkOTBmZTt6LWluZGV4OjQhaW1wb3J0YW50fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0LmdrNlNNZHtiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCNlZWUsI2UwZTBlMCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMSk7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2NvbG9yOiMzMzN9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZntjb2xvcjp3aGl0ZTtib3JkZXItY29sb3I6IzMwNzllZDtiYWNrZ3JvdW5kLWNvbG9yOiM0ZDkwZmU7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCM0ZDkwZmUsIzQ3ODdlZCl9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZi5BSG11d2UgLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZjphY3RpdmUsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZjpob3ZlciAuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmZvY3Vze2JvcmRlci1jb2xvcjojMzA3OWVkO2JhY2tncm91bmQtY29sb3I6IzM1N2FlODtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsIzRkOTBmZSwjMzU3YWU4KX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmhvdmVye2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNmZmYsMCAxcHggMXB4IHJnYmEoMCwwLDAsLjEpOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2ZmZiwwIDFweCAxcHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCAjZmZmLDAgMXB4IDFweCByZ2JhKDAsMCwwLC4xKX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmLkFIbXV3ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmFjdGl2ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmZvY3VzLC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0IC5WSXBnSmQteUFXTkViLVowQXJxZi1zRmVCcWY6aG92ZXIsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQuQUhtdXdlLC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmFjdGl2ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDpmb2N1cywuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDpob3Zlcntib3JkZXItY29sb3I6IzMwNzllZH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItbXJ4UGdle2NvbG9yOiM5OTk7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZn0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLVcwdkpvLWZtY21Te2NvbG9yOiM5OTk7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjttYXJnaW46MTVweCAwIDVweH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXUwcGpvZS1mbWNtU3tjb2xvcjojODAwO2Rpc3BsYXk6bm9uZTtmb250LXNpemU6OXB0fS5WSXBnSmQteUFXTkViLVZJcGdKZC1mbWNtUy1zbjU0UXtiYWNrZ3JvdW5kLWNvbG9yOiNjOWQ3ZjE7Ym94LXNoYWRvdzoycHggMnB4IDRweCAjOTlhO2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtwb3NpdGlvbjpyZWxhdGl2ZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXhsMDdPYiAuVklwZ0pkLXlBV05FYi1WSXBnSmQteGwwN09ie2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNkZGQ7Ym94LXNoYWRvdzowIDJweCA0cHggIzk5YTttaW4td2lkdGg6MDtvdXRsaW5lOm5vbmU7cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MjAwMH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXhsMDdPYiAuVklwZ0pkLXlBV05FYi1WSXBnSmQtajdMRmxie2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MnB4IDVweCA1cHg7bWFyZ2luLXJpZ2h0OjA7Ym9yZGVyLXN0eWxlOm5vbmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC14bDA3T2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYjpob3ZlcntiYWNrZ3JvdW5kOiNkZGR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC14bDA3T2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYiBoMXtmb250LXNpemU6MTAwJTtmb250LXdlaWdodDo3MDA7bWFyZ2luOjRweCAwfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQteGwwN09iIC5WSXBnSmQteUFXTkViLVZJcGdKZC1qN0xGbGIgc3Ryb25ne2NvbG9yOiMzNDVhYWR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVZJcGdKZC1lS201RmMtaEZzYm97dGV4dC1hbGlnbjpyaWdodDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO2xlZnQ6YXV0b30uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYi1TSXNyVGQgLlZJcGdKZC15QVdORWItVklwZ0pkLWVLbTVGYy1oRnNib3t0ZXh0LWFsaWduOmxlZnQ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OmF1dG99LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVRWTHc5Yy1wcEhscmYtc241NFEsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtZm1jbVN7YmFja2dyb3VuZC1jb2xvcjojZjFlYTAwO2JvcmRlci1yYWRpdXM6NHB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDtib3gtc2hhZG93OjNweCAzcHggNHB4IHJnYmEoMCwwLDAsLjUpO2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjojZjFlYTAwO2N1cnNvcjpwb2ludGVyO21hcmdpbjotMnB4IC0ycHggLTJweCAtM3B4O3BhZGRpbmc6MnB4IDJweCAycHggM3B4O3Bvc2l0aW9uOnJlbGF0aXZlfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtcHBIbHJmLXNuNTRRe2NvbG9yOiMyMjJ9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtcGJUVFlle2NvbG9yOndoaXRlO3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVFZMdzljLXBwSGxyZiwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVFZMdzljLXBwSGxyZiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtcHBIbHJmLXNuNTRRe2JhY2tncm91bmQtY29sb3I6I2M5ZDdmMTtib3JkZXItcmFkaXVzOjRweCA0cHggMCAwOy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHggNHB4IDAgMDstbW96LWJvcmRlci1yYWRpdXM6NHB4IDRweCAwIDA7Ym94LXNoYWRvdzozcHggM3B4IDRweCByZ2JhKDAsMCwwLC41KTtib3gtc2l6aW5nOmJvcmRlci1ib3g7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXI7bWFyZ2luOi0ycHggLTJweCAtMnB4IC0zcHg7cGFkZGluZzoycHggMnB4IDNweCAzcHg7cG9zaXRpb246cmVsYXRpdmV9LlZJcGdKZC15QVdORWItTDdsYmtiIHNwYW46Zm9jdXN7b3V0bGluZTpub25lfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtRHlWREF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6MXB4IHNvbGlkICM0ZDkwZmU7Ym9yZGVyLXJhZGl1czowOy13ZWJraXQtYm9yZGVyLXJhZGl1czowOy1tb3otYm9yZGVyLXJhZGl1czowO21hcmdpbjotMnB4O3BhZGRpbmc6MXB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi15QVdORWItVFZMdzljLXNuNTRRLUx6WDNlZntib3JkZXItbGVmdDoycHggc29saWQgcmVkO21hcmdpbi1sZWZ0Oi0ycHh9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1UVkx3OWMtc241NFEtWUlBaUlie2JvcmRlci1yaWdodDoycHggc29saWQgcmVkO21hcmdpbi1yaWdodDotMnB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJme3BhZGRpbmc6MnB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21Te2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6MnB4IDJweCAzcHg7bWFyZ2luOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMzMzM7Ym9yZGVyOjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci10b3A6MXB4IHNvbGlkICNjMGMwYzA7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246dG9wO2hlaWdodDoyMXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJvcmRlci1yYWRpdXM6MXB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21TOmhvdmVye2JvcmRlcjoxcHggc29saWQgI2I5YjliOTtib3JkZXItdG9wOjFweCBzb2xpZCAjYTBhMGEwO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21TOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjMpO291dGxpbmU6bm9uZTtib3JkZXI6MXB4IHNvbGlkICM0ZDkwZmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC1ZUHFqYmYtc0ZlQnFme2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6MnB4IDZweCAzcHg7bWFyZ2luOjAgMCAwIDJweDtoZWlnaHQ6MjFweH0uVklwZ0pkLXlBV05FYi1MN2xia2I+ZGl2e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmb250LWZhbWlseTpHb29nbGUgU2FucyxBcmlhbCxzYW5zLXNlcmlmfS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtVWQ3ZnJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246ZW5kO2FsaWduLWl0ZW1zOmVuZDttYXJnaW46MTRweH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLUl1aXpXYy1TSXNyVGR7bWFyZ2luLXJpZ2h0OjE0cHg7Y29sb3I6Izc0Nzc3NTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1JdWl6V2MtaTNqTThje21hcmdpbi1sZWZ0OjE0cHg7Y29sb3I6Izc0Nzc3NTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1rNzdJaWZ7bWFyZ2luOjAgMTZweCAxNnB4fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtYXhBVjF7d2lkdGg6YXV0bztjb2xvcjojMWYxZjFmO2ZvbnQtc2l6ZToxNnB4O3RleHQtYWxpZ246aW5pdGlhbH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLWF4QVYxIC5WSXBnSmQteUFXTkViLVNJc3JUZHt0ZXh0LWFsaWduOnJpZ2h0fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlke2JvcmRlci1yYWRpdXM6MCAwIDEycHggMTJweDttYXJnaW46MDtiYWNrZ3JvdW5kOiNmMWY0Zjk7cG9zaXRpb246cmVsYXRpdmU7bWluLWhlaWdodDo1MHB4fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkIC5WSXBnSmQteUFXTkViLVNJc3JUZHt0ZXh0LWFsaWduOnJpZ2h0fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkLUI3STRPZHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47d2lkdGg6NzclO3BhZGRpbmc6MTJweH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLU43RXFpZC1CN0k0T2QgLlZJcGdKZC15QVdORWItU0lzclRke3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1VVHVqQ2J7Y29sb3I6IzFmMWYxZjtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIC5WSXBnSmQteUFXTkViLVNJc3JUZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtVVR1akNie3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1lTzltS2V7Y29sb3I6IzQ0NDc0Njtmb250LXNpemU6MTJweDtwYWRkaW5nLXRvcDo0cHh9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIC5WSXBnSmQteUFXTkViLVNJc3JUZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtZU85bUtle3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC14Z292NXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtyaWdodDo1cHh9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC14Z292NSAuVklwZ0pkLXlBV05FYi1TSXNyVGR7bGVmdDo1cHg7cmlnaHQ6YXV0b30uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLVRISTZWYntmaWxsOiMwYjU3ZDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1iZ202c2Z7bWFyZ2luOi00cHggMnB4IDAgMDtwYWRkaW5nOjJweCAwIDA7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjI0cHg7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZDpub25lfS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtYmdtNnNmOmhvdmVye2JhY2tncm91bmQ6I2U4ZWJlY30uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLWFYWVRjZXtkaXNwbGF5Om5vbmV9c2VudGluZWx7fQ=="}},"time_used":17,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":17,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.googleapis.com/_/translate_http/_/js/k=translate_http.tr.no.scrnY6Q2_yw.O/am=BIAABw/d=1/exm=el_conf/ed=1/rs=AN8SPfq1KlUFqeiFvBMudduzGtb39QWXuw/m=el_main","fqdn":"translate.googleapis.com","domain":"translate.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.767Z","timestamp":1785158432767,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"upload.video.google.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:27 GMT","end":"Mon, 21 Sep 2026 08:39:26 GMT"},"fingerprint":{"sha1":"50:37:CF:61:33:A1:EE:47:D9:3D:A6:5E:07:BA:4C:FF:F7:25:9F:76","sha256":"7D:4D:21:06:63:E2:5E:F0:8C:59:8E:EB:B7:94:2B:81:70:11:D3:F4:C0:A0:81:A6:1B:E7:27:FD:56:10:1A:11"}}},"request":{"raw":"GET /_/translate_http/_/js/k=translate_http.tr.no.scrnY6Q2_yw.O/am=BIAABw/d=1/exm=el_conf/ed=1/rs=AN8SPfq1KlUFqeiFvBMudduzGtb39QWXuw/m=el_main HTTP/1.1\r\nHost: translate.googleapis.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\naccept-ranges: bytes\r\ncontent-encoding: gzip\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/rosetta\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"rosetta\"\r\nreport-to: {\"group\":\"rosetta\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/rosetta\"}]}\r\ncontent-length: 67956\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 18:00:05 GMT\r\nexpires: Thu, 22 Jul 2027 18:00:05 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Tue, 21 Jul 2026 20:35:41 GMT\r\ncontent-type: text/javascript; charset=UTF-8\r\nvary: Accept-Encoding\r\nage: 415228\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":194344,"size_decoded":68816,"mime_type":"text/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (2519)","md5":"cdf9309b56a4ff330627409baead2538","sha1":"e98eac16441e99c9512052eb0087f535b9a609b9","sha256":"310629c4e47d7960e5a89cbd6a9c1d24a4e4d7c5e18346a69a67d92355cf2cd4","sha512":"cafd13a201e26b9f94f9a636ca1f7c191ec3a9fc3f297d35ee51b1304962383e7147509932a759bd903e27e53fb251600ad6942739e472161f5a09367c3776c1","ssdeep":"3072:kjsNxt45eITHt28KRu9gKavNuBDHK0QppB0/I:osb0muBzg","tlshash":"dd14e8d9b26270679263f4a5403f004eb53b68a5f9484dacb28de8e26df4d19017bf7c","first_seen":"2026-07-22T18:30:16.180779Z","last_seen":"2026-07-27T19:37:31.609707Z","times_seen":2601,"resource_available":true,"data":"InVzZSBzdHJpY3QiO3RoaXMuZGVmYXVsdF90cj10aGlzLmRlZmF1bHRfdHJ8fHt9OyhmdW5jdGlvbihfKXt2YXIgd2luZG93PXRoaXM7CnRyeXsKdmFyIEdnLEhnLElnLFhnLGNoLGloLGpoLGxoLG1oLG9oLHNoLHVoLHRoLEFoLEJoLEZoLERoLEVoLERnO18uRWc9ZnVuY3Rpb24oYSl7aWYoRGcudGVzdChhKSlyZXR1cm4gYX07Xy5GZz1mdW5jdGlvbihhLGIpe2EuX19jbG9zdXJlX19lcnJvcl9fY29udGV4dF9fOTg0MzgyfHwoYS5fX2Nsb3N1cmVfX2Vycm9yX19jb250ZXh0X185ODQzODI9e30pO2EuX19jbG9zdXJlX19lcnJvcl9fY29udGV4dF9fOTg0MzgyLnNldmVyaXR5PWJ9O0dnPWZ1bmN0aW9uKGEpe2lmKCFfLlVhfHwhXy5WYSlyZXR1cm4hMTtmb3IodmFyIGI9MDtiPF8uVmEuYnJhbmRzLmxlbmd0aDtiKyspe3ZhciBjPV8uVmEuYnJhbmRzW2JdLmJyYW5kO2lmKGMmJmMuaW5kZXhPZihhKSE9LTEpcmV0dXJuITB9cmV0dXJuITF9O0hnPWZ1bmN0aW9uKCl7cmV0dXJuIF8udygiRmlyZWZveCIpfHxfLncoIkZ4aU9TIil9OwpJZz1mdW5jdGlvbigpe3JldHVybiBfLldhKCk/R2coIkNocm9taXVtIik6KF8udygiQ2hyb21lIil8fF8udygiQ3JpT1MiKSkmJiEoXy5XYSgpPzA6Xy53KCJFZGdlIikpfHxfLncoIlNpbGsiKX07Xy5KZz1mdW5jdGlvbigpe3JldHVybiBfLncoIlNhZmFyaSIpJiYhKElnKCl8fChfLldhKCk/MDpfLncoIkNvYXN0IikpfHxfLlhhKCl8fChfLldhKCk/MDpfLncoIkVkZ2UiKSl8fChfLldhKCk/R2coIk1pY3Jvc29mdCBFZGdlIik6Xy53KCJFZGcvIikpfHwoXy5XYSgpP0dnKCJPcGVyYSIpOl8udygiT1BSIikpfHxIZygpfHxfLncoIlNpbGsiKXx8Xy53KCJBbmRyb2lkIikpfTtfLktnPWZ1bmN0aW9uKCl7cmV0dXJuIF8udygiQW5kcm9pZCIpJiYhKElnKCl8fEhnKCl8fF8uWGEoKXx8Xy53KCJTaWxrIikpfTsKXy5NZz1mdW5jdGlvbihhLGIpe2lmKGEhPW51bGwpe3ZhciBjO3ZhciBkPShjPUxnKSE9bnVsbD9jOkxnPXt9O2M9ZFthXXx8MDtjPj1ifHwoZFthXT1jKzEsYT1FcnJvcigpLF8uRmcoYSwiaW5jaWRlbnQiKSxfLnJiKGEpKX19O18uTmc9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiB0eXBlb2YgU3ltYm9sPT09ImZ1bmN0aW9uIiYmdHlwZW9mIFN5bWJvbCgpPT09InN5bWJvbCI/KGM9PT12b2lkIDA/MDpjKSYmU3ltYm9sLmZvciYmYT9TeW1ib2wuZm9yKGEpOmEhPW51bGw/U3ltYm9sKGEpOlN5bWJvbCgpOmJ9O18uUmc9ZnVuY3Rpb24oYSxiKXtfLk9nfHxfLkggaW4gYXx8UGcoYSxRZyk7YVtfLkhdfD1ifTtfLlNnPWZ1bmN0aW9uKGEsYil7Xy5PZ3x8Xy5IIGluIGF8fFBnKGEsUWcpO2FbXy5IXT1ifTtfLlRnPWZ1bmN0aW9uKGEpe18uUmcoYSwzNCk7cmV0dXJuIGF9O18uVWc9ZnVuY3Rpb24oYSl7Xy5SZyhhLDgxOTIpO3JldHVybiBhfTsKXy5XZz1mdW5jdGlvbihhLGIpe3JldHVybiBiPT09dm9pZCAwP2EuZyE9PV8uVmcmJiEhKDImKGEuSltfLkhdfDApKTohISgyJmIpJiZhLmchPT1fLlZnfTtYZz1mdW5jdGlvbihhKXthLlRsPSEwO3JldHVybiBhfTtfLmJoPWZ1bmN0aW9uKGEpe3ZhciBiPWE7aWYoWWcoYikpe2lmKCEvXlxzKig/Oi0/WzEtOV1cZCp8MCk/XHMqJC8udGVzdChiKSl0aHJvdyBFcnJvcihTdHJpbmcoYikpO31lbHNlIGlmKFpnKGIpJiYhTnVtYmVyLmlzU2FmZUludGVnZXIoYikpdGhyb3cgRXJyb3IoU3RyaW5nKGIpKTtyZXR1cm4gJGc/QmlnSW50KGEpOmE9YWgoYSk/YT8iMSI6IjAiOllnKGEpP2EudHJpbSgpfHwiMCI6U3RyaW5nKGEpfTsKY2g9ZnVuY3Rpb24oYSxiKXtpZihhLmxlbmd0aD5iLmxlbmd0aClyZXR1cm4hMTtpZihhLmxlbmd0aDxiLmxlbmd0aHx8YT09PWIpcmV0dXJuITA7Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWFbY10sZT1iW2NdO2lmKGQ+ZSlyZXR1cm4hMTtpZihkPGUpcmV0dXJuITB9fTtfLmhoPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGEhPW51bGwmJmFbZGhdPT09ZWgpcmV0dXJuIGE7aWYoIUFycmF5LmlzQXJyYXkoYSkpcmV0dXJuIGM/ZCYyP2JbXy5maF18fChiW18uZmhdPV8uZ2goYikpOm5ldyBiOnZvaWQgMDtjPWFbXy5IXXwwO2Q9Y3xkJjMyfGQmMjtkIT09YyYmXy5TZyhhLGQpO3JldHVybiBuZXcgYihhKX07Xy5naD1mdW5jdGlvbihhKXthPW5ldyBhO18uVGcoYS5KKTtyZXR1cm4gYX07aWg9ZnVuY3Rpb24oYSl7cmV0dXJuIGF9O2poPWZ1bmN0aW9uKGEpe3JldHVybiBhfTsKbGg9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe2E9Xy5oaChhLGQsYyxmKTtlJiYoYT1fLmtoKGEpKTtyZXR1cm4gYX07bWg9ZnVuY3Rpb24oYSl7cmV0dXJuW2EsdGhpcy5nZXQoYSldfTtvaD1mdW5jdGlvbihhLGIpe2I8MTAwfHxfLk1nKG5oLDEpfTsKc2g9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9ZCE9PXZvaWQgMDtkPSEhZDt2YXIgZj1fLnBoKF8ucWgpLGc7IWUmJl8uT2cmJmYmJihnPWFbZl0pJiZnLlRrKG9oKTtmPVtdO3ZhciBoPWEubGVuZ3RoO2c9NDI5NDk2NzI5NTt2YXIgaz0hMSxsPSEhKGImNjQpLG49bD9iJjEyOD8wOi0xOnZvaWQgMDtpZighKGImMSkpe3ZhciBxPWgmJmFbaC0xXTtxIT1udWxsJiZ0eXBlb2YgcT09PSJvYmplY3QiJiZxLmNvbnN0cnVjdG9yPT09T2JqZWN0PyhoLS0sZz1oKTpxPXZvaWQgMDtpZihsJiYhKGImMTI4KSYmIWUpe2s9ITA7dmFyIHA7Zz0oKHA9cmgpIT1udWxsP3A6aWgpKGctbixuLGEscSx2b2lkIDApK259fWI9dm9pZCAwO2ZvcihlPTA7ZTxoO2UrKylpZihwPWFbZV0scCE9bnVsbCYmKHA9YyhwLGQpKSE9bnVsbClpZihsJiZlPj1nKXt2YXIgcj1lLW4sdD12b2lkIDA7KCh0PWIpIT1udWxsP3Q6Yj17fSlbcl09cH1lbHNlIGZbZV09cDtpZihxKWZvcih2YXIgQSBpbiBxKWE9cVtBXSxhIT0KbnVsbCYmKGE9YyhhLGQpKSE9bnVsbCYmKGg9K0EsZT12b2lkIDAsbCYmIU51bWJlci5pc05hTihoKSYmKGU9aCtuKTxnP2ZbZV09YTooaD12b2lkIDAsKChoPWIpIT1udWxsP2g6Yj17fSlbQV09YSkpO2ImJihrP2YucHVzaChiKTpmW2ddPWIpO3JldHVybiBmfTt1aD1mdW5jdGlvbihhKXthWzBdPXRoKGFbMF0pO2FbMV09dGgoYVsxXSk7cmV0dXJuIGF9Owp0aD1mdW5jdGlvbihhKXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgIm51bWJlciI6cmV0dXJuIE51bWJlci5pc0Zpbml0ZShhKT9hOiIiK2E7Y2FzZSAiYmlnaW50IjpyZXR1cm4oMCxfLnZoKShhKT9OdW1iZXIoYSk6IiIrYTtjYXNlICJib29sZWFuIjpyZXR1cm4gYT8xOjA7Y2FzZSAib2JqZWN0IjppZihBcnJheS5pc0FycmF5KGEpKXt2YXIgYj1hW18uSF18MDtyZXR1cm4gYS5sZW5ndGg9PT0wJiZiJjE/dm9pZCAwOnNoKGEsYix0aCl9aWYoYSE9bnVsbCYmYVtkaF09PT1laClyZXR1cm4gXy53aChhKTtpZigiZnVuY3Rpb24iPT10eXBlb2YgXy54aCYmYSBpbnN0YW5jZW9mIF8ueGgpcmV0dXJuIGEuZygpO2lmKGEgaW5zdGFuY2VvZiBfLnloKXJldHVybiBhPWEuc2l6ZSE9PTA/Xy56aChhLHVoKTp2b2lkIDAsYTtyZXR1cm59cmV0dXJuIGF9O18ud2g9ZnVuY3Rpb24oYSl7YT1hLko7cmV0dXJuIHNoKGEsYVtfLkhdfDAsdGgpfTsKXy5JPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gQWgoYSxiLGMsMjA0OCl9OwpBaD1mdW5jdGlvbihhLGIsYyxkKXtkPWQ9PT12b2lkIDA/MDpkO2lmKGE9PW51bGwpe3ZhciBlPTMyO2M/KGE9W2NdLGV8PTEyOCk6YT1bXTtiJiYoZT1lJi0xNjc2MDgzM3woYiYxMDIzKTw8MTQpfWVsc2V7aWYoIUFycmF5LmlzQXJyYXkoYSkpdGhyb3cgRXJyb3IoImJhIik7ZT1hW18uSF18MDtpZihfLk1jJiYxJmUpdGhyb3cgRXJyb3IoImNhIik7MjA0OCZlJiYhKDImZSkmJkJoKCk7aWYoZSYyNTYpdGhyb3cgRXJyb3IoImRhIik7aWYoZSY2NClyZXR1cm4oZXxkKSE9PWUmJl8uU2coYSxlfGQpLGE7aWYoYyYmKGV8PTEyOCxjIT09YVswXSkpdGhyb3cgRXJyb3IoImVhIik7YTp7Yz1hO2V8PTY0O3ZhciBmPWMubGVuZ3RoO2lmKGYpe3ZhciBnPWYtMSxoPWNbZ107aWYoaCE9bnVsbCYmdHlwZW9mIGg9PT0ib2JqZWN0IiYmaC5jb25zdHJ1Y3Rvcj09PU9iamVjdCl7Yj1lJjEyOD8wOi0xO2ctPWI7aWYoZz49MTAyNCl0aHJvdyBFcnJvcigiZ2EiKTtmb3IodmFyIGsgaW4gaClmPStrLApmPGcmJihjW2YrYl09aFtrXSxkZWxldGUgaFtrXSk7ZT1lJi0xNjc2MDgzM3woZyYxMDIzKTw8MTQ7YnJlYWsgYX19aWYoYil7az1NYXRoLm1heChiLGYtKGUmMTI4PzA6LTEpKTtpZihrPjEwMjQpdGhyb3cgRXJyb3IoImhhIik7ZT1lJi0xNjc2MDgzM3woayYxMDIzKTw8MTR9fX1fLlNnKGEsZXw2NHxkKTtyZXR1cm4gYX07Qmg9ZnVuY3Rpb24oKXtpZihfLk1jKXRocm93IEVycm9yKCJmYSIpO18uTWcoQ2gsNSl9OwpGaD1mdW5jdGlvbihhLGIpe2lmKHR5cGVvZiBhIT09Im9iamVjdCIpcmV0dXJuIGE7aWYoQXJyYXkuaXNBcnJheShhKSl7dmFyIGM9YVtfLkhdfDA7cmV0dXJuIGEubGVuZ3RoPT09MCYmYyYxP3ZvaWQgMDpEaChhLGMsYil9aWYoYSE9bnVsbCYmYVtkaF09PT1laClyZXR1cm4gRWgoYSk7aWYoYSBpbnN0YW5jZW9mIF8ueWgpe2I9YS5LYjtpZihiJjIpcmV0dXJuIGE7aWYoIWEuc2l6ZSlyZXR1cm47Yz1fLlRnKF8uemgoYSkpO2lmKGEuR2IpZm9yKGE9MDthPGMubGVuZ3RoO2ErKyl7dmFyIGQ9Y1thXSxlPWRbMV07ZT09bnVsbHx8dHlwZW9mIGUhPT0ib2JqZWN0Ij9lPXZvaWQgMDplIT1udWxsJiZlW2RoXT09PWVoP2U9RWgoZSk6QXJyYXkuaXNBcnJheShlKT9lPURoKGUsZVtfLkhdfDAsISEoYiYzMikpOmU9dm9pZCAwO2RbMV09ZX1yZXR1cm4gY31pZigiZnVuY3Rpb24iPT10eXBlb2YgXy54aCYmYSBpbnN0YW5jZW9mIF8ueGgpcmV0dXJuIGF9OwpEaD1mdW5jdGlvbihhLGIsYyl7aWYoYiYyKXJldHVybiBhOyFjfHw0MDk2JmJ8fDE2JmI/YT1fLkdoKGEsYiwhMSxjJiYhKGImMTYpKTooXy5SZyhhLDM0KSxiJjQmJk9iamVjdC5mcmVlemUoYSkpO3JldHVybiBhfTtfLkhoPWZ1bmN0aW9uKGEsYixjKXthPW5ldyBhLmNvbnN0cnVjdG9yKGIpO2MmJihhLmc9Xy5WZyk7YS5oPV8uVmc7cmV0dXJuIGF9O0VoPWZ1bmN0aW9uKGEpe3ZhciBiPWEuSixjPWJbXy5IXXwwO3JldHVybiBfLldnKGEsYyk/YTpfLkloKGEsYixjKT9fLkhoKGEsYik6Xy5HaChiLGMpfTtfLkdoPWZ1bmN0aW9uKGEsYixjLGQpe2QhPW51bGx8fChkPSEhKDM0JmIpKTthPXNoKGEsYixGaCxkKTtkPTMyO2MmJihkfD0yKTtiPWImMTY3NjkyMTd8ZDtfLlNnKGEsYik7cmV0dXJuIGF9OwpfLmtoPWZ1bmN0aW9uKGEpe3ZhciBiPWEuSixjPWJbXy5IXXwwO3JldHVybiBfLldnKGEsYyk/Xy5JaChhLGIsYyk/Xy5IaChhLGIsITApOm5ldyBhLmNvbnN0cnVjdG9yKF8uR2goYixjLCExKSk6YX07Xy5JaD1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGMmMj8hMDpjJjMyJiYhKGMmNDA5Nik/KF8uU2coYixjfDIpLGEuZz1fLlZnLCEwKTohMX07Xy5waD1mdW5jdGlvbihhKXtyZXR1cm4gYX07RGc9L15ccyooPyFqYXZhc2NyaXB0OikoPzpbXHcrLi1dKzp8W146Lz8jXSooPzpbLz8jXXwkKSkvaTtfLkpoPUhnKCk7Xy5LaD1fLlphKCl8fF8udygiaVBvZCIpO18uTGg9Xy53KCJpUGFkIik7Xy5NaD1fLktnKCk7Xy5OaD1JZygpO18uT2g9Xy5KZygpJiYhXy4kYSgpO18uUGg9IV8uU2MmJnR5cGVvZiBidG9hPT09ImZ1bmN0aW9uIjt2YXIgTGc9dm9pZCAwO3ZhciBRaCxuaCxDaCxkaDtfLk9nPXR5cGVvZiBTeW1ib2w9PT0iZnVuY3Rpb24iJiZ0eXBlb2YgU3ltYm9sKCk9PT0ic3ltYm9sIjtRaD1fLk5nKCJqYXMiLHZvaWQgMCwhMCk7Xy5maD1fLk5nKHZvaWQgMCwiMGRpIik7Xy5xaD1fLk5nKHZvaWQgMCxTeW1ib2woKSk7Xy5SaD1fLk5nKHZvaWQgMCwiMHViIik7bmg9Xy5OZyh2b2lkIDAsIjB1YnMiKTtDaD1fLk5nKHZvaWQgMCwiMGFjdGsiKTtkaD1fLk5nKCJtX20iLCJYbCIsITApO18uU2g9Xy5OZygpO3ZhciBRZyxQZyxVaDtRZz17ZWk6e3ZhbHVlOjAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLGVudW1lcmFibGU6ITF9fTtQZz1PYmplY3QuZGVmaW5lUHJvcGVydGllcztfLkg9Xy5PZz9RaDoiZWkiO1VoPVtdO18uU2coVWgsNyk7Xy5UaD1PYmplY3QuZnJlZXplKFVoKTt2YXIgZWgsVmg7ZWg9e307Xy5WZz17fTtWaD1mdW5jdGlvbihhLGIsYyl7dGhpcy5nPWE7dGhpcy5oPWI7dGhpcy5qPWN9O1ZoLnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5nLm5leHQoKTthLmRvbmV8fChhLnZhbHVlPXRoaXMuaC5jYWxsKHRoaXMuaixhLnZhbHVlKSk7cmV0dXJuIGF9O1ZoLnByb3RvdHlwZVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9O18uV2g9T2JqZWN0LmZyZWV6ZSh7fSk7Xy5YaD1PYmplY3QuZnJlZXplKHt9KTt2YXIgWmc9WGcoZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciJ9KSxZZz1YZyhmdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIn0pLGFoPVhnKGZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PSJib29sZWFuIn0pO3ZhciAkZz10eXBlb2YgXy52LkJpZ0ludD09PSJmdW5jdGlvbiImJnR5cGVvZiBfLnYuQmlnSW50KDApPT09ImJpZ2ludCI7dmFyICRoLFloLGFpLFpoO18udmg9WGcoZnVuY3Rpb24oYSl7cmV0dXJuICRnP2E+PVloJiZhPD1aaDphWzBdPT09Ii0iP2NoKGEsJGgpOmNoKGEsYWkpfSk7JGg9TnVtYmVyLk1JTl9TQUZFX0lOVEVHRVIudG9TdHJpbmcoKTtZaD0kZz9CaWdJbnQoTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVIpOnZvaWQgMDthaT1OdW1iZXIuTUFYX1NBRkVfSU5URUdFUi50b1N0cmluZygpO1poPSRnP0JpZ0ludChOdW1iZXIuTUFYX1NBRkVfSU5URUdFUik6dm9pZCAwO18uYmk9dHlwZW9mIEJpZ0ludD09PSJmdW5jdGlvbiI/QmlnSW50LmFzSW50Tjp2b2lkIDA7Xy5jaT1OdW1iZXIuaXNTYWZlSW50ZWdlcjtfLmRpPU51bWJlci5pc0Zpbml0ZTtfLmVpPU1hdGgudHJ1bmM7dmFyIGZpPWZ1bmN0aW9uKCl7dHJ5e3ZhciBhPWZ1bmN0aW9uKCl7cmV0dXJuKDAsXy5UYikoTWFwLFtdLHRoaXMuY29uc3RydWN0b3IpfTtfLkIoYSxNYXApO18uUWMobmV3IGEpO3JldHVybiExfWNhdGNoKGIpe3JldHVybiEwfX0oKSxnaT1mdW5jdGlvbigpe3RoaXMuZz1uZXcgTWFwfSxoaSxpaTtfLm09Z2kucHJvdG90eXBlO18ubS5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZy5nZXQoYSl9O18ubS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLmcuc2V0KGEsYik7dGhpcy5zaXplPXRoaXMuZy5zaXplO3JldHVybiB0aGlzfTtfLm0uZGVsZXRlPWZ1bmN0aW9uKGEpe2E9dGhpcy5nLmRlbGV0ZShhKTt0aGlzLnNpemU9dGhpcy5nLnNpemU7cmV0dXJuIGF9O18ubS5jbGVhcj1mdW5jdGlvbigpe3RoaXMuZy5jbGVhcigpO3RoaXMuc2l6ZT10aGlzLmcuc2l6ZX07Xy5tLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5nLmhhcyhhKX07Xy5tLmVudHJpZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nLmVudHJpZXMoKX07Cl8ubS5rZXlzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy5rZXlzKCl9O18ubS52YWx1ZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nLnZhbHVlcygpfTtfLm0uZm9yRWFjaD1mdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmcuZm9yRWFjaChhLGIpfTtnaS5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmVudHJpZXMoKX07aGk9ZnVuY3Rpb24oKXtpZihmaSlyZXR1cm4gT2JqZWN0LnNldFByb3RvdHlwZU9mKGdpLnByb3RvdHlwZSxNYXAucHJvdG90eXBlKSxPYmplY3QuZGVmaW5lUHJvcGVydGllcyhnaS5wcm90b3R5cGUse3NpemU6e3ZhbHVlOjAsY29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsd3JpdGFibGU6ITB9fSksZ2k7dmFyIGE9ZnVuY3Rpb24oKXtyZXR1cm4oMCxfLlRiKShNYXAsW10sdGhpcy5jb25zdHJ1Y3Rvcil9O18uQihhLE1hcCk7cmV0dXJuIGF9KCk7Cl8ueWg9ZnVuY3Rpb24oYSxiLGMsZCl7Yz1jPT09dm9pZCAwP2poOmM7ZD1kPT09dm9pZCAwP2poOmQ7dmFyIGU9aGkuY2FsbCh0aGlzKXx8dGhpcztlLktiPWFbXy5IXXwwO2UuR2I9YjtlLmFkPWM7ZS5rZz1lLkdiP2xoOmQ7Zm9yKHZhciBmPTA7ZjxhLmxlbmd0aDtmKyspe3ZhciBnPWFbZl0saD1jKGdbMF0sITEsITApLGs9Z1sxXTtiP2s9PT12b2lkIDAmJihrPW51bGwpOms9ZChnWzFdLCExLCEwLHZvaWQgMCx2b2lkIDAsZS5LYik7aGkucHJvdG90eXBlLnNldC5jYWxsKGUsaCxrKX1yZXR1cm4gZX07Xy5CKF8ueWgsaGkpO2lpPWZ1bmN0aW9uKGEpe2lmKGEuS2ImMil0aHJvdyBFcnJvcigiYWEiKTt9O18uemg9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5VZyhBcnJheS5mcm9tKGhpLnByb3RvdHlwZS5lbnRyaWVzLmNhbGwoYSksYikpfTtfLm09Xy55aC5wcm90b3R5cGU7Xy5tLmNsZWFyPWZ1bmN0aW9uKCl7aWkodGhpcyk7aGkucHJvdG90eXBlLmNsZWFyLmNhbGwodGhpcyl9OwpfLm0uZGVsZXRlPWZ1bmN0aW9uKGEpe2lpKHRoaXMpO3JldHVybiBoaS5wcm90b3R5cGUuZGVsZXRlLmNhbGwodGhpcyx0aGlzLmFkKGEsITAsITEpKX07Xy5tLmVudHJpZXM9ZnVuY3Rpb24oKXtpZih0aGlzLkdiKXt2YXIgYT1oaS5wcm90b3R5cGUua2V5cy5jYWxsKHRoaXMpO2E9bmV3IFZoKGEsbWgsdGhpcyl9ZWxzZSBhPWhpLnByb3RvdHlwZS5lbnRyaWVzLmNhbGwodGhpcyk7cmV0dXJuIGF9O18ubS52YWx1ZXM9ZnVuY3Rpb24oKXtpZih0aGlzLkdiKXt2YXIgYT1oaS5wcm90b3R5cGUua2V5cy5jYWxsKHRoaXMpO2E9bmV3IFZoKGEsXy55aC5wcm90b3R5cGUuZ2V0LHRoaXMpfWVsc2UgYT1oaS5wcm90b3R5cGUudmFsdWVzLmNhbGwodGhpcyk7cmV0dXJuIGF9OwpfLm0uZm9yRWFjaD1mdW5jdGlvbihhLGIpe3RoaXMuR2I/aGkucHJvdG90eXBlLmZvckVhY2guY2FsbCh0aGlzLGZ1bmN0aW9uKGMsZCxlKXthLmNhbGwoYixlLmdldChkKSxkLGUpfSk6aGkucHJvdG90eXBlLmZvckVhY2guY2FsbCh0aGlzLGEsYil9O18ubS5zZXQ9ZnVuY3Rpb24oYSxiKXtpaSh0aGlzKTthPXRoaXMuYWQoYSwhMCwhMSk7cmV0dXJuIGE9PW51bGw/dGhpczpiPT1udWxsPyhoaS5wcm90b3R5cGUuZGVsZXRlLmNhbGwodGhpcyxhKSx0aGlzKTpoaS5wcm90b3R5cGUuc2V0LmNhbGwodGhpcyxhLHRoaXMua2coYiwhMCwhMCx0aGlzLkdiLCExLHRoaXMuS2IpKX07Xy5tLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gaGkucHJvdG90eXBlLmhhcy5jYWxsKHRoaXMsdGhpcy5hZChhLCExLCExKSl9OwpfLm0uZ2V0PWZ1bmN0aW9uKGEpe2E9dGhpcy5hZChhLCExLCExKTt2YXIgYj1oaS5wcm90b3R5cGUuZ2V0LmNhbGwodGhpcyxhKTtpZihiIT09dm9pZCAwKXt2YXIgYz10aGlzLkdiO3JldHVybiBjPyhjPXRoaXMua2coYiwhMSwhMCxjLHRoaXMuTmssdGhpcy5LYiksYyE9PWImJmhpLnByb3RvdHlwZS5zZXQuY2FsbCh0aGlzLGEsYyksYyk6Yn19O18ueWgucHJvdG90eXBlW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lbnRyaWVzKCl9O18ueWgucHJvdG90eXBlLnRvSlNPTj12b2lkIDA7dmFyIHJoO18uamk9Xy5iaCgwKTtfLko9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuSj1fLkkoYSxiLGMpfTtfLkoucHJvdG90eXBlLnRvSlNPTj1mdW5jdGlvbigpe3JldHVybiBfLndoKHRoaXMpfTtfLkoucHJvdG90eXBlW2RoXT1laDtfLkoucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSi50b1N0cmluZygpfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIExpLE1pLE5pLE9pLFJpLFBpLFFpLFNpLFVpLFdpLFhpO18ua2k9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5lYy5hcHBseSgxLGFyZ3VtZW50cyk7aWYoYi5sZW5ndGg9PT0wKXJldHVybiBfLk1hKGFbMF0pO2Zvcih2YXIgYz1hWzBdLGQ9MDtkPGIubGVuZ3RoO2QrKyljKz1lbmNvZGVVUklDb21wb25lbnQoYltkXSkrYVtkKzFdO3JldHVybiBfLk1hKGMpfTtfLmxpPWZ1bmN0aW9uKGEpe18uUmcoYSwzMik7cmV0dXJuIGF9O18ubWk9ZnVuY3Rpb24oYSl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGEpfTtfLm5pPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09ImJvb2xlYW4iKXRocm93IEVycm9yKCIkYCIrXy5vYyhhKSsiYCIrYSk7cmV0dXJuIGF9O18ub2k9ZnVuY3Rpb24oYSl7aWYoYT09bnVsbHx8dHlwZW9mIGE9PT0iYm9vbGVhbiIpcmV0dXJuIGE7aWYodHlwZW9mIGE9PT0ibnVtYmVyIilyZXR1cm4hIWF9OwpfLnBpPWZ1bmN0aW9uKGEpe3JldHVybiBhPT1udWxsfHx0eXBlb2YgYT09PSJzdHJpbmciP2E6dm9pZCAwfTtfLnFpPWZ1bmN0aW9uKGEpe2lmKGEuZyE9PV8uVmcpcmV0dXJuITE7dmFyIGI9YS5KO2I9Xy5HaChiLGJbXy5IXXwwKTtfLlJnKGIsMjA0OCk7YS5KPWI7YS5nPXZvaWQgMDthLmg9dm9pZCAwO3JldHVybiEwfTtfLnJpPWZ1bmN0aW9uKGEpe2lmKCFfLnFpKGEpJiZfLldnKGEsYS5KW18uSF18MCkpdGhyb3cgRXJyb3IoKTt9O18uc2k9ZnVuY3Rpb24oYSxiKXtiPT09dm9pZCAwJiYoYj1hW18uSF18MCk7YiYzMiYmIShiJjQwOTYpJiZfLlNnKGEsYnw0MDk2KX07Cl8udGk9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1jKyhlPzA6LTEpLGc9YS5sZW5ndGgtMTtpZihnPj0xKyhlPzA6LTEpJiZmPj1nKXt2YXIgaD1hW2ddO2lmKGghPW51bGwmJnR5cGVvZiBoPT09Im9iamVjdCImJmguY29uc3RydWN0b3I9PT1PYmplY3QpcmV0dXJuIGhbY109ZCxifWlmKGY8PWcpcmV0dXJuIGFbZl09ZCxiO2lmKGQhPT12b2lkIDApe3ZhciBrO2c9KChrPWIpIT1udWxsP2s6Yj1hW18uSF18MCk+PjE0JjEwMjN8fDUzNjg3MDkxMjtjPj1nP2QhPW51bGwmJihmPXt9LGFbZysoZT8wOi0xKV09KGZbY109ZCxmKSk6YVtmXT1kfXJldHVybiBifTtfLkJpPWZ1bmN0aW9uKGEsYil7YT1fLnVpKGEsYix2b2lkIDApO3JldHVybiBBcnJheS5pc0FycmF5KGEpP2E6Xy5UaH07Xy5DaT1mdW5jdGlvbihhLGIpezImYiYmKGF8PTIpO3JldHVybiBhfDF9O18uRGk9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYT0oMiZiP2F8MjphJi0zKSYtMjczfTsKXy5FaT1mdW5jdGlvbihhKXtyZXR1cm4hISgyJmEpJiYhISg0JmEpfHwhISgyNTYmYSl9O18uRmk9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyxoKXt2YXIgaz1iO2Y9PT0xfHwoZiE9PTQ/MDoyJmJ8fCEoMTYmYikmJjMyJmQpP18uRWkoYil8fChifD0hYS5sZW5ndGh8fGcmJiEoNDA5NiZiKXx8MzImZCYmISg0MDk2JmJ8fDE2JmIpPzI6MjU2LGIhPT1rJiZfLlNnKGEsYiksT2JqZWN0LmZyZWV6ZShhKSk6KGY9PT0yJiZfLkVpKGIpJiYoYT1fLm1pKGEpLGs9MCxiPV8uRGkoYixkKSxkPV8udGkoYyxkLGUsYSkpLF8uRWkoYil8fChofHwoYnw9MTYpLGIhPT1rJiZfLlNnKGEsYikpKTsyJmJ8fCEoNDA5NiZifHwxNiZiKXx8Xy5zaShjLGQpO3JldHVybiBhfTtfLkdpPWZ1bmN0aW9uKGEsYixjLGQpe18ucmkoYSk7dmFyIGU9YS5KO18udGkoZSxlW18uSF18MCxiLChkPT09IjAiP051bWJlcihjKT09PTA6Yz09PWQpP3ZvaWQgMDpjKTtyZXR1cm4gYX07Cl8uSGk9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj0hMTtkPV8udWkoYSxkLGUsZnVuY3Rpb24oZyl7dmFyIGg9Xy5oaChnLGMsITEsYik7Zj1oIT09ZyYmaCE9bnVsbDtyZXR1cm4gaH0pO2lmKGQhPW51bGwpcmV0dXJuIGYmJiFfLldnKGQpJiZfLnNpKGEsYiksZH07Cl8uSWk9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyxoKXt2YXIgaz1fLldnKGEsYyk7Zj1rPzE6ZjtnPSEhZ3x8Zj09PTM7az1oJiYhazsoZj09PTJ8fGspJiZfLnFpKGEpJiYoYj1hLkosYz1iW18uSF18MCk7YT1fLkJpKGIsZSk7dmFyIGw9YT09PV8uVGg/NzphW18uSF18MCxuPV8uQ2kobCxjKTtpZihoPSEoNCZuKSl7dmFyIHE9YSxwPWMscj0hISgyJm4pO3ImJihwfD0yKTtmb3IodmFyIHQ9IXIsQT0hMCxEPTAsRT0wO0Q8cS5sZW5ndGg7RCsrKXt2YXIgYmE9Xy5oaChxW0RdLGQsITEscCk7aWYoYmEgaW5zdGFuY2VvZiBkKXtpZighcil7dmFyIFo9Xy5XZyhiYSk7dCYmKHQ9IVopO0EmJihBPVopfXFbRSsrXT1iYX19RTxEJiYocS5sZW5ndGg9RSk7bnw9NDtuPUE/biYtNDA5NzpufDQwOTY7bj10P258ODpuJi05fW4hPT1sJiYoXy5TZyhhLG4pLDImbiYmT2JqZWN0LmZyZWV6ZShhKSk7aWYoayYmISg4Jm58fCFhLmxlbmd0aCYmKGY9PT0xfHwoZiE9PTQ/MDoyJm58fCEoMTYmbikmJgozMiZjKSkpKXtfLkVpKG4pJiYoYT1fLm1pKGEpLG49Xy5EaShuLGMpLGM9Xy50aShiLGMsZSxhKSk7ZD1hO2s9bjtmb3IobD0wO2w8ZC5sZW5ndGg7bCsrKXE9ZFtsXSxuPV8ua2gocSkscSE9PW4mJihkW2xdPW4pO2t8PTg7bj1rPWQubGVuZ3RoP2t8NDA5NjprJi00MDk3O18uU2coYSxuKX1yZXR1cm4gYT1fLkZpKGEsbixiLGMsZSxmLGgsZyl9O18uSmk9ZnVuY3Rpb24oYSl7YT09bnVsbCYmKGE9dm9pZCAwKTtyZXR1cm4gYX07Xy5LaT1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oYil7Yj1KU09OLnBhcnNlKGIpO2lmKCFBcnJheS5pc0FycmF5KGIpKXRocm93IEVycm9yKCJpYWAiK18ub2MoYikrImAiK2IpO18uVGcoYik7cmV0dXJuIG5ldyBhKGIpfX07TGk9ZnVuY3Rpb24oYSl7aWYoYS5HKXRocm93IG5ldyBUeXBlRXJyb3IoImYiKTthLkc9ITB9O01pPWZ1bmN0aW9uKGEsYil7YS5sPXtiZjpiLENmOiEwfTthLmc9YS5DfHxhLm99OwpOaT1mdW5jdGlvbihhLGIpe2EucmF3PWI7T2JqZWN0LmZyZWV6ZSYmKE9iamVjdC5mcmVlemUoYSksT2JqZWN0LmZyZWV6ZShiKSk7cmV0dXJuIGF9O18uSz1mdW5jdGlvbihhKXtyZXR1cm4gTmkoYSxhKX07T2k9ZnVuY3Rpb24oYSl7dGhpcy5nPW5ldyBfLkY7dGhpcy5oPWF9O1JpPWZ1bmN0aW9uKGEsYil7TGkoYS5nKTt2YXIgYz1hLmcuQTtpZihjKXJldHVybiBQaShhLCJyZXR1cm4iaW4gYz9jWyJyZXR1cm4iXTpmdW5jdGlvbihkKXtyZXR1cm57dmFsdWU6ZCxkb25lOiEwfX0sYixhLmcucmV0dXJuKTthLmcucmV0dXJuKGIpO3JldHVybiBRaShhKX07UGk9ZnVuY3Rpb24oYSxiLGMsZCl7dHJ5e3ZhciBlPWIuY2FsbChhLmcuQSxjKTtfLmNjKGUpO2lmKCFlLmRvbmUpcmV0dXJuIGEuZy5HPSExLGU7dmFyIGY9ZS52YWx1ZX1jYXRjaChnKXtyZXR1cm4gYS5nLkE9bnVsbCxNaShhLmcsZyksUWkoYSl9YS5nLkE9bnVsbDtkLmNhbGwoYS5nLGYpO3JldHVybiBRaShhKX07ClFpPWZ1bmN0aW9uKGEpe2Zvcig7YS5nLmc7KXRyeXt2YXIgYj1hLmgoYS5nKTtpZihiKXJldHVybiBhLmcuRz0hMSx7dmFsdWU6Yi52YWx1ZSxkb25lOiExfX1jYXRjaChjKXthLmcuaj12b2lkIDAsTWkoYS5nLGMpfWEuZy5HPSExO2lmKGEuZy5sKXtiPWEuZy5sO2EuZy5sPW51bGw7aWYoYi5DZil0aHJvdyBiLmJmO3JldHVybnt2YWx1ZTpiLnJldHVybixkb25lOiEwfX1yZXR1cm57dmFsdWU6dm9pZCAwLGRvbmU6ITB9fTsKU2k9ZnVuY3Rpb24oYSl7dGhpcy5uZXh0PWZ1bmN0aW9uKGIpe0xpKGEuZyk7YS5nLkE/Yj1QaShhLGEuZy5BLm5leHQsYixhLmcuSSk6KGEuZy5JKGIpLGI9UWkoYSkpO3JldHVybiBifTt0aGlzLnRocm93PWZ1bmN0aW9uKGIpe0xpKGEuZyk7YS5nLkE/Yj1QaShhLGEuZy5BWyJ0aHJvdyJdLGIsYS5nLkkpOihNaShhLmcsYiksYj1RaShhKSk7cmV0dXJuIGJ9O3RoaXMucmV0dXJuPWZ1bmN0aW9uKGIpe3JldHVybiBSaShhLGIpfTt0aGlzW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc319O1VpPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoZCl7cmV0dXJuIGEubmV4dChkKX1mdW5jdGlvbiBjKGQpe3JldHVybiBhLnRocm93KGQpfXJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihkLGUpe2Z1bmN0aW9uIGYoZyl7Zy5kb25lP2QoZy52YWx1ZSk6UHJvbWlzZS5yZXNvbHZlKGcudmFsdWUpLnRoZW4oYixjKS50aGVuKGYsZSl9ZihhLm5leHQoKSl9KX07Xy5WaT1mdW5jdGlvbihhKXtyZXR1cm4gVWkobmV3IFNpKG5ldyBPaShhKSkpfTsKV2k9ZnVuY3Rpb24oYSl7cmV0dXJuIFN0cmluZyhhKS5yZXBsYWNlKC9cLShbYS16XSkvZyxmdW5jdGlvbihiLGMpe3JldHVybiBjLnRvVXBwZXJDYXNlKCl9KX07WGk9ZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVwbGFjZShSZWdFeHAoIihefFtcXHNdKykoW2Etel0pIiwiZyIpLGZ1bmN0aW9uKGIsYyxkKXtyZXR1cm4gYytkLnRvVXBwZXJDYXNlKCl9KX07Xy5ZaT1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgXy5vZSlyZXR1cm4gYTt2YXIgYj1uZXcgXy5vZShfLmxlKTtfLm5lKGIsMixhKTtyZXR1cm4gYn07Cl8udWk9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYj09PS0xKXJldHVybiBudWxsO3ZhciBlPWIrKGM/MDotMSksZj1hLmxlbmd0aC0xO2lmKCEoZjwxKyhjPzA6LTEpKSl7aWYoZT49Zil7dmFyIGc9YVtmXTtpZihnIT1udWxsJiZ0eXBlb2YgZz09PSJvYmplY3QiJiZnLmNvbnN0cnVjdG9yPT09T2JqZWN0KXtjPWdbYl07dmFyIGg9ITB9ZWxzZSBpZihlPT09ZiljPWc7ZWxzZSByZXR1cm59ZWxzZSBjPWFbZV07aWYoZCYmYyE9bnVsbCl7ZD1kKGMpO2lmKGQ9PW51bGwpcmV0dXJuIGQ7aWYoIU9iamVjdC5pcyhkLGMpKXJldHVybiBoP2dbYl09ZDphW2VdPWQsZH1yZXR1cm4gY319O18uWmk9ZnVuY3Rpb24oYSxiLGMsZCxlKXtiPV8udWkoYS5KLGIsYyxlKTtpZihiIT09bnVsbHx8ZCYmYS5oIT09Xy5WZylyZXR1cm4gYn07Xy4kaT1mdW5jdGlvbihhLGIsYyl7Xy5yaShhKTt2YXIgZD1hLko7Xy50aShkLGRbXy5IXXwwLGIsYyk7cmV0dXJuIGF9OwpfLmFqPWZ1bmN0aW9uKGEpe3JldHVybiBhPT09Xy5XaD8yOjR9O18uYmo9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9YS5KLGY9ZVtfLkhdfDA7Yj1fLkhpKGUsZixiLGMsZCk7aWYoYj09bnVsbClyZXR1cm4gYjtmPWVbXy5IXXwwO2lmKCFfLldnKGEsZikpe3ZhciBnPV8ua2goYik7ZyE9PWImJihfLnFpKGEpJiYoZT1hLkosZj1lW18uSF18MCksYj1nLGY9Xy50aShlLGYsYyxiLGQpLF8uc2koZSxmKSl9cmV0dXJuIGJ9O18uY2o9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEuSjtyZXR1cm4gXy5JaShhLGQsZFtfLkhdfDAsYixjLF8uYWooKSwhMSwhMCl9O18uTD1mdW5jdGlvbihhLGIsYyl7Yz1fLkppKGMpO18uJGkoYSxiLGMpO2MmJiFfLldnKGMpJiZfLnNpKGEuSik7cmV0dXJuIGF9O18uTT1mdW5jdGlvbihhLGIpe3ZhciBjPWM9PT12b2lkIDA/ITE6YzthPV8ub2koXy5aaShhLGIpKTtyZXR1cm4gYSE9bnVsbD9hOmN9OwpfLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1jPT09dm9pZCAwPyIiOmM7dmFyIGQ7cmV0dXJuKGQ9Xy5waShfLlppKGEsYikpKSE9bnVsbD9kOmN9O18uZGo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1jPT09dm9pZCAwPzA6YzthPV8uWmkoYSxiKTthPWE9PW51bGw/YTooMCxfLmRpKShhKT9hfDA6dm9pZCAwO3JldHVybiBhIT1udWxsP2E6Y307Xy5laj1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uR2koYSxiLGM9PW51bGw/YzpfLm5pKGMpLCExKX07Xy5maj1mdW5jdGlvbihhLGIpe2lmKGI9PW51bGx8fGI9PSIiKXJldHVybiBuZXcgYTtiPUpTT04ucGFyc2UoYik7aWYoIUFycmF5LmlzQXJyYXkoYikpdGhyb3cgRXJyb3IoImphIik7cmV0dXJuIG5ldyBhKF8ubGkoYikpfTt2YXIgaWosZ2osamo7Xy5oaj1mdW5jdGlvbihhLGIsYyl7aWYodHlwZW9mIGI9PT0ic3RyaW5nIilnaihhLGMsYik7ZWxzZSBmb3IodmFyIGQgaW4gYilnaihhLGJbZF0sZCl9O2lqPS9eLS0uKy87Z2o9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWpqW2NdO2lmKCFkKXt2YXIgZT1XaShjKTtkPWU7YS5zdHlsZVtlXT09PXZvaWQgMCYmKGU9KF8uVmM/IldlYmtpdCI6Xy5VYz8iTW96IjpudWxsKStYaShlKSxhLnN0eWxlW2VdIT09dm9pZCAwJiYoZD1lKSk7ampbY109ZH0oYz1kKSYmKGlqLnRlc3QoYyk/YS5zdHlsZS5zZXRQcm9wZXJ0eShjLGIpOmEuc3R5bGVbY109Yil9O2pqPXt9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgbGosb2oscGoscWosdGosdWosdmosd2oseGoseWosQWosQ2osRGosRWosRmosR2osSGosSWosS2osTmosT2osWGosWWosYmssbmosbWosY2ssZWsscmosc2osemosbms7Xy5raj1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgXy5EYylyZXR1cm4gYS5nO3Rocm93IEVycm9yKCJ0Iik7fTtsaj1mdW5jdGlvbihhKXt2YXIgYj1hLkosYz1iW18uSF18MDtyZXR1cm4gXy5JaChhLGIsYyk/Xy5IaChhLGIsITApOm5ldyBhLmNvbnN0cnVjdG9yKF8uR2goYixjLCExKSl9Owpvaj1mdW5jdGlvbihhLGIpe2I9PT12b2lkIDAmJihiPTApO2lmKCFtail7bWo9e307Zm9yKHZhciBjPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSIuc3BsaXQoIiIpLGQ9WyIrLz0iLCIrLyIsIi1fPSIsIi1fLiIsIi1fIl0sZT0wO2U8NTtlKyspe3ZhciBmPWMuY29uY2F0KGRbZV0uc3BsaXQoIiIpKTtualtlXT1mO2Zvcih2YXIgZz0wO2c8Zi5sZW5ndGg7ZysrKXt2YXIgaD1mW2ddO21qW2hdPT09dm9pZCAwJiYobWpbaF09Zyl9fX1iPW5qW2JdO2M9QXJyYXkoTWF0aC5mbG9vcihhLmxlbmd0aC8zKSk7ZD1iWzY0XXx8IiI7Zm9yKGU9Zj0wO2Y8YS5sZW5ndGgtMjtmKz0zKXt2YXIgaz1hW2ZdLGw9YVtmKzFdO2g9YVtmKzJdO2c9YltrPj4yXTtrPWJbKGsmMyk8PDR8bD4+NF07bD1iWyhsJjE1KTw8MnxoPj42XTtoPWJbaCY2M107Y1tlKytdPWcraytsK2h9Zz0wO2g9ZDtzd2l0Y2goYS5sZW5ndGgtZil7Y2FzZSAyOmc9CmFbZisxXSxoPWJbKGcmMTUpPDwyXXx8ZDtjYXNlIDE6YT1hW2ZdLGNbZV09YlthPj4yXStiWyhhJjMpPDw0fGc+PjRdK2grZH1yZXR1cm4gYy5qb2luKCIiKX07cGo9ZnVuY3Rpb24oYSl7YT1FcnJvcihhKTtfLkZnKGEsIndhcm5pbmciKTtyZXR1cm4gYX07cWo9ZnVuY3Rpb24oKXtyZXR1cm4gdHlwZW9mIEJpZ0ludD09PSJmdW5jdGlvbiJ9O3RqPWZ1bmN0aW9uKGEpe3ZhciBiPWE+Pj4wO3JqPWI7c2o9KGEtYikvNDI5NDk2NzI5Nj4+PjB9O3VqPWZ1bmN0aW9uKGEsYil7Yj1+YjthP2E9fmErMTpiKz0xO3JldHVyblthLGJdfTt2aj1mdW5jdGlvbihhKXtpZihhPDApe3RqKC1hKTt2YXIgYj1fLkModWoocmosc2opKTthPWIubmV4dCgpLnZhbHVlO2I9Yi5uZXh0KCkudmFsdWU7cmo9YT4+PjA7c2o9Yj4+PjB9ZWxzZSB0aihhKX07d2o9ZnVuY3Rpb24oYSl7YT1TdHJpbmcoYSk7cmV0dXJuIjAwMDAwMDAiLnNsaWNlKGEubGVuZ3RoKSthfTsKeGo9ZnVuY3Rpb24oYSxiKXtiPj4+PTA7YT4+Pj0wO2lmKGI8PTIwOTcxNTEpdmFyIGM9IiIrKDQyOTQ5NjcyOTYqYithKTtlbHNlIHFqKCk/Yz0iIisoQmlnSW50KGIpPDxCaWdJbnQoMzIpfEJpZ0ludChhKSk6KGM9KGE+Pj4yNHxiPDw4KSYxNjc3NzIxNSxiPWI+PjE2JjY1NTM1LGE9KGEmMTY3NzcyMTUpK2MqNjc3NzIxNitiKjY3MTA2NTYsYys9Yio4MTQ3NDk3LGIqPTIsYT49MUU3JiYoYys9YS8xRTc+Pj4wLGElPTFFNyksYz49MUU3JiYoYis9Yy8xRTc+Pj4wLGMlPTFFNyksYz1iK3dqKGMpK3dqKGEpKTtyZXR1cm4gY307eWo9ZnVuY3Rpb24oKXt2YXIgYT1yaixiPXNqO2ImMjE0NzQ4MzY0OD9xaigpP2E9IiIrKEJpZ0ludChifDApPDxCaWdJbnQoMzIpfEJpZ0ludChhPj4+MCkpOihiPV8uQyh1aihhLGIpKSxhPWIubmV4dCgpLnZhbHVlLGI9Yi5uZXh0KCkudmFsdWUsYT0iLSIreGooYSxiKSk6YT14aihhLGIpO3JldHVybiBhfTsKQWo9ZnVuY3Rpb24oYSl7c3dpdGNoKHR5cGVvZiBhKXtjYXNlICJiaWdpbnQiOnJldHVybiEwO2Nhc2UgIm51bWJlciI6cmV0dXJuKDAsXy5kaSkoYSk7Y2FzZSAic3RyaW5nIjpyZXR1cm4gemoudGVzdChhKTtkZWZhdWx0OnJldHVybiExfX07Xy5Caj1mdW5jdGlvbihhKXtpZih0eXBlb2YgYSE9PSJudW1iZXIiKXRocm93IHBqKCJpbnQzMiIpO2lmKCEoMCxfLmRpKShhKSl0aHJvdyBwaigiaW50MzIiKTtyZXR1cm4gYXwwfTtDaj1mdW5jdGlvbihhKXtpZihhPT1udWxsKXJldHVybiBhO2lmKHR5cGVvZiBhPT09InN0cmluZyImJmEpYT0rYTtlbHNlIGlmKHR5cGVvZiBhIT09Im51bWJlciIpcmV0dXJuO3JldHVybigwLF8uZGkpKGEpP2F8MDp2b2lkIDB9OwpEaj1mdW5jdGlvbihhKXt2YXIgYj1hLmxlbmd0aDtpZihhWzBdPT09Ii0iP2I8MjB8fGI9PT0yMCYmYTw9Ii05MjIzMzcyMDM2ODU0Nzc1ODA4IjpiPDE5fHxiPT09MTkmJmE8PSI5MjIzMzcyMDM2ODU0Nzc1ODA3IilyZXR1cm4gYTtpZihhLmxlbmd0aDwxNil2aihOdW1iZXIoYSkpO2Vsc2UgaWYocWooKSlhPUJpZ0ludChhKSxyaj1OdW1iZXIoYSZCaWdJbnQoNDI5NDk2NzI5NSkpPj4+MCxzaj1OdW1iZXIoYT4+QmlnSW50KDMyKSZCaWdJbnQoNDI5NDk2NzI5NSkpO2Vsc2V7Yj0rKGFbMF09PT0iLSIpO3NqPXJqPTA7Zm9yKHZhciBjPWEubGVuZ3RoLGQ9YixlPShjLWIpJTYrYjtlPD1jO2Q9ZSxlKz02KWQ9TnVtYmVyKGEuc2xpY2UoZCxlKSksc2oqPTFFNixyaj1yaioxRTYrZCxyaj49NDI5NDk2NzI5NiYmKHNqKz1NYXRoLnRydW5jKHJqLzQyOTQ5NjcyOTYpLHNqPj4+PTAscmo+Pj49MCk7YiYmKGI9Xy5DKHVqKHJqLHNqKSksYT1iLm5leHQoKS52YWx1ZSxiPWIubmV4dCgpLnZhbHVlLApyaj1hLHNqPWIpfXJldHVybiB5aigpfTtFaj1mdW5jdGlvbihhKXt2YXIgYj0oMCxfLmVpKShOdW1iZXIoYSkpO2lmKCgwLF8uY2kpKGIpKXJldHVybiBfLmJoKGIpO2I9YS5pbmRleE9mKCIuIik7YiE9PS0xJiYoYT1hLnN1YnN0cmluZygwLGIpKTtyZXR1cm4gcWooKT9fLmJoKCgwLF8uYmkpKDY0LEJpZ0ludChhKSkpOl8uYmgoRGooYSkpfTtGaj1mdW5jdGlvbihhKXt2YXIgYj0oMCxfLmVpKShOdW1iZXIoYSkpO2lmKCgwLF8uY2kpKGIpKXJldHVybiBTdHJpbmcoYik7Yj1hLmluZGV4T2YoIi4iKTtiIT09LTEmJihhPWEuc3Vic3RyaW5nKDAsYikpO3JldHVybiBEaihhKX07CkdqPWZ1bmN0aW9uKGEpe2E9KDAsXy5laSkoYSk7aWYoISgwLF8uY2kpKGEpKXt2aihhKTt2YXIgYj1yaixjPXNqO2lmKGE9YyYyMTQ3NDgzNjQ4KWI9fmIrMT4+PjAsYz1+Yz4+PjAsYj09MCYmKGM9YysxPj4+MCk7dmFyIGQ9Yyo0Mjk0OTY3Mjk2KyhiPj4+MCk7Yj1OdW1iZXIuaXNTYWZlSW50ZWdlcihkKT9kOnhqKGIsYyk7YT10eXBlb2YgYj09PSJudW1iZXIiP2E/LWI6YjphPyItIitiOmJ9cmV0dXJuIGF9O0hqPWZ1bmN0aW9uKGEpe2E9KDAsXy5laSkoYSk7KDAsXy5jaSkoYSk/YT1TdHJpbmcoYSk6KHZqKGEpLGE9eWooKSk7cmV0dXJuIGF9O0lqPWZ1bmN0aW9uKGEpe3JldHVybigwLF8uY2kpKGEpP18uYmgoR2ooYSkpOl8uYmgoSGooYSkpfTsKXy5Kaj1mdW5jdGlvbihhKXt2YXIgYj12b2lkIDA7YiE9bnVsbHx8KGI9MTAyNCk7aWYoIUFqKGEpKXRocm93IHBqKCJpbnQ2NCIpO3ZhciBjPXR5cGVvZiBhO3N3aXRjaChiKXtjYXNlIDUxMjpzd2l0Y2goYyl7Y2FzZSAic3RyaW5nIjpyZXR1cm4gRmooYSk7Y2FzZSAiYmlnaW50IjpyZXR1cm4gU3RyaW5nKCgwLF8uYmkpKDY0LGEpKTtkZWZhdWx0OnJldHVybiBIaihhKX1jYXNlIDEwMjQ6c3dpdGNoKGMpe2Nhc2UgInN0cmluZyI6cmV0dXJuIEVqKGEpO2Nhc2UgImJpZ2ludCI6cmV0dXJuIF8uYmgoKDAsXy5iaSkoNjQsYSkpO2RlZmF1bHQ6cmV0dXJuIElqKGEpfWNhc2UgMDpzd2l0Y2goYyl7Y2FzZSAic3RyaW5nIjpyZXR1cm4gRmooYSk7Y2FzZSAiYmlnaW50IjpyZXR1cm4gXy5iaCgoMCxfLmJpKSg2NCxhKSk7ZGVmYXVsdDpyZXR1cm4gR2ooYSl9ZGVmYXVsdDp0aHJvdyBFcnJvcigiVW5rbm93biBmb3JtYXQgcmVxdWVzdGVkIHR5cGUgZm9yIGludDY0Iik7fX07CktqPWZ1bmN0aW9uKGEpe3ZhciBiPXR5cGVvZiBhO2lmKGE9PW51bGwpcmV0dXJuIGE7aWYoYj09PSJiaWdpbnQiKXJldHVybiBfLmJoKCgwLF8uYmkpKDY0LGEpKTtpZihBaihhKSlyZXR1cm4gYj09PSJzdHJpbmciP0VqKGEpOklqKGEpfTtfLkxqPWZ1bmN0aW9uKGEpe2lmKGEhPW51bGwmJnR5cGVvZiBhIT09InN0cmluZyIpdGhyb3cgRXJyb3IoKTtyZXR1cm4gYX07Xy5Naj1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oYil7cmV0dXJuIF8uZmooYSxiKX19OwpOaj1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoKXtlWzBdPTE3MzI1ODQxOTM7ZVsxXT00MDIzMjMzNDE3O2VbMl09MjU2MjM4MzEwMjtlWzNdPTI3MTczMzg3ODtlWzRdPTMyODUzNzc1MjA7bj1sPTB9ZnVuY3Rpb24gYihxKXtmb3IodmFyIHA9ZyxyPTA7cjw2NDtyKz00KXBbci80XT1xW3JdPDwyNHxxW3IrMV08PDE2fHFbcisyXTw8OHxxW3IrM107Zm9yKHI9MTY7cjw4MDtyKyspcT1wW3ItM11ecFtyLThdXnBbci0xNF1ecFtyLTE2XSxwW3JdPShxPDwxfHE+Pj4zMSkmNDI5NDk2NzI5NTtxPWVbMF07dmFyIHQ9ZVsxXSxBPWVbMl0sRD1lWzNdLEU9ZVs0XTtmb3Iocj0wO3I8ODA7cisrKXtpZihyPDQwKWlmKHI8MjApe3ZhciBiYT1EXnQmKEFeRCk7dmFyIFo9MTUxODUwMDI0OX1lbHNlIGJhPXReQV5ELFo9MTg1OTc3NTM5MztlbHNlIHI8NjA/KGJhPXQmQXxEJih0fEEpLFo9MjQwMDk1OTcwOCk6KGJhPXReQV5ELFo9MzM5NTQ2OTc4Mik7YmE9KChxPDw1fHE+Pj4yNykmNDI5NDk2NzI5NSkrCmJhK0UrWitwW3JdJjQyOTQ5NjcyOTU7RT1EO0Q9QTtBPSh0PDwzMHx0Pj4+MikmNDI5NDk2NzI5NTt0PXE7cT1iYX1lWzBdPWVbMF0rcSY0Mjk0OTY3Mjk1O2VbMV09ZVsxXSt0JjQyOTQ5NjcyOTU7ZVsyXT1lWzJdK0EmNDI5NDk2NzI5NTtlWzNdPWVbM10rRCY0Mjk0OTY3Mjk1O2VbNF09ZVs0XStFJjQyOTQ5NjcyOTV9ZnVuY3Rpb24gYyhxLHApe2lmKHR5cGVvZiBxPT09InN0cmluZyIpe3E9dW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KHEpKTtmb3IodmFyIHI9W10sdD0wLEE9cS5sZW5ndGg7dDxBOysrdClyLnB1c2gocS5jaGFyQ29kZUF0KHQpKTtxPXJ9cHx8KHA9cS5sZW5ndGgpO3I9MDtpZihsPT0wKWZvcig7cis2NDxwOyliKHEuc2xpY2UocixyKzY0KSkscis9NjQsbis9NjQ7Zm9yKDtyPHA7KWlmKGZbbCsrXT1xW3IrK10sbisrLGw9PTY0KWZvcihsPTAsYihmKTtyKzY0PHA7KWIocS5zbGljZShyLHIrNjQpKSxyKz02NCxuKz02NH1mdW5jdGlvbiBkKCl7dmFyIHE9W10sCnA9bio4O2w8NTY/YyhoLDU2LWwpOmMoaCw2NC0obC01NikpO2Zvcih2YXIgcj02MztyPj01NjtyLS0pZltyXT1wJjI1NSxwPj4+PTg7YihmKTtmb3Iocj1wPTA7cjw1O3IrKylmb3IodmFyIHQ9MjQ7dD49MDt0LT04KXFbcCsrXT1lW3JdPj50JjI1NTtyZXR1cm4gcX1mb3IodmFyIGU9W10sZj1bXSxnPVtdLGg9WzEyOF0saz0xO2s8NjQ7KytrKWhba109MDt2YXIgbCxuO2EoKTtyZXR1cm57cmVzZXQ6YSx1cGRhdGU6YyxkaWdlc3Q6ZCxmaDpmdW5jdGlvbigpe2Zvcih2YXIgcT1kKCkscD0iIixyPTA7cjxxLmxlbmd0aDtyKyspcCs9IjAxMjM0NTY3ODlBQkNERUYiLmNoYXJBdChNYXRoLmZsb29yKHFbcl0vMTYpKSsiMDEyMzQ1Njc4OUFCQ0RFRiIuY2hhckF0KHFbcl0lMTYpO3JldHVybiBwfX19O09qPWZ1bmN0aW9uKCl7dGhpcy5nPWRvY3VtZW50fHx7Y29va2llOiIifX07ClhqPWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwP1BqOmI7aWYoIVFqKXt2YXIgYzthPShjPWEubmF2aWdhdG9yKT09bnVsbD92b2lkIDA6Yy51c2VyQWdlbnREYXRhO2lmKCFhfHx0eXBlb2YgYS5nZXRIaWdoRW50cm9weVZhbHVlcyE9PSJmdW5jdGlvbiJ8fGEuYnJhbmRzJiZ0eXBlb2YgYS5icmFuZHMubWFwIT09ImZ1bmN0aW9uIilyZXR1cm4gUHJvbWlzZS5yZWplY3QoRXJyb3IoIm9hIikpO1JqKChhLmJyYW5kc3x8W10pLm1hcChmdW5jdGlvbihlKXt2YXIgZj1uZXcgU2o7Zj1fLlRqKGYsMSxlLmJyYW5kKTtyZXR1cm4gXy5UaihmLDIsZS52ZXJzaW9uKX0pKTt0eXBlb2YgYS5tb2JpbGU9PT0iYm9vbGVhbiImJl8uVWooVmosMixhLm1vYmlsZSk7UWo9YS5nZXRIaWdoRW50cm9weVZhbHVlcyhiKX12YXIgZD1uZXcgU2V0KGIpO3JldHVybiBRai50aGVuKGZ1bmN0aW9uKGUpe3ZhciBmPWxqKFZqKTtkLmhhcygicGxhdGZvcm0iKSYmXy5UaihmLDMsZS5wbGF0Zm9ybSk7ZC5oYXMoInBsYXRmb3JtVmVyc2lvbiIpJiYKXy5UaihmLDQsZS5wbGF0Zm9ybVZlcnNpb24pO2QuaGFzKCJhcmNoaXRlY3R1cmUiKSYmXy5UaihmLDUsZS5hcmNoaXRlY3R1cmUpO2QuaGFzKCJtb2RlbCIpJiZfLlRqKGYsNixlLm1vZGVsKTtkLmhhcygidWFGdWxsVmVyc2lvbiIpJiZfLlRqKGYsNyxlLnVhRnVsbFZlcnNpb24pO3JldHVybiBfLldqKGYpfSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4gXy5XaihWail9KX07WWo9ZnVuY3Rpb24oYSl7dGhpcy5nPXRoaXMuaD10aGlzLmo9YX07Xy5aaj1mdW5jdGlvbihhLGIpe3ZhciBjPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZD1jLnNsaWNlKCk7ZC5wdXNoLmFwcGx5KGQsYXJndW1lbnRzKTtyZXR1cm4gYS5hcHBseSh0aGlzLGQpfX07Xy5haz1mdW5jdGlvbihhLGIpe2EucWE/YigpOihhLld8fChhLlc9W10pLGEuVy5wdXNoKGIpKX07Yms9e1psOiEwfTtfLldqPWZ1bmN0aW9uKGEpe3JldHVybiBKU09OLnN0cmluZ2lmeShfLndoKGEpKX07Cm5qPXt9O21qPW51bGw7Y2s9e307Xy54aD1mdW5jdGlvbihhLGIpe2lmKGIhPT1jayl0aHJvdyBFcnJvcigiWiIpO3RoaXMubz1hO2lmKGEhPW51bGwmJmEubGVuZ3RoPT09MCl0aHJvdyBFcnJvcigiWSIpO307Xy54aC5wcm90b3R5cGUuZz1mdW5jdGlvbigpe3ZhciBhPXRoaXMubztpZihhPT1udWxsKWE9IiI7ZWxzZSBpZih0eXBlb2YgYSE9PSJzdHJpbmciKXtpZihfLlBoKXtmb3IodmFyIGI9IiIsYz0wLGQ9YS5sZW5ndGgtMTAyNDA7YzxkOyliKz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsYS5zdWJhcnJheShjLGMrPTEwMjQwKSk7Yis9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLGM/YS5zdWJhcnJheShjKTphKTthPWJ0b2EoYil9ZWxzZSBhPW9qKGEpO2E9dGhpcy5vPWF9cmV0dXJuIGF9O18uZGs9Xy5OZyh2b2lkIDAsIjFvYSIpO2VrPXt9O3JqPTA7c2o9MDt6aj0vXi0/KFsxLTldWzAtOV0qfDApKFwuWzAtOV0rKT8kLzsKXy5maz1mdW5jdGlvbihhLGIsYyl7Xy5yaShhKTt2YXIgZD1hLkosZT1kW18uSF18MDtpZihjPT1udWxsKXJldHVybiBfLnRpKGQsZSxiKSxhO2Zvcih2YXIgZj1jPT09Xy5UaD83OmNbXy5IXXwwLGc9ZixoPV8uRWkoZiksaz1ofHxPYmplY3QuaXNGcm96ZW4oYyksbD0hMCxuPSEwLHE9MDtxPGMubGVuZ3RoO3ErKyl7dmFyIHA9Y1txXTtofHwocD1fLldnKHApLGwmJihsPSFwKSxuJiYobj1wKSl9aHx8KGY9bD8xMzo1LGY9bj9mJi00MDk3OmZ8NDA5Nik7ayYmZj09PWd8fChjPV8ubWkoYyksZz0wLGY9Xy5EaShmLGUpKTtmIT09ZyYmXy5TZyhjLGYpO2U9Xy50aShkLGUsYixjKTsyJmZ8fCEoNDA5NiZmfHwxNiZmKXx8Xy5zaShkLGUpO3JldHVybiBhfTtfLmdrPWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/MDpjO2E9Q2ooXy5aaShhLGIpKTtyZXR1cm4gYSE9bnVsbD9hOmN9OwpfLmhrPWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/Xy5qaTpjO2E9Xy5aaShhLGIsdm9pZCAwLHZvaWQgMCxLaik7cmV0dXJuIGEhPW51bGw/YTpjfTtfLlVqPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy4kaShhLGIsYz09bnVsbD9jOl8ubmkoYykpfTtfLmlrPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy4kaShhLGIsYz09bnVsbD9jOl8uQmooYykpfTtfLmprPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy4kaShhLGIsYz09bnVsbD9jOl8uSmooYykpfTtfLlRqPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy4kaShhLGIsXy5MaihjKSl9O18ua2s9ZnVuY3Rpb24oYSxiLGMpe2lmKGMhPW51bGwpe2lmKCEoMCxfLmRpKShjKSl0aHJvdyBwaigiZW51bSIpO2N8PTB9cmV0dXJuIF8uJGkoYSxiLGMpfTsKbms9ZnVuY3Rpb24oKXt2YXIgYT1sayxiPW1rO3RoaXMuZz0xNzUyMzczNzU7dGhpcy5MYj1iO3RoaXMuaD1fLmJqO3RoaXMuZGVmYXVsdFZhbHVlPXZvaWQgMDt0aGlzLmo9YS5XbCE9bnVsbD9lazp2b2lkIDB9O25rLnByb3RvdHlwZS5yZWdpc3Rlcj1mdW5jdGlvbigpe18uUWModGhpcyl9O3ZhciBvaz1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIob2ssXy5KKTt2YXIgcGs9ZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJuIiI7aWYoL15hYm91dDooPzpibGFua3xzcmNkb2MpJC8udGVzdChhKSlyZXR1cm4gd2luZG93Lm9yaWdpbnx8IiI7YS5pbmRleE9mKCJibG9iOiIpPT09MCYmKGE9YS5zdWJzdHJpbmcoNSkpO2E9YS5zcGxpdCgiIyIpWzBdLnNwbGl0KCI/IilbMF07YT1hLnRvTG93ZXJDYXNlKCk7YS5pbmRleE9mKCIvLyIpPT0wJiYoYT13aW5kb3cubG9jYXRpb24ucHJvdG9jb2wrYSk7L15bXHdcLV0qOlwvXC8vLnRlc3QoYSl8fChhPXdpbmRvdy5sb2NhdGlvbi5ocmVmKTt2YXIgYj1hLnN1YnN0cmluZyhhLmluZGV4T2YoIjovLyIpKzMpLGM9Yi5pbmRleE9mKCIvIik7YyE9LTEmJihiPWIuc3Vic3RyaW5nKDAsYykpO2M9YS5zdWJzdHJpbmcoMCxhLmluZGV4T2YoIjovLyIpKTtpZighYyl0aHJvdyBFcnJvcigia2FgIithKTtpZihjIT09Imh0dHAiJiZjIT09Imh0dHBzIiYmYyE9PSJjaHJvbWUtZXh0ZW5zaW9uIiYmYyE9PSJtb3otZXh0ZW5zaW9uIiYmCmMhPT0iZmlsZSImJmMhPT0iYW5kcm9pZC1hcHAiJiZjIT09ImNocm9tZS1zZWFyY2giJiZjIT09ImNocm9tZS11bnRydXN0ZWQiJiZjIT09ImNocm9tZSImJmMhPT0iYXBwIiYmYyE9PSJkZXZ0b29scyIpdGhyb3cgRXJyb3IoImxhYCIrYyk7YT0iIjt2YXIgZD1iLmluZGV4T2YoIjoiKTtpZihkIT0tMSl7dmFyIGU9Yi5zdWJzdHJpbmcoZCsxKTtiPWIuc3Vic3RyaW5nKDAsZCk7aWYoYz09PSJodHRwIiYmZSE9PSI4MCJ8fGM9PT0iaHR0cHMiJiZlIT09IjQ0MyIpYT0iOiIrZX1yZXR1cm4gYysiOi8vIitiK2F9O3ZhciByaz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9U3RyaW5nKF8udi5sb2NhdGlvbi5ocmVmKTtyZXR1cm4gZCYmYSYmYj9bYixxayhwayhkKSxhLGN8fG51bGwpXS5qb2luKCIgIik6bnVsbH0scWs9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVtdLGU9W107aWYoKEFycmF5LmlzQXJyYXkoYyk/MjoxKT09MSlyZXR1cm4gZT1bYixhXSxfLnZjKGQsZnVuY3Rpb24oaCl7ZS5wdXNoKGgpfSksc2soZS5qb2luKCIgIikpO3ZhciBmPVtdLGc9W107Xy52YyhjLGZ1bmN0aW9uKGgpe2cucHVzaChoLmtleSk7Zi5wdXNoKGgudmFsdWUpfSk7Yz1NYXRoLmZsb29yKChuZXcgRGF0ZSkuZ2V0VGltZSgpLzFFMyk7ZT1mLmxlbmd0aD09MD9bYyxiLGFdOltmLmpvaW4oIjoiKSxjLGIsYV07Xy52YyhkLGZ1bmN0aW9uKGgpe2UucHVzaChoKX0pO2E9c2soZS5qb2luKCIgIikpO2E9W2MsYV07Zy5sZW5ndGg9PTB8fGEucHVzaChnLmpvaW4oIiIpKTtyZXR1cm4gYS5qb2luKCJfIil9LHNrPWZ1bmN0aW9uKGEpe3ZhciBiPQpOaigpO2IudXBkYXRlKGEpO3JldHVybiBiLmZoKCkudG9Mb3dlckNhc2UoKX07Xy5tPU9qLnByb3RvdHlwZTtfLm0uc2V0PWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0hMTtpZih0eXBlb2YgYz09PSJvYmplY3QiKXt2YXIgZT1jLnNhbWVTaXRlO2Q9Yy5zZWN1cmV8fCExO3ZhciBmPWMuZG9tYWlufHx2b2lkIDA7dmFyIGc9Yy5wYXRofHx2b2lkIDA7dmFyIGg9Yy5CaX1pZigvWzs9XHNdLy50ZXN0KGEpKXRocm93IEVycm9yKCJtYWAiK2EpO2lmKC9bO1xyXG5dLy50ZXN0KGIpKXRocm93IEVycm9yKCJuYWAiK2IpO2g9PT12b2lkIDAmJihoPS0xKTt0aGlzLmcuY29va2llPWErIj0iK2IrKGY/Ijtkb21haW49IitmOiIiKSsoZz8iO3BhdGg9IitnOiIiKSsoaDwwPyIiOmg9PTA/IjtleHBpcmVzPSIrKG5ldyBEYXRlKDE5NzAsMSwxKSkudG9VVENTdHJpbmcoKToiO2V4cGlyZXM9IisobmV3IERhdGUoRGF0ZS5ub3coKStoKjFFMykpLnRvVVRDU3RyaW5nKCkpKyhkPyI7c2VjdXJlIjoiIikrKGUhPW51bGw/IjtzYW1lc2l0ZT0iK2U6IiIpfTsKXy5tLmdldD1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1hKyI9IixkPSh0aGlzLmcuY29va2llfHwiIikuc3BsaXQoIjsiKSxlPTAsZjtlPGQubGVuZ3RoO2UrKyl7Zj1fLkFjKGRbZV0pO2lmKGYubGFzdEluZGV4T2YoYywwKT09MClyZXR1cm4gZi5zbGljZShjLmxlbmd0aCk7aWYoZj09YSlyZXR1cm4iIn1yZXR1cm4gYn07Xy5tLnJlbW92ZT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5nZXQoYSkhPT12b2lkIDA7dGhpcy5zZXQoYSwiIix7Qmk6MCxwYXRoOmIsZG9tYWluOmN9KTtyZXR1cm4gZH07Xy5tLk9jPWZ1bmN0aW9uKCl7cmV0dXJuIHRrKHRoaXMpLmtleXN9O18ubS5pYj1mdW5jdGlvbigpe3JldHVybiB0ayh0aGlzKS52YWx1ZXN9O18ubS5jbGVhcj1mdW5jdGlvbigpe2Zvcih2YXIgYT10ayh0aGlzKS5rZXlzLGI9YS5sZW5ndGgtMTtiPj0wO2ItLSl0aGlzLnJlbW92ZShhW2JdKX07CnZhciB0az1mdW5jdGlvbihhKXthPShhLmcuY29va2llfHwiIikuc3BsaXQoIjsiKTtmb3IodmFyIGI9W10sYz1bXSxkLGUsZj0wO2Y8YS5sZW5ndGg7ZisrKWU9Xy5BYyhhW2ZdKSxkPWUuaW5kZXhPZigiPSIpLGQ9PS0xPyhiLnB1c2goIiIpLGMucHVzaChlKSk6KGIucHVzaChlLnN1YnN0cmluZygwLGQpKSxjLnB1c2goZS5zdWJzdHJpbmcoZCsxKSkpO3JldHVybntrZXlzOmIsdmFsdWVzOmN9fTt2YXIgdWs9ZnVuY3Rpb24oYSxiLGMsZCl7KGE9Xy52W2FdKXx8dHlwZW9mIGRvY3VtZW50PT09InVuZGVmaW5lZCJ8fChhPShuZXcgT2opLmdldChiKSk7cmV0dXJuIGE/cmsoYSxjLGQpOm51bGx9LHZrPWZ1bmN0aW9uKGEpe3ZhciBiPXBrKF8udj09bnVsbD92b2lkIDA6Xy52LmxvY2F0aW9uLmhyZWYpLGM9W10sZDsoZD1fLnYuX19TQVBJU0lEfHxfLnYuX19BUElTSUR8fF8udi5fXzNQU0FQSVNJRHx8Xy52Ll9fMVBTQVBJU0lEfHxfLnYuX19PVkVSUklERV9TSUQpP2Q9ITA6KHR5cGVvZiBkb2N1bWVudCE9PSJ1bmRlZmluZWQiJiYoZD1uZXcgT2osZD1kLmdldCgiU0FQSVNJRCIpfHxkLmdldCgiQVBJU0lEIil8fGQuZ2V0KCJfX1NlY3VyZS0zUEFQSVNJRCIpfHxkLmdldCgiX19TZWN1cmUtMVBBUElTSUQiKSksZD0hIWQpO2QmJihkPShiPWIuaW5kZXhPZigiaHR0cHM6Iik9PTB8fGIuaW5kZXhPZigiY2hyb21lLWV4dGVuc2lvbjoiKT09MHx8Yi5pbmRleE9mKCJjaHJvbWUtdW50cnVzdGVkOi8vbmV3LXRhYi1wYWdlIik9PQowfHxiLmluZGV4T2YoIm1vei1leHRlbnNpb246Iik9PTApP18udi5fX1NBUElTSUQ6Xy52Ll9fQVBJU0lELGR8fHR5cGVvZiBkb2N1bWVudD09PSJ1bmRlZmluZWQifHwoZD1uZXcgT2osZD1kLmdldChiPyJTQVBJU0lEIjoiQVBJU0lEIil8fGQuZ2V0KCJfX1NlY3VyZS0zUEFQSVNJRCIpKSwoZD1kP3JrKGQsYj8iU0FQSVNJREhBU0giOiJBUElTSURIQVNIIixhKTpudWxsKSYmYy5wdXNoKGQpLGImJigoYj11aygiX18xUFNBUElTSUQiLCJfX1NlY3VyZS0xUEFQSVNJRCIsIlNBUElTSUQxUEhBU0giLGEpKSYmYy5wdXNoKGIpLChhPXVrKCJfXzNQU0FQSVNJRCIsIl9fU2VjdXJlLTNQQVBJU0lEIiwiU0FQSVNJRDNQSEFTSCIsYSkpJiZjLnB1c2goYSkpKTtyZXR1cm4gYy5sZW5ndGg9PTA/bnVsbDpjLmpvaW4oIiAiKX07dmFyIHdrPWZ1bmN0aW9uKCl7fSx4az1mdW5jdGlvbihhKXt2YXIgYixjLGQsZTtyZXR1cm4gXy5WaShmdW5jdGlvbihmKXtzd2l0Y2goZi5nKXtjYXNlIDE6cmV0dXJuIGI9bmV3IENvbXByZXNzaW9uU3RyZWFtKCJnemlwIiksYz0obmV3IFJlc3BvbnNlKGIucmVhZGFibGUpKS5hcnJheUJ1ZmZlcigpLGQ9Yi53cml0YWJsZS5nZXRXcml0ZXIoKSxmLmgoZC53cml0ZSgobmV3IFRleHRFbmNvZGVyKS5lbmNvZGUoYSkpLDIpO2Nhc2UgMjpyZXR1cm4gZi5oKGQuY2xvc2UoKSwzKTtjYXNlIDM6cmV0dXJuIGU9VWludDhBcnJheSxmLmgoYyw0KTtjYXNlIDQ6cmV0dXJuIGYucmV0dXJuKG5ldyBlKGYuaikpfX0pfTt3ay5wcm90b3R5cGUuVGE9ZnVuY3Rpb24oYSl7cmV0dXJuIGE8MTAyND8hMTp0eXBlb2YgQ29tcHJlc3Npb25TdHJlYW0hPT0idW5kZWZpbmVkIn07dmFyIHlrPWZ1bmN0aW9uKGEsYil7dGhpcy5oPWE7dGhpcy5vPWI7dGhpcy5nPSExO3RoaXMuaj1mdW5jdGlvbigpe3JldHVybiBEYXRlLm5vdygpfTt0aGlzLmw9dGhpcy5qKCl9LHprPWZ1bmN0aW9uKGEsYil7YS5oPWI7YS50aW1lciYmYS5nPyhhLnN0b3AoKSxhLnN0YXJ0KCkpOmEudGltZXImJmEuc3RvcCgpfTt5ay5wcm90b3R5cGUuc3RhcnQ9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuZz0hMDt0aGlzLnRpbWVyfHwodGhpcy50aW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS50aWNrKCl9LHRoaXMuaCksdGhpcy5sPXRoaXMuaigpKX07eWsucHJvdG90eXBlLnN0b3A9ZnVuY3Rpb24oKXt0aGlzLmc9ITE7dGhpcy50aW1lciYmKGNsZWFyVGltZW91dCh0aGlzLnRpbWVyKSx0aGlzLnRpbWVyPXZvaWQgMCl9Owp5ay5wcm90b3R5cGUudGljaz1mdW5jdGlvbigpe3ZhciBhPXRoaXM7aWYodGhpcy5nKXt2YXIgYj1NYXRoLm1heCh0aGlzLmooKS10aGlzLmwsMCk7Yjx0aGlzLmgqLjg/dGhpcy50aW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS50aWNrKCl9LHRoaXMuaC1iKToodGhpcy50aW1lciYmKGNsZWFyVGltZW91dCh0aGlzLnRpbWVyKSx0aGlzLnRpbWVyPXZvaWQgMCksdGhpcy5vKCksdGhpcy5nJiYodGhpcy5zdG9wKCksdGhpcy5zdGFydCgpKSl9ZWxzZSB0aGlzLnRpbWVyPXZvaWQgMH07dmFyIEFrPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihBayxfLkopO3ZhciBCaz1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoQmssXy5KKTt2YXIgQ2s9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKENrLF8uSik7Q2sucHJvdG90eXBlLlBkPWZ1bmN0aW9uKCl7cmV0dXJuIF8uZGoodGhpcywxKX07dmFyIFNqPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihTaixfLkopO3ZhciBEaz1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoRGssXy5KKTt2YXIgUmo9ZnVuY3Rpb24oYSl7Xy5mayhWaiwxLGEpfSxFaz1fLk1qKERrKTt2YXIgRms9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKEZrLF8uSik7dmFyIFBqPVsicGxhdGZvcm0iLCJwbGF0Zm9ybVZlcnNpb24iLCJhcmNoaXRlY3R1cmUiLCJtb2RlbCIsInVhRnVsbFZlcnNpb24iXSxWaj1uZXcgRGssUWo9bnVsbDt2YXIgR2s9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKEdrLF8uSik7dmFyIEhrPWZ1bmN0aW9uKGEpe3JldHVybiBfLmtrKGEsMSwxKX07dmFyIElrPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihJayxfLkopO0lrLnByb3RvdHlwZS5NYT1mdW5jdGlvbigpe3JldHVybiBfLk4odGhpcywyKX07SWsucHJvdG90eXBlLmNiPWZ1bmN0aW9uKGEpe18uVGoodGhpcywyLGEpfTt2YXIgSms9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhLDQpfTtfLkIoSmssXy5KKTtfLktrPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSwzNyl9O18uQihfLktrLF8uSik7Xy5Lay5wcm90b3R5cGUuY2I9ZnVuY3Rpb24oYSl7Xy5yaSh0aGlzKTt2YXIgYj10aGlzLkosYz1fLklpKHRoaXMsYixiW18uSF18MCxJaywzLDIsITApO2lmKHR5cGVvZiBhIT09Im51bWJlciJ8fGE8MHx8YT5jLmxlbmd0aCl0aHJvdyBFcnJvcigpO2EhPXZvaWQgMD9jLnNwbGljZShhLDEsdm9pZCAwKTpjLnB1c2godm9pZCAwKTt2YXIgZD1hPWM9PT1fLlRoPzc6Y1tfLkhdfDAsZT1fLldnKCk7ZT8oYSY9LTksYy5sZW5ndGg9PT0xJiYoYSY9LTQwOTcpKTphfD00MDk2O2EhPT1kJiZfLlNnKGMsYSk7ZXx8Xy5zaShiKX07Xy5Maz1mdW5jdGlvbihhLGIpe3JldHVybiBfLlRqKGEsOCxiKX07dmFyIE1rPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSwxOSl9O18uQihNayxfLkopO01rLnByb3RvdHlwZS52Yz1mdW5jdGlvbihhKXtyZXR1cm4gXy5rayh0aGlzLDIsYSl9O3ZhciBPaz1mdW5jdGlvbihhLGIpe3RoaXMuYWI9Yj1iPT09dm9pZCAwPyExOmI7dGhpcy5qPXRoaXMubG9jYWxlPW51bGw7dGhpcy5oPTA7dGhpcy5sPSExO3RoaXMuZz1uZXcgTWs7TnVtYmVyLmlzSW50ZWdlcihhKSYmdGhpcy5nLnZjKGEpO2J8fCh0aGlzLmxvY2FsZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJsYW5nIikpO05rKHRoaXMsbmV3IEdrKX07T2sucHJvdG90eXBlLnZjPWZ1bmN0aW9uKGEpe3RoaXMuZy52YyhhKTtyZXR1cm4gdGhpc307CnZhciBOaz1mdW5jdGlvbihhLGIpe18uTChhLmcsMSxiKTtfLmRqKGIsMSl8fEhrKGIpO2EuYWJ8fChiPVBrKGEpLF8uTihiLDUpfHxfLlRqKGIsNSxhLmxvY2FsZSkpO2EuaiYmKGI9UGsoYSksXy5iaihiLERrLDkpfHxfLkwoYiw5LGEuaikpfSxRaz1mdW5jdGlvbihhLGIpe2EuaD1ifSxSaz1mdW5jdGlvbihhKXt2YXIgYj1iPT09dm9pZCAwP1BqOmI7dmFyIGM9YS5hYj92b2lkIDA6Xy5tYigpO2M/WGooYyxiKS50aGVuKGZ1bmN0aW9uKGQpe2Euaj1FayhkIT1udWxsP2Q6IltdIik7ZD1QayhhKTtfLkwoZCw5LGEuaik7cmV0dXJuITB9KS5jYXRjaChmdW5jdGlvbigpe3JldHVybiExfSk6UHJvbWlzZS5yZXNvbHZlKCExKX0sUGs9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5iaihhLmcsR2ssMSk7Ynx8KGI9bmV3IEdrLE5rKGEsYikpO2E9YjtiPV8uYmooYSxGaywxMSk7Ynx8KGI9bmV3IEZrLF8uTChhLDExLGIpKTtyZXR1cm4gYn0sU2s9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyl7Yz1jPT09CnZvaWQgMD8wOmM7ZD1kPT09dm9pZCAwPzA6ZDtlPWU9PT12b2lkIDA/bnVsbDplO2Y9Zj09PXZvaWQgMD8wOmY7Zz1nPT09dm9pZCAwPzA6ZztpZighYS5hYil7dmFyIGg9UGsoYSk7dmFyIGs9bmV3IENrO2s9Xy5rayhrLDEsYS5oKTtrPV8uVWooaywyLGEubCk7ZD1fLmlrKGssMyxkPjA/ZDp2b2lkIDApO2Q9Xy5payhkLDQsZj4wP2Y6dm9pZCAwKTtkPV8uaWsoZCw1LGc+MD9nOnZvaWQgMCk7Zj1kLko7Zz1mW18uSF18MDtkPV8uV2coZCxnKT9kOl8uSWgoZCxmLGcpP18uSGgoZCxmKTpuZXcgZC5jb25zdHJ1Y3RvcihfLkdoKGYsZywhMCkpO18uTChoLDEwLGQpfWE9bGooYS5nKTtoPURhdGUubm93KCkudG9TdHJpbmcoKTthPV8uJGkoYSw0LGg9PW51bGw/aDpfLkpqKGgpKTtiPV8uZmsoYSwzLGIuc2xpY2UoKSk7ZSYmKGE9bmV3IEFrLGU9Xy5payhhLDEzLGUpLGE9bmV3IEJrLGU9Xy5MKGEsMixlKSxhPW5ldyBKayxlPV8uTChhLDEsZSksZT1fLmtrKGUsMiw5KSxfLkwoYiwxOCwKZSkpO2MmJl8uamsoYiwxNCxjKTtyZXR1cm4gYn07WWoucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5nPXRoaXMuaD10aGlzLmp9O1lqLnByb3RvdHlwZS5NYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmh9O3ZhciBsaz1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEsOCl9O18uQihsayxfLkopO3ZhciBUaz1fLk1qKGxrKTt2YXIgbWs9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKG1rLF8uSik7dmFyIFVrO1VrPW5ldyBuazt2YXIgWWs9ZnVuY3Rpb24oYSl7Xy51LmNhbGwodGhpcyk7dmFyIGI9dGhpczt0aGlzLmc9W107dGhpcy5sYT0iIjt0aGlzLks9dGhpcy5MPSExO3RoaXMucmE9dGhpcy5JPS0xO3RoaXMuUj0hMTt0aGlzLkQ9dGhpcy5leHBlcmltZW50SWRzPW51bGw7dGhpcy5BPXRoaXMubD0wO3RoaXMuQz1udWxsO3RoaXMuRj10aGlzLkc9MDt0aGlzLndhPTE7dGhpcy53Yz0wO3RoaXMuT2I9YS5PYjt0aGlzLnRiPWEudGJ8fGZ1bmN0aW9uKCl7fTt0aGlzLmo9bmV3IE9rKGEuT2IsYS5hYik7dGhpcy56YT1hLnphfHxudWxsO3RoaXMuQ2I9YS5DYnx8bnVsbDt0aGlzLkI9YS5hanx8bnVsbDt0aGlzLm1iPWEubWJ8fG51bGw7dGhpcy5jYz1hLmNjfHwhMTt0aGlzLndpdGhDcmVkZW50aWFscz0hYS5NYzt0aGlzLmFiPWEuYWJ8fCExO3RoaXMuVD0hdGhpcy5hYiYmISFfLm1iKCkmJiEhXy5tYigpLm5hdmlnYXRvciYmXy5tYigpLm5hdmlnYXRvci5zZW5kQmVhY29uIT09dm9pZCAwO3RoaXMuUD10eXBlb2YgVVJMU2VhcmNoUGFyYW1zIT09CiJ1bmRlZmluZWQiJiYhIShuZXcgVVJMKFZrKCkpKS5zZWFyY2hQYXJhbXMmJiEhKG5ldyBVUkwoVmsoKSkpLnNlYXJjaFBhcmFtcy5zZXQ7dmFyIGM9SGsobmV3IEdrKTtOayh0aGlzLmosYyk7dGhpcy5vPW5ldyBZaigxRTQpO2E9V2sodGhpcyxhLk9lKTt0aGlzLmg9bmV3IHlrKHRoaXMuby5NYSgpLGEpO3RoaXMuTz1uZXcgeWsoNkU1LGEpO3RoaXMuY2N8fHRoaXMuTy5zdGFydCgpO2lmKCF0aGlzLmFiKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixmdW5jdGlvbigpe2lmKGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT09PSJoaWRkZW4iKXtYayhiKTt2YXIgZjsoZj1iLkMpPT1udWxsfHxmLmZsdXNoKCl9fSk7dmFyIGQsZTsoZD1fLm1iKCkpPT1udWxsfHwoZT1kLmFkZEV2ZW50TGlzdGVuZXIpPT1udWxsfHxlLmNhbGwoZCwicGFnZWhpZGUiLGZ1bmN0aW9uKCl7WGsoYik7dmFyIGY7KGY9Yi5DKT09bnVsbHx8Zi5mbHVzaCgpfSl9fSxaayxibCwKJGs7Xy5CKFlrLF8udSk7dmFyIFdrPWZ1bmN0aW9uKGEsYil7aWYoIWEuUClyZXR1cm4gZnVuY3Rpb24oKXt9O3ZhciBjPWZ1bmN0aW9uKCl7YS5mbHVzaCgpfTtyZXR1cm4gYj9mdW5jdGlvbigpe2IoKS50aGVuKGMpfTpjfTtZay5wcm90b3R5cGUuTT1mdW5jdGlvbigpe1hrKHRoaXMpO3RoaXMuaC5zdG9wKCk7dGhpcy5PLnN0b3AoKTtfLnUucHJvdG90eXBlLk0uY2FsbCh0aGlzKX07Wms9ZnVuY3Rpb24oYSl7YS5CfHwoYS5CPVZrKCkpO3RyeXtyZXR1cm4obmV3IFVSTChhLkIpKS50b1N0cmluZygpfWNhdGNoKGIpe3JldHVybihuZXcgVVJMKGEuQixfLm1iKCkubG9jYXRpb24ub3JpZ2luKSkudG9TdHJpbmcoKX19O18uYWw9ZnVuY3Rpb24oYSxiKXtpZihiIGluc3RhbmNlb2YgXy5LaylhLmxvZyhiKTtlbHNlIHRyeXt2YXIgYz1fLkxrKG5ldyBfLktrLF8uV2ooYikpO2EubG9nKGMpfWNhdGNoKGQpeyRrKGEsNCwxKX19OwpibD1mdW5jdGlvbihhLGIpe2Eubz1uZXcgWWooYjwxPzE6Yik7emsoYS5oLGEuby5NYSgpKX07JGs9ZnVuY3Rpb24oYSxiLGMpe2EuQyYmYS5DLlNsKGIsYyl9OwpZay5wcm90b3R5cGUubG9nPWZ1bmN0aW9uKGEpeyRrKHRoaXMsMiwxKTtpZih0aGlzLlApe2E9bGooYSk7dmFyIGI9dGhpcy53YSsrO2I9YT1fLmprKGEsMjEsYik7dmFyIGM9Xy5aaShiLDEpO3ZhciBkPWQ9PT12b2lkIDA/ITE6ZDt2YXIgZT10eXBlb2YgYztkPWM9PW51bGw/YzplPT09ImJpZ2ludCI/U3RyaW5nKCgwLF8uYmkpKDY0LGMpKTpBaihjKT9lPT09InN0cmluZyI/RmooYyk6ZD9IaihjKTpHaihjKTp2b2lkIDA7ZD09bnVsbCYmKGQ9RGF0ZS5ub3coKSxkPU51bWJlci5pc0Zpbml0ZShkKT9kLnRvU3RyaW5nKCk6IjAiLF8uJGkoYiwxLGQ9PW51bGw/ZDpfLkpqKGQpKSk7ZD1fLlppKGIsMTUsdm9pZCAwLHZvaWQgMCxLaik7ZCE9bnVsbCYmKHR5cGVvZiBkPT09ImJpZ2ludCI/KDAsXy52aCkoZCk/ZD1OdW1iZXIoZCk6KGQ9KDAsXy5iaSkoNjQsZCksZD0oMCxfLnZoKShkKT9OdW1iZXIoZCk6U3RyaW5nKGQpKTpkPUFqKGQpP3R5cGVvZiBkPT09Im51bWJlciI/R2ooZCk6CkZqKGQpOnZvaWQgMCk7ZCE9bnVsbHx8Xy5qayhiLDE1LChuZXcgRGF0ZSkuZ2V0VGltZXpvbmVPZmZzZXQoKSo2MCk7dGhpcy5leHBlcmltZW50SWRzJiYoZD1saih0aGlzLmV4cGVyaW1lbnRJZHMpLF8uTChiLDE2LGQpKTskayh0aGlzLDEsMSk7Yj10aGlzLmcubGVuZ3RoLTFFMysxO2I+MCYmKHRoaXMuZy5zcGxpY2UoMCxiKSx0aGlzLmwrPWIsJGsodGhpcywzLGIpKTt0aGlzLmcucHVzaChhKTt0aGlzLmNjfHx0aGlzLmguZ3x8dGhpcy5oLnN0YXJ0KCl9fTsKWWsucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcztpZih0aGlzLmcubGVuZ3RoPT09MClhJiZhKCk7ZWxzZXt2YXIgZD1EYXRlLm5vdygpO2lmKHRoaXMucmE+ZCYmdGhpcy5JPGQpYiYmYigidGhyb3R0bGVkIik7ZWxzZXt0aGlzLnphJiYodHlwZW9mIHRoaXMuemEuUGQ9PT0iZnVuY3Rpb24iP1FrKHRoaXMuaix0aGlzLnphLlBkKCkpOnRoaXMuai5oPTApO3ZhciBlPXRoaXMuZy5sZW5ndGgsZj1Tayh0aGlzLmosdGhpcy5nLHRoaXMubCx0aGlzLkEsdGhpcy5DYix0aGlzLkcsdGhpcy5GKSxnPXRoaXMudGIoKTtpZihnJiZ0aGlzLmxhPT09ZyliJiZiKCJzdGFsZS1hdXRoLXRva2VuIik7ZWxzZXt0aGlzLmc9W107dGhpcy5oLmcmJnRoaXMuaC5zdG9wKCk7dGhpcy5sPTA7ZD1fLldqKGYpO3ZhciBoO3RoaXMuRCYmdGhpcy5ELlRhKGQubGVuZ3RoKSYmKGg9eGsoZCkpO3ZhciBrPWNsKHRoaXMsZCxnKSxsPWZ1bmN0aW9uKHApe2Muby5yZXNldCgpO3prKGMuaCwKYy5vLk1hKCkpO2lmKHApe3ZhciByPW51bGw7dHJ5e3ZhciB0PUpTT04uc3RyaW5naWZ5KEpTT04ucGFyc2UocC5yZXBsYWNlKCIpXX0nXG4iLCIiKSkpO3I9VGsodCl9Y2F0Y2goRSl7fWlmKHIpe3A9TnVtYmVyKF8uaGsociwxLF8uYmgoIi0xIikpKTtwPjAmJihjLkk9RGF0ZS5ub3coKSxjLnJhPWMuSStwKTtwPVVrLmc7dD1fLnBoKF8ucWgpO3ZhciBBO18uT2cmJnQmJigoQT1yLkpbdF0pPT1udWxsP3ZvaWQgMDpBW3BdKSE9bnVsbCYmXy5NZyhfLlJoLDMpO2E6e0E9VWsuZzt2YXIgRD1EPT09dm9pZCAwPyExOkQ7aWYoXy5waChfLlNoKSYmXy5waChfLnFoKSYmdm9pZCAwPT09Xy5TaCl7cD1yLko7dD1wW18ucWhdO2lmKCF0KWJyZWFrIGE7aWYodD10LmJtKXRyeXt0KHAsQSxiayk7YnJlYWsgYX1jYXRjaChFKXtfLnJiKEUpfX1EJiYoRD1yLkosKHA9Xy5waChfLnFoKSkmJnAgaW4gRCYmKEQ9RFtwXSkmJmRlbGV0ZSBEW0FdKX1EPVVrLkxiP1VrLmgocixVay5MYixVay5nLFVrLmopOgpVay5oKHIsVWsuZyxudWxsLFVrLmopO2lmKEQ9RD09PW51bGw/dm9pZCAwOkQpRD1fLmdrKEQsMSwtMSksRCE9PS0xJiYoYy5SfHxibChjLEQpKX19YSYmYSgpO2MuQT0wfSxuPWZ1bmN0aW9uKHAscil7dmFyIHQ9Xy5jaihmLF8uS2ssMyk7dmFyIEE9TnVtYmVyKF8uaGsoZiwxNCkpLEQ9Yy5vO0QuZz1NYXRoLm1pbigzRTUsRC5nKjIpO0QuaD1NYXRoLm1pbigzRTUsRC5nK01hdGgucm91bmQoLjEqKE1hdGgucmFuZG9tKCktLjUpKjIqRC5nKSk7emsoYy5oLGMuby5NYSgpKTtwPT09NDAxJiZnJiYoYy5sYT1nKTtBJiYoYy5sKz1BKTtyPT09dm9pZCAwJiYocj01MDA8PXAmJnA8NjAwfHxwPT09NDAxfHxwPT09MCk7ciYmKGMuZz10LmNvbmNhdChjLmcpLGMuY2N8fGMuaC5nfHxjLmguc3RhcnQoKSk7JGsoYyw3LDEpO2ImJmIoIm5ldC1zZW5kLWZhaWxlZCIscCk7KytjLkF9LHE9ZnVuY3Rpb24oKXtjLnphJiZjLnphLnNlbmQoayxsLG4pfTtoP2gudGhlbihmdW5jdGlvbihwKXskayhjLAo1LGUpO2submVbIkNvbnRlbnQtRW5jb2RpbmciXT0iZ3ppcCI7ay5uZVsiQ29udGVudC1UeXBlIl09ImFwcGxpY2F0aW9uL2JpbmFyeSI7ay5ib2R5PXA7ay5aZz0yO3EoKX0sZnVuY3Rpb24oKXskayhjLDYsZSk7cSgpfSk6cSgpfX19fTsKdmFyIGNsPWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/bnVsbDpjO3ZhciBkPWQ9PT12b2lkIDA/YS53aXRoQ3JlZGVudGlhbHM6ZDt2YXIgZT17fSxmPW5ldyBVUkwoWmsoYSkpO2MmJihlLkF1dGhvcml6YXRpb249Yyk7YS5tYiYmKGVbIlgtR29vZy1BdXRoVXNlciJdPWEubWIsZi5zZWFyY2hQYXJhbXMuc2V0KCJhdXRodXNlciIsYS5tYikpO3JldHVybnt1cmw6Zi50b1N0cmluZygpLGJvZHk6YixaZzoxLG5lOmUsTGk6IlBPU1QiLHdpdGhDcmVkZW50aWFsczpkLHdjOmEud2N9fSxYaz1mdW5jdGlvbihhKXthLmoubD0hMDthLkwmJihhLmouaD0zLGRsKGEpKTthLksmJihhLmouaD0yLGVsKGEpKTthLmZsdXNoKCk7YS5qLmw9ITF9LGRsPWZ1bmN0aW9uKGEpe2ZsKGEsMzIsMTAsZnVuY3Rpb24oYixjKXtiPW5ldyBVUkwoYik7Yi5zZWFyY2hQYXJhbXMuc2V0KCJmb3JtYXQiLCJqc29uIik7dmFyIGQ9ITE7dHJ5e2Q9Xy5tYigpLm5hdmlnYXRvci5zZW5kQmVhY29uKGIudG9TdHJpbmcoKSwKXy5XaihjKSl9Y2F0Y2goZSl7fWR8fChhLlQ9ITEpO3JldHVybiBkfSl9LGVsPWZ1bmN0aW9uKGEpe2ZsKGEsNiw1LGZ1bmN0aW9uKGIsYyl7Yj1uZXcgVVJMKGIpO2Iuc2VhcmNoUGFyYW1zLnNldCgiZm9ybWF0IiwiYmFzZTY0anNvbiIpO3ZhciBkPWIuc2VhcmNoUGFyYW1zLGU9ZC5zZXQ7Yz1fLldqKGMpO2Zvcih2YXIgZj1bXSxnPTAsaD0wO2g8Yy5sZW5ndGg7aCsrKXt2YXIgaz1jLmNoYXJDb2RlQXQoaCk7az4yNTUmJihmW2crK109ayYyNTUsaz4+PTgpO2ZbZysrXT1rfWM9b2ooZiwzKTtlLmNhbGwoZCwicCIsYyk7Yj1iLnRvU3RyaW5nKCk7aWYoYi5sZW5ndGg+MTUzNjApcmV0dXJuITE7KG5ldyBJbWFnZSkuc3JjPWI7cmV0dXJuITB9KX0sZmw9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYS5nLmxlbmd0aCE9PTApe3ZhciBlPW5ldyBVUkwoWmsoYSkpO2Uuc2VhcmNoUGFyYW1zLmRlbGV0ZSgiZm9ybWF0Iik7dmFyIGY9YS50YigpO2YmJmUuc2VhcmNoUGFyYW1zLnNldCgiYXV0aCIsCmYpO2Uuc2VhcmNoUGFyYW1zLnNldCgiYXV0aHVzZXIiLGEubWJ8fCIwIik7Zm9yKGY9MDtmPGMmJmEuZy5sZW5ndGg7KytmKXt2YXIgZz1hLmcuc2xpY2UoMCxiKSxoPVNrKGEuaixnLGEubCxhLkEsYS5DYixhLkcsYS5GKTtpZighZChlLnRvU3RyaW5nKCksaCkpeysrYS5BO2JyZWFrfWEubD0wO2EuQT0wO2EuRz0wO2EuRj0wO2EuZz1hLmcuc2xpY2UoZy5sZW5ndGgpfWEuaC5nJiZhLmguc3RvcCgpfX0sVms9ZnVuY3Rpb24oKXtyZXR1cm4iaHR0cHM6Ly9wbGF5Lmdvb2dsZS5jb20vbG9nP2Zvcm1hdD1qc29uJmhhc2Zhc3Q9dHJ1ZSJ9O3ZhciBnbD1mdW5jdGlvbigpe3RoaXMuVmc9dHlwZW9mIEFib3J0Q29udHJvbGxlciE9PSJ1bmRlZmluZWQifTsKZ2wucHJvdG90eXBlLnNlbmQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMsZSxmLGcsaCxrLGwsbixxLHAscjtyZXR1cm4gXy5WaShmdW5jdGlvbih0KXtzd2l0Y2godC5nKXtjYXNlIDE6cmV0dXJuIGY9KGU9ZC5WZz9uZXcgQWJvcnRDb250cm9sbGVyOnZvaWQgMCkmJmEud2M+MD9zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZS5hYm9ydCgpfSxhLndjKTp2b2lkIDAsdC5GKDIsMyksZz1PYmplY3QuYXNzaWduKHt9LHttZXRob2Q6YS5MaSxoZWFkZXJzOk9iamVjdC5hc3NpZ24oe30sYS5uZSl9LGEuYm9keSYme2JvZHk6YS5ib2R5fSxhLndpdGhDcmVkZW50aWFscyYme2NyZWRlbnRpYWxzOiJpbmNsdWRlIn0se3NpZ25hbDphLndjJiZlP2Uuc2lnbmFsOm51bGx9KSx0LmgoZmV0Y2goYS51cmwsZyksNSk7Y2FzZSA1Omg9dC5qO2lmKGguc3RhdHVzIT09MjAwKXsoaz1jKT09bnVsbHx8ayhoLnN0YXR1cyk7dC54YSgzKTticmVha31pZigobD1iKT09bnVsbCl7dC54YSg3KTticmVha31yZXR1cm4gdC5oKGgudGV4dCgpLAo4KTtjYXNlIDg6bCh0LmopO2Nhc2UgNzpjYXNlIDM6dC5MKCk7Y2xlYXJUaW1lb3V0KGYpO3QucWEoMCk7YnJlYWs7Y2FzZSAyOm49dC5EKCk7c3dpdGNoKChxPW4pPT1udWxsP3ZvaWQgMDpxLm5hbWUpe2Nhc2UgIkFib3J0RXJyb3IiOihwPWMpPT1udWxsfHxwKDQwOCk7YnJlYWs7ZGVmYXVsdDoocj1jKT09bnVsbHx8cig0MDApfXQueGEoMyl9fSl9O2dsLnByb3RvdHlwZS5QZD1mdW5jdGlvbigpe3JldHVybiA0fTtfLmhsPWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwPyIwIjpiO18udS5jYWxsKHRoaXMpO3RoaXMuT2I9YTt0aGlzLm1iPWI7dGhpcy5BPSJodHRwczovL3BsYXkuZ29vZ2xlLmNvbS9sb2c/Zm9ybWF0PWpzb24maGFzZmFzdD10cnVlIjt0aGlzLmc9dGhpcy5DYj10aGlzLnphPXRoaXMuaD1udWxsO3RoaXMubD10aGlzLm89ITE7dGhpcy5qPW51bGx9O18uQihfLmhsLF8udSk7Xy5pbD1mdW5jdGlvbihhLGIpe2EudGI9YjtyZXR1cm4gYX07Xy5qbD1mdW5jdGlvbihhKXthLm89ITA7cmV0dXJuIGF9O18uaGwucHJvdG90eXBlLk1jPWZ1bmN0aW9uKCl7dGhpcy5CPSEwO3JldHVybiB0aGlzfTsKXy5rbD1mdW5jdGlvbihhKXthLnphfHwoYS56YT1uZXcgZ2wpO3ZhciBiPW5ldyBZayh7T2I6YS5PYix0YjphLnRiP2EudGI6dmssbWI6YS5tYixhajphLkEsYWI6ITEsY2M6ITEsTWM6YS5CLE9lOmEuT2UsemE6YS56YX0pO18uYWsoYSxfLlpqKF8ucGEsYikpO2lmKGEuaCl7dmFyIGM9YS5oLGQ9UGsoYi5qKTtfLlRqKGQsNyxjKX1iLkQ9bmV3IHdrO2EuQ2ImJihiLkNiPWEuQ2IpO2EuZyYmKChkPWEuZyk/KGIuZXhwZXJpbWVudElkc3x8KGIuZXhwZXJpbWVudElkcz1uZXcgb2spLGM9Yi5leHBlcmltZW50SWRzLGQ9Xy5XaihkKSxfLlRqKGMsNCxkKSk6Yi5leHBlcmltZW50SWRzJiZfLiRpKGIuZXhwZXJpbWVudElkcyw0KSk7YS5vJiYoYi5MPWEubyYmYi5UKTthLmwmJihiLks9YS5sKTthLmomJihjPWEuaixiLlI9ITAsYmwoYixjKSk7UmsoYi5qKTthLnphLnZjJiZhLnphLnZjKGEuT2IpO2EuemEuUWkmJmEuemEuUWkoYik7cmV0dXJuIGJ9O18ubGw9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKF8ubGwsXy5KKTtfLm09Xy5sbC5wcm90b3R5cGU7Xy5tLkphPWZ1bmN0aW9uKCl7cmV0dXJuIF8uTih0aGlzLDE2KX07Xy5tLk5hPWZ1bmN0aW9uKGEpe3JldHVybiBfLlRqKHRoaXMsMTYsYSl9O18ubS5vYT1mdW5jdGlvbigpe3JldHVybiBfLk4odGhpcywxKX07Xy5tLm5hPWZ1bmN0aW9uKGEpe3JldHVybiBfLlRqKHRoaXMsMSxhKX07Xy5tLk9kPWZ1bmN0aW9uKCl7cmV0dXJuIF8uZGoodGhpcyw1Myl9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLm1sPWZ1bmN0aW9uKGEpe3ZhciBiPV8uS2EoKTthPWI/Yi5jcmVhdGVIVE1MKGEpOmE7cmV0dXJuIG5ldyBfLkRjKGEpfTtfLm5sPWZ1bmN0aW9uKGEsYil7Yj1fLkVnKGIpO2IhPT12b2lkIDAmJihhLmhyZWY9Yil9O18ub2w9e307Xy5wbD1mdW5jdGlvbihhKXt0aGlzLmc9YX07Xy5wbC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nfTtfLnFsPXt9O18uemY9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiSyIpO307Xy56Zi5wcm90b3R5cGUuSmQ9bnVsbDtfLnpmLnByb3RvdHlwZS5tYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbnRlbnR9O18uemYucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY29udGVudH07Xy56Zi5wcm90b3R5cGUuVGI9ZnVuY3Rpb24oKXtpZih0aGlzLlpiIT09Xy5xbCl0aHJvdyBFcnJvcigiTCIpO3JldHVybiBfLm1sKHRoaXMudG9TdHJpbmcoKSl9O3ZhciBybD1mdW5jdGlvbigpe18uemYuY2FsbCh0aGlzKX07Cl8uRyhybCxfLnpmKTtybC5wcm90b3R5cGUuWmI9Xy5xbDt2YXIgc2w9ZnVuY3Rpb24oKXtfLnpmLmNhbGwodGhpcyl9O18uRyhzbCxfLnpmKTtzbC5wcm90b3R5cGUuWmI9Xy5vbDtzbC5wcm90b3R5cGUuSmQ9MTtzbC5wcm90b3R5cGUuaj1mdW5jdGlvbigpe3JldHVybiBuZXcgXy5wbCh0aGlzLnRvU3RyaW5nKCkpfTtfLnRsPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoYyl7dGhpcy5jb250ZW50PWN9Yi5wcm90b3R5cGU9YS5wcm90b3R5cGU7cmV0dXJuIGZ1bmN0aW9uKGMsZCl7Yz1uZXcgYihTdHJpbmcoYykpO2QhPT12b2lkIDAmJihjLkpkPWQpO3JldHVybiBjfX0ocmwpO18udWw9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihjKXt0aGlzLmNvbnRlbnQ9Y31iLnByb3RvdHlwZT1hLnByb3RvdHlwZTtyZXR1cm4gZnVuY3Rpb24oYyl7cmV0dXJuIG5ldyBiKFN0cmluZyhjKSl9fShzbCk7Xy52bD1SZWdFeHAucHJvdG90eXBlLmhhc093blByb3BlcnR5KCJzdGlja3kiKTtfLndsPW5ldyBSZWdFeHAoKF8udmw/IiI6Il4iKSsiKD86IXwvPyhbYS16QS1aXVthLXpBLVowLTk6LV0qKSkiLF8udmw/Imd5IjoiZyIpO18ueGw9ZnVuY3Rpb24oKXtfLnpmLmNhbGwodGhpcyl9O18uQihfLnhsLHJsKTsKXy54bC5wcm90b3R5cGUubWE9ZnVuY3Rpb24oKXtpZih0aGlzLmNvbnRlbnQhPT12b2lkIDApcmV0dXJuIHRoaXMuY29udGVudDtmb3IodmFyIGE9IiIsYj1fLkModGhpcy5VKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSlhKz1jLnZhbHVlO3JldHVybiBhfTtfLnhsLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1hKCl9O18ueWw9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7dGhpcy5jb250ZW50PSIifWEucHJvdG90eXBlPV8ueGwucHJvdG90eXBlO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgYX19KCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ubGEoImVsX21haW5fY3NzIik7CgpfLm1hKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ubGEoImVsX21haW4iKTsKLyoKIENvcHlyaWdodCBUaGUgQ2xvc3VyZSBMaWJyYXJ5IEF1dGhvcnMuCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwp2YXIgemw9ZnVuY3Rpb24oYSxiKXt0aGlzLng9YSE9PXZvaWQgMD9hOjA7dGhpcy55PWIhPT12b2lkIDA/YjowfSxBbD1mdW5jdGlvbihhLGIpe3ZhciBjPXt9LGQ7Zm9yKGQgaW4gYSljW2RdPWIuY2FsbCh2b2lkIDAsYVtkXSxkLGEpO3JldHVybiBjfSxCbD1mdW5jdGlvbihhLGIpe3ZhciBjPWIuY3JlYXRlUmFuZ2UoKTtjLnNlbGVjdE5vZGUoYi5ib2R5KTthPV8ubWwoYSk7cmV0dXJuIGMuY3JlYXRlQ29udGV4dHVhbEZyYWdtZW50KF8ua2ooYSkpfSxDbD1mdW5jdGlvbihhKXthPWEubm9kZU5hbWU7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyI/YToiRk9STSJ9LERsPWZ1bmN0aW9uKGEpe2E9YS5ub2RlVHlwZTtyZXR1cm4gYT09PTF8fHR5cGVvZiBhIT09Im51bWJlciJ9LEVsPWZ1bmN0aW9uKGEsYixjKXthLnNldEF0dHJpYnV0ZShiLGMpfSxGbD1mdW5jdGlvbihhKXtyZXR1cm4gXy5NYShhKX0sR2w9ZnVuY3Rpb24oYSxiLGMsZCl7Xy5yaShhKTt2YXIgZT1hLkosZj1lW18uSF18CjA7aWYoYz09bnVsbClyZXR1cm4gXy50aShlLGYsYiksYTt2YXIgZz1jPT09Xy5UaD83OmNbXy5IXXwwLGg9ZyxrPV8uRWkoZyksbD1rfHxPYmplY3QuaXNGcm96ZW4oYyk7a3x8KGc9MCk7bHx8KGM9Xy5taShjKSxoPTAsZz1fLkRpKGcsZiksbD0hMSk7Z3w9NTtrPTQmZz81MTImZz81MTI6MTAyNCZnPzEwMjQ6MDp2b2lkIDA7az1rIT1udWxsP2s6MTAyNDtnfD1rO2Zvcih2YXIgbj0wO248Yy5sZW5ndGg7bisrKXt2YXIgcT1jW25dLHA9ZChxLGspO09iamVjdC5pcyhxLHApfHwobCYmKGM9Xy5taShjKSxoPTAsZz1fLkRpKGcsZiksbD0hMSksY1tuXT1wKX1nIT09aCYmKGwmJihjPV8ubWkoYyksZz1fLkRpKGcsZikpLF8uU2coYyxnKSk7Xy50aShlLGYsYixjKTtyZXR1cm4gYX0sSGw9ZnVuY3Rpb24oYSl7aWYoXy5PZyl7dmFyIGI7cmV0dXJuKGI9YVtfLmRrXSkhPW51bGw/YjphW18uZGtdPW5ldyBNYXB9aWYoXy5kayBpbiBhKXJldHVybiBhW18uZGtdO2I9bmV3IE1hcDtPYmplY3QuZGVmaW5lUHJvcGVydHkoYSwKXy5kayx7dmFsdWU6Yn0pO3JldHVybiBifSxJbD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1hLmdldChkKTtpZihlIT1udWxsKXJldHVybiBlO2Zvcih2YXIgZj1lPTA7ZjxkLmxlbmd0aDtmKyspe3ZhciBnPWRbZl07Xy51aShiLGcpIT1udWxsJiYoZSE9PTAmJihjPV8udGkoYixjLGUpKSxlPWcpfWEuc2V0KGQsZSk7cmV0dXJuIGV9LEpsPWZ1bmN0aW9uKGEpe3ZhciBiPXt9LGM7Zm9yKGMgaW4gYSliW2NdPWFbY107cmV0dXJuIGJ9LEtsPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE8Yj8tMTphPmI/MTowfSxMbD1mdW5jdGlvbihhLGIpe3ZhciBjPTA7YT0oMCxfLkFjKShTdHJpbmcoYSkpLnNwbGl0KCIuIik7Yj0oMCxfLkFjKShTdHJpbmcoYikpLnNwbGl0KCIuIik7Zm9yKHZhciBkPU1hdGgubWF4KGEubGVuZ3RoLGIubGVuZ3RoKSxlPTA7Yz09MCYmZTxkO2UrKyl7dmFyIGY9YVtlXXx8IiIsZz1iW2VdfHwiIjtkb3tmPS8oXGQqKShcRCopKC4qKS8uZXhlYyhmKXx8WyIiLCIiLCIiLAoiIl07Zz0vKFxkKikoXEQqKSguKikvLmV4ZWMoZyl8fFsiIiwiIiwiIiwiIl07aWYoZlswXS5sZW5ndGg9PTAmJmdbMF0ubGVuZ3RoPT0wKWJyZWFrO2M9S2woZlsxXS5sZW5ndGg9PTA/MDpwYXJzZUludChmWzFdLDEwKSxnWzFdLmxlbmd0aD09MD8wOnBhcnNlSW50KGdbMV0sMTApKXx8S2woZlsyXS5sZW5ndGg9PTAsZ1syXS5sZW5ndGg9PTApfHxLbChmWzJdLGdbMl0pO2Y9ZlszXTtnPWdbM119d2hpbGUoYz09MCl9cmV0dXJuIGN9LE1sPWZ1bmN0aW9uKGEpe2lmKC9eKHNjcmlwdHxzdHlsZSkkL2kudGVzdChhLnRhZ05hbWUpKXRocm93IEVycm9yKCJ0Iik7fSxObD1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgXy5wbClyZXR1cm4gYS5nO3Rocm93IEVycm9yKCJ0Iik7fSxPbD1mdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKC8mL2csIiZhbXA7IikucmVwbGFjZSgvPC9nLCImbHQ7IikucmVwbGFjZSgvPi9nLCImZ3Q7IikucmVwbGFjZSgvIi9nLCImcXVvdDsiKS5yZXBsYWNlKC8nL2csCiImYXBvczsiKX0sUGw9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBfLkRjP2E6Xy5tbChPbChTdHJpbmcoYSkpKX0sUWw9ZnVuY3Rpb24oYSl7dmFyIGI9e25vbmNlOl8uT2EoInNjcmlwdCIsZG9jdW1lbnQpfTthPV8uUmEoYSkudG9TdHJpbmcoKTt2YXIgYz0iPHNjcmlwdCI7aWYoYj09bnVsbD8wOmIuaWQpYys9JyBpZD0iJytPbChiLmlkKSsnIic7aWYoYj09bnVsbD8wOmIubm9uY2UpYys9JyBub25jZT0iJytPbChiLm5vbmNlKSsnIic7aWYoYj09bnVsbD8wOmIudHlwZSljKz0nIHR5cGU9IicrT2woYi50eXBlKSsnIic7aWYoYj09bnVsbD8wOmIuZGVmZXIpYys9IiBkZWZlciI7cmV0dXJuIF8ubWwoYysoIj4iK2ErIlx4M2Mvc2NyaXB0PiIpKX0sUmw9ZnVuY3Rpb24oYSl7dmFyIGI9UGwoIiIpO3JldHVybiBfLm1sKGEubWFwKGZ1bmN0aW9uKGMpe3JldHVybiBfLmtqKFBsKGMpKX0pLmpvaW4oXy5raihiKS50b1N0cmluZygpKSl9LFNsPWZ1bmN0aW9uKGEpe3JldHVybiBSbChhKX0sClZsPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0iIixjPU9iamVjdC5rZXlzKGEpLGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9Y1tkXSxmPWFbZV07aWYoIVRsLnRlc3QoZSkpdGhyb3cgRXJyb3IoInQiKTtpZihmIT09dm9pZCAwJiZmIT09bnVsbCl7aWYoL15vbi4vaS50ZXN0KGUpKXRocm93IEVycm9yKCJ0Iik7VWwuaW5kZXhPZihlLnRvTG93ZXJDYXNlKCkpIT09LTEmJihmPV8uRWcoU3RyaW5nKGYpKXx8ImFib3V0OmludmFsaWQjekNsb3N1cmV6Iik7Zj1lKyc9IicrUGwoU3RyaW5nKGYpKSsnIic7Yis9IiAiK2Z9fXJldHVybiBifSxZbD1mdW5jdGlvbihhKXt2YXIgYj17fTtpZighVGwudGVzdCgiYm9keSIpKXRocm93IEVycm9yKCJ0Iik7aWYoV2wuaW5kZXhPZigiQk9EWSIpIT09LTEpdGhyb3cgRXJyb3IoInQiKTt2YXIgYz0iPGJvZHkiO2ImJihjKz1WbChiKSk7QXJyYXkuaXNBcnJheShhKXx8KGE9YT09PXZvaWQgMD9bXTpbYV0pO1hsLmluZGV4T2YoIkJPRFkiKSE9PS0xPwpjKz0iPiI6KGE9U2woYS5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIGQgaW5zdGFuY2VvZiBfLkRjP2Q6UGwoU3RyaW5nKGQpKX0pKSxjKz0iPiIrYS50b1N0cmluZygpKyI8L2JvZHk+Iik7cmV0dXJuIF8ubWwoYyl9LFpsPWZ1bmN0aW9uKGEpe3RoaXMuaD10aGlzLkI9dGhpcy5sPSIiO3RoaXMuQz1udWxsO3RoaXMuQT10aGlzLmo9IiI7dGhpcy5vPSExO3ZhciBiO2EgaW5zdGFuY2VvZiBabD8odGhpcy5vPWEubywkbCh0aGlzLGEubCksdGhpcy5CPWEuQixhbSh0aGlzLGEuaCksYm0odGhpcyxhLkMpLGNtKHRoaXMsYS5qKSxkbSh0aGlzLGVtKGEuZykpLHRoaXMuQT1hLkEpOmEmJihiPVN0cmluZyhhKS5tYXRjaChfLnJmKSk/KHRoaXMubz0hMSwkbCh0aGlzLGJbMV18fCIiLCEwKSx0aGlzLkI9Zm0oYlsyXXx8IiIpLGFtKHRoaXMsYlszXXx8IiIsITApLGJtKHRoaXMsYls0XSksY20odGhpcyxiWzVdfHwiIiwhMCksZG0odGhpcyxiWzZdfHwiIiwhMCksdGhpcy5BPWZtKGJbN118fCIiKSk6Cih0aGlzLm89ITEsdGhpcy5nPW5ldyBnbShudWxsLHRoaXMubykpfSxobT1mdW5jdGlvbihhKXtyZXR1cm4gXy55YShhKT9hLlRiJiYoYT1hLlRiKCksYSBpbnN0YW5jZW9mIF8uRGMpP2E6UGwoInpTb3l6Iik6UGwoU3RyaW5nKGEpKX0saW09ZnVuY3Rpb24oYSxiKXtiJiZiLmg/Yi5oKGEpOihiPWhtKGIpLGEuaW5uZXJIVE1MPV8ua2ooYikpfSxrbT1mdW5jdGlvbihhLGIpe2E6aWYoYj1hKGJ8fGptLHZvaWQgMCksYT1fLmxiKCksYiYmYi5nP2E9Yi5nKCk6KGE9YS5jcmVhdGVFbGVtZW50KCJESVYiKSxiPWhtKGIpLGEuaW5uZXJIVE1MPV8ua2ooYikpLGEuY2hpbGROb2Rlcy5sZW5ndGg9PTEmJihiPWEuZmlyc3RDaGlsZCxiLm5vZGVUeXBlPT0xKSl7YT1iO2JyZWFrIGF9cmV0dXJuIGF9LG1tPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LmltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxEb2N1bWVudCgiIik7YT1sbShhLGIpO2I9Yi5ib2R5O2IuYXBwZW5kQ2hpbGQoYSk7Yj0obmV3IFhNTFNlcmlhbGl6ZXIpLnNlcmlhbGl6ZVRvU3RyaW5nKGIpOwpiPWIuc2xpY2UoYi5pbmRleE9mKCI+IikrMSxiLmxhc3RJbmRleE9mKCI8LyIpKTtyZXR1cm4gXy5tbChiKX0sbm09ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGEhPT0ic3RyaW5nIil0aHJvdyBFcnJvcigpO3JldHVybiBhfSxvbT1mdW5jdGlvbihhLGIsYyl7aWYoYilyZXR1cm4gbm0oYSk7dmFyIGQ7cmV0dXJuKGQ9Xy5waShhKSkhPW51bGw/ZDpjPyIiOnZvaWQgMH0scm09ZnVuY3Rpb24oKXtyZXR1cm4gcG18fChwbT1uZXcgXy55aChfLlRnKFtdKSx2b2lkIDAsdm9pZCAwLHZvaWQgMCxxbSkpfSxzbT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1hLkosZj1lW18uSF18MDtjPV8uV2coYSxmKT8xOmM7ZD0hIWR8fGM9PT0zO2M9PT0yJiZfLnFpKGEpJiYoZT1hLkosZj1lW18uSF18MCk7YT1fLkJpKGUsYik7dmFyIGc9YT09PV8uVGg/NzphW18uSF18MCxoPV8uQ2koZyxmKTt2YXIgaz00Jmg/ITE6ITA7aWYoayl7NCZoJiYoYT1fLm1pKGEpLGc9MCxoPV8uRGkoaCxmKSxmPV8udGkoZSwKZixiLGEpKTtmb3IodmFyIGw9MCxuPTA7bDxhLmxlbmd0aDtsKyspe3ZhciBxPV8ucGkoYVtsXSk7cSE9bnVsbCYmKGFbbisrXT1xKX1uPGwmJihhLmxlbmd0aD1uKTtoPShofDQpJi01MTM7aCY9LTEwMjU7aCY9LTQwOTd9aCE9PWcmJihfLlNnKGEsaCksMiZoJiZPYmplY3QuZnJlZXplKGEpKTtyZXR1cm4gYT1fLkZpKGEsaCxlLGYsYixjLGssZCl9LHVtPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPXRtOyFkJiZfLnFpKGEpJiYoYj1hLkosYz1iW18uSF18MCk7dmFyIGY9Xy51aShiLDEpO2E9ITE7aWYoZj09bnVsbCl7aWYoZClyZXR1cm4gcm0oKTtmPVtdfWVsc2UgaWYoZi5jb25zdHJ1Y3Rvcj09PV8ueWgpaWYoZi5LYiYyJiYhZClmPV8uemgoZik7ZWxzZSByZXR1cm4gZjtlbHNlIEFycmF5LmlzQXJyYXkoZik/YT0hISgoZltfLkhdfDApJjIpOmY9W107aWYoZCl7aWYoIWYubGVuZ3RoKXJldHVybiBybSgpO2F8fChhPSEwLF8uVGcoZikpfWVsc2UgaWYoYSl7YT0hMTtfLlVnKGYpOwpkPV8ubWkoZik7Zm9yKGY9MDtmPGQubGVuZ3RoO2YrKyl7dmFyIGc9ZFtmXT1fLm1pKGRbZl0pO0FycmF5LmlzQXJyYXkoZ1sxXSkmJihnWzFdPV8uVGcoZ1sxXSkpfWY9Xy5VZyhkKX0hYSYmYyYzMiYmXy5saShmKTtlPW5ldyBfLnloKGYsZSxvbSx2b2lkIDApO2M9Xy50aShiLGMsMSxlKTthfHxfLnNpKGIsYyk7cmV0dXJuIGV9LHZtPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMudG9wPWE7dGhpcy5yaWdodD1iO3RoaXMuYm90dG9tPWM7dGhpcy5sZWZ0PWR9LHdtPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMubGVmdD1hO3RoaXMudG9wPWI7dGhpcy53aWR0aD1jO3RoaXMuaGVpZ2h0PWR9LHhtPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9YS5sZW5ndGgsZT0wLGY9W10sZyxoLGs9MDtrPGQ7KXtzd2l0Y2goZSl7Y2FzZSAwOnZhciBsPWEuaW5kZXhPZigiPCIsayk7aWYobDwwKXtpZihjLmxlbmd0aD09PTApcmV0dXJuIGE7Yy5wdXNoKGEuc3Vic3RyaW5nKGspKTtrPWR9ZWxzZSBjLnB1c2goYS5zdWJzdHJpbmcoaywKbCkpLGg9bCxrPWwrMSxfLnZsPyhfLndsLmxhc3RJbmRleD1rLGw9Xy53bC5leGVjKGEpKTooXy53bC5sYXN0SW5kZXg9MCxsPV8ud2wuZXhlYyhhLnN1YnN0cmluZyhrKSkpLGw/KGY9WyI8IixsWzBdXSxnPWxbMV0sZT0xLGsrPWxbMF0ubGVuZ3RoKTpjLnB1c2goIjwiKTticmVhaztjYXNlIDE6bD1hLmNoYXJBdChrKyspO3N3aXRjaChsKXtjYXNlICInIjpjYXNlICciJzp2YXIgbj1hLmluZGV4T2YobCxrKTtuPDA/az1kOihmLnB1c2gobCxhLnN1YnN0cmluZyhrLG4rMSkpLGs9bisxKTticmVhaztjYXNlICI+IjpmLnB1c2gobCk7Yy5wdXNoKGIoZi5qb2luKCIiKSxnKSk7ZT0wO2Y9W107aD1nPW51bGw7YnJlYWs7ZGVmYXVsdDpmLnB1c2gobCl9YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcigpO31lPT09MSYmaz49ZCYmKGs9aCsxLGMucHVzaCgiPCIpLGU9MCxmPVtdLGg9Zz1udWxsKX1yZXR1cm4gYy5qb2luKCIiKX0sRG09ZnVuY3Rpb24oKXt2YXIgYT15bShfLmpsKF8uaWwoem0oKSwKZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0pLk1jKCkpKSxiPUFtKCkubWFwKGZ1bmN0aW9uKGMpe3ZhciBkO2E6e3ZhciBlPWMubztpZihlPT1udWxsKWM9bnVsbDtlbHNlIGlmKHR5cGVvZiBlPT09Im51bWJlciIpYz1lO2Vsc2V7aWYodHlwZW9mIGU9PT0ic3RyaW5nIil7dmFyIGY9TnVtYmVyKGUpO2lmKCFpc05hTihmKSYmKGYhPT0wfHxlLnRyaW0oKS5sZW5ndGghPT0wKSl7Yz1mO2JyZWFrIGF9fXRocm93IEJtKGMsIm51bWJlciIpO319cmV0dXJuKGQ9YykhPW51bGw/ZDowfSkuZmlsdGVyKGZ1bmN0aW9uKGMpe3JldHVybiBjPjB9KTtiLmxlbmd0aD4wJiYoYj1DbShiKSxhLmc9Yik7cmV0dXJuIF8ua2woYSl9LEVtPWZ1bmN0aW9uKGEpe3JldHVybiJ0cmFuc2xhdGU6IithfSxLbT1mdW5jdGlvbihhKXt2YXIgYj1uZXcgRm07Yj1fLlRqKGIsMSxhLm5hbWUpO3ZhciBjPUdtKGEuc3RhcnRUaW1lKTtiPV8uTChiLDIsYyk7YT1IbShhLmR1cmF0aW9uKTthPV8uTChiLDMsYSk7Yj1uZXcgSW07CnJldHVybiBKbShhLDUsYil9LEdtPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBMbTtiLnNldFNlY29uZHMoTWF0aC5mbG9vcihhLzFFMykpO2E9TWF0aC5yb3VuZChhJTFFMyoxRTYpO18uR2koYiwyLGE9PW51bGw/YTpfLkJqKGEpLDApO3JldHVybiBifSxIbT1mdW5jdGlvbihhKXt2YXIgYj1uZXcgTW07Yi5zZXRTZWNvbmRzKE1hdGguZmxvb3IoYS8xRTMpKTthPU1hdGgucm91bmQoYSUxRTMqMUU2KTtfLkdpKGIsMixhPT1udWxsP2E6Xy5CaihhKSwwKTtyZXR1cm4gYn0sTm09ZnVuY3Rpb24oYSl7cmV0dXJuIHBlcmZvcm1hbmNlJiZwZXJmb3JtYW5jZS5tYXJrJiYoYT1wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKGEsIm1hcmsiKSxhLmxlbmd0aD09MSk/YVswXTpudWxsfSxPbT1mdW5jdGlvbihhLGIpe3JldHVybiBwZXJmb3JtYW5jZSYmcGVyZm9ybWFuY2UubWVhc3VyZT9wZXJmb3JtYW5jZS5tZWFzdXJlKGEsYil8fG51bGw6bnVsbH0sUm09ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPQpBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpO2Quc3BsaWNlKDAsMik7ZD0ibCIrYS50b1N0cmluZygxNikrImkiK2IudG9TdHJpbmcoMTYpKyhkLmxlbmd0aD8iLSIrZC5qb2luKCJfIik6IiIpO1BtP1BtLnB1c2goZCk6UW0oZCl9LFZtPWZ1bmN0aW9uKCl7dmFyIGE9U218fChTbT1UbSgnW251bGwsbnVsbCxudWxsLG51bGwsbnVsbCwiKGZ1bmN0aW9uKCl7XCd1c2Ugc3RyaWN0XCc7dmFyIGZcXHUwMDNkdHlwZW9mIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzXFx1MDAzZFxcdTAwM2RcXCJmdW5jdGlvblxcIj9PYmplY3QuZGVmaW5lUHJvcGVydHk6ZnVuY3Rpb24oYSxjLGIpe2lmKGFcXHUwMDNkXFx1MDAzZEFycmF5LnByb3RvdHlwZXx8YVxcdTAwM2RcXHUwMDNkT2JqZWN0LnByb3RvdHlwZSlyZXR1cm4gYTthW2NdXFx1MDAzZGIudmFsdWU7cmV0dXJuIGF9O2Z1bmN0aW9uIGcoYSl7YVxcdTAwM2RbXFwib2JqZWN0XFwiXFx1MDAzZFxcdTAwM2R0eXBlb2YgZ2xvYmFsVGhpc1xcdTAwMjZcXHUwMDI2Z2xvYmFsVGhpcyxhLFxcIm9iamVjdFxcIlxcdTAwM2RcXHUwMDNkdHlwZW9mIHdpbmRvd1xcdTAwMjZcXHUwMDI2d2luZG93LFxcIm9iamVjdFxcIlxcdTAwM2RcXHUwMDNkdHlwZW9mIHNlbGZcXHUwMDI2XFx1MDAyNnNlbGYsXFwib2JqZWN0XFwiXFx1MDAzZFxcdTAwM2R0eXBlb2YgZ2xvYmFsXFx1MDAyNlxcdTAwMjZnbG9iYWxdO2Zvcih2YXIgY1xcdTAwM2QwO2NcXHUwMDNjYS5sZW5ndGg7KytjKXt2YXIgYlxcdTAwM2RhW2NdO2lmKGJcXHUwMDI2XFx1MDAyNmIuTWF0aFxcdTAwM2RcXHUwMDNkTWF0aClyZXR1cm4gYn10aHJvdyBFcnJvcihcXCJDYW5ub3QgZmluZCBnbG9iYWwgb2JqZWN0XFwiKTt9dmFyIGhcXHUwMDNkZyh0aGlzKTtcXG5mdW5jdGlvbiBrKGEsYyl7aWYoYylhOnt2YXIgYlxcdTAwM2RoO2FcXHUwMDNkYS5zcGxpdChcXCIuXFwiKTtmb3IodmFyIGRcXHUwMDNkMDtkXFx1MDAzY2EubGVuZ3RoLTE7ZCsrKXt2YXIgZVxcdTAwM2RhW2RdO2lmKCEoZSBpbiBiKSlicmVhayBhO2JcXHUwMDNkYltlXX1hXFx1MDAzZGFbYS5sZW5ndGgtMV07ZFxcdTAwM2RiW2FdO2NcXHUwMDNkYyhkKTtjIVxcdTAwM2RkXFx1MDAyNlxcdTAwMjZjIVxcdTAwM2RudWxsXFx1MDAyNlxcdTAwMjZmKGIsYSx7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmN9KX19ayhcXCJnbG9iYWxUaGlzXFwiLGZ1bmN0aW9uKGEpe3JldHVybiBhfHxofSk7LypcXG5cXG4gQ29weXJpZ2h0IEdvb2dsZSBMTENcXG4gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcXG4qL1xcbnZhciBsXFx1MDAzZGdsb2JhbFRoaXMudHJ1c3RlZFR5cGVzLG07ZnVuY3Rpb24gbigpe3ZhciBhXFx1MDAzZG51bGw7aWYoIWwpcmV0dXJuIGE7dHJ5e3ZhciBjXFx1MDAzZGZ1bmN0aW9uKGIpe3JldHVybiBifTthXFx1MDAzZGwuY3JlYXRlUG9saWN5KFxcImdvb2cjaHRtbFxcIix7Y3JlYXRlSFRNTDpjLGNyZWF0ZVNjcmlwdDpjLGNyZWF0ZVNjcmlwdFVSTDpjfSl9Y2F0Y2goYil7fXJldHVybiBhfTtmdW5jdGlvbiBwKGEpe3RoaXMuZ1xcdTAwM2RhfXAucHJvdG90eXBlLnRvU3RyaW5nXFx1MDAzZGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZytcXCJcXCJ9O2Z1bmN0aW9uIHEoYSl7bVxcdTAwM2RcXHUwMDNkXFx1MDAzZHZvaWQgMFxcdTAwMjZcXHUwMDI2KG1cXHUwMDNkbigpKTthXFx1MDAzZG0/bS5jcmVhdGVTY3JpcHRVUkwoYSk6YTtyZXR1cm4gbmV3IHAoYSl9O2lmKCFmdW5jdGlvbigpe2lmKHNlbGYub3JpZ2luKXJldHVybiBzZWxmLm9yaWdpblxcdTAwM2RcXHUwMDNkXFx1MDAzZFxcIm51bGxcXCI7aWYobG9jYXRpb24uaG9zdCFcXHUwMDNkXFx1MDAzZFxcIlxcIilyZXR1cm4hMTt0cnl7cmV0dXJuIHdpbmRvdy5wYXJlbnQuZXNjYXBlKFxcIlxcIiksITF9Y2F0Y2goYSl7cmV0dXJuITB9fSgpKXRocm93IEVycm9yKFxcInNhbmRib3hpbmcgZXJyb3JcXCIpO1xcbndpbmRvdy5hZGRFdmVudExpc3RlbmVyKFxcIm1lc3NhZ2VcXCIsZnVuY3Rpb24oYSl7dmFyIGNcXHUwMDNkYS5wb3J0c1swXTthXFx1MDAzZGEuZGF0YTt2YXIgYlxcdTAwM2RhLmNhbGxiYWNrTmFtZS5zcGxpdChcXCIuXFwiKSxkXFx1MDAzZHdpbmRvdztiWzBdXFx1MDAzZFxcdTAwM2RcXHUwMDNkXFwid2luZG93XFwiXFx1MDAyNlxcdTAwMjZiLnNoaWZ0KCk7Zm9yKHZhciBlXFx1MDAzZDA7ZVxcdTAwM2NiLmxlbmd0aC0xO2UrKylkW2JbZV1dXFx1MDAzZHt9LGRcXHUwMDNkZFtiW2VdXTtkW2JbYi5sZW5ndGgtMV1dXFx1MDAzZGZ1bmN0aW9uKHIpe2MucG9zdE1lc3NhZ2UoSlNPTi5zdHJpbmdpZnkocikpfTtiXFx1MDAzZGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXFwic2NyaXB0XFwiKTthXFx1MDAzZHEoYS51cmwpO2lmKGEgaW5zdGFuY2VvZiBwKWFcXHUwMDNkYS5nO2Vsc2UgdGhyb3cgRXJyb3IoXFwiXFwiKTtiLnNyY1xcdTAwM2RhO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYil9LCEwKTt9KS5jYWxsKHRoaXMpO1xcbiJdJykpOwppZighYSlyZXR1cm4gbnVsbDthPV8ucGkoXy5aaShhLDYsdm9pZCAwLFVtKSk7dmFyIGI7YT09PW51bGx8fGE9PT12b2lkIDA/Yj1udWxsOmI9Xy5RYShhKTtyZXR1cm4gYn0sV209ZnVuY3Rpb24oYSl7dmFyIGI9e307YT1fLkMoYSk7Zm9yKHZhciBjPWEubmV4dCgpOyFjLmRvbmU7Yz1hLm5leHQoKSljPWMudmFsdWUsYltjLmxhbmd1YWdlXT1jLm5hbWU7cmV0dXJuIGJ9LFhtPWZ1bmN0aW9uKCl7fSxZbT1mdW5jdGlvbihhLGIpe18uaGIuY2FsbCh0aGlzKTt0aGlzLmw9bmV3IF8uSGIodGhpcyk7dGhpcy5RYihhfHxudWxsKTtiJiYodGhpcy5VYj1iKX0sYm49ZnVuY3Rpb24oYSl7Xy5oYi5jYWxsKHRoaXMpO3RoaXMuZz1hO3RoaXMuaD1fLngodGhpcy5nLCJmb2N1cyIsdGhpcywhMCk7dGhpcy5qPV8ueCh0aGlzLmcsImJsdXIiLHRoaXMsITApfSxjbj1mdW5jdGlvbigpe30sZG49ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZWxlbWVudD1hO3RoaXMuaj1iO3RoaXMubD1jfSxlbj1mdW5jdGlvbihhLApiKXt0aGlzLmc9YSBpbnN0YW5jZW9mIHpsP2E6bmV3IHpsKGEsYil9LGZuPWZ1bmN0aW9uKGEsYil7dGhpcy5vPWJ8fHZvaWQgMDtZbS5jYWxsKHRoaXMsYSl9LE89ZnVuY3Rpb24oYSxiLGMpe3RoaXMuRz1jfHwoYT9fLmxiKGduKGEpKTpfLmxiKCkpO2ZuLmNhbGwodGhpcyx0aGlzLkcuUygiRElWIix7c3R5bGU6InBvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6bm9uZTsifSkpO3RoaXMucmE9bmV3IHpsKDEsMSk7dGhpcy5BPW5ldyBTZXQ7dGhpcy5DPW51bGw7YSYmdGhpcy5hdHRhY2goYSk7YiE9bnVsbCYmdGhpcy5LYShiKX0saG49ZnVuY3Rpb24oYSl7YT1hLmNsYXNzTmFtZTtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIiYmYS5tYXRjaCgvXFMrL2cpfHxbXX0sa249ZnVuY3Rpb24oYSxiKXt2YXIgYz1obihhKSxkPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSxlPWMubGVuZ3RoK2QubGVuZ3RoO2puKGMsZCk7YS5jbGFzc05hbWU9Yy5qb2luKCIgIik7CnJldHVybiBjLmxlbmd0aD09ZX0sbW49ZnVuY3Rpb24oYSxiKXt2YXIgYz1obihhKSxkPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSxlPWxuKGMsZCk7YS5jbGFzc05hbWU9ZS5qb2luKCIgIik7cmV0dXJuIGUubGVuZ3RoPT1jLmxlbmd0aC1kLmxlbmd0aH0sam49ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9MDtjPGIubGVuZ3RoO2MrKylfLnRhKGEsYltjXSl8fGEucHVzaChiW2NdKX0sbG49ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIV8udGEoYixjKX0pfSxubj1mdW5jdGlvbihhLGIpe3JldHVybiBfLnRhKGhuKGEpLGIpfSxvbj1mdW5jdGlvbihhLGIsYyl7Yz9rbihhLGIpOm1uKGEsYil9LHRuPWZ1bmN0aW9uKGEpe3JldHVybiBwbihuZXcgcW4sc20oYSwxLF8uYWooKSkubWFwKGZ1bmN0aW9uKGIsYyl7dmFyIGQ9bmV3IHJuO2I9c24oZCwxLGIpO2lmKHNtKGEsMixfLmFqKCkpLmxlbmd0aD5jKXtkPXNtKGEsMiwKMywhMCk7aWYodHlwZW9mIGMhPT0ibnVtYmVyInx8YzwwfHxjPj1kLmxlbmd0aCl0aHJvdyBFcnJvcigpO3NuKGIsMyxkW2NdKX1yZXR1cm4gYn0pKX0sdW49ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IHJuO2I9c24oYiwxLGFbMF0pO2EubGVuZ3RoPT09MyYmc24oYiwzLGFbMl0pO3JldHVybiBifSx2bj1mdW5jdGlvbihhKXtyZXR1cm4gXy5jaihhLHJuLDEpLm1hcChmdW5jdGlvbihiKXtyZXR1cm4gXy5OKGIsMyk/W18uTihiLDEpLDIwMCxfLk4oYiwzKV06W18uTihiLDEpLDIwMF19KX0sd249ZnVuY3Rpb24oKXt9LHhuPWZ1bmN0aW9uKGEpe18uaGIuY2FsbCh0aGlzKTt0aGlzLmg9YXx8Xy5sYigpO3RoaXMubGE9bnVsbDt0aGlzLmpiPSExO3RoaXMuQz1udWxsO3RoaXMuTz12b2lkIDA7dGhpcy5SPXRoaXMuRj10aGlzLks9bnVsbDt0aGlzLndhPSExfSx5bj1mdW5jdGlvbihhKXt2YXIgYj1fLmxiKCksYz1iLmcsZD1iLmNyZWF0ZUVsZW1lbnQoIlNUWUxFIiksZT1fLk9hKCJzdHlsZSIsCmMpO2UmJmQuc2V0QXR0cmlidXRlKCJub25jZSIsZSk7ZC50eXBlPSJ0ZXh0L2NzcyI7Yj1iLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJIRUFEIilbMF07ZC5zdHlsZVNoZWV0P2Quc3R5bGVTaGVldC5jc3NUZXh0PWE6ZC5hcHBlbmRDaGlsZChjLmNyZWF0ZVRleHROb2RlKGEpKTtiLmFwcGVuZENoaWxkKGQpO3JldHVybiBkfSxDbj1mdW5jdGlvbigpe2Zvcih2YXIgYSBpbiBPYmplY3QucHJvdG90eXBlKXtfLnpjPWZ1bmN0aW9uKGQsZSxmKXtmb3IodmFyIGcgaW4gZClkW2ddIT09T2JqZWN0LnByb3RvdHlwZVtnXSYmZS5jYWxsKGYsZFtnXSxnLGQpfTticmVha312YXIgYj1EYXRlLm5vdygpLGM9em4oQW4pO2MmJnR5cGVvZiBjPT0iZnVuY3Rpb24iJiYoQm49PTE/YygpOmZ1bmN0aW9uIGUoKXt2YXIgZj1kb2N1bWVudC5yZWFkeVN0YXRlO18ub2MoZik9PSJ1bmRlZmluZWQifHxmPT0iY29tcGxldGUifHxmPT0iaW50ZXJhY3RpdmUifHxEYXRlLm5vdygpLWI+PTJFND9jKCk6d2luZG93LnNldFRpbWVvdXQoZSwKNTAwKX0oKSl9O18ubT16bC5wcm90b3R5cGU7Xy5tLmVxdWFscz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIHpsJiYodGhpcz09YT8hMDp0aGlzJiZhP3RoaXMueD09YS54JiZ0aGlzLnk9PWEueTohMSl9O18ubS5jZWlsPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGguY2VpbCh0aGlzLngpO3RoaXMueT1NYXRoLmNlaWwodGhpcy55KTtyZXR1cm4gdGhpc307Xy5tLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGguZmxvb3IodGhpcy54KTt0aGlzLnk9TWF0aC5mbG9vcih0aGlzLnkpO3JldHVybiB0aGlzfTtfLm0ucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLng9TWF0aC5yb3VuZCh0aGlzLngpO3RoaXMueT1NYXRoLnJvdW5kKHRoaXMueSk7cmV0dXJuIHRoaXN9OwpfLm0udHJhbnNsYXRlPWZ1bmN0aW9uKGEsYil7YSBpbnN0YW5jZW9mIHpsPyh0aGlzLngrPWEueCx0aGlzLnkrPWEueSk6KHRoaXMueCs9TnVtYmVyKGEpLHR5cGVvZiBiPT09Im51bWJlciImJih0aGlzLnkrPWIpKTtyZXR1cm4gdGhpc307CnZhciBEbj1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IHpsKGEueCxhLnkpfSxFbj1bImRhdGE6IiwiaHR0cDoiLCJodHRwczoiLCJtYWlsdG86IiwiZnRwOiJdLEZuPWZ1bmN0aW9uKGEpe3ZhciBiPTE7YT1hLnNwbGl0KCI6Iik7Zm9yKHZhciBjPVtdO2I+MCYmYS5sZW5ndGg7KWMucHVzaChhLnNoaWZ0KCkpLGItLTthLmxlbmd0aCYmYy5wdXNoKGEuam9pbigiOiIpKTtyZXR1cm4gY30sR249ZnVuY3Rpb24oYSxiLGMpe2M9YS5nLmdldChjKTtyZXR1cm4oYz09bnVsbD8wOmMuaGFzKGIpKT9jLmdldChiKTphLmwuaGFzKGIpP3t1YToxfTooYz1hLm8uZ2V0KGIpKT9jOmEuaCYmW10uY29uY2F0KF8uJGIoYS5oKSkuc29tZShmdW5jdGlvbihkKXtyZXR1cm4gYi5pbmRleE9mKGQpPT09MH0pP3t1YToxfTp7dWE6MH19LEhuPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1DbChiKTtjPWMuY3JlYXRlRWxlbWVudChkKTtiPWIuYXR0cmlidXRlcztmb3IodmFyIGU9Xy5DKGIpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPQplLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtmPWcubmFtZTtnPWcudmFsdWU7dmFyIGg9R24oYS5nLGYsZCksazthOntpZihrPWguY29uZGl0aW9ucyl7az1fLkMoayk7Zm9yKHZhciBsPWsubmV4dCgpOyFsLmRvbmU7bD1rLm5leHQoKSl7dmFyIG49Xy5DKGwudmFsdWUpO2w9bi5uZXh0KCkudmFsdWU7bj1uLm5leHQoKS52YWx1ZTt2YXIgcT12b2lkIDA7aWYoKGw9KHE9Yi5nZXROYW1lZEl0ZW0obCkpPT1udWxsP3ZvaWQgMDpxLnZhbHVlKSYmIW4uaGFzKGwpKXtrPSExO2JyZWFrIGF9fX1rPSEwfWlmKGspc3dpdGNoKGgudWEpe2Nhc2UgMTpFbChjLGYsZyk7YnJlYWs7Y2FzZSAyOnRocm93IEVycm9yKCk7Y2FzZSAzOkVsKGMsZixnLnRvTG93ZXJDYXNlKCkpO2JyZWFrO2Nhc2UgNDpFbChjLGYsZyk7YnJlYWs7Y2FzZSA1OkVsKGMsZixnKTticmVhaztjYXNlIDY6RWwoYyxmLGcpO2JyZWFrO2Nhc2UgNzphOmlmKGg9dm9pZCAwLGs9ZyxfLkNjKXt0cnl7aD1uZXcgVVJMKGspfWNhdGNoKHApe2g9CiJodHRwczoiO2JyZWFrIGF9aD1oLnByb3RvY29sfWVsc2UgYjp7aD1rO2s9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpO3RyeXtrLmhyZWY9aH1jYXRjaChwKXtoPXZvaWQgMDticmVhayBifWg9ay5wcm90b2NvbDtoPWg9PT0iOiJ8fGg9PT0iIj8iaHR0cHM6IjpofWc9aCE9PXZvaWQgMCYmRW4uaW5kZXhPZihoLnRvTG93ZXJDYXNlKCkpIT09LTE/ZzoiYWJvdXQ6aW52YWxpZCN6Q2xvc3VyZXoiO0VsKGMsZixnKX19cmV0dXJuIGN9LGxtPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5xZDthPUJsKGEsYik7YT1kb2N1bWVudC5jcmVhdGVUcmVlV2Fsa2VyKGEsNSxmdW5jdGlvbihoKXtpZihoLm5vZGVUeXBlPT09MyloPTE7ZWxzZSBpZihEbChoKSlpZihoPUNsKGgpLGg9PT1udWxsKWg9MjtlbHNle3ZhciBrPWMuZztoPWghPT0iRk9STSImJihrLmouaGFzKGgpfHxrLmcuaGFzKGgpKT8xOjJ9ZWxzZSBoPTI7cmV0dXJuIGh9KTtmb3IodmFyIGQ9YS5uZXh0Tm9kZSgpLGU9Yi5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCksCmY9ZTtkIT09bnVsbDspe3ZhciBnPXZvaWQgMDtpZihkLm5vZGVUeXBlPT09MylnPWMuY3JlYXRlVGV4dE5vZGUoZC5kYXRhKTtlbHNlIGlmKERsKGQpKWc9SG4oYyxkLGIpO2Vsc2UgdGhyb3cgRXJyb3IoInQiKTtmLmFwcGVuZENoaWxkKGcpO2lmKGQ9YS5maXJzdENoaWxkKCkpZj1nO2Vsc2UgZm9yKDshKGQ9YS5uZXh0U2libGluZygpKSYmKGQ9YS5wYXJlbnROb2RlKCkpOylmPWYucGFyZW50Tm9kZX1yZXR1cm4gZX0sSW49ZnVuY3Rpb24oYSxiKXtyZXR1cm4oYj1iJiZiIT0iKiI/U3RyaW5nKGIpLnRvVXBwZXJDYXNlKCk6IiIpP2EucXVlcnlTZWxlY3RvckFsbChiKTphLmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIil9LEpuPWZ1bmN0aW9uKGEpe3JldHVybiBhLnNjcm9sbGluZ0VsZW1lbnQ/YS5zY3JvbGxpbmdFbGVtZW50Ol8uVmN8fGEuY29tcGF0TW9kZSE9IkNTUzFDb21wYXQiP2EuYm9keXx8YS5kb2N1bWVudEVsZW1lbnQ6YS5kb2N1bWVudEVsZW1lbnR9LEtuPWZ1bmN0aW9uKGEpe3ZhciBiPQpKbihhKTthPWEuZGVmYXVsdFZpZXc7cmV0dXJuIG5ldyB6bCgoYT09bnVsbD92b2lkIDA6YS5wYWdlWE9mZnNldCl8fGIuc2Nyb2xsTGVmdCwoYT09bnVsbD92b2lkIDA6YS5wYWdlWU9mZnNldCl8fGIuc2Nyb2xsVG9wKX0sTG49ZnVuY3Rpb24oYSl7dmFyIGI9e307YT0oYS5nJiYoYS5nP2EuZy5yZWFkeVN0YXRlOjApPj0yP2EuZy5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKXx8IiI6IiIpLnNwbGl0KCJcclxuIik7Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspaWYoIS9eW1xzXHhhMF0qJC8udGVzdChhW2NdKSl7dmFyIGQ9Rm4oYVtjXSksZT1kWzBdO2Q9ZFsxXTtpZih0eXBlb2YgZD09PSJzdHJpbmciKXtkPWQudHJpbSgpO3ZhciBmPWJbZV18fFtdO2JbZV09ZjtmLnB1c2goZCl9fXJldHVybiBBbChiLGZ1bmN0aW9uKGcpe3JldHVybiBnLmpvaW4oIiwgIil9KX0sTW49WzQsNSw2XSxKbT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9TW47Yz1fLkppKGMpO2E6e3ZhciBlPWM7Xy5yaShhKTsKdmFyIGY9YS5KLGc9ZltfLkhdfDA7aWYoZT09bnVsbCl7dmFyIGg9SGwoZik7aWYoSWwoaCxmLGcsZCk9PT1iKWguc2V0KGQsMCk7ZWxzZSBicmVhayBhfWVsc2V7aD1IbChmKTt2YXIgaz1JbChoLGYsZyxkKTtrIT09YiYmKGsmJihnPV8udGkoZixnLGspKSxoLnNldChkLGIpKX1fLnRpKGYsZyxiLGUpfWMmJiFfLldnKGMpJiZfLnNpKGEuSik7cmV0dXJuIGF9LExtPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihMbSxfLkopO0xtLnByb3RvdHlwZS5nZXRTZWNvbmRzPWZ1bmN0aW9uKCl7cmV0dXJuIF8uaGsodGhpcywxKX07TG0ucHJvdG90eXBlLnNldFNlY29uZHM9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uR2kodGhpcywxLGE9PW51bGw/YTpfLkpqKGEpLCIwIil9O3ZhciBNbT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoTW0sXy5KKTtNbS5wcm90b3R5cGUuZ2V0U2Vjb25kcz1mdW5jdGlvbigpe3JldHVybiBfLmhrKHRoaXMsMSl9OwpNbS5wcm90b3R5cGUuc2V0U2Vjb25kcz1mdW5jdGlvbihhKXtyZXR1cm4gXy5HaSh0aGlzLDEsYT09bnVsbD9hOl8uSmooYSksIjAiKX07dmFyIE5uPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBfLktrO3JldHVybiBfLmlrKGIsMTEsYSl9LHptPWZ1bmN0aW9uKCl7dmFyIGE9bmV3IF8uaGwoMTg3MSwiMCIpO2EuQT0iaHR0cHM6Ly90cmFuc2xhdGUuZ29vZ2xlYXBpcy5jb20vZWxlbWVudC9sb2c/Zm9ybWF0PWpzb24maGFzZmFzdD10cnVlIjtyZXR1cm4gYX0seW09ZnVuY3Rpb24oYSl7YS5oPU9uO3JldHVybiBhfSxJbT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoSW0sXy5KKTt2YXIgUG49ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKFBuLF8uSik7dmFyIEZtPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihGbSxfLkopO3ZhciBRbj1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoUW4sXy5KKTt2YXIgUm49ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Cl8uQihSbixfLkopO3ZhciBTbj1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoU24sXy5KKTt2YXIgVG49ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKFRuLF8uSik7CnZhciBVbj1mdW5jdGlvbihhKXtfLnJpKGEpO2E9YS5KO3ZhciBiPWFbXy5IXXwwLGM9Xy51aShhLDExMiksZD12b2lkIDA9PT1fLlhoLGU9Xy5oaChjLFRuLCFkLGIpOyFkfHxlPyhlPV8ua2goZSksYyE9PWUmJihiPV8udGkoYSxiLDExMixlKSxfLnNpKGEsYikpLGE9ZSk6YT12b2lkIDA7cmV0dXJuIGF9LFZuPWZ1bmN0aW9uKGEsYil7YS5VIT09dm9pZCAwP2EuVS5wdXNoKGIpOmEuY29udGVudCs9YjtyZXR1cm4gYX0sV249ZnVuY3Rpb24oYSxiKXthLlUhPT12b2lkIDA/YS5VLnB1c2goYik6YiBpbnN0YW5jZW9mIF8ueGw/Yi5jb250ZW50IT09dm9pZCAwP2EuY29udGVudCs9Yi5tYSgpOihhLlU9W2EuY29udGVudCxiXSxhLmNvbnRlbnQ9dm9pZCAwKTphLmNvbnRlbnQrPWI7cmV0dXJuIGF9LFhuPWZ1bmN0aW9uKGEpe3ZhciBiO2E9Xy5DKChiPWEuVSkhPW51bGw/YjpbXSk7Zm9yKGI9YS5uZXh0KCk7IWIuZG9uZTtiPWEubmV4dCgpKWlmKGI9Yi52YWx1ZSxiIGluc3RhbmNlb2YKXy54bCYmWG4oYikpcmV0dXJuITA7cmV0dXJuITF9LFpuPWZ1bmN0aW9uKGEsYil7Yj1ZbihifHx7fSxhLmg/YS5oLmdldERhdGEoKTp7fSk7YS5nKG51bGwsYi5aYik7cmV0dXJuIGIuaigpfSwkbj17fSxhbz1mdW5jdGlvbihhLGIpe3JldHVybiBuZXcgemwoYS54LWIueCxhLnktYi55KX0sYm89LyYvZyxjbz0vPC9nLGVvPS8+L2csZm89LyIvZyxnbz0vJy9nLGhvPS9ceDAwL2csaW89L1tceDAwJjw+IiddLyxqbz1mdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKC9ceGEwfFsgXHRdKy9nLCIgIil9LGtvPWZ1bmN0aW9uKGEpe3JldHVybiBhLnJlcGxhY2UoL1tcc1x4YTBdKyQvLCIiKX0sbG89ZnVuY3Rpb24oYSl7aW8udGVzdChhKSYmKGEuaW5kZXhPZigiJiIpIT0tMSYmKGE9YS5yZXBsYWNlKGJvLCImYW1wOyIpKSxhLmluZGV4T2YoIjwiKSE9LTEmJihhPWEucmVwbGFjZShjbywiJmx0OyIpKSxhLmluZGV4T2YoIj4iKSE9LTEmJihhPWEucmVwbGFjZShlbywiJmd0OyIpKSxhLmluZGV4T2YoJyInKSE9Ci0xJiYoYT1hLnJlcGxhY2UoZm8sIiZxdW90OyIpKSxhLmluZGV4T2YoIiciKSE9LTEmJihhPWEucmVwbGFjZShnbywiJiMzOTsiKSksYS5pbmRleE9mKCJceDAwIikhPS0xJiYoYT1hLnJlcGxhY2UoaG8sIiYjMDsiKSkpO3JldHVybiBhfSxtbz1mdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKC8mKFteO10rKTsvZyxmdW5jdGlvbihiLGMpe3N3aXRjaChjKXtjYXNlICJhbXAiOnJldHVybiImIjtjYXNlICJsdCI6cmV0dXJuIjwiO2Nhc2UgImd0IjpyZXR1cm4iPiI7Y2FzZSAicXVvdCI6cmV0dXJuJyInO2RlZmF1bHQ6cmV0dXJuIGMuY2hhckF0KDApIT0iIyJ8fChjPU51bWJlcigiMCIrYy5zbGljZSgxKSksaXNOYU4oYykpP2I6U3RyaW5nLmZyb21DaGFyQ29kZShjKX19KX0sbm89LyYoW147XHM8Jl0rKTs/L2csb289ZnVuY3Rpb24oYSl7dmFyIGI9eyImYW1wOyI6IiYiLCImbHQ7IjoiPCIsIiZndDsiOiI+IiwiJnF1b3Q7IjonIid9O3ZhciBjPV8udi5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKcmV0dXJuIGEucmVwbGFjZShubyxmdW5jdGlvbihkLGUpe3ZhciBmPWJbZF07aWYoZilyZXR1cm4gZjtlLmNoYXJBdCgwKT09IiMiJiYoZT1OdW1iZXIoIjAiK2Uuc2xpY2UoMSkpLGlzTmFOKGUpfHwoZj1TdHJpbmcuZnJvbUNoYXJDb2RlKGUpKSk7Znx8KGY9Xy5tbChkKyIgIiksYy5ub2RlVHlwZT09PTEmJk1sKGMpLGMuaW5uZXJIVE1MPV8ua2ooZiksZj1jLmZpcnN0Q2hpbGQubm9kZVZhbHVlLnNsaWNlKDAsLTEpKTtyZXR1cm4gYltkXT1mfSl9LHBvPWZ1bmN0aW9uKGEpe3JldHVybiBhLmluZGV4T2YoIiYiKSE9LTE/ImRvY3VtZW50ImluIF8udj9vbyhhKTptbyhhKTphfSxybz1mdW5jdGlvbihhKXt2YXIgYj1xbztyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIsIjcuMCIpP2JbIjcuMCJdOmJbIjcuMCJdPWEoIjcuMCIpfSxxbz17fSxzbz1mdW5jdGlvbigpe3JldHVybiBybyhmdW5jdGlvbigpe3JldHVybiBMbChfLmpkLCI3LjAiKT49MH0pfSwKVGw9L15bYS16XVthLXpcZC1dKiQvaSxXbD0iQVBQTEVUIEJBU0UgRU1CRUQgSUZSQU1FIExJTksgTUFUSCBNRVRBIE9CSkVDVCBTQ1JJUFQgU1RZTEUgU1ZHIFRFTVBMQVRFIi5zcGxpdCgiICIpLFhsPSJBUkVBIEJSIENPTCBDT01NQU5EIEhSIElNRyBJTlBVVCBLRVlHRU4gUEFSQU0gU09VUkNFIFRSQUNLIFdCUiIuc3BsaXQoIiAiKSxVbD1bImFjdGlvbiIsImZvcm1hY3Rpb24iLCJocmVmIl0sdG89ZnVuY3Rpb24oKXt0aGlzLmc9bmV3IE1hcH07CnRvLnByb3RvdHlwZS5mb3JtYXQ9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcyxjPVBsKCJfc2FmZXZhbHVlc19mb3JtYXRfbWFya2VyXzoiKS50b1N0cmluZygpO2E9UGwoYSkudG9TdHJpbmcoKS5yZXBsYWNlKG5ldyBSZWdFeHAoIlxceyIrYysiW1xcdyYjO10rXFx9IiwiZyIpLGZ1bmN0aW9uKGQpe3ZhciBlO2lmKGU9Yi5nLmdldChkKSl7ZD0iIjtzd2l0Y2goZS50eXBlKXtjYXNlICJodG1sIjpkPWUueGY7YnJlYWs7Y2FzZSAic3RhcnRUYWciOmQ9IjwiK2UudGFnTmFtZStlLmF0dHJpYnV0ZXMrIj4iO2JyZWFrO2Nhc2UgImVuZFRhZyI6ZD0iPC8iK2UudGFnTmFtZSsiPiJ9ZT1kfWVsc2UgZT1kO3JldHVybiBlfSk7cmV0dXJuIF8ubWwoYSl9O3RvLnByb3RvdHlwZS50ZXh0PWZ1bmN0aW9uKGEpe3JldHVybiB1byh0aGlzLHt0eXBlOiJodG1sIix4ZjpQbChhKS50b1N0cmluZygpfSl9Owp2YXIgdW89ZnVuY3Rpb24oYSxiKXt2YXIgYz0ie19zYWZldmFsdWVzX2Zvcm1hdF9tYXJrZXJfOiIrYS5nLnNpemUrIl8iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIpKyJ9IjthLmcuc2V0KFBsKGMpLnRvU3RyaW5nKCksYik7cmV0dXJuIGN9LGduPWZ1bmN0aW9uKGEpe3JldHVybiBfLnRkKGRvY3VtZW50LGEpfSx2bz1mdW5jdGlvbihhKXt2YXIgYj1hfHxkb2N1bWVudDtiLmdldEVsZW1lbnRzQnlDbGFzc05hbWU/YT1iLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoIlZJcGdKZC15QVdORWItblZNZmNkLWZtY21TIilbMF06KGI9ZG9jdW1lbnQsYT0oYXx8YikucXVlcnlTZWxlY3RvcigiLlZJcGdKZC15QVdORWItblZNZmNkLWZtY21TIikpO3JldHVybiBhfHxudWxsfSx3bz1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8ueWQoZG9jdW1lbnQsYXJndW1lbnRzKX0seG89ZnVuY3Rpb24oYSxiKXtiLnBhcmVudE5vZGUmJmIucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYSwKYi5uZXh0U2libGluZyl9LHlvPWZ1bmN0aW9uKGEpe3JldHVybiBfLnlhKGEpJiZhLm5vZGVUeXBlPT0xfSx6bz1mdW5jdGlvbihhKXtyZXR1cm4gYS5jb250ZW50RG9jdW1lbnR8fGEuY29udGVudFdpbmRvdy5kb2N1bWVudH0sQW89ZnVuY3Rpb24oYSl7dHJ5e3JldHVybiBhLmNvbnRlbnRXaW5kb3d8fChhLmNvbnRlbnREb2N1bWVudD9fLm1iKGEuY29udGVudERvY3VtZW50KTpudWxsKX1jYXRjaChiKXt9cmV0dXJuIG51bGx9LEJvPXtTQ1JJUFQ6MSxTVFlMRToxLEhFQUQ6MSxJRlJBTUU6MSxPQkpFQ1Q6MX0sQ289e0lNRzoiICIsQlI6IlxuIn0sRG89ZnVuY3Rpb24oYSxiLGMpe2lmKCEoYS5ub2RlTmFtZSBpbiBCbykpaWYoYS5ub2RlVHlwZT09MyljP2IucHVzaChTdHJpbmcoYS5ub2RlVmFsdWUpLnJlcGxhY2UoLyhcclxufFxyfFxuKS9nLCIiKSk6Yi5wdXNoKGEubm9kZVZhbHVlKTtlbHNlIGlmKGEubm9kZU5hbWUgaW4gQ28pYi5wdXNoKENvW2Eubm9kZU5hbWVdKTtlbHNlIGZvcihhPQphLmZpcnN0Q2hpbGQ7YTspRG8oYSxiLGMpLGE9YS5uZXh0U2libGluZ30sRW89ZnVuY3Rpb24oYSl7dmFyIGI9W107RG8oYSxiLCEwKTthPWIuam9pbigiIik7YT1hLnJlcGxhY2UoLyBceEFEIC9nLCIgIikucmVwbGFjZSgvXHhBRC9nLCIiKTthPWEucmVwbGFjZSgvXHUyMDBCL2csIiIpO2E9YS5yZXBsYWNlKC8gKy9nLCIgIik7YSE9IiAiJiYoYT1hLnJlcGxhY2UoL15ccyovLCIiKSk7cmV0dXJuIGF9LEZvPWZ1bmN0aW9uKGEsYixjKXt0aGlzLnByb21pc2U9YTt0aGlzLnJlc29sdmU9Yjt0aGlzLnJlamVjdD1jfSxHbz1mdW5jdGlvbigpe3ZhciBhLGIsYz1uZXcgXy5vZShmdW5jdGlvbihkLGUpe2E9ZDtiPWV9KTtyZXR1cm4gbmV3IEZvKGMsYSxiKX0sSG89ZnVuY3Rpb24oYSl7aWYoYS5pYiYmdHlwZW9mIGEuaWI9PSJmdW5jdGlvbiIpcmV0dXJuIGEuaWIoKTtpZih0eXBlb2YgTWFwIT09InVuZGVmaW5lZCImJmEgaW5zdGFuY2VvZiBNYXB8fHR5cGVvZiBTZXQhPT0idW5kZWZpbmVkIiYmCmEgaW5zdGFuY2VvZiBTZXQpcmV0dXJuIEFycmF5LmZyb20oYS52YWx1ZXMoKSk7aWYodHlwZW9mIGE9PT0ic3RyaW5nIilyZXR1cm4gYS5zcGxpdCgiIik7aWYoXy5xYShhKSl7Zm9yKHZhciBiPVtdLGM9YS5sZW5ndGgsZD0wO2Q8YztkKyspYi5wdXNoKGFbZF0pO3JldHVybiBifWI9W107Yz0wO2ZvcihkIGluIGEpYltjKytdPWFbZF07cmV0dXJuIGJ9LElvPWZ1bmN0aW9uKGEpe2lmKGEuT2MmJnR5cGVvZiBhLk9jPT0iZnVuY3Rpb24iKXJldHVybiBhLk9jKCk7aWYoIWEuaWJ8fHR5cGVvZiBhLmliIT0iZnVuY3Rpb24iKXtpZih0eXBlb2YgTWFwIT09InVuZGVmaW5lZCImJmEgaW5zdGFuY2VvZiBNYXApcmV0dXJuIEFycmF5LmZyb20oYS5rZXlzKCkpO2lmKCEodHlwZW9mIFNldCE9PSJ1bmRlZmluZWQiJiZhIGluc3RhbmNlb2YgU2V0KSl7aWYoXy5xYShhKXx8dHlwZW9mIGE9PT0ic3RyaW5nIil7dmFyIGI9W107YT1hLmxlbmd0aDtmb3IodmFyIGM9MDtjPGE7YysrKWIucHVzaChjKTsKcmV0dXJuIGJ9Yj1bXTtjPTA7Zm9yKHZhciBkIGluIGEpYltjKytdPWQ7cmV0dXJuIGJ9fX0sSm89ZnVuY3Rpb24oYSxiLGMpe2lmKGEuZm9yRWFjaCYmdHlwZW9mIGEuZm9yRWFjaD09ImZ1bmN0aW9uIilhLmZvckVhY2goYixjKTtlbHNlIGlmKF8ucWEoYSl8fHR5cGVvZiBhPT09InN0cmluZyIpQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChhLGIsYyk7ZWxzZSBmb3IodmFyIGQ9SW8oYSksZT1IbyhhKSxmPWUubGVuZ3RoLGc9MDtnPGY7ZysrKWIuY2FsbChjLGVbZ10sZCYmZFtnXSxhKX0sZ209ZnVuY3Rpb24oYSxiKXt0aGlzLmg9dGhpcy5nPW51bGw7dGhpcy5qPWF8fG51bGw7dGhpcy5sPSEhYn0sS289ZnVuY3Rpb24oYSl7YS5nfHwoYS5nPW5ldyBNYXAsYS5oPTAsYS5qJiZfLkViKGEuaixmdW5jdGlvbihiLGMpe2EuYWRkKF8uRGIoYiksYyl9KSl9OwpnbS5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYil7S28odGhpcyk7dGhpcy5qPW51bGw7YT1Mbyh0aGlzLGEpO3ZhciBjPXRoaXMuZy5nZXQoYSk7Y3x8dGhpcy5nLnNldChhLGM9W10pO2MucHVzaChiKTt0aGlzLmgrPTE7cmV0dXJuIHRoaXN9O2dtLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oYSl7S28odGhpcyk7YT1Mbyh0aGlzLGEpO3JldHVybiB0aGlzLmcuaGFzKGEpPyh0aGlzLmo9bnVsbCx0aGlzLmgtPXRoaXMuZy5nZXQoYSkubGVuZ3RoLHRoaXMuZy5kZWxldGUoYSkpOiExfTtnbS5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLmc9dGhpcy5qPW51bGw7dGhpcy5oPTB9O3ZhciBNbz1mdW5jdGlvbihhLGIpe0tvKGEpO2I9TG8oYSxiKTtyZXR1cm4gYS5nLmhhcyhiKX07Xy5tPWdtLnByb3RvdHlwZTsKXy5tLmZvckVhY2g9ZnVuY3Rpb24oYSxiKXtLbyh0aGlzKTt0aGlzLmcuZm9yRWFjaChmdW5jdGlvbihjLGQpe2MuZm9yRWFjaChmdW5jdGlvbihlKXthLmNhbGwoYixlLGQsdGhpcyl9LHRoaXMpfSx0aGlzKX07Xy5tLk9jPWZ1bmN0aW9uKCl7S28odGhpcyk7Zm9yKHZhciBhPUFycmF5LmZyb20odGhpcy5nLnZhbHVlcygpKSxiPUFycmF5LmZyb20odGhpcy5nLmtleXMoKSksYz1bXSxkPTA7ZDxiLmxlbmd0aDtkKyspZm9yKHZhciBlPWFbZF0sZj0wO2Y8ZS5sZW5ndGg7ZisrKWMucHVzaChiW2RdKTtyZXR1cm4gY307Xy5tLmliPWZ1bmN0aW9uKGEpe0tvKHRoaXMpO3ZhciBiPVtdO2lmKHR5cGVvZiBhPT09InN0cmluZyIpTW8odGhpcyxhKSYmKGI9Yi5jb25jYXQodGhpcy5nLmdldChMbyh0aGlzLGEpKSkpO2Vsc2V7YT1BcnJheS5mcm9tKHRoaXMuZy52YWx1ZXMoKSk7Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspYj1iLmNvbmNhdChhW2NdKX1yZXR1cm4gYn07Cl8ubS5zZXQ9ZnVuY3Rpb24oYSxiKXtLbyh0aGlzKTt0aGlzLmo9bnVsbDthPUxvKHRoaXMsYSk7TW8odGhpcyxhKSYmKHRoaXMuaC09dGhpcy5nLmdldChhKS5sZW5ndGgpO3RoaXMuZy5zZXQoYSxbYl0pO3RoaXMuaCs9MTtyZXR1cm4gdGhpc307Xy5tLmdldD1mdW5jdGlvbihhLGIpe2lmKCFhKXJldHVybiBiO2E9dGhpcy5pYihhKTtyZXR1cm4gYS5sZW5ndGg+MD9TdHJpbmcoYVswXSk6Yn07dmFyIE5vPWZ1bmN0aW9uKGEsYixjKXthLnJlbW92ZShiKTtjLmxlbmd0aD4wJiYoYS5qPW51bGwsYS5nLnNldChMbyhhLGIpLF8ud2EoYykpLGEuaCs9Yy5sZW5ndGgpfTsKZ20ucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7aWYodGhpcy5qKXJldHVybiB0aGlzLmo7aWYoIXRoaXMuZylyZXR1cm4iIjtmb3IodmFyIGE9W10sYj1BcnJheS5mcm9tKHRoaXMuZy5rZXlzKCkpLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9YltjXSxlPV8uR2IoZCk7ZD10aGlzLmliKGQpO2Zvcih2YXIgZj0wO2Y8ZC5sZW5ndGg7ZisrKXt2YXIgZz1lO2RbZl0hPT0iIiYmKGcrPSI9IitfLkdiKGRbZl0pKTthLnB1c2goZyl9fXJldHVybiB0aGlzLmo9YS5qb2luKCImIil9Owp2YXIgZW09ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IGdtO2Iuaj1hLmo7YS5nJiYoYi5nPW5ldyBNYXAoYS5nKSxiLmg9YS5oKTtyZXR1cm4gYn0sTG89ZnVuY3Rpb24oYSxiKXtiPVN0cmluZyhiKTthLmwmJihiPWIudG9Mb3dlckNhc2UoKSk7cmV0dXJuIGJ9LE9vPWZ1bmN0aW9uKGEsYil7YiYmIWEubCYmKEtvKGEpLGEuaj1udWxsLGEuZy5mb3JFYWNoKGZ1bmN0aW9uKGMsZCl7dmFyIGU9ZC50b0xvd2VyQ2FzZSgpO2QhPWUmJih0aGlzLnJlbW92ZShkKSxObyh0aGlzLGUsYykpfSxhKSk7YS5sPWJ9O2dtLnByb3RvdHlwZS5leHRlbmQ9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTA7Yjxhcmd1bWVudHMubGVuZ3RoO2IrKylKbyhhcmd1bWVudHNbYl0sZnVuY3Rpb24oYyxkKXt0aGlzLmFkZChkLGMpfSx0aGlzKX07CnZhciBQbz0vWyNcL1w/QF0vZyxRbz0vWyNcP10vZyxSbz0vWyNcPzpdL2csU289LyMvZyxmbT1mdW5jdGlvbihhLGIpe3JldHVybiBhP2I/ZGVjb2RlVVJJKGEucmVwbGFjZSgvJTI1L2csIiUyNTI1IikpOmRlY29kZVVSSUNvbXBvbmVudChhKToiIn0sVG89L1sjXD9AXS9nLFVvPWZ1bmN0aW9uKGEpe2E9YS5jaGFyQ29kZUF0KDApO3JldHVybiIlIisoYT4+NCYxNSkudG9TdHJpbmcoMTYpKyhhJjE1KS50b1N0cmluZygxNil9LFZvPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIj8oYT1lbmNvZGVVUkkoYSkucmVwbGFjZShiLFVvKSxjJiYoYT1hLnJlcGxhY2UoLyUyNShbMC05YS1mQS1GXXsyfSkvZywiJSQxIikpLGEpOm51bGx9OwpabC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXt2YXIgYT1bXSxiPXRoaXMubDtiJiZhLnB1c2goVm8oYixQbywhMCksIjoiKTt2YXIgYz10aGlzLmg7aWYoY3x8Yj09ImZpbGUiKWEucHVzaCgiLy8iKSwoYj10aGlzLkIpJiZhLnB1c2goVm8oYixQbywhMCksIkAiKSxhLnB1c2goXy5HYihjKS5yZXBsYWNlKC8lMjUoWzAtOWEtZkEtRl17Mn0pL2csIiUkMSIpKSxjPXRoaXMuQyxjIT1udWxsJiZhLnB1c2goIjoiLFN0cmluZyhjKSk7aWYoYz10aGlzLmopdGhpcy5oJiZjLmNoYXJBdCgwKSE9Ii8iJiZhLnB1c2goIi8iKSxhLnB1c2goVm8oYyxjLmNoYXJBdCgwKT09Ii8iP1FvOlJvLCEwKSk7KGM9dGhpcy5nLnRvU3RyaW5nKCkpJiZhLnB1c2goIj8iLGMpOyhjPXRoaXMuQSkmJmEucHVzaCgiIyIsVm8oYyxTbykpO3JldHVybiBhLmpvaW4oIiIpfTsKWmwucHJvdG90eXBlLnJlc29sdmU9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IFpsKHRoaXMpLGM9ISFhLmw7Yz8kbChiLGEubCk6Yz0hIWEuQjtjP2IuQj1hLkI6Yz0hIWEuaDtjP2FtKGIsYS5oKTpjPWEuQyE9bnVsbDt2YXIgZD1hLmo7aWYoYylibShiLGEuQyk7ZWxzZSBpZihjPSEhYS5qKXtpZihkLmNoYXJBdCgwKSE9Ii8iKWlmKHRoaXMuaCYmIXRoaXMuailkPSIvIitkO2Vsc2V7dmFyIGU9Yi5qLmxhc3RJbmRleE9mKCIvIik7ZSE9LTEmJihkPWIuai5zbGljZSgwLGUrMSkrZCl9ZT1kO2lmKGU9PSIuLiJ8fGU9PSIuIilkPSIiO2Vsc2UgaWYoZS5pbmRleE9mKCIuLyIpIT0tMXx8ZS5pbmRleE9mKCIvLiIpIT0tMSl7ZD1lLmxhc3RJbmRleE9mKCIvIiwwKT09MDtlPWUuc3BsaXQoIi8iKTtmb3IodmFyIGY9W10sZz0wO2c8ZS5sZW5ndGg7KXt2YXIgaD1lW2crK107aD09Ii4iP2QmJmc9PWUubGVuZ3RoJiZmLnB1c2goIiIpOmg9PSIuLiI/KChmLmxlbmd0aD4xfHxmLmxlbmd0aD09CjEmJmZbMF0hPSIiKSYmZi5wb3AoKSxkJiZnPT1lLmxlbmd0aCYmZi5wdXNoKCIiKSk6KGYucHVzaChoKSxkPSEwKX1kPWYuam9pbigiLyIpfWVsc2UgZD1lfWM/Y20oYixkKTpjPWEuZy50b1N0cmluZygpIT09IiI7Yz9kbShiLGVtKGEuZykpOmM9ISFhLkE7YyYmKGIuQT1hLkEpO3JldHVybiBifTsKdmFyICRsPWZ1bmN0aW9uKGEsYixjKXthLmw9Yz9mbShiLCEwKTpiO2EubCYmKGEubD1hLmwucmVwbGFjZSgvOiQvLCIiKSk7cmV0dXJuIGF9LGFtPWZ1bmN0aW9uKGEsYixjKXthLmg9Yz9mbShiLCEwKTpiO3JldHVybiBhfSxibT1mdW5jdGlvbihhLGIpe2lmKGIpe2I9TnVtYmVyKGIpO2lmKGlzTmFOKGIpfHxiPDApdGhyb3cgRXJyb3IoIkhgIitiKTthLkM9Yn1lbHNlIGEuQz1udWxsfSxjbT1mdW5jdGlvbihhLGIsYyl7YS5qPWM/Zm0oYiwhMCk6YjtyZXR1cm4gYX0sZG09ZnVuY3Rpb24oYSxiLGMpe2IgaW5zdGFuY2VvZiBnbT8oYS5nPWIsT28oYS5nLGEubykpOihjfHwoYj1WbyhiLFRvKSksYS5nPW5ldyBnbShiLGEubykpfSxXbz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIFpsP25ldyBabChhKTpuZXcgWmwoYSl9LFhvPWZ1bmN0aW9uKGEpe3ZhciBiPUlvKGEpO2lmKHR5cGVvZiBiPT0idW5kZWZpbmVkIil0aHJvdyBFcnJvcigiSiIpO3ZhciBjPW5ldyBnbShudWxsKTsKYT1IbyhhKTtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXSxmPWFbZF07QXJyYXkuaXNBcnJheShmKT9ObyhjLGUsZik6Yy5hZGQoZSxmKX1yZXR1cm4gY30sWW89e30sWm89e30sJG89e30sYXA9e30sam09e30scW09e30scG0sVW09e30sYnA9ZnVuY3Rpb24oYSxiLGMpe2E9YS5KO3JldHVybiBfLkhpKGEsYVtfLkhdfDAsYixjKXx8YltfLmZoXXx8KGJbXy5maF09Xy5naChiKSl9LHNuPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5HaShhLGIsXy5MaihjKSwiIil9O18ubT12bS5wcm90b3R5cGU7Xy5tLmNvbnRhaW5zPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzJiZhP2EgaW5zdGFuY2VvZiB2bT9hLmxlZnQ+PXRoaXMubGVmdCYmYS5yaWdodDw9dGhpcy5yaWdodCYmYS50b3A+PXRoaXMudG9wJiZhLmJvdHRvbTw9dGhpcy5ib3R0b206YS54Pj10aGlzLmxlZnQmJmEueDw9dGhpcy5yaWdodCYmYS55Pj10aGlzLnRvcCYmYS55PD10aGlzLmJvdHRvbTohMX07Cl8ubS5jZWlsPWZ1bmN0aW9uKCl7dGhpcy50b3A9TWF0aC5jZWlsKHRoaXMudG9wKTt0aGlzLnJpZ2h0PU1hdGguY2VpbCh0aGlzLnJpZ2h0KTt0aGlzLmJvdHRvbT1NYXRoLmNlaWwodGhpcy5ib3R0b20pO3RoaXMubGVmdD1NYXRoLmNlaWwodGhpcy5sZWZ0KTtyZXR1cm4gdGhpc307Xy5tLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy50b3A9TWF0aC5mbG9vcih0aGlzLnRvcCk7dGhpcy5yaWdodD1NYXRoLmZsb29yKHRoaXMucmlnaHQpO3RoaXMuYm90dG9tPU1hdGguZmxvb3IodGhpcy5ib3R0b20pO3RoaXMubGVmdD1NYXRoLmZsb29yKHRoaXMubGVmdCk7cmV0dXJuIHRoaXN9O18ubS5yb3VuZD1mdW5jdGlvbigpe3RoaXMudG9wPU1hdGgucm91bmQodGhpcy50b3ApO3RoaXMucmlnaHQ9TWF0aC5yb3VuZCh0aGlzLnJpZ2h0KTt0aGlzLmJvdHRvbT1NYXRoLnJvdW5kKHRoaXMuYm90dG9tKTt0aGlzLmxlZnQ9TWF0aC5yb3VuZCh0aGlzLmxlZnQpO3JldHVybiB0aGlzfTsKXy5tLnRyYW5zbGF0ZT1mdW5jdGlvbihhLGIpe2EgaW5zdGFuY2VvZiB6bD8odGhpcy5sZWZ0Kz1hLngsdGhpcy5yaWdodCs9YS54LHRoaXMudG9wKz1hLnksdGhpcy5ib3R0b20rPWEueSk6KHRoaXMubGVmdCs9YSx0aGlzLnJpZ2h0Kz1hLHR5cGVvZiBiPT09Im51bWJlciImJih0aGlzLnRvcCs9Yix0aGlzLmJvdHRvbSs9YikpO3JldHVybiB0aGlzfTtfLm09d20ucHJvdG90eXBlO18ubS5jb250YWlucz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIHpsP2EueD49dGhpcy5sZWZ0JiZhLng8PXRoaXMubGVmdCt0aGlzLndpZHRoJiZhLnk+PXRoaXMudG9wJiZhLnk8PXRoaXMudG9wK3RoaXMuaGVpZ2h0OnRoaXMubGVmdDw9YS5sZWZ0JiZ0aGlzLmxlZnQrdGhpcy53aWR0aD49YS5sZWZ0K2Eud2lkdGgmJnRoaXMudG9wPD1hLnRvcCYmdGhpcy50b3ArdGhpcy5oZWlnaHQ+PWEudG9wK2EuaGVpZ2h0fTsKXy5tLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLmxlZnQ9TWF0aC5jZWlsKHRoaXMubGVmdCk7dGhpcy50b3A9TWF0aC5jZWlsKHRoaXMudG9wKTt0aGlzLndpZHRoPU1hdGguY2VpbCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmNlaWwodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTtfLm0uZmxvb3I9ZnVuY3Rpb24oKXt0aGlzLmxlZnQ9TWF0aC5mbG9vcih0aGlzLmxlZnQpO3RoaXMudG9wPU1hdGguZmxvb3IodGhpcy50b3ApO3RoaXMud2lkdGg9TWF0aC5mbG9vcih0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmZsb29yKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307Xy5tLnJvdW5kPWZ1bmN0aW9uKCl7dGhpcy5sZWZ0PU1hdGgucm91bmQodGhpcy5sZWZ0KTt0aGlzLnRvcD1NYXRoLnJvdW5kKHRoaXMudG9wKTt0aGlzLndpZHRoPU1hdGgucm91bmQodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5yb3VuZCh0aGlzLmhlaWdodCk7cmV0dXJuIHRoaXN9OwpfLm0udHJhbnNsYXRlPWZ1bmN0aW9uKGEsYil7YSBpbnN0YW5jZW9mIHpsPyh0aGlzLmxlZnQrPWEueCx0aGlzLnRvcCs9YS55KToodGhpcy5sZWZ0Kz1hLHR5cGVvZiBiPT09Im51bWJlciImJih0aGlzLnRvcCs9YikpO3JldHVybiB0aGlzfTsKdmFyIGNwPWZ1bmN0aW9uKGEsYil7YTp7dmFyIGM9Xy5zZChhKTtpZihjLmRlZmF1bHRWaWV3JiZjLmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUmJihjPWMuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShhLG51bGwpKSl7Yz1jW2JdfHxjLmdldFByb3BlcnR5VmFsdWUoYil8fCIiO2JyZWFrIGF9Yz0iIn1yZXR1cm4gY3x8KGEuY3VycmVudFN0eWxlP2EuY3VycmVudFN0eWxlW2JdOm51bGwpfHxhLnN0eWxlJiZhLnN0eWxlW2JdfSxkcD1mdW5jdGlvbihhKXt0eXBlb2YgYT09Im51bWJlciImJihhKz0icHgiKTtyZXR1cm4gYX0sZXA9ZnVuY3Rpb24oYSxiKXtpZihiIGluc3RhbmNlb2Ygemwpe3ZhciBjPWIueDtiPWIueX1lbHNlIGM9YixiPXZvaWQgMDthLnN0eWxlLmxlZnQ9ZHAoYyk7YS5zdHlsZS50b3A9ZHAoYil9LGZwPWZ1bmN0aW9uKGEpe3RyeXtyZXR1cm4gYS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKX1jYXRjaChiKXtyZXR1cm57bGVmdDowLHRvcDowLHJpZ2h0OjAsCmJvdHRvbTowfX19LGdwPWZ1bmN0aW9uKGEpe3ZhciBiPV8uc2QoYSksYz1jcChhLCJwb3NpdGlvbiIpLGQ9Yz09ImZpeGVkInx8Yz09ImFic29sdXRlIjtmb3IoYT1hLnBhcmVudE5vZGU7YSYmYSE9YjthPWEucGFyZW50Tm9kZSlpZihhLm5vZGVUeXBlPT0xMSYmYS5ob3N0JiYoYT1hLmhvc3QpLGM9Y3AoYSwicG9zaXRpb24iKSxkPWQmJmM9PSJzdGF0aWMiJiZhIT1iLmRvY3VtZW50RWxlbWVudCYmYSE9Yi5ib2R5LCFkJiYoYS5zY3JvbGxXaWR0aD5hLmNsaWVudFdpZHRofHxhLnNjcm9sbEhlaWdodD5hLmNsaWVudEhlaWdodHx8Yz09ImZpeGVkInx8Yz09ImFic29sdXRlInx8Yz09InJlbGF0aXZlIikpcmV0dXJuIGE7cmV0dXJuIG51bGx9LGhwPWZ1bmN0aW9uKGEpe3ZhciBiPV8uc2QoYSksYz1uZXcgemwoMCwwKTtpZihhPT0oYj9fLnNkKGIpOmRvY3VtZW50KS5kb2N1bWVudEVsZW1lbnQpcmV0dXJuIGM7YT1mcChhKTtiPV8ubGIoYik7Yj1LbihiLmcpO2MueD1hLmxlZnQrYi54OwpjLnk9YS50b3ArYi55O3JldHVybiBjfSxpcD1mdW5jdGlvbihhKXtmb3IodmFyIGI9bmV3IHZtKDAsSW5maW5pdHksSW5maW5pdHksMCksYz1fLmxiKGEpLGQ9Yy5nLmJvZHksZT1jLmcuZG9jdW1lbnRFbGVtZW50LGY9Sm4oYy5nKTthPWdwKGEpOylpZigoIV8uVmN8fGEuY2xpZW50SGVpZ2h0IT0wfHxhIT1kKSYmYSE9ZCYmYSE9ZSYmY3AoYSwib3ZlcmZsb3ciKSE9InZpc2libGUiKXt2YXIgZz1ocChhKSxoPW5ldyB6bChhLmNsaWVudExlZnQsYS5jbGllbnRUb3ApO2cueCs9aC54O2cueSs9aC55O2IudG9wPU1hdGgubWF4KGIudG9wLGcueSk7Yi5yaWdodD1NYXRoLm1pbihiLnJpZ2h0LGcueCthLmNsaWVudFdpZHRoKTtiLmJvdHRvbT1NYXRoLm1pbihiLmJvdHRvbSxnLnkrYS5jbGllbnRIZWlnaHQpO2IubGVmdD1NYXRoLm1heChiLmxlZnQsZy54KX1kPWYuc2Nyb2xsTGVmdDtmPWYuc2Nyb2xsVG9wO2IubGVmdD1NYXRoLm1heChiLmxlZnQsZCk7Yi50b3A9TWF0aC5tYXgoYi50b3AsCmYpO2M9Xy5pYihjLmcuZGVmYXVsdFZpZXd8fHdpbmRvdyk7Yi5yaWdodD1NYXRoLm1pbihiLnJpZ2h0LGQrYy53aWR0aCk7Yi5ib3R0b209TWF0aC5taW4oYi5ib3R0b20sZitjLmhlaWdodCk7cmV0dXJuIGIudG9wPj0wJiZiLmxlZnQ+PTAmJmIuYm90dG9tPmIudG9wJiZiLnJpZ2h0PmIubGVmdD9iOm51bGx9LGpwPWZ1bmN0aW9uKGEsYil7dmFyIGM9bmV3IHpsKDAsMCksZD1fLm1iKF8uc2QoYSkpO2E6e3RyeXtfLlFjKGQucGFyZW50KTt2YXIgZT0hMDticmVhayBhfWNhdGNoKGYpe31lPSExfWlmKCFlKXJldHVybiBjO2RvIGQ9PWI/ZT1ocChhKTooZT1mcChhKSxlPW5ldyB6bChlLmxlZnQsZS50b3ApKSxjLngrPWUueCxjLnkrPWUueTt3aGlsZShkJiZkIT1iJiZkIT1kLnBhcmVudCYmKGE9ZC5mcmFtZUVsZW1lbnQpJiYoZD1kLnBhcmVudCkpO3JldHVybiBjfSxscD1mdW5jdGlvbihhKXt2YXIgYj1rcDtpZihjcChhLCJkaXNwbGF5IikhPSJub25lIilyZXR1cm4gYihhKTt2YXIgYz0KYS5zdHlsZSxkPWMuZGlzcGxheSxlPWMudmlzaWJpbGl0eSxmPWMucG9zaXRpb247Yy52aXNpYmlsaXR5PSJoaWRkZW4iO2MucG9zaXRpb249ImFic29sdXRlIjtjLmRpc3BsYXk9ImlubGluZSI7YT1iKGEpO2MuZGlzcGxheT1kO2MucG9zaXRpb249ZjtjLnZpc2liaWxpdHk9ZTtyZXR1cm4gYX0sa3A9ZnVuY3Rpb24oYSl7dmFyIGI9YS5vZmZzZXRXaWR0aCxjPWEub2Zmc2V0SGVpZ2h0LGQ9Xy5WYyYmIWImJiFjO3JldHVybihiPT09dm9pZCAwfHxkKSYmYS5nZXRCb3VuZGluZ0NsaWVudFJlY3Q/KGE9ZnAoYSksbmV3IF8uQ2EoYS5yaWdodC1hLmxlZnQsYS5ib3R0b20tYS50b3ApKTpuZXcgXy5DYShiLGMpfSxtcD1mdW5jdGlvbihhLGIpe2Euc3R5bGUuZGlzcGxheT1iPyIiOiJub25lIn0sbnA9ZnVuY3Rpb24oYSxiKXtiPV8ubGIoYik7dmFyIGM9SW4oYi5nLCJIRUFEIilbMF07aWYoIWMpe3ZhciBkPUluKGIuZywiQk9EWSIpWzBdO2M9Yi5TKCJIRUFEIik7ZC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShjLApkKX1kPWIuUygiU1RZTEUiKTt2YXIgZT1fLk9hKCJzdHlsZSIsZG9jdW1lbnQpO2UmJmQuc2V0QXR0cmlidXRlKCJub25jZSIsZSk7YT1ObChhKTtfLnYudHJ1c3RlZFR5cGVzP18uQ2QoZCxhKTpkLmlubmVySFRNTD1hO2IuYXBwZW5kQ2hpbGQoYyxkKX0sb3A9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBfLkNhKGEub2Zmc2V0V2lkdGgsYS5vZmZzZXRIZWlnaHQpfSxwcD1mdW5jdGlvbihhLGIsYyl7YT1hLnN0eWxlO18uVWM/YS5Nb3pCb3hTaXppbmc9YzpfLlZjP2EuV2Via2l0Qm94U2l6aW5nPWM6YS5ib3hTaXppbmc9YzthLndpZHRoPU1hdGgubWF4KGIud2lkdGgsMCkrInB4IjthLmhlaWdodD1NYXRoLm1heChiLmhlaWdodCwwKSsicHgifSxxcD1mdW5jdGlvbihhLGIpe3BwKGEsYiwiY29udGVudC1ib3giKX0scnA9ZnVuY3Rpb24oYSl7aWYoYSE9bnVsbClzd2l0Y2goYS5KZCl7Y2FzZSAxOnJldHVybiAxO2Nhc2UgLTE6cmV0dXJuLTE7Y2FzZSAwOnJldHVybiAwfXJldHVybiBudWxsfSwKc3A9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBfLnhsP1huKGEpPyEwOiEhYS5tYSgpOmEgaW5zdGFuY2VvZiBfLnpmPyEhYS5tYSgpOiEhYX0sdHA9LzwvZyx1cD1mdW5jdGlvbihhLGIpe2E9YS5yZXBsYWNlKC88XC8vZywiPFxcLyIpLnJlcGxhY2UoL1xdXF0+L2csIl1dXFw+Iik7cmV0dXJuIGI/YS5yZXBsYWNlKC97L2csIiBcXHsiKS5yZXBsYWNlKC99L2csIiBcXH0iKS5yZXBsYWNlKC9cL1wqL2csIi8gKiIpLnJlcGxhY2UoL1xcJC8sIlxcICIpOmF9LHZwPWZ1bmN0aW9uKGEpe2E9U3RyaW5nKGEpO2Zvcih2YXIgYj1mdW5jdGlvbihkLGUsZil7Zm9yKHZhciBnPU1hdGgubWluKGUubGVuZ3RoLWYsZC5sZW5ndGgpLGg9MDtoPGc7aCsrKXt2YXIgaz1lW2YraF07aWYoZFtoXSE9PSgiQSI8PWsmJms8PSJaIj9rLnRvTG93ZXJDYXNlKCk6aykpcmV0dXJuITF9cmV0dXJuITB9LGM9MDsoYz1hLmluZGV4T2YoIjwiLGMpKSE9LTE7KXtpZihiKCJceDNjL3NjcmlwdCIsCmEsYyl8fGIoIlx4M2MhLS0iLGEsYykpcmV0dXJuInpTb3l6IjtjKz0xfXJldHVybiBhfSx3cD1mdW5jdGlvbihhLGIpe3JldHVybiBhIT1udWxsJiZhLlpiPT09Yn0seHA9ZnVuY3Rpb24oYSl7cmV0dXJuIHdwKGEsJG8pP2EubWEoKTphIGluc3RhbmNlb2YgXy5MYT9fLk5hKGEpLnRvU3RyaW5nKCk6ImFib3V0OmludmFsaWQjelNveXoifSx6cD1mdW5jdGlvbigpe3ZhciBhO3dwKCIiLGFwKT9hPSIiLm1hKCk6YT15cC50ZXN0KCIiKT8iIjoielNveXoiO3dwKGEsYXApJiYoYT1hLm1hKCkpO3JldHVybihhJiYhYS5zdGFydHNXaXRoKCIgIik/IiAiOiIiKSthfSxBcD1mdW5jdGlvbihhKXtyZXR1cm4gd3AoYSxfLm9sKT91cChhLm1hKCksITEpOmE9PW51bGw/IiI6YSBpbnN0YW5jZW9mIF8ucGw/dXAoTmwoYSksITEpOnVwKFN0cmluZyhhKSwhMCl9LEJwPXsiXHgwMCI6IiYjMDsiLCJcdCI6IiYjOTsiLCJcbiI6IiYjMTA7IiwiXHYiOiImIzExOyIsIlxmIjoiJiMxMjsiLCJcciI6IiYjMTM7IiwKIiAiOiImIzMyOyIsJyInOiImcXVvdDsiLCImIjoiJmFtcDsiLCInIjoiJiMzOTsiLCItIjoiJiM0NTsiLCIvIjoiJiM0NzsiLCI8IjoiJmx0OyIsIj0iOiImIzYxOyIsIj4iOiImZ3Q7IiwiYCI6IiYjOTY7IiwiXHUwMDg1IjoiJiMxMzM7IiwiXHUwMGEwIjoiJiMxNjA7IiwiXHUyMDI4IjoiJiM4MjMyOyIsIlx1MjAyOSI6IiYjODIzMzsifSxDcD1mdW5jdGlvbihhKXtyZXR1cm4gQnBbYV19LERwPXsiXHgwMCI6IlxceDAwIiwiXGIiOiJcXHgwOCIsIlx0IjoiXFx0IiwiXG4iOiJcXG4iLCJcdiI6IlxceDBiIiwiXGYiOiJcXGYiLCJcciI6IlxcciIsJyInOiJcXHgyMiIsJDoiXFx4MjQiLCImIjoiXFx4MjYiLCInIjoiXFx4MjciLCIoIjoiXFx4MjgiLCIpIjoiXFx4MjkiLCIqIjoiXFx4MmEiLCIrIjoiXFx4MmIiLCIsIjoiXFx4MmMiLCItIjoiXFx4MmQiLCIuIjoiXFx4MmUiLCIvIjoiXFwvIiwiOiI6IlxceDNhIiwiPCI6IlxceDNjIiwiPSI6IlxceDNkIiwiPiI6IlxceDNlIiwiPyI6IlxceDNmIiwKIlsiOiJcXHg1YiIsIlxcIjoiXFxcXCIsIl0iOiJcXHg1ZCIsIl4iOiJcXHg1ZSIsInsiOiJcXHg3YiIsInwiOiJcXHg3YyIsIn0iOiJcXHg3ZCIsIlx1MDA4NSI6IlxceDg1IiwiXHUyMDI4IjoiXFx1MjAyOCIsIlx1MjAyOSI6IlxcdTIwMjkifSxFcD1mdW5jdGlvbihhKXtyZXR1cm4gRHBbYV19LEZwPXsiXHgwMCI6IlxcMCAiLCJcYiI6IlxcOCAiLCJcdCI6IlxcOSAiLCJcbiI6IlxcYSAiLCJcdiI6IlxcYiAiLCJcZiI6IlxcYyAiLCJcciI6IlxcZCAiLCciJzoiXFwyMiAiLCImIjoiXFwyNiAiLCInIjoiXFwyNyAiLCIoIjoiXFwyOCAiLCIpIjoiXFwyOSAiLCIqIjoiXFwyYSAiLCIvIjoiXFwyZiAiLCI6IjoiXFwzYSAiLCI7IjoiXFwzYiAiLCI8IjoiXFwzYyAiLCI9IjoiXFwzZCAiLCI+IjoiXFwzZSAiLCJAIjoiXFw0MCAiLCJcXCI6IlxcNWMgIiwieyI6IlxcN2IgIiwifSI6IlxcN2QgIiwiXHUwMDg1IjoiXFw4NSAiLCJcdTAwYTAiOiJcXGEwICIsIlx1MjAyOCI6IlxcMjAyOCAiLAoiXHUyMDI5IjoiXFwyMDI5ICJ9LEdwPWZ1bmN0aW9uKGEpe3JldHVybiBGcFthXX0sSHA9eyJceDAwIjoiJTAwIiwiXHUwMDAxIjoiJTAxIiwiXHUwMDAyIjoiJTAyIiwiXHUwMDAzIjoiJTAzIiwiXHUwMDA0IjoiJTA0IiwiXHUwMDA1IjoiJTA1IiwiXHUwMDA2IjoiJTA2IiwiXHUwMDA3IjoiJTA3IiwiXGIiOiIlMDgiLCJcdCI6IiUwOSIsIlxuIjoiJTBBIiwiXHYiOiIlMEIiLCJcZiI6IiUwQyIsIlxyIjoiJTBEIiwiXHUwMDBlIjoiJTBFIiwiXHUwMDBmIjoiJTBGIiwiXHUwMDEwIjoiJTEwIiwiXHUwMDExIjoiJTExIiwiXHUwMDEyIjoiJTEyIiwiXHUwMDEzIjoiJTEzIiwiXHUwMDE0IjoiJTE0IiwiXHUwMDE1IjoiJTE1IiwiXHUwMDE2IjoiJTE2IiwiXHUwMDE3IjoiJTE3IiwiXHUwMDE4IjoiJTE4IiwiXHUwMDE5IjoiJTE5IiwiXHUwMDFhIjoiJTFBIiwiXHUwMDFiIjoiJTFCIiwiXHUwMDFjIjoiJTFDIiwiXHUwMDFkIjoiJTFEIiwiXHUwMDFlIjoiJTFFIiwiXHUwMDFmIjoiJTFGIiwKIiAiOiIlMjAiLCciJzoiJTIyIiwiJyI6IiUyNyIsIigiOiIlMjgiLCIpIjoiJTI5IiwiPCI6IiUzQyIsIj4iOiIlM0UiLCJcXCI6IiU1QyIsInsiOiIlN0IiLCJ9IjoiJTdEIiwiXHUwMDdmIjoiJTdGIiwiXHUwMDg1IjoiJUMyJTg1IiwiXHUwMGEwIjoiJUMyJUEwIiwiXHUyMDI4IjoiJUUyJTgwJUE4IiwiXHUyMDI5IjoiJUUyJTgwJUE5IiwiXHVmZjAxIjoiJUVGJUJDJTgxIiwiXHVmZjAzIjoiJUVGJUJDJTgzIiwiXHVmZjA0IjoiJUVGJUJDJTg0IiwiXHVmZjA2IjoiJUVGJUJDJTg2IiwiXHVmZjA3IjoiJUVGJUJDJTg3IiwiXHVmZjA4IjoiJUVGJUJDJTg4IiwiXHVmZjA5IjoiJUVGJUJDJTg5IiwiXHVmZjBhIjoiJUVGJUJDJThBIiwiXHVmZjBiIjoiJUVGJUJDJThCIiwiXHVmZjBjIjoiJUVGJUJDJThDIiwiXHVmZjBmIjoiJUVGJUJDJThGIiwiXHVmZjFhIjoiJUVGJUJDJTlBIiwiXHVmZjFiIjoiJUVGJUJDJTlCIiwiXHVmZjFkIjoiJUVGJUJDJTlEIiwiXHVmZjFmIjoiJUVGJUJDJTlGIiwKIlx1ZmYyMCI6IiVFRiVCQyVBMCIsIlx1ZmYzYiI6IiVFRiVCQyVCQiIsIlx1ZmYzZCI6IiVFRiVCQyVCRCJ9LElwPWZ1bmN0aW9uKGEpe3JldHVybiBIcFthXX0sSnA9L1tceDAwXHgyMlx4MjZceDI3XHgzY1x4M2VdL2csS3A9ZnVuY3Rpb24oYSl7cmV0dXJuIHdwKGEsXy5xbCk/YTphIGluc3RhbmNlb2YgXy5EYz8oMCxfLnRsKShfLmtqKGEpLnRvU3RyaW5nKCkpOigwLF8udGwpKFN0cmluZyhTdHJpbmcoYSkpLnJlcGxhY2UoSnAsQ3ApLHJwKGEpKX0sTHA9L1tceDAwXHgyMlx4MjdceDNjXHgzZV0vZyxNcD1mdW5jdGlvbihhKXtyZXR1cm4geG0oU3RyaW5nKGEpLGZ1bmN0aW9uKCl7cmV0dXJuIiJ9KS5yZXBsYWNlKHRwLCImbHQ7Iil9LFA9ZnVuY3Rpb24oYSl7d3AoYSxfLnFsKT8oYT1NcChhLm1hKCkpLGE9U3RyaW5nKGEpLnJlcGxhY2UoTHAsQ3ApKTphPVN0cmluZyhhKS5yZXBsYWNlKEpwLENwKTtyZXR1cm4gYX0sTnA9L1tceDAwXHgwOS1ceDBkIFx4MjJceDI2XHgyN1x4MmRcL1x4M2MtXHgzZWBceDg1XHhhMFx1MjAyOFx1MjAyOV0vZywKT3A9L1tceDAwXHgwOS1ceDBkIFx4MjJceDI3XHgyZFwvXHgzYy1ceDNlYFx4ODVceGEwXHUyMDI4XHUyMDI5XS9nLFBwPS9bXHgwMFx4MDgtXHgwZFx4MjJceDI2XHgyN1wvXHgzYy1ceDNlXHg1Yi1ceDVkXHg3Ylx4N2RceDg1XHUyMDI4XHUyMDI5XS9nLFFwPWZ1bmN0aW9uKGEpe2lmKGE9PW51bGwpcmV0dXJuIiBudWxsICI7aWYod3AoYSxZbykpcmV0dXJuIGEubWEoKTtpZihhIGluc3RhbmNlb2YgXy5QYSlyZXR1cm4gXy5SYShhKS50b1N0cmluZygpO3N3aXRjaCh0eXBlb2YgYSl7Y2FzZSAiYm9vbGVhbiI6Y2FzZSAibnVtYmVyIjpyZXR1cm4iICIrYSsiICI7ZGVmYXVsdDpyZXR1cm4iJyIrU3RyaW5nKFN0cmluZyhhKSkucmVwbGFjZShQcCxFcCkrIicifX0sUnA9L1tceDAwXHgwOC1ceDBkXHgyMlx4MjYtXHgyYVwvXHgzYS1ceDNlQFxcXHg3Ylx4N2RceDg1XHhhMFx1MjAyOFx1MjAyOV0vZyxTcD0vW1x4MDAtIFx4MjJceDI3LVx4MjlceDNjXHgzZVxcXHg3Ylx4N2RceDdmXHg4NVx4YTBcdTIwMjhcdTIwMjlcdWZmMDFcdWZmMDNcdWZmMDRcdWZmMDYtXHVmZjBjXHVmZjBmXHVmZjFhXHVmZjFiXHVmZjFkXHVmZjFmXHVmZjIwXHVmZjNiXHVmZjNkXS9nLApUcD0vXig/IWphdmFzY3JpcHQ6KSg/OlthLXowLTkrLi1dKzp8W14mOlwvPyNdKig/OltcLz8jXXwkKSkvaSxVcD1mdW5jdGlvbihhKXt3cChhLFpvKXx8d3AoYSwkbyk/YT1TdHJpbmcoYSkucmVwbGFjZShTcCxJcCk6YSBpbnN0YW5jZW9mIF8uTGE/KGE9Xy5OYShhKS50b1N0cmluZygpLGE9U3RyaW5nKGEpLnJlcGxhY2UoU3AsSXApKTooYT1TdHJpbmcoYSksYT1UcC50ZXN0KGEpP2EucmVwbGFjZShTcCxJcCk6ImFib3V0OmludmFsaWQjelNveXoiKTtyZXR1cm4gYX0sVnA9L15bXiY6XC8/I10qKD86W1wvPyNdfCQpfF5odHRwcz86fF5maWxlc3lzdGVtOmh0dHBzPzp8XmZ0cDp8XmRhdGE6aW1hZ2VcL1thLXowLTkrLV0rO2Jhc2U2NCxbYS16MC05K1wvXSs9KiR8XmJsb2I6L2ksV3A9ZnVuY3Rpb24oYSl7d3AoYSxabyl8fHdwKGEsJG8pP2E9U3RyaW5nKGEpLnJlcGxhY2UoU3AsSXApOmEgaW5zdGFuY2VvZiBfLkxhPyhhPV8uTmEoYSkudG9TdHJpbmcoKSxhPVN0cmluZyhhKS5yZXBsYWNlKFNwLApJcCkpOihhPVN0cmluZyhhKSxhPVZwLnRlc3QoYSk/YS5yZXBsYWNlKFNwLElwKToiYWJvdXQ6aW52YWxpZCN6U295eiIpO3JldHVybiBhfSx5cD0vXig/IW9ufHNyY3woPzphY3Rpb258YXJjaGl2ZXxiYWNrZ3JvdW5kfGNpdGV8Y2xhc3NpZHxjb2RlYmFzZXxjb250ZW50fGRhdGF8ZHN5bmN8aHJlZnxodHRwLWVxdWl2fGxvbmdkZXNjfHN0eWxlfHVzZW1hcClccyokKSg/OlthLXowLTlfJDotXSopJC9pLFhwPS9eW2EtekEtWjAtOStcL18tXSs9ezAsMn0kLyxZcD1mdW5jdGlvbihhKXthPVN0cmluZyhhKTtyZXR1cm4gWHAudGVzdChhKT9hOiJ6U295eiJ9LFpwPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihacCxfLkopO3ZhciBDbT1mdW5jdGlvbihhKXt2YXIgYj1uZXcgWnA7cmV0dXJuIEdsKGIsMyxhLF8uQmopfTt2YXIgJHA9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKCRwLF8uSik7JHAucHJvdG90eXBlLkphPWZ1bmN0aW9uKCl7cmV0dXJuIF8uTih0aGlzLDIpfTskcC5wcm90b3R5cGUuTmE9ZnVuY3Rpb24oYSl7cmV0dXJuIHNuKHRoaXMsMixhKX07JHAucHJvdG90eXBlLm9hPWZ1bmN0aW9uKCl7cmV0dXJuIF8uTih0aGlzLDMpfTskcC5wcm90b3R5cGUubmE9ZnVuY3Rpb24oYSl7cmV0dXJuIHNuKHRoaXMsMyxhKX07dmFyIGFxPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihhcSxfLkopO3ZhciBicT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoYnEsXy5KKTt2YXIgY3E9Xy5NaihicSk7dmFyIGRxPWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBhfX0sZXE9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9MDtjPGIubGVuZ3RoLTI7Yys9Myl7dmFyIGQ9Yi5jaGFyQXQoYysyKTtkPWQ+PSJhIj9kLmNoYXJDb2RlQXQoMCktODc6TnVtYmVyKGQpO2Q9Yi5jaGFyQXQoYysxKT09IisiP2E+Pj5kOmE8PGQ7YT1iLmNoYXJBdChjKT09IisiP2ErZCY0Mjk0OTY3Mjk1OmFeZH1yZXR1cm4gYX0sZ3E9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPWZxLnNwbGl0KCIuIiksYz1OdW1iZXIoYlswXSl8fDAsZD1bXSxlPTAsZj0wO2Y8YS5sZW5ndGg7ZisrKXt2YXIgZz1hLmNoYXJDb2RlQXQoZik7ZzwxMjg/ZFtlKytdPWc6KGc8MjA0OD9kW2UrK109Zz4+NnwxOTI6KChnJjY0NTEyKT09NTUyOTYmJmYrMTxhLmxlbmd0aCYmKGEuY2hhckNvZGVBdChmKzEpJjY0NTEyKT09NTYzMjA/KGc9NjU1MzYrKChnJjEwMjMpPDwxMCkrKGEuY2hhckNvZGVBdCgrK2YpJjEwMjMpLGRbZSsrXT0KZz4+MTh8MjQwLGRbZSsrXT1nPj4xMiY2M3wxMjgpOmRbZSsrXT1nPj4xMnwyMjQsZFtlKytdPWc+PjYmNjN8MTI4KSxkW2UrK109ZyY2M3wxMjgpfWE9Yztmb3IoZT0wO2U8ZC5sZW5ndGg7ZSsrKWErPWRbZV0sYT1lcShhLCIrLWFeKzYiKTthPWVxKGEsIistM14rYistZiIpO2FePU51bWJlcihiWzFdKXx8MDthPDAmJihhPShhJjIxNDc0ODM2NDcpKzIxNDc0ODM2NDgpO2I9YSUxRTY7cmV0dXJuIGIudG9TdHJpbmcoKSsiLiIrKGJeYyl9LGhxPWZ1bmN0aW9uKCl7dmFyIGE9ZHEoU3RyaW5nLmZyb21DaGFyQ29kZSgxMTYpKSxiPWRxKFN0cmluZy5mcm9tQ2hhckNvZGUoMTA3KSk7YT1bYSgpLGEoKV07YVsxXT1iKCk7cmV0dXJuIGEuam9pbigiIil9O3ZhciBpcT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoaXEsXy5KKTt2YXIganE9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKGpxLF8uSik7dmFyIGtxPV8uTWooanEpO3ZhciBscT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIobHEsXy5KKTt2YXIgT249IiIsbXE9InByb2QiLG5xPSIiLG9xPSJlbiIsQW49IiIscHE9bmV3IGpxLHFxPSExLHJxPW5ldyBEYXRlLHNxPXt9LEJuPTAsdHE9InRlIixmcT0iIix1cT0iIix2cT0iaHR0cHM6Ly8iLHdxPSIiLHhxPSIiLHlxPSIiLHpxPSIiLEFxPSIiLEJxPSIiLENxPSJodHRwczovL3d3dy5nb29nbGUuY29tL2ltYWdlcy9jbGVhcmRvdC5naWYiLERxPSJodHRwczovL3d3dy5nc3RhdGljLmNvbS9pbWFnZXMvYnJhbmRpbmcvZ29vZ2xlbG9nby8xeC9nb29nbGVsb2dvX2NvbG9yXzY4eDI4ZHAucG5nIixFcT0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL3Byb2R1Y3QvMXgvdHJhbnNsYXRlXzI0ZHAucG5nIixGcT0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL2dvb2dsZWxvZ28vMXgvZ29vZ2xlbG9nb19jb2xvcl80MngxNmRwLnBuZyIsR3E9Imh0dHBzOi8vdHJhbnNsYXRlLmdvb2dsZS5jb20iLEhxPSIiLElxPSIiLEpxPSIiLEtxPQpmdW5jdGlvbigpe0hxPSIvLyIrQnErIi90cmFuc2xhdGVfc3VnZ2VzdGlvbj9jbGllbnQ9Iit0cTtJcT0iLy8iK3VxKyIvdHJhbnNsYXRlX3ZvdGluZz9jbGllbnQ9Iit0cTtKcT0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9zdXBwb3J0L3RyYW5zbGF0ZSIrKG9xPT0iZW4iPyIiOiIjZ29vZ3RyYW5zL2VuLyIrb3EpfSxMcT1mdW5jdGlvbihhKXtPbj13aW5kb3cuZ29vZ2xlJiZ3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZSYmd2luZG93Lmdvb2dsZS50cmFuc2xhdGUudnx8IiI7bXE9YS5fY2Vudnx8InByb2QiO25xPWEuVWd8fCIiO29xPWEuX2NsfHwiZW4iO0FuPWEuX2N1YztwcT1hLl9jZWY/a3EoYS5fY2VmKTpuZXcganE7cXE9YS5fY25hZDtycT1hLl9jZXN0fHxuZXcgRGF0ZTtzcT1hLl9jbmFsfHx7fTtCbj1hLl9jYW09PSJsaWIiPzE6MDt0cT0oYS5fY2FjfHwidGUiKSsoQm49PTE/Il9saWIiOiIiKTtmcT1mdW5jdGlvbigpe2Z1bmN0aW9uIGIoZSl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGV9fQp2YXIgYz1TdHJpbmcuZnJvbUNoYXJDb2RlKDEwNyksZD1iKFN0cmluZy5mcm9tQ2hhckNvZGUoMTE2KSk7Yz1iKGMpO2Q9W2QoKSxkKCldO2RbMV09YygpO3JldHVybiBhWyJfYyIrZC5qb2luKGMoKSldfHwiIn0oKTt1cT1hLl9wYWh8fCIiO3ZxPWEuX3Bhc3x8Imh0dHBzOi8vIjt3cT1hLl9wYml8fCIiO3hxPWEuX3BjaXx8IiI7eXE9YS5fcGxsYXx8IiI7enE9YS5fcGxpfHwiIjtBcT1hLl9wc3x8IiI7QnE9YS5fcHVofHwiIjtDcT0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9pbWFnZXMvY2xlYXJkb3QuZ2lmIjtEcT0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL2dvb2dsZWxvZ28vMXgvZ29vZ2xlbG9nb19jb2xvcl82OHgyOGRwLnBuZyI7RXE9Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9icmFuZGluZy9wcm9kdWN0LzF4L3RyYW5zbGF0ZV8yNGRwLnBuZyI7RnE9Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9icmFuZGluZy9nb29nbGVsb2dvLzF4L2dvb2dsZWxvZ29fY29sb3JfNDJ4MTZkcC5wbmciOwpHcT0iaHR0cHM6Ly90cmFuc2xhdGUuZ29vZ2xlLmNvbSI7S3EoKX07d2luZG93Lmdvb2dsZSYmd2luZG93Lmdvb2dsZS50cmFuc2xhdGUmJndpbmRvdy5nb29nbGUudHJhbnNsYXRlLl9jb25zdD9McSh3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZS5fY29uc3QpOkxxKHtfY2FjOiIiLF9jYW06IiIsX2NlZjoiIixfY2VzdDpuZXcgRGF0ZSxfY2VudjoiIixVZzoiIixfY2dhazoiIixfY2psYzoiIixfY2w6IiIsX2NsbDoiIixfY3VjOiIiLF9jbmFkOiExLF9jbmFsOnt9LENrOiIiLF9wYWg6IiIsX3BhczoiIixfcGJpOiIiLF9wY2k6IiIsX3BoZjoiIixfcGxpOiIiLF9wbGxhOiIiLF9wbWk6IiIsX3BzOiIiLF9wdGE6IiIsX3B1aDoiIn0pO3ZhciBNcT1mdW5jdGlvbihhLGIpe3RoaXMuZz1hO3RoaXMubz1ifSxCbT1mdW5jdGlvbihhLGIpe3JldHVybiBuZXcgVHlwZUVycm9yKCJxYWAiK2IrImAiK2EuZysiYCIrYS5vKyJgIit0eXBlb2YgYS5vKX07TXEucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5vO2lmKGE9PW51bGwpYT1udWxsO2Vsc2UgaWYodHlwZW9mIGEhPT0ic3RyaW5nIil0aHJvdyBCbSh0aGlzLCJzdHJpbmciKTtpZihhPT09bnVsbCl0aHJvdyBFcnJvcigicGFgIit0aGlzLmcpO3JldHVybiBhfTsKdmFyIEFtPWZ1bmN0aW9uKCl7dmFyIGE9YT09PXZvaWQgMD93aW5kb3c6YTthPWE9PT12b2lkIDA/d2luZG93OmE7YT1hPT09dm9pZCAwP3dpbmRvdzphO2E9YS5XSVpfZ2xvYmFsX2RhdGE7YT1uZXcgTXEoInhXdXVHYyIsYSYmInhXdXVHYyJpbiBhP2EueFd1dUdjOm51bGwpO3ZhciBiPVtdLGM9TnEoYSk7cmV0dXJuIGM9PT1udWxsP09xKGEsYik6Y30sTnE9ZnVuY3Rpb24oYSl7dmFyIGI9YS5vO2lmKGI9PW51bGwpcmV0dXJuIG51bGw7QXJyYXkuaXNBcnJheShiKXx8KHR5cGVvZiBiIT09InN0cmluZyI/Yj1bYl06KGI9Yi50cmltKCksYj1iPT0iIj9bXTpiLnNwbGl0KCIsIikubWFwKGZ1bmN0aW9uKGMpe3JldHVybiBjLnRyaW0oKX0pKSk7cmV0dXJuIE9xKGEsYil9LE9xPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5nKyJbIjtyZXR1cm4gQXJyYXkuZnJvbShiLGZ1bmN0aW9uKGQsZSl7cmV0dXJuIG5ldyBNcShjK2UrIl0iLGQpfSl9OwpNcS5wcm90b3R5cGUub2JqZWN0PWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMubztpZihiPT1udWxsKXtpZihhPT09dm9pZCAwKXRocm93IEVycm9yKCJwYWAiK3RoaXMuZyk7cmV0dXJuIGF9aWYodHlwZW9mIGI9PT0ib2JqZWN0IiYmYi5jb25zdHJ1Y3Rvcj09PU9iamVjdCl7YT17fTt2YXIgYz10aGlzLmcrIi4iLGQ7Zm9yKGQgaW4gYilhW2RdPW5ldyBNcShjK2QsYltkXSk7cmV0dXJuIGF9dGhyb3cgQm0odGhpcywib2JqZWN0Iik7fTt2YXIgUHE9ZnVuY3Rpb24oKXt2YXIgYTt0aGlzLmc9YT1hPT09dm9pZCAwP0RtKCk6YX07UHEucHJvdG90eXBlLmxvZz1mdW5jdGlvbihhKXtfLmFsKHRoaXMuZyxhKX07dmFyIFFxPW5ldyBQcTt2YXIgUnE9RW0oImluaXRpYWxpemVkIiksU3E9RW0oImluaXRpYXRlZCIpLFRxPUVtKCJyZXN0b3JlZCIpLFVxPUVtKCJwYWdlX2xvYWRfdG9faW5pdGlhbGl6ZWQiKSxWcT1FbSgiaW5pdGlhbGl6YXRpb25fdG9fdHJhbnNsYXRpb25fdHJpZ2dlcmVkIik7dmFyIFdxPWZ1bmN0aW9uKGEpe3ZhciBiPSJ4YiI7aWYoYS54YiYmYS5oYXNPd25Qcm9wZXJ0eShiKSlyZXR1cm4gYS54YjtiPW5ldyBhO3JldHVybiBhLnhiPWJ9Oy8qCgpNYXRoLnV1aWQuanMgKHYxLjQpCmh0dHA6Ly93d3cuYnJvb2ZhLmNvbQptYWlsdG86cm9iZXJ0QGJyb29mYS5jb20KQ29weXJpZ2h0IChjKSAyMDEwIFJvYmVydCBLaWVmZmVyCkR1YWwgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBhbmQgR1BMIGxpY2Vuc2VzLgoqLwp2YXIgWHE9IjAxMjM0NTY3ODlBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Ii5zcGxpdCgiIik7Zm9yKHZhciBZcSxacT1BcnJheSgzNiksJHE9MCxhcixicj0wO2JyPDM2O2JyKyspYnI9PTh8fGJyPT0xM3x8YnI9PTE4fHxicj09MjM/WnFbYnJdPSItIjpicj09MTQ/WnFbYnJdPSI0IjooJHE8PTImJigkcT0zMzU1NDQzMitNYXRoLnJhbmRvbSgpKjE2Nzc3MjE2fDApLGFyPSRxJjE1LCRxPj49NCxacVticl09WHFbYnI9PTE5P2FyJjN8ODphcl0pO1lxPVpxLmpvaW4oIiIpOwp2YXIgY3I9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZz1hPWE9PT12b2lkIDA/WXE6YTt0aGlzLkViPWI9PT12b2lkIDA/IiI6Yjt0aGlzLkZiPWM9PT12b2lkIDA/IiI6Y30sZ3I9ZnVuY3Rpb24oYSl7dmFyIGI9ZHIoYSw3KTtlcihhLGIpO2ZyKGIsNyl9LGhyPWZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5sYj09PXZvaWQgMD8wOmIubGI7dmFyIGQ9Yi5NZj09PXZvaWQgMD8wOmIuTWY7dmFyIGU9Yi5nZz09PXZvaWQgMD8wOmIuZ2c7dmFyIGY9Yi5MZj09PXZvaWQgMD8wOmIuTGY7Yj1kcihhLDgpO2VyKGEsYik7YT1uZXcgUm47Yz1fLmlrKGEsMSxjKTtkPV8uaWsoYywzLGQpO2U9Xy5payhkLDIsZSk7ZT1fLmlrKGUsNCxmKTtmPVVuKGIpO18uTChmLDYsZSk7TWF0aC5yYW5kb20oKT49LjAwNXx8KGI9Xy5MayhObig4KSxfLldqKGIpKSxRcS5sb2coYikpfSxkcj1mdW5jdGlvbihhLGIpe3ZhciBjPW5ldyBfLmxsO2M9Xy5UaihjLDUwLG9xKTt2YXIgZD1uZXcgVG47Yj1fLmtrKGQsMSxiKTsKYj1fLlRqKGIsMix0cSk7YT1fLlRqKGIsMyxhLmcpO3JldHVybiBfLkwoYywxMTIsYSl9LGZyPWZ1bmN0aW9uKGEsYil7YT1fLkxrKE5uKGIpLF8uV2ooYSkpO1FxLmxvZyhhKX0sZXI9ZnVuY3Rpb24oYSxiKXtiLk5hKGEuRWIpO2IubmEoYS5GYil9O3ZhciBpcj1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz0wO2M8YS5sZW5ndGg7KytjKWJbYVtjXV09ITA7cmV0dXJuIGJ9LGpyPWZ1bmN0aW9uKGEpe3RoaXMuaD1hP1thXTpbXTt0aGlzLmc9WzBdO3RoaXMuaj0hMX07anIucHJvdG90eXBlLnBhc3NlZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmp9O2pyLnByb3RvdHlwZS5yZWdpc3Rlcj1mdW5jdGlvbihhKXtpZih0aGlzLmopcmV0dXJuIGF8fGZ1bmN0aW9uKCl7fTt0aGlzLmcucHVzaCgwKTt2YXIgYj10aGlzLmcubGVuZ3RoLTE7cmV0dXJuKDAsXy55KShmdW5jdGlvbigpe3RoaXMuZ1tiXSsrO2EmJmEuYXBwbHkobnVsbCxhcmd1bWVudHMpO2tyKHRoaXMpfSx0aGlzKX07CmpyLnByb3RvdHlwZS5kZWxheT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5qP2E6KDAsXy55KShmdW5jdGlvbigpe2lmKHRoaXMuailhLmFwcGx5KG51bGwsYXJndW1lbnRzKTtlbHNle3ZhciBiPWFyZ3VtZW50czt0aGlzLmgucHVzaChmdW5jdGlvbigpe2EuYXBwbHkobnVsbCxiKX0pfX0sdGhpcyl9O2pyLnByb3RvdHlwZS5maW5pc2g9ZnVuY3Rpb24oKXt0aGlzLmdbMF09MTtrcih0aGlzKX07CnZhciBrcj1mdW5jdGlvbihhKXtmb3IodmFyIGI9MDtiPGEuZy5sZW5ndGg7KytiKWlmKGEuZ1tiXT09MClyZXR1cm47YS5qPSEwO2ZvcihiPTA7YjxhLmgubGVuZ3RoOysrYil7dmFyIGM9YS5oW2JdO2EuaFtiXT1udWxsO2MuY2FsbCgpfWEuaD1bXTthLmc9W119LGxyPWZ1bmN0aW9uKGEpe3RoaXMuaj1hO3RoaXMuaD10aGlzLmc9ITF9LG1yPWZ1bmN0aW9uKGEsYil7cmV0dXJuKDAsXy55KShmdW5jdGlvbigpe2ImJmIuYXBwbHkobnVsbCxhcmd1bWVudHMpO3RoaXMuaD90aGlzLmd8fCh0aGlzLmouY2FsbCgpLHRoaXMuZz0hMCk6dGhpcy5nPSEwfSxhKX07bHIucHJvdG90eXBlLmZpbmlzaD1mdW5jdGlvbigpe3RoaXMuaHx8KHRoaXMuaD0hMCx0aGlzLmcmJnRoaXMuai5jYWxsKCkpfTt2YXIgbnI9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZz1iO3RoaXMuQj1hO3RoaXMuQT1jfHwwO3RoaXMuaj10aGlzLmg9ITF9LG9yPWZ1bmN0aW9uKGEpe2EuaHx8YS5vKCl9Owpuci5wcm90b3R5cGUubz1mdW5jdGlvbigpeyh0aGlzLmg9KHRoaXMuaj0hIXRoaXMuQi5jYWxsKCkpfHwtLXRoaXMuQTw9MCk/KHRoaXMuZy5jYWxsKG51bGwsdGhpcy5qKSx0aGlzLmw9MCk6dGhpcy5sPXdpbmRvdy5zZXRUaW1lb3V0KCgwLF8ueSkodGhpcy5vLHRoaXMpLDMwKX07bnIucHJvdG90eXBlLmNhbmNlbD1mdW5jdGlvbigpe3RoaXMubCYmd2luZG93LmNsZWFyVGltZW91dCh0aGlzLmwpO3RoaXMuaD0hMDt0aGlzLmcuY2FsbChudWxsLHRoaXMuail9Owp2YXIgcHI9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gZnVuY3Rpb24oKXthLmRpc3BhdGNoRXZlbnQoYil9fSxxcj1mdW5jdGlvbihhKXthPV8uQWMoYSkudG9Mb3dlckNhc2UoKS5yZXBsYWNlKCJfIiwiLSIpO2lmKGE9PSJ6aC1jbiIpcmV0dXJuInpoLUNOIjtpZihhPT0iemgtdHciKXJldHVybiJ6aC1UVyI7dmFyIGI9YS5pbmRleE9mKCItIik7YT1iPj0wP2Euc3Vic3RyaW5nKDAsYik6YTtyZXR1cm4gYT09InpoIj8iemgtQ04iOmF9LHJyPWZ1bmN0aW9uKGEpe3ZhciBiPVtdLGM7Zm9yKGMgaW4gYSlpZihhW2NdIT09T2JqZWN0LnByb3RvdHlwZVtjXSl7dmFyIGQ9Xy5HYihjKTtpZihfLm9jKGFbY10pPT0iYXJyYXkiKWZvcih2YXIgZT0wO2U8YVtjXS5sZW5ndGg7KytlKWIucHVzaChkKyI9IitfLkdiKGFbY11bZV0pKTtlbHNlIGIucHVzaChkKyI9IitfLkdiKGFbY10pKX1yZXR1cm4gYi5qb2luKCImIil9LFFtPWZ1bmN0aW9uKGEsYil7Yj1ifHx7fTtiLm5jYT1hO2IuY2xpZW50PXRxOwpPbiYmKGIubG9nbGQ9InYiK09uKTt2YXIgYz1uZXcgSW1hZ2U7Yy5zcmM9Ii8vIitCcSsiL2dlbjIwND8iK3JyKGIpO2Mub25sb2FkPWZ1bmN0aW9uKCl7Yy5vbmxvYWQ9bnVsbH19LHRyPWZ1bmN0aW9uKGEsYil7aWYoKF8uU2N8fF8uUmMpJiZ3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUhPWRvY3VtZW50LmRvbWFpbil7c3I9c3I/c3IrMToxO3ZhciBjPSJmIitzcisiXyIrRGF0ZS5ub3coKS50b1N0cmluZygzNik7d2luZG93W2NdPWZ1bmN0aW9uKCl7d2luZG93W2NdPXZvaWQgMDthLnNyYz0iIyI7YiYmd2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXtiKCl9LDApfTthLnNyYz0iamF2YXNjcmlwdDp2b2lkKGRvY3VtZW50LndyaXRlKFwiPHNjcmlwdD5kb2N1bWVudC5kb21haW49JyIrZG9jdW1lbnQuZG9tYWluKyInO3BhcmVudFsnIitjKyInXSgpO1x4M2Mvc2NyaXB0PlwiKSkifWVsc2UgYiYmYigpfSxzcix1cj1mdW5jdGlvbigpe3ZhciBhPXt9O3RyeXtmb3IodmFyIGIgaW4gT2JqZWN0LnByb3RvdHlwZSl7dmFyIGM9Ck9iamVjdC5wcm90b3R5cGVbYl07ZGVsZXRlIE9iamVjdC5wcm90b3R5cGVbYl07YVtiXT1jfX1jYXRjaChkKXtyZXR1cm57fX1yZXR1cm4gYX0sdnI9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiIGluIGEpT2JqZWN0LnByb3RvdHlwZVtiXT1hW2JdfSx3cj1mdW5jdGlvbihhKXtmb3IodmFyIGIgaW4gYSlpZihhW2JdIT09T2JqZWN0LnByb3RvdHlwZVtiXSlyZXR1cm4hMTtyZXR1cm4hMH0seHI9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYSE9ImF1dG8iJiZhIT0iemgtQ04iJiZhPT1ifSx5cj1mdW5jdGlvbigpe3ZhciBhPXdpbmRvdy5sb2NhdGlvbi5oYXNoLm1hdGNoKC9nb29nbGVcLnRyYW5zbGF0ZVwuZWxlbWVudFwuc3A9KFteJl0rKS8pO3JldHVybiBhJiZhWzFdP2FbMV06bnVsbH07dmFyIFBtPW51bGwsenI9bnVsbCxBcj1mdW5jdGlvbigpe307QXIucHJvdG90eXBlLmF0dGFjaD1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkIGluIGMpY1tkXSE9PU9iamVjdC5wcm90b3R5cGVbZF0mJihiW2RdPXR5cGVvZiBjW2RdPT09ImZ1bmN0aW9uIj9jW2RdOl8uWmooUm0sYSxOdW1iZXIoY1tkXSkpKX07dmFyIENyPWZ1bmN0aW9uKCl7UG0mJkJyKCk7UG09W107enI9Xy54KHdpbmRvdywicGFnZWhpZGUiLGZ1bmN0aW9uKCl7QnIoKX0pfSxCcj1mdW5jdGlvbigpe3pyJiYoXy5WZCh6ciksenI9bnVsbCk7UG0mJlBtLmxlbmd0aCYmUW0oUG0uam9pbigiIikpO1BtPW51bGx9LERyPW5ldyBBcjt2YXIgRXI9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKEVyLF8uSik7dmFyIFRtPV8uS2koRXIpO3ZhciBTbTt2YXIgRnI9ZnVuY3Rpb24oYSl7dGhpcy51cmw9YTt0aGlzLnRpbWVvdXQ9LTE7dGhpcy5qPXRoaXMuaD0iY2FsbGJhY2siO3RoaXMuZz10aGlzLndiPW51bGx9LEpyPWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwP3t9OmI7YS5nPUdvKCk7dmFyIGM9bmV3IFpsKGEudXJsKSxkPW5ldyBNYXA7YS5qJiZkLnNldChhLmosYS5oKTtjLmcuZXh0ZW5kKFhvKGIpLGQpO0dyKGEpLnRoZW4oZnVuY3Rpb24oKXtIcihhLGMudG9TdHJpbmcoKSl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGEuZy5wcm9taXNlfSkudGhlbihmdW5jdGlvbigpe0lyKGEpfSxmdW5jdGlvbigpe0lyKGEpfSk7YS50aW1lb3V0PjAmJihhLmw9c2V0VGltZW91dChmdW5jdGlvbigpe2EuZy5yZWplY3QoRXJyb3IoInJhIikpfSxhLnRpbWVvdXQpKTtyZXR1cm4gYS5nLnByb21pc2V9LEhyPWZ1bmN0aW9uKGEsYil7dmFyIGM9bmV3IE1lc3NhZ2VDaGFubmVsO2Eud2IuY29udGVudFdpbmRvdy5wb3N0TWVzc2FnZSh7dXJsOmIsCmNhbGxiYWNrTmFtZTphLmh9LCIqIixbYy5wb3J0Ml0pO2MucG9ydDEub25tZXNzYWdlPWZ1bmN0aW9uKGQpe3ZhciBlPXt9O2EubCE9PXZvaWQgMCYmKGNsZWFyVGltZW91dChhLmwpLGEubD12b2lkIDApO2QuZGF0YT09PXZvaWQgMCYmYS5nLnJlamVjdChFcnJvcigic2EiKSk7dHlwZW9mIGQuZGF0YSE9PSJzdHJpbmciJiZhLmcucmVqZWN0KEVycm9yKCJ0YSIpKTt0cnl7ZT1KU09OLnBhcnNlKGQuZGF0YSl9Y2F0Y2goZil7YS5nLnJlamVjdChFcnJvcigidWFgIitmLm1lc3NhZ2UpKX1hLmcucmVzb2x2ZShlKX19LEdyPWZ1bmN0aW9uKGEpe3ZhciBiPUdvKCksYz1fLndkKGRvY3VtZW50LCJJRlJBTUUiKTtpZighYy5zYW5kYm94KXRocm93IEVycm9yKCJ2YSIpO2Muc2FuZGJveC52YWx1ZT0iYWxsb3ctc2NyaXB0cyI7Yy5zdHlsZS5kaXNwbGF5PSJub25lIjthLndiPWM7YT1WbSgpO2E9U2woW18ubWwoIjwhRE9DVFlQRSBodG1sPiIpLFlsKFFsKGEpKV0pO2Muc3JjZG9jPV8ua2ooYSk7CmE9RmwoImRhdGE6dGV4dC9odG1sO2NoYXJzZXQ9VVRGLTg7YmFzZTY0LCIrYnRvYShfLmtqKGEpLnRvU3RyaW5nKCkpKTtjLnNyYz1fLk5hKGEpLnRvU3RyaW5nKCk7Yy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixmdW5jdGlvbigpe3JldHVybiBiLnJlc29sdmUoYyl9LCExKTtjLmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIixmdW5jdGlvbihkKXtiLnJlamVjdChkIGluc3RhbmNlb2YgRXJyb3I/ZDpFcnJvcihTdHJpbmcoZCkpKX0sITEpO2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5hcHBlbmRDaGlsZChjKTtyZXR1cm4gYi5wcm9taXNlfSxJcj1mdW5jdGlvbihhKXthLndiIT09bnVsbCYmKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5yZW1vdmVDaGlsZChhLndiKSxhLndiPW51bGwpfTt2YXIgS3I9ZnVuY3Rpb24oYSxiKXtfLnUuY2FsbCh0aGlzKTt0aGlzLmc9bmV3IFpsKGEpO2lmKGIpZm9yKHZhciBjIGluIGIpYltjXSE9PU9iamVjdC5wcm90b3R5cGVbY10mJnRoaXMuZy5nLnNldChjLGJbY10pfTtfLkIoS3IsXy51KTtLci5wcm90b3R5cGUuVGE9ZnVuY3Rpb24oKXtyZXR1cm4hMH07S3IucHJvdG90eXBlLlNhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuVGEoKX07S3IucHJvdG90eXBlLnNlbmQ9ZnVuY3Rpb24oKXtyZXR1cm4gXy5ZaShudWxsKX07S3IucHJvdG90eXBlLmNhbmNlbD1mdW5jdGlvbigpe307dmFyIExyPWZ1bmN0aW9uKGEsYixjKXtLci5jYWxsKHRoaXMsYSxiKTthPXRoaXMuaD1uZXcgRnIodGhpcy5nKTthLmg9ImNhbGxiYWNrIjthLmo9Yz09PXZvaWQgMD8iY2FsbGJhY2siOmN9O18uQihMcixLcik7THIucHJvdG90eXBlLlRhPWZ1bmN0aW9uKCl7cmV0dXJuITB9OwpMci5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbihhKXtyZXR1cm4gSnIodGhpcy5oLGEpfTtMci5wcm90b3R5cGUuY2FuY2VsPWZ1bmN0aW9uKGEpe2EuY2FuY2VsKCl9O3ZhciBNcj1mdW5jdGlvbihhLGIpe0tyLmNhbGwodGhpcyxhLGIpO3RoaXMuaD17fTt0aGlzLmo9MH07Xy5CKE1yLEtyKTtNci5wcm90b3R5cGUuVGE9ZnVuY3Rpb24oKXtyZXR1cm4hMH07Ck1yLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz11cigpLGQ9Kyt0aGlzLmosZT17fSxmPXt9OyJxImluIGEmJihmLnE9YS5xLGRlbGV0ZSBhLnEpO2UuaGE9bmV3IF8uV2Y7dGhpcy5nLmguZW5kc1dpdGgoIi5jb3JwLmdvb2dsZS5jb20iKSYmKGUuaGEuQz0hMCk7dmFyIGc9bmV3IF8ub2UoZnVuY3Rpb24oaCxrKXtfLngoZS5oYSwiY29tcGxldGUiLGZ1bmN0aW9uKCl7aWYoIWUuUmUpe2lmKF8uZ2coZS5oYSkpe3ZhciBsPV8uaWcoZS5oYSk7TnIoYixkKTtyZXR1cm4gaChsKX1iLnhpKCk7bD1fLmlnKGUuaGEpO05yKGIsZCk7cmV0dXJuIGsobCl9fSk7Xy54KGUuaGEsInRpbWVvdXQiLGZ1bmN0aW9uKCl7aWYoIWUuUmUpcmV0dXJuIGIuemkoKSxOcihiLGQpLGsoKX0pfSk7ZS5oYS5zZW5kKHRoaXMuZy50b1N0cmluZygpKyImIitycihhKSwiUE9TVCIscnIoZikseyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQifSk7CnRoaXMuaFtkXT1lO3ZyKGMpO3JldHVybiBnfTtNci5wcm90b3R5cGUuY2FuY2VsPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuaFthXTtiJiYoYi5SZT0hMCxOcih0aGlzLGEpKX07dmFyIE5yPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5oW2JdO2MmJihjLmhhJiYoYy5oYS5kaXNwb3NlKCksYy5oYT1udWxsKSxkZWxldGUgYS5oW2JdKX07TXIucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtLci5wcm90b3R5cGUuTS5jYWxsKHRoaXMpO2Zvcih2YXIgYSBpbiB0aGlzLmgpdGhpcy5jYW5jZWwoYSl9O0RyLmF0dGFjaCgxNzE3MCxNci5wcm90b3R5cGUse3ppOjEseGk6Mn0pO3ZhciBPcj1mdW5jdGlvbihhLGIsYyl7S3IuY2FsbCh0aGlzLGEsYyk7dGhpcy5oPWIucHJveHlJc1N1cHBvcnRlZDt0aGlzLmo9ZnVuY3Rpb24oZCxlLGYpe3JldHVybiBfLllpKGIucHJveHlTZW5kKGQsZSxmKSl9O3RoaXMubD1iLnByb3h5Q2FuY2VsfTtfLkIoT3IsS3IpO09yLnByb3RvdHlwZS5UYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmgoKX07Ck9yLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuaih0aGlzLmcudG9TdHJpbmcoKSxhLGIpfTtPci5wcm90b3R5cGUuY2FuY2VsPWZ1bmN0aW9uKGEpe3RoaXMubChhKX07dmFyIFByPWZ1bmN0aW9uKGEsYil7Xy51LmNhbGwodGhpcyk7dGhpcy5oPWE7dGhpcy5nPWI/YjpudWxsfTtfLkIoUHIsXy51KTtQci5wcm90b3R5cGUuTT1mdW5jdGlvbigpe18udS5wcm90b3R5cGUuTS5jYWxsKHRoaXMpfTt2YXIgUnI9ZnVuY3Rpb24oYSxiLGMsZCl7Xy51LmNhbGwodGhpcyk7dmFyIGU7Yj9lPXtjbGllbnQ6Yn06ZT17YW5ubzozLGNsaWVudDp0cSxmb3JtYXQ6Imh0bWwiLHY6IjEuMCJ9O2MmJihlLnNwPWMpO2Uua2V5PWE7T24mJihlLmxvZ2xkPSJ2IitPbik7dGhpcy5nPW51bGw7dGhpcy5oPXtIZjozMDB9O2E9dGhpcy5BPW5ldyBQcihlLGQpO2I9dnEreXE7dGhpcy5vPWEuZz9uZXcgT3IoYixhLmcse2NsaWVudDp0cX0pOm5ldyBMcihiLHtjbGllbnQ6dHF9KTthPXRoaXMuQTtpZihhLmcpe2lmKCFhLmcpdGhyb3cgRXJyb3IoIndhIik7YT1be3ZhOm5ldyBPcih2cSt1cSsiL3RyYW5zbGF0ZV9hL3QiLGEuZyxhLmgpLGNlOjE5MDAsSWY6NDI5NDk2NzI5NSxHZjotMSxXZjowLEtkOiExfV19ZWxzZSBhPVt7dmE6bmV3IE1yKHZxK3VxKyIvdHJhbnNsYXRlX2EvdCIsYS5oKSxjZTozMDcyMCxJZjo0Mjk0OTY3Mjk1LEdmOi0xLFdmOjAsS2Q6ITF9XTt0aGlzLkI9bmV3IFFyKGEpO3RoaXMuaj0KITE7Zm9yKGI9MDtiPGEubGVuZ3RoOysrYil0aGlzLmo9dGhpcy5qfHxhW2JdLnZhLlRhKCk7dGhpcy5qfHx0aGlzLm5pKCl9O18uQihScixfLnUpO1JyLnByb3RvdHlwZS5pbml0aWFsaXplPWZ1bmN0aW9uKGEpe3RoaXMuQ3x8KHRoaXMuQz0hMCx0aGlzLkIuc3RhcnQoKDAsXy55KShmdW5jdGlvbihiKXtiJiYodGhpcy5nPWIsdGhpcy5oLnZhPWIudmEpO2EoKX0sdGhpcykpKX07UnIucHJvdG90eXBlLlRhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuan07UnIucHJvdG90eXBlLlNhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZyE9PW51bGwmJnRoaXMuZy52YSE9PW51bGwmJnRoaXMuZy52YS5TYSgpfTsKdmFyIFNyPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD17cTpjLnN1YnN0cmluZygwLGEuaC5IZiksc2w6ImF1dG8iLHRsOiJlbiJ9O3JldHVybiBuZXcgXy5vZShmdW5jdGlvbihlLGYpe2EuaC52YS5zZW5kKGQsYikudGhlbihmdW5jdGlvbihnKXt0cnl7dmFyIGg9SlNPTi5wYXJzZShnKTtlKGgmJmhbMV18fG51bGwpfWNhdGNoKGspe2UobnVsbCl9fSxmdW5jdGlvbihnKXtyZXR1cm4gZihnfHxudWxsKX0pfSl9OwpSci5wcm90b3R5cGUudHJhbnNsYXRlPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCl7dmFyIGs9dGhpcyxsPXtxOmIsc2w6Yyx0bDpkfTtsLnRjPWU7ZiYmKGwuY3R0PTEpO2cmJihsLmRvbT0xKTtoJiYobC5zcj0xKTtsW2hxKCldPWdxKGIuam9pbigiIikpO3JldHVybiBuZXcgXy5vZShmdW5jdGlvbihuLHEpe2suZy52YS5zZW5kKGwsYSkudGhlbihmdW5jdGlvbihwKXtpZihwKXtpZih0eXBlb2YgcCE9PSJvYmplY3QiKXRyeXtwPUpTT04ucGFyc2UocCl9Y2F0Y2goQSl7ay5taSgpO3EoKTtyZXR1cm59aWYoXy5vYyhwKSE9ImFycmF5Iil2YXIgcj1bW3AsMjAwXV07ZWxzZSBpZihwLmxlbmd0aD09MiYmXy5vYyhwWzBdKSE9ImFycmF5IiYmXy5vYyhwWzFdKSE9ImFycmF5IilyPVtbcFswXSwyMDAscFsxXV0sW3BbMV0sMjAwLHBbMV1dXTtlbHNle3I9W107Zm9yKHZhciB0PTA7dDxwLmxlbmd0aDsrK3Qpclt0XT1fLm9jKHBbdF0pIT0iYXJyYXkiP1twW3RdLDIwMF06W3BbdF1bMF0sCjIwMCxwW3RdWzFdXX1uKHIpfWVsc2UgcSgpfSl9KX07dmFyIFRyPWZ1bmN0aW9uKGEsYil7YiBpbnN0YW5jZW9mIF8ub2U/Yi50aGVuKGZ1bmN0aW9uKGMpe2EuZy52YS5jYW5jZWwoYyl9KTphLmcudmEuY2FuY2VsKGIpfTtSci5wcm90b3R5cGUubD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcuS2Q/dGhpcy5nLmNlLShuZXcgWmwodGhpcy5nLnZhLmcpKS50b1N0cmluZygpLmxlbmd0aDp0aGlzLmcuY2V9O1JyLnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7Xy51LnByb3RvdHlwZS5NLmNhbGwodGhpcyk7dGhpcy5nJiYodGhpcy5nLnZhLmRpc3Bvc2UoKSx0aGlzLmcudmE9bnVsbCk7dGhpcy5oLnZhPW51bGw7dGhpcy5vLmRpc3Bvc2UoKTt0aGlzLm89bnVsbH07RHIuYXR0YWNoKDczNjEsUnIucHJvdG90eXBlLHtuaTpmdW5jdGlvbigpe1FtKCJ0ZV9hdSIpfX0pO0RyLmF0dGFjaCg0NzUwNCxSci5wcm90b3R5cGUse21pOmZ1bmN0aW9uKCl7UW0oInRlX2FmYnIiKX19KTsKdmFyIFFyPWZ1bmN0aW9uKGEpe3RoaXMuaD1hfTtRci5wcm90b3R5cGUuc3RhcnQ9ZnVuY3Rpb24oYSl7dGhpcy5nPWE7dGhpcy5qPTA7VXIodGhpcyl9O3ZhciBVcj1mdW5jdGlvbihhKXtpZihhLmo+PWEuaC5sZW5ndGgpYS5nKG51bGwpO2Vsc2V7dmFyIGI9YS5oW2EuaisrXTtiLklpP29yKG5ldyBucigoMCxfLnkpKGIudmEuU2EsYi52YSksKDAsXy55KShmdW5jdGlvbihjKXtjP3RoaXMuZyhiKTpVcih0aGlzKX0sYSksYi5JaSkpOmIudmEuU2EoKT9hLmcoYik6VXIoYSl9fTt2YXIgVnI9aXIoIkEgQUJCUiBBQ1JPTllNIEIgQkFTRUZPTlQgQkRPIEJJRyBDSVRFIERGTiBFTSBGT05UIEkgSU5QVVQgTk9CUiBMQUJFTCBRIFJUIFMgU01BTEwgU1BBTiBTVFJJS0UgU1RST05HIFNVQiBTVVAgVEVYVEFSRUEgVFQgVSBWQVIiLnNwbGl0KCIgIikpLFdyPWlyKCJBUFBMRVQgQVJFQSBCQVNFIEZSQU1FIEZSQU1FU0VUIEhSIExJTksgTUVUQSBOT0ZSQU1FUyBOT1NDUklQVCBJTlBVVCBURVhUQVJFQSBUSVRMRSIuc3BsaXQoIiAiKSksWHI9aXIoIkJSIENPREUgSU1HIEtCRCBNQVAgT0JKRUNUIFBBUkFNIFJQIFNDUklQVCBTVFlMRSBXQlIgc3ZnIi5zcGxpdCgiICIpKSxZcj1pcihbInN1Ym1pdCIsImJ1dHRvbiJdKTtYbS5wcm90b3R5cGUubmV4dD1mdW5jdGlvbigpe3JldHVybiBacn07dmFyIFpyPXtkb25lOiEwLHZhbHVlOnZvaWQgMH07WG0ucHJvdG90eXBlLm89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc307dmFyIGFzPWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy5oPSEhYjt0aGlzLm5vZGU9bnVsbDt0aGlzLmc9MDt0aGlzLmo9ITE7dGhpcy5sPSFjO2EmJiRyKHRoaXMsYSxkKTt0aGlzLmRlcHRoPWUhPXZvaWQgMD9lOnRoaXMuZ3x8MDt0aGlzLmgmJih0aGlzLmRlcHRoKj0tMSl9O18uRyhhcyxYbSk7dmFyICRyPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGEubm9kZT1iKWEuZz10eXBlb2YgYz09PSJudW1iZXIiP2M6YS5ub2RlLm5vZGVUeXBlIT0xPzA6YS5oPy0xOjE7dHlwZW9mIGQ9PT0ibnVtYmVyIiYmKGEuZGVwdGg9ZCl9LGJzPWZ1bmN0aW9uKGEpe3ZhciBiPWEuaD8tMToxO2EuZz09YiYmKGEuZz1iKi0xLGEuZGVwdGgrPWEuZyooYS5oPy0xOjEpKX07CmFzLnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKCl7aWYodGhpcy5qKXtpZighdGhpcy5ub2RlfHx0aGlzLmwmJnRoaXMuZGVwdGg9PTApcmV0dXJuIFpyO3ZhciBhPXRoaXMubm9kZTt2YXIgYj10aGlzLmg/LTE6MTtpZih0aGlzLmc9PWIpe3ZhciBjPXRoaXMuaD9hLmxhc3RDaGlsZDphLmZpcnN0Q2hpbGQ7Yz8kcih0aGlzLGMpOiRyKHRoaXMsYSxiKi0xKX1lbHNlKGM9dGhpcy5oP2EucHJldmlvdXNTaWJsaW5nOmEubmV4dFNpYmxpbmcpPyRyKHRoaXMsYyk6JHIodGhpcyxhLnBhcmVudE5vZGUsYiotMSk7dGhpcy5kZXB0aCs9dGhpcy5nKih0aGlzLmg/LTE6MSl9ZWxzZSB0aGlzLmo9ITA7cmV0dXJuKGE9dGhpcy5ub2RlKT97dmFsdWU6YSxkb25lOiExfTpacn07YXMucHJvdG90eXBlLmVxdWFscz1mdW5jdGlvbihhKXtyZXR1cm4gYS5ub2RlPT10aGlzLm5vZGUmJighdGhpcy5ub2RlfHxhLmc9PXRoaXMuZyl9Owphcy5wcm90b3R5cGUuc3BsaWNlPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMubm9kZSxjPXRoaXMuaD8xOi0xO3RoaXMuZz09YyYmKHRoaXMuZz1jKi0xLHRoaXMuZGVwdGgrPXRoaXMuZyoodGhpcy5oPy0xOjEpKTt0aGlzLmg9IXRoaXMuaDthcy5wcm90b3R5cGUubmV4dC5jYWxsKHRoaXMpO3RoaXMuaD0hdGhpcy5oO2M9Xy5xYShhcmd1bWVudHNbMF0pP2FyZ3VtZW50c1swXTphcmd1bWVudHM7Zm9yKHZhciBkPWMubGVuZ3RoLTE7ZD49MDtkLS0peG8oY1tkXSxiKTtfLkFkKGIpfTt2YXIgZHM9ZnVuY3Rpb24oYSxiKXt0aGlzLmw9ITE7dGhpcy5qPV8uU2M/W106bnVsbDt0aGlzLmg9W107dGhpcy5kb25lPSExO2Zvcih0aGlzLmc9bmV3IGFzKGEsITEsYixhLm5vZGVUeXBlPT09Mz8wOjEsMSk7YT1hLnBhcmVudE5vZGU7KWNzKHRoaXMsYSwhMCk7dGhpcy5oLnB1c2goITEpO3RoaXMuaC5yZXZlcnNlKCk7Zm9yKGE9MTthPHRoaXMuaC5sZW5ndGg7KythKXRoaXMuaFthXT09bnVsbCYmKHRoaXMuaFthXT10aGlzLmhbYS0xXSl9LGNzPWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/ITE6Yzt2YXIgZD0oYi5zdHlsZSYmYi5zdHlsZS53aGl0ZVNwYWNlfHwiIikuc3Vic3RyaW5nKDAsMyk7ZD09PSJwcmUifHwhZCYmYi50YWdOYW1lPT09IlBSRSI/YS5oLnB1c2goITApOmQmJmQhPT0icHJlIj9hLmgucHVzaCghMSk6Yz9hLmgucHVzaChudWxsKTphLmgucHVzaChhLmhbYS5oLmxlbmd0aC0xXSl9LGVzPWZ1bmN0aW9uKGEpe3JldHVybiEhYS5oW2EuaC5sZW5ndGgtCjFdfTtkcy5wcm90b3R5cGUubm9kZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcubm9kZX07ZHMucHJvdG90eXBlLmRlcHRoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy5kZXB0aH07CmRzLnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKCl7dHJ5e3RoaXMuaiYmdGhpcy5qLmxlbmd0aD4wJiZ0aGlzLmcuZz09PS0xJiZ0aGlzLmoubGVuZ3RoLS07dGhpcy5nLmc9PT0tMSYmdGhpcy5oLmxlbmd0aC0tO2lmKHRoaXMuaiYmdGhpcy5qLmxlbmd0aD4wJiZ0aGlzLmcuZyE9PTEmJiF0aGlzLmcubm9kZS5uZXh0U2libGluZykkcih0aGlzLmcsdGhpcy5qW3RoaXMuai5sZW5ndGgtMV0sLTEsdGhpcy5nLmRlcHRoLTEpO2Vsc2V7dmFyIGE9dGhpcy5nLm5leHQoKTt0aGlzLmw9ITA7aWYoYS5kb25lKXt0aGlzLmRvbmU9ITA7cmV0dXJufXRoaXMuaiYmdGhpcy5nLmc9PT0xJiZ0aGlzLmoucHVzaCh0aGlzLmcubm9kZSl9dGhpcy5nLmc9PT0xJiZ0aGlzLmwmJmNzKHRoaXMsdGhpcy5nLm5vZGUpfWNhdGNoKGIpe3RoaXMud2koYiksdGhpcy5kb25lPSEwfX07RHIuYXR0YWNoKDUyNzU0LGRzLnByb3RvdHlwZSx7d2k6MX0pO3ZhciBRPXt9LGZzPWZ1bmN0aW9uKCl7UVswXT0iT3ZlcnNldHQiO1FbMV09IkF2YnJ5dCI7UVsyXT0iTHVrayI7UVszXT1mdW5jdGlvbihhKXtyZXR1cm4iR29vZ2xlIGhhciBvdmVyc2F0dCBkZW5uZSBzaWRlbiB0aWwgIithKyIgYXV0b21hdGlzayJ9O1FbNF09ZnVuY3Rpb24oYSl7cmV0dXJuIk92ZXJzYXR0IHRpbDogIithfTtRWzVdPSJGZWlsOiBUamVuZXJlbiBrdW5uZSBpa2tlIGZ1bGxmXHUwMGY4cmUgZm9yZXNwXHUwMGY4cnNlbGVuLiBQclx1MDBmOHYgcFx1MDBlNSBueXR0IHNlbmVyZS4iO1FbNl09IkxlcyBtZXIiO1FbN109ZnVuY3Rpb24oYSl7cmV0dXJuIkRyZXZldCBhdiAiK2F9O1FbOF09Ik92ZXJzZXR0ZXIiO1FbOV09Ik92ZXJzZXR0ZWxzZSBwXHUwMGU1Z1x1MDBlNXIiO1FbMTBdPWZ1bmN0aW9uKGEpe3JldHVybiJWaWwgZHUgb3ZlcnNldHRlIGRlbm5lIHNpZGVuIHRpbCAiK2ErIiBtZWQgR29vZ2xlIE92ZXJzZXR0ZXI/In07UVsxMV09ZnVuY3Rpb24oYSl7cmV0dXJuIlZpcyBkZW5uZSBzaWRlbiBwXHUwMGU1OiAiKwphfTtRWzEyXT0iVmlzIG9yaWdpbmFsIjtRWzEzXT0iSW5uaG9sZGV0IHBcdTAwZTUgZGVubmUgbG9rYWxlIGZpbGVuIHNlbmRlcyB0aWwgR29vZ2xlIHZpYSBlbiBzaWtrZXIgdGlsa29ibGluZyBmb3IgXHUwMGU1IGJsaSBvdmVyc2F0dC4iO1FbMTRdPSJJbm5ob2xkZXQgcFx1MDBlNSBkZW5uZSBzaWtyZSBzaWRlbiBzZW5kZXMgdGlsIEdvb2dsZSB2aWEgZW4gc2lra2VyIHRpbGtvYmxpbmcgZm9yIFx1MDBlNSBibGkgb3ZlcnNhdHQuIjtRWzE1XT0iSW5uaG9sZGV0IHBcdTAwZTUgZGVubmUgaW50cmFuZXR0c2lkZW4gc2VuZGVzIHRpbCBHb29nbGUgdmlhIGVuIHNpa2tlciB0aWxrb2JsaW5nIGZvciBcdTAwZTUgYmxpIG92ZXJzYXR0LiI7UVsxNl09IlZlbGcgc3ByXHUwMGU1ayI7UVsxN109ZnVuY3Rpb24oYSl7cmV0dXJuIlNsXHUwMGU1IGF2IG92ZXJzZXR0ZWxzZSB0aWwgIithfTtRWzE4XT1mdW5jdGlvbihhKXtyZXR1cm4iRGVha3RpdmVyIGZvcjogIithfTtRWzE5XT0iU2tqdWwgYWxsdGlkIjsKUVsyMF09Ik9yaWdpbmFsdGVrc3Q6IjtRWzIxXT0iQmlkcmEgbWVkIGVuIGJlZHJlIG92ZXJzZXR0ZWxzZSI7UVsyMl09IkJpZHJhIjtRWzIzXT0iT3ZlcnNldHQgYWx0IjtRWzI0XT0iR2plbm9wcHJldHQgYWx0IjtRWzI1XT0iQXZicnl0IGFsdCI7UVsyNl09Ik92ZXJzZXR0IGRlbGVuZSB0aWwgbWl0dCBzcHJcdTAwZTVrIjtRWzI3XT1mdW5jdGlvbihhKXtyZXR1cm4iT3ZlcnNldHQgYWx0IHRpbCAiK2F9O1FbMjhdPSJWaXMgb3BwcmlubmVsaWdlIHNwclx1MDBlNWsiO1FbMjldPSJBbHRlcm5hdGl2ZXIiO1FbMzBdPSJTbFx1MDBlNSBhdiBvdmVyc2V0dGVsc2UgZm9yIGRldHRlIG5ldHRzdGVkZXQiO1FbMzFdPW51bGw7UVszMl09IlZpcyBhbHRlcm5hdGl2ZSBvdmVyc2V0dGVsc2VyIjtRWzMzXT0iS2xpa2sgcFx1MDBlNSBvcmQgb3ZlbmZvciBmb3IgXHUwMGU1IGZcdTAwZTUgYWx0ZXJuYXRpdmUgb3ZlcnNldHRlbHNlciI7UVszNF09IkJydWsiO1FbMzVdPSJEcmEgbWVkIFNoaWZ0LXRhc3QgZm9yIFx1MDBlNSBlbmRyZSByZWtrZWZcdTAwZjhsZ2UiOwpRWzM2XT0iS2xpa2sgZm9yIFx1MDBlNSBzZSBhbHRlcm5hdGl2ZSBvdmVyc2V0dGVsc2VyIjtRWzM3XT0iSG9sZCBuZWRlIFNoaWZ0LXRhc3Rlbiwga2xpa2ssIG9nIGRyYSBkZXJldHRlciBvcmRlbmUgb3ZlbmZvciBmb3IgXHUwMGU1IGVuZHJlIHBcdTAwZTUgcmVra2VmXHUwMGY4bGdlbi4iO1FbMzhdPSJUYWtrIGZvciBhdCBkdSBiaWRyYXIgbWVkIG92ZXJzZXR0ZWxzZXNmb3JzbGFnZXQgZGl0dCB0aWwgR29vZ2xlIE92ZXJzZXR0ZXIuIjtRWzM5XT0iQWRtaW5pc3RyZXIgb3ZlcnNldHRpbmcgZm9yIGRldHRlIG5ldHRzdGVkZXQiO1FbNDBdPSJLbGlrayBwXHUwMGU1IGV0IG9yZCBmb3IgXHUwMGU1IHNlIGFsdGVybmF0aXZlIG92ZXJzZXR0ZWxzZXIsIGVsbGVyIGRvYmJlbHRrbGlrayBmb3IgXHUwMGU1IHJlZGlnZXJlIGRpcmVrdGUiO1FbNDFdPSJPcHByaW5uZWxpZyB0ZWtzdCI7UVs0Ml09Ik92ZXJzZXR0ZXIiO1FbNDNdPSJPdmVyc2V0dCI7UVs0NF09IlJldHRpbmdlbiBkaW4gZXIgc2VuZHQgaW5uLiI7ClFbNDVdPSJGZWlsOiBTcHJcdTAwZTVrZXQgdGlsIG5ldHRzaWRlbiBzdFx1MDBmOHR0ZXMgaWtrZS4iO1FbNDZdPSJNb2R1bCBmb3Igc3ByXHUwMGU1a292ZXJzZXR0aW5nIjtRWzQ3XT0iR2kgZW4gdnVyZGVyaW5nIGF2IGRlbm5lIG92ZXJzZXR0ZWxzZW4iO1FbNDhdPSJUaWxiYWtlbWVsZGluZ2VuIGRpbiBicnVrZXMgZm9yIFx1MDBlNSBnalx1MDBmOHJlIEdvb2dsZSBPdmVyc2V0dGVyIGJlZHJlIjtRWzQ5XT0iR29kIG92ZXJzZXR0ZWxzZSI7UVs1MF09IkRcdTAwZTVybGlnIG92ZXJzZXR0ZWxzZSI7UVs1MV09Ik92ZXJzZXR0ZWxzZSJ9O3ZhciBncz1mdW5jdGlvbigpe3JldHVybiJbbXNnX3VuZGVmaW5lZF0ifSxSPXt9OwooZnVuY3Rpb24oKXt2YXIgYT1mdW5jdGlvbihiKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gYn19O1I9e0llOmEoMCksbWc6YSgxKSxBZTphKDIpLFdqOmEoMyksRGc6YSg0KSxDZTphKDUpLHdnOmEoNDUpLHhnOmEoNiksemc6YSg3KSx3ZDphKDgpLEVnOmEoOSksc2s6YSgxMCksSmc6YSgxMSksQWc6YSgxMiksbGs6YSgxMyksQ2c6YSgxNCksa2s6YSgxNSksQmc6YSgxNiksdms6YSgxNyksRmc6YSgxOCksamo6YSgxOSksVWo6YSgyMCksSWo6YSgyMSksbWs6YSgyMiksZWs6YSgyMyksZGs6YSgyNCksYms6YSgyNSksdGs6YSgyNikscms6YSgyNyksY2s6YSgyOCkseWc6YSgyOSksR2c6YSgzMCksaWo6YSgzMiksZ2o6YSgzMyksd2s6YSgzNCkseGo6YSgzNSkscGo6YSgzNiksd2o6YSgzNyksbms6YSgzOCksUWo6YSgzOSksaGo6YSg0MCksVmo6YSg0MSksRWU6YSg0NiksWGo6YSg0NyksSGo6YSg0OCksR2o6YSg0OSksRmo6YSg1MCksdWs6YSg1MSl9fSkoKTtSLkNsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMF19OwpSLlprPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMV19O1IuYmw9ZnVuY3Rpb24oKXtyZXR1cm4gUVsyXX07Ui5ubD1mdW5jdGlvbigpe3JldHVybiBRWzNdfTtSLkRsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbNF19O1IuZmw9ZnVuY3Rpb24oKXtyZXR1cm4gUVs1XX07Ui5obD1mdW5jdGlvbigpe3JldHVybiBRWzQ1XX07Ui5pbD1mdW5jdGlvbigpe3JldHVybiBRWzZdfTtSLm9sPWZ1bmN0aW9uKCl7cmV0dXJuIFFbN119O1IuR2w9ZnVuY3Rpb24oKXtyZXR1cm4gUVs4XX07Ui5JbD1mdW5jdGlvbigpe3JldHVybiBRWzldfTtSLkZsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTBdfTtSLk9sPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTFdfTtSLnBsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTJdfTtSLnlsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTNdfTtSLnpsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTRdfTtSLnhsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTVdfTtSLnFsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTZdfTsKUi5MbD1mdW5jdGlvbigpe3JldHVybiBRWzE3XX07Ui5LbD1mdW5jdGlvbigpe3JldHVybiBRWzE4XX07Ui5Zaz1mdW5jdGlvbigpe3JldHVybiBRWzE5XX07Ui5sbD1mdW5jdGlvbigpe3JldHVybiBRWzIwXX07Ui5zaD1mdW5jdGlvbigpe3JldHVybiBRWzQxXX07Ui5lbD1mdW5jdGlvbigpe3JldHVybiBRWzIxXX07Ui5BbD1mdW5jdGlvbigpe3JldHVybiBRWzIyXX07Ui53bD1mdW5jdGlvbigpe3JldHVybiBRWzIzXX07Ui52bD1mdW5jdGlvbigpe3JldHVybiBRWzI0XX07Ui5ybD1mdW5jdGlvbigpe3JldHVybiBRWzI1XX07Ui5IbD1mdW5jdGlvbigpe3JldHVybiBRWzI2XX07Ui5FbD1mdW5jdGlvbigpe3JldHVybiBRWzI3XX07Ui51bD1mdW5jdGlvbigpe3JldHVybiBRWzI4XX07Ui5rbD1mdW5jdGlvbigpe3JldHVybiBRWzI5XX07Ui5NbD1mdW5jdGlvbigpe3JldHVybiBRWzMwXX07Ui5qbD1mdW5jdGlvbigpe3JldHVybiBRWzM5XX07Ui5Yaz1mdW5jdGlvbigpe3JldHVybiBRWzMyXX07ClIuVms9ZnVuY3Rpb24oKXtyZXR1cm4gUVszM119O1IuV2s9ZnVuY3Rpb24oKXtyZXR1cm4gUVs0MF19O1IuTmw9ZnVuY3Rpb24oKXtyZXR1cm4gUVszNF19O1IuZGw9ZnVuY3Rpb24oKXtyZXR1cm4gUVszNV19O1IuYWw9ZnVuY3Rpb24oKXtyZXR1cm4gUVszNl19O1IuY2w9ZnVuY3Rpb24oKXtyZXR1cm4gUVszN119O1IuQmw9ZnVuY3Rpb24oKXtyZXR1cm4gUVszOF19O1IuZ2w9ZnVuY3Rpb24oKXtyZXR1cm4gUVs0Nl19O1IudGg9ZnVuY3Rpb24oKXtyZXR1cm4gUVs0N119O1Iucmg9ZnVuY3Rpb24oKXtyZXR1cm4gUVs0OF19O1IucWg9ZnVuY3Rpb24oKXtyZXR1cm4gUVs0OV19O1IucGg9ZnVuY3Rpb24oKXtyZXR1cm4gUVs1MF19O1IuSmw9ZnVuY3Rpb24oKXtyZXR1cm4gUVs1MV19O3ZhciBocz1SO3ZhciBpcz1ocy5zaCxqcz1ocy50aCxrcz1ocy5yaCxscz1ocy5xaCxtcz1ocy5waDt2YXIgcHM9ZnVuY3Rpb24oYSl7dmFyIGI9YS5kaXI7YT1hLmNqO3JldHVybiBWbihXbihWbihXbihWbihfLnlsKCksJzxkaXYgaWQ9Imdvb2ctZ3QtdHQiIGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItTDdsYmtiIikrJyBza2lwdHJhbnNsYXRlIiBzdHlsZT0iZGlzcGxheTogbm9uZTsgYm9yZGVyLXJhZGl1czogMTJweDsgbWFyZ2luOiAwIDAgMCAtMjNweDsgcGFkZGluZzogMDsgZm9udC1mYW1pbHk6IFwnR29vZ2xlIFNhbnNcJywgQXJpYWwsIHNhbnMtc2VyaWY7IiBkYXRhLWlkPSIiPjxkaXYgaWQ9Imdvb2ctZ3QtdnQiIGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItaHZoZ05kIikrJyI+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1VZDdmciIpKyciPjxpbWcgc3JjPSJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS9wcm9kdWN0bG9nb3MvdHJhbnNsYXRlL3YxNC8yNHB4LnN2ZyIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBhbHQ9IiIvPjxkaXYgY2xhc3M9IicrCihiPT09InJ0bCI/IiAiK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLUl1aXpXYy1TSXNyVGQiKSsiICI6IiAiK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLUl1aXpXYy1pM2pNOGMiKSsiICIpKyciIGRpcj0iJytQKGIpKyciPicrS3AoaXMoKSkrJzwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtazc3SWlmIikrJyI+PGRpdiBpZD0iZ29vZy1ndC1vcmlnaW5hbC10ZXh0IiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLW5WTWZjZC1mbWNtUyIpKyIgIitQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1heEFWMSIpKyciPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkIikrIiAiK1AoYikrJyI+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIikrIiAiK1AoYikrJyIgZGlyPSInK1AoYikrJyI+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1VVHVqQ2IiKSsKJyI+JytLcChqcygpKSsnPC9kaXY+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1lTzltS2UiKSsnIj4nK0twKGtzKCkpKyc8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLXhnb3Y1IikrIiAiK1AoYikrJyI+JyksYj09PSJydGwiP1duKFduKF8ueWwoKSxucygpKSxvcygpKTpXbihXbihfLnlsKCksb3MoKSksbnMoKSkpLCI8L2Rpdj48L2Rpdj4iKSwoMCxfLnRsKSgnPGRpdiBpZD0iZ29vZy1ndC12b3RpbmdIaWRkZW5QYW5lIiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1hWFlUY2UiKSsnIj48Zm9ybSBpZD0iZ29vZy1ndC12b3RpbmdGb3JtIiBhY3Rpb249IicrUChVcChhKSkrJyIgbWV0aG9kPSJwb3N0IiB0YXJnZXQ9InZvdGluZ0ZyYW1lIiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1hWFlUY2UiKSsnIj48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ic2wiIGlkPSJnb29nLWd0LXZvdGluZ0lucHV0U3JjTGFuZyIvPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ0bCIgaWQ9Imdvb2ctZ3Qtdm90aW5nSW5wdXRUcmdMYW5nIi8+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InF1ZXJ5IiBpZD0iZ29vZy1ndC12b3RpbmdJbnB1dFNyY1RleHQiLz48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZ3RyYW5zIiBpZD0iZ29vZy1ndC12b3RpbmdJbnB1dFRyZ1RleHQiLz48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0idm90ZSIgaWQ9Imdvb2ctZ3Qtdm90aW5nSW5wdXRWb3RlIi8+PC9mb3JtPjxpZnJhbWUgbmFtZT0idm90aW5nRnJhbWUiIGZyYW1lQm9yZGVyPTA+PC9pZnJhbWU+PC9kaXY+JykpLAoiPC9kaXY+PC9kaXY+Iil9LG9zPWZ1bmN0aW9uKCl7dmFyIGE9Xy55bCgpLGI9bHMoKTtiPVZuKGEsJzxidXR0b24gaWQ9Imdvb2ctZ3QtdGh1bWJVcEJ1dHRvbiIgdHlwZT0iYnV0dG9uIiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1iZ202c2YiKSsnIiB0aXRsZT0iJytQKGIpKyciIGFyaWEtbGFiZWw9IicrUChiKSsnIiBhcmlhLXByZXNzZWQ9ImZhbHNlIj48c3BhbiBpZD0iZ29vZy1ndC10aHVtYlVwSWNvbiI+Jyk7dmFyIGM9KDAsXy50bCkoJzxzdmcgd2lkdGg9IicrUCgyNCkrJyIgaGVpZ2h0PSInK1AoMjQpKyciIHZpZXdCb3g9IicrUCgiMCAwIDI0IDI0IikrJyIgZm9jdXNhYmxlPSJmYWxzZSIgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtVEhJNlZiIikrIiAiK1AoIk5NbTVNIikrJyInK3pwKCkrJz48cGF0aCBkPSJNMjEgN2gtNi4zMWwuOTUtNC41Ny4wMy0uMzJjMC0uNDEtLjE3LS43OS0uNDQtMS4wNkwxNC4xNyAwUzcuMDggNi44NSA3IDdIMnYxM2gxNmMuODMgMCAxLjU0LS41IDEuODQtMS4yMmwzLjAyLTcuMDVjLjA5LS4yMy4xNC0uNDcuMTQtLjczVjljMC0xLjEtLjktMi0yLTJ6TTcgMThINFY5aDN2OXptMTQtN2wtMyA3SDlWOGw0LjM0LTQuMzRMMTIgOWg5djJ6Ii8+PC9zdmc+Jyk7CmI9Vm4oV24oYixjKSwnPC9zcGFuPjxzcGFuIGlkPSJnb29nLWd0LXRodW1iVXBJY29uRmlsbGVkIj4nKTtjPSgwLF8udGwpKCc8c3ZnIHdpZHRoPSInK1AoMjQpKyciIGhlaWdodD0iJytQKDI0KSsnIiB2aWV3Qm94PSInK1AoIjAgMCAyNCAyNCIpKyciIGZvY3VzYWJsZT0iZmFsc2UiIGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLVRISTZWYiIpKyIgIitQKCJOTW01TSIpKyciJyt6cCgpKyc+PHBhdGggZD0iTTIxIDdoLTYuMzFsLjk1LTQuNTcuMDMtLjMyYzAtLjQxLS4xNy0uNzktLjQ0LTEuMDZMMTQuMTcgMFM3LjA4IDYuODUgNyA3djEzaDExYy44MyAwIDEuNTQtLjUgMS44NC0xLjIybDMuMDItNy4wNWMuMDktLjIzLjE0LS40Ny4xNC0uNzNWOWMwLTEuMS0uOS0yLTItMnpNNSA3SDF2MTNoNFY3eiIvPjwvc3ZnPicpO1ZuKFduKGIsYyksIjwvc3Bhbj48L2J1dHRvbj4iKTtyZXR1cm4gYX0sbnM9ZnVuY3Rpb24oKXt2YXIgYT1fLnlsKCksYj1tcygpO2I9Vm4oYSwnPGJ1dHRvbiBpZD0iZ29vZy1ndC10aHVtYkRvd25CdXR0b24iIHR5cGU9ImJ1dHRvbiIgY2xhc3M9IicrClAoIlZJcGdKZC15QVdORWItaHZoZ05kLWJnbTZzZiIpKyciIHRpdGxlPSInK1AoYikrJyIgYXJpYS1sYWJlbD0iJytQKGIpKyciIGFyaWEtcHJlc3NlZD0iZmFsc2UiPjxzcGFuIGlkPSJnb29nLWd0LXRodW1iRG93bkljb24iPicpO3ZhciBjPSgwLF8udGwpKCc8c3ZnIHdpZHRoPSInK1AoMjQpKyciIGhlaWdodD0iJytQKDI0KSsnIiB2aWV3Qm94PSInK1AoIjAgMCAyNCAyNCIpKyciIGZvY3VzYWJsZT0iZmFsc2UiIGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLVRISTZWYiIpKyIgIitQKCJOTW01TSIpKyciJyt6cCgpKyc+PHBhdGggZD0iTTMgMTdoNi4zMWwtLjk1IDQuNTctLjAzLjMyYzAgLjQxLjE3Ljc5LjQ0IDEuMDZMOS44MyAyNHM3LjA5LTYuODUgNy4xNy03aDVWNEg2Yy0uODMgMC0xLjU0LjUtMS44NCAxLjIybC0zLjAyIDcuMDVjLS4wOS4yMy0uMTQuNDctLjE0LjczdjJjMCAxLjEuOSAyIDIgMnpNMTcgNmgzdjloLTNWNnpNMyAxM2wzLTdoOXYxMGwtNC4zNCA0LjM0TDEyIDE1SDN2LTJ6Ii8+PC9zdmc+Jyk7CmI9Vm4oV24oYixjKSwnPC9zcGFuPjxzcGFuIGlkPSJnb29nLWd0LXRodW1iRG93bkljb25GaWxsZWQiPicpO2M9KDAsXy50bCkoJzxzdmcgd2lkdGg9IicrUCgyNCkrJyIgaGVpZ2h0PSInK1AoMjQpKyciIHZpZXdCb3g9IicrUCgiMCAwIDI0IDI0IikrJyIgZm9jdXNhYmxlPSJmYWxzZSIgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtVEhJNlZiIikrIiAiK1AoIk5NbTVNIikrJyInK3pwKCkrJz48cGF0aCBkPSJNMyAxN2g2LjMxbC0uOTUgNC41Ny0uMDMuMzJjMCAuNDEuMTcuNzkuNDQgMS4wNkw5LjgzIDI0czcuMDktNi44NSA3LjE3LTdWNEg2Yy0uODMgMC0xLjU0LjUtMS44NCAxLjIybC0zLjAyIDcuMDVjLS4wOS4yMy0uMTQuNDctLjE0LjczdjJjMCAxLjEuOSAyIDIgMnptMTYgMGg0VjRoLTR2MTN6Ii8+PC9zdmc+Jyk7Vm4oV24oYixjKSwiPC9zcGFuPjwvYnV0dG9uPiIpO3JldHVybiBhfTt2YXIgcXM9ZnVuY3Rpb24oYSxiLGMpe2lmKHR5cGVvZiBhPT09ImZ1bmN0aW9uIiljJiYoYT0oMCxfLnkpKGEsYykpO2Vsc2UgaWYoYSYmdHlwZW9mIGEuaGFuZGxlRXZlbnQ9PSJmdW5jdGlvbiIpYT0oMCxfLnkpKGEuaGFuZGxlRXZlbnQsYSk7ZWxzZSB0aHJvdyBFcnJvcigieGEiKTtyZXR1cm4gTnVtYmVyKGIpPjIxNDc0ODM2NDc/LTE6Xy52LnNldFRpbWVvdXQoYSxifHwwKX07dmFyIHJzPWZ1bmN0aW9uKCl7aWYoXy5aYyl7dmFyIGE9L1dpbmRvd3MgTlQgKFswLTkuXSspLztyZXR1cm4oYT1hLmV4ZWMoXy5UYSgpKSk/YVsxXToiMCJ9cmV0dXJuIF8uWWM/KGE9LzFbMHwxXVtfLl1bMC05Xy5dKy8sKGE9YS5leGVjKF8uVGEoKSkpP2FbMF0ucmVwbGFjZSgvXy9nLCIuIik6IjEwIik6Xy4kYz8oYT0vQW5kcm9pZFxzKyhbXlwpO10rKShcKXw7KS8sKGE9YS5leGVjKF8uVGEoKSkpP2FbMV06IiIpOl8uYWR8fF8uYmR8fF8uY2Q/KGE9Lyg/OmlQaG9uZXxDUFUpXHMrT1NccysoXFMrKS8sKGE9YS5leGVjKF8uVGEoKSkpP2FbMV0ucmVwbGFjZSgvXy9nLCIuIik6IiIpOiIifSgpO3ZhciBzcz1mdW5jdGlvbihhKXtyZXR1cm4oYT1hLmV4ZWMoXy5UYSgpKSk/YVsxXToiIn0sdHM9ZnVuY3Rpb24oKXtpZihfLkpoKXJldHVybiBzcygvRmlyZWZveFwvKFswLTkuXSspLyk7aWYoXy5TY3x8Xy5UY3x8Xy5SYylyZXR1cm4gXy5qZDtpZihfLk5oKXtpZihfLiRhKCl8fF8uYWIoKSl7dmFyIGE9c3MoL0NyaU9TXC8oWzAtOS5dKykvKTtpZihhKXJldHVybiBhfXJldHVybiBzcygvQ2hyb21lXC8oWzAtOS5dKykvKX1pZihfLk9oJiYhXy4kYSgpKXJldHVybiBzcygvVmVyc2lvblwvKFswLTkuXSspLyk7aWYoXy5LaHx8Xy5MaCl7aWYoYT0vVmVyc2lvblwvKFxTKykuKk1vYmlsZVwvKFxTKykvLmV4ZWMoXy5UYSgpKSlyZXR1cm4gYVsxXSsiLiIrYVsyXX1lbHNlIGlmKF8uTWgpcmV0dXJuKGE9c3MoL0FuZHJvaWRccysoWzAtOS5dKykvKSk/YTpzcygvVmVyc2lvblwvKFswLTkuXSspLyk7cmV0dXJuIiJ9KCk7Xy5HKFltLF8uaGIpO18ubT1ZbS5wcm90b3R5cGU7Xy5tLkVhPW51bGw7Xy5tLkRjPSEwO18ubS5OZT1udWxsO18ubS56Yj0hMTtfLm0uWmQ9LTE7Xy5tLlViPSJ0b2dnbGVfZGlzcGxheSI7Xy5tLkg9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5FYX07Xy5tLlFiPWZ1bmN0aW9uKGEpe2lmKHRoaXMuemIpdGhyb3cgRXJyb3IoInlhIik7dGhpcy5FYT1hfTtfLm0ucmU9ZnVuY3Rpb24oYSl7aWYodGhpcy56Yil0aHJvdyBFcnJvcigieWEiKTt0aGlzLkRjPWF9O18ubS5pc1Zpc2libGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy56Yn07Cl8ubS5wYT1mdW5jdGlvbihhKXt0aGlzLkwmJnRoaXMuTC5zdG9wKCk7dGhpcy5LJiZ0aGlzLksuc3RvcCgpO2lmKGEpe2lmKCF0aGlzLnpiJiZ0aGlzLnVkKCkpe2lmKCF0aGlzLkVhKXRocm93IEVycm9yKCJ6YSIpO3RoaXMucGIoKTthPV8uc2QodGhpcy5FYSk7dGhpcy5EYyYmKHRoaXMubC5OKGEsIm1vdXNlZG93biIsdGhpcy5OZiwhMCksdGhpcy5sLk4oYSwiYmx1ciIsdGhpcy5FaSkpO3RoaXMuVWI9PSJ0b2dnbGVfZGlzcGxheSI/KHRoaXMuRWEuc3R5bGUudmlzaWJpbGl0eT0idmlzaWJsZSIsbXAodGhpcy5FYSwhMCkpOnRoaXMuVWI9PSJtb3ZlX29mZnNjcmVlbiImJnRoaXMucGIoKTt0aGlzLnpiPSEwO3RoaXMuWmQ9RGF0ZS5ub3coKTt0aGlzLkw/KF8uTmQodGhpcy5MLCJlbmQiLHRoaXMuT2YsITEsdGhpcyksdGhpcy5MLnBsYXkoKSk6dGhpcy5PZigpfX1lbHNlIHVzKHRoaXMpfTtfLm0ucGI9ZnVuY3Rpb24oKXt9Owp2YXIgdXM9ZnVuY3Rpb24oYSxiKXthLnpiJiZhLmRpc3BhdGNoRXZlbnQoe3R5cGU6ImJlZm9yZWhpZGUiLHRhcmdldDpifSkmJihhLmwmJl8uUmYoYS5sKSxhLnpiPSExLGEuSz8oXy5OZChhLkssImVuZCIsXy5aaihhLlNlLGIpLCExLGEpLGEuSy5wbGF5KCkpOmEuU2UoYikpfTtfLm09WW0ucHJvdG90eXBlO18ubS5TZT1mdW5jdGlvbihhKXt0aGlzLlViPT0idG9nZ2xlX2Rpc3BsYXkiP3RoaXMuYWkoKTp0aGlzLlViPT0ibW92ZV9vZmZzY3JlZW4iJiYodGhpcy5FYS5zdHlsZS50b3A9Ii0xMDAwMHB4Iik7dGhpcy5nZShhKX07Xy5tLmFpPWZ1bmN0aW9uKCl7dGhpcy5FYS5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4iO21wKHRoaXMuRWEsITEpfTtfLm0udWQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5kaXNwYXRjaEV2ZW50KCJiZWZvcmVzaG93Iil9O18ubS5PZj1mdW5jdGlvbigpe3RoaXMuZGlzcGF0Y2hFdmVudCgic2hvdyIpfTsKXy5tLmdlPWZ1bmN0aW9uKGEpe3RoaXMuZGlzcGF0Y2hFdmVudCh7dHlwZToiaGlkZSIsdGFyZ2V0OmF9KX07Xy5tLk5mPWZ1bmN0aW9uKGEpe2E9YS50YXJnZXQ7Xy5CZCh0aGlzLkVhLGEpfHx2cyh0aGlzLGEpfHxEYXRlLm5vdygpLXRoaXMuWmQ8MTUwfHx1cyh0aGlzLGEpfTtfLm0uRWk9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5zZCh0aGlzLkVhKTtpZih0eXBlb2YgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCE9InVuZGVmaW5lZCIpe2lmKGE9Yi5hY3RpdmVFbGVtZW50LCFhfHxfLkJkKHRoaXMuRWEsYSl8fGEudGFnTmFtZT09IkJPRFkifHx2cyh0aGlzLGEpKXJldHVybn1lbHNlIGlmKGEudGFyZ2V0IT1iKXJldHVybjtEYXRlLm5vdygpLXRoaXMuWmQ8MTUwfHx1cyh0aGlzKX07dmFyIHZzPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8ueGMoYS5OZXx8W10sZnVuY3Rpb24oYyl7cmV0dXJuIGI9PT1jfHxfLkJkKGMsYil9KX07ClltLnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7WW0uZWEuTS5jYWxsKHRoaXMpO3RoaXMubC5kaXNwb3NlKCk7Xy5wYSh0aGlzLkwpO18ucGEodGhpcy5LKTtkZWxldGUgdGhpcy5FYTtkZWxldGUgdGhpcy5sO2RlbGV0ZSB0aGlzLk5lfTtfLkcoYm4sXy5oYik7Ym4ucHJvdG90eXBlLmhhbmRsZUV2ZW50PWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBfLmRiKGEuZyk7Yi50eXBlPWEudHlwZT09ImZvY3VzaW4ifHxhLnR5cGU9PSJmb2N1cyI/ImZvY3VzaW4iOiJmb2N1c291dCI7dGhpcy5kaXNwYXRjaEV2ZW50KGIpfTtibi5wcm90b3R5cGUuTT1mdW5jdGlvbigpe2JuLmVhLk0uY2FsbCh0aGlzKTtfLlZkKHRoaXMuaCk7Xy5WZCh0aGlzLmopO2RlbGV0ZSB0aGlzLmd9O2NuLnByb3RvdHlwZS5oPWZ1bmN0aW9uKCl7fTt2YXIgeXM9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyl7dmFyIGg7aWYoaD1jLm9mZnNldFBhcmVudCl7dmFyIGs9aC50YWdOYW1lPT0iSFRNTCJ8fGgudGFnTmFtZT09IkJPRFkiO2lmKCFrfHxjcChoLCJwb3NpdGlvbiIpIT0ic3RhdGljIil7dmFyIGw9aHAoaCk7aWYoIWspe2s9InJ0bCI9PWNwKGgsImRpcmVjdGlvbiIpO3ZhciBuO2lmKG49ayl7bj1fLk9oJiZMbCh0cywxMCk+PTA7dmFyIHE7aWYocT1fLmRkKXE9TGwocnMsMTApPj0wO3ZhciBwPV8uTmgmJkxsKHRzLDg1KT49MDtuPV8uVWN8fG58fHF8fHB9az1uPy1oLnNjcm9sbExlZnQ6ayYmY3AoaCwib3ZlcmZsb3dYIikhPSJ2aXNpYmxlIj9oLnNjcm9sbFdpZHRoLWguY2xpZW50V2lkdGgtaC5zY3JvbGxMZWZ0Omguc2Nyb2xsTGVmdDtsPWFvKGwsbmV3IHpsKGssaC5zY3JvbGxUb3ApKX19fWg9bHx8bmV3IHpsO2w9aHAoYSk7az1scChhKTtsPW5ldyB3bShsLngsbC55LGsud2lkdGgsay5oZWlnaHQpO2lmKGs9aXAoYSkpcD0KbmV3IHdtKGsubGVmdCxrLnRvcCxrLnJpZ2h0LWsubGVmdCxrLmJvdHRvbS1rLnRvcCksaz1NYXRoLm1heChsLmxlZnQscC5sZWZ0KSxuPU1hdGgubWluKGwubGVmdCtsLndpZHRoLHAubGVmdCtwLndpZHRoKSxrPD1uJiYocT1NYXRoLm1heChsLnRvcCxwLnRvcCkscD1NYXRoLm1pbihsLnRvcCtsLmhlaWdodCxwLnRvcCtwLmhlaWdodCkscTw9cCYmKGwubGVmdD1rLGwudG9wPXEsbC53aWR0aD1uLWssbC5oZWlnaHQ9cC1xKSk7bj1fLmxiKGEpO2s9Xy5sYihjKTtuLmchPWsuZyYmKG49bi5nLmJvZHksaz1qcChuLGsuZy5kZWZhdWx0Vmlldyksaz1hbyhrLGhwKG4pKSxsLmxlZnQrPWsueCxsLnRvcCs9ay55KTthPXdzKGEsYik7Yj1sLmxlZnQ7YSY0P2IrPWwud2lkdGg6YSYyJiYoYis9bC53aWR0aC8yKTtiPW5ldyB6bChiLGwudG9wKyhhJjE/bC5oZWlnaHQ6MCkpO2I9YW8oYixoKTtlJiYoYi54Kz0oYSY0Py0xOjEpKmUueCxiLnkrPShhJjE/LTE6MSkqZS55KTt2YXIgcjtnJiYocj0KaXAoYykpJiYoci50b3AtPWgueSxyLnJpZ2h0LT1oLngsci5ib3R0b20tPWgueSxyLmxlZnQtPWgueCk7cmV0dXJuIHhzKGIsYyxkLGYscixnKX0seHM9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe2E9RG4oYSk7dmFyIGc9d3MoYixjKTtjPWxwKGIpO3ZhciBoPW5ldyBfLkNhKGMud2lkdGgsYy5oZWlnaHQpO2E9RG4oYSk7aD1uZXcgXy5DYShoLndpZHRoLGguaGVpZ2h0KTt2YXIgaz0wO2lmKGR8fGchPTApZyY0P2EueC09aC53aWR0aCsoZD9kLnJpZ2h0OjApOmcmMj9hLngtPWgud2lkdGgvMjpkJiYoYS54Kz1kLmxlZnQpLGcmMT9hLnktPWguaGVpZ2h0KyhkP2QuYm90dG9tOjApOmQmJihhLnkrPWQudG9wKTtmJiYoZT8oZD1oLGc9MCwoZiY2NSk9PTY1JiYoYS54PGUubGVmdHx8YS54Pj1lLnJpZ2h0KSYmKGYmPS0yKSwoZiYxMzIpPT0xMzImJihhLnk8ZS50b3B8fGEueT49ZS5ib3R0b20pJiYoZiY9LTUpLGEueDxlLmxlZnQmJmYmMSYmKGEueD1lLmxlZnQsZ3w9MSksZiYxNiYmKGs9CmEueCxhLng8ZS5sZWZ0JiYoYS54PWUubGVmdCxnfD00KSxhLngrZC53aWR0aD5lLnJpZ2h0JiYoZC53aWR0aD1NYXRoLm1pbihlLnJpZ2h0LWEueCxrK2Qud2lkdGgtZS5sZWZ0KSxkLndpZHRoPU1hdGgubWF4KGQud2lkdGgsMCksZ3w9NCkpLGEueCtkLndpZHRoPmUucmlnaHQmJmYmMSYmKGEueD1NYXRoLm1heChlLnJpZ2h0LWQud2lkdGgsZS5sZWZ0KSxnfD0xKSxmJjImJihnfD0oYS54PGUubGVmdD8xNjowKXwoYS54K2Qud2lkdGg+ZS5yaWdodD8zMjowKSksYS55PGUudG9wJiZmJjQmJihhLnk9ZS50b3AsZ3w9MiksZiYzMiYmKGs9YS55LGEueTxlLnRvcCYmKGEueT1lLnRvcCxnfD04KSxhLnkrZC5oZWlnaHQ+ZS5ib3R0b20mJihkLmhlaWdodD1NYXRoLm1pbihlLmJvdHRvbS1hLnksaytkLmhlaWdodC1lLnRvcCksZC5oZWlnaHQ9TWF0aC5tYXgoZC5oZWlnaHQsMCksZ3w9OCkpLGEueStkLmhlaWdodD5lLmJvdHRvbSYmZiY0JiYoYS55PU1hdGgubWF4KGUuYm90dG9tLWQuaGVpZ2h0LAplLnRvcCksZ3w9MiksZiY4JiYoZ3w9KGEueTxlLnRvcD82NDowKXwoYS55K2QuaGVpZ2h0PmUuYm90dG9tPzEyODowKSksZT1nKTplPTI1NixrPWUpO2U9bmV3IHdtKDAsMCwwLDApO2UubGVmdD1hLng7ZS50b3A9YS55O2Uud2lkdGg9aC53aWR0aDtlLmhlaWdodD1oLmhlaWdodDthPWs7aWYoYSY0OTYpcmV0dXJuIGE7ZXAoYixuZXcgemwoZS5sZWZ0LGUudG9wKSk7aD1uZXcgXy5DYShlLndpZHRoLGUuaGVpZ2h0KTtfLnljKGMsaCl8fHBwKGIsaCwiYm9yZGVyLWJveCIpO3JldHVybiBhfSx3cz1mdW5jdGlvbihhLGIpe3JldHVybihiJjgmJiJydGwiPT1jcChhLCJkaXJlY3Rpb24iKT9iXjQ6YikmLTl9O18uRyhkbixjbik7ZG4ucHJvdG90eXBlLmg9ZnVuY3Rpb24oYSxiLGMpe3lzKHRoaXMuZWxlbWVudCx0aGlzLmosYSxiLHZvaWQgMCxjLHRoaXMubCl9O18uRyhlbixjbik7ZW4ucHJvdG90eXBlLmg9ZnVuY3Rpb24oYSxiLGMpe3lzKChhP18uc2QoYSk6ZG9jdW1lbnQpLmRvY3VtZW50RWxlbWVudCwwLGEsYix0aGlzLmcsYyxudWxsKX07Xy5HKGZuLFltKTtmbi5wcm90b3R5cGUucGI9ZnVuY3Rpb24oKXtpZih0aGlzLm8pe3ZhciBhPSF0aGlzLmlzVmlzaWJsZSgpJiZ0aGlzLlViIT0ibW92ZV9vZmZzY3JlZW4iLGI9dGhpcy5IKCk7YSYmKGIuc3R5bGUudmlzaWJpbGl0eT0iaGlkZGVuIixtcChiLCEwKSk7dGhpcy5vLmgoYiw4LHRoaXMuWGIpO2EmJm1wKGIsITEpfX07Xy5HKE8sZm4pO3ZhciB6cz1bXTtfLm09Ty5wcm90b3R5cGU7Xy5tLnlhPW51bGw7Xy5tLmNsYXNzTmFtZT0iVklwZ0pkLXN1RU9kYyI7Xy5tLlpmPTUwMDtfLm0ud2Y9MDtfLm0uYXR0YWNoPWZ1bmN0aW9uKGEpe2E9Z24oYSk7dGhpcy5BLmFkZChhKTtfLngoYSwibW91c2VvdmVyIix0aGlzLlVkLCExLHRoaXMpO18ueChhLCJtb3VzZW91dCIsdGhpcy5OYiwhMSx0aGlzKTtfLngoYSwibW91c2Vtb3ZlIix0aGlzLmdiLCExLHRoaXMpO18ueChhLCJmb2N1cyIsdGhpcy5mYiwhMSx0aGlzKTtfLngoYSwiYmx1ciIsdGhpcy5OYiwhMSx0aGlzKX07Xy5tLmRldGFjaD1mdW5jdGlvbihhKXt2YXIgYj10aGlzO2E/KGE9Z24oYSksQXModGhpcyxhKSx0aGlzLkEuZGVsZXRlKGEpKToodGhpcy5BLmZvckVhY2goZnVuY3Rpb24oYyl7QXMoYixjKX0pLHRoaXMuQS5jbGVhcigpKX07CnZhciBBcz1mdW5jdGlvbihhLGIpe18uVWQoYiwibW91c2VvdmVyIixhLlVkLCExLGEpO18uVWQoYiwibW91c2VvdXQiLGEuTmIsITEsYSk7Xy5VZChiLCJtb3VzZW1vdmUiLGEuZ2IsITEsYSk7Xy5VZChiLCJmb2N1cyIsYS5mYiwhMSxhKTtfLlVkKGIsImJsdXIiLGEuTmIsITEsYSl9O08ucHJvdG90eXBlLkthPWZ1bmN0aW9uKGEpe18uQ2QodGhpcy5IKCksYSl9OwpPLnByb3RvdHlwZS5RYj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLkgoKTtiJiZfLkFkKGIpO08uZWEuUWIuY2FsbCh0aGlzLGEpO2E/KGI9dGhpcy5HLmcuYm9keSxiLmluc2VydEJlZm9yZShhLGIubGFzdENoaWxkKSxfLnBhKHRoaXMuQyksdGhpcy5DPW5ldyBibih0aGlzLkgoKSksXy5hayh0aGlzLF8uWmooXy5wYSx0aGlzLkMpKSxfLngodGhpcy5DLCJmb2N1c2luIix0aGlzLkQsdm9pZCAwLHRoaXMpLF8ueCh0aGlzLkMsImZvY3Vzb3V0Iix0aGlzLlQsdm9pZCAwLHRoaXMpKTooXy5wYSh0aGlzLkMpLHRoaXMuQz1udWxsKX07Ty5wcm90b3R5cGUudmQ9ZnVuY3Rpb24oKXtyZXR1cm4gRW8odGhpcy5IKCkpfTt2YXIgQnM9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuRj9hLmlzVmlzaWJsZSgpPzQ6MTphLkk/MzphLmlzVmlzaWJsZSgpPzI6MH07Ck8ucHJvdG90eXBlLnVkPWZ1bmN0aW9uKCl7aWYoIVltLnByb3RvdHlwZS51ZC5jYWxsKHRoaXMpKXJldHVybiExO2lmKHRoaXMuZylmb3IodmFyIGEsYj0wO2E9enNbYl07YisrKV8uQmQoYS5IKCksdGhpcy5nKXx8YS5wYSghMSk7Xy51YSh6cyx0aGlzKTthPXRoaXMuSCgpO2EuY2xhc3NOYW1lPXRoaXMuY2xhc3NOYW1lO3RoaXMuRCgpO18ueChhLCJtb3VzZW92ZXIiLHRoaXMuVWMsITEsdGhpcyk7Xy54KGEsIm1vdXNlb3V0Iix0aGlzLlRjLCExLHRoaXMpO0NzKHRoaXMpO3JldHVybiEwfTsKTy5wcm90b3R5cGUuZ2U9ZnVuY3Rpb24oKXtfLnZhKHpzLHRoaXMpO2Zvcih2YXIgYT10aGlzLkgoKSxiLGM9MDtiPXpzW2NdO2MrKyliLmcmJl8uQmQoYSxiLmcpJiZiLnBhKCExKTt0aGlzLkhiJiZ0aGlzLkhiLlQoKTtfLlVkKGEsIm1vdXNlb3ZlciIsdGhpcy5VYywhMSx0aGlzKTtfLlVkKGEsIm1vdXNlb3V0Iix0aGlzLlRjLCExLHRoaXMpO3RoaXMuZz12b2lkIDA7QnModGhpcyk9PTAmJih0aGlzLlA9ITEpO1ltLnByb3RvdHlwZS5nZS5jYWxsKHRoaXMpfTtPLnByb3RvdHlwZS5kZT1mdW5jdGlvbihhLGIpe3RoaXMuZz09YSYmdGhpcy5BLmhhcyh0aGlzLmcpJiYodGhpcy5QfHwhdGhpcy5JZD8odGhpcy5wYSghMSksdGhpcy5pc1Zpc2libGUoKXx8KHRoaXMuZz1hLHRoaXMubz1ifHxuZXcgRHMoRG4odGhpcy5yYSkpLHRoaXMuaXNWaXNpYmxlKCkmJnRoaXMucGIoKSx0aGlzLnBhKCEwKSkpOnRoaXMuZz12b2lkIDApO3RoaXMuRj12b2lkIDB9OwpPLnByb3RvdHlwZS5GYz1mdW5jdGlvbihhKXt0aGlzLkk9dm9pZCAwO2lmKGE9PXRoaXMuZyl7YT10aGlzLkc7dmFyIGI9YS5nO3RyeXt2YXIgYz1iJiZiLmFjdGl2ZUVsZW1lbnQ7dmFyIGQ9YyYmYy5ub2RlTmFtZT9jOm51bGx9Y2F0Y2goZSl7ZD1udWxsfWQ9ZCYmdGhpcy5IKCkmJmEuY29udGFpbnModGhpcy5IKCksZCk7dGhpcy55YSE9bnVsbCYmKHRoaXMueWE9PXRoaXMuSCgpfHx0aGlzLkEuaGFzKHRoaXMueWEpKXx8ZHx8dGhpcy5JYSYmdGhpcy5JYS55YXx8dGhpcy5wYSghMSl9fTt2YXIgRXM9ZnVuY3Rpb24oYSxiKXt2YXIgYz1LbihhLkcuZyk7YS5yYS54PWIuY2xpZW50WCtjLng7YS5yYS55PWIuY2xpZW50WStjLnl9O08ucHJvdG90eXBlLlVkPWZ1bmN0aW9uKGEpe3ZhciBiPUZzKHRoaXMsYS50YXJnZXQpO3RoaXMueWE9Yjt0aGlzLkQoKTtiIT10aGlzLmcmJih0aGlzLmc9YixHcyh0aGlzLGIpLEhzKHRoaXMpLEVzKHRoaXMsYSkpfTsKdmFyIEZzPWZ1bmN0aW9uKGEsYil7dHJ5e2Zvcig7YiYmIWEuQS5oYXMoYik7KWI9Yi5wYXJlbnROb2RlO3JldHVybiBifWNhdGNoKGMpe3JldHVybiBudWxsfX07Ty5wcm90b3R5cGUuZ2I9ZnVuY3Rpb24oYSl7RXModGhpcyxhKTt0aGlzLlA9ITB9O08ucHJvdG90eXBlLmZiPWZ1bmN0aW9uKGEpe3RoaXMueWE9YT1Gcyh0aGlzLGEudGFyZ2V0KTt0aGlzLlA9ITA7aWYodGhpcy5nIT1hKXt0aGlzLmc9YTt2YXIgYj1uZXcgSXModGhpcy55YSk7dGhpcy5EKCk7R3ModGhpcyxhLGIpO0hzKHRoaXMpfX07dmFyIEhzPWZ1bmN0aW9uKGEpe2lmKGEuZylmb3IodmFyIGIsYz0wO2I9enNbY107YysrKV8uQmQoYi5IKCksYS5nKSYmKGIuSWE9YSxhLkhiPWIpfTsKTy5wcm90b3R5cGUuTmI9ZnVuY3Rpb24oYSl7dmFyIGI9RnModGhpcyxhLnRhcmdldCksYz1Gcyh0aGlzLGEucmVsYXRlZFRhcmdldCk7YiE9YyYmKGI9PXRoaXMueWEmJih0aGlzLnlhPW51bGwpLENzKHRoaXMpLHRoaXMuUD0hMSwhdGhpcy5pc1Zpc2libGUoKXx8YS5yZWxhdGVkVGFyZ2V0JiZfLkJkKHRoaXMuSCgpLGEucmVsYXRlZFRhcmdldCk/dGhpcy5nPXZvaWQgMDp0aGlzLlQoKSl9O08ucHJvdG90eXBlLlVjPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5IKCk7dGhpcy55YSE9YSYmKHRoaXMuRCgpLHRoaXMueWE9YSl9O08ucHJvdG90eXBlLlRjPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuSCgpO3RoaXMueWEhPWJ8fGEucmVsYXRlZFRhcmdldCYmXy5CZChiLGEucmVsYXRlZFRhcmdldCl8fCh0aGlzLnlhPW51bGwsdGhpcy5UKCkpfTsKdmFyIEdzPWZ1bmN0aW9uKGEsYixjKXthLkZ8fChhLkY9cXMoKDAsXy55KShhLmRlLGEsYixjKSxhLlpmKSl9LENzPWZ1bmN0aW9uKGEpe2EuRiYmKF8udi5jbGVhclRpbWVvdXQoYS5GKSxhLkY9dm9pZCAwKX07Ty5wcm90b3R5cGUuVD1mdW5jdGlvbigpe0JzKHRoaXMpPT0yJiYodGhpcy5JPXFzKCgwLF8ueSkodGhpcy5GYyx0aGlzLHRoaXMuZyksdGhpcy53ZikpfTtPLnByb3RvdHlwZS5EPWZ1bmN0aW9uKCl7dGhpcy5JJiYoXy52LmNsZWFyVGltZW91dCh0aGlzLkkpLHRoaXMuST12b2lkIDApfTtPLnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7dGhpcy5wYSghMSk7Q3ModGhpcyk7dGhpcy5kZXRhY2goKTt0aGlzLkgoKSYmXy5BZCh0aGlzLkgoKSk7dGhpcy55YT1udWxsO2RlbGV0ZSB0aGlzLkc7Ty5lYS5NLmNhbGwodGhpcyl9O3ZhciBEcz1mdW5jdGlvbihhLGIpe2VuLmNhbGwodGhpcyxhLGIpfTtfLkcoRHMsZW4pOwpEcy5wcm90b3R5cGUuaD1mdW5jdGlvbihhLGIsYyl7Yj1pcCgoYT9fLnNkKGEpOmRvY3VtZW50KS5kb2N1bWVudEVsZW1lbnQpO2M9Yz9uZXcgdm0oYy50b3ArMTAsYy5yaWdodCxjLmJvdHRvbSxjLmxlZnQrMTApOm5ldyB2bSgxMCwwLDAsMTApO3hzKHRoaXMuZyxhLDgsYyxiLDkpJjQ5NiYmeHModGhpcy5nLGEsOCxjLGIsNSl9O3ZhciBJcz1mdW5jdGlvbihhKXtkbi5jYWxsKHRoaXMsYSw1KX07Xy5HKElzLGRuKTtJcy5wcm90b3R5cGUuaD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bmV3IHpsKDEwLDApO3lzKHRoaXMuZWxlbWVudCx0aGlzLmosYSxiLGQsYyw5KSY0OTYmJnlzKHRoaXMuZWxlbWVudCw0LGEsMSxkLGMsNSl9O3ZhciBKcz1mdW5jdGlvbigpe08uY2FsbCh0aGlzKTt0aGlzLmxhPW51bGw7dGhpcy5SPW5ldyBfLkhiKHRoaXMpO3RoaXMuQj10aGlzLmo9dGhpcy5oPXRoaXMud2E9bnVsbDt0aGlzLk89ITB9O18uQihKcyxPKTtfLm09SnMucHJvdG90eXBlO18ubS5rYT1mdW5jdGlvbigpe3RoaXMuTz0hMTt2YXIgYT1fLnhmLnRlc3Qob3EpPyJydGwiOiJsdHIiO3RoaXMuUWIoa20ocHMse1VsOkVxLE9rOkNxLFJsOnhxLGRpcjphLGNqOklxfSkpO3RoaXMuY2xhc3NOYW1lKz0iIFZJcGdKZC15QVdORWItTDdsYmtiIHNraXB0cmFuc2xhdGUiOyhhPSEoIXRoaXMuSCgpfHwhdGhpcy5CKSkmJnRoaXMuUi5OKHdpbmRvdywicmVzaXplIiwoMCxfLnkpKHRoaXMucGIsdGhpcykpO3JldHVybiBhfTtfLm0uZGU9ZnVuY3Rpb24oYSxiKXt0aGlzLmxhPWE7Ty5wcm90b3R5cGUuZGUuY2FsbCh0aGlzLGEsYik7dGhpcy5IKCkuc3R5bGUuZGlzcGxheT0iYmxvY2sifTsKXy5tLlVkPWZ1bmN0aW9uKGEpe2lmKCF0aGlzLk8pe3ZhciBiPUZzKHRoaXMsYS50YXJnZXQpO3RoaXMueWE9Yjt0aGlzLkQoKTtiIT10aGlzLmc/KHRoaXMuZz1iLEdzKHRoaXMsYiksSHModGhpcyksRXModGhpcyxhKSk6R3ModGhpcyxiKX19O18ubS5NPWZ1bmN0aW9uKCl7dGhpcy5SJiZ0aGlzLlIuZGlzcG9zZSgpO3RoaXMuQj10aGlzLmxhPXRoaXMuUj1udWxsO08ucHJvdG90eXBlLk0uY2FsbCh0aGlzKX07Xy5tLnJlPWZ1bmN0aW9uKGEpe2lmKHRoaXMuaXNWaXNpYmxlKCkpe2E9KHRoaXMuRGM9YSk/dGhpcy5sLk46dGhpcy5sLnljO3ZhciBiPV8uc2QodGhpcy5IKCkpO2EuY2FsbCh0aGlzLmwsYiwibW91c2Vkb3duIix0aGlzLk5mLCEwKX1lbHNlIE8ucHJvdG90eXBlLnJlLmNhbGwodGhpcyxhKX07Xy5tLlFiPWZ1bmN0aW9uKGEpe08ucHJvdG90eXBlLlFiLmNhbGwodGhpcyxhKTthJiYodGhpcy5CPXZvKGEpKX07Cl8ubS5wYj1mdW5jdGlvbihhLGIpe3ZhciBjPWhwKGRvY3VtZW50LmJvZHkpLnk7aWYodGhpcy5vKXsodGhpcy5vfHxudWxsKS5nLnkrPWM7Ty5wcm90b3R5cGUucGIuY2FsbCh0aGlzKTt2YXIgZD1wYXJzZUludCh0aGlzLkgoKS5zdHlsZS5sZWZ0LDEwKTthPXBhcnNlSW50KHRoaXMuSCgpLnN0eWxlLnRvcCwxMCktKGE/MDpjKTtiJiYoYj10aGlzLlhifHx7fSxhLT1iLnRvcHx8MTAsZC09Yi5sZWZ0fHwxMCk7YS09YzsodGhpcy5vfHxudWxsKS5nLnk9YTsodGhpcy5vfHxudWxsKS5nLng9ZDtjPW5ldyB6bChkLGEpO2VwKHRoaXMuSCgpLGMpfX07Xy5tLnBhPWZ1bmN0aW9uKGEpe08ucHJvdG90eXBlLnBhLmNhbGwodGhpcyxhKX07Xy5tLk5hPWZ1bmN0aW9uKGEpe3RoaXMuaD1hfTtfLm0ubmE9ZnVuY3Rpb24oYSl7dGhpcy5qPWF9O18ubS5LYT1mdW5jdGlvbihhKXthPWE/Xy5BYyhhKToiIjt0aGlzLkI/Xy5DZCh0aGlzLkIsYSk6Ty5wcm90b3R5cGUuS2EuY2FsbCh0aGlzLGEpfTsKXy5tLkphPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaH07Xy5tLm9hPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuan07Xy5tLnZkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuQj9Fbyh0aGlzLkIpOk8ucHJvdG90eXBlLnZkLmNhbGwodGhpcyl9O18ubS5OYj1mdW5jdGlvbihhKXt0aGlzLk98fE8ucHJvdG90eXBlLk5iLmNhbGwodGhpcyxhKX07Xy5tLlVjPWZ1bmN0aW9uKGEpe3RoaXMuT3x8Ty5wcm90b3R5cGUuVWMuY2FsbCh0aGlzLGEpfTtfLm0uVGM9ZnVuY3Rpb24oYSl7dGhpcy5PfHxPLnByb3RvdHlwZS5UYy5jYWxsKHRoaXMsYSl9O3ZhciBLcz1mdW5jdGlvbigpe3RoaXMuaD1uZXcgTWFwO3RoaXMuZz1XcShjcil9LE9zPWZ1bmN0aW9uKGEpe3ZhciBiPWduKCJnb29nLWd0LXRodW1iVXBCdXR0b24iKSxjPWEuaCxkPWEuZztiLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2lmKExzKGMpPT09TXMpZ3IoZCk7ZWxzZXt2YXIgZT1kcihkLDUpO2VyKGQsZSk7ZnIoZSw1KX1OcyhjLE1zKX0sITEpfSxRcz1mdW5jdGlvbihhKXt2YXIgYj1nbigiZ29vZy1ndC10aHVtYkRvd25CdXR0b24iKSxjPWEuaCxkPWEuZztiLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2lmKExzKGMpPT09UHMpZ3IoZCk7ZWxzZXt2YXIgZT1kcihkLDYpO2VyKGQsZSk7ZnIoZSw2KX1OcyhjLFBzKX0sITEpfSxUcz1mdW5jdGlvbihhKXt2YXIgYj1nbigiZ29vZy1ndC10dCIpLGM9Yi5kYXRhc2V0LGQ9Z24oImdvb2ctZ3Qtdm90aW5nSW5wdXRTcmNMYW5nIiksZT1nbigiZ29vZy1ndC12b3RpbmdJbnB1dFRyZ0xhbmciKSwKZj1nbigiZ29vZy1ndC12b3RpbmdJbnB1dFNyY1RleHQiKSxnPWduKCJnb29nLWd0LXZvdGluZ0lucHV0VHJnVGV4dCIpLGg9dm8oKSxrPWduKCJnb29nLWd0LXRyYW5zbGF0aW9uIiksbD1hLmgsbj1hLmc7d2luZG93LmRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcigiZ29vZy1ndC1wb3B1cFNob3duIixmdW5jdGlvbihxKXt2YXIgcD1kcihuLDQpO2VyKG4scCk7ZnIocCw0KTtxPXEuZGV0YWlsO3A9U3RyaW5nKHEuR2QpO3E9cS5YaTtjLmlkPXA7cD1sLmdldChwKXx8UnM7U3MocCk7Yi5zdHlsZS53aWR0aD1NYXRoLm1heChNYXRoLm1pbih3aW5kb3cuaW5uZXJXaWR0aC0xNiw1MzYpLDI4OCkrInB4IjtwPXEuSmEoKXx8IiI7dmFyIHI9cS5vYSgpfHwiIjtkLnZhbHVlPXA7ZS52YWx1ZT1yO2YudmFsdWU9cS52ZCgpO2cudmFsdWU9cS53YTtrJiYoay5pbm5lclRleHQ9cS53YSk7Yi5sYW5nPW9xO2gubGFuZz1wO2smJihrLmxhbmc9cik7Xy54Zi50ZXN0KHApJiYoaC5jbGFzc0xpc3QuYWRkKCJydGwiKSwKaC5kaXI9InJ0bCIpO2smJl8ueGYudGVzdChyKSYmKGsuY2xhc3NMaXN0LmFkZCgicnRsIiksay5kaXI9InJ0bCIpfSwhMSl9LFNzPWZ1bmN0aW9uKGEpe3ZhciBiPWduKCJnb29nLWd0LXRodW1iVXBCdXR0b24iKSxjPWduKCJnb29nLWd0LXRodW1iVXBJY29uIiksZD1nbigiZ29vZy1ndC10aHVtYlVwSWNvbkZpbGxlZCIpLGU9Z24oImdvb2ctZ3QtdGh1bWJEb3duQnV0dG9uIiksZj1nbigiZ29vZy1ndC10aHVtYkRvd25JY29uIiksZz1nbigiZ29vZy1ndC10aHVtYkRvd25JY29uRmlsbGVkIik7Yi5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsImZhbHNlIik7Yy5zdHlsZS5kaXNwbGF5PSIiO2Quc3R5bGUuZGlzcGxheT0ibm9uZSI7ZS5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsImZhbHNlIik7Zi5zdHlsZS5kaXNwbGF5PSIiO2cuc3R5bGUuZGlzcGxheT0ibm9uZSI7c3dpdGNoKGEpe2Nhc2UgTXM6Yi5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsInRydWUiKTtjLnN0eWxlLmRpc3BsYXk9CiJub25lIjtkLnN0eWxlLmRpc3BsYXk9IiI7YnJlYWs7Y2FzZSBQczplLnNldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIiwidHJ1ZSIpLGYuc3R5bGUuZGlzcGxheT0ibm9uZSIsZy5zdHlsZS5kaXNwbGF5PSIifWduKCJnb29nLWd0LXZvdGluZ0lucHV0Vm90ZSIpLnZhbHVlPWF9LExzPWZ1bmN0aW9uKGEpe3ZhciBiPWduKCJnb29nLWd0LXR0IikuZGF0YXNldDtyZXR1cm4gYS5nZXQoYi5pZCl9LE5zPWZ1bmN0aW9uKGEsYil7THMoYSk9PT1iJiYoYj1Scyk7U3MoYik7dmFyIGM9Z24oImdvb2ctZ3QtdHQiKS5kYXRhc2V0O2Euc2V0KGMuaWQsYik7Z24oImdvb2ctZ3Qtdm90aW5nRm9ybSIpLnN1Ym1pdCgpfSxScz0oMCkudG9TdHJpbmcoKSxNcz0oMSkudG9TdHJpbmcoKSxQcz0oMikudG9TdHJpbmcoKTt2YXIgVXM9ZnVuY3Rpb24oYSl7dGhpcy5BPWE7dGhpcy5sPXRoaXMuaD10aGlzLm89dGhpcy5qPS0xO3RoaXMuZz0hMTt0aGlzLkM9MDt0aGlzLkQ9IiI7dGhpcy5GPTB9O1VzLnByb3RvdHlwZS5zdGFydD1mdW5jdGlvbigpe2lmKCF0aGlzLmcpe3RoaXMuZz0hMDt2YXIgYT1bXSxiO2ZvcihiPTA7YjwxNTtiKyspYVtiXT1YcVswfE1hdGgucmFuZG9tKCkqNjJdO3RoaXMuRD1hLmpvaW4oIiIpO3RoaXMuQz0wO3RoaXMubD10aGlzLmg9dGhpcy5vPXRoaXMuaj0tMTt0aGlzLkY9RGF0ZS5ub3coKTtxcyh0aGlzLkIsMUU0LHRoaXMpfX07VXMucHJvdG90eXBlLnN0b3A9ZnVuY3Rpb24oKXt0aGlzLmcmJih0aGlzLmc9ITEsVnModGhpcykpfTtVcy5wcm90b3R5cGUuQj1mdW5jdGlvbigpe3RoaXMuZyYmKFZzKHRoaXMpLHFzKHRoaXMuQiwxRTMsdGhpcykpfTsKdmFyIFZzPWZ1bmN0aW9uKGEpe3ZhciBiPWEuQS5sLGM9YS5BLkEsZD1hLkEuaixlPWEuQS5vO2lmKGEuaiE9Ynx8YS5vIT1jfHxhLmghPWR8fGEubCE9ZSl7dmFyIGY9e307Zi5jdD1iO2YuY3Y9YztmLmN0cz1kO2YuY3ZzPWU7Zi5zaWQ9YS5EO2Yuc2VxPWEuQysrO2YudGF0PURhdGUubm93KCktYS5GO2lmKGEuaj49MHx8YS5vPj0wfHxhLmg+PTB8fGEubD49MClmLnB0PWEuaixmLnB2PWEubyxmLnB0cz1hLmgsZi5wdnM9YS5sO1FtKCJ0ZV92IixmKTthLmo9YjthLm89YzthLmg9ZDthLmw9ZX19O3ZhciBXcz1mdW5jdGlvbigpe3RoaXMubz10aGlzLmo9dGhpcy5BPXRoaXMubD0wO3RoaXMuZz1bXTt0aGlzLmg9Xy52LkludGVyc2VjdGlvbk9ic2VydmVyIT1udWxsP25ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcigoMCxfLnkpKHRoaXMuQix0aGlzKSk6bnVsbH07V3MucHJvdG90eXBlLmF0dGFjaD1mdW5jdGlvbihhLGIpe3RoaXMuais9Yjt2YXIgYz10aGlzLmcubGVuZ3RoO3RoaXMuZy5wdXNoKGIpO2ZvcihiPTA7YjxhLmxlbmd0aDsrK2Ipe3ZhciBkPWFbYl07eW8oZCk/KGRbWHNdPWMsdGhpcy5sKz1FbyhkKS5sZW5ndGgsdGhpcy5oJiZ0aGlzLmgub2JzZXJ2ZShkKSk6dGhpcy5GZihkLm5vZGVUeXBlKX19O1dzLnByb3RvdHlwZS5kZXRhY2g9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDsrK2Ipe3ZhciBjPWFbYl07eW8oYyk/KGNbWHNdPXZvaWQgMCx0aGlzLmgmJnRoaXMuaC51bm9ic2VydmUoYykpOnRoaXMuRmYoYy5ub2RlVHlwZSl9fTsKV3MucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5vPXRoaXMuaj10aGlzLkE9dGhpcy5sPTA7dGhpcy5nPVtdfTtXcy5wcm90b3R5cGUuQj1mdW5jdGlvbihhKXtmb3IodmFyIGI9MDtiPGEubGVuZ3RoO2IrKyl7dmFyIGM9YVtiXTtpZihjLmludGVyc2VjdGlvblJhdGlvPjAmJmMudGFyZ2V0W1hzXSE9bnVsbCl7dGhpcy5BKz1FbyhjLnRhcmdldCkubGVuZ3RoO3ZhciBkPWMudGFyZ2V0W1hzXTt0aGlzLm8rPXRoaXMuZ1tkXTt0aGlzLmdbZF09MDtkZWxldGUgYy50YXJnZXRbWHNdfX19O0RyLmF0dGFjaCgzNjU0NixXcy5wcm90b3R5cGUse0ZmOjF9KTt2YXIgWHM9Il9ndF8iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cigyKTt2YXIgWXM9e307WXMuYWRkPWtuO1lzLkRrPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1obihhKTt0eXBlb2YgYj09PSJzdHJpbmciP18udmEoZCxiKTpBcnJheS5pc0FycmF5KGIpJiYoZD1sbihkLGIpKTt0eXBlb2YgYyE9PSJzdHJpbmcifHxfLnRhKGQsYyk/QXJyYXkuaXNBcnJheShjKSYmam4oZCxjKTpkLnB1c2goYyk7YS5jbGFzc05hbWU9ZC5qb2luKCIgIil9O1lzLmVuYWJsZT1vbjtZcy5nZXQ9aG47WXMuaGFzPW5uO1lzLnJlbW92ZT1tbjtZcy5zZXQ9ZnVuY3Rpb24oYSxiKXthLmNsYXNzTmFtZT1ifTtZcy5obT1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPWhuKGEpLGU9ITEsZj0wO2Y8ZC5sZW5ndGg7ZisrKWRbZl09PWImJihkLnNwbGljZShmLS0sMSksZT0hMCk7ZSYmKGQucHVzaChjKSxhLmNsYXNzTmFtZT1kLmpvaW4oIiAiKSk7cmV0dXJuIGV9O1lzLnRvZ2dsZT1mdW5jdGlvbihhLGIpe3ZhciBjPSFubihhLGIpO29uKGEsYixjKTtyZXR1cm4gY307dmFyIFpzPWZ1bmN0aW9uKGEpe18uaGIuY2FsbCh0aGlzKTthPWF8fHt9O3RoaXMuZz1KbChhKTt0aGlzLmcuaGM9YS5oYyE9PXZvaWQgMD9hLmhjOjE7dGhpcy5nLnZlPSEhYS52ZTt0aGlzLmcuYmg9cGFyc2VJbnQoYS5iaCwxMCl8fDMwMDt0aGlzLmcudHJhY2tWaXNpYmlsaXR5PWEudHJhY2tWaXNpYmlsaXR5fHwhMTt0aGlzLmcuYXBpS2V5PWEuYXBpS2V5fHwiIjt0aGlzLkM9MDt0aGlzLmw9e307dGhpcy5CPW51bGw7dGhpcy5GPXRoaXMuRD0iIjt0aGlzLm89bmV3IF8uSGIodGhpcyk7dGhpcy5BPXRoaXMuaj10aGlzLmg9bnVsbDt0aGlzLmcudHJhY2tWaXNpYmlsaXR5JiZfLnYuSW50ZXJzZWN0aW9uT2JzZXJ2ZXIhPW51bGwmJih0aGlzLmo9bmV3IFdzLHRoaXMuQT1uZXcgVXModGhpcy5qKSk7dGhpcy5oPW5ldyBKcyh7U2k6dGhpcy5nLlNpfSk7dGhpcy5oLndmPTMwMDt0aGlzLmguWmY9MUUzO3RoaXMuaC5yZSghMCk7dGhpcy5vLk4odGhpcy5oLCJzaG93IiwoMCxfLnkpKHRoaXMub2csCnRoaXMpKTt0aGlzLm8uTih0aGlzLmgsImhpZGUiLCgwLF8ueSkodGhpcy5uZyx0aGlzKSk7dGhpcy5oLmthKCk7YT1uZXcgS3M7Z24oImdvb2ctZ3QtdGh1bWJVcEJ1dHRvbiIpJiYoT3MoYSksUXMoYSksVHMoYSkpfTtfLkIoWnMsXy5oYik7dmFyICRzPWZ1bmN0aW9uKGEpe2EuQSYmYS5BLnN0b3AoKTtmb3IodmFyIGIgaW4gYS5sKXt2YXIgYz1hLGQ9Yy5sW2JdO2lmKGQpe2MuaiYmYy5qLmRldGFjaChkLkFhKTtmb3IodmFyIGU9MDtlPGQuQWEubGVuZ3RoOysrZSlkLkFhW2VdJiZjLmRldGFjaChkLkFhW2VdKTtkZWxldGUgYy5sW2JdfX1hLmomJmEuai5yZXNldCgpfTtfLm09WnMucHJvdG90eXBlO18ubS5hdHRhY2g9ZnVuY3Rpb24oYSxiKXtiJiYoYi5HZD1hLHRoaXMuaC5hdHRhY2goYikpfTtfLm0uZGV0YWNoPWZ1bmN0aW9uKGEpe2EmJnRoaXMuaC5kZXRhY2goYSl9OwpfLm0ub2c9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmgubGE7YT1hP2EuR2Q6dm9pZCAwO2lmKGEhPT12b2lkIDApe3ZhciBiPXRoaXMubFthXTthdCh0aGlzLHRoaXMuQiwhMSk7dGhpcy5CPWE7YXQodGhpcyxhKTt0aGlzLmguTmEoYi5UaSk7dGhpcy5oLm5hKGIuVmkpO3ZhciBjPWIuWjt0aGlzLmgud2E9YyYmXy5BYyhjKTt0aGlzLmguS2EoYi50ZXh0KX1hPW5ldyBDdXN0b21FdmVudCgiZ29vZy1ndC1wb3B1cFNob3duIix7ZGV0YWlsOntHZDphLFhpOnRoaXMuaH19KTt3aW5kb3cuZG9jdW1lbnQuYm9keS5kaXNwYXRjaEV2ZW50KGEpfTtfLm0ubmc9ZnVuY3Rpb24oKXthdCh0aGlzLHRoaXMuQiwhMSl9O18ubS5NPWZ1bmN0aW9uKCl7JHModGhpcyk7dGhpcy5oJiYodGhpcy5oLmRpc3Bvc2UoKSx0aGlzLmg9bnVsbCk7dGhpcy5vJiYodGhpcy5vLmRpc3Bvc2UoKSx0aGlzLm89bnVsbCk7Xy5oYi5wcm90b3R5cGUuTS5jYWxsKHRoaXMpfTsKdmFyIGF0PWZ1bmN0aW9uKGEsYixjKXtpZihhPWEubFtiXSlmb3IoYz1jfHx0eXBlb2YgYz09InVuZGVmaW5lZCIsYj0wO2I8YS5BYS5sZW5ndGg7KytiKWlmKGEuQWFbYl0pWXNbYz8iYWRkIjoicmVtb3ZlIl0oYS5BYVtiXSwiVklwZ0pkLXlBV05FYi1WSXBnSmQtZm1jbVMtc241NFEiKX07dmFyIGJ0PWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wO2I8YS5sZW5ndGg7KytiKWlmKGFbYl0mJmFbYl0ubm9kZSlyZXR1cm4gYVtiXS5ub2RlO3JldHVybiBudWxsfSxmdD1mdW5jdGlvbihhKXt2YXIgYj1idChhKTtpZighYilyZXR1cm4gbnVsbDt2YXIgYz1bXSxkPVtdLGU9W107Yj1uZXcgZHMoYiwhMCk7dmFyIGY9YVthLmxlbmd0aC0xXS5ub2RlLGc9MCxoPSExO2Rve2IubmV4dCgpO3ZhciBrPWIubm9kZSgpO2lmKCFrKWJyZWFrO3ZhciBsPWIuZy5nLG49Yi5kZXB0aCgpO2ZvcihsPT0xJiYtLW47ZzxhLmxlbmd0aCYmIWFbZ10ubm9kZTspKytnO2s9PWFbZ10ubm9kZXx8IWgmJmw9PTEmJihrIT1udWxsJiZrLnByZXZpb3VzU2libGluZz09bnVsbD8wOiFjdChkdChrKSkpPyhsPWV0KGspLGQucHVzaCh7bm9kZTpsLEthOmZ1bmN0aW9uKCl7fX0pLGVbZC5sZW5ndGgtMV09bixrLnBhcmVudE5vZGUmJmsucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobCxrKSxrPT1hW2ddLm5vZGUmJgooY1tnKytdPWQubGVuZ3RoLTEsaD0hMCkpOmg9ITF9d2hpbGUoayE9Zik7cmV0dXJue3plOmUsR2k6YyxkaTpkfX0sY3Q9ZnVuY3Rpb24oYSl7cmV0dXJuIGEhPW51bGwmJlhyW2EudGFnTmFtZV19LGR0PWZ1bmN0aW9uKGEpe2lmKGE9PW51bGwpcmV0dXJuIG51bGw7Zm9yKGE9YS5wcmV2aW91c1NpYmxpbmc7YSE9bnVsbCYmYSE9bnVsbCYmYS5ub2RlVHlwZT09MyYmXy5BYyhFbyhhKSk9PSIiOylhPWEucHJldmlvdXNTaWJsaW5nO3JldHVybiBhfSxqdD1mdW5jdGlvbihhLGIsYyxkLGUsZil7Xy5oYi5jYWxsKHRoaXMpO3RoaXMuZz1bXTtmb3IodmFyIGc9MDtnPGEubGVuZ3RoOysrZyl0aGlzLmcucHVzaCgibm9kZVR5cGUiaW4gYVtnXT9ndChhW2ddKTphW2ddKSxodChhW2ddLm5vZGUpO3RoaXMubD1iO3RoaXMuRD1kfHwwO3RoaXMuUj1lfHwwO3RoaXMuQz1jO3RoaXMuQj1mfHxudWxsO3RoaXMuSz10aGlzLkc9dGhpcy5MPSExO3RoaXMubz1bXTt0aGlzLkE9W107dGhpcy5oPVtdOwp0aGlzLk89W107bmV3IF8uSGIodGhpcyk7dGhpcy5qPXRoaXMuST0hMX0sZ3Q7Xy5CKGp0LF8uaGIpOwp2YXIgbXQ9ZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJuITE7aWYoYS5ub2RlVHlwZSE9M3x8IV8uU2MpcmV0dXJuIGt0IGluIGEmJiEhYVtrdF07aWYoIWEucGFyZW50Tm9kZSlyZXR1cm4hMDtpZighKGx0IGluIGEucGFyZW50Tm9kZSkpcmV0dXJuITE7dmFyIGI9YS5wYXJlbnROb2RlW2x0XTtpZighYnx8IWJbYS5ub2RlVmFsdWVdKXJldHVybiExO2I9YlthLm5vZGVWYWx1ZV07Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDsrK2MpaWYoYltjXT09YSlyZXR1cm4hMDtyZXR1cm4hMX0sbnQ9ZnVuY3Rpb24oYSxiKXtpZighYSlyZXR1cm4iIjtpZihhLnRhZ05hbWU9PSJUSVRMRSIpcmV0dXJuIFN0cmluZyhkb2N1bWVudC50aXRsZSk7YS5ub2RlVHlwZT09Mz9iPSJub2RlVmFsdWUiOmJ8fChiPSJ2YWx1ZSIpO3JldHVybiBhLmdldEF0dHJpYnV0ZSYmYS5nZXRBdHRyaWJ1dGUoYik/U3RyaW5nKGEuZ2V0QXR0cmlidXRlKGIpKTp0eXBlb2YgYVtiXT09PSJzdHJpbmciP1N0cmluZyhhW2JdKToKIiJ9O2p0LnByb3RvdHlwZS5tYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmx9Owp2YXIgb3Q9ZnVuY3Rpb24oYSxiLGMpe2I9e1BmOmIsaGU6YyxVOltdfTthLmgucHVzaChiKTtyZXR1cm4gYn0scXQ9ZnVuY3Rpb24oYSl7aWYoIWEuaiYmYS5MJiYhYS5HJiYhYS5LKXthLkc9ITA7dmFyIGI7aWYoYj1wdChhLmcpKXtiPWEuZzt2YXIgYz1hLmg7aWYoYi5sZW5ndGg9PTEmJmJbMF0mJmJbMF0ueGUpe2Zvcih2YXIgZD1bXSxlPTA7ZTxjLmxlbmd0aDsrK2UpZm9yKHZhciBmPTA7ZjxjW2VdLlUubGVuZ3RoOysrZilkLnB1c2goY1tlXS5VW2ZdLlopO2JbMF0uS2EoZC5qb2luKCIgIiksYlswXS5ub2RlKTtiPSEwfWVsc2UgYj0hMTtiPSFifWlmKGImJihiPWZ0KGEuZykpKXthLkE9Yi5HaTthLm89Yi5kaTtkPWEuZztlPWEuQTtmPWEubzt2YXIgZz1iLnplO2M9W107Zm9yKHZhciBoPTA7aDxkLmxlbmd0aDsrK2gpaWYoY1toXT1bXSxkW2hdLm5vZGUmJmVbaF0hPT12b2lkIDApZm9yKHZhciBrPTA7azxmLmxlbmd0aDsrK2spaWYoIShnW2tdPmdbZVtoXV0pKXtpZihnW2tdPT0KZ1tlW2hdXSl7aWYoZltrXS5ub2RlLnBhcmVudE5vZGUhPWZbZVtoXV0ubm9kZS5wYXJlbnROb2RlKWNvbnRpbnVlfWVsc2V7Zm9yKHZhciBsPWdbZVtoXV0tZ1trXSxuPWZbZVtoXV0ubm9kZS5wYXJlbnROb2RlO2wtLSYmbiYmbiE9ZltrXS5ub2RlLnBhcmVudE5vZGU7KW49bi5wYXJlbnROb2RlO2lmKG4hPWZba10ubm9kZS5wYXJlbnROb2RlKWNvbnRpbnVlfWNbaF0ucHVzaChrKX1kPWEuZztlPWEuaDtmPS0xO2ZvcihnPWUubGVuZ3RoLTE7Zz49MDstLWcpZm9yKGg9ZVtnXSxrPWguVS5sZW5ndGgtMTtrPj0wOy0taylpZihsPWguVVtrXSwhKGwuWDwwKSYmZFtsLlhdJiZkW2wuWF0ubm9kZSlpZihmPDApbC5YYz1pcihjW2wuWF0pLGY9Y1tsLlhdW2NbbC5YXS5sZW5ndGgtMV07ZWxzZSBmb3Iobj1jW2wuWF0ubGVuZ3RoLTE7bj49MDstLW4paWYoY1tsLlhdW25dPD1mKXtsLlhjPWlyKGNbbC5YXS5zbGljZSgwLG4rMSkpO2Y9Y1tsLlhdW25dO2JyZWFrfWZvcihjPWU9MDtjPGEuaC5sZW5ndGg7KytjKXtkPQphLmhbY107Zj1hLmc7Zz1kO2g9Yi56ZTtrPWEuQTtsPSIiO2ZvcihuPTA7bjxnLlUubGVuZ3RoOysrbil7dmFyIHE9Zy5VW25dO2wrPXEuWjtpZihxLlg8MCl7dmFyIHA9LTEscj0tMSx0PWtbZy5VW24tMV0uWF07dCE9PXZvaWQgMCYmKHA9aFt0XSk7bjxnLlUubGVuZ3RoLTEmJih0PWtbZy5VW24rMV0uWF0sdCE9PXZvaWQgMCYmKHI9aFt0XSkpO2lmKHA+PTB8fHI+PTApYTppZih0PShwPDB8fHI8cCkmJm48Zy5VLmxlbmd0aC0xLHA9ZixyPXEscT1nLlVbdD9uKzE6bi0xXSwhKHEuWD49cC5sZW5ndGh8fHBbcS5YXS5ub2RlPT1udWxsKSl7cD1yLlo7ci5aPSIiO2lmKC9eICskLy50ZXN0KHApJiYocj10P3EuWi5jaGFyQ29kZUF0KDApOnEuWi5jaGFyQ29kZUF0KHEuWi5sZW5ndGgtMSksMzU4NDw9ciYmcjw9MzcxMXx8MTIyODg8PXImJnI8PTEyMzUxfHwxMjM1Mjw9ciYmcjw9MTI1NDN8fDEyNzg0PD1yJiZyPD0xMjc5OXx8MTk5Njg8PXImJnI8PTQwOTU5fHw2NTI4MDw9ciYmcjw9CjY1NTE5KSlicmVhayBhO3EuWj10P3ArcS5aOnEuWitwfX19Zj1sO2c9YS5nO2g9ZDtrPWEubztsPWIuemU7bj1hLkE7cT1bXTtmb3IocD0wO3A8aC5VLmxlbmd0aCYmIShlPj1rLmxlbmd0aCk7KytwKWlmKHI9aC5VW3BdLHIuWGMmJiEoci5YPDApJiZnW3IuWF0ubm9kZSYmci5aKWlmKGU9PW5bci5YXXx8ZSBpbiByLlhjJiYoIShlKzEgaW4gci5YYyl8fGUrMSE9bltyLlhdKSl7aWYoa1tlXSYma1tlXS5ub2RlKXt0PWV0KGtbZV0ubm9kZSk7cS5wdXNoKHQpO2Zvcih2YXIgQT1rW2VdLm5vZGUsRD1sW25bci5YXV0tbFtlXSxFPXQsYmE9Z1tyLlhdLm5vZGUucGFyZW50Tm9kZSxaPUU7YmEmJkQtLTspWj1iYS5jbG9uZU5vZGUoITEpLFouYXBwZW5kQ2hpbGQoRSksYmE9YmEucGFyZW50Tm9kZSxFPVo7QS5hcHBlbmRDaGlsZChaKTtBPWdbci5YXS5ub2RlO2dbci5YXS5yZD9nW3IuWF0uemZ8fHQuYXBwZW5kQ2hpbGQoQSk6KEE9Z1tyLlhdLm5vZGUuY2xvbmVOb2RlKCExKSxBLmlkJiYKKEEuaWQ9IiIpLHQuYXBwZW5kQ2hpbGQoQSkpO2dbci5YXS5LYShyLlosQSl9fWVsc2UrK2UsLS1wO2c9cTtuPWEuZztxPWQ7aD1hLkM7aWYocS5QZiloPXEuUGY7ZWxzZXtsPW4ubGVuZ3RoO2s9LTE7Zm9yKHA9MDtwPHEuVS5sZW5ndGg7KytwKXI9cS5VW3BdLlgscj49MCYmbltyXSYmbltyXS5ub2RlJiYoaz1NYXRoLm1heChrLHIpLGw9TWF0aC5taW4obCxyKSk7Zm9yKG49IiI7bDw9azsrK2wpaFtsXSYmKG4rPWhbbF0pO2g9bn1sPWE7bj1nO3E9aDtpZihsLkIpe2lmKGwuQi5nLmhjIT0zKXtnPWwuTztoPWcucHVzaDtrPWwuQjtkPWQuaGU7ZD1rLmxbKytrLkNdPXtpZDprLkMudG9TdHJpbmcoKSxSazpsLHRleHQ6cSxmbTpkfHxxLFo6ZixUaTprLkQsVmk6ay5GLEFhOm59O2ZvcihmPTA7ZjxuLmxlbmd0aDsrK2YpbltmXSYmay5hdHRhY2goZC5pZCxuW2ZdKTtrLmomJmsuai5hdHRhY2gobixxLmxlbmd0aCk7ay5BJiZrLkEuc3RhcnQoKTtoLmNhbGwoZyxkLmlkKX19ZWxzZSBmb3IoZD0KMDtkPG4ubGVuZ3RoOysrZCluW2RdLnRpdGxlPXF9Yj1hLmc7Zm9yKGM9MDtjPGIubGVuZ3RoOysrYyliW2NdLm5vZGUmJiFiW2NdLnJkJiZfLkFkKGJbY10ubm9kZSk7Yj1hLmc7Yz1hLm87YT1hLkE7Zm9yKGU9ZD0wO2U8Yy5sZW5ndGg7KytlKWlmKGY9Y1tlXS5ub2RlKXtmb3IoO2Q8Yi5sZW5ndGgmJmU+YVtkXTspZCsrOyhkPj1iLmxlbmd0aHx8ZSE9YVtkXSkmJiFmLmZpcnN0Q2hpbGQmJihfLkFkKGYpLGNbZV0ubm9kZT1udWxsKX19fX07Cmp0LnByb3RvdHlwZS5yZXN0b3JlPWZ1bmN0aW9uKCl7aWYodGhpcy5HKWlmKHRoaXMuRz0hMSx0aGlzLkImJiRzKHRoaXMuQiksdGhpcy5PPVtdLHB0KHRoaXMubyksdGhpcy5nLmxlbmd0aD09MSYmdGhpcy5nWzBdLnhlKXRoaXMuZ1swXS5LYSh0aGlzLkNbMF0sdGhpcy5nWzBdLm5vZGUpO2Vsc2V7Zm9yKHZhciBhPTAsYj0wO2I8dGhpcy5vLmxlbmd0aDsrK2Ipe3ZhciBjPXRoaXMub1tiXS5ub2RlO2lmKGMpe2Zvcig7YTx0aGlzLmcubGVuZ3RoJiZiPnRoaXMuQVthXTspe3ZhciBkPWErKzt0aGlzLmdbZF0ubm9kZSYmKHJ0KHRoaXMuZ1tkXS5ub2RlKSx0aGlzLmdbZF0ubm9kZT1udWxsKX1pZihhPHRoaXMuZy5sZW5ndGgmJmI9PXRoaXMuQVthXSYmdGhpcy5nW2FdLm5vZGUpe3RoaXMuZ1thXS56Znx8KF8uemQoYyksYy5hcHBlbmRDaGlsZCh0aGlzLmdbYV0ubm9kZSkpO3RoaXMuZ1thXS5LYSh0aGlzLkNbYV0sdGhpcy5nW2FdLm5vZGUpO2ErKzt2YXIgZT1jLnBhcmVudE5vZGU7CmlmKGUmJmUubm9kZVR5cGUhPTExKWlmKGMucmVtb3ZlTm9kZSljLnJlbW92ZU5vZGUoITEpO2Vsc2V7Zm9yKDtkPWMuZmlyc3RDaGlsZDspZS5pbnNlcnRCZWZvcmUoZCxjKTtfLkFkKGMpfX1lbHNlIF8uQWQoYyl9fXRoaXMubz1bXX19O2p0LnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7Xy5oYi5wcm90b3R5cGUuTS5jYWxsKHRoaXMpO3RoaXMucmVzdG9yZSgpO2Zvcih2YXIgYT0wO2E8dGhpcy5nLmxlbmd0aDsrK2EpdGhpcy5nW2FdLm5vZGUmJnJ0KHRoaXMuZ1thXS5ub2RlKTt0aGlzLmc9bnVsbH07CnZhciBodD1mdW5jdGlvbihhKXtpZihhKWlmKGEubm9kZVR5cGU9PTMmJl8uU2Mpe2x0IGluIGEucGFyZW50Tm9kZSYmYS5wYXJlbnROb2RlW2x0XXx8KGEucGFyZW50Tm9kZVtsdF09e30pO3ZhciBiPWEucGFyZW50Tm9kZVtsdF07YlthLm5vZGVWYWx1ZV18fChiW2Eubm9kZVZhbHVlXT1bXSk7Yj1iW2Eubm9kZVZhbHVlXTtmb3IodmFyIGM9MDtjPGIubGVuZ3RoOysrYylpZihiW2NdPT1hKXJldHVybjtiLnB1c2goYSl9ZWxzZSBhW2t0XT0xfSxydD1mdW5jdGlvbihhKXtpZighYXx8YS5ub2RlVHlwZT09MyYmXy5TYyl7dmFyIGI9YS5wYXJlbnROb2RlO2lmKGImJmx0IGluIGIpe3ZhciBjPWJbbHRdO2lmKGMmJmEmJmNbYS5ub2RlVmFsdWVdKXt2YXIgZD1jW2Eubm9kZVZhbHVlXTtpZihkKWZvcih2YXIgZT0wO2U8ZC5sZW5ndGg7KytlKWlmKGRbZV09PWEpe2Quc3BsaWNlKGUsMSk7YnJlYWt9ZC5sZW5ndGg9PTAmJmRlbGV0ZSBjW2Eubm9kZVZhbHVlXX1pZihjJiZ3cihjKSl0cnl7ZGVsZXRlIGJbbHRdfWNhdGNoKGYpe2JbbHRdPQoiIn19fWVsc2UgaWYoa3QgaW4gYSl0cnl7ZGVsZXRlIGFba3RdfWNhdGNoKGYpe2Fba3RdPSIifX0scHQ9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDsrK2IpdHJ5e2FbYl0ubm9kZSYmIWFbYl0ubm9kZS5wYXJlbnROb2RlJiYoYVtiXS5ub2RlPW51bGwpfWNhdGNoKGMpe2FbYl0ubm9kZT1udWxsfWZvcihiPWEubGVuZ3RoLTE7Yj49MCYmIWFbYl0ubm9kZTstLWIpO2EubGVuZ3RoPWIrMTtyZXR1cm4gYS5sZW5ndGh9LGV0PWZ1bmN0aW9uKGEpe2E9YS5vd25lckRvY3VtZW50P2Eub3duZXJEb2N1bWVudC5jcmVhdGVFbGVtZW50KCJmb250Iik6Xy53ZChkb2N1bWVudCwiZm9udCIpO2h0KGEpO2Euc3R5bGUudmVydGljYWxBbGlnbj0iaW5oZXJpdCI7Xy5vaShfLlppKHBxLDIpKSYmKGEuZGlyPSJhdXRvIik7cmV0dXJuIGF9LHN0PWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1uZXcgU2V0LGM9MDtjPGEuZy5sZW5ndGg7YysrKXt2YXIgZD1hLmdbY10ubm9kZTtkIT1udWxsJiYKYi5hZGQoZCl9cmV0dXJuIGJ9LHR0PWZ1bmN0aW9uKCl7dGhpcy5oPXt9O3RoaXMuZz17fX07dHQucHJvdG90eXBlLmhhcz1mdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmhbYV0hPW51bGx8fHRoaXMuZ1thXSE9bnVsbHx8YiYmKGEgaW4gdGhpcy5ofHxhIGluIHRoaXMuZyl9O3R0LnByb3RvdHlwZS53cml0ZT1mdW5jdGlvbihhLGIpe3RoaXMuZ1thXT1ifTt0dC5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGEpe2RlbGV0ZSB0aGlzLmdbYV07ZGVsZXRlIHRoaXMuaFthXX07dHQucHJvdG90eXBlLnJlYWQ9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5nW2FdO2J8fChiPXRoaXMuaFthXSx0aGlzLmdbYV09Yik7cmV0dXJuIGJ9O3ZhciBrdD0iX2d0XyIrTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyKDIpLGx0PSJfZ3RuXyIrTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyKDIpOwooZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGMpe2RvY3VtZW50LnRpdGxlPWN9dmFyIGI9e307Z3Q9ZnVuY3Rpb24oYyxkKXtpZihjLnRhZ05hbWU9PSJUSVRMRSIpcmV0dXJue25vZGU6YyxLYTphLHJkOiEwLHpmOiEwLHhlOiEwfTtpZihjLm5vZGVUeXBlPT0zKXJldHVybntub2RlOmMsS2E6ZnVuY3Rpb24oZSxmKXtfLkNkKGYsZSl9fTtkfHwoZD0idmFsdWUiKTtiW2RdfHwoYltkXT1mdW5jdGlvbihlLGYpe2Yuc2V0QXR0cmlidXRlJiZmLnNldEF0dHJpYnV0ZShkLGUpO3R5cGVvZiBlPT09InN0cmluZyImJihmW2RdPWUpfSk7Yz17bm9kZTpjLEthOmJbZF0scmQ6ITB9O2QhPSJ2YWx1ZSImJihjLnhlPSEwKTtyZXR1cm4gY319KSgpOwp2YXIgdXQ9ZnVuY3Rpb24oYSxiLGMsZCl7ZD1kLmZpcnN0Q2hpbGQmJmQuZmlyc3RDaGlsZC5ub2RlVHlwZT09Mz9kLmZpcnN0Q2hpbGQubm9kZVZhbHVlOkVvKGQpO2Q9e1g6YyxaOnBvKGQpfTthLnB1c2goZCk7YltjXT9iW2NdLmVuZD1kOmJbY109e3N0YXJ0OmQsZW5kOmR9O3JldHVybiBkfSx2dD1mdW5jdGlvbihhKXtmb3IodmFyIGIsYz1hLmZpcnN0Q2hpbGQ7YztjPWIpYj1jLm5leHRTaWJsaW5nLGMubm9kZVR5cGUhPTMmJihjPT1hLmZpcnN0Q2hpbGQ/YS5wYXJlbnROb2RlJiZhLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGMsYSk6eG8oYyxhKSx2dChjKSl9O3ZhciB3dD1mdW5jdGlvbigpe3RoaXMuZz1bXX07d3QucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhKXt0aGlzLmcucHVzaChhKX07dmFyIHh0PWZ1bmN0aW9uKCl7dGhpcy5nPVtdfTtfLkIoeHQsd3QpO3h0LnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSl7aWYoYSlmb3IoO2EoKTspO307eHQuZz1mdW5jdGlvbigpe3JldHVybiBXcSh4dCl9O3ZhciB6dD1mdW5jdGlvbihhKXt0aGlzLmc9W107dGhpcy5oPS41O3l0KHRoaXMsYSk7dGhpcy5sPTA7dGhpcy5qPSEwO3RoaXMubz0oMCxfLnkpKHRoaXMuQSx0aGlzKX07Xy5CKHp0LHd0KTt2YXIgeXQ9ZnVuY3Rpb24oYSxiKXtiPjE/YS5oPTE6YjwuMDAxP2EuaD0uMDAxOmImJihhLmg9Yil9O3p0LnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSl7d3QucHJvdG90eXBlLmFkZC5jYWxsKHRoaXMsYSk7dGhpcy5qJiZBdCh0aGlzKX07dmFyIEF0PWZ1bmN0aW9uKGEpe2Euaj0hMTt3aW5kb3cuc2V0VGltZW91dChhLm8sTWF0aC5taW4oYS5sLDVFMykpfTsKenQucHJvdG90eXBlLkE9ZnVuY3Rpb24oKXt2YXIgYT0obmV3IERhdGUpLmdldFRpbWUoKTtkb3t0aGlzLmcubGVuZ3RoJiYodGhpcy5nWzBdJiZ0aGlzLmdbMF0oKXx8dGhpcy5nLnNoaWZ0KCkpO3ZhciBiPSEhdGhpcy5nLmxlbmd0aDt2YXIgYz05NSp0aGlzLmgrNTt2YXIgZD0obmV3IERhdGUpLmdldFRpbWUoKS1hfXdoaWxlKGImJmQ8Yyk7dGhpcy5sPU1hdGguY2VpbChkKigxL3RoaXMuaC0xKSkrMTtiP0F0KHRoaXMpOnRoaXMuaj0hMH07dmFyIEJ0PWZ1bmN0aW9uKGEsYil7dGhpcy5EPWF8fG51bGw7dGhpcy5JPWJ8fHh0LmcoKTt0aGlzLkI9dGhpcy5BPXRoaXMuRz1udWxsO3RoaXMubD10aGlzLmo9ITE7dGhpcy5vPW51bGw7dGhpcy5nPVtdO3RoaXMuaD0wfSxDdD1mdW5jdGlvbihhLGIpe2Euanx8KGEuRz1iKX0sRHQ9ZnVuY3Rpb24oYSxiLGMpe2EuQT1jPygwLF8ueSkoYixjKTpifSxFdD1mdW5jdGlvbihhLGIsYyl7YS5CPWM/KDAsXy55KShiLGMpOmJ9LEZ0PWZ1bmN0aW9uKGEsYil7YS5qfHwoYS5qPSEwLGEuRj1iLGEuaCsrLGEubz1hLkcsYS5DKCkpfTtCdC5wcm90b3R5cGUuc3RvcD1mdW5jdGlvbigpe3RoaXMuaCsrO3RoaXMuaj0hMTt0aGlzLmc9W119Owp2YXIgR3Q9ZnVuY3Rpb24oYSl7aWYoIWEuailyZXR1cm4gbnVsbDtmb3IodmFyIGI9ITEsYz0wO2M8YS5nLmxlbmd0aDsrK2MpaWYoYS5nW2NdLnRhcmdldD09PWEpe2EuZ1tjXS5yZWFkeT0hMTthLmdbY10uaGc9YS5oKzE7Yj0hMDticmVha31ifHxhLmcucHVzaCh7dGFyZ2V0OmEscmVhZHk6ITEsaGc6YS5oKzF9KTtyZXR1cm4oMCxfLnkpKGEuQyxhLGEsYS5oKzEpfSxIdD1mdW5jdGlvbihhKXtpZighYS5qKXJldHVybiEwO2Zvcih2YXIgYj0wO2I8YS5nLmxlbmd0aDsrK2IpaWYoYS5nW2JdLnRhcmdldD09PWEmJmEuZ1tiXS5oZz09YS5oKXJldHVybiBhLmdbYl0ucmVhZHk7cmV0dXJuITB9OwpCdC5wcm90b3R5cGUuQz1mdW5jdGlvbihhLGIpe2lmKHRoaXMuail7aWYoYSlmb3IodmFyIGM9MDtjPHRoaXMuZy5sZW5ndGg7KytjKWlmKHRoaXMuZ1tjXS50YXJnZXQ9PT1hKXt0aGlzLmdbY10ucmVhZHk9ITA7YnJlYWt9dGhpcy5sfHx0aGlzLkkuYWRkKCgwLF8ueSkodGhpcy5XLHRoaXMsYnx8dGhpcy5oKSl9fTsKQnQucHJvdG90eXBlLlc9ZnVuY3Rpb24oYSl7aWYodGhpcy5oIT1hKXJldHVybiExO2E9dGhpcy5vO2lmKGE9PUl0KXJldHVybiB0aGlzLnN0b3AoKSx0aGlzLkEmJnRoaXMuQS5jYWxsKHRoaXMuRCx0aGlzLHRoaXMuRiksITE7dGhpcy5sPSEwO3RyeXt2YXIgYj1hLmNhbGwodGhpcy5ELHRoaXMsdGhpcy5GKTtpZighYil0aHJvdyBFcnJvcigpO31jYXRjaChjKXt0aGlzLnN0b3AoKTthPWM7aWYodGhpcy5CKXRoaXMuQi5jYWxsKHRoaXMuRCxhLHRoaXMsdGhpcy5GKTtlbHNlIHRocm93IGE7cmV0dXJuITF9ZmluYWxseXt0aGlzLmw9ITF9YiE9SnQmJih0aGlzLm89Yix0aGlzLmgrKyx0aGlzLkMoKSk7cmV0dXJuITF9O3ZhciBKdD1mdW5jdGlvbigpe30sSXQ9ZnVuY3Rpb24oKXt9O3ZhciBLdD1mdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGEuY2xhc3NOYW1lPT0ic3RyaW5nIj9hLmNsYXNzTmFtZTphLmdldEF0dHJpYnV0ZSYmYS5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIifSxMdD1mdW5jdGlvbihhLGIpe3R5cGVvZiBhLmNsYXNzTmFtZT09InN0cmluZyI/YS5jbGFzc05hbWU9YjphLnNldEF0dHJpYnV0ZSYmYS5zZXRBdHRyaWJ1dGUoImNsYXNzIixiKX0sTXQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5jbGFzc0xpc3Q/YS5jbGFzc0xpc3QuY29udGFpbnMoYik6Xy50YShhLmNsYXNzTGlzdD9hLmNsYXNzTGlzdDpLdChhKS5tYXRjaCgvXFMrL2cpfHxbXSxiKX0sTnQ9ZnVuY3Rpb24oYSxiKXtpZihhLmNsYXNzTGlzdClhLmNsYXNzTGlzdC5hZGQoYik7ZWxzZSBpZighTXQoYSxiKSl7dmFyIGM9S3QoYSk7THQoYSxjKyhjLmxlbmd0aD4wPyIgIitiOmIpKX19LE90PWZ1bmN0aW9uKGEsYil7YS5jbGFzc0xpc3Q/YS5jbGFzc0xpc3QucmVtb3ZlKGIpOk10KGEsYikmJgpMdChhLEFycmF5LnByb3RvdHlwZS5maWx0ZXIuY2FsbChhLmNsYXNzTGlzdD9hLmNsYXNzTGlzdDpLdChhKS5tYXRjaCgvXFMrL2cpfHxbXSxmdW5jdGlvbihjKXtyZXR1cm4gYyE9Yn0pLmpvaW4oIiAiKSl9O3ZhciBRdD1mdW5jdGlvbihhLGIsYyxkLGUpe2I9Ynx8e307dGhpcy5XPWV8fFtdO3RoaXMuQT1bXTt0aGlzLkY9W107UHQodGhpcyxhfHxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsYi5WZj09PXZvaWQgMHx8ISFiLlZmKTt0aGlzLkM9Y3x8anQ7dGhpcy5EPWIubGk7dGhpcy5qPXRoaXMuZz10aGlzLm89dGhpcy5kYz1udWxsO3RoaXMuQj0hIWIuYmo7dGhpcy5MPSEhYi5aaTt0aGlzLks9dGhpcy5CPzI3OjEzO3RoaXMuST0hMDt0aGlzLkc9W107dGhpcy5sPW5ldyBCdCh0aGlzLGQpfSxSdD1mdW5jdGlvbihhLGIsYyxkKXthLmwuanx8KGI9e2RnOmIsYWc6YyxBYTpbXSxRZjpbXSxyYjpbXSx0ZXh0TGVuZ3RoOjAsc2l6ZTowLGNvbnRpbnVvdXM6ITB9LGEuZGM9bnVsbCxDdChhLmwsYS5oKSxEdChhLmwsZCksRXQoYS5sLCgwLF8ueSkoZnVuY3Rpb24oZSl7dGhpcy51aShlKTtkKCl9LGEpKSxGdChhLmwsYikpfSxTdD1mdW5jdGlvbihhLGIpe3JldHVybiBhLkFhLmxlbmd0aD4wPwpuZXcgYihhLkFhLGEucmIuam9pbigiIiksYS5RZixhLnRleHRMZW5ndGgsYS5zaXplKTpudWxsfSxUdD1mdW5jdGlvbihhLGIpe2lmKCFhLmopcmV0dXJuIGEuZGM9U3QoYixhLkMpLCEwO2lmKCFiLmNvbnRpbnVvdXMmJmIuQWEubGVuZ3RoPjApcmV0dXJuIGEuZGM9U3QoYixhLkMpLCEwO2IuY29udGludW91cz1hLmouS2Y7YTp7dmFyIGM9YS5qO3ZhciBkPWEuSztpZihiLnNpemU+Yi5hZ3x8Yi50ZXh0TGVuZ3RoPmIuZGcpYz0hMTtlbHNle3ZhciBlPWMuc2l6ZSxmPWMudGV4dC5sZW5ndGg7aWYoYi5BYS5sZW5ndGghPTAmJihlKz1iLkFhLmxlbmd0aD09MT9iLnNpemUrZCtkOmIuc2l6ZStkLGYrPWIudGV4dExlbmd0aCxlPmIuYWd8fGY+Yi5kZykpe2M9ITE7YnJlYWsgYX1iLnNpemU9ZTtiLnRleHRMZW5ndGg9ZjtiLkFhLnB1c2goYy5ub2RlKTtiLlFmLnB1c2goYy50ZXh0KTtkPWIuQWEubGVuZ3RoLTE7ZD09MD9iLnJiLnB1c2goYy5MZCk6KGQ9PTEmJihiLnJiWzBdPSI8YSBpPTA+IisKYi5yYlswXSsiPC9hPiIpLGIucmIucHVzaCgiPGEgaT0iK2QrIj4iKSxiLnJiLnB1c2goYy5MZCksYi5yYi5wdXNoKCI8L2E+IikpO2M9ITB9fWlmKGMpcmV0dXJuIGEuaj1udWxsLCExO2EuZGM9U3QoYixhLkMpO3JldHVybiEwfSxVdD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bnQoYixjKTtkJiZfLkFjKGpvKGQpKSYmYS5HLnB1c2goe25vZGU6YixZZzpjLHRleHQ6ZH0pfTsKUXQucHJvdG90eXBlLmg9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzO2lmKHRoaXMuaiYmVHQodGhpcyxiKSlyZXR1cm4gSXQ7aWYoIXRoaXMuZyl7dGhpcy5JPSEhdGhpcy5BLmxlbmd0aDtpZighdGhpcy5BLmxlbmd0aCYmKGE9dGhpcy5HLnNoaWZ0KCkpKXJldHVybiB0aGlzLmo9e0tmOiExLG5vZGU6Z3QoYS5ub2RlLGEuWWcpLHRleHQ6YS50ZXh0LExkOmxvKGEudGV4dCksc2l6ZTp0aGlzLkI/Xy5HYihhLnRleHQpLmxlbmd0aDphLnRleHQubGVuZ3RofSxiLmNvbnRpbnVvdXM9ITEsVHQodGhpcyxiKSxJdDthPXRoaXMuQS5zaGlmdCgpfHx0aGlzLkYuc2hpZnQoKTtpZighYSlyZXR1cm4gdGhpcy5qPW51bGwsVHQodGhpcyxiKSxJdDt0aGlzLm89W2EuWWldO3RoaXMuZz1uZXcgZHMoYS5yb290KX10aGlzLmcubmV4dCgpO2lmKHRoaXMuZy5kb25lKXJldHVybiB0aGlzLmc9bnVsbCxiLmNvbnRpbnVvdXM9ITEsdGhpcy5oO2E9dGhpcy5nLm5vZGUoKTt2YXIgZD10aGlzLmcuZy5nOwppZihkPT0tMSlyZXR1cm4gVnQodGhpcyksV3QoYSl8fChiLmNvbnRpbnVvdXM9ITEpLHRoaXMuaDtYdCh0aGlzLGEpO2Q9ZD09MTt2YXIgZT0hIWEmJihhLm5vZGVUeXBlPT0zJiZ0eXBlb2YgYS5ub2RlVmFsdWU9PT0ic3RyaW5nInx8YS50YWdOYW1lPT0iVElUTEUiJiZ0eXBlb2YgYS52YWx1ZT09PSJzdHJpbmcifHxhLnRhZ05hbWU9PSJURVhUQVJFQSImJk10KGEsInRyYW5zbGF0ZSIpfHxhLnRhZ05hbWU9PSJJTlBVVCImJihZclthLnR5cGVdfHxNdChhLCJ0cmFuc2xhdGUiKSkpO2lmKChlfHxkKSYmdGhpcy5JJiYhWXQoYSkpcmV0dXJuIFB0KHRoaXMsYSxadCh0aGlzKSwhMCksYnModGhpcy5nLmcpLFZ0KHRoaXMpLHRoaXMuaDtpZihkJiZadCh0aGlzKSYmKHRoaXMuTCYmVXQodGhpcyxhLCJ0aXRsZSIpLFV0KHRoaXMsYSwiYWx0IiksVXQodGhpcyxhLCJwbGFjZWhvbGRlciIpLFV0KHRoaXMsYSwiYXJpYS1sYWJlbCIpLFV0KHRoaXMsYSwiYXJpYS1wbGFjZWhvbGRlciIpLFV0KHRoaXMsCmEsImFyaWEtcm9sZWRlc2NyaXB0aW9uIiksVXQodGhpcyxhLCJhcmlhLXZhbHVldGV4dCIpLGVzKHRoaXMuZykpKWZvcih2YXIgZj1hLmZpcnN0Q2hpbGQ7Zjspe2lmKGYubm9kZVR5cGU9PTMpe3ZhciBnPWYubm9kZVZhbHVlLnNwbGl0KCJcbiIpO2lmKGcubGVuZ3RoPjJ8fGcubGVuZ3RoPT0yJiZfLkFjKGdbMF0pIT0iIiYmXy5BYyhnWzFdKSE9IiIpe2Yubm9kZVZhbHVlPWdbMF07Zm9yKHZhciBoPTE7aDxnLmxlbmd0aDsrK2gpe3ZhciBrPV8uc2QoYSkuY3JlYXRlRWxlbWVudCgiZm9udCIpO3RoaXMuVy5wdXNoKGspO3hvKGssZik7Zj1rO3hvKF8uc2QoYSkuY3JlYXRlVGV4dE5vZGUoIlxuIitnW2hdKSxmKTtmPWYubmV4dFNpYmxpbmd9fX1mPWYubmV4dFNpYmxpbmd9YS5zaGFkb3dSb290JiZBcnJheS5mcm9tKGEuc2hhZG93Um9vdC5jaGlsZE5vZGVzKS5mb3JFYWNoKGZ1bmN0aW9uKHIpe1B0KGMscixadChjKSl9KTtpZihlKXticyh0aGlzLmcuZyk7aWYoWnQodGhpcykpe3ZhciBsPQpudChhKTtpZihfLkFjKGpvKGwpKSYmKHRoaXMuaj17S2Y6ITAsbm9kZTpndChhKSx0ZXh0OmwsTGQ6bG8obCksc2l6ZTp0aGlzLkI/Xy5HYihsKS5sZW5ndGg6bC5sZW5ndGh9LFR0KHRoaXMsYikpKXJldHVybiBWdCh0aGlzKSxJdH1WdCh0aGlzKTtyZXR1cm4gdGhpcy5ofWlmKGQpe2lmKCR0KGEpfHwhYS5maXJzdENoaWxkJiZhLnRhZ05hbWUhPSJJRlJBTUUiJiZhLnRhZ05hbWUhPSJSVUJZIilyZXR1cm4gYi5jb250aW51b3VzPWIuY29udGludW91cyYmISFYclthLnRhZ05hbWVdLGJzKHRoaXMuZy5nKSxWdCh0aGlzKSx0aGlzLmg7aWYoYS50YWdOYW1lPT0iUlVCWSIpe3RyeXtsPV8uQyhhLmNoaWxkTm9kZXMpO2Zvcih2YXIgbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBxPW4udmFsdWU7cS5ub2RlVHlwZSE9MyYmUHQodGhpcyxxLFp0KHRoaXMpKX19Y2F0Y2gocil7fWJzKHRoaXMuZy5nKTtWdCh0aGlzKTtyZXR1cm4gdGhpcy5ofWlmKGEudGFnTmFtZT09IklGUkFNRSIpe3RyeXtpZighYS5zcmMubWF0Y2goL2h0dHBzPzpcL1wvLyl8fApfLkNiKGEuc3JjLm1hdGNoKF8ucmYpWzNdfHxudWxsKT09d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lKXt2YXIgcD16byhhKS5kb2N1bWVudEVsZW1lbnQ7cCYmUHQodGhpcyxwLFp0KHRoaXMpKX19Y2F0Y2gocil7fWIuY29udGludW91cz0hMTticyh0aGlzLmcuZyk7VnQodGhpcyk7cmV0dXJuIHRoaXMuaH1adCh0aGlzKSYmV3QoYSk/dGhpcy5EJiZhLnRhZ05hbWU9PSJBIiYmYS5ocmVmJiZ0aGlzLkQoYSk6Yi5jb250aW51b3VzPSExO3JldHVybiB0aGlzLmh9YnModGhpcy5nLmcpO1Z0KHRoaXMpO3JldHVybiB0aGlzLmh9Owp2YXIgJHQ9ZnVuY3Rpb24oYSl7cmV0dXJuIG10KGEpfHxhLm5vZGVUeXBlIT0zJiYoIWEudGFnTmFtZXx8V3JbYS50YWdOYW1lXXx8WHJbYS50YWdOYW1lXXx8TXQoYSwic2tpcHRyYW5zbGF0ZSIpKX0sYXU9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5zZChhKTtyZXR1cm4gYi5kZWZhdWx0VmlldyYmYi5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlP2IuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShhLG51bGwpOmEuY3VycmVudFN0eWxlfSxZdD1mdW5jdGlvbihhKXtyZXR1cm4gYS5ub2RlVHlwZT09Mz8hMDphLm5vZGVUeXBlIT0xPyExOmEub2Zmc2V0V2lkdGgmJmEub2Zmc2V0SGVpZ2h0PyEwOihhPWF1KGEpLCEhYSYmYS5kaXNwbGF5IT0ibm9uZSImJmEudmlzaWJpbGl0eSE9ImhpZGRlbiIpfSxXdD1mdW5jdGlvbihhKXtpZihhLm5vZGVUeXBlPT0zKXJldHVybiEwO2lmKGEubm9kZVR5cGUhPTEpcmV0dXJuITE7dmFyIGI9YXUoYSk7cmV0dXJuISFWclthLnRhZ05hbWVdJiYKKCFifHwhYi5kaXNwbGF5fHxiLmRpc3BsYXk9PSJpbmxpbmUiKX0sUHQ9ZnVuY3Rpb24oYSxiLGMsZCl7KGQ/YS5GOmEuQSkucHVzaCh7cm9vdDpiLFlpOmM9PT12b2lkIDB8fGN9KX0sWnQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGEub1thLm8ubGVuZ3RoLTFdfSxYdD1mdW5jdGlvbihhLGIpe2I9IW10KGIpJiYoYi5ub2RlVHlwZT09JG4mJlp0KGEpfHwhKE10KGIsIm5vdHJhbnNsYXRlIil8fGIuYXR0cmlidXRlcyYmYi5hdHRyaWJ1dGVzLnRyYW5zbGF0ZSYmYi5hdHRyaWJ1dGVzLnRyYW5zbGF0ZS52YWx1ZT09Im5vIikmJihNdChiLCJ0cmFuc2xhdGUiKXx8ISFiLmF0dHJpYnV0ZXMmJiEhYi5hdHRyaWJ1dGVzLnRyYW5zbGF0ZSYmYi5hdHRyaWJ1dGVzLnRyYW5zbGF0ZS52YWx1ZT09InllcyJ8fFp0KGEpKSk7YS5vLnB1c2goYil9LFZ0PWZ1bmN0aW9uKGEpe2Euby5wb3AoKX0sYnU9e307RHIuYXR0YWNoKDU3NjIsUXQucHJvdG90eXBlLHt1aToxfSk7dmFyIGN1PWZ1bmN0aW9uKCl7Xy51LmNhbGwodGhpcyk7dGhpcy5nPVtdfTtfLkIoY3UsXy51KTtjdS5wcm90b3R5cGUucmVzdG9yZT1mdW5jdGlvbigpe3FzKHRoaXMuaCwwLHRoaXMpfTtjdS5wcm90b3R5cGUuaD1mdW5jdGlvbigpe2Zvcih2YXIgYT0wO2E8dGhpcy5nLmxlbmd0aDsrK2EpXy5BZCh0aGlzLmdbYV0pO3RoaXMuZz1bXX07Y3UucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtfLnUucHJvdG90eXBlLk0uY2FsbCh0aGlzKTt0aGlzLnJlc3RvcmUoKX07dmFyIGR1PWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBTZXQ7YS5mb3JFYWNoKGZ1bmN0aW9uKGMpe3lvKGMpP2IuYWRkKGMpOihjPWMucGFyZW50RWxlbWVudHx8bnVsbCxjIT1udWxsJiZiLmFkZChjKSl9KTtyZXR1cm4gYn07dmFyIGV1PWZ1bmN0aW9uKGEpe3RoaXMuaD0hMDt0aGlzLmw9YTt0aGlzLmo9ITE7dGhpcy5nPVtdfTtldS5wcm90b3R5cGUubWE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nLmpvaW4oIiIpfTt2YXIgZnU9ZnVuY3Rpb24oYSxiKXt0aGlzLm89YTt0aGlzLmw9ITA7dGhpcy5qPWI7dGhpcy5nPW51bGw7dGhpcy5oPTB9LGd1PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEubD8oYigoMCxfLnkpKGEuQSxhKSxhLm8sYS5qPyJlbiI6IiIpLCEwKTohMX07ZnUucHJvdG90eXBlLkE9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZz1iO3RoaXMuaD1jO2EoKX07dmFyIGh1PWZ1bmN0aW9uKGEsYil7dGhpcy5sPWE7dGhpcy5EPSEhYjt0aGlzLmc9dGhpcy5DPTA7dGhpcy5vPXRoaXMuaj0tMTt0aGlzLkE9dGhpcy5CPXRoaXMuaD0wfSxrdT1mdW5jdGlvbihhLGIsYyl7YS5EJiYoYi09OSk7Zm9yKHZhciBkPSIiLGU9MCxmPWEuQztmPGEubC5sZW5ndGg7KytmKXt2YXIgZz1hLmwuY2hhckF0KGYpLGg9Zy5jaGFyQ29kZUF0KDApO2UrKzthLmgrPWEuRD9oPD0xMjc/aDw9MzJ8fGl1W2hdPzM6MTpoPD0yMDQ3fHxoPj01NTI5NiYmaDw9NTYzMTl8fGg+PTU2MzIwJiZoPD01NzM0Mz82Ojk6MTtoPWEuaD49YjtqdVtnXT8oYS5vPWYsYS5CPWEuaCxoPWh8fGU+Yyk6Zz09IiAiJiYoYS5qPWYsYS5BPWEuaCxoPWh8fGU+Yyk7aWYoaClyZXR1cm4gYS5vPj0wPyhkPWEubC5zdWJzdHJpbmcoYS5nLGEubysxKSxhLmgtPWEuQixhLmc9YS5vKzEsYS5vPj1hLmo/KGEuaj0tMSxhLkE9MCk6YS5BLT1hLkIsYS5vPS0xLGEuQj0wKTphLmo+PTA/KGQ9YS5sLnN1YnN0cmluZyhhLmcsCmEuaisxKSxhLmgtPWEuQSxhLmc9YS5qKzEsYS5qPS0xLGEuQT0wKTooZD1hLmwuc3Vic3RyaW5nKGEuZyxmKzEpLGEuaD0wLGEuZz1mKzEsYS5vPWEuaj0tMSxhLkE9YS5CPTApLGEuQz1mKzEsZH1hLmc8YS5sLmxlbmd0aCYmKGQ9YS5sLnN1YnN0cmluZyhhLmcpLGEuZz1hLmwubGVuZ3RoKTtyZXR1cm4gZH0sanU9aXIoWyIuIiwiLCIsIjoiLCJcXD8iLCIhIl0pLGx1PVsiLiIsIj8iLCIhIl0saXU9aXIoWzM0LDM1LDM2LDM3LDM4LDQzLDQ0LDQ3LDU4LDU5LDYwLDYxLDYyLDYzLDY0LDkxLDkyLDkzLDk0LDk2LDEyMywxMjQsMTI1LDEyN10pO3ZhciB0bT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIodG0sXy5KKTt2YXIgbXU9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKG11LF8uSik7dmFyIG51PWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihudSxfLkopO3ZhciBvdT1bMSwyXTt2YXIgcHU9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKHB1LF8uSik7cHUucHJvdG90eXBlLlJhPWZ1bmN0aW9uKCl7cmV0dXJuIF8uZGoodGhpcywxKX07dmFyIHF1PV8uS2kocHUpO3ZhciBydTt2YXIgc3U9ZnVuY3Rpb24oKXt0aGlzLmhhPW5ldyBfLldmfSx0dT1mdW5jdGlvbihhLGIpe3ZhciBjLGQ7cmV0dXJuIF8uVmkoZnVuY3Rpb24oZSl7Yz1jbShhbSgkbChuZXcgWmwsImh0dHBzIiksYi5ob3N0KSxiLnBhdGgpO2Q9bmV3IFByb21pc2UoZnVuY3Rpb24oZixnKXtfLk5kKGEuaGEsInN1Y2Nlc3MiLGZ1bmN0aW9uKCl7Zih7Y29kZTpfLmhnKGEuaGEpLGhlYWRlcnM6TG4oYS5oYSksYm9keTpfLmlnKGEuaGEpfSl9KTtfLk5kKGEuaGEsImVycm9yIixmdW5jdGlvbigpe2coe2NvZGU6Xy5oZyhhLmhhKSxoZWFkZXJzOkxuKGEuaGEpLGJvZHk6Xy5pZyhhLmhhKX0pfSk7Xy5OZChhLmhhLCJ0aW1lb3V0IixmdW5jdGlvbigpe2coe2NvZGU6Xy5oZyhhLmhhKSxoZWFkZXJzOkxuKGEuaGEpLGJvZHk6Xy5pZyhhLmhhKX0pfSl9KTthLmhhLnNlbmQoYyxiLm1ldGhvZCxiLmJvZHksYi5oZWFkZXJzKTtyZXR1cm4gZS5yZXR1cm4oZCl9KX07dmFyIHJuPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihybixfLkopO3ZhciBxbj1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIocW4sXy5KKTt2YXIgcG49ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5mayhhLDEsYil9O3ZhciB3dT1mdW5jdGlvbihhKXt2YXIgYixjLGQsZSxmO3JldHVybiBfLlZpKGZ1bmN0aW9uKGcpe2lmKGcuZz09MSl7Yj1ydXx8KHJ1PXF1KCdbMixudWxsLFtbW1siYXV0b3B1c2giLFsiYXV0b3B1c2gtdHJhbnNsYXRlLXBhLnNhbmRib3guZ29vZ2xlYXBpcy5jb20iXV0sWyJzdGFnaW5nIixbImRhaWx5MS10cmFuc2xhdGUtcGEuc2FuZGJveC5nb29nbGVhcGlzLmNvbSJdXSxbInByb2QiLFsidHJhbnNsYXRlLXBhLmdvb2dsZWFwaXMuY29tIl1dLFsicHJvZC1ldSIsWyJ0cmFuc2xhdGUtcGEuZXUucmVwLmdvb2dsZWFwaXMuY29tIl1dLFsicHJvZC11cyIsWyJ0cmFuc2xhdGUtcGEudXMucmVwLmdvb2dsZWFwaXMuY29tIl1dXV1dXScpKTtjPW1xO25xJiYoYz1jKyItIitucSk7dmFyIGg9YnAoYixudSwzKTt2YXIgaz1oLko7az1JbChIbChrKSxrLHZvaWQgMCxvdSk7aD1icChoLG11LGs9PT0xPzE6LTEpO2s9aC5KO3ZhciBsPWtbXy5IXXwwO2g9dW0oaCxrLGwsXy5XZyhoLGwpKS5nZXQoYyk7CmQ9Xy5OKGgsMSk7aD1uZXcgJHA7az1zbShhLDEsXy5haigpKTtoPUdsKGgsMSxrLG5tKS5OYShhLkphKCkpLm5hKGEub2EoKSk7az1uZXcgYXE7aD1fLkwoaywxLGgpO2g9c24oaCwyLHRxKTtfLk0ocHEsNykmJl8uZWooaCw0LCEwKTtlPWg7Zy5GKDIpO3JldHVybiBnLmgodnUoZCxlKSw0KX1pZihnLmchPTIpcmV0dXJuIGY9Zy5qLGcucmV0dXJuKHRuKGYpKTtnLkQoKTtyZXR1cm4gZy5yZXR1cm4oUHJvbWlzZS5yZWplY3QoRXJyb3IoIkFhIikpKX0pfSx2dT1mdW5jdGlvbihhLGIpe3ZhciBjPXh1LGQsZSxmLGc7cmV0dXJuIF8uVmkoZnVuY3Rpb24oaCl7aWYoaC5nPT0xKXJldHVybiBkPXtob3N0OmEscGF0aDoiL3YxL3RyYW5zbGF0ZUh0bWwiLG1ldGhvZDoiUE9TVCIsaGVhZGVyczp7IlgtZ29vZy1hcGkta2V5IjoiQUl6YVN5QVRCWGFqdnpRTFRESEVRYmNwcTBJaGUwdldESG1PNTIwIiwiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbitwcm90b2J1ZiJ9LGJvZHk6Xy5XaihiKX0sCmU9Yy5nKCksaC5GKDIpLGguaCh0dShlLGQpLDQpO2lmKGguZyE9MilyZXR1cm4gZj1oLmosaC5yZXR1cm4oY3EoZi5ib2R5KSk7Zz1oLkQoKTtyZXR1cm4gaC5yZXR1cm4oUHJvbWlzZS5yZWplY3QoZykpfSl9O3ZhciB4dT1uZXcgZnVuY3Rpb24oKXt0aGlzLmc9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHN1fX0seXU9ZnVuY3Rpb24oYSl7dGhpcy5nPWF9LHp1PWZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlO3JldHVybiBfLlZpKGZ1bmN0aW9uKGYpe2lmKGYuZz09MSlyZXR1cm4gc20oYiwxLF8uYWooKSkubGVuZ3RoPT09MD9mLnJldHVybihuZXcgcW4pOl8uTShwcSw4KT9mLnJldHVybih3dShiKSk6Zi5oKGEuZy50cmFuc2xhdGUoY3x8ZnVuY3Rpb24oKXt9LHNtKGIsMSxfLmFqKF8uV2gpKSxiLkphKCksYi5vYSgpLDAsITEpLDIpO2Q9Zi5qO2U9ZC5tYXAodW4pO3JldHVybiBmLnJldHVybihwbihuZXcgcW4sZSkpfSl9O3ZhciBBdT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoQXUsXy5KKTt2YXIgQnU9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IEF1O3JldHVybiBHbChiLDEsYSxubSl9O0F1LnByb3RvdHlwZS5KYT1mdW5jdGlvbigpe3JldHVybiBfLk4odGhpcywyKX07QXUucHJvdG90eXBlLk5hPWZ1bmN0aW9uKGEpe3JldHVybiBzbih0aGlzLDIsYSl9O0F1LnByb3RvdHlwZS5vYT1mdW5jdGlvbigpe3JldHVybiBfLk4odGhpcywzKX07QXUucHJvdG90eXBlLm5hPWZ1bmN0aW9uKGEpe3JldHVybiBzbih0aGlzLDMsYSl9O3ZhciBDdT1mdW5jdGlvbihhLGIsYyxkLGUsZil7dGhpcy5CPWR8fGZ1bmN0aW9uKCl7fTt0aGlzLlA9Znx8ZnVuY3Rpb24oKXt9O3RoaXMuUj0hIWU7dGhpcy5qPWEuZy5JZjt0aGlzLmw9MDt0aGlzLkk9ZnVuY3Rpb24oKXt9O3RoaXMuRD1jO3RoaXMuRj10aGlzLmg9dGhpcy5vPTA7dGhpcy5nPW51bGw7dGhpcy5XPTA7dGhpcy5sYT0hMTt0aGlzLlQ9YS5nLkdmO3RoaXMuSz1bXTt0aGlzLnFiPTA7dGhpcy5MPWEuZy5LZDt0aGlzLkE9YS5sKCk7dGhpcy53YT10aGlzLlI/MTo2O3RoaXMuSWE9YS5nLldmO3RoaXMucWE9Yjt0aGlzLkM9W107dGhpcy5PPWF9O0N1LnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe2Zvcih2YXIgYT0wO2E8dGhpcy5DLmxlbmd0aDsrK2EpdGhpcy5DW2FdLnN0b3AoKTtmb3IoYT0wO2E8dGhpcy5LLmxlbmd0aDsrK2EpVHIodGhpcy5PLHRoaXMuS1thXSl9Owp2YXIgRHU9ZnVuY3Rpb24oYSxiKXt2YXIgYz0wO2EuST0oMCxfLnkpKGZ1bmN0aW9uKCl7KytjPT10aGlzLkMubGVuZ3RoJiZiKCl9LGEpfSxFdT1mdW5jdGlvbihhLGIsYyl7YS5CPWZ1bmN0aW9uKCl7fTthLnFhPWI7YS5nPW51bGw7YS5xYj0wO2EuQz1bXTthLkk9ZnVuY3Rpb24oKXt9O2EuRD1jfSxGdT1mdW5jdGlvbihhLGIsYyl7aWYoYS5oPT0wJiYoYS5oPWI/M0UzOmEuQSwhY3x8Yzw9YS5BKSl7YS5vPWEuaDtyZXR1cm59ZG8gYj1hLmgsYS5oPGEuQSYmKGEuaCo9YS53YSxhLmg+YS5BJiYoYS5oPWEuQSkpO3doaWxlKGIhPWEuaCYmYyYmYS5oPGMpO2Eubz1hLmh9LEd1PWZ1bmN0aW9uKGEsYil7dmFyIGM9YiE9bnVsbCxkPSFjJiYhYS5sYTsoZHx8YykmJmEuQigxMDAsZCxiKX0sSHU9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuTD9hLmcuUjphLmcubWEoKS5sZW5ndGh9LEl1PWZ1bmN0aW9uKGEsYixjLGQsZSl7cmV0dXJuIG5ldyBRdChhLnFhLnNoaWZ0KCkse2JqOmEuTCxsaTpiLApWZjohMCxaaTohIWN9LGZ1bmN0aW9uKCl7dmFyIGY9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTtyZXR1cm4gbmV3IGp0KGYuc2hpZnQoKSxmLnNoaWZ0KCksZi5zaGlmdCgpLGYuc2hpZnQoKSxmLnNoaWZ0KCksYyxkKX0sYS5ELGUpfSxLdT1mdW5jdGlvbihhLGIsYyl7aWYoYS5UPjAmJmIubGIoKT49YS5UKXJldHVybiEwO2lmKEh1KGEpPmEuaCl7aWYoYi5sYigpPjApcmV0dXJuITA7RnUoYSxjLEh1KGEpKTtmb3IodmFyIGQ9YS5nLm1hKCksZT1uZXcgaHUoZCxhLkwpLGY7Zj1rdShlLGEuaCxhLmopOylpZihsdS5pbmRleE9mKGYuY2hhckF0KGYubGVuZ3RoLTEpKTwwJiZiLksrKyxiLmwucHVzaChuZXcgZnUoW2ZdLCExKSksYS5sKz1mLmxlbmd0aCxhLmotPWYubGVuZ3RoLGEuajw9MCl7Yi5GPWQuc3Vic3RyaW5nKGUuZyk7YnJlYWt9ZWxzZSBGdShhLGMpO0p1KGIsYS5nLCEwKTthLmc9bnVsbDtyZXR1cm4hMH1pZihIdShhKT5hLm8pcmV0dXJuITA7SnUoYiwKYS5nLCEwKTthLm8tPUh1KGEpK2EuSWE7YS5sKz1hLmcuRDthLmotPWEuZy5EO2EuZz1udWxsO3JldHVybiExfSxMdT1mdW5jdGlvbihhKXtmb3IodmFyIGI9W10sYz17WmE6MH07Yy5aYTxhLmxlbmd0aDtjPXtaYTpjLlphfSxjLlphKyspYVtjLlphXS5sZW5ndGg+MSYmYVtjLlphXVsxXT09PTIwMD9iLnB1c2guYXBwbHkoYixfLiRiKGFbYy5aYV1bMF0udG9TdHJpbmcoKS5zcGxpdCgiJmx0O2V4dHJhX2lkXzEmZ3Q7IikubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm5bZS50cmltKCksYVtkLlphXVsxXV19fShjKSkpKTpiLnB1c2goYVtjLlphXSk7cmV0dXJuIGJ9LE11PWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGYsZyxoLGssbCxuO3JldHVybiBfLlZpKGZ1bmN0aW9uKHEpe3N3aXRjaChxLmcpe2Nhc2UgMTp2YXIgcD1wcTtpZihfLmJqKHAsaXEsNikpe3ZhciByPV8uYmoocCxpcSw2KSx0PV8uTShyLDEpO3A9Xy5NKHAsMyl8fHQ/KHQ/c20ociw0LF8uYWooKSk6CnNtKHAsNCxfLmFqKCkpKS5pbmNsdWRlcyhkLnRvTG93ZXJDYXNlKCkrIl8iK2UudG9Mb3dlckNhc2UoKSk6ITF9ZWxzZSBwPSExO2Y9cDtpZihmKXt2YXIgQT1BPT09dm9pZCAwPzNFMzpBO2lmKHA9Xy5iaihwcSxpcSw2KSlwPV8uYmoocHEsaXEsNikscD1fLk0ocCwxKTtpZihwKXtwPV8uYmoocHEsaXEsNik7QT1fLmdrKHAsMyk7cD1fLmdrKHAsMik7cj1bXTtmb3IodD0wO3Q8Yy5sZW5ndGg7dCsrKXt2YXIgRD1bY1t0XV0sRT1jW3RdLmxlbmd0aDtpZihjW3RdLnNwbGl0KCIgIikubGVuZ3RoPD1wKWZvcig7dCsxPGMubGVuZ3RoJiZFPEE7KUQucHVzaChjW3QrMV0pLEUrPWNbdCsxXS5sZW5ndGgrMisxOCx0Kys7ci5wdXNoKEQuam9pbigiICZsdDtleHRyYV9pZF8xJmd0OyAiKSl9QT1yfWVsc2V7cD1bXTtmb3Iocj0wO3I8Yy5sZW5ndGg7KXt0PVtdO2ZvcihFPTA7cjxjLmxlbmd0aDspe0Q9Y1tyXTt2YXIgYmE9RC5sZW5ndGg7RT10Lmxlbmd0aD09PTA/YmE6RSsyMCtiYTtpZihFPgpBJiZ0Lmxlbmd0aD4wKWJyZWFrO3QucHVzaChEKTtyKyt9dC5sZW5ndGg+MCYmcC5wdXNoKHQuam9pbigiICZsdDtleHRyYV9pZF8xJmd0OyAiKSl9QT1wfX1lbHNlIEE9YztnPUE7aD16dShuZXcgeXUoYS5PKSxCdShnKS5OYShkKS5uYShlKSxiKTtxLkYoMik7cmV0dXJuIHEuaChoLDQpO2Nhc2UgNDprPXEuajtsPXZuKGspO249Zj9MdShsKTpsO2IobiwyMDApO3EuSygzKTticmVhaztjYXNlIDI6cS5EKCksYihbXSw1MDApO2Nhc2UgMzpyZXR1cm4gYS5LLnB1c2goaCkscS5yZXR1cm4oaCl9fSl9O3ZhciBOdT1mdW5jdGlvbihhLGIpe18udS5jYWxsKHRoaXMpO3RoaXMubD1iO3RoaXMuaj17cm9vdE1hcmdpbjphfTt0aGlzLmc9bmV3IEludGVyc2VjdGlvbk9ic2VydmVyKCgwLF8ueSkodGhpcy5oLHRoaXMpLHRoaXMuail9O18uQihOdSxfLnUpO051LnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7Xy51LnByb3RvdHlwZS5NLmNhbGwodGhpcyk7dGhpcy5nPW51bGx9O051LnByb3RvdHlwZS5oPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wO2I8YS5sZW5ndGg7YisrKWlmKGFbYl0uaW50ZXJzZWN0aW9uUmF0aW8+MCl7dGhpcy5sKCk7YnJlYWt9fTtOdS5wcm90b3R5cGUudHJhY2s9ZnVuY3Rpb24oYSl7Sm8oYSwoMCxfLnkpKHRoaXMuZy5vYnNlcnZlLHRoaXMuZykpfTt2YXIgT3U9ZnVuY3Rpb24oYSl7dmFyIGI9YSE9bnVsbD9hOnt9LGM9Yi5JayxkPWIuS2ssZT1iLkVrLGY9Yi5MayxnPWIuSGssaD1iLkprLGs9Yi5GayxsPWIuR2s7YT1fLnlsKCk7IWwmJnNwKGMpPyhlPSEhZSxmPSEhZixiPWImJmIuUWssYz0oMCxfLnRsKShzcChjKT8iPHNjcmlwdCIrKGI/JyBub25jZT0iJytQKFlwKGIpKSsnIic6IiIpKyI+d2luZG93WydwcENvbmZpZyddID0ge3Byb2R1Y3ROYW1lOiAiK3ZwKFFwKGQhPW51bGw/ZDoidW5rbm93biIpKSsiLCBkZWxldGVJc0VuZm9yY2VkOiAiK3ZwKFFwKGUpKSsiLCBzZWFsSXNFbmZvcmNlZDogIit2cChRcChmKSkrIiwgaGVhcnRiZWF0UmF0ZTogIit2cChRcChnIT1udWxsP2c6LjUpKSsiLCBwZXJpb2RpY1JlcG9ydGluZ1JhdGVNaWxsaXM6ICIrdnAoUXAoaCE9bnVsbD9oOjZFNCkpKyIsIGRpc2FibGVBbGxSZXBvcnRpbmc6ICIrdnAoUXAoayE9bnVsbD9rOiExKSkrIn07Iit2cChRcChjIT1udWxsP2M6IiIpKSsiXHgzYy9zY3JpcHQ+IjoKIiIpKTpjPSIiO3JldHVybiBXbihhLGMpfTt2YXIgUHU9ZnVuY3Rpb24oYSl7cmV0dXJuKDAsXy50bCkoJzxzcGFuIGlkPSInK1AoYS5pZCkrJyI+PC9zcGFuPicpfSxRdT1mdW5jdGlvbihhKXt2YXIgYj1hLmlkLGM9YS5SZjtyZXR1cm4oMCxfLnRsKShLcChhLlNmKSsnPGRpdiBpZD0iJytQKGIpKyciPjwvZGl2PicrS3AoYykpfSxZbj1mdW5jdGlvbihhKXt2YXIgYj1hLnRvcCxjPWEubGVmdCxkPWEuYm90dG9tLGU9YS5yaWdodCxmPWEuaWQ7cmV0dXJuKDAsXy51bCkoIi4iK0FwKGEuY2xhc3NOYW1lKSsiIHt6LWluZGV4Ojk5OTk5OTk7IG92ZXJmbG93OnZpc2libGU7IHBvc2l0aW9uOmZpeGVkOyBfcG9zaXRpb246YWJzb2x1dGU7IisoYnx8Yj09PTA/InRvcDoiK0FwKGIpKyJweDsgX3RvcDpleHByZXNzaW9uKCgiK0FwKGIpKyIrKGhhY2sxPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3B8fGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wKSkrJ3B4Jyk7IjoidG9wOmF1dG87IikrKGN8fGM9PT0wPyJsZWZ0OiIrQXAoYykrCiJweDsgX2xlZnQ6ZXhwcmVzc2lvbigoIitBcChjKSsiKyhoYWNrMj1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsTGVmdHx8ZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0KSkrJ3B4Jyk7IjoibGVmdDphdXRvOyIpKyhkfHxkPT09MD8iYm90dG9tOiIrQXAoZCkrInB4OyBfdG9wOmV4cHJlc3Npb24oKC0iK0FwKGQpKyItZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJyIrU3RyaW5nKGYpLnJlcGxhY2UoUnAsR3ApKyInKS5vZmZzZXRIZWlnaHQrKGhhY2szPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHR8fGRvY3VtZW50LmJvZHkuY2xpZW50SGVpZ2h0KSsoaGFjazQ9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcHx8ZG9jdW1lbnQuYm9keS5zY3JvbGxUb3ApKSsncHgnKTsiOiJib3R0b206YXV0bzsiKSsoZXx8ZT09PTA/InJpZ2h0OiIrQXAoZSkrInB4OyBfbGVmdDpleHByZXNzaW9uKCgtIitBcChlKSsiLWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCciKwpTdHJpbmcoZikucmVwbGFjZShScCxHcCkrIicpLm9mZnNldFdpZHRoKyhoYWNrNT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGh8fGRvY3VtZW50LmJvZHkuY2xpZW50V2lkdGgpKyhoYWNrNj1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsTGVmdHx8ZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0KSkrJ3B4Jyk7IjoicmlnaHQ6YXV0bzsiKSsifSIpfSxSdT1mdW5jdGlvbigpe3JldHVybigwLF8udGwpKCc8ZGl2IGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtYVoyd0VlLXdPSE15ZiIpKyciPjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1hWjJ3RWUtT2lpQ08iKSsnIj48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1hWjJ3RWUiKSsnIiB3aWR0aD0iOTZweCIgaGVpZ2h0PSI5NnB4IiB2aWV3Qm94PSIwIDAgNjYgNjYiPjxjaXJjbGUgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1hWjJ3RWUtSnQ1Y0siKSsKJyIgZmlsbD0ibm9uZSIgc3Ryb2tlLXdpZHRoPSI2IiBzdHJva2UtbGluZWNhcD0icm91bmQiIGN4PSIzMyIgY3k9IjMzIiByPSIzMCIvPjwvc3ZnPjwvZGl2PjwvZGl2PicpfTt3bi54Yj12b2lkIDA7d24uZz1mdW5jdGlvbigpe3JldHVybiB3bi54Yj93bi54Yjp3bi54Yj1uZXcgd259O3duLnByb3RvdHlwZS5nPTA7Xy5HKHhuLF8uaGIpO18ubT14bi5wcm90b3R5cGU7Xy5tLmNpPXduLmcoKTtfLm0uUmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYXx8KHRoaXMubGE9IjoiKyh0aGlzLmNpLmcrKykudG9TdHJpbmcoMzYpKX07Xy5tLkg9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5DfTtfLm0ubmQ9ZnVuY3Rpb24oYSl7aWYodGhpcy5LJiZ0aGlzLkshPWEpdGhyb3cgRXJyb3IoIkNhIik7eG4uZWEubmQuY2FsbCh0aGlzLGEpfTtfLm0uUz1mdW5jdGlvbigpe3RoaXMuQz10aGlzLmguY3JlYXRlRWxlbWVudCgiRElWIil9O18ubS5rYT1mdW5jdGlvbihhKXtTdSh0aGlzLGEpfTtfLm0ucWM9ZnVuY3Rpb24oYSl7U3UodGhpcyxhLnBhcmVudE5vZGUsYSl9O3ZhciBTdT1mdW5jdGlvbihhLGIsYyl7aWYoYS5qYil0aHJvdyBFcnJvcigiRGEiKTthLkN8fGEuUygpO2I/Yi5pbnNlcnRCZWZvcmUoYS5DLGN8fG51bGwpOmEuaC5nLmJvZHkuYXBwZW5kQ2hpbGQoYS5DKTthLksmJiFhLksuamJ8fGEuTGEoKX07Cl8ubT14bi5wcm90b3R5cGU7Xy5tLmFoPWZ1bmN0aW9uKGEpe2lmKHRoaXMuamIpdGhyb3cgRXJyb3IoIkRhIik7aWYoYSl7dGhpcy53YT0hMDt2YXIgYj1fLnNkKGEpO3RoaXMuaCYmdGhpcy5oLmc9PWJ8fCh0aGlzLmg9Xy5sYihhKSk7dGhpcy5PYShhKTt0aGlzLkxhKCl9ZWxzZSB0aHJvdyBFcnJvcigiRWEiKTt9O18ubS5PYT1mdW5jdGlvbihhKXt0aGlzLkM9YX07Xy5tLkxhPWZ1bmN0aW9uKCl7dGhpcy5qYj0hMDtUdSh0aGlzLGZ1bmN0aW9uKGEpeyFhLmpiJiZhLkgoKSYmYS5MYSgpfSl9O18ubS5zYT1mdW5jdGlvbigpe1R1KHRoaXMsZnVuY3Rpb24oYSl7YS5qYiYmYS5zYSgpfSk7dGhpcy5PJiZfLlJmKHRoaXMuTyk7dGhpcy5qYj0hMX07Cl8ubS5NPWZ1bmN0aW9uKCl7dGhpcy5qYiYmdGhpcy5zYSgpO3RoaXMuTyYmKHRoaXMuTy5kaXNwb3NlKCksZGVsZXRlIHRoaXMuTyk7VHUodGhpcyxmdW5jdGlvbihhKXthLmRpc3Bvc2UoKX0pOyF0aGlzLndhJiZ0aGlzLkMmJl8uQWQodGhpcy5DKTt0aGlzLks9dGhpcy5DPXRoaXMuUj10aGlzLkY9bnVsbDt4bi5lYS5NLmNhbGwodGhpcyl9O3ZhciBTPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuUmEoKSsiLiIrYn0sVHU9ZnVuY3Rpb24oYSxiKXthLkYmJmEuRi5mb3JFYWNoKGIsdm9pZCAwKX07CnhuLnByb3RvdHlwZS5pZT1mdW5jdGlvbihhKXtmb3IodmFyIGI9W107dGhpcy5GJiZ0aGlzLkYubGVuZ3RoIT0wOyl7dmFyIGM9YixkPWMucHVzaCxlPXRoaXMuRj90aGlzLkZbMF18fG51bGw6bnVsbCxmPWE7aWYoZSl7dmFyIGc9dHlwZW9mIGU9PT0ic3RyaW5nIj9lOmUuUmEoKTt0aGlzLlImJmc/KGU9dGhpcy5SLGU9KGUhPT1udWxsJiZnIGluIGU/ZVtnXTp2b2lkIDApfHxudWxsKTplPW51bGw7aWYoZyYmZSl7dmFyIGg9dGhpcy5SO2cgaW4gaCYmZGVsZXRlIGhbZ107Xy52YSh0aGlzLkYsZSk7ZiYmKGUuc2EoKSxlLkMmJl8uQWQoZS5DKSk7Zj1lO2lmKGY9PW51bGwpdGhyb3cgRXJyb3IoIkJhIik7Zi5LPW51bGw7eG4uZWEubmQuY2FsbChmLG51bGwpfX1pZighZSl0aHJvdyBFcnJvcigiRmEiKTtkLmNhbGwoYyxlKX1yZXR1cm4gYn07dmFyIFV1PWZ1bmN0aW9uKCl7eG4uY2FsbCh0aGlzKX07Xy5CKFV1LHhuKTtVdS5wcm90b3R5cGUuUz1mdW5jdGlvbigpe3RoaXMuT2Eoa20oUnUpKX07VXUucHJvdG90eXBlLk9hPWZ1bmN0aW9uKGEpe3RoaXMuQz1hfTtVdS5wcm90b3R5cGUuc2hvdz1mdW5jdGlvbigpe050KHRoaXMuSCgpLCJWSXBnSmQtWlZpOW9kLWFaMndFZS13T0hNeWYtdGk2aEdjIik7TnQodGhpcy5IKCkuZmlyc3RDaGlsZCwiVklwZ0pkLVpWaTlvZC1hWjJ3RWUtT2lpQ08tdGk2aEdjIil9O3ZhciBWdT1mdW5jdGlvbihhKXtPdChhLkgoKSwiVklwZ0pkLVpWaTlvZC1hWjJ3RWUtd09ITXlmLXRpNmhHYyIpO090KGEuSCgpLmZpcnN0Q2hpbGQsIlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPLXRpNmhHYyIpfTt2YXIgV3U9ZnVuY3Rpb24oKXt0aGlzLmc9bmV3IFV1O3RoaXMuZy5TKCk7dGhpcy5nLmthKCk7dGhpcy5oPTB9O1d1LnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuaD0wO1Z1KHRoaXMuZyl9O3ZhciBYdT1XcShjciksWXU9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyxoKXt0aGlzLmw9YTt0aGlzLmc9Yjt0aGlzLkM9W107dGhpcy5GPW51bGw7dGhpcy5vPWM7dGhpcy5oPWQ7dGhpcy5qPWU7dGhpcy5xYT1mO3RoaXMuTz1nO3RoaXMuRD10aGlzLkE9bnVsbDt0aGlzLkI9aHx8bnVsbDt0aGlzLlc9dGhpcy5JPSExO3RoaXMuRz17fTt0aGlzLkw9WHU7dGhpcy5LPTB9LFp1PWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1uZXcgU2V0LGM9MDtjPGEubGVuZ3RoO2MrKylzdChhW2NdKS5mb3JFYWNoKGZ1bmN0aW9uKGQpe3JldHVybiBiLmFkZChkKX0pO3JldHVybiBifTsKWXUucHJvdG90eXBlLnRyYWNrVmlzaWJpbGl0eT1mdW5jdGlvbihhKXt0aGlzLkE9bmV3IE51KCIyMDBweCIsKDAsXy55KSh0aGlzLlIsdGhpcyxhKSk7dGhpcy5BLnRyYWNrKGR1KFp1KFtdLmNvbmNhdCh0aGlzLmcsdGhpcy5DKSkpKTt0aGlzLkQ9bmV3IE51KCIwcHgiLCgwLF8ueSkodGhpcy5QLHRoaXMpKTt0aGlzLkQudHJhY2soZHUoWnUoW10uY29uY2F0KHRoaXMuZyx0aGlzLkMpKSkpfTtZdS5wcm90b3R5cGUuUj1mdW5jdGlvbihhKXt0aGlzLkEmJih0aGlzLkEuZy5kaXNjb25uZWN0KCksdGhpcy5BPW51bGwpO2EoKX07WXUucHJvdG90eXBlLlA9ZnVuY3Rpb24oKXt0aGlzLkk9ITA7JHUodGhpcyk7aWYoIXRoaXMuVyYmdGhpcy5CKXt2YXIgYT10aGlzLkI7YS5oKys9PTAmJmEuZy5zaG93KCl9fTt2YXIgJHU9ZnVuY3Rpb24oYSl7YS5EJiYoYS5ELmcuZGlzY29ubmVjdCgpLGEuRD1udWxsKX07Cll1LnByb3RvdHlwZS5kb25lPWZ1bmN0aW9uKCl7aWYodGhpcy5JJiYhdGhpcy5XJiZ0aGlzLkIpe3ZhciBhPXRoaXMuQjstLWEuaD09MCYmVnUoYS5nKX10aGlzLkEmJih0aGlzLkEuZy5kaXNjb25uZWN0KCksdGhpcy5BPW51bGwpOyR1KHRoaXMpO2F2KHRoaXMpfTt2YXIgSnU9ZnVuY3Rpb24oYSxiLGMpe2M/KGEuZy5wdXNoKGIpLGEuR1tiLm1hKCldPSEwKTphLkMucHVzaChiKX07WXUucHJvdG90eXBlLmxiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy5sZW5ndGgrdGhpcy5DLmxlbmd0aH07dmFyIGJ2PWZ1bmN0aW9uKGEpe2lmKGEubC5sZW5ndGg9PTApe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmcubGVuZ3RoOysrYyliLnB1c2goYS5nW2NdLm1hKCkpO2EubC5wdXNoKG5ldyBmdShiLCExKSl9fTsKWXUucHJvdG90eXBlLnRyYW5zbGF0ZT1mdW5jdGlvbihhKXtmdW5jdGlvbiBiKCl7ZCsrO2Q9PWMmJmUoKX1idih0aGlzKTtmb3IodmFyIGM9MCxkPTAsZT1mdW5jdGlvbigpe30sZj10aGlzLm8sZz10aGlzLmgsaD10aGlzLmosaz0wO2s8dGhpcy5sLmxlbmd0aDsrK2spZ3UodGhpcy5sW2tdLGZ1bmN0aW9uKGwsbixxKXtyZXR1cm4gTXUoZixfLlpqKGwsYiksbixxfHxnLGgpfSkmJmMrKztjIT0wJiYoZT1HdChhKSk7cmV0dXJuIGN9O3ZhciBhdj1mdW5jdGlvbihhKXtpZihhLmcubGVuZ3RoPjApe2lmKGEuZy5sZW5ndGg9PTEmJmEubC5sZW5ndGg+MSl7dmFyIGI9MTt2YXIgYz1hLmwubGVuZ3RofWVsc2UgYj1jPWEuZy5sZW5ndGg7dmFyIGQ9YS5nLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gZS5EfSkucmVkdWNlKGZ1bmN0aW9uKGUsZil7cmV0dXJuIGUrZn0pO2hyKGEuTCx7bGI6YixNZjpjLGdnOmQsTGY6YS5LfSl9fTt2YXIgY3Y9e2FtOiJOb3RvIFNhbnMgRXRoaW9waWMiLGJlcjoiTm90byBTYW5zIFRpZmluYWdoIiwiYm0tTmtvbyI6Ik5vdG8gU2FucyBOS28iLGJuOiJMb2hpdCBCZW5nYWxpIixibzoiTm90byBTZXJpZiBUaWJldGFuIixkdjoiTm90byBTYW5zIFRoYWFuYSIsZHo6Ik5vdG8gU2VyaWYgVGliZXRhbiIsaXU6Ik5vdG8gU2FucyBDYW5hZGlhbiBBYm9yaWdpbmFsIixrbToiTm9rb3JhIixsbzoiRGh5YW5hIixtbDoiTm90byBTYW5zIE1hbGF5YWxhbSIsIm1uaS1NdGVpIjoiTm90byBTYW5zIE1lZXRlaSBNYXllayIsbXk6Ik5vdG8gU2FucyBNeWFubWFyIiwicGEtQXJhYiI6Ik5vdG8gTmFzdGFsaXEgVXJkdSIscHM6Ik5vdG8gTmFza2ggQXJhYmljIixzYXQ6Ik5vdG8gU2FucyBPbCBDaGlraSIsc2Q6Ik5vdG8gTmFza2ggQXJhYmljIixzaToiTm90byBTYW5zIFNpbmhhbGEiLHRhOiJMb2hpdCBUYW1pbCIseXVlOiJDaG9jb2xhdGUgQ2xhc3NpY2FsIFNhbnMifSxkdj17fSxldj0oZHZbIkNob2NvbGF0ZSBDbGFzc2ljYWwgU2FucyJdPQoiL2NzczI/ZmFtaWx5PUNob2NvbGF0ZStDbGFzc2ljYWwrU2FucyIsZHYuRGh5YW5hPSIvY3NzP2ZhbWlseT1EaHlhbmEiLGR2WyJMb2hpdCBCZW5nYWxpIl09Ii9jc3M/ZmFtaWx5PUxvaGl0K0JlbmdhbGkiLGR2WyJMb2hpdCBUYW1pbCJdPSIvY3NzP2ZhbWlseT1Mb2hpdCtUYW1pbCIsZHYuTm9rb3JhPSIvY3NzP2ZhbWlseT1Ob2tvcmEiLGR2WyJOb3RvIE5hc2toIEFyYWJpYyJdPSIvZWFybHlhY2Nlc3Mvbm90b25hc2toYXJhYmljLmNzcyIsZHZbIk5vdG8gTmFzdGFsaXEgVXJkdSJdPSIvZWFybHlhY2Nlc3Mvbm90b25hc3RhbGlxdXJkdS5jc3MiLGR2WyJOb3RvIFNhbnMgQ2FuYWRpYW4gQWJvcmlnaW5hbCJdPSIvZWFybHlhY2Nlc3Mvbm90b3NhbnNjYW5hZGlhbmFib3JpZ2luYWwuY3NzIixkdlsiTm90byBTYW5zIEV0aGlvcGljIl09Ii9lYXJseWFjY2Vzcy9ub3Rvc2Fuc2V0aGlvcGljLmNzcyIsZHZbIk5vdG8gU2FucyBNYWxheWFsYW0iXT0iL2Vhcmx5YWNjZXNzL25vdG9zYW5zbWFsYXlhbGFtLmNzcyIsCmR2WyJOb3RvIFNhbnMgTWVldGVpIE1heWVrIl09Ii9jc3M/ZmFtaWx5PU5vdG8rU2FucytNZWV0ZWkrTWF5ZWsiLGR2WyJOb3RvIFNhbnMgTXlhbm1hciJdPSIvZWFybHlhY2Nlc3Mvbm90b3NhbnNteWFubWFyLmNzcyIsZHZbIk5vdG8gU2FucyBOS28iXT0iL2Nzcz9mYW1pbHk9Tm90bytTYW5zK05LbyIsZHZbIk5vdG8gU2FucyBPbCBDaGlraSJdPSIvZWFybHlhY2Nlc3Mvbm90b3NhbnNvbGNoaWtpLmNzcyIsZHZbIk5vdG8gU2FucyBTaW5oYWxhIl09Ii9lYXJseWFjY2Vzcy9ub3Rvc2Fuc3NpbmhhbGEuY3NzIixkdlsiTm90byBTYW5zIFRoYWFuYSJdPSIvZWFybHlhY2Nlc3Mvbm90b3NhbnN0aGFhbmEuY3NzIixkdlsiTm90byBTYW5zIFRpZmluYWdoIl09Ii9lYXJseWFjY2Vzcy9ub3Rvc2Fuc3RpZmluYWdoLmNzcyIsZHZbIk5vdG8gU2VyaWYgVGliZXRhbiJdPSIvY3NzP2ZhbWlseT1Ob3RvK1NlcmlmK1RpYmV0YW4iLGR2KSxmdj1mdW5jdGlvbigpe3RoaXMuZz1bXX07CmZ2LnByb3RvdHlwZS5yZXN0b3JlPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPV8uQyh0aGlzLmcpLGI9YS5uZXh0KCk7IWIuZG9uZTtiPWEubmV4dCgpKWIudmFsdWUucmVtb3ZlKCk7dGhpcy5nPVtdfTt2YXIgZ3Y9ZnVuY3Rpb24oYSxiKXtfLnUuY2FsbCh0aGlzKTt0aGlzLmc9W107dGhpcy5sPVtdO3RoaXMuaD1hO3RoaXMuaj1ifTtfLkIoZ3YsXy51KTtndi5wcm90b3R5cGUubz1mdW5jdGlvbihhKXt2YXIgYj1fLkFjKGEuaHJlZik7Yi5pbmRleE9mKCJqYXZhc2NyaXB0OiIpPT0wfHxiLmluZGV4T2YoIiMiKT49MHx8KHRoaXMubC5wdXNoKGEuaHJlZiksdGhpcy5nLnB1c2goYSksYS5ocmVmPWIrIiNnb29ndHJhbnMvIit0aGlzLmgrIi8iK3RoaXMuail9O2d2LnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7Xy51LnByb3RvdHlwZS5NLmNhbGwodGhpcyk7dGhpcy5yZXN0b3JlKCl9O2d2LnByb3RvdHlwZS5yZXN0b3JlPWZ1bmN0aW9uKCl7aWYodGhpcy5nLmxlbmd0aCl7Zm9yKHZhciBhPTA7YTx0aGlzLmcubGVuZ3RoOysrYSl0aGlzLmdbYV0uaHJlZj10aGlzLmxbYV07dGhpcy5nPVtdO3RoaXMubD1bXX19O3ZhciBodj1mdW5jdGlvbihhLGIpe18udS5jYWxsKHRoaXMpO3RoaXMuZz1hO3RoaXMuaD1fLnhmLnRlc3QoYik/InRyYW5zbGF0ZWQtcnRsIjoidHJhbnNsYXRlZC1sdHIiO2E9W10uY29uY2F0KHRoaXMuZyk7Zm9yKGI9MDtiPGEubGVuZ3RoOysrYil5byhhW2JdKSYmTnQoYVtiXSx0aGlzLmgpfTtfLkIoaHYsXy51KTtodi5wcm90b3R5cGUuTT1mdW5jdGlvbigpe18udS5wcm90b3R5cGUuTS5jYWxsKHRoaXMpO3RoaXMucmVzdG9yZSgpfTtodi5wcm90b3R5cGUucmVzdG9yZT1mdW5jdGlvbigpe2Zvcih2YXIgYT1bXS5jb25jYXQodGhpcy5nKSxiPTA7YjxhLmxlbmd0aDsrK2IpeW8oYVtiXSkmJk90KGFbYl0sdGhpcy5oKX07dmFyIGl2PWZ1bmN0aW9uKGEsYixjKXt0aGlzLmc9M0UzO3RoaXMuaD1bXTt0aGlzLmo9bnVsbDt0aGlzLm89YTt0aGlzLkViPWI7dGhpcy5GYj1jO3RoaXMubD1hJiZ0eXBlb2YgYS5sPT09ImZ1bmN0aW9uIj9hLmwoKXx8MThFMzoxOEUzfSxrdj1mdW5jdGlvbihhLGIpe3ZhciBjLGQsZSxmLGcsaCxrLGwsbixxO3JldHVybiBfLlZpKGZ1bmN0aW9uKHApe3N3aXRjaChwLmcpe2Nhc2UgMTpjPWxvKGIpO2Q9W107aWYoYy5sZW5ndGg+YS5nKWZvcihlPW5ldyBodShjLCExKSxmPSIiO2Y9a3UoZSxhLmcpOylkLnB1c2goZiksYS5nPGEubCYmKGEuZyo9NixhLmc+YS5sJiYoYS5nPWEubCkpO2Vsc2UgZC5wdXNoKGMpO2c9W107aD1fLkMoZCk7az1oLm5leHQoKTtjYXNlIDI6aWYoay5kb25lKXtwLnhhKDQpO2JyZWFrfWw9ay52YWx1ZTtuPWc7cT1uLnB1c2g7cmV0dXJuIHAuaChqdihhLGwpLDUpO2Nhc2UgNTpxLmNhbGwobixwLmopO2s9aC5uZXh0KCk7cC54YSgyKTticmVhaztjYXNlIDQ6cmV0dXJuIHAucmV0dXJuKHBvKGcuam9pbigiIikpKX19KX0sCmp2PWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGMsZCl7YS5oLnB1c2goe3RleHQ6YixyZXNvbHZlOmMscmVqZWN0OmR9KTthLmp8fChhLmo9d2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXthLmZsdXNoKCl9LDUwKSl9KX07aXYucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKCl7dGhpcy5qPW51bGw7aWYodGhpcy5oLmxlbmd0aCE9PTApe3ZhciBhPXRoaXMuaDt0aGlzLmg9W107dmFyIGI9bmV3IHl1KHRoaXMubyk7YT1fLkMoYSk7Zm9yKHZhciBjPWEubmV4dCgpLGQ9e307IWMuZG9uZTtkPXtyYzp2b2lkIDB9LGM9YS5uZXh0KCkpZC5yYz1jLnZhbHVlLGM9QnUoW2QucmMudGV4dF0pLk5hKHRoaXMuRWIpLm5hKHRoaXMuRmIpLHp1KGIsYyxmdW5jdGlvbigpe30pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKGYpeyhmPXZuKGYpWzBdKSYmZlsxXT09PTIwMD9lLnJjLnJlc29sdmUoZlswXS50b1N0cmluZygpKTplLnJjLnJlamVjdCgiVHJhbnNsYXRpb24gZmFpbGVkIil9fShkKSkuY2F0Y2goZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKGYpe2UucmMucmVqZWN0KGYpfX0oZCkpfX07dmFyIGx2PWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCxrLGwpe18udS5jYWxsKHRoaXMpO3RoaXMuQz1hO3RoaXMuRmM9Yjt0aGlzLmxmPW5ldyBmdjt0aGlzLmZiPWN8fG51bGw7dGhpcy5JYT1sfHxudWxsO3RoaXMuSz1udWxsO3RoaXMuSWQ9ISFkO3RoaXMuamk9ZXx8InRyYW5zcGFyZW50Ijt0aGlzLmlpPSEhZjt0aGlzLkY9W107dGhpcy55Zj10aGlzLkk9dGhpcy5nPSExO3RoaXMubz1ofHxuZXcgdHQ7dGhpcy5EaT0haDt0aGlzLndhPWd8fHh0LmcoKTt0aGlzLlVlPW5ldyBjdTt0aGlzLkhiPXRoaXMuZ2I9dGhpcy5SPSExO3RoaXMuZGY9dGhpcy5BPS41O3RoaXMuamY9LjAxO3RoaXMuRD1uZXcgenQodGhpcy5BKTt0aGlzLmxhPSh0aGlzLkI9dGhpcy5yYT0hIWspP25ldyBNdXRhdGlvbk9ic2VydmVyKCgwLF8ueSkodGhpcy5RaCx0aGlzKSk6bnVsbDt0aGlzLkw9dGhpcy5YZT10aGlzLmo9dGhpcy5oPW51bGw7dGhpcy5QPTA7dGhpcy5PPW5ldyBNYXA7Xy54KHdpbmRvdywiYmx1ciIsCnRoaXMudGYsITAsdGhpcyk7Xy54KHdpbmRvdywiZm9jdXMiLHRoaXMudWYsITAsdGhpcyl9O18uQihsdixfLnUpO18ubT1sdi5wcm90b3R5cGU7Xy5tLkphPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaD90aGlzLmg6IiJ9O18ubS5vYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmo/dGhpcy5qOiIifTtfLm0uZ2g9ZnVuY3Rpb24oYSl7dGhpcy5vaS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dGhpcy5sJiZ0aGlzLmwoMCwhMSwxKX07Xy5tLmFmPWZ1bmN0aW9uKGEpe3RoaXMucGkuYXBwbHkodGhpcyxhcmd1bWVudHMpO3RoaXMubCYmdGhpcy5sKDAsITEsMSl9O18ubS5oaD1mdW5jdGlvbihhKXt0aGlzLnJpLmFwcGx5KHRoaXMsYXJndW1lbnRzKTt0aGlzLmwmJnRoaXMubCgwLCExLDEpfTtfLm0uaWg9ZnVuY3Rpb24oYSl7dGhpcy50aS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dGhpcy5sJiZ0aGlzLmwoMCwhMSwxKX07Cl8ubS50cmFuc2xhdGU9ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihkfHxhIT10aGlzLmh8fGIhPXRoaXMuailtdih0aGlzKSx0aGlzLkRpJiYodGhpcy5vPW5ldyB0dCk7ZWxzZSBpZih0aGlzLmcpcmV0dXJuO3RoaXMubD1jO3RoaXMuQWk9ZTt0aGlzLkI9dGhpcy5yYTt0aGlzLmxhJiZ0aGlzLmxhLm9ic2VydmUoZG9jdW1lbnQuYm9keSx7YXR0cmlidXRlczohMCxjaGlsZExpc3Q6ITAsY2hhcmFjdGVyRGF0YTohMCxzdWJ0cmVlOiEwfSk7dGhpcy5nPSEwO3RoaXMuaD1hO3RoaXMuaj1iO3RoaXMuSWQmJih0aGlzLks9bmV3IGd2KGEsYikpO3RoaXMuSGI9dGhpcy5oPT0iYXV0byI7dGhpcy5mYiYmKGM9dGhpcy5mYixhJiYoYy5EPWEpLGImJihjLkY9YikpO3RoaXMuWGI9bmV3IGh2KHRoaXMuQyx0aGlzLmopO2IgaW4gY3YmJihhPXRoaXMubGYsYiBpbiBjdiYmKGI9Y3ZbYl0sYz0iQGltcG9ydCB1cmwoIitXbygiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbSIpLnJlc29sdmUoV28oZXZbYl0pKS50b1N0cmluZygpKwoiKTsiLGM9eW4oYyksYS5nLnB1c2goYyksYj15bignYm9keSB7Zm9udC1mYW1pbHk6IicrYisnIiwiR29vZ2xlIFNhbnMiLCJOb3RvIFNhbnMiLHNhbnMtc2VyaWYgIWltcG9ydGFudH0nKSxhLmcucHVzaChiKSkpO18ub2koXy5aaShwcSw5KSk/KHRoaXMuWGU9bmV3IGl2KHRoaXMuRmMsdGhpcy5oLHRoaXMuaiksdGhpcy5QPTAsbnYodGhpcyksdGhpcy5QPT09MCYmdGhpcy5sJiZ0aGlzLmwoMTAwLCEwKSk6dGhpcy5HPW92KHRoaXMpOyhiPXRoaXMuQyBpbnN0YW5jZW9mIE5vZGU/dGhpcy5DOm51bGwpJiZwdihiLHRoaXMuail9Owp2YXIgb3Y9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IEJ0KGEsYS53YSk7Q3QoYixhLnNmKTtFdChiLCgwLF8ueSkoYS5naCxhKSk7RnQoYixuZXcgQ3UoYS5GYyxbXS5jb25jYXQoYS5DKSxhLndhLGEubCxhLkIsYS5BaSkpO3JldHVybiBifSxudj1mdW5jdGlvbihhKXthLkw9bmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGZ1bmN0aW9uKGIpe2IuZm9yRWFjaChmdW5jdGlvbihjKXtpZihjLmlzSW50ZXJzZWN0aW5nKXt2YXIgZD1jLmJvdW5kaW5nQ2xpZW50UmVjdDtkJiZkLndpZHRoPT09MCYmZC5oZWlnaHQ9PT0wfHwocXYoYSxjLnRhcmdldCksYS5MLnVub2JzZXJ2ZShjLnRhcmdldCkpfX0pfSk7W10uY29uY2F0KGEuQykuZm9yRWFjaChmdW5jdGlvbihiKXtydihhLGIpfSl9LHJ2PWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/ITA6YztpZighUXR8fCEkdChiKSl7YS5FZj09PXZvaWQgMCYmKGEuRWY9ISFkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdtZXRhW25hbWU9Imdvb2dsZSJdW2NvbnRlbnQ9Im5vdHJhbnNsYXRlIl0sIG1ldGFbbmFtZT0icm9ib3RzIl1bY29udGVudD0ibm90cmFuc2xhdGUiXSwgbWV0YVtuYW1lPSJnb29nbGUiXVt2YWx1ZT0ibm90cmFuc2xhdGUiXSwgbWV0YVtuYW1lPSJ0cmFuc2xhdGUiXVtjb250ZW50PSJubyJdJykpOwppZihhLkVmKWM9ITE7ZWxzZSBpZihiLm5vZGVUeXBlPT09Tm9kZS5FTEVNRU5UX05PREUpe3ZhciBkPSJub3RyYW5zbGF0ZSIsZT0idHJhbnNsYXRlIjtRdCYmYnUmJihkPSJub3RyYW5zbGF0ZSIsZT0idHJhbnNsYXRlIik7ZD1iLmNsYXNzTGlzdCYmYi5jbGFzc0xpc3QuY29udGFpbnMoZCl8fGIuZ2V0QXR0cmlidXRlJiZiLmdldEF0dHJpYnV0ZSgidHJhbnNsYXRlIik9PT0ibm8iO2U9Yi5jbGFzc0xpc3QmJmIuY2xhc3NMaXN0LmNvbnRhaW5zKGUpfHxiLmdldEF0dHJpYnV0ZSYmYi5nZXRBdHRyaWJ1dGUoInRyYW5zbGF0ZSIpPT09InllcyI7Yz1kPyExOmU/ITA6Y31pZihiLm5vZGVUeXBlPT09Tm9kZS5URVhUX05PREUpYyYmXy5BYyhiLnRleHRDb250ZW50KSYmYi5wYXJlbnRFbGVtZW50JiZhLkwub2JzZXJ2ZShiLnBhcmVudEVsZW1lbnQpO2Vsc2UgaWYoYi5jaGlsZE5vZGVzKWZvcihlPTA7ZTxiLmNoaWxkTm9kZXMubGVuZ3RoO2UrKylydihhLGIuY2hpbGROb2Rlc1tlXSwKYyl9fSxxdj1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz17fSxkPTA7ZDxiLmNoaWxkTm9kZXMubGVuZ3RoO2M9e2tiOnZvaWQgMH0sZCsrKWMua2I9Yi5jaGlsZE5vZGVzW2RdLGMua2Iubm9kZVR5cGU9PT1Ob2RlLlRFWFRfTk9ERSYmXy5BYyhjLmtiLnRleHRDb250ZW50KSYmKGEuUCsrLGEuTy5oYXMoYy5rYil8fGEuTy5zZXQoYy5rYixjLmtiLnRleHRDb250ZW50KSxrdihhLlhlLGMua2IudGV4dENvbnRlbnQpLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKGYpe2Uua2IudGV4dENvbnRlbnQ9Zn19KGMpKS5jYXRjaChmdW5jdGlvbigpe30pLmZpbmFsbHkoZnVuY3Rpb24oKXthLlAtLTthLlA9PT0wJiZhLmwmJmEubCgxMDAsITApfSkpfTtsdi5wcm90b3R5cGUucmVzdG9yZT1mdW5jdGlvbigpe212KHRoaXMpO3RoaXMuVWUucmVzdG9yZSgpO3ZhciBhPXRoaXMuQyBpbnN0YW5jZW9mIE5vZGU/dGhpcy5DOm51bGw7YSYmcHYoYSx0aGlzLkphKCkpfTsKbHYucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtfLnUucHJvdG90eXBlLk0uY2FsbCh0aGlzKTt0aGlzLnJlc3RvcmUoKTtfLlVkKHdpbmRvdywiYmx1ciIsdGhpcy50ZiwhMCx0aGlzKTtfLlVkKHdpbmRvdywiZm9jdXMiLHRoaXMudWYsITAsdGhpcyl9O3ZhciBzdj1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT13cihhLm8uaCksZj1uZXcgQnQoYSxiLkQpO2IuQy5wdXNoKGYpO0R0KGYsYi5JKTtGdShiLGUpO0N0KGYsZHx8YS5wZik7Yj1jfHxuZXcgWXUoW10sW10sYixhLkphKCksYS5vYSgpLGEueWYsYS5JLGEuSWEpO0V0KGYsYS5VaCxhKTthLkImJkR0KGYsYi5kb25lLGIpO0Z0KGYsYil9O18ubT1sdi5wcm90b3R5cGU7Xy5tLlVoPWZ1bmN0aW9uKGEsYixjKXtjLmRvbmUoKTt0aGlzLkk/dGhpcy5paChhKTp0aGlzLmhoKGEpO2Muby5JKCl9O18ubS51Zj1mdW5jdGlvbigpe3RoaXMuUj0hMTt0aGlzLlQ9MDt5dCh0aGlzLkQsdGhpcy5BKX07Cl8ubS50Zj1mdW5jdGlvbihhKXthLnRhcmdldD09d2luZG93JiYodGhpcy5SPSEwLHRoaXMuVD0wLHl0KHRoaXMuRCwuMDEpKX07Xy5tLlFoPWZ1bmN0aW9uKGEpe2lmKHRoaXMuZyYmdGhpcy5CKWlmKF8ub2koXy5aaShwcSw5KSkpZm9yKHZhciBiPTA7YjxhLmxlbmd0aDtiKyspe3ZhciBjPWFbYl0uYWRkZWROb2RlcztpZihjKWZvcih2YXIgZD0wO2Q8Yy5sZW5ndGg7ZCsrKXJ2KHRoaXMsY1tkXSl9ZWxzZXtmb3IoYj0wO2I8YS5sZW5ndGg7YisrKWlmKGFbYl0udGFyZ2V0JiZhW2JdLnRhcmdldC5jbGFzc05hbWUmJnR5cGVvZiBhW2JdLnRhcmdldC5jbGFzc05hbWU9PT0ic3RyaW5nIiYmKGFbYl0udGFyZ2V0LmNsYXNzTmFtZS5pbmRleE9mKCJ0cmFuc2xhdGUiKT49MHx8YVtiXS50YXJnZXQuY2xhc3NOYW1lLmluZGV4T2YoImdvb2ctIik9PTApKXJldHVybjt0aGlzLndhLmFkZCgoMCxfLnkpKHRoaXMuTWksdGhpcykpfX07Cl8ubS5NaT1mdW5jdGlvbigpe3RoaXMuST0hMDt0aGlzLkcmJih0aGlzLkcuc3RvcCgpLHRoaXMuRz1vdih0aGlzKSk7cmV0dXJuITF9O18ubS5zZj1mdW5jdGlvbihhLGIpe0R1KGIsR3QoYSkpO3N2KHRoaXMsYik7cmV0dXJuIHRoaXMuWWh9O18ubS5ZaD1mdW5jdGlvbihhLGIpe2lmKCF0aGlzLmcpcmV0dXJuIEl0O2lmKCFIdChhKSlyZXR1cm4gSnQ7aWYoIXRoaXMuQilmb3IoYT0wO2E8dGhpcy5GLmxlbmd0aDsrK2Epe3ZhciBjPWIsZD0oMCxfLnkpKHRoaXMuTWUsdGhpcyxiLHRoaXMuRlthXSk7Yy5ELmFkZChkKX1yZXR1cm4gdGhpcy5YaH07Cl8ubS5uZj1mdW5jdGlvbihhLGIpe2lmKHRoaXMuVCYmIXRoaXMuUil7YT0obmV3IERhdGUpLmdldFRpbWUoKS10aGlzLlQ7dmFyIGM9dGhpcy5BO2E8OTAwJiZjPi4wMT9jPU1hdGgubWF4KGMqLjksLjAxKTphPjExMDAmJmM8LjUmJihjPU1hdGgubWluKGMqMS41LC41KSk7dGhpcy5BPWM7dGhpcy5nYj90aGlzLmpmPS4wMTp0aGlzLmRmPXRoaXMuQX10aGlzLkk9dGhpcy5nPSEwO3RoaXMuVD0obmV3IERhdGUpLmdldFRpbWUoKTt0aGlzLkNpIT0oYT1kb2N1bWVudC5ib2R5LmlubmVyVGV4dHx8ZG9jdW1lbnQuYm9keS50ZXh0Q29udGVudHx8ZG9jdW1lbnQuYm9keS5pbm5lckhUTUwpPyh0aGlzLkNpPWEsYT0hMCk6YT0hMTthPyh0aGlzLmdiPSExLHRoaXMuQT10aGlzLmRmLHRoaXMuUnx8eXQodGhpcy5ELHRoaXMuQSksRXUoYixbXS5jb25jYXQodGhpcy5DKSx0aGlzLkQpLGE9bmV3IEJ0KHRoaXMsdGhpcy5EKSxDdChhLHRoaXMuc2YpLEV0KGEsKDAsXy55KSh0aGlzLmFmLHRoaXMpKSwKRnQoYSxiKSx0aGlzLkc9YSk6KHRoaXMuZ2I9ITAsdGhpcy5BPXRoaXMuamYsdGhpcy5SfHx5dCh0aGlzLkQsdGhpcy5BKSxhPW5ldyBCdCh0aGlzLHRoaXMuRCksQ3QoYSx0aGlzLm5mKSxFdChhLCgwLF8ueSkodGhpcy5hZix0aGlzKSksRnQoYSxiKSx0aGlzLkc9YSk7cmV0dXJuIEl0fTtfLm0uWGg9ZnVuY3Rpb24oYSxiKXtpZighdGhpcy5nKXJldHVybiBJdDt0aGlzLkk9dGhpcy5nPSExO3RoaXMuSGI/R3UoYiwhMCk6KEd1KGIpLGIuUChiLmwpKTtpZih0aGlzLmlpKXJldHVybiB0aGlzLm5mO2IuY2xlYXIoKTtyZXR1cm4gSXR9Owp2YXIgdXY9ZnVuY3Rpb24oYSxiLGMpe2E6e3ZhciBkPXR2KGEpLGU9YS5mYixmPWEuamksZz1hLlVlLmc7Yj1HdChiKTtpZighYy5HKXtpZihjLnFhLmxlbmd0aD09MCl7Yy5sPT0wJiZjLnFiPT0wJiZjLkIoMCwhMCk7Yz0hMTticmVhayBhfWMuRz1JdShjLGQsZSxmLGcpfWMucmE9ITA7UnQoYy5HLGMuaixjLmgsYik7Yz0hMH1yZXR1cm4gYz9hLnBmOmEuU2N9LHR2PWZ1bmN0aW9uKGEpe3JldHVybiBhLklkPygwLF8ueSkoYS5LLm8sYS5LKTpmdW5jdGlvbigpe319O18ubT1sdi5wcm90b3R5cGU7Cl8ubS5wZj1mdW5jdGlvbihhLGIpe2lmKCF0aGlzLmcpcmV0dXJuIEl0O3ZhciBjPWIubztpZihjLmc9PW51bGwpe2lmKCFjLnJhKXJldHVybiB1dih0aGlzLGEsYi5vKTtpZighSHQoYSkpcmV0dXJuIEp0O2MucmE9ITE7Yy5nPWMuRy5kY3x8bnVsbDt2YXIgZD1jLmc/Yy5nOmMuRz1udWxsO2lmKCFkKXJldHVybiB1dih0aGlzLGEsYi5vKTt0aGlzLkYucHVzaChkKTt2YXIgZT1kLm1hKCk7aWYodGhpcy5vLmhhcyhlLCF0aGlzLkIpfHxiLkdbZV0hPW51bGwmJmIuR1tlXSlyZXR1cm4gZT1jLmcuRCxjLmwrPWUsYy5qLT1lLGMuZz1udWxsLHRoaXMuQiYmSnUoYixkLCExKSx1dih0aGlzLGEsYi5vKTtlPXRoaXMubztkPWQubWEoKTtlLmdbZF09bnVsbH1iLmxiKCk+MCYmeXQodGhpcy5ELC41KTtyZXR1cm4gS3UoYyxiLHdyKHRoaXMuby5oKSk/dGhpcy5TYzp1dih0aGlzLGEsYi5vKX07Cl8ubS5TYz1mdW5jdGlvbihhLGIpe2lmKCF0aGlzLmd8fGIubGIoKT09MClyZXR1cm4gSXQ7c3YodGhpcyxiLm8pO3JldHVybiB0aGlzLkI/KGIudHJhY2tWaXNpYmlsaXR5KEd0KGEpKSx0aGlzLlpoKTpiLnRyYW5zbGF0ZShhKT09MD9JdDp0aGlzLnJmfTtfLm0uWmg9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdGhpcy5nP0h0KGEpP2IudHJhbnNsYXRlKGEpPT0wP0l0OnRoaXMucmY6SnQ6SXR9OwpfLm0uTWU9ZnVuY3Rpb24oYSxiKXtiLmomJnRoaXMuby5yZW1vdmUoYi5sKTtpZighdGhpcy5nKXJldHVybiExO2lmKHRoaXMuby5oYXMoYi5tYSgpLCExKSl7dmFyIGM9dGhpcy5vO2MuaGFzKGIubCwhMSk/KGIuaD1jLnJlYWQoYi5sKSxiLkw9ITApOihjLnJlbW92ZShiLmwpLGIuaj0hMCk7cXQoYil9ZWxzZSBpZihjPXRoaXMubyxiLmopYy5yZW1vdmUoYi5sKTtlbHNlIGlmKGIuRil7dmFyIGQ9Yi5GLnJlcGxhY2UoLzxhIC9nLCI8c3BhbiAiKS5yZXBsYWNlKC9cL2E+L2csIi9zcGFuPiIpO2IuTD0hMDtkZWxldGUgYi5GO2IuRj1udWxsO2IuaD1bXTt2YXIgZT1kb2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpLGY9ZS5jcmVhdGVFbGVtZW50KCJkaXYiKTttcChmLCExKTtkPWQuaW5kZXhPZigiPGk+Iik+PTA/ZDoiPGI+IitkKyI8L2I+IjtkPV8uS2IoZCk7ZD1fLm1sKGQpO2Yubm9kZVR5cGU9PT0xJiZNbChmKTtmLmlubmVySFRNTD1fLmtqKGQpOwplLmJvZHkuYXBwZW5kQ2hpbGQoZik7ZT1bXTtmb3IoZD1mLmZpcnN0Q2hpbGQ7ZDtkPWQubmV4dFNpYmxpbmcpaWYoZC50YWdOYW1lPT0iSSIpdmFyIGc9b3QoYixFbyhkKSxkLmlubmVySFRNTCk7ZWxzZSBpZihkLnRhZ05hbWU9PSJCIil7Z3x8KGc9b3QoYiwiIiwiIikpO2lmKGIuZy5sZW5ndGg9PTEpdXQoZy5VLGUsMCxkKTtlbHNle3ZhciBoPWU7dmFyIGs9ZDt2YXIgbD1iLmc7Zz1nLlU7Zm9yKHZhciBuPVtdLHE9ay5maXJzdENoaWxkO3E7cT1wKXt2YXIgcD1xLm5leHRTaWJsaW5nO3Z0KHEpfWZvcihwPWsuZmlyc3RDaGlsZDtwO3A9cC5uZXh0U2libGluZylwLmF0dHJpYnV0ZXMmJnAuYXR0cmlidXRlcy5pPyhrPXBhcnNlSW50KHAuYXR0cmlidXRlcy5pLm5vZGVWYWx1ZSwxMCksIWlzTmFOKGspJiZrPj0wJiZrPGwubGVuZ3RoJiYobFtrXS5yZCYmbltrXT9uW2tdLlorPXAuZmlyc3RDaGlsZCYmcC5maXJzdENoaWxkLm5vZGVUeXBlPT0zP3AuZmlyc3RDaGlsZC5ub2RlVmFsdWU6CkVvKHApOm5ba109dXQoZyxoLGsscCkpKTpwLm5vZGVUeXBlPT0zJiZnLnB1c2goe1g6LTEsWjpwbyhwLm5vZGVWYWx1ZSl9KTtnIT1udWxsJiZnLmxlbmd0aD4wJiZnWzBdLlg9PS0xJiYoZy5sZW5ndGg9PTE/Z1swXS5YPTA6KGdbMV0uWj1nWzBdLlorZ1sxXS5aLGcuc2hpZnQoKSkpfWc9dm9pZCAwfWQ9Yi5oO2ZvcihoPTA7aDxkLmxlbmd0aC0xOysraClsPWRbaF0sZz1rbyhsLlVbbC5VLmxlbmd0aC0xXS5aKSxnPWcuY2hhckNvZGVBdChnLmxlbmd0aC0xKSwxMjI4ODw9ZyYmZzw9MTIzNTF8fDY1MjgwPD1nJiZnPD02NTUxOXx8KGwuVVtsLlUubGVuZ3RoLTFdLlorPSIgIik7Xy5BZChmKTtmb3IoZj0wO2Y8Yi5nLmxlbmd0aDsrK2YpZjxlLmxlbmd0aCYmZjxiLkMubGVuZ3RoJiZlW2ZdIT1udWxsJiYoZD1iLkNbZl0saD1lW2ZdLnN0YXJ0LGghPW51bGwmJihsPWQuc3Vic3RyaW5nKDAsZC5sZW5ndGgtZC5yZXBsYWNlKC9eW1xzXHhhMF0rLywiIikubGVuZ3RoKSxsPT0iICImJgoobD0iIiksbCYmKGguWj1sK2guWi5yZXBsYWNlKC9eW1xzXHhhMF0rLywiIikpKSxoPWVbZl0uZW5kLGghPW51bGwmJihkPWQuc3Vic3RyaW5nKGtvKGQpLmxlbmd0aCksZD09IiAiJiYoZD0iIiksZCYmKGguWj1rbyhoLlopK2QpKSk7Yi5oLmxlbmd0aCE9MXx8Yi5oWzBdLmhlfHwoYi5oWzBdLmhlPWIubCk7Yy53cml0ZShiLmwsYi5oKTtxdChiKX1iLkl8fCh0aGlzLkhiPSExKTtjPWIuaj8hMDp2b2lkIDA7YS5XKz1iLkQ7YyE9bnVsbCYmKGEubGE9ITApO2I9TWF0aC5taW4oTWF0aC5mbG9vcihhLlcqMTAwL2EubCksMTAwKTtpZihhLkYhPWJ8fGMpYS5GPWIsYS5SPyhhLkIoYS5GLCEwLGMpLGEuUChhLlcpKTphLkIoYS5GLCExLGMpO3JldHVybiExfTsKXy5tLnJmPWZ1bmN0aW9uKGEsYil7aWYoIXRoaXMuZylyZXR1cm4gSXQ7aWYoIUh0KGEpKXJldHVybiBKdDtpZihiLmxiKCk+MSl7YT1iLmxbMF07dmFyIGM9Yi5nO2lmKGEuanx8Yy5sZW5ndGg9PTB8fGEuZz09bnVsbHx8YS5nLmxlbmd0aD09MClhPW51bGw7ZWxzZXtmb3IodmFyIGQ9W10sZT1bXSxmPTA7ZjxhLmcubGVuZ3RoJiZmPGMubGVuZ3RoOysrZil7dmFyIGc9YS5nW2ZdO2cmJmdbMF0mJmdbMV09PTIwMHx8KGUucHVzaChjW2ZdKSxkLnB1c2goYS5vW2ZdKSl9YT1lLmxlbmd0aD4wP3tOaTpuZXcgZnUoZCwhMCksT2k6ZX06bnVsbH1hPWE/bmV3IFl1KFthLk5pXSxhLk9pLGIubyxiLmgsYi5qLGIucWEsYi5PLGIuQik6bnVsbDthIT1udWxsJiZzdih0aGlzLGIubyxhLHRoaXMuU2MpfWVsc2V7YT0hMTtmb3IoYz0wO2M8Yi5sLmxlbmd0aDsrK2MpZD1iLmxbY10sZC5qfHxkLmg9PTIwMCYmZC5nJiZkLmdbMF0/ZD1kLmw9ITE6KGQuaj0hMCxkPWQubD0hMCksYT1kfHxhO2lmKGEpcmV0dXJuIHRoaXMuU2N9ZD0KdGhpcy5KYSgpO2E9dGhpcy5vYSgpO2lmKGIuZy5sZW5ndGg+MSlpZihjPWIubFswXSxlPWQ9PSJhdXRvIixkPWIuZyxjLmg9PTIwMClmb3IoZj0wO2Y8Yy5nLmxlbmd0aCYmZjxkLmxlbmd0aDsrK2YpaWYoKGc9Yy5nW2ZdKSYmZ1sxXT09MjAwKXt2YXIgaD1nWzJdLGs9ZFtmXSxsPWssbj1oIT1udWxsJiZoPT1hO2wuRj1nWzBdO24hPT12b2lkIDAmJihsLks9bik7ay5JPWUmJmg9PW51bGx9ZWxzZSBkW2ZdLmo9ITA7ZWxzZSBmb3IoYT0wO2E8ZC5sZW5ndGg7KythKWRbYV0uaj0hMDtlbHNle2M9bmV3IGV1KGQ9PSJhdXRvIik7Zm9yKGQ9MDtkPGIubC5sZW5ndGg7KytkKWY9Yi5sW2RdLGU9YSxmLmg9PTIwMCYmZi5nJiZmLmdbMF0/KGY9Zi5nWzBdLGMuZy5wdXNoKGZbMF0pLGY9ZlsyXSxjLmg9Yy5oJiZmIT1udWxsJiZmPT1lLGYhPW51bGwmJihjLmw9ITEpKTpjLmo9ITA7Yi5GIT1udWxsJiYoYy5nLnB1c2goYi5GKSxiLkY9bnVsbCk7aWYoYT1iLmdbMF0pZD1jLm1hKCksZT1jLmgsCmEuRj1kLGUhPT12b2lkIDAmJihhLks9ZSksYS5JPWMubCxhLmo9Yy5qfWlmKHRoaXMuQil7YT0oMCxfLnkpKHRoaXMuTWUsdGhpcyk7Zm9yKGM9MDtjPGIuZy5sZW5ndGg7YysrKWEoYi5vLGIuZ1tjXSk7Zm9yKGM9MDtjPGIuQy5sZW5ndGg7YysrKWEoYi5vLGIuQ1tjXSk7JHUoYik7Yi5XPSEwO2IuSSYmYi5CJiYoYj1iLkIsLS1iLmg9PTAmJlZ1KGIuZykpfXJldHVybiBJdH07CnZhciBtdj1mdW5jdGlvbihhKXthLmxhJiZhLmxhLmRpc2Nvbm5lY3QoKTthLklhJiZhLklhLnJlc2V0KCk7YS5nJiYoYS5HJiZhLkcuc3RvcCgpLGEuZz0hMSxhLkk9ITEpO2lmKGEuRi5sZW5ndGgpe2Zvcih2YXIgYj0wO2I8YS5GLmxlbmd0aDsrK2IpYS5GW2JdLmRpc3Bvc2UoKTthLkY9W119YS5LIT1udWxsJiYoYS5LLnJlc3RvcmUoKSxhLks9bnVsbCk7YS5YYiE9bnVsbCYmKGEuWGIucmVzdG9yZSgpLGEuWGI9bnVsbCk7YS5PJiZhLk8uc2l6ZT4wJiYoYS5PLmZvckVhY2goZnVuY3Rpb24oYyxkKXtkLnRleHRDb250ZW50PWN9KSxhLk8uY2xlYXIoKSk7YS5MJiYoYS5MLmRpc2Nvbm5lY3QoKSxhLkw9bnVsbCk7YS5sZi5yZXN0b3JlKCl9LHB2PWZ1bmN0aW9uKGEsYil7YS5nZXRBdHRyaWJ1dGUoInhtbDpsYW5nIikmJmEuc2V0QXR0cmlidXRlKCJ4bWw6bGFuZyIsYik7YS5nZXRBdHRyaWJ1dGUoImxhbmciKSYmYS5zZXRBdHRyaWJ1dGUoImxhbmciLGIpfTsKRHIuYXR0YWNoKDMwNDYsbHYucHJvdG90eXBlLHtvaToxLHJpOjIscGk6Myx0aTo0fSk7dmFyIHZ2PVdxKGNyKSx3dj1mdW5jdGlvbihhLGIsYyxkLGUsZixnLGgsayxsLG4pe18udS5jYWxsKHRoaXMpO3RoaXMuTz1ifHxudWxsO3RoaXMuSz0hIWM7dGhpcy5HPWR8fCJ0cmFuc3BhcmVudCI7dGhpcy5EPWZ8fCIiO2I9Z3x8e2ZldGNoU3RhcnQ6MCxTazowfTthPWIuZmV0Y2hTdGFydHx8MDtiPWIuZmV0Y2hFbmR8fDA7dGhpcy5GPWEmJmI/Yi1hOjA7dGhpcy5SPURhdGUubm93KCktcnE7dGhpcy5BPSExO3RoaXMuZz1uZXcgUnIoZXx8IiIsdm9pZCAwLGYsbik7dGhpcy5JPW5ldyB6dCgxKTt0aGlzLkI9bmV3IHR0O3RoaXMubD1udWxsO3RoaXMuQz0hMDt0aGlzLm89Xy52LkludGVyc2VjdGlvbk9ic2VydmVyIT1udWxsO3RoaXMuTD1ofHxudWxsO2U9bmV3IGpyO2Y9bmV3IGxyKHRoaXMuZy5pbml0aWFsaXplLmJpbmQodGhpcy5nLGUucmVnaXN0ZXIoKSkpO3RoaXMuemM9bXIoZixlLmRlbGF5KCgwLF8ueSkodGhpcy56Yyx0aGlzKSkpO3RoaXMuUGM9bXIoZixlLmRlbGF5KCgwLF8ueSkodGhpcy5QYywKdGhpcykpKTt0aGlzLnFkPW1yKGYsZS5kZWxheSgoMCxfLnkpKHRoaXMucWQsdGhpcykpKTt0aGlzLnJlc3RvcmU9bXIoZixlLmRlbGF5KCgwLF8ueSkodGhpcy5yZXN0b3JlLHRoaXMpKSk7Zi5maW5pc2goKTtlLmZpbmlzaCgpO3BlcmZvcm1hbmNlJiZwZXJmb3JtYW5jZS5tYXJrJiZwZXJmb3JtYW5jZS5tYXJrKFJxLHZvaWQgMCk7ZT1kcih2diwxKTtmPW5ldyBRbjtmPV8uVGooZiwxLHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pO2E6e2lmKHBlcmZvcm1hbmNlJiYoaD1wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIiksaC5sZW5ndGg9PTEpKXtoPWhbMF07YnJlYWsgYX1oPW51bGx9aCYmKG49bmV3IEZtLG49Xy5UaihuLDEsIiIpLGE9R20oaC5zdGFydFRpbWUpLG49Xy5MKG4sMixhKSxhPUhtKGguZHVyYXRpb24pLG49Xy5MKG4sMyxhKSxhPW5ldyBQbixhPV8uVGooYSwxLGguaW5pdGlhdG9yVHlwZSksYT1fLlRqKGEsMixoLm5leHRIb3BQcm90b2NvbCksCmI9R20oaC53b3JrZXJTdGFydHx8MCksYT1fLkwoYSwzLGIpLGI9R20oaC5yZWRpcmVjdFN0YXJ0KSxhPV8uTChhLDQsYiksYj1HbShoLnJlZGlyZWN0U3RhcnQpLGE9Xy5MKGEsNCxiKSxiPUdtKGgucmVkaXJlY3RFbmQpLGE9Xy5MKGEsNSxiKSxiPUdtKGguZmV0Y2hTdGFydCksYT1fLkwoYSw2LGIpLGI9R20oaC5kb21haW5Mb29rdXBTdGFydCksYT1fLkwoYSw3LGIpLGI9R20oaC5kb21haW5Mb29rdXBFbmQpLGE9Xy5MKGEsOCxiKSxiPUdtKGguY29ubmVjdFN0YXJ0KSxhPV8uTChhLDksYiksYj1HbShoLmNvbm5lY3RFbmQpLGE9Xy5MKGEsMTAsYiksYj1HbShoLnNlY3VyZUNvbm5lY3Rpb25TdGFydCksYT1fLkwoYSwxMSxiKSxiPUdtKGgucmVzcG9uc2VTdGFydCksYT1fLkwoYSwxMyxiKSxiPUdtKGgucmVzcG9uc2VFbmQpLGE9Xy5MKGEsMTQsYiksYT1fLmprKGEsMTUsaC50cmFuc2ZlclNpemUpLGE9Xy5qayhhLDE2LGguZW5jb2RlZEJvZHlTaXplKSxhPV8uamsoYSwxNyxoLmRlY29kZWRCb2R5U2l6ZSksCm49Sm0obiw2LGEpLF8uTChmLDMsbiksbj1ObShScSkpJiYoaD1PbShVcSx7c3RhcnQ6aC5yZXNwb25zZUVuZCxlbmQ6bi5zdGFydFRpbWV8fHBlcmZvcm1hbmNlLm5vdygpfSkpJiYocGVyZm9ybWFuY2UmJnBlcmZvcm1hbmNlLmNsZWFyTWVhc3VyZXMmJnBlcmZvcm1hbmNlLmNsZWFyTWVhc3VyZXMoVXEpLGg9S20oaCksXy5MKGYsNCxoKSxoPVVuKGUpLF8uTChoLDQsZikpO2ZyKGUsMSl9O18uRyh3dixfLnUpO0RyLmF0dGFjaCgxNDA5Nyx3di5wcm90b3R5cGUse2JlOmZ1bmN0aW9uKCl7UW0odGhpcy5nLlRhKCk/InRlX2FmYXMiOiJ0ZV9hZmF1Iil9fSk7Xy5tPXd2LnByb3RvdHlwZTtfLm0uUGk9ZnVuY3Rpb24oYSl7dGhpcy5vPWF9O18ubS5TYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcuVGEoKX07Cl8ubS56Yz1mdW5jdGlvbihhLGIpe3RoaXMuZy5TYSgpP3RoaXMuZy5vLnNlbmQoe2Rpc3BsYXlfbGFuZ3VhZ2U6YixrZXk6IkFJemFTeUJXRGowUUp2Vkl4OFhPaFJlZ1hYNV9TclJXeGhUNUhzNCJ9LGEpLnRoZW4oZnVuY3Rpb24oYyl7cmV0dXJuIGEoYyl9KToodGhpcy5iZSgpLGEobnVsbCkpfTsKXy5tLlBjPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5sYW5nO2lmKGIpYShiKTtlbHNlIGlmKHRoaXMuZy5TYSgpKXtiPW5ldyBhcyhkb2N1bWVudC5ib2R5LCExLCExLDEsMSk7Zm9yKHZhciBjPVtdLGQ9MCxlPXRoaXMuZy5oLkhmO2MubGVuZ3RoK2Q8ZTspe3ZhciBmPWIubmV4dCgpO2lmKGYuZG9uZSlicmVhaztmPWYudmFsdWU7Yi5nPT0xJiYkdChmKT9icyhiKTpmLm5vZGVUeXBlPT0zJiYoZj1fLkFjKGpvKGYubm9kZVZhbHVlKSkpJiYoYy5wdXNoKGYpLGQrPWYubGVuZ3RoKX1Tcih0aGlzLmcsYSxjLmpvaW4oIiAiKSkudGhlbihmdW5jdGlvbihnKXthKGcpfSxmdW5jdGlvbihnKXtyZXR1cm4gYShudWxsLGcpfSl9ZWxzZSB0aGlzLmJlKCksYShudWxsLCEwKX07Cl8ubS5xZD1mdW5jdGlvbihhLGIsYyxkLGUpe3Z2LkViPWE7dnYuRmI9Yjt2YXIgZj1kcih2diwyKTtlcih2dixmKTt2YXIgZz1ObShScSk7aWYoZyl7dmFyIGg9Tm0oU3EpO2lmKGgpe3ZhciBrPU9tKFZxLHtzdGFydDpnLnN0YXJ0VGltZSxlbmQ6aC5zdGFydFRpbWV8fHBlcmZvcm1hbmNlLm5vdygpfSk7ayYmKGc9VW4oZiksaD1uZXcgU24saz1LbShrKSxoPV8uTChoLDEsayksXy5MKGcsNSxoKSxwZXJmb3JtYW5jZSYmcGVyZm9ybWFuY2UuY2xlYXJNZWFzdXJlcyYmcGVyZm9ybWFuY2UuY2xlYXJNZWFzdXJlcyhWcSkpfX1mcihmLDIpO2Y9e2RldGFpbDp7c291cmNlTGFuZ3VhZ2U6YSx0YXJnZXRMYW5ndWFnZTpifX07cGVyZm9ybWFuY2UmJnBlcmZvcm1hbmNlLm1hcmsmJnBlcmZvcm1hbmNlLm1hcmsoU3EsZik7Zj1EYXRlLm5vdygpO0NyKCk7aWYoIWF8fHhyKGEsYikpYT0iYXV0byI7aWYoZXx8YSE9dGhpcy5ofHxiIT10aGlzLmopdGhpcy5CPW5ldyB0dDt0aGlzLmg9YTt0aGlzLmo9CmI7dGhpcy5nLlNhKCk/KGQ9ZHx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHRoaXMubCYmdGhpcy5sLmRpc3Bvc2UoKSx0aGlzLmw9bmV3IGx2KGQsdGhpcy5nLHRoaXMuTyx0aGlzLkssdGhpcy5HLCEwLHRoaXMuSSx0aGlzLkIsdGhpcy5vLHRoaXMuTCksdGhpcy5sLnlmPXRoaXMuQSx0aGlzLkM9ITAsdGhpcy5sLnRyYW5zbGF0ZShhLGIsYyxlLCgwLF8ueSkodGhpcy55aSx0aGlzLGYsYSxiKSkpOih0aGlzLmJlKCksYygwLCExLCEwKSl9O18ubS5wZz1mdW5jdGlvbigpe3JldHVybiEhdGhpcy5sJiZ0aGlzLmwuZ307Xy5tLllmPWZ1bmN0aW9uKGEpe3RoaXMuQT1hfTtfLm0ucmVzdG9yZT1mdW5jdGlvbigpe3ZhciBhPWRyKHZ2LDMpO2VyKHZ2LGEpO2ZyKGEsMyk7cGVyZm9ybWFuY2UmJnBlcmZvcm1hbmNlLm1hcmsmJnBlcmZvcm1hbmNlLm1hcmsoVHEsdm9pZCAwKTtDcigpO3RoaXMuZy5TYSgpJiZ0aGlzLmwmJnRoaXMubC5yZXN0b3JlKCl9OwpfLm0uTT1mdW5jdGlvbigpe0JyKCk7d3YuZWEuTS5jYWxsKHRoaXMpO3RoaXMuZy5kaXNwb3NlKCk7dGhpcy5sPXRoaXMuZz1udWxsO3RoaXMuQj1uZXcgdHR9OwpfLm0ueWk9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5DJiYodGhpcy5DPSExLGI9e3NsOmIsdGw6Yyx0ZXh0bGVuOmR9LHRoaXMuQSYmKGIuY3R0PSIxIiksdGhpcy5EIT0iIiYmKGIuc3A9dGhpcy5EKSxiLnR0dD1EYXRlLm5vdygpLWEsYi50dGw9dGhpcy5SLHRoaXMuRiYmKGIudHRmPXRoaXMuRiksdGhpcy5vJiYoYi5zcj0xKSxhPXBxLGM9W10sXy5vaShfLlppKGEsMikpJiZjLnB1c2goInNkYSIpLF8ub2koXy5aaShhLDMpKSYmYy5wdXNoKCJlZWlzIiksZD1fLmJqKGEsaXEsNiksXy5vaShfLlppKGQsMSkpJiZjLnB1c2goImVzdHMiKSxfLm9pKF8uWmkoYSw3KSkmJmMucHVzaCgiZWhjbSIpLF8ub2koXy5aaShhLDgpKSYmYy5wdXNoKCJlb3BhIiksXy5vaShfLlppKGEsOSkpJiZjLnB1c2goImVhZHQiKSxiLmVmPWMuam9pbigiLCIpLFFtKCJ0ZV90aW1lIixiKSl9O3ZhciB4dj1mdW5jdGlvbihhKXt4bi5jYWxsKHRoaXMsYSk7dGhpcy5BPW5ldyBfLkhiKHRoaXMpfTtfLkIoeHYseG4pO3h2LnByb3RvdHlwZS5TPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5oLmNyZWF0ZUVsZW1lbnQoInNlbGVjdCIpO2EuY2xhc3NOYW1lPSJnb29nLXRlLWNvbWJvIjthLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsUi5FZSk7dGhpcy5PYShhKX07eHYucHJvdG90eXBlLkxhPWZ1bmN0aW9uKCl7eG4ucHJvdG90eXBlLkxhLmNhbGwodGhpcyk7dGhpcy5aZSgpfTt4di5wcm90b3R5cGUuWmU9ZnVuY3Rpb24oKXtfLngodGhpcy5IKCksImNoYW5nZSIscHIodGhpcywiY2hhbmdlIikpO3RoaXMuZGlzcGF0Y2hFdmVudCgibG9hZCIpfTt4di5wcm90b3R5cGUuc2E9ZnVuY3Rpb24oKXt4bi5wcm90b3R5cGUuc2EuY2FsbCh0aGlzKTt0aGlzLkEuZGlzcG9zZSgpO3RoaXMuQT1udWxsfTsKdmFyIHl2PWZ1bmN0aW9uKGEsYil7YS5IKCkucGFyZW50Tm9kZSE9YiYmKGEuSCgpLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYS5IKCkpLGIuYXBwZW5kQ2hpbGQoYS5IKCkpKX07Xy5tPXh2LnByb3RvdHlwZTtfLm0udWM9ZnVuY3Rpb24oYSl7dGhpcy5oLmllKHRoaXMuSCgpKTtmb3IodmFyIGIgaW4gYSlpZihhW2JdIT09T2JqZWN0LnByb3RvdHlwZVtiXSl7dmFyIGM9dGhpcy5oLlMoIk9QVElPTiIse3ZhbHVlOmJ9KTt0aGlzLmguU2IoYyxhW2JdKTt0aGlzLkgoKS5hcHBlbmRDaGlsZChjKX10aGlzLkgoKS5zZWxlY3RlZEluZGV4PTB9O18ubS5NYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkgoKS52YWx1ZX07Xy5tLmNiPWZ1bmN0aW9uKGEpe2lmKHRoaXMuSCgpLnZhbHVlIT1hKWZvcih2YXIgYj0wLGM7Yz10aGlzLkgoKS5vcHRpb25zLml0ZW0oYik7KytiKWlmKGMudmFsdWU9PWEpe3RoaXMuSCgpLnNlbGVjdGVkSW5kZXg9YjticmVha319OwpfLm0uQWM9ZnVuY3Rpb24oYSl7aWYoXy5vYyhhKT09InVuZGVmaW5lZCIpcmV0dXJuIHRoaXMuSCgpLm9wdGlvbnMuaXRlbSh0aGlzLkgoKS5zZWxlY3RlZEluZGV4KS50ZXh0O2Zvcih2YXIgYj0wLGM7Yz10aGlzLkgoKS5vcHRpb25zLml0ZW0oYik7KytiKWlmKGMudmFsdWU9PWEpcmV0dXJuIGMudGV4dH07Xy5tLlJiPWZ1bmN0aW9uKGEpe3RoaXMuSCgpLmRpc2FibGVkPSFhfTt2YXIgenY9ZnVuY3Rpb24oYSl7eHYuY2FsbCh0aGlzLGEpfTtfLkIoenYseHYpO3p2LnByb3RvdHlwZS5uYj1mdW5jdGlvbihhKXt0aGlzLnVjLmNhbGwodGhpcyxhKX07dmFyIEF2PWZ1bmN0aW9uKGEsYil7eHYuY2FsbCh0aGlzLGIpO3RoaXMuZz1hJiZKbChhKXx8e307dGhpcy5nLm9lPXRoaXMuZy5vZXx8MTE7dGhpcy5nLnBkPXRoaXMuZy5wZCE9MDt0aGlzLmcuZWI9QXF9O18uQihBdix4dik7Xy5tPUF2LnByb3RvdHlwZTtfLm0uS2M9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiR2EiKTt9OwpfLm0uUz1mdW5jdGlvbigpe3RoaXMuS2MoKTt0aGlzLkQ9dGhpcy5IKCk7dGhpcy5sPXdvKCJJRlJBTUUiLHtmcmFtZUJvcmRlcjowLCJjbGFzcyI6IlZJcGdKZC1aVmk5b2QteGwwN09iLU9FVm1jZCBza2lwdHJhbnNsYXRlIix0aXRsZTpSLkVlfSk7dGhpcy5sLnN0eWxlLnZpc2liaWxpdHk9InZpc2libGUiO21wKHRoaXMubCwhMSk7ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLmwpfTsKXy5tLlplPWZ1bmN0aW9uKCl7dmFyIGE9Xy54Zi50ZXN0KG9xKT8icnRsIjoibHRyIixiPV8uTGIodGhpcy5nLmViKSxjPVModGhpcywibWVudUJvZHkiKTt0aGlzLkEuTih0aGlzLmwsImxvYWQiLHRoaXMucWcpO3RyKHRoaXMubCwoMCxfLnkpKGZ1bmN0aW9uKCl7dmFyIGQ9em8odGhpcy5sKSxlPXt9LGY9ZSYmZS5UZTtlPVduKFZuKF8ueWwoKSwiPGhlYWQ+IiksT3UoZSkpO2Y9JzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURjgiPjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9IicrUCh4cChiKSkrJyInKyhmPycgbm9uY2U9IicrUChZcChmKSkrJyInOiIiKSsnPjwvaGVhZD48Ym9keSBzY3JvbGw9Im5vIiBzdHlsZT0ibWFyZ2luOjBweDtvdmVyZmxvdzpoaWRkZW4iIGRpcj0iJytQKGEpKyciIG1hcmdpbkhlaWdodD0wIG1hcmdpbldpZHRoPTAgbGVmdE1hcmdpbj0wIHRvcE1hcmdpbj0wIGJvcmRlcj0wPjxkaXYgaWQ9IicrClAoYykrJyIgY2xhc3M9JztpZih3cCgiVklwZ0pkLVpWaTlvZC14bDA3T2IiLF8ucWwpKXt2YXIgZz1NcCgiVklwZ0pkLVpWaTlvZC14bDA3T2IiLm1hKCkpO2c9U3RyaW5nKGcpLnJlcGxhY2UoT3AsQ3ApfWVsc2UgZz0iVklwZ0pkLVpWaTlvZC14bDA3T2IiLnJlcGxhY2UoTnAsQ3ApO2U9Vm4oZSxmK2crIj48L2Rpdj48L2JvZHk+IikuVGIoKTtkLndyaXRlKF8ua2ooZSkpO2QuY2xvc2UoKX0sdGhpcykpfTtfLm0ucWc9ZnVuY3Rpb24oKXt0aGlzLmo9bmV3IF8ucmQoem8odGhpcy5sKSk7dGhpcy5MPXRoaXMuai5IKFModGhpcywibWVudUJvZHkiKSk7dGhpcy5BLk4odGhpcy5ELCJjbGljayIsdGhpcy5UZCk7Xy5TYz90aGlzLkEuTih0aGlzLmwsImJsdXIiLHRoaXMuUmMpOnRoaXMuQS5OKEFvKHRoaXMubCksImJsdXIiLHRoaXMuUmMpO3RoaXMuZGlzcGF0Y2hFdmVudCgibG9hZCIpfTsKXy5tLnNhPWZ1bmN0aW9uKCl7eHYucHJvdG90eXBlLnNhLmNhbGwodGhpcyk7Xy5BZCh0aGlzLmwpO3RoaXMuRD10aGlzLlQ9dGhpcy5CPXRoaXMuTD10aGlzLmo9dGhpcy5sPW51bGx9O18ubS5xZj1mdW5jdGlvbihhKXt0aGlzLm8hPWEuY3VycmVudFRhcmdldC52YWx1ZSYmKHRoaXMuY2IoYS5jdXJyZW50VGFyZ2V0LnZhbHVlKSx0aGlzLmRpc3BhdGNoRXZlbnQoImNoYW5nZSIpKTt0aGlzLlJjKCl9O18ubS5UZD1mdW5jdGlvbigpe0J2KHRoaXMpO0FvKHRoaXMubCkuZm9jdXMoKTt0aGlzLnJhPSEwfTtfLm0uUmM9ZnVuY3Rpb24oKXt0aGlzLnJhJiYodGhpcy5yYT0hMSxCdih0aGlzLCExKSxfLm1iKF8uc2QodGhpcy5EKSkuZm9jdXMoKSl9O18ubS5rZT1mdW5jdGlvbigpe307Xy5tLmxlPWZ1bmN0aW9uKCl7fTsKdmFyIEJ2PWZ1bmN0aW9uKGEsYil7aWYodHlwZW9mIGI9PSJ1bmRlZmluZWQifHxiKXthLmxlKCk7Yj1qcChhLkQsd2luZG93KTt2YXIgYz1iLnkrYS5ELm9mZnNldEhlaWdodCxkPWIueS1hLkcuaGVpZ2h0LGU9Yi54LGY9Yi54K2EuRC5vZmZzZXRXaWR0aC1hLkcud2lkdGg7aWYoXy5TYyYmIXNvKCkpe3ZhciBnPWRvY3VtZW50LmJvZHk7Yy09Zy5vZmZzZXRUb3A7ZC09Zy5vZmZzZXRUb3A7ZS09Zy5vZmZzZXRMZWZ0O2YtPWcub2Zmc2V0TGVmdH1lbHNlIGc9S24oZG9jdW1lbnQpLGMtPWcueSxkLT1nLnksZS09Zy54LGYtPWcueDtnPV8uaWIod2luZG93KTtiLnk9Yi55PD1nLmhlaWdodC1hLkcuaGVpZ2h0P2M6ZDtiLnk+Zy5oZWlnaHQtYS5HLmhlaWdodCYmKGIueT1nLmhlaWdodC1hLkcuaGVpZ2h0KTtiLnk8MCYmKGIueT0wKTtfLnhmLnRlc3Qob3EpP2IueD1mPj0wP2Y6ZTpiLng9ZTw9Zy53aWR0aC1hLkcud2lkdGg/ZTpmO2IueD5nLndpZHRoLWEuRy53aWR0aCYmKGIueD1nLndpZHRoLQphLkcud2lkdGgpO2IueDwwJiYoYi54PTApO2VwKGEubCxiKTttcChhLmwsITApO0N2KGEpfWVsc2UgYS5rZSgpLG1wKGEubCwhMSl9O18ubT1Bdi5wcm90b3R5cGU7Xy5tLk1hPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMub307Cl8ubS51Yz1mdW5jdGlvbihhKXt0aGlzLmouaWUodGhpcy5MKTttcCh0aGlzLmwsITApO3RoaXMuSWE9YTt0aGlzLkI9W107Zm9yKHZhciBiIGluIGEpaWYoYVtiXSE9PU9iamVjdC5wcm90b3R5cGVbYl0paWYoYVtiXT09Ii0tLSIpe3ZhciBjPXtsaW5rOnRoaXMuai5TKCJESVYiLHtjbGFzc05hbWU6IlZJcGdKZC1aVmk5b2QtdkgxR21mLWhnRFV3ZSIsdmFsdWU6Yn0pLGdpOiEwfTt0aGlzLkIucHVzaChjKX1lbHNle2M9e2xpbms6dGhpcy5qLlMoIkEiLHtjbGFzc05hbWU6IlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQiLGhyZWY6IiMiLHZhbHVlOmJ9KX07dGhpcy5CLnB1c2goYyk7dmFyIGQ9dGhpcy5qLlMoIkRJViIse3N0eWxlOiJ3aGl0ZS1zcGFjZTpub3dyYXAifSk7dGhpcy5qLmFwcGVuZENoaWxkKGMubGluayxkKTt0aGlzLmcucGQmJnRoaXMuai5hcHBlbmRDaGlsZChkLHRoaXMuai5TKCJTUEFOIix7Y2xhc3NOYW1lOiJpbmRpY2F0b3IifSwiXHUyMDNhIikpOwp0aGlzLmouYXBwZW5kQ2hpbGQoZCx0aGlzLmouUygiU1BBTiIse2NsYXNzTmFtZToidGV4dCJ9LHR5cGVvZiBhW2JdPT09ImZ1bmN0aW9uIj9hW2JdKCk6YVtiXSkpO3RoaXMuQS5OKGMubGluaywiY2xpY2siLHRoaXMucWYpfWE9dGhpcy5CLmxlbmd0aC0xO2E9TWF0aC5yb3VuZCgoYS1hJXRoaXMuZy5vZSkvdGhpcy5nLm9lKSsxO3RoaXMuVD10aGlzLmouUygiVEFCTEUiLHtjZWxsc3BhY2luZzowLGNlbGxwYWRkaW5nOjAsYm9yZGVyOjB9KTtjPXRoaXMuai5TKCJUQk9EWSIpO2I9dGhpcy5qLlMoIlRSIix7dmFsaWduOiJ0b3AifSk7dGhpcy5MLmNsYXNzTmFtZT0iVklwZ0pkLVpWaTlvZC12SDFHbWYiO3RoaXMuai5hcHBlbmRDaGlsZCh0aGlzLkwsdGhpcy5UKTt0aGlzLmouYXBwZW5kQ2hpbGQodGhpcy5ULGMpO3RoaXMuai5hcHBlbmRDaGlsZChjLGIpO2ZvcihkPWM9MDtjPGE7KytjKXt2YXIgZT10aGlzLmouUygiVEQiKTt0aGlzLmouYXBwZW5kQ2hpbGQoYixlKTtmb3IodmFyIGY9CjA7ZjwxMSYmZDx0aGlzLkIubGVuZ3RoOysrZiwrK2QpdGhpcy5qLmFwcGVuZENoaWxkKGUsdGhpcy5CW2RdLmxpbmspO2MhPWEtMSYmKGU9dGhpcy5qLlMoIlREIix7ImNsYXNzIjoiVklwZ0pkLVpWaTlvZC12SDFHbWYtS3JoUE5iIn0sIlx1MDBhMCIpLHRoaXMuai5hcHBlbmRDaGlsZChiLGUpKX10aGlzLm89bnVsbDt0aGlzLmNiKHRoaXMuQlswXS5saW5rLnZhbHVlKTtDdih0aGlzKTttcCh0aGlzLmwsITEpfTtfLm0uQWM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuSWFbXy5vYyhhKT09InVuZGVmaW5lZCI/dGhpcy5vOmFdfTtfLm0ubWU9ZnVuY3Rpb24oKXt9OwpfLm0uY2I9ZnVuY3Rpb24oYSl7aWYodGhpcy5vIT1hKXt0aGlzLkFjKGEpJiYodGhpcy5vPWEsdGhpcy5tZSgpKTtmb3IodmFyIGI9MDtiPHRoaXMuQi5sZW5ndGg7KytiKXt2YXIgYz10aGlzLkJbYl07Yy5naXx8KGMubGluay5jbGFzc05hbWU9Yy5saW5rLnZhbHVlPT1hJiZ0aGlzLmcucGQ/IlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQiOiJWSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmIiKX19fTt2YXIgQ3Y9ZnVuY3Rpb24oYSl7cXAoYS5MLG9wKGEuVCkpO3FwKGEubCxvcChhLkwpKTthLkc9b3AoYS5sKX0sRHY9ZnVuY3Rpb24oYSxiKXtBdi5jYWxsKHRoaXMsYSxiKX07Xy5CKER2LEF2KTtfLm09RHYucHJvdG90eXBlOwpfLm0uS2M9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmguUygiYSIseyJhcmlhLWhhc3BvcHVwIjoidHJ1ZSJ9KTthLmNsYXNzTmFtZT0iVklwZ0pkLVpWaTlvZC14bDA3T2ItbFRCeGVkIjtfLm5sKGEsIiMiKTt0aGlzLkk9dGhpcy5oLlMoIlNQQU4iKTthLmFwcGVuZENoaWxkKHRoaXMuSSk7dGhpcy5QPXRoaXMuaC5TKCJJTUciLHtzcmM6Q3EsYWx0OiIiLHN0eWxlOiJiYWNrZ3JvdW5kLWltYWdlOnVybCgiK3hxKyIpO2JhY2tncm91bmQtcG9zaXRpb246LTE0cHggMHB4O2JvcmRlcjpub25lIix3aWR0aDoxNCxoZWlnaHQ6MTR9KTthLmFwcGVuZENoaWxkKHRoaXMuUCk7dGhpcy5PYShhKX07Xy5tLmtlPWZ1bmN0aW9uKCl7Xy5oaih0aGlzLlAsImJhY2tncm91bmRQb3NpdGlvbiIsIi0xNHB4IDBweCIpfTtfLm0ubGU9ZnVuY3Rpb24oKXtfLmhqKHRoaXMuUCwiYmFja2dyb3VuZFBvc2l0aW9uIiwiMHB4IDBweCIpfTsKXy5tLnNhPWZ1bmN0aW9uKCl7QXYucHJvdG90eXBlLnNhLmNhbGwodGhpcyk7dGhpcy5QPXRoaXMuST1udWxsfTtfLm0ubWU9ZnVuY3Rpb24oKXt0aGlzLmguU2IodGhpcy5JLHRoaXMuQWModGhpcy5vKXx8IiIpfTtfLm0ubmI9ZnVuY3Rpb24oYSl7dGhpcy51Yy5jYWxsKHRoaXMsYSl9O3ZhciBFdj1mdW5jdGlvbihhLGIpe0F2LmNhbGwodGhpcyxhLGIpfTtfLkIoRXYsQXYpO18ubT1Fdi5wcm90b3R5cGU7Cl8ubS5LYz1mdW5jdGlvbigpe3ZhciBhPXRoaXMuaC5TKCJhIix7ImFyaWEtaGFzcG9wdXAiOiJ0cnVlIn0pO2EuY2xhc3NOYW1lPSJWSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQiO18ubmwoYSwiIyIpO3RoaXMuST10aGlzLmguUygiU1BBTiIpO2EuYXBwZW5kQ2hpbGQodGhpcy5JKTthLmFwcGVuZENoaWxkKHRoaXMuaC5TKCJJTUciLHtzcmM6Q3EsYWx0OiIiLHdpZHRoOjEsaGVpZ2h0OjF9KSk7YS5hcHBlbmRDaGlsZCh0aGlzLmguUygiU1BBTiIse3N0eWxlOiJib3JkZXItbGVmdDoxcHggc29saWQgI2JiYiJ9LCJcdTIwMGIiKSk7YS5hcHBlbmRDaGlsZCh0aGlzLmguUygiSU1HIix7c3JjOkNxLGFsdDoiIix3aWR0aDoxLGhlaWdodDoxfSkpO3RoaXMuUD10aGlzLmguUygic3BhbiIse3N0eWxlOiJjb2xvcjojNzY3Njc2IiwiYXJpYS1oaWRkZW4iOiJ0cnVlIn0sIlx1MjViYyIpO2EuYXBwZW5kQ2hpbGQodGhpcy5QKTt0aGlzLk9hKGEpfTsKXy5tLmtlPWZ1bmN0aW9uKCl7Xy5oaih0aGlzLlAsImNvbG9yIiwiIzliOWI5YiIpfTtfLm0ubGU9ZnVuY3Rpb24oKXtfLmhqKHRoaXMuUCwiY29sb3IiLCIjZDVkNWQ1Iil9O18ubS5zYT1mdW5jdGlvbigpe0F2LnByb3RvdHlwZS5zYS5jYWxsKHRoaXMpO3RoaXMuUD10aGlzLkk9bnVsbH07Xy5tLm1lPWZ1bmN0aW9uKCl7dGhpcy5oLlNiKHRoaXMuSSx0aGlzLkFjKHRoaXMubyl8fCIiKX07Xy5tLm5iPWZ1bmN0aW9uKGEpe3RoaXMudWMuY2FsbCh0aGlzLGEpfTt2YXIgRnY9ZnVuY3Rpb24oYSxiKXtBdi5jYWxsKHRoaXMsYSxiKTt0aGlzLmcucGQ9ITF9O18uQihGdixBdik7CkZ2LnByb3RvdHlwZS5LYz1mdW5jdGlvbigpe3ZhciBhPXRoaXMuaC5jcmVhdGVFbGVtZW50KCJkaXYiKTthLmNsYXNzTmFtZT0iVklwZ0pkLVpWaTlvZC1MZ2JzU2UiO3ZhciBiPXRoaXMuaC5TKCJESVYiLHtzdHlsZToiYmFja2dyb3VuZDogdXJsKCIrd3ErIikgcmVwZWF0LXggMCAtMzlweCJ9KTthLmFwcGVuZENoaWxkKGIpO3RoaXMuST10aGlzLmguY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7Yi5hcHBlbmRDaGlsZCh0aGlzLkkpO3RoaXMuT2EoYSl9O0Z2LnByb3RvdHlwZS5zYT1mdW5jdGlvbigpe0F2LnByb3RvdHlwZS5zYS5jYWxsKHRoaXMpO3RoaXMuST1udWxsfTtGdi5wcm90b3R5cGUucWY9ZnVuY3Rpb24oYSl7dGhpcy5jYihhLmN1cnJlbnRUYXJnZXQudmFsdWUpO3RoaXMuZGlzcGF0Y2hFdmVudCgiY2hhbmdlIik7dGhpcy5SYygpfTt2YXIgR3Y9ZnVuY3Rpb24oYSxiKXt4bi5jYWxsKHRoaXMsYik7dGhpcy5nPWEmJkpsKGEpfHx7fTt0aGlzLmo9bmV3IF8uSGIodGhpcyl9O18uRyhHdix4bik7dmFyIEh2PXt6azowLEtqOjEsaGs6Mn07Xy5tPUd2LnByb3RvdHlwZTsKXy5tLlM9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmguY3JlYXRlRWxlbWVudCgiZGl2Iik7TnQoYSwic2tpcHRyYW5zbGF0ZSIpO050KGEsImdvb2ctdGUtZ2FkZ2V0Iik7YS5kaXI9Xy54Zi50ZXN0KG9xKT8icnRsIjoibHRyIjttcChhLCExKTtpZih0aGlzLmcubGF5b3V0PT0yKWltKGEsUXUoe2lkOlModGhpcywidGFyZ2V0TGFuZ3VhZ2UiKSxTZjoiIixSZjoiIn0pKTtlbHNle3ZhciBiPW5ldyB0bztpZihzcChfLlNjJiYhc28oKSkpdmFyIGM9IjxzcGFuIHN0eWxlPVwiZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlO2hlaWdodDoxNXB4OyB3aWR0aDo1MXB4O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGFJbWFnZUxvYWRlciggc3JjPSciK1N0cmluZyhGcSkucmVwbGFjZShScCxHcCkrIicsc2l6aW5nTWV0aG9kPSdzY2FsZScpO1wiPjwvc3Bhbj4iO2Vsc2UgYz1ocy53ZCxjPSc8aW1nIHNyYz0iJytQKFdwKEZxKSkrCiciIHdpZHRoPSIzN3B4IiBoZWlnaHQ9IjE0cHgiIHN0eWxlPSJwYWRkaW5nLXJpZ2h0OiAzcHgiIGFsdD0iR29vZ2xlICcrUChjKSsnIj4nO3ZhciBkPWhzLndkO3ZhciBlPSgwLF8udGwpKCc8c3BhbiBzdHlsZT0id2hpdGUtc3BhY2U6bm93cmFwIj48YSBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZCIpKyciIGhyZWY9IicrUChVcChHcSkpKyciIHRhcmdldD0iX2JsYW5rIj4nK2MrS3AoZCkrIjwvYT48L3NwYW4+Iik7Yz1iLmZvcm1hdDtkPVI7dmFyIGY9ZC56ZztlPWUuVGIoKTtlPXVvKGIse3R5cGU6Imh0bWwiLHhmOl8ua2ooZSkudG9TdHJpbmcoKX0pO2I9Yy5jYWxsKGIsZi5jYWxsKGQsZSkpO2ltKGEsUXUoe2lkOlModGhpcywidGFyZ2V0TGFuZ3VhZ2UiKSxTZjoiIixSZjp0aGlzLmcubGF5b3V0PT0xP1JsKFsiXHUwMGEwIiwiXHUwMGEwIixiXSk6Yn0pKX10aGlzLk9hKGEpfTsKXy5tLkxhPWZ1bmN0aW9uKCl7R3YuZWEuTGEuY2FsbCh0aGlzKTt0aGlzLmw9dGhpcy5nLmxheW91dD09Mj9uZXcgRXYobnVsbCx0aGlzLmgpOm5ldyB6dih0aGlzLmgpO3RoaXMuai5OKHRoaXMubCwiY2hhbmdlIixwcih0aGlzLCJjaGdfdGd0X2xhbmciKSk7dGhpcy5qLk4odGhpcy5sLCJsb2FkIix0aGlzLnJnKTt2YXIgYT10aGlzLmguSChTKHRoaXMsInRhcmdldExhbmd1YWdlIikpO2lmKHRoaXMuZy5sYXlvdXQ9PTIpe3ZhciBiPXRoaXMuaC5TKCJJTUciLHtzcmM6Q3EsImNsYXNzIjoiZ29vZy10ZS1nYWRnZXQtaWNvbiIsYWx0OiIifSk7Yi5zdHlsZS5iYWNrZ3JvdW5kSW1hZ2U9InVybCgiK3hxKyIpIjtiLnN0eWxlLmJhY2tncm91bmRQb3NpdGlvbj0iLTY1cHggMHB4Ijt2YXIgYz10aGlzLmguUygiU1BBTiIse3N0eWxlOiJ2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlIn0pO2EuYXBwZW5kQ2hpbGQoYik7YS5hcHBlbmRDaGlsZChjKTt0aGlzLmwua2EoYyk7YS5zdHlsZS53aGl0ZVNwYWNlPQoibm93cmFwIjthLmNsYXNzTmFtZT0iZ29vZy10ZS1nYWRnZXQtc2ltcGxlIn1lbHNlIHRoaXMubC5rYShhKSx0aGlzLmcubGF5b3V0PT0xJiYoYS5zdHlsZS5kaXNwbGF5PSJpbmxpbmUiKX07Xy5tLnJnPWZ1bmN0aW9uKCl7aWYodGhpcy5nLmxheW91dD09Mil7dmFyIGE9dGhpcy5sLGI9dGhpcy5oLkgoUyh0aGlzLCJ0YXJnZXRMYW5ndWFnZSIpKTthLkEueWMoYS5ELCJjbGljayIsYS5UZCk7YS5EPWI7YS5BLk4oYS5ELCJjbGljayIsYS5UZCl9dGhpcy5kaXNwYXRjaEV2ZW50KCJsb2FkIil9O18ubS5zYT1mdW5jdGlvbigpe0d2LmVhLnNhLmNhbGwodGhpcyk7dGhpcy5qLmRpc3Bvc2UoKTt0aGlzLmo9bnVsbDt0aGlzLmwuZGlzcG9zZSgpO3RoaXMubD1udWxsfTtfLm0ub2E9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sLk1hKCl9O18ubS5uYT1mdW5jdGlvbihhKXthPT0iIj90aGlzLkwmJnRoaXMubC5uYih0aGlzLkwpOnRoaXMuSSYmdGhpcy5sLm5iKHRoaXMuSSk7dGhpcy5sLmNiKGEpfTsKXy5tLnBhPWZ1bmN0aW9uKGEpe21wKHRoaXMuSCgpLGEpfTtfLm0uUmI9ZnVuY3Rpb24oYSl7dGhpcy5sLlJiKGEpfTtfLm0udWU9ZnVuY3Rpb24oYSxiKXt0aGlzLkw9YTt0aGlzLkk9Yn07dmFyIEl2PWZ1bmN0aW9uKGEsYil7eG4uY2FsbCh0aGlzLGIpO3RoaXMuZz1hJiZKbChhKXx8e307dGhpcy5nLmVifHwodGhpcy5nLmViPUFxKTt0aGlzLmo9bmV3IF8uSGIodGhpcyl9O18uRyhJdix4bik7dmFyIEp2PXtwazoxLHFrOjIsbGo6Myxrajo0fTtfLm09SXYucHJvdG90eXBlO18ubS5TPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5oLmNyZWF0ZUVsZW1lbnQoImRpdiIpO3RoaXMuRz0hMTttcChhLCExKTt2YXIgYj1TKHRoaXMsImNvbnRhaW5lciIpO2I9KDAsXy50bCkoJzxpZnJhbWUgaWQ9IicrUChiKSsnIiBmcmFtZUJvcmRlcj0wIHNyYz0iamF2YXNjcmlwdDpcJ1wnIiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLVNtZlotT0VWbWNkIikrJyBza2lwdHJhbnNsYXRlIiBzdHlsZT0idmlzaWJpbGl0eTp2aXNpYmxlIj48L2lmcmFtZT4nKTtpbShhLGIpO3RoaXMuT2EoYSl9OwpfLm0uTGE9ZnVuY3Rpb24oKXtJdi5lYS5MYS5jYWxsKHRoaXMpO3ZhciBhPV8ueGYudGVzdChvcSk/InJ0bCI6Imx0ciIsYj1fLkxiKHRoaXMuZy5lYiksYz1TKHRoaXMsInRyYW5zbGF0ZSIpLGQ9Q3EsZT14cTt0aGlzLkgoKS5pZD1TKHRoaXMsImZsb2F0Q29udGFpbmVyIik7dmFyIGY9e2lkOnRoaXMuSCgpLmlkLGNsYXNzTmFtZToiZ29vZy10ZS1mdGFiLWZsb2F0In07dGhpcy5IKCkuY2xhc3NOYW1lKz0iIGdvb2ctdGUtZnRhYi1mbG9hdCI7c3dpdGNoKHRoaXMuZy5OYyl7Y2FzZSAyOnZhciBnPSJnb29nLXRlLWZsb2F0LXRvcCI7Zi50b3A9MDtmLnJpZ2h0PTIwO2JyZWFrO2Nhc2UgMzpnPSJnb29nLXRlLWZsb2F0LWJvdHRvbSI7Zi5ib3R0b209MDtmLnJpZ2h0PTIwO2JyZWFrO2Nhc2UgNDpnPSJnb29nLXRlLWZsb2F0LWJvdHRvbSI7Zi5ib3R0b209MDtmLmxlZnQ9MjA7YnJlYWs7ZGVmYXVsdDpnPSJnb29nLXRlLWZsb2F0LXRvcCIsZi50b3A9MCxmLmxlZnQ9MjB9bnAoWm4obmV3IF8ueWYsCmYpLHRoaXMuSCgpKTt0aGlzLkI9dGhpcy5oLkgoUyh0aGlzLCJjb250YWluZXIiKSk7dGhpcy5qLk4odGhpcy5CLCJsb2FkIix0aGlzLnNnKTt0cih0aGlzLkIsKDAsXy55KShmdW5jdGlvbigpe3ZhciBoPXpvKHRoaXMuQiksaz1nLGw9e30sbj1sJiZsLlRlLHE9aHMuSWU7az1WbihXbihWbihfLnlsKCksIjxoZWFkPiIpLE91KGwpKSwnPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGOCI+PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iJytQKHhwKGIpKSsnIicrKG4/JyBub25jZT0iJytQKFlwKG4pKSsnIic6IiIpKyc+PC9oZWFkPjxib2R5IGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtU21mWiIpKyIgIitQKGspKyciIHNjcm9sbD0ibm8iIHN0eWxlPSJvdmVyZmxvdzpoaWRkZW4iIGRpcj0iJytQKGEpKyciPjxhIGlkPSInK1AoYykrJyIgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0iJysKUCgiVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZCIpKyciPjxpbWcgc3JjPSInK1AoV3AoZCkpKyciIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnK1AoV3AoZSkpKycpO2JhY2tncm91bmQtcG9zaXRpb246LTY1cHggMHB4Ij48c3Bhbj4nK0twKHEpKyI8L3NwYW4+PC9hPjwvYm9keT4iKS5UYigpO2gud3JpdGUoXy5raihrKSk7aC5jbG9zZSgpfSx0aGlzKSl9O18ubS5zZz1mdW5jdGlvbigpe3RoaXMubD0obmV3IF8ucmQoem8odGhpcy5CKSkpLkgoUyh0aGlzLCJ0cmFuc2xhdGUiKSk7dGhpcy5qLk4odGhpcy5sLCJjbGljayIscHIodGhpcywiY2xrX3RyYW5zIikpO21wKHRoaXMuSCgpLCEwKTt2YXIgYT1vcCh0aGlzLmwpO21wKHRoaXMuSCgpLCExKTtxcCh0aGlzLkIsYSk7cXAodGhpcy5IKCksYSk7dGhpcy5kaXNwYXRjaEV2ZW50KCJsb2FkIil9OwpfLm0uc2E9ZnVuY3Rpb24oKXtJdi5lYS5zYS5jYWxsKHRoaXMpO3RoaXMuai5kaXNwb3NlKCk7dGhpcy5qPW51bGw7Xy5BZCh0aGlzLkIpO3RoaXMubD10aGlzLkI9bnVsbH07Xy5tLmlzVmlzaWJsZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkd9O18ubS5wYT1mdW5jdGlvbihhKXt0aGlzLkc9YTttcCh0aGlzLkgoKSxhKX07dmFyIEt2PWZ1bmN0aW9uKGEsYil7eG4uY2FsbCh0aGlzLGIpO3RoaXMuQT1uZXcgXy5IYih0aGlzKTt0aGlzLmc9YSYmSmwoYSl8fHt9O3RoaXMuZy5lYj1BcTt0aGlzLmcud2U9ITE7Xy5oaih0aGlzLmguZy5ib2R5LCJwb3NpdGlvbiIsInJlbGF0aXZlIik7Xy5NaHx8Xy5oaih0aGlzLmguZy5ib2R5LCJtaW5IZWlnaHQiLCIxMDAlIik7Xy5oaih0aGlzLmguZy5kb2N1bWVudEVsZW1lbnQsImhlaWdodCIsIjEwMCUiKTtfLmhqKHRoaXMuaC5nLmJvZHksInRvcCIsIjBweCIpO18uU2MmJih3aW5kb3cuX2Jhbm5lcnF1aXJrZml4bGVmdD0tcGFyc2VJbnQoIjAiK3RoaXMuaC5nLmJvZHkubGVmdE1hcmdpbiwxMCksd2luZG93Ll9iYW5uZXJxdWlya2ZpeHRvcD0tcGFyc2VJbnQoIjAiK3RoaXMuaC5nLmJvZHkudG9wTWFyZ2luLDEwKS00MCl9O18uRyhLdix4bik7Xy5tPUt2LnByb3RvdHlwZTtfLm0ua2E9ZnVuY3Rpb24oKXt0aGlzLnFjKHRoaXMuaC5nLmJvZHkuZmlyc3RDaGlsZCl9OwpfLm0uUz1mdW5jdGlvbigpe3ZhciBhPXRoaXMuaC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0aGlzLkc9ITE7bXAoYSwhMSk7TnQoYSwic2tpcHRyYW5zbGF0ZSIpO3ZhciBiPVModGhpcywiY29udGFpbmVyIik7Yj0oMCxfLnRsKSgnPGlmcmFtZSBpZD0iJytQKGIpKyciIGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtT1JIYi1PRVZtY2QiKSsnIHNraXB0cmFuc2xhdGUiIGZyYW1lQm9yZGVyPTAgc3JjPSIjIiBzdHlsZT0idmlzaWJpbGl0eTp2aXNpYmxlIj48L2lmcmFtZT4nKTtpbShhLGIpO3RoaXMuT2EoYSl9OwpfLm0uTGE9ZnVuY3Rpb24oKXtLdi5lYS5MYS5jYWxsKHRoaXMpO3ZhciBhPV8ueGYudGVzdChvcSk/InJ0bCI6Imx0ciIsYj1fLkxiKHRoaXMuZy5lYiksYz1DcSxkPUdxLGU9RHEsZj14cSxnPVModGhpcywicHJvbXB0U2VjdGlvbiIpLGg9Uyh0aGlzLCJjb25maXJtIiksaz1TKHRoaXMsInByb2dyZXNzU2VjdGlvbiIpLGw9Uyh0aGlzLCJwcm9ncmVzc1ZhbHVlIiksbj16cSxxPVModGhpcywiY2FuY2VsIikscD1TKHRoaXMsImZpbmlzaFNlY3Rpb24iKSxyPVModGhpcywicmVzdG9yZSIpLHQ9Uyh0aGlzLCJlcnJvclNlY3Rpb24iKSxBPVModGhpcywiZXJyb3JDb250ZW50IiksRD1TKHRoaXMsImNsb3NlIiksRT1TKHRoaXMsIm5vQXV0b1BvcHVwIiksYmEsWj1bXTt0aGlzLmcud2UmJloucHVzaChQdSh7aWQ6Uyh0aGlzLCJwcm9tcHRTb3VyY2VMYW5nIil9KSk7Wi5wdXNoKFB1KHtpZDpTKHRoaXMsInByb21wdFRhcmdldExhbmciKX0pKTt2YXIgdmk9bW0oUi5KZy5hcHBseShudWxsLApaKSk7Wj1bXTt0aGlzLmcud2UmJloucHVzaChQdSh7aWQ6Uyh0aGlzLCJmaW5pc2hTb3VyY2VMYW5nIil9KSk7Wi5wdXNoKFB1KHtpZDpTKHRoaXMsImZpbmlzaFRhcmdldExhbmciKX0pKTt2YXIgd2k9bW0oUi5EZy5hcHBseShudWxsLFopKTt0aGlzLmcuY2cmJihiYT10aGlzLmcuY2cpO3RoaXMuQj10aGlzLmguSChTKHRoaXMsImNvbnRhaW5lciIpKTt0aGlzLkEuTih0aGlzLkIsImxvYWQiLHRoaXMudGcpO3RyKHRoaXMuQiwoMCxfLnkpKGZ1bmN0aW9uKCl7dmFyIGFnPXpvKHRoaXMuQiksWGM9YmEsTGQ9e30sRGU9TGQmJkxkLlRlLEVlPWhzLndkLHhpPWhzLkllLGJnPWhzLkVnLHlpPWhzLm1nLHppPWhzLkFnLGNnPWhzLkFlLEFpPWhzLkFlO1hjPVZuKFduKFZuKF8ueWwoKSwiPGhlYWQ+IiksT3UoTGQpKSwnPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGOCI+PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iJysKUCh4cChiKSkrJyInKyhEZT8nIG5vbmNlPSInK1AoWXAoRGUpKSsnIic6IiIpKyc+PC9oZWFkPjxib2R5IGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtT1JIYiIpKyciIHNjcm9sbD0ibm8iIGJvcmRlcj0wIGRpcj0iJytQKGEpKyciPjx0YWJsZSBib3JkZXI9MCBjZWxsc3BhY2luZz0wIGNlbGxwYWRkaW5nPTAgd2lkdGg9MTAwJSBoZWlnaHQ9MTAwJT48dHIgdmFsaWduPW1pZGRsZT48dGQgd2lkdGg9MSBub3dyYXA+PGEgaHJlZj0iJytQKFVwKGQpKSsnIiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZCIpKyciIHRhcmdldD0iX2JsYW5rIj48aW1nIHNyYz0iJytQKFdwKGUpKSsnIiBhbHQ9Ikdvb2dsZSAnK1AoRWUpKyciPjwvYT48L3RkPicrKHNwKFhjKT8nPHRkIHdpZHRoPTE+PGltZyBzcmM9IicrUChXcChjKSkrJyIgd2lkdGg9IjkiIGhlaWdodD0iMTUiIHRpdGxlPSInK1AoWGMpKyciIGFsdD0iJytQKFhjKSsnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJysKUChXcChmKSkrJyk7YmFja2dyb3VuZC1wb3NpdGlvbjotNTZweCAwcHg7bWFyZ2luOjAgNHB4Ij48L3RkPic6IiIpKyc8dGQgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1PUkhiLUtFNnZxZSIpKyciPjwvdGQ+PHRkPjx0YWJsZSBib3JkZXI9MCBjZWxsc3BhY2luZz0wIGNlbGxwYWRkaW5nPTAgaGVpZ2h0PTEwMCU+PHRyIGlkPSInK1AoZykrJyIgc3R5bGU9ImRpc3BsYXk6bm9uZSIgdmFsaWduPW1pZGRsZT48dGQgbm93cmFwPjxzcGFuIGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtT1JIYi1iTjk3UGMiKSsnIj4nK0twKHZpKSsnPC9zcGFuPjwvdGQ+PHRkIGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtT1JIYi1LRTZ2cWUiKSsnIj48L3RkPjx0ZCBub3dyYXA+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLUxnYnNTZSIpKyciPjxkaXY+PGJ1dHRvbiBpZD0iJytQKGgpKyciPjxiPicrS3AoeGkpKyc8L2I+PC9idXR0b24+PC9kaXY+PC9kaXY+PC90ZD48dGQgY2xhc3M9IicrClAoIlZJcGdKZC1aVmk5b2QtT1JIYi1LRTZ2cWUiKSsnIj48L3RkPjx0ZCBub3dyYXA+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLUxnYnNTZSIpKyciPjxkaXY+PGJ1dHRvbiBpZD0iJytQKEUpKyciPjwvYnV0dG9uPjwvZGl2PjwvZGl2PjwvdGQ+PC90cj48dHIgaWQ9IicrUChrKSsnIiBzdHlsZT0iZGlzcGxheTpub25lIiB2YWxpZ249bWlkZGxlPjx0ZD48c3BhbiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLU9SSGItYk45N1BjIikrJyI+JytLcChiZykrJyZuYnNwOzxzcGFuIGRpcj0ibHRyIj4oPGIgaWQ9IicrUChsKSsnIj48L2I+JSk8L3NwYW4+Jm5ic3A7PGltZyBzcmM9IicrUChXcChuKSkrJyI+PC9zcGFuPjwvdGQ+PHRkIGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtT1JIYi1LRTZ2cWUiKSsnIj48L3RkPjx0ZCBub3dyYXA+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLUxnYnNTZSIpKyciPjxkaXY+PGJ1dHRvbiBpZD0iJytQKHEpKyciPicrS3AoeWkpKwonPC9idXR0b24+PC9kaXY+PC9kaXY+PC90ZD48L3RyPjx0ciBpZD0iJytQKHApKyciIHN0eWxlPSJkaXNwbGF5Om5vbmUiPjx0ZD48c3BhbiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLU9SSGItYk45N1BjIikrJyI+JytLcCh3aSkrJzwvc3Bhbj48L3RkPjx0ZCBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLU9SSGItS0U2dnFlIikrJyI+PC90ZD48dGQgbm93cmFwPjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1MZ2JzU2UiKSsnIj48ZGl2PjxidXR0b24gaWQ9IicrUChyKSsnIj4nK0twKHppKSsnPC9idXR0b24+PC9kaXY+PC9kaXY+PC90ZD48L3RyPjx0ciBpZD0iJytQKHQpKyciIHN0eWxlPSJkaXNwbGF5Om5vbmUiIHZhbGlnbj1taWRkbGU+PHRkPjxzcGFuIGlkPSInK1AoQSkrJyIgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1PUkhiLWJOOTdQYyIpKyciPjwvc3Bhbj48L3RkPjwvdHI+PC90YWJsZT48L3RkPjx0ZCBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLU9SSGItS0U2dnFlIikrCiciPjwvdGQ+PHRkIHdpZHRoPTEgaWQ9Im9wdGlvbnMiPjwvdGQ+PHRkIHdpZHRoPTE+PGEgaWQ9IicrUChEKSsnIiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLVR2RDlQYy1oU1JHUGQiKSsnIiBocmVmPSIjIiB0aXRsZT0iJytQKGNnKSsnIj48aW1nIHNyYz0iJytQKFdwKGMpKSsnIiB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIGFsdD0iJytQKEFpKSsnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJytQKFdwKGYpKSsnKTtiYWNrZ3JvdW5kLXBvc2l0aW9uOi0yOHB4IDBweCI+PC9hPjwvdGQ+PC90cj48L3RhYmxlPjwvYm9keT4nKS5UYigpO2FnLndyaXRlKF8ua2ooWGMpKTthZy5jbG9zZSgpfSx0aGlzKSl9OwpfLm0udGc9ZnVuY3Rpb24oKXt0aGlzLmo9bmV3IF8ucmQoem8odGhpcy5CKSk7THYodGhpcyxSLkNlKTtpZih0aGlzLmcuZWI9PUFxKXt2YXIgYT0idXJsKCIrd3ErIikiO18uaGoodGhpcy5qLmcuYm9keSwiYmFja2dyb3VuZEltYWdlIixhKTtmb3IodmFyIGI9dGhpcy5qLmcuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImJ1dHRvbiIpLGM9MDtjPGIubGVuZ3RoOysrYyl7dmFyIGQ9YltjXS5wYXJlbnROb2RlO18uaGooZCwiYmFja2dyb3VuZEltYWdlIixhKTtfLmhqKGQsImJhY2tncm91bmRSZXBlYXQiLCJyZXBlYXQteCIpO18uaGooZCwiYmFja2dyb3VuZFBvc2l0aW9uIiwiMCAtMzlweCIpfX10aGlzLmcud2UmJih0aGlzLm89bmV3IER2KHRoaXMuZyx0aGlzLmopKTt0aGlzLmw9bmV3IER2KHRoaXMuZyx0aGlzLmopO3RoaXMuRD1uZXcgRnYodGhpcy5nLHRoaXMuaik7dGhpcy5BLk4odGhpcy5qLkgoUyh0aGlzLCJjb25maXJtIikpLCJjbGljayIscHIodGhpcywiY2xrX2NvbmZpcm0iKSk7CnRoaXMuQS5OKHRoaXMuai5IKFModGhpcywiY2FuY2VsIikpLCJjbGljayIscHIodGhpcywiY2xrX2NhbmNlbCIpKTt0aGlzLkEuTih0aGlzLmouSChTKHRoaXMsInJlc3RvcmUiKSksImNsaWNrIixwcih0aGlzLCJjbGtfcmVzdG9yZSIpKTt0aGlzLkEuTih0aGlzLmouSChTKHRoaXMsImNsb3NlIikpLCJjbGljayIscHIodGhpcywiY2xrX2Nsb3NlIikpO3RoaXMuUD10aGlzLmouSChTKHRoaXMsIm5vQXV0b1BvcHVwIikpO3RoaXMuQS5OKHRoaXMuUCwiY2xpY2siLHByKHRoaXMsImNsa19ub19hcCIpKTt0aGlzLm8mJnRoaXMuQS5OKHRoaXMubywiY2hhbmdlIixwcih0aGlzLCJjaGdfc3JjX2xhbmciKSk7dGhpcy5BLk4odGhpcy5sLCJjaGFuZ2UiLHByKHRoaXMsImNoZ190Z3RfbGFuZyIpKTt0aGlzLkEuTih0aGlzLkQsImNoYW5nZSIsdGhpcy5SaCk7YT1uZXcganIoKDAsXy55KSh0aGlzLnVnLHRoaXMpKTt0aGlzLm8mJnRoaXMuQS5OKHRoaXMubywibG9hZCIsYS5yZWdpc3RlcigpKTsKdGhpcy5BLk4odGhpcy5sLCJsb2FkIixhLnJlZ2lzdGVyKCkpO3RoaXMuQS5OKHRoaXMuRCwibG9hZCIsYS5yZWdpc3RlcigpKTthLmZpbmlzaCgpO3RoaXMubyYmdGhpcy5vLmthKHRoaXMuai5IKFModGhpcywicHJvbXB0U291cmNlTGFuZyIpKSk7dGhpcy5sLmthKHRoaXMuai5IKFModGhpcywicHJvbXB0VGFyZ2V0TGFuZyIpKSk7dGhpcy5ELmthKHRoaXMuai5IKCJvcHRpb25zIikpfTtfLm0udWc9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLkQsYj1SLnlnO18uemQoYS5JKTthLkkuYXBwZW5kQ2hpbGQoYS5oLmNyZWF0ZVRleHROb2RlKGIrIlx1MDBhMFx1MjViYyIpKTt0aGlzLkQudWMoe3R1cm5fb2ZmX3NpdGU6Ui5HZyxzMToiLS0tIixsZWFybl9tb3JlOlIueGd9KTt0aGlzLmRpc3BhdGNoRXZlbnQoImxvYWQiKX07Xy5tLlJoPWZ1bmN0aW9uKCl7c3dpdGNoKHRoaXMuRC5NYSgpKXtjYXNlICJsZWFybl9tb3JlIjp3aW5kb3cub3BlbihKcSwiX2JsYW5rIik7YnJlYWs7Y2FzZSAidHVybl9vZmZfc2l0ZSI6dGhpcy5kaXNwYXRjaEV2ZW50KCJjbGtfbm9fYXBfc2l0ZSIpfX07Cl8ubS5zYT1mdW5jdGlvbigpe3RoaXMucGEoITEpO0t2LmVhLnNhLmNhbGwodGhpcyk7dGhpcy5BLmRpc3Bvc2UoKTt0aGlzLkE9bnVsbDt0aGlzLm8mJih0aGlzLm8uZGlzcG9zZSgpLHRoaXMubz1udWxsKTt0aGlzLmwuZGlzcG9zZSgpO3RoaXMubD1udWxsO3RoaXMuRC5kaXNwb3NlKCk7dGhpcy5EPW51bGw7Xy5BZCh0aGlzLkIpO3RoaXMuYWM9dGhpcy5qPW51bGx9O18ubS5KYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm8/dGhpcy5vLk1hKCk6IiJ9O18ubS5vYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmwuTWEoKX07Xy5tLk5hPWZ1bmN0aW9uKGEpe3RoaXMubyYmdGhpcy5vLmNiKGEpO3RoaXMuVCYmdGhpcy5UW2FdJiZ0aGlzLmouU2IodGhpcy5QLFIuRmcodGhpcy5UW2FdKSl9O18ubS5uYT1mdW5jdGlvbihhKXt0aGlzLmwuY2IoYSl9Owp2YXIgTXY9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYS5hYyE9Yil7YS5hYz1iO2lmKGI9PTApe2EubyYmeXYoYS5vLGEuai5IKFMoYSwicHJvbXB0U291cmNlTGFuZyIpKSk7aWYoYS5MKXt2YXIgZT1hLm9hKCk7YS5sLm5iKGEuTCk7YS5uYShlKX15dihhLmwsYS5qLkgoUyhhLCJwcm9tcHRUYXJnZXRMYW5nIikpKX1lbHNlIGI9PTImJihhLm8mJnl2KGEubyxhLmouSChTKGEsImZpbmlzaFNvdXJjZUxhbmciKSkpLGEuSSYmKGU9YS5vYSgpLGEubC5uYihhLkkpLGEubmEoZSkpLHl2KGEubCxhLmouSChTKGEsImZpbmlzaFRhcmdldExhbmciKSkpKTtlPXt9O2VbLTFdPWEuai5IKFMoYSwiZXJyb3JTZWN0aW9uIikpO2VbMF09YS5qLkgoUyhhLCJwcm9tcHRTZWN0aW9uIikpO2VbMV09YS5qLkgoUyhhLCJwcm9ncmVzc1NlY3Rpb24iKSk7ZVsyXT1hLmouSChTKGEsImZpbmlzaFNlY3Rpb24iKSk7Zm9yKHZhciBmIGluIGUpZVtmXSE9PU9iamVjdC5wcm90b3R5cGVbZl0mJm1wKGVbZl0sZj09CmIpfWMmJmEucGEoITApO2EuUC5wYXJlbnROb2RlLnBhcmVudE5vZGUuc3R5bGUuZGlzcGxheT1kPyJibG9jayI6Im5vbmUifTtLdi5wcm90b3R5cGUuaXNWaXNpYmxlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuR307Ckt2LnByb3RvdHlwZS5wYT1mdW5jdGlvbihhKXtpZih0aGlzLkchPWEpe3RoaXMuRz1hO2lmKF8uU2MpdmFyIGI9cGFyc2VJbnQoIjAiK3RoaXMuaC5nLmJvZHkubGVmdE1hcmdpbiwxMCksYz1wYXJzZUludCgiMCIrdGhpcy5oLmcuYm9keS50b3BNYXJnaW4sMTApO3ZhciBkPXRoaXMuaC5nLmNvbXBhdE1vZGU9PSJCYWNrQ29tcGF0IjthPyhfLmhqKHRoaXMuaC5nLmJvZHksInRvcCIsIjQwcHgiKSxtcCh0aGlzLkgoKSwhMCksXy5TYyYmKHNvKCk/KHdpbmRvdy5fYmFubmVycXVpcmtmaXhsZWZ0PXdpbmRvdy5fYmFubmVycXVpcmtmaXh0b3A9MCxkJiYodGhpcy5oLmcuYm9keS50b3BNYXJnaW49Yys0MCkpOmQ/KHRoaXMuaC5nLmJvZHkudG9wTWFyZ2luPWMrNDAsd2luZG93Ll9iYW5uZXJxdWlya2ZpeGxlZnQ9d2luZG93Ll9iYW5uZXJxdWlya2ZpeHRvcD0wKTood2luZG93Ll9iYW5uZXJxdWlya2ZpeGxlZnQ9LWIsd2luZG93Ll9iYW5uZXJxdWlya2ZpeHRvcD0tYy00MCkpKTooXy5oaih0aGlzLmguZy5ib2R5LAoidG9wIiwiMHB4IiksbXAodGhpcy5IKCksITEpLGQmJmM+PTQwJiYodGhpcy5oLmcuYm9keS50b3BNYXJnaW49Yy00MCkpfX07dmFyIE52PWZ1bmN0aW9uKGEsYil7YS5qLlNiKGEuai5IKFMoYSwicHJvZ3Jlc3NWYWx1ZSIpKSxiKX0sTHY9ZnVuY3Rpb24oYSxiKXthLmouU2IoYS5qLkgoUyhhLCJlcnJvckNvbnRlbnQiKSksYil9O0t2LnByb3RvdHlwZS51ZT1mdW5jdGlvbihhLGIpe3RoaXMuTD1hO3RoaXMuST1iO3RoaXMubC5uYihhKX07dmFyIFB2PWZ1bmN0aW9uKGEsYil7Xy51LmNhbGwodGhpcyk7Xy5vYyhhKT09InN0cmluZyImJihiPWEsYT17fSk7Xy5vYyhiKT09InN0cmluZyImJihiPWduKFN0cmluZyhiKSkpO3RoaXMuVD1iO3RoaXMuQT1uZXcgXy5IYih0aGlzKTt0aGlzLmxhPXZvaWQgMDthPU9iamVjdChhKTt0aGlzLm89ImF1dG8iOyEoYj13aW5kb3cucGFyZW50IT13aW5kb3cpJiYoYj0oIXdpbmRvdy5leHRlcm5hbHx8IXdpbmRvdy5leHRlcm5hbC5nb29nbGVUb29sYmFyVmVyc2lvbnx8cGFyc2VGbG9hdCh3aW5kb3cuZXh0ZXJuYWwuZ29vZ2xlVG9vbGJhclZlcnNpb24pPDYuMikmJighd2luZG93Lmd0YkV4dGVybmFsfHwhd2luZG93Lmd0YkV4dGVybmFsLmlzVHJhbnNsYXRlRW5hYmxlZHx8IXdpbmRvdy5ndGJFeHRlcm5hbC5pc1RyYW5zbGF0ZUVuYWJsZWQoKSkpJiYoYj1uYXZpZ2F0b3IuYXBwVmVyc2lvbiYmbmF2aWdhdG9yLmFwcFZlcnNpb24ubWF0Y2goL1xzQ2hyb21lXC8oKFxkKylcLihcZCspXC5bXGRcLl0rKVxzLyksCmI9IShiJiZiWzJdJiZiWzNdJiZOdW1iZXIoYlsyXSkqMUUzK051bWJlcihiWzNdKT49NDAwMSkpO3RoaXMuZz17RWQ6YixoZjohMSxGZDpudWxsLEVjOm51bGwsWGQ6W10sY2Y6W10sZGg6ITEsUGI6ITEsYXBpS2V5OiIiLGxheW91dDowLFZlOiExfTt0aGlzLklhPXtlYjpBcSxjZzp2cT09Imh0dHBzOi8vIj9SLkNnOm51bGx9O3RoaXMuUD17ZWI6QXEsTmM6bnVsbH07YSYmKCJhdXRvRGlzcGxheSJpbiBhJiYodGhpcy5nLkVkPXRoaXMuZy5FZCYmISFhLmF1dG9EaXNwbGF5KSwibXVsdGlsYW5ndWFnZVBhZ2UiaW4gYSYmKHRoaXMuZy5QYj0hIWEubXVsdGlsYW5ndWFnZVBhZ2UpLCJsYXlvdXQiaW4gYSYmKHRoaXMuZy5sYXlvdXQ9YS5sYXlvdXQpLGEucGFnZUxhbmd1YWdlJiYodGhpcy5nLmRkPXFyKGEucGFnZUxhbmd1YWdlKSksYS5pbmNsdWRlZExhbmd1YWdlcyYmKHRoaXMuZy5YZD1hLmluY2x1ZGVkTGFuZ3VhZ2VzLnNwbGl0KCIsIikpLGEuZXhjbHVkZWRMYW5ndWFnZXMmJgoodGhpcy5nLmNmPWEuZXhjbHVkZWRMYW5ndWFnZXMuc3BsaXQoIiwiKSksYS5yZW1vdGVBcGlQcm94eUhhbmRsZXJzJiYodGhpcy5sYT1hLnJlbW90ZUFwaVByb3h5SGFuZGxlcnMpLHRoaXMuZy5kZCYmKHRoaXMubz10aGlzLmcuZGQpLGEua2V5JiYodGhpcy5nLmFwaUtleT1hLmtleSksdGhpcy5QLk5jPU51bWJlcihhLmZsb2F0UG9zaXRpb24pfHx0aGlzLlAuTmMsImRpc2FibGVBdXRvVHJhbnNsYXRpb24iaW4gYSYmKHRoaXMuZy5WZT0hIWEuZGlzYWJsZUF1dG9UcmFuc2xhdGlvbikpOyF0aGlzLmcuVmUmJk92KHRoaXMpJiYodGhpcy5nLmhmPSEwKTt0aGlzLkM9e307aWYoKGE9ZG9jdW1lbnQuY29va2llLm1hdGNoKC8oXnw7IClnb29ndHJhbnNvcHQ9KC4qPykoO3wkKS8pKSYmYVsyXSlmb3IodGhpcy5DPXt9LGE9Xy5EYihhWzJdKS5zcGxpdCgifCIpLGI9MDtiPGEubGVuZ3RoOysrYil7dmFyIGM9YVtiXS5zcGxpdCgiPSIpO2NbMF0mJih0aGlzLkNbY1swXV09Y1sxXSl9dGhpcy53YT0KbmV3IFpzKHthcGlLZXk6dGhpcy5nLmFwaUtleSxoYzoxLHZlOiEwLGdtOkhxfSx7Y2xpZW50OnRxLHU6d2luZG93LmxvY2F0aW9uLmhyZWZ9KTt0aGlzLkY9bmV3IHd2KHZvaWQgMCx0aGlzLndhLHZvaWQgMCx2b2lkIDAsdGhpcy5nLmFwaUtleSx2b2lkIDAsdm9pZCAwLG5ldyBXdSx2b2lkIDAsdm9pZCAwLHRoaXMubGEpO3RoaXMuRz0hMTt0aGlzLkEuTih3aW5kb3csInBhZ2VoaWRlIix0aGlzLmRpc3Bvc2UpO3RoaXMuSz1uZXcganIoKDAsXy55KSh0aGlzLk1oLHRoaXMpKTt0aGlzLkk9bmV3IGpyKCgwLF8ueSkodGhpcy5PaCx0aGlzKSk7dGhpcy5PPW5ldyBscigoMCxfLnkpKHRoaXMua2ksdGhpcykpO3RoaXMuaD1uZXcgS3YodGhpcy5JYSk7dGhpcy5GLnpjKHRoaXMuSy5yZWdpc3RlcigoMCxfLnkpKHRoaXMuSmgsdGhpcykpLG9xKTt0aGlzLlQ/KHRoaXMubD1uZXcgR3YodGhpcy5nKSx0aGlzLkEuTih0aGlzLmwsImxvYWQiLHRoaXMuSy5yZWdpc3RlcigpKSx0aGlzLkEuTih0aGlzLmwsCiJjaGdfdGd0X2xhbmciLG1yKHRoaXMuTyx0aGlzLkkuZGVsYXkoKDAsXy55KSh0aGlzLkloLHRoaXMpKSkpLHRoaXMubC5rYSh0aGlzLlQpKTp0aGlzLlAuTmMmJih0aGlzLkI9bmV3IEl2KHRoaXMuUCksdGhpcy5BLk4odGhpcy5CLCJsb2FkIix0aGlzLksucmVnaXN0ZXIoKSksdGhpcy5BLk4odGhpcy5CLCJjbGtfdHJhbnMiLG1yKHRoaXMuTyx0aGlzLkkuZGVsYXkoKDAsXy55KSh0aGlzLkdoLHRoaXMpKSkpLHRoaXMuQi5rYSgpKTshdGhpcy5nLmRkJiZ0aGlzLmcuZGgmJnRoaXMuRi5QYyh0aGlzLksucmVnaXN0ZXIoKDAsXy55KSh0aGlzLkVoLHRoaXMpKSk7dGhpcy5LLmZpbmlzaCgpfTtfLkIoUHYsXy51KTsKdmFyIE92PWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoZixnKXtpZihmPV8uRGIoZikubWF0Y2goIl5cXCgoKFthLXpBLVpcXC1fXSopXFx8KT8oW2EtekEtWlxcLV9dKilcXCl8Xi8oKFthLXpBLVpcXC1fXSopLyk/KFthLXpBLVpcXC1fXSopIikpe2lmKGZbM10pcmV0dXJuIGcuZy5GZD1mWzJdLGcuZy5FYz1mWzNdLCEwO2lmKGZbNl0pcmV0dXJuIGcuZy5GZD1mWzVdLGcuZy5FYz1mWzZdLCEwfXJldHVybiExfXZhciBjPXt1cmw6ZnVuY3Rpb24oKXt2YXIgZj13aW5kb3cubG9jYXRpb24uaHJlZi5tYXRjaCgvIy4qZ29vZ3RyYW5zKC4qKS8pO3JldHVybiBmJiZmWzFdfSxjb29raWU6ZnVuY3Rpb24oKXt2YXIgZj1kb2N1bWVudC5jb29raWUubWF0Y2goLyhefDsgKWdvb2d0cmFucz0oLio/KSg7fCQpLyk7cmV0dXJuIGYmJmZbMl19fSxkO2ZvcihkIGluIGMpaWYoY1tkXSE9PU9iamVjdC5wcm90b3R5cGVbZF0pe3ZhciBlPWNbZF0oKTtpZihlJiZiKGUsYSkpcmV0dXJuIGR9cmV0dXJuIiJ9LApRdj1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz13aW5kb3cubG9jYXRpb24uaG9zdG5hbWUuc3BsaXQoIi4iKTtjLmxlbmd0aD4yOyljLnNoaWZ0KCk7Yz0iO2RvbWFpbj0iK2Muam9pbigiLiIpO2IhPW51bGw/YT1hKyI9IitiOihiPW5ldyBEYXRlLGIuc2V0VGltZShiLmdldFRpbWUoKS0xKSxhPWErIj1ub25lO2V4cGlyZXM9IitiLnRvR01UU3RyaW5nKCkpO2ErPSI7cGF0aD0vIjtkb2N1bWVudC5jb29raWU9YTt0cnl7ZG9jdW1lbnQuY29va2llPWErY31jYXRjaChkKXt9fSxSdj1mdW5jdGlvbihhLGIpe3ZhciBjPW51bGw7YiE9PXZvaWQgMCYmKGM9YSE9PXZvaWQgMD8iLyIrYSsiLyIrYjoiLyIrYik7UXYoImdvb2d0cmFucyIsYyl9O18ubT1Qdi5wcm90b3R5cGU7Cl8ubS5KaD1mdW5jdGlvbihhKXt0aGlzLmo9cXIob3EpO2E9YXx8e307dmFyIGI9YS50YXJnZXRMYW5ndWFnZXN8fFtdO3RoaXMuTD17c2w6V20oYS5zb3VyY2VMYW5ndWFnZXN8fFtdKSx0bDpXbShiKX07dGhpcy5EPXt9O3RoaXMuUj17fTthPSF0aGlzLmcuWGQubGVuZ3RoO2I9aXIodGhpcy5nLlhkKTt2YXIgYz1pcih0aGlzLmcuY2YpO3RoaXMuRFtvcV09IiI7dGhpcy5SW29xXT0iIjtmb3IodmFyIGQgaW4gdGhpcy5MLnRsKXRoaXMuTC50bFtkXT09PU9iamVjdC5wcm90b3R5cGVbZF18fCEoYXx8ZCBpbiBiKXx8ZCBpbiBjfHwodGhpcy5SW2RdPXRoaXMuTC50bFtkXSxkPT10aGlzLmcuZGQmJiF0aGlzLmcuUGIpfHwodGhpcy5EW2RdPXRoaXMuTC50bFtkXSk7dGhpcy5EW29xXXx8ZGVsZXRlIHRoaXMuRFtvcV07dGhpcy5SW29xXXx8ZGVsZXRlIHRoaXMuUltvcV07dGhpcy5yYT1KbCh0aGlzLkwuc2wpfTtfLm0uRWg9ZnVuY3Rpb24oYSl7YSYmKHRoaXMubz1xcihhKSl9OwpfLm0uTWg9ZnVuY3Rpb24oKXtkZWxldGUgdGhpcy5LO2lmKHRoaXMuTCl7dGhpcy5vPXRoaXMub3x8dGhpcy5nLkZkO3RoaXMuaj10aGlzLmcuRWN8fHRoaXMuajt2YXIgYT10aGlzLmcuaGZ8fHRoaXMuZy5FZCYmdGhpcy5vIT10aGlzLmomJiEodGhpcy5vIGluIHNxKSYmdGhpcy5DLm9zIT0iMSImJnRoaXMuQ1sibyIrdGhpcy5vXSE9IjEiO3RoaXMubz09InpoLVRXIiYmKHRoaXMubz0iemgtQ04iKTt0aGlzLnJhW3RoaXMub118fChhPSExLHRoaXMubz0iYXV0byIpO2lmKCF0aGlzLkRbdGhpcy5qXSlpZihhPSExLHRoaXMuRC5lbil0aGlzLmo9ImVuIjtlbHNlIGZvcih2YXIgYiBpbiB0aGlzLkQpaWYodGhpcy5EW2JdIT09T2JqZWN0LnByb3RvdHlwZVtiXSl7dGhpcy5qPWI7YnJlYWt9aWYodGhpcy5sKXtiPXRoaXMuRDt2YXIgYz17IiI6Ui5CZ30sZDtmb3IoZCBpbiBiKWJbZF0hPT1PYmplY3QucHJvdG90eXBlW2RdJiYoY1tkXT1iW2RdKTt0aGlzLmwudWUoYyx0aGlzLlIpO3RoaXMubC5uYSgiIil9IXFxJiYKYT90aGlzLmcuRWM/bXIodGhpcy5PLHRoaXMuSS5kZWxheSgoMCxfLnkpKHRoaXMub2QsdGhpcywhMCwhMCkpKS5jYWxsKCk6KHRoaXMuRz0hMCxtcih0aGlzLk8sdGhpcy5JLmRlbGF5KCgwLF8ueSkodGhpcy5vZCx0aGlzKSkpLmNhbGwoKSxRbSgidGVfYXAiLHtzbDp0aGlzLm99KSk6KHRoaXMuQiYmdGhpcy5CLnBhKCEwKSx0aGlzLmwmJnRoaXMubC5wYSghMCkpO3dpbmRvdy5nb29nbGUudHJhbnNsYXRlLlRyYW5zbGF0ZVNlcnZpY2UmJnRoaXMuUmIoITEpO3RoaXMuTy5maW5pc2goKX19OwpfLm0uT2g9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmgsYj10aGlzLnJhO2EubyYmYS5vLm5iKGIpO2EuVD1iO3RoaXMuaC51ZSh0aGlzLkQsdGhpcy5SKTt0aGlzLmguTmEodGhpcy5vKTt0aGlzLmgubmEodGhpcy5qKTt0aGlzLkEuTih0aGlzLmgsImNsa19jb25maXJtIix0aGlzLnloKTt0aGlzLkEuTih0aGlzLmgsImNsa19jYW5jZWwiLHRoaXMueGgpO3RoaXMuQS5OKHRoaXMuaCwiY2xrX3Jlc3RvcmUiLHRoaXMuUmQpO3RoaXMuQS5OKHRoaXMuaCwiY2xrX2Nsb3NlIix0aGlzLlFjKTt0aGlzLkEuTih0aGlzLmgsImNsa19ub19hcCIsdGhpcy56aCk7dGhpcy5BLk4odGhpcy5oLCJjbGtfbm9fYXBfc2l0ZSIsdGhpcy5BaCk7dGhpcy5BLk4odGhpcy5oLCJjaGdfc3JjX2xhbmciLHRoaXMubWYpO3RoaXMuQS5OKHRoaXMuaCwiY2hnX3RndF9sYW5nIix0aGlzLm1mKTt0aGlzLmwmJnRoaXMubC5wYSghMCl9OwpfLm0ua2k9ZnVuY3Rpb24oKXt0aGlzLkEuTih0aGlzLmgsImxvYWQiLHRoaXMuSS5yZWdpc3RlcigpKTt0aGlzLmgua2EoKTt0aGlzLkkuZmluaXNoKCl9O18ubS5NPWZ1bmN0aW9uKCl7dGhpcy5GLnJlc3RvcmUoKTtfLnUucHJvdG90eXBlLk0uY2FsbCh0aGlzKTt0aGlzLkYuZGlzcG9zZSgpO3RoaXMuQS5kaXNwb3NlKCk7dGhpcy5BPW51bGw7dGhpcy5oJiZ0aGlzLmguZGlzcG9zZSgpO3RoaXMuaD1udWxsO3RoaXMuQiYmdGhpcy5CLmRpc3Bvc2UoKTt0aGlzLkI9bnVsbDt0aGlzLmwmJnRoaXMubC5kaXNwb3NlKCk7dGhpcy5UPXRoaXMubD1udWxsfTtfLm0ueWg9ZnVuY3Rpb24oKXshdGhpcy5oLmlzVmlzaWJsZSgpfHwhdGhpcy5nLlBiJiZ4cih0aGlzLm8sdGhpcy5oLm9hKCkpfHwodGhpcy5HJiZRbSgidGVfYXB0Iix7c2w6dGhpcy5vfSksU3YodGhpcywhMSksdGhpcy5sJiZ0aGlzLmwubmEodGhpcy5oLm9hKCkpKX07Cl8ubS54aD1mdW5jdGlvbigpe3RoaXMuaC5pc1Zpc2libGUoKSYmKFR2KHRoaXMpLE12KHRoaXMuaCwwKSx0aGlzLmwmJnRoaXMubC5uYSgiIikpfTtfLm0uUmQ9ZnVuY3Rpb24oKXt0aGlzLmguaXNWaXNpYmxlKCkmJihUdih0aGlzKSxNdih0aGlzLmgsMCkpO3RoaXMubCYmdGhpcy5sLm5hKCIiKX07Xy5tLlFjPWZ1bmN0aW9uKCl7dGhpcy5oLmlzVmlzaWJsZSgpJiYodGhpcy5HJiYodGhpcy5HPSExLFFtKCJ0ZV9hcGMiLHtzbDp0aGlzLm99KSksVHYodGhpcyksdGhpcy5oLnBhKCExKSx0aGlzLmwmJnRoaXMubC5uYSgiIiksdGhpcy5CJiZ0aGlzLkIucGEoITApKX07Xy5tLnpoPWZ1bmN0aW9uKCl7dGhpcy5oLmlzVmlzaWJsZSgpJiYodGhpcy5DWyJvIit0aGlzLm9dPSIxIixRbSgidGVfYXByIix7c2w6dGhpcy5vfSksdGhpcy5HPSExLHRoaXMuUWMoKSl9OwpfLm0uQWg9ZnVuY3Rpb24oKXtpZih0aGlzLmguaXNWaXNpYmxlKCkpe3RoaXMuRz0hMTt0aGlzLkMub3M9IjEiO3ZhciBhPW51bGw7aWYodGhpcy5DKXthPVtdO2Zvcih2YXIgYiBpbiB0aGlzLkMpdGhpcy5DW2JdIT09T2JqZWN0LnByb3RvdHlwZVtiXSYmYS5wdXNoKGIrIj0iK3RoaXMuQ1tiXSk7YT1hLmpvaW4oInwiKX1RdigiZ29vZ3RyYW5zb3B0IixhKTt0aGlzLlFjKCl9fTtfLm0ubWY9ZnVuY3Rpb24oKXt0aGlzLmguaXNWaXNpYmxlKCkmJighdGhpcy5nLlBiJiZ4cih0aGlzLm8sdGhpcy5oLm9hKCkpP3RoaXMuUmQoKToodGhpcy5vPXRoaXMuaC5KYSgpfHx0aGlzLm8sdGhpcy5qPXRoaXMuaC5vYSgpLHRoaXMuaC5hYz09MiYmKHRoaXMubCYmdGhpcy5sLm5hKHRoaXMuaC5vYSgpKSxTdih0aGlzKSkpKX07Xy5tLm9kPWZ1bmN0aW9uKGEsYil7dGhpcy5oLmlzVmlzaWJsZSgpfHwodGhpcy5CJiZ0aGlzLkIucGEoITEpLGE/U3YodGhpcyxiKTpNdih0aGlzLmgsMCwhMCx0aGlzLkcpKX07Cl8ubS5SaT1mdW5jdGlvbihhLGIpe21yKHRoaXMuTyx0aGlzLkkuZGVsYXkoKDAsXy55KSh0aGlzLm9kLHRoaXMsYSxiKSkpLmNhbGwoKX07Xy5tLkdoPWZ1bmN0aW9uKCl7dGhpcy5vZCh0aGlzLmguYWM9PTIpfTtfLm0uSWg9ZnVuY3Rpb24oKXt0aGlzLmwub2EoKT8hdGhpcy5nLlBiJiZ4cih0aGlzLm8sdGhpcy5oLm9hKCkpP3RoaXMuUmQoKToodGhpcy5qPXRoaXMubC5vYSgpLHRoaXMuaC5uYSh0aGlzLmopLFN2KHRoaXMpKTp0aGlzLmwubmEodGhpcy5qKX07CnZhciBTdj1mdW5jdGlvbihhLGIpe2lmKHdpbmRvdy5nb29nbGUudHJhbnNsYXRlLlRyYW5zbGF0ZVNlcnZpY2UpdHJ5e3dpbmRvdy5nb29nbGUudHJhbnNsYXRlLlRyYW5zbGF0ZVNlcnZpY2UuZ2V0SW5zdGFuY2UoKS5yZXN0b3JlKCl9Y2F0Y2goYyl7fVJ2KGEubyxhLmopO2EuRz0hMTshYiYmYS5vIGluIHNxJiZRbSgidGVfYXBlIix7c2w6YS5vfSk7TnYoYS5oLDApO012KGEuaCwxLCEwKTthLkYuWWYoISFiKTt3aW5kb3cuc2V0VGltZW91dCgoMCxfLnkpKGEuRi5xZCxhLkYsYS5nLlBiPyJhdXRvIjphLm8sYS5qLCgwLF8ueSkoYS5mYixhKSx2b2lkIDAsdm9pZCAwKSwwKX07ClB2LnByb3RvdHlwZS5mYj1mdW5jdGlvbihhLGIsYyl7dHlwZW9mIHRoaXMuZ2I9PSJmdW5jdGlvbiImJnRoaXMuZ2IoKTt0aGlzLmguaXNWaXNpYmxlKCkmJnRoaXMuaC5hYz09MSYmKGM/KFR2KHRoaXMpLE12KHRoaXMuaCwtMSwhMCksYz09Mj9Mdih0aGlzLmgsUi53Zyk6THYodGhpcy5oLFIuQ2UpKTooTnYodGhpcy5oLGEpLGImJih0aGlzLmwmJnRoaXMubC5uYSh0aGlzLmopLHRoaXMuaC5OYSh0aGlzLm8pLE12KHRoaXMuaCwyKSkpKX07dmFyIFR2PWZ1bmN0aW9uKGEpe1J2KCk7d2luZG93LnNldFRpbWVvdXQoKDAsXy55KShhLkYucmVzdG9yZSxhLkYsbnVsbCksMCl9O1B2LnByb3RvdHlwZS5SYj1mdW5jdGlvbihhKXthfHx0aGlzLlFjKCk7dGhpcy5sJiZ0aGlzLmwuUmIoYSk7dGhpcy5CJiZ0aGlzLkIucGEoYSl9O3ZhciB6bj1mdW5jdGlvbihhKXtpZihhJiYoYT1TdHJpbmcoYSksYT1hLnNwbGl0KCIuIiksYS5sZW5ndGgpKXtmb3IodmFyIGI9d2luZG93LGM9MDtjPGEubGVuZ3RoOysrYyl7dmFyIGQ9YVtjXTtpZighKGQmJmQgaW4gYikpcmV0dXJuO2I9YltkXX1yZXR1cm4gYn19O3ZhciBVdj1udWxsLFZ2PWZ1bmN0aW9uKGEpe2lmKCFVdil7dmFyIGIsYyxkLGU7YSYmKCJrZXkiaW4gYSYmKGI9YS5rZXkpLCJzZXJ2ZXJQYXJhbXMiaW4gYSYmKGM9YS5zZXJ2ZXJQYXJhbXMpLCJ0aW1lSW5mbyJpbiBhJiYoZD1hLnRpbWVJbmZvKSwicmVtb3RlQXBpUHJveHlIYW5kbGVycyJpbiBhJiYoZT1hLnJlbW90ZUFwaVByb3h5SGFuZGxlcnMpLChhPXlyKCkpJiYoYz1hKSk7YT0wO2lmKHRxPT0idGVfbGliInx8Xy5XYylhPTM7VXY9bmV3IHd2KHZvaWQgMCxuZXcgWnMoe2FwaUtleTpiLGhjOmEsdmU6ITAsdHJhY2tWaXNpYmlsaXR5OmM9PSJ0dmlzIn0pLHZvaWQgMCx2b2lkIDAsYixjLGQsdm9pZCAwLHZvaWQgMCx2b2lkIDAsZSk7VXYuY29uc3RydWN0b3I9ZnVuY3Rpb24oKXt9O1V2LmlzQXZhaWxhYmxlPVV2LlNhO1V2LmdldFN1cHBvcnRlZExhbmd1YWdlcz1Vdi56YztVdi5nZXRQYWdlTGFuZ3VhZ2U9VXYuUGM7VXYuc2V0Q2xpY2tUaHJvdWdoPVV2LllmO1V2LnRyYW5zbGF0ZVBhZ2U9ClV2LnFkO1V2LnJlc3RvcmU9VXYucmVzdG9yZTtVdi5pc1RyYW5zbGF0aW5nPVV2LnBnO1V2LnNldENoZWNrVmlzaWJpbGl0eT1Vdi5QaX1yZXR1cm4gVXZ9O1Z2LmdldEluc3RhbmNlPWZ1bmN0aW9uKCl7cmV0dXJuIFV2fTt2YXIgV3Y9bnVsbCxYdj1mdW5jdGlvbihhLGIpe1d2fHwoV3Y9bmV3IFB2KGEsYiksV3YuY29uc3RydWN0b3I9ZnVuY3Rpb24oKXt9KTtyZXR1cm4gV3Z9O1h2LmdldEluc3RhbmNlPWZ1bmN0aW9uKCl7cmV0dXJuIFd2fTsKdmFyIFl2PWZ1bmN0aW9uKCl7dmFyIGE9em4oImdvb2dsZS50cmFuc2xhdGUubSIpO2F8fChmcygpLF8ucmMoImdvb2dsZS50cmFuc2xhdGUubSIsUSksYT1RKTtpZihhKWZvcih2YXIgYiBpbiBSKWlmKFJbYl0hPT1PYmplY3QucHJvdG90eXBlW1JbYl1dJiZSW2JdKXt2YXIgYz1SW2JdKCk7UltiXT1hW2NdP2FbY106Z3N9Xy5vaShfLlppKHBxLDEpKSYmKGI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKSxiLnRleHRDb250ZW50PSJcbiAgLnRyYW5zbGF0ZWQtbHRye1xuICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC50cmFuc2xhdGVkLXJ0bHtcbiAgICAgIGRpcmVjdGlvbjogcnRsO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgIixhPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJoZWFkIilbMF0sYXx8KGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaGVhZCIpLGM9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LApjLmluc2VydEJlZm9yZShhLGMuZmlyc3RDaGlsZCkpLGEuYXBwZW5kQ2hpbGQoYikpO0JuPT0xPyhfLnJjKCJnb29nbGUudHJhbnNsYXRlLlRyYW5zbGF0ZVNlcnZpY2UiLFZ2KSxRbSgidGVfbGkiKSk6KF8ucmMoImdvb2dsZS50cmFuc2xhdGUuVHJhbnNsYXRlRWxlbWVudCIsWHYpLFB2LnByb3RvdHlwZS5kaXNwb3NlPVB2LnByb3RvdHlwZS5kaXNwb3NlLFB2LnByb3RvdHlwZS5zaG93QmFubmVyPVB2LnByb3RvdHlwZS5SaSxQdi5wcm90b3R5cGUuc2V0RW5hYmxlZD1Qdi5wcm90b3R5cGUuUmIsXy5yYygiZ29vZ2xlLnRyYW5zbGF0ZS5UcmFuc2xhdGVFbGVtZW50LkZsb2F0UG9zaXRpb24iLEp2KSxKdi5UT1BfTEVGVD0xLEp2LlRPUF9SSUdIVD0yLEp2LkJPVFRPTV9SSUdIVD0zLEp2LkJPVFRPTV9MRUZUPTQsXy5yYygiZ29vZ2xlLnRyYW5zbGF0ZS5UcmFuc2xhdGVFbGVtZW50LklubGluZUxheW91dCIsSHYpLEh2LlZFUlRJQ0FMPTAsSHYuSE9SSVpPTlRBTD0xLEh2LlNJTVBMRT0KMik7Q24oKX07CmlmKHdpbmRvdy5nb29nbGUmJndpbmRvdy5nb29nbGUudHJhbnNsYXRlJiZ3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZS5fY29uc3QpWXYoKTtlbHNlIGlmKHdpbmRvdy5nb29nbGUmJndpbmRvdy5nb29nbGUudHJhbnNsYXRlJiZ3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZS5fcHJvdG9Db25maWcpe3JxPW5ldyBEYXRlO3ZhciBadj1uZXcgbHEod2luZG93Lmdvb2dsZS50cmFuc2xhdGUuX3Byb3RvQ29uZmlnKTtPbj1fLk4oWnYsMjIpfHwiIjttcT1fLk4oWnYsNil8fCJwcm9kIjtucT1fLk4oWnYsMTIpfHwiIjtvcT1fLk4oWnYsMSl8fCJlbiI7QW49Xy5OKFp2LDIpfHwiIjt2YXIgJHY7KCR2PV8uYmooWnYsanEsMykpJiYocHE9JHYpO18uTihadiw4KTtxcT1fLk0oWnYsMTcpO3NxPXt9O3ZhciBhdzthdz1zbShadiwxOCxfLmFqKCkpO2Zvcih2YXIgYnc9MDtidzxhdy5sZW5ndGg7YncrKylzcVthd1tid11dPSEwO0JuPV8uTihadiw1KT09ImxpYiI/MTowO3RxPShfLk4oWnYsNCl8fCJ0ZSIpKwooQm49PTE/Il9saWIiOiIiKTtmcT1fLk4oWnYsOSl8fCIiO3ZhciBjdzsoY3c9Xy5OKFp2LDEwKSl8fChjdz1fLk4oWnYsMTEpKTt1cT1jd3x8IiI7dnE9Imh0dHBzOi8vIjt2YXIgZHc7ZHc9Xy5OKFp2LDEzKTt2YXIgZXc9dnErKGR3fHwiIikrIi90cmFuc2xhdGVfc3RhdGljLyI7d3E9ZXcrImltZy90ZV9iay5naWYiO3hxPWV3KyJpbWcvdGVfY3RybDMuZ2lmIjt6cT1ldysiaW1nL2xvYWRpbmcuZ2lmIjtBcT1fLk4oWnYsMTQpfHwiIjt5cT1fLk4oWnYsMTUpfHwiIjtCcT1fLk4oWnYsMTYpfHwiIjtDcT0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9pbWFnZXMvY2xlYXJkb3QuZ2lmIjtEcT0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL2dvb2dsZWxvZ28vMXgvZ29vZ2xlbG9nb19jb2xvcl82OHgyOGRwLnBuZyI7RXE9Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9icmFuZGluZy9wcm9kdWN0LzF4L3RyYW5zbGF0ZV8yNGRwLnBuZyI7RnE9Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9icmFuZGluZy9nb29nbGVsb2dvLzF4L2dvb2dsZWxvZ29fY29sb3JfNDJ4MTZkcC5wbmciOwpHcT0iaHR0cHM6Ly90cmFuc2xhdGUuZ29vZ2xlLmNvbSI7S3EoKTtZdigpfTsKXy5tYSgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KfSkuY2FsbCh0aGlzLHRoaXMuZGVmYXVsdF90cik7Ci8vIEdvb2dsZSBJbmMuCg=="}},"time_used":95,"timings":{"blocked":0,"dns":3,"connect":16,"send":0,"wait":17,"receive":28,"ssl":30},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/#","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:33.636Z","timestamp":1785158433636,"http_version":"","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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET / HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-17T23:37:29.17424Z","times_seen":17945477,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/statmainbg.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.823Z","timestamp":1785158432823,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/statmainbg.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/styles/custom.css\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=4,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:32 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23159\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=yKHFFs964AAaPI%2FX3eiHH5ZifdiegWLn%2BICDPGPXossLehk6Qihh9zHxrdVIpjhaQb6TODVaRvj%2FXOXd4ZhKffWBSfRbUL%2BW%2BPRqowTZoO%2FzUcefOIQoOGAJaTRpl4ukgEF8Yw%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12d2c9d56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 203754\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]}],"data":{"size":203754,"size_decoded":204524,"mime_type":"image/png","magic":"PNG image data, 1170 x 244, 8-bit/color RGBA, non-interlaced","md5":"09bf014cd155e898948b37a5bb950ece","sha1":"dedcde01bde1812fda1811fdd2ea16a28ab53f44","sha256":"d027111484bcde3dfa7369fde7ddf00854c241c369f6a5a3b70763ec7a98240c","sha512":"d088d59da1fd7f422f40fe4fb95265896b6a36cb7caf5ed20e9e00a1c333841f91bcf2d5e8c4bde5b6aca37d70e4fcba6003cc478102f67205fdf702829556be","ssdeep":"3072:Y72pfirT2o3XvytWHKSXnhKJzq+SYcEwCWjLV7Df4UczqEhuV38Xv4k3zKuXe8lT:y2A3rH6tGDKJG+i5jLVqsT6zd/r","tlshash":"be141274096ebfc9db78d6f961c80064dacb5a19c0a6853fe179984a3b331fc6480b37","first_seen":"2024-09-19T20:45:31.030196Z","last_seen":"2026-07-27T13:21:39.123847Z","times_seen":18,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAABJIAAAD0CAYAAADADwxLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MDdENTRGNDQ4NUYwMTFFOUJFRTRBMTQzOEExRjAxMkEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MDdENTRGNDU4NUYwMTFFOUJFRTRBMTQzOEExRjAxMkEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowN0Q1NEY0Mjg1RjAxMUU5QkVFNEExNDM4QTFGMDEyQSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowN0Q1NEY0Mzg1RjAxMUU5QkVFNEExNDM4QTFGMDEyQSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PnXRz3sAAxheSURBVHja7L1bqG3b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"}},"time_used":20,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":20,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/s/_/ytembeds/_/ss/k=ytembeds.base.NxniuuZETZw.L.F4.O/am=AAAAgA/d=0/br=1/rs=AGKMywGx4txhFJhcrutKYsfPmS4mFc6oJQ","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.youtube.com/embed/4ekOcDG2D8E","date":"2026-07-27T13:20:33.150Z","timestamp":1785158433150,"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/4ekOcDG2D8E\r\nCookie: __Secure-YNID=20.YT=gH5UekW7d1yJXHdyAWP9D3nuufltIP5U3L-OJPITdfVo4QFdUpGIlO1MrkvQo6k6kl0jq_pOZAm0Y6StBGPZKrWCX-Ie8T1zxUJW6abmYuVU53Il1VEq4vUs5vvLfbgZGHz1eALkxngiX8bUsdRMr2vaKLTZJ0IBhq1y-2EM8N90iJ0cyWzGnhUGzNxuZzHw9HXFuIwKItlZKR3JI0AWby-eMB-aedGxFUVnqseGfA1HlqbnqC5EymsVz59X4lHMwh44OYJRjaiXEEhEetat2qsHLh8v23W9zHmKOEE2ZhT3CAsXUCZ0LdHpvohM6BZq6G030fjyK9N5mMzUa8e_Fw; YSC=n_kiEdK62Us; VISITOR_INFO1_LIVE=oxtQMHpPyNo; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgEg%3D%3D; __Secure-ROLLOUT_TOKEN=CKOus_iU9NnYzgEQ5fqIsvnylQMY5fqIsvnylQM%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: 260175\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-27T16:56:48.623888Z","times_seen":559,"resource_available":false,"data":"OnJvb3R7LS10N2Y0ZjJjNmQ1NDgzNmNlMDppbml0aWFsOy0tdDdkOGI4ZTVlZTI5MWFlYzA6aW5pdGlhbDstLXQ0NzI2YzY4ZWY2ZDdiMDhmOmluaXRpYWw7LS10ZjBhMGQxMTU0ODI3ODQ3Zjppbml0aWFsOy0tdDNlNDFkN2IxN2IxODdmNjk6aW5pdGlhbDstLXRmZjY1OTkzMzg0YmI0NTYwOmluaXRpYWw7LS10ZTI4NjdiMTNkNzcxZDA1NTppbml0aWFsOy0tdDkzM2Q3OTIyZjMxNThkYzU6aW5pdGlhbDstLXQyNjRlMmM5Y2I4Nzg5MWY5OmluaXRpYWw7LS10MjA2ZjNmYTJlMDFhZjIyZDppbml0aWFsOy0tdDM0ZjQ2ZjBmMmMxM2QzMjg6aW5pdGlhbDstLXQ4NTRjNzkzMzhkOGNhOGE3OmluaXRpYWw7LS10MjA0ODA3MTdkZTgwZjU1NTppbml0aWFsOy0tdDJkODA3YmI3OWU3NTYwNmQ6aW5pdGlhbDstLXQ2MTdkYjc3NmFmMGRlMTk2OmluaXRpYWw7LS10YjYyODExN2ZjMTY0YWQ4Nzppbml0aWFsOy0tdGQ1NDVkZjA0ZTJjNjU5ZDc6aW5pdGlhbDstLXQ1Mzk5MWQ1OTliMTQ4OGY1OmluaXRpYWw7LS10YTg4OWRmZGE5NjA1YTM1ODppbml0aWFsOy0tdDU5NzhkYThkNTg0YjhmZTk6aW5pdGlhbDstLXQxMjRiN2RhZmU5YmMzNjZkOmluaXRpYWw7LS10ZGJlNTBkMjdkNTFmNTA5Mzppbml0aWFsOy0tdGE1NjRkODIxMmJjY2IxNmE6aW5pdGlhbDstLXQ5OWY3NzQ2ODRjYmI5NzAzOmluaXRpYWw7LS10NGU2ZGY5YjJiNmI5N2UwMDppbml0aWFsOy0tdGI4YjMxYWM1NjJmYmU5YjU6aW5pdGlhbDstLXQ1ODg0NjcyMDA0ZDU2MTIwOmluaXRpYWw7LS10ZWY3MGNhMjQ1NDQ1YjUyYjppbml0aWFsOy0tdDRmMDkyMmU1YTNkMGMyMGY6aW5pdGlhbDstLXQ3ZGZhNmY4NGM5MzQ2ZWRmOmluaXRpYWw7LS10ZWNiZGY5MjRiNjNiMjdmYzppbml0aWFsOy0tdDE0MDVlNzBhMzkyNzYyOTM6aW5pdGlhbDstLXRhZDg0NDNmYWVkNjZjMTExOmluaXRpYWw7LS10ZTZkMmI0MjhkZTY4NTU0YTppbml0aWFsOy0tdGM5ODBjNTQ3ODEyNGM4Yzc6aW5pdGlhbDstLXQ5NjU2NDRlY2RiZTRiN2I4OmluaXRpYWw7LS10YjE0YTEwYzNiNDNhMTVhMzppbml0aWFsOy0tdGIxM2ZmODc5NzgyOWU3OWU6aW5pdGlhbDstLXRlNTY2OGU2MTExYWJhMGVkOmluaXRpYWw7LS10YTdkNjI4ZmFjZmU4NGQxODppbml0aWFsOy0tdGJlNDIyNjk1MzQ2NTVlNjc6aW5pdGlhbDstLXRhYjgwNTkyMzYwNjNjYWRiOmluaXRpYWw7LS10NzM1ZTQzNWE4YjdhZDY3Yzppbml0aWFsOy0tdDIxYWYwOGZkYmY2YTE0MDY6aW5pdGlhbDstLXRjNjA0MTEzZDA5ZmVlMDVkOmluaXRpYWw7LS10MDhhN2M2YzE3NmNiYzVjMjppbml0aWFsOy0tdDhjZGM5ODQ2YTc2Y2FmMWY6aW5pdGlhbDstLXRlMWI2NGU2OTcxMDQwMzk2OmluaXRpYWw7LS10NDE2ZTU5MzFmYzQ2NDU4OTppbml0aWFsOy0tdGI3ZDc0YmIzMjkxYzk1MWQ6aW5pdGlhbDstLXRmM2ZjODU1YWYyMjg1ZjVmOmluaXRpYWw7LS10MGExMjQ5ZjdjOWU4MmI1ZTppbml0aWFsOy0tdDAyYzBhMmM4NjhjMTRjZTg6aW5pdGlhbDstLXRkODU2MmNkYzIwM2JjNjgzOmluaXRpYWw7LS10NTNkZGE5MTI1ZThkMTMyNDppbml0aWFsOy0tdDU0NGUzMTcxNGY2M2Q1M2M6aW5pdGlhbDstLXQ4N2VhYmYxMTNhMTVhYzk2OmluaXRpYWw7LS10ODU4YjgwOWY4MDQ0ZTk2Mjppbml0aWFsOy0tdDBmNTkyOTFjZTU1MDQ1NDM6aW5pdGlhbDstLXRmYWFlOTY2OTJjYzE4MmU0OmluaXRpYWw7LS10NTE4ZTkyNWY2MWJkY2I5MTppbml0aWFsOy0tdGI5MjdmNWMwMTQ5MDA0YzY6aW5pdGlhbDstLXQ4MzJmMjJjZTY2MThlOTllOmluaXRpYWw7LS10NDViMmEzODMxNDkyNDM1Nzppbml0aWFsOy0tdDY5MzFhYTE4MjZiMzczYjI6aW5pdGlhbDstLXRlZDQyMzY1MzY4OTllNGIzOmluaXRpYWw7LS10ZGM4YWY2NzUwZjBkYWQwZDppbml0aWFsOy0tdDM0MTBjOTE2NDllNWViOGE6aW5pdGlhbDstLXQ0YWVhYTg1N2RlOGE3ODZiOmluaXRpYWw7LS10Mjk2YzdmODFkZDA5YTljMzppbml0aWFsOy0tdGZhMzQ3NWM1MDhmNWRmZWY6aW5pdGlhbDstLXQ5YmMwYjc0MDI0MmRhMDE3OmluaXRpYWw7LS10NDQxYTBlNDRlNDk1MzgxYTppbml0aWFsOy0tdGRlNDEzMzhmYzJiZDRiYTU6aW5pdGlhbDstLXQ0ZDc3NzZjMjhkYjIxMTIyOmluaXRpYWw7LS10N2UzNGQ1YmFhNGVhNjI3Nzppbml0aWFsOy0tdGM0YjI2MDQyZDRjYjE0MWY6aW5pdGlhbDstLXQ1MjA4ZmQxNzdhNzg4Y2ZhOmluaXRpYWw7LS10ZmZjMmZkM2E2NDRmNjI3NTppbml0aWFsOy0tdDYyMTYxODZjMjhiMzgzNGI6aW5pdGlhbDstLXQ0YTZkYTE5ZTE2YmYyMjFhOmluaXRpYWw7LS10ZDljMTlmNGY4Y2VjZDU2ZTppbml0aWFsOy0tdDNmM2JkYjQxNDBkM2VhZDc6aW5pdGlhbDstLXQ5MDRhODhjNjIzY2EyN2FiOmluaXRpYWw7LS10MmMzYmJmZjZjMTVhM2ViMjppbml0aWFsOy0tdDBjY2QxYWNlMDAwZDVlOTM6aW5pdGlhbDstLXRjODdmNmE3ZjA1ZTY1ZmM0OmluaXRpYWw7LS10YzA0YmEzZTczNTYxOTUzYzppbml0aWFsOy0tdDdjNDk2NWMxMWY4NTM3YzA6aW5pdGlhbDstLXQ0MzJmYmRiZDdmMmYzZjcxOmluaXRpYWw7LS10YWYxYmRkOTYxNDIzYzE1Zjppbml0aWFsOy0tdDlkN2JkY2FlZmM5NzVkNDQ6aW5pdGlhbDstLXQ0ZmIwZjY3YjI1MWUxYTQyOmluaXRpYWw7LS10YTA4ZTAzNjQxMGMxNDUzODppbml0aWFsOy0tdDdmOWI3ZTE2MDNlMjBiOTQ6aW5pdGlhbH0uZGlhbG9ne3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWF4LWhlaWdodDoxMDAlO21heC13aWR0aDoxMDAlOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjE2cHg7bWFyZ2luOjAgYXV0bztvdmVyZmxvdy14OmhpZGRlbjtvdmVyZmxvdy15OmF1dG87Zm9udC1zaXplOjEuM3JlbTtjb2xvcjojMDMwMzAzO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6bm9uZX0uZGlhbG9nLm1vZGVybi1kaWFsb2d7Ym94LXNoYWRvdzowIDAgMjRweCAxMnB4IHJnYmEoMCwwLDAsMC4yNSl9LmRpYWxvZy5yb3VuZGVkLWNvbnRhaW5lcntib3JkZXItcmFkaXVzOjEycHh9LmRpYWxvZy5tb2Rlcm4tZGlhbG9nLWxheW91dHtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czoyNHB4fS5kaWFsb2ctYm9keXtvdmVyZmxvdy15OmF1dG87b3ZlcmZsb3cteDpoaWRkZW47bWF4LWhlaWdodDozMDBweDttYXgtaGVpZ2h0OjEwMHZofS5kaWFsb2cuc2Nyb2xsYWJsZSAuZGlhbG9nLWJvZHl7b3ZlcmZsb3cteTp2aXNpYmxlO292ZXJmbG93LXg6dmlzaWJsZTttYXgtaGVpZ2h0OnVuc2V0fS5kaWFsb2ctY29udGFpbmVye3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt6LWluZGV4OjR9LmRpYWxvZy1oZWFkZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5kaWFsb2ctYnV0dG9ucywuZGlhbG9nLWhlYWRlcntmbGV4LXNocmluazowfS5kaWFsb2ctYnV0dG9uc3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDttYXJnaW4tdG9wOjEycHh9LmRpYWxvZy1idXR0b25zPip7bWFyZ2luLWxlZnQ6OHB4fS5kaWFsb2ctYnV0dG9ucz46Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MH0uZGlhbG9nLWZsZXgtYnV0dG9uey1tb3otYm94LWZsZXg6MTtmbGV4OjF9LmRpYWxvZy1mbGV4LWJ1dHRvbiAuYnV0dG9uLXdpdGgtaWNvbi5jb21wYWN0e21hcmdpbjowfS5kaWFsb2ctYm9keSBhLC5kaWFsb2ctaGVhZGVyIGF7Y29sb3I6IzA2NWZkNH0uZGlhbG9nLWJvZHkgeXRtLW1lbnUtaXRlbSBhe2NvbG9yOmN1cnJlbnRjb2xvcn1AbWVkaWEgKG1pbi13aWR0aDozMzBweCkgYW5kIChtaW4taGVpZ2h0OjMzMHB4KXsuZGlhbG9ne21pbi13aWR0aDoyNTBweDttYXgtd2lkdGg6MzU2cHh9LmRpYWxvZy1jb250YWluZXJ7bWFyZ2luOjAgNDBweDtwYWRkaW5nOjA7cGFkZGluZzowIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpfX0uZGlhbG9nLWZ1bGxzY3JlZW57bWluLXdpZHRoOjEwMCU7bWluLWhlaWdodDoxMDAlO21hcmdpbjowO3BhZGRpbmc6MDtoZWlnaHQ6MXB4fS5kaWFsb2ctZnVsbHNjcmVlbj4uZGlhbG9nLWJvZHl7aGVpZ2h0OjEwMCV9LmRpYWxvZy5tb2Rlcm4tZGlhbG9nLWxheW91dC5kaWFsb2ctZnVsbHNjcmVlbntib3JkZXItcmFkaXVzOjB9LmRpYWxvZy1jb250YWluZXIuZGlhbG9nLWZ1bGxzY3JlZW57bWFyZ2luOjB9YzMtdG9hc3R7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpmaXhlZDt6LWluZGV4OjU7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjA7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6MTRweCAyNHB4O2ZvbnQtc2l6ZToxLjRyZW07Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOiMwZjBmMGY7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtO21hcmdpbi1ib3R0b206LTEwMCV9YzMtdG9hc3QuaHVnLXRvYXN0e21heC13aWR0aDozNDRweH1jMy10b2FzdC5pbnZlcnNlLXRoZW1le2JhY2tncm91bmQ6I2ZmZjtjb2xvcjojMDMwMzAzfWMzLXRvYXN0LmludmVyc2UtdGhlbWUgLmJ1dHRvbi13aXRoLWljb257Y29sb3I6IzA2NWZkNH1baGFzLXNhZmUtYXJlYS1pbi1tYXg9dHJ1ZV0gYzMtdG9hc3R7cGFkZGluZzoxNHB4IDI0cHg7cGFkZGluZzoxNHB4IG1heCgyNHB4LGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSAxNHB4IG1heCgyNHB4LGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpfVtoYXMtcGl2b3QtYmFyPXRydWVdIGMzLXRvYXN0ey0tc2FmZS1hcmVhLWluc2V0LXRvcDplbnYoc2FmZS1hcmVhLWluc2V0LXRvcCk7LS1zYWZlLWFyZWEtaW5zZXQtYm90dG9tOmVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtib3R0b206NDhweDtib3R0b206Y2FsYyg0OHB4ICsgdmFyKC0tc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO21hcmdpbi1ib3R0b206LTEwMCU7bWFyZ2luLWJvdHRvbTpjYWxjKC0xMDAlICsgdmFyKC0tc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO3otaW5kZXg6Mn1bbW9kYWwtb3Blbi1ib2R5XSBjMy10b2FzdCxbc2hvcnRzLXBsYXllcj10cnVlXSBjMy10b2FzdHtib3R0b206OHB4O21hcmdpbi1ib3R0b206LTEwMCU7ei1pbmRleDo1fWMzLXRvYXN0W2Rpcj1vdXRde3RyYW5zaXRpb246bWFyZ2luIDE5NW1zIGN1YmljLWJlemllciguNCwwLDEsMSl9YzMtdG9hc3RbZGlyPWluXXt0cmFuc2l0aW9uOm1hcmdpbiAyMjVtcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO21hcmdpbi1ib3R0b206MH1Aa2V5ZnJhbWVzIHNwaW5uZXJ7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19LnNwaW5uZXJXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9LnNwaW5uZXJ7ZGlzcGxheTpibG9jazstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7bWFyZ2luOjEycHggYXV0bzt3aWR0aDozMnB4O2hlaWdodDozMnB4O2JvcmRlci1yYWRpdXM6NTAlO2JvcmRlcjoycHggc29saWQgI2VlZTtib3JkZXItdG9wLWNvbG9yOiM2NjY7YW5pbWF0aW9uOnNwaW5uZXIgLjhzIGxpbmVhciBpbmZpbml0ZX0uc3Bpbm5lcj4uaGlkZGVue2Rpc3BsYXk6bm9uZX0uc3Bpbm5lcjpub3QoW2hpZGRlbl0pe2NvbG9yOiMzMzM7Zm9udC1zaXplOjEuNnJlbX1odG1se2NvbG9yOiMwMzAzMDM7YmFja2dyb3VuZC1jb2xvcjojZmZmO2ZvbnQtc2l6ZToxMHB4O2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmfWJvZHl7bWFyZ2luOjA7cGFkZGluZzowO3BhZGRpbmc6MCBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtmb250LXNpemU6MS4ycmVtO292ZXJmbG93LXg6aGlkZGVufVtoaWRkZW5dW2hpZGRlbl17ZGlzcGxheTpub25lO3Zpc2liaWxpdHk6aGlkZGVufXl0bS1hcHA+LnNwaW5uZXJ7bWFyZ2luLXRvcDoxMDBweH15dG0taGVhZGVye2Rpc3BsYXk6YmxvY2t9aGVhZGVye2hlaWdodDo0OHB4fS5wbGF5ZXItY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0OHB4O3JpZ2h0OjA7cmlnaHQ6ZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7bGVmdDowO2xlZnQ6ZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDoyfVtoYXMtcGxheWVyLWN1c3RvbS1jb250cm9sPXRydWVdIC5wbGF5ZXItY29udGFpbmVye292ZXJmbG93OnZpc2libGUhaW1wb3J0YW50fSNwbGF5ZXIuaW5saW5lLXBsYXllci1oaWRkZW4sLmlubGluZS1wbGF5ZXItaGlkZGVue29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lfS5wbGF5ZXItY29udGFpbmVyIC5wbGF5ZXItc2l6ZSx5dG0td2F0Y2ggLnBsYXllci1zaXple3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7cGFkZGluZy1ib3R0b206NTYuMjUlO292ZXJmbG93OmhpZGRlbn0ucGxheWVyLWNvbnRhaW5lciAjcGxheWVyLnBsYXllci1zaXplLHl0bS13YXRjaCAucGxheWVyLXNpemV7YmFja2dyb3VuZC1jb2xvcjojMDAwfS5wbGF5ZXItY2luZW1hdGljc3twb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZDojMDAwfS5wbGF5ZXItY2luZW1hdGljc34jcGxheWVyLnBsYXllci1zaXplLC5wbGF5ZXItY2luZW1hdGljc34ucGxheWVyLXNpemV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ucGFnZS1zaG9ydHMgLnBsYXllci1jb250YWluZXIgLnBsYXllci1zaXplLC5wYWdlLXNob3J0cyB5dG0td2F0Y2ggLnBsYXllci1zaXple3BhZGRpbmctYm90dG9tOjB9LnBsYXllci1jb250YWluZXIgLnBsYXllci1hcGl7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5wbGF5ZXItYXBpW2hpZGRlbl0sLnBsYXllci1hcGlbbG9hZGluZz10cnVlXSwucGxheWVyLWFwaVtwbGF5YWJsZT1mYWxzZV17ZGlzcGxheTpub25lfSNwbGF5ZXIuaW5saW5lLW9uLXRodW1ibmFpbHtwYWRkaW5nOjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjB9LnBsYXllci1jb250YWluZXIgLmh0bWw1LXZpZGVvLXBsYXllcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MH15dG0tYXBwe2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3cteDpoaWRkZW59W2hhcy1zb2Z0LWJhcj10cnVlXSB5dG0tYXBwe3BhZGRpbmctYm90dG9tOjMwcHh9W2hhcy1waXZvdC1iYXI9dHJ1ZV0geXRtLWFwcHtwYWRkaW5nLWJvdHRvbTo0OHB4fXl0bS1oZWFkZXIuaXMtYXV0b21vdGl2ZSx5dG0taGVhZGVyLnN0aWNreS1wbGF5ZXIseXRtLW1vYmlsZS10b3BiYXItcmVuZGVyZXIuaXMtYXV0b21vdGl2ZSx5dG0tbW9iaWxlLXRvcGJhci1yZW5kZXJlci5zaG9ydHMtdG9wYmFyLHl0bS1tb2JpbGUtdG9wYmFyLXJlbmRlcmVyLnN0aWNreS1wbGF5ZXJ7cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDo0O3BhZGRpbmc6MDtwYWRkaW5nOjAgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkgMCBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpfXl0bS1tb2JpbGUtdG9wYmFyLXJlbmRlcmVyLnN0aWNreS1wbGF5ZXIub3V0e3RvcDotNDhweDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAxOTVtcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6YWxsfXl0bS1tb2JpbGUtdG9wYmFyLXJlbmRlcmVyLnN0aWNreS1wbGF5ZXIuaW57dG9wOjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMjI1bXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmFsbH0ucGxheWVyLWNvbnRhaW5lci5zdGlja3ktcGxheWVye3Bvc2l0aW9uOmZpeGVkO3RvcDo0OHB4O3JpZ2h0OjA7cmlnaHQ6ZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7bGVmdDowO2xlZnQ6ZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDoyfS5wbGF5ZXItY29udGFpbmVyLmhlYWRlci1pbi1wbGF5ZXIsLnBsYXllci1jb250YWluZXIuc3RpY2t5LXBsYXllci5oZWFkZXItaW4tcGxheWVye3RvcDowfXl0bS1hcHAuaXMtYXV0b21vdGl2ZSx5dG0tYXBwLnN0aWNreS1wbGF5ZXJ7ZGlzcGxheTpibG9jaztwYWRkaW5nLXRvcDo0OHB4fXl0bS1hcHAuaXMtYXV0b21vdGl2ZS5oZWFkZXItaW4tcGxheWVyLHl0bS1hcHAuc3RpY2t5LXBsYXllci5oZWFkZXItaW4tcGxheWVye3BhZGRpbmctdG9wOjB9QG1lZGlhIChtaW4td2lkdGg6OTMxcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXtib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1jb250YWluZXIsYm9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItY29udGFpbmVyLnN0aWNreS1wbGF5ZXJ7cmlnaHQ6MjU2cHh9Ym9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItcGxhY2Vob2xkZXItd3JhcHBlcnt3aWR0aDpjYWxjKDEwMCUgLSAyNTZweCl9Ym9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLWNvbnRhaW5lcixib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItY29udGFpbmVyLnN0aWNreS1wbGF5ZXJ7cmlnaHQ6MjU2cHh9Ym9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLXBsYWNlaG9sZGVyLXdyYXBwZXJ7d2lkdGg6Y2FsYygxMDAlIC0gMjU2cHgpfS5td2ViLXRhYmxldC1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHkucGFnZS1zaG9ydHNbZW5nYWdlbWVudC1wYW5lbC1vcGVuXSAucGxheWVyLWNvbnRhaW5lciwubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1jb250YWluZXIuc3RpY2t5LXBsYXllcntyaWdodDozMzZweH0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1wbGFjZWhvbGRlci13cmFwcGVye3dpZHRoOmNhbGMoMTAwJSAtIDMzNnB4KX0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItY29udGFpbmVyLC5td2ViLXRhYmxldC1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHk6bm90KC5wYWdlLXNob3J0cykgLnBsYXllci1jb250YWluZXIuc3RpY2t5LXBsYXllcntyaWdodDozMzZweH0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItcGxhY2Vob2xkZXItd3JhcHBlcnt3aWR0aDpjYWxjKDEwMCUgLSAzMzZweCl9Lm13ZWItYWxsLWxhbmRzY2FwZS10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyAucGxheWVyLWNvbnRhaW5lcntib3R0b206MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfUBzdXBwb3J0cyAoYXNwZWN0LXJhdGlvOjE2Lzkpey5td2ViLWxhbmRzY2FwZS1mdWxsLXNpemUtcGxheWVyIC5wbGF5ZXItY29udGFpbmVyIC5wbGF5ZXItc2l6ZSwubXdlYi1sYW5kc2NhcGUtZnVsbC1zaXplLXBsYXllciB5dG0td2F0Y2ggLnBsYXllci1zaXple3BhZGRpbmctYm90dG9tOnVuc2V0O2FzcGVjdC1yYXRpbzoxNi85fX0ubXdlYi1sYW5kc2NhcGUtZnVsbC1zaXplLXBsYXllciAucGxheWVyLWNvbnRhaW5lciAucGxheWVyLXNpemUsLm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgeXRtLXdhdGNoIC5wbGF5ZXItc2l6ZXttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA0OHB4KTttYXgtaGVpZ2h0OmNhbGMoMTAwc3ZoIC0gNDhweCl9fUBtZWRpYSAobWluLWFzcGVjdC1yYXRpbzoyMS8xMCkgYW5kIChtaW4td2lkdGg6OTMxcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyAucGxheWVyLWNvbnRhaW5lcntib3R0b206MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfX1AbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86MTYvOSkgYW5kIChtYXgtd2lkdGg6OTMwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsubXdlYi1waG9uZS1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHkucGFnZS1zaG9ydHNbZW5nYWdlbWVudC1wYW5lbC1vcGVuXSAucGxheWVyLWNvbnRhaW5lciwubXdlYi1waG9uZS1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHkucGFnZS1zaG9ydHNbZW5nYWdlbWVudC1wYW5lbC1vcGVuXSAucGxheWVyLWNvbnRhaW5lci5zdGlja3ktcGxheWVye3JpZ2h0OjMzNnB4fS5td2ViLXBob25lLW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItcGxhY2Vob2xkZXItd3JhcHBlcnt3aWR0aDpjYWxjKDEwMCUgLSAzMzZweCl9Lm13ZWItcGhvbmUtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItY29udGFpbmVyLC5td2ViLXBob25lLW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLWNvbnRhaW5lci5zdGlja3ktcGxheWVye3JpZ2h0OjMzNnB4fS5td2ViLXBob25lLW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLXBsYWNlaG9sZGVyLXdyYXBwZXJ7d2lkdGg6Y2FsYygxMDAlIC0gMzM2cHgpfS5td2ViLXBob25lLW1ldGFkYXRhLXNwbGl0LXZpZXcgLnBsYXllci1jb250YWluZXJ7Ym90dG9tOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn1Ac3VwcG9ydHMgKGFzcGVjdC1yYXRpbzoxNi85KXsubXdlYi1sYW5kc2NhcGUtZnVsbC1zaXplLXBsYXllciAubXdlYi1waG9uZS1tZXRhZGF0YS1zcGxpdC12aWV3IC5wbGF5ZXItY29udGFpbmVyIC5wbGF5ZXItc2l6ZSwubXdlYi1sYW5kc2NhcGUtZnVsbC1zaXplLXBsYXllciAubXdlYi1waG9uZS1tZXRhZGF0YS1zcGxpdC12aWV3IHl0bS13YXRjaCAucGxheWVyLXNpemV7cGFkZGluZy1ib3R0b206dW5zZXQ7aGVpZ2h0OmF1dG87YXNwZWN0LXJhdGlvOjE2Lzl9fX1AbWVkaWEgKG1pbi13aWR0aDoxMjgwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXtib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1jb250YWluZXIsYm9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItY29udGFpbmVyLnN0aWNreS1wbGF5ZXJ7cmlnaHQ6NTAwcHh9Ym9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItcGxhY2Vob2xkZXItd3JhcHBlcnt3aWR0aDpjYWxjKDEwMCUgLSA1MDBweCl9Ym9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLWNvbnRhaW5lcixib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItY29udGFpbmVyLnN0aWNreS1wbGF5ZXJ7cmlnaHQ6NTAwcHh9Ym9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLXBsYWNlaG9sZGVyLXdyYXBwZXJ7d2lkdGg6Y2FsYygxMDAlIC0gNTAwcHgpfS5td2ViLXRhYmxldC1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHkucGFnZS1zaG9ydHNbZW5nYWdlbWVudC1wYW5lbC1vcGVuXSAucGxheWVyLWNvbnRhaW5lciwubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1jb250YWluZXIuc3RpY2t5LXBsYXllcntyaWdodDo1MDBweH0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1wbGFjZWhvbGRlci13cmFwcGVye3dpZHRoOmNhbGMoMTAwJSAtIDUwMHB4KX0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItY29udGFpbmVyLC5td2ViLXRhYmxldC1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHk6bm90KC5wYWdlLXNob3J0cykgLnBsYXllci1jb250YWluZXIuc3RpY2t5LXBsYXllcntyaWdodDo1MDBweH0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItcGxhY2Vob2xkZXItd3JhcHBlcnt3aWR0aDpjYWxjKDEwMCUgLSA1MDBweCl9fUBtZWRpYSAobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7eXRtLW1vYmlsZS10b3BiYXItcmVuZGVyZXIuc2hvcnRzLXRvcGJhcntyaWdodDo3MnB4fS5wbGF5ZXItY29udGFpbmVyIC5wbGF5ZXItc2l6ZSx5dG0td2F0Y2ggLnBsYXllci1zaXple3BhZGRpbmctYm90dG9tOmNhbGMoNTYuMjUlIC0gOTZweCl9Lm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgLnBsYXllci1jb250YWluZXIgLnBsYXllci1zaXplLC5td2ViLWxhbmRzY2FwZS1mdWxsLXNpemUtcGxheWVyIHl0bS13YXRjaCAucGxheWVyLXNpemV7aGVpZ2h0OmNhbGMoNTYuMjV2dyAtIDk2cHgpO3BhZGRpbmctYm90dG9tOnVuc2V0O21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDQ4cHgpO21heC1oZWlnaHQ6Y2FsYygxMDBzdmggLSA0OHB4KX19QG1lZGlhIChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXsucGxheWVyLWNvbnRhaW5lciAucGxheWVyLXNpemUseXRtLXdhdGNoIC5wbGF5ZXItc2l6ZXtwYWRkaW5nLWJvdHRvbTo1Ni4yNSV9fUBtZWRpYSAobWF4LXdpZHRoOjMyMHB4KSBhbmQgKG1heC1oZWlnaHQ6MjQwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsucGxheWVyLWNvbnRhaW5lciAucGxheWVyLXNpemUseXRtLXdhdGNoIC5wbGF5ZXItc2l6ZXtwYWRkaW5nLWJvdHRvbTo1Ni4yNSV9fUBtZWRpYSAobWluLXdpZHRoOjU1MHB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KSwobWluLXdpZHRoOjkzMXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7eXRtLWFwcHtwYWRkaW5nLXRvcDo0OHB4fXl0bS1oZWFkZXIseXRtLWhlYWRlci1iYXIseXRtLW1vYmlsZS10b3BiYXItcmVuZGVyZXJ7cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDo0fX0uY29udGVudC1lcnJvcntmb250LXNpemU6MS40cmVtO3BhZGRpbmc6MTJweDt0ZXh0LWFsaWduOmNlbnRlcn0jcGxheWVyLXRodW1ibmFpbC1vdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO29iamVjdC1maXQ6Y292ZXI7bWluLWhlaWdodDowfSNwbGF5ZXItY29udGFpbmVyLWlkW3BsYXlhYmxlPXRydWVdICNwbGF5ZXItdGh1bWJuYWlsLW92ZXJsYXl7dmlzaWJpbGl0eTpoaWRkZW59Ym9keS5wYWdlLXNob3J0cyxodG1sW3BhZ2Utc2hvcnRzXXtvdmVyc2Nyb2xsLWJlaGF2aW9yLXk6bm9uZX1ib2R5LmxvYWRpbmcucGFnZS1zaG9ydHMgI2hlYWRlcixib2R5LmxvYWRpbmcucGFnZS1zaG9ydHMgLnBsYXllci1wbGFjZWhvbGRlci13cmFwcGVye2Rpc3BsYXk6bm9uZX1ib2R5LnBhZ2Utc2hvcnRzICNwbGF5ZXItY29udGFpbmVyLWlkLGJvZHkucGFnZS1zaG9ydHMgLnBsYXllci1jb250YWluZXIgI3BsYXllcntoZWlnaHQ6MTAwJTt0b3A6MH0qey1tcy1mbGV4OjAgMSBhdXRvfWJ1dHRvbntwYWRkaW5nOjA7Ym9yZGVyOm5vbmU7b3V0bGluZTpub25lO2ZvbnQ6aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTppbmhlcml0O2NvbG9yOmluaGVyaXQ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH1odG1se3dvcmQtd3JhcDpicmVhay13b3JkO2NvbG9yOiMwMzAzMDM7YmFja2dyb3VuZC1jb2xvcjojZmZmOy13ZWJraXQtdGV4dC1zaXplLWFkanVzdDoxMDAlfWJvZHlbZGlzYWJsZS10YXAtaGlnaGxpZ2h0PXRydWVdIFtyb2xlPWJ1dHRvbl0sYm9keVtkaXNhYmxlLXRhcC1oaWdobGlnaHQ9dHJ1ZV0gYSxib2R5W2Rpc2FibGUtdGFwLWhpZ2hsaWdodD10cnVlXSBidXR0b257LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fWh0bWxbZGFya2VyLWRhcmstdGhlbWVde2JhY2tncm91bmQtY29sb3I6I2ZmZn1odG1sLndhdGNoLXNjcm9sbHtzY3JvbGwtcGFkZGluZy10b3A6NDhweH1odG1sLndhdGNoLXNjcm9sbC5zdGlja3ktcGxheWVye3Njcm9sbC1wYWRkaW5nLXRvcDpjYWxjKDQ4cHggKyA1Ni4yNXZ3KX1pbnB1dHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmctYm90dG9tOjRweDtvdXRsaW5lOm5vbmU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MDttYXJnaW4tYm90dG9tOjFweDtmb250OmluaGVyaXQ7Y29sb3I6IzAzMDMwMztib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNzM3MzczO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9aW5wdXQ6Zm9jdXN7bWFyZ2luLWJvdHRvbTowO2JvcmRlci1ib3R0b20td2lkdGg6MnB4O2JvcmRlci1ib3R0b20tY29sb3I6IzAzMDMwM31pbnB1dDo6LW1vei1wbGFjZWhvbGRlcntjb2xvcjojNjA2MDYwO29wYWNpdHk6MX1pbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6IzYwNjA2MDtvcGFjaXR5OjF9dGV4dGFyZWF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtwYWRkaW5nLWJvdHRvbTo0cHg7b3V0bGluZTpub25lOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjA7bWFyZ2luLWJvdHRvbToxcHg7Zm9udDppbmhlcml0O2NvbG9yOiMwMzAzMDM7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO21pbi1oZWlnaHQ6OC40cmVtO3dpZHRoOjEwMCU7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSk7cGFkZGluZzo4cHh9dGV4dGFyZWE6Oi1tb3otcGxhY2Vob2xkZXJ7Y29sb3I6IzYwNjA2MDtvcGFjaXR5OjF9dGV4dGFyZWE6OnBsYWNlaG9sZGVye2NvbG9yOiM2MDYwNjA7b3BhY2l0eToxfWZvcm17bWFyZ2luOjB9YXtjb2xvcjpjdXJyZW50Q29sb3I7dGV4dC1kZWNvcmF0aW9uOm5vbmV9aDF7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtvdmVyZmxvdzpoaWRkZW47bGluZS1oZWlnaHQ6MS4yNTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2ZvbnQtd2VpZ2h0OjQwMDttYXJnaW46MCAwIDNweDttYXJnaW4tYm90dG9tOjB9aDJ7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtvdmVyZmxvdzpoaWRkZW47bGluZS1oZWlnaHQ6MS4yNTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2ZvbnQtd2VpZ2h0OjQwMDttYXJnaW46MCAwIDNweDtmb250LXNpemU6MS44cmVtO21hcmdpbi1ib3R0b206MH1oM3tkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDttYXgtaGVpZ2h0OjIuNWVtOy13ZWJraXQtbGluZS1jbGFtcDoyO292ZXJmbG93OmhpZGRlbjtsaW5lLWhlaWdodDoxLjI1O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbjowIDAgM3B4O2ZvbnQtc2l6ZToxLjRyZW07bWFyZ2luLWJvdHRvbTowfWg0e2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO21heC1oZWlnaHQ6Mi41ZW07LXdlYmtpdC1saW5lLWNsYW1wOjI7b3ZlcmZsb3c6aGlkZGVuO2xpbmUtaGVpZ2h0OjEuMjU7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmb250LXdlaWdodDo0MDA7bWFyZ2luOjAgMCAzcHg7Zm9udC1zaXplOjEuM3JlbTttYXJnaW4tYm90dG9tOjB9aW1ne21pbi13aWR0aDoxcHg7bWluLWhlaWdodDoxcHg7ZmlsdGVyOm5vbmV9aW1nOm5vdChbc3JjXSl7dmlzaWJpbGl0eTpoaWRkZW59OmZvY3Vze291dGxpbmU6bm9uZX1we21hcmdpbjowfS5pdGVte21hcmdpbi10b3A6MTJweDtkaXNwbGF5OmJsb2NrfS5pdGVtOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbToxMnB4fUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lml0ZW17bWFyZ2luLXRvcDo4cHh9fS5pbWFnZS1vdmVybGF5LXRleHR7dGV4dC1zaGFkb3c6MXB4IDFweCBoc2xhKDAsMCUsNi43JSwuMiksLTFweCAxcHggaHNsYSgwLDAlLDYuNyUsLjIpLC0xcHggLTFweCBoc2xhKDAsMCUsNi43JSwuMiksMXB4IC0xcHggaHNsYSgwLDAlLDYuNyUsLjIpfSNwbGF5ZXItY29udHJvbC1jb250YWluZXJ7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCk7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lfVtkaXI9cnRsXSAjcGxheWVyLXNob3J0cy1jb250YWluZXJ7ZGlyZWN0aW9uOnJ0bH1bZmF1eC1mdWxsc2NyZWVuPXRydWVdICNwbGF5ZXItY29udHJvbC1jb250YWluZXIsW2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAucGxheWVyLWNvbnRhaW5lciAjcGxheWVyLFtzaG9ydHMtcGxheWVyPXRydWVdICNwbGF5ZXItc2hvcnRzLWNvbnRhaW5lcixbc2hvcnRzLXBsYXllcj10cnVlXSAucGxheWVyLWNvbnRhaW5lciAjcGxheWVye3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO3BhZGRpbmctYm90dG9tOjB9Lm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgLnBsYXllci1jb250YWluZXI6LXdlYmtpdC1mdWxsLXNjcmVlbiAucGxheWVyLXNpemUsLm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgLnBsYXllci1jb250YWluZXI6ZnVsbHNjcmVlbiAucGxheWVyLXNpemUsLm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgW2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAucGxheWVyLWNvbnRhaW5lciAucGxheWVyLXNpemV7aGVpZ2h0OjEwMCU7bWF4LWhlaWdodDoxMDAlO2FzcGVjdC1yYXRpbzphdXRvfVtmYXV4LWZ1bGxzY3JlZW49dHJ1ZV1bZnVsbHNjcmVlbi1yZWplY3RlZD10cnVlXSAjYXBwe2Rpc3BsYXk6bm9uZX1bc2hvcnRzLXBsYXllcj10cnVlXSAucGxheWVyLWNvbnRhaW5lciAuaHRtbDUtdmlkZW8tY29udGFpbmVye3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAucGxheWVyLWNvbnRhaW5lcixbZmF1eC1mdWxsc2NyZWVuPXRydWVdIHl0bS1tb2JpbGUtdG9wYmFyLXJlbmRlcmVyLFtzaG9ydHMtcGxheWVyPXRydWVdIC5wbGF5ZXItY29udGFpbmVyLFtzaG9ydHMtcGxheWVyPXRydWVdIHl0bS1tb2JpbGUtdG9wYmFyLXJlbmRlcmVyOm5vdCguc2hvcnRzLXRvcGJhcil7b3ZlcmZsb3c6dmlzaWJsZTt6LWluZGV4OjR9W3Nob3J0cy1wbGF5ZXI9dHJ1ZV0gLnBsYXllci1jb250YWluZXIgLnl0cC11bm11dGUueXRwLXBvcHVwe3RvcDo3NXB4O2xlZnQ6MDtsZWZ0OmVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCl9W3JvbGU9YnV0dG9uXSxidXR0b24saW5wdXRbdHlwZT1jaGVja2JveF0sc2VsZWN0e2N1cnNvcjpwb2ludGVyfXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MTAwJTstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjF9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbaXMtd2ViXXt3aWR0aDp2YXIoLS15dGQtc2hvcnRzLXBsYXllci13aWR0aCk7aGVpZ2h0OnZhcigtLXl0ZC1zaG9ydHMtcGxheWVyLWhlaWdodCl9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbaXMtd2ViXSAucmVlbC1wbGF5ZXItb3ZlcmxheS1tZXRhZGF0YXttYXJnaW4tcmlnaHQ6dmFyKC0tYWN0aW9uLWJ1dHRvbi1mdWxsLXdpZHRoLW5lZ2F0aXZlKTtwYWRkaW5nLXJpZ2h0OnZhcigtLWFjdGlvbi1idXR0b24tZnVsbC13aWR0aCl9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbaXMtd2ViXVtleHRyYWN0LWFjdGlvbi1iYXJde3dpZHRoOmNhbGModmFyKC0teXRkLXNob3J0cy1wbGF5ZXItd2lkdGgpICsgNzJweCl9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbaXMtd2ViXVtleHRyYWN0LWFjdGlvbi1iYXJdIC5yZWVsLXBsYXllci1vdmVybGF5LW1ldGFkYXRhe21hcmdpbi1yaWdodDowO3BhZGRpbmctcmlnaHQ6MH15dG0tcmVlbC1wbGF5ZXItb3ZlcmxheS1yZW5kZXJlcltpcy13ZWJdW2V4dHJhY3QtYWN0aW9uLWJhcl0gLnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9uc3ttYXJnaW4tYm90dG9tOjE2cHh9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbaXMtd2ViXVtleHRyYWN0LW92ZXJsYXlde3dpZHRoOjEwMCV9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbaXMtd2ViXVtleHRyYWN0LW92ZXJsYXldIC5yZWVsLXBsYXllci1vdmVybGF5LW1ldGFkYXRhe3dpZHRoOmNhbGMoKDEwMCUgLSBtYXgodmFyKC0teXRkLXNob3J0cy1wbGF5ZXItd2lkdGgpLCAzMTVweCkpLzIpO21hcmdpbi1yaWdodDptYXgodmFyKC0teXRkLXNob3J0cy1wbGF5ZXItd2lkdGgpLDMxNXB4KTtwYWRkaW5nLXJpZ2h0OjA7YmFja2dyb3VuZC1pbWFnZTpub25lO2ZpbHRlcjp1bnNldDttaW4td2lkdGg6MzYwcHg7bWF4LXdpZHRoOjQ4MHB4O3BhZGRpbmctbGVmdDoxNnB4fXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVyW2lzLXdlYl1bZXh0cmFjdC1vdmVybGF5XSAucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MX15dG0tcmVlbC1wbGF5ZXItb3ZlcmxheS1yZW5kZXJlciBidXR0b246bm90KFthcmlhLXByZXNzZWQ9dHJ1ZV0pIGMzLWljb257ZmlsdGVyOmRyb3Atc2hhZG93KDAgMXB4IDZweCByZ2JhKDAsMCwwLC40KSl9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXIgLnl0U3BlY0J1dHRvblNoYXBlV2l0aExhYmVsTGFiZWx7dGV4dC1zaGFkb3c6MCAxcHggMnB4IHJnYmEoMCwwLDAsMC44KX0ucmVlbC1wbGF5ZXItb3ZlcmxheS1tYWluLWNvbnRlbnR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxOy1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDplbmQ7LW1vei1ib3gtYWxpZ246c3RyZXRjaDthbGlnbi1pdGVtczpzdHJldGNofS5yZWVsLXBsYXllci1vdmVybGF5LW1ldGFkYXRhe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1mbGV4OjE7ZmxleDoxIDEgMCU7YWxpZ24tc2VsZjpmbGV4LWVuZDstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7bWluLXdpZHRoOjA7bWFyZ2luOjAgMCAxNnB4IDE2cHh9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbZGF0YS1oYXMtaW5mby1wYW5lbD10cnVlXSsuUHJvZ3Jlc3NCYXJTaG93aW5ne3BhZGRpbmctdG9wOjE2cHh9LnJlZWwtcGxheWVyLW92ZXJsYXktbWV0YWRhdGEgeXQtbWV0YWRhdGEtYmFkZ2UtcmVuZGVyZXJ7aGVpZ2h0OjI0cHg7cGFkZGluZzozcHggNHB4IDNweCAwfS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWFyZ2luOjAgNHB4IDE2cHggNHB4Oy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0ucmVlbC1wbGF5ZXItb3ZlcmxheS10b3AtYmFye2hlaWdodDo0OHB4O3dpZHRoOjQ4cHg7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZy10b3A6MnB4fS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgLmJ1dHRvbi13aXRoLWljb257bWFyZ2luOjAhaW1wb3J0YW50O21pbi13aWR0aDowO3RleHQtdHJhbnNmb3JtOm5vbmV9LnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyAuYnV0dG9uLXdpdGgtaWNvbiAuYnV0dG9uLXJlbmRlcmVyLXRleHR7bWFyZ2luLXRvcDo3cHg7bWF4LXdpZHRoOjY0cHg7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLWJ1dHRvbi1yZW5kZXJlcnttYXgtd2lkdGg6NjRweH0ucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIHl0bS1ib3R0b20tc2hlZXQtcmVuZGVyZXIsLnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyB5dG0tbWVudS1yZW5kZXJlcnttYXJnaW4tdG9wOjRweDtkaXNwbGF5OmJsb2NrOy1tb3otYm94LWZsZXg6MTtmbGV4OjE7cGFkZGluZy1yaWdodDo0cHg7cGFkZGluZy10b3A6NHB4O3BhZGRpbmctYm90dG9tOjhweH0ucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIHBpdm90LWJ1dHRvbi12aWV3LW1vZGVsLC5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLWJ1dHRvbi1yZW5kZXJlciwucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIHl0bS10b2dnbGUtYnV0dG9uLXJlbmRlcmVye2Rpc3BsYXk6YmxvY2s7cGFkZGluZy10b3A6NHB4O3BhZGRpbmctYm90dG9tOjhweDttYXJnaW46MH1AbWVkaWEgKG1heC13aWR0aDo5MzBweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnN7LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDQ4cHgpfS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgcGl2b3QtYnV0dG9uLXZpZXctbW9kZWwsLnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyB5dG0tYnV0dG9uLXJlbmRlcmVyLC5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLXRvZ2dsZS1idXR0b24tcmVuZGVyZXJ7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOi4zZW19LnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyB5dG0tYm90dG9tLXNoZWV0LXJlbmRlcmVyLC5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLW1lbnUtcmVuZGVyZXJ7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOjB9fS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLW1lbnUtcmVuZGVyZXIgLmljb24tYnV0dG9ue2hlaWdodDo0OHB4O3dpZHRoOjQ4cHh9LnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyBidXR0b24+LmJ1dHRvbi13aXRoLWljb24taW5uZXJ7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVyIHl0bS1wcm9maWxlLWljb257Ym9yZGVyOjFweCBzb2xpZCAjZmZmfUBtZWRpYSAobWF4LWhlaWdodDo0MTFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgLmJ1dHRvbi13aXRoLWljb24sLnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyB5dG0tZm9yY2VkLW11dGUtbWVzc2FnZS1yZW5kZXJlcnttaW4taGVpZ2h0OjQwcHh9LnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyAuYnV0dG9uLXdpdGgtaWNvbiAuYnV0dG9uLXJlbmRlcmVyLXRleHQsLnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyAueXRBdHRyaWJ1dGVkU3RyaW5nSG9zdHtkaXNwbGF5Om5vbmV9LnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyB5dG0tbWVudS1yZW5kZXJlciAuaWNvbi1idXR0b257aGVpZ2h0OjMycHh9fS5sb2dvLWluLXBsYXllciwubW9iaWxlLXRvcGJhci1sb2dve2NvbG9yOiNmMDM7cGFkZGluZzowIDEycHg7d2lkdGg6MzBweDtoZWlnaHQ6MzBweDttYXJnaW4tbGVmdDotMXB4fS5sb2dvLWluLXBsYXllci5mdWxsLWxvZ28sLm1vYmlsZS10b3BiYXItbG9nby5mdWxsLWxvZ297d2lkdGg6OTNweDtoZWlnaHQ6MjBweDtjb2xvcjojMDAwO21hcmdpbi1sZWZ0OjB9LmxvZ28taW4tcGxheWVyLnNob3J0cy1sb2dvLC5tb2JpbGUtdG9wYmFyLWxvZ28uc2hvcnRzLWxvZ297d2lkdGg6NzNweDtoZWlnaHQ6MjVweDtjb2xvcjojMDAwO21hcmdpbi1sZWZ0OjB9LmxvZ28taW4tcGxheWVyLmZ1bGwtbG9nby1yZWQsLm1vYmlsZS10b3BiYXItbG9nby5mdWxsLWxvZ28tcmVke3dpZHRoOjEwMXB4fS5sb2dvLWluLXBsYXllci1lbmRwb2ludCwubW9iaWxlLXRvcGJhci1oZWFkZXItZW5kcG9pbnR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtoZWlnaHQ6NDhweDt0ZXh0LWFsaWduOmxlZnR9LmxvZ28taW4tcGxheWVyLmZ1bGwtbG9nb3tjb2xvcjojZmZmfS5tb25vY2hyb21hdGljIHN2ZyBwYXRoe2ZpbGw6I2ZmZn15dG0tc3Vic2NyaWJlLWJ1dHRvbi1yZW5kZXJlcntkaXNwbGF5OmJsb2NrfXl0bS1zdWJzY3JpYmUtYnV0dG9uLXJlbmRlcmVyIC5idXR0b24tcmVuZGVyZXItaWNvbntoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS5tb2Rlcm4tc3Vic2NyaWJlLWJ1dHRvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5zdWJzY3JpYmUtYnV0dG9uLWNvdW50e2NvbG9yOiM2MDYwNjA7Zm9udC1zaXplOjEuNHJlbTttYXJnaW46MCA4cHh9QGtleWZyYW1lcyBub3RpZmljYXRpb24tYmVsbC1mYWRlLWluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTpub25lfX0ubm90aWZpY2F0aW9uLWJlbGwtY29udGFpbmVye2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDo1O2hlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6NTAlO292ZXJmbG93OmhpZGRlbn0ubm90aWZpY2F0aW9uLWJlbGwtY29udGFpbmVyLmhpZGRlbntkaXNwbGF5Om5vbmV9Lm5vdGlmaWNhdGlvbi1iZWxse2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDotMnB4O2FuaW1hdGlvbjpub3RpZmljYXRpb24tYmVsbC1mYWRlLWluIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ubW9kZXJuLXN1YnNjcmliZS1idXR0b24tY29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmV9Lm1vZGVybi1zdWJzY3JpYmUtYnV0dG9uIC55dEF0dHJpYnV0ZWRTdHJpbmdIb3N0e3RyYW5zaXRpb246YWxsIC4yczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTtwYWRkaW5nLWxlZnQ6MH0uWXRtVmlkZW9JbmZvRXhwYW5kZWQgLm1vZGVybi1zdWJzY3JpYmUtYnV0dG9uIC55dEF0dHJpYnV0ZWRTdHJpbmdIb3N0LC55dG1WaWRlb0luZm9FeHBhbmRlZCAubW9kZXJuLXN1YnNjcmliZS1idXR0b24gLnl0QXR0cmlidXRlZFN0cmluZ0hvc3R7dHJhbnNpdGlvbjpub25lfS53aXRoLW5vdGlmaWNhdGlvbi1iZWxsIC55dEF0dHJpYnV0ZWRTdHJpbmdIb3N0e3BhZGRpbmctbGVmdDoyNHB4fS55dENvcmVJbWFnZUhvc3R7dmlzaWJpbGl0eTpoaWRkZW47ZGlzcGxheTppbmxpbmUtYmxvY2s7bWluLWhlaWdodDoxcHg7bWluLXdpZHRoOjFweH0ueXRDb3JlSW1hZ2VMb2FkZWR7dmlzaWJpbGl0eTppbmhlcml0fS55dENvcmVJbWFnZUZpbGxQYXJlbnRIZWlnaHR7aGVpZ2h0OjEwMCV9Lnl0Q29yZUltYWdlRmlsbFBhcmVudFdpZHRoe3dpZHRoOjEwMCV9Lnl0Q29yZUltYWdlT2JqZWN0UG9zaXRpb25Ub3BMZWZ0e29iamVjdC1wb3NpdGlvbjp0b3AgbGVmdH0ueXRDb3JlSW1hZ2VPYmplY3RQb3NpdGlvblRvcFJpZ2h0e29iamVjdC1wb3NpdGlvbjp0b3AgcmlnaHR9Lnl0Q29yZUltYWdlQ29udGVudE1vZGVTY2FsZVRvRmlsbHtvYmplY3QtZml0OmZpbGx9Lnl0Q29yZUltYWdlQ29udGVudE1vZGVTY2FsZUFzcGVjdEZpdHtvYmplY3QtZml0OmNvbnRhaW59Lnl0Q29yZUltYWdlQ29udGVudE1vZGVTY2FsZUFzcGVjdEZpbGx7b2JqZWN0LWZpdDpjb3Zlcn0ueXRDb3JlSW1hZ2VDb250ZW50TW9kZUNlbnRlcntvYmplY3QtZml0Om5vbmU7b2JqZWN0LXBvc2l0aW9uOmNlbnRlciBjZW50ZXJ9Lnl0Q29yZUltYWdlRmxpcFJ0bHt0cmFuc2Zvcm06c2NhbGVYKC0xKX0ueXRDb3JlSW1hZ2VHcmFkaWVudENvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dENvcmVJbWFnZUdyYWRpZW50e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO3otaW5kZXg6MTtwb2ludGVyLWV2ZW50czpub25lfTpyb290ey0teXQtYXR0cmlidXRlZC1zdHJpbmctbGluay1ob3Zlci1jb2xvcjp1bnNldH0ueXRBdHRyaWJ1dGVkU3RyaW5nSW5saW5lQmxvY2tNb2R7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lnl0QXR0cmlidXRlZFN0cmluZ0ltYWdlQWxpZ25tZW50Qm90dG9te3ZlcnRpY2FsLWFsaWduOmJvdHRvbX0ueXRBdHRyaWJ1dGVkU3RyaW5nSW1hZ2VBbGlnbm1lbnRCYXNlbGluZXt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX0ueXRBdHRyaWJ1dGVkU3RyaW5nSW1hZ2VBbGlnbm1lbnRWZXJ0aWNhbENlbnRlcnt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7cG9zaXRpb246cmVsYXRpdmU7dG9wOi0uMDdlbX0ueXRBdHRyaWJ1dGVkU3RyaW5nTGlzdEdyb3Vwey1tb3otcGFkZGluZy1zdGFydDoyMHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjIwcHh9Lnl0QXR0cmlidXRlZFN0cmluZ0xpbmt7dGV4dC1kZWNvcmF0aW9uOm5vbmU7ZGlzcGxheTppbmxpbmV9Lnl0QXR0cmlidXRlZFN0cmluZ0xpbmtDYWxsVG9BY3Rpb25Db2xvcntjb2xvcjojMDY1ZmQ0fS55dEF0dHJpYnV0ZWRTdHJpbmdMaW5rT3ZlcmxheUNhbGxUb0FjdGlvbkNvbG9ye2NvbG9yOiMzZWE2ZmZ9Lnl0QXR0cmlidXRlZFN0cmluZ0xpbmtbcm9sZT1idXR0b25de2N1cnNvcjpwb2ludGVyfS55dEF0dHJpYnV0ZWRTdHJpbmdMaW5rSW5oZXJpdENvbG9yIC55dEF0dHJpYnV0ZWRTdHJpbmdMaW5rQ2FsbFRvQWN0aW9uQ29sb3J7Y29sb3I6aW5oZXJpdH0ueXRBdHRyaWJ1dGVkU3RyaW5nTGlua0luaGVyaXRDb2xvciAueXRBdHRyaWJ1dGVkU3RyaW5nTGlua0NhbGxUb0FjdGlvbkNvbG9yOmhvdmVye2NvbG9yOnZhcigtLXl0LWF0dHJpYnV0ZWQtc3RyaW5nLWxpbmstaG92ZXItY29sb3IpfS55dEF0dHJpYnV0ZWRTdHJpbmdFbGxpcHNpc1RydW5jYXRle2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS55dEF0dHJpYnV0ZWRTdHJpbmdXaGl0ZVNwYWNlTm9XcmFwe3doaXRlLXNwYWNlOm5vd3JhcH0ueXRBdHRyaWJ1dGVkU3RyaW5nV2hpdGVTcGFjZVByZVdyYXB7d2hpdGUtc3BhY2U6cHJlLXdyYXB9Lnl0QXR0cmlidXRlZFN0cmluZ0lnbm9yZVNwbGl0TGluZXN7d2hpdGUtc3BhY2U6bm9ybWFsfS55dEF0dHJpYnV0ZWRTdHJpbmdUZXh0QWxpZ25tZW50TGVmdHtkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246bGVmdH0ueXRBdHRyaWJ1dGVkU3RyaW5nVGV4dEFsaWdubWVudFJpZ2h0e2Rpc3BsYXk6YmxvY2s7dGV4dC1hbGlnbjpyaWdodH0ueXRBdHRyaWJ1dGVkU3RyaW5nVGV4dEFsaWdubWVudENlbnRlcntkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246Y2VudGVyfS55dEF0dHJpYnV0ZWRTdHJpbmdUZXh0QWxpZ25tZW50SnVzdGlmaWVke2Rpc3BsYXk6YmxvY2s7dGV4dC1hbGlnbjpqdXN0aWZ5fS55dEF0dHJpYnV0ZWRTdHJpbmdUZXh0QWxpZ25tZW50TGF5b3V0U3RhcnR7ZGlzcGxheTpibG9jazthbGlnbi1zZWxmOmZsZXgtc3RhcnR9Lnl0QXR0cmlidXRlZFN0cmluZ1RleHRBbGlnbm1lbnRVbmtub3due2Rpc3BsYXk6YmxvY2s7dGV4dC1hbGlnbjppbmhlcml0fS55dEF0dHJpYnV0ZWRTdHJpbmdXb3JkV3JhcHBpbmd7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZX0ueXRBdHRyaWJ1dGVkU3RyaW5nVW5kZXJsaW5lZHstbW96LXRleHQtZGVjb3JhdGlvbi1saW5lOnVuZGVybGluZTt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmV9Lnl0QXR0cmlidXRlZFN0cmluZ1N0cmlrZXRocm91Z2h7LW1vei10ZXh0LWRlY29yYXRpb24tbGluZTpsaW5lLXRocm91Z2g7dGV4dC1kZWNvcmF0aW9uLWxpbmU6bGluZS10aHJvdWdofS55dEF0dHJpYnV0ZWRTdHJpbmdVbmRlcmxpbmVTdHJpa2V0aHJvdWdoey1tb3otdGV4dC1kZWNvcmF0aW9uLWxpbmU6dW5kZXJsaW5lIGxpbmUtdGhyb3VnaDt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmUgbGluZS10aHJvdWdofS55dEF0dHJpYnV0ZWRTdHJpbmdMaW5lU3R5bGVOb25le3RleHQtZGVjb3JhdGlvbjpub25lfS55dEF0dHJpYnV0ZWRTdHJpbmdMaW5lU3R5bGVTaW5nbGV7LW1vei10ZXh0LWRlY29yYXRpb24tc3R5bGU6c29saWQ7dGV4dC1kZWNvcmF0aW9uLXN0eWxlOnNvbGlkfS55dEF0dHJpYnV0ZWRTdHJpbmdMaW5lU3R5bGVEb3R7LW1vei10ZXh0LWRlY29yYXRpb24tc3R5bGU6ZG90dGVkO3RleHQtZGVjb3JhdGlvbi1zdHlsZTpkb3R0ZWR9Lnl0QXR0cmlidXRlZFN0cmluZ0Jhc2VsaW5lT2Zmc2V0U3Vic2NyaXB0e3ZlcnRpY2FsLWFsaWduOnN1Yn0ueXRBdHRyaWJ1dGVkU3RyaW5nQmFzZWxpbmVPZmZzZXRTdXBlcnNjcmlwdHt2ZXJ0aWNhbC1hbGlnbjpzdXBlcn0ueXRBdHRyaWJ1dGVkU3RyaW5nQmFzZWxpbmVPZmZzZXRVbmtub3due3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS55dEF0dHJpYnV0ZWRTdHJpbmdJdGFsaWNpemVke2ZvbnQtc3R5bGU6aXRhbGljfS55dEF0dHJpYnV0ZWRTdHJpbmdIZWFkaW5nMXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRBdHRyaWJ1dGVkU3RyaW5nSGVhZGluZzJ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo1MDB9Lnl0QXR0cmlidXRlZFN0cmluZ0hlYWRpbmcze2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRCdXR0b25PckFuY2hvckhvc3R7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lnl0QnV0dG9uT3JBbmNob3JCdXR0b257ZGlzcGxheTppbmxpbmUtYmxvY2s7Ym9yZGVyOm5vbmU7Y29sb3I6aW5oZXJpdDtwYWRkaW5nOjA7bWFyZ2luOjA7Y3Vyc29yOnBvaW50ZXI7b3V0bGluZS13aWR0aDowOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtiYWNrZ3JvdW5kOm5vbmU7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dGV4dC1hbGlnbjp1bnNldDt3aWR0aDoxMDAlOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjpyZ2JhKDAsMCwwLDApOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0ueXRCdXR0b25PckFuY2hvckFuY2hvcntkaXNwbGF5OmlubGluZS1ibG9jaztjb2xvcjppbmhlcml0O3BhZGRpbmc6MDttYXJnaW46MDt0ZXh0LWRlY29yYXRpb246bm9uZTstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MTAwJX0ueXRSYWRpb1NoYXBlSG9zdHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrfS55dFJhZGlvU2hhcGVJbnB1dHtwb3NpdGlvbjphYnNvbHV0ZTtvcGFjaXR5Oi4wMDAwMDE7bWFyZ2luOjA7bGVmdDoxMnB4O3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRSYWRpb1NoYXBlTGFiZWxDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttaW4taGVpZ2h0OjQ4cHg7d2lkdGg6MTAwJTtjb2xvcjojMDMwMzAzfS55dFJhZGlvU2hhcGVLZXlib2FyZEZvY3VzZWR7b3V0bGluZToycHggc29saWQgY3VycmVudENvbG9yO291dGxpbmUtb2Zmc2V0Oi0ycHg7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0UmFkaW9TaGFwZURpc2FibGVke2NvbG9yOiM5MDkwOTB9Lnl0UmFkaW9TaGFwZUxhYmVsey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTtkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nLXJpZ2h0OjEycHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo0MDB9aW5wdXQ6Y2hlY2tlZCtsYWJlbD4ueXRSYWRpb1NoYXBlUmFkaW8+OmZpcnN0LWNoaWxke2Rpc3BsYXk6bm9uZX1pbnB1dDpub3QoOmNoZWNrZWQpK2xhYmVsPi55dFJhZGlvU2hhcGVSYWRpbz46bGFzdC1jaGlsZHtkaXNwbGF5Om5vbmV9Lnl0UmFkaW9TaGFwZVJhZGlvRGVmYXVsdFN0eWxle2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCAxMnB4O2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9aW5wdXQ6bm90KDpjaGVja2VkKStsYWJlbD4ueXRSYWRpb1NoYXBlQ2hlY2tJY29uPjpmaXJzdC1jaGlsZHt2aXNpYmlsaXR5OmhpZGRlbn0ueXRSYWRpb1NoYXBlQ29tcGFjdHttaW4taGVpZ2h0OjQwcHh9Lnl0UmFkaW9TaGFwZUV2ZW50UGFzc3Rocm91Z2h7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRSYWRpb1NoYXBlVGFwcGFibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2s7Y29sb3I6IzAzMDMwM30ueXRMaXN0SXRlbVZpZXdNb2RlbEhvc3Q6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOm5vbmV9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxIaWRkZW57ZGlzcGxheTpub25lfS55dExpc3RJdGVtVmlld01vZGVsS2V5Ym9hcmRGb2N1c2VkOmZvY3VzLXdpdGhpbntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSk7b3V0bGluZToycHggc29saWQgY3VycmVudENvbG9yO291dGxpbmUtb2Zmc2V0Oi0ycHg7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxCdXR0b25PckFuY2hvcnt3aWR0aDphdXRvfS55dExpc3RJdGVtVmlld01vZGVsQnV0dG9uT3JBbmNob3I6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOm5vbmV9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxOb1RyYWlsaW5nVGV4dCAueXRMaXN0SXRlbVZpZXdNb2RlbEJ1dHRvbk9yQW5jaG9yLC55dExpc3RJdGVtVmlld01vZGVsTm9UcmFpbGluZ1RleHQgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUZXh0V3JhcHBlcnttaW4td2lkdGg6MH0ueXRMaXN0SXRlbVZpZXdNb2RlbFRleHRXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7bWluLWhlaWdodDo0NHB4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZVdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxle2NvbG9yOiMwMzAzMDM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxle21heC1oZWlnaHQ6NC40cmVtfS55dExpc3RJdGVtVmlld01vZGVsU2luZ2xlTGluZVRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6Mi4ycmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsU2luZ2xlTGluZVRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGV7bWF4LWhlaWdodDoyLjJyZW19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxTdWJ0aXRsZXtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dExpc3RJdGVtVmlld01vZGVsV2l0aEJhZGdle21hcmdpbi1sZWZ0OjhweH0ueXRMaXN0SXRlbVZpZXdNb2RlbFN1YnRpdGxlQ29udGFpbmVye21hcmdpbi10b3A6MnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxTdXBlcmxhYmVse2NvbG9yOiM2MDYwNjA7bWFyZ2luLWJvdHRvbToycHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDB9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxTZWxlY3Rpb25UZXh0e2NvbG9yOiM2MDYwNjA7bWFyZ2luLWxlZnQ6NHB4fS55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdTZWxlY3Rpb25UZXh0e21hcmdpbi1sZWZ0OjEycHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHttYXgtaGVpZ2h0OjQuNHJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbE5ld0NvbnRlbnRJbmRpY2F0b3J7d2lkdGg6NHB4O2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0fS55dExpc3RJdGVtVmlld01vZGVsQ2hldnJvbkljb257aGVpZ2h0OjE4cHg7d2lkdGg6MThweDtmbGV4LXNocmluazowfS55dExpc3RJdGVtVmlld01vZGVsTGVhZGluZ3ttYXJnaW4tcmlnaHQ6MTJweH0ueXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjEycHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZzpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4tbGVmdDoxMnB4fS55dExpc3RJdGVtVmlld01vZGVsUHJpb3JpdGl6ZVRyYWlsaW5nIC55dExpc3RJdGVtVmlld01vZGVsQnV0dG9uT3JBbmNob3IsLnl0TGlzdEl0ZW1WaWV3TW9kZWxQcmlvcml0aXplVHJhaWxpbmcgLnl0TGlzdEl0ZW1WaWV3TW9kZWxTdWJ0aXRsZUNvbnRhaW5lciwueXRMaXN0SXRlbVZpZXdNb2RlbFByaW9yaXRpemVUcmFpbGluZyAueXRMaXN0SXRlbVZpZXdNb2RlbFRleHRXcmFwcGVyLC55dExpc3RJdGVtVmlld01vZGVsUHJpb3JpdGl6ZVRyYWlsaW5nIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGVXcmFwcGVye21pbi13aWR0aDowfS55dExpc3RJdGVtVmlld01vZGVsUHJpb3JpdGl6ZVRyYWlsaW5nIC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmcsLnl0TGlzdEl0ZW1WaWV3TW9kZWxQcmlvcml0aXplVHJhaWxpbmcgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ0xhYmVsLC55dExpc3RJdGVtVmlld01vZGVsUHJpb3JpdGl6ZVRyYWlsaW5nIC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdTZWxlY3Rpb25UZXh0e2ZsZXgtc2hyaW5rOjB9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxCdXR0b25Db250YWluZXIsLnl0TGlzdEl0ZW1WaWV3TW9kZWxJbWFnZUNvbnRhaW5lcnthbGlnbi1zZWxmOnN0YXJ0O2ZsZXgtc2hyaW5rOjA7aGVpZ2h0OjQ0cHg7bWluLXdpZHRoOjM2cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dExpc3RJdGVtVmlld01vZGVsQXZhdGFyLC55dExpc3RJdGVtVmlld01vZGVsSW1hZ2V7bWF4LWhlaWdodDozNnB4fS55dExpc3RJdGVtVmlld01vZGVsQWNjZXNzb3J5e2JvcmRlci1yYWRpdXM6MnB4O292ZXJmbG93OmhpZGRlbjtjb2xvcjojMDMwMzAzfS55dExpc3RJdGVtVmlld01vZGVsTGF5b3V0V3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0TGlzdEl0ZW1WaWV3TW9kZWxCb3R0b21BY2Nlc3Nvcnl7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO3BhZGRpbmctdG9wOjRweH0ueXRMaXN0SXRlbVZpZXdNb2RlbE1haW5Db250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRMaXN0SXRlbVZpZXdNb2RlbFN1YnRpdGxlQmFkZ2VXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxTdWJ0aXRsZUJhZGdlV3JhcHBlcjpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4tbGVmdDo4cHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb250YWluZXJ7cGFkZGluZzoycHggMTZweDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOjhweH0ueXRMaXN0SXRlbVZpZXdNb2RlbERpc2FibGVIb3Jpem9udGFsUGFkZGluZ3twYWRkaW5nOjJweCAwfS55dExpc3RJdGVtVmlld01vZGVsSW5Qb3B1cHtib3JkZXItcmFkaXVzOjB9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxEaXNhYmxlZHtjb2xvcjojNjA2MDYwO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxEaXNhYmxlZCAueXRMaXN0SXRlbVZpZXdNb2RlbEFjY2Vzc29yeSwueXRMaXN0SXRlbVZpZXdNb2RlbERpc2FibGVkIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7Y29sb3I6IzYwNjA2MH0ueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxle2N1cnNvcjpwb2ludGVyOy1tb3otdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGU6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpfS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjQuNHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7bWF4LWhlaWdodDo0LjRyZW19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZS55dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeSAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoyLjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZS55dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeSAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGUueXRMaXN0SXRlbVZpZXdNb2RlbFNpbmdsZUxpbmVUaXRsZXttYXgtaGVpZ2h0OjIuMnJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5IC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjQuNHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5IC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ0xhYmVse21heC1oZWlnaHQ6NC40cmVtfS55dExpc3RJdGVtVmlld01vZGVsSGFzU3VidGl0bGV7cGFkZGluZzo2cHggMTZweH0ueXRMaXN0SXRlbVZpZXdNb2RlbEhhc1N1YnRpdGxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxEaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmd7cGFkZGluZzo2cHggMH0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUZXh0V3JhcHBlcnttaW4taGVpZ2h0OjM2cHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjRyZW19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGUueXRMaXN0SXRlbVZpZXdNb2RlbFNpbmdsZUxpbmVUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoycmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdCAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZS55dExpc3RJdGVtVmlld01vZGVsU2luZ2xlTGluZVRpdGxle21heC1oZWlnaHQ6MnJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ1NlbGVjdGlvblRleHR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDB9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdCAueXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nTGFiZWx7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ0xhYmVse21heC1oZWlnaHQ6NHJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7bWF4LWhlaWdodDo0cmVtfS55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdC55dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZS55dExpc3RJdGVtVmlld01vZGVsU2luZ2xlTGluZVRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0Lnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZSAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGUueXRMaXN0SXRlbVZpZXdNb2RlbFNpbmdsZUxpbmVUaXRsZXttYXgtaGVpZ2h0OjJyZW19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0Lnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZSAueXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nTGFiZWx7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlIC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdC55dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ0xhYmVse21heC1oZWlnaHQ6NHJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxDaGV2cm9uSWNvbntoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdCAueXRMaXN0SXRlbVZpZXdNb2RlbEJ1dHRvbkNvbnRhaW5lcntoZWlnaHQ6MzZweDttaW4td2lkdGg6MzZweH0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxJbWFnZUNvbnRhaW5lcntoZWlnaHQ6MzZweDttaW4td2lkdGg6MjRweH0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxJbWFnZXttYXgtaGVpZ2h0OjI0cHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0Lnl0TGlzdEl0ZW1WaWV3TW9kZWxIYXNTdWJ0aXRsZSAueXRMaXN0SXRlbVZpZXdNb2RlbFRleHRXcmFwcGVye21pbi1oZWlnaHQ6NDJweH0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEhhc1N1YnRpdGxlIC55dExpc3RJdGVtVmlld01vZGVsQnV0dG9uQ29udGFpbmVyLC55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdC55dExpc3RJdGVtVmlld01vZGVsSGFzU3VidGl0bGUgLnl0TGlzdEl0ZW1WaWV3TW9kZWxJbWFnZUNvbnRhaW5lcntoZWlnaHQ6NDJweH0ueXRMaXN0SXRlbVZpZXdNb2RlbElzT3ZlcmxheSwueXRMaXN0SXRlbVZpZXdNb2RlbElzT3ZlcmxheSAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxle2NvbG9yOiNmZmZ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxJc092ZXJsYXkgLnl0TGlzdEl0ZW1WaWV3TW9kZWxTdWJ0aXRsZXtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyl9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxJc092ZXJsYXkgLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY2Nlc3Nvcnl7Y29sb3I6I2ZmZn0ueXRDaGVja2JveFNoYXBlSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21pbi1oZWlnaHQ6NDhweDt3aWR0aDoxMDAlO2NvbG9yOiMwMzAzMDM7cG9zaXRpb246cmVsYXRpdmV9Lnl0Q2hlY2tib3hTaGFwZUhvc3RDb21wYWN0e21pbi1oZWlnaHQ6NDBweH0ueXRDaGVja2JveFNoYXBlSW5wdXR7cG9zaXRpb246YWJzb2x1dGU7bWFyZ2luOjA7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtvcGFjaXR5Oi4wMDAwMDE7ei1pbmRleDoxO2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0Q2hlY2tib3hTaGFwZUxhYmVsey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTtkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nLXJpZ2h0OjEycHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo0MDB9Lnl0Q2hlY2tib3hTaGFwZURpc2FibGVIb3Jpem9udGFsUGFkZGluZyAueXRDaGVja2JveFNoYXBlTGFiZWx7cGFkZGluZy1yaWdodDowfS55dENoZWNrYm94U2hhcGVDaGVja2JveERlZmF1bHRTdHlsZXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwYWRkaW5nOjAgMTJweH1pbnB1dDpjaGVja2Vkfi55dENoZWNrYm94U2hhcGVDaGVja2JveD46Zmlyc3QtY2hpbGR7ZGlzcGxheTpub25lfWlucHV0Om5vdCg6Y2hlY2tlZCl+Lnl0Q2hlY2tib3hTaGFwZUNoZWNrYm94PjpsYXN0LWNoaWxke2Rpc3BsYXk6bm9uZX0ueXRTd2l0Y2hMaXN0SXRlbVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30udG9nZ2xlYWJsZUxpc3RJdGVtVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dExpc3RWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn1AbWVkaWEgKG1heC13aWR0aDoyOTkuOXB4KXsueXRMaXN0Vmlld01vZGVsSG9zdEthaW9zU3BhdE5hdntwYWRkaW5nOjNweH19Lnl0RG93bmxvYWRMaXN0SXRlbVZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5ZdG1Db21wYWN0TWVkaWFJdGVtSG9zdHtwYWRkaW5nOjAgMTJweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0uWXRtQ29tcGFjdE1lZGlhSXRlbUhvc3RbZGF0YS1oYXMtc3Vic2NyaWJlLWJ1dHRvbj10cnVlXSAuWXRtQ29tcGFjdE1lZGlhSXRlbU1ldGFkYXRhe3BhZGRpbmc6MDstbW96LWJveC1hbGlnbjpub3JtYWw7YWxpZ24taXRlbXM6bm9ybWFsO21hcmdpbjphdXRvOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uWXRtQ29tcGFjdE1lZGlhSXRlbUhvc3RbZGF0YS1oYXMtc3Vic2NyaWJlLWJ1dHRvbj10cnVlXSAuWXRtQ29tcGFjdE1lZGlhSXRlbU1ldGFkYXRhIHl0bS1tZW51LXJlbmRlcmVye2hlaWdodDoxMDAlfS5ZdG1Db21wYWN0TWVkaWFJdGVtSG9zdFtkYXRhLWhhcy1zdWJzY3JpYmUtYnV0dG9uPXRydWVdIC5ZdG1Db21wYWN0TWVkaWFJdGVtQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS5ZdG1Db21wYWN0TWVkaWFJdGVtSG9zdFtkYXRhLWhhcy1zdWJzY3JpYmUtYnV0dG9uPXRydWVdIC52aWRlby10aHVtYm5haWwtaW1ne3dpZHRoOjY3cHg7aGVpZ2h0OjY3cHg7bWluLWhlaWdodDowO2JvcmRlci1yYWRpdXM6NTAlfS5ZdG1Db21wYWN0TWVkaWFJdGVtSG9zdFtkYXRhLWhhcy1zdWJzY3JpYmUtYnV0dG9uPXRydWVdIC5jaGFubmVsLXN1YnNjcmliZS1idXR0b257cGFkZGluZzowIDAgMCA4cHh9Lll0bUNvbXBhY3RNZWRpYUl0ZW1Ib3N0W2RhdGEtY29sb3ItcGFsZXR0ZS1hcHBsaWVkPXRydWVdIC5ZdG1Db21wYWN0TWVkaWFJdGVtU3ViaGVhZHtvcGFjaXR5OjF9Lll0bUNvbXBhY3RNZWRpYUl0ZW1Ib3N0PmF7ZGlzcGxheTpibG9ja31AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey5ZdG1Db21wYWN0TWVkaWFJdGVtSG9zdHtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MCA4cHh9Lll0bUNvbXBhY3RNZWRpYUl0ZW1Ib3N0IC52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWNvbXBhY3QudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1jb21wYWN0e3dpZHRoOjEwMCU7aGVpZ2h0OmF1dG87cGFkZGluZy1ib3R0b206NTYuMjUlfX0uWXRtQ29tcGFjdE1lZGlhSXRlbUhvc3QgLmVuZ2FnZW1lbnQtYmFye2hlaWdodDoyNHB4O21hcmdpbi10b3A6NHB4fS5ZdG1Db21wYWN0TWVkaWFJdGVtTXVsdGljb2x1bW57cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowfS5ZdG1Db21wYWN0TWVkaWFJdGVtSW1hZ2V7ZmxleC1zaHJpbms6MH0uWXRtQ29tcGFjdE1lZGlhSXRlbUltYWdlLnN0YWNrZWR7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLXRvcDo2cHh9Lll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7bWluLXdpZHRoOjA7b3ZlcmZsb3c6dmlzaWJsZX1AbWVkaWEgKG1pbi13aWR0aDo1NTBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCksKG1pbi13aWR0aDo5MzFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5ZdG1Db21wYWN0TWVkaWFJdGVtTWV0YWRhdGFbZGF0YS1oYXMtYmFkZ2VzPXRydWVdIC5ZdG1Db21wYWN0TWVkaWFJdGVtSGVhZGxpbmV7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9fUBtZWRpYSAobWF4LXdpZHRoOjU0OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KSwobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Lll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YVtkYXRhLWhhcy1iYWRnZXM9dHJ1ZV0gLll0bUNvbXBhY3RNZWRpYUl0ZW1IZWFkbGluZXttYXgtaGVpZ2h0OjIuNWVtOy13ZWJraXQtbGluZS1jbGFtcDoyfS5ZdG1Db21wYWN0TWVkaWFJdGVtTWV0YWRhdGEuaGFzLWVuZ2FnZW1lbnQtYmFyIC5ZdG1Db21wYWN0TWVkaWFJdGVtSGVhZGxpbmV7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6Mn0uWXRtQ29tcGFjdE1lZGlhSXRlbU1ldGFkYXRhLmhhcy1lbmdhZ2VtZW50LWJhcltkYXRhLWhhcy1iYWRnZXM9dHJ1ZV0gLll0bUNvbXBhY3RNZWRpYUl0ZW1IZWFkbGluZXttYXgtaGVpZ2h0OjEuMjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MX19QG1lZGlhIChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXsuWXRtQ29tcGFjdE1lZGlhSXRlbU1ldGFkYXRhe3BhZGRpbmc6NHB4IDB9Lll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YVtkYXRhLWhhcy1iYWRnZXM9dHJ1ZV0gLll0bUNvbXBhY3RNZWRpYUl0ZW1IZWFkbGluZXtkaXNwbGF5Oi13ZWJraXQtYm94O3doaXRlLXNwYWNlOm5vcm1hbH19Lll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YUNvbnRlbnR7ZGlzcGxheTpibG9jazstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MCA4cHh9Lll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YUNvbnRlbnQuc3RhY2tlZHttYXJnaW4tdG9wOjhweH1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey5ZdG1Db21wYWN0TWVkaWFJdGVtTWV0YWRhdGFDb250ZW50e3BhZGRpbmc6MH19Lll0bUNvbXBhY3RNZWRpYUl0ZW1IZWFkbGluZVBsYWNlaG9sZGVye2hlaWdodDoxNnB4O21heC13aWR0aDozMDBweDttYXJnaW4tYm90dG9tOjhweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItcmFkaXVzOjJweH0uWXRtQ29tcGFjdE1lZGlhSXRlbVN1YmhlYWR7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtvdmVyZmxvdzpoaWRkZW47bGluZS1oZWlnaHQ6MS4yNTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2ZvbnQtd2VpZ2h0OjQwMDtvcGFjaXR5Oi42fS5ZdG1Db21wYWN0TWVkaWFJdGVtU3ViaGVhZFBsYWNlaG9sZGVye2hlaWdodDoxNnB4O3dpZHRoOjEyMHB4O21hcmdpbi1ib3R0b206M3B4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1yYWRpdXM6MnB4fS5ZdG1Db21wYWN0TWVkaWFJdGVtSGVhZGxpbmV7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtsaW5lLWhlaWdodDoxLjI1O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbjowIDAgM3B4O2ZvbnQtc2l6ZToxLjNyZW07b3ZlcmZsb3c6aGlkZGVuO21hcmdpbjowO2ZvbnQtc2l6ZToxLjRyZW19Lll0bUNvbXBhY3RNZWRpYUl0ZW1IZWFkbGluZSAueXRtLWNoYW5uZWwtbmFtZXtmb250LXNpemU6MS40cmVtfUBtZWRpYSAobWF4LXdpZHRoOjU0OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KSwobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Lll0bUNvbXBhY3RNZWRpYUl0ZW1IZWFkbGluZXttYXgtaGVpZ2h0OjMuNzVlbTstd2Via2l0LWxpbmUtY2xhbXA6M319Lll0bUNvbXBhY3RNZWRpYUl0ZW1CeWxpbmV7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC1zaXplOjEuMnJlbX0uWXRtQ29tcGFjdE1lZGlhSXRlbVN0YXRze2Rpc3BsYXk6aW5saW5lLWJsb2NrO21heC13aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmb250LXNpemU6MS4ycmVtfS5ZdG1Db21wYWN0TWVkaWFJdGVtU3RhdHN+Lll0bUNvbXBhY3RNZWRpYUl0ZW1TdGF0czpiZWZvcmV7Y29udGVudDoiwqDCt8KgIn0uWXRtQ29tcGFjdE1lZGlhSXRlbURlc2NyaXB0aW9ue21hcmdpbjo4cHggMDtwYWRkaW5nOjA7Zm9udC1zaXplOjEuMnJlbX0uWXRtQ29tcGFjdE1lZGlhSXRlbU1lbnV7ZmxleC1zaHJpbms6MDtjb2xvcjojMDMwMzAzfS5mb3JtYXR0ZWQtc3RyaW5nLWRlZW1waGFzaXple2NvbG9yOiM2MDYwNjB9LmZvcm1hdHRlZC1zdHJpbmctYm9sZHtmb250LXdlaWdodDo1MDB9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvc3R7ZGlzcGxheTppbmxpbmUtYmxvY2s7Ym9yZGVyLXJhZGl1czppbmhlcml0O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUcmlnZ2VyRXZlbnRze3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvdmVyRWZmZWN0e3RyYW5zaXRpb246YWxsIC4zcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksdHJhbnNmb3JtO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEpO29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoLjkpO3dpbGwtY2hhbmdlOm9wYWNpdHksdHJhbnNmb3JtO2JvcmRlci1yYWRpdXM6aW5oZXJpdDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MH0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlSG92ZXJlZCAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlSG92ZXJFZmZlY3R7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxKX0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlU3Ryb2tle3dpbGwtY2hhbmdlOm9wYWNpdHk7b3BhY2l0eTowO2JvcmRlci1yYWRpdXM6aW5oZXJpdDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MH0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRG93biAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRm9jdXNlZCAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbHtvcGFjaXR5Oi4xfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUaHVtYm5haWxTaXplU21hbGx7bWFyZ2luOi00cHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVTbWFsbCAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZVNtYWxsIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVIb3ZlckVmZmVjdCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZVNtYWxsIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVTdHJva2V7Ym9yZGVyLXJhZGl1czo0cHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVNZWRpdW17bWFyZ2luOi04cHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVNZWRpdW0gLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUZpbGwsLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVNZWRpdW0gLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvdmVyRWZmZWN0LC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUaHVtYm5haWxTaXplTWVkaXVtIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVTdHJva2V7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVMYXJnZXttYXJnaW46LTEycHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVMYXJnZSAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZUxhcmdlIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVIb3ZlckVmZmVjdCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZUxhcmdlIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVTdHJva2V7Ym9yZGVyLXJhZGl1czoxNnB4fS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVDaXJjdWxhciAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlQ2lyY3VsYXIgLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvdmVyRWZmZWN0LC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVDaXJjdWxhciAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlU3Ryb2tle2JvcmRlci1yYWRpdXM6NTAlfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUb3VjaFJlc3BvbnNlIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVGaWxse2JhY2tncm91bmQtY29sb3I6IzAwMH0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVG91Y2hSZXNwb25zZSAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlU3Ryb2tle2JvcmRlcjoxcHggc29saWQgIzAwMH0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVG91Y2hSZXNwb25zZUludmVyc2UgLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUZpbGx7YmFja2dyb3VuZC1jb2xvcjojZmZmfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUb3VjaFJlc3BvbnNlSW52ZXJzZSAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlU3Ryb2tle2JvcmRlcjoxcHggc29saWQgI2ZmZn0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVG91Y2hSZXNwb25zZUludmVyc2UueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRG93biAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVG91Y2hSZXNwb25zZUludmVyc2UueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRm9jdXNlZCAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbHtvcGFjaXR5Oi4yfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVPdmVybGF5VG91Y2hSZXNwb25zZSAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZU92ZXJsYXlUb3VjaFJlc3BvbnNlIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVTdHJva2V7Ym9yZGVyOjFweCBzb2xpZCAjZmZmfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVPdmVybGF5VG91Y2hSZXNwb25zZUludmVyc2UgLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUZpbGx7YmFja2dyb3VuZC1jb2xvcjojMDAwfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVPdmVybGF5VG91Y2hSZXNwb25zZUludmVyc2UgLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVN0cm9rZXtib3JkZXI6MXB4IHNvbGlkICMwMDB9QGtleWZyYW1lcyBwb3BvdmVyLWZhZGUtaW57MCV7b3BhY2l0eTowfX1Aa2V5ZnJhbWVzIHBvcG92ZXItZmFkZS1vdXR7dG97b3BhY2l0eTowfX0ueXRQb3BvdmVyQ29tcG9uZW50SG9zdHttYXJnaW46MDtwb3NpdGlvbjphYnNvbHV0ZX0ueXRQb3BvdmVyQ29tcG9uZW50SG9zdC5cOnBvcG92ZXItb3BlbiwueXRQb3BvdmVyQ29tcG9uZW50SG9zdDpwb3BvdmVyLW9wZW57YW5pbWF0aW9uOnBvcG92ZXItZmFkZS1pbiAuMTVzIGVhc2UtaW59Lnl0UG9wb3ZlckNvbXBvbmVudEhvc3RDbG9zaW5nLlw6cG9wb3Zlci1vcGVuLC55dFBvcG92ZXJDb21wb25lbnRIb3N0Q2xvc2luZzpwb3BvdmVyLW9wZW57YW5pbWF0aW9uOnBvcG92ZXItZmFkZS1vdXQgNzVtcyBlYXNlLW91dCBmb3J3YXJkc30ueXRUb29sdGlwQ29udGFpbmVySG9zdHtkaXNwbGF5OmJsb2NrfS55dFRvb2x0aXBDb250YWluZXJEZWZhdWx0VG9vbHRpcENvbnRlbnR7cGFkZGluZzo4cHg7Ym9yZGVyLXN0eWxlOm5vbmU7Ym9yZGVyLXJhZGl1czo0cHg7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM2MDYwNjA7b3BhY2l0eTouOTtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUb29sdGlwQ29udGFpbmVyUGxheWVyVG9vbHRpcENvbnRlbnQsLnl0VG9vbHRpcENvbnRhaW5lclBsYXllclRvb2x0aXBDb250ZW50Qmx1cnJlZHtwYWRkaW5nOjRweCA4cHg7Ym9yZGVyLXN0eWxlOm5vbmU7Ym9yZGVyLXJhZGl1czo4cHg7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKTt0ZXh0LXNoYWRvdzowIDJweCA4cHggIzAwMDtvcGFjaXR5Oi45O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUb29sdGlwQ29udGFpbmVyUGxheWVyVG9vbHRpcENvbnRlbnRCbHVycmVke29wYWNpdHk6dW5zZXQ7YmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KX0ueXRUb29sdGlwQ29udGFpbmVyRWZmZWN0TWFrZXJUb29sdGlwQ29udGVudHtwYWRkaW5nOjRweCA4cHg7Ym9yZGVyLXN0eWxlOm5vbmU7Ym9yZGVyLXJhZGl1czo0cHg7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMwZjBmMGY7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDB9Lnl0VG9vbHRpcENvbnRhaW5lckhvdGtleXtkaXNwbGF5OmlubGluZTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4zKTtib3JkZXItcmFkaXVzOjRweDtwYWRkaW5nOjAgNnB4O21hcmdpbi1sZWZ0OjhweDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDB9OnJvb3R7LS15dC1saWdodC1yaW0tY29sb3I6dW5zZXQ7LS15dC1saWdodC13YXNoLW9wYWNpdHk6MDstLXl0LWxpZ2h0LXdhc2gteDowOy0teXQtbGlnaHQtd2FzaC15OjA7LS15dC1saWdodC13YXNoLXNpemU6OTZweDstLXl0LWxpZ2h0LXdhc2gtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjMpfS5jb250cmliWXRMaWdodFNoYXBlSG9zdHtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjtib3JkZXItcmFkaXVzOmluaGVyaXQ7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czpub25lfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHQ6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtib3JkZXItcmFkaXVzOmluaGVyaXQ7cGFkZGluZzouNXB4Oy13ZWJraXQtbWFzazpsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApIGNvbnRlbnQtYm94LGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCk7bWFzay1jb21wb3NpdGU6ZXhjbHVkZTtwb2ludGVyLWV2ZW50czpub25lfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRTb2xpZDpiZWZvcmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodmFyKC0teXQtbGlnaHQtcmltLWNvbG9yLHJnYmEoMjU1LDI1NSwyNTUsMC4yKSksdHJhbnNwYXJlbnQgNzUlKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0VG9uYWw6YmVmb3Jle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHZhcigtLXl0LWxpZ2h0LXJpbS1jb2xvcixyZ2JhKDAsMCwwLDAuMDUpKSx0cmFuc3BhcmVudCA3NSUpfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRPdXRsaW5le2luc2V0Oi0xcHh9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodE91dGxpbmU6YmVmb3Jle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHZhcigtLXl0LWxpZ2h0LXJpbS1jb2xvcixyZ2JhKDI1NSwyNTUsMjU1LDAuMykpLHRyYW5zcGFyZW50IDc1JSl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodFNvbGlkSW52ZXJzZTpiZWZvcmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodmFyKC0teXQtbGlnaHQtcmltLWNvbG9yLHJnYmEoMjU1LDI1NSwyNTUsMC4yKSksdHJhbnNwYXJlbnQgNzUlKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0VG9uYWxJbnZlcnNlOmJlZm9yZXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh2YXIoLS15dC1saWdodC1yaW0tY29sb3IscmdiYSgyNTUsMjU1LDI1NSwwLjE1KSksdHJhbnNwYXJlbnQgNzUlKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0T3V0bGluZUludmVyc2V7aW5zZXQ6LTFweH0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0T3V0bGluZUludmVyc2U6YmVmb3Jle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHZhcigtLXl0LWxpZ2h0LXJpbS1jb2xvcixyZ2JhKDI1NSwyNTUsMjU1LDAuMTUpKSx0cmFuc3BhcmVudCA3NSUpfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRPdmVybGF5U29saWQ6YmVmb3Jle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHZhcigtLXl0LWxpZ2h0LXJpbS1jb2xvcixyZ2JhKDI1NSwyNTUsMjU1LDAuMikpLHRyYW5zcGFyZW50IDc1JSl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodE92ZXJsYXlUb25hbDpiZWZvcmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodmFyKC0teXQtbGlnaHQtcmltLWNvbG9yLHJnYmEoMjU1LDI1NSwyNTUsMC4xNSkpLHRyYW5zcGFyZW50IDc1JSl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodE92ZXJsYXlPdXRsaW5le2luc2V0Oi0xcHh9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodE92ZXJsYXlPdXRsaW5lOmJlZm9yZXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh2YXIoLS15dC1saWdodC1yaW0tY29sb3IscmdiYSgyNTUsMjU1LDI1NSwwLjE1KSksdHJhbnNwYXJlbnQgNzUlKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1dhc2hMaWdodHtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Ym90dG9tOjUwJTtsZWZ0OjA7Ym9yZGVyLXJhZGl1czppbmhlcml0O2ZpbHRlcjpibHVyKDEwcHgpfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0U2FmYXJpe3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0U29saWR7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMTUpfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0VG9uYWx7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMil9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRTb2xpZEludmVyc2V7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMyl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRUb25hbEludmVyc2V7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMDUpfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0T3ZlcmxheVNvbGlke2JhY2tncm91bmQ6I2ZmZn0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1dhc2hMaWdodE92ZXJsYXlUb25hbHtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xNSl9LmNvbnRyaWJZdExpZ2h0U2hhcGVEeW5hbWljV2FzaExpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHRyYW5zbGF0ZSh2YXIoLS15dC1saWdodC13YXNoLXgsMCksdmFyKC0teXQtbGlnaHQtd2FzaC15LDApKTtib3JkZXItcmFkaXVzOmluaGVyaXQ7d2lkdGg6dmFyKC0teXQtbGlnaHQtd2FzaC1zaXplLDk2cHgpO2hlaWdodDp2YXIoLS15dC1saWdodC13YXNoLXNpemUsOTZweCk7b3BhY2l0eTp2YXIoLS15dC1saWdodC13YXNoLW9wYWNpdHksMCk7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGZhcnRoZXN0LWNvcm5lciBhdCBjZW50ZXIscmdiYSgyNTUsMjU1LDI1NSwuMikgMCx0cmFuc3BhcmVudCAxMDAlKTtwb2ludGVyLWV2ZW50czpub25lO2ZpbHRlcjpibHVyKDE1cHgpfS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG9zdHtib3JkZXItcmFkaXVzOmluaGVyaXQ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7b3ZlcmZsb3c6aGlkZGVuO3BvaW50ZXItZXZlbnRzOmF1dG87Y29udGFpbjpsYXlvdXQgc3R5bGUgcGFpbnQ7LW1vei11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MH1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246bm8tcHJlZmVyZW5jZSl7Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7dHJhbnNpdGlvbjpvcGFjaXR5IC40NXMgY3ViaWMtYmV6aWVyKC4yNSwxLC44LDEpfX0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZVByZXNzZWQgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7dHJhbnNpdGlvbi1kdXJhdGlvbjo0MG1zfS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5RGVmYXVsdCAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlEZWZhdWx0OmhvdmVyIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5e29wYWNpdHk6LjA1fS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5RGVmYXVsdC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlUHJlc3NlZCAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXtvcGFjaXR5Oi4xfTpyb290W2RhcmtdIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5RGVmYXVsdCAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDB9OnJvb3RbZGFya10gLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlEZWZhdWx0OmhvdmVyIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5e29wYWNpdHk6LjJ9OnJvb3RbZGFya10gLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlEZWZhdWx0Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVQcmVzc2VkIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5e29wYWNpdHk6LjN9Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlJbnZlcnNlIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5e2JhY2tncm91bmQtY29sb3I6IzAwMH0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheUludmVyc2U6aG92ZXIgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7b3BhY2l0eTouMn0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheUludmVyc2UueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZVByZXNzZWQgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7b3BhY2l0eTouM306cm9vdFtkYXJrXSAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheUludmVyc2UgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7YmFja2dyb3VuZC1jb2xvcjojZmZmfTpyb290W2RhcmtdIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5SW52ZXJzZTpob3ZlciAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXtvcGFjaXR5Oi4wNX06cm9vdFtkYXJrXSAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheUludmVyc2UueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZVByZXNzZWQgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7b3BhY2l0eTouMX0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZVRvdWNoTGlnaHR7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MDtoZWlnaHQ6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7ZmlsdGVyOmJsdXIoMjRweCk7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCNmZmYgMCxyZ2JhKDI1NSwyNTUsMjU1LC42KSAzNSUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDcwJSx0cmFuc3BhcmVudCAxMDAlKTtib3JkZXItcmFkaXVzOjUwJX0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyTGlnaHR7cG9zaXRpb246YWJzb2x1dGU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2ZpbHRlcjpibHVyKDMycHgpO29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSwjZmZmIDAscmdiYSgyNTUsMjU1LDI1NSwuNSkgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA4MCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtib3JkZXItcmFkaXVzOjUwJX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246bm8tcHJlZmVyZW5jZSl7Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3ZlckxpZ2h0e3RyYW5zaXRpb246b3BhY2l0eSAuM3MgZWFzZSx3aWR0aCAuMTVzIGN1YmljLWJlemllciguMjUsMSwuNSwxKSxoZWlnaHQgLjE1cyBjdWJpYy1iZXppZXIoLjI1LDEsLjUsMSl9fS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG9zdDpob3ZlciAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyTGlnaHR7b3BhY2l0eTouMn0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvc3QueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZVByZXNzZWQgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3ZlckxpZ2h0e29wYWNpdHk6LjM1O3RyYW5zaXRpb24tZHVyYXRpb246LjA0c30uYW5pbWF0ZWRSb2xsaW5nQ2hhcmFjdGVySG9zdHtkaXNwbGF5OmlubGluZX0uYW5pbWF0ZWRSb2xsaW5nTnVtYmVySG9zdHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7b3ZlcmZsb3c6aGlkZGVufS55dFNwZWNCdXR0b25TaGFwZU5leHRIb3N0e3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbjowO3doaXRlLXNwYWNlOm5vd3JhcDttaW4td2lkdGg6MDt0ZXh0LXRyYW5zZm9ybTpub25lO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxOHB4O2JvcmRlcjpub25lO2N1cnNvcjpwb2ludGVyO291dGxpbmUtd2lkdGg6MDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7YmFja2dyb3VuZDpub25lO3RleHQtZGVjb3JhdGlvbjpub25lOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjpyZ2JhKDAsMCwwLDApOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDstbW96LWJveC1mbGV4OjE7ZmxleDoxO2ZsZXgtYmFzaXM6MC4wMDAwMDAwMDFweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEVsZXZhdGVkQ29udGVudHt6LWluZGV4OjE7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbiwueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2Vjb25kYXJ5SWNvbntsaW5lLWhlaWdodDowO2ZpbGw6Y3VycmVudENvbG9yfS55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uey1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmV9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEJ1dHRvblRleHRDb250ZW50e3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7b3ZlcmZsb3c6aGlkZGVufS55dFNwZWNCdXR0b25TaGFwZU5leHRNaWRkbGVncm91bmRBc3NldHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTt3aWR0aDpyb3VuZCh1cCwxMDAlLDFweCk7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZlYXR1cmVQaG9uZVdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhze3BhZGRpbmc6MCA4cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le3BhZGRpbmc6MCA3cHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke3BhZGRpbmc6MCA2cHg7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtwYWRkaW5nOjAgOHB4O3dpZHRoOjMycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDotMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6LTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDoycHg7bWFyZ2luLWxlZnQ6LTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDoycHg7bWFyZ2luLWxlZnQ6LTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlY29uZGFyeUljb257bWFyZ2luLWxlZnQ6MnB4O21hcmdpbi1yaWdodDotMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHN7aGVpZ2h0OjI0cHg7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MjRweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWlkZGxlZ3JvdW5kQXNzZXR7Ym9yZGVyLXJhZGl1czoxMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257d2lkdGg6MTZweDtoZWlnaHQ6MTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b257d2lkdGg6MjRweDtwYWRkaW5nOjB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRTdGFydHtib3JkZXItcmFkaXVzOjEycHggMCAwIDEycHg7cG9zaXRpb246cmVsYXRpdmV9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRTdGFydDphZnRlcntjb250ZW50OiIiO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjRweDtoZWlnaHQ6MTZweDt3aWR0aDoxcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7Ym9yZGVyLXJhZGl1czowIDEycHggMTJweCAwfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZ05vVGV4dCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZUljb25TaXplIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue2hlaWdodDoxMnB4O3dpZHRoOjEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5ne3BhZGRpbmc6MCA4cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDdweDtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgNnB4O2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7cGFkZGluZzowIDhweDt3aWR0aDozMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1yaWdodDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6NHB4O21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjRweDttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplU3twYWRkaW5nOjAgMTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZXtwYWRkaW5nOjAgMTFweDtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgMTBweDtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0xMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtwYWRkaW5nOjAgMTJweDt3aWR0aDo0NHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1yaWdodDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6NHB4O21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjRweDttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplU3toZWlnaHQ6MzJweDtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDozMnB4O2JvcmRlci1yYWRpdXM6MTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMgLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1pZGRsZWdyb3VuZEFzc2V0e2JvcmRlci1yYWRpdXM6MTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257d2lkdGg6MTZweDtoZWlnaHQ6MTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbnt3aWR0aDozMnB4O3BhZGRpbmc6MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVycmlkZVNtYWxsU2l6ZUljb24gLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkU3RhcnR7Ym9yZGVyLXJhZGl1czoxNnB4IDAgMCAxNnB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRTdGFydDphZnRlcntjb250ZW50OiIiO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjhweDtoZWlnaHQ6MTZweDt3aWR0aDoxcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtib3JkZXItcmFkaXVzOjAgMTZweCAxNnB4IDB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmdOb1RleHQgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZUljb25TaXplOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcnJpZGVTbWFsbFNpemVJY29uKSAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbntoZWlnaHQ6MThweDt3aWR0aDoxOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5ne3BhZGRpbmc6MCAxMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDExcHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgMTBweDtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtwYWRkaW5nOjAgMTJweDt3aWR0aDo0NHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6NHB4O21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDo0cHg7bWFyZ2luLWxlZnQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNe3BhZGRpbmc6MCAxNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le3BhZGRpbmc6MCAxNXB4O2JvcmRlci13aWR0aDoxcHg7Ym9yZGVyLXN0eWxlOnNvbGlkfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke3BhZGRpbmc6MCAxNHB4O2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTE2cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5ke3BhZGRpbmc6MCAxNnB4O3dpZHRoOjUycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25UcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDo2cHg7bWFyZ2luLXJpZ2h0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDo2cHg7bWFyZ2luLWxlZnQ6LTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTEwcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjZweDttYXJnaW4tbGVmdDotNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjZweDttYXJnaW4tcmlnaHQ6LTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU17aGVpZ2h0OjM2cHg7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjE4cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNIC55dFNwZWNCdXR0b25TaGFwZU5leHRNaWRkbGVncm91bmRBc3NldHtib3JkZXItcmFkaXVzOjE4cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b257d2lkdGg6MzZweDtwYWRkaW5nOjB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkU3RhcnR7Ym9yZGVyLXJhZGl1czoxOHB4IDAgMCAxOHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRTdGFydDphZnRlcntjb250ZW50OiIiO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjZweDtoZWlnaHQ6MjRweDt3aWR0aDoxcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtib3JkZXItcmFkaXVzOjAgMThweCAxOHB4IDB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmdOb1RleHQgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZUljb25TaXplLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uLC55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VJY29uU2l6ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24pOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbk9ubHlEZWZhdWx0KSAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbntoZWlnaHQ6MThweDt3aWR0aDoxOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5ne3BhZGRpbmc6MCAxNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDE1cHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgMTRweDtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtwYWRkaW5nOjAgMTZweDt3aWR0aDo1MnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjZweDttYXJnaW4tcmlnaHQ6LTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1sZWZ0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTEwcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1sZWZ0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2Vjb25kYXJ5SWNvbnttYXJnaW4tbGVmdDo2cHg7bWFyZ2luLXJpZ2h0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUx7cGFkZGluZzowIDI0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDIzcHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7cGFkZGluZzowIDIycHg7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7cGFkZGluZzowIDI0cHg7d2lkdGg6NzJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmQgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjhweDttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6OHB4O21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlY29uZGFyeUljb257bWFyZ2luLWxlZnQ6OHB4O21hcmdpbi1yaWdodDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0xNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTHtoZWlnaHQ6NDhweDtmb250LXNpemU6MThweDtsaW5lLWhlaWdodDo0OHB4O2JvcmRlci1yYWRpdXM6MjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwgLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1pZGRsZWdyb3VuZEFzc2V0e2JvcmRlci1yYWRpdXM6MjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbnt3aWR0aDo0OHB4O3BhZGRpbmc6MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkU3RhcnR7Ym9yZGVyLXJhZGl1czoyNHB4IDAgMCAyNHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRTdGFydDphZnRlcntjb250ZW50OiIiO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjEycHg7aGVpZ2h0OjI0cHg7d2lkdGg6MXB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7Ym9yZGVyLXJhZGl1czowIDI0cHggMjRweCAwfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nTm9UZXh0IC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDowfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5ne3BhZGRpbmc6MCAyMHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDE5cHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgMThweDtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMjBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtwYWRkaW5nOjAgMjBweDt3aWR0aDo2OHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6OHB4O21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6OHB4O21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2Vjb25kYXJ5SWNvbnttYXJnaW4tbGVmdDo4cHg7bWFyZ2luLXJpZ2h0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhse3BhZGRpbmc6MCAzMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZXtwYWRkaW5nOjAgMzFweDtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7cGFkZGluZzowIDMwcHg7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0zMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7cGFkZGluZzowIDMycHg7d2lkdGg6ODhweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0Oi0xMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0Oi0xMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjEycHg7bWFyZ2luLWxlZnQ6LTEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMjBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjEycHg7bWFyZ2luLWxlZnQ6LTEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0Oi0xMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMjBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhse2hlaWdodDo1NnB4O2ZvbnQtc2l6ZToyNHB4O2xpbmUtaGVpZ2h0OjU2cHg7Ym9yZGVyLXJhZGl1czoyOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwgLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1pZGRsZWdyb3VuZEFzc2V0e2JvcmRlci1yYWRpdXM6MjhweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9ue3dpZHRoOjU2cHg7cGFkZGluZzowfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZFN0YXJ0e2JvcmRlci1yYWRpdXM6MjhweCAwIDAgMjhweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZFN0YXJ0OmFmdGVye2NvbnRlbnQ6IiI7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSk7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MTZweDtoZWlnaHQ6MjRweDt3aWR0aDoxcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7Ym9yZGVyLXJhZGl1czowIDI4cHggMjhweCAwfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZ05vVGV4dCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmd7cGFkZGluZzowIDI0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDIzcHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7cGFkZGluZzowIDIycHg7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7cGFkZGluZzowIDI0cHg7d2lkdGg6ODBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmQgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjhweDttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6OHB4O21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlY29uZGFyeUljb257bWFyZ2luLWxlZnQ6OHB4O21hcmdpbi1yaWdodDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0xNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRPbmVPZmZDdXN0b21UZXh0V3JhcENvbnRhaW5lcntoZWlnaHQ6YXV0bztwYWRkaW5nLXRvcDo4cHg7cGFkZGluZy1ib3R0b206OHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRPbmVPZmZDdXN0b21UZXh0V3JhcENvbnRhaW5lciAueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnV0dG9uVGV4dENvbnRlbnR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6OHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T25lT2ZmQ3VzdG9tVGV4dFdyYXBDb250YWluZXIgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEJ1dHRvblRleHRDb250ZW50ey13ZWJraXQtbGluZS1jbGFtcDo0O21heC1oZWlnaHQ6bm9uZX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dERpc2FibGVUZXh0RWxsaXBzaXMgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEJ1dHRvblRleHRDb250ZW50e3RleHQtb3ZlcmZsb3c6Y2xpcH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbk9ubHlEZWZhdWx0e21pbi13aWR0aDowO2JvcmRlci1yYWRpdXM6NTAlO3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7cGFkZGluZzowfS55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uT25seURlZmF1bHQueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0V29ya2Fyb3VuZEljb25Ob0JvcmRlclJhZGl1c3tib3JkZXItcmFkaXVzOnVuc2V0fS55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZHtjdXJzb3I6ZGVmYXVsdH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtjb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDY1ZmQ0fS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzA1NTZiZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzA2NWZkNH19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMwNTU2YmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2NvbG9yOiMwNjVmZDR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5lOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2RlZjFmZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5lOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2RlZjFmZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtjb2xvcjojMDY1ZmQ0fS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNkZWYxZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudH19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZGVmMWZmO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0e2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFse2NvbG9yOiMwNjVmZDR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2RlZjFmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2RhZGZlNjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZGVmMWZmfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZGFkZmU2O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2NvbG9yOiMwNjVmZDR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp1bnNldDtib3JkZXItY29sb3I6IzA2NWZkNH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZGVmMWZmO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dW5zZXQ7Ym9yZGVyLWNvbG9yOiMwNjVmZDR9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2RlZjFmZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbkludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtjb2xvcjojM2VhNmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMjYzODUwO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnRyYW5zcGFyZW50fX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMjYzODUwO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbkludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2NvbG9yOiMwMzAzMDN9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojM2VhNmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25PdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiM2NWI4ZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojM2VhNmZmfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25PdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiM2NWI4ZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uT3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2NvbG9yOiMzZWE2ZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzAwMDtib3JkZXItY29sb3I6IzNlYTZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uT3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzY1YjhmZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uT3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDAwO2JvcmRlci1jb2xvcjojM2VhNmZmfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25PdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojNjViOGZmO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMyNzI3Mjc7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDMwMzAzfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMyNzI3Mjc7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7Y29sb3I6IzAzMDMwM30ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5lOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjEpfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0e2NvbG9yOiMwMzAzMDN9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudH19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Y29sb3I6IzAzMDMwM30ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjA1KX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjA1KX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFse2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2NvbG9yOiMwMzAzMDN9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dW5zZXQ7Ym9yZGVyLWNvbG9yOiMwMzAzMDN9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp1bnNldDtib3JkZXItY29sb3I6IzAzMDMwM319QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtjb2xvcjojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNkOWQ5ZDk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2ZmZn19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2Q5ZDlkOTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7Ym9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4yKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4yKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0e2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnRyYW5zcGFyZW50fX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtjb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjEpfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnVuc2V0O2JvcmRlci1jb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjIpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp1bnNldDtib3JkZXItY29sb3I6I2ZmZn19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Y29sb3I6IzAwMH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2U2ZTZlNjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNmZmZ9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2U2ZTZlNjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2JvcmRlci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMyl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5lOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjMpfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0e2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudH19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbntmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLDAuOCkpfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMSl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUJhY2tkcm9wRmlsdGVyRXhwZXJpbWVudHtiYWNrZHJvcC1maWx0ZXI6Ymx1cig0cHgpfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDAwO2JvcmRlci1jb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzAwMDtib3JkZXItY29sb3I6I2ZmZn19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtjb2xvcjojMDAwfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNlNmU2ZTY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2ZmZn19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2U2ZTZlNjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtjb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbntmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLDAuOCkpfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjMpfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoNDAsNDAsNDAsMC42KTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4zKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDQwLDQwLDQwLDAuNik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWwueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlQmFja2Ryb3BGaWx0ZXJFeHBlcmltZW50e2JhY2tkcm9wLWZpbHRlcjpibHVyKDhweCl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzAwMDtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjMpfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSg0MCw0MCw0MCwwLjYpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDAwO2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMyl9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDQwLDQwLDQwLDAuNik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEJyYW5kR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEJyYW5kR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoNDVkZWcsI2UxMDAyZCAzMCUsI2UwMTM3OCA4NSUpfS55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg0NWRlZywjZTEwMDJkIDMwJSwjZTAxMzc4IDg1JSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEJyYW5kR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoNDVkZWcsI2UxMDAyZCAzMCUsI2UwMTM3OCA4NSUpfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg0NWRlZywjZTEwMDJkIDMwJSwjZTAxMzc4IDg1JSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnJhbmRHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Y29sb3I6IzAzMDMwM30ueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnJhbmRHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp1bnNldDtib3JkZXItY29sb3I6IzAzMDMwM30ueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnJhbmRHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnVuc2V0O2JvcmRlci1jb2xvcjojMDMwMzAzfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnJhbmRHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjN2YwZTdmIDAsI2FhMDlhYSAyMCUsI2ZmNGU0NSAxMDAlKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsIzAwN2E2NSAwLCM3ZjBlN2YgMTAwJSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsIzdmMGU3ZiAwLCNhYTA5YWEgMjAlLCNmZjRlNDUgMTAwJSl9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCMwMDdhNjUgMCwjN2YwZTdmIDEwMCUpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtjb2xvcjojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcscmdiYSgxMjcsMTQsMTI3LDAuMikgMCxyZ2JhKDE3MCw5LDE3MCwwLjIpIDIwJSxyZ2JhKDI1NSw3OCw2OSwwLjIpIDEwMCUpfS55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHJnYmEoMCwxMjIsMTAxLDAuMikgMCxyZ2JhKDEyNywxNCwxMjcsMC4yKSAxMDAlKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHJnYmEoMTI3LDE0LDEyNywwLjIpIDAscmdiYSgxNzAsOSwxNzAsMC4yKSAyMCUscmdiYSgyNTUsNzgsNjksMC4yKSAxMDAlKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyxyZ2JhKDAsMTIyLDEwMSwwLjIpIDAscmdiYSgxMjcsMTQsMTI3LDAuMikgMTAwJSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtjb2xvcjojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnVuc2V0O2JvcmRlci1jb2xvcjojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dW5zZXQ7Ym9yZGVyLWNvbG9yOiMwMzAzMDN9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9fS55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Y29sb3I6IzkwOTA5MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RGlzYWJsZWQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMDUpfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZC55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2NvbG9yOiM5MDkwOTB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dERpc2FibGVkLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4xKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RGlzYWJsZWQueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtjb2xvcjojOTA5MDkwfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZC55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0e2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RGlzYWJsZWQueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Y29sb3I6IzkwOTA5MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RGlzYWJsZWQueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4wNSl9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dERpc2FibGVkLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFse2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0UmFpc2VkLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O2JveC1zaGFkb3c6MCA0cHggMTZweCAwIHJnYmEoMCwwLDAsMC4xKSwwIDJweCA4cHggMCByZ2JhKDAsMCwwLDAuMSl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFJhaXNlZC55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5lOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzI3MjcyNztib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0UmFpc2VkLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRSYWlzZWQueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMyNzI3Mjc7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX0ueXRTcGVjQnV0dG9uU2hhcGVXaXRoTGFiZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0U3BlY0J1dHRvblNoYXBlV2l0aExhYmVsTGFiZWx7bWFyZ2luOjRweCAtOHB4IDA7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoycmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNwZWNCdXR0b25TaGFwZVdpdGhMYWJlbExhYmVsey13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0U3BlY0J1dHRvblNoYXBlV2l0aExhYmVsSXNPdmVybGF5IC55dFNwZWNCdXR0b25TaGFwZVdpdGhMYWJlbExhYmVse21heC13aWR0aDo2NHB4O2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0QmFkZ2VWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dEJyTnpCYWRnZVNoYXBlSG9zdHtkaXNwbGF5OmJsb2NrfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVOelJhdGluZ1JlZFNxdWFyZXtiYWNrZ3JvdW5kOiNmMDM5MzY7aGVpZ2h0OjIuMnJlbTt3aWR0aDoyLjJyZW07Ym9yZGVyLXJhZGl1czowO2NvbG9yOmJsYWNrO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzpjbGlwO3BhZGRpbmc6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZU56UmF0aW5nWWVsbG93Q2lyY2xle2JhY2tncm91bmQ6I2ZmZWYwMDtoZWlnaHQ6Mi4ycmVtO3dpZHRoOjIuMnJlbTtib3JkZXItcmFkaXVzOjUwJTtjb2xvcjpibGFjazt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVOelJhdGluZ0dyZWVuQ2lyY2xle2JhY2tncm91bmQ6IzQyYzc1ODtoZWlnaHQ6Mi4ycmVtO3dpZHRoOjIuMnJlbTtib3JkZXItcmFkaXVzOjUwJTtjb2xvcjpibGFjazt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ1NtYWxsR3JlZW5TcXVhcmV7YmFja2dyb3VuZDpyZ2IoMCwxNjYsODEpO2hlaWdodDoxLjhyZW07d2lkdGg6MS44cmVtO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgd2hpdGU7Ym9yZGVyLXJhZGl1czoxMCU7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdTbWFsbEJsdWVTcXVhcmV7YmFja2dyb3VuZDpyZ2IoMCwxNDksMjE4KTtoZWlnaHQ6MS44cmVtO3dpZHRoOjEuOHJlbTtjb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6MTAlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzpjbGlwO3BhZGRpbmc6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nTGFyZ2VCbHVlU3F1YXJle2JhY2tncm91bmQ6cmdiKDAsMTQ5LDIxOCk7aGVpZ2h0OjIuMnJlbTt3aWR0aDoyLjJyZW07Y29sb3I6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCB3aGl0ZTtib3JkZXItcmFkaXVzOjEwJTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ1NtYWxsWWVsbG93U3F1YXJle2JhY2tncm91bmQ6cmdiKDI1MSwxOTMsMjEpO2hlaWdodDoxLjhyZW07d2lkdGg6MS44cmVtO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgd2hpdGU7Ym9yZGVyLXJhZGl1czoxMCU7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdMYXJnZVllbGxvd1NxdWFyZXtiYWNrZ3JvdW5kOnJnYigyNTEsMTkzLDIxKTtoZWlnaHQ6Mi4ycmVtO3dpZHRoOjIuMnJlbTtjb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6MTAlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzpjbGlwO3BhZGRpbmc6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nU21hbGxPcmFuZ2VTcXVhcmV7YmFja2dyb3VuZDpyZ2IoMjQ1LDEzMCwzMik7aGVpZ2h0OjEuOHJlbTt3aWR0aDoxLjhyZW07Y29sb3I6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCB3aGl0ZTtib3JkZXItcmFkaXVzOjEwJTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ0xhcmdlT3JhbmdlU3F1YXJle2JhY2tncm91bmQ6cmdiKDI0NSwxMzAsMzIpO2hlaWdodDoyLjJyZW07d2lkdGg6Mi4ycmVtO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgd2hpdGU7Ym9yZGVyLXJhZGl1czoxMCU7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdTbWFsbFJlZFNxdWFyZXtiYWNrZ3JvdW5kOnJnYigyMzYsMjksMzcpO2hlaWdodDoxLjhyZW07d2lkdGg6MS44cmVtO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgd2hpdGU7Ym9yZGVyLXJhZGl1czoxMCU7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdMYXJnZVJlZFNxdWFyZXtiYWNrZ3JvdW5kOnJnYigyMzYsMjksMzcpO2hlaWdodDoyLjJyZW07d2lkdGg6Mi4ycmVtO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgd2hpdGU7Ym9yZGVyLXJhZGl1czoxMCU7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdTbWFsbEJsYWNrU3F1YXJle2JhY2tncm91bmQ6cmdiKDAsMCwwKTtoZWlnaHQ6MS44cmVtO3dpZHRoOjEuOHJlbTtjb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6MTAlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzpjbGlwO3BhZGRpbmc6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nTGFyZ2VCbGFja1NxdWFyZXtiYWNrZ3JvdW5kOnJnYigwLDAsMCk7aGVpZ2h0OjIuMnJlbTt3aWR0aDoyLjJyZW07Y29sb3I6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCB3aGl0ZTtib3JkZXItcmFkaXVzOjEwJTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFNlY3Rpb25IZWFkZXJWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0U2VjdGlvbkhlYWRlclZpZXdNb2RlbEJhZGdlV2l0aExhYmVse2Rpc3BsYXk6aW5saW5lLWJsb2NrOy1tb3otbWFyZ2luLWVuZDo4cHg7bWFyZ2luLWlubGluZS1lbmQ6OHB4fS55dFNlY3Rpb25IZWFkZXJWaWV3TW9kZWxCYWRnZXM6bm90KDpsYXN0LWNoaWxkKXstbW96LW1hcmdpbi1lbmQ6OHB4O21hcmdpbi1pbmxpbmUtZW5kOjhweH0ueXRTZWN0aW9uSGVhZGVyVmlld01vZGVsVHJhaWxpbmdBY3Rpb25zQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0U2VjdGlvbkhlYWRlclZpZXdNb2RlbFRyYWlsaW5nQWN0aW9uc0NvbnRhaW5lcj46bm90KDpsYXN0LWNoaWxkKXstbW96LW1hcmdpbi1lbmQ6OHB4O21hcmdpbi1pbmxpbmUtZW5kOjhweH0ueXRTZWN0aW9uSGVhZGVyVmlld01vZGVsQ2hldnJvbnNDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRTZWN0aW9uSGVhZGVyVmlld01vZGVsQ2hldnJvbjpub3QoOmxhc3QtY2hpbGQpey1tb3otbWFyZ2luLWVuZDo4cHg7bWFyZ2luLWlubGluZS1lbmQ6OHB4fS55dFJhZGlvQnV0dG9uR3JvdXBWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0UmFkaW9CdXR0b25Hcm91cFZpZXdNb2RlbEZpZWxkc2V0e2JvcmRlcjpub25lO3BhZGRpbmc6MDttYXJnaW46MH0ueXRSYWRpb0J1dHRvbkdyb3VwVmlld01vZGVsRXJyb3J7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7Y29sb3I6I2MzMDAyN30ueXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbEhvc3R7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9ja30ueXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbENvbnRhaW5lcntwYWRkaW5nLWJvdHRvbToyMHB4fS55dFNlbGVjdGFibGVJdGVtVmlld01vZGVsTmF0aXZlQ29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlfS55dFNlbGVjdGFibGVJdGVtVmlld01vZGVsTmF0aXZlUmFkaW9CdXR0b257aGVpZ2h0OjA7bGVmdDowO21hcmdpbjowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjB9Lnl0U2VsZWN0YWJsZUl0ZW1WaWV3TW9kZWxOYXRpdmVMYWJlbHtjdXJzb3I6cG9pbnRlcn0ueXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbERpc2FibGVke2N1cnNvcjpkZWZhdWx0fS55dENhcmRWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRDYXJkVmlld01vZGVsT3V0bGluZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9Lnl0Q2FyZFZpZXdNb2RlbFJhaXNlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym94LXNoYWRvdzowIDAgMTBweCByZ2JhKDAsMCwwLDAuMjUpO291dGxpbmUtc3R5bGU6c29saWQ7b3V0bGluZS1jb2xvcjp0cmFuc3BhcmVudDt0cmFuc2l0aW9uOmJveC1zaGFkb3cgLjE4cyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvdXRsaW5lLWNvbG9yIC4xOHMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksb3V0bGluZS13aWR0aCAuMThzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dENhcmRWaWV3TW9kZWxDYXJkU2VsZWN0ZWR7Ym94LXNoYWRvdzowIDJweCA4cHggMCByZ2JhKDAsMCwwLDAuMjUpO291dGxpbmU6IzAzMDMwMyBzb2xpZCAycHg7dHJhbnNpdGlvbjpib3gtc2hhZG93IC4xOHMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksb3V0bGluZS1jb2xvciAuMThzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG91dGxpbmUtd2lkdGggLjE4cyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRDYXJkVmlld01vZGVsVG9uYWx7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpfS55dENhcmRWaWV3TW9kZWxJbnZlcnRlZHtiYWNrZ3JvdW5kLWNvbG9yOiMwZjBmMGZ9Lnl0Q2FyZFZpZXdNb2RlbENvbnRlbnRXcmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCV9Lnl0Q2FyZFZpZXdNb2RlbFRvcENvbnRlbnRDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7d2lkdGg6MTAwJX0ueXRDYXJkVmlld01vZGVsVG9wQ29udGVudHstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjF9Lnl0Q2FyZFZpZXdNb2RlbElubGluZVRyYWlsaW5nQWN0aW9ue2FsaWduLXNlbGY6ZmxleC1zdGFydH0ueXRDYXJkVmlld01vZGVsSW5saW5lQ2VudGVyVHJhaWxpbmdBY3Rpb257YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0Q2FyZFZpZXdNb2RlbElubGluZVRyYWlsaW5nQWN0aW9uTWFyZ2lue21hcmdpbjo2cHh9Lnl0Q2FyZFZpZXdNb2RlbE92ZXJsYXlUcmFpbGluZ0FjdGlvbntwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxMnB4O3RvcDoxMnB4fS55dENhcmRWaWV3TW9kZWxDYXJkVmlld01vZGVsSW5uZXJ7Ym9yZGVyLXJhZGl1czoxMnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZTstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dENhcmRWaWV3TW9kZWxTZWxlY3RlZHtib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCAjMDMwMzAzfS55dENhcmRWaWV3TW9kZWxCb3R0b21Db250ZW50UGFkZGluZywueXRDYXJkVmlld01vZGVsVG9wQ29udGVudFBhZGRpbmd7cGFkZGluZzoxMnB4fS55dENhcmRWaWV3TW9kZWxDbGlja2FibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0Q2FyZFZpZXdNb2RlbERpc2FibGVkT3ZlcmxheXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtpbnNldDowO3Bvc2l0aW9uOmFic29sdXRlfS55dENhcmRWaWV3TW9kZWxCYWNrZ3JvdW5kV3JhcHBlcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MH0ueXRDYXJkVmlld01vZGVsQmFja2dyb3VuZHt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO29iamVjdC1maXQ6ZmlsbH0ueXRDaGVja2JveEdyb3VwVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dENoZWNrYm94R3JvdXBWaWV3TW9kZWxGaWVsZHNldHtib3JkZXI6bm9uZTtwYWRkaW5nOjA7bWFyZ2luOjB9Lnl0Q2hlY2tib3hJdGVtVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dFBhbmVsRm9vdGVyVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO3BhZGRpbmc6MTJweH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbEhpZGVEaXZpZGVye2JvcmRlci10b3A6bm9uZX0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbERpc2FibGVQYWRkaW5ne3BhZGRpbmc6MTJweCAwIDB9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxEaXNhYmxlUGFkZGluZy55dFBhbmVsRm9vdGVyVmlld01vZGVsSGlkZURpdmlkZXJ7cGFkZGluZy10b3A6MH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbFJvd0JvdHRvbVBhZGRpbmd7cGFkZGluZy1ib3R0b206MTJweH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbFRleHRQYWRkaW5ne3BhZGRpbmctcmlnaHQ6MjRweH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbFRleHRSb3d7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uU3RhY2t7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uU3RhY2tUb3BCdXR0b257bWFyZ2luOjAgMCA4cHh9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3d7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dUcmFpbGluZ3stbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dMZWZ0QnV0dG9ue21hcmdpbi1yaWdodDo4cHh9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dGdWxsV2lkdGh7d2lkdGg6MTAwJX0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbEJ1dHRvblJvd0V4cGFuZHstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uUm93U2hyaW5rey1tb3otYm94LWZsZXg6MDtmbGV4OjB9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dIaWRkZW57ZGlzcGxheTpub25lfS55dFNwZWNJY29uU2hhcGVIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dFNwaW5uZXJTaGFwZVdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRTcGlubmVyU2hhcGVTcGlubmVye2Rpc3BsYXk6YmxvY2s7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O21hcmdpbjoxMnB4IGF1dG87d2lkdGg6MzJweDtoZWlnaHQ6MzJweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6MnB4IHNvbGlkICNlZWU7Ym9yZGVyLXRvcC1jb2xvcjojNjY2O2FuaW1hdGlvbjpzcGlubmVyIC44cyBsaW5lYXIgaW5maW5pdGV9Lnl0U3Bpbm5lclNoYXBlU3Bpbm5lcjpub3QoW2hpZGRlbl0pe2NvbG9yOiMzMzM7Zm9udC1zaXplOjEuNnJlbX1Aa2V5ZnJhbWVzIHNwaW5uZXJ7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19Lnl0TG90dGllQ29tcG9uZW50SG9zdHtkaXNwbGF5OmJsb2NrfS55dExvdHRpZUNvbXBvbmVudEhvc3Qgc3Zne2Rpc3BsYXk6YmxvY2t9Lnl0QW5pbWF0ZWRJY29uSG9zdHtkaXNwbGF5OmJsb2NrfS55dEFuaW1hdGVkSWNvbkhvc3QgLmFuaW1hdGVkLWxpa2UtaWNvbiwueXRBbmltYXRlZEljb25Ib3N0IC5jdXN0b20tYW5pbWF0ZWQtbGlrZS1pY29ue2hlaWdodDoyNHB4O3dpZHRoOjI0cHg7bWFyZ2luOjB9Lnl0QW5pbWF0ZWRJY29uSG9zdCAuYW5pbWF0ZWQtbGlrZS1pY29uIC5hbmltYXRlZC1saWtlLWljb24sLnl0QW5pbWF0ZWRJY29uSG9zdCAuYW5pbWF0ZWQtbGlrZS1pY29uIC5jdXN0b20tYW5pbWF0ZWQtbGlrZS1pY29uLC55dEFuaW1hdGVkSWNvbkhvc3QgLmN1c3RvbS1hbmltYXRlZC1saWtlLWljb24gLmFuaW1hdGVkLWxpa2UtaWNvbiwueXRBbmltYXRlZEljb25Ib3N0IC5jdXN0b20tYW5pbWF0ZWQtbGlrZS1pY29uIC5jdXN0b20tYW5pbWF0ZWQtbGlrZS1pY29ue3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtMTJweCwtMTJweCk7aGVpZ2h0OjQ4cHg7d2lkdGg6NDhweH0ueXRBbmltYXRlZEljb25Ib3N0IC5hbmltYXRlZC1zdWJzY3JpYmUtaWNvbnt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMnB4LC0xMnB4KTtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4fS55dEFuaW1hdGVkSWNvbkhvc3RbZGF0YS1zaXplPSIxOCJdIC5hbmltYXRlZC1saWtlLWljb24sLnl0QW5pbWF0ZWRJY29uSG9zdFtkYXRhLXNpemU9IjE4Il0gLmN1c3RvbS1hbmltYXRlZC1saWtlLWljb257aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0ueXRBbmltYXRlZEljb25Ib3N0W2RhdGEtc2l6ZT0iMTgiXSAuYW5pbWF0ZWQtbGlrZS1pY29uIC5hbmltYXRlZC1saWtlLWljb24sLnl0QW5pbWF0ZWRJY29uSG9zdFtkYXRhLXNpemU9IjE4Il0gLmFuaW1hdGVkLWxpa2UtaWNvbiAuY3VzdG9tLWFuaW1hdGVkLWxpa2UtaWNvbiwueXRBbmltYXRlZEljb25Ib3N0W2RhdGEtc2l6ZT0iMTgiXSAuY3VzdG9tLWFuaW1hdGVkLWxpa2UtaWNvbiAuYW5pbWF0ZWQtbGlrZS1pY29uLC55dEFuaW1hdGVkSWNvbkhvc3RbZGF0YS1zaXplPSIxOCJdIC5jdXN0b20tYW5pbWF0ZWQtbGlrZS1pY29uIC5jdXN0b20tYW5pbWF0ZWQtbGlrZS1pY29ue3RyYW5zZm9ybTp0cmFuc2xhdGUoLTlweCwtOXB4KTtoZWlnaHQ6MzZweDt3aWR0aDozNnB4fS55dEFuaW1hdGVkSWNvbkhvc3RbZGF0YS1zaXplPSIxOCJdIC5hbmltYXRlZC1zdWJzY3JpYmUtaWNvbnt0cmFuc2Zvcm06dHJhbnNsYXRlKC05cHgsLTlweCk7aGVpZ2h0OjM2cHg7d2lkdGg6MzZweH0ueXRIb3Jpem9udGFsU2xpZGVyVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dFNsaWRlclNoYXBlSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWFyZ2luOjE2cHggMTJweH0ueXRTbGlkZXJTaGFwZUhvc3RJbmNyZW1lbnRCdXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDo0OHB4O3dpZHRoOjQ4cHg7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItc3R5bGU6bm9uZTtjdXJzb3I6cG9pbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRTbGlkZXJTaGFwZUhvc3RJbmNyZW1lbnRCdXR0b25JY29uV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpO2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0U2xpZGVyU2hhcGVIb3N0SW5jcmVtZW50QnV0dG9uSWNvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6IzAzMDMwMztoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dFNsaWRlclNoYXBlSG9zdEluY3JlbWVudEJ1dHRvbjpkaXNhYmxlZHtjdXJzb3I6ZGVmYXVsdDtjb2xvcjojOTA5MDkwfS55dFNsaWRlclNoYXBlSG9zdFNsaWRlcnstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czowO2ZvbnQ6aW5oZXJpdDtjb2xvcjojMDMwMzAzOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTttYXJnaW46MCAxMnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7b3V0bGluZTpub25lO3BhZGRpbmctYm90dG9tOjA7LS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudDowO3dpZHRoOjEwMCU7aGVpZ2h0OjI0cHh9Lnl0U2xpZGVyU2hhcGVIb3N0U2xpZGVyOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFja3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwjMDMwMzAzIDAsIzAzMDMwMyB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCAxMDAlKTtoZWlnaHQ6NHB4O2JvcmRlci1yYWRpdXM6MTJweH0ueXRTbGlkZXJTaGFwZUhvc3RTbGlkZXI6Oi1tb3otcmFuZ2UtdHJhY2t7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIzAzMDMwMyAwLCMwMzAzMDMgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLCM5MDkwOTAgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLCM5MDkwOTAgMTAwJSk7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0U2xpZGVyU2hhcGVIb3N0U2xpZGVyOjotd2Via2l0LXNsaWRlci10aHVtYnthcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZDojMDMwMzAzO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7Ym9yZGVyLXJhZGl1czo4cHg7bWFyZ2luLXRvcDotNnB4fS55dFNsaWRlclNoYXBlSG9zdFNsaWRlcjo6LW1vei1yYW5nZS10aHVtYntiYWNrZ3JvdW5kOiMwMzAzMDM7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjhweH0ueXRTbGlkZXJTaGFwZUhvc3RTbGlkZXI6Oi1tcy10aHVtYntiYWNrZ3JvdW5kOiMwMzAzMDM7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjhweH0ueXRTbGlkZXJTaGFwZVZlcnRpY2Fse2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O21hcmdpbjowO3dyaXRpbmctbW9kZTp2ZXJ0aWNhbC1ybDtkaXJlY3Rpb246cnRsfS55dFNsaWRlclNoYXBlVmVydGljYWxTbGlkZXJ7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MDtmb250OmluaGVyaXQ7Y29sb3I6IzAzMDMwMzstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7bWFyZ2luOjAgMTJweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O291dGxpbmU6bm9uZTtwYWRkaW5nLWJvdHRvbTowOy0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQ6MDtoZWlnaHQ6MTAwJTt3aWR0aDoyNHB4fS55dFNsaWRlclNoYXBlVmVydGljYWxTbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHRvcCwjMDMwMzAzIDAsIzAzMDMwMyB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCAxMDAlKTt3aWR0aDo0cHg7Ym9yZGVyLXJhZGl1czoxMnB4fS55dFNsaWRlclNoYXBlVmVydGljYWxTbGlkZXI6Oi1tb3otcmFuZ2UtdHJhY2t7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gdG9wLCMwMzAzMDMgMCwjMDMwMzAzIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjOTA5MDkwIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjOTA5MDkwIDEwMCUpO3dpZHRoOjRweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0U2xpZGVyU2hhcGVWZXJ0aWNhbFNsaWRlcjo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQ6IzAzMDMwMzt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2JvcmRlci1yYWRpdXM6OHB4O21hcmdpbi1yaWdodDotNnB4fS55dFNsaWRlclNoYXBlVmVydGljYWxTbGlkZXI6Oi1tb3otcmFuZ2UtdGh1bWJ7YmFja2dyb3VuZDojMDMwMzAzO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0U2xpZGVyU2hhcGVWZXJ0aWNhbFNsaWRlcjo6LW1zLXRodW1ie2JhY2tncm91bmQ6IzAzMDMwMzt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2JvcmRlci1yYWRpdXM6OHB4fUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNsaWRlclNoYXBlSG9zdFNsaWRlcnstbW96LWFwcGVhcmFuY2U6YXV0bzthcHBlYXJhbmNlOmF1dG87LXdlYmtpdC1hcHBlYXJhbmNlOmF1dG99fS55dFBhbmVsSGVhZGVyVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwYWRkaW5nOjEwcHggMTZweDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTttaW4taGVpZ2h0OjQ4cHg7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94Oy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0ueXRQYW5lbEhlYWRlclZpZXdNb2RlbEhvc3RIaWRlRGl2aWRlcntib3JkZXItYm90dG9tOm5vbmV9Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxIb3N0Q29tcGFjdHtwYWRkaW5nOjhweCAxMnB4fS55dFBhbmVsSGVhZGVyVmlld01vZGVsVGl0bGVXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRQYW5lbEhlYWRlclZpZXdNb2RlbFRpdGxlSGVhZGVye21hcmdpbjowfS55dFBhbmVsSGVhZGVyVmlld01vZGVsVGl0bGVIZWFkZXJOb25JbnRlcmFjdGl2ZXtwb2ludGVyLWV2ZW50czpub25lfS55dFBhbmVsSGVhZGVyVmlld01vZGVsVGl0bGV7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjIuNnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRQYW5lbEhlYWRlclZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjIuNnJlbX0ueXRQYW5lbEhlYWRlclZpZXdNb2RlbFN1YnRpdGxle21hcmdpbi10b3A6MnB4O2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoxLjhyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxTdWJ0aXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MTttYXgtaGVpZ2h0Om5vbmV9fS55dFBhbmVsSGVhZGVyVmlld01vZGVsU3VidGl0bGV7bWF4LWhlaWdodDoxLjhyZW19Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxUcmFpbGluZ0J1dHRvbnN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOm5vd3JhcDttYXJnaW4tbGVmdDoxMnB4fS55dFBhbmVsSGVhZGVyVmlld01vZGVsQnV0dG9uOm5vdCg6bGFzdC1jaGlsZCl7cGFkZGluZy1yaWdodDoyNHB4fS55dFBhbmVsSGVhZGVyVmlld01vZGVsQnV0dG9uT3JBbmNob3J7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47b3V0bGluZTpub25lfS55dFBhbmVsSGVhZGVyVmlld01vZGVsQnV0dG9uT3JBbmNob3JGb2N1c2Vke291dGxpbmU6MnB4IHNvbGlkIGN1cnJlbnRDb2xvcn0ueXRTaGVldFZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dFNoZWV0Vmlld01vZGVsQ29udGV4dHVhbHtiYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpO2JvcmRlci1yYWRpdXM6MTJweDtib3gtc2hhZG93OjAgNHB4IDMycHggMCByZ2JhKDAsMCwwLDAuMSk7b3ZlcmZsb3c6aGlkZGVufS55dFNoZWV0Vmlld01vZGVsUGFkZGVkQ29udGVudHtwYWRkaW5nOjE2cHggMH0ueXRTaGVldFZpZXdNb2RlbERpc2FibGVCYWNrZHJvcEZpbHRlcntiYWNrZHJvcC1maWx0ZXI6bm9uZX0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21pbi1oZWlnaHQ6MH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRDb250YWluZXJ7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQtY29sb3I6I2ZmZjtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpmaXhlZDttYXJnaW46MCA4cHggMjRweDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDt6LWluZGV4OjEwMH1AbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86MTMvOSkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpIGFuZCAobWluLXdpZHRoOjQxNnB4KSwobWluLXdpZHRoOjkzMXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSkgYW5kIChtaW4td2lkdGg6NDE2cHgpey55dFNwZWNCb3R0b21TaGVldExheW91dENvbnRhaW5lcnt3aWR0aDo0MDBweDttYXJnaW46MCBhdXRvIDI0cHggYXV0b319Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0SGVhZGVyV3JhcHBlcntvdmVyZmxvdzpoaWRkZW47LW1vei1ib3gtZmxleDowO2ZsZXg6bm9uZTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZmZmO2N1cnNvcjotbW96LWdyYWI7Y3Vyc29yOmdyYWJ9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0SGVhZGVyV3JhcHBlcklzRHJhZ2dpbmd7Y3Vyc29yOi1tb3otZ3JhYmJpbmc7Y3Vyc29yOmdyYWJiaW5nfS55dFNwZWNCb3R0b21TaGVldExheW91dEhlYWRlcldyYXBwZXJCb3R0b21Cb3JkZXJ7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfS55dFNwZWNCb3R0b21TaGVldExheW91dERyYWdMaW5le2JhY2tncm91bmQ6IzAzMDMwMztvcGFjaXR5Oi4xNTtib3JkZXItcmFkaXVzOjRweDtoZWlnaHQ6NHB4O21hcmdpbjowIGF1dG87d2lkdGg6NDBweDttYXJnaW4tdG9wOjhweH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRIZWFkZXJ7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21hcmdpbi10b3A6OHB4fS55dFNwZWNCb3R0b21TaGVldExheW91dEhlYWRlcldpdGhUaXRsZXttYXJnaW4tYm90dG9tOjdweH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUaXRsZVdyYXBwZXJ7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21hcmdpbi1sZWZ0OjEycHh9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0VGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo1MDA7Y29sb3I6IzAzMDMwMzttYXgtaGVpZ2h0OjIwcHg7bWFyZ2luOjB9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0U3VidGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7Y29sb3I6IzYwNjA2MDttYXJnaW4tYm90dG9tOjA7bWFyZ2luLXRvcDo0cHg7bWF4LWhlaWdodDoxNnB4fS55dFNwZWNCb3R0b21TaGVldExheW91dE1vZGVybiAueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoyLjhyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuOHJlbTtsaW5lLWhlaWdodDoyLjZyZW07Zm9udC13ZWlnaHQ6NzAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6Mi42cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNwZWNCb3R0b21TaGVldExheW91dE1vZGVybiAueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUaXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MTttYXgtaGVpZ2h0Om5vbmV9fX0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRNb2Rlcm4gLnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0VGl0bGV7bWF4LWhlaWdodDoyLjhyZW19QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFRpdGxle21heC1oZWlnaHQ6Mi42cmVtfX0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRNb2Rlcm4gLnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0U3VidGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoxLjhyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFN1YnRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFN1YnRpdGxle21heC1oZWlnaHQ6MS44cmVtfS55dFNwZWNCb3R0b21TaGVldExheW91dEFjdGlvbkhlYWRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOiMwMzAzMDM7bWFyZ2luOjAgMTJweH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRDb250ZW50V3JhcHBlcnstbW96LWJveC1mbGV4OjE7ZmxleDoxOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoO292ZXJmbG93LXk6c2Nyb2xsfS55dFNwZWNCb3R0b21TaGVldExheW91dEJvdHRvbVNoZWV0Q29udGVudHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Y29sb3I6IzAzMDMwM30ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRGb290ZXJXcmFwcGVye2Rpc3BsYXk6YmxvY2s7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtvdmVyZmxvdzpoaWRkZW47LW1vei1ib3gtZmxleDowO2ZsZXg6bm9uZTtwb3NpdGlvbjpzdGlja3k7Ym90dG9tOjB9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0Rm9vdGVyQnV0dG9uV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDttYXJnaW46MTJweCAwfS55dFNwZWNCb3R0b21TaGVldExheW91dEZvb3RlckJ1dHRvbldyYXBwZXJMYW5kc2NhcGVCdXR0b25XcmFwcGVye21hcmdpbjo2cHggMH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRTZWNvbmRhcnlCdXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7bWFyZ2luLXJpZ2h0OjhweDttYXJnaW4tbGVmdDoxMnB4fS55dFNwZWNCb3R0b21TaGVldExheW91dFNlY29uZGFyeUJ1dHRvblRyYWlsaW5nUGFpcnstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0U2Vjb25kYXJ5QnV0dG9uU3BsaXRQYWlyey1tb3otYm94LWZsZXg6MTtmbGV4OjE7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRTZWNvbmRhcnlCdXR0b25QcmltYXJ5U3BsaXRQYWlyey1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0UHJpbWFyeUJ1dHRvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dFNwZWNCb3R0b21TaGVldExheW91dFByaW1hcnlCdXR0b25EZWZhdWx0e21hcmdpbjowIDEycHg7d2lkdGg6MTAwJX0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRQcmltYXJ5QnV0dG9uVHJhaWxpbmdQYWlyey1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDttYXJnaW4tcmlnaHQ6MTJweH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRQcmltYXJ5QnV0dG9uUHJpbWFyeVNwbGl0UGFpciwueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRQcmltYXJ5QnV0dG9uU3BsaXRQYWlyey1tb3otYm94LWZsZXg6MTtmbGV4OjE7bWFyZ2luLXJpZ2h0OjEycHg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRGb290ZXJMYWJlbFdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO21hcmdpbjowIDEycHg7aGVpZ2h0OjMwcHh9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0Rm9vdGVyTGFiZWxXcmFwcGVyV2l0aG91dEJ1dHRvbnN7bWFyZ2luLWJvdHRvbToxMnB4fS55dFNwZWNCb3R0b21TaGVldExheW91dExlYWRpbmdMYWJlbCwueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUcmFpbGluZ0xhYmVse21hcmdpbi10b3A6MTJweDtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRDb250ZXh0dWFsU2hlZXRMYXlvdXRIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7aGVpZ2h0OjEwMCU7bWluLXdpZHRoOjEyOHB4O21heC13aWR0aDo0MDBweDt3aWR0aDoxMDAlO21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDQ4cHgpO21pbi1oZWlnaHQ6MH0ueXRDb250ZXh0dWFsU2hlZXRMYXlvdXRIb3N0T2xkTWluV2lkdGh7bWluLXdpZHRoOjI1NnB4fS55dENvbnRleHR1YWxTaGVldExheW91dEFkZFBhZGRpbmd7cGFkZGluZy1ib3R0b206OHB4fS55dENvbnRleHR1YWxTaGVldExheW91dEhlYWRlckNvbnRhaW5lcnstbW96LWJveC1mbGV4OjA7ZmxleDowfS55dENvbnRleHR1YWxTaGVldExheW91dENvbnRlbnRDb250YWluZXJ7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO292ZXJmbG93LXk6YXV0bztzY3JvbGxiYXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7c2Nyb2xsYmFyLXdpZHRoOnRoaW59Lnl0Q29udGV4dHVhbFNoZWV0TGF5b3V0Q29udGVudENvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDt3aWR0aDoxNnB4fS55dENvbnRleHR1YWxTaGVldExheW91dENvbnRlbnRDb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2hlaWdodDo1NnB4O2JvcmRlci1yYWRpdXM6OHB4O2JvcmRlcjo0cHggc29saWQgdHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jbGlwOmNvbnRlbnQtYm94O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9Lnl0Q29udGV4dHVhbFNoZWV0TGF5b3V0Q29udGVudENvbnRhaW5lcjpob3ZlcntzY3JvbGxiYXItY29sb3I6IzkwOTA5MCB0cmFuc3BhcmVudH0ueXRDb250ZXh0dWFsU2hlZXRMYXlvdXRDb250ZW50Q29udGFpbmVyOmhvdmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kLWNvbG9yOiM5MDkwOTB9Lnl0Q29udGV4dHVhbFNoZWV0TGF5b3V0Rm9vdGVyQ29udGFpbmVyey1tb3otYm94LWZsZXg6MDtmbGV4OjB9Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWFyZ2luOjEycHh9Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsU3BlZWRJbmRpY2F0b3JDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbjphdXRvfS55dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbFBsYXliYWNrU3BlZWREaXNwbGF5ey1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXI7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjhyZW07bGluZS1oZWlnaHQ6My44cmVtO2ZvbnQtd2VpZ2h0OjkwMH1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsueXR3VmFyaWFibGVTcGVlZENvbnRyb2xsZXJWaWV3TW9kZWxQbGF5YmFja1NwZWVkRGlzcGxheXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjkwMH19Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsUHJlbWl1bUJhZGdle3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjEwMCU7bWFyZ2luLXJpZ2h0OjhweH0ueXR3VmFyaWFibGVTcGVlZENvbnRyb2xsZXJWaWV3TW9kZWxTbGlkZXJDb250YWluZXJ7bWFyZ2luOjhweCAwfS55dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbFBsYXliYWNrU3BlZWRCdXR0b257bWFyZ2luOjAgNHB4fS55dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbEJ1dHRvbkNvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyU3BlZWRCdXR0b25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1zZWxmOmZsZXgtc3RhcnR9Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyU3BlZWRCdXR0b25WaWV3TW9kZWxTcGVlZExhYmVse21hcmdpbi10b3A6NHB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOiMwMzAzMDN9Lnl0V2ViU2NyaW1Ib3N0e3Bvc2l0aW9uOmZpeGVkO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6MTtjdXJzb3I6cG9pbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC44KX0ueXRXZWJTY3JpbUhvc3RSZWxhdGl2ZXtwb3NpdGlvbjphYnNvbHV0ZX0ueXRXZWJTY3JpbUhvc3RNb2Rlcm5PdmVybGF5e2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjMpfS55dFdlYlNjcmltSG9zdEJvdHRvbVNoZWV0e2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpfS55dFdlYlNjcmltSG9zdEVuZ2FnZW1lbnRQYW5lbHt6LWluZGV4OjA7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCk7dG9wOjEwMHZ3fS55dFdlYlNjcmltSG9zdERyYWdnYWJsZUVuZ2FnZW1lbnRQYW5lbHt6LWluZGV4OjM7dG9wOjB9Lnl0V2ViU2NyaW1Ib3N0RHJhd2VyTGF5b3V0e2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjpyZ2JhKDAsMCwwLDApfS55dFdlYlNjcmltRGlhbG9nQ29udGFpbmVye3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3otaW5kZXg6NH0ueXRXZWJTY3JpbUhpZGRlbkJ1dHRvbntwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7aGVpZ2h0OjEycHg7d2lkdGg6MTJweDtwYWRkaW5nOjA7Ym9yZGVyOm5vbmU7b3V0bGluZTpub25lO2ZvbnQ6aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTppbmhlcml0O2NvbG9yOmluaGVyaXQ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH1ib3R0b20tc2hlZXQtY29udGFpbmVye3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6NX1ib3R0b20tc2hlZXQtY29udGFpbmVyIC5jbG9zZS1idXR0b257cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO2hlaWdodDoxMnB4O3dpZHRoOjEycHh9YzMtb3ZlcmxheS5ib3R0b20tc2hlZXQtb3ZlcmxheXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KX1bYm90dG9tLXNoZWV0LW9wZW5de292ZXJmbG93OmhpZGRlbn1bbW9kYWwtb3Blbi1ib2R5XXtwb3NpdGlvbjpmaXhlZDtsZWZ0OjA7cmlnaHQ6MH0uYjMtaWZyYW1lLWFuY2VzdG9yW21vZGFsLW9wZW4tYm9keV17cG9zaXRpb246YWJzb2x1dGV9Lm1vZGFsLWhpZGRlbi1idXR0b257cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO2hlaWdodDoxMnB4O3dpZHRoOjEycHh9LmJ1dHRvbi13aXRoLWljb257cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7bWluLXdpZHRoOjUuMTRlbTttYXJnaW46MCAuMjllbTtmb250LXNpemU6MS40cmVtO2JvcmRlci1yYWRpdXM6M3B4fS5idXR0b24td2l0aC1pY29uLWJ1dHRvbntwYWRkaW5nOi43ZW0gLjU3ZW19LmJ1dHRvbi13aXRoLWljb24uY29tcGFjdHttYXJnaW46LS43ZW0gLS41N2VtfS5idXR0b24td2l0aC1pY29uLmNvbXBhY3QrLmJ1dHRvbi13aXRoLWljb24uY29tcGFjdHttYXJnaW4tbGVmdDouN2VtfS5idXR0b24td2l0aC1pY29uLWlubmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9LmJ1dHRvbi13aXRoLWljb24tYnV0dG9uW2Rpc2FibGVkXSwuYnV0dG9uLXdpdGgtaWNvbi5kaXNhYmxlZCAuYnV0dG9uLXdpdGgtaWNvbi1idXR0b257Y29sb3I6IzkwOTA5MH0uYnV0dG9uLXJlbmRlcmVyW2RhdGEtc3R5bGU9U1RZTEVfQlJBTkRde2NvbG9yOiNlMTAwMmR9LmJ1dHRvbi1yZW5kZXJlcltkYXRhLXN0eWxlPVNUWUxFX1BSSU1BUlldOm5vdChbZGlzYWJsZWQ9dHJ1ZV0pe2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0fS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9QUklNQVJZXVtkaXNhYmxlZD10cnVlXXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9URVhUXXtjb2xvcjojNjA2MDYwfS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9URVhUXSAubG9nby1hcnJvd3tmaWxsOiNmZmZ9LmJ1dHRvbi1yZW5kZXJlcltkYXRhLXN0eWxlPVNUWUxFX0JMVUVfVEVYVF17Y29sb3I6IzA2NWZkNH0uYnV0dG9uLXJlbmRlcmVyW2RhdGEtc3R5bGU9U1RZTEVfQkxVRV9URVhUX1dJVEhfSU5WRVJTRV9USEVNRV17Y29sb3I6IzNlYTZmZn0uYnV0dG9uLXJlbmRlcmVyW2RhdGEtc3R5bGU9U1RZTEVfREVTVFJVQ1RJVkVde2JhY2tncm91bmQtY29sb3I6I2UxMDAyZDtib3JkZXItY29sb3I6I2UxMDAyZDtjb2xvcjojZmZmfS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9TVUdHRVNUSVZFXXtib3JkZXI6MXB4IHNvbGlkICMwNjVmZDQ7Y29sb3I6IzA2NWZkNH0uYnV0dG9uLXJlbmRlcmVyW2RhdGEtc3R5bGU9U1RZTEVfT1ZFUkxBWV17YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMyk7Y29sb3I6I2ZmZn0uYnV0dG9uLXJlbmRlcmVyW2RhdGEtc3R5bGU9U1RZTEVfREFSS117YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMyk7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpfS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9JTkFDVElWRV9PVVRMSU5FXXtjb2xvcjojNjA2MDYwO2JvcmRlcjoxcHggc29saWQgIzYwNjA2MDtwYWRkaW5nOjVweCAxMXB4fS5idXR0b24tcmVuZGVyZXJbZGF0YS1pY29uLW9ubHk9dHJ1ZV17bWluLXdpZHRoOjA7bWFyZ2luOjB9LmJ1dHRvbi1yZW5kZXJlcltkYXRhLWljb24tb25seT1mYWxzZV0gLmJ1dHRvbi1yZW5kZXJlci1pY29ue21hcmdpbjowIDhweH0uYnV0dG9uLXJlbmRlcmVyLXRleHR7YWxpZ24tc2VsZjpjZW50ZXI7bWluLWhlaWdodDoxZW07bGluZS1oZWlnaHQ6MWVtO2ZvbnQtd2VpZ2h0OjUwMH1baXMtYnVzeT10cnVlXSAuYnV0dG9uLXJlbmRlcmVyLWljb24sW2lzLWJ1c3k9dHJ1ZV0gLmJ1dHRvbi1yZW5kZXJlci10ZXh0e3Zpc2liaWxpdHk6aGlkZGVufS5idXR0b24td2l0aC1pY29uLXNwaW5uZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7bWFyZ2luOmF1dG99LmJ1dHRvbi1yZW5kZXJlci13aXRoLWFuaW1hdGlvbiAuYnV0dG9uLXdpdGgtaWNvbi1idXR0b257b3ZlcmZsb3c6dmlzaWJsZX1jMy1pY29ue2Rpc3BsYXk6LW1vei1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleC1zaHJpbms6MDt3aWR0aDoyNHB4O2hlaWdodDoyNHB4O2ZpbGw6Y3VycmVudENvbG9yO3N0cm9rZTpub25lfVtkaXI9cnRsXSBjMy1pY29uW2ZsaXAtZm9yLXJ0bD10cnVlXXt0cmFuc2Zvcm06c2NhbGVYKC0xKX0uaWNvbi1idXR0b257Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O3BhZGRpbmc6OHB4Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH1jMy1pY29uIHN2Z3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlfWMzLWljb24uaWNvbi1zdGF0ZS1vdXRsaW5lW2ljb24tc3RhdGUtZmlsbGVkXXtkaXNwbGF5Om5vbmV9YzMtaWNvbi5pY29uLXN0YXRlLWZpbGxlZFtpY29uLXN0YXRlLW91dGxpbmVde2Rpc3BsYXk6bm9uZX0ucGl2b3QtYmFyLWl0ZW0tdGFiIGMzLWljb25baWNvbi1zdGF0ZS1maWxsZWRde2Rpc3BsYXk6bm9uZX0ucGl2b3QtYmFyLWl0ZW0tdGFiIGMzLWljb25baWNvbi1zdGF0ZS1vdXRsaW5lXXtkaXNwbGF5OmJsb2NrfS5waXZvdC1iYXItaXRlbS10YWJbYXJpYS1zZWxlY3RlZD10cnVlXSBjMy1pY29uW2ljb24tc3RhdGUtZmlsbGVkXXtkaXNwbGF5OmJsb2NrfS5waXZvdC1iYXItaXRlbS10YWJbYXJpYS1zZWxlY3RlZD10cnVlXSBjMy1pY29uW2ljb24tc3RhdGUtb3V0bGluZV17ZGlzcGxheTpub25lfSNtZW51LC5tZW51LWNvbnRhaW5lcntwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ei1pbmRleDo0fS5tZW51LWNvbnRlbnR7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO21heC1oZWlnaHQ6MTAwJTtvdmVyZmxvdy15OmF1dG87Y29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7cGFkZGluZzozcHh9Lm1lbnUtY29udGVudC5tZW51LWJvdHRvbXtib3R0b206MDtjb2xvcjojMDMwMzAzO3BhZGRpbmc6MDtwb3NpdGlvbjpmaXhlZDttYXgtd2lkdGg6MTAwJTt3aWR0aDoxMDAlfS5ib3R0b20tbWVudS1jYW5jZWx7Ym9yZGVyLXRvcDoxcHggc29saWQgI2YxZjFmMTtwYWRkaW5nOjhweCAwfS5tZW51LWNvbnRlbnQ+YXtkaXNwbGF5OmJsb2NrfS5tZW51LWNhbmNlbC1idXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ubWVudS1jYW5jZWwtaWNvbnttYXJnaW46MCA4cHh9Lm1lbnUtY29udGVudC5tZW51LWJvdHRvbSBjMy1pY29ue2NvbG9yOiMwMzAzMDM7bWFyZ2luOjAgMzJweCAwIDB9Lm1lbnUtY29udGVudDpub3QoLm1lbnUtc2hvdy1pY29ucykgLm1lbnUtaXRlbS1idXR0b24gYzMtaWNvbntkaXNwbGF5Om5vbmV9QG1lZGlhIChtaW4td2lkdGg6MzMwcHgpey5tZW51LWNvbnRlbnQ6bm90KC5tZW51LWJvdHRvbSl7bWluLXdpZHRoOjI1MHB4O21heC13aWR0aDozNTZweDttYXJnaW46NDBweH19Lm1lbnUtZnVsbC13aWR0aCAubWVudS1jb250ZW50e2JhY2tncm91bmQtY29sb3I6I2ZmZjttaW4td2lkdGg6MTAwJTttaW4taGVpZ2h0OjEwMCU7bWFyZ2luOjA7cGFkZGluZzowO2hlaWdodDoxcHg7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS5tZW51LWNvbnRlbnQucm91bmRlZC1jb250YWluZXJ7Ym9yZGVyLXJhZGl1czo4cHh9Lmljb24tYnV0dG9uLnNtYWxse3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MDt3aWR0aDoxNnB4fXl0bS1tZW51LWl0ZW17ZGlzcGxheTpibG9jaztwYWRkaW5nOjNweCAwfXl0bS1tZW51LWl0ZW0gLm1lbnUtaXRlbS1idXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7bWluLWhlaWdodDo0OHB4O3BhZGRpbmc6OHB4IDE2cHg7bWFyZ2luLWxlZnQ6MDt3aWR0aDoxMDAlO2N1cnNvcjpwb2ludGVyO3RleHQtYWxpZ246aW5pdGlhbDt0ZXh0LXRyYW5zZm9ybTp1bnNldDstbW96LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjQwMH15dG0tbWVudS1pdGVtIC5tZW51LWl0ZW0tYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KX15dG0tbWVudS1pdGVtIGMzLWljb257bWFyZ2luLXJpZ2h0OjI0cHh9Lm1lbnUtYm90dG9tIC5tZW51LWl0ZW0tYnV0dG9ue2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Zm9udC1zaXplOjEuNnJlbTtwYWRkaW5nOjExcHggMTZweH0ueXR3UGxheWVyQm90dG9tQ29udHJvbHNIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0d1BsYXllckJvdHRvbUNvbnRyb2xzRnVsbHNjcmVlbkJ1dHRvbldyYXBwZXJ7LW1vei1tYXJnaW4tc3RhcnQ6YXV0bzttYXJnaW4taW5saW5lLXN0YXJ0OmF1dG99Lnl0QmFkZ2VTaGFwZUhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItcmFkaXVzOjJweDtwYWRkaW5nOjAgNHB4fS55dEJhZGdlU2hhcGVUeXBvZ3JhcGh5e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NTAwfS55dEJhZGdlU2hhcGVJY29ue2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXJpZ2h0OjJweDtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dEJhZGdlU2hhcGVNb2Rlcm4gLnl0QmFkZ2VTaGFwZUljb257bWFyZ2luLXJpZ2h0OjJweDtoZWlnaHQ6MTJweDt3aWR0aDoxMnB4fS55dEJhZGdlU2hhcGVOb1RleHR7cGFkZGluZzowIDFweDttaW4taGVpZ2h0OjE4cHh9Lnl0QmFkZ2VTaGFwZU5vVGV4dCAueXRCYWRnZVNoYXBlSWNvbnttYXJnaW4tcmlnaHQ6MH0ueXRCYWRnZVNoYXBlVGh1bWJuYWlsQmFkZ2V7Ym9yZGVyLXJhZGl1czo0cHg7cGFkZGluZzoxcHggNHB4fS55dEJhZGdlU2hhcGVUaHVtYm5haWxCYWRnZSAueXRCYWRnZVNoYXBlSWNvbnttYXJnaW4tcmlnaHQ6NHB4O2hlaWdodDoxMnB4O3dpZHRoOjEycHh9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbEJhZGdlLnl0QmFkZ2VTaGFwZU5vVGV4dCAueXRCYWRnZVNoYXBlSWNvbnttYXJnaW4tcmlnaHQ6MH0ueXRCYWRnZVNoYXBlVGh1bWJuYWlsQmFkZ2VSZWRlc2lnbntiYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpO2JvcmRlci1yYWRpdXM6MTBweDtwYWRkaW5nOjAgNnB4fS55dEJhZGdlU2hhcGVTdGF0dXNCYWRnZXtib3JkZXItcmFkaXVzOjRweDtwYWRkaW5nOjFweCA0cHh9Lnl0QmFkZ2VTaGFwZVN0YXR1c0JhZGdlIC55dEJhZGdlU2hhcGVJY29ue21hcmdpbi1yaWdodDo0cHg7aGVpZ2h0OjEycHg7d2lkdGg6MTJweH0ueXRCYWRnZVNoYXBlU3RhdHVzQmFkZ2UueXRCYWRnZVNoYXBlTm9UZXh0IC55dEJhZGdlU2hhcGVJY29ue21hcmdpbi1yaWdodDowfS55dEJhZGdlU2hhcGVUZXh0e2Rpc3BsYXk6YmxvY2s7d2hpdGUtc3BhY2U6bm93cmFwfS55dEJhZGdlU2hhcGVUZXh0Q2xpcFRleHRPdmVyZmxvd3tvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRCYWRnZVNoYXBlVGV4dEhhc011bHRpcGxlQmFkZ2VzSW5Sb3d7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bWF4LXdpZHRoOjIwY2h9Lnl0QmFkZ2VTaGFwZURlZmF1bHR7CiAgLyogIWtlZXAgKi9jb2xvcjojNjA2MDYwO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjA1KX0ueXRCYWRnZVNoYXBlRGVmYXVsdC55dEJhZGdlU2hhcGVPdmVybGF5e2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNil9Lnl0QmFkZ2VTaGFwZURlZmF1bHQueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiM2MDYwNjA7YmFja2dyb3VuZDpub25lO3BhZGRpbmctbGVmdDowfS55dEJhZGdlU2hhcGVNZWRpYXsKICAvKiAha2VlcCAqL2NvbG9yOiM2MDYwNjA7b3V0bGluZToxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO291dGxpbmUtb2Zmc2V0Oi0xcHh9Lnl0QmFkZ2VTaGFwZU1lZGlhLnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojNjA2MDYwO291dGxpbmU6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtvdXRsaW5lLW9mZnNldDotMXB4fS55dEJhZGdlU2hhcGVNZWRpYU92ZXJsYXl7CiAgLyogIWtlZXAgKi9jb2xvcjojZmZmO291dGxpbmU6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4zKTtvdXRsaW5lLW9mZnNldDotMXB4fS55dEJhZGdlU2hhcGVNZWRpYU92ZXJsYXkueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiNmZmY7b3V0bGluZToxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjMpO291dGxpbmUtb2Zmc2V0Oi0xcHh9Lnl0QmFkZ2VTaGFwZVByb21vdGVkewogIC8qICFrZWVwICovY29sb3I6IzAzMDMwMztwYWRkaW5nLWxlZnQ6MH0ueXRCYWRnZVNoYXBlUHJvbW90ZWQueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiMwMzAzMDM7YmFja2dyb3VuZDpub25lO3BhZGRpbmctbGVmdDowfS55dEJhZGdlU2hhcGVQcm9tb3RlZEludmVydGVkLnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojZmZmO2JhY2tncm91bmQ6bm9uZTtwYWRkaW5nLWxlZnQ6MH0ueXRCYWRnZVNoYXBlVGltZWx5ewogIC8qICFrZWVwICovY29sb3I6IzYwNjA2MH0ueXRCYWRnZVNoYXBlVGltZWx5IC55dEJhZGdlU2hhcGVJY29ue2NvbG9yOiNlMTAwMmR9Lnl0QmFkZ2VTaGFwZVRpbWVseXtwYWRkaW5nLWxlZnQ6MH0ueXRCYWRnZVNoYXBlVGltZWx5Lnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojNjA2MDYwfS55dEJhZGdlU2hhcGVUaW1lbHkueXRCYWRnZVNoYXBlTW9kZXJuIC55dEJhZGdlU2hhcGVJY29ue2NvbG9yOiNlMTAwMmR9Lnl0QmFkZ2VTaGFwZVRpbWVseS55dEJhZGdlU2hhcGVNb2Rlcm57cGFkZGluZy1sZWZ0OjB9Lnl0QmFkZ2VTaGFwZVByZW1pdW17CiAgLyogIWtlZXAgKi9jb2xvcjojZmZmO2JhY2tncm91bmQ6I2UxMDAyZH0ueXRCYWRnZVNoYXBlUHJlbWl1bS55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOiNlMTAwMmR9Lnl0QmFkZ2VTaGFwZVNhbGV7CiAgLyogIWtlZXAgKi9jb2xvcjojYzMwMDI3fS55dEJhZGdlU2hhcGVTYWxlIC55dEJhZGdlU2hhcGVJY29ue2NvbG9yOiNjMzAwMjd9Lnl0QmFkZ2VTaGFwZVNhbGV7cGFkZGluZy1sZWZ0OjB9Lnl0QmFkZ2VTaGFwZVNhbGUueXRCYWRnZVNoYXBlTW9kZXJuLC55dEJhZGdlU2hhcGVTYWxlLnl0QmFkZ2VTaGFwZU1vZGVybiAueXRCYWRnZVNoYXBlSWNvbntjb2xvcjojYzMwMDI3fS55dEJhZGdlU2hhcGVTYWxlLnl0QmFkZ2VTaGFwZU1vZGVybntwYWRkaW5nLWxlZnQ6MH0ueXRCYWRnZVNoYXBlTWVtYmVyc2hpcHsKICAvKiAha2VlcCAqL2NvbG9yOiMxMDc1MTY7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMDUpfS55dEJhZGdlU2hhcGVNZW1iZXJzaGlwLnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojMTA3NTE2O2JhY2tncm91bmQ6bm9uZTtwYWRkaW5nLWxlZnQ6MH0ueXRCYWRnZVNoYXBlQ29tbWVyY2V7CiAgLyogIWtlZXAgKi9jb2xvcjojMTA3NTE2O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjA1KX0ueXRCYWRnZVNoYXBlQ29tbWVyY2UueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiMxMDc1MTY7YmFja2dyb3VuZDpub25lO3BhZGRpbmctbGVmdDowfS55dEJhZGdlU2hhcGVMaXZlewogIC8qICFrZWVwICovY29sb3I6I2ZmZjtiYWNrZ3JvdW5kOnJnYmEoMjI1LDAsNDUsMC45KX0ueXRCYWRnZVNoYXBlTGl2ZS55dEJhZGdlU2hhcGVPdmVybGF5e2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDIyNSwwLDQ1LDAuOSl9Lnl0QmFkZ2VTaGFwZUxpdmUueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDIyNSwwLDQ1LDAuOSl9Lnl0QmFkZ2VTaGFwZVN0YXR1c05ld3sKICAvKiAha2VlcCAqL2NvbG9yOiMwNjVmZDQ7b3V0bGluZToxcHggc29saWQgIzA2NWZkNDtvdXRsaW5lLW9mZnNldDotMXB4fS55dEJhZGdlU2hhcGVTdGF0dXNOZXcueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiMwNjVmZDQ7b3V0bGluZToxcHggc29saWQgIzA2NWZkNDtvdXRsaW5lLW9mZnNldDotMXB4fS55dEJhZGdlU2hhcGVTdGF0dXNDb21wbGV0ZXsKICAvKiAha2VlcCAqL2NvbG9yOiMwMDU5MTc7YmFja2dyb3VuZDojZGVmZmRlfS55dEJhZGdlU2hhcGVTdGF0dXNDb21wbGV0ZS55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6IzAwNTkxNztiYWNrZ3JvdW5kOiNkZWZmZGV9Lnl0QmFkZ2VTaGFwZVN0YXR1c1dhcm5pbmd7CiAgLyogIWtlZXAgKi9jb2xvcjojN2MyOTAwO2JhY2tncm91bmQ6I2ZmZWFjZn0ueXRCYWRnZVNoYXBlU3RhdHVzV2FybmluZy55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6IzdjMjkwMDtiYWNrZ3JvdW5kOiNmZmVhY2Z9Lnl0QmFkZ2VTaGFwZVN0YXR1c0Vycm9yewogIC8qICFrZWVwICovY29sb3I6Izk5MDQxMjtiYWNrZ3JvdW5kOnJnYmEoMjU1LDg1LDExOSwwLjIpfS55dEJhZGdlU2hhcGVTdGF0dXNFcnJvci55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6Izk5MDQxMjtiYWNrZ3JvdW5kOnJnYmEoMjU1LDg1LDExOSwwLjIpfS55dEJhZGdlU2hhcGVTdGF0dXNEZWZhdWx0ewogIC8qICFrZWVwICovY29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKX0ueXRCYWRnZVNoYXBlU3RhdHVzRGVmYXVsdC55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKX0ueXRCYWRnZVNoYXBlVGh1bWJuYWlsRGVmYXVsdHsKICAvKiAha2VlcCAqL2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNil9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbERlZmF1bHQueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNil9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbExpdmV7CiAgLyogIWtlZXAgKi9jb2xvcjojZmZmO2JhY2tncm91bmQ6cmdiYSgyMjUsMCw0NSwwLjkpfS55dEJhZGdlU2hhcGVUaHVtYm5haWxMaXZlLnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojZmZmO2JhY2tncm91bmQ6cmdiYSgyMjUsMCw0NSwwLjkpfS55dEJhZGdlU2hhcGVUaHVtYm5haWxTcGVjaWFsewogIC8qICFrZWVwICovY29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kOiNmZmZ9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbFNwZWNpYWwgLnl0QmFkZ2VTaGFwZUljb257Y29sb3I6I2UxMDAyZH0ueXRCYWRnZVNoYXBlVGh1bWJuYWlsU3BlY2lhbC55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kOiNmZmZ9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbFNwZWNpYWwueXRCYWRnZVNoYXBlTW9kZXJuIC55dEJhZGdlU2hhcGVJY29ue2NvbG9yOiNlMTAwMmR9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbERlZmF1bHRSZWRlc2lnbnsKICAvKiAha2VlcCAqL2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMyl9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbERlZmF1bHRSZWRlc2lnbi55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4zKX0ueXRCYWRnZVNoYXBlQWR7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOiMwMzAzMDM7d2hpdGUtc3BhY2U6bm93cmFwO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWxlZnQ6MDtmb250LXNpemU6dW5zZXQ7bGluZS1oZWlnaHQ6dW5zZXR9Lnl0QmFkZ2VTaGFwZUFkLnl0QmFkZ2VTaGFwZUFkc0luY2x1ZGVEb3Q6YWZ0ZXJ7Y29udGVudDoiwrciOy1tb3otcGFkZGluZy1lbmQ6NHB4O3BhZGRpbmctaW5saW5lLWVuZDo0cHg7LW1vei1wYWRkaW5nLXN0YXJ0OjRweDtwYWRkaW5nLWlubGluZS1zdGFydDo0cHh9Lnl0QmFkZ2VTaGFwZUFkLnl0QmFkZ2VTaGFwZU92ZXJsYXl7Y29sb3I6I2ZmZn0ueXRCYWRnZVNoYXBlTWVkaXVtRm9udEFkQmFkZ2V7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dEJhZGdlU2hhcGVMYXJnZUZvbnRBZEJhZGdle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dEJhZGdlU2hhcGVJc0VtcHR5e2Rpc3BsYXk6bm9uZX0uYWNjb3VudEluZm9Ib3N0e2Rpc3BsYXk6YmxvY2t9Lmxpa2UtYnV0dG9uLXJlbmRlcmVyIFthcmlhLXByZXNzZWQ9dHJ1ZV0gYzMtaWNvbntjb2xvcjojMDY1ZmQ0fS5saWtlLWJ1dHRvbi1yZW5kZXJlciBbYXJpYS1wcmVzc2VkPXRydWVdIGMzLWljb24gcGF0aHtmaWxsOiMzZWE2ZmY7c3Ryb2tlOiNmZmY7c3Ryb2tlLXdpZHRoOjFweH15dG0tbWVudS1yZW5kZXJlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0uYm90dG9tLXNoZWV0LW1lZGlhLW1lbnUtaXRlbSB5dG0tbWVudS1pdGVte3BhZGRpbmc6MDtoZWlnaHQ6NDhweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5ib3R0b20tc2hlZXQtbWVkaWEtbWVudS1pdGVtIC5tZW51LWl0ZW0tYnV0dG9ue2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MDttYXJnaW4tbGVmdDoxMnB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwfS5ib3R0b20tc2hlZXQtbWVkaWEtbWVudS1pdGVtIGMzLWljb257bWFyZ2luLXJpZ2h0OjEycHh9eXRtLXRodW1ibmFpbC1vdmVybGF5LXRpbWUtc3RhdHVzLXJlbmRlcmVye21hcmdpbjo1cHh9eXRtLXRodW1ibmFpbC1vdmVybGF5LXRpbWUtc3RhdHVzLXJlbmRlcmVyW3RodW1ibmFpbC1zaXplPXNtYWxsXXttYXJnaW46MnB4fXl0bS10aHVtYm5haWwtb3ZlcmxheS10aW1lLXN0YXR1cy1yZW5kZXJlclt0aHVtYm5haWwtc2l6ZT1tZWRpdW1de21hcmdpbjo0cHh9eXRtLXRodW1ibmFpbC1vdmVybGF5LXRpbWUtc3RhdHVzLXJlbmRlcmVyW3RodW1ibmFpbC1zaXplPWxhcmdlXXttYXJnaW46OHB4fXl0bS10aHVtYm5haWwtb3ZlcmxheS10aW1lLXN0YXR1cy1yZW5kZXJlcltkYXRhLXN0eWxlPUxJVkVdLHl0bS10aHVtYm5haWwtb3ZlcmxheS10aW1lLXN0YXR1cy1yZW5kZXJlcltkYXRhLXN0eWxlPVNIT1JUU117dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfWltZy5jdXN0b20tdGh1bWJuYWlsLnZpZGVvLXRodW1ibmFpbC1pbWd7b2JqZWN0LWZpdDpzY2FsZS1kb3duO21heC1oZWlnaHQ6MTAwJTttYXgtd2lkdGg6MTAwJX0udmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1jb21wYWN0LC52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWxhcmdle3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXgtc2hyaW5rOjA7b3ZlcmZsb3c6aGlkZGVufS52aWRlby10aHVtYm5haWwtaW1ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3dpZHRoOjEwMCU7bWluLWhlaWdodDoxMDAlO21hcmdpbjphdXRvfS52aWRlby10aHVtYm5haWwtYmd7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmctYm90dG9tOjU2LjI1JX0udmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZS5zdGFja2Vke2JvcmRlci1yYWRpdXM6MTJweDtib3JkZXItdG9wOjFweCBzb2xpZCAjZmZmfS52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWNvbXBhY3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjE2MHB4O2hlaWdodDo5MHB4fS5jdXN0b20tdGh1bWJuYWlsLWJhY2tncm91bmQtY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjE4MHB4O2hlaWdodDoxODBweH0uY3VzdG9tLXRodW1ibmFpbC1iYWNrZ3JvdW5kLWNvbnRhaW5lciAuY3VzdG9tLXRodW1ibmFpbHtvcGFjaXR5Oi43O2ZpbHRlcjpibHVyKDMwcHgpfS52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWNvbXBhY3Qtcm91bmRlZHtib3JkZXItcmFkaXVzOjhweH0ub3JpZ2luYWwtYXNwZWN0LXJhdGlvIGltZ3toZWlnaHQ6MTAwJTt3aWR0aDphdXRvfS5zdGFja2Vke2JvcmRlci1yYWRpdXM6MTJweDtib3JkZXItdG9wOjFweCBzb2xpZCAjZmZmfUBtZWRpYSAobWF4LXdpZHRoOjU0OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXsuYmlnLXNob3J0cy1zaW5nbGV0b24gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7cGFkZGluZy1ib3R0b206MTI1JX0uYmlnLXNob3J0cy1zaW5nbGV0b24gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2UgaW1ne29iamVjdC1maXQ6Y292ZXI7d2lkdGg6MTAwJX19QG1lZGlhIChtYXgtd2lkdGg6NTQ5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpe3l0bS1pdGVtLXNlY3Rpb24tcmVuZGVyZXI6Zmlyc3Qtb2YtdHlwZSAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZXttYXJnaW4tdG9wOjB9LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2U6d2hlcmUoLm5vdC1yZW5kZXJlZC1mcm9tLXJpY2gtaXRlbSl7bWFyZ2luOi0xM3B4IC0xMnB4IDA7cGFkZGluZy10b3A6MTNweH0uc3R5bGUtcmVjb21tZW5kYXRpb25zLWluLXBvcnRyYWl0IC52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWxhcmdlLnJvdW5kZWQtdGh1bWJuYWlse2JvcmRlci1yYWRpdXM6MTJweDttYXJnaW46MDtwYWRkaW5nLXRvcDowfX1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7bWFyZ2luOjA7cGFkZGluZy10b3A6MH19LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2UudGh1bWJuYWlsLWNvdmVyLXJvdW5kZWR7Ym9yZGVyLXJhZGl1czoxMnB4fUBtZWRpYSAobWluLXdpZHRoOjU1MHB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KSwobWluLXdpZHRoOjkzMXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2Uucm91bmRlZC10aHVtYm5haWx7Ym9yZGVyLXJhZGl1czoxMnB4fX1AbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86MTMvOSkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtaW4td2lkdGg6OTMxcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZS5yb3VuZGVkLXRodW1ibmFpbHtib3JkZXItcmFkaXVzOjEycHh9fUBtZWRpYSAobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7LnN0eWxlLXJlY29tbWVuZGF0aW9ucy1pbi1wb3J0cmFpdCAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZS5yb3VuZGVkLXRodW1ibmFpbCxwbGF5ZXItZnVsbHNjcmVlbi1jb250cm9scyAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZS5yb3VuZGVkLXRodW1ibmFpbHtib3JkZXItcmFkaXVzOjEycHh9fS52aWRlby10aHVtYm5haWwtZmlsbC1wYXJlbnR7bWFyZ2luOjA7cGFkZGluZy10b3A6MDtib3JkZXItcmFkaXVzOjEycHh9Lnl0U3BlY0RpYWxvZ0xheW91dEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2JhY2tncm91bmQtY29sb3I6I2ZmZn0ueXRTcGVjRGlhbG9nTGF5b3V0Q29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtvdmVyZmxvdzpoaWRkZW47cGFkZGluZy1ib3R0b206MjRweH0ueXRTcGVjRGlhbG9nTGF5b3V0VG9wUGFkZGluZ3twYWRkaW5nLXRvcDoyNHB4fS55dFNwZWNEaWFsb2dMYXlvdXRJY29ue21hcmdpbjoyNHB4IDI0cHggMH0ueXRTcGVjRGlhbG9nTGF5b3V0SWNvbkFib3ZlTWVkaWF7bWFyZ2luLWJvdHRvbToyNHB4fS55dFNwZWNEaWFsb2dMYXlvdXRJY29uQ2VudGVyQWxpZ257YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0U3BlY0RpYWxvZ0xheW91dEFzc2V0e3dpZHRoOjEwMCU7bWluLWhlaWdodDowO2ZsZXgtc2hyaW5rOjQ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7b3ZlcmZsb3c6aGlkZGVufS55dFNwZWNEaWFsb2dMYXlvdXRBc3NldEl0ZW17d2lkdGg6MTAwJTtmbGV4LXNocmluazowO29iamVjdC1maXQ6Y292ZXJ9Lnl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0hlYWRlckNvbnRhaW5lcntwYWRkaW5nOjI0cHggMjRweCA4cHh9Lnl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0hlYWRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2ZsZXgtc2hyaW5rOjB9Lnl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0hlYWRlckFib3ZlQXNzZXR7cGFkZGluZy1ib3R0b206MjRweH0ueXRTcGVjRGlhbG9nTGF5b3V0VGl0bGV7Y29sb3I6IzAzMDMwMzstbW96LWJveC1mbGV4OjE7ZmxleDoxO21hcmdpbi1ib3R0b206MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjZyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U3BlY0RpYWxvZ0xheW91dFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0U3BlY0RpYWxvZ0xheW91dFRpdGxle21heC1oZWlnaHQ6NS42cmVtfS55dFNwZWNEaWFsb2dMYXlvdXRMZWFkaW5nQWN0aW9uSGVhZGVye2NvbG9yOiMwMzAzMDM7bWFyZ2luLXJpZ2h0OjEycHh9Lnl0U3BlY0RpYWxvZ0xheW91dFRyYWlsaW5nQWN0aW9uSGVhZGVye2NvbG9yOiMwMzAzMDM7bWFyZ2luLWxlZnQ6YXV0b30ueXRTcGVjRGlhbG9nTGF5b3V0Q29udGVudHtjb2xvcjojMDMwMzAzO292ZXJmbG93LXk6YXV0b30ueXRTcGVjRGlhbG9nTGF5b3V0Q29udGVudElubmVye292ZXJmbG93OnZpc2libGU7cGFkZGluZzowIDI0cHh9Lnl0U3BlY0RpYWxvZ0xheW91dEZvb3RlckNvbnRhaW5lcntwYWRkaW5nLXRvcDoxNnB4O3BhZGRpbmctbGVmdDoyNHB4O3BhZGRpbmctcmlnaHQ6MjRweH0ueXRTcGVjRGlhbG9nTGF5b3V0Rm9vdGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1mbG93OnJvdyB3cmFwLXJldmVyc2U7ZmxleC1zaHJpbms6MDttYXJnaW46LThweCAwIDAgLThweH0ueXRTcGVjRGlhbG9nTGF5b3V0RGlhbG9nQnV0dG9uc0lubGluZUVuZHstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZW5kfS55dFNwZWNEaWFsb2dMYXlvdXRCdXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cGFkZGluZzo4cHggMCAwIDhweH0ueXRTcGVjRGlhbG9nTGF5b3V0RGlhbG9nQnV0dG9uc0lubGluZVN0cmV0Y2hlZHstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dFNwZWNEaWFsb2dMYXlvdXRDZW50ZXJBbGlnbiAueXRTcGVjRGlhbG9nTGF5b3V0Q29udGVudCwueXRTcGVjRGlhbG9nTGF5b3V0Q2VudGVyQWxpZ24gLnl0U3BlY0RpYWxvZ0xheW91dFRpdGxle3RleHQtYWxpZ246Y2VudGVyfS55dFNwZWNEaWFsb2dMYXlvdXREaWFsb2dCdXR0b25zU3RhY2tlZHstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59QG1lZGlhIChtYXgtd2lkdGg6MzMwcHgpey55dFNwZWNEaWFsb2dMYXlvdXRSZXNwb25zaXZle21pbi13aWR0aDpjYWxjKDEwMHZ3IC0gOTZweCk7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDB2aH19QG1lZGlhIChtaW4td2lkdGg6MzMxcHgpIGFuZCAobWF4LXdpZHRoOjUyN3B4KXsueXRTcGVjRGlhbG9nTGF5b3V0UmVzcG9uc2l2ZXttaW4td2lkdGg6Y2FsYygxMDB2dyAtIDk2cHgpO21pbi13aWR0aDptaW4oMzIwcHgsMTAwdncgLSA5NnB4KTttYXgtd2lkdGg6Y2FsYygxMDB2dyAtIDk2cHgpO21heC13aWR0aDptaW4oNDAwcHgsMTAwdncgLSA5NnB4KTttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA5NnB4KX19QG1lZGlhIChtaW4td2lkdGg6NTI4cHgpey55dFNwZWNEaWFsb2dMYXlvdXRSZXNwb25zaXZle21pbi13aWR0aDozMjBweDttYXgtd2lkdGg6Y2FsYygxMDB2dyAtIDk2cHgpO21heC13aWR0aDptaW4oNTYwcHgsMTAwdncgLSA5NnB4KTttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA5NnB4KTttYXgtaGVpZ2h0Om1pbig1NjBweCwxMDB2aCAtIDk2cHgpfX0ueXRTcGVjRGlhbG9nTGF5b3V0RnVsbHNjcmVlbntoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfS55dFNwZWNEaWFsb2dMYXlvdXRGdWxsc2NyZWVuIC55dFNwZWNEaWFsb2dMYXlvdXRDb250YWluZXIsLnl0U3BlY0RpYWxvZ0xheW91dEZ1bGxzY3JlZW4gLnl0U3BlY0RpYWxvZ0xheW91dENvbnRlbnR7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfS55dFNwZWNEaWFsb2dMYXlvdXRGdWxsc2NyZWVuIC55dFNwZWNEaWFsb2dMYXlvdXRDb250ZW50SW5uZXJ7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO3BhZGRpbmc6MH1AbWVkaWEgKG1pbi13aWR0aDo1MjhweCl7Lnl0U3BlY0RpYWxvZ0xheW91dEV4dGVuZGVkTWF4SGVpZ2h0e21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDk2cHgpfX0ueXRTcGVjRGlhbG9nTGF5b3V0QXNzZXRJbnNldCAueXRTcGVjRGlhbG9nTGF5b3V0QXNzZXR7d2lkdGg6YXV0bztwYWRkaW5nOjAgMjRweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0U3BlY0RpYWxvZ0xheW91dEFzc2V0SW5zZXQgLnl0U3BlY0RpYWxvZ0xheW91dEFzc2V0SXRlbXtib3JkZXItcmFkaXVzOjEycHh9Lnl0d1Bpdm90QnV0dG9uVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2N1cnNvcjpwb2ludGVyfS55dHdQaXZvdEJ1dHRvblZpZXdNb2RlbEhvc3RJbWFnZXtib3JkZXItcmFkaXVzOjZweDt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O2Rpc3BsYXk6YmxvY2t9Lnl0d1Bpdm90QnV0dG9uVmlld01vZGVsSG9zdEljb257Ym9yZGVyOjFweCBzb2xpZCAjZmZmO2JvcmRlci1yYWRpdXM6NnB4O3BhZGRpbmc6NnB4fS55dHdQaXZvdEJ1dHRvblZpZXdNb2RlbEhvc3RbZGF0YS1iYWNrZ3JvdW5kLWNvbG9yPVRIRU1FX0FUVFJJQlVURV9PVkVSTEFZX0JBQ0tHUk9VTkRfTUVESVVNXSAueXR3UGl2b3RCdXR0b25WaWV3TW9kZWxIb3N0SWNvbntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KX0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdD4qe21hcmdpbi10b3A6MTZweH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3Q+dG9nZ2xlLWJ1dHRvbi12aWV3LW1vZGVse21hcmdpbi10b3A6MH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3RNb2JpbGV7d2lkdGg6NTZweDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdE1vYmlsZSAueXRTcGVjQnV0dG9uU2hhcGVXaXRoTGFiZWxMYWJlbHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxNnB4O21hcmdpbjowfS55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdE1vYmlsZSAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SG9zdDpmb2N1c3tiYWNrZ3JvdW5kOnVuc2V0fS55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdE1vYmlsZSBidXR0b246bm90KFthcmlhLXByZXNzZWQ9dHJ1ZV0pIGMzLWljb257ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAycHggcmdiYSgwLDAsMCwwLjMpKX0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3RNb2JpbGVBY3Rpb25CdXR0b257cGFkZGluZy10b3A6NHB4O3BhZGRpbmctYm90dG9tOjhweDttYXJnaW46MH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3REZXNrdG9wey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0d1JlZWxBY3Rpb25CYXJWaWV3TW9kZWxIb3N0RGVza3RvcCAueXRTcGVjQnV0dG9uU2hhcGVXaXRoTGFiZWxMYWJlbHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3REZXNrdG9wQWN0aW9uQnV0dG9ue3BhZGRpbmctdG9wOjA7cGFkZGluZy1ib3R0b206OHB4O21hcmdpbjowfUBtZWRpYSAobWF4LWhlaWdodDo0MTFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdD4qe21hcmdpbi10b3A6MH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3QgLnl0U3BlY0J1dHRvblNoYXBlV2l0aExhYmVsTGFiZWx7ZGlzcGxheTpub25lfX0ueXRSZWVsTWV0YXBhbmVsVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDttYXgtd2lkdGg6NDgwcHh9Lnl0UmVlbE1ldGFwYW5lbFZpZXdNb2RlbE1ldGFwYW5lbEl0ZW06bm90KDpmaXJzdC1jaGlsZCl7cGFkZGluZy10b3A6NHB4O21heC13aWR0aDoxMDAlfS55dFJlZWxNZXRhcGFuZWxWaWV3TW9kZWxNZXRhcGFuZWxJdGVtOm5vdCg6bGFzdC1jaGlsZCl7cGFkZGluZy1ib3R0b206NHB4O21heC13aWR0aDoxMDAlfS55dEFuaW1hdGVkQWN0aW9uSG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlfS55dEFuaW1hdGVkQWN0aW9uTG90dGlle3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwb2ludGVyLWV2ZW50czpub25lfS55dEFuaW1hdGVkQWN0aW9uQmFja2dyb3VuZHt3aWR0aDoxMDAlfS55dEFuaW1hdGVkQWN0aW9uQmFja2dyb3VuZENvbnRhaW5lcntvdmVyZmxvdzpoaWRkZW47Ym9yZGVyLXJhZGl1czoxOHB4fS55dEFuaW1hdGVkQWN0aW9uQ29udGVudFdpdGhCYWNrZ3JvdW5ke3Bvc2l0aW9uOnJlbGF0aXZlfS5wbGF5ZXItc2V0dGluZ3MtaGVhZGVye21hcmdpbi1ib3R0b206MjBweH0ucGxheWVyLWNhcHRpb24tc2V0dGluZ3MsLnBsYXllci1xdWFsaXR5LXNldHRpbmdzLC5wbGF5ZXItc3BlZWQtc2V0dGluZ3N7d2lkdGg6MTAwJTttYXJnaW46NHB4IDAgMTJweH0uY29weURlYnVnSW5mb1BsYXllckRlYnVnSW5mb3tiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmctYm90dG9tOjRweDtvdXRsaW5lOm5vbmU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MDttYXJnaW4tYm90dG9tOjFweDtmb250OmluaGVyaXQ7Y29sb3I6IzAzMDMwMzstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7bWluLWhlaWdodDo4LjRyZW07d2lkdGg6MTAwJTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtwYWRkaW5nOjhweH0uY29weURlYnVnSW5mb1BsYXllckRlYnVnSW5mbzo6LW1vei1wbGFjZWhvbGRlcntjb2xvcjojNjA2MDYwO29wYWNpdHk6MX0uY29weURlYnVnSW5mb1BsYXllckRlYnVnSW5mbzo6cGxhY2Vob2xkZXJ7Y29sb3I6IzYwNjA2MDtvcGFjaXR5OjF9LmNvcHlEZWJ1Z0luZm9QbGF5ZXJEZWJ1Z0luZm97aGVpZ2h0OjQwdmg7ZGlyZWN0aW9uOmx0cn0uc3RhYmxlVm9sdW1lVG9nZ2xlSG9zdHtkaXNwbGF5OmJsb2NrfS55dFBsYXllckNvbnRyb2xzQ29udGFpbmVySG9zdHstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgwLDAsMCwwKTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmV9Lnl0UGxheWVyQ29udHJvbHNDb250YWluZXJSZW5kZXJlZHtwb3NpdGlvbjpmaXhlZDtpbnNldDowO3BhZGRpbmctYm90dG9tOjB9Lnl0U2hvcnRzRW1iZWRzSG9zdHtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgwZGVnLHJnYmEoMCwwLDAsLjQpIDAscmdiYSgwLDAsMCwwKSAxNjBweCksbGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDAsMCwwLC40KSAwLHJnYmEoMCwwLDAsMCkgOTZweCl9Lnl0U2hvcnRzRW1iZWRzUmVlbFBsYXllck92ZXJsYXlSZW5kZXJlciAucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zLC55dFNob3J0c0VtYmVkc1JlZWxQbGF5ZXJPdmVybGF5UmVuZGVyZXIgLnJlZWwtcGxheWVyLW92ZXJsYXktbWV0YWRhdGEsLnl0U2hvcnRzRW1iZWRzUmVlbFBsYXllck92ZXJsYXlSZW5kZXJlciAucmVlbC1wbGF5ZXItb3ZlcmxheS10b3AtYmFye3otaW5kZXg6Mn0ueXRTaG9ydHNFbWJlZHNUb3BiYXJDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6Mjt3aWR0aDoxMDAlfS55dFNob3J0c0VtYmVkc1ZvbHVtZUNvbnRyb2xze3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjQ4cHh9Lnl0bUN1ZWRPdmVybGF5SG9zdHtkaXNwbGF5OmJsb2NrO2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6MTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuN3M7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5fS55dG1DdWVkT3ZlcmxheUhpZGRlbiwueXRtQ3VlZE92ZXJsYXlIb3N0LmhpZGRlbnt2aXNpYmlsaXR5OmhpZGRlbjtvcGFjaXR5OjB9Lnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi0zNnB4O21hcmdpbi10b3A6LTM2cHg7d2lkdGg6NzJweDtoZWlnaHQ6NzJweDtwYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcn0ueXRtQ3VlZE92ZXJsYXlQbGF5QnV0dG9uLnNob3J0cywueXRtQ3VlZE92ZXJsYXlTaG9ydHN7bWFyZ2luLWxlZnQ6LTUwcHg7bWFyZ2luLXRvcDotNTBweDt3aWR0aDoxMDBweDtoZWlnaHQ6MTAwcHh9Lnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbkljb257d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtjb2xvcjojZjAzfUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dG1DdWVkT3ZlcmxheVBsYXlCdXR0b25JY29ue2NvbG9yOkJ1dHRvblRleHR9Lnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbkljb24gcGF0aDpmaXJzdC1jaGlsZHtmaWxsOkJ1dHRvblRleHR9Lnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbkljb24gLmxvZ28tYXJyb3csLnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbkljb24gcGF0aDpudGgtY2hpbGQoMil7ZmlsbDpDYW52YXN9fS55dG1DdWVkT3ZlcmxheUdyYWRpZW50e3dpZHRoOjEwMCU7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQocmdiYSgwLDAsMCwuOCkscmdiYSgwLDAsMCwuNikscmdiYSgwLDAsMCwwKSk7aGVpZ2h0OjdyZW19Lnl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7aGVpZ2h0OjNweH0ueXRDaGFwdGVyZWRQcm9ncmVzc0JhckNoYXB0ZXJlZFBsYXllckJhckNoYXB0ZXJ7aGVpZ2h0OjNweDttYXJnaW46MCAxcHg7cG9zaXRpb246cmVsYXRpdmV9Lnl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJDaGFwdGVyZWRQbGF5ZXJCYXJDaGFwdGVyU2VlbntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZjAzIDgwJSwjZmYyNzkxKX0ueXRDaGFwdGVyZWRQcm9ncmVzc0JhckNoYXB0ZXJlZFBsYXllckJhckNoYXB0ZXJJc1NjcnViYmluZ3ttYXJnaW46MCAycHh9Lnl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJDaGFwdGVyZWRQbGF5ZXJCYXJDaGFwdGVyOmZpcnN0LW9mLXR5cGV7bWFyZ2luLWxlZnQ6MH0ueXRDaGFwdGVyZWRQcm9ncmVzc0JhckNoYXB0ZXJlZFBsYXllckJhckNoYXB0ZXI6bGFzdC1vZi10eXBle21hcmdpbi1yaWdodDowfS55dENoYXB0ZXJlZFByb2dyZXNzQmFyQ2hhcHRlcmVkUGxheWVyQmFyRmlsbHtoZWlnaHQ6M3B4O3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNmMDMgODAlLCNmZjI3OTEpfS55dENoYXB0ZXJlZFByb2dyZXNzQmFyQ2hhcHRlcmVkUGxheWVyQmFyTG9hZGVke2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMyk7aGVpZ2h0OjNweDtwb3NpdGlvbjphYnNvbHV0ZX0ueXRDaGFwdGVyZWRQcm9ncmVzc0JhckhvdmVyZWRNYWNyb01hcmtlcnt0cmFuc2Zvcm06c2NhbGVZKDIpO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyfS55dEZvY3VzZWRDaGFwdGVyUHJvZ3Jlc3NCYXJMaW5lSG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCV9Lnl0Rm9jdXNlZENoYXB0ZXJQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckxpbmV7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OjNweDt3aWR0aDoxMDAlfS55dEZvY3VzZWRDaGFwdGVyUHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJMaW5lUm91bmRlZHtib3JkZXItcmFkaXVzOjEuNXB4O292ZXJmbG93OmhpZGRlbn0ueXRGb2N1c2VkQ2hhcHRlclByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyTGluZUJvdHRvbUluc2V0e2hlaWdodDo1cHg7Ym9yZGVyLXJhZGl1czoyLjVweDtvdmVyZmxvdzpoaWRkZW59Lnl0Rm9jdXNlZENoYXB0ZXJQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckJhY2tncm91bmR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO29wYWNpdHk6LjY7d2lkdGg6MTAwJX0ueXRGb2N1c2VkQ2hhcHRlclByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyUGxheWVke3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDowO2JvdHRvbTowO2hlaWdodDoxMDAlO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNmMDMgODAlLCNmZjI3OTEpfS55dEhlYXRTZWVrZXJIb3N0e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2ZpbGw6cmdiYSgyNTUsMjU1LDI1NSwuNCl9Lnl0SGVhdFNlZWtlckhpZ2hDb250cmFzdHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudChyZ2JhKDAsMCwwLDApLDkwJSxyZ2JhKDAsMCwwLC42KSk7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LC41KX0ueXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3R7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtoZWlnaHQ6MTAwJTtkaXJlY3Rpb246bHRyfS55dFBsYXllclByb2dyZXNzQmFySG9zdFJlYWRPbmx5e3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0UGxheWVyUHJvZ3Jlc3NCYXJIb3N0SGlkZGVue29wYWNpdHk6MH0ueXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3RMb3dlclBsYXllcntib3R0b206MDtsZWZ0OjMwcHg7cmlnaHQ6MzBweDtoZWlnaHQ6NDRweH0ueXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3RCb3R0b21FZGdle2hlaWdodDoyOHB4O2xlZnQ6MDtyaWdodDowO2JvdHRvbTotN3B4fS55dFBsYXllclByb2dyZXNzQmFySG9zdEJvdHRvbUluc2V0e2hlaWdodDoyOHB4O2JvdHRvbTowO2xlZnQ6MDtyaWdodDowfS55dFBsYXllclByb2dyZXNzQmFySG9zdEN1c3RvbXtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRQbGF5ZXJQcm9ncmVzc0JhckJhY2tncm91bmR7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHJnYmEoMCwwLDAsMCkscmdiYSgwLDAsMCwuNSkpO29wYWNpdHk6MTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguMiwwLC42LDEpfS55dFBsYXllclByb2dyZXNzQmFyQmFja2dyb3VuZEhpZGV7b3BhY2l0eTowfS55dFBsYXllclByb2dyZXNzQmFyRHJhZ0NvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRQbGF5ZXJQcm9ncmVzc0JhckRyYWdDb250YWluZXJCb3R0b21FZGdle2hlaWdodDowO3BhZGRpbmc6MTkuNXB4IDAgOC41cHh9Lnl0UGxheWVyUHJvZ3Jlc3NCYXJIZWF0c2Vla2VyQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO2JvdHRvbToxLjVweH0ueXRQbGF5ZXJQcm9ncmVzc0JhckhlYXRzZWVrZXJDb250YWluZXJJbnNldHtib3R0b206MTQuNXB4fS55dFBsYXllclByb2dyZXNzQmFyUHJvZ3Jlc3NCYXJ7d2lkdGg6MTAwJTtvdmVyZmxvdzp2aXNpYmxlO3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0UGxheWVyUHJvZ3Jlc3NCYXJQcm9ncmVzc0Jhckluc2V0e3BhZGRpbmc6MTZweCAwIDEycHg7d2lkdGg6Y2FsYygxMDAlIC0gMjRweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7dHJhbnNpdGlvbjp3aWR0aCAuMXMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRQbGF5ZXJQcm9ncmVzc0JhclByb2dyZXNzQmFySW5zZXRNaW5pbWl6ZWR7cGFkZGluZy10b3A6MDtwYWRkaW5nLWJvdHRvbTowO3dpZHRoOjEwMCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTJweCl9Lnl0UHJvZ3Jlc3NCYXJMaW5lSG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCV9Lnl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJMaW5le3Bvc2l0aW9uOnJlbGF0aXZlO2hlaWdodDozcHg7d2lkdGg6MTAwJX0ueXRQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckxpbmVSb3VuZGVke2JvcmRlci1yYWRpdXM6MS41cHg7b3ZlcmZsb3c6aGlkZGVufS55dFByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyTGluZUJvdHRvbUluc2V0e2hlaWdodDo1cHg7Ym9yZGVyLXJhZGl1czoyLjVweDtvdmVyZmxvdzpoaWRkZW59Lnl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJCYWNrZ3JvdW5ke3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2JhY2tncm91bmQtY29sb3I6I2ZmZjtvcGFjaXR5Oi4zO3dpZHRoOjEwMCV9Lnl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJMb2FkZWR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO29wYWNpdHk6LjZ9Lnl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJIb3ZlcmVke3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2JhY2tncm91bmQtY29sb3I6I2ZmZjtvcGFjaXR5Oi43fS55dFByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyUGxheWVke3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2ZvcmNlZC1jb2xvci1hZGp1c3Q6bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZjAzIDgwJSwjZmYyNzkxKX0ueXRQcm9ncmVzc0JhclBsYXloZWFkSG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlfS55dFByb2dyZXNzQmFyUGxheWhlYWRQcm9ncmVzc0JhclBsYXloZWFkRG90e2hlaWdodDoxMnB4O3dpZHRoOjEycHg7Ym9yZGVyLXJhZGl1czo1MCU7Zm9yY2VkLWNvbG9yLWFkanVzdDpub25lO2JhY2tncm91bmQtY29sb3I6I2YwMzt0cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGVhc2V9Lnl0UHJvZ3Jlc3NCYXJQbGF5aGVhZFByb2dyZXNzQmFyUGxheWhlYWREb3RMYXJnZXtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dFByb2dyZXNzQmFyUGxheWhlYWRQcm9ncmVzc0JhclBsYXloZWFkRG90SGlkZXt0cmFuc2Zvcm06c2NhbGUoMCl9Lnl0UHJvZ3Jlc3NCYXJQbGF5aGVhZFByb2dyZXNzQmFyUGxheWhlYWRDdXN0b217aGVpZ2h0OjIwcHg7d2lkdGg6MjBweDtwb2ludGVyLWV2ZW50czpub25lfS55dFByb2dyZXNzQmFyUGxheWhlYWRQcm9ncmVzc0JhclBsYXloZWFkQ3VzdG9tTGFyZ2V7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRQcm9ncmVzc0JhclBsYXloZWFkUHJvZ3Jlc3NCYXJQbGF5aGVhZEN1c3RvbUhpZGV7dHJhbnNmb3JtOnNjYWxlKDApfS55dFBsYXllclN0b3J5Ym9hcmRIb3N0e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo4MHB4O3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0UGxheWVyU3Rvcnlib2FyZEhvc3RCaWdib2FyZHt3aWR0aDoxMDAlO2xlZnQ6NTAlfS55dFBsYXllclN0b3J5Ym9hcmRIb3N0TXdlYlNob3J0c3ttYXJnaW4tYm90dG9tOjQ4cHh9Lnl0UGxheWVyU3Rvcnlib2FyZEhvc3RJbmxpbmVQbGF5ZXJ7Ym90dG9tOmNhbGMoNTZweCp2YXIoLS1zdG9yeWJvYXJkLXNjYWxlLCAxKSl9Lnl0UGxheWVyU3Rvcnlib2FyZEhvc3REZXNrdG9wU2hvcnRze21hcmdpbi1ib3R0b206MTZweH0ueXRQbGF5ZXJTdG9yeWJvYXJkSG9zdElzRHJhZ2dpbmd7bWFyZ2luLWJvdHRvbTo4MHB4fS55dFBsYXllclN0b3J5Ym9hcmRIb3N0RmFkZUlue2FuaW1hdGlvbjpmYWRlLWluIC4xcyBjdWJpYy1iZXppZXIoLjIsMCwuNiwxKX0ueXRQbGF5ZXJTdG9yeWJvYXJkU3Rvcnlib2FyZEltYWdlV3JhcHBlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjJweCBzb2xpZCB3aGl0ZTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0UGxheWVyU3Rvcnlib2FyZEJpZ2JvYXJkV3JhcHBlcntwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2JhY2tncm91bmQ6IzAwMH0ueXRQbGF5ZXJTdG9yeWJvYXJkQmlnYm9hcmRJbWFnZVdyYXBwZXJ7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVufS55dFBsYXllclN0b3J5Ym9hcmRUaW1lc3RhbXB7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOiNmZmY7dGV4dC1zaGFkb3c6MCAwIDRweCByZ2JhKDAsMCwwLC43NSl9Lnl0UGxheWVyU3Rvcnlib2FyZFRpbWVzdGFtcFNob3J0c3tmb250LWZhbWlseTpZb3VUdWJlIFNhbnMsUm9ib3RvLHNhbnMtc2VyaWY7Zm9udC1zaXplOjIuOHJlbTtsaW5lLWhlaWdodDozLjhyZW07Zm9udC13ZWlnaHQ6NzAwfUBtZWRpYSAobWF4LXdpZHRoOjUyNy45cHgpey55dFBsYXllclN0b3J5Ym9hcmRUaW1lc3RhbXBTaG9ydHN7Zm9udC1mYW1pbHk6WW91VHViZSBTYW5zLFJvYm90byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH19Lnl0UGxheWVyU3Rvcnlib2FyZFRpbWVzdGFtcFNob3J0c3twYWRkaW5nLXRvcDo4cHh9Lnl0UGxheWVyU3Rvcnlib2FyZFRpbWVzdGFtcElzSG92ZXJpbmd7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo1MDA7Zm9udC1zaXplOmNhbGMoMS42cmVtKnZhcigtLXN0b3J5Ym9hcmQtc2NhbGUsIDEpKTtsaW5lLWhlaWdodDpjYWxjKDIuMnJlbSp2YXIoLS1zdG9yeWJvYXJkLXNjYWxlLCAxKSl9Lnl0UGxheWVyU3Rvcnlib2FyZE1ldGFkYXRhe3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTpjYWxjKC02cHgqdmFyKC0tc3Rvcnlib2FyZC1zY2FsZSwgMSkpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwxMDAlKTtsZWZ0OjUwJTtjb2xvcjojZmZmO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3dpZHRoOjEwMCU7Zm9udC1zaXplOmNhbGMoMTJweCp2YXIoLS1zdG9yeWJvYXJkLXNjYWxlLCAxKSl9Lnl0UGxheWVyU3Rvcnlib2FyZE1ldGFkYXRhQmlnYm9hcmR7d2lkdGg6YXV0bztjb2xvcjojZmZmO21heC13aWR0aDoxMDAlO2JvdHRvbTo2cHg7Ym9yZGVyLXJhZGl1czoxNnB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO3BhZGRpbmc6OHB4IDE2cHg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1jb2x1bW4tZ2FwOjFyZW07Y29sdW1uLWdhcDoxcmVtO21pbi13aWR0aDowfS55dFBsYXllclN0b3J5Ym9hcmRUaXRsZXttYXgtd2lkdGg6MTAwJTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7bWFyZ2luLWJvdHRvbTo0cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRQbGF5ZXJTdG9yeWJvYXJkVGl0bGVCaWdib2FyZHttYXJnaW4tYm90dG9tOjA7Zm9udC13ZWlnaHQ6NzAwfS55dFBsYXllclN0b3J5Ym9hcmRUaW1lZE1hcmtlckljb25XcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS55dFBsYXllclN0b3J5Ym9hcmRUaW1lZE1hcmtlckljb257aGVpZ2h0OjE0cHg7d2lkdGg6MTRweDttYXJnaW4tcmlnaHQ6NHB4fS55dFBsYXllclN0b3J5Ym9hcmRTdG9yeWJvYXJkSW1hZ2V7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZX1Aa2V5ZnJhbWVzIGZhZGUtaW57MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19Lnl0TXdlYlNob3J0c1BsYXllckNvbnRyb2xzSG9zdHtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW4tcmlnaHQ6MDttYXJnaW4tbGVmdDowO2JvdHRvbTowO2hlaWdodDozcHg7ZGlyZWN0aW9uOmx0cjt0cmFuc2l0aW9uLXByb3BlcnR5OmhlaWdodCxtYXJnaW4tbGVmdCxtYXJnaW4tcmlnaHQscGFkZGluZyx2aXNpYmlsaXR5O3RyYW5zaXRpb24tZHVyYXRpb246LjI1c30ueXRNd2ViU2hvcnRzUGxheWVyQ29udHJvbHNIb3N0SXNTY3J1YmJhYmxlTW9kZXttYXJnaW4tcmlnaHQ6MTZweDttYXJnaW4tbGVmdDoxNnB4O2hlaWdodDoxNnB4O3BhZGRpbmctYm90dG9tOjE2cHg7dHJhbnNpdGlvbi1kdXJhdGlvbjouNXN9Lnl0TXdlYlNob3J0c1BsYXllckNvbnRyb2xzSG9zdEhpZGVQcm9ncmVzc0Jhcnt2aXNpYmlsaXR5OmhpZGRlbjtoZWlnaHQ6MH0ueXRNd2ViU2hvcnRzUGxheWVyQ29udHJvbHNHZXN0dXJlT3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwdmg7d2lkdGg6MTAwdnc7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czphdXRvfS55dHdBdXRvbmF2VG9vbHRpcEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoyNSU7d2lkdGg6MTAwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtjb2xvcjojZmZmfS55dHdQbGF5ZXJVc2VyRWR1VG9vbHRpcEhvc3R7ZGlzcGxheTpibG9ja30ueXR3UGxheWVyVXNlckVkdVRvb2x0aXBUb29sdGlwQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzowIDhweDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0ueXR3UGxheWVyVXNlckVkdVRvb2x0aXBUb29sdGlwV3JhcHBlcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDotbW96LW1heC1jb250ZW50O3dpZHRoOm1heC1jb250ZW50O21hcmdpbi10b3A6MTZweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3otaW5kZXg6Njtib3JkZXItcmFkaXVzOjE2cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNik7cGFkZGluZzo3cHggMTZweDttYXgtd2lkdGg6MTAwJTstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0d1BsYXllclVzZXJFZHVUb29sdGlwVG9vbHRpcFdyYXBwZXI6ZW1wdHl7ZGlzcGxheTpub25lfS55dHdTcGVlZG1hc3RlclRvb2x0aXBIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS55dHdTcGVlZG1hc3RlclRvb2x0aXBIb3N0Om5vdCgueXR3U3BlZWRtYXN0ZXJUb29sdGlwS2lsbHN3aXRjaCl7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2NvbG9yOiNmZmY7cG9zaXRpb246cmVsYXRpdmU7bGVmdDowO3JpZ2h0OjB9Lnl0d1NwZWVkbWFzdGVyVG9vbHRpcExhYmVse3RleHQtYWxpZ246anVzdGlmeTtmb250LXdlaWdodDo1MDA7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MThweH1bZGlyPXJ0bF0gLnl0d1NwZWVkbWFzdGVyVG9vbHRpcExhYmVse2RpcmVjdGlvbjpydGx9Lnl0d1NwZWVkbWFzdGVyVG9vbHRpcEljb257bWFyZ2luLWxlZnQ6NHB4fS55dG1TaG9ydHNHZXN0dXJlT3ZlcmxheUNvbnRyb2xzR2VzdHVyZU92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTtsZWZ0OjA7dG9wOjA7Ym90dG9tOjA7cmlnaHQ6MDtwb2ludGVyLWV2ZW50czphdXRvfS55dG1TaG9ydHNHZXN0dXJlT3ZlcmxheUNvbnRyb2xzR2VzdHVyZUNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2xlZnQ6MDt0b3A6MDtib3R0b206MDtyaWdodDowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93fS55dG1TaG9ydHNHZXN0dXJlT3ZlcmxheUNvbnRyb2xzU3BlZWRtYXN0ZXJHZXN0dXJlQXJlYXtoZWlnaHQ6MTAwJTt3aWR0aDoyNSV9Lnl0bVNob3J0c0dlc3R1cmVPdmVybGF5Q29udHJvbHNNZW51R2VzdHVyZUFyZWF7aGVpZ2h0OjEwMCU7d2lkdGg6NTAlfS55dG1WaWRlb0NvdmVySG9zdHtkaXNwbGF5OmJsb2NrO2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6MTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuN3M7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5fS55dG1WaWRlb0NvdmVySG9zdC5lbmRlZHt6LWluZGV4OjB9Lnl0bVZpZGVvQ292ZXJIb3N0LmhpZGRlbnt2aXNpYmlsaXR5OmhpZGRlbjtvcGFjaXR5OjB9Lnl0bVZpZGVvQ292ZXJUaHVtYm5haWx7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTpjb3Zlcjt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dGRWb2x1bWVDb250cm9sc0hvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7bWF4LWhlaWdodDo0OHB4fS55dGRWb2x1bWVDb250cm9sc0Rpc2FibGVTbGlkZXJ7d2lkdGg6NDhweH0ueXRkVm9sdW1lQ29udHJvbHNWb2x1bWVDb250cm9sc0NvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTBweDtwb3NpdGlvbjpyZWxhdGl2ZTstbW96LWJveC1mbGV4OjE7ZmxleDoxIDEgYXV0bzttYXgtd2lkdGg6MTY4cHh9Lnl0ZFZvbHVtZUNvbnRyb2xzVm9sdW1lQ29udHJvbHNDb250YWluZXJWZXJ0aWNhbHttYXgtd2lkdGg6NDhweDt3aWR0aDo0OHB4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2dhcDo2MHB4O2hlaWdodDotbW96LWZpdC1jb250ZW50O2hlaWdodDpmaXQtY29udGVudDtwb2ludGVyLWV2ZW50czpub25lfS55dGRWb2x1bWVDb250cm9sc1ZvbHVtZUNvbnRyb2xzQ29udGFpbmVyRXhwYW5kZWR7cG9pbnRlci1ldmVudHM6YWxsfS55dGRWb2x1bWVDb250cm9sc011dGVJY29uQnV0dG9uQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHg7Ym9yZGVyLXJhZGl1czo1MHB4fS55dGRWb2x1bWVDb250cm9sc011dGVJY29uQnV0dG9ue2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmVuZDt6LWluZGV4OjE7cG9zaXRpb246cmVsYXRpdmU7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO3BhZGRpbmc6MTJweDtjdXJzb3I6cG9pbnRlcjtwb2ludGVyLWV2ZW50czphbGw7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwwLjgpKX0ueXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3dpZHRoOjA7b3BhY2l0eTowO292ZXJmbG93OmhpZGRlbjt2aXNpYmlsaXR5OmhpZGRlbjt0cmFuc2l0aW9uOnZpc2liaWxpdHkgLjEycyBsaW5lYXIsb3BhY2l0eSAuMTJzIGxpbmVhcix3aWR0aCAuMTJzIGxpbmVhcn0ueXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXJFeHBhbmRlZHt2aXNpYmlsaXR5OnZpc2libGU7d2lkdGg6MTAwJTtvcGFjaXR5OjE7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IC4zcyBsaW5lYXIsb3BhY2l0eSAuM3MgbGluZWFyLHdpZHRoIC4zcyBsaW5lYXI7ei1pbmRleDoxfS55dGRWb2x1bWVDb250cm9sc1NsaWRlckNvbnRhaW5lcldpdGhTY3JpbXtwYWRkaW5nLXJpZ2h0OjEycHh9Lnl0ZFZvbHVtZUNvbnRyb2xzU2xpZGVyQ29udGFpbmVyVmVydGljYWx7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMyk7Ym9yZGVyLXJhZGl1czo1MHB4O2hlaWdodDo0OHB4O21pbi1oZWlnaHQ6NDhweDtwYWRkaW5nOjAgMTJweDttYXJnaW46MDt0cmFuc2l0aW9uOnZpc2liaWxpdHkgLjNzIGxpbmVhcixvcGFjaXR5IC4zcyBsaW5lYXIsd2lkdGggMHMgbGluZWFyIC4zcyxtYXJnaW4gLjNzIGxpbmVhcn0ueXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXJWZXJ0aWNhbERvd257dHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpfS55dGRWb2x1bWVDb250cm9sc1NsaWRlckNvbnRhaW5lclZlcnRpY2FsRXhwYW5kZWR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDQwLDQwLDQwLDAuNik7bWFyZ2luLXRvcDo4cHg7d2lkdGg6MTMzcHg7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IC4zcyBsaW5lYXIsb3BhY2l0eSAuM3MgbGluZWFyLHdpZHRoIDBzIGxpbmVhcixtYXJnaW4gLjNzIGxpbmVhcn0ueXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXJEaXNhYmxlU2xpZGVye2Rpc3BsYXk6bm9uZX0ueXRkVm9sdW1lQ29udHJvbHNOYXRpdmVTbGlkZXJ7LS1ncmFkaWVudC1wZXJjZW50OjA7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO2JvcmRlcjpub25lO21hcmdpbi1ib3R0b206MXB4O2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6YmxvY2s7bWluLXdpZHRoOjA7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmc6OHB4IDA7Zm9yY2VkLWNvbG9yLWFkanVzdDpub25lfS55dGRWb2x1bWVDb250cm9sc05hdGl2ZVNsaWRlcjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsI2ZmZiAwLCNmZmYgdmFyKC0tZ3JhZGllbnQtcGVyY2VudCkscmdiYSgyNTUsMjU1LDI1NSwwLjMpIHZhcigtLWdyYWRpZW50LXBlcmNlbnQpLHJnYmEoMjU1LDI1NSwyNTUsMC4zKSAxMDAlKTtoZWlnaHQ6NHB4O2JvcmRlci1yYWRpdXM6MTJweH0ueXRkVm9sdW1lQ29udHJvbHNOYXRpdmVTbGlkZXI6Oi1tb3otcmFuZ2UtdHJhY2t7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsI2ZmZiAwLCNmZmYgdmFyKC0tZ3JhZGllbnQtcGVyY2VudCkscmdiYSgwLDAsMCwwLjEpIHZhcigtLWdyYWRpZW50LXBlcmNlbnQpLHJnYmEoMCwwLDAsMC4xKSAxMDAlKTtoZWlnaHQ6NHB4O2JvcmRlci1yYWRpdXM6MTJweH0ueXRkVm9sdW1lQ29udHJvbHNOYXRpdmVTbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXRodW1iey13ZWJraXQtYXBwZWFyYW5jZTpub25lO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7YmFja2dyb3VuZC1jb2xvcjp3aGl0ZTtib3JkZXItcmFkaXVzOjUwJTttYXJnaW4tdG9wOi02LjVweH0ueXRkVm9sdW1lQ29udHJvbHNOYXRpdmVTbGlkZXI6Oi1tb3otcmFuZ2UtdGh1bWJ7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2JvcmRlci1yYWRpdXM6NTAlO2JvcmRlcjpub25lfS55dGRWb2x1bWVDb250cm9sc05hdGl2ZVNsaWRlcjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7aGVpZ2h0OjJweH0ueXRkVm9sdW1lQ29udHJvbHNOYXRpdmVTbGlkZXI6Oi1tb3otcmFuZ2UtdHJhY2t7aGVpZ2h0OjJweH0ueXRkVm9sdW1lQ29udHJvbHNNdXRlSWNvbntjb2xvcjp3aGl0ZX0ueXRkVm9sdW1lQ29udHJvbHNCYWNrZ3JvdW5kU2NyaW17aGVpZ2h0OjQ4cHg7d2lkdGg6NDhweDt6LWluZGV4OjA7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMyk7dHJhbnNpdGlvbjp3aWR0aCAuMjVzIGxpbmVhcjtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXItcmFkaXVzOjUwcHh9Lnl0ZFZvbHVtZUNvbnRyb2xzQmFja2dyb3VuZFNjcmltRXhwYW5kZWR7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKX0ueXRkVm9sdW1lQ29udHJvbHNCYWNrZ3JvdW5kU2NyaW1FeHBhbmRlZEhvdmVyU3RhdGU6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDo0cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjI4cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTp3aWR0aCxiYWNrZ3JvdW5kLWNvbG9yfS55dHdQbGF5ZXJGdWxsc2NyZWVuQWN0aW9uTWVudUhvc3R7ZGlzcGxheTpibG9ja30ueXR3UGxheWVyRnVsbHNjcmVlbkFjdGlvbk1lbnVDaXJjbGVCdXR0b25ze21hcmdpbi1yaWdodDo4cHh9Lnl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsQnV0dG9ue2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7aGVpZ2h0OjQ4cHg7Ym9yZGVyLXJhZGl1czoyNHB4O3BhZGRpbmctbGVmdDoxMnB4O3BhZGRpbmctcmlnaHQ6MTJweDt3aGl0ZS1zcGFjZTpub3dyYXA7Y29sb3I6I2ZmZjtib3JkZXI6bm9uZTtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMyk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxCdXR0b24gYnV0dG9ue3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsQnV0dG9uIHN2Z3tmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbFNpbmdsZVRodW1ibmFpbHtwYWRkaW5nOjZweCA4cHg7Ym9yZGVyLXJhZGl1czoxNnB4fS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxIb3N0Om5vdCgueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGl0bGVIaWRkZW4pIC55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxTaW5nbGVUaHVtYm5haWx7cGFkZGluZzo2cHggMTJweH0ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGh1bWJuYWlsU3RhY2t7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWFyZ2luLXRvcDotMXB4fS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxIb3N0Om5vdCgueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGl0bGVIaWRkZW4pIC55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxUaHVtYm5haWxTdGFja3ttYXJnaW4tbGVmdDo4cHh9Lnl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbEZhZGVkVGh1bWJuYWlse2hlaWdodDoycHg7bWFyZ2luLWJvdHRvbToxcHg7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czoycHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MnB4fS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxTbWFsbEZhZGVkVGh1bWJuYWlse3dpZHRoOjEwcHg7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMyl9Lnl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbExhcmdlRmFkZWRUaHVtYm5haWx7d2lkdGg6MjBweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC43KX0ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGh1bWJuYWlsQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7d2lkdGg6MzZweDtoZWlnaHQ6MjBweDtib3JkZXI6MnB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6OHB4O292ZXJmbG93OmhpZGRlbn0ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsU2luZ2xlVGh1bWJuYWlsIC55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxUaHVtYm5haWxDb250YWluZXJ7d2lkdGg6NjRweDtoZWlnaHQ6MzZweDtib3JkZXI6bm9uZTtvdXRsaW5lOjJweCBzb2xpZCAjZmZmO2JvcmRlci1yYWRpdXM6OHB4fS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxUaHVtYm5haWx7ZGlzcGxheTpibG9ja30ueXRtU2xpbU1ldGFkYXRhQnV0dG9uUmVuZGVyZXJIb3N0e21hcmdpbi1yaWdodDoxMnB4fXl0bS1zbGltLW1ldGFkYXRhLXRvZ2dsZS1idXR0b24tcmVuZGVyZXIuY2lyY2xlLWJ1dHRvbnN7bWFyZ2luLXJpZ2h0OjEycHh9eXRtLXNsaW0tbWV0YWRhdGEtdG9nZ2xlLWJ1dHRvbi1yZW5kZXJlci5jaXJjbGUtYnV0dG9ucyAuYnV0dG9uLXJlbmRlcmVyLXRleHR7ZGlzcGxheTpub25lfXl0bS1zbGltLW1ldGFkYXRhLXRvZ2dsZS1idXR0b24tcmVuZGVyZXIuY2lyY2xlLWJ1dHRvbnMgLmJ1dHRvbi1yZW5kZXJlcnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O21pbi13aWR0aDphdXRvO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMyk7Ym9yZGVyLXJhZGl1czo1MCU7bWFyZ2luOjB9eXRtLXNsaW0tbWV0YWRhdGEtdG9nZ2xlLWJ1dHRvbi1yZW5kZXJlci5jaXJjbGUtYnV0dG9ucyAuYnV0dG9uLXJlbmRlcmVyLWljb257d2lkdGg6MjBweDtoZWlnaHQ6MjBweH0uZnVsbHNjcmVlbi1jb250cm9sc3stLWNvbnRyb2xzLWhlaWdodDoyMTVweDtib3R0b206Y2FsYyh2YXIoLS1jb250cm9scy1oZWlnaHQpKi0xKTtsZWZ0OjA7cmlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6dmFyKC0tY29udHJvbHMtaGVpZ2h0KTt6LWluZGV4OjI7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BhZGRpbmc6MTJweDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LmZ1bGxzY3JlZW4tY29udHJvbHMtdmlkZW8tdGl0bGV7Y29sb3I6I2ZmZn0uZnVsbHNjcmVlbi1jb250cm9scy5leHBhbmRlZHtib3R0b206MH0uZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbnMtd3JhcHBlcnstbW96LWJveC1mbGV4OjE7ZmxleDoxO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O292ZXJmbG93LXg6YXV0bzstbXMtb3ZlcmZsb3ctc3R5bGU6bm9uZTtzY3JvbGxiYXItd2lkdGg6bm9uZX0uZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbnMtd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfUBtZWRpYSAocG9pbnRlcjpmaW5lKXsuZnVsbHNjcmVlbi1jb250cm9sc3stLWNvbnRyb2xzLWhlaWdodDoyMjhweH0uZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbnMtd3JhcHBlcntzY3JvbGxiYXItd2lkdGg6YXV0bzstbXMtb3ZlcmZsb3ctc3R5bGU6YXV0bztvdmVyZmxvdy15OmF1dG99LmZ1bGxzY3JlZW4tcmVjb21tZW5kYXRpb25zLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjE2cHh9LmZ1bGxzY3JlZW4tcmVjb21tZW5kYXRpb25zLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2hlaWdodDo1NnB4O2JvcmRlci1yYWRpdXM6OHB4O2JvcmRlcjo0cHggc29saWQgdHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jbGlwOmNvbnRlbnQtYm94O2JhY2tncm91bmQtY29sb3I6IzYwNjA2MH0uZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbnMtd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojOTA5MDkwfS5mdWxsc2NyZWVuLXJlY29tbWVuZGF0aW9ucy13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5OmJsb2NrfX0uZnVsbHNjcmVlbi1idXR0b25zLXdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7aGVpZ2h0OjQ0cHh9LmZ1bGxzY3JlZW4tcmVjb21tZW5kYXRpb257d2lkdGg6MjAwcHg7bWluLXdpZHRoOjIwMHB4O21hcmdpbjowIDhweH0udG9wLWZ1bGxzY3JlZW4tY29udHJvbHN7cGFkZGluZzoxMnB4O2NvbG9yOiNmZmY7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDo2fS5mdWxsc2NyZWVuLWNsb3NlLWJ1dHRvbi13cmFwcGVye21hcmdpbi10b3A6LThweDttYXJnaW4tbGVmdDphdXRvfS5mdWxsc2NyZWVuLWFjdGlvbi1tZW51e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbToxMnB4O2hlaWdodDo0OHB4O2xlZnQ6MjRweDtyaWdodDoyNHB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ei1pbmRleDoyfS5hY3Rpb24tbWVudS1lbmdhZ2VtZW50LWJ1dHRvbnMtd3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtib3JkZXItcmFkaXVzOjQ4cHg7cGFkZGluZzo0cHggMDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4zKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9LmFjdGlvbi1tZW51LWVuZ2FnZW1lbnQtYnV0dG9ucy13cmFwcGVyIGJ1dHRvbnt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9LmFjdGlvbi1tZW51LWVuZ2FnZW1lbnQtYnV0dG9ucy13cmFwcGVyIHN2Z3tmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9LmFjdGlvbi1tZW51LWVuZ2FnZW1lbnQtYnV0dG9ucy13cmFwcGVyPjpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDo4cHh9LmZ1bGxzY3JlZW4tYWN0aW9uLW1lbnUsLmZ1bGxzY3JlZW4tYWN0aW9uLW1lbnUgLnl0QXR0cmlidXRlZFN0cmluZ0hvc3QsLmZ1bGxzY3JlZW4tcmVjb21tZW5kYXRpb257Y29sb3I6I2ZmZn0uZnVsbHNjcmVlbi13YXRjaC1uZXh0LWVudHJ5cG9pbnQtd3JhcHBlcnttYXJnaW4tbGVmdDphdXRvO2hlaWdodDoxMDAlfS5mdWxsc2NyZWVuLW1vcmUtdmlkZW9zLWVuZHBvaW50e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS5zdGFja2VkLXZpZGVvcy13cmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mjt3aWR0aDo2NHB4O2hlaWdodDoxMDAlfS5zdGFja2VkLXZpZGVvLXByZXZpZXd7d2lkdGg6NjRweDtoZWlnaHQ6MzZweDt0cmFuc2Zvcm0tb3JpZ2luOnRvcCBjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7YmFja2dyb3VuZDpibGFjaztib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6M3B4O292ZXJmbG93OmhpZGRlbjstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnN0YWNrZWQtdmlkZW8tcHJldmlldyAuc3RhY2tlZC12aWRlby1wcmV2aWV3LWltYWdle3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn0uc3RhY2tlZC12aWRlby1wcmV2aWV3OmZpcnN0LWNoaWxke3otaW5kZXg6M30uc3RhY2tlZC12aWRlby1wcmV2aWV3Om50aC1jaGlsZCgyKXt6LWluZGV4OjI7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTRweCkgc2NhbGUoLjg3NSl9LnN0YWNrZWQtdmlkZW8tcHJldmlldzpudGgtY2hpbGQoMikgLnN0YWNrZWQtdmlkZW8tcHJldmlldy1pbWFnZXtvcGFjaXR5Oi43NX0uc3RhY2tlZC12aWRlby1wcmV2aWV3Om50aC1jaGlsZCgzKXt6LWluZGV4OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLThweCkgc2NhbGUoLjc1KX0uc3RhY2tlZC12aWRlby1wcmV2aWV3Om50aC1jaGlsZCgzKSAuc3RhY2tlZC12aWRlby1wcmV2aWV3LWltYWdle29wYWNpdHk6LjV9Lm1vcmUtdmlkZW9zLW1lc3NhZ2V7bWFyZ2luLXJpZ2h0OjEycHg7dGV4dC1hbGlnbjpyaWdodH0ubW9yZS12aWRlb3MtbWVzc2FnZS10aXRsZXtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxNnB4fS5tb3JlLXZpZGVvcy1tZXNzYWdlLXN1YnRpdGxle2ZvbnQtc2l6ZToxMHB4O2xpbmUtaGVpZ2h0OjE0cHg7b3BhY2l0eTouN30ucXVpY2stYWN0aW9ucy13cmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7aGVpZ2h0OjEwMCU7bWFyZ2luLWxlZnQ6YXV0b30ucXVpY2stYWN0aW9ucy1iYXItYnV0dG9ucy13cmFwcGVye3BhZGRpbmctbGVmdDoxMnB4fS53YXRjaC1vbi15b3V0dWJlLWJ1dHRvbi13cmFwcGVye2RpcmVjdGlvbjpsdHJ9QG1lZGlhIChtYXgtaGVpZ2h0OjIyMXB4KXsud2F0Y2gtb24teW91dHViZS1idXR0b24td3JhcHBlciAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SG9zdHtoZWlnaHQ6NDBweDtwYWRkaW5nOjAgMjBweH19LndhdGNoLW9uLXlvdXR1YmUtYnV0dG9ue3BhZGRpbmctbGVmdDo0cHh9Lm5vLWxhYmVsLWV4cCB5dG0tc2xpbS1tZXRhZGF0YS1idXR0b24tcmVuZGVyZXIsLm5vLWxhYmVsLWV4cCB5dG0tc2xpbS1tZXRhZGF0YS10b2dnbGUtYnV0dG9uLXJlbmRlcmVyLmNpcmNsZS1idXR0b25zLC5uby1sYWJlbC1leHA+eXRtLWJ1dHRvbi1yZW5kZXJlci5jaXJjbGUtYnV0dG9uc3ttYXJnaW4tcmlnaHQ6OHB4fVtkaXI9cnRsXSAubm8tbGFiZWwtZXhwIHl0bS1zbGltLW1ldGFkYXRhLXRvZ2dsZS1idXR0b24tcmVuZGVyZXIuY2lyY2xlLWJ1dHRvbnMubGlrZS1idXR0b24tbm8tbGFiZWwtZXhwe2RpcmVjdGlvbjpydGx9QG1lZGlhIChtYXgtd2lkdGg6NTQ5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey5mcy13YXRjaC1zeXN0ZW06bm90KC5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbik6bm90KC5lbmFibGUtZnVsbHNjcmVlbi1jb250cm9scy1mb3ItcG9ydHJhaXQpIC5mdWxsc2NyZWVuLWFjdGlvbi1tZW51LC5mcy13YXRjaC1zeXN0ZW06bm90KC5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbik6bm90KC5lbmFibGUtZnVsbHNjcmVlbi1jb250cm9scy1mb3ItcG9ydHJhaXQpIC5mdWxsc2NyZWVuLWNvbnRyb2xze2Rpc3BsYXk6bm9uZX19eXRtLWN1c3RvbS1jb250cm9sIC5pY29uLWJ1dHRvbntoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3BhZGRpbmc6MTJweH1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpe3l0bS1jdXN0b20tY29udHJvbCAuaWNvbi1idXR0b246bm90KC5wbGF5ZXItc2V0dGluZ3MtaWNvbil7aGVpZ2h0OjQwcHg7d2lkdGg6NDBweDtwYWRkaW5nOjhweH15dG0tY3VzdG9tLWNvbnRyb2wgLmljb24tYnV0dG9uOm5vdCgucGxheWVyLXNldHRpbmdzLWljb24pPmMzLWljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH19eXRtLWN1c3RvbS1jb250cm9sIC5hdXRvbmF2LXVzZXItZWR1Y2F0aW9uLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MjUlO3dpZHRoOjEwMCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7Y29sb3I6I2ZmZn0uaW50ZXJjZXB0LWVsZW1lbnQtY2xpY2tzIC5wbGF5ZXItY29udHJvbHMtYm90dG9tLC5pbnRlcmNlcHQtZWxlbWVudC1jbGlja3MgLnBsYXllci1jb250cm9scy1taWRkbGUsLmludGVyY2VwdC1lbGVtZW50LWNsaWNrcyAucGxheWVyLWNvbnRyb2xzLXRvcCwuaW50ZXJjZXB0LWVsZW1lbnQtY2xpY2tzIC53YXRjaC1wYWdlLXByb2dyZXNzLWJhcntwb2ludGVyLWV2ZW50czpub25lfXl0bS1jdXN0b20tY29udHJvbCAuZmluZS1zY3J1YmJpbmctb3ZlcmxheSAuaWNvbi1idXR0b24+YzMtaWNvbiBzdmcgcGF0aCx5dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1ib3R0b20gLmZ1bGxzY3JlZW4taWNvbiBjMy1pY29uIHN2ZyBwYXRoLHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLWJvdHRvbSAuaWNvbi1idXR0b24+YzMtaWNvbiBzdmcgcGF0aCx5dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLmljb24tYnV0dG9uIGMzLWljb24gc3ZnIHBhdGgseXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtcGIgLmljb24tYnV0dG9uPmMzLWljb24seXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtdG9wIC5pY29uLWJ1dHRvbj5jMy1pY29uIHN2ZyBwYXRoLHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcCB5dG0tY2xvc2VkLWNhcHRpb25pbmctYnV0dG9uIGJ1dHRvblthcmlhLXByZXNzZWQ9ZmFsc2VdPmMzLWljb24gc3ZnIHBhdGgseXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtdG9wIHl0bS1jbG9zZWQtY2FwdGlvbmluZy1idXR0b24gYnV0dG9uW2FyaWEtcHJlc3NlZD10cnVlXT5jMy1pY29uIHN2ZyBwYXRoe2ZpbGw6I2ZmZn15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLmljb24tYnV0dG9uLmljb24tZGlzYWJsZSBjMy1pY29uIHN2ZyBwYXRoLHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcCB5dG0tY2xvc2VkLWNhcHRpb25pbmctYnV0dG9uIGJ1dHRvbj5jMy1pY29uIHN2ZyBwYXRoe2ZpbGw6cmdiYSgyNTUsMjU1LDI1NSwwLjMpfXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt6LWluZGV4OjI7cmlnaHQ6MjRweH1AbWVkaWEgKG1heC1oZWlnaHQ6MjIxcHgpe3l0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcHtyaWdodDowfX15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy10b3AueXR3UGxheWVyVG9wQ29udHJvbHNDb250YWluZXJXaXRoRW1iZWRkZWRWaWRlb0RldGFpbHN7bGVmdDowfUBtZWRpYSAobWluLXdpZHRoOjM4MHB4KXt5dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy10b3AueXR3UGxheWVyVG9wQ29udHJvbHNDb250YWluZXJXaXRoRW1iZWRkZWRWaWRlb0RldGFpbHN7bGVmdDoxNHB4fX15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy10b3AtcmlnaHR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9W2Rpcj1ydGxdIHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLWJhY2tncm91bmQsW2Rpcj1ydGxdIHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcHtkaXJlY3Rpb246cnRsfWJvZHlbZmF1eC1mdWxsc2NyZWVuPXRydWVdIHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcHt0b3A6ZW52KHNhZmUtYXJlYS1pbnNldC10b3ApfXl0bS1jdXN0b20tY29udHJvbCBjMy1vdmVybGF5e3Zpc2liaWxpdHk6dmlzaWJsZX0jcGxheWVyLWNvbnRyb2wtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDt0b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9ufSNwbGF5ZXItY29udHJvbC1vdmVybGF5IC5wbGF5ZXItY29udHJvbHMtY29udGVudHtoZWlnaHQ6MTAwJTtvdmVyZmxvdzpoaWRkZW47dmlzaWJpbGl0eTpoaWRkZW59I3BsYXllci1jb250cm9sLW92ZXJsYXkudXNlLW9wYWNpdHkgLnBsYXllci1jb250cm9scy1jb250ZW50e29wYWNpdHk6MDt2aXNpYmlsaXR5OnVuc2V0fSNwbGF5ZXItY29udHJvbC1vdmVybGF5IC5wbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDt6LWluZGV4OjA7b3BhY2l0eTowfSNwbGF5ZXItY29udHJvbC1vdmVybGF5IC5wbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZDpub3QoLmZ1bGxzY3JlZW4tcmVjcy1leHBhbmRlZCl7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHJnYmEoMCwwLDAsLjYpIDAscmdiYSgwLDAsMCwuNTQpIDI1JSxyZ2JhKDAsMCwwLC4zNikgNTAlLHJnYmEoMCwwLDAsLjE4KSA3NSUscmdiYSgwLDAsMCwwKSk7YmFja2dyb3VuZC1zaXplOjFweCA1MCU7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXh9I3BsYXllci1jb250cm9sLW92ZXJsYXkgLnBsYXllci1jb250cm9scy1iYWNrZ3JvdW5kLmZ1bGxzY3JlZW4tcmVjcy1leHBhbmRlZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KX0jcGxheWVyLWNvbnRyb2wtb3ZlcmxheSAucGxheWVyLWNvbnRyb2xzLWJhY2tncm91bmQtY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDt0b3A6MDt2aXNpYmlsaXR5OnZpc2libGV9I3BsYXllci1jb250cm9sLW92ZXJsYXkgLnBsYXllci1jb250cm9scy1iYWNrZ3JvdW5kLWFjdGlvbi1pdGVtc3twb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjJ9I3BsYXllci1jb250cm9sLW92ZXJsYXkuYW5pbWF0aW9uLWVuYWJsZWR7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjdzO3RyYW5zaXRpb24tcHJvcGVydHk6YWxsfSNwbGF5ZXItY29udHJvbC1vdmVybGF5LmFuaW1hdGlvbi1lbmFibGVkIC5wbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZHt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMnN9I3BsYXllci1jb250cm9sLW92ZXJsYXkucG9pbnRlci1ldmVudHMtb2Zme3BvaW50ZXItZXZlbnRzOm5vbmV9I3BsYXllci1jb250cm9sLW92ZXJsYXkuZmFkZWlue3BvaW50ZXItZXZlbnRzOmF1dG99I3BsYXllci1jb250cm9sLW92ZXJsYXkuZmFkZWluIC5wbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZHt6LWluZGV4OjI7b3BhY2l0eToxfSNwbGF5ZXItY29udHJvbC1vdmVybGF5LmZhZGVpbiAucGxheWVyLWNvbnRyb2xzLWNvbnRlbnR7dmlzaWJpbGl0eTp2aXNpYmxlfSNwbGF5ZXItY29udHJvbC1vdmVybGF5LmZhZGVpbi51c2Utb3BhY2l0eSAucGxheWVyLWNvbnRyb2xzLWNvbnRlbnR7b3BhY2l0eToxO3Zpc2liaWxpdHk6dW5zZXR9I3BsYXllci1jb250cm9sLW92ZXJsYXkuaGlkZGVue2Rpc3BsYXk6bm9uZX1ib2R5W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAud2F0Y2gtcGFnZS1wcm9ncmVzcy1iYXJ7bGVmdDoyNHB4O3JpZ2h0OjI0cHh9Ym9keVtmYXV4LWZ1bGxzY3JlZW49dHJ1ZV0gLmVuYWJsZS1mdWxsc2NyZWVuLWNvbnRyb2xzIC53YXRjaC1wYWdlLXByb2dyZXNzLWJhcntib3R0b206MzBweH1ib2R5W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAuZW5hYmxlLWZ1bGxzY3JlZW4tY29udHJvbHMuZnMtd2F0Y2gtc3lzdGVtIC53YXRjaC1wYWdlLXByb2dyZXNzLWJhcntib3R0b206NTBweH0uZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLndhdGNoLXBhZ2UtcHJvZ3Jlc3MtYmFye2JvdHRvbTo1MnB4fS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAucGxheWVyLWNvbnRyb2xzLWJvdHRvbXtib3R0b206ODJweH0uZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLmZ1bGxzY3JlZW4tYWN0aW9uLW1lbnV7bGVmdDoxMnB4O3JpZ2h0OjEycHh9QG1lZGlhIChtaW4td2lkdGg6MzgwcHgpey5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAuZnVsbHNjcmVlbi1hY3Rpb24tbWVudXtsZWZ0OjMwcHg7cmlnaHQ6MzBweH19QG1lZGlhIChtYXgtaGVpZ2h0OjIyMXB4KXsuZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLndhdGNoLXBhZ2UtcHJvZ3Jlc3MtYmFye2JvdHRvbTozMnB4O3otaW5kZXg6MztoZWlnaHQ6NDBweDtsZWZ0OjEycHg7cmlnaHQ6MTJweH0uZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLndhdGNoLXBhZ2UtcHJvZ3Jlc3MtYmFyIC55dFBsYXllclByb2dyZXNzQmFyRHJhZ0NvbnRhaW5lcnstbW96LWJveC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZW5kfS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAud2F0Y2gtcGFnZS1wcm9ncmVzcy1iYXIgLnl0UGxheWVyUHJvZ3Jlc3NCYXJQcm9ncmVzc0JhcntwYWRkaW5nLWJvdHRvbToxMnB4fS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAucGxheWVyLWNvbnRyb2xzLWJvdHRvbXtib3R0b206NThweH0uZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLnBsYXllci1jb250cm9scy1ib3R0b20ucGxheWVyLWNvbnRyb2xzLWJvdHRvbS1sZWZ0e2xlZnQ6MDtyaWdodDo0NHB4fS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAucGxheWVyLWNvbnRyb2xzLWJvdHRvbS5wbGF5ZXItY29udHJvbHMtYm90dG9tLXJpZ2h0e2xlZnQ6dW5zZXQ7cmlnaHQ6MDt6LWluZGV4OjR9LmZ1bGxzY3JlZW4tY29udHJvbHMtYWx3YXlzLW9uIC5mdWxsc2NyZWVuLWFjdGlvbi1tZW51e2xlZnQ6MnB4O3JpZ2h0OjJweDtib3R0b206MnB4fS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAuZnVsbHNjcmVlbi1tb3JlLXZpZGVvcy1lbmRwb2ludHttYXJnaW4tdG9wOjEycHh9LmZ1bGxzY3JlZW4tY29udHJvbHMtYWx3YXlzLW9uIC5zdGFja2VkLXZpZGVvLXByZXZpZXcsLmZ1bGxzY3JlZW4tY29udHJvbHMtYWx3YXlzLW9uIC5zdGFja2VkLXZpZGVvcy13cmFwcGVye3dpZHRoOjQycHg7aGVpZ2h0OjI0cHh9LmZ1bGxzY3JlZW4tY29udHJvbHMtYWx3YXlzLW9uIC5wbGF5ZXItdGltZS1jaGFwdGVyLXRpdGxle2Rpc3BsYXk6bm9uZX19LnBsYXllci1jb250cm9scy1oaWRle2Rpc3BsYXk6bm9uZX0ueXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlIb3N0e2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9Lnl0bU11dGVkQXV0b3BsYXlPdmVybGF5QnJhbmRpbmdJY29ue3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo2cHg7cmlnaHQ6MTJweDtjb2xvcjojZmZmfVtkaXI9cnRsXSAueXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlCcmFuZGluZ0ljb257bGVmdDoxMnB4O3JpZ2h0OmF1dG99Lnl0bU11dGVkQXV0b3BsYXlPdmVybGF5QmFja2dyb3VuZHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjYpfS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUFjdGlvbk1lbnV7b3BhY2l0eToxO3Zpc2liaWxpdHk6dmlzaWJsZTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuN3M7dHJhbnNpdGlvbi1wcm9wZXJ0eTphbGx9Lnl0bU11dGVkQXV0b3BsYXlPdmVybGF5SGlkZUFjdGlvbk1lbnV7b3BhY2l0eTowO3Zpc2liaWxpdHk6aGlkZGVufS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUVxdWFsaXplcntwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MTVweDtyaWdodDoxMnB4fVtkaXI9cnRsXSAueXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlFcXVhbGl6ZXJ7bGVmdDoxMnB4O3JpZ2h0OmF1dG99QGtleWZyYW1lcyB5dG0tZXF1YWxpemVyLWFuaW1hdGlvbnswJXt0cmFuc2Zvcm06c2NhbGVZKDEpfTUwJXt0cmFuc2Zvcm06c2NhbGVZKC41KX10b3t0cmFuc2Zvcm06c2NhbGVZKDEpfX0ueXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlFcXVhbGl6ZXIgLnl0bS1lcXVhbGl6ZXItYmFyLWxlZnQsLnl0bU11dGVkQXV0b3BsYXlPdmVybGF5RXF1YWxpemVyIC55dG0tZXF1YWxpemVyLWJhci1taWRkbGUsLnl0bU11dGVkQXV0b3BsYXlPdmVybGF5RXF1YWxpemVyIC55dG0tZXF1YWxpemVyLWJhci1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDt0cmFuc2Zvcm0tb3JpZ2luOjhweCAxNnB4Oy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjo4cHggMTZweDthbmltYXRpb24tbmFtZTp5dG0tZXF1YWxpemVyLWFuaW1hdGlvbjthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlfS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUVxdWFsaXplciAueXRtLWVxdWFsaXplci1iYXItbGVmdHthbmltYXRpb24tZHVyYXRpb246LjVzfS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUVxdWFsaXplciAueXRtLWVxdWFsaXplci1iYXItbWlkZGxle2FuaW1hdGlvbi1kdXJhdGlvbjoxLjNzfS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUVxdWFsaXplciAueXRtLWVxdWFsaXplci1iYXItcmlnaHR7YW5pbWF0aW9uLWR1cmF0aW9uOi43c30ueXRTaG9ydHNUb3VjaEZlZWRiYWNrSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfS55dFNob3J0c1RvdWNoRmVlZGJhY2tIaWRkZW57ZGlzcGxheTpub25lfS55dFNob3J0c1RvdWNoRmVlZGJhY2tUb3VjaEZlZWRiYWNre2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOmFic29sdXRlO2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFNob3J0c1RvdWNoRmVlZGJhY2tMaWtlQW5pbWF0aW9uV3JhcHBlcnt3aWR0aDoyNDBweDtoZWlnaHQ6MjQwcHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFNob3J0c1RvdWNoRmVlZGJhY2tMaWtlQW5pbWF0aW9ue3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9Lnl0U2hvcnRzVG91Y2hGZWVkYmFja1BsYXlQYXVzZUFuaW1hdGlvbnt3aWR0aDo5NnB4O2hlaWdodDo5NnB4fUBtZWRpYSAobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVySG9zdHtvdmVyZmxvdy15OnNjcm9sbH19Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyU2NyaW1Db250YWluZXJ7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDo1fS5ZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlckNvbnRhaW5lcntib3JkZXItcmFkaXVzOjIwcHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO21hcmdpbjowIDhweCAyNHB4O21heC13aWR0aDo0MDBweDtkaXNwbGF5OmJsb2NrO292ZXJmbG93OnNjcm9sbH0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJIZWFkZXJ7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MTQwcHg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjIwcHggMDt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6MTJweH0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJDZW50cmFsSWNvbntoZWlnaHQ6NjVweDt3aWR0aDo2NXB4O2NvbG9yOiNmMDM7YmFja2dyb3VuZC1jb2xvcjojZmZmO3BhZGRpbmc6MTVweDtib3JkZXItcmFkaXVzOjQ1cHh9Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyQ2xvc2V7cG9zaXRpb246YWJzb2x1dGU7dG9wOjEwcHg7cmlnaHQ6MTBweDtib3JkZXItcmFkaXVzOjI0cHh9Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyRHJhZ0hhbmRsZXtiYWNrZ3JvdW5kOiMwMzAzMDM7b3BhY2l0eTouMTU7Ym9yZGVyLXJhZGl1czo0cHg7aGVpZ2h0OjRweDttYXJnaW46MCBhdXRvO3dpZHRoOjQwcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjhweH0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJDb250ZW50c3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cGFkZGluZzoyNHB4fS5ZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlckNvbnRlbnRzPmRpdntwYWRkaW5nLWJvdHRvbTo2cHh9Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyQ29udGVudHM+eXRtLWJ1dHRvbi1yZW5kZXJlcntwYWRkaW5nLXRvcDo2cHh9Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyVGl0bGV7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtfUBtZWRpYSAobWluLXdpZHRoOjMwMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1pbi13aWR0aDozMDBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyVGl0bGV7bGV0dGVyLXNwYWNpbmc6LjAwNWVtfX0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJTdWJ0aXRsZXtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjEuOHJlbX1AbWVkaWEgKG1pbi13aWR0aDozMDBweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtaW4td2lkdGg6MzAwcHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey5ZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlclN1YnRpdGxle2xldHRlci1zcGFjaW5nOi4wMWVtfX0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJPdmVybGF5Q29udGFpbmVye3Bvc2l0aW9uOmZpeGVkO2JvdHRvbTowO3otaW5kZXg6NTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjEwMCV9QG1lZGlhIChtYXgtd2lkdGg6OTMwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsuWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJPdmVybGF5Q29udGFpbmVye3RvcDowfX1AbWVkaWEgKG1pbi13aWR0aDo1NTBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyT3ZlcmxheUNvbnRhaW5lcntib3R0b206NTAlfX1AbWVkaWEgKG1pbi13aWR0aDo5MzFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5ZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlck92ZXJsYXlDb250YWluZXJ7Ym90dG9tOjI1JX19QG1lZGlhIChtYXgtaGVpZ2h0OjUwMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyT3ZlcmxheUNvbnRhaW5lcntib3R0b206MH19W2JvdHRvbS1zaGVldC1vdmVybGF5LWJvZHktb3Blbl17cG9zaXRpb246Zml4ZWQ7bGVmdDowO3JpZ2h0OjA7dG9wOjA7b3ZlcmZsb3c6aGlkZGVufS55dG0tZm9yY2VkLW11dGUtbWVzc2FnZSAuYnV0dG9uLXdpdGgtaWNvbi1pbm5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKTtib3JkZXI6MXB4IHNvbGlkICNmZmY7Ym9yZGVyLXJhZGl1czozcHg7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtwYWRkaW5nOjZweH0ueXRtLWZvcmNlZC1tdXRlLW1lc3NhZ2UgLmJ1dHRvbi13aXRoLWljb24taW5uZXIgYzMtaWNvbntoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fXl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1yZW5kZXJlci5pdGVte21hcmdpbi10b3A6MH15dG0taW5mby1wYW5lbC1jb250YWluZXItcmVuZGVyZXJ7YmFja2dyb3VuZC1jb2xvcjojZGVmMWZmO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn15dG0taW5mby1wYW5lbC1jb250YWluZXItcmVuZGVyZXJbYmFja2dyb3VuZD1JTkZPX1BBTkVMX0NPTlRBSU5FUl9CQUNLR1JPVU5EX1NZU1RFTV06Zmlyc3QtY2hpbGR7Ym9yZGVyOm5vbmV9eXRtLWluZm8tcGFuZWwtY29udGFpbmVyLXJlbmRlcmVyW2JhY2tncm91bmQ9SU5GT19QQU5FTF9DT05UQUlORVJfQkFDS0dST1VORF9TWVNURU1de2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfXl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1yZW5kZXJlcltiYWNrZ3JvdW5kPUlORk9fUEFORUxfQ09OVEFJTkVSX0JBQ0tHUk9VTkRfR1JBWV17YmFja2dyb3VuZC1jb2xvcjojZmZmfXl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1yZW5kZXJlcltiYWNrZ3JvdW5kPUlORk9fUEFORUxfQ09OVEFJTkVSX0JBQ0tHUk9VTkRfT1ZFUkxBWV9CTEFDS117YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNil9Lnl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1oZWFkZXJ7aGVpZ2h0OjM2cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRtLWluZm8tcGFuZWwtY29udGFpbmVyLWhlYWRlci1sZWZ0LWl0ZW1ze2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1oZWFkZXItaWNvbnttYXJnaW4tbGVmdDoxNnB4O21hcmdpbi1yaWdodDo4cHh9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3RbeXRtLWluZm8tcGFuZWwtY29udGVudC1oYXMtbWVudT10cnVlXXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93fS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJIb3N0W3l0bS1pbmZvLXBhbmVsLWNvbnRlbnQtaGFzLW1lbnU9dHJ1ZV0gLnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlcldyYXBwZXJ7cGFkZGluZy1ib3R0b206MTJweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySG9zdC55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJIb3N0SXNXYXRjaEluZm9QYW5lbHttYXJnaW46MTJweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3RbeXRtLWluZm8tcGFuZWwtY29udGVudC10cnVuY2F0ZS1wYXJhZ3JhcGhzPXRydWVdIC55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJQYXJhZ3JhcGh7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7LXdlYmtpdC1saW5lLWNsYW1wOjN9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3RbZGF0YS1iYWNrZ3JvdW5kPUlORk9fUEFORUxfQ09OVEVOVF9CQUNLR1JPVU5EX09WRVJMQVlfQkxBQ0tdIC55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJJbmxpbmVTb3VyY2V7Y29sb3I6I2ZmZjtmb250LXdlaWdodDo1MDB9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3RbZGF0YS1iYWNrZ3JvdW5kPUlORk9fUEFORUxfQ09OVEVOVF9CQUNLR1JPVU5EX0JMVUVde2JhY2tncm91bmQtY29sb3I6I2RlZjFmZn0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySG9zdC55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJIb3N0Q2luZW1hdGljQmFja2dyb3VuZHtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKX0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyV3JhcHBlcntwYWRkaW5nOjEycHggMTZweCAxNnB4IDE2cHh9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlcldyYXBwZXJbZGF0YS1oYXMtaWNvbj10cnVlXXtwYWRkaW5nOjE0cHggMTJweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyQm9keXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvd30ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyVGV4dHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyVGl0bGVDb250YWluZXJ7Y29sb3I6IzA2NWZkNDttYXJnaW4tYm90dG9tOjRweDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJUaXRsZUNvbnRhaW5lcnstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJUaXRsZUNvbnRhaW5lcnttYXgtaGVpZ2h0OjRyZW19Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckxpbmtJY29ue3BhZGRpbmctbGVmdDoxcHg7d2lkdGg6MTRweDtoZWlnaHQ6MTRweDt2ZXJ0aWNhbC1hbGlnbjp0ZXh0LXRvcH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyTWV0YWRhdGF7bWFyZ2luLWJvdHRvbTo0cHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDB9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlclB1Ymxpc2hUaW1le2Rpc3BsYXk6aW5saW5lO2NvbG9yOiM2MDYwNjA7cGFkZGluZy1sZWZ0OjNweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyUGFyYWdyYXBoe2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJJbmxpbmVTb3VyY2V7ZGlzcGxheTppbmxpbmUtYmxvY2s7Y29sb3I6IzA2NWZkNDtwYWRkaW5nLWxlZnQ6MnB4fS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJJbmxpbmVTb3VyY2VUZXh0e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJUaHVtYm5haWx7ZmxleC1zaHJpbms6MDtoZWlnaHQ6NjRweDt3aWR0aDo2NHB4O21hcmdpbi1sZWZ0OjhweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyRW5kcG9pbnR7d2lkdGg6MTAwJX0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySGVhZGVyUmlnaHRJdGVtc3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhlYWRlckljb257bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1yaWdodDo0cHg7aGVpZ2h0OjE2cHg7d2lkdGg6MTZweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyTWVudXtkaXNwbGF5OmJsb2NrfS55dG1Mb2dvRW50aXR5SG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDo0OHB4fS55dG1Mb2dvRW50aXR5Q29udGFpbmVye3dpZHRoOjEyMnB4O21hcmdpbi1yaWdodDoxMnB4fS55dG1Mb2dvRW50aXR5TG9nb3twYWRkaW5nOjA7aGVpZ2h0OjQ4cHg7d2lkdGg6YXV0bztjb2xvcjp1bnNldH0ucGxheWVySW50ZXJzdGl0aWFsUmVuZGVyZXJIb3N0e2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZDojNjA2MDYwfS5wbGF5ZXJJbnRlcnN0aXRpYWxSZW5kZXJlclNjcmlte3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgwLDAsMCwuNCkgMCxyZ2JhKDAsMCwwLC42KSA3NSUscmdiYSgwLDAsMCwuNikpfS55dEJpZ2JvYXJkU3Rvcnlib2FyZEhvc3R7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtvdmVyZmxvdzpoaWRkZW59Lnl0bUExMXlTdHlsZXNIaWRkZW5CdXR0b257cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO2hlaWdodDoxMnB4O3dpZHRoOjEycHh9Lnl0bUNsb3NlZENhcHRpb25pbmdCdXR0b25Ib3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDo0OHB4O2hlaWdodDo0OHB4fS55dG1DbG9zZWRDYXB0aW9uaW5nQnV0dG9uSWNvbkRpc2FibGVke2NvbG9yOiM5MDkwOTB9Lnl0bUNsb3NlZENhcHRpb25pbmdCdXR0b25JY29uRGlzYWJsZWRPdmVybGF5e2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4zKX0ueXRtQ2xvc2VkQ2FwdGlvbmluZ0J1dHRvbll0SWNvbk92ZXJsYXl7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwwLjgpKX0ueXRtQ2xvc2VkQ2FwdGlvbmluZ0J1dHRvbkJ1dHRvbntjdXJzb3I6cG9pbnRlcjt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O3BhZGRpbmc6MTJweDtib3JkZXI6bm9uZTtvdXRsaW5lOm5vbmU7Zm9udDppbmhlcml0O3RleHQtdHJhbnNmb3JtOmluaGVyaXQ7Y29sb3I6aW5oZXJpdDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS55dG1DcmVhdG9yRW5kc2NyZWVuSG9zdHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtmb250LXNpemU6MS4ycmVtO3Zpc2liaWxpdHk6aGlkZGVufS55dG1DcmVhdG9yRW5kc2NyZWVuSW5DdWVSYW5nZXt2aXNpYmlsaXR5OnZpc2libGV9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplODUze2ZvbnQtc2l6ZToxLjRyZW19Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTI4MHtmb250LXNpemU6MS44cmVtfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTE5MjB7Zm9udC1zaXplOjIuNHJlbX0ueXRtQ3JlYXRvckVuZHNjcmVlbkVsZW1lbnR7cG9zaXRpb246YWJzb2x1dGU7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRtQ3JlYXRvckVuZHNjcmVlbkVsZW1lbnRWaXNpYmxle29wYWNpdHk6MTtwb2ludGVyLWV2ZW50czphdXRvfS55dG1DcmVhdG9yRW5kc2NyZWVuU2NyaW17cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojMDAwO29wYWNpdHk6MDt0cmFuc2l0aW9uOmFsbCAuMnM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TY3JpbVZpc2libGV7b3BhY2l0eTouMjV9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRIb3N0e2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTt0cmFuc2l0aW9uOnotaW5kZXggLjJzIHN0ZXAtZW5kO3otaW5kZXg6Njtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudEhvc3RBY3RpdmV7dHJhbnNpdGlvbjp6LWluZGV4IC4ycyBzdGVwLXN0YXJ0O3otaW5kZXg6N30ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudFRodW1ibmFpbHtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO2JveC1zaGFkb3c6MCAwIDRweCByZ2JhKDAsMCwwLDAuNil9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRSb3VuZHtib3JkZXItcmFkaXVzOjUwJX0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuOCk7aGVpZ2h0OjEwMCU7cGFkZGluZzo4cHg7bWFyZ2luOi04cHg7b3BhY2l0eTowO3RyYW5zaXRpb246YWxsIC4yczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTtjb2xvcjojZmZmO3Zpc2liaWxpdHk6aGlkZGVuO2FsaWduLWNvbnRlbnQ6Y2VudGVyO21heC13aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbn0ueXRtQ3JlYXRvckVuZHNjcmVlblJvdW5kaW5nU21hbGwgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5e2JvcmRlci1yYWRpdXM6NHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuUm91bmRpbmdNZWRpdW0gLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5e2JvcmRlci1yYWRpdXM6OHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuUm91bmRpbmdMYXJnZSAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXl7Ym9yZGVyLXJhZGl1czoxMnB4fS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheVJpZ2h0e2xlZnQ6MH0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlSaWdodEFjdGl2ZXtwYWRkaW5nLWxlZnQ6Y2FsYygxMDAlICsgOHB4KX0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlMZWZ0e3JpZ2h0OjB9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TGVmdEFjdGl2ZXtwYWRkaW5nLXJpZ2h0OmNhbGMoMTAwJSArIDhweCl9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TGVmdEFjdGl2ZSwueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlSaWdodEFjdGl2ZXtvcGFjaXR5OjE7dmlzaWJpbGl0eTp2aXNpYmxlO21heC13aWR0aDpub25lfS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7d2lkdGg6MTE1cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21hcmdpbi1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0OjhweH0ueXRtQ3JlYXRvckVuZHNjcmVlbkVsZW1lbnRPdmVybGF5QWN0aXZlUmlnaHQgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudHttYXJnaW4tbGVmdDo4cHg7bWFyZ2luLXJpZ2h0OjEycHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNDI2IC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnQsLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNDcwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnQsLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNTA2IC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnQsLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNTcwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7d2lkdGg6MTM2cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNDI2IC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7bWFyZ2luLWxlZnQ6OHB4O21hcmdpbi1yaWdodDoxMnB4fS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUFjdGl2ZVJpZ2h0IC55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTQyNiAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e21hcmdpbi1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0OjhweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU2NDAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudHt3aWR0aDoxMzZweDttYXJnaW4tbGVmdDoxNnB4O21hcmdpbi1yaWdodDo4cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUFjdGl2ZVJpZ2h0IC55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTY0MCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6MTZweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU4NTMgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudHt3aWR0aDoxNzZweDttYXJnaW4tbGVmdDoxNnB4O21hcmdpbi1yaWdodDo4cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUFjdGl2ZVJpZ2h0IC55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTg1MyAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6MTZweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7d2lkdGg6MjY0cHg7bWFyZ2luLWxlZnQ6MzJweDttYXJnaW4tcmlnaHQ6MTZweH0ueXRtQ3JlYXRvckVuZHNjcmVlbkVsZW1lbnRPdmVybGF5QWN0aXZlUmlnaHQgLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTI4MCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e21hcmdpbi1sZWZ0OjE2cHg7bWFyZ2luLXJpZ2h0OjMycHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTkyMCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e3dpZHRoOjM5MnB4O21hcmdpbi1sZWZ0OjQ4cHg7bWFyZ2luLXJpZ2h0OjI0cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUFjdGl2ZVJpZ2h0IC55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTE5MjAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudHttYXJnaW4tbGVmdDoyNHB4O21hcmdpbi1yaWdodDo0OHB4fS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7bWF4LWhlaWdodDoxMDAlO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5VGl0bGV7Zm9udC1zaXplOjEuMnJlbTtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MS4yNTttYXJnaW4tYm90dG9tOjJweDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6Mn0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU4NTMgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5VGl0bGV7Zm9udC1zaXplOjEuNnJlbX0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheVRpdGxle2ZvbnQtc2l6ZToycmVtfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTE5MjAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5VGl0bGV7Zm9udC1zaXplOjIuNHJlbX0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YUNoYW5uZWwsLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFXZWJzaXRle2ZvbnQtc2l6ZToxLjJyZW07bWFyZ2luLXRvcDo0cHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplODUzIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhQ2hhbm5lbCwueXRtQ3JlYXRvckVuZHNjcmVlblNpemU4NTMgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFXZWJzaXRle2ZvbnQtc2l6ZToxLjZyZW19Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTI4MCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YUNoYW5uZWwsLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTI4MCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YVdlYnNpdGV7Zm9udC1zaXplOjEuOHJlbTttYXJnaW4tdG9wOjhweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxOTIwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhQ2hhbm5lbCwueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxOTIwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhV2Vic2l0ZXtmb250LXNpemU6MnJlbTttYXJnaW4tdG9wOjEycHh9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFDaGFubmVse2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4yKTtwYWRkaW5nLXRvcDo0cHg7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1saW5lLWNsYW1wOjN9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNjQwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhQ2hhbm5lbHstd2Via2l0LWxpbmUtY2xhbXA6Mn0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU1NzAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFDaGFubmVsey13ZWJraXQtbGluZS1jbGFtcDoxfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTM0NiAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YUNoYW5uZWwsLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNDI2IC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhQ2hhbm5lbCwueXRtQ3JlYXRvckVuZHNjcmVlblNpemU0NzAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFDaGFubmVsLC55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTUwNiAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YUNoYW5uZWx7ZGlzcGxheTpub25lfS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhV2Vic2l0ZXt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q2FsbFRvQWN0aW9ue2ZvbnQtd2VpZ2h0OjcwMDttYXJnaW4tdG9wOjRweDtmb250LXNpemU6MXJlbTt0cmFuc2l0aW9uOmFsbCAuMnN9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q2FsbFRvQWN0aW9uOmhvdmVye3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7Y3Vyc29yOnBvaW50ZXJ9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5QnV0dG9ue21hcmdpbi10b3A6NHB4O21hcmdpbi1ib3R0b206NHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTM0NiAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlCdXR0b257ZGlzcGxheTpub25lfS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50U2NyaW17cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9jazt6LWluZGV4OjY7b3BhY2l0eTowO3RyYW5zaXRpb246YWxsIC4yc30ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudFNjcmltQ2hhbm5lbHtib3JkZXItcmFkaXVzOjUwJX0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudFNjcmltQWN0aXZle29wYWNpdHk6LjI1fS55dHdBbmltYXRlZFN1YnNjcmliZUJ1dHRvbkhvc3R7d2lkdGg6MTAwJX0ueXR3QW5pbWF0ZWRTdWJzY3JpYmVCdXR0b25Db250ZW50Q29udGFpbmVye3dpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlci1yYWRpdXM6MThweH0ueXR3QW5pbWF0ZWRTdWJzY3JpYmVCdXR0b25GbGV4Q29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnR9Lnl0d0FuaW1hdGVkU3Vic2NyaWJlQnV0dG9uQ2FuQW5pbWF0ZXt0cmFuc2l0aW9uOndpZHRoIC41cyBlYXNlfS55dHdBbmltYXRlZFN1YnNjcmliZUJ1dHRvblN0YXRpY1dpZHRoIC55dHdBbmltYXRlZFN1YnNjcmliZUJ1dHRvbkZsZXhDb250YWluZXJ7d2lkdGg6YXV0b30ueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudEhvc3R7ZGlzcGxheTpibG9jaztjdXJzb3I6cG9pbnRlcjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246YWJzb2x1dGU7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTtib3gtc2hhZG93OjAgMCA0cHggcmdiYSgwLDAsMCwwLjYpO3RyYW5zaXRpb246YWxsIC4yczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt6LWluZGV4OjV9Lnl0bUNyZWF0b3JFbmRzY3JlZW5Sb3VuZGluZ1NtYWxsIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50SG9zdHtib3JkZXItcmFkaXVzOjRweH0ueXRtQ3JlYXRvckVuZHNjcmVlblJvdW5kaW5nTWVkaXVtIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50SG9zdHtib3JkZXItcmFkaXVzOjhweH0ueXRtQ3JlYXRvckVuZHNjcmVlblJvdW5kaW5nTGFyZ2UgLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRIb3N0e2JvcmRlci1yYWRpdXM6MTJweH0ueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudEhvc3RBY3RpdmV7Ym9yZGVyLWNvbG9yOiNmZmZ9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUb3BPdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt3aWR0aDoxMDAlO2hlaWdodDozMyV9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUaHVtYm5haWxUaXRsZXtjb2xvcjojZmZmO3Bvc2l0aW9uOnJlbGF0aXZlO2ZvbnQtc2l6ZToxLjJyZW07Zm9udC13ZWlnaHQ6NTAwO21hcmdpbjo2cHggOHB4IDA7bGluZS1oZWlnaHQ6MS4yNTt0ZXh0LXNoYWRvdzowIDFweCAwIHJnYmEoMCwwLDAsMC4zKTtkaXNwbGF5Oi13ZWJraXQtYm94O292ZXJmbG93OmhpZGRlbjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1saW5lLWNsYW1wOjI7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU2NDAgLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUaHVtYm5haWxUaXRsZXtmb250LXNpemU6MS40cmVtfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTg1MyAueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRodW1ibmFpbFRpdGxle2ZvbnQtc2l6ZToxLjZyZW07bWFyZ2luOjEwcHggMTJweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VGh1bWJuYWlsVGl0bGV7Zm9udC1zaXplOjJyZW07bWFyZ2luOjE0cHggMTZweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxOTIwIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VGh1bWJuYWlsVGl0bGV7Zm9udC1zaXplOjIuNHJlbTttYXJnaW46MThweCAyMHB4fS55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VGh1bWJuYWlse29iamVjdC1maXQ6Y292ZXJ9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUaW1lU3RhdHVze3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO3JpZ2h0OjB9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUaW1lU3RhdHVzIC55dEJhZGdlU2hhcGVIb3N0e2ZvbnQtc2l6ZTppbmhlcml0fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTg1MyAueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRpbWVTdGF0dXMgLnl0QmFkZ2VTaGFwZUhvc3R7cGFkZGluZzoycHggNHB4O21hcmdpbi1ib3R0b206MnB4O21hcmdpbi1yaWdodDoycHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTI4MCAueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRpbWVTdGF0dXMgLnl0QmFkZ2VTaGFwZUhvc3R7cGFkZGluZzo2cHggOHB4O21hcmdpbi1ib3R0b206OHB4O21hcmdpbi1yaWdodDo4cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTkyMCAueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRpbWVTdGF0dXMgLnl0QmFkZ2VTaGFwZUhvc3R7cGFkZGluZzoxMHB4IDEycHg7bWFyZ2luLWJvdHRvbToxNnB4O21hcmdpbi1yaWdodDoxNnB4fS55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VG9wR3JhZGllbnR7cG9zaXRpb246YWJzb2x1dGU7b3BhY2l0eTouODtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2IoMCwwLDApLHRyYW5zcGFyZW50KX0ueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFBsYXlsaXN0TGVuZ3RoT3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDt3aWR0aDoxMDAlO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzoycHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTg1MyAueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFBsYXlsaXN0TGVuZ3RoT3ZlcmxheXtwYWRkaW5nOjRweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RMZW5ndGhPdmVybGF5e3BhZGRpbmc6OHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTE5MjAgLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRQbGF5bGlzdExlbmd0aE92ZXJsYXl7cGFkZGluZzoxMnB4fS55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RMZW5ndGh7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpfS55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RJY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTttYXJnaW46MCAycHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplODUzIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RJY29ue21hcmdpbjowIDRweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RJY29ue21hcmdpbjowIDhweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxOTIwIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RJY29ue21hcmdpbjowIDEycHh9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRTY3JpbXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9jazt6LWluZGV4OjU7b3BhY2l0eTowO3RyYW5zaXRpb246YWxsIC4yc30ueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFNjcmltQWN0aXZle29wYWNpdHk6LjI1fS55dFBmcEF1dG9uYXZIb3N0e3BvaW50ZXItZXZlbnRzOm5vbmU7ZGlzcGxheTpibG9ja30ueXRQZnBBdXRvbmF2VmlzaWJsZXtwb2ludGVyLWV2ZW50czphdXRvO2JhY2tncm91bmQ6YmxhY2t9Lnl0UGZwQXV0b25hdlNjcmlte3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNik7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjb2xvcjp3aGl0ZTtwb2ludGVyLWV2ZW50czphdXRvfS55dFBmcEF1dG9uYXZIZWFkZXJ7Zm9udC1zaXplOjE0cHg7bWFyZ2luLWJvdHRvbTo4cHh9Lnl0UGZwQXV0b25hdlRpdGxle2ZvbnQtc2l6ZToyNHB4O2ZvbnQtd2VpZ2h0OjcwMDttYXJnaW4tYm90dG9tOjRweH0ueXRQZnBBdXRvbmF2QnlsaW5le2ZvbnQtc2l6ZToxNnB4O21hcmdpbi1ib3R0b206MjRweH0ueXRQZnBBdXRvbmF2QnlsaW5lLC55dFBmcEF1dG9uYXZUaXRsZXttYXgtd2lkdGg6ODAlO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRQZnBBdXRvbmF2UGxheUJ1dHRvbntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDo3MnB4O2hlaWdodDo3MnB4O21hcmdpbi1ib3R0b206MjRweDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Ym9yZGVyOjA7YmFja2dyb3VuZDpub25lO2NvbG9yOndoaXRlfS55dFBmcEF1dG9uYXZSaW5ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt3aWR0aDo3MnB4O2hlaWdodDo3MnB4fS55dFBmcEF1dG9uYXZQbGF5SWNvbnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O2ZpbGw6d2hpdGV9Lnl0UGZwQ29udHJvbHNIb3N0e2Rpc3BsYXk6YmxvY2s7cG9pbnRlci1ldmVudHM6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0ueXRQZnBDb250cm9sc0hvc3QgOmZvY3VzLXZpc2libGV7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAycHggIzNlYTZmZn0ueXRQZnBDb250cm9sc092ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7cG9pbnRlci1ldmVudHM6YXV0bzt0b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9ufS55dFBmcENvbnRyb2xzQ3JlYXRvckVuZHNjcmVlbkNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjJ9Lnl0UGZwQ29udHJvbHNGYWRlSW57cG9pbnRlci1ldmVudHM6YXV0b30ueXRQZnBDb250cm9sc0JpZ2JvYXJkLC55dFBmcENvbnRyb2xzQm90dG9tQmFyLC55dFBmcENvbnRyb2xzR3JhZGllbnRUb3AsLnl0UGZwQ29udHJvbHNQcm9ncmVzc0JhckNvbnRhaW5lciwueXRQZnBDb250cm9sc1ZpZGVvVGl0bGV7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMsdmlzaWJpbGl0eSAuMjVzfS55dFBmcENvbnRyb2xzT3ZlcmxheTpub3QoLnl0UGZwQ29udHJvbHNGYWRlSW4pIC55dFBmcENvbnRyb2xzQmlnYm9hcmQsLnl0UGZwQ29udHJvbHNPdmVybGF5Om5vdCgueXRQZnBDb250cm9sc0ZhZGVJbikgLnl0UGZwQ29udHJvbHNCb3R0b21CYXIsLnl0UGZwQ29udHJvbHNPdmVybGF5Om5vdCgueXRQZnBDb250cm9sc0ZhZGVJbikgLnl0UGZwQ29udHJvbHNHcmFkaWVudFRvcCwueXRQZnBDb250cm9sc092ZXJsYXk6bm90KC55dFBmcENvbnRyb2xzRmFkZUluKSAueXRQZnBDb250cm9sc1Byb2dyZXNzQmFyQ29udGFpbmVyLC55dFBmcENvbnRyb2xzT3ZlcmxheTpub3QoLnl0UGZwQ29udHJvbHNGYWRlSW4pIC55dFBmcENvbnRyb2xzVmlkZW9UaXRsZXtvcGFjaXR5OjA7dmlzaWJpbGl0eTpoaWRkZW59Lnl0UGZwQ29udHJvbHNHcmFkaWVudFRvcHt3aWR0aDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHJnYmEoMCwwLDAsLjgpLHJnYmEoMCwwLDAsLjYpLHJnYmEoMCwwLDAsMCkpO3BvaW50ZXItZXZlbnRzOm5vbmU7aGVpZ2h0OjQ5cHg7ei1pbmRleDo1fS55dFBmcENvbnRyb2xzVmlkZW9UaXRsZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cGFkZGluZzoxMnB4O21hcmdpbjowOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjp3aGl0ZTtmb250LXNpemU6MThweDtwb2ludGVyLWV2ZW50czpub25lO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRQZnBDb250cm9sc0xhcmdlUGxheUJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTt3aWR0aDo3NXB4O2hlaWdodDo3NXB4O2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjI7cGFkZGluZzowO2JvcmRlcjowO2JhY2tncm91bmQtY29sb3I6dW5zZXR9Lnl0UGZwQ29udHJvbHNMYXJnZVBsYXlCdXR0b25JY29uQmd7ZmlsbC1vcGFjaXR5Oi44O3RyYW5zaXRpb246ZmlsbCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxmaWxsLW9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0UGZwQ29udHJvbHNPdmVybGF5OmhvdmVyIC55dFBmcENvbnRyb2xzTGFyZ2VQbGF5QnV0dG9uSWNvbkJne2ZpbGwtb3BhY2l0eToxO3RyYW5zaXRpb246ZmlsbCAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxmaWxsLW9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0UGZwQ29udHJvbHNWaWRlb1dhbGxFbmRzY3JlZW57cGFkZGluZzo0OHB4IDA7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3otaW5kZXg6Mn0ueXRQZnBDb250cm9sc0F1dG9uYXZ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDoyfS55dFBmcENvbnRyb2xzUHJvZ3Jlc3NCYXJDb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjQwcHg7bGVmdDowO3JpZ2h0OjA7cG9pbnRlci1ldmVudHM6YXV0bzt6LWluZGV4OjN9Lnl0UGZwQ29udHJvbHNCb3R0b21CYXJ7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7aGVpZ2h0OjQwcHg7cGFkZGluZy1sZWZ0OjNweDtjb2xvcjp3aGl0ZTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3BvaW50ZXItZXZlbnRzOmF1dG87ei1pbmRleDoyfS55dFBmcENvbnRyb2xzTGVmdENvbnRyb2xzLC55dFBmcENvbnRyb2xzUmlnaHRDb250cm9sc3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFBmcENvbnRyb2xzVm9sdW1lQ29udHJvbHN7bWF4LXdpZHRoOjExMnB4fS55dFBmcENvbnRyb2xzVGltZURpc3BsYXkueXRQZnBDb250cm9sc1RpbWVEaXNwbGF5e2NvbG9yOndoaXRlO2ZvbnQtc2l6ZToxLjRyZW07bWFyZ2luLWxlZnQ6OHB4Oy1tb3otdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfUBtZWRpYSAobWF4LXdpZHRoOjM0OXB4KXsueXRQZnBDb250cm9sc1RpbWVEaXNwbGF5Lnl0UGZwQ29udHJvbHNUaW1lRGlzcGxheXtkaXNwbGF5Om5vbmV9fUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KXsueXRQZnBDb250cm9sc0NhcHRpb25zQnV0dG9ue2Rpc3BsYXk6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6MjQ5cHgpey55dFBmcENvbnRyb2xzVm9sdW1lQ29udHJvbHMueXRQZnBDb250cm9sc1ZvbHVtZUNvbnRyb2xze2Rpc3BsYXk6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6MTk5cHgpey55dFBmcENvbnRyb2xzU2V0dGluZ3NCdXR0b257ZGlzcGxheTpub25lfX0ueXRQZnBDb250cm9sc0hpZGRlblNlZWtCdXR0b24ueXRQZnBDb250cm9sc0hpZGRlblNlZWtCdXR0b257aGVpZ2h0OjEycHg7d2lkdGg6MTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlfS55dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJIb3N0e3Bvc2l0aW9uOnJlbGF0aXZlO2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7Ym9yZGVyLXJhZGl1czo4cHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQtY29sb3I6IzAwMDtkaXNwbGF5OmJsb2NrfS55dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJIb3N0OmZvY3VzLXZpc2libGUgLnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlck92ZXJsYXksLnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlckhvc3Q6Zm9jdXMtd2l0aGluIC55dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJPdmVybGF5LC55dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJIb3N0OmhvdmVyIC55dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJPdmVybGF5e29wYWNpdHk6MX0ueXRQZnBFbmRzY3JlZW5WaWRlb1JlbmRlcmVyVGh1bWJuYWlse29iamVjdC1maXQ6Y292ZXI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjB9Lnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlck92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQ7Y29sb3I6d2hpdGV9Lnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlck92ZXJsYXlUaXRsZUJ5bGluZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtoZWlnaHQ6NjBweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudChyZ2JhKDAsMCwwLC44KSxyZ2JhKDAsMCwwLC42KSA2MCUscmdiYSgwLDAsMCwwKSk7cGFkZGluZzo4cHh9Lnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlclRpdGxle2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxOHB4O2NvbG9yOndoaXRlfS55dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJCeWxpbmV7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjE2cHg7bWFyZ2luLXRvcDo0cHg7Y29sb3I6d2hpdGV9Lnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlckR1cmF0aW9ue3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo4cHg7cmlnaHQ6OHB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuOCk7Ym9yZGVyLXJhZGl1czo0cHg7cGFkZGluZzoycHggNHB4O2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxMnB4O2NvbG9yOndoaXRlfS55dFBmcE1vcmVWaWRlb3NIb3N0e2Rpc3BsYXk6YmxvY2s7cG9pbnRlci1ldmVudHM6bm9uZX1AbWVkaWEgKG1heC1oZWlnaHQ6Mjg5cHgpey55dFBmcE1vcmVWaWRlb3NIb3N0e2Rpc3BsYXk6bm9uZX19Lnl0UGZwTW9yZVZpZGVvc092ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjQ4cHg7bGVmdDoxMnB4O3JpZ2h0OjEycHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDEyLDEyLDEyLC44KTt6LWluZGV4OjI7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BvaW50ZXItZXZlbnRzOmF1dG87Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6OHB4IDA7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS55dFBmcE1vcmVWaWRlb3NIZWFkZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7d2lkdGg6MTAwJTtwYWRkaW5nOjAgMTZweDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0UGZwTW9yZVZpZGVvc1RpdGxle2NvbG9yOndoaXRlO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoyMHB4O21hcmdpbjowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRQZnBNb3JlVmlkZW9zQ2xvc2VCdXR0b257cGFkZGluZzo0cHg7bWFyZ2luLXJpZ2h0Oi00cHg7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDpub25lO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3JkZXItcmFkaXVzOjUwJX0ueXRQZnBNb3JlVmlkZW9zQ2xvc2VCdXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4xKX0ueXRQZnBNb3JlVmlkZW9zQ2xvc2VJY29ue2NvbG9yOndoaXRlO2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0UGZwTW9yZVZpZGVvc1ZpZGVvTGlzdENvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO3BhZGRpbmc6MCAxMnB4IDRweCAxMnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7b3ZlcmZsb3c6aGlkZGVufS55dFBmcE1vcmVWaWRlb3NWaWRlb0xpc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7b3ZlcmZsb3cteDphdXRvO2hlaWdodDoxMDAlOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtzY3JvbGxiYXItd2lkdGg6bm9uZTtzY3JvbGwtYmVoYXZpb3I6c21vb3RofS55dFBmcE1vcmVWaWRlb3NWaWRlb0xpc3Q6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0ueXRQZnBNb3JlVmlkZW9zVmlkZW9MaXN0ey1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTtzY3JvbGwtc25hcC10eXBlOnggbWFuZGF0b3J5fS55dFBmcE1vcmVWaWRlb3NWaWRlb0l0ZW17aGVpZ2h0OjA7bWFyZ2luOjAgNnB4Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtiYWNrZ3JvdW5kOmJsYWNrO3Njcm9sbC1zbmFwLWFsaWduOnN0YXJ0O3BhZGRpbmctYm90dG9tOjEzNXB4O3dpZHRoOjI0MHB4O21pbi13aWR0aDoyNDBweH1AbWVkaWEgKG1heC13aWR0aDoxMDQwcHgpey55dFBmcE1vcmVWaWRlb3NWaWRlb0l0ZW17cGFkZGluZy1ib3R0b206Y2FsYygxNC4wNjI1JSAtIDYuNzVweCk7d2lkdGg6Y2FsYygyNSUgLSAxMnB4KTttaW4td2lkdGg6Y2FsYygyNSUgLSAxMnB4KX19QG1lZGlhIChtYXgtd2lkdGg6NzgwcHgpey55dFBmcE1vcmVWaWRlb3NWaWRlb0l0ZW17cGFkZGluZy1ib3R0b206Y2FsYygxOC41NjI1JSAtIDMuMzc1cHgpO3dpZHRoOmNhbGMoMzMlIC0gNnB4KTttaW4td2lkdGg6Y2FsYygzMyUgLSA2cHgpfX1AbWVkaWEgKG1heC13aWR0aDo1MzRweCl7Lnl0UGZwTW9yZVZpZGVvc1ZpZGVvSXRlbXtwYWRkaW5nLWJvdHRvbTpjYWxjKDI4LjEyNSUgLSAzLjM3NXB4KTt3aWR0aDpjYWxjKDUwJSAtIDZweCk7bWluLXdpZHRoOmNhbGMoNTAlIC0gNnB4KX19QG1lZGlhIChtYXgtd2lkdGg6Mjg4cHgpey55dFBmcE1vcmVWaWRlb3NWaWRlb0l0ZW17cGFkZGluZy1ib3R0b206Y2FsYyg1Ni4yNSUgLSAzLjM3NXB4KTt3aWR0aDpjYWxjKDEwMCUgLSA2cHgpO21pbi13aWR0aDpjYWxjKDEwMCUgLSA2cHgpfX0ueXRQZnBNb3JlVmlkZW9zVmlkZW9JdGVtOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OmF1dG99Lnl0UGZwTW9yZVZpZGVvc1ZpZGVvSXRlbTpsYXN0LWNoaWxke21hcmdpbi1yaWdodDphdXRvfS55dFBmcE1vcmVWaWRlb3NQYWRkbGVMZWZ0LC55dFBmcE1vcmVWaWRlb3NQYWRkbGVSaWdodHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDMzLDMzLDMzLC44KTtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjUwJTtjb2xvcjp3aGl0ZTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ei1pbmRleDoyO2JveC1zaGFkb3c6MCA0cHggNHB4IHJnYmEoMCwwLDAsLjI1KX0ueXRQZnBNb3JlVmlkZW9zUGFkZGxlTGVmdDpob3ZlciwueXRQZnBNb3JlVmlkZW9zUGFkZGxlUmlnaHQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2IoNTAsNTAsNTApfS55dFBmcE1vcmVWaWRlb3NQYWRkbGVMZWZ0e2xlZnQ6MH0ueXRQZnBNb3JlVmlkZW9zUGFkZGxlUmlnaHR7cmlnaHQ6MH0ueXRQZnBNb3JlVmlkZW9zUGFkZGxlSWNvbntoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dFBmcE1vcmVWaWRlb3NNb3JlVmlkZW9zQnV0dG9ue3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo1NnB4O2xlZnQ6MTJweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpO2NvbG9yOndoaXRlO2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MThweDtwYWRkaW5nOjhweCAxNnB4O2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjUwMDtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjU7cG9pbnRlci1ldmVudHM6YXV0bzt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9Lnl0UGZwTW9yZVZpZGVvc01vcmVWaWRlb3NCdXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4xKX0ueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVySG9zdHtwb3NpdGlvbjpyZWxhdGl2ZTtmbGV4LXNocmluazowO2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7Ym9yZGVyLXJhZGl1czo4cHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQtY29sb3I6IzAwMDtkaXNwbGF5OmJsb2NrfS55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJIb3N0OmZvY3VzLXZpc2libGUgLnl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlck92ZXJsYXksLnl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlckhvc3Q6Zm9jdXMtd2l0aGluIC55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJPdmVybGF5LC55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJIb3N0OmhvdmVyIC55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJPdmVybGF5e29wYWNpdHk6MX0ueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyVGh1bWJuYWlse3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn0ueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyT3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlLWluLW91dDtjb2xvcjp3aGl0ZX0ueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyT3ZlcmxheVRpdGxle3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2hlaWdodDo2MHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHJnYmEoMCwwLDAsLjgpLHJnYmEoMCwwLDAsLjYpIDYwJSxyZ2JhKDAsMCwwLDApKTtwYWRkaW5nOjhweH0ueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyVGl0bGV7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE4cHg7bWF4LWhlaWdodDozNnB4O2NvbG9yOndoaXRlO292ZXJmbG93OmhpZGRlbn0ueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyQm90dG9tT3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjgpO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp3aGl0ZTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlckljb257ZmlsbDpjdXJyZW50Q29sb3I7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDttYXJnaW4tcmlnaHQ6NHB4fS55dFBmcFZpZGVvV2FsbEVuZHNjcmVlbkhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjB9Lnl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuVmlzaWJsZXtib3R0b206MDtiYWNrZ3JvdW5kLWNvbG9yOnJnYigxMiwxMiwxMil9Lnl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuSXNPYnNjdXJlZHt2aXNpYmlsaXR5OmhpZGRlbn0ueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5WaWRlb0xpc3RDb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwb2ludGVyLWV2ZW50czphdXRvO3BhZGRpbmc6MTJweDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuVmlkZW9MaXN0e2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwYWRkaW5nOjB9Lnl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuUGFkZGxlTGVmdCwueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5QYWRkbGVSaWdodHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDMzLDMzLDMzLC45KTtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjUwJTtjb2xvcjp3aGl0ZTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ei1pbmRleDoyO2JveC1zaGFkb3c6MCA0cHggNHB4IHJnYmEoMCwwLDAsLjI1KX0ueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5QYWRkbGVMZWZ0OmhvdmVyLC55dFBmcFZpZGVvV2FsbEVuZHNjcmVlblBhZGRsZVJpZ2h0OmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiKDUwLDUwLDUwKX0ueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5QYWRkbGVMZWZ0e2xlZnQ6OHB4fS55dFBmcFZpZGVvV2FsbEVuZHNjcmVlblBhZGRsZVJpZ2h0e3JpZ2h0OjhweH0ueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5QYWRkbGVJY29ue2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuVmlkZW9JdGVte3Bvc2l0aW9uOmFic29sdXRlOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0ueXRQbGF5ZXJDb250cm9sc1BsYXllckFjdGlvbkluZGljYXRvckhvc3R7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7cG9pbnRlci1ldmVudHM6bm9uZTt6LWluZGV4Ojd9Lnl0UGxheWVyQ29udHJvbHNQbGF5ZXJBY3Rpb25JbmRpY2F0b3JBY3Rpb257d2lkdGg6NjBweDtoZWlnaHQ6NjBweDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC42KTtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7b3BhY2l0eTowO2FuaW1hdGlvbjphY3Rpb24tZmFkZS1vdXQgLjVzIGxpbmVhciAxIG5vcm1hbCBmb3J3YXJkc30ueXRQbGF5ZXJDb250cm9sc1BsYXllckFjdGlvbkluZGljYXRvckljb257d2lkdGg6MzZweDtoZWlnaHQ6MzZweDtmaWxsOiNmZmZ9QGtleWZyYW1lcyBhY3Rpb24tZmFkZS1vdXR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoMil9fS55dHdQbGF5ZXJUaW1lRGlzcGxheUhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW59Lnl0d1BsYXllclRpbWVEaXNwbGF5VGltZUNodW5rc3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHdQbGF5ZXJUaW1lRGlzcGxheUxpdmVEb3Q6YmVmb3Jle2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6NnB4O3dpZHRoOjZweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTttYXJnaW4tcmlnaHQ6NHB4fS55dHdQbGF5ZXJUaW1lRGlzcGxheUxpdmVEb3QueXR3UGxheWVyVGltZURpc3BsYXlMaXZlSGVhZDpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDIyNSwwLDQ1LDAuOSk7b3BhY2l0eToxfS55dHdQbGF5ZXJUaW1lRGlzcGxheVRpbWVEZWxpbWl0ZXJ7Y29sb3I6I2ZmZjttYXJnaW46MCA0cHg7b3BhY2l0eTouN30ueXR3UGxheWVyVGltZURpc3BsYXlUaW1lU2Vjb25ke29wYWNpdHk6Ljd9Lnl0d1BsYXllclRpbWVEaXNwbGF5Q2hhcHRlclRleHR7bWFyZ2luLWxlZnQ6OHB4fS55dHdQbGF5ZXJUaW1lRGlzcGxheVBsYXllckJhckFjdGlvbkNvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHdQbGF5ZXJUaW1lRGlzcGxheVBsYXllckJhckJ1dHRvbi55dHdQbGF5ZXJUaW1lRGlzcGxheVBpbGx7bWFyZ2luOjAgMCAwIDhweH0ueXR3UGxheWVyVGltZURpc3BsYXlQbGF5ZXJCYXJCdXR0b257b3ZlcmZsb3c6aGlkZGVuO21heC13aWR0aDoyNDBweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHdQbGF5ZXJUaW1lRGlzcGxheUNoZXZyb257Y29sb3I6I2ZmZjtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4O21hcmdpbi1yaWdodDotNHB4fS55dHdQbGF5ZXJUaW1lRGlzcGxheVBpbGx7aGVpZ2h0OjI0cHg7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6NHB4IDZweDtib3JkZXItcmFkaXVzOjE2cHg7Zm9udC1zaXplOjEuNHJlbTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4zKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0d1BsYXllclRpbWVEaXNwbGF5UGlsbCBidXR0b257dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHdQbGF5ZXJUaW1lRGlzcGxheVBpbGwgc3Zne2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXR3UGxheWVyVGltZURpc3BsYXlQaWxse21hcmdpbi1sZWZ0OjE2cHh9QG1lZGlhIChtYXgtaGVpZ2h0OjIyMXB4KXsueXR3UGxheWVyVGltZURpc3BsYXlGdWxsc2NyZWVuQ29udHJvbHNBbHdheXNPbntkaXNwbGF5Om5vbmV9fS55dHdQbGF5ZXJUaW1lRGlzcGxheVNjcmVlblJlYWRlck9ubHl7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MXB4O2hlaWdodDoxcHg7cGFkZGluZzowO21hcmdpbjotMXB4O292ZXJmbG93OmhpZGRlbjtjbGlwOnJlY3QoMCwwLDAsMCk7d2hpdGUtc3BhY2U6bm93cmFwO2JvcmRlci13aWR0aDowfS55dHdQbGF5ZXJTZWVrT3ZlcmxheUhvc3R7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BvaW50ZXItZXZlbnRzOm5vbmU7ZGlyZWN0aW9uOmx0cn0ueXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb257cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO29wYWNpdHk6MH0ueXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb25CYWNre2xlZnQ6NDhweH0ueXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb25Gb3J3YXJke3JpZ2h0OjQ4cHh9Lnl0d1BsYXllclNlZWtPdmVybGF5RHVyYXRpb257Y29sb3I6I2ZmZjt0ZXh0LXNoYWRvdzowIDAgMXB4IHJnYmEoMCwwLDAsMC44KTt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsueXR3UGxheWVyU2Vla092ZXJsYXlEdXJhdGlvbntmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDB9fS55dHdQbGF5ZXJTZWVrT3ZlcmxheUFuaW1hdGlvbkJhY2sgLnl0d1BsYXllclNlZWtPdmVybGF5QXJyb3d7bWFyZ2luLXJpZ2h0OjIwcHh9Lnl0d1BsYXllclNlZWtPdmVybGF5QW5pbWF0aW9uRm9yd2FyZCAueXR3UGxheWVyU2Vla092ZXJsYXlBcnJvd3ttYXJnaW4tbGVmdDoyMHB4fS55dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93IC55dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93U3Zne2Rpc3BsYXk6YmxvY2t9Lnl0d1BsYXllclNlZWtPdmVybGF5QXJyb3cgLnl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dQYXRoe2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgLjVweCByZ2JhKDAsMCwwLDAuOCkpfS55dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93UGVyc2lzdGVudHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9Lnl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dBZGRpdGlvbmFse3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNsYXRlOjAgLTUwJX0ueXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb25CYWNrIC55dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93QWRkaXRpb25hbHtsZWZ0OjB9Lnl0d1BsYXllclNlZWtPdmVybGF5QW5pbWF0aW9uRm9yd2FyZCAueXR3UGxheWVyU2Vla092ZXJsYXlBcnJvd0FkZGl0aW9uYWx7cmlnaHQ6MH0ueXR3UGxheWVyRW5kc2NyZWVuSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdQbGF5ZXJFbmRzY3JlZW5Db250YWluZXJ7Y29sb3I6I2ZmZn0ueXR3UGxheWVyRW5kc2NyZWVuUGxheWVyRW5kc2NyZWVue3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjMpO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXR3UGxheWVyRW5kc2NyZWVuUGxheWVyRW5kc2NyZWVuW2RhdGEtaGFzLXRpbWVyLWNvdW50ZG93bj10cnVlXXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7cGFkZGluZzo4cHggMTZweDttYXJnaW46MCBhdXRvO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lnl0d1BsYXllckVuZHNjcmVlblBsYXllckVuZHNjcmVlbltkYXRhLWhhcy10aW1lci1jb3VudGRvd249dHJ1ZV17cGFkZGluZzo4cHh9fVtkaXI9cnRsXSAueXR3UGxheWVyRW5kc2NyZWVuUGxheWVyRW5kc2NyZWVuW2RhdGEtaGFzLXRpbWVyLWNvdW50ZG93bj10cnVlXXtkaXJlY3Rpb246cnRsfS55dHdQbGF5ZXJFbmRzY3JlZW5Ub3BQYW5lbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO3dpZHRoOjEwMCU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lnl0d1BsYXllckVuZHNjcmVlblRvcFBhbmVse2Rpc3BsYXk6bm9uZX19Lnl0d1BsYXllckVuZHNjcmVlbkhlYWRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MTZweH0ueXR3UGxheWVyRW5kc2NyZWVuQ291bnRkb3duQ29udGFpbmVye2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTttYXJnaW4tYm90dG9tOjEycHg7bWFyZ2luLXRvcDo0cHh9QG1lZGlhIChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXsueXR3UGxheWVyRW5kc2NyZWVuQ291bnRkb3duQ29udGFpbmVye21hcmdpbi1ib3R0b206OHB4fX0ueXR3UGxheWVyRW5kc2NyZWVuQ291bnRkb3duTnVtYmVye2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojZmZmfS55dHdQbGF5ZXJFbmRzY3JlZW5DdWVkVmlkZW9Db250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy1tb3otYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lnl0d1BsYXllckVuZHNjcmVlbkN1ZWRWaWRlb0NvbnRhaW5lcjpmaXJzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MTJweH0ueXR3UGxheWVyRW5kc2NyZWVuQ3VlZFRodW1ibmFpbE92ZXJsYXl7d2lkdGg6NTAlO2ZsZXgtYmFzaXM6Y2FsYyg1MCUgLSA2cHgpO3Bvc2l0aW9uOnJlbGF0aXZlfUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lnl0d1BsYXllckVuZHNjcmVlbkN1ZWRUaHVtYm5haWxPdmVybGF5e2ZsZXgtYmFzaXM6Y2FsYyg1MCUgLSA0cHgpfX0ueXR3UGxheWVyRW5kc2NyZWVuQ3VlZFRodW1ibmFpbE92ZXJsYXk+Lnl0d1BsYXllckVuZHNjcmVlblRodW1ibmFpbENvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDphdXRvO3BhZGRpbmctYm90dG9tOjU2LjI1JX0ueXR3UGxheWVyRW5kc2NyZWVuVGh1bWJuYWlsT3ZlcmxheXN7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7cmlnaHQ6MH0ueXR3UGxheWVyRW5kc2NyZWVuVmlkZW9JbmZve3dpZHRoOjUwJTtmbGV4LWJhc2lzOmNhbGMoNTAlIC0gNnB4KX1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey55dHdQbGF5ZXJFbmRzY3JlZW5WaWRlb0luZm97ZmxleC1iYXNpczpjYWxjKDUwJSAtIDRweCl9fS55dHdQbGF5ZXJFbmRzY3JlZW5WaWRlb1RpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d1BsYXllckVuZHNjcmVlblZpZGVvVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXR3UGxheWVyRW5kc2NyZWVuVmlkZW9UaXRsZXttYXgtaGVpZ2h0OjRyZW07Y29sb3I6I2ZmZjttYXJnaW4tYm90dG9tOjRweH0ueXR3UGxheWVyRW5kc2NyZWVuVmlkZW9BdXRob3J7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpfS55dHdQbGF5ZXJFbmRzY3JlZW5CdXR0b25Db250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS55dHdQbGF5ZXJFbmRzY3JlZW5BY3Rpb25CdXR0b257d2lkdGg6MTAwJX0ueXR3UGxheWVyRW5kc2NyZWVuQWN0aW9uQnV0dG9uPjpmaXJzdC1jaGlsZHt3aWR0aDoxMDAlfS55dHdQbGF5ZXJFbmRzY3JlZW5BY3Rpb25CdXR0b246Zmlyc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjEycHh9Lnl0bUN1c3RvbUNvbnRyb2xIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0bUN1c3RvbUNvbnRyb2xIb3N0IDpmb2N1cy12aXNpYmxle2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMnB4ICMzZWE2ZmZ9Lnl0bUVtYmVkc0luZm9QYW5lbFJlbmRlcmVySG9zdHtjb2xvcjojZmZmO3BhZGRpbmc6MTJweCAwIDAgMTJweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjI7dG9wOjUycHg7bWluLXdpZHRoOjEzMHB4O21heC13aWR0aDptaW4oNTAlIC0gNjRweCwyNzJweCl9Lnl0bUVtYmVkc0luZm9QYW5lbFJlbmRlcmVySG9zdEF1dG9oaWRle2FuaW1hdGlvbjpmYWRlIDNzIGVhc2UtaW4gMTBzIGZvcndhcmRzO2FuaW1hdGlvbi1maWxsLW1vZGU6Zm9yd2FyZHN9QG1lZGlhIChtYXgtYXNwZWN0LXJhdGlvOjMvNCl7Lnl0bUVtYmVkc0luZm9QYW5lbFJlbmRlcmVySG9zdFRvcENvbnRyb2xzU3RhY2tlZEluUG9ydHJhaXR7dG9wOjExMnB4fX0ueXRtRW1iZWRzSW5mb1BhbmVsUmVuZGVyZXJIaWRkZW57ZGlzcGxheTpub25lfS55dG1FbWJlZHNJbmZvUGFuZWxSZW5kZXJlckJ1dHRvbnstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3RleHQtYWxpZ246bGVmdDtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO2JvcmRlci1sZWZ0OjRweCBzb2xpZCAjM2VhNmZmO2JvcmRlci1yYWRpdXM6NHB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21heC13aWR0aDozMTJweDtwYWRkaW5nOjhweDt0ZXh0LWRlY29yYXRpb246bm9uZX0ueXRtRW1iZWRzSW5mb1BhbmVsUmVuZGVyZXJUZXh0e2ZvbnQtc2l6ZToxLjNyZW07cGFkZGluZy1sZWZ0OjhweDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dG1FbWJlZHNJbmZvUGFuZWxSZW5kZXJlclRleHR7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRtRW1iZWRzSW5mb1BhbmVsUmVuZGVyZXJUZXh0e21heC1oZWlnaHQ6NHJlbX1Aa2V5ZnJhbWVzIGZhZGV7dG97b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmV9fS55dEVtYmVkc0luZm9QYW5lbERldGFpbHNWaWV3TW9kZWxCb2R5VGV4dHtwYWRkaW5nOjAgMTJweCAxMnB4IDEycHg7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0QXV0b2Nyb3BCdXR0b25Ib3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTAwJTttYXJnaW4tdG9wOjYwcHh9Lnl0QXV0b2Nyb3BCdXR0b25WaXNpYmxle3Zpc2liaWxpdHk6dmlzaWJsZX0ueXRBdXRvY3JvcEJ1dHRvbkhpZGRlbnt2aXNpYmlsaXR5OmhpZGRlbn0ueXRBdXRvY3JvcEJ1dHRvbkF1dG9Dcm9wQnV0dG9ue2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjcpO2JhY2tncm91bmQtY29sb3I6cmdiYSg0MCw0MCw0MCwwLjYpO2JvcmRlci1yYWRpdXM6MThweH0ueXRGdWxsc2NyZWVuVmlkZW9SZWNvbW1lbmRhdGlvbnNIb3N0ey1tb3otYm94LWZsZXg6MTtmbGV4OjE7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7b3ZlcmZsb3cteDphdXRvfUBtZWRpYSBub3QgKHBvaW50ZXI6ZmluZSl7Lnl0RnVsbHNjcmVlblZpZGVvUmVjb21tZW5kYXRpb25zSG9zdHstbXMtb3ZlcmZsb3ctc3R5bGU6bm9uZTtzY3JvbGxiYXItd2lkdGg6bm9uZX0ueXRGdWxsc2NyZWVuVmlkZW9SZWNvbW1lbmRhdGlvbnNIb3N0Ojotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5Om5vbmV9fUBtZWRpYSAocG9pbnRlcjpmaW5lKXsueXRGdWxsc2NyZWVuVmlkZW9SZWNvbW1lbmRhdGlvbnNIb3N0e292ZXJmbG93LXk6YXV0b30ueXRGdWxsc2NyZWVuVmlkZW9SZWNvbW1lbmRhdGlvbnNIb3N0Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDoxNnB4fS55dEZ1bGxzY3JlZW5WaWRlb1JlY29tbWVuZGF0aW9uc0hvc3Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2hlaWdodDo1NnB4O2JvcmRlci1yYWRpdXM6OHB4O2JvcmRlcjo0cHggc29saWQgdHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jbGlwOmNvbnRlbnQtYm94O2JhY2tncm91bmQtY29sb3I6IzYwNjA2MH0ueXRGdWxsc2NyZWVuVmlkZW9SZWNvbW1lbmRhdGlvbnNIb3N0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiM5MDkwOTB9fS55dEZ1bGxzY3JlZW5WaWRlb1JlY29tbWVuZGF0aW9uc1JlY29tbWVuZGF0aW9ue3dpZHRoOjIwMHB4O21pbi13aWR0aDoyMDBweDttYXJnaW46MCA4cHg7Y29sb3I6I2ZmZn0ueXR3UGxheWVyRnVsbHNjcmVlbkNvbnRyb2xzSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdQbGF5ZXJGdWxsc2NyZWVuVG9wQ29udHJvbHNIb3N0e3BhZGRpbmc6MTJweDtjb2xvcjojZmZmO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6Nn0ueXR3UGxheWVyRnVsbHNjcmVlblRvcENvbnRyb2xzRnVsbHNjcmVlbkNvbnRyb2xzVmlkZW9UaXRsZXttYXJnaW46MDtjb2xvcjojZmZmfS55dHdQbGF5ZXJGdWxsc2NyZWVuVG9wQ29udHJvbHNGdWxsc2NyZWVuQ2xvc2VCdXR0b25XcmFwcGVye21hcmdpbi10b3A6LThweDttYXJnaW4tbGVmdDphdXRvfS55dG1QYWlkQ29udGVudE92ZXJsYXlIb3N0e2NvbG9yOiNmZmY7YW5pbWF0aW9uOmZhZGUgM3MgZWFzZS1pbiAyMHMgZm9yd2FyZHM7YW5pbWF0aW9uLWZpbGwtbW9kZTpmb3J3YXJkcztwYWRkaW5nOjEycHggMCAxMnB4IDEycHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0bVBhaWRDb250ZW50T3ZlcmxheUhpZGRlbntkaXNwbGF5Om5vbmV9Lnl0bVBhaWRDb250ZW50T3ZlcmxheUxpbmt7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO2JvcmRlci1sZWZ0OjRweCBzb2xpZCAjM2VhNmZmO2JvcmRlci1yYWRpdXM6NHB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21heC13aWR0aDozMTJweDtwYWRkaW5nOjhweDt0ZXh0LWRlY29yYXRpb246bm9uZX0ueXRtUGFpZENvbnRlbnRPdmVybGF5VGV4dHtmb250LXNpemU6MS4zcmVtO3BhZGRpbmctbGVmdDo4cHh9QGtleWZyYW1lcyBmYWRle3Rve29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lfX0ucGxheWVyLWNvbnRyb2xzLWJvdHRvbXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MzBweDt6LWluZGV4OjI7aGVpZ2h0OjQ0cHh9LnBsYXllci1jb250cm9scy1ib3R0b20gLnBsYXllci1ib3R0b20tY29udHJvbHMtZnVsbHNjcmVlbi1pY29uLXZpc2libGUtYXJlYXstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MzZweDtoZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjUwJTtwYWRkaW5nOjZweDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4zKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9LnBsYXllci1jb250cm9scy1ib3R0b20gLnBsYXllci1ib3R0b20tY29udHJvbHMtZnVsbHNjcmVlbi1pY29uLXZpc2libGUtYXJlYSBidXR0b257dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS5wbGF5ZXItY29udHJvbHMtYm90dG9tIC5wbGF5ZXItYm90dG9tLWNvbnRyb2xzLWZ1bGxzY3JlZW4taWNvbi12aXNpYmxlLWFyZWEgc3Zne2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ucGxheWVyLWNvbnRyb2xzLWJvdHRvbS5wbGF5ZXItY29udHJvbHMtYm90dG9tLWxlZnR7bGVmdDoxMnB4O3JpZ2h0Ojc4cHh9LnBsYXllci1jb250cm9scy1ib3R0b20ucGxheWVyLWNvbnRyb2xzLWJvdHRvbS1yaWdodHtyaWdodDoyNHB4fS5wbGF5ZXItY29udHJvbHMtYm90dG9tIC5pY29uLWJ1dHRvbi5mdWxsc2NyZWVuLWljb257ZGlzcGxheTpibG9jazstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7aGVpZ2h0OjQ4cHg7d2lkdGg6NDhweDtwYWRkaW5nOjZweH1ib2R5W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAucGxheWVyLWNvbnRyb2xzLWJvdHRvbXtib3R0b206NDRweH1ib2R5W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAuZW5hYmxlLWZ1bGxzY3JlZW4tY29udHJvbHMgLnBsYXllci1jb250cm9scy1ib3R0b217Ym90dG9tOjc0cHh9Ym9keVtmYXV4LWZ1bGxzY3JlZW49dHJ1ZV0gLmVuYWJsZS1mdWxsc2NyZWVuLWNvbnRyb2xzLmZzLXdhdGNoLXN5c3RlbSAucGxheWVyLWNvbnRyb2xzLWJvdHRvbXtib3R0b206OTRweH0ueXR3UGxheWVyTWlkZGxlQ29udHJvbHNIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS55dHdQbGF5ZXJNaWRkbGVDb250cm9sc0ExMXlTZWVrQnV0dG9ue3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MDtoZWlnaHQ6MTJweDt3aWR0aDoxMnB4fXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt3aWR0aDoxMDAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3otaW5kZXg6Nn15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUucHJldmVudC1jb250cm9scy1jb2xsaXNpb257d2lkdGg6LW1vei1maXQtY29udGVudDt3aWR0aDpmaXQtY29udGVudDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSl9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5pY29uLWJ1dHRvbntoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3BhZGRpbmc6NnB4O2JvcmRlci1yYWRpdXM6MjRweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKX15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLmljb24tYnV0dG9uPmMzLWljb257aGVpZ2h0OjMycHg7d2lkdGg6MzJweH15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLnBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LWJ1dHRvbntoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3BhZGRpbmc6NnB4O2JhY2tncm91bmQ6bm9uZX15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLnBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LWJ1dHRvbiBjMy1pY29ue2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5wbGF5ZXItbWlkZGxlLWNvbnRyb2xzLXByZXYtbmV4dC1idXR0b24gLnBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LXZpc2libGUtYXJlYXstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7aGVpZ2h0OjM2cHg7d2lkdGg6MzZweDtwYWRkaW5nOjZweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4zKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5wbGF5ZXItbWlkZGxlLWNvbnRyb2xzLXByZXYtbmV4dC1idXR0b24gLnBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LXZpc2libGUtYXJlYSBidXR0b257dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAucGxheWVyLW1pZGRsZS1jb250cm9scy1wcmV2LW5leHQtYnV0dG9uIC5wbGF5ZXItbWlkZGxlLWNvbnRyb2xzLXByZXYtbmV4dC12aXNpYmxlLWFyZWEgc3Zne2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLmljb24tYnV0dG9uLmVuZHNjcmVlbi1yZXBsYXktYnV0dG9ue2hlaWdodDphdXRvO3dpZHRoOmF1dG87Ym9yZGVyLXJhZGl1czo1NnB4fXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAuaWNvbi1idXR0b24uZW5kc2NyZWVuLXJlcGxheS1idXR0b24+YzMtaWNvbntoZWlnaHQ6NDBweDt3aWR0aDo0MHB4O3BhZGRpbmc6OHB4fXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAucGxheWVyLWNvbnRyb2wtcGxheS1wYXVzZS1pY29uLmljb24tYnV0dG9ue2hlaWdodDo1NnB4O3dpZHRoOjU2cHg7cGFkZGluZzoxMHB4O2JvcmRlci1yYWRpdXM6NTAlfXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAucGxheWVyLWNvbnRyb2wtcGxheS1wYXVzZS1pY29uLmljb24tYnV0dG9uPmMzLWljb257aGVpZ2h0OjM2cHg7d2lkdGg6MzZweDtwYWRkaW5nOnVuc2V0fXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAuZW5kc2NyZWVuLXJlcGxheS1idXR0b24uaWNvbi1idXR0b24seXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5wbGF5ZXItY29udHJvbC1wbGF5LXBhdXNlLWljb257bWFyZ2luOjAgMzRweH15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLnNjcmVlbnJlYWRlci1zYWZlLWhpZGUtbWlkZGxlLWJ1dHRvbnN7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjB9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5wbGF5ZXItY29udHJvbHMtc3Bpbm5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKX1bZGlyPXJ0bF0geXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlOm5vdCgucHJldmVudC1jb250cm9scy1jb2xsaXNpb24pe3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAucGxheWVyLWNvbnRyb2xzLW1pZGRsZS1jb3JlLWJ1dHRvbnN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2RpcmVjdGlvbjpsdHJ9Lnl0bVZpZGVvSW5mb0hvc3R7LW1vei1ib3gtZmxleDoxO2ZsZXg6MTtvdmVyZmxvdzpoaWRkZW47bWluLXdpZHRoOjB9Lnl0bVZpZGVvSW5mb1ZpZGVvRGV0YWlsc0NvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwYWRkaW5nLWxlZnQ6MTJweDttaW4taGVpZ2h0OjUuMnJlbX0ueXRtVmlkZW9JbmZvVmlkZW9UaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDB9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0bVZpZGVvSW5mb1ZpZGVvVGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS44cmVtO2xpbmUtaGVpZ2h0OjIuNnJlbTtmb250LXdlaWdodDo3MDB9fS55dG1WaWRlb0luZm9WaWRlb1RpdGxle2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOjEwMCU7cGFkZGluZy10b3A6MTBweDtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtZGVjb3JhdGlvbjpub25lO21hc2staW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCNmZmYgOTUlLHJnYmEoMCwwLDAsMCkpfVtkaXI9cnRsXSAueXRtVmlkZW9JbmZvVmlkZW9UaXRsZXttYXNrLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCNmZmYgOTUlLHJnYmEoMCwwLDAsMCkpfS55dG1WaWRlb0luZm9DaGFubmVsVGl0bGV7bWF4LXdpZHRoOjEwMCU7Zm9udC1zaXplOjEuMnJlbTtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtZGVjb3JhdGlvbjpub25lO29wYWNpdHk6MTtsaW5lLWhlaWdodDoxLjF9Lnl0bVZpZGVvSW5mb1ZpZGVvVGl0bGVDb250YWluZXJ7bWluLWhlaWdodDozNnB4Oy1tb3otYm94LWZsZXg6MTtmbGV4OjE7b3ZlcmZsb3c6aGlkZGVuO2NvbG9yOiNmZmY7bWFyZ2luLXJpZ2h0OjEycHg7cGFkZGluZy1sZWZ0OjB9Lnl0bVZpZGVvSW5mb0xvZ29FbmFibGVke3BhZGRpbmctbGVmdDo1MnB4fS55dG1WaWRlb0luZm9DaGFubmVsTG9nb3t3aWR0aDozNnB4O2hlaWdodDozNnB4O2Rpc3BsYXk6YmxvY2s7YmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2ZsZXgtc2hyaW5rOjA7bWFyZ2luOjEycHg7bWFyZ2luLXRvcDo4cHg7Ym9yZGVyLXJhZGl1czo1MCU7ei1pbmRleDo3O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfS55dG1WaWRlb0luZm9DaGFubmVsQ29udGFpbmVye2hlaWdodDo1LjJyZW07cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO21pbi13aWR0aDo1MnB4O21heC13aWR0aDpjYWxjKDEwMCUgLSAxMnB4KTttYXJnaW46NHB4O21hcmdpbi10b3A6OHB4O292ZXJmbG93OmhpZGRlbn1bZGlyPXJ0bF0gLnl0bVZpZGVvSW5mb0NoYW5uZWxDb250YWluZXJ7bGVmdDphdXRvO3JpZ2h0OjB9Lnl0bVZpZGVvSW5mb092ZXJsYXl7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjgpO21hcmdpbi1sZWZ0OjRweDtoZWlnaHQ6MTAwJTt0cmFuc2l0aW9uOmFsbCAuMnM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7b3BhY2l0eTowO21heC13aWR0aDowO3BhZGRpbmctbGVmdDo1MnB4O3BhZGRpbmctcmlnaHQ6MTBweDt6LWluZGV4OjU7cG9zaXRpb246cmVsYXRpdmV9Lnl0bVZpZGVvSW5mb0V4cGFuZGVke29wYWNpdHk6MTttYXgtd2lkdGg6MTAwJX0ueXRtVmlkZW9JbmZvQ2hhbm5lbEluZm97ZGlzcGxheTpibG9jaztwYWRkaW5nLXJpZ2h0OjhweDstbW96LWJveC1mbGV4OjE7ZmxleDoxO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczthbGlnbi1zZWxmOmNlbnRlcjttYXgtd2lkdGg6MTAwJX0ueXRtVmlkZW9JbmZvRmx5b3V0Q2hhbm5lbFRpdGxle2ZvbnQtc2l6ZToxLjRyZW07Y29sb3I6I2ZmZjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO21heC13aWR0aDoxMDAlO2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJvdHRvbToycHg7YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0bVZpZGVvSW5mb0ZseW91dENoYW5uZWxTdWJ0aXRsZXtmb250LXNpemU6MS4ycmVtO2NvbG9yOiNmZmY7dGV4dC1vdmVyZmxvdzplbGxpcHNpczttYXgtd2lkdGg6MTAwJTtkaXNwbGF5OmJsb2NrfS55dG1WaWRlb0luZm9TdWJzY3JpYmVCdXR0b257YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0bVZpZGVvSW5mb1N1YnNjcmliZUJ1dHRvbiAuaXMtc3Vic2NyaWJlZCAueXRBdHRyaWJ1dGVkU3RyaW5nSG9zdHtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyl9Lnl0bVZpZGVvSW5mb0hpZGUsLnl0bVZpZGVvSW5mb1N1YnNjcmliZUJ1dHRvbiAuc3Vic2NyaWJlLWJ1dHRvbi1jb3VudHtkaXNwbGF5Om5vbmV9Lnl0bVZpZGVvSW5mb0xpbms6aG92ZXJ7Y3Vyc29yOnBvaW50ZXJ9Lnl0bVZpZGVvSW5mb0NoYW5uZWxBdmF0YXJ7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo0OHB4O2hlaWdodDo0OHB4fS55dG1NdXRlQnV0dG9uSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6NDhweDtoZWlnaHQ6NDhweH0ueXRtTXV0ZUJ1dHRvbkJ1dHRvbntjdXJzb3I6cG9pbnRlcjt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O3BhZGRpbmc6MTJweDtib3JkZXI6bm9uZTtvdXRsaW5lOm5vbmU7Zm9udDppbmhlcml0O3RleHQtdHJhbnNmb3JtOmluaGVyaXQ7Y29sb3I6aW5oZXJpdDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6NDhweDtoZWlnaHQ6NDhweH0ueXR3QXV0b25hdlRvZ2dsZUJ1dHRvblNwYW5uZXJJY29uT2ZmLC55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uU3Bhbm5lckljb25Pbnt3aWR0aDozNnB4O2hlaWdodDoxNHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uU3Bhbm5lckljb25PZmYgc3ZnLC55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uU3Bhbm5lckljb25PbiBzdmd7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjM2cHg7aGVpZ2h0OjE0cHh9Lnl0d0F1dG9uYXZUb2dnbGVCdXR0b25QbGF5SWNvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2xlZnQ6MjJweDt3aWR0aDoyMHB4O2hlaWdodDoyMHB4fVtkaXI9cnRsXSAueXR3QXV0b25hdlRvZ2dsZUJ1dHRvblBsYXlJY29ue2xlZnQ6NnB4fS55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uUGF1c2VJY29ue3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7bGVmdDo2cHg7d2lkdGg6MjBweDtoZWlnaHQ6MjBweH1bZGlyPXJ0bF0gLnl0d0F1dG9uYXZUb2dnbGVCdXR0b25QYXVzZUljb257bGVmdDoyMnB4fS55dHdQbGF5ZXJBdXRvbmF2VG9nZ2xlSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdQbGF5ZXJBdXRvbmF2VG9nZ2xlSG9zdCAueXR3QXV0b25hdlRvZ2dsZUJ1dHRvblBsYXlJY29ue2NvbG9yOiNmZmZ9Lnl0d1BsYXllclRvcENvbnRyb2xzSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdQbGF5ZXJUb3BDb250cm9sc1BsYXllckNvbnRyb2xzVG9wUmlnaHR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0d1BsYXllclRvcENvbnRyb2xzQ29udGFpbmVyV2l0aEVtYmVkZGVkVmlkZW9EZXRhaWxzey1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH1AbWVkaWEgKG1heC1hc3BlY3QtcmF0aW86My80KXsueXR3UGxheWVyVG9wQ29udHJvbHNDb250YWluZXJXaXRoRW1iZWRkZWRWaWRlb0RldGFpbHN7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpyZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlfX1AbWVkaWEgKG1heC1hc3BlY3QtcmF0aW86My80KXsueXR3UGxheWVyVG9wQ29udHJvbHNDb250YWluZXJXaXRoRW1iZWRkZWRWaWRlb0RldGFpbHNQbGF5ZXJDb250cm9sc1RvcFJpZ2h0ey1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH19Lnl0bVdhdGNoUGxheWVyQ29udHJvbHNIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0bVdhdGNoUGxheWVyQ29udHJvbHNCYWNrZ3JvdW5kQWN0aW9uSXRlbXN7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyfXl0bS1ub3RpZmljYXRpb24tYWN0aW9uLXJlbmRlcmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lm5vdGlmaWNhdGlvbi1hY3Rpb24tcmVzcG9uc2UtdGV4dHstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7cGFkZGluZy1yaWdodDoxcmVtfS5ub3RpZmljYXRpb24tYWN0aW9uLWJ1dHRvbntmbGV4LXNocmluazowfS51bmlmaWVkLXNoYXJlLXVybC1pbnB1dHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmctYm90dG9tOjRweDtvdXRsaW5lOm5vbmU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MDttYXJnaW4tYm90dG9tOjFweDtmb250OmluaGVyaXQ7Y29sb3I6IzAzMDMwMztib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNzM3MzczO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9LnVuaWZpZWQtc2hhcmUtdXJsLWlucHV0OmZvY3Vze21hcmdpbi1ib3R0b206MDtib3JkZXItYm90dG9tLXdpZHRoOjJweDtib3JkZXItYm90dG9tLWNvbG9yOiMwMzAzMDN9LnVuaWZpZWQtc2hhcmUtdXJsLWlucHV0OjotbW96LXBsYWNlaG9sZGVye2NvbG9yOiM2MDYwNjA7b3BhY2l0eToxfS51bmlmaWVkLXNoYXJlLXVybC1pbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6IzYwNjA2MDtvcGFjaXR5OjF9LnVuaWZpZWQtc2hhcmUtdXJsLWlucHV0e3dpZHRoOjEwMCU7ZGlzcGxheTpibG9jaztwYWRkaW5nOjEycHg7Y29sb3I6IzA2NWZkNDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSk7Ym9yZGVyLWJvdHRvbS1zdHlsZTpub25lO2JvcmRlci1yYWRpdXM6OHB4fS5ib3R0b20tc2hlZXQtc2hhcmUtaXRlbSAudW5pZmllZC1zaGFyZS11cmwtaW5wdXR7aGVpZ2h0OjQ4cHg7bWFyZ2luLWJvdHRvbToxMnB4fS5zaGFyZS10YXJnZXQtbGlua3tkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MTJweH0uYm90dG9tLXNoZWV0LXNoYXJlLWl0ZW0gLnNoYXJlLXRhcmdldC1saW5re3BhZGRpbmc6MDttYXJnaW4tbGVmdDoxMnB4O2hlaWdodDo0OHB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwfWZ1bGxzY3JlZW4tb3ZlcmxheXtwb3NpdGlvbjpmaXhlZDt0b3A6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JhY2tncm91bmQtY29sb3I6I2ZmZjtvdmVyZmxvdzpzY3JvbGw7ei1pbmRleDo0fS55dENoaXBCYXJWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O3Bvc2l0aW9uOnJlbGF0aXZlOy1tb3otYm94LWFsaWduOnN0cmV0Y2g7YWxpZ24taXRlbXM6c3RyZXRjaH0ueXRDaGlwQmFyVmlld01vZGVsQ2hpcEJhclNjcm9sbENvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtvdmVyZmxvdzphdXRvIGhpZGRlbjtzY3JvbGxiYXItd2lkdGg6bm9uZTstbXMtb3ZlcmZsb3ctc3R5bGU6bm9uZX0ueXRDaGlwQmFyVmlld01vZGVsQ2hpcEJhclNjcm9sbENvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS55dENoaXBCYXJWaWV3TW9kZWxDaGlwQmFyU2Nyb2xsQ29udGFpbmVyV3JhcHBlZHtmbGV4LXdyYXA6d3JhcDtyb3ctZ2FwOjhweDtvdmVyZmxvdzp2aXNpYmxlfS55dENoaXBCYXJWaWV3TW9kZWxMZWZ0QXJyb3dDb250YWluZXIsLnl0Q2hpcEJhclZpZXdNb2RlbFJpZ2h0QXJyb3dDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7ei1pbmRleDoxfS55dENoaXBCYXJWaWV3TW9kZWxMZWZ0QXJyb3dDb250YWluZXJ7bGVmdDowfS55dENoaXBCYXJWaWV3TW9kZWxMZWZ0QXJyb3dDb250YWluZXJJc0hpZGRlbntkaXNwbGF5Om5vbmV9Lnl0Q2hpcEJhclZpZXdNb2RlbExlZnRBcnJvd0NvbnRhaW5lcjphZnRlcnt3aWR0aDo1MHB4O2NvbnRlbnQ6IiI7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byBsZWZ0LHJnYmEoMjU1LDI1NSwyNTUsMCkgMCxyZ2JhKDI1NSwyNTUsMjU1LDAuMykgMjUlLHJnYmEoMjU1LDI1NSwyNTUsMC42KSA1MCUscmdiYSgyNTUsMjU1LDI1NSwwLjkpIDc1JSx3aGl0ZSAxMDAlKX0ueXRDaGlwQmFyVmlld01vZGVsUmlnaHRBcnJvd0NvbnRhaW5lcntyaWdodDowfS55dENoaXBCYXJWaWV3TW9kZWxSaWdodEFycm93Q29udGFpbmVySXNIaWRkZW57ZGlzcGxheTpub25lfS55dENoaXBCYXJWaWV3TW9kZWxSaWdodEFycm93Q29udGFpbmVyOmJlZm9yZXt3aWR0aDo1MHB4O2NvbnRlbnQ6IiI7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCxyZ2JhKDI1NSwyNTUsMjU1LDApIDAscmdiYSgyNTUsMjU1LDI1NSwwLjMpIDI1JSxyZ2JhKDI1NSwyNTUsMjU1LDAuNikgNTAlLHJnYmEoMjU1LDI1NSwyNTUsMC45KSA3NSUsd2hpdGUgMTAwJSl9Lnl0Q2hpcEJhclZpZXdNb2RlbExlZnRBcnJvdywueXRDaGlwQmFyVmlld01vZGVsUmlnaHRBcnJvd3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YmFja2dyb3VuZDojZmZmfS55dENoaXBCYXJWaWV3TW9kZWxDaGlwV3JhcHBlcnttYXJnaW4tcmlnaHQ6OHB4fS55dENoaXBCYXJWaWV3TW9kZWxDaGlwV3JhcHBlcldpdGhOYXZpZ2F0aW9uQnV0dG9uc3ttYXJnaW4tdG9wOjRweDttYXJnaW4tYm90dG9tOjRweH0ueXRDaGlwU2hhcGVCdXR0b25SZXNldHtkaXNwbGF5Oi1tb3otaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4O2NvbG9yOmluaGVyaXQ7Ym9yZGVyOm5vbmU7Y3Vyc29yOnBvaW50ZXI7b3V0bGluZS13aWR0aDowOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtiYWNrZ3JvdW5kOm5vbmU7dGV4dC1kZWNvcmF0aW9uOm5vbmU7cGFkZGluZzowOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0ueXRDaGlwU2hhcGVIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0Q2hpcFNoYXBlQ2hpcHtwb3NpdGlvbjpyZWxhdGl2ZTstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6OHB4O2Rpc3BsYXk6LW1vei1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7aGVpZ2h0OjMycHg7bWluLXdpZHRoOjEycHg7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRDaGlwU2hhcGVDaGlwe291dGxpbmU6MXB4IHNvbGlkO291dGxpbmUtb2Zmc2V0Oi0xcHh9fS55dENoaXBTaGFwZUVsZXZhdGVkQ29udGVudHt6LWluZGV4OjE7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRDaGlwU2hhcGVPbmx5VGV4dFBhZGRpbmd7cGFkZGluZzowIDEycHh9Lnl0Q2hpcFNoYXBlT25seUljb25QYWRkaW5ne3BhZGRpbmc6MH0ueXRDaGlwU2hhcGVTdGFydEljb25QYWRkaW5ney1tb3otcGFkZGluZy1lbmQ6MTJweDtwYWRkaW5nLWlubGluZS1lbmQ6MTJweH0ueXRDaGlwU2hhcGVFbmRJY29uUGFkZGluZ3stbW96LXBhZGRpbmctc3RhcnQ6MTJweDtwYWRkaW5nLWlubGluZS1zdGFydDoxMnB4fS55dENoaXBTaGFwZUFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiMwZjBmMGY7Y29sb3I6I2ZmZn1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRDaGlwU2hhcGVBY3RpdmV7Zm9yY2VkLWNvbG9yLWFkanVzdDpub25lO2JhY2tncm91bmQtY29sb3I6U2VsZWN0ZWRJdGVtO2NvbG9yOlNlbGVjdGVkSXRlbVRleHR9fS55dENoaXBTaGFwZUFjdGl2ZVJlZGVzaWdue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEpO2NvbG9yOiMwMzAzMDN9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0Q2hpcFNoYXBlQWN0aXZlUmVkZXNpZ257Zm9yY2VkLWNvbG9yLWFkanVzdDpub25lO2JhY2tncm91bmQtY29sb3I6U2VsZWN0ZWRJdGVtO2NvbG9yOlNlbGVjdGVkSXRlbVRleHR9fS55dENoaXBTaGFwZURpc2FibGVke2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KTtjb2xvcjojOTA5MDkwfS55dENoaXBTaGFwZUluYWN0aXZle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KTtjb2xvcjojMDMwMzAzfS55dENoaXBTaGFwZUluYWN0aXZlUmVkZXNpZ257YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtjb2xvcjojNjA2MDYwO2JvcmRlcjouNXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX0ueXRDaGlwU2hhcGVGb2N1c2Vke291dGxpbmU6MnB4IHNvbGlkICMwMzAzMDM7b3V0bGluZS1vZmZzZXQ6LTJweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y29sb3I6IzAzMDMwM30ueXRDaGlwU2hhcGVJY29uU3RhcnR7Y29sb3I6aW5oZXJpdDttYXJnaW46MCA0cHggMCA4cHg7aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0ueXRDaGlwU2hhcGVJY29uT25seXtjb2xvcjppbmhlcml0O21hcmdpbjowIDhweDtoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dENoaXBTaGFwZUljb25FbmR7Y29sb3I6aW5oZXJpdDttYXJnaW46MCA2cHggMCA0cHg7aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0ueXRDaGlwU2hhcGVBSUN1c3RvbWl6ZWRDaGlwQm9yZGVyRGFya01vZGV7Ym9yZGVyOjJweCBzb2xpZCB0cmFuc3BhcmVudDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgjMGYwZjBmLCMwZjBmMGYpIHBhZGRpbmctYm94LGxpbmVhci1ncmFkaWVudCh0byByaWdodCwjN2YwZTdmLCMwMDdhNjUpIGJvcmRlci1ib3h9Lnl0Q2hpcFNoYXBlQUlDdXN0b21pemVkQ2hpcEJhY2tncm91bmRMaWdodE1vZGV7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwjN2YwZTdmLCMwMDdhNjUpfS55dENoaXBTaGFwZUFJQ3VzdG9taXplZENoaXBJY29uRGFya01vZGV7Y29sb3I6IzdmMGU3Zn0ueXRDaGlwU2hhcGVNaWRkbGVncm91bmRBc3NldHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTt3aWR0aDpyb3VuZCh1cCwxMDAlLDFweCk7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3BvaW50ZXItZXZlbnRzOm5vbmU7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0Q2hpcFZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlSG9zdHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhQ29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDttaW4taGVpZ2h0OjU2cHg7cGFkZGluZzoyNHB4IDEycHggOHB4fS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYUNvbnRhaW5lck91dGxpbmV7Ym9yZGVyLXJhZGl1czo4cHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhQ29udGFpbmVyT3V0bGluZTpmb2N1cy13aXRoaW57Ym9yZGVyOjJweCBzb2xpZCAjMDMwMzAzO3BhZGRpbmc6MjNweCAxMXB4IDdweH0ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlVGV4dGFyZWFDb250YWluZXJPdXRsaW5lRGlzYWJsZWR7Ym9yZGVyOjA7Y29sb3I6IzkwOTA5MDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSl9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhQ29udGFpbmVyT3V0bGluZUVycm9ye2JvcmRlci1jb2xvcjojYzMwMDI3fS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYUNvbnRhaW5lck91dGxpbmVFcnJvcjpmb2N1cy13aXRoaW57Ym9yZGVyLWNvbG9yOiNjMzAwMjd9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhQ29udGFpbmVyTGFiZWxIaWRkZW57bWluLWhlaWdodDozNnB4O3BhZGRpbmc6OXB4IDEycHggNnB4fS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYUNvbnRhaW5lckxhYmVsSGlkZGVuLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhQ29udGFpbmVyT3V0bGluZTpmb2N1cy13aXRoaW57cGFkZGluZzo5cHggMTFweCA2cHh9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhe21pbi1oZWlnaHQ6MDtjb2xvcjojMDMwMzAzO3dpZHRoOjEwMCU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtyZXNpemU6bm9uZTtib3JkZXI6bm9uZTtvdXRsaW5lOm5vbmU7cGFkZGluZzowO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlcntjb2xvcjp0cmFuc3BhcmVudH0ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlVGV4dGFyZWE6OnBsYWNlaG9sZGVye2NvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlcntvcGFjaXR5OjB9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhOjpwbGFjZWhvbGRlcntvcGFjaXR5OjB9fS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYTpkaXNhYmxlZHtjb2xvcjojOTA5MDkwfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVMYWJlbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6OHB4O2xlZnQ6MTJweDtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVMYWJlbEZvY3VzZWR7dG9wOjdweDtsZWZ0OjExcHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo1MDB9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUxhYmVsRGlzYWJsZWR7Y29sb3I6IzkwOTA5MH0ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlTGFiZWxFcnJvcntjb2xvcjojYzMwMDI3fS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVMYWJlbEhpZGRlbntkaXNwbGF5Om5vbmV9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVBsYWNlaG9sZGVye2Rpc3BsYXk6bm9uZTtjb2xvcjojNjA2MDYwO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxNnB4O2xlZnQ6MTJweDtyaWdodDoxMnB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVQbGFjZWhvbGRlclZpc2libGV7ZGlzcGxheTpibG9ja30ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlVGV4dGFyZWFDb250YWluZXJMYWJlbEhpZGRlbiAueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlUGxhY2Vob2xkZXJ7dG9wOjhweH0ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlRXJyb3IsLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUhpbnR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW4tdG9wOjRweDtjb2xvcjojYzMwMDI3O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVFcnJvckljb24sLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUhpbnRJY29ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxNnB4O3dpZHRoOjE2cHh9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUVycm9yTWVzc2FnZSwueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlSGludE1lc3NhZ2V7bWFyZ2luLWxlZnQ6NHB4fS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVFcnJvckRpc2FibGVkLC55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVIaW50RGlzYWJsZWR7Y29sb3I6IzkwOTA5MH0ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlRXJyb3JDaGFyYWN0ZXJDb3VudCwueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlSGludENoYXJhY3RlckNvdW50e21hcmdpbi1sZWZ0OmF1dG99Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUVycm9ySGludE1lc3NhZ2UsLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUhpbnRIaW50TWVzc2FnZXttYXJnaW4tbGVmdDo0cHg7Y29sb3I6IzYwNjA2MH0ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlRXJyb3JJY29ue2NvbG9yOmluaGVyaXR9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRpbWVQaWNrZXIgLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhQ29udGFpbmVyey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cGFkZGluZzowfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUaW1lUGlja2VyIC55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVQbGFjZWhvbGRlciwueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlVGltZVBpY2tlciAueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlVGV4dGFyZWF7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi1pbmxpbmU6YXV0bzttYXgtd2lkdGg6ODBweDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZTozLjZyZW07bGluZS1oZWlnaHQ6NXJlbTtmb250LXdlaWdodDo3MDB9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRpbWVQaWNrZXIgLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVBsYWNlaG9sZGVyLC55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUaW1lUGlja2VyIC55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZTozLjJyZW07bGluZS1oZWlnaHQ6NC40cmVtO2ZvbnQtd2VpZ2h0OjcwMH19Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRpbWVQaWNrZXIgLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVBsYWNlaG9sZGVye2luc2V0OjB9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRpbWVQaWNrZXIgLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhe2hlaWdodDoxMDAlO3BhZGRpbmc6OXB4IDB9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUZpbGxQYXJlbnQsLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUZpbGxQYXJlbnQgLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhe2hlaWdodDoxMDAlfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVGaWxsUGFyZW50IC55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYUNvbnRhaW5lcnstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dFNlYXJjaElucHV0Vmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6MTAwcHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNlYXJjaElucHV0Vmlld01vZGVsSG9zdHtvdXRsaW5lOjJweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNlYXJjaElucHV0Vmlld01vZGVsSG9zdENvbnRlbnRSZXNlYXJjaHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfS55dFNlYXJjaElucHV0Vmlld01vZGVsTGVhZGluZ0ljb257bWFyZ2luLWxlZnQ6MTZweDttYXJnaW4tcmlnaHQ6NHB4O2NvbG9yOiM2MDYwNjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRTZWFyY2hJbnB1dFZpZXdNb2RlbEZvcm17LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDoycHh9Lnl0U2VhcmNoSW5wdXRWaWV3TW9kZWxDbGVhckJ1dHRvbnttYXJnaW4tcmlnaHQ6NHB4fS55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsTGlzdFdyYXBwZXJ7c2Nyb2xsYmFyLWNvbG9yOnRyYW5zcGFyZW50IHRyYW5zcGFyZW50O3Njcm9sbGJhci13aWR0aDp0aGlufS55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsTGlzdFdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFye2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7d2lkdGg6MTZweH0ueXR3Q2hhbm5lbEJsb2Nrc1ZpZXdNb2RlbExpc3RXcmFwcGVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntoZWlnaHQ6NTZweDtib3JkZXItcmFkaXVzOjhweDtib3JkZXI6NHB4IHNvbGlkIHRyYW5zcGFyZW50O2JhY2tncm91bmQtY2xpcDpjb250ZW50LWJveDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsTGlzdFdyYXBwZXI6aG92ZXJ7c2Nyb2xsYmFyLWNvbG9yOiM5MDkwOTAgdHJhbnNwYXJlbnR9Lnl0d0NoYW5uZWxCbG9ja3NWaWV3TW9kZWxMaXN0V3JhcHBlcjpob3Zlcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojOTA5MDkwfS55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsTGlzdFdyYXBwZXJ7b3ZlcmZsb3cteTphdXRvO21heC1oZWlnaHQ6bWluKDM2MHB4LDEwMHZoIC0gMzAwcHgpO21pbi13aWR0aDptaW4oNDQ4cHgsMTAwdncgLSAxNDRweCl9QG1lZGlhIChtYXgtd2lkdGg6MzMwcHgpey55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsTGlzdFdyYXBwZXJ7bWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gMjAwcHgpfX0ueXR3Q2hhbm5lbEJsb2Nrc1ZpZXdNb2RlbFNlYXJjaENvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nLWJvdHRvbTo4cHh9Lnl0d0NoYW5uZWxCbG9ja3NWaWV3TW9kZWxEcm9wZG93blBhbmVse3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtib3gtc2hhZG93OjAgMnB4IDEwcHggcmdiYSgwLDAsMCwwLjI1KTtib3JkZXItcmFkaXVzOjRweDt6LWluZGV4OjIwMTA7d2lkdGg6MTAwJTttYXgtaGVpZ2h0Om1pbigzMDBweCwxMDB2aCAtIDMwMHB4KTtvdmVyZmxvdy15OmF1dG87dG9wOjEwMCU7bGVmdDowfS55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsU3VnZ2VzdGlvbnNMaXN0Ym94e3BhZGRpbmc6OHB4IDB9Lnl0UGxheWVyT3ZlcmxheUludGVyYWN0aW9uSG9zdHtkaXNwbGF5OmJsb2NrfS55dFBsYXllck92ZXJsYXlJbnRlcmFjdGlvbkludGVyYWN0aW9uc1N2Z3twb2ludGVyLWV2ZW50czphbGw7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czo2cHh9Lnl0UGxheWVyT3ZlcmxheUludGVyYWN0aW9uSW50ZXJhY3Rpb25zU3ZnSG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9Lnl0UGxheWVyT3ZlcmxheUludGVyYWN0aW9uSW50ZXJhY3Rpb25zU3ZnSGlkZU91dGxpbmV7b3V0bGluZTpub25lfS55dERpc21pc3NpYmxlSXRlbVJlcGxhY2VkQ29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dERpc21pc3NpYmxlSXRlbUFzcGVjdFJhdGlvQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0RGlzbWlzc2libGVJdGVtQXNwZWN0UmF0aW8xNkJ5OXtwYWRkaW5nLXRvcDo1Ni4yNSV9Lnl0RGlzbWlzc2libGVJdGVtQXNwZWN0UmF0aW8yQnkze3BhZGRpbmctdG9wOjE1MCV9Lnl0RGlzbWlzc2libGVJdGVtQXNwZWN0UmF0aW8zQnk0e3BhZGRpbmctdG9wOjEzMy4zMyV9Lnl0RGlzbWlzc2libGVJdGVtU2hvcnRzQXNwZWN0UmF0aW85QnkxNntwYWRkaW5nLXRvcDoxNzglfS55dERpc21pc3NpYmxlSXRlbUFzcGVjdFJhdGlvMUJ5MXtwYWRkaW5nLXRvcDoxMDAlfS55dE5vdGlmaWNhdGlvbk11bHRpQWN0aW9uUmVuZGVyZXJIb3N0e2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO2JvcmRlci1yYWRpdXM6OHB4O3BhZGRpbmc6MjBweCAxMnB4IDhweDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtZmxleDoxO2ZsZXg6MTstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXROb3RpZmljYXRpb25NdWx0aUFjdGlvblJlbmRlcmVySG9zdExlZ2FjeVNoZWxmU3R5bGV7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtib3JkZXI6bm9uZX0ueXROb3RpZmljYXRpb25NdWx0aUFjdGlvblJlbmRlcmVyVGV4dENvbnRhaW5lcnstbW96LWJveC1mbGV4OjE7ZmxleDoxO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW4tYm90dG9tOjEycHh9Lnl0Tm90aWZpY2F0aW9uTXVsdGlBY3Rpb25SZW5kZXJlclRleHRDb250YWluZXJMZWdhY3lTaGVsZlN0eWxley1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmU7bWFyZ2luLWJvdHRvbTowO21hcmdpbi1yaWdodDoxMnB4fS55dE5vdGlmaWNhdGlvbk11bHRpQWN0aW9uUmVuZGVyZXJCdXR0b25Db250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3dpZHRoOjEwMCV9Lnl0Tm90aWZpY2F0aW9uTXVsdGlBY3Rpb25SZW5kZXJlckJ1dHRvbkNvbnRhaW5lckxlZ2FjeVNoZWxmU3R5bGV7d2lkdGg6YXV0b30ueXROb3RpZmljYXRpb25NdWx0aUFjdGlvblJlbmRlcmVyQnV0dG9ue3BhZGRpbmc6NnB4IDA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtZmxleDoxO2ZsZXg6MX0ueXROb3RpZmljYXRpb25UZXh0UmVuZGVyZXJIb3N0e2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO2JvcmRlci1yYWRpdXM6OHB4O3BhZGRpbmc6MTJweDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWZsZXg6MTtmbGV4OjE7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dHdBZEF2YXRhclZpZXdNb2RlbEhvc3QsLnl0d0FkQXZhdGFyVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnR7ZGlzcGxheTpibG9ja30ueXR3QWRCYWRnZVZpZXdNb2RlbEhvc3QsLnl0d0FkQmFkZ2VWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudHtkaXNwbGF5OmlubGluZX0ueXR3QWRCYWRnZVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50U3R5bGVTdGFuZGFyZCwueXR3QWRCYWRnZVZpZXdNb2RlbEhvc3RTdHlsZVN0YW5kYXJke2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dHdBZEJhZGdlVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRTdHlsZVN0YW5kYXJkQnJvd3NlLC55dHdBZEJhZGdlVmlld01vZGVsSG9zdFN0eWxlU3RhbmRhcmRCcm93c2V7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dHdBZEJhZGdlVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnR7Y3Vyc29yOnBvaW50ZXJ9Lnl0d0FkRGV0YWlsc0xpbmVWaWV3TW9kZWxIb3N0LC55dHdBZERldGFpbHNMaW5lVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnR7ZGlzcGxheTpibG9ja30ueXR3QWREZXRhaWxzTGluZVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dFN0eWxlU3RhbmRhcmQsLnl0d0FkRGV0YWlsc0xpbmVWaWV3TW9kZWxIb3N0VGV4dFN0eWxlU3RhbmRhcmR7Y29sb3I6IzYwNjA2MDtwYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoxLjhyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0FkRGV0YWlsc0xpbmVWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRTdHlsZVN0YW5kYXJkLC55dHdBZERldGFpbHNMaW5lVmlld01vZGVsSG9zdFRleHRTdHlsZVN0YW5kYXJkey13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0d0FkRGV0YWlsc0xpbmVWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRTdHlsZVN0YW5kYXJkLC55dHdBZERldGFpbHNMaW5lVmlld01vZGVsSG9zdFRleHRTdHlsZVN0YW5kYXJke21heC1oZWlnaHQ6MS44cmVtO3dvcmQtYnJlYWs6YnJlYWstYWxsfS55dHdBZERldGFpbHNMaW5lVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0U3R5bGVTdGFuZGFyZEJyb3dzZSwueXR3QWREZXRhaWxzTGluZVZpZXdNb2RlbEhvc3RUZXh0U3R5bGVTdGFuZGFyZEJyb3dzZXt3aGl0ZS1zcGFjZTpub3dyYXA7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO2N1cnNvcjpwb2ludGVyOy0tZmVlZC1hZC1tZXRhZGF0YS10b3AtcGFkZGluZzoxMnB4fS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50TWV0YWRhdGEsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdE1ldGFkYXRhe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtwYWRkaW5nLXJpZ2h0OjI0cHg7d2lkdGg6MTAwJTtvdmVyZmxvdzpoaWRkZW47LS1mZWVkLWFkLW1ldGFkYXRhLWJvdHRvbS1tYXJnaW46MTJweH0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudE1ldGFkYXRhTm9Cb3R0b21NYXJnaW4sLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdE1ldGFkYXRhTm9Cb3R0b21NYXJnaW57LS1mZWVkLWFkLW1ldGFkYXRhLWJvdHRvbS1tYXJnaW46MH0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudE1ldGFkYXRhQWRCYWRnZURldGFpbHNMaW5lQ29udGFpbmVyLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RNZXRhZGF0YUFkQmFkZ2VEZXRhaWxzTGluZUNvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtjdXJzb3I6cG9pbnRlcn0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudE1ldGFkYXRhQWRCYWRnZURldGFpbHNMaW5lQ29udGFpbmVyU3R5bGVDb21wYWN0U2VhcmNoLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RNZXRhZGF0YUFkQmFkZ2VEZXRhaWxzTGluZUNvbnRhaW5lclN0eWxlQ29tcGFjdFNlYXJjaHtwYWRkaW5nLXRvcDo4cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7Y3Vyc29yOnBvaW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudE1ldGFkYXRhQWRCYWRnZURldGFpbHNMaW5lQ29udGFpbmVyU3R5bGVTdGFuZGFyZCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0TWV0YWRhdGFBZEJhZGdlRGV0YWlsc0xpbmVDb250YWluZXJTdHlsZVN0YW5kYXJke2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2N1cnNvcjpwb2ludGVyO3BhZGRpbmctYm90dG9tOnZhcigtLWZlZWQtYWQtbWV0YWRhdGEtYm90dG9tLW1hcmdpbil9Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnROb1RvcFBhZGRpbmcsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdE5vVG9wUGFkZGluZ3stLWZlZWQtYWQtbWV0YWRhdGEtdG9wLXBhZGRpbmc6MH0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudE1lbnVCdXR0b24sLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdE1lbnVCdXR0b257cG9zaXRpb246YWJzb2x1dGU7dG9wOi02cHg7cmlnaHQ6LTEwcHh9Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRNZW51QnV0dG9uTWVudVBvc0FkanVzdGVkLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RNZW51QnV0dG9uTWVudVBvc0FkanVzdGVke3JpZ2h0Oi03cHh9Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRNZW51U3R5bGVTdGFuZGFyZCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0TWVudVN0eWxlU3RhbmRhcmR7cGFkZGluZy10b3A6dmFyKC0tZmVlZC1hZC1tZXRhZGF0YS10b3AtcGFkZGluZyk7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNnB4O3JpZ2h0Oi0xMHB4fS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50TWVudVN0eWxlU3RhbmRhcmRNZW51UG9zQWRqdXN0ZWQsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdE1lbnVTdHlsZVN0YW5kYXJkTWVudVBvc0FkanVzdGVke3JpZ2h0Oi03cHh9Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdEF2YXRhclN0eWxlU3RhbmRhcmQsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRBdmF0YXJTdHlsZVN0YW5kYXJke2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1yaWdodDoxMnB4fS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RBdmF0YXJTdHlsZUNvbXBhY3QsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRBdmF0YXJTdHlsZUNvbXBhY3R7bWFyZ2luLXJpZ2h0OjhweH0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmUsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmV7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZUNvbXBhY3RIZWFkbGluZSwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZUNvbXBhY3RIZWFkbGluZXstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZUNvbXBhY3RIZWFkbGluZSwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZUNvbXBhY3RIZWFkbGluZXttYXgtaGVpZ2h0OjRyZW19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXAsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVUeXBvZ3JhcGh5QnVtcHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjQuNHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVUeXBvZ3JhcGh5QnVtcCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZUNvbXBhY3RIZWFkbGluZVR5cG9ncmFwaHlCdW1wey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXAsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVUeXBvZ3JhcGh5QnVtcHttYXgtaGVpZ2h0OjQuNHJlbX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVTZWFyY2gsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVTZWFyY2h7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjUuMnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVTZWFyY2gsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVTZWFyY2h7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVTZWFyY2gsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVTZWFyY2h7bWF4LWhlaWdodDo1LjJyZW07bWFyZ2luLWJvdHRvbTo0cHh9Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9ue2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uey13ZWJraXQtbGluZS1jbGFtcDozO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9ue21heC1oZWlnaHQ6NS40cmVtfS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZUNvbXBhY3REZXNjcmlwdGlvblR5cG9ncmFwaHlCdW1wLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uVHlwb2dyYXBoeUJ1bXB7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0RGVzY3JpcHRpb25UeXBvZ3JhcGh5QnVtcCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZUNvbXBhY3REZXNjcmlwdGlvblR5cG9ncmFwaHlCdW1wey13ZWJraXQtbGluZS1jbGFtcDozO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uVHlwb2dyYXBoeUJ1bXAsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0RGVzY3JpcHRpb25UeXBvZ3JhcGh5QnVtcHttYXgtaGVpZ2h0OjZyZW19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9ue2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9uey13ZWJraXQtbGluZS1jbGFtcDozO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9ue21heC1oZWlnaHQ6NS40cmVtfS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZUNvbXBhY3RTZWNvbmRhcnlEZXNjcmlwdGlvblR5cG9ncmFwaHlCdW1wLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9uVHlwb2dyYXBoeUJ1bXB7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0U2Vjb25kYXJ5RGVzY3JpcHRpb25UeXBvZ3JhcGh5QnVtcCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZUNvbXBhY3RTZWNvbmRhcnlEZXNjcmlwdGlvblR5cG9ncmFwaHlCdW1wey13ZWJraXQtbGluZS1jbGFtcDozO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9uVHlwb2dyYXBoeUJ1bXAsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0U2Vjb25kYXJ5RGVzY3JpcHRpb25UeXBvZ3JhcGh5QnVtcHttYXgtaGVpZ2h0OjZyZW19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uU2VhcmNoLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uU2VhcmNoe2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uU2VhcmNoLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uU2VhcmNoey13ZWJraXQtbGluZS1jbGFtcDozO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uU2VhcmNoLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uU2VhcmNoe21heC1oZWlnaHQ6NS40cmVtfS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmUsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5le3BhZGRpbmctdG9wOnZhcigtLWZlZWQtYWQtbWV0YWRhdGEtdG9wLXBhZGRpbmcpO21hcmdpbi1ib3R0b206NHB4O2NvbG9yOiMwMzAzMDM7LW1vei1ib3gtZmxleDoxO2ZsZXg6MSAxIGF1dG87Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0LjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZSwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZXttYXgtaGVpZ2h0OjQuNHJlbX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lV2F0Y2hOZXh0LC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVdhdGNoTmV4dHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVXYXRjaE5leHQsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lV2F0Y2hOZXh0ey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVdhdGNoTmV4dCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVXYXRjaE5leHR7bWF4LWhlaWdodDo0cmVtfS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVUeXBvZ3JhcGh5QnVtcCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVUeXBvZ3JhcGh5QnVtcHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjUuMnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXAsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXB7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXAsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXB7bWF4LWhlaWdodDo1LjJyZW19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVR5cG9ncmFwaHlCdW1wVjIsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXBWMntmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo5MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjZyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVR5cG9ncmFwaHlCdW1wVjIsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXBWMnstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fUBtZWRpYSAobWF4LXdpZHRoOjUyNy45cHgpey55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVUeXBvZ3JhcGh5QnVtcFYyLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVR5cG9ncmFwaHlCdW1wVjJ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS44cmVtO2xpbmUtaGVpZ2h0OjIuNnJlbTtmb250LXdlaWdodDo5MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVR5cG9ncmFwaHlCdW1wVjIsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXBWMnstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXBWMiwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVUeXBvZ3JhcGh5QnVtcFYye21heC1oZWlnaHQ6NS42cmVtfUBtZWRpYSAobWF4LXdpZHRoOjUyNy45cHgpey55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVUeXBvZ3JhcGh5QnVtcFYyLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVR5cG9ncmFwaHlCdW1wVjJ7bWF4LWhlaWdodDo1LjJyZW19fS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkRGVzY3JpcHRpb24sLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZERlc2NyaXB0aW9ue21hcmdpbi1ib3R0b206NHB4O2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZERlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmREZXNjcmlwdGlvbnstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkRGVzY3JpcHRpb24sLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZERlc2NyaXB0aW9ue21heC1oZWlnaHQ6NHJlbX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZFNlY29uZGFyeURlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmRTZWNvbmRhcnlEZXNjcmlwdGlvbntjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlU3RhbmRhcmRTZWNvbmRhcnlEZXNjcmlwdGlvbiwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZVN0YW5kYXJkU2Vjb25kYXJ5RGVzY3JpcHRpb257LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZFNlY29uZGFyeURlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmRTZWNvbmRhcnlEZXNjcmlwdGlvbnttYXgtaGVpZ2h0OjRyZW19Lnl0d0FkRGlzY2xvc3VyZUJhbm5lclZpZXdNb2RlbEhvc3R7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KTtib3JkZXItcmFkaXVzOjRweDtkaXNwbGF5Oi1tb3otaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O21heC13aWR0aDozMTJweDtwYWRkaW5nOjhweH0ueXR3QWREaXNjbG9zdXJlQmFubmVyVmlld01vZGVsSG9zdEhhc0FjY2VudHstbW96LWJvcmRlci1zdGFydDo0cHggc29saWQgdmFyKC0tYWQtZGlzY2xvc3VyZS1hY2NlbnQtY29sb3IpO2JvcmRlci1pbmxpbmUtc3RhcnQ6NHB4IHNvbGlkIHZhcigtLWFkLWRpc2Nsb3N1cmUtYWNjZW50LWNvbG9yKX0ueXR3QWREaXNjbG9zdXJlQmFubmVyVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnR7Y3Vyc29yOnBvaW50ZXJ9Lnl0d0FkRGlzY2xvc3VyZUJhbm5lclZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50OmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgI2ZmZjtvdXRsaW5lLW9mZnNldDoycHh9Lnl0d0FkRGlzY2xvc3VyZUJhbm5lclZpZXdNb2RlbFRleHR7YmFja2dyb3VuZDpub25lO2NvbG9yOiNmZmY7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxBY3Rpb25Sb3d7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbEFjdGlvblJvdzpub3QoOmxhc3QtY2hpbGQpe3BhZGRpbmctYm90dG9tOjhweH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxBY3Rpb246bm90KDpsYXN0LWNoaWxkKTpub3QoOmVtcHR5KXtwYWRkaW5nLXJpZ2h0OjhweH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxBY3Rpb25Sb3dBY3Rpb257bWluLXdpZHRoOjA7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO2ZsZXgtYmFzaXM6MH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxBY3Rpb25Sb3dBY3Rpb246ZW1wdHl7LW1vei1ib3gtZmxleDowO2ZsZXgtZ3JvdzowfS55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbEFjdGlvbkludHJpbnNpY1dpZHRoey1tb3otYm94LWZsZXg6MDtmbGV4LWdyb3c6MDtmbGV4LWJhc2lzOmF1dG99Lnl0RmxleGlibGVBY3Rpb25zVmlld01vZGVsQWN0aW9uUm93QWN0aW9uRmVhdHVyZVBob25le2ZsZXgtYmFzaXM6dW5zZXQ7bWluLXdpZHRoOnVuc2V0fS55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbEFjdGlvbkljb25Pbmx5QnV0dG9uey1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmV9Lnl0RmxleGlibGVBY3Rpb25zVmlld01vZGVsSW5saW5ley1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93fS55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbFNjcm9sbGFibGV7b3ZlcmZsb3c6YXV0byBoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93LXk6YXV0bztzY3JvbGxiYXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7c2Nyb2xsYmFyLXdpZHRoOnRoaW59Lnl0RmxleGlibGVBY3Rpb25zVmlld01vZGVsU2Nyb2xsYWJsZTo6LXdlYmtpdC1zY3JvbGxiYXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDt3aWR0aDo4cHh9Lnl0RmxleGlibGVBY3Rpb25zVmlld01vZGVsU2Nyb2xsYWJsZTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7aGVpZ2h0OjU2cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxTY3JvbGxhYmxlOmhvdmVye3Njcm9sbGJhci1jb2xvcjojOTA5MDkwIHRyYW5zcGFyZW50fS55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbFNjcm9sbGFibGU6aG92ZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6IzkwOTA5MH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxGbGV4V3JhcHtmbGV4LXdyYXA6d3JhcDtyb3ctZ2FwOjhweH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxKdXN0aWZ5Q29udGVudFN0YXJ0ey1tb3otYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lnl0RmxleGlibGVBY3Rpb25zVmlld01vZGVsSnVzdGlmeUNvbnRlbnRFbmR7LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbENlbnRlcmVkIC55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbEFjdGlvbiwueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxDZW50ZXJlZCAueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxBY3Rpb25Sb3d7ZmxleC1iYXNpczowOy1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTttaW4td2lkdGg6MH0ueXRFbmdhZ2VtZW50QmFyVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dEVuZ2FnZW1lbnRCYXJWaWV3TW9kZWxFbmdhZ2VtZW50QmFyV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdztoZWlnaHQ6NDhweDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dExvY2t1cEF0dGFjaG1lbnRzVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1mbGV4OjE7ZmxleDoxOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRMb2NrdXBBdHRhY2htZW50c1ZpZXdNb2RlbEF0dGFjaG1lbnR7bWFyZ2luLXRvcDoxMnB4O21pbi13aWR0aDowfS55dExvY2t1cEF0dGFjaG1lbnRzVmlld01vZGVsRXhwYW5kYWJsZU1ldGFkYXRhe3BhZGRpbmctdG9wOjRweH0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsRnVsbEhlaWdodEJ1dHRvbntoZWlnaHQ6MTAwJX0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsRnVsbEhlaWdodEJ1dHRvbj4ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SG9zdHtoZWlnaHQ6MTAwJTtib3JkZXItcmFkaXVzOjEycHh9Lnl0d0Nhcm91c2VsQWRDYXJkQ29sbGVjdGlvblZpZXdNb2RlbE1ldGFkYXRhQXR0YWNobWVudENhcm91c2Vse2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O2dhcDoxMnB4O292ZXJmbG93LXg6YXV0bztzY3JvbGxiYXItd2lkdGg6bm9uZX0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsTWV0YWRhdGFBdHRhY2htZW50Q2Fyb3VzZWw6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsTWV0YWRhdGFBdHRhY2htZW50Q2Fyb3VzZWxJdGVte3dpZHRoOjk2cHg7ZmxleC1zaHJpbms6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsTWV0YWRhdGFBdHRhY2htZW50Q2Fyb3VzZWxXcmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7d2lkdGg6MTAwJX0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsUGFkZGxle3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MTt3aWR0aDozNnB4O2hlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3gtc2hhZG93OjAgMnB4IDRweCByZ2JhKDAsMCwwLDAuMjUpO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsUGFkZGxlTGVmdHtsZWZ0Oi0xNnB4fS55dHdDYXJvdXNlbEFkQ2FyZENvbGxlY3Rpb25WaWV3TW9kZWxQYWRkbGVSaWdodHtyaWdodDotMTZweH0ueXR3Q2Fyb3VzZWxBZENhcmRJbWFnZVZpZXdNb2RlbEhvc3QsLnl0d0Nhcm91c2VsQWRDYXJkSW1hZ2VWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudHthc3BlY3QtcmF0aW86MTtib3JkZXItcmFkaXVzOjhweDtvdmVyZmxvdzpoaWRkZW47bWF4LWhlaWdodDoxMDAlO21heC13aWR0aDoxMDAlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTthbGlnbi1zZWxmOnN0cmV0Y2g7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246cmVsYXRpdmV9Lnl0d0Nhcm91c2VsQWRDYXJkSW1hZ2VWaWV3TW9kZWxIb3N0OmFmdGVyLC55dHdDYXJvdXNlbEFkQ2FyZEltYWdlVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnQ6YWZ0ZXJ7Y29udGVudDoiIjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7d2lsbC1jaGFuZ2U6b3BhY2l0eTtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowfS55dHdDYXJvdXNlbEFkQ2FyZEltYWdlVmlld01vZGVsSG9zdDpob3ZlcjphZnRlciwueXR3Q2Fyb3VzZWxBZENhcmRJbWFnZVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50OmhvdmVyOmFmdGVye29wYWNpdHk6LjF9Lnl0d0Nhcm91c2VsQWRDYXJkSW1hZ2VWaWV3TW9kZWxIb3N0Q2FyZEJhZGdlLC55dHdDYXJvdXNlbEFkQ2FyZEltYWdlVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRDYXJkQmFkZ2V7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS55dHdBZENhcmRCYWRnZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDtwYWRkaW5nOjRweDtiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2JvcmRlci1yYWRpdXM6MCAwIDRweH0ueXR3QWRJbWFnZVZpZXdNb2RlbEhvc3QsLnl0d0FkSW1hZ2VWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dHdBZEltYWdlVmlld01vZGVsSG9zdEltYWdlQ29udGFpbmVyLC55dHdBZEltYWdlVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRJbWFnZUNvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHdBZEltYWdlVmlld01vZGVsSG9zdEltYWdlLC55dHdBZEltYWdlVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRJbWFnZXt2aXNpYmlsaXR5OmluaGVyaXR9Lnl0d0FkSW1hZ2VWaWV3TW9kZWxIb3N0SW5HcmlkVmlld3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlfS55dHdBZEltYWdlVmlld01vZGVsSG9zdEluR3JpZFZpZXdJbWFnZUNvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHdBZEltYWdlVmlld01vZGVsSG9zdEluR3JpZFZpZXdJbWFnZXt2aXNpYmlsaXR5OmluaGVyaXR9Lnl0d0FkSW1hZ2VWaWV3TW9kZWxIb3N0QWREaXNjbG9zdXJlQmFubmVyQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDo4cHg7bGVmdDo4cHg7ei1pbmRleDoxfS55dHdIb3Jpem9udGFsQ2Fyb3VzZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOnN0cmV0Y2g7YWxpZ24taXRlbXM6c3RyZXRjaDt3aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbn0ueXR3SG9yaXpvbnRhbENhcm91c2VsQ2Fyb3VzZWxXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3dpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVufS55dHdIb3Jpem9udGFsQ2Fyb3VzZWxDYXJvdXNlbElubmVyV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7d2lkdGg6MTAwJX0ueXR3SG9yaXpvbnRhbENhcm91c2VsQW5pbWF0aW5ne3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9Lnl0d0hvcml6b250YWxDYXJvdXNlbENhcm91c2VsSXRlbXtmbGV4LXNocmluazowfS55dHdIb3Jpem9udGFsQ2Fyb3VzZWxOZXh0QnV0dG9ue2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Y3Vyc29yOnBvaW50ZXI7bWFyZ2luLWxlZnQ6OHB4fS55dHdBZEJ1dHRvbkdyb3VwVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtmbGV4LWJhc2lzOjEwMCU7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXR3QWRCdXR0b25Hcm91cFZpZXdNb2RlbEhvc3RQcmltYXJ5QnV0dG9uey1tb3otYm94LWZsZXg6MTtmbGV4OjF9Lnl0d0FkQnV0dG9uR3JvdXBWaWV3TW9kZWxIb3N0U2Vjb25kYXJ5QnV0dG9ue21hcmdpbi1yaWdodDo0cHg7LW1vei1ib3gtZmxleDoxO2ZsZXg6MX0ueXR3QWRCdXR0b25Hcm91cFZpZXdNb2RlbEhvc3RDb21wYWN0V2lkdGh7ZmxleC1iYXNpczowO21pbi13aWR0aDoyMDBweDt3aWR0aDo1MCU7Z2FwOjEycHh9Lnl0d0FkQnV0dG9uR3JvdXBWaWV3TW9kZWxIb3N0Q29tcGFjdFdpZHRoU2Vjb25kYXJ5QnV0dG9ue21hcmdpbi1yaWdodDowfS55dHdBZEJ1dHRvblZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztoZWlnaHQ6LW1vei1tYXgtY29udGVudDtoZWlnaHQ6bWF4LWNvbnRlbnR9Lnl0d0FkQnV0dG9uVmlld01vZGVsSG9zdEhhc0FuaW1hdGlvbnt0cmFuc2l0aW9uOm9wYWNpdHksaGVpZ2h0O3RyYW5zaXRpb24tZHVyYXRpb246LjNzfS55dHdBZEJ1dHRvblZpZXdNb2RlbEhvc3RDb21wYWN0V2lkdGh7ZmxleC1iYXNpczowO3dpZHRoOi1tb3otbWF4LWNvbnRlbnQ7d2lkdGg6bWF4LWNvbnRlbnQ7bWluLXdpZHRoOjI1JX0ueXR3QWRCdXR0b25WaWV3TW9kZWxIb3N0Q29udGVudFdpZHRoe3dpZHRoOi1tb3otbWF4LWNvbnRlbnQ7d2lkdGg6bWF4LWNvbnRlbnR9Lnl0d0FkQnV0dG9uVmlld01vZGVsU2hvd3tvcGFjaXR5OjF9Lnl0d0FkQnV0dG9uVmlld01vZGVsSGlkZXtvcGFjaXR5OjB9Lnl0d0FkQnV0dG9uVmlld01vZGVsRnVsbEhlaWdodHtoZWlnaHQ6YXV0b30ueXR3QWRCdXR0b25WaWV3TW9kZWxOb0hlaWdodHtoZWlnaHQ6MH0ueXRTbGltbGluZVN1cnZleVZpZXdNb2RlbEhvc3R7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3gtc2hhZG93OjAgMnB4IDEwcHggcmdiYSgwLDAsMCwwLjI1KTttYXJnaW4tdG9wOjI0cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21heC1oZWlnaHQ6MzAwcHg7dHJhbnNpdGlvbjptYXgtaGVpZ2h0IC4zcyxtYXJnaW4gLjNzLG9wYWNpdHkgLjNzfS55dFNsaW1saW5lU3VydmV5Vmlld01vZGVsSG9zdDpiZWZvcmV7Y29udGVudDoiIjtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym94LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsMC4yNSk7cG9zaXRpb246YWJzb2x1dGU7bWFyZ2luLWxlZnQ6LTEycHg7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDt0b3A6LTEycHg7bGVmdDo1MCU7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyl9Lnl0U2xpbWxpbmVTdXJ2ZXlWaWV3TW9kZWxDb2xsYXBzZWR7bWF4LWhlaWdodDowO21hcmdpbi10b3A6MDtvcGFjaXR5OjB9Lnl0U2xpbWxpbmVTdXJ2ZXlWaWV3TW9kZWxDb2xsYXBzZWQ6YmVmb3Jle29wYWNpdHk6MH0ueXRTbGltbGluZVN1cnZleVZpZXdNb2RlbENvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7cGFkZGluZzo4cHggMTJweDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9Lnl0U2xpbWxpbmVTdXJ2ZXlWaWV3TW9kZWxIZWFkZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lnl0U2xpbWxpbmVTdXJ2ZXlWaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjIuMnJlbX0ueXRTbGltbGluZVN1cnZleVZpZXdNb2RlbEFuc3dlcnN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lnl0U2xpbWxpbmVTdXJ2ZXlWaWV3TW9kZWxJY29ue2hlaWdodDozNnB4O3dpZHRoOjM2cHh9Lnl0U2xpbWxpbmVTdXJ2ZXlWaWV3TW9kZWxBbnN3ZXJzVGV4dHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUYWJsZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlfS55dFRhYmxlVmlld01vZGVsUm93e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbi1ib3R0b206OHB4fS55dFRhYmxlVmlld01vZGVsUm93Qm90dG9tQm9yZGVye3BhZGRpbmctYm90dG9tOjhweH0ueXRUYWJsZVZpZXdNb2RlbFJvd0JvdHRvbUJvcmRlcjpub3QoOmxhc3QtY2hpbGQpe2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX0ueXRUYWJsZVZpZXdNb2RlbENlbGx7Y29sb3I6IzYwNjA2MDt0ZXh0LWFsaWduOnJpZ2h0O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUYWJsZVZpZXdNb2RlbFJvd0xhYmVse2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dERpc2NsYWltZXJJdGVtVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrO2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxLjZyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFJlc3BvbnNlQWN0aW9uc1ZpZXdNb2RlbEhvc3R7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRSZXNwb25zZUFjdGlvbnNWaWV3TW9kZWxUZXh0e2Rpc3BsYXk6YmxvY2t9Lnl0UmVzcG9uc2VBY3Rpb25zVmlld01vZGVsVGV4dExlZnR7bWFyZ2luLXJpZ2h0OjE2cHh9Lnl0UmVzcG9uc2VBY3Rpb25zVmlld01vZGVsVGV4dFJpZ2h0e21hcmdpbi1sZWZ0OjE2cHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbEhvc3RIaWRkZW57ZGlzcGxheTpub25lfS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnQ7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0TWVkaWFDYXJke2JvcmRlci1yYWRpdXM6MzJweDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtwYWRkaW5nOjI0cHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0Q2FyZHstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6MTZweDtwYWRkaW5nOjAgMTZweH0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRQaWxsey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0UGlsbC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFNtYWxsTGF5b3V0e21heC13aWR0aDo5MCU7aGVpZ2h0OjQwcHg7Ym9yZGVyLXJhZGl1czoyMHB4O3BhZGRpbmc6NHB4IDE2cHggNHB4IDRweH0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRQaWxsLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0U21hbGxMYXlvdXQgLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsTGVhZGluZ0FjY2Vzc29yeXtoZWlnaHQ6MzJweDt3aWR0aDozMnB4fS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFBpbGwueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRTbWFsbExheW91dC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFRleHRPbmx5e3BhZGRpbmc6OHB4IDE2cHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0UGlsbC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdERlZmF1bHRMYXlvdXR7aGVpZ2h0OjQ4cHg7Ym9yZGVyLXJhZGl1czoyNHB4O21heC13aWR0aDo1MDBweDtwYWRkaW5nOjZweCAxNnB4IDZweCA2cHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0UGlsbC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdERlZmF1bHRMYXlvdXQgLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsTGVhZGluZ0FjY2Vzc29yeXtoZWlnaHQ6MzZweDt3aWR0aDozNnB4fS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFBpbGwueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHREZWZhdWx0TGF5b3V0Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0VGV4dE9ubHl7cGFkZGluZzoxNnB4IDI0cHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsTGVhZGluZ0FjY2Vzc29yeXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZmxleC1zaHJpbms6MH0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRQaWxsIC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbExlYWRpbmdBY2Nlc3Nvcnl7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpO21hcmdpbi1yaWdodDo4cHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0Q2FyZCAueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxMZWFkaW5nQWNjZXNzb3J5e21hcmdpbi1yaWdodDoxMnB4fS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbExlYWRpbmdBY2Nlc3NvcnlSb3RhdGVMZWZ0e3RyYW5zZm9ybTpyb3RhdGUoLTNkZWcpfS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbExlYWRpbmdBY2Nlc3NvcnlSb3RhdGVSaWdodHt0cmFuc2Zvcm06cm90YXRlKDNkZWcpfS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbEVuYWJsZVpvb206aG92ZXIgLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsTGVhZGluZ0ltYWdle3RyYW5zZm9ybTpzY2FsZSgxLjA4KX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246bm8tcHJlZmVyZW5jZSl7Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsRW5hYmxlWm9vbSAueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxMZWFkaW5nSW1hZ2V7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfX0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRUZXh0V3JhcHBlcnttaW4td2lkdGg6MH0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRUZXh0e2NvbG9yOiMwMzAzMDM7LW1vei1ib3gtZmxleDoxO2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjB9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0U21hbGxMYXlvdXQgLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0VGV4dHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0RGVmYXVsdExheW91dCAueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRUZXh0e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFNlY29uZGFyeUxhYmVse3BhZGRpbmctYm90dG9tOjRweDtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdE1lZGlhQ2FyZCAueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxMZWFkaW5nQWNjZXNzb3J5e21hcmdpbi1yaWdodDowO2JvcmRlci1yYWRpdXM6MTZweDtvdmVyZmxvdzpoaWRkZW59Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0TWVkaWFDYXJkIC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFRleHRXcmFwcGVye3BhZGRpbmctdG9wOjEycHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0Q2FyZC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFNtYWxsTGF5b3V0e3dpZHRoOjEwMCU7bWluLWhlaWdodDo1NnB4fS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdENhcmQueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRTbWFsbExheW91dCAueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRUZXh0e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0Q2FyZC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFNtYWxsTGF5b3V0IC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFRleHR7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRDYXJkLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0RGVmYXVsdExheW91dHt3aWR0aDoxMDAlO21pbi1oZWlnaHQ6NjhweH0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRDYXJkLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0RGVmYXVsdExheW91dCAueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRUZXh0e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdENhcmQueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHREZWZhdWx0TGF5b3V0IC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFRleHR7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMb2NrdXBWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWZsZXg6MTtmbGV4OjE7cG9zaXRpb246cmVsYXRpdmU7Y3Vyc29yOnBvaW50ZXI7bWluLXdpZHRoOjA7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fS55dExvY2t1cFZpZXdNb2RlbEZsZXhOb25ley1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmV9Lnl0TG9ja3VwVmlld01vZGVsV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0TG9ja3VwVmlld01vZGVsRW5kb3JzZW1lbnR7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0yMHB4O2NvbG9yOiM2MDYwNjB9Lnl0TG9ja3VwVmlld01vZGVsTWV0YWRhdGF7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7bWluLXdpZHRoOjA7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dExvY2t1cFZpZXdNb2RlbENlbnRlcmVkIC55dExvY2t1cFZpZXdNb2RlbE1ldGFkYXRhey1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0TG9ja3VwVmlld01vZGVsQWRkTWFyZ2luc3ttYXJnaW4tcmlnaHQ6MTJweDttYXJnaW4tbGVmdDoxMnB4fS55dExvY2t1cFZpZXdNb2RlbEZ1bGxibGVlZCAueXRMb2NrdXBWaWV3TW9kZWxNZXRhZGF0YXttYXJnaW4tbGVmdDoxMnB4O21hcmdpbi1yaWdodDoxMnB4fS55dExvY2t1cFZpZXdNb2RlbENvbnRlbnRJbWFnZXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aW5oZXJpdDstbW96LWJveC1kaXJlY3Rpb246aW5oZXJpdDtmbGV4LWRpcmVjdGlvbjppbmhlcml0fS55dExvY2t1cFZpZXdNb2RlbENpbmVtYXRpY3tib3JkZXItcmFkaXVzOjEycHg7b3ZlcmZsb3c6aGlkZGVufS55dExvY2t1cFZpZXdNb2RlbFZlcnRpY2Fsey1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRMb2NrdXBWaWV3TW9kZWxWZXJ0aWNhbCAueXRMb2NrdXBWaWV3TW9kZWxDb250ZW50SW1hZ2V7cGFkZGluZy1ib3R0b206OHB4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TG9ja3VwVmlld01vZGVsVmVydGljYWwueXRMb2NrdXBWaWV3TW9kZWxSaWNoR3JpZExlZ2FjeU1hcmdpbiAueXRMb2NrdXBWaWV3TW9kZWxDb250ZW50SW1hZ2V7cGFkZGluZy1ib3R0b206MTJweH0ueXRMb2NrdXBWaWV3TW9kZWxIb3Jpem9udGFsey1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O2hlaWdodDppbmhlcml0fS55dExvY2t1cFZpZXdNb2RlbEhvcml6b250YWwgLnl0TG9ja3VwVmlld01vZGVsQ29udGVudEltYWdle2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmU7cGFkZGluZy1yaWdodDoxNnB4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWF4LXdpZHRoOjUwMHB4fS55dExvY2t1cFZpZXdNb2RlbEhvcml6b250YWwgLnl0TG9ja3VwVmlld01vZGVsTWV0YWRhdGF7LW1vei1ib3gtZmxleDoxO2ZsZXg6MX0ueXRMb2NrdXBWaWV3TW9kZWxIb3Jpem9udGFsLnl0TG9ja3VwVmlld01vZGVsQ29sbGVjdGlvblN0YWNrMXtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW4tdG9wOjZweH0ueXRMb2NrdXBWaWV3TW9kZWxIb3Jpem9udGFsLnl0TG9ja3VwVmlld01vZGVsQ29sbGVjdGlvblN0YWNrMntwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW4tdG9wOjEwcHh9Lnl0TG9ja3VwVmlld01vZGVsSG9yaXpvbnRhbC55dExvY2t1cFZpZXdNb2RlbENvbXBhY3QgLnl0TG9ja3VwVmlld01vZGVsQ29udGVudEltYWdle3BhZGRpbmctcmlnaHQ6OHB4fS55dExvY2t1cFZpZXdNb2RlbFNpbmdsZUNvbHVtbkdyaWQueXRMb2NrdXBWaWV3TW9kZWxDb2xsZWN0aW9uU3RhY2sxe3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbi10b3A6NnB4fS55dExvY2t1cFZpZXdNb2RlbFNpbmdsZUNvbHVtbkdyaWQueXRMb2NrdXBWaWV3TW9kZWxDb2xsZWN0aW9uU3RhY2sye3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbi10b3A6MTBweH0ueXRMb2NrdXBWaWV3TW9kZWxJbkNhcmQueXRMb2NrdXBWaWV3TW9kZWxDb2xsZWN0aW9uU3RhY2sxe3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbi10b3A6NnB4fS55dExvY2t1cFZpZXdNb2RlbEluQ2FyZC55dExvY2t1cFZpZXdNb2RlbENvbGxlY3Rpb25TdGFjazJ7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLXRvcDoxMHB4fS55dExvY2t1cFZpZXdNb2RlbE1ldGFkYXRhT25UaHVtYm5haWx7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3Bvc2l0aW9uOnJlbGF0aXZlfS55dExvY2t1cFZpZXdNb2RlbE1ldGFkYXRhT25UaHVtYm5haWwgLnl0TG9ja3VwVmlld01vZGVsTWV0YWRhdGF7LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3RvcDo1MCU7cGFkZGluZzo4cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gdG9wLHJnYmEoMCwwLDAsMC44KSAwLHJnYmEoMCwwLDAsMCkgMTAwJSl9Lnl0TG9ja3VwVmlld01vZGVsTWV0YWRhdGFPblRodW1ibmFpbC55dExvY2t1cFZpZXdNb2RlbENpbmVtYXRpYyAueXRMb2NrdXBWaWV3TW9kZWxDb250ZW50SW1hZ2V7aGVpZ2h0OjU1JX0ueXRMb2NrdXBWaWV3TW9kZWxNZXRhZGF0YU9uVGh1bWJuYWlsLnl0TG9ja3VwVmlld01vZGVsQ2luZW1hdGljIC55dExvY2t1cFZpZXdNb2RlbE1ldGFkYXRhe2hlaWdodDo3NSU7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLHRyYW5zcGFyZW50IDAsIzMzMyA1MCUpO3RvcDphdXRvfS55dExvY2t1cFZpZXdNb2RlbENhcmR7Ym9yZGVyLXJhZGl1czoxMnB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSl9Lnl0TG9ja3VwVmlld01vZGVsUHJvdGVjdEJhY2tncm91bmR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyl9Lnl0U3Vic2NyaWJlQnV0dG9uVmlld01vZGVsSG9zdHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDttYXgtd2lkdGg6MTAwJX0ueXRTdWJzY3JpYmVCdXR0b25WaWV3TW9kZWxIb3N0Q2FuQW5pbWF0ZVdpZHRoe3RyYW5zaXRpb246d2lkdGggLjVzIGVhc2V9Lnl0U3Vic2NyaWJlQnV0dG9uVmlld01vZGVsSG9zdEhpZGRlbntkaXNwbGF5Om5vbmV9Lnl0U3Vic2NyaWJlQnV0dG9uVmlld01vZGVsSW52aXNpYmxle3Bvc2l0aW9uOmFic29sdXRlO3Zpc2liaWxpdHk6aGlkZGVuO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0U3Vic2NyaWJlQnV0dG9uVmlld01vZGVsQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS55dFN1YnNjcmliZUJ1dHRvblZpZXdNb2RlbEFuaW1hdGVkQWN0aW9uV3JhcHBlcnttYXgtd2lkdGg6MTAwJX0ueXRTdWJzY3JpYmVCdXR0b25WaWV3TW9kZWxBbmltYXRlZEFjdGlvbldyYXBwZXJJc0FuaW1hdGluZywueXRTdWJzY3JpYmVCdXR0b25WaWV3TW9kZWxTdGF0aWNXaWR0aHt3aWR0aDoxMDAlfS55dENvbGxlY3Rpb25zU3RhY2tSZWxhdGl2ZVN0YWNre3Bvc2l0aW9uOnJlbGF0aXZlfS55dENvbGxlY3Rpb25zU3RhY2tTcGFjZXJ7aGVpZ2h0OjVweH0ueXRDb2xsZWN0aW9uc1N0YWNrU3BhY2VyRG91YmxlU3RhY2t7aGVpZ2h0OjlweH0ueXRDb2xsZWN0aW9uc1N0YWNrQ29sbGVjdGlvblN0YWNrMntiYWNrZ3JvdW5kLWNvbG9yOiM2MDYwNjA7b3BhY2l0eTo1MCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOi04cHg7d2lkdGg6Y2FsYygxMDAlIC0gMjRweCk7aGVpZ2h0OjEwMCU7bGVmdDoxMnB4O3JpZ2h0OjEycHg7Ym9yZGVyLXJhZGl1czoxMnB4fUBtZWRpYSAobWluLWFzcGVjdC1yYXRpbzoxMy85KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1pbi13aWR0aDo5MzFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey55dENvbGxlY3Rpb25zU3RhY2tDb2xsZWN0aW9uU3RhY2syUmVzcG9uc2l2ZU1vZGV7ZGlzcGxheTpub25lfX0ueXRDb2xsZWN0aW9uc1N0YWNrQ29sbGVjdGlvblN0YWNrMk1hc2t7bWFyZ2luLXRvcDotMXB4O21hc2staW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx0cmFuc3BhcmVudCAwLHRyYW5zcGFyZW50IDFweCxibGFjayAwLGJsYWNrIDRweCx0cmFuc3BhcmVudCAwLHRyYW5zcGFyZW50IDZweCxibGFjayAwLGJsYWNrIDhweCx0cmFuc3BhcmVudCAwLHRyYW5zcGFyZW50IDEwcHgsYmxhY2sgMCl9Lnl0Q29sbGVjdGlvbnNTdGFja0NvbGxlY3Rpb25TdGFjazF7YmFja2dyb3VuZC1jb2xvcjojNjA2MDYwO21hcmdpbi10b3A6LTFweDtib3JkZXItdG9wOjFweCBzb2xpZCAjZmZmfS55dENvbGxlY3Rpb25zU3RhY2tDb2xsZWN0aW9uU3RhY2sxU21hbGx7cG9zaXRpb246YWJzb2x1dGU7dG9wOi00cHg7d2lkdGg6Y2FsYygxMDAlIC0gMTZweCk7aGVpZ2h0OjEwMCU7bGVmdDo4cHg7cmlnaHQ6OHB4O2JvcmRlci1yYWRpdXM6NHB4fS55dENvbGxlY3Rpb25zU3RhY2tDb2xsZWN0aW9uU3RhY2sxTWVkaXVte3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNHB4O3dpZHRoOmNhbGMoMTAwJSAtIDE2cHgpO2hlaWdodDoxMDAlO2xlZnQ6OHB4O3JpZ2h0OjhweDtib3JkZXItcmFkaXVzOjhweH0ueXRDb2xsZWN0aW9uc1N0YWNrQ29sbGVjdGlvblN0YWNrMUxhcmdle3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNHB4O3dpZHRoOmNhbGMoMTAwJSAtIDE2cHgpO2hlaWdodDoxMDAlO2xlZnQ6OHB4O3JpZ2h0OjhweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0Q29sbGVjdGlvbnNTdGFja0NvbGxlY3Rpb25TdGFjazFNYXNre21hc2staW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx0cmFuc3BhcmVudCAwLHRyYW5zcGFyZW50IDFweCxibGFjayAwLGJsYWNrIDRweCx0cmFuc3BhcmVudCAwLHRyYW5zcGFyZW50IDZweCxibGFjayAwKTtib3JkZXItdG9wOm5vbmV9Lnl0UHJvZmlsZUljb25Ib3N0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO292ZXJmbG93OmhpZGRlbjtmbGV4LXNocmluazowO2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEpfS55dFByb2ZpbGVJY29uSG9zdDpoYXMoLnl0UHJvZmlsZUljb25JbWFnZSl7YmFja2dyb3VuZC1jb2xvcjp1bnNldH0ueXRQcm9maWxlSWNvbkltYWdle3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9Lnl0TWV0YWRhdGFCYWRnZVJlbmRlcmVySG9zdCsueXRNZXRhZGF0YUJhZGdlUmVuZGVyZXJIb3N0e21hcmdpbi1sZWZ0OjRweH0ueXR3U3RhbmRhbG9uZVlwY0JhZGdlUmVuZGVyZXJIb3N0e21hcmdpbi1sZWZ0OjRweH0ueXR3U3RhbmRhbG9uZVlwY0JhZGdlUmVuZGVyZXJTdGFuZGFsb25lWXBjTW9kZXJuQmFkZ2V7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3d9Lnl0d1N0YW5kYWxvbmVZcGNCYWRnZVJlbmRlcmVyU3RhbmRhbG9uZVlwY0Rpc2NvdW50VGV4dEJhZGdle21hcmdpbi1yaWdodDo0cHg7dGV4dC1kZWNvcmF0aW9uOmxpbmUtdGhyb3VnaH0ueXR3VGV4dEJhZGdlUmVuZGVyZXJIb3N0Ky55dHdUZXh0QmFkZ2VSZW5kZXJlckhvc3R7bWFyZ2luLWxlZnQ6NHB4fS5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVySG9zdHstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0OjNlbTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO292ZXJmbG93OmhpZGRlbn1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVySG9zdHtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6bm9uZTtvdmVyZmxvdzp2aXNpYmxlfX0uWXRtQmFkZ2VBbmRCeWxpbmVSZW5kZXJlckhvc3RbZGF0YS1pcy1hbGwtYmFkZ2VzPXRydWVde21hcmdpbi10b3A6NHB4fS5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVySG9zdCB5dG0tYmFkZ2Utc3VwcG9ydGVkLXJlbmRlcmVye3Bvc2l0aW9uOnJlbGF0aXZlfS5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVyU21hbGxMb2NrdXB7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtbGluZS1jbGFtcDoxfS5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVyU21hbGxMb2NrdXBEaXZ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lll0bUJhZGdlQW5kQnlsaW5lUmVuZGVyZXJIb3N0IC5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVyU21hbGxMb2NrdXBTcGFue2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MS4yNTttYXgtaGVpZ2h0OjEuMjVlbTtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6cHJlO3dvcmQtYnJlYWs6YnJlYWstd29yZDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVySXRlbUJhZGdlLC5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVySXRlbUJ5bGluZSwuWXRtQmFkZ2VBbmRCeWxpbmVSZW5kZXJlclNlcGFyYXRvcnttYXJnaW4tcmlnaHQ6NHB4fS5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVySXRlbUJ5bGluZXtmb250LXNpemU6MS4ycmVtO2Rpc3BsYXk6aW5saW5lO29wYWNpdHk6LjZ9Lll0bUJhZGdlQW5kQnlsaW5lUmVuZGVyZXJJdGVtQmFkZ2V7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lll0bUJhZGdlQW5kQnlsaW5lUmVuZGVyZXJTZXBhcmF0b3J7Zm9udC1zaXplOjEuMnJlbTtvcGFjaXR5Oi42fS5ZdG1CYWRnZVN1cHBvcnRlZFJlbmRlcmVySG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0uWXRtQmFkZ2VTdXBwb3J0ZWRSZW5kZXJlckhvc3Q+eXQtbWV0YWRhdGEtYmFkZ2UtcmVuZGVyZXJ7bWluLXdpZHRoOjA7ZmxleC1zaHJpbms6MTAwMDB9Lll0bUJhZGdlU3VwcG9ydGVkUmVuZGVyZXJIb3N0Pnl0LW1ldGFkYXRhLWJhZGdlLXJlbmRlcmVyOmZpcnN0LWNoaWxke2ZsZXgtc2hyaW5rOjF9Lll0bUJhZGdlU3VwcG9ydGVkUmVuZGVyZXJIb3N0IHl0bS1iYWRnZXtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30uWXRtUHJpdmFjeUJhZGdlUmVuZGVyZXJIb3N0e21hcmdpbi1sZWZ0OjRweH0uWXRtQ2hhbm5lbFRodW1ibmFpbFdpdGhMaW5rUmVuZGVyZXJIb3N0e2Rpc3BsYXk6YmxvY2t9Lll0bUNoYW5uZWxUaHVtYm5haWxXaXRoTGlua1JlbmRlcmVySWNvbntoZWlnaHQ6NDBweDt3aWR0aDo0MHB4fWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbXtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MDttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW59bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVtIC5tZWRpYS1pdGVtLXRodW1ibmFpbC1jb250YWluZXJ7cGFkZGluZzowIDEycHh9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVtIC5tZWRpYS1pdGVtLWRldGFpbHN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO21pbi13aWR0aDowO3BhZGRpbmctbGVmdDowO21hcmdpbi10b3A6NHB4fXl0bS1tZWRpYS1pdGVtIC51cHBlci1kZXRhaWxzey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDttYXJnaW4tYm90dG9tOjhweH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWNoYW5uZWx7bWFyZ2luLXRvcDo4cHh9eXRtLW1lZGlhLWl0ZW0gLnVwcGVyLWRldGFpbHMgLm1lZGlhLWNoYW5uZWwseXRtLW1lZGlhLWl0ZW1bdXNlLXZlcnRpY2FsLWxheW91dF0gLnVwcGVyLWRldGFpbHMgLm1lZGlhLWNoYW5uZWx7bWFyZ2luLXRvcDowfXl0bS1tZWRpYS1pdGVtIC51cHBlci1kZXRhaWxzIHl0bS1wcm9maWxlLWljb257ZGlzcGxheTpibG9jaztoZWlnaHQ6MzZweDt3aWR0aDozNnB4fWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbSAubWVkaWEtaXRlbS1tZXRhZGF0YXttYXJnaW4tdG9wOjhweH1sYXp5LWxpc3QgLml0ZW0geXRtLW1lZGlhLWl0ZW17bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MTJweH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7bWFyZ2luOjAgLTEycHh9QGtleWZyYW1lcyBtZXRhZGF0YS1ib3VuY2V7MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9MjAlLDgwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTIwcHgpfX15dG0tbWVkaWEtaXRlbSAubWV0YWRhdGEtc2Nyb2xsLWNvbnRhaW5lcntvdmVyZmxvdzphdXRvO3Njcm9sbC1zbmFwLXR5cGU6eCBtYW5kYXRvcnk7c2Nyb2xsYmFyLXdpZHRoOm5vbmV9eXRtLW1lZGlhLWl0ZW0gLm1ldGFkYXRhLWNvbnRlbnQtY29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3dpZHRoOjIwMCV9eXRtLW1lZGlhLWl0ZW0gLm1ldGFkYXRhLWNvbnRlbnQtY29udGFpbmVyLmJvdW5jZXthbmltYXRpb24tbmFtZTptZXRhZGF0YS1ib3VuY2U7YW5pbWF0aW9uLWR1cmF0aW9uOjNzO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MX15dG0tbWVkaWEtaXRlbSAuc2Nyb2xsLXZpZXd7d2lkdGg6NTAlO3Njcm9sbC1zbmFwLWFsaWduOnN0YXJ0fXl0bS1tZWRpYS1pdGVtIC5zY3JvbGwtZG90cy1jb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDAlfXl0bS1tZWRpYS1pdGVtIC5zY3JvbGwtZG90e2hlaWdodDo0cHg7d2lkdGg6NHB4O2JvcmRlcjoxcHggc29saWQgIzAzMDMwMztib3JkZXItcmFkaXVzOjUwJTttYXJnaW46MCAzcHh9eXRtLW1lZGlhLWl0ZW0gLnNjcm9sbC1kb3QuYWN0aXZle2JhY2tncm91bmQtY29sb3I6IzAzMDMwM315dG0tbWVkaWEtaXRlbXtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MCAxMnB4O21pbi13aWR0aDowfXl0bS1tZWRpYS1pdGVtW3VzZS12ZXJ0aWNhbC1sYXlvdXRde3BhZGRpbmc6MH15dG0tbWVkaWEtaXRlbVt1c2UtdmVydGljYWwtbGF5b3V0XSAubWVkaWEtaXRlbS1tZXRhZGF0YXttYXJnaW4tdG9wOjhweH15dG0tbWVkaWEtaXRlbVt1c2UtdmVydGljYWwtbGF5b3V0XSAudXBwZXItZGV0YWlscyAubWVkaWEtaXRlbS1tZXRhZGF0YXttYXJnaW4tdG9wOjA7YWxpZ24tc2VsZjpjZW50ZXJ9eXRtLW1lZGlhLWl0ZW1bdXNlLXZlcnRpY2FsLWxheW91dF0gLm1lZGlhLWNoYW5uZWx7bWFyZ2luLXRvcDo4cHh9eXRtLW1lZGlhLWl0ZW0+YXtkaXNwbGF5OmJsb2NrfS5tZWRpYS1pdGVtLXRodW1ibmFpbC1jb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmV9Lm1lZGlhLWl0ZW0tdGh1bWJuYWlsLWNvbnRhaW5lci5zdGFja2VkOm5vdCgubXVsdGktY29sdW1uLWZlZWQpe21hcmdpbi1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0OjEycHg7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLXRvcDoxMHB4fS5tZWRpYS1pdGVtLXRodW1ibmFpbC1jb250YWluZXIubXVsdGktY29sdW1uLWZlZWR7bWFyZ2luLXRvcDotMnB4fUBtZWRpYSAobWluLWFzcGVjdC1yYXRpbzoxMy85KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1pbi13aWR0aDo5MzFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5tZWRpYS1pdGVtLXRodW1ibmFpbC1jb250YWluZXIuc3RhY2tlZDpub3QoLm11bHRpLWNvbHVtbi1mZWVkKXttYXJnaW4tbGVmdDp1bnNldDttYXJnaW4tcmlnaHQ6dW5zZXR9Lm1lZGlhLWl0ZW0tdGh1bWJuYWlsLWNvbnRhaW5lci5zdGFja2VkOm5vdCgubXVsdGktY29sdW1uLWZlZWQpe21hcmdpbi10b3A6NHB4fXl0bS1tZWRpYS1pdGVtIC5tZWRpYS1pdGVtLWxhbmRzY2FwZS1zdGFja3tkaXNwbGF5Om5vbmV9eXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tZGV0YWlscy5zdGFja2Vke21hcmdpbi10b3A6NHB4fX1AbWVkaWEgKG1pbi13aWR0aDo1NTBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7eXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tZGV0YWlscy5zdGFja2VkLXBsYXlsaXN0e21hcmdpbi1sZWZ0OjRweH19Lm1lZGlhLWl0ZW0tYW5pbWF0ZWQtdGh1bWJuYWlsLC5tZWRpYS1pdGVtLXRodW1ibmFpbC1zbGlkZXNob3d7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCV9LmlubGluZS1ieWxpbmUtY2hhbm5lbC1uYW1le21hcmdpbi1ib3R0b206M3B4fS5tZWRpYS1pdGVtLW1ldGFkYXRhe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWluLXdpZHRoOjB9Lm1lZGlhLWl0ZW0taGVhZGxpbmV7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtvdmVyZmxvdzpoaWRkZW47bGluZS1oZWlnaHQ6MS4yNTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2ZvbnQtd2VpZ2h0OjQwMDttYXJnaW46MCAwIDNweDtmb250LXNpemU6MS40cmVtfS5tZWRpYS1pdGVtLXRvcC1iYWRnZXMgeXQtbWV0YWRhdGEtYmFkZ2UtcmVuZGVyZXJ7ZGlzcGxheTpibG9ja30ubWVkaWEtaWNvbntoZWlnaHQ6NDBweDt3aWR0aDo0MHB4fS5tZWRpYS1jaGFubmVse2ZsZXgtc2hyaW5rOjB9Lm1lZGlhLWl0ZW0taW5mbyx5dG0tbWVkaWEtaXRlbSAubWVkaWEtaXRlbS1kZXRhaWxzey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTttaW4td2lkdGg6MH0ubWVkaWEtaXRlbS1pbmZve2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDttYXJnaW4tbGVmdDoxMnB4fS5tZWRpYS1pdGVtLWRldGFpbHMuc21hbGwtbG9ja3VwLC5tZWRpYS1pdGVtLWluZm9bbm8tY2hhbm5lbC1hdmF0YXI9dHJ1ZV17bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6MH0ubWVkaWEtaXRlbS1kZXRhaWxzLmZlYXR1cmUtcGhvbmUtbWluaW1hbC1sb2NrdXBzIC5tZWRpYS1pdGVtLWluZm97bWFyZ2luLWxlZnQ6OHB4O21hcmdpbi1yaWdodDo4cHh9Lm1lZGlhLWl0ZW0tZGV0YWlscyAubWVkaWEtaXRlbS1pbmZvW25vLWNoYW5uZWwtYXZhdGFyPXRydWVdW3VzZS1tb2Rlcm4tY29sbGVjdGlvbnM9dHJ1ZV17bWFyZ2luLWxlZnQ6NHB4fS5tZWRpYS1pdGVtLWhlYWRsaW5lLXBsYWNlaG9sZGVye2hlaWdodDoxNnB4O21heC13aWR0aDozMDBweDttYXJnaW4tYm90dG9tOjhweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItcmFkaXVzOjJweH0ubWVkaWEtaXRlbS1oZWFkbGluZS1wbGFjZWhvbGRlcjpudGgtY2hpbGQoMil7d2lkdGg6MTIwcHg7bWFyZ2luLWJvdHRvbTo4cHh9Lm1lZGlhLWl0ZW0tZW5kb3JzZW1lbnQtY29udGFpbmVye2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS42cmVtfUBtZWRpYSAobWluLXdpZHRoOjMwMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1pbi13aWR0aDozMDBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lm1lZGlhLWl0ZW0tZW5kb3JzZW1lbnQtY29udGFpbmVye2xldHRlci1zcGFjaW5nOi4wMmVtfX0ubWVkaWEtaXRlbS1lbmRvcnNlbWVudC1jb250YWluZXJ7bWFyZ2luLWJvdHRvbTotNHB4O2NvbG9yOiMwMzAzMDM7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5tZWRpYS1pdGVtLWVuZG9yc2VtZW50LWNvbnRhaW5lcj4ubWVkaWEtaXRlbS1zZWNvbmRhcnktaGVhZGxpbmV7cGFkZGluZy10b3A6OHB4fS5tZWRpYS1pdGVtLWVuZG9yc2VtZW50LWNvbnRhaW5lcj4ubWVkaWEtaXRlbS1zZWNvbmRhcnktaGVhZGxpbmU+c3Bhbnstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7ZGlzcGxheTotd2Via2l0LWJveDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczttYXgtaGVpZ2h0OjMuMnJlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtsaW5lLWNsYW1wOjJ9Lm1lZGlhLWl0ZW0tZW5kb3JzZW1lbnQtY29udGFpbmVyPi5tZWRpYS1pdGVtLXNlY29uZGFyeS1oZWFkbGluZT5zcGFuPnN0cm9uZ3tmb250LXdlaWdodDo3MDB9Lm1lZGlhLWl0ZW0tc3ViaGVhZC1wbGFjZWhvbGRlcntoZWlnaHQ6MTZweDt3aWR0aDoxMjBweDttYXJnaW4tYm90dG9tOjNweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItcmFkaXVzOjJweH0ubWVkaWEtaXRlbS1tZW51e2ZsZXgtc2hyaW5rOjB9Lm1lZGlhLWl0ZW0tYnlsaW5le3VuaWNvZGUtYmlkaTotbW96LWlzb2xhdGU7dW5pY29kZS1iaWRpOmlzb2xhdGV9eXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tZGV0YWlscy5mZWF0dXJlLXBob25lLW1pbmltYWwtbG9ja3VwcyAubWVkaWEtY2hhbm5lbHtkaXNwbGF5Om5vbmV9eXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tZGV0YWlsc3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDttYXJnaW4tdG9wOjEycHh9eXRtLW1lZGlhLWl0ZW1bdXNlLXZlcnRpY2FsLWxheW91dF0gLm1lZGlhLWl0ZW0tZGV0YWlsc3ttYXJnaW4tdG9wOjRweH15dG0tYnJvd3NlIGxhenktbGlzdCB5dG0taXRlbS1zZWN0aW9uLXJlbmRlcmVyOmZpcnN0LW9mLXR5cGUgeXRtLW1lZGlhLWl0ZW17bWFyZ2luOjB9eXRtLWJyb3dzZSB5dG0taXRlbS1zZWN0aW9uLXJlbmRlcmVyOmZpcnN0LW9mLXR5cGUgeXRtLW1lZGlhLWl0ZW17bWFyZ2luOi0xMnB4IDAgMH15dG0tbWVkaWEtaXRlbSAudmlkZW8tdGh1bWJuYWlsLW92ZXJsYXktc2lkZXt3aWR0aDozMyV9QG1lZGlhIChtYXgtd2lkdGg6NTQ5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpe2xhenktbGlzdCB5dG0tbWVkaWEtaXRlbSAubWVkaWEtaXRlbS1kZXRhaWxze3BhZGRpbmctbGVmdDoxMnB4fWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbS5iaWctc2hvcnRzLXNpbmdsZXRvbiAubWVkaWEtaXRlbS10aHVtYm5haWwtY29udGFpbmVye3BhZGRpbmc6MH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0uYmlnLXNob3J0cy1zaW5nbGV0b24gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7bWFyZ2luOjB9fUBtZWRpYSAobWluLXdpZHRoOjU1MHB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXt5dG0tYnJvd3NlIHl0bS1pdGVtLXNlY3Rpb24tcmVuZGVyZXI6Zmlyc3Qtb2YtdHlwZSB5dG0tcHJvbW90ZWQtdmlkZW8tcmVuZGVyZXIgeXRtLW1lZGlhLWl0ZW17bWFyZ2luLXRvcDowfWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbXtwYWRkaW5nOjAgMTJweH1sYXp5LWxpc3QgLml0ZW0geXRtLW1lZGlhLWl0ZW17bWFyZ2luLXRvcDoxMnB4fWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbSAubWVkaWEtaXRlbS10aHVtYm5haWwtY29udGFpbmVye3BhZGRpbmc6MH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7bWFyZ2luOjB9fUBtZWRpYSAobWluLWFzcGVjdC1yYXRpbzoxMy85KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1pbi13aWR0aDo5MzFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpe3l0bS1tZWRpYS1pdGVtOm5vdChbdXNlLXZlcnRpY2FsLWxheW91dF0pe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21pbi13aWR0aDowfXl0bS1tZWRpYS1pdGVtOm5vdChbdXNlLXZlcnRpY2FsLWxheW91dF0pIC5tZWRpYS1pdGVtLXRodW1ibmFpbC1jb250YWluZXJ7ZmxleC1zaHJpbms6MH15dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKSAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZXt3aWR0aDoyMDBweDtoZWlnaHQ6MTEycHg7cGFkZGluZy1ib3R0b206MH15dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKSAubWVkaWEtaXRlbS1kZXRhaWxzey1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXJnaW46MCAxMnB4O21pbi13aWR0aDowO3dpZHRoOjEwMCV9eXRtLW1lZGlhLWl0ZW06bm90KFt1c2UtdmVydGljYWwtbGF5b3V0XSkgLm1lZGlhLWl0ZW0taW5mb3stbW96LWJveC1mbGV4OjA7ZmxleC1ncm93OjB9eXRtLW1lZGlhLWl0ZW06bm90KFt1c2UtdmVydGljYWwtbGF5b3V0XSkgLm1lZGlhLWl0ZW0tbWV0YWRhdGF7bWFyZ2luLWJvdHRvbToycHg7bWF4LWhlaWdodDo3MHB4O292ZXJmbG93OmhpZGRlbjttaW4td2lkdGg6MH15dG0tbWVkaWEtaXRlbVt1c2UtdmVydGljYWwtbGF5b3V0XSAubWVkaWEtaXRlbS1oZWFkbGluZXttYXJnaW4tYm90dG9tOjhweH15dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKSAubWVkaWEtY2hhbm5lbHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7LW1vei1ib3gtb3JkaW5hbC1ncm91cDoyO29yZGVyOjE7d2lkdGg6MTAwJX15dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKSAubWVkaWEtaXRlbS1leHRyYS1lbmRwb2ludHstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjF9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVte3BhZGRpbmc6MCAxMnB4fWxhenktbGlzdCAuaXRlbSB5dG0tbWVkaWEtaXRlbXttYXJnaW4tdG9wOjEycHh9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVtIC5tZWRpYS1pdGVtLXRodW1ibmFpbC1jb250YWluZXJ7cGFkZGluZzowfWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbSAubWVkaWEtY2hhbm5lbHttYXJnaW4tdG9wOjB9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVtIC5tZWRpYS1pdGVtLW1ldGFkYXRhe21hcmdpbi10b3A6MH15dG0tYnJvd3NlIHl0bS1pdGVtLXNlY3Rpb24tcmVuZGVyZXI6Zmlyc3Qtb2YtdHlwZSB5dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKXttYXJnaW4tdG9wOjB9eXRtLWJyb3dzZSBsYXp5LWxpc3QgeXRtLWl0ZW0tc2VjdGlvbi1yZW5kZXJlcjpmaXJzdC1vZi10eXBlIHl0bS1tZWRpYS1pdGVtOm5vdChbdXNlLXZlcnRpY2FsLWxheW91dF0pe21hcmdpbi10b3A6MTJweH15dG0tYnJvd3NlIGxhenktbGlzdCB5dG0taXRlbS1zZWN0aW9uLXJlbmRlcmVyOmZpcnN0LW9mLXR5cGUgeXRtLXByb21vdGVkLXZpZGVvLXJlbmRlcmVyIHl0bS1tZWRpYS1pdGVtOm5vdChbdXNlLXZlcnRpY2FsLWxheW91dF0pe21hcmdpbi10b3A6MH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7bWFyZ2luOjB9eXRtLW1lZGlhLWl0ZW06bm90KFt1c2UtdmVydGljYWwtbGF5b3V0XSkgLm1lZGlhLWl0ZW0taW5mb3ttYXJnaW4tbGVmdDowfXl0bS1tZWRpYS1pdGVtOm5vdChbdXNlLXZlcnRpY2FsLWxheW91dF0pIC5tZWRpYS1pdGVtLWRldGFpbHMuc3RhY2tlZC1wbGF5bGlzdHttYXJnaW4tdG9wOjRweH15dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKSAubWVkaWEtaXRlbS1kZXRhaWxzLnN0YWNrZWR7bWFyZ2luLXRvcDo0cHh9fUBtZWRpYSAobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVte3BhZGRpbmc6MCAxMnB4fWxhenktbGlzdCAuaXRlbSB5dG0tbWVkaWEtaXRlbXttYXJnaW4tdG9wOjEycHh9eXRtLWJyb3dzZSBsYXp5LWxpc3QgeXRtLWl0ZW0tc2VjdGlvbi1yZW5kZXJlcjpmaXJzdC1vZi10eXBlIHl0bS1wcm9tb3RlZC12aWRlby1yZW5kZXJlciB5dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKXttYXJnaW4tdG9wOjEycHh9fUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7eXRtLW1lZGlhLWl0ZW17cGFkZGluZzowIDhweH15dG0tbWVkaWEtaXRlbSAubWVkaWEtaXRlbS1kZXRhaWxze21hcmdpbi10b3A6MTJweDttYXJnaW4tYm90dG9tOjEycHh9eXRtLWJyb3dzZSB5dG0taXRlbS1zZWN0aW9uLXJlbmRlcmVyOmZpcnN0LW9mLXR5cGUgeXRtLW1lZGlhLWl0ZW17bWFyZ2luLXRvcDo4cHh9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVte3BhZGRpbmc6MCA4cHh9bGF6eS1saXN0IC5pdGVtIHl0bS1tZWRpYS1pdGVte21hcmdpbi1ib3R0b206MH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tdGh1bWJuYWlsLWNvbnRhaW5lcntwYWRkaW5nOjB9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVtIC5tZWRpYS1pdGVtLW1ldGFkYXRhe21hcmdpbi10b3A6MH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tZGV0YWlsc3ttYXJnaW4tdG9wOjEycHg7bWFyZ2luLWJvdHRvbTo0cHg7cGFkZGluZy1sZWZ0OjB9eXRtLWJyb3dzZSBsYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tZGV0YWlsc3ttYXJnaW4tYm90dG9tOjB9eXRtLWJyb3dzZSBsYXp5LWxpc3QgeXRtLWl0ZW0tc2VjdGlvbi1yZW5kZXJlcjpmaXJzdC1vZi10eXBlIHl0bS1tZWRpYS1pdGVte21hcmdpbi10b3A6OHB4fWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbSAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZXttYXJnaW46MH15dG0tYnJvd3NlIGxhenktbGlzdCB5dG0taXRlbS1zZWN0aW9uLXJlbmRlcmVyOmZpcnN0LW9mLXR5cGUgeXRtLXByb21vdGVkLXZpZGVvLXJlbmRlcmVyIHl0bS1tZWRpYS1pdGVtOm5vdChbdXNlLXZlcnRpY2FsLWxheW91dF0pe21hcmdpbi10b3A6OHB4fX1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7bGF6eS1saXN0IC5pdGVtIHl0bS1tZWRpYS1pdGVte21hcmdpbi10b3A6OHB4fX1AbWVkaWEgKG1pbi13aWR0aDozMDBweCkgYW5kIChtYXgtd2lkdGg6MzMwcHgpe2xhenktbGlzdCB5dG0tbWVkaWEtaXRlbXtwYWRkaW5nOjAgMTJweH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tdGh1bWJuYWlsLWNvbnRhaW5lcntwYWRkaW5nOjB9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVtIC52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWxhcmdle21hcmdpbjowfXl0bS1icm93c2UgbGF6eS1saXN0IHl0bS1pdGVtLXNlY3Rpb24tcmVuZGVyZXI6Zmlyc3Qtb2YtdHlwZSB5dG0tcHJvbW90ZWQtdmlkZW8tcmVuZGVyZXIgeXRtLW1lZGlhLWl0ZW06bm90KFt1c2UtdmVydGljYWwtbGF5b3V0XSl7bWFyZ2luLXRvcDowfX15dG0tbWVkaWEtaXRlbS5zbWFsbC1sb2NrdXB7bWFyZ2luLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjA7d2lkdGg6MTYwcHh9eXRtLW1lZGlhLWl0ZW0uc21hbGwtbG9ja3VwIC5tZWRpYS1pdGVtLWhlYWRsaW5le2ZvbnQtd2VpZ2h0OjQwMH15dG0tdGh1bWJuYWlsLW92ZXJsYXktaWNvbi1yZW5kZXJlcnstbW96LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveH15dG0tdGh1bWJuYWlsLW92ZXJsYXktaWNvbi1yZW5kZXJlcjpub3QoW2ljb24tcG9zaXRpb249VEhVTUJOQUlMX09WRVJMQVlfSUNPTl9SRU5ERVJFUl9JQ09OX1BPU0lUSU9OX0JPVFRPTV9MRUZUX0NPUk5FUl0pey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjMpfXl0bS10aHVtYm5haWwtb3ZlcmxheS1pY29uLXJlbmRlcmVyW2ljb24tcG9zaXRpb249VEhVTUJOQUlMX09WRVJMQVlfSUNPTl9SRU5ERVJFUl9JQ09OX1BPU0lUSU9OX0JPVFRPTV9MRUZUX0NPUk5FUl17cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO2JvdHRvbTowO21hcmdpbjo1cHg7cGFkZGluZzoxcHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1yYWRpdXM6NTAlfVtpY29uLXN0eWxlPVRIVU1CTkFJTF9PVkVSTEFZX0lDT05fUkVOREVSRVJfSUNPTl9TVFlMRV9GSUxMRURdIGMzLWljb257ZGlzcGxheTpibG9jaztwYWRkaW5nOjFweDt3aWR0aDoxLjJyZW07aGVpZ2h0OjEuMnJlbX15dG0tdGh1bWJuYWlsLW92ZXJsYXktaWNvbi1yZW5kZXJlcjpub3QoW2ljb24tc3R5bGU9VEhVTUJOQUlMX09WRVJMQVlfSUNPTl9SRU5ERVJFUl9JQ09OX1NUWUxFX0ZJTExFRF0pIGMzLWljb257d2lkdGg6MnJlbTtoZWlnaHQ6MnJlbX15dG0tdGh1bWJuYWlsLW92ZXJsYXktaWNvbi1yZW5kZXJlcltpY29uLXN0eWxlPVRIVU1CTkFJTF9PVkVSTEFZX0lDT05fUkVOREVSRVJfSUNPTl9TVFlMRV9GSUxMRURdIGMzLWljb24gcGF0aHtmaWxsOiMwMDB9eXRtLXRodW1ibmFpbC1vdmVybGF5LWljb24tcmVuZGVyZXI6bm90KFtpY29uLXN0eWxlPVRIVU1CTkFJTF9PVkVSTEFZX0lDT05fUkVOREVSRVJfSUNPTl9TVFlMRV9GSUxMRURdKSBjMy1pY29uIHBhdGh7ZmlsbDojZmZmfS5ZdG1UaHVtYm5haWxPdmVybGF5UmVzdW1lUGxheWJhY2tSZW5kZXJlckhvc3R7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO2hlaWdodDo0cHg7YmFja2dyb3VuZC1jb2xvcjojOTA5MDkwO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowfS5ZdG1UaHVtYm5haWxPdmVybGF5UmVzdW1lUGxheWJhY2tSZW5kZXJlclRodW1ibmFpbE92ZXJsYXlSZXN1bWVQbGF5YmFja1Byb2dyZXNze2hlaWdodDo0cHg7bGVmdDowO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNmMDMgODAlLCNmZjI3OTEpfXl0bS12aWRlby13aXRoLWNvbnRleHQtcmVuZGVyZXJ7ZGlzcGxheTpibG9ja31AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpe3l0bS12aWRlby13aXRoLWNvbnRleHQtcmVuZGVyZXIuZmVlZC1pdGVte21hcmdpbi1ib3R0b206MTZweH19QG1lZGlhIChtaW4td2lkdGg6MzAwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwobWluLXdpZHRoOjMwMHB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXt5dG0tdmlkZW8td2l0aC1jb250ZXh0LXJlbmRlcmVyLmZlZWQtaXRlbXttYXJnaW4tYm90dG9tOjI0cHh9fUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7eXRtLXZpZGVvLXdpdGgtY29udGV4dC1yZW5kZXJlci5hZGFwdGl2ZS1mZWVkLWl0ZW17bWFyZ2luLWJvdHRvbToxNnB4fX1AbWVkaWEgKG1pbi13aWR0aDozMDBweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtaW4td2lkdGg6MzAwcHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpe3l0bS12aWRlby13aXRoLWNvbnRleHQtcmVuZGVyZXIuYWRhcHRpdmUtZmVlZC1pdGVte21hcmdpbi1ib3R0b206MjRweH19QG1lZGlhIChtaW4tYXNwZWN0LXJhdGlvOjEzLzkpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwobWluLXdpZHRoOjkzMXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7eXRtLXZpZGVvLXdpdGgtY29udGV4dC1yZW5kZXJlci5hZGFwdGl2ZS1mZWVkLWl0ZW17bWFyZ2luLWJvdHRvbToxMnB4fX1sYXp5LWxpc3QgeXRtLXZpZGVvLXdpdGgtY29udGV4dC1yZW5kZXJlci5pdGVte21hcmdpbi10b3A6MH0udmlkZW9UaHVtYm5haWxHcm91cE92ZXJsYXlCb3R0b21MZWZ0UmlnaHRHcm91cHt3aWR0aDoxMDAlO2JvdHRvbTowO3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0udmlkZW9UaHVtYm5haWxHcm91cFJlc3VtZVBsYXliYWNrey1tb3otYm94LW9yZGluYWwtZ3JvdXA6MjtvcmRlcjoxfS52aWRlb1RodW1ibmFpbEdyb3VwVGltZVN0YXR1c3tyaWdodDowO2JvdHRvbTowO3Bvc2l0aW9uOmFic29sdXRlfS52aWRlb1RodW1ibmFpbEdyb3VwT3ZlcmxheUxlZnRSaWdodEdyb3Vwe3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7Ym90dG9tOjA7aGVpZ2h0OjEwMCV9LnZpZGVvVGh1bWJuYWlsR3JvdXBPdmVybGF5Q2VudGVye3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3Bvc2l0aW9uOmFic29sdXRlfS55dERpYWxvZ1ZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXREaWFsb2dWaWV3TW9kZWxSZXNldFNwYWNpbmdbZGlhbG9nXVtkaWFsb2dde3BhZGRpbmc6MDttYXJnaW46MH0ueXR3QWNjb3VudExpbmtCdXR0b25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0d0FjY291bnRMaW5rQnV0dG9uVmlld01vZGVsSG9zdE1pbldpZHRoIC55dFNwZWNCdXR0b25TaGFwZU5leHRIb3N0e21pbi13aWR0aDoxMjBweH0ueXRUZXh0RmllbGRWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0Q3JlYXRlUGxheWxpc3REaWFsb2dGb3JtVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrO21hcmdpbi10b3A6MTJweH0ueXRDcmVhdGVQbGF5bGlzdERpYWxvZ0Zvcm1WaWV3TW9kZWxUaXRsZUZpZWxkLC55dENyZWF0ZVBsYXlsaXN0RGlhbG9nRm9ybVZpZXdNb2RlbFZpc2liaWxpdHlGaWVsZHttYXJnaW4tYm90dG9tOjEycHh9Lnl0RHJvcGRvd25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0RHJvcGRvd25WaWV3TW9kZWxEcm9wZG93bkNvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7aGVpZ2h0OjU2cHg7cGFkZGluZzo4cHggMTJweDtib3JkZXItcmFkaXVzOjhweDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtjdXJzb3I6cG9pbnRlcn0ueXREcm9wZG93blZpZXdNb2RlbERyb3Bkb3duQ29udGFpbmVyRXJyb3JCb3JkZXJ7Ym9yZGVyLWNvbG9yOiNjMzAwMjd9Lnl0RHJvcGRvd25WaWV3TW9kZWxEcm9wZG93bkNvbnRhaW5lckRpc2FibGVke2JvcmRlcjowO2NvbG9yOiM5MDkwOTA7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpO2N1cnNvcjpkZWZhdWx0fS55dERyb3Bkb3duVmlld01vZGVsVGV4dHstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0RHJvcGRvd25WaWV3TW9kZWxMYWJlbHtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dERyb3Bkb3duVmlld01vZGVsTGFiZWxFcnJvcntjb2xvcjojYzMwMDI3fS55dERyb3Bkb3duVmlld01vZGVsVGl0bGV7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXREcm9wZG93blZpZXdNb2RlbFRpdGxlUGxhY2Vob2xkZXJ7Y29sb3I6IzkwOTA5MH0ueXREcm9wZG93blZpZXdNb2RlbENoZXZyb25Eb3due2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6IzAzMDMwM30ueXREcm9wZG93blZpZXdNb2RlbENoZXZyb25Eb3duRGlzYWJsZWR7Y29sb3I6IzkwOTA5MH0ueXREcm9wZG93blZpZXdNb2RlbFN1cHBvcnR7bWFyZ2luLXRvcDo0cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXREcm9wZG93blZpZXdNb2RlbFN1cHBvcnRIaW50e2NvbG9yOiM2MDYwNjB9Lnl0RHJvcGRvd25WaWV3TW9kZWxTdXBwb3J0RXJyb3J7Y29sb3I6I2MzMDAyN30ueXREcm9wZG93blZpZXdNb2RlbFN1cHBvcnRJY29ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxNnB4O3dpZHRoOjE2cHh9Lnl0RHJvcGRvd25WaWV3TW9kZWxTdXBwb3J0VGV4dHttYXJnaW4tbGVmdDo0cHh9eXRtLWNoaXAtY2xvdWQtY2hpcC1yZW5kZXJlcntjdXJzb3I6cG9pbnRlcjtvdXRsaW5lOm5vbmU7b3ZlcmZsb3c6aGlkZGVuOy1tb3otdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfXl0bS1jaGlwLWNsb3VkLWNoaXAtcmVuZGVyZXIgLmNoaXAtY29udGFpbmVye2hlaWdodDozMnB4O21pbi13aWR0aDo0OHB4O3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6MCAxMnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czo4cHg7Ym9yZGVyOjB9eXRtLWNoaXAtY2xvdWQtY2hpcC1yZW5kZXJlciAuY2hpcC1jb250YWluZXIuY2hpcC1uby12ZXJ0aWNhbC1wYWRkaW5ne3BhZGRpbmc6MH15dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyIC5jaGlwLWNvbnRhaW5lcjpoYXMoYzMtaWNvbil7cGFkZGluZy1sZWZ0OjhweH15dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyIC5jaGlwLWNvbnRhaW5lci5saWdodC1lZmZlY3R7cG9zaXRpb246cmVsYXRpdmV9eXRtLWNoaXAtY2xvdWQtY2hpcC1yZW5kZXJlcltjaGlwLXN0eWxlPVNUWUxFX0RFRkFVTFRdIC5jaGlwLWNvbnRhaW5lcix5dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyW2NoaXAtc3R5bGU9U1RZTEVfSE9NRV9GSUxURVJdIC5jaGlwLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSk7Y29sb3I6IzAzMDMwMzt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjVzIGN1YmljLWJlemllciguMDUsMCwwLDEpfXl0bS1jaGlwLWNsb3VkLWNoaXAtcmVuZGVyZXJbY2hpcC1zdHlsZT1TVFlMRV9ERUZBVUxUXSAuY2hpcC1jb250YWluZXI+YzMtaWNvbix5dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyW2NoaXAtc3R5bGU9U1RZTEVfSE9NRV9GSUxURVJdIC5jaGlwLWNvbnRhaW5lcj5jMy1pY29ue2hlaWdodDoxOHB4O3dpZHRoOjE4cHg7cGFkZGluZy1yaWdodDo0cHh9eXRtLWNoaXAtY2xvdWQtY2hpcC1yZW5kZXJlcltjaGlwLXN0eWxlPVNUWUxFX0RFRkFVTFRdLnNlbGVjdGVkIC5jaGlwLWNvbnRhaW5lcix5dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyW2NoaXAtc3R5bGU9U1RZTEVfSE9NRV9GSUxURVJdLnNlbGVjdGVkIC5jaGlwLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOiMwMzAzMDM7Y29sb3I6I2ZmZn15dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyIC5jaGlwLXRleHR7bWF4LXdpZHRoOjIwcmVtO292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc315dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyIC5jaGlwLXRleHQubW9kZXJue2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH15dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyW2NoaXAtc3R5bGU9U1RZTEVfRVhQTE9SRV9MQVVOQ0hFUl9DSElQXSAuY2hpcC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpO2JvcmRlci1yYWRpdXM6MnB4O2JvcmRlcjowO3BhZGRpbmc6MCAxMnB4IDAgNnB4fXl0bS1jaGlwLWNsb3VkLWNoaXAtcmVuZGVyZXJbY2hpcC1zdHlsZT1TVFlMRV9FWFBMT1JFX0xBVU5DSEVSX0NISVBdIC5jaGlwLWNvbnRhaW5lcj5jMy1pY29ue3BhZGRpbmctcmlnaHQ6NHB4fXl0bS1jaGlwLWNsb3VkLWNoaXAtcmVuZGVyZXJbY2hpcC1zdHlsZT1TVFlMRV9FWFBMT1JFX0xBVU5DSEVSX0NISVBdLm1vcmUtZHJhd2VyIC5jaGlwLWNvbnRhaW5lcntwYWRkaW5nOjA7bWluLXdpZHRoOjQ4cHh9eXRtLWNoaXAtY2xvdWQtY2hpcC1yZW5kZXJlcltjaGlwLXN0eWxlPVNUWUxFX0VYUExPUkVfTEFVTkNIRVJfQ0hJUF0ubW9yZS1kcmF3ZXIgLmNoaXAtY29udGFpbmVyPmMzLWljb257cGFkZGluZy1yaWdodDowfXl0bS1jaGlwLWNsb3VkLWNoaXAtcmVuZGVyZXIgLmVsZXZhdGVkLWNvbnRlbnR7ei1pbmRleDoxfS55dG1DaGlwc1NoZWxmVmlld01vZGVsSG9zdHstLWNoaXBzLXNoZWxmLXNpZGUtbWFyZ2luOjhweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWFyZ2luLWJvdHRvbToyNHB4fS55dG1DaGlwc1NoZWxmVmlld01vZGVsQ2hpcHNTaGVsZkhlYWRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW46OHB4IDRweCA4cHggdmFyKC0tY2hpcHMtc2hlbGYtc2lkZS1tYXJnaW4pfS55dG1DaGlwc1NoZWxmVmlld01vZGVsQ2hpcHNTaGVsZkNvbnRlbnR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tY2hpcHMtc2hlbGYtc2lkZS1tYXJnaW4pIC0gNHB4KTtwYWRkaW5nLXJpZ2h0OjEycHg7bWFyZ2luLWJvdHRvbToxNnB4O21heC1oZWlnaHQ6ODBweDtvdmVyZmxvdzpoaWRkZW59Lnl0bUNoaXBzU2hlbGZWaWV3TW9kZWxDaGlwc1NoZWxmVGl0bGV7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmb250LXdlaWdodDo0MDA7bWFyZ2luOjAgMCAzcHg7Zm9udC1zaXplOjEuNHJlbTtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MS4yNTttYXJnaW46MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRtQ2hpcHNTaGVsZlZpZXdNb2RlbENoaXBzU2hlbGZJdGVte21hcmdpbjowIDRweCA4cHh9Lnl0bUNoaXBzU2hlbGZWaWV3TW9kZWxNZW51QnV0dG9ue21hcmdpbi1sZWZ0OjhweH0ueXRtQ2hpcHNTaGVsZlZpZXdNb2RlbElzSW5uZXJDaGlwc1NoZWxme21hcmdpbi1ib3R0b206MH0ueXRtQ2hpcHNTaGVsZlZpZXdNb2RlbEVuYWJsZUFuaW1hdGlvbnstLWNoaXBzLXNoZWxmLWhlaWdodDowO292ZXJmbG93OmhpZGRlbjtvcGFjaXR5OjA7aGVpZ2h0OnZhcigtLWNoaXBzLXNoZWxmLWhlaWdodCk7dHJhbnNpdGlvbjpvcGFjaXR5IC41cyxoZWlnaHQgLjNzfS55dG1DaGlwc1NoZWxmVmlld01vZGVsRW5hYmxlQW5pbWF0aW9uLmV4cGFuZGVke29wYWNpdHk6MX0ueXRtQ2hpcHNTaGVsZlZpZXdNb2RlbElzSW5uZXJDaGlwc1NoZWxmQ29udGVudHttYXJnaW4tYm90dG9tOjB9Lnl0bUNoaXBzU2hlbGZWaWV3TW9kZWxJc0hvcml6b250YWxseVNjcm9sbGFibGV7bWF4LWhlaWdodDo0MHB4O292ZXJmbG93LXg6YXV0bztmbGV4LXdyYXA6bm93cmFwO3Njcm9sbGJhci13aWR0aDpub25lfS55dExpc3RJdGVtVmlld0NvdW50Vmlld01vZGVsSG9zdHtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld0NvdW50Vmlld01vZGVsSG9zdHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld0NvdW50Vmlld01vZGVsSG9zdHttYXgtaGVpZ2h0OjQuNHJlbX0ueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2s7cGFkZGluZy1ib3R0b206MTZweH0ueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxIZWFkZXJ7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLWJvdHRvbToyNHB4fS55dENvbW11bml0eUVkdVZpZXdNb2RlbFRpdGxlSW1hZ2V7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxBdmF0YXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxUaXRsZXtkaXNwbGF5OmJsb2NrO21hcmdpbjowIDI0cHggMTZweDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDB9fS55dENvbW11bml0eUVkdVZpZXdNb2RlbFRpdGxle3RleHQtYWxpZ246Y2VudGVyfS55dENvbW11bml0eUVkdVZpZXdNb2RlbENvbnRlbnR7cGFkZGluZy1sZWZ0Ojc4cHh9Lnl0Q29tbXVuaXR5RWR1Vmlld01vZGVsTGVhcm5Nb3Jle2NvbG9yOiMwNjVmZDQ7dGV4dC1hbGlnbjpzdGFydDt0ZXh0LWRlY29yYXRpb246bm9uZTtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxFZHVjYXRpb25hbFRleHRTZXR7dGV4dC1hbGlnbjpzdGFydH0ueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxQcmltYXJ5VGV4dHtkaXNwbGF5OmJsb2NrO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dENvbW11bml0eUVkdVZpZXdNb2RlbFNlY29uZGFyeVRleHR7ZGlzcGxheTpibG9jazttYXJnaW4tYm90dG9tOjI0cHg7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhcnN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOnJldmVyc2U7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2V9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTaXplVGlueTpub3QoOmxhc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi04cHh9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTaXplRXh0cmFTbWFsbDpub3QoOmxhc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi04cHh9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTaXplU21hbGw6bm90KDpsYXN0LWNoaWxkKXttYXJnaW4tbGVmdDotOHB4fS55dEF2YXRhclN0YWNrVmlld01vZGVsQXZhdGFyU2l6ZU1lZGl1bTpub3QoOmxhc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi04cHh9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTaXplNDg6bm90KDpsYXN0LWNoaWxkKXttYXJnaW4tbGVmdDotOHB4fS55dEF2YXRhclN0YWNrVmlld01vZGVsQXZhdGFyU2l6ZUxhcmdlOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWxlZnQ6LThweH0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhclNpemVFeHRyYUxhcmdlOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWxlZnQ6LThweH0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhclNpemVFeHRyYUV4dHJhTGFyZ2U6bm90KDpsYXN0LWNoaWxkKXttYXJnaW4tbGVmdDotOHB4fS55dEF2YXRhclN0YWNrVmlld01vZGVsQXZhdGFyU2l6ZUdpYW50Om5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWxlZnQ6LThweH0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhclNpemVSZXNwb25zaXZlOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWxlZnQ6LThweH0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbFRleHRDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KTttYXJnaW46MnB4IDA7bWFyZ2luLWxlZnQ6LThweDtib3JkZXI6MnB4IHNvbGlkICNmZmZ9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxUZXh0Q29udGFpbmVyVGhpbkJvcmRlcnttYXJnaW4tdG9wOjNweDttYXJnaW4tYm90dG9tOjNweDtib3JkZXItd2lkdGg6MXB4fS55dEF2YXRhclN0YWNrVmlld01vZGVsVGV4dENvbnRhaW5lclRoaW5Cb3JkZXJPdmVybGF5e2JvcmRlcjoxcHggc29saWQgI2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4yKX0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhckRlY29yYXRlZFRleHR7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDB9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTdGFja1RleHR7bWFyZ2luLWxlZnQ6OHB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6MS44cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dEF2YXRhclN0YWNrVmlld01vZGVsQXZhdGFyU3RhY2tUZXh0ey13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTdGFja1RleHR7bWF4LWhlaWdodDoxLjhyZW19Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTdGFja1RleHQ6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MH0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbFRhcHBhYmxle2N1cnNvcjpwb2ludGVyfS55dEF2YXRhclN0YWNrVmlld01vZGVsQXZhdGFyQnV0dG9ue21hcmdpbjo0cHggMH0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbElzT3ZlcmxheXtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4fS55dEF2YXRhclN0YWNrVmlld01vZGVsTWVkaXVtVGV4dCAueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhclN0YWNrVGV4dHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoycmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dEF2YXRhclN0YWNrVmlld01vZGVsTWVkaXVtVGV4dCAueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhclN0YWNrVGV4dHstd2Via2l0LWxpbmUtY2xhbXA6MTttYXgtaGVpZ2h0Om5vbmV9fS55dEF2YXRhclN0YWNrVmlld01vZGVsTWVkaXVtVGV4dCAueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhclN0YWNrVGV4dHttYXgtaGVpZ2h0OjJyZW19Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhUm93e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWFyZ2luLXRvcDoycHg7b3ZlcmZsb3c6aGlkZGVuO21pbi13aWR0aDowO21heC13aWR0aDoxMDAlfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhUm93OmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgY3VycmVudENvbG9yO291dGxpbmUtb2Zmc2V0OjJweDtib3JkZXItcmFkaXVzOjRweH0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxBdmF0YXJTdGFja3ttaW4td2lkdGg6MDttYXgtd2lkdGg6MTAwJX0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVJvd01ldGFkYXRhUm93SW5saW5le2Rpc3BsYXk6LW1vei1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXh9Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFSb3dNZXRhZGF0YVJvd1BhZGRpbmd7cGFkZGluZzo4cHggMH0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVJvd01ldGFkYXRhUm93V3JhcHtmbGV4LXdyYXA6d3JhcH0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxCYWRnZXttYXJnaW4tcmlnaHQ6NHB4fS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbEljb257bWFyZ2luLWxlZnQ6NHB4Oy1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmV9Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTGVhZGluZ0ljb257bWFyZ2luLXJpZ2h0OjRweDstbW96LWJveC1mbGV4OjA7ZmxleDpub25lfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbFNwYWNlcntoZWlnaHQ6NnB4fS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMDt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRMYXN0UGFydHtvdmVyZmxvdzpoaWRkZW47bWluLXdpZHRoOjB9Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXMwe2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzMntmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjMuNnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRNYXhMaW5lczJ7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRNYXhMaW5lczJ7bWF4LWhlaWdodDozLjZyZW19Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXMze2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NS40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzM3std2Via2l0LWxpbmUtY2xhbXA6MzttYXgtaGVpZ2h0Om5vbmV9fS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzM3ttYXgtaGVpZ2h0OjUuNHJlbX0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRNYXhMaW5lczR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo3LjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXM0ey13ZWJraXQtbGluZS1jbGFtcDo0O21heC1oZWlnaHQ6bm9uZX19Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXM0e21heC1oZWlnaHQ6Ny4ycmVtfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbERlbGltaXRlcnttYXJnaW46MCA0cHg7dmVydGljYWwtYWxpZ246bWlkZGxlO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbERlbGltaXRlclN0YW5kYWxvbmV7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLXRvcDoycHh9Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsSW5saW5le3doaXRlLXNwYWNlOm5vcm1hbH0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxJbmxpbmUgLnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFSb3d7dmVydGljYWwtYWxpZ246bWlkZGxlfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbFRhcHBhYmxle2N1cnNvcjpwb2ludGVyfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1lZGl1bVRleHQgLnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZWRpdW1UZXh0IC55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzMHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWVkaXVtVGV4dCAueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRNYXhMaW5lczJ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZWRpdW1UZXh0IC55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzMnstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1lZGl1bVRleHQgLnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXMye21heC1oZWlnaHQ6NHJlbX0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZWRpdW1UZXh0IC55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzM3tmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo2cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1lZGl1bVRleHQgLnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXMzey13ZWJraXQtbGluZS1jbGFtcDozO21heC1oZWlnaHQ6bm9uZX19Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWVkaXVtVGV4dCAueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRNYXhMaW5lczN7bWF4LWhlaWdodDo2cmVtfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1lZGl1bVRleHQgLnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXM0e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjhyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWVkaXVtVGV4dCAueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRNYXhMaW5lczR7LXdlYmtpdC1saW5lLWNsYW1wOjQ7bWF4LWhlaWdodDpub25lfX0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZWRpdW1UZXh0IC55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzNHttYXgtaGVpZ2h0OjhyZW19Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWVkaXVtVGV4dCAueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxEZWxpbWl0ZXJ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbENlbnRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRDb250ZW50TGlzdEl0ZW1WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbENvbnRlbnRMaXN0SXRlbVdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW4tbGVmdDoxNnB4fS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbEltYWdlQ29udGFpbmVye21hcmdpbi10b3A6OHB4O21hcmdpbi1ib3R0b206OHB4O21hcmdpbi1yaWdodDoxMnB4fS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbGltYWdlQ2xhc3NOYW1le2JvcmRlci1yYWRpdXM6OHB4fS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbFRpdGxlTWV0YWRhdGFXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRDb250ZW50TGlzdEl0ZW1WaWV3TW9kZWxNZXRhZGF0YXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbFRpdGxle2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbFByb21pbmVudFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjIuNHJlbTtsaW5lLWhlaWdodDozLjJyZW07Zm9udC13ZWlnaHQ6NzAwfUBtZWRpYSAobWF4LXdpZHRoOjUyNy45cHgpey55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbFByb21pbmVudFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtO2ZvbnQtd2VpZ2h0OjcwMH19Lnl0Q29udGVudExpc3RJdGVtVmlld01vZGVsQWN0aW9uQnV0dG9ue2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21hcmdpbi1yaWdodDoxNnB4fS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxle2N1cnNvcjpwb2ludGVyfS55dERlY29yYXRlZEF2YXRhclZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRSZWVsQ2hhbm5lbEJhclZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yLCNmZmYpfS55dFJlZWxDaGFubmVsQmFyVmlld01vZGVsQ2hhbm5lbE5hbWV7cGFkZGluZzowIDhweDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6MnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRSZWVsQ2hhbm5lbEJhclZpZXdNb2RlbENoYW5uZWxOYW1ley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0UmVlbENoYW5uZWxCYXJWaWV3TW9kZWxDaGFubmVsTmFtZXttYXgtaGVpZ2h0OjJyZW19QG1lZGlhIChtYXgtd2lkdGg6Mjk5LjlweCl7Lnl0UmVlbENoYW5uZWxCYXJWaWV3TW9kZWxDaGFubmVsTmFtZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjMuNnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRSZWVsQ2hhbm5lbEJhclZpZXdNb2RlbENoYW5uZWxOYW1ley13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0UmVlbENoYW5uZWxCYXJWaWV3TW9kZWxDaGFubmVsTmFtZXttYXgtaGVpZ2h0OjMuNnJlbX19QG1lZGlhIChtYXgtd2lkdGg6Mjk5LjlweCl7Lnl0UmVlbENoYW5uZWxCYXJWaWV3TW9kZWxSZWVsU3Vic2NyaWJlQnV0dG9ue2Rpc3BsYXk6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6Mjk5LjlweCl7Lnl0UmVlbENoYW5uZWxCYXJWaWV3TW9kZWxSZWVsU3BvbnNvckJ1dHRvbntkaXNwbGF5Om5vbmV9fS55dFByZWZlcnJlZExhbmd1YWdlU2V0dGluZ3NQYW5lbFZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRBbmltYXRlZEFzc2V0Vmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dEFuaW1hdGVkQXNzZXRWaWV3TW9kZWxGaWxse3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9Lnl0QWxlcnRCYW5uZXJWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2NvbG9yOiMwMzAzMDM7Ym9yZGVyLXJhZGl1czoxMnB4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9QG1lZGlhIChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0QWxlcnRCYW5uZXJWaWV3TW9kZWxIb3N0e2JvcmRlcjoxcHggc29saWQgQnV0dG9uQm9yZGVyfX0ueXRBbGVydEJhbm5lclZpZXdNb2RlbE5hcnJvd3stbW96LWJveC1hbGlnbjpzdGFydDthbGlnbi1pdGVtczpzdGFydH0ueXRBbGVydEJhbm5lclZpZXdNb2RlbE5hcnJvdyAueXRBbGVydEJhbm5lclZpZXdNb2RlbE91dGVyQ29udGFpbmVyey1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1hbGlnbjpub3JtYWw7YWxpZ24taXRlbXM6bm9ybWFsfS55dEFsZXJ0QmFubmVyVmlld01vZGVsTmFycm93IC55dEFsZXJ0QmFubmVyVmlld01vZGVsQWN0aW9uQnV0dG9ue21hcmdpbjowIDAgMTJweH0ueXRBbGVydEJhbm5lclZpZXdNb2RlbEZ1bGxibGVlZHtib3JkZXItcmFkaXVzOjB9Lnl0QWxlcnRCYW5uZXJWaWV3TW9kZWxJbmZvcm1hdGlvbmFse2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KX0ueXRBbGVydEJhbm5lclZpZXdNb2RlbFRpbWVTZW5zaXRpdmV7YmFja2dyb3VuZC1jb2xvcjojZGVmMWZmfS55dEFsZXJ0QmFubmVyVmlld01vZGVsV2FybmluZ3tiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDg1LDExOSwwLjIpfS55dEFsZXJ0QmFubmVyVmlld01vZGVsRGlzbWlzc2Vke2Rpc3BsYXk6bm9uZX0ueXRBbGVydEJhbm5lclZpZXdNb2RlbE91dGVyQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtZmxleDoxO2ZsZXg6MX0ueXRBbGVydEJhbm5lclZpZXdNb2RlbE91dGVyQ29udGFpbmVyOmZpcnN0LWNoaWxke3BhZGRpbmctbGVmdDoxMnB4fS55dEFsZXJ0QmFubmVyVmlld01vZGVsT3V0ZXJDb250YWluZXI6bGFzdC1jaGlsZHtwYWRkaW5nLXJpZ2h0OjEycHh9Lnl0QWxlcnRCYW5uZXJWaWV3TW9kZWxDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7cGFkZGluZzoxMnB4IDA7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dEFsZXJ0QmFubmVyVmlld01vZGVsSWNvbntwYWRkaW5nOjEycHh9Lnl0QWxlcnRCYW5uZXJWaWV3TW9kZWxDb250ZW50e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRBbGVydEJhbm5lclZpZXdNb2RlbEhlYWRpbmd7cGFkZGluZzowO21hcmdpbjowO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRBbGVydEJhbm5lclZpZXdNb2RlbEJvZHl7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dEFsZXJ0QmFubmVyVmlld01vZGVsQWN0aW9uQnV0dG9ue21hcmdpbjo2cHggMCA2cHggMTJweH0ueXRBbGVydEJhbm5lclZpZXdNb2RlbERpc21pc3NCdXR0b257bWFyZ2luOjZweH0ueXRBbGVydEJhbm5lclZpZXdNb2RlbElzSW5SaWNoR3JpZHttYXJnaW4tYm90dG9tOjE2cHh9LmRpdmlkZXJWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS5kaXZpZGVyVmlld01vZGVsSW5zZXRUaGluUGFkZGluZ3twYWRkaW5nOjE2cHh9LmRpdmlkZXJWaWV3TW9kZWxCYXNlRGl2aWRlcntoZWlnaHQ6MXB4O3dpZHRoOjEwMCU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9LmRpdmlkZXJWaWV3TW9kZWxCYXNlRGl2aWRlckZ1bGxCbGVlZDRweHtoZWlnaHQ6NHB4fS5kaXZpZGVyVmlld01vZGVsQmFzZURpdmlkZXJGdWxsQmxlZWQ4cHh7aGVpZ2h0OjhweH0uZGl2aWRlclZpZXdNb2RlbEJhc2VEaXZpZGVyRnVsbEJsZWVkMTJweHtoZWlnaHQ6MTJweH0uZGl2aWRlclZpZXdNb2RlbEJhc2VEaXZpZGVyRnVsbEJsZWVkVGhpY2t7aGVpZ2h0OjZweH0ueXRUaHVtYm5haWxCYWRnZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRUaHVtYm5haWxWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTtvdmVyZmxvdzpoaWRkZW47aGVpZ2h0OjB9Lnl0VGh1bWJuYWlsVmlld01vZGVsQ2luZW1hdGlje2JhY2tncm91bmQtY29sb3I6IzAwMH0ueXRUaHVtYm5haWxWaWV3TW9kZWxBc3BlY3RSYXRpbzE2Qnk5e3BhZGRpbmctdG9wOjU2LjI1JX0ueXRUaHVtYm5haWxWaWV3TW9kZWxBc3BlY3RSYXRpbzJCeTN7cGFkZGluZy10b3A6MTUwJX0ueXRUaHVtYm5haWxWaWV3TW9kZWxTaG9ydHNBc3BlY3RSYXRpbzlCeTE2e3BhZGRpbmctdG9wOjE3OCV9Lnl0VGh1bWJuYWlsVmlld01vZGVsQXNwZWN0UmF0aW8xQnkxe3BhZGRpbmctdG9wOjEwMCV9Lnl0VGh1bWJuYWlsVmlld01vZGVsU21hbGx7Ym9yZGVyLXJhZGl1czo0cHh9Lnl0VGh1bWJuYWlsVmlld01vZGVsTWVkaXVte2JvcmRlci1yYWRpdXM6OHB4fS55dFRodW1ibmFpbFZpZXdNb2RlbExhcmdle2JvcmRlci1yYWRpdXM6MTJweH0ueXRUaHVtYm5haWxWaWV3TW9kZWxJbWFnZXtwb3NpdGlvbjphYnNvbHV0ZTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt0b3A6NTAlO2xlZnQ6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dFRodW1ibmFpbFZpZXdNb2RlbEJsdXJyZWRJbWFnZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2hlaWdodDoyMDAlO2ZpbHRlcjpibHVyKDMwcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0yNSUpfS55dFRodW1ibmFpbFZpZXdNb2RlbEhpZ2hsaWdodEVmZmVjdHtib3gtc2hhZG93OjAgMCA3cHggMnB4ICMwZjBmMGY7b3V0bGluZTpzb2xpZCAxcHggI2ZmZn0ueXRUaHVtYm5haWxWaWV3TW9kZWxIb3N0QWREaXNjbG9zdXJlQmFubmVyQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDo4cHg7bGVmdDo4cHg7ei1pbmRleDoxfS55dFBpbmtpbmdOc0hvc3R7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjB9Lnl0UGlua2luZ05zUGlua2luZ0xlZnR7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3dpZHRoOjRweDtoZWlnaHQ6MTAwJX0ueXRQaW5raW5nTnNQaW5raW5nUmlnaHR7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt3aWR0aDo0cHg7aGVpZ2h0OjEwMCV9Lnl0UGlua2luZ05zUGlua2luZ3tmaWxsOiNmZmZ9Lnl0VGh1bWJuYWlsT3ZlcmxheUJ1dHRvblZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRUaHVtYm5haWxPdmVybGF5QnV0dG9uVmlld01vZGVsQnV0dG9ue3Bvc2l0aW9uOmFic29sdXRlfS55dFRodW1ibmFpbE92ZXJsYXlCdXR0b25WaWV3TW9kZWxCdXR0b25Cb3R0b21FbmRQb3NpdGlvbntib3R0b206NHB4O3JpZ2h0OjRweH0ueXRUaHVtYm5haWxPdmVybGF5QnV0dG9uVmlld01vZGVsQnV0dG9uVG9wRW5kUG9zaXRpb257dG9wOjhweDtyaWdodDo4cHh9Lnl0VGh1bWJuYWlsT3ZlcmxheUJ1dHRvblZpZXdNb2RlbEJ1dHRvbkxlZ2FjeUljb257cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjhweDtyaWdodDo4cHh9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt3aWR0aDoxMDAlfS55dFRodW1ibmFpbE92ZXJsYXlQcm9ncmVzc0Jhckhvc3RTbWFsbHttYXJnaW4tYm90dG9tOjJweH0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0TWVkaXVte21hcmdpbi1ib3R0b206NHB4fS55dFRodW1ibmFpbE92ZXJsYXlQcm9ncmVzc0Jhckhvc3RMYXJnZXttYXJnaW4tYm90dG9tOjhweH0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0UHJvZ3Jlc3NCYXJ7d2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOjJweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzttYXJnaW46MCA4cHggNHB4IDEycHh9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdFByb2dyZXNzQmFyU2VnbWVudHtmbGV4LXNocmluazowfS55dFRodW1ibmFpbE92ZXJsYXlQcm9ncmVzc0Jhckhvc3RQcm9ncmVzc0JhckFjdGl2ZVNlZ21lbnR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2hlaWdodDo2cHh9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdFByb2dyZXNzQmFySW5hY3RpdmVTZWdtZW50e2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjMpO2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czoycHggMCAwIDJweDttYXJnaW4tcmlnaHQ6MnB4O21hcmdpbi1sZWZ0OjJweDttYXJnaW4tdG9wOjJweH0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0UHJvZ3Jlc3NCYXJGaXhlZFRvQm90dG9te3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO21hcmdpbjowO292ZXJmbG93OmhpZGRlbjt6LWluZGV4OjF9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdFByb2dyZXNzQmFyRml4ZWRUb0JvdHRvbUFjdGl2ZVNlZ21lbnR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7aGVpZ2h0OjZweDttYXJnaW4tdG9wOjB9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdFByb2dyZXNzQmFyRml4ZWRUb0JvdHRvbUluYWN0aXZlU2VnbWVudHtiYWNrZ3JvdW5kLWNvbG9yOiM5MDkwOTA7Ym9yZGVyLXJhZGl1czowfS55dFRodW1ibmFpbE92ZXJsYXlQcm9ncmVzc0Jhckhvc3RQcm9ncmVzc0JhckxlZnRTZWdtZW50e2JvcmRlci1yYWRpdXM6MnB4IDAgMCAycHh9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdFByb2dyZXNzQmFyUmlnaHRTZWdtZW50e2JvcmRlci1yYWRpdXM6MCAycHggMnB4IDA7LW1vei1ib3gtZmxleDoxO2ZsZXg6MX0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0UHJvZ3Jlc3NCYXJDb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmV9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdFdhdGNoZWRQcm9ncmVzc0JhcntoZWlnaHQ6NHB4O21hcmdpbjowIDRweCA0cHggOHB4O2JhY2tncm91bmQtY29sb3I6IzkwOTA5MDt3aWR0aDoxMDAlO2JvcmRlci1yYWRpdXM6MnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O292ZXJmbG93OmhpZGRlbn0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0V2F0Y2hlZFByb2dyZXNzQmFyU2VnbWVudHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZjAzIDgwJSwjZmYyNzkxKX0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0VXNlTGVnYWN5QmFye3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO21hcmdpbjowO2JvcmRlci1yYWRpdXM6MH0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0TGFiZWx7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMwMzAzMDM7cGFkZGluZzowIDRweDtib3R0b206MTZweDtsZWZ0Oi0xMHB4O2JvcmRlci1yYWRpdXM6NHB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NTAwfS55dFRodW1ibmFpbE92ZXJsYXlQcm9ncmVzc0Jhckhvc3RMYWJlbFRyaWFuZ2xle3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbToxMnB4O2xlZnQ6LTVweDtoZWlnaHQ6MDt3aWR0aDowO2JvcmRlci1sZWZ0OjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6NXB4IHNvbGlkICNmZmZ9Lnl0VGh1bWJuYWlsT3ZlcmxheVRpdGxlVmlld01vZGVsSG9zdHtwb3NpdGlvbjphYnNvbHV0ZTtwYWRkaW5nOjEycHggMTJweCAxNnB4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3d9Lnl0VGh1bWJuYWlsT3ZlcmxheVRpdGxlVmlld01vZGVsTGVhZGluZ0NvbnRlbnR7bWFyZ2luLXJpZ2h0OjhweH0ueXRUaHVtYm5haWxPdmVybGF5VGl0bGVWaWV3TW9kZWxQb3NpdGlvblRvcHt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudChyZ2JhKDAsMCwwLDAuNiksdHJhbnNwYXJlbnQpfS55dFRodW1ibmFpbE92ZXJsYXlUaXRsZVZpZXdNb2RlbFBvc2l0aW9uQm90dG9te2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LHJnYmEoMCwwLDAsMC42KSl9Lnl0VGh1bWJuYWlsT3ZlcmxheVRpdGxlVmlld01vZGVsVGl0bGV7Y29sb3I6I2ZmZjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoycmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFRodW1ibmFpbE92ZXJsYXlUaXRsZVZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0VGh1bWJuYWlsT3ZlcmxheVRpdGxlVmlld01vZGVsVGl0bGVNYXhMaW5lczJ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRUaHVtYm5haWxPdmVybGF5VGl0bGVWaWV3TW9kZWxUaXRsZU1heExpbmVzMnstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dFRodW1ibmFpbE92ZXJsYXlUaXRsZVZpZXdNb2RlbFN1YnRpdGxle2NvbG9yOiNmZmY7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6MnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRUaHVtYm5haWxPdmVybGF5VGl0bGVWaWV3TW9kZWxTdWJ0aXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MTttYXgtaGVpZ2h0Om5vbmV9fS55dFZvdGluZ1ZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0Vm90aW5nVmlld01vZGVsVm90ZUNvdW50e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWFyZ2luOjAgOHB4O2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFZvdGluZ1ZpZXdNb2RlbFZvdGVDb3VudERpc2FibGVke2NvbG9yOiM5MDkwOTB9Lnl0ZEZlZWRGaWx0ZXJDaGlwUmVuYW1lRm9ybVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztwYWRkaW5nOjE2cHggMjRweH0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS55dExpbmVhckxheW91dFZpZXdNb2RlbFZlcnRpY2Fsey1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxIb3Jpem9udGFsey1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93fS55dExpbmVhckxheW91dFZpZXdNb2RlbEZsZXhEaXJlY3Rpb25Db2x1bW57LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dExpbmVhckxheW91dFZpZXdNb2RlbEZsZXhEaXJlY3Rpb25Db2x1bW5SZXZlcnNley1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246cmV2ZXJzZTtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZX0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxGbGV4RGlyZWN0aW9uUm93ey1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93fS55dExpbmVhckxheW91dFZpZXdNb2RlbEZsZXhEaXJlY3Rpb25Sb3dSZXZlcnNley1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpyZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS55dExpbmVhckxheW91dFZpZXdNb2RlbEp1c3RpZnlDb250ZW50Q2VudGVyey1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsSnVzdGlmeUNvbnRlbnRGbGV4RW5key1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxKdXN0aWZ5Q29udGVudFNwYWNlQXJvdW5ke2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmR9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsSnVzdGlmeUNvbnRlbnRCZXR3ZWVuey1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxKdXN0aWZ5Q29udGVudFNwYWNlRXZlbmx5ey1tb3otYm94LXBhY2s6c3BhY2UtZXZlbmx5O2p1c3RpZnktY29udGVudDpzcGFjZS1ldmVubHl9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsSnVzdGlmeUNvbnRlbnRGbGV4U3RhcnR7LW1vei1ib3gtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxBbGlnbkl0ZW1zU3RhcnR7LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxBbGlnbkl0ZW1zRW5key1tb3otYm94LWFsaWduOmVuZDthbGlnbi1pdGVtczpmbGV4LWVuZH0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxBbGlnbkl0ZW1zQ2VudGVyey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsQWxpZ25JdGVtc0Jhc2VsaW5lRmlyc3R7LW1vei1ib3gtYWxpZ246Zmlyc3QgYmFzZWxpbmU7YWxpZ24taXRlbXM6Zmlyc3QgYmFzZWxpbmV9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsQWxpZ25JdGVtc0Jhc2VsaW5lTGFzdHstbW96LWJveC1hbGlnbjpsYXN0IGJhc2VsaW5lO2FsaWduLWl0ZW1zOmxhc3QgYmFzZWxpbmV9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsQWxpZ25JdGVtc1N0cmV0Y2h7LW1vei1ib3gtYWxpZ246c3RyZXRjaDthbGlnbi1pdGVtczpzdHJldGNofS55dExpbmVhckxheW91dFZpZXdNb2RlbEZsZXhXcmFwV3JhcHtmbGV4LXdyYXA6d3JhcH0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxGbGV4V3JhcFdyYXBSZXZlcnNle2ZsZXgtd3JhcDp3cmFwLXJldmVyc2V9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsVGh1bWJuYWlsSXRlbXt3aWR0aDoxMDAlfS55dERpYWxvZ0hlYWRlclZpZXdNb2RlbFRpdGxle21hcmdpbjowO21heC1oZWlnaHQ6dW5zZXR9Lnl0RGlhbG9nSGVhZGVyVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1zaHJpbms6MDtwYWRkaW5nOjI0cHggMjRweCA4cHh9Lnl0RGlhbG9nSGVhZGVyVmlld01vZGVsSG9zdERpc2FibGVQYWRkaW5ne3BhZGRpbmc6MH0ueXREaWFsb2dIZWFkZXJWaWV3TW9kZWxIb3N0Q2VudGVyZWR7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXREaWFsb2dIZWFkZXJWaWV3TW9kZWxCYW5uZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW4tYm90dG9tOjI0cHh9Lnl0RGlhbG9nSGVhZGVyVmlld01vZGVsQmFubmVyRnVsbEJsZWVke21hcmdpbi1sZWZ0Oi0yNHB4O21hcmdpbi1yaWdodDotMjRweDttYXJnaW4tdG9wOi0yNHB4fS55dERpYWxvZ0hlYWRlclZpZXdNb2RlbEJhbm5lckltYWdley1tb3otYm94LWZsZXg6MTtmbGV4OjF9Lnl0RGlhbG9nSGVhZGVyVmlld01vZGVsQ3VzdG9tQXNzZXRDb250YWluZXJ7bWFyZ2luOjJweCAwIDEycHggNnB4fS55dERpYWxvZ0hlYWRlclZpZXdNb2RlbEN1c3RvbUFzc2V0Q29udGFpbmVyQ2VudGVyZWR7bWFyZ2luLWxlZnQ6MH0ueXREaWFsb2dIZWFkZXJWaWV3TW9kZWxIZWFkZXJCbG9ja3stbW96LWJveC1hbGlnbjpzdGFydDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2FsaWduLXNlbGY6c3RyZXRjaDtjb2xvcjojMDMwMzAzO21hcmdpbi1ib3R0b206MTZweH0ueXREaWFsb2dIZWFkZXJWaWV3TW9kZWxIZWFkZXJCbG9ja0NlbnRlcmVke2FsaWduLXNlbGY6Y2VudGVyfS55dERpYWxvZ0hlYWRlclZpZXdNb2RlbFRleHR7Y29sb3I6IzAzMDMwMzstbW96LWJveC1mbGV4OjE7ZmxleDoxO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjUuNnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXREaWFsb2dIZWFkZXJWaWV3TW9kZWxUZXh0ey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0RGlhbG9nSGVhZGVyVmlld01vZGVsVGV4dHttYXgtaGVpZ2h0OjUuNnJlbX0ueXRPdmVybGF5UG9sbFN0aWNrZXJIb3N0ey0tcHJpbWFyeS1zdXJmYWNlOiNmYWNhZGU7LS1yYWlzZWQtc3VyZmFjZTojZGUxZTdlOy0tc2Vjb25kYXJ5LXN1cmZhY2U6I2RlMWU3ZTstLXByaW1hcnktdGV4dDojMTAxY2E3Oy0tc2Vjb25kYXJ5LXRleHQ6IzAwNzstLW9yaWdpbmFsLXdpZHRoOjIyMDstLW9yaWdpbmFsLWhlaWdodDoyMDU7LS1zY2FsZWQtd2lkdGg6MjIwO2ZvbnQtc2l6ZTpjYWxjKHZhcigtLXN0aWNrZXItd2lkdGgpL3ZhcigtLW9yaWdpbmFsLXdpZHRoKSoxOHB4KTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47ZmxleC1zaHJpbms6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JvcmRlci1yYWRpdXM6MTAlO3BhZGRpbmc6MWVtIGNhbGModmFyKC0tb3JpZ2luYWwtaGVpZ2h0KS92YXIoLS1vcmlnaW5hbC13aWR0aCkqMWVtKTtwb2ludGVyLWV2ZW50czpub25lO292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXByaW1hcnktc3VyZmFjZSk7Y29sb3I6dmFyKC0tcHJpbWFyeS10ZXh0KX0ueXRPdmVybGF5UG9sbFN0aWNrZXJRdWVzdGlvblRleHR7Zm9udC1mYW1pbHk6Um9ib3RvLHNhbnMtc2VyaWY7Zm9udC1zaXplOjFlbTtsaW5lLWhlaWdodDoxLjIyMjIyMjIyMjJlbTtmb250LXdlaWdodDo3MDB9Lnl0T3ZlcmxheVBvbGxTdGlja2VyUG9sbENob2ljZXt3aWR0aDoxMDAlfS55dE92ZXJsYXlQb2xsU3RpY2tlclZvdGVDb3VudHtmb250LWZhbWlseTpSb2JvdG8sc2Fucy1zZXJpZjtmb250LXNpemU6LjU1NTU1NTU1NTZlbTtsaW5lLWhlaWdodDoxZW07Zm9udC13ZWlnaHQ6NDAwfS55dE92ZXJsYXlQb2xsU3RpY2tlckRlYnVnU3R5bGV7b3BhY2l0eTouNztib3JkZXI6MXB4IHNvbGlkIHJlZH1AcHJvcGVydHkgLS1wb2xsLWNob2ljZS1wZXJjZW50YWdle3N5bnRheDoiPG51bWJlcj4iO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH0ueXRPdmVybGF5UG9sbFN0aWNrZXJDaG9pY2VIb3N0e2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOmNhbGModmFyKC0tc3RpY2tlci13aWR0aCkvdmFyKC0tb3JpZ2luYWwtd2lkdGgpKjE4cHgpOy0tZGlzcGxheWVkLXBlcmNlbnRhZ2U6MH0ueXRPdmVybGF5UG9sbFN0aWNrZXJDaG9pY2VVbnN0eWxlUmFkaW9CdXR0b257LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lOy13ZWJraXQtYXBwZWFyYW5jZTpub25lO29wYWNpdHk6MDttYXJnaW46MDtwb2ludGVyLWV2ZW50czpub25lfS55dE92ZXJsYXlQb2xsU3RpY2tlckNob2ljZVBvbGxDaG9pY2V7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjt3aWR0aDoxMDAlO2JvcmRlcjouMTExMTExMTExMWVtIHNvbGlkIHZhcigtLXJhaXNlZC1zdXJmYWNlKTtwYWRkaW5nOjAgLjMzMzMzMzMzMzNlbTtoZWlnaHQ6M2VtO2JhY2tncm91bmQtY29sb3I6dmFyKC0tcmFpc2VkLXN1cmZhY2UpO2JvcmRlci1yYWRpdXM6LjVlbTstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tc2Vjb25kYXJ5LXRleHQpO2ZvbnQtZmFtaWx5OlJvYm90byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTouNzc3Nzc3Nzc3OGVtO2ZvbnQtd2VpZ2h0OjUwMDtwb2ludGVyLWV2ZW50czphdXRvO3RyYW5zaXRpb246LS1wb2xsLWNob2ljZS1wZXJjZW50YWdlIC4yNXMgZWFzZS1pbi1vdXR9Lnl0T3ZlcmxheVBvbGxTdGlja2VyQ2hvaWNlU2hvd1ZvdGVQZXJjZW50YWdle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LHZhcigtLXJhaXNlZC1zdXJmYWNlKSBjYWxjKHZhcigtLXBvbGwtY2hvaWNlLXBlcmNlbnRhZ2UsIDEwMCkqMSUpLHZhcigtLXByaW1hcnktc3VyZmFjZSkgY2FsYyh2YXIoLS1wb2xsLWNob2ljZS1wZXJjZW50YWdlLCAxMDApKjElKSk7LS1wb2xsLWNob2ljZS1wZXJjZW50YWdlOnZhcigtLWRpc3BsYXllZC1wZXJjZW50YWdlKX0ueXRPdmVybGF5UG9sbFN0aWNrZXJDaG9pY2VQb2xsQ2hvaWNlU2VsZWN0ZWR7LS1wb2xsLWNob2ljZS1wZXJjZW50YWdlOnZhcigtLWRpc3BsYXllZC1wZXJjZW50YWdlKTtib3JkZXI6LjExMTExMTExMTFlbSBzb2xpZCB2YXIoLS1wcmltYXJ5LXRleHQpfS55dE92ZXJsYXlQb2xsU3RpY2tlckNob2ljZVBvbGxDaG9pY2VUZXh0ey1tb3otYm94LWZsZXg6NDtmbGV4OjQ7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDozZW07d2hpdGUtc3BhY2U6bm9ybWFsO292ZXJmbG93OmhpZGRlbn0ueXRPdmVybGF5UG9sbFN0aWNrZXJDaG9pY2VWb3RlUGVyY2VudGFnZXstbW96LWJveC1mbGV4OjE7ZmxleDoxO3RleHQtYWxpZ246cmlnaHR9Lnl0Y2lDb252ZXJzYXRpb25WaWRlb0lkZWFDYXJkVmlld01vZGVsSG9zdHtjb2xvcjojMDMwMzAzO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstLWljb24tY29sb3I6Y3VycmVudGNvbG9yfS55dGNpQ29udmVyc2F0aW9uVmlkZW9JZGVhQ2FyZFZpZXdNb2RlbENhcmR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BhZGRpbmc6MTZweH0ueXRjaUNvbnZlcnNhdGlvblZpZGVvSWRlYUNhcmRWaWV3TW9kZWxBY3Rpb25zQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nLXRvcDoyNHB4fS55dGNpQ29udmVyc2F0aW9uVmlkZW9JZGVhQ2FyZFZpZXdNb2RlbElkZWFBdHRyaWJ1dGlvbntmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojNjA2MDYwO3BhZGRpbmctYm90dG9tOjMycHg7Zm9udC13ZWlnaHQ6NzAwfS55dGNpQ29udmVyc2F0aW9uVmlkZW9JZGVhQ2FyZFZpZXdNb2RlbElkZWFOYW1le2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuOHJlbTtsaW5lLWhlaWdodDoyLjZyZW07Zm9udC13ZWlnaHQ6NTAwO3BhZGRpbmctYm90dG9tOjhweH0ueXRjaUNvbnZlcnNhdGlvblZpZGVvSWRlYUNhcmRWaWV3TW9kZWxJZGVhU3VtbWFyeXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojNjA2MDYwO2ZvbnQtc2l6ZToxLjNyZW19Lnl0SW5zdGFsbG1lbnRBZ3JlZW1lbnRzVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cGFkZGluZzoxMHB4IDEycHh9Lnl0SW5zdGFsbG1lbnRBZ3JlZW1lbnRzVmlld01vZGVsQWdyZWVtZW50Um93e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O3dpZHRoOjEwMCU7cGFkZGluZy1ib3R0b206MTBweDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEluc3RhbGxtZW50QWdyZWVtZW50c1ZpZXdNb2RlbEFncmVlbWVudExhYmVse2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwOy1tb3otYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtYmFzaXM6MTAwJX0ueXRJbnN0YWxsbWVudEFncmVlbWVudHNWaWV3TW9kZWxBZ3JlZW1lbnRCdXR0b257LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRUaGVtZWRJbWFnZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztjb2xvcjojMDMwMzAzfS55dFVwc2VsbE9mZmVyVGFibGVDZWxsQ29udGVudFZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW4tYm90dG9tOjJweDtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbENvbnRlbnRWaWV3TW9kZWxVcHNlbGxPZmZlclRhYmxlQ2VsbFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbENvbnRlbnRWaWV3TW9kZWxWaXN1YWxseUhpZGRlbkFjY2Vzc2liaWxpdHl7Ym9yZGVyOjA7Y2xpcDpyZWN0KDAgMCAwIDApO2hlaWdodDoxcHg7bWFyZ2luOi0xcHg7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxcHg7d2hpdGUtc3BhY2U6bm93cmFwfS55dFVwc2VsbE9mZmVyVGFibGVDZWxsQ29udGVudFZpZXdNb2RlbFVwc2VsbE9mZmVyVGFibGVDZWxsU3VidGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dFVwc2VsbE9mZmVyVGFibGVDZWxsQ29udGVudFZpZXdNb2RlbFVwc2VsbE9mZmVyVGFibGVDZWxsSW5mb1RleHR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxLjZyZW07Zm9udC13ZWlnaHQ6NDAwO21hcmdpbi10b3A6LTRweH0ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbENvbnRlbnRWaWV3TW9kZWxVcHNlbGxPZmZlclRhYmxlQ2VsbEZlYXR1cmVEZXNjcmlwdGlvbnttYXgtd2lkdGg6bm9uZTt0ZXh0LWFsaWduOmxlZnQ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO21hcmdpbi1sZWZ0OjhweH0ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbENvbnRlbnRWaWV3TW9kZWxVcHNlbGxPZmZlclRhYmxlQ2VsbEljb257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjojMDMwMzAzfS55dFVwc2VsbE9mZmVyVGFibGVDZWxsQ29udGVudFZpZXdNb2RlbFVwc2VsbE9mZmVyVGFibGVDZWxsTm90ZXtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MS42cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbFZpZXdNb2RlbENlbGxXcmFwcGVye2hlaWdodDoxMDAlOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDttYXJnaW46YXV0b30ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbFZpZXdNb2RlbENlbGxXcmFwcGVySGVhZGVyQ2VsbHstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpzdGFydDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFVwc2VsbE9mZmVyVGFibGVDZWxsVmlld01vZGVsQ2VsbFdyYXBwZXJDb250ZW50Q2VsbHstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbFZpZXdNb2RlbENlbGxXcmFwcGVySGVhZGVyUm93Q2VsbHstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS55dFVwc2VsbE9mZmVyVGFibGVSb3dWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MjEwcHggMWZyO2dyaWQtZ2FwOjA7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfUBtZWRpYSAobWF4LXdpZHRoOjU3MHB4KXsueXRVcHNlbGxPZmZlclRhYmxlUm93Vmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59fS55dFVwc2VsbE9mZmVyVGFibGVSb3dWaWV3TW9kZWxIb3N0Rmlyc3RSb3d7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoyMTBweCAxZnI7Z3JpZC1nYXA6MH1AbWVkaWEgKG1heC13aWR0aDo1NzBweCl7Lnl0VXBzZWxsT2ZmZXJUYWJsZVJvd1ZpZXdNb2RlbEhvc3RGaXJzdFJvd3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59fS55dFVwc2VsbE9mZmVyVGFibGVSb3dWaWV3TW9kZWxVcHNlbGxPZmZlclRhYmxlUm93SGVhZGVyQ2VsbHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6c3RhcnQ7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcjt3aWR0aDoxMDAlO2hlaWdodDotbW96LWZpdC1jb250ZW50O2hlaWdodDpmaXQtY29udGVudDtwYWRkaW5nLXRvcDo4cHg7cGFkZGluZy1ib3R0b206OHB4fUBtZWRpYSAobWF4LXdpZHRoOjU3MHB4KXsueXRVcHNlbGxPZmZlclRhYmxlUm93Vmlld01vZGVsVXBzZWxsT2ZmZXJUYWJsZVJvd0hlYWRlckNlbGx7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtoZWlnaHQ6bm9uZX19Lnl0VXBzZWxsT2ZmZXJUYWJsZVJvd1ZpZXdNb2RlbFVwc2VsbE9mZmVyVGFibGVGaXJzdFJvd0NlbGx7cGFkZGluZy10b3A6NHB4O3BhZGRpbmctYm90dG9tOjRweH0ueXRVcHNlbGxPZmZlclRhYmxlUm93Vmlld01vZGVsVXBzZWxsT2ZmZXJUYWJsZVJvd0NvbnRlbnRDZWxse2hlaWdodDotbW96LWZpdC1jb250ZW50O2hlaWdodDpmaXQtY29udGVudDtwYWRkaW5nLXRvcDo4cHg7cGFkZGluZy1ib3R0b206OHB4fUBtZWRpYSAobWF4LXdpZHRoOjU3MHB4KXsueXRVcHNlbGxPZmZlclRhYmxlUm93Vmlld01vZGVsVXBzZWxsT2ZmZXJUYWJsZVJvd0NvbnRlbnRDZWxse2JvcmRlci10b3A6bm9uZX19Lnl0VXBzZWxsT2ZmZXJUYWJsZVJvd1ZpZXdNb2RlbFVwc2VsbE9mZmVyVGFibGVSb3dDb250ZW50Q2VsbHN7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoYXV0by1maXQsbWlubWF4KDk1cHgsMWZyKSk7Z3JpZC1nYXA6MH0ueXRVcHNlbGxPZmZlclRhYmxlVmlld01vZGVsSG9zdHt0ZXh0LWFsaWduOmNlbnRlcn0ueXRVcHNlbGxPZmZlclRhYmxlVmlld01vZGVsVXBzZWxsT2ZmZXJUYWJsZVJvd3N7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWF4LXdpZHRoOjUxMnB4fS55dFVwc2VsbFZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztwYWRkaW5nOjI0cHg7bWF4LXdpZHRoOjM3NXB4fS55dFVwc2VsbFZpZXdNb2RlbEhvc3ROb1BhZGRpbmd7cGFkZGluZzowO3BhZGRpbmctdG9wOjI0cHh9Lnl0VXBzZWxsVmlld01vZGVsSG9zdFdpZGV7bWF4LXdpZHRoOjUxMnB4fS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxMb2dve3dpZHRoOjEyNHB4fUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxMb2dve2ZvcmNlZC1jb2xvci1hZGp1c3Q6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7cGFkZGluZzo2cHg7Ym9yZGVyLXJhZGl1czo0cHh9fS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxUaXRsZXtwYWRkaW5nLXRvcDoyNHB4O2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6WW91VHViZSBTYW5zLFJvYm90byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH0ueXRVcHNlbGxWaWV3TW9kZWxIb3N0VXBzZWxsVGl0bGU6Zm9jdXMsLnl0VXBzZWxsVmlld01vZGVsSG9zdFVwc2VsbFRpdGxlOmZvY3VzLXZpc2libGV7b3V0bGluZTpub25lfS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxTdWJ0aXRsZVNlY3Rpb257cGFkZGluZzowfS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxTdWJ0aXRsZVNlY3Rpb25TdWJ0aXRsZXtwYWRkaW5nLXRvcDo4cHg7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRVcHNlbGxWaWV3TW9kZWxIb3N0VXBzZWxsU3VidGl0bGVTZWN0aW9uU3VidGl0bGVTZWNvbmRhcnl7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxCZW5lZml0SW5mb1NlY3Rpb257cGFkZGluZy10b3A6NHB4fS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxCZW5lZml0SW5mb1NlY3Rpb25JY29ue2ZsZXgtc2hyaW5rOjA7bWFyZ2luLXJpZ2h0OjE2cHh9Lnl0VXBzZWxsVmlld01vZGVsSG9zdFVwc2VsbEJlbmVmaXRJbmZvU2VjdGlvbkJlbmVmaXRJbmZve2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3BhZGRpbmctdG9wOjEycHg7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRVcHNlbGxWaWV3TW9kZWxIb3N0VXBzZWxsT2ZmZXJUYWJsZVNlY3Rpb257cGFkZGluZy10b3A6NHB4fS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxMZWdhbEluZm9TZWN0aW9ue3BhZGRpbmctdG9wOjEycHh9Lnl0VXBzZWxsVmlld01vZGVsSG9zdFVwc2VsbExlZ2FsSW5mb1NlY3Rpb25MZWdhbEluZm97cGFkZGluZy10b3A6NHB4O2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxMZWdhbEluZm9TZWN0aW9uTGVnYWxJbmZvU21hbGxlcntmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuNnJlbTtmb250LXdlaWdodDo0MDB9Lnl0TWluaUFwcFNjb3JlQ2hhbGxlbmdlVmlld01vZGVsSG9zdHtwYWRkaW5nOjI0cHggMjRweCA4cHg7d2lkdGg6YXV0bztkaXNwbGF5OmJsb2NrfS55dE1pbmlBcHBTY29yZUNoYWxsZW5nZVZpZXdNb2RlbFNjb3JlUmFkaWFse2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjt3aWR0aDoxMDAlO2hlaWdodDoxNDhweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRNaW5pQXBwU2NvcmVDaGFsbGVuZ2VWaWV3TW9kZWxTY29yZVJhZGlhbDpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjtib3JkZXItcmFkaXVzOjMxcHg7bWFzay1pbWFnZTpyYWRpYWwtZ3JhZGllbnQocmdiKDAsMCwwKSAyMCUsdHJhbnNwYXJlbnQgNjAlKTtmaWx0ZXI6Ymx1cigycHgpO2JhY2tncm91bmQ6cmVwZWF0aW5nLWNvbmljLWdyYWRpZW50KGZyb20gMGRlZywjZjdkN2M1IDBkZWcgMTBkZWcsdHJhbnNwYXJlbnQgMTBkZWcgMjBkZWcpfS55dE1pbmlBcHBTY29yZUNoYWxsZW5nZVZpZXdNb2RlbERhcmtTY29yZVJhZGlhbDpiZWZvcmV7YmFja2dyb3VuZDpyZXBlYXRpbmctY29uaWMtZ3JhZGllbnQoZnJvbSAwZGVnLCM0MjRmNWQgMGRlZyAxMGRlZyx0cmFuc3BhcmVudCAxMGRlZyAyMGRlZyl9Lnl0TWluaUFwcFNjb3JlQ2hhbGxlbmdlVmlld01vZGVsVGl0bGV7Y29sb3I6IzAzMDMwMzt0ZXh0LWFsaWduOmNlbnRlcjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjZyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TWluaUFwcFNjb3JlQ2hhbGxlbmdlVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRNaW5pQXBwU2NvcmVDaGFsbGVuZ2VWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjUuNnJlbX0ueXRNaW5pQXBwU2NvcmVDaGFsbGVuZ2VWaWV3TW9kZWxTdWJ0aXRsZXtjb2xvcjojNjA2MDYwO3BhZGRpbmc6OHB4IDA7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6MnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRNaW5pQXBwU2NvcmVDaGFsbGVuZ2VWaWV3TW9kZWxTdWJ0aXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MTttYXgtaGVpZ2h0Om5vbmV9fS55dE1pbmlBcHBTY29yZUNoYWxsZW5nZVZpZXdNb2RlbFN1YnRpdGxle21heC1oZWlnaHQ6MnJlbX0ueXRNaW5pQXBwU2NvcmVDaGFsbGVuZ2VWaWV3TW9kZWxTY29yZXtjb2xvcjojMDMwMzAzO21pbi13aWR0aDo4MnB4O3BhZGRpbmc6MCAxNnB4O2hlaWdodDo2MnB4O2JvcmRlci1yYWRpdXM6MzFweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7ZGlzcGxheTpncmlkOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7dGV4dC1hbGlnbjpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6My4ycmVtO2xpbmUtaGVpZ2h0OjQuNHJlbTtmb250LXdlaWdodDo5MDB9Lnl0TWluaUFwcFNjb3JlQ2hhbGxlbmdlVmlld01vZGVsUHJvbXB0e2NvbG9yOiM2MDYwNjA7cGFkZGluZy10b3A6OHB4O3RleHQtd3JhcDp3cmFwO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUcnVuY2F0ZWRUZXh0SG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmF1dG87Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUcnVuY2F0ZWRUZXh0VHJ1bmNhdGVkVGV4dENvbnRlbnR7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZX0ueXRUcnVuY2F0ZWRUZXh0VHJ1bmNhdGVkVGV4dENvbnRlbnQueXRUcnVuY2F0ZWRUZXh0SGlkZGVuVGV4dENvbnRlbnR7dmlzaWJpbGl0eTpoaWRkZW47cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0VHJ1bmNhdGVkVGV4dElubGluZUJ1dHRvbnt2aXNpYmlsaXR5OmhpZGRlbjtib3JkZXI6bm9uZTttYXJnaW46MDtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NTAwfS55dFRydW5jYXRlZFRleHRBYnNvbHV0ZUJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtyaWdodDowO2JvcmRlcjpub25lO21hcmdpbjowO3BhZGRpbmc6MDtjdXJzb3I6cG9pbnRlcjtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo1MDB9Lnl0VHJ1bmNhdGVkVGV4dEJvdHRvbUJ1dHRvbntmbG9hdDpyaWdodDtib3JkZXI6bm9uZTttYXJnaW46MDtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NTAwfS55dFRydW5jYXRlZFRleHRPdmVybGF5e2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KX0ueXRUcnVuY2F0ZWRUZXh0T3ZlcmxheSAueXRUcnVuY2F0ZWRUZXh0QWJzb2x1dGVCdXR0b24sLnl0VHJ1bmNhdGVkVGV4dE92ZXJsYXkgLnl0VHJ1bmNhdGVkVGV4dEJvdHRvbUJ1dHRvbiwueXRUcnVuY2F0ZWRUZXh0T3ZlcmxheSAueXRUcnVuY2F0ZWRUZXh0SW5saW5lQnV0dG9ue2NvbG9yOiNmZmZ9Lnl0VHJ1bmNhdGVkVGV4dEhpZGRlbntkaXNwbGF5Om5vbmV9Lnl0VHJ1bmNhdGVkVGV4dE1lZGl1bVRleHR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFRydW5jYXRlZFRleHRNZWRpdW1UZXh0IC55dFRydW5jYXRlZFRleHRBYnNvbHV0ZUJ1dHRvbiwueXRUcnVuY2F0ZWRUZXh0TWVkaXVtVGV4dCAueXRUcnVuY2F0ZWRUZXh0Qm90dG9tQnV0dG9uLC55dFRydW5jYXRlZFRleHRNZWRpdW1UZXh0IC55dFRydW5jYXRlZFRleHRJbmxpbmVCdXR0b257Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dFRydW5jYXRlZFRleHRMYXJnZVRleHR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo0MDB9Lnl0VHJ1bmNhdGVkVGV4dExhcmdlVGV4dCAueXRUcnVuY2F0ZWRUZXh0QWJzb2x1dGVCdXR0b24sLnl0VHJ1bmNhdGVkVGV4dExhcmdlVGV4dCAueXRUcnVuY2F0ZWRUZXh0Qm90dG9tQnV0dG9uLC55dFRydW5jYXRlZFRleHRMYXJnZVRleHQgLnl0VHJ1bmNhdGVkVGV4dElubGluZUJ1dHRvbntmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRUcnVuY2F0ZWRUZXh0UHJpbWFyeVRleHR7Y29sb3I6IzAzMDMwM30ueXRUcnVuY2F0ZWRUZXh0UHJpbWFyeVRleHQgLnl0VHJ1bmNhdGVkVGV4dEFic29sdXRlQnV0dG9uLC55dFRydW5jYXRlZFRleHRQcmltYXJ5VGV4dCAueXRUcnVuY2F0ZWRUZXh0Qm90dG9tQnV0dG9uLC55dFRydW5jYXRlZFRleHRQcmltYXJ5VGV4dCAueXRUcnVuY2F0ZWRUZXh0SW5saW5lQnV0dG9ue2NvbG9yOiM2MDYwNjB9Lnl0RGVzY3JpcHRpb25QcmV2aWV3Vmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dERlc2NyaXB0aW9uUHJldmlld1ZpZXdNb2RlbENsaWNrYWJsZXtjdXJzb3I6cG9pbnRlcn0ueXREZXNjcmlwdGlvblByZXZpZXdWaWV3TW9kZWxEZXNjcmlwdGlvbntkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmF1dG87Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXREZXNjcmlwdGlvblByZXZpZXdWaWV3TW9kZWxEZXNjcmlwdGlvbk1lZGl1bVRleHR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dERlc2NyaXB0aW9uUHJldmlld1ZpZXdNb2RlbElzT3ZlcmxheSAueXREZXNjcmlwdGlvblByZXZpZXdWaWV3TW9kZWxEZXNjcmlwdGlvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyl9Lnl0QmFzaWNDb250ZW50Vmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrO3doaXRlLXNwYWNlOnByZS1saW5lO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ueXRCYXNpY0NvbnRlbnRWaWV3TW9kZWxIZWFkbGluZXtjb2xvcjojMDMwMzAzO21hcmdpbi1ib3R0b206MTJweDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjZyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0QmFzaWNDb250ZW50Vmlld01vZGVsSGVhZGxpbmV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRCYXNpY0NvbnRlbnRWaWV3TW9kZWxIZWFkbGluZXttYXgtaGVpZ2h0OjUuNnJlbX0ueXRCYXNpY0NvbnRlbnRWaWV3TW9kZWxQYXJhZ3JhcGhIZWFkbGluZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjUuMnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRCYXNpY0NvbnRlbnRWaWV3TW9kZWxQYXJhZ3JhcGhIZWFkbGluZXstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dEJhc2ljQ29udGVudFZpZXdNb2RlbFBhcmFncmFwaEhlYWRsaW5le21heC1oZWlnaHQ6NS4ycmVtO2NvbG9yOiMwMzAzMDM7bWFyZ2luLWJvdHRvbTo4cHh9Lnl0QmFzaWNDb250ZW50Vmlld01vZGVsUGFyYWdyYXBoOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWJvdHRvbToxMnB4fS55dEJhc2ljQ29udGVudFZpZXdNb2RlbFBhcmFncmFwaENvbnRlbnR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCYXNpY0NvbnRlbnRWaWV3TW9kZWxQYXJhZ3JhcGhBc3NldHtkaXNwbGF5OmJsb2NrO21hcmdpbi1yaWdodDoxMnB4fS55dEJhc2ljQ29udGVudFZpZXdNb2RlbFBhcmFncmFwaFRleHR7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRCYXNpY0NvbnRlbnRWaWV3TW9kZWxQYXJhZ3JhcGhUZXh0UHJpbWFyeXtjb2xvcjojMDMwMzAzfS55dEJhc2ljQ29udGVudFZpZXdNb2RlbFBhcmFncmFwaFRleHRCb2xke2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRDaW5lbWF0aWNDb250YWluZXJWaWV3TW9kZWxIb3N0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtib3R0b206MDtyaWdodDowO292ZXJmbG93OmhpZGRlbn0ueXRDaW5lbWF0aWNDb250YWluZXJWaWV3TW9kZWxCYWNrZ3JvdW5kSW1hZ2V7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MjAwJTttYXgtd2lkdGg6MjAwJTtoZWlnaHQ6YXV0bzt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjUlKSB0cmFuc2xhdGVZKC0yNSUpO29wYWNpdHk6Ljc7ZmlsdGVyOmJsdXIoMzBweCl9Lnl0Q2luZW1hdGljQ29udGFpbmVyVmlld01vZGVsQmFja2dyb3VuZEdyYWRpZW50e3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9Lnl0Q2luZW1hdGljQ29udGFpbmVyVmlld01vZGVsRmFkZVRvVGhlbWVDb250YWluZXJ7aGVpZ2h0OjEwMCV9QG1lZGlhIChtaW4td2lkdGg6ODQwcHgpey55dENpbmVtYXRpY0NvbnRhaW5lclZpZXdNb2RlbEZhZGVUb1RoZW1lQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH19Lnl0Q2luZW1hdGljQ29udGFpbmVyVmlld01vZGVsRmFkZVRvVGhlbWVJbWFnZXtvcGFjaXR5Oi44O3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn1AbWVkaWEgKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRDaW5lbWF0aWNDb250YWluZXJWaWV3TW9kZWxGYWRlVG9UaGVtZUltYWdle2Rpc3BsYXk6bm9uZX19Lnl0Q2luZW1hdGljQ29udGFpbmVyVmlld01vZGVsRmFkZVRvVGhlbWVJbWFnZUNvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTtyaWdodDphdXRvO2hlaWdodDoxMDAlO21pbi13aWR0aDo1MCV9QG1lZGlhIChtaW4td2lkdGg6ODQwcHgpey55dENpbmVtYXRpY0NvbnRhaW5lclZpZXdNb2RlbEZhZGVUb1RoZW1lSW1hZ2VDb250YWluZXJ7cmlnaHQ6LTgwcHh9fS55dENpbmVtYXRpY0NvbnRhaW5lclZpZXdNb2RlbEZhZGVUb1RoZW1lSW1hZ2VHcmFkdWFsQmx1cntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb2ludGVyLWV2ZW50czpub25lfS55dENpbmVtYXRpY0NvbnRhaW5lclZpZXdNb2RlbEZhZGVUb1RoZW1lR3JhZGllbnR7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtsZWZ0OjA7dG9wOjB9Lnl0Q29sbGVjdGlvblRodW1ibmFpbFZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlfS55dENvbGxlY3Rpb25UaHVtYm5haWxWaWV3TW9kZWxIb3N0SGFzU3RhY2tze2JvcmRlci10b3A6MXB4IHNvbGlkICNmZmY7bWFyZ2luLXRvcDotMXB4fS55dENvbGxlY3Rpb25UaHVtYm5haWxWaWV3TW9kZWxTbGlkZXNob3d7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjB9Lnl0Q29sbGVjdGlvblRodW1ibmFpbFNsaWRlc2hvd0hvc3R7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZX0ueXRDb2xsZWN0aW9uVGh1bWJuYWlsU2xpZGVzaG93U2xpZGVzaG93VGh1bWJuYWlse3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjhzIGVhc2V9Lnl0Q29sbGVjdGlvblRodW1ibmFpbFNsaWRlc2hvd1NsaWRlc2hvd1RodW1ibmFpbEZpcnN0U2xpZGV7cG9zaXRpb246cmVsYXRpdmV9Lnl0Q29sbGVjdGlvblRodW1ibmFpbFNsaWRlc2hvd1NsaWRlc2hvd1RodW1ibmFpbFNob3dTbGlkZXtvcGFjaXR5OjF9Lnl0RG93bmxvYWRCdXR0b25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0RG93bmxvYWRCdXR0b25WaWV3TW9kZWxIb3N0IHBhdGgub2ZmbGluZS1kb3dubG9hZGluZy1wcm9ncmVzc3tzdHJva2U6IzNlYTZmZn0ueXREb3dubG9hZEJ1dHRvblZpZXdNb2RlbEhvc3QgcGF0aC5vZmZsaW5lLWRvd25sb2FkaW5nLWJhY2tncm91bmR7c3Ryb2tlOiMwNjVmZDR9Lnl0RG93bmxvYWRCdXR0b25WaWV3TW9kZWxJc0hpZGRlbntkaXNwbGF5Om5vbmV9Lnl0Rm9ybUZvb3RlclZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRSYWRpb0J1dHRvbkl0ZW1WaWV3TW9kZWxIb3N0e3dpZHRoOjEwMCV9Lnl0UmFkaW9CdXR0b25JdGVtVmlld01vZGVsTGFiZWx7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS55dFJhZGlvQnV0dG9uSXRlbVZpZXdNb2RlbERpc2FibGVkIC55dFJhZGlvQnV0dG9uSXRlbVZpZXdNb2RlbExhYmVse2NvbG9yOiM2MDYwNjB9Lnl0UmFkaW9CdXR0b25JdGVtVmlld01vZGVsU3ViVGV4dCwueXRSYWRpb0J1dHRvbkl0ZW1WaWV3TW9kZWxTdXBlcmxhYmVse2NvbG9yOiM2MDYwNjA7ZGlzcGxheTpibG9jaztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRSYWRpb0J1dHRvbkl0ZW1WaWV3TW9kZWxTdWJUaXRsZXttYXJnaW4tYm90dG9tOjhweH0ueXRSYWRpb0J1dHRvbkl0ZW1WaWV3TW9kZWxUcmFpbGluZ0FjY2Vzc29yeXtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRSYWRpb0J1dHRvbkl0ZW1WaWV3TW9kZWxUcmFpbGluZ0NvbnRhaW5lcnstbW96LW1hcmdpbi1zdGFydDo4cHg7bWFyZ2luLWlubGluZS1zdGFydDo4cHg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0ueXRTZWxlY3Rpb25MaXN0SXRlbUZvcm1WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0U2VsZWN0aW9uTGlzdEl0ZW1Gb3JtVmlld01vZGVsUGFyYWdyYXBoe21hcmdpbi1ib3R0b206MTJweDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0U3VibWl0QnV0dG9uVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dEF0dHJpYnV0aW9uVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21pbi13aWR0aDowfS55dEF0dHJpYnV0aW9uVmlld01vZGVsQXR0cmlidXRpb25UZXh0e2JhY2tncm91bmQtY29sb3I6dW5zZXQ7Ym9yZGVyLXN0eWxlOnVuc2V0O2ZsZXgtc2hyaW5rOjE7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bWF4LWhlaWdodDoxLjhyZW19Lnl0QXR0cmlidXRpb25WaWV3TW9kZWxTdWZmaXh7bWFyZ2luLWxlZnQ6NHB4O2JhY2tncm91bmQtY29sb3I6dW5zZXQ7Ym9yZGVyLXN0eWxlOnVuc2V0O2ZsZXgtc2hyaW5rOjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bWF4LWhlaWdodDoxLjhyZW19Lnl0QXR0cmlidXRpb25WaWV3TW9kZWxBdHRyaWJ1dGlvbkltYWdle21hcmdpbi1yaWdodDo4cHg7LW1vei1ib3gtZmxleDowO2ZsZXg6bm9uZX0ueXRBdHRyaWJ1dGlvblZpZXdNb2RlbEJhZGdle21hcmdpbi1yaWdodDo0cHg7LW1vei1ib3gtZmxleDowO2ZsZXg6bm9uZX0ueXRBdHRyaWJ1dGlvblZpZXdNb2RlbFRhcHBhYmxle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOm5vbmU7cGFkZGluZzowO2N1cnNvcjpwb2ludGVyO2NvbG9yOmluaGVyaXQ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttaW4td2lkdGg6MH0ueXRBdHRyaWJ1dGlvblZpZXdNb2RlbE1lZGl1bVRleHQgLnl0QXR0cmlidXRpb25WaWV3TW9kZWxBdHRyaWJ1dGlvblRleHQsLnl0QXR0cmlidXRpb25WaWV3TW9kZWxNZWRpdW1UZXh0IC55dEF0dHJpYnV0aW9uVmlld01vZGVsQmFkZ2UsLnl0QXR0cmlidXRpb25WaWV3TW9kZWxNZWRpdW1UZXh0IC55dEF0dHJpYnV0aW9uVmlld01vZGVsU3VmZml4e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpczttYXgtaGVpZ2h0OjJyZW19Lnl0QXR0cmlidXRpb25WaWV3TW9kZWxIZWF2eVRleHQgLnl0QXR0cmlidXRpb25WaWV3TW9kZWxBdHRyaWJ1dGlvblRleHQsLnl0QXR0cmlidXRpb25WaWV3TW9kZWxIZWF2eVRleHQgLnl0QXR0cmlidXRpb25WaWV3TW9kZWxCYWRnZSwueXRBdHRyaWJ1dGlvblZpZXdNb2RlbEhlYXZ5VGV4dCAueXRBdHRyaWJ1dGlvblZpZXdNb2RlbFN1ZmZpeHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cG9zaXRpb246cmVsYXRpdmU7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7bWluLXdpZHRoOjA7LS15dC1hdHRyaWJ1dGVkLXN0cmluZy1saW5rLWhvdmVyLWNvbG9yOiMwMzAzMDN9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxIb3N0Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNb3ZlTG9ja3VwT3ZlcmZsb3dNZW51VG9Cb3R0b21SaWdodHtwb3NpdGlvbjpzdGF0aWN9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxIZWFkaW5nUmVzZXR7bWFyZ2luOjA7cGFkZGluZzowO2JvcmRlcjowO21heC1oZWlnaHQ6dW5zZXR9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUZXh0Q29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4td2lkdGg6MH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEF2YXRhcnttYXJnaW4tcmlnaHQ6MTJweDtkaXNwbGF5Om5vbmV9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxVcGRhdGVkQXZhdGFyTWFyZ2lue21hcmdpbi1yaWdodDo4cHh9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXt0ZXh0LWRlY29yYXRpb246bm9uZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7Y29sb3I6IzAzMDMwM30ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEhhc01lbnVCdXR0b24gLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXtwYWRkaW5nLXJpZ2h0OjI0cHh9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YXtjb2xvcjojNjA2MDYwfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWVudUJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTZweDtyaWdodDotMTBweH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEF0dHJpYnV0aW9ue21hcmdpbi10b3A6MnB4O2NvbG9yOiM2MDYwNjB9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEF2YXRhcntkaXNwbGF5OmJsb2NrfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWVudUJ1dHRvbi55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQm90dG9tUmlnaHR7dG9wOnVuc2V0O3JpZ2h0OjA7Ym90dG9tOjA7dHJhbnNmb3JtOm5vbmU7b3BhY2l0eTowfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpuby1wcmVmZXJlbmNlKXsueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1lbnVCdXR0b24ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEJvdHRvbVJpZ2h0e3RyYW5zaXRpb246b3BhY2l0eSAuMnN9fS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWVudUJ1dHRvbi55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVmlzaWJsZXtvcGFjaXR5OjF9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNZW51QnV0dG9uOmZvY3VzLXdpdGhpbntvcGFjaXR5OjF9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDYXJke21hcmdpbjo0cHggMH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFZlcnRpY2FsLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDZW50ZXJlZHstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVmVydGljYWwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENlbnRlcmVkIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7cGFkZGluZy1yaWdodDowfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVmVydGljYWwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENlbnRlcmVkIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGV4dENvbnRhaW5lcnstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVmVydGljYWwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENlbnRlcmVkIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQXR0cmlidXRpb257bWFyZ2luLXRvcDoxMnB4fS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVmVydGljYWwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENhcmR7bWFyZ2luOjAgOHB4IDhweH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE92ZXJsYXl7LS15dC1hdHRyaWJ1dGVkLXN0cmluZy1saW5rLWhvdmVyLWNvbG9yOiNmZmZ9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxPdmVybGF5IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGEsLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxPdmVybGF5IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7Y29sb3I6I2ZmZn0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXl7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXkueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENhcmR7bWFyZ2luOjRweH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXkgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxBdmF0YXJ7bWFyZ2luLXJpZ2h0OjhweH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXkgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YSwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXkgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXtwYWRkaW5nLXJpZ2h0OjhweH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXkgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUZXh0Q29udGFpbmVyey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXkgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNZW51QnV0dG9ue3Bvc2l0aW9uOnVuc2V0fS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsSG9yaXpvbnRhbCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEF2YXRhcntkaXNwbGF5Om5vbmV9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxIb3Jpem9udGFsLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDZW50ZXJlZCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRleHRDb250YWluZXJ7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nLXJpZ2h0OjI4cHh9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxIb3Jpem9udGFsLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDZW50ZXJlZCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle3BhZGRpbmctcmlnaHQ6MH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEhvcml6b250YWwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENlbnRlcmVkIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWVudUJ1dHRvbnt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsU3RhbmRhcmQgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjQuNHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7bWF4LWhlaWdodDo0LjRyZW19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVHlwb2dyYXBoeUJ1bXAgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjUuMnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUeXBvZ3JhcGh5QnVtcCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVHlwb2dyYXBoeUJ1bXAgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjUuMnJlbX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxMZWdhY3lUeXBvZ3JhcGh5IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS44cmVtO2xpbmUtaGVpZ2h0OjIuNnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTGVnYWN5VHlwb2dyYXBoeSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTGVnYWN5VHlwb2dyYXBoeSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle21heC1oZWlnaHQ6NS4ycmVtfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsU3RhbmRhcmQueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFJpY2hHcmlkTGVnYWN5VHlwb2dyYXBoeSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsU3RhbmRhcmQueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFJpY2hHcmlkTGVnYWN5VHlwb2dyYXBoeSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsUmljaEdyaWRMZWdhY3lUeXBvZ3JhcGh5IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7bWF4LWhlaWdodDo0LjRyZW19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGVNYXhMaW5lczEgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjIuMnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZU1heExpbmVzMSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGVNYXhMaW5lczEgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjIuMnJlbX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZU1heExpbmVzMyAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6Ni42cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsU3RhbmRhcmQueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxlTWF4TGluZXMzIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjM7bWF4LWhlaWdodDpub25lfX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZU1heExpbmVzMyAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle21heC1oZWlnaHQ6Ni42cmVtfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDb21wYWN0IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENvbXBhY3QgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjRyZW19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDb21wYWN0Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUeXBvZ3JhcGh5QnVtcCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVHlwb2dyYXBoeUJ1bXAgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVHlwb2dyYXBoeUJ1bXAgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjQuNHJlbX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENvbXBhY3QueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFJpY2hHcmlkTGVnYWN5VHlwb2dyYXBoeSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsUmljaEdyaWRMZWdhY3lUeXBvZ3JhcGh5IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENvbXBhY3QueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFJpY2hHcmlkTGVnYWN5VHlwb2dyYXBoeSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle21heC1oZWlnaHQ6NC40cmVtfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGVNYXhMaW5lczMgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo2cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGVNYXhMaW5lczMgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MzttYXgtaGVpZ2h0Om5vbmV9fS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGVNYXhMaW5lczMgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjZyZW19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaW55IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDozLjZyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaW55IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpbnkgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjMuNnJlbX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENlbnRlcmVkQ29sdW1uey1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LWZsZXg6MTtmbGV4OjF9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDZW50ZXJlZENvbHVtbiAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEF2YXRhcnttYXJnaW4tcmlnaHQ6MDtkaXNwbGF5OmJsb2NrfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ2VudGVyZWRDb2x1bW4gLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YSwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENlbnRlcmVkQ29sdW1uIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7cGFkZGluZy1yaWdodDowfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ2VudGVyZWRDb2x1bW4gLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUZXh0Q29udGFpbmVyey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDZW50ZXJlZENvbHVtbiAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNb3ZlTG9ja3VwT3ZlcmZsb3dNZW51VG9Cb3R0b21SaWdodCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRleHRDb250YWluZXIsLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNb3ZlTG9ja3VwT3ZlcmZsb3dNZW51VG9Cb3R0b21SaWdodCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle3BhZGRpbmctcmlnaHQ6MH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1vdmVMb2NrdXBPdmVyZmxvd01lbnVUb0JvdHRvbVJpZ2h0IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWVudUJ1dHRvbnt6LWluZGV4OjE7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNb3ZlTG9ja3VwT3ZlcmZsb3dNZW51VG9Cb3R0b21SaWdodCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1lbnVCdXR0b246YWZ0ZXIsLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNb3ZlTG9ja3VwT3ZlcmZsb3dNZW51VG9Cb3R0b21SaWdodCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1lbnVCdXR0b246YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6LTE1JTtib3JkZXItcmFkaXVzOjUwJX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1vdmVMb2NrdXBPdmVyZmxvd01lbnVUb0JvdHRvbVJpZ2h0IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWVudUJ1dHRvbjpiZWZvcmV7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCNmZmYgNjAlLHRyYW5zcGFyZW50IDEwMCUpO3otaW5kZXg6LTJ9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNb3ZlTG9ja3VwT3ZlcmZsb3dNZW51VG9Cb3R0b21SaWdodCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1lbnVCdXR0b246YWZ0ZXJ7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLHZhcigtLXl0LWxvY2t1cC1tZXRhZGF0YS10aGVtZWQtbWVudS1idXR0b24tYWRkaXRpdmUtYmFja2dyb3VuZCx0cmFuc3BhcmVudCkgNjAlLHRyYW5zcGFyZW50IDEwMCUpO3otaW5kZXg6LTF9Lnl0Rm9ybVBhbmVsRm9vdGVyVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dERpYWxvZ0ltYWdlQ29udGVudFZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dERpYWxvZ0ltYWdlQ29udGVudFZpZXdNb2RlbEltYWdle21hcmdpbi1pbmxpbmU6YXV0bzstbW96LWJveC1mbGV4OjA7ZmxleC1ncm93OjA7ZmxleC1zaHJpbms6MX0ueXREaWFsb2dJbWFnZUNvbnRlbnRWaWV3TW9kZWxEZXNjcmlwdGlvbnttYXJnaW4tdG9wOjE2cHg7dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC13cmFwOmJhbGFuY2U7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dEFuaW1hdGVkVGh1bWJuYWlsT3ZlcmxheVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtyaWdodDowO2xlZnQ6MH0ueXRUaHVtYm5haWxCb3R0b21PdmVybGF5Vmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDstbW96LWJveC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmQ7LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS55dFRodW1ibmFpbEJvdHRvbU92ZXJsYXlWaWV3TW9kZWxIb3N0QmFja2dyb3VuZHstbW96LWJveC1mbGV4OjE7ZmxleDoxO2ZsZXgtYmFzaXM6MC4wMDAwMDAwMDFweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7aGVpZ2h0OjY4cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQscmdiYSgwLDAsMCwwLjYpKX0ueXRUaHVtYm5haWxCb3R0b21PdmVybGF5Vmlld01vZGVsQmFkZ2VDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3d9Lnl0VGh1bWJuYWlsQm90dG9tT3ZlcmxheVZpZXdNb2RlbEJhZGdlQ29udGFpbmVyU21hbGx7cGFkZGluZzowIDJweCAycHggMH0ueXRUaHVtYm5haWxCb3R0b21PdmVybGF5Vmlld01vZGVsQmFkZ2VDb250YWluZXJTbWFsbExlZ2FjeXtwYWRkaW5nOjAgMnB4IDRweCAwfS55dFRodW1ibmFpbEJvdHRvbU92ZXJsYXlWaWV3TW9kZWxCYWRnZUNvbnRhaW5lck1lZGl1bXtwYWRkaW5nOjAgNHB4IDRweCAwfS55dFRodW1ibmFpbEJvdHRvbU92ZXJsYXlWaWV3TW9kZWxCYWRnZUNvbnRhaW5lckxhcmdle3BhZGRpbmc6MCA4cHggOHB4IDB9Lnl0VGh1bWJuYWlsQm90dG9tT3ZlcmxheVZpZXdNb2RlbEJhZGdlQ29udGFpbmVyQ2xpcHttYXJnaW4tcmlnaHQ6NHB4fS55dFRodW1ibmFpbEJvdHRvbU92ZXJsYXlWaWV3TW9kZWxCYWRnZXttYXJnaW4tbGVmdDo0cHh9Lnl0VGh1bWJuYWlsSG92ZXJPdmVybGF5Vmlld01vZGVsSG9zdHtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtjdXJzb3I6cG9pbnRlcn0ueXRUaHVtYm5haWxIb3Zlck92ZXJsYXlWaWV3TW9kZWxIb3N0OmZvY3VzLC55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVZpZXdNb2RlbEhvc3Q6Zm9jdXMtd2l0aGluLC55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVZpZXdNb2RlbEhvc3Q6aG92ZXJ7b3BhY2l0eToxfS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVZpZXdNb2RlbEhvc3RGb3JjZUhvdmVye29wYWNpdHk6MTt0cmFuc2l0aW9uOm5vbmV9Lnl0VGh1bWJuYWlsSG92ZXJPdmVybGF5Vmlld01vZGVsU2NyaW17ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MTAwJX0ueXRUaHVtYm5haWxIb3Zlck92ZXJsYXlWaWV3TW9kZWxTdHlsZUNvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDAlfS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVZpZXdNb2RlbFN0eWxlQnV0dG9ue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbToxNnB4O3JpZ2h0OjE2cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2hlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6MThweDtwYWRkaW5nOjAgMTZweH0ueXRUaHVtYm5haWxIb3Zlck92ZXJsYXlWaWV3TW9kZWxUZXh0e21hcmdpbjo0cHg7Y29sb3I6I2ZmZjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0VGh1bWJuYWlsSG92ZXJPdmVybGF5Vmlld01vZGVsSWNvbnttYXJnaW46NHB4O2NvbG9yOiNmZmY7ZmlsbDojZmZmO2hlaWdodDoyNHB4fS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVRvZ2dsZUFjdGlvbnNWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RvcDowO3JpZ2h0OjA7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyMDA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzowIDAgNHB4IDRweDtwb2ludGVyLWV2ZW50czpub25lfS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVRvZ2dsZUFjdGlvbnNWaWV3TW9kZWxIaWRkZW57dmlzaWJpbGl0eTpoaWRkZW59Lnl0VGh1bWJuYWlsSG92ZXJPdmVybGF5VG9nZ2xlQWN0aW9uc1ZpZXdNb2RlbEhpZGRlbkdhdGVke29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lfS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVRvZ2dsZUFjdGlvbnNWaWV3TW9kZWxCdXR0b257cGFkZGluZzo0cHggNHB4IDAgMDtwb2ludGVyLWV2ZW50czphdXRvfS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVRvZ2dsZUFjdGlvbnNWaWV3TW9kZWxPdmVybGF5QmFja2dyb3VuZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KX0ueXRUaHVtYm5haWxIb3Zlck92ZXJsYXlUb2dnbGVBY3Rpb25zVmlld01vZGVsVG9wRW5kVmVydGljYWx7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7LW1vei1ib3gtYWxpZ246ZW5kO2FsaWduLWl0ZW1zOmZsZXgtZW5kfS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVRvZ2dsZUFjdGlvbnNWaWV3TW9kZWxCb3R0b21FbmRWZXJ0aWNhbHstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kOy1tb3otYm94LWFsaWduOmVuZDthbGlnbi1pdGVtczpmbGV4LWVuZH0ueXRUaHVtYm5haWxIb3Zlck92ZXJsYXlUb2dnbGVBY3Rpb25zVmlld01vZGVsVG9wRW5kSG9yaXpvbnRhbHstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0ueXRUaHVtYm5haWxPdmVybGF5QmFkZ2VWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O3Bvc2l0aW9uOmFic29sdXRlfS55dFRodW1ibmFpbE92ZXJsYXlCYWRnZVZpZXdNb2RlbFNtYWxse21hcmdpbjoycHh9Lnl0VGh1bWJuYWlsT3ZlcmxheUJhZGdlVmlld01vZGVsTWVkaXVte21hcmdpbjo0cHh9Lnl0VGh1bWJuYWlsT3ZlcmxheUJhZGdlVmlld01vZGVsTGFyZ2V7bWFyZ2luOjhweH0ueXRUaHVtYm5haWxPdmVybGF5QmFkZ2VWaWV3TW9kZWxUb3BTdGFydHt0b3A6MDtsZWZ0OjB9Lnl0VGh1bWJuYWlsT3ZlcmxheUJhZGdlVmlld01vZGVsVG9wU3RhcnQgLnl0VGh1bWJuYWlsT3ZlcmxheUJhZGdlVmlld01vZGVsQmFkZ2V7bWFyZ2luLXJpZ2h0OjRweH0ueXRUaHVtYm5haWxPdmVybGF5QmFkZ2VWaWV3TW9kZWxCb3R0b21FbmR7Ym90dG9tOjA7cmlnaHQ6MH0ueXRUaHVtYm5haWxPdmVybGF5QmFkZ2VWaWV3TW9kZWxCb3R0b21FbmQgLnl0VGh1bWJuYWlsT3ZlcmxheUJhZGdlVmlld01vZGVsQmFkZ2V7bWFyZ2luLWxlZnQ6NHB4fS55dFRodW1ibmFpbE92ZXJsYXlCYWRnZVZpZXdNb2RlbENsaXAueXRUaHVtYm5haWxPdmVybGF5QmFkZ2VWaWV3TW9kZWxCb3R0b21FbmQgLnl0VGh1bWJuYWlsT3ZlcmxheUJhZGdlVmlld01vZGVsQmFkZ2U6bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6NHB4fS55dFRodW1ibmFpbE92ZXJsYXlGdWxsVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpfS55dFRodW1ibmFpbE92ZXJsYXlGdWxsVmlld01vZGVsVGV4dHttYXJnaW46NHB4O2NvbG9yOiNmZmY7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFRodW1ibmFpbE92ZXJsYXlGdWxsVmlld01vZGVsSWNvbnttYXJnaW46NHB4O2NvbG9yOiNmZmY7ZmlsbDojZmZmO2hlaWdodDoyNHB4fS55dENvbnRlbnRQcmV2aWV3SW1hZ2VWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRDb250ZW50UHJldmlld0ltYWdlVmlld01vZGVsQ2lyY2xlSW1hZ2V7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0Q29udGVudFByZXZpZXdJbWFnZVZpZXdNb2RlbEV4dHJhU21hbGxSb3VuZGVkSW1hZ2V7Ym9yZGVyLXJhZGl1czoycHh9Lnl0Q29udGVudFByZXZpZXdJbWFnZVZpZXdNb2RlbFNtYWxsUm91bmRlZEltYWdle2JvcmRlci1yYWRpdXM6NHB4fS55dENvbnRlbnRQcmV2aWV3SW1hZ2VWaWV3TW9kZWxMYXJnZVJvdW5kZWRJbWFnZXtib3JkZXItcmFkaXVzOjhweH0ueXRDb250ZW50UHJldmlld0ltYWdlVmlld01vZGVsVGFwcGFibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0SW5saW5lRXhwYW5kZXJWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2s7Y3Vyc29yOnBvaW50ZXJ9Lnl0SW5saW5lRXhwYW5kZXJWaWV3TW9kZWxIZWFkZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0SW5saW5lRXhwYW5kZXJWaWV3TW9kZWxCdXR0b257dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0ueXRJbmxpbmVFeHBhbmRlclZpZXdNb2RlbEJ1dHRvbkV4cGFuZGVke3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0ueXRJbmxpbmVFeHBhbmRlclZpZXdNb2RlbEJ1dHRvbkNvbnRyb2xsZWR7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRJbmxpbmVFeHBhbmRlclZpZXdNb2RlbEJvZHl7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtcm93czowZnI7dHJhbnNpdGlvbjpncmlkLXRlbXBsYXRlLXJvd3MgLjM1cyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRJbmxpbmVFeHBhbmRlclZpZXdNb2RlbEJvZHlFeHBhbmRlZHtncmlkLXRlbXBsYXRlLXJvd3M6MWZyfS55dElubGluZUV4cGFuZGVyVmlld01vZGVsQm9keUNvbnRlbnR7b3ZlcmZsb3c6aGlkZGVufS55dFNoZWxmSGVhZGVyTGF5b3V0SG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1mbGV4OjE7ZmxleDoxOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4taGVpZ2h0OjQ4cHg7cGFkZGluZzo4cHggMTJweDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0U2hlbGZIZWFkZXJMYXlvdXRPcHRpb25hbE1lZGl1bUxheW91dFBhZGRpbmd7cGFkZGluZzowIDAgMTZweCA4cHh9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U2hlbGZIZWFkZXJMYXlvdXRPcHRpb25hbE1lZGl1bUxheW91dFBhZGRpbmd7cGFkZGluZzo4cHggMTJweH19Lnl0U2hlbGZIZWFkZXJMYXlvdXRIZWFkZXJSb3d7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dFNoZWxmSGVhZGVyTGF5b3V0UmVzcG9uc2l2ZXttaW4taGVpZ2h0OjU2cHh9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U2hlbGZIZWFkZXJMYXlvdXRSZXNwb25zaXZle21pbi1oZWlnaHQ6NDhweH19Lnl0U2hlbGZIZWFkZXJMYXlvdXROYXJyb3d7bWluLWhlaWdodDo0OHB4fS55dFNoZWxmSGVhZGVyTGF5b3V0RGlzYWJsZUhvcml6b250YWxQYWRkaW5ne3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH0ueXRTaGVsZkhlYWRlckxheW91dERpc2FibGVWZXJ0aWNhbFBhZGRpbmd7cGFkZGluZy10b3A6MDtwYWRkaW5nLWJvdHRvbTowfS55dFNoZWxmSGVhZGVyTGF5b3V0TGVhZGluZ0ljb257bWFyZ2luLXJpZ2h0OjI0cHg7Y29sb3I6IzAzMDMwMztoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dFNoZWxmSGVhZGVyTGF5b3V0TGVhZGluZ0ltYWdle21hcmdpbi1yaWdodDoxMnB4O21heC1oZWlnaHQ6MzZweDttYXgtd2lkdGg6MzZweDtjb2xvcjojMDMwMzAzfS55dFNoZWxmSGVhZGVyTGF5b3V0TGVhZGluZ0ltYWdlQ2lyY3VsYXJJbWFnZXtib3JkZXItcmFkaXVzOjUwJTtvdmVyZmxvdzpoaWRkZW59Lnl0U2hlbGZIZWFkZXJMYXlvdXRMYWJlbENvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1mbGV4OjE7ZmxleDoxOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRTaGVsZkhlYWRlckxheW91dFRpdGxlUm93e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmJhc2VsaW5lO2FsaWduLWl0ZW1zOmJhc2VsaW5lfS55dFNoZWxmSGVhZGVyTGF5b3V0VGl0bGV7Y29sb3I6IzAzMDMwMztwYWRkaW5nOjA7bWFyZ2luOjB9Lnl0U2hlbGZIZWFkZXJMYXlvdXRUaXRsZVR5cG9ncmFwaHl7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MnJlbTtsaW5lLWhlaWdodDoyLjhyZW07Zm9udC13ZWlnaHQ6NzAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NS42cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNoZWxmSGVhZGVyTGF5b3V0VGl0bGVUeXBvZ3JhcGh5ey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U2hlbGZIZWFkZXJMYXlvdXRUaXRsZVR5cG9ncmFwaHl7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS44cmVtO2xpbmUtaGVpZ2h0OjIuNnJlbTtmb250LXdlaWdodDo3MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U2hlbGZIZWFkZXJMYXlvdXRUaXRsZVR5cG9ncmFwaHl7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX19Lnl0U2hlbGZIZWFkZXJMYXlvdXRUaXRsZVR5cG9ncmFwaHl7bWF4LWhlaWdodDo1LjZyZW19QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U2hlbGZIZWFkZXJMYXlvdXRUaXRsZVR5cG9ncmFwaHl7bWF4LWhlaWdodDo1LjJyZW19fS55dFNoZWxmSGVhZGVyTGF5b3V0U21hbGxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjUuMnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRTaGVsZkhlYWRlckxheW91dFNtYWxsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRTaGVsZkhlYWRlckxheW91dFNtYWxsVGl0bGV7bWF4LWhlaWdodDo1LjJyZW19Lnl0U2hlbGZIZWFkZXJMYXlvdXREZXRhaWx7bWFyZ2luLWxlZnQ6MTJweDtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6Mi4ycmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNoZWxmSGVhZGVyTGF5b3V0RGV0YWlsey13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0U2hlbGZIZWFkZXJMYXlvdXREZXRhaWx7bWF4LWhlaWdodDoyLjJyZW19QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U2hlbGZIZWFkZXJMYXlvdXREZXRhaWx7ZGlzcGxheTpub25lfX0ueXRTaGVsZkhlYWRlckxheW91dFN1YmxhYmVse2NvbG9yOiM2MDYwNjA7cGFkZGluZy10b3A6MnB4fS55dFNoZWxmSGVhZGVyTGF5b3V0U3VibGFiZWxUeXBvZ3JhcGh5e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6My42cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNoZWxmSGVhZGVyTGF5b3V0U3VibGFiZWxUeXBvZ3JhcGh5ey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0U2hlbGZIZWFkZXJMYXlvdXRTdWJsYWJlbFR5cG9ncmFwaHl7bWF4LWhlaWdodDozLjZyZW19Lnl0U2hlbGZIZWFkZXJMYXlvdXRTdXBlcmxhYmVse2NvbG9yOiM2MDYwNjA7cGFkZGluZy1ib3R0b206MnB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6My42cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNoZWxmSGVhZGVyTGF5b3V0U3VwZXJsYWJlbHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dFNoZWxmSGVhZGVyTGF5b3V0U3VwZXJsYWJlbHttYXgtaGVpZ2h0OjMuNnJlbX0ueXRTaGVsZkhlYWRlckxheW91dFRyYWlsaW5nQWN0aW9uc3ttYXJnaW4tbGVmdDoxMnB4fS55dFNoZWxmSGVhZGVyTGF5b3V0SXNPdmVybGF5e2NvbG9yOmluaGVyaXR9Lnl0U2hlbGZIZWFkZXJMYXlvdXRJc092ZXJsYXkgLnl0U2hlbGZIZWFkZXJMYXlvdXRUaXRsZXtjb2xvcjojZmZmfS55dFNoZWxmSGVhZGVyTGF5b3V0SXNPdmVybGF5IC55dFNoZWxmSGVhZGVyTGF5b3V0U3VibGFiZWx7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpfS55dFNoZWxmSGVhZGVyTGF5b3V0VGFwcGFibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0U2hlbGZIZWFkZXJMYXlvdXRIb3ZlcmFibGU6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpfS55dFNoZWxmSGVhZGVyTGF5b3V0Qm90dG9tQWNjZXNzb3J5e21hcmdpbi10b3A6OHB4fS55dE1hcnF1ZWVTY3JvbGx7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dE1hcnF1ZWVTY3JvbGxIb3N0e2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3c6aGlkZGVufS55dE1hcnF1ZWVTY3JvbGxBbmltYXRpb25FbmFibGVke2FuaW1hdGlvbjpzY3JvbGxpbmctcGFyZW50IDE2cyBsaW5lYXIgM3MgaW5maW5pdGU7YW5pbWF0aW9uLWZpbGwtbW9kZTpiYWNrd2FyZHM7YW5pbWF0aW9uLW5hbWU6c2Nyb2xsaW5nLXBhcmVudH0ueXRNYXJxdWVlU2Nyb2xsSW5uZXJDb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbW96LWlubGluZS1ib3g7ZGlzcGxheTppbmxpbmUtZmxleH1Aa2V5ZnJhbWVzIHNjcm9sbGluZy1wYXJlbnR7dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tbWFycXVlZS10cmFuc2xhdGUsMCkpfX0ueXRNYXJxdWVlU2Nyb2xsRHVwbGljYXRlU3RyaW5nLC55dE1hcnF1ZWVTY3JvbGxQcmltYXJ5U3RyaW5ne2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRNYXJxdWVlU2Nyb2xsSG9zdExhcmdlIC55dE1hcnF1ZWVTY3JvbGxEdXBsaWNhdGVTdHJpbmcsLnl0TWFycXVlZVNjcm9sbEhvc3RMYXJnZSAueXRNYXJxdWVlU2Nyb2xsUHJpbWFyeVN0cmluZ3tmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRSZWVsU291bmRNZXRhZGF0YVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja31AbWVkaWEgKG1heC13aWR0aDoyOTkuOXB4KXsueXRSZWVsU291bmRNZXRhZGF0YVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpub25lfX0ueXRSZWVsU291bmRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Y3Vyc29yOnBvaW50ZXJ9Lnl0UmVlbFNvdW5kTWV0YWRhdGFWaWV3TW9kZWxJY29ue21hcmdpbi1yaWdodDo0cHg7Y29sb3I6dmFyKC0tcmVlbC1tZXRhZGF0YS1jb2xvciwjZmZmKTtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dFJlZWxTb3VuZE1ldGFkYXRhVmlld01vZGVsTWFycXVlZUNvbnRhaW5lcntjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yLCNmZmYpO292ZXJmbG93OmhpZGRlbjstbW96LWJveC1mbGV4OjE7ZmxleDoxO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRSZWVsU291bmRNZXRhZGF0YVZpZXdNb2RlbEhvc3RMYXJnZXtkaXNwbGF5OmJsb2NrfS55dFJlZWxTb3VuZE1ldGFkYXRhVmlld01vZGVsSG9zdExhcmdlIC55dFJlZWxTb3VuZE1ldGFkYXRhVmlld01vZGVsSWNvbnt3aWR0aDoyMnB4O2hlaWdodDoyMnB4O21hcmdpbi1yaWdodDo4cHh9Lnl0U21hcnRJbWF0aW9uc0NvbnRlbnR7ZGlzcGxheTpibG9ja30ueXRTbWFydEltYXRpb25zRXhwZXJpbWVudEVuYWJsZWR7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9ja30ueXRTbWFydEltYXRpb25zRXhwZXJpbWVudEVuYWJsZWQgLnl0U21hcnRJbWF0aW9uc0NvbnRlbnR7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2JvcmRlci1yYWRpdXM6MThweH0ueXRTbWFydEltYXRpb25zQm9yZGVye3otaW5kZXg6MTtib3JkZXItcmFkaXVzOjIycHg7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVuO3RvcDotM3B4O2xlZnQ6LTNweDtib3R0b206LTNweDtyaWdodDotM3B4fS55dFNtYXJ0SW1hdGlvbnNCb3JkZXJHcmFkaWVudHtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC41cyBlYXNlfS55dFNtYXJ0SW1hdGlvbnNBY3RpdmVCb3JkZXIgLnl0U21hcnRJbWF0aW9uc0JvcmRlckdyYWRpZW50e29wYWNpdHk6MX0ueXRTbWFydEltYXRpb25zQWN0aXZlQmFja2dyb3VuZCAueXRTbWFydEltYXRpb25zQ29udGVudHtiYWNrZ3JvdW5kOiNmZmZ9Lnl0U21hcnRJbWF0aW9uc0VuYWJsZU1hc2tpbmcgLnl0U21hcnRJbWF0aW9uc0JvcmRlcntwYWRkaW5nOjNweDstd2Via2l0LW1hc2s6bGluZWFyLWdyYWRpZW50KCNmZmYgMCAwKSBjb250ZW50LWJveCxsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApO21hc2stY29tcG9zaXRlOmV4Y2x1ZGV9Lnl0U21hcnRJbWF0aW9uc0VuYWJsZU1hc2tpbmcgLnl0U21hcnRJbWF0aW9uc0JvcmRlckdyYWRpZW50e3dpZHRoOmNhbGMoMTAwJSArIDEycHgpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTNweCwtM3B4KX0ueXRTbWFydEltYXRpb25zRW5hYmxlTWFza2luZyAueXRTbWFydEltYXRpb25zQ29udGVudHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS55dFNtYXJ0SW1hdGlvbnNJbnZpc2libGUgLnl0U21hcnRJbWF0aW9uc0JvcmRlciwueXRTbWFydEltYXRpb25zSW52aXNpYmxlIC55dFNtYXJ0SW1hdGlvbnNCb3JkZXJHcmFkaWVudHtvcGFjaXR5Oi4wMDF9Lnl0RGlzbGlrZUJ1dHRvblZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRMaWtlQnV0dG9uVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dFN3aXRjaEJ1dHRvblZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRTd2l0Y2hCdXR0b25WaWV3TW9kZWxCdXR0b257cGFkZGluZzowO2JvcmRlcjpub25lO291dGxpbmU6bm9uZTtmb250OmluaGVyaXQ7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDtjb2xvcjppbmhlcml0O2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9Lnl0U3dpdGNoQnV0dG9uVmlld01vZGVsVGFwcGFibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0U3dpdGNoU2hhcGVIb3N0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjQwcHg7aGVpZ2h0OjI0cHg7ZmxleC1zaHJpbms6MH0ueXRTd2l0Y2hTaGFwZVRyYWNre3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjQwcHg7aGVpZ2h0OjI0cHg7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQtY29sb3I6IzkwOTA5MDt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1c30ueXRTd2l0Y2hTaGFwZVRyYWNrQWN0aXZle2JhY2tncm91bmQtY29sb3I6IzBmMGYwZjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1c30ueXRTd2l0Y2hTaGFwZVRyYWNrRGlzYWJsZWR7b3BhY2l0eTouM30ueXRTd2l0Y2hTaGFwZUtub2J7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZC1jb2xvcjojZmZmO3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7dG9wOjJweDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgycHgpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xNXN9Lnl0U3dpdGNoU2hhcGVLbm9iQWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVYKDE4cHgpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xNXN9QG1lZGlhIChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3dpdGNoU2hhcGVUcmFja3tvdXRsaW5lOjFweCBzb2xpZCAjOTA5MDkwfS55dFN3aXRjaFNoYXBlVHJhY2tBY3RpdmV7b3V0bGluZToycHggc29saWQgIzAzMDMwMztiYWNrZ3JvdW5kLWNvbG9yOkJ1dHRvblRleHR9Lnl0U3dpdGNoU2hhcGVLbm9ie291dGxpbmU6MXB4IHNvbGlkICMwMzAzMDN9fS55dFNwZWNBdmF0YXJTaGFwZUhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRTcGVjQXZhdGFyU2hhcGVCdXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOm5vbmV9Lnl0U3BlY0F2YXRhclNoYXBlVGFwcGFibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uVGlueXt3aWR0aDoxNnB4O2hlaWdodDoxNnB4fS55dFNwZWNBdmF0YXJTaGFwZUJ1dHRvbkV4dHJhU21hbGx7d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRTcGVjQXZhdGFyU2hhcGVCdXR0b25TbWFsbHt3aWR0aDozMnB4O2hlaWdodDozMnB4fS55dFNwZWNBdmF0YXJTaGFwZUJ1dHRvbk1lZGl1bXt3aWR0aDozNnB4O2hlaWdodDozNnB4fS55dFNwZWNBdmF0YXJTaGFwZUJ1dHRvbjQ4e3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uTGFyZ2V7d2lkdGg6NTZweDtoZWlnaHQ6NTZweH0ueXRTcGVjQXZhdGFyU2hhcGVCdXR0b25FeHRyYUxhcmdle3dpZHRoOjcycHg7aGVpZ2h0OjcycHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uRXh0cmFFeHRyYUxhcmdle3dpZHRoOjEyMHB4O2hlaWdodDoxMjBweH0ueXRTcGVjQXZhdGFyU2hhcGVCdXR0b25HaWFudHt3aWR0aDoxNjBweDtoZWlnaHQ6MTYwcHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uUmVzcG9uc2l2ZXt3aWR0aDoxMjhweDtoZWlnaHQ6MTI4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uSW5DbHVzdGVyU2l6ZTE4e3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uSW5DbHVzdGVyU2l6ZTIwe3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uSW5DbHVzdGVyU2l6ZTIye3dpZHRoOjIycHg7aGVpZ2h0OjIycHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uSW5DbHVzdGVyU2l6ZTI0e3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHh9Lnl0U3BlY0F2YXRhclNoYXBlSW1hZ2V7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0U3BlY0F2YXRhclNoYXBlQWRzQXBwe2JvcmRlci1yYWRpdXM6MjAlfS55dFNwZWNBdmF0YXJTaGFwZUluc2NyaWJlZFNxdWFyZXt0cmFuc2Zvcm06c2NhbGUoMS40MTQyMTM1NjI0KX0ueXRTcGVjQXZhdGFyU2hhcGVJbWFnZU92ZXJsYXlze292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MH0ueXRTcGVjQXZhdGFyU2hhcGVTdG9yaWVzV2F0Y2hlZHtib3JkZXI6MnB4IHNvbGlkICM5MDkwOTA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlfS55dFNwZWNBdmF0YXJTaGFwZVN0b3JpZXNVbndhdGNoZWR7Ym9yZGVyOjJweCBzb2xpZCAjZTEwMDJkO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItcmFkaXVzOjUwJX0ueXRTcGVjQXZhdGFyU2hhcGVMaXZlUmluZ3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZVJpbmc6YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo1MCU7cGFkZGluZzoycHg7cG9zaXRpb246YWJzb2x1dGU7Y29udGVudDoiIjtpbnNldDotNHB4O21hc2s6bGluZWFyLWdyYWRpZW50KCNmZmYgMCAwKSBjb250ZW50LWJveCxsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApOy13ZWJraXQtbWFzazpsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApIGNvbnRlbnQtYm94LGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCk7bWFzay1jb21wb3NpdGU6ZXhjbHVkZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byB0b3AgcmlnaHQsI2UxMDAyZCA2MCUsI2UwMTM3OCA4NSUpfS55dFNwZWNBdmF0YXJTaGFwZU9uU2VsZWN0Qm9yZGVye2JvcmRlcjoxcHggc29saWQgIzBmMGYwZjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0U3BlY0F2YXRhclNoYXBlQmFja2dyb3VuZEJvcmRlcntib3JkZXI6MnB4IHNvbGlkICNmZmY7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlfS55dFNwZWNBdmF0YXJTaGFwZUJhY2tncm91bmRCb3JkZXJUaGlue2JvcmRlcjoxcHggc29saWQgI2ZmZjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0U3BlY0F2YXRhclNoYXBlV2hpdGVCb3JkZXJ7Ym9yZGVyOjJweCBzb2xpZCAjZmZmO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItcmFkaXVzOjUwJX0ueXRTcGVjQXZhdGFyU2hhcGVXaGl0ZUJvcmRlclRoaW57Ym9yZGVyLXdpZHRoOjFweH0ueXRTcGVjQXZhdGFyU2hhcGVJc092ZXJsYXkueXRTcGVjQXZhdGFyU2hhcGVCYWNrZ3JvdW5kQm9yZGVyLC55dFNwZWNBdmF0YXJTaGFwZUlzT3ZlcmxheS55dFNwZWNBdmF0YXJTaGFwZUJhY2tncm91bmRCb3JkZXJUaGlue2JvcmRlci1jb2xvcjojZmZmfS55dFNwZWNBdmF0YXJTaGFwZUxpdmVCYWRnZVRleHR7cGFkZGluZzowIDJweDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7dmlzaWJpbGl0eTpoaWRkZW47Y29sb3I6I2ZmZjt6LWluZGV4OjE7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxLjZyZW07Zm9udC13ZWlnaHQ6NTAwO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRTcGVjQXZhdGFyU2hhcGVMaXZlQmFkZ2VJY29ue21heC13aWR0aDoxNnB4O3BhZGRpbmc6MCAycHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2NvbG9yOiNmZmZ9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZUJhZGdle2JvcmRlci1yYWRpdXM6NHB4O3RleHQtYWxpZ246Y2VudGVyO2JhY2tncm91bmQtY29sb3I6I2UxMDAyZDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOi00cHh9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZUJhZGdlU21hbGx7bWF4LXdpZHRoOjMycHg7aGVpZ2h0OjEzcHh9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZUJhZGdlTWVkaXVte21heC13aWR0aDozNnB4O2hlaWdodDoxNHB4fS55dFNwZWNBdmF0YXJTaGFwZUxpdmVCYWRnZUxhcmdle21heC13aWR0aDo1MnB4O2hlaWdodDoxNHB4fS55dFNwZWNBdmF0YXJTaGFwZUxpdmVCYWRnZUV4dHJhTGFyZ2V7Ym9yZGVyLXJhZGl1czo0cHg7bWF4LXdpZHRoOjY4cHg7aGVpZ2h0OjE2cHh9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZUJhZGdlRXh0cmFMYXJnZSAueXRTcGVjQXZhdGFyU2hhcGVMaXZlQmFkZ2VJY29ue21heC13aWR0aDoyNHB4O3BhZGRpbmc6MCA0cHh9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZUJhZGdlRXh0cmFMYXJnZSAueXRTcGVjQXZhdGFyU2hhcGVMaXZlQmFkZ2VUZXh0e3BhZGRpbmc6MCA0cHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo1MDB9Lnl0U3BlY0F2YXRhclNoYXBlTmV3Q29udGVudHtiYWNrZ3JvdW5kLWNvbG9yOiMwNjVmZDR9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZURvdHtiYWNrZ3JvdW5kLWNvbG9yOiNlMTAwMmR9Lnl0U3BlY0F2YXRhclNoYXBlU3F1YXJle2JvcmRlci1yYWRpdXM6MTJweDtvdmVyZmxvdzpoaWRkZW59Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y29sb3I6IzAzMDMwM30ueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb25Db250YWluZXJUaW55e3JpZ2h0Oi04cHg7dG9wOjA7Ym90dG9tOjA7bWFyZ2luOmF1dG87d2lkdGg6MTZweDtoZWlnaHQ6MTZweH0ueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb25Db250YWluZXJUaW55IC55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbnt3aWR0aDoxMnB4O2hlaWdodDoxMnB4fS55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbkNvbnRhaW5lckV4dHJhU21hbGx7cmlnaHQ6LThweDt0b3A6MDtib3R0b206MDttYXJnaW46YXV0bzt3aWR0aDoxNnB4O2hlaWdodDoxNnB4fS55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbkNvbnRhaW5lckV4dHJhU21hbGwgLnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29ue3dpZHRoOjEycHg7aGVpZ2h0OjEycHh9Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVyU21hbGx7Ym90dG9tOi0ycHg7cmlnaHQ6LTJweDt3aWR0aDoxNnB4O2hlaWdodDoxNnB4fS55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbkNvbnRhaW5lclNtYWxsIC55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbnt3aWR0aDoxMnB4O2hlaWdodDoxMnB4fS55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbkNvbnRhaW5lck1lZGl1bXtib3R0b206LTJweDtyaWdodDotMnB4O3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHh9Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVyTWVkaXVtIC55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbnt3aWR0aDoxMnB4O2hlaWdodDoxMnB4fS55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbkNvbnRhaW5lcjQ4e2JvdHRvbTotMnB4O3JpZ2h0Oi0ycHg7d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb25Db250YWluZXI0OCAueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb257d2lkdGg6MjBweDtoZWlnaHQ6MjBweH0ueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb25Db250YWluZXJMYXJnZXtib3R0b206LTJweDtyaWdodDotMnB4O3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHh9Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVyTGFyZ2UgLnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29ue3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHh9Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVyRXh0cmFMYXJnZXtib3R0b206LTJweDtyaWdodDotMnB4O3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVyRXh0cmFMYXJnZSAueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb257d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb25Db250YWluZXJFeHRyYUV4dHJhTGFyZ2V7Ym90dG9tOi00cHg7cmlnaHQ6LTRweDt3aWR0aDo0NHB4O2hlaWdodDo0NHB4fS55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbkNvbnRhaW5lckV4dHJhRXh0cmFMYXJnZSAueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb257d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb25Db250YWluZXJHaWFudHtib3R0b206LTRweDtyaWdodDotNHB4O3dpZHRoOjU2cHg7aGVpZ2h0OjU2cHh9Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVyR2lhbnQgLnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29ue3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZVRpbnl7bWFyZ2luOjJweDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZVRpbnkgLnl0U3BlY0F2YXRhclNoYXBlTGl2ZURvdCwueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplVGlueSAueXRTcGVjQXZhdGFyU2hhcGVOZXdDb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlcjoycHggc29saWQgI2ZmZjtib3JkZXItcmFkaXVzOjUwJTtib3R0b206LTEuNjY0cHg7cmlnaHQ6LTEuNjY0cHg7d2lkdGg6OHB4O2hlaWdodDo4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZVRpbnkueXRTcGVjQXZhdGFyU2hhcGVOb01hcmdpbnttYXJnaW46MH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplRXh0cmFTbWFsbHttYXJnaW46MnB4O3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplRXh0cmFTbWFsbCAueXRTcGVjQXZhdGFyU2hhcGVMaXZlRG90LC55dFNwZWNBdmF0YXJTaGFwZUF2YXRhclNpemVFeHRyYVNtYWxsIC55dFNwZWNBdmF0YXJTaGFwZU5ld0NvbnRlbnR7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyOjJweCBzb2xpZCAjZmZmO2JvcmRlci1yYWRpdXM6NTAlO2JvdHRvbTotMS40OTZweDtyaWdodDotMS40OTZweDt3aWR0aDoxMHB4O2hlaWdodDoxMHB4fS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhclNpemVFeHRyYVNtYWxsLnl0U3BlY0F2YXRhclNoYXBlTm9NYXJnaW57bWFyZ2luOjB9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZVNtYWxse21hcmdpbjoycHg7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDozMnB4O2hlaWdodDozMnB4fS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhclNpemVTbWFsbCAueXRTcGVjQXZhdGFyU2hhcGVMaXZlRG90LC55dFNwZWNBdmF0YXJTaGFwZUF2YXRhclNpemVTbWFsbCAueXRTcGVjQXZhdGFyU2hhcGVOZXdDb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlcjoycHggc29saWQgI2ZmZjtib3JkZXItcmFkaXVzOjUwJTtib3R0b206LS44MjhweDtyaWdodDotLjgyOHB4O3dpZHRoOjExcHg7aGVpZ2h0OjExcHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZVNtYWxsLnl0U3BlY0F2YXRhclNoYXBlTm9NYXJnaW57bWFyZ2luOjB9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZU1lZGl1bXttYXJnaW46MnB4O3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplTWVkaXVtIC55dFNwZWNBdmF0YXJTaGFwZUxpdmVEb3QsLnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZU1lZGl1bSAueXRTcGVjQXZhdGFyU2hhcGVOZXdDb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlcjoycHggc29saWQgI2ZmZjtib3JkZXItcmFkaXVzOjUwJTtib3R0b206LS43NDRweDtyaWdodDotLjc0NHB4O3dpZHRoOjEycHg7aGVpZ2h0OjEycHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZU1lZGl1bS55dFNwZWNBdmF0YXJTaGFwZU5vTWFyZ2lue21hcmdpbjowfS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhclNpemU0OHttYXJnaW46MnB4O3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6NDhweDtoZWlnaHQ6NDhweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplNDggLnl0U3BlY0F2YXRhclNoYXBlTGl2ZURvdCwueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplNDggLnl0U3BlY0F2YXRhclNoYXBlTmV3Q29udGVudHtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXI6MnB4IHNvbGlkICNmZmY7Ym9yZGVyLXJhZGl1czo1MCU7Ym90dG9tOi41MDhweDtyaWdodDouNTA4cHg7d2lkdGg6MTNweDtoZWlnaHQ6MTNweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplNDgueXRTcGVjQXZhdGFyU2hhcGVOb01hcmdpbnttYXJnaW46MH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplTGFyZ2V7bWFyZ2luOjJweDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjU2cHg7aGVpZ2h0OjU2cHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUxhcmdlIC55dFNwZWNBdmF0YXJTaGFwZUxpdmVEb3QsLnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUxhcmdlIC55dFNwZWNBdmF0YXJTaGFwZU5ld0NvbnRlbnR7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyOjJweCBzb2xpZCAjZmZmO2JvcmRlci1yYWRpdXM6NTAlO2JvdHRvbTouNjc2cHg7cmlnaHQ6LjY3NnB4O3dpZHRoOjE1cHg7aGVpZ2h0OjE1cHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUxhcmdlLnl0U3BlY0F2YXRhclNoYXBlTm9NYXJnaW57bWFyZ2luOjB9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUV4dHJhTGFyZ2V7bWFyZ2luOjJweDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjcycHg7aGVpZ2h0OjcycHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUV4dHJhTGFyZ2UgLnl0U3BlY0F2YXRhclNoYXBlTGl2ZURvdCwueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplRXh0cmFMYXJnZSAueXRTcGVjQXZhdGFyU2hhcGVOZXdDb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlcjoycHggc29saWQgI2ZmZjtib3JkZXItcmFkaXVzOjUwJTtib3R0b206MS41MTJweDtyaWdodDoxLjUxMnB4O3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUV4dHJhTGFyZ2UueXRTcGVjQXZhdGFyU2hhcGVOb01hcmdpbnttYXJnaW46MH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplRXh0cmFFeHRyYUxhcmdle21hcmdpbjoycHg7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMjBweDtoZWlnaHQ6MTIwcHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUV4dHJhRXh0cmFMYXJnZSAueXRTcGVjQXZhdGFyU2hhcGVMaXZlRG90LC55dFNwZWNBdmF0YXJTaGFwZUF2YXRhclNpemVFeHRyYUV4dHJhTGFyZ2UgLnl0U3BlY0F2YXRhclNoYXBlTmV3Q29udGVudHtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXI6MnB4IHNvbGlkICNmZmY7Ym9yZGVyLXJhZGl1czo1MCU7Ym90dG9tOjguNTJweDtyaWdodDo4LjUycHg7d2lkdGg6MThweDtoZWlnaHQ6MThweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplRXh0cmFFeHRyYUxhcmdlLnl0U3BlY0F2YXRhclNoYXBlTm9NYXJnaW57bWFyZ2luOjB9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUdpYW50e21hcmdpbjoycHg7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxNjBweDtoZWlnaHQ6MTYwcHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUdpYW50IC55dFNwZWNBdmF0YXJTaGFwZUxpdmVEb3QsLnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUdpYW50IC55dFNwZWNBdmF0YXJTaGFwZU5ld0NvbnRlbnR7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyOjJweCBzb2xpZCAjZmZmO2JvcmRlci1yYWRpdXM6NTAlO2JvdHRvbToxNC4zNnB4O3JpZ2h0OjE0LjM2cHg7d2lkdGg6MThweDtoZWlnaHQ6MThweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplR2lhbnQueXRTcGVjQXZhdGFyU2hhcGVOb01hcmdpbnttYXJnaW46MH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplUmVzcG9uc2l2ZXttYXJnaW46MnB4O3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTI4cHg7aGVpZ2h0OjEyOHB4O21heC13aWR0aDoxNDRweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplUmVzcG9uc2l2ZS55dFNwZWNBdmF0YXJTaGFwZU5vTWFyZ2lue21hcmdpbjowfS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhckluQ2x1c3RlclNpemUxOHt3aWR0aDoxOHB4O2hlaWdodDoxOHB4fS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhckluQ2x1c3RlclNpemUyMHt3aWR0aDoyMHB4O2hlaWdodDoyMHB4fS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhckluQ2x1c3RlclNpemUyMnt3aWR0aDoyMnB4O2hlaWdodDoyMnB4fS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhckluQ2x1c3RlclNpemUyNHt3aWR0aDoyNHB4O2hlaWdodDoyNHB4fS55dGZjWW91dGhCYXNpY1NlY3Rpb25IZWFkZXJWaWV3TW9kZWxIb3N0ey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cGFkZGluZzoxMnB4fS55dGZjWW91dGhCYXNpY1NlY3Rpb25IZWFkZXJWaWV3TW9kZWxEaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmd7cGFkZGluZzoxMnB4IDB9Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbEJhZGdle2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxLjZyZW07Zm9udC13ZWlnaHQ6NDAwfS55dGZjWW91dGhCYXNpY1NlY3Rpb25IZWFkZXJWaWV3TW9kZWxEZXNjcmlwdGlvbntjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRmY1lvdXRoQmFzaWNTZWN0aW9uSGVhZGVyVmlld01vZGVsQ2xpY2thYmxlRGVzY3JpcHRpb257Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo1MDB9Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbERldGFpbHN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21hcmdpbjo0cHh9Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbEltYWdle2hlaWdodDo3MnB4O3dpZHRoOjcycHh9Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbExlYWRpbmd7ZmxleC1zaHJpbms6MDttYXJnaW46OHB4IDEycHggOHB4IDB9Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbE1ldGFkYXRhe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NHB4fS55dGZjWW91dGhCYXNpY1NlY3Rpb25IZWFkZXJWaWV3TW9kZWxTdWJ0aXRsZXtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MS42cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRmY1lvdXRoQmFzaWNTZWN0aW9uSGVhZGVyVmlld01vZGVsVGl0bGV7Y29sb3I6IzAzMDMwMzttYXJnaW46MDtwYWRkaW5nOjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS44cmVtO2xpbmUtaGVpZ2h0OjIuNnJlbTtmb250LXdlaWdodDo3MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbFRpdGxle21heC1oZWlnaHQ6NS4ycmVtfS55dGZjWW91dGhTZWN0aW9uQm9keVZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dGZjWW91dGhTZWN0aW9uQm9keVZpZXdNb2RlbEF2YXRhclN0YWNre21hcmdpbjowIGF1dG99Lnl0ZmNZb3V0aFNlY3Rpb25Cb2R5Vmlld01vZGVsSXRlbXtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtib3JkZXItcmFkaXVzOjEycHh9Lnl0ZmNZb3V0aFNlY3Rpb25Cb2R5Vmlld01vZGVsRGVzY3JpcHRpb257Y29sb3I6IzYwNjA2MDtwYWRkaW5nOjEycHggMTJweCAxNnB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRDb250aW51YXRpb25JdGVtVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dENoYW5uZWxBdHRyaWJ1dGlvblZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztjb2xvcjojZmZmO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDQwLDQwLDQwLDAuNik7cGFkZGluZzoxNnB4Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4xKTtib3JkZXItcmFkaXVzOjEycHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENoYW5uZWxBdHRyaWJ1dGlvblZpZXdNb2RlbFVwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0Q2hhbm5lbEF0dHJpYnV0aW9uVmlld01vZGVsQ2hhbm5lbFRpdGxley1tb3otcGFkZGluZy1zdGFydDoxMnB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjEycHh9Lnl0Q2hhbm5lbEF0dHJpYnV0aW9uVmlld01vZGVsQm90dG9te3BhZGRpbmctdG9wOjE2cHh9Lnl0SW5mb1BhbmVsT3ZlcnZpZXdWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNil9Lnl0SW5mb1BhbmVsT3ZlcnZpZXdWaWV3TW9kZWxIb3N0V2Vie2JvcmRlci1yYWRpdXM6MCAwIDEycHggMTJweH0ueXRJbmZvUGFuZWxPdmVydmlld1ZpZXdNb2RlbEhvc3RFeHRyYWN0T3ZlcmxheXttYXgtd2lkdGg6NDgwcHg7Y29sb3I6dmFyKC0tcmVlbC1tZXRhZGF0YS1jb2xvciwjZmZmKTtiYWNrZ3JvdW5kOiNkZWYxZmY7Ym9yZGVyLXJhZGl1czoxMnB4O21hcmdpbjowIDhweH0ueXRJbmZvUGFuZWxPdmVydmlld1ZpZXdNb2RlbEhvc3RCdXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6MTZweH0ueXRJbmZvUGFuZWxPdmVydmlld1ZpZXdNb2RlbEZvcndhcmRBY3Rpb25JY29ue21hcmdpbi1sZWZ0OmF1dG99Lnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjstbW96LWJveC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmQ7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJX0ueXRSZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbEhvcml6b250YWxDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy1tb3otYm94LWFsaWduOmVuZDthbGlnbi1pdGVtczpmbGV4LWVuZDt3aWR0aDoxMDAlfS55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsTWV0YWRhdGFDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21pbi13aWR0aDowO3dpZHRoOjEwMCU7cG9pbnRlci1ldmVudHM6YXV0bztiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgwZGVnLHJnYmEoMCwwLDAsLjQpLHRyYW5zcGFyZW50KTt6LWluZGV4OjE7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMXB4IDRweCByZ2JhKDAsMCwwLDAuMykpfS55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsTWV0YWRhdGFDb250YWluZXJSb3VuZGVke2JvcmRlci1yYWRpdXM6MCAwIDEycHggMTJweH0ueXRSZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbE1ldGFkYXRhQ29udGFpbmVyTWV0YXBhbmVse21pbi13aWR0aDowO3BhZGRpbmc6MCAwIDE2cHggMTZweH0ueXRSZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbEFjdGlvbnNDb250YWluZXJ7cG9pbnRlci1ldmVudHM6YXV0bztkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmQ7aGVpZ2h0OjEwMCU7cGFkZGluZzowIDEycHggOHB4O2ZpbHRlcjpkcm9wLXNoYWRvdygwIDFweCA0cHggcmdiYSgwLDAsMCwwLjMpKX0ueXRSZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbEhvc3RNd2ViIC55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsQWN0aW9uc0NvbnRhaW5lcntwYWRkaW5nOjAgNHB4IDE2cHggNHB4O2ZpbHRlcjp1bnNldH0ueXRSZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbEhvc3RNd2ViIC55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsTWV0YWRhdGFDb250YWluZXJ7YmFja2dyb3VuZDpub25lfS55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsSG9zdEhpZGV7dmlzaWJpbGl0eTpoaWRkZW59Lnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxIb3N0RXh0cmFjdE92ZXJsYXkgLnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxNZXRhZGF0YUNvbnRhaW5lcnt3aWR0aDpjYWxjKCgxMDAlIC0gbWF4KHZhcigtLXl0ZC1zaG9ydHMtcGxheWVyLXdpZHRoKSwgMzE1cHgpKS8yKTttYXJnaW4tcmlnaHQ6bWF4KHZhcigtLXl0ZC1zaG9ydHMtcGxheWVyLXdpZHRoKSwzMTVweCk7YmFja2dyb3VuZC1pbWFnZTpub25lO2ZpbHRlcjp1bnNldDtib3JkZXItcmFkaXVzOjB9Lnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxIb3N0RXh0cmFjdE92ZXJsYXkgLnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxBY3Rpb25zQ29udGFpbmVyey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MX0ueXRSZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbEhvc3RFeHRyYWN0QWN0aW9uQmFyIC55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsTWV0YWRhdGFDb250YWluZXJNZXRhcGFuZWx7cGFkZGluZy1yaWdodDoxNnB4fS55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsSG9zdEV4dHJhY3RBY3Rpb25CYXIgLnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxBY3Rpb25zQ29udGFpbmVye3BhZGRpbmctYm90dG9tOjA7ZmlsdGVyOnVuc2V0fS55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsSG9zdDpub3QoLnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxIb3N0RXh0cmFjdE92ZXJsYXkpW3Nob3ctc2NydWJiZXJdIC55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsTWV0YWRhdGFDb250YWluZXJ7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuNXN9Lnl0ZnpGYW56b25lU2NoZWR1bGVkSW5mb1ZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzozMnB4IDEycHggMjBweH0ueXRmekZhbnpvbmVTY2hlZHVsZWRJbmZvVmlld01vZGVsQXZhdGFye21hcmdpbi1ib3R0b206OHB4fS55dGZ6RmFuem9uZVNjaGVkdWxlZEluZm9WaWV3TW9kZWxUaXRsZXt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW4tYm90dG9tOjEwcHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MnJlbTtsaW5lLWhlaWdodDoyLjhyZW07Zm9udC13ZWlnaHQ6NzAwfS55dGZ6RmFuem9uZVNjaGVkdWxlZEluZm9WaWV3TW9kZWxEZXNjcmlwdGlvbntjb2xvcjojNjA2MDYwO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1hbGlnbjpzdGFydDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2JvcmRlci1yYWRpdXM6aW5oZXJpdH0uaW50ZXJzdGl0aWFsVmlld01vZGVsRXJyb3JTY3JlZW5SZWRlc2lnbkRpc2FibGVke3BhZGRpbmc6MTZweH1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsuaW50ZXJzdGl0aWFsVmlld01vZGVsRXJyb3JTY3JlZW5SZWRlc2lnbkRpc2FibGVke292ZXJmbG93LXk6c2Nyb2xsfX0uaW50ZXJzdGl0aWFsVmlld01vZGVsRXJyb3JTY3JlZW5SZWRlc2lnbkVuYWJsZWR7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtjb250YWluZXItdHlwZTpzaXplfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxNb2RlbENvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO21pbi1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZC1jb2xvcjojMGYwZjBmOy1tb3otcGFkZGluZy1zdGFydDoxMiU7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MTIlOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3gtc2hhZG93OjAgMCAwIDFweCByZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLXJhZGl1czppbmhlcml0fS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxNb2RlbENvbnRhaW5lcjpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1jb2xvcjojMGYwZjBmO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLHRyYW5zcGFyZW50IDAsdHJhbnNwYXJlbnQgMzUlLHJnYmEoMTcwLDksMTcwLC4yKSAwLHJnYmEoMTY5LDAsMjU1LC4yKSA4NCUscmdiYSgyNTQsNzAsMTYwLC4yKSk7bWFzay1pbWFnZTpyYWRpYWwtZ3JhZGllbnQoMjclIDU4JSBhdCA3NyUgNTAlLCMwZjBmMGYgMCx0cmFuc3BhcmVudCAxMDAlKX1bZGlyPXJ0bF0gLmludGVyc3RpdGlhbFZpZXdNb2RlbE1vZGVsQ29udGFpbmVyOmJlZm9yZXttYXNrLWltYWdlOnJhZGlhbC1ncmFkaWVudCgyNyUgNTglIGF0IDIzJSA1MCUsIzBmMGYwZiAwLHRyYW5zcGFyZW50IDEwMCUpfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxNb2RlbENvbnRhaW5lcjpiZWZvcmV7bWFzay1yZXBlYXQ6bm8tcmVwZWF0fS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxGbGV4SXRlbXt3aWR0aDoxMDAlO21hcmdpbjo4cHggMH0uaW50ZXJzdGl0aWFsVmlld01vZGVsTG9nb0NvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxNSU7bWluLXdpZHRoOjk2cHh9LmludGVyc3RpdGlhbFZpZXdNb2RlbExvZ29Db250YWluZXI6YmVmb3Jle2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztwYWRkaW5nLXRvcDoyMi43MjclfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMb2dvSW1hZ2V7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7aW5zZXQtaW5saW5lLXN0YXJ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvdmVyZmxvdzp2aXNpYmxlfUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpey5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMb2dvSW1hZ2V7Zm9yY2VkLWNvbG9yLWFkanVzdDpub25lOy1tcy1oaWdoLWNvbnRyYXN0LWFkanVzdDpub25lfX1AbWVkaWEgKGZvcmNlZC1jb2xvcnM6YWN0aXZlKSBhbmQgKHByZWZlcnMtY29sb3Itc2NoZW1lOmxpZ2h0KXsuaW50ZXJzdGl0aWFsVmlld01vZGVsTG9nb0ltYWdle2ZpbHRlcjppbnZlcnQoMSkgaHVlLXJvdGF0ZSgxODBkZWcpfX0uaW50ZXJzdGl0aWFsVmlld01vZGVsQnV0dG9uQ29udGFpbmVye21heC13aWR0aDo0MyU7bWFyZ2luLXRvcDo4cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC13cmFwOndyYXB9LmludGVyc3RpdGlhbFZpZXdNb2RlbEJ1dHRvbkl0ZW17d2lkdGg6YXV0b30uaW50ZXJzdGl0aWFsVmlld01vZGVsQnV0dG9uSXRlbTpub3QoOmxhc3QtY2hpbGQpey1tb3otbWFyZ2luLWVuZDo4cHg7bWFyZ2luLWlubGluZS1lbmQ6OHB4O21hcmdpbi1ib3R0b206OHB4fUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpey5pbnRlcnN0aXRpYWxWaWV3TW9kZWxCdXR0b25JdGVtIC55dFNwZWNCdXR0b25TaGFwZU5leHRIb3N0e2JvcmRlcjoxcHggc29saWQgY3VycmVudENvbG9yfX0uaW50ZXJzdGl0aWFsVmlld01vZGVsUHJpbWFyeUJ1dHRvbkl0ZW0sLmludGVyc3RpdGlhbFZpZXdNb2RlbFNlY29uZGFyeUJ1dHRvbkl0ZW17bWF4LXdpZHRoOjEwMCV9LmludGVyc3RpdGlhbFZpZXdNb2RlbFRleHRUaXRsZXtjb2xvcjojZmZmO21heC13aWR0aDo0MyU7cG9zaXRpb246cmVsYXRpdmU7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6Mi44cmVtO2xpbmUtaGVpZ2h0OjMuOHJlbTtmb250LXdlaWdodDo3MDB9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7LmludGVyc3RpdGlhbFZpZXdNb2RlbFRleHRUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH19LmludGVyc3RpdGlhbFZpZXdNb2RlbFRleHREZXNjcmlwdGlvbntjb2xvcjojNjA2MDYwO21heC13aWR0aDo0MyU7cG9zaXRpb246cmVsYXRpdmU7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo0MDB9LmludGVyc3RpdGlhbFZpZXdNb2RlbEludGVyc3RpdGlhbEljb257dGV4dC1hbGlnbjpjZW50ZXJ9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7LmludGVyc3RpdGlhbFZpZXdNb2RlbEljb25JbWFnZXt3aWR0aDoyNSU7b2JqZWN0LWZpdDpjb250YWlufX0uaW50ZXJzdGl0aWFsVmlld01vZGVsSW50ZXJzdGl0aWFsVGl0bGV7Y29sb3I6I2ZmZjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsuaW50ZXJzdGl0aWFsVmlld01vZGVsSW50ZXJzdGl0aWFsVGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MnJlbTtsaW5lLWhlaWdodDoyLjhyZW07Zm9udC13ZWlnaHQ6NzAwfX0uaW50ZXJzdGl0aWFsVmlld01vZGVsSW50ZXJzdGl0aWFsRGVzY3JpcHRpb257Y29sb3I6I2ZmZjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9LmludGVyc3RpdGlhbFZpZXdNb2RlbElsbHVzdHJhdGlvbkNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2luc2V0LWlubGluZS1lbmQ6MTIlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3dpZHRoOjMwJTttYXgtd2lkdGg6NDAwcHh9LmludGVyc3RpdGlhbFZpZXdNb2RlbElsbHVzdHJhdGlvbkltYWdle3dpZHRoOjEwMCU7aGVpZ2h0OmF1dG99QG1lZGlhIChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7LmludGVyc3RpdGlhbFZpZXdNb2RlbElsbHVzdHJhdGlvbkltYWdle2ZvcmNlZC1jb2xvci1hZGp1c3Q6bm9uZTstbXMtaGlnaC1jb250cmFzdC1hZGp1c3Q6bm9uZX19QG1lZGlhIChmb3JjZWQtY29sb3JzOmFjdGl2ZSkgYW5kIChwcmVmZXJzLWNvbG9yLXNjaGVtZTpsaWdodCl7LmludGVyc3RpdGlhbFZpZXdNb2RlbElsbHVzdHJhdGlvbkltYWdle2ZpbHRlcjppbnZlcnQoMSkgaHVlLXJvdGF0ZSgxODBkZWcpfX0uaW50ZXJzdGl0aWFsVmlld01vZGVsRXJyb3JDb2RlQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3BhZGRpbmc6NHB4IDEycHg7Ym90dG9tOjhweDtpbnNldC1pbmxpbmUtZW5kOjhweDtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMSk7Y29sb3I6I2ZmZjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9LmludGVyc3RpdGlhbFZpZXdNb2RlbExheW91dFBvcnRyYWl0IC5pbnRlcnN0aXRpYWxWaWV3TW9kZWxNb2RlbENvbnRhaW5lcnstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7cGFkZGluZy1ib3R0b206bWF4KDEyJSw0MnB4KTtwYWRkaW5nLWlubGluZToxNnB4fS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRQb3J0cmFpdCAuaW50ZXJzdGl0aWFsVmlld01vZGVsTG9nb0NvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTZweDtpbnNldC1pbmxpbmUtc3RhcnQ6MTZweH0uaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0UG9ydHJhaXQgLmludGVyc3RpdGlhbFZpZXdNb2RlbEJ1dHRvbkNvbnRhaW5lcnttYXgtd2lkdGg6MTAwJTtmbGV4LXdyYXA6d3JhcH0uaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0UG9ydHJhaXQgLmludGVyc3RpdGlhbFZpZXdNb2RlbEJ1dHRvbkl0ZW06bm90KDpsYXN0LWNoaWxkKXstbW96LW1hcmdpbi1lbmQ6MDttYXJnaW4taW5saW5lLWVuZDowO21hcmdpbi1ibG9jay1lbmQ6MTZweH0uaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0UG9ydHJhaXQgLmludGVyc3RpdGlhbFZpZXdNb2RlbFByaW1hcnlCdXR0b25JdGVtLC5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRQb3J0cmFpdCAuaW50ZXJzdGl0aWFsVmlld01vZGVsU2Vjb25kYXJ5QnV0dG9uSXRlbXt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRQb3J0cmFpdCAuaW50ZXJzdGl0aWFsVmlld01vZGVsVGV4dERlc2NyaXB0aW9uLC5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRQb3J0cmFpdCAuaW50ZXJzdGl0aWFsVmlld01vZGVsVGV4dFRpdGxle21heC13aWR0aDoxMDAlfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRQb3J0cmFpdCAuaW50ZXJzdGl0aWFsVmlld01vZGVsSWxsdXN0cmF0aW9uQ29udGFpbmVye2Rpc3BsYXk6bm9uZX0uaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0U21hbGwgLmludGVyc3RpdGlhbFZpZXdNb2RlbE1vZGVsQ29udGFpbmVye3BhZGRpbmc6MTZweH0uaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0U21hbGwgLmludGVyc3RpdGlhbFZpZXdNb2RlbEJ1dHRvbkNvbnRhaW5lcnttYXgtd2lkdGg6MTAwJX0uaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0U21hbGwgLmludGVyc3RpdGlhbFZpZXdNb2RlbFRleHRUaXRsZXttYXgtd2lkdGg6MTAwJTtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsuaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0U21hbGwgLmludGVyc3RpdGlhbFZpZXdNb2RlbFRleHRUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDB9fS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRTbWFsbCAuaW50ZXJzdGl0aWFsVmlld01vZGVsRXJyb3JDb2RlQ29udGFpbmVyLC5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRTbWFsbCAuaW50ZXJzdGl0aWFsVmlld01vZGVsSWxsdXN0cmF0aW9uQ29udGFpbmVyLC5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRTbWFsbCAuaW50ZXJzdGl0aWFsVmlld01vZGVsU2Vjb25kYXJ5QnV0dG9uSXRlbSwuaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0U21hbGwgLmludGVyc3RpdGlhbFZpZXdNb2RlbFRleHREZXNjcmlwdGlvbntkaXNwbGF5Om5vbmV9LmludGVyc3RpdGlhbFZpZXdNb2RlbExheW91dEZ1bGxXaWR0aCAuaW50ZXJzdGl0aWFsVmlld01vZGVsQnV0dG9uQ29udGFpbmVye21heC13aWR0aDo3NiV9LmludGVyc3RpdGlhbFZpZXdNb2RlbExheW91dEZ1bGxXaWR0aCAuaW50ZXJzdGl0aWFsVmlld01vZGVsVGV4dFRpdGxle21heC13aWR0aDo3NiU7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6Mi40cmVtO2xpbmUtaGVpZ2h0OjMuMnJlbTtmb250LXdlaWdodDo3MDB9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7LmludGVyc3RpdGlhbFZpZXdNb2RlbExheW91dEZ1bGxXaWR0aCAuaW50ZXJzdGl0aWFsVmlld01vZGVsVGV4dFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtO2ZvbnQtd2VpZ2h0OjcwMH19LmludGVyc3RpdGlhbFZpZXdNb2RlbExheW91dEZ1bGxXaWR0aCAuaW50ZXJzdGl0aWFsVmlld01vZGVsVGV4dERlc2NyaXB0aW9ue21heC13aWR0aDo3NiU7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxIaWRlRXJyb3JDb2RlIC5pbnRlcnN0aXRpYWxWaWV3TW9kZWxFcnJvckNvZGVDb250YWluZXIsLmludGVyc3RpdGlhbFZpZXdNb2RlbExheW91dEZ1bGxXaWR0aCAuaW50ZXJzdGl0aWFsVmlld01vZGVsSWxsdXN0cmF0aW9uQ29udGFpbmVye2Rpc3BsYXk6bm9uZX0ueXR3UGxheWVyRGlzY2xvc3VyZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0d1BsYXllckRpc2Nsb3N1cmVWaWV3TW9kZWxFbmRwb2ludHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21heC13aWR0aDo1MTZweDtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO2JvcmRlci1yYWRpdXM6NHB4O2JvcmRlci1sZWZ0OjRweCBzb2xpZCAjM2VhNmZmO3BhZGRpbmc6NnB4IDAgNnB4IDZweDt0ZXh0LWRlY29yYXRpb246bm9uZX0ueXR3UGxheWVyRGlzY2xvc3VyZVZpZXdNb2RlbEltYWdley1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmU7bWFyZ2luOjRweDtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4fS55dHdQbGF5ZXJEaXNjbG9zdXJlVmlld01vZGVsRXh0cmFjdE92ZXJsYXkgLnl0d1BsYXllckRpc2Nsb3N1cmVWaWV3TW9kZWxFbmRwb2ludHtjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yKTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSl9Lnl0d1BsYXllckRpc2Nsb3N1cmVWaWV3TW9kZWxUaXRsZXttYXJnaW46MCA0cHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dHdQbGF5ZXJEaXNjbG9zdXJlVmlld01vZGVsVGV4dHttYXJnaW46MCA0cHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDozLjZyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d1BsYXllckRpc2Nsb3N1cmVWaWV3TW9kZWxUZXh0ey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0d1BsYXllckRpc2Nsb3N1cmVWaWV3TW9kZWxUZXh0e21heC1oZWlnaHQ6My42cmVtfS55dHdQbGF5ZXJEaXNjbG9zdXJlVmlld01vZGVsRGl2aWRlcnttYXJnaW46MnB4IDRweDtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMyl9Lnl0Q29sbGFib3JhdGl2ZVBsYXlsaXN0SW52aXRlTWVzc2FnZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRDb2xsYWJvcmF0aXZlUGxheWxpc3RJbnZpdGVNZXNzYWdlVmlld01vZGVsQWNjb3VudFNlY3Rpb25IZWFkZXJUZXh0e2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dENvbGxhYm9yYXRpdmVQbGF5bGlzdEludml0ZU1lc3NhZ2VWaWV3TW9kZWxBY2NvdW50V3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwYWRkaW5nOjhweCAwOy1tb3otYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjEycHg7YWxpZ24tc2VsZjpzdHJldGNofS55dENvbGxhYm9yYXRpdmVQbGF5bGlzdEludml0ZU1lc3NhZ2VWaWV3TW9kZWxBY2NvdW50VGV4dHtjb2xvcjojMDMwMzAzO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7LW1vei1ib3gtZmxleDoxO2ZsZXg6MSAwIDA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENvbGxhYm9yYXRpdmVQbGF5bGlzdEludml0ZU1lc3NhZ2VWaWV3TW9kZWxIYW5kbGV7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRDb2xsYWJvcmF0aXZlUGxheWxpc3RJbnZpdGVNZXNzYWdlVmlld01vZGVsSW52aXRlTWVzc2FnZVdyYXBwZXJ7Y29sb3I6IzAzMDMwMzttYXJnaW4tYm90dG9tOjEycHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENvbGxhYm9yYXRpdmVQbGF5bGlzdEludml0ZU1lc3NhZ2VWaWV3TW9kZWxUZXJtc09mU2VydmljZXtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFJlZWxDYXJvdXNlbFZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7Z2FwOjRweH0ueXRSZWVsQ2Fyb3VzZWxWaWV3TW9kZWxIb3N0QnV0dG9ue21pbi13aWR0aDowfS55dFJlZWxDYXJvdXNlbFZpZXdNb2RlbEhvc3RCdXR0b24gYzMtaWNvbnt3aWR0aDppbmhlcml0O2hlaWdodDppbmhlcml0fS55dFJlZWxDYXJvdXNlbFZpZXdNb2RlbEhvc3RCdXR0b25NYXhXaWR0aHttYXgtd2lkdGg6NTAlfS55dFJlZWxNdWx0aUZvcm1hdExpbmtWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7aGVpZ2h0OjMwcHh9Lnl0UmVlbE11bHRpRm9ybWF0TGlua1ZpZXdNb2RlbEhvc3RUYWxse2hlaWdodDozNnB4fUBtZWRpYSAobWF4LXdpZHRoOjI5OS45cHgpey55dFJlZWxNdWx0aUZvcm1hdExpbmtWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6bm9uZX19Lnl0UmVlbE11bHRpRm9ybWF0TGlua1ZpZXdNb2RlbEVuZHBvaW50e3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbi10b3A6MDtkaXNwbGF5OmlubGluZS1ibG9jaztjdXJzb3I6cG9pbnRlcjt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yLCNmZmYpfS55dFJlZWxNdWx0aUZvcm1hdExpbmtWaWV3TW9kZWxMaW5re21hcmdpbi1yaWdodDo0OHB4O21hcmdpbi1ib3R0b206MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoycmVtO21heC1oZWlnaHQ6MnJlbX0ueXRSZWVsTXVsdGlGb3JtYXRMaW5rVmlld01vZGVsSWNvbnttYXJnaW4tcmlnaHQ6NnB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dFJlZWxNdWx0aUZvcm1hdExpbmtWaWV3TW9kZWxUaXRsZXt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0UmVlbE11bHRpRm9ybWF0TGlua1ZpZXdNb2RlbEhvc3RMYXJnZSwueXRSZWVsTXVsdGlGb3JtYXRMaW5rVmlld01vZGVsSG9zdExhcmdlIC55dFJlZWxNdWx0aUZvcm1hdExpbmtWaWV3TW9kZWxUYWxse2hlaWdodDp1bnNldH0ueXRSZWVsTXVsdGlGb3JtYXRMaW5rVmlld01vZGVsSG9zdExhcmdlIC55dFJlZWxNdWx0aUZvcm1hdExpbmtWaWV3TW9kZWxJY29ue3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7bWFyZ2luLXJpZ2h0OjhweH0ueXRTaG9ydHNEaXNjbG9zdXJlc1ZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRTaG9ydHNEaXNjbG9zdXJlc1ZpZXdNb2RlbFNob3J0c0Rpc2Nsb3N1cmVzVGV4dHtjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yLCNmZmYpO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbFN0YXRpY0hvc3R7ZGlzcGxheTotbW96LWlubGluZS1ib3g7ZGlzcGxheTppbmxpbmUtZmxleDtwb3NpdGlvbjpyZWxhdGl2ZTstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6MThweH1AbWVkaWEgKG1heC13aWR0aDoyOTkuOXB4KXsueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxTdGF0aWNIb3N0e2Rpc3BsYXk6bm9uZX19Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsU3RhdGljSG9zdDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxTdGF0aWNIb3N0Q29udGFpbmVye2Rpc3BsYXk6LW1vei1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7cG9zaXRpb246cmVsYXRpdmU7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjAgMTZweDtoZWlnaHQ6MzZweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjE4cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNik7Y29sb3I6I2ZmZjtjdXJzb3I6cG9pbnRlcn0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxTdGF0aWNIb3N0VGV4dFNlY3Rpb257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7dGV4dC1hbGlnbjpsZWZ0O2ZsZXgtc2hyaW5rOjE7LW1vei1wYWRkaW5nLXN0YXJ0OjhweDtwYWRkaW5nLWlubGluZS1zdGFydDo4cHh9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsU3RhdGljSG9zdFByaW1hcnlUZXh0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsU3RhdGljSG9zdFByaW1hcnlUZXh0ey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsU3RhdGljSG9zdFByaW1hcnlUZXh0e21heC1oZWlnaHQ6NHJlbX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxTdGF0aWNIb3N0TGVhZGluZ1NlY3Rpb257bWF4LXdpZHRoOjEwMCU7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxTdGF0aWNIb3N0TGVhZGluZ0ltYWdle21heC13aWR0aDoxMDAlO21heC1oZWlnaHQ6MTAwJTstbW96LXBhZGRpbmctc3RhcnQ6NHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjRweDtoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbFN0YXRpY0hvc3RMZWFkaW5nSWNvbnttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OjEwMCU7LW1vei1wYWRkaW5nLXN0YXJ0OjhweDtwYWRkaW5nLWlubGluZS1zdGFydDo4cHg7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdHtkaXNwbGF5Oi1tb3otaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4O3Bvc2l0aW9uOnJlbGF0aXZlOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9QG1lZGlhIChtYXgtd2lkdGg6Mjk5LjlweCl7Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3R7ZGlzcGxheTpub25lfX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdEZpeGVkSGVpZ2h0QXV0b3toZWlnaHQ6YXV0b30ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdEhpZGRlbntvcGFjaXR5OjB9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RTaG93bnthbmltYXRpb246ZmFkZUluIC41cyBlYXNlLWluLW91dDtvcGFjaXR5OjF9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RVc2VSb3VuZEJvcmRlcntib3JkZXItcmFkaXVzOjI4cHh9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RSb3VuZEFsbENvcm5lcnN7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RPbmx5Um91bmRMZWFkaW5nQ29ybmVyc3tib3JkZXItdG9wLWxlZnQtcmFkaXVzOjhweDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjhweH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdENvbnRhaW5lcntkaXNwbGF5Oi1tb3otaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4O3Bvc2l0aW9uOnJlbGF0aXZlOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyOm5vbmU7bWF4LWhlaWdodDo1MnB4O3BhZGRpbmc6OHB4O2JhY2tncm91bmQtY29sb3I6cmdiYSg0MCw0MCw0MCwwLjYpO2NvbG9yOnZhcigtLXJlZWwtbWV0YWRhdGEtY29sb3IsI2ZmZik7Y3Vyc29yOnBvaW50ZXJ9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RDb250YWluZXI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbER5bmFtaWNIb3N0Q29sbGFwc2VkTGVhZGluZ1NlY3Rpb257Ym9yZGVyLXJhZGl1czo0cHg7ZmxleC1zaHJpbms6MDttYXJnaW4tcmlnaHQ6MH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdEV4cGFuZGVkTGVhZGluZ1NlY3Rpb257bWFyZ2luLXJpZ2h0OjB9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RDb2xsYXBzZWRMZWFkaW5nSW1hZ2V7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlO2JvcmRlci1yYWRpdXM6NHB4Oy1tb3otcGFkZGluZy1zdGFydDo0cHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6NHB4O2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RFeHBhbmRlZExlYWRpbmdJbWFnZXttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OjEwMCU7Ym9yZGVyLXJhZGl1czo0cHg7d2lkdGg6MjhweDtoZWlnaHQ6MjhweDstbW96LXBhZGRpbmctc3RhcnQ6OHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjhweH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdENvbGxhcHNlZExlYWRpbmdJY29uey1tb3otcGFkZGluZy1zdGFydDo4cHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6OHB4O2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RFeHBhbmRlZExlYWRpbmdJY29ue3BhZGRpbmc6NHB4O2JvcmRlci1yYWRpdXM6NHB4Oy1tb3otcGFkZGluZy1zdGFydDo4cHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6OHB4Oy1tb3otYm94LXNpemluZzpjb250ZW50LWJveDtib3gtc2l6aW5nOmNvbnRlbnQtYm94O2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RDb2xsYXBzZWRTZWNvbmRhcnl7b3BhY2l0eTowO2Rpc3BsYXk6bm9uZX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdEV4cGFuZGVkU2Vjb25kYXJ5e2FuaW1hdGlvbjpmYWRlSW4gLjI1cyBlYXNlLWluLW91dDtvcGFjaXR5OjE7bWFyZ2luLXRvcDotMnB4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjEuOHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdEV4cGFuZGVkU2Vjb25kYXJ5ey13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RFeHBhbmRlZFNlY29uZGFyeXttYXgtaGVpZ2h0OjEuOHJlbX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdENvbGxhcHNlZFRyYWlsaW5nU2VjdGlvbntjdXJzb3I6cG9pbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoNDAsNDAsNDAsMC42KTtib3JkZXItcmFkaXVzOjAgOHB4IDhweCAwO2JvcmRlci1sZWZ0OjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMyk7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjI0cHg7aGVpZ2h0OjQwcHg7cGFkZGluZzowfS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbER5bmFtaWNIb3N0Q29sbGFwc2VkVHJhaWxpbmdTZWN0aW9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpfS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbER5bmFtaWNIb3N0RXhwYW5kZWRUcmFpbGluZ1NlY3Rpb257Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246cmVsYXRpdmU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDQwLDQwLDQwLDAuNik7Ym9yZGVyLXJhZGl1czowIDhweCA4cHggMDtib3JkZXItbGVmdDoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjMpO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtoZWlnaHQ6NDBweDt3aWR0aDoyNHB4O3BhZGRpbmc6MH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdEV4cGFuZGVkVHJhaWxpbmdTZWN0aW9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpfS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbER5bmFtaWNIb3N0VHJhaWxpbmdJY29ue2NvbG9yOnZhcigtLXJlZWwtbWV0YWRhdGEtY29sb3IsI2ZmZik7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxFeHRyYWN0T3ZlcmxheXtkaXNwbGF5Oi1tb3otaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4fS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbEV4dHJhY3RPdmVybGF5Q29udGFpbmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxFeHRyYWN0T3ZlcmxheUNvbnRhaW5lcjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xKX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxFeHRyYWN0T3ZlcmxheUNvbGxhcHNlZFRyYWlsaW5nU2VjdGlvbntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSk7Y29sb3I6dmFyKC0tcmVlbC1tZXRhZGF0YS1jb2xvciwjMDMwMzAzKX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxFeHRyYWN0T3ZlcmxheUNvbGxhcHNlZFRyYWlsaW5nU2VjdGlvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xKX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxFeHRyYWN0T3ZlcmxheUV4cGFuZGVkVHJhaWxpbmdTZWN0aW9ue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KTtjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yLCMwMzAzMDMpfS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbEV4dHJhY3RPdmVybGF5RXhwYW5kZWRUcmFpbGluZ1NlY3Rpb246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRXhwYW5zaXZlQ29udGFpbmVye2NvbG9yOnZhcigtLXJlZWwtbWV0YWRhdGEtY29sb3IsIzAzMDMwMyk7bWF4LXdpZHRoOjQ4MHB4fS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbEV4cGFuc2l2ZUNvbnRhaW5lclByaW1hcnlUZXh0e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRXhwYW5zaXZlQ29udGFpbmVyUHJpbWFyeVRleHR7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxFeHBhbnNpdmVDb250YWluZXJQcmltYXJ5VGV4dHttYXgtaGVpZ2h0OjJyZW19Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRXhwYW5zaXZlQ29udGFpbmVyRXhwYW5kZWRTZWNvbmRhcnl7Y29sb3I6cmdiYShmcm9tIHZhcigtLXJlZWwtbWV0YWRhdGEtY29sb3IsIzAzMDMwMykgciBnIGIvLjcpO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6MS44cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbEV4cGFuc2l2ZUNvbnRhaW5lckV4cGFuZGVkU2Vjb25kYXJ5ey13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRXhwYW5zaXZlQ29udGFpbmVyRXhwYW5kZWRTZWNvbmRhcnl7bWF4LWhlaWdodDoxLjhyZW19QGtleWZyYW1lcyBmYWRlSW57MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19Lnl0U2hvcnRzVmlkZW9UaXRsZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yLCNmZmYpfS55dFNob3J0c1ZpZGVvVGl0bGVWaWV3TW9kZWxIb3N0Q2xpY2thYmxle2N1cnNvcjpwb2ludGVyfS55dFNob3J0c1ZpZGVvVGl0bGVWaWV3TW9kZWxTaG9ydHNWaWRlb1RpdGxle21hcmdpbjowO3BvaW50ZXItZXZlbnRzOmF1dG87d29yZC1icmVhazpicmVhay13b3JkO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U2hvcnRzVmlkZW9UaXRsZVZpZXdNb2RlbFNob3J0c1ZpZGVvVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX0ueXRTaG9ydHNWaWRlb1RpdGxlVmlld01vZGVsU2hvcnRzVmlkZW9UaXRsZXttYXgtaGVpZ2h0OjJyZW07bWF4LWhlaWdodDpub25lOy13ZWJraXQtbGluZS1jbGFtcDp2YXIoLS15dC1zaG9ydHMtdmlkZW8tdGl0bGUtbWF4LWxpbmVzLDEpfS55dFNob3J0c1ZpZGVvVGl0bGVWaWV3TW9kZWxTaG9ydHNWaWRlb1RpdGxlTGFyZ2V7bWFyZ2luOjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MnJlbTtsaW5lLWhlaWdodDoyLjhyZW07Zm9udC13ZWlnaHQ6NzAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6Mi44cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNob3J0c1ZpZGVvVGl0bGVWaWV3TW9kZWxTaG9ydHNWaWRlb1RpdGxlTGFyZ2V7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsueXRTaG9ydHNWaWRlb1RpdGxlVmlld01vZGVsU2hvcnRzVmlkZW9UaXRsZUxhcmdle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuOHJlbTtsaW5lLWhlaWdodDoyLjZyZW07Zm9udC13ZWlnaHQ6NzAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6Mi42cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNob3J0c1ZpZGVvVGl0bGVWaWV3TW9kZWxTaG9ydHNWaWRlb1RpdGxlTGFyZ2V7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX19Lnl0U2hvcnRzVmlkZW9UaXRsZVZpZXdNb2RlbFNob3J0c1ZpZGVvVGl0bGVMYXJnZXttYXgtaGVpZ2h0OjIuOHJlbX1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsueXRTaG9ydHNWaWRlb1RpdGxlVmlld01vZGVsU2hvcnRzVmlkZW9UaXRsZUxhcmdle21heC1oZWlnaHQ6Mi42cmVtfX0ueXRTaG9ydHNWaWRlb1RpdGxlVmlld01vZGVsU2hvcnRzVmlkZW9UaXRsZUxhcmdle21heC1oZWlnaHQ6bm9uZTstd2Via2l0LWxpbmUtY2xhbXA6dmFyKC0teXQtc2hvcnRzLXZpZGVvLXRpdGxlLW1heC1saW5lcywxKX0ueXRBY2Nlc3NDb25maXJtYXRpb25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0QWNjZXNzQ29uZmlybWF0aW9uVmlld01vZGVsQ29udGVudHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjI0cHggMTJweCAwfS55dEFjY2Vzc0NvbmZpcm1hdGlvblZpZXdNb2RlbEF2YXRhcnttYXJnaW4tYm90dG9tOjE2cHh9Lnl0QWNjZXNzQ29uZmlybWF0aW9uVmlld01vZGVsVGl0bGV7dGV4dC1hbGlnbjpjZW50ZXI7bWFyZ2luLWJvdHRvbTo4cHg7Zm9udC1mYW1pbHk6WW91VHViZSBTYW5zLFJvYm90byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTozLjJyZW07bGluZS1oZWlnaHQ6NC40cmVtO2ZvbnQtd2VpZ2h0OjcwMH0ueXRBY2Nlc3NDb25maXJtYXRpb25WaWV3TW9kZWxTdWJ0aXRsZXtjb2xvcjojNjA2MDYwO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dER1YWxBdmF0YXJWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXREdWFsQXZhdGFyVmlld01vZGVsQXZhdGFyc0NvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LWZsZXg6MDtmbGV4LWdyb3c6MDtmbGV4LXNocmluazowO2dhcDp2YXIoLS15dC1kdWFsLWF2YXRhci12aWV3LW1vZGVsLWJhZGdlLWN1dG91dC1yYWRpdXMpO21hc2staW1hZ2U6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSB2YXIoLS15dC1kdWFsLWF2YXRhci12aWV3LW1vZGVsLWJhZGdlLWN1dG91dC1yYWRpdXMpLHRyYW5zcGFyZW50IDEwMCUsYmxhY2sgMCl9Lnl0RHVhbEF2YXRhclZpZXdNb2RlbEJhZGdle3Bvc2l0aW9uOmFic29sdXRlfS55dEltYWdlU3RpY2tlckhvc3R7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZX0ueXRJbWFnZVN0aWNrZXJJbWFnZUNvcHl7cG9zaXRpb246YWJzb2x1dGU7ZmlsdGVyOmJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpfS55dEltYWdlU3RpY2tlckltYWdlQWN0dWFse3Bvc2l0aW9uOnJlbGF0aXZlfS55dE92ZXJsYXlQcm9kdWN0U3RpY2tlckhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAycHggcmdiYSgwLDAsMCwwLjMpKX0ueXRPdmVybGF5UHJvZHVjdFN0aWNrZXJUaXRsZUJ1dHRvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6YXV0bztwYWRkaW5nOjRweCA0cHggNHB4IDhweDtib3JkZXItcmFkaXVzOjRweDtjb2xvcjojNjA2MDYwO2JhY2tncm91bmQtY29sb3I6I2ZmZn0ueXRPdmVybGF5UHJvZHVjdFN0aWNrZXJJbWFnZUNvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZX0ueXRPdmVybGF5UHJvZHVjdFN0aWNrZXJPcGVuSWNvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjhweDtwYWRkaW5nOjJweDtib3JkZXItcmFkaXVzOjRweDtjb2xvcjojNjA2MDYwO2JhY2tncm91bmQtY29sb3I6I2ZmZjtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dE92ZXJsYXlTdGlja2VySG9zdHstLXN0aWNrZXItd2lkdGg6MTAwO2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7dHJhbnNmb3JtLW9yaWdpbjp0b3AgbGVmdDtwb2ludGVyLWV2ZW50czphbGw7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czo2cHh9Lnl0T3ZlcmxheVN0aWNrZXJIb3N0Pjpvbmx5LWNoaWxke2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS55dE92ZXJsYXlTdGlja2VySG9zdFJlbGF0aXZle3Bvc2l0aW9uOnJlbGF0aXZlfS55dFN1YnNjcmliZVBsdXNCdXR0b25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0U3VydmV5SWNvbnNIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRTdXJ2ZXlJY29uc0hlYWRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0ueXRTdXJ2ZXlJY29uc1RpdGxle2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoyLjJyZW07bWF4LWhlaWdodDoyLjJyZW19Lnl0U3VydmV5SWNvbnNBbnN3ZXJze2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS55dFN1cnZleUljb25zSWNvbntjb2xvcjojMDMwMzAzO3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7bWFyZ2luOi02cHh9Lnl0U3VydmV5SWNvbnNBbnN3ZXJzVGV4dHtjb2xvcjojMDMwMzAzO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dExpc3RJdGVtTGlrZUNvdW50Vmlld01vZGVsSG9zdHtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtTGlrZUNvdW50Vmlld01vZGVsSG9zdHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtTGlrZUNvdW50Vmlld01vZGVsSG9zdHttYXgtaGVpZ2h0OjQuNHJlbX1zZW50aW5lbHt9"}},"time_used":27,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":12,"receive":15,"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.12","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:43.434Z","timestamp":1785158443434,"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://uniz-coinzltd.com/\r\nOrigin: https://uniz-coinzltd.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 13:20:46 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: k35Q3KCOFuc5zz2fHdHYrhW2pFXllzp7TTkWY4YsbbSz8Loo9hH1oX332fOgXs4RPUZ4lEs\r\nx-77-nzt-ray: e2f75420e1f38d172e5b676a3623bf2f\r\nx-77-cache: HIT\r\nx-77-age: 458\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-27T13:21:25.866734Z","times_seen":5254,"resource_available":false,"data":"eyJhZ2VudFJhdGluZy5hbGwucGxhY2Vob2xkZXIiOiJMZWF2ZSB1cyBmZWVkYmFjayIsImFnZW50UmF0aW5nLmJhZC5mb3JtVGV4dCI6IlNvIHNvcnJ5IPCfmJMgV2hhdCB3ZW50IHdyb25nPyIsImFnZW50UmF0aW5nLmdvb2QuZm9ybVRleHQiOiJUaGFua3Mg8J+kqSBXaGF0IHdhcyBzbyBncmVhdD8iLCJhZ2VudFJhdGluZy5ub3JtYWwuZm9ybVRleHQiOiJUaGFua3Mg8J+RjSBIb3cgY2FuIHdlIGltcHJvdmU/IiwiYWdlbnRUcmFuc2Zlci5kZWZhdWx0VGV4dCI6IkFnZW50IiwiYWdlbnRUcmFuc2Zlci5qb2luZWQiOiJqb2luZWQgdGhlIGNoYXQiLCJhZ2VudFRyYW5zZmVyLmxlZnQiOiJsZWZ0IiwiYWdlbnRUcmFuc2Zlci5yZWRpcmVjdGVkIjoiaXMgeW91ciBuZXcgYWdlbnQiLCJhcmlhTGFiZWwuYWdlbnRBdmF0YXIiOiJBZ2VudCBhdmF0YXIiLCJhcmlhTGFiZWwuY2FyZCI6IlByb2R1Y3QgY2FyZCIsImFyaWFMYWJlbC5jaGF0Q29udGVudCI6IkNoYXQgY29udGVudCIsImFyaWFMYWJlbC5jaGF0Ym90QXZhdGFyIjoiQ2hhdGJvdCBhdmF0YXIiLCJhcmlhTGFiZWwuZHJhd2VyLmNvbnRlbnQiOiJEcmF3ZXIgY29udGVudCIsImFyaWFMYWJlbC5kcmF3ZXIub3ZlcmxheSI6IkRyYXdlciBvdmVybGF5IiwiYXJpYUxhYmVsLmlubGluZUVtb2ppUGlja2VyLmRlc2NyaXB0aW9uIjoiU2hvd2luZyB7Y291bnR9IGVtb2ppcyIsImFyaWFMYWJlbC5pbmxpbmVFbW9qaVBpY2tlci5sYWJlbCI6IkVtb2ppIHN1Z2dlc3Rpb25zIiwiYXJpYUxhYmVsLmxlZnQiOiJMZWZ0IiwiYXJpYUxhYmVsLm9wZW5DaGF0IjoiT3BlbiBTbWFydHN1cHAgY2hhdCIsImFyaWFMYWJlbC5wb3B1cCI6IlNtYXJ0c3VwcCBjaGF0IHBvcHVwIiwiYXJpYUxhYmVsLnJhdGVDaGF0LmJhZCI6IlJhdGUgY2hhdCBuZWdhdGl2ZWxseSIsImFyaWFMYWJlbC5yYXRlQ2hhdC5nb29kIjoiUmF0ZSBjaGF0IHBvc2l0aXZlbHkiLCJhcmlhTGFiZWwucmF0ZUNoYXQubmV1dHJhbCI6IlJhdGUgY2hhdCBuZXV0cmFsbHkiLCJhcmlhTGFiZWwucmVtb3ZlQXR0YWNobWVudCI6IlJlbW92ZSBhdHRhY2htZW50IiwiYXJpYUxhYmVsLnJpZ2h0IjoiUmlnaHQiLCJhcmlhTGFiZWwuc2Nyb2xsRG93biI6IlNjcm9sbCBkb3duIiwiYXJpYUxhYmVsLnN1Y2Nlc3MiOiJTdWNjZXNzIiwiYXJpYUxhYmVsLnVwbG9hZGluZyI6IlVwbG9hZGluZy4uLiIsImFyaWFMYWJlbC53aWRnZXRCcmFuZGluZyI6IlNtYXJ0c3VwcCBicmFuZGluZyIsImF1dGhGb3JtLmFjY2VwdFRlcm1zIjoiSSBhZ3JlZSB3aXRoIHByaXZhY3kgcG9saWN5IiwiYXV0aEZvcm0uYnV0dG9uLnNlbmQiOiJTZW5kIG1lc3NhZ2UiLCJhdXRoRm9ybS5kZXNjcmlwdGlvbiI6Ildl4oCZbGwgdXNlIHlvdXIgY29udGFjdCBpbmZvIG9ubHkgaWYgYWxsIHRoZSBhZ2VudHMgYXJlIGJ1c3kgYXQgdGhlIG1vbWVudCBhbmQgY2Fubm90IGltbWVkaWF0ZWx5IHJlcGx5LiIsImF1dGhGb3JtLmdyZWV0aW5nIjoi8J+RiyBQbGVhc2UgaW50cm9kdWNlIHlvdXJzZWxmIiwiYXV0aEZvcm0uZ3JvdXAiOiJDaG9vc2UgYSBncm91cCIsImF1dGhGb3JtLmxhYmVsLmVtYWlsIjoiRS1tYWlsIiwiYXV0aEZvcm0ubGFiZWwuZ3JvdXAiOiJHcm91cCIsImF1dGhGb3JtLmxhYmVsLm5hbWUiOiJOYW1lIiwiYXV0aEZvcm0ubGFiZWwucGhvbmUiOiJQaG9uZSIsImF1dGhGb3JtLnN1Ym1pdC5lcnJvciI6IkF1dGhlbnRpY2F0aW9uIGZhaWxlZCIsImF1dGhGb3JtLnN1Ym1pdC5zdWNjZXNzIjoiQXV0aGVudGljYXRpb24gd2FzIHN1Y2Nlc3NmdWwiLCJhdXRoRm9ybS55b3VyRW1haWwiOiJZb3VyIGVtYWlsIiwiYXV0aEZvcm0ueW91ck5hbWUiOiJZb3VyIG5hbWUiLCJhdXRoRm9ybS55b3VyUGhvbmUiOiJQaG9uZSBudW1iZXIiLCJidXR0b24uZ3JlZXRpbmciOiJDaGF0IiwiY2FyZC5saW5rc0xpbWl0UmVhY2hlZCI6IlVuYWJsZSB0byBzZW5kIG1vcmUgdGhhbiAyMCBVUkwgbGlua3MuIiwiY2FyZC5ub1ByZXZpZXdUaXRsZSI6IlByZXZpZXcgbm90IGF2YWlsYWJsZSIsImNhcmQub3BlblVybFRpdGxlIjoiUmVhZCBtb3JlIiwiY2FyZC5zZW5kaW5nSW5Qcm9ncmVzcyI6IlNlbmRpbmcgaW4gcHJvZ3Jlc3MsIHBsZWFzZSB3YWl04oCmIiwiY2hhdElucHV0LnBsYWNlaG9sZGVyIjoiVHlwZSB5b3VyIG1lc3NhZ2UgaGVyZSIsImNoYXRQcmV2aWV3Lm1lc3NhZ2UxIjoiSGksIGlzIGFueWJvZHkgaGVyZT8iLCJjaGF0UHJldmlldy5tZXNzYWdlMiI6IkhlbGxvLCB5ZXMgd2UgYXJlIGhlcmUiLCJjaGF0UHJldmlldy5tZXNzYWdlMyI6Ik9rLCB0aGFua3MiLCJjaGF0Ym90LmdvQmFjayI6IkdvIGJhY2siLCJjbG9zZUNvbnZlcnNhdGlvbk1vZGFsLmJ1dHRvbiI6IlllcywgZW5kIGNoYXQiLCJjbG9zZUNvbnZlcnNhdGlvbk1vZGFsLnRleHQiOiJJcyB0aGF0IHJlYWxseSBhbGw/IElmIHNvbWV0aGluZyBlbHNlIGNvbWVzIHRvIG1pbmQsIHlvdSBjYW4gYWx3YXlzIHJldHVybiB0byB0aGUgY29udmVyc2F0aW9uLiIsImNsb3NlQ29udmVyc2F0aW9uTW9kYWwudGl0bGUiOiJFbmQgY2hhdCIsImRyYWdBbmREcm9wLmRyb3BIZXJlIjoiRHJvcCB5b3VyIGZpbGUocykgaGVyZSIsImVtYWlsVHJhbnNjcmlwdC5wb3NpdGl2ZUZlZWRiYWNrIjoiVHJhbnNjcmlwdCBoYXMgYmVlbiBzZW50IiwiZW1haWxUcmFuc2NyaXB0LnNlbmRDb3B5IjoiU2VuZCBjb252ZXJzYXRpb24gY29weSIsImVycm9yLmZpbGVVcGxvYWQiOiJGaWxlIHVwbG9hZCBmYWlsdXJlIiwiZXJyb3Iubm9JbnRlcm5ldCI6IkludGVybmV0IGNvbm5lY3Rpb24gbG9zdCIsImVycm9yLnNlcnZlckVycm9yIjoiU2VydmVyIGVycm9yIG9jY3VycmVkIiwiZmlsZVVwbG9hZC5iYWRGaWxlVHlwZSI6IlRoaXMgZmlsZSB0eXBlIGlzIG5vdCBzdXBwb3J0ZWQuIiwiZmlsZVVwbG9hZC5maWxlVG9vQmlnIjoiVGhlIGZpbGUgaXMgYmlnZ2VyIHRoYW4gdGhlIGFsbG93ZWQgbGltaXQiLCJmaWxlVXBsb2FkLmZpbGVzV2VyZW50UHJvY2Vzc2VkIjoiU29tZSBmaWxlcyBjb3VsZCBub3QgYmUgcHJvY2Vzc2VkIiwiZmlsZVVwbG9hZC5pbWFnZUVycm9yIjoiVGhpcyBpbWFnZSBpcyBub3QgdmFsaWQiLCJmaWxlVXBsb2FkLnRvb01hbnlGaWxlcyI6IkxpbWl0IGZvciB1cGxvYWRpbmcgZmlsZXMgaXMgIiwiZmlsZVVwbG9hZC51cGxvYWRGaWxlIjoiVXBsb2FkIGZpbGUiLCJmb3JtLnN1Ym1pdC5lcnJvciI6IlNvbWV0aGluZyB3ZW50IHdyb25nLiBQbGVhc2UgdHJ5IGFnYWluLiIsImZvcm0uc3VibWl0LnN1Y2Nlc3MiOiJTdWNjZXNzZnVsbHkgZG9uZSIsImdkcHIuZGF0YVByaXZhY3lIZWFkbGluZSI6IlBlcnNvbmFsIGRhdGEgcHJvY2Vzc2luZyIsImdkcHIuZGF0YVByaXZhY3lUZXh0IjoiU21hcnRzdXBwLmNvbSwgcy5yLm8sIHByb2Nlc3NlcyBwZXJzb25hbCBkYXRhLiwgVkFUIElEIENaMDM2Njg2ODEgKGZ1cnRoZXIgYXMgXCJTbWFydHN1cHBcIikgYXMgYSBkYXRhIHByb2Nlc3NvciB3aG8gYWN0cyBvbiBiZWhhbGYgb2YgdGhlIHdlYnNpdGUgb3duZXIgd2hvIGlzIHRoZSBkYXRhIGNvbnRyb2xsZXIuIFxuXG5TbWFydHN1cHAgaXMgR0RQUiBjb21wbGlhbnQuIFlvdSBjYW4gZmluZCBpbmZvcm1hdGlvbiBhYm91dCBTbWFydHN1cHAgcGVyc29uYWwgZGF0YSBwcml2YWN5IGFuZCBwcm9jZXNzaW5nIG9uIGhlbHAuc21hcnRzdXBwLmNvbS9lbl9VUy9wcml2YWN5LiBcblxuUHJvY2Vzc2luZyBvZiB5b3VyIHBlcnNvbmFsIGRhdGEgaXMgbmVjZXNzYXJ5IGluIG9yZGVyIHRvIHByb3ZpZGUgY3VzdG9tZXIgc2VydmljZS4gQWR2YW5jZWQgZmVhdHVyZXMgd2lsbCBvbmx5IGJlIHR1cm5lZCBvbiBpZiB5b3UgaGF2ZSBhZ3JlZWQgdG8gdGhlbS4gXG5cblBsZWFzZSBjb250YWN0IHRoZSB3ZWJzaXRlIG93bmVyIGlmIHlvdSBoYXZlIHF1ZXN0aW9ucyBhYm91dCB0aGUgcHJvY2Vzc2luZyBvZiBwZXJzb25hbCBkYXRhIG9yIGlmIHlvdSB3YW50IHRvIHJlcXVlc3Qgb3IgZXJhc2UgeW91ciBwZXJzb25hbCBkYXRhLiIsImdlbmVyYWwuYmFjayI6IkJhY2siLCJnZW5lcmFsLm5ld01lc3NhZ2VzIjoiTmV3IG1lc3NhZ2VzIiwiZ2VuZXJhbC5zZW5kIjoiU2VuZCIsIm9wdGlvbnMuYWNjZXNzaWJpbGl0eSI6IkFjY2Vzc2liaWxpdHkiLCJvcHRpb25zLmNvcHlyaWdodCI6IsKpIHt5ZWFyfSBTbWFydHN1cHAuY29tIiwib3B0aW9ucy5lbWFpbFRyYW5zY3JpcHQiOiJTZW5kIGVtYWlsIHRyYW5zY3JpcHQiLCJvcHRpb25zLmZlZWRiYWNrIjoiRGlkIHlvdSBmaW5kIGEgYnVnPyIsIm9wdGlvbnMuZ2RwciI6IkdEUFIgYW5kIHByaXZhY3kiLCJvcHRpb25zLnBkZlRyYW5zY3JpcHQiOiJEb3dubG9hZCB0cmFuc2NyaXB0Iiwib3B0aW9ucy5wbGF5U291bmRzIjoiUGxheSB0aGUgc291bmRzIiwib3B0aW9ucy50aXRsZSI6Ik9wdGlvbnMiLCJyYXRpbmcuYnV0dG9uLnJhdGUuYWdlbnQiOiJSYXRlIGNoYXQiLCJyYXRpbmcuYnV0dG9uLnJhdGUuYWkiOiJSYXRlIEFJIGNoYXRib3QiLCJyYXRpbmcuc3VibWl0LnN1Y2Nlc3MiOiJSYXRpbmcgc2VudCIsInJhdGluZy5zdWJtaXRGZWVkYmFjay5zdWNjZXNzIjoiVGhhbmsgeW91IGZvciB5b3VyIGZlZWRiYWNrIiwicmF0aW5nLndhc0l0SGVscGZ1bC5hZ2VudCI6IkhvdyB3b3VsZCB5b3UgcmF0ZSBvdXIgc3VwcG9ydD8iLCJyYXRpbmcud2FzSXRIZWxwZnVsLmFpIjoiSG93IHdvdWxkIHlvdSByYXRlIHRoZSBBSSBjaGF0Ym90IGV4cGVyaWVuY2U/Iiwic3RhdHVzQmFyLmJvdElkZW50aXR5IjoiQUkgYXNzaXN0YW50Iiwic3RhdHVzQmFyLm9mZmxpbmVUZXh0IjoiSGFwcHkgdG8gYW5zd2VyIHlvdSBsYXRlciIsInN0YXR1c0Jhci5vbmxpbmVUZXh0IjoiV2UgcmVwbHkgaW1tZWRpYXRlbHkiLCJzeXN0ZW1NZXNzYWdlLmNoYXRDbG9zZWQiOiJDaGF0IHdhcyBjbG9zZWQiLCJzeXN0ZW1NZXNzYWdlLmNoYXRSZXNvbHZlZCI6InJlc29sdmVkIGNvbnZlcnNhdGlvbiIsInRpY2tldEZvcm0ubGFiZWwubWVzc2FnZSI6IldoYXQgY2FuIHdlIGhlbHAgeW91IHdpdGg/IiwidGlja2V0Rm9ybS5tZXNzYWdlLnBsYWNlaG9sZGVyIjoiRGVzY3JpYmUgeW91ciBwcm9ibGVtIiwidGlja2V0Rm9ybS5zdWJtaXQuYnV0dG9uIjoi4pyJ77iPIENvbnRhY3QgdGhlIGFnZW50IGJ5IGVtYWlsIiwidGltZWFnby5YRGF5c0FnbyI6IiclcyBkYXlzIGFnbyIsInRpbWVhZ28uWEhvdXJzQWdvIjoiJXMgaG91cnMgYWdvIiwidGltZWFnby5YTWludXRlc0FnbyI6IiVzIG1pbnV0ZXMgYWdvIiwidGltZWFnby5YTW9udGhzQWdvIjoiJXMgbW9udGhzIGFnbyIsInRpbWVhZ28uWFNlY29uZHNBZ28iOiIlcyBzZWNvbmRzIGFnbyIsInRpbWVhZ28uWFdlZWtzQWdvIjoiJXMgd2Vla3MgYWdvIiwidGltZWFnby5YWWVhcnNBZ28iOiIlcyB5ZWFycyBhZ28iLCJ0aW1lYWdvLmp1c3ROb3ciOiJqdXN0IG5vdyIsInRpbWVhZ28ub25lRGF5QWdvIjoiMSBkYXkgYWdvIiwidGltZWFnby5vbmVIb3VyQWdvIjoiMSBob3VyIGFnbyIsInRpbWVhZ28ub25lTWludXRlQWdvIjoiMSBtaW51dGUgYWdvIiwidGltZWFnby5vbmVNb250aEFnbyI6IjEgbW9udGggYWdvIiwidGltZWFnby5vbmVXZWVrQWdvIjoiMSB3ZWVrIGFnbyIsInRpbWVhZ28ub25lWWVhckFnbyI6IjEgeWVhciBhZ28iLCJ0aW1lYWdvLnJpZ2h0Tm93IjoicmlnaHQgbm93IiwidGltZWFnby5zZWNvbmRzIjoiaW4gJXMgc2Vjb25kcyIsInRvb2x0aXAuYXR0YWNobWVudCI6IkF0dGFjaG1lbnQiLCJ0b29sdGlwLmNsb3NlIjoiQ2xvc2UiLCJ0b29sdGlwLmNvbGxhcHNlIjoiQ29sbGFwc2UgY2hhdCIsInRvb2x0aXAuZW1vamkiOiJFbW9qaSIsInRvb2x0aXAuZXhwYW5kIjoiRXhwYW5kIGNoYXQiLCJ0b29sdGlwLm1pbmltaXplIjoiTWluaW1pemUgY2hhdCIsInRvb2x0aXAubW9yZSI6IlNob3cgbW9yZSIsInRvb2x0aXAubW9yZUJ1dHRvbiI6IlNob3cgTW9yZSIsInRvb2x0aXAucmF0ZUNoYXQiOiJSYXRlIENoYXQiLCJ0b29sdGlwLnNlbmQiOiJTZW5kIiwidG9wQmFyLmVtYWlsVHJhbnNjcmlwdCI6IlNlbmQgZW1haWwgdHJhbnNjcmlwdCIsInRvcEJhci5nZHByVGl0bGUiOiJHRFBSIGFuZCBwcml2YWN5IiwidG9wQmFyLm9mZmxpbmUuaGVsbG8iOiJTZW5kIHVzIGEgbWVzc2FnZSIsInRvcEJhci5vbmxpbmUuaGVsbG8iOiJIb3cgY2FuIHdlIGhlbHA/IiwidG9wQmFyLnR1cm5PZmZTb3VuZHMiOiJUdXJuIG9mZiBzb3VuZHMiLCJ0b3BCYXIudHVybk9uU291bmRzIjoiVHVybiBvbiBzb3VuZHMiLCJ0cmlnZ2VyLm9wZW5DaGF0QnV0dG9uIjoiTGV0J3MgY2hhdCIsInRyaWdnZXIucmVwbHlCdXR0b24iOiJSZXBseSIsInZhbGlkYXRpb25zLmNoZWNrZWRUZXJtcyI6IllvdSBtdXN0IGFncmVlIHdpdGggdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIHRvIGNvbnRpbnVlIiwidmFsaWRhdGlvbnMuaXNFbWFpbCI6IlBsZWFzZSBlbnRlciB2YWxpZCBlbWFpbCIsInZhbGlkYXRpb25zLnBob25lIjoiUGxlYXNlIGVudGVyIGEgdmFsaWQgcGhvbmUgbnVtYmVyIiwidmFsaWRhdGlvbnMucmVxdWlyZWQiOiJQbGVhc2UgZmlsbCBvdXQgdGhpcyBmaWVsZCIsIndhcm5pbmdCYXIubWF4TGVuZ3RoIjoiWW91IGhhdmUgcmVhY2hlZCB0aGUgbWF4aW11bSBhbGxvd2VkIG51bWJlciBvZiBjaGFyYWN0ZXJzICgyMDAwKSIsIndhcm5pbmdCYXIuc2FtZU1lc3NhZ2VUd2ljZSI6IkNhbm5vdCBzZW5kIHRoZSBzYW1lIG1lc3NhZ2UgdHdpY2UgaW4gYSByb3cuIiwid2FybmluZ0Jhci5zcGFtUHJvdGVjdGlvbiI6IllvdXIgbWVzc2FnZXMgaGF2ZSBiZWVuIGlkZW50aWZpZWQgYXMgc3BhbS4gUGxlYXNlIHdhaXQgZm9yIDMwIHNlY29uZHMgYmVmb3JlIHNlbmRpbmcgYW5vdGhlciBtZXNzYWdlLiIsIndhcm5pbmdCYXIudXBsb2FkRmlsZU5vdEZpcnN0IjoiRmlyc3QgbWVzc2FnZSBjYW5ub3QgYmUgYSBmaWxlIiwid2lkZ2V0UHJldmlldy5jb250YWN0TWVzc2FnZSI6IvCfjokgTG9va3MgZmFudGFzdGljISDwn5Kq8J+PuyBMZXTCtHMgcm9jayB0aG9zZSBjb252ZXJzYXRpb25zIGFuZCBsZWF2ZSBhIGxhc3RpbmcgaW1wcmVzc2lvbiEg8J+agCIsIndpZGdldFByZXZpZXcud2VsY29tZU1lc3NhZ2UiOiLwn5GL8J+PuyBXZWxjb21lISBUaGlzIGlzIGEgc25lYWsgcGVlayBvZiB5b3VyIGNoYXQgYm94LiBHZXQgcmVhZHkgdG8gc2hpbmUg4pyoIGluIGN1c3RvbWVyIGludGVyYWN0aW9ucyEiLCJtZXNzYWdlLmRlbGV0ZWQiOiJUaGlzIG1lc3NhZ2Ugd2FzIHJlbW92ZWQifQ=="}},"time_used":3371,"timings":{"blocked":0,"dns":29,"connect":8,"send":0,"wait":8,"receive":0,"ssl":3326},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"uniz-coinzltd.com/styles/images/footericons.png","fqdn":"uniz-coinzltd.com","domain":"uniz-coinzltd.com","tld":"com"},"ip":{"addr":"172.67.220.122","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://uniz-coinzltd.com/","date":"2026-07-27T13:20:32.579Z","timestamp":1785158432579,"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":"uniz-coinzltd.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 28 Jun 2026 19:52:00 GMT","end":"Sat, 26 Sep 2026 20:50:17 GMT"},"fingerprint":{"sha1":"3F:DA:CD:CB:D1:16:C5:64:0C:DA:46:B0:4A:66:E6:19:4B:A6:0F:4C","sha256":"11:01:CF:6B:F1:7C:1B:7A:EF:F0:EA:F1:28:AC:CD:17:41:C9:C0:DC:24:A7:4F:DE:9E:B7:1A:1C:0D:5F:B1:55"}}},"request":{"raw":"GET /styles/images/footericons.png HTTP/1.1\r\nHost: uniz-coinzltd.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://uniz-coinzltd.com/\r\nCookie: PHPSESSID=cfce049cd009d6f10e0021158411991a\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 13:20:32 GMT\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\npriority: u=5,i\r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 06:54:31 GMT\r\nlast-modified: Fri, 11 Oct 2024 12:00:54 GMT\r\naccept-ranges: bytes\r\nserver: cloudflare\r\nx-turbo-charged-by: LiteSpeed\r\nage: 23160\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=0YbakKebEXYhUZcbKLHG%2B8aHUMg1vIz9eBEU1njl8rzC35SAdIjvCij%2Fz7NkQ6p046MV15GNFnkY6hZWdMa18eKO%2ByfIkewSKvU9U4KcEbLQ90KZJHAXJCiieIuVUYOL5DSG4Q%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21bf12bac8b56b9-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 8261\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"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":"Litespeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://wordpress.org/plugins/litespeed-cache/","common_platform_enumeration":"","icon":"litespeed-cache.png","categories":["Caching","WordPress plugins"]},{"name":"LiteSpeed Cache","description":"LiteSpeed Cache is an all-in-one site acceleration plugin for WordPress.","website":"https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration","common_platform_enumeration":"","icon":"LiteSpeed.svg","categories":["Caching","WordPress plugins"]}],"data":{"size":8261,"size_decoded":9023,"mime_type":"image/png","magic":"PNG image data, 359 x 25, 8-bit/color RGBA, non-interlaced","md5":"b9c8d75c3d85e3ee7697bb627548d315","sha1":"abbda80e02ddb25203ab9744e74c21ad743f0126","sha256":"d74b3cbc9aff8ad8857fbb48b86500623839d5cd2bf5cc358963609352f6a44c","sha512":"f87adca45f0cd76fb397ee4dbdae2e4cba87ef7b50e779e63448396e587f007c65c49afb85f8e721df640f5dba8dc6beeb49b76de4f1d83f2d6d1d1d8261f60c","ssdeep":"192:3SDS0tKg9E05To7mm0YQAMk9wEeg/U1BGI2nxV4EUn:iJXE05s7mm0+MkCEi1wI2T4l","tlshash":"2802af3fea542a2f7deb75d5ca8dca16ca70933dea27151d80c784cc4035b4a9921c76","first_seen":"2024-09-19T20:45:30.994585Z","last_seen":"2026-07-27T13:21:39.113206Z","times_seen":10,"resource_available":false,"data":"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"}},"time_used":18,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":18,"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":"uniz-coinzltd.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}}]}
